From 8b7268a7b9be20e3af0099ec10d5d5d72967e257 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnaud=20Barr=C3=A9?= Date: Sat, 2 Dec 2023 21:21:02 +0100 Subject: [PATCH] Fix bundle issue [publish] --- .eslintrc.cjs | 4 + bun.lockb | Bin 63750 -> 83068 bytes package.json | 22 +- scripts/bundle.ts | 62 +- src/only-export-components.test.ts | 13 +- src/only-export-components.ts | 35 +- yarn.lock | 1071 ++++++++++++++++++---------- 7 files changed, 760 insertions(+), 447 deletions(-) create mode 100644 .eslintrc.cjs diff --git a/.eslintrc.cjs b/.eslintrc.cjs new file mode 100644 index 0000000..26145b2 --- /dev/null +++ b/.eslintrc.cjs @@ -0,0 +1,4 @@ +module.exports = { + root: true, + extends: ["@arnaud-barre"], +}; diff --git a/bun.lockb b/bun.lockb index b0c6704657e633ad905fb802aeef065bd7115c93..a138c95e38a0433066769286bda4a4aef43ce07d 100755 GIT binary patch delta 29588 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 BpY{L% diff --git a/package.json b/package.json index 06627a4..a3e3759 100644 --- a/package.json +++ b/package.json @@ -1,25 +1,29 @@ { "name": "eslint-plugin-react-refresh", "version": "0.4.5", + "type": "module", "license": "MIT", "scripts": { "build": "scripts/bundle.ts", + "lint": "bun lint-ci --fix --cache", + "lint-ci": "eslint ./ --ext ts,tsx --report-unused-disable-directives --max-warnings 0", "prettier": "bun prettier-ci --write", "prettier-ci": "prettier --ignore-path=.gitignore --check '**/*.{ts,json,md,yml}'", - "ci": "tsc && bun prettier-ci && bun test && bun run build" + "ci": "tsc && bun lint-ci && bun prettier-ci && bun test && bun run build" }, "peerDependencies": { "eslint": ">=7" }, "devDependencies": { + "@arnaud-barre/eslint-config": "^4.0.0", "@arnaud-barre/tnode": "^0.19.2", - "@types/eslint": "^8.44.6", - "@types/node": "^20.8.7", - "@typescript-eslint/parser": "^6.9.0", - "@typescript-eslint/utils": "^6.9.0", - "bun-types": "^1.0.7", - "eslint": "^8.52.0", - "prettier": "^3.0.3", - "typescript": "^5.2.2" + "@types/eslint": "^8.44.8", + "@types/node": "^20.10.2", + "@typescript-eslint/parser": "^6.13.1", + "@typescript-eslint/utils": "^6.13.1", + "bun-types": "^1.0.15", + "eslint": "^8.55.0", + "prettier": "3.0.3", + "typescript": "~5.3" } } diff --git a/scripts/bundle.ts b/scripts/bundle.ts index 4a11f4c..512fcc0 100755 --- a/scripts/bundle.ts +++ b/scripts/bundle.ts @@ -1,45 +1,45 @@ #!/usr/bin/env tnode -import { rmSync, writeFileSync } from "fs"; -import { execSync } from "child_process"; +import { rmSync, writeFileSync } from "node:fs"; +import { execSync } from "node:child_process"; import { build } from "esbuild"; import packageJSON from "../package.json"; rmSync("dist", { force: true, recursive: true }); -build({ +await build({ bundle: true, entryPoints: ["src/index.ts"], outdir: "dist", platform: "node", target: "node14", external: Object.keys(packageJSON.peerDependencies), -}).then(() => { - execSync("cp LICENSE README.md dist/"); - - writeFileSync( - "dist/package.json", - JSON.stringify( - { - name: packageJSON.name, - description: - "Validate that your components can safely be updated with fast refresh", - version: packageJSON.version, - author: "Arnaud Barré (https://github.com/ArnaudBarre)", - license: packageJSON.license, - repository: "github:ArnaudBarre/eslint-plugin-react-refresh", - main: "index.js", - keywords: [ - "eslint", - "eslint-plugin", - "react", - "react-refresh", - "fast refresh", - ], - peerDependencies: packageJSON.peerDependencies, - }, - null, - 2, - ), - ); }); + +execSync("cp LICENSE README.md dist/"); + +writeFileSync( + "dist/package.json", + JSON.stringify( + { + name: packageJSON.name, + description: + "Validate that your components can safely be updated with fast refresh", + version: packageJSON.version, + author: "Arnaud Barré (https://github.com/ArnaudBarre)", + license: packageJSON.license, + repository: "github:ArnaudBarre/eslint-plugin-react-refresh", + main: "index.js", + keywords: [ + "eslint", + "eslint-plugin", + "react", + "react-refresh", + "fast refresh", + ], + peerDependencies: packageJSON.peerDependencies, + }, + null, + 2, + ), +); diff --git a/src/only-export-components.test.ts b/src/only-export-components.test.ts index 4db1212..938bdfb 100755 --- a/src/only-export-components.test.ts +++ b/src/only-export-components.test.ts @@ -117,6 +117,7 @@ const valid = [ }, { name: "Component and template literal with allowConstantExport", + // eslint-disable-next-line no-template-curly-in-string code: "const foo = 'world'; export const CONSTANT = `Hello ${foo}`; export const Foo = () => {};", options: [{ allowConstantExport: true }], }, @@ -216,7 +217,7 @@ const invalid = [ }, { name: "export default compose", - code: `export default compose()(MainView);`, + code: "export default compose()(MainView);", filename: "Test.jsx", errorId: "anonymousExport", }, @@ -232,21 +233,21 @@ const it = (name: string, cases: Parameters[2]) => { test(name, () => { ruleTester.run( "only-export-components", - // @ts-ignore Mismatch between typescript-eslint and eslint + // @ts-expect-error Mismatch between typescript-eslint and eslint onlyExportComponents, cases, ); }); }; -valid.forEach(({ name, code, filename, options = [] }) => { +for (const { name, code, filename, options = [] } of valid) { it(name, { valid: [{ filename: filename ?? "Test.jsx", code, options }], invalid: [], }); -}); +} -invalid.forEach(({ name, code, errorId, filename, options = [] }) => { +for (const { name, code, errorId, filename, options = [] } of invalid) { it(name, { valid: [], invalid: [ @@ -258,4 +259,4 @@ invalid.forEach(({ name, code, errorId, filename, options = [] }) => { }, ], }); -}); +} diff --git a/src/only-export-components.ts b/src/only-export-components.ts index c49ec96..26346af 100644 --- a/src/only-export-components.ts +++ b/src/only-export-components.ts @@ -1,12 +1,12 @@ -import { TSESLint } from "@typescript-eslint/utils"; -import { TSESTree } from "@typescript-eslint/types"; +import type { TSESLint } from "@typescript-eslint/utils"; +import type { TSESTree } from "@typescript-eslint/types"; -const possibleReactExportRE = /^[A-Z][a-zA-Z0-9]*$/; +const possibleReactExportRE = /^[A-Z][a-zA-Z0-9]*$/u; // Starts with uppercase and at least one lowercase // This can lead to some false positive (ex: `const CMS = () => <>; export default CMS`) // But allow to catch `export const CONSTANT = 3` // and the false positive can be avoided with direct name export -const strictReactExportRE = /^[A-Z][a-zA-Z0-9]*[a-z]+[a-zA-Z0-9]*$/; +const strictReactExportRE = /^[A-Z][a-zA-Z0-9]*[a-z]+[a-zA-Z0-9]*$/u; export const onlyExportComponents: TSESLint.RuleModule< | "exportAll" @@ -55,7 +55,7 @@ export const onlyExportComponents: TSESLint.RuleModule< allowConstantExport = false, checkJS = false, allowExportNames, - } = context.options[0] || {}; + } = context.options[0] ?? {}; const filename = context.getFilename(); // Skip tests & stories files if ( @@ -97,9 +97,7 @@ export const onlyExportComponents: TSESLint.RuleModule< nonComponentExports.push(identifierNode); return; } - if (allowExportNames?.includes(identifierNode.name)) { - return; - } + if (allowExportNames?.includes(identifierNode.name)) return; if ( allowConstantExport && init && @@ -184,10 +182,7 @@ export const onlyExportComponents: TSESLint.RuleModule< if (node.declaration.type === "Identifier") { handleExportIdentifier(node.declaration); } - if ( - node.declaration.type === "ArrowFunctionExpression" && - !node.declaration.id - ) { + if (node.declaration.type === "ArrowFunctionExpression") { context.report({ messageId: "anonymousExport", node }); } } else if (node.type === "ExportNamedDeclaration") { @@ -202,16 +197,18 @@ export const onlyExportComponents: TSESLint.RuleModule< } } else if (node.type === "FunctionDeclaration") { handleLocalIdentifier(node.id); - } else if (node.type === "ImportDeclaration") { - if (node.source.value === "react") { - reactIsInScope = true; - } + } else if ( + node.type === "ImportDeclaration" && + node.source.value === "react" + ) { + reactIsInScope = true; } } if (checkJS && !reactIsInScope) return; if (hasExports) { + // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition if (mayHaveReactExport) { for (const node of nonComponentExports) { context.report({ messageId: "namedExport", node }); @@ -235,10 +232,8 @@ const reactHOCs = ["memo", "forwardRef"]; const canBeReactFunctionComponent = (init: TSESTree.Expression | null) => { if (!init) return false; if (init.type === "ArrowFunctionExpression") return true; - if (init.type === "CallExpression") { - if (init.callee.type === "Identifier") { - return reactHOCs.includes(init.callee.name); - } + if (init.type === "CallExpression" && init.callee.type === "Identifier") { + return reactHOCs.includes(init.callee.name); } return false; }; diff --git a/yarn.lock b/yarn.lock index e51f62c..c8e300b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1,6 +1,6 @@ # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. # yarn lockfile v1 -# bun ./bun.lockb --hash: B15EAEFEE8684F23-1bc4d844497a17b2-9B20B86D3E527294-02954c39322d993d +# bun ./bun.lockb --hash: 97A8CD3C5250F17F-e6d8e2c02f66173d-CB24DF17AC21D763-5942387a7ea85dfc "@aashutoshrathi/word-wrap@^1.2.3": @@ -8,6 +8,33 @@ resolved "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz" integrity sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA== +"@arnaud-barre/eslint-config@^4.0.0": + version "4.0.0" + resolved "https://registry.npmjs.org/@arnaud-barre/eslint-config/-/eslint-config-4.0.0.tgz" + integrity sha512-O2vF+BQWSAEghnMTfFL25D6I6/hmZqEa++Klp+0zHOdAiG2/Nw95pVR8mWjYHLoWbW+2pJmu9UEGVj10hksQAw== + dependencies: + "@arnaud-barre/eslint-plugin" "^1.2.9" + "@arnaud-barre/eslint-plugin-local" "^2.0.0" + "@typescript-eslint/eslint-plugin" "^6.13.1" + "@typescript-eslint/parser" "^6.13.1" + confusing-browser-globals "^1.0.11" + eslint-plugin-react-hooks "^4.6.0" + eslint-plugin-react-refresh "^0.4.4" + eslint-plugin-unicorn "^49.0.0" + +"@arnaud-barre/eslint-plugin@^1.2.9": + version "1.2.9" + resolved "https://registry.npmjs.org/@arnaud-barre/eslint-plugin/-/eslint-plugin-1.2.9.tgz" + integrity sha512-hHRCRajJb5qJAdxco0/8Lps0924acMFcAZNdpja7cqZX17wRP8xlQ8Nnvv9Rhh5CTvaJyvLtKT+El41VHsmWRQ== + dependencies: + "@eslint-community/regexpp" "^4.10.0" + "@typescript-eslint/utils" "^6.13.1" + +"@arnaud-barre/eslint-plugin-local@^2.0.0": + version "2.0.0" + resolved "https://registry.npmjs.org/@arnaud-barre/eslint-plugin-local/-/eslint-plugin-local-2.0.0.tgz" + integrity sha512-OXZ2iU0NyIZI4MRaJylL5y0yS4fVYGDZ2GjKaicMTdq/p508iSsIyCRUxGNrJQNEIUfUGEEAjAu6NbkE0xya6A== + "@arnaud-barre/tnode@^0.19.2": version "0.19.2" resolved "https://registry.npmjs.org/@arnaud-barre/tnode/-/tnode-0.19.2.tgz" @@ -15,115 +42,137 @@ dependencies: esbuild "^0.19" -"@esbuild/android-arm@0.19.5": - version "0.19.5" - resolved "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.5.tgz" - integrity sha512-bhvbzWFF3CwMs5tbjf3ObfGqbl/17ict2/uwOSfr3wmxDE6VdS2GqY/FuzIPe0q0bdhj65zQsvqfArI9MY6+AA== - -"@esbuild/android-arm64@0.19.5": - version "0.19.5" - resolved "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.5.tgz" - integrity sha512-5d1OkoJxnYQfmC+Zd8NBFjkhyCNYwM4n9ODrycTFY6Jk1IGiZ+tjVJDDSwDt77nK+tfpGP4T50iMtVi4dEGzhQ== - -"@esbuild/android-x64@0.19.5": - version "0.19.5" - resolved "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.5.tgz" - integrity sha512-9t+28jHGL7uBdkBjL90QFxe7DVA+KGqWlHCF8ChTKyaKO//VLuoBricQCgwhOjA1/qOczsw843Fy4cbs4H3DVA== - -"@esbuild/darwin-arm64@0.19.5": - version "0.19.5" - resolved "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.5.tgz" - integrity sha512-mvXGcKqqIqyKoxq26qEDPHJuBYUA5KizJncKOAf9eJQez+L9O+KfvNFu6nl7SCZ/gFb2QPaRqqmG0doSWlgkqw== - -"@esbuild/darwin-x64@0.19.5": - version "0.19.5" - resolved "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.5.tgz" - integrity sha512-Ly8cn6fGLNet19s0X4unjcniX24I0RqjPv+kurpXabZYSXGM4Pwpmf85WHJN3lAgB8GSth7s5A0r856S+4DyiA== - -"@esbuild/freebsd-arm64@0.19.5": - version "0.19.5" - resolved "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.5.tgz" - integrity sha512-GGDNnPWTmWE+DMchq1W8Sd0mUkL+APvJg3b11klSGUDvRXh70JqLAO56tubmq1s2cgpVCSKYywEiKBfju8JztQ== - -"@esbuild/freebsd-x64@0.19.5": - version "0.19.5" - resolved "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.5.tgz" - integrity sha512-1CCwDHnSSoA0HNwdfoNY0jLfJpd7ygaLAp5EHFos3VWJCRX9DMwWODf96s9TSse39Br7oOTLryRVmBoFwXbuuQ== - -"@esbuild/linux-arm@0.19.5": - version "0.19.5" - resolved "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.5.tgz" - integrity sha512-lrWXLY/vJBzCPC51QN0HM71uWgIEpGSjSZZADQhq7DKhPcI6NH1IdzjfHkDQws2oNpJKpR13kv7/pFHBbDQDwQ== - -"@esbuild/linux-arm64@0.19.5": - version "0.19.5" - resolved "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.5.tgz" - integrity sha512-o3vYippBmSrjjQUCEEiTZ2l+4yC0pVJD/Dl57WfPwwlvFkrxoSO7rmBZFii6kQB3Wrn/6GwJUPLU5t52eq2meA== - -"@esbuild/linux-ia32@0.19.5": - version "0.19.5" - resolved "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.5.tgz" - integrity sha512-MkjHXS03AXAkNp1KKkhSKPOCYztRtK+KXDNkBa6P78F8Bw0ynknCSClO/ztGszILZtyO/lVKpa7MolbBZ6oJtQ== - -"@esbuild/linux-loong64@0.19.5": - version "0.19.5" - resolved "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.5.tgz" - integrity sha512-42GwZMm5oYOD/JHqHska3Jg0r+XFb/fdZRX+WjADm3nLWLcIsN27YKtqxzQmGNJgu0AyXg4HtcSK9HuOk3v1Dw== - -"@esbuild/linux-mips64el@0.19.5": - version "0.19.5" - resolved "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.5.tgz" - integrity sha512-kcjndCSMitUuPJobWCnwQ9lLjiLZUR3QLQmlgaBfMX23UEa7ZOrtufnRds+6WZtIS9HdTXqND4yH8NLoVVIkcg== - -"@esbuild/linux-ppc64@0.19.5": - version "0.19.5" - resolved "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.5.tgz" - integrity sha512-yJAxJfHVm0ZbsiljbtFFP1BQKLc8kUF6+17tjQ78QjqjAQDnhULWiTA6u0FCDmYT1oOKS9PzZ2z0aBI+Mcyj7Q== - -"@esbuild/linux-riscv64@0.19.5": - version "0.19.5" - resolved "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.5.tgz" - integrity sha512-5u8cIR/t3gaD6ad3wNt1MNRstAZO+aNyBxu2We8X31bA8XUNyamTVQwLDA1SLoPCUehNCymhBhK3Qim1433Zag== - -"@esbuild/linux-s390x@0.19.5": - version "0.19.5" - resolved "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.5.tgz" - integrity sha512-Z6JrMyEw/EmZBD/OFEFpb+gao9xJ59ATsoTNlj39jVBbXqoZm4Xntu6wVmGPB/OATi1uk/DB+yeDPv2E8PqZGw== - -"@esbuild/linux-x64@0.19.5": - version "0.19.5" - resolved "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.5.tgz" - integrity sha512-psagl+2RlK1z8zWZOmVdImisMtrUxvwereIdyJTmtmHahJTKb64pAcqoPlx6CewPdvGvUKe2Jw+0Z/0qhSbG1A== - -"@esbuild/netbsd-x64@0.19.5": - version "0.19.5" - resolved "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.5.tgz" - integrity sha512-kL2l+xScnAy/E/3119OggX8SrWyBEcqAh8aOY1gr4gPvw76la2GlD4Ymf832UCVbmuWeTf2adkZDK+h0Z/fB4g== - -"@esbuild/openbsd-x64@0.19.5": - version "0.19.5" - resolved "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.5.tgz" - integrity sha512-sPOfhtzFufQfTBgRnE1DIJjzsXukKSvZxloZbkJDG383q0awVAq600pc1nfqBcl0ice/WN9p4qLc39WhBShRTA== - -"@esbuild/sunos-x64@0.19.5": - version "0.19.5" - resolved "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.5.tgz" - integrity sha512-dGZkBXaafuKLpDSjKcB0ax0FL36YXCvJNnztjKV+6CO82tTYVDSH2lifitJ29jxRMoUhgkg9a+VA/B03WK5lcg== - -"@esbuild/win32-arm64@0.19.5": - version "0.19.5" - resolved "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.5.tgz" - integrity sha512-dWVjD9y03ilhdRQ6Xig1NWNgfLtf2o/STKTS+eZuF90fI2BhbwD6WlaiCGKptlqXlURVB5AUOxUj09LuwKGDTg== - -"@esbuild/win32-ia32@0.19.5": - version "0.19.5" - resolved "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.5.tgz" - integrity sha512-4liggWIA4oDgUxqpZwrDhmEfAH4d0iljanDOK7AnVU89T6CzHon/ony8C5LeOdfgx60x5cnQJFZwEydVlYx4iw== - -"@esbuild/win32-x64@0.19.5": - version "0.19.5" - resolved "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.5.tgz" - integrity sha512-czTrygUsB/jlM8qEW5MD8bgYU2Xg14lo6kBDXW6HdxKjh8M5PzETGiSHaz9MtbXBYDloHNUAUW2tMiKW4KM9Mw== +"@babel/code-frame@^7.0.0": + version "7.23.5" + resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.5.tgz" + integrity sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA== + dependencies: + "@babel/highlight" "^7.23.4" + chalk "^2.4.2" + +"@babel/helper-validator-identifier@^7.22.20": + version "7.22.20" + resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz" + integrity sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A== + +"@babel/highlight@^7.23.4": + version "7.23.4" + resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.23.4.tgz" + integrity sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A== + dependencies: + "@babel/helper-validator-identifier" "^7.22.20" + chalk "^2.4.2" + js-tokens "^4.0.0" + +"@esbuild/android-arm@0.19.8": + version "0.19.8" + resolved "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.8.tgz" + integrity sha512-31E2lxlGM1KEfivQl8Yf5aYU/mflz9g06H6S15ITUFQueMFtFjESRMoDSkvMo8thYvLBax+VKTPlpnx+sPicOA== + +"@esbuild/android-arm64@0.19.8": + version "0.19.8" + resolved "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.8.tgz" + integrity sha512-B8JbS61bEunhfx8kasogFENgQfr/dIp+ggYXwTqdbMAgGDhRa3AaPpQMuQU0rNxDLECj6FhDzk1cF9WHMVwrtA== + +"@esbuild/android-x64@0.19.8": + version "0.19.8" + resolved "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.8.tgz" + integrity sha512-rdqqYfRIn4jWOp+lzQttYMa2Xar3OK9Yt2fhOhzFXqg0rVWEfSclJvZq5fZslnz6ypHvVf3CT7qyf0A5pM682A== + +"@esbuild/darwin-arm64@0.19.8": + version "0.19.8" + resolved "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.8.tgz" + integrity sha512-RQw9DemMbIq35Bprbboyf8SmOr4UXsRVxJ97LgB55VKKeJOOdvsIPy0nFyF2l8U+h4PtBx/1kRf0BelOYCiQcw== + +"@esbuild/darwin-x64@0.19.8": + version "0.19.8" + resolved "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.8.tgz" + integrity sha512-3sur80OT9YdeZwIVgERAysAbwncom7b4bCI2XKLjMfPymTud7e/oY4y+ci1XVp5TfQp/bppn7xLw1n/oSQY3/Q== + +"@esbuild/freebsd-arm64@0.19.8": + version "0.19.8" + resolved "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.8.tgz" + integrity sha512-WAnPJSDattvS/XtPCTj1tPoTxERjcTpH6HsMr6ujTT+X6rylVe8ggxk8pVxzf5U1wh5sPODpawNicF5ta/9Tmw== + +"@esbuild/freebsd-x64@0.19.8": + version "0.19.8" + resolved "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.8.tgz" + integrity sha512-ICvZyOplIjmmhjd6mxi+zxSdpPTKFfyPPQMQTK/w+8eNK6WV01AjIztJALDtwNNfFhfZLux0tZLC+U9nSyA5Zg== + +"@esbuild/linux-arm@0.19.8": + version "0.19.8" + resolved "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.8.tgz" + integrity sha512-H4vmI5PYqSvosPaTJuEppU9oz1dq2A7Mr2vyg5TF9Ga+3+MGgBdGzcyBP7qK9MrwFQZlvNyJrvz6GuCaj3OukQ== + +"@esbuild/linux-arm64@0.19.8": + version "0.19.8" + resolved "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.8.tgz" + integrity sha512-z1zMZivxDLHWnyGOctT9JP70h0beY54xDDDJt4VpTX+iwA77IFsE1vCXWmprajJGa+ZYSqkSbRQ4eyLCpCmiCQ== + +"@esbuild/linux-ia32@0.19.8": + version "0.19.8" + resolved "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.8.tgz" + integrity sha512-1a8suQiFJmZz1khm/rDglOc8lavtzEMRo0v6WhPgxkrjcU0LkHj+TwBrALwoz/OtMExvsqbbMI0ChyelKabSvQ== + +"@esbuild/linux-loong64@0.19.8": + version "0.19.8" + resolved "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.8.tgz" + integrity sha512-fHZWS2JJxnXt1uYJsDv9+b60WCc2RlvVAy1F76qOLtXRO+H4mjt3Tr6MJ5l7Q78X8KgCFudnTuiQRBhULUyBKQ== + +"@esbuild/linux-mips64el@0.19.8": + version "0.19.8" + resolved "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.8.tgz" + integrity sha512-Wy/z0EL5qZYLX66dVnEg9riiwls5IYnziwuju2oUiuxVc+/edvqXa04qNtbrs0Ukatg5HEzqT94Zs7J207dN5Q== + +"@esbuild/linux-ppc64@0.19.8": + version "0.19.8" + resolved "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.8.tgz" + integrity sha512-ETaW6245wK23YIEufhMQ3HSeHO7NgsLx8gygBVldRHKhOlD1oNeNy/P67mIh1zPn2Hr2HLieQrt6tWrVwuqrxg== + +"@esbuild/linux-riscv64@0.19.8": + version "0.19.8" + resolved "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.8.tgz" + integrity sha512-T2DRQk55SgoleTP+DtPlMrxi/5r9AeFgkhkZ/B0ap99zmxtxdOixOMI570VjdRCs9pE4Wdkz7JYrsPvsl7eESg== + +"@esbuild/linux-s390x@0.19.8": + version "0.19.8" + resolved "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.8.tgz" + integrity sha512-NPxbdmmo3Bk7mbNeHmcCd7R7fptJaczPYBaELk6NcXxy7HLNyWwCyDJ/Xx+/YcNH7Im5dHdx9gZ5xIwyliQCbg== + +"@esbuild/linux-x64@0.19.8": + version "0.19.8" + resolved "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.8.tgz" + integrity sha512-lytMAVOM3b1gPypL2TRmZ5rnXl7+6IIk8uB3eLsV1JwcizuolblXRrc5ShPrO9ls/b+RTp+E6gbsuLWHWi2zGg== + +"@esbuild/netbsd-x64@0.19.8": + version "0.19.8" + resolved "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.8.tgz" + integrity sha512-hvWVo2VsXz/8NVt1UhLzxwAfo5sioj92uo0bCfLibB0xlOmimU/DeAEsQILlBQvkhrGjamP0/el5HU76HAitGw== + +"@esbuild/openbsd-x64@0.19.8": + version "0.19.8" + resolved "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.8.tgz" + integrity sha512-/7Y7u77rdvmGTxR83PgaSvSBJCC2L3Kb1M/+dmSIvRvQPXXCuC97QAwMugBNG0yGcbEGfFBH7ojPzAOxfGNkwQ== + +"@esbuild/sunos-x64@0.19.8": + version "0.19.8" + resolved "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.8.tgz" + integrity sha512-9Lc4s7Oi98GqFA4HzA/W2JHIYfnXbUYgekUP/Sm4BG9sfLjyv6GKKHKKVs83SMicBF2JwAX6A1PuOLMqpD001w== + +"@esbuild/win32-arm64@0.19.8": + version "0.19.8" + resolved "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.8.tgz" + integrity sha512-rq6WzBGjSzihI9deW3fC2Gqiak68+b7qo5/3kmB6Gvbh/NYPA0sJhrnp7wgV4bNwjqM+R2AApXGxMO7ZoGhIJg== + +"@esbuild/win32-ia32@0.19.8": + version "0.19.8" + resolved "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.8.tgz" + integrity sha512-AIAbverbg5jMvJznYiGhrd3sumfwWs8572mIJL5NQjJa06P8KfCPWZQ0NwZbPQnbQi9OWSZhFVSUWjjIrn4hSw== + +"@esbuild/win32-x64@0.19.8": + version "0.19.8" + resolved "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.8.tgz" + integrity sha512-bfZ0cQ1uZs2PqpulNL5j/3w+GDhP36k1K5c38QdQg+Swy51jFZWWeIkteNsufkQxp986wnqRRsb/bHbY1WQ7TA== "@eslint-community/eslint-utils@^4.2.0", "@eslint-community/eslint-utils@^4.4.0": version "4.4.0" @@ -132,20 +181,15 @@ dependencies: eslint-visitor-keys "^3.3.0" -"@eslint-community/regexpp@^4.4.0": - version "4.5.1" - resolved "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.5.1.tgz" - integrity sha512-Z5ba73P98O1KUYCCJTUeVpja9RcGoMdncZ6T49FCUl2lN38JtCJ+3WgIDBv0AuY4WChU5PmtJmOCTlN6FZTFKQ== - -"@eslint-community/regexpp@^4.6.1": - version "4.9.1" - resolved "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.9.1.tgz" - integrity sha512-Y27x+MBLjXa+0JWDhykM3+JE+il3kHKAEqabfEWq3SDhZjLYb6/BHL/JKFnH3fe207JaXkyDo685Oc2Glt6ifA== +"@eslint-community/regexpp@^4.10.0", "@eslint-community/regexpp@^4.5.1", "@eslint-community/regexpp@^4.6.1": + version "4.10.0" + resolved "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.0.tgz" + integrity sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA== -"@eslint/eslintrc@^2.1.0": - version "2.1.0" - resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.0.tgz" - integrity sha512-Lj7DECXqIVCqnqjjHMPna4vn6GJcMgul/wuS0je9OZ9gsL0zzDpKPVtcG1HaDVc+9y+qgXneTeUMbCqXJNpH1A== +"@eslint/eslintrc@^2.1.4": + version "2.1.4" + resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz" + integrity sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ== dependencies: ajv "^6.12.4" debug "^4.3.2" @@ -157,39 +201,10 @@ minimatch "^3.1.2" strip-json-comments "^3.1.1" -"@eslint/eslintrc@^2.1.2": - version "2.1.2" - resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.2.tgz" - integrity sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g== - dependencies: - ajv "^6.12.4" - debug "^4.3.2" - espree "^9.6.0" - globals "^13.19.0" - ignore "^5.2.0" - import-fresh "^3.2.1" - js-yaml "^4.1.0" - minimatch "^3.1.2" - strip-json-comments "^3.1.1" - -"@eslint/js@8.44.0": - version "8.44.0" - resolved "https://registry.npmjs.org/@eslint/js/-/js-8.44.0.tgz" - integrity sha512-Ag+9YM4ocKQx9AarydN0KY2j0ErMHNIocPDrVo8zAE44xLTjEtz81OdR68/cydGtk6m6jDb5Za3r2useMzYmSw== - -"@eslint/js@8.52.0": - version "8.52.0" - resolved "https://registry.npmjs.org/@eslint/js/-/js-8.52.0.tgz" - integrity sha512-mjZVbpaeMZludF2fsWLD0Z9gCref1Tk4i9+wddjRvpUNqqcndPkBD09N/Mapey0b3jaXbLm2kICwFv2E64QinA== - -"@humanwhocodes/config-array@^0.11.10": - version "0.11.10" - resolved "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.10.tgz" - integrity sha512-KVVjQmNUepDVGXNuoRRdmmEjruj0KfiGSbS8LVc12LMsWDQzRXJ0qdhN8L8uUigKpfEHRhlaQFY0ib1tnUbNeQ== - dependencies: - "@humanwhocodes/object-schema" "^1.2.1" - debug "^4.1.1" - minimatch "^3.0.5" +"@eslint/js@8.55.0": + version "8.55.0" + resolved "https://registry.npmjs.org/@eslint/js/-/js-8.55.0.tgz" + integrity sha512-qQfo2mxH5yVom1kacMtZZJFVdW+E70mqHMJvVg6WTLo+VBuQJ4TojZlfWBjK0ve5BdEeNAVxOsl/nvNMpJOaJA== "@humanwhocodes/config-array@^0.11.13": version "0.11.13" @@ -205,11 +220,6 @@ resolved "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz" integrity sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA== -"@humanwhocodes/object-schema@^1.2.1": - version "1.2.1" - resolved "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz" - integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA== - "@humanwhocodes/object-schema@^2.0.1": version "2.0.1" resolved "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.1.tgz" @@ -217,7 +227,7 @@ "@nodelib/fs.scandir@2.1.5": version "2.1.5" - resolved "" + resolved "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz" integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g== dependencies: "@nodelib/fs.stat" "2.0.5" @@ -236,92 +246,124 @@ "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" -"@types/eslint@^8.44.6": - version "8.44.6" - resolved "https://registry.npmjs.org/@types/eslint/-/eslint-8.44.6.tgz" - integrity sha512-P6bY56TVmX8y9J87jHNgQh43h6VVU+6H7oN7hgvivV81K2XY8qJZ5vqPy/HdUoVIelii2kChYVzQanlswPWVFw== +"@types/eslint@^8.44.8": + version "8.44.8" + resolved "https://registry.npmjs.org/@types/eslint/-/eslint-8.44.8.tgz" + integrity sha512-4K8GavROwhrYl2QXDXm0Rv9epkA8GBFu0EI+XrrnnuCl7u8CWBRusX7fXJfanhZTDWSAL24gDI/UqXyUM0Injw== dependencies: "@types/estree" "*" "@types/json-schema" "*" "@types/estree@*": - version "1.0.3" - resolved "https://registry.npmjs.org/@types/estree/-/estree-1.0.3.tgz" - integrity sha512-CS2rOaoQ/eAgAfcTfq6amKG7bsN+EMcgGY4FAFQdvSj2y1ixvOZTUA9mOtCai7E1SYu283XNw7urKK30nP3wkQ== + version "1.0.5" + resolved "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz" + integrity sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw== "@types/json-schema@*", "@types/json-schema@^7.0.12": - version "7.0.14" - resolved "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.14.tgz" - integrity sha512-U3PUjAudAdJBeC2pgN8uTIKgxrb4nlDF3SF0++EldXQvQBGkpFZMSnwQiIoDU77tv45VgNkl/L4ouD+rEomujw== + version "7.0.15" + resolved "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz" + integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA== -"@types/node@^20.8.7": - version "20.8.7" - resolved "https://registry.npmjs.org/@types/node/-/node-20.8.7.tgz" - integrity sha512-21TKHHh3eUHIi2MloeptJWALuCu5H7HQTdTrWIFReA8ad+aggoX+lRes3ex7/FtpC+sVUpFMQ+QTfYr74mruiQ== +"@types/node@^20.10.2": + version "20.10.2" + resolved "https://registry.npmjs.org/@types/node/-/node-20.10.2.tgz" + integrity sha512-37MXfxkb0vuIlRKHNxwCkb60PNBpR94u4efQuN4JgIAm66zfCDXGSAFCef9XUWFovX2R1ok6Z7MHhtdVXXkkIw== dependencies: - undici-types "~5.25.1" + undici-types "~5.26.4" + +"@types/normalize-package-data@^2.4.0": + version "2.4.4" + resolved "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz" + integrity sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA== "@types/semver@^7.5.0": - version "7.5.4" - resolved "https://registry.npmjs.org/@types/semver/-/semver-7.5.4.tgz" - integrity sha512-MMzuxN3GdFwskAnb6fz0orFvhfqi752yjaXylr0Rp4oDg5H0Zn1IuyRhDVvYOwAXoJirx2xuS16I3WjxnAIHiQ== - -"@typescript-eslint/parser@^6.9.0": - version "6.9.0" - resolved "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.9.0.tgz" - integrity sha512-GZmjMh4AJ/5gaH4XF2eXA8tMnHWP+Pm1mjQR2QN4Iz+j/zO04b9TOvJYOX2sCNIQHtRStKTxRY1FX7LhpJT4Gw== - dependencies: - "@typescript-eslint/scope-manager" "6.9.0" - "@typescript-eslint/types" "6.9.0" - "@typescript-eslint/typescript-estree" "6.9.0" - "@typescript-eslint/visitor-keys" "6.9.0" + version "7.5.6" + resolved "https://registry.npmjs.org/@types/semver/-/semver-7.5.6.tgz" + integrity sha512-dn1l8LaMea/IjDoHNd9J52uBbInB796CDffS6VdIxvqYCPSG0V0DzHp76GpaWnlhg88uYyPbXCDIowa86ybd5A== + +"@typescript-eslint/eslint-plugin@^6.13.1": + version "6.13.1" + resolved "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.13.1.tgz" + integrity sha512-5bQDGkXaxD46bPvQt08BUz9YSaO4S0fB1LB5JHQuXTfkGPI3+UUeS387C/e9jRie5GqT8u5kFTrMvAjtX4O5kA== + dependencies: + "@eslint-community/regexpp" "^4.5.1" + "@typescript-eslint/scope-manager" "6.13.1" + "@typescript-eslint/type-utils" "6.13.1" + "@typescript-eslint/utils" "6.13.1" + "@typescript-eslint/visitor-keys" "6.13.1" + debug "^4.3.4" + graphemer "^1.4.0" + ignore "^5.2.4" + natural-compare "^1.4.0" + semver "^7.5.4" + ts-api-utils "^1.0.1" + +"@typescript-eslint/parser@^6.0.0 || ^6.0.0-alpha", "@typescript-eslint/parser@^6.13.1": + version "6.13.1" + resolved "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.13.1.tgz" + integrity sha512-fs2XOhWCzRhqMmQf0eicLa/CWSaYss2feXsy7xBD/pLyWke/jCIVc2s1ikEAtSW7ina1HNhv7kONoEfVNEcdDQ== + dependencies: + "@typescript-eslint/scope-manager" "6.13.1" + "@typescript-eslint/types" "6.13.1" + "@typescript-eslint/typescript-estree" "6.13.1" + "@typescript-eslint/visitor-keys" "6.13.1" debug "^4.3.4" -"@typescript-eslint/scope-manager@6.9.0": - version "6.9.0" - resolved "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.9.0.tgz" - integrity sha512-1R8A9Mc39n4pCCz9o79qRO31HGNDvC7UhPhv26TovDsWPBDx+Sg3rOZdCELIA3ZmNoWAuxaMOT7aWtGRSYkQxw== +"@typescript-eslint/scope-manager@6.13.1": + version "6.13.1" + resolved "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.13.1.tgz" + integrity sha512-BW0kJ7ceiKi56GbT2KKzZzN+nDxzQK2DS6x0PiSMPjciPgd/JRQGMibyaN2cPt2cAvuoH0oNvn2fwonHI+4QUQ== dependencies: - "@typescript-eslint/types" "6.9.0" - "@typescript-eslint/visitor-keys" "6.9.0" + "@typescript-eslint/types" "6.13.1" + "@typescript-eslint/visitor-keys" "6.13.1" + +"@typescript-eslint/type-utils@6.13.1": + version "6.13.1" + resolved "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.13.1.tgz" + integrity sha512-A2qPlgpxx2v//3meMqQyB1qqTg1h1dJvzca7TugM3Yc2USDY+fsRBiojAEo92HO7f5hW5mjAUF6qobOPzlBCBQ== + dependencies: + "@typescript-eslint/typescript-estree" "6.13.1" + "@typescript-eslint/utils" "6.13.1" + debug "^4.3.4" + ts-api-utils "^1.0.1" -"@typescript-eslint/types@6.9.0": - version "6.9.0" - resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.9.0.tgz" - integrity sha512-+KB0lbkpxBkBSiVCuQvduqMJy+I1FyDbdwSpM3IoBS7APl4Bu15lStPjgBIdykdRqQNYqYNMa8Kuidax6phaEw== +"@typescript-eslint/types@6.13.1": + version "6.13.1" + resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.13.1.tgz" + integrity sha512-gjeEskSmiEKKFIbnhDXUyiqVma1gRCQNbVZ1C8q7Zjcxh3WZMbzWVfGE9rHfWd1msQtPS0BVD9Jz9jded44eKg== -"@typescript-eslint/typescript-estree@6.9.0": - version "6.9.0" - resolved "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.9.0.tgz" - integrity sha512-NJM2BnJFZBEAbCfBP00zONKXvMqihZCrmwCaik0UhLr0vAgb6oguXxLX1k00oQyD+vZZ+CJn3kocvv2yxm4awQ== +"@typescript-eslint/typescript-estree@6.13.1": + version "6.13.1" + resolved "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.13.1.tgz" + integrity sha512-sBLQsvOC0Q7LGcUHO5qpG1HxRgePbT6wwqOiGLpR8uOJvPJbfs0mW3jPA3ujsDvfiVwVlWUDESNXv44KtINkUQ== dependencies: - "@typescript-eslint/types" "6.9.0" - "@typescript-eslint/visitor-keys" "6.9.0" + "@typescript-eslint/types" "6.13.1" + "@typescript-eslint/visitor-keys" "6.13.1" debug "^4.3.4" globby "^11.1.0" is-glob "^4.0.3" semver "^7.5.4" ts-api-utils "^1.0.1" -"@typescript-eslint/utils@^6.9.0": - version "6.9.0" - resolved "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.9.0.tgz" - integrity sha512-5Wf+Jsqya7WcCO8me504FBigeQKVLAMPmUzYgDbWchINNh1KJbxCgVya3EQ2MjvJMVeXl3pofRmprqX6mfQkjQ== +"@typescript-eslint/utils@6.13.1", "@typescript-eslint/utils@^6.13.1": + version "6.13.1" + resolved "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.13.1.tgz" + integrity sha512-ouPn/zVoan92JgAegesTXDB/oUp6BP1v8WpfYcqh649ejNc9Qv+B4FF2Ff626kO1xg0wWwwG48lAJ4JuesgdOw== dependencies: "@eslint-community/eslint-utils" "^4.4.0" "@types/json-schema" "^7.0.12" "@types/semver" "^7.5.0" - "@typescript-eslint/scope-manager" "6.9.0" - "@typescript-eslint/types" "6.9.0" - "@typescript-eslint/typescript-estree" "6.9.0" + "@typescript-eslint/scope-manager" "6.13.1" + "@typescript-eslint/types" "6.13.1" + "@typescript-eslint/typescript-estree" "6.13.1" semver "^7.5.4" -"@typescript-eslint/visitor-keys@6.9.0": - version "6.9.0" - resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.9.0.tgz" - integrity sha512-dGtAfqjV6RFOtIP8I0B4ZTBRrlTT8NHHlZZSchQx3qReaoDeXhYM++M4So2AgFK9ZB0emRPA6JI1HkafzA2Ibg== +"@typescript-eslint/visitor-keys@6.13.1": + version "6.13.1" + resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.13.1.tgz" + integrity sha512-NDhQUy2tg6XGNBGDRm1XybOHSia8mcXmlbKWoQP+nm1BIIMxa55shyJfZkHpEBN62KNPLrocSM2PdPcaLgDKMQ== dependencies: - "@typescript-eslint/types" "6.9.0" + "@typescript-eslint/types" "6.13.1" eslint-visitor-keys "^3.4.1" "@ungap/structured-clone@^1.2.0": @@ -330,16 +372,16 @@ integrity sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ== "acorn@^6.0.0 || ^7.0.0 || ^8.0.0", acorn@^8.9.0: - version "8.10.0" - resolved "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz" - integrity sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw== + version "8.11.2" + resolved "https://registry.npmjs.org/acorn/-/acorn-8.11.2.tgz" + integrity sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w== acorn-jsx@^5.3.2: version "5.3.2" resolved "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz" integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== -ajv@^6.10.0, ajv@^6.12.4: +ajv@^6.12.4: version "6.12.6" resolved "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz" integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== @@ -354,6 +396,13 @@ ansi-regex@^5.0.1: resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz" integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== +ansi-styles@^3.2.1: + version "3.2.1" + resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz" + integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== + dependencies: + color-convert "^1.9.0" + ansi-styles@^4.1.0: version "4.3.0" resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz" @@ -368,7 +417,7 @@ argparse@^2.0.1: array-union@^2.1.0: version "2.1.0" - resolved "" + resolved "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz" integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== balanced-match@^1.0.0: @@ -386,21 +435,35 @@ brace-expansion@^1.1.7: braces@^3.0.2: version "3.0.2" - resolved "" + resolved "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz" integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== dependencies: fill-range "^7.0.1" -bun-types@^1.0.7: - version "1.0.7" - resolved "https://registry.npmjs.org/bun-types/-/bun-types-1.0.7.tgz" - integrity sha512-zlIp+SCutbbugs6xDy+3WC3KO3zKySpF/bRfiTk/VJUdKt+WHAzlCtLplS7XglRYDFzhRhlzXMW/R5BHkw+u2Q== +builtin-modules@^3.3.0: + version "3.3.0" + resolved "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz" + integrity sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw== + +bun-types@^1.0.15: + version "1.0.15" + resolved "https://registry.npmjs.org/bun-types/-/bun-types-1.0.15.tgz" + integrity sha512-XkEvWLV1JIhcVIpf2Lu6FXnZUxRUkQVJmgY+VT7os6Tk5X1nkXx11q4Rtu6txsqpDJZfUeZXblnnD59K+6wsVA== callsites@^3.0.0: version "3.1.0" resolved "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz" integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== +chalk@^2.4.2: + version "2.4.2" + resolved "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz" + integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== + dependencies: + ansi-styles "^3.2.1" + escape-string-regexp "^1.0.5" + supports-color "^5.3.0" + chalk@^4.0.0: version "4.1.2" resolved "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz" @@ -409,6 +472,25 @@ chalk@^4.0.0: ansi-styles "^4.1.0" supports-color "^7.1.0" +ci-info@^3.8.0: + version "3.9.0" + resolved "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz" + integrity sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ== + +clean-regexp@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/clean-regexp/-/clean-regexp-1.0.0.tgz" + integrity sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw== + dependencies: + escape-string-regexp "^1.0.5" + +color-convert@^1.9.0: + version "1.9.3" + resolved "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz" + integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== + dependencies: + color-name "1.1.3" + color-convert@^2.0.1: version "2.0.1" resolved "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz" @@ -416,6 +498,11 @@ color-convert@^2.0.1: dependencies: color-name "~1.1.4" +color-name@1.1.3: + version "1.1.3" + resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz" + integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== + color-name@~1.1.4: version "1.1.4" resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz" @@ -423,8 +510,13 @@ color-name@~1.1.4: concat-map@0.0.1: version "0.0.1" - resolved "" - integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= + resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" + integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== + +confusing-browser-globals@^1.0.11: + version "1.0.11" + resolved "https://registry.npmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.11.tgz" + integrity sha512-JsPKdmh8ZkmnHxDk55FZ1TqVLvEQTvoByJZRN9jzI0UjxK/QgAmsphz7PGtqgPieQZ/CQcHWXCR7ATDNhGe+YA== cross-spawn@^7.0.2: version "7.0.3" @@ -449,7 +541,7 @@ deep-is@^0.1.3: dir-glob@^3.0.1: version "3.0.1" - resolved "" + resolved "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz" integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== dependencies: path-type "^4.0.0" @@ -461,93 +553,60 @@ doctrine@^3.0.0: dependencies: esutils "^2.0.2" +error-ex@^1.3.1: + version "1.3.2" + resolved "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz" + integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== + dependencies: + is-arrayish "^0.2.1" + esbuild@^0.19: - version "0.19.5" - resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.19.5.tgz" - integrity sha512-bUxalY7b1g8vNhQKdB24QDmHeY4V4tw/s6Ak5z+jJX9laP5MoQseTOMemAr0gxssjNcH0MCViG8ONI2kksvfFQ== + version "0.19.8" + resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.19.8.tgz" + integrity sha512-l7iffQpT2OrZfH2rXIp7/FkmaeZM0vxbxN9KfiCwGYuZqzMg/JdvX26R31Zxn/Pxvsrg3Y9N6XTcnknqDyyv4w== optionalDependencies: - "@esbuild/android-arm" "0.19.5" - "@esbuild/android-arm64" "0.19.5" - "@esbuild/android-x64" "0.19.5" - "@esbuild/darwin-arm64" "0.19.5" - "@esbuild/darwin-x64" "0.19.5" - "@esbuild/freebsd-arm64" "0.19.5" - "@esbuild/freebsd-x64" "0.19.5" - "@esbuild/linux-arm" "0.19.5" - "@esbuild/linux-arm64" "0.19.5" - "@esbuild/linux-ia32" "0.19.5" - "@esbuild/linux-loong64" "0.19.5" - "@esbuild/linux-mips64el" "0.19.5" - "@esbuild/linux-ppc64" "0.19.5" - "@esbuild/linux-riscv64" "0.19.5" - "@esbuild/linux-s390x" "0.19.5" - "@esbuild/linux-x64" "0.19.5" - "@esbuild/netbsd-x64" "0.19.5" - "@esbuild/openbsd-x64" "0.19.5" - "@esbuild/sunos-x64" "0.19.5" - "@esbuild/win32-arm64" "0.19.5" - "@esbuild/win32-ia32" "0.19.5" - "@esbuild/win32-x64" "0.19.5" + "@esbuild/android-arm" "0.19.8" + "@esbuild/android-arm64" "0.19.8" + "@esbuild/android-x64" "0.19.8" + "@esbuild/darwin-arm64" "0.19.8" + "@esbuild/darwin-x64" "0.19.8" + "@esbuild/freebsd-arm64" "0.19.8" + "@esbuild/freebsd-x64" "0.19.8" + "@esbuild/linux-arm" "0.19.8" + "@esbuild/linux-arm64" "0.19.8" + "@esbuild/linux-ia32" "0.19.8" + "@esbuild/linux-loong64" "0.19.8" + "@esbuild/linux-mips64el" "0.19.8" + "@esbuild/linux-ppc64" "0.19.8" + "@esbuild/linux-riscv64" "0.19.8" + "@esbuild/linux-s390x" "0.19.8" + "@esbuild/linux-x64" "0.19.8" + "@esbuild/netbsd-x64" "0.19.8" + "@esbuild/openbsd-x64" "0.19.8" + "@esbuild/sunos-x64" "0.19.8" + "@esbuild/win32-arm64" "0.19.8" + "@esbuild/win32-ia32" "0.19.8" + "@esbuild/win32-x64" "0.19.8" + +escape-string-regexp@^1.0.5: + version "1.0.5" + resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" + integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== escape-string-regexp@^4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz" integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== -"eslint@^6.0.0 || ^7.0.0 || >=8.0.0", "eslint@^7.0.0 || ^8.0.0": - version "8.44.0" - resolved "https://registry.npmjs.org/eslint/-/eslint-8.44.0.tgz" - integrity sha512-0wpHoUbDUHgNCyvFB5aXLiQVfK9B0at6gUvzy83k4kAsQ/u769TQDX6iKC+aO4upIHO9WSaA3QoXYQDHbNwf1A== - dependencies: - "@eslint-community/eslint-utils" "^4.2.0" - "@eslint-community/regexpp" "^4.4.0" - "@eslint/eslintrc" "^2.1.0" - "@eslint/js" "8.44.0" - "@humanwhocodes/config-array" "^0.11.10" - "@humanwhocodes/module-importer" "^1.0.1" - "@nodelib/fs.walk" "^1.2.8" - ajv "^6.10.0" - chalk "^4.0.0" - cross-spawn "^7.0.2" - debug "^4.3.2" - doctrine "^3.0.0" - escape-string-regexp "^4.0.0" - eslint-scope "^7.2.0" - eslint-visitor-keys "^3.4.1" - espree "^9.6.0" - esquery "^1.4.2" - esutils "^2.0.2" - fast-deep-equal "^3.1.3" - file-entry-cache "^6.0.1" - find-up "^5.0.0" - glob-parent "^6.0.2" - globals "^13.19.0" - graphemer "^1.4.0" - ignore "^5.2.0" - import-fresh "^3.0.0" - imurmurhash "^0.1.4" - is-glob "^4.0.0" - is-path-inside "^3.0.3" - js-yaml "^4.1.0" - json-stable-stringify-without-jsonify "^1.0.1" - levn "^0.4.1" - lodash.merge "^4.6.2" - minimatch "^3.1.2" - natural-compare "^1.4.0" - optionator "^0.9.3" - strip-ansi "^6.0.1" - strip-json-comments "^3.1.0" - text-table "^0.2.0" - -eslint@^8.52.0: - version "8.52.0" - resolved "https://registry.npmjs.org/eslint/-/eslint-8.52.0.tgz" - integrity sha512-zh/JHnaixqHZsolRB/w9/02akBk9EPrOs9JwcTP2ek7yL5bVvXuRariiaAjjoJ5DvuwQ1WAE/HsMz+w17YgBCg== +eslint@>=7, eslint@>=8.52.0, "eslint@^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0", "eslint@^6.0.0 || ^7.0.0 || >=8.0.0", "eslint@^7.0.0 || ^8.0.0", eslint@^8.55.0: + version "8.55.0" + resolved "https://registry.npmjs.org/eslint/-/eslint-8.55.0.tgz" + integrity sha512-iyUUAM0PCKj5QpwGfmCAG9XXbZCWsqP/eWAWrG/W0umvjuLRBECwSFdt+rCntju0xEH7teIABPwXpahftIaTdA== dependencies: "@eslint-community/eslint-utils" "^4.2.0" "@eslint-community/regexpp" "^4.6.1" - "@eslint/eslintrc" "^2.1.2" - "@eslint/js" "8.52.0" + "@eslint/eslintrc" "^2.1.4" + "@eslint/js" "8.55.0" "@humanwhocodes/config-array" "^0.11.13" "@humanwhocodes/module-importer" "^1.0.1" "@nodelib/fs.walk" "^1.2.8" @@ -583,13 +642,35 @@ eslint@^8.52.0: strip-ansi "^6.0.1" text-table "^0.2.0" -eslint-scope@^7.2.0: - version "7.2.0" - resolved "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.0.tgz" - integrity sha512-DYj5deGlHBfMt15J7rdtyKNq/Nqlv5KfU4iodrQ019XESsRnwXH9KAE0y3cwtUHDo2ob7CypAnCqefh6vioWRw== +eslint-plugin-react-hooks@^4.6.0: + version "4.6.0" + resolved "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz" + integrity sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g== + +eslint-plugin-react-refresh@^0.4.4: + version "0.4.4" + resolved "https://registry.npmjs.org/eslint-plugin-react-refresh/-/eslint-plugin-react-refresh-0.4.4.tgz" + integrity sha512-eD83+65e8YPVg6603Om2iCIwcQJf/y7++MWm4tACtEswFLYMwxwVWAfwN+e19f5Ad/FOyyNg9Dfi5lXhH3Y3rA== + +eslint-plugin-unicorn@^49.0.0: + version "49.0.0" + resolved "https://registry.npmjs.org/eslint-plugin-unicorn/-/eslint-plugin-unicorn-49.0.0.tgz" + integrity sha512-0fHEa/8Pih5cmzFW5L7xMEfUTvI9WKeQtjmKpTUmY+BiFCDxkxrTdnURJOHKykhtwIeyYsxnecbGvDCml++z4Q== dependencies: - esrecurse "^4.3.0" - estraverse "^5.2.0" + "@babel/helper-validator-identifier" "^7.22.20" + "@eslint-community/eslint-utils" "^4.4.0" + ci-info "^3.8.0" + clean-regexp "^1.0.0" + esquery "^1.5.0" + indent-string "^4.0.0" + is-builtin-module "^3.2.1" + jsesc "^3.0.2" + pluralize "^8.0.0" + read-pkg-up "^7.0.1" + regexp-tree "^0.1.27" + regjsparser "^0.10.0" + semver "^7.5.4" + strip-indent "^3.0.0" eslint-scope@^7.2.2: version "7.2.2" @@ -599,25 +680,11 @@ eslint-scope@^7.2.2: esrecurse "^4.3.0" estraverse "^5.2.0" -eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1: - version "3.4.1" - resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz" - integrity sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA== - -eslint-visitor-keys@^3.4.1, eslint-visitor-keys@^3.4.3: +eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1, eslint-visitor-keys@^3.4.3: version "3.4.3" resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz" integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag== -espree@^9.6.0: - version "9.6.0" - resolved "https://registry.npmjs.org/espree/-/espree-9.6.0.tgz" - integrity sha512-1FH/IiruXZ84tpUlm0aCUEwMl2Ho5ilqVh0VvQXw+byAz/4SAciyHLlfmL5WYqsvD38oymdUwBss0LtK8m4s/A== - dependencies: - acorn "^8.9.0" - acorn-jsx "^5.3.2" - eslint-visitor-keys "^3.4.1" - espree@^9.6.0, espree@^9.6.1: version "9.6.1" resolved "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz" @@ -627,7 +694,7 @@ espree@^9.6.0, espree@^9.6.1: acorn-jsx "^5.3.2" eslint-visitor-keys "^3.4.1" -esquery@^1.4.2: +esquery@^1.4.2, esquery@^1.5.0: version "1.5.0" resolved "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz" integrity sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg== @@ -657,9 +724,9 @@ fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== fast-glob@^3.2.9: - version "3.3.0" - resolved "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.0.tgz" - integrity sha512-ChDuvbOypPuNjO8yIDf36x7BlZX1smcUMTTcyoIjycexOxd6DFsKsg21qVBzEmr3G7fUKIRy2/psii+CIUt7FA== + version "3.3.2" + resolved "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz" + integrity sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow== dependencies: "@nodelib/fs.stat" "^2.0.2" "@nodelib/fs.walk" "^1.2.3" @@ -693,11 +760,19 @@ file-entry-cache@^6.0.1: fill-range@^7.0.1: version "7.0.1" - resolved "" + resolved "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz" integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== dependencies: to-regex-range "^5.0.1" +find-up@^4.1.0: + version "4.1.0" + resolved "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz" + integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== + dependencies: + locate-path "^5.0.0" + path-exists "^4.0.0" + find-up@^5.0.0: version "5.0.0" resolved "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz" @@ -707,23 +782,29 @@ find-up@^5.0.0: path-exists "^4.0.0" flat-cache@^3.0.4: - version "3.0.4" - resolved "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz" - integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg== + version "3.2.0" + resolved "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz" + integrity sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw== dependencies: - flatted "^3.1.0" + flatted "^3.2.9" + keyv "^4.5.3" rimraf "^3.0.2" -flatted@^3.1.0: - version "3.2.7" - resolved "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz" - integrity sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ== +flatted@^3.2.9: + version "3.2.9" + resolved "https://registry.npmjs.org/flatted/-/flatted-3.2.9.tgz" + integrity sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ== fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz" integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== +function-bind@^1.1.2: + version "1.1.2" + resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz" + integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== + glob@^7.1.3: version "7.2.3" resolved "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz" @@ -750,13 +831,6 @@ glob-parent@^6.0.2: dependencies: is-glob "^4.0.3" -globals@^13.19.0: - version "13.20.0" - resolved "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz" - integrity sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ== - dependencies: - type-fest "^0.20.2" - globals@^13.19.0: version "13.23.0" resolved "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz" @@ -781,17 +855,34 @@ graphemer@^1.4.0: resolved "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz" integrity sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag== +has-flag@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz" + integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== + has-flag@^4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== -ignore@^5.2.0: - version "5.2.4" - resolved "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz" - integrity sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ== +hasown@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz" + integrity sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA== + dependencies: + function-bind "^1.1.2" + +hosted-git-info@^2.1.4: + version "2.8.9" + resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz" + integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== + +ignore@^5.2.0, ignore@^5.2.4: + version "5.3.0" + resolved "https://registry.npmjs.org/ignore/-/ignore-5.3.0.tgz" + integrity sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg== -import-fresh@^3.0.0, import-fresh@^3.2.1: +import-fresh@^3.2.1: version "3.3.0" resolved "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz" integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== @@ -804,6 +895,11 @@ imurmurhash@^0.1.4: resolved "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz" integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA== +indent-string@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz" + integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== + inflight@^1.0.4: version "1.0.6" resolved "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz" @@ -817,6 +913,25 @@ inherits@2: resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== +is-arrayish@^0.2.1: + version "0.2.1" + resolved "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz" + integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== + +is-builtin-module@^3.2.1: + version "3.2.1" + resolved "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.1.tgz" + integrity sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A== + dependencies: + builtin-modules "^3.3.0" + +is-core-module@^2.13.0: + version "2.13.1" + resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz" + integrity sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw== + dependencies: + hasown "^2.0.0" + is-extglob@^2.1.1: version "2.1.1" resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz" @@ -844,6 +959,11 @@ isexe@^2.0.0: resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz" integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== +js-tokens@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz" + integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== + js-yaml@^4.1.0: version "4.1.0" resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz" @@ -851,6 +971,26 @@ js-yaml@^4.1.0: dependencies: argparse "^2.0.1" +jsesc@~0.5.0: + version "0.5.0" + resolved "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz" + integrity sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA== + +jsesc@^3.0.2: + version "3.0.2" + resolved "https://registry.npmjs.org/jsesc/-/jsesc-3.0.2.tgz" + integrity sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g== + +json-buffer@3.0.1: + version "3.0.1" + resolved "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz" + integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ== + +json-parse-even-better-errors@^2.3.0: + version "2.3.1" + resolved "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz" + integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== + json-schema-traverse@^0.4.1: version "0.4.1" resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz" @@ -861,6 +1001,13 @@ json-stable-stringify-without-jsonify@^1.0.1: resolved "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz" integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw== +keyv@^4.5.3: + version "4.5.4" + resolved "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz" + integrity sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw== + dependencies: + json-buffer "3.0.1" + levn@^0.4.1: version "0.4.1" resolved "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz" @@ -869,6 +1016,18 @@ levn@^0.4.1: prelude-ls "^1.2.1" type-check "~0.4.0" +lines-and-columns@^1.1.6: + version "1.2.4" + resolved "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz" + integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== + +locate-path@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz" + integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g== + dependencies: + p-locate "^4.1.0" + locate-path@^6.0.0: version "6.0.0" resolved "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz" @@ -890,23 +1049,21 @@ lru-cache@^6.0.0: merge2@^1.3.0, merge2@^1.4.1: version "1.4.1" - resolved "" + resolved "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz" integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== micromatch@^4.0.4: version "4.0.5" - resolved "" + resolved "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz" integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA== dependencies: braces "^3.0.2" picomatch "^2.3.1" -minimatch@^3.0.5: - version "3.0.8" - resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.0.8.tgz" - integrity sha512-6FsRAQsxQ61mw+qP1ZzbL9Bc78x2p5OqNgNpnoAFLTrX8n5Kxph0CsnhmKKNXTWjXqU5L0pGPR7hYk+XWZr60Q== - dependencies: - brace-expansion "^1.1.7" +min-indent@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz" + integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: version "3.1.2" @@ -925,6 +1082,16 @@ natural-compare@^1.4.0: resolved "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz" integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== +normalize-package-data@^2.5.0: + version "2.5.0" + resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz" + integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== + dependencies: + hosted-git-info "^2.1.4" + resolve "^1.10.0" + semver "2 || 3 || 4 || 5" + validate-npm-package-license "^3.0.1" + once@^1.3.0: version "1.4.0" resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz" @@ -944,6 +1111,13 @@ optionator@^0.9.3: levn "^0.4.1" fast-levenshtein "^2.0.6" +p-limit@^2.2.0: + version "2.3.0" + resolved "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz" + integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== + dependencies: + p-try "^2.0.0" + p-limit@^3.0.2: version "3.1.0" resolved "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz" @@ -951,6 +1125,13 @@ p-limit@^3.0.2: dependencies: yocto-queue "^0.1.0" +p-locate@^4.1.0: + version "4.1.0" + resolved "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz" + integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A== + dependencies: + p-limit "^2.2.0" + p-locate@^5.0.0: version "5.0.0" resolved "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz" @@ -958,6 +1139,11 @@ p-locate@^5.0.0: dependencies: p-limit "^3.0.2" +p-try@^2.0.0: + version "2.2.0" + resolved "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz" + integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== + parent-module@^1.0.0: version "1.0.1" resolved "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz" @@ -965,6 +1151,16 @@ parent-module@^1.0.0: dependencies: callsites "^3.0.0" +parse-json@^5.0.0: + version "5.2.0" + resolved "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz" + integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== + dependencies: + "@babel/code-frame" "^7.0.0" + error-ex "^1.3.1" + json-parse-even-better-errors "^2.3.0" + lines-and-columns "^1.1.6" + path-exists@^4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz" @@ -980,6 +1176,11 @@ path-key@^3.1.0: resolved "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz" integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== +path-parse@^1.0.7: + version "1.0.7" + resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz" + integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== + path-type@^4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz" @@ -990,26 +1191,71 @@ picomatch@^2.3.1: resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== +pluralize@^8.0.0: + version "8.0.0" + resolved "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz" + integrity sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA== + prelude-ls@^1.2.1: version "1.2.1" resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz" integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== -prettier@^3.0.3: +prettier@3.0.3: version "3.0.3" resolved "https://registry.npmjs.org/prettier/-/prettier-3.0.3.tgz" integrity sha512-L/4pUDMxcNa8R/EthV08Zt42WBO4h1rarVtK0K+QJG0X187OLo7l699jWw0GKuwzkPQ//jMFA/8Xm6Fh3J/DAg== punycode@^2.1.0: - version "2.3.0" - resolved "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz" - integrity sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA== + version "2.3.1" + resolved "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz" + integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg== queue-microtask@^1.2.2: version "1.2.3" resolved "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz" integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== +read-pkg@^5.2.0: + version "5.2.0" + resolved "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz" + integrity sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg== + dependencies: + "@types/normalize-package-data" "^2.4.0" + normalize-package-data "^2.5.0" + parse-json "^5.0.0" + type-fest "^0.6.0" + +read-pkg-up@^7.0.1: + version "7.0.1" + resolved "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz" + integrity sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg== + dependencies: + find-up "^4.1.0" + read-pkg "^5.2.0" + type-fest "^0.8.1" + +regexp-tree@^0.1.27: + version "0.1.27" + resolved "https://registry.npmjs.org/regexp-tree/-/regexp-tree-0.1.27.tgz" + integrity sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA== + +regjsparser@^0.10.0: + version "0.10.0" + resolved "https://registry.npmjs.org/regjsparser/-/regjsparser-0.10.0.tgz" + integrity sha512-qx+xQGZVsy55CH0a1hiVwHmqjLryfh7wQyF5HO07XJ9f7dQMY/gPQHhlyDkIzJKC+x2fUCpCcUODUUUFrm7SHA== + dependencies: + jsesc "~0.5.0" + +resolve@^1.10.0: + version "1.22.8" + resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz" + integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw== + dependencies: + is-core-module "^2.13.0" + path-parse "^1.0.7" + supports-preserve-symlinks-flag "^1.0.0" + resolve-from@^4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz" @@ -1034,6 +1280,11 @@ run-parallel@^1.1.9: dependencies: queue-microtask "^1.2.2" +"semver@2 || 3 || 4 || 5": + version "5.7.2" + resolved "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz" + integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== + semver@^7.5.4: version "7.5.4" resolved "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz" @@ -1058,6 +1309,32 @@ slash@^3.0.0: resolved "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz" integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== +spdx-correct@^3.0.0: + version "3.2.0" + resolved "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz" + integrity sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA== + dependencies: + spdx-expression-parse "^3.0.0" + spdx-license-ids "^3.0.0" + +spdx-exceptions@^2.1.0: + version "2.3.0" + resolved "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz" + integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A== + +spdx-expression-parse@^3.0.0: + version "3.0.1" + resolved "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz" + integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q== + dependencies: + spdx-exceptions "^2.1.0" + spdx-license-ids "^3.0.0" + +spdx-license-ids@^3.0.0: + 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== + strip-ansi@^6.0.1: version "6.0.1" resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz" @@ -1065,11 +1342,25 @@ strip-ansi@^6.0.1: dependencies: ansi-regex "^5.0.1" -strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: +strip-indent@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz" + integrity sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ== + dependencies: + min-indent "^1.0.0" + +strip-json-comments@^3.1.1: version "3.1.1" resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz" integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== +supports-color@^5.3.0: + version "5.5.0" + resolved "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz" + integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== + dependencies: + has-flag "^3.0.0" + supports-color@^7.1.0: version "7.2.0" resolved "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz" @@ -1077,6 +1368,11 @@ supports-color@^7.1.0: dependencies: has-flag "^4.0.0" +supports-preserve-symlinks-flag@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz" + integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== + text-table@^0.2.0: version "0.2.0" resolved "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz" @@ -1084,7 +1380,7 @@ text-table@^0.2.0: to-regex-range@^5.0.1: version "5.0.1" - resolved "" + resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz" integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== dependencies: is-number "^7.0.0" @@ -1101,25 +1397,30 @@ type-check@^0.4.0: dependencies: prelude-ls "^1.2.1" +type-fest@^0.6.0: + version "0.6.0" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz" + integrity sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg== + +type-fest@^0.8.1: + version "0.8.1" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz" + integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== + type-fest@^0.20.2: version "0.20.2" resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz" integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== -typescript@>=4.2.0: - version "5.1.6" - resolved "https://registry.npmjs.org/typescript/-/typescript-5.1.6.tgz" - integrity sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA== - -typescript@^5.2.2: - version "5.2.2" - resolved "https://registry.npmjs.org/typescript/-/typescript-5.2.2.tgz" - integrity sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w== +typescript@>=4.2.0, typescript@^5.3, typescript@~5.3: + version "5.3.2" + resolved "https://registry.npmjs.org/typescript/-/typescript-5.3.2.tgz" + integrity sha512-6l+RyNy7oAHDfxC4FzSJcz9vnjTKxrLpDG5M2Vu4SHRVNg6xzqZp6LYSR9zjqQTu8DU/f5xwxUdADOkbrIX2gQ== -undici-types@~5.25.1: - version "5.25.3" - resolved "https://registry.npmjs.org/undici-types/-/undici-types-5.25.3.tgz" - integrity sha512-Ga1jfYwRn7+cP9v8auvEXN1rX3sWqlayd4HP7OKk4mZWylEmu3KzXDUGrQUN6Ol7qo1gPvB2e5gX6udnyEPgdA== +undici-types@~5.26.4: + version "5.26.5" + resolved "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz" + integrity sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA== uri-js@^4.2.2: version "4.4.1" @@ -1128,6 +1429,14 @@ uri-js@^4.2.2: dependencies: punycode "^2.1.0" +validate-npm-package-license@^3.0.1: + 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== + dependencies: + spdx-correct "^3.0.0" + spdx-expression-parse "^3.0.0" + which@^2.0.1: version "2.0.2" resolved "https://registry.npmjs.org/which/-/which-2.0.2.tgz" @@ -1142,7 +1451,7 @@ wrappy@1: yallist@^4.0.0: version "4.0.0" - resolved "" + resolved "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz" integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== yocto-queue@^0.1.0: