From c2f53c12fb8c737b4473d29eef9710f2cadd64e2 Mon Sep 17 00:00:00 2001 From: p4535992 Date: Sun, 25 Dec 2022 19:48:42 +0100 Subject: [PATCH 01/12] upgrade fvtt10 --- .editorconfig | 11 + .eslintrc | 288 +- .github/workflows/main.yml | 54 + .github/workflows/release.yml | 20 +- .vscode/settings.json | 2 + foundryconfig.json | 1 + gulpfile.js | 13 +- jsdoc-conf.json | 6 + package-lock.json | 14835 +++++++++++++++++++------------- package.json | 14 +- src/module.json | 102 +- tsconfig.json | 4 +- 12 files changed, 9334 insertions(+), 6016 deletions(-) create mode 100644 .editorconfig create mode 100644 .github/workflows/main.yml create mode 100644 .vscode/settings.json create mode 100644 jsdoc-conf.json diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..3afd20d --- /dev/null +++ b/.editorconfig @@ -0,0 +1,11 @@ +root = true + +[*] +indent_style = space +indent_size = 4 +end_of_line = lf +charset = utf-8 +trim_trailing_whitespace = true +insert_final_newline = true +[*.yml] +indent_size = 2 diff --git a/.eslintrc b/.eslintrc index 374e5e1..0d0ef10 100644 --- a/.eslintrc +++ b/.eslintrc @@ -1,48 +1,250 @@ { - "env": { - "jquery": true, - "node": true, - "browser": true, - "es2020": true, - "es6": true - }, - "root": true, - "parser": "@typescript-eslint/parser", - "parserOptions": { - "ecmaVersion": 2020, - "sourceType": "module" - }, - "extends": [ + "env": { + "browser": true, + "es2021": true, + "node": true, + "jquery": true + }, + "parser": "@typescript-eslint/parser", + "parserOptions": { + "ecmaVersion": 2018, + "requireConfigFile": false, + "sourceType": "module", + "project": "./tsconfig.json", + }, + "plugins": [ + "jsdoc" + ], + "extends": [ + "prettier", + "plugin:import/errors", "eslint:recommended", - "@typhonjs-fvtt/eslint-config-foundry.js/0.8.0", "plugin:@typescript-eslint/recommended", - "plugin:prettier/recommended" - ], - "plugins": [ - "@typescript-eslint", - "eslint-plugin-tsdoc" + "plugin:json/recommended" ], - "rules": { - "eqeqeq": ["error", "always"], - "tsdoc/syntax": "off", - "@typescript-eslint/ban-types": "off", - "@typescript-eslint/no-explicit-any": "off", - "prettier/prettier": [ - "off", - {}, - { - "usePrettierrc": true - } - ], - "no-underscore-dangle": "off", - "import/extensions": "off", - "class-methods-use-this": [ - "off", - { - "exceptMethods": ["getData", "_updateObject"] - } - ], - "@typescript-eslint/consistent-type-assertions": "off", - "@typescript-eslint/ban-ts-comment": "off" - } + "ignorePatterns": ["dist/"], + "rules": { + "array-bracket-spacing": ["warn", "never"], + "array-callback-return": "warn", + "arrow-spacing": "warn", + "comma-dangle": ["warn", "never"], + "comma-style": "warn", + "computed-property-spacing": "warn", + "constructor-super": "error", + "default-param-last": "warn", + "dot-location": ["warn", "property"], + "eol-last": ["error", "always"], + // "eqeqeq": ["warn", "smart"], + "func-call-spacing": "warn", + "func-names": ["warn", "never"], + "getter-return": "warn", + "lines-between-class-members": "warn", + "new-parens": ["warn", "always"], + "no-alert": "warn", + "no-array-constructor": "warn", + "no-class-assign": "warn", + "no-compare-neg-zero": "warn", + "no-cond-assign": "warn", + "no-const-assign": "error", + "no-constant-condition": "warn", + "no-constructor-return": "warn", + "no-delete-var": "warn", + "no-dupe-args": "warn", + "no-dupe-class-members": "warn", + "no-dupe-keys": "warn", + "no-duplicate-case": "warn", + "no-duplicate-imports": ["warn", {"includeExports": true}], + "no-empty": ["warn", {"allowEmptyCatch": true}], + "no-empty-character-class": "warn", + "no-empty-pattern": "warn", + "no-func-assign": "warn", + "no-global-assign": "warn", + "no-implicit-coercion": ["warn", {"allow": ["!!"]}], + "no-implied-eval": "warn", + "no-import-assign": "warn", + "no-invalid-regexp": "warn", + "no-irregular-whitespace": "warn", + "no-iterator": "warn", + "no-lone-blocks": "warn", + "no-lonely-if": "warn", + "no-loop-func": "warn", + "no-misleading-character-class": "warn", + "no-mixed-operators": "warn", + "no-multi-str": "warn", + "no-multiple-empty-lines": "warn", + "no-new-func": "warn", + "no-new-object": "warn", + "no-new-symbol": "warn", + "no-new-wrappers": "warn", + "no-nonoctal-decimal-escape": "warn", + "no-obj-calls": "warn", + "no-octal": "warn", + "no-octal-escape": "warn", + "no-promise-executor-return": "warn", + "no-proto": "warn", + "no-regex-spaces": "warn", + "no-script-url": "warn", + "no-self-assign": "warn", + "no-self-compare": "warn", + "no-setter-return": "warn", + "no-sequences": "warn", + "no-template-curly-in-string": "warn", + "no-this-before-super": "error", + "no-unexpected-multiline": "warn", + "no-unmodified-loop-condition": "warn", + "no-unneeded-ternary": "warn", + "no-unreachable": "warn", + "no-unreachable-loop": "warn", + "no-unsafe-negation": ["warn", {"enforceForOrderingRelations": true}], + "no-unsafe-optional-chaining": ["warn", {"disallowArithmeticOperators": true}], + "no-unused-expressions": "warn", + "no-useless-backreference": "warn", + "no-useless-call": "warn", + "no-useless-catch": "warn", + "no-useless-computed-key": ["warn", {"enforceForClassMembers": true}], + "no-useless-concat": "warn", + "no-useless-constructor": "warn", + "no-useless-rename": "warn", + "no-useless-return": "warn", + "no-var": "warn", + "no-void": "warn", + "no-whitespace-before-property": "warn", + "prefer-numeric-literals": "warn", + "prefer-object-spread": "warn", + "prefer-regex-literals": "warn", + "prefer-spread": "warn", + "rest-spread-spacing": ["warn", "never"], + "semi-spacing": "warn", + "semi-style": ["warn", "last"], + "space-unary-ops": ["warn", {"words": true, "nonwords": false}], + "switch-colon-spacing": "warn", + "symbol-description": "warn", + "template-curly-spacing": ["warn", "never"], + "unicode-bom": ["warn", "never"], + "use-isnan": ["warn", {"enforceForSwitchCase": true, "enforceForIndexOf": true}], + "valid-typeof": ["warn", {"requireStringLiterals": true}], + "wrap-iife": ["warn", "inside"], + + "arrow-parens": ["warn", "as-needed", {"requireForBlockBody": false}], + "capitalized-comments": ["warn", "always", {"ignoreConsecutiveComments": true}], + "comma-spacing": "warn", + "dot-notation": "warn", + "indent": ["warn", 2, {"SwitchCase": 1}], + "key-spacing": "warn", + "keyword-spacing": ["warn", {"overrides": {"catch": {"before": true, "after": false}}}], + "max-len": ["warn", { + "code": 120, + "ignoreTrailingComments": true, + "ignoreUrls": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true + }], + "no-extra-boolean-cast": ["warn", {"enforceForLogicalOperands": true}], + "no-extra-semi": "warn", + "no-multi-spaces": ["warn", {"ignoreEOLComments": true}], + "no-tabs": "warn", + "no-throw-literal": "error", + "no-trailing-spaces": "warn", + "no-useless-escape": "warn", + "no-unused-vars": ["warn", {"args": "none"}], + "nonblock-statement-body-position": ["warn", "beside"], + "one-var": ["warn", "never"], + "operator-linebreak": ["warn", "before", { + "overrides": {"=": "after", "+=": "after", "-=": "after"} + }], + "prefer-template": "warn", + "quote-props": ["warn", "as-needed", {"keywords": false}], + "quotes": ["warn", "double", {"avoidEscape": true, "allowTemplateLiterals": false}], + "semi": "warn", + "space-before-blocks": ["warn", "always"], + "space-before-function-paren": ["warn", { + "anonymous": "never", + "named": "never", + "asyncArrow": "always" + }], + // "spaced-comment": "warn", + + "jsdoc/check-access": "warn", + "jsdoc/check-alignment": "warn", + "jsdoc/check-examples": "off", + "jsdoc/check-indentation": "off", + "jsdoc/check-line-alignment": "off", + "jsdoc/check-param-names": "warn", + "jsdoc/check-property-names": "warn", + "jsdoc/check-syntax": "off", + "jsdoc/check-tag-names": "warn", + "jsdoc/check-types": "warn", + "jsdoc/check-values": "warn", + "jsdoc/empty-tags": "warn", + "jsdoc/implements-on-classes": "warn", + "jsdoc/match-description": "off", + "jsdoc/newline-after-description": "off", + "jsdoc/no-bad-blocks": "warn", + "jsdoc/no-defaults": "off", + "jsdoc/no-types": "off", + "jsdoc/no-undefined-types": "off", + "jsdoc/require-description": "warn", + "jsdoc/require-description-complete-sentence": "off", + "jsdoc/require-example": "off", + "jsdoc/require-file-overview": "off", + "jsdoc/require-hyphen-before-param-description": ["warn", "never"], + "jsdoc/require-jsdoc": "warn", + "jsdoc/require-param": "warn", + "jsdoc/require-param-description": "off", + "jsdoc/require-param-name": "warn", + "jsdoc/require-param-type": "warn", + "jsdoc/require-property": "warn", + "jsdoc/require-property-description": "off", + "jsdoc/require-property-name": "warn", + "jsdoc/require-property-type": "warn", + "jsdoc/require-returns": "warn", + "jsdoc/require-returns-check": "warn", + "jsdoc/require-returns-description": "off", + "jsdoc/require-returns-type": "warn", + "jsdoc/require-throws": "off", + "jsdoc/require-yields": "warn", + "jsdoc/require-yields-check": "warn", + "jsdoc/valid-types": "off", + + "eqeqeq": ["error", "always"], + "import/named": "off", + "import/no-default-export": "error", + "prettier/prettier": "error", + "no-console": "off", + "no-plusplus": ["error", { "allowForLoopAfterthoughts": true }], + "spaced-comment": "error", + "@typescript-eslint/await-thenable": "error", + "@typescript-eslint/ban-ts-comment": "off", + "@typescript-eslint/ban-types": "off", + "@typescript-eslint/explicit-module-boundary-types": "off", + "@typescript-eslint/lines-between-class-members": ["error", "always", { "exceptAfterSingleLine": true }], + "@typescript-eslint/prefer-namespace-keyword": "off", + "@typescript-eslint/no-namespace": ["error", { "allowDeclarations": true }], + "@typescript-eslint/no-empty-function": "off", + "@typescript-eslint/no-explicit-any": "off", + "@typescript-eslint/no-non-null-assertion": "off", + "@typescript-eslint/no-unused-vars": "off", // Handled by tsconfig + "@typescript-eslint/array-type": ["error", { "default": "array" }], + }, + "settings": { + "jsdoc": { + "preferredTypes": { + ".<>": "<>" + }, + "tagNamePreference": { + "auguments": "extends" + } + }, + "import/resolver": { + "node": { + "paths": ["src", "types", "", "dist"], + "extensions": [".css", ".js", ".mjs", ".json", ".jsx", ".scss", ".ts", ".tsx"], + }, + "eslint-import-resolver-typescript": true, + "typescript": { + "alwaysTryTypes": true, + }, + }, + "import/parsers": { "@typescript-eslint/parser": [".ts"] }, + } } diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml new file mode 100644 index 0000000..a94342d --- /dev/null +++ b/.github/workflows/main.yml @@ -0,0 +1,54 @@ +name: Release Creation + +on: + release: + types: [published] + +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + + #Substitute the Manifest and Download URLs in the module.json + - name: Substitute Manifest and Download Links For Versioned Ones + id: sub_manifest_link_version + uses: microsoft/variable-substitution@v1 + with: + files: 'src/module.json' + env: + version: ${{github.event.release.tag_name}} + manifest: https://github.com/${{github.repository}}/releases/latest/download/module.json + download: https://github.com/${{github.repository}}/releases/download/${{github.event.release.tag_name}}/module.zip + + # create a zip file with all files required by the module to add to the release + - run: cd src; zip -r ./module.zip * + + # Create a release for this specific version + - name: Update Release with Files + id: create_version_release + uses: ncipollo/release-action@v1 + with: + allowUpdates: true # set this to false if you want to prevent updating existing releases + name: ${{ github.event.release.name }} + draft: false + prerelease: false + token: ${{ secrets.GITHUB_TOKEN }} + artifacts: 'src/module.json, src/module.zip' + tag: ${{ github.event.release.tag_name }} + body: ${{ github.event.release.body }} + + # Update the 'latest' release + - name: Create Release + id: create_latest_release + uses: ncipollo/release-action@v1 + if: endsWith(github.ref, 'master') + with: + allowUpdates: true + name: Latest + draft: false + prerelease: false + token: ${{ secrets.GITHUB_TOKEN }} + artifacts: 'src/module.json,src/module.zip' + tag: latest + body: ${{ github.event.release.body }} \ No newline at end of file diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index a5f3a27..3227894 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -61,22 +61,22 @@ jobs: uses: ncipollo/release-action@238505795d6d58d49b78980f271f70dfcd8efb35 with: allowUpdates: true - name: ${{steps.get_version.outputs.version}} + name: ${{ env.RELEASE_VERSION }} body: | ${{ steps.Changelog.outputs.changelog }} draft: false prerelease: false token: ${{ secrets.GITHUB_TOKEN }} artifacts: './src/module.json,./package/module.zip' - tag: ${{steps.get_version.outputs.version}} + tag: ${{ env.RELEASE_VERSION }} # Publish the release to FoundryVTT's package repository. - - name: FoundryVTT AutoPublish - uses: Varriount/fvtt-autopublish@v1.0.9 - with: - username: ${{ secrets.FOUNDRY_ADMIN_USER }} - password: ${{ secrets.FOUNDRY_ADMIN_PW }} - module-id: 288 - manifest-url: https://github.com/${{ github.repository }}/releases/download/${{steps.get_version.outputs.version}}/module.json - manifest-file: ./src/module.json + #- name: FoundryVTT AutoPublish + # uses: Varriount/fvtt-autopublish@v1.0.9 + # with: + # username: ${{ secrets.FOUNDRY_ADMIN_USER }} + # password: ${{ secrets.FOUNDRY_ADMIN_PW }} + # module-id: 288 + # manifest-url: https://github.com/${{ github.repository }}/releases/download/${{ env.RELEASE_VERSION }}/module.json + # manifest-file: ./src/module.json diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..7a73a41 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,2 @@ +{ +} \ No newline at end of file diff --git a/foundryconfig.json b/foundryconfig.json index efd2085..a103ec1 100644 --- a/foundryconfig.json +++ b/foundryconfig.json @@ -1,5 +1,6 @@ { "dataPath": "/absolute/path/to/your/FoundryVTT/Data", + "foundryUri": "http://localhost:30001", "repository": "", "rawURL": "" } diff --git a/gulpfile.js b/gulpfile.js index 530ad21..5db8234 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -4,7 +4,7 @@ /** * This is important for the bundle.js */ -// const mainFilePath = `src/main.ts`; // MOD 4535992 +const mainFilePath = `src/init.ts`; // MOD 4535992 const gulp = require(`gulp`); const fs = require(`fs`); @@ -138,10 +138,8 @@ const createTransformer = () => { return factory.updateExportDeclaration(node, node.decorators, node.modifiers, false, node.exportClause, newModuleSpecifier,undefined); } } - console.log(`22`); return visitEachChild(node, visitor, context); } - console.log(`23`); return visitNode(node, visitor); }; }; @@ -275,7 +273,7 @@ const bundleModule = async () => { } const copyFiles = async() => { - const statics = [`lang`, `fonts`, `assets`, `icons`, `templates`, `packs`, `module.json`, `system.json`, `template.json`]; + const statics = [`lang`, `languages`, `fonts`, `assets`, `icons`, `templates`, `packs`, `module.json`, `system.json`, `template.json`]; const recursiveFileSearch = (dir, callback) => { const err = callback.err; @@ -395,7 +393,7 @@ const buildWatch = () => { gulp.watch(`src/**/*.ts`, { ignoreInitial: false }, gulp.series(buildTS)); gulp.watch(`src/**/*.less`, { ignoreInitial: false }, buildLess); gulp.watch(`src/**/*.sass`, { ignoreInitial: false }, buildSASS); - gulp.watch([`src/fonts`, `src/lang`, `src/templates`, `src/*.json`], { ignoreInitial: false }, copyFiles); + gulp.watch([`src/fonts`, `src/lang`, `src/languages`, `src/templates`, `src/*.json`], { ignoreInitial: false }, copyFiles); } /********************/ @@ -418,6 +416,7 @@ const clean = async () => { // if (fs.existsSync(path.join(`src`, mainFilePath))) { // MOD 4535992 files.push( `lang`, + `languages`, `fonts`, `icons`, `packs`, @@ -536,7 +535,9 @@ async function packageBuild() { zip.pipe(zipFile); // Add the directory with the final code - zip.directory(`dist/`, manifest.file.name); + // zip.directory(`dist/`, manifest.file.name); + const moduleJson = JSON.parse(fs.readFileSync('./src/module.json')); + zip.directory(`dist/`, moduleJson.id); /* MOD 4535992 zip.file(`dist/module.json`, { name: `module.json` }); zip.file(`dist/bundle.js`, { name: `bundle.js` }); diff --git a/jsdoc-conf.json b/jsdoc-conf.json new file mode 100644 index 0000000..360df6f --- /dev/null +++ b/jsdoc-conf.json @@ -0,0 +1,6 @@ +{ + "source": { + "includePattern": ".+\\.(m|c)?js(doc|x)?$" + }, + "plugins": ["@pixi/jsdoc-template/plugins/es6-fix"] +} diff --git a/package-lock.json b/package-lock.json index 99f414a..cd0b4fd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "forien-unidentified-items", - "version": "0.5.4", + "version": "0.6.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "forien-unidentified-items", - "version": "0.5.4", + "version": "0.6.0", "license": "SEE LICENSE IN LICENSE", "dependencies": { "build": "^0.1.4", @@ -20,7 +20,9 @@ }, "devDependencies": { "@babel/core": "^7.15.0", + "@babel/eslint-parser": "^7.15.4", "@league-of-foundry-developers/foundry-vtt-types": "^9.280.0", + "@rollup/plugin-node-resolve": "^13.3.0", "@types/archiver": "^5.1.1", "@types/browserify": "^12.0.37", "@types/color": "^3.0.2", @@ -37,11 +39,16 @@ "browserify": "^17.0.0", "color": "3.2.1", "eslint": "^7.32.0", + "eslint-plugin-jsdoc": "^39.3.3", + "fancy-log": "^2.0.0", + "fs": "^0.0.1-security", "gulp": "^4.0.0", "gulp-bro": "^2.0.0", "gulp-changed": "^4.0.3", "gulp-eslint-new": "^1.5.1", + "gulp-eslint7": "^0.3.1", "gulp-git": "^2.10.1", + "gulp-if": "^3.0.0", "gulp-less": "^5.0.0", "gulp-rename": "^2.0.0", "gulp-replace": "^1.1.3", @@ -51,7 +58,12 @@ "gulp-uglify": "^3.0.2", "jest": "^27.5.1", "json-stringify-pretty-compact": "^3.0.0", + "merge-stream": "^2.0.0", + "nedb": "^1.8.0", + "path": "^0.12.7", + "rollup": "^2.77.0", "sass": "^1.49.11", + "through2": "^4.0.2", "ts-jest": "^27.1.3", "ts-node": "^10.2.1", "typescript": "^4.4.2", @@ -74,36 +86,39 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", - "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", + "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", "dependencies": { - "@babel/highlight": "^7.10.4" + "@babel/highlight": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" } }, "node_modules/@babel/compat-data": { - "version": "7.18.13", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.18.13.tgz", - "integrity": "sha512-5yUzC5LqyTFp2HLmDoxGQelcdYgSpP9xsnMWBphAscOdFrHSAVbLNzWiy32sVNDqJRDiJK6klfDnAgu6PAGSHw==", + "version": "7.20.10", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.10.tgz", + "integrity": "sha512-sEnuDPpOJR/fcafHMjpcpGN5M2jbUGUHwmuWKM/YdPzeEDJg8bgmbcWQFUfE32MQjti1koACvoPVsDe8Uq+idg==", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.18.13", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.13.tgz", - "integrity": "sha512-ZisbOvRRusFktksHSG6pjj1CSvkPkcZq/KHD45LAkVP/oiHJkNBZWfpvlLmX8OtHDG8IuzsFlVRWo08w7Qxn0A==", + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.7.tgz", + "integrity": "sha512-t1ZjCluspe5DW24bn2Rr1CDb2v9rn/hROtg9a2tmd0+QYf4bsloYfLQzjG4qHPNMhWtKdGC33R5AxGR2Af2cBw==", "dependencies": { "@ampproject/remapping": "^2.1.0", "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.18.13", - "@babel/helper-compilation-targets": "^7.18.9", - "@babel/helper-module-transforms": "^7.18.9", - "@babel/helpers": "^7.18.9", - "@babel/parser": "^7.18.13", - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.18.13", - "@babel/types": "^7.18.13", + "@babel/generator": "^7.20.7", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-module-transforms": "^7.20.7", + "@babel/helpers": "^7.20.7", + "@babel/parser": "^7.20.7", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.20.7", + "@babel/types": "^7.20.7", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -118,42 +133,30 @@ "url": "https://opencollective.com/babel" } }, - "node_modules/@babel/core/node_modules/@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "node_modules/@babel/eslint-parser": { + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.19.1.tgz", + "integrity": "sha512-AqNf2QWt1rtu2/1rLswy6CDP7H9Oh3mMhk177Y67Rg8d7RD9WfOLLv8CGn6tisFvS2htm86yIe1yLF6I1UDaGQ==", + "dev": true, "dependencies": { - "@babel/highlight": "^7.18.6" + "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1", + "eslint-visitor-keys": "^2.1.0", + "semver": "^6.3.0" }, "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/core/node_modules/json5": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", - "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", - "bin": { - "json5": "lib/cli.js" + "node": "^10.13.0 || ^12.13.0 || >=14.0.0" }, - "engines": { - "node": ">=6" - } - }, - "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" + "peerDependencies": { + "@babel/core": ">=7.11.0", + "eslint": "^7.5.0 || ^8.0.0" } }, "node_modules/@babel/generator": { - "version": "7.18.13", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.13.tgz", - "integrity": "sha512-CkPg8ySSPuHTYPJYo7IRALdqyjM9HCbt/3uOBEFbzyGVP6Mn8bwFPB0jX6982JVNBlYzM1nnPkfjuXSOPtQeEQ==", + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.7.tgz", + "integrity": "sha512-7wqMOJq8doJMZmP4ApXTzLxSr7+oO2jroJURrVEp6XShrQUObV8Tq/D0NCcoYg2uHqUrjzO0zwBjoYzelxK+sw==", "dependencies": { - "@babel/types": "^7.18.13", + "@babel/types": "^7.20.7", "@jridgewell/gen-mapping": "^0.3.2", "jsesc": "^2.5.1" }, @@ -175,13 +178,14 @@ } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.9.tgz", - "integrity": "sha512-tzLCyVmqUiFlcFoAPLA/gL9TeYrF61VLNtb+hvkuVaB5SUjW7jcfrglBIX1vUIoT7CLP3bBlIMeyEsIl2eFQNg==", + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz", + "integrity": "sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==", "dependencies": { - "@babel/compat-data": "^7.18.8", + "@babel/compat-data": "^7.20.5", "@babel/helper-validator-option": "^7.18.6", - "browserslist": "^4.20.2", + "browserslist": "^4.21.3", + "lru-cache": "^5.1.1", "semver": "^6.3.0" }, "engines": { @@ -191,14 +195,6 @@ "@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-environment-visitor": { "version": "7.18.9", "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", @@ -208,12 +204,12 @@ } }, "node_modules/@babel/helper-function-name": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.18.9.tgz", - "integrity": "sha512-fJgWlZt7nxGksJS9a0XdSaI4XvpExnNIgRP+rVefWh5U7BL8pPuir6SJUmFKRfjWQ51OtWSzwOxhaH/EBWWc0A==", + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz", + "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==", "dependencies": { - "@babel/template": "^7.18.6", - "@babel/types": "^7.18.9" + "@babel/template": "^7.18.10", + "@babel/types": "^7.19.0" }, "engines": { "node": ">=6.9.0" @@ -242,37 +238,37 @@ } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.18.9.tgz", - "integrity": "sha512-KYNqY0ICwfv19b31XzvmI/mfcylOzbLtowkw+mfvGPAQ3kfCnMLYbED3YecL5tPd8nAYFQFAd6JHp2LxZk/J1g==", + "version": "7.20.11", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.20.11.tgz", + "integrity": "sha512-uRy78kN4psmji1s2QtbtcCSaj/LILFDp0f/ymhpQH5QY3nljUZCaNWz9X1dEj/8MBdBEFECs7yRhKn8i7NjZgg==", "dependencies": { "@babel/helper-environment-visitor": "^7.18.9", "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-simple-access": "^7.18.6", + "@babel/helper-simple-access": "^7.20.2", "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/helper-validator-identifier": "^7.18.6", - "@babel/template": "^7.18.6", - "@babel/traverse": "^7.18.9", - "@babel/types": "^7.18.9" + "@babel/helper-validator-identifier": "^7.19.1", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.20.10", + "@babel/types": "^7.20.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-plugin-utils": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.18.9.tgz", - "integrity": "sha512-aBXPT3bmtLryXaoJLyYPXPlSD4p1ld9aYeR+sJNOZjJJGiOpb+fKfh3NkcCu7J54nUJwCERPBExCCpyCOHnu/w==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", + "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-simple-access": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.6.tgz", - "integrity": "sha512-iNpIgTgyAvDQpDj76POqg+YEt8fPxx3yaNBg3S30dxNKm2SWfYhD0TGrK/Eu9wHpUW63VQU894TsTg+GLbUa1g==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", + "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", "dependencies": { - "@babel/types": "^7.18.6" + "@babel/types": "^7.20.2" }, "engines": { "node": ">=6.9.0" @@ -290,17 +286,17 @@ } }, "node_modules/@babel/helper-string-parser": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.18.10.tgz", - "integrity": "sha512-XtIfWmeNY3i4t7t4D2t02q50HvqHybPqW2ki1kosnvWCwuCMeo81Jf0gwr85jy/neUdg5XDdeFE/80DXiO+njw==", + "version": "7.19.4", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", + "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.18.6.tgz", - "integrity": "sha512-MmetCkz9ej86nJQV+sFCxoGGrUbU3q02kgLciwkrt9QqEB7cP39oKEY0PakknEO0Gu20SskMRi+AYZ3b1TpN9g==", + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", + "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", "engines": { "node": ">=6.9.0" } @@ -314,13 +310,13 @@ } }, "node_modules/@babel/helpers": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.18.9.tgz", - "integrity": "sha512-Jf5a+rbrLoR4eNdUmnFu8cN5eNJT6qdTdOg5IHIzq87WwyRw9PwguLFOWYgktN/60IP4fgDUawJvs7PjQIzELQ==", + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.7.tgz", + "integrity": "sha512-PBPjs5BppzsGaxHQCDKnZ6Gd9s6xl8bBCluz3vEInLGRJmnZan4F6BYCeqtyXqkk4W5IlPmjK4JlOuZkpJ3xZA==", "dependencies": { - "@babel/template": "^7.18.6", - "@babel/traverse": "^7.18.9", - "@babel/types": "^7.18.9" + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.20.7", + "@babel/types": "^7.20.7" }, "engines": { "node": ">=6.9.0" @@ -339,74 +335,10 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/highlight/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/@babel/highlight/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/@babel/highlight/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/@babel/highlight/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" - }, - "node_modules/@babel/highlight/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": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/@babel/highlight/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/highlight/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/@babel/parser": { - "version": "7.18.13", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.13.tgz", - "integrity": "sha512-dgXcIfMuQ0kgzLB2b9tRZs7TTFFaGM2AbtA4fJgUUYukzGH4jwsS7hzQHEGs67jdehpm22vkgKwvbU+aEflgwg==", + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.7.tgz", + "integrity": "sha512-T3Z9oHybU+0vZlY9CiDSJQTD5ZapcW18ZctFMi0MOAl/4BjFF4ul7NVSARLdbGO5vDqy9eQiGTV0LtKfvCYvcg==", "bin": { "parser": "bin/babel-parser.js" }, @@ -550,11 +482,11 @@ } }, "node_modules/@babel/plugin-syntax-typescript": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.18.6.tgz", - "integrity": "sha512-mAWAuq4rvOepWCBid55JuRNvpTNf2UGVgoz4JV0fXEKolsVZDzsa4NqCef758WZJj/GDu0gVGItjKFiClTAmZA==", + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.20.0.tgz", + "integrity": "sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ==", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" + "@babel/helper-plugin-utils": "^7.19.0" }, "engines": { "node": ">=6.9.0" @@ -564,42 +496,31 @@ } }, "node_modules/@babel/template": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz", - "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==", + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", + "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", "dependencies": { "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.18.10", - "@babel/types": "^7.18.10" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/template/node_modules/@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", - "dependencies": { - "@babel/highlight": "^7.18.6" + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.18.13", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.13.tgz", - "integrity": "sha512-N6kt9X1jRMLPxxxPYWi7tgvJRH/rtoU+dbKAPDM44RFHiMH8igdsaSBgFeskhSl/kLWLDUvIh1RXCrTmg0/zvA==", + "version": "7.20.10", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.10.tgz", + "integrity": "sha512-oSf1juCgymrSez8NI4A2sr4+uB/mFd9MXplYGPEBnfAuWmmyeVcHa6xLPiaRBcXkcb/28bgxmQLTVwFKE1yfsg==", "dependencies": { "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.18.13", + "@babel/generator": "^7.20.7", "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", + "@babel/helper-function-name": "^7.19.0", "@babel/helper-hoist-variables": "^7.18.6", "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.18.13", - "@babel/types": "^7.18.13", + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -607,32 +528,13 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/traverse/node_modules/@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", - "dependencies": { - "@babel/highlight": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse/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/@babel/types": { - "version": "7.18.13", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.13.tgz", - "integrity": "sha512-ePqfTihzW0W6XAU+aMw2ykilisStJfDnsejDCXRchCcMJ4O0+8DhPXf2YUbZ6wjBlsEmZwLK/sPweWtu8hcJYQ==", + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.7.tgz", + "integrity": "sha512-69OnhBxSSgK0OzTJai4kyPDiKTIe3j+ctaHdIGVbRahTLAT7L3R9oeXHC2aVSuGYt3cVnoAMDmOCgJ2yaiLMvg==", "dependencies": { - "@babel/helper-string-parser": "^7.18.10", - "@babel/helper-validator-identifier": "^7.18.6", + "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-validator-identifier": "^7.19.1", "to-fast-properties": "^2.0.0" }, "engines": { @@ -684,6 +586,20 @@ "kuler": "^2.0.0" } }, + "node_modules/@es-joy/jsdoccomment": { + "version": "0.36.1", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.36.1.tgz", + "integrity": "sha512-922xqFsTpHs6D0BUiG4toiyPOMc8/jafnWKxz1KWgS4XzKPy2qXf1Pe6UFuNSCQqt6tOuhAWXBNuuyUhJmw9Vg==", + "dev": true, + "dependencies": { + "comment-parser": "1.3.1", + "esquery": "^1.4.0", + "jsdoc-type-pratt-parser": "~3.1.0" + }, + "engines": { + "node": "^14 || ^16 || ^17 || ^18 || ^19" + } + }, "node_modules/@eslint/eslintrc": { "version": "0.4.3", "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", @@ -704,6 +620,21 @@ "node": "^10.12.0 || >=12.0.0" } }, + "node_modules/@eslint/eslintrc/node_modules/globals": { + "version": "13.19.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.19.0.tgz", + "integrity": "sha512-dkQ957uSRWHw7CFXLUtUHQI3g3aWApYhfNR2O6jn/907riyTYKVBmxYVROkBcY614FSSeSJh7Xm7SrUWCxvJMQ==", + "dev": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/@eslint/eslintrc/node_modules/ignore": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", @@ -713,6 +644,18 @@ "node": ">= 4" } }, + "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/@gar/promisify": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", @@ -755,6 +698,16 @@ "node": ">=0.10.0" } }, + "node_modules/@gulp-sourcemaps/identity-map/node_modules/through2": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz", + "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==", + "dev": true, + "dependencies": { + "inherits": "^2.0.4", + "readable-stream": "2 || 3" + } + }, "node_modules/@gulp-sourcemaps/map-sources": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/@gulp-sourcemaps/map-sources/-/map-sources-1.0.0.tgz", @@ -795,6 +748,12 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/@gulp-sourcemaps/map-sources/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==", + "dev": true + }, "node_modules/@gulp-sourcemaps/map-sources/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -828,16 +787,6 @@ "node": ">=10.10.0" } }, - "node_modules/@humanwhocodes/gitignore-to-minimatch": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@humanwhocodes/gitignore-to-minimatch/-/gitignore-to-minimatch-1.0.2.tgz", - "integrity": "sha512-rSqmMJDdLFUsyxR6FMtD00nfQKKLFb1kv+qBbOVKqErvloEIJLo5bDTJTQNTYgeyp78JsA7u/NPi5jT1GR/MuA==", - "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" - } - }, "node_modules/@humanwhocodes/module-importer": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", @@ -872,100 +821,100 @@ "node": ">=8" } }, - "node_modules/@istanbuljs/load-nyc-config/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==", - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, + "node_modules/@istanbuljs/load-nyc-config/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==", "engines": { "node": ">=8" } }, - "node_modules/@istanbuljs/load-nyc-config/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==", - "dependencies": { - "p-locate": "^4.1.0" - }, + "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==", "engines": { "node": ">=8" } }, - "node_modules/@istanbuljs/load-nyc-config/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==", + "node_modules/@jest/console": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-27.5.1.tgz", + "integrity": "sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg==", "dependencies": { - "p-try": "^2.0.0" + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^27.5.1", + "jest-util": "^27.5.1", + "slash": "^3.0.0" }, "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@istanbuljs/load-nyc-config/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==", + "node_modules/@jest/console/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==", "dependencies": { - "p-limit": "^2.2.0" + "color-convert": "^2.0.1" }, "engines": { "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/@istanbuljs/load-nyc-config/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==", + "node_modules/@jest/console/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, "engines": { - "node": ">=6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/@istanbuljs/load-nyc-config/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==", + "node_modules/@jest/console/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==", + "dependencies": { + "color-name": "~1.1.4" + }, "engines": { - "node": ">=8" + "node": ">=7.0.0" } }, - "node_modules/@istanbuljs/load-nyc-config/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==", - "engines": { - "node": ">=8" - } + "node_modules/@jest/console/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==" }, - "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==", + "node_modules/@jest/console/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==", "engines": { "node": ">=8" } }, - "node_modules/@jest/console": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/console/-/console-27.5.1.tgz", - "integrity": "sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg==", + "node_modules/@jest/console/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==", "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "jest-message-util": "^27.5.1", - "jest-util": "^27.5.1", - "slash": "^3.0.0" + "has-flag": "^4.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=8" } }, "node_modules/@jest/core": { @@ -1014,6 +963,70 @@ } } }, + "node_modules/@jest/core/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==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/core/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "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/@jest/core/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==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/core/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==" + }, + "node_modules/@jest/core/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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core/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==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/@jest/environment": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-27.5.1.tgz", @@ -1100,6 +1113,59 @@ } } }, + "node_modules/@jest/reporters/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==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/reporters/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "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/@jest/reporters/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==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/reporters/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==" + }, + "node_modules/@jest/reporters/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==", + "engines": { + "node": ">=8" + } + }, "node_modules/@jest/reporters/node_modules/source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -1108,6 +1174,17 @@ "node": ">=0.10.0" } }, + "node_modules/@jest/reporters/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==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/@jest/source-map": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-27.5.1.tgz", @@ -1182,6 +1259,59 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, + "node_modules/@jest/transform/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==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/transform/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "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/@jest/transform/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==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/transform/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==" + }, + "node_modules/@jest/transform/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==", + "engines": { + "node": ">=8" + } + }, "node_modules/@jest/transform/node_modules/source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -1190,6 +1320,17 @@ "node": ">=0.10.0" } }, + "node_modules/@jest/transform/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==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/@jest/types": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", @@ -1213,6 +1354,70 @@ "@types/yargs-parser": "*" } }, + "node_modules/@jest/types/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==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/types/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "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/@jest/types/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==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/types/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==" + }, + "node_modules/@jest/types/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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/types/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==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/@jridgewell/gen-mapping": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", @@ -1247,12 +1452,12 @@ "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==" }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.15", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.15.tgz", - "integrity": "sha512-oWZNOULl+UbhsgB51uuZzglikfIKSUBO/M9W2OfEjn7cmqoAiCgmv9lyACTUacZwBz0ITnJ2NqjU8Tx0DHL88g==", + "version": "0.3.17", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", + "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", "dependencies": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" } }, "node_modules/@league-of-foundry-developers/foundry-vtt-types": { @@ -1271,6 +1476,15 @@ "tinymce": "5.10.1" } }, + "node_modules/@nicolo-ribaudo/eslint-scope-5-internals": { + "version": "5.1.1-v1", + "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz", + "integrity": "sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==", + "dev": true, + "dependencies": { + "eslint-scope": "5.1.1" + } + }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -1315,10 +1529,41 @@ "semver": "^7.3.5" } }, + "node_modules/@npmcli/fs/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==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@npmcli/fs/node_modules/semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@npmcli/fs/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "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==", + "deprecated": "This functionality has been moved to @npmcli/fs", "dependencies": { "mkdirp": "^1.0.4", "rimraf": "^3.0.2" @@ -1516,16 +1761,16 @@ } }, "node_modules/@pixi/constants": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@pixi/constants/-/constants-6.5.0.tgz", - "integrity": "sha512-rr2szhjkM/TEHFcq+I3sg3uvRDRCC+ggO0lOvbHt3B84QdSGltndI4GSefSRpmvb5KbrZP7R0NO6UY7AZ0NqQg==", + "version": "6.5.8", + "resolved": "https://registry.npmjs.org/@pixi/constants/-/constants-6.5.8.tgz", + "integrity": "sha512-yYRCebBPqajm1kn5f8QQTTvl7oDRDk1nppfO+JpqbrFXg0W7oqIMurec3KeG9RdZW5foOiXDoz1Gw+VtolYIEw==", "dev": true, "peer": true }, "node_modules/@pixi/core": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@pixi/core/-/core-6.5.0.tgz", - "integrity": "sha512-73dceDRGvdMs/i9t9sNAVKK2lkPZ/olaLp+Xa2vo+BsaBdr5e+11vnAzT7XUtZyGjWOm3o1KXABZ6jr9AuKdkg==", + "version": "6.5.8", + "resolved": "https://registry.npmjs.org/@pixi/core/-/core-6.5.8.tgz", + "integrity": "sha512-Gconik7/PpFPMpCpOddXVIPx5C2StWKw7lQ4YX19yQ+cRRmecCea2cV0xTBtpEjjx0ilX7nBfIEuZ4zIlMmlbA==", "dev": true, "peer": true, "dependencies": { @@ -1536,26 +1781,35 @@ "url": "https://opencollective.com/pixijs" }, "peerDependencies": { - "@pixi/constants": "6.5.0", - "@pixi/math": "6.5.0", - "@pixi/runner": "6.5.0", - "@pixi/settings": "6.5.0", - "@pixi/ticker": "6.5.0", - "@pixi/utils": "6.5.0" + "@pixi/constants": "6.5.8", + "@pixi/extensions": "6.5.8", + "@pixi/math": "6.5.8", + "@pixi/runner": "6.5.8", + "@pixi/settings": "6.5.8", + "@pixi/ticker": "6.5.8", + "@pixi/utils": "6.5.8" } }, "node_modules/@pixi/display": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@pixi/display/-/display-6.5.0.tgz", - "integrity": "sha512-ksjGtleam+p319teRT1FL7MSwJ1w5L5xWyq1w8QIREKNxHuI8lOfYgxPABo6HUI8FZ4AysifnfAdnxDqbPtauw==", + "version": "6.5.8", + "resolved": "https://registry.npmjs.org/@pixi/display/-/display-6.5.8.tgz", + "integrity": "sha512-2K8YOG8s0iF8x/k2Q0RTFmoMJ9biI6PXEh76nH3EqUFdpyrIIgrG5aOMnCkVDvOxlgVRrKG8Q3JBHlSievTmuw==", "dev": true, "peer": true, "peerDependencies": { - "@pixi/math": "6.5.0", - "@pixi/settings": "6.5.0", - "@pixi/utils": "6.5.0" + "@pixi/constants": "6.5.8", + "@pixi/math": "6.5.8", + "@pixi/settings": "6.5.8", + "@pixi/utils": "6.5.8" } }, + "node_modules/@pixi/extensions": { + "version": "6.5.8", + "resolved": "https://registry.npmjs.org/@pixi/extensions/-/extensions-6.5.8.tgz", + "integrity": "sha512-6vEV801Vn/EkU/qjFiZ76OZWPq5KsBR2r+P5gfKv4YLnaDc3A+0IpUOJ7sLBAJqmr0iw68g6xV6MnuqVjNGjFg==", + "dev": true, + "peer": true + }, "node_modules/@pixi/extract": { "version": "5.3.11", "resolved": "https://registry.npmjs.org/@pixi/extract/-/extract-5.3.11.tgz", @@ -2093,18 +2347,18 @@ } }, "node_modules/@pixi/graphics": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@pixi/graphics/-/graphics-6.5.0.tgz", - "integrity": "sha512-8AoZDLlZtCQ2x/XmjnjdMUfri0L3oUoDWcMoa1CSqqzHBUhpWqrn5f/VeJnSS7xGixpGe1XeJXWwRoxSwN2D7A==", + "version": "6.5.8", + "resolved": "https://registry.npmjs.org/@pixi/graphics/-/graphics-6.5.8.tgz", + "integrity": "sha512-DUuUXHO4t5fg+n+srMkHX38QEH3WtS1IMXtovBGFJkkopG0Z0xjxSp5XvsPPw1J//4fzkHZI5OBrlN613p9+sg==", "dev": true, "peer": true, "peerDependencies": { - "@pixi/constants": "6.5.0", - "@pixi/core": "6.5.0", - "@pixi/display": "6.5.0", - "@pixi/math": "6.5.0", - "@pixi/sprite": "6.5.0", - "@pixi/utils": "6.5.0" + "@pixi/constants": "6.5.8", + "@pixi/core": "6.5.8", + "@pixi/display": "6.5.8", + "@pixi/math": "6.5.8", + "@pixi/sprite": "6.5.8", + "@pixi/utils": "6.5.8" } }, "node_modules/@pixi/graphics-smooth": { @@ -2295,9 +2549,9 @@ } }, "node_modules/@pixi/math": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@pixi/math/-/math-6.5.0.tgz", - "integrity": "sha512-NWOxO8my4KxdCyrR4UJGchwDkpWortMy8zUtXuds+92I+5fpBfctVkshf45o9QX2yX4pbtCPs0VupI2i5G3AOQ==", + "version": "6.5.8", + "resolved": "https://registry.npmjs.org/@pixi/math/-/math-6.5.8.tgz", + "integrity": "sha512-9493KEH5ITnjOZvQZbaU22lD0kcg/XhNh+309KYfwFX787zA1BN/7is06oHEgHBDb2NemqioYi6sw1WnECgQig==", "dev": true, "peer": true }, @@ -2910,32 +3164,35 @@ } }, "node_modules/@pixi/runner": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@pixi/runner/-/runner-6.5.0.tgz", - "integrity": "sha512-jZEilMPQlROJgRvRaJZcxp/K3adn4gx2mXwqK8DPqAcc5epwLzF8D4Us20PmY+7ALTglMdFZ7hHQKAPngi/jRA==", + "version": "6.5.8", + "resolved": "https://registry.npmjs.org/@pixi/runner/-/runner-6.5.8.tgz", + "integrity": "sha512-/9KVgQjTKiBa1qHdNmhP9I+AHgC/Eu9QiKcc+oakLCJtpYi79lx+nDFrpLUamIi2c7lP0hDWVe0XqlQeYmSwag==", "dev": true, "peer": true }, "node_modules/@pixi/settings": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@pixi/settings/-/settings-6.5.0.tgz", - "integrity": "sha512-fXbFYNJGv1v0ZS0kypziKFh2LJfI16aRBvqDqLFPvB0fkRkEOJuRTU4Lq77shgzP5v20oz7JShoVxyN5X9VNSw==", + "version": "6.5.8", + "resolved": "https://registry.npmjs.org/@pixi/settings/-/settings-6.5.8.tgz", + "integrity": "sha512-gmnwHkg9+tlQRuFNOdimzl73Dup2fdEo/VYaF7spT+8womE4KWAvARCBMqY/10aAx1iYeYuo5av/RfqrePB5Hg==", "dev": true, - "peer": true + "peer": true, + "peerDependencies": { + "@pixi/constants": "6.5.8" + } }, "node_modules/@pixi/sprite": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@pixi/sprite/-/sprite-6.5.0.tgz", - "integrity": "sha512-hxoH6poGBU+pZ4uC3rUuu9BXaFGrxZcyDu48/5ZYXjNC5HcCNPycmffalEkPcDQF7ymr7/3vTZ73mybcq9EIMA==", + "version": "6.5.8", + "resolved": "https://registry.npmjs.org/@pixi/sprite/-/sprite-6.5.8.tgz", + "integrity": "sha512-ywvbrNgjK+K93X9cvHtDCnsBtU7B9JD/3wg+1G6v1Ktrr2E1gwVIQK1NANBrjzt6cYGphz5EqGAW68d0rMBliw==", "dev": true, "peer": true, "peerDependencies": { - "@pixi/constants": "6.5.0", - "@pixi/core": "6.5.0", - "@pixi/display": "6.5.0", - "@pixi/math": "6.5.0", - "@pixi/settings": "6.5.0", - "@pixi/utils": "6.5.0" + "@pixi/constants": "6.5.8", + "@pixi/core": "6.5.8", + "@pixi/display": "6.5.8", + "@pixi/math": "6.5.8", + "@pixi/settings": "6.5.8", + "@pixi/utils": "6.5.8" } }, "node_modules/@pixi/sprite-animated": { @@ -3426,19 +3683,20 @@ } }, "node_modules/@pixi/ticker": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@pixi/ticker/-/ticker-6.5.0.tgz", - "integrity": "sha512-sPoE2ra5bAS6WpFdHgAUzu2jDjW8bGuHlEtK+uQtD5KF07JViDEPnBqFXPWgZYHimnIFBnYw7+OtxPM1kTeKmQ==", + "version": "6.5.8", + "resolved": "https://registry.npmjs.org/@pixi/ticker/-/ticker-6.5.8.tgz", + "integrity": "sha512-7VKq5hfnRDSv6a16pATqZAmpQfEu4G171iUTloy3QZfbnPw0s3JervZSih1yJJD84GXEF4VzYB26pJ/x3arGjQ==", "dev": true, "peer": true, "peerDependencies": { - "@pixi/settings": "6.5.0" + "@pixi/extensions": "6.5.8", + "@pixi/settings": "6.5.8" } }, "node_modules/@pixi/utils": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@pixi/utils/-/utils-6.5.0.tgz", - "integrity": "sha512-ttJZwTh2LhvwMt4WkU6HAWh6UE3ELGds+DQW29KW2yrKZnUEMsA2Jnsq7uFn6x6LM7tzBvJbzGvTyKgFL/jvVg==", + "version": "6.5.8", + "resolved": "https://registry.npmjs.org/@pixi/utils/-/utils-6.5.8.tgz", + "integrity": "sha512-zLnvmVQBWPDnwkfvrSpBBF2XpWSMt+kQAsX562eqjuME63ic9M6fK4u/IaA8csdlG2wtcjBvSYWrpWmPq0bWag==", "dev": true, "peer": true, "dependencies": { @@ -3448,14 +3706,51 @@ "url": "^0.11.0" }, "peerDependencies": { - "@pixi/constants": "6.5.0", - "@pixi/settings": "6.5.0" + "@pixi/constants": "6.5.8", + "@pixi/settings": "6.5.8" + } + }, + "node_modules/@rollup/plugin-node-resolve": { + "version": "13.3.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-13.3.0.tgz", + "integrity": "sha512-Lus8rbUo1eEcnS4yTFKLZrVumLPY+YayBdWXgFSHYhTT2iJbMhoaaBL3xl5NCdeRytErGr8tZ0L71BMRmnlwSw==", + "dev": true, + "dependencies": { + "@rollup/pluginutils": "^3.1.0", + "@types/resolve": "1.17.1", + "deepmerge": "^4.2.2", + "is-builtin-module": "^3.1.0", + "is-module": "^1.0.0", + "resolve": "^1.19.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "peerDependencies": { + "rollup": "^2.42.0" + } + }, + "node_modules/@rollup/pluginutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", + "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", + "dev": true, + "dependencies": { + "@types/estree": "0.0.39", + "estree-walker": "^1.0.1", + "picomatch": "^2.2.2" + }, + "engines": { + "node": ">= 8.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0" } }, "node_modules/@sinonjs/commons": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.3.tgz", - "integrity": "sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ==", + "version": "1.8.6", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz", + "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", "dependencies": { "type-detect": "4.0.8" } @@ -3516,9 +3811,9 @@ } }, "node_modules/@types/babel__core": { - "version": "7.1.19", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.19.tgz", - "integrity": "sha512-WEOTgRsbYkvA/KCsDwVEGkd7WAr1e3g31VHQ8zy5gul/V1qKullU/BU5I68X5v7V3GnB9eotmom4v5a5gjxorw==", + "version": "7.1.20", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.20.tgz", + "integrity": "sha512-PVb6Bg2QuscZ30FvOU7z4guG6c926D9YRvOxEaelzndpMsvP+YM74Q/dAFASpg2l6+XLalxSGxcq/lrgYWZtyQ==", "dependencies": { "@babel/parser": "^7.1.0", "@babel/types": "^7.0.0", @@ -3545,9 +3840,9 @@ } }, "node_modules/@types/babel__traverse": { - "version": "7.18.1", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.18.1.tgz", - "integrity": "sha512-FSdLaZh2UxaMuLp9lixWaHq/golWTRWOnRsAXzDTDSDOQLuZb1nsdCt6pJSPWSEQt2eFZ2YVk3oYhn+1kLMeMA==", + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.18.3.tgz", + "integrity": "sha512-1kbcJ40lLB7MHsj39U4Sh1uTd2E7rLEa79kmDpI6cy+XiXsteB3POdQomoq4FxszMrO3ZYchkhYJw7A2862b3w==", "dependencies": { "@babel/types": "^7.3.0" } @@ -3594,9 +3889,9 @@ "peer": true }, "node_modules/@types/eslint": { - "version": "8.4.6", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.6.tgz", - "integrity": "sha512-/fqTbjxyFUaYNO7VcW5g+4npmqVACz1bB7RTHYuLj+PRjw9hrCwrUXVQFpChUS0JsyEFvMZ7U/PfmvWgxJhI9g==", + "version": "8.4.10", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.10.tgz", + "integrity": "sha512-Sl/HOqN8NKPmhWo2VBEPm0nvHnu2LL3v9vKo8MEq0EtbJ4eVzGPl41VNPvn5E1i5poMk4/XD8UriLHpJvEP/Nw==", "dev": true, "dependencies": { "@types/estree": "*", @@ -3604,9 +3899,9 @@ } }, "node_modules/@types/estree": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.0.tgz", - "integrity": "sha512-WulqXMDUTYAXCjZnk6JtIHPigp55cVtDgDrO2gHRwhyJto21+1zbVCtOYB2L1F9w4qCQ0rOGWBnBe0FNTiEJIQ==", + "version": "0.0.39", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz", + "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==", "dev": true }, "node_modules/@types/expect": { @@ -3616,9 +3911,9 @@ "dev": true }, "node_modules/@types/glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@types/glob/-/glob-8.0.0.tgz", + "integrity": "sha512-l6NQsDDyQUVeoTynNpC9uRvCUint/gSUXQA2euwmTuWGvPY5LSDUu6tkCtJB2SvGQlJQzLaKqcGZP4//7EDveA==", "dev": true, "dependencies": { "@types/minimatch": "*", @@ -3644,12 +3939,12 @@ } }, "node_modules/@types/gulp": { - "version": "4.0.9", - "resolved": "https://registry.npmjs.org/@types/gulp/-/gulp-4.0.9.tgz", - "integrity": "sha512-zzT+wfQ8uwoXjDhRK9Zkmmk09/fbLLmN/yDHFizJiEKIve85qutOnXcP/TM2sKPBTU+Jc16vfPbOMkORMUBN7Q==", + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/@types/gulp/-/gulp-4.0.10.tgz", + "integrity": "sha512-spgZHJFqiEJGwqGlf7T/k4nkBpBcLgP7T0EfN6G2vvnhUfvd4uO1h8RwpXOE8x/54DVYUs1XCAtBHkX/R3axAQ==", "dev": true, "dependencies": { - "@types/undertaker": "*", + "@types/undertaker": ">=1.2.6", "@types/vinyl-fs": "*", "chokidar": "^3.3.1" } @@ -3663,138 +3958,6 @@ "@types/node": "*" } }, - "node_modules/@types/gulp/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/@types/gulp/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/@types/gulp/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/@types/gulp/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/@types/gulp/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/@types/gulp/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/@types/gulp/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/@types/gulp/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/@types/gulp/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/@types/gulp/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/@types/insert-module-globals": { "version": "7.0.2", "resolved": "https://registry.npmjs.org/@types/insert-module-globals/-/insert-module-globals-7.0.2.tgz", @@ -3851,9 +4014,9 @@ "dev": true }, "node_modules/@types/minimatch": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-5.1.1.tgz", - "integrity": "sha512-v55NF6Dz0wrj14Rn8iEABTWrhYRmgkJYuokduunSiq++t3hZ9VZ6dvcDt+850Pm5sGJZk8RaHzkFCXPxVINZ+g==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-5.1.2.tgz", + "integrity": "sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==", "dev": true }, "node_modules/@types/minimist": { @@ -3862,9 +4025,9 @@ "integrity": "sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==" }, "node_modules/@types/node": { - "version": "18.0.6", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.0.6.tgz", - "integrity": "sha512-/xUq6H2aQm261exT6iZTMifUySEt4GR5KX8eYyY+C4MSNPqSh9oNIP7tz2GLKTlFaiBbgZNxffoR3CVRG+cljw==" + "version": "18.11.17", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.11.17.tgz", + "integrity": "sha512-HJSUJmni4BeDHhfzn6nF0sVmd1SMezP7/4F0Lq+aXzmp2xm9O7WXrUtHW/CHlYVtZUbByEvWidHqRtcJXGF2Ng==" }, "node_modules/@types/normalize-package-data": { "version": "2.4.1", @@ -3879,14 +4042,23 @@ "peer": true }, "node_modules/@types/prettier": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.0.tgz", - "integrity": "sha512-RI1L7N4JnW5gQw2spvL7Sllfuf1SaHdrZpCHiBlCXjIlufi1SMNnbu2teze3/QE67Fg2tBlH7W+mi4hVNk4p0A==" + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.2.tgz", + "integrity": "sha512-KufADq8uQqo1pYKVIYzfKbJfBAc0sOeXqGbFaSpv8MRmC/zXgowNZmFcbngndGk922QDmOASEXUZCaY48gs4cg==" + }, + "node_modules/@types/resolve": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.17.1.tgz", + "integrity": "sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==", + "dev": true, + "dependencies": { + "@types/node": "*" + } }, "node_modules/@types/simple-peer": { - "version": "9.11.4", - "resolved": "https://registry.npmjs.org/@types/simple-peer/-/simple-peer-9.11.4.tgz", - "integrity": "sha512-Elje14YvM47k+XEaoyRAeUSvZN7TOLWYL233QCckUaXjT4lRESHnYs0iOK2JoosO5DnCvWu/0Vpl9qnw4KCLWw==", + "version": "9.11.5", + "resolved": "https://registry.npmjs.org/@types/simple-peer/-/simple-peer-9.11.5.tgz", + "integrity": "sha512-haXgWcAa3Y3Sn+T8lzkE4ErQUpYzhW6Cz2lh00RhQTyWt+xZ3s87wJPztUxlqSdFRqGhe2MQIBd0XsyHP3No4w==", "dev": true, "dependencies": { "@types/node": "*" @@ -3921,9 +4093,9 @@ "dev": true }, "node_modules/@types/vinyl": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/@types/vinyl/-/vinyl-2.0.6.tgz", - "integrity": "sha512-ayJ0iOCDNHnKpKTgBG6Q6JOnHTj9zFta+3j2b8Ejza0e4cvRyMn0ZoLEmbPrTHe5YYRlDYPvPWVdV4cTaRyH7g==", + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/@types/vinyl/-/vinyl-2.0.7.tgz", + "integrity": "sha512-4UqPv+2567NhMQuMLdKAyK4yzrfCqwaTt6bLhHEs8PFcxbHILsrxaY63n4wgE/BRLDWDQeI+WcTmkXKExh9hQg==", "dev": true, "dependencies": { "@types/expect": "^1.20.4", @@ -3942,9 +4114,9 @@ } }, "node_modules/@types/yargs": { - "version": "17.0.12", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.12.tgz", - "integrity": "sha512-Nz4MPhecOFArtm81gFQvQqdV7XYCrWKx5uUt6GNHredFHn1i2mtWqXTON7EPXMtNi1qjtjEM/VCHDhcHsAMLXQ==", + "version": "17.0.17", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.17.tgz", + "integrity": "sha512-72bWxFKTK6uwWJAVT+3rF6Jo6RTojiJ27FQo8Rf60AL+VZbzoVPnMFhKsUnbjR8A3BTCYQ7Mv3hnl8T0A+CX9g==", "dev": true, "dependencies": { "@types/yargs-parser": "*" @@ -3987,6 +4159,39 @@ } } }, + "node_modules/@typescript-eslint/eslint-plugin/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/@typescript-eslint/eslint-plugin/node_modules/semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/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/@typescript-eslint/experimental-utils": { "version": "4.33.0", "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.33.0.tgz", @@ -4095,6 +4300,39 @@ } } }, + "node_modules/@typescript-eslint/typescript-estree/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/@typescript-eslint/typescript-estree/node_modules/semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/typescript-estree/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/@typescript-eslint/visitor-keys": { "version": "4.33.0", "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.33.0.tgz", @@ -4249,17 +4487,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/ansi-escapes/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==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/ansi-gray": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/ansi-gray/-/ansi-gray-0.1.1.tgz", @@ -4281,17 +4508,14 @@ } }, "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==", + "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": "^2.0.1" + "color-convert": "^1.9.0" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "node": ">=4" } }, "node_modules/ansi-wrap": { @@ -4314,146 +4538,15 @@ "dev": true }, "node_modules/anymatch": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", - "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", - "dev": true, - "dependencies": { - "micromatch": "^3.1.4", - "normalize-path": "^2.1.1" - } - }, - "node_modules/anymatch/node_modules/define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", - "dev": true, - "dependencies": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/anymatch/node_modules/extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", - "dev": true, - "dependencies": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/anymatch/node_modules/is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/anymatch/node_modules/is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/anymatch/node_modules/is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "dependencies": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/anymatch/node_modules/is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "dependencies": { - "is-plain-object": "^2.0.4" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/anymatch/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/anymatch/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/anymatch/node_modules/micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "dependencies": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/anymatch/node_modules/normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==", - "dev": true, + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", "dependencies": { - "remove-trailing-separator": "^1.0.1" + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" }, "engines": { - "node": ">=0.10.0" + "node": ">= 8" } }, "node_modules/append-buffer": { @@ -4527,6 +4620,12 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/archiver-utils/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==", + "dev": true + }, "node_modules/archiver-utils/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -4897,6 +4996,70 @@ "@babel/core": "^7.8.0" } }, + "node_modules/babel-jest/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==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/babel-jest/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "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/babel-jest/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==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/babel-jest/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==" + }, + "node_modules/babel-jest/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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-jest/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==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/babel-plugin-istanbul": { "version": "6.1.1", "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", @@ -5036,53 +5199,6 @@ "node": ">=0.10.0" } }, - "node_modules/base/node_modules/is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/base/node_modules/is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/base/node_modules/is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "dependencies": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/base/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/base64-js": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", @@ -5111,12 +5227,21 @@ } }, "node_modules/binary-extensions": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", - "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", + "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": ">=0.10.0" + "node": ">=8" + } + }, + "node_modules/binary-search-tree": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/binary-search-tree/-/binary-search-tree-0.2.5.tgz", + "integrity": "sha512-CvNVKS6iXagL1uGwLagSXz1hzSMezxOuGnFi5FHGKqaTO3nPPWrAbyALUzK640j+xOTVm7lzD9YP8W1f/gvUdw==", + "dev": true, + "dependencies": { + "underscore": "~1.4.4" } }, "node_modules/binaryextensions": { @@ -5152,6 +5277,30 @@ "readable-stream": "^3.4.0" } }, + "node_modules/bl/node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "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": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, "node_modules/bn.js": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", @@ -5167,24 +5316,14 @@ } }, "node_modules/braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", "dependencies": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" + "fill-range": "^7.0.1" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, "node_modules/brorand": { @@ -5222,6 +5361,11 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/browser-pack/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/browser-pack/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -5361,6 +5505,12 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/browserify-cache-api/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==", + "dev": true + }, "node_modules/browserify-cache-api/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -5459,6 +5609,12 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/browserify-incremental/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==", + "dev": true + }, "node_modules/browserify-incremental/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -5503,25 +5659,6 @@ "safe-buffer": "^5.2.0" } }, - "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/browserify-zlib": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", @@ -5530,20 +5667,6 @@ "pako": "~1.0.5" } }, - "node_modules/browserify/node_modules/buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.2.1.tgz", - "integrity": "sha512-c+Ko0loDaFfuPWiL02ls9Xd3GO3cPVmUobQ6t3rXNUk304u6hGq+8N/kFi+QEIKhzK3uwolVhLzszmfLmMLnqg==", - "dependencies": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4" - } - }, - "node_modules/browserify/node_modules/punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==" - }, "node_modules/browserify/node_modules/readable-stream": { "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", @@ -5558,6 +5681,11 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/browserify/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/browserify/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -5576,9 +5704,9 @@ } }, "node_modules/browserslist": { - "version": "4.21.3", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.3.tgz", - "integrity": "sha512-898rgRXLAyRkM1GryrrBHGkqA5hlpkV5MhtZwg9QXeiyLUYs2k00Un05aX5l2/yJIOObYKOpS2JNo8nJDE7fWQ==", + "version": "4.21.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.4.tgz", + "integrity": "sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==", "funding": [ { "type": "opencollective", @@ -5590,10 +5718,10 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001370", - "electron-to-chromium": "^1.4.202", + "caniuse-lite": "^1.0.30001400", + "electron-to-chromium": "^1.4.251", "node-releases": "^2.0.6", - "update-browserslist-db": "^1.0.5" + "update-browserslist-db": "^1.0.9" }, "bin": { "browserslist": "cli.js" @@ -5623,27 +5751,12 @@ } }, "node_modules/buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "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" - } - ], + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.2.1.tgz", + "integrity": "sha512-c+Ko0loDaFfuPWiL02ls9Xd3GO3cPVmUobQ6t3rXNUk304u6hGq+8N/kFi+QEIKhzK3uwolVhLzszmfLmMLnqg==", "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" + "base64-js": "^1.0.2", + "ieee754": "^1.1.4" } }, "node_modules/buffer-crc32": { @@ -5656,12 +5769,15 @@ } }, "node_modules/buffer-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/buffer-equal/-/buffer-equal-1.0.0.tgz", - "integrity": "sha512-tcBWO2Dl4e7Asr9hTGcpVrCe+F7DubpmqWCTbj4FHLmjqO2hIaC383acQubWtRJhdceqs5uBHs6Es+Sk//RKiQ==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/buffer-equal/-/buffer-equal-1.0.1.tgz", + "integrity": "sha512-QoV3ptgEaQpvVwbXdSO39iqPQTCxSF7A5U99AxbHYqUdCizL/lH2Z0A2y6nbZucxMEOtNyZfG2s6gsVugGpKkg==", "dev": true, "engines": { - "node": ">=0.4.0" + "node": ">=0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/buffer-from": { @@ -5694,6 +5810,18 @@ "node": ">v0.4.12" } }, + "node_modules/builtin-modules": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz", + "integrity": "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==", + "dev": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/builtin-status-codes": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", @@ -5727,6 +5855,17 @@ "node": ">= 10" } }, + "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==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/cacache/node_modules/mkdirp": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", @@ -5738,6 +5877,11 @@ "node": ">=10" } }, + "node_modules/cacache/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "node_modules/cache-base": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", @@ -5808,9 +5952,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001385", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001385.tgz", - "integrity": "sha512-MpiCqJGhBkHgpyimE9GWmZTnyHyEEM35u115bD3QBrXpjvL/JgcP8cUhKJshfmg4OtEHFenifcK5sZayEw5tvQ==", + "version": "1.0.30001441", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001441.tgz", + "integrity": "sha512-OyxRR4Vof59I3yGWXws6i908EtGbMzVUi3ganaZQHmydk1iwDhRnvaPG2WaR0KcqrDFKrxVZHULT396LEPhXfg==", "funding": [ { "type": "opencollective", @@ -5828,18 +5972,16 @@ "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==" }, "node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "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": "^4.1.0", - "supports-color": "^7.1.0" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "node": ">=4" } }, "node_modules/char-regex": { @@ -5851,48 +5993,30 @@ } }, "node_modules/chokidar": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", - "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", - "deprecated": "Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies", - "dev": true, - "dependencies": { - "anymatch": "^2.0.0", - "async-each": "^1.0.1", - "braces": "^2.3.2", - "glob-parent": "^3.1.0", - "inherits": "^2.0.3", - "is-binary-path": "^1.0.0", - "is-glob": "^4.0.0", - "normalize-path": "^3.0.0", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.2.1", - "upath": "^1.1.1" - }, - "optionalDependencies": { - "fsevents": "^1.2.7" - } - }, - "node_modules/chokidar/node_modules/glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==", - "dev": true, - "dependencies": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - } - }, - "node_modules/chokidar/node_modules/glob-parent/node_modules/is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw==", + "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": { - "is-extglob": "^2.1.0" + "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": ">=0.10.0" + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" } }, "node_modules/chownr": { @@ -5904,9 +6028,12 @@ } }, "node_modules/ci-info": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.3.2.tgz", - "integrity": "sha512-xmDt/QIAdeZ9+nfdPsaBCpMvHNLFiLdjj59qjqn+6iPe6YmHGQ35sBnQ8uslRBXFmXkiZQOJRjvQeoGppoTjjg==" + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.7.0.tgz", + "integrity": "sha512-2CpRNYmImPx+RXKLq6jko/L07phmS9I02TyqkcNU20GCF/GgaWvc58hPtjxDX8lPpkdwc9sNh72V9k00S7ezog==", + "engines": { + "node": ">=8" + } }, "node_modules/cipher-base": { "version": "1.0.4", @@ -5937,6 +6064,80 @@ "node": ">=0.10.0" } }, + "node_modules/class-utils/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "dev": true, + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/is-accessor-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/is-data-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "dependencies": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/clean-stack": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", @@ -5946,39 +6147,16 @@ } }, "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==", + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", "dependencies": { "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", + "strip-ansi": "^6.0.1", "wrap-ansi": "^7.0.0" - } - }, - "node_modules/cliui/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==" - }, - "node_modules/cliui/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==", - "engines": { - "node": ">=8" - } - }, - "node_modules/cliui/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==", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" }, "engines": { - "node": ">=8" + "node": ">=12" } }, "node_modules/clone": { @@ -6031,6 +6209,12 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/cloneable-readable/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==", + "dev": true + }, "node_modules/cloneable-readable/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -6053,6 +6237,7 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", "integrity": "sha512-RpAVKQA5T63xEj6/giIbUEtZwJ4UFIc3ZtvEkiaUERylqe8xb5IvqcgOurZLahv93CLKfxcw5YI+DZcUBRyLXA==", + "dev": true, "engines": { "node": ">=0.10.0" } @@ -6099,20 +6284,17 @@ } }, "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==", + "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.4" - }, - "engines": { - "node": ">=7.0.0" + "color-name": "1.1.3" } }, "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==" + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" }, "node_modules/color-string": { "version": "1.9.1", @@ -6131,19 +6313,6 @@ "color-support": "bin.js" } }, - "node_modules/color/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/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" - }, "node_modules/colorspace": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/colorspace/-/colorspace-1.1.4.tgz", @@ -6169,14 +6338,6 @@ "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.1.3.tgz", "integrity": "sha512-Y8L5rp6jo+g9VEPgvqNfEopjTR4OTYct8lXlS8iVQdmnjDvbdbzYe9rjtFCB9egC86JoNCU61WRY+ScjkZpnIg==" }, - "node_modules/combine-source-map/node_modules/source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/combined-stream": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", @@ -6194,6 +6355,15 @@ "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", "dev": true }, + "node_modules/comment-parser": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.3.1.tgz", + "integrity": "sha512-B52sN2VNghyq5ofvUsqZjmk6YkihBX5vMSChmSK9v4ShjKf3Vk5Xcmgpw4o+iIgtrnM/u5FiMpz9VKb8lpBveA==", + "dev": true, + "engines": { + "node": ">= 12.0.0" + } + }, "node_modules/component-emitter": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", @@ -6248,6 +6418,11 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/concat-stream/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/concat-stream/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -6272,12 +6447,9 @@ "integrity": "sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==" }, "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" - } + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==" }, "node_modules/copy-anything": { "version": "2.0.6", @@ -6439,17 +6611,6 @@ "node": ">=0.10.0" } }, - "node_modules/css/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/cssmin": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/cssmin/-/cssmin-0.3.2.tgz", @@ -6568,15 +6729,18 @@ } }, "node_modules/decamelize-keys": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz", - "integrity": "sha512-ocLWuYzRPoS9bfiSdDd3cxvrzovVMZnRDVEzAs+hWIVXGDbHxWMECij2OBuyB/An0FFW/nLuq6Kv1i/YC5Qfzg==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.1.tgz", + "integrity": "sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==", "dependencies": { "decamelize": "^1.1.0", "map-obj": "^1.0.0" }, "engines": { "node": ">=0.10.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/decamelize-keys/node_modules/map-obj": { @@ -6588,14 +6752,14 @@ } }, "node_modules/decimal.js": { - "version": "10.4.0", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.0.tgz", - "integrity": "sha512-Nv6ENEzyPQ6AItkGwLE2PGKinZZ9g59vSh2BeH6NqPu0OTKZ5ruJsVqh/orbAnqXc9pBbgXAIrc2EyaCj8NpGg==" + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", + "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==" }, "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": "sha512-hjf+xovcEn31w/EUYdTXQh/8smFL/dzYjohQGEIgjyNavaJfBY2p5F527Bo1VPATxv0VYTUC2bOcXvqFwk78Og==", + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz", + "integrity": "sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==", "dev": true, "engines": { "node": ">=0.10" @@ -6644,6 +6808,7 @@ "version": "1.1.4", "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", + "dev": true, "dependencies": { "has-property-descriptors": "^1.0.0", "object-keys": "^1.1.1" @@ -6656,21 +6821,25 @@ } }, "node_modules/define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", "dev": true, "dependencies": { - "is-descriptor": "^0.1.0" + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" }, "engines": { "node": ">=0.10.0" } }, "node_modules/defined": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz", - "integrity": "sha512-Y2caI5+ZwS5c3RiNDJ6u53VhQHv+hHKwhkI1iHvceKUHw9Df6EK2zRLfjejRgMuCuxK7PfSWIMwWecceVvThjQ==" + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.1.tgz", + "integrity": "sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/delayed-stream": { "version": "1.0.0", @@ -6721,6 +6890,11 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/deps-sort/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/deps-sort/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -6887,6 +7061,11 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/duplexer2/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/duplexer2/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -6896,41 +7075,17 @@ } }, "node_modules/duplexify": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", - "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-4.1.2.tgz", + "integrity": "sha512-fz3OjcNCHmRP12MJoZMPglx8m4rrFP8rovnk4vT8Fs+aonZoCwGg10dSsQsfP/E62eZcPTMSMP6686fu9Qlqtw==", "dev": true, "dependencies": { - "end-of-stream": "^1.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.0.0", + "end-of-stream": "^1.4.1", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1", "stream-shift": "^1.0.0" } }, - "node_modules/duplexify/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/duplexify/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/each-props": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/each-props/-/each-props-1.3.2.tgz", @@ -6969,9 +7124,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.235", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.235.tgz", - "integrity": "sha512-eNU2SmVZYTzYVA5aAWmhAJbdVil5/8H5nMq6kGD0Yxd4k2uKIuT8YmS46I0QXY7iOoPPcb6jjem9/2xyuH5+XQ==" + "version": "1.4.284", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz", + "integrity": "sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==" }, "node_modules/elliptic": { "version": "6.5.4", @@ -7003,6 +7158,11 @@ "url": "https://github.com/sindresorhus/emittery?sponsor=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==" + }, "node_modules/enabled": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/enabled/-/enabled-2.0.0.tgz", @@ -7017,18 +7177,6 @@ "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==", - "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", @@ -7055,6 +7203,27 @@ "yeast": "0.1.2" } }, + "node_modules/engine.io-client/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/engine.io-parser": { "version": "5.0.4", "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.0.4.tgz", @@ -7110,62 +7279,10 @@ "is-arrayish": "^0.2.1" } }, - "node_modules/es-abstract": { - "version": "1.20.1", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.1.tgz", - "integrity": "sha512-WEm2oBhfoI2sImeM4OF2zE2V3BYdSF+KnSi9Sidz51fQHd7+JuF8Xgcj9/0o+OWeIeIS/MiuNnlruQrJf16GQA==", - "dependencies": { - "call-bind": "^1.0.2", - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "function.prototype.name": "^1.1.5", - "get-intrinsic": "^1.1.1", - "get-symbol-description": "^1.0.0", - "has": "^1.0.3", - "has-property-descriptors": "^1.0.0", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.3", - "is-callable": "^1.2.4", - "is-negative-zero": "^2.0.2", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "is-string": "^1.0.7", - "is-weakref": "^1.0.2", - "object-inspect": "^1.12.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.2", - "regexp.prototype.flags": "^1.4.3", - "string.prototype.trimend": "^1.0.5", - "string.prototype.trimstart": "^1.0.5", - "unbox-primitive": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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.61", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.61.tgz", - "integrity": "sha512-yFhIqQAzu2Ca2I4SE2Au3rxVfmohU9Y7wqGR+s7+H7krk26NXhIRAZDgqd6xqjCEFUomDEA3/Bo/7fKmIkW1kA==", + "version": "0.10.62", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.62.tgz", + "integrity": "sha512-BHLqn0klhEpnOKSrzn/Xsz2UIW8j+cGmo9JLzr8BiUapV8hPL9+FliFqjwr9ngW7jWdnxv6eO+/LqyhJVqgrjA==", "dev": true, "hasInstallScript": true, "dependencies": { @@ -7225,15 +7342,11 @@ } }, "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, + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=0.8.0" } }, "node_modules/escodegen": { @@ -7257,6 +7370,14 @@ "source-map": "~0.6.1" } }, + "node_modules/escodegen/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "engines": { + "node": ">=4.0" + } + }, "node_modules/escodegen/node_modules/levn": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", @@ -7370,6 +7491,72 @@ "url": "https://opencollective.com/eslint" } }, + "node_modules/eslint-plugin-jsdoc": { + "version": "39.6.4", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-39.6.4.tgz", + "integrity": "sha512-fskvdLCfwmPjHb6e+xNGDtGgbF8X7cDwMtVLAP2WwSf9Htrx68OAx31BESBM1FAwsN2HTQyYQq7m4aW4Q4Nlag==", + "dev": true, + "dependencies": { + "@es-joy/jsdoccomment": "~0.36.1", + "comment-parser": "1.3.1", + "debug": "^4.3.4", + "escape-string-regexp": "^4.0.0", + "esquery": "^1.4.0", + "semver": "^7.3.8", + "spdx-expression-parse": "^3.0.1" + }, + "engines": { + "node": "^14 || ^16 || ^17 || ^18 || ^19" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + } + }, + "node_modules/eslint-plugin-jsdoc/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-plugin-jsdoc/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/eslint-plugin-jsdoc/node_modules/semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint-plugin-jsdoc/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/eslint-scope": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", @@ -7383,15 +7570,6 @@ "node": ">=8.0.0" } }, - "node_modules/eslint-scope/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/eslint-utils": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", @@ -7419,6 +7597,76 @@ "node": ">=10" } }, + "node_modules/eslint/node_modules/@babel/code-frame": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", + "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.10.4" + } + }, + "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/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-utils": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", @@ -7443,6 +7691,30 @@ "node": ">=4" } }, + "node_modules/eslint/node_modules/globals": { + "version": "13.19.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.19.0.tgz", + "integrity": "sha512-dkQ957uSRWHw7CFXLUtUHQI3g3aWApYhfNR2O6jn/907riyTYKVBmxYVROkBcY614FSSeSJh7Xm7SrUWCxvJMQ==", + "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/ignore": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", @@ -7452,6 +7724,63 @@ "node": ">= 4" } }, + "node_modules/eslint/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/eslint/node_modules/semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "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/eslint/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/espree": { "version": "7.3.1", "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", @@ -7499,6 +7828,15 @@ "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", @@ -7511,14 +7849,30 @@ "node": ">=4.0" } }, - "node_modules/estraverse": { + "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/estree-walker": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", + "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==", + "dev": true + }, "node_modules/esutils": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", @@ -7617,6 +7971,101 @@ "ms": "2.0.0" } }, + "node_modules/expand-brackets/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "dev": true, + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dev": true, + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/is-accessor-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/is-data-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "dependencies": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/expand-brackets/node_modules/ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", @@ -7650,18 +8099,18 @@ } }, "node_modules/ext": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/ext/-/ext-1.6.0.tgz", - "integrity": "sha512-sdBImtzkq2HpkdRLtlLWDa6w4DX22ijZLKx8BMPUuKe1c5lbN6xwQDQCxSfxBQnHZ13ls/FH0MQZx/q/gr6FQg==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.7.0.tgz", + "integrity": "sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==", "dev": true, "dependencies": { - "type": "^2.5.0" + "type": "^2.7.2" } }, "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==", + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/type/-/type-2.7.2.tgz", + "integrity": "sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==", "dev": true }, "node_modules/extend": { @@ -7670,12 +8119,12 @@ "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" }, "node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", - "dev": true, + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", "dependencies": { - "is-extendable": "^0.1.0" + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" }, "engines": { "node": ">=0.10.0" @@ -7712,48 +8161,22 @@ "node": ">=0.10.0" } }, - "node_modules/extglob/node_modules/is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extglob/node_modules/is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extglob/node_modules/is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "node_modules/extglob/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", "dev": true, "dependencies": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" + "is-extendable": "^0.1.0" }, "engines": { "node": ">=0.10.0" } }, - "node_modules/extglob/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==", + "node_modules/extglob/node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", "dev": true, "engines": { "node": ">=0.10.0" @@ -7768,18 +8191,15 @@ ] }, "node_modules/fancy-log": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.3.tgz", - "integrity": "sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-2.0.0.tgz", + "integrity": "sha512-9CzxZbACXMUXW13tS0tI8XsGGmxWzO2DmYrGuBJOJ8k8q2K7hwfJA5qHjuPPe8wtsco33YR9wc+Rlr5wYFvhSA==", "dev": true, "dependencies": { - "ansi-gray": "^0.1.1", - "color-support": "^1.1.3", - "parse-node-version": "^1.0.0", - "time-stamp": "^1.0.0" + "color-support": "^1.1.3" }, "engines": { - "node": ">= 0.10" + "node": ">=10.13.0" } }, "node_modules/fast-deep-equal": { @@ -7788,9 +8208,9 @@ "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==", + "version": "3.2.12", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", + "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", "dev": true, "dependencies": { "@nodelib/fs.stat": "^2.0.2", @@ -7819,18 +8239,18 @@ "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==", + "version": "1.14.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.14.0.tgz", + "integrity": "sha512-eR2D+V9/ExcbF9ls441yIuN6TI2ED1Y2ZcA5BmMtJsOkWOFRJQ0Jt0g1UwqXJJVAb+V+umH5Dfr8oh4EVP7VVg==", "dev": true, "dependencies": { "reusify": "^1.0.4" } }, "node_modules/fb-watchman": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.1.tgz", - "integrity": "sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", + "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", "dependencies": { "bser": "2.1.1" } @@ -7860,18 +8280,26 @@ "optional": true }, "node_modules/fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==", - "dev": true, + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", "dependencies": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" + "to-regex-range": "^5.0.1" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" + } + }, + "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==", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, "node_modules/findup-sync": { @@ -7889,89 +8317,94 @@ "node": ">= 0.10" } }, - "node_modules/findup-sync/node_modules/define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "node_modules/findup-sync/node_modules/braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", "dev": true, "dependencies": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" }, "engines": { "node": ">=0.10.0" } }, - "node_modules/findup-sync/node_modules/extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", + "node_modules/findup-sync/node_modules/braces/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", "dev": true, "dependencies": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" + "is-extendable": "^0.1.0" }, "engines": { "node": ">=0.10.0" } }, - "node_modules/findup-sync/node_modules/is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "node_modules/findup-sync/node_modules/fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==", "dev": true, "dependencies": { - "kind-of": "^6.0.0" + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" }, "engines": { "node": ">=0.10.0" } }, - "node_modules/findup-sync/node_modules/is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "node_modules/findup-sync/node_modules/fill-range/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", "dev": true, "dependencies": { - "kind-of": "^6.0.0" + "is-extendable": "^0.1.0" }, "engines": { "node": ">=0.10.0" } }, - "node_modules/findup-sync/node_modules/is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "node_modules/findup-sync/node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", "dev": true, - "dependencies": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - }, "engines": { "node": ">=0.10.0" } }, - "node_modules/findup-sync/node_modules/is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "node_modules/findup-sync/node_modules/is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", "dev": true, "dependencies": { - "is-plain-object": "^2.0.4" + "kind-of": "^3.0.2" }, "engines": { "node": ">=0.10.0" } }, - "node_modules/findup-sync/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==", + "node_modules/findup-sync/node_modules/is-number/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", "dev": true, "dependencies": { - "isobject": "^3.0.1" + "is-buffer": "^1.1.5" }, "engines": { "node": ">=0.10.0" @@ -8010,6 +8443,19 @@ "node": ">=0.10.0" } }, + "node_modules/findup-sync/node_modules/to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==", + "dev": true, + "dependencies": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/fined": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/fined/-/fined-1.2.0.tgz", @@ -8065,6 +8511,12 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/first-chunk-stream/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==", + "dev": true + }, "node_modules/first-chunk-stream/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -8097,9 +8549,9 @@ } }, "node_modules/flatted": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.6.tgz", - "integrity": "sha512-0sQoMh9s0BYsm+12Huy/rkKxVu4R1+r96YX5cG44rHV0pQ6iC3Q+mkoMFaGWObMFYQxCVT+ssG1ksneA2MI9KQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", + "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", "dev": true }, "node_modules/flush-write-stream": { @@ -8127,6 +8579,12 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/flush-write-stream/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==", + "dev": true + }, "node_modules/flush-write-stream/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -8209,6 +8667,12 @@ "node": ">=0.10.0" } }, + "node_modules/fs": { + "version": "0.0.1-security", + "resolved": "https://registry.npmjs.org/fs/-/fs-0.0.1-security.tgz", + "integrity": "sha512-3XY9e1pP0CVEUCdj5BmfIZxRBTSDycnbqhIOGec9QYtmVH2fbLpj86CFWkrNOkt/Fvty4KZG5lTglL9j/gJ87w==", + "dev": true + }, "node_modules/fs-constants": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", @@ -8254,6 +8718,12 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/fs-mkdirp-stream/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==", + "dev": true + }, "node_modules/fs-mkdirp-stream/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -8279,22 +8749,16 @@ "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" }, "node_modules/fsevents": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", - "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", - "deprecated": "fsevents 1 will break on node v14+ and could be using insecure binaries. Upgrade to fsevents 2.", - "dev": true, + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", "hasInstallScript": true, "optional": true, "os": [ "darwin" ], - "dependencies": { - "bindings": "^1.5.0", - "nan": "^2.12.1" - }, "engines": { - "node": ">= 4.0" + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } }, "node_modules/function-bind": { @@ -8302,37 +8766,12 @@ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" }, - "node_modules/function.prototype.name": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", - "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.0", - "functions-have-names": "^1.2.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "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": "sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==", "dev": true }, - "node_modules/functions-have-names": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/gauge": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz", @@ -8352,32 +8791,6 @@ "node": ">=10" } }, - "node_modules/gauge/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==" - }, - "node_modules/gauge/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==", - "engines": { - "node": ">=8" - } - }, - "node_modules/gauge/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==", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/gaze": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz", @@ -8411,9 +8824,9 @@ } }, "node_modules/get-intrinsic": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.2.tgz", - "integrity": "sha512-Jfm3OyCxHh9DJyc28qGk+JmfkpO41A4XkneDSujN9MDXrm4oDKdHvndhZ2dN94+ERNfkYJWDclW6k2L/ZGHjXA==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.3.tgz", + "integrity": "sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==", "dependencies": { "function-bind": "^1.1.1", "has": "^1.0.3", @@ -8450,21 +8863,6 @@ "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/get-value": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", @@ -8571,6 +8969,12 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/glob-stream/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==", + "dev": true + }, "node_modules/glob-stream/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -8598,6 +9002,296 @@ "node": ">= 0.10" } }, + "node_modules/glob-watcher/node_modules/anymatch": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", + "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "dev": true, + "dependencies": { + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" + } + }, + "node_modules/glob-watcher/node_modules/anymatch/node_modules/normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==", + "dev": true, + "dependencies": { + "remove-trailing-separator": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/glob-watcher/node_modules/binary-extensions": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", + "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/glob-watcher/node_modules/braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "dependencies": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/glob-watcher/node_modules/braces/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dev": true, + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/glob-watcher/node_modules/chokidar": { + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", + "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", + "deprecated": "Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies", + "dev": true, + "dependencies": { + "anymatch": "^2.0.0", + "async-each": "^1.0.1", + "braces": "^2.3.2", + "glob-parent": "^3.1.0", + "inherits": "^2.0.3", + "is-binary-path": "^1.0.0", + "is-glob": "^4.0.0", + "normalize-path": "^3.0.0", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.2.1", + "upath": "^1.1.1" + }, + "optionalDependencies": { + "fsevents": "^1.2.7" + } + }, + "node_modules/glob-watcher/node_modules/fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==", + "dev": true, + "dependencies": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/glob-watcher/node_modules/fill-range/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dev": true, + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/glob-watcher/node_modules/fsevents": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", + "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", + "deprecated": "fsevents 1 will break on node v14+ and could be using insecure binaries. Upgrade to fsevents 2.", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "dependencies": { + "bindings": "^1.5.0", + "nan": "^2.12.1" + }, + "engines": { + "node": ">= 4.0" + } + }, + "node_modules/glob-watcher/node_modules/glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==", + "dev": true, + "dependencies": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + } + }, + "node_modules/glob-watcher/node_modules/glob-parent/node_modules/is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/glob-watcher/node_modules/is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", + "integrity": "sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q==", + "dev": true, + "dependencies": { + "binary-extensions": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/glob-watcher/node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/glob-watcher/node_modules/is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/glob-watcher/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/glob-watcher/node_modules/micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, + "dependencies": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/glob-watcher/node_modules/micromatch/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/glob-watcher/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/glob-watcher/node_modules/readdirp": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", + "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/glob-watcher/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==", + "dev": true + }, + "node_modules/glob-watcher/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/glob-watcher/node_modules/to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==", + "dev": true, + "dependencies": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/global-modules": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", @@ -8641,18 +9335,11 @@ } }, "node_modules/globals": { - "version": "13.17.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.17.0.tgz", - "integrity": "sha512-1C+6nQRb1GwGMKm2dH/E7enFAMxGTmGI7/dEdhy/DNelv85w9B72t3uc5frtMNXIbzrarJJ/lTCjcaZwbLJmyw==", - "dev": true, - "dependencies": { - "type-fest": "^0.20.2" - }, + "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": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=4" } }, "node_modules/globby": { @@ -8730,6 +9417,17 @@ "node": ">= 0.10" } }, + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "dependencies": { + "get-intrinsic": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/graceful-fs": { "version": "4.2.10", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", @@ -8875,16 +9573,6 @@ "xtend": "~4.0.1" } }, - "node_modules/gulp-bro/node_modules/buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.2.1.tgz", - "integrity": "sha512-c+Ko0loDaFfuPWiL02ls9Xd3GO3cPVmUobQ6t3rXNUk304u6hGq+8N/kFi+QEIKhzK3uwolVhLzszmfLmMLnqg==", - "dev": true, - "dependencies": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4" - } - }, "node_modules/gulp-bro/node_modules/concat-stream": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", @@ -8909,11 +9597,20 @@ "node": ">=0.4.x" } }, - "node_modules/gulp-bro/node_modules/inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", - "dev": true + "node_modules/gulp-bro/node_modules/fancy-log": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.3.tgz", + "integrity": "sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw==", + "dev": true, + "dependencies": { + "ansi-gray": "^0.1.1", + "color-support": "^1.1.3", + "parse-node-version": "^1.0.0", + "time-stamp": "^1.0.0" + }, + "engines": { + "node": ">= 0.10" + } }, "node_modules/gulp-bro/node_modules/path-browserify": { "version": "0.0.1", @@ -8921,10 +9618,10 @@ "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==", "dev": true }, - "node_modules/gulp-bro/node_modules/punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==", + "node_modules/gulp-bro/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==", "dev": true }, "node_modules/gulp-bro/node_modules/stream-browserify": { @@ -8961,6 +9658,16 @@ "safe-buffer": "~5.1.0" } }, + "node_modules/gulp-bro/node_modules/through2": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz", + "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==", + "dev": true, + "dependencies": { + "inherits": "^2.0.4", + "readable-stream": "2 || 3" + } + }, "node_modules/gulp-bro/node_modules/util": { "version": "0.10.4", "resolved": "https://registry.npmjs.org/util/-/util-0.10.4.tgz", @@ -8970,6 +9677,12 @@ "inherits": "2.0.3" } }, + "node_modules/gulp-bro/node_modules/util/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", + "dev": true + }, "node_modules/gulp-changed": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/gulp-changed/-/gulp-changed-4.0.3.tgz", @@ -8994,6 +9707,16 @@ } } }, + "node_modules/gulp-changed/node_modules/through2": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz", + "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==", + "dev": true, + "dependencies": { + "inherits": "^2.0.4", + "readable-stream": "2 || 3" + } + }, "node_modules/gulp-cli": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/gulp-cli/-/gulp-cli-2.3.0.tgz", @@ -9067,18 +9790,146 @@ "wrap-ansi": "^2.0.0" } }, + "node_modules/gulp-cli/node_modules/fancy-log": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.3.tgz", + "integrity": "sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw==", + "dev": true, + "dependencies": { + "ansi-gray": "^0.1.1", + "color-support": "^1.1.3", + "parse-node-version": "^1.0.0", + "time-stamp": "^1.0.0" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/gulp-cli/node_modules/find-up": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha512-jvElSjyuo4EMQGoTwo1uJU5pQMwTW5lS1x05zzfJuTIyLR3zwO27LYrxNg+dlvKpGOuGy/MzBdXh80g0ve5+HA==", + "dev": true, + "dependencies": { + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/gulp-cli/node_modules/get-caller-file": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", "dev": true }, - "node_modules/gulp-cli/node_modules/require-main-filename": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", - "integrity": "sha512-IqSUtOVP4ksd1C/ej5zeEh/BIP2ajqpn8c5x+q99gvcIG/Qf0cud5raVnE/Dwd0ua9TXYDoDc0RE5hBSdz22Ug==", + "node_modules/gulp-cli/node_modules/hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", "dev": true }, + "node_modules/gulp-cli/node_modules/is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==", + "dev": true, + "dependencies": { + "number-is-nan": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gulp-cli/node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "node_modules/gulp-cli/node_modules/path-exists": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha512-yTltuKuhtNeFJKa1PiRzfLAU5182q1y4Eb4XCJ3PBqyzEDkAZRzBrKKBct682ls9reBVHf9udYLN5Nd+K1B9BQ==", + "dev": true, + "dependencies": { + "pinkie-promise": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gulp-cli/node_modules/path-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha512-S4eENJz1pkiQn9Znv33Q+deTOKmbl+jj1Fl+qiP/vYezj+S8x+J3Uo0ISrx/QoEvIlOaDWJhPaRd1flJ9HXZqg==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gulp-cli/node_modules/read-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha512-7BGwRHqt4s/uVbuyoeejRn4YmFnYZiFl4AuaeXHlgZf3sONF0SOGlxs2Pw8g6hCKupo08RafIO5YXFNOKTfwsQ==", + "dev": true, + "dependencies": { + "load-json-file": "^1.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gulp-cli/node_modules/read-pkg-up": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", + "integrity": "sha512-WD9MTlNtI55IwYUS27iHh9tK3YoIVhxis8yKhLpTqWtml739uXc9NWTpxoHkfZf3+DkCCsXox94/VWZniuZm6A==", + "dev": true, + "dependencies": { + "find-up": "^1.0.0", + "read-pkg": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gulp-cli/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/gulp-cli/node_modules/string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==", + "dev": true, + "dependencies": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/gulp-cli/node_modules/strip-ansi": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", @@ -9091,12 +9942,6 @@ "node": ">=0.10.0" } }, - "node_modules/gulp-cli/node_modules/which-module": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", - "integrity": "sha512-F6+WgncZi/mJDrammbTuHe1q0R5hOXv/mBaiNA2TCNT/LTHusX0V+CJnj9XT8ki5ln2UZyyddDgHfCzyrOH7MQ==", - "dev": true - }, "node_modules/gulp-cli/node_modules/wrap-ansi": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", @@ -9148,34 +9993,34 @@ } }, "node_modules/gulp-eslint-new": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/gulp-eslint-new/-/gulp-eslint-new-1.5.1.tgz", - "integrity": "sha512-LMRfS7YAdY8oLSEhqHDzJgDubedl8KN/Fo8QOQnSM2adN7h/KCj+GkFS9S934VE+q3Q9uPvzYAKwXKXOiB2PnQ==", + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/gulp-eslint-new/-/gulp-eslint-new-1.7.1.tgz", + "integrity": "sha512-moP6Q/ecxm40ZyMFw9qoC6poqt3Y2C1HcoUDRH2+b9UJu0/3BnOciRDgerm1DH5oh0dSPlP0/uZ6dFEAkYdSOw==", "dev": true, "dependencies": { - "@types/eslint": "^8.4.3", - "@types/node": "^17.0.42", + "@types/eslint": "^8.4.10", + "@types/node": ">=12", "eslint": "8", "fancy-log": "^2.0.0", - "plugin-error": "^1.0.1", - "semver": "^7.3.7", + "plugin-error": "^2.0.0", + "semver": "^7.3.8", "ternary-stream": "^3.0.0", "vinyl-fs": "^3.0.3" }, "engines": { - "node": "12 >=12.20 || 14 >=14.13 || >=16" + "node": "^12.20 || ^14.13 || >=16" } }, "node_modules/gulp-eslint-new/node_modules/@eslint/eslintrc": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.3.1.tgz", - "integrity": "sha512-OhSY22oQQdw3zgPOOwdoj01l/Dzl1Z+xyUP33tkSN+aqyEhymJCcPHyXt+ylW8FSe0TfRC2VG+ROQOapD0aZSQ==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.4.0.tgz", + "integrity": "sha512-7yfvXy6MWLgWSFsLhz5yH3iQ52St8cdUY6FoGieKkRDVxuxmrNuUetIuu6cmjNWwniUHiWXjxCr5tTXDrbYS5A==", "dev": true, "dependencies": { "ajv": "^6.12.4", "debug": "^4.3.2", "espree": "^9.4.0", - "globals": "^13.15.0", + "globals": "^13.19.0", "ignore": "^5.2.0", "import-fresh": "^3.2.1", "js-yaml": "^4.1.0", @@ -9190,29 +10035,23 @@ } }, "node_modules/gulp-eslint-new/node_modules/@humanwhocodes/config-array": { - "version": "0.10.4", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.10.4.tgz", - "integrity": "sha512-mXAIHxZT3Vcpg83opl1wGlVZ9xydbfZO3r5YfRSH6Gpp2J/PfdBP0wbDa2sO6/qRbcalpoevVyW6A/fI6LfeMw==", + "version": "0.11.8", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", + "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==", "dev": true, "dependencies": { "@humanwhocodes/object-schema": "^1.2.1", "debug": "^4.1.1", - "minimatch": "^3.0.4" + "minimatch": "^3.0.5" }, "engines": { "node": ">=10.10.0" } }, - "node_modules/gulp-eslint-new/node_modules/@types/node": { - "version": "17.0.45", - "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.45.tgz", - "integrity": "sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==", - "dev": true - }, "node_modules/gulp-eslint-new/node_modules/acorn": { - "version": "8.8.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.0.tgz", - "integrity": "sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==", + "version": "8.8.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz", + "integrity": "sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==", "dev": true, "bin": { "acorn": "bin/acorn" @@ -9221,22 +10060,95 @@ "node": ">=0.4.0" } }, + "node_modules/gulp-eslint-new/node_modules/ansi-colors": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-1.1.0.tgz", + "integrity": "sha512-SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA==", + "dev": true, + "dependencies": { + "ansi-wrap": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gulp-eslint-new/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/gulp-eslint-new/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/gulp-eslint-new/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/gulp-eslint-new/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/gulp-eslint-new/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/gulp-eslint-new/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/gulp-eslint-new/node_modules/eslint": { - "version": "8.23.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.23.0.tgz", - "integrity": "sha512-pBG/XOn0MsJcKcTRLr27S5HpzQo4kLr+HjLQIyK4EiCsijDl/TB+h5uEuJU6bQ8Edvwz1XWOjpaP2qgnXGpTcA==", + "version": "8.30.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.30.0.tgz", + "integrity": "sha512-MGADB39QqYuzEGov+F/qb18r4i7DohCDOfatHaxI2iGlPuC65bwG2gxgO+7DkyL38dRFaRH7RaRAgU6JKL9rMQ==", "dev": true, "dependencies": { - "@eslint/eslintrc": "^1.3.1", - "@humanwhocodes/config-array": "^0.10.4", - "@humanwhocodes/gitignore-to-minimatch": "^1.0.2", + "@eslint/eslintrc": "^1.4.0", + "@humanwhocodes/config-array": "^0.11.8", "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", "ajv": "^6.10.0", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", @@ -9252,15 +10164,15 @@ "fast-deep-equal": "^3.1.3", "file-entry-cache": "^6.0.1", "find-up": "^5.0.0", - "functional-red-black-tree": "^1.0.1", - "glob-parent": "^6.0.1", - "globals": "^13.15.0", - "globby": "^11.1.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", "grapheme-splitter": "^1.0.4", "ignore": "^5.2.0", "import-fresh": "^3.0.0", "imurmurhash": "^0.1.4", "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-sdsl": "^4.1.4", "js-yaml": "^4.1.0", "json-stable-stringify-without-jsonify": "^1.0.1", "levn": "^0.4.1", @@ -9306,9 +10218,9 @@ } }, "node_modules/gulp-eslint-new/node_modules/espree": { - "version": "9.4.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.0.tgz", - "integrity": "sha512-DQmnRpLj7f6TgN/NYb0MTzJXL+vJF9h3pHy4JhCIs3zwcgez8xmGg3sXHcEO97BrmO2OSvCwMdfdlyl+E9KjOw==", + "version": "9.4.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.1.tgz", + "integrity": "sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==", "dev": true, "dependencies": { "acorn": "^8.8.0", @@ -9322,16 +10234,13 @@ "url": "https://opencollective.com/eslint" } }, - "node_modules/gulp-eslint-new/node_modules/fancy-log": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-2.0.0.tgz", - "integrity": "sha512-9CzxZbACXMUXW13tS0tI8XsGGmxWzO2DmYrGuBJOJ8k8q2K7hwfJA5qHjuPPe8wtsco33YR9wc+Rlr5wYFvhSA==", + "node_modules/gulp-eslint-new/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, - "dependencies": { - "color-support": "^1.1.3" - }, "engines": { - "node": ">=10.13.0" + "node": ">=4.0" } }, "node_modules/gulp-eslint-new/node_modules/find-up": { @@ -9362,6 +10271,30 @@ "node": ">=10.13.0" } }, + "node_modules/gulp-eslint-new/node_modules/globals": { + "version": "13.19.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.19.0.tgz", + "integrity": "sha512-dkQ957uSRWHw7CFXLUtUHQI3g3aWApYhfNR2O6jn/907riyTYKVBmxYVROkBcY614FSSeSJh7Xm7SrUWCxvJMQ==", + "dev": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/gulp-eslint-new/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/gulp-eslint-new/node_modules/js-yaml": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", @@ -9389,6 +10322,18 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/gulp-eslint-new/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/gulp-eslint-new/node_modules/p-limit": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", @@ -9419,15 +10364,90 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/gulp-eslint-new/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==", + "node_modules/gulp-eslint-new/node_modules/plugin-error": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-2.0.1.tgz", + "integrity": "sha512-zMakqvIDyY40xHOvzXka0kUvf40nYIuwRE8dWhti2WtjQZ31xAgBZBhxsK7vK3QbRXS1Xms/LO7B5cuAsfB2Gg==", + "dev": true, + "dependencies": { + "ansi-colors": "^1.0.1" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/gulp-eslint-new/node_modules/semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/gulp-eslint-new/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/gulp-eslint-new/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/gulp-eslint-new/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/gulp-eslint7": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/gulp-eslint7/-/gulp-eslint7-0.3.2.tgz", + "integrity": "sha512-zDb/sz8sXmP2jv6BTM9mH1DhoOX7nq5Q3ESHelqw+Fqd7lbU0GoOUVte3NvpqP+oWaGn2+t0AKEs0kXEQRMUIw==", + "deprecated": "\"gulp-eslint7\" has been renamed. Switch to \"gulp-eslint-new\" for the latest updates, including support for ESLint 8.", + "dev": true, + "dependencies": { + "eslint": "^7.32.0", + "fancy-log": "^1.3.3", + "plugin-error": "^1.0.1" + } + }, + "node_modules/gulp-eslint7/node_modules/fancy-log": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.3.tgz", + "integrity": "sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw==", + "dev": true, + "dependencies": { + "ansi-gray": "^0.1.1", + "color-support": "^1.1.3", + "parse-node-version": "^1.0.0", + "time-stamp": "^1.0.0" + }, + "engines": { + "node": ">= 0.10" + } + }, "node_modules/gulp-git": { "version": "2.10.1", "resolved": "https://registry.npmjs.org/gulp-git/-/gulp-git-2.10.1.tgz", @@ -9447,6 +10467,21 @@ "node": ">= 0.9.0" } }, + "node_modules/gulp-git/node_modules/fancy-log": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.3.tgz", + "integrity": "sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw==", + "dev": true, + "dependencies": { + "ansi-gray": "^0.1.1", + "color-support": "^1.1.3", + "parse-node-version": "^1.0.0", + "time-stamp": "^1.0.0" + }, + "engines": { + "node": ">= 0.10" + } + }, "node_modules/gulp-git/node_modules/readable-stream": { "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", @@ -9462,6 +10497,12 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/gulp-git/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==", + "dev": true + }, "node_modules/gulp-git/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -9481,6 +10522,27 @@ "xtend": "~4.0.1" } }, + "node_modules/gulp-if": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/gulp-if/-/gulp-if-3.0.0.tgz", + "integrity": "sha512-fCUEngzNiEZEK2YuPm+sdMpO6ukb8+/qzbGfJBXyNOXz85bCG7yBI+pPSl+N90d7gnLvMsarthsAImx0qy7BAw==", + "dev": true, + "dependencies": { + "gulp-match": "^1.1.0", + "ternary-stream": "^3.0.0", + "through2": "^3.0.1" + } + }, + "node_modules/gulp-if/node_modules/through2": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz", + "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==", + "dev": true, + "dependencies": { + "inherits": "^2.0.4", + "readable-stream": "2 || 3" + } + }, "node_modules/gulp-jest": { "version": "4.0.4", "resolved": "https://registry.npmjs.org/gulp-jest/-/gulp-jest-4.0.4.tgz", @@ -9493,6 +10555,15 @@ "jest": ">=25.1.0" } }, + "node_modules/gulp-jest/node_modules/through2": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz", + "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==", + "dependencies": { + "inherits": "^2.0.4", + "readable-stream": "2 || 3" + } + }, "node_modules/gulp-less": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/gulp-less/-/gulp-less-5.0.0.tgz", @@ -9519,13 +10590,13 @@ "node": ">= 10" } }, - "node_modules/gulp-less/node_modules/through2": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz", - "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==", + "node_modules/gulp-match": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/gulp-match/-/gulp-match-1.1.0.tgz", + "integrity": "sha512-DlyVxa1Gj24DitY2OjEsS+X6tDpretuxD6wTfhXE/Rw2hweqc1f6D/XtsJmoiCwLWfXgR87W9ozEityPCVzGtQ==", "dev": true, "dependencies": { - "readable-stream": "3" + "minimatch": "^3.0.3" } }, "node_modules/gulp-rename": { @@ -9538,12 +10609,12 @@ } }, "node_modules/gulp-replace": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/gulp-replace/-/gulp-replace-1.1.3.tgz", - "integrity": "sha512-HcPHpWY4XdF8zxYkDODHnG2+7a3nD/Y8Mfu3aBgMiCFDW3X2GiOKXllsAmILcxe3KZT2BXoN18WrpEFm48KfLQ==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/gulp-replace/-/gulp-replace-1.1.4.tgz", + "integrity": "sha512-SVSF7ikuWKhpAW4l4wapAqPPSToJoiNKsbDoUnRrSgwZHH7lH8pbPeQj1aOVYQrbZKhfSVBxVW+Py7vtulRktw==", "dev": true, "dependencies": { - "@types/node": "^14.14.41", + "@types/node": "*", "@types/vinyl": "^2.0.4", "istextorbinary": "^3.0.0", "replacestream": "^4.0.3", @@ -9553,12 +10624,6 @@ "node": ">=10" } }, - "node_modules/gulp-replace/node_modules/@types/node": { - "version": "14.18.22", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.22.tgz", - "integrity": "sha512-qzaYbXVzin6EPjghf/hTdIbnVW1ErMx8rPzwRNJhlbyJhu2SyqlvjGOY/tbUt6VFyzg56lROcOeSQRInpt63Yw==", - "dev": true - }, "node_modules/gulp-sass": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/gulp-sass/-/gulp-sass-5.1.0.tgz", @@ -9634,6 +10699,12 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/gulp-sourcemaps/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==", + "dev": true + }, "node_modules/gulp-sourcemaps/node_modules/source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -9682,6 +10753,25 @@ "typescript": "~2.7.1 || >=2.8.0-dev || >=2.9.0-dev || ~3.0.0 || >=3.0.0-dev || >=3.1.0-dev || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.7.0-dev " } }, + "node_modules/gulp-typescript/node_modules/source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/gulp-typescript/node_modules/through2": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz", + "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==", + "dev": true, + "dependencies": { + "inherits": "^2.0.4", + "readable-stream": "2 || 3" + } + }, "node_modules/gulp-uglify": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/gulp-uglify/-/gulp-uglify-3.0.2.tgz", @@ -9700,43 +10790,6 @@ "vinyl-sourcemaps-apply": "^0.2.0" } }, - "node_modules/gulp-uglify/node_modules/extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", - "dev": true, - "dependencies": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/gulp-uglify/node_modules/is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "dependencies": { - "is-plain-object": "^2.0.4" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/gulp-uglify/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/gulp-uglify/node_modules/readable-stream": { "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", @@ -9752,6 +10805,12 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/gulp-uglify/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==", + "dev": true + }, "node_modules/gulp-uglify/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -9772,9 +10831,9 @@ } }, "node_modules/gulp-uglify/node_modules/uglify-js": { - "version": "3.17.0", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.17.0.tgz", - "integrity": "sha512-aTeNPVmgIMPpm1cxXr2Q/nEbvkmV8yq66F3om7X3P/cvOXQ0TMQ64Wk63iyT1gPlmdmGzjGpyLh1f3y8MZWXGg==", + "version": "3.17.4", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.17.4.tgz", + "integrity": "sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==", "dev": true, "bin": { "uglifyjs": "bin/uglifyjs" @@ -9826,9 +10885,9 @@ } }, "node_modules/handlebars/node_modules/uglify-js": { - "version": "3.16.2", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.16.2.tgz", - "integrity": "sha512-AaQNokTNgExWrkEYA24BTNMSjyqEXPSfhqoS0AxmHkCJ4U+Dyy5AvbGV/sqxuxficEfGGoX3zWw9R7QpLFfEsg==", + "version": "3.17.4", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.17.4.tgz", + "integrity": "sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==", "dev": true, "optional": true, "bin": { @@ -9878,14 +10937,6 @@ "node": ">= 0.4.0" } }, - "node_modules/has-bigints": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", - "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/has-cors": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/has-cors/-/has-cors-1.1.0.tgz", @@ -9893,11 +10944,11 @@ "dev": true }, "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==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", "engines": { - "node": ">=8" + "node": ">=4" } }, "node_modules/has-gulplog": { @@ -9916,6 +10967,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "dev": true, "dependencies": { "get-intrinsic": "^1.1.1" }, @@ -9980,6 +11032,30 @@ "node": ">=0.10.0" } }, + "node_modules/has-values/node_modules/is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-values/node_modules/is-number/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/has-values/node_modules/kind-of": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", @@ -10005,25 +11081,6 @@ "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", @@ -10056,10 +11113,31 @@ } }, "node_modules/hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "dev": true + "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==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/hosted-git-info/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==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/hosted-git-info/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "node_modules/html-encoding-sniffer": { "version": "2.0.1", @@ -10151,11 +11229,12 @@ } }, "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==", + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "optional": true, "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" + "safer-buffer": ">= 2.1.2 < 3.0.0" }, "engines": { "node": ">=0.10.0" @@ -10181,9 +11260,9 @@ ] }, "node_modules/ignore": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", - "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", + "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", "dev": true, "engines": { "node": ">= 4" @@ -10202,10 +11281,16 @@ "node": ">=0.10.0" } }, + "node_modules/immediate": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", + "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==", + "dev": true + }, "node_modules/immutable": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.1.0.tgz", - "integrity": "sha512-oNkuqVTA8jqG1Q6c+UglTOD1xhC1BtjKI7XkCXRkZHrN5m18/XsnUp8Q89GkQO/z+0WjonSvl0FLhDYftp46nQ==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.2.1.tgz", + "integrity": "sha512-7WYV7Q5BTs0nlQm7tl92rDYYoyELLKHoDMBKhrxEoiV4mrfVdRz8hzPiYOzH7yWjzoVEamxRuAqhxL2PLRwZYQ==", "dev": true }, "node_modules/import-fresh": { @@ -10302,14 +11387,6 @@ "source-map": "~0.5.3" } }, - "node_modules/inline-source-map/node_modules/source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/insert-module-globals": { "version": "7.2.1", "resolved": "https://registry.npmjs.org/insert-module-globals/-/insert-module-globals-7.2.1.tgz", @@ -10344,6 +11421,11 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/insert-module-globals/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/insert-module-globals/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -10361,19 +11443,6 @@ "xtend": "~4.0.1" } }, - "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/interpret": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", @@ -10411,25 +11480,22 @@ } }, "node_modules/is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "dev": true, "dependencies": { - "kind-of": "^3.0.2" + "kind-of": "^6.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/is-accessor-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "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, - "dependencies": { - "is-buffer": "^1.1.5" - }, "engines": { "node": ">=0.10.0" } @@ -10454,53 +11520,42 @@ "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" }, - "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": "1.0.1", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "integrity": "sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q==", + "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": "^1.0.0" + "binary-extensions": "^2.0.0" }, "engines": { - "node": ">=0.10.0" + "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==", + "node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "node_modules/is-builtin-module": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.0.tgz", + "integrity": "sha512-phDA4oSGt7vl1n5tJvTWooWWAsXLY+2xCnxNqvKhGEzujg+A43wPlPOyDg3C8XQHN+6k/JTQWJ/j0dQh/qr+Hw==", + "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "builtin-modules": "^3.3.0" }, "engines": { - "node": ">= 0.4" + "node": ">=6" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" - }, "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==", + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", "engines": { "node": ">= 0.4" }, @@ -10509,9 +11564,9 @@ } }, "node_modules/is-core-module": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz", - "integrity": "sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", + "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", "dependencies": { "has": "^1.0.3" }, @@ -10520,62 +11575,67 @@ } }, "node_modules/is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "dev": true, "dependencies": { - "kind-of": "^3.0.2" + "kind-of": "^6.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/is-data-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "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, - "dependencies": { - "is-buffer": "^1.1.5" - }, "engines": { "node": ">=0.10.0" } }, - "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==", + "node_modules/is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, "dependencies": { - "has-tostringtag": "^1.0.0" + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=0.10.0" } }, - "node_modules/is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "node_modules/is-descriptor/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/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", "dependencies": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" + "is-plain-object": "^2.0.4" }, "engines": { "node": ">=0.10.0" } }, - "node_modules/is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", - "dev": true, + "node_modules/is-extendable/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==", + "dependencies": { + "isobject": "^3.0.1" + }, "engines": { "node": ">=0.10.0" } @@ -10590,14 +11650,11 @@ } }, "node_modules/is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==", - "dependencies": { - "number-is-nan": "^1.0.0" - }, + "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==", "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, "node_modules/is-generator-fn": { @@ -10639,6 +11696,12 @@ "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==" }, + "node_modules/is-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", + "integrity": "sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==", + "dev": true + }, "node_modules/is-negated-glob": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-negated-glob/-/is-negated-glob-1.0.0.tgz", @@ -10648,53 +11711,21 @@ "node": ">=0.10.0" } }, - "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": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", - "dev": true, - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-number-object": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", - "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", - "dependencies": { - "has-tostringtag": "^1.0.0" - }, + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=0.12.0" } }, - "node_modules/is-number/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "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, - "dependencies": { - "is-buffer": "^1.1.5" - }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, "node_modules/is-plain-obj": { @@ -10725,21 +11756,6 @@ "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==", "dev": true }, - "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-relative": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz", @@ -10752,17 +11768,6 @@ "node": ">=0.10.0" } }, - "node_modules/is-shared-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", - "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", - "dependencies": { - "call-bind": "^1.0.2" - }, - "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", @@ -10774,43 +11779,15 @@ "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.9", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.9.tgz", - "integrity": "sha512-kfrlnTTn8pZkfpJMUgYD7YZ3qzeJgWUn8XfVYBARc4wnmNOmLbmuuaAs3q5fvB0UJOn6yHAKaGTPM7d6ezoD/A==", + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.10.tgz", + "integrity": "sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==", "dependencies": { "available-typed-arrays": "^1.0.5", "call-bind": "^1.0.2", - "es-abstract": "^1.20.0", "for-each": "^0.3.3", + "gopd": "^1.0.1", "has-tostringtag": "^1.0.0" }, "engines": { @@ -10851,17 +11828,6 @@ "node": ">=0.10.0" } }, - "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", @@ -10915,9 +11881,9 @@ } }, "node_modules/istanbul-lib-instrument": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.0.tgz", - "integrity": "sha512-6Lthe1hqXHBNsqvgDzGO6l03XNeu3CrG4RqQ1KM9+l5+jNGpEJfIELx1NS3SEHmJQA8np/u+E4EPRKRiu6m19A==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", "dependencies": { "@babel/core": "^7.12.3", "@babel/parser": "^7.14.7", @@ -10929,14 +11895,6 @@ "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==", - "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", @@ -10950,6 +11908,25 @@ "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==", + "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==", + "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", @@ -11065,6 +12042,70 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, + "node_modules/jest-circus/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==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-circus/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "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/jest-circus/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==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-circus/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==" + }, + "node_modules/jest-circus/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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/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==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/jest-cli": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-27.5.1.tgz", @@ -11098,27 +12139,75 @@ } } }, - "node_modules/jest-cli/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==" + "node_modules/jest-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==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } }, - "node_modules/jest-cli/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==", + "node_modules/jest-cli/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "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/jest-cli/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==", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/jest-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==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-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==" + }, + "node_modules/jest-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==", "engines": { "node": ">=8" } }, - "node_modules/jest-cli/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==", + "node_modules/jest-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==", "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" + "has-flag": "^4.0.0" }, "engines": { "node": ">=8" @@ -11191,21 +12280,68 @@ } } }, - "node_modules/jest-config/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==", + "node_modules/jest-config/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==", "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" + "color-convert": "^2.0.1" }, "engines": { "node": ">=8" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-config/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "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/jest-config/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==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-config/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==" + }, + "node_modules/jest-config/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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-config/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==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, "node_modules/jest-diff": { @@ -11222,6 +12358,70 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, + "node_modules/jest-diff/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==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-diff/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "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/jest-diff/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==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-diff/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==" + }, + "node_modules/jest-diff/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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-diff/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==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/jest-docblock": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.5.1.tgz", @@ -11256,6 +12456,70 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, + "node_modules/jest-each/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==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-each/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "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/jest-each/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==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-each/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==" + }, + "node_modules/jest-each/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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-each/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==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/jest-environment-jsdom": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz", @@ -11322,31 +12586,6 @@ "fsevents": "^2.3.2" } }, - "node_modules/jest-haste-map/node_modules/anymatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", - "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/jest-haste-map/node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, "node_modules/jest-jasmine2": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz", @@ -11374,6 +12613,70 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, + "node_modules/jest-jasmine2/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==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-jasmine2/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "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/jest-jasmine2/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==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-jasmine2/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==" + }, + "node_modules/jest-jasmine2/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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-jasmine2/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==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/jest-leak-detector": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz", @@ -11400,6 +12703,70 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, + "node_modules/jest-matcher-utils/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==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-matcher-utils/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "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/jest-matcher-utils/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==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-matcher-utils/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==" + }, + "node_modules/jest-matcher-utils/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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-matcher-utils/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==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/jest-message-util": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", @@ -11416,18 +12783,71 @@ "stack-utils": "^2.0.3" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-message-util/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==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-message-util/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "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/jest-message-util/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==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, - "node_modules/jest-message-util/node_modules/@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "node_modules/jest-message-util/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==" + }, + "node_modules/jest-message-util/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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-message-util/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==", "dependencies": { - "@babel/highlight": "^7.18.6" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=6.9.0" + "node": ">=8" } }, "node_modules/jest-mock": { @@ -11443,9 +12863,9 @@ } }, "node_modules/jest-pnp-resolver": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz", - "integrity": "sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", "engines": { "node": ">=6" }, @@ -11499,6 +12919,70 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, + "node_modules/jest-resolve/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==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-resolve/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "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/jest-resolve/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==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-resolve/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==" + }, + "node_modules/jest-resolve/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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-resolve/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==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/jest-runner": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-27.5.1.tgz", @@ -11530,6 +13014,70 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, + "node_modules/jest-runner/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==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-runner/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "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/jest-runner/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==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-runner/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==" + }, + "node_modules/jest-runner/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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runner/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==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/jest-runtime": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.5.1.tgz", @@ -11562,10 +13110,66 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-runtime/node_modules/strip-bom": { + "node_modules/jest-runtime/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==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-runtime/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "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/jest-runtime/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==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-runtime/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==" + }, + "node_modules/jest-runtime/node_modules/has-flag": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", - "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runtime/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==", + "dependencies": { + "has-flag": "^4.0.0" + }, "engines": { "node": ">=8" } @@ -11614,6 +13218,100 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, + "node_modules/jest-snapshot/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==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-snapshot/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "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/jest-snapshot/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==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-snapshot/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==" + }, + "node_modules/jest-snapshot/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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-snapshot/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==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-snapshot/node_modules/semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-snapshot/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==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-snapshot/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "node_modules/jest-util": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", @@ -11630,6 +13328,70 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, + "node_modules/jest-util/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==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-util/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "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/jest-util/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==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-util/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==" + }, + "node_modules/jest-util/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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-util/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==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/jest-validate": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-27.5.1.tgz", @@ -11646,6 +13408,20 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, + "node_modules/jest-validate/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==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, "node_modules/jest-validate/node_modules/camelcase": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", @@ -11657,6 +13433,56 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/jest-validate/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "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/jest-validate/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==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-validate/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==" + }, + "node_modules/jest-validate/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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-validate/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==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/jest-watcher": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-27.5.1.tgz", @@ -11674,6 +13500,70 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, + "node_modules/jest-watcher/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==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-watcher/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "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/jest-watcher/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==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-watcher/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==" + }, + "node_modules/jest-watcher/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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-watcher/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==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/jest-worker": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", @@ -11687,6 +13577,14 @@ "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==", + "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", @@ -11706,6 +13604,16 @@ "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.6.4.tgz", "integrity": "sha512-pZe//GGmwJndub7ZghVHz7vjb2LgC1m8B07Au3eYqeqv9emhESByMXxaEgkUkEqJe87oBbSniGYoQNIBklc7IQ==" }, + "node_modules/js-sdsl": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.2.0.tgz", + "integrity": "sha512-dyBIzQBDkCqCu+0upx25Y2jGdbTGxE9fshMsCdK0ViOongpV+n5tXRcZY9v7CaVQ79AGS9KA1KHtojxiM7aXSQ==", + "dev": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/js-sdsl" + } + }, "node_modules/js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", @@ -11728,6 +13636,15 @@ "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==" }, + "node_modules/jsdoc-type-pratt-parser": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-3.1.0.tgz", + "integrity": "sha512-MgtD0ZiCDk9B+eI73BextfRrVQl0oyzRG8B2BjORts6jbunj4ScKPcyXGTbB6eXL4y9TzxCm6hyeLq/2ASzNdw==", + "dev": true, + "engines": { + "node": ">=12.0.0" + } + }, "node_modules/jsdom": { "version": "16.7.0", "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", @@ -11774,9 +13691,9 @@ } }, "node_modules/jsdom/node_modules/acorn": { - "version": "8.8.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.0.tgz", - "integrity": "sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==", + "version": "8.8.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz", + "integrity": "sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==", "bin": { "acorn": "bin/acorn" }, @@ -11784,26 +13701,6 @@ "node": ">=0.4.0" } }, - "node_modules/jsdom/node_modules/ws": { - "version": "7.5.9", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", - "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", - "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/jsesc": { "version": "2.5.2", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", @@ -11867,13 +13764,24 @@ "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==" }, + "node_modules/json5": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.2.tgz", + "integrity": "sha512-46Tk9JiOL2z7ytNQWFLpj99RZkVgeHf87yGQKsIkaPz1qSH9UczKH1rO7K3wgRselo0tYMUNfecYpm/p1vC7tQ==", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/jsonify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", - "integrity": "sha512-trvBk1ki43VZptdBI5rIlG4YOzyeH/WefQt5rj1grasPn4iiZWKet8nkgc4GlsAylaztn0qZfUYOiTsASJFdNA==", + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.1.tgz", + "integrity": "sha512-2/Ki0GcmuqSrgFyelQq9M05y7PS0mEwuIzrf3f1fPqkVDVRvZrPZtVSMHxdgo8Aq0sxAOb/cr2aqqA3LeWHVPg==", "dev": true, - "engines": { - "node": "*" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/jsonparse": { @@ -12012,6 +13920,12 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/lazystream/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==", + "dev": true + }, "node_modules/lazystream/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -12046,13 +13960,14 @@ } }, "node_modules/less": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/less/-/less-3.13.1.tgz", - "integrity": "sha512-SwA1aQXGUvp+P5XdZslUOhhLnClSLIjWvJhmd+Vgib5BFIr9lMNlQwmwUNOjXThF/A0x+MCYYPeWEfeWiLRnTw==", + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/less/-/less-4.1.3.tgz", + "integrity": "sha512-w16Xk/Ta9Hhyei0Gpz9m7VS8F28nieJaL/VyShID7cYvP6IL5oHeL6p4TXSDJqZE/lNv0oJ2pGVjJsRkfwm5FA==", "dev": true, "dependencies": { "copy-anything": "^2.0.1", - "tslib": "^1.10.0" + "parse-node-version": "^1.0.1", + "tslib": "^2.3.0" }, "bin": { "lessc": "bin/lessc" @@ -12066,7 +13981,7 @@ "image-size": "~0.5.0", "make-dir": "^2.1.0", "mime": "^1.4.1", - "native-request": "^1.0.5", + "needle": "^3.1.0", "source-map": "~0.6.0" } }, @@ -12135,6 +14050,15 @@ "node": ">= 0.8.0" } }, + "node_modules/lie": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/lie/-/lie-3.1.1.tgz", + "integrity": "sha512-RiNhHysUjhrDQntfYSfY4MU24coXXdEOgw9WGcKHNeEwffDYbF//u87M1EWaMGzuFoSbqW0C9C6lEEhDOAswfw==", + "dev": true, + "dependencies": { + "immediate": "~3.0.5" + } + }, "node_modules/liftoff": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/liftoff/-/liftoff-3.1.0.tgz", @@ -12187,6 +14111,50 @@ "node": ">=0.10.0" } }, + "node_modules/load-json-file/node_modules/parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha512-QR/GGaKCkhwk1ePQNYDRKYZ3mwU9ypsKhB0XyFnLQdomyEqk3e8wpW3V5Jp88zbxK4n5ST1nqo+g9juTpownhQ==", + "dev": true, + "dependencies": { + "error-ex": "^1.2.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/load-json-file/node_modules/strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha512-kwrX1y7czp1E69n2ajbG65mIo9dqvJ+8aBQXOGVxqwvNbsXdFM6Lq37dLAY3mknUwru8CfcCbfOLL/gMo+fi3g==", + "dev": true, + "dependencies": { + "is-utf8": "^0.2.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/localforage": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/localforage/-/localforage-1.10.0.tgz", + "integrity": "sha512-14/H1aX7hzBBmmh7sGPd+AOMkkIrHM3Z1PAyGgZigA1H1p5O5ANnMyWzvpAETtG68/dC4pC0ncy3+PPGzXZHPg==", + "dev": true, + "dependencies": { + "lie": "3.1.1" + } + }, + "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==", + "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", @@ -12283,14 +14251,11 @@ } }, "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==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" + "yallist": "^3.0.2" } }, "node_modules/lru-queue": { @@ -12316,14 +14281,6 @@ "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==", - "bin": { - "semver": "bin/semver.js" - } - }, "node_modules/make-error": { "version": "1.3.6", "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", @@ -12365,6 +14322,22 @@ "node": ">= 10" } }, + "node_modules/make-fetch-happen/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==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/make-fetch-happen/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "node_modules/make-iterator": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/make-iterator/-/make-iterator-1.0.1.tgz", @@ -12441,93 +14414,86 @@ "node": ">= 0.10.0" } }, - "node_modules/matchdep/node_modules/define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "node_modules/matchdep/node_modules/braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", "dev": true, "dependencies": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" }, "engines": { "node": ">=0.10.0" } }, - "node_modules/matchdep/node_modules/extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", + "node_modules/matchdep/node_modules/braces/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", "dev": true, "dependencies": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" + "is-extendable": "^0.1.0" }, "engines": { "node": ">=0.10.0" } }, - "node_modules/matchdep/node_modules/findup-sync": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-2.0.0.tgz", - "integrity": "sha512-vs+3unmJT45eczmcAZ6zMJtxN3l/QXeccaXQx5cu/MeJMhewVfoWZqibRkOxPnmoR59+Zy5hjabfQc6JLSah4g==", - "dev": true, - "dependencies": { - "detect-file": "^1.0.0", - "is-glob": "^3.1.0", - "micromatch": "^3.0.4", - "resolve-dir": "^1.0.1" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/matchdep/node_modules/is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "node_modules/matchdep/node_modules/fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==", "dev": true, "dependencies": { - "kind-of": "^6.0.0" + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" }, "engines": { "node": ">=0.10.0" } }, - "node_modules/matchdep/node_modules/is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "node_modules/matchdep/node_modules/fill-range/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", "dev": true, "dependencies": { - "kind-of": "^6.0.0" + "is-extendable": "^0.1.0" }, "engines": { "node": ">=0.10.0" } }, - "node_modules/matchdep/node_modules/is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "node_modules/matchdep/node_modules/findup-sync": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-2.0.0.tgz", + "integrity": "sha512-vs+3unmJT45eczmcAZ6zMJtxN3l/QXeccaXQx5cu/MeJMhewVfoWZqibRkOxPnmoR59+Zy5hjabfQc6JLSah4g==", "dev": true, "dependencies": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" + "detect-file": "^1.0.0", + "is-glob": "^3.1.0", + "micromatch": "^3.0.4", + "resolve-dir": "^1.0.1" }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.10" } }, "node_modules/matchdep/node_modules/is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", "dev": true, - "dependencies": { - "is-plain-object": "^2.0.4" - }, "engines": { "node": ">=0.10.0" } @@ -12544,13 +14510,25 @@ "node": ">=0.10.0" } }, - "node_modules/matchdep/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==", + "node_modules/matchdep/node_modules/is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", "dev": true, "dependencies": { - "isobject": "^3.0.1" + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/matchdep/node_modules/is-number/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" }, "engines": { "node": ">=0.10.0" @@ -12589,6 +14567,19 @@ "node": ">=0.10.0" } }, + "node_modules/matchdep/node_modules/to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==", + "dev": true, + "dependencies": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/md5.js": { "version": "1.3.5", "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", @@ -12640,182 +14631,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/meow/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==", - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/meow/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==", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/meow/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==", - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/meow/node_modules/normalize-package-data": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", - "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", - "dependencies": { - "hosted-git-info": "^4.0.1", - "is-core-module": "^2.5.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/meow/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/meow/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==", - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/meow/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/meow/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==", - "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/meow/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==", - "engines": { - "node": ">=8" - } - }, - "node_modules/meow/node_modules/read-pkg": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", - "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", - "dependencies": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^2.5.0", - "parse-json": "^5.0.0", - "type-fest": "^0.6.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/meow/node_modules/read-pkg-up": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", - "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", - "dependencies": { - "find-up": "^4.1.0", - "read-pkg": "^5.2.0", - "type-fest": "^0.8.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/meow/node_modules/read-pkg-up/node_modules/type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", - "engines": { - "node": ">=8" - } - }, - "node_modules/meow/node_modules/read-pkg/node_modules/hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==" - }, - "node_modules/meow/node_modules/read-pkg/node_modules/normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "dependencies": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "node_modules/meow/node_modules/read-pkg/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/meow/node_modules/read-pkg/node_modules/type-fest": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", - "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", - "engines": { - "node": ">=8" - } - }, "node_modules/meow/node_modules/type-fest": { "version": "0.18.1", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz", @@ -12861,47 +14676,6 @@ "node": ">=8.6" } }, - "node_modules/micromatch/node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/micromatch/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==", - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/micromatch/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==", - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/micromatch/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==", - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, "node_modules/miller-rabin": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", @@ -12995,9 +14769,12 @@ } }, "node_modules/minimist": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", + "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/minimist-options": { "version": "4.1.0", @@ -13021,9 +14798,9 @@ } }, "node_modules/minipass": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.4.tgz", - "integrity": "sha512-I9WPbWHCGu8W+6k1ZiGpPu0GkoKBeorkfKNuAFBNS1HNFJvke82sxvI5bzcCNpWPorkOO5QQ+zomzzwRxejXiw==", + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "dependencies": { "yallist": "^4.0.0" }, @@ -13091,6 +14868,11 @@ "node": ">=8" } }, + "node_modules/minipass/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "node_modules/minizlib": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", @@ -13103,6 +14885,11 @@ "node": ">= 8" } }, + "node_modules/minizlib/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "node_modules/mixin-deep": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", @@ -13116,28 +14903,16 @@ "node": ">=0.10.0" } }, - "node_modules/mixin-deep/node_modules/is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "dependencies": { - "is-plain-object": "^2.0.4" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/mixin-deep/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==", + "node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", "dev": true, "dependencies": { - "isobject": "^3.0.1" + "minimist": "^1.2.6" }, - "engines": { - "node": ">=0.10.0" + "bin": { + "mkdirp": "bin/cmd.js" } }, "node_modules/mkdirp-classic": { @@ -13187,6 +14962,11 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/module-deps/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/module-deps/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -13227,9 +15007,9 @@ } }, "node_modules/nan": { - "version": "2.16.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.16.0.tgz", - "integrity": "sha512-UdAqHyFngu7TfQKsCBgAA6pWDkT8MAO7d0jyOecVhN5354xbLqdn8mV9Tat9gepAupm0bt2DbeaSC8vS52MuFA==" + "version": "2.17.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.17.0.tgz", + "integrity": "sha512-2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ==" }, "node_modules/nanomatch": { "version": "1.2.13", @@ -13253,115 +15033,67 @@ "node": ">=0.10.0" } }, - "node_modules/nanomatch/node_modules/define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "node_modules/nanomatch/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, - "dependencies": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - }, "engines": { "node": ">=0.10.0" } }, - "node_modules/nanomatch/node_modules/extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", - "dev": true, - "dependencies": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==" }, - "node_modules/nanomatch/node_modules/is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "node_modules/nedb": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/nedb/-/nedb-1.8.0.tgz", + "integrity": "sha512-ip7BJdyb5m+86ZbSb4y10FCCW9g35+U8bDRrZlAfCI6m4dKwEsQ5M52grcDcVK4Vm/vnPlDLywkyo3GliEkb5A==", "dev": true, "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" + "async": "0.2.10", + "binary-search-tree": "0.2.5", + "localforage": "^1.3.0", + "mkdirp": "~0.5.1", + "underscore": "~1.4.4" } }, - "node_modules/nanomatch/node_modules/is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } + "node_modules/nedb/node_modules/async": { + "version": "0.2.10", + "resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz", + "integrity": "sha512-eAkdoKxU6/LkKDBzLpT+t6Ff5EtfSF4wx1WfJiPEEV7WNLnDaRXk0oVysiEPm262roaachGexwUv94WhSgN5TQ==", + "dev": true }, - "node_modules/nanomatch/node_modules/is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "node_modules/needle": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/needle/-/needle-3.2.0.tgz", + "integrity": "sha512-oUvzXnyLiVyVGoianLijF9O/RecZUf7TkBfimjGrLM4eQhXyeJwM6GeAWccwfQ9aa4gMCZKqhAOuLaMIcQxajQ==", "dev": true, + "optional": true, "dependencies": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" + "debug": "^3.2.6", + "iconv-lite": "^0.6.3", + "sax": "^1.2.4" }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/nanomatch/node_modules/is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "dependencies": { - "is-plain-object": "^2.0.4" + "bin": { + "needle": "bin/needle" }, "engines": { - "node": ">=0.10.0" + "node": ">= 4.4.x" } }, - "node_modules/nanomatch/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==", + "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": { - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/nanomatch/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" + "ms": "^2.1.1" } }, - "node_modules/native-request": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/native-request/-/native-request-1.1.0.tgz", - "integrity": "sha512-uZ5rQaeRn15XmpgE0xoPL8YWqcX90VtCFglYwAgkvKM5e8fog+vePLAhHxuuv/gRkrQxIeh5U3q9sMNUrENqWw==", - "dev": true, - "optional": true - }, - "node_modules/natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==" - }, "node_modules/negotiator": { "version": "0.6.3", "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", @@ -13417,11 +15149,6 @@ "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/node-gyp/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==" - }, "node_modules/node-gyp/node_modules/gauge": { "version": "4.0.4", "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", @@ -13440,12 +15167,15 @@ "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/node-gyp/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==", + "node_modules/node-gyp/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==", + "dependencies": { + "yallist": "^4.0.0" + }, "engines": { - "node": ">=8" + "node": ">=10" } }, "node_modules/node-gyp/node_modules/npmlog": { @@ -13462,33 +15192,39 @@ "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/node-gyp/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==", + "node_modules/node-gyp/node_modules/semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" }, "engines": { - "node": ">=8" + "node": ">=10" } }, + "node_modules/node-gyp/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "node_modules/node-int64": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==" }, "node_modules/node-releases": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz", - "integrity": "sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==" + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.8.tgz", + "integrity": "sha512-dFSmB8fFHEH/s81Xi+Y/15DQY6VHW81nXRj86EMSL3lmuTmK1e+aT4wrFCkTbm+gSwkw4KpX+rT/pMM2c1mF+A==" }, "node_modules/node-sass": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-7.0.1.tgz", - "integrity": "sha512-uMy+Xt29NlqKCFdFRZyXKOTqGt+QaKHexv9STj2WeLottnlqZEEWx6Bj0MXNthmFRRdM/YwyNo/8Tr46TOM0jQ==", + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-7.0.3.tgz", + "integrity": "sha512-8MIlsY/4dXUkJDYht9pIWBhMil3uHmE8b/AdJPjmFn1nBx9X9BASzfzmsCy0uCCb8eqI3SYYzVPDswWqSx7gjw==", "hasInstallScript": true, "dependencies": { "async-foreach": "^0.1.3", @@ -13503,7 +15239,7 @@ "node-gyp": "^8.4.1", "npmlog": "^5.0.0", "request": "^2.88.0", - "sass-graph": "4.0.0", + "sass-graph": "^4.0.1", "stdout-stream": "^1.4.0", "true-case-path": "^1.0.2" }, @@ -13514,6 +15250,70 @@ "node": ">=12" } }, + "node_modules/node-sass/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==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/node-sass/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "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/node-sass/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==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/node-sass/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==" + }, + "node_modules/node-sass/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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/node-sass/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==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/nopt": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", @@ -13529,26 +15329,49 @@ } }, "node_modules/normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "dev": true, + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", + "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", "dependencies": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", + "hosted-git-info": "^4.0.1", + "is-core-module": "^2.5.0", + "semver": "^7.3.4", "validate-npm-package-license": "^3.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/normalize-package-data/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==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" } }, "node_modules/normalize-package-data/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true, + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dependencies": { + "lru-cache": "^6.0.0" + }, "bin": { - "semver": "bin/semver" + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, + "node_modules/normalize-package-data/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "node_modules/normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", @@ -13595,14 +15418,15 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", "integrity": "sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ==", + "dev": true, "engines": { "node": ">=0.10.0" } }, "node_modules/nwsapi": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.1.tgz", - "integrity": "sha512-JYOWTeFoS0Z93587vRJgASD5Ut11fYl5NyihP3KrYBvMe1FRRs6RN7m20SA/16GM4P6hTnZjT+UmDOt38UeXNg==" + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.2.tgz", + "integrity": "sha512-90yv+6538zuvUMnN+zCr8LuV6bPFdq50304114vJYJ8RDyK8D5O9Phpbd6SZWgI7PwzmmfN1upeOJlvybDSgCw==" }, "node_modules/oauth-sign": { "version": "0.9.0", @@ -13634,6 +15458,65 @@ "node": ">=0.10.0" } }, + "node_modules/object-copy/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "dev": true, + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "dependencies": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/is-descriptor/node_modules/kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/object-copy/node_modules/kind-of": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", @@ -13646,18 +15529,11 @@ "node": ">=0.10.0" } }, - "node_modules/object-inspect": { - "version": "1.12.2", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", - "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==", - "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==", + "dev": true, "engines": { "node": ">= 0.4" } @@ -13675,13 +15551,14 @@ } }, "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==", + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", + "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "dev": true, "dependencies": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "has-symbols": "^1.0.1", + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "has-symbols": "^1.0.3", "object-keys": "^1.1.1" }, "engines": { @@ -13815,6 +15692,12 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/ordered-read-streams/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==", + "dev": true + }, "node_modules/ordered-read-streams/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -13841,6 +15724,31 @@ "node": ">=0.10.0" } }, + "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==", + "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", @@ -13855,6 +15763,14 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "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/pako": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", @@ -13907,14 +15823,20 @@ } }, "node_modules/parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha512-QR/GGaKCkhwk1ePQNYDRKYZ3mwU9ypsKhB0XyFnLQdomyEqk3e8wpW3V5Jp88zbxK4n5ST1nqo+g9juTpownhQ==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", "dependencies": { - "error-ex": "^1.2.0" + "@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": ">=0.10.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/parse-node-version": { @@ -13970,6 +15892,16 @@ "node": ">=0.10.0" } }, + "node_modules/path": { + "version": "0.12.7", + "resolved": "https://registry.npmjs.org/path/-/path-0.12.7.tgz", + "integrity": "sha512-aXXC6s+1w7otVF9UletFkFcDsJeO7lSZBPUQhtb5O0xJe8LtYhj/GxldoL09bBj9+ZmE2hNoHqQSFMN5fikh4Q==", + "dev": true, + "dependencies": { + "process": "^0.11.1", + "util": "^0.10.3" + } + }, "node_modules/path-browserify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", @@ -13981,6 +15913,14 @@ "integrity": "sha512-ALzNPpyNq9AqXMBjeymIjFDAkAFH06mHJH/cSBHAgU0s4vfpBn6b2nf8tiRLvagKD8RbTpq2FKTBg7cl9l3c7Q==", "dev": true }, + "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==", + "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", @@ -14040,6 +15980,21 @@ "node": ">=8" } }, + "node_modules/path/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", + "dev": true + }, + "node_modules/path/node_modules/util": { + "version": "0.10.4", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.4.tgz", + "integrity": "sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==", + "dev": true, + "dependencies": { + "inherits": "2.0.3" + } + }, "node_modules/pbkdf2": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", @@ -14286,70 +16241,6 @@ "node": ">=8" } }, - "node_modules/pkg-dir/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==", - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/pkg-dir/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==", - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/pkg-dir/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/pkg-dir/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==", - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/pkg-dir/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/pkg-dir/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==", - "engines": { - "node": ">=8" - } - }, "node_modules/plugin-error": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-1.0.1.tgz", @@ -14375,40 +16266,6 @@ "node": ">=0.10.0" } }, - "node_modules/plugin-error/node_modules/extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", - "dependencies": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/plugin-error/node_modules/is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dependencies": { - "is-plain-object": "^2.0.4" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/plugin-error/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==", - "dependencies": { - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/posix-character-classes": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", @@ -14460,9 +16317,9 @@ } }, "node_modules/prettier": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.7.1.tgz", - "integrity": "sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g==", + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.1.tgz", + "integrity": "sha512-lqGoSJBQNJidqCHE80vqZJHWHRFoNYsSpP9AjFhlhi9ODCJA541svILes/+/1GM3VaL/abZi7cpFzOpdR9UPKg==", "bin": { "prettier": "bin-prettier.js" }, @@ -14523,11 +16380,6 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/pretty-format/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==" - }, "node_modules/pretty-hrtime": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", @@ -14644,14 +16496,53 @@ "pump": "^2.0.0" } }, - "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/pumpify/node_modules/duplexify": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", + "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", + "dev": true, + "dependencies": { + "end-of-stream": "^1.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.0.0", + "stream-shift": "^1.0.0" + } + }, + "node_modules/pumpify/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/pumpify/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==", + "dev": true + }, + "node_modules/pumpify/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/punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==" + }, "node_modules/qs": { "version": "6.5.3", "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", @@ -14727,6 +16618,11 @@ "safe-buffer": "^5.1.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==" + }, "node_modules/read-only-stream": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/read-only-stream/-/read-only-stream-2.0.0.tgz", @@ -14749,6 +16645,11 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/read-only-stream/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/read-only-stream/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -14758,69 +16659,73 @@ } }, "node_modules/read-pkg": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", - "integrity": "sha512-7BGwRHqt4s/uVbuyoeejRn4YmFnYZiFl4AuaeXHlgZf3sONF0SOGlxs2Pw8g6hCKupo08RafIO5YXFNOKTfwsQ==", - "dev": true, + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", "dependencies": { - "load-json-file": "^1.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^1.0.0" + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, "node_modules/read-pkg-up": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", - "integrity": "sha512-WD9MTlNtI55IwYUS27iHh9tK3YoIVhxis8yKhLpTqWtml739uXc9NWTpxoHkfZf3+DkCCsXox94/VWZniuZm6A==", - "dev": true, + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", + "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", "dependencies": { - "find-up": "^1.0.0", - "read-pkg": "^1.0.0" + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/read-pkg-up/node_modules/find-up": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "integrity": "sha512-jvElSjyuo4EMQGoTwo1uJU5pQMwTW5lS1x05zzfJuTIyLR3zwO27LYrxNg+dlvKpGOuGy/MzBdXh80g0ve5+HA==", - "dev": true, - "dependencies": { - "path-exists": "^2.0.0", - "pinkie-promise": "^2.0.0" - }, + "node_modules/read-pkg-up/node_modules/type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/read-pkg-up/node_modules/path-exists": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "integrity": "sha512-yTltuKuhtNeFJKa1PiRzfLAU5182q1y4Eb4XCJ3PBqyzEDkAZRzBrKKBct682ls9reBVHf9udYLN5Nd+K1B9BQ==", - "dev": true, + "node_modules/read-pkg/node_modules/hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==" + }, + "node_modules/read-pkg/node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", "dependencies": { - "pinkie-promise": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" } }, - "node_modules/read-pkg/node_modules/path-type": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", - "integrity": "sha512-S4eENJz1pkiQn9Znv33Q+deTOKmbl+jj1Fl+qiP/vYezj+S8x+J3Uo0ISrx/QoEvIlOaDWJhPaRd1flJ9HXZqg==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.1.2", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - }, + "node_modules/read-pkg/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/read-pkg/node_modules/type-fest": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, "node_modules/readable-stream": { @@ -14855,9 +16760,9 @@ } }, "node_modules/readdir-glob/node_modules/minimatch": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", - "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.2.tgz", + "integrity": "sha512-bNH9mmM9qsJ2X4r2Nat1B//1dJVcn3+iBLa3IgqJ7EbGaDNepL9QSHOxN4ng33s52VMMhhIfgCYDk3C4ZmlDAg==", "dev": true, "dependencies": { "brace-expansion": "^2.0.1" @@ -14867,162 +16772,15 @@ } }, "node_modules/readdirp": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", - "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.1.11", - "micromatch": "^3.1.10", - "readable-stream": "^2.0.2" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/readdirp/node_modules/define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", - "dev": true, - "dependencies": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/readdirp/node_modules/extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", - "dev": true, - "dependencies": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/readdirp/node_modules/is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/readdirp/node_modules/is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/readdirp/node_modules/is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "dependencies": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/readdirp/node_modules/is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "dependencies": { - "is-plain-object": "^2.0.4" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/readdirp/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/readdirp/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/readdirp/node_modules/micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", "dev": true, "dependencies": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" + "picomatch": "^2.2.1" }, "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/readdirp/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/readdirp/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": ">=8.10.0" } }, "node_modules/rechoir": { @@ -15062,59 +16820,6 @@ "node": ">=0.10.0" } }, - "node_modules/regex-not/node_modules/extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", - "dev": true, - "dependencies": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/regex-not/node_modules/is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "dependencies": { - "is-plain-object": "^2.0.4" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/regex-not/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/regexp.prototype.flags": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", - "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "functions-have-names": "^1.2.2" - }, - "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", @@ -15169,6 +16874,12 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/remove-bom-stream/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==", + "dev": true + }, "node_modules/remove-bom-stream/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -15246,15 +16957,6 @@ "readable-stream": "^2.0.2" } }, - "node_modules/replacestream/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": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, "node_modules/replacestream/node_modules/readable-stream": { "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", @@ -15270,6 +16972,12 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/replacestream/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==", + "dev": true + }, "node_modules/replacestream/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -15323,6 +17031,14 @@ "node": ">= 0.12" } }, + "node_modules/request/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/request/node_modules/tough-cookie": { "version": "2.5.0", "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", @@ -15361,6 +17077,12 @@ "node": ">=0.10.0" } }, + "node_modules/require-main-filename": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", + "integrity": "sha512-IqSUtOVP4ksd1C/ej5zeEh/BIP2ajqpn8c5x+q99gvcIG/Qf0cud5raVnE/Dwd0ua9TXYDoDc0RE5hBSdz22Ug==", + "dev": true + }, "node_modules/requires-port": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", @@ -15510,6 +17232,21 @@ "inherits": "^2.0.1" } }, + "node_modules/rollup": { + "version": "2.79.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.79.1.tgz", + "integrity": "sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw==", + "dev": true, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=10.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, "node_modules/run-parallel": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", @@ -15534,9 +17271,23 @@ } }, "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==" + "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/safe-regex": { "version": "1.1.0", @@ -15548,9 +17299,9 @@ } }, "node_modules/safe-stable-stringify": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.3.1.tgz", - "integrity": "sha512-kYBSfT+troD9cDA85VDnHZ1rpHC50O0g1e6WlGHVCz/g+JS+9WKLj+XwFYyR8UbrZN8ll9HUpDAAddY58MGisg==", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.1.tgz", + "integrity": "sha512-dVHE6bMtS/bnL2mwualjc6IxEv1F+OCUpA46pKUj6F8uDbUM0jCCulPqRNPSnWwGNKx5etqMjZYdXtrm5KJZGA==", "engines": { "node": ">=10" } @@ -15561,9 +17312,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "node_modules/sass": { - "version": "1.54.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.54.0.tgz", - "integrity": "sha512-C4zp79GCXZfK0yoHZg+GxF818/aclhp9F48XBu/+bm9vXEVAYov9iU3FBVRMq3Hx3OA4jfKL+p2K9180mEh0xQ==", + "version": "1.57.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.57.1.tgz", + "integrity": "sha512-O2+LwLS79op7GI0xZ8fqzF7X2m/m8WFfI02dHOdsK5R2ECeS5F62zrwg/relM1rjSLy7Vd/DiMNIvPrQGsA0jw==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", @@ -15578,13 +17329,13 @@ } }, "node_modules/sass-graph": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/sass-graph/-/sass-graph-4.0.0.tgz", - "integrity": "sha512-WSO/MfXqKH7/TS8RdkCX3lVkPFQzCgbqdGsmSKq6tlPU+GpGEsa/5aW18JqItnqh+lPtcjifqdZ/VmiILkKckQ==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/sass-graph/-/sass-graph-4.0.1.tgz", + "integrity": "sha512-5YCfmGBmxoIRYHnKK2AKzrAkCoQ8ozO+iumT8K4tXJXRVCPf+7s1/9KxTSW3Rbvf+7Y7b4FR3mWyLnQr3PHocA==", "dependencies": { "glob": "^7.0.0", "lodash": "^4.17.11", - "scss-tokenizer": "^0.3.0", + "scss-tokenizer": "^0.4.3", "yargs": "^17.2.1" }, "bin": { @@ -15594,137 +17345,12 @@ "node": ">=12" } }, - "node_modules/sass/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/sass/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/sass/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/sass/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/sass/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/sass/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/sass/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/sass/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/sass/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/sass/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==", + "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, - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } + "optional": true }, "node_modules/saxes": { "version": "5.0.1", @@ -15738,26 +17364,28 @@ } }, "node_modules/scss-tokenizer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.3.0.tgz", - "integrity": "sha512-14Zl9GcbBvOT9057ZKjpz5yPOyUWG2ojd9D5io28wHRYsOrs7U95Q+KNL87+32p8rc+LvDpbu/i9ZYjM9Q+FsQ==", + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.4.3.tgz", + "integrity": "sha512-raKLgf1LI5QMQnG+RxHz6oK0sL3x3I4FN2UDLqgLOGO8hodECNnNh5BXn7fAyBxrA8zVzdQizQ6XjNJQ+uBwMw==", "dependencies": { - "js-base64": "^2.4.3", - "source-map": "^0.7.1" + "js-base64": "^2.4.9", + "source-map": "^0.7.3" + } + }, + "node_modules/scss-tokenizer/node_modules/source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "engines": { + "node": ">= 8" } }, "node_modules/semver": { - "version": "7.3.7", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", - "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", - "dependencies": { - "lru-cache": "^6.0.0" - }, + "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" - }, - "engines": { - "node": ">=10" } }, "node_modules/semver-greatest-satisfied-range": { @@ -15792,6 +17420,27 @@ "node": ">=0.10.0" } }, + "node_modules/set-value/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dev": true, + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/set-value/node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/set-value/node_modules/is-plain-object": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", @@ -15854,19 +17503,9 @@ } }, "node_modules/shell-quote": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.7.3.tgz", - "integrity": "sha512-Vpfqwm4EnqGdlsBFNmHhxhElJYrdfcxPThu+ryKS5J8L/fhAwLazFZtq+S+TWZ9ANj2piSQLGj6NQg+lKPmxrw==" - }, - "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" - }, + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.7.4.tgz", + "integrity": "sha512-8o/QEhSSRb1a5i7TFR0iM4G16Z0vYB2OQVs4G3aAFXjn3T6yEx8AZxy1PgDF7I00LZHYA3WxaSYIf5e5sAX8Rw==", "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -15938,15 +17577,39 @@ "url": "https://github.com/chalk/slice-ansi?sponsor=1" } }, - "node_modules/slice-ansi/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==", + "node_modules/slice-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/slice-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/slice-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/smart-buffer": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", @@ -16001,66 +17664,76 @@ "node": ">=0.10.0" } }, - "node_modules/snapdragon-node/node_modules/is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "node_modules/snapdragon-util": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", + "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", "dev": true, "dependencies": { - "kind-of": "^6.0.0" + "kind-of": "^3.2.0" }, "engines": { "node": ">=0.10.0" } }, - "node_modules/snapdragon-node/node_modules/is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "node_modules/snapdragon-util/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", "dev": true, "dependencies": { - "kind-of": "^6.0.0" + "is-buffer": "^1.1.5" }, "engines": { "node": ">=0.10.0" } }, - "node_modules/snapdragon-node/node_modules/is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "node_modules/snapdragon/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": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" + "ms": "2.0.0" + } + }, + "node_modules/snapdragon/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "dev": true, + "dependencies": { + "is-descriptor": "^0.1.0" }, "engines": { "node": ">=0.10.0" } }, - "node_modules/snapdragon-node/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==", + "node_modules/snapdragon/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", "dev": true, + "dependencies": { + "is-extendable": "^0.1.0" + }, "engines": { "node": ">=0.10.0" } }, - "node_modules/snapdragon-util": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", - "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "node_modules/snapdragon/node_modules/is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", "dev": true, "dependencies": { - "kind-of": "^3.2.0" + "kind-of": "^3.0.2" }, "engines": { "node": ">=0.10.0" } }, - "node_modules/snapdragon-util/node_modules/kind-of": { + "node_modules/snapdragon/node_modules/is-accessor-descriptor/node_modules/kind-of": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", @@ -16072,13 +17745,51 @@ "node": ">=0.10.0" } }, - "node_modules/snapdragon/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "node_modules/snapdragon/node_modules/is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", "dev": true, "dependencies": { - "ms": "2.0.0" + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/is-data-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "dependencies": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "dev": true, + "engines": { + "node": ">=0.10.0" } }, "node_modules/snapdragon/node_modules/ms": { @@ -16087,13 +17798,18 @@ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true }, - "node_modules/snapdragon/node_modules/source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "node_modules/snapdragon/node_modules/source-map-resolve": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", + "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", + "deprecated": "See https://github.com/lydell/source-map-resolve#deprecated", "dev": true, - "engines": { - "node": ">=0.10.0" + "dependencies": { + "atob": "^2.1.2", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" } }, "node_modules/socket.io-client": { @@ -16127,9 +17843,9 @@ } }, "node_modules/socks": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.0.tgz", - "integrity": "sha512-scnOe9y4VuiNUULJN72GrM26BNOjVsfPXI+j+98PkyEfsIXroa5ofyjT+FzGvn/xHs73U2JtoBYAVx9Hl4quSA==", + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.1.tgz", + "integrity": "sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==", "dependencies": { "ip": "^2.0.0", "smart-buffer": "^4.2.0" @@ -16153,11 +17869,11 @@ } }, "node_modules/source-map": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", "engines": { - "node": ">= 8" + "node": ">=0.10.0" } }, "node_modules/source-map-js": { @@ -16170,17 +17886,14 @@ } }, "node_modules/source-map-resolve": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", - "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz", + "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==", "deprecated": "See https://github.com/lydell/source-map-resolve#deprecated", "dev": true, "dependencies": { "atob": "^2.1.2", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" + "decode-uri-component": "^0.2.0" } }, "node_modules/source-map-support": { @@ -16240,9 +17953,9 @@ } }, "node_modules/spdx-license-ids": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", - "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==" + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz", + "integrity": "sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==" }, "node_modules/split-string": { "version": "3.1.0", @@ -16256,43 +17969,6 @@ "node": ">=0.10.0" } }, - "node_modules/split-string/node_modules/extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", - "dev": true, - "dependencies": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/split-string/node_modules/is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "dependencies": { - "is-plain-object": "^2.0.4" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/split-string/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/sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", @@ -16342,9 +18018,9 @@ } }, "node_modules/stack-utils": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.5.tgz", - "integrity": "sha512-xrQcmYhOsn/1kX+Vraq+7j4oE2j/6BFscZ0etmYg81xuM8Gq0022Pxb8+IqgOFUIaxHs0KaSb7T1+OegiNrNFA==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", "dependencies": { "escape-string-regexp": "^2.0.0" }, @@ -16373,6 +18049,80 @@ "node": ">=0.10.0" } }, + "node_modules/static-extend/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "dev": true, + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/is-accessor-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/is-data-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "dependencies": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/stdout-stream": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/stdout-stream/-/stdout-stream-1.4.1.tgz", @@ -16395,6 +18145,11 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/stdout-stream/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/stdout-stream/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -16435,6 +18190,11 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/stream-combiner2/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/stream-combiner2/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -16489,6 +18249,11 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/stream-splicer/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/stream-splicer/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -16505,25 +18270,6 @@ "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-length": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", @@ -16537,61 +18283,16 @@ } }, "node_modules/string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==", - "dependencies": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/string-width/node_modules/ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/string-width/node_modules/strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dependencies": { - "ansi-regex": "^2.0.0" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" }, "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/string.prototype.trimend": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.5.tgz", - "integrity": "sha512-I7RGvmjV4pJ7O3kdf+LXFpVfdNOxtCW/2C8f6jNiW4+PQchwxkCDzlk1/7p+Wl4bqFIZeF47qAHXLuHHWKAxog==", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.19.5" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimstart": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.5.tgz", - "integrity": "sha512-THx16TJCGlsN0o6dl2o6ncWUsdgnLRSA23rRE5pyGBw/mLr3Ej/R2LaqCtgP8VNMGZsvMWnf9ooZPyY2bHvUFg==", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.19.5" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8" } }, "node_modules/strip-ansi": { @@ -16606,14 +18307,11 @@ } }, "node_modules/strip-bom": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "integrity": "sha512-kwrX1y7czp1E69n2ajbG65mIo9dqvJ+8aBQXOGVxqwvNbsXdFM6Lq37dLAY3mknUwru8CfcCbfOLL/gMo+fi3g==", - "dependencies": { - "is-utf8": "^0.2.0" - }, + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, "node_modules/strip-bom-buf": { @@ -16689,20 +18387,20 @@ } }, "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==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dependencies": { - "has-flag": "^4.0.0" + "has-flag": "^3.0.0" }, "engines": { - "node": ">=8" + "node": ">=4" } }, "node_modules/supports-hyperlinks": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.2.0.tgz", - "integrity": "sha512-6sXEzV5+I5j8Bmq9/vUphGRM/RJNT9SCURJLjwfOg51heRtguGWDzcaBlgAzKhQa0EVNpPEKzQuBwZ8S8WaCeQ==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz", + "integrity": "sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==", "dependencies": { "has-flag": "^4.0.0", "supports-color": "^7.0.0" @@ -16711,6 +18409,25 @@ "node": ">=8" } }, + "node_modules/supports-hyperlinks/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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-hyperlinks/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==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "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", @@ -16746,9 +18463,9 @@ } }, "node_modules/table": { - "version": "6.8.0", - "resolved": "https://registry.npmjs.org/table/-/table-6.8.0.tgz", - "integrity": "sha512-s/fitrbVeEyHKFa7mFdkuQMWlH1Wgw/yEXMt5xACT4ZpzWFluehAxRtUUQKPuWhaLAWhFcVx6w3oC8VKaUfPGA==", + "version": "6.8.1", + "resolved": "https://registry.npmjs.org/table/-/table-6.8.1.tgz", + "integrity": "sha512-Y4X9zqrCftUhMeH2EptSSERdVKt/nEdijTOacGD/97EKjhQ/Qs8RTlEGABSJNNN8lac9kheH+af7yAkEWlgneA==", "dev": true, "dependencies": { "ajv": "^8.0.1", @@ -16762,9 +18479,9 @@ } }, "node_modules/table/node_modules/ajv": { - "version": "8.11.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz", - "integrity": "sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==", + "version": "8.11.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.2.tgz", + "integrity": "sha512-E4bfmKAhGiSTvMfL1Myyycaub+cUEU2/IvpylXkUu7CHBkBj1f/ikdzbD7YQ6FKUbixDxeYvB/xY4fvyroDlQg==", "dev": true, "dependencies": { "fast-deep-equal": "^3.1.1", @@ -16777,55 +18494,26 @@ "url": "https://github.com/sponsors/epoberezkin" } }, - "node_modules/table/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/table/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/table/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/table/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/tar": { - "version": "6.1.11", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz", - "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==", + "version": "6.1.13", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.13.tgz", + "integrity": "sha512-jdIBIN6LTIe2jqzay/2vtYLlBHa3JF42ot3h1dW8Q0PaAG4v8rm0cvpVePtau5C6OKXGGcgO9q2AMNSWxiLqKw==", "dependencies": { "chownr": "^2.0.0", "fs-minipass": "^2.0.0", - "minipass": "^3.0.0", + "minipass": "^4.0.0", "minizlib": "^2.1.1", "mkdirp": "^1.0.3", "yallist": "^4.0.0" }, "engines": { - "node": ">= 10" + "node": ">=10" } }, "node_modules/tar-stream": { @@ -16844,6 +18532,17 @@ "node": ">=6" } }, + "node_modules/tar/node_modules/minipass": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.0.0.tgz", + "integrity": "sha512-g2Uuh2jEKoht+zvO6vJqXmYpflPqzRBT+Th2h01DKh5z7wbY/AZ2gCQ78cP70YoHPyFdY30YBV5WxgLOEwOykw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/tar/node_modules/mkdirp": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", @@ -16855,6 +18554,11 @@ "node": ">=10" } }, + "node_modules/tar/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "node_modules/terminal-link": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz", @@ -16882,16 +18586,14 @@ "through2": "^3.0.1" } }, - "node_modules/ternary-stream/node_modules/duplexify": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-4.1.2.tgz", - "integrity": "sha512-fz3OjcNCHmRP12MJoZMPglx8m4rrFP8rovnk4vT8Fs+aonZoCwGg10dSsQsfP/E62eZcPTMSMP6686fu9Qlqtw==", + "node_modules/ternary-stream/node_modules/through2": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz", + "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==", "dev": true, "dependencies": { - "end-of-stream": "^1.4.1", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1", - "stream-shift": "^1.0.0" + "inherits": "^2.0.4", + "readable-stream": "2 || 3" } }, "node_modules/terser": { @@ -16967,12 +18669,12 @@ "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==" }, "node_modules/through2": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz", - "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz", + "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==", + "dev": true, "dependencies": { - "inherits": "^2.0.4", - "readable-stream": "2 || 3" + "readable-stream": "3" } }, "node_modules/through2-filter": { @@ -17000,6 +18702,12 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/through2-filter/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==", + "dev": true + }, "node_modules/through2-filter/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -17129,113 +18837,14 @@ } }, "node_modules/to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==", - "dev": true, - "dependencies": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/to-regex/node_modules/define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", - "dev": true, - "dependencies": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/to-regex/node_modules/extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", - "dev": true, - "dependencies": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/to-regex/node_modules/is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/to-regex/node_modules/is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/to-regex/node_modules/is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "dependencies": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/to-regex/node_modules/is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "dependencies": { - "is-plain-object": "^2.0.4" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/to-regex/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, + "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==", "dependencies": { - "isobject": "^3.0.1" + "is-number": "^7.0.0" }, "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/to-regex/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": ">=8.0" } }, "node_modules/to-through": { @@ -17265,6 +18874,12 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/to-through/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==", + "dev": true + }, "node_modules/to-through/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -17325,12 +18940,12 @@ "node": ">=6" } }, - "node_modules/tough-cookie/node_modules/universalify": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", - "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", + "node_modules/tough-cookie/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": ">= 4.0.0" + "node": ">=6" } }, "node_modules/tr46": { @@ -17344,6 +18959,14 @@ "node": ">=8" } }, + "node_modules/tr46/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/trim-newlines": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz", @@ -17408,22 +19031,43 @@ } } }, - "node_modules/ts-jest/node_modules/json5": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", - "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", + "node_modules/ts-jest/node_modules/lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", + "dev": true + }, + "node_modules/ts-jest/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/ts-jest/node_modules/semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, "bin": { - "json5": "lib/cli.js" + "semver": "bin/semver.js" }, "engines": { - "node": ">=6" + "node": ">=10" } }, - "node_modules/ts-jest/node_modules/lodash.memoize": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", - "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", + "node_modules/ts-jest/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/ts-jest/node_modules/yargs-parser": { @@ -17479,9 +19123,9 @@ } }, "node_modules/ts-node/node_modules/acorn": { - "version": "8.8.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.0.tgz", - "integrity": "sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==", + "version": "8.8.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz", + "integrity": "sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==", "devOptional": true, "bin": { "acorn": "bin/acorn" @@ -17510,6 +19154,28 @@ "strip-json-comments": "^2.0.0" } }, + "node_modules/tsconfig/node_modules/parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha512-QR/GGaKCkhwk1ePQNYDRKYZ3mwU9ypsKhB0XyFnLQdomyEqk3e8wpW3V5Jp88zbxK4n5ST1nqo+g9juTpownhQ==", + "dependencies": { + "error-ex": "^1.2.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tsconfig/node_modules/strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha512-kwrX1y7czp1E69n2ajbG65mIo9dqvJ+8aBQXOGVxqwvNbsXdFM6Lq37dLAY3mknUwru8CfcCbfOLL/gMo+fi3g==", + "dependencies": { + "is-utf8": "^0.2.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/tsconfig/node_modules/strip-json-comments": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", @@ -17552,13 +19218,10 @@ "util-deprecate": "~1.0.1" } }, - "node_modules/tsify/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/tsify/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/tsify/node_modules/string_decoder": { "version": "1.1.1", @@ -17578,9 +19241,9 @@ } }, "node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.1.tgz", + "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==", "dev": true }, "node_modules/tsutils": { @@ -17598,6 +19261,12 @@ "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/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/tty-browserify": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.1.tgz", @@ -17646,10 +19315,9 @@ } }, "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, + "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==", "engines": { "node": ">=10" }, @@ -17671,9 +19339,9 @@ } }, "node_modules/typescript": { - "version": "4.7.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.7.4.tgz", - "integrity": "sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ==", + "version": "4.9.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.4.tgz", + "integrity": "sha512-Uz+dTXYzxXXbsFpM86Wh3dKCxrQqUcVMxwU54orwlJjOpO3ao8L7j5lH+dWfTwgCwIuM9GQ2kvVotzYJMXTBZg==", "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -17717,20 +19385,6 @@ "umd": "bin/cli.js" } }, - "node_modules/unbox-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", - "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", - "dependencies": { - "call-bind": "^1.0.2", - "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/unc-path-regex": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz", @@ -17755,6 +19409,12 @@ "undeclared-identifiers": "bin.js" } }, + "node_modules/underscore": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.4.4.tgz", + "integrity": "sha512-ZqGrAgaqqZM7LGRzNjLnw5elevWb5M8LEoDMadxIW3OWbcv72wMMgKdwOKpd5Fqxe8choLD8HN3iSj3TUh/giQ==", + "dev": true + }, "node_modules/undertaker": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/undertaker/-/undertaker-1.3.0.tgz", @@ -17806,6 +19466,15 @@ "node": ">=0.10.0" } }, + "node_modules/union-value/node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/unique-filename": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", @@ -17832,6 +19501,14 @@ "through2-filter": "^3.0.0" } }, + "node_modules/universalify": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", + "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", + "engines": { + "node": ">= 4.0.0" + } + }, "node_modules/unset-value": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", @@ -17891,9 +19568,9 @@ } }, "node_modules/update-browserslist-db": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.5.tgz", - "integrity": "sha512-dteFFpCyvuDdr9S/ff1ISkKt/9YZxKjI9WlRR99c180GaztJtRa/fn18FdxGVKVsnPY7/a/FDN68mcvUmP4U7Q==", + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", + "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", "funding": [ { "type": "opencollective", @@ -17923,6 +19600,14 @@ "punycode": "^2.1.0" } }, + "node_modules/uri-js/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/urix": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", @@ -17963,15 +19648,14 @@ } }, "node_modules/util": { - "version": "0.12.4", - "resolved": "https://registry.npmjs.org/util/-/util-0.12.4.tgz", - "integrity": "sha512-bxZ9qtSlGUWSOy9Qa9Xgk11kSslpuZwaxCg4sNIDj6FLucDab2JxnHwyNTCpHMtK1MjoQiWQ6DiUMZYbSrO+Sw==", + "version": "0.12.5", + "resolved": "https://registry.npmjs.org/util/-/util-0.12.5.tgz", + "integrity": "sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==", "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" } }, @@ -18014,6 +19698,14 @@ "node": ">=10.12.0" } }, + "node_modules/v8-to-istanbul/node_modules/source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "engines": { + "node": ">= 8" + } + }, "node_modules/v8flags": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-3.2.0.tgz", @@ -18109,6 +19801,12 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/vinyl-buffer/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==", + "dev": true + }, "node_modules/vinyl-buffer/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -18171,6 +19869,12 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/vinyl-fs/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==", + "dev": true + }, "node_modules/vinyl-fs/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -18215,6 +19919,12 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/vinyl-source-stream/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==", + "dev": true + }, "node_modules/vinyl-source-stream/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -18273,15 +19983,6 @@ "source-map": "^0.5.1" } }, - "node_modules/vinyl-sourcemaps-apply/node_modules/source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/vm-browserify": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", @@ -18291,6 +19992,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", + "deprecated": "Use your platform's native performance.now() and performance.timeOrigin.", "dependencies": { "browser-process-hrtime": "^1.0.0" } @@ -18330,6 +20032,17 @@ "iconv-lite": "0.4.24" } }, + "node_modules/whatwg-encoding/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/whatwg-mimetype": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", @@ -18362,32 +20075,23 @@ "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": "1.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", + "integrity": "sha512-F6+WgncZi/mJDrammbTuHe1q0R5hOXv/mBaiNA2TCNT/LTHusX0V+CJnj9XT8ki5ln2UZyyddDgHfCzyrOH7MQ==", + "dev": true }, "node_modules/which-typed-array": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.8.tgz", - "integrity": "sha512-Jn4e5PItbcAHyLoRDwvPj1ypu27DJbtdYXUa5zsinrUx77Uvfb0cXwwnGMTn7cjUfhhqgVQnVJCwF+7cgU7tpw==", + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz", + "integrity": "sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==", "dependencies": { "available-typed-arrays": "^1.0.5", "call-bind": "^1.0.2", - "es-abstract": "^1.20.0", "for-each": "^0.3.3", + "gopd": "^1.0.1", "has-tostringtag": "^1.0.0", - "is-typed-array": "^1.1.9" + "is-typed-array": "^1.1.10" }, "engines": { "node": ">= 0.4" @@ -18405,10 +20109,11 @@ } }, "node_modules/winston": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/winston/-/winston-3.8.1.tgz", - "integrity": "sha512-r+6YAiCR4uI3N8eQNOg8k3P3PqwAm20cLKlzVD9E66Ch39+LZC+VH1UKf9JemQj2B3QoUHfKD7Poewn0Pr3Y1w==", + "version": "3.8.2", + "resolved": "https://registry.npmjs.org/winston/-/winston-3.8.2.tgz", + "integrity": "sha512-MsE1gRx1m5jdTTO9Ld/vND4krP2To+lgDoMEHGGa4HIlAUyXJtfc7CxQcGXVyz2IBpw5hbFkj2b/AtUdQwyRew==", "dependencies": { + "@colors/colors": "1.5.0", "@dabh/diagnostics": "^2.0.2", "async": "^3.2.3", "is-stream": "^2.0.0", @@ -18467,32 +20172,36 @@ "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "node_modules/wrap-ansi/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==" - }, - "node_modules/wrap-ansi/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==", + "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==", + "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/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==", + "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==", "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" + "color-name": "~1.1.4" }, "engines": { - "node": ">=8" + "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==" + }, "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", @@ -18519,12 +20228,11 @@ } }, "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, + "version": "7.5.9", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", + "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", "engines": { - "node": ">=10.0.0" + "node": ">=8.3.0" }, "peerDependencies": { "bufferutil": "^4.0.1", @@ -18575,61 +20283,35 @@ } }, "node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" }, "node_modules/yargs": { - "version": "17.5.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.5.1.tgz", - "integrity": "sha512-t6YAJcxDkNX7NFYiVtKvWUz8l+PaKTLiL63mJYWR2GnHq2gjEWISzsLp9wg3aY36dY1j+gfIEL3pIF+XlJJfbA==", + "version": "17.6.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.6.2.tgz", + "integrity": "sha512-1/9UrdHjDZc0eOU0HxOHoS78C69UD3JRMvzlJ7S79S2nTaWRA/whGCTV8o9e/N/1Va9YIV7Q4sOxD8VV4pCWOw==", "dependencies": { - "cliui": "^7.0.2", + "cliui": "^8.0.1", "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": "^21.1.1" }, "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==", + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", "engines": { "node": ">=12" } }, - "node_modules/yargs/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==" - }, - "node_modules/yargs/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==", - "engines": { - "node": ">=8" - } - }, - "node_modules/yargs/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==", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/yeast": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/yeast/-/yeast-0.1.2.tgz", @@ -18683,66 +20365,57 @@ } }, "@babel/code-frame": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", - "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", + "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", "requires": { - "@babel/highlight": "^7.10.4" + "@babel/highlight": "^7.18.6" } }, "@babel/compat-data": { - "version": "7.18.13", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.18.13.tgz", - "integrity": "sha512-5yUzC5LqyTFp2HLmDoxGQelcdYgSpP9xsnMWBphAscOdFrHSAVbLNzWiy32sVNDqJRDiJK6klfDnAgu6PAGSHw==" + "version": "7.20.10", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.10.tgz", + "integrity": "sha512-sEnuDPpOJR/fcafHMjpcpGN5M2jbUGUHwmuWKM/YdPzeEDJg8bgmbcWQFUfE32MQjti1koACvoPVsDe8Uq+idg==" }, "@babel/core": { - "version": "7.18.13", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.13.tgz", - "integrity": "sha512-ZisbOvRRusFktksHSG6pjj1CSvkPkcZq/KHD45LAkVP/oiHJkNBZWfpvlLmX8OtHDG8IuzsFlVRWo08w7Qxn0A==", + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.7.tgz", + "integrity": "sha512-t1ZjCluspe5DW24bn2Rr1CDb2v9rn/hROtg9a2tmd0+QYf4bsloYfLQzjG4qHPNMhWtKdGC33R5AxGR2Af2cBw==", "requires": { "@ampproject/remapping": "^2.1.0", "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.18.13", - "@babel/helper-compilation-targets": "^7.18.9", - "@babel/helper-module-transforms": "^7.18.9", - "@babel/helpers": "^7.18.9", - "@babel/parser": "^7.18.13", - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.18.13", - "@babel/types": "^7.18.13", + "@babel/generator": "^7.20.7", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-module-transforms": "^7.20.7", + "@babel/helpers": "^7.20.7", + "@babel/parser": "^7.20.7", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.20.7", + "@babel/types": "^7.20.7", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", "json5": "^2.2.1", "semver": "^6.3.0" - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", - "requires": { - "@babel/highlight": "^7.18.6" - } - }, - "json5": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", - "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==" - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" - } + } + }, + "@babel/eslint-parser": { + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.19.1.tgz", + "integrity": "sha512-AqNf2QWt1rtu2/1rLswy6CDP7H9Oh3mMhk177Y67Rg8d7RD9WfOLLv8CGn6tisFvS2htm86yIe1yLF6I1UDaGQ==", + "dev": true, + "requires": { + "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1", + "eslint-visitor-keys": "^2.1.0", + "semver": "^6.3.0" } }, "@babel/generator": { - "version": "7.18.13", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.13.tgz", - "integrity": "sha512-CkPg8ySSPuHTYPJYo7IRALdqyjM9HCbt/3uOBEFbzyGVP6Mn8bwFPB0jX6982JVNBlYzM1nnPkfjuXSOPtQeEQ==", + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.7.tgz", + "integrity": "sha512-7wqMOJq8doJMZmP4ApXTzLxSr7+oO2jroJURrVEp6XShrQUObV8Tq/D0NCcoYg2uHqUrjzO0zwBjoYzelxK+sw==", "requires": { - "@babel/types": "^7.18.13", + "@babel/types": "^7.20.7", "@jridgewell/gen-mapping": "^0.3.2", "jsesc": "^2.5.1" }, @@ -18760,21 +20433,15 @@ } }, "@babel/helper-compilation-targets": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.9.tgz", - "integrity": "sha512-tzLCyVmqUiFlcFoAPLA/gL9TeYrF61VLNtb+hvkuVaB5SUjW7jcfrglBIX1vUIoT7CLP3bBlIMeyEsIl2eFQNg==", + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz", + "integrity": "sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==", "requires": { - "@babel/compat-data": "^7.18.8", + "@babel/compat-data": "^7.20.5", "@babel/helper-validator-option": "^7.18.6", - "browserslist": "^4.20.2", + "browserslist": "^4.21.3", + "lru-cache": "^5.1.1", "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-environment-visitor": { @@ -18783,12 +20450,12 @@ "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==" }, "@babel/helper-function-name": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.18.9.tgz", - "integrity": "sha512-fJgWlZt7nxGksJS9a0XdSaI4XvpExnNIgRP+rVefWh5U7BL8pPuir6SJUmFKRfjWQ51OtWSzwOxhaH/EBWWc0A==", + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz", + "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==", "requires": { - "@babel/template": "^7.18.6", - "@babel/types": "^7.18.9" + "@babel/template": "^7.18.10", + "@babel/types": "^7.19.0" } }, "@babel/helper-hoist-variables": { @@ -18808,31 +20475,31 @@ } }, "@babel/helper-module-transforms": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.18.9.tgz", - "integrity": "sha512-KYNqY0ICwfv19b31XzvmI/mfcylOzbLtowkw+mfvGPAQ3kfCnMLYbED3YecL5tPd8nAYFQFAd6JHp2LxZk/J1g==", + "version": "7.20.11", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.20.11.tgz", + "integrity": "sha512-uRy78kN4psmji1s2QtbtcCSaj/LILFDp0f/ymhpQH5QY3nljUZCaNWz9X1dEj/8MBdBEFECs7yRhKn8i7NjZgg==", "requires": { "@babel/helper-environment-visitor": "^7.18.9", "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-simple-access": "^7.18.6", + "@babel/helper-simple-access": "^7.20.2", "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/helper-validator-identifier": "^7.18.6", - "@babel/template": "^7.18.6", - "@babel/traverse": "^7.18.9", - "@babel/types": "^7.18.9" + "@babel/helper-validator-identifier": "^7.19.1", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.20.10", + "@babel/types": "^7.20.7" } }, "@babel/helper-plugin-utils": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.18.9.tgz", - "integrity": "sha512-aBXPT3bmtLryXaoJLyYPXPlSD4p1ld9aYeR+sJNOZjJJGiOpb+fKfh3NkcCu7J54nUJwCERPBExCCpyCOHnu/w==" + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", + "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==" }, "@babel/helper-simple-access": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.6.tgz", - "integrity": "sha512-iNpIgTgyAvDQpDj76POqg+YEt8fPxx3yaNBg3S30dxNKm2SWfYhD0TGrK/Eu9wHpUW63VQU894TsTg+GLbUa1g==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", + "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", "requires": { - "@babel/types": "^7.18.6" + "@babel/types": "^7.20.2" } }, "@babel/helper-split-export-declaration": { @@ -18844,14 +20511,14 @@ } }, "@babel/helper-string-parser": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.18.10.tgz", - "integrity": "sha512-XtIfWmeNY3i4t7t4D2t02q50HvqHybPqW2ki1kosnvWCwuCMeo81Jf0gwr85jy/neUdg5XDdeFE/80DXiO+njw==" + "version": "7.19.4", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", + "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==" }, "@babel/helper-validator-identifier": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.18.6.tgz", - "integrity": "sha512-MmetCkz9ej86nJQV+sFCxoGGrUbU3q02kgLciwkrt9QqEB7cP39oKEY0PakknEO0Gu20SskMRi+AYZ3b1TpN9g==" + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", + "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==" }, "@babel/helper-validator-option": { "version": "7.18.6", @@ -18859,13 +20526,13 @@ "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==" }, "@babel/helpers": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.18.9.tgz", - "integrity": "sha512-Jf5a+rbrLoR4eNdUmnFu8cN5eNJT6qdTdOg5IHIzq87WwyRw9PwguLFOWYgktN/60IP4fgDUawJvs7PjQIzELQ==", + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.7.tgz", + "integrity": "sha512-PBPjs5BppzsGaxHQCDKnZ6Gd9s6xl8bBCluz3vEInLGRJmnZan4F6BYCeqtyXqkk4W5IlPmjK4JlOuZkpJ3xZA==", "requires": { - "@babel/template": "^7.18.6", - "@babel/traverse": "^7.18.9", - "@babel/types": "^7.18.9" + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.20.7", + "@babel/types": "^7.20.7" } }, "@babel/highlight": { @@ -18876,63 +20543,12 @@ "@babel/helper-validator-identifier": "^7.18.6", "chalk": "^2.0.0", "js-tokens": "^4.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==" - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==" - }, - "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" - } - } } }, "@babel/parser": { - "version": "7.18.13", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.13.tgz", - "integrity": "sha512-dgXcIfMuQ0kgzLB2b9tRZs7TTFFaGM2AbtA4fJgUUYukzGH4jwsS7hzQHEGs67jdehpm22vkgKwvbU+aEflgwg==" + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.7.tgz", + "integrity": "sha512-T3Z9oHybU+0vZlY9CiDSJQTD5ZapcW18ZctFMi0MOAl/4BjFF4ul7NVSARLdbGO5vDqy9eQiGTV0LtKfvCYvcg==" }, "@babel/plugin-syntax-async-generators": { "version": "7.8.4", @@ -19031,72 +20647,47 @@ } }, "@babel/plugin-syntax-typescript": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.18.6.tgz", - "integrity": "sha512-mAWAuq4rvOepWCBid55JuRNvpTNf2UGVgoz4JV0fXEKolsVZDzsa4NqCef758WZJj/GDu0gVGItjKFiClTAmZA==", + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.20.0.tgz", + "integrity": "sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ==", "requires": { - "@babel/helper-plugin-utils": "^7.18.6" + "@babel/helper-plugin-utils": "^7.19.0" } }, "@babel/template": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz", - "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==", + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", + "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", "requires": { "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.18.10", - "@babel/types": "^7.18.10" - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", - "requires": { - "@babel/highlight": "^7.18.6" - } - } + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7" } }, "@babel/traverse": { - "version": "7.18.13", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.13.tgz", - "integrity": "sha512-N6kt9X1jRMLPxxxPYWi7tgvJRH/rtoU+dbKAPDM44RFHiMH8igdsaSBgFeskhSl/kLWLDUvIh1RXCrTmg0/zvA==", + "version": "7.20.10", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.10.tgz", + "integrity": "sha512-oSf1juCgymrSez8NI4A2sr4+uB/mFd9MXplYGPEBnfAuWmmyeVcHa6xLPiaRBcXkcb/28bgxmQLTVwFKE1yfsg==", "requires": { "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.18.13", + "@babel/generator": "^7.20.7", "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", + "@babel/helper-function-name": "^7.19.0", "@babel/helper-hoist-variables": "^7.18.6", "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.18.13", - "@babel/types": "^7.18.13", + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", "debug": "^4.1.0", "globals": "^11.1.0" - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", - "requires": { - "@babel/highlight": "^7.18.6" - } - }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==" - } } }, "@babel/types": { - "version": "7.18.13", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.13.tgz", - "integrity": "sha512-ePqfTihzW0W6XAU+aMw2ykilisStJfDnsejDCXRchCcMJ4O0+8DhPXf2YUbZ6wjBlsEmZwLK/sPweWtu8hcJYQ==", + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.7.tgz", + "integrity": "sha512-69OnhBxSSgK0OzTJai4kyPDiKTIe3j+ctaHdIGVbRahTLAT7L3R9oeXHC2aVSuGYt3cVnoAMDmOCgJ2yaiLMvg==", "requires": { - "@babel/helper-string-parser": "^7.18.10", - "@babel/helper-validator-identifier": "^7.18.6", + "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-validator-identifier": "^7.19.1", "to-fast-properties": "^2.0.0" } }, @@ -19141,6 +20732,17 @@ "kuler": "^2.0.0" } }, + "@es-joy/jsdoccomment": { + "version": "0.36.1", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.36.1.tgz", + "integrity": "sha512-922xqFsTpHs6D0BUiG4toiyPOMc8/jafnWKxz1KWgS4XzKPy2qXf1Pe6UFuNSCQqt6tOuhAWXBNuuyUhJmw9Vg==", + "dev": true, + "requires": { + "comment-parser": "1.3.1", + "esquery": "^1.4.0", + "jsdoc-type-pratt-parser": "~3.1.0" + } + }, "@eslint/eslintrc": { "version": "0.4.3", "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", @@ -19158,11 +20760,26 @@ "strip-json-comments": "^3.1.1" }, "dependencies": { + "globals": { + "version": "13.19.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.19.0.tgz", + "integrity": "sha512-dkQ957uSRWHw7CFXLUtUHQI3g3aWApYhfNR2O6jn/907riyTYKVBmxYVROkBcY614FSSeSJh7Xm7SrUWCxvJMQ==", + "dev": true, + "requires": { + "type-fest": "^0.20.2" + } + }, "ignore": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", "dev": true + }, + "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 } } }, @@ -19195,6 +20812,16 @@ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true + }, + "through2": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz", + "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==", + "dev": true, + "requires": { + "inherits": "^2.0.4", + "readable-stream": "2 || 3" + } } } }, @@ -19232,6 +20859,12 @@ "util-deprecate": "~1.0.1" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -19264,12 +20897,6 @@ "minimatch": "^3.0.4" } }, - "@humanwhocodes/gitignore-to-minimatch": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@humanwhocodes/gitignore-to-minimatch/-/gitignore-to-minimatch-1.0.2.tgz", - "integrity": "sha512-rSqmMJDdLFUsyxR6FMtD00nfQKKLFb1kv+qBbOVKqErvloEIJLo5bDTJTQNTYgeyp78JsA7u/NPi5jT1GR/MuA==", - "dev": true - }, "@humanwhocodes/module-importer": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", @@ -19294,49 +20921,6 @@ "resolve-from": "^5.0.0" }, "dependencies": { - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "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==", - "requires": { - "p-limit": "^2.2.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" - }, "resolve-from": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", @@ -19360,6 +20944,51 @@ "jest-message-util": "^27.5.1", "jest-util": "^27.5.1", "slash": "^3.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==", + "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==", + "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==", + "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==" + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "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==", + "requires": { + "has-flag": "^4.0.0" + } + } } }, "@jest/core": { @@ -19395,6 +21024,51 @@ "rimraf": "^3.0.0", "slash": "^3.0.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==", + "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==", + "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==", + "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==" + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "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==", + "requires": { + "has-flag": "^4.0.0" + } + } } }, "@jest/environment": { @@ -19463,10 +21137,53 @@ "v8-to-istanbul": "^8.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==", + "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==", + "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==", + "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==" + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + }, + "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==", + "requires": { + "has-flag": "^4.0.0" + } } } }, @@ -19531,10 +21248,53 @@ "write-file-atomic": "^3.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==", + "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==", + "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==", + "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==" + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + }, + "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==", + "requires": { + "has-flag": "^4.0.0" + } } } }, @@ -19557,6 +21317,49 @@ "requires": { "@types/yargs-parser": "*" } + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "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==", + "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==", + "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==" + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "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==", + "requires": { + "has-flag": "^4.0.0" + } } } }, @@ -19585,12 +21388,12 @@ "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==" }, "@jridgewell/trace-mapping": { - "version": "0.3.15", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.15.tgz", - "integrity": "sha512-oWZNOULl+UbhsgB51uuZzglikfIKSUBO/M9W2OfEjn7cmqoAiCgmv9lyACTUacZwBz0ITnJ2NqjU8Tx0DHL88g==", + "version": "0.3.17", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", + "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", "requires": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" } }, "@league-of-foundry-developers/foundry-vtt-types": { @@ -19609,6 +21412,15 @@ "tinymce": "5.10.1" } }, + "@nicolo-ribaudo/eslint-scope-5-internals": { + "version": "5.1.1-v1", + "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz", + "integrity": "sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==", + "dev": true, + "requires": { + "eslint-scope": "5.1.1" + } + }, "@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -19642,6 +21454,29 @@ "requires": { "@gar/promisify": "^1.0.1", "semver": "^7.3.5" + }, + "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==", + "requires": { + "yallist": "^4.0.0" + } + }, + "semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "requires": { + "lru-cache": "^6.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } } }, "@npmcli/move-file": { @@ -19834,16 +21669,16 @@ } }, "@pixi/constants": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@pixi/constants/-/constants-6.5.0.tgz", - "integrity": "sha512-rr2szhjkM/TEHFcq+I3sg3uvRDRCC+ggO0lOvbHt3B84QdSGltndI4GSefSRpmvb5KbrZP7R0NO6UY7AZ0NqQg==", + "version": "6.5.8", + "resolved": "https://registry.npmjs.org/@pixi/constants/-/constants-6.5.8.tgz", + "integrity": "sha512-yYRCebBPqajm1kn5f8QQTTvl7oDRDk1nppfO+JpqbrFXg0W7oqIMurec3KeG9RdZW5foOiXDoz1Gw+VtolYIEw==", "dev": true, "peer": true }, "@pixi/core": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@pixi/core/-/core-6.5.0.tgz", - "integrity": "sha512-73dceDRGvdMs/i9t9sNAVKK2lkPZ/olaLp+Xa2vo+BsaBdr5e+11vnAzT7XUtZyGjWOm3o1KXABZ6jr9AuKdkg==", + "version": "6.5.8", + "resolved": "https://registry.npmjs.org/@pixi/core/-/core-6.5.8.tgz", + "integrity": "sha512-Gconik7/PpFPMpCpOddXVIPx5C2StWKw7lQ4YX19yQ+cRRmecCea2cV0xTBtpEjjx0ilX7nBfIEuZ4zIlMmlbA==", "dev": true, "peer": true, "requires": { @@ -19851,13 +21686,20 @@ } }, "@pixi/display": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@pixi/display/-/display-6.5.0.tgz", - "integrity": "sha512-ksjGtleam+p319teRT1FL7MSwJ1w5L5xWyq1w8QIREKNxHuI8lOfYgxPABo6HUI8FZ4AysifnfAdnxDqbPtauw==", + "version": "6.5.8", + "resolved": "https://registry.npmjs.org/@pixi/display/-/display-6.5.8.tgz", + "integrity": "sha512-2K8YOG8s0iF8x/k2Q0RTFmoMJ9biI6PXEh76nH3EqUFdpyrIIgrG5aOMnCkVDvOxlgVRrKG8Q3JBHlSievTmuw==", "dev": true, "peer": true, "requires": {} }, + "@pixi/extensions": { + "version": "6.5.8", + "resolved": "https://registry.npmjs.org/@pixi/extensions/-/extensions-6.5.8.tgz", + "integrity": "sha512-6vEV801Vn/EkU/qjFiZ76OZWPq5KsBR2r+P5gfKv4YLnaDc3A+0IpUOJ7sLBAJqmr0iw68g6xV6MnuqVjNGjFg==", + "dev": true, + "peer": true + }, "@pixi/extract": { "version": "5.3.11", "resolved": "https://registry.npmjs.org/@pixi/extract/-/extract-5.3.11.tgz", @@ -20381,9 +22223,9 @@ } }, "@pixi/graphics": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@pixi/graphics/-/graphics-6.5.0.tgz", - "integrity": "sha512-8AoZDLlZtCQ2x/XmjnjdMUfri0L3oUoDWcMoa1CSqqzHBUhpWqrn5f/VeJnSS7xGixpGe1XeJXWwRoxSwN2D7A==", + "version": "6.5.8", + "resolved": "https://registry.npmjs.org/@pixi/graphics/-/graphics-6.5.8.tgz", + "integrity": "sha512-DUuUXHO4t5fg+n+srMkHX38QEH3WtS1IMXtovBGFJkkopG0Z0xjxSp5XvsPPw1J//4fzkHZI5OBrlN613p9+sg==", "dev": true, "peer": true, "requires": {} @@ -20561,9 +22403,9 @@ } }, "@pixi/math": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@pixi/math/-/math-6.5.0.tgz", - "integrity": "sha512-NWOxO8my4KxdCyrR4UJGchwDkpWortMy8zUtXuds+92I+5fpBfctVkshf45o9QX2yX4pbtCPs0VupI2i5G3AOQ==", + "version": "6.5.8", + "resolved": "https://registry.npmjs.org/@pixi/math/-/math-6.5.8.tgz", + "integrity": "sha512-9493KEH5ITnjOZvQZbaU22lD0kcg/XhNh+309KYfwFX787zA1BN/7is06oHEgHBDb2NemqioYi6sw1WnECgQig==", "dev": true, "peer": true }, @@ -21170,23 +23012,24 @@ } }, "@pixi/runner": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@pixi/runner/-/runner-6.5.0.tgz", - "integrity": "sha512-jZEilMPQlROJgRvRaJZcxp/K3adn4gx2mXwqK8DPqAcc5epwLzF8D4Us20PmY+7ALTglMdFZ7hHQKAPngi/jRA==", + "version": "6.5.8", + "resolved": "https://registry.npmjs.org/@pixi/runner/-/runner-6.5.8.tgz", + "integrity": "sha512-/9KVgQjTKiBa1qHdNmhP9I+AHgC/Eu9QiKcc+oakLCJtpYi79lx+nDFrpLUamIi2c7lP0hDWVe0XqlQeYmSwag==", "dev": true, "peer": true }, "@pixi/settings": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@pixi/settings/-/settings-6.5.0.tgz", - "integrity": "sha512-fXbFYNJGv1v0ZS0kypziKFh2LJfI16aRBvqDqLFPvB0fkRkEOJuRTU4Lq77shgzP5v20oz7JShoVxyN5X9VNSw==", + "version": "6.5.8", + "resolved": "https://registry.npmjs.org/@pixi/settings/-/settings-6.5.8.tgz", + "integrity": "sha512-gmnwHkg9+tlQRuFNOdimzl73Dup2fdEo/VYaF7spT+8womE4KWAvARCBMqY/10aAx1iYeYuo5av/RfqrePB5Hg==", "dev": true, - "peer": true + "peer": true, + "requires": {} }, "@pixi/sprite": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@pixi/sprite/-/sprite-6.5.0.tgz", - "integrity": "sha512-hxoH6poGBU+pZ4uC3rUuu9BXaFGrxZcyDu48/5ZYXjNC5HcCNPycmffalEkPcDQF7ymr7/3vTZ73mybcq9EIMA==", + "version": "6.5.8", + "resolved": "https://registry.npmjs.org/@pixi/sprite/-/sprite-6.5.8.tgz", + "integrity": "sha512-ywvbrNgjK+K93X9cvHtDCnsBtU7B9JD/3wg+1G6v1Ktrr2E1gwVIQK1NANBrjzt6cYGphz5EqGAW68d0rMBliw==", "dev": true, "peer": true, "requires": {} @@ -21669,17 +23512,17 @@ } }, "@pixi/ticker": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@pixi/ticker/-/ticker-6.5.0.tgz", - "integrity": "sha512-sPoE2ra5bAS6WpFdHgAUzu2jDjW8bGuHlEtK+uQtD5KF07JViDEPnBqFXPWgZYHimnIFBnYw7+OtxPM1kTeKmQ==", + "version": "6.5.8", + "resolved": "https://registry.npmjs.org/@pixi/ticker/-/ticker-6.5.8.tgz", + "integrity": "sha512-7VKq5hfnRDSv6a16pATqZAmpQfEu4G171iUTloy3QZfbnPw0s3JervZSih1yJJD84GXEF4VzYB26pJ/x3arGjQ==", "dev": true, "peer": true, "requires": {} }, "@pixi/utils": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@pixi/utils/-/utils-6.5.0.tgz", - "integrity": "sha512-ttJZwTh2LhvwMt4WkU6HAWh6UE3ELGds+DQW29KW2yrKZnUEMsA2Jnsq7uFn6x6LM7tzBvJbzGvTyKgFL/jvVg==", + "version": "6.5.8", + "resolved": "https://registry.npmjs.org/@pixi/utils/-/utils-6.5.8.tgz", + "integrity": "sha512-zLnvmVQBWPDnwkfvrSpBBF2XpWSMt+kQAsX562eqjuME63ic9M6fK4u/IaA8csdlG2wtcjBvSYWrpWmPq0bWag==", "dev": true, "peer": true, "requires": { @@ -21689,10 +23532,35 @@ "url": "^0.11.0" } }, + "@rollup/plugin-node-resolve": { + "version": "13.3.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-13.3.0.tgz", + "integrity": "sha512-Lus8rbUo1eEcnS4yTFKLZrVumLPY+YayBdWXgFSHYhTT2iJbMhoaaBL3xl5NCdeRytErGr8tZ0L71BMRmnlwSw==", + "dev": true, + "requires": { + "@rollup/pluginutils": "^3.1.0", + "@types/resolve": "1.17.1", + "deepmerge": "^4.2.2", + "is-builtin-module": "^3.1.0", + "is-module": "^1.0.0", + "resolve": "^1.19.0" + } + }, + "@rollup/pluginutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", + "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", + "dev": true, + "requires": { + "@types/estree": "0.0.39", + "estree-walker": "^1.0.1", + "picomatch": "^2.2.2" + } + }, "@sinonjs/commons": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.3.tgz", - "integrity": "sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ==", + "version": "1.8.6", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz", + "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", "requires": { "type-detect": "4.0.8" } @@ -21750,9 +23618,9 @@ } }, "@types/babel__core": { - "version": "7.1.19", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.19.tgz", - "integrity": "sha512-WEOTgRsbYkvA/KCsDwVEGkd7WAr1e3g31VHQ8zy5gul/V1qKullU/BU5I68X5v7V3GnB9eotmom4v5a5gjxorw==", + "version": "7.1.20", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.20.tgz", + "integrity": "sha512-PVb6Bg2QuscZ30FvOU7z4guG6c926D9YRvOxEaelzndpMsvP+YM74Q/dAFASpg2l6+XLalxSGxcq/lrgYWZtyQ==", "requires": { "@babel/parser": "^7.1.0", "@babel/types": "^7.0.0", @@ -21779,9 +23647,9 @@ } }, "@types/babel__traverse": { - "version": "7.18.1", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.18.1.tgz", - "integrity": "sha512-FSdLaZh2UxaMuLp9lixWaHq/golWTRWOnRsAXzDTDSDOQLuZb1nsdCt6pJSPWSEQt2eFZ2YVk3oYhn+1kLMeMA==", + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.18.3.tgz", + "integrity": "sha512-1kbcJ40lLB7MHsj39U4Sh1uTd2E7rLEa79kmDpI6cy+XiXsteB3POdQomoq4FxszMrO3ZYchkhYJw7A2862b3w==", "requires": { "@babel/types": "^7.3.0" } @@ -21828,9 +23696,9 @@ "peer": true }, "@types/eslint": { - "version": "8.4.6", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.6.tgz", - "integrity": "sha512-/fqTbjxyFUaYNO7VcW5g+4npmqVACz1bB7RTHYuLj+PRjw9hrCwrUXVQFpChUS0JsyEFvMZ7U/PfmvWgxJhI9g==", + "version": "8.4.10", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.10.tgz", + "integrity": "sha512-Sl/HOqN8NKPmhWo2VBEPm0nvHnu2LL3v9vKo8MEq0EtbJ4eVzGPl41VNPvn5E1i5poMk4/XD8UriLHpJvEP/Nw==", "dev": true, "requires": { "@types/estree": "*", @@ -21838,9 +23706,9 @@ } }, "@types/estree": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.0.tgz", - "integrity": "sha512-WulqXMDUTYAXCjZnk6JtIHPigp55cVtDgDrO2gHRwhyJto21+1zbVCtOYB2L1F9w4qCQ0rOGWBnBe0FNTiEJIQ==", + "version": "0.0.39", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz", + "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==", "dev": true }, "@types/expect": { @@ -21850,9 +23718,9 @@ "dev": true }, "@types/glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@types/glob/-/glob-8.0.0.tgz", + "integrity": "sha512-l6NQsDDyQUVeoTynNpC9uRvCUint/gSUXQA2euwmTuWGvPY5LSDUu6tkCtJB2SvGQlJQzLaKqcGZP4//7EDveA==", "dev": true, "requires": { "@types/minimatch": "*", @@ -21878,106 +23746,14 @@ } }, "@types/gulp": { - "version": "4.0.9", - "resolved": "https://registry.npmjs.org/@types/gulp/-/gulp-4.0.9.tgz", - "integrity": "sha512-zzT+wfQ8uwoXjDhRK9Zkmmk09/fbLLmN/yDHFizJiEKIve85qutOnXcP/TM2sKPBTU+Jc16vfPbOMkORMUBN7Q==", + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/@types/gulp/-/gulp-4.0.10.tgz", + "integrity": "sha512-spgZHJFqiEJGwqGlf7T/k4nkBpBcLgP7T0EfN6G2vvnhUfvd4uO1h8RwpXOE8x/54DVYUs1XCAtBHkX/R3axAQ==", "dev": true, "requires": { - "@types/undertaker": "*", + "@types/undertaker": ">=1.2.6", "@types/vinyl-fs": "*", "chokidar": "^3.3.1" - }, - "dependencies": { - "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" - } - }, - "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 - }, - "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" - } - }, - "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" - } - }, - "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" - } - }, - "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 - }, - "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-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "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" - } - }, - "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" - } - } } }, "@types/gulp-less": { @@ -22045,9 +23821,9 @@ "dev": true }, "@types/minimatch": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-5.1.1.tgz", - "integrity": "sha512-v55NF6Dz0wrj14Rn8iEABTWrhYRmgkJYuokduunSiq++t3hZ9VZ6dvcDt+850Pm5sGJZk8RaHzkFCXPxVINZ+g==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-5.1.2.tgz", + "integrity": "sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==", "dev": true }, "@types/minimist": { @@ -22056,9 +23832,9 @@ "integrity": "sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==" }, "@types/node": { - "version": "18.0.6", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.0.6.tgz", - "integrity": "sha512-/xUq6H2aQm261exT6iZTMifUySEt4GR5KX8eYyY+C4MSNPqSh9oNIP7tz2GLKTlFaiBbgZNxffoR3CVRG+cljw==" + "version": "18.11.17", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.11.17.tgz", + "integrity": "sha512-HJSUJmni4BeDHhfzn6nF0sVmd1SMezP7/4F0Lq+aXzmp2xm9O7WXrUtHW/CHlYVtZUbByEvWidHqRtcJXGF2Ng==" }, "@types/normalize-package-data": { "version": "2.4.1", @@ -22073,14 +23849,23 @@ "peer": true }, "@types/prettier": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.0.tgz", - "integrity": "sha512-RI1L7N4JnW5gQw2spvL7Sllfuf1SaHdrZpCHiBlCXjIlufi1SMNnbu2teze3/QE67Fg2tBlH7W+mi4hVNk4p0A==" + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.2.tgz", + "integrity": "sha512-KufADq8uQqo1pYKVIYzfKbJfBAc0sOeXqGbFaSpv8MRmC/zXgowNZmFcbngndGk922QDmOASEXUZCaY48gs4cg==" + }, + "@types/resolve": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.17.1.tgz", + "integrity": "sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==", + "dev": true, + "requires": { + "@types/node": "*" + } }, "@types/simple-peer": { - "version": "9.11.4", - "resolved": "https://registry.npmjs.org/@types/simple-peer/-/simple-peer-9.11.4.tgz", - "integrity": "sha512-Elje14YvM47k+XEaoyRAeUSvZN7TOLWYL233QCckUaXjT4lRESHnYs0iOK2JoosO5DnCvWu/0Vpl9qnw4KCLWw==", + "version": "9.11.5", + "resolved": "https://registry.npmjs.org/@types/simple-peer/-/simple-peer-9.11.5.tgz", + "integrity": "sha512-haXgWcAa3Y3Sn+T8lzkE4ErQUpYzhW6Cz2lh00RhQTyWt+xZ3s87wJPztUxlqSdFRqGhe2MQIBd0XsyHP3No4w==", "dev": true, "requires": { "@types/node": "*" @@ -22115,9 +23900,9 @@ "dev": true }, "@types/vinyl": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/@types/vinyl/-/vinyl-2.0.6.tgz", - "integrity": "sha512-ayJ0iOCDNHnKpKTgBG6Q6JOnHTj9zFta+3j2b8Ejza0e4cvRyMn0ZoLEmbPrTHe5YYRlDYPvPWVdV4cTaRyH7g==", + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/@types/vinyl/-/vinyl-2.0.7.tgz", + "integrity": "sha512-4UqPv+2567NhMQuMLdKAyK4yzrfCqwaTt6bLhHEs8PFcxbHILsrxaY63n4wgE/BRLDWDQeI+WcTmkXKExh9hQg==", "dev": true, "requires": { "@types/expect": "^1.20.4", @@ -22136,9 +23921,9 @@ } }, "@types/yargs": { - "version": "17.0.12", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.12.tgz", - "integrity": "sha512-Nz4MPhecOFArtm81gFQvQqdV7XYCrWKx5uUt6GNHredFHn1i2mtWqXTON7EPXMtNi1qjtjEM/VCHDhcHsAMLXQ==", + "version": "17.0.17", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.17.tgz", + "integrity": "sha512-72bWxFKTK6uwWJAVT+3rF6Jo6RTojiJ27FQo8Rf60AL+VZbzoVPnMFhKsUnbjR8A3BTCYQ7Mv3hnl8T0A+CX9g==", "dev": true, "requires": { "@types/yargs-parser": "*" @@ -22163,6 +23948,32 @@ "regexpp": "^3.1.0", "semver": "^7.3.5", "tsutils": "^3.21.0" + }, + "dependencies": { + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + } } }, "@typescript-eslint/experimental-utils": { @@ -22220,6 +24031,32 @@ "is-glob": "^4.0.1", "semver": "^7.3.5", "tsutils": "^3.21.0" + }, + "dependencies": { + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + } } }, "@typescript-eslint/visitor-keys": { @@ -22334,13 +24171,6 @@ "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", "requires": { "type-fest": "^0.21.3" - }, - "dependencies": { - "type-fest": { - "version": "0.21.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", - "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==" - } } }, "ansi-gray": { @@ -22358,11 +24188,11 @@ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" }, "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "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": "^2.0.1" + "color-convert": "^1.9.0" } }, "ansi-wrap": { @@ -22382,118 +24212,12 @@ "dev": true }, "anymatch": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", - "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", - "dev": true, + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", "requires": { - "micromatch": "^3.1.4", - "normalize-path": "^2.1.1" - }, - "dependencies": { - "define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", - "dev": true, - "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - } - }, - "extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", - "dev": true, - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } - }, - "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" - } - }, - "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 - }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - }, - "normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==", - "dev": true, - "requires": { - "remove-trailing-separator": "^1.0.1" - } - } + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" } }, "append-buffer": { @@ -22558,6 +24282,12 @@ "util-deprecate": "~1.0.1" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -22849,6 +24579,51 @@ "chalk": "^4.0.0", "graceful-fs": "^4.2.9", "slash": "^3.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==", + "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==", + "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==", + "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==" + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "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==", + "requires": { + "has-flag": "^4.0.0" + } + } } }, "babel-plugin-istanbul": { @@ -22960,41 +24735,6 @@ "requires": { "is-descriptor": "^1.0.0" } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "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 } } }, @@ -23012,11 +24752,20 @@ } }, "binary-extensions": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", - "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", "dev": true }, + "binary-search-tree": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/binary-search-tree/-/binary-search-tree-0.2.5.tgz", + "integrity": "sha512-CvNVKS6iXagL1uGwLagSXz1hzSMezxOuGnFi5FHGKqaTO3nPPWrAbyALUzK640j+xOTVm7lzD9YP8W1f/gvUdw==", + "dev": true, + "requires": { + "underscore": "~1.4.4" + } + }, "binaryextensions": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/binaryextensions/-/binaryextensions-2.3.0.tgz", @@ -23042,6 +24791,18 @@ "buffer": "^5.5.0", "inherits": "^2.0.4", "readable-stream": "^3.4.0" + }, + "dependencies": { + "buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "dev": true, + "requires": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + } } }, "bn.js": { @@ -23059,21 +24820,11 @@ } }, "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" + "fill-range": "^7.0.1" } }, "brorand": { @@ -23108,6 +24859,11 @@ "util-deprecate": "~1.0.1" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -23195,20 +24951,6 @@ "xtend": "^4.0.0" }, "dependencies": { - "buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.2.1.tgz", - "integrity": "sha512-c+Ko0loDaFfuPWiL02ls9Xd3GO3cPVmUobQ6t3rXNUk304u6hGq+8N/kFi+QEIKhzK3uwolVhLzszmfLmMLnqg==", - "requires": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4" - } - }, - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==" - }, "readable-stream": { "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", @@ -23223,6 +24965,11 @@ "util-deprecate": "~1.0.1" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -23290,6 +25037,12 @@ "util-deprecate": "~1.0.1" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -23375,6 +25128,12 @@ "util-deprecate": "~1.0.1" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -23419,13 +25178,6 @@ "parse-asn1": "^5.1.5", "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==" - } } }, "browserify-zlib": { @@ -23437,14 +25189,14 @@ } }, "browserslist": { - "version": "4.21.3", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.3.tgz", - "integrity": "sha512-898rgRXLAyRkM1GryrrBHGkqA5hlpkV5MhtZwg9QXeiyLUYs2k00Un05aX5l2/yJIOObYKOpS2JNo8nJDE7fWQ==", + "version": "4.21.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.4.tgz", + "integrity": "sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==", "requires": { - "caniuse-lite": "^1.0.30001370", - "electron-to-chromium": "^1.4.202", + "caniuse-lite": "^1.0.30001400", + "electron-to-chromium": "^1.4.251", "node-releases": "^2.0.6", - "update-browserslist-db": "^1.0.5" + "update-browserslist-db": "^1.0.9" } }, "bs-logger": { @@ -23465,13 +25217,12 @@ } }, "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.2.1.tgz", + "integrity": "sha512-c+Ko0loDaFfuPWiL02ls9Xd3GO3cPVmUobQ6t3rXNUk304u6hGq+8N/kFi+QEIKhzK3uwolVhLzszmfLmMLnqg==", "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" + "base64-js": "^1.0.2", + "ieee754": "^1.1.4" } }, "buffer-crc32": { @@ -23481,9 +25232,9 @@ "dev": true }, "buffer-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/buffer-equal/-/buffer-equal-1.0.0.tgz", - "integrity": "sha512-tcBWO2Dl4e7Asr9hTGcpVrCe+F7DubpmqWCTbj4FHLmjqO2hIaC383acQubWtRJhdceqs5uBHs6Es+Sk//RKiQ==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/buffer-equal/-/buffer-equal-1.0.1.tgz", + "integrity": "sha512-QoV3ptgEaQpvVwbXdSO39iqPQTCxSF7A5U99AxbHYqUdCizL/lH2Z0A2y6nbZucxMEOtNyZfG2s6gsVugGpKkg==", "dev": true }, "buffer-from": { @@ -23513,6 +25264,12 @@ "wrench": "1.3.x" } }, + "builtin-modules": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz", + "integrity": "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==", + "dev": true + }, "builtin-status-codes": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", @@ -23543,10 +25300,23 @@ "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==", + "requires": { + "yallist": "^4.0.0" + } + }, "mkdirp": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==" + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" } } }, @@ -23602,9 +25372,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001385", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001385.tgz", - "integrity": "sha512-MpiCqJGhBkHgpyimE9GWmZTnyHyEEM35u115bD3QBrXpjvL/JgcP8cUhKJshfmg4OtEHFenifcK5sZayEw5tvQ==" + "version": "1.0.30001441", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001441.tgz", + "integrity": "sha512-OyxRR4Vof59I3yGWXws6i908EtGbMzVUi3ganaZQHmydk1iwDhRnvaPG2WaR0KcqrDFKrxVZHULT396LEPhXfg==" }, "caseless": { "version": "0.12.0", @@ -23612,12 +25382,13 @@ "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==" }, "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "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": "^4.1.0", - "supports-color": "^7.1.0" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" } }, "char-regex": { @@ -23626,46 +25397,19 @@ "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==" }, "chokidar": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", - "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", "dev": true, "requires": { - "anymatch": "^2.0.0", - "async-each": "^1.0.1", - "braces": "^2.3.2", - "fsevents": "^1.2.7", - "glob-parent": "^3.1.0", - "inherits": "^2.0.3", - "is-binary-path": "^1.0.0", - "is-glob": "^4.0.0", - "normalize-path": "^3.0.0", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.2.1", - "upath": "^1.1.1" - }, - "dependencies": { - "glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==", - "dev": true, - "requires": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - }, - "dependencies": { - "is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw==", - "dev": true, - "requires": { - "is-extglob": "^2.1.0" - } - } - } - } + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "fsevents": "~2.3.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" } }, "chownr": { @@ -23674,9 +25418,9 @@ "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==" }, "ci-info": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.3.2.tgz", - "integrity": "sha512-xmDt/QIAdeZ9+nfdPsaBCpMvHNLFiLdjj59qjqn+6iPe6YmHGQ35sBnQ8uslRBXFmXkiZQOJRjvQeoGppoTjjg==" + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.7.0.tgz", + "integrity": "sha512-2CpRNYmImPx+RXKLq6jko/L07phmS9I02TyqkcNU20GCF/GgaWvc58hPtjxDX8lPpkdwc9sNh72V9k00S7ezog==" }, "cipher-base": { "version": "1.0.4", @@ -23702,6 +25446,68 @@ "define-property": "^0.2.5", "isobject": "^3.0.0", "static-extend": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + } + } } }, "clean-stack": { @@ -23710,35 +25516,13 @@ "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==" }, "cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", "requires": { "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", + "strip-ansi": "^6.0.1", "wrap-ansi": "^7.0.0" - }, - "dependencies": { - "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==" - }, - "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==" - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - } } }, "clone": { @@ -23785,6 +25569,12 @@ "util-deprecate": "~1.0.1" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -23804,7 +25594,8 @@ "code-point-at": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha512-RpAVKQA5T63xEj6/giIbUEtZwJ4UFIc3ZtvEkiaUERylqe8xb5IvqcgOurZLahv93CLKfxcw5YI+DZcUBRyLXA==" + "integrity": "sha512-RpAVKQA5T63xEj6/giIbUEtZwJ4UFIc3ZtvEkiaUERylqe8xb5IvqcgOurZLahv93CLKfxcw5YI+DZcUBRyLXA==", + "dev": true }, "collect-v8-coverage": { "version": "1.0.1", @@ -23839,35 +25630,20 @@ "requires": { "color-convert": "^1.9.3", "color-string": "^1.6.0" - }, - "dependencies": { - "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": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" - } } }, "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==", + "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.4" + "color-name": "1.1.3" } }, "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==" + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" }, "color-string": { "version": "1.9.1", @@ -23907,11 +25683,6 @@ "version": "1.1.3", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.1.3.tgz", "integrity": "sha512-Y8L5rp6jo+g9VEPgvqNfEopjTR4OTYct8lXlS8iVQdmnjDvbdbzYe9rjtFCB9egC86JoNCU61WRY+ScjkZpnIg==" - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==" } } }, @@ -23929,6 +25700,12 @@ "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", "dev": true }, + "comment-parser": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.3.1.tgz", + "integrity": "sha512-B52sN2VNghyq5ofvUsqZjmk6YkihBX5vMSChmSK9v4ShjKf3Vk5Xcmgpw4o+iIgtrnM/u5FiMpz9VKb8lpBveA==", + "dev": true + }, "component-emitter": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", @@ -23977,6 +25754,11 @@ "util-deprecate": "~1.0.1" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -24003,12 +25785,9 @@ "integrity": "sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==" }, "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" - } + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==" }, "copy-anything": { "version": "2.0.6", @@ -24147,16 +25926,6 @@ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true - }, - "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" - } } } }, @@ -24259,9 +26028,9 @@ "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==" }, "decamelize-keys": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz", - "integrity": "sha512-ocLWuYzRPoS9bfiSdDd3cxvrzovVMZnRDVEzAs+hWIVXGDbHxWMECij2OBuyB/An0FFW/nLuq6Kv1i/YC5Qfzg==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.1.tgz", + "integrity": "sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==", "requires": { "decamelize": "^1.1.0", "map-obj": "^1.0.0" @@ -24275,14 +26044,14 @@ } }, "decimal.js": { - "version": "10.4.0", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.0.tgz", - "integrity": "sha512-Nv6ENEzyPQ6AItkGwLE2PGKinZZ9g59vSh2BeH6NqPu0OTKZ5ruJsVqh/orbAnqXc9pBbgXAIrc2EyaCj8NpGg==" + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", + "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==" }, "decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha512-hjf+xovcEn31w/EUYdTXQh/8smFL/dzYjohQGEIgjyNavaJfBY2p5F527Bo1VPATxv0VYTUC2bOcXvqFwk78Og==", + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz", + "integrity": "sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==", "dev": true }, "dedent": { @@ -24319,24 +26088,26 @@ "version": "1.1.4", "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", + "dev": true, "requires": { "has-property-descriptors": "^1.0.0", "object-keys": "^1.1.1" } }, "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", "dev": true, "requires": { - "is-descriptor": "^0.1.0" + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" } }, "defined": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz", - "integrity": "sha512-Y2caI5+ZwS5c3RiNDJ6u53VhQHv+hHKwhkI1iHvceKUHw9Df6EK2zRLfjejRgMuCuxK7PfSWIMwWecceVvThjQ==" + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.1.tgz", + "integrity": "sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q==" }, "delayed-stream": { "version": "1.0.0", @@ -24378,6 +26149,11 @@ "util-deprecate": "~1.0.1" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -24516,6 +26292,11 @@ "util-deprecate": "~1.0.1" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -24527,41 +26308,15 @@ } }, "duplexify": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", - "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-4.1.2.tgz", + "integrity": "sha512-fz3OjcNCHmRP12MJoZMPglx8m4rrFP8rovnk4vT8Fs+aonZoCwGg10dSsQsfP/E62eZcPTMSMP6686fu9Qlqtw==", "dev": true, "requires": { - "end-of-stream": "^1.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.0.0", + "end-of-stream": "^1.4.1", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1", "stream-shift": "^1.0.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" - } - } } }, "each-props": { @@ -24601,9 +26356,9 @@ } }, "electron-to-chromium": { - "version": "1.4.235", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.235.tgz", - "integrity": "sha512-eNU2SmVZYTzYVA5aAWmhAJbdVil5/8H5nMq6kGD0Yxd4k2uKIuT8YmS46I0QXY7iOoPPcb6jjem9/2xyuH5+XQ==" + "version": "1.4.284", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz", + "integrity": "sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==" }, "elliptic": { "version": "6.5.4", @@ -24631,6 +26386,11 @@ "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz", "integrity": "sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==" }, + "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==" + }, "enabled": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/enabled/-/enabled-2.0.0.tgz", @@ -24643,17 +26403,6 @@ "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==", - "optional": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - } - } } }, "end-of-stream": { @@ -24680,6 +26429,15 @@ "ws": "~8.2.3", "xmlhttprequest-ssl": "~2.0.0", "yeast": "0.1.2" + }, + "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": { @@ -24725,50 +26483,10 @@ "is-arrayish": "^0.2.1" } }, - "es-abstract": { - "version": "1.20.1", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.1.tgz", - "integrity": "sha512-WEm2oBhfoI2sImeM4OF2zE2V3BYdSF+KnSi9Sidz51fQHd7+JuF8Xgcj9/0o+OWeIeIS/MiuNnlruQrJf16GQA==", - "requires": { - "call-bind": "^1.0.2", - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "function.prototype.name": "^1.1.5", - "get-intrinsic": "^1.1.1", - "get-symbol-description": "^1.0.0", - "has": "^1.0.3", - "has-property-descriptors": "^1.0.0", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.3", - "is-callable": "^1.2.4", - "is-negative-zero": "^2.0.2", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "is-string": "^1.0.7", - "is-weakref": "^1.0.2", - "object-inspect": "^1.12.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.2", - "regexp.prototype.flags": "^1.4.3", - "string.prototype.trimend": "^1.0.5", - "string.prototype.trimstart": "^1.0.5", - "unbox-primitive": "^1.0.2" - } - }, - "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.61", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.61.tgz", - "integrity": "sha512-yFhIqQAzu2Ca2I4SE2Au3rxVfmohU9Y7wqGR+s7+H7krk26NXhIRAZDgqd6xqjCEFUomDEA3/Bo/7fKmIkW1kA==", + "version": "0.10.62", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.62.tgz", + "integrity": "sha512-BHLqn0klhEpnOKSrzn/Xsz2UIW8j+cGmo9JLzr8BiUapV8hPL9+FliFqjwr9ngW7jWdnxv6eO+/LqyhJVqgrjA==", "dev": true, "requires": { "es6-iterator": "^2.0.3", @@ -24821,10 +26539,9 @@ "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==" }, "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 + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==" }, "escodegen": { "version": "2.0.0", @@ -24838,6 +26555,11 @@ "source-map": "~0.6.1" }, "dependencies": { + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==" + }, "levn": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", @@ -24929,6 +26651,55 @@ "v8-compile-cache": "^2.0.3" }, "dependencies": { + "@babel/code-frame": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", + "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", + "dev": true, + "requires": { + "@babel/highlight": "^7.10.4" + } + }, + "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 + }, + "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-utils": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", @@ -24946,11 +26717,112 @@ } } }, + "globals": { + "version": "13.19.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.19.0.tgz", + "integrity": "sha512-dkQ957uSRWHw7CFXLUtUHQI3g3aWApYhfNR2O6jn/907riyTYKVBmxYVROkBcY614FSSeSJh7Xm7SrUWCxvJMQ==", + "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 + }, "ignore": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", "dev": true + }, + "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" + } + }, + "semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "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" + } + }, + "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 + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + } + } + }, + "eslint-plugin-jsdoc": { + "version": "39.6.4", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-39.6.4.tgz", + "integrity": "sha512-fskvdLCfwmPjHb6e+xNGDtGgbF8X7cDwMtVLAP2WwSf9Htrx68OAx31BESBM1FAwsN2HTQyYQq7m4aW4Q4Nlag==", + "dev": true, + "requires": { + "@es-joy/jsdoccomment": "~0.36.1", + "comment-parser": "1.3.1", + "debug": "^4.3.4", + "escape-string-regexp": "^4.0.0", + "esquery": "^1.4.0", + "semver": "^7.3.8", + "spdx-expression-parse": "^3.0.1" + }, + "dependencies": { + "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 + }, + "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" + } + }, + "semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true } } }, @@ -24962,14 +26834,6 @@ "requires": { "esrecurse": "^4.3.0", "estraverse": "^4.1.1" - }, - "dependencies": { - "estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true - } } }, "eslint-utils": { @@ -25018,6 +26882,14 @@ "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": { @@ -25027,12 +26899,27 @@ "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": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==" + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true + }, + "estree-walker": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", + "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==", + "dev": true }, "esutils": { "version": "2.0.3", @@ -25114,6 +27001,81 @@ "ms": "2.0.0" } }, + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "dev": true + }, "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", @@ -25143,18 +27105,18 @@ } }, "ext": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/ext/-/ext-1.6.0.tgz", - "integrity": "sha512-sdBImtzkq2HpkdRLtlLWDa6w4DX22ijZLKx8BMPUuKe1c5lbN6xwQDQCxSfxBQnHZ13ls/FH0MQZx/q/gr6FQg==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.7.0.tgz", + "integrity": "sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==", "dev": true, "requires": { - "type": "^2.5.0" + "type": "^2.7.2" }, "dependencies": { "type": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/type/-/type-2.6.0.tgz", - "integrity": "sha512-eiDBDOmkih5pMbo9OqsqPRGMljLodLcwd5XD5JbtNB0o89xZAwynY9EdCDsJU7LtcVCClu9DvM7/0Ep1hYX3EQ==", + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/type/-/type-2.7.2.tgz", + "integrity": "sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==", "dev": true } } @@ -25165,12 +27127,12 @@ "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" }, "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", - "dev": true, + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", "requires": { - "is-extendable": "^0.1.0" + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" } }, "extglob": { @@ -25198,39 +27160,19 @@ "is-descriptor": "^1.0.0" } }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", "dev": true, "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" + "is-extendable": "^0.1.0" } }, - "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==", + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", "dev": true } } @@ -25241,15 +27183,12 @@ "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==" }, "fancy-log": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.3.tgz", - "integrity": "sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-2.0.0.tgz", + "integrity": "sha512-9CzxZbACXMUXW13tS0tI8XsGGmxWzO2DmYrGuBJOJ8k8q2K7hwfJA5qHjuPPe8wtsco33YR9wc+Rlr5wYFvhSA==", "dev": true, "requires": { - "ansi-gray": "^0.1.1", - "color-support": "^1.1.3", - "parse-node-version": "^1.0.0", - "time-stamp": "^1.0.0" + "color-support": "^1.1.3" } }, "fast-deep-equal": { @@ -25258,9 +27197,9 @@ "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==", + "version": "3.2.12", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", + "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", "dev": true, "requires": { "@nodelib/fs.stat": "^2.0.2", @@ -25286,18 +27225,18 @@ "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==", + "version": "1.14.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.14.0.tgz", + "integrity": "sha512-eR2D+V9/ExcbF9ls441yIuN6TI2ED1Y2ZcA5BmMtJsOkWOFRJQ0Jt0g1UwqXJJVAb+V+umH5Dfr8oh4EVP7VVg==", "dev": true, "requires": { "reusify": "^1.0.4" } }, "fb-watchman": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.1.tgz", - "integrity": "sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", + "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", "requires": { "bser": "2.1.1" } @@ -25324,15 +27263,20 @@ "optional": true }, "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==", - "dev": true, + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" + "to-regex-range": "^5.0.1" + } + }, + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" } }, "findup-sync": { @@ -25347,71 +27291,82 @@ "resolve-dir": "^1.0.1" }, "dependencies": { - "define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", - "dev": true, - "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - } - }, - "extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", - "dev": true, - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", "dev": true, "requires": { - "kind-of": "^6.0.0" + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } } }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==", "dev": true, "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } } }, "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "dev": true }, - "is-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==", + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", "dev": true, "requires": { - "isobject": "^3.0.1" + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } } }, "kind-of": { @@ -25440,6 +27395,16 @@ "snapdragon": "^0.8.1", "to-regex": "^3.0.2" } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } } } }, @@ -25491,6 +27456,12 @@ "util-deprecate": "~1.0.1" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -25519,9 +27490,9 @@ } }, "flatted": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.6.tgz", - "integrity": "sha512-0sQoMh9s0BYsm+12Huy/rkKxVu4R1+r96YX5cG44rHV0pQ6iC3Q+mkoMFaGWObMFYQxCVT+ssG1ksneA2MI9KQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", + "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", "dev": true }, "flush-write-stream": { @@ -25549,6 +27520,12 @@ "util-deprecate": "~1.0.1" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -25618,6 +27595,12 @@ "map-cache": "^0.2.2" } }, + "fs": { + "version": "0.0.1-security", + "resolved": "https://registry.npmjs.org/fs/-/fs-0.0.1-security.tgz", + "integrity": "sha512-3XY9e1pP0CVEUCdj5BmfIZxRBTSDycnbqhIOGec9QYtmVH2fbLpj86CFWkrNOkt/Fvty4KZG5lTglL9j/gJ87w==", + "dev": true + }, "fs-constants": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", @@ -25657,6 +27640,12 @@ "util-deprecate": "~1.0.1" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -25684,43 +27673,22 @@ "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" }, "fsevents": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", - "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", - "dev": true, - "optional": true, - "requires": { - "bindings": "^1.5.0", - "nan": "^2.12.1" - } + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "optional": true }, "function-bind": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" }, - "function.prototype.name": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", - "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.0", - "functions-have-names": "^1.2.2" - } - }, "functional-red-black-tree": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", "integrity": "sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==", "dev": true }, - "functions-have-names": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==" - }, "gauge": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz", @@ -25735,28 +27703,6 @@ "string-width": "^4.2.3", "strip-ansi": "^6.0.1", "wide-align": "^1.1.2" - }, - "dependencies": { - "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==" - }, - "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==" - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - } } }, "gaze": { @@ -25783,9 +27729,9 @@ "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==" }, "get-intrinsic": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.2.tgz", - "integrity": "sha512-Jfm3OyCxHh9DJyc28qGk+JmfkpO41A4XkneDSujN9MDXrm4oDKdHvndhZ2dN94+ERNfkYJWDclW6k2L/ZGHjXA==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.3.tgz", + "integrity": "sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==", "requires": { "function-bind": "^1.1.1", "has": "^1.0.3", @@ -25807,15 +27753,6 @@ "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==" }, - "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" - } - }, "get-value": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", @@ -25904,6 +27841,12 @@ "util-deprecate": "~1.0.1" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -25928,6 +27871,252 @@ "just-debounce": "^1.0.0", "normalize-path": "^3.0.0", "object.defaults": "^1.1.0" + }, + "dependencies": { + "anymatch": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", + "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "dev": true, + "requires": { + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" + }, + "dependencies": { + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==", + "dev": true, + "requires": { + "remove-trailing-separator": "^1.0.1" + } + } + } + }, + "binary-extensions": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", + "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", + "dev": true + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "chokidar": { + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", + "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", + "dev": true, + "requires": { + "anymatch": "^2.0.0", + "async-each": "^1.0.1", + "braces": "^2.3.2", + "fsevents": "^1.2.7", + "glob-parent": "^3.1.0", + "inherits": "^2.0.3", + "is-binary-path": "^1.0.0", + "is-glob": "^4.0.0", + "normalize-path": "^3.0.0", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.2.1", + "upath": "^1.1.1" + } + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "fsevents": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", + "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", + "dev": true, + "optional": true, + "requires": { + "bindings": "^1.5.0", + "nan": "^2.12.1" + } + }, + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==", + "dev": true, + "requires": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + }, + "dependencies": { + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw==", + "dev": true, + "requires": { + "is-extglob": "^2.1.0" + } + } + } + }, + "is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", + "integrity": "sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q==", + "dev": true, + "requires": { + "binary-extensions": "^1.0.0" + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "dev": true + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + }, + "dependencies": { + "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 + } + } + }, + "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" + } + }, + "readdirp": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", + "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + } } }, "global-modules": { @@ -25966,13 +28155,9 @@ } }, "globals": { - "version": "13.17.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.17.0.tgz", - "integrity": "sha512-1C+6nQRb1GwGMKm2dH/E7enFAMxGTmGI7/dEdhy/DNelv85w9B72t3uc5frtMNXIbzrarJJ/lTCjcaZwbLJmyw==", - "dev": true, - "requires": { - "type-fest": "^0.20.2" - } + "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": "11.1.0", @@ -26030,6 +28215,14 @@ "sparkles": "^1.0.0" } }, + "gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "requires": { + "get-intrinsic": "^1.1.3" + } + }, "graceful-fs": { "version": "4.2.10", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", @@ -26162,16 +28355,6 @@ } } }, - "buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.2.1.tgz", - "integrity": "sha512-c+Ko0loDaFfuPWiL02ls9Xd3GO3cPVmUobQ6t3rXNUk304u6hGq+8N/kFi+QEIKhzK3uwolVhLzszmfLmMLnqg==", - "dev": true, - "requires": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4" - } - }, "concat-stream": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", @@ -26190,11 +28373,17 @@ "integrity": "sha512-3Zmiobend8P9DjmKAty0Era4jV8oJ0yGYe2nJJAxgymF9+N8F2m0hhZiMoWtcfepExzNKZumFU3ksdQbInGWCg==", "dev": true }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", - "dev": true + "fancy-log": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.3.tgz", + "integrity": "sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw==", + "dev": true, + "requires": { + "ansi-gray": "^0.1.1", + "color-support": "^1.1.3", + "parse-node-version": "^1.0.0", + "time-stamp": "^1.0.0" + } }, "path-browserify": { "version": "0.0.1", @@ -26202,10 +28391,10 @@ "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==", "dev": true }, - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==", + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", "dev": true }, "stream-browserify": { @@ -26244,6 +28433,16 @@ "safe-buffer": "~5.1.0" } }, + "through2": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz", + "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==", + "dev": true, + "requires": { + "inherits": "^2.0.4", + "readable-stream": "2 || 3" + } + }, "util": { "version": "0.10.4", "resolved": "https://registry.npmjs.org/util/-/util-0.10.4.tgz", @@ -26251,6 +28450,14 @@ "dev": true, "requires": { "inherits": "2.0.3" + }, + "dependencies": { + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", + "dev": true + } } } } @@ -26266,6 +28473,18 @@ "replace-ext": "^1.0.0", "through2": "^3.0.1", "touch": "^3.1.0" + }, + "dependencies": { + "through2": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz", + "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==", + "dev": true, + "requires": { + "inherits": "^2.0.4", + "readable-stream": "2 || 3" + } + } } }, "gulp-cli": { @@ -26326,18 +28545,119 @@ "wrap-ansi": "^2.0.0" } }, + "fancy-log": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.3.tgz", + "integrity": "sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw==", + "dev": true, + "requires": { + "ansi-gray": "^0.1.1", + "color-support": "^1.1.3", + "parse-node-version": "^1.0.0", + "time-stamp": "^1.0.0" + } + }, + "find-up": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha512-jvElSjyuo4EMQGoTwo1uJU5pQMwTW5lS1x05zzfJuTIyLR3zwO27LYrxNg+dlvKpGOuGy/MzBdXh80g0ve5+HA==", + "dev": true, + "requires": { + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, "get-caller-file": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", "dev": true }, - "require-main-filename": { + "hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, + "requires": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "path-exists": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha512-yTltuKuhtNeFJKa1PiRzfLAU5182q1y4Eb4XCJ3PBqyzEDkAZRzBrKKBct682ls9reBVHf9udYLN5Nd+K1B9BQ==", + "dev": true, + "requires": { + "pinkie-promise": "^2.0.0" + } + }, + "path-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha512-S4eENJz1pkiQn9Znv33Q+deTOKmbl+jj1Fl+qiP/vYezj+S8x+J3Uo0ISrx/QoEvIlOaDWJhPaRd1flJ9HXZqg==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "read-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha512-7BGwRHqt4s/uVbuyoeejRn4YmFnYZiFl4AuaeXHlgZf3sONF0SOGlxs2Pw8g6hCKupo08RafIO5YXFNOKTfwsQ==", + "dev": true, + "requires": { + "load-json-file": "^1.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^1.0.0" + } + }, + "read-pkg-up": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", - "integrity": "sha512-IqSUtOVP4ksd1C/ej5zeEh/BIP2ajqpn8c5x+q99gvcIG/Qf0cud5raVnE/Dwd0ua9TXYDoDc0RE5hBSdz22Ug==", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", + "integrity": "sha512-WD9MTlNtI55IwYUS27iHh9tK3YoIVhxis8yKhLpTqWtml739uXc9NWTpxoHkfZf3+DkCCsXox94/VWZniuZm6A==", + "dev": true, + "requires": { + "find-up": "^1.0.0", + "read-pkg": "^1.0.0" + } + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "dev": true }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==", + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, "strip-ansi": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", @@ -26347,12 +28667,6 @@ "ansi-regex": "^2.0.0" } }, - "which-module": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", - "integrity": "sha512-F6+WgncZi/mJDrammbTuHe1q0R5hOXv/mBaiNA2TCNT/LTHusX0V+CJnj9XT8ki5ln2UZyyddDgHfCzyrOH7MQ==", - "dev": true - }, "wrap-ansi": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", @@ -26403,31 +28717,31 @@ } }, "gulp-eslint-new": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/gulp-eslint-new/-/gulp-eslint-new-1.5.1.tgz", - "integrity": "sha512-LMRfS7YAdY8oLSEhqHDzJgDubedl8KN/Fo8QOQnSM2adN7h/KCj+GkFS9S934VE+q3Q9uPvzYAKwXKXOiB2PnQ==", + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/gulp-eslint-new/-/gulp-eslint-new-1.7.1.tgz", + "integrity": "sha512-moP6Q/ecxm40ZyMFw9qoC6poqt3Y2C1HcoUDRH2+b9UJu0/3BnOciRDgerm1DH5oh0dSPlP0/uZ6dFEAkYdSOw==", "dev": true, "requires": { - "@types/eslint": "^8.4.3", - "@types/node": "^17.0.42", + "@types/eslint": "^8.4.10", + "@types/node": ">=12", "eslint": "8", "fancy-log": "^2.0.0", - "plugin-error": "^1.0.1", - "semver": "^7.3.7", + "plugin-error": "^2.0.0", + "semver": "^7.3.8", "ternary-stream": "^3.0.0", "vinyl-fs": "^3.0.3" }, "dependencies": { "@eslint/eslintrc": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.3.1.tgz", - "integrity": "sha512-OhSY22oQQdw3zgPOOwdoj01l/Dzl1Z+xyUP33tkSN+aqyEhymJCcPHyXt+ylW8FSe0TfRC2VG+ROQOapD0aZSQ==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.4.0.tgz", + "integrity": "sha512-7yfvXy6MWLgWSFsLhz5yH3iQ52St8cdUY6FoGieKkRDVxuxmrNuUetIuu6cmjNWwniUHiWXjxCr5tTXDrbYS5A==", "dev": true, "requires": { "ajv": "^6.12.4", "debug": "^4.3.2", "espree": "^9.4.0", - "globals": "^13.15.0", + "globals": "^13.19.0", "ignore": "^5.2.0", "import-fresh": "^3.2.1", "js-yaml": "^4.1.0", @@ -26436,44 +28750,87 @@ } }, "@humanwhocodes/config-array": { - "version": "0.10.4", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.10.4.tgz", - "integrity": "sha512-mXAIHxZT3Vcpg83opl1wGlVZ9xydbfZO3r5YfRSH6Gpp2J/PfdBP0wbDa2sO6/qRbcalpoevVyW6A/fI6LfeMw==", + "version": "0.11.8", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", + "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==", "dev": true, "requires": { "@humanwhocodes/object-schema": "^1.2.1", "debug": "^4.1.1", - "minimatch": "^3.0.4" + "minimatch": "^3.0.5" } }, - "@types/node": { - "version": "17.0.45", - "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.45.tgz", - "integrity": "sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==", - "dev": true - }, "acorn": { - "version": "8.8.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.0.tgz", - "integrity": "sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==", + "version": "8.8.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz", + "integrity": "sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==", "dev": true }, + "ansi-colors": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-1.1.0.tgz", + "integrity": "sha512-SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA==", + "dev": true, + "requires": { + "ansi-wrap": "^0.1.0" + } + }, + "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": { - "version": "8.23.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.23.0.tgz", - "integrity": "sha512-pBG/XOn0MsJcKcTRLr27S5HpzQo4kLr+HjLQIyK4EiCsijDl/TB+h5uEuJU6bQ8Edvwz1XWOjpaP2qgnXGpTcA==", + "version": "8.30.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.30.0.tgz", + "integrity": "sha512-MGADB39QqYuzEGov+F/qb18r4i7DohCDOfatHaxI2iGlPuC65bwG2gxgO+7DkyL38dRFaRH7RaRAgU6JKL9rMQ==", "dev": true, "requires": { - "@eslint/eslintrc": "^1.3.1", - "@humanwhocodes/config-array": "^0.10.4", - "@humanwhocodes/gitignore-to-minimatch": "^1.0.2", + "@eslint/eslintrc": "^1.4.0", + "@humanwhocodes/config-array": "^0.11.8", "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", "ajv": "^6.10.0", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", @@ -26489,15 +28846,15 @@ "fast-deep-equal": "^3.1.3", "file-entry-cache": "^6.0.1", "find-up": "^5.0.0", - "functional-red-black-tree": "^1.0.1", - "glob-parent": "^6.0.1", - "globals": "^13.15.0", - "globby": "^11.1.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", "grapheme-splitter": "^1.0.4", "ignore": "^5.2.0", "import-fresh": "^3.0.0", "imurmurhash": "^0.1.4", "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-sdsl": "^4.1.4", "js-yaml": "^4.1.0", "json-stable-stringify-without-jsonify": "^1.0.1", "levn": "^0.4.1", @@ -26528,9 +28885,9 @@ "dev": true }, "espree": { - "version": "9.4.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.0.tgz", - "integrity": "sha512-DQmnRpLj7f6TgN/NYb0MTzJXL+vJF9h3pHy4JhCIs3zwcgez8xmGg3sXHcEO97BrmO2OSvCwMdfdlyl+E9KjOw==", + "version": "9.4.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.1.tgz", + "integrity": "sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==", "dev": true, "requires": { "acorn": "^8.8.0", @@ -26538,14 +28895,11 @@ "eslint-visitor-keys": "^3.3.0" } }, - "fancy-log": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-2.0.0.tgz", - "integrity": "sha512-9CzxZbACXMUXW13tS0tI8XsGGmxWzO2DmYrGuBJOJ8k8q2K7hwfJA5qHjuPPe8wtsco33YR9wc+Rlr5wYFvhSA==", - "dev": true, - "requires": { - "color-support": "^1.1.3" - } + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true }, "find-up": { "version": "5.0.0", @@ -26566,6 +28920,21 @@ "is-glob": "^4.0.3" } }, + "globals": { + "version": "13.19.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.19.0.tgz", + "integrity": "sha512-dkQ957uSRWHw7CFXLUtUHQI3g3aWApYhfNR2O6jn/907riyTYKVBmxYVROkBcY614FSSeSJh7Xm7SrUWCxvJMQ==", + "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", @@ -26584,6 +28953,15 @@ "p-locate": "^5.0.0" } }, + "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" + } + }, "p-limit": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", @@ -26602,14 +28980,72 @@ "p-limit": "^3.0.2" } }, - "path-exists": { + "plugin-error": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-2.0.1.tgz", + "integrity": "sha512-zMakqvIDyY40xHOvzXka0kUvf40nYIuwRE8dWhti2WtjQZ31xAgBZBhxsK7vK3QbRXS1Xms/LO7B5cuAsfB2Gg==", + "dev": true, + "requires": { + "ansi-colors": "^1.0.1" + } + }, + "semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "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" + } + }, + "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 + }, + "yallist": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "dev": true } } }, + "gulp-eslint7": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/gulp-eslint7/-/gulp-eslint7-0.3.2.tgz", + "integrity": "sha512-zDb/sz8sXmP2jv6BTM9mH1DhoOX7nq5Q3ESHelqw+Fqd7lbU0GoOUVte3NvpqP+oWaGn2+t0AKEs0kXEQRMUIw==", + "dev": true, + "requires": { + "eslint": "^7.32.0", + "fancy-log": "^1.3.3", + "plugin-error": "^1.0.1" + }, + "dependencies": { + "fancy-log": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.3.tgz", + "integrity": "sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw==", + "dev": true, + "requires": { + "ansi-gray": "^0.1.1", + "color-support": "^1.1.3", + "parse-node-version": "^1.0.0", + "time-stamp": "^1.0.0" + } + } + } + }, "gulp-git": { "version": "2.10.1", "resolved": "https://registry.npmjs.org/gulp-git/-/gulp-git-2.10.1.tgz", @@ -26626,6 +29062,18 @@ "vinyl": "^2.0.1" }, "dependencies": { + "fancy-log": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.3.tgz", + "integrity": "sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw==", + "dev": true, + "requires": { + "ansi-gray": "^0.1.1", + "color-support": "^1.1.3", + "parse-node-version": "^1.0.0", + "time-stamp": "^1.0.0" + } + }, "readable-stream": { "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", @@ -26641,6 +29089,12 @@ "util-deprecate": "~1.0.1" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -26662,6 +29116,29 @@ } } }, + "gulp-if": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/gulp-if/-/gulp-if-3.0.0.tgz", + "integrity": "sha512-fCUEngzNiEZEK2YuPm+sdMpO6ukb8+/qzbGfJBXyNOXz85bCG7yBI+pPSl+N90d7gnLvMsarthsAImx0qy7BAw==", + "dev": true, + "requires": { + "gulp-match": "^1.1.0", + "ternary-stream": "^3.0.0", + "through2": "^3.0.1" + }, + "dependencies": { + "through2": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz", + "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==", + "dev": true, + "requires": { + "inherits": "^2.0.4", + "readable-stream": "2 || 3" + } + } + } + }, "gulp-jest": { "version": "4.0.4", "resolved": "https://registry.npmjs.org/gulp-jest/-/gulp-jest-4.0.4.tgz", @@ -26669,6 +29146,17 @@ "requires": { "plugin-error": "^1.0.1", "through2": "^3.0.1" + }, + "dependencies": { + "through2": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz", + "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==", + "requires": { + "inherits": "^2.0.4", + "readable-stream": "2 || 3" + } + } } }, "gulp-less": { @@ -26690,18 +29178,18 @@ "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-2.0.0.tgz", "integrity": "sha512-UszKE5KVK6JvyD92nzMn9cDapSk6w/CaFZ96CnmDMUqH9oowfxF/ZjRITD25H4DnOQClLA4/j7jLGXXLVKxAug==", "dev": true - }, - "through2": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz", - "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==", - "dev": true, - "requires": { - "readable-stream": "3" - } } } }, + "gulp-match": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/gulp-match/-/gulp-match-1.1.0.tgz", + "integrity": "sha512-DlyVxa1Gj24DitY2OjEsS+X6tDpretuxD6wTfhXE/Rw2hweqc1f6D/XtsJmoiCwLWfXgR87W9ozEityPCVzGtQ==", + "dev": true, + "requires": { + "minimatch": "^3.0.3" + } + }, "gulp-rename": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/gulp-rename/-/gulp-rename-2.0.0.tgz", @@ -26709,24 +29197,16 @@ "dev": true }, "gulp-replace": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/gulp-replace/-/gulp-replace-1.1.3.tgz", - "integrity": "sha512-HcPHpWY4XdF8zxYkDODHnG2+7a3nD/Y8Mfu3aBgMiCFDW3X2GiOKXllsAmILcxe3KZT2BXoN18WrpEFm48KfLQ==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/gulp-replace/-/gulp-replace-1.1.4.tgz", + "integrity": "sha512-SVSF7ikuWKhpAW4l4wapAqPPSToJoiNKsbDoUnRrSgwZHH7lH8pbPeQj1aOVYQrbZKhfSVBxVW+Py7vtulRktw==", "dev": true, "requires": { - "@types/node": "^14.14.41", + "@types/node": "*", "@types/vinyl": "^2.0.4", "istextorbinary": "^3.0.0", "replacestream": "^4.0.3", "yargs-parser": ">=5.0.0-security.0" - }, - "dependencies": { - "@types/node": { - "version": "14.18.22", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.22.tgz", - "integrity": "sha512-qzaYbXVzin6EPjghf/hTdIbnVW1ErMx8rPzwRNJhlbyJhu2SyqlvjGOY/tbUt6VFyzg56lROcOeSQRInpt63Yw==", - "dev": true - } } }, "gulp-sass": { @@ -26791,6 +29271,12 @@ "util-deprecate": "~1.0.1" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -26830,6 +29316,24 @@ "through2": "^3.0.1", "vinyl": "^2.2.0", "vinyl-fs": "^3.0.3" + }, + "dependencies": { + "source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true + }, + "through2": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz", + "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==", + "dev": true, + "requires": { + "inherits": "^2.0.4", + "readable-stream": "2 || 3" + } + } } }, "gulp-uglify": { @@ -26850,34 +29354,6 @@ "vinyl-sourcemaps-apply": "^0.2.0" }, "dependencies": { - "extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", - "dev": true, - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - } - }, - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } - }, - "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" - } - }, "readable-stream": { "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", @@ -26893,6 +29369,12 @@ "util-deprecate": "~1.0.1" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -26913,9 +29395,9 @@ } }, "uglify-js": { - "version": "3.17.0", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.17.0.tgz", - "integrity": "sha512-aTeNPVmgIMPpm1cxXr2Q/nEbvkmV8yq66F3om7X3P/cvOXQ0TMQ64Wk63iyT1gPlmdmGzjGpyLh1f3y8MZWXGg==", + "version": "3.17.4", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.17.4.tgz", + "integrity": "sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==", "dev": true } } @@ -26949,9 +29431,9 @@ "dev": true }, "uglify-js": { - "version": "3.16.2", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.16.2.tgz", - "integrity": "sha512-AaQNokTNgExWrkEYA24BTNMSjyqEXPSfhqoS0AxmHkCJ4U+Dyy5AvbGV/sqxuxficEfGGoX3zWw9R7QpLFfEsg==", + "version": "3.17.4", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.17.4.tgz", + "integrity": "sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==", "dev": true, "optional": true } @@ -26984,11 +29466,6 @@ "function-bind": "^1.1.1" } }, - "has-bigints": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", - "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==" - }, "has-cors": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/has-cors/-/has-cors-1.1.0.tgz", @@ -26996,9 +29473,9 @@ "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==" + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==" }, "has-gulplog": { "version": "0.1.0", @@ -27013,6 +29490,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "dev": true, "requires": { "get-intrinsic": "^1.1.1" } @@ -27056,6 +29534,26 @@ "kind-of": "^4.0.0" }, "dependencies": { + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, "kind-of": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", @@ -27075,13 +29573,6 @@ "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": { @@ -27113,10 +29604,27 @@ } }, "hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "dev": true + "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==", + "requires": { + "lru-cache": "^6.0.0" + }, + "dependencies": { + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "requires": { + "yallist": "^4.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } + } }, "html-encoding-sniffer": { "version": "2.0.1", @@ -27189,11 +29697,12 @@ } }, "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "optional": true, "requires": { - "safer-buffer": ">= 2.1.2 < 3" + "safer-buffer": ">= 2.1.2 < 3.0.0" } }, "ieee754": { @@ -27202,9 +29711,9 @@ "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==", + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", + "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", "dev": true }, "image-size": { @@ -27214,10 +29723,16 @@ "dev": true, "optional": true }, + "immediate": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", + "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==", + "dev": true + }, "immutable": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.1.0.tgz", - "integrity": "sha512-oNkuqVTA8jqG1Q6c+UglTOD1xhC1BtjKI7XkCXRkZHrN5m18/XsnUp8Q89GkQO/z+0WjonSvl0FLhDYftp46nQ==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.2.1.tgz", + "integrity": "sha512-7WYV7Q5BTs0nlQm7tl92rDYYoyELLKHoDMBKhrxEoiV4mrfVdRz8hzPiYOzH7yWjzoVEamxRuAqhxL2PLRwZYQ==", "dev": true }, "import-fresh": { @@ -27285,13 +29800,6 @@ "integrity": "sha512-0mVWSSbNDvedDWIN4wxLsdPM4a7cIPcpyMxj3QZ406QRwQ6ePGB1YIHxVPjqpcUGbWQ5C+nHTwGNWAGvt7ggVA==", "requires": { "source-map": "~0.5.3" - }, - "dependencies": { - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==" - } } }, "insert-module-globals": { @@ -27325,6 +29833,11 @@ "util-deprecate": "~1.0.1" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -27344,16 +29857,6 @@ } } }, - "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" - } - }, "interpret": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", @@ -27382,22 +29885,19 @@ } }, "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "dev": true, "requires": { - "kind-of": "^3.0.2" + "kind-of": "^6.0.0" }, "dependencies": { "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } + "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 } } }, @@ -27415,30 +29915,13 @@ "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" }, - "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": "1.0.1", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "integrity": "sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q==", + "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": "^1.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" + "binary-extensions": "^2.0.0" } }, "is-buffer": { @@ -27446,63 +29929,81 @@ "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" }, + "is-builtin-module": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.0.tgz", + "integrity": "sha512-phDA4oSGt7vl1n5tJvTWooWWAsXLY+2xCnxNqvKhGEzujg+A43wPlPOyDg3C8XQHN+6k/JTQWJ/j0dQh/qr+Hw==", + "dev": true, + "requires": { + "builtin-modules": "^3.3.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==" + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==" }, "is-core-module": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz", - "integrity": "sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", + "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", "requires": { "has": "^1.0.3" } }, "is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "dev": true, "requires": { - "kind-of": "^3.0.2" + "kind-of": "^6.0.0" }, "dependencies": { "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } + "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 } } }, - "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-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "dev": true, "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + }, + "dependencies": { + "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 + } } }, "is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", - "dev": true + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "requires": { + "is-plain-object": "^2.0.4" + }, + "dependencies": { + "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==", + "requires": { + "isobject": "^3.0.1" + } + } + } }, "is-extglob": { "version": "2.1.1", @@ -27511,12 +30012,9 @@ "dev": true }, "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==", - "requires": { - "number-is-nan": "^1.0.0" - } + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" }, "is-generator-fn": { "version": "2.1.0", @@ -27545,44 +30043,28 @@ "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==" }, + "is-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", + "integrity": "sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==", + "dev": true + }, "is-negated-glob": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-negated-glob/-/is-negated-glob-1.0.0.tgz", "integrity": "sha512-czXVVn/QEmgvej1f50BZ648vUI+em0xqMq2Sn+QncCLN4zj1UAxlT+kw/6ggQTOaZPd1HqKQGEqbpQVtJucWug==", "dev": true }, - "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": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" }, - "is-number-object": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", - "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", - "requires": { - "has-tostringtag": "^1.0.0" - } + "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": "1.1.0", @@ -27606,15 +30088,6 @@ "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==", "dev": true }, - "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-relative": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz", @@ -27624,44 +30097,20 @@ "is-unc-path": "^1.0.0" } }, - "is-shared-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", - "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", - "requires": { - "call-bind": "^1.0.2" - } - }, "is-stream": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==" }, - "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.9", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.9.tgz", - "integrity": "sha512-kfrlnTTn8pZkfpJMUgYD7YZ3qzeJgWUn8XfVYBARc4wnmNOmLbmuuaAs3q5fvB0UJOn6yHAKaGTPM7d6ezoD/A==", + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.10.tgz", + "integrity": "sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==", "requires": { "available-typed-arrays": "^1.0.5", "call-bind": "^1.0.2", - "es-abstract": "^1.20.0", "for-each": "^0.3.3", + "gopd": "^1.0.1", "has-tostringtag": "^1.0.0" } }, @@ -27690,14 +30139,6 @@ "integrity": "sha512-AhiROmoEFDSsjx8hW+5sGwgKVIORcXnrlAx/R0ZSeaPw70Vw0CqkGBBhHGL58Uox2eXnU1AnvXJl1XlyedO5bA==", "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", @@ -27742,22 +30183,15 @@ "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==" }, "istanbul-lib-instrument": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.0.tgz", - "integrity": "sha512-6Lthe1hqXHBNsqvgDzGO6l03XNeu3CrG4RqQ1KM9+l5+jNGpEJfIELx1NS3SEHmJQA8np/u+E4EPRKRiu6m19A==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", "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==" - } } }, "istanbul-lib-report": { @@ -27768,6 +30202,21 @@ "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==" + }, + "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==", + "requires": { + "has-flag": "^4.0.0" + } + } } }, "istanbul-lib-source-maps": { @@ -27850,6 +30299,51 @@ "slash": "^3.0.0", "stack-utils": "^2.0.3", "throat": "^6.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==", + "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==", + "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==", + "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==" + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "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==", + "requires": { + "has-flag": "^4.0.0" + } + } } }, "jest-cli": { @@ -27871,24 +30365,57 @@ "yargs": "^16.2.0" }, "dependencies": { - "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==" + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "requires": { + "color-convert": "^2.0.1" + } }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } }, - "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==", + "cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.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==", + "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==" + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "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==", "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" + "has-flag": "^4.0.0" } }, "yargs": { @@ -27943,15 +30470,47 @@ "strip-json-comments": "^3.1.1" }, "dependencies": { - "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==", + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "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==", + "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==", + "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==" + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "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==", "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" + "has-flag": "^4.0.0" } } } @@ -27965,6 +30524,51 @@ "diff-sequences": "^27.5.1", "jest-get-type": "^27.5.1", "pretty-format": "^27.5.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==", + "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==", + "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==", + "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==" + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "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==", + "requires": { + "has-flag": "^4.0.0" + } + } } }, "jest-docblock": { @@ -27992,6 +30596,51 @@ "jest-get-type": "^27.5.1", "jest-util": "^27.5.1", "pretty-format": "^27.5.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==", + "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==", + "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==", + "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==" + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "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==", + "requires": { + "has-flag": "^4.0.0" + } + } } }, "jest-environment-jsdom": { @@ -28044,23 +30693,6 @@ "jest-worker": "^27.5.1", "micromatch": "^4.0.4", "walker": "^1.0.7" - }, - "dependencies": { - "anymatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", - "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "optional": true - } } }, "jest-jasmine2": { @@ -28085,6 +30717,51 @@ "jest-util": "^27.5.1", "pretty-format": "^27.5.1", "throat": "^6.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==", + "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==", + "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==", + "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==" + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "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==", + "requires": { + "has-flag": "^4.0.0" + } + } } }, "jest-leak-detector": { @@ -28105,6 +30782,51 @@ "jest-diff": "^27.5.1", "jest-get-type": "^27.5.1", "pretty-format": "^27.5.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==", + "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==", + "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==", + "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==" + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "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==", + "requires": { + "has-flag": "^4.0.0" + } + } } }, "jest-message-util": { @@ -28123,12 +30845,47 @@ "stack-utils": "^2.0.3" }, "dependencies": { - "@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "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==", + "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==", + "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==" + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "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==", "requires": { - "@babel/highlight": "^7.18.6" + "has-flag": "^4.0.0" } } } @@ -28143,9 +30900,9 @@ } }, "jest-pnp-resolver": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz", - "integrity": "sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", "requires": {} }, "jest-regex-util": { @@ -28168,6 +30925,51 @@ "resolve": "^1.20.0", "resolve.exports": "^1.1.0", "slash": "^3.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==", + "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==", + "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==", + "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==" + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "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==", + "requires": { + "has-flag": "^4.0.0" + } + } } }, "jest-resolve-dependencies": { @@ -28206,6 +31008,51 @@ "jest-worker": "^27.5.1", "source-map-support": "^0.5.6", "throat": "^6.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==", + "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==", + "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==", + "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==" + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "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==", + "requires": { + "has-flag": "^4.0.0" + } + } } }, "jest-runtime": { @@ -28237,10 +31084,48 @@ "strip-bom": "^4.0.0" }, "dependencies": { - "strip-bom": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "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==", + "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==", + "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==" + }, + "has-flag": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", - "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==" + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "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==", + "requires": { + "has-flag": "^4.0.0" + } } } }, @@ -28280,6 +31165,72 @@ "natural-compare": "^1.4.0", "pretty-format": "^27.5.1", "semver": "^7.3.2" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "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==", + "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==", + "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==" + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "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==", + "requires": { + "yallist": "^4.0.0" + } + }, + "semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "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==", + "requires": { + "has-flag": "^4.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } } }, "jest-util": { @@ -28293,6 +31244,51 @@ "ci-info": "^3.2.0", "graceful-fs": "^4.2.9", "picomatch": "^2.2.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==", + "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==", + "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==", + "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==" + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "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==", + "requires": { + "has-flag": "^4.0.0" + } + } } }, "jest-validate": { @@ -28308,10 +31304,53 @@ "pretty-format": "^27.5.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==", + "requires": { + "color-convert": "^2.0.1" + } + }, "camelcase": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==" + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "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==", + "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==" + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "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==", + "requires": { + "has-flag": "^4.0.0" + } } } }, @@ -28327,6 +31366,51 @@ "chalk": "^4.0.0", "jest-util": "^27.5.1", "string-length": "^4.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==", + "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==", + "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==", + "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==" + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "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==", + "requires": { + "has-flag": "^4.0.0" + } + } } }, "jest-worker": { @@ -28339,6 +31423,11 @@ "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==" + }, "supports-color": { "version": "8.1.1", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", @@ -28354,6 +31443,12 @@ "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.6.4.tgz", "integrity": "sha512-pZe//GGmwJndub7ZghVHz7vjb2LgC1m8B07Au3eYqeqv9emhESByMXxaEgkUkEqJe87oBbSniGYoQNIBklc7IQ==" }, + "js-sdsl": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.2.0.tgz", + "integrity": "sha512-dyBIzQBDkCqCu+0upx25Y2jGdbTGxE9fshMsCdK0ViOongpV+n5tXRcZY9v7CaVQ79AGS9KA1KHtojxiM7aXSQ==", + "dev": true + }, "js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", @@ -28373,6 +31468,12 @@ "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==" }, + "jsdoc-type-pratt-parser": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-3.1.0.tgz", + "integrity": "sha512-MgtD0ZiCDk9B+eI73BextfRrVQl0oyzRG8B2BjORts6jbunj4ScKPcyXGTbB6eXL4y9TzxCm6hyeLq/2ASzNdw==", + "dev": true + }, "jsdom": { "version": "16.7.0", "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", @@ -28408,15 +31509,9 @@ }, "dependencies": { "acorn": { - "version": "8.8.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.0.tgz", - "integrity": "sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==" - }, - "ws": { - "version": "7.5.9", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", - "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", - "requires": {} + "version": "8.8.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz", + "integrity": "sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==" } } }, @@ -28471,10 +31566,15 @@ "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==" }, + "json5": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.2.tgz", + "integrity": "sha512-46Tk9JiOL2z7ytNQWFLpj99RZkVgeHf87yGQKsIkaPz1qSH9UczKH1rO7K3wgRselo0tYMUNfecYpm/p1vC7tQ==" + }, "jsonify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", - "integrity": "sha512-trvBk1ki43VZptdBI5rIlG4YOzyeH/WefQt5rj1grasPn4iiZWKet8nkgc4GlsAylaztn0qZfUYOiTsASJFdNA==", + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.1.tgz", + "integrity": "sha512-2/Ki0GcmuqSrgFyelQq9M05y7PS0mEwuIzrf3f1fPqkVDVRvZrPZtVSMHxdgo8Aq0sxAOb/cr2aqqA3LeWHVPg==", "dev": true }, "jsonparse": { @@ -28585,6 +31685,12 @@ "util-deprecate": "~1.0.1" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -28615,9 +31721,9 @@ } }, "less": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/less/-/less-3.13.1.tgz", - "integrity": "sha512-SwA1aQXGUvp+P5XdZslUOhhLnClSLIjWvJhmd+Vgib5BFIr9lMNlQwmwUNOjXThF/A0x+MCYYPeWEfeWiLRnTw==", + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/less/-/less-4.1.3.tgz", + "integrity": "sha512-w16Xk/Ta9Hhyei0Gpz9m7VS8F28nieJaL/VyShID7cYvP6IL5oHeL6p4TXSDJqZE/lNv0oJ2pGVjJsRkfwm5FA==", "dev": true, "requires": { "copy-anything": "^2.0.1", @@ -28626,9 +31732,10 @@ "image-size": "~0.5.0", "make-dir": "^2.1.0", "mime": "^1.4.1", - "native-request": "^1.0.5", + "needle": "^3.1.0", + "parse-node-version": "^1.0.1", "source-map": "~0.6.0", - "tslib": "^1.10.0" + "tslib": "^2.3.0" }, "dependencies": { "make-dir": { @@ -28680,6 +31787,15 @@ "type-check": "~0.4.0" } }, + "lie": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/lie/-/lie-3.1.1.tgz", + "integrity": "sha512-RiNhHysUjhrDQntfYSfY4MU24coXXdEOgw9WGcKHNeEwffDYbF//u87M1EWaMGzuFoSbqW0C9C6lEEhDOAswfw==", + "dev": true, + "requires": { + "immediate": "~3.0.5" + } + }, "liftoff": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/liftoff/-/liftoff-3.1.0.tgz", @@ -28723,6 +31839,43 @@ "pify": "^2.0.0", "pinkie-promise": "^2.0.0", "strip-bom": "^2.0.0" + }, + "dependencies": { + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha512-QR/GGaKCkhwk1ePQNYDRKYZ3mwU9ypsKhB0XyFnLQdomyEqk3e8wpW3V5Jp88zbxK4n5ST1nqo+g9juTpownhQ==", + "dev": true, + "requires": { + "error-ex": "^1.2.0" + } + }, + "strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha512-kwrX1y7czp1E69n2ajbG65mIo9dqvJ+8aBQXOGVxqwvNbsXdFM6Lq37dLAY3mknUwru8CfcCbfOLL/gMo+fi3g==", + "dev": true, + "requires": { + "is-utf8": "^0.2.0" + } + } + } + }, + "localforage": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/localforage/-/localforage-1.10.0.tgz", + "integrity": "sha512-14/H1aX7hzBBmmh7sGPd+AOMkkIrHM3Z1PAyGgZigA1H1p5O5ANnMyWzvpAETtG68/dC4pC0ncy3+PPGzXZHPg==", + "dev": true, + "requires": { + "lie": "3.1.1" + } + }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "requires": { + "p-locate": "^4.1.0" } }, "lodash": { @@ -28821,11 +31974,11 @@ } }, "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==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", "requires": { - "yallist": "^4.0.0" + "yallist": "^3.0.2" } }, "lru-queue": { @@ -28843,13 +31996,6 @@ "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "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==" - } } }, "make-error": { @@ -28888,6 +32034,21 @@ "promise-retry": "^2.0.1", "socks-proxy-agent": "^6.0.0", "ssri": "^8.0.0" + }, + "dependencies": { + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "requires": { + "yallist": "^4.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } } }, "make-iterator": { @@ -28947,24 +32108,56 @@ "stack-trace": "0.0.10" }, "dependencies": { - "define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", "dev": true, "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } } }, - "extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==", "dev": true, "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } } }, "findup-sync": { @@ -28979,43 +32172,11 @@ "resolve-dir": "^1.0.1" } }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "dev": true }, "is-glob": { "version": "3.1.0", @@ -29026,13 +32187,24 @@ "is-extglob": "^2.1.0" } }, - "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==", + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", "dev": true, "requires": { - "isobject": "^3.0.1" + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } } }, "kind-of": { @@ -29061,6 +32233,16 @@ "snapdragon": "^0.8.1", "to-regex": "^3.0.2" } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } } } }, @@ -29109,135 +32291,6 @@ "yargs-parser": "^20.2.3" }, "dependencies": { - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "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==", - "requires": { - "lru-cache": "^6.0.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "requires": { - "p-locate": "^4.1.0" - } - }, - "normalize-package-data": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", - "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", - "requires": { - "hosted-git-info": "^4.0.1", - "is-core-module": "^2.5.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "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==", - "requires": { - "p-limit": "^2.2.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" - }, - "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==", - "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" - } - }, - "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==" - }, - "read-pkg": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", - "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", - "requires": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^2.5.0", - "parse-json": "^5.0.0", - "type-fest": "^0.6.0" - }, - "dependencies": { - "hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==" - }, - "normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" - }, - "type-fest": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", - "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==" - } - } - }, - "read-pkg-up": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", - "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", - "requires": { - "find-up": "^4.1.0", - "read-pkg": "^5.2.0", - "type-fest": "^0.8.1" - }, - "dependencies": { - "type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==" - } - } - }, "type-fest": { "version": "0.18.1", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz", @@ -29268,37 +32321,6 @@ "requires": { "braces": "^3.0.2", "picomatch": "^2.3.1" - }, - "dependencies": { - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "requires": { - "fill-range": "^7.0.1" - } - }, - "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==", - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" - }, - "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==", - "requires": { - "is-number": "^7.0.0" - } - } } }, "miller-rabin": { @@ -29372,9 +32394,9 @@ } }, "minimist": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", + "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==" }, "minimist-options": { "version": "4.1.0", @@ -29394,11 +32416,18 @@ } }, "minipass": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.4.tgz", - "integrity": "sha512-I9WPbWHCGu8W+6k1ZiGpPu0GkoKBeorkfKNuAFBNS1HNFJvke82sxvI5bzcCNpWPorkOO5QQ+zomzzwRxejXiw==", + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "requires": { "yallist": "^4.0.0" + }, + "dependencies": { + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } } }, "minipass-collect": { @@ -29451,6 +32480,13 @@ "requires": { "minipass": "^3.0.0", "yallist": "^4.0.0" + }, + "dependencies": { + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } } }, "mixin-deep": { @@ -29461,26 +32497,15 @@ "requires": { "for-in": "^1.0.2", "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } - }, - "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" - } - } + } + }, + "mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "requires": { + "minimist": "^1.2.6" } }, "mkdirp-classic": { @@ -29524,6 +32549,11 @@ "util-deprecate": "~1.0.1" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -29560,9 +32590,9 @@ "dev": true }, "nan": { - "version": "2.16.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.16.0.tgz", - "integrity": "sha512-UdAqHyFngu7TfQKsCBgAA6pWDkT8MAO7d0jyOecVhN5354xbLqdn8mV9Tat9gepAupm0bt2DbeaSC8vS52MuFA==" + "version": "2.17.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.17.0.tgz", + "integrity": "sha512-2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ==" }, "nanomatch": { "version": "1.2.13", @@ -29583,73 +32613,6 @@ "to-regex": "^3.0.1" }, "dependencies": { - "define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", - "dev": true, - "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - } - }, - "extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", - "dev": true, - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } - }, - "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" - } - }, "kind-of": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", @@ -29658,18 +32621,56 @@ } } }, - "native-request": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/native-request/-/native-request-1.1.0.tgz", - "integrity": "sha512-uZ5rQaeRn15XmpgE0xoPL8YWqcX90VtCFglYwAgkvKM5e8fog+vePLAhHxuuv/gRkrQxIeh5U3q9sMNUrENqWw==", - "dev": true, - "optional": true - }, "natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==" }, + "nedb": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/nedb/-/nedb-1.8.0.tgz", + "integrity": "sha512-ip7BJdyb5m+86ZbSb4y10FCCW9g35+U8bDRrZlAfCI6m4dKwEsQ5M52grcDcVK4Vm/vnPlDLywkyo3GliEkb5A==", + "dev": true, + "requires": { + "async": "0.2.10", + "binary-search-tree": "0.2.5", + "localforage": "^1.3.0", + "mkdirp": "~0.5.1", + "underscore": "~1.4.4" + }, + "dependencies": { + "async": { + "version": "0.2.10", + "resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz", + "integrity": "sha512-eAkdoKxU6/LkKDBzLpT+t6Ff5EtfSF4wx1WfJiPEEV7WNLnDaRXk0oVysiEPm262roaachGexwUv94WhSgN5TQ==", + "dev": true + } + } + }, + "needle": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/needle/-/needle-3.2.0.tgz", + "integrity": "sha512-oUvzXnyLiVyVGoianLijF9O/RecZUf7TkBfimjGrLM4eQhXyeJwM6GeAWccwfQ9aa4gMCZKqhAOuLaMIcQxajQ==", + "dev": true, + "optional": true, + "requires": { + "debug": "^3.2.6", + "iconv-lite": "^0.6.3", + "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", @@ -29713,11 +32714,6 @@ "readable-stream": "^3.6.0" } }, - "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==" - }, "gauge": { "version": "4.0.4", "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", @@ -29733,10 +32729,13 @@ "wide-align": "^1.1.5" } }, - "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==" + "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==", + "requires": { + "yallist": "^4.0.0" + } }, "npmlog": { "version": "6.0.2", @@ -29749,15 +32748,18 @@ "set-blocking": "^2.0.0" } }, - "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==", + "semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" + "lru-cache": "^6.0.0" } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" } } }, @@ -29767,14 +32769,14 @@ "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==" }, "node-releases": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz", - "integrity": "sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==" + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.8.tgz", + "integrity": "sha512-dFSmB8fFHEH/s81Xi+Y/15DQY6VHW81nXRj86EMSL3lmuTmK1e+aT4wrFCkTbm+gSwkw4KpX+rT/pMM2c1mF+A==" }, "node-sass": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-7.0.1.tgz", - "integrity": "sha512-uMy+Xt29NlqKCFdFRZyXKOTqGt+QaKHexv9STj2WeLottnlqZEEWx6Bj0MXNthmFRRdM/YwyNo/8Tr46TOM0jQ==", + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-7.0.3.tgz", + "integrity": "sha512-8MIlsY/4dXUkJDYht9pIWBhMil3uHmE8b/AdJPjmFn1nBx9X9BASzfzmsCy0uCCb8eqI3SYYzVPDswWqSx7gjw==", "requires": { "async-foreach": "^0.1.3", "chalk": "^4.1.2", @@ -29788,9 +32790,54 @@ "node-gyp": "^8.4.1", "npmlog": "^5.0.0", "request": "^2.88.0", - "sass-graph": "4.0.0", + "sass-graph": "^4.0.1", "stdout-stream": "^1.4.0", "true-case-path": "^1.0.2" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "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==", + "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==", + "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==" + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "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==", + "requires": { + "has-flag": "^4.0.0" + } + } } }, "nopt": { @@ -29802,22 +32849,36 @@ } }, "normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "dev": true, + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", + "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", + "hosted-git-info": "^4.0.1", + "is-core-module": "^2.5.0", + "semver": "^7.3.4", "validate-npm-package-license": "^3.0.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==", + "requires": { + "yallist": "^4.0.0" + } + }, "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "requires": { + "lru-cache": "^6.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" } } }, @@ -29857,12 +32918,13 @@ "number-is-nan": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ==" + "integrity": "sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ==", + "dev": true }, "nwsapi": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.1.tgz", - "integrity": "sha512-JYOWTeFoS0Z93587vRJgASD5Ut11fYl5NyihP3KrYBvMe1FRRs6RN7m20SA/16GM4P6hTnZjT+UmDOt38UeXNg==" + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.2.tgz", + "integrity": "sha512-90yv+6538zuvUMnN+zCr8LuV6bPFdq50304114vJYJ8RDyK8D5O9Phpbd6SZWgI7PwzmmfN1upeOJlvybDSgCw==" }, "oauth-sign": { "version": "0.9.0", @@ -29885,6 +32947,52 @@ "kind-of": "^3.0.3" }, "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true + } + } + }, "kind-of": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", @@ -29896,15 +33004,11 @@ } } }, - "object-inspect": { - "version": "1.12.2", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", - "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==" - }, "object-keys": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true }, "object-visit": { "version": "1.0.1", @@ -29916,13 +33020,14 @@ } }, "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==", + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", + "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "dev": true, "requires": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "has-symbols": "^1.0.1", + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "has-symbols": "^1.0.3", "object-keys": "^1.1.1" } }, @@ -30029,6 +33134,12 @@ "util-deprecate": "~1.0.1" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -30054,6 +33165,22 @@ "lcid": "^1.0.0" } }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "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", @@ -30062,6 +33189,11 @@ "aggregate-error": "^3.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==" + }, "pako": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", @@ -30108,11 +33240,14 @@ } }, "parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha512-QR/GGaKCkhwk1ePQNYDRKYZ3mwU9ypsKhB0XyFnLQdomyEqk3e8wpW3V5Jp88zbxK4n5ST1nqo+g9juTpownhQ==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", "requires": { - "error-ex": "^1.2.0" + "@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": { @@ -30156,6 +33291,33 @@ "integrity": "sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw==", "dev": true }, + "path": { + "version": "0.12.7", + "resolved": "https://registry.npmjs.org/path/-/path-0.12.7.tgz", + "integrity": "sha512-aXXC6s+1w7otVF9UletFkFcDsJeO7lSZBPUQhtb5O0xJe8LtYhj/GxldoL09bBj9+ZmE2hNoHqQSFMN5fikh4Q==", + "dev": true, + "requires": { + "process": "^0.11.1", + "util": "^0.10.3" + }, + "dependencies": { + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", + "dev": true + }, + "util": { + "version": "0.10.4", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.4.tgz", + "integrity": "sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==", + "dev": true, + "requires": { + "inherits": "2.0.3" + } + } + } + }, "path-browserify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", @@ -30167,6 +33329,11 @@ "integrity": "sha512-ALzNPpyNq9AqXMBjeymIjFDAkAFH06mHJH/cSBHAgU0s4vfpBn6b2nf8tiRLvagKD8RbTpq2FKTBg7cl9l3c7Q==", "dev": true }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" + }, "path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", @@ -30420,51 +33587,6 @@ "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", "requires": { "find-up": "^4.0.0" - }, - "dependencies": { - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "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==", - "requires": { - "p-limit": "^2.2.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" - } } }, "plugin-error": { @@ -30485,31 +33607,6 @@ "requires": { "ansi-wrap": "^0.1.0" } - }, - "extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - } - }, - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "requires": { - "is-plain-object": "^2.0.4" - } - }, - "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==", - "requires": { - "isobject": "^3.0.1" - } } } }, @@ -30550,9 +33647,9 @@ "dev": true }, "prettier": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.7.1.tgz", - "integrity": "sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g==" + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.1.tgz", + "integrity": "sha512-lqGoSJBQNJidqCHE80vqZJHWHRFoNYsSpP9AjFhlhi9ODCJA541svILes/+/1GM3VaL/abZi7cpFzOpdR9UPKg==" }, "prettier-format": { "version": "3.1.0", @@ -30584,11 +33681,6 @@ "version": "5.2.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==" - }, - "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==" } } }, @@ -30693,12 +33785,56 @@ "duplexify": "^3.6.0", "inherits": "^2.0.3", "pump": "^2.0.0" + }, + "dependencies": { + "duplexify": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", + "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", + "dev": true, + "requires": { + "end-of-stream": "^1.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.0.0", + "stream-shift": "^1.0.0" + } + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==" }, "qs": { "version": "6.5.3", @@ -30748,6 +33884,11 @@ "safe-buffer": "^5.1.0" } }, + "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==" + }, "read-only-stream": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/read-only-stream/-/read-only-stream-2.0.0.tgz", @@ -30770,6 +33911,11 @@ "util-deprecate": "~1.0.1" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -30781,57 +33927,58 @@ } }, "read-pkg": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", - "integrity": "sha512-7BGwRHqt4s/uVbuyoeejRn4YmFnYZiFl4AuaeXHlgZf3sONF0SOGlxs2Pw8g6hCKupo08RafIO5YXFNOKTfwsQ==", - "dev": true, + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", "requires": { - "load-json-file": "^1.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^1.0.0" + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" }, "dependencies": { - "path-type": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", - "integrity": "sha512-S4eENJz1pkiQn9Znv33Q+deTOKmbl+jj1Fl+qiP/vYezj+S8x+J3Uo0ISrx/QoEvIlOaDWJhPaRd1flJ9HXZqg==", - "dev": true, + "hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==" + }, + "normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", "requires": { - "graceful-fs": "^4.1.2", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" } + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + }, + "type-fest": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==" } } }, "read-pkg-up": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", - "integrity": "sha512-WD9MTlNtI55IwYUS27iHh9tK3YoIVhxis8yKhLpTqWtml739uXc9NWTpxoHkfZf3+DkCCsXox94/VWZniuZm6A==", - "dev": true, + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", + "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", "requires": { - "find-up": "^1.0.0", - "read-pkg": "^1.0.0" + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" }, "dependencies": { - "find-up": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "integrity": "sha512-jvElSjyuo4EMQGoTwo1uJU5pQMwTW5lS1x05zzfJuTIyLR3zwO27LYrxNg+dlvKpGOuGy/MzBdXh80g0ve5+HA==", - "dev": true, - "requires": { - "path-exists": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "path-exists": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "integrity": "sha512-yTltuKuhtNeFJKa1PiRzfLAU5182q1y4Eb4XCJ3PBqyzEDkAZRzBrKKBct682ls9reBVHf9udYLN5Nd+K1B9BQ==", - "dev": true, - "requires": { - "pinkie-promise": "^2.0.0" - } + "type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==" } } }, @@ -30864,9 +34011,9 @@ } }, "minimatch": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", - "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.2.tgz", + "integrity": "sha512-bNH9mmM9qsJ2X4r2Nat1B//1dJVcn3+iBLa3IgqJ7EbGaDNepL9QSHOxN4ng33s52VMMhhIfgCYDk3C4ZmlDAg==", "dev": true, "requires": { "brace-expansion": "^2.0.1" @@ -30875,134 +34022,12 @@ } }, "readdirp": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", - "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", "dev": true, "requires": { - "graceful-fs": "^4.1.11", - "micromatch": "^3.1.10", - "readable-stream": "^2.0.2" - }, - "dependencies": { - "define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", - "dev": true, - "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - } - }, - "extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", - "dev": true, - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } - }, - "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" - } - }, - "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 - }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - }, - "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" - } - } + "picomatch": "^2.2.1" } }, "rechoir": { @@ -31031,46 +34056,6 @@ "requires": { "extend-shallow": "^3.0.2", "safe-regex": "^1.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", - "dev": true, - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - } - }, - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } - }, - "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" - } - } - } - }, - "regexp.prototype.flags": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", - "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "functions-have-names": "^1.2.2" } }, "regexpp": { @@ -31115,6 +34100,12 @@ "util-deprecate": "~1.0.1" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -31182,12 +34173,6 @@ "readable-stream": "^2.0.2" }, "dependencies": { - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true - }, "readable-stream": { "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", @@ -31203,6 +34188,12 @@ "util-deprecate": "~1.0.1" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -31251,6 +34242,11 @@ "mime-types": "^2.1.12" } }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" + }, "tough-cookie": { "version": "2.5.0", "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", @@ -31279,6 +34275,12 @@ "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", "dev": true }, + "require-main-filename": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", + "integrity": "sha512-IqSUtOVP4ksd1C/ej5zeEh/BIP2ajqpn8c5x+q99gvcIG/Qf0cud5raVnE/Dwd0ua9TXYDoDc0RE5hBSdz22Ug==", + "dev": true + }, "requires-port": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", @@ -31389,6 +34391,15 @@ "inherits": "^2.0.1" } }, + "rollup": { + "version": "2.79.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.79.1.tgz", + "integrity": "sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw==", + "dev": true, + "requires": { + "fsevents": "~2.3.2" + } + }, "run-parallel": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", @@ -31399,9 +34410,9 @@ } }, "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" }, "safe-regex": { "version": "1.1.0", @@ -31413,9 +34424,9 @@ } }, "safe-stable-stringify": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.3.1.tgz", - "integrity": "sha512-kYBSfT+troD9cDA85VDnHZ1rpHC50O0g1e6WlGHVCz/g+JS+9WKLj+XwFYyR8UbrZN8ll9HUpDAAddY58MGisg==" + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.1.tgz", + "integrity": "sha512-dVHE6bMtS/bnL2mwualjc6IxEv1F+OCUpA46pKUj6F8uDbUM0jCCulPqRNPSnWwGNKx5etqMjZYdXtrm5KJZGA==" }, "safer-buffer": { "version": "2.1.2", @@ -31423,119 +34434,34 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.54.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.54.0.tgz", - "integrity": "sha512-C4zp79GCXZfK0yoHZg+GxF818/aclhp9F48XBu/+bm9vXEVAYov9iU3FBVRMq3Hx3OA4jfKL+p2K9180mEh0xQ==", + "version": "1.57.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.57.1.tgz", + "integrity": "sha512-O2+LwLS79op7GI0xZ8fqzF7X2m/m8WFfI02dHOdsK5R2ECeS5F62zrwg/relM1rjSLy7Vd/DiMNIvPrQGsA0jw==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0", "immutable": "^4.0.0", "source-map-js": ">=0.6.2 <2.0.0" - }, - "dependencies": { - "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" - } - }, - "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 - }, - "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" - } - }, - "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" - } - }, - "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" - } - }, - "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 - }, - "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-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "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" - } - }, - "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" - } - } } }, "sass-graph": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/sass-graph/-/sass-graph-4.0.0.tgz", - "integrity": "sha512-WSO/MfXqKH7/TS8RdkCX3lVkPFQzCgbqdGsmSKq6tlPU+GpGEsa/5aW18JqItnqh+lPtcjifqdZ/VmiILkKckQ==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/sass-graph/-/sass-graph-4.0.1.tgz", + "integrity": "sha512-5YCfmGBmxoIRYHnKK2AKzrAkCoQ8ozO+iumT8K4tXJXRVCPf+7s1/9KxTSW3Rbvf+7Y7b4FR3mWyLnQr3PHocA==", "requires": { "glob": "^7.0.0", "lodash": "^4.17.11", - "scss-tokenizer": "^0.3.0", + "scss-tokenizer": "^0.4.3", "yargs": "^17.2.1" } }, + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true, + "optional": true + }, "saxes": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz", @@ -31545,21 +34471,25 @@ } }, "scss-tokenizer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.3.0.tgz", - "integrity": "sha512-14Zl9GcbBvOT9057ZKjpz5yPOyUWG2ojd9D5io28wHRYsOrs7U95Q+KNL87+32p8rc+LvDpbu/i9ZYjM9Q+FsQ==", + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.4.3.tgz", + "integrity": "sha512-raKLgf1LI5QMQnG+RxHz6oK0sL3x3I4FN2UDLqgLOGO8hodECNnNh5BXn7fAyBxrA8zVzdQizQ6XjNJQ+uBwMw==", "requires": { - "js-base64": "^2.4.3", - "source-map": "^0.7.1" + "js-base64": "^2.4.9", + "source-map": "^0.7.3" + }, + "dependencies": { + "source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==" + } } }, "semver": { - "version": "7.3.7", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", - "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", - "requires": { - "lru-cache": "^6.0.0" - } + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" }, "semver-greatest-satisfied-range": { "version": "1.1.0", @@ -31587,6 +34517,21 @@ "split-string": "^3.0.1" }, "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "dev": true + }, "is-plain-object": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", @@ -31639,19 +34584,9 @@ "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==" }, "shell-quote": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.7.3.tgz", - "integrity": "sha512-Vpfqwm4EnqGdlsBFNmHhxhElJYrdfcxPThu+ryKS5J8L/fhAwLazFZtq+S+TWZ9ANj2piSQLGj6NQg+lKPmxrw==" - }, - "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" - } + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.7.4.tgz", + "integrity": "sha512-8o/QEhSSRb1a5i7TFR0iM4G16Z0vYB2OQVs4G3aAFXjn3T6yEx8AZxy1PgDF7I00LZHYA3WxaSYIf5e5sAX8Rw==" }, "signal-exit": { "version": "3.0.7", @@ -31699,10 +34634,28 @@ "is-fullwidth-code-point": "^3.0.0" }, "dependencies": { - "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==", + "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 } } @@ -31737,17 +34690,99 @@ "ms": "2.0.0" } }, + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "dev": true + }, "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", - "dev": true + "source-map-resolve": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", + "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", + "dev": true, + "requires": { + "atob": "^2.1.2", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" + } } } }, @@ -31770,41 +34805,6 @@ "requires": { "is-descriptor": "^1.0.0" } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "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 } } }, @@ -31853,9 +34853,9 @@ } }, "socks": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.0.tgz", - "integrity": "sha512-scnOe9y4VuiNUULJN72GrM26BNOjVsfPXI+j+98PkyEfsIXroa5ofyjT+FzGvn/xHs73U2JtoBYAVx9Hl4quSA==", + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.1.tgz", + "integrity": "sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==", "requires": { "ip": "^2.0.0", "smart-buffer": "^4.2.0" @@ -31872,9 +34872,9 @@ } }, "source-map": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==" + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==" }, "source-map-js": { "version": "1.0.2", @@ -31883,16 +34883,13 @@ "dev": true }, "source-map-resolve": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", - "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz", + "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==", "dev": true, "requires": { "atob": "^2.1.2", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" + "decode-uri-component": "^0.2.0" } }, "source-map-support": { @@ -31947,9 +34944,9 @@ } }, "spdx-license-ids": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", - "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==" + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz", + "integrity": "sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==" }, "split-string": { "version": "3.1.0", @@ -31958,36 +34955,6 @@ "dev": true, "requires": { "extend-shallow": "^3.0.0" - }, - "dependencies": { - "extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", - "dev": true, - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - } - }, - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } - }, - "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" - } - } } }, "sprintf-js": { @@ -32025,9 +34992,9 @@ "integrity": "sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==" }, "stack-utils": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.5.tgz", - "integrity": "sha512-xrQcmYhOsn/1kX+Vraq+7j4oE2j/6BFscZ0etmYg81xuM8Gq0022Pxb8+IqgOFUIaxHs0KaSb7T1+OegiNrNFA==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", "requires": { "escape-string-regexp": "^2.0.0" }, @@ -32047,6 +35014,68 @@ "requires": { "define-property": "^0.2.5", "object-copy": "^0.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + } + } } }, "stdout-stream": { @@ -32071,6 +35100,11 @@ "util-deprecate": "~1.0.1" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -32113,6 +35147,11 @@ "util-deprecate": "~1.0.1" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -32169,6 +35208,11 @@ "util-deprecate": "~1.0.1" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -32185,13 +35229,6 @@ "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-length": { @@ -32204,48 +35241,13 @@ } }, "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==", - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==" - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", - "requires": { - "ansi-regex": "^2.0.0" - } - } - } - }, - "string.prototype.trimend": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.5.tgz", - "integrity": "sha512-I7RGvmjV4pJ7O3kdf+LXFpVfdNOxtCW/2C8f6jNiW4+PQchwxkCDzlk1/7p+Wl4bqFIZeF47qAHXLuHHWKAxog==", - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.19.5" - } - }, - "string.prototype.trimstart": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.5.tgz", - "integrity": "sha512-THx16TJCGlsN0o6dl2o6ncWUsdgnLRSA23rRE5pyGBw/mLr3Ej/R2LaqCtgP8VNMGZsvMWnf9ooZPyY2bHvUFg==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.19.5" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" } }, "strip-ansi": { @@ -32257,12 +35259,9 @@ } }, "strip-bom": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "integrity": "sha512-kwrX1y7czp1E69n2ajbG65mIo9dqvJ+8aBQXOGVxqwvNbsXdFM6Lq37dLAY3mknUwru8CfcCbfOLL/gMo+fi3g==", - "requires": { - "is-utf8": "^0.2.0" - } + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==" }, "strip-bom-buf": { "version": "1.0.0", @@ -32316,20 +35315,35 @@ } }, "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==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "requires": { - "has-flag": "^4.0.0" + "has-flag": "^3.0.0" } }, "supports-hyperlinks": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.2.0.tgz", - "integrity": "sha512-6sXEzV5+I5j8Bmq9/vUphGRM/RJNT9SCURJLjwfOg51heRtguGWDzcaBlgAzKhQa0EVNpPEKzQuBwZ8S8WaCeQ==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz", + "integrity": "sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==", "requires": { "has-flag": "^4.0.0", "supports-color": "^7.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==" + }, + "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==", + "requires": { + "has-flag": "^4.0.0" + } + } } }, "supports-preserve-symlinks-flag": { @@ -32361,9 +35375,9 @@ } }, "table": { - "version": "6.8.0", - "resolved": "https://registry.npmjs.org/table/-/table-6.8.0.tgz", - "integrity": "sha512-s/fitrbVeEyHKFa7mFdkuQMWlH1Wgw/yEXMt5xACT4ZpzWFluehAxRtUUQKPuWhaLAWhFcVx6w3oC8VKaUfPGA==", + "version": "6.8.1", + "resolved": "https://registry.npmjs.org/table/-/table-6.8.1.tgz", + "integrity": "sha512-Y4X9zqrCftUhMeH2EptSSERdVKt/nEdijTOacGD/97EKjhQ/Qs8RTlEGABSJNNN8lac9kheH+af7yAkEWlgneA==", "dev": true, "requires": { "ajv": "^8.0.1", @@ -32374,9 +35388,9 @@ }, "dependencies": { "ajv": { - "version": "8.11.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz", - "integrity": "sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==", + "version": "8.11.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.2.tgz", + "integrity": "sha512-E4bfmKAhGiSTvMfL1Myyycaub+cUEU2/IvpylXkUu7CHBkBj1f/ikdzbD7YQ6FKUbixDxeYvB/xY4fvyroDlQg==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -32385,54 +35399,44 @@ "uri-js": "^4.2.2" } }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, "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 - }, - "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" - } } } }, "tar": { - "version": "6.1.11", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz", - "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==", + "version": "6.1.13", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.13.tgz", + "integrity": "sha512-jdIBIN6LTIe2jqzay/2vtYLlBHa3JF42ot3h1dW8Q0PaAG4v8rm0cvpVePtau5C6OKXGGcgO9q2AMNSWxiLqKw==", "requires": { "chownr": "^2.0.0", "fs-minipass": "^2.0.0", - "minipass": "^3.0.0", + "minipass": "^4.0.0", "minizlib": "^2.1.1", "mkdirp": "^1.0.3", "yallist": "^4.0.0" }, "dependencies": { + "minipass": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.0.0.tgz", + "integrity": "sha512-g2Uuh2jEKoht+zvO6vJqXmYpflPqzRBT+Th2h01DKh5z7wbY/AZ2gCQ78cP70YoHPyFdY30YBV5WxgLOEwOykw==", + "requires": { + "yallist": "^4.0.0" + } + }, "mkdirp": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==" + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" } } }, @@ -32470,16 +35474,14 @@ "through2": "^3.0.1" }, "dependencies": { - "duplexify": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-4.1.2.tgz", - "integrity": "sha512-fz3OjcNCHmRP12MJoZMPglx8m4rrFP8rovnk4vT8Fs+aonZoCwGg10dSsQsfP/E62eZcPTMSMP6686fu9Qlqtw==", + "through2": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz", + "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==", "dev": true, "requires": { - "end-of-stream": "^1.4.1", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1", - "stream-shift": "^1.0.0" + "inherits": "^2.0.4", + "readable-stream": "2 || 3" } } } @@ -32541,12 +35543,12 @@ "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==" }, "through2": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz", - "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz", + "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==", + "dev": true, "requires": { - "inherits": "^2.0.4", - "readable-stream": "2 || 3" + "readable-stream": "3" } }, "through2-filter": { @@ -32574,6 +35576,12 @@ "util-deprecate": "~1.0.1" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -32680,91 +35688,14 @@ "extend-shallow": "^3.0.2", "regex-not": "^1.0.2", "safe-regex": "^1.1.0" - }, - "dependencies": { - "define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", - "dev": true, - "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - } - }, - "extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", - "dev": true, - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } - }, - "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" - } - }, - "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 - } } }, "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==", - "dev": true, + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" + "is-number": "^7.0.0" } }, "to-through": { @@ -32791,6 +35722,12 @@ "util-deprecate": "~1.0.1" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -32843,10 +35780,10 @@ "url-parse": "^1.5.3" }, "dependencies": { - "universalify": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", - "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==" + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" } } }, @@ -32856,6 +35793,13 @@ "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", "requires": { "punycode": "^2.1.1" + }, + "dependencies": { + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" + } } }, "trim-newlines": { @@ -32892,18 +35836,36 @@ "yargs-parser": "20.x" }, "dependencies": { - "json5": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", - "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", - "dev": true - }, "lodash.memoize": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", "dev": true }, + "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" + } + }, + "semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, "yargs-parser": { "version": "20.2.9", "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", @@ -32934,9 +35896,9 @@ }, "dependencies": { "acorn": { - "version": "8.8.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.0.tgz", - "integrity": "sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==", + "version": "8.8.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz", + "integrity": "sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==", "devOptional": true }, "acorn-walk": { @@ -32958,6 +35920,22 @@ "strip-json-comments": "^2.0.0" }, "dependencies": { + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha512-QR/GGaKCkhwk1ePQNYDRKYZ3mwU9ypsKhB0XyFnLQdomyEqk3e8wpW3V5Jp88zbxK4n5ST1nqo+g9juTpownhQ==", + "requires": { + "error-ex": "^1.2.0" + } + }, + "strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha512-kwrX1y7czp1E69n2ajbG65mIo9dqvJ+8aBQXOGVxqwvNbsXdFM6Lq37dLAY3mknUwru8CfcCbfOLL/gMo+fi3g==", + "requires": { + "is-utf8": "^0.2.0" + } + }, "strip-json-comments": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", @@ -32992,10 +35970,10 @@ "util-deprecate": "~1.0.1" } }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + "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==" }, "string_decoder": { "version": "1.1.1", @@ -33017,9 +35995,9 @@ } }, "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.1.tgz", + "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==", "dev": true }, "tsutils": { @@ -33029,6 +36007,14 @@ "dev": true, "requires": { "tslib": "^1.8.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + } } }, "tty-browserify": { @@ -33070,10 +36056,9 @@ "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==" }, "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 + "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==" }, "typedarray": { "version": "0.0.6", @@ -33089,9 +36074,9 @@ } }, "typescript": { - "version": "4.7.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.7.4.tgz", - "integrity": "sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ==" + "version": "4.9.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.4.tgz", + "integrity": "sha512-Uz+dTXYzxXXbsFpM86Wh3dKCxrQqUcVMxwU54orwlJjOpO3ao8L7j5lH+dWfTwgCwIuM9GQ2kvVotzYJMXTBZg==" }, "uglify-js": { "version": "1.3.5", @@ -33124,17 +36109,6 @@ "resolved": "https://registry.npmjs.org/umd/-/umd-3.0.3.tgz", "integrity": "sha512-4IcGSufhFshvLNcMCV80UnQVlZ5pMOC8mvNPForqwA4+lzYQuetTESLDQkeLmihq8bRcnpbQa48Wb8Lh16/xow==" }, - "unbox-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", - "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", - "requires": { - "call-bind": "^1.0.2", - "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" - } - }, "unc-path-regex": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz", @@ -33153,6 +36127,12 @@ "xtend": "^4.0.1" } }, + "underscore": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.4.4.tgz", + "integrity": "sha512-ZqGrAgaqqZM7LGRzNjLnw5elevWb5M8LEoDMadxIW3OWbcv72wMMgKdwOKpd5Fqxe8choLD8HN3iSj3TUh/giQ==", + "dev": true + }, "undertaker": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/undertaker/-/undertaker-1.3.0.tgz", @@ -33195,6 +36175,14 @@ "get-value": "^2.0.6", "is-extendable": "^0.1.1", "set-value": "^2.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "dev": true + } } }, "unique-filename": { @@ -33223,6 +36211,11 @@ "through2-filter": "^3.0.0" } }, + "universalify": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", + "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==" + }, "unset-value": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", @@ -33270,9 +36263,9 @@ "dev": true }, "update-browserslist-db": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.5.tgz", - "integrity": "sha512-dteFFpCyvuDdr9S/ff1ISkKt/9YZxKjI9WlRR99c180GaztJtRa/fn18FdxGVKVsnPY7/a/FDN68mcvUmP4U7Q==", + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", + "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", "requires": { "escalade": "^3.1.1", "picocolors": "^1.0.0" @@ -33284,6 +36277,13 @@ "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", "requires": { "punycode": "^2.1.0" + }, + "dependencies": { + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" + } } }, "urix": { @@ -33324,15 +36324,14 @@ "dev": true }, "util": { - "version": "0.12.4", - "resolved": "https://registry.npmjs.org/util/-/util-0.12.4.tgz", - "integrity": "sha512-bxZ9qtSlGUWSOy9Qa9Xgk11kSslpuZwaxCg4sNIDj6FLucDab2JxnHwyNTCpHMtK1MjoQiWQ6DiUMZYbSrO+Sw==", + "version": "0.12.5", + "resolved": "https://registry.npmjs.org/util/-/util-0.12.5.tgz", + "integrity": "sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==", "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" } }, @@ -33366,6 +36365,13 @@ "@types/istanbul-lib-coverage": "^2.0.1", "convert-source-map": "^1.6.0", "source-map": "^0.7.3" + }, + "dependencies": { + "source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==" + } } }, "v8flags": { @@ -33451,6 +36457,12 @@ "util-deprecate": "~1.0.1" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -33512,6 +36524,12 @@ "util-deprecate": "~1.0.1" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -33558,6 +36576,12 @@ "util-deprecate": "~1.0.1" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -33612,14 +36636,6 @@ "dev": true, "requires": { "source-map": "^0.5.1" - }, - "dependencies": { - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", - "dev": true - } } }, "vm-browserify": { @@ -33662,6 +36678,16 @@ "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", "requires": { "iconv-lite": "0.4.24" + }, + "dependencies": { + "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" + } + } } }, "whatwg-mimetype": { @@ -33687,29 +36713,23 @@ "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": "1.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", + "integrity": "sha512-F6+WgncZi/mJDrammbTuHe1q0R5hOXv/mBaiNA2TCNT/LTHusX0V+CJnj9XT8ki5ln2UZyyddDgHfCzyrOH7MQ==", + "dev": true }, "which-typed-array": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.8.tgz", - "integrity": "sha512-Jn4e5PItbcAHyLoRDwvPj1ypu27DJbtdYXUa5zsinrUx77Uvfb0cXwwnGMTn7cjUfhhqgVQnVJCwF+7cgU7tpw==", + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz", + "integrity": "sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==", "requires": { "available-typed-arrays": "^1.0.5", "call-bind": "^1.0.2", - "es-abstract": "^1.20.0", "for-each": "^0.3.3", + "gopd": "^1.0.1", "has-tostringtag": "^1.0.0", - "is-typed-array": "^1.1.9" + "is-typed-array": "^1.1.10" } }, "wide-align": { @@ -33721,10 +36741,11 @@ } }, "winston": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/winston/-/winston-3.8.1.tgz", - "integrity": "sha512-r+6YAiCR4uI3N8eQNOg8k3P3PqwAm20cLKlzVD9E66Ch39+LZC+VH1UKf9JemQj2B3QoUHfKD7Poewn0Pr3Y1w==", + "version": "3.8.2", + "resolved": "https://registry.npmjs.org/winston/-/winston-3.8.2.tgz", + "integrity": "sha512-MsE1gRx1m5jdTTO9Ld/vND4krP2To+lgDoMEHGGa4HIlAUyXJtfc7CxQcGXVyz2IBpw5hbFkj2b/AtUdQwyRew==", "requires": { + "@colors/colors": "1.5.0", "@dabh/diagnostics": "^2.0.2", "async": "^3.2.3", "is-stream": "^2.0.0", @@ -33768,25 +36789,26 @@ "strip-ansi": "^6.0.0" }, "dependencies": { - "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==" - }, - "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==" + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "requires": { + "color-convert": "^2.0.1" + } }, - "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==", + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" + "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==" } } }, @@ -33812,10 +36834,9 @@ } }, "ws": { - "version": "8.2.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.2.3.tgz", - "integrity": "sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA==", - "dev": true, + "version": "7.5.9", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", + "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", "requires": {} }, "xml-name-validator": { @@ -33845,50 +36866,28 @@ "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==" }, "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" }, "yargs": { - "version": "17.5.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.5.1.tgz", - "integrity": "sha512-t6YAJcxDkNX7NFYiVtKvWUz8l+PaKTLiL63mJYWR2GnHq2gjEWISzsLp9wg3aY36dY1j+gfIEL3pIF+XlJJfbA==", + "version": "17.6.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.6.2.tgz", + "integrity": "sha512-1/9UrdHjDZc0eOU0HxOHoS78C69UD3JRMvzlJ7S79S2nTaWRA/whGCTV8o9e/N/1Va9YIV7Q4sOxD8VV4pCWOw==", "requires": { - "cliui": "^7.0.2", + "cliui": "^8.0.1", "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" - }, - "dependencies": { - "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==" - }, - "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==" - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - } + "yargs-parser": "^21.1.1" } }, "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==" + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==" }, "yeast": { "version": "0.1.2", diff --git a/package.json b/package.json index e4755d3..41ebfce 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "forien-unidentified-items", "description": "Provides system agnostic solution to handle unidentified items and their identification.", - "version": "0.5.4", + "version": "0.6.0", "main": "init.js", "scripts": { "publish": "gulp publish --update", @@ -25,7 +25,9 @@ "license": "SEE LICENSE IN LICENSE", "devDependencies": { "@babel/core": "^7.15.0", + "@babel/eslint-parser": "^7.15.4", "@league-of-foundry-developers/foundry-vtt-types": "^9.280.0", + "@rollup/plugin-node-resolve": "^13.3.0", "@types/archiver": "^5.1.1", "@types/browserify": "^12.0.37", "@types/color": "^3.0.2", @@ -42,11 +44,16 @@ "browserify": "^17.0.0", "color": "3.2.1", "eslint": "^7.32.0", + "eslint-plugin-jsdoc": "^39.3.3", + "fancy-log": "^2.0.0", + "fs": "^0.0.1-security", "gulp": "^4.0.0", "gulp-bro": "^2.0.0", "gulp-changed": "^4.0.3", "gulp-eslint-new": "^1.5.1", + "gulp-eslint7": "^0.3.1", "gulp-git": "^2.10.1", + "gulp-if": "^3.0.0", "gulp-less": "^5.0.0", "gulp-rename": "^2.0.0", "gulp-replace": "^1.1.3", @@ -56,7 +63,12 @@ "gulp-uglify": "^3.0.2", "jest": "^27.5.1", "json-stringify-pretty-compact": "^3.0.0", + "merge-stream": "^2.0.0", + "nedb": "^1.8.0", + "path": "^0.12.7", + "rollup": "^2.77.0", "sass": "^1.49.11", + "through2": "^4.0.2", "ts-jest": "^27.1.3", "ts-node": "^10.2.1", "typescript": "^4.4.2", diff --git a/src/module.json b/src/module.json index 2a79c4f..590bb78 100644 --- a/src/module.json +++ b/src/module.json @@ -1,9 +1,9 @@ { - "name": "forien-unidentified-items", + "id": "forien-unidentified-items", "title": "Forien's Unidentified Items", "description": "Provides system agnostic solution to handle unidentified items and their identification.", - "version": "0.5.4", - "authors": [ + "version": "0.6.0", + "authors": [ { "name": "Forien", "url": "https://www.patreon.com/foundryworkshop" @@ -13,26 +13,46 @@ "url": "https://www.patreon.com/mclemente" }, { - "name": "p4535992", - "url": "https://github.com/p4535992", + "name": "League-of-Foundry-Developers", + "url": "https://github.com/League-of-Foundry-Developers", "discord": "", "twitter": "", "patreon": "", - "github": "p4535992", + "github": "League-of-Foundry-Developers", "ko-fi": "", "reddit": "", "email": "" } - ], - "type": "module", - "socket": true, - "minimumCoreVersion": "9", - "compatibleCoreVersion": "9", - "compatibility": { - "minimum": 9, - "verified": 9 - }, - "languages": [ + ], + "type": "module", + "socket": true, + "includes": [ + "./assets/**", + "./lang/**", + "./languages/**", + "./scripts/**", + "./styles/**", + "./templates/**", + "./module.json", + "./README.md", + "./icons/**", + "./packs/**" + ], + "media": [ + { + "type": "icon", + "location": "" + }, + { + "type": "cover", + "location": "" + }, + { + "type": "screenshot", + "location": "" + } + ], + "languages": [ { "lang": "en", "name": "English", @@ -56,29 +76,41 @@ { "lang": "ja", "name": "日本語", - "path": "./lang/ja.json" + "path": "lang/ja.json" }, { "lang": "de", "name": "Deutsch", - "path": "./lang/de.json" + "path": "lang/de.json" } ], - "esmodules": ["./init.js"], - "styles": ["./styles/style.css"], - "scripts": [], - "url": "https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items", - "manifest": "https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items/releases/latest/download/module.json", - "download": "https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items/releases/download/v0.5.4/module.zip", - "readme": "https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items/blob/v0.5.4/README.md", - "changelog": "https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items/blob/v0.5.4/changelog.md", - "bugs": "https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items/issues", - "wiki": "https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items/wiki", - "allowBugReporter": true, - "manifestPlusVersion": "1.2.0", - "dependencies": [], - "flags": { - "manifestPlusVersion": "1.2.0", - "allowBugReporter": true - } + "packs": [], + "scripts": [], + "esmodules": ["init.js"], + "styles": ["styles/style.css"], + "compatibility": { + "minimum": 10, + "verified": 10, + "maximum": 10 + }, + "manifestPlusVersion": "1.2.1", + "url": "https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items", + "manifest": "https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items/releases/latest/download/module.json", + "download": "https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items/releases/latest/download/module.zip", + "readme": "https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items/blob/v0.6.0/README.md", + "changelog": "https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items/blob/v0.6.0/CHANGELOG.md", + "bugs": "https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items/issues", + "allowBugReporter": true, + "relationships": { + "systems": [], + "requires": [ + { + "id": "lib-wrapper", + "type": "module", + "manifest": "https://github.com/ruipin/fvtt-lib-wrapper/releases/latest/download/module.json", + "compatibility": {} + } + ], + "conflicts": [] + } } diff --git a/tsconfig.json b/tsconfig.json index ac39e2a..e294f30 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -108,9 +108,7 @@ "sourceMap": true, "baseUrl": ".", "allowUnusedLabels": false, - "removeComments": false, - - + "removeComments": false }, "ts-node": { "files": true From 584e8625474754513a226ff5c049bc876fb2815f Mon Sep 17 00:00:00 2001 From: p4535992 Date: Sun, 25 Dec 2022 19:50:02 +0100 Subject: [PATCH 02/12] applied prettier --- src/init.ts | 62 +- src/lang/de.json | 176 ++-- src/lang/en.json | 176 ++-- src/lang/es.json | 118 +-- src/lang/fr.json | 118 +-- src/lang/ja.json | 118 +-- src/lang/ko.json | 118 +-- src/lang/pl.json | 118 +-- src/lang/pt-BR.json | 110 +-- src/module.json | 112 +-- src/modules/ContextMenu.ts | 170 ++-- src/modules/ForienUnidentifiedItemsModels.ts | 14 +- src/modules/Identification.ts | 910 +++++++++---------- src/modules/Item.ts | 22 +- src/modules/ItemSheet.ts | 234 ++--- src/modules/api.ts | 26 +- src/modules/apps/DefaultIcons.ts | 214 ++--- src/modules/apps/ItemProperties.ts | 160 ++-- src/modules/constants.ts | 6 +- src/modules/lib/lib.ts | 196 ++-- src/modules/preloadTemplates.ts | 18 +- src/modules/settings.ts | 673 +++++++------- src/modules/systems.ts | 36 +- src/modules/systems/dnd5e.ts | 70 +- src/modules/systems/generic.ts | 2 +- src/modules/systems/pf2e.ts | 60 +- src/modules/systems/sw5e.ts | 70 +- src/modules/systems/swade.ts | 68 +- src/modules/systems/wfrp4e.ts | 80 +- src/styles/style.css | 184 ++-- src/styles/style.scss | 382 ++++---- src/templates/mystify-advanced.html | 96 +- src/templates/settings-default-icons.html | 22 +- src/templates/settings-item-properties.html | 42 +- 34 files changed, 2494 insertions(+), 2487 deletions(-) diff --git a/src/init.ts b/src/init.ts index 8272412..962d262 100644 --- a/src/init.ts +++ b/src/init.ts @@ -12,56 +12,56 @@ // Import JavaScript modules // Import TypeScript modules -import registerDerivedItemSheetClass from './modules/ItemSheet'; -import registerContextMenuHook from './modules/ContextMenu'; -import Identification from './modules/Identification'; -import registerSettings, { checkSettingsInitialized } from './modules/settings'; -import registerItemClassMethod from './modules/Item'; -import CONSTANTS from './modules/constants'; -import API from './modules/api'; +import registerDerivedItemSheetClass from "./modules/ItemSheet"; +import registerContextMenuHook from "./modules/ContextMenu"; +import Identification from "./modules/Identification"; +import registerSettings, { checkSettingsInitialized } from "./modules/settings"; +import registerItemClassMethod from "./modules/Item"; +import CONSTANTS from "./modules/constants"; +import API from "./modules/api"; /* ------------------------------------ */ /* Initialize module */ /* ------------------------------------ */ -Hooks.once('init', () => { - registerSettings(); +Hooks.once("init", () => { + registerSettings(); - registerContextMenuHook(); + registerContextMenuHook(); - Hooks.callAll(`${CONSTANTS.MODULE_NAME}:afterInit`); + Hooks.callAll(`${CONSTANTS.MODULE_NAME}:afterInit`); }); /* ------------------------------------ */ /* Setup module */ /* ------------------------------------ */ -Hooks.once('setup', () => { - //@ts-ignore - window.ForienIdentification = Identification; +Hooks.once("setup", () => { + //@ts-ignore + window.ForienIdentification = Identification; - Hooks.callAll(`${CONSTANTS.MODULE_NAME}:afterSetup`); + Hooks.callAll(`${CONSTANTS.MODULE_NAME}:afterSetup`); - setApi(API); + setApi(API); }); /* ------------------------------------ */ /* When ready */ /* ------------------------------------ */ -Hooks.once('ready', () => { - checkSettingsInitialized(); - registerDerivedItemSheetClass(); - registerItemClassMethod(); +Hooks.once("ready", () => { + checkSettingsInitialized(); + registerDerivedItemSheetClass(); + registerItemClassMethod(); - Hooks.callAll(`${CONSTANTS.MODULE_NAME}:afterReady`); + Hooks.callAll(`${CONSTANTS.MODULE_NAME}:afterReady`); }); // Add any additional hooks if necessary export interface MysteryItemModuleData { - api: typeof API; - socket: any; + api: typeof API; + socket: any; } /** @@ -69,8 +69,8 @@ export interface MysteryItemModuleData { * @param api to set to game module. */ export function setApi(api: typeof API): void { - const data = game.modules.get(CONSTANTS.MODULE_NAME) as unknown as MysteryItemModuleData; - data.api = api; + const data = game.modules.get(CONSTANTS.MODULE_NAME) as unknown as MysteryItemModuleData; + data.api = api; } /** @@ -78,8 +78,8 @@ export function setApi(api: typeof API): void { * @returns Api from games module. */ export function getApi(): typeof API { - const data = game.modules.get(CONSTANTS.MODULE_NAME) as unknown as MysteryItemModuleData; - return data.api; + const data = game.modules.get(CONSTANTS.MODULE_NAME) as unknown as MysteryItemModuleData; + return data.api; } /** @@ -87,8 +87,8 @@ export function getApi(): typeof API { * @param socket to set to game module. */ export function setSocket(socket: any): void { - const data = game.modules.get(CONSTANTS.MODULE_NAME) as unknown as MysteryItemModuleData; - data.socket = socket; + const data = game.modules.get(CONSTANTS.MODULE_NAME) as unknown as MysteryItemModuleData; + data.socket = socket; } /* @@ -96,6 +96,6 @@ export function setSocket(socket: any): void { * @returns Socket from games module. */ export function getSocket() { - const data = game.modules.get(CONSTANTS.MODULE_NAME) as unknown as MysteryItemModuleData; - return data.socket; + const data = game.modules.get(CONSTANTS.MODULE_NAME) as unknown as MysteryItemModuleData; + return data.socket; } diff --git a/src/lang/de.json b/src/lang/de.json index 1797c1d..a371bd1 100644 --- a/src/lang/de.json +++ b/src/lang/de.json @@ -1,94 +1,94 @@ { - "forien-unidentified-items": { - "NewMystified": "Unidentifizierter Gegenstand", - "Mystify": "Mystifizieren", - "MystifyReplace": "Ersetze mit mystifiziertem Gegenstand", - "MystifyAs": "Mystifiziere als…", - "MystifyAdvanced": "Mystifiziere (erweitert)…", - "Identify": "Identifizieren", - "Peek": "Ansehen", + "forien-unidentified-items": { + "NewMystified": "Unidentifizierter Gegenstand", + "Mystify": "Mystifizieren", + "MystifyReplace": "Ersetze mit mystifiziertem Gegenstand", + "MystifyAs": "Mystifiziere als…", + "MystifyAdvanced": "Mystifiziere (erweitert)…", + "Identify": "Identifizieren", + "Peek": "Ansehen", - "Item": { - "Original": "Original", - "Mystified": "Mystifiziert" - }, + "Item": { + "Original": "Original", + "Mystified": "Mystifiziert" + }, - "Dialog": { - "MystifyAs": { - "Title": "Mystifiziere {nameItem}", - "Header": "Quelle der Transmogrifikation auswählen:", - "DropZone": "Einen Gegenstand hierhin ziehen, um ihn als neue Erscheinung für {nameItem} festzulegen", - "Cancel": "Abbrechen", - "Mystify": "Mystifizieren", - "MystifyReplace": "Ersetzen", - "MystifyAdvanced": "Erweitert…" - }, - "MystifyAdvanced": { - "Title": "Mystifiziere {nameItem}", - "Meta": "Metadaten des Gegenstands", - "Original": "Quelle", - "Result": "Ergebnis", - "Default": "Voreinstellung", - "Properties": "Zu übernehmende Eigenschaften", - "Cancel": "Abbrechen", - "Mystify": "Mystifizieren", - "MystifyReplace": "Ersetzen" - }, - "resetsettings": { - "title": "Moduleinstellungen zurücksetzen", - "content": "Bist Du sicher, dass alle Einstellungen des Moduls auf die Voreinstellungen des aktuellen Systems zurückgesetzt werden sollen?Dies kann nicht rückgängig gemacht werden!", - "confirm": "Moduleinstellungen zurücksetzen", - "cancel": "Abbrechen" - }, - "nosystemfound": { - "title": "System nicht erkannt", - "content": "Dieses System wird aktuell nicht vollständig unterstützt. Das bedeutet, dass dieses Modul nicht weiß, wie es mit den Gegenständen des Systems am besten umgehen soll, kann aber trotzdem eingeschränkt arbeiten.

Mit ein wenig technischem Verständnis kannst Du diese Einstellungen selbst vornehmen." - }, - "systemfound": { - "title": "System erkannt", - "content": "Dieses System war zuvor nicht unterstützt, wurde aber in einem Update hinzugefügt!

Möchtest Du die Voreinstellungen für dieses System laden?", - "confirm": "Voreinstellungen des Systems anwenden" - } - }, + "Dialog": { + "MystifyAs": { + "Title": "Mystifiziere {nameItem}", + "Header": "Quelle der Transmogrifikation auswählen:", + "DropZone": "Einen Gegenstand hierhin ziehen, um ihn als neue Erscheinung für {nameItem} festzulegen", + "Cancel": "Abbrechen", + "Mystify": "Mystifizieren", + "MystifyReplace": "Ersetzen", + "MystifyAdvanced": "Erweitert…" + }, + "MystifyAdvanced": { + "Title": "Mystifiziere {nameItem}", + "Meta": "Metadaten des Gegenstands", + "Original": "Quelle", + "Result": "Ergebnis", + "Default": "Voreinstellung", + "Properties": "Zu übernehmende Eigenschaften", + "Cancel": "Abbrechen", + "Mystify": "Mystifizieren", + "MystifyReplace": "Ersetzen" + }, + "resetsettings": { + "title": "Moduleinstellungen zurücksetzen", + "content": "Bist Du sicher, dass alle Einstellungen des Moduls auf die Voreinstellungen des aktuellen Systems zurückgesetzt werden sollen?Dies kann nicht rückgängig gemacht werden!", + "confirm": "Moduleinstellungen zurücksetzen", + "cancel": "Abbrechen" + }, + "nosystemfound": { + "title": "System nicht erkannt", + "content": "Dieses System wird aktuell nicht vollständig unterstützt. Das bedeutet, dass dieses Modul nicht weiß, wie es mit den Gegenständen des Systems am besten umgehen soll, kann aber trotzdem eingeschränkt arbeiten.

Mit ein wenig technischem Verständnis kannst Du diese Einstellungen selbst vornehmen." + }, + "systemfound": { + "title": "System erkannt", + "content": "Dieses System war zuvor nicht unterstützt, wurde aber in einem Update hinzugefügt!

Möchtest Du die Voreinstellungen für dieses System laden?", + "confirm": "Voreinstellungen des Systems anwenden" + } + }, - "Settings": { - "allowNestedItems": { - "Name": "Verschachtelung erlauben", - "Hint": "Auswählen, um verschachteltes Mystifizieren eines bereits mystischen Gegenstandes zu erlauben. Die einzelnen Ebenen können dann separat nacheinander identifiziert werden." - }, - "defaultIcons": { - "name": "Standardsymbol", - "hint": "Auswählen, welches Symbol für bestimmte Arten von Gegenständen verwendet wird.", - "label": "Symbolverwaltung öffnen" - }, - "itemProperties": { - "name": "Übernommene Eigenschaften", - "hint": "Auswählen, welche Eigenschaften standardmäßig beim Mystifizieren übernommen werden sollen", - "label": "Eigenschaftenverwaltung öffnen" - }, - "keepOldIcon": { - "name": "Ursprüngliches Symbol behalten", - "hint": "Auswählen, um das ursprüngliche Symbol beim Mystifizieren zu behalten. Erweiterte Mystifizierung erlaubt weiterhin eine Auswahl zwischen ursprünglichem und voreingestelltem Symbol." - }, - "removeLabelButtonsSheetHeader": { - "name": "Beschriftung der Schaltflächen im Kopfbereich des Gegenstandsbogens entfernen", - "hint": "Nützlich für kleine Bildschirme, standardmäßig aktiv." - }, - "reset": { - "name": "Auf Voreinstellungen zurücksetzen", - "label": "Einstellungen auf Voreinstellungen zurücksetzen.", - "hint": "Dies wird alle Einstellungen auf die Voreinstellungen des Systems zurücksetzen." - }, - "debug": { - "name": "Debugging aktivieren", - "label": "Ausgaben zur Fehlersuche in der Konsole anzeigen.", - "hint": "" - } - }, + "Settings": { + "allowNestedItems": { + "Name": "Verschachtelung erlauben", + "Hint": "Auswählen, um verschachteltes Mystifizieren eines bereits mystischen Gegenstandes zu erlauben. Die einzelnen Ebenen können dann separat nacheinander identifiziert werden." + }, + "defaultIcons": { + "name": "Standardsymbol", + "hint": "Auswählen, welches Symbol für bestimmte Arten von Gegenständen verwendet wird.", + "label": "Symbolverwaltung öffnen" + }, + "itemProperties": { + "name": "Übernommene Eigenschaften", + "hint": "Auswählen, welche Eigenschaften standardmäßig beim Mystifizieren übernommen werden sollen", + "label": "Eigenschaftenverwaltung öffnen" + }, + "keepOldIcon": { + "name": "Ursprüngliches Symbol behalten", + "hint": "Auswählen, um das ursprüngliche Symbol beim Mystifizieren zu behalten. Erweiterte Mystifizierung erlaubt weiterhin eine Auswahl zwischen ursprünglichem und voreingestelltem Symbol." + }, + "removeLabelButtonsSheetHeader": { + "name": "Beschriftung der Schaltflächen im Kopfbereich des Gegenstandsbogens entfernen", + "hint": "Nützlich für kleine Bildschirme, standardmäßig aktiv." + }, + "reset": { + "name": "Auf Voreinstellungen zurücksetzen", + "label": "Einstellungen auf Voreinstellungen zurücksetzen.", + "hint": "Dies wird alle Einstellungen auf die Voreinstellungen des Systems zurücksetzen." + }, + "debug": { + "name": "Debugging aktivieren", + "label": "Ausgaben zur Fehlersuche in der Konsole anzeigen.", + "hint": "" + } + }, - "Notifications": { - "defaultIconsInitialized": "Forien's Unidentified Items | Voreingestellte Symbole für Gegenstände wurden zufällig zugewiesen. Weitere Informationen findest Du in den Moduleinstellungen.", - "defaultPropertiesInitialized": "Forien's Unidentified Items | Voreinstellungen für übernommene Eigenschaften wurden erstellt. Weitere Informationen findest Du in den Moduleinstellungen." - } - } + "Notifications": { + "defaultIconsInitialized": "Forien's Unidentified Items | Voreingestellte Symbole für Gegenstände wurden zufällig zugewiesen. Weitere Informationen findest Du in den Moduleinstellungen.", + "defaultPropertiesInitialized": "Forien's Unidentified Items | Voreinstellungen für übernommene Eigenschaften wurden erstellt. Weitere Informationen findest Du in den Moduleinstellungen." + } + } } diff --git a/src/lang/en.json b/src/lang/en.json index 2fe25be..7b95e74 100644 --- a/src/lang/en.json +++ b/src/lang/en.json @@ -1,94 +1,94 @@ { - "forien-unidentified-items": { - "NewMystified": "Unidentified Item", - "Mystify": "Mystify", - "MystifyReplace": "Replace with Mystified", - "MystifyAs": "Mystify as…", - "MystifyAdvanced": "Mystify (advanced)…", - "Identify": "Identify", - "Peek": "Peek", + "forien-unidentified-items": { + "NewMystified": "Unidentified Item", + "Mystify": "Mystify", + "MystifyReplace": "Replace with Mystified", + "MystifyAs": "Mystify as…", + "MystifyAdvanced": "Mystify (advanced)…", + "Identify": "Identify", + "Peek": "Peek", - "Item": { - "Original": "Original", - "Mystified": "Mystified" - }, + "Item": { + "Original": "Original", + "Mystified": "Mystified" + }, - "Dialog": { - "MystifyAs": { - "Title": "Mystify {nameItem}", - "Header": "Select Transmogrification source:", - "DropZone": "Drag & Drop an Item here to set it as new look for {nameItem}", - "Cancel": "Cancel", - "Mystify": "Mystify", - "MystifyReplace": "Replace", - "MystifyAdvanced": "Advanced…" - }, - "MystifyAdvanced": { - "Title": "Mystify {nameItem}", - "Meta": "Item's Metadata", - "Original": "Source", - "Result": "Result", - "Default": "Default", - "Properties": "Properties to keep", - "Cancel": "Cancel", - "Mystify": "Mystify", - "MystifyReplace": "Replace" - }, - "resetsettings": { - "title": "Reset Module Settings", - "content": "Are you sure you want to reset all of the module settings to the current system's defaults? This cannot be undone!", - "confirm": "Reset Module Settings", - "cancel": "Cancel" - }, - "nosystemfound": { - "title": "System Not Recognized", - "content": "This system is not currently fully supported. This means that the module does not know how to best handle this system's items, but can still operate in a limited fashion.

You can configure the module's settings yourself, but it requires a bit of technical know-how." - }, - "systemfound": { - "title": "System Recognized", - "content": "This system was previously not supported, but in an recent update it was added as a supported system!

Do you want to load this system's default module settings?", - "confirm": "Apply System Defaults" - } - }, + "Dialog": { + "MystifyAs": { + "Title": "Mystify {nameItem}", + "Header": "Select Transmogrification source:", + "DropZone": "Drag & Drop an Item here to set it as new look for {nameItem}", + "Cancel": "Cancel", + "Mystify": "Mystify", + "MystifyReplace": "Replace", + "MystifyAdvanced": "Advanced…" + }, + "MystifyAdvanced": { + "Title": "Mystify {nameItem}", + "Meta": "Item's Metadata", + "Original": "Source", + "Result": "Result", + "Default": "Default", + "Properties": "Properties to keep", + "Cancel": "Cancel", + "Mystify": "Mystify", + "MystifyReplace": "Replace" + }, + "resetsettings": { + "title": "Reset Module Settings", + "content": "Are you sure you want to reset all of the module settings to the current system's defaults? This cannot be undone!", + "confirm": "Reset Module Settings", + "cancel": "Cancel" + }, + "nosystemfound": { + "title": "System Not Recognized", + "content": "This system is not currently fully supported. This means that the module does not know how to best handle this system's items, but can still operate in a limited fashion.

You can configure the module's settings yourself, but it requires a bit of technical know-how." + }, + "systemfound": { + "title": "System Recognized", + "content": "This system was previously not supported, but in an recent update it was added as a supported system!

Do you want to load this system's default module settings?", + "confirm": "Apply System Defaults" + } + }, - "Settings": { - "allowNestedItems": { - "Name": "Allow tiering (nesting)", - "Hint": "Check this option to be able to Mystify a Mystified Item, allowing for nested/tiered items that can be identified one at a time." - }, - "defaultIcons": { - "name": "Default Icons", - "hint": "Select which icons should be used as defaults for specific Item types.", - "label": "Open Icon Manager" - }, - "itemProperties": { - "name": "Persisting Properties", - "hint": "Select which Item properties should be by default carried over to mystified item.", - "label": "Open Property Manager" - }, - "keepOldIcon": { - "name": "Keep original Icon", - "hint": "Check this setting to keep original item icon when mystifying. Advanced Mystify still allows manually selecting original vs default icons." - }, - "removeLabelButtonsSheetHeader": { - "name": "Remove label from buttons on the header item sheet", - "hint": "Remove label from buttons on the header item sheet, Useful for little screen and mobile, by default is true" - }, - "reset": { - "name": "Reset settings to default", - "label": "Reset Settings To Default", - "hint": "This will reset all of the settings of back to the active game system's default." - }, - "debug": { - "name": "Enable debugging", - "label": "Prints debug messages to the console", - "hint": "" - } - }, + "Settings": { + "allowNestedItems": { + "Name": "Allow tiering (nesting)", + "Hint": "Check this option to be able to Mystify a Mystified Item, allowing for nested/tiered items that can be identified one at a time." + }, + "defaultIcons": { + "name": "Default Icons", + "hint": "Select which icons should be used as defaults for specific Item types.", + "label": "Open Icon Manager" + }, + "itemProperties": { + "name": "Persisting Properties", + "hint": "Select which Item properties should be by default carried over to mystified item.", + "label": "Open Property Manager" + }, + "keepOldIcon": { + "name": "Keep original Icon", + "hint": "Check this setting to keep original item icon when mystifying. Advanced Mystify still allows manually selecting original vs default icons." + }, + "removeLabelButtonsSheetHeader": { + "name": "Remove label from buttons on the header item sheet", + "hint": "Remove label from buttons on the header item sheet, Useful for little screen and mobile, by default is true" + }, + "reset": { + "name": "Reset settings to default", + "label": "Reset Settings To Default", + "hint": "This will reset all of the settings of back to the active game system's default." + }, + "debug": { + "name": "Enable debugging", + "label": "Prints debug messages to the console", + "hint": "" + } + }, - "Notifications": { - "defaultIconsInitialized": "Forien's Unidentified Items | Default Item Type Icons has been randomly assigned. Please visit Module Settings for more information.", - "defaultPropertiesInitialized": "Forien's Unidentified Items | Default Persisting Item Properties have been generated. Please visit Module Settings for more information." - } - } + "Notifications": { + "defaultIconsInitialized": "Forien's Unidentified Items | Default Item Type Icons has been randomly assigned. Please visit Module Settings for more information.", + "defaultPropertiesInitialized": "Forien's Unidentified Items | Default Persisting Item Properties have been generated. Please visit Module Settings for more information." + } + } } diff --git a/src/lang/es.json b/src/lang/es.json index 38504dd..89bb8ef 100644 --- a/src/lang/es.json +++ b/src/lang/es.json @@ -1,65 +1,65 @@ { - "forien-unidentified-items": { - "NewMystified": "Objeto no Identificado", - "Mystify": "Ocultar", - "MystifyReplace": "Reemplazar con Ocultado", - "MystifyAs": "Ocultar como…", - "MystifyAdvanced": "Ocultar (avanzado)…", - "Identify": "Identificar", - "Peek": "Ojear", + "forien-unidentified-items": { + "NewMystified": "Objeto no Identificado", + "Mystify": "Ocultar", + "MystifyReplace": "Reemplazar con Ocultado", + "MystifyAs": "Ocultar como…", + "MystifyAdvanced": "Ocultar (avanzado)…", + "Identify": "Identificar", + "Peek": "Ojear", - "Item": { - "Original": "Original", - "Mystified": "Ocultado" - }, + "Item": { + "Original": "Original", + "Mystified": "Ocultado" + }, - "Dialog": { - "MystifyAs": { - "Title": "Ocultar {nameItem}", - "Header": "Seleccione el origen de la transmogrificación:", - "DropZone": "Arrastre y Suelte un objeto aquí para configurarlo como la nueva visual de {nameItem}", - "Cancel": "Cancelar", - "Mystify": "Ocultar", - "MystifyReplace": "Reemplazar", - "MystifyAdvanced": "Avanzado…" - }, - "MystifyAdvanced": { - "Title": "Ocultar {nameItem}", - "Meta": "Metadatos del Objeto", - "Original": "Origen", - "Result": "Resultado", - "Default": "Por Defecto", - "Properties": "Propiedades a mantener", - "Cancel": "Cancelar", - "Mystify": "Ocultar", - "MystifyReplace": "Reemplazar" - } - }, + "Dialog": { + "MystifyAs": { + "Title": "Ocultar {nameItem}", + "Header": "Seleccione el origen de la transmogrificación:", + "DropZone": "Arrastre y Suelte un objeto aquí para configurarlo como la nueva visual de {nameItem}", + "Cancel": "Cancelar", + "Mystify": "Ocultar", + "MystifyReplace": "Reemplazar", + "MystifyAdvanced": "Avanzado…" + }, + "MystifyAdvanced": { + "Title": "Ocultar {nameItem}", + "Meta": "Metadatos del Objeto", + "Original": "Origen", + "Result": "Resultado", + "Default": "Por Defecto", + "Properties": "Propiedades a mantener", + "Cancel": "Cancelar", + "Mystify": "Ocultar", + "MystifyReplace": "Reemplazar" + } + }, - "Settings": { - "allowNestedItems": { - "Name": "Permitir apilado (anidamiento)", - "Hint": "Habilite esta opción para permitir Ocultar un Objeto ya ocultado, permitiendo el apilamiento o anidamiento de objetos que pueden ser identificados uno a la vez." - }, - "defaultIcons": { - "name": "Íconos por defecto", - "hint": "Seleccione cuáles objetos deben ser utilizados por defecto según su tipo.", - "label": "Abrir Administrador de Íconos" - }, - "itemProperties": { - "name": "Propiedades Persistentes", - "hint": "Seleccione cuales propiedades del objeto deben ser permanecer en los objetos ocultados.", - "label": "Abrir Administrador de Propiedades" - }, - "keepOldIcon": { - "name": "Mantener el ícono original", - "hint": "Habilite esta opción para mantener el ícono original del objeto cuando se oculte. Ocultar (Avanzado) aún permite manualmente seleccionar de manera individual el ícono." - } - }, + "Settings": { + "allowNestedItems": { + "Name": "Permitir apilado (anidamiento)", + "Hint": "Habilite esta opción para permitir Ocultar un Objeto ya ocultado, permitiendo el apilamiento o anidamiento de objetos que pueden ser identificados uno a la vez." + }, + "defaultIcons": { + "name": "Íconos por defecto", + "hint": "Seleccione cuáles objetos deben ser utilizados por defecto según su tipo.", + "label": "Abrir Administrador de Íconos" + }, + "itemProperties": { + "name": "Propiedades Persistentes", + "hint": "Seleccione cuales propiedades del objeto deben ser permanecer en los objetos ocultados.", + "label": "Abrir Administrador de Propiedades" + }, + "keepOldIcon": { + "name": "Mantener el ícono original", + "hint": "Habilite esta opción para mantener el ícono original del objeto cuando se oculte. Ocultar (Avanzado) aún permite manualmente seleccionar de manera individual el ícono." + } + }, - "Notifications": { - "defaultIconsInitialized": "Forien's Unidentified Items | Los Íconos por Defecto según el Tipo de Objeto han sido asignados de forma aleatoria. Favor ingresar a la Configuración del Módulo para más información.", - "defaultPropertiesInitialized": "Forien's Unidentified Items | Las Propiedades Persistentes por Defecto de los Objectos fueron generados. Favor ingresar a la Configuración del Módulo para más información." - } - } + "Notifications": { + "defaultIconsInitialized": "Forien's Unidentified Items | Los Íconos por Defecto según el Tipo de Objeto han sido asignados de forma aleatoria. Favor ingresar a la Configuración del Módulo para más información.", + "defaultPropertiesInitialized": "Forien's Unidentified Items | Las Propiedades Persistentes por Defecto de los Objectos fueron generados. Favor ingresar a la Configuración del Módulo para más información." + } + } } diff --git a/src/lang/fr.json b/src/lang/fr.json index a260f82..3df4a64 100644 --- a/src/lang/fr.json +++ b/src/lang/fr.json @@ -1,65 +1,65 @@ { - "forien-unidentified-items": { - "NewMystified": "Objet non identifié", - "Mystify": "Mystifier", - "MystifyReplace": "Remplacer avec l'objet mystifié", - "MystifyAs": "Mystifier en…", - "MystifyAdvanced": "Mystifier (avancé)…", - "Identify": "Identifier", - "Peek": "Voir", + "forien-unidentified-items": { + "NewMystified": "Objet non identifié", + "Mystify": "Mystifier", + "MystifyReplace": "Remplacer avec l'objet mystifié", + "MystifyAs": "Mystifier en…", + "MystifyAdvanced": "Mystifier (avancé)…", + "Identify": "Identifier", + "Peek": "Voir", - "Item": { - "Original": "Original", - "Mystified": "Mystifié" - }, + "Item": { + "Original": "Original", + "Mystified": "Mystifié" + }, - "Dialog": { - "MystifyAs": { - "Title": "Mystifier {nameItem}", - "Header": "Sélectionnez la source de transmogrification :", - "DropZone": "Glissez-déposez un élément ici pour donner une nouvelle apparence à {nameItem}", - "Cancel": "Annuler", - "Mystify": "Mystifier", - "MystifyReplace": "Remplacer", - "MystifyAdvanced": "Avancé" - }, - "MystifyAdvanced": { - "Title": "Mystifier {nameItem}", - "Meta": "Métadonnées de l'objet", - "Original": "Source", - "Result": "Résultat", - "Default": "Par défaut", - "Properties": "Propriétés à conserver", - "Cancel": "Annuler", - "Mystify": "Mystifier", - "MystifyReplace": "Remplacer" - } - }, + "Dialog": { + "MystifyAs": { + "Title": "Mystifier {nameItem}", + "Header": "Sélectionnez la source de transmogrification :", + "DropZone": "Glissez-déposez un élément ici pour donner une nouvelle apparence à {nameItem}", + "Cancel": "Annuler", + "Mystify": "Mystifier", + "MystifyReplace": "Remplacer", + "MystifyAdvanced": "Avancé" + }, + "MystifyAdvanced": { + "Title": "Mystifier {nameItem}", + "Meta": "Métadonnées de l'objet", + "Original": "Source", + "Result": "Résultat", + "Default": "Par défaut", + "Properties": "Propriétés à conserver", + "Cancel": "Annuler", + "Mystify": "Mystifier", + "MystifyReplace": "Remplacer" + } + }, - "Settings": { - "allowNestedItems": { - "Name": "Autoriser l'imbrication", - "Hint": "Cochez cette option pour pouvoir mystifier un objet déjà mystifié, ce qui permet d'identifier les objets ainsi imbriqués un par un." - }, - "defaultIcons": { - "name": "Icônes par défaut", - "hint": "Sélectionnez les icônes qui doivent être utilisées par défaut pour des types d'objet spécifiques.", - "label": "Ouvrir le gestionnaire d'icônes" - }, - "itemProperties": { - "name": "Propriétés persistantes", - "hint": "Sélectionnez les propriétés de l'objet qui doivent être reportées par défaut sur l'objet mystifié.", - "label": "Ouvrir le gestionnaire de propriétés" - }, - "keepOldIcon": { - "name": "Conserver l'icône originale", - "hint": "Cochez ce paramètre pour conserver l'icône de l'objet original lors de la mystification. La mystification avancée permet toujours de sélectionner manuellement les icônes d'origine par rapport aux icônes par défaut." - } - }, + "Settings": { + "allowNestedItems": { + "Name": "Autoriser l'imbrication", + "Hint": "Cochez cette option pour pouvoir mystifier un objet déjà mystifié, ce qui permet d'identifier les objets ainsi imbriqués un par un." + }, + "defaultIcons": { + "name": "Icônes par défaut", + "hint": "Sélectionnez les icônes qui doivent être utilisées par défaut pour des types d'objet spécifiques.", + "label": "Ouvrir le gestionnaire d'icônes" + }, + "itemProperties": { + "name": "Propriétés persistantes", + "hint": "Sélectionnez les propriétés de l'objet qui doivent être reportées par défaut sur l'objet mystifié.", + "label": "Ouvrir le gestionnaire de propriétés" + }, + "keepOldIcon": { + "name": "Conserver l'icône originale", + "hint": "Cochez ce paramètre pour conserver l'icône de l'objet original lors de la mystification. La mystification avancée permet toujours de sélectionner manuellement les icônes d'origine par rapport aux icônes par défaut." + } + }, - "Notifications": { - "defaultIconsInitialized": "Forien's Unidentified Items | Les icônes des types d'objets par défaut ont été attribuées de manière aléatoire. Pour plus d'informations, veuillez consulter la page Paramètres des modules.", - "defaultPropertiesInitialized": "Forien's Unidentified Items | Les propriétés persistantes par défaut des objets ont été générées. Pour plus d'informations, veuillez consulter la page Paramètres des modules." - } - } + "Notifications": { + "defaultIconsInitialized": "Forien's Unidentified Items | Les icônes des types d'objets par défaut ont été attribuées de manière aléatoire. Pour plus d'informations, veuillez consulter la page Paramètres des modules.", + "defaultPropertiesInitialized": "Forien's Unidentified Items | Les propriétés persistantes par défaut des objets ont été générées. Pour plus d'informations, veuillez consulter la page Paramètres des modules." + } + } } diff --git a/src/lang/ja.json b/src/lang/ja.json index f0ea129..1560984 100644 --- a/src/lang/ja.json +++ b/src/lang/ja.json @@ -1,65 +1,65 @@ { - "forien-unidentified-items": { - "NewMystified": "未識別アイテム", - "Mystify": "神秘化", - "MystifyReplace": "神秘化して置換", - "MystifyAs": "偽装して神秘化", - "MystifyAdvanced": "高度な神秘化", - "Identify": "識別", - "Peek": "覗き見", + "forien-unidentified-items": { + "NewMystified": "未識別アイテム", + "Mystify": "神秘化", + "MystifyReplace": "神秘化して置換", + "MystifyAs": "偽装して神秘化", + "MystifyAdvanced": "高度な神秘化", + "Identify": "識別", + "Peek": "覗き見", - "Item": { - "Original": "オリジナル", - "Mystified": "未識別" - }, + "Item": { + "Original": "オリジナル", + "Mystified": "未識別" + }, - "Dialog": { - "MystifyAs": { - "Title": "{nameItem} の神秘化", - "Header": "偽装先のアイテムを指定してください:", - "DropZone": "ここにアイテムをドラッグ&ドロップすると、それが{nameItem}の新しい外観になります。", - "Cancel": "キャンセル", - "Mystify": "神秘化", - "MystifyReplace": "置換", - "MystifyAdvanced": "高度な神秘化" - }, - "MystifyAdvanced": { - "Title": "{nameItem}の神秘化", - "Meta": "アイテムのメタデータ", - "Original": "元のアイテム", - "Result": "結果", - "Default": "デフォルト", - "Properties": "保持するプロパティ", - "Cancel": "キャンセル", - "Mystify": "神秘化", - "MystifyReplace": "置換" - } - }, + "Dialog": { + "MystifyAs": { + "Title": "{nameItem} の神秘化", + "Header": "偽装先のアイテムを指定してください:", + "DropZone": "ここにアイテムをドラッグ&ドロップすると、それが{nameItem}の新しい外観になります。", + "Cancel": "キャンセル", + "Mystify": "神秘化", + "MystifyReplace": "置換", + "MystifyAdvanced": "高度な神秘化" + }, + "MystifyAdvanced": { + "Title": "{nameItem}の神秘化", + "Meta": "アイテムのメタデータ", + "Original": "元のアイテム", + "Result": "結果", + "Default": "デフォルト", + "Properties": "保持するプロパティ", + "Cancel": "キャンセル", + "Mystify": "神秘化", + "MystifyReplace": "置換" + } + }, - "Settings": { - "allowNestedItems": { - "Name": "階層化(入れ子)を許可する", - "Hint": "このオプションを有効化すると、神秘化されたアイテムを、さらに神秘化できるようになり、階層化され、入れ子になったアイテムを1段階ずつ識別できます" - }, - "defaultIcons": { - "name": "デフォルトアイコン", - "hint": "アイテムタイプごとに、デフォルトとして使用するアイコンを選択します。", - "label": "アイコンマネージャーを開く" - }, - "itemProperties": { - "name": "引き継がれるプロパティ", - "hint": "神秘化時にデフォルトで引き継がれるプロパティを選択します。", - "label": "プロパティマネージャーを開く" - }, - "keepOldIcon": { - "name": "オリジナルのアイコンを保持する", - "hint": "このオプションを有効化すると、神秘化時にオリジナルのアイテムアイコンを保持します。高度な神秘化では、オリジナルアイコンとデフォルトアイコンを手動で選択できます。" - } - }, + "Settings": { + "allowNestedItems": { + "Name": "階層化(入れ子)を許可する", + "Hint": "このオプションを有効化すると、神秘化されたアイテムを、さらに神秘化できるようになり、階層化され、入れ子になったアイテムを1段階ずつ識別できます" + }, + "defaultIcons": { + "name": "デフォルトアイコン", + "hint": "アイテムタイプごとに、デフォルトとして使用するアイコンを選択します。", + "label": "アイコンマネージャーを開く" + }, + "itemProperties": { + "name": "引き継がれるプロパティ", + "hint": "神秘化時にデフォルトで引き継がれるプロパティを選択します。", + "label": "プロパティマネージャーを開く" + }, + "keepOldIcon": { + "name": "オリジナルのアイコンを保持する", + "hint": "このオプションを有効化すると、神秘化時にオリジナルのアイテムアイコンを保持します。高度な神秘化では、オリジナルアイコンとデフォルトアイコンを手動で選択できます。" + } + }, - "Notifications": { - "defaultIconsInitialized": "Forien's Unidentified Items | アイテムタイプごとのデフォルトアイコンがランダムに割り当てられました。詳しくはモジュール設定を確認してください。", - "defaultPropertiesInitialized": "Forien's Unidentified Items | デフォルトの“継続されるプロパティ”が生成されました。詳しくはモジュール設定を確認してください。" - } - } + "Notifications": { + "defaultIconsInitialized": "Forien's Unidentified Items | アイテムタイプごとのデフォルトアイコンがランダムに割り当てられました。詳しくはモジュール設定を確認してください。", + "defaultPropertiesInitialized": "Forien's Unidentified Items | デフォルトの“継続されるプロパティ”が生成されました。詳しくはモジュール設定を確認してください。" + } + } } diff --git a/src/lang/ko.json b/src/lang/ko.json index 3bc102d..754d4ba 100644 --- a/src/lang/ko.json +++ b/src/lang/ko.json @@ -1,65 +1,65 @@ { - "forien-unidentified-items": { - "NewMystified": "미식별 아이템", - "Mystify": "미식별", - "MystifyReplace": "미식별 아이템으로 대체", - "MystifyAs": "미식별화..", - "MystifyAdvanced": "미식별화(고급)…", - "Identify": "식별", - "Peek": "보기", + "forien-unidentified-items": { + "NewMystified": "미식별 아이템", + "Mystify": "미식별", + "MystifyReplace": "미식별 아이템으로 대체", + "MystifyAs": "미식별화..", + "MystifyAdvanced": "미식별화(고급)…", + "Identify": "식별", + "Peek": "보기", - "Item": { - "Original": "원본", - "Mystified": "미식별" - }, + "Item": { + "Original": "원본", + "Mystified": "미식별" + }, - "Dialog": { - "MystifyAs": { - "Title": "미식별 {nameItem}", - "Header": "변형할 원본 선택:", - "DropZone": "아이템을 이곳에 끌어다 놓아 {nameItem}의 새 모습으로 설정", - "Cancel": "취소", - "Mystify": "미식별", - "MystifyReplace": "대체", - "MystifyAdvanced": "고급…" - }, - "MystifyAdvanced": { - "Title": "미식별 {nameItem}", - "Meta": "아이템의 메타데이터", - "Original": "원본", - "Result": "결과", - "Default": "디폴트", - "Properties": "유지할 속성", - "Cancel": "취소", - "Mystify": "미식별", - "MystifyReplace": "대체" - } - }, + "Dialog": { + "MystifyAs": { + "Title": "미식별 {nameItem}", + "Header": "변형할 원본 선택:", + "DropZone": "아이템을 이곳에 끌어다 놓아 {nameItem}의 새 모습으로 설정", + "Cancel": "취소", + "Mystify": "미식별", + "MystifyReplace": "대체", + "MystifyAdvanced": "고급…" + }, + "MystifyAdvanced": { + "Title": "미식별 {nameItem}", + "Meta": "아이템의 메타데이터", + "Original": "원본", + "Result": "결과", + "Default": "디폴트", + "Properties": "유지할 속성", + "Cancel": "취소", + "Mystify": "미식별", + "MystifyReplace": "대체" + } + }, - "Settings": { - "allowNestedItems": { - "Name": "단계화 허용 (nesting)", - "Hint": "한 번에 하나씩 식별할 수 있는 단계화 된 미식별 아이템을 만드는 것을 허용하려면 이 옵션을 선택한다. " - }, - "defaultIcons": { - "name": "기본 아이콘", - "hint": "특정 아이템 타입의 기본값으로 사용할 아이콘을 선택한다.", - "label": "아이콘 매니저 열기" - }, - "itemProperties": { - "name": "지속적 속성", - "hint": "어떤 아이템 속성이 미식별 아이템의 기본 속성으로 유지 적용되는지 선택한다.", - "label": "속성 매니저 열기" - }, - "keepOldIcon": { - "name": "원본 아이콘 유지", - "hint": "미식별 전환시 아이템의 원본 아이콘을 유지하려면 이 설정을 선택한다. 고급 미식별화는 여전히 원본 아이콘과 기본 아이콘을 수동으로 선택할 수 있다." - } - }, + "Settings": { + "allowNestedItems": { + "Name": "단계화 허용 (nesting)", + "Hint": "한 번에 하나씩 식별할 수 있는 단계화 된 미식별 아이템을 만드는 것을 허용하려면 이 옵션을 선택한다. " + }, + "defaultIcons": { + "name": "기본 아이콘", + "hint": "특정 아이템 타입의 기본값으로 사용할 아이콘을 선택한다.", + "label": "아이콘 매니저 열기" + }, + "itemProperties": { + "name": "지속적 속성", + "hint": "어떤 아이템 속성이 미식별 아이템의 기본 속성으로 유지 적용되는지 선택한다.", + "label": "속성 매니저 열기" + }, + "keepOldIcon": { + "name": "원본 아이콘 유지", + "hint": "미식별 전환시 아이템의 원본 아이콘을 유지하려면 이 설정을 선택한다. 고급 미식별화는 여전히 원본 아이콘과 기본 아이콘을 수동으로 선택할 수 있다." + } + }, - "Notifications": { - "defaultIconsInitialized": "Forien's Unidentified Items | 기본 아이템 유형 아이콘이 무작위로 할당되었습니다. 자세한 내용은 모듈 설정을 참조해주세요.", - "defaultPropertiesInitialized": "Forien's Unidentified Items | 기본 지속적 항목 속성이 생성되었습니다. 자세한 내용은 모듈 설정을 참조해주세요." - } - } + "Notifications": { + "defaultIconsInitialized": "Forien's Unidentified Items | 기본 아이템 유형 아이콘이 무작위로 할당되었습니다. 자세한 내용은 모듈 설정을 참조해주세요.", + "defaultPropertiesInitialized": "Forien's Unidentified Items | 기본 지속적 항목 속성이 생성되었습니다. 자세한 내용은 모듈 설정을 참조해주세요." + } + } } diff --git a/src/lang/pl.json b/src/lang/pl.json index d954e4d..9972953 100644 --- a/src/lang/pl.json +++ b/src/lang/pl.json @@ -1,61 +1,61 @@ { - "forien-unidentified-items": { - "NewMystified": "Niezidentyfikowany przedmiot", - "Mystify": "Zmistyfikuj", - "MystifyReplace": "Podmień na zmistyfikowany", - "MystifyAs": "Zmistyfikuj jako…", - "MystifyAdvanced": "Zmistyfikuj (zaawansowane)…", - "Identify": "Zidentyfikuj", - "Peek": "Podejrzyj", - "Dialog": { - "MystifyAs": { - "Title": "Zmistyfikuj {nameItem}", - "Header": "Wybierz źródło transmogryfikacji:", - "DropZone": "Przeciągnij i Upuść tu Przedmiot, żeby ustawić go jako wygląd dla „{nameItem}”", - "Cancel": "Anuluj", - "Mystify": "Mistifikuj", - "MystifyReplace": "Podmień", - "MystifyAdvanced": "Zaawansowane..." - }, - "MystifyAdvanced": { - "Title": "Mistyfikuj {nameItem}", - "Meta": "Metadane Przedmiotu", - "Original": "Źródło", - "Result": "Rezultat", - "Default": "Domyślne", - "Properties": "Zachowywane właściwości", - "Cancel": "Anuluj", - "Mystify": "Mistifikuj", - "MystifyReplace": "Podmień" - } - }, - "Settings": { - "defaultIcons": { - "name": "Domyślne ikony", - "hint": "Określ jakie ikony powinny być stosowane dla poszczególnych typów przedmiotów.", - "label": "Otwórz Menadżer Ikon" - }, - "itemProperties": { - "name": "Trwałe Właściwości", - "hint": "Określ jakie właściwości przedmioty powinny być zachowywane w zmistyfikowanym przedmiocie.", - "label": "Otwórz Menadżer Właściwości" - }, - "keepOldIcon": { - "name": "Zachowaj oryginalną ikonę", - "hint": "Zaznacz, aby zachowywać oryginalną ikonę przedmiotu podczas mistyfikacji. Zaawansowana Mistyfikacja nadal pozwalać będzie na manualne określenie ikony." - }, - "allowNestedItems": { - "Hint": "Zaznacz tę opcję aby móc Zmistyfikować Zmistyfikowany przedmiot, pozwalając na zagnieżdżone poziomy wiedzy o przedmiocie lub przedmioty o wielu stadiach rozwoju. Każdy etap należy osobno zidentyfikować.", - "Name": "Zezwól na zagnieżdżanie" - } - }, - "Item": { - "Mystified": "Zmistyfikowany", - "Original": "Oryginał" - }, - "Notifications": { - "defaultIconsInitialized": "Forien's Unidentified Items | Domyślne Ikony Typów Przedmiotów zostały losowo przydzielone. Proszę odwiedź Ustawienia Modułu po więcje informacji.", - "defaultPropertiesInitialized": "Forien's Unidentified Items | Domyślne Trwałe Właściwości Przedmiotów zostały wygenerowane. Proszę odwiedź Ustawienia Modułu po więcje informacji." - } - } + "forien-unidentified-items": { + "NewMystified": "Niezidentyfikowany przedmiot", + "Mystify": "Zmistyfikuj", + "MystifyReplace": "Podmień na zmistyfikowany", + "MystifyAs": "Zmistyfikuj jako…", + "MystifyAdvanced": "Zmistyfikuj (zaawansowane)…", + "Identify": "Zidentyfikuj", + "Peek": "Podejrzyj", + "Dialog": { + "MystifyAs": { + "Title": "Zmistyfikuj {nameItem}", + "Header": "Wybierz źródło transmogryfikacji:", + "DropZone": "Przeciągnij i Upuść tu Przedmiot, żeby ustawić go jako wygląd dla „{nameItem}”", + "Cancel": "Anuluj", + "Mystify": "Mistifikuj", + "MystifyReplace": "Podmień", + "MystifyAdvanced": "Zaawansowane..." + }, + "MystifyAdvanced": { + "Title": "Mistyfikuj {nameItem}", + "Meta": "Metadane Przedmiotu", + "Original": "Źródło", + "Result": "Rezultat", + "Default": "Domyślne", + "Properties": "Zachowywane właściwości", + "Cancel": "Anuluj", + "Mystify": "Mistifikuj", + "MystifyReplace": "Podmień" + } + }, + "Settings": { + "defaultIcons": { + "name": "Domyślne ikony", + "hint": "Określ jakie ikony powinny być stosowane dla poszczególnych typów przedmiotów.", + "label": "Otwórz Menadżer Ikon" + }, + "itemProperties": { + "name": "Trwałe Właściwości", + "hint": "Określ jakie właściwości przedmioty powinny być zachowywane w zmistyfikowanym przedmiocie.", + "label": "Otwórz Menadżer Właściwości" + }, + "keepOldIcon": { + "name": "Zachowaj oryginalną ikonę", + "hint": "Zaznacz, aby zachowywać oryginalną ikonę przedmiotu podczas mistyfikacji. Zaawansowana Mistyfikacja nadal pozwalać będzie na manualne określenie ikony." + }, + "allowNestedItems": { + "Hint": "Zaznacz tę opcję aby móc Zmistyfikować Zmistyfikowany przedmiot, pozwalając na zagnieżdżone poziomy wiedzy o przedmiocie lub przedmioty o wielu stadiach rozwoju. Każdy etap należy osobno zidentyfikować.", + "Name": "Zezwól na zagnieżdżanie" + } + }, + "Item": { + "Mystified": "Zmistyfikowany", + "Original": "Oryginał" + }, + "Notifications": { + "defaultIconsInitialized": "Forien's Unidentified Items | Domyślne Ikony Typów Przedmiotów zostały losowo przydzielone. Proszę odwiedź Ustawienia Modułu po więcje informacji.", + "defaultPropertiesInitialized": "Forien's Unidentified Items | Domyślne Trwałe Właściwości Przedmiotów zostały wygenerowane. Proszę odwiedź Ustawienia Modułu po więcje informacji." + } + } } diff --git a/src/lang/pt-BR.json b/src/lang/pt-BR.json index 9f2f728..3f2d9a2 100644 --- a/src/lang/pt-BR.json +++ b/src/lang/pt-BR.json @@ -1,60 +1,60 @@ { - "forien-unidentified-items": { - "NewMystified": "Item Oculto", - "Mystify": "Ocultar", - "MystifyReplace": "Substituir pelo Ocultado", - "MystifyAs": "Ocultar como…", - "MystifyAdvanced": "Ocultar (avançado)…", - "Identify": "Identificar", - "Peek": "Espiar", + "forien-unidentified-items": { + "NewMystified": "Item Oculto", + "Mystify": "Ocultar", + "MystifyReplace": "Substituir pelo Ocultado", + "MystifyAs": "Ocultar como…", + "MystifyAdvanced": "Ocultar (avançado)…", + "Identify": "Identificar", + "Peek": "Espiar", - "Item": { - "Original": "Original", - "Mystified": "Ocultado" - }, + "Item": { + "Original": "Original", + "Mystified": "Ocultado" + }, - "Dialog": { - "MystifyAs": { - "Title": "Ocultar {nameItem}", - "Header": "Selecione a fonte da Transmogrificação:", - "DropZone": "Arraste & Solte um Item aqui para se tornar a nova forma de {nameItem}", - "Cancel": "Cancelar", - "Mystify": "Ocultar", - "MystifyReplace": "Substituir", - "MystifyAdvanced": "Avançado…" - }, - "MystifyAdvanced": { - "Title": "Ocultar {nameItem}", - "Meta": "Metadados do Item", - "Original": "Original", - "Result": "Resultado", - "Default": "Padrão", - "Properties": "Manter as Propriedades", - "Cancel": "Cancelar", - "Mystify": "Ocultar", - "MystifyReplace": "Substituir" - } - }, + "Dialog": { + "MystifyAs": { + "Title": "Ocultar {nameItem}", + "Header": "Selecione a fonte da Transmogrificação:", + "DropZone": "Arraste & Solte um Item aqui para se tornar a nova forma de {nameItem}", + "Cancel": "Cancelar", + "Mystify": "Ocultar", + "MystifyReplace": "Substituir", + "MystifyAdvanced": "Avançado…" + }, + "MystifyAdvanced": { + "Title": "Ocultar {nameItem}", + "Meta": "Metadados do Item", + "Original": "Original", + "Result": "Resultado", + "Default": "Padrão", + "Properties": "Manter as Propriedades", + "Cancel": "Cancelar", + "Mystify": "Ocultar", + "MystifyReplace": "Substituir" + } + }, - "Settings": { - "allowNestedItems": { - "Name": "Permitir Camadas", - "Hint": "Permite ocultar itens ocultos, criando camadas que podem ser identificadas uma por vez." - }, - "defaultIcons": { - "name": "Icone Padrão", - "hint": "Selecione qual icone será usado como padrão para cada tipo especifico de Itens.", - "label": "Abrir Gerenciador de Icones" - }, - "itemProperties": { - "name": "Manter Propriedades", - "hint": "Selecione quais propriedades do item devem ser transferidas por padrão para o item mistificado.", - "label": "Abrir Gerenciador de Propriedades" - }, - "keepOldIcon": { - "name": "Manter ícone original", - "hint": "Mantenha o ícone original do item quando for ocultado. Ocultação Avançada ainda permite seleciona manualmente qual ícone será usado." - } - } - } + "Settings": { + "allowNestedItems": { + "Name": "Permitir Camadas", + "Hint": "Permite ocultar itens ocultos, criando camadas que podem ser identificadas uma por vez." + }, + "defaultIcons": { + "name": "Icone Padrão", + "hint": "Selecione qual icone será usado como padrão para cada tipo especifico de Itens.", + "label": "Abrir Gerenciador de Icones" + }, + "itemProperties": { + "name": "Manter Propriedades", + "hint": "Selecione quais propriedades do item devem ser transferidas por padrão para o item mistificado.", + "label": "Abrir Gerenciador de Propriedades" + }, + "keepOldIcon": { + "name": "Manter ícone original", + "hint": "Mantenha o ícone original do item quando for ocultado. Ocultação Avançada ainda permite seleciona manualmente qual ícone será usado." + } + } + } } diff --git a/src/module.json b/src/module.json index 590bb78..70d3d4c 100644 --- a/src/module.json +++ b/src/module.json @@ -1,28 +1,28 @@ { - "id": "forien-unidentified-items", - "title": "Forien's Unidentified Items", - "description": "Provides system agnostic solution to handle unidentified items and their identification.", - "version": "0.6.0", + "id": "forien-unidentified-items", + "title": "Forien's Unidentified Items", + "description": "Provides system agnostic solution to handle unidentified items and their identification.", + "version": "0.6.0", "authors": [ - { - "name": "Forien", - "url": "https://www.patreon.com/foundryworkshop" - }, - { - "name": "Matheus Clemente", - "url": "https://www.patreon.com/mclemente" - }, - { - "name": "League-of-Foundry-Developers", - "url": "https://github.com/League-of-Foundry-Developers", - "discord": "", - "twitter": "", - "patreon": "", - "github": "League-of-Foundry-Developers", - "ko-fi": "", - "reddit": "", - "email": "" - } + { + "name": "Forien", + "url": "https://www.patreon.com/foundryworkshop" + }, + { + "name": "Matheus Clemente", + "url": "https://www.patreon.com/mclemente" + }, + { + "name": "League-of-Foundry-Developers", + "url": "https://github.com/League-of-Foundry-Developers", + "discord": "", + "twitter": "", + "patreon": "", + "github": "League-of-Foundry-Developers", + "ko-fi": "", + "reddit": "", + "email": "" + } ], "type": "module", "socket": true, @@ -53,41 +53,41 @@ } ], "languages": [ - { - "lang": "en", - "name": "English", - "path": "lang/en.json" - }, - { - "lang": "ko", - "name": "한국어", - "path": "lang/ko.json" - }, - { - "lang": "pl", - "name": "Polski", - "path": "lang/pl.json" - }, - { - "lang": "pt-BR", - "name": "Português (Brasil)", - "path": "lang/pt-BR.json" - }, - { - "lang": "ja", - "name": "日本語", - "path": "lang/ja.json" - }, - { - "lang": "de", - "name": "Deutsch", - "path": "lang/de.json" - } - ], + { + "lang": "en", + "name": "English", + "path": "lang/en.json" + }, + { + "lang": "ko", + "name": "한국어", + "path": "lang/ko.json" + }, + { + "lang": "pl", + "name": "Polski", + "path": "lang/pl.json" + }, + { + "lang": "pt-BR", + "name": "Português (Brasil)", + "path": "lang/pt-BR.json" + }, + { + "lang": "ja", + "name": "日本語", + "path": "lang/ja.json" + }, + { + "lang": "de", + "name": "Deutsch", + "path": "lang/de.json" + } + ], "packs": [], "scripts": [], - "esmodules": ["init.js"], - "styles": ["styles/style.css"], + "esmodules": ["init.js"], + "styles": ["styles/style.css"], "compatibility": { "minimum": 10, "verified": 10, diff --git a/src/modules/ContextMenu.ts b/src/modules/ContextMenu.ts index 41bd9d7..d17780a 100644 --- a/src/modules/ContextMenu.ts +++ b/src/modules/ContextMenu.ts @@ -1,97 +1,97 @@ -import CONSTANTS from './constants'; -import { MystifiedData, MystifiedFlags } from './ForienUnidentifiedItemsModels'; -import Identification from './Identification'; +import CONSTANTS from "./constants"; +import { MystifiedData, MystifiedFlags } from "./ForienUnidentifiedItemsModels"; +import Identification from "./Identification"; export default function registerContextMenuHook() { - Hooks.on('getItemDirectoryEntryContext', (html, entryOptions) => { - const getOrigData = (li) => { - const id = li[0].dataset.documentId; - const item = game.items?.get(id); + Hooks.on("getItemDirectoryEntryContext", (html, entryOptions) => { + const getOrigData = (li) => { + const id = li[0].dataset.documentId; + const item = game.items?.get(id); - return item.getFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); - }; + return item.getFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); + }; - const mystifyCondition = (li) => { - if (!game.user?.isGM) return false; - const origData = getOrigData(li); - const allowNested = game.settings.get(CONSTANTS.MODULE_NAME, 'allowNestedItems'); + const mystifyCondition = (li) => { + if (!game.user?.isGM) return false; + const origData = getOrigData(li); + const allowNested = game.settings.get(CONSTANTS.MODULE_NAME, "allowNestedItems"); - return !origData || allowNested; - }; + return !origData || allowNested; + }; - const identifyCondition = (li) => { - if (!game.user?.isGM) return false; - const origData = getOrigData(li); + const identifyCondition = (li) => { + if (!game.user?.isGM) return false; + const origData = getOrigData(li); - return !!origData; - }; + return !!origData; + }; - const mystifyOptions = [ - { - name: `${CONSTANTS.MODULE_NAME}.Mystify`, - icon: '', - condition: mystifyCondition, - callback: (li) => { - const id = li[0].dataset.documentId; - Identification.mystify(`Item.${id}`); - }, - }, - { - name: `${CONSTANTS.MODULE_NAME}.MystifyReplace`, - icon: '', - condition: mystifyCondition, - callback: (li) => { - const id = li[0].dataset.documentId; - Identification.mystifyReplace(`Item.${id}`); - }, - }, - { - name: `${CONSTANTS.MODULE_NAME}.MystifyAs`, - icon: '', - condition: mystifyCondition, - callback: (li) => { - const id = li[0].dataset.documentId; - Identification.mystifyAsDialog(`Item.${id}`); - }, - }, - { - name: `${CONSTANTS.MODULE_NAME}.MystifyAdvanced`, - icon: '', - condition: mystifyCondition, - callback: (li) => { - const id = li[0].dataset.documentId; - Identification.mystifyAdvancedDialog(`Item.${id}`); - }, - }, - ]; + const mystifyOptions = [ + { + name: `${CONSTANTS.MODULE_NAME}.Mystify`, + icon: '', + condition: mystifyCondition, + callback: (li) => { + const id = li[0].dataset.documentId; + Identification.mystify(`Item.${id}`); + }, + }, + { + name: `${CONSTANTS.MODULE_NAME}.MystifyReplace`, + icon: '', + condition: mystifyCondition, + callback: (li) => { + const id = li[0].dataset.documentId; + Identification.mystifyReplace(`Item.${id}`); + }, + }, + { + name: `${CONSTANTS.MODULE_NAME}.MystifyAs`, + icon: '', + condition: mystifyCondition, + callback: (li) => { + const id = li[0].dataset.documentId; + Identification.mystifyAsDialog(`Item.${id}`); + }, + }, + { + name: `${CONSTANTS.MODULE_NAME}.MystifyAdvanced`, + icon: '', + condition: mystifyCondition, + callback: (li) => { + const id = li[0].dataset.documentId; + Identification.mystifyAdvancedDialog(`Item.${id}`); + }, + }, + ]; - entryOptions.unshift(...mystifyOptions); + entryOptions.unshift(...mystifyOptions); - entryOptions.unshift({ - name: `${CONSTANTS.MODULE_NAME}.Identify`, - icon: '', - condition: identifyCondition, - callback: (li) => { - const id = li[0].dataset.documentId; - const item = game.items?.get(id); - Identification.identify(item); - }, - }); + entryOptions.unshift({ + name: `${CONSTANTS.MODULE_NAME}.Identify`, + icon: '', + condition: identifyCondition, + callback: (li) => { + const id = li[0].dataset.documentId; + const item = game.items?.get(id); + Identification.identify(item); + }, + }); - entryOptions.unshift({ - name: `${CONSTANTS.MODULE_NAME}.Peek`, - icon: '', - condition: identifyCondition, - callback: (li) => { - const id = li[0].dataset.documentId; - const item = game.items?.get(id); - const origData = item.getFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); - origData.isAbstract = true; - //@ts-ignore - const entity = new CONFIG.Item.documentClass(origData, { editable: false }); - const sheet = entity.sheet; - sheet?.render(true); - }, - }); - }); + entryOptions.unshift({ + name: `${CONSTANTS.MODULE_NAME}.Peek`, + icon: '', + condition: identifyCondition, + callback: (li) => { + const id = li[0].dataset.documentId; + const item = game.items?.get(id); + const origData = item.getFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); + origData.isAbstract = true; + //@ts-ignore + const entity = new CONFIG.Item.documentClass(origData, { editable: false }); + const sheet = entity.sheet; + sheet?.render(true); + }, + }); + }); } diff --git a/src/modules/ForienUnidentifiedItemsModels.ts b/src/modules/ForienUnidentifiedItemsModels.ts index 456b18c..7677b75 100644 --- a/src/modules/ForienUnidentifiedItemsModels.ts +++ b/src/modules/ForienUnidentifiedItemsModels.ts @@ -1,13 +1,13 @@ -import type { ItemDataConstructorData } from '@league-of-foundry-developers/foundry-vtt-types/src/foundry/common/data/data.mjs/itemData'; +import type { ItemDataConstructorData } from "@league-of-foundry-developers/foundry-vtt-types/src/foundry/common/data/data.mjs/itemData"; export class MystifiedData implements ItemDataConstructorData { - img: string; - name: string; - type: string; - data?: Object; - isAbstract?: boolean; + img: string; + name: string; + type: string; + data?: Object; + isAbstract?: boolean; } export enum MystifiedFlags { - ORIG_DATA = 'origData', + ORIG_DATA = "origData", } diff --git a/src/modules/Identification.ts b/src/modules/Identification.ts index 3d72262..20ea572 100644 --- a/src/modules/Identification.ts +++ b/src/modules/Identification.ts @@ -1,78 +1,78 @@ -import type { ItemData } from '@league-of-foundry-developers/foundry-vtt-types/src/foundry/common/data/module.mjs'; -import type DefaultIcons from './apps/DefaultIcons'; -import CONSTANTS from './constants'; -import { MystifiedData, MystifiedFlags } from './ForienUnidentifiedItemsModels'; -import { i18n, i18nFormat } from './lib/lib'; +import type { ItemData } from "@league-of-foundry-developers/foundry-vtt-types/src/foundry/common/data/module.mjs"; +import type DefaultIcons from "./apps/DefaultIcons"; +import CONSTANTS from "./constants"; +import { MystifiedData, MystifiedFlags } from "./ForienUnidentifiedItemsModels"; +import { i18n, i18nFormat } from "./lib/lib"; export default class Identification { - /** - * - * @hook 'forien-unidentified-items:onMystifyItem' - * - * @param {string} itemUuid - * @param {Object} options - * @param {boolean} options.replace - set true to replace provided item with mystified one - * @param {undefined|Object} options.mystifiedData - item data object that should become front of mystified item - * @returns {Promise} - */ - static async mystify(itemUuid: string, options: any = { replace: false, mystifiedData: undefined }) { - if (!game.user?.isGM) { - return; - } - const item = await this._itemFromUuid(itemUuid); - - if (!item) { - ui.notifications?.error(`${CONSTANTS.MODULE_NAME}.NotAnItem`, {}); - return; - } - - const origData = duplicate(item); - let mystifiedData = options.mystifiedData; - - if (mystifiedData === undefined) { - mystifiedData = this._getMystifiedData(origData); - } - - Hooks.call(`${CONSTANTS.MODULE_NAME}:onMystifyItem`, item, origData, mystifiedData, options); - - let mystifiedItem; - if (options.replace) { - const template = { data: game.system.model.Item[item.type] }; - mystifiedData = mergeObject(template, mystifiedData); - await item.update(mystifiedData); - mystifiedItem = item; - } else { - mystifiedItem = await Item.create(mystifiedData); - } - - await mystifiedItem.setFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA, origData); - } - - /** - * - * @param {string} itemUuid - * @returns {Promise} - */ - static async mystifyReplace(itemUuid) { - await this.mystify(itemUuid, { replace: true, mystifiedData: undefined }); - } - - /** - * - * @param {string} itemUuid - * @returns {Promise} - */ - static async mystifyAsDialog(itemUuid) { - const origItem: any = await this._itemFromUuid(itemUuid); - const nameItem = origItem.data.name; - - let itemTmp; - let replace; - - const dialog = new Dialog( - { - title: i18nFormat(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAs.Title`, { nameItem }), - content: `

${i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAs.Header`)}

+ /** + * + * @hook 'forien-unidentified-items:onMystifyItem' + * + * @param {string} itemUuid + * @param {Object} options + * @param {boolean} options.replace - set true to replace provided item with mystified one + * @param {undefined|Object} options.mystifiedData - item data object that should become front of mystified item + * @returns {Promise} + */ + static async mystify(itemUuid: string, options: any = { replace: false, mystifiedData: undefined }) { + if (!game.user?.isGM) { + return; + } + const item = await this._itemFromUuid(itemUuid); + + if (!item) { + ui.notifications?.error(`${CONSTANTS.MODULE_NAME}.NotAnItem`, {}); + return; + } + + const origData = duplicate(item); + let mystifiedData = options.mystifiedData; + + if (mystifiedData === undefined) { + mystifiedData = this._getMystifiedData(origData); + } + + Hooks.call(`${CONSTANTS.MODULE_NAME}:onMystifyItem`, item, origData, mystifiedData, options); + + let mystifiedItem; + if (options.replace) { + const template = { data: game.system.model.Item[item.type] }; + mystifiedData = mergeObject(template, mystifiedData); + await item.update(mystifiedData); + mystifiedItem = item; + } else { + mystifiedItem = await Item.create(mystifiedData); + } + + await mystifiedItem.setFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA, origData); + } + + /** + * + * @param {string} itemUuid + * @returns {Promise} + */ + static async mystifyReplace(itemUuid) { + await this.mystify(itemUuid, { replace: true, mystifiedData: undefined }); + } + + /** + * + * @param {string} itemUuid + * @returns {Promise} + */ + static async mystifyAsDialog(itemUuid) { + const origItem: any = await this._itemFromUuid(itemUuid); + const nameItem = origItem.data.name; + + let itemTmp; + let replace; + + const dialog = new Dialog( + { + title: i18nFormat(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAs.Title`, { nameItem }), + content: `

${i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAs.Header`)}

${i18nFormat(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAs.DropZone`, { nameItem })}

`, - buttons: { - mystifyAdvanced: { - icon: '', - label: i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAs.MystifyAdvanced`), - callback: (html) => { - const source = $(html).find('.item').data('item'); - this.mystifyAdvancedDialog(itemUuid, source); - }, - }, - cancel: { - icon: '', - label: i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAs.Cancel`), - }, - mystifyReplace: { - icon: '', - label: i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAs.MystifyReplace`), - callback: (html) => { - itemTmp = $(html).find('.item').data('item'); - replace = true; - }, - }, - mystify: { - icon: '', - label: i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAs.Mystify`), - callback: (html) => { - itemTmp = $(html).find('.item').data('item'); - }, - }, - }, - default: 'cancel', - close: () => { - if (itemTmp) { - delete itemTmp._id; - //let options = {mystifiedData: item}; - //if (replace) options.replace = true; - //this.mystify(itemUuid, options); - if (replace) { - this.mystify(itemUuid, { replace: true, mystifiedData: itemTmp }); - } else { - this.mystify(itemUuid, { replace: false, mystifiedData: itemTmp }); - } - } - }, - }, - { - id: 'mystifyAsDialog', - width: 440, - height: 'auto', - }, - ); - - await dialog.render(true); - - $('#mystifyAsDialog').on('drop', '.dropzone', async (event) => { - event.preventDefault(); - let item; - const data = JSON.parse(event.originalEvent?.dataTransfer?.getData('text/plain')); - if (data.type === 'Item') { - if (data.pack) { - item = await this._getItemFromPack(data.pack, data.id); - item = duplicate(item); - } else if (data.data) { - item = data.data; - } else { - const witem = game.items?.get(data.id); - if (!witem) { - return; - } - item = duplicate(witem); - } - if (item) { - $(event.currentTarget).find('.item').data('item', item); - $(event.currentTarget) - .find('.item') - .slideUp(200, () => { - $(event.currentTarget).find('.item img').attr('src', item.img); - $(event.currentTarget).find('.item span').text(item.name); - $(event.currentTarget).find('.item').slideDown(); - }); - } - } - }); - } - - /** - * - * @param {string} itemUuid - * @param {object} source - * @returns {Promise} - */ - static async mystifyAdvancedDialog(itemUuid, source: any = undefined) { - const origItem = await this._itemFromUuid(itemUuid); - const nameItem = origItem.data.name; - const sourceData = (source ? source : duplicate(origItem)); - const meta = this._getMystifiedMeta(sourceData); - const keepOldIcon = this.keepOriginalImage(); - - const selectedImg = keepOldIcon ? sourceData.img : meta.img; - - let properties = this._getTypeProperties(sourceData); - properties = Object.fromEntries( - Object.keys(properties).map((property) => { - return [ - property, - { - key: property, - orig: getProperty(sourceData, `data.${property}`), - default: getProperty(game.system?.model.Item[sourceData.type], property), - value: properties[property], - }, - ]; - }), - ); - - const htmlTmp = await renderTemplate(`/modules/${CONSTANTS.MODULE_NAME}/templates/mystify-advanced.html`, { - item: sourceData, - meta: meta, - properties: properties, - keepOldIcon: keepOldIcon, - selectedImg: selectedImg, - }); - - let confirmed = false; - let replace; - const dialog = new Dialog( - { - title: i18nFormat(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAdvanced.Title`, { nameItem }), - content: htmlTmp, - buttons: { - cancel: { - icon: '', - label: i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAdvanced.Cancel`), - }, - mystifyReplace: { - icon: '', - label: i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAdvanced.MystifyReplace`), - callback: (html) => { - confirmed = true; - replace = true; - }, - }, - mystify: { - icon: '', - label: i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAdvanced.Mystify`), - callback: (html) => { - confirmed = true; - }, - }, - }, - default: 'cancel', - close: (html: HTMLElement|JQuery) => { - if (!confirmed) { - return; - } - const form = (>html).find('form')[0]; - const formDataBase = new FormDataExtended(form, {}); - - formDataBase.delete('img-keep'); - formDataBase.delete('name-keep'); - - const formData: Record = Object.fromEntries( - Object.entries(formDataBase.toObject()).filter((e) => e[1] !== false), - ); - - for (const property of Object.keys(formData)) { - if (property.startsWith('data.')) { - delete formData[property]; - setProperty(formData, property, getProperty(sourceData, property)); - } - } - - //let options = {mystifiedData: formData}; - //if (replace) options.replace = true; - //this.mystify(itemUuid, options); - if (replace) { - this.mystify(itemUuid, { replace: true, mystifiedData: formData }); - } else { - this.mystify(itemUuid, { replace: false, mystifiedData: formData }); - } - }, - }, - { - id: 'mystifyAdvancedDialog', - }, - ); - await dialog.render(true); - - const jqDialog = $('#mystifyAdvancedDialog'); - - jqDialog.on('change', 'input[name=img-keep]', async (event) => { - const checked = $(event.currentTarget).prop('checked'); - - const src = checked ? sourceData.img : meta.img; - jqDialog.find('.img-preview').attr('src', src); - jqDialog.find('input[name=img]').val(src); - }); - - jqDialog.on('change', 'input[name=name-keep]', async (event) => { - const checked = $(event.currentTarget).prop('checked'); - - const nameChanged = checked ? sourceData.name : meta.name; - jqDialog.find('.name-preview').text(nameChanged); - jqDialog.find('input[name=name]').val(nameChanged); - }); - } - - /** - * - * @hook 'forien-unidentified-items:onIdentifyItem' - * - * @param {Item} item - * @returns {Promise} - */ - static async identify(item) { - const origData = item.getFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); - // things to keep from mystified item: - delete origData._id; - delete origData.permission; - delete origData.folder; - - const hook = Hooks.call(`${CONSTANTS.MODULE_NAME}:onIdentifyItem`, item, origData); - if (hook !== false) { - await item.update(origData, { diff: false }); - await item.unsetFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); - // If there was nested origData, carry it over. - const origDataOrigData = getProperty(origData.flags, `${CONSTANTS.MODULE_NAME}.origData`); - await item.setFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA, origDataOrigData); - } - } - - /** - * - * @param {Item} item - * @return {boolean} - */ - static isMystified(item) { - const origData = item.getFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); - - return origData !== undefined; - } - - /** - * - * @param {Item} item - * @return {Object} - */ - static getOrigData(item) { - return item.getFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); - } - - /** - * - * @param {string} uuid - * @return {boolean} - */ - static async isUuidMystified(uuid) { - const item = await this._itemFromUuid(uuid); - if (!item) { - return false; - } - const origData = item.getFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); - - return origData !== undefined; - } - - /** - * - * @param {Object} origData - * @returns {{img: String, name: String, type: String, data: Object}} - * @private - */ - static _getMystifiedData(origData): MystifiedData { - const mystifiedData = this._getMystifiedMeta(origData); - const itemProperties = this._getDefaultProperties(origData); - - for (const property of itemProperties) { - const propertyTmp = 'data.' + property; - const valueTmp = getProperty(origData, propertyTmp); - setProperty(mystifiedData, propertyTmp, valueTmp); - } - - if (this.keepOriginalImage()) { - mystifiedData.img = origData.img; - } - - return mystifiedData; - } - - /** - * - * @param {Object} origData - * @returns {Array} - * @private - */ - static _getDefaultProperties(origData) { - let itemProperties = this._getTypeProperties(origData); - itemProperties = Object.entries(itemProperties) - .filter((p) => p[1]) - .map((p) => p[0]); - - return itemProperties; - } - - /** - * - * @param {Object} origData - * @return {Object} - * @private - */ - static _getTypeProperties(origData) { - const defaultProperties = game.settings.get(CONSTANTS.MODULE_NAME, 'itemProperties'); - - return defaultProperties[origData.type]; - } - - static keepOriginalImage() { - return game.settings.get(CONSTANTS.MODULE_NAME, 'keepOldIcon'); - } - - /** - * - * @param {Object} origData - * @returns {{img: String, name: String, type: String}} - * @private - */ - static _getMystifiedMeta(origData): MystifiedData { - const iconSettings = game.settings.get(CONSTANTS.MODULE_NAME, 'defaultIcons'); - const iconType = - getProperty(iconSettings, origData.type) || - `/modules/${CONSTANTS.MODULE_NAME}/icons/${CONSTANTS.DEFAULT_ICON}`; - - return { - name: i18n(`${CONSTANTS.MODULE_NAME}.NewMystified`), - type: origData.type, - img: iconType, - }; - } - - /** - * - * @param {string} uuid - * @returns {Promise} - * @private - */ - static async _itemFromUuid(uuid: string): Promise { - const parts = uuid.split('.'); - const [entityName, entityId, embeddedName, embeddedId] = parts; - - if (embeddedName === 'OwnedItem' || embeddedName === 'Item') { - if (parts.length === 4) { - const actor = game.actors?.get(entityId); - if (actor === null) return null; - - return actor.items.get(embeddedId); - } - } else { - return await fromUuid(uuid); - } - - return null; - } - - /** - * - * @param {string} packId - * @param {string} itemId - * @return {Promise.} - * @private - */ - static async _getItemFromPack(packId, itemId) { - const pack = >game.packs.get(packId); - if (pack.metadata.entity !== 'Item') { - return null; - } - return await pack.getDocument(itemId).then((ent) => { - //delete ent?.data._id; - if (ent?.data?._id) { - ent.data._id = ''; - } - return ent; - }); - } + buttons: { + mystifyAdvanced: { + icon: '', + label: i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAs.MystifyAdvanced`), + callback: (html) => { + const source = $(html).find(".item").data("item"); + this.mystifyAdvancedDialog(itemUuid, source); + }, + }, + cancel: { + icon: '', + label: i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAs.Cancel`), + }, + mystifyReplace: { + icon: '', + label: i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAs.MystifyReplace`), + callback: (html) => { + itemTmp = $(html).find(".item").data("item"); + replace = true; + }, + }, + mystify: { + icon: '', + label: i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAs.Mystify`), + callback: (html) => { + itemTmp = $(html).find(".item").data("item"); + }, + }, + }, + default: "cancel", + close: () => { + if (itemTmp) { + delete itemTmp._id; + //let options = {mystifiedData: item}; + //if (replace) options.replace = true; + //this.mystify(itemUuid, options); + if (replace) { + this.mystify(itemUuid, { replace: true, mystifiedData: itemTmp }); + } else { + this.mystify(itemUuid, { replace: false, mystifiedData: itemTmp }); + } + } + }, + }, + { + id: "mystifyAsDialog", + width: 440, + height: "auto", + } + ); + + await dialog.render(true); + + $("#mystifyAsDialog").on("drop", ".dropzone", async (event) => { + event.preventDefault(); + let item; + const data = JSON.parse(event.originalEvent?.dataTransfer?.getData("text/plain")); + if (data.type === "Item") { + if (data.pack) { + item = await this._getItemFromPack(data.pack, data.id); + item = duplicate(item); + } else if (data.data) { + item = data.data; + } else { + const witem = game.items?.get(data.id); + if (!witem) { + return; + } + item = duplicate(witem); + } + if (item) { + $(event.currentTarget).find(".item").data("item", item); + $(event.currentTarget) + .find(".item") + .slideUp(200, () => { + $(event.currentTarget).find(".item img").attr("src", item.img); + $(event.currentTarget).find(".item span").text(item.name); + $(event.currentTarget).find(".item").slideDown(); + }); + } + } + }); + } + + /** + * + * @param {string} itemUuid + * @param {object} source + * @returns {Promise} + */ + static async mystifyAdvancedDialog(itemUuid, source: any = undefined) { + const origItem = await this._itemFromUuid(itemUuid); + const nameItem = origItem.data.name; + const sourceData = (source ? source : duplicate(origItem)); + const meta = this._getMystifiedMeta(sourceData); + const keepOldIcon = this.keepOriginalImage(); + + const selectedImg = keepOldIcon ? sourceData.img : meta.img; + + let properties = this._getTypeProperties(sourceData); + properties = Object.fromEntries( + Object.keys(properties).map((property) => { + return [ + property, + { + key: property, + orig: getProperty(sourceData, `data.${property}`), + default: getProperty(game.system?.model.Item[sourceData.type], property), + value: properties[property], + }, + ]; + }) + ); + + const htmlTmp = await renderTemplate(`/modules/${CONSTANTS.MODULE_NAME}/templates/mystify-advanced.html`, { + item: sourceData, + meta: meta, + properties: properties, + keepOldIcon: keepOldIcon, + selectedImg: selectedImg, + }); + + let confirmed = false; + let replace; + const dialog = new Dialog( + { + title: i18nFormat(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAdvanced.Title`, { nameItem }), + content: htmlTmp, + buttons: { + cancel: { + icon: '', + label: i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAdvanced.Cancel`), + }, + mystifyReplace: { + icon: '', + label: i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAdvanced.MystifyReplace`), + callback: (html) => { + confirmed = true; + replace = true; + }, + }, + mystify: { + icon: '', + label: i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAdvanced.Mystify`), + callback: (html) => { + confirmed = true; + }, + }, + }, + default: "cancel", + close: (html: HTMLElement | JQuery) => { + if (!confirmed) { + return; + } + const form = (>html).find("form")[0]; + const formDataBase = new FormDataExtended(form, {}); + + formDataBase.delete("img-keep"); + formDataBase.delete("name-keep"); + + const formData: Record = Object.fromEntries( + Object.entries(formDataBase.toObject()).filter((e) => e[1] !== false) + ); + + for (const property of Object.keys(formData)) { + if (property.startsWith("data.")) { + delete formData[property]; + setProperty(formData, property, getProperty(sourceData, property)); + } + } + + //let options = {mystifiedData: formData}; + //if (replace) options.replace = true; + //this.mystify(itemUuid, options); + if (replace) { + this.mystify(itemUuid, { replace: true, mystifiedData: formData }); + } else { + this.mystify(itemUuid, { replace: false, mystifiedData: formData }); + } + }, + }, + { + id: "mystifyAdvancedDialog", + } + ); + await dialog.render(true); + + const jqDialog = $("#mystifyAdvancedDialog"); + + jqDialog.on("change", "input[name=img-keep]", async (event) => { + const checked = $(event.currentTarget).prop("checked"); + + const src = checked ? sourceData.img : meta.img; + jqDialog.find(".img-preview").attr("src", src); + jqDialog.find("input[name=img]").val(src); + }); + + jqDialog.on("change", "input[name=name-keep]", async (event) => { + const checked = $(event.currentTarget).prop("checked"); + + const nameChanged = checked ? sourceData.name : meta.name; + jqDialog.find(".name-preview").text(nameChanged); + jqDialog.find("input[name=name]").val(nameChanged); + }); + } + + /** + * + * @hook 'forien-unidentified-items:onIdentifyItem' + * + * @param {Item} item + * @returns {Promise} + */ + static async identify(item) { + const origData = item.getFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); + // things to keep from mystified item: + delete origData._id; + delete origData.permission; + delete origData.folder; + + const hook = Hooks.call(`${CONSTANTS.MODULE_NAME}:onIdentifyItem`, item, origData); + if (hook !== false) { + await item.update(origData, { diff: false }); + await item.unsetFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); + // If there was nested origData, carry it over. + const origDataOrigData = getProperty(origData.flags, `${CONSTANTS.MODULE_NAME}.origData`); + await item.setFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA, origDataOrigData); + } + } + + /** + * + * @param {Item} item + * @return {boolean} + */ + static isMystified(item) { + const origData = item.getFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); + + return origData !== undefined; + } + + /** + * + * @param {Item} item + * @return {Object} + */ + static getOrigData(item) { + return item.getFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); + } + + /** + * + * @param {string} uuid + * @return {boolean} + */ + static async isUuidMystified(uuid) { + const item = await this._itemFromUuid(uuid); + if (!item) { + return false; + } + const origData = item.getFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); + + return origData !== undefined; + } + + /** + * + * @param {Object} origData + * @returns {{img: String, name: String, type: String, data: Object}} + * @private + */ + static _getMystifiedData(origData): MystifiedData { + const mystifiedData = this._getMystifiedMeta(origData); + const itemProperties = this._getDefaultProperties(origData); + + for (const property of itemProperties) { + const propertyTmp = "data." + property; + const valueTmp = getProperty(origData, propertyTmp); + setProperty(mystifiedData, propertyTmp, valueTmp); + } + + if (this.keepOriginalImage()) { + mystifiedData.img = origData.img; + } + + return mystifiedData; + } + + /** + * + * @param {Object} origData + * @returns {Array} + * @private + */ + static _getDefaultProperties(origData) { + let itemProperties = this._getTypeProperties(origData); + itemProperties = Object.entries(itemProperties) + .filter((p) => p[1]) + .map((p) => p[0]); + + return itemProperties; + } + + /** + * + * @param {Object} origData + * @return {Object} + * @private + */ + static _getTypeProperties(origData) { + const defaultProperties = game.settings.get(CONSTANTS.MODULE_NAME, "itemProperties"); + + return defaultProperties[origData.type]; + } + + static keepOriginalImage() { + return game.settings.get(CONSTANTS.MODULE_NAME, "keepOldIcon"); + } + + /** + * + * @param {Object} origData + * @returns {{img: String, name: String, type: String}} + * @private + */ + static _getMystifiedMeta(origData): MystifiedData { + const iconSettings = game.settings.get(CONSTANTS.MODULE_NAME, "defaultIcons"); + const iconType = + getProperty(iconSettings, origData.type) || + `/modules/${CONSTANTS.MODULE_NAME}/icons/${CONSTANTS.DEFAULT_ICON}`; + + return { + name: i18n(`${CONSTANTS.MODULE_NAME}.NewMystified`), + type: origData.type, + img: iconType, + }; + } + + /** + * + * @param {string} uuid + * @returns {Promise} + * @private + */ + static async _itemFromUuid(uuid: string): Promise { + const parts = uuid.split("."); + const [entityName, entityId, embeddedName, embeddedId] = parts; + + if (embeddedName === "OwnedItem" || embeddedName === "Item") { + if (parts.length === 4) { + const actor = game.actors?.get(entityId); + if (actor === null) return null; + + return actor.items.get(embeddedId); + } + } else { + return await fromUuid(uuid); + } + + return null; + } + + /** + * + * @param {string} packId + * @param {string} itemId + * @return {Promise.} + * @private + */ + static async _getItemFromPack(packId, itemId) { + const pack = >game.packs.get(packId); + if (pack.metadata.entity !== "Item") { + return null; + } + return await pack.getDocument(itemId).then((ent) => { + //delete ent?.data._id; + if (ent?.data?._id) { + ent.data._id = ""; + } + return ent; + }); + } } diff --git a/src/modules/Item.ts b/src/modules/Item.ts index 8b16095..c928ee8 100644 --- a/src/modules/Item.ts +++ b/src/modules/Item.ts @@ -1,15 +1,15 @@ -import { MystifiedFlags } from './ForienUnidentifiedItemsModels'; -import Identification from './Identification'; +import { MystifiedFlags } from "./ForienUnidentifiedItemsModels"; +import Identification from "./Identification"; export default function registerItemClassMethod() { - //@ts-ignore - CONFIG.Item.documentClass.prototype.isMystified = function isMystified() { - return Identification.isMystified(this); - }; + //@ts-ignore + CONFIG.Item.documentClass.prototype.isMystified = function isMystified() { + return Identification.isMystified(this); + }; - Object.defineProperty(CONFIG.Item.documentClass.prototype, MystifiedFlags.ORIG_DATA, { - get: function origData() { - return Identification.getOrigData(this); - }, - }); + Object.defineProperty(CONFIG.Item.documentClass.prototype, MystifiedFlags.ORIG_DATA, { + get: function origData() { + return Identification.getOrigData(this); + }, + }); } diff --git a/src/modules/ItemSheet.ts b/src/modules/ItemSheet.ts index 983dfe2..562e54f 100644 --- a/src/modules/ItemSheet.ts +++ b/src/modules/ItemSheet.ts @@ -1,133 +1,133 @@ -import CONSTANTS from './constants'; -import { MystifiedData, MystifiedFlags } from './ForienUnidentifiedItemsModels'; -import Identification from './Identification'; -import { i18n } from './lib/lib'; +import CONSTANTS from "./constants"; +import { MystifiedData, MystifiedFlags } from "./ForienUnidentifiedItemsModels"; +import Identification from "./Identification"; +import { i18n } from "./lib/lib"; export default function registerDerivedItemSheetClass() { - //@ts-ignore - for (const k in CONFIG.Item.sheetClasses) { - //@ts-ignore - for (const l in CONFIG.Item.sheetClasses[k]) { - //@ts-ignore - const cls = CONFIG.Item.sheetClasses[k][l].cls; - //@ts-ignore - CONFIG.Item.sheetClasses[k][l].cls = getItemSheetClass(cls, l); - } - } + //@ts-ignore + for (const k in CONFIG.Item.sheetClasses) { + //@ts-ignore + for (const l in CONFIG.Item.sheetClasses[k]) { + //@ts-ignore + const cls = CONFIG.Item.sheetClasses[k][l].cls; + //@ts-ignore + CONFIG.Item.sheetClasses[k][l].cls = getItemSheetClass(cls, l); + } + } } function getItemSheetClass(cls, sheet) { - const ParentClass = cls; + const ParentClass = cls; - const ItemClass = class extends ParentClass { - constructor(...args) { - super(...args); - this.name = sheet.split('.')[1]; - } + const ItemClass = class extends ParentClass { + constructor(...args) { + super(...args); + this.name = sheet.split(".")[1]; + } - /** - * Adds `[Mystified]` to the windows title if item is Mystified - * Adds `[Original]` to the windows title if item is Original - * @return {string} - */ - get title() { - let title = super.title; - if (!game.user?.isGM) { - return title; - } - if (this.item.isMystified()) { - title = '[' + i18n(`${CONSTANTS.MODULE_NAME}.Item.Mystified`) + '] ' + `${title}`; - } - if (this.item.data.isAbstract) { - title = '[' + i18n(`${CONSTANTS.MODULE_NAME}.Item.Original`) + '] ' + `${title}`; - } - return title; - } + /** + * Adds `[Mystified]` to the windows title if item is Mystified + * Adds `[Original]` to the windows title if item is Original + * @return {string} + */ + get title() { + let title = super.title; + if (!game.user?.isGM) { + return title; + } + if (this.item.isMystified()) { + title = "[" + i18n(`${CONSTANTS.MODULE_NAME}.Item.Mystified`) + "] " + `${title}`; + } + if (this.item.data.isAbstract) { + title = "[" + i18n(`${CONSTANTS.MODULE_NAME}.Item.Original`) + "] " + `${title}`; + } + return title; + } - /** - * @override - * - * @hook "forien-unidentified-items:getItemPermissions" - */ - _getHeaderButtons() { - const buttons = super._getHeaderButtons(); - const isAbstract = this.item.data.isAbstract || false; - const removeLabelButtonsSheetHeader = ( - game.settings.get(CONSTANTS.MODULE_NAME, 'removeLabelButtonsSheetHeader') - ); + /** + * @override + * + * @hook "forien-unidentified-items:getItemPermissions" + */ + _getHeaderButtons() { + const buttons = super._getHeaderButtons(); + const isAbstract = this.item.data.isAbstract || false; + const removeLabelButtonsSheetHeader = ( + game.settings.get(CONSTANTS.MODULE_NAME, "removeLabelButtonsSheetHeader") + ); - let permissions = { - canIdentify: game.user?.isGM, - canPeek: game.user?.isGM, - canMystify: game.user?.isGM, - }; - const hookPermissions = duplicate(permissions); - Hooks.call(`${CONSTANTS.MODULE_NAME}:getItemPermissions`, this.item, hookPermissions); - permissions = mergeObject(permissions, hookPermissions); + let permissions = { + canIdentify: game.user?.isGM, + canPeek: game.user?.isGM, + canMystify: game.user?.isGM, + }; + const hookPermissions = duplicate(permissions); + Hooks.call(`${CONSTANTS.MODULE_NAME}:getItemPermissions`, this.item, hookPermissions); + permissions = mergeObject(permissions, hookPermissions); - const origData = this.item.getFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); + const origData = this.item.getFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); - if (origData) { - if (permissions.canIdentify && !isAbstract) { - buttons.unshift({ - label: removeLabelButtonsSheetHeader ? '' : `${CONSTANTS.MODULE_NAME}.Identify`, - class: 'identify-item', - icon: 'fas fa-search', - onclick: (ev) => { - Identification.identify(this.item); - }, - }); - } + if (origData) { + if (permissions.canIdentify && !isAbstract) { + buttons.unshift({ + label: removeLabelButtonsSheetHeader ? "" : `${CONSTANTS.MODULE_NAME}.Identify`, + class: "identify-item", + icon: "fas fa-search", + onclick: (ev) => { + Identification.identify(this.item); + }, + }); + } - if (permissions.canPeek) { - buttons.unshift({ - label: removeLabelButtonsSheetHeader ? '' : `${CONSTANTS.MODULE_NAME}.Peek`, - class: 'peek-original-item', - icon: 'far fa-eye', - onclick: (ev) => { - //@ts-ignore - const entity = new CONFIG.Item.documentClass(origData, { editable: false }); - //@ts-ignore - entity.data.isAbstract = true; - const sheetTmp = entity.sheet; - sheetTmp?.render(true); - }, - }); - } - } else { - if (permissions.canMystify && !isAbstract) { - if (this.item.isOwned) { - buttons.unshift({ - label: removeLabelButtonsSheetHeader ? '' : `${CONSTANTS.MODULE_NAME}.Mystify`, - class: 'mystify-item', - icon: 'far fa-eye-slash', - onclick: (ev) => { - Identification.mystifyReplace(this.item.uuid); - }, - }); - } else { - buttons.unshift({ - label: removeLabelButtonsSheetHeader ? '' : `${CONSTANTS.MODULE_NAME}.Mystify`, - class: 'mystify-item', - icon: 'far fa-eye-slash', - onclick: (ev) => { - Identification.mystify(this.item.uuid); - }, - }); - } - } - } + if (permissions.canPeek) { + buttons.unshift({ + label: removeLabelButtonsSheetHeader ? "" : `${CONSTANTS.MODULE_NAME}.Peek`, + class: "peek-original-item", + icon: "far fa-eye", + onclick: (ev) => { + //@ts-ignore + const entity = new CONFIG.Item.documentClass(origData, { editable: false }); + //@ts-ignore + entity.data.isAbstract = true; + const sheetTmp = entity.sheet; + sheetTmp?.render(true); + }, + }); + } + } else { + if (permissions.canMystify && !isAbstract) { + if (this.item.isOwned) { + buttons.unshift({ + label: removeLabelButtonsSheetHeader ? "" : `${CONSTANTS.MODULE_NAME}.Mystify`, + class: "mystify-item", + icon: "far fa-eye-slash", + onclick: (ev) => { + Identification.mystifyReplace(this.item.uuid); + }, + }); + } else { + buttons.unshift({ + label: removeLabelButtonsSheetHeader ? "" : `${CONSTANTS.MODULE_NAME}.Mystify`, + class: "mystify-item", + icon: "far fa-eye-slash", + onclick: (ev) => { + Identification.mystify(this.item.uuid); + }, + }); + } + } + } - return buttons; - } + return buttons; + } - async _updateObject(...args) { - if (this.item.data.isAbstract) { - return this; - } - return super._updateObject(...args); - } - }; + async _updateObject(...args) { + if (this.item.data.isAbstract) { + return this; + } + return super._updateObject(...args); + } + }; - return ItemClass; + return ItemClass; } diff --git a/src/modules/api.ts b/src/modules/api.ts index 21ce38c..221934c 100644 --- a/src/modules/api.ts +++ b/src/modules/api.ts @@ -1,19 +1,19 @@ -import type DefaultIcons from './apps/DefaultIcons'; -import CONSTANTS from './constants'; +import type DefaultIcons from "./apps/DefaultIcons"; +import CONSTANTS from "./constants"; const API = { - get DEFAULT_PROPERTIES(): any { - return game.settings.get(CONSTANTS.MODULE_NAME, 'itemProperties'); - }, + get DEFAULT_PROPERTIES(): any { + return game.settings.get(CONSTANTS.MODULE_NAME, "itemProperties"); + }, - /** - * The attributes used to track dynamic attributes in this system - * - * @returns {array} - */ - get DEFAULT_ICONS(): DefaultIcons { - return game.settings.get(CONSTANTS.MODULE_NAME, 'defaultIcons'); - }, + /** + * The attributes used to track dynamic attributes in this system + * + * @returns {array} + */ + get DEFAULT_ICONS(): DefaultIcons { + return game.settings.get(CONSTANTS.MODULE_NAME, "defaultIcons"); + }, }; export default API; diff --git a/src/modules/apps/DefaultIcons.ts b/src/modules/apps/DefaultIcons.ts index 9dc572e..5bce6af 100644 --- a/src/modules/apps/DefaultIcons.ts +++ b/src/modules/apps/DefaultIcons.ts @@ -1,110 +1,110 @@ -import CONSTANTS from '../constants'; -import { i18n } from '../lib/lib'; +import CONSTANTS from "../constants"; +import { i18n } from "../lib/lib"; export default class DefaultIcons extends FormApplication { - static get defaultOptions(): any { - const options = mergeObject(super.defaultOptions, { - id: 'fui-default-icons', - template: `/modules/${CONSTANTS.MODULE_NAME}/templates/settings-default-icons.html`, - title: i18n(`${CONSTANTS.MODULE_NAME}.Settings.defaultIcons.name`), - submitOnClose: true, - submitOnChange: false, - closeOnSubmit: true, - }); - - if (game.system.id === 'wfrp4e') { - options.classes.push('wfrp'); - } - return options; - } - - getData(options = {}): any { - const data: any = super.getData(); - data.types = this.getItemTypes(); - data.typeSettings = this.getSettings(); - data.options = this.options; - return data; - // return { - // types: this.getItemTypes(), - // propertySettings: this.getSettings(), - // options: this.options - // }; - } - - activateListeners(html): void { - super.activateListeners(html); - - html.on('change', 'input', (event) => { - const input = $(event.currentTarget); - const type = input.attr('name'); - $(`#default-icon-img-${type}`).attr('src', String(input.val())); - }); - - html.on('click', '.file-picker', (event) => { - Hooks.once('closeFilePicker', () => { - const button = $(event.currentTarget); - const target = button.data('target'); - $(`#fui-default-icons input[name=${target}]`).trigger('change'); - }); - }); - } - - async _updateObject(event, formData): Promise { - return await this.saveSettings(formData); - } - - getSettings(): DefaultIcons { - const settings = this.loadSettings(); - const types = this.getItemTypes(); - - for (const type of types) { - const setting: any = getProperty(settings, type); - if (!setting) { - settings[type] = this.getIcon(this.guessIcon(type)); - } - } - - return settings; - } - - guessIcon(type): string { - const modes = ['inv-unidentified', 'unidentified']; - const types = { - armor: ['armor', 'armour', 'equipment', 'gear'], - book: ['Skill', 'book', 'career', 'class', 'feat', 'skill', 'specialization', 'spellbook', 'talent'], - emerald: ['ancestry', 'crystal', 'jewellery'], - knapsack: ['backpack', 'container'], - loot: ['loot', 'treasure'], - potion: ['consumable'], - sack: ['artifact', 'goods', 'trapping'], - scroll: ['ability', 'enchantment', 'magic', 'prayer', 'sorcery', 'spell'], - tool: ['tool'], - }; - const mode = modes[Math.floor(Math.random() * modes.length)]; - let icon = mode; - - for (const iconType in types) { - if (types[iconType].includes(type)) { - icon = `${mode}-${iconType}`; - } - } - - return `${icon}.png`; - } - - loadSettings(): DefaultIcons { - return game.settings.get(CONSTANTS.MODULE_NAME, 'defaultIcons'); - } - - async saveSettings(data): Promise { - return await game.settings.set(CONSTANTS.MODULE_NAME, 'defaultIcons', data); - } - - getItemTypes(): string[] { - return Object.keys(game.system.model.Item); - } - - getIcon(icon): string { - return `/modules/${CONSTANTS.MODULE_NAME}/icons/${icon}`; - } + static get defaultOptions(): any { + const options = mergeObject(super.defaultOptions, { + id: "fui-default-icons", + template: `/modules/${CONSTANTS.MODULE_NAME}/templates/settings-default-icons.html`, + title: i18n(`${CONSTANTS.MODULE_NAME}.Settings.defaultIcons.name`), + submitOnClose: true, + submitOnChange: false, + closeOnSubmit: true, + }); + + if (game.system.id === "wfrp4e") { + options.classes.push("wfrp"); + } + return options; + } + + getData(options = {}): any { + const data: any = super.getData(); + data.types = this.getItemTypes(); + data.typeSettings = this.getSettings(); + data.options = this.options; + return data; + // return { + // types: this.getItemTypes(), + // propertySettings: this.getSettings(), + // options: this.options + // }; + } + + activateListeners(html): void { + super.activateListeners(html); + + html.on("change", "input", (event) => { + const input = $(event.currentTarget); + const type = input.attr("name"); + $(`#default-icon-img-${type}`).attr("src", String(input.val())); + }); + + html.on("click", ".file-picker", (event) => { + Hooks.once("closeFilePicker", () => { + const button = $(event.currentTarget); + const target = button.data("target"); + $(`#fui-default-icons input[name=${target}]`).trigger("change"); + }); + }); + } + + async _updateObject(event, formData): Promise { + return await this.saveSettings(formData); + } + + getSettings(): DefaultIcons { + const settings = this.loadSettings(); + const types = this.getItemTypes(); + + for (const type of types) { + const setting: any = getProperty(settings, type); + if (!setting) { + settings[type] = this.getIcon(this.guessIcon(type)); + } + } + + return settings; + } + + guessIcon(type): string { + const modes = ["inv-unidentified", "unidentified"]; + const types = { + armor: ["armor", "armour", "equipment", "gear"], + book: ["Skill", "book", "career", "class", "feat", "skill", "specialization", "spellbook", "talent"], + emerald: ["ancestry", "crystal", "jewellery"], + knapsack: ["backpack", "container"], + loot: ["loot", "treasure"], + potion: ["consumable"], + sack: ["artifact", "goods", "trapping"], + scroll: ["ability", "enchantment", "magic", "prayer", "sorcery", "spell"], + tool: ["tool"], + }; + const mode = modes[Math.floor(Math.random() * modes.length)]; + let icon = mode; + + for (const iconType in types) { + if (types[iconType].includes(type)) { + icon = `${mode}-${iconType}`; + } + } + + return `${icon}.png`; + } + + loadSettings(): DefaultIcons { + return game.settings.get(CONSTANTS.MODULE_NAME, "defaultIcons"); + } + + async saveSettings(data): Promise { + return await game.settings.set(CONSTANTS.MODULE_NAME, "defaultIcons", data); + } + + getItemTypes(): string[] { + return Object.keys(game.system.model.Item); + } + + getIcon(icon): string { + return `/modules/${CONSTANTS.MODULE_NAME}/icons/${icon}`; + } } diff --git a/src/modules/apps/ItemProperties.ts b/src/modules/apps/ItemProperties.ts index 5c16ab4..a2b4616 100644 --- a/src/modules/apps/ItemProperties.ts +++ b/src/modules/apps/ItemProperties.ts @@ -1,97 +1,97 @@ -import CONSTANTS from '../constants'; -import { i18n } from '../lib/lib'; +import CONSTANTS from "../constants"; +import { i18n } from "../lib/lib"; export default class ItemProperties extends FormApplication { - static get defaultOptions(): any { - const options = mergeObject(super.defaultOptions, { - id: 'fui-item-properties', - template: `/modules/${CONSTANTS.MODULE_NAME}/templates/settings-item-properties.html`, - title: i18n(`${CONSTANTS.MODULE_NAME}.itemProperties.name`), - submitOnClose: true, - submitOnChange: false, - closeOnSubmit: true, - resizable: true, - width: 640, - height: 560, - tabs: [{ navSelector: '.nav-tabs', contentSelector: '.nav-body' }], - }); + static get defaultOptions(): any { + const options = mergeObject(super.defaultOptions, { + id: "fui-item-properties", + template: `/modules/${CONSTANTS.MODULE_NAME}/templates/settings-item-properties.html`, + title: i18n(`${CONSTANTS.MODULE_NAME}.itemProperties.name`), + submitOnClose: true, + submitOnChange: false, + closeOnSubmit: true, + resizable: true, + width: 640, + height: 560, + tabs: [{ navSelector: ".nav-tabs", contentSelector: ".nav-body" }], + }); - if (game.system.id === 'wfrp4e') { - options.classes.push('wfrp'); - } - return options; - } + if (game.system.id === "wfrp4e") { + options.classes.push("wfrp"); + } + return options; + } - getData(options = {}): any { - const data: any = super.getData(); - (data.types = this.getItemTypes()), (data.propertySettings = this.getSettings()), (data.options = this.options); - return data; - // return { - // types: this.getItemTypes(), - // propertySettings: this.getSettings(), - // options: this.options - // }; - } + getData(options = {}): any { + const data: any = super.getData(); + (data.types = this.getItemTypes()), (data.propertySettings = this.getSettings()), (data.options = this.options); + return data; + // return { + // types: this.getItemTypes(), + // propertySettings: this.getSettings(), + // options: this.options + // }; + } - activateListeners(html): void { - super.activateListeners(html); - } + activateListeners(html): void { + super.activateListeners(html); + } - async _updateObject(event, formData): Promise { - const data = Object.entries(formData); - const settings = {}; + async _updateObject(event, formData): Promise { + const data = Object.entries(formData); + const settings = {}; - data.sort().map((d) => { - const type = d[0].split('.', 1)[0]; - const property = d[0].replace(`${type}.`, ''); - const value = d[1]; + data.sort().map((d) => { + const type = d[0].split(".", 1)[0]; + const property = d[0].replace(`${type}.`, ""); + const value = d[1]; - if (settings[type] === undefined) { - settings[type] = {}; - } - settings[type][property] = value; - }); + if (settings[type] === undefined) { + settings[type] = {}; + } + settings[type][property] = value; + }); - return await this.saveSettings(settings); - } + return await this.saveSettings(settings); + } - getProperties(): Map { - const types = Object.entries(game.system.model.Item); - const properties = new Map(types); - for (const [key, value] of properties) { - properties.set(key, Object.keys(flattenObject(value))); - } - return properties; - } + getProperties(): Map { + const types = Object.entries(game.system.model.Item); + const properties = new Map(types); + for (const [key, value] of properties) { + properties.set(key, Object.keys(flattenObject(value))); + } + return properties; + } - getSettings(): any { - const settings: any = this.loadSettings(); - const types = this.getItemTypes(); - const properties: Map = this.getProperties(); + getSettings(): any { + const settings: any = this.loadSettings(); + const types = this.getItemTypes(); + const properties: Map = this.getProperties(); - for (const type of types) { - const setting = getProperty(settings, type); - if (!setting) { - const typeProperties = properties.get(type); - settings[type] = typeProperties.reduce((a, b) => ((a[b] = false), a), {}); - } - } + for (const type of types) { + const setting = getProperty(settings, type); + if (!setting) { + const typeProperties = properties.get(type); + settings[type] = typeProperties.reduce((a, b) => ((a[b] = false), a), {}); + } + } - return settings; - } + return settings; + } - loadSettings(): any { - return game.settings.get(CONSTANTS.MODULE_NAME, 'itemProperties'); - } + loadSettings(): any { + return game.settings.get(CONSTANTS.MODULE_NAME, "itemProperties"); + } - async saveSettings(data) { - return await game.settings.set(CONSTANTS.MODULE_NAME, 'itemProperties', data); - } + async saveSettings(data) { + return await game.settings.set(CONSTANTS.MODULE_NAME, "itemProperties", data); + } - getItemTypes() { - return Object.keys(game.system.model.Item); - } + getItemTypes() { + return Object.keys(game.system.model.Item); + } - getIcon(icon) { - return `/modules/${CONSTANTS.MODULE_NAME}/icons/${icon}`; - } + getIcon(icon) { + return `/modules/${CONSTANTS.MODULE_NAME}/icons/${icon}`; + } } diff --git a/src/modules/constants.ts b/src/modules/constants.ts index da95bbc..7f840a2 100644 --- a/src/modules/constants.ts +++ b/src/modules/constants.ts @@ -1,7 +1,7 @@ const CONSTANTS = { - MODULE_NAME: 'forien-unidentified-items', - PATH: `modules/forien-unidentified-items/`, - DEFAULT_ICON: 'unidentified.png', + MODULE_NAME: "forien-unidentified-items", + PATH: `modules/forien-unidentified-items/`, + DEFAULT_ICON: "unidentified.png", }; CONSTANTS.PATH = `modules/${CONSTANTS.MODULE_NAME}/`; diff --git a/src/modules/lib/lib.ts b/src/modules/lib/lib.ts index 9022c28..a856f8f 100644 --- a/src/modules/lib/lib.ts +++ b/src/modules/lib/lib.ts @@ -1,70 +1,70 @@ -import CONSTANTS from '../constants'; +import CONSTANTS from "../constants"; // ============================= // Module Generic function // ============================= export function isGMConnected(): boolean { - return Array.from(game.users).find((user) => user.isGM && user.active) ? true : false; + return Array.from(game.users).find((user) => user.isGM && user.active) ? true : false; } export function wait(ms) { - return new Promise((resolve) => setTimeout(resolve, ms)); + return new Promise((resolve) => setTimeout(resolve, ms)); } // export let debugEnabled = 0; // 0 = none, warnings = 1, debug = 2, all = 3 -export function debug(msg, args = '') { - if (game.settings.get(CONSTANTS.MODULE_NAME, 'debug')) { - console.log(`DEBUG | ${CONSTANTS.MODULE_NAME} | ${msg}`, args); - } - return msg; +export function debug(msg, args = "") { + if (game.settings.get(CONSTANTS.MODULE_NAME, "debug")) { + console.log(`DEBUG | ${CONSTANTS.MODULE_NAME} | ${msg}`, args); + } + return msg; } export function log(message) { - message = `${CONSTANTS.MODULE_NAME} | ${message}`; - console.log(message.replace('
', '\n')); - return message; + message = `${CONSTANTS.MODULE_NAME} | ${message}`; + console.log(message.replace("
", "\n")); + return message; } export function notify(message) { - message = `${CONSTANTS.MODULE_NAME} | ${message}`; - ui.notifications?.notify(message); - console.log(message.replace('
', '\n')); - return message; + message = `${CONSTANTS.MODULE_NAME} | ${message}`; + ui.notifications?.notify(message); + console.log(message.replace("
", "\n")); + return message; } export function info(info, notify = false) { - info = `${CONSTANTS.MODULE_NAME} | ${info}`; - if (notify) ui.notifications?.info(info); - console.log(info.replace('
', '\n')); - return info; + info = `${CONSTANTS.MODULE_NAME} | ${info}`; + if (notify) ui.notifications?.info(info); + console.log(info.replace("
", "\n")); + return info; } export function warn(warning, notify = false) { - warning = `${CONSTANTS.MODULE_NAME} | ${warning}`; - if (notify) ui.notifications?.warn(warning); - console.warn(warning.replace('
', '\n')); - return warning; + warning = `${CONSTANTS.MODULE_NAME} | ${warning}`; + if (notify) ui.notifications?.warn(warning); + console.warn(warning.replace("
", "\n")); + return warning; } export function error(error, notify = true) { - error = `${CONSTANTS.MODULE_NAME} | ${error}`; - if (notify) ui.notifications?.error(error); - return new Error(error.replace('
', '\n')); + error = `${CONSTANTS.MODULE_NAME} | ${error}`; + if (notify) ui.notifications?.error(error); + return new Error(error.replace("
", "\n")); } export function timelog(message): void { - warn(Date.now(), message); + warn(Date.now(), message); } export const i18n = (key: string): string => { - return game.i18n.localize(key)?.trim(); + return game.i18n.localize(key)?.trim(); }; export const i18nFormat = (key: string, data = {}): string => { - return game.i18n.format(key, data)?.trim(); + return game.i18n.format(key, data)?.trim(); }; // export const setDebugLevel = (debugText: string): void => { @@ -73,8 +73,8 @@ export const i18nFormat = (key: string, data = {}): string => { // if (debugEnabled >= 3) CONFIG.debug.hooks = true; // }; -export function dialogWarning(message, icon = 'fas fa-exclamation-triangle') { - return `

+export function dialogWarning(message, icon = "fas fa-exclamation-triangle") { + return `



${CONSTANTS.MODULE_NAME}

${message} @@ -90,7 +90,7 @@ export function dialogWarning(message, icon = 'fas fa-exclamation-triangle') { * @returns */ export function enumKeys(obj: O): K[] { - return Object.keys(obj).filter((k) => Number.isNaN(+k)) as K[]; + return Object.keys(obj).filter((k) => Number.isNaN(+k)) as K[]; } /** @@ -100,34 +100,34 @@ export function enumKeys(obj: O): * @param prop */ export function mergeByProperty(target: any[], source: any[], prop: any) { - source.forEach((sourceElement) => { - const targetElement = target.find((targetElement) => { - return sourceElement[prop] === targetElement[prop]; - }); - targetElement ? Object.assign(targetElement, sourceElement) : target.push(sourceElement); - }); - return target; + source.forEach((sourceElement) => { + const targetElement = target.find((targetElement) => { + return sourceElement[prop] === targetElement[prop]; + }); + targetElement ? Object.assign(targetElement, sourceElement) : target.push(sourceElement); + }); + return target; } /** * Returns the first selected token */ export function getFirstPlayerTokenSelected(): Token | null { - // Get first token ownted by the player - const selectedTokens = canvas.tokens?.controlled; - if (selectedTokens.length > 1) { - //iteractionFailNotification(i18n("foundryvtt-arms-reach.warningNoSelectMoreThanOneToken")); - return null; - } - if (!selectedTokens || selectedTokens.length === 0) { - //if(game.user.character.data.token){ - // //@ts-ignore - // return game.user.character.data.token; - //}else{ - return null; - //} - } - return selectedTokens[0]; + // Get first token ownted by the player + const selectedTokens = canvas.tokens?.controlled; + if (selectedTokens.length > 1) { + //iteractionFailNotification(i18n("foundryvtt-arms-reach.warningNoSelectMoreThanOneToken")); + return null; + } + if (!selectedTokens || selectedTokens.length === 0) { + //if(game.user.character.data.token){ + // //@ts-ignore + // return game.user.character.data.token; + //}else{ + return null; + //} + } + return selectedTokens[0]; } /** @@ -135,58 +135,60 @@ export function getFirstPlayerTokenSelected(): Token | null { * note: ex getSelectedOrOwnedToken */ export function getFirstPlayerToken(): Token | null { - // Get controlled token - let token: Token; - const controlled: Token[] = canvas.tokens?.controlled; - // Do nothing if multiple tokens are selected - if (controlled.length && controlled.length > 1) { - //iteractionFailNotification(i18n("foundryvtt-arms-reach.warningNoSelectMoreThanOneToken")); - return null; - } - // If exactly one token is selected, take that - token = controlled[0]; - if (!token) { - if (!controlled.length || controlled.length === 0) { - // If no token is selected use the token of the users character - token = canvas.tokens?.placeables.find((token) => token.data._id === game.user?.character?.data?._id); - } - // If no token is selected use the first owned token of the users character you found - if (!token) { - token = canvas.tokens?.ownedTokens[0]; - } - } - return token; + // Get controlled token + let token: Token; + const controlled: Token[] = canvas.tokens?.controlled; + // Do nothing if multiple tokens are selected + if (controlled.length && controlled.length > 1) { + //iteractionFailNotification(i18n("foundryvtt-arms-reach.warningNoSelectMoreThanOneToken")); + return null; + } + // If exactly one token is selected, take that + token = controlled[0]; + if (!token) { + if (!controlled.length || controlled.length === 0) { + // If no token is selected use the token of the users character + token = ( + canvas.tokens?.placeables.find((token) => token.data._id === game.user?.character?.data?._id) + ); + } + // If no token is selected use the first owned token of the users character you found + if (!token) { + token = canvas.tokens?.ownedTokens[0]; + } + } + return token; } function getElevationToken(token: Token): number { - const base = token.document.data; - return getElevationPlaceableObject(base); + const base = token.document.data; + return getElevationPlaceableObject(base); } function getElevationWall(wall: Wall): number { - const base = wall.document.data; - return getElevationPlaceableObject(base); + const base = wall.document.data; + return getElevationPlaceableObject(base); } function getElevationPlaceableObject(placeableObject: any): number { - let base = placeableObject; - if (base.document) { - base = base.document.data; - } - const base_elevation = - //@ts-ignore - typeof _levels !== 'undefined' && - //@ts-ignore - _levels?.advancedLOS && - (placeableObject instanceof Token || placeableObject instanceof TokenDocument) - ? //@ts-ignore - _levels.getTokenLOSheight(placeableObject) - : base.elevation ?? - base.flags['levels']?.elevation ?? - base.flags['levels']?.rangeBottom ?? - base.flags['wallHeight']?.wallHeightBottom ?? - 0; - return base_elevation; + let base = placeableObject; + if (base.document) { + base = base.document.data; + } + const base_elevation = + //@ts-ignore + typeof _levels !== "undefined" && + //@ts-ignore + _levels?.advancedLOS && + (placeableObject instanceof Token || placeableObject instanceof TokenDocument) + ? //@ts-ignore + _levels.getTokenLOSheight(placeableObject) + : base.elevation ?? + base.flags["levels"]?.elevation ?? + base.flags["levels"]?.rangeBottom ?? + base.flags["wallHeight"]?.wallHeightBottom ?? + 0; + return base_elevation; } // ============================= diff --git a/src/modules/preloadTemplates.ts b/src/modules/preloadTemplates.ts index a48267a..b8a6ff7 100644 --- a/src/modules/preloadTemplates.ts +++ b/src/modules/preloadTemplates.ts @@ -1,12 +1,12 @@ -import CONSTANTS from './constants'; +import CONSTANTS from "./constants"; export const preloadTemplates = async function () { - const templatePaths = [ - // Add paths to "modules/VariantEncumbrance/templates" - `/modules/${CONSTANTS.MODULE_NAME}/templates/mystify-advanced.html`, - `/modules/${CONSTANTS.MODULE_NAME}/templates/settings-default-icons.html`, - `/modules/${CONSTANTS.MODULE_NAME}/templates/settings-item-properties.html`, - // `/modules/${CONSTANTS.MODULE_NAME}/templates/welcome-screen.html`, - ]; - return loadTemplates(templatePaths); + const templatePaths = [ + // Add paths to "modules/VariantEncumbrance/templates" + `/modules/${CONSTANTS.MODULE_NAME}/templates/mystify-advanced.html`, + `/modules/${CONSTANTS.MODULE_NAME}/templates/settings-default-icons.html`, + `/modules/${CONSTANTS.MODULE_NAME}/templates/settings-item-properties.html`, + // `/modules/${CONSTANTS.MODULE_NAME}/templates/welcome-screen.html`, + ]; + return loadTemplates(templatePaths); }; diff --git a/src/modules/settings.ts b/src/modules/settings.ts index 9e84dd6..e6f1283 100644 --- a/src/modules/settings.ts +++ b/src/modules/settings.ts @@ -1,325 +1,325 @@ -import API from './api'; -import DefaultIcons from './apps/DefaultIcons'; -import ItemProperties from './apps/ItemProperties'; -import CONSTANTS from './constants'; -import { dialogWarning, i18n, log, warn } from './lib/lib'; -import { SYSTEMS } from './systems'; +import API from "./api"; +import DefaultIcons from "./apps/DefaultIcons"; +import ItemProperties from "./apps/ItemProperties"; +import CONSTANTS from "./constants"; +import { dialogWarning, i18n, log, warn } from "./lib/lib"; +import { SYSTEMS } from "./systems"; export default function registerSettings() { - game.settings.registerMenu(CONSTANTS.MODULE_NAME, 'resetAllSettings', { - name: `${CONSTANTS.MODULE_NAME}.Settings.reset.name`, - hint: `${CONSTANTS.MODULE_NAME}.Settings.reset.hint`, - icon: 'fas fa-coins', - type: ResetSettingsDialog, - restricted: true, - }); - - // ===================================================================== - - //registerSettingMenus(); - game.settings.registerMenu(CONSTANTS.MODULE_NAME, 'defaultIcons', { - name: `${CONSTANTS.MODULE_NAME}.Settings.defaultIcons.name`, - label: `${CONSTANTS.MODULE_NAME}.Settings.defaultIcons.label`, - hint: `${CONSTANTS.MODULE_NAME}.Settings.defaultIcons.hint`, - icon: 'fas fa-image', - type: DefaultIcons, - restricted: true, - }); - - game.settings.registerMenu(CONSTANTS.MODULE_NAME, 'itemProperties', { - name: `${CONSTANTS.MODULE_NAME}.Settings.itemProperties.name`, - label: `${CONSTANTS.MODULE_NAME}.Settings.itemProperties.label`, - hint: `${CONSTANTS.MODULE_NAME}.Settings.itemProperties.hint`, - icon: 'fas fa-cogs', - type: ItemProperties, - restricted: true, - }); - - game.settings.register(CONSTANTS.MODULE_NAME, 'removeLabelButtonsSheetHeader', { - name: i18n(`${CONSTANTS.MODULE_NAME}.Settings.removeLabelButtonsSheetHeader.name`), - hint: i18n(`${CONSTANTS.MODULE_NAME}.Settings.removeLabelButtonsSheetHeader.hint`), - scope: 'world', - config: true, - type: Boolean, - default: true, - }); - - game.settings.register(CONSTANTS.MODULE_NAME, 'keepOldIcon', { - name: `${CONSTANTS.MODULE_NAME}.Settings.keepOldIcon.name`, - hint: `${CONSTANTS.MODULE_NAME}.Settings.keepOldIcon.hint`, - scope: 'world', - config: true, - default: false, - type: Boolean, - }); - - game.settings.register(CONSTANTS.MODULE_NAME, 'allowNestedItems', { - name: `${CONSTANTS.MODULE_NAME}.Settings.allowNestedItems.Name`, - hint: `${CONSTANTS.MODULE_NAME}.Settings.allowNestedItems.Hint`, - scope: 'world', - config: true, - default: false, - type: Boolean, - }); - - // ===================================================================== - - game.settings.register(CONSTANTS.MODULE_NAME, 'debug', { - name: `${CONSTANTS.MODULE_NAME}.Settings.debug.name`, - hint: `${CONSTANTS.MODULE_NAME}.Settings.debug.hint`, - scope: 'client', - config: true, - default: false, - type: Boolean, - }); - - game.settings.register(CONSTANTS.MODULE_NAME, 'debugHooks', { - scope: 'world', - config: false, - default: false, - type: Boolean, - }); - - game.settings.register(CONSTANTS.MODULE_NAME, 'systemFound', { - scope: 'world', - config: false, - default: false, - type: Boolean, - }); - - game.settings.register(CONSTANTS.MODULE_NAME, 'systemNotFoundWarningShown', { - scope: 'world', - config: false, - default: false, - type: Boolean, - }); - - game.settings.register(CONSTANTS.MODULE_NAME, 'preconfiguredSystem', { - name: `${CONSTANTS.MODULE_NAME}.Settings.preconfiguredSystem.name`, - hint: `${CONSTANTS.MODULE_NAME}.Settings.preconfiguredSystem.hint`, - scope: 'world', - config: false, - default: false, - type: Boolean, - }); - - // ======================================================================== - - const settings = defaultSettings(); - for (const [name, data] of Object.entries(settings)) { - game.settings.register(CONSTANTS.MODULE_NAME, name, data); - } - - // for (const [name, data] of Object.entries(otherSettings)) { - // game.settings.register(CONSTANTS.MODULE_NAME, name, data); - // } + game.settings.registerMenu(CONSTANTS.MODULE_NAME, "resetAllSettings", { + name: `${CONSTANTS.MODULE_NAME}.Settings.reset.name`, + hint: `${CONSTANTS.MODULE_NAME}.Settings.reset.hint`, + icon: "fas fa-coins", + type: ResetSettingsDialog, + restricted: true, + }); + + // ===================================================================== + + //registerSettingMenus(); + game.settings.registerMenu(CONSTANTS.MODULE_NAME, "defaultIcons", { + name: `${CONSTANTS.MODULE_NAME}.Settings.defaultIcons.name`, + label: `${CONSTANTS.MODULE_NAME}.Settings.defaultIcons.label`, + hint: `${CONSTANTS.MODULE_NAME}.Settings.defaultIcons.hint`, + icon: "fas fa-image", + type: DefaultIcons, + restricted: true, + }); + + game.settings.registerMenu(CONSTANTS.MODULE_NAME, "itemProperties", { + name: `${CONSTANTS.MODULE_NAME}.Settings.itemProperties.name`, + label: `${CONSTANTS.MODULE_NAME}.Settings.itemProperties.label`, + hint: `${CONSTANTS.MODULE_NAME}.Settings.itemProperties.hint`, + icon: "fas fa-cogs", + type: ItemProperties, + restricted: true, + }); + + game.settings.register(CONSTANTS.MODULE_NAME, "removeLabelButtonsSheetHeader", { + name: i18n(`${CONSTANTS.MODULE_NAME}.Settings.removeLabelButtonsSheetHeader.name`), + hint: i18n(`${CONSTANTS.MODULE_NAME}.Settings.removeLabelButtonsSheetHeader.hint`), + scope: "world", + config: true, + type: Boolean, + default: true, + }); + + game.settings.register(CONSTANTS.MODULE_NAME, "keepOldIcon", { + name: `${CONSTANTS.MODULE_NAME}.Settings.keepOldIcon.name`, + hint: `${CONSTANTS.MODULE_NAME}.Settings.keepOldIcon.hint`, + scope: "world", + config: true, + default: false, + type: Boolean, + }); + + game.settings.register(CONSTANTS.MODULE_NAME, "allowNestedItems", { + name: `${CONSTANTS.MODULE_NAME}.Settings.allowNestedItems.Name`, + hint: `${CONSTANTS.MODULE_NAME}.Settings.allowNestedItems.Hint`, + scope: "world", + config: true, + default: false, + type: Boolean, + }); + + // ===================================================================== + + game.settings.register(CONSTANTS.MODULE_NAME, "debug", { + name: `${CONSTANTS.MODULE_NAME}.Settings.debug.name`, + hint: `${CONSTANTS.MODULE_NAME}.Settings.debug.hint`, + scope: "client", + config: true, + default: false, + type: Boolean, + }); + + game.settings.register(CONSTANTS.MODULE_NAME, "debugHooks", { + scope: "world", + config: false, + default: false, + type: Boolean, + }); + + game.settings.register(CONSTANTS.MODULE_NAME, "systemFound", { + scope: "world", + config: false, + default: false, + type: Boolean, + }); + + game.settings.register(CONSTANTS.MODULE_NAME, "systemNotFoundWarningShown", { + scope: "world", + config: false, + default: false, + type: Boolean, + }); + + game.settings.register(CONSTANTS.MODULE_NAME, "preconfiguredSystem", { + name: `${CONSTANTS.MODULE_NAME}.Settings.preconfiguredSystem.name`, + hint: `${CONSTANTS.MODULE_NAME}.Settings.preconfiguredSystem.hint`, + scope: "world", + config: false, + default: false, + type: Boolean, + }); + + // ======================================================================== + + const settings = defaultSettings(); + for (const [name, data] of Object.entries(settings)) { + game.settings.register(CONSTANTS.MODULE_NAME, name, data); + } + + // for (const [name, data] of Object.entries(otherSettings)) { + // game.settings.register(CONSTANTS.MODULE_NAME, name, data); + // } } class ResetSettingsDialog extends FormApplication { - constructor(...args) { - //@ts-ignore - super(...args); - //@ts-ignore - return new Dialog({ - title: game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.resetsettings.title`), - content: - '

' + - game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.resetsettings.content`) + - '

', - buttons: { - confirm: { - icon: '', - label: game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.resetsettings.confirm`), - callback: async () => { - await applyDefaultSettings(); - window.location.reload(); - }, - }, - cancel: { - icon: '', - label: game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.resetsettings.cancel`), - }, - }, - default: 'cancel', - }); - } - - async _updateObject(event: Event, formData?: object): Promise { - // do nothing - } + constructor(...args) { + //@ts-ignore + super(...args); + //@ts-ignore + return new Dialog({ + title: game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.resetsettings.title`), + content: + '

' + + game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.resetsettings.content`) + + "

", + buttons: { + confirm: { + icon: '', + label: game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.resetsettings.confirm`), + callback: async () => { + await applyDefaultSettings(); + window.location.reload(); + }, + }, + cancel: { + icon: '', + label: game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.resetsettings.cancel`), + }, + }, + default: "cancel", + }); + } + + async _updateObject(event: Event, formData?: object): Promise { + // do nothing + } } async function applyDefaultSettings() { - const settings = defaultSettings(true); - for (const [name, data] of Object.entries(settings)) { - await game.settings.set(CONSTANTS.MODULE_NAME, name, data.default); - } - const settings2 = otherSettings(true); - for (const [name, data] of Object.entries(settings2)) { - //@ts-ignore - await game.settings.set(CONSTANTS.MODULE_NAME, name, data.default); - } + const settings = defaultSettings(true); + for (const [name, data] of Object.entries(settings)) { + await game.settings.set(CONSTANTS.MODULE_NAME, name, data.default); + } + const settings2 = otherSettings(true); + for (const [name, data] of Object.entries(settings2)) { + //@ts-ignore + await game.settings.set(CONSTANTS.MODULE_NAME, name, data.default); + } } function defaultSettings(apply = false) { - return { - defaultIcons: { - name: `${CONSTANTS.MODULE_NAME}.Settings.defaultIcons.name`, - hint: `${CONSTANTS.MODULE_NAME}.Settings.defaultIcons.hint`, - scope: 'world', - config: false, - default: {}, - }, - itemProperties: { - name: `${CONSTANTS.MODULE_NAME}.Settings.itemProperties.name`, - hint: `${CONSTANTS.MODULE_NAME}.Settings.itemProperties.hint`, - scope: 'world', - config: false, - default: {}, - }, - }; + return { + defaultIcons: { + name: `${CONSTANTS.MODULE_NAME}.Settings.defaultIcons.name`, + hint: `${CONSTANTS.MODULE_NAME}.Settings.defaultIcons.hint`, + scope: "world", + config: false, + default: {}, + }, + itemProperties: { + name: `${CONSTANTS.MODULE_NAME}.Settings.itemProperties.name`, + hint: `${CONSTANTS.MODULE_NAME}.Settings.itemProperties.hint`, + scope: "world", + config: false, + default: {}, + }, + }; } function otherSettings(apply = false) { - return { - removeLabelButtonsSheetHeader: { - name: i18n(`${CONSTANTS.MODULE_NAME}.Settings.removeLabelButtonsSheetHeader.name`), - hint: i18n(`${CONSTANTS.MODULE_NAME}.Settings.removeLabelButtonsSheetHeader.hint`), - scope: 'world', - config: true, - type: Boolean, - default: true, - }, - - keepOldIcon: { - name: `${CONSTANTS.MODULE_NAME}.Settings.keepOldIcon.name`, - hint: `${CONSTANTS.MODULE_NAME}.Settings.keepOldIcon.hint`, - scope: 'world', - config: true, - default: false, - type: Boolean, - }, - - allowNestedItems: { - name: `${CONSTANTS.MODULE_NAME}.Settings.allowNestedItems.Name`, - hint: `${CONSTANTS.MODULE_NAME}.Settings.allowNestedItems.Hint`, - scope: 'world', - config: true, - default: false, - type: Boolean, - }, - - debug: { - name: `${CONSTANTS.MODULE_NAME}.Settings.debug.name`, - hint: `${CONSTANTS.MODULE_NAME}.Settings.debug.hint`, - scope: 'client', - config: true, - default: false, - type: Boolean, - }, - - debugHooks: { - name: `${CONSTANTS.MODULE_NAME}.Settings.debugHooks.name`, - hint: `${CONSTANTS.MODULE_NAME}.Settings.debugHooks.hint`, - scope: 'world', - config: false, - default: false, - type: Boolean, - }, - - systemFound: { - name: `${CONSTANTS.MODULE_NAME}.Settings.systemFound.name`, - hint: `${CONSTANTS.MODULE_NAME}.Settings.systemFound.hint`, - scope: 'world', - config: false, - default: false, - type: Boolean, - }, - - systemNotFoundWarningShown: { - name: `${CONSTANTS.MODULE_NAME}.Settings.systemNotFoundWarningShown.name`, - hint: `${CONSTANTS.MODULE_NAME}.Settings.systemNotFoundWarningShown.hint`, - scope: 'world', - config: false, - default: false, - type: Boolean, - }, - - preconfiguredSystem: { - name: `${CONSTANTS.MODULE_NAME}.Settings.preconfiguredSystem.name`, - hint: `${CONSTANTS.MODULE_NAME}.Settings.preconfiguredSystem.hint`, - scope: 'world', - config: false, - default: false, - type: Boolean, - }, - }; + return { + removeLabelButtonsSheetHeader: { + name: i18n(`${CONSTANTS.MODULE_NAME}.Settings.removeLabelButtonsSheetHeader.name`), + hint: i18n(`${CONSTANTS.MODULE_NAME}.Settings.removeLabelButtonsSheetHeader.hint`), + scope: "world", + config: true, + type: Boolean, + default: true, + }, + + keepOldIcon: { + name: `${CONSTANTS.MODULE_NAME}.Settings.keepOldIcon.name`, + hint: `${CONSTANTS.MODULE_NAME}.Settings.keepOldIcon.hint`, + scope: "world", + config: true, + default: false, + type: Boolean, + }, + + allowNestedItems: { + name: `${CONSTANTS.MODULE_NAME}.Settings.allowNestedItems.Name`, + hint: `${CONSTANTS.MODULE_NAME}.Settings.allowNestedItems.Hint`, + scope: "world", + config: true, + default: false, + type: Boolean, + }, + + debug: { + name: `${CONSTANTS.MODULE_NAME}.Settings.debug.name`, + hint: `${CONSTANTS.MODULE_NAME}.Settings.debug.hint`, + scope: "client", + config: true, + default: false, + type: Boolean, + }, + + debugHooks: { + name: `${CONSTANTS.MODULE_NAME}.Settings.debugHooks.name`, + hint: `${CONSTANTS.MODULE_NAME}.Settings.debugHooks.hint`, + scope: "world", + config: false, + default: false, + type: Boolean, + }, + + systemFound: { + name: `${CONSTANTS.MODULE_NAME}.Settings.systemFound.name`, + hint: `${CONSTANTS.MODULE_NAME}.Settings.systemFound.hint`, + scope: "world", + config: false, + default: false, + type: Boolean, + }, + + systemNotFoundWarningShown: { + name: `${CONSTANTS.MODULE_NAME}.Settings.systemNotFoundWarningShown.name`, + hint: `${CONSTANTS.MODULE_NAME}.Settings.systemNotFoundWarningShown.hint`, + scope: "world", + config: false, + default: false, + type: Boolean, + }, + + preconfiguredSystem: { + name: `${CONSTANTS.MODULE_NAME}.Settings.preconfiguredSystem.name`, + hint: `${CONSTANTS.MODULE_NAME}.Settings.preconfiguredSystem.hint`, + scope: "world", + config: false, + default: false, + type: Boolean, + }, + }; } export async function checkSystem() { - if (!SYSTEMS.DATA) { - if (game.settings.get(CONSTANTS.MODULE_NAME, 'systemNotFoundWarningShown')) return; - - await game.settings.set(CONSTANTS.MODULE_NAME, 'systemNotFoundWarningShown', true); - - return Dialog.prompt({ - title: game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.nosystemfound.title`), - content: dialogWarning(game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.nosystemfound.content`)), - callback: () => { - // empty body just for avoid the error on eslint - }, - }); - } - - if (game.settings.get(CONSTANTS.MODULE_NAME, 'systemFound')) return; - - game.settings.set(CONSTANTS.MODULE_NAME, 'systemFound', true); - - if (game.settings.get(CONSTANTS.MODULE_NAME, 'systemNotFoundWarningShown')) { - return new Dialog({ - title: game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.systemfound.title`), - content: warn(game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.systemfound.content`), true), - buttons: { - confirm: { - icon: '', - label: game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.systemfound.confirm`), - callback: () => { - applyDefaultSettings(); - }, - }, - cancel: { - icon: '', - label: game.i18n.localize('No'), - }, - }, - default: 'cancel', - }).render(true); - } - - return applyDefaultSettings(); + if (!SYSTEMS.DATA) { + if (game.settings.get(CONSTANTS.MODULE_NAME, "systemNotFoundWarningShown")) return; + + await game.settings.set(CONSTANTS.MODULE_NAME, "systemNotFoundWarningShown", true); + + return Dialog.prompt({ + title: game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.nosystemfound.title`), + content: dialogWarning(game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.nosystemfound.content`)), + callback: () => { + // empty body just for avoid the error on eslint + }, + }); + } + + if (game.settings.get(CONSTANTS.MODULE_NAME, "systemFound")) return; + + game.settings.set(CONSTANTS.MODULE_NAME, "systemFound", true); + + if (game.settings.get(CONSTANTS.MODULE_NAME, "systemNotFoundWarningShown")) { + return new Dialog({ + title: game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.systemfound.title`), + content: warn(game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.systemfound.content`), true), + buttons: { + confirm: { + icon: '', + label: game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.systemfound.confirm`), + callback: () => { + applyDefaultSettings(); + }, + }, + cancel: { + icon: '', + label: game.i18n.localize("No"), + }, + }, + default: "cancel", + }).render(true); + } + + return applyDefaultSettings(); } /** * Checks if options exist, if not, orders their initialization */ export function checkSettingsInitialized() { - if (!game.user?.isGM) { - return; - } - const defaultIcons = game.settings.get(CONSTANTS.MODULE_NAME, 'defaultIcons'); - const itemProperties = game.settings.get(CONSTANTS.MODULE_NAME, 'itemProperties'); - - if (checkObjEmpty(defaultIcons)) { - initializeDefaultIcons(); - } - - if (checkObjEmpty(itemProperties)) { - initializeItemProperties(); - } + if (!game.user?.isGM) { + return; + } + const defaultIcons = game.settings.get(CONSTANTS.MODULE_NAME, "defaultIcons"); + const itemProperties = game.settings.get(CONSTANTS.MODULE_NAME, "itemProperties"); + + if (checkObjEmpty(defaultIcons)) { + initializeDefaultIcons(); + } + + if (checkObjEmpty(itemProperties)) { + initializeItemProperties(); + } } function checkObjEmpty(obj) { - return Object.keys(obj).length === 0 && obj.constructor === Object; + return Object.keys(obj).length === 0 && obj.constructor === Object; } /** @@ -328,17 +328,17 @@ function checkObjEmpty(obj) { * @hook "forien-unidentified-items:onInitializeDefaultIcons" */ function initializeDefaultIcons() { - const di = new DefaultIcons({}, {}); - let settings = di.getSettings(); - const icons = duplicate(settings); - console.log(JSON.stringify(icons)); - Hooks.call(`${CONSTANTS.MODULE_NAME}:onInitializeDefaultIcons`, icons); - settings = mergeObject(settings, icons); - di.saveSettings(settings); - log(`Initialized default item icons.`); - ui.notifications?.info(game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Notifications.defaultIconsInitialized`), { - permanent: true, - }); + const di = new DefaultIcons({}, {}); + let settings = di.getSettings(); + const icons = duplicate(settings); + console.log(JSON.stringify(icons)); + Hooks.call(`${CONSTANTS.MODULE_NAME}:onInitializeDefaultIcons`, icons); + settings = mergeObject(settings, icons); + di.saveSettings(settings); + log(`Initialized default item icons.`); + ui.notifications?.info(game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Notifications.defaultIconsInitialized`), { + permanent: true, + }); } /** @@ -347,34 +347,33 @@ function initializeDefaultIcons() { * @hook "forien-unidentified-items:onInitializeItemProperties" */ function initializeItemProperties() { - const ip = new ItemProperties({}, {}); - let settings: any = ip.getSettings(); - settings = Object.entries(settings); - settings = settings.map((type) => { - let entries = Object.entries(type[1]); - entries = entries.sort((a, b) => { - if (a[0] < b[0]) { - return -1; - } - if (a[0] > b[0]) { - return 1; - } - return 0; - }); - type[1] = Object.fromEntries(entries); - return type; - }); - settings = Object.fromEntries(settings); - //settings = setDefaultItemProperties(settings); - settings = mergeObject(settings, API.DEFAULT_PROPERTIES); - const properties = duplicate(settings); - Hooks.call(`${CONSTANTS.MODULE_NAME}:onInitializeItemProperties`, properties); - console.log(JSON.stringify(properties)); - settings = mergeObject(settings, properties); - ip.saveSettings(settings); - log(` Initialized default item properties.`); - ui.notifications?.info(i18n(`${CONSTANTS.MODULE_NAME}.Notifications.defaultPropertiesInitialized`), { - permanent: true, - }); + const ip = new ItemProperties({}, {}); + let settings: any = ip.getSettings(); + settings = Object.entries(settings); + settings = settings.map((type) => { + let entries = Object.entries(type[1]); + entries = entries.sort((a, b) => { + if (a[0] < b[0]) { + return -1; + } + if (a[0] > b[0]) { + return 1; + } + return 0; + }); + type[1] = Object.fromEntries(entries); + return type; + }); + settings = Object.fromEntries(settings); + //settings = setDefaultItemProperties(settings); + settings = mergeObject(settings, API.DEFAULT_PROPERTIES); + const properties = duplicate(settings); + Hooks.call(`${CONSTANTS.MODULE_NAME}:onInitializeItemProperties`, properties); + console.log(JSON.stringify(properties)); + settings = mergeObject(settings, properties); + ip.saveSettings(settings); + log(` Initialized default item properties.`); + ui.notifications?.info(i18n(`${CONSTANTS.MODULE_NAME}.Notifications.defaultPropertiesInitialized`), { + permanent: true, + }); } - diff --git a/src/modules/systems.ts b/src/modules/systems.ts index 79366de..05bdbd6 100644 --- a/src/modules/systems.ts +++ b/src/modules/systems.ts @@ -1,10 +1,10 @@ // ↓ IMPORT SYSTEMS HERE ↓ -import dnd5e from './systems/dnd5e'; -import pf2e from './systems/pf2e'; -import swade from './systems/swade'; -import sw5e from './systems/sw5e'; -import wfrp4e from './systems/wfrp4e'; -import generic from './systems/generic'; +import dnd5e from "./systems/dnd5e"; +import pf2e from "./systems/pf2e"; +import swade from "./systems/swade"; +import sw5e from "./systems/sw5e"; +import wfrp4e from "./systems/wfrp4e"; +import generic from "./systems/generic"; // ↑ IMPORT SYSTEMS HERE ↑ @@ -13,16 +13,16 @@ import generic from './systems/generic'; * FOLLOW THE CONVENTION IN THE D&D 5E SYSTEM FILE */ export const SYSTEMS = { - get DATA() { - return { - // ↓ ADD SYSTEMS HERE ↓ - dnd5e, - pf2e, - swade, - sw5e, - wfrp4e, - generic, - // ↑ ADD SYSTEMS HERE ↑ - }?.[game.system.id]; - }, + get DATA() { + return { + // ↓ ADD SYSTEMS HERE ↓ + dnd5e, + pf2e, + swade, + sw5e, + wfrp4e, + generic, + // ↑ ADD SYSTEMS HERE ↑ + }?.[game.system.id]; + }, }; diff --git a/src/modules/systems/dnd5e.ts b/src/modules/systems/dnd5e.ts index 39c5919..e8f76ec 100644 --- a/src/modules/systems/dnd5e.ts +++ b/src/modules/systems/dnd5e.ts @@ -1,37 +1,37 @@ export default { - DEFAULT_PROPERTIES: { - weapon: { - weight: true, - quantity: true, - weaponType: true, - equipped: true, - }, - equipment: { - weight: true, - quantity: true, - 'armor.type': true, - equipped: true, - }, - consumable: { - weight: true, - quantity: true, - equipped: true, - consumableType: true, - }, - tool: { - weight: true, - quantity: true, - equipped: true, - }, - loot: { - weight: true, - quantity: true, - equipped: true, - }, - backpack: { - weight: true, - quantity: true, - equipped: true, - }, - }, + DEFAULT_PROPERTIES: { + weapon: { + weight: true, + quantity: true, + weaponType: true, + equipped: true, + }, + equipment: { + weight: true, + quantity: true, + "armor.type": true, + equipped: true, + }, + consumable: { + weight: true, + quantity: true, + equipped: true, + consumableType: true, + }, + tool: { + weight: true, + quantity: true, + equipped: true, + }, + loot: { + weight: true, + quantity: true, + equipped: true, + }, + backpack: { + weight: true, + quantity: true, + equipped: true, + }, + }, }; diff --git a/src/modules/systems/generic.ts b/src/modules/systems/generic.ts index 4b8037c..48049dd 100644 --- a/src/modules/systems/generic.ts +++ b/src/modules/systems/generic.ts @@ -1,3 +1,3 @@ export default { - DEFAULT_PROPERTIES: {}, + DEFAULT_PROPERTIES: {}, }; diff --git a/src/modules/systems/pf2e.ts b/src/modules/systems/pf2e.ts index a7851ef..e495439 100644 --- a/src/modules/systems/pf2e.ts +++ b/src/modules/systems/pf2e.ts @@ -1,32 +1,32 @@ export default { - DEFAULT_PROPERTIES: { - weapon: { - 'bulkCapacity.value': true, - 'quantity.value': true, - 'weaponType.value': true, - }, - melee: { - 'bulkCapacity.value': true, - 'quantity.value': true, - }, - armor: { - 'armorType.value': true, - 'bulkCapacity.value': true, - 'quantity.value': true, - }, - equipment: { - 'bulkCapacity.value': true, - 'quantity.value': true, - }, - consumable: { - 'bulkCapacity.value': true, - 'consumableType.value': true, - 'quantity.value': true, - 'uses.value': true, - }, - treasure: { - 'bulkCapacity.value': true, - 'quantity.value': true, - }, - }, + DEFAULT_PROPERTIES: { + weapon: { + "bulkCapacity.value": true, + "quantity.value": true, + "weaponType.value": true, + }, + melee: { + "bulkCapacity.value": true, + "quantity.value": true, + }, + armor: { + "armorType.value": true, + "bulkCapacity.value": true, + "quantity.value": true, + }, + equipment: { + "bulkCapacity.value": true, + "quantity.value": true, + }, + consumable: { + "bulkCapacity.value": true, + "consumableType.value": true, + "quantity.value": true, + "uses.value": true, + }, + treasure: { + "bulkCapacity.value": true, + "quantity.value": true, + }, + }, }; diff --git a/src/modules/systems/sw5e.ts b/src/modules/systems/sw5e.ts index 39c5919..e8f76ec 100644 --- a/src/modules/systems/sw5e.ts +++ b/src/modules/systems/sw5e.ts @@ -1,37 +1,37 @@ export default { - DEFAULT_PROPERTIES: { - weapon: { - weight: true, - quantity: true, - weaponType: true, - equipped: true, - }, - equipment: { - weight: true, - quantity: true, - 'armor.type': true, - equipped: true, - }, - consumable: { - weight: true, - quantity: true, - equipped: true, - consumableType: true, - }, - tool: { - weight: true, - quantity: true, - equipped: true, - }, - loot: { - weight: true, - quantity: true, - equipped: true, - }, - backpack: { - weight: true, - quantity: true, - equipped: true, - }, - }, + DEFAULT_PROPERTIES: { + weapon: { + weight: true, + quantity: true, + weaponType: true, + equipped: true, + }, + equipment: { + weight: true, + quantity: true, + "armor.type": true, + equipped: true, + }, + consumable: { + weight: true, + quantity: true, + equipped: true, + consumableType: true, + }, + tool: { + weight: true, + quantity: true, + equipped: true, + }, + loot: { + weight: true, + quantity: true, + equipped: true, + }, + backpack: { + weight: true, + quantity: true, + equipped: true, + }, + }, }; diff --git a/src/modules/systems/swade.ts b/src/modules/systems/swade.ts index 5fd51a1..9a33caa 100644 --- a/src/modules/systems/swade.ts +++ b/src/modules/systems/swade.ts @@ -1,36 +1,36 @@ export default { - DEFAULT_PROPERTIES: { - weapon: { - quantity: true, - weight: true, - equippable: true, - equipped: true, - minStr: true, - }, - armor: { - quantity: true, - weight: true, - equippable: true, - equipped: true, - minStr: true, - 'locations.head': true, - 'locations.torso': true, - 'locations.arms': true, - 'locations.legs': true, - }, - shield: { - quantity: true, - weight: true, - equippable: true, - equipped: true, - minStr: true, - cover: true, - }, - gear: { - quantity: true, - weight: true, - equippable: true, - equipped: true, - }, - }, + DEFAULT_PROPERTIES: { + weapon: { + quantity: true, + weight: true, + equippable: true, + equipped: true, + minStr: true, + }, + armor: { + quantity: true, + weight: true, + equippable: true, + equipped: true, + minStr: true, + "locations.head": true, + "locations.torso": true, + "locations.arms": true, + "locations.legs": true, + }, + shield: { + quantity: true, + weight: true, + equippable: true, + equipped: true, + minStr: true, + cover: true, + }, + gear: { + quantity: true, + weight: true, + equippable: true, + equipped: true, + }, + }, }; diff --git a/src/modules/systems/wfrp4e.ts b/src/modules/systems/wfrp4e.ts index 0542a5b..83be9b1 100644 --- a/src/modules/systems/wfrp4e.ts +++ b/src/modules/systems/wfrp4e.ts @@ -1,42 +1,42 @@ export default { - DEFAULT_PROPERTIES: { - ammunition: { - 'encumbrance.value': true, - 'quantity.value': true, - 'gmdescription.value': true, - 'ammunitionType.value': true, - }, - armour: { - 'encumbrance.value': true, - 'quantity.value': true, - 'gmdescription.value': true, - 'location.value': true, - 'armorType.value': true, - }, - container: { - 'encumbrance.value': true, - 'quantity.value': true, - 'gmdescription.value': true, - }, - money: { - 'encumbrance.value': true, - 'quantity.value': true, - 'gmdescription.value': true, - }, - trapping: { - 'encumbrance.value': true, - 'quantity.value': true, - 'gmdescription.value': true, - 'trappingType.value': true, - }, - weapon: { - 'encumbrance.value': true, - 'quantity.value': true, - 'gmdescription.value': true, - 'twohanded.value': true, - 'ammunitionGroup.value': true, - 'weaponGroup.value': true, - 'reach.value': true, - }, - }, + DEFAULT_PROPERTIES: { + ammunition: { + "encumbrance.value": true, + "quantity.value": true, + "gmdescription.value": true, + "ammunitionType.value": true, + }, + armour: { + "encumbrance.value": true, + "quantity.value": true, + "gmdescription.value": true, + "location.value": true, + "armorType.value": true, + }, + container: { + "encumbrance.value": true, + "quantity.value": true, + "gmdescription.value": true, + }, + money: { + "encumbrance.value": true, + "quantity.value": true, + "gmdescription.value": true, + }, + trapping: { + "encumbrance.value": true, + "quantity.value": true, + "gmdescription.value": true, + "trappingType.value": true, + }, + weapon: { + "encumbrance.value": true, + "quantity.value": true, + "gmdescription.value": true, + "twohanded.value": true, + "ammunitionGroup.value": true, + "weaponGroup.value": true, + "reach.value": true, + }, + }, }; diff --git a/src/styles/style.css b/src/styles/style.css index 55eb433..b336323 100644 --- a/src/styles/style.css +++ b/src/styles/style.css @@ -1,173 +1,173 @@ #fui-default-icons.wfrp .window-content { - background: url(/ui/parchment.jpg) repeat; + background: url(/ui/parchment.jpg) repeat; } #fui-default-icons .item-type-entry { - display: flex; + display: flex; } #fui-default-icons .item-type-entry > * { - flex: 1; - align-self: center; - margin: 0 4px; + flex: 1; + align-self: center; + margin: 0 4px; } #fui-default-icons .item-type-entry input { - flex: 2; - height: 29px; - min-width: 300px; - font-size: 12px; + flex: 2; + height: 29px; + min-width: 300px; + font-size: 12px; } #fui-default-icons .item-type-entry img { - width: 66px; - height: 66px; - flex: 0; - margin: 0; + width: 66px; + height: 66px; + flex: 0; + margin: 0; } #fui-default-icons .item-type-entry button { - flex: 0; - margin: 0; + flex: 0; + margin: 0; } #fui-item-properties.wfrp .window-content { - background: url(/ui/parchment.jpg) repeat; + background: url(/ui/parchment.jpg) repeat; } #fui-item-properties form { - height: 100%; - display: grid; - grid-template-rows: auto minmax(0, 1fr) auto; + height: 100%; + display: grid; + grid-template-rows: auto minmax(0, 1fr) auto; } #fui-item-properties nav { - flex-wrap: wrap; + flex-wrap: wrap; } #fui-item-properties nav a { - flex: 0 0 25%; + flex: 0 0 25%; } #fui-item-properties section { - overflow: auto; - padding: 6px; + overflow: auto; + padding: 6px; } #fui-item-properties section .tab { - columns: 3; - /** + columns: 3; + /** * Because PF2e... */ - display: none; + display: none; } #fui-item-properties section .tab .type-property { - display: flex; - align-items: center; + display: flex; + align-items: center; } #fui-item-properties section .tab * { - break-inside: avoid-column; - padding: 0; + break-inside: avoid-column; + padding: 0; } #fui-item-properties section .tab.tab.active { - display: block; + display: block; } #mystifyAsDialog .dropzone { - min-height: 240px; - margin-bottom: 4px; - border: 2px dashed #33333366; - border-radius: 6px; - align-items: center; - justify-content: center; - position: relative; - display: flex; - flex-direction: column; + min-height: 240px; + margin-bottom: 4px; + border: 2px dashed #33333366; + border-radius: 6px; + align-items: center; + justify-content: center; + position: relative; + display: flex; + flex-direction: column; } #mystifyAsDialog .dropzone p { - text-align: center; - position: relative; - max-width: 80%; - font-variant: small-caps; - font-size: 1.6rem; - color: #333333cc; + text-align: center; + position: relative; + max-width: 80%; + font-variant: small-caps; + font-size: 1.6rem; + color: #333333cc; } #mystifyAsDialog .dropzone .item { - display: flex; + display: flex; } #mystifyAsDialog .dropzone .item img { - width: 66px; - height: 66px; - border-radius: 8px; - border: 2px solid #000; + width: 66px; + height: 66px; + border-radius: 8px; + border: 2px solid #000; } #mystifyAsDialog .dropzone .item span { - font-size: 1.2rem; - align-self: center; - padding: 8px; + font-size: 1.2rem; + align-self: center; + padding: 8px; } -#mystifyAsDialog button[data-button='mystifyAdvanced'] { - flex-basis: 100%; - margin: 0 0 2px 0; +#mystifyAsDialog button[data-button="mystifyAdvanced"] { + flex-basis: 100%; + margin: 0 0 2px 0; } #mystifyAdvancedDialog { - min-width: 500px; - max-height: 800px; + min-width: 500px; + max-height: 800px; } #mystifyAdvancedDialog .window-content { - display: grid; - grid-template-rows: minmax(0, 1fr) auto; + display: grid; + grid-template-rows: minmax(0, 1fr) auto; } #mystifyAdvancedDialog .advanced-body { - height: 100%; - display: grid; - grid-template-rows: auto auto auto auto minmax(0, 1fr); + height: 100%; + display: grid; + grid-template-rows: auto auto auto auto minmax(0, 1fr); } #mystifyAdvancedDialog .advanced-body .meta-header { - display: flex; + display: flex; } #mystifyAdvancedDialog .advanced-body .meta-header > * { - flex: 1; - text-align: center; - font-weight: bold; + flex: 1; + text-align: center; + font-weight: bold; } #mystifyAdvancedDialog .advanced-body .meta-body > * { - display: flex; + display: flex; } #mystifyAdvancedDialog .advanced-body .meta-body > * > * { - flex: 1; - display: flex; - flex-direction: column; - justify-items: center; - align-items: center; + flex: 1; + display: flex; + flex-direction: column; + justify-items: center; + align-items: center; } #mystifyAdvancedDialog .advanced-body .meta-name { - margin-top: 10px; + margin-top: 10px; } #mystifyAdvancedDialog .advanced-body img { - width: 66px; - height: 66px; + width: 66px; + height: 66px; } #mystifyAdvancedDialog .advanced-body .properties-body { - overflow-y: auto; - display: grid; - grid-template-columns: auto minmax(0, 1fr) auto; - grid-gap: 6px 10px; + overflow-y: auto; + display: grid; + grid-template-columns: auto minmax(0, 1fr) auto; + grid-gap: 6px 10px; } #mystifyAdvancedDialog .advanced-body .properties-body label { - font-weight: bold; + font-weight: bold; } #mystifyAdvancedDialog .advanced-body .properties-body .property-values { - display: flex; - flex-direction: column; - font-style: italic; - font-size: 12px; + display: flex; + flex-direction: column; + font-style: italic; + font-size: 12px; } /*# sourceMappingURL=style.css.map */ .identify-item .fa-search { - color: DeepPink; - text-shadow: 0 0 8px DeepPink; + color: DeepPink; + text-shadow: 0 0 8px DeepPink; } .peek-original-item .fa-eye { - color: Orchid; - text-shadow: 0 0 8px Orchid; + color: Orchid; + text-shadow: 0 0 8px Orchid; } .mystify-item .fa-eye-slash { - color: RebeccaPurple; - text-shadow: 0 0 8px RebeccaPurple; + color: RebeccaPurple; + text-shadow: 0 0 8px RebeccaPurple; } diff --git a/src/styles/style.scss b/src/styles/style.scss index 51500f3..d77eddc 100644 --- a/src/styles/style.scss +++ b/src/styles/style.scss @@ -1,215 +1,215 @@ $icon-size: 66px; #fui-default-icons { - &.wfrp { - .window-content { - background: url(/ui/parchment.jpg) repeat; - } - } - - .item-type-entry { - display: flex; - - & > * { - flex: 1; - align-self: center; - margin: 0 4px; - } - - input { - flex: 2; - height: 29px; - min-width: 300px; - font-size: 12px; - } - - img { - width: $icon-size; - height: $icon-size; - flex: 0; - margin: 0; - } - - button { - flex: 0; - margin: 0; - } - } + &.wfrp { + .window-content { + background: url(/ui/parchment.jpg) repeat; + } + } + + .item-type-entry { + display: flex; + + & > * { + flex: 1; + align-self: center; + margin: 0 4px; + } + + input { + flex: 2; + height: 29px; + min-width: 300px; + font-size: 12px; + } + + img { + width: $icon-size; + height: $icon-size; + flex: 0; + margin: 0; + } + + button { + flex: 0; + margin: 0; + } + } } #fui-item-properties { - &.wfrp { - .window-content { - background: url(/ui/parchment.jpg) repeat; - } - } - - form { - height: 100%; - display: grid; - grid-template-rows: auto minmax(0, 1fr) auto; - } - - nav { - flex-wrap: wrap; - - a { - flex: 0 0 25%; - } - } - - section { - overflow: auto; - padding: 6px; - - .tab { - columns: 3; - - .type-property { - display: flex; - align-items: center; - } - - * { - break-inside: avoid-column; - padding: 0; - } - - /** + &.wfrp { + .window-content { + background: url(/ui/parchment.jpg) repeat; + } + } + + form { + height: 100%; + display: grid; + grid-template-rows: auto minmax(0, 1fr) auto; + } + + nav { + flex-wrap: wrap; + + a { + flex: 0 0 25%; + } + } + + section { + overflow: auto; + padding: 6px; + + .tab { + columns: 3; + + .type-property { + display: flex; + align-items: center; + } + + * { + break-inside: avoid-column; + padding: 0; + } + + /** * Because PF2e... */ - display: none; - - // Also Because PF2e... - &.tab.active { - display: block; - } - } - } + display: none; + + // Also Because PF2e... + &.tab.active { + display: block; + } + } + } } #mystifyAsDialog { - .dropzone { - min-height: 240px; - margin-bottom: 4px; - border: 2px dashed #33333366; - border-radius: 6px; - align-items: center; - justify-content: center; - position: relative; - display: flex; - flex-direction: column; - - p { - text-align: center; - position: relative; - max-width: 80%; - - font-variant: small-caps; - font-size: 1.6rem; - color: #333333cc; - } - - .item { - display: flex; - - img { - width: $icon-size; - height: $icon-size; - border-radius: 8px; - border: 2px solid #000; - } - - span { - font-size: 1.2rem; - align-self: center; - padding: 8px; - } - } - } - - button[data-button='mystifyAdvanced'] { - flex-basis: 100%; - margin: 0 0 2px 0; - } + .dropzone { + min-height: 240px; + margin-bottom: 4px; + border: 2px dashed #33333366; + border-radius: 6px; + align-items: center; + justify-content: center; + position: relative; + display: flex; + flex-direction: column; + + p { + text-align: center; + position: relative; + max-width: 80%; + + font-variant: small-caps; + font-size: 1.6rem; + color: #333333cc; + } + + .item { + display: flex; + + img { + width: $icon-size; + height: $icon-size; + border-radius: 8px; + border: 2px solid #000; + } + + span { + font-size: 1.2rem; + align-self: center; + padding: 8px; + } + } + } + + button[data-button="mystifyAdvanced"] { + flex-basis: 100%; + margin: 0 0 2px 0; + } } #mystifyAdvancedDialog { - min-width: 500px; - max-height: 800px; - - .window-content { - display: grid; - grid-template-rows: minmax(0, 1fr) auto; - } - - .advanced-body { - height: 100%; - display: grid; - grid-template-rows: auto auto auto auto minmax(0, 1fr); - - .meta-header { - display: flex; - - & > * { - flex: 1; - text-align: center; - font-weight: bold; - } - } - - .meta-body > * { - display: flex; - - & > * { - flex: 1; - display: flex; - flex-direction: column; - justify-items: center; - align-items: center; - } - } - - .meta-name { - margin-top: 10px; - } - - img { - width: $icon-size; - height: $icon-size; - } - - .properties-body { - overflow-y: auto; - display: grid; - grid-template-columns: auto minmax(0, 1fr) auto; - grid-gap: 6px 10px; - - label { - font-weight: bold; - } - - .property-values { - display: flex; - flex-direction: column; - font-style: italic; - font-size: 12px; - } - } - } + min-width: 500px; + max-height: 800px; + + .window-content { + display: grid; + grid-template-rows: minmax(0, 1fr) auto; + } + + .advanced-body { + height: 100%; + display: grid; + grid-template-rows: auto auto auto auto minmax(0, 1fr); + + .meta-header { + display: flex; + + & > * { + flex: 1; + text-align: center; + font-weight: bold; + } + } + + .meta-body > * { + display: flex; + + & > * { + flex: 1; + display: flex; + flex-direction: column; + justify-items: center; + align-items: center; + } + } + + .meta-name { + margin-top: 10px; + } + + img { + width: $icon-size; + height: $icon-size; + } + + .properties-body { + overflow-y: auto; + display: grid; + grid-template-columns: auto minmax(0, 1fr) auto; + grid-gap: 6px 10px; + + label { + font-weight: bold; + } + + .property-values { + display: flex; + flex-direction: column; + font-style: italic; + font-size: 12px; + } + } + } } .identify-item .fa-search { - color: DeepPink; - text-shadow: 0 0 8px DeepPink; + color: DeepPink; + text-shadow: 0 0 8px DeepPink; } .peek-original-item .fa-eye { - color: Orchid; - text-shadow: 0 0 8px Orchid; + color: Orchid; + text-shadow: 0 0 8px Orchid; } .mystify-item .fa-eye-slash { - color: RebeccaPurple; - text-shadow: 0 0 8px RebeccaPurple; + color: RebeccaPurple; + text-shadow: 0 0 8px RebeccaPurple; } diff --git a/src/templates/mystify-advanced.html b/src/templates/mystify-advanced.html index 9805e68..99bb83b 100644 --- a/src/templates/mystify-advanced.html +++ b/src/templates/mystify-advanced.html @@ -1,50 +1,50 @@
-

{{localize "forien-unidentified-items.Dialog.MystifyAdvanced.Meta"}}

-
- {{localize "forien-unidentified-items.Dialog.MystifyAdvanced.Original"}} - {{localize "forien-unidentified-items.Dialog.MystifyAdvanced.Result"}} - {{localize "forien-unidentified-items.Dialog.MystifyAdvanced.Default"}} -
-
-
-
- -
-
- - - -
-
- -
-
-
-
{{item.name}}
-
- {{meta.name}} - - - -
-
{{meta.name}}
-
-
-

{{localize "forien-unidentified-items.Dialog.MystifyAdvanced.Properties"}}

-
- {{#each properties}} - -
- {{localize "forien-unidentified-items.Dialog.MystifyAdvanced.Original"}}: - {{{this.orig}}} - {{localize "forien-unidentified-items.Dialog.MystifyAdvanced.Default"}}: - {{{this.default}}} -
- - {{/each}} -
+

{{localize "forien-unidentified-items.Dialog.MystifyAdvanced.Meta"}}

+
+ {{localize "forien-unidentified-items.Dialog.MystifyAdvanced.Original"}} + {{localize "forien-unidentified-items.Dialog.MystifyAdvanced.Result"}} + {{localize "forien-unidentified-items.Dialog.MystifyAdvanced.Default"}} +
+
+
+
+ +
+
+ + + +
+
+ +
+
+
+
{{item.name}}
+
+ {{meta.name}} + + + +
+
{{meta.name}}
+
+
+

{{localize "forien-unidentified-items.Dialog.MystifyAdvanced.Properties"}}

+
+ {{#each properties}} + +
+ + {{localize "forien-unidentified-items.Dialog.MystifyAdvanced.Original"}}: + {{{this.orig}}} + + + {{localize "forien-unidentified-items.Dialog.MystifyAdvanced.Default"}}: + {{{this.default}}} + +
+ + {{/each}} +
diff --git a/src/templates/settings-default-icons.html b/src/templates/settings-default-icons.html index 2e7506d..27eb692 100644 --- a/src/templates/settings-default-icons.html +++ b/src/templates/settings-default-icons.html @@ -1,14 +1,14 @@
- {{#each types}} -
- - - - -
- {{/each}} + {{#each types}} +
+ + + + +
+ {{/each}} - +
diff --git a/src/templates/settings-item-properties.html b/src/templates/settings-item-properties.html index 0106914..da38353 100644 --- a/src/templates/settings-item-properties.html +++ b/src/templates/settings-item-properties.html @@ -1,21 +1,27 @@
- - + + - +
From 1ed72ec5a68d99e63fc734d3a5a170be2526d89d Mon Sep 17 00:00:00 2001 From: p4535992 Date: Sun, 25 Dec 2022 20:30:04 +0100 Subject: [PATCH 03/12] beta --- README.md | 6 +++--- src/modules/Identification.ts | 18 ++++++++++-------- src/modules/ItemSheet.ts | 8 ++++---- src/modules/apps/DefaultIcons.ts | 6 +++--- src/modules/apps/ItemProperties.ts | 4 ++-- src/modules/lib/lib.ts | 12 ++++++------ src/styles/style.css | 30 +++++++++++++++--------------- src/styles/style.scss | 8 ++++---- 8 files changed, 47 insertions(+), 45 deletions(-) diff --git a/README.md b/README.md index dc92cf8..e680862 100644 --- a/README.md +++ b/README.md @@ -37,9 +37,9 @@ To install this module manually: # System Integration | | dnd5e | pf2e | wfrp4e | sw5e | swade | -|------------ |------- |------ |-------- |-------- | -| Settings | ✓ | ✓ | ✓ | ✓ | ✓ | -| Logic | ✗ | ✗ | ✗ | ✗ | ✗ | +|------------ |------- |------ |-------- |------ | ------- | +| Settings | ✓ | ✓ | ✓ | ✓ | ✓ | +| Logic | ✗ | ✗ | ✗ | ✗ | ✗ | One of main principles of this module is being [**System Agnostic**](https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items/wiki#1-completely-system-agnostic). There is however, way of integrating systems. diff --git a/src/modules/Identification.ts b/src/modules/Identification.ts index 20ea572..9cc40ca 100644 --- a/src/modules/Identification.ts +++ b/src/modules/Identification.ts @@ -64,7 +64,7 @@ export default class Identification { */ static async mystifyAsDialog(itemUuid) { const origItem: any = await this._itemFromUuid(itemUuid); - const nameItem = origItem.data.name; + const nameItem = origItem.name; let itemTmp; let replace; @@ -141,8 +141,8 @@ export default class Identification { if (data.pack) { item = await this._getItemFromPack(data.pack, data.id); item = duplicate(item); - } else if (data.data) { - item = data.data; + } else if (data) { + item = data; } else { const witem = game.items?.get(data.id); if (!witem) { @@ -172,7 +172,7 @@ export default class Identification { */ static async mystifyAdvancedDialog(itemUuid, source: any = undefined) { const origItem = await this._itemFromUuid(itemUuid); - const nameItem = origItem.data.name; + const nameItem = origItem.name; const sourceData = (source ? source : duplicate(origItem)); const meta = this._getMystifiedMeta(sourceData); const keepOldIcon = this.keepOriginalImage(); @@ -451,13 +451,15 @@ export default class Identification { */ static async _getItemFromPack(packId, itemId) { const pack = >game.packs.get(packId); - if (pack.metadata.entity !== "Item") { + if (pack.documentName !== "Item") { return null; } return await pack.getDocument(itemId).then((ent) => { - //delete ent?.data._id; - if (ent?.data?._id) { - ent.data._id = ""; + //delete ent?._id; + //@ts-ignore + if (ent?._id) { + //@ts-ignore + ent._id = ""; } return ent; }); diff --git a/src/modules/ItemSheet.ts b/src/modules/ItemSheet.ts index 562e54f..c7a8d28 100644 --- a/src/modules/ItemSheet.ts +++ b/src/modules/ItemSheet.ts @@ -38,7 +38,7 @@ function getItemSheetClass(cls, sheet) { if (this.item.isMystified()) { title = "[" + i18n(`${CONSTANTS.MODULE_NAME}.Item.Mystified`) + "] " + `${title}`; } - if (this.item.data.isAbstract) { + if (this.item.isAbstract) { title = "[" + i18n(`${CONSTANTS.MODULE_NAME}.Item.Original`) + "] " + `${title}`; } return title; @@ -51,7 +51,7 @@ function getItemSheetClass(cls, sheet) { */ _getHeaderButtons() { const buttons = super._getHeaderButtons(); - const isAbstract = this.item.data.isAbstract || false; + const isAbstract = this.item.isAbstract || false; const removeLabelButtonsSheetHeader = ( game.settings.get(CONSTANTS.MODULE_NAME, "removeLabelButtonsSheetHeader") ); @@ -88,7 +88,7 @@ function getItemSheetClass(cls, sheet) { //@ts-ignore const entity = new CONFIG.Item.documentClass(origData, { editable: false }); //@ts-ignore - entity.data.isAbstract = true; + entity.isAbstract = true; const sheetTmp = entity.sheet; sheetTmp?.render(true); }, @@ -122,7 +122,7 @@ function getItemSheetClass(cls, sheet) { } async _updateObject(...args) { - if (this.item.data.isAbstract) { + if (this.item.isAbstract) { return this; } return super._updateObject(...args); diff --git a/src/modules/apps/DefaultIcons.ts b/src/modules/apps/DefaultIcons.ts index 5bce6af..1f751a2 100644 --- a/src/modules/apps/DefaultIcons.ts +++ b/src/modules/apps/DefaultIcons.ts @@ -4,7 +4,7 @@ import { i18n } from "../lib/lib"; export default class DefaultIcons extends FormApplication { static get defaultOptions(): any { const options = mergeObject(super.defaultOptions, { - id: "fui-default-icons", + id: "forien-unidentified-items-default-icons", template: `/modules/${CONSTANTS.MODULE_NAME}/templates/settings-default-icons.html`, title: i18n(`${CONSTANTS.MODULE_NAME}.Settings.defaultIcons.name`), submitOnClose: true, @@ -13,7 +13,7 @@ export default class DefaultIcons extends FormApplication { const button = $(event.currentTarget); const target = button.data("target"); - $(`#fui-default-icons input[name=${target}]`).trigger("change"); + $(`#forien-unidentified-items-default-icons input[name=${target}]`).trigger("change"); }); }); } diff --git a/src/modules/apps/ItemProperties.ts b/src/modules/apps/ItemProperties.ts index a2b4616..789ed94 100644 --- a/src/modules/apps/ItemProperties.ts +++ b/src/modules/apps/ItemProperties.ts @@ -3,7 +3,7 @@ import { i18n } from "../lib/lib"; export default class ItemProperties extends FormApplication { static get defaultOptions(): any { const options = mergeObject(super.defaultOptions, { - id: "fui-item-properties", + id: "forien-unidentified-items-item-properties", template: `/modules/${CONSTANTS.MODULE_NAME}/templates/settings-item-properties.html`, title: i18n(`${CONSTANTS.MODULE_NAME}.itemProperties.name`), submitOnClose: true, @@ -16,7 +16,7 @@ export default class ItemProperties extends FormApplication( - canvas.tokens?.placeables.find((token) => token.data._id === game.user?.character?.data?._id) + canvas.tokens?.placeables.find((token) => token.actor?.id === game.user?.character?.id) ); } // If no token is selected use the first owned token of the users character you found @@ -161,19 +161,19 @@ export function getFirstPlayerToken(): Token | null { } function getElevationToken(token: Token): number { - const base = token.document.data; + const base = token.document; return getElevationPlaceableObject(base); } function getElevationWall(wall: Wall): number { - const base = wall.document.data; + const base = wall.document; return getElevationPlaceableObject(base); } function getElevationPlaceableObject(placeableObject: any): number { let base = placeableObject; if (base.document) { - base = base.document.data; + base = base.document; } const base_elevation = //@ts-ignore diff --git a/src/styles/style.css b/src/styles/style.css index b336323..e566613 100644 --- a/src/styles/style.css +++ b/src/styles/style.css @@ -1,65 +1,65 @@ -#fui-default-icons.wfrp .window-content { +#forien-unidentified-items-default-icons.wfrp4e .window-content { background: url(/ui/parchment.jpg) repeat; } -#fui-default-icons .item-type-entry { +#forien-unidentified-items-default-icons .item-type-entry { display: flex; } -#fui-default-icons .item-type-entry > * { +#forien-unidentified-items-default-icons .item-type-entry > * { flex: 1; align-self: center; margin: 0 4px; } -#fui-default-icons .item-type-entry input { +#forien-unidentified-items-default-icons .item-type-entry input { flex: 2; height: 29px; min-width: 300px; font-size: 12px; } -#fui-default-icons .item-type-entry img { +#forien-unidentified-items-default-icons .item-type-entry img { width: 66px; height: 66px; flex: 0; margin: 0; } -#fui-default-icons .item-type-entry button { +#forien-unidentified-items-default-icons .item-type-entry button { flex: 0; margin: 0; } -#fui-item-properties.wfrp .window-content { +#forien-unidentified-items-item-properties.wfrp4e .window-content { background: url(/ui/parchment.jpg) repeat; } -#fui-item-properties form { +#forien-unidentified-items-item-properties form { height: 100%; display: grid; grid-template-rows: auto minmax(0, 1fr) auto; } -#fui-item-properties nav { +#forien-unidentified-items-item-properties nav { flex-wrap: wrap; } -#fui-item-properties nav a { +#forien-unidentified-items-item-properties nav a { flex: 0 0 25%; } -#fui-item-properties section { +#forien-unidentified-items-item-properties section { overflow: auto; padding: 6px; } -#fui-item-properties section .tab { +#forien-unidentified-items-item-properties section .tab { columns: 3; /** * Because PF2e... */ display: none; } -#fui-item-properties section .tab .type-property { +#forien-unidentified-items-item-properties section .tab .type-property { display: flex; align-items: center; } -#fui-item-properties section .tab * { +#forien-unidentified-items-item-properties section .tab * { break-inside: avoid-column; padding: 0; } -#fui-item-properties section .tab.tab.active { +#forien-unidentified-items-item-properties section .tab.tab.active { display: block; } diff --git a/src/styles/style.scss b/src/styles/style.scss index d77eddc..78e4fae 100644 --- a/src/styles/style.scss +++ b/src/styles/style.scss @@ -1,7 +1,7 @@ $icon-size: 66px; -#fui-default-icons { - &.wfrp { +#forien-unidentified-items-default-icons { + &.wfrp4e { .window-content { background: url(/ui/parchment.jpg) repeat; } @@ -37,8 +37,8 @@ $icon-size: 66px; } } -#fui-item-properties { - &.wfrp { +#forien-unidentified-items-item-properties { + &.wfrp4e { .window-content { background: url(/ui/parchment.jpg) repeat; } From a8a063486d041527bf75d42cba385b5daa7b05c2 Mon Sep 17 00:00:00 2001 From: p4535992 Date: Fri, 24 Mar 2023 21:08:45 +0100 Subject: [PATCH 04/12] u --- src/modules/ForienUnidentifiedItemsModels.ts | 16 +- src/modules/Identification.ts | 10 +- src/modules/ItemSheet.ts | 8 +- src/modules/settings.ts | 164 +++++++++---------- src/styles/style.css | 42 ++--- src/styles/style.scss | 10 +- 6 files changed, 128 insertions(+), 122 deletions(-) diff --git a/src/modules/ForienUnidentifiedItemsModels.ts b/src/modules/ForienUnidentifiedItemsModels.ts index 7677b75..50adf6c 100644 --- a/src/modules/ForienUnidentifiedItemsModels.ts +++ b/src/modules/ForienUnidentifiedItemsModels.ts @@ -1,11 +1,17 @@ -import type { ItemDataConstructorData } from "@league-of-foundry-developers/foundry-vtt-types/src/foundry/common/data/data.mjs/itemData"; +// import type { ItemDataConstructorData } from "@league-of-foundry-developers/foundry-vtt-types/src/foundry/common/data/data.mjs/itemData"; -export class MystifiedData implements ItemDataConstructorData { - img: string; +export class MystifiedData { // implements ItemDataConstructorData { + isAbstract?: boolean; + _id?: string | null | undefined; name: string; type: string; - data?: Object; - isAbstract?: boolean; + img?: string | null | undefined; + system?: any | null | undefined; + effects?: any | null | undefined; + folder?: any | null | undefined; + sort?: number | null | undefined; + permission?: any | null | undefined; + flags?: any; } export enum MystifiedFlags { diff --git a/src/modules/Identification.ts b/src/modules/Identification.ts index 9cc40ca..9ea6ee6 100644 --- a/src/modules/Identification.ts +++ b/src/modules/Identification.ts @@ -125,7 +125,7 @@ export default class Identification { }, }, { - id: "mystifyAsDialog", + id: "forien-unidentified-items-mystifyAsDialog", width: 440, height: "auto", } @@ -133,7 +133,7 @@ export default class Identification { await dialog.render(true); - $("#mystifyAsDialog").on("drop", ".dropzone", async (event) => { + $("#forien-unidentified-items-mystifyAsDialog").on("drop", ".dropzone", async (event) => { event.preventDefault(); let item; const data = JSON.parse(event.originalEvent?.dataTransfer?.getData("text/plain")); @@ -262,17 +262,17 @@ export default class Identification { }, }, { - id: "mystifyAdvancedDialog", + id: "forien-unidentified-items-mystifyAdvancedDialog", } ); await dialog.render(true); - const jqDialog = $("#mystifyAdvancedDialog"); + const jqDialog = $("#forien-unidentified-items-mystifyAdvancedDialog"); jqDialog.on("change", "input[name=img-keep]", async (event) => { const checked = $(event.currentTarget).prop("checked"); - const src = checked ? sourceData.img : meta.img; + const src = checked ? sourceData.img : meta.img; jqDialog.find(".img-preview").attr("src", src); jqDialog.find("input[name=img]").val(src); }); diff --git a/src/modules/ItemSheet.ts b/src/modules/ItemSheet.ts index c7a8d28..5c8ce8a 100644 --- a/src/modules/ItemSheet.ts +++ b/src/modules/ItemSheet.ts @@ -71,7 +71,7 @@ function getItemSheetClass(cls, sheet) { if (permissions.canIdentify && !isAbstract) { buttons.unshift({ label: removeLabelButtonsSheetHeader ? "" : `${CONSTANTS.MODULE_NAME}.Identify`, - class: "identify-item", + class: "forien-unidentified-items-identify-item", icon: "fas fa-search", onclick: (ev) => { Identification.identify(this.item); @@ -82,7 +82,7 @@ function getItemSheetClass(cls, sheet) { if (permissions.canPeek) { buttons.unshift({ label: removeLabelButtonsSheetHeader ? "" : `${CONSTANTS.MODULE_NAME}.Peek`, - class: "peek-original-item", + class: "forien-unidentified-items-peek-original-item", icon: "far fa-eye", onclick: (ev) => { //@ts-ignore @@ -99,7 +99,7 @@ function getItemSheetClass(cls, sheet) { if (this.item.isOwned) { buttons.unshift({ label: removeLabelButtonsSheetHeader ? "" : `${CONSTANTS.MODULE_NAME}.Mystify`, - class: "mystify-item", + class: "forien-unidentified-items-mystify-item", icon: "far fa-eye-slash", onclick: (ev) => { Identification.mystifyReplace(this.item.uuid); @@ -108,7 +108,7 @@ function getItemSheetClass(cls, sheet) { } else { buttons.unshift({ label: removeLabelButtonsSheetHeader ? "" : `${CONSTANTS.MODULE_NAME}.Mystify`, - class: "mystify-item", + class: "forien-unidentified-items-mystify-item", icon: "far fa-eye-slash", onclick: (ev) => { Identification.mystify(this.item.uuid); diff --git a/src/modules/settings.ts b/src/modules/settings.ts index e6f1283..dbef50e 100644 --- a/src/modules/settings.ts +++ b/src/modules/settings.ts @@ -154,11 +154,11 @@ async function applyDefaultSettings() { for (const [name, data] of Object.entries(settings)) { await game.settings.set(CONSTANTS.MODULE_NAME, name, data.default); } - const settings2 = otherSettings(true); - for (const [name, data] of Object.entries(settings2)) { - //@ts-ignore - await game.settings.set(CONSTANTS.MODULE_NAME, name, data.default); - } + // const settings2 = otherSettings(true); + // for (const [name, data] of Object.entries(settings2)) { + // //@ts-ignore + // await game.settings.set(CONSTANTS.MODULE_NAME, name, data.default); + // } } function defaultSettings(apply = false) { @@ -180,81 +180,81 @@ function defaultSettings(apply = false) { }; } -function otherSettings(apply = false) { - return { - removeLabelButtonsSheetHeader: { - name: i18n(`${CONSTANTS.MODULE_NAME}.Settings.removeLabelButtonsSheetHeader.name`), - hint: i18n(`${CONSTANTS.MODULE_NAME}.Settings.removeLabelButtonsSheetHeader.hint`), - scope: "world", - config: true, - type: Boolean, - default: true, - }, - - keepOldIcon: { - name: `${CONSTANTS.MODULE_NAME}.Settings.keepOldIcon.name`, - hint: `${CONSTANTS.MODULE_NAME}.Settings.keepOldIcon.hint`, - scope: "world", - config: true, - default: false, - type: Boolean, - }, - - allowNestedItems: { - name: `${CONSTANTS.MODULE_NAME}.Settings.allowNestedItems.Name`, - hint: `${CONSTANTS.MODULE_NAME}.Settings.allowNestedItems.Hint`, - scope: "world", - config: true, - default: false, - type: Boolean, - }, - - debug: { - name: `${CONSTANTS.MODULE_NAME}.Settings.debug.name`, - hint: `${CONSTANTS.MODULE_NAME}.Settings.debug.hint`, - scope: "client", - config: true, - default: false, - type: Boolean, - }, - - debugHooks: { - name: `${CONSTANTS.MODULE_NAME}.Settings.debugHooks.name`, - hint: `${CONSTANTS.MODULE_NAME}.Settings.debugHooks.hint`, - scope: "world", - config: false, - default: false, - type: Boolean, - }, - - systemFound: { - name: `${CONSTANTS.MODULE_NAME}.Settings.systemFound.name`, - hint: `${CONSTANTS.MODULE_NAME}.Settings.systemFound.hint`, - scope: "world", - config: false, - default: false, - type: Boolean, - }, - - systemNotFoundWarningShown: { - name: `${CONSTANTS.MODULE_NAME}.Settings.systemNotFoundWarningShown.name`, - hint: `${CONSTANTS.MODULE_NAME}.Settings.systemNotFoundWarningShown.hint`, - scope: "world", - config: false, - default: false, - type: Boolean, - }, - - preconfiguredSystem: { - name: `${CONSTANTS.MODULE_NAME}.Settings.preconfiguredSystem.name`, - hint: `${CONSTANTS.MODULE_NAME}.Settings.preconfiguredSystem.hint`, - scope: "world", - config: false, - default: false, - type: Boolean, - }, - }; -} +// function otherSettings(apply = false) { +// return { +// removeLabelButtonsSheetHeader: { +// name: i18n(`${CONSTANTS.MODULE_NAME}.Settings.removeLabelButtonsSheetHeader.name`), +// hint: i18n(`${CONSTANTS.MODULE_NAME}.Settings.removeLabelButtonsSheetHeader.hint`), +// scope: "world", +// config: true, +// type: Boolean, +// default: true, +// }, + +// keepOldIcon: { +// name: `${CONSTANTS.MODULE_NAME}.Settings.keepOldIcon.name`, +// hint: `${CONSTANTS.MODULE_NAME}.Settings.keepOldIcon.hint`, +// scope: "world", +// config: true, +// default: false, +// type: Boolean, +// }, + +// allowNestedItems: { +// name: `${CONSTANTS.MODULE_NAME}.Settings.allowNestedItems.Name`, +// hint: `${CONSTANTS.MODULE_NAME}.Settings.allowNestedItems.Hint`, +// scope: "world", +// config: true, +// default: false, +// type: Boolean, +// }, + +// debug: { +// name: `${CONSTANTS.MODULE_NAME}.Settings.debug.name`, +// hint: `${CONSTANTS.MODULE_NAME}.Settings.debug.hint`, +// scope: "client", +// config: true, +// default: false, +// type: Boolean, +// }, + +// debugHooks: { +// name: `${CONSTANTS.MODULE_NAME}.Settings.debugHooks.name`, +// hint: `${CONSTANTS.MODULE_NAME}.Settings.debugHooks.hint`, +// scope: "world", +// config: false, +// default: false, +// type: Boolean, +// }, + +// systemFound: { +// name: `${CONSTANTS.MODULE_NAME}.Settings.systemFound.name`, +// hint: `${CONSTANTS.MODULE_NAME}.Settings.systemFound.hint`, +// scope: "world", +// config: false, +// default: false, +// type: Boolean, +// }, + +// systemNotFoundWarningShown: { +// name: `${CONSTANTS.MODULE_NAME}.Settings.systemNotFoundWarningShown.name`, +// hint: `${CONSTANTS.MODULE_NAME}.Settings.systemNotFoundWarningShown.hint`, +// scope: "world", +// config: false, +// default: false, +// type: Boolean, +// }, + +// preconfiguredSystem: { +// name: `${CONSTANTS.MODULE_NAME}.Settings.preconfiguredSystem.name`, +// hint: `${CONSTANTS.MODULE_NAME}.Settings.preconfiguredSystem.hint`, +// scope: "world", +// config: false, +// default: false, +// type: Boolean, +// }, +// }; +// } export async function checkSystem() { if (!SYSTEMS.DATA) { @@ -331,7 +331,7 @@ function initializeDefaultIcons() { const di = new DefaultIcons({}, {}); let settings = di.getSettings(); const icons = duplicate(settings); - console.log(JSON.stringify(icons)); + log(JSON.stringify(icons)); Hooks.call(`${CONSTANTS.MODULE_NAME}:onInitializeDefaultIcons`, icons); settings = mergeObject(settings, icons); di.saveSettings(settings); @@ -369,7 +369,7 @@ function initializeItemProperties() { settings = mergeObject(settings, API.DEFAULT_PROPERTIES); const properties = duplicate(settings); Hooks.call(`${CONSTANTS.MODULE_NAME}:onInitializeItemProperties`, properties); - console.log(JSON.stringify(properties)); + log(JSON.stringify(properties)); settings = mergeObject(settings, properties); ip.saveSettings(settings); log(` Initialized default item properties.`); diff --git a/src/styles/style.css b/src/styles/style.css index e566613..8d23078 100644 --- a/src/styles/style.css +++ b/src/styles/style.css @@ -63,7 +63,7 @@ display: block; } -#mystifyAsDialog .dropzone { +#forien-unidentified-items-mystifyAsDialog .dropzone { min-height: 240px; margin-bottom: 4px; border: 2px dashed #33333366; @@ -74,7 +74,7 @@ display: flex; flex-direction: column; } -#mystifyAsDialog .dropzone p { +#forien-unidentified-items-mystifyAsDialog .dropzone p { text-align: center; position: relative; max-width: 80%; @@ -82,73 +82,73 @@ font-size: 1.6rem; color: #333333cc; } -#mystifyAsDialog .dropzone .item { +#forien-unidentified-items-mystifyAsDialog .dropzone .item { display: flex; } -#mystifyAsDialog .dropzone .item img { +#forien-unidentified-items-mystifyAsDialog .dropzone .item img { width: 66px; height: 66px; border-radius: 8px; border: 2px solid #000; } -#mystifyAsDialog .dropzone .item span { +#forien-unidentified-items-mystifyAsDialog .dropzone .item span { font-size: 1.2rem; align-self: center; padding: 8px; } -#mystifyAsDialog button[data-button="mystifyAdvanced"] { +#forien-unidentified-items-mystifyAsDialog button[data-button="mystifyAdvanced"] { flex-basis: 100%; margin: 0 0 2px 0; } -#mystifyAdvancedDialog { +#forien-unidentified-items-mystifyAdvancedDialog { min-width: 500px; max-height: 800px; } -#mystifyAdvancedDialog .window-content { +#forien-unidentified-items-mystifyAdvancedDialog .window-content { display: grid; grid-template-rows: minmax(0, 1fr) auto; } -#mystifyAdvancedDialog .advanced-body { +#forien-unidentified-items-mystifyAdvancedDialog .advanced-body { height: 100%; display: grid; grid-template-rows: auto auto auto auto minmax(0, 1fr); } -#mystifyAdvancedDialog .advanced-body .meta-header { +#forien-unidentified-items-mystifyAdvancedDialog .advanced-body .meta-header { display: flex; } -#mystifyAdvancedDialog .advanced-body .meta-header > * { +#forien-unidentified-items-mystifyAdvancedDialog .advanced-body .meta-header > * { flex: 1; text-align: center; font-weight: bold; } -#mystifyAdvancedDialog .advanced-body .meta-body > * { +#forien-unidentified-items-mystifyAdvancedDialog .advanced-body .meta-body > * { display: flex; } -#mystifyAdvancedDialog .advanced-body .meta-body > * > * { +#forien-unidentified-items-mystifyAdvancedDialog .advanced-body .meta-body > * > * { flex: 1; display: flex; flex-direction: column; justify-items: center; align-items: center; } -#mystifyAdvancedDialog .advanced-body .meta-name { +#forien-unidentified-items-mystifyAdvancedDialog .advanced-body .meta-name { margin-top: 10px; } -#mystifyAdvancedDialog .advanced-body img { +#forien-unidentified-items-mystifyAdvancedDialog .advanced-body img { width: 66px; height: 66px; } -#mystifyAdvancedDialog .advanced-body .properties-body { +#forien-unidentified-items-mystifyAdvancedDialog .advanced-body .properties-body { overflow-y: auto; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; grid-gap: 6px 10px; } -#mystifyAdvancedDialog .advanced-body .properties-body label { +#forien-unidentified-items-mystifyAdvancedDialog .advanced-body .properties-body label { font-weight: bold; } -#mystifyAdvancedDialog .advanced-body .properties-body .property-values { +#forien-unidentified-items-mystifyAdvancedDialog .advanced-body .properties-body .property-values { display: flex; flex-direction: column; font-style: italic; @@ -157,17 +157,17 @@ /*# sourceMappingURL=style.css.map */ -.identify-item .fa-search { +.forien-unidentified-items-identify-item .fa-search { color: DeepPink; text-shadow: 0 0 8px DeepPink; } -.peek-original-item .fa-eye { +.forien-unidentified-items-peek-original-item .fa-eye { color: Orchid; text-shadow: 0 0 8px Orchid; } -.mystify-item .fa-eye-slash { +.forien-unidentified-items-mystify-item .fa-eye-slash { color: RebeccaPurple; text-shadow: 0 0 8px RebeccaPurple; } diff --git a/src/styles/style.scss b/src/styles/style.scss index 78e4fae..fc713e5 100644 --- a/src/styles/style.scss +++ b/src/styles/style.scss @@ -88,7 +88,7 @@ $icon-size: 66px; } } -#mystifyAsDialog { +#forien-unidentified-items-mystifyAsDialog { .dropzone { min-height: 240px; margin-bottom: 4px; @@ -134,7 +134,7 @@ $icon-size: 66px; } } -#mystifyAdvancedDialog { +#forien-unidentified-items-mystifyAdvancedDialog { min-width: 500px; max-height: 800px; @@ -199,17 +199,17 @@ $icon-size: 66px; } } -.identify-item .fa-search { +.forien-unidentified-items-identify-item .fa-search { color: DeepPink; text-shadow: 0 0 8px DeepPink; } -.peek-original-item .fa-eye { +.forien-unidentified-items-peek-original-item .fa-eye { color: Orchid; text-shadow: 0 0 8px Orchid; } -.mystify-item .fa-eye-slash { +.forien-unidentified-items-mystify-item .fa-eye-slash { color: RebeccaPurple; text-shadow: 0 0 8px RebeccaPurple; } From 4834ce9fddf79a358eae0dcc0e0f3455c09325e8 Mon Sep 17 00:00:00 2001 From: p4535992 Date: Fri, 24 Mar 2023 21:24:46 +0100 Subject: [PATCH 05/12] added prettier --- .prettierrc.js | 3 ++ src/modules/ContextMenu.ts | 14 +++--- src/modules/ForienUnidentifiedItemsModels.ts | 5 +- src/modules/Identification.ts | 34 ++++++------- src/modules/Item.ts | 2 +- src/modules/ItemSheet.ts | 10 ++-- src/modules/api.ts | 2 +- src/modules/apps/DefaultIcons.ts | 4 +- src/modules/apps/ItemProperties.ts | 2 +- src/modules/constants.ts | 2 +- src/modules/lib/lib.ts | 4 +- src/modules/preloadTemplates.ts | 2 +- src/modules/settings.ts | 50 ++++++++++---------- src/modules/systems.ts | 4 +- src/modules/systems/dnd5e.ts | 16 +++---- src/modules/systems/generic.ts | 2 +- src/modules/systems/pf2e.ts | 16 +++---- src/modules/systems/sw5e.ts | 16 +++---- src/modules/systems/swade.ts | 12 ++--- src/modules/systems/wfrp4e.ts | 16 +++---- 20 files changed, 109 insertions(+), 107 deletions(-) diff --git a/.prettierrc.js b/.prettierrc.js index 3cf99ed..327a920 100644 --- a/.prettierrc.js +++ b/.prettierrc.js @@ -2,6 +2,9 @@ module.exports = { printWidth: 120, tabWidth: 4, useTabs: true, + trailingComma: "none", + semi: true, + bracketSpacing: true, overrides: [ { files: ["*.scss", "*.css"], diff --git a/src/modules/ContextMenu.ts b/src/modules/ContextMenu.ts index d17780a..f8fdc66 100644 --- a/src/modules/ContextMenu.ts +++ b/src/modules/ContextMenu.ts @@ -34,7 +34,7 @@ export default function registerContextMenuHook() { callback: (li) => { const id = li[0].dataset.documentId; Identification.mystify(`Item.${id}`); - }, + } }, { name: `${CONSTANTS.MODULE_NAME}.MystifyReplace`, @@ -43,7 +43,7 @@ export default function registerContextMenuHook() { callback: (li) => { const id = li[0].dataset.documentId; Identification.mystifyReplace(`Item.${id}`); - }, + } }, { name: `${CONSTANTS.MODULE_NAME}.MystifyAs`, @@ -52,7 +52,7 @@ export default function registerContextMenuHook() { callback: (li) => { const id = li[0].dataset.documentId; Identification.mystifyAsDialog(`Item.${id}`); - }, + } }, { name: `${CONSTANTS.MODULE_NAME}.MystifyAdvanced`, @@ -61,8 +61,8 @@ export default function registerContextMenuHook() { callback: (li) => { const id = li[0].dataset.documentId; Identification.mystifyAdvancedDialog(`Item.${id}`); - }, - }, + } + } ]; entryOptions.unshift(...mystifyOptions); @@ -75,7 +75,7 @@ export default function registerContextMenuHook() { const id = li[0].dataset.documentId; const item = game.items?.get(id); Identification.identify(item); - }, + } }); entryOptions.unshift({ @@ -91,7 +91,7 @@ export default function registerContextMenuHook() { const entity = new CONFIG.Item.documentClass(origData, { editable: false }); const sheet = entity.sheet; sheet?.render(true); - }, + } }); }); } diff --git a/src/modules/ForienUnidentifiedItemsModels.ts b/src/modules/ForienUnidentifiedItemsModels.ts index 50adf6c..70f5fe5 100644 --- a/src/modules/ForienUnidentifiedItemsModels.ts +++ b/src/modules/ForienUnidentifiedItemsModels.ts @@ -1,6 +1,7 @@ // import type { ItemDataConstructorData } from "@league-of-foundry-developers/foundry-vtt-types/src/foundry/common/data/data.mjs/itemData"; -export class MystifiedData { // implements ItemDataConstructorData { +export class MystifiedData { + // implements ItemDataConstructorData { isAbstract?: boolean; _id?: string | null | undefined; name: string; @@ -15,5 +16,5 @@ export class MystifiedData { // implements ItemDataConstructorData { } export enum MystifiedFlags { - ORIG_DATA = "origData", + ORIG_DATA = "origData" } diff --git a/src/modules/Identification.ts b/src/modules/Identification.ts index 9ea6ee6..133a2ff 100644 --- a/src/modules/Identification.ts +++ b/src/modules/Identification.ts @@ -87,11 +87,11 @@ export default class Identification { callback: (html) => { const source = $(html).find(".item").data("item"); this.mystifyAdvancedDialog(itemUuid, source); - }, + } }, cancel: { icon: '', - label: i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAs.Cancel`), + label: i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAs.Cancel`) }, mystifyReplace: { icon: '', @@ -99,15 +99,15 @@ export default class Identification { callback: (html) => { itemTmp = $(html).find(".item").data("item"); replace = true; - }, + } }, mystify: { icon: '', label: i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAs.Mystify`), callback: (html) => { itemTmp = $(html).find(".item").data("item"); - }, - }, + } + } }, default: "cancel", close: () => { @@ -122,12 +122,12 @@ export default class Identification { this.mystify(itemUuid, { replace: false, mystifiedData: itemTmp }); } } - }, + } }, { id: "forien-unidentified-items-mystifyAsDialog", width: 440, - height: "auto", + height: "auto" } ); @@ -188,8 +188,8 @@ export default class Identification { key: property, orig: getProperty(sourceData, `data.${property}`), default: getProperty(game.system?.model.Item[sourceData.type], property), - value: properties[property], - }, + value: properties[property] + } ]; }) ); @@ -199,7 +199,7 @@ export default class Identification { meta: meta, properties: properties, keepOldIcon: keepOldIcon, - selectedImg: selectedImg, + selectedImg: selectedImg }); let confirmed = false; @@ -211,7 +211,7 @@ export default class Identification { buttons: { cancel: { icon: '', - label: i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAdvanced.Cancel`), + label: i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAdvanced.Cancel`) }, mystifyReplace: { icon: '', @@ -219,15 +219,15 @@ export default class Identification { callback: (html) => { confirmed = true; replace = true; - }, + } }, mystify: { icon: '', label: i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAdvanced.Mystify`), callback: (html) => { confirmed = true; - }, - }, + } + } }, default: "cancel", close: (html: HTMLElement | JQuery) => { @@ -259,10 +259,10 @@ export default class Identification { } else { this.mystify(itemUuid, { replace: false, mystifiedData: formData }); } - }, + } }, { - id: "forien-unidentified-items-mystifyAdvancedDialog", + id: "forien-unidentified-items-mystifyAdvancedDialog" } ); await dialog.render(true); @@ -414,7 +414,7 @@ export default class Identification { return { name: i18n(`${CONSTANTS.MODULE_NAME}.NewMystified`), type: origData.type, - img: iconType, + img: iconType }; } diff --git a/src/modules/Item.ts b/src/modules/Item.ts index c928ee8..beebb7b 100644 --- a/src/modules/Item.ts +++ b/src/modules/Item.ts @@ -10,6 +10,6 @@ export default function registerItemClassMethod() { Object.defineProperty(CONFIG.Item.documentClass.prototype, MystifiedFlags.ORIG_DATA, { get: function origData() { return Identification.getOrigData(this); - }, + } }); } diff --git a/src/modules/ItemSheet.ts b/src/modules/ItemSheet.ts index 5c8ce8a..3304f56 100644 --- a/src/modules/ItemSheet.ts +++ b/src/modules/ItemSheet.ts @@ -59,7 +59,7 @@ function getItemSheetClass(cls, sheet) { let permissions = { canIdentify: game.user?.isGM, canPeek: game.user?.isGM, - canMystify: game.user?.isGM, + canMystify: game.user?.isGM }; const hookPermissions = duplicate(permissions); Hooks.call(`${CONSTANTS.MODULE_NAME}:getItemPermissions`, this.item, hookPermissions); @@ -75,7 +75,7 @@ function getItemSheetClass(cls, sheet) { icon: "fas fa-search", onclick: (ev) => { Identification.identify(this.item); - }, + } }); } @@ -91,7 +91,7 @@ function getItemSheetClass(cls, sheet) { entity.isAbstract = true; const sheetTmp = entity.sheet; sheetTmp?.render(true); - }, + } }); } } else { @@ -103,7 +103,7 @@ function getItemSheetClass(cls, sheet) { icon: "far fa-eye-slash", onclick: (ev) => { Identification.mystifyReplace(this.item.uuid); - }, + } }); } else { buttons.unshift({ @@ -112,7 +112,7 @@ function getItemSheetClass(cls, sheet) { icon: "far fa-eye-slash", onclick: (ev) => { Identification.mystify(this.item.uuid); - }, + } }); } } diff --git a/src/modules/api.ts b/src/modules/api.ts index 221934c..183e071 100644 --- a/src/modules/api.ts +++ b/src/modules/api.ts @@ -13,7 +13,7 @@ const API = { */ get DEFAULT_ICONS(): DefaultIcons { return game.settings.get(CONSTANTS.MODULE_NAME, "defaultIcons"); - }, + } }; export default API; diff --git a/src/modules/apps/DefaultIcons.ts b/src/modules/apps/DefaultIcons.ts index 1f751a2..03978ef 100644 --- a/src/modules/apps/DefaultIcons.ts +++ b/src/modules/apps/DefaultIcons.ts @@ -9,7 +9,7 @@ export default class DefaultIcons extends FormApplication( - canvas.tokens?.placeables.find((token) => token.actor?.id === game.user?.character?.id) - ); + token = canvas.tokens?.placeables.find((token) => token.actor?.id === game.user?.character?.id); } // If no token is selected use the first owned token of the users character you found if (!token) { diff --git a/src/modules/preloadTemplates.ts b/src/modules/preloadTemplates.ts index b8a6ff7..85f2db8 100644 --- a/src/modules/preloadTemplates.ts +++ b/src/modules/preloadTemplates.ts @@ -5,7 +5,7 @@ export const preloadTemplates = async function () { // Add paths to "modules/VariantEncumbrance/templates" `/modules/${CONSTANTS.MODULE_NAME}/templates/mystify-advanced.html`, `/modules/${CONSTANTS.MODULE_NAME}/templates/settings-default-icons.html`, - `/modules/${CONSTANTS.MODULE_NAME}/templates/settings-item-properties.html`, + `/modules/${CONSTANTS.MODULE_NAME}/templates/settings-item-properties.html` // `/modules/${CONSTANTS.MODULE_NAME}/templates/welcome-screen.html`, ]; return loadTemplates(templatePaths); diff --git a/src/modules/settings.ts b/src/modules/settings.ts index dbef50e..8521b5e 100644 --- a/src/modules/settings.ts +++ b/src/modules/settings.ts @@ -11,7 +11,7 @@ export default function registerSettings() { hint: `${CONSTANTS.MODULE_NAME}.Settings.reset.hint`, icon: "fas fa-coins", type: ResetSettingsDialog, - restricted: true, + restricted: true }); // ===================================================================== @@ -23,7 +23,7 @@ export default function registerSettings() { hint: `${CONSTANTS.MODULE_NAME}.Settings.defaultIcons.hint`, icon: "fas fa-image", type: DefaultIcons, - restricted: true, + restricted: true }); game.settings.registerMenu(CONSTANTS.MODULE_NAME, "itemProperties", { @@ -32,7 +32,7 @@ export default function registerSettings() { hint: `${CONSTANTS.MODULE_NAME}.Settings.itemProperties.hint`, icon: "fas fa-cogs", type: ItemProperties, - restricted: true, + restricted: true }); game.settings.register(CONSTANTS.MODULE_NAME, "removeLabelButtonsSheetHeader", { @@ -41,7 +41,7 @@ export default function registerSettings() { scope: "world", config: true, type: Boolean, - default: true, + default: true }); game.settings.register(CONSTANTS.MODULE_NAME, "keepOldIcon", { @@ -50,7 +50,7 @@ export default function registerSettings() { scope: "world", config: true, default: false, - type: Boolean, + type: Boolean }); game.settings.register(CONSTANTS.MODULE_NAME, "allowNestedItems", { @@ -59,7 +59,7 @@ export default function registerSettings() { scope: "world", config: true, default: false, - type: Boolean, + type: Boolean }); // ===================================================================== @@ -70,28 +70,28 @@ export default function registerSettings() { scope: "client", config: true, default: false, - type: Boolean, + type: Boolean }); game.settings.register(CONSTANTS.MODULE_NAME, "debugHooks", { scope: "world", config: false, default: false, - type: Boolean, + type: Boolean }); game.settings.register(CONSTANTS.MODULE_NAME, "systemFound", { scope: "world", config: false, default: false, - type: Boolean, + type: Boolean }); game.settings.register(CONSTANTS.MODULE_NAME, "systemNotFoundWarningShown", { scope: "world", config: false, default: false, - type: Boolean, + type: Boolean }); game.settings.register(CONSTANTS.MODULE_NAME, "preconfiguredSystem", { @@ -100,7 +100,7 @@ export default function registerSettings() { scope: "world", config: false, default: false, - type: Boolean, + type: Boolean }); // ======================================================================== @@ -133,14 +133,14 @@ class ResetSettingsDialog extends FormApplication { await applyDefaultSettings(); window.location.reload(); - }, + } }, cancel: { icon: '', - label: game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.resetsettings.cancel`), - }, + label: game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.resetsettings.cancel`) + } }, - default: "cancel", + default: "cancel" }); } @@ -168,15 +168,15 @@ function defaultSettings(apply = false) { hint: `${CONSTANTS.MODULE_NAME}.Settings.defaultIcons.hint`, scope: "world", config: false, - default: {}, + default: {} }, itemProperties: { name: `${CONSTANTS.MODULE_NAME}.Settings.itemProperties.name`, hint: `${CONSTANTS.MODULE_NAME}.Settings.itemProperties.hint`, scope: "world", config: false, - default: {}, - }, + default: {} + } }; } @@ -267,7 +267,7 @@ export async function checkSystem() { content: dialogWarning(game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.nosystemfound.content`)), callback: () => { // empty body just for avoid the error on eslint - }, + } }); } @@ -285,14 +285,14 @@ export async function checkSystem() { label: game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.systemfound.confirm`), callback: () => { applyDefaultSettings(); - }, + } }, cancel: { icon: '', - label: game.i18n.localize("No"), - }, + label: game.i18n.localize("No") + } }, - default: "cancel", + default: "cancel" }).render(true); } @@ -337,7 +337,7 @@ function initializeDefaultIcons() { di.saveSettings(settings); log(`Initialized default item icons.`); ui.notifications?.info(game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Notifications.defaultIconsInitialized`), { - permanent: true, + permanent: true }); } @@ -374,6 +374,6 @@ function initializeItemProperties() { ip.saveSettings(settings); log(` Initialized default item properties.`); ui.notifications?.info(i18n(`${CONSTANTS.MODULE_NAME}.Notifications.defaultPropertiesInitialized`), { - permanent: true, + permanent: true }); } diff --git a/src/modules/systems.ts b/src/modules/systems.ts index 05bdbd6..b1fecc8 100644 --- a/src/modules/systems.ts +++ b/src/modules/systems.ts @@ -21,8 +21,8 @@ export const SYSTEMS = { swade, sw5e, wfrp4e, - generic, + generic // ↑ ADD SYSTEMS HERE ↑ }?.[game.system.id]; - }, + } }; diff --git a/src/modules/systems/dnd5e.ts b/src/modules/systems/dnd5e.ts index e8f76ec..46c1ef7 100644 --- a/src/modules/systems/dnd5e.ts +++ b/src/modules/systems/dnd5e.ts @@ -4,34 +4,34 @@ export default { weight: true, quantity: true, weaponType: true, - equipped: true, + equipped: true }, equipment: { weight: true, quantity: true, "armor.type": true, - equipped: true, + equipped: true }, consumable: { weight: true, quantity: true, equipped: true, - consumableType: true, + consumableType: true }, tool: { weight: true, quantity: true, - equipped: true, + equipped: true }, loot: { weight: true, quantity: true, - equipped: true, + equipped: true }, backpack: { weight: true, quantity: true, - equipped: true, - }, - }, + equipped: true + } + } }; diff --git a/src/modules/systems/generic.ts b/src/modules/systems/generic.ts index 48049dd..3afeec9 100644 --- a/src/modules/systems/generic.ts +++ b/src/modules/systems/generic.ts @@ -1,3 +1,3 @@ export default { - DEFAULT_PROPERTIES: {}, + DEFAULT_PROPERTIES: {} }; diff --git a/src/modules/systems/pf2e.ts b/src/modules/systems/pf2e.ts index e495439..4b25a54 100644 --- a/src/modules/systems/pf2e.ts +++ b/src/modules/systems/pf2e.ts @@ -3,30 +3,30 @@ export default { weapon: { "bulkCapacity.value": true, "quantity.value": true, - "weaponType.value": true, + "weaponType.value": true }, melee: { "bulkCapacity.value": true, - "quantity.value": true, + "quantity.value": true }, armor: { "armorType.value": true, "bulkCapacity.value": true, - "quantity.value": true, + "quantity.value": true }, equipment: { "bulkCapacity.value": true, - "quantity.value": true, + "quantity.value": true }, consumable: { "bulkCapacity.value": true, "consumableType.value": true, "quantity.value": true, - "uses.value": true, + "uses.value": true }, treasure: { "bulkCapacity.value": true, - "quantity.value": true, - }, - }, + "quantity.value": true + } + } }; diff --git a/src/modules/systems/sw5e.ts b/src/modules/systems/sw5e.ts index e8f76ec..46c1ef7 100644 --- a/src/modules/systems/sw5e.ts +++ b/src/modules/systems/sw5e.ts @@ -4,34 +4,34 @@ export default { weight: true, quantity: true, weaponType: true, - equipped: true, + equipped: true }, equipment: { weight: true, quantity: true, "armor.type": true, - equipped: true, + equipped: true }, consumable: { weight: true, quantity: true, equipped: true, - consumableType: true, + consumableType: true }, tool: { weight: true, quantity: true, - equipped: true, + equipped: true }, loot: { weight: true, quantity: true, - equipped: true, + equipped: true }, backpack: { weight: true, quantity: true, - equipped: true, - }, - }, + equipped: true + } + } }; diff --git a/src/modules/systems/swade.ts b/src/modules/systems/swade.ts index 9a33caa..56c738e 100644 --- a/src/modules/systems/swade.ts +++ b/src/modules/systems/swade.ts @@ -5,7 +5,7 @@ export default { weight: true, equippable: true, equipped: true, - minStr: true, + minStr: true }, armor: { quantity: true, @@ -16,7 +16,7 @@ export default { "locations.head": true, "locations.torso": true, "locations.arms": true, - "locations.legs": true, + "locations.legs": true }, shield: { quantity: true, @@ -24,13 +24,13 @@ export default { equippable: true, equipped: true, minStr: true, - cover: true, + cover: true }, gear: { quantity: true, weight: true, equippable: true, - equipped: true, - }, - }, + equipped: true + } + } }; diff --git a/src/modules/systems/wfrp4e.ts b/src/modules/systems/wfrp4e.ts index 83be9b1..e5207d6 100644 --- a/src/modules/systems/wfrp4e.ts +++ b/src/modules/systems/wfrp4e.ts @@ -4,30 +4,30 @@ export default { "encumbrance.value": true, "quantity.value": true, "gmdescription.value": true, - "ammunitionType.value": true, + "ammunitionType.value": true }, armour: { "encumbrance.value": true, "quantity.value": true, "gmdescription.value": true, "location.value": true, - "armorType.value": true, + "armorType.value": true }, container: { "encumbrance.value": true, "quantity.value": true, - "gmdescription.value": true, + "gmdescription.value": true }, money: { "encumbrance.value": true, "quantity.value": true, - "gmdescription.value": true, + "gmdescription.value": true }, trapping: { "encumbrance.value": true, "quantity.value": true, "gmdescription.value": true, - "trappingType.value": true, + "trappingType.value": true }, weapon: { "encumbrance.value": true, @@ -36,7 +36,7 @@ export default { "twohanded.value": true, "ammunitionGroup.value": true, "weaponGroup.value": true, - "reach.value": true, - }, - }, + "reach.value": true + } + } }; From d165e9939ddbe488afe1623f93d53cffe929e5fa Mon Sep 17 00:00:00 2001 From: p4535992 Date: Fri, 24 Mar 2023 21:27:25 +0100 Subject: [PATCH 06/12] version 0.6.1 --- changelog.md | 30 +++++++++++++++--------------- package.json | 2 +- src/module.json | 12 ++++++------ 3 files changed, 22 insertions(+), 22 deletions(-) diff --git a/changelog.md b/changelog.md index 380f8c0..cf16d30 100644 --- a/changelog.md +++ b/changelog.md @@ -1,25 +1,25 @@ # Changelog -## v0.5.4 +### v0.5.4 - New design pattern for multissytem integration -## v0.4.2 +### v0.4.2 - Update typescript to 9 - Abbandoned support for 0.8.9 - Apply new design pattern to the project -## v0.4.1 +### v0.4.1 - Add gulp-replace on the build process, for replace all the `getGame()` in `game` and `getCanvas()` in `canvas`, so the javascript in similar to the vanilla javascript used from other developer - Update typescript library -## v0.4.0 +### v0.4.0 - Merge 0.3.18 - Add some bug fixing for FoundryVTT 9 - Update manifest.json for FOundryVTT 9 -## v0.3.18 +### v0.3.18 - Add colors to symbol link for more flavor - Add settings to remove label on the header button by default for a better management of little monitor and mobile [Option to disable the buttons label](https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items/issues/14) @@ -27,15 +27,15 @@ - Little bug fix fix - Add myself to the authors ? not sure why i was removed when my pr it was accepted -## v0.3.1-v0.3.17 +### v0.3.1-v0.3.17 - Test and final deploy -## v0.3.0 +### v0.3.0 - Initial patch 0.8.8 - Integration with eslint and prettier - Integrated workflow github from mclemente fork -## v0.2.3 +### v0.2.3 * Added Setting to keep original icon while mystifying * Added way to use "Mystify As…" along with "Mystify (advanced)…" @@ -43,7 +43,7 @@ * Added prompt to install new Welcome Screen * Tested and bumped compatible core version to 0.7.0 -## v0.2.2 +### v0.2.2 * Added support for identifying nested items. * Added optional setting that allows for creating nested mystified items. @@ -51,11 +51,11 @@ * Added API calls for `isMystified`, `isUuidMystified` and `getOrigData` * Added `isMystified()` and `origData` fields in Item class. -## v0.2.1 +### v0.2.1 * Added default settings for persisting item properties for Swade system thanks to SalieriC -## v0.2.0 +### v0.2.0 * Added 9 more icons and 10 inverted variants * Added "Replace with Mystified" context option. For Owned Items this is default behaviour. @@ -70,7 +70,7 @@ * Updated Portuguese (Brazil) translation thanks to Innocenti * Updated Korean translation thanks to KLO -## v0.1.5 +### v0.1.5 * Added Korean language thanks to KLO * Added Portuguese (Brazil) language thanks to rinnocenti @@ -78,14 +78,14 @@ * This is not "replace with mystified" option. this will come in future update. -## v0.1.4 +### v0.1.4 * Added await to async functions to remove bug with VTTA Iconizer -## v0.1.3 +### v0.1.3 * Attempt to fix broken render Hook of extended class in FireFox 75+ -## v0.1.2 +### v0.1.2 * Initial release diff --git a/package.json b/package.json index 41ebfce..139feb8 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "forien-unidentified-items", "description": "Provides system agnostic solution to handle unidentified items and their identification.", - "version": "0.6.0", + "version": "0.6.1", "main": "init.js", "scripts": { "publish": "gulp publish --update", diff --git a/src/module.json b/src/module.json index 70d3d4c..c471591 100644 --- a/src/module.json +++ b/src/module.json @@ -2,7 +2,7 @@ "id": "forien-unidentified-items", "title": "Forien's Unidentified Items", "description": "Provides system agnostic solution to handle unidentified items and their identification.", - "version": "0.6.0", + "version": "0.6.1", "authors": [ { "name": "Forien", @@ -13,12 +13,12 @@ "url": "https://www.patreon.com/mclemente" }, { - "name": "League-of-Foundry-Developers", - "url": "https://github.com/League-of-Foundry-Developers", + "name": "p4535992", + "url": "https://github.com/p4535992", "discord": "", "twitter": "", "patreon": "", - "github": "League-of-Foundry-Developers", + "github": "p4535992", "ko-fi": "", "reddit": "", "email": "" @@ -97,8 +97,8 @@ "url": "https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items", "manifest": "https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items/releases/latest/download/module.json", "download": "https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items/releases/latest/download/module.zip", - "readme": "https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items/blob/v0.6.0/README.md", - "changelog": "https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items/blob/v0.6.0/CHANGELOG.md", + "readme": "https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items/blob/v0.6.1/README.md", + "changelog": "https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items/blob/v0.6.1/CHANGELOG.md", "bugs": "https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items/issues", "allowBugReporter": true, "relationships": { From 418b1b80fca35ba2218cc666c17589be0e1b740f Mon Sep 17 00:00:00 2001 From: p4535992 Date: Fri, 24 Mar 2023 22:25:33 +0100 Subject: [PATCH 07/12] rename some classes for avoid confusion with standard types --- src/init.ts | 6 +- src/modules/ContextMenu.ts | 4 +- ... ForienUnidentifiedItemsIdentification.ts} | 198 +++++++++++------- ...Item.ts => ForienUnidentifiedItemsItem.ts} | 2 +- ...ts => ForienUnidentifiedItemsItemSheet.ts} | 2 +- src/modules/ForienUnidentifiedItemsModels.ts | 3 - src/modules/api.ts | 88 ++++++++ 7 files changed, 218 insertions(+), 85 deletions(-) rename src/modules/{Identification.ts => ForienUnidentifiedItemsIdentification.ts} (68%) rename src/modules/{Item.ts => ForienUnidentifiedItemsItem.ts} (85%) rename src/modules/{ItemSheet.ts => ForienUnidentifiedItemsItemSheet.ts} (98%) diff --git a/src/init.ts b/src/init.ts index 962d262..bf9abb8 100644 --- a/src/init.ts +++ b/src/init.ts @@ -12,11 +12,11 @@ // Import JavaScript modules // Import TypeScript modules -import registerDerivedItemSheetClass from "./modules/ItemSheet"; +import registerDerivedItemSheetClass from "./modules/ForienUnidentifiedItemsItemSheet"; import registerContextMenuHook from "./modules/ContextMenu"; -import Identification from "./modules/Identification"; +import Identification from "./modules/ForienUnidentifiedItemsIdentification"; import registerSettings, { checkSettingsInitialized } from "./modules/settings"; -import registerItemClassMethod from "./modules/Item"; +import registerItemClassMethod from "./modules/ForienUnidentifiedItemsItem"; import CONSTANTS from "./modules/constants"; import API from "./modules/api"; diff --git a/src/modules/ContextMenu.ts b/src/modules/ContextMenu.ts index f8fdc66..2bb8c77 100644 --- a/src/modules/ContextMenu.ts +++ b/src/modules/ContextMenu.ts @@ -1,6 +1,6 @@ import CONSTANTS from "./constants"; import { MystifiedData, MystifiedFlags } from "./ForienUnidentifiedItemsModels"; -import Identification from "./Identification"; +import Identification from "./ForienUnidentifiedItemsIdentification"; export default function registerContextMenuHook() { Hooks.on("getItemDirectoryEntryContext", (html, entryOptions) => { @@ -73,7 +73,7 @@ export default function registerContextMenuHook() { condition: identifyCondition, callback: (li) => { const id = li[0].dataset.documentId; - const item = game.items?.get(id); + const item = game.items?.get(id); Identification.identify(item); } }); diff --git a/src/modules/Identification.ts b/src/modules/ForienUnidentifiedItemsIdentification.ts similarity index 68% rename from src/modules/Identification.ts rename to src/modules/ForienUnidentifiedItemsIdentification.ts index 133a2ff..9eaf321 100644 --- a/src/modules/Identification.ts +++ b/src/modules/ForienUnidentifiedItemsIdentification.ts @@ -1,8 +1,7 @@ -import type { ItemData } from "@league-of-foundry-developers/foundry-vtt-types/src/foundry/common/data/module.mjs"; import type DefaultIcons from "./apps/DefaultIcons"; import CONSTANTS from "./constants"; import { MystifiedData, MystifiedFlags } from "./ForienUnidentifiedItemsModels"; -import { i18n, i18nFormat } from "./lib/lib"; +import { error, i18n, i18nFormat, warn } from "./lib/lib"; export default class Identification { /** @@ -12,17 +11,24 @@ export default class Identification { * @param {string} itemUuid * @param {Object} options * @param {boolean} options.replace - set true to replace provided item with mystified one - * @param {undefined|Object} options.mystifiedData - item data object that should become front of mystified item + * @param {MystifiedData|undefined} options.mystifiedData - item data object that should become front of mystified item * @returns {Promise} */ - static async mystify(itemUuid: string, options: any = { replace: false, mystifiedData: undefined }) { + static async mystify( + itemUuid: string, + options: { replace: boolean; mystifiedData: MystifiedData | undefined } = { + replace: false, + mystifiedData: undefined + } + ): Promise { if (!game.user?.isGM) { + error(`Only a GM can mistify a item`, true); return; } const item = await this._itemFromUuid(itemUuid); if (!item) { - ui.notifications?.error(`${CONSTANTS.MODULE_NAME}.NotAnItem`, {}); + error(`${CONSTANTS.MODULE_NAME}.NotAnItem`, true); return; } @@ -46,6 +52,7 @@ export default class Identification { } await mystifiedItem.setFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA, origData); + return mystifiedItem; } /** @@ -53,8 +60,8 @@ export default class Identification { * @param {string} itemUuid * @returns {Promise} */ - static async mystifyReplace(itemUuid) { - await this.mystify(itemUuid, { replace: true, mystifiedData: undefined }); + static async mystifyReplace(itemUuid: string): Promise { + return await this.mystify(itemUuid, { replace: true, mystifiedData: undefined }); } /** @@ -62,7 +69,7 @@ export default class Identification { * @param {string} itemUuid * @returns {Promise} */ - static async mystifyAsDialog(itemUuid) { + static async mystifyAsDialog(itemUuid: string): Promise { const origItem: any = await this._itemFromUuid(itemUuid); const nameItem = origItem.name; @@ -73,13 +80,13 @@ export default class Identification { { title: i18nFormat(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAs.Title`, { nameItem }), content: `

${i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAs.Header`)}

-
-

${i18nFormat(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAs.DropZone`, { nameItem })}

- -
`, +
+

${i18nFormat(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAs.DropZone`, { nameItem })}

+ +
`, buttons: { mystifyAdvanced: { icon: '', @@ -138,9 +145,12 @@ export default class Identification { let item; const data = JSON.parse(event.originalEvent?.dataTransfer?.getData("text/plain")); if (data.type === "Item") { - if (data.pack) { - item = await this._getItemFromPack(data.pack, data.id); - item = duplicate(item); + if (data.uuid) { + const witem = await this._uuidToDocument(data.uuid); + item = duplicate(witem); + // } else if (data.pack) { + // const witem = await this._getItemFromPack(data.pack, data.id); + // item = duplicate(witem); } else if (data) { item = data; } else { @@ -167,13 +177,13 @@ export default class Identification { /** * * @param {string} itemUuid - * @param {object} source + * @param {Item|undefined} source * @returns {Promise} */ - static async mystifyAdvancedDialog(itemUuid, source: any = undefined) { + static async mystifyAdvancedDialog(itemUuid: string, source: Item | undefined = undefined) { const origItem = await this._itemFromUuid(itemUuid); const nameItem = origItem.name; - const sourceData = (source ? source : duplicate(origItem)); + const sourceData = (source ? source : duplicate(origItem)); const meta = this._getMystifiedMeta(sourceData); const keepOldIcon = this.keepOriginalImage(); @@ -245,7 +255,11 @@ export default class Identification { ); for (const property of Object.keys(formData)) { - if (property.startsWith("data.")) { + // if (property.startsWith("data.")) { + // delete formData[property]; + // setProperty(formData, property, getProperty(sourceData, property)); + // } + if (property.startsWith("system.")) { delete formData[property]; setProperty(formData, property, getProperty(sourceData, property)); } @@ -255,9 +269,10 @@ export default class Identification { //if (replace) options.replace = true; //this.mystify(itemUuid, options); if (replace) { - this.mystify(itemUuid, { replace: true, mystifiedData: formData }); + this.mystify(itemUuid, { replace: true, mystifiedData: formData }); + this.mystify(itemUuid, { replace: true, mystifiedData: formData }); } else { - this.mystify(itemUuid, { replace: false, mystifiedData: formData }); + this.mystify(itemUuid, { replace: false, mystifiedData: formData }); } } }, @@ -278,11 +293,11 @@ export default class Identification { }); jqDialog.on("change", "input[name=name-keep]", async (event) => { - const checked = $(event.currentTarget).prop("checked"); + const checked = $(event.currentTarget).prop("checked"); const nameChanged = checked ? sourceData.name : meta.name; - jqDialog.find(".name-preview").text(nameChanged); - jqDialog.find("input[name=name]").val(nameChanged); + jqDialog.find(".name-preview").text(nameChanged ?? ""); + jqDialog.find("input[name=name]").val(nameChanged ?? ""); }); } @@ -291,10 +306,14 @@ export default class Identification { * @hook 'forien-unidentified-items:onIdentifyItem' * * @param {Item} item - * @returns {Promise} + * @returns {Promise} */ - static async identify(item) { - const origData = item.getFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); + static async identify(item: Item): Promise { + if (!item) { + warn(`Cannot mistify no item`, true); + return; + } + const origData = item.getFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); // things to keep from mystified item: delete origData._id; delete origData.permission; @@ -308,6 +327,7 @@ export default class Identification { const origDataOrigData = getProperty(origData.flags, `${CONSTANTS.MODULE_NAME}.origData`); await item.setFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA, origDataOrigData); } + return item; } /** @@ -315,9 +335,8 @@ export default class Identification { * @param {Item} item * @return {boolean} */ - static isMystified(item) { + static isMystified(item: Item): boolean { const origData = item.getFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); - return origData !== undefined; } @@ -326,8 +345,8 @@ export default class Identification { * @param {Item} item * @return {Object} */ - static getOrigData(item) { - return item.getFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); + static getOrigData(item: Item): MystifiedData { + return item.getFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); } /** @@ -335,13 +354,13 @@ export default class Identification { * @param {string} uuid * @return {boolean} */ - static async isUuidMystified(uuid) { + static async isUuidMystified(uuid: string) { const item = await this._itemFromUuid(uuid); if (!item) { + warn(`No item found for uuid '${uuid}'`, true); return false; } const origData = item.getFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); - return origData !== undefined; } @@ -356,9 +375,19 @@ export default class Identification { const itemProperties = this._getDefaultProperties(origData); for (const property of itemProperties) { - const propertyTmp = "data." + property; - const valueTmp = getProperty(origData, propertyTmp); - setProperty(mystifiedData, propertyTmp, valueTmp); + // const propertyTmp = "data." + property; + // const valueTmp = getProperty(origData, propertyTmp); + // setProperty(mystifiedData, propertyTmp, valueTmp); + if (property) { + let propertyTmp: string | undefined = undefined; + if (property.startsWith("system.")) { + propertyTmp = property; + } else { + propertyTmp = "system." + property; + } + const valueTmp = getProperty(origData, propertyTmp); + setProperty(mystifiedData, propertyTmp, valueTmp); + } } if (this.keepOriginalImage()) { @@ -391,7 +420,6 @@ export default class Identification { */ static _getTypeProperties(origData) { const defaultProperties = game.settings.get(CONSTANTS.MODULE_NAME, "itemProperties"); - return defaultProperties[origData.type]; } @@ -421,47 +449,67 @@ export default class Identification { /** * * @param {string} uuid - * @returns {Promise} + * @returns {Promise} * @private */ - static async _itemFromUuid(uuid: string): Promise { - const parts = uuid.split("."); - const [entityName, entityId, embeddedName, embeddedId] = parts; - - if (embeddedName === "OwnedItem" || embeddedName === "Item") { - if (parts.length === 4) { - const actor = game.actors?.get(entityId); - if (actor === null) return null; + static async _itemFromUuid(uuid: string): Promise { + return this._uuidToDocument(uuid); + // const parts = uuid.split("."); + // const [entityName, entityId, embeddedName, embeddedId] = parts; + + // if (embeddedName === "OwnedItem" || embeddedName === "Item") { + // if (parts.length === 4) { + // const actor = game.actors?.get(entityId); + // if (!actor) { + // return undefined; + // } + // return actor.items.get(embeddedId); + // } + // } else { + // return await fromUuid(uuid); + // } + // return; + } - return actor.items.get(embeddedId); + // /** + // * + // * @param {string} packId + // * @param {string} itemId + // * @return {Promise.} + // * @deprecated do not use this anymore + // * @private + // */ + // static async _getItemFromPack(packId:string, itemId:string) { + // const pack = >game.packs.get(packId); + // if (pack.documentName !== "Item") { + // return null; + // } + // return await pack.getDocument(itemId).then((ent) => { + // //delete ent?._id; + // //@ts-ignore + // if (ent?._id) { + // //@ts-ignore + // ent._id = ""; + // } + // return ent; + // }); + // } + + static async _uuidToDocument(uuid) { + const parts = uuid.split("."); + let result: any | null = null; + if (parts[0] === "Compendium") { + const pack = game["packs"].get(parts[1] + "." + parts[2]); + if (pack !== undefined) { + result = await pack.getDocument(parts[3]); } } else { - return await fromUuid(uuid); + result = await fromUuid(uuid); } - - return null; - } - - /** - * - * @param {string} packId - * @param {string} itemId - * @return {Promise.} - * @private - */ - static async _getItemFromPack(packId, itemId) { - const pack = >game.packs.get(packId); - if (pack.documentName !== "Item") { - return null; + if (result === null) { + error(`Document Not Found for uuid ${uuid}`); + result = null; } - return await pack.getDocument(itemId).then((ent) => { - //delete ent?._id; - //@ts-ignore - if (ent?._id) { - //@ts-ignore - ent._id = ""; - } - return ent; - }); + return result; } } diff --git a/src/modules/Item.ts b/src/modules/ForienUnidentifiedItemsItem.ts similarity index 85% rename from src/modules/Item.ts rename to src/modules/ForienUnidentifiedItemsItem.ts index beebb7b..8ef006b 100644 --- a/src/modules/Item.ts +++ b/src/modules/ForienUnidentifiedItemsItem.ts @@ -1,5 +1,5 @@ import { MystifiedFlags } from "./ForienUnidentifiedItemsModels"; -import Identification from "./Identification"; +import Identification from "./ForienUnidentifiedItemsIdentification"; export default function registerItemClassMethod() { //@ts-ignore diff --git a/src/modules/ItemSheet.ts b/src/modules/ForienUnidentifiedItemsItemSheet.ts similarity index 98% rename from src/modules/ItemSheet.ts rename to src/modules/ForienUnidentifiedItemsItemSheet.ts index 3304f56..275ee3a 100644 --- a/src/modules/ItemSheet.ts +++ b/src/modules/ForienUnidentifiedItemsItemSheet.ts @@ -1,6 +1,6 @@ import CONSTANTS from "./constants"; import { MystifiedData, MystifiedFlags } from "./ForienUnidentifiedItemsModels"; -import Identification from "./Identification"; +import Identification from "./ForienUnidentifiedItemsIdentification"; import { i18n } from "./lib/lib"; export default function registerDerivedItemSheetClass() { diff --git a/src/modules/ForienUnidentifiedItemsModels.ts b/src/modules/ForienUnidentifiedItemsModels.ts index 70f5fe5..362670c 100644 --- a/src/modules/ForienUnidentifiedItemsModels.ts +++ b/src/modules/ForienUnidentifiedItemsModels.ts @@ -1,7 +1,4 @@ -// import type { ItemDataConstructorData } from "@league-of-foundry-developers/foundry-vtt-types/src/foundry/common/data/data.mjs/itemData"; - export class MystifiedData { - // implements ItemDataConstructorData { isAbstract?: boolean; _id?: string | null | undefined; name: string; diff --git a/src/modules/api.ts b/src/modules/api.ts index 183e071..d194eeb 100644 --- a/src/modules/api.ts +++ b/src/modules/api.ts @@ -1,5 +1,7 @@ import type DefaultIcons from "./apps/DefaultIcons"; import CONSTANTS from "./constants"; +import type { MystifiedData } from "./ForienUnidentifiedItemsModels"; +import Identification from "./ForienUnidentifiedItemsIdentification"; const API = { get DEFAULT_PROPERTIES(): any { @@ -13,6 +15,92 @@ const API = { */ get DEFAULT_ICONS(): DefaultIcons { return game.settings.get(CONSTANTS.MODULE_NAME, "defaultIcons"); + }, + + /** + * + * @hook 'forien-unidentified-items:onMystifyItem' + * + * @param {string} itemUuid + * @param {Object} options + * @param {boolean} options.replace - set true to replace provided item with mystified one + * @param {MystifiedData|undefined} options.mystifiedData - item data object that should become front of mystified item + * @returns {Promise} + */ + async mystify( + itemUuid: string, + options: { replace: boolean; mystifiedData: MystifiedData | undefined } = { + replace: false, + mystifiedData: undefined + } + ): Promise { + return await Identification.mystify(itemUuid, options); + }, + + /** + * + * @param {string} itemUuid + * @returns {Promise} + */ + async mystifyReplace(itemUuid: string): Promise { + return await Identification.mystifyReplace(itemUuid); + }, + + /** + * + * @param {string} itemUuid + * @returns {Promise} + */ + async mystifyAsDialog(itemUuid: string): Promise { + await Identification.mystifyAsDialog(itemUuid); + }, + + /** + * + * @param {string} itemUuid + * @param {object} source + * @returns {Promise} + */ + async mystifyAdvancedDialog(itemUuid: string, source: any = undefined): Promise { + await Identification.mystifyAdvancedDialog(itemUuid, source); + }, + + /** + * + * @hook 'forien-unidentified-items:onIdentifyItem' + * + * @param {Item} item + * @returns {Promise} + */ + async identify(item: Item): Promise { + return await Identification.identify(item); + }, + + /** + * + * @param {Item} item + * @return {boolean} + */ + isMystified(item: Item): boolean { + return Identification.isMystified(item); + }, + + /** + * + * @param {Item} item + * @return {MystifiedData} + */ + getOrigData(item: Item): MystifiedData { + return Identification.getOrigData(item); + }, + + /** + * + * @param {string} uuid + * @return {boolean} + */ + async isUuidMystified(uuid): Promise { + return await Identification.isUuidMystified(uuid); } }; From c7a97a2e356d383659ca73f982a37fb1b251adce Mon Sep 17 00:00:00 2001 From: p4535992 Date: Fri, 24 Mar 2023 23:17:28 +0100 Subject: [PATCH 08/12] do some test..seem all right... --- changelog.md | 6 + src/init.ts | 3 +- src/lang/de.json | 4 +- src/lang/en.json | 4 +- src/lang/es.json | 4 +- src/lang/fr.json | 4 +- src/lang/ja.json | 4 +- src/lang/ko.json | 4 +- src/lang/pl.json | 4 +- src/modules/ContextMenu.ts | 12 +- .../ForienUnidentifiedItemsIdentification.ts | 112 ++++++++++++------ src/modules/ForienUnidentifiedItemsItem.ts | 6 +- .../ForienUnidentifiedItemsItemSheet.ts | 8 +- src/modules/lib/lib.ts | 4 +- src/modules/settings.ts | 17 +-- 15 files changed, 119 insertions(+), 77 deletions(-) diff --git a/changelog.md b/changelog.md index cf16d30..a850241 100644 --- a/changelog.md +++ b/changelog.md @@ -1,5 +1,11 @@ # Changelog +### v0.6.1 [BREAKING CHANGES] + +- Add official support for fvtt10 +- Transfer the API from _window.ForienIdentification_ to _game.modules.get("forien-unidentified-items").api_ +- Major refactor of the code for better readibility + ### v0.5.4 - New design pattern for multissytem integration diff --git a/src/init.ts b/src/init.ts index bf9abb8..9f401b2 100644 --- a/src/init.ts +++ b/src/init.ts @@ -14,7 +14,6 @@ // Import TypeScript modules import registerDerivedItemSheetClass from "./modules/ForienUnidentifiedItemsItemSheet"; import registerContextMenuHook from "./modules/ContextMenu"; -import Identification from "./modules/ForienUnidentifiedItemsIdentification"; import registerSettings, { checkSettingsInitialized } from "./modules/settings"; import registerItemClassMethod from "./modules/ForienUnidentifiedItemsItem"; import CONSTANTS from "./modules/constants"; @@ -38,7 +37,7 @@ Hooks.once("init", () => { Hooks.once("setup", () => { //@ts-ignore - window.ForienIdentification = Identification; + // window.ForienIdentification = Identification; Hooks.callAll(`${CONSTANTS.MODULE_NAME}:afterSetup`); diff --git a/src/lang/de.json b/src/lang/de.json index a371bd1..45a594c 100644 --- a/src/lang/de.json +++ b/src/lang/de.json @@ -87,8 +87,8 @@ }, "Notifications": { - "defaultIconsInitialized": "Forien's Unidentified Items | Voreingestellte Symbole für Gegenstände wurden zufällig zugewiesen. Weitere Informationen findest Du in den Moduleinstellungen.", - "defaultPropertiesInitialized": "Forien's Unidentified Items | Voreinstellungen für übernommene Eigenschaften wurden erstellt. Weitere Informationen findest Du in den Moduleinstellungen." + "defaultIconsInitialized": "Voreingestellte Symbole für Gegenstände wurden zufällig zugewiesen. Weitere Informationen findest Du in den Moduleinstellungen.", + "defaultPropertiesInitialized": "Voreinstellungen für übernommene Eigenschaften wurden erstellt. Weitere Informationen findest Du in den Moduleinstellungen." } } } diff --git a/src/lang/en.json b/src/lang/en.json index 7b95e74..7d164ec 100644 --- a/src/lang/en.json +++ b/src/lang/en.json @@ -87,8 +87,8 @@ }, "Notifications": { - "defaultIconsInitialized": "Forien's Unidentified Items | Default Item Type Icons has been randomly assigned. Please visit Module Settings for more information.", - "defaultPropertiesInitialized": "Forien's Unidentified Items | Default Persisting Item Properties have been generated. Please visit Module Settings for more information." + "defaultIconsInitialized": "Default Item Type Icons has been randomly assigned. Please visit Module Settings for more information.", + "defaultPropertiesInitialized": "Default Persisting Item Properties have been generated. Please visit Module Settings for more information." } } } diff --git a/src/lang/es.json b/src/lang/es.json index 89bb8ef..4c8104a 100644 --- a/src/lang/es.json +++ b/src/lang/es.json @@ -58,8 +58,8 @@ }, "Notifications": { - "defaultIconsInitialized": "Forien's Unidentified Items | Los Íconos por Defecto según el Tipo de Objeto han sido asignados de forma aleatoria. Favor ingresar a la Configuración del Módulo para más información.", - "defaultPropertiesInitialized": "Forien's Unidentified Items | Las Propiedades Persistentes por Defecto de los Objectos fueron generados. Favor ingresar a la Configuración del Módulo para más información." + "defaultIconsInitialized": "Los Íconos por Defecto según el Tipo de Objeto han sido asignados de forma aleatoria. Favor ingresar a la Configuración del Módulo para más información.", + "defaultPropertiesInitialized": "Las Propiedades Persistentes por Defecto de los Objectos fueron generados. Favor ingresar a la Configuración del Módulo para más información." } } } diff --git a/src/lang/fr.json b/src/lang/fr.json index 3df4a64..57a9a4f 100644 --- a/src/lang/fr.json +++ b/src/lang/fr.json @@ -58,8 +58,8 @@ }, "Notifications": { - "defaultIconsInitialized": "Forien's Unidentified Items | Les icônes des types d'objets par défaut ont été attribuées de manière aléatoire. Pour plus d'informations, veuillez consulter la page Paramètres des modules.", - "defaultPropertiesInitialized": "Forien's Unidentified Items | Les propriétés persistantes par défaut des objets ont été générées. Pour plus d'informations, veuillez consulter la page Paramètres des modules." + "defaultIconsInitialized": "Les icônes des types d'objets par défaut ont été attribuées de manière aléatoire. Pour plus d'informations, veuillez consulter la page Paramètres des modules.", + "defaultPropertiesInitialized": "Les propriétés persistantes par défaut des objets ont été générées. Pour plus d'informations, veuillez consulter la page Paramètres des modules." } } } diff --git a/src/lang/ja.json b/src/lang/ja.json index 1560984..00d6b6f 100644 --- a/src/lang/ja.json +++ b/src/lang/ja.json @@ -58,8 +58,8 @@ }, "Notifications": { - "defaultIconsInitialized": "Forien's Unidentified Items | アイテムタイプごとのデフォルトアイコンがランダムに割り当てられました。詳しくはモジュール設定を確認してください。", - "defaultPropertiesInitialized": "Forien's Unidentified Items | デフォルトの“継続されるプロパティ”が生成されました。詳しくはモジュール設定を確認してください。" + "defaultIconsInitialized": "アイテムタイプごとのデフォルトアイコンがランダムに割り当てられました。詳しくはモジュール設定を確認してください。", + "defaultPropertiesInitialized": "デフォルトの“継続されるプロパティ”が生成されました。詳しくはモジュール設定を確認してください。" } } } diff --git a/src/lang/ko.json b/src/lang/ko.json index 754d4ba..dba2b55 100644 --- a/src/lang/ko.json +++ b/src/lang/ko.json @@ -58,8 +58,8 @@ }, "Notifications": { - "defaultIconsInitialized": "Forien's Unidentified Items | 기본 아이템 유형 아이콘이 무작위로 할당되었습니다. 자세한 내용은 모듈 설정을 참조해주세요.", - "defaultPropertiesInitialized": "Forien's Unidentified Items | 기본 지속적 항목 속성이 생성되었습니다. 자세한 내용은 모듈 설정을 참조해주세요." + "defaultIconsInitialized": "기본 아이템 유형 아이콘이 무작위로 할당되었습니다. 자세한 내용은 모듈 설정을 참조해주세요.", + "defaultPropertiesInitialized": "기본 지속적 항목 속성이 생성되었습니다. 자세한 내용은 모듈 설정을 참조해주세요." } } } diff --git a/src/lang/pl.json b/src/lang/pl.json index 9972953..0d42e74 100644 --- a/src/lang/pl.json +++ b/src/lang/pl.json @@ -54,8 +54,8 @@ "Original": "Oryginał" }, "Notifications": { - "defaultIconsInitialized": "Forien's Unidentified Items | Domyślne Ikony Typów Przedmiotów zostały losowo przydzielone. Proszę odwiedź Ustawienia Modułu po więcje informacji.", - "defaultPropertiesInitialized": "Forien's Unidentified Items | Domyślne Trwałe Właściwości Przedmiotów zostały wygenerowane. Proszę odwiedź Ustawienia Modułu po więcje informacji." + "defaultIconsInitialized": "Domyślne Ikony Typów Przedmiotów zostały losowo przydzielone. Proszę odwiedź Ustawienia Modułu po więcje informacji.", + "defaultPropertiesInitialized": "Domyślne Trwałe Właściwości Przedmiotów zostały wygenerowane. Proszę odwiedź Ustawienia Modułu po więcje informacji." } } } diff --git a/src/modules/ContextMenu.ts b/src/modules/ContextMenu.ts index 2bb8c77..9513564 100644 --- a/src/modules/ContextMenu.ts +++ b/src/modules/ContextMenu.ts @@ -1,6 +1,6 @@ +import API from "./api"; import CONSTANTS from "./constants"; import { MystifiedData, MystifiedFlags } from "./ForienUnidentifiedItemsModels"; -import Identification from "./ForienUnidentifiedItemsIdentification"; export default function registerContextMenuHook() { Hooks.on("getItemDirectoryEntryContext", (html, entryOptions) => { @@ -33,7 +33,7 @@ export default function registerContextMenuHook() { condition: mystifyCondition, callback: (li) => { const id = li[0].dataset.documentId; - Identification.mystify(`Item.${id}`); + API.mystify(`Item.${id}`); } }, { @@ -42,7 +42,7 @@ export default function registerContextMenuHook() { condition: mystifyCondition, callback: (li) => { const id = li[0].dataset.documentId; - Identification.mystifyReplace(`Item.${id}`); + API.mystifyReplace(`Item.${id}`); } }, { @@ -51,7 +51,7 @@ export default function registerContextMenuHook() { condition: mystifyCondition, callback: (li) => { const id = li[0].dataset.documentId; - Identification.mystifyAsDialog(`Item.${id}`); + API.mystifyAsDialog(`Item.${id}`); } }, { @@ -60,7 +60,7 @@ export default function registerContextMenuHook() { condition: mystifyCondition, callback: (li) => { const id = li[0].dataset.documentId; - Identification.mystifyAdvancedDialog(`Item.${id}`); + API.mystifyAdvancedDialog(`Item.${id}`); } } ]; @@ -74,7 +74,7 @@ export default function registerContextMenuHook() { callback: (li) => { const id = li[0].dataset.documentId; const item = game.items?.get(id); - Identification.identify(item); + API.identify(item); } }); diff --git a/src/modules/ForienUnidentifiedItemsIdentification.ts b/src/modules/ForienUnidentifiedItemsIdentification.ts index 9eaf321..35d4368 100644 --- a/src/modules/ForienUnidentifiedItemsIdentification.ts +++ b/src/modules/ForienUnidentifiedItemsIdentification.ts @@ -25,10 +25,13 @@ export default class Identification { error(`Only a GM can mistify a item`, true); return; } + if (!itemUuid) { + warn(`Cannot mystify a no item`, true); + return; + } const item = await this._itemFromUuid(itemUuid); - if (!item) { - error(`${CONSTANTS.MODULE_NAME}.NotAnItem`, true); + warn(`Cannot mystify a no item from uuid '${itemUuid}'`, true); return; } @@ -70,9 +73,17 @@ export default class Identification { * @returns {Promise} */ static async mystifyAsDialog(itemUuid: string): Promise { + if (!itemUuid) { + warn(`Cannot mystify advanced a no item`, true); + return; + } const origItem: any = await this._itemFromUuid(itemUuid); - const nameItem = origItem.name; + if (!origItem) { + warn(`Cannot mystify advanced a no item from uuid '${itemUuid}'`, true); + return; + } + const nameItem = origItem.name; let itemTmp; let replace; @@ -129,6 +140,43 @@ export default class Identification { this.mystify(itemUuid, { replace: false, mystifiedData: itemTmp }); } } + }, + render: (html) => { + $(html) + .on("dragover", false) + .on("drop", ".dropzone", async (event) => { + event.preventDefault(); + event.stopPropagation(); + let item; + const data = JSON.parse(event.originalEvent?.dataTransfer?.getData("text/plain")); + if (data.type === "Item") { + if (data.uuid) { + const witem = await this._uuidToDocument(data.uuid); + item = duplicate(witem); + // } else if (data.pack) { + // const witem = await this._getItemFromPack(data.pack, data.id); + // item = duplicate(witem); + } else if (data) { + item = data; + } else { + const witem = game.items?.get(data.id); + if (!witem) { + return; + } + item = duplicate(witem); + } + if (item) { + $(event.currentTarget).find(".item").data("item", item); + $(event.currentTarget) + .find(".item") + .slideUp(200, () => { + $(event.currentTarget).find(".item img").attr("src", item.img); + $(event.currentTarget).find(".item span").text(item.name); + $(event.currentTarget).find(".item").slideDown(); + }); + } + } + }); } }, { @@ -139,39 +187,6 @@ export default class Identification { ); await dialog.render(true); - - $("#forien-unidentified-items-mystifyAsDialog").on("drop", ".dropzone", async (event) => { - event.preventDefault(); - let item; - const data = JSON.parse(event.originalEvent?.dataTransfer?.getData("text/plain")); - if (data.type === "Item") { - if (data.uuid) { - const witem = await this._uuidToDocument(data.uuid); - item = duplicate(witem); - // } else if (data.pack) { - // const witem = await this._getItemFromPack(data.pack, data.id); - // item = duplicate(witem); - } else if (data) { - item = data; - } else { - const witem = game.items?.get(data.id); - if (!witem) { - return; - } - item = duplicate(witem); - } - if (item) { - $(event.currentTarget).find(".item").data("item", item); - $(event.currentTarget) - .find(".item") - .slideUp(200, () => { - $(event.currentTarget).find(".item img").attr("src", item.img); - $(event.currentTarget).find(".item span").text(item.name); - $(event.currentTarget).find(".item").slideDown(); - }); - } - } - }); } /** @@ -181,7 +196,16 @@ export default class Identification { * @returns {Promise} */ static async mystifyAdvancedDialog(itemUuid: string, source: Item | undefined = undefined) { + if (!itemUuid) { + warn(`Cannot mystify advanced a no item`, true); + return; + } const origItem = await this._itemFromUuid(itemUuid); + if (!origItem) { + warn(`Cannot mystify advanced a no item from uuid '${itemUuid}'`, true); + return; + } + const nameItem = origItem.name; const sourceData = (source ? source : duplicate(origItem)); const meta = this._getMystifiedMeta(sourceData); @@ -310,10 +334,14 @@ export default class Identification { */ static async identify(item: Item): Promise { if (!item) { - warn(`Cannot mistify no item`, true); + warn(`Cannot identify a no item`, true); return; } const origData = item.getFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); + if (!origData) { + warn(`Cannot identify a no mistify item`, true); + return; + } // things to keep from mystified item: delete origData._id; delete origData.permission; @@ -336,6 +364,9 @@ export default class Identification { * @return {boolean} */ static isMystified(item: Item): boolean { + if (!item) { + return false; + } const origData = item.getFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); return origData !== undefined; } @@ -355,6 +386,9 @@ export default class Identification { * @return {boolean} */ static async isUuidMystified(uuid: string) { + if (!uuid) { + return false; + } const item = await this._itemFromUuid(uuid); if (!item) { warn(`No item found for uuid '${uuid}'`, true); @@ -366,11 +400,11 @@ export default class Identification { /** * - * @param {Object} origData + * @param {MystifiedData} origData * @returns {{img: String, name: String, type: String, data: Object}} * @private */ - static _getMystifiedData(origData): MystifiedData { + static _getMystifiedData(origData: MystifiedData): MystifiedData { const mystifiedData = this._getMystifiedMeta(origData); const itemProperties = this._getDefaultProperties(origData); diff --git a/src/modules/ForienUnidentifiedItemsItem.ts b/src/modules/ForienUnidentifiedItemsItem.ts index 8ef006b..99a29b0 100644 --- a/src/modules/ForienUnidentifiedItemsItem.ts +++ b/src/modules/ForienUnidentifiedItemsItem.ts @@ -1,15 +1,15 @@ +import API from "./api"; import { MystifiedFlags } from "./ForienUnidentifiedItemsModels"; -import Identification from "./ForienUnidentifiedItemsIdentification"; export default function registerItemClassMethod() { //@ts-ignore CONFIG.Item.documentClass.prototype.isMystified = function isMystified() { - return Identification.isMystified(this); + return API.isMystified(this); }; Object.defineProperty(CONFIG.Item.documentClass.prototype, MystifiedFlags.ORIG_DATA, { get: function origData() { - return Identification.getOrigData(this); + return API.getOrigData(this); } }); } diff --git a/src/modules/ForienUnidentifiedItemsItemSheet.ts b/src/modules/ForienUnidentifiedItemsItemSheet.ts index 275ee3a..7d8df3a 100644 --- a/src/modules/ForienUnidentifiedItemsItemSheet.ts +++ b/src/modules/ForienUnidentifiedItemsItemSheet.ts @@ -1,6 +1,6 @@ +import API from "./api"; import CONSTANTS from "./constants"; import { MystifiedData, MystifiedFlags } from "./ForienUnidentifiedItemsModels"; -import Identification from "./ForienUnidentifiedItemsIdentification"; import { i18n } from "./lib/lib"; export default function registerDerivedItemSheetClass() { @@ -74,7 +74,7 @@ function getItemSheetClass(cls, sheet) { class: "forien-unidentified-items-identify-item", icon: "fas fa-search", onclick: (ev) => { - Identification.identify(this.item); + API.identify(this.item); } }); } @@ -102,7 +102,7 @@ function getItemSheetClass(cls, sheet) { class: "forien-unidentified-items-mystify-item", icon: "far fa-eye-slash", onclick: (ev) => { - Identification.mystifyReplace(this.item.uuid); + API.mystifyReplace(this.item.uuid); } }); } else { @@ -111,7 +111,7 @@ function getItemSheetClass(cls, sheet) { class: "forien-unidentified-items-mystify-item", icon: "far fa-eye-slash", onclick: (ev) => { - Identification.mystify(this.item.uuid); + API.mystify(this.item.uuid); } }); } diff --git a/src/modules/lib/lib.ts b/src/modules/lib/lib.ts index 8c50b0f..adba1cb 100644 --- a/src/modules/lib/lib.ts +++ b/src/modules/lib/lib.ts @@ -35,9 +35,9 @@ export function notify(message) { return message; } -export function info(info, notify = false) { +export function info(info, notify = false, permanent = false) { info = `${CONSTANTS.MODULE_NAME} | ${info}`; - if (notify) ui.notifications?.info(info); + if (notify) ui.notifications?.info(info, { permanent: permanent }); console.log(info.replace("
", "\n")); return info; } diff --git a/src/modules/settings.ts b/src/modules/settings.ts index 8521b5e..8b285cb 100644 --- a/src/modules/settings.ts +++ b/src/modules/settings.ts @@ -2,7 +2,7 @@ import API from "./api"; import DefaultIcons from "./apps/DefaultIcons"; import ItemProperties from "./apps/ItemProperties"; import CONSTANTS from "./constants"; -import { dialogWarning, i18n, log, warn } from "./lib/lib"; +import { dialogWarning, i18n, info, log, warn } from "./lib/lib"; import { SYSTEMS } from "./systems"; export default function registerSettings() { @@ -132,6 +132,13 @@ class ResetSettingsDialog extends FormApplication { await applyDefaultSettings(); + const worldSettings = game.settings.storage + ?.get("world") + ?.filter((setting) => setting.key.startsWith(`${CONSTANTS.MODULE_NAME}.`)); + for (let setting of worldSettings) { + console.log(`Reset setting '${setting.key}'`); + await setting.delete(); + } window.location.reload(); } }, @@ -336,9 +343,7 @@ function initializeDefaultIcons() { settings = mergeObject(settings, icons); di.saveSettings(settings); log(`Initialized default item icons.`); - ui.notifications?.info(game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Notifications.defaultIconsInitialized`), { - permanent: true - }); + info(game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Notifications.defaultIconsInitialized`), true, true); } /** @@ -373,7 +378,5 @@ function initializeItemProperties() { settings = mergeObject(settings, properties); ip.saveSettings(settings); log(` Initialized default item properties.`); - ui.notifications?.info(i18n(`${CONSTANTS.MODULE_NAME}.Notifications.defaultPropertiesInitialized`), { - permanent: true - }); + info(i18n(`${CONSTANTS.MODULE_NAME}.Notifications.defaultPropertiesInitialized`), true, true); } From 35a717bc45528a93661d3ec6813de739c3c9ae17 Mon Sep 17 00:00:00 2001 From: p4535992 Date: Fri, 24 Mar 2023 23:44:42 +0100 Subject: [PATCH 09/12] ready to pr --- README.md | 19 +++-- .../ForienUnidentifiedItemsIdentification.ts | 2 +- src/modules/apps/ItemProperties.ts | 2 +- src/modules/settings.ts | 78 +------------------ src/styles/style.css | 3 + src/styles/style.scss | 3 + 6 files changed, 18 insertions(+), 89 deletions(-) diff --git a/README.md b/README.md index e680862..1238cdc 100644 --- a/README.md +++ b/README.md @@ -140,11 +140,10 @@ Item that went through, or is about to go through "mystification". All data of O # API This page is meant for **System** and **Module** developers that wish to integrate their systems & modules with **Unidentified Items**, although some information here might be useful for people wanting to write **Macros** as well. -## `ForienIdentification` -This is the only public class exposed by this module. +This is the only public class exposed by this module: -### async `mystify(itemUuid, options = {replace: false, mystifiedData: undefined})` +### `async game.modules.get("forien-unidentified-items").api.mystify(itemUuid, options = {replace: false, mystifiedData: undefined})` * `itemUuid` – `string` – UUID of Original Item to be mystified * `options` – `Object` – object of options * `options.replace` – `boolean` – `true` means, Original Item should be replaced with Mystified one @@ -152,43 +151,43 @@ This is the only public class exposed by this module. This method handles the Mystification proccess. Fires the `forien-unidentified-items:onMystifyItem` Hook right before mystifying. -### async `mystifyReplace(itemUuid)` +### `async game.modules.get("forien-unidentified-items").api.mystifyReplace(itemUuid)` * `itemUuid` – `string` – UUID of Original Item to be mystified Alias for `mystify(itemUuid, {replace: true})`. -### async `mystifyAsDialog(itemUuid)` +### `async game.modules.get("forien-unidentified-items").api.mystifyAsDialog(itemUuid)` * `itemUuid` – `string` – UUID of Original Item to be mystified Opens "Mystify As…" Dialog. Callbacks for buttons fire the `mystify()` method with respective settings. -### async `mystifyAdvancedDialog(itemUuid) ` +### `async game.modules.get("forien-unidentified-items").api.mystifyAdvancedDialog(itemUuid) ` * `itemUuid` – `string` – UUID of Original Item to be mystified Opens "Mystify (advanced)…" Dialog. Callbacks for buttons fire the `mystify()` method with respective settings. -### async `identify(item)` +### `async game.modules.get("forien-unidentified-items").api.identify(item)` * `item` – `Item` – instance of Item class to be identified If item has `OrigData` flag, this method will replace Mystified Item with OrigData. Fires the `forien-unidentified-items:onIdentifyItem` hook. If Hook returns `false`, it will not proceed with full identification. -### `isMystified(item)` +### `game.modules.get("forien-unidentified-items").api.isMystified(item)` * `item` – `Item` – instance of Item class Returns Boolean. `True` if item is mystified (has Original Data), `false` otherwise. -### async `isUuidMystified(itemUuid)` +### `async game.modules.get("forien-unidentified-items").api.isUuidMystified(itemUuid)` * `itemUuid` – `string` – UUID of Original Item to be mystified Returns Boolean. `True` if item is mystified (has Original Data), `false` otherwise. -### `getOrigData(item)` +### `game.modules.get("forien-unidentified-items").api.getOrigData(item)` * `item` – `Item` – instance of Item class Returns Object of item's Original Data, or undefined if it isn't mystified. diff --git a/src/modules/ForienUnidentifiedItemsIdentification.ts b/src/modules/ForienUnidentifiedItemsIdentification.ts index 35d4368..91d947a 100644 --- a/src/modules/ForienUnidentifiedItemsIdentification.ts +++ b/src/modules/ForienUnidentifiedItemsIdentification.ts @@ -343,7 +343,7 @@ export default class Identification { return; } // things to keep from mystified item: - delete origData._id; + // delete origData._id; delete origData.permission; delete origData.folder; diff --git a/src/modules/apps/ItemProperties.ts b/src/modules/apps/ItemProperties.ts index 3ad4698..ed4e874 100644 --- a/src/modules/apps/ItemProperties.ts +++ b/src/modules/apps/ItemProperties.ts @@ -5,7 +5,7 @@ export default class ItemProperties extends FormApplication', label: game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.resetsettings.confirm`), callback: async () => { - await applyDefaultSettings(); const worldSettings = game.settings.storage ?.get("world") ?.filter((setting) => setting.key.startsWith(`${CONSTANTS.MODULE_NAME}.`)); @@ -139,6 +138,7 @@ class ResetSettingsDialog extends FormApplication Date: Fri, 24 Mar 2023 23:50:54 +0100 Subject: [PATCH 10/12] add some additional check --- .../ForienUnidentifiedItemsIdentification.ts | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/src/modules/ForienUnidentifiedItemsIdentification.ts b/src/modules/ForienUnidentifiedItemsIdentification.ts index 91d947a..15401e7 100644 --- a/src/modules/ForienUnidentifiedItemsIdentification.ts +++ b/src/modules/ForienUnidentifiedItemsIdentification.ts @@ -1,7 +1,7 @@ import type DefaultIcons from "./apps/DefaultIcons"; import CONSTANTS from "./constants"; import { MystifiedData, MystifiedFlags } from "./ForienUnidentifiedItemsModels"; -import { error, i18n, i18nFormat, warn } from "./lib/lib"; +import { error, i18n, i18nFormat, info, warn } from "./lib/lib"; export default class Identification { /** @@ -283,9 +283,13 @@ export default class Identification { // delete formData[property]; // setProperty(formData, property, getProperty(sourceData, property)); // } - if (property.startsWith("system.")) { - delete formData[property]; - setProperty(formData, property, getProperty(sourceData, property)); + if(property) { + if (property.startsWith("system.")) { + delete formData[property]; + setProperty(formData, property, getProperty(sourceData, property)); + } else { + warn(`Cannot set the property '${property}' maybe is a issue ?`); + } } } @@ -421,6 +425,8 @@ export default class Identification { } const valueTmp = getProperty(origData, propertyTmp); setProperty(mystifiedData, propertyTmp, valueTmp); + } else { + warn(`Cannot set the property '${property}' maybe is a issue ?`); } } From db0b1b815a61dfe867fcabef48dca19b23610832 Mon Sep 17 00:00:00 2001 From: p4535992 Date: Wed, 29 Mar 2023 22:01:43 +0200 Subject: [PATCH 11/12] apply new prettier ? decommented plugin on github workflow --- .github/workflows/release.yml | 18 +- .prettierrc.js | 4 +- src/init.ts | 42 +- src/lang/de.json | 176 +-- src/lang/en.json | 176 +-- src/lang/es.json | 118 +- src/lang/fr.json | 118 +- src/lang/ja.json | 118 +- src/lang/ko.json | 118 +- src/lang/pl.json | 118 +- src/lang/pt-BR.json | 110 +- src/module.json | 228 ++-- src/modules/ContextMenu.ts | 164 +-- .../ForienUnidentifiedItemsIdentification.ts | 1082 ++++++++--------- src/modules/ForienUnidentifiedItemsItem.ts | 18 +- .../ForienUnidentifiedItemsItemSheet.ts | 226 ++-- src/modules/ForienUnidentifiedItemsModels.ts | 24 +- src/modules/api.ts | 178 +-- src/modules/apps/DefaultIcons.ts | 210 ++-- src/modules/apps/ItemProperties.ts | 156 +-- src/modules/constants.ts | 6 +- src/modules/lib/lib.ts | 188 +-- src/modules/preloadTemplates.ts | 16 +- src/modules/settings.ts | 520 ++++---- src/modules/systems.ts | 24 +- src/modules/systems/dnd5e.ts | 70 +- src/modules/systems/generic.ts | 2 +- src/modules/systems/pf2e.ts | 60 +- src/modules/systems/sw5e.ts | 70 +- src/modules/systems/swade.ts | 68 +- src/modules/systems/wfrp4e.ts | 80 +- src/styles/style.css | 188 +-- src/styles/style.scss | 388 +++--- src/templates/mystify-advanced.html | 96 +- src/templates/settings-default-icons.html | 22 +- src/templates/settings-item-properties.html | 42 +- 36 files changed, 2618 insertions(+), 2624 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 3227894..9eb1003 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -71,12 +71,12 @@ jobs: tag: ${{ env.RELEASE_VERSION }} - # Publish the release to FoundryVTT's package repository. - #- name: FoundryVTT AutoPublish - # uses: Varriount/fvtt-autopublish@v1.0.9 - # with: - # username: ${{ secrets.FOUNDRY_ADMIN_USER }} - # password: ${{ secrets.FOUNDRY_ADMIN_PW }} - # module-id: 288 - # manifest-url: https://github.com/${{ github.repository }}/releases/download/${{ env.RELEASE_VERSION }}/module.json - # manifest-file: ./src/module.json + Publish the release to FoundryVTT's package repository. + - name: FoundryVTT AutoPublish + uses: Varriount/fvtt-autopublish@v1.0.9 + with: + username: ${{ secrets.FOUNDRY_ADMIN_USER }} + password: ${{ secrets.FOUNDRY_ADMIN_PW }} + module-id: 288 + manifest-url: https://github.com/${{ github.repository }}/releases/download/${{ env.RELEASE_VERSION }}/module.json + manifest-file: ./src/module.json diff --git a/.prettierrc.js b/.prettierrc.js index 327a920..30f27f9 100644 --- a/.prettierrc.js +++ b/.prettierrc.js @@ -1,7 +1,7 @@ module.exports = { printWidth: 120, - tabWidth: 4, - useTabs: true, + tabWidth: 2, + useTabs: false, trailingComma: "none", semi: true, bracketSpacing: true, diff --git a/src/init.ts b/src/init.ts index 9f401b2..86ade5c 100644 --- a/src/init.ts +++ b/src/init.ts @@ -24,11 +24,11 @@ import API from "./modules/api"; /* ------------------------------------ */ Hooks.once("init", () => { - registerSettings(); + registerSettings(); - registerContextMenuHook(); + registerContextMenuHook(); - Hooks.callAll(`${CONSTANTS.MODULE_NAME}:afterInit`); + Hooks.callAll(`${CONSTANTS.MODULE_NAME}:afterInit`); }); /* ------------------------------------ */ @@ -36,12 +36,12 @@ Hooks.once("init", () => { /* ------------------------------------ */ Hooks.once("setup", () => { - //@ts-ignore - // window.ForienIdentification = Identification; + //@ts-ignore + // window.ForienIdentification = Identification; - Hooks.callAll(`${CONSTANTS.MODULE_NAME}:afterSetup`); + Hooks.callAll(`${CONSTANTS.MODULE_NAME}:afterSetup`); - setApi(API); + setApi(API); }); /* ------------------------------------ */ @@ -49,18 +49,18 @@ Hooks.once("setup", () => { /* ------------------------------------ */ Hooks.once("ready", () => { - checkSettingsInitialized(); - registerDerivedItemSheetClass(); - registerItemClassMethod(); + checkSettingsInitialized(); + registerDerivedItemSheetClass(); + registerItemClassMethod(); - Hooks.callAll(`${CONSTANTS.MODULE_NAME}:afterReady`); + Hooks.callAll(`${CONSTANTS.MODULE_NAME}:afterReady`); }); // Add any additional hooks if necessary export interface MysteryItemModuleData { - api: typeof API; - socket: any; + api: typeof API; + socket: any; } /** @@ -68,8 +68,8 @@ export interface MysteryItemModuleData { * @param api to set to game module. */ export function setApi(api: typeof API): void { - const data = game.modules.get(CONSTANTS.MODULE_NAME) as unknown as MysteryItemModuleData; - data.api = api; + const data = game.modules.get(CONSTANTS.MODULE_NAME) as unknown as MysteryItemModuleData; + data.api = api; } /** @@ -77,8 +77,8 @@ export function setApi(api: typeof API): void { * @returns Api from games module. */ export function getApi(): typeof API { - const data = game.modules.get(CONSTANTS.MODULE_NAME) as unknown as MysteryItemModuleData; - return data.api; + const data = game.modules.get(CONSTANTS.MODULE_NAME) as unknown as MysteryItemModuleData; + return data.api; } /** @@ -86,8 +86,8 @@ export function getApi(): typeof API { * @param socket to set to game module. */ export function setSocket(socket: any): void { - const data = game.modules.get(CONSTANTS.MODULE_NAME) as unknown as MysteryItemModuleData; - data.socket = socket; + const data = game.modules.get(CONSTANTS.MODULE_NAME) as unknown as MysteryItemModuleData; + data.socket = socket; } /* @@ -95,6 +95,6 @@ export function setSocket(socket: any): void { * @returns Socket from games module. */ export function getSocket() { - const data = game.modules.get(CONSTANTS.MODULE_NAME) as unknown as MysteryItemModuleData; - return data.socket; + const data = game.modules.get(CONSTANTS.MODULE_NAME) as unknown as MysteryItemModuleData; + return data.socket; } diff --git a/src/lang/de.json b/src/lang/de.json index 45a594c..2195b11 100644 --- a/src/lang/de.json +++ b/src/lang/de.json @@ -1,94 +1,94 @@ { - "forien-unidentified-items": { - "NewMystified": "Unidentifizierter Gegenstand", - "Mystify": "Mystifizieren", - "MystifyReplace": "Ersetze mit mystifiziertem Gegenstand", - "MystifyAs": "Mystifiziere als…", - "MystifyAdvanced": "Mystifiziere (erweitert)…", - "Identify": "Identifizieren", - "Peek": "Ansehen", + "forien-unidentified-items": { + "NewMystified": "Unidentifizierter Gegenstand", + "Mystify": "Mystifizieren", + "MystifyReplace": "Ersetze mit mystifiziertem Gegenstand", + "MystifyAs": "Mystifiziere als…", + "MystifyAdvanced": "Mystifiziere (erweitert)…", + "Identify": "Identifizieren", + "Peek": "Ansehen", - "Item": { - "Original": "Original", - "Mystified": "Mystifiziert" - }, + "Item": { + "Original": "Original", + "Mystified": "Mystifiziert" + }, - "Dialog": { - "MystifyAs": { - "Title": "Mystifiziere {nameItem}", - "Header": "Quelle der Transmogrifikation auswählen:", - "DropZone": "Einen Gegenstand hierhin ziehen, um ihn als neue Erscheinung für {nameItem} festzulegen", - "Cancel": "Abbrechen", - "Mystify": "Mystifizieren", - "MystifyReplace": "Ersetzen", - "MystifyAdvanced": "Erweitert…" - }, - "MystifyAdvanced": { - "Title": "Mystifiziere {nameItem}", - "Meta": "Metadaten des Gegenstands", - "Original": "Quelle", - "Result": "Ergebnis", - "Default": "Voreinstellung", - "Properties": "Zu übernehmende Eigenschaften", - "Cancel": "Abbrechen", - "Mystify": "Mystifizieren", - "MystifyReplace": "Ersetzen" - }, - "resetsettings": { - "title": "Moduleinstellungen zurücksetzen", - "content": "Bist Du sicher, dass alle Einstellungen des Moduls auf die Voreinstellungen des aktuellen Systems zurückgesetzt werden sollen?Dies kann nicht rückgängig gemacht werden!", - "confirm": "Moduleinstellungen zurücksetzen", - "cancel": "Abbrechen" - }, - "nosystemfound": { - "title": "System nicht erkannt", - "content": "Dieses System wird aktuell nicht vollständig unterstützt. Das bedeutet, dass dieses Modul nicht weiß, wie es mit den Gegenständen des Systems am besten umgehen soll, kann aber trotzdem eingeschränkt arbeiten.

Mit ein wenig technischem Verständnis kannst Du diese Einstellungen selbst vornehmen." - }, - "systemfound": { - "title": "System erkannt", - "content": "Dieses System war zuvor nicht unterstützt, wurde aber in einem Update hinzugefügt!

Möchtest Du die Voreinstellungen für dieses System laden?", - "confirm": "Voreinstellungen des Systems anwenden" - } - }, + "Dialog": { + "MystifyAs": { + "Title": "Mystifiziere {nameItem}", + "Header": "Quelle der Transmogrifikation auswählen:", + "DropZone": "Einen Gegenstand hierhin ziehen, um ihn als neue Erscheinung für {nameItem} festzulegen", + "Cancel": "Abbrechen", + "Mystify": "Mystifizieren", + "MystifyReplace": "Ersetzen", + "MystifyAdvanced": "Erweitert…" + }, + "MystifyAdvanced": { + "Title": "Mystifiziere {nameItem}", + "Meta": "Metadaten des Gegenstands", + "Original": "Quelle", + "Result": "Ergebnis", + "Default": "Voreinstellung", + "Properties": "Zu übernehmende Eigenschaften", + "Cancel": "Abbrechen", + "Mystify": "Mystifizieren", + "MystifyReplace": "Ersetzen" + }, + "resetsettings": { + "title": "Moduleinstellungen zurücksetzen", + "content": "Bist Du sicher, dass alle Einstellungen des Moduls auf die Voreinstellungen des aktuellen Systems zurückgesetzt werden sollen?Dies kann nicht rückgängig gemacht werden!", + "confirm": "Moduleinstellungen zurücksetzen", + "cancel": "Abbrechen" + }, + "nosystemfound": { + "title": "System nicht erkannt", + "content": "Dieses System wird aktuell nicht vollständig unterstützt. Das bedeutet, dass dieses Modul nicht weiß, wie es mit den Gegenständen des Systems am besten umgehen soll, kann aber trotzdem eingeschränkt arbeiten.

Mit ein wenig technischem Verständnis kannst Du diese Einstellungen selbst vornehmen." + }, + "systemfound": { + "title": "System erkannt", + "content": "Dieses System war zuvor nicht unterstützt, wurde aber in einem Update hinzugefügt!

Möchtest Du die Voreinstellungen für dieses System laden?", + "confirm": "Voreinstellungen des Systems anwenden" + } + }, - "Settings": { - "allowNestedItems": { - "Name": "Verschachtelung erlauben", - "Hint": "Auswählen, um verschachteltes Mystifizieren eines bereits mystischen Gegenstandes zu erlauben. Die einzelnen Ebenen können dann separat nacheinander identifiziert werden." - }, - "defaultIcons": { - "name": "Standardsymbol", - "hint": "Auswählen, welches Symbol für bestimmte Arten von Gegenständen verwendet wird.", - "label": "Symbolverwaltung öffnen" - }, - "itemProperties": { - "name": "Übernommene Eigenschaften", - "hint": "Auswählen, welche Eigenschaften standardmäßig beim Mystifizieren übernommen werden sollen", - "label": "Eigenschaftenverwaltung öffnen" - }, - "keepOldIcon": { - "name": "Ursprüngliches Symbol behalten", - "hint": "Auswählen, um das ursprüngliche Symbol beim Mystifizieren zu behalten. Erweiterte Mystifizierung erlaubt weiterhin eine Auswahl zwischen ursprünglichem und voreingestelltem Symbol." - }, - "removeLabelButtonsSheetHeader": { - "name": "Beschriftung der Schaltflächen im Kopfbereich des Gegenstandsbogens entfernen", - "hint": "Nützlich für kleine Bildschirme, standardmäßig aktiv." - }, - "reset": { - "name": "Auf Voreinstellungen zurücksetzen", - "label": "Einstellungen auf Voreinstellungen zurücksetzen.", - "hint": "Dies wird alle Einstellungen auf die Voreinstellungen des Systems zurücksetzen." - }, - "debug": { - "name": "Debugging aktivieren", - "label": "Ausgaben zur Fehlersuche in der Konsole anzeigen.", - "hint": "" - } - }, + "Settings": { + "allowNestedItems": { + "Name": "Verschachtelung erlauben", + "Hint": "Auswählen, um verschachteltes Mystifizieren eines bereits mystischen Gegenstandes zu erlauben. Die einzelnen Ebenen können dann separat nacheinander identifiziert werden." + }, + "defaultIcons": { + "name": "Standardsymbol", + "hint": "Auswählen, welches Symbol für bestimmte Arten von Gegenständen verwendet wird.", + "label": "Symbolverwaltung öffnen" + }, + "itemProperties": { + "name": "Übernommene Eigenschaften", + "hint": "Auswählen, welche Eigenschaften standardmäßig beim Mystifizieren übernommen werden sollen", + "label": "Eigenschaftenverwaltung öffnen" + }, + "keepOldIcon": { + "name": "Ursprüngliches Symbol behalten", + "hint": "Auswählen, um das ursprüngliche Symbol beim Mystifizieren zu behalten. Erweiterte Mystifizierung erlaubt weiterhin eine Auswahl zwischen ursprünglichem und voreingestelltem Symbol." + }, + "removeLabelButtonsSheetHeader": { + "name": "Beschriftung der Schaltflächen im Kopfbereich des Gegenstandsbogens entfernen", + "hint": "Nützlich für kleine Bildschirme, standardmäßig aktiv." + }, + "reset": { + "name": "Auf Voreinstellungen zurücksetzen", + "label": "Einstellungen auf Voreinstellungen zurücksetzen.", + "hint": "Dies wird alle Einstellungen auf die Voreinstellungen des Systems zurücksetzen." + }, + "debug": { + "name": "Debugging aktivieren", + "label": "Ausgaben zur Fehlersuche in der Konsole anzeigen.", + "hint": "" + } + }, - "Notifications": { - "defaultIconsInitialized": "Voreingestellte Symbole für Gegenstände wurden zufällig zugewiesen. Weitere Informationen findest Du in den Moduleinstellungen.", - "defaultPropertiesInitialized": "Voreinstellungen für übernommene Eigenschaften wurden erstellt. Weitere Informationen findest Du in den Moduleinstellungen." - } - } + "Notifications": { + "defaultIconsInitialized": "Voreingestellte Symbole für Gegenstände wurden zufällig zugewiesen. Weitere Informationen findest Du in den Moduleinstellungen.", + "defaultPropertiesInitialized": "Voreinstellungen für übernommene Eigenschaften wurden erstellt. Weitere Informationen findest Du in den Moduleinstellungen." + } + } } diff --git a/src/lang/en.json b/src/lang/en.json index 7d164ec..12cde07 100644 --- a/src/lang/en.json +++ b/src/lang/en.json @@ -1,94 +1,94 @@ { - "forien-unidentified-items": { - "NewMystified": "Unidentified Item", - "Mystify": "Mystify", - "MystifyReplace": "Replace with Mystified", - "MystifyAs": "Mystify as…", - "MystifyAdvanced": "Mystify (advanced)…", - "Identify": "Identify", - "Peek": "Peek", + "forien-unidentified-items": { + "NewMystified": "Unidentified Item", + "Mystify": "Mystify", + "MystifyReplace": "Replace with Mystified", + "MystifyAs": "Mystify as…", + "MystifyAdvanced": "Mystify (advanced)…", + "Identify": "Identify", + "Peek": "Peek", - "Item": { - "Original": "Original", - "Mystified": "Mystified" - }, + "Item": { + "Original": "Original", + "Mystified": "Mystified" + }, - "Dialog": { - "MystifyAs": { - "Title": "Mystify {nameItem}", - "Header": "Select Transmogrification source:", - "DropZone": "Drag & Drop an Item here to set it as new look for {nameItem}", - "Cancel": "Cancel", - "Mystify": "Mystify", - "MystifyReplace": "Replace", - "MystifyAdvanced": "Advanced…" - }, - "MystifyAdvanced": { - "Title": "Mystify {nameItem}", - "Meta": "Item's Metadata", - "Original": "Source", - "Result": "Result", - "Default": "Default", - "Properties": "Properties to keep", - "Cancel": "Cancel", - "Mystify": "Mystify", - "MystifyReplace": "Replace" - }, - "resetsettings": { - "title": "Reset Module Settings", - "content": "Are you sure you want to reset all of the module settings to the current system's defaults? This cannot be undone!", - "confirm": "Reset Module Settings", - "cancel": "Cancel" - }, - "nosystemfound": { - "title": "System Not Recognized", - "content": "This system is not currently fully supported. This means that the module does not know how to best handle this system's items, but can still operate in a limited fashion.

You can configure the module's settings yourself, but it requires a bit of technical know-how." - }, - "systemfound": { - "title": "System Recognized", - "content": "This system was previously not supported, but in an recent update it was added as a supported system!

Do you want to load this system's default module settings?", - "confirm": "Apply System Defaults" - } - }, + "Dialog": { + "MystifyAs": { + "Title": "Mystify {nameItem}", + "Header": "Select Transmogrification source:", + "DropZone": "Drag & Drop an Item here to set it as new look for {nameItem}", + "Cancel": "Cancel", + "Mystify": "Mystify", + "MystifyReplace": "Replace", + "MystifyAdvanced": "Advanced…" + }, + "MystifyAdvanced": { + "Title": "Mystify {nameItem}", + "Meta": "Item's Metadata", + "Original": "Source", + "Result": "Result", + "Default": "Default", + "Properties": "Properties to keep", + "Cancel": "Cancel", + "Mystify": "Mystify", + "MystifyReplace": "Replace" + }, + "resetsettings": { + "title": "Reset Module Settings", + "content": "Are you sure you want to reset all of the module settings to the current system's defaults? This cannot be undone!", + "confirm": "Reset Module Settings", + "cancel": "Cancel" + }, + "nosystemfound": { + "title": "System Not Recognized", + "content": "This system is not currently fully supported. This means that the module does not know how to best handle this system's items, but can still operate in a limited fashion.

You can configure the module's settings yourself, but it requires a bit of technical know-how." + }, + "systemfound": { + "title": "System Recognized", + "content": "This system was previously not supported, but in an recent update it was added as a supported system!

Do you want to load this system's default module settings?", + "confirm": "Apply System Defaults" + } + }, - "Settings": { - "allowNestedItems": { - "Name": "Allow tiering (nesting)", - "Hint": "Check this option to be able to Mystify a Mystified Item, allowing for nested/tiered items that can be identified one at a time." - }, - "defaultIcons": { - "name": "Default Icons", - "hint": "Select which icons should be used as defaults for specific Item types.", - "label": "Open Icon Manager" - }, - "itemProperties": { - "name": "Persisting Properties", - "hint": "Select which Item properties should be by default carried over to mystified item.", - "label": "Open Property Manager" - }, - "keepOldIcon": { - "name": "Keep original Icon", - "hint": "Check this setting to keep original item icon when mystifying. Advanced Mystify still allows manually selecting original vs default icons." - }, - "removeLabelButtonsSheetHeader": { - "name": "Remove label from buttons on the header item sheet", - "hint": "Remove label from buttons on the header item sheet, Useful for little screen and mobile, by default is true" - }, - "reset": { - "name": "Reset settings to default", - "label": "Reset Settings To Default", - "hint": "This will reset all of the settings of back to the active game system's default." - }, - "debug": { - "name": "Enable debugging", - "label": "Prints debug messages to the console", - "hint": "" - } - }, + "Settings": { + "allowNestedItems": { + "Name": "Allow tiering (nesting)", + "Hint": "Check this option to be able to Mystify a Mystified Item, allowing for nested/tiered items that can be identified one at a time." + }, + "defaultIcons": { + "name": "Default Icons", + "hint": "Select which icons should be used as defaults for specific Item types.", + "label": "Open Icon Manager" + }, + "itemProperties": { + "name": "Persisting Properties", + "hint": "Select which Item properties should be by default carried over to mystified item.", + "label": "Open Property Manager" + }, + "keepOldIcon": { + "name": "Keep original Icon", + "hint": "Check this setting to keep original item icon when mystifying. Advanced Mystify still allows manually selecting original vs default icons." + }, + "removeLabelButtonsSheetHeader": { + "name": "Remove label from buttons on the header item sheet", + "hint": "Remove label from buttons on the header item sheet, Useful for little screen and mobile, by default is true" + }, + "reset": { + "name": "Reset settings to default", + "label": "Reset Settings To Default", + "hint": "This will reset all of the settings of back to the active game system's default." + }, + "debug": { + "name": "Enable debugging", + "label": "Prints debug messages to the console", + "hint": "" + } + }, - "Notifications": { - "defaultIconsInitialized": "Default Item Type Icons has been randomly assigned. Please visit Module Settings for more information.", - "defaultPropertiesInitialized": "Default Persisting Item Properties have been generated. Please visit Module Settings for more information." - } - } + "Notifications": { + "defaultIconsInitialized": "Default Item Type Icons has been randomly assigned. Please visit Module Settings for more information.", + "defaultPropertiesInitialized": "Default Persisting Item Properties have been generated. Please visit Module Settings for more information." + } + } } diff --git a/src/lang/es.json b/src/lang/es.json index 4c8104a..d715770 100644 --- a/src/lang/es.json +++ b/src/lang/es.json @@ -1,65 +1,65 @@ { - "forien-unidentified-items": { - "NewMystified": "Objeto no Identificado", - "Mystify": "Ocultar", - "MystifyReplace": "Reemplazar con Ocultado", - "MystifyAs": "Ocultar como…", - "MystifyAdvanced": "Ocultar (avanzado)…", - "Identify": "Identificar", - "Peek": "Ojear", + "forien-unidentified-items": { + "NewMystified": "Objeto no Identificado", + "Mystify": "Ocultar", + "MystifyReplace": "Reemplazar con Ocultado", + "MystifyAs": "Ocultar como…", + "MystifyAdvanced": "Ocultar (avanzado)…", + "Identify": "Identificar", + "Peek": "Ojear", - "Item": { - "Original": "Original", - "Mystified": "Ocultado" - }, + "Item": { + "Original": "Original", + "Mystified": "Ocultado" + }, - "Dialog": { - "MystifyAs": { - "Title": "Ocultar {nameItem}", - "Header": "Seleccione el origen de la transmogrificación:", - "DropZone": "Arrastre y Suelte un objeto aquí para configurarlo como la nueva visual de {nameItem}", - "Cancel": "Cancelar", - "Mystify": "Ocultar", - "MystifyReplace": "Reemplazar", - "MystifyAdvanced": "Avanzado…" - }, - "MystifyAdvanced": { - "Title": "Ocultar {nameItem}", - "Meta": "Metadatos del Objeto", - "Original": "Origen", - "Result": "Resultado", - "Default": "Por Defecto", - "Properties": "Propiedades a mantener", - "Cancel": "Cancelar", - "Mystify": "Ocultar", - "MystifyReplace": "Reemplazar" - } - }, + "Dialog": { + "MystifyAs": { + "Title": "Ocultar {nameItem}", + "Header": "Seleccione el origen de la transmogrificación:", + "DropZone": "Arrastre y Suelte un objeto aquí para configurarlo como la nueva visual de {nameItem}", + "Cancel": "Cancelar", + "Mystify": "Ocultar", + "MystifyReplace": "Reemplazar", + "MystifyAdvanced": "Avanzado…" + }, + "MystifyAdvanced": { + "Title": "Ocultar {nameItem}", + "Meta": "Metadatos del Objeto", + "Original": "Origen", + "Result": "Resultado", + "Default": "Por Defecto", + "Properties": "Propiedades a mantener", + "Cancel": "Cancelar", + "Mystify": "Ocultar", + "MystifyReplace": "Reemplazar" + } + }, - "Settings": { - "allowNestedItems": { - "Name": "Permitir apilado (anidamiento)", - "Hint": "Habilite esta opción para permitir Ocultar un Objeto ya ocultado, permitiendo el apilamiento o anidamiento de objetos que pueden ser identificados uno a la vez." - }, - "defaultIcons": { - "name": "Íconos por defecto", - "hint": "Seleccione cuáles objetos deben ser utilizados por defecto según su tipo.", - "label": "Abrir Administrador de Íconos" - }, - "itemProperties": { - "name": "Propiedades Persistentes", - "hint": "Seleccione cuales propiedades del objeto deben ser permanecer en los objetos ocultados.", - "label": "Abrir Administrador de Propiedades" - }, - "keepOldIcon": { - "name": "Mantener el ícono original", - "hint": "Habilite esta opción para mantener el ícono original del objeto cuando se oculte. Ocultar (Avanzado) aún permite manualmente seleccionar de manera individual el ícono." - } - }, + "Settings": { + "allowNestedItems": { + "Name": "Permitir apilado (anidamiento)", + "Hint": "Habilite esta opción para permitir Ocultar un Objeto ya ocultado, permitiendo el apilamiento o anidamiento de objetos que pueden ser identificados uno a la vez." + }, + "defaultIcons": { + "name": "Íconos por defecto", + "hint": "Seleccione cuáles objetos deben ser utilizados por defecto según su tipo.", + "label": "Abrir Administrador de Íconos" + }, + "itemProperties": { + "name": "Propiedades Persistentes", + "hint": "Seleccione cuales propiedades del objeto deben ser permanecer en los objetos ocultados.", + "label": "Abrir Administrador de Propiedades" + }, + "keepOldIcon": { + "name": "Mantener el ícono original", + "hint": "Habilite esta opción para mantener el ícono original del objeto cuando se oculte. Ocultar (Avanzado) aún permite manualmente seleccionar de manera individual el ícono." + } + }, - "Notifications": { - "defaultIconsInitialized": "Los Íconos por Defecto según el Tipo de Objeto han sido asignados de forma aleatoria. Favor ingresar a la Configuración del Módulo para más información.", - "defaultPropertiesInitialized": "Las Propiedades Persistentes por Defecto de los Objectos fueron generados. Favor ingresar a la Configuración del Módulo para más información." - } - } + "Notifications": { + "defaultIconsInitialized": "Los Íconos por Defecto según el Tipo de Objeto han sido asignados de forma aleatoria. Favor ingresar a la Configuración del Módulo para más información.", + "defaultPropertiesInitialized": "Las Propiedades Persistentes por Defecto de los Objectos fueron generados. Favor ingresar a la Configuración del Módulo para más información." + } + } } diff --git a/src/lang/fr.json b/src/lang/fr.json index 57a9a4f..e6d5645 100644 --- a/src/lang/fr.json +++ b/src/lang/fr.json @@ -1,65 +1,65 @@ { - "forien-unidentified-items": { - "NewMystified": "Objet non identifié", - "Mystify": "Mystifier", - "MystifyReplace": "Remplacer avec l'objet mystifié", - "MystifyAs": "Mystifier en…", - "MystifyAdvanced": "Mystifier (avancé)…", - "Identify": "Identifier", - "Peek": "Voir", + "forien-unidentified-items": { + "NewMystified": "Objet non identifié", + "Mystify": "Mystifier", + "MystifyReplace": "Remplacer avec l'objet mystifié", + "MystifyAs": "Mystifier en…", + "MystifyAdvanced": "Mystifier (avancé)…", + "Identify": "Identifier", + "Peek": "Voir", - "Item": { - "Original": "Original", - "Mystified": "Mystifié" - }, + "Item": { + "Original": "Original", + "Mystified": "Mystifié" + }, - "Dialog": { - "MystifyAs": { - "Title": "Mystifier {nameItem}", - "Header": "Sélectionnez la source de transmogrification :", - "DropZone": "Glissez-déposez un élément ici pour donner une nouvelle apparence à {nameItem}", - "Cancel": "Annuler", - "Mystify": "Mystifier", - "MystifyReplace": "Remplacer", - "MystifyAdvanced": "Avancé" - }, - "MystifyAdvanced": { - "Title": "Mystifier {nameItem}", - "Meta": "Métadonnées de l'objet", - "Original": "Source", - "Result": "Résultat", - "Default": "Par défaut", - "Properties": "Propriétés à conserver", - "Cancel": "Annuler", - "Mystify": "Mystifier", - "MystifyReplace": "Remplacer" - } - }, + "Dialog": { + "MystifyAs": { + "Title": "Mystifier {nameItem}", + "Header": "Sélectionnez la source de transmogrification :", + "DropZone": "Glissez-déposez un élément ici pour donner une nouvelle apparence à {nameItem}", + "Cancel": "Annuler", + "Mystify": "Mystifier", + "MystifyReplace": "Remplacer", + "MystifyAdvanced": "Avancé" + }, + "MystifyAdvanced": { + "Title": "Mystifier {nameItem}", + "Meta": "Métadonnées de l'objet", + "Original": "Source", + "Result": "Résultat", + "Default": "Par défaut", + "Properties": "Propriétés à conserver", + "Cancel": "Annuler", + "Mystify": "Mystifier", + "MystifyReplace": "Remplacer" + } + }, - "Settings": { - "allowNestedItems": { - "Name": "Autoriser l'imbrication", - "Hint": "Cochez cette option pour pouvoir mystifier un objet déjà mystifié, ce qui permet d'identifier les objets ainsi imbriqués un par un." - }, - "defaultIcons": { - "name": "Icônes par défaut", - "hint": "Sélectionnez les icônes qui doivent être utilisées par défaut pour des types d'objet spécifiques.", - "label": "Ouvrir le gestionnaire d'icônes" - }, - "itemProperties": { - "name": "Propriétés persistantes", - "hint": "Sélectionnez les propriétés de l'objet qui doivent être reportées par défaut sur l'objet mystifié.", - "label": "Ouvrir le gestionnaire de propriétés" - }, - "keepOldIcon": { - "name": "Conserver l'icône originale", - "hint": "Cochez ce paramètre pour conserver l'icône de l'objet original lors de la mystification. La mystification avancée permet toujours de sélectionner manuellement les icônes d'origine par rapport aux icônes par défaut." - } - }, + "Settings": { + "allowNestedItems": { + "Name": "Autoriser l'imbrication", + "Hint": "Cochez cette option pour pouvoir mystifier un objet déjà mystifié, ce qui permet d'identifier les objets ainsi imbriqués un par un." + }, + "defaultIcons": { + "name": "Icônes par défaut", + "hint": "Sélectionnez les icônes qui doivent être utilisées par défaut pour des types d'objet spécifiques.", + "label": "Ouvrir le gestionnaire d'icônes" + }, + "itemProperties": { + "name": "Propriétés persistantes", + "hint": "Sélectionnez les propriétés de l'objet qui doivent être reportées par défaut sur l'objet mystifié.", + "label": "Ouvrir le gestionnaire de propriétés" + }, + "keepOldIcon": { + "name": "Conserver l'icône originale", + "hint": "Cochez ce paramètre pour conserver l'icône de l'objet original lors de la mystification. La mystification avancée permet toujours de sélectionner manuellement les icônes d'origine par rapport aux icônes par défaut." + } + }, - "Notifications": { - "defaultIconsInitialized": "Les icônes des types d'objets par défaut ont été attribuées de manière aléatoire. Pour plus d'informations, veuillez consulter la page Paramètres des modules.", - "defaultPropertiesInitialized": "Les propriétés persistantes par défaut des objets ont été générées. Pour plus d'informations, veuillez consulter la page Paramètres des modules." - } - } + "Notifications": { + "defaultIconsInitialized": "Les icônes des types d'objets par défaut ont été attribuées de manière aléatoire. Pour plus d'informations, veuillez consulter la page Paramètres des modules.", + "defaultPropertiesInitialized": "Les propriétés persistantes par défaut des objets ont été générées. Pour plus d'informations, veuillez consulter la page Paramètres des modules." + } + } } diff --git a/src/lang/ja.json b/src/lang/ja.json index 00d6b6f..5bad1ec 100644 --- a/src/lang/ja.json +++ b/src/lang/ja.json @@ -1,65 +1,65 @@ { - "forien-unidentified-items": { - "NewMystified": "未識別アイテム", - "Mystify": "神秘化", - "MystifyReplace": "神秘化して置換", - "MystifyAs": "偽装して神秘化", - "MystifyAdvanced": "高度な神秘化", - "Identify": "識別", - "Peek": "覗き見", + "forien-unidentified-items": { + "NewMystified": "未識別アイテム", + "Mystify": "神秘化", + "MystifyReplace": "神秘化して置換", + "MystifyAs": "偽装して神秘化", + "MystifyAdvanced": "高度な神秘化", + "Identify": "識別", + "Peek": "覗き見", - "Item": { - "Original": "オリジナル", - "Mystified": "未識別" - }, + "Item": { + "Original": "オリジナル", + "Mystified": "未識別" + }, - "Dialog": { - "MystifyAs": { - "Title": "{nameItem} の神秘化", - "Header": "偽装先のアイテムを指定してください:", - "DropZone": "ここにアイテムをドラッグ&ドロップすると、それが{nameItem}の新しい外観になります。", - "Cancel": "キャンセル", - "Mystify": "神秘化", - "MystifyReplace": "置換", - "MystifyAdvanced": "高度な神秘化" - }, - "MystifyAdvanced": { - "Title": "{nameItem}の神秘化", - "Meta": "アイテムのメタデータ", - "Original": "元のアイテム", - "Result": "結果", - "Default": "デフォルト", - "Properties": "保持するプロパティ", - "Cancel": "キャンセル", - "Mystify": "神秘化", - "MystifyReplace": "置換" - } - }, + "Dialog": { + "MystifyAs": { + "Title": "{nameItem} の神秘化", + "Header": "偽装先のアイテムを指定してください:", + "DropZone": "ここにアイテムをドラッグ&ドロップすると、それが{nameItem}の新しい外観になります。", + "Cancel": "キャンセル", + "Mystify": "神秘化", + "MystifyReplace": "置換", + "MystifyAdvanced": "高度な神秘化" + }, + "MystifyAdvanced": { + "Title": "{nameItem}の神秘化", + "Meta": "アイテムのメタデータ", + "Original": "元のアイテム", + "Result": "結果", + "Default": "デフォルト", + "Properties": "保持するプロパティ", + "Cancel": "キャンセル", + "Mystify": "神秘化", + "MystifyReplace": "置換" + } + }, - "Settings": { - "allowNestedItems": { - "Name": "階層化(入れ子)を許可する", - "Hint": "このオプションを有効化すると、神秘化されたアイテムを、さらに神秘化できるようになり、階層化され、入れ子になったアイテムを1段階ずつ識別できます" - }, - "defaultIcons": { - "name": "デフォルトアイコン", - "hint": "アイテムタイプごとに、デフォルトとして使用するアイコンを選択します。", - "label": "アイコンマネージャーを開く" - }, - "itemProperties": { - "name": "引き継がれるプロパティ", - "hint": "神秘化時にデフォルトで引き継がれるプロパティを選択します。", - "label": "プロパティマネージャーを開く" - }, - "keepOldIcon": { - "name": "オリジナルのアイコンを保持する", - "hint": "このオプションを有効化すると、神秘化時にオリジナルのアイテムアイコンを保持します。高度な神秘化では、オリジナルアイコンとデフォルトアイコンを手動で選択できます。" - } - }, + "Settings": { + "allowNestedItems": { + "Name": "階層化(入れ子)を許可する", + "Hint": "このオプションを有効化すると、神秘化されたアイテムを、さらに神秘化できるようになり、階層化され、入れ子になったアイテムを1段階ずつ識別できます" + }, + "defaultIcons": { + "name": "デフォルトアイコン", + "hint": "アイテムタイプごとに、デフォルトとして使用するアイコンを選択します。", + "label": "アイコンマネージャーを開く" + }, + "itemProperties": { + "name": "引き継がれるプロパティ", + "hint": "神秘化時にデフォルトで引き継がれるプロパティを選択します。", + "label": "プロパティマネージャーを開く" + }, + "keepOldIcon": { + "name": "オリジナルのアイコンを保持する", + "hint": "このオプションを有効化すると、神秘化時にオリジナルのアイテムアイコンを保持します。高度な神秘化では、オリジナルアイコンとデフォルトアイコンを手動で選択できます。" + } + }, - "Notifications": { - "defaultIconsInitialized": "アイテムタイプごとのデフォルトアイコンがランダムに割り当てられました。詳しくはモジュール設定を確認してください。", - "defaultPropertiesInitialized": "デフォルトの“継続されるプロパティ”が生成されました。詳しくはモジュール設定を確認してください。" - } - } + "Notifications": { + "defaultIconsInitialized": "アイテムタイプごとのデフォルトアイコンがランダムに割り当てられました。詳しくはモジュール設定を確認してください。", + "defaultPropertiesInitialized": "デフォルトの“継続されるプロパティ”が生成されました。詳しくはモジュール設定を確認してください。" + } + } } diff --git a/src/lang/ko.json b/src/lang/ko.json index dba2b55..67716d5 100644 --- a/src/lang/ko.json +++ b/src/lang/ko.json @@ -1,65 +1,65 @@ { - "forien-unidentified-items": { - "NewMystified": "미식별 아이템", - "Mystify": "미식별", - "MystifyReplace": "미식별 아이템으로 대체", - "MystifyAs": "미식별화..", - "MystifyAdvanced": "미식별화(고급)…", - "Identify": "식별", - "Peek": "보기", + "forien-unidentified-items": { + "NewMystified": "미식별 아이템", + "Mystify": "미식별", + "MystifyReplace": "미식별 아이템으로 대체", + "MystifyAs": "미식별화..", + "MystifyAdvanced": "미식별화(고급)…", + "Identify": "식별", + "Peek": "보기", - "Item": { - "Original": "원본", - "Mystified": "미식별" - }, + "Item": { + "Original": "원본", + "Mystified": "미식별" + }, - "Dialog": { - "MystifyAs": { - "Title": "미식별 {nameItem}", - "Header": "변형할 원본 선택:", - "DropZone": "아이템을 이곳에 끌어다 놓아 {nameItem}의 새 모습으로 설정", - "Cancel": "취소", - "Mystify": "미식별", - "MystifyReplace": "대체", - "MystifyAdvanced": "고급…" - }, - "MystifyAdvanced": { - "Title": "미식별 {nameItem}", - "Meta": "아이템의 메타데이터", - "Original": "원본", - "Result": "결과", - "Default": "디폴트", - "Properties": "유지할 속성", - "Cancel": "취소", - "Mystify": "미식별", - "MystifyReplace": "대체" - } - }, + "Dialog": { + "MystifyAs": { + "Title": "미식별 {nameItem}", + "Header": "변형할 원본 선택:", + "DropZone": "아이템을 이곳에 끌어다 놓아 {nameItem}의 새 모습으로 설정", + "Cancel": "취소", + "Mystify": "미식별", + "MystifyReplace": "대체", + "MystifyAdvanced": "고급…" + }, + "MystifyAdvanced": { + "Title": "미식별 {nameItem}", + "Meta": "아이템의 메타데이터", + "Original": "원본", + "Result": "결과", + "Default": "디폴트", + "Properties": "유지할 속성", + "Cancel": "취소", + "Mystify": "미식별", + "MystifyReplace": "대체" + } + }, - "Settings": { - "allowNestedItems": { - "Name": "단계화 허용 (nesting)", - "Hint": "한 번에 하나씩 식별할 수 있는 단계화 된 미식별 아이템을 만드는 것을 허용하려면 이 옵션을 선택한다. " - }, - "defaultIcons": { - "name": "기본 아이콘", - "hint": "특정 아이템 타입의 기본값으로 사용할 아이콘을 선택한다.", - "label": "아이콘 매니저 열기" - }, - "itemProperties": { - "name": "지속적 속성", - "hint": "어떤 아이템 속성이 미식별 아이템의 기본 속성으로 유지 적용되는지 선택한다.", - "label": "속성 매니저 열기" - }, - "keepOldIcon": { - "name": "원본 아이콘 유지", - "hint": "미식별 전환시 아이템의 원본 아이콘을 유지하려면 이 설정을 선택한다. 고급 미식별화는 여전히 원본 아이콘과 기본 아이콘을 수동으로 선택할 수 있다." - } - }, + "Settings": { + "allowNestedItems": { + "Name": "단계화 허용 (nesting)", + "Hint": "한 번에 하나씩 식별할 수 있는 단계화 된 미식별 아이템을 만드는 것을 허용하려면 이 옵션을 선택한다. " + }, + "defaultIcons": { + "name": "기본 아이콘", + "hint": "특정 아이템 타입의 기본값으로 사용할 아이콘을 선택한다.", + "label": "아이콘 매니저 열기" + }, + "itemProperties": { + "name": "지속적 속성", + "hint": "어떤 아이템 속성이 미식별 아이템의 기본 속성으로 유지 적용되는지 선택한다.", + "label": "속성 매니저 열기" + }, + "keepOldIcon": { + "name": "원본 아이콘 유지", + "hint": "미식별 전환시 아이템의 원본 아이콘을 유지하려면 이 설정을 선택한다. 고급 미식별화는 여전히 원본 아이콘과 기본 아이콘을 수동으로 선택할 수 있다." + } + }, - "Notifications": { - "defaultIconsInitialized": "기본 아이템 유형 아이콘이 무작위로 할당되었습니다. 자세한 내용은 모듈 설정을 참조해주세요.", - "defaultPropertiesInitialized": "기본 지속적 항목 속성이 생성되었습니다. 자세한 내용은 모듈 설정을 참조해주세요." - } - } + "Notifications": { + "defaultIconsInitialized": "기본 아이템 유형 아이콘이 무작위로 할당되었습니다. 자세한 내용은 모듈 설정을 참조해주세요.", + "defaultPropertiesInitialized": "기본 지속적 항목 속성이 생성되었습니다. 자세한 내용은 모듈 설정을 참조해주세요." + } + } } diff --git a/src/lang/pl.json b/src/lang/pl.json index 0d42e74..43b2881 100644 --- a/src/lang/pl.json +++ b/src/lang/pl.json @@ -1,61 +1,61 @@ { - "forien-unidentified-items": { - "NewMystified": "Niezidentyfikowany przedmiot", - "Mystify": "Zmistyfikuj", - "MystifyReplace": "Podmień na zmistyfikowany", - "MystifyAs": "Zmistyfikuj jako…", - "MystifyAdvanced": "Zmistyfikuj (zaawansowane)…", - "Identify": "Zidentyfikuj", - "Peek": "Podejrzyj", - "Dialog": { - "MystifyAs": { - "Title": "Zmistyfikuj {nameItem}", - "Header": "Wybierz źródło transmogryfikacji:", - "DropZone": "Przeciągnij i Upuść tu Przedmiot, żeby ustawić go jako wygląd dla „{nameItem}”", - "Cancel": "Anuluj", - "Mystify": "Mistifikuj", - "MystifyReplace": "Podmień", - "MystifyAdvanced": "Zaawansowane..." - }, - "MystifyAdvanced": { - "Title": "Mistyfikuj {nameItem}", - "Meta": "Metadane Przedmiotu", - "Original": "Źródło", - "Result": "Rezultat", - "Default": "Domyślne", - "Properties": "Zachowywane właściwości", - "Cancel": "Anuluj", - "Mystify": "Mistifikuj", - "MystifyReplace": "Podmień" - } - }, - "Settings": { - "defaultIcons": { - "name": "Domyślne ikony", - "hint": "Określ jakie ikony powinny być stosowane dla poszczególnych typów przedmiotów.", - "label": "Otwórz Menadżer Ikon" - }, - "itemProperties": { - "name": "Trwałe Właściwości", - "hint": "Określ jakie właściwości przedmioty powinny być zachowywane w zmistyfikowanym przedmiocie.", - "label": "Otwórz Menadżer Właściwości" - }, - "keepOldIcon": { - "name": "Zachowaj oryginalną ikonę", - "hint": "Zaznacz, aby zachowywać oryginalną ikonę przedmiotu podczas mistyfikacji. Zaawansowana Mistyfikacja nadal pozwalać będzie na manualne określenie ikony." - }, - "allowNestedItems": { - "Hint": "Zaznacz tę opcję aby móc Zmistyfikować Zmistyfikowany przedmiot, pozwalając na zagnieżdżone poziomy wiedzy o przedmiocie lub przedmioty o wielu stadiach rozwoju. Każdy etap należy osobno zidentyfikować.", - "Name": "Zezwól na zagnieżdżanie" - } - }, - "Item": { - "Mystified": "Zmistyfikowany", - "Original": "Oryginał" - }, - "Notifications": { - "defaultIconsInitialized": "Domyślne Ikony Typów Przedmiotów zostały losowo przydzielone. Proszę odwiedź Ustawienia Modułu po więcje informacji.", - "defaultPropertiesInitialized": "Domyślne Trwałe Właściwości Przedmiotów zostały wygenerowane. Proszę odwiedź Ustawienia Modułu po więcje informacji." - } - } + "forien-unidentified-items": { + "NewMystified": "Niezidentyfikowany przedmiot", + "Mystify": "Zmistyfikuj", + "MystifyReplace": "Podmień na zmistyfikowany", + "MystifyAs": "Zmistyfikuj jako…", + "MystifyAdvanced": "Zmistyfikuj (zaawansowane)…", + "Identify": "Zidentyfikuj", + "Peek": "Podejrzyj", + "Dialog": { + "MystifyAs": { + "Title": "Zmistyfikuj {nameItem}", + "Header": "Wybierz źródło transmogryfikacji:", + "DropZone": "Przeciągnij i Upuść tu Przedmiot, żeby ustawić go jako wygląd dla „{nameItem}”", + "Cancel": "Anuluj", + "Mystify": "Mistifikuj", + "MystifyReplace": "Podmień", + "MystifyAdvanced": "Zaawansowane..." + }, + "MystifyAdvanced": { + "Title": "Mistyfikuj {nameItem}", + "Meta": "Metadane Przedmiotu", + "Original": "Źródło", + "Result": "Rezultat", + "Default": "Domyślne", + "Properties": "Zachowywane właściwości", + "Cancel": "Anuluj", + "Mystify": "Mistifikuj", + "MystifyReplace": "Podmień" + } + }, + "Settings": { + "defaultIcons": { + "name": "Domyślne ikony", + "hint": "Określ jakie ikony powinny być stosowane dla poszczególnych typów przedmiotów.", + "label": "Otwórz Menadżer Ikon" + }, + "itemProperties": { + "name": "Trwałe Właściwości", + "hint": "Określ jakie właściwości przedmioty powinny być zachowywane w zmistyfikowanym przedmiocie.", + "label": "Otwórz Menadżer Właściwości" + }, + "keepOldIcon": { + "name": "Zachowaj oryginalną ikonę", + "hint": "Zaznacz, aby zachowywać oryginalną ikonę przedmiotu podczas mistyfikacji. Zaawansowana Mistyfikacja nadal pozwalać będzie na manualne określenie ikony." + }, + "allowNestedItems": { + "Hint": "Zaznacz tę opcję aby móc Zmistyfikować Zmistyfikowany przedmiot, pozwalając na zagnieżdżone poziomy wiedzy o przedmiocie lub przedmioty o wielu stadiach rozwoju. Każdy etap należy osobno zidentyfikować.", + "Name": "Zezwól na zagnieżdżanie" + } + }, + "Item": { + "Mystified": "Zmistyfikowany", + "Original": "Oryginał" + }, + "Notifications": { + "defaultIconsInitialized": "Domyślne Ikony Typów Przedmiotów zostały losowo przydzielone. Proszę odwiedź Ustawienia Modułu po więcje informacji.", + "defaultPropertiesInitialized": "Domyślne Trwałe Właściwości Przedmiotów zostały wygenerowane. Proszę odwiedź Ustawienia Modułu po więcje informacji." + } + } } diff --git a/src/lang/pt-BR.json b/src/lang/pt-BR.json index 3f2d9a2..9f2f728 100644 --- a/src/lang/pt-BR.json +++ b/src/lang/pt-BR.json @@ -1,60 +1,60 @@ { - "forien-unidentified-items": { - "NewMystified": "Item Oculto", - "Mystify": "Ocultar", - "MystifyReplace": "Substituir pelo Ocultado", - "MystifyAs": "Ocultar como…", - "MystifyAdvanced": "Ocultar (avançado)…", - "Identify": "Identificar", - "Peek": "Espiar", + "forien-unidentified-items": { + "NewMystified": "Item Oculto", + "Mystify": "Ocultar", + "MystifyReplace": "Substituir pelo Ocultado", + "MystifyAs": "Ocultar como…", + "MystifyAdvanced": "Ocultar (avançado)…", + "Identify": "Identificar", + "Peek": "Espiar", - "Item": { - "Original": "Original", - "Mystified": "Ocultado" - }, + "Item": { + "Original": "Original", + "Mystified": "Ocultado" + }, - "Dialog": { - "MystifyAs": { - "Title": "Ocultar {nameItem}", - "Header": "Selecione a fonte da Transmogrificação:", - "DropZone": "Arraste & Solte um Item aqui para se tornar a nova forma de {nameItem}", - "Cancel": "Cancelar", - "Mystify": "Ocultar", - "MystifyReplace": "Substituir", - "MystifyAdvanced": "Avançado…" - }, - "MystifyAdvanced": { - "Title": "Ocultar {nameItem}", - "Meta": "Metadados do Item", - "Original": "Original", - "Result": "Resultado", - "Default": "Padrão", - "Properties": "Manter as Propriedades", - "Cancel": "Cancelar", - "Mystify": "Ocultar", - "MystifyReplace": "Substituir" - } - }, + "Dialog": { + "MystifyAs": { + "Title": "Ocultar {nameItem}", + "Header": "Selecione a fonte da Transmogrificação:", + "DropZone": "Arraste & Solte um Item aqui para se tornar a nova forma de {nameItem}", + "Cancel": "Cancelar", + "Mystify": "Ocultar", + "MystifyReplace": "Substituir", + "MystifyAdvanced": "Avançado…" + }, + "MystifyAdvanced": { + "Title": "Ocultar {nameItem}", + "Meta": "Metadados do Item", + "Original": "Original", + "Result": "Resultado", + "Default": "Padrão", + "Properties": "Manter as Propriedades", + "Cancel": "Cancelar", + "Mystify": "Ocultar", + "MystifyReplace": "Substituir" + } + }, - "Settings": { - "allowNestedItems": { - "Name": "Permitir Camadas", - "Hint": "Permite ocultar itens ocultos, criando camadas que podem ser identificadas uma por vez." - }, - "defaultIcons": { - "name": "Icone Padrão", - "hint": "Selecione qual icone será usado como padrão para cada tipo especifico de Itens.", - "label": "Abrir Gerenciador de Icones" - }, - "itemProperties": { - "name": "Manter Propriedades", - "hint": "Selecione quais propriedades do item devem ser transferidas por padrão para o item mistificado.", - "label": "Abrir Gerenciador de Propriedades" - }, - "keepOldIcon": { - "name": "Manter ícone original", - "hint": "Mantenha o ícone original do item quando for ocultado. Ocultação Avançada ainda permite seleciona manualmente qual ícone será usado." - } - } - } + "Settings": { + "allowNestedItems": { + "Name": "Permitir Camadas", + "Hint": "Permite ocultar itens ocultos, criando camadas que podem ser identificadas uma por vez." + }, + "defaultIcons": { + "name": "Icone Padrão", + "hint": "Selecione qual icone será usado como padrão para cada tipo especifico de Itens.", + "label": "Abrir Gerenciador de Icones" + }, + "itemProperties": { + "name": "Manter Propriedades", + "hint": "Selecione quais propriedades do item devem ser transferidas por padrão para o item mistificado.", + "label": "Abrir Gerenciador de Propriedades" + }, + "keepOldIcon": { + "name": "Manter ícone original", + "hint": "Mantenha o ícone original do item quando for ocultado. Ocultação Avançada ainda permite seleciona manualmente qual ícone será usado." + } + } + } } diff --git a/src/module.json b/src/module.json index c471591..0c82d94 100644 --- a/src/module.json +++ b/src/module.json @@ -1,116 +1,116 @@ { - "id": "forien-unidentified-items", - "title": "Forien's Unidentified Items", - "description": "Provides system agnostic solution to handle unidentified items and their identification.", - "version": "0.6.1", - "authors": [ - { - "name": "Forien", - "url": "https://www.patreon.com/foundryworkshop" - }, - { - "name": "Matheus Clemente", - "url": "https://www.patreon.com/mclemente" - }, - { - "name": "p4535992", - "url": "https://github.com/p4535992", - "discord": "", - "twitter": "", - "patreon": "", - "github": "p4535992", - "ko-fi": "", - "reddit": "", - "email": "" - } - ], - "type": "module", - "socket": true, - "includes": [ - "./assets/**", - "./lang/**", - "./languages/**", - "./scripts/**", - "./styles/**", - "./templates/**", - "./module.json", - "./README.md", - "./icons/**", - "./packs/**" - ], - "media": [ - { - "type": "icon", - "location": "" - }, - { - "type": "cover", - "location": "" - }, - { - "type": "screenshot", - "location": "" - } - ], - "languages": [ - { - "lang": "en", - "name": "English", - "path": "lang/en.json" - }, - { - "lang": "ko", - "name": "한국어", - "path": "lang/ko.json" - }, - { - "lang": "pl", - "name": "Polski", - "path": "lang/pl.json" - }, - { - "lang": "pt-BR", - "name": "Português (Brasil)", - "path": "lang/pt-BR.json" - }, - { - "lang": "ja", - "name": "日本語", - "path": "lang/ja.json" - }, - { - "lang": "de", - "name": "Deutsch", - "path": "lang/de.json" - } - ], - "packs": [], - "scripts": [], - "esmodules": ["init.js"], - "styles": ["styles/style.css"], - "compatibility": { - "minimum": 10, - "verified": 10, - "maximum": 10 - }, - "manifestPlusVersion": "1.2.1", - "url": "https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items", - "manifest": "https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items/releases/latest/download/module.json", - "download": "https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items/releases/latest/download/module.zip", - "readme": "https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items/blob/v0.6.1/README.md", - "changelog": "https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items/blob/v0.6.1/CHANGELOG.md", - "bugs": "https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items/issues", - "allowBugReporter": true, - "relationships": { - "systems": [], - "requires": [ - { - "id": "lib-wrapper", - "type": "module", - "manifest": "https://github.com/ruipin/fvtt-lib-wrapper/releases/latest/download/module.json", - "compatibility": {} - } - ], - "conflicts": [] - } + "id": "forien-unidentified-items", + "title": "Forien's Unidentified Items", + "description": "Provides system agnostic solution to handle unidentified items and their identification.", + "version": "0.6.1", + "authors": [ + { + "name": "Forien", + "url": "https://www.patreon.com/foundryworkshop" + }, + { + "name": "Matheus Clemente", + "url": "https://www.patreon.com/mclemente" + }, + { + "name": "p4535992", + "url": "https://github.com/p4535992", + "discord": "", + "twitter": "", + "patreon": "", + "github": "p4535992", + "ko-fi": "", + "reddit": "", + "email": "" + } + ], + "type": "module", + "socket": true, + "includes": [ + "./assets/**", + "./lang/**", + "./languages/**", + "./scripts/**", + "./styles/**", + "./templates/**", + "./module.json", + "./README.md", + "./icons/**", + "./packs/**" + ], + "media": [ + { + "type": "icon", + "location": "" + }, + { + "type": "cover", + "location": "" + }, + { + "type": "screenshot", + "location": "" + } + ], + "languages": [ + { + "lang": "en", + "name": "English", + "path": "lang/en.json" + }, + { + "lang": "ko", + "name": "한국어", + "path": "lang/ko.json" + }, + { + "lang": "pl", + "name": "Polski", + "path": "lang/pl.json" + }, + { + "lang": "pt-BR", + "name": "Português (Brasil)", + "path": "lang/pt-BR.json" + }, + { + "lang": "ja", + "name": "日本語", + "path": "lang/ja.json" + }, + { + "lang": "de", + "name": "Deutsch", + "path": "lang/de.json" + } + ], + "packs": [], + "scripts": [], + "esmodules": ["init.js"], + "styles": ["styles/style.css"], + "compatibility": { + "minimum": 10, + "verified": 10, + "maximum": 10 + }, + "manifestPlusVersion": "1.2.1", + "url": "https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items", + "manifest": "https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items/releases/latest/download/module.json", + "download": "https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items/releases/latest/download/module.zip", + "readme": "https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items/blob/v0.6.1/README.md", + "changelog": "https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items/blob/v0.6.1/CHANGELOG.md", + "bugs": "https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items/issues", + "allowBugReporter": true, + "relationships": { + "systems": [], + "requires": [ + { + "id": "lib-wrapper", + "type": "module", + "manifest": "https://github.com/ruipin/fvtt-lib-wrapper/releases/latest/download/module.json", + "compatibility": {} + } + ], + "conflicts": [] + } } diff --git a/src/modules/ContextMenu.ts b/src/modules/ContextMenu.ts index 9513564..d6df9cb 100644 --- a/src/modules/ContextMenu.ts +++ b/src/modules/ContextMenu.ts @@ -3,95 +3,95 @@ import CONSTANTS from "./constants"; import { MystifiedData, MystifiedFlags } from "./ForienUnidentifiedItemsModels"; export default function registerContextMenuHook() { - Hooks.on("getItemDirectoryEntryContext", (html, entryOptions) => { - const getOrigData = (li) => { - const id = li[0].dataset.documentId; - const item = game.items?.get(id); + Hooks.on("getItemDirectoryEntryContext", (html, entryOptions) => { + const getOrigData = (li) => { + const id = li[0].dataset.documentId; + const item = game.items?.get(id); - return item.getFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); - }; + return item.getFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); + }; - const mystifyCondition = (li) => { - if (!game.user?.isGM) return false; - const origData = getOrigData(li); - const allowNested = game.settings.get(CONSTANTS.MODULE_NAME, "allowNestedItems"); + const mystifyCondition = (li) => { + if (!game.user?.isGM) return false; + const origData = getOrigData(li); + const allowNested = game.settings.get(CONSTANTS.MODULE_NAME, "allowNestedItems"); - return !origData || allowNested; - }; + return !origData || allowNested; + }; - const identifyCondition = (li) => { - if (!game.user?.isGM) return false; - const origData = getOrigData(li); + const identifyCondition = (li) => { + if (!game.user?.isGM) return false; + const origData = getOrigData(li); - return !!origData; - }; + return !!origData; + }; - const mystifyOptions = [ - { - name: `${CONSTANTS.MODULE_NAME}.Mystify`, - icon: '', - condition: mystifyCondition, - callback: (li) => { - const id = li[0].dataset.documentId; - API.mystify(`Item.${id}`); - } - }, - { - name: `${CONSTANTS.MODULE_NAME}.MystifyReplace`, - icon: '', - condition: mystifyCondition, - callback: (li) => { - const id = li[0].dataset.documentId; - API.mystifyReplace(`Item.${id}`); - } - }, - { - name: `${CONSTANTS.MODULE_NAME}.MystifyAs`, - icon: '', - condition: mystifyCondition, - callback: (li) => { - const id = li[0].dataset.documentId; - API.mystifyAsDialog(`Item.${id}`); - } - }, - { - name: `${CONSTANTS.MODULE_NAME}.MystifyAdvanced`, - icon: '', - condition: mystifyCondition, - callback: (li) => { - const id = li[0].dataset.documentId; - API.mystifyAdvancedDialog(`Item.${id}`); - } - } - ]; + const mystifyOptions = [ + { + name: `${CONSTANTS.MODULE_NAME}.Mystify`, + icon: '', + condition: mystifyCondition, + callback: (li) => { + const id = li[0].dataset.documentId; + API.mystify(`Item.${id}`); + } + }, + { + name: `${CONSTANTS.MODULE_NAME}.MystifyReplace`, + icon: '', + condition: mystifyCondition, + callback: (li) => { + const id = li[0].dataset.documentId; + API.mystifyReplace(`Item.${id}`); + } + }, + { + name: `${CONSTANTS.MODULE_NAME}.MystifyAs`, + icon: '', + condition: mystifyCondition, + callback: (li) => { + const id = li[0].dataset.documentId; + API.mystifyAsDialog(`Item.${id}`); + } + }, + { + name: `${CONSTANTS.MODULE_NAME}.MystifyAdvanced`, + icon: '', + condition: mystifyCondition, + callback: (li) => { + const id = li[0].dataset.documentId; + API.mystifyAdvancedDialog(`Item.${id}`); + } + } + ]; - entryOptions.unshift(...mystifyOptions); + entryOptions.unshift(...mystifyOptions); - entryOptions.unshift({ - name: `${CONSTANTS.MODULE_NAME}.Identify`, - icon: '', - condition: identifyCondition, - callback: (li) => { - const id = li[0].dataset.documentId; - const item = game.items?.get(id); - API.identify(item); - } - }); + entryOptions.unshift({ + name: `${CONSTANTS.MODULE_NAME}.Identify`, + icon: '', + condition: identifyCondition, + callback: (li) => { + const id = li[0].dataset.documentId; + const item = game.items?.get(id); + API.identify(item); + } + }); - entryOptions.unshift({ - name: `${CONSTANTS.MODULE_NAME}.Peek`, - icon: '', - condition: identifyCondition, - callback: (li) => { - const id = li[0].dataset.documentId; - const item = game.items?.get(id); - const origData = item.getFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); - origData.isAbstract = true; - //@ts-ignore - const entity = new CONFIG.Item.documentClass(origData, { editable: false }); - const sheet = entity.sheet; - sheet?.render(true); - } - }); - }); + entryOptions.unshift({ + name: `${CONSTANTS.MODULE_NAME}.Peek`, + icon: '', + condition: identifyCondition, + callback: (li) => { + const id = li[0].dataset.documentId; + const item = game.items?.get(id); + const origData = item.getFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); + origData.isAbstract = true; + //@ts-ignore + const entity = new CONFIG.Item.documentClass(origData, { editable: false }); + const sheet = entity.sheet; + sheet?.render(true); + } + }); + }); } diff --git a/src/modules/ForienUnidentifiedItemsIdentification.ts b/src/modules/ForienUnidentifiedItemsIdentification.ts index 15401e7..c15d074 100644 --- a/src/modules/ForienUnidentifiedItemsIdentification.ts +++ b/src/modules/ForienUnidentifiedItemsIdentification.ts @@ -4,93 +4,93 @@ import { MystifiedData, MystifiedFlags } from "./ForienUnidentifiedItemsModels"; import { error, i18n, i18nFormat, info, warn } from "./lib/lib"; export default class Identification { - /** - * - * @hook 'forien-unidentified-items:onMystifyItem' - * - * @param {string} itemUuid - * @param {Object} options - * @param {boolean} options.replace - set true to replace provided item with mystified one - * @param {MystifiedData|undefined} options.mystifiedData - item data object that should become front of mystified item - * @returns {Promise} - */ - static async mystify( - itemUuid: string, - options: { replace: boolean; mystifiedData: MystifiedData | undefined } = { - replace: false, - mystifiedData: undefined - } - ): Promise { - if (!game.user?.isGM) { - error(`Only a GM can mistify a item`, true); - return; - } - if (!itemUuid) { - warn(`Cannot mystify a no item`, true); - return; - } - const item = await this._itemFromUuid(itemUuid); - if (!item) { - warn(`Cannot mystify a no item from uuid '${itemUuid}'`, true); - return; - } - - const origData = duplicate(item); - let mystifiedData = options.mystifiedData; - - if (mystifiedData === undefined) { - mystifiedData = this._getMystifiedData(origData); - } - - Hooks.call(`${CONSTANTS.MODULE_NAME}:onMystifyItem`, item, origData, mystifiedData, options); - - let mystifiedItem; - if (options.replace) { - const template = { data: game.system.model.Item[item.type] }; - mystifiedData = mergeObject(template, mystifiedData); - await item.update(mystifiedData); - mystifiedItem = item; - } else { - mystifiedItem = await Item.create(mystifiedData); - } - - await mystifiedItem.setFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA, origData); - return mystifiedItem; - } - - /** - * - * @param {string} itemUuid - * @returns {Promise} - */ - static async mystifyReplace(itemUuid: string): Promise { - return await this.mystify(itemUuid, { replace: true, mystifiedData: undefined }); - } - - /** - * - * @param {string} itemUuid - * @returns {Promise} - */ - static async mystifyAsDialog(itemUuid: string): Promise { - if (!itemUuid) { - warn(`Cannot mystify advanced a no item`, true); - return; - } - const origItem: any = await this._itemFromUuid(itemUuid); - if (!origItem) { - warn(`Cannot mystify advanced a no item from uuid '${itemUuid}'`, true); - return; - } - - const nameItem = origItem.name; - let itemTmp; - let replace; - - const dialog = new Dialog( - { - title: i18nFormat(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAs.Title`, { nameItem }), - content: `

${i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAs.Header`)}

+ /** + * + * @hook 'forien-unidentified-items:onMystifyItem' + * + * @param {string} itemUuid + * @param {Object} options + * @param {boolean} options.replace - set true to replace provided item with mystified one + * @param {MystifiedData|undefined} options.mystifiedData - item data object that should become front of mystified item + * @returns {Promise} + */ + static async mystify( + itemUuid: string, + options: { replace: boolean; mystifiedData: MystifiedData | undefined } = { + replace: false, + mystifiedData: undefined + } + ): Promise { + if (!game.user?.isGM) { + error(`Only a GM can mistify a item`, true); + return; + } + if (!itemUuid) { + warn(`Cannot mystify a no item`, true); + return; + } + const item = await this._itemFromUuid(itemUuid); + if (!item) { + warn(`Cannot mystify a no item from uuid '${itemUuid}'`, true); + return; + } + + const origData = duplicate(item); + let mystifiedData = options.mystifiedData; + + if (mystifiedData === undefined) { + mystifiedData = this._getMystifiedData(origData); + } + + Hooks.call(`${CONSTANTS.MODULE_NAME}:onMystifyItem`, item, origData, mystifiedData, options); + + let mystifiedItem; + if (options.replace) { + const template = { data: game.system.model.Item[item.type] }; + mystifiedData = mergeObject(template, mystifiedData); + await item.update(mystifiedData); + mystifiedItem = item; + } else { + mystifiedItem = await Item.create(mystifiedData); + } + + await mystifiedItem.setFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA, origData); + return mystifiedItem; + } + + /** + * + * @param {string} itemUuid + * @returns {Promise} + */ + static async mystifyReplace(itemUuid: string): Promise { + return await this.mystify(itemUuid, { replace: true, mystifiedData: undefined }); + } + + /** + * + * @param {string} itemUuid + * @returns {Promise} + */ + static async mystifyAsDialog(itemUuid: string): Promise { + if (!itemUuid) { + warn(`Cannot mystify advanced a no item`, true); + return; + } + const origItem: any = await this._itemFromUuid(itemUuid); + if (!origItem) { + warn(`Cannot mystify advanced a no item from uuid '${itemUuid}'`, true); + return; + } + + const nameItem = origItem.name; + let itemTmp; + let replace; + + const dialog = new Dialog( + { + title: i18nFormat(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAs.Title`, { nameItem }), + content: `

${i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAs.Header`)}

${i18nFormat(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAs.DropZone`, { nameItem })}

`, - buttons: { - mystifyAdvanced: { - icon: '', - label: i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAs.MystifyAdvanced`), - callback: (html) => { - const source = $(html).find(".item").data("item"); - this.mystifyAdvancedDialog(itemUuid, source); - } - }, - cancel: { - icon: '', - label: i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAs.Cancel`) - }, - mystifyReplace: { - icon: '', - label: i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAs.MystifyReplace`), - callback: (html) => { - itemTmp = $(html).find(".item").data("item"); - replace = true; - } - }, - mystify: { - icon: '', - label: i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAs.Mystify`), - callback: (html) => { - itemTmp = $(html).find(".item").data("item"); - } - } - }, - default: "cancel", - close: () => { - if (itemTmp) { - delete itemTmp._id; - //let options = {mystifiedData: item}; - //if (replace) options.replace = true; - //this.mystify(itemUuid, options); - if (replace) { - this.mystify(itemUuid, { replace: true, mystifiedData: itemTmp }); - } else { - this.mystify(itemUuid, { replace: false, mystifiedData: itemTmp }); - } - } - }, - render: (html) => { - $(html) - .on("dragover", false) - .on("drop", ".dropzone", async (event) => { - event.preventDefault(); - event.stopPropagation(); - let item; - const data = JSON.parse(event.originalEvent?.dataTransfer?.getData("text/plain")); - if (data.type === "Item") { - if (data.uuid) { - const witem = await this._uuidToDocument(data.uuid); - item = duplicate(witem); - // } else if (data.pack) { - // const witem = await this._getItemFromPack(data.pack, data.id); - // item = duplicate(witem); - } else if (data) { - item = data; - } else { - const witem = game.items?.get(data.id); - if (!witem) { - return; - } - item = duplicate(witem); - } - if (item) { - $(event.currentTarget).find(".item").data("item", item); - $(event.currentTarget) - .find(".item") - .slideUp(200, () => { - $(event.currentTarget).find(".item img").attr("src", item.img); - $(event.currentTarget).find(".item span").text(item.name); - $(event.currentTarget).find(".item").slideDown(); - }); - } - } - }); - } - }, - { - id: "forien-unidentified-items-mystifyAsDialog", - width: 440, - height: "auto" - } - ); - - await dialog.render(true); - } - - /** - * - * @param {string} itemUuid - * @param {Item|undefined} source - * @returns {Promise} - */ - static async mystifyAdvancedDialog(itemUuid: string, source: Item | undefined = undefined) { - if (!itemUuid) { - warn(`Cannot mystify advanced a no item`, true); - return; - } - const origItem = await this._itemFromUuid(itemUuid); - if (!origItem) { - warn(`Cannot mystify advanced a no item from uuid '${itemUuid}'`, true); - return; - } - - const nameItem = origItem.name; - const sourceData = (source ? source : duplicate(origItem)); - const meta = this._getMystifiedMeta(sourceData); - const keepOldIcon = this.keepOriginalImage(); - - const selectedImg = keepOldIcon ? sourceData.img : meta.img; - - let properties = this._getTypeProperties(sourceData); - properties = Object.fromEntries( - Object.keys(properties).map((property) => { - return [ - property, - { - key: property, - orig: getProperty(sourceData, `data.${property}`), - default: getProperty(game.system?.model.Item[sourceData.type], property), - value: properties[property] - } - ]; - }) - ); - - const htmlTmp = await renderTemplate(`/modules/${CONSTANTS.MODULE_NAME}/templates/mystify-advanced.html`, { - item: sourceData, - meta: meta, - properties: properties, - keepOldIcon: keepOldIcon, - selectedImg: selectedImg - }); - - let confirmed = false; - let replace; - const dialog = new Dialog( - { - title: i18nFormat(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAdvanced.Title`, { nameItem }), - content: htmlTmp, - buttons: { - cancel: { - icon: '', - label: i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAdvanced.Cancel`) - }, - mystifyReplace: { - icon: '', - label: i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAdvanced.MystifyReplace`), - callback: (html) => { - confirmed = true; - replace = true; - } - }, - mystify: { - icon: '', - label: i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAdvanced.Mystify`), - callback: (html) => { - confirmed = true; - } - } - }, - default: "cancel", - close: (html: HTMLElement | JQuery) => { - if (!confirmed) { - return; - } - const form = (>html).find("form")[0]; - const formDataBase = new FormDataExtended(form, {}); - - formDataBase.delete("img-keep"); - formDataBase.delete("name-keep"); - - const formData: Record = Object.fromEntries( - Object.entries(formDataBase.toObject()).filter((e) => e[1] !== false) - ); - - for (const property of Object.keys(formData)) { - // if (property.startsWith("data.")) { - // delete formData[property]; - // setProperty(formData, property, getProperty(sourceData, property)); - // } - if(property) { - if (property.startsWith("system.")) { - delete formData[property]; - setProperty(formData, property, getProperty(sourceData, property)); - } else { - warn(`Cannot set the property '${property}' maybe is a issue ?`); - } - } - } - - //let options = {mystifiedData: formData}; - //if (replace) options.replace = true; - //this.mystify(itemUuid, options); - if (replace) { - this.mystify(itemUuid, { replace: true, mystifiedData: formData }); - this.mystify(itemUuid, { replace: true, mystifiedData: formData }); - } else { - this.mystify(itemUuid, { replace: false, mystifiedData: formData }); - } - } - }, - { - id: "forien-unidentified-items-mystifyAdvancedDialog" - } - ); - await dialog.render(true); - - const jqDialog = $("#forien-unidentified-items-mystifyAdvancedDialog"); - - jqDialog.on("change", "input[name=img-keep]", async (event) => { - const checked = $(event.currentTarget).prop("checked"); - - const src = checked ? sourceData.img : meta.img; - jqDialog.find(".img-preview").attr("src", src); - jqDialog.find("input[name=img]").val(src); - }); - - jqDialog.on("change", "input[name=name-keep]", async (event) => { - const checked = $(event.currentTarget).prop("checked"); - - const nameChanged = checked ? sourceData.name : meta.name; - jqDialog.find(".name-preview").text(nameChanged ?? ""); - jqDialog.find("input[name=name]").val(nameChanged ?? ""); - }); - } - - /** - * - * @hook 'forien-unidentified-items:onIdentifyItem' - * - * @param {Item} item - * @returns {Promise} - */ - static async identify(item: Item): Promise { - if (!item) { - warn(`Cannot identify a no item`, true); - return; - } - const origData = item.getFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); - if (!origData) { - warn(`Cannot identify a no mistify item`, true); - return; - } - // things to keep from mystified item: - // delete origData._id; - delete origData.permission; - delete origData.folder; - - const hook = Hooks.call(`${CONSTANTS.MODULE_NAME}:onIdentifyItem`, item, origData); - if (hook !== false) { - await item.update(origData, { diff: false }); - await item.unsetFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); - // If there was nested origData, carry it over. - const origDataOrigData = getProperty(origData.flags, `${CONSTANTS.MODULE_NAME}.origData`); - await item.setFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA, origDataOrigData); - } - return item; - } - - /** - * - * @param {Item} item - * @return {boolean} - */ - static isMystified(item: Item): boolean { - if (!item) { - return false; - } - const origData = item.getFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); - return origData !== undefined; - } - - /** - * - * @param {Item} item - * @return {Object} - */ - static getOrigData(item: Item): MystifiedData { - return item.getFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); - } - - /** - * - * @param {string} uuid - * @return {boolean} - */ - static async isUuidMystified(uuid: string) { - if (!uuid) { - return false; - } - const item = await this._itemFromUuid(uuid); - if (!item) { - warn(`No item found for uuid '${uuid}'`, true); - return false; - } - const origData = item.getFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); - return origData !== undefined; - } - - /** - * - * @param {MystifiedData} origData - * @returns {{img: String, name: String, type: String, data: Object}} - * @private - */ - static _getMystifiedData(origData: MystifiedData): MystifiedData { - const mystifiedData = this._getMystifiedMeta(origData); - const itemProperties = this._getDefaultProperties(origData); - - for (const property of itemProperties) { - // const propertyTmp = "data." + property; - // const valueTmp = getProperty(origData, propertyTmp); - // setProperty(mystifiedData, propertyTmp, valueTmp); - if (property) { - let propertyTmp: string | undefined = undefined; - if (property.startsWith("system.")) { - propertyTmp = property; - } else { - propertyTmp = "system." + property; - } - const valueTmp = getProperty(origData, propertyTmp); - setProperty(mystifiedData, propertyTmp, valueTmp); - } else { - warn(`Cannot set the property '${property}' maybe is a issue ?`); - } - } - - if (this.keepOriginalImage()) { - mystifiedData.img = origData.img; - } - - return mystifiedData; - } - - /** - * - * @param {Object} origData - * @returns {Array} - * @private - */ - static _getDefaultProperties(origData) { - let itemProperties = this._getTypeProperties(origData); - itemProperties = Object.entries(itemProperties) - .filter((p) => p[1]) - .map((p) => p[0]); - - return itemProperties; - } - - /** - * - * @param {Object} origData - * @return {Object} - * @private - */ - static _getTypeProperties(origData) { - const defaultProperties = game.settings.get(CONSTANTS.MODULE_NAME, "itemProperties"); - return defaultProperties[origData.type]; - } - - static keepOriginalImage() { - return game.settings.get(CONSTANTS.MODULE_NAME, "keepOldIcon"); - } - - /** - * - * @param {Object} origData - * @returns {{img: String, name: String, type: String}} - * @private - */ - static _getMystifiedMeta(origData): MystifiedData { - const iconSettings = game.settings.get(CONSTANTS.MODULE_NAME, "defaultIcons"); - const iconType = - getProperty(iconSettings, origData.type) || - `/modules/${CONSTANTS.MODULE_NAME}/icons/${CONSTANTS.DEFAULT_ICON}`; - - return { - name: i18n(`${CONSTANTS.MODULE_NAME}.NewMystified`), - type: origData.type, - img: iconType - }; - } - - /** - * - * @param {string} uuid - * @returns {Promise} - * @private - */ - static async _itemFromUuid(uuid: string): Promise { - return this._uuidToDocument(uuid); - // const parts = uuid.split("."); - // const [entityName, entityId, embeddedName, embeddedId] = parts; - - // if (embeddedName === "OwnedItem" || embeddedName === "Item") { - // if (parts.length === 4) { - // const actor = game.actors?.get(entityId); - // if (!actor) { - // return undefined; - // } - // return actor.items.get(embeddedId); - // } - // } else { - // return await fromUuid(uuid); - // } - // return; - } - - // /** - // * - // * @param {string} packId - // * @param {string} itemId - // * @return {Promise.} - // * @deprecated do not use this anymore - // * @private - // */ - // static async _getItemFromPack(packId:string, itemId:string) { - // const pack = >game.packs.get(packId); - // if (pack.documentName !== "Item") { - // return null; - // } - // return await pack.getDocument(itemId).then((ent) => { - // //delete ent?._id; - // //@ts-ignore - // if (ent?._id) { - // //@ts-ignore - // ent._id = ""; - // } - // return ent; - // }); - // } - - static async _uuidToDocument(uuid) { - const parts = uuid.split("."); - let result: any | null = null; - if (parts[0] === "Compendium") { - const pack = game["packs"].get(parts[1] + "." + parts[2]); - if (pack !== undefined) { - result = await pack.getDocument(parts[3]); - } - } else { - result = await fromUuid(uuid); - } - if (result === null) { - error(`Document Not Found for uuid ${uuid}`); - result = null; - } - return result; - } + buttons: { + mystifyAdvanced: { + icon: '', + label: i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAs.MystifyAdvanced`), + callback: (html) => { + const source = $(html).find(".item").data("item"); + this.mystifyAdvancedDialog(itemUuid, source); + } + }, + cancel: { + icon: '', + label: i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAs.Cancel`) + }, + mystifyReplace: { + icon: '', + label: i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAs.MystifyReplace`), + callback: (html) => { + itemTmp = $(html).find(".item").data("item"); + replace = true; + } + }, + mystify: { + icon: '', + label: i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAs.Mystify`), + callback: (html) => { + itemTmp = $(html).find(".item").data("item"); + } + } + }, + default: "cancel", + close: () => { + if (itemTmp) { + delete itemTmp._id; + //let options = {mystifiedData: item}; + //if (replace) options.replace = true; + //this.mystify(itemUuid, options); + if (replace) { + this.mystify(itemUuid, { replace: true, mystifiedData: itemTmp }); + } else { + this.mystify(itemUuid, { replace: false, mystifiedData: itemTmp }); + } + } + }, + render: (html) => { + $(html) + .on("dragover", false) + .on("drop", ".dropzone", async (event) => { + event.preventDefault(); + event.stopPropagation(); + let item; + const data = JSON.parse(event.originalEvent?.dataTransfer?.getData("text/plain")); + if (data.type === "Item") { + if (data.uuid) { + const witem = await this._uuidToDocument(data.uuid); + item = duplicate(witem); + // } else if (data.pack) { + // const witem = await this._getItemFromPack(data.pack, data.id); + // item = duplicate(witem); + } else if (data) { + item = data; + } else { + const witem = game.items?.get(data.id); + if (!witem) { + return; + } + item = duplicate(witem); + } + if (item) { + $(event.currentTarget).find(".item").data("item", item); + $(event.currentTarget) + .find(".item") + .slideUp(200, () => { + $(event.currentTarget).find(".item img").attr("src", item.img); + $(event.currentTarget).find(".item span").text(item.name); + $(event.currentTarget).find(".item").slideDown(); + }); + } + } + }); + } + }, + { + id: "forien-unidentified-items-mystifyAsDialog", + width: 440, + height: "auto" + } + ); + + await dialog.render(true); + } + + /** + * + * @param {string} itemUuid + * @param {Item|undefined} source + * @returns {Promise} + */ + static async mystifyAdvancedDialog(itemUuid: string, source: Item | undefined = undefined) { + if (!itemUuid) { + warn(`Cannot mystify advanced a no item`, true); + return; + } + const origItem = await this._itemFromUuid(itemUuid); + if (!origItem) { + warn(`Cannot mystify advanced a no item from uuid '${itemUuid}'`, true); + return; + } + + const nameItem = origItem.name; + const sourceData = (source ? source : duplicate(origItem)); + const meta = this._getMystifiedMeta(sourceData); + const keepOldIcon = this.keepOriginalImage(); + + const selectedImg = keepOldIcon ? sourceData.img : meta.img; + + let properties = this._getTypeProperties(sourceData); + properties = Object.fromEntries( + Object.keys(properties).map((property) => { + return [ + property, + { + key: property, + orig: getProperty(sourceData, `data.${property}`), + default: getProperty(game.system?.model.Item[sourceData.type], property), + value: properties[property] + } + ]; + }) + ); + + const htmlTmp = await renderTemplate(`/modules/${CONSTANTS.MODULE_NAME}/templates/mystify-advanced.html`, { + item: sourceData, + meta: meta, + properties: properties, + keepOldIcon: keepOldIcon, + selectedImg: selectedImg + }); + + let confirmed = false; + let replace; + const dialog = new Dialog( + { + title: i18nFormat(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAdvanced.Title`, { nameItem }), + content: htmlTmp, + buttons: { + cancel: { + icon: '', + label: i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAdvanced.Cancel`) + }, + mystifyReplace: { + icon: '', + label: i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAdvanced.MystifyReplace`), + callback: (html) => { + confirmed = true; + replace = true; + } + }, + mystify: { + icon: '', + label: i18n(`${CONSTANTS.MODULE_NAME}.Dialog.MystifyAdvanced.Mystify`), + callback: (html) => { + confirmed = true; + } + } + }, + default: "cancel", + close: (html: HTMLElement | JQuery) => { + if (!confirmed) { + return; + } + const form = (>html).find("form")[0]; + const formDataBase = new FormDataExtended(form, {}); + + formDataBase.delete("img-keep"); + formDataBase.delete("name-keep"); + + const formData: Record = Object.fromEntries( + Object.entries(formDataBase.toObject()).filter((e) => e[1] !== false) + ); + + for (const property of Object.keys(formData)) { + // if (property.startsWith("data.")) { + // delete formData[property]; + // setProperty(formData, property, getProperty(sourceData, property)); + // } + if (property) { + if (property.startsWith("system.")) { + delete formData[property]; + setProperty(formData, property, getProperty(sourceData, property)); + } else { + warn(`Cannot set the property '${property}' maybe is a issue ?`); + } + } + } + + //let options = {mystifiedData: formData}; + //if (replace) options.replace = true; + //this.mystify(itemUuid, options); + if (replace) { + this.mystify(itemUuid, { replace: true, mystifiedData: formData }); + this.mystify(itemUuid, { replace: true, mystifiedData: formData }); + } else { + this.mystify(itemUuid, { replace: false, mystifiedData: formData }); + } + } + }, + { + id: "forien-unidentified-items-mystifyAdvancedDialog" + } + ); + await dialog.render(true); + + const jqDialog = $("#forien-unidentified-items-mystifyAdvancedDialog"); + + jqDialog.on("change", "input[name=img-keep]", async (event) => { + const checked = $(event.currentTarget).prop("checked"); + + const src = checked ? sourceData.img : meta.img; + jqDialog.find(".img-preview").attr("src", src); + jqDialog.find("input[name=img]").val(src); + }); + + jqDialog.on("change", "input[name=name-keep]", async (event) => { + const checked = $(event.currentTarget).prop("checked"); + + const nameChanged = checked ? sourceData.name : meta.name; + jqDialog.find(".name-preview").text(nameChanged ?? ""); + jqDialog.find("input[name=name]").val(nameChanged ?? ""); + }); + } + + /** + * + * @hook 'forien-unidentified-items:onIdentifyItem' + * + * @param {Item} item + * @returns {Promise} + */ + static async identify(item: Item): Promise { + if (!item) { + warn(`Cannot identify a no item`, true); + return; + } + const origData = item.getFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); + if (!origData) { + warn(`Cannot identify a no mistify item`, true); + return; + } + // things to keep from mystified item: + // delete origData._id; + delete origData.permission; + delete origData.folder; + + const hook = Hooks.call(`${CONSTANTS.MODULE_NAME}:onIdentifyItem`, item, origData); + if (hook !== false) { + await item.update(origData, { diff: false }); + await item.unsetFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); + // If there was nested origData, carry it over. + const origDataOrigData = getProperty(origData.flags, `${CONSTANTS.MODULE_NAME}.origData`); + await item.setFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA, origDataOrigData); + } + return item; + } + + /** + * + * @param {Item} item + * @return {boolean} + */ + static isMystified(item: Item): boolean { + if (!item) { + return false; + } + const origData = item.getFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); + return origData !== undefined; + } + + /** + * + * @param {Item} item + * @return {Object} + */ + static getOrigData(item: Item): MystifiedData { + return item.getFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); + } + + /** + * + * @param {string} uuid + * @return {boolean} + */ + static async isUuidMystified(uuid: string) { + if (!uuid) { + return false; + } + const item = await this._itemFromUuid(uuid); + if (!item) { + warn(`No item found for uuid '${uuid}'`, true); + return false; + } + const origData = item.getFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); + return origData !== undefined; + } + + /** + * + * @param {MystifiedData} origData + * @returns {{img: String, name: String, type: String, data: Object}} + * @private + */ + static _getMystifiedData(origData: MystifiedData): MystifiedData { + const mystifiedData = this._getMystifiedMeta(origData); + const itemProperties = this._getDefaultProperties(origData); + + for (const property of itemProperties) { + // const propertyTmp = "data." + property; + // const valueTmp = getProperty(origData, propertyTmp); + // setProperty(mystifiedData, propertyTmp, valueTmp); + if (property) { + let propertyTmp: string | undefined = undefined; + if (property.startsWith("system.")) { + propertyTmp = property; + } else { + propertyTmp = "system." + property; + } + const valueTmp = getProperty(origData, propertyTmp); + setProperty(mystifiedData, propertyTmp, valueTmp); + } else { + warn(`Cannot set the property '${property}' maybe is a issue ?`); + } + } + + if (this.keepOriginalImage()) { + mystifiedData.img = origData.img; + } + + return mystifiedData; + } + + /** + * + * @param {Object} origData + * @returns {Array} + * @private + */ + static _getDefaultProperties(origData) { + let itemProperties = this._getTypeProperties(origData); + itemProperties = Object.entries(itemProperties) + .filter((p) => p[1]) + .map((p) => p[0]); + + return itemProperties; + } + + /** + * + * @param {Object} origData + * @return {Object} + * @private + */ + static _getTypeProperties(origData) { + const defaultProperties = game.settings.get(CONSTANTS.MODULE_NAME, "itemProperties"); + return defaultProperties[origData.type]; + } + + static keepOriginalImage() { + return game.settings.get(CONSTANTS.MODULE_NAME, "keepOldIcon"); + } + + /** + * + * @param {Object} origData + * @returns {{img: String, name: String, type: String}} + * @private + */ + static _getMystifiedMeta(origData): MystifiedData { + const iconSettings = game.settings.get(CONSTANTS.MODULE_NAME, "defaultIcons"); + const iconType = + getProperty(iconSettings, origData.type) || + `/modules/${CONSTANTS.MODULE_NAME}/icons/${CONSTANTS.DEFAULT_ICON}`; + + return { + name: i18n(`${CONSTANTS.MODULE_NAME}.NewMystified`), + type: origData.type, + img: iconType + }; + } + + /** + * + * @param {string} uuid + * @returns {Promise} + * @private + */ + static async _itemFromUuid(uuid: string): Promise { + return this._uuidToDocument(uuid); + // const parts = uuid.split("."); + // const [entityName, entityId, embeddedName, embeddedId] = parts; + + // if (embeddedName === "OwnedItem" || embeddedName === "Item") { + // if (parts.length === 4) { + // const actor = game.actors?.get(entityId); + // if (!actor) { + // return undefined; + // } + // return actor.items.get(embeddedId); + // } + // } else { + // return await fromUuid(uuid); + // } + // return; + } + + // /** + // * + // * @param {string} packId + // * @param {string} itemId + // * @return {Promise.} + // * @deprecated do not use this anymore + // * @private + // */ + // static async _getItemFromPack(packId:string, itemId:string) { + // const pack = >game.packs.get(packId); + // if (pack.documentName !== "Item") { + // return null; + // } + // return await pack.getDocument(itemId).then((ent) => { + // //delete ent?._id; + // //@ts-ignore + // if (ent?._id) { + // //@ts-ignore + // ent._id = ""; + // } + // return ent; + // }); + // } + + static async _uuidToDocument(uuid) { + const parts = uuid.split("."); + let result: any | null = null; + if (parts[0] === "Compendium") { + const pack = game["packs"].get(parts[1] + "." + parts[2]); + if (pack !== undefined) { + result = await pack.getDocument(parts[3]); + } + } else { + result = await fromUuid(uuid); + } + if (result === null) { + error(`Document Not Found for uuid ${uuid}`); + result = null; + } + return result; + } } diff --git a/src/modules/ForienUnidentifiedItemsItem.ts b/src/modules/ForienUnidentifiedItemsItem.ts index 99a29b0..8c68467 100644 --- a/src/modules/ForienUnidentifiedItemsItem.ts +++ b/src/modules/ForienUnidentifiedItemsItem.ts @@ -2,14 +2,14 @@ import API from "./api"; import { MystifiedFlags } from "./ForienUnidentifiedItemsModels"; export default function registerItemClassMethod() { - //@ts-ignore - CONFIG.Item.documentClass.prototype.isMystified = function isMystified() { - return API.isMystified(this); - }; + //@ts-ignore + CONFIG.Item.documentClass.prototype.isMystified = function isMystified() { + return API.isMystified(this); + }; - Object.defineProperty(CONFIG.Item.documentClass.prototype, MystifiedFlags.ORIG_DATA, { - get: function origData() { - return API.getOrigData(this); - } - }); + Object.defineProperty(CONFIG.Item.documentClass.prototype, MystifiedFlags.ORIG_DATA, { + get: function origData() { + return API.getOrigData(this); + } + }); } diff --git a/src/modules/ForienUnidentifiedItemsItemSheet.ts b/src/modules/ForienUnidentifiedItemsItemSheet.ts index 7d8df3a..e8930e0 100644 --- a/src/modules/ForienUnidentifiedItemsItemSheet.ts +++ b/src/modules/ForienUnidentifiedItemsItemSheet.ts @@ -4,130 +4,130 @@ import { MystifiedData, MystifiedFlags } from "./ForienUnidentifiedItemsModels"; import { i18n } from "./lib/lib"; export default function registerDerivedItemSheetClass() { - //@ts-ignore - for (const k in CONFIG.Item.sheetClasses) { - //@ts-ignore - for (const l in CONFIG.Item.sheetClasses[k]) { - //@ts-ignore - const cls = CONFIG.Item.sheetClasses[k][l].cls; - //@ts-ignore - CONFIG.Item.sheetClasses[k][l].cls = getItemSheetClass(cls, l); - } - } + //@ts-ignore + for (const k in CONFIG.Item.sheetClasses) { + //@ts-ignore + for (const l in CONFIG.Item.sheetClasses[k]) { + //@ts-ignore + const cls = CONFIG.Item.sheetClasses[k][l].cls; + //@ts-ignore + CONFIG.Item.sheetClasses[k][l].cls = getItemSheetClass(cls, l); + } + } } function getItemSheetClass(cls, sheet) { - const ParentClass = cls; + const ParentClass = cls; - const ItemClass = class extends ParentClass { - constructor(...args) { - super(...args); - this.name = sheet.split(".")[1]; - } + const ItemClass = class extends ParentClass { + constructor(...args) { + super(...args); + this.name = sheet.split(".")[1]; + } - /** - * Adds `[Mystified]` to the windows title if item is Mystified - * Adds `[Original]` to the windows title if item is Original - * @return {string} - */ - get title() { - let title = super.title; - if (!game.user?.isGM) { - return title; - } - if (this.item.isMystified()) { - title = "[" + i18n(`${CONSTANTS.MODULE_NAME}.Item.Mystified`) + "] " + `${title}`; - } - if (this.item.isAbstract) { - title = "[" + i18n(`${CONSTANTS.MODULE_NAME}.Item.Original`) + "] " + `${title}`; - } - return title; - } + /** + * Adds `[Mystified]` to the windows title if item is Mystified + * Adds `[Original]` to the windows title if item is Original + * @return {string} + */ + get title() { + let title = super.title; + if (!game.user?.isGM) { + return title; + } + if (this.item.isMystified()) { + title = "[" + i18n(`${CONSTANTS.MODULE_NAME}.Item.Mystified`) + "] " + `${title}`; + } + if (this.item.isAbstract) { + title = "[" + i18n(`${CONSTANTS.MODULE_NAME}.Item.Original`) + "] " + `${title}`; + } + return title; + } - /** - * @override - * - * @hook "forien-unidentified-items:getItemPermissions" - */ - _getHeaderButtons() { - const buttons = super._getHeaderButtons(); - const isAbstract = this.item.isAbstract || false; - const removeLabelButtonsSheetHeader = ( - game.settings.get(CONSTANTS.MODULE_NAME, "removeLabelButtonsSheetHeader") - ); + /** + * @override + * + * @hook "forien-unidentified-items:getItemPermissions" + */ + _getHeaderButtons() { + const buttons = super._getHeaderButtons(); + const isAbstract = this.item.isAbstract || false; + const removeLabelButtonsSheetHeader = ( + game.settings.get(CONSTANTS.MODULE_NAME, "removeLabelButtonsSheetHeader") + ); - let permissions = { - canIdentify: game.user?.isGM, - canPeek: game.user?.isGM, - canMystify: game.user?.isGM - }; - const hookPermissions = duplicate(permissions); - Hooks.call(`${CONSTANTS.MODULE_NAME}:getItemPermissions`, this.item, hookPermissions); - permissions = mergeObject(permissions, hookPermissions); + let permissions = { + canIdentify: game.user?.isGM, + canPeek: game.user?.isGM, + canMystify: game.user?.isGM + }; + const hookPermissions = duplicate(permissions); + Hooks.call(`${CONSTANTS.MODULE_NAME}:getItemPermissions`, this.item, hookPermissions); + permissions = mergeObject(permissions, hookPermissions); - const origData = this.item.getFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); + const origData = this.item.getFlag(CONSTANTS.MODULE_NAME, MystifiedFlags.ORIG_DATA); - if (origData) { - if (permissions.canIdentify && !isAbstract) { - buttons.unshift({ - label: removeLabelButtonsSheetHeader ? "" : `${CONSTANTS.MODULE_NAME}.Identify`, - class: "forien-unidentified-items-identify-item", - icon: "fas fa-search", - onclick: (ev) => { - API.identify(this.item); - } - }); - } + if (origData) { + if (permissions.canIdentify && !isAbstract) { + buttons.unshift({ + label: removeLabelButtonsSheetHeader ? "" : `${CONSTANTS.MODULE_NAME}.Identify`, + class: "forien-unidentified-items-identify-item", + icon: "fas fa-search", + onclick: (ev) => { + API.identify(this.item); + } + }); + } - if (permissions.canPeek) { - buttons.unshift({ - label: removeLabelButtonsSheetHeader ? "" : `${CONSTANTS.MODULE_NAME}.Peek`, - class: "forien-unidentified-items-peek-original-item", - icon: "far fa-eye", - onclick: (ev) => { - //@ts-ignore - const entity = new CONFIG.Item.documentClass(origData, { editable: false }); - //@ts-ignore - entity.isAbstract = true; - const sheetTmp = entity.sheet; - sheetTmp?.render(true); - } - }); - } - } else { - if (permissions.canMystify && !isAbstract) { - if (this.item.isOwned) { - buttons.unshift({ - label: removeLabelButtonsSheetHeader ? "" : `${CONSTANTS.MODULE_NAME}.Mystify`, - class: "forien-unidentified-items-mystify-item", - icon: "far fa-eye-slash", - onclick: (ev) => { - API.mystifyReplace(this.item.uuid); - } - }); - } else { - buttons.unshift({ - label: removeLabelButtonsSheetHeader ? "" : `${CONSTANTS.MODULE_NAME}.Mystify`, - class: "forien-unidentified-items-mystify-item", - icon: "far fa-eye-slash", - onclick: (ev) => { - API.mystify(this.item.uuid); - } - }); - } - } - } + if (permissions.canPeek) { + buttons.unshift({ + label: removeLabelButtonsSheetHeader ? "" : `${CONSTANTS.MODULE_NAME}.Peek`, + class: "forien-unidentified-items-peek-original-item", + icon: "far fa-eye", + onclick: (ev) => { + //@ts-ignore + const entity = new CONFIG.Item.documentClass(origData, { editable: false }); + //@ts-ignore + entity.isAbstract = true; + const sheetTmp = entity.sheet; + sheetTmp?.render(true); + } + }); + } + } else { + if (permissions.canMystify && !isAbstract) { + if (this.item.isOwned) { + buttons.unshift({ + label: removeLabelButtonsSheetHeader ? "" : `${CONSTANTS.MODULE_NAME}.Mystify`, + class: "forien-unidentified-items-mystify-item", + icon: "far fa-eye-slash", + onclick: (ev) => { + API.mystifyReplace(this.item.uuid); + } + }); + } else { + buttons.unshift({ + label: removeLabelButtonsSheetHeader ? "" : `${CONSTANTS.MODULE_NAME}.Mystify`, + class: "forien-unidentified-items-mystify-item", + icon: "far fa-eye-slash", + onclick: (ev) => { + API.mystify(this.item.uuid); + } + }); + } + } + } - return buttons; - } + return buttons; + } - async _updateObject(...args) { - if (this.item.isAbstract) { - return this; - } - return super._updateObject(...args); - } - }; + async _updateObject(...args) { + if (this.item.isAbstract) { + return this; + } + return super._updateObject(...args); + } + }; - return ItemClass; + return ItemClass; } diff --git a/src/modules/ForienUnidentifiedItemsModels.ts b/src/modules/ForienUnidentifiedItemsModels.ts index 362670c..e473cc7 100644 --- a/src/modules/ForienUnidentifiedItemsModels.ts +++ b/src/modules/ForienUnidentifiedItemsModels.ts @@ -1,17 +1,17 @@ export class MystifiedData { - isAbstract?: boolean; - _id?: string | null | undefined; - name: string; - type: string; - img?: string | null | undefined; - system?: any | null | undefined; - effects?: any | null | undefined; - folder?: any | null | undefined; - sort?: number | null | undefined; - permission?: any | null | undefined; - flags?: any; + isAbstract?: boolean; + _id?: string | null | undefined; + name: string; + type: string; + img?: string | null | undefined; + system?: any | null | undefined; + effects?: any | null | undefined; + folder?: any | null | undefined; + sort?: number | null | undefined; + permission?: any | null | undefined; + flags?: any; } export enum MystifiedFlags { - ORIG_DATA = "origData" + ORIG_DATA = "origData" } diff --git a/src/modules/api.ts b/src/modules/api.ts index d194eeb..e142f82 100644 --- a/src/modules/api.ts +++ b/src/modules/api.ts @@ -4,104 +4,104 @@ import type { MystifiedData } from "./ForienUnidentifiedItemsModels"; import Identification from "./ForienUnidentifiedItemsIdentification"; const API = { - get DEFAULT_PROPERTIES(): any { - return game.settings.get(CONSTANTS.MODULE_NAME, "itemProperties"); - }, + get DEFAULT_PROPERTIES(): any { + return game.settings.get(CONSTANTS.MODULE_NAME, "itemProperties"); + }, - /** - * The attributes used to track dynamic attributes in this system - * - * @returns {array} - */ - get DEFAULT_ICONS(): DefaultIcons { - return game.settings.get(CONSTANTS.MODULE_NAME, "defaultIcons"); - }, + /** + * The attributes used to track dynamic attributes in this system + * + * @returns {array} + */ + get DEFAULT_ICONS(): DefaultIcons { + return game.settings.get(CONSTANTS.MODULE_NAME, "defaultIcons"); + }, - /** - * - * @hook 'forien-unidentified-items:onMystifyItem' - * - * @param {string} itemUuid - * @param {Object} options - * @param {boolean} options.replace - set true to replace provided item with mystified one - * @param {MystifiedData|undefined} options.mystifiedData - item data object that should become front of mystified item - * @returns {Promise} - */ - async mystify( - itemUuid: string, - options: { replace: boolean; mystifiedData: MystifiedData | undefined } = { - replace: false, - mystifiedData: undefined - } - ): Promise { - return await Identification.mystify(itemUuid, options); - }, + /** + * + * @hook 'forien-unidentified-items:onMystifyItem' + * + * @param {string} itemUuid + * @param {Object} options + * @param {boolean} options.replace - set true to replace provided item with mystified one + * @param {MystifiedData|undefined} options.mystifiedData - item data object that should become front of mystified item + * @returns {Promise} + */ + async mystify( + itemUuid: string, + options: { replace: boolean; mystifiedData: MystifiedData | undefined } = { + replace: false, + mystifiedData: undefined + } + ): Promise { + return await Identification.mystify(itemUuid, options); + }, - /** - * - * @param {string} itemUuid - * @returns {Promise} - */ - async mystifyReplace(itemUuid: string): Promise { - return await Identification.mystifyReplace(itemUuid); - }, + /** + * + * @param {string} itemUuid + * @returns {Promise} + */ + async mystifyReplace(itemUuid: string): Promise { + return await Identification.mystifyReplace(itemUuid); + }, - /** - * - * @param {string} itemUuid - * @returns {Promise} - */ - async mystifyAsDialog(itemUuid: string): Promise { - await Identification.mystifyAsDialog(itemUuid); - }, + /** + * + * @param {string} itemUuid + * @returns {Promise} + */ + async mystifyAsDialog(itemUuid: string): Promise { + await Identification.mystifyAsDialog(itemUuid); + }, - /** - * - * @param {string} itemUuid - * @param {object} source - * @returns {Promise} - */ - async mystifyAdvancedDialog(itemUuid: string, source: any = undefined): Promise { - await Identification.mystifyAdvancedDialog(itemUuid, source); - }, + /** + * + * @param {string} itemUuid + * @param {object} source + * @returns {Promise} + */ + async mystifyAdvancedDialog(itemUuid: string, source: any = undefined): Promise { + await Identification.mystifyAdvancedDialog(itemUuid, source); + }, - /** - * - * @hook 'forien-unidentified-items:onIdentifyItem' - * - * @param {Item} item - * @returns {Promise} - */ - async identify(item: Item): Promise { - return await Identification.identify(item); - }, + /** + * + * @hook 'forien-unidentified-items:onIdentifyItem' + * + * @param {Item} item + * @returns {Promise} + */ + async identify(item: Item): Promise { + return await Identification.identify(item); + }, - /** - * - * @param {Item} item - * @return {boolean} - */ - isMystified(item: Item): boolean { - return Identification.isMystified(item); - }, + /** + * + * @param {Item} item + * @return {boolean} + */ + isMystified(item: Item): boolean { + return Identification.isMystified(item); + }, - /** - * - * @param {Item} item - * @return {MystifiedData} - */ - getOrigData(item: Item): MystifiedData { - return Identification.getOrigData(item); - }, + /** + * + * @param {Item} item + * @return {MystifiedData} + */ + getOrigData(item: Item): MystifiedData { + return Identification.getOrigData(item); + }, - /** - * - * @param {string} uuid - * @return {boolean} - */ - async isUuidMystified(uuid): Promise { - return await Identification.isUuidMystified(uuid); - } + /** + * + * @param {string} uuid + * @return {boolean} + */ + async isUuidMystified(uuid): Promise { + return await Identification.isUuidMystified(uuid); + } }; export default API; diff --git a/src/modules/apps/DefaultIcons.ts b/src/modules/apps/DefaultIcons.ts index 03978ef..8b7c343 100644 --- a/src/modules/apps/DefaultIcons.ts +++ b/src/modules/apps/DefaultIcons.ts @@ -2,109 +2,109 @@ import CONSTANTS from "../constants"; import { i18n } from "../lib/lib"; export default class DefaultIcons extends FormApplication { - static get defaultOptions(): any { - const options = mergeObject(super.defaultOptions, { - id: "forien-unidentified-items-default-icons", - template: `/modules/${CONSTANTS.MODULE_NAME}/templates/settings-default-icons.html`, - title: i18n(`${CONSTANTS.MODULE_NAME}.Settings.defaultIcons.name`), - submitOnClose: true, - submitOnChange: false, - closeOnSubmit: true - }); - - if (game.system.id === "wfrp4e") { - options.classes.push("wfrp4e"); - } - return options; - } - - getData(options = {}): any { - const data: any = super.getData(); - data.types = this.getItemTypes(); - data.typeSettings = this.getSettings(); - data.options = this.options; - return data; - // return { - // types: this.getItemTypes(), - // propertySettings: this.getSettings(), - // options: this.options - // }; - } - - activateListeners(html): void { - super.activateListeners(html); - - html.on("change", "input", (event) => { - const input = $(event.currentTarget); - const type = input.attr("name"); - $(`#default-icon-img-${type}`).attr("src", String(input.val())); - }); - - html.on("click", ".file-picker", (event) => { - Hooks.once("closeFilePicker", () => { - const button = $(event.currentTarget); - const target = button.data("target"); - $(`#forien-unidentified-items-default-icons input[name=${target}]`).trigger("change"); - }); - }); - } - - async _updateObject(event, formData): Promise { - return await this.saveSettings(formData); - } - - getSettings(): DefaultIcons { - const settings = this.loadSettings(); - const types = this.getItemTypes(); - - for (const type of types) { - const setting: any = getProperty(settings, type); - if (!setting) { - settings[type] = this.getIcon(this.guessIcon(type)); - } - } - - return settings; - } - - guessIcon(type): string { - const modes = ["inv-unidentified", "unidentified"]; - const types = { - armor: ["armor", "armour", "equipment", "gear"], - book: ["Skill", "book", "career", "class", "feat", "skill", "specialization", "spellbook", "talent"], - emerald: ["ancestry", "crystal", "jewellery"], - knapsack: ["backpack", "container"], - loot: ["loot", "treasure"], - potion: ["consumable"], - sack: ["artifact", "goods", "trapping"], - scroll: ["ability", "enchantment", "magic", "prayer", "sorcery", "spell"], - tool: ["tool"] - }; - const mode = modes[Math.floor(Math.random() * modes.length)]; - let icon = mode; - - for (const iconType in types) { - if (types[iconType].includes(type)) { - icon = `${mode}-${iconType}`; - } - } - - return `${icon}.png`; - } - - loadSettings(): DefaultIcons { - return game.settings.get(CONSTANTS.MODULE_NAME, "defaultIcons"); - } - - async saveSettings(data): Promise { - return await game.settings.set(CONSTANTS.MODULE_NAME, "defaultIcons", data); - } - - getItemTypes(): string[] { - return Object.keys(game.system.model.Item); - } - - getIcon(icon): string { - return `/modules/${CONSTANTS.MODULE_NAME}/icons/${icon}`; - } + static get defaultOptions(): any { + const options = mergeObject(super.defaultOptions, { + id: "forien-unidentified-items-default-icons", + template: `/modules/${CONSTANTS.MODULE_NAME}/templates/settings-default-icons.html`, + title: i18n(`${CONSTANTS.MODULE_NAME}.Settings.defaultIcons.name`), + submitOnClose: true, + submitOnChange: false, + closeOnSubmit: true + }); + + if (game.system.id === "wfrp4e") { + options.classes.push("wfrp4e"); + } + return options; + } + + getData(options = {}): any { + const data: any = super.getData(); + data.types = this.getItemTypes(); + data.typeSettings = this.getSettings(); + data.options = this.options; + return data; + // return { + // types: this.getItemTypes(), + // propertySettings: this.getSettings(), + // options: this.options + // }; + } + + activateListeners(html): void { + super.activateListeners(html); + + html.on("change", "input", (event) => { + const input = $(event.currentTarget); + const type = input.attr("name"); + $(`#default-icon-img-${type}`).attr("src", String(input.val())); + }); + + html.on("click", ".file-picker", (event) => { + Hooks.once("closeFilePicker", () => { + const button = $(event.currentTarget); + const target = button.data("target"); + $(`#forien-unidentified-items-default-icons input[name=${target}]`).trigger("change"); + }); + }); + } + + async _updateObject(event, formData): Promise { + return await this.saveSettings(formData); + } + + getSettings(): DefaultIcons { + const settings = this.loadSettings(); + const types = this.getItemTypes(); + + for (const type of types) { + const setting: any = getProperty(settings, type); + if (!setting) { + settings[type] = this.getIcon(this.guessIcon(type)); + } + } + + return settings; + } + + guessIcon(type): string { + const modes = ["inv-unidentified", "unidentified"]; + const types = { + armor: ["armor", "armour", "equipment", "gear"], + book: ["Skill", "book", "career", "class", "feat", "skill", "specialization", "spellbook", "talent"], + emerald: ["ancestry", "crystal", "jewellery"], + knapsack: ["backpack", "container"], + loot: ["loot", "treasure"], + potion: ["consumable"], + sack: ["artifact", "goods", "trapping"], + scroll: ["ability", "enchantment", "magic", "prayer", "sorcery", "spell"], + tool: ["tool"] + }; + const mode = modes[Math.floor(Math.random() * modes.length)]; + let icon = mode; + + for (const iconType in types) { + if (types[iconType].includes(type)) { + icon = `${mode}-${iconType}`; + } + } + + return `${icon}.png`; + } + + loadSettings(): DefaultIcons { + return game.settings.get(CONSTANTS.MODULE_NAME, "defaultIcons"); + } + + async saveSettings(data): Promise { + return await game.settings.set(CONSTANTS.MODULE_NAME, "defaultIcons", data); + } + + getItemTypes(): string[] { + return Object.keys(game.system.model.Item); + } + + getIcon(icon): string { + return `/modules/${CONSTANTS.MODULE_NAME}/icons/${icon}`; + } } diff --git a/src/modules/apps/ItemProperties.ts b/src/modules/apps/ItemProperties.ts index ed4e874..ce3d118 100644 --- a/src/modules/apps/ItemProperties.ts +++ b/src/modules/apps/ItemProperties.ts @@ -1,97 +1,97 @@ import CONSTANTS from "../constants"; import { i18n } from "../lib/lib"; export default class ItemProperties extends FormApplication { - static get defaultOptions(): any { - const options = mergeObject(super.defaultOptions, { - id: "forien-unidentified-items-item-properties", - template: `/modules/${CONSTANTS.MODULE_NAME}/templates/settings-item-properties.html`, - title: i18n(`${CONSTANTS.MODULE_NAME}.Settings.itemProperties.name`), - submitOnClose: true, - submitOnChange: false, - closeOnSubmit: true, - resizable: true, - width: 640, - height: 560, - tabs: [{ navSelector: ".nav-tabs", contentSelector: ".nav-body" }] - }); + static get defaultOptions(): any { + const options = mergeObject(super.defaultOptions, { + id: "forien-unidentified-items-item-properties", + template: `/modules/${CONSTANTS.MODULE_NAME}/templates/settings-item-properties.html`, + title: i18n(`${CONSTANTS.MODULE_NAME}.Settings.itemProperties.name`), + submitOnClose: true, + submitOnChange: false, + closeOnSubmit: true, + resizable: true, + width: 640, + height: 560, + tabs: [{ navSelector: ".nav-tabs", contentSelector: ".nav-body" }] + }); - if (game.system.id === "wfrp4e") { - options.classes.push("wfrp4e"); - } - return options; - } + if (game.system.id === "wfrp4e") { + options.classes.push("wfrp4e"); + } + return options; + } - getData(options = {}): any { - const data: any = super.getData(); - (data.types = this.getItemTypes()), (data.propertySettings = this.getSettings()), (data.options = this.options); - return data; - // return { - // types: this.getItemTypes(), - // propertySettings: this.getSettings(), - // options: this.options - // }; - } + getData(options = {}): any { + const data: any = super.getData(); + (data.types = this.getItemTypes()), (data.propertySettings = this.getSettings()), (data.options = this.options); + return data; + // return { + // types: this.getItemTypes(), + // propertySettings: this.getSettings(), + // options: this.options + // }; + } - activateListeners(html): void { - super.activateListeners(html); - } + activateListeners(html): void { + super.activateListeners(html); + } - async _updateObject(event, formData): Promise { - const data = Object.entries(formData); - const settings = {}; + async _updateObject(event, formData): Promise { + const data = Object.entries(formData); + const settings = {}; - data.sort().map((d) => { - const type = d[0].split(".", 1)[0]; - const property = d[0].replace(`${type}.`, ""); - const value = d[1]; + data.sort().map((d) => { + const type = d[0].split(".", 1)[0]; + const property = d[0].replace(`${type}.`, ""); + const value = d[1]; - if (settings[type] === undefined) { - settings[type] = {}; - } - settings[type][property] = value; - }); + if (settings[type] === undefined) { + settings[type] = {}; + } + settings[type][property] = value; + }); - return await this.saveSettings(settings); - } + return await this.saveSettings(settings); + } - getProperties(): Map { - const types = Object.entries(game.system.model.Item); - const properties = new Map(types); - for (const [key, value] of properties) { - properties.set(key, Object.keys(flattenObject(value))); - } - return properties; - } + getProperties(): Map { + const types = Object.entries(game.system.model.Item); + const properties = new Map(types); + for (const [key, value] of properties) { + properties.set(key, Object.keys(flattenObject(value))); + } + return properties; + } - getSettings(): any { - const settings: any = this.loadSettings(); - const types = this.getItemTypes(); - const properties: Map = this.getProperties(); + getSettings(): any { + const settings: any = this.loadSettings(); + const types = this.getItemTypes(); + const properties: Map = this.getProperties(); - for (const type of types) { - const setting = getProperty(settings, type); - if (!setting) { - const typeProperties = properties.get(type); - settings[type] = typeProperties.reduce((a, b) => ((a[b] = false), a), {}); - } - } + for (const type of types) { + const setting = getProperty(settings, type); + if (!setting) { + const typeProperties = properties.get(type); + settings[type] = typeProperties.reduce((a, b) => ((a[b] = false), a), {}); + } + } - return settings; - } + return settings; + } - loadSettings(): any { - return game.settings.get(CONSTANTS.MODULE_NAME, "itemProperties"); - } + loadSettings(): any { + return game.settings.get(CONSTANTS.MODULE_NAME, "itemProperties"); + } - async saveSettings(data) { - return await game.settings.set(CONSTANTS.MODULE_NAME, "itemProperties", data); - } + async saveSettings(data) { + return await game.settings.set(CONSTANTS.MODULE_NAME, "itemProperties", data); + } - getItemTypes() { - return Object.keys(game.system.model.Item); - } + getItemTypes() { + return Object.keys(game.system.model.Item); + } - getIcon(icon) { - return `/modules/${CONSTANTS.MODULE_NAME}/icons/${icon}`; - } + getIcon(icon) { + return `/modules/${CONSTANTS.MODULE_NAME}/icons/${icon}`; + } } diff --git a/src/modules/constants.ts b/src/modules/constants.ts index ca0ebab..ea67649 100644 --- a/src/modules/constants.ts +++ b/src/modules/constants.ts @@ -1,7 +1,7 @@ const CONSTANTS = { - MODULE_NAME: "forien-unidentified-items", - PATH: `modules/forien-unidentified-items/`, - DEFAULT_ICON: "unidentified.png" + MODULE_NAME: "forien-unidentified-items", + PATH: `modules/forien-unidentified-items/`, + DEFAULT_ICON: "unidentified.png" }; CONSTANTS.PATH = `modules/${CONSTANTS.MODULE_NAME}/`; diff --git a/src/modules/lib/lib.ts b/src/modules/lib/lib.ts index adba1cb..51c40cc 100644 --- a/src/modules/lib/lib.ts +++ b/src/modules/lib/lib.ts @@ -5,66 +5,66 @@ import CONSTANTS from "../constants"; // ============================= export function isGMConnected(): boolean { - return Array.from(game.users).find((user) => user.isGM && user.active) ? true : false; + return Array.from(game.users).find((user) => user.isGM && user.active) ? true : false; } export function wait(ms) { - return new Promise((resolve) => setTimeout(resolve, ms)); + return new Promise((resolve) => setTimeout(resolve, ms)); } // export let debugEnabled = 0; // 0 = none, warnings = 1, debug = 2, all = 3 export function debug(msg, args = "") { - if (game.settings.get(CONSTANTS.MODULE_NAME, "debug")) { - console.log(`DEBUG | ${CONSTANTS.MODULE_NAME} | ${msg}`, args); - } - return msg; + if (game.settings.get(CONSTANTS.MODULE_NAME, "debug")) { + console.log(`DEBUG | ${CONSTANTS.MODULE_NAME} | ${msg}`, args); + } + return msg; } export function log(message) { - message = `${CONSTANTS.MODULE_NAME} | ${message}`; - console.log(message.replace("
", "\n")); - return message; + message = `${CONSTANTS.MODULE_NAME} | ${message}`; + console.log(message.replace("
", "\n")); + return message; } export function notify(message) { - message = `${CONSTANTS.MODULE_NAME} | ${message}`; - ui.notifications?.notify(message); - console.log(message.replace("
", "\n")); - return message; + message = `${CONSTANTS.MODULE_NAME} | ${message}`; + ui.notifications?.notify(message); + console.log(message.replace("
", "\n")); + return message; } export function info(info, notify = false, permanent = false) { - info = `${CONSTANTS.MODULE_NAME} | ${info}`; - if (notify) ui.notifications?.info(info, { permanent: permanent }); - console.log(info.replace("
", "\n")); - return info; + info = `${CONSTANTS.MODULE_NAME} | ${info}`; + if (notify) ui.notifications?.info(info, { permanent: permanent }); + console.log(info.replace("
", "\n")); + return info; } export function warn(warning, notify = false) { - warning = `${CONSTANTS.MODULE_NAME} | ${warning}`; - if (notify) ui.notifications?.warn(warning); - console.warn(warning.replace("
", "\n")); - return warning; + warning = `${CONSTANTS.MODULE_NAME} | ${warning}`; + if (notify) ui.notifications?.warn(warning); + console.warn(warning.replace("
", "\n")); + return warning; } export function error(error, notify = true) { - error = `${CONSTANTS.MODULE_NAME} | ${error}`; - if (notify) ui.notifications?.error(error); - return new Error(error.replace("
", "\n")); + error = `${CONSTANTS.MODULE_NAME} | ${error}`; + if (notify) ui.notifications?.error(error); + return new Error(error.replace("
", "\n")); } export function timelog(message): void { - warn(Date.now(), message); + warn(Date.now(), message); } export const i18n = (key: string): string => { - return game.i18n.localize(key)?.trim(); + return game.i18n.localize(key)?.trim(); }; export const i18nFormat = (key: string, data = {}): string => { - return game.i18n.format(key, data)?.trim(); + return game.i18n.format(key, data)?.trim(); }; // export const setDebugLevel = (debugText: string): void => { @@ -74,7 +74,7 @@ export const i18nFormat = (key: string, data = {}): string => { // }; export function dialogWarning(message, icon = "fas fa-exclamation-triangle") { - return `

+ return `



${CONSTANTS.MODULE_NAME}

${message} @@ -90,7 +90,7 @@ export function dialogWarning(message, icon = "fas fa-exclamation-triangle") { * @returns */ export function enumKeys(obj: O): K[] { - return Object.keys(obj).filter((k) => Number.isNaN(+k)) as K[]; + return Object.keys(obj).filter((k) => Number.isNaN(+k)) as K[]; } /** @@ -100,34 +100,34 @@ export function enumKeys(obj: O): * @param prop */ export function mergeByProperty(target: any[], source: any[], prop: any) { - source.forEach((sourceElement) => { - const targetElement = target.find((targetElement) => { - return sourceElement[prop] === targetElement[prop]; - }); - targetElement ? Object.assign(targetElement, sourceElement) : target.push(sourceElement); - }); - return target; + source.forEach((sourceElement) => { + const targetElement = target.find((targetElement) => { + return sourceElement[prop] === targetElement[prop]; + }); + targetElement ? Object.assign(targetElement, sourceElement) : target.push(sourceElement); + }); + return target; } /** * Returns the first selected token */ export function getFirstPlayerTokenSelected(): Token | null { - // Get first token ownted by the player - const selectedTokens = canvas.tokens?.controlled; - if (selectedTokens.length > 1) { - //iteractionFailNotification(i18n("foundryvtt-arms-reach.warningNoSelectMoreThanOneToken")); - return null; - } - if (!selectedTokens || selectedTokens.length === 0) { - //if(game.user.character.token){ - // //@ts-ignore - // return game.user.character.token; - //}else{ - return null; - //} - } - return selectedTokens[0]; + // Get first token ownted by the player + const selectedTokens = canvas.tokens?.controlled; + if (selectedTokens.length > 1) { + //iteractionFailNotification(i18n("foundryvtt-arms-reach.warningNoSelectMoreThanOneToken")); + return null; + } + if (!selectedTokens || selectedTokens.length === 0) { + //if(game.user.character.token){ + // //@ts-ignore + // return game.user.character.token; + //}else{ + return null; + //} + } + return selectedTokens[0]; } /** @@ -135,58 +135,58 @@ export function getFirstPlayerTokenSelected(): Token | null { * note: ex getSelectedOrOwnedToken */ export function getFirstPlayerToken(): Token | null { - // Get controlled token - let token: Token; - const controlled: Token[] = canvas.tokens?.controlled; - // Do nothing if multiple tokens are selected - if (controlled.length && controlled.length > 1) { - //iteractionFailNotification(i18n("foundryvtt-arms-reach.warningNoSelectMoreThanOneToken")); - return null; - } - // If exactly one token is selected, take that - token = controlled[0]; - if (!token) { - if (!controlled.length || controlled.length === 0) { - // If no token is selected use the token of the users character - token = canvas.tokens?.placeables.find((token) => token.actor?.id === game.user?.character?.id); - } - // If no token is selected use the first owned token of the users character you found - if (!token) { - token = canvas.tokens?.ownedTokens[0]; - } - } - return token; + // Get controlled token + let token: Token; + const controlled: Token[] = canvas.tokens?.controlled; + // Do nothing if multiple tokens are selected + if (controlled.length && controlled.length > 1) { + //iteractionFailNotification(i18n("foundryvtt-arms-reach.warningNoSelectMoreThanOneToken")); + return null; + } + // If exactly one token is selected, take that + token = controlled[0]; + if (!token) { + if (!controlled.length || controlled.length === 0) { + // If no token is selected use the token of the users character + token = canvas.tokens?.placeables.find((token) => token.actor?.id === game.user?.character?.id); + } + // If no token is selected use the first owned token of the users character you found + if (!token) { + token = canvas.tokens?.ownedTokens[0]; + } + } + return token; } function getElevationToken(token: Token): number { - const base = token.document; - return getElevationPlaceableObject(base); + const base = token.document; + return getElevationPlaceableObject(base); } function getElevationWall(wall: Wall): number { - const base = wall.document; - return getElevationPlaceableObject(base); + const base = wall.document; + return getElevationPlaceableObject(base); } function getElevationPlaceableObject(placeableObject: any): number { - let base = placeableObject; - if (base.document) { - base = base.document; - } - const base_elevation = - //@ts-ignore - typeof _levels !== "undefined" && - //@ts-ignore - _levels?.advancedLOS && - (placeableObject instanceof Token || placeableObject instanceof TokenDocument) - ? //@ts-ignore - _levels.getTokenLOSheight(placeableObject) - : base.elevation ?? - base.flags["levels"]?.elevation ?? - base.flags["levels"]?.rangeBottom ?? - base.flags["wallHeight"]?.wallHeightBottom ?? - 0; - return base_elevation; + let base = placeableObject; + if (base.document) { + base = base.document; + } + const base_elevation = + //@ts-ignore + typeof _levels !== "undefined" && + //@ts-ignore + _levels?.advancedLOS && + (placeableObject instanceof Token || placeableObject instanceof TokenDocument) + ? //@ts-ignore + _levels.getTokenLOSheight(placeableObject) + : base.elevation ?? + base.flags["levels"]?.elevation ?? + base.flags["levels"]?.rangeBottom ?? + base.flags["wallHeight"]?.wallHeightBottom ?? + 0; + return base_elevation; } // ============================= diff --git a/src/modules/preloadTemplates.ts b/src/modules/preloadTemplates.ts index 85f2db8..a1d33bf 100644 --- a/src/modules/preloadTemplates.ts +++ b/src/modules/preloadTemplates.ts @@ -1,12 +1,12 @@ import CONSTANTS from "./constants"; export const preloadTemplates = async function () { - const templatePaths = [ - // Add paths to "modules/VariantEncumbrance/templates" - `/modules/${CONSTANTS.MODULE_NAME}/templates/mystify-advanced.html`, - `/modules/${CONSTANTS.MODULE_NAME}/templates/settings-default-icons.html`, - `/modules/${CONSTANTS.MODULE_NAME}/templates/settings-item-properties.html` - // `/modules/${CONSTANTS.MODULE_NAME}/templates/welcome-screen.html`, - ]; - return loadTemplates(templatePaths); + const templatePaths = [ + // Add paths to "modules/VariantEncumbrance/templates" + `/modules/${CONSTANTS.MODULE_NAME}/templates/mystify-advanced.html`, + `/modules/${CONSTANTS.MODULE_NAME}/templates/settings-default-icons.html`, + `/modules/${CONSTANTS.MODULE_NAME}/templates/settings-item-properties.html` + // `/modules/${CONSTANTS.MODULE_NAME}/templates/welcome-screen.html`, + ]; + return loadTemplates(templatePaths); }; diff --git a/src/modules/settings.ts b/src/modules/settings.ts index bc24bb0..9cfcd5d 100644 --- a/src/modules/settings.ts +++ b/src/modules/settings.ts @@ -6,251 +6,251 @@ import { dialogWarning, i18n, info, log, warn } from "./lib/lib"; import { SYSTEMS } from "./systems"; export default function registerSettings() { - game.settings.registerMenu(CONSTANTS.MODULE_NAME, "resetAllSettings", { - name: `${CONSTANTS.MODULE_NAME}.Settings.reset.name`, - hint: `${CONSTANTS.MODULE_NAME}.Settings.reset.hint`, - icon: "fas fa-coins", - type: ResetSettingsDialog, - restricted: true - }); - - // ===================================================================== - - //registerSettingMenus(); - game.settings.registerMenu(CONSTANTS.MODULE_NAME, "defaultIcons", { - name: `${CONSTANTS.MODULE_NAME}.Settings.defaultIcons.name`, - label: `${CONSTANTS.MODULE_NAME}.Settings.defaultIcons.label`, - hint: `${CONSTANTS.MODULE_NAME}.Settings.defaultIcons.hint`, - icon: "fas fa-image", - type: DefaultIcons, - restricted: true - }); - - game.settings.registerMenu(CONSTANTS.MODULE_NAME, "itemProperties", { - name: `${CONSTANTS.MODULE_NAME}.Settings.itemProperties.name`, - label: `${CONSTANTS.MODULE_NAME}.Settings.itemProperties.label`, - hint: `${CONSTANTS.MODULE_NAME}.Settings.itemProperties.hint`, - icon: "fas fa-cogs", - type: ItemProperties, - restricted: true - }); - - game.settings.register(CONSTANTS.MODULE_NAME, "removeLabelButtonsSheetHeader", { - name: i18n(`${CONSTANTS.MODULE_NAME}.Settings.removeLabelButtonsSheetHeader.name`), - hint: i18n(`${CONSTANTS.MODULE_NAME}.Settings.removeLabelButtonsSheetHeader.hint`), - scope: "world", - config: true, - type: Boolean, - default: true - }); - - game.settings.register(CONSTANTS.MODULE_NAME, "keepOldIcon", { - name: `${CONSTANTS.MODULE_NAME}.Settings.keepOldIcon.name`, - hint: `${CONSTANTS.MODULE_NAME}.Settings.keepOldIcon.hint`, - scope: "world", - config: true, - default: false, - type: Boolean - }); - - game.settings.register(CONSTANTS.MODULE_NAME, "allowNestedItems", { - name: `${CONSTANTS.MODULE_NAME}.Settings.allowNestedItems.Name`, - hint: `${CONSTANTS.MODULE_NAME}.Settings.allowNestedItems.Hint`, - scope: "world", - config: true, - default: false, - type: Boolean - }); - - // ===================================================================== - - game.settings.register(CONSTANTS.MODULE_NAME, "debug", { - name: `${CONSTANTS.MODULE_NAME}.Settings.debug.name`, - hint: `${CONSTANTS.MODULE_NAME}.Settings.debug.hint`, - scope: "client", - config: true, - default: false, - type: Boolean - }); - - game.settings.register(CONSTANTS.MODULE_NAME, "debugHooks", { - scope: "world", - config: false, - default: false, - type: Boolean - }); - - game.settings.register(CONSTANTS.MODULE_NAME, "systemFound", { - scope: "world", - config: false, - default: false, - type: Boolean - }); - - game.settings.register(CONSTANTS.MODULE_NAME, "systemNotFoundWarningShown", { - scope: "world", - config: false, - default: false, - type: Boolean - }); - - game.settings.register(CONSTANTS.MODULE_NAME, "preconfiguredSystem", { - name: `${CONSTANTS.MODULE_NAME}.Settings.preconfiguredSystem.name`, - hint: `${CONSTANTS.MODULE_NAME}.Settings.preconfiguredSystem.hint`, - scope: "world", - config: false, - default: false, - type: Boolean - }); - - // ======================================================================== - - const settings = defaultSettings(); - for (const [name, data] of Object.entries(settings)) { - game.settings.register(CONSTANTS.MODULE_NAME, name, data); - } - - // for (const [name, data] of Object.entries(otherSettings)) { - // game.settings.register(CONSTANTS.MODULE_NAME, name, data); - // } + game.settings.registerMenu(CONSTANTS.MODULE_NAME, "resetAllSettings", { + name: `${CONSTANTS.MODULE_NAME}.Settings.reset.name`, + hint: `${CONSTANTS.MODULE_NAME}.Settings.reset.hint`, + icon: "fas fa-coins", + type: ResetSettingsDialog, + restricted: true + }); + + // ===================================================================== + + //registerSettingMenus(); + game.settings.registerMenu(CONSTANTS.MODULE_NAME, "defaultIcons", { + name: `${CONSTANTS.MODULE_NAME}.Settings.defaultIcons.name`, + label: `${CONSTANTS.MODULE_NAME}.Settings.defaultIcons.label`, + hint: `${CONSTANTS.MODULE_NAME}.Settings.defaultIcons.hint`, + icon: "fas fa-image", + type: DefaultIcons, + restricted: true + }); + + game.settings.registerMenu(CONSTANTS.MODULE_NAME, "itemProperties", { + name: `${CONSTANTS.MODULE_NAME}.Settings.itemProperties.name`, + label: `${CONSTANTS.MODULE_NAME}.Settings.itemProperties.label`, + hint: `${CONSTANTS.MODULE_NAME}.Settings.itemProperties.hint`, + icon: "fas fa-cogs", + type: ItemProperties, + restricted: true + }); + + game.settings.register(CONSTANTS.MODULE_NAME, "removeLabelButtonsSheetHeader", { + name: i18n(`${CONSTANTS.MODULE_NAME}.Settings.removeLabelButtonsSheetHeader.name`), + hint: i18n(`${CONSTANTS.MODULE_NAME}.Settings.removeLabelButtonsSheetHeader.hint`), + scope: "world", + config: true, + type: Boolean, + default: true + }); + + game.settings.register(CONSTANTS.MODULE_NAME, "keepOldIcon", { + name: `${CONSTANTS.MODULE_NAME}.Settings.keepOldIcon.name`, + hint: `${CONSTANTS.MODULE_NAME}.Settings.keepOldIcon.hint`, + scope: "world", + config: true, + default: false, + type: Boolean + }); + + game.settings.register(CONSTANTS.MODULE_NAME, "allowNestedItems", { + name: `${CONSTANTS.MODULE_NAME}.Settings.allowNestedItems.Name`, + hint: `${CONSTANTS.MODULE_NAME}.Settings.allowNestedItems.Hint`, + scope: "world", + config: true, + default: false, + type: Boolean + }); + + // ===================================================================== + + game.settings.register(CONSTANTS.MODULE_NAME, "debug", { + name: `${CONSTANTS.MODULE_NAME}.Settings.debug.name`, + hint: `${CONSTANTS.MODULE_NAME}.Settings.debug.hint`, + scope: "client", + config: true, + default: false, + type: Boolean + }); + + game.settings.register(CONSTANTS.MODULE_NAME, "debugHooks", { + scope: "world", + config: false, + default: false, + type: Boolean + }); + + game.settings.register(CONSTANTS.MODULE_NAME, "systemFound", { + scope: "world", + config: false, + default: false, + type: Boolean + }); + + game.settings.register(CONSTANTS.MODULE_NAME, "systemNotFoundWarningShown", { + scope: "world", + config: false, + default: false, + type: Boolean + }); + + game.settings.register(CONSTANTS.MODULE_NAME, "preconfiguredSystem", { + name: `${CONSTANTS.MODULE_NAME}.Settings.preconfiguredSystem.name`, + hint: `${CONSTANTS.MODULE_NAME}.Settings.preconfiguredSystem.hint`, + scope: "world", + config: false, + default: false, + type: Boolean + }); + + // ======================================================================== + + const settings = defaultSettings(); + for (const [name, data] of Object.entries(settings)) { + game.settings.register(CONSTANTS.MODULE_NAME, name, data); + } + + // for (const [name, data] of Object.entries(otherSettings)) { + // game.settings.register(CONSTANTS.MODULE_NAME, name, data); + // } } class ResetSettingsDialog extends FormApplication { - constructor(...args) { - //@ts-ignore - super(...args); - //@ts-ignore - return new Dialog({ - title: game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.resetsettings.title`), - content: - '

' + - game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.resetsettings.content`) + - "

", - buttons: { - confirm: { - icon: '', - label: game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.resetsettings.confirm`), - callback: async () => { - const worldSettings = game.settings.storage - ?.get("world") - ?.filter((setting) => setting.key.startsWith(`${CONSTANTS.MODULE_NAME}.`)); - for (let setting of worldSettings) { - console.log(`Reset setting '${setting.key}'`); - await setting.delete(); - } - await applyDefaultSettings(); - window.location.reload(); - } - }, - cancel: { - icon: '', - label: game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.resetsettings.cancel`) - } - }, - default: "cancel" - }); - } - - async _updateObject(event: Event, formData?: object): Promise { - // do nothing - } + constructor(...args) { + //@ts-ignore + super(...args); + //@ts-ignore + return new Dialog({ + title: game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.resetsettings.title`), + content: + '

' + + game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.resetsettings.content`) + + "

", + buttons: { + confirm: { + icon: '', + label: game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.resetsettings.confirm`), + callback: async () => { + const worldSettings = game.settings.storage + ?.get("world") + ?.filter((setting) => setting.key.startsWith(`${CONSTANTS.MODULE_NAME}.`)); + for (let setting of worldSettings) { + console.log(`Reset setting '${setting.key}'`); + await setting.delete(); + } + await applyDefaultSettings(); + window.location.reload(); + } + }, + cancel: { + icon: '', + label: game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.resetsettings.cancel`) + } + }, + default: "cancel" + }); + } + + async _updateObject(event: Event, formData?: object): Promise { + // do nothing + } } async function applyDefaultSettings() { - const settings = defaultSettings(true); - for (const [name, data] of Object.entries(settings)) { - await game.settings.set(CONSTANTS.MODULE_NAME, name, data.default); - } - // const settings2 = otherSettings(true); - // for (const [name, data] of Object.entries(settings2)) { - // //@ts-ignore - // await game.settings.set(CONSTANTS.MODULE_NAME, name, data.default); - // } + const settings = defaultSettings(true); + for (const [name, data] of Object.entries(settings)) { + await game.settings.set(CONSTANTS.MODULE_NAME, name, data.default); + } + // const settings2 = otherSettings(true); + // for (const [name, data] of Object.entries(settings2)) { + // //@ts-ignore + // await game.settings.set(CONSTANTS.MODULE_NAME, name, data.default); + // } } function defaultSettings(apply = false) { - return { - defaultIcons: { - name: `${CONSTANTS.MODULE_NAME}.Settings.defaultIcons.name`, - hint: `${CONSTANTS.MODULE_NAME}.Settings.defaultIcons.hint`, - scope: "world", - config: false, - default: {} - }, - itemProperties: { - name: `${CONSTANTS.MODULE_NAME}.Settings.itemProperties.name`, - hint: `${CONSTANTS.MODULE_NAME}.Settings.itemProperties.hint`, - scope: "world", - config: false, - default: {} - } - }; + return { + defaultIcons: { + name: `${CONSTANTS.MODULE_NAME}.Settings.defaultIcons.name`, + hint: `${CONSTANTS.MODULE_NAME}.Settings.defaultIcons.hint`, + scope: "world", + config: false, + default: {} + }, + itemProperties: { + name: `${CONSTANTS.MODULE_NAME}.Settings.itemProperties.name`, + hint: `${CONSTANTS.MODULE_NAME}.Settings.itemProperties.hint`, + scope: "world", + config: false, + default: {} + } + }; } export async function checkSystem() { - if (!SYSTEMS.DATA) { - if (game.settings.get(CONSTANTS.MODULE_NAME, "systemNotFoundWarningShown")) return; - - await game.settings.set(CONSTANTS.MODULE_NAME, "systemNotFoundWarningShown", true); - - return Dialog.prompt({ - title: game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.nosystemfound.title`), - content: dialogWarning(game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.nosystemfound.content`)), - callback: () => { - // empty body just for avoid the error on eslint - } - }); - } - - if (game.settings.get(CONSTANTS.MODULE_NAME, "systemFound")) return; - - game.settings.set(CONSTANTS.MODULE_NAME, "systemFound", true); - - if (game.settings.get(CONSTANTS.MODULE_NAME, "systemNotFoundWarningShown")) { - return new Dialog({ - title: game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.systemfound.title`), - content: warn(game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.systemfound.content`), true), - buttons: { - confirm: { - icon: '', - label: game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.systemfound.confirm`), - callback: () => { - applyDefaultSettings(); - } - }, - cancel: { - icon: '', - label: game.i18n.localize("No") - } - }, - default: "cancel" - }).render(true); - } - - return applyDefaultSettings(); + if (!SYSTEMS.DATA) { + if (game.settings.get(CONSTANTS.MODULE_NAME, "systemNotFoundWarningShown")) return; + + await game.settings.set(CONSTANTS.MODULE_NAME, "systemNotFoundWarningShown", true); + + return Dialog.prompt({ + title: game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.nosystemfound.title`), + content: dialogWarning(game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.nosystemfound.content`)), + callback: () => { + // empty body just for avoid the error on eslint + } + }); + } + + if (game.settings.get(CONSTANTS.MODULE_NAME, "systemFound")) return; + + game.settings.set(CONSTANTS.MODULE_NAME, "systemFound", true); + + if (game.settings.get(CONSTANTS.MODULE_NAME, "systemNotFoundWarningShown")) { + return new Dialog({ + title: game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.systemfound.title`), + content: warn(game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.systemfound.content`), true), + buttons: { + confirm: { + icon: '', + label: game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Dialog.systemfound.confirm`), + callback: () => { + applyDefaultSettings(); + } + }, + cancel: { + icon: '', + label: game.i18n.localize("No") + } + }, + default: "cancel" + }).render(true); + } + + return applyDefaultSettings(); } /** * Checks if options exist, if not, orders their initialization */ export function checkSettingsInitialized() { - if (!game.user?.isGM) { - return; - } - const defaultIcons = game.settings.get(CONSTANTS.MODULE_NAME, "defaultIcons"); - const itemProperties = game.settings.get(CONSTANTS.MODULE_NAME, "itemProperties"); - - if (checkObjEmpty(defaultIcons)) { - initializeDefaultIcons(); - } - - if (checkObjEmpty(itemProperties)) { - initializeItemProperties(); - } + if (!game.user?.isGM) { + return; + } + const defaultIcons = game.settings.get(CONSTANTS.MODULE_NAME, "defaultIcons"); + const itemProperties = game.settings.get(CONSTANTS.MODULE_NAME, "itemProperties"); + + if (checkObjEmpty(defaultIcons)) { + initializeDefaultIcons(); + } + + if (checkObjEmpty(itemProperties)) { + initializeItemProperties(); + } } function checkObjEmpty(obj) { - return Object.keys(obj).length === 0 && obj.constructor === Object; + return Object.keys(obj).length === 0 && obj.constructor === Object; } /** @@ -259,15 +259,15 @@ function checkObjEmpty(obj) { * @hook "forien-unidentified-items:onInitializeDefaultIcons" */ function initializeDefaultIcons() { - const di = new DefaultIcons({}, {}); - let settings = di.getSettings(); - const icons = duplicate(settings); - log(JSON.stringify(icons)); - Hooks.call(`${CONSTANTS.MODULE_NAME}:onInitializeDefaultIcons`, icons); - settings = mergeObject(settings, icons); - di.saveSettings(settings); - log(`Initialized default item icons.`); - info(game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Notifications.defaultIconsInitialized`), true, true); + const di = new DefaultIcons({}, {}); + let settings = di.getSettings(); + const icons = duplicate(settings); + log(JSON.stringify(icons)); + Hooks.call(`${CONSTANTS.MODULE_NAME}:onInitializeDefaultIcons`, icons); + settings = mergeObject(settings, icons); + di.saveSettings(settings); + log(`Initialized default item icons.`); + info(game.i18n.localize(`${CONSTANTS.MODULE_NAME}.Notifications.defaultIconsInitialized`), true, true); } /** @@ -276,31 +276,31 @@ function initializeDefaultIcons() { * @hook "forien-unidentified-items:onInitializeItemProperties" */ function initializeItemProperties() { - const ip = new ItemProperties({}, {}); - let settings: any = ip.getSettings(); - settings = Object.entries(settings); - settings = settings.map((type) => { - let entries = Object.entries(type[1]); - entries = entries.sort((a, b) => { - if (a[0] < b[0]) { - return -1; - } - if (a[0] > b[0]) { - return 1; - } - return 0; - }); - type[1] = Object.fromEntries(entries); - return type; - }); - settings = Object.fromEntries(settings); - //settings = setDefaultItemProperties(settings); - settings = mergeObject(settings, API.DEFAULT_PROPERTIES); - const properties = duplicate(settings); - Hooks.call(`${CONSTANTS.MODULE_NAME}:onInitializeItemProperties`, properties); - log(JSON.stringify(properties)); - settings = mergeObject(settings, properties); - ip.saveSettings(settings); - log(` Initialized default item properties.`); - info(i18n(`${CONSTANTS.MODULE_NAME}.Notifications.defaultPropertiesInitialized`), true, true); + const ip = new ItemProperties({}, {}); + let settings: any = ip.getSettings(); + settings = Object.entries(settings); + settings = settings.map((type) => { + let entries = Object.entries(type[1]); + entries = entries.sort((a, b) => { + if (a[0] < b[0]) { + return -1; + } + if (a[0] > b[0]) { + return 1; + } + return 0; + }); + type[1] = Object.fromEntries(entries); + return type; + }); + settings = Object.fromEntries(settings); + //settings = setDefaultItemProperties(settings); + settings = mergeObject(settings, API.DEFAULT_PROPERTIES); + const properties = duplicate(settings); + Hooks.call(`${CONSTANTS.MODULE_NAME}:onInitializeItemProperties`, properties); + log(JSON.stringify(properties)); + settings = mergeObject(settings, properties); + ip.saveSettings(settings); + log(` Initialized default item properties.`); + info(i18n(`${CONSTANTS.MODULE_NAME}.Notifications.defaultPropertiesInitialized`), true, true); } diff --git a/src/modules/systems.ts b/src/modules/systems.ts index b1fecc8..4e33bba 100644 --- a/src/modules/systems.ts +++ b/src/modules/systems.ts @@ -13,16 +13,16 @@ import generic from "./systems/generic"; * FOLLOW THE CONVENTION IN THE D&D 5E SYSTEM FILE */ export const SYSTEMS = { - get DATA() { - return { - // ↓ ADD SYSTEMS HERE ↓ - dnd5e, - pf2e, - swade, - sw5e, - wfrp4e, - generic - // ↑ ADD SYSTEMS HERE ↑ - }?.[game.system.id]; - } + get DATA() { + return { + // ↓ ADD SYSTEMS HERE ↓ + dnd5e, + pf2e, + swade, + sw5e, + wfrp4e, + generic + // ↑ ADD SYSTEMS HERE ↑ + }?.[game.system.id]; + } }; diff --git a/src/modules/systems/dnd5e.ts b/src/modules/systems/dnd5e.ts index 46c1ef7..7a0a49e 100644 --- a/src/modules/systems/dnd5e.ts +++ b/src/modules/systems/dnd5e.ts @@ -1,37 +1,37 @@ export default { - DEFAULT_PROPERTIES: { - weapon: { - weight: true, - quantity: true, - weaponType: true, - equipped: true - }, - equipment: { - weight: true, - quantity: true, - "armor.type": true, - equipped: true - }, - consumable: { - weight: true, - quantity: true, - equipped: true, - consumableType: true - }, - tool: { - weight: true, - quantity: true, - equipped: true - }, - loot: { - weight: true, - quantity: true, - equipped: true - }, - backpack: { - weight: true, - quantity: true, - equipped: true - } - } + DEFAULT_PROPERTIES: { + weapon: { + weight: true, + quantity: true, + weaponType: true, + equipped: true + }, + equipment: { + weight: true, + quantity: true, + "armor.type": true, + equipped: true + }, + consumable: { + weight: true, + quantity: true, + equipped: true, + consumableType: true + }, + tool: { + weight: true, + quantity: true, + equipped: true + }, + loot: { + weight: true, + quantity: true, + equipped: true + }, + backpack: { + weight: true, + quantity: true, + equipped: true + } + } }; diff --git a/src/modules/systems/generic.ts b/src/modules/systems/generic.ts index 3afeec9..39b9bdf 100644 --- a/src/modules/systems/generic.ts +++ b/src/modules/systems/generic.ts @@ -1,3 +1,3 @@ export default { - DEFAULT_PROPERTIES: {} + DEFAULT_PROPERTIES: {} }; diff --git a/src/modules/systems/pf2e.ts b/src/modules/systems/pf2e.ts index 4b25a54..0d1c363 100644 --- a/src/modules/systems/pf2e.ts +++ b/src/modules/systems/pf2e.ts @@ -1,32 +1,32 @@ export default { - DEFAULT_PROPERTIES: { - weapon: { - "bulkCapacity.value": true, - "quantity.value": true, - "weaponType.value": true - }, - melee: { - "bulkCapacity.value": true, - "quantity.value": true - }, - armor: { - "armorType.value": true, - "bulkCapacity.value": true, - "quantity.value": true - }, - equipment: { - "bulkCapacity.value": true, - "quantity.value": true - }, - consumable: { - "bulkCapacity.value": true, - "consumableType.value": true, - "quantity.value": true, - "uses.value": true - }, - treasure: { - "bulkCapacity.value": true, - "quantity.value": true - } - } + DEFAULT_PROPERTIES: { + weapon: { + "bulkCapacity.value": true, + "quantity.value": true, + "weaponType.value": true + }, + melee: { + "bulkCapacity.value": true, + "quantity.value": true + }, + armor: { + "armorType.value": true, + "bulkCapacity.value": true, + "quantity.value": true + }, + equipment: { + "bulkCapacity.value": true, + "quantity.value": true + }, + consumable: { + "bulkCapacity.value": true, + "consumableType.value": true, + "quantity.value": true, + "uses.value": true + }, + treasure: { + "bulkCapacity.value": true, + "quantity.value": true + } + } }; diff --git a/src/modules/systems/sw5e.ts b/src/modules/systems/sw5e.ts index 46c1ef7..7a0a49e 100644 --- a/src/modules/systems/sw5e.ts +++ b/src/modules/systems/sw5e.ts @@ -1,37 +1,37 @@ export default { - DEFAULT_PROPERTIES: { - weapon: { - weight: true, - quantity: true, - weaponType: true, - equipped: true - }, - equipment: { - weight: true, - quantity: true, - "armor.type": true, - equipped: true - }, - consumable: { - weight: true, - quantity: true, - equipped: true, - consumableType: true - }, - tool: { - weight: true, - quantity: true, - equipped: true - }, - loot: { - weight: true, - quantity: true, - equipped: true - }, - backpack: { - weight: true, - quantity: true, - equipped: true - } - } + DEFAULT_PROPERTIES: { + weapon: { + weight: true, + quantity: true, + weaponType: true, + equipped: true + }, + equipment: { + weight: true, + quantity: true, + "armor.type": true, + equipped: true + }, + consumable: { + weight: true, + quantity: true, + equipped: true, + consumableType: true + }, + tool: { + weight: true, + quantity: true, + equipped: true + }, + loot: { + weight: true, + quantity: true, + equipped: true + }, + backpack: { + weight: true, + quantity: true, + equipped: true + } + } }; diff --git a/src/modules/systems/swade.ts b/src/modules/systems/swade.ts index 56c738e..f452f7f 100644 --- a/src/modules/systems/swade.ts +++ b/src/modules/systems/swade.ts @@ -1,36 +1,36 @@ export default { - DEFAULT_PROPERTIES: { - weapon: { - quantity: true, - weight: true, - equippable: true, - equipped: true, - minStr: true - }, - armor: { - quantity: true, - weight: true, - equippable: true, - equipped: true, - minStr: true, - "locations.head": true, - "locations.torso": true, - "locations.arms": true, - "locations.legs": true - }, - shield: { - quantity: true, - weight: true, - equippable: true, - equipped: true, - minStr: true, - cover: true - }, - gear: { - quantity: true, - weight: true, - equippable: true, - equipped: true - } - } + DEFAULT_PROPERTIES: { + weapon: { + quantity: true, + weight: true, + equippable: true, + equipped: true, + minStr: true + }, + armor: { + quantity: true, + weight: true, + equippable: true, + equipped: true, + minStr: true, + "locations.head": true, + "locations.torso": true, + "locations.arms": true, + "locations.legs": true + }, + shield: { + quantity: true, + weight: true, + equippable: true, + equipped: true, + minStr: true, + cover: true + }, + gear: { + quantity: true, + weight: true, + equippable: true, + equipped: true + } + } }; diff --git a/src/modules/systems/wfrp4e.ts b/src/modules/systems/wfrp4e.ts index e5207d6..4450316 100644 --- a/src/modules/systems/wfrp4e.ts +++ b/src/modules/systems/wfrp4e.ts @@ -1,42 +1,42 @@ export default { - DEFAULT_PROPERTIES: { - ammunition: { - "encumbrance.value": true, - "quantity.value": true, - "gmdescription.value": true, - "ammunitionType.value": true - }, - armour: { - "encumbrance.value": true, - "quantity.value": true, - "gmdescription.value": true, - "location.value": true, - "armorType.value": true - }, - container: { - "encumbrance.value": true, - "quantity.value": true, - "gmdescription.value": true - }, - money: { - "encumbrance.value": true, - "quantity.value": true, - "gmdescription.value": true - }, - trapping: { - "encumbrance.value": true, - "quantity.value": true, - "gmdescription.value": true, - "trappingType.value": true - }, - weapon: { - "encumbrance.value": true, - "quantity.value": true, - "gmdescription.value": true, - "twohanded.value": true, - "ammunitionGroup.value": true, - "weaponGroup.value": true, - "reach.value": true - } - } + DEFAULT_PROPERTIES: { + ammunition: { + "encumbrance.value": true, + "quantity.value": true, + "gmdescription.value": true, + "ammunitionType.value": true + }, + armour: { + "encumbrance.value": true, + "quantity.value": true, + "gmdescription.value": true, + "location.value": true, + "armorType.value": true + }, + container: { + "encumbrance.value": true, + "quantity.value": true, + "gmdescription.value": true + }, + money: { + "encumbrance.value": true, + "quantity.value": true, + "gmdescription.value": true + }, + trapping: { + "encumbrance.value": true, + "quantity.value": true, + "gmdescription.value": true, + "trappingType.value": true + }, + weapon: { + "encumbrance.value": true, + "quantity.value": true, + "gmdescription.value": true, + "twohanded.value": true, + "ammunitionGroup.value": true, + "weaponGroup.value": true, + "reach.value": true + } + } }; diff --git a/src/styles/style.css b/src/styles/style.css index 0451ddb..a112d3d 100644 --- a/src/styles/style.css +++ b/src/styles/style.css @@ -1,176 +1,176 @@ #forien-unidentified-items-default-icons.wfrp4e .window-content { - background: url(/ui/parchment.jpg) repeat; + background: url(/ui/parchment.jpg) repeat; } #forien-unidentified-items-default-icons .item-type-entry { - display: flex; + display: flex; } #forien-unidentified-items-default-icons .item-type-entry > * { - flex: 1; - align-self: center; - margin: 0 4px; + flex: 1; + align-self: center; + margin: 0 4px; } #forien-unidentified-items-default-icons .item-type-entry input { - flex: 2; - height: 29px; - min-width: 300px; - font-size: 12px; + flex: 2; + height: 29px; + min-width: 300px; + font-size: 12px; } #forien-unidentified-items-default-icons .item-type-entry img { - width: 66px; - height: 66px; - flex: 0; - margin: 0; + width: 66px; + height: 66px; + flex: 0; + margin: 0; } #forien-unidentified-items-default-icons .item-type-entry button { - flex: 0; - margin: 0; + flex: 0; + margin: 0; } #forien-unidentified-items-item-properties.wfrp4e .window-content { - background: url(/ui/parchment.jpg) repeat; + background: url(/ui/parchment.jpg) repeat; } #forien-unidentified-items-item-properties form { - height: 100%; - display: grid; - grid-template-rows: auto minmax(0, 1fr) auto; + height: 100%; + display: grid; + grid-template-rows: auto minmax(0, 1fr) auto; } #forien-unidentified-items-item-properties nav { - flex-wrap: wrap; + flex-wrap: wrap; } #forien-unidentified-items-item-properties nav a { - flex: 0 0 25%; - border-radius: 10px; - border-color: black; - border-style: outset; + flex: 0 0 25%; + border-radius: 10px; + border-color: black; + border-style: outset; } #forien-unidentified-items-item-properties section { - overflow: auto; - padding: 6px; + overflow: auto; + padding: 6px; } #forien-unidentified-items-item-properties section .tab { - columns: 3; - /** + columns: 3; + /** * Because PF2e... */ - display: none; + display: none; } #forien-unidentified-items-item-properties section .tab .type-property { - display: flex; - align-items: center; + display: flex; + align-items: center; } #forien-unidentified-items-item-properties section .tab * { - break-inside: avoid-column; - padding: 0; + break-inside: avoid-column; + padding: 0; } #forien-unidentified-items-item-properties section .tab.tab.active { - display: block; + display: block; } #forien-unidentified-items-mystifyAsDialog .dropzone { - min-height: 240px; - margin-bottom: 4px; - border: 2px dashed #33333366; - border-radius: 6px; - align-items: center; - justify-content: center; - position: relative; - display: flex; - flex-direction: column; + min-height: 240px; + margin-bottom: 4px; + border: 2px dashed #33333366; + border-radius: 6px; + align-items: center; + justify-content: center; + position: relative; + display: flex; + flex-direction: column; } #forien-unidentified-items-mystifyAsDialog .dropzone p { - text-align: center; - position: relative; - max-width: 80%; - font-variant: small-caps; - font-size: 1.6rem; - color: #333333cc; + text-align: center; + position: relative; + max-width: 80%; + font-variant: small-caps; + font-size: 1.6rem; + color: #333333cc; } #forien-unidentified-items-mystifyAsDialog .dropzone .item { - display: flex; + display: flex; } #forien-unidentified-items-mystifyAsDialog .dropzone .item img { - width: 66px; - height: 66px; - border-radius: 8px; - border: 2px solid #000; + width: 66px; + height: 66px; + border-radius: 8px; + border: 2px solid #000; } #forien-unidentified-items-mystifyAsDialog .dropzone .item span { - font-size: 1.2rem; - align-self: center; - padding: 8px; + font-size: 1.2rem; + align-self: center; + padding: 8px; } #forien-unidentified-items-mystifyAsDialog button[data-button="mystifyAdvanced"] { - flex-basis: 100%; - margin: 0 0 2px 0; + flex-basis: 100%; + margin: 0 0 2px 0; } #forien-unidentified-items-mystifyAdvancedDialog { - min-width: 500px; - max-height: 800px; + min-width: 500px; + max-height: 800px; } #forien-unidentified-items-mystifyAdvancedDialog .window-content { - display: grid; - grid-template-rows: minmax(0, 1fr) auto; + display: grid; + grid-template-rows: minmax(0, 1fr) auto; } #forien-unidentified-items-mystifyAdvancedDialog .advanced-body { - height: 100%; - display: grid; - grid-template-rows: auto auto auto auto minmax(0, 1fr); + height: 100%; + display: grid; + grid-template-rows: auto auto auto auto minmax(0, 1fr); } #forien-unidentified-items-mystifyAdvancedDialog .advanced-body .meta-header { - display: flex; + display: flex; } #forien-unidentified-items-mystifyAdvancedDialog .advanced-body .meta-header > * { - flex: 1; - text-align: center; - font-weight: bold; + flex: 1; + text-align: center; + font-weight: bold; } #forien-unidentified-items-mystifyAdvancedDialog .advanced-body .meta-body > * { - display: flex; + display: flex; } #forien-unidentified-items-mystifyAdvancedDialog .advanced-body .meta-body > * > * { - flex: 1; - display: flex; - flex-direction: column; - justify-items: center; - align-items: center; + flex: 1; + display: flex; + flex-direction: column; + justify-items: center; + align-items: center; } #forien-unidentified-items-mystifyAdvancedDialog .advanced-body .meta-name { - margin-top: 10px; + margin-top: 10px; } #forien-unidentified-items-mystifyAdvancedDialog .advanced-body img { - width: 66px; - height: 66px; + width: 66px; + height: 66px; } #forien-unidentified-items-mystifyAdvancedDialog .advanced-body .properties-body { - overflow-y: auto; - display: grid; - grid-template-columns: auto minmax(0, 1fr) auto; - grid-gap: 6px 10px; + overflow-y: auto; + display: grid; + grid-template-columns: auto minmax(0, 1fr) auto; + grid-gap: 6px 10px; } #forien-unidentified-items-mystifyAdvancedDialog .advanced-body .properties-body label { - font-weight: bold; + font-weight: bold; } #forien-unidentified-items-mystifyAdvancedDialog .advanced-body .properties-body .property-values { - display: flex; - flex-direction: column; - font-style: italic; - font-size: 12px; + display: flex; + flex-direction: column; + font-style: italic; + font-size: 12px; } /*# sourceMappingURL=style.css.map */ .forien-unidentified-items-identify-item .fa-search { - color: DeepPink; - text-shadow: 0 0 8px DeepPink; + color: DeepPink; + text-shadow: 0 0 8px DeepPink; } .forien-unidentified-items-peek-original-item .fa-eye { - color: Orchid; - text-shadow: 0 0 8px Orchid; + color: Orchid; + text-shadow: 0 0 8px Orchid; } .forien-unidentified-items-mystify-item .fa-eye-slash { - color: RebeccaPurple; - text-shadow: 0 0 8px RebeccaPurple; + color: RebeccaPurple; + text-shadow: 0 0 8px RebeccaPurple; } diff --git a/src/styles/style.scss b/src/styles/style.scss index c255436..697ed5d 100644 --- a/src/styles/style.scss +++ b/src/styles/style.scss @@ -1,218 +1,218 @@ $icon-size: 66px; #forien-unidentified-items-default-icons { - &.wfrp4e { - .window-content { - background: url(/ui/parchment.jpg) repeat; - } - } - - .item-type-entry { - display: flex; - - & > * { - flex: 1; - align-self: center; - margin: 0 4px; - } - - input { - flex: 2; - height: 29px; - min-width: 300px; - font-size: 12px; - } - - img { - width: $icon-size; - height: $icon-size; - flex: 0; - margin: 0; - } - - button { - flex: 0; - margin: 0; - } - } + &.wfrp4e { + .window-content { + background: url(/ui/parchment.jpg) repeat; + } + } + + .item-type-entry { + display: flex; + + & > * { + flex: 1; + align-self: center; + margin: 0 4px; + } + + input { + flex: 2; + height: 29px; + min-width: 300px; + font-size: 12px; + } + + img { + width: $icon-size; + height: $icon-size; + flex: 0; + margin: 0; + } + + button { + flex: 0; + margin: 0; + } + } } #forien-unidentified-items-item-properties { - &.wfrp4e { - .window-content { - background: url(/ui/parchment.jpg) repeat; - } - } - - form { - height: 100%; - display: grid; - grid-template-rows: auto minmax(0, 1fr) auto; - } - - nav { - flex-wrap: wrap; - - a { - flex: 0 0 25%; - border-radius: 10px; - border-color: black; - border-style: outset; - } - } - - section { - overflow: auto; - padding: 6px; - - .tab { - columns: 3; - - .type-property { - display: flex; - align-items: center; - } - - * { - break-inside: avoid-column; - padding: 0; - } - - /** + &.wfrp4e { + .window-content { + background: url(/ui/parchment.jpg) repeat; + } + } + + form { + height: 100%; + display: grid; + grid-template-rows: auto minmax(0, 1fr) auto; + } + + nav { + flex-wrap: wrap; + + a { + flex: 0 0 25%; + border-radius: 10px; + border-color: black; + border-style: outset; + } + } + + section { + overflow: auto; + padding: 6px; + + .tab { + columns: 3; + + .type-property { + display: flex; + align-items: center; + } + + * { + break-inside: avoid-column; + padding: 0; + } + + /** * Because PF2e... */ - display: none; - - // Also Because PF2e... - &.tab.active { - display: block; - } - } - } + display: none; + + // Also Because PF2e... + &.tab.active { + display: block; + } + } + } } #forien-unidentified-items-mystifyAsDialog { - .dropzone { - min-height: 240px; - margin-bottom: 4px; - border: 2px dashed #33333366; - border-radius: 6px; - align-items: center; - justify-content: center; - position: relative; - display: flex; - flex-direction: column; - - p { - text-align: center; - position: relative; - max-width: 80%; - - font-variant: small-caps; - font-size: 1.6rem; - color: #333333cc; - } - - .item { - display: flex; - - img { - width: $icon-size; - height: $icon-size; - border-radius: 8px; - border: 2px solid #000; - } - - span { - font-size: 1.2rem; - align-self: center; - padding: 8px; - } - } - } - - button[data-button="mystifyAdvanced"] { - flex-basis: 100%; - margin: 0 0 2px 0; - } + .dropzone { + min-height: 240px; + margin-bottom: 4px; + border: 2px dashed #33333366; + border-radius: 6px; + align-items: center; + justify-content: center; + position: relative; + display: flex; + flex-direction: column; + + p { + text-align: center; + position: relative; + max-width: 80%; + + font-variant: small-caps; + font-size: 1.6rem; + color: #333333cc; + } + + .item { + display: flex; + + img { + width: $icon-size; + height: $icon-size; + border-radius: 8px; + border: 2px solid #000; + } + + span { + font-size: 1.2rem; + align-self: center; + padding: 8px; + } + } + } + + button[data-button="mystifyAdvanced"] { + flex-basis: 100%; + margin: 0 0 2px 0; + } } #forien-unidentified-items-mystifyAdvancedDialog { - min-width: 500px; - max-height: 800px; - - .window-content { - display: grid; - grid-template-rows: minmax(0, 1fr) auto; - } - - .advanced-body { - height: 100%; - display: grid; - grid-template-rows: auto auto auto auto minmax(0, 1fr); - - .meta-header { - display: flex; - - & > * { - flex: 1; - text-align: center; - font-weight: bold; - } - } - - .meta-body > * { - display: flex; - - & > * { - flex: 1; - display: flex; - flex-direction: column; - justify-items: center; - align-items: center; - } - } - - .meta-name { - margin-top: 10px; - } - - img { - width: $icon-size; - height: $icon-size; - } - - .properties-body { - overflow-y: auto; - display: grid; - grid-template-columns: auto minmax(0, 1fr) auto; - grid-gap: 6px 10px; - - label { - font-weight: bold; - } - - .property-values { - display: flex; - flex-direction: column; - font-style: italic; - font-size: 12px; - } - } - } + min-width: 500px; + max-height: 800px; + + .window-content { + display: grid; + grid-template-rows: minmax(0, 1fr) auto; + } + + .advanced-body { + height: 100%; + display: grid; + grid-template-rows: auto auto auto auto minmax(0, 1fr); + + .meta-header { + display: flex; + + & > * { + flex: 1; + text-align: center; + font-weight: bold; + } + } + + .meta-body > * { + display: flex; + + & > * { + flex: 1; + display: flex; + flex-direction: column; + justify-items: center; + align-items: center; + } + } + + .meta-name { + margin-top: 10px; + } + + img { + width: $icon-size; + height: $icon-size; + } + + .properties-body { + overflow-y: auto; + display: grid; + grid-template-columns: auto minmax(0, 1fr) auto; + grid-gap: 6px 10px; + + label { + font-weight: bold; + } + + .property-values { + display: flex; + flex-direction: column; + font-style: italic; + font-size: 12px; + } + } + } } .forien-unidentified-items-identify-item .fa-search { - color: DeepPink; - text-shadow: 0 0 8px DeepPink; + color: DeepPink; + text-shadow: 0 0 8px DeepPink; } .forien-unidentified-items-peek-original-item .fa-eye { - color: Orchid; - text-shadow: 0 0 8px Orchid; + color: Orchid; + text-shadow: 0 0 8px Orchid; } .forien-unidentified-items-mystify-item .fa-eye-slash { - color: RebeccaPurple; - text-shadow: 0 0 8px RebeccaPurple; + color: RebeccaPurple; + text-shadow: 0 0 8px RebeccaPurple; } diff --git a/src/templates/mystify-advanced.html b/src/templates/mystify-advanced.html index 99bb83b..2f435af 100644 --- a/src/templates/mystify-advanced.html +++ b/src/templates/mystify-advanced.html @@ -1,50 +1,50 @@
-

{{localize "forien-unidentified-items.Dialog.MystifyAdvanced.Meta"}}

-
- {{localize "forien-unidentified-items.Dialog.MystifyAdvanced.Original"}} - {{localize "forien-unidentified-items.Dialog.MystifyAdvanced.Result"}} - {{localize "forien-unidentified-items.Dialog.MystifyAdvanced.Default"}} -
-
-
-
- -
-
- - - -
-
- -
-
-
-
{{item.name}}
-
- {{meta.name}} - - - -
-
{{meta.name}}
-
-
-

{{localize "forien-unidentified-items.Dialog.MystifyAdvanced.Properties"}}

-
- {{#each properties}} - -
- - {{localize "forien-unidentified-items.Dialog.MystifyAdvanced.Original"}}: - {{{this.orig}}} - - - {{localize "forien-unidentified-items.Dialog.MystifyAdvanced.Default"}}: - {{{this.default}}} - -
- - {{/each}} -
+

{{localize "forien-unidentified-items.Dialog.MystifyAdvanced.Meta"}}

+
+ {{localize "forien-unidentified-items.Dialog.MystifyAdvanced.Original"}} + {{localize "forien-unidentified-items.Dialog.MystifyAdvanced.Result"}} + {{localize "forien-unidentified-items.Dialog.MystifyAdvanced.Default"}} +
+
+
+
+ +
+
+ + + +
+
+ +
+
+
+
{{item.name}}
+
+ {{meta.name}} + + + +
+
{{meta.name}}
+
+
+

{{localize "forien-unidentified-items.Dialog.MystifyAdvanced.Properties"}}

+
+ {{#each properties}} + +
+ + {{localize "forien-unidentified-items.Dialog.MystifyAdvanced.Original"}}: + {{{this.orig}}} + + + {{localize "forien-unidentified-items.Dialog.MystifyAdvanced.Default"}}: + {{{this.default}}} + +
+ + {{/each}} +
diff --git a/src/templates/settings-default-icons.html b/src/templates/settings-default-icons.html index 27eb692..2e7506d 100644 --- a/src/templates/settings-default-icons.html +++ b/src/templates/settings-default-icons.html @@ -1,14 +1,14 @@
- {{#each types}} -
- - - - -
- {{/each}} + {{#each types}} +
+ + + + +
+ {{/each}} - +
diff --git a/src/templates/settings-item-properties.html b/src/templates/settings-item-properties.html index da38353..0106914 100644 --- a/src/templates/settings-item-properties.html +++ b/src/templates/settings-item-properties.html @@ -1,27 +1,21 @@
- - + + - +
From 84bb6785b0d22af759518d05640856fcf7cc9e3d Mon Sep 17 00:00:00 2001 From: p4535992 Date: Wed, 29 Mar 2023 22:39:03 +0200 Subject: [PATCH 12/12] update package.json --- package.json | 2 -- 1 file changed, 2 deletions(-) diff --git a/package.json b/package.json index 139feb8..ac743f5 100644 --- a/package.json +++ b/package.json @@ -71,7 +71,6 @@ "through2": "^4.0.2", "ts-jest": "^27.1.3", "ts-node": "^10.2.1", - "typescript": "^4.4.2", "uglifyify": "^5.0.2", "vinyl-buffer": "^1.0.1", "vinyl-source-stream": "^2.0.0", @@ -81,7 +80,6 @@ "build": "^0.1.4", "csv-parse": "^4.16.3", "gulp-jest": "^4.0.4", - "node-sass": "^7.0.1", "prettier": "^2.7.1", "prettier-format": "^3.1.0", "tsify": "^5.0.4",