diff --git a/.gitignore b/.gitignore index 2d64a7f6..96f038d6 100644 --- a/.gitignore +++ b/.gitignore @@ -13,6 +13,7 @@ node_modules .DS_Store /apphosting-*.tgz /firebase-frameworks-*.tgz +.repl_history # firebase .firebase diff --git a/package-lock.json b/package-lock.json index 00c3be98..aea2adbf 100644 --- a/package-lock.json +++ b/package-lock.json @@ -21,6 +21,7 @@ "eslint-plugin-prettier": "^5.0.1", "lerna": "^7.4.0", "mocha": "^10.2.0", + "npm-run-all": "^4.1.5", "prettier": "^3.0.3", "ts-mocha": "^10.0.0", "typescript": "^5.2.0", @@ -3669,6 +3670,23 @@ "node": ">=12" } }, + "node_modules/@esbuild/netbsd-arm64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.9.tgz", + "integrity": "sha512-9jNJl6FqaUG+COdQMjSCGW4QiMHH88xWbvZ+kRVblZsWrkXlABuGdFJ1E9L7HK+T0Yqd4akKNa/lO0+jDxQD4Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, "node_modules/@esbuild/netbsd-x64": { "version": "0.18.20", "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz", @@ -3686,6 +3704,23 @@ "node": ">=12" } }, + "node_modules/@esbuild/openbsd-arm64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.9.tgz", + "integrity": "sha512-YaFBlPGeDasft5IIM+CQAhJAqS3St3nJzDEgsgFixcfZeyGPCd6eJBWzke5piZuZ7CtL656eOSYKk4Ls2C0FRQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, "node_modules/@esbuild/openbsd-x64": { "version": "0.18.20", "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz", @@ -3703,6 +3738,23 @@ "node": ">=12" } }, + "node_modules/@esbuild/openharmony-arm64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.25.9.tgz", + "integrity": "sha512-4Xd0xNiMVXKh6Fa7HEJQbrpP3m3DDn43jKxMjxLLRjWnRsfxjORYJlXPO4JNcXtOyfajXorRKY9NkOpTHptErg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": ">=18" + } + }, "node_modules/@esbuild/sunos-x64": { "version": "0.18.20", "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz", @@ -5782,10 +5834,34 @@ "node": ">=18" } }, + "node_modules/@isaacs/balanced-match": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@isaacs/balanced-match/-/balanced-match-4.0.1.tgz", + "integrity": "sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": "20 || >=22" + } + }, + "node_modules/@isaacs/brace-expansion": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@isaacs/brace-expansion/-/brace-expansion-5.0.0.tgz", + "integrity": "sha512-ZT55BDLV0yv0RBm2czMiZ+SqCGO7AvmOM3G/w2xhVPH+te0aKgFjmBvGlL1dH+ql2tgGO3MVrbb3jCKyvpgnxA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@isaacs/balanced-match": "^4.0.1" + }, + "engines": { + "node": "20 || >=22" + } + }, "node_modules/@isaacs/cliui": { "version": "8.0.2", "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dev": true, "dependencies": { "string-width": "^5.1.2", "string-width-cjs": "npm:string-width@^4.2.0", @@ -5802,6 +5878,7 @@ "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" }, @@ -5813,6 +5890,7 @@ "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" }, @@ -5823,12 +5901,14 @@ "node_modules/@isaacs/cliui/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==" + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true }, "node_modules/@isaacs/cliui/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", @@ -5845,6 +5925,7 @@ "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" }, @@ -5859,6 +5940,7 @@ "version": "8.1.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dev": true, "dependencies": { "ansi-styles": "^6.1.0", "string-width": "^5.0.1", @@ -5874,7 +5956,8 @@ "node_modules/@isaacs/string-locale-compare": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@isaacs/string-locale-compare/-/string-locale-compare-1.1.0.tgz", - "integrity": "sha512-SQ7Kzhh9+D+ZW9MA0zkYv3VXhIDNx+LzM6EJ+/65I3QY+enU6Itte7E5XX7EWrqLW2FN4n06GWzBnPoC3th2aQ==" + "integrity": "sha512-SQ7Kzhh9+D+ZW9MA0zkYv3VXhIDNx+LzM6EJ+/65I3QY+enU6Itte7E5XX7EWrqLW2FN4n06GWzBnPoC3th2aQ==", + "dev": true }, "node_modules/@istanbuljs/load-nyc-config": { "version": "1.1.0", @@ -6290,6 +6373,117 @@ "node": ">= 0.4" } }, + "node_modules/@microsoft/api-extractor": { + "version": "7.52.11", + "resolved": "https://registry.npmjs.org/@microsoft/api-extractor/-/api-extractor-7.52.11.tgz", + "integrity": "sha512-IKQ7bHg6f/Io3dQds6r9QPYk4q0OlR9A4nFDtNhUt3UUIhyitbxAqRN1CLjUVtk6IBk3xzyCMOdwwtIXQ7AlGg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@microsoft/api-extractor-model": "7.30.7", + "@microsoft/tsdoc": "~0.15.1", + "@microsoft/tsdoc-config": "~0.17.1", + "@rushstack/node-core-library": "5.14.0", + "@rushstack/rig-package": "0.5.3", + "@rushstack/terminal": "0.15.4", + "@rushstack/ts-command-line": "5.0.2", + "lodash": "~4.17.15", + "minimatch": "10.0.3", + "resolve": "~1.22.1", + "semver": "~7.5.4", + "source-map": "~0.6.1", + "typescript": "5.8.2" + }, + "bin": { + "api-extractor": "bin/api-extractor" + } + }, + "node_modules/@microsoft/api-extractor-model": { + "version": "7.30.7", + "resolved": "https://registry.npmjs.org/@microsoft/api-extractor-model/-/api-extractor-model-7.30.7.tgz", + "integrity": "sha512-TBbmSI2/BHpfR9YhQA7nH0nqVmGgJ0xH0Ex4D99/qBDAUpnhA2oikGmdXanbw9AWWY/ExBYIpkmY8dBHdla3YQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@microsoft/tsdoc": "~0.15.1", + "@microsoft/tsdoc-config": "~0.17.1", + "@rushstack/node-core-library": "5.14.0" + } + }, + "node_modules/@microsoft/api-extractor/node_modules/minimatch": { + "version": "10.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.0.3.tgz", + "integrity": "sha512-IPZ167aShDZZUMdRk66cyQAW3qr0WzbHkPdMYa8bzZhlHhO3jALbKdxcaak7W9FfT2rZNpQuUu4Od7ILEpXSaw==", + "dev": true, + "license": "ISC", + "dependencies": { + "@isaacs/brace-expansion": "^5.0.0" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@microsoft/api-extractor/node_modules/typescript": { + "version": "5.8.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.2.tgz", + "integrity": "sha512-aJn6wq13/afZp/jT9QZmwEjDqqvSGp1VT5GVg+f/t6/oVyrgXM6BY1h9BRh/O5p3PlUPAe+WuiEZOmb/49RqoQ==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/@microsoft/tsdoc": { + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/@microsoft/tsdoc/-/tsdoc-0.15.1.tgz", + "integrity": "sha512-4aErSrCR/On/e5G2hDP0wjooqDdauzEbIq8hIkIe5pXV0rtWJZvdCEKL0ykZxex+IxIwBp0eGeV48hQN07dXtw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@microsoft/tsdoc-config": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/@microsoft/tsdoc-config/-/tsdoc-config-0.17.1.tgz", + "integrity": "sha512-UtjIFe0C6oYgTnad4q1QP4qXwLhe6tIpNTRStJ2RZEPIkqQPREAwE5spzVxsdn9UaEMUqhh0AqSx3X4nWAKXWw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@microsoft/tsdoc": "0.15.1", + "ajv": "~8.12.0", + "jju": "~1.4.0", + "resolve": "~1.22.2" + } + }, + "node_modules/@microsoft/tsdoc-config/node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/@microsoft/tsdoc-config/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true, + "license": "MIT" + }, "node_modules/@next/env": { "version": "14.0.4", "resolved": "https://registry.npmjs.org/@next/env/-/env-14.0.4.tgz", @@ -6501,6 +6695,7 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-2.2.0.tgz", "integrity": "sha512-2yThA1Es98orMkpSLVqlDZAMPK3jHJhifP2gnNUdk1754uZ8yI5c+ulCoVG+WlntQA6MzhrURMXjSd9Z7dJ2/Q==", + "dev": true, "dependencies": { "agent-base": "^7.1.0", "http-proxy-agent": "^7.0.0", @@ -6516,6 +6711,7 @@ "version": "7.1.0", "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", + "dev": true, "dependencies": { "debug": "^4.3.4" }, @@ -6527,6 +6723,7 @@ "version": "7.0.0", "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.0.tgz", "integrity": "sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ==", + "dev": true, "dependencies": { "agent-base": "^7.1.0", "debug": "^4.3.4" @@ -6539,6 +6736,7 @@ "version": "7.0.2", "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.2.tgz", "integrity": "sha512-NmLNjm6ucYwtcUmL7JQC1ZQ57LmHP4lT15FQ8D61nak1rO6DH+fz5qNK2Ap5UN4ZapYICE3/0KodcLYSPsPbaA==", + "dev": true, "dependencies": { "agent-base": "^7.0.2", "debug": "4" @@ -6551,6 +6749,7 @@ "version": "10.1.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz", "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==", + "dev": true, "engines": { "node": "14 || >=16.14" } @@ -6559,6 +6758,7 @@ "version": "8.0.2", "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.2.tgz", "integrity": "sha512-8zuqoLv1aP/66PHF5TqwJ7Czm3Yv32urJQHrVyhD7mmA6d61Zv8cIXQYPTWwmg6qlupnPvs/QKDmfa4P/qct2g==", + "dev": true, "dependencies": { "agent-base": "^7.0.2", "debug": "^4.3.4", @@ -6572,6 +6772,7 @@ "version": "7.2.2", "resolved": "https://registry.npmjs.org/@npmcli/arborist/-/arborist-7.2.2.tgz", "integrity": "sha512-dIIzyhy1zS2dYPS8bdM/8qA8W2evQE9KENBxVOhFthm/2RKqf2ninRWQc8xfc5f1gsiTxTP20Y9flIfziHfSKA==", + "dev": true, "dependencies": { "@isaacs/string-locale-compare": "^1.1.0", "@npmcli/fs": "^3.1.0", @@ -6618,6 +6819,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.0.tgz", "integrity": "sha512-7kZUAaLscfgbwBQRbvdMYaZOWyMEcPTH/tJjnyAWJ/dvvs9Ef+CERx/qJb9GExJpl1qipaDGn7KqHnFGGixd0w==", + "dev": true, "dependencies": { "semver": "^7.3.5" }, @@ -6629,6 +6831,7 @@ "version": "5.0.3", "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-5.0.3.tgz", "integrity": "sha512-UZp9NwK+AynTrKvHn5k3KviW/hA5eENmFsu3iAPe7sWRt0lFUdsY/wXIYjpDFe7cdSNwOIzbObfwgt6eL5/2zw==", + "dev": true, "dependencies": { "@npmcli/promise-spawn": "^7.0.0", "lru-cache": "^10.0.1", @@ -6647,6 +6850,7 @@ "version": "7.0.0", "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-7.0.0.tgz", "integrity": "sha512-wBqcGsMELZna0jDblGd7UXgOby45TQaMWmbFwWX+SEotk4HV6zG2t6rT9siyLhPk4P6YYqgfL1UO8nMWDBVJXQ==", + "dev": true, "dependencies": { "which": "^4.0.0" }, @@ -6658,6 +6862,7 @@ "version": "7.0.2", "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-7.0.2.tgz", "integrity": "sha512-Omu0rpA8WXvcGeY6DDzyRoY1i5DkCBkzyJ+m2u7PD6quzb0TvSqdIPOkTn8ZBOj7LbbcbMfZ3c5skwSu6m8y2w==", + "dev": true, "dependencies": { "@npmcli/node-gyp": "^3.0.0", "@npmcli/promise-spawn": "^7.0.0", @@ -6673,6 +6878,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-2.1.0.tgz", "integrity": "sha512-89uOo6yh/oxaU8AeOUnVrTdVMcGk9Q1hJa7Hkvalc6G3Z3CupWk4Xe9djSgJm9fMkH69s0P0cVHUoKSOemLdng==", + "dev": true, "dependencies": { "@sigstore/protobuf-specs": "^0.2.1" }, @@ -6684,6 +6890,7 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-2.2.0.tgz", "integrity": "sha512-AAbmnEHDQv6CSfrWA5wXslGtzLPtAtHZleKOgxdQYvx/s76Fk6T6ZVt7w2IGV9j1UrFeBocTTQxaXG2oRrDhYA==", + "dev": true, "dependencies": { "@sigstore/bundle": "^2.1.0", "@sigstore/protobuf-specs": "^0.2.1", @@ -6697,6 +6904,7 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-2.2.0.tgz", "integrity": "sha512-KKATZ5orWfqd9ZG6MN8PtCIx4eevWSuGRKQvofnWXRpyMyUEpmrzg5M5BrCpjM+NfZ0RbNGOh5tCz/P2uoRqOA==", + "dev": true, "dependencies": { "@sigstore/protobuf-specs": "^0.2.1", "tuf-js": "^2.1.0" @@ -6709,6 +6917,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/@tufjs/canonical-json/-/canonical-json-2.0.0.tgz", "integrity": "sha512-yVtV8zsdo8qFHe+/3kw81dSLyF7D576A5cCFCi4X7B39tWT7SekaEFUnvnWJHz+9qO7qJTah1JbrDjWKqFtdWA==", + "dev": true, "engines": { "node": "^16.14.0 || >=18.0.0" } @@ -6717,6 +6926,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-2.0.0.tgz", "integrity": "sha512-c8nj8BaOExmZKO2DXhDfegyhSGcG9E/mPN3U13L+/PsoWm1uaGiHHjxqSHQiasDBQwDA3aHuw9+9spYAP1qvvg==", + "dev": true, "dependencies": { "@tufjs/canonical-json": "2.0.0", "minimatch": "^9.0.3" @@ -6729,6 +6939,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz", "integrity": "sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==", + "dev": true, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -6737,6 +6948,7 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-4.0.1.tgz", "integrity": "sha512-2zuA+jpOYBRgoBCfa+fB87Rk0oGJjDX6pxGzqH6f33NzUhG25Xur6R0u0Z9VVAq8Z5JvQpQI6j6rtonuivC8QA==", + "dev": true, "dependencies": { "delegates": "^1.0.0", "readable-stream": "^4.1.0" @@ -6749,6 +6961,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, "dependencies": { "balanced-match": "^1.0.0" } @@ -6757,6 +6970,7 @@ "version": "6.0.3", "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "dev": true, "funding": [ { "type": "github", @@ -6780,6 +6994,7 @@ "version": "18.0.1", "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.1.tgz", "integrity": "sha512-g4Uf2CFZPaxtJKre6qr4zqLDOOPU7bNVhWjlNhvzc51xaTOx2noMOLhfFkTAqwtrAZAKQUuDfyjitzilpA8WsQ==", + "dev": true, "dependencies": { "@npmcli/fs": "^3.1.0", "fs-minipass": "^3.0.0", @@ -6802,6 +7017,7 @@ "version": "3.0.3", "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.3.tgz", "integrity": "sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw==", + "dev": true, "dependencies": { "minipass": "^7.0.3" }, @@ -6813,6 +7029,7 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/gauge/-/gauge-5.0.1.tgz", "integrity": "sha512-CmykPMJGuNan/3S4kZOpvvPYSNqSHANiWnh9XcMU2pSjtBfF0XzZ2p1bFAxTbnFxyBuPxQYHhzwaoOmUdqzvxQ==", + "dev": true, "dependencies": { "aproba": "^1.0.3 || ^2.0.0", "color-support": "^1.1.3", @@ -6831,6 +7048,7 @@ "version": "10.3.10", "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", + "dev": true, "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^2.3.5", @@ -6852,6 +7070,7 @@ "version": "7.0.1", "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.1.tgz", "integrity": "sha512-+K84LB1DYwMHoHSgaOY/Jfhw3ucPmSET5v98Ke/HdNSw4a0UktWzyW1mjhjpuxxTqOOsfWT/7iVshHmVZ4IpOA==", + "dev": true, "dependencies": { "lru-cache": "^10.0.1" }, @@ -6863,6 +7082,7 @@ "version": "6.0.4", "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.4.tgz", "integrity": "sha512-t7sv42WkwFkyKbivUCglsQW5YWMskWtbEf4MNKX5u/CCWHKSPzN4FtBQGsQZgCLbxOzpVlcbWVK5KB3auIOjSw==", + "dev": true, "dependencies": { "minimatch": "^9.0.0" }, @@ -6874,6 +7094,7 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", + "dev": true, "engines": { "node": ">=16" } @@ -6882,6 +7103,7 @@ "version": "10.1.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz", "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==", + "dev": true, "engines": { "node": "14 || >=16.14" } @@ -6890,6 +7112,7 @@ "version": "13.0.0", "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.0.tgz", "integrity": "sha512-7ThobcL8brtGo9CavByQrQi+23aIfgYU++wg4B87AIS8Rb2ZBt/MEaDqzA00Xwv/jUjAjYkLHjVolYuTLKda2A==", + "dev": true, "dependencies": { "@npmcli/agent": "^2.0.0", "cacache": "^18.0.0", @@ -6911,6 +7134,7 @@ "version": "9.0.3", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "dev": true, "dependencies": { "brace-expansion": "^2.0.1" }, @@ -6925,6 +7149,7 @@ "version": "7.0.4", "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, "engines": { "node": ">=16 || 14 >=14.17" } @@ -6933,6 +7158,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-2.0.1.tgz", "integrity": "sha512-D7V8PO9oaz7PWGLbCACuI1qEOsq7UKfLotx/C0Aet43fCUB/wfQ7DYeq2oR/svFJGYDHPr38SHATeaj/ZoKHKw==", + "dev": true, "dependencies": { "minipass": "^7.0.3" }, @@ -6944,6 +7170,7 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz", "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==", + "dev": true, "dependencies": { "minipass": "^7.0.3", "minipass-sized": "^1.0.3", @@ -6960,6 +7187,7 @@ "version": "10.0.1", "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-10.0.1.tgz", "integrity": "sha512-gg3/bHehQfZivQVfqIyy8wTdSymF9yTyP4CJifK73imyNMU8AIGQE2pUa7dNWfmMeG9cDVF2eehiRMv0LC1iAg==", + "dev": true, "dependencies": { "env-paths": "^2.2.0", "exponential-backoff": "^3.1.1", @@ -6983,6 +7211,7 @@ "version": "7.2.0", "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.2.0.tgz", "integrity": "sha512-CVDtwCdhYIvnAzFoJ6NJ6dX3oga9/HyciQDnG1vQDjSLMeKLJ4A93ZqYKDrgYSr1FBY5/hMYC+2VCi24pgpkGA==", + "dev": true, "dependencies": { "abbrev": "^2.0.0" }, @@ -6997,6 +7226,7 @@ "version": "6.0.0", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.0.tgz", "integrity": "sha512-UL7ELRVxYBHBgYEtZCXjxuD5vPxnmvMGq0jp/dGPKKrN7tfsBh2IY7TlJ15WWwdjRWD3RJbnsygUurTK3xkPkg==", + "dev": true, "dependencies": { "hosted-git-info": "^7.0.0", "is-core-module": "^2.8.1", @@ -7011,6 +7241,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz", "integrity": "sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==", + "dev": true, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -7019,6 +7250,7 @@ "version": "11.0.1", "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-11.0.1.tgz", "integrity": "sha512-M7s1BD4NxdAvBKUPqqRW957Xwcl/4Zvo8Aj+ANrzvIPzGJZElrH7Z//rSaec2ORcND6FHHLnZeY8qgTpXDMFQQ==", + "dev": true, "dependencies": { "hosted-git-info": "^7.0.0", "proc-log": "^3.0.0", @@ -7033,6 +7265,7 @@ "version": "8.0.1", "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-8.0.1.tgz", "integrity": "sha512-MQpL27ZrsJQ2kiAuQPpZb5LtJwydNRnI15QWXsf3WHERu4rzjRj6Zju/My2fov7tLuu3Gle/uoIX/DDZ3u4O4Q==", + "dev": true, "dependencies": { "ignore-walk": "^6.0.4" }, @@ -7044,6 +7277,7 @@ "version": "9.0.0", "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-9.0.0.tgz", "integrity": "sha512-VfvRSs/b6n9ol4Qb+bDwNGUXutpy76x6MARw/XssevE0TnctIKcmklJZM5Z7nqs5z5aW+0S63pgCNbpkUNNXBg==", + "dev": true, "dependencies": { "npm-install-checks": "^6.0.0", "npm-normalize-package-bin": "^3.0.0", @@ -7058,6 +7292,7 @@ "version": "16.1.0", "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-16.1.0.tgz", "integrity": "sha512-PQCELXKt8Azvxnt5Y85GseQDJJlglTFM9L9U9gkv2y4e9s0k3GVDdOx3YoB6gm2Do0hlkzC39iCGXby+Wve1Bw==", + "dev": true, "dependencies": { "make-fetch-happen": "^13.0.0", "minipass": "^7.0.2", @@ -7075,6 +7310,7 @@ "version": "7.0.1", "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-7.0.1.tgz", "integrity": "sha512-uJ0YFk/mCQpLBt+bxN88AKd+gyqZvZDbtiNxk6Waqcj2aPRyfVx8ITawkyQynxUagInjdYT1+qj4NfA5KJJUxg==", + "dev": true, "dependencies": { "are-we-there-yet": "^4.0.0", "console-control-strings": "^1.1.0", @@ -7089,6 +7325,7 @@ "version": "17.0.5", "resolved": "https://registry.npmjs.org/pacote/-/pacote-17.0.5.tgz", "integrity": "sha512-TAE0m20zSDMnchPja9vtQjri19X3pZIyRpm2TJVeI+yU42leJBBDTRYhOcWFsPhaMxf+3iwQkFiKz16G9AEeeA==", + "dev": true, "dependencies": { "@npmcli/git": "^5.0.0", "@npmcli/installed-package-contents": "^2.0.1", @@ -7120,6 +7357,7 @@ "version": "7.0.0", "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-7.0.0.tgz", "integrity": "sha512-uL4Z10OKV4p6vbdvIXB+OzhInYtIozl/VxUBPgNkBuUi2DeRonnuspmaVAMcrkmfjKGNmRndyQAbE7/AmzGwFg==", + "dev": true, "dependencies": { "glob": "^10.2.2", "json-parse-even-better-errors": "^3.0.0", @@ -7134,6 +7372,7 @@ "version": "4.4.2", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.4.2.tgz", "integrity": "sha512-Lk/fICSyIhodxy1IDK2HazkeGjSmezAWX2egdtJnYhtzKEsBPJowlI6F6LPb5tqIQILrMbx22S5o3GuJavPusA==", + "dev": true, "dependencies": { "abort-controller": "^3.0.0", "buffer": "^6.0.3", @@ -7149,6 +7388,7 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, "engines": { "node": ">=14" }, @@ -7160,6 +7400,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-2.1.0.tgz", "integrity": "sha512-kPIj+ZLkyI3QaM0qX8V/nSsweYND3W448pwkDgS6CQ74MfhEkIR8ToK5Iyx46KJYRjseVcD3Rp9zAmUAj6ZjPw==", + "dev": true, "dependencies": { "@sigstore/bundle": "^2.1.0", "@sigstore/protobuf-specs": "^0.2.1", @@ -7174,6 +7415,7 @@ "version": "10.0.5", "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.5.tgz", "integrity": "sha512-bSf16tAFkGeRlUNDjXu8FzaMQt6g2HZJrun7mtMbIPOddxt3GLMSz5VWUWcqTJUPfLEaDIepGxv+bYQW49596A==", + "dev": true, "dependencies": { "minipass": "^7.0.3" }, @@ -7185,6 +7427,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-2.1.0.tgz", "integrity": "sha512-eD7YPPjVlMzdggrOeE8zwoegUaG/rt6Bt3jwoQPunRiNVzgcCE009UDFJKJjG+Gk9wFu6W/Vi+P5d/5QpdD9jA==", + "dev": true, "dependencies": { "@tufjs/models": "2.0.0", "debug": "^4.3.4", @@ -7198,6 +7441,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz", "integrity": "sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g==", + "dev": true, "dependencies": { "unique-slug": "^4.0.0" }, @@ -7209,6 +7453,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-4.0.0.tgz", "integrity": "sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ==", + "dev": true, "dependencies": { "imurmurhash": "^0.1.4" }, @@ -7220,6 +7465,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", + "dev": true, "dependencies": { "isexe": "^3.1.1" }, @@ -7290,6 +7536,7 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-2.0.2.tgz", "integrity": "sha512-xACzLPhnfD51GKvTOOuNX2/V4G4mz9/1I2MfDoye9kBM3RYe5g2YbscsaGoTlaWqkxeiapBWyseULVKpSVHtKQ==", + "dev": true, "dependencies": { "npm-bundled": "^3.0.0", "npm-normalize-package-bin": "^3.0.0" @@ -7305,6 +7552,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-3.0.0.tgz", "integrity": "sha512-Vq0eyEQy+elFpzsKjMss9kxqb9tG3YHg4dsyWuUENuzvSUWe1TCnW/vV9FkhvBk/brEDoDiVd+M1Btosa6ImdQ==", + "dev": true, "dependencies": { "npm-normalize-package-bin": "^3.0.0" }, @@ -7316,6 +7564,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz", "integrity": "sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==", + "dev": true, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -7324,6 +7573,7 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/@npmcli/map-workspaces/-/map-workspaces-3.0.4.tgz", "integrity": "sha512-Z0TbvXkRbacjFFLpVpV0e2mheCh+WzQpcqL+4xp49uNJOxOnIAPZyXtUxZ5Qn3QBTGKA11Exjd9a5411rBrhDg==", + "dev": true, "dependencies": { "@npmcli/name-from-folder": "^2.0.0", "glob": "^10.2.2", @@ -7338,6 +7588,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, "dependencies": { "balanced-match": "^1.0.0" } @@ -7346,6 +7597,7 @@ "version": "10.3.10", "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", + "dev": true, "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^2.3.5", @@ -7367,6 +7619,7 @@ "version": "9.0.3", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "dev": true, "dependencies": { "brace-expansion": "^2.0.1" }, @@ -7381,6 +7634,7 @@ "version": "7.0.4", "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, "engines": { "node": ">=16 || 14 >=14.17" } @@ -7389,6 +7643,7 @@ "version": "7.0.0", "resolved": "https://registry.npmjs.org/@npmcli/metavuln-calculator/-/metavuln-calculator-7.0.0.tgz", "integrity": "sha512-Pw0tyX02VkpqlIQlG2TeiJNsdrecYeUU0ubZZa9pi3N37GCsxI+en43u4hYFdq+eSx1A9a9vwFAUyqEtKFsbHQ==", + "dev": true, "dependencies": { "cacache": "^18.0.0", "json-parse-even-better-errors": "^3.0.0", @@ -7403,6 +7658,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.0.tgz", "integrity": "sha512-7kZUAaLscfgbwBQRbvdMYaZOWyMEcPTH/tJjnyAWJ/dvvs9Ef+CERx/qJb9GExJpl1qipaDGn7KqHnFGGixd0w==", + "dev": true, "dependencies": { "semver": "^7.3.5" }, @@ -7414,6 +7670,7 @@ "version": "5.0.3", "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-5.0.3.tgz", "integrity": "sha512-UZp9NwK+AynTrKvHn5k3KviW/hA5eENmFsu3iAPe7sWRt0lFUdsY/wXIYjpDFe7cdSNwOIzbObfwgt6eL5/2zw==", + "dev": true, "dependencies": { "@npmcli/promise-spawn": "^7.0.0", "lru-cache": "^10.0.1", @@ -7432,6 +7689,7 @@ "version": "7.0.0", "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-7.0.0.tgz", "integrity": "sha512-wBqcGsMELZna0jDblGd7UXgOby45TQaMWmbFwWX+SEotk4HV6zG2t6rT9siyLhPk4P6YYqgfL1UO8nMWDBVJXQ==", + "dev": true, "dependencies": { "which": "^4.0.0" }, @@ -7443,6 +7701,7 @@ "version": "7.0.2", "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-7.0.2.tgz", "integrity": "sha512-Omu0rpA8WXvcGeY6DDzyRoY1i5DkCBkzyJ+m2u7PD6quzb0TvSqdIPOkTn8ZBOj7LbbcbMfZ3c5skwSu6m8y2w==", + "dev": true, "dependencies": { "@npmcli/node-gyp": "^3.0.0", "@npmcli/promise-spawn": "^7.0.0", @@ -7458,6 +7717,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-2.1.0.tgz", "integrity": "sha512-89uOo6yh/oxaU8AeOUnVrTdVMcGk9Q1hJa7Hkvalc6G3Z3CupWk4Xe9djSgJm9fMkH69s0P0cVHUoKSOemLdng==", + "dev": true, "dependencies": { "@sigstore/protobuf-specs": "^0.2.1" }, @@ -7469,6 +7729,7 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-2.2.0.tgz", "integrity": "sha512-AAbmnEHDQv6CSfrWA5wXslGtzLPtAtHZleKOgxdQYvx/s76Fk6T6ZVt7w2IGV9j1UrFeBocTTQxaXG2oRrDhYA==", + "dev": true, "dependencies": { "@sigstore/bundle": "^2.1.0", "@sigstore/protobuf-specs": "^0.2.1", @@ -7482,6 +7743,7 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-2.2.0.tgz", "integrity": "sha512-KKATZ5orWfqd9ZG6MN8PtCIx4eevWSuGRKQvofnWXRpyMyUEpmrzg5M5BrCpjM+NfZ0RbNGOh5tCz/P2uoRqOA==", + "dev": true, "dependencies": { "@sigstore/protobuf-specs": "^0.2.1", "tuf-js": "^2.1.0" @@ -7494,6 +7756,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/@tufjs/canonical-json/-/canonical-json-2.0.0.tgz", "integrity": "sha512-yVtV8zsdo8qFHe+/3kw81dSLyF7D576A5cCFCi4X7B39tWT7SekaEFUnvnWJHz+9qO7qJTah1JbrDjWKqFtdWA==", + "dev": true, "engines": { "node": "^16.14.0 || >=18.0.0" } @@ -7502,6 +7765,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-2.0.0.tgz", "integrity": "sha512-c8nj8BaOExmZKO2DXhDfegyhSGcG9E/mPN3U13L+/PsoWm1uaGiHHjxqSHQiasDBQwDA3aHuw9+9spYAP1qvvg==", + "dev": true, "dependencies": { "@tufjs/canonical-json": "2.0.0", "minimatch": "^9.0.3" @@ -7514,6 +7778,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz", "integrity": "sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==", + "dev": true, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -7522,6 +7787,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, "dependencies": { "balanced-match": "^1.0.0" } @@ -7530,6 +7796,7 @@ "version": "18.0.1", "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.1.tgz", "integrity": "sha512-g4Uf2CFZPaxtJKre6qr4zqLDOOPU7bNVhWjlNhvzc51xaTOx2noMOLhfFkTAqwtrAZAKQUuDfyjitzilpA8WsQ==", + "dev": true, "dependencies": { "@npmcli/fs": "^3.1.0", "fs-minipass": "^3.0.0", @@ -7552,6 +7819,7 @@ "version": "3.0.3", "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.3.tgz", "integrity": "sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw==", + "dev": true, "dependencies": { "minipass": "^7.0.3" }, @@ -7563,6 +7831,7 @@ "version": "10.3.10", "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", + "dev": true, "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^2.3.5", @@ -7584,6 +7853,7 @@ "version": "7.0.1", "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.1.tgz", "integrity": "sha512-+K84LB1DYwMHoHSgaOY/Jfhw3ucPmSET5v98Ke/HdNSw4a0UktWzyW1mjhjpuxxTqOOsfWT/7iVshHmVZ4IpOA==", + "dev": true, "dependencies": { "lru-cache": "^10.0.1" }, @@ -7595,6 +7865,7 @@ "version": "6.0.4", "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.4.tgz", "integrity": "sha512-t7sv42WkwFkyKbivUCglsQW5YWMskWtbEf4MNKX5u/CCWHKSPzN4FtBQGsQZgCLbxOzpVlcbWVK5KB3auIOjSw==", + "dev": true, "dependencies": { "minimatch": "^9.0.0" }, @@ -7606,6 +7877,7 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", + "dev": true, "engines": { "node": ">=16" } @@ -7614,6 +7886,7 @@ "version": "10.1.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz", "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==", + "dev": true, "engines": { "node": "14 || >=16.14" } @@ -7622,6 +7895,7 @@ "version": "13.0.0", "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.0.tgz", "integrity": "sha512-7ThobcL8brtGo9CavByQrQi+23aIfgYU++wg4B87AIS8Rb2ZBt/MEaDqzA00Xwv/jUjAjYkLHjVolYuTLKda2A==", + "dev": true, "dependencies": { "@npmcli/agent": "^2.0.0", "cacache": "^18.0.0", @@ -7643,6 +7917,7 @@ "version": "9.0.3", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "dev": true, "dependencies": { "brace-expansion": "^2.0.1" }, @@ -7657,6 +7932,7 @@ "version": "7.0.4", "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, "engines": { "node": ">=16 || 14 >=14.17" } @@ -7665,6 +7941,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-2.0.1.tgz", "integrity": "sha512-D7V8PO9oaz7PWGLbCACuI1qEOsq7UKfLotx/C0Aet43fCUB/wfQ7DYeq2oR/svFJGYDHPr38SHATeaj/ZoKHKw==", + "dev": true, "dependencies": { "minipass": "^7.0.3" }, @@ -7676,6 +7953,7 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz", "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==", + "dev": true, "dependencies": { "minipass": "^7.0.3", "minipass-sized": "^1.0.3", @@ -7692,6 +7970,7 @@ "version": "10.0.1", "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-10.0.1.tgz", "integrity": "sha512-gg3/bHehQfZivQVfqIyy8wTdSymF9yTyP4CJifK73imyNMU8AIGQE2pUa7dNWfmMeG9cDVF2eehiRMv0LC1iAg==", + "dev": true, "dependencies": { "env-paths": "^2.2.0", "exponential-backoff": "^3.1.1", @@ -7715,6 +7994,7 @@ "version": "7.2.0", "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.2.0.tgz", "integrity": "sha512-CVDtwCdhYIvnAzFoJ6NJ6dX3oga9/HyciQDnG1vQDjSLMeKLJ4A93ZqYKDrgYSr1FBY5/hMYC+2VCi24pgpkGA==", + "dev": true, "dependencies": { "abbrev": "^2.0.0" }, @@ -7729,6 +8009,7 @@ "version": "6.0.0", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.0.tgz", "integrity": "sha512-UL7ELRVxYBHBgYEtZCXjxuD5vPxnmvMGq0jp/dGPKKrN7tfsBh2IY7TlJ15WWwdjRWD3RJbnsygUurTK3xkPkg==", + "dev": true, "dependencies": { "hosted-git-info": "^7.0.0", "is-core-module": "^2.8.1", @@ -7743,6 +8024,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz", "integrity": "sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==", + "dev": true, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -7751,6 +8033,7 @@ "version": "11.0.1", "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-11.0.1.tgz", "integrity": "sha512-M7s1BD4NxdAvBKUPqqRW957Xwcl/4Zvo8Aj+ANrzvIPzGJZElrH7Z//rSaec2ORcND6FHHLnZeY8qgTpXDMFQQ==", + "dev": true, "dependencies": { "hosted-git-info": "^7.0.0", "proc-log": "^3.0.0", @@ -7765,6 +8048,7 @@ "version": "8.0.1", "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-8.0.1.tgz", "integrity": "sha512-MQpL27ZrsJQ2kiAuQPpZb5LtJwydNRnI15QWXsf3WHERu4rzjRj6Zju/My2fov7tLuu3Gle/uoIX/DDZ3u4O4Q==", + "dev": true, "dependencies": { "ignore-walk": "^6.0.4" }, @@ -7776,6 +8060,7 @@ "version": "9.0.0", "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-9.0.0.tgz", "integrity": "sha512-VfvRSs/b6n9ol4Qb+bDwNGUXutpy76x6MARw/XssevE0TnctIKcmklJZM5Z7nqs5z5aW+0S63pgCNbpkUNNXBg==", + "dev": true, "dependencies": { "npm-install-checks": "^6.0.0", "npm-normalize-package-bin": "^3.0.0", @@ -7790,6 +8075,7 @@ "version": "16.1.0", "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-16.1.0.tgz", "integrity": "sha512-PQCELXKt8Azvxnt5Y85GseQDJJlglTFM9L9U9gkv2y4e9s0k3GVDdOx3YoB6gm2Do0hlkzC39iCGXby+Wve1Bw==", + "dev": true, "dependencies": { "make-fetch-happen": "^13.0.0", "minipass": "^7.0.2", @@ -7807,6 +8093,7 @@ "version": "17.0.5", "resolved": "https://registry.npmjs.org/pacote/-/pacote-17.0.5.tgz", "integrity": "sha512-TAE0m20zSDMnchPja9vtQjri19X3pZIyRpm2TJVeI+yU42leJBBDTRYhOcWFsPhaMxf+3iwQkFiKz16G9AEeeA==", + "dev": true, "dependencies": { "@npmcli/git": "^5.0.0", "@npmcli/installed-package-contents": "^2.0.1", @@ -7838,6 +8125,7 @@ "version": "7.0.0", "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-7.0.0.tgz", "integrity": "sha512-uL4Z10OKV4p6vbdvIXB+OzhInYtIozl/VxUBPgNkBuUi2DeRonnuspmaVAMcrkmfjKGNmRndyQAbE7/AmzGwFg==", + "dev": true, "dependencies": { "glob": "^10.2.2", "json-parse-even-better-errors": "^3.0.0", @@ -7852,6 +8140,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-2.1.0.tgz", "integrity": "sha512-kPIj+ZLkyI3QaM0qX8V/nSsweYND3W448pwkDgS6CQ74MfhEkIR8ToK5Iyx46KJYRjseVcD3Rp9zAmUAj6ZjPw==", + "dev": true, "dependencies": { "@sigstore/bundle": "^2.1.0", "@sigstore/protobuf-specs": "^0.2.1", @@ -7866,6 +8155,7 @@ "version": "10.0.5", "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.5.tgz", "integrity": "sha512-bSf16tAFkGeRlUNDjXu8FzaMQt6g2HZJrun7mtMbIPOddxt3GLMSz5VWUWcqTJUPfLEaDIepGxv+bYQW49596A==", + "dev": true, "dependencies": { "minipass": "^7.0.3" }, @@ -7877,6 +8167,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-2.1.0.tgz", "integrity": "sha512-eD7YPPjVlMzdggrOeE8zwoegUaG/rt6Bt3jwoQPunRiNVzgcCE009UDFJKJjG+Gk9wFu6W/Vi+P5d/5QpdD9jA==", + "dev": true, "dependencies": { "@tufjs/models": "2.0.0", "debug": "^4.3.4", @@ -7890,6 +8181,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz", "integrity": "sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g==", + "dev": true, "dependencies": { "unique-slug": "^4.0.0" }, @@ -7901,6 +8193,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-4.0.0.tgz", "integrity": "sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ==", + "dev": true, "dependencies": { "imurmurhash": "^0.1.4" }, @@ -7912,6 +8205,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", + "dev": true, "dependencies": { "isexe": "^3.1.1" }, @@ -7940,6 +8234,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/@npmcli/name-from-folder/-/name-from-folder-2.0.0.tgz", "integrity": "sha512-pwK+BfEBZJbKdNYpHHRTNBwBoqrN/iIMO0AiGvYsp3Hoaq0WbgGSWQR6SCldZovoDpY3yje5lkFUe6gsDgJ2vg==", + "dev": true, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -7948,6 +8243,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-3.0.0.tgz", "integrity": "sha512-gp8pRXC2oOxu0DUE1/M3bYtb1b3/DbJ5aM113+XJBgfXdussRAsX0YOrOhdd8WvnAR6auDBvJomGAkLKA5ydxA==", + "dev": true, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -7956,6 +8252,7 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-5.0.0.tgz", "integrity": "sha512-OI2zdYBLhQ7kpNPaJxiflofYIpkNLi+lnGdzqUOfRmCF3r2l1nadcjtCYMJKv/Utm/ZtlffaUuTiAktPHbc17g==", + "dev": true, "dependencies": { "@npmcli/git": "^5.0.0", "glob": "^10.2.2", @@ -7973,6 +8270,7 @@ "version": "5.0.3", "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-5.0.3.tgz", "integrity": "sha512-UZp9NwK+AynTrKvHn5k3KviW/hA5eENmFsu3iAPe7sWRt0lFUdsY/wXIYjpDFe7cdSNwOIzbObfwgt6eL5/2zw==", + "dev": true, "dependencies": { "@npmcli/promise-spawn": "^7.0.0", "lru-cache": "^10.0.1", @@ -7991,6 +8289,7 @@ "version": "7.0.0", "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-7.0.0.tgz", "integrity": "sha512-wBqcGsMELZna0jDblGd7UXgOby45TQaMWmbFwWX+SEotk4HV6zG2t6rT9siyLhPk4P6YYqgfL1UO8nMWDBVJXQ==", + "dev": true, "dependencies": { "which": "^4.0.0" }, @@ -8002,6 +8301,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, "dependencies": { "balanced-match": "^1.0.0" } @@ -8010,6 +8310,7 @@ "version": "10.3.10", "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", + "dev": true, "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^2.3.5", @@ -8031,6 +8332,7 @@ "version": "7.0.1", "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.1.tgz", "integrity": "sha512-+K84LB1DYwMHoHSgaOY/Jfhw3ucPmSET5v98Ke/HdNSw4a0UktWzyW1mjhjpuxxTqOOsfWT/7iVshHmVZ4IpOA==", + "dev": true, "dependencies": { "lru-cache": "^10.0.1" }, @@ -8042,6 +8344,7 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", + "dev": true, "engines": { "node": ">=16" } @@ -8050,6 +8353,7 @@ "version": "10.1.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz", "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==", + "dev": true, "engines": { "node": "14 || >=16.14" } @@ -8058,6 +8362,7 @@ "version": "9.0.3", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "dev": true, "dependencies": { "brace-expansion": "^2.0.1" }, @@ -8072,6 +8377,7 @@ "version": "7.0.4", "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, "engines": { "node": ">=16 || 14 >=14.17" } @@ -8080,6 +8386,7 @@ "version": "6.0.0", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.0.tgz", "integrity": "sha512-UL7ELRVxYBHBgYEtZCXjxuD5vPxnmvMGq0jp/dGPKKrN7tfsBh2IY7TlJ15WWwdjRWD3RJbnsygUurTK3xkPkg==", + "dev": true, "dependencies": { "hosted-git-info": "^7.0.0", "is-core-module": "^2.8.1", @@ -8094,6 +8401,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz", "integrity": "sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==", + "dev": true, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -8102,6 +8410,7 @@ "version": "11.0.1", "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-11.0.1.tgz", "integrity": "sha512-M7s1BD4NxdAvBKUPqqRW957Xwcl/4Zvo8Aj+ANrzvIPzGJZElrH7Z//rSaec2ORcND6FHHLnZeY8qgTpXDMFQQ==", + "dev": true, "dependencies": { "hosted-git-info": "^7.0.0", "proc-log": "^3.0.0", @@ -8116,6 +8425,7 @@ "version": "9.0.0", "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-9.0.0.tgz", "integrity": "sha512-VfvRSs/b6n9ol4Qb+bDwNGUXutpy76x6MARw/XssevE0TnctIKcmklJZM5Z7nqs5z5aW+0S63pgCNbpkUNNXBg==", + "dev": true, "dependencies": { "npm-install-checks": "^6.0.0", "npm-normalize-package-bin": "^3.0.0", @@ -8130,6 +8440,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", + "dev": true, "dependencies": { "isexe": "^3.1.1" }, @@ -8171,6 +8482,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/@npmcli/query/-/query-3.0.1.tgz", "integrity": "sha512-0jE8iHBogf/+bFDj+ju6/UMLbJ39c8h6nSe6qile+dB7PJ0iV3gNqcb2vtt6WWCBrxv9uAjzUT/8vroluulidA==", + "dev": true, "dependencies": { "postcss-selector-parser": "^6.0.10" }, @@ -8623,6 +8935,7 @@ "version": "0.11.0", "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "dev": true, "optional": true, "engines": { "node": ">=14" @@ -8907,22 +9220,174 @@ "win32" ] }, - "node_modules/@sigstore/bundle": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-1.1.0.tgz", - "integrity": "sha512-PFutXEy0SmQxYI4texPw3dd2KewuNqv7OuK1ZFtY2fM754yhvG2KdgwIhRnoEE2uHdtdGNQ8s0lb94dW9sELog==", + "node_modules/@rushstack/node-core-library": { + "version": "5.14.0", + "resolved": "https://registry.npmjs.org/@rushstack/node-core-library/-/node-core-library-5.14.0.tgz", + "integrity": "sha512-eRong84/rwQUlATGFW3TMTYVyqL1vfW9Lf10PH+mVGfIb9HzU3h5AASNIw+axnBLjnD0n3rT5uQBwu9fvzATrg==", "dev": true, + "license": "MIT", "dependencies": { - "@sigstore/protobuf-specs": "^0.2.0" + "ajv": "~8.13.0", + "ajv-draft-04": "~1.0.0", + "ajv-formats": "~3.0.1", + "fs-extra": "~11.3.0", + "import-lazy": "~4.0.0", + "jju": "~1.4.0", + "resolve": "~1.22.1", + "semver": "~7.5.4" }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "peerDependencies": { + "@types/node": "*" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + } } }, - "node_modules/@sigstore/protobuf-specs": { - "version": "0.2.1", + "node_modules/@rushstack/node-core-library/node_modules/ajv": { + "version": "8.13.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.13.0.tgz", + "integrity": "sha512-PRA911Blj99jR5RMeTunVbNXMF6Lp4vZXnk5GQjcnUWUTsrXtekg/pnmFFI2u/I36Y/2bITGS30GZCXei6uNkA==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.4.1" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/@rushstack/node-core-library/node_modules/ajv-draft-04": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/ajv-draft-04/-/ajv-draft-04-1.0.0.tgz", + "integrity": "sha512-mv00Te6nmYbRp5DCwclxtt7yV/joXJPGS7nM+97GdxvuttCOfgI3K4U25zboyeX0O+myI8ERluxQe5wljMmVIw==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "ajv": "^8.5.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } + } + }, + "node_modules/@rushstack/node-core-library/node_modules/ajv-formats": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-3.0.1.tgz", + "integrity": "sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ajv": "^8.0.0" + }, + "peerDependencies": { + "ajv": "^8.0.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } + } + }, + "node_modules/@rushstack/node-core-library/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true, + "license": "MIT" + }, + "node_modules/@rushstack/rig-package": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/@rushstack/rig-package/-/rig-package-0.5.3.tgz", + "integrity": "sha512-olzSSjYrvCNxUFZowevC3uz8gvKr3WTpHQ7BkpjtRpA3wK+T0ybep/SRUMfr195gBzJm5gaXw0ZMgjIyHqJUow==", + "dev": true, + "license": "MIT", + "dependencies": { + "resolve": "~1.22.1", + "strip-json-comments": "~3.1.1" + } + }, + "node_modules/@rushstack/terminal": { + "version": "0.15.4", + "resolved": "https://registry.npmjs.org/@rushstack/terminal/-/terminal-0.15.4.tgz", + "integrity": "sha512-OQSThV0itlwVNHV6thoXiAYZlQh4Fgvie2CzxFABsbO2MWQsI4zOh3LRNigYSTrmS+ba2j0B3EObakPzf/x6Zg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@rushstack/node-core-library": "5.14.0", + "supports-color": "~8.1.1" + }, + "peerDependencies": { + "@types/node": "*" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + } + } + }, + "node_modules/@rushstack/terminal/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, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/@rushstack/ts-command-line": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@rushstack/ts-command-line/-/ts-command-line-5.0.2.tgz", + "integrity": "sha512-+AkJDbu1GFMPIU8Sb7TLVXDv/Q7Mkvx+wAjEl8XiXVVq+p1FmWW6M3LYpJMmoHNckSofeMecgWg5lfMwNAAsEQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@rushstack/terminal": "0.15.4", + "@types/argparse": "1.0.38", + "argparse": "~1.0.9", + "string-argv": "~0.3.1" + } + }, + "node_modules/@rushstack/ts-command-line/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, + "license": "MIT", + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/@sigstore/bundle": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-1.1.0.tgz", + "integrity": "sha512-PFutXEy0SmQxYI4texPw3dd2KewuNqv7OuK1ZFtY2fM754yhvG2KdgwIhRnoEE2uHdtdGNQ8s0lb94dW9sELog==", + "dev": true, + "dependencies": { + "@sigstore/protobuf-specs": "^0.2.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@sigstore/protobuf-specs": { + "version": "0.2.1", "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.2.1.tgz", "integrity": "sha512-XTWVxnWJu+c1oCshMLwnKvz8ZQJJDVOlciMfgpJBQbThVjKTCG8dwyhgLngBD2KN0ap9F/gOV8rFDEx8uh7R2A==", + "dev": true, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -9353,6 +9818,13 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/@types/argparse": { + "version": "1.0.38", + "resolved": "https://registry.npmjs.org/@types/argparse/-/argparse-1.0.38.tgz", + "integrity": "sha512-ebDJ9b0e702Yr7pWgB0jzm+CX4Srzz8RcXtLJDJB+BSccqMa36uyH/zUsSYao5+BD1ytv3k3rPYCq4mAE1hsXA==", + "dev": true, + "license": "MIT" + }, "node_modules/@types/body-parser": { "version": "1.19.5", "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.5.tgz", @@ -9540,10 +10012,11 @@ "optional": true }, "node_modules/@types/lodash": { - "version": "4.17.6", - "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.6.tgz", - "integrity": "sha512-OpXEVoCKSS3lQqjx9GGGOapBeuW5eUboYHRlHP9urXPX25IKZ6AnP5ZRxtVf63iieUbsHxLn8NQ5Nlftc6yzAA==", - "dev": true + "version": "4.17.20", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.20.tgz", + "integrity": "sha512-H3MHACvFUEiujabxhaI/ImO6gUrd8oOurg7LQtS7mbwIXA/cUqWrvBsaeJ23aZEPk1TAYkurjfMbSELfoCXlGA==", + "dev": true, + "license": "MIT" }, "node_modules/@types/long": { "version": "4.0.2", @@ -10763,7 +11236,8 @@ "node_modules/@yarnpkg/lockfile": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", - "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==" + "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", + "dev": true }, "node_modules/@yarnpkg/parsers": { "version": "3.0.0-rc.46", @@ -10822,6 +11296,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", + "devOptional": true, "dependencies": { "event-target-shim": "^5.0.0" }, @@ -10939,6 +11414,7 @@ "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" @@ -11104,7 +11580,8 @@ "node_modules/aproba": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", - "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==" + "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", + "dev": true }, "node_modules/are-docs-informative": { "version": "0.0.2", @@ -11149,6 +11626,23 @@ "dequal": "^2.0.3" } }, + "node_modules/array-buffer-byte-length": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz", + "integrity": "sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "is-array-buffer": "^3.0.5" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/array-differ": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-3.0.0.tgz", @@ -11178,6 +11672,28 @@ "node": ">=8" } }, + "node_modules/arraybuffer.prototype.slice": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz", + "integrity": "sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "is-array-buffer": "^3.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/arrify": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", @@ -11211,6 +11727,16 @@ "integrity": "sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg==", "dev": true }, + "node_modules/async-function": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/async-function/-/async-function-1.0.0.tgz", + "integrity": "sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, "node_modules/async-retry": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/async-retry/-/async-retry-1.3.3.tgz", @@ -11272,6 +11798,22 @@ "postcss": "^8.1.0" } }, + "node_modules/available-typed-arrays": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/aws-sign2": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", @@ -11414,7 +11956,8 @@ "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==" + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "devOptional": true }, "node_modules/bare-events": { "version": "2.4.2", @@ -11427,6 +11970,7 @@ "version": "1.5.1", "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "devOptional": true, "funding": [ { "type": "github", @@ -11500,6 +12044,7 @@ "version": "4.0.3", "resolved": "https://registry.npmjs.org/bin-links/-/bin-links-4.0.3.tgz", "integrity": "sha512-obsRaULtJurnfox/MDwgq6Yo9kzbv1CPTk/1/s7Z/61Lezc8IKkFCOXNeVLXz0456WRzBQmSsDWlai2tIhBsfA==", + "dev": true, "dependencies": { "cmd-shim": "^6.0.0", "npm-normalize-package-bin": "^3.0.0", @@ -11514,6 +12059,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz", "integrity": "sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==", + "dev": true, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -11875,15 +12421,45 @@ } }, "node_modules/call-bind": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", - "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz", + "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==", + "dev": true, + "license": "MIT", "dependencies": { + "call-bind-apply-helpers": "^1.0.0", "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", "get-intrinsic": "^1.2.4", - "set-function-length": "^1.2.1" + "set-function-length": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/call-bound": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" }, "engines": { "node": ">= 0.4" @@ -12068,6 +12644,7 @@ "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" } @@ -12196,6 +12773,7 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/cmd-shim/-/cmd-shim-6.0.1.tgz", "integrity": "sha512-S9iI9y0nKR4hwEQsVWpyxld/6kRfGepGfzff83FcaiEBpmvlbA2nnGe7Cylgrx2f/p1P5S5wpRm9oL8z1PbS3Q==", + "dev": true, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -12257,6 +12835,7 @@ "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", + "dev": true, "bin": { "color-support": "bin.js" } @@ -12311,7 +12890,8 @@ "node_modules/common-ancestor-path": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/common-ancestor-path/-/common-ancestor-path-1.0.1.tgz", - "integrity": "sha512-L3sHRo1pXXEqX8VU28kfgUY+YGsk09hPqZiZmLacNib6XNTCM8ubYeT7ryXQw8asB1sKgcU5lkB7ONug08aB8w==" + "integrity": "sha512-L3sHRo1pXXEqX8VU28kfgUY+YGsk09hPqZiZmLacNib6XNTCM8ubYeT7ryXQw8asB1sKgcU5lkB7ONug08aB8w==", + "dev": true }, "node_modules/common-path-prefix": { "version": "3.0.0", @@ -12430,7 +13010,8 @@ "node_modules/console-control-strings": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==" + "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", + "dev": true }, "node_modules/content-disposition": { "version": "0.5.4", @@ -12746,9 +13327,10 @@ } }, "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==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "license": "MIT", "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -12830,6 +13412,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true, "bin": { "cssesc": "bin/cssesc" }, @@ -12858,6 +13441,60 @@ "node": ">=0.10" } }, + "node_modules/data-view-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", + "integrity": "sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-length": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz", + "integrity": "sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/inspect-js" + } + }, + "node_modules/data-view-byte-offset": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz", + "integrity": "sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/dateformat": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz", @@ -13128,6 +13765,7 @@ "version": "1.1.4", "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "dev": true, "dependencies": { "es-define-property": "^1.0.0", "es-errors": "^1.3.0", @@ -13149,6 +13787,24 @@ "node": ">=8" } }, + "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, + "license": "MIT", + "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/defu": { "version": "6.1.4", "resolved": "https://registry.npmjs.org/defu/-/defu-6.1.4.tgz", @@ -13166,7 +13822,8 @@ "node_modules/delegates": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==" + "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", + "dev": true }, "node_modules/depd": { "version": "2.0.0", @@ -13385,13 +14042,27 @@ "node": ">=12" } }, - "node_modules/duplexer": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", - "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", - "dev": true - }, - "node_modules/duplexify": { + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/duplexer": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", + "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", + "dev": true + }, + "node_modules/duplexify": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-4.1.2.tgz", "integrity": "sha512-fz3OjcNCHmRP12MJoZMPglx8m4rrFP8rovnk4vT8Fs+aonZoCwGg10dSsQsfP/E62eZcPTMSMP6686fu9Qlqtw==", @@ -13406,7 +14077,8 @@ "node_modules/eastasianwidth": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", - "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true }, "node_modules/ecc-jsbn": { "version": "0.1.2", @@ -13548,6 +14220,7 @@ "version": "2.2.1", "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "dev": true, "engines": { "node": ">=6" } @@ -13567,7 +14240,8 @@ "node_modules/err-code": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", - "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==" + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", + "dev": true }, "node_modules/errno": { "version": "0.1.8", @@ -13591,13 +14265,80 @@ "is-arrayish": "^0.2.1" } }, - "node_modules/es-define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", - "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", + "node_modules/es-abstract": { + "version": "1.24.0", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.24.0.tgz", + "integrity": "sha512-WSzPgsdLtTcQwm4CROfS5ju2Wa1QQcVeT37jFjYzdFz1r9ahadC8B8/a4qxJxM+09F18iumCdRmlr96ZYkQvEg==", + "dev": true, + "license": "MIT", "dependencies": { - "get-intrinsic": "^1.2.4" + "array-buffer-byte-length": "^1.0.2", + "arraybuffer.prototype.slice": "^1.0.4", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "data-view-buffer": "^1.0.2", + "data-view-byte-length": "^1.0.2", + "data-view-byte-offset": "^1.0.1", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "es-set-tostringtag": "^2.1.0", + "es-to-primitive": "^1.3.0", + "function.prototype.name": "^1.1.8", + "get-intrinsic": "^1.3.0", + "get-proto": "^1.0.1", + "get-symbol-description": "^1.1.0", + "globalthis": "^1.0.4", + "gopd": "^1.2.0", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "internal-slot": "^1.1.0", + "is-array-buffer": "^3.0.5", + "is-callable": "^1.2.7", + "is-data-view": "^1.0.2", + "is-negative-zero": "^2.0.3", + "is-regex": "^1.2.1", + "is-set": "^2.0.3", + "is-shared-array-buffer": "^1.0.4", + "is-string": "^1.1.1", + "is-typed-array": "^1.1.15", + "is-weakref": "^1.1.1", + "math-intrinsics": "^1.1.0", + "object-inspect": "^1.13.4", + "object-keys": "^1.1.1", + "object.assign": "^4.1.7", + "own-keys": "^1.0.1", + "regexp.prototype.flags": "^1.5.4", + "safe-array-concat": "^1.1.3", + "safe-push-apply": "^1.0.0", + "safe-regex-test": "^1.1.0", + "set-proto": "^1.0.0", + "stop-iteration-iterator": "^1.1.0", + "string.prototype.trim": "^1.2.10", + "string.prototype.trimend": "^1.0.9", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.3", + "typed-array-byte-length": "^1.0.3", + "typed-array-byte-offset": "^1.0.4", + "typed-array-length": "^1.0.7", + "unbox-primitive": "^1.1.0", + "which-typed-array": "^1.1.19" }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "license": "MIT", "engines": { "node": ">= 0.4" } @@ -13616,6 +14357,52 @@ "integrity": "sha512-cXLGjP0c4T3flZJKQSuziYoq7MlT+rnvfZjfp7h+I7K9BNX54kP9nyWvdbwjQ4u1iWbOL4u96fgeZLToQlZC7w==", "dev": true }, + "node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-set-tostringtag": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", + "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-to-primitive": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.3.0.tgz", + "integrity": "sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-callable": "^1.2.7", + "is-date-object": "^1.0.5", + "is-symbol": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/esbuild": { "version": "0.18.20", "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.20.tgz", @@ -14033,6 +14820,7 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", + "devOptional": true, "engines": { "node": ">=6" } @@ -14047,6 +14835,7 @@ "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" } @@ -14077,7 +14866,8 @@ "node_modules/exponential-backoff": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.1.tgz", - "integrity": "sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw==" + "integrity": "sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw==", + "dev": true }, "node_modules/express": { "version": "4.19.2", @@ -14740,12 +15530,30 @@ } } }, + "node_modules/for-each": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz", + "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-callable": "^1.2.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/foreground-child": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", - "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz", + "integrity": "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==", + "dev": true, + "license": "ISC", "dependencies": { - "cross-spawn": "^7.0.0", + "cross-spawn": "^7.0.6", "signal-exit": "^4.0.1" }, "engines": { @@ -14759,6 +15567,7 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, "engines": { "node": ">=14" }, @@ -14825,9 +15634,10 @@ "dev": true }, "node_modules/fs-extra": { - "version": "11.2.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz", - "integrity": "sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==", + "version": "11.3.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.1.tgz", + "integrity": "sha512-eXvGGwZ5CL17ZSwHWd3bbgk7UUpF6IFHtP57NYYakPvHOs8GDgDe5KJI36jIJzDkJ6eJjuzRA8eBQb6SkKue0g==", + "license": "MIT", "dependencies": { "graceful-fs": "^4.2.0", "jsonfile": "^6.0.1", @@ -14882,12 +15692,43 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/function.prototype.name": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.8.tgz", + "integrity": "sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "functions-have-names": "^1.2.3", + "hasown": "^2.0.2", + "is-callable": "^1.2.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/functional-red-black-tree": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", "integrity": "sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==", "optional": true }, + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/gauge": { "version": "4.0.4", "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", @@ -14985,15 +15826,21 @@ } }, "node_modules/get-intrinsic": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", - "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "license": "MIT", "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", "function-bind": "^1.1.2", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "hasown": "^2.0.0" + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" }, "engines": { "node": ">= 0.4" @@ -15041,6 +15888,19 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/get-stream": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.0.tgz", @@ -15053,6 +15913,24 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/get-symbol-description": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz", + "integrity": "sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/getpass": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", @@ -15240,6 +16118,23 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/globalthis": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-properties": "^1.2.1", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/globalyzer": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/globalyzer/-/globalyzer-0.1.0.tgz", @@ -15375,11 +16270,12 @@ } }, "node_modules/gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", - "dependencies": { - "get-intrinsic": "^1.1.3" + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "license": "MIT", + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -15463,6 +16359,19 @@ "node": ">=6" } }, + "node_modules/has-bigints": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz", + "integrity": "sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -15475,6 +16384,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "dev": true, "dependencies": { "es-define-property": "^1.0.0" }, @@ -15483,9 +16393,14 @@ } }, "node_modules/has-proto": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", - "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.2.0.tgz", + "integrity": "sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.0" + }, "engines": { "node": ">= 0.4" }, @@ -15494,9 +16409,26 @@ } }, "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==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "license": "MIT", + "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, + "license": "MIT", + "dependencies": { + "has-symbols": "^1.0.3" + }, "engines": { "node": ">= 0.4" }, @@ -15507,12 +16439,14 @@ "node_modules/has-unicode": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==" + "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", + "dev": true }, "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==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "license": "MIT", "dependencies": { "function-bind": "^1.1.2" }, @@ -15650,7 +16584,8 @@ "node_modules/http-cache-semantics": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", - "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==" + "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==", + "dev": true }, "node_modules/http-deceiver": { "version": "1.2.7", @@ -15790,6 +16725,7 @@ "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", @@ -15882,6 +16818,16 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/import-lazy": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-4.0.0.tgz", + "integrity": "sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, "node_modules/import-local": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", @@ -15905,6 +16851,7 @@ "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" } @@ -15913,6 +16860,7 @@ "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" } @@ -16024,10 +16972,26 @@ "node": ">=12.0.0" } }, + "node_modules/internal-slot": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz", + "integrity": "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "hasown": "^2.0.2", + "side-channel": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/ip": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz", - "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==" + "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==", + "dev": true }, "node_modules/ipaddr.js": { "version": "1.9.1", @@ -16037,12 +17001,66 @@ "node": ">= 0.10" } }, + "node_modules/is-array-buffer": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz", + "integrity": "sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" + }, + "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-async-function": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.1.1.tgz", + "integrity": "sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "async-function": "^1.0.0", + "call-bound": "^1.0.3", + "get-proto": "^1.0.1", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-bigint": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.1.0.tgz", + "integrity": "sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-bigints": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-binary-path": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", @@ -16055,6 +17073,23 @@ "node": ">=8" } }, + "node_modules/is-boolean-object": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.2.tgz", + "integrity": "sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-builtin-module": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.1.tgz", @@ -16070,8 +17105,21 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/is-ci": { - "version": "3.0.1", + "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, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-ci": { + "version": "3.0.1", "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.1.tgz", "integrity": "sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==", "dev": true, @@ -16086,6 +17134,7 @@ "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" }, @@ -16093,6 +17142,41 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-data-view": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.2.tgz", + "integrity": "sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "get-intrinsic": "^1.2.6", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz", + "integrity": "sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-deflate": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-deflate/-/is-deflate-1.0.0.tgz", @@ -16123,6 +17207,22 @@ "node": ">=0.10.0" } }, + "node_modules/is-finalizationregistry": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz", + "integrity": "sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "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", @@ -16131,6 +17231,25 @@ "node": ">=8" } }, + "node_modules/is-generator-function": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.0.tgz", + "integrity": "sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "get-proto": "^1.0.0", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.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", @@ -16197,7 +17316,34 @@ "node_modules/is-lambda": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", - "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==" + "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==", + "dev": true + }, + "node_modules/is-map": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", + "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-negative-zero": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", + "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/is-number": { "version": "7.0.0", @@ -16208,6 +17354,23 @@ "node": ">=0.12.0" } }, + "node_modules/is-number-object": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.1.tgz", + "integrity": "sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-obj": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", @@ -16260,6 +17423,54 @@ "@types/estree": "*" } }, + "node_modules/is-regex": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz", + "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-set": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", + "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz", + "integrity": "sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-ssh": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/is-ssh/-/is-ssh-1.4.0.tgz", @@ -16284,6 +17495,41 @@ "integrity": "sha512-xj0XPvmr7bQFTvirqnFr50o0hQIh6ZItDqloxt5aJrR4NQsYeSsyFQERYGCAzfindAcnKjINnwEEgLx4IqVzQw==", "optional": true }, + "node_modules/is-string": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz", + "integrity": "sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz", + "integrity": "sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "has-symbols": "^1.1.0", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-text-path": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-text-path/-/is-text-path-1.0.1.tgz", @@ -16296,6 +17542,22 @@ "node": ">=0.10.0" } }, + "node_modules/is-typed-array": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz", + "integrity": "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "which-typed-array": "^1.1.16" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", @@ -16314,6 +17576,52 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/is-weakmap": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", + "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakref": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.1.1.tgz", + "integrity": "sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakset": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.4.tgz", + "integrity": "sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-what": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/is-what/-/is-what-3.14.1.tgz", @@ -16396,6 +17704,7 @@ "version": "2.3.6", "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", + "dev": true, "dependencies": { "@isaacs/cliui": "^8.0.2" }, @@ -16489,6 +17798,13 @@ "jiti": "bin/jiti.js" } }, + "node_modules/jju": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/jju/-/jju-1.4.0.tgz", + "integrity": "sha512-8wb9Yw966OSxApiCt0K3yNJL8pnNeIv+OEq2YMidz4FKP6nonSRoOXc80iXY4JaN2FC11B9qsNmDsm+ZOfMROA==", + "dev": true, + "license": "MIT" + }, "node_modules/jose": { "version": "4.15.4", "resolved": "https://registry.npmjs.org/jose/-/jose-4.15.4.tgz", @@ -16614,6 +17930,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.1.tgz", "integrity": "sha512-aatBvbL26wVUCLmbWdCpeu9iF5wOyWpagiKkInA+kfws3sWdBrTnsvN2CKcyCYyUrc7rebNBlK6+kteg7ksecg==", + "dev": true, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -16640,6 +17957,7 @@ "version": "1.1.4", "resolved": "https://registry.npmjs.org/json-stringify-nice/-/json-stringify-nice-1.1.4.tgz", "integrity": "sha512-5Z5RFW63yxReJ7vANgW6eZFGWaQvnPE3WNmZoOJrSkGju2etKA2L5rrOa1sm877TVTFt57A80BH1bArcmlLfPw==", + "dev": true, "funding": { "url": "https://github.com/sponsors/isaacs" } @@ -16683,6 +18001,7 @@ "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" ] @@ -16761,12 +18080,14 @@ "node_modules/just-diff": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/just-diff/-/just-diff-6.0.2.tgz", - "integrity": "sha512-S59eriX5u3/QhMNq3v/gm8Kd0w8OS6Tz2FS1NG4blv+z0MuQcBRJyFWjdovM0Rad4/P4aUPFtnkNjMjyMlMSYA==" + "integrity": "sha512-S59eriX5u3/QhMNq3v/gm8Kd0w8OS6Tz2FS1NG4blv+z0MuQcBRJyFWjdovM0Rad4/P4aUPFtnkNjMjyMlMSYA==", + "dev": true }, "node_modules/just-diff-apply": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/just-diff-apply/-/just-diff-apply-5.5.0.tgz", - "integrity": "sha512-OYTthRfSh55WOItVqwpefPtNt2VdKsq5AnAK6apdtR6yCH8pr0CmSr710J0Mf+WdQy7K/OzMy7K2MgAfdQURDw==" + "integrity": "sha512-OYTthRfSh55WOItVqwpefPtNt2VdKsq5AnAK6apdtR6yCH8pr0CmSr710J0Mf+WdQy7K/OzMy7K2MgAfdQURDw==", + "dev": true }, "node_modules/jwa": { "version": "2.0.0", @@ -17450,7 +18771,8 @@ "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "devOptional": true + "devOptional": true, + "license": "MIT" }, "node_modules/lodash-es": { "version": "4.17.21", @@ -17733,6 +19055,15 @@ "node": ">= 12" } }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, "node_modules/mdn-data": { "version": "2.0.30", "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.30.tgz", @@ -17766,6 +19097,15 @@ "node": ">= 4.0.0" } }, + "node_modules/memorystream": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", + "integrity": "sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==", + "dev": true, + "engines": { + "node": ">= 0.10.0" + } + }, "node_modules/meow": { "version": "8.1.2", "resolved": "https://registry.npmjs.org/meow/-/meow-8.1.2.tgz", @@ -18133,6 +19473,7 @@ "version": "1.0.5", "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "dev": true, "dependencies": { "minipass": "^3.0.0" }, @@ -18144,6 +19485,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==", + "dev": true, "dependencies": { "jsonparse": "^1.3.1", "minipass": "^3.0.0" @@ -18153,6 +19495,7 @@ "version": "1.2.4", "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "dev": true, "dependencies": { "minipass": "^3.0.0" }, @@ -18164,6 +19507,7 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", + "dev": true, "dependencies": { "minipass": "^3.0.0" }, @@ -18556,6 +19900,13 @@ "node-gyp-build": "^4.2.2" } }, + "node_modules/nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", + "dev": true, + "license": "MIT" + }, "node_modules/node-addon-api": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz", @@ -19146,34 +20497,211 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "node_modules/npm-run-all": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/npm-run-all/-/npm-run-all-4.1.5.tgz", + "integrity": "sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ==", "dev": true, + "license": "MIT", "dependencies": { - "path-key": "^3.0.0" + "ansi-styles": "^3.2.1", + "chalk": "^2.4.1", + "cross-spawn": "^6.0.5", + "memorystream": "^0.3.1", + "minimatch": "^3.0.4", + "pidtree": "^0.3.0", + "read-pkg": "^3.0.0", + "shell-quote": "^1.6.1", + "string.prototype.padend": "^3.0.0" + }, + "bin": { + "npm-run-all": "bin/npm-run-all/index.js", + "run-p": "bin/run-p/index.js", + "run-s": "bin/run-s/index.js" }, "engines": { - "node": ">=8" + "node": ">= 4" } }, - "node_modules/npmlog": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", - "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", + "node_modules/npm-run-all/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "dev": true, + "license": "MIT", "dependencies": { - "are-we-there-yet": "^3.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^4.0.3", - "set-blocking": "^2.0.0" + "color-convert": "^1.9.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">=4" } }, - "node_modules/nth-check": { + "node_modules/npm-run-all/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/npm-run-all/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/npm-run-all/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true, + "license": "MIT" + }, + "node_modules/npm-run-all/node_modules/cross-spawn": { + "version": "6.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.6.tgz", + "integrity": "sha512-VqCUuhcd1iB+dsv8gxPttb5iZh/D0iubSP21g36KXdEuf6I5JiioesUVjpCdHV9MZRUfVFlvwtIUyPfxo5trtw==", + "dev": true, + "license": "MIT", + "dependencies": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + }, + "engines": { + "node": ">=4.8" + } + }, + "node_modules/npm-run-all/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, + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/npm-run-all/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/npm-run-all/node_modules/path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/npm-run-all/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/npm-run-all/node_modules/shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", + "dev": true, + "license": "MIT", + "dependencies": { + "shebang-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-run-all/node_modules/shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-run-all/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/npm-run-all/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npmlog": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", + "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", + "dev": true, + "dependencies": { + "are-we-there-yet": "^3.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^4.0.3", + "set-blocking": "^2.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/nth-check": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", @@ -19488,9 +21016,41 @@ } }, "node_modules/object-inspect": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.2.tgz", - "integrity": "sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==", + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", + "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz", + "integrity": "sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0", + "has-symbols": "^1.1.0", + "object-keys": "^1.1.1" + }, "engines": { "node": ">= 0.4" }, @@ -19626,6 +21186,24 @@ "node": ">=0.10.0" } }, + "node_modules/own-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/own-keys/-/own-keys-1.0.1.tgz", + "integrity": "sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==", + "dev": true, + "license": "MIT", + "dependencies": { + "get-intrinsic": "^1.2.6", + "object-keys": "^1.1.1", + "safe-push-apply": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/p-finally": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", @@ -19669,6 +21247,7 @@ "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" }, @@ -19774,6 +21353,13 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/package-json-from-dist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", + "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==", + "dev": true, + "license": "BlueOak-1.0.0" + }, "node_modules/pacote": { "version": "15.2.0", "resolved": "https://registry.npmjs.org/pacote/-/pacote-15.2.0.tgz", @@ -20053,6 +21639,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/parse-conflict-json/-/parse-conflict-json-3.0.1.tgz", "integrity": "sha512-01TvEktc68vwbJOtWZluyWeVGWjP+bZwXtPDMQVbBKzbJ/vZBif0L69KH1+cHv1SZ6e0FKLvjyHe8mqsIqYOmw==", + "dev": true, "dependencies": { "json-parse-even-better-errors": "^3.0.0", "just-diff": "^6.0.0", @@ -20225,6 +21812,7 @@ "version": "1.10.1", "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.1.tgz", "integrity": "sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==", + "dev": true, "dependencies": { "lru-cache": "^9.1.1 || ^10.0.0", "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" @@ -20240,6 +21828,7 @@ "version": "10.1.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz", "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==", + "dev": true, "engines": { "node": "14 || >=16.14" } @@ -20248,6 +21837,7 @@ "version": "7.0.4", "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, "engines": { "node": ">=16 || 14 >=14.17" } @@ -20360,6 +21950,19 @@ "url": "https://github.com/sponsors/jonschlinkert" } }, + "node_modules/pidtree": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.3.1.tgz", + "integrity": "sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA==", + "dev": true, + "license": "MIT", + "bin": { + "pidtree": "bin/pidtree.js" + }, + "engines": { + "node": ">=0.10" + } + }, "node_modules/pify": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/pify/-/pify-5.0.0.tgz", @@ -20551,6 +22154,16 @@ "node": ">= 0.4.0" } }, + "node_modules/possible-typed-array-names": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz", + "integrity": "sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, "node_modules/postcss": { "version": "8.4.31", "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", @@ -20664,6 +22277,7 @@ "version": "6.0.13", "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.13.tgz", "integrity": "sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==", + "dev": true, "dependencies": { "cssesc": "^3.0.0", "util-deprecate": "^1.0.2" @@ -20782,6 +22396,7 @@ "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" } @@ -20802,6 +22417,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/promise-all-reject-late/-/promise-all-reject-late-1.0.1.tgz", "integrity": "sha512-vuf0Lf0lOxyQREH7GDIOUMLS7kz+gs8i6B+Yi8dC68a2sychGrHTJYghMBD6k7eUcH0H5P73EckCA48xijWqXw==", + "dev": true, "funding": { "url": "https://github.com/sponsors/isaacs" } @@ -20810,6 +22426,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/promise-call-limit/-/promise-call-limit-1.0.2.tgz", "integrity": "sha512-1vTUnfI2hzui8AEIixbdAJlFY4LFDXqQswy/2eOlThAscXCY4It8FdVuI0fMJGAB2aWGbdQf/gv0skKYXmdrHA==", + "dev": true, "funding": { "url": "https://github.com/sponsors/isaacs" } @@ -20817,12 +22434,14 @@ "node_modules/promise-inflight": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", - "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==" + "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==", + "dev": true }, "node_modules/promise-retry": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", + "dev": true, "dependencies": { "err-code": "^2.0.2", "retry": "^0.12.0" @@ -20835,6 +22454,7 @@ "version": "0.12.0", "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", + "dev": true, "engines": { "node": ">= 4" } @@ -21216,6 +22836,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/read-cmd-shim/-/read-cmd-shim-4.0.0.tgz", "integrity": "sha512-yILWifhaSEEytfXI76kB9xEEiG1AiozaCJZ83A87ytjRiN+jVibXjedjCRNjoZviinhG+4UkalO3mWTd8u5O0Q==", + "dev": true, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -21239,6 +22860,7 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-3.0.2.tgz", "integrity": "sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw==", + "dev": true, "dependencies": { "json-parse-even-better-errors": "^3.0.0", "npm-normalize-package-bin": "^3.0.0" @@ -21251,6 +22873,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz", "integrity": "sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==", + "dev": true, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -21598,6 +23221,29 @@ "dev": true, "peer": true }, + "node_modules/reflect.getprototypeof": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz", + "integrity": "sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.9", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.7", + "get-proto": "^1.0.1", + "which-builtin-type": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/regenerate": { "version": "1.4.2", "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", @@ -21637,6 +23283,27 @@ "integrity": "sha512-TVILVSz2jY5D47F4mA4MppkBrafEaiUWJO/TcZHEIuI13AqoZMkK1WMA4Om1YkYbTx+9Ki1/tSUXbceyr9saRg==", "dev": true }, + "node_modules/regexp.prototype.flags": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz", + "integrity": "sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "set-function-name": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/regexpu-core": { "version": "5.3.2", "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz", @@ -21930,6 +23597,33 @@ "node": ">=6" } }, + "node_modules/safe-array-concat": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.3.tgz", + "integrity": "sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "get-intrinsic": "^1.2.6", + "has-symbols": "^1.1.0", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">=0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-array-concat/node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true, + "license": "MIT" + }, "node_modules/safe-buffer": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", @@ -21949,18 +23643,60 @@ } ] }, - "node_modules/safe-stable-stringify": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz", - "integrity": "sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==", + "node_modules/safe-push-apply": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-push-apply/-/safe-push-apply-1.0.0.tgz", + "integrity": "sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==", "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "isarray": "^2.0.5" + }, "engines": { - "node": ">=10" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "node_modules/safe-push-apply/node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true, + "license": "MIT" + }, + "node_modules/safe-regex-test": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz", + "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "is-regex": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-stable-stringify": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz", + "integrity": "sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "node_modules/sass": { @@ -22276,7 +24012,8 @@ "node_modules/set-blocking": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==" + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", + "dev": true }, "node_modules/set-cookie-parser": { "version": "2.7.0", @@ -22288,6 +24025,7 @@ "version": "1.2.2", "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "dev": true, "dependencies": { "define-data-property": "^1.1.4", "es-errors": "^1.3.0", @@ -22300,6 +24038,37 @@ "node": ">= 0.4" } }, + "node_modules/set-function-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-proto": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/set-proto/-/set-proto-1.0.0.tgz", + "integrity": "sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/setprototypeof": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", @@ -22397,14 +24166,69 @@ } }, "node_modules/side-channel": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", - "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", + "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", + "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.4", - "object-inspect": "^1.13.1" + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-list": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", + "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" }, "engines": { "node": ">= 0.4" @@ -22714,6 +24538,7 @@ "version": "4.2.0", "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "dev": true, "engines": { "node": ">= 6.0.0", "npm": ">= 3.0.0" @@ -22743,6 +24568,7 @@ "version": "2.7.1", "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.1.tgz", "integrity": "sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==", + "dev": true, "dependencies": { "ip": "^2.0.0", "smart-buffer": "^4.2.0" @@ -22851,6 +24677,7 @@ "version": "3.2.0", "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", + "dev": true, "dependencies": { "spdx-expression-parse": "^3.0.0", "spdx-license-ids": "^3.0.0" @@ -22860,6 +24687,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dev": true, "dependencies": { "spdx-exceptions": "^2.1.0", "spdx-license-ids": "^3.0.0" @@ -22868,7 +24696,8 @@ "node_modules/spdx-exceptions": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==" + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", + "dev": true }, "node_modules/spdx-expression-parse": { "version": "4.0.0", @@ -22883,7 +24712,8 @@ "node_modules/spdx-license-ids": { "version": "3.0.16", "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.16.tgz", - "integrity": "sha512-eWN+LnM3GR6gPu35WxNgbGl8rmY1AEmoMDvL/QD6zYmPWgywxWqJWNdLGT+ke8dKNWrcYgYjPpG5gbTfghP8rw==" + "integrity": "sha512-eWN+LnM3GR6gPu35WxNgbGl8rmY1AEmoMDvL/QD6zYmPWgywxWqJWNdLGT+ke8dKNWrcYgYjPpG5gbTfghP8rw==", + "dev": true }, "node_modules/spdy": { "version": "4.0.2", @@ -23007,6 +24837,20 @@ "graceful-fs": "^4.1.3" } }, + "node_modules/stop-iteration-iterator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz", + "integrity": "sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "internal-slot": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/stream-events": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/stream-events/-/stream-events-1.0.5.tgz", @@ -23049,10 +24893,21 @@ "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==", + "devOptional": true, "dependencies": { "safe-buffer": "~5.2.0" } }, + "node_modules/string-argv": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.2.tgz", + "integrity": "sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.6.19" + } + }, "node_modules/string-width": { "version": "4.2.3", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", @@ -23071,6 +24926,7 @@ "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", @@ -23080,6 +24936,84 @@ "node": ">=8" } }, + "node_modules/string.prototype.padend": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.6.tgz", + "integrity": "sha512-XZpspuSB7vJWhvJc9DLSlrXl1mcA2BdoY5jjnS135ydXqLoqhs96JjDtCkjJEQHvfqZIp9hBuBMgI589peyx9Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trim": { + "version": "1.2.10", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz", + "integrity": "sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "define-data-property": "^1.1.4", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-object-atoms": "^1.0.0", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz", + "integrity": "sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", + "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", @@ -23096,6 +25030,7 @@ "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" }, @@ -23287,6 +25222,7 @@ "version": "6.1.11", "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz", "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==", + "dev": true, "dependencies": { "chownr": "^2.0.0", "fs-minipass": "^2.0.0", @@ -23595,7 +25531,8 @@ "node_modules/toml": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/toml/-/toml-3.0.0.tgz", - "integrity": "sha512-y/mWCZinnvxjTKYhJ+pYxwD0mRLVvOtdS2Awbgxln6iEnt4rk0yBxeSBHkGJcPucRiG0e55mwWp+g/05rsrd6w==" + "integrity": "sha512-y/mWCZinnvxjTKYhJ+pYxwD0mRLVvOtdS2Awbgxln6iEnt4rk0yBxeSBHkGJcPucRiG0e55mwWp+g/05rsrd6w==", + "dev": true }, "node_modules/toposort": { "version": "2.0.2", @@ -23654,6 +25591,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/treeverse/-/treeverse-3.0.0.tgz", "integrity": "sha512-gcANaAnd2QDZFmHFEOF4k7uc1J/6a6z3DJMd/QwEyxLoKGiptJRwid582r7QIsFlFMIZ3SnxfS52S4hm2DHkuQ==", + "dev": true, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -24178,6 +26116,84 @@ "node": ">= 0.6" } }, + "node_modules/typed-array-buffer": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz", + "integrity": "sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/typed-array-byte-length": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz", + "integrity": "sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "for-each": "^0.3.3", + "gopd": "^1.2.0", + "has-proto": "^1.2.0", + "is-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-byte-offset": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz", + "integrity": "sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "for-each": "^0.3.3", + "gopd": "^1.2.0", + "has-proto": "^1.2.0", + "is-typed-array": "^1.1.15", + "reflect.getprototypeof": "^1.0.9" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-length": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.7.tgz", + "integrity": "sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "is-typed-array": "^1.1.13", + "possible-typed-array-names": "^1.0.0", + "reflect.getprototypeof": "^1.0.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/typed-assert": { "version": "1.0.9", "resolved": "https://registry.npmjs.org/typed-assert/-/typed-assert-1.0.9.tgz", @@ -24225,6 +26241,25 @@ "node": ">=0.8.0" } }, + "node_modules/unbox-primitive": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.1.0.tgz", + "integrity": "sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-bigints": "^1.0.2", + "has-symbols": "^1.1.0", + "which-boxed-primitive": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/underscore": { "version": "1.13.6", "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.13.6.tgz", @@ -24420,7 +26455,8 @@ "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==" + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "devOptional": true }, "node_modules/utils-merge": { "version": "1.0.1", @@ -24457,6 +26493,7 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, "dependencies": { "spdx-correct": "^3.0.0", "spdx-expression-parse": "^3.0.0" @@ -24466,6 +26503,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dev": true, "dependencies": { "spdx-exceptions": "^2.1.0", "spdx-license-ids": "^3.0.0" @@ -24740,7 +26778,8 @@ "node_modules/walk-up-path": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/walk-up-path/-/walk-up-path-3.0.1.tgz", - "integrity": "sha512-9YlCL/ynK3CTlrSRrDxZvUauLzAswPCrsaCgilqFevUYpeEW0/3ScEjaa3kbW/T0ghhkEr7mv+fpjqn1Y1YuTA==" + "integrity": "sha512-9YlCL/ynK3CTlrSRrDxZvUauLzAswPCrsaCgilqFevUYpeEW0/3ScEjaa3kbW/T0ghhkEr7mv+fpjqn1Y1YuTA==", + "dev": true }, "node_modules/watchpack": { "version": "2.4.0", @@ -25126,20 +27165,117 @@ "node": ">= 8" } }, - "node_modules/wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", + "node_modules/which-boxed-primitive": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz", + "integrity": "sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==", + "dev": true, + "license": "MIT", "dependencies": { - "string-width": "^1.0.2 || 2 || 3 || 4" + "is-bigint": "^1.1.0", + "is-boolean-object": "^1.2.1", + "is-number-object": "^1.1.1", + "is-string": "^1.1.1", + "is-symbol": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/wildcard": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.1.tgz", - "integrity": "sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==", - "dev": true - }, + "node_modules/which-builtin-type": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.1.tgz", + "integrity": "sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "function.prototype.name": "^1.1.6", + "has-tostringtag": "^1.0.2", + "is-async-function": "^2.0.0", + "is-date-object": "^1.1.0", + "is-finalizationregistry": "^1.1.0", + "is-generator-function": "^1.0.10", + "is-regex": "^1.2.1", + "is-weakref": "^1.0.2", + "isarray": "^2.0.5", + "which-boxed-primitive": "^1.1.0", + "which-collection": "^1.0.2", + "which-typed-array": "^1.1.16" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-builtin-type/node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true, + "license": "MIT" + }, + "node_modules/which-collection": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", + "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-map": "^2.0.3", + "is-set": "^2.0.3", + "is-weakmap": "^2.0.2", + "is-weakset": "^2.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-typed-array": { + "version": "1.1.19", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.19.tgz", + "integrity": "sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==", + "dev": true, + "license": "MIT", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "for-each": "^0.3.5", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/wide-align": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", + "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", + "dev": true, + "dependencies": { + "string-width": "^1.0.2 || 2 || 3 || 4" + } + }, + "node_modules/wildcard": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.1.tgz", + "integrity": "sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==", + "dev": true + }, "node_modules/word-wrap": { "version": "1.2.5", "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", @@ -25179,6 +27315,7 @@ "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", @@ -25201,6 +27338,7 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz", "integrity": "sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==", + "dev": true, "dependencies": { "imurmurhash": "^0.1.4", "signal-exit": "^4.0.1" @@ -25213,6 +27351,7 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, "engines": { "node": ">=14" }, @@ -25652,7 +27791,7 @@ } }, "packages/@apphosting/build": { - "version": "0.1.0", + "version": "0.1.1", "license": "Apache-2.0", "dependencies": { "@apphosting/discover": "*", @@ -25666,18 +27805,7 @@ "build": "dist/bin/build.js" }, "devDependencies": { - "@types/commander": "*", - "@types/fs-extra": "*", - "@types/mocha": "*", - "@types/tmp": "*", - "mocha": "*", - "next": "~14.0.0", - "semver": "*", - "tmp": "*", - "ts-mocha": "*", - "ts-node": "*", - "typescript": "*", - "verdaccio": "^5.30.3" + "@types/commander": "*" } }, "packages/@apphosting/build/node_modules/hosted-git-info": { @@ -25960,32 +28088,519 @@ } }, "packages/@apphosting/discover": { - "version": "0.1.0", + "version": "0.2.3", "license": "Apache-2.0", - "dependencies": { + "bin": { + "discover": "dist/bin/discover.cjs" + }, + "devDependencies": { + "@microsoft/api-extractor": "^7.52.11", "@npmcli/arborist": "^7.2.1", + "@types/commander": "*", + "@types/lodash": "^4.17.20", + "@types/npmcli__arborist": "*", + "@types/yarnpkg__lockfile": "*", "@yarnpkg/lockfile": "^1.1.0", + "@yarnpkg/parsers": "^3.0.3", "colorette": "^2.0.20", "commander": "^11.1.0", + "esbuild": "^0.25.9", "fs-extra": "^11.1.1", + "glob": "^11.0.3", + "lodash": "^4.17.21", "npm-pick-manifest": "^9.0.0", + "npm-run-all": "*", "toml": "^3.0.0", "ts-node": "^10.9.1", "yaml": "^2.3.4" + } + }, + "packages/@apphosting/discover/node_modules/@esbuild/aix-ppc64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.9.tgz", + "integrity": "sha512-OaGtL73Jck6pBKjNIe24BnFE6agGl+6KxDtTfHhy1HmhthfKouEcOhqpSL64K4/0WCtbKFLOdzD/44cJ4k9opA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "packages/@apphosting/discover/node_modules/@esbuild/android-arm": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.9.tgz", + "integrity": "sha512-5WNI1DaMtxQ7t7B6xa572XMXpHAaI/9Hnhk8lcxF4zVN4xstUgTlvuGDorBguKEnZO70qwEcLpfifMLoxiPqHQ==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/@apphosting/discover/node_modules/@esbuild/android-arm64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.9.tgz", + "integrity": "sha512-IDrddSmpSv51ftWslJMvl3Q2ZT98fUSL2/rlUXuVqRXHCs5EUF1/f+jbjF5+NG9UffUDMCiTyh8iec7u8RlTLg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/@apphosting/discover/node_modules/@esbuild/android-x64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.9.tgz", + "integrity": "sha512-I853iMZ1hWZdNllhVZKm34f4wErd4lMyeV7BLzEExGEIZYsOzqDWDf+y082izYUE8gtJnYHdeDpN/6tUdwvfiw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "packages/@apphosting/discover/node_modules/@esbuild/darwin-arm64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.9.tgz", + "integrity": "sha512-XIpIDMAjOELi/9PB30vEbVMs3GV1v2zkkPnuyRRURbhqjyzIINwj+nbQATh4H9GxUgH1kFsEyQMxwiLFKUS6Rg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "packages/@apphosting/discover/node_modules/@esbuild/darwin-x64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.9.tgz", + "integrity": "sha512-jhHfBzjYTA1IQu8VyrjCX4ApJDnH+ez+IYVEoJHeqJm9VhG9Dh2BYaJritkYK3vMaXrf7Ogr/0MQ8/MeIefsPQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "packages/@apphosting/discover/node_modules/@esbuild/freebsd-arm64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.9.tgz", + "integrity": "sha512-z93DmbnY6fX9+KdD4Ue/H6sYs+bhFQJNCPZsi4XWJoYblUqT06MQUdBCpcSfuiN72AbqeBFu5LVQTjfXDE2A6Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/@apphosting/discover/node_modules/@esbuild/freebsd-x64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.9.tgz", + "integrity": "sha512-mrKX6H/vOyo5v71YfXWJxLVxgy1kyt1MQaD8wZJgJfG4gq4DpQGpgTB74e5yBeQdyMTbgxp0YtNj7NuHN0PoZg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/@apphosting/discover/node_modules/@esbuild/linux-arm": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.9.tgz", + "integrity": "sha512-HBU2Xv78SMgaydBmdor38lg8YDnFKSARg1Q6AT0/y2ezUAKiZvc211RDFHlEZRFNRVhcMamiToo7bDx3VEOYQw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/@apphosting/discover/node_modules/@esbuild/linux-arm64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.9.tgz", + "integrity": "sha512-BlB7bIcLT3G26urh5Dmse7fiLmLXnRlopw4s8DalgZ8ef79Jj4aUcYbk90g8iCa2467HX8SAIidbL7gsqXHdRw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/@apphosting/discover/node_modules/@esbuild/linux-ia32": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.9.tgz", + "integrity": "sha512-e7S3MOJPZGp2QW6AK6+Ly81rC7oOSerQ+P8L0ta4FhVi+/j/v2yZzx5CqqDaWjtPFfYz21Vi1S0auHrap3Ma3A==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/@apphosting/discover/node_modules/@esbuild/linux-loong64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.9.tgz", + "integrity": "sha512-Sbe10Bnn0oUAB2AalYztvGcK+o6YFFA/9829PhOCUS9vkJElXGdphz0A3DbMdP8gmKkqPmPcMJmJOrI3VYB1JQ==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/@apphosting/discover/node_modules/@esbuild/linux-mips64el": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.9.tgz", + "integrity": "sha512-YcM5br0mVyZw2jcQeLIkhWtKPeVfAerES5PvOzaDxVtIyZ2NUBZKNLjC5z3/fUlDgT6w89VsxP2qzNipOaaDyA==", + "cpu": [ + "mips64el" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/@apphosting/discover/node_modules/@esbuild/linux-ppc64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.9.tgz", + "integrity": "sha512-++0HQvasdo20JytyDpFvQtNrEsAgNG2CY1CLMwGXfFTKGBGQT3bOeLSYE2l1fYdvML5KUuwn9Z8L1EWe2tzs1w==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/@apphosting/discover/node_modules/@esbuild/linux-riscv64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.9.tgz", + "integrity": "sha512-uNIBa279Y3fkjV+2cUjx36xkx7eSjb8IvnL01eXUKXez/CBHNRw5ekCGMPM0BcmqBxBcdgUWuUXmVWwm4CH9kg==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/@apphosting/discover/node_modules/@esbuild/linux-s390x": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.9.tgz", + "integrity": "sha512-Mfiphvp3MjC/lctb+7D287Xw1DGzqJPb/J2aHHcHxflUo+8tmN/6d4k6I2yFR7BVo5/g7x2Monq4+Yew0EHRIA==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/@apphosting/discover/node_modules/@esbuild/linux-x64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.9.tgz", + "integrity": "sha512-iSwByxzRe48YVkmpbgoxVzn76BXjlYFXC7NvLYq+b+kDjyyk30J0JY47DIn8z1MO3K0oSl9fZoRmZPQI4Hklzg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "packages/@apphosting/discover/node_modules/@esbuild/netbsd-x64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.9.tgz", + "integrity": "sha512-RLLdkflmqRG8KanPGOU7Rpg829ZHu8nFy5Pqdi9U01VYtG9Y0zOG6Vr2z4/S+/3zIyOxiK6cCeYNWOFR9QP87g==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/@apphosting/discover/node_modules/@esbuild/openbsd-x64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.9.tgz", + "integrity": "sha512-1MkgTCuvMGWuqVtAvkpkXFmtL8XhWy+j4jaSO2wxfJtilVCi0ZE37b8uOdMItIHz4I6z1bWWtEX4CJwcKYLcuA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "packages/@apphosting/discover/node_modules/@esbuild/sunos-x64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.9.tgz", + "integrity": "sha512-WjH4s6hzo00nNezhp3wFIAfmGZ8U7KtrJNlFMRKxiI9mxEK1scOMAaa9i4crUtu+tBr+0IN6JCuAcSBJZfnphw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "packages/@apphosting/discover/node_modules/@esbuild/win32-arm64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.9.tgz", + "integrity": "sha512-mGFrVJHmZiRqmP8xFOc6b84/7xa5y5YvR1x8djzXpJBSv/UsNK6aqec+6JDjConTgvvQefdGhFDAs2DLAds6gQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/@apphosting/discover/node_modules/@esbuild/win32-ia32": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.9.tgz", + "integrity": "sha512-b33gLVU2k11nVx1OhX3C8QQP6UHQK4ZtN56oFWvVXvz2VkDoe6fbG8TOgHFxEvqeqohmRnIHe5A1+HADk4OQww==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/@apphosting/discover/node_modules/@esbuild/win32-x64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.9.tgz", + "integrity": "sha512-PPOl1mi6lpLNQxnGoyAfschAodRFYXJ+9fs6WHXz7CSWKbOqiMZsubC+BQsVKuul+3vKLuwTHsS2c2y9EoKwxQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "packages/@apphosting/discover/node_modules/@yarnpkg/parsers": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@yarnpkg/parsers/-/parsers-3.0.3.tgz", + "integrity": "sha512-mQZgUSgFurUtA07ceMjxrWkYz8QtDuYkvPlu0ZqncgjopQ0t6CNEo/OSealkmnagSUx8ZD5ewvezUwUuMqutQg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "js-yaml": "^3.10.0", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=18.12.0" + } + }, + "packages/@apphosting/discover/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, + "license": "MIT", + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "packages/@apphosting/discover/node_modules/esbuild": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.9.tgz", + "integrity": "sha512-CRbODhYyQx3qp7ZEwzxOk4JBqmD/seJrzPa/cGjY1VtIn5E09Oi9/dB4JwctnfZ8Q8iT7rioVv5k/FNT/uf54g==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.25.9", + "@esbuild/android-arm": "0.25.9", + "@esbuild/android-arm64": "0.25.9", + "@esbuild/android-x64": "0.25.9", + "@esbuild/darwin-arm64": "0.25.9", + "@esbuild/darwin-x64": "0.25.9", + "@esbuild/freebsd-arm64": "0.25.9", + "@esbuild/freebsd-x64": "0.25.9", + "@esbuild/linux-arm": "0.25.9", + "@esbuild/linux-arm64": "0.25.9", + "@esbuild/linux-ia32": "0.25.9", + "@esbuild/linux-loong64": "0.25.9", + "@esbuild/linux-mips64el": "0.25.9", + "@esbuild/linux-ppc64": "0.25.9", + "@esbuild/linux-riscv64": "0.25.9", + "@esbuild/linux-s390x": "0.25.9", + "@esbuild/linux-x64": "0.25.9", + "@esbuild/netbsd-arm64": "0.25.9", + "@esbuild/netbsd-x64": "0.25.9", + "@esbuild/openbsd-arm64": "0.25.9", + "@esbuild/openbsd-x64": "0.25.9", + "@esbuild/openharmony-arm64": "0.25.9", + "@esbuild/sunos-x64": "0.25.9", + "@esbuild/win32-arm64": "0.25.9", + "@esbuild/win32-ia32": "0.25.9", + "@esbuild/win32-x64": "0.25.9" + } + }, + "packages/@apphosting/discover/node_modules/glob": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-11.0.3.tgz", + "integrity": "sha512-2Nim7dha1KVkaiF4q6Dj+ngPPMdfvLJEOpZk/jKiUAkqKebpGAWQXAq9z1xu9HKu5lWfqw/FASuccEjyznjPaA==", + "dev": true, + "license": "ISC", + "dependencies": { + "foreground-child": "^3.3.1", + "jackspeak": "^4.1.1", + "minimatch": "^10.0.3", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^2.0.0" }, "bin": { - "discover": "dist/bin/discover.js" + "glob": "dist/esm/bin.mjs" }, - "devDependencies": { - "@types/commander": "*", - "@types/npmcli__arborist": "*", - "@types/yarnpkg__lockfile": "*" + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, "packages/@apphosting/discover/node_modules/hosted-git-info": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.1.tgz", "integrity": "sha512-+K84LB1DYwMHoHSgaOY/Jfhw3ucPmSET5v98Ke/HdNSw4a0UktWzyW1mjhjpuxxTqOOsfWT/7iVshHmVZ4IpOA==", + "dev": true, "dependencies": { "lru-cache": "^10.0.1" }, @@ -25993,18 +28608,76 @@ "node": "^16.14.0 || >=18.0.0" } }, + "packages/@apphosting/discover/node_modules/jackspeak": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-4.1.1.tgz", + "integrity": "sha512-zptv57P3GpL+O0I7VdMJNBZCu+BPHVQUk55Ft8/QCJjTVxrnJHuVuX/0Bl2A6/+2oyR/ZMEuFKwmzqqZ/U5nPQ==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "packages/@apphosting/discover/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, + "license": "MIT", + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, "packages/@apphosting/discover/node_modules/lru-cache": { "version": "10.1.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz", "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==", + "dev": true, "engines": { "node": "14 || >=16.14" } }, + "packages/@apphosting/discover/node_modules/minimatch": { + "version": "10.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.0.3.tgz", + "integrity": "sha512-IPZ167aShDZZUMdRk66cyQAW3qr0WzbHkPdMYa8bzZhlHhO3jALbKdxcaak7W9FfT2rZNpQuUu4Od7ILEpXSaw==", + "dev": true, + "license": "ISC", + "dependencies": { + "@isaacs/brace-expansion": "^5.0.0" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "packages/@apphosting/discover/node_modules/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, "packages/@apphosting/discover/node_modules/npm-normalize-package-bin": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz", "integrity": "sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==", + "dev": true, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -26013,6 +28686,7 @@ "version": "11.0.1", "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-11.0.1.tgz", "integrity": "sha512-M7s1BD4NxdAvBKUPqqRW957Xwcl/4Zvo8Aj+ANrzvIPzGJZElrH7Z//rSaec2ORcND6FHHLnZeY8qgTpXDMFQQ==", + "dev": true, "dependencies": { "hosted-git-info": "^7.0.0", "proc-log": "^3.0.0", @@ -26027,6 +28701,7 @@ "version": "9.0.0", "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-9.0.0.tgz", "integrity": "sha512-VfvRSs/b6n9ol4Qb+bDwNGUXutpy76x6MARw/XssevE0TnctIKcmklJZM5Z7nqs5z5aW+0S63pgCNbpkUNNXBg==", + "dev": true, "dependencies": { "npm-install-checks": "^6.0.0", "npm-normalize-package-bin": "^3.0.0", @@ -26037,6 +28712,33 @@ "node": "^16.14.0 || >=18.0.0" } }, + "packages/@apphosting/discover/node_modules/path-scurry": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.0.tgz", + "integrity": "sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "lru-cache": "^11.0.0", + "minipass": "^7.1.2" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "packages/@apphosting/discover/node_modules/path-scurry/node_modules/lru-cache": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.1.0.tgz", + "integrity": "sha512-QIXZUBJUx+2zHUdQujWejBkcD9+cs94tLn0+YL8UrCh+D5sCXZ4c7LaEH48pNwRY3MLDgqUFyhlCyjJPf1WP0A==", + "dev": true, + "license": "ISC", + "engines": { + "node": "20 || >=22" + } + }, "packages/create-next-on-firebase": { "version": "0.2.2", "license": "Apache-2.0", diff --git a/package.json b/package.json index c2c9e676..5bee6525 100644 --- a/package.json +++ b/package.json @@ -29,6 +29,7 @@ "prettier": "^3.0.3", "ts-mocha": "^10.0.0", "typescript": "^5.2.0", - "zod": "^3.22.4" + "zod": "^3.22.4", + "npm-run-all": "^4.1.5" } } diff --git a/packages/@apphosting/build/src/bin/build.ts b/packages/@apphosting/build/src/bin/build.ts index e1ade71b..451fbdec 100644 --- a/packages/@apphosting/build/src/bin/build.ts +++ b/packages/@apphosting/build/src/bin/build.ts @@ -17,12 +17,12 @@ program const nonBundledFrameworks = discoveryResults.filter((it) => !it.bundledWith); if (nonBundledFrameworks.length === 0) throw new Error("Did not discover any frameworks."); if (nonBundledFrameworks.length > 1) throw new Error("Found conflicting frameworks."); - if (expectedFramework && nonBundledFrameworks[0].framework !== expectedFramework) { + if (expectedFramework && nonBundledFrameworks[0].id !== expectedFramework) { throw new Error("Discovery did not match expected framework."); } - const { framework, version } = nonBundledFrameworks[0]; + const framework = nonBundledFrameworks[0]; - const parsedVersion = semverParse(version); + const parsedVersion = semverParse(framework.version); if (!parsedVersion) throw new Error("Could not parse framework version"); const adapterName = `@apphosting/adapter-${framework}`; diff --git a/packages/@apphosting/discover/.gitignore b/packages/@apphosting/discover/.gitignore index 66e7f6a2..55cce4d4 100644 --- a/packages/@apphosting/discover/.gitignore +++ b/packages/@apphosting/discover/.gitignore @@ -1 +1 @@ -/e2e \ No newline at end of file +/e2e diff --git a/packages/@apphosting/discover/api-extractor.json b/packages/@apphosting/discover/api-extractor.json new file mode 100644 index 00000000..1cfaf215 --- /dev/null +++ b/packages/@apphosting/discover/api-extractor.json @@ -0,0 +1,13 @@ +{ + "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", + "mainEntryPointFilePath": "dist/_types/index.d.ts", + "apiReport": { + "enabled": false + }, + "docModel": { + "enabled": false + }, + "dtsRollup": { + "enabled": true + } +} diff --git a/packages/@apphosting/discover/meta.json b/packages/@apphosting/discover/meta.json new file mode 100644 index 00000000..8f47a3bd --- /dev/null +++ b/packages/@apphosting/discover/meta.json @@ -0,0 +1,3589 @@ +{ + "inputs": { + "../../../node_modules/universalify/index.js": { + "bytes": 706, + "imports": [], + "format": "cjs" + }, + "../../../node_modules/graceful-fs/polyfills.js": { + "bytes": 10141, + "imports": [ + { + "path": "constants", + "kind": "require-call", + "external": true + } + ], + "format": "cjs" + }, + "../../../node_modules/graceful-fs/legacy-streams.js": { + "bytes": 2655, + "imports": [ + { + "path": "stream", + "kind": "require-call", + "external": true + } + ], + "format": "cjs" + }, + "../../../node_modules/graceful-fs/clone.js": { + "bytes": 496, + "imports": [], + "format": "cjs" + }, + "../../../node_modules/graceful-fs/graceful-fs.js": { + "bytes": 12680, + "imports": [ + { + "path": "fs", + "kind": "require-call", + "external": true + }, + { + "path": "../../../node_modules/graceful-fs/polyfills.js", + "kind": "require-call", + "original": "./polyfills.js" + }, + { + "path": "../../../node_modules/graceful-fs/legacy-streams.js", + "kind": "require-call", + "original": "./legacy-streams.js" + }, + { + "path": "../../../node_modules/graceful-fs/clone.js", + "kind": "require-call", + "original": "./clone.js" + }, + { + "path": "util", + "kind": "require-call", + "external": true + }, + { + "path": "assert", + "kind": "require-call", + "external": true + } + ], + "format": "cjs" + }, + "../../../node_modules/fs-extra/lib/fs/index.js": { + "bytes": 3835, + "imports": [ + { + "path": "../../../node_modules/universalify/index.js", + "kind": "require-call", + "original": "universalify" + }, + { + "path": "../../../node_modules/graceful-fs/graceful-fs.js", + "kind": "require-call", + "original": "graceful-fs" + } + ], + "format": "cjs" + }, + "../../../node_modules/fs-extra/lib/mkdirs/utils.js": { + "bytes": 1655, + "imports": [ + { + "path": "path", + "kind": "require-call", + "external": true + } + ], + "format": "cjs" + }, + "../../../node_modules/fs-extra/lib/mkdirs/make-dir.js": { + "bytes": 545, + "imports": [ + { + "path": "../../../node_modules/fs-extra/lib/fs/index.js", + "kind": "require-call", + "original": "../fs" + }, + { + "path": "../../../node_modules/fs-extra/lib/mkdirs/utils.js", + "kind": "require-call", + "original": "./utils" + } + ], + "format": "cjs" + }, + "../../../node_modules/fs-extra/lib/mkdirs/index.js": { + "bytes": 328, + "imports": [ + { + "path": "../../../node_modules/universalify/index.js", + "kind": "require-call", + "original": "universalify" + }, + { + "path": "../../../node_modules/fs-extra/lib/mkdirs/make-dir.js", + "kind": "require-call", + "original": "./make-dir" + } + ], + "format": "cjs" + }, + "../../../node_modules/fs-extra/lib/path-exists/index.js": { + "bytes": 263, + "imports": [ + { + "path": "../../../node_modules/universalify/index.js", + "kind": "require-call", + "original": "universalify" + }, + { + "path": "../../../node_modules/fs-extra/lib/fs/index.js", + "kind": "require-call", + "original": "../fs" + } + ], + "format": "cjs" + }, + "../../../node_modules/fs-extra/lib/util/utimes.js": { + "bytes": 687, + "imports": [ + { + "path": "../../../node_modules/fs-extra/lib/fs/index.js", + "kind": "require-call", + "original": "../fs" + }, + { + "path": "../../../node_modules/universalify/index.js", + "kind": "require-call", + "original": "universalify" + } + ], + "format": "cjs" + }, + "../../../node_modules/fs-extra/lib/util/stat.js": { + "bytes": 5225, + "imports": [ + { + "path": "../../../node_modules/fs-extra/lib/fs/index.js", + "kind": "require-call", + "original": "../fs" + }, + { + "path": "path", + "kind": "require-call", + "external": true + }, + { + "path": "../../../node_modules/universalify/index.js", + "kind": "require-call", + "original": "universalify" + } + ], + "format": "cjs" + }, + "../../../node_modules/fs-extra/lib/copy/copy.js": { + "bytes": 5769, + "imports": [ + { + "path": "../../../node_modules/fs-extra/lib/fs/index.js", + "kind": "require-call", + "original": "../fs" + }, + { + "path": "path", + "kind": "require-call", + "external": true + }, + { + "path": "../../../node_modules/fs-extra/lib/mkdirs/index.js", + "kind": "require-call", + "original": "../mkdirs" + }, + { + "path": "../../../node_modules/fs-extra/lib/path-exists/index.js", + "kind": "require-call", + "original": "../path-exists" + }, + { + "path": "../../../node_modules/fs-extra/lib/util/utimes.js", + "kind": "require-call", + "original": "../util/utimes" + }, + { + "path": "../../../node_modules/fs-extra/lib/util/stat.js", + "kind": "require-call", + "original": "../util/stat" + } + ], + "format": "cjs" + }, + "../../../node_modules/fs-extra/lib/copy/copy-sync.js": { + "bytes": 5659, + "imports": [ + { + "path": "../../../node_modules/graceful-fs/graceful-fs.js", + "kind": "require-call", + "original": "graceful-fs" + }, + { + "path": "path", + "kind": "require-call", + "external": true + }, + { + "path": "../../../node_modules/fs-extra/lib/mkdirs/index.js", + "kind": "require-call", + "original": "../mkdirs" + }, + { + "path": "../../../node_modules/fs-extra/lib/util/utimes.js", + "kind": "require-call", + "original": "../util/utimes" + }, + { + "path": "../../../node_modules/fs-extra/lib/util/stat.js", + "kind": "require-call", + "original": "../util/stat" + } + ], + "format": "cjs" + }, + "../../../node_modules/fs-extra/lib/copy/index.js": { + "bytes": 146, + "imports": [ + { + "path": "../../../node_modules/universalify/index.js", + "kind": "require-call", + "original": "universalify" + }, + { + "path": "../../../node_modules/fs-extra/lib/copy/copy.js", + "kind": "require-call", + "original": "./copy" + }, + { + "path": "../../../node_modules/fs-extra/lib/copy/copy-sync.js", + "kind": "require-call", + "original": "./copy-sync" + } + ], + "format": "cjs" + }, + "../../../node_modules/fs-extra/lib/remove/index.js": { + "bytes": 331, + "imports": [ + { + "path": "../../../node_modules/graceful-fs/graceful-fs.js", + "kind": "require-call", + "original": "graceful-fs" + }, + { + "path": "../../../node_modules/universalify/index.js", + "kind": "require-call", + "original": "universalify" + } + ], + "format": "cjs" + }, + "../../../node_modules/fs-extra/lib/empty/index.js": { + "bytes": 747, + "imports": [ + { + "path": "../../../node_modules/universalify/index.js", + "kind": "require-call", + "original": "universalify" + }, + { + "path": "../../../node_modules/fs-extra/lib/fs/index.js", + "kind": "require-call", + "original": "../fs" + }, + { + "path": "path", + "kind": "require-call", + "external": true + }, + { + "path": "../../../node_modules/fs-extra/lib/mkdirs/index.js", + "kind": "require-call", + "original": "../mkdirs" + }, + { + "path": "../../../node_modules/fs-extra/lib/remove/index.js", + "kind": "require-call", + "original": "../remove" + } + ], + "format": "cjs" + }, + "../../../node_modules/fs-extra/lib/ensure/file.js": { + "bytes": 1459, + "imports": [ + { + "path": "../../../node_modules/universalify/index.js", + "kind": "require-call", + "original": "universalify" + }, + { + "path": "path", + "kind": "require-call", + "external": true + }, + { + "path": "../../../node_modules/fs-extra/lib/fs/index.js", + "kind": "require-call", + "original": "../fs" + }, + { + "path": "../../../node_modules/fs-extra/lib/mkdirs/index.js", + "kind": "require-call", + "original": "../mkdirs" + } + ], + "format": "cjs" + }, + "../../../node_modules/fs-extra/lib/ensure/link.js": { + "bytes": 1366, + "imports": [ + { + "path": "../../../node_modules/universalify/index.js", + "kind": "require-call", + "original": "universalify" + }, + { + "path": "path", + "kind": "require-call", + "external": true + }, + { + "path": "../../../node_modules/fs-extra/lib/fs/index.js", + "kind": "require-call", + "original": "../fs" + }, + { + "path": "../../../node_modules/fs-extra/lib/mkdirs/index.js", + "kind": "require-call", + "original": "../mkdirs" + }, + { + "path": "../../../node_modules/fs-extra/lib/path-exists/index.js", + "kind": "require-call", + "original": "../path-exists" + }, + { + "path": "../../../node_modules/fs-extra/lib/util/stat.js", + "kind": "require-call", + "original": "../util/stat" + } + ], + "format": "cjs" + }, + "../../../node_modules/fs-extra/lib/ensure/symlink-paths.js": { + "bytes": 3103, + "imports": [ + { + "path": "path", + "kind": "require-call", + "external": true + }, + { + "path": "../../../node_modules/fs-extra/lib/fs/index.js", + "kind": "require-call", + "original": "../fs" + }, + { + "path": "../../../node_modules/fs-extra/lib/path-exists/index.js", + "kind": "require-call", + "original": "../path-exists" + }, + { + "path": "../../../node_modules/universalify/index.js", + "kind": "require-call", + "original": "universalify" + } + ], + "format": "cjs" + }, + "../../../node_modules/fs-extra/lib/ensure/symlink-type.js": { + "bytes": 596, + "imports": [ + { + "path": "../../../node_modules/fs-extra/lib/fs/index.js", + "kind": "require-call", + "original": "../fs" + }, + { + "path": "../../../node_modules/universalify/index.js", + "kind": "require-call", + "original": "universalify" + } + ], + "format": "cjs" + }, + "../../../node_modules/fs-extra/lib/ensure/symlink.js": { + "bytes": 1724, + "imports": [ + { + "path": "../../../node_modules/universalify/index.js", + "kind": "require-call", + "original": "universalify" + }, + { + "path": "path", + "kind": "require-call", + "external": true + }, + { + "path": "../../../node_modules/fs-extra/lib/fs/index.js", + "kind": "require-call", + "original": "../fs" + }, + { + "path": "../../../node_modules/fs-extra/lib/mkdirs/index.js", + "kind": "require-call", + "original": "../mkdirs" + }, + { + "path": "../../../node_modules/fs-extra/lib/ensure/symlink-paths.js", + "kind": "require-call", + "original": "./symlink-paths" + }, + { + "path": "../../../node_modules/fs-extra/lib/ensure/symlink-type.js", + "kind": "require-call", + "original": "./symlink-type" + }, + { + "path": "../../../node_modules/fs-extra/lib/path-exists/index.js", + "kind": "require-call", + "original": "../path-exists" + }, + { + "path": "../../../node_modules/fs-extra/lib/util/stat.js", + "kind": "require-call", + "original": "../util/stat" + } + ], + "format": "cjs" + }, + "../../../node_modules/fs-extra/lib/ensure/index.js": { + "bytes": 542, + "imports": [ + { + "path": "../../../node_modules/fs-extra/lib/ensure/file.js", + "kind": "require-call", + "original": "./file" + }, + { + "path": "../../../node_modules/fs-extra/lib/ensure/link.js", + "kind": "require-call", + "original": "./link" + }, + { + "path": "../../../node_modules/fs-extra/lib/ensure/symlink.js", + "kind": "require-call", + "original": "./symlink" + } + ], + "format": "cjs" + }, + "../../../node_modules/jsonfile/utils.js": { + "bytes": 498, + "imports": [], + "format": "cjs" + }, + "../../../node_modules/jsonfile/index.js": { + "bytes": 1900, + "imports": [ + { + "path": "../../../node_modules/graceful-fs/graceful-fs.js", + "kind": "require-call", + "original": "graceful-fs" + }, + { + "path": "fs", + "kind": "require-call", + "external": true + }, + { + "path": "../../../node_modules/universalify/index.js", + "kind": "require-call", + "original": "universalify" + }, + { + "path": "../../../node_modules/jsonfile/utils.js", + "kind": "require-call", + "original": "./utils" + } + ], + "format": "cjs" + }, + "../../../node_modules/fs-extra/lib/json/jsonfile.js": { + "bytes": 238, + "imports": [ + { + "path": "../../../node_modules/jsonfile/index.js", + "kind": "require-call", + "original": "jsonfile" + } + ], + "format": "cjs" + }, + "../../../node_modules/fs-extra/lib/output-file/index.js": { + "bytes": 657, + "imports": [ + { + "path": "../../../node_modules/universalify/index.js", + "kind": "require-call", + "original": "universalify" + }, + { + "path": "../../../node_modules/fs-extra/lib/fs/index.js", + "kind": "require-call", + "original": "../fs" + }, + { + "path": "path", + "kind": "require-call", + "external": true + }, + { + "path": "../../../node_modules/fs-extra/lib/mkdirs/index.js", + "kind": "require-call", + "original": "../mkdirs" + }, + { + "path": "../../../node_modules/fs-extra/lib/path-exists/index.js", + "kind": "require-call", + "original": "../path-exists" + } + ], + "format": "cjs" + }, + "../../../node_modules/fs-extra/lib/json/output-json.js": { + "bytes": 277, + "imports": [ + { + "path": "../../../node_modules/jsonfile/utils.js", + "kind": "require-call", + "original": "jsonfile/utils" + }, + { + "path": "../../../node_modules/fs-extra/lib/output-file/index.js", + "kind": "require-call", + "original": "../output-file" + } + ], + "format": "cjs" + }, + "../../../node_modules/fs-extra/lib/json/output-json-sync.js": { + "bytes": 276, + "imports": [ + { + "path": "../../../node_modules/jsonfile/utils.js", + "kind": "require-call", + "original": "jsonfile/utils" + }, + { + "path": "../../../node_modules/fs-extra/lib/output-file/index.js", + "kind": "require-call", + "original": "../output-file" + } + ], + "format": "cjs" + }, + "../../../node_modules/fs-extra/lib/json/index.js": { + "bytes": 508, + "imports": [ + { + "path": "../../../node_modules/universalify/index.js", + "kind": "require-call", + "original": "universalify" + }, + { + "path": "../../../node_modules/fs-extra/lib/json/jsonfile.js", + "kind": "require-call", + "original": "./jsonfile" + }, + { + "path": "../../../node_modules/fs-extra/lib/json/output-json.js", + "kind": "require-call", + "original": "./output-json" + }, + { + "path": "../../../node_modules/fs-extra/lib/json/output-json-sync.js", + "kind": "require-call", + "original": "./output-json-sync" + } + ], + "format": "cjs" + }, + "../../../node_modules/fs-extra/lib/move/move.js": { + "bytes": 1523, + "imports": [ + { + "path": "../../../node_modules/fs-extra/lib/fs/index.js", + "kind": "require-call", + "original": "../fs" + }, + { + "path": "path", + "kind": "require-call", + "external": true + }, + { + "path": "../../../node_modules/fs-extra/lib/copy/index.js", + "kind": "require-call", + "original": "../copy" + }, + { + "path": "../../../node_modules/fs-extra/lib/remove/index.js", + "kind": "require-call", + "original": "../remove" + }, + { + "path": "../../../node_modules/fs-extra/lib/mkdirs/index.js", + "kind": "require-call", + "original": "../mkdirs" + }, + { + "path": "../../../node_modules/fs-extra/lib/path-exists/index.js", + "kind": "require-call", + "original": "../path-exists" + }, + { + "path": "../../../node_modules/fs-extra/lib/util/stat.js", + "kind": "require-call", + "original": "../util/stat" + } + ], + "format": "cjs" + }, + "../../../node_modules/fs-extra/lib/move/move-sync.js": { + "bytes": 1515, + "imports": [ + { + "path": "../../../node_modules/graceful-fs/graceful-fs.js", + "kind": "require-call", + "original": "graceful-fs" + }, + { + "path": "path", + "kind": "require-call", + "external": true + }, + { + "path": "../../../node_modules/fs-extra/lib/copy/index.js", + "kind": "require-call", + "original": "../copy" + }, + { + "path": "../../../node_modules/fs-extra/lib/remove/index.js", + "kind": "require-call", + "original": "../remove" + }, + { + "path": "../../../node_modules/fs-extra/lib/mkdirs/index.js", + "kind": "require-call", + "original": "../mkdirs" + }, + { + "path": "../../../node_modules/fs-extra/lib/util/stat.js", + "kind": "require-call", + "original": "../util/stat" + } + ], + "format": "cjs" + }, + "../../../node_modules/fs-extra/lib/move/index.js": { + "bytes": 146, + "imports": [ + { + "path": "../../../node_modules/universalify/index.js", + "kind": "require-call", + "original": "universalify" + }, + { + "path": "../../../node_modules/fs-extra/lib/move/move.js", + "kind": "require-call", + "original": "./move" + }, + { + "path": "../../../node_modules/fs-extra/lib/move/move-sync.js", + "kind": "require-call", + "original": "./move-sync" + } + ], + "format": "cjs" + }, + "../../../node_modules/fs-extra/lib/index.js": { + "bytes": 358, + "imports": [ + { + "path": "../../../node_modules/fs-extra/lib/fs/index.js", + "kind": "require-call", + "original": "./fs" + }, + { + "path": "../../../node_modules/fs-extra/lib/copy/index.js", + "kind": "require-call", + "original": "./copy" + }, + { + "path": "../../../node_modules/fs-extra/lib/empty/index.js", + "kind": "require-call", + "original": "./empty" + }, + { + "path": "../../../node_modules/fs-extra/lib/ensure/index.js", + "kind": "require-call", + "original": "./ensure" + }, + { + "path": "../../../node_modules/fs-extra/lib/json/index.js", + "kind": "require-call", + "original": "./json" + }, + { + "path": "../../../node_modules/fs-extra/lib/mkdirs/index.js", + "kind": "require-call", + "original": "./mkdirs" + }, + { + "path": "../../../node_modules/fs-extra/lib/move/index.js", + "kind": "require-call", + "original": "./move" + }, + { + "path": "../../../node_modules/fs-extra/lib/output-file/index.js", + "kind": "require-call", + "original": "./output-file" + }, + { + "path": "../../../node_modules/fs-extra/lib/path-exists/index.js", + "kind": "require-call", + "original": "./path-exists" + }, + { + "path": "../../../node_modules/fs-extra/lib/remove/index.js", + "kind": "require-call", + "original": "./remove" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/nodes/identity.js": { + "bytes": 1794, + "imports": [], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/visit.js": { + "bytes": 9253, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/nodes/identity.js", + "kind": "require-call", + "original": "./nodes/identity.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/doc/directives.js": { + "bytes": 6237, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/nodes/identity.js", + "kind": "require-call", + "original": "../nodes/identity.js" + }, + { + "path": "../../../node_modules/yaml/dist/visit.js", + "kind": "require-call", + "original": "../visit.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/doc/anchors.js": { + "bytes": 2403, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/nodes/identity.js", + "kind": "require-call", + "original": "../nodes/identity.js" + }, + { + "path": "../../../node_modules/yaml/dist/visit.js", + "kind": "require-call", + "original": "../visit.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/doc/applyReviver.js": { + "bytes": 1871, + "imports": [], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/nodes/toJS.js": { + "bytes": 1292, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/nodes/identity.js", + "kind": "require-call", + "original": "./identity.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/nodes/Node.js": { + "bytes": 1382, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/doc/applyReviver.js", + "kind": "require-call", + "original": "../doc/applyReviver.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/identity.js", + "kind": "require-call", + "original": "./identity.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/toJS.js", + "kind": "require-call", + "original": "./toJS.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/nodes/Alias.js": { + "bytes": 3419, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/doc/anchors.js", + "kind": "require-call", + "original": "../doc/anchors.js" + }, + { + "path": "../../../node_modules/yaml/dist/visit.js", + "kind": "require-call", + "original": "../visit.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/identity.js", + "kind": "require-call", + "original": "./identity.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/Node.js", + "kind": "require-call", + "original": "./Node.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/toJS.js", + "kind": "require-call", + "original": "./toJS.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/nodes/Scalar.js": { + "bytes": 759, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/nodes/identity.js", + "kind": "require-call", + "original": "./identity.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/Node.js", + "kind": "require-call", + "original": "./Node.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/toJS.js", + "kind": "require-call", + "original": "./toJS.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/doc/createNode.js": { + "bytes": 3155, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/nodes/Alias.js", + "kind": "require-call", + "original": "../nodes/Alias.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/identity.js", + "kind": "require-call", + "original": "../nodes/identity.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/Scalar.js", + "kind": "require-call", + "original": "../nodes/Scalar.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/nodes/Collection.js": { + "bytes": 5268, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/doc/createNode.js", + "kind": "require-call", + "original": "../doc/createNode.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/identity.js", + "kind": "require-call", + "original": "./identity.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/Node.js", + "kind": "require-call", + "original": "./Node.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/stringify/stringifyComment.js": { + "bytes": 801, + "imports": [], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/stringify/foldFlowLines.js": { + "bytes": 4567, + "imports": [], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/stringify/stringifyString.js": { + "bytes": 13046, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/nodes/Scalar.js", + "kind": "require-call", + "original": "../nodes/Scalar.js" + }, + { + "path": "../../../node_modules/yaml/dist/stringify/foldFlowLines.js", + "kind": "require-call", + "original": "./foldFlowLines.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/stringify/stringify.js": { + "bytes": 4325, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/doc/anchors.js", + "kind": "require-call", + "original": "../doc/anchors.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/identity.js", + "kind": "require-call", + "original": "../nodes/identity.js" + }, + { + "path": "../../../node_modules/yaml/dist/stringify/stringifyComment.js", + "kind": "require-call", + "original": "./stringifyComment.js" + }, + { + "path": "../../../node_modules/yaml/dist/stringify/stringifyString.js", + "kind": "require-call", + "original": "./stringifyString.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/stringify/stringifyPair.js": { + "bytes": 5400, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/nodes/identity.js", + "kind": "require-call", + "original": "../nodes/identity.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/Scalar.js", + "kind": "require-call", + "original": "../nodes/Scalar.js" + }, + { + "path": "../../../node_modules/yaml/dist/stringify/stringify.js", + "kind": "require-call", + "original": "./stringify.js" + }, + { + "path": "../../../node_modules/yaml/dist/stringify/stringifyComment.js", + "kind": "require-call", + "original": "./stringifyComment.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/log.js": { + "bytes": 576, + "imports": [], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/nodes/addPairToJSMap.js": { + "bytes": 3947, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/log.js", + "kind": "require-call", + "original": "../log.js" + }, + { + "path": "../../../node_modules/yaml/dist/stringify/stringify.js", + "kind": "require-call", + "original": "../stringify/stringify.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/identity.js", + "kind": "require-call", + "original": "./identity.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/Scalar.js", + "kind": "require-call", + "original": "./Scalar.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/toJS.js", + "kind": "require-call", + "original": "./toJS.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/nodes/Pair.js": { + "bytes": 1232, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/doc/createNode.js", + "kind": "require-call", + "original": "../doc/createNode.js" + }, + { + "path": "../../../node_modules/yaml/dist/stringify/stringifyPair.js", + "kind": "require-call", + "original": "../stringify/stringifyPair.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/addPairToJSMap.js", + "kind": "require-call", + "original": "./addPairToJSMap.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/identity.js", + "kind": "require-call", + "original": "./identity.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/stringify/stringifyCollection.js": { + "bytes": 5604, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/nodes/Collection.js", + "kind": "require-call", + "original": "../nodes/Collection.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/identity.js", + "kind": "require-call", + "original": "../nodes/identity.js" + }, + { + "path": "../../../node_modules/yaml/dist/stringify/stringify.js", + "kind": "require-call", + "original": "./stringify.js" + }, + { + "path": "../../../node_modules/yaml/dist/stringify/stringifyComment.js", + "kind": "require-call", + "original": "./stringifyComment.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/nodes/YAMLMap.js": { + "bytes": 5105, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/stringify/stringifyCollection.js", + "kind": "require-call", + "original": "../stringify/stringifyCollection.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/addPairToJSMap.js", + "kind": "require-call", + "original": "./addPairToJSMap.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/Collection.js", + "kind": "require-call", + "original": "./Collection.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/identity.js", + "kind": "require-call", + "original": "./identity.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/Pair.js", + "kind": "require-call", + "original": "./Pair.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/Scalar.js", + "kind": "require-call", + "original": "./Scalar.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/schema/common/map.js": { + "bytes": 483, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/nodes/identity.js", + "kind": "require-call", + "original": "../../nodes/identity.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/YAMLMap.js", + "kind": "require-call", + "original": "../../nodes/YAMLMap.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/nodes/YAMLSeq.js": { + "bytes": 3667, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/doc/createNode.js", + "kind": "require-call", + "original": "../doc/createNode.js" + }, + { + "path": "../../../node_modules/yaml/dist/stringify/stringifyCollection.js", + "kind": "require-call", + "original": "../stringify/stringifyCollection.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/Collection.js", + "kind": "require-call", + "original": "./Collection.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/identity.js", + "kind": "require-call", + "original": "./identity.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/Scalar.js", + "kind": "require-call", + "original": "./Scalar.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/toJS.js", + "kind": "require-call", + "original": "./toJS.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/schema/common/seq.js": { + "bytes": 484, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/nodes/identity.js", + "kind": "require-call", + "original": "../../nodes/identity.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/YAMLSeq.js", + "kind": "require-call", + "original": "../../nodes/YAMLSeq.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/schema/common/string.js": { + "bytes": 457, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/stringify/stringifyString.js", + "kind": "require-call", + "original": "../../stringify/stringifyString.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/schema/common/null.js": { + "bytes": 469, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/nodes/Scalar.js", + "kind": "require-call", + "original": "../../nodes/Scalar.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/schema/core/bool.js": { + "bytes": 635, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/nodes/Scalar.js", + "kind": "require-call", + "original": "../../nodes/Scalar.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/stringify/stringifyNumber.js": { + "bytes": 748, + "imports": [], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/schema/core/float.js": { + "bytes": 1504, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/nodes/Scalar.js", + "kind": "require-call", + "original": "../../nodes/Scalar.js" + }, + { + "path": "../../../node_modules/yaml/dist/stringify/stringifyNumber.js", + "kind": "require-call", + "original": "../../stringify/stringifyNumber.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/schema/core/int.js": { + "bytes": 1407, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/stringify/stringifyNumber.js", + "kind": "require-call", + "original": "../../stringify/stringifyNumber.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/schema/core/schema.js": { + "bytes": 509, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/schema/common/map.js", + "kind": "require-call", + "original": "../common/map.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/common/null.js", + "kind": "require-call", + "original": "../common/null.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/common/seq.js", + "kind": "require-call", + "original": "../common/seq.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/common/string.js", + "kind": "require-call", + "original": "../common/string.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/core/bool.js", + "kind": "require-call", + "original": "./bool.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/core/float.js", + "kind": "require-call", + "original": "./float.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/core/int.js", + "kind": "require-call", + "original": "./int.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/schema/json/schema.js": { + "bytes": 1898, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/nodes/Scalar.js", + "kind": "require-call", + "original": "../../nodes/Scalar.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/common/map.js", + "kind": "require-call", + "original": "../common/map.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/common/seq.js", + "kind": "require-call", + "original": "../common/seq.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/schema/yaml-1.1/binary.js": { + "bytes": 2638, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/nodes/Scalar.js", + "kind": "require-call", + "original": "../../nodes/Scalar.js" + }, + { + "path": "../../../node_modules/yaml/dist/stringify/stringifyString.js", + "kind": "require-call", + "original": "../../stringify/stringifyString.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/schema/yaml-1.1/pairs.js": { + "bytes": 2854, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/nodes/identity.js", + "kind": "require-call", + "original": "../../nodes/identity.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/Pair.js", + "kind": "require-call", + "original": "../../nodes/Pair.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/Scalar.js", + "kind": "require-call", + "original": "../../nodes/Scalar.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/YAMLSeq.js", + "kind": "require-call", + "original": "../../nodes/YAMLSeq.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/schema/yaml-1.1/omap.js": { + "bytes": 2581, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/nodes/identity.js", + "kind": "require-call", + "original": "../../nodes/identity.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/toJS.js", + "kind": "require-call", + "original": "../../nodes/toJS.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/YAMLMap.js", + "kind": "require-call", + "original": "../../nodes/YAMLMap.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/YAMLSeq.js", + "kind": "require-call", + "original": "../../nodes/YAMLSeq.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/yaml-1.1/pairs.js", + "kind": "require-call", + "original": "./pairs.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/schema/yaml-1.1/bool.js": { + "bytes": 842, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/nodes/Scalar.js", + "kind": "require-call", + "original": "../../nodes/Scalar.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/schema/yaml-1.1/float.js": { + "bytes": 1616, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/nodes/Scalar.js", + "kind": "require-call", + "original": "../../nodes/Scalar.js" + }, + { + "path": "../../../node_modules/yaml/dist/stringify/stringifyNumber.js", + "kind": "require-call", + "original": "../../stringify/stringifyNumber.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/schema/yaml-1.1/int.js": { + "bytes": 2232, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/stringify/stringifyNumber.js", + "kind": "require-call", + "original": "../../stringify/stringifyNumber.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/schema/yaml-1.1/set.js": { + "bytes": 3114, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/nodes/identity.js", + "kind": "require-call", + "original": "../../nodes/identity.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/Pair.js", + "kind": "require-call", + "original": "../../nodes/Pair.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/YAMLMap.js", + "kind": "require-call", + "original": "../../nodes/YAMLMap.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/schema/yaml-1.1/timestamp.js": { + "bytes": 3771, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/stringify/stringifyNumber.js", + "kind": "require-call", + "original": "../../stringify/stringifyNumber.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/schema/yaml-1.1/schema.js": { + "bytes": 860, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/schema/common/map.js", + "kind": "require-call", + "original": "../common/map.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/common/null.js", + "kind": "require-call", + "original": "../common/null.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/common/seq.js", + "kind": "require-call", + "original": "../common/seq.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/common/string.js", + "kind": "require-call", + "original": "../common/string.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/yaml-1.1/binary.js", + "kind": "require-call", + "original": "./binary.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/yaml-1.1/bool.js", + "kind": "require-call", + "original": "./bool.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/yaml-1.1/float.js", + "kind": "require-call", + "original": "./float.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/yaml-1.1/int.js", + "kind": "require-call", + "original": "./int.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/yaml-1.1/omap.js", + "kind": "require-call", + "original": "./omap.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/yaml-1.1/pairs.js", + "kind": "require-call", + "original": "./pairs.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/yaml-1.1/set.js", + "kind": "require-call", + "original": "./set.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/yaml-1.1/timestamp.js", + "kind": "require-call", + "original": "./timestamp.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/schema/tags.js": { + "bytes": 2704, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/schema/common/map.js", + "kind": "require-call", + "original": "./common/map.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/common/null.js", + "kind": "require-call", + "original": "./common/null.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/common/seq.js", + "kind": "require-call", + "original": "./common/seq.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/common/string.js", + "kind": "require-call", + "original": "./common/string.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/core/bool.js", + "kind": "require-call", + "original": "./core/bool.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/core/float.js", + "kind": "require-call", + "original": "./core/float.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/core/int.js", + "kind": "require-call", + "original": "./core/int.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/core/schema.js", + "kind": "require-call", + "original": "./core/schema.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/json/schema.js", + "kind": "require-call", + "original": "./json/schema.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/yaml-1.1/binary.js", + "kind": "require-call", + "original": "./yaml-1.1/binary.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/yaml-1.1/omap.js", + "kind": "require-call", + "original": "./yaml-1.1/omap.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/yaml-1.1/pairs.js", + "kind": "require-call", + "original": "./yaml-1.1/pairs.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/yaml-1.1/schema.js", + "kind": "require-call", + "original": "./yaml-1.1/schema.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/yaml-1.1/set.js", + "kind": "require-call", + "original": "./yaml-1.1/set.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/yaml-1.1/timestamp.js", + "kind": "require-call", + "original": "./yaml-1.1/timestamp.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/schema/Schema.js": { + "bytes": 1570, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/nodes/identity.js", + "kind": "require-call", + "original": "../nodes/identity.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/common/map.js", + "kind": "require-call", + "original": "./common/map.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/common/seq.js", + "kind": "require-call", + "original": "./common/seq.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/common/string.js", + "kind": "require-call", + "original": "./common/string.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/tags.js", + "kind": "require-call", + "original": "./tags.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/stringify/stringifyDocument.js": { + "bytes": 3104, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/nodes/identity.js", + "kind": "require-call", + "original": "../nodes/identity.js" + }, + { + "path": "../../../node_modules/yaml/dist/stringify/stringify.js", + "kind": "require-call", + "original": "./stringify.js" + }, + { + "path": "../../../node_modules/yaml/dist/stringify/stringifyComment.js", + "kind": "require-call", + "original": "./stringifyComment.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/doc/Document.js": { + "bytes": 13110, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/nodes/Alias.js", + "kind": "require-call", + "original": "../nodes/Alias.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/Collection.js", + "kind": "require-call", + "original": "../nodes/Collection.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/identity.js", + "kind": "require-call", + "original": "../nodes/identity.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/Pair.js", + "kind": "require-call", + "original": "../nodes/Pair.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/toJS.js", + "kind": "require-call", + "original": "../nodes/toJS.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/Schema.js", + "kind": "require-call", + "original": "../schema/Schema.js" + }, + { + "path": "../../../node_modules/yaml/dist/stringify/stringifyDocument.js", + "kind": "require-call", + "original": "../stringify/stringifyDocument.js" + }, + { + "path": "../../../node_modules/yaml/dist/doc/anchors.js", + "kind": "require-call", + "original": "./anchors.js" + }, + { + "path": "../../../node_modules/yaml/dist/doc/applyReviver.js", + "kind": "require-call", + "original": "./applyReviver.js" + }, + { + "path": "../../../node_modules/yaml/dist/doc/createNode.js", + "kind": "require-call", + "original": "./createNode.js" + }, + { + "path": "../../../node_modules/yaml/dist/doc/directives.js", + "kind": "require-call", + "original": "./directives.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/errors.js": { + "bytes": 2124, + "imports": [], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/compose/resolve-props.js": { + "bytes": 5044, + "imports": [], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/compose/util-contains-newline.js": { + "bytes": 1081, + "imports": [], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/compose/util-flow-indent-check.js": { + "bytes": 547, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/compose/util-contains-newline.js", + "kind": "require-call", + "original": "./util-contains-newline.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/compose/util-map-includes.js": { + "bytes": 574, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/nodes/identity.js", + "kind": "require-call", + "original": "../nodes/identity.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/compose/resolve-block-map.js": { + "bytes": 4947, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/nodes/Pair.js", + "kind": "require-call", + "original": "../nodes/Pair.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/YAMLMap.js", + "kind": "require-call", + "original": "../nodes/YAMLMap.js" + }, + { + "path": "../../../node_modules/yaml/dist/compose/resolve-props.js", + "kind": "require-call", + "original": "./resolve-props.js" + }, + { + "path": "../../../node_modules/yaml/dist/compose/util-contains-newline.js", + "kind": "require-call", + "original": "./util-contains-newline.js" + }, + { + "path": "../../../node_modules/yaml/dist/compose/util-flow-indent-check.js", + "kind": "require-call", + "original": "./util-flow-indent-check.js" + }, + { + "path": "../../../node_modules/yaml/dist/compose/util-map-includes.js", + "kind": "require-call", + "original": "./util-map-includes.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/compose/resolve-block-seq.js": { + "bytes": 1737, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/nodes/YAMLSeq.js", + "kind": "require-call", + "original": "../nodes/YAMLSeq.js" + }, + { + "path": "../../../node_modules/yaml/dist/compose/resolve-props.js", + "kind": "require-call", + "original": "./resolve-props.js" + }, + { + "path": "../../../node_modules/yaml/dist/compose/util-flow-indent-check.js", + "kind": "require-call", + "original": "./util-flow-indent-check.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/compose/resolve-end.js": { + "bytes": 1264, + "imports": [], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/compose/resolve-flow-collection.js": { + "bytes": 8624, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/nodes/identity.js", + "kind": "require-call", + "original": "../nodes/identity.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/Pair.js", + "kind": "require-call", + "original": "../nodes/Pair.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/YAMLMap.js", + "kind": "require-call", + "original": "../nodes/YAMLMap.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/YAMLSeq.js", + "kind": "require-call", + "original": "../nodes/YAMLSeq.js" + }, + { + "path": "../../../node_modules/yaml/dist/compose/resolve-end.js", + "kind": "require-call", + "original": "./resolve-end.js" + }, + { + "path": "../../../node_modules/yaml/dist/compose/resolve-props.js", + "kind": "require-call", + "original": "./resolve-props.js" + }, + { + "path": "../../../node_modules/yaml/dist/compose/util-contains-newline.js", + "kind": "require-call", + "original": "./util-contains-newline.js" + }, + { + "path": "../../../node_modules/yaml/dist/compose/util-map-includes.js", + "kind": "require-call", + "original": "./util-map-includes.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/compose/compose-collection.js": { + "bytes": 3127, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/nodes/identity.js", + "kind": "require-call", + "original": "../nodes/identity.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/Scalar.js", + "kind": "require-call", + "original": "../nodes/Scalar.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/YAMLMap.js", + "kind": "require-call", + "original": "../nodes/YAMLMap.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/YAMLSeq.js", + "kind": "require-call", + "original": "../nodes/YAMLSeq.js" + }, + { + "path": "../../../node_modules/yaml/dist/compose/resolve-block-map.js", + "kind": "require-call", + "original": "./resolve-block-map.js" + }, + { + "path": "../../../node_modules/yaml/dist/compose/resolve-block-seq.js", + "kind": "require-call", + "original": "./resolve-block-seq.js" + }, + { + "path": "../../../node_modules/yaml/dist/compose/resolve-flow-collection.js", + "kind": "require-call", + "original": "./resolve-flow-collection.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/compose/resolve-block-scalar.js": { + "bytes": 7283, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/nodes/Scalar.js", + "kind": "require-call", + "original": "../nodes/Scalar.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/compose/resolve-flow-scalar.js": { + "bytes": 7112, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/nodes/Scalar.js", + "kind": "require-call", + "original": "../nodes/Scalar.js" + }, + { + "path": "../../../node_modules/yaml/dist/compose/resolve-end.js", + "kind": "require-call", + "original": "./resolve-end.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/compose/compose-scalar.js": { + "bytes": 3285, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/nodes/identity.js", + "kind": "require-call", + "original": "../nodes/identity.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/Scalar.js", + "kind": "require-call", + "original": "../nodes/Scalar.js" + }, + { + "path": "../../../node_modules/yaml/dist/compose/resolve-block-scalar.js", + "kind": "require-call", + "original": "./resolve-block-scalar.js" + }, + { + "path": "../../../node_modules/yaml/dist/compose/resolve-flow-scalar.js", + "kind": "require-call", + "original": "./resolve-flow-scalar.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/compose/util-empty-scalar-position.js": { + "bytes": 871, + "imports": [], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/compose/compose-node.js": { + "bytes": 3559, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/nodes/Alias.js", + "kind": "require-call", + "original": "../nodes/Alias.js" + }, + { + "path": "../../../node_modules/yaml/dist/compose/compose-collection.js", + "kind": "require-call", + "original": "./compose-collection.js" + }, + { + "path": "../../../node_modules/yaml/dist/compose/compose-scalar.js", + "kind": "require-call", + "original": "./compose-scalar.js" + }, + { + "path": "../../../node_modules/yaml/dist/compose/resolve-end.js", + "kind": "require-call", + "original": "./resolve-end.js" + }, + { + "path": "../../../node_modules/yaml/dist/compose/util-empty-scalar-position.js", + "kind": "require-call", + "original": "./util-empty-scalar-position.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/compose/compose-doc.js": { + "bytes": 1568, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/doc/Document.js", + "kind": "require-call", + "original": "../doc/Document.js" + }, + { + "path": "../../../node_modules/yaml/dist/compose/compose-node.js", + "kind": "require-call", + "original": "./compose-node.js" + }, + { + "path": "../../../node_modules/yaml/dist/compose/resolve-end.js", + "kind": "require-call", + "original": "./resolve-end.js" + }, + { + "path": "../../../node_modules/yaml/dist/compose/resolve-props.js", + "kind": "require-call", + "original": "./resolve-props.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/compose/composer.js": { + "bytes": 8564, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/doc/directives.js", + "kind": "require-call", + "original": "../doc/directives.js" + }, + { + "path": "../../../node_modules/yaml/dist/doc/Document.js", + "kind": "require-call", + "original": "../doc/Document.js" + }, + { + "path": "../../../node_modules/yaml/dist/errors.js", + "kind": "require-call", + "original": "../errors.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/identity.js", + "kind": "require-call", + "original": "../nodes/identity.js" + }, + { + "path": "../../../node_modules/yaml/dist/compose/compose-doc.js", + "kind": "require-call", + "original": "./compose-doc.js" + }, + { + "path": "../../../node_modules/yaml/dist/compose/resolve-end.js", + "kind": "require-call", + "original": "./resolve-end.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/parse/cst-scalar.js": { + "bytes": 9365, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/compose/resolve-block-scalar.js", + "kind": "require-call", + "original": "../compose/resolve-block-scalar.js" + }, + { + "path": "../../../node_modules/yaml/dist/compose/resolve-flow-scalar.js", + "kind": "require-call", + "original": "../compose/resolve-flow-scalar.js" + }, + { + "path": "../../../node_modules/yaml/dist/errors.js", + "kind": "require-call", + "original": "../errors.js" + }, + { + "path": "../../../node_modules/yaml/dist/stringify/stringifyString.js", + "kind": "require-call", + "original": "../stringify/stringifyString.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/parse/cst-stringify.js": { + "bytes": 1799, + "imports": [], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/parse/cst-visit.js": { + "bytes": 3986, + "imports": [], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/parse/cst.js": { + "bytes": 3242, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/parse/cst-scalar.js", + "kind": "require-call", + "original": "./cst-scalar.js" + }, + { + "path": "../../../node_modules/yaml/dist/parse/cst-stringify.js", + "kind": "require-call", + "original": "./cst-stringify.js" + }, + { + "path": "../../../node_modules/yaml/dist/parse/cst-visit.js", + "kind": "require-call", + "original": "./cst-visit.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/parse/lexer.js": { + "bytes": 23468, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/parse/cst.js", + "kind": "require-call", + "original": "./cst.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/parse/line-counter.js": { + "bytes": 1445, + "imports": [], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/parse/parser.js": { + "bytes": 34515, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/parse/cst.js", + "kind": "require-call", + "original": "./cst.js" + }, + { + "path": "../../../node_modules/yaml/dist/parse/lexer.js", + "kind": "require-call", + "original": "./lexer.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/public-api.js": { + "bytes": 4050, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/compose/composer.js", + "kind": "require-call", + "original": "./compose/composer.js" + }, + { + "path": "../../../node_modules/yaml/dist/doc/Document.js", + "kind": "require-call", + "original": "./doc/Document.js" + }, + { + "path": "../../../node_modules/yaml/dist/errors.js", + "kind": "require-call", + "original": "./errors.js" + }, + { + "path": "../../../node_modules/yaml/dist/log.js", + "kind": "require-call", + "original": "./log.js" + }, + { + "path": "../../../node_modules/yaml/dist/parse/line-counter.js", + "kind": "require-call", + "original": "./parse/line-counter.js" + }, + { + "path": "../../../node_modules/yaml/dist/parse/parser.js", + "kind": "require-call", + "original": "./parse/parser.js" + } + ], + "format": "cjs" + }, + "../../../node_modules/yaml/dist/index.js": { + "bytes": 1769, + "imports": [ + { + "path": "../../../node_modules/yaml/dist/compose/composer.js", + "kind": "require-call", + "original": "./compose/composer.js" + }, + { + "path": "../../../node_modules/yaml/dist/doc/Document.js", + "kind": "require-call", + "original": "./doc/Document.js" + }, + { + "path": "../../../node_modules/yaml/dist/schema/Schema.js", + "kind": "require-call", + "original": "./schema/Schema.js" + }, + { + "path": "../../../node_modules/yaml/dist/errors.js", + "kind": "require-call", + "original": "./errors.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/Alias.js", + "kind": "require-call", + "original": "./nodes/Alias.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/identity.js", + "kind": "require-call", + "original": "./nodes/identity.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/Pair.js", + "kind": "require-call", + "original": "./nodes/Pair.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/Scalar.js", + "kind": "require-call", + "original": "./nodes/Scalar.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/YAMLMap.js", + "kind": "require-call", + "original": "./nodes/YAMLMap.js" + }, + { + "path": "../../../node_modules/yaml/dist/nodes/YAMLSeq.js", + "kind": "require-call", + "original": "./nodes/YAMLSeq.js" + }, + { + "path": "../../../node_modules/yaml/dist/parse/cst.js", + "kind": "require-call", + "original": "./parse/cst.js" + }, + { + "path": "../../../node_modules/yaml/dist/parse/lexer.js", + "kind": "require-call", + "original": "./parse/lexer.js" + }, + { + "path": "../../../node_modules/yaml/dist/parse/line-counter.js", + "kind": "require-call", + "original": "./parse/line-counter.js" + }, + { + "path": "../../../node_modules/yaml/dist/parse/parser.js", + "kind": "require-call", + "original": "./parse/parser.js" + }, + { + "path": "../../../node_modules/yaml/dist/public-api.js", + "kind": "require-call", + "original": "./public-api.js" + }, + { + "path": "../../../node_modules/yaml/dist/visit.js", + "kind": "require-call", + "original": "./visit.js" + } + ], + "format": "cjs" + }, + "node_modules/@yarnpkg/parsers/lib/grammars/shell.js": { + "bytes": 98460, + "imports": [], + "format": "cjs" + }, + "node_modules/@yarnpkg/parsers/lib/shell.js": { + "bytes": 7782, + "imports": [ + { + "path": "node_modules/@yarnpkg/parsers/lib/grammars/shell.js", + "kind": "require-call", + "original": "./grammars/shell" + } + ], + "format": "cjs" + }, + "node_modules/@yarnpkg/parsers/lib/grammars/resolution.js": { + "bytes": 13189, + "imports": [], + "format": "cjs" + }, + "node_modules/@yarnpkg/parsers/lib/resolution.js": { + "bytes": 1263, + "imports": [ + { + "path": "node_modules/@yarnpkg/parsers/lib/grammars/resolution.js", + "kind": "require-call", + "original": "./grammars/resolution" + } + ], + "format": "cjs" + }, + "node_modules/js-yaml/lib/js-yaml/common.js": { + "bytes": 1177, + "imports": [], + "format": "cjs" + }, + "node_modules/js-yaml/lib/js-yaml/exception.js": { + "bytes": 1024, + "imports": [], + "format": "cjs" + }, + "node_modules/js-yaml/lib/js-yaml/mark.js": { + "bytes": 1562, + "imports": [ + { + "path": "node_modules/js-yaml/lib/js-yaml/common.js", + "kind": "require-call", + "original": "./common" + } + ], + "format": "cjs" + }, + "node_modules/js-yaml/lib/js-yaml/type.js": { + "bytes": 1586, + "imports": [ + { + "path": "node_modules/js-yaml/lib/js-yaml/exception.js", + "kind": "require-call", + "original": "./exception" + } + ], + "format": "cjs" + }, + "node_modules/js-yaml/lib/js-yaml/schema.js": { + "bytes": 2753, + "imports": [ + { + "path": "node_modules/js-yaml/lib/js-yaml/common.js", + "kind": "require-call", + "original": "./common" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/exception.js", + "kind": "require-call", + "original": "./exception" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/type.js", + "kind": "require-call", + "original": "./type" + } + ], + "format": "cjs" + }, + "node_modules/js-yaml/lib/js-yaml/type/str.js": { + "bytes": 189, + "imports": [ + { + "path": "node_modules/js-yaml/lib/js-yaml/type.js", + "kind": "require-call", + "original": "../type" + } + ], + "format": "cjs" + }, + "node_modules/js-yaml/lib/js-yaml/type/seq.js": { + "bytes": 191, + "imports": [ + { + "path": "node_modules/js-yaml/lib/js-yaml/type.js", + "kind": "require-call", + "original": "../type" + } + ], + "format": "cjs" + }, + "node_modules/js-yaml/lib/js-yaml/type/map.js": { + "bytes": 190, + "imports": [ + { + "path": "node_modules/js-yaml/lib/js-yaml/type.js", + "kind": "require-call", + "original": "../type" + } + ], + "format": "cjs" + }, + "node_modules/js-yaml/lib/js-yaml/schema/failsafe.js": { + "bytes": 278, + "imports": [ + { + "path": "node_modules/js-yaml/lib/js-yaml/schema.js", + "kind": "require-call", + "original": "../schema" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/type/str.js", + "kind": "require-call", + "original": "../type/str" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/type/seq.js", + "kind": "require-call", + "original": "../type/seq" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/type/map.js", + "kind": "require-call", + "original": "../type/map" + } + ], + "format": "cjs" + }, + "node_modules/js-yaml/lib/js-yaml/type/null.js": { + "bytes": 761, + "imports": [ + { + "path": "node_modules/js-yaml/lib/js-yaml/type.js", + "kind": "require-call", + "original": "../type" + } + ], + "format": "cjs" + }, + "node_modules/js-yaml/lib/js-yaml/type/bool.js": { + "bytes": 971, + "imports": [ + { + "path": "node_modules/js-yaml/lib/js-yaml/type.js", + "kind": "require-call", + "original": "../type" + } + ], + "format": "cjs" + }, + "node_modules/js-yaml/lib/js-yaml/type/int.js": { + "bytes": 4066, + "imports": [ + { + "path": "node_modules/js-yaml/lib/js-yaml/common.js", + "kind": "require-call", + "original": "../common" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/type.js", + "kind": "require-call", + "original": "../type" + } + ], + "format": "cjs" + }, + "node_modules/js-yaml/lib/js-yaml/type/float.js": { + "bytes": 2840, + "imports": [ + { + "path": "node_modules/js-yaml/lib/js-yaml/common.js", + "kind": "require-call", + "original": "../common" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/type.js", + "kind": "require-call", + "original": "../type" + } + ], + "format": "cjs" + }, + "node_modules/js-yaml/lib/js-yaml/schema/json.js": { + "bytes": 586, + "imports": [ + { + "path": "node_modules/js-yaml/lib/js-yaml/schema.js", + "kind": "require-call", + "original": "../schema" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/schema/failsafe.js", + "kind": "require-call", + "original": "./failsafe" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/type/null.js", + "kind": "require-call", + "original": "../type/null" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/type/bool.js", + "kind": "require-call", + "original": "../type/bool" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/type/int.js", + "kind": "require-call", + "original": "../type/int" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/type/float.js", + "kind": "require-call", + "original": "../type/float" + } + ], + "format": "cjs" + }, + "node_modules/js-yaml/lib/js-yaml/schema/core.js": { + "bytes": 362, + "imports": [ + { + "path": "node_modules/js-yaml/lib/js-yaml/schema.js", + "kind": "require-call", + "original": "../schema" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/schema/json.js", + "kind": "require-call", + "original": "./json" + } + ], + "format": "cjs" + }, + "node_modules/js-yaml/lib/js-yaml/type/timestamp.js": { + "bytes": 2571, + "imports": [ + { + "path": "node_modules/js-yaml/lib/js-yaml/type.js", + "kind": "require-call", + "original": "../type" + } + ], + "format": "cjs" + }, + "node_modules/js-yaml/lib/js-yaml/type/merge.js": { + "bytes": 230, + "imports": [ + { + "path": "node_modules/js-yaml/lib/js-yaml/type.js", + "kind": "require-call", + "original": "../type" + } + ], + "format": "cjs" + }, + "node_modules/js-yaml/lib/js-yaml/type/binary.js": { + "bytes": 3274, + "imports": [ + { + "path": "node_modules/js-yaml/lib/js-yaml/type.js", + "kind": "require-call", + "original": "../type" + }, + { + "path": "", + "kind": "import-statement", + "external": true + } + ], + "format": "cjs" + }, + "node_modules/js-yaml/lib/js-yaml/type/omap.js": { + "bytes": 1023, + "imports": [ + { + "path": "node_modules/js-yaml/lib/js-yaml/type.js", + "kind": "require-call", + "original": "../type" + } + ], + "format": "cjs" + }, + "node_modules/js-yaml/lib/js-yaml/type/pairs.js": { + "bytes": 1084, + "imports": [ + { + "path": "node_modules/js-yaml/lib/js-yaml/type.js", + "kind": "require-call", + "original": "../type" + } + ], + "format": "cjs" + }, + "node_modules/js-yaml/lib/js-yaml/type/set.js": { + "bytes": 547, + "imports": [ + { + "path": "node_modules/js-yaml/lib/js-yaml/type.js", + "kind": "require-call", + "original": "../type" + } + ], + "format": "cjs" + }, + "node_modules/js-yaml/lib/js-yaml/schema/default_safe.js": { + "bytes": 601, + "imports": [ + { + "path": "node_modules/js-yaml/lib/js-yaml/schema.js", + "kind": "require-call", + "original": "../schema" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/schema/core.js", + "kind": "require-call", + "original": "./core" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/type/timestamp.js", + "kind": "require-call", + "original": "../type/timestamp" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/type/merge.js", + "kind": "require-call", + "original": "../type/merge" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/type/binary.js", + "kind": "require-call", + "original": "../type/binary" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/type/omap.js", + "kind": "require-call", + "original": "../type/omap" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/type/pairs.js", + "kind": "require-call", + "original": "../type/pairs" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/type/set.js", + "kind": "require-call", + "original": "../type/set" + } + ], + "format": "cjs" + }, + "node_modules/js-yaml/lib/js-yaml/type/js/undefined.js": { + "bytes": 573, + "imports": [ + { + "path": "node_modules/js-yaml/lib/js-yaml/type.js", + "kind": "require-call", + "original": "../../type" + } + ], + "format": "cjs" + }, + "node_modules/js-yaml/lib/js-yaml/type/js/regexp.js": { + "bytes": 1572, + "imports": [ + { + "path": "node_modules/js-yaml/lib/js-yaml/type.js", + "kind": "require-call", + "original": "../../type" + } + ], + "format": "cjs" + }, + "node_modules/js-yaml/lib/js-yaml/type/js/function.js": { + "bytes": 2819, + "imports": [ + { + "path": "node_modules/js-yaml/lib/js-yaml/type.js", + "kind": "require-call", + "original": "../../type" + }, + { + "path": "", + "kind": "import-statement", + "external": true + } + ], + "format": "cjs" + }, + "node_modules/js-yaml/lib/js-yaml/schema/default_full.js": { + "bytes": 610, + "imports": [ + { + "path": "node_modules/js-yaml/lib/js-yaml/schema.js", + "kind": "require-call", + "original": "../schema" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/schema/default_safe.js", + "kind": "require-call", + "original": "./default_safe" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/type/js/undefined.js", + "kind": "require-call", + "original": "../type/js/undefined" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/type/js/regexp.js", + "kind": "require-call", + "original": "../type/js/regexp" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/type/js/function.js", + "kind": "require-call", + "original": "../type/js/function" + } + ], + "format": "cjs" + }, + "node_modules/js-yaml/lib/js-yaml/loader.js": { + "bytes": 44363, + "imports": [ + { + "path": "node_modules/js-yaml/lib/js-yaml/common.js", + "kind": "require-call", + "original": "./common" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/exception.js", + "kind": "require-call", + "original": "./exception" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/mark.js", + "kind": "require-call", + "original": "./mark" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/schema/default_safe.js", + "kind": "require-call", + "original": "./schema/default_safe" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/schema/default_full.js", + "kind": "require-call", + "original": "./schema/default_full" + } + ], + "format": "cjs" + }, + "node_modules/js-yaml/lib/js-yaml/dumper.js": { + "bytes": 27488, + "imports": [ + { + "path": "node_modules/js-yaml/lib/js-yaml/common.js", + "kind": "require-call", + "original": "./common" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/exception.js", + "kind": "require-call", + "original": "./exception" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/schema/default_full.js", + "kind": "require-call", + "original": "./schema/default_full" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/schema/default_safe.js", + "kind": "require-call", + "original": "./schema/default_safe" + } + ], + "format": "cjs" + }, + "node_modules/js-yaml/lib/js-yaml.js": { + "bytes": 1665, + "imports": [ + { + "path": "node_modules/js-yaml/lib/js-yaml/loader.js", + "kind": "require-call", + "original": "./js-yaml/loader" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/dumper.js", + "kind": "require-call", + "original": "./js-yaml/dumper" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/type.js", + "kind": "require-call", + "original": "./js-yaml/type" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/schema.js", + "kind": "require-call", + "original": "./js-yaml/schema" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/schema/failsafe.js", + "kind": "require-call", + "original": "./js-yaml/schema/failsafe" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/schema/json.js", + "kind": "require-call", + "original": "./js-yaml/schema/json" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/schema/core.js", + "kind": "require-call", + "original": "./js-yaml/schema/core" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/schema/default_safe.js", + "kind": "require-call", + "original": "./js-yaml/schema/default_safe" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/schema/default_full.js", + "kind": "require-call", + "original": "./js-yaml/schema/default_full" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/exception.js", + "kind": "require-call", + "original": "./js-yaml/exception" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/schema/failsafe.js", + "kind": "require-call", + "original": "./js-yaml/schema/failsafe" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/schema/default_safe.js", + "kind": "require-call", + "original": "./js-yaml/schema/default_safe" + }, + { + "path": "node_modules/js-yaml/lib/js-yaml/schema/default_full.js", + "kind": "require-call", + "original": "./js-yaml/schema/default_full" + } + ], + "format": "cjs" + }, + "node_modules/js-yaml/index.js": { + "bytes": 81, + "imports": [ + { + "path": "node_modules/js-yaml/lib/js-yaml.js", + "kind": "require-call", + "original": "./lib/js-yaml.js" + } + ], + "format": "cjs" + }, + "node_modules/@yarnpkg/parsers/lib/grammars/syml.js": { + "bytes": 51528, + "imports": [], + "format": "cjs" + }, + "node_modules/@yarnpkg/parsers/lib/syml.js": { + "bytes": 5232, + "imports": [ + { + "path": "node_modules/js-yaml/index.js", + "kind": "require-call", + "original": "js-yaml" + }, + { + "path": "node_modules/@yarnpkg/parsers/lib/grammars/syml.js", + "kind": "require-call", + "original": "./grammars/syml" + } + ], + "format": "cjs" + }, + "node_modules/@yarnpkg/parsers/lib/index.js": { + "bytes": 3167, + "imports": [ + { + "path": "node_modules/@yarnpkg/parsers/lib/shell.js", + "kind": "require-call", + "original": "./shell" + }, + { + "path": "node_modules/@yarnpkg/parsers/lib/resolution.js", + "kind": "require-call", + "original": "./resolution" + }, + { + "path": "node_modules/@yarnpkg/parsers/lib/syml.js", + "kind": "require-call", + "original": "./syml" + } + ], + "format": "cjs" + }, + "src/nodejs/index.ts": { + "bytes": 20642, + "imports": [ + { + "path": "node:path", + "kind": "import-statement", + "external": true + }, + { + "path": "../index.js", + "kind": "import-statement", + "external": true + }, + { + "path": "../interfaces.js", + "kind": "import-statement", + "external": true + }, + { + "path": "../../../node_modules/yaml/dist/index.js", + "kind": "import-statement", + "original": "yaml" + }, + { + "path": "node_modules/@yarnpkg/parsers/lib/index.js", + "kind": "import-statement", + "original": "@yarnpkg/parsers" + }, + { + "path": "node:url", + "kind": "import-statement", + "external": true + }, + { + "path": "../../../node_modules/fs-extra/lib/index.js", + "kind": "import-statement", + "original": "fs-extra" + }, + { + "path": "", + "kind": "import-statement", + "external": true + } + ], + "format": "esm" + }, + "src/python/index.ts": { + "bytes": 159, + "imports": [ + { + "path": "../index.js", + "kind": "import-statement", + "external": true + } + ], + "format": "esm" + }, + "src/dart/index.ts": { + "bytes": 157, + "imports": [ + { + "path": "../index.js", + "kind": "import-statement", + "external": true + } + ], + "format": "esm" + }, + "src/index.ts": { + "bytes": 3350, + "imports": [ + { + "path": "../../../node_modules/fs-extra/lib/index.js", + "kind": "import-statement", + "original": "fs-extra" + }, + { + "path": "src/nodejs/index.ts", + "kind": "import-statement", + "original": "./nodejs/index.js" + }, + { + "path": "src/python/index.ts", + "kind": "import-statement", + "original": "./python/index.js" + }, + { + "path": "src/dart/index.ts", + "kind": "import-statement", + "original": "./dart/index.js" + }, + { + "path": "./interfaces.js", + "kind": "import-statement", + "external": true + }, + { + "path": "node:path", + "kind": "dynamic-import", + "external": true + }, + { + "path": "node:path/posix", + "kind": "dynamic-import", + "external": true + } + ], + "format": "esm" + } + }, + "outputs": { + "dist/index.mjs": { + "imports": [ + { + "path": "constants", + "kind": "require-call", + "external": true + }, + { + "path": "stream", + "kind": "require-call", + "external": true + }, + { + "path": "fs", + "kind": "require-call", + "external": true + }, + { + "path": "util", + "kind": "require-call", + "external": true + }, + { + "path": "assert", + "kind": "require-call", + "external": true + }, + { + "path": "path", + "kind": "require-call", + "external": true + }, + { + "path": "path", + "kind": "require-call", + "external": true + }, + { + "path": "path", + "kind": "require-call", + "external": true + }, + { + "path": "path", + "kind": "require-call", + "external": true + }, + { + "path": "path", + "kind": "require-call", + "external": true + }, + { + "path": "path", + "kind": "require-call", + "external": true + }, + { + "path": "path", + "kind": "require-call", + "external": true + }, + { + "path": "path", + "kind": "require-call", + "external": true + }, + { + "path": "path", + "kind": "require-call", + "external": true + }, + { + "path": "fs", + "kind": "require-call", + "external": true + }, + { + "path": "path", + "kind": "require-call", + "external": true + }, + { + "path": "path", + "kind": "require-call", + "external": true + }, + { + "path": "path", + "kind": "require-call", + "external": true + }, + { + "path": "node:path", + "kind": "import-statement", + "external": true + }, + { + "path": "node:url", + "kind": "import-statement", + "external": true + }, + { + "path": "node:path", + "kind": "dynamic-import", + "external": true + }, + { + "path": "node:path/posix", + "kind": "dynamic-import", + "external": true + } + ], + "exports": [ + "discover" + ], + "entryPoint": "src/index.ts", + "inputs": { + "../../../node_modules/universalify/index.js": { + "bytesInOutput": 469 + }, + "../../../node_modules/graceful-fs/polyfills.js": { + "bytesInOutput": 3837 + }, + "../../../node_modules/graceful-fs/legacy-streams.js": { + "bytesInOutput": 1509 + }, + "../../../node_modules/graceful-fs/clone.js": { + "bytesInOutput": 370 + }, + "../../../node_modules/graceful-fs/graceful-fs.js": { + "bytesInOutput": 5288 + }, + "../../../node_modules/fs-extra/lib/fs/index.js": { + "bytesInOutput": 1537 + }, + "../../../node_modules/fs-extra/lib/mkdirs/utils.js": { + "bytesInOutput": 250 + }, + "../../../node_modules/fs-extra/lib/mkdirs/make-dir.js": { + "bytesInOutput": 293 + }, + "../../../node_modules/fs-extra/lib/mkdirs/index.js": { + "bytesInOutput": 192 + }, + "../../../node_modules/fs-extra/lib/path-exists/index.js": { + "bytesInOutput": 188 + }, + "../../../node_modules/fs-extra/lib/util/utimes.js": { + "bytesInOutput": 354 + }, + "../../../node_modules/fs-extra/lib/util/stat.js": { + "bytesInOutput": 2687 + }, + "../../../node_modules/fs-extra/lib/copy/copy.js": { + "bytesInOutput": 2395 + }, + "../../../node_modules/fs-extra/lib/copy/copy-sync.js": { + "bytesInOutput": 2547 + }, + "../../../node_modules/fs-extra/lib/copy/index.js": { + "bytesInOutput": 99 + }, + "../../../node_modules/fs-extra/lib/remove/index.js": { + "bytesInOutput": 212 + }, + "../../../node_modules/fs-extra/lib/empty/index.js": { + "bytesInOutput": 426 + }, + "../../../node_modules/fs-extra/lib/ensure/file.js": { + "bytesInOutput": 655 + }, + "../../../node_modules/fs-extra/lib/ensure/link.js": { + "bytesInOutput": 675 + }, + "../../../node_modules/fs-extra/lib/ensure/symlink-paths.js": { + "bytesInOutput": 843 + }, + "../../../node_modules/fs-extra/lib/ensure/symlink-type.js": { + "bytesInOutput": 359 + }, + "../../../node_modules/fs-extra/lib/ensure/symlink.js": { + "bytesInOutput": 823 + }, + "../../../node_modules/fs-extra/lib/ensure/index.js": { + "bytesInOutput": 377 + }, + "../../../node_modules/jsonfile/utils.js": { + "bytesInOutput": 278 + }, + "../../../node_modules/jsonfile/index.js": { + "bytesInOutput": 912 + }, + "../../../node_modules/fs-extra/lib/json/jsonfile.js": { + "bytesInOutput": 163 + }, + "../../../node_modules/fs-extra/lib/output-file/index.js": { + "bytesInOutput": 368 + }, + "../../../node_modules/fs-extra/lib/json/output-json.js": { + "bytesInOutput": 150 + }, + "../../../node_modules/fs-extra/lib/json/output-json-sync.js": { + "bytesInOutput": 139 + }, + "../../../node_modules/fs-extra/lib/json/index.js": { + "bytesInOutput": 306 + }, + "../../../node_modules/fs-extra/lib/move/move.js": { + "bytesInOutput": 686 + }, + "../../../node_modules/fs-extra/lib/move/move-sync.js": { + "bytesInOutput": 743 + }, + "../../../node_modules/fs-extra/lib/move/index.js": { + "bytesInOutput": 99 + }, + "../../../node_modules/fs-extra/lib/index.js": { + "bytesInOutput": 127 + }, + "../../../node_modules/yaml/dist/nodes/identity.js": { + "bytesInOutput": 926 + }, + "../../../node_modules/yaml/dist/visit.js": { + "bytesInOutput": 2363 + }, + "../../../node_modules/yaml/dist/doc/directives.js": { + "bytesInOutput": 2414 + }, + "../../../node_modules/yaml/dist/doc/anchors.js": { + "bytesInOutput": 851 + }, + "../../../node_modules/yaml/dist/doc/applyReviver.js": { + "bytesInOutput": 589 + }, + "../../../node_modules/yaml/dist/nodes/toJS.js": { + "bytesInOutput": 414 + }, + "../../../node_modules/yaml/dist/nodes/Node.js": { + "bytesInOutput": 698 + }, + "../../../node_modules/yaml/dist/nodes/Alias.js": { + "bytesInOutput": 1519 + }, + "../../../node_modules/yaml/dist/nodes/Scalar.js": { + "bytesInOutput": 459 + }, + "../../../node_modules/yaml/dist/doc/createNode.js": { + "bytesInOutput": 1275 + }, + "../../../node_modules/yaml/dist/nodes/Collection.js": { + "bytesInOutput": 2083 + }, + "../../../node_modules/yaml/dist/stringify/stringifyComment.js": { + "bytesInOutput": 312 + }, + "../../../node_modules/yaml/dist/stringify/foldFlowLines.js": { + "bytesInOutput": 1250 + }, + "../../../node_modules/yaml/dist/stringify/stringifyString.js": { + "bytesInOutput": 4402 + }, + "../../../node_modules/yaml/dist/stringify/stringify.js": { + "bytesInOutput": 2144 + }, + "../../../node_modules/yaml/dist/stringify/stringifyPair.js": { + "bytesInOutput": 2067 + }, + "../../../node_modules/yaml/dist/log.js": { + "bytesInOutput": 228 + }, + "../../../node_modules/yaml/dist/nodes/addPairToJSMap.js": { + "bytesInOutput": 1584 + }, + "../../../node_modules/yaml/dist/nodes/Pair.js": { + "bytesInOutput": 576 + }, + "../../../node_modules/yaml/dist/stringify/stringifyCollection.js": { + "bytesInOutput": 2121 + }, + "../../../node_modules/yaml/dist/nodes/YAMLMap.js": { + "bytesInOutput": 2036 + }, + "../../../node_modules/yaml/dist/schema/common/map.js": { + "bytesInOutput": 257 + }, + "../../../node_modules/yaml/dist/nodes/YAMLSeq.js": { + "bytesInOutput": 1373 + }, + "../../../node_modules/yaml/dist/schema/common/seq.js": { + "bytesInOutput": 258 + }, + "../../../node_modules/yaml/dist/schema/common/string.js": { + "bytesInOutput": 234 + }, + "../../../node_modules/yaml/dist/schema/common/null.js": { + "bytesInOutput": 298 + }, + "../../../node_modules/yaml/dist/schema/core/bool.js": { + "bytesInOutput": 371 + }, + "../../../node_modules/yaml/dist/stringify/stringifyNumber.js": { + "bytesInOutput": 427 + }, + "../../../node_modules/yaml/dist/schema/core/float.js": { + "bytesInOutput": 912 + }, + "../../../node_modules/yaml/dist/schema/core/int.js": { + "bytesInOutput": 737 + }, + "../../../node_modules/yaml/dist/schema/core/schema.js": { + "bytesInOutput": 213 + }, + "../../../node_modules/yaml/dist/schema/json/schema.js": { + "bytesInOutput": 1055 + }, + "../../../node_modules/yaml/dist/schema/yaml-1.1/binary.js": { + "bytesInOutput": 1197 + }, + "../../../node_modules/yaml/dist/schema/yaml-1.1/pairs.js": { + "bytesInOutput": 1286 + }, + "../../../node_modules/yaml/dist/schema/yaml-1.1/omap.js": { + "bytesInOutput": 1164 + }, + "../../../node_modules/yaml/dist/schema/yaml-1.1/bool.js": { + "bytesInOutput": 499 + }, + "../../../node_modules/yaml/dist/schema/yaml-1.1/float.js": { + "bytesInOutput": 979 + }, + "../../../node_modules/yaml/dist/schema/yaml-1.1/int.js": { + "bytesInOutput": 1142 + }, + "../../../node_modules/yaml/dist/schema/yaml-1.1/set.js": { + "bytesInOutput": 1471 + }, + "../../../node_modules/yaml/dist/schema/yaml-1.1/timestamp.js": { + "bytesInOutput": 1640 + }, + "../../../node_modules/yaml/dist/schema/yaml-1.1/schema.js": { + "bytesInOutput": 346 + }, + "../../../node_modules/yaml/dist/schema/tags.js": { + "bytesInOutput": 1321 + }, + "../../../node_modules/yaml/dist/schema/Schema.js": { + "bytesInOutput": 810 + }, + "../../../node_modules/yaml/dist/stringify/stringifyDocument.js": { + "bytesInOutput": 1208 + }, + "../../../node_modules/yaml/dist/doc/Document.js": { + "bytesInOutput": 4757 + }, + "../../../node_modules/yaml/dist/errors.js": { + "bytesInOutput": 1025 + }, + "../../../node_modules/yaml/dist/compose/resolve-props.js": { + "bytesInOutput": 1838 + }, + "../../../node_modules/yaml/dist/compose/util-contains-newline.js": { + "bytesInOutput": 500 + }, + "../../../node_modules/yaml/dist/compose/util-flow-indent-check.js": { + "bytesInOutput": 279 + }, + "../../../node_modules/yaml/dist/compose/util-map-includes.js": { + "bytesInOutput": 282 + }, + "../../../node_modules/yaml/dist/compose/resolve-block-map.js": { + "bytesInOutput": 2098 + }, + "../../../node_modules/yaml/dist/compose/resolve-block-seq.js": { + "bytesInOutput": 759 + }, + "../../../node_modules/yaml/dist/compose/resolve-end.js": { + "bytesInOutput": 470 + }, + "../../../node_modules/yaml/dist/compose/resolve-flow-collection.js": { + "bytesInOutput": 3383 + }, + "../../../node_modules/yaml/dist/compose/compose-collection.js": { + "bytesInOutput": 1206 + }, + "../../../node_modules/yaml/dist/compose/resolve-block-scalar.js": { + "bytesInOutput": 2826 + }, + "../../../node_modules/yaml/dist/compose/resolve-flow-scalar.js": { + "bytesInOutput": 2824 + }, + "../../../node_modules/yaml/dist/compose/compose-scalar.js": { + "bytesInOutput": 1451 + }, + "../../../node_modules/yaml/dist/compose/util-empty-scalar-position.js": { + "bytesInOutput": 297 + }, + "../../../node_modules/yaml/dist/compose/compose-node.js": { + "bytesInOutput": 1692 + }, + "../../../node_modules/yaml/dist/compose/compose-doc.js": { + "bytesInOutput": 760 + }, + "../../../node_modules/yaml/dist/compose/composer.js": { + "bytesInOutput": 3355 + }, + "../../../node_modules/yaml/dist/parse/cst-scalar.js": { + "bytesInOutput": 3491 + }, + "../../../node_modules/yaml/dist/parse/cst-stringify.js": { + "bytesInOutput": 691 + }, + "../../../node_modules/yaml/dist/parse/cst-visit.js": { + "bytesInOutput": 933 + }, + "../../../node_modules/yaml/dist/parse/cst.js": { + "bytesInOutput": 1429 + }, + "../../../node_modules/yaml/dist/parse/lexer.js": { + "bytesInOutput": 9385 + }, + "../../../node_modules/yaml/dist/parse/line-counter.js": { + "bytesInOutput": 375 + }, + "../../../node_modules/yaml/dist/parse/parser.js": { + "bytesInOutput": 13663 + }, + "../../../node_modules/yaml/dist/public-api.js": { + "bytesInOutput": 1670 + }, + "../../../node_modules/yaml/dist/index.js": { + "bytesInOutput": 845 + }, + "node_modules/@yarnpkg/parsers/lib/grammars/shell.js": { + "bytesInOutput": 25007 + }, + "node_modules/@yarnpkg/parsers/lib/shell.js": { + "bytesInOutput": 3431 + }, + "node_modules/@yarnpkg/parsers/lib/grammars/resolution.js": { + "bytesInOutput": 4580 + }, + "node_modules/@yarnpkg/parsers/lib/resolution.js": { + "bytesInOutput": 759 + }, + "node_modules/js-yaml/lib/js-yaml/common.js": { + "bytesInOutput": 548 + }, + "node_modules/js-yaml/lib/js-yaml/exception.js": { + "bytesInOutput": 542 + }, + "node_modules/js-yaml/lib/js-yaml/mark.js": { + "bytesInOutput": 846 + }, + "node_modules/js-yaml/lib/js-yaml/type.js": { + "bytesInOutput": 907 + }, + "node_modules/js-yaml/lib/js-yaml/schema.js": { + "bytesInOutput": 1566 + }, + "node_modules/js-yaml/lib/js-yaml/type/str.js": { + "bytesInOutput": 149 + }, + "node_modules/js-yaml/lib/js-yaml/type/seq.js": { + "bytesInOutput": 151 + }, + "node_modules/js-yaml/lib/js-yaml/type/map.js": { + "bytesInOutput": 150 + }, + "node_modules/js-yaml/lib/js-yaml/schema/failsafe.js": { + "bytesInOutput": 93 + }, + "node_modules/js-yaml/lib/js-yaml/type/null.js": { + "bytesInOutput": 492 + }, + "node_modules/js-yaml/lib/js-yaml/type/bool.js": { + "bytesInOutput": 605 + }, + "node_modules/js-yaml/lib/js-yaml/type/int.js": { + "bytesInOutput": 1853 + }, + "node_modules/js-yaml/lib/js-yaml/type/float.js": { + "bytesInOutput": 1455 + }, + "node_modules/js-yaml/lib/js-yaml/schema/json.js": { + "bytesInOutput": 113 + }, + "node_modules/js-yaml/lib/js-yaml/schema/core.js": { + "bytesInOutput": 82 + }, + "node_modules/js-yaml/lib/js-yaml/type/timestamp.js": { + "bytesInOutput": 958 + }, + "node_modules/js-yaml/lib/js-yaml/type/merge.js": { + "bytesInOutput": 159 + }, + "node_modules/js-yaml/lib/js-yaml/type/binary.js": { + "bytesInOutput": 1175 + }, + "node_modules/js-yaml/lib/js-yaml/type/omap.js": { + "bytesInOutput": 496 + }, + "node_modules/js-yaml/lib/js-yaml/type/pairs.js": { + "bytesInOutput": 536 + }, + "node_modules/js-yaml/lib/js-yaml/type/set.js": { + "bytesInOutput": 305 + }, + "node_modules/js-yaml/lib/js-yaml/schema/default_safe.js": { + "bytesInOutput": 134 + }, + "node_modules/js-yaml/lib/js-yaml/type/js/undefined.js": { + "bytesInOutput": 260 + }, + "node_modules/js-yaml/lib/js-yaml/type/js/regexp.js": { + "bytesInOutput": 645 + }, + "node_modules/js-yaml/lib/js-yaml/type/js/function.js": { + "bytesInOutput": 1182 + }, + "node_modules/js-yaml/lib/js-yaml/schema/default_full.js": { + "bytesInOutput": 119 + }, + "node_modules/js-yaml/lib/js-yaml/loader.js": { + "bytesInOutput": 16945 + }, + "node_modules/js-yaml/lib/js-yaml/dumper.js": { + "bytesInOutput": 7944 + }, + "node_modules/js-yaml/lib/js-yaml.js": { + "bytesInOutput": 796 + }, + "node_modules/js-yaml/index.js": { + "bytesInOutput": 60 + }, + "node_modules/@yarnpkg/parsers/lib/grammars/syml.js": { + "bytesInOutput": 13346 + }, + "node_modules/@yarnpkg/parsers/lib/syml.js": { + "bytesInOutput": 2151 + }, + "node_modules/@yarnpkg/parsers/lib/index.js": { + "bytesInOutput": 2510 + }, + "src/index.ts": { + "bytesInOutput": 1085 + }, + "src/nodejs/index.ts": { + "bytesInOutput": 8607 + }, + "src/python/index.ts": { + "bytesInOutput": 29 + }, + "src/dart/index.ts": { + "bytesInOutput": 29 + } + }, + "bytes": 245760 + } + } +} diff --git a/packages/@apphosting/discover/package.json b/packages/@apphosting/discover/package.json index d1919a06..355236ad 100644 --- a/packages/@apphosting/discover/package.json +++ b/packages/@apphosting/discover/package.json @@ -1,6 +1,6 @@ { "name": "@apphosting/discover", - "version": "0.1.0", + "version": "0.2.3", "main": "dist/index.js", "description": "Experimental addon to the Firebase CLI to add web framework support", "repository": { @@ -8,7 +8,7 @@ "url": "git+https://github.com/FirebaseExtended/firebase-framework-tools.git" }, "bin": { - "discover": "dist/bin/discover.js" + "discover": "dist/bin/discover.cjs" }, "author": { "name": "Firebase", @@ -18,34 +18,46 @@ "url": "https://github.com/FirebaseExtended/firebase-framework-tools/issues" }, "type": "module", + "module": "./dist/index.mjs", + "types": "./dist/discover.d.ts", "sideEffects": false, "scripts": { - "build": "rm -rf dist && tsc && chmod +x ./dist/bin/*" + "build": "rm -rf dist && run-p build:* && chmod +x ./dist/bin/*", + "build:esm": "esbuild --sourcemap --minify --bundle src/index.ts --outfile=dist/index.mjs --platform=node --format=esm", + "build:cjs": "esbuild --sourcemap --minify --bundle src/index.ts --outfile=dist/index.cjs --platform=node --format=cjs", + "build:bin": "esbuild --sourcemap --minify --bundle src/bin/discover.ts --outfile=dist/bin/discover.cjs --platform=node --format=cjs --external:@apphosting/discover", + "build:types": "tsc && api-extractor run --local && rm -rf dist/_types" }, "exports": { ".": { - "node": "./dist/index.js", - "default": null + "types": "./dist/discover.d.ts", + "require": "./dist/index.cjs", + "import": "./dist/index.mjs" } }, "files": [ "dist" ], "license": "Apache-2.0", - "dependencies": { + "devDependencies": { + "@microsoft/api-extractor": "^7.52.11", "@npmcli/arborist": "^7.2.1", + "@types/commander": "*", + "@types/lodash": "^4.17.20", + "@types/npmcli__arborist": "*", + "@types/yarnpkg__lockfile": "*", "@yarnpkg/lockfile": "^1.1.0", + "@yarnpkg/parsers": "^3.0.3", "colorette": "^2.0.20", "commander": "^11.1.0", + "esbuild": "^0.25.9", "fs-extra": "^11.1.1", + "glob": "^11.0.3", + "lodash": "^4.17.21", "npm-pick-manifest": "^9.0.0", + "npm-run-all": "*", "toml": "^3.0.0", "ts-node": "^10.9.1", "yaml": "^2.3.4" - }, - "devDependencies": { - "@types/commander": "*", - "@types/npmcli__arborist": "*", - "@types/yarnpkg__lockfile": "*" } } diff --git a/packages/@apphosting/discover/src/bin/discover.ts b/packages/@apphosting/discover/src/bin/discover.ts index 62427d7a..65953009 100644 --- a/packages/@apphosting/discover/src/bin/discover.ts +++ b/packages/@apphosting/discover/src/bin/discover.ts @@ -1,7 +1,7 @@ #! /usr/bin/env node import { program } from "commander"; import { performance } from "node:perf_hooks"; -import { discover } from "../index.js"; +import { discover } from "@apphosting/discover"; program .option("--github-token ") @@ -9,8 +9,8 @@ program .argument("", "path to the project's root directory") .action( async (path, { githubRepo, githubToken }: { githubRepo?: string; githubToken?: string }) => { - const discoveredFrameworks = await discover(path, githubRepo, githubToken); - process.stdout.write(JSON.stringify({ discovered: discoveredFrameworks }, undefined, 2)); + const discoveredFrameworks = await discover(path, { githubRepo, githubToken }); + process.stdout.write(JSON.stringify(discoveredFrameworks, undefined, 2)); process.stderr.write(`\nDone in ${performance.now()}ms`); }, ); diff --git a/packages/@apphosting/discover/src/dart/index.ts b/packages/@apphosting/discover/src/dart/index.ts new file mode 100644 index 00000000..8874b75c --- /dev/null +++ b/packages/@apphosting/discover/src/dart/index.ts @@ -0,0 +1,6 @@ +import { DiscoveredFramework } from "../index.js"; + +export async function discoverDartFrameworks() : Promise> { + return []; +} + diff --git a/packages/@apphosting/discover/src/index.ts b/packages/@apphosting/discover/src/index.ts index 51eb2b4f..78cd0c22 100644 --- a/packages/@apphosting/discover/src/index.ts +++ b/packages/@apphosting/discover/src/index.ts @@ -1,79 +1,28 @@ -import fsExtra from "fs-extra"; -import YarnLockfile from "@yarnpkg/lockfile"; -import { parse as parseYaml } from "yaml"; -import * as toml from "toml"; +import { readFile, readJson, pathExists } from "fs-extra"; +import { discoverNodeJSFrameworks } from "./nodejs/index.js"; +import { discoverPythonFrameworks } from "./python/index.js"; +import { discoverDartFrameworks } from "./dart/index.js"; +import { MockFileSystem } from "./interfaces.js"; -export const PLATFORMS = [ - // [id, files[], defaultPackageManger, packageManagers[], frameworks[]] - [ - "nodejs", - ["package.json"], - "npm", - [ - // [id, lockfiles[]] - ["npm", ["npm-shrinkwrap.json", "package-lock.json"]], - ["yarn", ["yarn.lock"]], - ["pnpm", ["pnpm-lock.yaml"]], - ], - [ - // [id, deps[], files[], bundles[]] - ["nextjs", ["next"], [], ["react"]], - ["angular", ["@angular/core"], ["angular.json"], ["vite"]], - [ - "astro", - ["astro"], - ["astro.config.js", "astro.config.mjs", "astro.config.cjs", "astro.config.ts"], - ["lit", "react", "preact", "svelte", "vue", "vite"], - ], - ["nuxt", ["nuxt"], ["nuxt.config.js"], ["vue"]], - ["lit", ["lit", "lit-element"], [], []], - ["vue", ["vue"], [], []], - ["vite", ["vite"], [], ["vue", "react", "preact", "lit", "svelte"]], - ["preact", ["preact"], [], []], - ["react", ["react", "react-dom"], [], []], - ["svelte", ["svelte"], [], []], - ["sveltekit", ["@sveltejs/kit"], [], ["svelte", "vite"]], - ], - ], - [ - "python", - [], - "pip", - [ - // [id, lockfiles[]] - ["pip", []], - ["pipenv", ["Pipfile.lock"]], - ["poetry", ["poetry.lock"]], - ], - [ - // [id, deps[], files[], bundles[]] - ["flask", ["flask"], [], []], - ["django", ["django"], [], []], - ], - ], -] as const; +/** + * Deterministically discover frameworks! + * @public + */ +export async function discover(directory: string, options: { githubRepo?: string, githubToken?: string } = {}) { + if (options.githubRepo && !options.githubToken) throw new Error("needs token"); -type DiscoveredFramework = { - framework: (typeof PLATFORMS)[number][4][number][0]; - version: string; - packageManager: (typeof PLATFORMS)[number][3][number][0]; - platform: (typeof PLATFORMS)[number][0]; - bundledWith?: Array<(typeof PLATFORMS)[number][4][number][0]>; -}; - -export async function discover(directory: string, githubRepo?: string, githubToken?: string) { - if (githubRepo && !githubToken) throw new Error("needs token"); + const path = await (options.githubRepo ? import("node:path") : import("node:path/posix")); - const path = await (githubRepo ? import("node:path") : import("node:path/posix")); + const root = options.githubRepo ? directory : path.resolve(directory); - const { readFile, pathExists, readJson } = githubRepo + const fs: MockFileSystem = options.githubRepo ? { readFile: async function (path: string) { const response = await fetch( - `https://api.github.com/repos/${githubRepo}/contents/${path}`, + `https://api.github.com/repos/${options.githubRepo}/contents/${path}`, { headers: { - authorization: `Bearer ${githubToken}`, + authorization: `Bearer ${options.githubToken}`, accept: "application/vnd.github.raw", }, }, @@ -83,11 +32,11 @@ export async function discover(directory: string, githubRepo?: string, githubTok }, pathExists: async function (path: string) { const response = await fetch( - `https://api.github.com/repos/${githubRepo}/contents/${path}`, + `https://api.github.com/repos/${options.githubRepo}/contents/${path}`, { method: "HEAD", headers: { - authorization: `Bearer ${githubToken}`, + authorization: `Bearer ${options.githubToken}`, accept: "application/vnd.github.raw", }, }, @@ -96,10 +45,10 @@ export async function discover(directory: string, githubRepo?: string, githubTok }, readJson: async function (path: string) { const response = await fetch( - `https://api.github.com/repos/${githubRepo}/contents/${path}`, + `https://api.github.com/repos/${options.githubRepo}/contents/${path}`, { headers: { - authorization: `Bearer ${githubToken}`, + authorization: `Bearer ${options.githubToken}`, accept: "application/vnd.github.raw", }, }, @@ -108,141 +57,67 @@ export async function discover(directory: string, githubRepo?: string, githubTok return await response.json(); }, } - : fsExtra; + : { + readFile, pathExists, readJson + }; - const discoveredFrameworks: Array = []; + return (await Promise.all([ + discoverNodeJSFrameworks(root, fs, path), + discoverPythonFrameworks(), + discoverDartFrameworks(), + ])).flat(); - await Promise.all( - PLATFORMS.map( - async ([platform, files, defaultPackageManager, packageManagers, frameworkDefinitions]) => { - const filesExist = await Promise.all( - files.map((it) => pathExists(path.join(directory, it))), - ); - if (files.length && !filesExist.some((it) => it)) return; - const discoverFrameworks = (fallback = false) => { - return async ([packageManager, possibleLockfiles]: (typeof packageManagers)[number]) => { - const possibleLockfilesExist = await Promise.all( - possibleLockfiles.map((it) => pathExists(path.join(directory, it))), - ); - const [lockfile] = possibleLockfilesExist - .map((exists, index) => (exists ? possibleLockfiles[index] : undefined)) - .filter((it) => !!it); - if (!lockfile && !fallback) return false; +} - let packages = new Map(); - if (platform === "nodejs") { - // TODO handle workspaces - if (lockfile === "package-lock.json" || lockfile === "npm-shrinkwrap.json") { - const packageJSON = await readJson(path.join(directory, lockfile)); - packages = new Map( - Object.keys(packageJSON.packages).map((pkg) => { - const name = pkg.replace(/^node_modules\//, ""); - const version: string = packageJSON.packages[pkg].version; - return [name, version]; - }), - ); - } else if (lockfile === "yarn.lock") { - const file = await readFile(path.join(directory, lockfile)); - const yarnLock = YarnLockfile.parse(file.toString()); - if (yarnLock.type !== "success") throw new Error(`unable to read ${lockfile}`); - packages = new Map( - Object.keys(yarnLock.object).map((pkg) => { - const parts = pkg.split("@"); - const version = parts.pop()!; - return [parts.join("@"), version]; - }), - ); - } else if (lockfile === "pnpm-lock.yaml") { - const file = await readFile(path.join(directory, lockfile)); - const pnpmLock = parseYaml(file.toString()); - packages = new Map( - Object.keys(pnpmLock.packages).map((pkg) => { - const parts = pkg.replace(/^\//, "").split("(")[0].split("@"); - const version = parts.pop()!; - return [parts.join("@"), version]; - }), - ); - } - } else if (platform === "python") { - if (packageManager === "pip") { - const requirementsFile = "requirements.txt"; - const requirementsFileExists = await pathExists( - path.join(directory, requirementsFile), - ); - if (!requirementsFileExists) return false; - const file = await readFile(path.join(directory, requirementsFile)); - packages = new Map( - file - .toString() - .split("\n") - .map((it) => { - return [it.trim().replace("-", "_").toLowerCase(), "*"]; - }), - ); - } else if (lockfile === "Pipfile.lock") { - const pipfileLock = await readJson(path.join(directory, lockfile)); - // TODO include develop too? - packages = new Map( - Object.keys(pipfileLock.default).map((name) => { - // TODO convert to Node semver? - const version = pipfileLock.default[name].version.split("==")[1]; - return [name, version]; - }), - ); - } else if (lockfile === "poetry.lock") { - const poetryLock = await readFile(path.join(directory, lockfile)); - packages = new Map( - toml - .parse(poetryLock.toString()) - .package?.map((it: { name: string; version: string }) => [it.name, it.version]), - ); - } - } +/** + * @public + */ +export type Command = [string, string[]]; - for (const [framework, requiredPackages, requiredFiles = []] of frameworkDefinitions) { - const requiredPackagePresent = requiredPackages.some((it) => packages.has(it)); - if (!requiredPackagePresent) continue; - const requiredFileExist = - requiredFiles.length === 0 || - ( - await Promise.all(requiredFiles.map((it) => pathExists(path.join(directory, it)))) - ).some((it) => it); - if (!requiredFileExist) continue; - const [packageName] = requiredPackages; - if (packageName) - discoveredFrameworks.push({ - framework, - version: packages.get(packageName)!, - packageManager, - platform, - }); - } +/** + * @public + */ +export interface DiscoveredFramework { + root_directory: string; + id: string; + version?: string; + single_page_app: boolean; + dist_directory: string; + packageManager: { + id: string; + version?: string; + metadata: Record; + } + monorepo_tooling?: Record; + platform: { + id: RUNTIME; + version: string; + } + commands: { + install: Command[]; + build: Command[]; + dev: Command; + serve?: Command; + } + known_adapters?: Partial>; + discoveryComplete: boolean; + stepsNeededForDiscovery?: Array<"install" | "build">; +}; - return !!lockfile; - }; - }; - const packageManagerResults = await Promise.all( - packageManagers.map(discoverFrameworks(false)), - ); - if (!packageManagerResults.some((it) => it)) { - const fallback = packageManagers.find(([id]) => id === defaultPackageManager); - if (fallback) await discoverFrameworks(true)(fallback); - } - }, - ), - ); +/** + * @public + */ +export interface Adapter { + id: string; + channel: "community" | "experimental" | "official"; +}; - for (const { framework, platform } of discoveredFrameworks) { - const [, , , , defitions] = PLATFORMS.find(([id]) => id === platform)!; - const [, , , bundles] = defitions.find(([id]) => id === framework)!; - for (const bundle of bundles) { - const discovery = discoveredFrameworks.find(({ framework }) => framework === bundle); - if (discovery) { - discovery.bundledWith ||= []; - discovery.bundledWith.push(framework); - } - } - } +/** + * @public + */ +export type RUNTIME = "nodejs" | "python" | "dart"; - return discoveredFrameworks; -} +/** + * @public + */ +export type TARGET_PLATFORM = "firebase"; diff --git a/packages/@apphosting/discover/src/interfaces.ts b/packages/@apphosting/discover/src/interfaces.ts new file mode 100644 index 00000000..387601cd --- /dev/null +++ b/packages/@apphosting/discover/src/interfaces.ts @@ -0,0 +1,11 @@ +export interface DiscoveryContext { + root: string; + fs: MockFileSystem; + path: typeof import("node:path"); +}; + +export type MockFileSystem = { + readFile: (path: string) => Promise; + pathExists: (path: string) => Promise; + readJson: (path: string) => Promise; +}; diff --git a/packages/@apphosting/discover/src/nodejs/discovery.ts b/packages/@apphosting/discover/src/nodejs/discovery.ts new file mode 100644 index 00000000..895a2797 --- /dev/null +++ b/packages/@apphosting/discover/src/nodejs/discovery.ts @@ -0,0 +1,166 @@ +import { DiscoveredFramework, Command } from "../index.js"; +import { DiscoveryContext } from "../interfaces.js"; +import { PackageManagerInfo } from "./pm.js"; +import { WorkspaceInfo } from "./workspaces.js"; +import { FRAMEWORK_ID, knownAdapters, knownFrameworks } from "./frameworks.js"; + +// lodash/fp doesn't have types :( +// @ts-ignore +import { merge as _merge } from "lodash/fp/object"; +const merge = _merge as typeof import("lodash")["merge"]; + +export async function discoverAngularProjects( + ctx: DiscoveryContext, + pm: PackageManagerInfo, + workspace: WorkspaceInfo, + dependencies: Map>, + installCommand: Command[], + packageJSON: any, +): Promise { + // TODO handle angular inside of nx, etc. + if (workspace.tooling! !== "angular") return []; + const { root, fs, path } = ctx; + const discoveredFrameworks: DiscoveredFramework[] = []; + const angularJSON = await fs.readJson(path.join(workspace.root || root, "angular.json")); + if (angularJSON.projects) { + for (const target of Object.keys(angularJSON.projects)) { + const project = angularJSON.projects[target]; + if (project.projectType !== "application" || !project.architect?.build) continue; + + const root_directory = path.join(workspace.root || root, project.root || "."); + const isStatic = !project.architect?.build?.options?.ssr || project.architect?.build?.options?.outputMode === "static"; + const dist_directory = `${project.architect.build.options?.outputPath || `dist/${target}`}${isStatic && project.architect.build.builder.endsWith(":application") ? "/browser" : ""}`; + + discoveredFrameworks.push({ + root_directory: path.relative(root, root_directory) || ".", + id: "angular", + //version: dependencies.get("@angular/core")?.version, + single_page_app: isStatic, + dist_directory, + monorepo_tooling: { + id: workspace.tooling!, + target, + version: dependencies.get("@angular/core"), + }, + packageManager: { + id: pm.id, + version: pm.version, + metadata: { + lockfile: pm.lockfile, + corepack: pm.corepack, + workspace: !!workspace.root, + root_directory: workspace.root && path.relative(root, workspace.root) || ".", + }, + }, + platform: { id: "nodejs", version: packageJSON.engines?.node }, + commands: { + install: installCommand, + build: [[pm.id, ["run", "build"]]], + dev: [pm.id, ["start"]], + serve: isStatic ? ["npx", ["-y", "superstatic", "serve", "-p", "$PORT", "--compression", "--host", "0.0.0.0", "."]] : ["node", ["./server/server.mjs"]], + }, + known_adapters: knownAdapters.angular, + discoveryComplete: true, + }); + } + } + return discoveredFrameworks; +} + +export async function discoverOtherFrameworks( + ctx: DiscoveryContext, + pm: PackageManagerInfo, + workspace: WorkspaceInfo, + dependencies: Map>, + installCommand: Command[], + packageJSON: any, +): Promise { + const { root, fs, path } = ctx; + console.log({ctx, pm, workspace}); + const discoveredFrameworks: DiscoveredFramework[] = []; + await Promise.all(Array.from(workspace.directories).map(async (directory) => { + for (const framework of knownFrameworks) { + if (framework.id === "angular" && workspace.tooling === "angular") continue; + + const hasRequiredFile = framework.requiredFiles.length === 0 || (await Promise.all(framework.requiredFiles.map(file => fs.pathExists(path.join(directory, file))))).some(exists => exists); + if (!hasRequiredFile) continue; + + const hasRequiredPackage = framework.requiredPackages.some(pkg => !!dependencies.get(directory)?.has(pkg)); + if (!hasRequiredPackage) continue; + + let target: string|undefined; + if (workspace.tooling) { + const packageJson = await fs.readJson(path.join(directory, "package.json")); + target = packageJson.name; + } + + const baseFramework: DiscoveredFramework = { + root_directory: path.relative(root, directory) || ".", + id: framework.id as FRAMEWORK_ID, + //version: dependencies.get(framework.requiredPackages[0])?.version || "0.0.0", + single_page_app: false, + dist_directory: "dist", + monorepo_tooling: workspace.tooling ? { + id: workspace.tooling, + target, + root: workspace.root && path.relative(root, workspace.root) || "." + } : undefined, + packageManager: { + id: pm.id, + version: pm.version, + metadata: { + lockfile: pm.lockfile, + corepack: pm.corepack, + workspace: !!workspace.root, + root_directory: workspace.root && path.relative(root, workspace.root) || "." + }, + }, + platform: { id: "nodejs", version: packageJSON.engines?.node }, + // TODO check that these commands are present + commands: { + install: installCommand, + build: workspace.tooling ? [[workspace.tooling, ["run", "build", `--scope=${target!}`]]] : [[pm.id, ["run", "build"]]], + dev: [pm.id, ["run", "dev", `--prefix=${path.relative(root, directory) || "."}`]], // add prefix + serve: [pm.id, ["start"]] + }, + known_adapters: knownAdapters[framework.id as FRAMEWORK_ID], + discoveryComplete: true, + }; + + const discoveryProps = framework.getDiscoveryProps ? await framework.getDiscoveryProps(ctx) : {}; + discoveredFrameworks.push(merge(baseFramework, discoveryProps)); + } + })); + return discoveredFrameworks; +} + +export function createDefaultNodeProject( + ctx: DiscoveryContext, + pm: PackageManagerInfo, + workspace: WorkspaceInfo, + installCommand: Command[], + packageJSON: any, +): DiscoveredFramework { + const { root, path } = ctx; + return { + root_directory: ".", + id: "nodejs", + version: "0.0.0", + single_page_app: false, + dist_directory: ".", + monorepo_tooling: workspace.tooling ? { id: workspace.tooling, target: undefined } : undefined, + packageManager: { + id: pm.id, + version: pm.version, + metadata: { lockfile: pm.lockfile, corepack: pm.corepack, workspace: !!workspace.root, root_directory: workspace.root && (path.relative(root, workspace.root) || ".") }, + }, + platform: { id: "nodejs", version: packageJSON.engines?.node || "0.0.0" }, + commands: { + install: installCommand, + build: [[pm.id, ["run", "build"]]], + dev: [pm.id, ["run", "dev"]], + serve: [pm.id, ["start"]] + }, + discoveryComplete: true, + }; +} diff --git a/packages/@apphosting/discover/src/nodejs/frameworks.ts b/packages/@apphosting/discover/src/nodejs/frameworks.ts new file mode 100644 index 00000000..bdb4a40b --- /dev/null +++ b/packages/@apphosting/discover/src/nodejs/frameworks.ts @@ -0,0 +1,85 @@ +import { join } from "node:path"; +import { Adapter, DiscoveredFramework, TARGET_PLATFORM } from "../index.js"; +import { DiscoveryContext } from "../interfaces.js"; +import { relativeRequire } from "./utils.js"; + +// Type definitions moved from index.ts +type DeepPartial = T extends object ? { + [P in keyof T]?: DeepPartial; +} : T; + +export type FrameworkDefinition = { + id: string; + requiredPackages: readonly string[]; + requiredFiles: readonly string[]; + bundledWith: readonly string[]; + getDiscoveryProps?: (ctx: DiscoveryContext) => Promise>; +}; + +export const knownAdapters: Partial>> = { + "nextjs": { "firebase": { id: "@apphosting/adapter-nextjs", channel: "official" }}, + "angular": { "firebase": { id: "@apphosting/adapter-angular", channel: "official" }}, + "astro": { "firebase": { id: "@apphosting/adapter-astro", channel: "experimental" }}, +}; + +async function getNextjsDiscoveryProps(ctx: DiscoveryContext): Promise> { + // TODO clean up the error handling here + const [{ default: loadConfig }, { PHASE_PRODUCTION_BUILD }] = await Promise.all([ + relativeRequire(ctx.root, "next/dist/server/config").catch(() => ({ default: null })), + relativeRequire(ctx.root, "next/constants").catch(() => ({ PHASE_PRODUCTION_BUILD: null })), + ]); + if (!loadConfig || !PHASE_PRODUCTION_BUILD) return { + single_page_app: false, + dist_directory: ".next", + discoveryComplete: false, + stepsNeededForDiscovery: ["install"], + }; + const nextConfig = await loadConfig(PHASE_PRODUCTION_BUILD, ctx.root); + const isExport = nextConfig.output === "export"; + const isStandalone = nextConfig.output === "standalone"; + return { + single_page_app: isExport, + dist_directory: isExport ? "out" : (isStandalone ? join(nextConfig.distDir, "standalone") : nextConfig.distDir), + ...(isStandalone ? { + commands: { + serve: ["node", ["./server.mjs"]] + } + } : {}) + }; +} + +export const knownFrameworks: readonly FrameworkDefinition[] = [ + { id: "nextjs", requiredPackages: ["next"], requiredFiles: [], bundledWith: ["react"], getDiscoveryProps: getNextjsDiscoveryProps }, + { id: "angular", requiredPackages: ["@angular/core"], requiredFiles: ["angular.json"], bundledWith: ["vite", "scully"], getDiscoveryProps: () => Promise.resolve({ single_page_app: false }) }, + { id: "scully", requiredPackages: ["@scullyio/scully"], requiredFiles: ["scully.config.js"], bundledWith: [], getDiscoveryProps: () => Promise.resolve({ single_page_app: true }) }, // TODO bundle angular correctly + { id: "astro", requiredPackages: ["astro"], requiredFiles: ["astro.config.js", "astro.config.mjs", "astro.config.cjs", "astro.config.ts"], bundledWith: ["lit", "react", "preact", "svelte", "vue", "vite"], getDiscoveryProps: () => Promise.resolve({ single_page_app: false }) }, // TODO handle static detection + { id: "nuxt", requiredPackages: ["nuxt"], requiredFiles: ["nuxt.config.js"], bundledWith: ["vue"], getDiscoveryProps: () => Promise.resolve({ single_page_app: false }) }, + { id: "lit", requiredPackages: ["lit", "lit-element"], requiredFiles: [], bundledWith: [], getDiscoveryProps: () => Promise.resolve({ single_page_app: true }) }, + { id: "vue", requiredPackages: ["vue"], requiredFiles: [], bundledWith: [], getDiscoveryProps: () => Promise.resolve({ single_page_app: true }) }, + { id: "nuxtjs", requiredPackages: ["nuxt"], requiredFiles: ["nuxt.config.js"], bundledWith: ["vue"], getDiscoveryProps: () => Promise.resolve({ single_page_app: false }) }, + { id: "vuepress", requiredPackages: ["vuepress"], requiredFiles: [], bundledWith: ["vue"], getDiscoveryProps: () => Promise.resolve({ single_page_app: true, dist_directory: "docs/.vuepress/dist" }) }, + { id: "vite", requiredPackages: ["vite"], requiredFiles: [], bundledWith: ["vue", "react", "preact", "lit", "svelte", "solid"], getDiscoveryProps: () => Promise.resolve({ single_page_app: true }) }, + { id: "vitepress", requiredPackages: ["vitepress"], requiredFiles: [], bundledWith: ["vue"], getDiscoveryProps: () => Promise.resolve({ single_page_app: true, dist_directory: "docs/.vitepress/dist" }) }, + { id: "preact", requiredPackages: ["preact"], requiredFiles: [], bundledWith: [], getDiscoveryProps: () => Promise.resolve({ single_page_app: true, dist_directory: "build" }) }, + { id: "react", requiredPackages: ["react", "react-dom"], requiredFiles: [], bundledWith: [], getDiscoveryProps: () => Promise.resolve({ single_page_app: true, dist_directory: "build" }) }, + { id: "gatsby", requiredPackages: ["gatsby"], requiredFiles: ["gatsby-config.js"], bundledWith: ["react"], getDiscoveryProps: () => Promise.resolve({ single_page_app: true, dist_directory: "public" }) }, + { id: "docusaurus", requiredPackages: ["@docusaurus/core"], requiredFiles: ["docusaurus.config.js"], bundledWith: ["react"], getDiscoveryProps: () => Promise.resolve({ single_page_app: true, dist_directory: "build" }) }, + { id: "svelte", requiredPackages: ["svelte"], requiredFiles: [], bundledWith: [], getDiscoveryProps: () => Promise.resolve({ single_page_app: true }) }, + { id: "sapper", requiredPackages: ["sapper"], requiredFiles: [], bundledWith: ["svelte"], getDiscoveryProps: () => Promise.resolve({ single_page_app: true, dist_directory: "__sapper__/export" }) }, + { id: "sveltekit", requiredPackages: ["@sveltejs/kit"], requiredFiles: [], bundledWith: ["svelte", "vite"], getDiscoveryProps: () => Promise.resolve({ single_page_app: false }) }, + { id: "stencil", requiredPackages: ["@stencil/core"], requiredFiles: ["stencil.config.ts"], bundledWith: [], getDiscoveryProps: () => Promise.resolve({ single_page_app: true, dist_directory: "www" }) }, + { id: "aurelia", requiredPackages: ["aurelia"], requiredFiles: [], bundledWith: [], getDiscoveryProps: () => Promise.resolve({ single_page_app: true }) }, + { id: "ember", requiredPackages: ["ember-cli", "ember-load-initializers", "ember-resolver"], requiredFiles: [], bundledWith: [], getDiscoveryProps: () => Promise.resolve({ single_page_app: true }) }, // TODO handle fastboot + { id: "riot", requiredPackages: ["riot"], requiredFiles: [], bundledWith: [], getDiscoveryProps: () => Promise.resolve({ single_page_app: true }) }, + { id: "polymer", requiredPackages: ["@polymer/polymer"], requiredFiles: ["polymer.json"], bundledWith: [], getDiscoveryProps: () => Promise.resolve({ single_page_app: true, dist_directory: "build/es6-bundled" }) }, + { id: "eleventy", requiredPackages: ["@11ty/eleventy"], requiredFiles: [], bundledWith: [], getDiscoveryProps: () => Promise.resolve({ single_page_app: true, dist_directory: "_site" }) }, + { id: "solidjs", requiredPackages: ["solid-js", "solid-app-router"], requiredFiles: [], bundledWith: [], getDiscoveryProps: () => Promise.resolve({ single_page_app: true }) }, + { id: "solid-start", requiredPackages: ["solid-start"], requiredFiles: [], bundledWith: ["solid-js"], getDiscoveryProps: () => Promise.resolve({ single_page_app: false }) }, + { id: "remix", requiredPackages: ["remix"], requiredFiles: [], bundledWith: ["react"], getDiscoveryProps: () => Promise.resolve({ single_page_app: false, dist_directory: "public" }) }, + { id: "redwood", requiredPackages: ["@redwoodjs/core"], requiredFiles: [], bundledWith: ["react"], getDiscoveryProps: () => Promise.resolve({ single_page_app: false, dist_directory: "web/dist" }) }, + { id: "quasar", requiredPackages: ["quasar"], requiredFiles: [], bundledWith: ["vue"], getDiscoveryProps: () => Promise.resolve({ single_page_app: true, dist_directory: "dist/spa" }) }, + { id: "ionic", requiredPackages: ["@ionic/react", "@ionic/angular"], requiredFiles: [], bundledWith: ["react", "angular"], getDiscoveryProps: () => Promise.resolve({ single_page_app: true, dist_directory: "www" }) }, + { id: "react-static", requiredPackages: ["react-static"], requiredFiles: [], bundledWith: ["react"], getDiscoveryProps: () => Promise.resolve({ single_page_app: true }) }, +]; + +export type FRAMEWORK_ID = (typeof knownFrameworks)[number]['id']; diff --git a/packages/@apphosting/discover/src/nodejs/index.ts b/packages/@apphosting/discover/src/nodejs/index.ts new file mode 100644 index 00000000..aaed6eae --- /dev/null +++ b/packages/@apphosting/discover/src/nodejs/index.ts @@ -0,0 +1,35 @@ +import { DiscoveredFramework } from "../index.js"; +import { DiscoveryContext, MockFileSystem } from "../interfaces.js"; +import { detectPackageManager, getInstallCommand } from "./pm.js"; +import { findWorkspaceInfo, getDependencies } from "./workspaces.js"; +import { discoverAngularProjects, discoverOtherFrameworks, createDefaultNodeProject } from "./discovery.js"; +import { knownFrameworks } from "./frameworks.js"; + +export async function discoverNodeJSFrameworks(root: string, fs: MockFileSystem, path: typeof import("node:path")) : Promise> { + const ctx: DiscoveryContext = { root, fs, path }; + const packageJsonExists = await fs.pathExists(path.join(root, "package.json")); + if (!packageJsonExists) return []; + + const packageManager = await detectPackageManager(ctx); + const workspace = await findWorkspaceInfo(ctx, packageManager.lockfile); + const dependencies = await getDependencies(ctx, packageManager.lockfile, workspace.root); + const installCommand = getInstallCommand(packageManager); + const packageJSON = await fs.readJson(path.join(root, "package.json")); + + // TODO scope down the dependencies and add directory scanning + const discoveredFrameworks: Array = (await Promise.all([ + discoverAngularProjects(ctx, packageManager, workspace, dependencies, installCommand, packageJSON), + discoverOtherFrameworks(ctx, packageManager, workspace, dependencies, installCommand, packageJSON), + ])).flat(); + + if (discoveredFrameworks.length === 0) { + const defaultProject = createDefaultNodeProject(ctx, packageManager, workspace, installCommand, packageJSON); + discoveredFrameworks.push(defaultProject); + } + + const bundledFrameworkIds = new Set( + discoveredFrameworks.flatMap(fw => knownFrameworks.find(def => def.id === fw.id)?.bundledWith || []) + ); + + return discoveredFrameworks.filter(fw => !bundledFrameworkIds.has(fw.id)); +} diff --git a/packages/@apphosting/discover/src/nodejs/pm.ts b/packages/@apphosting/discover/src/nodejs/pm.ts new file mode 100644 index 00000000..47ffe006 --- /dev/null +++ b/packages/@apphosting/discover/src/nodejs/pm.ts @@ -0,0 +1,49 @@ +import { readJSON } from "fs-extra"; +import { Command } from "../index.js"; +import { DiscoveryContext } from "../interfaces.js"; + +export type PackageManagerInfo = { + id: "npm" | "yarn" | "pnpm"; + version?: string; + lockfile?: string; + corepack: boolean; +}; + +export async function detectPackageManager(ctx: DiscoveryContext): Promise { + const { root, fs: { pathExists }, path } = ctx; + const packageJSON = await readJSON(path.join(root, "package.json")); + + let id: "npm" | "yarn" | "pnpm" = "npm"; + let version: string | undefined; + let corepack = false; + + if (packageJSON.packageManager) { + const [pm, v] = packageJSON.packageManager.split("@"); + id = pm as "npm" | "yarn" | "pnpm"; + version = v; + corepack = true; + } + + let lockfile: string | undefined; + if (await pathExists(path.join(root, "yarn.lock"))) { + id = "yarn"; + lockfile = "yarn.lock"; + } else if (await pathExists(path.join(root, "pnpm-lock.yaml"))) { + id = "pnpm"; + lockfile = "pnpm-lock.yaml"; + } else if (await pathExists(path.join(root, "package-lock.json"))) { + lockfile = "package-lock.json"; + } else if (await pathExists(path.join(root, "npm-shrinkwrap.json"))) { + lockfile = "npm-shrinkwrap.json"; + } + + version ||= packageJSON.engines?.[id]; + + return { id, version, lockfile, corepack }; +} + +export function getInstallCommand(pm: PackageManagerInfo): Command[] { + if (pm.id === "yarn") return [["yarn", ["install", "--immutable"]]]; + if (pm.id === "pnpm") return [["pnpm", ["install", "--frozen-lockfile"]]]; + return [["npm", ["ci", "--include=dev"]]]; +} diff --git a/packages/@apphosting/discover/src/nodejs/utils.ts b/packages/@apphosting/discover/src/nodejs/utils.ts new file mode 100644 index 00000000..8e01fa44 --- /dev/null +++ b/packages/@apphosting/discover/src/nodejs/utils.ts @@ -0,0 +1,66 @@ +import { dirname, extname, join } from "node:path"; +import { pathToFileURL } from "node:url"; +import { readJSON } from "fs-extra"; + +// If being compiled with webpack, use non webpack require for these calls. +// (VSCode plugin uses webpack which by default replaces require calls +// with its own require, which doesn't work on files) +// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment +const requireFunc = + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore prevent VSCE webpack from erroring on non_webpack_require + // eslint-disable-next-line camelcase + typeof __webpack_require__ === "function" ? __non_webpack_require__ : require; + +function dynamicImport(mod: string) { + if (mod.startsWith("file://")) return import(mod); + if (mod.startsWith("/")) return import(pathToFileURL(mod).toString()); + try { + const path = requireFunc.resolve(mod); + return import(pathToFileURL(path).toString()); + } catch(e) { + return Promise.reject(e); + } +} + +// Only the fields being used are defined here +export interface PackageJson { + main: string; + type?: "commonjs" | "module"; +} + +export async function relativeRequire(dir: string, mod: string) { + // If being compiled with webpack, use non webpack require for these calls. + // (VSCode plugin uses webpack which by default replaces require calls + // with its own require, which doesn't work on files) + // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment + const requireFunc: typeof require = + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore prevent VSCE webpack from erroring on non_webpack_require + // eslint-disable-next-line camelcase + typeof __webpack_require__ === "function" ? __non_webpack_require__ : require; + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore prevent VSCE webpack from erroring on non_webpack_require + const path = requireFunc.resolve(mod, { paths: [dir] }); + + let packageJson: PackageJson | undefined; + let isEsm = extname(path) === ".mjs"; + if (!isEsm) { + packageJson = await readJSON( + join(dirname(path), "package.json"), + ).catch(() => undefined); + + isEsm = packageJson?.type === "module"; + } + + if (isEsm) { + // in case path resolves to a cjs file, use main from package.json + if (extname(path) === ".cjs" && packageJson?.main) { + return dynamicImport(join(dirname(path), packageJson.main)); + } + + return dynamicImport(pathToFileURL(path).toString()); + } else { + return requireFunc(path); + } +} diff --git a/packages/@apphosting/discover/src/nodejs/workspaces.ts b/packages/@apphosting/discover/src/nodejs/workspaces.ts new file mode 100644 index 00000000..74ba6188 --- /dev/null +++ b/packages/@apphosting/discover/src/nodejs/workspaces.ts @@ -0,0 +1,122 @@ +import { parse as parseYaml } from "yaml"; +import { parseSyml } from '@yarnpkg/parsers'; +import { DiscoveryContext } from "../interfaces.js"; +import { globStream } from "glob"; + +export type WorkspaceInfo = { + root?: string; + directories: Set; + tooling?: string; +}; + +export async function findWorkspaceInfo(ctx: DiscoveryContext, lockfile: string | undefined): Promise { + const { root, fs: { pathExists, readJson }, path } = ctx; + const directories = new Set(["."]); + let workspaceRoot: string | undefined; + + if (!lockfile) { + let dir = root; + while (dir !== path.dirname(dir)) { + const lockfiles = ["package-lock.json", "npm-shrinkwrap.json", "yarn.lock", "pnpm-lock.yaml"]; + for (const lf of lockfiles) { + if (await pathExists(path.join(dir, lf))) { + workspaceRoot = dir; + break; + } + } + if (workspaceRoot) break; + dir = path.dirname(dir); + } + } + + const searchRoot = workspaceRoot || root; + const packageJSON = await readJson(path.join(searchRoot, "package.json")).catch(() => ({})); + if (packageJSON.workspaces) { + const workspaceStream = globStream(packageJSON.workspaces, { cwd: searchRoot, withFileTypes: true }); + await new Promise((resolve) => { + workspaceStream.on("data", (match) => { + if (match.isDirectory()) directories.add(path.relative(root, match.fullpath())); + }); + workspaceStream.on("end", () => { + resolve(); + }); + }); + } + + let tooling: string | undefined; + const monorepoTools = ["lerna.json", "turbo.json", "nx.json", "rush.json", "angular.json"]; + for (const toolConfigFile of monorepoTools) { + if (await pathExists(path.join(searchRoot, toolConfigFile))) { + tooling = toolConfigFile.split('.')[0]; + if (tooling === 'lerna') { + const lernaJSON = await readJson(path.join(searchRoot, "lerna.json")); + if (lernaJSON.packages) { + // TODO reuse code with the packageJson workspaces + // TODO glob doesn't work with github virtual FS, build alternative + const workspaceStream = globStream(lernaJSON.packages, { cwd: searchRoot, withFileTypes: true }); + await new Promise((resolve) => { + workspaceStream.on("data", (match) => { + if (match.isDirectory()) directories.add(path.relative(root, match.fullpath())); + }); + workspaceStream.on("end", () => { + resolve(); + }); + }); + } + } + break; + } + } + + // TODO filter out directories that are outside the search root + if (directories.size) { + workspaceRoot = searchRoot; + } + + return { root: workspaceRoot, directories, tooling }; +} + +export async function getDependencies(ctx: DiscoveryContext, lockfile: string | undefined, workspaceRoot: string | undefined): Promise>> { + const { root, fs: { readFile, readJson }, path } = ctx; + const dependencies = new Map>(); + if (!lockfile) return dependencies; + + const lockfilePath = path.join(workspaceRoot || root, lockfile) + if (lockfile === "package-lock.json" || lockfile === "npm-shrinkwrap.json") { + const packageLock = await readJson(lockfilePath); + for (const pkg of Object.keys(packageLock.packages || {})) { + const match = pkg.match(/^(.+)?node_modules\/(.+)$/); + if (!match) continue; + const version = packageLock.packages[pkg].version; + const [,prefix,name] = match; + const normalizedPrefix = prefix?.replace(/\/$/, "") || "."; + if (!dependencies.has(normalizedPrefix)) dependencies.set(normalizedPrefix, new Map()); + dependencies.get(normalizedPrefix)!.set(name, version); + } + } else if (lockfile === "yarn.lock") { + // TODO handle yarn workspaces + const yarnLock = parseSyml((await readFile(lockfilePath)).toString("utf8")); + for (const pkg of Object.keys(yarnLock)) { + const match = pkg.match(/^(.+)@npm:(.+$)/); + if (!match) continue; + const normalizedPrefix = "."; + const [,name,version] = match; + if (!dependencies.has(",.")) dependencies.set(normalizedPrefix, new Map()); + dependencies.get(normalizedPrefix)!.set(name, version); + } + } else if (lockfile === "pnpm-lock.yaml") { + // TODO handle pnpm workspaces + const pnpmLock = parseYaml((await readFile(lockfilePath)).toString()); + for (const pkg of Object.keys(pnpmLock.packages || {})) { + const parts = pkg.replace(/^\//, "").split("(")[0].split("@"); + const version = parts.pop()!; + const normalizedPrefix = "."; + const name = parts.join("@"); + if (!dependencies.has(",.")) dependencies.set(normalizedPrefix, new Map()); + dependencies.get(normalizedPrefix)!.set(name, version); + } + } +// console.log({ dependencies }); + + return dependencies; +} diff --git a/packages/@apphosting/discover/src/python/index.ts b/packages/@apphosting/discover/src/python/index.ts new file mode 100644 index 00000000..7dedce92 --- /dev/null +++ b/packages/@apphosting/discover/src/python/index.ts @@ -0,0 +1,6 @@ +import { DiscoveredFramework } from "../index.js"; + +export async function discoverPythonFrameworks() : Promise> { + return []; +} + diff --git a/packages/@apphosting/discover/tsconfig.json b/packages/@apphosting/discover/tsconfig.json index 38e4cb58..0aa4217d 100644 --- a/packages/@apphosting/discover/tsconfig.json +++ b/packages/@apphosting/discover/tsconfig.json @@ -2,10 +2,12 @@ "extends": "../../../tsconfig.json", "compilerOptions": { "noEmit": false, - "outDir": "dist" + "emitDeclarationOnly": true, + "outDir": "dist/_types", + "rootDir": "src", + "declaration": true, }, - "include": [ + "files": [ "src/index.ts", - "src/bin/*.ts", ] }