From dd836eab95aca748ee6a280a55d72f19fa20c7db Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Fri, 2 Feb 2024 19:48:00 +0100 Subject: [PATCH] gameevent fixes --- flake.nix | 5 +- overlay.nix | 1 + pkgs/json-schema-to-typescript/default.nix | 28 + .../package-lock.json | 5851 +++++++++++++++ wasm.nix | 11 +- wasm/Cargo.lock | 265 +- wasm/Cargo.toml | 4 +- www/src/packets/message.tsx | 5 + www/src/parser.d.ts | 6666 +++++++++-------- www/src/search.tsx | 2 +- 10 files changed, 9424 insertions(+), 3414 deletions(-) create mode 100644 pkgs/json-schema-to-typescript/default.nix create mode 100644 pkgs/json-schema-to-typescript/package-lock.json diff --git a/flake.nix b/flake.nix index 212058d..92af4ee 100644 --- a/flake.nix +++ b/flake.nix @@ -40,13 +40,12 @@ nodejs_20 node2nix wasm-bindgen-cli + json-schema-to-typescript ]; }; packages = rec { - wasm = pkgs.demo-inspector-wasm; - node_modules = pkgs.demo-inspector-node-modules; - demo-inspector = pkgs.demo-inspector; + inherit (pkgs) json-schema-to-typescript demo-inspector demo-inspector-wasm demo-inspector-node-modules; default = demo-inspector; }; }) diff --git a/overlay.nix b/overlay.nix index 52c59f5..a3b4a1c 100644 --- a/overlay.nix +++ b/overlay.nix @@ -2,4 +2,5 @@ prev: final: { demo-inspector-wasm = final.callPackage ./wasm.nix {}; demo-inspector-node-modules = final.callPackage ./modules.nix {}; demo-inspector = final.callPackage ./package.nix {}; + json-schema-to-typescript = final.callPackage ./pkgs/json-schema-to-typescript {}; } diff --git a/pkgs/json-schema-to-typescript/default.nix b/pkgs/json-schema-to-typescript/default.nix new file mode 100644 index 0000000..4ba698f --- /dev/null +++ b/pkgs/json-schema-to-typescript/default.nix @@ -0,0 +1,28 @@ +{ lib, buildNpmPackage, fetchFromGitHub }: + +buildNpmPackage rec { + pname = "json-schema-to-typescript"; + version = "13.1.2"; + + src = fetchFromGitHub { + owner = "bcherny"; + repo = "json-schema-to-typescript"; + rev = "6adcad98ac28334f1e8cd932e412c64dde4205f5"; + hash = "sha256-ad3syFl8NB31yl5JKN3tbGTT1zBCPIsX9CM5pLY/wb8="; + }; + + postPatch = '' + cp ${./package-lock.json} package-lock.json + ''; + + npmDepsHash = "sha256-+8d/kcv2aFJis/J9sh5A74PgYYbnOHImanWMz0/XTZY="; + + npmBuildScript = "build:server"; + + meta = with lib; { + description = "Compile JSONSchema to TypeScript type declarations"; + homepage = "https://github.com/bcherny/json-schema-to-typescript"; + license = licenses.mit; + maintainers = with maintainers; [ icewind1991 ]; + }; +} \ No newline at end of file diff --git a/pkgs/json-schema-to-typescript/package-lock.json b/pkgs/json-schema-to-typescript/package-lock.json new file mode 100644 index 0000000..5a5063b --- /dev/null +++ b/pkgs/json-schema-to-typescript/package-lock.json @@ -0,0 +1,5851 @@ +{ + "name": "json-schema-to-typescript", + "version": "13.1.2", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "json-schema-to-typescript", + "version": "13.1.2", + "license": "MIT", + "dependencies": { + "@bcherny/json-schema-ref-parser": "10.0.5-fork", + "@types/json-schema": "^7.0.11", + "@types/lodash": "^4.14.182", + "@types/prettier": "^2.6.1", + "cli-color": "^2.0.2", + "get-stdin": "^8.0.0", + "glob": "^7.1.6", + "glob-promise": "^4.2.2", + "is-glob": "^4.0.3", + "lodash": "^4.17.21", + "minimist": "^1.2.6", + "mkdirp": "^1.0.4", + "mz": "^2.7.0", + "prettier": "^2.6.2" + }, + "bin": { + "json2ts": "dist/src/cli.js" + }, + "devDependencies": { + "@types/cli-color": "^2.0.2", + "@types/glob": "^7.2.0", + "@types/is-glob": "^4.0.2", + "@types/minimist": "^1.2.2", + "@types/mkdirp": "^1.0.2", + "@types/mz": "^2.7.4", + "@types/node": "^17.0.33", + "@types/rimraf": "^3.0.2", + "@typescript-eslint/eslint-plugin": "^5.23.0", + "@typescript-eslint/parser": "^5.23.0", + "ava": "^4.2.0", + "browserify": "^17.0.0", + "browserify-shim": "^3.8.14", + "concurrently": "^7.2.0", + "eslint": "^8.15.0", + "eslint-config-prettier": "^8.5.0", + "eslint-plugin-prettier": "^4.0.0", + "rimraf": "^3.0.2", + "shx": "^0.3.4", + "tsify": "^5.0.4", + "typescript": "^4.6.4" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@aashutoshrathi/word-wrap": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", + "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.23.9", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.9.tgz", + "integrity": "sha512-0CX6F+BI2s9dkUqr08KFrAIZgNFj75rdBU/DjCyYLIaV/quFjkk6T+EJ2LkZHyZTbEV4L5p97mNkUsHl2wLFAw==", + "dev": true, + "dependencies": { + "regenerator-runtime": "^0.14.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@bcherny/json-schema-ref-parser": { + "version": "10.0.5-fork", + "resolved": "https://registry.npmjs.org/@bcherny/json-schema-ref-parser/-/json-schema-ref-parser-10.0.5-fork.tgz", + "integrity": "sha512-E/jKbPoca1tfUPj3iSbitDZTGnq6FUFjkH6L8U2oDwSuwK1WhnnVtCG7oFOTg/DDnyoXbQYUiUiGOibHqaGVnw==", + "dependencies": { + "@jsdevtools/ono": "^7.1.3", + "@types/json-schema": "^7.0.6", + "call-me-maybe": "^1.0.1", + "js-yaml": "^4.1.0" + }, + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://github.com/sponsors/philsturgeon" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", + "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.0.tgz", + "integrity": "sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==", + "dev": true, + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", + "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", + "dev": true, + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.6.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/js": { + "version": "8.56.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.56.0.tgz", + "integrity": "sha512-gMsVel9D7f2HLkBma9VbtzZRehRogVRfbr++f06nL2vnCGCNlzOD+/MUov/F4p8myyAHspEhVobgjpX64q5m6A==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.11.14", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz", + "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==", + "dev": true, + "dependencies": { + "@humanwhocodes/object-schema": "^2.0.2", + "debug": "^4.3.1", + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.2.tgz", + "integrity": "sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw==", + "dev": true + }, + "node_modules/@jsdevtools/ono": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/@jsdevtools/ono/-/ono-7.1.3.tgz", + "integrity": "sha512-4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg==" + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@types/cli-color": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@types/cli-color/-/cli-color-2.0.6.tgz", + "integrity": "sha512-uLK0/0dOYdkX8hNsezpYh1gc8eerbhf9bOKZ3e24sP67703mw9S14/yW6mSTatiaKO9v+mU/a1EVy4rOXXeZTA==", + "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==", + "dependencies": { + "@types/minimatch": "*", + "@types/node": "*" + } + }, + "node_modules/@types/is-glob": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@types/is-glob/-/is-glob-4.0.4.tgz", + "integrity": "sha512-3mFBtIPQ0TQetKRDe94g8YrxJZxdMillMGegyv6zRBXvq4peRRhf2wLZ/Dl53emtTsC29dQQBwYvovS20yXpiQ==", + "dev": true + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==" + }, + "node_modules/@types/lodash": { + "version": "4.14.202", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.202.tgz", + "integrity": "sha512-OvlIYQK9tNneDlS0VN54LLd5uiPCBOp7gS5Z0f1mjoJYBrtStzgmJBxONW3U6OZqdtNzZPmn9BS/7WI7BFFcFQ==" + }, + "node_modules/@types/minimatch": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-5.1.2.tgz", + "integrity": "sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==" + }, + "node_modules/@types/minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==", + "dev": true + }, + "node_modules/@types/mkdirp": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@types/mkdirp/-/mkdirp-1.0.2.tgz", + "integrity": "sha512-o0K1tSO0Dx5X6xlU5F1D6625FawhC3dU3iqr25lluNv/+/QIVH8RLNEiVokgIZo+mz+87w/3Mkg/VvQS+J51fQ==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/mz": { + "version": "2.7.8", + "resolved": "https://registry.npmjs.org/@types/mz/-/mz-2.7.8.tgz", + "integrity": "sha512-mGLNqqwt8yu4pDw9rEphAiyWnEdok0GzOGrwi5EiTuDFxw7H3ZaEI4ASFKq4HaZtemtjQ8MkcmtWcrU4V0WkIw==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/node": { + "version": "17.0.45", + "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.45.tgz", + "integrity": "sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==" + }, + "node_modules/@types/prettier": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.3.tgz", + "integrity": "sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA==" + }, + "node_modules/@types/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-F3OznnSLAUxFrCEu/L5PY8+ny8DtcFRjx7fZZ9bycvXRi3KPTRS9HOitGZwvPg0juRhXFWIeKX58cnX5YqLohQ==", + "dev": true, + "dependencies": { + "@types/glob": "*", + "@types/node": "*" + } + }, + "node_modules/@types/semver": { + "version": "7.5.6", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.6.tgz", + "integrity": "sha512-dn1l8LaMea/IjDoHNd9J52uBbInB796CDffS6VdIxvqYCPSG0V0DzHp76GpaWnlhg88uYyPbXCDIowa86ybd5A==", + "dev": true + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.62.0.tgz", + "integrity": "sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag==", + "dev": true, + "dependencies": { + "@eslint-community/regexpp": "^4.4.0", + "@typescript-eslint/scope-manager": "5.62.0", + "@typescript-eslint/type-utils": "5.62.0", + "@typescript-eslint/utils": "5.62.0", + "debug": "^4.3.4", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "natural-compare-lite": "^1.4.0", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^5.0.0", + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/parser": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.62.0.tgz", + "integrity": "sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==", + "dev": true, + "dependencies": { + "@typescript-eslint/scope-manager": "5.62.0", + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/typescript-estree": "5.62.0", + "debug": "^4.3.4" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz", + "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/visitor-keys": "5.62.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/type-utils": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.62.0.tgz", + "integrity": "sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew==", + "dev": true, + "dependencies": { + "@typescript-eslint/typescript-estree": "5.62.0", + "@typescript-eslint/utils": "5.62.0", + "debug": "^4.3.4", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/types": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz", + "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz", + "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/visitor-keys": "5.62.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/utils": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz", + "integrity": "sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@types/json-schema": "^7.0.9", + "@types/semver": "^7.3.12", + "@typescript-eslint/scope-manager": "5.62.0", + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/typescript-estree": "5.62.0", + "eslint-scope": "^5.1.1", + "semver": "^7.3.7" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz", + "integrity": "sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.62.0", + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@ungap/structured-clone": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", + "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", + "dev": true + }, + "node_modules/accessory": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/accessory/-/accessory-1.1.0.tgz", + "integrity": "sha512-DlgiZ+jTuCIZLURquQhOfclRvPu6gQKgOzr9wAiZtjWYjd1lMK8Hr6XXEDWuEAxpTWEccgn6YVREJ6C7fhvrww==", + "dev": true, + "dependencies": { + "ap": "~0.2.0", + "balanced-match": "~0.2.0", + "dot-parts": "~1.0.0" + } + }, + "node_modules/acorn": { + "version": "8.11.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", + "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/acorn-node": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz", + "integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==", + "dev": true, + "dependencies": { + "acorn": "^7.0.0", + "acorn-walk": "^7.0.0", + "xtend": "^4.0.2" + } + }, + "node_modules/acorn-node/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-node/node_modules/acorn-walk": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", + "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-walk": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.2.tgz", + "integrity": "sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/aggregate-error": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-4.0.1.tgz", + "integrity": "sha512-0poP0T7el6Vq3rstR8Mn4V/IQrpBLO6POkUSrN7RhyY+GF/InCFShQzsQ39T25gkHhLgSLByyAz+Kjb+c2L98w==", + "dev": true, + "dependencies": { + "clean-stack": "^4.0.0", + "indent-string": "^5.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/amdefine": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", + "integrity": "sha512-S2Hw0TtNkMJhIabBwIojKL9YHO5T0n5eNqWJ7Lrlel/zDbftQpxpapi8tZs3X1HWa+u+QeydGmzzNU0m09+Rcg==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.4.2" + } + }, + "node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==" + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/ap": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/ap/-/ap-0.2.0.tgz", + "integrity": "sha512-ImdvquIuBSVpWRWhB441UjvTcZqic1RL+lTQaUKGdGEp1aiTvt/phAvY8Vvs32qya5FJBI8U+tzNBYzFDQY/lQ==", + "dev": true + }, + "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==" + }, + "node_modules/array-find-index": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", + "integrity": "sha512-M1HQyIXcBGtVywBt8WVdim+lrNaK7VHp99Qt5pSNziXznKHViIBbXWtfRTpEFpF/c4FdfxNAsCCwPp5phBYJtw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/arrgv": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/arrgv/-/arrgv-1.0.2.tgz", + "integrity": "sha512-a4eg4yhp7mmruZDQFqVMlxNRFGi/i1r87pt8SDHy0/I8PqSXoUTlWZRdAZo0VXgvEARcujbtTk8kiZRi1uDGRw==", + "dev": true, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/arrify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-3.0.0.tgz", + "integrity": "sha512-tLkvA81vQG/XqE2mjDkGQHoOINtMHtysSnemrmoGe6PydDPMRbVugqyk4A6V/WDWEfm3l+0d8anA9r8cv/5Jaw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/asn1.js": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", + "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", + "dev": true, + "dependencies": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "safer-buffer": "^2.1.0" + } + }, + "node_modules/asn1.js/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + }, + "node_modules/assert": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.1.tgz", + "integrity": "sha512-zzw1uCAgLbsKwBfFc8CX78DDg+xZeBksSO3vwVIDDN5i94eOrPsSSyiVhmsSABFDM/OcpE2aagCat9dnWQLG1A==", + "dev": true, + "dependencies": { + "object.assign": "^4.1.4", + "util": "^0.10.4" + } + }, + "node_modules/assert/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/assert/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/ava": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/ava/-/ava-4.3.3.tgz", + "integrity": "sha512-9Egq/d9R74ExrWohHeqUlexjDbgZJX5jA1Wq4KCTqc3wIfpGEK79zVy4rBtofJ9YKIxs4PzhJ8BgbW5PlAYe6w==", + "dev": true, + "dependencies": { + "acorn": "^8.7.1", + "acorn-walk": "^8.2.0", + "ansi-styles": "^6.1.0", + "arrgv": "^1.0.2", + "arrify": "^3.0.0", + "callsites": "^4.0.0", + "cbor": "^8.1.0", + "chalk": "^5.0.1", + "chokidar": "^3.5.3", + "chunkd": "^2.0.1", + "ci-info": "^3.3.1", + "ci-parallel-vars": "^1.0.1", + "clean-yaml-object": "^0.1.0", + "cli-truncate": "^3.1.0", + "code-excerpt": "^4.0.0", + "common-path-prefix": "^3.0.0", + "concordance": "^5.0.4", + "currently-unhandled": "^0.4.1", + "debug": "^4.3.4", + "del": "^6.1.1", + "emittery": "^0.11.0", + "figures": "^4.0.1", + "globby": "^13.1.1", + "ignore-by-default": "^2.1.0", + "indent-string": "^5.0.0", + "is-error": "^2.2.2", + "is-plain-object": "^5.0.0", + "is-promise": "^4.0.0", + "matcher": "^5.0.0", + "mem": "^9.0.2", + "ms": "^2.1.3", + "p-event": "^5.0.1", + "p-map": "^5.4.0", + "picomatch": "^2.3.1", + "pkg-conf": "^4.0.0", + "plur": "^5.1.0", + "pretty-ms": "^7.0.1", + "resolve-cwd": "^3.0.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.5", + "strip-ansi": "^7.0.1", + "supertap": "^3.0.1", + "temp-dir": "^2.0.0", + "write-file-atomic": "^4.0.1", + "yargs": "^17.5.1" + }, + "bin": { + "ava": "entrypoints/cli.mjs" + }, + "engines": { + "node": ">=12.22 <13 || >=14.17 <15 || >=16.4 <17 || >=18" + }, + "peerDependencies": { + "@ava/typescript": "*" + }, + "peerDependenciesMeta": { + "@ava/typescript": { + "optional": true + } + } + }, + "node_modules/ava/node_modules/globby": { + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz", + "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==", + "dev": true, + "dependencies": { + "dir-glob": "^3.0.1", + "fast-glob": "^3.3.0", + "ignore": "^5.2.4", + "merge2": "^1.4.1", + "slash": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ava/node_modules/globby/node_modules/slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/available-typed-arrays": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.6.tgz", + "integrity": "sha512-j1QzY8iPNPG4o4xmO3ptzpRxTciqD3MgEHtifP/YnJpIo58Xu+ne4BejlbkuaLfXn/nz6HFiw29bLpj2PNMdGg==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/balanced-match": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.2.1.tgz", + "integrity": "sha512-euSOvfze1jPOf85KQOmZ2UcWDJ/dUJukTJdj4o9ZZLyjl7IjdIyE4fAQRSuGrxAjB9nvvvrl4N3bPtRq+W+SyQ==", + "dev": true + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/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/blueimp-md5": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/blueimp-md5/-/blueimp-md5-2.19.0.tgz", + "integrity": "sha512-DRQrD6gJyy8FbiE4s+bDoXS9hiW3Vbx5uCdwvcCf3zLHL+Iv7LtGHLpr+GZV8rHG8tK766FGYBwRbu8pELTt+w==", + "dev": true + }, + "node_modules/bn.js": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", + "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==", + "dev": true + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/brace-expansion/node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==", + "dev": true + }, + "node_modules/browser-pack": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/browser-pack/-/browser-pack-6.1.0.tgz", + "integrity": "sha512-erYug8XoqzU3IfcU8fUgyHqyOXqIE4tUTTQ+7mqUjQlvnXkOO6OlT9c/ZoJVHYoAaqGxr09CN53G7XIsO4KtWA==", + "dev": true, + "dependencies": { + "combine-source-map": "~0.8.0", + "defined": "^1.0.0", + "JSONStream": "^1.0.3", + "safe-buffer": "^5.1.1", + "through2": "^2.0.0", + "umd": "^3.0.0" + }, + "bin": { + "browser-pack": "bin/cmd.js" + } + }, + "node_modules/browser-resolve": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-2.0.0.tgz", + "integrity": "sha512-7sWsQlYL2rGLy2IWm8WL8DCTJvYLc/qlOnsakDac87SOoCd16WLsaAMdCiAqsTNHIe+SXfaqyxyo6THoWqs8WQ==", + "dev": true, + "dependencies": { + "resolve": "^1.17.0" + } + }, + "node_modules/browserify": { + "version": "17.0.0", + "resolved": "https://registry.npmjs.org/browserify/-/browserify-17.0.0.tgz", + "integrity": "sha512-SaHqzhku9v/j6XsQMRxPyBrSP3gnwmE27gLJYZgMT2GeK3J0+0toN+MnuNYDfHwVGQfLiMZ7KSNSIXHemy905w==", + "dev": true, + "dependencies": { + "assert": "^1.4.0", + "browser-pack": "^6.0.1", + "browser-resolve": "^2.0.0", + "browserify-zlib": "~0.2.0", + "buffer": "~5.2.1", + "cached-path-relative": "^1.0.0", + "concat-stream": "^1.6.0", + "console-browserify": "^1.1.0", + "constants-browserify": "~1.0.0", + "crypto-browserify": "^3.0.0", + "defined": "^1.0.0", + "deps-sort": "^2.0.1", + "domain-browser": "^1.2.0", + "duplexer2": "~0.1.2", + "events": "^3.0.0", + "glob": "^7.1.0", + "has": "^1.0.0", + "htmlescape": "^1.1.0", + "https-browserify": "^1.0.0", + "inherits": "~2.0.1", + "insert-module-globals": "^7.2.1", + "JSONStream": "^1.0.3", + "labeled-stream-splicer": "^2.0.0", + "mkdirp-classic": "^0.5.2", + "module-deps": "^6.2.3", + "os-browserify": "~0.3.0", + "parents": "^1.0.1", + "path-browserify": "^1.0.0", + "process": "~0.11.0", + "punycode": "^1.3.2", + "querystring-es3": "~0.2.0", + "read-only-stream": "^2.0.0", + "readable-stream": "^2.0.2", + "resolve": "^1.1.4", + "shasum-object": "^1.0.0", + "shell-quote": "^1.6.1", + "stream-browserify": "^3.0.0", + "stream-http": "^3.0.0", + "string_decoder": "^1.1.1", + "subarg": "^1.0.0", + "syntax-error": "^1.1.1", + "through2": "^2.0.0", + "timers-browserify": "^1.0.1", + "tty-browserify": "0.0.1", + "url": "~0.11.0", + "util": "~0.12.0", + "vm-browserify": "^1.0.0", + "xtend": "^4.0.0" + }, + "bin": { + "browserify": "bin/cmd.js" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "dev": true, + "dependencies": { + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/browserify-cipher": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", + "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", + "dev": true, + "dependencies": { + "browserify-aes": "^1.0.4", + "browserify-des": "^1.0.0", + "evp_bytestokey": "^1.0.0" + } + }, + "node_modules/browserify-des": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", + "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", + "dev": true, + "dependencies": { + "cipher-base": "^1.0.1", + "des.js": "^1.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/browserify-rsa": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz", + "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", + "dev": true, + "dependencies": { + "bn.js": "^5.0.0", + "randombytes": "^2.0.1" + } + }, + "node_modules/browserify-shim": { + "version": "3.8.16", + "resolved": "https://registry.npmjs.org/browserify-shim/-/browserify-shim-3.8.16.tgz", + "integrity": "sha512-+Ap0xOKUC5Hz8sdUROxCJHgzA5IeU7pgUquCdlbBxyxkexzU4kpU6u1TsIvnFJcdx1bxO902J08AEjbMqDbA3g==", + "dev": true, + "dependencies": { + "exposify": "~0.5.0", + "mothership": "~0.3.0", + "rename-function-calls": "~0.1.0", + "resolve": "~0.6.1", + "through": "~2.3.4" + }, + "peerDependencies": { + "browserify": ">= 2.3" + } + }, + "node_modules/browserify-shim/node_modules/resolve": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-0.6.3.tgz", + "integrity": "sha512-UHBY3viPlJKf85YijDUcikKX6tmF4SokIDp518ZDVT92JNDcG5uKIthaT/owt3Sar0lwtOafsQuwrg22/v2Dwg==", + "dev": true + }, + "node_modules/browserify-sign": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.2.tgz", + "integrity": "sha512-1rudGyeYY42Dk6texmv7c4VcQ0EsvVbLwZkA+AQB7SxvXxmcD93jcHie8bzecJ+ChDlmAm2Qyu0+Ccg5uhZXCg==", + "dev": true, + "dependencies": { + "bn.js": "^5.2.1", + "browserify-rsa": "^4.1.0", + "create-hash": "^1.2.0", + "create-hmac": "^1.1.7", + "elliptic": "^6.5.4", + "inherits": "^2.0.4", + "parse-asn1": "^5.1.6", + "readable-stream": "^3.6.2", + "safe-buffer": "^5.2.1" + }, + "engines": { + "node": ">= 4" + } + }, + "node_modules/browserify-sign/node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/browserify-zlib": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", + "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", + "dev": true, + "dependencies": { + "pako": "~1.0.5" + } + }, + "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/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "node_modules/buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==", + "dev": true + }, + "node_modules/builtin-status-codes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", + "integrity": "sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==", + "dev": true + }, + "node_modules/cached-path-relative": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/cached-path-relative/-/cached-path-relative-1.1.0.tgz", + "integrity": "sha512-WF0LihfemtesFcJgO7xfOoOcnWzY/QHR4qeDqV44jPU3HTI54+LnfXK3SA27AVVGCdZFgjjFFaqUA9Jx7dMJZA==", + "dev": true + }, + "node_modules/call-bind": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.5.tgz", + "integrity": "sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.1", + "set-function-length": "^1.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/call-me-maybe": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.2.tgz", + "integrity": "sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ==" + }, + "node_modules/callsites": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-4.1.0.tgz", + "integrity": "sha512-aBMbD1Xxay75ViYezwT40aQONfr+pSXTHwNKvIXhXD6+LY3F1dLIcceoC5OZKBVHbXcysz1hL9D2w0JJIMXpUw==", + "dev": true, + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cbor": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/cbor/-/cbor-8.1.0.tgz", + "integrity": "sha512-DwGjNW9omn6EwP70aXsn7FQJx5kO12tX0bZkaTjzdVFM6/7nhA4t0EENocKGx6D2Bch9PE2KzCUf5SceBdeijg==", + "dev": true, + "dependencies": { + "nofilter": "^3.1.0" + }, + "engines": { + "node": ">=12.19" + } + }, + "node_modules/chalk": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", + "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", + "dev": true, + "engines": { + "node": "^12.17.0 || ^14.13 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "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/chunkd": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/chunkd/-/chunkd-2.0.1.tgz", + "integrity": "sha512-7d58XsFmOq0j6el67Ug9mHf9ELUXsQXYJBkyxhH/k+6Ke0qXRnv0kbemx+Twc6fRJ07C49lcbdgm9FL1Ei/6SQ==", + "dev": true + }, + "node_modules/ci-info": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", + "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "engines": { + "node": ">=8" + } + }, + "node_modules/ci-parallel-vars": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ci-parallel-vars/-/ci-parallel-vars-1.0.1.tgz", + "integrity": "sha512-uvzpYrpmidaoxvIQHM+rKSrigjOe9feHYbw4uOI2gdfe1C3xIlxO+kVXq83WQWNniTf8bAxVpy+cQeFQsMERKg==", + "dev": true + }, + "node_modules/cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/clean-stack": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-4.2.0.tgz", + "integrity": "sha512-LYv6XPxoyODi36Dp976riBtSY27VmFo+MKqEU9QCCWyTrdEPDog+RWA7xQWHi6Vbp61j5c4cdzzX1NidnwtUWg==", + "dev": true, + "dependencies": { + "escape-string-regexp": "5.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/clean-stack/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/clean-yaml-object": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/clean-yaml-object/-/clean-yaml-object-0.1.0.tgz", + "integrity": "sha512-3yONmlN9CSAkzNwnRCiJQ7Q2xK5mWuEfL3PuTZcAUzhObbXsfsnMptJzXwz93nc5zn9V9TwCVMmV7w4xsm43dw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/cli-color": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/cli-color/-/cli-color-2.0.3.tgz", + "integrity": "sha512-OkoZnxyC4ERN3zLzZaY9Emb7f/MhBOIpePv0Ycok0fJYT+Ouo00UBEIwsVsr0yoow++n5YWlSUgST9GKhNHiRQ==", + "dependencies": { + "d": "^1.0.1", + "es5-ext": "^0.10.61", + "es6-iterator": "^2.0.3", + "memoizee": "^0.4.15", + "timers-ext": "^0.1.7" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/cli-truncate": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-3.1.0.tgz", + "integrity": "sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==", + "dev": true, + "dependencies": { + "slice-ansi": "^5.0.0", + "string-width": "^5.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/cliui/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/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==", + "dev": true + }, + "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==", + "dev": true, + "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==", + "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/cliui/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/code-excerpt": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/code-excerpt/-/code-excerpt-4.0.0.tgz", + "integrity": "sha512-xxodCmBen3iy2i0WtAK8FlFNrRzjUqjRsMfho58xT/wvZU1YTM3fCnRjcy1gJPMepaRlgm/0e6w8SpWHpn3/cA==", + "dev": true, + "dependencies": { + "convert-to-spaces": "^2.0.1" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, + "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/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/combine-source-map": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/combine-source-map/-/combine-source-map-0.8.0.tgz", + "integrity": "sha512-UlxQ9Vw0b/Bt/KYwCFqdEwsQ1eL8d1gibiFb7lxQJFdvTgc2hIZi6ugsg+kyhzhPV+QEpUiEIwInIAIrgoEkrg==", + "dev": true, + "dependencies": { + "convert-source-map": "~1.1.0", + "inline-source-map": "~0.6.0", + "lodash.memoize": "~3.0.3", + "source-map": "~0.5.3" + } + }, + "node_modules/common-path-prefix": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/common-path-prefix/-/common-path-prefix-3.0.0.tgz", + "integrity": "sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w==", + "dev": true + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + }, + "node_modules/concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "dev": true, + "engines": [ + "node >= 0.8" + ], + "dependencies": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + } + }, + "node_modules/concordance": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/concordance/-/concordance-5.0.4.tgz", + "integrity": "sha512-OAcsnTEYu1ARJqWVGwf4zh4JDfHZEaSNlNccFmt8YjB2l/n19/PF2viLINHc57vO4FKIAFl2FWASIGZZWZ2Kxw==", + "dev": true, + "dependencies": { + "date-time": "^3.1.0", + "esutils": "^2.0.3", + "fast-diff": "^1.2.0", + "js-string-escape": "^1.0.1", + "lodash": "^4.17.15", + "md5-hex": "^3.0.1", + "semver": "^7.3.2", + "well-known-symbols": "^2.0.0" + }, + "engines": { + "node": ">=10.18.0 <11 || >=12.14.0 <13 || >=14" + } + }, + "node_modules/concurrently": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/concurrently/-/concurrently-7.6.0.tgz", + "integrity": "sha512-BKtRgvcJGeZ4XttiDiNcFiRlxoAeZOseqUvyYRUp/Vtd+9p1ULmeoSqGsDA+2ivdeDFpqrJvGvmI+StKfKl5hw==", + "dev": true, + "dependencies": { + "chalk": "^4.1.0", + "date-fns": "^2.29.1", + "lodash": "^4.17.21", + "rxjs": "^7.0.0", + "shell-quote": "^1.7.3", + "spawn-command": "^0.0.2-1", + "supports-color": "^8.1.0", + "tree-kill": "^1.2.2", + "yargs": "^17.3.1" + }, + "bin": { + "conc": "dist/bin/concurrently.js", + "concurrently": "dist/bin/concurrently.js" + }, + "engines": { + "node": "^12.20.0 || ^14.13.0 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/open-cli-tools/concurrently?sponsor=1" + } + }, + "node_modules/concurrently/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/concurrently/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/concurrently/node_modules/chalk/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/console-browserify": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", + "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==", + "dev": true + }, + "node_modules/constants-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", + "integrity": "sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==", + "dev": true + }, + "node_modules/convert-source-map": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.1.3.tgz", + "integrity": "sha512-Y8L5rp6jo+g9VEPgvqNfEopjTR4OTYct8lXlS8iVQdmnjDvbdbzYe9rjtFCB9egC86JoNCU61WRY+ScjkZpnIg==", + "dev": true + }, + "node_modules/convert-to-spaces": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/convert-to-spaces/-/convert-to-spaces-2.0.1.tgz", + "integrity": "sha512-rcQ1bsQO9799wq24uE5AM2tAILy4gXGIK/njFWcVQkGNZ96edlpY+A7bjwvzjYvLDyzmG1MmMLZhpcsb+klNMQ==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, + "node_modules/core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", + "dev": true + }, + "node_modules/create-ecdh": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", + "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", + "dev": true, + "dependencies": { + "bn.js": "^4.1.0", + "elliptic": "^6.5.3" + } + }, + "node_modules/create-ecdh/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + }, + "node_modules/create-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "dev": true, + "dependencies": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" + } + }, + "node_modules/create-hmac": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "dev": true, + "dependencies": { + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/crypto-browserify": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", + "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "dev": true, + "dependencies": { + "browserify-cipher": "^1.0.0", + "browserify-sign": "^4.0.0", + "create-ecdh": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.0", + "diffie-hellman": "^5.0.0", + "inherits": "^2.0.1", + "pbkdf2": "^3.0.3", + "public-encrypt": "^4.0.0", + "randombytes": "^2.0.0", + "randomfill": "^1.0.3" + }, + "engines": { + "node": "*" + } + }, + "node_modules/currently-unhandled": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", + "integrity": "sha512-/fITjgjGU50vjQ4FH6eUoYu+iUoUKIXws2hL15JJpIR+BbTxaXQsMuuyjtNh2WqsSBS5nsaZHFsFecyw5CCAng==", + "dev": true, + "dependencies": { + "array-find-index": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/d": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", + "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", + "dependencies": { + "es5-ext": "^0.10.50", + "type": "^1.0.1" + } + }, + "node_modules/dash-ast": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/dash-ast/-/dash-ast-1.0.0.tgz", + "integrity": "sha512-Vy4dx7gquTeMcQR/hDkYLGUnwVil6vk4FOOct+djUnHOUWt+zJPJAaRIXaAFkPXtJjvlY7o3rfRu0/3hpnwoUA==", + "dev": true + }, + "node_modules/date-fns": { + "version": "2.30.0", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.30.0.tgz", + "integrity": "sha512-fnULvOpxnC5/Vg3NCiWelDsLiUc9bRwAPs/+LfTLNvetFCtCTN+yQz15C/fs4AwX1R9K5GLtLfn8QW+dWisaAw==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.21.0" + }, + "engines": { + "node": ">=0.11" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/date-fns" + } + }, + "node_modules/date-time": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/date-time/-/date-time-3.1.0.tgz", + "integrity": "sha512-uqCUKXE5q1PNBXjPqvwhwJf9SwMoAHBgWJ6DcrnS5o+W2JOiIILl0JEdVD8SGujrNS02GGxgwAg2PN2zONgtjg==", + "dev": true, + "dependencies": { + "time-zone": "^1.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/debug/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true + }, + "node_modules/define-data-property": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.1.tgz", + "integrity": "sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.2.1", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", + "dev": true, + "dependencies": { + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/defined": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.1.tgz", + "integrity": "sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/del": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/del/-/del-6.1.1.tgz", + "integrity": "sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==", + "dev": true, + "dependencies": { + "globby": "^11.0.1", + "graceful-fs": "^4.2.4", + "is-glob": "^4.0.1", + "is-path-cwd": "^2.2.0", + "is-path-inside": "^3.0.2", + "p-map": "^4.0.0", + "rimraf": "^3.0.2", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/del/node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dev": true, + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/del/node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/del/node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/del/node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dev": true, + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/deps-sort": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/deps-sort/-/deps-sort-2.0.1.tgz", + "integrity": "sha512-1orqXQr5po+3KI6kQb9A4jnXT1PBwggGl2d7Sq2xsnOeI9GPcE/tGcF9UiSZtZBM7MukY4cAh7MemS6tZYipfw==", + "dev": true, + "dependencies": { + "JSONStream": "^1.0.3", + "shasum-object": "^1.0.0", + "subarg": "^1.0.0", + "through2": "^2.0.0" + }, + "bin": { + "deps-sort": "bin/cmd.js" + } + }, + "node_modules/des.js": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.1.0.tgz", + "integrity": "sha512-r17GxjhUCjSRy8aiJpr8/UadFIzMzJGexI3Nmz4ADi9LYSFx4gTBp80+NaX/YsXWWLhpZ7v/v/ubEc/bCNfKwg==", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/detective": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/detective/-/detective-5.2.1.tgz", + "integrity": "sha512-v9XE1zRnz1wRtgurGu0Bs8uHKFSTdteYZNbIPFVhUZ39L/S79ppMpdmVOZAnoz1jfEFodc48n6MX483Xo3t1yw==", + "dev": true, + "dependencies": { + "acorn-node": "^1.8.2", + "defined": "^1.0.0", + "minimist": "^1.2.6" + }, + "bin": { + "detective": "bin/detective.js" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/diffie-hellman": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "dev": true, + "dependencies": { + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" + } + }, + "node_modules/diffie-hellman/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/domain-browser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", + "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", + "dev": true, + "engines": { + "node": ">=0.4", + "npm": ">=1.2" + } + }, + "node_modules/dot-parts": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dot-parts/-/dot-parts-1.0.1.tgz", + "integrity": "sha512-DcAuaZ2hguFLkxrAwOlvYNFb4IE6xg1Ldzqpma4/UeiT0utd8/E17z1h9mH8s+9Hwh7SeLn83LpIykh/oBBxSw==", + "dev": true + }, + "node_modules/duplexer2": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", + "integrity": "sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==", + "dev": true, + "dependencies": { + "readable-stream": "^2.0.2" + } + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true + }, + "node_modules/elliptic": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.9", + "brorand": "^1.1.0", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/elliptic/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + }, + "node_modules/emittery": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.11.0.tgz", + "integrity": "sha512-S/7tzL6v5i+4iJd627Nhv9cLFIo5weAIlGccqJFpnBoDB8U1TF2k5tez4J/QNuxyyhWuFqHg1L84Kd3m7iXg6g==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sindresorhus/emittery?sponsor=1" + } + }, + "node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/es5-ext": { + "version": "0.10.62", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.62.tgz", + "integrity": "sha512-BHLqn0klhEpnOKSrzn/Xsz2UIW8j+cGmo9JLzr8BiUapV8hPL9+FliFqjwr9ngW7jWdnxv6eO+/LqyhJVqgrjA==", + "hasInstallScript": true, + "dependencies": { + "es6-iterator": "^2.0.3", + "es6-symbol": "^3.1.3", + "next-tick": "^1.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/es6-iterator": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", + "integrity": "sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==", + "dependencies": { + "d": "1", + "es5-ext": "^0.10.35", + "es6-symbol": "^3.1.1" + } + }, + "node_modules/es6-symbol": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", + "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", + "dependencies": { + "d": "^1.0.1", + "ext": "^1.1.2" + } + }, + "node_modules/es6-weak-map": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.3.tgz", + "integrity": "sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA==", + "dependencies": { + "d": "1", + "es5-ext": "^0.10.46", + "es6-iterator": "^2.0.3", + "es6-symbol": "^3.1.1" + } + }, + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "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/escodegen": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.1.0.tgz", + "integrity": "sha512-md+WjA8K+DJELEYe0n4XAOE0XbUYfw2rzb8T+nhZ19OnQxlh+0jMLS6d+z2oqWugIh3uYKu1+KJh6QKeoogLzg==", + "dev": true, + "dependencies": { + "esprima": "~1.0.4", + "estraverse": "~1.5.0", + "esutils": "~1.0.0" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=0.4.0" + }, + "optionalDependencies": { + "source-map": "~0.1.30" + } + }, + "node_modules/escodegen/node_modules/estraverse": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-1.5.1.tgz", + "integrity": "sha512-FpCjJDfmo3vsc/1zKSeqR5k42tcIhxFIlvq+h9j0fO2q/h2uLKyweq7rYJ+0CoVvrGQOxIS5wyBrW/+vF58BUQ==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/escodegen/node_modules/esutils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-1.0.0.tgz", + "integrity": "sha512-x/iYH53X3quDwfHRz4y8rn4XcEwwCJeWsul9pF1zldMbGtgOtMNBEOuYWwB1EQlK2LRa1fev3YAgym/RElp5Cg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/escodegen/node_modules/source-map": { + "version": "0.1.43", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", + "integrity": "sha512-VtCvB9SIQhk3aF6h+N85EaqIaBFIAfZ9Cu+NJHHVvc8BbEcnvDcFw6sqQ2dQrT6SlOrZq3tIvyD9+EGq/lJryQ==", + "dev": true, + "optional": true, + "dependencies": { + "amdefine": ">=0.0.4" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/eslint": { + "version": "8.56.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.56.0.tgz", + "integrity": "sha512-Go19xM6T9puCOWntie1/P997aXxFsOi37JIHRWI514Hc6ZnaHGKY9xFhrU65RT6CcBEzZoGG1e6Nq+DT04ZtZQ==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.56.0", + "@humanwhocodes/config-array": "^0.11.13", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "@ungap/structured-clone": "^1.2.0", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-config-prettier": { + "version": "8.10.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.10.0.tgz", + "integrity": "sha512-SM8AMJdeQqRYT9O9zguiruQZaN7+z+E4eAP9oiLNGKMtomwaB1E9dcgUD6ZAn/eQAb52USbvezbiljfZUhbJcg==", + "dev": true, + "bin": { + "eslint-config-prettier": "bin/cli.js" + }, + "peerDependencies": { + "eslint": ">=7.0.0" + } + }, + "node_modules/eslint-plugin-prettier": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-4.2.1.tgz", + "integrity": "sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ==", + "dev": true, + "dependencies": { + "prettier-linter-helpers": "^1.0.0" + }, + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "eslint": ">=7.28.0", + "prettier": ">=2.0.0" + }, + "peerDependenciesMeta": { + "eslint-config-prettier": { + "optional": true + } + } + }, + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/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/eslint-scope": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/eslint/node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/eslint/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/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/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "dev": true, + "dependencies": { + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esprima": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-1.0.4.tgz", + "integrity": "sha512-rp5dMKN8zEs9dfi9g0X1ClLmV//WRyk/R15mppFNICIFRG5P92VP7Z04p8pk++gABo9W2tY+kHyu6P1mEHgmTA==", + "dev": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/esprima-fb": { + "version": "3001.1.0-dev-harmony-fb", + "resolved": "https://registry.npmjs.org/esprima-fb/-/esprima-fb-3001.0001.0000-dev-harmony-fb.tgz", + "integrity": "sha512-a3RFiCVBiy8KdO6q/C+8BQiP/sRk8XshBU3QHHDP8tNzjYwR3FKBOImu+PXfVhPoZL0JKtJLBAOWlDMCCFY8SQ==", + "dev": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/esquery": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "dev": true, + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esquery/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/event-emitter": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", + "integrity": "sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==", + "dependencies": { + "d": "1", + "es5-ext": "~0.10.14" + } + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "dev": true, + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "dev": true, + "dependencies": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/exposify": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/exposify/-/exposify-0.5.0.tgz", + "integrity": "sha512-SXS1oEW6VXYinz7RbTPUj+RhO3ZXuj2cmUTWTaO8KcWMcxLZF3wzjqSuaOW0EZYBoKooUM8DIkvfWWOMXTMQFQ==", + "dev": true, + "dependencies": { + "globo": "~1.1.0", + "map-obj": "~1.0.1", + "replace-requires": "~1.0.3", + "through2": "~0.4.0", + "transformify": "~0.1.1" + } + }, + "node_modules/exposify/node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", + "dev": true + }, + "node_modules/exposify/node_modules/object-keys": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-0.4.0.tgz", + "integrity": "sha512-ncrLw+X55z7bkl5PnUvHwFK9FcGuFYo9gtjws2XtSzL+aZ8tm830P60WJ0dSmFVaSalWieW5MD7kEdnXda9yJw==", + "dev": true + }, + "node_modules/exposify/node_modules/readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha512-ok1qVCJuRkNmvebYikljxJA/UEsKwLl2nI1OmaqAu4/UE+h0wKCHok4XkL/gvi39OacXvw59RJUOFUkDib2rHg==", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/exposify/node_modules/string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==", + "dev": true + }, + "node_modules/exposify/node_modules/through2": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-0.4.2.tgz", + "integrity": "sha512-45Llu+EwHKtAZYTPPVn3XZHBgakWMN3rokhEv5hu596XP+cNgplMg+Gj+1nmAvj+L0K7+N49zBKx5rah5u0QIQ==", + "dev": true, + "dependencies": { + "readable-stream": "~1.0.17", + "xtend": "~2.1.1" + } + }, + "node_modules/exposify/node_modules/xtend": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-2.1.2.tgz", + "integrity": "sha512-vMNKzr2rHP9Dp/e1NQFnLQlwlhp9L/LfvnsVdHxN1f+uggyVI3i08uD14GPvCToPkdsRfyPqIyYGmIk58V98ZQ==", + "dev": true, + "dependencies": { + "object-keys": "~0.4.0" + }, + "engines": { + "node": ">=0.4" + } + }, + "node_modules/ext": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.7.0.tgz", + "integrity": "sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==", + "dependencies": { + "type": "^2.7.2" + } + }, + "node_modules/ext/node_modules/type": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/type/-/type-2.7.2.tgz", + "integrity": "sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==" + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/fast-diff": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.3.0.tgz", + "integrity": "sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==", + "dev": true + }, + "node_modules/fast-glob": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", + "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true + }, + "node_modules/fast-safe-stringify": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", + "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==", + "dev": true + }, + "node_modules/fastq": { + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.0.tgz", + "integrity": "sha512-zGygtijUMT7jnk3h26kUms3BkSDp4IfIKjmnqI2tvx6nuBfiF1UqOxbnLfzdv+apBy+53oaImsKtMw/xYbW+1w==", + "dev": true, + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/figures": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/figures/-/figures-4.0.1.tgz", + "integrity": "sha512-rElJwkA/xS04Vfg+CaZodpso7VqBknOYbzi6I76hI4X80RUjkSxO2oAyPmGbuXUppywjqndOrQDl817hDnI++w==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^5.0.0", + "is-unicode-supported": "^1.2.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/figures/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/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/find-parent-dir": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/find-parent-dir/-/find-parent-dir-0.3.1.tgz", + "integrity": "sha512-o4UcykWV/XN9wm+jMEtWLPlV8RXCZnMhQI6F6OdHeSez7iiJWePw8ijOlskJZMsaQoGR/b7dH6lO02HhaTN7+A==", + "dev": true + }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", + "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", + "dev": true, + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.3", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/flatted": { + "version": "3.2.9", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.9.tgz", + "integrity": "sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==", + "dev": true + }, + "node_modules/for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "dev": true, + "dependencies": { + "is-callable": "^1.1.3" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-assigned-identifiers": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/get-assigned-identifiers/-/get-assigned-identifiers-1.2.0.tgz", + "integrity": "sha512-mBBwmeGTrxEMO4pMaaf/uUEFHnYtwr8FTe8Y/mer4rcV/bye0qGm6pw1bGZFGStxC5O76c5ZAVBGnqHmOaJpdQ==", + "dev": true + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.2.tgz", + "integrity": "sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.2", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-stdin": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz", + "integrity": "sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/glob-promise": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/glob-promise/-/glob-promise-4.2.2.tgz", + "integrity": "sha512-xcUzJ8NWN5bktoTIX7eOclO1Npxd/dyVqUJxlLIDasT4C7KZyqlPIwkdJ0Ypiy3p2ZKahTjK4M9uC3sNSfNMzw==", + "dependencies": { + "@types/glob": "^7.1.3" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "type": "individual", + "url": "https://github.com/sponsors/ahmadnassri" + }, + "peerDependencies": { + "glob": "^7.1.6" + } + }, + "node_modules/globals": { + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "dev": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dev": true, + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globo": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/globo/-/globo-1.1.0.tgz", + "integrity": "sha512-9kacJpRuOo2IPxzYdogGZKnREZXMLs7P2/gaeHxynuL7kmxdB9o4EVtpd69f81CeUFWmZSxj1heZFEXQDTkaLQ==", + "dev": true, + "dependencies": { + "accessory": "~1.1.0", + "is-defined": "~1.0.0", + "ternary": "~1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true + }, + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "dev": true + }, + "node_modules/has": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.4.tgz", + "integrity": "sha512-qdSAmqLF6209RFj4VVItywPMbm3vWylknmB3nvNiUIs72xAimcM8nVYxYr7ncvZq5qzk9MKIZR8ijqD/1QuYjQ==", + "dev": true, + "engines": { + "node": ">= 0.4.0" + } + }, + "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/has-property-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.1.tgz", + "integrity": "sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.2.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", + "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-require": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/has-require/-/has-require-1.2.2.tgz", + "integrity": "sha512-JHMVoV2TG3LEFw/8UjxXJzCRGdOHJzzAXft7BafERh2rdPYZcS5N6Twv7Q8yLy9mciKsVBkXmpWSuLp5GUXNng==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^1.0.3" + } + }, + "node_modules/has-require/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/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hash-base": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", + "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/hash-base/node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "node_modules/hasown": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", + "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", + "dev": true, + "dependencies": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/htmlescape": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/htmlescape/-/htmlescape-1.1.1.tgz", + "integrity": "sha512-eVcrzgbR4tim7c7soKQKtxa/kQM4TzjnlU83rcZ9bHU6t31ehfV7SktN6McWgwPWg+JYMA/O3qpGxBvFq1z2Jg==", + "dev": true, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/https-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", + "integrity": "sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg==", + "dev": true + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/ignore": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/ignore-by-default": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-2.1.0.tgz", + "integrity": "sha512-yiWd4GVmJp0Q6ghmM2B/V3oZGRmjrKLXvHR3TE1nfoXsmoggllfZUQe74EN0fJdPFZu2NIvNdrMMLm3OsV7Ohw==", + "dev": true, + "engines": { + "node": ">=10 <11 || >=12 <13 || >=14" + } + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz", + "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/inline-source-map": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/inline-source-map/-/inline-source-map-0.6.2.tgz", + "integrity": "sha512-0mVWSSbNDvedDWIN4wxLsdPM4a7cIPcpyMxj3QZ406QRwQ6ePGB1YIHxVPjqpcUGbWQ5C+nHTwGNWAGvt7ggVA==", + "dev": true, + "dependencies": { + "source-map": "~0.5.3" + } + }, + "node_modules/insert-module-globals": { + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/insert-module-globals/-/insert-module-globals-7.2.1.tgz", + "integrity": "sha512-ufS5Qq9RZN+Bu899eA9QCAYThY+gGW7oRkmb0vC93Vlyu/CFGcH0OYPEjVkDXA5FEbTt1+VWzdoOD3Ny9N+8tg==", + "dev": true, + "dependencies": { + "acorn-node": "^1.5.2", + "combine-source-map": "^0.8.0", + "concat-stream": "^1.6.1", + "is-buffer": "^1.1.0", + "JSONStream": "^1.0.3", + "path-is-absolute": "^1.0.1", + "process": "~0.11.0", + "through2": "^2.0.0", + "undeclared-identifiers": "^1.1.2", + "xtend": "^4.0.0" + }, + "bin": { + "insert-module-globals": "bin/cmd.js" + } + }, + "node_modules/interpret": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", + "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/irregular-plurals": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-3.5.0.tgz", + "integrity": "sha512-1ANGLZ+Nkv1ptFb2pa8oG8Lem4krflKuX/gINiHJHjJUKaJHk/SXk5x6K3J+39/p0h1RQ2saROclJJ+QLvETCQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-arguments": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", + "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true + }, + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-core-module": { + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "dev": true, + "dependencies": { + "hasown": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-defined": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-defined/-/is-defined-1.0.0.tgz", + "integrity": "sha512-/drGiPCBGsJDhtnLkdcNl8QtEo9ddV10m0Y7wzkopIQM4u91wXhe84pZSH6RLukO2uJDtQoaAr1XoP0ilwsYzg==", + "dev": true + }, + "node_modules/is-error": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/is-error/-/is-error-2.2.2.tgz", + "integrity": "sha512-IOQqts/aHWbiisY5DuPJQ0gcbvaLFCa7fBa9xoLfxBZvQ+ZI/Zh9xoI7Gk+G64N0FdK4AbibytHht2tWgpJWLg==", + "dev": true + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz", + "integrity": "sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-generator-function": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", + "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-path-cwd": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", + "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-promise": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-4.0.0.tgz", + "integrity": "sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ==", + "dev": true + }, + "node_modules/is-typed-array": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz", + "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==", + "dev": true, + "dependencies": { + "which-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-unicode-supported": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-1.3.0.tgz", + "integrity": "sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-utf8": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha512-rMYPYvCzsXywIsldgLaSoPlw5PfoB/ssr7hY4pLfcodrA5M/eArza1a9VmTiNIBNMjOGr1Ow9mTyU2o69U6U9Q==", + "dev": true + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "node_modules/js-string-escape": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/js-string-escape/-/js-string-escape-1.0.1.tgz", + "integrity": "sha512-Smw4xcfIQ5LVjAOuJCvN/zIodzA/BBSsluuoSykP+lUvScIi4U6RJLfwHet5cxFnCswUjISV8oAXaqaJDY3chg==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true + }, + "node_modules/jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", + "dev": true, + "engines": [ + "node >= 0.2.0" + ] + }, + "node_modules/JSONStream": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", + "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", + "dev": true, + "dependencies": { + "jsonparse": "^1.2.0", + "through": ">=2.2.7 <3" + }, + "bin": { + "JSONStream": "bin.js" + }, + "engines": { + "node": "*" + } + }, + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "dev": true, + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/labeled-stream-splicer": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/labeled-stream-splicer/-/labeled-stream-splicer-2.0.2.tgz", + "integrity": "sha512-Ca4LSXFFZUjPScRaqOcFxneA0VpKZr4MMYCljyQr4LIewTLb3Y0IUTIsnBBsVubIeEfxeSZpSjSsRM8APEQaAw==", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "stream-splicer": "^2.0.0" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/load-json-file": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-7.0.1.tgz", + "integrity": "sha512-Gnxj3ev3mB5TkVBGad0JM6dmLiQL+o0t23JPBZ9sd+yvSLk05mFoqKBw5N8gbbkU4TNXyqCgIrl/VM17OgUIgQ==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "node_modules/lodash.memoize": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-3.0.4.tgz", + "integrity": "sha512-eDn9kqrAmVUC1wmZvlQ6Uhde44n+tXpqPrN8olQJbttgh0oKclk+SF54P47VEGE9CEiMeRwAP8BaM7UHvBkz2A==", + "dev": true + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "node_modules/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/lru-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/lru-queue/-/lru-queue-0.1.0.tgz", + "integrity": "sha512-BpdYkt9EvGl8OfWHDQPISVpcl5xZthb+XPsbELj5AQXxIC8IriDZIQYjBJPEm5rS420sjZ0TLEzRcq5KdBhYrQ==", + "dependencies": { + "es5-ext": "~0.10.2" + } + }, + "node_modules/map-age-cleaner": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", + "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==", + "dev": true, + "dependencies": { + "p-defer": "^1.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/matcher": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/matcher/-/matcher-5.0.0.tgz", + "integrity": "sha512-s2EMBOWtXFc8dgqvoAzKJXxNHibcdJMV0gwqKUaw9E2JBJuGUK7DrNKrA6g/i+v72TT16+6sVm5mS3thaMLQUw==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^5.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/matcher/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/md5-hex": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-3.0.1.tgz", + "integrity": "sha512-BUiRtTtV39LIJwinWBjqVsU9xhdnz7/i889V859IBFpuqGAj6LuOvHv5XLbgZ2R7ptJoJaEcxkv88/h25T7Ciw==", + "dev": true, + "dependencies": { + "blueimp-md5": "^2.10.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/md5.js": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "dev": true, + "dependencies": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/mem": { + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/mem/-/mem-9.0.2.tgz", + "integrity": "sha512-F2t4YIv9XQUBHt6AOJ0y7lSmP1+cY7Fm1DRh9GClTGzKST7UWLMx6ly9WZdLH/G/ppM5RL4MlQfRT71ri9t19A==", + "dev": true, + "dependencies": { + "map-age-cleaner": "^0.1.3", + "mimic-fn": "^4.0.0" + }, + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sindresorhus/mem?sponsor=1" + } + }, + "node_modules/memoizee": { + "version": "0.4.15", + "resolved": "https://registry.npmjs.org/memoizee/-/memoizee-0.4.15.tgz", + "integrity": "sha512-UBWmJpLZd5STPm7PMUlOw/TSy972M+z8gcyQ5veOnSDRREz/0bmpyTfKt3/51DhEBqCZQn1udM/5flcSPYhkdQ==", + "dependencies": { + "d": "^1.0.1", + "es5-ext": "^0.10.53", + "es6-weak-map": "^2.0.3", + "event-emitter": "^0.3.5", + "is-promise": "^2.2.2", + "lru-queue": "^0.1.0", + "next-tick": "^1.1.0", + "timers-ext": "^0.1.7" + } + }, + "node_modules/memoizee/node_modules/is-promise": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", + "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==" + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dev": true, + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "dev": true, + "dependencies": { + "bn.js": "^4.0.0", + "brorand": "^1.0.1" + }, + "bin": { + "miller-rabin": "bin/miller-rabin" + } + }, + "node_modules/miller-rabin/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + }, + "node_modules/mimic-fn": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", + "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", + "dev": true + }, + "node_modules/minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==", + "dev": true + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/mkdirp-classic": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", + "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==", + "dev": true + }, + "node_modules/module-deps": { + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/module-deps/-/module-deps-6.2.3.tgz", + "integrity": "sha512-fg7OZaQBcL4/L+AK5f4iVqf9OMbCclXfy/znXRxTVhJSeW5AIlS9AwheYwDaXM3lVW7OBeaeUEY3gbaC6cLlSA==", + "dev": true, + "dependencies": { + "browser-resolve": "^2.0.0", + "cached-path-relative": "^1.0.2", + "concat-stream": "~1.6.0", + "defined": "^1.0.0", + "detective": "^5.2.0", + "duplexer2": "^0.1.2", + "inherits": "^2.0.1", + "JSONStream": "^1.0.3", + "parents": "^1.0.0", + "readable-stream": "^2.0.2", + "resolve": "^1.4.0", + "stream-combiner2": "^1.1.1", + "subarg": "^1.0.0", + "through2": "^2.0.0", + "xtend": "^4.0.0" + }, + "bin": { + "module-deps": "bin/cmd.js" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/mothership": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/mothership/-/mothership-0.3.0.tgz", + "integrity": "sha512-/ORGXVhkG5Qal0ZD3BnxG/JtMcCJKOn7FkbbTA8N9HwJyXGsBYq9EXH7WbsRCpGUwmwrpQqN6ENLUL+ebmNTCQ==", + "dev": true, + "dependencies": { + "find-parent-dir": "~0.3.0" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true + }, + "node_modules/mz": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", + "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", + "dependencies": { + "any-promise": "^1.0.0", + "object-assign": "^4.0.1", + "thenify-all": "^1.0.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==", + "dev": true + }, + "node_modules/natural-compare-lite": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", + "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", + "dev": true + }, + "node_modules/next-tick": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz", + "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==" + }, + "node_modules/nofilter": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/nofilter/-/nofilter-3.1.0.tgz", + "integrity": "sha512-l2NNj07e9afPnhAhvgVrCD/oy2Ai1yfLpuo3EpiO1jFTsB4sFz6oIfAfSZyQzVpkZQ9xS8ZS5g1jCBgq4Hwo0g==", + "dev": true, + "engines": { + "node": ">=12.19" + } + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", + "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", + "dev": true, + "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" + } + }, + "node_modules/object.assign": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", + "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/optionator": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", + "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", + "dev": true, + "dependencies": { + "@aashutoshrathi/word-wrap": "^1.2.3", + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/os-browserify": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", + "integrity": "sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==", + "dev": true + }, + "node_modules/p-defer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", + "integrity": "sha512-wB3wfAxZpk2AzOfUMJNL+d36xothRSyj8EXOa4f6GMqYDN9BJaaSISbsk+wS9abmnebVw95C2Kb5t85UmpCxuw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/p-event": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/p-event/-/p-event-5.0.1.tgz", + "integrity": "sha512-dd589iCQ7m1L0bmC5NLlVYfy3TbBEsMUfWx9PyAgPeIcFZ/E2yaTZ4Rz4MiBmmJShviiftHVXOqfnfzJ6kyMrQ==", + "dev": true, + "dependencies": { + "p-timeout": "^5.0.2" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-map": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-5.5.0.tgz", + "integrity": "sha512-VFqfGDHlx87K66yZrNdI4YGtD70IRyd+zSvgks6mzHPRNkoKy+9EKP4SFC77/vTTQYmRmti7dvqC+m5jBrBAcg==", + "dev": true, + "dependencies": { + "aggregate-error": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-timeout": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-5.1.0.tgz", + "integrity": "sha512-auFDyzzzGZZZdHz3BtET9VEz0SE/uMEAx7uWfGPucfzEwwe/xH0iVeZibQmANYE/hp9T2+UUZT5m+BKyrDp3Ew==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", + "dev": true + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parent-module/node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/parents": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parents/-/parents-1.0.1.tgz", + "integrity": "sha512-mXKF3xkoUt5td2DoxpLmtOmZvko9VfFpwRwkKDHSNvgmpLAeBo18YDhcPbBzJq+QLCHMbGOfzia2cX4U+0v9Mg==", + "dev": true, + "dependencies": { + "path-platform": "~0.11.15" + } + }, + "node_modules/parse-asn1": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", + "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", + "dev": true, + "dependencies": { + "asn1.js": "^5.2.0", + "browserify-aes": "^1.0.0", + "evp_bytestokey": "^1.0.0", + "pbkdf2": "^3.0.3", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/parse-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/parse-ms": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-2.1.0.tgz", + "integrity": "sha512-kHt7kzLoS9VBZfUsiKjv43mr91ea+U05EyKkEtqp7vNbHxmaVuEqN7XxeEVnGrMtYOAxGrDElSi96K7EgO1zCA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/patch-text": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/patch-text/-/patch-text-1.0.2.tgz", + "integrity": "sha512-r1P+pfiTgWrsMOk/aW64RGv0oLjdyP0LeaLv2dF+iUfaVLqicXRi2dkjGYDgQ/kHVYm4z4GEHnx36Q6uqiFNlA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-browserify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", + "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==", + "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==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "node_modules/path-platform": { + "version": "0.11.15", + "resolved": "https://registry.npmjs.org/path-platform/-/path-platform-0.11.15.tgz", + "integrity": "sha512-Y30dB6rab1A/nfEKsZxmr01nUotHX0c/ZiIAsCTatEe1CmS5Pm5He7fZ195bPT7RdquoaL8lLxFCMQi/bS7IJg==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/pbkdf2": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", + "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", + "dev": true, + "dependencies": { + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + }, + "engines": { + "node": ">=0.12" + } + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pkg-conf": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-4.0.0.tgz", + "integrity": "sha512-7dmgi4UY4qk+4mj5Cd8v/GExPo0K+SlY+hulOSdfZ/T6jVH6//y7NtzZo5WrfhDBxuQ0jCa7fLZmNaNh7EWL/w==", + "dev": true, + "dependencies": { + "find-up": "^6.0.0", + "load-json-file": "^7.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-conf/node_modules/find-up": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", + "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", + "dev": true, + "dependencies": { + "locate-path": "^7.1.0", + "path-exists": "^5.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-conf/node_modules/locate-path": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", + "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", + "dev": true, + "dependencies": { + "p-locate": "^6.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-conf/node_modules/p-limit": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", + "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^1.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-conf/node_modules/p-locate": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", + "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", + "dev": true, + "dependencies": { + "p-limit": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-conf/node_modules/path-exists": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", + "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, + "node_modules/pkg-conf/node_modules/yocto-queue": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", + "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", + "dev": true, + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/plur": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/plur/-/plur-5.1.0.tgz", + "integrity": "sha512-VP/72JeXqak2KiOzjgKtQen5y3IZHn+9GOuLDafPv0eXa47xq0At93XahYBs26MsifCQ4enGKwbjBTKgb9QJXg==", + "dev": true, + "dependencies": { + "irregular-plurals": "^3.3.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/prettier": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", + "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", + "bin": { + "prettier": "bin-prettier.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + }, + "node_modules/prettier-linter-helpers": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", + "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", + "dev": true, + "dependencies": { + "fast-diff": "^1.1.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/pretty-ms": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-7.0.1.tgz", + "integrity": "sha512-973driJZvxiGOQ5ONsFhOF/DtzPMOMtgC11kCpUrPGMTgqp2q/1gwzCquocrN33is0VZ5GFHXZYMM9l6h67v2Q==", + "dev": true, + "dependencies": { + "parse-ms": "^2.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", + "dev": true, + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true + }, + "node_modules/public-encrypt": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", + "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "dev": true, + "dependencies": { + "bn.js": "^4.1.0", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "parse-asn1": "^5.0.0", + "randombytes": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/public-encrypt/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + }, + "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==", + "dev": true + }, + "node_modules/qs": { + "version": "6.11.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.2.tgz", + "integrity": "sha512-tDNIz22aBzCDxLtVH++VnTfzxlfeK5CbqohpSqpJgj1Wg/cQbStNAz3NuqCs5vV+pjBsK4x4pN9HlVh7rcYRiA==", + "dev": true, + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/querystring-es3": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", + "integrity": "sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA==", + "dev": true, + "engines": { + "node": ">=0.4.x" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/randomfill": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", + "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", + "dev": true, + "dependencies": { + "randombytes": "^2.0.5", + "safe-buffer": "^5.1.0" + } + }, + "node_modules/read-only-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-only-stream/-/read-only-stream-2.0.0.tgz", + "integrity": "sha512-3ALe0bjBVZtkdWKIcThYpQCLbBMd/+Tbh2CDSrAIDO3UsZ4Xs+tnyjv2MjCOMMgBG+AsUOeuP1cgtY1INISc8w==", + "dev": true, + "dependencies": { + "readable-stream": "^2.0.2" + } + }, + "node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dev": true, + "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/readable-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/readable-stream/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/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/rechoir": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", + "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==", + "dev": true, + "dependencies": { + "resolve": "^1.1.6" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.14.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", + "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==", + "dev": true + }, + "node_modules/rename-function-calls": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/rename-function-calls/-/rename-function-calls-0.1.1.tgz", + "integrity": "sha512-F+z4csKBo6gw4y5vhIbOhG+UcZVWNh42fW35dagdFP74YrY4ET932NTZZEimMdJz8Efha73caz/OFGxt1vReOA==", + "dev": true, + "dependencies": { + "detective": "~3.1.0" + } + }, + "node_modules/rename-function-calls/node_modules/detective": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/detective/-/detective-3.1.0.tgz", + "integrity": "sha512-BIvQHuiVSRMufK1OnlpeAzVqF2yXD75ZzYIx8XV4VQiJ48chF/MMYAdsz/NkulhZznwb4fAX8vyi5CUc24I2BA==", + "dev": true, + "dependencies": { + "escodegen": "~1.1.0", + "esprima-fb": "3001.1.0-dev-harmony-fb" + } + }, + "node_modules/replace-requires": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/replace-requires/-/replace-requires-1.0.4.tgz", + "integrity": "sha512-9PpQ4IWrhJ+waLnakqT26sOIFW8SPTWZ/aEmz35Pq1V1k1A352nYDTkbhznTGUmYS2MsC0ULJ+2vChstBTxKRw==", + "dev": true, + "dependencies": { + "detective": "^4.5.0", + "has-require": "~1.2.1", + "patch-text": "~1.0.2", + "xtend": "~4.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/replace-requires/node_modules/acorn": { + "version": "5.7.4", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.4.tgz", + "integrity": "sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/replace-requires/node_modules/detective": { + "version": "4.7.1", + "resolved": "https://registry.npmjs.org/detective/-/detective-4.7.1.tgz", + "integrity": "sha512-H6PmeeUcZloWtdt4DAkFyzFL94arpHr3NOwwmVILFiy+9Qd4JTxxXrzfyGk/lmct2qVGBwTSwSXagqu2BxmWig==", + "dev": true, + "dependencies": { + "acorn": "^5.2.1", + "defined": "^1.0.0" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "dev": true, + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "dev": true, + "dependencies": { + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-cwd/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "dev": true, + "dependencies": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/rxjs": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", + "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", + "dev": true, + "dependencies": { + "tslib": "^2.1.0" + } + }, + "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==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true + }, + "node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/serialize-error": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-7.0.1.tgz", + "integrity": "sha512-8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==", + "dev": true, + "dependencies": { + "type-fest": "^0.13.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/serialize-error/node_modules/type-fest": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", + "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/set-function-length": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.0.tgz", + "integrity": "sha512-4DBHDoyHlM1IRPGYcoxexgh67y4ueR53FKV1yyxwFMY7aCqcN/38M1+SwZ/qJQ8iLv7+ck385ot4CcisOAPT9w==", + "dev": true, + "dependencies": { + "define-data-property": "^1.1.1", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.2", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + }, + "bin": { + "sha.js": "bin.js" + } + }, + "node_modules/shasum-object": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shasum-object/-/shasum-object-1.0.0.tgz", + "integrity": "sha512-Iqo5rp/3xVi6M4YheapzZhhGPVs0yZwHj7wvwQ1B9z8H6zk+FEnI7y3Teq7qwnekfEhu8WmG2z0z4iWZaxLWVg==", + "dev": true, + "dependencies": { + "fast-safe-stringify": "^2.0.7" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/shell-quote": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.1.tgz", + "integrity": "sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/shelljs": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.5.tgz", + "integrity": "sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==", + "dev": true, + "dependencies": { + "glob": "^7.0.0", + "interpret": "^1.0.0", + "rechoir": "^0.6.2" + }, + "bin": { + "shjs": "bin/shjs" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/shx": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/shx/-/shx-0.3.4.tgz", + "integrity": "sha512-N6A9MLVqjxZYcVn8hLmtneQWIJtp8IKzMP4eMnx+nqkvXoqinUPCbUFLp2UcWTEIUONhlk0ewxr/jaVGlc+J+g==", + "dev": true, + "dependencies": { + "minimist": "^1.2.3", + "shelljs": "^0.8.5" + }, + "bin": { + "shx": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "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==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true + }, + "node_modules/simple-concat": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", + "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/slice-ansi": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-5.0.0.tgz", + "integrity": "sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^6.0.0", + "is-fullwidth-code-point": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" + } + }, + "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/spawn-command": { + "version": "0.0.2-1", + "resolved": "https://registry.npmjs.org/spawn-command/-/spawn-command-0.0.2-1.tgz", + "integrity": "sha512-n98l9E2RMSJ9ON1AKisHzz7V42VDiBQGY6PB1BwRglz99wpVsSuGzQ+jOi6lFXBGVTCrRpltvjm+/XA+tpeJrg==", + "dev": true + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true + }, + "node_modules/stack-utils": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/stack-utils/node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/stream-browserify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz", + "integrity": "sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==", + "dev": true, + "dependencies": { + "inherits": "~2.0.4", + "readable-stream": "^3.5.0" + } + }, + "node_modules/stream-browserify/node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/stream-combiner2": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/stream-combiner2/-/stream-combiner2-1.1.1.tgz", + "integrity": "sha512-3PnJbYgS56AeWgtKF5jtJRT6uFJe56Z0Hc5Ngg/6sI6rIt8iiMBTa9cvdyFfpMQjaVHr8dusbNeFGIIonxOvKw==", + "dev": true, + "dependencies": { + "duplexer2": "~0.1.0", + "readable-stream": "^2.0.2" + } + }, + "node_modules/stream-http": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-3.2.0.tgz", + "integrity": "sha512-Oq1bLqisTyK3TSCXpPbT4sdeYNdmyZJv1LxpEm2vu1ZhK89kSE5YXwZc3cWk0MagGaKriBh9mCFbVGtO+vY29A==", + "dev": true, + "dependencies": { + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "xtend": "^4.0.2" + } + }, + "node_modules/stream-http/node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/stream-splicer": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/stream-splicer/-/stream-splicer-2.0.1.tgz", + "integrity": "sha512-Xizh4/NPuYSyAXyT7g8IvdJ9HJpxIGL9PjyhtywCZvvP0OPIdqyrr4dMikeuvY8xahpdKEBlBTySe583totajg==", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "readable-stream": "^2.0.2" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "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/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/subarg": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/subarg/-/subarg-1.0.0.tgz", + "integrity": "sha512-RIrIdRY0X1xojthNcVtgT9sjpOGagEUKpZdgBUi054OEPFo282yg+zE+t1Rj3+RqKq2xStL7uUHhY+AjbC4BXg==", + "dev": true, + "dependencies": { + "minimist": "^1.1.0" + } + }, + "node_modules/supertap": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/supertap/-/supertap-3.0.1.tgz", + "integrity": "sha512-u1ZpIBCawJnO+0QePsEiOknOfCRq0yERxiAchT0i4li0WHNUJbf0evXXSXOcCAR4M8iMDoajXYmstm/qO81Isw==", + "dev": true, + "dependencies": { + "indent-string": "^5.0.0", + "js-yaml": "^3.14.1", + "serialize-error": "^7.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, + "node_modules/supertap/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/supertap/node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/supertap/node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/syntax-error": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/syntax-error/-/syntax-error-1.4.0.tgz", + "integrity": "sha512-YPPlu67mdnHGTup2A8ff7BC2Pjq0e0Yp/IyTFN03zWO0RcK07uLcbi7C2KpGR2FvWbaB0+bfE27a+sBKebSo7w==", + "dev": true, + "dependencies": { + "acorn-node": "^1.2.0" + } + }, + "node_modules/temp-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-2.0.0.tgz", + "integrity": "sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ternary": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/ternary/-/ternary-1.0.0.tgz", + "integrity": "sha512-/e+OUAGiEqytNLXnDfFkuel0N0y9IGkmvuGIPkirI+zv0dx/jPvUZ2l8qV6KYk8lmmLrAqk4iLJtRduUA6AUKw==", + "dev": true + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true + }, + "node_modules/thenify": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", + "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", + "dependencies": { + "any-promise": "^1.0.0" + } + }, + "node_modules/thenify-all": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", + "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", + "dependencies": { + "thenify": ">= 3.1.0 < 4" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "dev": true + }, + "node_modules/through2": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "dev": true, + "dependencies": { + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" + } + }, + "node_modules/time-zone": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/time-zone/-/time-zone-1.0.0.tgz", + "integrity": "sha512-TIsDdtKo6+XrPtiTm1ssmMngN1sAhyKnTO2kunQWqNPWIVvCm15Wmw4SWInwTVgJ5u/Tr04+8Ei9TNcw4x4ONA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/timers-browserify": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-1.4.2.tgz", + "integrity": "sha512-PIxwAupJZiYU4JmVZYwXp9FKsHMXb5h0ZEFyuXTAn8WLHOlcij+FEcbrvDsom1o5dr1YggEtFbECvGCW2sT53Q==", + "dev": true, + "dependencies": { + "process": "~0.11.0" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/timers-ext": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/timers-ext/-/timers-ext-0.1.7.tgz", + "integrity": "sha512-b85NUNzTSdodShTIbky6ZF02e8STtVVfD+fu4aXXShEELpozH+bCpJLYMPZbsABN2wDH7fJpqIoXxJpzbf0NqQ==", + "dependencies": { + "es5-ext": "~0.10.46", + "next-tick": "1" + } + }, + "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/transformify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/transformify/-/transformify-0.1.2.tgz", + "integrity": "sha512-BUZAqCslm5pVXExA8PfXcvp7exsUNqRcNzx+KXj3Bv0oMROqnAt4bvs9U8Z2wVPa40NvLWJ/oswN0kreNFxBUg==", + "dev": true, + "dependencies": { + "readable-stream": "~1.1.9" + } + }, + "node_modules/transformify/node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", + "dev": true + }, + "node_modules/transformify/node_modules/readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ==", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/transformify/node_modules/string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==", + "dev": true + }, + "node_modules/tree-kill": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", + "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", + "dev": true, + "bin": { + "tree-kill": "cli.js" + } + }, + "node_modules/tsconfig": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/tsconfig/-/tsconfig-5.0.3.tgz", + "integrity": "sha512-Cq65A3kVp6BbsUgg9DRHafaGmbMb9EhAc7fjWvudNWKjkbWrt43FnrtZt6awshH1R0ocfF2Z0uxock3lVqEgOg==", + "dev": true, + "dependencies": { + "any-promise": "^1.3.0", + "parse-json": "^2.2.0", + "strip-bom": "^2.0.0", + "strip-json-comments": "^2.0.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", + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tsify": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/tsify/-/tsify-5.0.4.tgz", + "integrity": "sha512-XAZtQ5OMPsJFclkZ9xMZWkSNyMhMxEPsz3D2zu79yoKorH9j/DT4xCloJeXk5+cDhosEibu4bseMVjyPOAyLJA==", + "dev": true, + "dependencies": { + "convert-source-map": "^1.1.0", + "fs.realpath": "^1.0.0", + "object-assign": "^4.1.0", + "semver": "^6.1.0", + "through2": "^2.0.0", + "tsconfig": "^5.0.3" + }, + "engines": { + "node": ">=0.12" + }, + "peerDependencies": { + "browserify": ">= 10.x", + "typescript": ">= 2.8" + } + }, + "node_modules/tsify/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/tslib": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", + "dev": true + }, + "node_modules/tsutils": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", + "dev": true, + "dependencies": { + "tslib": "^1.8.1" + }, + "engines": { + "node": ">= 6" + }, + "peerDependencies": { + "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" + } + }, + "node_modules/tsutils/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", + "integrity": "sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==", + "dev": true + }, + "node_modules/type": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", + "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==" + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-fest": { + "version": "0.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/typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==", + "dev": true + }, + "node_modules/typescript": { + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", + "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/umd": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/umd/-/umd-3.0.3.tgz", + "integrity": "sha512-4IcGSufhFshvLNcMCV80UnQVlZ5pMOC8mvNPForqwA4+lzYQuetTESLDQkeLmihq8bRcnpbQa48Wb8Lh16/xow==", + "dev": true, + "bin": { + "umd": "bin/cli.js" + } + }, + "node_modules/undeclared-identifiers": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/undeclared-identifiers/-/undeclared-identifiers-1.1.3.tgz", + "integrity": "sha512-pJOW4nxjlmfwKApE4zvxLScM/njmwj/DiUBv7EabwE4O8kRUy+HIwxQtZLBPll/jx1LJyBcqNfB3/cpv9EZwOw==", + "dev": true, + "dependencies": { + "acorn-node": "^1.3.0", + "dash-ast": "^1.0.0", + "get-assigned-identifiers": "^1.2.0", + "simple-concat": "^1.0.0", + "xtend": "^4.0.1" + }, + "bin": { + "undeclared-identifiers": "bin.js" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/uri-js/node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/url": { + "version": "0.11.3", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.3.tgz", + "integrity": "sha512-6hxOLGfZASQK/cijlZnZJTq8OXAkt/3YGfQX45vvMYXpZoo8NdWZcY73K108Jf759lS1Bv/8wXnHDTSz17dSRw==", + "dev": true, + "dependencies": { + "punycode": "^1.4.1", + "qs": "^6.11.2" + } + }, + "node_modules/util": { + "version": "0.12.5", + "resolved": "https://registry.npmjs.org/util/-/util-0.12.5.tgz", + "integrity": "sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "is-arguments": "^1.0.4", + "is-generator-function": "^1.0.7", + "is-typed-array": "^1.1.3", + "which-typed-array": "^1.1.2" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true + }, + "node_modules/vm-browserify": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", + "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==", + "dev": true + }, + "node_modules/well-known-symbols": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/well-known-symbols/-/well-known-symbols-2.0.0.tgz", + "integrity": "sha512-ZMjC3ho+KXo0BfJb7JgtQ5IBuvnShdlACNkKkdsqBmYw3bPAaJfPeYUo6tLUaT5tG/Gkh7xkpBhKRQ9e7pyg9Q==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/which-typed-array": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.14.tgz", + "integrity": "sha512-VnXFiIW8yNn9kIHN88xvZ4yOWchftKDsRJ8fEPacX/wl1lOvBrhsJ/OeJCXq7B0AaijRuqgzSKalJoPk+D8MPg==", + "dev": true, + "dependencies": { + "available-typed-arrays": "^1.0.6", + "call-bind": "^1.0.5", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/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/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==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "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==", + "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/wrap-ansi/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + }, + "node_modules/write-file-atomic": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", + "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", + "dev": true, + "dependencies": { + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.7" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "dev": true, + "engines": { + "node": ">=0.4" + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/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/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "dev": true, + "dependencies": { + "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.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/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==", + "dev": true + }, + "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==", + "dev": true, + "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==", + "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/yargs/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + } + } +} diff --git a/wasm.nix b/wasm.nix index 805ae50..f6ef2c1 100644 --- a/wasm.nix +++ b/wasm.nix @@ -7,17 +7,19 @@ rust-bin, wasm-pack, binaryen, + lib }: let deps = (builtins.fromTOML (builtins.readFile ./wasm/Cargo.toml)).dependencies; + wasm-bindgen-version = lib.strings.removePrefix "=" deps.wasm-bindgen.version; wasm-bindgen-cli = rustPlatform.buildRustPackage rec { pname = "wasm-bindgen-cli"; - version = deps.wasm-bindgen.version; + version = wasm-bindgen-version; src = fetchCrate { inherit pname version; - sha256 = "sha256-IPxP68xtNSpwJjV2yNMeepAS0anzGl02hYlSTvPocz8="; + sha256 = "sha256-X8+DVX7dmKh7BgXqP7Fp0smhup5OO8eWEhn26ODYbkQ="; }; - cargoSha256 = "sha256-pBeQaG6i65uJrJptZQLuIaCb/WCQMhba1Z1OhYqA8Zc="; + cargoSha256 = "sha256-ckJxAR20GuVGstzXzIj1M0WBFj5eJjrO2/DRMUK5dwM="; nativeBuildInputs = [pkg-config]; buildInputs = [openssl]; @@ -36,6 +38,9 @@ in cargoLock = { lockFile = ./wasm/Cargo.lock; + outputHashes = { + "tf-demo-parser-0.5.0" = "sha256-bwQ4AqF+YMXBVLi7mxGSqZhj6+P086pNT1QR5ivTB8U="; + }; }; src = ./wasm; diff --git a/wasm/Cargo.lock b/wasm/Cargo.lock index 00ae6d3..5e2ca26 100644 --- a/wasm/Cargo.lock +++ b/wasm/Cargo.lock @@ -26,27 +26,27 @@ dependencies = [ "bitbuffer_derive", "err-derive", "memchr", - "num-traits 0.2.15", + "num-traits 0.2.17", "serde", ] [[package]] name = "bitbuffer_derive" -version = "0.10.0" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4090254bfbc71442ff4a426ddba663346e26fd14b55b259281f763e350d7f621" +checksum = "052a5a614540ae9bb7de25c2c86a94b6de7374cb7e3230f3128955bdaea62c3f" dependencies = [ "proc-macro2", "quote", - "syn 1.0.107", + "syn 1.0.109", "syn_util", ] [[package]] name = "bumpalo" -version = "3.11.0" +version = "3.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1ad822118d20d2c234f427000d5acc36eabe1e29a348c89b63dd60b13f28e5d" +checksum = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec" [[package]] name = "cfg-if" @@ -87,9 +87,9 @@ dependencies = [ [[package]] name = "either" -version = "1.8.0" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90e5c1c8368803113bf0c9584fc495a58b86dc8a29edbf8fe877d21d9507e797" +checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07" [[package]] name = "enum_primitive" @@ -102,9 +102,9 @@ dependencies = [ [[package]] name = "enumflags2" -version = "0.7.5" +version = "0.7.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e75d4cd21b95383444831539909fbb14b9dc3fdceb2a6f5d36577329a1f55ccb" +checksum = "5998b4f30320c9d93aed72f63af821bfdac50465b75428fce77b48ec482c3939" dependencies = [ "enumflags2_derive", "serde", @@ -112,15 +112,21 @@ dependencies = [ [[package]] name = "enumflags2_derive" -version = "0.7.4" +version = "0.7.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f58dc3c5e468259f19f2d46304a6b28f1c3d034442e14b322d2b850e36f6d5ae" +checksum = "f95e2801cd355d4a1a3e3953ce6ee5ae9603a5c833455343a8bfe3f44d418246" dependencies = [ "proc-macro2", "quote", - "syn 1.0.107", + "syn 2.0.48", ] +[[package]] +name = "equivalent" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" + [[package]] name = "err-derive" version = "0.3.1" @@ -131,7 +137,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 1.0.107", + "syn 1.0.109", "synstructure", ] @@ -141,6 +147,22 @@ version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" +[[package]] +name = "hashbrown" +version = "0.14.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604" + +[[package]] +name = "indexmap" +version = "2.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "824b2ae422412366ba479e8111fd301f7b5faece8149317bb81925979a53f520" +dependencies = [ + "equivalent", + "hashbrown", +] + [[package]] name = "itertools" version = "0.10.5" @@ -152,15 +174,15 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.3" +version = "1.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c8af84674fe1f223a982c933a0ee1086ac4d4052aa0fb8060c12c6ad838e754" +checksum = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c" [[package]] name = "js-sys" -version = "0.3.60" +version = "0.3.67" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49409df3e3bf0856b916e2ceaca09ee28e6871cf7d9ce97a692cacfdb2a25a47" +checksum = "9a1d36f1235bc969acba30b7f5990b864423a6068a10f7c90ae8f0112e3a59d1" dependencies = [ "wasm-bindgen", ] @@ -173,18 +195,15 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" [[package]] name = "libc" -version = "0.2.132" +version = "0.2.153" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8371e4e5341c3a96db127eb2465ac681ced4c433e01dd0e938adbef26ba93ba5" +checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd" [[package]] name = "log" -version = "0.4.17" +version = "0.4.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e" -dependencies = [ - "cfg-if 1.0.0", -] +checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" [[package]] name = "main_error" @@ -194,9 +213,9 @@ checksum = "155db5e86c6e45ee456bf32fad5a290ee1f7151c2faca27ea27097568da67d1a" [[package]] name = "memchr" -version = "2.6.4" +version = "2.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f665ee40bc4a3c5590afb1e9677db74a508659dfd71e126420da8274909a0167" +checksum = "523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149" [[package]] name = "memory_units" @@ -215,7 +234,7 @@ dependencies = [ "num-integer", "num-iter", "num-rational", - "num-traits 0.2.15", + "num-traits 0.2.17", ] [[package]] @@ -226,7 +245,7 @@ checksum = "5f6f7833f2cbf2360a6cfd58cd41a53aa7a90bd4c202f5b1c7dd2ed73c57b2c3" dependencies = [ "autocfg", "num-integer", - "num-traits 0.2.15", + "num-traits 0.2.17", ] [[package]] @@ -235,7 +254,7 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "747d632c0c558b87dbabbe6a82f3b4ae03720d0646ac5b7b4dae89394be5f2c5" dependencies = [ - "num-traits 0.2.15", + "num-traits 0.2.17", ] [[package]] @@ -245,7 +264,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9" dependencies = [ "autocfg", - "num-traits 0.2.15", + "num-traits 0.2.17", ] [[package]] @@ -256,7 +275,7 @@ checksum = "7d03e6c028c5dc5cac6e2dec0efda81fc887605bb3d884578bb6d6bf7514e252" dependencies = [ "autocfg", "num-integer", - "num-traits 0.2.15", + "num-traits 0.2.17", ] [[package]] @@ -268,7 +287,7 @@ dependencies = [ "autocfg", "num-bigint", "num-integer", - "num-traits 0.2.15", + "num-traits 0.2.17", ] [[package]] @@ -277,37 +296,37 @@ version = "0.1.43" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "92e5113e9fd4cc14ded8e499429f396a20f98c772a47cc8622a736e1ec843c31" dependencies = [ - "num-traits 0.2.15", + "num-traits 0.2.17", ] [[package]] name = "num-traits" -version = "0.2.15" +version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd" +checksum = "39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c" dependencies = [ "autocfg", ] [[package]] name = "num_enum" -version = "0.5.7" +version = "0.5.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf5395665662ef45796a4ff5486c5d41d29e0c09640af4c5f17fd94ee2c119c9" +checksum = "1f646caf906c20226733ed5b1374287eb97e3c2a5c227ce668c1f2ce20ae57c9" dependencies = [ "num_enum_derive", ] [[package]] name = "num_enum_derive" -version = "0.5.7" +version = "0.5.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b0498641e53dd6ac1a4f22547548caa6864cc4933784319cd1775271c5a46ce" +checksum = "dcbff9bc912032c62bf65ef1d5aea88983b420f4f839db1e9b0c281a25c9c799" dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 1.0.107", + "syn 1.0.109", ] [[package]] @@ -339,18 +358,17 @@ dependencies = [ "regex", "regex-syntax 0.7.5", "structmeta", - "syn 2.0.42", + "syn 2.0.48", ] [[package]] name = "proc-macro-crate" -version = "1.2.1" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eda0fc3b0fb7c975631757e14d9049da17374063edb6ebbcbc54d880d4fe94e9" +checksum = "7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919" dependencies = [ "once_cell", - "thiserror", - "toml", + "toml_edit", ] [[package]] @@ -362,7 +380,7 @@ dependencies = [ "proc-macro-error-attr", "proc-macro2", "quote", - "syn 1.0.107", + "syn 1.0.109", "version_check", ] @@ -379,27 +397,27 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.71" +version = "1.0.78" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75cb1540fadbd5b8fbccc4dddad2734eba435053f725621c070711a14bb5f4b8" +checksum = "e2422ad645d89c99f8f3e6b88a9fdeca7fabeac836b1002371c4367c8f984aae" dependencies = [ "unicode-ident", ] [[package]] name = "quote" -version = "1.0.33" +version = "1.0.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae" +checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef" dependencies = [ "proc-macro2", ] [[package]] name = "regex" -version = "1.10.2" +version = "1.10.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "380b951a9c5e80ddfd6136919eef32310721aa4aacd4889a8d39124b026ab343" +checksum = "b62dbe01f0b06f9d8dc7d49e05a0785f153b00b2c227856282f671e0318c9b15" dependencies = [ "aho-corasick", "memchr", @@ -409,9 +427,9 @@ dependencies = [ [[package]] name = "regex-automata" -version = "0.4.3" +version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f804c7828047e88b2d32e2d7fe5a105da8ee3264f01902f796c8e067dc2483f" +checksum = "5bb987efffd3c6d0d8f5f89510bb458559eab11e4f869acb20bf845e016259cd" dependencies = [ "aho-corasick", "memchr", @@ -432,47 +450,47 @@ checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f" [[package]] name = "rustversion" -version = "1.0.9" +version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97477e48b4cf8603ad5f7aaf897467cf42ab4218a38ef76fb14c2d6773a6d6a8" +checksum = "7ffc183a10b4478d04cbbbfc96d0873219d962dd5accaff2ffbd4ceb7df837f4" [[package]] name = "ryu" -version = "1.0.11" +version = "1.0.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4501abdff3ae82a1c1b477a17252eb69cee9e66eb915c1abaa4f44d873df9f09" +checksum = "f98d2aa92eebf49b69786be48e4477826b256916e84a57ff2a4f21923b48eb4c" [[package]] name = "scoped-tls" -version = "1.0.0" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea6a9290e3c9cf0f18145ef7ffa62d68ee0bf5fcd651017e586dc7fd5da448c2" +checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294" [[package]] name = "serde" -version = "1.0.152" +version = "1.0.196" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb7d1f0d3021d347a83e556fc4683dea2ea09d87bccdf88ff5c12545d89d5efb" +checksum = "870026e60fa08c69f064aa766c10f10b1d62db9ccd4d0abb206472bee0ce3b32" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.152" +version = "1.0.196" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af487d118eecd09402d70a5d72551860e788df87b464af30e5ea6a38c75c541e" +checksum = "33c85360c95e7d137454dc81d9a4ed2b8efd8fbe19cee57357b32b9771fccb67" dependencies = [ "proc-macro2", "quote", - "syn 1.0.107", + "syn 2.0.48", ] [[package]] name = "serde_json" -version = "1.0.91" +version = "1.0.113" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "877c235533714907a8c2464236f5c4b2a17262ef1bd71f38f35ea592c8da6883" +checksum = "69801b70b1c3dac963ecb03a364ba0ceda9cf60c71cfe475e99864759c8b8a79" dependencies = [ "itoa", "ryu", @@ -481,13 +499,13 @@ dependencies = [ [[package]] name = "serde_repr" -version = "0.1.17" +version = "0.1.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3081f5ffbb02284dda55132aa26daecedd7372a42417bbbab6f14ab7d6bb9145" +checksum = "0b2e6b945e9d3df726b65d6ee24060aff8e3533d431f677a9695db04eff9dfdb" dependencies = [ "proc-macro2", "quote", - "syn 2.0.42", + "syn 2.0.48", ] [[package]] @@ -520,7 +538,7 @@ dependencies = [ "proc-macro2", "quote", "structmeta-derive", - "syn 2.0.42", + "syn 2.0.48", ] [[package]] @@ -531,14 +549,14 @@ checksum = "a60bcaff7397072dca0017d1db428e30d5002e00b6847703e2e42005c95fbe00" dependencies = [ "proc-macro2", "quote", - "syn 2.0.42", + "syn 2.0.48", ] [[package]] name = "syn" -version = "1.0.107" +version = "1.0.109" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f4064b5b16e03ae50984a5a8ed5d4f8803e6bc1fd170a3cda91a1be4b18e3f5" +checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" dependencies = [ "proc-macro2", "quote", @@ -547,9 +565,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.42" +version = "2.0.48" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b7d0a2c048d661a1a59fcd7355baa232f7ed34e0ee4df2eef3c1c1c0d3852d8" +checksum = "0f3531638e407dfc0814761abb7c00a5b54992b849452a0646b7f65c9f770f3f" dependencies = [ "proc-macro2", "quote", @@ -564,7 +582,7 @@ checksum = "6754c4559b79657554e9d8a0d56e65e490c76d382b9c23108364ec4125dea23c" dependencies = [ "proc-macro2", "quote", - "syn 1.0.107", + "syn 1.0.109", ] [[package]] @@ -575,15 +593,14 @@ checksum = "f36bdaa60a83aca3921b5259d5400cbf5e90fc51931376a9bd4a0eb79aa7210f" dependencies = [ "proc-macro2", "quote", - "syn 1.0.107", + "syn 1.0.109", "unicode-xid", ] [[package]] name = "tf-demo-parser" version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8322d3cd776c9e1b9200e8580a1bb98c8b28ec841d5ed21f585d6cbc0887da9" +source = "git+https://github.com/demostf/parser#f38e4caa726a3940582a30b1c89424e10d252621" dependencies = [ "bitbuffer", "enumflags2", @@ -591,7 +608,7 @@ dependencies = [ "fnv", "itertools", "main_error", - "num-traits 0.2.15", + "num-traits 0.2.17", "num_enum", "parse-display", "serde", @@ -603,44 +620,52 @@ dependencies = [ [[package]] name = "thiserror" -version = "1.0.33" +version = "1.0.56" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d0a539a918745651435ac7db7a18761589a94cd7e94cd56999f828bf73c8a57" +checksum = "d54378c645627613241d077a3a79db965db602882668f9136ac42af9ecb730ad" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.33" +version = "1.0.56" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c251e90f708e16c49a16f4917dc2131e75222b72edfa9cb7f7c58ae56aae0c09" +checksum = "fa0faa943b50f3db30a20aa7e265dbc66076993efed8463e8de414e5d06d3471" dependencies = [ "proc-macro2", "quote", - "syn 1.0.107", + "syn 2.0.48", ] [[package]] -name = "toml" -version = "0.5.9" +name = "toml_datetime" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1" + +[[package]] +name = "toml_edit" +version = "0.19.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d82e1a7758622a465f8cee077614c73484dac5b836c02ff6a40d5d1010324d7" +checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" dependencies = [ - "serde", + "indexmap", + "toml_datetime", + "winnow", ] [[package]] name = "unicode-ident" -version = "1.0.3" +version = "1.0.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4f5b37a154999a8f3f98cc23a628d850e154479cd94decf3414696e12e31aaf" +checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" [[package]] name = "unicode-xid" -version = "0.2.3" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "957e51f3646910546462e67d5f7599b9e4fb8acdd304b087a6494730f9eebf04" +checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c" [[package]] name = "version_check" @@ -650,9 +675,9 @@ checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" [[package]] name = "wasm-bindgen" -version = "0.2.89" +version = "0.2.90" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ed0d4f68a3015cc185aff4db9506a015f4b96f95303897bfa23f846db54064e" +checksum = "b1223296a201415c7fad14792dbefaace9bd52b62d33453ade1c5b5f07555406" dependencies = [ "cfg-if 1.0.0", "serde", @@ -662,24 +687,24 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.89" +version = "0.2.90" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b56f625e64f3a1084ded111c4d5f477df9f8c92df113852fa5a374dbda78826" +checksum = "fcdc935b63408d58a32f8cc9738a0bffd8f05cc7c002086c6ef20b7312ad9dcd" dependencies = [ "bumpalo", "log", "once_cell", "proc-macro2", "quote", - "syn 2.0.42", + "syn 2.0.48", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-futures" -version = "0.4.33" +version = "0.4.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23639446165ca5a5de86ae1d8896b737ae80319560fbaa4c2887b7da6e7ebd7d" +checksum = "bde2032aeb86bdfaecc8b261eef3cba735cc426c1f3a3416d1e0791be95fc461" dependencies = [ "cfg-if 1.0.0", "js-sys", @@ -689,9 +714,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.89" +version = "0.2.90" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0162dbf37223cd2afce98f3d0785506dcb8d266223983e4b5b525859e6e182b2" +checksum = "3e4c238561b2d428924c49815533a8b9121c664599558a5d9ec51f8a1740a999" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -699,28 +724,28 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.89" +version = "0.2.90" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0eb82fcb7930ae6219a7ecfd55b217f5f0893484b7a13022ebb2b2bf20b5283" +checksum = "bae1abb6806dc1ad9e560ed242107c0f6c84335f1749dd4e8ddb012ebd5e25a7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.42", + "syn 2.0.48", "wasm-bindgen-backend", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.89" +version = "0.2.90" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ab9b36309365056cd639da3134bf87fa8f3d86008abf99e612384a6eecd459f" +checksum = "4d91413b1c31d7539ba5ef2451af3f0b833a005eb27a631cec32bc0635a8602b" [[package]] name = "wasm-bindgen-test" -version = "0.3.33" +version = "0.3.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09d2fff962180c3fadf677438054b1db62bee4aa32af26a45388af07d1287e1d" +checksum = "139bd73305d50e1c1c4333210c0db43d989395b64a237bd35c10ef3832a7f70c" dependencies = [ "console_error_panic_hook", "js-sys", @@ -732,19 +757,20 @@ dependencies = [ [[package]] name = "wasm-bindgen-test-macro" -version = "0.3.33" +version = "0.3.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4683da3dfc016f704c9f82cf401520c4f1cb3ee440f7f52b3d6ac29506a49ca7" +checksum = "70072aebfe5da66d2716002c729a14e4aec4da0e23cc2ea66323dac541c93928" dependencies = [ "proc-macro2", "quote", + "syn 2.0.48", ] [[package]] name = "web-sys" -version = "0.3.56" +version = "0.3.67" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c060b319f29dd25724f09a2ba1418f142f539b2be99fbf4d2d5a8f7330afb8eb" +checksum = "58cd2333b6e0be7a39605f0e255892fd7418a682d8da8fe042fe25128794d2ed" dependencies = [ "js-sys", "wasm-bindgen", @@ -783,3 +809,12 @@ name = "winapi-x86_64-pc-windows-gnu" version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" + +[[package]] +name = "winnow" +version = "0.5.36" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "818ce546a11a9986bc24f93d0cdf38a8a1a400f1473ea8c82e59f6e0ffab9249" +dependencies = [ + "memchr", +] diff --git a/wasm/Cargo.toml b/wasm/Cargo.toml index 27baadf..7acbe4b 100644 --- a/wasm/Cargo.toml +++ b/wasm/Cargo.toml @@ -12,11 +12,11 @@ default = ["console_error_panic_hook"] [dependencies] bitbuffer = "0.10.9" -tf-demo-parser = "0.5" +tf-demo-parser = { version = "0.5", git = "https://github.com/demostf/parser" } serde = { version = "1.0.152", features = ["derive"] } serde_json = "1.0.91" js-sys = "0.3.60" -wasm-bindgen = { version = "0.2.89", features = ["serde-serialize"] } +wasm-bindgen = { version = "=0.2.90", features = ["serde-serialize"] } # The `console_error_panic_hook` crate provides better debugging of panics by # logging them with `console.error`. This is great for development, but requires diff --git a/www/src/packets/message.tsx b/www/src/packets/message.tsx index 8906382..3094054 100644 --- a/www/src/packets/message.tsx +++ b/www/src/packets/message.tsx @@ -60,6 +60,11 @@ export function MessageInfo({msg, prop_names, class_names, search}: MessageInfoP return `temp entity ${class_name}(delay: ${event.fire_delay}, reliable:${JSON.stringify(event.reliable)}): ` + props.join(', '); }) return <>{events.map(event =>

{event}

)} + case "GameEvent": + let event = msg.event; + let type = msg.event_type; + delete event.type; + return <>{type}: {Object.keys(event).map(key => `${key}=${event[key]}`).join(', ')} default: let json = msg; // delete json.type; diff --git a/www/src/parser.d.ts b/www/src/parser.d.ts index 724dd84..d87a425 100644 --- a/www/src/parser.d.ts +++ b/www/src/parser.d.ts @@ -1,4 +1,4 @@ -/* tslint:disable */ +/* eslint-disable */ /** * This file was automatically generated by json-schema-to-typescript. * DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file, @@ -6,103 +6,107 @@ */ export type Packet = - | { - messages: Message[]; - meta: MessagePacketMeta; - tick: number; - type: "Signon"; - [k: string]: unknown; -} - | { - messages: Message[]; - meta: MessagePacketMeta; - tick: number; - type: "Message"; - [k: string]: unknown; -} - | { - tick: number; - type: "SyncTick"; - [k: string]: unknown; -} - | { - command: string; - tick: number; - type: "ConsoleCmd"; - [k: string]: unknown; -} - | { - cmd: UserCmd; - sequence_out: number; - tick: number; - type: "UserCmd"; - [k: string]: unknown; -} - | { - server_classes: ServerClass[]; - tables: ParseSendTable[]; - tick: number; - type: "DataTables"; - [k: string]: unknown; -} - | { - tick: number; - type: "Stop"; - [k: string]: unknown; -} - | { - tables: StringTable[]; - tick: number; - type: "StringTables"; - [k: string]: unknown; -}; + | { + messages: Message[]; + meta: MessagePacketMeta; + tick: DemoTick; + type: "Signon"; + [k: string]: unknown; + } + | { + messages: Message[]; + meta: MessagePacketMeta; + tick: DemoTick; + type: "Message"; + [k: string]: unknown; + } + | { + tick: DemoTick; + type: "SyncTick"; + [k: string]: unknown; + } + | { + command: string; + tick: DemoTick; + type: "ConsoleCmd"; + [k: string]: unknown; + } + | { + cmd: UserCmd; + sequence_out: number; + tick: DemoTick; + type: "UserCmd"; + [k: string]: unknown; + } + | { + server_classes: ServerClass[]; + tables: ParseSendTable[]; + tick: DemoTick; + type: "DataTables"; + [k: string]: unknown; + } + | { + tick: DemoTick; + type: "Stop"; + [k: string]: unknown; + } + | { + tables: StringTable[]; + tick: DemoTick; + type: "StringTables"; + [k: string]: unknown; + }; export type Message = - | { - type: "Empty"; - [k: string]: unknown; -} - | { - file_name: string; - requested: boolean; - transfer_id: number; - type: "File"; - [k: string]: unknown; -} - | { - frame_time: number; - std_dev: number; - tick: number; - type: "NetTick"; - [k: string]: unknown; -} - | { - command: string; - type: "StringCmd"; - [k: string]: unknown; -} - | { - length: number; - type: "SetConVar"; - vars: ConVar[]; - [k: string]: unknown; -} - | { - count: number; - state: SignOnState; - type: "SignOnState"; - [k: string]: unknown; -} - | { - type: "Print"; - value: string; - [k: string]: unknown; -} - | { - dedicated: boolean; - game: string; - interval_per_tick: number; - map: string; - map_hash: [ + | { + type: "Empty"; + [k: string]: unknown; + } + | { + file_name: string; + requested: boolean; + transfer_id: number; + type: "File"; + [k: string]: unknown; + } + | { + frame_time: number; + std_dev: number; + tick: ServerTick; + type: "NetTick"; + [k: string]: unknown; + } + | { + command: string; + type: "StringCmd"; + [k: string]: unknown; + } + | { + length: number; + type: "SetConVar"; + vars: ConVar[]; + [k: string]: unknown; + } + | { + count: number; + state: SignOnState; + type: "SignOnState"; + [k: string]: unknown; + } + | { + type: "Print"; + value: String; + [k: string]: unknown; + } + | { + dedicated: boolean; + game: string; + interval_per_tick: number; + map: string; + /** + * @minItems 16 + * @maxItems 16 + */ + map_hash: [ number, number, number, @@ -119,3258 +123,3340 @@ export type Message = number, number, number - ]; - max_classes: number; - max_crc: number; - max_player_count: number; - platform: string; - player_slot: number; - replay: boolean; - server_count: number; - server_name: string; - skybox: string; - stv: boolean; - type: "ServerInfo"; - version: number; - [k: string]: unknown; -} - | { - count: number; - create: boolean; - entries: ClassInfoEntry[]; - type: "ClassInfo"; - [k: string]: unknown; -} - | { - pause: boolean; - type: "SetPause"; - [k: string]: unknown; -} - | { - table: StringTable; - type: "CreateStringTable"; - [k: string]: unknown; -} - | { - entries: [number, StringTableEntry][]; - table_id: number; - type: "UpdateStringTable"; - [k: string]: unknown; -} - | { - codec: string; - quality: number; - sampling_rate: number; - type: "VoiceInit"; - [k: string]: unknown; -} - | { - client: number; - data: BitReadStream; - length: number; - proximity: number; - type: "VoiceData"; - [k: string]: unknown; -} - | { - data: BitReadStream; - length: number; - num: number; - reliable: boolean; - type: "ParseSounds"; - [k: string]: unknown; -} - | { - index: number; - type: "SetView"; - [k: string]: unknown; -} - | { - relative: boolean; - type: "FixAngle"; - x: number; - y: number; - z: number; - [k: string]: unknown; -} - | { - ent_index: number; - low_priority: boolean; - model_index: number; - position: Vector; - texture_index: number; - type: "BspDecal"; - [k: string]: unknown; -} - | ( - | { - client: number; - from?: string | null; - kind: ChatMessageKind; - raw: number; - text: string; - type: "SayText2"; - [k: string]: unknown; -} - | { - location: HudTextLocation; - substitute: [string, string, string, string]; - text: string; - type: "Text"; - [k: string]: unknown; -} - | { - data: number; - type: "ResetHUD"; - [k: string]: unknown; -} - | { - data: number; - type: "Train"; - [k: string]: unknown; -} - | { - client: number; - item: number; - menu: number; - type: "VoiceSubtitle"; - [k: string]: unknown; -} - | { - amplitude: number; - command: number; - duration: number; - frequency: number; - type: "Shake"; - [k: string]: unknown; -} - | { - data: BitReadStream; - raw_type: number; - type: "Unknown"; - [k: string]: unknown; -} + ]; + max_classes: number; + max_crc: number; + max_player_count: number; + platform: string; + player_slot: number; + replay: boolean; + server_count: number; + server_name: string; + skybox: string; + stv: boolean; + type: "ServerInfo"; + version: number; + [k: string]: unknown; + } + | { + count: number; + create: boolean; + entries: ClassInfoEntry[]; + type: "ClassInfo"; + [k: string]: unknown; + } + | { + pause: boolean; + type: "SetPause"; + [k: string]: unknown; + } + | { + table: StringTable; + type: "CreateStringTable"; + [k: string]: unknown; + } + | { + entries: [number, StringTableEntry][]; + table_id: number; + type: "UpdateStringTable"; + [k: string]: unknown; + } + | { + codec: string; + quality: number; + sampling_rate: number; + type: "VoiceInit"; + [k: string]: unknown; + } + | { + client: number; + data: BitReadStream; + length: number; + proximity: number; + type: "VoiceData"; + [k: string]: unknown; + } + | { + data: BitReadStream; + length: number; + num: number; + reliable: boolean; + type: "ParseSounds"; + [k: string]: unknown; + } + | { + index: number; + type: "SetView"; + [k: string]: unknown; + } + | { + relative: boolean; + type: "FixAngle"; + x: number; + y: number; + z: number; + [k: string]: unknown; + } + | { + ent_index: number; + low_priority: boolean; + model_index: number; + position: Vector; + texture_index: number; + type: "BspDecal"; + [k: string]: unknown; + } + | ( + | { + client: EntityId; + from?: String | null; + kind: ChatMessageKind; + raw: number; + text: String; + type: "SayText2"; + [k: string]: unknown; + } + | { + location: HudTextLocation; + /** + * @minItems 4 + * @maxItems 4 + */ + substitute: [String, String, String, String]; + text: String; + type: "Text"; + [k: string]: unknown; + } + | { + data: number; + type: "ResetHUD"; + [k: string]: unknown; + } + | { + data: number; + type: "Train"; + [k: string]: unknown; + } + | { + client: number; + item: number; + menu: number; + type: "VoiceSubtitle"; + [k: string]: unknown; + } + | { + amplitude: number; + command: number; + duration: number; + frequency: number; + type: "Shake"; + [k: string]: unknown; + } + | { + data: VGuiMenuMessageData[]; + name: String; + show: number; + type: "VGuiMenu"; + [k: string]: unknown; + } + | { + rumble_data: number; + rumble_flags: number; + type: "Rumble"; + waveform_index: number; + [k: string]: unknown; + } + | { + /** + * @minItems 4 + * @maxItems 4 + */ + color: [number, number, number, number]; + duration: number; + flags: number; + hold: number; + type: "Fade"; + [k: string]: unknown; + } + | { + data: number; + type: "HapMeleeContact"; + [k: string]: unknown; + } + | { + data: BitReadStream; + raw_type: number; + type: "Unknown"; + [k: string]: unknown; + } ) - | { - class_id: number; - data: BitReadStream; - index: number; - length: number; - type: "EntityMessage"; - [k: string]: unknown; -} - | { - event: GameEvent; - event_type_id: GameEventTypeId; - type: "GameEvent"; - [k: string]: unknown; -} - | { - base_line: number; - delta?: number | null; - entities: PacketEntity[]; - max_entries: number; - removed_entities: EntityId[]; - type: "PacketEntities"; - updated_base_line: boolean; - [k: string]: unknown; -} - | { - events: EventInfo[]; - type: "TempEntities"; - [k: string]: unknown; -} - | { - index: number; - type: "PreFetch"; - [k: string]: unknown; -} - | { - index: BitReadStream; - kind: number; - length: number; - type: "Menu"; - [k: string]: unknown; -} - | { - event_list: GameEventDefinition[]; - type: "GameEventList"; - [k: string]: unknown; -} - | { - cookie: number; - type: "GetCvarValue"; - value: string; - [k: string]: unknown; -} - | { - data: BitReadStream; - length: number; - type: "CmdKeyValues"; - [k: string]: unknown; -}; + | { + class_id: number; + data: BitReadStream; + index: number; + length: number; + type: "EntityMessage"; + [k: string]: unknown; + } + | { + event: GameEvent; + event_type: GameEventType; + event_type_id: GameEventTypeId; + type: "GameEvent"; + [k: string]: unknown; + } + | { + base_line: number; + delta?: ServerTick | null; + entities: PacketEntity[]; + max_entries: number; + removed_entities: EntityId[]; + type: "PacketEntities"; + updated_base_line: boolean; + [k: string]: unknown; + } + | { + events: EventInfo[]; + type: "TempEntities"; + [k: string]: unknown; + } + | { + index: number; + type: "PreFetch"; + [k: string]: unknown; + } + | { + index: BitReadStream; + kind: number; + length: number; + type: "Menu"; + [k: string]: unknown; + } + | { + event_list: GameEventDefinition[]; + type: "GameEventList"; + [k: string]: unknown; + } + | { + cookie: number; + type: "GetCvarValue"; + value: string; + [k: string]: unknown; + } + | { + data: BitReadStream; + length: number; + type: "CmdKeyValues"; + [k: string]: unknown; + }; +/** + * Tick relative to the start of the game on the server + */ +export type ServerTick = number; export type SignOnState = "None" | "Challenge" | "Connected" | "New" | "PreSpawn" | "Spawn" | "Full" | "ChangeLevel"; +export type String = string; +export type EntityId = number; export type ChatMessageKind = - | "TF_Chat_All" - | "TF_Chat_Team" - | "TF_Chat_AllDead" - | "TF_Chat_Team_Dead" - | "TF_Chat_AllSpec" - | "NameChange" - | "Empty"; + | "TF_Chat_All" + | "TF_Chat_Team" + | "TF_Chat_AllDead" + | "TF_Chat_Team_Dead" + | "TF_Chat_AllSpec" + | "NameChange" + | "Empty"; export type HudTextLocation = "PrintNotify" | "PrintConsole" | "PrintTalk" | "PrintCenter"; export type GameEvent = - | { - address: string; - dedicated: boolean; - game: string; - hostname: string; - ip: number; - map_name: string; - max_players: number; - os: string; - password: boolean; - port: number; - type: "ServerSpawn"; - [k: string]: unknown; -} - | { - level_name: string; - type: "ServerChangeLevelFailed"; - [k: string]: unknown; -} - | { - reason: string; - type: "ServerShutdown"; - [k: string]: unknown; -} - | { - cvar_name: string; - cvar_value: string; - type: "ServerCvar"; - [k: string]: unknown; -} - | { - text: string; - type: "ServerMessage"; - [k: string]: unknown; -} - | { - by: string; - duration: string; - ip: string; - kicked: boolean; - name: string; - network_id: string; - type: "ServerAddBan"; - user_id: number; - [k: string]: unknown; -} - | { - by: string; - ip: string; - network_id: string; - type: "ServerRemoveBan"; - [k: string]: unknown; -} - | { - address: string; - bot: number; - index: number; - name: string; - network_id: string; - type: "PlayerConnect"; - user_id: number; - [k: string]: unknown; -} - | { - bot: number; - index: number; - name: string; - network_id: string; - type: "PlayerConnectClient"; - user_id: number; - [k: string]: unknown; -} - | { - bot: boolean; - index: number; - name: string; - network_id: string; - type: "PlayerInfo"; - user_id: number; - [k: string]: unknown; -} - | { - bot: number; - name: string; - network_id: string; - reason: string; - type: "PlayerDisconnect"; - user_id: number; - [k: string]: unknown; -} - | { - type: "PlayerActivate"; - user_id: number; - [k: string]: unknown; -} - | { - text: string; - type: "PlayerSay"; - user_id: number; - [k: string]: unknown; -} - | { - message: string; - type: "ClientDisconnect"; - [k: string]: unknown; -} - | { - address: string; - ip: number; - port: number; - source: string; - type: "ClientBeginConnect"; - [k: string]: unknown; -} - | { - address: string; - ip: number; - port: number; - type: "ClientConnected"; - [k: string]: unknown; -} - | { - address: string; - ip: number; - port: number; - type: "ClientFullConnect"; - [k: string]: unknown; -} - | { - type: "HostQuit"; - [k: string]: unknown; -} - | { - team_id: number; - team_name: string; - type: "TeamInfo"; - [k: string]: unknown; -} - | { - score: number; - team_id: number; - type: "TeamScore"; - [k: string]: unknown; -} - | { - additional_flags: number; - sound: string; - team: number; - type: "TeamPlayBroadcastAudio"; - [k: string]: unknown; -} - | { - auto_team: boolean; - disconnect: boolean; - name: string; - old_team: number; - silent: boolean; - team: number; - type: "PlayerTeam"; - user_id: number; - [k: string]: unknown; -} - | { - class: string; - type: "PlayerClass"; - user_id: number; - [k: string]: unknown; -} - | { - assister: number; - assister_fallback: string; - attacker: number; - crit_type: number; - custom_kill: number; - damage_bits: number; - death_flags: number; - duck_streak_assist: number; - duck_streak_total: number; - duck_streak_victim: number; - ducks_streaked: number; - inflictor_ent_index: number; - kill_streak_assist: number; - kill_streak_total: number; - kill_streak_victim: number; - kill_streak_wep: number; - player_penetrate_count: number; - rocket_jump: boolean; - silent_kill: boolean; - stun_flags: number; - type: "PlayerDeath"; - user_id: number; - victim_ent_index: number; - weapon: string; - weapon_def_index: number; - weapon_id: number; - weapon_log_class_name: string; - [k: string]: unknown; -} - | { - all_see_crit: boolean; - attacker: number; - bonus_effect: number; - crit: boolean; - custom: number; - damage_amount: number; - health: number; - mini_crit: boolean; - show_disguised_crit: boolean; - type: "PlayerHurt"; - user_id: number; - weapon_id: number; - [k: string]: unknown; -} - | { - team_only: boolean; - text: string; - type: "PlayerChat"; - user_id: number; - [k: string]: unknown; -} - | { - deaths: number; - kills: number; - score: number; - type: "PlayerScore"; - user_id: number; - [k: string]: unknown; -} - | { - class: number; - team: number; - type: "PlayerSpawn"; - user_id: number; - [k: string]: unknown; -} - | { - mode: number; - type: "PlayerShoot"; - user_id: number; - weapon: number; - [k: string]: unknown; -} - | { - entity: number; - type: "PlayerUse"; - user_id: number; - [k: string]: unknown; -} - | { - new_name: string; - old_name: string; - type: "PlayerChangeName"; - user_id: number; - [k: string]: unknown; -} - | { - hint_message: string; - type: "PlayerHintMessage"; - [k: string]: unknown; -} - | { - ent_index: number; - type: "BasePlayerTeleported"; - [k: string]: unknown; -} - | { - type: "GameInit"; - [k: string]: unknown; -} - | { - map_name: string; - type: "GameNewMap"; - [k: string]: unknown; -} - | { - frag_limit: number; - objective: string; - rounds_limit: number; - time_limit: number; - type: "GameStart"; - [k: string]: unknown; -} - | { - type: "GameEnd"; - winner: number; - [k: string]: unknown; -} - | { - frag_limit: number; - objective: string; - time_limit: number; - type: "RoundStart"; - [k: string]: unknown; -} - | { - message: string; - reason: number; - type: "RoundEnd"; - winner: number; - [k: string]: unknown; -} - | { - target: number; - text: string; - type: "GameMessage"; - [k: string]: unknown; -} - | { - ent_index: number; - material: number; - type: "BreakBreakable"; - user_id: number; - [k: string]: unknown; -} - | { - ent_index: number; - type: "BreakProp"; - user_id: number; - [k: string]: unknown; -} - | { - damage_bits: number; - ent_index_attacker: number; - ent_index_inflictor: number; - ent_index_killed: number; - type: "EntityKilled"; - [k: string]: unknown; -} - | { - num_advanced: number; - num_bronze: number; - num_gold: number; - num_silver: number; - type: "BonusUpdated"; - [k: string]: unknown; -} - | { - achievement_name: string; - cur_val: number; - max_val: number; - type: "AchievementEvent"; - [k: string]: unknown; -} - | { - achievement_id: number; - cur_val: number; - max_val: number; - type: "AchievementIncrement"; - [k: string]: unknown; -} - | { - ent_index: number; - type: "PhysgunPickup"; - [k: string]: unknown; -} - | { - ent_index: number; - type: "FlareIgniteNpc"; - [k: string]: unknown; -} - | { - type: "HelicopterGrenadePuntMiss"; - [k: string]: unknown; -} - | { - type: "UserDataDownloaded"; - [k: string]: unknown; -} - | { - ent_index: number; - type: "RagdollDissolved"; - [k: string]: unknown; -} - | { - new_mode: number; - obs_target: number; - old_mode: number; - type: "HLTVChangedMode"; - [k: string]: unknown; -} - | { - mode: number; - obs_target: number; - old_target: number; - type: "HLTVChangedTarget"; - [k: string]: unknown; -} - | { - type: "VoteEnded"; - [k: string]: unknown; -} - | { - initiator: number; - issue: string; - param_1: string; - team: number; - type: "VoteStarted"; - [k: string]: unknown; -} - | { - potential_votes: number; - type: "VoteChanged"; - vote_option_1: number; - vote_option_2: number; - vote_option_3: number; - vote_option_4: number; - vote_option_5: number; - [k: string]: unknown; -} - | { - details: string; - param_1: string; - team: number; - type: "VotePassed"; - [k: string]: unknown; -} - | { - team: number; - type: "VoteFailed"; - [k: string]: unknown; -} - | { - entity_id: number; - team: number; - type: "VoteCast"; - vote_option: number; - [k: string]: unknown; -} - | { - count: number; - option_1: string; - option_2: string; - option_3: string; - option_4: string; - option_5: string; - type: "VoteOptions"; - [k: string]: unknown; -} - | { - type: "ReplaySaved"; - [k: string]: unknown; -} - | { - type: "EnteredPerformanceMode"; - [k: string]: unknown; -} - | { - type: "BrowseReplays"; - [k: string]: unknown; -} - | { - favorited: number; - likes: number; - type: "ReplayYoutubeStats"; - views: number; - [k: string]: unknown; -} - | { - type: "InventoryUpdated"; - [k: string]: unknown; -} - | { - type: "CartUpdated"; - [k: string]: unknown; -} - | { - type: "StorePriceSheetUpdated"; - [k: string]: unknown; -} - | { - type: "EconInventoryConnected"; - [k: string]: unknown; -} - | { - type: "ItemSchemaInitialized"; - [k: string]: unknown; -} - | { - type: "GcNewSession"; - [k: string]: unknown; -} - | { - type: "GcLostSession"; - [k: string]: unknown; -} - | { - player: number; - type: "IntroFinish"; - [k: string]: unknown; -} - | { - player: number; - type: "IntroNextCamera"; - [k: string]: unknown; -} - | { - class: number; - type: "PlayerChangeClass"; - user_id: number; - [k: string]: unknown; -} - | { - seconds: number; - type: "TfMapTimeRemaining"; - [k: string]: unknown; -} - | { - reason: string; - type: "TfGameOver"; - [k: string]: unknown; -} - | { - capping_team: number; - capping_team_score: number; - type: "CtfFlagCaptured"; - [k: string]: unknown; -} - | { - type: "ControlPointInitialized"; - [k: string]: unknown; -} - | { - index: number; - type: "ControlPointUpdateImages"; - [k: string]: unknown; -} - | { - index: number; - type: "ControlPointUpdateLayout"; - [k: string]: unknown; -} - | { - index: number; - type: "ControlPointUpdateCapping"; - [k: string]: unknown; -} - | { - index: number; - type: "ControlPointUpdateOwner"; - [k: string]: unknown; -} - | { - area: number; - player: number; - type: "ControlPointStartTouch"; - [k: string]: unknown; -} - | { - area: number; - player: number; - type: "ControlPointEndTouch"; - [k: string]: unknown; -} - | { - player: number; - type: "ControlPointPulseElement"; - [k: string]: unknown; -} - | { - int_data: number; - player: number; - type: "ControlPointFakeCapture"; - [k: string]: unknown; -} - | { - int_data: number; - player: number; - type: "ControlPointFakeCaptureMultiplier"; - [k: string]: unknown; -} - | { - round: string; - type: "TeamPlayRoundSelected"; - [k: string]: unknown; -} - | { - full_reset: boolean; - type: "TeamPlayRoundStart"; - [k: string]: unknown; -} - | { - type: "TeamPlayRoundActive"; - [k: string]: unknown; -} - | { - type: "TeamPlayWaitingBegins"; - [k: string]: unknown; -} - | { - type: "TeamPlayWaitingEnds"; - [k: string]: unknown; -} - | { - type: "TeamPlayWaitingAboutToEnd"; - [k: string]: unknown; -} - | { - type: "TeamPlayRestartRound"; - [k: string]: unknown; -} - | { - type: "TeamPlayReadyRestart"; - [k: string]: unknown; -} - | { - seconds: number; - type: "TeamPlayRoundRestartSeconds"; - [k: string]: unknown; -} - | { - team: number; - type: "TeamPlayTeamReady"; - [k: string]: unknown; -} - | { - flag_cap_limit: number; - full_round: number; - losing_team_num_caps: number; - round_time: number; - team: number; - type: "TeamPlayRoundWin"; - was_sudden_death: number; - win_reason: number; - [k: string]: unknown; -} - | { - type: "TeamPlayUpdateTimer"; - [k: string]: unknown; -} - | { - reason: number; - type: "TeamPlayRoundStalemate"; - [k: string]: unknown; -} - | { - type: "TeamPlayOvertimeBegin"; - [k: string]: unknown; -} - | { - type: "TeamPlayOvertimeEnd"; - [k: string]: unknown; -} - | { - type: "TeamPlaySuddenDeathBegin"; - [k: string]: unknown; -} - | { - type: "TeamPlaySuddenDeathEnd"; - [k: string]: unknown; -} - | { - reason: string; - type: "TeamPlayGameOver"; - [k: string]: unknown; -} - | { - seconds: number; - type: "TeamPlayMapTimeRemaining"; - [k: string]: unknown; -} - | { - time_remaining: number; - type: "TeamPlayTimerFlash"; - [k: string]: unknown; -} - | { - seconds_added: number; - timer: number; - type: "TeamPlayTimerTimeAdded"; - [k: string]: unknown; -} - | { - cap_team: number; - cap_time: number; - cappers: string; - cp: number; - cp_name: string; - team: number; - type: "TeamPlayPointStartCapture"; - [k: string]: unknown; -} - | { - cappers: string; - cp: number; - cp_name: string; - team: number; - type: "TeamPlayPointCaptured"; - [k: string]: unknown; -} - | { - cp: number; - cp_name: string; - team: number; - type: "TeamPlayPointLocked"; - [k: string]: unknown; -} - | { - cp: number; - cp_name: string; - team: number; - type: "TeamPlayPointUnlocked"; - [k: string]: unknown; -} - | { - cp: number; - cp_name: string; - time_remaining: number; - type: "TeamPlayCaptureBroken"; - [k: string]: unknown; -} - | { - blocker: number; - cp: number; - cp_name: string; - type: "TeamPlayCaptureBlocked"; - victim: number; - [k: string]: unknown; -} - | { - carrier: number; - event_type: number; - home: number; - player: number; - team: number; - type: "TeamPlayFlagEvent"; - [k: string]: unknown; -} - | { - blue_score: number; - blue_score_prev: number; - cappers: string; - flag_cap_limit: number; - game_over: number; - kill_stream_player_1: number; - kill_stream_player_1_count: number; - panel_style: number; - player_1: number; - player_1_points: number; - player_2: number; - player_2_points: number; - player_3: number; - player_3_points: number; - red_score: number; - red_score_prev: number; - round_complete: number; - rounds_remaining: number; - type: "TeamPlayWinPanel"; - win_reason: number; - winning_team: number; - [k: string]: unknown; -} - | { - player: number; - team: number; - type: "TeamPlayTeamBalancedPlayer"; - [k: string]: unknown; -} - | { - type: "TeamPlaySetupFinished"; - [k: string]: unknown; -} - | { - alert_type: number; - type: "TeamPlayAlert"; - [k: string]: unknown; -} - | { - map: string; - next_map: string; - text: string; - type: "TrainingComplete"; - [k: string]: unknown; -} - | { - killer: number; - type: "ShowFreezePanel"; - [k: string]: unknown; -} - | { - type: "HideFreezePanel"; - [k: string]: unknown; -} - | { - type: "FreezeCamStarted"; - [k: string]: unknown; -} - | { - type: "LocalPlayerChangeTeam"; - [k: string]: unknown; -} - | { - score: number; - type: "LocalPlayerScoreChanged"; - [k: string]: unknown; -} - | { - type: "LocalPlayerChangeClass"; - [k: string]: unknown; -} - | { - type: "LocalPlayerRespawn"; - [k: string]: unknown; -} - | { - building_type: number; - object_mode: number; - remove: number; - type: "BuildingInfoChanged"; - [k: string]: unknown; -} - | { - disguised: boolean; - type: "LocalPlayerChangeDisguise"; - [k: string]: unknown; -} - | { - new_value: number; - old_value: number; - type: "PlayerAccountChanged"; - [k: string]: unknown; -} - | { - type: "SpyPdaReset"; - [k: string]: unknown; -} - | { - ent_index: number; - type: "FlagStatusUpdate"; - user_id: number; - [k: string]: unknown; -} - | { - force_upload: boolean; - type: "PlayerStatsUpdated"; - [k: string]: unknown; -} - | { - type: "PlayingCommentary"; - [k: string]: unknown; -} - | { - target_id: number; - type: "PlayerChargeDeployed"; - user_id: number; - [k: string]: unknown; -} - | { - index: number; - object: number; - type: "PlayerBuiltObject"; - user_id: number; - [k: string]: unknown; -} - | { - index: number; - is_builder: boolean; - object: number; - type: "PlayerUpgradedObject"; - user_id: number; - [k: string]: unknown; -} - | { - index: number; - object: number; - type: "PlayerCarryObject"; - user_id: number; - [k: string]: unknown; -} - | { - index: number; - object: number; - type: "PlayerDropObject"; - user_id: number; - [k: string]: unknown; -} - | { - index: number; - object_type: number; - type: "ObjectRemoved"; - user_id: number; - [k: string]: unknown; -} - | { - assister: number; - attacker: number; - index: number; - object_type: number; - type: "ObjectDestroyed"; - user_id: number; - was_building: boolean; - weapon: string; - weapon_id: number; - [k: string]: unknown; -} - | { - index: number; - object_type: number; - type: "ObjectDetonated"; - user_id: number; - [k: string]: unknown; -} - | { - achievement: number; - player: number; - type: "AchievementEarned"; - [k: string]: unknown; -} - | { - type: "SpecTargetUpdated"; - [k: string]: unknown; -} - | { - name_change: boolean; - new_name: string; - ready_state: number; - type: "TournamentStateUpdate"; - user_id: number; - [k: string]: unknown; -} - | { - type: "TournamentEnableCountdown"; - [k: string]: unknown; -} - | { - type: "PlayerCalledForMedic"; - user_id: number; - [k: string]: unknown; -} - | { - type: "PlayerAskedForBall"; - user_id: number; - [k: string]: unknown; -} - | { - type: "LocalPlayerBecameObserver"; - [k: string]: unknown; -} - | { - medic_ent_index: number; - pyro_ent_index: number; - type: "PlayerIgnitedInv"; - victim_ent_index: number; - [k: string]: unknown; -} - | { - pyro_ent_index: number; - type: "PlayerIgnited"; - victim_ent_index: number; - weapon_id: number; - [k: string]: unknown; -} - | { - healer: number; - item_definition_index: number; - type: "PlayerExtinguished"; - victim: number; - [k: string]: unknown; -} - | { - builder_id: number; - dist: number; - type: "PlayerTeleported"; - user_id: number; - [k: string]: unknown; -} - | { - type: "PlayerHealedMedicCall"; - user_id: number; - [k: string]: unknown; -} - | { - type: "LocalPlayerChargeReady"; - [k: string]: unknown; -} - | { - type: "LocalPlayerWindDown"; - [k: string]: unknown; -} - | { - medic_user_id: number; - type: "PlayerInvulned"; - user_id: number; - [k: string]: unknown; -} - | { - players: number; - speed: number; - team: number; - type: "EscortSpeed"; - [k: string]: unknown; -} - | { - progress: number; - reset: boolean; - team: number; - type: "EscortProgress"; - [k: string]: unknown; -} - | { - recede_time: number; - team: number; - type: "EscortRecede"; - [k: string]: unknown; -} - | { - type: "GameUIActivated"; - [k: string]: unknown; -} - | { - type: "GameUIHidden"; - [k: string]: unknown; -} - | { - player: number; - points: number; - type: "PlayerEscortScore"; - [k: string]: unknown; -} - | { - amount: number; - ent_index: number; - type: "PlayerHealOnHit"; - weapon_def_index: number; - [k: string]: unknown; -} - | { - owner: number; - target: number; - type: "PlayerStealSandvich"; - [k: string]: unknown; -} - | { - show: boolean; - type: "ShowClassLayout"; - [k: string]: unknown; -} - | { - show: boolean; - type: "ShowVsPanel"; - [k: string]: unknown; -} - | { - amount: number; - kind: number; - type: "PlayerDamaged"; - [k: string]: unknown; -} - | { - message: number; - player: number; - type: "ArenaPlayerNotification"; - [k: string]: unknown; -} - | { - streak: number; - team: number; - type: "ArenaMatchMaxStreak"; - [k: string]: unknown; -} - | { - type: "ArenaRoundStart"; - [k: string]: unknown; -} - | { - blue_score: number; - blue_score_prev: number; - cappers: string; - flag_cap_limit: number; - panel_style: number; - player_1: number; - player_1_damage: number; - player_1_healing: number; - player_1_kills: number; - player_1_lifetime: number; - player_2: number; - player_2_damage: number; - player_2_healing: number; - player_2_kills: number; - player_2_lifetime: number; - player_3: number; - player_3_damage: number; - player_3_healing: number; - player_3_kills: number; - player_3_lifetime: number; - player_4: number; - player_4_damage: number; - player_4_healing: number; - player_4_kills: number; - player_4_lifetime: number; - player_5: number; - player_5_damage: number; - player_5_healing: number; - player_5_kills: number; - player_5_lifetime: number; - player_6: number; - player_6_damage: number; - player_6_healing: number; - player_6_kills: number; - player_6_lifetime: number; - red_score: number; - red_score_prev: number; - round_complete: number; - type: "ArenaWinPanel"; - win_reason: number; - winning_team: number; - [k: string]: unknown; -} - | { - panel_style: number; - type: "PveWinPanel"; - win_reason: number; - winning_team: number; - [k: string]: unknown; -} - | { - player: number; - type: "AirDash"; - [k: string]: unknown; -} - | { - player: number; - type: "Landed"; - [k: string]: unknown; -} - | { - damage: number; - type: "PlayerDamageDodged"; - [k: string]: unknown; -} - | { - big_stun: boolean; - stunner: number; - type: "PlayerStunned"; - victim: number; - victim_capping: boolean; - [k: string]: unknown; -} - | { - scout_id: number; - target_id: number; - type: "ScoutGrandSlam"; - [k: string]: unknown; -} - | { - target_index: number; - type: "ScoutSlamdollLanded"; - x: number; - y: number; - z: number; - [k: string]: unknown; -} - | { - attached_entity: number; - bone_angles_x: number; - bone_angles_y: number; - bone_angles_z: number; - bone_index_attached: number; - bone_position_x: number; - bone_position_y: number; - bone_position_z: number; - is_crit: boolean; - projectile_type: number; - shooter: number; - type: "ArrowImpact"; - [k: string]: unknown; -} - | { - thrower_ent_index: number; - type: "PlayerJarated"; - victim_ent_index: number; - [k: string]: unknown; -} - | { - thrower_ent_index: number; - type: "PlayerJaratedFade"; - victim_ent_index: number; - [k: string]: unknown; -} - | { - attacker_ent_index: number; - blocker_ent_index: number; - type: "PlayerShieldBlocked"; - [k: string]: unknown; -} - | { - pinned: number; - type: "PlayerPinned"; - [k: string]: unknown; -} - | { - medic: number; - type: "PlayerHealedByMedic"; - [k: string]: unknown; -} - | { - object: number; - owner_id: number; - sapper_id: number; - type: "PlayerSappedObject"; - user_id: number; - [k: string]: unknown; -} - | { - is_strange: number; - is_unusual: number; - item_def: number; - method: number; - player: number; - quality: number; - type: "ItemFound"; - wear: number; - [k: string]: unknown; -} - | { - follow_ent_index: number; - id: number; - lifetime: number; - play_sound: string; - show_distance: boolean; - show_effect: boolean; - text: string; - type: "ShowAnnotation"; - visibility_bit_field: number; - world_normal_x: number; - world_normal_y: number; - world_normal_z: number; - world_pos_x: number; - world_pos_y: number; - world_pos_z: number; - [k: string]: unknown; -} - | { - id: number; - type: "HideAnnotation"; - [k: string]: unknown; -} - | { - type: "PostInventoryApplication"; - user_id: number; - [k: string]: unknown; -} - | { - index: number; - time: number; - type: "ControlPointUnlockUpdated"; - [k: string]: unknown; -} - | { - buff_owner: number; - buff_type: number; - type: "DeployBuffBanner"; - [k: string]: unknown; -} - | { - buff_owner: number; - buff_type: number; - type: "PlayerBuff"; - user_id: number; - [k: string]: unknown; -} - | { - attacker: number; - charged: boolean; - healing: number; - type: "MedicDeath"; - user_id: number; - [k: string]: unknown; -} - | { - type: "OvertimeNag"; - [k: string]: unknown; -} - | { - type: "TeamsChanged"; - [k: string]: unknown; -} - | { - type: "HalloweenPumpkinGrab"; - user_id: number; - [k: string]: unknown; -} - | { - play_sound: boolean; - type: "RocketJump"; - user_id: number; - [k: string]: unknown; -} - | { - type: "RocketJumpLanded"; - user_id: number; - [k: string]: unknown; -} - | { - play_sound: boolean; - type: "StickyJump"; - user_id: number; - [k: string]: unknown; -} - | { - type: "StickyJumpLanded"; - user_id: number; - [k: string]: unknown; -} - | { - play_sound: boolean; - type: "RocketPackLaunch"; - user_id: number; - [k: string]: unknown; -} - | { - type: "RocketPackLanded"; - user_id: number; - [k: string]: unknown; -} - | { - medic: number; - type: "MedicDefended"; - user_id: number; - [k: string]: unknown; -} - | { - amount: number; - type: "LocalPlayerHealed"; - [k: string]: unknown; -} - | { - type: "PlayerDestroyedPipeBomb"; - user_id: number; - [k: string]: unknown; -} - | { - object_ent_index: number; - owner_id: number; - type: "ObjectDeflected"; - user_id: number; - weapon_id: number; - [k: string]: unknown; -} - | { - player: number; - type: "PlayerMvp"; - [k: string]: unknown; -} - | { - type: "RaidSpawnMob"; - [k: string]: unknown; -} - | { - type: "RaidSpawnSquad"; - [k: string]: unknown; -} - | { - area: number; - blocked: boolean; - type: "NavBlocked"; - [k: string]: unknown; -} - | { - index: number; - type: "PathTrackPassed"; - [k: string]: unknown; -} - | { - count: number; - index: number; - type: "NumCappersChanged"; - [k: string]: unknown; -} - | { - type: "PlayerRegenerate"; - [k: string]: unknown; -} - | { - index: number; - object: number; - type: "UpdateStatusItem"; - [k: string]: unknown; -} - | { - type: "StatsResetRound"; - [k: string]: unknown; -} - | { - type: "ScoreStatsAccumulatedUpdate"; - [k: string]: unknown; -} - | { - type: "ScoreStatsAccumulatedReset"; - [k: string]: unknown; -} - | { - achievement: number; - type: "AchievementEarnedLocal"; - [k: string]: unknown; -} - | { - amount: number; - healer: number; - patient: number; - type: "PlayerHealed"; - [k: string]: unknown; -} - | { - amount: number; - building: number; - healer: number; - type: "BuildingHealed"; - [k: string]: unknown; -} - | { - item: string; - type: "ItemPickup"; - user_id: number; - [k: string]: unknown; -} - | { - initiator: number; - initiator_score: number; - killer: number; - score_type: number; - target: number; - target_score: number; - type: "DuelStatus"; - [k: string]: unknown; -} - | { - assister: number; - assister_fallback: string; - attacker: number; - custom_kill: number; - damage_bits: number; - death_flags: number; - inflictor_ent_index: number; - silent_kill: boolean; - stun_flags: number; - type: "FishNotice"; - user_id: number; - victim_ent_index: number; - weapon: string; - weapon_id: number; - weapon_log_class_name: string; - [k: string]: unknown; -} - | { - assister: number; - assister_fallback: string; - attacker: number; - custom_kill: number; - damage_bits: number; - death_flags: number; - inflictor_ent_index: number; - silent_kill: boolean; - stun_flags: number; - type: "FishNoticeArm"; - user_id: number; - victim_ent_index: number; - weapon: string; - weapon_id: number; - weapon_log_class_name: string; - [k: string]: unknown; -} - | { - assister: number; - assister_fallback: string; - attacker: number; - custom_kill: number; - damage_bits: number; - death_flags: number; - inflictor_ent_index: number; - silent_kill: boolean; - stun_flags: number; - type: "SlapNotice"; - user_id: number; - victim_ent_index: number; - weapon: string; - weapon_id: number; - weapon_log_class_name: string; - [k: string]: unknown; -} - | { - assister: number; - assister_fallback: string; - attacker: number; - custom_kill: number; - damage_bits: number; - death_flags: number; - inflictor_ent_index: number; - silent_kill: boolean; - stun_flags: number; - total_hits: number; - type: "ThrowableHit"; - user_id: number; - victim_ent_index: number; - weapon: string; - weapon_id: number; - weapon_log_class_name: string; - [k: string]: unknown; -} - | { - type: "PumpkinLordSummoned"; - [k: string]: unknown; -} - | { - type: "PumpkinLordKilled"; - [k: string]: unknown; -} - | { - level: number; - type: "MerasmusSummoned"; - [k: string]: unknown; -} - | { - level: number; - type: "MerasmusKilled"; - [k: string]: unknown; -} - | { - level: number; - time_remaining: number; - type: "MerasmusEscapeWarning"; - [k: string]: unknown; -} - | { - level: number; - type: "MerasmusEscaped"; - [k: string]: unknown; -} - | { - level: number; - type: "EyeballBossSummoned"; - [k: string]: unknown; -} - | { - level: number; - player_ent_index: number; - type: "EyeballBossStunned"; - [k: string]: unknown; -} - | { - level: number; - type: "EyeballBossKilled"; - [k: string]: unknown; -} - | { - level: number; - player_ent_index: number; - type: "EyeballBossKiller"; - [k: string]: unknown; -} - | { - level: number; - time_remaining: number; - type: "EyeballBossEscapeImminent"; - [k: string]: unknown; -} - | { - level: number; - type: "EyeballBossEscaped"; - [k: string]: unknown; -} - | { - attacker_player: number; - boss: number; - crit: boolean; - damage_amount: number; - ent_index: number; - health: number; - type: "NpcHurt"; - weapon_id: number; - [k: string]: unknown; -} - | { - index: number; - time: number; - type: "ControlPointTimerUpdated"; - [k: string]: unknown; -} - | { - ent_index: number; - type: "PlayerHighFiveStart"; - [k: string]: unknown; -} - | { - ent_index: number; - type: "PlayerHighFiveCancel"; - [k: string]: unknown; -} - | { - initiator_ent_index: number; - partner_ent_index: number; - type: "PlayerHighFiveSuccess"; - [k: string]: unknown; -} - | { - player_ent_index: number; - points: number; - source_ent_index: number; - type: "PlayerBonusPoints"; - [k: string]: unknown; -} - | { - type: "PlayerUpgraded"; - [k: string]: unknown; -} - | { - cost: number; - player: number; - type: "PlayerBuyback"; - [k: string]: unknown; -} - | { - kind: number; - player: number; - time: number; - type: "PlayerUsedPowerUpBottle"; - [k: string]: unknown; -} - | { - type: "ChristmasGiftGrab"; - user_id: number; - [k: string]: unknown; -} - | { - attacker: number; - type: "PlayerKilledAchievementZone"; - victim: number; - zone_id: number; - [k: string]: unknown; -} - | { - type: "PartyUpdated"; - [k: string]: unknown; -} - | { - type: "PartyPrefChanged"; - [k: string]: unknown; -} - | { - type: "PartyCriteriaChanged"; - [k: string]: unknown; -} - | { - type: "PartyInvitesChanged"; - [k: string]: unknown; -} - | { - match_group: number; - type: "PartyQueueStateChanged"; - [k: string]: unknown; -} - | { - kind: number; - steam_id: string; - text: string; - type: "PartyChat"; - [k: string]: unknown; -} - | { - steam_id: string; - type: "PartyMemberJoin"; - [k: string]: unknown; -} - | { - steam_id: string; - type: "PartyMemberLeave"; - [k: string]: unknown; -} - | { - type: "MatchInvitesUpdated"; - [k: string]: unknown; -} - | { - type: "LobbyUpdated"; - [k: string]: unknown; -} - | { - class: number; - count: number; - type: "MvmMissionUpdate"; - [k: string]: unknown; -} - | { - type: "RecalculateHolidays"; - [k: string]: unknown; -} - | { - currency: number; - type: "PlayerCurrencyChanged"; - [k: string]: unknown; -} - | { - team: number; - type: "DoomsdayRocketOpen"; - [k: string]: unknown; -} - | { - player: number; - type: "RemoveNemesisRelationships"; - [k: string]: unknown; -} - | { - type: "MvmCreditBonusWave"; - [k: string]: unknown; -} - | { - type: "MvmCreditBonusAll"; - [k: string]: unknown; -} - | { - type: "MvmCreditBonusAllAdvanced"; - [k: string]: unknown; -} - | { - player: number; - type: "MvmQuickSentryUpgrade"; - [k: string]: unknown; -} - | { - type: "MvmTankDestroyedByPlayers"; - [k: string]: unknown; -} - | { - player: number; - type: "MvmKillRobotDeliveringBomb"; - [k: string]: unknown; -} - | { - currency: number; - player: number; - type: "MvmPickupCurrency"; - [k: string]: unknown; -} - | { - level: number; - type: "MvmBombCarrierKilled"; - [k: string]: unknown; -} - | { - det_x: number; - det_y: number; - det_z: number; - player: number; - type: "MvmSentryBusterDetonate"; - [k: string]: unknown; -} - | { - player: number; - type: "MvmScoutMarkedForDeath"; - [k: string]: unknown; -} - | { - player: number; - type: "MvmMedicPowerUpShared"; - [k: string]: unknown; -} - | { - advanced: number; - max_waves: number; - type: "MvmBeginWave"; - wave_index: number; - [k: string]: unknown; -} - | { - advanced: boolean; - type: "MvmWaveComplete"; - [k: string]: unknown; -} - | { - mission: string; - type: "MvmMissionComplete"; - [k: string]: unknown; -} - | { - player: number; - type: "MvmBombResetByPlayer"; - [k: string]: unknown; -} - | { - type: "MvmBombAlarmTriggered"; - [k: string]: unknown; -} - | { - player: number; - type: "MvmBombDeployResetByPlayer"; - [k: string]: unknown; -} - | { - type: "MvmWaveFailed"; - [k: string]: unknown; -} - | { - type: "MvmResetStats"; - [k: string]: unknown; -} - | { - ent_index: number; - type: "DamageResisted"; - [k: string]: unknown; -} - | { - ent_index: number; - marker_ent_index: number; - type: "RevivePlayerNotify"; - [k: string]: unknown; -} - | { - ent_index: number; - type: "RevivePlayerStopped"; - [k: string]: unknown; -} - | { - ent_index: number; - type: "RevivePlayerComplete"; - [k: string]: unknown; -} - | { - type: "PlayerTurnedToGhost"; - user_id: number; - [k: string]: unknown; -} - | { - damage: number; - type: "MedigunShieldBlockedDamage"; - user_id: number; - [k: string]: unknown; -} - | { - index: number; - type: "MvmAdvWaveCompleteNoGates"; - [k: string]: unknown; -} - | { - currency: number; - type: "MvmSniperHeadshotCurrency"; - user_id: number; - [k: string]: unknown; -} - | { - type: "MvmMannhattanPit"; - [k: string]: unknown; -} - | { - type: "FlagCarriedInDetectionZone"; - [k: string]: unknown; -} - | { - type: "MvmAdvWaveKilledStunRadio"; - [k: string]: unknown; -} - | { - attacker: number; - type: "PlayerDirectHitStun"; - victim: number; - [k: string]: unknown; -} - | { - sentry_buster: number; - type: "MvmSentryBusterKilled"; - [k: string]: unknown; -} - | { - path: string; - type: "UpgradesFileChanged"; - [k: string]: unknown; -} - | { - method: number; - points: number; - team: number; - type: "RdTeamPointsChanged"; - [k: string]: unknown; -} - | { - type: "RdRulesStateChanged"; - [k: string]: unknown; -} - | { - attacker: number; - custom_kill: number; - damage_bits: number; - inflictor_ent_index: number; - type: "RdRobotKilled"; - user_id: number; - victim_ent_index: number; - weapon: string; - weapon_id: number; - weapon_log_class_name: string; - [k: string]: unknown; -} - | { - ent_index: number; - impulse_x: number; - impulse_y: number; - impulse_z: number; - type: "RdRobotImpact"; - [k: string]: unknown; -} - | { - time: number; - type: "TeamPlayPreRoundTimeLeft"; - [k: string]: unknown; -} - | { - index: number; - type: "ParachuteDeploy"; - [k: string]: unknown; -} - | { - index: number; - type: "ParachuteHolster"; - [k: string]: unknown; -} - | { - index: number; - type: "KillRefillsMeter"; - [k: string]: unknown; -} - | { - loser: number; - loser_rps: number; - type: "RpsTauntEvent"; - winner: number; - winner_rps: number; - [k: string]: unknown; -} - | { - index: number; - type: "CongaKill"; - [k: string]: unknown; -} - | { - index: number; - type: "PlayerInitialSpawn"; - [k: string]: unknown; -} - | { - type: "CompetitiveVictory"; - [k: string]: unknown; -} - | { - damage_rank: number; - healing_rank: number; - index: number; - kills_rank: number; - score_rank: number; - support_rank: number; - type: "CompetitiveStatsUpdate"; - [k: string]: unknown; -} - | { - kind: number; - team: number; - type: "MiniGameWin"; - [k: string]: unknown; -} - | { - index: number; - type: "SentryOnGoActive"; - [k: string]: unknown; -} - | { - level: number; - type: "DuckXpLevelUp"; - [k: string]: unknown; -} - | { - type: "QuestLogOpened"; - [k: string]: unknown; -} - | { - type: "SchemaUpdated"; - [k: string]: unknown; -} - | { - type: "LocalPlayerPickupWeapon"; - [k: string]: unknown; -} - | { - amount: number; - method: number; - player: number; - type: "RdPlayerScorePoints"; - [k: string]: unknown; -} - | { - player: number; - type: "DemomanDetStickies"; - [k: string]: unknown; -} - | { - quest_item_id_hi: number; - quest_item_id_low: number; - quest_objective_id: number; - scorer_user_id: number; - type: "QuestObjectiveCompleted"; - [k: string]: unknown; -} - | { - delta: number; - player: number; - type: "PlayerScoreChanged"; - [k: string]: unknown; -} - | { - assister: number; - cp: number; - killer: number; - type: "KilledCappingPlayer"; - victim: number; - [k: string]: unknown; -} - | { - killer: number; - type: "EnvironmentalDeath"; - victim: number; - [k: string]: unknown; -} - | { - attacker: number; - type: "ProjectileDirectHit"; - victim: number; - weapon_def_index: number; - [k: string]: unknown; -} - | { - owner: number; - type: "PassGet"; - [k: string]: unknown; -} - | { - assister: number; - points: number; - scorer: number; - type: "PassScore"; - [k: string]: unknown; -} - | { - attacker: number; - owner: number; - type: "PassFree"; - [k: string]: unknown; -} - | { - catcher: number; - dist: number; - duration: number; - passer: number; - type: "PassPassCaught"; - [k: string]: unknown; -} - | { - attacker: number; - type: "PassBallStolen"; - victim: number; - [k: string]: unknown; -} - | { - blocker: number; - owner: number; - type: "PassBallBlocked"; - [k: string]: unknown; -} - | { - amount: number; - condition: number; - preventor: number; - type: "DamagePrevented"; - victim: number; - [k: string]: unknown; -} - | { - boss: number; - killer: number; - type: "HalloweenBossKilled"; - [k: string]: unknown; -} - | { - player: number; - type: "EscapedLootIsland"; - [k: string]: unknown; -} - | { - player: number; - type: "TaggedPlayerAsIt"; - [k: string]: unknown; -} - | { - player: number; - type: "MerasmusStunned"; - [k: string]: unknown; -} - | { - player: number; - type: "MerasmusPropFound"; - [k: string]: unknown; -} - | { - player: number; - type: "HalloweenSkeletonKilled"; - [k: string]: unknown; -} - | { - player: number; - type: "EscapeHell"; - [k: string]: unknown; -} - | { - player: number; - type: "CrossSpectralBridge"; - [k: string]: unknown; -} - | { - game: number; - player: number; - type: "MiniGameWon"; - [k: string]: unknown; -} - | { - ghost: number; - reviver: number; - type: "RespawnGhost"; - [k: string]: unknown; -} - | { - killer: number; - type: "KillInHell"; - victim: number; - [k: string]: unknown; -} - | { - collector: number; - type: "HalloweenDuckCollected"; - [k: string]: unknown; -} - | { - player: number; - type: "SpecialScore"; - [k: string]: unknown; -} - | { - killer: number; - type: "TeamLeaderKilled"; - victim: number; - [k: string]: unknown; -} - | { - collecting_player: number; - intended_target: number; - soul_count: number; - type: "HalloweenSoulCollected"; - [k: string]: unknown; -} - | { - type: "RecalculateTruce"; - [k: string]: unknown; -} - | { - attacker: number; - spy: number; - type: "DeadRingerCheatDeath"; - [k: string]: unknown; -} - | { - amount: number; - healer: number; - target: number; - type: "CrossbowHeal"; - [k: string]: unknown; -} - | { - amount: number; - damaged: number; - item_definition_index: number; - mitigator: number; - type: "DamageMitigated"; - [k: string]: unknown; -} - | { - distance: number; - pusher: number; - type: "PayloadPushed"; - [k: string]: unknown; -} - | { - game_over: boolean; - type: "PlayerAbandonedMatch"; - [k: string]: unknown; -} - | { - line: number; - panel: number; - player: number; - type: "ClDrawline"; - x: number; - y: number; - [k: string]: unknown; -} - | { - time: number; - type: "RestartTimerTime"; - [k: string]: unknown; -} - | { - type: "WinLimitChanged"; - [k: string]: unknown; -} - | { - type: "WinPanelShowScores"; - [k: string]: unknown; -} - | { - type: "TopStreamsRequestFinished"; - [k: string]: unknown; -} - | { - type: "CompetitiveStateChanged"; - [k: string]: unknown; -} - | { - type: "GlobalWarDataUpdated"; - [k: string]: unknown; -} - | { - type: "StopWatchChanged"; - [k: string]: unknown; -} - | { - type: "DsStop"; - [k: string]: unknown; -} - | { - delay: number; - type: "DsScreenshot"; - [k: string]: unknown; -} - | { - type: "ShowMatchSummary"; - [k: string]: unknown; -} - | { - type: "ExperienceChanged"; - [k: string]: unknown; -} - | { - type: "BeginXpLerp"; - [k: string]: unknown; -} - | { - type: "MatchmakerStatsUpdated"; - [k: string]: unknown; -} - | { - success: boolean; - type: "RematchVotePeriodOver"; - [k: string]: unknown; -} - | { - type: "RematchFailedToCreate"; - [k: string]: unknown; -} - | { - type: "PlayerRematchChange"; - [k: string]: unknown; -} - | { - type: "PingUpdated"; - [k: string]: unknown; -} - | { - type: "MMStatsUpdated"; - [k: string]: unknown; -} - | { - map_index: number; - type: "PlayerNextMapVoteChange"; - vote: number; - [k: string]: unknown; -} - | { - type: "VoteMapsChanged"; - [k: string]: unknown; -} - | { - created: boolean; - definition_index: number; - deleted: boolean; - erase_history: boolean; - kind: number; - type: "ProtoDefChanged"; - [k: string]: unknown; -} - | { - dominated: number; - dominations: number; - dominator: number; - type: "PlayerDomination"; - [k: string]: unknown; -} - | { - pushed: number; - pusher: number; - type: "PlayerRocketPackPushed"; - [k: string]: unknown; -} - | { - msg: string; - request: number; - type: "QuestRequest"; - [k: string]: unknown; -} - | { - msg: string; - request: number; - success: boolean; - type: "QuestResponse"; - [k: string]: unknown; -} - | { - completed: boolean; - kind: number; - owner: number; - quest_definition_index: number; - scorer: number; - type: "QuestProgress"; - [k: string]: unknown; -} - | { - attacker: number; - num_direct_hit: number; - num_hit: number; - type: "ProjectileRemoved"; - weapon_def_index: number; - [k: string]: unknown; -} - | { - type: "QuestMapDataChanged"; - [k: string]: unknown; -} - | { - douser: number; - igniter: number; - type: "GasDousedPlayerIgnited"; - victim: number; - [k: string]: unknown; -} - | { - state: number; - type: "QuestTurnInState"; - [k: string]: unknown; -} - | { - type: "ItemsAcknowledged"; - [k: string]: unknown; -} - | { - blocker: number; - type: "CapperKilled"; - victim: number; - [k: string]: unknown; -} - | { - type: "MainMenuStabilized"; - [k: string]: unknown; -} - | { - type: "WorldStatusChanged"; - [k: string]: unknown; -} - | { - clients: number; - master: string; - proxies: number; - slots: number; - type: "HLTVStatus"; - [k: string]: unknown; -} - | { - index: number; - type: "HLTVCameraman"; - [k: string]: unknown; -} - | { - index: number; - rank: number; - target: number; - type: "HLTVRankCamera"; - [k: string]: unknown; -} - | { - index: number; - rank: number; - target: number; - type: "HLTVRankEntity"; - [k: string]: unknown; -} - | { - fov: number; - offset: number; - phi: number; - pos_x: number; - pos_y: number; - pos_z: number; - target: number; - theta: number; - type: "HLTVFixed"; - [k: string]: unknown; -} - | { - distance: number; - in_eye: number; - inertia: number; - phi: number; - target_1: number; - target_2: number; - theta: number; - type: "HLTVChase"; - [k: string]: unknown; -} - | { - text: string; - type: "HLTVMessage"; - [k: string]: unknown; -} - | { - text: string; - type: "HLTVTitle"; - [k: string]: unknown; -} - | { - text: string; - type: "HLTVChat"; - [k: string]: unknown; -} - | { - type: "ReplayStartRecord"; - [k: string]: unknown; -} - | { - cb: number; - di: number; - sn: string; - st: number; - type: "ReplaySessionInfo"; - [k: string]: unknown; -} - | { - type: "ReplayEndRecord"; - [k: string]: unknown; -} - | { - type: "ReplayReplaysAvailable"; - [k: string]: unknown; -} - | { - error: string; - type: "ReplayServerError"; - [k: string]: unknown; -} - | { - event_type: GameEventType; - type: "Unknown"; - values: GameEventValue[]; - [k: string]: unknown; -}; + | { + address: String; + dedicated: boolean; + game: String; + hostname: String; + ip: number; + map_name: String; + max_players: number; + os: String; + password: boolean; + port: number; + type: "ServerSpawn"; + [k: string]: unknown; + } + | { + level_name: String; + type: "ServerChangeLevelFailed"; + [k: string]: unknown; + } + | { + reason: String; + type: "ServerShutdown"; + [k: string]: unknown; + } + | { + cvar_name: String; + cvar_value: String; + type: "ServerCvar"; + [k: string]: unknown; + } + | { + text: String; + type: "ServerMessage"; + [k: string]: unknown; + } + | { + by: String; + duration: String; + ip: String; + kicked: boolean; + name: String; + network_id: String; + type: "ServerAddBan"; + user_id: number; + [k: string]: unknown; + } + | { + by: String; + ip: String; + network_id: String; + type: "ServerRemoveBan"; + [k: string]: unknown; + } + | { + address: String; + bot: number; + index: number; + name: String; + network_id: String; + type: "PlayerConnect"; + user_id: number; + [k: string]: unknown; + } + | { + bot: number; + index: number; + name: String; + network_id: String; + type: "PlayerConnectClient"; + user_id: number; + [k: string]: unknown; + } + | { + bot: boolean; + index: number; + name: String; + network_id: String; + type: "PlayerInfo"; + user_id: number; + [k: string]: unknown; + } + | { + bot: number; + name: String; + network_id: String; + reason: String; + type: "PlayerDisconnect"; + user_id: number; + [k: string]: unknown; + } + | { + type: "PlayerActivate"; + user_id: number; + [k: string]: unknown; + } + | { + text: String; + type: "PlayerSay"; + user_id: number; + [k: string]: unknown; + } + | { + message: String; + type: "ClientDisconnect"; + [k: string]: unknown; + } + | { + address: String; + ip: number; + port: number; + source: String; + type: "ClientBeginConnect"; + [k: string]: unknown; + } + | { + address: String; + ip: number; + port: number; + type: "ClientConnected"; + [k: string]: unknown; + } + | { + address: String; + ip: number; + port: number; + type: "ClientFullConnect"; + [k: string]: unknown; + } + | { + type: "HostQuit"; + [k: string]: unknown; + } + | { + team_id: number; + team_name: String; + type: "TeamInfo"; + [k: string]: unknown; + } + | { + score: number; + team_id: number; + type: "TeamScore"; + [k: string]: unknown; + } + | { + additional_flags: number; + player: number; + sound: String; + team: number; + type: "TeamPlayBroadcastAudio"; + [k: string]: unknown; + } + | { + auto_team: boolean; + disconnect: boolean; + name: String; + old_team: number; + silent: boolean; + team: number; + type: "PlayerTeam"; + user_id: number; + [k: string]: unknown; + } + | { + class: String; + type: "PlayerClass"; + user_id: number; + [k: string]: unknown; + } + | { + assister: number; + assister_fallback: String; + attacker: number; + crit_type: number; + custom_kill: number; + damage_bits: number; + death_flags: number; + duck_streak_assist: number; + duck_streak_total: number; + duck_streak_victim: number; + ducks_streaked: number; + inflictor_ent_index: number; + kill_streak_assist: number; + kill_streak_total: number; + kill_streak_victim: number; + kill_streak_wep: number; + player_penetrate_count: number; + rocket_jump: boolean; + silent_kill: boolean; + stun_flags: number; + type: "PlayerDeath"; + user_id: number; + victim_ent_index: number; + weapon: String; + weapon_def_index: number; + weapon_id: number; + weapon_log_class_name: String; + [k: string]: unknown; + } + | { + all_see_crit: boolean; + attacker: number; + bonus_effect: number; + crit: boolean; + custom: number; + damage_amount: number; + health: number; + mini_crit: boolean; + show_disguised_crit: boolean; + type: "PlayerHurt"; + user_id: number; + weapon_id: number; + [k: string]: unknown; + } + | { + team_only: boolean; + text: String; + type: "PlayerChat"; + user_id: number; + [k: string]: unknown; + } + | { + deaths: number; + kills: number; + score: number; + type: "PlayerScore"; + user_id: number; + [k: string]: unknown; + } + | { + class: number; + team: number; + type: "PlayerSpawn"; + user_id: number; + [k: string]: unknown; + } + | { + mode: number; + type: "PlayerShoot"; + user_id: number; + weapon: number; + [k: string]: unknown; + } + | { + entity: number; + type: "PlayerUse"; + user_id: number; + [k: string]: unknown; + } + | { + new_name: String; + old_name: String; + type: "PlayerChangeName"; + user_id: number; + [k: string]: unknown; + } + | { + hint_message: String; + type: "PlayerHintMessage"; + [k: string]: unknown; + } + | { + ent_index: number; + type: "BasePlayerTeleported"; + [k: string]: unknown; + } + | { + type: "GameInit"; + [k: string]: unknown; + } + | { + map_name: String; + type: "GameNewMap"; + [k: string]: unknown; + } + | { + frag_limit: number; + objective: String; + rounds_limit: number; + time_limit: number; + type: "GameStart"; + [k: string]: unknown; + } + | { + type: "GameEnd"; + winner: number; + [k: string]: unknown; + } + | { + frag_limit: number; + objective: String; + time_limit: number; + type: "RoundStart"; + [k: string]: unknown; + } + | { + message: String; + reason: number; + type: "RoundEnd"; + winner: number; + [k: string]: unknown; + } + | { + target: number; + text: String; + type: "GameMessage"; + [k: string]: unknown; + } + | { + ent_index: number; + material: number; + type: "BreakBreakable"; + user_id: number; + [k: string]: unknown; + } + | { + ent_index: number; + type: "BreakProp"; + user_id: number; + [k: string]: unknown; + } + | { + damage_bits: number; + ent_index_attacker: number; + ent_index_inflictor: number; + ent_index_killed: number; + type: "EntityKilled"; + [k: string]: unknown; + } + | { + num_advanced: number; + num_bronze: number; + num_gold: number; + num_silver: number; + type: "BonusUpdated"; + [k: string]: unknown; + } + | { + achievement_name: String; + cur_val: number; + max_val: number; + type: "AchievementEvent"; + [k: string]: unknown; + } + | { + achievement_id: number; + cur_val: number; + max_val: number; + type: "AchievementIncrement"; + [k: string]: unknown; + } + | { + ent_index: number; + type: "PhysgunPickup"; + [k: string]: unknown; + } + | { + ent_index: number; + type: "FlareIgniteNpc"; + [k: string]: unknown; + } + | { + type: "HelicopterGrenadePuntMiss"; + [k: string]: unknown; + } + | { + type: "UserDataDownloaded"; + [k: string]: unknown; + } + | { + ent_index: number; + type: "RagdollDissolved"; + [k: string]: unknown; + } + | { + new_mode: number; + obs_target: number; + old_mode: number; + type: "HLTVChangedMode"; + [k: string]: unknown; + } + | { + mode: number; + obs_target: number; + old_target: number; + type: "HLTVChangedTarget"; + [k: string]: unknown; + } + | { + type: "VoteEnded"; + [k: string]: unknown; + } + | { + initiator: number; + issue: String; + param_1: String; + team: number; + type: "VoteStarted"; + voteidx: number; + [k: string]: unknown; + } + | { + potential_votes: number; + type: "VoteChanged"; + vote_option_1: number; + vote_option_2: number; + vote_option_3: number; + vote_option_4: number; + vote_option_5: number; + voteidx: number; + [k: string]: unknown; + } + | { + details: String; + param_1: String; + team: number; + type: "VotePassed"; + voteidx: number; + [k: string]: unknown; + } + | { + team: number; + type: "VoteFailed"; + voteidx: number; + [k: string]: unknown; + } + | { + entity_id: number; + team: number; + type: "VoteCast"; + vote_option: number; + voteidx: number; + [k: string]: unknown; + } + | { + count: number; + option_1: String; + option_2: String; + option_3: String; + option_4: String; + option_5: String; + type: "VoteOptions"; + voteidx: number; + [k: string]: unknown; + } + | { + type: "ReplaySaved"; + [k: string]: unknown; + } + | { + type: "EnteredPerformanceMode"; + [k: string]: unknown; + } + | { + type: "BrowseReplays"; + [k: string]: unknown; + } + | { + favorited: number; + likes: number; + type: "ReplayYoutubeStats"; + views: number; + [k: string]: unknown; + } + | { + type: "InventoryUpdated"; + [k: string]: unknown; + } + | { + type: "CartUpdated"; + [k: string]: unknown; + } + | { + type: "StorePriceSheetUpdated"; + [k: string]: unknown; + } + | { + type: "EconInventoryConnected"; + [k: string]: unknown; + } + | { + type: "ItemSchemaInitialized"; + [k: string]: unknown; + } + | { + type: "GcNewSession"; + [k: string]: unknown; + } + | { + type: "GcLostSession"; + [k: string]: unknown; + } + | { + player: number; + type: "IntroFinish"; + [k: string]: unknown; + } + | { + player: number; + type: "IntroNextCamera"; + [k: string]: unknown; + } + | { + class: number; + type: "PlayerChangeClass"; + user_id: number; + [k: string]: unknown; + } + | { + seconds: number; + type: "TfMapTimeRemaining"; + [k: string]: unknown; + } + | { + reason: String; + type: "TfGameOver"; + [k: string]: unknown; + } + | { + capping_team: number; + capping_team_score: number; + type: "CtfFlagCaptured"; + [k: string]: unknown; + } + | { + type: "ControlPointInitialized"; + [k: string]: unknown; + } + | { + index: number; + type: "ControlPointUpdateImages"; + [k: string]: unknown; + } + | { + index: number; + type: "ControlPointUpdateLayout"; + [k: string]: unknown; + } + | { + index: number; + type: "ControlPointUpdateCapping"; + [k: string]: unknown; + } + | { + index: number; + type: "ControlPointUpdateOwner"; + [k: string]: unknown; + } + | { + area: number; + player: number; + type: "ControlPointStartTouch"; + [k: string]: unknown; + } + | { + area: number; + player: number; + type: "ControlPointEndTouch"; + [k: string]: unknown; + } + | { + player: number; + type: "ControlPointPulseElement"; + [k: string]: unknown; + } + | { + int_data: number; + player: number; + type: "ControlPointFakeCapture"; + [k: string]: unknown; + } + | { + int_data: number; + player: number; + type: "ControlPointFakeCaptureMultiplier"; + [k: string]: unknown; + } + | { + round: String; + type: "TeamPlayRoundSelected"; + [k: string]: unknown; + } + | { + full_reset: boolean; + type: "TeamPlayRoundStart"; + [k: string]: unknown; + } + | { + type: "TeamPlayRoundActive"; + [k: string]: unknown; + } + | { + type: "TeamPlayWaitingBegins"; + [k: string]: unknown; + } + | { + type: "TeamPlayWaitingEnds"; + [k: string]: unknown; + } + | { + type: "TeamPlayWaitingAboutToEnd"; + [k: string]: unknown; + } + | { + type: "TeamPlayRestartRound"; + [k: string]: unknown; + } + | { + type: "TeamPlayReadyRestart"; + [k: string]: unknown; + } + | { + seconds: number; + type: "TeamPlayRoundRestartSeconds"; + [k: string]: unknown; + } + | { + team: number; + type: "TeamPlayTeamReady"; + [k: string]: unknown; + } + | { + flag_cap_limit: number; + full_round: number; + losing_team_num_caps: number; + round_time: number; + team: number; + type: "TeamPlayRoundWin"; + was_sudden_death: number; + win_reason: number; + [k: string]: unknown; + } + | { + type: "TeamPlayUpdateTimer"; + [k: string]: unknown; + } + | { + reason: number; + type: "TeamPlayRoundStalemate"; + [k: string]: unknown; + } + | { + type: "TeamPlayOvertimeBegin"; + [k: string]: unknown; + } + | { + type: "TeamPlayOvertimeEnd"; + [k: string]: unknown; + } + | { + type: "TeamPlaySuddenDeathBegin"; + [k: string]: unknown; + } + | { + type: "TeamPlaySuddenDeathEnd"; + [k: string]: unknown; + } + | { + reason: String; + type: "TeamPlayGameOver"; + [k: string]: unknown; + } + | { + seconds: number; + type: "TeamPlayMapTimeRemaining"; + [k: string]: unknown; + } + | { + time_remaining: number; + type: "TeamPlayTimerFlash"; + [k: string]: unknown; + } + | { + seconds_added: number; + timer: number; + type: "TeamPlayTimerTimeAdded"; + [k: string]: unknown; + } + | { + cap_team: number; + cap_time: number; + cappers: String; + cp: number; + cp_name: String; + team: number; + type: "TeamPlayPointStartCapture"; + [k: string]: unknown; + } + | { + cappers: String; + cp: number; + cp_name: String; + team: number; + type: "TeamPlayPointCaptured"; + [k: string]: unknown; + } + | { + cp: number; + cp_name: String; + team: number; + type: "TeamPlayPointLocked"; + [k: string]: unknown; + } + | { + cp: number; + cp_name: String; + team: number; + type: "TeamPlayPointUnlocked"; + [k: string]: unknown; + } + | { + cp: number; + cp_name: String; + time_remaining: number; + type: "TeamPlayCaptureBroken"; + [k: string]: unknown; + } + | { + blocker: number; + cp: number; + cp_name: String; + type: "TeamPlayCaptureBlocked"; + victim: number; + [k: string]: unknown; + } + | { + carrier: number; + event_type: number; + home: number; + player: number; + team: number; + type: "TeamPlayFlagEvent"; + [k: string]: unknown; + } + | { + blue_score: number; + blue_score_prev: number; + cappers: String; + flag_cap_limit: number; + game_over: number; + kill_stream_player_1: number; + kill_stream_player_1_count: number; + panel_style: number; + player_1: number; + player_1_points: number; + player_2: number; + player_2_points: number; + player_3: number; + player_3_points: number; + red_score: number; + red_score_prev: number; + round_complete: number; + rounds_remaining: number; + type: "TeamPlayWinPanel"; + win_reason: number; + winning_team: number; + [k: string]: unknown; + } + | { + player: number; + team: number; + type: "TeamPlayTeamBalancedPlayer"; + [k: string]: unknown; + } + | { + type: "TeamPlaySetupFinished"; + [k: string]: unknown; + } + | { + alert_type: number; + type: "TeamPlayAlert"; + [k: string]: unknown; + } + | { + map: String; + next_map: String; + text: String; + type: "TrainingComplete"; + [k: string]: unknown; + } + | { + killer: number; + type: "ShowFreezePanel"; + [k: string]: unknown; + } + | { + type: "HideFreezePanel"; + [k: string]: unknown; + } + | { + type: "FreezeCamStarted"; + [k: string]: unknown; + } + | { + type: "LocalPlayerChangeTeam"; + [k: string]: unknown; + } + | { + score: number; + type: "LocalPlayerScoreChanged"; + [k: string]: unknown; + } + | { + type: "LocalPlayerChangeClass"; + [k: string]: unknown; + } + | { + type: "LocalPlayerRespawn"; + [k: string]: unknown; + } + | { + building_type: number; + object_mode: number; + remove: number; + type: "BuildingInfoChanged"; + [k: string]: unknown; + } + | { + disguised: boolean; + type: "LocalPlayerChangeDisguise"; + [k: string]: unknown; + } + | { + new_value: number; + old_value: number; + type: "PlayerAccountChanged"; + [k: string]: unknown; + } + | { + type: "SpyPdaReset"; + [k: string]: unknown; + } + | { + ent_index: number; + type: "FlagStatusUpdate"; + user_id: number; + [k: string]: unknown; + } + | { + force_upload: boolean; + type: "PlayerStatsUpdated"; + [k: string]: unknown; + } + | { + type: "PlayingCommentary"; + [k: string]: unknown; + } + | { + target_id: number; + type: "PlayerChargeDeployed"; + user_id: number; + [k: string]: unknown; + } + | { + index: number; + object: number; + type: "PlayerBuiltObject"; + user_id: number; + [k: string]: unknown; + } + | { + index: number; + is_builder: boolean; + object: number; + type: "PlayerUpgradedObject"; + user_id: number; + [k: string]: unknown; + } + | { + index: number; + object: number; + type: "PlayerCarryObject"; + user_id: number; + [k: string]: unknown; + } + | { + index: number; + object: number; + type: "PlayerDropObject"; + user_id: number; + [k: string]: unknown; + } + | { + index: number; + object_type: number; + type: "ObjectRemoved"; + user_id: number; + [k: string]: unknown; + } + | { + assister: number; + attacker: number; + index: number; + object_type: number; + type: "ObjectDestroyed"; + user_id: number; + was_building: boolean; + weapon: String; + weapon_id: number; + [k: string]: unknown; + } + | { + index: number; + object_type: number; + type: "ObjectDetonated"; + user_id: number; + [k: string]: unknown; + } + | { + achievement: number; + player: number; + type: "AchievementEarned"; + [k: string]: unknown; + } + | { + type: "SpecTargetUpdated"; + [k: string]: unknown; + } + | { + name_change: boolean; + new_name: String; + ready_state: number; + type: "TournamentStateUpdate"; + user_id: number; + [k: string]: unknown; + } + | { + type: "TournamentEnableCountdown"; + [k: string]: unknown; + } + | { + type: "PlayerCalledForMedic"; + user_id: number; + [k: string]: unknown; + } + | { + type: "PlayerAskedForBall"; + user_id: number; + [k: string]: unknown; + } + | { + type: "LocalPlayerBecameObserver"; + [k: string]: unknown; + } + | { + medic_ent_index: number; + pyro_ent_index: number; + type: "PlayerIgnitedInv"; + victim_ent_index: number; + [k: string]: unknown; + } + | { + pyro_ent_index: number; + type: "PlayerIgnited"; + victim_ent_index: number; + weapon_id: number; + [k: string]: unknown; + } + | { + healer: number; + item_definition_index: number; + type: "PlayerExtinguished"; + victim: number; + [k: string]: unknown; + } + | { + builder_id: number; + dist: number; + type: "PlayerTeleported"; + user_id: number; + [k: string]: unknown; + } + | { + type: "PlayerHealedMedicCall"; + user_id: number; + [k: string]: unknown; + } + | { + type: "LocalPlayerChargeReady"; + [k: string]: unknown; + } + | { + type: "LocalPlayerWindDown"; + [k: string]: unknown; + } + | { + medic_user_id: number; + type: "PlayerInvulned"; + user_id: number; + [k: string]: unknown; + } + | { + players: number; + speed: number; + team: number; + type: "EscortSpeed"; + [k: string]: unknown; + } + | { + progress: number; + reset: boolean; + team: number; + type: "EscortProgress"; + [k: string]: unknown; + } + | { + recede_time: number; + team: number; + type: "EscortRecede"; + [k: string]: unknown; + } + | { + type: "GameUIActivated"; + [k: string]: unknown; + } + | { + type: "GameUIHidden"; + [k: string]: unknown; + } + | { + player: number; + points: number; + type: "PlayerEscortScore"; + [k: string]: unknown; + } + | { + amount: number; + ent_index: number; + type: "PlayerHealOnHit"; + weapon_def_index: number; + [k: string]: unknown; + } + | { + owner: number; + target: number; + type: "PlayerStealSandvich"; + [k: string]: unknown; + } + | { + show: boolean; + type: "ShowClassLayout"; + [k: string]: unknown; + } + | { + show: boolean; + type: "ShowVsPanel"; + [k: string]: unknown; + } + | { + amount: number; + kind: number; + type: "PlayerDamaged"; + [k: string]: unknown; + } + | { + message: number; + player: number; + type: "ArenaPlayerNotification"; + [k: string]: unknown; + } + | { + streak: number; + team: number; + type: "ArenaMatchMaxStreak"; + [k: string]: unknown; + } + | { + type: "ArenaRoundStart"; + [k: string]: unknown; + } + | { + blue_score: number; + blue_score_prev: number; + cappers: String; + flag_cap_limit: number; + panel_style: number; + player_1: number; + player_1_damage: number; + player_1_healing: number; + player_1_kills: number; + player_1_lifetime: number; + player_2: number; + player_2_damage: number; + player_2_healing: number; + player_2_kills: number; + player_2_lifetime: number; + player_3: number; + player_3_damage: number; + player_3_healing: number; + player_3_kills: number; + player_3_lifetime: number; + player_4: number; + player_4_damage: number; + player_4_healing: number; + player_4_kills: number; + player_4_lifetime: number; + player_5: number; + player_5_damage: number; + player_5_healing: number; + player_5_kills: number; + player_5_lifetime: number; + player_6: number; + player_6_damage: number; + player_6_healing: number; + player_6_kills: number; + player_6_lifetime: number; + red_score: number; + red_score_prev: number; + round_complete: number; + type: "ArenaWinPanel"; + win_reason: number; + winning_team: number; + [k: string]: unknown; + } + | { + panel_style: number; + type: "PveWinPanel"; + win_reason: number; + winning_team: number; + [k: string]: unknown; + } + | { + player: number; + type: "AirDash"; + [k: string]: unknown; + } + | { + player: number; + type: "Landed"; + [k: string]: unknown; + } + | { + damage: number; + type: "PlayerDamageDodged"; + [k: string]: unknown; + } + | { + big_stun: boolean; + stunner: number; + type: "PlayerStunned"; + victim: number; + victim_capping: boolean; + [k: string]: unknown; + } + | { + scout_id: number; + target_id: number; + type: "ScoutGrandSlam"; + [k: string]: unknown; + } + | { + target_index: number; + type: "ScoutSlamdollLanded"; + x: number; + y: number; + z: number; + [k: string]: unknown; + } + | { + attached_entity: number; + bone_angles_x: number; + bone_angles_y: number; + bone_angles_z: number; + bone_index_attached: number; + bone_position_x: number; + bone_position_y: number; + bone_position_z: number; + is_crit: boolean; + projectile_type: number; + shooter: number; + type: "ArrowImpact"; + [k: string]: unknown; + } + | { + thrower_ent_index: number; + type: "PlayerJarated"; + victim_ent_index: number; + [k: string]: unknown; + } + | { + thrower_ent_index: number; + type: "PlayerJaratedFade"; + victim_ent_index: number; + [k: string]: unknown; + } + | { + attacker_ent_index: number; + blocker_ent_index: number; + type: "PlayerShieldBlocked"; + [k: string]: unknown; + } + | { + pinned: number; + type: "PlayerPinned"; + [k: string]: unknown; + } + | { + medic: number; + type: "PlayerHealedByMedic"; + [k: string]: unknown; + } + | { + object: number; + owner_id: number; + sapper_id: number; + type: "PlayerSappedObject"; + user_id: number; + [k: string]: unknown; + } + | { + is_strange: number; + is_unusual: number; + item_def: number; + method: number; + player: number; + quality: number; + type: "ItemFound"; + wear: number; + [k: string]: unknown; + } + | { + follow_ent_index: number; + id: number; + lifetime: number; + play_sound: String; + show_distance: boolean; + show_effect: boolean; + text: String; + type: "ShowAnnotation"; + visibility_bit_field: number; + world_normal_x: number; + world_normal_y: number; + world_normal_z: number; + world_pos_x: number; + world_pos_y: number; + world_pos_z: number; + [k: string]: unknown; + } + | { + id: number; + type: "HideAnnotation"; + [k: string]: unknown; + } + | { + type: "PostInventoryApplication"; + user_id: number; + [k: string]: unknown; + } + | { + index: number; + time: number; + type: "ControlPointUnlockUpdated"; + [k: string]: unknown; + } + | { + buff_owner: number; + buff_type: number; + type: "DeployBuffBanner"; + [k: string]: unknown; + } + | { + buff_owner: number; + buff_type: number; + type: "PlayerBuff"; + user_id: number; + [k: string]: unknown; + } + | { + attacker: number; + charged: boolean; + healing: number; + type: "MedicDeath"; + user_id: number; + [k: string]: unknown; + } + | { + type: "OvertimeNag"; + [k: string]: unknown; + } + | { + type: "TeamsChanged"; + [k: string]: unknown; + } + | { + type: "HalloweenPumpkinGrab"; + user_id: number; + [k: string]: unknown; + } + | { + play_sound: boolean; + type: "RocketJump"; + user_id: number; + [k: string]: unknown; + } + | { + type: "RocketJumpLanded"; + user_id: number; + [k: string]: unknown; + } + | { + play_sound: boolean; + type: "StickyJump"; + user_id: number; + [k: string]: unknown; + } + | { + type: "StickyJumpLanded"; + user_id: number; + [k: string]: unknown; + } + | { + play_sound: boolean; + type: "RocketPackLaunch"; + user_id: number; + [k: string]: unknown; + } + | { + type: "RocketPackLanded"; + user_id: number; + [k: string]: unknown; + } + | { + medic: number; + type: "MedicDefended"; + user_id: number; + [k: string]: unknown; + } + | { + amount: number; + type: "LocalPlayerHealed"; + [k: string]: unknown; + } + | { + type: "PlayerDestroyedPipeBomb"; + user_id: number; + [k: string]: unknown; + } + | { + object_ent_index: number; + owner_id: number; + type: "ObjectDeflected"; + user_id: number; + weapon_id: number; + [k: string]: unknown; + } + | { + player: number; + type: "PlayerMvp"; + [k: string]: unknown; + } + | { + type: "RaidSpawnMob"; + [k: string]: unknown; + } + | { + type: "RaidSpawnSquad"; + [k: string]: unknown; + } + | { + area: number; + blocked: boolean; + type: "NavBlocked"; + [k: string]: unknown; + } + | { + index: number; + type: "PathTrackPassed"; + [k: string]: unknown; + } + | { + count: number; + index: number; + type: "NumCappersChanged"; + [k: string]: unknown; + } + | { + type: "PlayerRegenerate"; + [k: string]: unknown; + } + | { + index: number; + object: number; + type: "UpdateStatusItem"; + [k: string]: unknown; + } + | { + type: "StatsResetRound"; + [k: string]: unknown; + } + | { + type: "ScoreStatsAccumulatedUpdate"; + [k: string]: unknown; + } + | { + type: "ScoreStatsAccumulatedReset"; + [k: string]: unknown; + } + | { + achievement: number; + type: "AchievementEarnedLocal"; + [k: string]: unknown; + } + | { + amount: number; + healer: number; + patient: number; + type: "PlayerHealed"; + [k: string]: unknown; + } + | { + amount: number; + building: number; + healer: number; + type: "BuildingHealed"; + [k: string]: unknown; + } + | { + item: String; + type: "ItemPickup"; + user_id: number; + [k: string]: unknown; + } + | { + initiator: number; + initiator_score: number; + killer: number; + score_type: number; + target: number; + target_score: number; + type: "DuelStatus"; + [k: string]: unknown; + } + | { + assister: number; + assister_fallback: String; + attacker: number; + custom_kill: number; + damage_bits: number; + death_flags: number; + inflictor_ent_index: number; + silent_kill: boolean; + stun_flags: number; + type: "FishNotice"; + user_id: number; + victim_ent_index: number; + weapon: String; + weapon_id: number; + weapon_log_class_name: String; + [k: string]: unknown; + } + | { + assister: number; + assister_fallback: String; + attacker: number; + custom_kill: number; + damage_bits: number; + death_flags: number; + inflictor_ent_index: number; + silent_kill: boolean; + stun_flags: number; + type: "FishNoticeArm"; + user_id: number; + victim_ent_index: number; + weapon: String; + weapon_id: number; + weapon_log_class_name: String; + [k: string]: unknown; + } + | { + assister: number; + assister_fallback: String; + attacker: number; + custom_kill: number; + damage_bits: number; + death_flags: number; + inflictor_ent_index: number; + silent_kill: boolean; + stun_flags: number; + type: "SlapNotice"; + user_id: number; + victim_ent_index: number; + weapon: String; + weapon_id: number; + weapon_log_class_name: String; + [k: string]: unknown; + } + | { + assister: number; + assister_fallback: String; + attacker: number; + custom_kill: number; + damage_bits: number; + death_flags: number; + inflictor_ent_index: number; + silent_kill: boolean; + stun_flags: number; + total_hits: number; + type: "ThrowableHit"; + user_id: number; + victim_ent_index: number; + weapon: String; + weapon_id: number; + weapon_log_class_name: String; + [k: string]: unknown; + } + | { + type: "PumpkinLordSummoned"; + [k: string]: unknown; + } + | { + type: "PumpkinLordKilled"; + [k: string]: unknown; + } + | { + level: number; + type: "MerasmusSummoned"; + [k: string]: unknown; + } + | { + level: number; + type: "MerasmusKilled"; + [k: string]: unknown; + } + | { + level: number; + time_remaining: number; + type: "MerasmusEscapeWarning"; + [k: string]: unknown; + } + | { + level: number; + type: "MerasmusEscaped"; + [k: string]: unknown; + } + | { + level: number; + type: "EyeballBossSummoned"; + [k: string]: unknown; + } + | { + level: number; + player_ent_index: number; + type: "EyeballBossStunned"; + [k: string]: unknown; + } + | { + level: number; + type: "EyeballBossKilled"; + [k: string]: unknown; + } + | { + level: number; + player_ent_index: number; + type: "EyeballBossKiller"; + [k: string]: unknown; + } + | { + level: number; + time_remaining: number; + type: "EyeballBossEscapeImminent"; + [k: string]: unknown; + } + | { + level: number; + type: "EyeballBossEscaped"; + [k: string]: unknown; + } + | { + attacker_player: number; + boss: number; + crit: boolean; + damage_amount: number; + ent_index: number; + health: number; + type: "NpcHurt"; + weapon_id: number; + [k: string]: unknown; + } + | { + index: number; + time: number; + type: "ControlPointTimerUpdated"; + [k: string]: unknown; + } + | { + ent_index: number; + type: "PlayerHighFiveStart"; + [k: string]: unknown; + } + | { + ent_index: number; + type: "PlayerHighFiveCancel"; + [k: string]: unknown; + } + | { + initiator_ent_index: number; + partner_ent_index: number; + type: "PlayerHighFiveSuccess"; + [k: string]: unknown; + } + | { + player_ent_index: number; + points: number; + source_ent_index: number; + type: "PlayerBonusPoints"; + [k: string]: unknown; + } + | { + type: "PlayerUpgraded"; + [k: string]: unknown; + } + | { + cost: number; + player: number; + type: "PlayerBuyback"; + [k: string]: unknown; + } + | { + kind: number; + player: number; + time: number; + type: "PlayerUsedPowerUpBottle"; + [k: string]: unknown; + } + | { + type: "ChristmasGiftGrab"; + user_id: number; + [k: string]: unknown; + } + | { + attacker: number; + type: "PlayerKilledAchievementZone"; + victim: number; + zone_id: number; + [k: string]: unknown; + } + | { + type: "PartyUpdated"; + [k: string]: unknown; + } + | { + type: "PartyPrefChanged"; + [k: string]: unknown; + } + | { + type: "PartyCriteriaChanged"; + [k: string]: unknown; + } + | { + type: "PartyInvitesChanged"; + [k: string]: unknown; + } + | { + match_group: number; + type: "PartyQueueStateChanged"; + [k: string]: unknown; + } + | { + kind: number; + steam_id: String; + text: String; + type: "PartyChat"; + [k: string]: unknown; + } + | { + steam_id: String; + type: "PartyMemberJoin"; + [k: string]: unknown; + } + | { + steam_id: String; + type: "PartyMemberLeave"; + [k: string]: unknown; + } + | { + type: "MatchInvitesUpdated"; + [k: string]: unknown; + } + | { + type: "LobbyUpdated"; + [k: string]: unknown; + } + | { + class: number; + count: number; + type: "MvmMissionUpdate"; + [k: string]: unknown; + } + | { + type: "RecalculateHolidays"; + [k: string]: unknown; + } + | { + currency: number; + type: "PlayerCurrencyChanged"; + [k: string]: unknown; + } + | { + team: number; + type: "DoomsdayRocketOpen"; + [k: string]: unknown; + } + | { + player: number; + type: "RemoveNemesisRelationships"; + [k: string]: unknown; + } + | { + type: "MvmCreditBonusWave"; + [k: string]: unknown; + } + | { + type: "MvmCreditBonusAll"; + [k: string]: unknown; + } + | { + type: "MvmCreditBonusAllAdvanced"; + [k: string]: unknown; + } + | { + player: number; + type: "MvmQuickSentryUpgrade"; + [k: string]: unknown; + } + | { + type: "MvmTankDestroyedByPlayers"; + [k: string]: unknown; + } + | { + player: number; + type: "MvmKillRobotDeliveringBomb"; + [k: string]: unknown; + } + | { + currency: number; + player: number; + type: "MvmPickupCurrency"; + [k: string]: unknown; + } + | { + level: number; + type: "MvmBombCarrierKilled"; + [k: string]: unknown; + } + | { + det_x: number; + det_y: number; + det_z: number; + player: number; + type: "MvmSentryBusterDetonate"; + [k: string]: unknown; + } + | { + player: number; + type: "MvmScoutMarkedForDeath"; + [k: string]: unknown; + } + | { + player: number; + type: "MvmMedicPowerUpShared"; + [k: string]: unknown; + } + | { + advanced: number; + max_waves: number; + type: "MvmBeginWave"; + wave_index: number; + [k: string]: unknown; + } + | { + advanced: boolean; + type: "MvmWaveComplete"; + [k: string]: unknown; + } + | { + mission: String; + type: "MvmMissionComplete"; + [k: string]: unknown; + } + | { + player: number; + type: "MvmBombResetByPlayer"; + [k: string]: unknown; + } + | { + type: "MvmBombAlarmTriggered"; + [k: string]: unknown; + } + | { + player: number; + type: "MvmBombDeployResetByPlayer"; + [k: string]: unknown; + } + | { + type: "MvmWaveFailed"; + [k: string]: unknown; + } + | { + type: "MvmResetStats"; + [k: string]: unknown; + } + | { + ent_index: number; + type: "DamageResisted"; + [k: string]: unknown; + } + | { + ent_index: number; + marker_ent_index: number; + type: "RevivePlayerNotify"; + [k: string]: unknown; + } + | { + ent_index: number; + type: "RevivePlayerStopped"; + [k: string]: unknown; + } + | { + ent_index: number; + type: "RevivePlayerComplete"; + [k: string]: unknown; + } + | { + type: "PlayerTurnedToGhost"; + user_id: number; + [k: string]: unknown; + } + | { + damage: number; + type: "MedigunShieldBlockedDamage"; + user_id: number; + [k: string]: unknown; + } + | { + index: number; + type: "MvmAdvWaveCompleteNoGates"; + [k: string]: unknown; + } + | { + currency: number; + type: "MvmSniperHeadshotCurrency"; + user_id: number; + [k: string]: unknown; + } + | { + type: "MvmMannhattanPit"; + [k: string]: unknown; + } + | { + type: "FlagCarriedInDetectionZone"; + [k: string]: unknown; + } + | { + type: "MvmAdvWaveKilledStunRadio"; + [k: string]: unknown; + } + | { + attacker: number; + type: "PlayerDirectHitStun"; + victim: number; + [k: string]: unknown; + } + | { + sentry_buster: number; + type: "MvmSentryBusterKilled"; + [k: string]: unknown; + } + | { + path: String; + type: "UpgradesFileChanged"; + [k: string]: unknown; + } + | { + method: number; + points: number; + team: number; + type: "RdTeamPointsChanged"; + [k: string]: unknown; + } + | { + type: "RdRulesStateChanged"; + [k: string]: unknown; + } + | { + attacker: number; + custom_kill: number; + damage_bits: number; + inflictor_ent_index: number; + type: "RdRobotKilled"; + user_id: number; + victim_ent_index: number; + weapon: String; + weapon_id: number; + weapon_log_class_name: String; + [k: string]: unknown; + } + | { + ent_index: number; + impulse_x: number; + impulse_y: number; + impulse_z: number; + type: "RdRobotImpact"; + [k: string]: unknown; + } + | { + time: number; + type: "TeamPlayPreRoundTimeLeft"; + [k: string]: unknown; + } + | { + index: number; + type: "ParachuteDeploy"; + [k: string]: unknown; + } + | { + index: number; + type: "ParachuteHolster"; + [k: string]: unknown; + } + | { + index: number; + type: "KillRefillsMeter"; + [k: string]: unknown; + } + | { + loser: number; + loser_rps: number; + type: "RpsTauntEvent"; + winner: number; + winner_rps: number; + [k: string]: unknown; + } + | { + index: number; + type: "CongaKill"; + [k: string]: unknown; + } + | { + index: number; + type: "PlayerInitialSpawn"; + [k: string]: unknown; + } + | { + type: "CompetitiveVictory"; + [k: string]: unknown; + } + | { + damage_rank: number; + healing_rank: number; + index: number; + kills_rank: number; + score_rank: number; + support_rank: number; + type: "CompetitiveStatsUpdate"; + [k: string]: unknown; + } + | { + kind: number; + team: number; + type: "MiniGameWin"; + [k: string]: unknown; + } + | { + index: number; + type: "SentryOnGoActive"; + [k: string]: unknown; + } + | { + level: number; + type: "DuckXpLevelUp"; + [k: string]: unknown; + } + | { + type: "QuestLogOpened"; + [k: string]: unknown; + } + | { + type: "SchemaUpdated"; + [k: string]: unknown; + } + | { + type: "LocalPlayerPickupWeapon"; + [k: string]: unknown; + } + | { + amount: number; + method: number; + player: number; + type: "RdPlayerScorePoints"; + [k: string]: unknown; + } + | { + player: number; + type: "DemomanDetStickies"; + [k: string]: unknown; + } + | { + quest_item_id_hi: number; + quest_item_id_low: number; + quest_objective_id: number; + scorer_user_id: number; + type: "QuestObjectiveCompleted"; + [k: string]: unknown; + } + | { + delta: number; + player: number; + type: "PlayerScoreChanged"; + [k: string]: unknown; + } + | { + assister: number; + cp: number; + killer: number; + type: "KilledCappingPlayer"; + victim: number; + [k: string]: unknown; + } + | { + killer: number; + type: "EnvironmentalDeath"; + victim: number; + [k: string]: unknown; + } + | { + attacker: number; + type: "ProjectileDirectHit"; + victim: number; + weapon_def_index: number; + [k: string]: unknown; + } + | { + owner: number; + type: "PassGet"; + [k: string]: unknown; + } + | { + assister: number; + points: number; + scorer: number; + type: "PassScore"; + [k: string]: unknown; + } + | { + attacker: number; + owner: number; + type: "PassFree"; + [k: string]: unknown; + } + | { + catcher: number; + dist: number; + duration: number; + passer: number; + type: "PassPassCaught"; + [k: string]: unknown; + } + | { + attacker: number; + type: "PassBallStolen"; + victim: number; + [k: string]: unknown; + } + | { + blocker: number; + owner: number; + type: "PassBallBlocked"; + [k: string]: unknown; + } + | { + amount: number; + condition: number; + preventor: number; + type: "DamagePrevented"; + victim: number; + [k: string]: unknown; + } + | { + boss: number; + killer: number; + type: "HalloweenBossKilled"; + [k: string]: unknown; + } + | { + player: number; + type: "EscapedLootIsland"; + [k: string]: unknown; + } + | { + player: number; + type: "TaggedPlayerAsIt"; + [k: string]: unknown; + } + | { + player: number; + type: "MerasmusStunned"; + [k: string]: unknown; + } + | { + player: number; + type: "MerasmusPropFound"; + [k: string]: unknown; + } + | { + player: number; + type: "HalloweenSkeletonKilled"; + [k: string]: unknown; + } + | { + player: number; + type: "SkeletonKilledQuest"; + [k: string]: unknown; + } + | { + player: number; + type: "SkeletonKingKilledQuest"; + [k: string]: unknown; + } + | { + player: number; + type: "EscapeHell"; + [k: string]: unknown; + } + | { + player: number; + type: "CrossSpectralBridge"; + [k: string]: unknown; + } + | { + game: number; + player: number; + type: "MiniGameWon"; + [k: string]: unknown; + } + | { + ghost: number; + reviver: number; + type: "RespawnGhost"; + [k: string]: unknown; + } + | { + killer: number; + type: "KillInHell"; + victim: number; + [k: string]: unknown; + } + | { + collector: number; + type: "HalloweenDuckCollected"; + [k: string]: unknown; + } + | { + player: number; + type: "SpecialScore"; + [k: string]: unknown; + } + | { + killer: number; + type: "TeamLeaderKilled"; + victim: number; + [k: string]: unknown; + } + | { + collecting_player: number; + intended_target: number; + soul_count: number; + type: "HalloweenSoulCollected"; + [k: string]: unknown; + } + | { + type: "RecalculateTruce"; + [k: string]: unknown; + } + | { + attacker: number; + spy: number; + type: "DeadRingerCheatDeath"; + [k: string]: unknown; + } + | { + amount: number; + healer: number; + target: number; + type: "CrossbowHeal"; + [k: string]: unknown; + } + | { + amount: number; + damaged: number; + item_definition_index: number; + mitigator: number; + type: "DamageMitigated"; + [k: string]: unknown; + } + | { + distance: number; + pusher: number; + type: "PayloadPushed"; + [k: string]: unknown; + } + | { + game_over: boolean; + type: "PlayerAbandonedMatch"; + [k: string]: unknown; + } + | { + line: number; + panel: number; + player: number; + type: "ClDrawline"; + x: number; + y: number; + [k: string]: unknown; + } + | { + time: number; + type: "RestartTimerTime"; + [k: string]: unknown; + } + | { + type: "WinLimitChanged"; + [k: string]: unknown; + } + | { + type: "WinPanelShowScores"; + [k: string]: unknown; + } + | { + type: "TopStreamsRequestFinished"; + [k: string]: unknown; + } + | { + type: "CompetitiveStateChanged"; + [k: string]: unknown; + } + | { + type: "GlobalWarDataUpdated"; + [k: string]: unknown; + } + | { + type: "StopWatchChanged"; + [k: string]: unknown; + } + | { + type: "DsStop"; + [k: string]: unknown; + } + | { + delay: number; + type: "DsScreenshot"; + [k: string]: unknown; + } + | { + type: "ShowMatchSummary"; + [k: string]: unknown; + } + | { + type: "ExperienceChanged"; + [k: string]: unknown; + } + | { + type: "BeginXpLerp"; + [k: string]: unknown; + } + | { + type: "MatchmakerStatsUpdated"; + [k: string]: unknown; + } + | { + success: boolean; + type: "RematchVotePeriodOver"; + [k: string]: unknown; + } + | { + type: "RematchFailedToCreate"; + [k: string]: unknown; + } + | { + type: "PlayerRematchChange"; + [k: string]: unknown; + } + | { + type: "PingUpdated"; + [k: string]: unknown; + } + | { + type: "MMStatsUpdated"; + [k: string]: unknown; + } + | { + map_index: number; + type: "PlayerNextMapVoteChange"; + vote: number; + [k: string]: unknown; + } + | { + type: "VoteMapsChanged"; + [k: string]: unknown; + } + | { + created: boolean; + definition_index: number; + deleted: boolean; + erase_history: boolean; + kind: number; + type: "ProtoDefChanged"; + [k: string]: unknown; + } + | { + dominated: number; + dominations: number; + dominator: number; + type: "PlayerDomination"; + [k: string]: unknown; + } + | { + pushed: number; + pusher: number; + type: "PlayerRocketPackPushed"; + [k: string]: unknown; + } + | { + msg: String; + request: number; + type: "QuestRequest"; + [k: string]: unknown; + } + | { + msg: String; + request: number; + success: boolean; + type: "QuestResponse"; + [k: string]: unknown; + } + | { + completed: boolean; + kind: number; + owner: number; + quest_definition_index: number; + scorer: number; + type: "QuestProgress"; + [k: string]: unknown; + } + | { + attacker: number; + num_direct_hit: number; + num_hit: number; + type: "ProjectileRemoved"; + weapon_def_index: number; + [k: string]: unknown; + } + | { + type: "QuestMapDataChanged"; + [k: string]: unknown; + } + | { + douser: number; + igniter: number; + type: "GasDousedPlayerIgnited"; + victim: number; + [k: string]: unknown; + } + | { + state: number; + type: "QuestTurnInState"; + [k: string]: unknown; + } + | { + type: "ItemsAcknowledged"; + [k: string]: unknown; + } + | { + blocker: number; + type: "CapperKilled"; + victim: number; + [k: string]: unknown; + } + | { + type: "MainMenuStabilized"; + [k: string]: unknown; + } + | { + type: "WorldStatusChanged"; + [k: string]: unknown; + } + | { + clients: number; + master: String; + proxies: number; + slots: number; + type: "HLTVStatus"; + [k: string]: unknown; + } + | { + index: number; + type: "HLTVCameraman"; + [k: string]: unknown; + } + | { + index: number; + rank: number; + target: number; + type: "HLTVRankCamera"; + [k: string]: unknown; + } + | { + index: number; + rank: number; + target: number; + type: "HLTVRankEntity"; + [k: string]: unknown; + } + | { + fov: number; + offset: number; + phi: number; + pos_x: number; + pos_y: number; + pos_z: number; + target: number; + theta: number; + type: "HLTVFixed"; + [k: string]: unknown; + } + | { + distance: number; + in_eye: number; + inertia: number; + phi: number; + target_1: number; + target_2: number; + theta: number; + type: "HLTVChase"; + [k: string]: unknown; + } + | { + text: String; + type: "HLTVMessage"; + [k: string]: unknown; + } + | { + text: String; + type: "HLTVTitle"; + [k: string]: unknown; + } + | { + text: String; + type: "HLTVChat"; + [k: string]: unknown; + } + | { + type: "ReplayStartRecord"; + [k: string]: unknown; + } + | { + cb: number; + di: number; + sn: String; + st: number; + type: "ReplaySessionInfo"; + [k: string]: unknown; + } + | { + type: "ReplayEndRecord"; + [k: string]: unknown; + } + | { + type: "ReplayReplaysAvailable"; + [k: string]: unknown; + } + | { + error: String; + type: "ReplayServerError"; + [k: string]: unknown; + } + | { + event_type: GameEventType; + type: "Unknown"; + values: GameEventValue[]; + [k: string]: unknown; + }; export type GameEventType = - | ( - | "ServerSpawn" - | "ServerChangeLevelFailed" - | "ServerShutdown" - | "ServerCvar" - | "ServerMessage" - | "ServerAddBan" - | "ServerRemoveBan" - | "PlayerConnect" - | "PlayerConnectClient" - | "PlayerInfo" - | "PlayerDisconnect" - | "PlayerActivate" - | "PlayerSay" - | "ClientDisconnect" - | "ClientBeginConnect" - | "ClientConnected" - | "ClientFullConnect" - | "HostQuit" - | "TeamInfo" - | "TeamScore" - | "TeamPlayBroadcastAudio" - | "PlayerTeam" - | "PlayerClass" - | "PlayerDeath" - | "PlayerHurt" - | "PlayerChat" - | "PlayerScore" - | "PlayerSpawn" - | "PlayerShoot" - | "PlayerUse" - | "PlayerChangeName" - | "PlayerHintMessage" - | "BasePlayerTeleported" - | "GameInit" - | "GameNewMap" - | "GameStart" - | "GameEnd" - | "RoundStart" - | "RoundEnd" - | "GameMessage" - | "BreakBreakable" - | "BreakProp" - | "EntityKilled" - | "BonusUpdated" - | "AchievementEvent" - | "AchievementIncrement" - | "PhysgunPickup" - | "FlareIgniteNpc" - | "HelicopterGrenadePuntMiss" - | "UserDataDownloaded" - | "RagdollDissolved" - | "HLTVChangedMode" - | "HLTVChangedTarget" - | "VoteEnded" - | "VoteStarted" - | "VoteChanged" - | "VotePassed" - | "VoteFailed" - | "VoteCast" - | "VoteOptions" - | "ReplaySaved" - | "EnteredPerformanceMode" - | "BrowseReplays" - | "ReplayYoutubeStats" - | "InventoryUpdated" - | "CartUpdated" - | "StorePriceSheetUpdated" - | "EconInventoryConnected" - | "ItemSchemaInitialized" - | "GcNewSession" - | "GcLostSession" - | "IntroFinish" - | "IntroNextCamera" - | "PlayerChangeClass" - | "TfMapTimeRemaining" - | "TfGameOver" - | "CtfFlagCaptured" - | "ControlPointInitialized" - | "ControlPointUpdateImages" - | "ControlPointUpdateLayout" - | "ControlPointUpdateCapping" - | "ControlPointUpdateOwner" - | "ControlPointStartTouch" - | "ControlPointEndTouch" - | "ControlPointPulseElement" - | "ControlPointFakeCapture" - | "ControlPointFakeCaptureMultiplier" - | "TeamPlayRoundSelected" - | "TeamPlayRoundStart" - | "TeamPlayRoundActive" - | "TeamPlayWaitingBegins" - | "TeamPlayWaitingEnds" - | "TeamPlayWaitingAboutToEnd" - | "TeamPlayRestartRound" - | "TeamPlayReadyRestart" - | "TeamPlayRoundRestartSeconds" - | "TeamPlayTeamReady" - | "TeamPlayRoundWin" - | "TeamPlayUpdateTimer" - | "TeamPlayRoundStalemate" - | "TeamPlayOvertimeBegin" - | "TeamPlayOvertimeEnd" - | "TeamPlaySuddenDeathBegin" - | "TeamPlaySuddenDeathEnd" - | "TeamPlayGameOver" - | "TeamPlayMapTimeRemaining" - | "TeamPlayTimerFlash" - | "TeamPlayTimerTimeAdded" - | "TeamPlayPointStartCapture" - | "TeamPlayPointCaptured" - | "TeamPlayPointLocked" - | "TeamPlayPointUnlocked" - | "TeamPlayCaptureBroken" - | "TeamPlayCaptureBlocked" - | "TeamPlayFlagEvent" - | "TeamPlayWinPanel" - | "TeamPlayTeamBalancedPlayer" - | "TeamPlaySetupFinished" - | "TeamPlayAlert" - | "TrainingComplete" - | "ShowFreezePanel" - | "HideFreezePanel" - | "FreezeCamStarted" - | "LocalPlayerChangeTeam" - | "LocalPlayerScoreChanged" - | "LocalPlayerChangeClass" - | "LocalPlayerRespawn" - | "BuildingInfoChanged" - | "LocalPlayerChangeDisguise" - | "PlayerAccountChanged" - | "SpyPdaReset" - | "FlagStatusUpdate" - | "PlayerStatsUpdated" - | "PlayingCommentary" - | "PlayerChargeDeployed" - | "PlayerBuiltObject" - | "PlayerUpgradedObject" - | "PlayerCarryObject" - | "PlayerDropObject" - | "ObjectRemoved" - | "ObjectDestroyed" - | "ObjectDetonated" - | "AchievementEarned" - | "SpecTargetUpdated" - | "TournamentStateUpdate" - | "TournamentEnableCountdown" - | "PlayerCalledForMedic" - | "PlayerAskedForBall" - | "LocalPlayerBecameObserver" - | "PlayerIgnitedInv" - | "PlayerIgnited" - | "PlayerExtinguished" - | "PlayerTeleported" - | "PlayerHealedMedicCall" - | "LocalPlayerChargeReady" - | "LocalPlayerWindDown" - | "PlayerInvulned" - | "EscortSpeed" - | "EscortProgress" - | "EscortRecede" - | "GameUIActivated" - | "GameUIHidden" - | "PlayerEscortScore" - | "PlayerHealOnHit" - | "PlayerStealSandvich" - | "ShowClassLayout" - | "ShowVsPanel" - | "PlayerDamaged" - | "ArenaPlayerNotification" - | "ArenaMatchMaxStreak" - | "ArenaRoundStart" - | "ArenaWinPanel" - | "PveWinPanel" - | "AirDash" - | "Landed" - | "PlayerDamageDodged" - | "PlayerStunned" - | "ScoutGrandSlam" - | "ScoutSlamdollLanded" - | "ArrowImpact" - | "PlayerJarated" - | "PlayerJaratedFade" - | "PlayerShieldBlocked" - | "PlayerPinned" - | "PlayerHealedByMedic" - | "PlayerSappedObject" - | "ItemFound" - | "ShowAnnotation" - | "HideAnnotation" - | "PostInventoryApplication" - | "ControlPointUnlockUpdated" - | "DeployBuffBanner" - | "PlayerBuff" - | "MedicDeath" - | "OvertimeNag" - | "TeamsChanged" - | "HalloweenPumpkinGrab" - | "RocketJump" - | "RocketJumpLanded" - | "StickyJump" - | "StickyJumpLanded" - | "RocketPackLaunch" - | "RocketPackLanded" - | "MedicDefended" - | "LocalPlayerHealed" - | "PlayerDestroyedPipeBomb" - | "ObjectDeflected" - | "PlayerMvp" - | "RaidSpawnMob" - | "RaidSpawnSquad" - | "NavBlocked" - | "PathTrackPassed" - | "NumCappersChanged" - | "PlayerRegenerate" - | "UpdateStatusItem" - | "StatsResetRound" - | "ScoreStatsAccumulatedUpdate" - | "ScoreStatsAccumulatedReset" - | "AchievementEarnedLocal" - | "PlayerHealed" - | "BuildingHealed" - | "ItemPickup" - | "DuelStatus" - | "FishNotice" - | "FishNoticeArm" - | "SlapNotice" - | "ThrowableHit" - | "PumpkinLordSummoned" - | "PumpkinLordKilled" - | "MerasmusSummoned" - | "MerasmusKilled" - | "MerasmusEscapeWarning" - | "MerasmusEscaped" - | "EyeballBossSummoned" - | "EyeballBossStunned" - | "EyeballBossKilled" - | "EyeballBossKiller" - | "EyeballBossEscapeImminent" - | "EyeballBossEscaped" - | "NpcHurt" - | "ControlPointTimerUpdated" - | "PlayerHighFiveStart" - | "PlayerHighFiveCancel" - | "PlayerHighFiveSuccess" - | "PlayerBonusPoints" - | "PlayerUpgraded" - | "PlayerBuyback" - | "PlayerUsedPowerUpBottle" - | "ChristmasGiftGrab" - | "PlayerKilledAchievementZone" - | "PartyUpdated" - | "PartyPrefChanged" - | "PartyCriteriaChanged" - | "PartyInvitesChanged" - | "PartyQueueStateChanged" - | "PartyChat" - | "PartyMemberJoin" - | "PartyMemberLeave" - | "MatchInvitesUpdated" - | "LobbyUpdated" - | "MvmMissionUpdate" - | "RecalculateHolidays" - | "PlayerCurrencyChanged" - | "DoomsdayRocketOpen" - | "RemoveNemesisRelationships" - | "MvmCreditBonusWave" - | "MvmCreditBonusAll" - | "MvmCreditBonusAllAdvanced" - | "MvmQuickSentryUpgrade" - | "MvmTankDestroyedByPlayers" - | "MvmKillRobotDeliveringBomb" - | "MvmPickupCurrency" - | "MvmBombCarrierKilled" - | "MvmSentryBusterDetonate" - | "MvmScoutMarkedForDeath" - | "MvmMedicPowerUpShared" - | "MvmBeginWave" - | "MvmWaveComplete" - | "MvmMissionComplete" - | "MvmBombResetByPlayer" - | "MvmBombAlarmTriggered" - | "MvmBombDeployResetByPlayer" - | "MvmWaveFailed" - | "MvmResetStats" - | "DamageResisted" - | "RevivePlayerNotify" - | "RevivePlayerStopped" - | "RevivePlayerComplete" - | "PlayerTurnedToGhost" - | "MedigunShieldBlockedDamage" - | "MvmAdvWaveCompleteNoGates" - | "MvmSniperHeadshotCurrency" - | "MvmMannhattanPit" - | "FlagCarriedInDetectionZone" - | "MvmAdvWaveKilledStunRadio" - | "PlayerDirectHitStun" - | "MvmSentryBusterKilled" - | "UpgradesFileChanged" - | "RdTeamPointsChanged" - | "RdRulesStateChanged" - | "RdRobotKilled" - | "RdRobotImpact" - | "TeamPlayPreRoundTimeLeft" - | "ParachuteDeploy" - | "ParachuteHolster" - | "KillRefillsMeter" - | "RpsTauntEvent" - | "CongaKill" - | "PlayerInitialSpawn" - | "CompetitiveVictory" - | "CompetitiveStatsUpdate" - | "MiniGameWin" - | "SentryOnGoActive" - | "DuckXpLevelUp" - | "QuestLogOpened" - | "SchemaUpdated" - | "LocalPlayerPickupWeapon" - | "RdPlayerScorePoints" - | "DemomanDetStickies" - | "QuestObjectiveCompleted" - | "PlayerScoreChanged" - | "KilledCappingPlayer" - | "EnvironmentalDeath" - | "ProjectileDirectHit" - | "PassGet" - | "PassScore" - | "PassFree" - | "PassPassCaught" - | "PassBallStolen" - | "PassBallBlocked" - | "DamagePrevented" - | "HalloweenBossKilled" - | "EscapedLootIsland" - | "TaggedPlayerAsIt" - | "MerasmusStunned" - | "MerasmusPropFound" - | "HalloweenSkeletonKilled" - | "EscapeHell" - | "CrossSpectralBridge" - | "MiniGameWon" - | "RespawnGhost" - | "KillInHell" - | "HalloweenDuckCollected" - | "SpecialScore" - | "TeamLeaderKilled" - | "HalloweenSoulCollected" - | "RecalculateTruce" - | "DeadRingerCheatDeath" - | "CrossbowHeal" - | "DamageMitigated" - | "PayloadPushed" - | "PlayerAbandonedMatch" - | "ClDrawline" - | "RestartTimerTime" - | "WinLimitChanged" - | "WinPanelShowScores" - | "TopStreamsRequestFinished" - | "CompetitiveStateChanged" - | "GlobalWarDataUpdated" - | "StopWatchChanged" - | "DsStop" - | "DsScreenshot" - | "ShowMatchSummary" - | "ExperienceChanged" - | "BeginXpLerp" - | "MatchmakerStatsUpdated" - | "RematchVotePeriodOver" - | "RematchFailedToCreate" - | "PlayerRematchChange" - | "PingUpdated" - | "MMStatsUpdated" - | "PlayerNextMapVoteChange" - | "VoteMapsChanged" - | "ProtoDefChanged" - | "PlayerDomination" - | "PlayerRocketPackPushed" - | "QuestRequest" - | "QuestResponse" - | "QuestProgress" - | "ProjectileRemoved" - | "QuestMapDataChanged" - | "GasDousedPlayerIgnited" - | "QuestTurnInState" - | "ItemsAcknowledged" - | "CapperKilled" - | "MainMenuStabilized" - | "WorldStatusChanged" - | "HLTVStatus" - | "HLTVCameraman" - | "HLTVRankCamera" - | "HLTVRankEntity" - | "HLTVFixed" - | "HLTVChase" - | "HLTVMessage" - | "HLTVTitle" - | "HLTVChat" - | "ReplayStartRecord" - | "ReplaySessionInfo" - | "ReplayEndRecord" - | "ReplayReplaysAvailable" - | "ReplayServerError" + | ( + | "server_spawn" + | "server_changelevel_failed" + | "server_shutdown" + | "server_cvar" + | "server_message" + | "server_addban" + | "server_removeban" + | "player_connect" + | "player_connect_client" + | "player_info" + | "player_disconnect" + | "player_activate" + | "player_say" + | "client_disconnect" + | "client_beginconnect" + | "client_connected" + | "client_fullconnect" + | "host_quit" + | "team_info" + | "team_score" + | "teamplay_broadcast_audio" + | "player_team" + | "player_class" + | "player_death" + | "player_hurt" + | "player_chat" + | "player_score" + | "player_spawn" + | "player_shoot" + | "player_use" + | "player_changename" + | "player_hintmessage" + | "base_player_teleported" + | "game_init" + | "game_newmap" + | "game_start" + | "game_end" + | "round_start" + | "round_end" + | "game_message" + | "break_breakable" + | "break_prop" + | "entity_killed" + | "bonus_updated" + | "achievement_event" + | "achievement_increment" + | "physgun_pickup" + | "flare_ignite_npc" + | "helicopter_grenade_punt_miss" + | "user_data_downloaded" + | "ragdoll_dissolved" + | "hltv_changed_mode" + | "hltv_changed_target" + | "vote_ended" + | "vote_started" + | "vote_changed" + | "vote_passed" + | "vote_failed" + | "vote_cast" + | "vote_options" + | "replay_saved" + | "entered_performance_mode" + | "browse_replays" + | "replay_youtube_stats" + | "inventory_updated" + | "cart_updated" + | "store_pricesheet_updated" + | "econ_inventory_connected" + | "item_schema_initialized" + | "gc_new_session" + | "gc_lost_session" + | "intro_finish" + | "intro_nextcamera" + | "player_changeclass" + | "tf_map_time_remaining" + | "tf_game_over" + | "ctf_flag_captured" + | "controlpoint_initialized" + | "controlpoint_updateimages" + | "controlpoint_updatelayout" + | "controlpoint_updatecapping" + | "controlpoint_updateowner" + | "controlpoint_starttouch" + | "controlpoint_endtouch" + | "controlpoint_pulse_element" + | "controlpoint_fake_capture" + | "controlpoint_fake_capture_mult" + | "teamplay_round_selected" + | "teamplay_round_start" + | "teamplay_round_active" + | "teamplay_waiting_begins" + | "teamplay_waiting_ends" + | "teamplay_waiting_abouttoend" + | "teamplay_restart_round" + | "teamplay_ready_restart" + | "teamplay_round_restart_seconds" + | "teamplay_team_ready" + | "teamplay_round_win" + | "teamplay_update_timer" + | "teamplay_round_stalemate" + | "teamplay_overtime_begin" + | "teamplay_overtime_end" + | "teamplay_suddendeath_begin" + | "teamplay_suddendeath_end" + | "teamplay_game_over" + | "teamplay_map_time_remaining" + | "teamplay_timer_flash" + | "teamplay_timer_time_added" + | "teamplay_point_startcapture" + | "teamplay_point_captured" + | "teamplay_point_locked" + | "teamplay_point_unlocked" + | "teamplay_capture_broken" + | "teamplay_capture_blocked" + | "teamplay_flag_event" + | "teamplay_win_panel" + | "teamplay_teambalanced_player" + | "teamplay_setup_finished" + | "teamplay_alert" + | "training_complete" + | "show_freezepanel" + | "hide_freezepanel" + | "freezecam_started" + | "localplayer_changeteam" + | "localplayer_score_changed" + | "localplayer_changeclass" + | "localplayer_respawn" + | "building_info_changed" + | "localplayer_changedisguise" + | "player_account_changed" + | "spy_pda_reset" + | "flagstatus_update" + | "player_stats_updated" + | "playing_commentary" + | "player_chargedeployed" + | "player_builtobject" + | "player_upgradedobject" + | "player_carryobject" + | "player_dropobject" + | "object_removed" + | "object_destroyed" + | "object_detonated" + | "achievement_earned" + | "spec_target_updated" + | "tournament_stateupdate" + | "tournament_enablecountdown" + | "player_calledformedic" + | "player_askedforball" + | "localplayer_becameobserver" + | "player_ignited_inv" + | "player_ignited" + | "player_extinguished" + | "player_teleported" + | "player_healedmediccall" + | "localplayer_chargeready" + | "localplayer_winddown" + | "player_invulned" + | "escort_speed" + | "escort_progress" + | "escort_recede" + | "gameui_activated" + | "gameui_hidden" + | "player_escort_score" + | "player_healonhit" + | "player_stealsandvich" + | "show_class_layout" + | "show_vs_panel" + | "player_damaged" + | "arena_player_notification" + | "arena_match_maxstreak" + | "arena_round_start" + | "arena_win_panel" + | "pve_win_panel" + | "air_dash" + | "landed" + | "player_damage_dodged" + | "player_stunned" + | "scout_grand_slam" + | "scout_slamdoll_landed" + | "arrow_impact" + | "player_jarated" + | "player_jarated_fade" + | "player_shield_blocked" + | "player_pinned" + | "player_healedbymedic" + | "player_sapped_object" + | "item_found" + | "show_annotation" + | "hide_annotation" + | "post_inventory_application" + | "controlpoint_unlock_updated" + | "deploy_buff_banner" + | "player_buff" + | "medic_death" + | "overtime_nag" + | "teams_changed" + | "halloween_pumpkin_grab" + | "rocket_jump" + | "rocket_jump_landed" + | "sticky_jump" + | "sticky_jump_landed" + | "rocketpack_launch" + | "rocketpack_landed" + | "medic_defended" + | "localplayer_healed" + | "player_destroyed_pipebomb" + | "object_deflected" + | "player_mvp" + | "raid_spawn_mob" + | "raid_spawn_squad" + | "nav_blocked" + | "path_track_passed" + | "num_cappers_changed" + | "player_regenerate" + | "update_status_item" + | "stats_resetround" + | "scorestats_accumulated_update" + | "scorestats_accumulated_reset" + | "achievement_earned_local" + | "player_healed" + | "building_healed" + | "item_pickup" + | "duel_status" + | "fish_notice" + | "fish_notice__arm" + | "slap_notice" + | "throwable_hit" + | "pumpkin_lord_summoned" + | "pumpkin_lord_killed" + | "merasmus_summoned" + | "merasmus_killed" + | "merasmus_escape_warning" + | "merasmus_escaped" + | "eyeball_boss_summoned" + | "eyeball_boss_stunned" + | "eyeball_boss_killed" + | "eyeball_boss_killer" + | "eyeball_boss_escape_imminent" + | "eyeball_boss_escaped" + | "npc_hurt" + | "controlpoint_timer_updated" + | "player_highfive_start" + | "player_highfive_cancel" + | "player_highfive_success" + | "player_bonuspoints" + | "player_upgraded" + | "player_buyback" + | "player_used_powerup_bottle" + | "christmas_gift_grab" + | "player_killed_achievement_zone" + | "party_updated" + | "party_pref_changed" + | "party_criteria_changed" + | "party_invites_changed" + | "party_queue_state_changed" + | "party_chat" + | "party_member_join" + | "party_member_leave" + | "match_invites_updated" + | "lobby_updated" + | "mvm_mission_update" + | "recalculate_holidays" + | "player_currency_changed" + | "doomsday_rocket_open" + | "remove_nemesis_relationships" + | "mvm_creditbonus_wave" + | "mvm_creditbonus_all" + | "mvm_creditbonus_all_advanced" + | "mvm_quick_sentry_upgrade" + | "mvm_tank_destroyed_by_players" + | "mvm_kill_robot_delivering_bomb" + | "mvm_pickup_currency" + | "mvm_bomb_carrier_killed" + | "mvm_sentrybuster_detonate" + | "mvm_scout_marked_for_death" + | "mvm_medic_powerup_shared" + | "mvm_begin_wave" + | "mvm_wave_complete" + | "mvm_mission_complete" + | "mvm_bomb_reset_by_player" + | "mvm_bomb_alarm_triggered" + | "mvm_bomb_deploy_reset_by_player" + | "mvm_wave_failed" + | "mvm_reset_stats" + | "damage_resisted" + | "revive_player_notify" + | "revive_player_stopped" + | "revive_player_complete" + | "player_turned_to_ghost" + | "medigun_shield_blocked_damage" + | "mvm_adv_wave_complete_no_gates" + | "mvm_sniper_headshot_currency" + | "mvm_mannhattan_pit" + | "flag_carried_in_detection_zone" + | "mvm_adv_wave_killed_stun_radio" + | "player_directhit_stun" + | "mvm_sentrybuster_killed" + | "upgrades_file_changed" + | "rd_team_points_changed" + | "rd_rules_state_changed" + | "rd_robot_killed" + | "rd_robot_impact" + | "teamplay_pre_round_time_left" + | "parachute_deploy" + | "parachute_holster" + | "kill_refills_meter" + | "rps_taunt_event" + | "conga_kill" + | "player_initial_spawn" + | "competitive_victory" + | "competitive_stats_update" + | "minigame_win" + | "sentry_on_go_active" + | "duck_xp_level_up" + | "questlog_opened" + | "schema_updated" + | "localplayer_pickup_weapon" + | "rd_player_score_points" + | "demoman_det_stickies" + | "quest_objective_completed" + | "player_score_changed" + | "killed_capping_player" + | "environmental_death" + | "projectile_direct_hit" + | "pass_get" + | "pass_score" + | "pass_free" + | "pass_pass_caught" + | "pass_ball_stolen" + | "pass_ball_blocked" + | "damage_prevented" + | "halloween_boss_killed" + | "escaped_loot_island" + | "tagged_player_as_it" + | "merasmus_stunned" + | "merasmus_prop_found" + | "halloween_skeleton_killed" + | "skeleton_killed_quest" + | "skeleton_king_killed_quest" + | "escape_hell" + | "cross_spectral_bridge" + | "minigame_won" + | "respawn_ghost" + | "kill_in_hell" + | "halloween_duck_collected" + | "special_score" + | "team_leader_killed" + | "halloween_soul_collected" + | "recalculate_truce" + | "deadringer_cheat_death" + | "crossbow_heal" + | "damage_mitigated" + | "payload_pushed" + | "player_abandoned_match" + | "cl_drawline" + | "restart_timer_time" + | "winlimit_changed" + | "winpanel_show_scores" + | "top_streams_request_finished" + | "competitive_state_changed" + | "global_war_data_updated" + | "stop_watch_changed" + | "ds_stop" + | "ds_screenshot" + | "show_match_summary" + | "experience_changed" + | "begin_xp_lerp" + | "matchmaker_stats_updated" + | "rematch_vote_period_over" + | "rematch_failed_to_create" + | "player_rematch_change" + | "ping_updated" + | "mmstats_updated" + | "player_next_map_vote_change" + | "vote_maps_changed" + | "proto_def_changed" + | "player_domination" + | "player_rocketpack_pushed" + | "quest_request" + | "quest_response" + | "quest_progress" + | "projectile_removed" + | "quest_map_data_changed" + | "gas_doused_player_ignited" + | "quest_turn_in_state" + | "items_acknowledged" + | "capper_killed" + | "mainmenu_stabilized" + | "world_status_changed" + | "hltv_status" + | "hltv_cameraman" + | "hltv_rank_camera" + | "hltv_rank_entity" + | "hltv_fixed" + | "hltv_chase" + | "hltv_message" + | "hltv_title" + | "hltv_chat" + | "replay_startrecord" + | "replay_sessioninfo" + | "replay_endrecord" + | "replay_replaysavailable" + | "replay_servererror" ) - | { - Unknown: string; -}; + | { + Unknown: string; + }; export type GameEventValue = - | "Local" - | { - String: string; -} - | { - Float: number; -} - | { - Long: number; -} - | { - Short: number; -} - | { - Byte: number; -} - | { - Boolean: boolean; -}; + | "Local" + | { + String: String; + } + | { + Float: number; + } + | { + Long: number; + } + | { + Short: number; + } + | { + Byte: number; + } + | { + Boolean: boolean; + }; export type GameEventTypeId = number; export type SendPropIdentifier = string; export type SendPropValue = Vector | VectorXY | number | number | string | SendPropValue[]; -export type EntityId = number; export type ClassId = number; export type UpdateType = "Preserve" | "Leave" | "Enter" | "Delete"; export type GameEventValueType = "None" | "String" | "Float" | "Long" | "Short" | "Byte" | "Boolean" | "Local"; +/** + * Tick relative to the start of the demo + */ +export type DemoTick = number; export type SendTableName = string; export type ServerClassName = string; export type SendPropFlags = number; export type SendPropName = string; export type SendPropType = - | "Int" - | "Float" - | "Vector" - | "VectorXY" - | "String" - | "Array" - | "DataTable" - | "NumSendPropTypes"; + | "Int" + | "Float" + | "Vector" + | "VectorXY" + | "String" + | "Array" + | "DataTable" + | "NumSendPropTypes"; export interface ConVar { - key: string; - value: string; - [k: string]: unknown; + key: string; + value: string; + [k: string]: unknown; } export interface ClassInfoEntry { - class_id: number; - class_name: string; - table_name: string; - [k: string]: unknown; + class_id: number; + class_name: string; + table_name: string; + [k: string]: unknown; } export interface StringTable { - client_entries?: StringTableEntry[] | null; - compressed: boolean; - entries: [number, StringTableEntry][]; - fixed_user_data_size?: FixedUserDataSize | null; - max_entries: number; - name: string; - [k: string]: unknown; + client_entries?: StringTableEntry[] | null; + compressed: boolean; + entries: [number, StringTableEntry][]; + fixed_user_data_size?: FixedUserDataSize | null; + max_entries: number; + name: string; + [k: string]: unknown; } export interface StringTableEntry { - extra_data?: ExtraData | null; - text?: string | null; - [k: string]: unknown; + extra_data?: ExtraData | null; + text?: string | null; + [k: string]: unknown; } export interface ExtraData { - byte_len: number; - data: BitReadStream; - [k: string]: unknown; + byte_len: number; + data: BitReadStream; + [k: string]: unknown; } export interface BitReadStream { - bit_length: number; - data: number[]; - [k: string]: unknown; + bit_length: number; + data: number[]; + [k: string]: unknown; } export interface FixedUserDataSize { - bits: number; - size: number; - [k: string]: unknown; + bits: number; + size: number; + [k: string]: unknown; } export interface Vector { - x: number; - y: number; - z: number; - [k: string]: unknown; + x: number; + y: number; + z: number; + [k: string]: unknown; +} +export interface VGuiMenuMessageData { + data: String; + key: String; + [k: string]: unknown; } export interface PacketEntity { - baseline_props: SendProp[]; - delay?: number | null; - entity_index: EntityId; - in_pvs: boolean; - props: SendProp[]; - serial_number: number; - server_class: ClassId; - update_type: UpdateType; - [k: string]: unknown; + baseline_index: number; + delay?: number | null; + delta?: ServerTick | null; + entity_index: EntityId; + in_pvs: boolean; + props: SendProp[]; + serial_number: number; + server_class: ClassId; + update_type: UpdateType; + [k: string]: unknown; } export interface SendProp { - identifier: SendPropIdentifier; - index: number; - value: SendPropValue; - [k: string]: unknown; + identifier: SendPropIdentifier; + index: number; + value: SendPropValue; + [k: string]: unknown; } export interface VectorXY { - x: number; - y: number; - [k: string]: unknown; + x: number; + y: number; + [k: string]: unknown; } export interface EventInfo { - class_id: ClassId; - fire_delay: number; - props: SendProp[]; - reliable: boolean; - [k: string]: unknown; + class_id: ClassId; + fire_delay: number; + props: SendProp[]; + reliable: boolean; + [k: string]: unknown; } export interface GameEventDefinition { - entries: GameEventEntry[]; - event_type: GameEventType; - id: GameEventTypeId; - [k: string]: unknown; + entries: GameEventEntry[]; + event_type: GameEventType; + id: GameEventTypeId; + [k: string]: unknown; } export interface GameEventEntry { - kind: GameEventValueType; - name: string; - [k: string]: unknown; + kind: GameEventValueType; + name: string; + [k: string]: unknown; } export interface MessagePacketMeta { - flags: number; - sequence_in: number; - sequence_out: number; - view_angles: ViewAngles; - [k: string]: unknown; + flags: number; + sequence_in: number; + sequence_out: number; + /** + * @minItems 2 + * @maxItems 2 + */ + view_angles: [ViewAngles, ViewAngles]; + [k: string]: unknown; } export interface ViewAngles { - angles: [Vector, Vector]; - local_angles: [Vector, Vector]; - origin: [Vector, Vector]; - [k: string]: unknown; + angles: Vector; + local_angles: Vector; + origin: Vector; + [k: string]: unknown; } export interface UserCmd { - buttons?: number | null; - command_number?: number | null; - impulse?: number | null; - mouse_dx?: number | null; - mouse_dy?: number | null; - movement: [number | null, number | null, number | null]; - tick_count?: number | null; - view_angles: [number | null, number | null, number | null]; - weapon_select?: WeaponSelect | null; - [k: string]: unknown; + buttons?: number | null; + command_number?: number | null; + impulse?: number | null; + mouse_dx?: number | null; + mouse_dy?: number | null; + /** + * @minItems 3 + * @maxItems 3 + */ + movement: [number | null, number | null, number | null]; + tick_count?: number | null; + /** + * @minItems 3 + * @maxItems 3 + */ + view_angles: [number | null, number | null, number | null]; + weapon_select?: WeaponSelect | null; + [k: string]: unknown; } export interface WeaponSelect { - select: number; - subtype?: number | null; - [k: string]: unknown; + select: number; + subtype?: number | null; + [k: string]: unknown; } export interface ServerClass { - data_table: SendTableName; - id: ClassId; - name: ServerClassName; - [k: string]: unknown; + data_table: SendTableName; + id: ClassId; + name: ServerClassName; + [k: string]: unknown; } export interface ParseSendTable { - name: SendTableName; - needs_decoder: boolean; - props: RawSendPropDefinition[]; - [k: string]: unknown; + name: SendTableName; + needs_decoder: boolean; + props: RawSendPropDefinition[]; + [k: string]: unknown; } export interface RawSendPropDefinition { - array_property?: RawSendPropDefinition | null; - bit_count?: number | null; - element_count?: number | null; - flags: SendPropFlags; - high_value?: number | null; - identifier: SendPropIdentifier; - low_value?: number | null; - name: SendPropName; - original_bit_count?: number | null; - prop_type: SendPropType; - table_name?: SendTableName | null; - [k: string]: unknown; + array_property?: RawSendPropDefinition | null; + bit_count?: number | null; + element_count?: number | null; + flags: SendPropFlags; + high_value?: number | null; + identifier: SendPropIdentifier; + low_value?: number | null; + name: SendPropName; + original_bit_count?: number | null; + prop_type: SendPropType; + table_name?: SendTableName | null; + [k: string]: unknown; } diff --git a/www/src/search.tsx b/www/src/search.tsx index b531bdd..1f049af 100644 --- a/www/src/search.tsx +++ b/www/src/search.tsx @@ -147,7 +147,7 @@ export function filterMessage( case "EntityMessage": return search.entity == 0 && search.class_ids.includes(message.class_id) case "GameEvent": - return search.entity == 0 && message.event.type.includes(search.search) + return search.entity == 0 && (message.event_type as string).includes(search.search) case "PacketEntities": return message.removed_entities.includes(search.entity) || message.entities.some(entity => (search.entity == 0 || entity.entity_index == search.entity)