diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index b829f934fbb3c..5dc1ba192739d 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -13,11 +13,7 @@ "NODE_VERSION": "lts/*" } }, - "runArgs": [ - "--cap-add=SYS_PTRACE", - "--security-opt", - "seccomp=unconfined" - ], + "runArgs": ["--cap-add=SYS_PTRACE", "--security-opt", "seccomp=unconfined"], // Add the IDs of extensions you want installed when the container is created. "extensions": [ "bradlc.vscode-tailwindcss", diff --git a/.github/actions/cargo-sweep/package.json b/.github/actions/cargo-sweep/package.json index e1c0cb5d220c1..8622320aac0e7 100644 --- a/.github/actions/cargo-sweep/package.json +++ b/.github/actions/cargo-sweep/package.json @@ -6,7 +6,6 @@ "build:main": "ncc build src/main.js -o dist/main --source-map", "build:post": "ncc build src/post.js -o dist/post --source-map", "prepare": "pnpm run build:main && pnpm run build:post", - "lint": "eslint src/", "lint:prettier": "prettier -c . --cache --ignore-path=../../../.prettierignore" }, "dependencies": { @@ -14,7 +13,6 @@ "@actions/exec": "^1.1.1" }, "devDependencies": { - "@turbo/eslint-config": "workspace:*", "@vercel/ncc": "^0.36.0" } } diff --git a/.prettierignore b/.prettierignore index bb208140e1ece..a08a5685d9dd9 100644 --- a/.prettierignore +++ b/.prettierignore @@ -19,6 +19,11 @@ __generated__/ /examples/with-svelte -# crates +crates # generators *.hbs +.turbo +examples +turborepo-tests +.vscode +packages/turbo-utils/__fixtures__ diff --git a/.prettierrc b/.prettierrc index 5c39c68bf8c2a..3c0264b3cbe0c 100644 --- a/.prettierrc +++ b/.prettierrc @@ -1,4 +1,5 @@ { + "trailingComma": "es5", "overrides": [ { "files": ["./docs/**/*.mdx"], diff --git a/biome.json b/biome.json new file mode 100644 index 0000000000000..5c881a9c33b98 --- /dev/null +++ b/biome.json @@ -0,0 +1,167 @@ +{ + "$schema": "https://biomejs.dev/schemas/2.0.0/schema.json", + "vcs": { "enabled": true, "clientKind": "git", "useIgnoreFile": true }, + "files": { + "ignoreUnknown": true + }, + "formatter": { + "enabled": false, + "formatWithErrors": false, + "indentStyle": "space", + "indentWidth": 2, + "lineEnding": "lf", + "lineWidth": 80, + "attributePosition": "auto", + "bracketSameLine": false, + "bracketSpacing": true, + "expand": "auto", + "useEditorconfig": true, + "includes": [ + "**", + "!**/.next/", + "!**/build/", + "!**/dist", + "!**/node_modules/", + "!**/target/", + "!**/coverage/", + "!**/snapshot/", + "!**/generated/", + "!**/pnpm-lock.yaml", + "!**/__generated__/", + "!./benchmark/large-monorepo", + "!./cli/dist-cross*", + "!./docs/public/schema.json", + "!./packages/eslint-plugin-turbo/__tests__/fixtures/", + "!./packages/turbo-codemod/templates/", + "!./docs/components/pages/pack-home/benchmark-data/data.json", + "!./examples/**", + "!**/*.hbs" + ] + }, + "linter": { + "enabled": true, + "rules": { + "recommended": true, + "complexity": { + "noExtraBooleanCast": "error", + "noUselessCatch": "error", + "useArrowFunction": "off" + }, + "correctness": { + "noConstAssign": "error", + "noConstructorReturn": "error", + "noEmptyCharacterClassInRegex": "error", + "noEmptyPattern": "error", + "noGlobalObjectCalls": "error", + "noInvalidConstructorSuper": "error", + "noInvalidBuiltinInstantiation": "error", + "noSetterReturn": "error", + "noUndeclaredVariables": "error", + "noUnreachable": "error", + "noUnreachableSuper": "error", + "useIsNan": "error", + "useValidForDirection": "error", + "useYield": "error" + }, + "security": { + "noGlobalEval": "error" + }, + "style": { + "useBlockStatements": "error", + "useCollapsedElseIf": "error", + "useConst": "error", + "useDefaultParameterLast": "error", + "useExponentiationOperator": "error", + "useForOf": "error", + "useNodejsImportProtocol": "error", + "useNumberNamespace": "error", + "useSingleVarDeclarator": "error", + "useTemplate": "error" + }, + "suspicious": { + "noApproximativeNumericConstant": "error", + "noAssignInExpressions": "error", + "noAsyncPromiseExecutor": "error", + "noCatchAssign": "error", + "noClassAssign": "error", + "noCompareNegZero": "error", + "noControlCharactersInRegex": "error", + "noDebugger": "error", + "noDoubleEquals": "error", + "noDuplicateCase": "error", + "noDuplicateClassMembers": "error", + "noDuplicateObjectKeys": "error", + "noDuplicateParameters": "error", + "noEmptyBlockStatements": "error", + "noExtraNonNullAssertion": "error", + "noFallthroughSwitchClause": "error", + "noFunctionAssign": "error", + "noGlobalAssign": "error", + "noImportAssign": "error", + "noMisleadingCharacterClass": "error", + "noPrototypeBuiltins": "error", + "noRedeclare": "error", + "noSelfCompare": "error", + "noSparseArray": "error", + "useGetterReturn": "error" + } + } + }, + "javascript": { + "formatter": { + "jsxQuoteStyle": "double", + "quoteProperties": "asNeeded", + "trailingCommas": "all", + "semicolons": "asNeeded", + "arrowParentheses": "always", + "bracketSameLine": false, + "quoteStyle": "single", + "attributePosition": "auto", + "bracketSpacing": true + }, + "globals": ["console", "process", "Buffer", "__dirname", "__filename"] + }, + "html": { "formatter": { "selfCloseVoidElements": "always" } }, + "overrides": [ + { + "includes": ["docs/**/*.mdx"], + "javascript": { "formatter": { "quoteStyle": "single" } } + }, + { + "includes": [ + "**/*.test.{js,ts,jsx,tsx}", + "**/__tests__/**/*.{js,ts,jsx,tsx}" + ], + "linter": { + "rules": { + "suspicious": { + "noExplicitAny": "off" + } + } + } + } + ], + "assist": { + "enabled": true, + "actions": { + "source": { + "organizeImports": { + "level": "on", + "options": { + "groups": [ + ":BUN:", + ":NODE:", + ["npm:*", "npm:*/**"], + ":PACKAGE_WITH_PROTOCOL:", + ":URL:", + ":PACKAGE:", + ["/**"], + ["#*", "#*/**"], + ":PATH:" + ] + } + } + } + } + } +} diff --git a/cli/turbo.json b/cli/turbo.jsonc similarity index 76% rename from cli/turbo.json rename to cli/turbo.jsonc index b1fe84eeb87e2..710952122a7c4 100644 --- a/cli/turbo.json +++ b/cli/turbo.jsonc @@ -1,14 +1,10 @@ { "$schema": "../docs/public/schema.json", - "extends": [ - "//" - ], + "extends": ["//"], "tasks": { // A task that is used for detecting if any turborepo Rust sources change "rust-src": { - "env": [ - "RUNNER_OS" - ], + "env": ["RUNNER_OS"], "inputs": [ "$TURBO_ROOT$/version.txt", "$TURBO_ROOT$/crates/**/*.rs", @@ -16,19 +12,17 @@ "$TURBO_ROOT$/crates/*/Cargo.toml", "$TURBO_ROOT$/Cargo.toml", "$TURBO_ROOT$/Cargo.lock", - "!$TURBO_ROOT$/crates/**/target" - ] + "!$TURBO_ROOT$/crates/**/target", + ], }, "build": { "outputs": [ "$TURBO_ROOT$/target/debug/turbo", "$TURBO_ROOT$/target/debug/turbo.exe", "$TURBO_ROOT$/target/release/turbo", - "$TURBO_ROOT$/target/release/turbo.exe" - ], - "dependsOn": [ - "rust-src" + "$TURBO_ROOT$/target/release/turbo.exe", ], + "dependsOn": ["rust-src"], "passThroughEnv": [ "ProgramData", // sccache related flags @@ -37,12 +31,12 @@ "RUSTC_WRAPPER", "CARGO_INCREMENTAL", "AWS_ACCESS_KEY_ID", - "AWS_SECRET_ACCESS_KEY" - ] + "AWS_SECRET_ACCESS_KEY", + ], }, "release-native": { "dependsOn": ["@turbo/releaser#build"], - "cache": false - } - } + "cache": false, + }, + }, } diff --git a/docs/site/app/(no-sidebar)/index.module.css b/docs/site/app/(no-sidebar)/index.module.css index ac18d80ca582f..96039481bb1d1 100644 --- a/docs/site/app/(no-sidebar)/index.module.css +++ b/docs/site/app/(no-sidebar)/index.module.css @@ -120,7 +120,9 @@ bottom: var(--border-size); left: var(--border-size); padding: var(--border-size); - mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0); + mask: + linear-gradient(#fff 0 0) content-box, + linear-gradient(#fff 0 0); mask-composite: exclude; z-index: -1; border-radius: calc(var(--border-radius) + var(--border-size)); diff --git a/docs/site/app/_components/turbohero-background.module.css b/docs/site/app/_components/turbohero-background.module.css index 8f157e1fcd37d..40ca22d01fb09 100644 --- a/docs/site/app/_components/turbohero-background.module.css +++ b/docs/site/app/_components/turbohero-background.module.css @@ -19,11 +19,8 @@ rgba(0, 0, 0, 0) 50%, var(--right) 55% ); - mask-image: linear-gradient( - to right, - rgba(0, 0, 0, 1) 2px, - rgba(0, 0, 0, 0) 1px - ), + mask-image: + linear-gradient(to right, rgba(0, 0, 0, 1) 2px, rgba(0, 0, 0, 0) 1px), linear-gradient(to bottom, rgba(0, 0, 0, 1) 2px, rgba(0, 0, 0, 0) 1px); mask-size: 60px 60px; overflow: hidden; diff --git a/docs/site/app/design-system.css b/docs/site/app/design-system.css index 3a7e2e2965764..cf3f964052fbc 100644 --- a/docs/site/app/design-system.css +++ b/docs/site/app/design-system.css @@ -113,29 +113,33 @@ --ds-background-100-value: 0, 0%, 100%; --ds-background-200-value: 0, 0%, 98%; - --ds-focus-border: 0 0 0 1px var(--ds-gray-alpha-600), - 0px 0px 0px 4px rgba(0, 0, 0, 0.16); + --ds-focus-border: + 0 0 0 1px var(--ds-gray-alpha-600), 0px 0px 0px 4px rgba(0, 0, 0, 0.16); --ds-focus-color: var(--ds-blue-700); --ds-shadow-border: 0 0 0 1px rgba(0, 0, 0, 0.08); --ds-shadow-border-inset: inset 0 0 0 1px rgba(0, 0, 0, 0.08); --ds-shadow-small: 0px 2px 2px rgba(0, 0, 0, 0.04); --ds-shadow-border-small: var(--ds-shadow-border), var(--ds-shadow-small); - --ds-shadow-medium: 0px 2px 2px rgba(0, 0, 0, 0.04), - 0px 8px 8px -8px rgba(0, 0, 0, 0.04); + --ds-shadow-medium: + 0px 2px 2px rgba(0, 0, 0, 0.04), 0px 8px 8px -8px rgba(0, 0, 0, 0.04); --ds-shadow-border-medium: var(--ds-shadow-border), var(--ds-shadow-medium); - --ds-shadow-large: 0px 2px 2px rgba(0, 0, 0, 0.04), - 0px 8px 16px -4px rgba(0, 0, 0, 0.04); + --ds-shadow-large: + 0px 2px 2px rgba(0, 0, 0, 0.04), 0px 8px 16px -4px rgba(0, 0, 0, 0.04); --ds-shadow-border-large: var(--ds-shadow-border), var(--ds-shadow-large); - --ds-shadow-tooltip: var(--ds-shadow-border), 0px 1px 1px rgba(0, 0, 0, 0.02), + --ds-shadow-tooltip: + var(--ds-shadow-border), 0px 1px 1px rgba(0, 0, 0, 0.02), 0px 4px 8px rgba(0, 0, 0, 0.04); - --ds-shadow-menu: var(--ds-shadow-border), 0px 1px 1px rgba(0, 0, 0, 0.02), + --ds-shadow-menu: + var(--ds-shadow-border), 0px 1px 1px rgba(0, 0, 0, 0.02), 0px 4px 8px -4px rgba(0, 0, 0, 0.04), 0px 16px 24px -8px rgba(0, 0, 0, 0.06); - --ds-shadow-modal: var(--ds-shadow-border), 0px 1px 1px rgba(0, 0, 0, 0.02), + --ds-shadow-modal: + var(--ds-shadow-border), 0px 1px 1px rgba(0, 0, 0, 0.02), 0px 8px 16px -4px rgba(0, 0, 0, 0.04), 0px 24px 32px -8px rgba(0, 0, 0, 0.06); - --ds-shadow-fullscreen: var(--ds-shadow-border), - 0px 1px 1px rgba(0, 0, 0, 0.02), 0px 8px 16px -4px rgba(0, 0, 0, 0.04), + --ds-shadow-fullscreen: + var(--ds-shadow-border), 0px 1px 1px rgba(0, 0, 0, 0.02), + 0px 8px 16px -4px rgba(0, 0, 0, 0.04), 0px 24px 32px -8px rgba(0, 0, 0, 0.06); } @@ -365,32 +369,39 @@ --ds-background-100-value: 0, 0%, 4%; --ds-background-200-value: 0, 0%, 0%; - --ds-focus-border: 0 0 0 1px var(--ds-gray-alpha-600), + --ds-focus-border: + 0 0 0 1px var(--ds-gray-alpha-600), 0px 0px 0px 4px rgba(255, 255, 255, 0.24); --ds-focus-color: var(--ds-blue-900); --ds-shadow-border-inset: inset 0 0 0 1px rgba(255, 255, 255, 0.1); --ds-shadow-border: 0 0 0 1px rgba(255, 255, 255, 0.145); --ds-shadow-small: 0px 1px 2px rgba(0, 0, 0, 0.16); - --ds-shadow-border-small: var(--ds-shadow-border), - 0px 1px 2px rgba(0, 0, 0, 0.16); - --ds-shadow-medium: 0px 2px 2px rgba(0, 0, 0, 0.32), - 0px 8px 8px -8px rgba(0, 0, 0, 0.16); - --ds-shadow-border-medium: var(--ds-shadow-border), + --ds-shadow-border-small: + var(--ds-shadow-border), 0px 1px 2px rgba(0, 0, 0, 0.16); + --ds-shadow-medium: 0px 2px 2px rgba(0, 0, 0, 0.32), 0px 8px 8px -8px rgba(0, 0, 0, 0.16); - --ds-shadow-large: 0px 2px 2px rgba(0, 0, 0, 0.04), - 0px 8px 16px -4px rgba(0, 0, 0, 0.04); - --ds-shadow-border-large: var(--ds-shadow-border), + --ds-shadow-border-medium: + var(--ds-shadow-border), 0px 2px 2px rgba(0, 0, 0, 0.32), + 0px 8px 8px -8px rgba(0, 0, 0, 0.16); + --ds-shadow-large: 0px 2px 2px rgba(0, 0, 0, 0.04), 0px 8px 16px -4px rgba(0, 0, 0, 0.04); - --ds-shadow-tooltip: var(--ds-shadow-border), 0px 1px 1px rgba(0, 0, 0, 0.02), + --ds-shadow-border-large: + var(--ds-shadow-border), 0px 2px 2px rgba(0, 0, 0, 0.04), + 0px 8px 16px -4px rgba(0, 0, 0, 0.04); + --ds-shadow-tooltip: + var(--ds-shadow-border), 0px 1px 1px rgba(0, 0, 0, 0.02), 0px 4px 8px rgba(0, 0, 0, 0.04); - --ds-shadow-menu: var(--ds-shadow-border), 0px 1px 1px rgba(0, 0, 0, 0.02), + --ds-shadow-menu: + var(--ds-shadow-border), 0px 1px 1px rgba(0, 0, 0, 0.02), 0px 4px 8px -4px rgba(0, 0, 0, 0.04), 0px 16px 24px -8px rgba(0, 0, 0, 0.06); - --ds-shadow-modal: var(--ds-shadow-border), 0px 1px 1px rgba(0, 0, 0, 0.02), + --ds-shadow-modal: + var(--ds-shadow-border), 0px 1px 1px rgba(0, 0, 0, 0.02), 0px 8px 16px -4px rgba(0, 0, 0, 0.04), 0px 24px 32px -8px rgba(0, 0, 0, 0.06); - --ds-shadow-fullscreen: var(--ds-shadow-border), - 0px 1px 1px rgba(0, 0, 0, 0.02), 0px 8px 16px -4px rgba(0, 0, 0, 0.04), + --ds-shadow-fullscreen: + var(--ds-shadow-border), 0px 1px 1px rgba(0, 0, 0, 0.02), + 0px 8px 16px -4px rgba(0, 0, 0, 0.04), 0px 24px 32px -8px rgba(0, 0, 0, 0.06); } diff --git a/docs/site/content/blog/turbo-1-2-0.mdx b/docs/site/content/blog/turbo-1-2-0.mdx index e8c8c08d11b7b..dffbae3c7ecc2 100644 --- a/docs/site/content/blog/turbo-1-2-0.mdx +++ b/docs/site/content/blog/turbo-1-2-0.mdx @@ -94,8 +94,8 @@ To enable this feature, set the `remoteCache` options in your `turbo.json` confi "$schema": "[https://turborepo.com/schema.json](https://turborepo.com/schema.json)", "remoteCache": { // Indicates if signature verification is enabled. - "signature": true - } + "signature": true, + }, } ``` diff --git a/docs/site/content/blog/turbo-1-3-0.mdx b/docs/site/content/blog/turbo-1-3-0.mdx index e19bb22e10971..f4cc65c20aab4 100644 --- a/docs/site/content/blog/turbo-1-3-0.mdx +++ b/docs/site/content/blog/turbo-1-3-0.mdx @@ -77,7 +77,7 @@ Let's assume that the Next.js `docs-site` renders the markdown files from the `. // ... omitted for brevity "build": { "dependsOn": ["^build"], - "outputs": [".next/**", "!.next/cache/**", "dist/**"] + "outputs": [".next/**", "!.next/cache/**", "dist/**"], }, "docs#build": { "dependsOn": ["^build"], @@ -88,10 +88,10 @@ Let's assume that the Next.js `docs-site` renders the markdown files from the `. "../../docs/**/*.md", "pages/**", "components/**", - "package.json" - ] - } - } + "package.json", + ], + }, + }, } ``` @@ -129,17 +129,17 @@ A sample pipeline that defines the root script `check-examples` and opts the roo "$schema": "https://turborepo.com/schema.json", "pipeline": { "build": { - "dependsOn": ["^build"] + "dependsOn": ["^build"], }, "test": { "dependsOn": ["^build"], - "outputs": [] + "outputs": [], }, // This will cause the "test" script from all workspace package.json's // AND the root package.json to be included when "turbo run test" is run "//#test": { "dependsOn": [], - "outputs": [] + "outputs": [], }, // This will cause the "check-examples" script in the root package.json // to be run when "turbo run check-examples" is run. Since a general @@ -156,10 +156,10 @@ A sample pipeline that defines the root script `check-examples` and opts the roo "examples/**/*.js", "examples/**/*.yaml", "cli/**/*.ts", - "./scripts/run-example.sh" - ] - } - } + "./scripts/run-example.sh", + ], + }, + }, } ``` diff --git a/docs/site/content/blog/turbo-1-4-0.mdx b/docs/site/content/blog/turbo-1-4-0.mdx index cfa0b6ddb0d09..3279eeb77e394 100644 --- a/docs/site/content/blog/turbo-1-4-0.mdx +++ b/docs/site/content/blog/turbo-1-4-0.mdx @@ -62,9 +62,9 @@ For example, consider a monorepo with three workspaces: a Next.js project, a Cre { "pipeline": { "build": { - "dependsOn": ["^build"] - } - } + "dependsOn": ["^build"], + }, + }, } ``` @@ -81,7 +81,7 @@ To get started, extend from `eslint-config-turbo` in your root [`eslintrc`](http ```jsonc title=".eslint.config.js" { // Automatically flag env vars missing from turbo.json - "extends": ["next/core-web-vitals", "turbo"] + "extends": ["next/core-web-vitals", "turbo"], } ``` @@ -93,8 +93,8 @@ If you prefer more control over the rules - use can install and configure the `e "plugins": ["turbo"], "rules": { // Automatically flag env vars missing from turbo.json - "turbo/no-undeclared-env-vars": "error" - } + "turbo/no-undeclared-env-vars": "error", + }, } ``` diff --git a/docs/site/content/blog/turbo-1-8-0.mdx b/docs/site/content/blog/turbo-1-8-0.mdx index 0a5e26efef903..fdaefdc98ec05 100644 --- a/docs/site/content/blog/turbo-1-8-0.mdx +++ b/docs/site/content/blog/turbo-1-8-0.mdx @@ -53,10 +53,10 @@ For example, imagine your monorepo has a Next.js app and a SvelteKit app, and yo { "pipeline": { "build": { - "dependsOn": ["^codegen"] + "dependsOn": ["^codegen"], // no need to define outputs here! - } - } + }, + }, } ``` @@ -66,9 +66,9 @@ For example, imagine your monorepo has a Next.js app and a SvelteKit app, and yo "pipeline": { "build": { // dependsOn is inherited from root - "outputs": [".next/**", "!.next/cache/**"] - } - } + "outputs": [".next/**", "!.next/cache/**"], + }, + }, } ``` @@ -78,9 +78,9 @@ For example, imagine your monorepo has a Next.js app and a SvelteKit app, and yo "pipeline": { "build": { // dependsOn is inherited from root - "outputs": [".svelte-kit/**"] - } - } + "outputs": [".svelte-kit/**"], + }, + }, } ``` diff --git a/docs/site/content/docs/core-concepts/remote-caching.mdx b/docs/site/content/docs/core-concepts/remote-caching.mdx index 5bf06955c4f76..a97ee49908930 100644 --- a/docs/site/content/docs/core-concepts/remote-caching.mdx +++ b/docs/site/content/docs/core-concepts/remote-caching.mdx @@ -174,8 +174,8 @@ To enable this feature, set the `remoteCache` options on your `turbo.json` confi ```jsonc title="./turbo.json" { "remoteCache": { - "signature": true // [!code highlight] - } + "signature": true, // [!code highlight] + }, } ``` diff --git a/docs/site/content/docs/crafting-your-repository/running-tasks.mdx b/docs/site/content/docs/crafting-your-repository/running-tasks.mdx index 9b48255447957..a9f24595ecb67 100644 --- a/docs/site/content/docs/crafting-your-repository/running-tasks.mdx +++ b/docs/site/content/docs/crafting-your-repository/running-tasks.mdx @@ -26,8 +26,8 @@ For tasks that you run frequently, you can write your `turbo` commands directly "dev": "turbo run dev", "build": "turbo run build", "test": "turbo run test", - "lint": "turbo run lint" - } + "lint": "turbo run lint", + }, } ``` diff --git a/docs/site/content/docs/reference/configuration.mdx b/docs/site/content/docs/reference/configuration.mdx index d332d0cd4dca0..2343f89390dda 100644 --- a/docs/site/content/docs/reference/configuration.mdx +++ b/docs/site/content/docs/reference/configuration.mdx @@ -19,7 +19,7 @@ Configure the behavior of `turbo` by using a `turbo.json` file in your Workspace ```jsonc title="./apps/web/turbo.json" { - "extends": ["//"] + "extends": ["//"], } ``` @@ -32,7 +32,7 @@ Extend from the root `turbo.json` to create specific configuration for a package ```jsonc title="./turbo.json" { - "globalDependencies": [".env", "tsconfig.json"] + "globalDependencies": [".env", "tsconfig.json"], } ``` @@ -49,7 +49,7 @@ By default, only the root package.json and lockfile are included in [the global ```jsonc title="./turbo.json" { - "globalEnv": ["GITHUB_TOKEN", "PACKAGE_VERSION", "NODE_ENV"] + "globalEnv": ["GITHUB_TOKEN", "PACKAGE_VERSION", "NODE_ENV"], } ``` @@ -61,7 +61,7 @@ For more on wildcard and negation syntax, [see the `env` section](#env). ```jsonc title="./turbo.json" { - "globalPassThroughEnv": ["AWS_SECRET_KEY", "GITHUB_TOKEN"] + "globalPassThroughEnv": ["AWS_SECRET_KEY", "GITHUB_TOKEN"], } ``` @@ -115,7 +115,7 @@ Set/limit the maximum concurrency for task execution. Must be an integer greater ```jsonc title="./turbo.json" { - "concurrency": "1" + "concurrency": "1", } ``` @@ -129,7 +129,7 @@ To help with incremental migration or in situations where you can't use the `pac ```jsonc title="./turbo.json" { - "dangerouslyDisablePackageManagerCheck": true + "dangerouslyDisablePackageManagerCheck": true, } ``` @@ -149,7 +149,7 @@ Specify the filesystem cache directory. ```jsonc title="./turbo.json" { - "cacheDir": ".turbo/cache" + "cacheDir": ".turbo/cache", } ``` @@ -161,7 +161,7 @@ Turborepo runs a background process to pre-calculate some expensive operations. ```jsonc title="./turbo.json" { - "daemon": true + "daemon": true, } ``` @@ -181,7 +181,7 @@ Turborepo's Environment Modes allow you to control which environment variables a ```jsonc title="./turbo.json" { - "envMode": "strict" + "envMode": "strict", } ``` @@ -191,7 +191,7 @@ Read more about [Environment Modes](/docs/crafting-your-repository/using-environ ```jsonc title="./apps/web/turbo.json" { - "tags": ["utils"] + "tags": ["utils"], } ``` @@ -215,17 +215,17 @@ In the example below, we've defined three tasks under the `tasks` key: `build`, "tasks": { "build": { "dependsOn": ["^build"], - "outputs": ["dist/**", ".next/**", "!.next/cache/**"] + "outputs": ["dist/**", ".next/**", "!.next/cache/**"], }, "test": { "outputs": ["coverage/**"], - "dependsOn": ["build"] + "dependsOn": ["build"], }, "dev": { "cache": false, - "persistent": true - } - } + "persistent": true, + }, + }, } ``` @@ -247,9 +247,9 @@ Prefixing a string in `dependsOn` with a `^` tells `turbo` that the task must wa { "tasks": { "build": { - "dependsOn": ["^build"] - } - } + "dependsOn": ["^build"], + }, + }, } ``` @@ -263,9 +263,9 @@ Task names without the `^` prefix describe a task that depends on a different ta { "tasks": { "test": { - "dependsOn": ["lint", "build"] - } - } + "dependsOn": ["lint", "build"], + }, + }, } ``` @@ -295,12 +295,12 @@ The list of environment variables a task depends on. { "tasks": { "build": { - "env": ["DATABASE_URL"] // Impacts hash of all build tasks + "env": ["DATABASE_URL"], // Impacts hash of all build tasks }, "web#build": { - "env": ["API_SERVICE_KEY"] // Impacts hash of web's build task - } - } + "env": ["API_SERVICE_KEY"], // Impacts hash of web's build task + }, + }, } ``` @@ -364,9 +364,9 @@ An allowlist of environment variables that should be made available to this task "tasks": { "build": { // Values will be available within `build` scripts - "passThroughEnv": ["AWS_SECRET_KEY", "GITHUB_TOKEN"] - } - } + "passThroughEnv": ["AWS_SECRET_KEY", "GITHUB_TOKEN"], + }, + }, } ``` @@ -387,9 +387,9 @@ See [`$TURBO_ROOT$`](#turbo_root) if output paths need to be relative to the rep "tasks": { "build": { // Cache all files emitted to the packages's `dist` directory - "outputs": ["dist/**"] - } - } + "outputs": ["dist/**"], + }, + }, } ``` @@ -405,13 +405,13 @@ Defines if task outputs should be cached. Setting `cache` to false is useful for { "tasks": { "build": { - "outputs": [".svelte-kit/**", "dist/**"] // File outputs will be cached + "outputs": [".svelte-kit/**", "dist/**"], // File outputs will be cached }, "dev": { "cache": false, // No outputs will be cached - "persistent": true - } - } + "persistent": true, + }, + }, } ``` @@ -427,9 +427,9 @@ Visit the [file glob specification](/docs/reference/globs) for more information { "tasks": { "test": { - "inputs": ["src/**/*.ts", "src/**/*.tsx", "test/**/*.ts"] - } - } + "inputs": ["src/**/*.ts", "src/**/*.tsx", "test/**/*.ts"], + }, + }, } ``` @@ -449,9 +449,9 @@ the special string `$TURBO_DEFAULT$` within the `inputs` array to restore `turbo "tasks": { "check-types": { // Consider all default inputs except the package's README - "inputs": ["$TURBO_DEFAULT$", "!README.md"] - } - } + "inputs": ["$TURBO_DEFAULT$", "!README.md"], + }, + }, } ``` @@ -466,9 +466,9 @@ Starting a file glob with `$TURBO_ROOT$` will change the glob to be relative to "tasks": { "check-types": { // Consider all Typescript files in `src/` and the root tsconfig.json as inputs - "inputs": ["$TURBO_ROOT$/tsconfig.json", "src/**/*.ts"] - } - } + "inputs": ["$TURBO_ROOT$/tsconfig.json", "src/**/*.ts"], + }, + }, } ``` @@ -490,9 +490,9 @@ Set output logging verbosity. Can be overridden by the [`--output-logs`](/docs/r { "tasks": { "build": { - "outputLogs": "new-only" - } - } + "outputLogs": "new-only", + }, + }, } ``` @@ -510,9 +510,9 @@ This option is most useful for development servers or other "watch" tasks. { "tasks": { "dev": { - "persistent": true - } - } + "persistent": true, + }, + }, } ``` @@ -531,9 +531,9 @@ This option is most useful for scripts that can be manipulated while they are ru "tasks": { "test:watch": { "interactive": true, - "persistent": true - } - } + "persistent": true, + }, + }, } ``` @@ -593,10 +593,10 @@ You can add an allowlist and a denylist: // permit only packages with the `ui` tag "allow": ["ui"], // and ban packages with the `unsafe` tag - "deny": ["unsafe"] - } - } - } + "deny": ["unsafe"], + }, + }, + }, } ``` @@ -608,10 +608,10 @@ Both the allowlist and the denylist can be omitted. "utils": { "dependencies": { // only packages with the `unsafe` tag are banned, all other packages permitted - "deny": ["unsafe"] - } - } - } + "deny": ["unsafe"], + }, + }, + }, } ``` @@ -623,10 +623,10 @@ Rules can also be added for a tag's dependents, i.e. packages that import this t "utils": { "dependents": { // only packages with the `web` tag can import packages with the `utils` tag - "allow": ["web"] - } - } - } + "allow": ["web"], + }, + }, + }, } ``` @@ -636,7 +636,7 @@ The global `remoteCache` option has a variety of fields for configuring remote c ```jsonc title="./turbo.json" { - "remoteCache": {} + "remoteCache": {}, } ``` diff --git a/docs/site/content/docs/reference/package-configurations.mdx b/docs/site/content/docs/reference/package-configurations.mdx index bc33ed0928670..5111f9b1cb806 100644 --- a/docs/site/content/docs/reference/package-configurations.mdx +++ b/docs/site/content/docs/reference/package-configurations.mdx @@ -24,8 +24,8 @@ key: "build": { // Custom configuration for the build task in this package }, - "special-task": {} // New task specific to this package - } + "special-task": {}, // New task specific to this package + }, } ``` @@ -51,9 +51,9 @@ with a single `turbo.json` at the root like this: { "tasks": { "build": { - "outputs": [".next/**", "!.next/cache/**", ".svelte-kit/**"] - } - } + "outputs": [".next/**", "!.next/cache/**", ".svelte-kit/**"], + }, + }, } ``` @@ -69,9 +69,9 @@ configuration in the SvelteKit package in `apps/my-svelte-kit-app/turbo.json`: "extends": ["//"], "tasks": { "build": { - "outputs": [".svelte-kit/**"] - } - } + "outputs": [".svelte-kit/**"], + }, + }, } ``` @@ -160,14 +160,14 @@ app again. With a package-specific task, you might configure your root "build": { "outputLogs": "hash-only", "inputs": ["src/**"], - "outputs": [".next/**", "!.next/cache/**"] + "outputs": [".next/**", "!.next/cache/**"], }, "my-sveltekit-app#build": { "outputLogs": "hash-only", // must duplicate this "inputs": ["src/**"], // must duplicate this - "outputs": [".svelte-kit/**"] - } - } + "outputs": [".svelte-kit/**"], + }, + }, } ``` @@ -230,8 +230,8 @@ Package Configuration for `my-nextjs-app`: }, "build": { // ✅ just use the task name! - } - } + }, + }, } ``` @@ -241,9 +241,9 @@ Note that the `build` task can still depend on a package-specific task: { "tasks": { "build": { - "dependsOn": ["some-pkg#compile"] // [!code highlight] - } - } + "dependsOn": ["some-pkg#compile"], // [!code highlight] + }, + }, } ``` diff --git a/docs/site/content/docs/reference/system-environment-variables.mdx b/docs/site/content/docs/reference/system-environment-variables.mdx index bbbf956ce2400..7075f2d8ee072 100644 --- a/docs/site/content/docs/reference/system-environment-variables.mdx +++ b/docs/site/content/docs/reference/system-environment-variables.mdx @@ -78,11 +78,13 @@ System environment variables are always overridden by flag values provided direc Set a prefix for environment variables that you want - excluded from + excluded from{' '} + Framework Inference - . - NOTE: This does not need to be set by the user and should - be configured automatically by supported platforms. + + . + NOTE: This does not need to be set by the user and + should be configured automatically by supported platforms. @@ -283,7 +285,8 @@ System environment variables are always overridden by flag values provided direc > Vercel Remote Cache - , this is [your team's slug](https://vercel.com/d?to=%2F%5Bteam%5D%2F%7E%2Fsettings&title=Get+team+slug). + , this is [your team's + slug](https://vercel.com/d?to=%2F%5Bteam%5D%2F%7E%2Fsettings&title=Get+team+slug). diff --git a/docs/site/package.json b/docs/site/package.json index a65a3ae907aaf..a4b389e5791c1 100644 --- a/docs/site/package.json +++ b/docs/site/package.json @@ -11,9 +11,6 @@ "build": "next build --turbopack", "check-spelling": "spellchecker --files '**/*.mdx' --files '!content/blog/*.mdx' --files '!content/docs/acknowledgments.mdx' --files '!node_modules/**' --files '!content/extra/terms.mdx' --files '!content/extra/governance.mdx' --files '!content/extra/privacy.mdx' --dictionaries 'dictionary.txt' --no-suggestions --quiet", "dev": "next dev --turbopack", - "lint": "fumadocs-mdx && next lint", - "lint:fix": "fumadocs-mdx && next lint --fix", - "lint:prettier": "prettier --write -c . --cache --ignore-path=../../.prettierignore", "index-docs": "node --experimental-strip-types ./scripts/sync-algolia.ts", "rss": "node --experimental-strip-types scripts/generate-rss.ts", "schema": "node --experimental-strip-types scripts/copy-json-schema.ts", @@ -64,8 +61,6 @@ }, "devDependencies": { "@next/env": "15.4.0-canary.81", - "@next/eslint-plugin-next": "15.4.0-canary.81", - "@turbo/eslint-config": "workspace:*", "@turbo/tsconfig": "workspace:^", "@turbo/types": "workspace:*", "@types/mdx": "^2.0.13", @@ -77,7 +72,6 @@ "@vercel/analytics": "1.5.0", "@vercel/toolbar": "0.1.30", "autoprefixer": "^10.4.20", - "eslint": "8.57.0", "gray-matter": "^4.0.3", "postcss": "^8.4.35", "rss": "^1.2.2", diff --git a/docs/site/turbo/generators/utils.ts b/docs/site/turbo/generators/utils.ts index 3b0972c298cef..5b94faedb5fa1 100644 --- a/docs/site/turbo/generators/utils.ts +++ b/docs/site/turbo/generators/utils.ts @@ -32,7 +32,7 @@ export async function releasePostStats(answers: Answers): Promise { { remote_cache_minutes_saved: number; local_cache_minutes_saved: number; - } + }, ]; }, ]); diff --git a/package.json b/package.json index 53b9da4c57616..3fef666bee098 100644 --- a/package.json +++ b/package.json @@ -6,7 +6,10 @@ "build": "pnpm -- turbo run build", "build:turbo": "pnpm run --filter=cli build", "build:ts": "tsc -b tsconfig.project.json", - "lint:prettier": "turbo run lint:prettier", + "lint": "biome check .", + "lint:fix": "biome check --write .", + "format": "prettier -c . --cache --ignore-path=.prettierignore", + "format:fix": "prettier -c . --write --cache --ignore-path=.prettierignore", "check:toml": "taplo format --check", "docs:dev": "turbo run dev --filter=turborepo-docs", "turbo": "pnpm run build:turbo && node turbow.js", @@ -18,18 +21,18 @@ "rustdoc:open": "RUSTDOCFLAGS=\"-Z unstable-options --enable-index-page\" cargo doc --workspace --no-deps --keep-going --open" }, "devDependencies": { + "@biomejs/biome": "2.0.0", "@taplo/cli": "^0.5.2", "@types/node": "^22.15.1", - "eslint": "^8.55.0", "husky": "^8.0.0", "lint-staged": "^13.1.0", - "prettier": "^2.8.7", + "prettier": "^3.5.3", "semver": "^7.3.8", "typescript": "5.5.4" }, "lint-staged": { "*.{js,jsx,ts,tsx}": [ - "prettier --write" + "biome check --write --files-ignore-unknown=true" ], "*.{md,mdx,mjs,yml,yaml,css}": [ "prettier --write" diff --git a/packages/create-turbo/.eslintrc.js b/packages/create-turbo/.eslintrc.js deleted file mode 100644 index 4ca761e2f8eb5..0000000000000 --- a/packages/create-turbo/.eslintrc.js +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = { - extends: ["@turbo/eslint-config/library"], -}; diff --git a/packages/create-turbo/package.json b/packages/create-turbo/package.json index ccae934d8e688..d22a80a68007c 100644 --- a/packages/create-turbo/package.json +++ b/packages/create-turbo/package.json @@ -18,9 +18,7 @@ "scripts": { "build": "tsup", "test": "jest", - "lint": "eslint src/", - "check-types": "tsc --noEmit", - "lint:prettier": "prettier -c . --cache --ignore-path=../../.prettierignore" + "check-types": "tsc --noEmit" }, "dependencies": { "commander": "^11.0.0", @@ -33,7 +31,6 @@ }, "devDependencies": { "@jest/globals": "^29.7.0", - "@turbo/eslint-config": "workspace:*", "@turbo/telemetry": "workspace:*", "@turbo/test-utils": "workspace:*", "@turbo/tsconfig": "workspace:*", diff --git a/packages/eslint-config-turbo/.eslintrc.js b/packages/eslint-config-turbo/.eslintrc.js deleted file mode 100644 index 4ca761e2f8eb5..0000000000000 --- a/packages/eslint-config-turbo/.eslintrc.js +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = { - extends: ["@turbo/eslint-config/library"], -}; diff --git a/packages/eslint-config-turbo/package.json b/packages/eslint-config-turbo/package.json index 48f6b6e2c6d2a..57863843cf599 100644 --- a/packages/eslint-config-turbo/package.json +++ b/packages/eslint-config-turbo/package.json @@ -11,9 +11,7 @@ "url": "https://github.com/vercel/turborepo/issues" }, "scripts": { - "build": "bunchee", - "lint": "eslint src", - "lint:prettier": "prettier -c . --cache --ignore-path=../../.prettierignore" + "build": "bunchee" }, "keywords": [ "turbo", @@ -55,7 +53,6 @@ }, "license": "MIT", "devDependencies": { - "@turbo/eslint-config": "workspace:*", "@turbo/tsconfig": "workspace:*", "@types/eslint": "^8.56.10", "@types/node": "^20", diff --git a/packages/eslint-config/README.md b/packages/eslint-config/README.md deleted file mode 100644 index c21c2d8f85765..0000000000000 --- a/packages/eslint-config/README.md +++ /dev/null @@ -1,3 +0,0 @@ -# `@turbo/eslint-config` - -Collection of internal eslint configurations shared between [turborepo/packages/](https://github.com/vercel/turborepo/tree/main/packages) diff --git a/packages/eslint-config/library.js b/packages/eslint-config/library.js deleted file mode 100644 index a03e15eff9175..0000000000000 --- a/packages/eslint-config/library.js +++ /dev/null @@ -1,50 +0,0 @@ -const { resolve } = require("node:path"); - -const project = resolve(process.cwd(), "tsconfig.json"); - -module.exports = { - extends: [ - "@vercel/style-guide/eslint/node", - "@vercel/style-guide/eslint/typescript", - ].map(require.resolve), - parserOptions: { - project, - }, - settings: { - "import/resolver": { - typescript: { - project, - }, - }, - }, - ignorePatterns: ["node_modules/", "dist/"], - rules: { - "unicorn/filename-case": ["off"], - "@typescript-eslint/explicit-function-return-type": ["off"], - "@typescript-eslint/array-type": ["error", { default: "generic" }], - "import/no-extraneous-dependencies": [ - "error", - { peerDependencies: true, includeTypes: true }, - ], - "import/no-named-as-default-member": ["off"], - }, - overrides: [ - { - files: ["*.test.ts"], - rules: { - "@typescript-eslint/consistent-type-imports": [ - "error", - { - disallowTypeAnnotations: false, // this is needed for `jest.mock` - }, - ], - }, - }, - { - files: ["jest.config.ts", "*/jest-config/*.ts", "jest-preset.ts"], - rules: { - "import/no-default-export": ["off"], - }, - }, - ], -}; diff --git a/packages/eslint-config/next.js b/packages/eslint-config/next.js deleted file mode 100644 index 169829a5d6b73..0000000000000 --- a/packages/eslint-config/next.js +++ /dev/null @@ -1,28 +0,0 @@ -const { resolve } = require("node:path"); - -const project = resolve(process.cwd(), "tsconfig.json"); - -module.exports = { - extends: [ - "@vercel/style-guide/eslint/node", - "@vercel/style-guide/eslint/typescript", - "@vercel/style-guide/eslint/browser", - "@vercel/style-guide/eslint/react", - "@vercel/style-guide/eslint/next", - ].map(require.resolve), - parserOptions: { - project, - }, - settings: { - "import/resolver": { - typescript: { - project, - }, - }, - }, - ignorePatterns: ["node_modules/", "dist/"], - rules: { - "unicorn/filename-case": ["off"], - "@typescript-eslint/explicit-function-return-type": ["off"], - }, -}; diff --git a/packages/eslint-config/package.json b/packages/eslint-config/package.json deleted file mode 100644 index 081bc3fb4b12a..0000000000000 --- a/packages/eslint-config/package.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "name": "@turbo/eslint-config", - "version": "0.0.0", - "private": true, - "devDependencies": { - "@vercel/style-guide": "^5.1.0" - } -} diff --git a/packages/eslint-plugin-turbo/.eslintrc.js b/packages/eslint-plugin-turbo/.eslintrc.js deleted file mode 100644 index 28e9f376d291a..0000000000000 --- a/packages/eslint-plugin-turbo/.eslintrc.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - extends: ["@turbo/eslint-config/library"], - rules: { - "import/no-default-export": "off", - }, -}; diff --git a/packages/eslint-plugin-turbo/package.json b/packages/eslint-plugin-turbo/package.json index a6949b180aed4..1762b305d369e 100644 --- a/packages/eslint-plugin-turbo/package.json +++ b/packages/eslint-plugin-turbo/package.json @@ -26,16 +26,13 @@ "scripts": { "test": "jest", "build": "tsup && tsc --declaration", - "check-types": "tsc --noEmit", - "lint": "eslint lib/", - "lint:prettier": "prettier -c . --cache --ignore-path=../../.prettierignore" + "check-types": "tsc --noEmit" }, "dependencies": { "dotenv": "16.0.3" }, "devDependencies": { "@jest/globals": "^29.7.0", - "@turbo/eslint-config": "workspace:*", "@turbo/test-utils": "workspace:*", "@turbo/tsconfig": "workspace:*", "@turbo/types": "workspace:*", diff --git a/packages/turbo-benchmark/.eslintrc.js b/packages/turbo-benchmark/.eslintrc.js deleted file mode 100644 index c4d04fe6260e6..0000000000000 --- a/packages/turbo-benchmark/.eslintrc.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - extends: ["@turbo/eslint-config/library"], - rules: { - "no-console": "off", - }, -}; diff --git a/packages/turbo-benchmark/package.json b/packages/turbo-benchmark/package.json index bd6fc71545296..185756f0fe874 100644 --- a/packages/turbo-benchmark/package.json +++ b/packages/turbo-benchmark/package.json @@ -4,8 +4,6 @@ "scripts": { "benchmark": "node -r esbuild-register src/index.ts", "ttft": "node -r esbuild-register src/ttft/index.ts", - "lint": "eslint src", - "lint:prettier": "prettier -c src --cache --ignore-path=../.prettierignore", "check-types": "tsc --noEmit", "demo": "pnpm run demo:lage && pnpm run demo:lerna && pnpm run demo:nx && pnpm run demo:turbo", "demo:lage": "node src/generate.mjs lage", @@ -35,7 +33,6 @@ }, "devDependencies": { "@jest/globals": "29.7.0", - "@turbo/eslint-config": "workspace:*", "@turbo/tsconfig": "workspace:*", "@types/fs-extra": "^9.0.13", "@types/ndjson": "^2.0.2", diff --git a/packages/turbo-benchmark/tsconfig.json b/packages/turbo-benchmark/tsconfig.json index 21a7a112ed0fd..d3790517d07c0 100644 --- a/packages/turbo-benchmark/tsconfig.json +++ b/packages/turbo-benchmark/tsconfig.json @@ -1,16 +1,10 @@ { "extends": "@turbo/tsconfig/library.json", "skipLibCheck": true, - "include": [ - "./src/**/*" - ], - "exclude": [ - "./src/templates/**/*" - ], + "include": ["./src/**/*"], + "exclude": ["./src/templates/**/*"], "compilerOptions": { "rootDir": ".", - "lib": [ - "ES2020" - ], + "lib": ["ES2020"] } } diff --git a/packages/turbo-codemod/.eslintrc.js b/packages/turbo-codemod/.eslintrc.js deleted file mode 100644 index 4ca761e2f8eb5..0000000000000 --- a/packages/turbo-codemod/.eslintrc.js +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = { - extends: ["@turbo/eslint-config/library"], -}; diff --git a/packages/turbo-codemod/package.json b/packages/turbo-codemod/package.json index e59f673ff02f6..a94ae0283dea3 100644 --- a/packages/turbo-codemod/package.json +++ b/packages/turbo-codemod/package.json @@ -16,10 +16,8 @@ "scripts": { "build": "tsup", "test": "jest", - "lint": "eslint src/", "check-types": "tsc --noEmit", - "add-transformer": "plop", - "lint:prettier": "prettier -c . --cache --ignore-path=../../.prettierignore" + "add-transformer": "plop" }, "dependencies": { "axios": "0.27.2", @@ -39,7 +37,6 @@ }, "devDependencies": { "@jest/globals": "^29.7.0", - "@turbo/eslint-config": "workspace:*", "@turbo/gen": "workspace:*", "@turbo/test-utils": "workspace:*", "@turbo/tsconfig": "workspace:*", diff --git a/packages/turbo-gen/.eslintrc.js b/packages/turbo-gen/.eslintrc.js deleted file mode 100644 index a437d3f9fea61..0000000000000 --- a/packages/turbo-gen/.eslintrc.js +++ /dev/null @@ -1,4 +0,0 @@ -module.exports = { - extends: ["@turbo/eslint-config/library"], - ignorePatterns: ["node_modules/", "dist/", "src/templates/**/*"], -}; diff --git a/packages/turbo-gen/package.json b/packages/turbo-gen/package.json index 8ced6cc0ddd5f..5234810bea2ea 100644 --- a/packages/turbo-gen/package.json +++ b/packages/turbo-gen/package.json @@ -17,7 +17,6 @@ "scripts": { "build": "tsup", "test": "jest", - "lint": "eslint src/", "check-types": "tsc --noEmit" }, "dependencies": { @@ -35,7 +34,6 @@ }, "devDependencies": { "@jest/globals": "^29.7.0", - "@turbo/eslint-config": "workspace:*", "@turbo/test-utils": "workspace:*", "@turbo/tsconfig": "workspace:*", "@turbo/utils": "workspace:*", diff --git a/packages/turbo-ignore/.eslintrc.js b/packages/turbo-ignore/.eslintrc.js deleted file mode 100644 index 1e66e397a97b6..0000000000000 --- a/packages/turbo-ignore/.eslintrc.js +++ /dev/null @@ -1,13 +0,0 @@ -module.exports = { - extends: ["@turbo/eslint-config/library"], - - overrides: [ - { - files: ["__tests__/**"], - rules: { - "@typescript-eslint/no-confusing-void-expression": "off", - "@typescript-eslint/no-unsafe-return": "off", - }, - }, - ], -}; diff --git a/packages/turbo-ignore/package.json b/packages/turbo-ignore/package.json index c9d5d0598c4df..e79e968a2a316 100644 --- a/packages/turbo-ignore/package.json +++ b/packages/turbo-ignore/package.json @@ -21,16 +21,13 @@ "scripts": { "build": "tsup", "test": "jest", - "lint": "eslint src __tests__", - "check-types": "tsc --noEmit", - "lint:prettier": "prettier -c . --cache --ignore-path=../../.prettierignore" + "check-types": "tsc --noEmit" }, "dependencies": { "json5": "^2.2.3" }, "devDependencies": { "@jest/globals": "^29.7.0", - "@turbo/eslint-config": "workspace:*", "@turbo/telemetry": "workspace:*", "@turbo/test-utils": "workspace:*", "@turbo/tsconfig": "workspace:*", diff --git a/packages/turbo-releaser/.eslintrc.js b/packages/turbo-releaser/.eslintrc.js deleted file mode 100644 index 1ea2c1f97c3c6..0000000000000 --- a/packages/turbo-releaser/.eslintrc.js +++ /dev/null @@ -1,26 +0,0 @@ -module.exports = { - extends: ["@turbo/eslint-config/library"], - overrides: [ - { - files: ["src/*.ts", "cli/index.cjs"], - rules: { - "no-console": "off", - }, - }, - { - files: ["src/native.ts", "src/operations.ts"], - rules: { - "import/no-default-export": "off", - }, - }, - { - files: ["src/*.test.ts"], - rules: { - // https://github.com/nodejs/node/issues/51292 - "@typescript-eslint/no-floating-promises": "off", - "@typescript-eslint/no-unsafe-member-access": "off", - "@typescript-eslint/no-unsafe-argument": "off", - }, - }, - ], -}; diff --git a/packages/turbo-releaser/package.json b/packages/turbo-releaser/package.json index 6917aaa0b75fd..7ba6735ebecfd 100644 --- a/packages/turbo-releaser/package.json +++ b/packages/turbo-releaser/package.json @@ -12,16 +12,13 @@ "scripts": { "build": "tsup", "check-types": "tsc --noEmit", - "test": "node --import tsx --test src/*.test.ts", - "lint": "eslint src/", - "lint:prettier": "prettier -c . --cache --ignore-path=../../.prettierignore" + "test": "node --import tsx --test src/*.test.ts" }, "dependencies": { "commander": "^11.0.0", "tar": "6.1.13" }, "devDependencies": { - "@turbo/eslint-config": "workspace:*", "@turbo/tsconfig": "workspace:*", "@types/node": "^20", "@types/tar": "^6.1.4", diff --git a/packages/turbo-releaser/template/bin/turbo b/packages/turbo-releaser/template/bin/turbo index 4557a07e212c5..f23f770f13b16 100755 --- a/packages/turbo-releaser/template/bin/turbo +++ b/packages/turbo-releaser/template/bin/turbo @@ -9,7 +9,7 @@ // be slower because node has to boot up just to shell out to the actual exe, // but Windows is somewhat of a second-class platform to npm so it's the best // I can do I think. -const path = require('path'); -const turbo_exe = path.join(__dirname, 'turbo.exe'); -const child_process = require('child_process'); -child_process.spawnSync(turbo_exe, process.argv.slice(2), { stdio: 'inherit' }); +const path = require("path"); +const turbo_exe = path.join(__dirname, "turbo.exe"); +const child_process = require("child_process"); +child_process.spawnSync(turbo_exe, process.argv.slice(2), { stdio: "inherit" }); diff --git a/packages/turbo-repository/__tests__/fixtures/npm-monorepo/package.json b/packages/turbo-repository/__tests__/fixtures/npm-monorepo/package.json index 7236271b8f467..cab5479119c2b 100644 --- a/packages/turbo-repository/__tests__/fixtures/npm-monorepo/package.json +++ b/packages/turbo-repository/__tests__/fixtures/npm-monorepo/package.json @@ -1,5 +1,8 @@ { "name": "basic", "private": true, - "workspaces": ["apps/*", "packages/*"] + "workspaces": [ + "apps/*", + "packages/*" + ] } diff --git a/packages/turbo-repository/package.json b/packages/turbo-repository/package.json index 928a9ef7a5f20..b43c47d4e5b7b 100644 --- a/packages/turbo-repository/package.json +++ b/packages/turbo-repository/package.json @@ -17,7 +17,6 @@ "@napi-rs/cli": "^2.16.3", "execa": "^8.0.1", "fs-extra": "^11.1.1", - "prettier": "^3.2.5", "tsx": "4.19.1" }, "main": "dist/index.js", diff --git a/packages/turbo-telemetry/.eslintrc.js b/packages/turbo-telemetry/.eslintrc.js deleted file mode 100644 index a6e3310c0c4f5..0000000000000 --- a/packages/turbo-telemetry/.eslintrc.js +++ /dev/null @@ -1,20 +0,0 @@ -module.exports = { - extends: ["@turbo/eslint-config/library"], - overrides: [ - { - files: ["src/utils.ts"], - rules: { - "import/no-default-export": "off", - }, - }, - { - files: ["src/**/*.test.ts"], - rules: { - // https://github.com/nodejs/node/issues/51292 - "@typescript-eslint/no-floating-promises": "off", - "@typescript-eslint/no-unsafe-member-access": "off", - "@typescript-eslint/no-unsafe-argument": "off", - }, - }, - ], -}; diff --git a/packages/turbo-telemetry/package.json b/packages/turbo-telemetry/package.json index 886847260e9c8..841672c8609dc 100644 --- a/packages/turbo-telemetry/package.json +++ b/packages/turbo-telemetry/package.json @@ -20,9 +20,7 @@ "types": "src/index.ts", "scripts": { "test": "node --import tsx --test src/*.test.ts", - "lint": "eslint src/", - "check-types": "tsc --noEmit", - "lint:prettier": "prettier -c . --cache --ignore-path=../../.prettierignore" + "check-types": "tsc --noEmit" }, "dependencies": { "ci-info": "^4.0.0", @@ -31,7 +29,6 @@ "zod": "^3.22.4" }, "devDependencies": { - "@turbo/eslint-config": "workspace:*", "@turbo/test-utils": "workspace:*", "@turbo/tsconfig": "workspace:*", "@turbo/types": "workspace:*", diff --git a/packages/turbo-test-utils/.eslintrc.js b/packages/turbo-test-utils/.eslintrc.js deleted file mode 100644 index 4ca761e2f8eb5..0000000000000 --- a/packages/turbo-test-utils/.eslintrc.js +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = { - extends: ["@turbo/eslint-config/library"], -}; diff --git a/packages/turbo-test-utils/package.json b/packages/turbo-test-utils/package.json index f97b88005da96..5679b503cc2db 100644 --- a/packages/turbo-test-utils/package.json +++ b/packages/turbo-test-utils/package.json @@ -17,13 +17,10 @@ "url": "https://github.com/vercel/turborepo/issues" }, "scripts": { - "lint": "eslint src/", - "check-types": "tsc --noEmit", - "lint:prettier": "prettier -c . --cache --ignore-path=../../.prettier-ignore" + "check-types": "tsc --noEmit" }, "devDependencies": { "@jest/globals": "^29.7.0", - "@turbo/eslint-config": "workspace:*", "@turbo/tsconfig": "workspace:*", "@types/fs-extra": "^9.0.13", "@types/js-yaml": "^4.0.5", diff --git a/packages/turbo-types/.eslintrc.js b/packages/turbo-types/.eslintrc.js deleted file mode 100644 index 4ca761e2f8eb5..0000000000000 --- a/packages/turbo-types/.eslintrc.js +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = { - extends: ["@turbo/eslint-config/library"], -}; diff --git a/packages/turbo-types/package.json b/packages/turbo-types/package.json index 0f90764c48ee8..0b206abf95abb 100644 --- a/packages/turbo-types/package.json +++ b/packages/turbo-types/package.json @@ -16,13 +16,10 @@ "types": "src/index.ts", "scripts": { "build": "tsc && pnpm generate-schema", - "lint": "eslint src/", - "lint:prettier": "prettier -c . --cache", "generate-schema": "tsx scripts/generate-schema.ts", "copy-schema": "cp schemas/schema.json ../turbo/schema.json" }, "devDependencies": { - "@turbo/eslint-config": "workspace:*", "@turbo/tsconfig": "workspace:*", "@types/node": "^20", "ts-json-schema-generator": "2.3.0", diff --git a/packages/turbo-types/schemas/schema.json b/packages/turbo-types/schemas/schema.json index 8f164b2a8b802..cae2a1e54af84 100644 --- a/packages/turbo-types/schemas/schema.json +++ b/packages/turbo-types/schemas/schema.json @@ -105,9 +105,7 @@ } }, "additionalProperties": false, - "required": [ - "tasks" - ] + "required": ["tasks"] }, "Pipeline": { "type": "object", @@ -200,13 +198,7 @@ }, "OutputLogs": { "type": "string", - "enum": [ - "full", - "hash-only", - "new-only", - "errors-only", - "none" - ] + "enum": ["full", "hash-only", "new-only", "errors-only", "none"] }, "RemoteCache": { "type": "object", @@ -259,10 +251,7 @@ }, "UI": { "type": "string", - "enum": [ - "tui", - "stream" - ] + "enum": ["tui", "stream"] }, "RelativeUnixPath": { "type": "string", @@ -270,10 +259,7 @@ }, "EnvMode": { "type": "string", - "enum": [ - "strict", - "loose" - ] + "enum": ["strict", "loose"] }, "RootBoundariesConfig": { "type": "object", @@ -351,9 +337,7 @@ "type": "string" }, "description": "This key is only available in Workspace Configs and cannot be used in your root turbo.json.\n\nTells turbo to extend your root `turbo.json` and overrides with the keys provided in your Workspace Configs.\n\nCurrently, only the \"//\" value is allowed.", - "default": [ - "//" - ] + "default": ["//"] }, "tags": { "type": "array", @@ -367,10 +351,7 @@ "description": "Configuration for `turbo boundaries` that is specific to this package" } }, - "required": [ - "extends", - "tasks" - ], + "required": ["extends", "tasks"], "additionalProperties": false, "description": "A `turbo.json` file in a package in the monorepo (not the root)" }, @@ -388,4 +369,4 @@ "additionalProperties": false } } -} \ No newline at end of file +} diff --git a/packages/turbo-types/schemas/schema.v1.json b/packages/turbo-types/schemas/schema.v1.json index ef407c36e0a07..008e53f97cc0b 100644 --- a/packages/turbo-types/schemas/schema.v1.json +++ b/packages/turbo-types/schemas/schema.v1.json @@ -34,15 +34,10 @@ "type": "string" }, "description": "This key is only available in Workspace Configs and cannot be used in your root turbo.json.\n\nTells turbo to extend your root `turbo.json` and overrides with the keys provided in your Workspace Configs.\n\nCurrently, only the \"//\" value is allowed.", - "default": [ - "//" - ] + "default": ["//"] } }, - "required": [ - "extends", - "pipeline" - ], + "required": ["extends", "pipeline"], "additionalProperties": false }, "PipelineV1": { @@ -141,13 +136,7 @@ }, "OutputModeV1": { "type": "string", - "enum": [ - "full", - "hash-only", - "new-only", - "errors-only", - "none" - ] + "enum": ["full", "hash-only", "new-only", "errors-only", "none"] }, "RootSchemaV1": { "type": "object", @@ -223,9 +212,7 @@ } }, "additionalProperties": false, - "required": [ - "pipeline" - ] + "required": ["pipeline"] }, "RemoteCacheV1": { "type": "object", @@ -244,4 +231,4 @@ "additionalProperties": false } } -} \ No newline at end of file +} diff --git a/packages/turbo-types/schemas/schema.v2.json b/packages/turbo-types/schemas/schema.v2.json index 8f164b2a8b802..cae2a1e54af84 100644 --- a/packages/turbo-types/schemas/schema.v2.json +++ b/packages/turbo-types/schemas/schema.v2.json @@ -105,9 +105,7 @@ } }, "additionalProperties": false, - "required": [ - "tasks" - ] + "required": ["tasks"] }, "Pipeline": { "type": "object", @@ -200,13 +198,7 @@ }, "OutputLogs": { "type": "string", - "enum": [ - "full", - "hash-only", - "new-only", - "errors-only", - "none" - ] + "enum": ["full", "hash-only", "new-only", "errors-only", "none"] }, "RemoteCache": { "type": "object", @@ -259,10 +251,7 @@ }, "UI": { "type": "string", - "enum": [ - "tui", - "stream" - ] + "enum": ["tui", "stream"] }, "RelativeUnixPath": { "type": "string", @@ -270,10 +259,7 @@ }, "EnvMode": { "type": "string", - "enum": [ - "strict", - "loose" - ] + "enum": ["strict", "loose"] }, "RootBoundariesConfig": { "type": "object", @@ -351,9 +337,7 @@ "type": "string" }, "description": "This key is only available in Workspace Configs and cannot be used in your root turbo.json.\n\nTells turbo to extend your root `turbo.json` and overrides with the keys provided in your Workspace Configs.\n\nCurrently, only the \"//\" value is allowed.", - "default": [ - "//" - ] + "default": ["//"] }, "tags": { "type": "array", @@ -367,10 +351,7 @@ "description": "Configuration for `turbo boundaries` that is specific to this package" } }, - "required": [ - "extends", - "tasks" - ], + "required": ["extends", "tasks"], "additionalProperties": false, "description": "A `turbo.json` file in a package in the monorepo (not the root)" }, @@ -388,4 +369,4 @@ "additionalProperties": false } } -} \ No newline at end of file +} diff --git a/packages/turbo-types/src/json/frameworks.json b/packages/turbo-types/src/json/frameworks.json index e65b289a7e835..12accdd3be639 100644 --- a/packages/turbo-types/src/json/frameworks.json +++ b/packages/turbo-types/src/json/frameworks.json @@ -149,10 +149,7 @@ { "slug": "vue", "name": "Vue", - "envWildcards": [ - "VUE_APP_*", - "LAUNCH_EDITOR" - ], + "envWildcards": ["VUE_APP_*", "LAUNCH_EDITOR"], "dependencyMatch": { "strategy": "all", "dependencies": ["@vue/cli-service"] diff --git a/packages/turbo-utils/.eslintrc.js b/packages/turbo-utils/.eslintrc.js deleted file mode 100644 index 4ca761e2f8eb5..0000000000000 --- a/packages/turbo-utils/.eslintrc.js +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = { - extends: ["@turbo/eslint-config/library"], -}; diff --git a/packages/turbo-utils/package.json b/packages/turbo-utils/package.json index c93309df0d334..4ce36cc3f33b7 100644 --- a/packages/turbo-utils/package.json +++ b/packages/turbo-utils/package.json @@ -20,14 +20,11 @@ "types": "src/index.ts", "scripts": { "test": "jest", - "lint": "eslint src/", - "check-types": "tsc --noEmit", - "lint:prettier": "prettier -c . --cache --ignore-path=../../.prettierignore" + "check-types": "tsc --noEmit" }, "devDependencies": { "@jest/globals": "^29.7.0", "@manypkg/find-root": "^1.1.0", - "@turbo/eslint-config": "workspace:*", "@turbo/test-utils": "workspace:*", "@turbo/tsconfig": "workspace:*", "@turbo/types": "workspace:*", diff --git a/packages/turbo-workspaces/.eslintrc.js b/packages/turbo-workspaces/.eslintrc.js deleted file mode 100644 index 4ca761e2f8eb5..0000000000000 --- a/packages/turbo-workspaces/.eslintrc.js +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = { - extends: ["@turbo/eslint-config/library"], -}; diff --git a/packages/turbo-workspaces/package.json b/packages/turbo-workspaces/package.json index 755bd81ef12f9..75837dbab4885 100644 --- a/packages/turbo-workspaces/package.json +++ b/packages/turbo-workspaces/package.json @@ -20,9 +20,7 @@ "build": "tsup", "dev": "tsup --watch", "test": "jest", - "lint": "eslint src/", - "check-types": "tsc --noEmit", - "lint:prettier": "prettier -c . --cache --ignore-path=../../.prettierignore" + "check-types": "tsc --noEmit" }, "dependencies": { "commander": "^10.0.0", @@ -39,7 +37,6 @@ }, "devDependencies": { "@jest/globals": "^29.7.0", - "@turbo/eslint-config": "workspace:*", "@turbo/test-utils": "workspace:*", "@turbo/tsconfig": "workspace:*", "@turbo/utils": "workspace:*", diff --git a/packages/turbo/bin/turbo b/packages/turbo/bin/turbo index 5d29df1fa82ab..49c0b5703256e 100755 --- a/packages/turbo/bin/turbo +++ b/packages/turbo/bin/turbo @@ -5,9 +5,9 @@ * have already been installed, but it's possible that it has not. */ -const child_process = require('child_process'); -const fs = require('fs'); -const path = require('path'); +const child_process = require("child_process"); +const fs = require("fs"); +const path = require("path"); // If we do not find the correct platform binary, should we attempt to install it? const SHOULD_INSTALL = true; @@ -18,7 +18,7 @@ const SHOULD_ATTEMPT_EMULATED = true; // Relies on the fact that each tarball publishes the `package.json`. // We can simply cd into the `turbo` directory and install there. function installUsingNPM() { - const turboPath = path.dirname(require.resolve('turbo/package')); + const turboPath = path.dirname(require.resolve("turbo/package")); // Erase "npm_config_global" so that "npm install --global turbo" works. // Otherwise this nested "npm install" will also be global, and the install @@ -33,7 +33,9 @@ function installUsingNPM() { // npm has multiple places that we need to look for a package name. function hasPackage(sourceObject, packageName) { - return !!sourceObject[packageName] || !!sourceObject[`node_modules/${packageName}`]; + return ( + !!sourceObject[packageName] || !!sourceObject[`node_modules/${packageName}`] + ); } // This provides logging messages as it progresses towards calculating the binary path. @@ -42,25 +44,22 @@ function getBinaryPath() { const TURBO_BINARY_PATH = process.env.TURBO_BINARY_PATH; if (TURBO_BINARY_PATH) { if (!fs.existsSync(TURBO_BINARY_PATH)) { - console.error(`Turborepo was unable to find the executable specified by TURBO_BINARY_PATH:\n${TURBO_BINARY_PATH}`); + console.error( + `Turborepo was unable to find the executable specified by TURBO_BINARY_PATH:\n${TURBO_BINARY_PATH}` + ); console.error(); - console.error(`TURBO_BINARY_PATH is intended for development use-cases. You likely want to unset the environment variable.`); + console.error( + `TURBO_BINARY_PATH is intended for development use-cases. You likely want to unset the environment variable.` + ); process.exit(1); } else { return TURBO_BINARY_PATH; } } - const availablePlatforms = [ - 'darwin', - 'linux', - 'windows', - ]; + const availablePlatforms = ["darwin", "linux", "windows"]; - const availableArchs = [ - '64', - 'arm64', - ]; + const availableArchs = ["64", "arm64"]; // We need to figure out which binary to hand the user. // The only place where the binary can be at this point is `require.resolve`-able @@ -72,13 +71,17 @@ function getBinaryPath() { if (platform === "win32") { platform = "windows"; } - const resolvedArch = arch === 'x64' ? '64' : arch; - const ext = platform === 'windows' ? '.exe' : ''; + const resolvedArch = arch === "x64" ? "64" : arch; + const ext = platform === "windows" ? ".exe" : ""; // Try all places in order until we get a hit. // 1. The package which contains the binary we _should_ be running. - const correctBinary = availablePlatforms.includes(platform) && availableArchs.includes(resolvedArch) ? `turbo-${platform}-${resolvedArch}/bin/turbo${ext}` : null; + const correctBinary = + availablePlatforms.includes(platform) && + availableArchs.includes(resolvedArch) + ? `turbo-${platform}-${resolvedArch}/bin/turbo${ext}` + : null; if (correctBinary !== null) { try { return require.resolve(`${correctBinary}`); @@ -87,27 +90,36 @@ function getBinaryPath() { // 2. Install the binary that they need just in time. if (SHOULD_INSTALL && correctBinary !== null) { - console.warn('Turborepo did not find the correct binary for your platform.'); - console.warn('We will attempt to install it now.'); + console.warn( + "Turborepo did not find the correct binary for your platform." + ); + console.warn("We will attempt to install it now."); try { installUsingNPM(); const resolvedPath = require.resolve(`${correctBinary}`); - console.warn('Installation has succeeded.'); + console.warn("Installation has succeeded."); return resolvedPath; } catch (e) { - console.warn('Installation has failed.'); + console.warn("Installation has failed."); } } // 3. Both Windows and macOS ARM boxes can run x64 binaries. Attempt to run under emulation. - const alternateBinary = (arch === "arm64" && ['darwin', 'windows'].includes(platform)) ? `turbo-${platform}-64/bin/turbo${ext}` : null; + const alternateBinary = + arch === "arm64" && ["darwin", "windows"].includes(platform) + ? `turbo-${platform}-64/bin/turbo${ext}` + : null; if (SHOULD_ATTEMPT_EMULATED && alternateBinary !== null) { try { const resolvedPath = require.resolve(`${alternateBinary}`); - console.warn(`Turborepo detected that you're running:\n${platform} ${resolvedArch}.`); + console.warn( + `Turborepo detected that you're running:\n${platform} ${resolvedArch}.` + ); console.warn(`We were not able to find the binary at:\n${correctBinary}`); - console.warn(`We found a possibly-compatible binary at:\n${alternateBinary}`); + console.warn( + `We found a possibly-compatible binary at:\n${alternateBinary}` + ); console.warn(`We will attempt to run that binary.`); return resolvedPath; } catch (e) {} @@ -123,122 +135,162 @@ function getBinaryPath() { // Explain our detection attempt: console.error(); - console.error('***'); + console.error("***"); console.error(); console.error(`Turborepo failed to start.`); console.error(); - console.error(`Turborepo detected that you are running:\n${platform} ${resolvedArch}`); + console.error( + `Turborepo detected that you are running:\n${platform} ${resolvedArch}` + ); // Tell them if we support their platform at all. if (!availablePlatforms.includes(platform)) { console.error(); - console.error('Turborepo does not presently support your platform.'); + console.error("Turborepo does not presently support your platform."); process.exit(1); } else if (!availableArchs.includes(resolvedArch)) { if (availablePlatforms.includes(platform)) { console.error(); - console.error('Turborepo supports your platform, but does not support your processor architecture.'); + console.error( + "Turborepo supports your platform, but does not support your processor architecture." + ); process.exit(1); } else { console.error(); - console.error('Turborepo does not either of your platform or processor architecture.'); + console.error( + "Turborepo does not either of your platform or processor architecture." + ); process.exit(1); } } if (correctBinary !== null) { console.error(); - console.error('***'); + console.error("***"); console.error(); console.error(`We were not able to find the binary at:\n${correctBinary}`); console.error(); console.error(`We looked for it at:`); - console.error(require.resolve.paths(correctBinary).join('\n')); + console.error(require.resolve.paths(correctBinary).join("\n")); } if (alternateBinary !== null) { console.error(); - console.error('***'); + console.error("***"); console.error(); - console.error(`Your platform (${platform}) can sometimes run x86 under emulation.`); - console.error(`We did not find a possibly-compatible binary at:\n${alternateBinary}`); + console.error( + `Your platform (${platform}) can sometimes run x86 under emulation.` + ); + console.error( + `We did not find a possibly-compatible binary at:\n${alternateBinary}` + ); console.error(); console.error(`We looked for it at:`); - console.error(require.resolve.paths(alternateBinary).join('\n')); + console.error(require.resolve.paths(alternateBinary).join("\n")); } // Investigate other failure modes. // Has the wrong platform's binaries available. - const availableBinaries = availablePlatforms.map(platform => availableArchs.map(arch => `turbo-${platform}-${arch}/bin/turbo${platform === 'windows' ? '.exe' : ''}`)).flat(); - const definitelyWrongBinaries = availableBinaries.filter(binary => binary !== correctBinary && binary !== alternateBinary); - const otherInstalled = definitelyWrongBinaries.filter(binaryPath => { + const availableBinaries = availablePlatforms + .map((platform) => + availableArchs.map( + (arch) => + `turbo-${platform}-${arch}/bin/turbo${platform === "windows" ? ".exe" : ""}` + ) + ) + .flat(); + const definitelyWrongBinaries = availableBinaries.filter( + (binary) => binary !== correctBinary && binary !== alternateBinary + ); + const otherInstalled = definitelyWrongBinaries.filter((binaryPath) => { try { return require.resolve(binaryPath); } catch (e) {} }); console.error(); - console.error('***'); + console.error("***"); console.error(); if (otherInstalled.length > 0) { - console.error('Turborepo checked to see if binaries for another platform are installed.'); - console.error('This typically indicates an error in sharing of pre-resolved node_modules across platforms.'); - console.error('One common reason for this is copying files to Docker.'); + console.error( + "Turborepo checked to see if binaries for another platform are installed." + ); + console.error( + "This typically indicates an error in sharing of pre-resolved node_modules across platforms." + ); + console.error("One common reason for this is copying files to Docker."); console.error(); console.error(`We found these unnecessary binaries:`); - console.error(otherInstalled.join('\n')); + console.error(otherInstalled.join("\n")); } else { console.error(`We did not find any binaries on this system.`); - console.error(`This can happen if you run installation with the --no-optional flag.`); + console.error( + `This can happen if you run installation with the --no-optional flag.` + ); } // Check to see if we have partially-populated dependencies in the npm lockfile. const MAX_LOOKUPS = 10; - const availablePackages = availablePlatforms.map(platform => availableArchs.map(arch => `turbo-${platform}-${arch}`)).flat(); + const availablePackages = availablePlatforms + .map((platform) => + availableArchs.map((arch) => `turbo-${platform}-${arch}`) + ) + .flat(); try { // Attempt to find project root. - const selfPath = require.resolve('turbo/package'); + const selfPath = require.resolve("turbo/package"); let previous = null; - let current = path.join(selfPath, '..', '..', 'package-lock.json'); + let current = path.join(selfPath, "..", "..", "package-lock.json"); for (let i = 0; previous !== current && i < MAX_LOOKUPS; i++) { try { const lockfile = fs.readFileSync(current); const parsedLockfile = JSON.parse(lockfile); - const sourceObject = parsedLockfile?.dependencies ?? parsedLockfile?.packages ?? {}; + const sourceObject = + parsedLockfile?.dependencies ?? parsedLockfile?.packages ?? {}; // If we don't show up in the lockfile it's the wrong lockfile. - if (hasPackage(sourceObject, 'turbo')) { + if (hasPackage(sourceObject, "turbo")) { // Check to see if all of `turbo--` is included. - const hasAllPackages = availablePackages.every(package => hasPackage(sourceObject, package)); + const hasAllPackages = availablePackages.every((package) => + hasPackage(sourceObject, package) + ); if (!hasAllPackages) { console.error(); - console.error('***'); + console.error("***"); console.error(); - console.error(`Turborepo detected that your lockfile (${current}) does not enumerate all available platforms.`); - console.error('This is likely a consequence of an npm issue: https://github.com/npm/cli/issues/4828.'); + console.error( + `Turborepo detected that your lockfile (${current}) does not enumerate all available platforms.` + ); + console.error( + "This is likely a consequence of an npm issue: https://github.com/npm/cli/issues/4828." + ); // Let's build their repair command: - let version = ''; - let environment = ''; + let version = ""; + let environment = ""; if (parsedLockfile?.packages[""]?.dependencies?.turbo) { version = `@${parsedLockfile.packages[""].dependencies.turbo}`; - environment = ' --save-prod'; + environment = " --save-prod"; } else if (parsedLockfile?.packages[""]?.devDependencies?.turbo) { version = `@${parsedLockfile.packages[""].devDependencies.turbo}`; - environment = ' --save-dev'; - } else if (parsedLockfile?.packages[""]?.optionalDependencies?.turbo) { + environment = " --save-dev"; + } else if ( + parsedLockfile?.packages[""]?.optionalDependencies?.turbo + ) { version = `@${parsedLockfile.packages[""].optionalDependencies.turbo}`; - environment = ' --save-optional'; + environment = " --save-optional"; } console.error(); - console.error('To resolve this issue for your repository, run:'); - console.error(`npm install turbo${version} --package-lock-only${environment} && npm install`); + console.error("To resolve this issue for your repository, run:"); + console.error( + `npm install turbo${version} --package-lock-only${environment} && npm install` + ); console.error(); console.error(`You will need to commit the updated lockfile.`); } @@ -247,27 +299,27 @@ function getBinaryPath() { break; } catch (e) {} - let next = path.join(current, '..', '..', 'package-lock.json'); + let next = path.join(current, "..", "..", "package-lock.json"); previous = current; current = next; } } catch (e) {} console.error(); - console.error('***'); + console.error("***"); console.error(); - console.error(`If you believe this is an error, please include this message in your report.`); + console.error( + `If you believe this is an error, please include this message in your report.` + ); process.exit(1); } // Run the binary we got. try { - child_process.execFileSync( - getBinaryPath(), - process.argv.slice(2), - { stdio: "inherit" } - ); + child_process.execFileSync(getBinaryPath(), process.argv.slice(2), { + stdio: "inherit", + }); } catch (e) { if (e && e.status) process.exit(e.status); throw e; diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 6438d9e781a9f..46d4202a10a37 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -8,15 +8,15 @@ importers: .: devDependencies: + '@biomejs/biome': + specifier: 2.0.0 + version: 2.0.0 '@taplo/cli': specifier: ^0.5.2 version: 0.5.2 '@types/node': specifier: ^22.15.1 version: 22.15.3 - eslint: - specifier: ^8.55.0 - version: 8.55.0 husky: specifier: ^8.0.0 version: 8.0.3 @@ -24,8 +24,8 @@ importers: specifier: ^13.1.0 version: 13.1.0 prettier: - specifier: ^2.8.7 - version: 2.8.7 + specifier: ^3.5.3 + version: 3.5.3 semver: specifier: ^7.3.8 version: 7.5.0 @@ -42,9 +42,6 @@ importers: specifier: ^1.1.1 version: 1.1.1 devDependencies: - '@turbo/eslint-config': - specifier: workspace:* - version: link:../../../packages/eslint-config '@vercel/ncc': specifier: ^0.36.0 version: 0.36.0 @@ -209,12 +206,6 @@ importers: '@next/env': specifier: 15.4.0-canary.81 version: 15.4.0-canary.81 - '@next/eslint-plugin-next': - specifier: 15.4.0-canary.81 - version: 15.4.0-canary.81 - '@turbo/eslint-config': - specifier: workspace:* - version: link:../../packages/eslint-config '@turbo/tsconfig': specifier: workspace:^ version: link:../../packages/tsconfig @@ -248,9 +239,6 @@ importers: autoprefixer: specifier: ^10.4.20 version: 10.4.21(postcss@8.5.3) - eslint: - specifier: 8.57.0 - version: 8.57.0 gray-matter: specifier: ^4.0.3 version: 4.0.3 @@ -303,9 +291,6 @@ importers: '@jest/globals': specifier: ^29.7.0 version: 29.7.0 - '@turbo/eslint-config': - specifier: workspace:* - version: link:../eslint-config '@turbo/telemetry': specifier: workspace:* version: link:../turbo-telemetry @@ -338,7 +323,7 @@ importers: version: 29.7.0(@types/node@18.17.4) ts-jest: specifier: ^29.2.5 - version: 29.2.5(@babel/core@7.26.10)(esbuild@0.17.18)(jest@29.7.0)(typescript@5.5.4) + version: 29.2.5(@babel/core@7.23.6)(esbuild@0.17.18)(jest@29.7.0)(typescript@5.5.4) tsup: specifier: ^6.7.0 version: 6.7.0(ts-node@10.9.2)(typescript@5.5.4) @@ -346,12 +331,6 @@ importers: specifier: 5.5.4 version: 5.5.4 - packages/eslint-config: - devDependencies: - '@vercel/style-guide': - specifier: ^5.1.0 - version: 5.1.0(eslint@8.57.0)(prettier@2.8.7)(typescript@5.6.3) - packages/eslint-config-turbo: dependencies: eslint: @@ -364,9 +343,6 @@ importers: specifier: '>2.0.0' version: 2.3.3 devDependencies: - '@turbo/eslint-config': - specifier: workspace:* - version: link:../eslint-config '@turbo/tsconfig': specifier: workspace:* version: link:../tsconfig @@ -395,9 +371,6 @@ importers: '@jest/globals': specifier: ^29.7.0 version: 29.7.0 - '@turbo/eslint-config': - specifier: workspace:* - version: link:../eslint-config '@turbo/test-utils': specifier: workspace:* version: link:../turbo-test-utils @@ -490,9 +463,6 @@ importers: '@jest/globals': specifier: 29.7.0 version: 29.7.0 - '@turbo/eslint-config': - specifier: workspace:* - version: link:../eslint-config '@turbo/tsconfig': specifier: workspace:* version: link:../tsconfig @@ -566,9 +536,6 @@ importers: '@jest/globals': specifier: ^29.7.0 version: 29.7.0 - '@turbo/eslint-config': - specifier: workspace:* - version: link:../eslint-config '@turbo/gen': specifier: workspace:* version: link:../turbo-gen @@ -668,9 +635,6 @@ importers: '@jest/globals': specifier: ^29.7.0 version: 29.7.0 - '@turbo/eslint-config': - specifier: workspace:* - version: link:../eslint-config '@turbo/test-utils': specifier: workspace:* version: link:../turbo-test-utils @@ -714,9 +678,6 @@ importers: '@jest/globals': specifier: ^29.7.0 version: 29.7.0 - '@turbo/eslint-config': - specifier: workspace:* - version: link:../eslint-config '@turbo/telemetry': specifier: workspace:* version: link:../turbo-telemetry @@ -760,9 +721,6 @@ importers: specifier: 6.1.13 version: 6.1.13 devDependencies: - '@turbo/eslint-config': - specifier: workspace:* - version: link:../eslint-config '@turbo/tsconfig': specifier: workspace:* version: link:../tsconfig @@ -793,9 +751,6 @@ importers: fs-extra: specifier: ^11.1.1 version: 11.1.1 - prettier: - specifier: ^3.2.5 - version: 3.3.3 tsx: specifier: 4.19.1 version: 4.19.1 @@ -818,9 +773,6 @@ importers: specifier: ^3.22.4 version: 3.22.4 devDependencies: - '@turbo/eslint-config': - specifier: workspace:* - version: link:../eslint-config '@turbo/test-utils': specifier: workspace:* version: link:../turbo-test-utils @@ -861,9 +813,6 @@ importers: '@jest/globals': specifier: ^29.7.0 version: 29.7.0 - '@turbo/eslint-config': - specifier: workspace:* - version: link:../eslint-config '@turbo/tsconfig': specifier: workspace:* version: link:../tsconfig @@ -891,9 +840,6 @@ importers: packages/turbo-types: devDependencies: - '@turbo/eslint-config': - specifier: workspace:* - version: link:../eslint-config '@turbo/tsconfig': specifier: workspace:* version: link:../tsconfig @@ -915,9 +861,6 @@ importers: '@manypkg/find-root': specifier: ^1.1.0 version: 1.1.0 - '@turbo/eslint-config': - specifier: workspace:* - version: link:../eslint-config '@turbo/test-utils': specifier: workspace:* version: link:../turbo-test-utils @@ -1049,9 +992,6 @@ importers: '@jest/globals': specifier: ^29.7.0 version: 29.7.0 - '@turbo/eslint-config': - specifier: workspace:* - version: link:../eslint-config '@turbo/test-utils': specifier: workspace:* version: link:../turbo-test-utils @@ -1254,6 +1194,7 @@ packages: /@aashutoshrathi/word-wrap@1.2.6: resolution: {integrity: sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==} engines: {node: '>=0.10.0'} + dev: false /@actions/core@1.10.0: resolution: {integrity: sha512-2aZDDa3zrrZbP5ZYg159sNoLRb61nQ7awl5pSvIq5Qpj81vwDzdMRKzkWJGJuwVvWpvZKx7vspJALyvaaIQyug==} @@ -1547,20 +1488,6 @@ packages: - supports-color dev: true - /@babel/eslint-parser@7.22.11(@babel/core@7.23.6)(eslint@8.57.0): - resolution: {integrity: sha512-YjOYZ3j7TjV8OhLW6NCtyg8G04uStATEUe5eiLuCZaXz2VSDQ3dsAtm2D+TuQyAqNMUK2WacGo0/uma9Pein1w==} - engines: {node: ^10.13.0 || ^12.13.0 || >=14.0.0} - peerDependencies: - '@babel/core': ^7.11.0 - eslint: ^7.5.0 || ^8.0.0 - dependencies: - '@babel/core': 7.23.6 - '@nicolo-ribaudo/eslint-scope-5-internals': 5.1.1-v1 - eslint: 8.57.0 - eslint-visitor-keys: 2.1.0 - semver: 6.3.1 - dev: true - /@babel/generator@7.23.6: resolution: {integrity: sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==} engines: {node: '>=6.9.0'} @@ -1769,11 +1696,6 @@ packages: engines: {node: '>=6.9.0'} dev: true - /@babel/helper-validator-identifier@7.22.5: - resolution: {integrity: sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==} - engines: {node: '>=6.9.0'} - dev: true - /@babel/helper-validator-identifier@7.24.7: resolution: {integrity: sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==} engines: {node: '>=6.9.0'} @@ -2116,6 +2038,93 @@ packages: resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} dev: true + /@biomejs/biome@2.0.0: + resolution: {integrity: sha512-BlUoXEOI/UQTDEj/pVfnkMo8SrZw3oOWBDrXYFT43V7HTkIUDkBRY53IC5Jx1QkZbaB+0ai1wJIfYwp9+qaJTQ==} + engines: {node: '>=14.21.3'} + hasBin: true + optionalDependencies: + '@biomejs/cli-darwin-arm64': 2.0.0 + '@biomejs/cli-darwin-x64': 2.0.0 + '@biomejs/cli-linux-arm64': 2.0.0 + '@biomejs/cli-linux-arm64-musl': 2.0.0 + '@biomejs/cli-linux-x64': 2.0.0 + '@biomejs/cli-linux-x64-musl': 2.0.0 + '@biomejs/cli-win32-arm64': 2.0.0 + '@biomejs/cli-win32-x64': 2.0.0 + dev: true + + /@biomejs/cli-darwin-arm64@2.0.0: + resolution: {integrity: sha512-QvqWYtFFhhxdf8jMAdJzXW+Frc7X8XsnHQLY+TBM1fnT1TfeV/v9vsFI5L2J7GH6qN1+QEEJ19jHibCY2Ypplw==} + engines: {node: '>=14.21.3'} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@biomejs/cli-darwin-x64@2.0.0: + resolution: {integrity: sha512-5JFhls1EfmuIH4QGFPlNpxJQFC6ic3X1ltcoLN+eSRRIPr6H/lUS1ttuD0Fj7rPgPhZqopK/jfH8UVj/1hIsQw==} + engines: {node: '>=14.21.3'} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@biomejs/cli-linux-arm64-musl@2.0.0: + resolution: {integrity: sha512-Bxsz8ki8+b3PytMnS5SgrGV+mbAWwIxI3ydChb/d1rURlJTMdxTTq5LTebUnlsUWAX6OvJuFeiVq9Gjn1YbCyA==} + engines: {node: '>=14.21.3'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@biomejs/cli-linux-arm64@2.0.0: + resolution: {integrity: sha512-BAH4QVi06TzAbVchXdJPsL0Z/P87jOfes15rI+p3EX9/EGTfIjaQ9lBVlHunxcmoptaA5y1Hdb9UYojIhmnjIw==} + engines: {node: '>=14.21.3'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@biomejs/cli-linux-x64-musl@2.0.0: + resolution: {integrity: sha512-tiQ0ABxMJb9I6GlfNp0ulrTiQSFacJRJO8245FFwE3ty3bfsfxlU/miblzDIi+qNrgGsLq5wIZcVYGp4c+HXZA==} + engines: {node: '>=14.21.3'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@biomejs/cli-linux-x64@2.0.0: + resolution: {integrity: sha512-09PcOGYTtkopWRm6mZ/B6Mr6UHdkniUgIG/jLBv+2J8Z61ezRE+xQmpi3yNgUrFIAU4lPA9atg7mhvE/5Bo7Wg==} + engines: {node: '>=14.21.3'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@biomejs/cli-win32-arm64@2.0.0: + resolution: {integrity: sha512-vrTtuGu91xNTEQ5ZcMJBZuDlqr32DWU1r14UfePIGndF//s2WUAmer4FmgoPgruo76rprk37e8S2A2c0psXdxw==} + engines: {node: '>=14.21.3'} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@biomejs/cli-win32-x64@2.0.0: + resolution: {integrity: sha512-2USVQ0hklNsph/KIR72ZdeptyXNnQ3JdzPn3NbjI4Sna34CnxeiYAaZcZzXPDl5PYNFBivV4xmvT3Z3rTmyDBg==} + engines: {node: '>=14.21.3'} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: true + optional: true + /@cspotcode/source-map-support@0.8.1: resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} engines: {node: '>=12'} @@ -2799,31 +2808,6 @@ packages: eslint-visitor-keys: 3.4.3 dev: false - /@eslint-community/eslint-utils@4.4.0(eslint@8.55.0): - resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 - dependencies: - eslint: 8.55.0 - eslint-visitor-keys: 3.4.3 - dev: true - - /@eslint-community/eslint-utils@4.4.0(eslint@8.57.0): - resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 - dependencies: - eslint: 8.57.0 - eslint-visitor-keys: 3.4.3 - dev: true - - /@eslint-community/regexpp@4.10.0: - resolution: {integrity: sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==} - engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - dev: true - /@eslint-community/regexpp@4.6.2: resolution: {integrity: sha512-pPTNuaAG3QMH+buKyBIGJs3g/S5y0caxw0ygM3YyE6yJFySwiGGSzA+mM3KJ8QQvzeLh3blwgSonkFjgQdxzMw==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} @@ -2846,38 +2830,11 @@ packages: - supports-color dev: false - /@eslint/eslintrc@2.1.4: - resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dependencies: - ajv: 6.12.6 - debug: 4.3.4 - espree: 9.6.1 - globals: 13.23.0 - ignore: 5.3.0 - import-fresh: 3.3.0 - js-yaml: 4.1.0 - minimatch: 3.1.2 - strip-json-comments: 3.1.1 - transitivePeerDependencies: - - supports-color - dev: true - /@eslint/js@8.47.0: resolution: {integrity: sha512-P6omY1zv5MItm93kLM8s2vr1HICJH8v0dvddDhysbIuZ+vcjOHg5Zbkf1mTkcmi2JA9oBG2anOkRnW8WJTS8Og==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: false - /@eslint/js@8.55.0: - resolution: {integrity: sha512-qQfo2mxH5yVom1kacMtZZJFVdW+E70mqHMJvVg6WTLo+VBuQJ4TojZlfWBjK0ve5BdEeNAVxOsl/nvNMpJOaJA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dev: true - - /@eslint/js@8.57.0: - resolution: {integrity: sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dev: true - /@fastify/busboy@2.1.0: resolution: {integrity: sha512-+KpH+QxZU7O4675t3mnkQKcZZg56u+K/Ct2K+N2AZYNVK8kyeo/bI18tI8aPm3tvNNRyTWfj6s5tnGNlcbQRsA==} engines: {node: '>=14'} @@ -2955,44 +2912,15 @@ packages: - supports-color dev: false - /@humanwhocodes/config-array@0.11.13: - resolution: {integrity: sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==} - engines: {node: '>=10.10.0'} - dependencies: - '@humanwhocodes/object-schema': 2.0.1 - debug: 4.3.4 - minimatch: 3.1.2 - transitivePeerDependencies: - - supports-color - dev: true - - /@humanwhocodes/config-array@0.11.14: - resolution: {integrity: sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==} - engines: {node: '>=10.10.0'} - dependencies: - '@humanwhocodes/object-schema': 2.0.3 - debug: 4.3.4 - minimatch: 3.1.2 - transitivePeerDependencies: - - supports-color - dev: true - /@humanwhocodes/module-importer@1.0.1: resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} engines: {node: '>=12.22'} + dev: false /@humanwhocodes/object-schema@1.2.1: resolution: {integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==} dev: false - /@humanwhocodes/object-schema@2.0.1: - resolution: {integrity: sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw==} - dev: true - - /@humanwhocodes/object-schema@2.0.3: - resolution: {integrity: sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==} - dev: true - /@img/sharp-darwin-arm64@0.33.2: resolution: {integrity: sha512-itHBs1rPmsmGF9p4qRe++CzCgd+kFYktnsoR1sbIAfsRMrJZau0Tt1AH9KVnufc2/tU02Gf6Ibujx+15qRE03w==} engines: {glibc: '>=2.26', node: ^18.17.0 || ^20.3.0 || >=21.0.0, npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'} @@ -3707,19 +3635,6 @@ packages: - supports-color dev: false - /@microsoft/tsdoc-config@0.16.2: - resolution: {integrity: sha512-OGiIzzoBLgWWR0UdRJX98oYO+XKGf7tiK4Zk6tQ/E4IJqGCe7dvkTvgDZV5cFJUzLGDOjeAXrnZoA6QkVySuxw==} - dependencies: - '@microsoft/tsdoc': 0.14.2 - ajv: 6.12.6 - jju: 1.4.0 - resolve: 1.19.0 - dev: true - - /@microsoft/tsdoc@0.14.2: - resolution: {integrity: sha512-9b8mPpKrfeGRuhFH5iO1iwCLeIIsV6+H1sRfxbkoGXIyQE2BTsPd9zqSqQJ+pv5sJ/hT5M1zvOFL02MnEezFug==} - dev: true - /@napi-rs/cli@2.16.3: resolution: {integrity: sha512-3mLNPlbbOhpbIUKicLrJtIearlHXUuXL3UeueYyRRplpVMNkdn8xCyzY6PcYZi3JXR8bmCOiWgkVmLnrSL7DKw==} engines: {node: '>= 10'} @@ -3728,12 +3643,6 @@ packages: /@next/env@15.4.0-canary.81: resolution: {integrity: sha512-mZm/pjWbNdnPKrUgw06nJdXrj7J4NTUe9y5avba3vo1/ejCEu8lM4vzKm6cxEXN1FQ/jQ1/wlwrTumNyfRxHLA==} - /@next/eslint-plugin-next@15.4.0-canary.81: - resolution: {integrity: sha512-+FcjGFZmWRe2JlkWT3vRgafR4aJ1RsTD68Ri/z/oqnGrF65oaXeOdvfXzdV8i0ml9rqknVKDmPL8w0vx+4xZaQ==} - dependencies: - fast-glob: 3.3.1 - dev: true - /@next/swc-darwin-arm64@15.4.0-canary.81: resolution: {integrity: sha512-pfT4uFmS1l393jeaipXqzuPuBk3kUZbZ3C3CODEB68jqlUhZ8dn3HlaHpVCOwGy73a2JFm64Hy9m06PV8YLomQ==} engines: {node: '>= 10'} @@ -3798,12 +3707,6 @@ packages: requiresBuild: true optional: true - /@nicolo-ribaudo/eslint-scope-5-internals@5.1.1-v1: - resolution: {integrity: sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==} - dependencies: - eslint-scope: 5.1.1 - dev: true - /@nodelib/fs.scandir@2.1.5: resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} engines: {node: '>= 8'} @@ -3926,18 +3829,6 @@ packages: requiresBuild: true optional: true - /@pkgr/utils@2.4.2: - resolution: {integrity: sha512-POgTXhjrTfbTV63DiFXav4lBHiICLKKwDeaKn9Nphwj7WH6m0hMMCaJkMyRWjgtPFyRKRVoMXXjczsTQRDEhYw==} - engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} - dependencies: - cross-spawn: 7.0.6 - fast-glob: 3.3.3 - is-glob: 4.0.3 - open: 9.1.0 - picocolors: 1.0.1 - tslib: 2.8.1 - dev: true - /@radix-ui/number@1.1.0: resolution: {integrity: sha512-V3gRzhVNU1ldS5XhAPTom1fOIo4ccrjjJgmE+LI2h/WaFpHmx0MQApT+KZHnx8abG6Avtfcz4WoEciMnpFT3HQ==} dev: false @@ -5060,10 +4951,6 @@ packages: dev: true optional: true - /@rushstack/eslint-patch@1.3.3: - resolution: {integrity: sha512-0xd7qez0AQ+MbHatZTlI1gu5vkG8r7MYRUJAHPAHJBmGLs16zpkrpAVLvjQKQOqaXPDUBwOiJzNc00znHSCVBw==} - dev: true - /@scalar/openapi-parser@0.10.10: resolution: {integrity: sha512-6MSgvpNKu/anZy96dn8tXQZo1PuDCoeB4m2ZLLDS4vC2zaTnuNBvvQHx+gjwXNKWhTbIVy8bQpYBzlMAYnFNcQ==} engines: {node: '>=18'} @@ -5705,10 +5592,6 @@ packages: /@types/json-schema@7.0.15: resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} - /@types/json5@0.0.29: - resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} - dev: true - /@types/keyv@3.1.4: resolution: {integrity: sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==} dependencies: @@ -5797,10 +5680,6 @@ packages: undici-types: 6.19.8 dev: true - /@types/normalize-package-data@2.4.1: - resolution: {integrity: sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==} - dev: true - /@types/prop-types@15.7.14: resolution: {integrity: sha512-gNMvNH49DJ7OJYv+KAKn0Xp45p8PLl6zo2YnvDIbTd4J6MER2BmWN49TG7n9LvkyihINxeKW8+3bfS2yDC9dzQ==} @@ -5888,322 +5767,82 @@ packages: '@types/yargs-parser': 21.0.0 dev: true - /@typescript-eslint/eslint-plugin@6.18.1(@typescript-eslint/parser@6.18.1)(eslint@8.57.0)(typescript@5.6.3): - resolution: {integrity: sha512-nISDRYnnIpk7VCFrGcu1rnZfM1Dh9LRHnfgdkjcbi/l7g16VYRri3TjXi9Ir4lOZSw5N/gnV/3H7jIPQ8Q4daA==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - '@typescript-eslint/parser': ^6.0.0 || ^6.0.0-alpha - eslint: ^7.0.0 || ^8.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - dependencies: - '@eslint-community/regexpp': 4.10.0 - '@typescript-eslint/parser': 6.18.1(eslint@8.57.0)(typescript@5.6.3) - '@typescript-eslint/scope-manager': 6.18.1 - '@typescript-eslint/type-utils': 6.18.1(eslint@8.57.0)(typescript@5.6.3) - '@typescript-eslint/utils': 6.18.1(eslint@8.57.0)(typescript@5.6.3) - '@typescript-eslint/visitor-keys': 6.18.1 - debug: 4.3.4 - eslint: 8.57.0 - graphemer: 1.4.0 - ignore: 5.3.0 - natural-compare: 1.4.0 - semver: 7.6.2 - ts-api-utils: 1.0.2(typescript@5.6.3) - typescript: 5.6.3 - transitivePeerDependencies: - - supports-color - dev: true + /@ungap/structured-clone@1.2.0: + resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} + dev: false - /@typescript-eslint/parser@6.18.1(eslint@8.57.0)(typescript@5.6.3): - resolution: {integrity: sha512-zct/MdJnVaRRNy9e84XnVtRv9Vf91/qqe+hZJtKanjojud4wAVy/7lXxJmMyX6X6J+xc6c//YEWvpeif8cAhWA==} - engines: {node: ^16.0.0 || >=18.0.0} + /@vercel/analytics@1.5.0(next@15.4.0-canary.81)(react@19.0.0): + resolution: {integrity: sha512-MYsBzfPki4gthY5HnYN7jgInhAZ7Ac1cYDoRWFomwGHWEX7odTEzbtg9kf/QSo7XEsEAqlQugA6gJ2WS2DEa3g==} peerDependencies: - eslint: ^7.0.0 || ^8.0.0 - typescript: '*' + '@remix-run/react': ^2 + '@sveltejs/kit': ^1 || ^2 + next: '>= 13' + react: ^18 || ^19 || ^19.0.0-rc + svelte: '>= 4' + vue: ^3 + vue-router: ^4 peerDependenciesMeta: - typescript: + '@remix-run/react': + optional: true + '@sveltejs/kit': + optional: true + next: + optional: true + react: + optional: true + svelte: + optional: true + vue: + optional: true + vue-router: optional: true dependencies: - '@typescript-eslint/scope-manager': 6.18.1 - '@typescript-eslint/types': 6.18.1 - '@typescript-eslint/typescript-estree': 6.18.1(typescript@5.6.3) - '@typescript-eslint/visitor-keys': 6.18.1 - debug: 4.3.4 - eslint: 8.57.0 - typescript: 5.6.3 - transitivePeerDependencies: - - supports-color + next: 15.4.0-canary.81(react-dom@19.0.0)(react@19.0.0) + react: 19.0.0 dev: true - /@typescript-eslint/scope-manager@5.62.0: - resolution: {integrity: sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + /@vercel/blob@0.22.1: + resolution: {integrity: sha512-LtHmiYAdJhiSAfBP+5hHXtVyqZUND2G+ild/XVY0SOiB46ab7VUrQctwUMGcVx+yZyXZ2lXPT1HvRJtXFnKvHA==} + engines: {node: '>=16.14'} dependencies: - '@typescript-eslint/types': 5.62.0 - '@typescript-eslint/visitor-keys': 5.62.0 - dev: true + async-retry: 1.3.3 + bytes: 3.1.2 + is-buffer: 2.0.5 + undici: 5.28.3 + dev: false - /@typescript-eslint/scope-manager@6.18.1: - resolution: {integrity: sha512-BgdBwXPFmZzaZUuw6wKiHKIovms97a7eTImjkXCZE04TGHysG+0hDQPmygyvgtkoB/aOQwSM/nWv3LzrOIQOBw==} - engines: {node: ^16.0.0 || >=18.0.0} - dependencies: - '@typescript-eslint/types': 6.18.1 - '@typescript-eslint/visitor-keys': 6.18.1 + /@vercel/ncc@0.36.0: + resolution: {integrity: sha512-/ZTUJ/ZkRt694k7KJNimgmHjtQcRuVwsST2Z6XfYveQIuBbHR+EqkTc1jfgPkQmMyk/vtpxo3nVxe8CNuau86A==} dev: true - /@typescript-eslint/type-utils@6.18.1(eslint@8.57.0)(typescript@5.6.3): - resolution: {integrity: sha512-wyOSKhuzHeU/5pcRDP2G2Ndci+4g653V43gXTpt4nbyoIOAASkGDA9JIAgbQCdCkcr1MvpSYWzxTz0olCn8+/Q==} - engines: {node: ^16.0.0 || >=18.0.0} + /@vercel/speed-insights@1.2.0(next@15.4.0-canary.81)(react@19.0.0): + resolution: {integrity: sha512-y9GVzrUJ2xmgtQlzFP2KhVRoCglwfRQgjyfY607aU0hh0Un6d0OUyrJkjuAlsV18qR4zfoFPs/BiIj9YDS6Wzw==} + requiresBuild: true peerDependencies: - eslint: ^7.0.0 || ^8.0.0 - typescript: '*' + '@sveltejs/kit': ^1 || ^2 + next: '>= 13' + react: ^18 || ^19 || ^19.0.0-rc + svelte: '>= 4' + vue: ^3 + vue-router: ^4 peerDependenciesMeta: - typescript: - optional: true - dependencies: - '@typescript-eslint/typescript-estree': 6.18.1(typescript@5.6.3) - '@typescript-eslint/utils': 6.18.1(eslint@8.57.0)(typescript@5.6.3) - debug: 4.3.4 - eslint: 8.57.0 - ts-api-utils: 1.0.2(typescript@5.6.3) - typescript: 5.6.3 - transitivePeerDependencies: - - supports-color - dev: true - - /@typescript-eslint/types@5.62.0: - resolution: {integrity: sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dev: true - - /@typescript-eslint/types@6.18.1: - resolution: {integrity: sha512-4TuMAe+tc5oA7wwfqMtB0Y5OrREPF1GeJBAjqwgZh1lEMH5PJQgWgHGfYufVB51LtjD+peZylmeyxUXPfENLCw==} - engines: {node: ^16.0.0 || >=18.0.0} - dev: true - - /@typescript-eslint/typescript-estree@5.62.0(typescript@5.6.3): - resolution: {integrity: sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - dependencies: - '@typescript-eslint/types': 5.62.0 - '@typescript-eslint/visitor-keys': 5.62.0 - debug: 4.4.0 - globby: 11.1.0 - is-glob: 4.0.3 - semver: 7.6.2 - tsutils: 3.21.0(typescript@5.6.3) - typescript: 5.6.3 - transitivePeerDependencies: - - supports-color - dev: true - - /@typescript-eslint/typescript-estree@6.18.1(typescript@5.6.3): - resolution: {integrity: sha512-fv9B94UAhywPRhUeeV/v+3SBDvcPiLxRZJw/xZeeGgRLQZ6rLMG+8krrJUyIf6s1ecWTzlsbp0rlw7n9sjufHA==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - dependencies: - '@typescript-eslint/types': 6.18.1 - '@typescript-eslint/visitor-keys': 6.18.1 - debug: 4.3.4 - globby: 11.1.0 - is-glob: 4.0.3 - minimatch: 9.0.3 - semver: 7.6.2 - ts-api-utils: 1.0.2(typescript@5.6.3) - typescript: 5.6.3 - transitivePeerDependencies: - - supports-color - dev: true - - /@typescript-eslint/utils@5.62.0(eslint@8.57.0)(typescript@5.6.3): - resolution: {integrity: sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 - dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) - '@types/json-schema': 7.0.15 - '@types/semver': 7.5.8 - '@typescript-eslint/scope-manager': 5.62.0 - '@typescript-eslint/types': 5.62.0 - '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.6.3) - eslint: 8.57.0 - eslint-scope: 5.1.1 - semver: 7.6.2 - transitivePeerDependencies: - - supports-color - - typescript - dev: true - - /@typescript-eslint/utils@6.18.1(eslint@8.57.0)(typescript@5.6.3): - resolution: {integrity: sha512-zZmTuVZvD1wpoceHvoQpOiewmWu3uP9FuTWo8vqpy2ffsmfCE8mklRPi+vmnIYAIk9t/4kOThri2QCDgor+OpQ==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - eslint: ^7.0.0 || ^8.0.0 - dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) - '@types/json-schema': 7.0.15 - '@types/semver': 7.5.8 - '@typescript-eslint/scope-manager': 6.18.1 - '@typescript-eslint/types': 6.18.1 - '@typescript-eslint/typescript-estree': 6.18.1(typescript@5.6.3) - eslint: 8.57.0 - semver: 7.6.2 - transitivePeerDependencies: - - supports-color - - typescript - dev: true - - /@typescript-eslint/visitor-keys@5.62.0: - resolution: {integrity: sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dependencies: - '@typescript-eslint/types': 5.62.0 - eslint-visitor-keys: 3.4.3 - dev: true - - /@typescript-eslint/visitor-keys@6.18.1: - resolution: {integrity: sha512-/kvt0C5lRqGoCfsbmm7/CwMqoSkY3zzHLIjdhHZQW3VFrnz7ATecOHR7nb7V+xn4286MBxfnQfQhAmCI0u+bJA==} - engines: {node: ^16.0.0 || >=18.0.0} - dependencies: - '@typescript-eslint/types': 6.18.1 - eslint-visitor-keys: 3.4.3 - dev: true - - /@ungap/structured-clone@1.2.0: - resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} - - /@vercel/analytics@1.5.0(next@15.4.0-canary.81)(react@19.0.0): - resolution: {integrity: sha512-MYsBzfPki4gthY5HnYN7jgInhAZ7Ac1cYDoRWFomwGHWEX7odTEzbtg9kf/QSo7XEsEAqlQugA6gJ2WS2DEa3g==} - peerDependencies: - '@remix-run/react': ^2 - '@sveltejs/kit': ^1 || ^2 - next: '>= 13' - react: ^18 || ^19 || ^19.0.0-rc - svelte: '>= 4' - vue: ^3 - vue-router: ^4 - peerDependenciesMeta: - '@remix-run/react': - optional: true - '@sveltejs/kit': - optional: true - next: - optional: true - react: - optional: true - svelte: - optional: true - vue: - optional: true - vue-router: + '@sveltejs/kit': + optional: true + next: + optional: true + react: + optional: true + svelte: + optional: true + vue: + optional: true + vue-router: optional: true dependencies: next: 15.4.0-canary.81(react-dom@19.0.0)(react@19.0.0) react: 19.0.0 - dev: true - - /@vercel/blob@0.22.1: - resolution: {integrity: sha512-LtHmiYAdJhiSAfBP+5hHXtVyqZUND2G+ild/XVY0SOiB46ab7VUrQctwUMGcVx+yZyXZ2lXPT1HvRJtXFnKvHA==} - engines: {node: '>=16.14'} - dependencies: - async-retry: 1.3.3 - bytes: 3.1.2 - is-buffer: 2.0.5 - undici: 5.28.3 dev: false - /@vercel/ncc@0.36.0: - resolution: {integrity: sha512-/ZTUJ/ZkRt694k7KJNimgmHjtQcRuVwsST2Z6XfYveQIuBbHR+EqkTc1jfgPkQmMyk/vtpxo3nVxe8CNuau86A==} - dev: true - - /@vercel/speed-insights@1.2.0(next@15.4.0-canary.81)(react@19.0.0): - resolution: {integrity: sha512-y9GVzrUJ2xmgtQlzFP2KhVRoCglwfRQgjyfY607aU0hh0Un6d0OUyrJkjuAlsV18qR4zfoFPs/BiIj9YDS6Wzw==} - requiresBuild: true - peerDependencies: - '@sveltejs/kit': ^1 || ^2 - next: '>= 13' - react: ^18 || ^19 || ^19.0.0-rc - svelte: '>= 4' - vue: ^3 - vue-router: ^4 - peerDependenciesMeta: - '@sveltejs/kit': - optional: true - next: - optional: true - react: - optional: true - svelte: - optional: true - vue: - optional: true - vue-router: - optional: true - dependencies: - next: 15.4.0-canary.81(react-dom@19.0.0)(react@19.0.0) - react: 19.0.0 - dev: false - - /@vercel/style-guide@5.1.0(eslint@8.57.0)(prettier@2.8.7)(typescript@5.6.3): - resolution: {integrity: sha512-L9lWYePIycm7vIOjDLj+mmMdmmPkW3/brHjgq+nJdvMOrL7Hdk/19w8X583HYSk0vWsq494o5Qkh6x5+uW7ljg==} - engines: {node: '>=16'} - peerDependencies: - '@next/eslint-plugin-next': '>=12.3.0 <15' - eslint: '>=8.48.0 <9' - prettier: '>=3.0.0 <4' - typescript: '>=4.8.0 <6' - peerDependenciesMeta: - '@next/eslint-plugin-next': - optional: true - eslint: - optional: true - prettier: - optional: true - typescript: - optional: true - dependencies: - '@babel/core': 7.23.6 - '@babel/eslint-parser': 7.22.11(@babel/core@7.23.6)(eslint@8.57.0) - '@rushstack/eslint-patch': 1.3.3 - '@typescript-eslint/eslint-plugin': 6.18.1(@typescript-eslint/parser@6.18.1)(eslint@8.57.0)(typescript@5.6.3) - '@typescript-eslint/parser': 6.18.1(eslint@8.57.0)(typescript@5.6.3) - eslint: 8.57.0 - eslint-config-prettier: 9.0.0(eslint@8.57.0) - eslint-import-resolver-alias: 1.1.2(eslint-plugin-import@2.28.1) - eslint-import-resolver-typescript: 3.6.0(@typescript-eslint/parser@6.18.1)(eslint-plugin-import@2.28.1)(eslint@8.57.0) - eslint-plugin-eslint-comments: 3.2.0(eslint@8.57.0) - eslint-plugin-import: 2.28.1(@typescript-eslint/parser@6.18.1)(eslint-import-resolver-typescript@3.6.0)(eslint@8.57.0) - eslint-plugin-jest: 27.2.3(@typescript-eslint/eslint-plugin@6.18.1)(eslint@8.57.0)(typescript@5.6.3) - eslint-plugin-jsx-a11y: 6.7.1(eslint@8.57.0) - eslint-plugin-playwright: 0.16.0(eslint-plugin-jest@27.2.3)(eslint@8.57.0) - eslint-plugin-react: 7.33.2(eslint@8.57.0) - eslint-plugin-react-hooks: 4.6.0(eslint@8.57.0) - eslint-plugin-testing-library: 6.0.1(eslint@8.57.0)(typescript@5.6.3) - eslint-plugin-tsdoc: 0.2.17 - eslint-plugin-unicorn: 48.0.1(eslint@8.57.0) - prettier: 2.8.7 - prettier-plugin-packagejson: 2.4.5(prettier@2.8.7) - typescript: 5.6.3 - transitivePeerDependencies: - - eslint-import-resolver-node - - eslint-import-resolver-webpack - - jest - - supports-color - dev: true - /@vercel/toolbar@0.1.30(next@15.4.0-canary.81)(react@19.0.0): resolution: {integrity: sha512-8gVZ2s2FLCt45LVRSLgxIRvj2G+owFmp947tB++nyYW8x0TiRN4qfFgZRdRymiRJ0vWDLuxlOrDVPg2exZNZjw==} peerDependencies: @@ -6235,6 +5874,7 @@ packages: acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 dependencies: acorn: 8.10.0 + dev: false /acorn-jsx@5.3.2(acorn@8.14.1): resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} @@ -6299,6 +5939,7 @@ packages: fast-json-stable-stringify: 2.1.0 json-schema-traverse: 0.4.1 uri-js: 4.4.1 + dev: false /ajv@8.17.1: resolution: {integrity: sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==} @@ -6395,12 +6036,6 @@ packages: tslib: 2.8.1 dev: false - /aria-query@5.3.0: - resolution: {integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==} - dependencies: - dequal: 2.0.3 - dev: true - /arr-diff@4.0.0: resolution: {integrity: sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA==} engines: {node: '>=0.10.0'} @@ -6428,13 +6063,6 @@ packages: engines: {node: '>=6'} dev: true - /array-buffer-byte-length@1.0.0: - resolution: {integrity: sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==} - dependencies: - call-bind: 1.0.2 - is-array-buffer: 3.0.2 - dev: true - /array-differ@1.0.0: resolution: {integrity: sha512-LeZY+DZDRnvP7eMuQ6LHfCzUGxAAIViUBliK24P3hWXL6y4SortgR6Nim6xrkfSLlmH0+k+9NYNwVC2s53ZrYQ==} engines: {node: '>=0.10.0'} @@ -6445,17 +6073,6 @@ packages: engines: {node: '>=0.10.0'} dev: true - /array-includes@3.1.6: - resolution: {integrity: sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.22.1 - get-intrinsic: 1.2.1 - is-string: 1.0.7 - dev: true - /array-iterate@2.0.1: resolution: {integrity: sha512-I1jXZMjAgCMmxT4qxXfPXa6SthSoE8h6gkSI9BGGNv8mP8G/v0blc+qFnZu6K42vTOiuME596QaLO0TP3Lk0xg==} dev: true @@ -6486,59 +6103,6 @@ packages: engines: {node: '>=0.10.0'} dev: false - /array.prototype.findlastindex@1.2.2: - resolution: {integrity: sha512-tb5thFFlUcp7NdNF6/MpDk/1r/4awWG1FIz3YqDf+/zJSTezBb+/5WViH41obXULHVpDzoiCLpJ/ZO9YbJMsdw==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.22.1 - es-shim-unscopables: 1.0.0 - get-intrinsic: 1.2.1 - dev: true - - /array.prototype.flat@1.3.1: - resolution: {integrity: sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.22.1 - es-shim-unscopables: 1.0.0 - dev: true - - /array.prototype.flatmap@1.3.1: - resolution: {integrity: sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.22.1 - es-shim-unscopables: 1.0.0 - dev: true - - /array.prototype.tosorted@1.1.1: - resolution: {integrity: sha512-pZYPXPRl2PqWcsUs6LOMn+1f1532nEoPTYowBtqLwAW+W8vSVhkIGnmOX1t/UQjD6YGI0vcD2B1U7ZFGQH9jnQ==} - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.22.1 - es-shim-unscopables: 1.0.0 - get-intrinsic: 1.2.1 - dev: true - - /arraybuffer.prototype.slice@1.0.1: - resolution: {integrity: sha512-09x0ZWFEjj4WD8PDbykUwo3t9arLn8NIzmmYEJFpYekOAQjpkGSyrQhNoRTcwwcFRu+ycWF78QZ63oWTqSjBcw==} - engines: {node: '>= 0.4'} - dependencies: - array-buffer-byte-length: 1.0.0 - call-bind: 1.0.2 - define-properties: 1.2.0 - get-intrinsic: 1.2.1 - is-array-buffer: 3.0.2 - is-shared-array-buffer: 1.0.2 - dev: true - /arrify@1.0.1: resolution: {integrity: sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==} engines: {node: '>=0.10.0'} @@ -6549,10 +6113,6 @@ packages: engines: {node: '>=0.10.0'} dev: false - /ast-types-flow@0.0.7: - resolution: {integrity: sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag==} - dev: true - /ast-types@0.13.4: resolution: {integrity: sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==} engines: {node: '>=4'} @@ -6579,12 +6139,6 @@ packages: resolution: {integrity: sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==} dev: true - /asynciterator.prototype@1.0.0: - resolution: {integrity: sha512-wwHYEIS0Q80f5mosx3L/dfG5t5rjEa9Ft51GTaNt862EnpyGHpgz2RkZvLPp1oF5TnAiTohkEKVEu8pQPJI7Vg==} - dependencies: - has-symbols: 1.0.3 - dev: true - /asynckit@0.4.0: resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} @@ -6609,16 +6163,6 @@ packages: postcss-value-parser: 4.2.0 dev: true - /available-typed-arrays@1.0.5: - resolution: {integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==} - engines: {node: '>= 0.4'} - dev: true - - /axe-core@4.7.2: - resolution: {integrity: sha512-zIURGIS1E1Q4pcrMjp+nnEh+16G56eG/MUllJH8yEvw7asDo7Ac9uhC9KIH5jzpITueEZolfYglnCGIuSBz39g==} - engines: {node: '>=4'} - dev: true - /axios@0.27.2: resolution: {integrity: sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==} dependencies: @@ -6628,12 +6172,6 @@ packages: - debug dev: false - /axobject-query@3.2.1: - resolution: {integrity: sha512-jsyHu61e6N4Vbz/v18DHwWYKK0bSWLqn47eeDSKPB7m8tqMHF9YJ+mhIk2lVteyZrY8tnSj/jHOv4YiTCuCJgg==} - dependencies: - dequal: 2.0.3 - dev: true - /babel-jest@29.7.0(@babel/core@7.23.6): resolution: {integrity: sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} @@ -6741,11 +6279,6 @@ packages: resolution: {integrity: sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==} dev: false - /big-integer@1.6.51: - resolution: {integrity: sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==} - engines: {node: '>=0.6'} - dev: true - /binary-extensions@2.2.0: resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} engines: {node: '>=8'} @@ -6769,13 +6302,6 @@ packages: resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} dev: false - /bplist-parser@0.2.0: - resolution: {integrity: sha512-z0M+byMThzQmD9NILRniCUXYsYpjwnlO8N5uCFaCqIOpqRsJCrQL9NK3JsD67CN5a08nF5oIL2bD6loTdHOuKw==} - engines: {node: '>= 5.10.0'} - dependencies: - big-integer: 1.6.51 - dev: true - /brace-expansion@1.1.11: resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} dependencies: @@ -6867,11 +6393,6 @@ packages: ieee754: 1.2.1 dev: true - /builtin-modules@3.3.0: - resolution: {integrity: sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==} - engines: {node: '>=6'} - dev: true - /builtins@5.0.1: resolution: {integrity: sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==} dependencies: @@ -6913,13 +6434,6 @@ packages: yargs: 17.7.2 dev: true - /bundle-name@3.0.0: - resolution: {integrity: sha512-PKA4BeSvBpQKQ8iPOGCSiell+N8P+Tf1DlwqmYhpe2gAhKPHn8EYOxVT+ShuGmhg8lN8XiSlS80yiExKXrURlw==} - engines: {node: '>=12'} - dependencies: - run-applescript: 5.0.0 - dev: true - /bundle-require@3.1.0(esbuild@0.14.49): resolution: {integrity: sha512-IIXtAO7fKcwPHNPt9kY/WNVJqy7NDy6YqJvv6ENH0TOZoJ+yjpEsn1w40WKZbR2ibfu5g1rfgJTvmFHpm5aOMA==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} @@ -6981,13 +6495,6 @@ packages: normalize-url: 6.1.0 responselike: 2.0.1 - /call-bind@1.0.2: - resolution: {integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==} - dependencies: - function-bind: 1.1.1 - get-intrinsic: 1.1.3 - dev: true - /callsites@3.1.0: resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} engines: {node: '>=6'} @@ -7201,13 +6708,6 @@ packages: source-map: 0.6.1 dev: true - /clean-regexp@1.0.0: - resolution: {integrity: sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw==} - engines: {node: '>=4'} - dependencies: - escape-string-regexp: 1.0.5 - dev: true - /clean-stack@2.2.0: resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==} engines: {node: '>=6'} @@ -7541,6 +7041,7 @@ packages: path-key: 3.1.1 shebang-command: 2.0.0 which: 2.0.2 + dev: false /css-selector-parser@3.0.5: resolution: {integrity: sha512-3itoDFbKUNx1eKmVpYMFyqKX04Ww9osZ+dLgrk6GEv6KMVeXUhUnp4I5X+evw+u3ZxVU6RFXSSRxlTeMh8bA+g==} @@ -7675,10 +7176,6 @@ packages: engines: {node: '>=12'} dev: false - /damerau-levenshtein@1.0.8: - resolution: {integrity: sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==} - dev: true - /data-uri-to-buffer@5.0.1: resolution: {integrity: sha512-a9l6T1qqDogvvnw0nKlfZzqsyikEBZBClF39V3TFoKhDtGBqHu2HkuomJc02j5zft8zrUaXEuoicLeW54RkzPg==} engines: {node: '>= 14'} @@ -7700,17 +7197,6 @@ packages: ms: 2.0.0 dev: false - /debug@3.2.7: - resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - dependencies: - ms: 2.1.3 - dev: true - /debug@4.3.4: resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} engines: {node: '>=6.0'} @@ -7770,30 +7256,13 @@ packages: /deep-is@0.1.4: resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} + dev: false /deepmerge@4.2.2: resolution: {integrity: sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==} engines: {node: '>=0.10.0'} dev: true - /default-browser-id@3.0.0: - resolution: {integrity: sha512-OZ1y3y0SqSICtE8DE4S8YOE9UZOJ8wO16fKWVP5J1Qz42kV9jcnMVFrEE/noXb/ss3Q4pZIH79kxofzyNNtUNA==} - engines: {node: '>=12'} - dependencies: - bplist-parser: 0.2.0 - untildify: 4.0.0 - dev: true - - /default-browser@4.0.0: - resolution: {integrity: sha512-wX5pXO1+BrhMkSbROFsyxUm0i/cJEScyNhA4PPxc41ICuv05ZZB/MX28s8aZx6xjmatvebIapF6hLEKEcpneUA==} - engines: {node: '>=14.16'} - dependencies: - bundle-name: 3.0.0 - default-browser-id: 3.0.0 - execa: 7.2.0 - titleize: 3.0.0 - dev: true - /defaults@1.0.4: resolution: {integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==} dependencies: @@ -7803,27 +7272,6 @@ packages: resolution: {integrity: sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==} engines: {node: '>=10'} - /define-lazy-prop@3.0.0: - resolution: {integrity: sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==} - engines: {node: '>=12'} - dev: true - - /define-properties@1.1.4: - resolution: {integrity: sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==} - engines: {node: '>= 0.4'} - dependencies: - has-property-descriptors: 1.0.0 - object-keys: 1.1.1 - dev: true - - /define-properties@1.2.0: - resolution: {integrity: sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==} - engines: {node: '>= 0.4'} - dependencies: - has-property-descriptors: 1.0.0 - object-keys: 1.1.1 - dev: true - /define-property@0.2.5: resolution: {integrity: sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==} engines: {node: '>=0.10.0'} @@ -7906,11 +7354,6 @@ packages: engines: {node: '>=0.10.0'} dev: true - /detect-indent@7.0.1: - resolution: {integrity: sha512-Mc7QhQ8s+cLrnUfU/Ji94vG/r8M26m8f++vyres4ZoojaRDpZ1eSIh/EpzLNwlWuvzSZ3UbDFspjFvTDXe6e/g==} - engines: {node: '>=12.20'} - dev: true - /detect-libc@2.0.2: resolution: {integrity: sha512-UX6sGumvvqSaXgdKGUsgZWqcUyIXZ/vZTrlRT/iobiKhGL0zL4d3osHj3uqllWJK+i+sixDS/3COVEOFbupFyw==} engines: {node: '>=8'} @@ -7927,11 +7370,6 @@ packages: engines: {node: '>=8'} dev: true - /detect-newline@4.0.0: - resolution: {integrity: sha512-1aXUEPdfGdzVPFpzGJJNgq9o81bGg1s09uxTWsqBlo9PI332uyJRQq13+LK/UN4JfxJbFdCXonUFQ9R/p7yCtw==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - dev: true - /detect-node-es@1.1.0: resolution: {integrity: sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==} dev: false @@ -7999,18 +7437,12 @@ packages: /dlv@1.1.3: resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==} - /doctrine@2.1.0: - resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==} - engines: {node: '>=0.10.0'} - dependencies: - esutils: 2.0.3 - dev: true - /doctrine@3.0.0: resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} engines: {node: '>=6.0.0'} dependencies: esutils: 2.0.3 + dev: false /dot-case@2.1.1: resolution: {integrity: sha512-HnM6ZlFqcajLsyudHq7LeeLDr2rFAVYtDv/hV5qchQEidSck8j9OPUsXY9KwJv/lHMtYlX4DjRQqwFYa+0r8Ug==} @@ -8076,14 +7508,6 @@ packages: dependencies: once: 1.4.0 - /enhanced-resolve@5.12.0: - resolution: {integrity: sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ==} - engines: {node: '>=10.13.0'} - dependencies: - graceful-fs: 4.2.11 - tapable: 2.2.1 - dev: true - /entities@4.5.0: resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} engines: {node: '>=0.12'} @@ -8095,82 +7519,6 @@ packages: is-arrayish: 0.2.1 dev: true - /es-abstract@1.20.5: - resolution: {integrity: sha512-7h8MM2EQhsCA7pU/Nv78qOXFpD8Rhqd12gYiSJVkrH9+e8VuA8JlPJK/hQjjlLv6pJvx/z1iRFKzYb0XT/RuAQ==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.2 - es-to-primitive: 1.2.1 - function-bind: 1.1.1 - function.prototype.name: 1.1.5 - get-intrinsic: 1.1.3 - get-symbol-description: 1.0.0 - gopd: 1.0.1 - has: 1.0.3 - has-property-descriptors: 1.0.0 - has-symbols: 1.0.3 - internal-slot: 1.0.3 - is-callable: 1.2.7 - is-negative-zero: 2.0.2 - is-regex: 1.1.4 - is-shared-array-buffer: 1.0.2 - is-string: 1.0.7 - is-weakref: 1.0.2 - object-inspect: 1.12.2 - object-keys: 1.1.1 - object.assign: 4.1.4 - regexp.prototype.flags: 1.4.3 - safe-regex-test: 1.0.0 - string.prototype.trimend: 1.0.6 - string.prototype.trimstart: 1.0.6 - unbox-primitive: 1.0.2 - dev: true - - /es-abstract@1.22.1: - resolution: {integrity: sha512-ioRRcXMO6OFyRpyzV3kE1IIBd4WG5/kltnzdxSCqoP8CMGs/Li+M1uF5o7lOkZVFjDs+NLesthnF66Pg/0q0Lw==} - engines: {node: '>= 0.4'} - dependencies: - array-buffer-byte-length: 1.0.0 - arraybuffer.prototype.slice: 1.0.1 - available-typed-arrays: 1.0.5 - call-bind: 1.0.2 - es-set-tostringtag: 2.0.1 - es-to-primitive: 1.2.1 - function.prototype.name: 1.1.5 - get-intrinsic: 1.2.1 - get-symbol-description: 1.0.0 - globalthis: 1.0.3 - gopd: 1.0.1 - has: 1.0.3 - has-property-descriptors: 1.0.0 - has-proto: 1.0.1 - has-symbols: 1.0.3 - internal-slot: 1.0.5 - is-array-buffer: 3.0.2 - is-callable: 1.2.7 - is-negative-zero: 2.0.2 - is-regex: 1.1.4 - is-shared-array-buffer: 1.0.2 - is-string: 1.0.7 - is-typed-array: 1.1.12 - is-weakref: 1.0.2 - object-inspect: 1.12.3 - object-keys: 1.1.1 - object.assign: 4.1.4 - regexp.prototype.flags: 1.5.0 - safe-array-concat: 1.0.0 - safe-regex-test: 1.0.0 - string.prototype.trim: 1.2.7 - string.prototype.trimend: 1.0.6 - string.prototype.trimstart: 1.0.6 - typed-array-buffer: 1.0.0 - typed-array-byte-length: 1.0.0 - typed-array-byte-offset: 1.0.0 - typed-array-length: 1.0.4 - unbox-primitive: 1.0.2 - which-typed-array: 1.1.11 - dev: true - /es-content-type@0.0.10: resolution: {integrity: sha512-yCgcv1M2IuFUoGZ3zE4OR2INGmZOwEuyaE5WX4MOKGpJcO8JXgVOIcXVicwnTqlxvx6qs9IJGl/Rr1+YtCkRgg==} engines: {node: '>=12.x'} @@ -8181,25 +7529,6 @@ packages: engines: {node: '>=12.x'} dev: true - /es-iterator-helpers@1.0.14: - resolution: {integrity: sha512-JgtVnwiuoRuzLvqelrvN3Xu7H9bu2ap/kQ2CrM62iidP8SKuD99rWU3CJy++s7IVL2qb/AjXPGR/E7i9ngd/Cw==} - dependencies: - asynciterator.prototype: 1.0.0 - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.22.1 - es-set-tostringtag: 2.0.1 - function-bind: 1.1.1 - get-intrinsic: 1.2.1 - globalthis: 1.0.3 - has-property-descriptors: 1.0.0 - has-proto: 1.0.1 - has-symbols: 1.0.3 - internal-slot: 1.0.5 - iterator.prototype: 1.1.0 - safe-array-concat: 1.0.0 - dev: true - /es-mime-types@0.0.16: resolution: {integrity: sha512-84QoSLeA7cdTeHpALFNl3ZOstXfvLt426/kaOgmSxmNUOhi4GesKVkhJgIfnsqGNziYezVA8rvZUsXj7oWX2qQ==} engines: {node: '>=12.x'} @@ -8207,30 +7536,6 @@ packages: mime-db: 1.52.0 dev: true - /es-set-tostringtag@2.0.1: - resolution: {integrity: sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==} - engines: {node: '>= 0.4'} - dependencies: - get-intrinsic: 1.2.1 - has: 1.0.3 - has-tostringtag: 1.0.0 - dev: true - - /es-shim-unscopables@1.0.0: - resolution: {integrity: sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==} - dependencies: - has: 1.0.3 - dev: true - - /es-to-primitive@1.2.1: - resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==} - engines: {node: '>= 0.4'} - dependencies: - is-callable: 1.2.7 - is-date-object: 1.0.5 - is-symbol: 1.0.4 - dev: true - /es-vary@0.0.8: resolution: {integrity: sha512-fiERjQiCHrXUAToNRT/sh7MtXnfei9n7cF9oVQRUEp9L5BGXsTKSPaXq8L+4v0c/ezfvuTWd/f0JSl5IBRUvSg==} engines: {node: '>=12.x'} @@ -8775,6 +8080,7 @@ packages: /escape-string-regexp@4.0.0: resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} engines: {node: '>=10'} + dev: false /escape-string-regexp@5.0.0: resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==} @@ -8792,397 +8098,30 @@ packages: source-map: 0.6.1 dev: false - /eslint-config-prettier@9.0.0(eslint@8.57.0): - resolution: {integrity: sha512-IcJsTkJae2S35pRsRAwoCE+925rJJStOdkKnLVgtE+tEpqU0EVVM7OqrwxqgptKdX29NUwC82I5pXsGFIgSevw==} - hasBin: true - peerDependencies: - eslint: '>=7.0.0' - dependencies: - eslint: 8.57.0 - dev: true - - /eslint-import-resolver-alias@1.1.2(eslint-plugin-import@2.28.1): - resolution: {integrity: sha512-WdviM1Eu834zsfjHtcGHtGfcu+F30Od3V7I9Fi57uhBEwPkjDcii7/yW8jAT+gOhn4P/vOxxNAXbFAKsrrc15w==} - engines: {node: '>= 4'} - peerDependencies: - eslint-plugin-import: '>=1.4.0' - dependencies: - eslint-plugin-import: 2.28.1(@typescript-eslint/parser@6.18.1)(eslint-import-resolver-typescript@3.6.0)(eslint@8.57.0) - dev: true - - /eslint-import-resolver-node@0.3.9: - resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==} - dependencies: - debug: 3.2.7 - is-core-module: 2.13.0 - resolve: 1.22.8 - transitivePeerDependencies: - - supports-color - dev: true - - /eslint-import-resolver-typescript@3.6.0(@typescript-eslint/parser@6.18.1)(eslint-plugin-import@2.28.1)(eslint@8.57.0): - resolution: {integrity: sha512-QTHR9ddNnn35RTxlaEnx2gCxqFlF2SEN0SE2d17SqwyM7YOSI2GHWRYp5BiRkObTUNYPupC/3Fq2a0PpT+EKpg==} - engines: {node: ^14.18.0 || >=16.0.0} - peerDependencies: - eslint: '*' - eslint-plugin-import: '*' - dependencies: - debug: 4.3.4 - enhanced-resolve: 5.12.0 - eslint: 8.57.0 - eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.18.1)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.0)(eslint@8.57.0) - eslint-plugin-import: 2.28.1(@typescript-eslint/parser@6.18.1)(eslint-import-resolver-typescript@3.6.0)(eslint@8.57.0) - fast-glob: 3.3.3 - get-tsconfig: 4.7.0 - is-core-module: 2.13.0 - is-glob: 4.0.3 - transitivePeerDependencies: - - '@typescript-eslint/parser' - - eslint-import-resolver-node - - eslint-import-resolver-webpack - - supports-color - dev: true - - /eslint-module-utils@2.8.0(@typescript-eslint/parser@6.18.1)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.0)(eslint@8.57.0): - resolution: {integrity: sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==} - engines: {node: '>=4'} - peerDependencies: - '@typescript-eslint/parser': '*' - eslint: '*' - eslint-import-resolver-node: '*' - eslint-import-resolver-typescript: '*' - eslint-import-resolver-webpack: '*' - peerDependenciesMeta: - '@typescript-eslint/parser': - optional: true - eslint: - optional: true - eslint-import-resolver-node: - optional: true - eslint-import-resolver-typescript: - optional: true - eslint-import-resolver-webpack: - optional: true - dependencies: - '@typescript-eslint/parser': 6.18.1(eslint@8.57.0)(typescript@5.6.3) - debug: 3.2.7 - eslint: 8.57.0 - eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.6.0(@typescript-eslint/parser@6.18.1)(eslint-plugin-import@2.28.1)(eslint@8.57.0) - transitivePeerDependencies: - - supports-color - dev: true - - /eslint-plugin-eslint-comments@3.2.0(eslint@8.57.0): - resolution: {integrity: sha512-0jkOl0hfojIHHmEHgmNdqv4fmh7300NdpA9FFpF7zaoLvB/QeXOGNLIo86oAveJFrfB1p05kC8hpEMHM8DwWVQ==} - engines: {node: '>=6.5.0'} - peerDependencies: - eslint: '>=4.19.1' - dependencies: - escape-string-regexp: 1.0.5 - eslint: 8.57.0 - ignore: 5.3.0 - dev: true - - /eslint-plugin-import@2.28.1(@typescript-eslint/parser@6.18.1)(eslint-import-resolver-typescript@3.6.0)(eslint@8.57.0): - resolution: {integrity: sha512-9I9hFlITvOV55alzoKBI+K9q74kv0iKMeY6av5+umsNwayt59fz692daGyjR+oStBQgx6nwR9rXldDev3Clw+A==} - engines: {node: '>=4'} - peerDependencies: - '@typescript-eslint/parser': '*' - eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 - peerDependenciesMeta: - '@typescript-eslint/parser': - optional: true - dependencies: - '@typescript-eslint/parser': 6.18.1(eslint@8.57.0)(typescript@5.6.3) - array-includes: 3.1.6 - array.prototype.findlastindex: 1.2.2 - array.prototype.flat: 1.3.1 - array.prototype.flatmap: 1.3.1 - debug: 3.2.7 - doctrine: 2.1.0 - eslint: 8.57.0 - eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.18.1)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.0)(eslint@8.57.0) - has: 1.0.3 - is-core-module: 2.13.0 - is-glob: 4.0.3 - minimatch: 3.1.2 - object.fromentries: 2.0.6 - object.groupby: 1.0.1 - object.values: 1.1.6 - semver: 6.3.1 - tsconfig-paths: 3.14.2 - transitivePeerDependencies: - - eslint-import-resolver-typescript - - eslint-import-resolver-webpack - - supports-color - dev: true - - /eslint-plugin-jest@27.2.3(@typescript-eslint/eslint-plugin@6.18.1)(eslint@8.57.0)(typescript@5.6.3): - resolution: {integrity: sha512-sRLlSCpICzWuje66Gl9zvdF6mwD5X86I4u55hJyFBsxYOsBCmT5+kSUjf+fkFWVMMgpzNEupjW8WzUqi83hJAQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - peerDependencies: - '@typescript-eslint/eslint-plugin': ^5.0.0 || ^6.0.0 - eslint: ^7.0.0 || ^8.0.0 - jest: '*' - peerDependenciesMeta: - '@typescript-eslint/eslint-plugin': - optional: true - jest: - optional: true - dependencies: - '@typescript-eslint/eslint-plugin': 6.18.1(@typescript-eslint/parser@6.18.1)(eslint@8.57.0)(typescript@5.6.3) - '@typescript-eslint/utils': 5.62.0(eslint@8.57.0)(typescript@5.6.3) - eslint: 8.57.0 - transitivePeerDependencies: - - supports-color - - typescript - dev: true - - /eslint-plugin-jsx-a11y@6.7.1(eslint@8.57.0): - resolution: {integrity: sha512-63Bog4iIethyo8smBklORknVjB0T2dwB8Mr/hIC+fBS0uyHdYYpzM/Ed+YC8VxTjlXHEWFOdmgwcDn1U2L9VCA==} - engines: {node: '>=4.0'} - peerDependencies: - eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 - dependencies: - '@babel/runtime': 7.22.11 - aria-query: 5.3.0 - array-includes: 3.1.6 - array.prototype.flatmap: 1.3.1 - ast-types-flow: 0.0.7 - axe-core: 4.7.2 - axobject-query: 3.2.1 - damerau-levenshtein: 1.0.8 - emoji-regex: 9.2.2 - eslint: 8.57.0 - has: 1.0.3 - jsx-ast-utils: 3.3.3 - language-tags: 1.0.5 - minimatch: 3.1.2 - object.entries: 1.1.6 - object.fromentries: 2.0.6 - semver: 6.3.1 - dev: true - - /eslint-plugin-playwright@0.16.0(eslint-plugin-jest@27.2.3)(eslint@8.57.0): - resolution: {integrity: sha512-DcHpF0SLbNeh9MT4pMzUGuUSnJ7q5MWbP8sSEFIMS6j7Ggnduq8ghNlfhURgty4c1YFny7Ge9xYTO1FSAoV2Vw==} - peerDependencies: - eslint: '>=7' - eslint-plugin-jest: '>=25' - peerDependenciesMeta: - eslint-plugin-jest: - optional: true - dependencies: - eslint: 8.57.0 - eslint-plugin-jest: 27.2.3(@typescript-eslint/eslint-plugin@6.18.1)(eslint@8.57.0)(typescript@5.6.3) - dev: true - - /eslint-plugin-react-hooks@4.6.0(eslint@8.57.0): - resolution: {integrity: sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==} - engines: {node: '>=10'} - peerDependencies: - eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 - dependencies: - eslint: 8.57.0 - dev: true - - /eslint-plugin-react@7.33.2(eslint@8.57.0): - resolution: {integrity: sha512-73QQMKALArI8/7xGLNI/3LylrEYrlKZSb5C9+q3OtOewTnMQi5cT+aE9E41sLCmli3I9PGGmD1yiZydyo4FEPw==} - engines: {node: '>=4'} - peerDependencies: - eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 - dependencies: - array-includes: 3.1.6 - array.prototype.flatmap: 1.3.1 - array.prototype.tosorted: 1.1.1 - doctrine: 2.1.0 - es-iterator-helpers: 1.0.14 - eslint: 8.57.0 - estraverse: 5.3.0 - jsx-ast-utils: 3.3.3 - minimatch: 3.1.2 - object.entries: 1.1.6 - object.fromentries: 2.0.6 - object.hasown: 1.1.2 - object.values: 1.1.6 - prop-types: 15.8.1 - resolve: 2.0.0-next.4 - semver: 6.3.1 - string.prototype.matchall: 4.0.8 - dev: true - - /eslint-plugin-testing-library@6.0.1(eslint@8.57.0)(typescript@5.6.3): - resolution: {integrity: sha512-CEYtjpcF3hAaQtYsTZqciR7s5z+T0LCMTwJeW+pz6kBnGtc866wAKmhaiK2Gsjc2jWNP7Gt6zhNr2DE1ZW4e+g==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0, npm: '>=6'} - peerDependencies: - eslint: ^7.5.0 || ^8.0.0 - dependencies: - '@typescript-eslint/utils': 5.62.0(eslint@8.57.0)(typescript@5.6.3) - eslint: 8.57.0 - transitivePeerDependencies: - - supports-color - - typescript - dev: true - - /eslint-plugin-tsdoc@0.2.17: - resolution: {integrity: sha512-xRmVi7Zx44lOBuYqG8vzTXuL6IdGOeF9nHX17bjJ8+VE6fsxpdGem0/SBTmAwgYMKYB1WBkqRJVQ+n8GK041pA==} - dependencies: - '@microsoft/tsdoc': 0.14.2 - '@microsoft/tsdoc-config': 0.16.2 - dev: true - - /eslint-plugin-unicorn@48.0.1(eslint@8.57.0): - resolution: {integrity: sha512-FW+4r20myG/DqFcCSzoumaddKBicIPeFnTrifon2mWIzlfyvzwyqZjqVP7m4Cqr/ZYisS2aiLghkUWaPg6vtCw==} - engines: {node: '>=16'} - peerDependencies: - eslint: '>=8.44.0' - dependencies: - '@babel/helper-validator-identifier': 7.22.5 - '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) - ci-info: 3.8.0 - clean-regexp: 1.0.0 - eslint: 8.57.0 - esquery: 1.5.0 - indent-string: 4.0.0 - is-builtin-module: 3.2.1 - jsesc: 3.0.2 - lodash: 4.17.21 - pluralize: 8.0.0 - read-pkg-up: 7.0.1 - regexp-tree: 0.1.27 - regjsparser: 0.10.0 - semver: 7.6.2 - strip-indent: 3.0.0 - dev: true - - /eslint-scope@5.1.1: - resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} - engines: {node: '>=8.0.0'} - dependencies: - esrecurse: 4.3.0 - estraverse: 4.3.0 - dev: true - /eslint-scope@7.2.2: resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: esrecurse: 4.3.0 estraverse: 5.3.0 - - /eslint-visitor-keys@2.1.0: - resolution: {integrity: sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==} - engines: {node: '>=10'} - dev: true + dev: false /eslint-visitor-keys@3.4.3: resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - /eslint@8.47.0: - resolution: {integrity: sha512-spUQWrdPt+pRVP1TTJLmfRNJJHHZryFmptzcafwSvHsceV81djHOdnEeDmkdotZyLNjDhrOasNK8nikkoG1O8Q==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.47.0) - '@eslint-community/regexpp': 4.6.2 - '@eslint/eslintrc': 2.1.2 - '@eslint/js': 8.47.0 - '@humanwhocodes/config-array': 0.11.10 - '@humanwhocodes/module-importer': 1.0.1 - '@nodelib/fs.walk': 1.2.8 - ajv: 6.12.6 - chalk: 4.1.2 - cross-spawn: 7.0.3 - debug: 4.3.4 - doctrine: 3.0.0 - escape-string-regexp: 4.0.0 - eslint-scope: 7.2.2 - eslint-visitor-keys: 3.4.3 - espree: 9.6.1 - esquery: 1.5.0 - esutils: 2.0.3 - 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.1 - imurmurhash: 0.1.4 - is-glob: 4.0.3 - is-path-inside: 3.0.3 - js-yaml: 4.1.0 - json-stable-stringify-without-jsonify: 1.0.1 - levn: 0.4.1 - lodash.merge: 4.6.2 - minimatch: 3.1.2 - natural-compare: 1.4.0 - optionator: 0.9.3 - strip-ansi: 6.0.1 - text-table: 0.2.0 - transitivePeerDependencies: - - supports-color - dev: false - - /eslint@8.55.0: - resolution: {integrity: sha512-iyUUAM0PCKj5QpwGfmCAG9XXbZCWsqP/eWAWrG/W0umvjuLRBECwSFdt+rCntju0xEH7teIABPwXpahftIaTdA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.55.0) - '@eslint-community/regexpp': 4.10.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 - '@ungap/structured-clone': 1.2.0 - ajv: 6.12.6 - chalk: 4.1.2 - cross-spawn: 7.0.3 - debug: 4.3.4 - doctrine: 3.0.0 - escape-string-regexp: 4.0.0 - eslint-scope: 7.2.2 - eslint-visitor-keys: 3.4.3 - espree: 9.6.1 - esquery: 1.5.0 - esutils: 2.0.3 - fast-deep-equal: 3.1.3 - file-entry-cache: 6.0.1 - find-up: 5.0.0 - glob-parent: 6.0.2 - globals: 13.23.0 - graphemer: 1.4.0 - ignore: 5.3.0 - imurmurhash: 0.1.4 - is-glob: 4.0.3 - is-path-inside: 3.0.3 - js-yaml: 4.1.0 - json-stable-stringify-without-jsonify: 1.0.1 - levn: 0.4.1 - lodash.merge: 4.6.2 - minimatch: 3.1.2 - natural-compare: 1.4.0 - optionator: 0.9.3 - strip-ansi: 6.0.1 - text-table: 0.2.0 - transitivePeerDependencies: - - supports-color - dev: true + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dev: false - /eslint@8.57.0: - resolution: {integrity: sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==} + /eslint@8.47.0: + resolution: {integrity: sha512-spUQWrdPt+pRVP1TTJLmfRNJJHHZryFmptzcafwSvHsceV81djHOdnEeDmkdotZyLNjDhrOasNK8nikkoG1O8Q==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) - '@eslint-community/regexpp': 4.10.0 - '@eslint/eslintrc': 2.1.4 - '@eslint/js': 8.57.0 - '@humanwhocodes/config-array': 0.11.14 + '@eslint-community/eslint-utils': 4.4.0(eslint@8.47.0) + '@eslint-community/regexpp': 4.6.2 + '@eslint/eslintrc': 2.1.2 + '@eslint/js': 8.47.0 + '@humanwhocodes/config-array': 0.11.10 '@humanwhocodes/module-importer': 1.0.1 '@nodelib/fs.walk': 1.2.8 - '@ungap/structured-clone': 1.2.0 ajv: 6.12.6 chalk: 4.1.2 cross-spawn: 7.0.3 @@ -9198,9 +8137,9 @@ packages: file-entry-cache: 6.0.1 find-up: 5.0.0 glob-parent: 6.0.2 - globals: 13.23.0 + globals: 13.19.0 graphemer: 1.4.0 - ignore: 5.3.0 + ignore: 5.2.1 imurmurhash: 0.1.4 is-glob: 4.0.3 is-path-inside: 3.0.3 @@ -9215,7 +8154,7 @@ packages: text-table: 0.2.0 transitivePeerDependencies: - supports-color - dev: true + dev: false /espree@9.6.1: resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} @@ -9224,6 +8163,7 @@ packages: acorn: 8.10.0 acorn-jsx: 5.3.2(acorn@8.10.0) eslint-visitor-keys: 3.4.3 + dev: false /esprima@4.0.1: resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} @@ -9234,21 +8174,19 @@ packages: engines: {node: '>=0.10'} dependencies: estraverse: 5.3.0 + dev: false /esrecurse@4.3.0: resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} engines: {node: '>=4.0'} dependencies: estraverse: 5.3.0 - - /estraverse@4.3.0: - resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==} - engines: {node: '>=4.0'} - dev: true + dev: false /estraverse@5.3.0: resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} engines: {node: '>=4.0'} + dev: false /estree-util-attach-comments@3.0.0: resolution: {integrity: sha512-cKUwm/HUcTDsYh/9FgnuFqpfquUbwIqwKM26BVCGDPVgvaCl/nDCCjUfiLlx6lsEZ3Z4RFxNbOQ60pkaEwFxGw==} @@ -9310,6 +8248,7 @@ packages: /esutils@2.0.3: resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} engines: {node: '>=0.10.0'} + dev: false /execa@0.4.0: resolution: {integrity: sha512-QPexBaNjeOjyiZ47q0FCukTO1kX3F+HMM0EWpnxXddcr3MZtElILMkz9Y38nmSZtp03+ZiSRMffrKWBPOIoSIg==} @@ -9352,21 +8291,6 @@ packages: strip-final-newline: 3.0.0 dev: true - /execa@7.2.0: - resolution: {integrity: sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==} - engines: {node: ^14.18.0 || ^16.14.0 || >=18.0.0} - dependencies: - cross-spawn: 7.0.6 - get-stream: 6.0.1 - human-signals: 4.3.1 - is-stream: 3.0.0 - merge-stream: 2.0.0 - npm-run-path: 5.1.0 - onetime: 6.0.0 - signal-exit: 3.0.7 - strip-final-newline: 3.0.0 - dev: true - /execa@8.0.1: resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} engines: {node: '>=16.17'} @@ -9467,6 +8391,7 @@ packages: /fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} + dev: false /fast-glob@3.2.12: resolution: {integrity: sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==} @@ -9478,17 +8403,6 @@ packages: merge2: 1.4.1 micromatch: 4.0.5 - /fast-glob@3.3.1: - resolution: {integrity: sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==} - engines: {node: '>=8.6.0'} - dependencies: - '@nodelib/fs.stat': 2.0.5 - '@nodelib/fs.walk': 1.2.8 - glob-parent: 5.1.2 - merge2: 1.4.1 - micromatch: 4.0.8 - dev: true - /fast-glob@3.3.3: resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==} engines: {node: '>=8.6.0'} @@ -9504,6 +8418,7 @@ packages: /fast-levenshtein@2.0.6: resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} + dev: false /fast-safe-stringify@2.1.1: resolution: {integrity: sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==} @@ -9559,6 +8474,7 @@ packages: engines: {node: ^10.12.0 || >=12.0.0} dependencies: flat-cache: 3.0.4 + dev: false /filelist@1.0.4: resolution: {integrity: sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==} @@ -9676,9 +8592,11 @@ packages: dependencies: flatted: 3.2.7 rimraf: 3.0.2 + dev: false /flatted@3.2.7: resolution: {integrity: sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==} + dev: false /follow-redirects@1.15.1: resolution: {integrity: sha512-yLAMQs+k0b2m7cVxpS1VKJVvoz7SS9Td1zss3XRwXj+ZDH00RJgnuLx7E44wx02kQLrdM3aOOy+FpzS7+8OizA==} @@ -9690,12 +8608,6 @@ packages: optional: true dev: false - /for-each@0.3.3: - resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} - dependencies: - is-callable: 1.2.7 - dev: true - /for-in@1.0.2: resolution: {integrity: sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==} engines: {node: '>=0.10.0'} @@ -10056,20 +8968,6 @@ packages: /function-bind@1.1.1: resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==} - /function.prototype.name@1.1.5: - resolution: {integrity: sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.2 - define-properties: 1.1.4 - es-abstract: 1.20.5 - functions-have-names: 1.2.3 - dev: true - - /functions-have-names@1.2.3: - resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} - dev: true - /geist@1.3.1(next@15.4.0-canary.81): resolution: {integrity: sha512-Q4gC1pBVPN+D579pBaz0TRRnGA4p9UK6elDY/xizXdFk/g4EKR5g0I+4p/Kj6gM0SajDBZ/0FvDV9ey9ud7BWw==} peerDependencies: @@ -10101,23 +8999,6 @@ packages: engines: {node: '>=18'} dev: true - /get-intrinsic@1.1.3: - resolution: {integrity: sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==} - dependencies: - function-bind: 1.1.1 - has: 1.0.3 - has-symbols: 1.0.3 - dev: true - - /get-intrinsic@1.2.1: - resolution: {integrity: sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==} - dependencies: - function-bind: 1.1.1 - has: 1.0.3 - has-proto: 1.0.1 - has-symbols: 1.0.3 - dev: true - /get-nonce@1.0.1: resolution: {integrity: sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==} engines: {node: '>=6'} @@ -10133,11 +9014,6 @@ packages: engines: {node: '>=8'} dev: true - /get-stdin@9.0.0: - resolution: {integrity: sha512-dVKBjfWisLAicarI2Sf+JuBE/DghV4UzNAVe9yhEJuzeREd3JhOTE9cUaJTeSa77fsbQUK3pcOpJfM59+VKZaA==} - engines: {node: '>=12'} - dev: true - /get-stream@5.2.0: resolution: {integrity: sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==} engines: {node: '>=8'} @@ -10153,20 +9029,6 @@ packages: engines: {node: '>=16'} dev: true - /get-symbol-description@1.0.0: - resolution: {integrity: sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.1.3 - dev: true - - /get-tsconfig@4.7.0: - resolution: {integrity: sha512-pmjiZ7xtB8URYm74PlGJozDNyhvsVLUcpBa8DZBG3bWHwaHa9bPiRpiSfovw+fjhwONSCWKRyk+JQHEGZmMrzw==} - dependencies: - resolve-pkg-maps: 1.0.0 - dev: true - /get-tsconfig@4.7.6: resolution: {integrity: sha512-ZAqrLlu18NbDdRaHq+AKXzAmqIUPswPWKUchfytdAjiRFnCe5ojG2bstg6mRiZabkKfCoL/e98pbBELIV/YCeA==} dependencies: @@ -10190,10 +9052,6 @@ packages: engines: {node: '>=0.10.0'} dev: false - /git-hooks-list@3.1.0: - resolution: {integrity: sha512-LF8VeHeR7v+wAbXqfgRlTSX/1BJR9Q1vEMR8JAz1cEg6GX07+zyj3sAdDvYjj/xnlIfVuGgj4qBei1K3hKH+PA==} - dev: true - /github-slugger@2.0.0: resolution: {integrity: sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==} dev: false @@ -10273,20 +9131,6 @@ packages: type-fest: 0.20.2 dev: false - /globals@13.23.0: - resolution: {integrity: sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==} - engines: {node: '>=8'} - dependencies: - type-fest: 0.20.2 - dev: true - - /globalthis@1.0.3: - resolution: {integrity: sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==} - engines: {node: '>= 0.4'} - dependencies: - define-properties: 1.2.0 - dev: true - /globby@10.0.2: resolution: {integrity: sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg==} engines: {node: '>=8'} @@ -10324,12 +9168,6 @@ packages: slash: 4.0.0 dev: true - /gopd@1.0.1: - resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} - dependencies: - get-intrinsic: 1.1.3 - dev: true - /got@11.8.6: resolution: {integrity: sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==} engines: {node: '>=10.19.0'} @@ -10362,6 +9200,7 @@ packages: /graphemer@1.4.0: resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} + dev: false /gray-matter@4.0.3: resolution: {integrity: sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==} @@ -10383,10 +9222,6 @@ packages: optionalDependencies: uglify-js: 3.19.3 - /has-bigints@1.0.2: - resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==} - dev: true - /has-flag@3.0.0: resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} engines: {node: '>=4'} @@ -10395,29 +9230,6 @@ packages: resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} engines: {node: '>=8'} - /has-property-descriptors@1.0.0: - resolution: {integrity: sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==} - dependencies: - get-intrinsic: 1.2.1 - dev: true - - /has-proto@1.0.1: - resolution: {integrity: sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==} - engines: {node: '>= 0.4'} - dev: true - - /has-symbols@1.0.3: - resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==} - engines: {node: '>= 0.4'} - dev: true - - /has-tostringtag@1.0.0: - resolution: {integrity: sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==} - engines: {node: '>= 0.4'} - dependencies: - has-symbols: 1.0.3 - dev: true - /has-value@0.3.1: resolution: {integrity: sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q==} engines: {node: '>=0.10.0'} @@ -10645,10 +9457,6 @@ packages: parse-passwd: 1.0.0 dev: true - /hosted-git-info@2.8.9: - resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==} - dev: true - /html-escaper@2.0.2: resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==} dev: true @@ -10696,11 +9504,6 @@ packages: engines: {node: '>=12.20.0'} dev: true - /human-signals@4.3.1: - resolution: {integrity: sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==} - engines: {node: '>=14.18.0'} - dev: true - /human-signals@5.0.0: resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==} engines: {node: '>=16.17.0'} @@ -10761,6 +9564,7 @@ packages: dependencies: parent-module: 1.0.1 resolve-from: 4.0.0 + dev: false /import-local@3.1.0: resolution: {integrity: sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==} @@ -10843,24 +9647,6 @@ packages: through: 2.3.8 wrap-ansi: 7.0.0 - /internal-slot@1.0.3: - resolution: {integrity: sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==} - engines: {node: '>= 0.4'} - dependencies: - get-intrinsic: 1.1.3 - has: 1.0.3 - side-channel: 1.0.4 - dev: true - - /internal-slot@1.0.5: - resolution: {integrity: sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==} - engines: {node: '>= 0.4'} - dependencies: - get-intrinsic: 1.2.1 - has: 1.0.3 - side-channel: 1.0.4 - dev: true - /internmap@2.0.3: resolution: {integrity: sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg==} engines: {node: '>=12'} @@ -10922,14 +9708,6 @@ packages: is-decimal: 2.0.1 dev: false - /is-array-buffer@3.0.2: - resolution: {integrity: sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==} - dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.2.1 - is-typed-array: 1.1.12 - dev: true - /is-arrayish@0.2.1: resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} dev: true @@ -10937,33 +9715,12 @@ packages: /is-arrayish@0.3.2: resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} - /is-async-function@2.0.0: - resolution: {integrity: sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==} - engines: {node: '>= 0.4'} - dependencies: - has-tostringtag: 1.0.0 - dev: true - - /is-bigint@1.0.4: - resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} - dependencies: - has-bigints: 1.0.2 - dev: true - /is-binary-path@2.1.0: resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} engines: {node: '>=8'} dependencies: binary-extensions: 2.2.0 - /is-boolean-object@1.1.2: - resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.2 - has-tostringtag: 1.0.0 - dev: true - /is-buffer@1.1.6: resolution: {integrity: sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==} dev: false @@ -10972,18 +9729,6 @@ packages: resolution: {integrity: sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==} engines: {node: '>=4'} - /is-builtin-module@3.2.1: - resolution: {integrity: sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==} - engines: {node: '>=6'} - dependencies: - builtin-modules: 3.3.0 - dev: true - - /is-callable@1.2.7: - resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} - engines: {node: '>= 0.4'} - dev: true - /is-core-module@2.11.0: resolution: {integrity: sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==} dependencies: @@ -11009,13 +9754,6 @@ packages: kind-of: 6.0.3 dev: false - /is-date-object@1.0.5: - resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==} - engines: {node: '>= 0.4'} - dependencies: - has-tostringtag: 1.0.0 - dev: true - /is-decimal@2.0.1: resolution: {integrity: sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==} dev: false @@ -11038,16 +9776,6 @@ packages: kind-of: 6.0.3 dev: false - /is-docker@2.2.1: - resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==} - engines: {node: '>=8'} - dev: true - - /is-docker@3.0.0: - resolution: {integrity: sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - dev: true - /is-extendable@0.1.1: resolution: {integrity: sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==} engines: {node: '>=0.10.0'} @@ -11063,12 +9791,6 @@ packages: resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} engines: {node: '>=0.10.0'} - /is-finalizationregistry@1.0.2: - resolution: {integrity: sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==} - dependencies: - call-bind: 1.0.2 - dev: true - /is-fullwidth-code-point@3.0.0: resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} engines: {node: '>=8'} @@ -11083,13 +9805,6 @@ packages: engines: {node: '>=6'} dev: true - /is-generator-function@1.0.10: - resolution: {integrity: sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==} - engines: {node: '>= 0.4'} - dependencies: - has-tostringtag: 1.0.0 - dev: true - /is-git-clean@1.1.0: resolution: {integrity: sha512-1aodl49sbfsEV8GsIhw5lJdqObgQFLSUB2TSOXNYujCD322chTJPBIY+Q1NjXSM4V7rGh6vrWyKidIcGaVae6g==} engines: {node: '>=0.10.0'} @@ -11109,13 +9824,6 @@ packages: resolution: {integrity: sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==} dev: false - /is-inside-container@1.0.0: - resolution: {integrity: sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==} - engines: {node: '>=14.16'} - dependencies: - is-docker: 3.0.0 - dev: true - /is-interactive@1.0.0: resolution: {integrity: sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==} engines: {node: '>=8'} @@ -11131,26 +9839,10 @@ packages: lower-case: 1.1.4 dev: false - /is-map@2.0.2: - resolution: {integrity: sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==} - dev: true - /is-module@1.0.0: resolution: {integrity: sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==} dev: true - /is-negative-zero@2.0.2: - resolution: {integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==} - engines: {node: '>= 0.4'} - dev: true - - /is-number-object@1.0.7: - resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==} - engines: {node: '>= 0.4'} - dependencies: - has-tostringtag: 1.0.0 - dev: true - /is-number@3.0.0: resolution: {integrity: sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==} engines: {node: '>=0.10.0'} @@ -11196,14 +9888,6 @@ packages: '@types/estree': 1.0.6 dev: true - /is-regex@1.1.4: - resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.2 - has-tostringtag: 1.0.0 - dev: true - /is-relative@1.0.0: resolution: {integrity: sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==} engines: {node: '>=0.10.0'} @@ -11211,16 +9895,6 @@ packages: is-unc-path: 1.0.0 dev: true - /is-set@2.0.2: - resolution: {integrity: sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==} - dev: true - - /is-shared-array-buffer@1.0.2: - resolution: {integrity: sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==} - dependencies: - call-bind: 1.0.2 - dev: true - /is-stream@1.1.0: resolution: {integrity: sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==} engines: {node: '>=0.10.0'} @@ -11235,27 +9909,6 @@ packages: engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dev: true - /is-string@1.0.7: - resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} - engines: {node: '>= 0.4'} - dependencies: - has-tostringtag: 1.0.0 - dev: true - - /is-symbol@1.0.4: - resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==} - engines: {node: '>= 0.4'} - dependencies: - has-symbols: 1.0.3 - dev: true - - /is-typed-array@1.1.12: - resolution: {integrity: sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==} - engines: {node: '>= 0.4'} - dependencies: - which-typed-array: 1.1.11 - dev: true - /is-unc-path@1.0.0: resolution: {integrity: sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==} engines: {node: '>=0.10.0'} @@ -11283,42 +9936,14 @@ packages: upper-case: 1.1.3 dev: false - /is-weakmap@2.0.1: - resolution: {integrity: sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==} - dev: true - - /is-weakref@1.0.2: - resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==} - dependencies: - call-bind: 1.0.2 - dev: true - - /is-weakset@2.0.2: - resolution: {integrity: sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==} - dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.2.1 - dev: true - /is-windows@1.0.2: resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==} engines: {node: '>=0.10.0'} - /is-wsl@2.2.0: - resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==} - engines: {node: '>=8'} - dependencies: - is-docker: 2.2.1 - dev: true - /isarray@1.0.0: resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==} dev: false - /isarray@2.0.5: - resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} - dev: true - /isbinaryfile@4.0.10: resolution: {integrity: sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==} engines: {node: '>= 8.0.0'} @@ -11396,16 +10021,6 @@ packages: istanbul-lib-report: 3.0.0 dev: true - /iterator.prototype@1.1.0: - resolution: {integrity: sha512-rjuhAk1AJ1fssphHD0IFV6TWL40CwRZ53FrztKx43yk2v6rguBYsY4Bj1VU4HmoMmKwZUlx7mfnhDf9cOp4YTw==} - dependencies: - define-properties: 1.2.0 - get-intrinsic: 1.2.1 - has-symbols: 1.0.3 - has-tostringtag: 1.0.0 - reflect.getprototypeof: 1.0.3 - dev: true - /jackspeak@3.4.3: resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} dependencies: @@ -12016,10 +10631,6 @@ packages: /jiti@1.21.7: resolution: {integrity: sha512-/imKNG4EbWNrVjoNC/1H5/9GFy+tqjGBHCaSsN+P2RnPqjsLmv6UD3Ej+Kj8nBWaRAwyk7kK5ZUc+OEatnTR3A==} - /jju@1.4.0: - resolution: {integrity: sha512-8wb9Yw966OSxApiCt0K3yNJL8pnNeIv+OEq2YMidz4FKP6nonSRoOXc80iXY4JaN2FC11B9qsNmDsm+ZOfMROA==} - dev: true - /jose@5.10.0: resolution: {integrity: sha512-s+3Al/p9g32Iq+oqXxkW//7jk2Vig6FF1CFqzVXoTUXt2qz89YWbL+OwS17NFYEvxC35n0FKeGO2LGYSxeM2Gg==} dev: false @@ -12048,20 +10659,11 @@ packages: resolution: {integrity: sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==} dev: false - /jsesc@0.5.0: - resolution: {integrity: sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==} - dev: true - /jsesc@2.5.2: resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} engines: {node: '>=4'} dev: true - /jsesc@3.0.2: - resolution: {integrity: sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==} - engines: {node: '>=6'} - dev: true - /jsesc@3.1.0: resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==} engines: {node: '>=6'} @@ -12087,6 +10689,7 @@ packages: /json-schema-traverse@0.4.1: resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} + dev: false /json-schema-traverse@1.0.0: resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} @@ -12094,17 +10697,12 @@ packages: /json-stable-stringify-without-jsonify@1.0.1: resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} + dev: false /json-stringify-safe@5.0.1: resolution: {integrity: sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==} dev: false - /json5@1.0.2: - resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==} - dependencies: - minimist: 1.2.8 - dev: true - /json5@2.2.3: resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} engines: {node: '>=6'} @@ -12142,14 +10740,6 @@ packages: engines: {node: '>=0.10.0'} dev: false - /jsx-ast-utils@3.3.3: - resolution: {integrity: sha512-fYQHZTZ8jSfmWZ0iyzfwiU4WDX4HpHbMCZ3gPlWYiCl3BoeOTsqKBqnTVfH2rYT7eP5c3sVbeSPHnnJOaTrWiw==} - engines: {node: '>=4.0'} - dependencies: - array-includes: 3.1.6 - object.assign: 4.1.4 - dev: true - /junit-report-builder@3.2.1: resolution: {integrity: sha512-IMCp5XyDQ4YESDE4Za7im3buM0/7cMnRfe17k2X8B05FnUl9vqnaliX6cgOEmPIeWKfJrEe/gANRq/XgqttCqQ==} engines: {node: '>=8'} @@ -12198,16 +10788,6 @@ packages: engines: {node: '>=6'} dev: true - /language-subtag-registry@0.3.22: - resolution: {integrity: sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==} - dev: true - - /language-tags@1.0.5: - resolution: {integrity: sha512-qJhlO9cGXi6hBGKoxEG/sKZDAHD5Hnu9Hs4WbOY3pCWXDhw0N8x1NenNzm2EnNLkLkk7J2SdxAkDSbb6ftT+UQ==} - dependencies: - language-subtag-registry: 0.3.22 - dev: true - /leven@3.1.0: resolution: {integrity: sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==} engines: {node: '>=6'} @@ -12224,6 +10804,7 @@ packages: dependencies: prelude-ls: 1.2.1 type-check: 0.4.0 + dev: false /liftoff@4.0.0: resolution: {integrity: sha512-rMGwYF8q7g2XhG2ulBmmJgWv25qBsqRbDn5gH0+wnuyeFt7QBJlHJmtg5qEdn4pN6WVAUMgXnIxytMFRX9c1aA==} @@ -12329,6 +10910,7 @@ packages: /lodash.merge@4.6.2: resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} + dev: false /lodash.padend@4.6.1: resolution: {integrity: sha512-sOQs2aqGpbl27tmCS1QNZA09Uqp01ZzWfDUoD+xzTii0E7dSQfRKcRetFwa+uXaxaqL+TKm7CgD2JdKP7aZBSw==} @@ -12383,12 +10965,6 @@ packages: /longest-streak@3.1.0: resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==} - /loose-envify@1.4.0: - resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} - dependencies: - js-tokens: 4.0.0 - dev: true - /lower-case-first@1.0.2: resolution: {integrity: sha512-UuxaYakO7XeONbKrZf5FEgkantPf5DUqDayzP5VXZrtRPdH86s4kN47I8B3TW10S4QKiE3ziHNf3kRN//okHjA==} dependencies: @@ -13579,11 +12155,6 @@ packages: resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==} engines: {node: '>=10'} - /min-indent@1.0.1: - resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==} - engines: {node: '>=4'} - dev: true - /minimatch@3.1.2: resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} dependencies: @@ -13602,13 +12173,6 @@ packages: brace-expansion: 2.0.1 dev: false - /minimatch@9.0.3: - resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==} - engines: {node: '>=16 || 14 >=14.17'} - dependencies: - brace-expansion: 2.0.1 - dev: true - /minimatch@9.0.5: resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} engines: {node: '>=16 || 14 >=14.17'} @@ -13954,15 +12518,6 @@ packages: resolution: {integrity: sha512-2bu7Pfpf6uNqashWV8P7yYeutQ3XkLY9MBSYI5sOAFZxuWcW/uJfLbKj5m6SvMDT9U1Y0C+7UFG+7VSiIdXjtA==} dev: false - /normalize-package-data@2.5.0: - resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==} - dependencies: - hosted-git-info: 2.8.9 - resolve: 1.22.8 - semver: 5.7.1 - validate-npm-package-license: 3.0.4 - dev: true - /normalize-path@3.0.0: resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} engines: {node: '>=0.10.0'} @@ -14033,15 +12588,6 @@ packages: resolution: {integrity: sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==} dev: true - /object-inspect@1.12.3: - resolution: {integrity: sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==} - dev: true - - /object-keys@1.1.1: - resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} - engines: {node: '>= 0.4'} - dev: true - /object-visit@1.0.1: resolution: {integrity: sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA==} engines: {node: '>=0.10.0'} @@ -14049,16 +12595,6 @@ packages: isobject: 3.0.1 dev: false - /object.assign@4.1.4: - resolution: {integrity: sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.2 - define-properties: 1.1.4 - has-symbols: 1.0.3 - object-keys: 1.1.1 - dev: true - /object.defaults@1.1.0: resolution: {integrity: sha512-c/K0mw/F11k4dEUBMW8naXUuBuhxRCfG7W+yFy8EcijU/rSmazOUd1XAEEe6bC0OuXY4HUKjTJv7xbxIMqdxrA==} engines: {node: '>=0.10.0'} @@ -14069,40 +12605,6 @@ packages: isobject: 3.0.1 dev: true - /object.entries@1.1.6: - resolution: {integrity: sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.22.1 - dev: true - - /object.fromentries@2.0.6: - resolution: {integrity: sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.22.1 - dev: true - - /object.groupby@1.0.1: - resolution: {integrity: sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==} - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.22.1 - get-intrinsic: 1.2.1 - dev: true - - /object.hasown@1.1.2: - resolution: {integrity: sha512-B5UIT3J1W+WuWIU55h0mjlwaqxiE5vYENJXIXZ4VFe05pNYrkKuK0U/6aFcb0pKywYJh7IhfoqUfKVmrJJHZHw==} - dependencies: - define-properties: 1.2.0 - es-abstract: 1.22.1 - dev: true - /object.map@1.0.1: resolution: {integrity: sha512-3+mAJu2PLfnSVGHwIWubpOFLscJANBKuB/6A4CxBstc4aqwQY0FWcsppuy4jU5GSB95yES5JHSI+33AWuS4k6w==} engines: {node: '>=0.10.0'} @@ -14117,15 +12619,6 @@ packages: dependencies: isobject: 3.0.1 - /object.values@1.1.6: - resolution: {integrity: sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.22.1 - dev: true - /once@1.4.0: resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} dependencies: @@ -14172,16 +12665,6 @@ packages: regex-recursion: 6.0.2 dev: false - /open@9.1.0: - resolution: {integrity: sha512-OS+QTnw1/4vrf+9hh1jc1jnYjzSG4ttTBB8UxOwAnInG3Uo4ssetzC1ihqaIHjLJnA5GGlRl6QlZXOTQhRBUvg==} - engines: {node: '>=14.16'} - dependencies: - default-browser: 4.0.0 - define-lazy-prop: 3.0.0 - is-inside-container: 1.0.0 - is-wsl: 2.2.0 - dev: true - /openapi-sampler@1.6.1: resolution: {integrity: sha512-s1cIatOqrrhSj2tmJ4abFYZQK6l5v+V4toO5q1Pa0DyN8mtyqy2I+Qrj5W9vOELEtybIMQs/TBZGVO/DtTFK8w==} dependencies: @@ -14200,6 +12683,7 @@ packages: levn: 0.4.1 prelude-ls: 1.2.1 type-check: 0.4.0 + dev: false /ora@4.1.1: resolution: {integrity: sha512-sjYP8QyVWBpBZWD6Vr1M/KwknSw6kJOz41tvGMlwWeClHBtYKTbHMki1PsLZnxKpXMPbTKv9b3pjQu3REib96A==} @@ -14367,6 +12851,7 @@ packages: engines: {node: '>=6'} dependencies: callsites: 3.1.0 + dev: false /parse-entities@4.0.2: resolution: {integrity: sha512-GG2AQYWoLgL877gQIKeRPGO1xF9+eG1ujIb5soS5gPvLQ1y2o8FL90w2QWNdf9I361Mpp7726c+lj3U0qK1uGw==} @@ -14567,11 +13052,6 @@ packages: v8flags: 4.0.0 dev: true - /pluralize@8.0.0: - resolution: {integrity: sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==} - engines: {node: '>=4'} - dev: true - /posix-character-classes@0.1.1: resolution: {integrity: sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg==} engines: {node: '>=0.10.0'} @@ -14676,35 +13156,12 @@ packages: /prelude-ls@1.2.1: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} engines: {node: '>= 0.8.0'} - - /prettier-plugin-packagejson@2.4.5(prettier@2.8.7): - resolution: {integrity: sha512-glG71jE1gO3y5+JNAhC8X+4yrlN28rub6Aj461SKbaPie9RgMiHKcInH2Moi2VGOfkTXaEHBhg4uVMBqa+kBUA==} - peerDependencies: - prettier: '>= 1.16.0' - peerDependenciesMeta: - prettier: - optional: true - dependencies: - prettier: 2.8.7 - sort-package-json: 2.5.1 - synckit: 0.8.5 - dev: true - - /prettier@2.8.7: - resolution: {integrity: sha512-yPngTo3aXUUmyuTjeTUT75txrf+aMh9FiD7q9ZE/i6r0bPb22g4FsE6Y338PQX1bmfy08i9QQCB7/rcUAVntfw==} - engines: {node: '>=10.13.0'} - dev: true - - /prettier@3.3.3: - resolution: {integrity: sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==} - engines: {node: '>=14'} - dev: true + dev: false /prettier@3.5.3: resolution: {integrity: sha512-QQtaxnoDJeAkDvDKWCLiwIXkTgRhwYDEQCghU9Z6q03iyek/rxRh/2lC3HB7P8sWT2xC/y5JDctPLBIGzHKbhw==} engines: {node: '>=14'} hasBin: true - dev: false /pretty-bytes@5.6.0: resolution: {integrity: sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==} @@ -14732,14 +13189,6 @@ packages: sisteransi: 1.0.5 dev: true - /prop-types@15.8.1: - resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} - dependencies: - loose-envify: 1.4.0 - object-assign: 4.1.1 - react-is: 16.13.1 - dev: true - /property-information@6.5.0: resolution: {integrity: sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==} dev: false @@ -14841,10 +13290,6 @@ packages: react: 19.0.0 dev: false - /react-is@16.13.1: - resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} - dev: true - /react-is@18.3.1: resolution: {integrity: sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==} dev: true @@ -14919,25 +13364,6 @@ packages: dependencies: pify: 2.3.0 - /read-pkg-up@7.0.1: - resolution: {integrity: sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==} - engines: {node: '>=8'} - dependencies: - find-up: 4.1.0 - read-pkg: 5.2.0 - type-fest: 0.8.1 - dev: true - - /read-pkg@5.2.0: - resolution: {integrity: sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==} - engines: {node: '>=8'} - dependencies: - '@types/normalize-package-data': 2.4.1 - normalize-package-data: 2.5.0 - parse-json: 5.2.0 - type-fest: 0.6.0 - dev: true - /readable-stream@2.3.7: resolution: {integrity: sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==} dependencies: @@ -15037,18 +13463,6 @@ packages: engines: {node: '>=0.10.0'} dev: true - /reflect.getprototypeof@1.0.3: - resolution: {integrity: sha512-TTAOZpkJ2YLxl7mVHWrNo3iDMEkYlva/kgFcXndqMgbo/AZUmmavEkdXV+hXtE4P8xdyEKRzalaFqZVuwIk/Nw==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.22.1 - get-intrinsic: 1.2.1 - globalthis: 1.0.3 - which-builtin-type: 1.1.3 - dev: true - /regenerator-runtime@0.13.11: resolution: {integrity: sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==} dev: false @@ -15081,28 +13495,6 @@ packages: regex-utilities: 2.3.0 dev: false - /regexp-tree@0.1.27: - resolution: {integrity: sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA==} - dev: true - - /regexp.prototype.flags@1.4.3: - resolution: {integrity: sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.2 - define-properties: 1.1.4 - functions-have-names: 1.2.3 - dev: true - - /regexp.prototype.flags@1.5.0: - resolution: {integrity: sha512-0SutC3pNudRKgquxGoRGIz946MZVHqbNfPjBdxeOhBrdgDKlRoXmYLQN9xRbrR09ZXWeGAdPuif7egofn6v5LA==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - functions-have-names: 1.2.3 - dev: true - /regexparam@1.3.0: resolution: {integrity: sha512-6IQpFBv6e5vz1QAqI+V4k8P2e/3gRrqfCJ9FI+O1FLQTO+Uz6RXZEZOPmTJ6hlGj7gkERzY5BRCv09whKP96/g==} engines: {node: '>=6'} @@ -15122,12 +13514,6 @@ packages: rc: 1.2.8 dev: false - /regjsparser@0.10.0: - resolution: {integrity: sha512-qx+xQGZVsy55CH0a1hiVwHmqjLryfh7wQyF5HO07XJ9f7dQMY/gPQHhlyDkIzJKC+x2fUCpCcUODUUUFrm7SHA==} - dependencies: - jsesc: 0.5.0 - dev: true - /rehype-parse@9.0.1: resolution: {integrity: sha512-ksCzCD0Fgfh7trPDxr2rSylbwq9iYDkSn8TCDmEJ49ljEUBxDVCzCHv7QNzZOfODanX4+bWQ4WZqLCRWYLfhag==} dependencies: @@ -15308,6 +13694,7 @@ packages: /resolve-from@4.0.0: resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} engines: {node: '>=4'} + dev: false /resolve-from@5.0.0: resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==} @@ -15327,13 +13714,6 @@ packages: engines: {node: '>=10'} dev: true - /resolve@1.19.0: - resolution: {integrity: sha512-rArEXAgsBG4UgRGcynxWIWKFvh/XZCcS8UJdHhwy91zwAvCZIbcs+vAbflgBnNjYMs/i/i+/Ux6IZhML1yPvxg==} - dependencies: - is-core-module: 2.13.0 - path-parse: 1.0.7 - dev: true - /resolve@1.22.1: resolution: {integrity: sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==} dependencies: @@ -15357,14 +13737,6 @@ packages: path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 - /resolve@2.0.0-next.4: - resolution: {integrity: sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==} - dependencies: - is-core-module: 2.13.0 - path-parse: 1.0.7 - supports-preserve-symlinks-flag: 1.0.0 - dev: true - /responselike@2.0.1: resolution: {integrity: sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==} dependencies: @@ -15601,13 +13973,6 @@ packages: xml: 1.0.1 dev: true - /run-applescript@5.0.0: - resolution: {integrity: sha512-XcT5rBksx1QdIhlFOCtgZkB99ZEouFZ1E2Kc2LHqNW13U3/74YGdkQRmThTwxy4QIyookibDKYZOPqX//6BlAg==} - engines: {node: '>=12'} - dependencies: - execa: 5.1.1 - dev: true - /run-async@2.4.1: resolution: {integrity: sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==} engines: {node: '>=0.12.0'} @@ -15639,16 +14004,6 @@ packages: mri: 1.2.0 dev: true - /safe-array-concat@1.0.0: - resolution: {integrity: sha512-9dVEFruWIsnie89yym+xWTAYASdpw3CJV7Li/6zBewGf9z2i1j31rP6jnY0pHEO4QZh6N0K11bFjWmdR8UGdPQ==} - engines: {node: '>=0.4'} - dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.2.1 - has-symbols: 1.0.3 - isarray: 2.0.5 - dev: true - /safe-buffer@5.1.2: resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} dev: false @@ -15656,14 +14011,6 @@ packages: /safe-buffer@5.2.1: resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} - /safe-regex-test@1.0.0: - resolution: {integrity: sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==} - dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.1.3 - is-regex: 1.1.4 - dev: true - /safe-regex@1.1.0: resolution: {integrity: sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg==} dependencies: @@ -15698,11 +14045,6 @@ packages: extend-shallow: 2.0.1 kind-of: 6.0.3 - /semver@5.7.1: - resolution: {integrity: sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==} - hasBin: true - dev: true - /semver@6.3.1: resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} dev: true @@ -15873,14 +14215,6 @@ packages: '@types/hast': 3.0.4 dev: false - /side-channel@1.0.4: - resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==} - dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.1.3 - object-inspect: 1.12.2 - dev: true - /signal-exit@3.0.7: resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} @@ -16001,22 +14335,6 @@ packages: smart-buffer: 4.2.0 dev: false - /sort-object-keys@1.1.3: - resolution: {integrity: sha512-855pvK+VkU7PaKYPc+Jjnmt4EzejQHyhhF33q31qG8x7maDzkeFhAAThdCYay11CISO+qAMwjOBP+fPZe0IPyg==} - dev: true - - /sort-package-json@2.5.1: - resolution: {integrity: sha512-vx/KoZxm8YNMUqdlw7SGTfqR5pqZ/sUfgOuRtDILiOy/3AvzhAibyUe2cY3OpLs3oRSow9up4yLVtQaM24rbDQ==} - dependencies: - detect-indent: 7.0.1 - detect-newline: 4.0.0 - get-stdin: 9.0.0 - git-hooks-list: 3.1.0 - globby: 13.1.2 - is-plain-obj: 4.1.0 - sort-object-keys: 1.1.3 - dev: true - /source-map-js@1.2.1: resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} engines: {node: '>=0.10.0'} @@ -16067,28 +14385,6 @@ packages: resolution: {integrity: sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==} dev: false - /spdx-correct@3.1.1: - resolution: {integrity: sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==} - dependencies: - spdx-expression-parse: 3.0.1 - spdx-license-ids: 3.0.12 - dev: true - - /spdx-exceptions@2.3.0: - resolution: {integrity: sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==} - dev: true - - /spdx-expression-parse@3.0.1: - resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==} - dependencies: - spdx-exceptions: 2.3.0 - spdx-license-ids: 3.0.12 - dev: true - - /spdx-license-ids@3.0.12: - resolution: {integrity: sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==} - dev: true - /spellchecker-cli@6.2.0: resolution: {integrity: sha512-oWYwNYp2TVAhwUQ1D5FVLGrSkKjBht37X1UVFzbx9RwzkrXPrOq2tynUbxxx78LrTLtBro63UxuELK80QeTPoA==} dependencies: @@ -16210,44 +14506,6 @@ packages: strip-ansi: 7.1.0 dev: true - /string.prototype.matchall@4.0.8: - resolution: {integrity: sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==} - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.22.1 - get-intrinsic: 1.2.1 - has-symbols: 1.0.3 - internal-slot: 1.0.5 - regexp.prototype.flags: 1.5.0 - side-channel: 1.0.4 - dev: true - - /string.prototype.trim@1.2.7: - resolution: {integrity: sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.22.1 - dev: true - - /string.prototype.trimend@1.0.6: - resolution: {integrity: sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==} - dependencies: - call-bind: 1.0.2 - define-properties: 1.1.4 - es-abstract: 1.20.5 - dev: true - - /string.prototype.trimstart@1.0.6: - resolution: {integrity: sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==} - dependencies: - call-bind: 1.0.2 - define-properties: 1.1.4 - es-abstract: 1.20.5 - dev: true - /string_decoder@1.1.1: resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==} dependencies: @@ -16288,11 +14546,6 @@ packages: resolution: {integrity: sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==} engines: {node: '>=0.10.0'} - /strip-bom@3.0.0: - resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} - engines: {node: '>=4'} - dev: true - /strip-bom@4.0.0: resolution: {integrity: sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==} engines: {node: '>=8'} @@ -16312,13 +14565,6 @@ packages: engines: {node: '>=12'} dev: true - /strip-indent@3.0.0: - resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==} - engines: {node: '>=8'} - dependencies: - min-indent: 1.0.1 - dev: true - /strip-json-comments@2.0.1: resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==} engines: {node: '>=0.10.0'} @@ -16431,14 +14677,6 @@ packages: use-sync-external-store: 1.4.0(react@19.0.0) dev: false - /synckit@0.8.5: - resolution: {integrity: sha512-L1dapNV6vu2s/4Sputv8xGsCdAVlb5nRDMFU/E27D44l5U6cw1g0dGd45uLc+OXjNMmF4ntiMdCimzcjFKQI8Q==} - engines: {node: ^14.18.0 || >=16.0.0} - dependencies: - '@pkgr/utils': 2.4.2 - tslib: 2.6.1 - dev: true - /table-layout@0.4.5: resolution: {integrity: sha512-zTvf0mcggrGeTe/2jJ6ECkJHAQPIYEwDoqsiqBjI24mvRmQbInK5jq33fyypaCBxX08hMkfmdOqj6haT33EqWw==} engines: {node: '>=4.0.0'} @@ -16487,11 +14725,6 @@ packages: transitivePeerDependencies: - ts-node - /tapable@2.2.1: - resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} - engines: {node: '>=6'} - dev: true - /tar@6.1.13: resolution: {integrity: sha512-jdIBIN6LTIe2jqzay/2vtYLlBHa3JF42ot3h1dW8Q0PaAG4v8rm0cvpVePtau5C6OKXGGcgO9q2AMNSWxiLqKw==} engines: {node: '>=10'} @@ -16514,6 +14747,7 @@ packages: /text-table@0.2.0: resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} + dev: false /thenify-all@1.6.0: resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==} @@ -16564,11 +14798,6 @@ packages: tslib: 2.6.1 dev: true - /titleize@3.0.0: - resolution: {integrity: sha512-KxVu8EYHDPBdUYdKZdKtU2aj2XfEx9AfjXxE/Aj0vT06w2icA09Vus1rh6eSu1y01akYg6BjIK/hxyLJINoMLQ==} - engines: {node: '>=12'} - dev: true - /tmp@0.0.33: resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==} engines: {node: '>=0.6.0'} @@ -16650,18 +14879,48 @@ packages: /trough@2.2.0: resolution: {integrity: sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==} - /ts-api-utils@1.0.2(typescript@5.6.3): - resolution: {integrity: sha512-Cbu4nIqnEdd+THNEsBdkolnOXhg0I8XteoHaEKgvsxpsbWda4IsUut2c187HxywQCvveojow0Dgw/amxtSKVkQ==} - engines: {node: '>=16.13.0'} + /ts-interface-checker@0.1.13: + resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} + + /ts-jest@29.2.5(@babel/core@7.23.6)(esbuild@0.17.18)(jest@29.7.0)(typescript@5.5.4): + resolution: {integrity: sha512-KD8zB2aAZrcKIdGk4OwpJggeLcH1FgrICqDSROWqlnJXGCXK4Mn6FcdK2B6670Xr73lHMG1kHw8R87A0ecZ+vA==} + engines: {node: ^14.15.0 || ^16.10.0 || ^18.0.0 || >=20.0.0} + hasBin: true peerDependencies: - typescript: '>=4.2.0' + '@babel/core': '>=7.0.0-beta.0 <8' + '@jest/transform': ^29.0.0 + '@jest/types': ^29.0.0 + babel-jest: ^29.0.0 + esbuild: '*' + jest: ^29.0.0 + typescript: '>=4.3 <6' + peerDependenciesMeta: + '@babel/core': + optional: true + '@jest/transform': + optional: true + '@jest/types': + optional: true + babel-jest: + optional: true + esbuild: + optional: true dependencies: - typescript: 5.6.3 + '@babel/core': 7.23.6 + bs-logger: 0.2.6 + ejs: 3.1.10 + esbuild: 0.17.18 + fast-json-stable-stringify: 2.1.0 + jest: 29.7.0(@types/node@18.17.4) + jest-util: 29.7.0 + json5: 2.2.3 + lodash.memoize: 4.1.2 + make-error: 1.3.6 + semver: 7.6.3 + typescript: 5.5.4 + yargs-parser: 21.1.1 dev: true - /ts-interface-checker@0.1.13: - resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} - /ts-jest@29.2.5(@babel/core@7.26.10)(esbuild@0.14.49)(jest@29.7.0)(typescript@5.5.4): resolution: {integrity: sha512-KD8zB2aAZrcKIdGk4OwpJggeLcH1FgrICqDSROWqlnJXGCXK4Mn6FcdK2B6670Xr73lHMG1kHw8R87A0ecZ+vA==} engines: {node: ^14.15.0 || ^16.10.0 || ^18.0.0 || >=20.0.0} @@ -16823,15 +15082,6 @@ packages: v8-compile-cache-lib: 3.0.1 yn: 3.1.1 - /tsconfig-paths@3.14.2: - resolution: {integrity: sha512-o/9iXgCYc5L/JxCHPe3Hvh8Q/2xm5Z+p18PESBU6Ff33695QnCHBEjcytY2q19ua7Mbl/DavtBOLq+oG0RCL+g==} - dependencies: - '@types/json5': 0.0.29 - json5: 1.0.2 - minimist: 1.2.8 - strip-bom: 3.0.0 - dev: true - /tslib@1.14.1: resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} @@ -16916,16 +15166,6 @@ packages: - ts-node dev: true - /tsutils@3.21.0(typescript@5.6.3): - resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} - engines: {node: '>= 6'} - peerDependencies: - typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' - dependencies: - tslib: 1.14.1 - typescript: 5.6.3 - dev: true - /tsx@4.19.1: resolution: {integrity: sha512-0flMz1lh74BR4wOvBjuh9olbnwqCPc35OOlfyzHba0Dc+QNUeWX/Gq2YTbnwcWPO3BMd8fkzRVrHcsR+a7z7rA==} engines: {node: '>=18.0.0'} @@ -17005,6 +15245,7 @@ packages: engines: {node: '>= 0.8.0'} dependencies: prelude-ls: 1.2.1 + dev: false /type-detect@4.0.8: resolution: {integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==} @@ -17014,59 +15255,12 @@ packages: /type-fest@0.20.2: resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} engines: {node: '>=10'} + dev: false /type-fest@0.21.3: resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==} engines: {node: '>=10'} - /type-fest@0.6.0: - resolution: {integrity: sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==} - engines: {node: '>=8'} - dev: true - - /type-fest@0.8.1: - resolution: {integrity: sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==} - engines: {node: '>=8'} - dev: true - - /typed-array-buffer@1.0.0: - resolution: {integrity: sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.2.1 - is-typed-array: 1.1.12 - dev: true - - /typed-array-byte-length@1.0.0: - resolution: {integrity: sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.2 - for-each: 0.3.3 - has-proto: 1.0.1 - is-typed-array: 1.1.12 - dev: true - - /typed-array-byte-offset@1.0.0: - resolution: {integrity: sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==} - engines: {node: '>= 0.4'} - dependencies: - available-typed-arrays: 1.0.5 - call-bind: 1.0.2 - for-each: 0.3.3 - has-proto: 1.0.1 - is-typed-array: 1.1.12 - dev: true - - /typed-array-length@1.0.4: - resolution: {integrity: sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==} - dependencies: - call-bind: 1.0.2 - for-each: 0.3.3 - is-typed-array: 1.1.12 - dev: true - /typescript@5.5.4: resolution: {integrity: sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==} engines: {node: '>=14.17'} @@ -17092,15 +15286,6 @@ packages: requiresBuild: true optional: true - /unbox-primitive@1.0.2: - resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==} - dependencies: - call-bind: 1.0.2 - has-bigints: 1.0.2 - has-symbols: 1.0.3 - which-boxed-primitive: 1.0.2 - dev: true - /unc-path-regex@0.1.2: resolution: {integrity: sha512-eXL4nmJT7oCpkZsHZUOJo8hcX3GbsiDOa0Qu9F646fi8dT3XuSVopVqAcEiVzSKKH7UoDti23wNX3qGFxcW5Qg==} engines: {node: '>=0.10.0'} @@ -17297,11 +15482,6 @@ packages: isobject: 3.0.1 dev: false - /untildify@4.0.0: - resolution: {integrity: sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==} - engines: {node: '>=8'} - dev: true - /update-browserslist-db@1.1.0(browserslist@4.23.3): resolution: {integrity: sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ==} hasBin: true @@ -17357,6 +15537,7 @@ packages: resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} dependencies: punycode: 2.1.1 + dev: false /urix@0.1.0: resolution: {integrity: sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg==} @@ -17440,13 +15621,6 @@ packages: engines: {node: '>= 10.13.0'} dev: true - /validate-npm-package-license@3.0.4: - resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==} - dependencies: - spdx-correct: 3.1.1 - spdx-expression-parse: 3.0.1 - dev: true - /validate-npm-package-name@5.0.0: resolution: {integrity: sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -17919,54 +16093,6 @@ packages: webidl-conversions: 4.0.2 dev: true - /which-boxed-primitive@1.0.2: - resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==} - dependencies: - is-bigint: 1.0.4 - is-boolean-object: 1.1.2 - is-number-object: 1.0.7 - is-string: 1.0.7 - is-symbol: 1.0.4 - dev: true - - /which-builtin-type@1.1.3: - resolution: {integrity: sha512-YmjsSMDBYsM1CaFiayOVT06+KJeXf0o5M/CAd4o1lTadFAtacTUM49zoYxr/oroopFDfhvN6iEcBxUyc3gvKmw==} - engines: {node: '>= 0.4'} - dependencies: - function.prototype.name: 1.1.5 - has-tostringtag: 1.0.0 - is-async-function: 2.0.0 - is-date-object: 1.0.5 - is-finalizationregistry: 1.0.2 - is-generator-function: 1.0.10 - is-regex: 1.1.4 - is-weakref: 1.0.2 - isarray: 2.0.5 - which-boxed-primitive: 1.0.2 - which-collection: 1.0.1 - which-typed-array: 1.1.11 - dev: true - - /which-collection@1.0.1: - resolution: {integrity: sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==} - dependencies: - is-map: 2.0.2 - is-set: 2.0.2 - is-weakmap: 2.0.1 - is-weakset: 2.0.2 - dev: true - - /which-typed-array@1.1.11: - resolution: {integrity: sha512-qe9UWWpkeG5yzZ0tNYxDmd7vo58HDBc39mZ0xWWpolAGADdFOzkfamWLDxkOWcvHQKVmdTyQdLD4NOfjLWTKew==} - engines: {node: '>= 0.4'} - dependencies: - available-typed-arrays: 1.0.5 - call-bind: 1.0.2 - for-each: 0.3.3 - gopd: 1.0.1 - has-tostringtag: 1.0.0 - dev: true - /which@1.3.1: resolution: {integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==} dependencies: diff --git a/turbo.json b/turbo.json deleted file mode 100644 index e383cdb4a4bb6..0000000000000 --- a/turbo.json +++ /dev/null @@ -1,220 +0,0 @@ -{ - "$schema": "https://turborepo.com/schema.json", - "ui": "tui", - // The following are used by tools such as pnpm, gh actions to setup pnpm, etc. - "globalPassThroughEnv": [ - "Path", - "APPDATA", - "LOCALAPPDATA", - "TMPDIR", - "HOME", - "TMP", - "USERPROFILE", - "SCCACHE_GHA_ENABLED", - "SCCACHE_BUCKET", - "SCCACHE_REGION", - "AWS_ACCESS_KEY_ID", - "AWS_SECRET_ACCESS_KEY", - "RUSTC_WRAPPER", - "CARGO_INCREMENTAL", - "ACTIONS_CACHE_URL", - "ACTIONS_RUNTIME_TOKEN" - ], - // This is probably overkill, but we do things per-platform often enough that we should segment - // everything by OS and RUNNER_OS. This will segment between GH actions and everything else for now. - "globalEnv": ["OS", "RUNNER_OS"], - "tasks": { - "test": { - "outputs": ["coverage/**/*"], - - "env": ["NODE_VERSION"], - - // ^build is generically set here, we haven't fully enumerated which workspaces - // actually need to build before running tests. - "dependsOn": ["^build"] - }, - - // run prettier check before eslint - "lint": { - "dependsOn": ["lint:prettier", "^build"] - }, - - // root lint task runs toml check - "//#lint": { - "dependsOn": ["//#check:toml"] - }, - - // run lint:prettier in all workspaces - "lint:prettier": { - "inputs": [ - "**/*.4DForm", - "**/*.4DProject", - "**/*.JSON-tmLanguage", - "**/*._js", - "**/*.avsc", - "**/*.bones", - "**/*.cjs", - "**/*.code-snippets", - "**/*.component.html", - "**/*.css", - "**/*.cts", - "**/*.es", - "**/*.es6", - "**/*.frag", - "**/*.geojson", - "**/*.gltf", - "**/*.gql", - "**/*.graphql", - "**/*.graphqls", - "**/*.gs", - "**/*.handlebars", - "**/*.har", - "**/*.hbs", - "**/*.hta", - "**/*.htm", - "**/*.html", - "**/*.html.hl", - "**/*.ice", - "**/*.importmap", - "**/*.inc", - "**/*.jake", - "**/*.javascript", - "**/*.js", - "**/*.js.flow", - "**/*.jsb", - "**/*.jscad", - "**/*.jsfl", - "**/*.jslib", - "**/*.jsm", - "**/*.json", - "**/*.json5", - "**/*.jsonc", - "**/*.jspre", - "**/*.jss", - "**/*.jsx", - "**/*.less", - "**/*.livemd", - "**/*.markdown", - "**/*.mcmeta", - "**/*.md", - "**/*.mdown", - "**/*.mdwn", - "**/*.mdx", - "**/*.mir", - "**/*.mjml", - "**/*.mjs", - "**/*.mkd", - "**/*.mkdn", - "**/*.mkdown", - "**/*.mts", - "**/*.njs", - "**/*.pac", - "**/*.pcss", - "**/*.postcss", - "**/*.reek", - "**/*.ronn", - "**/*.rviz", - "**/*.scd", - "**/*.scss", - "**/*.sjs", - "**/*.ssjs", - "**/*.sublime-build", - "**/*.sublime-commands", - "**/*.sublime-completions", - "**/*.sublime-keymap", - "**/*.sublime-macro", - "**/*.sublime-menu", - "**/*.sublime-mousemap", - "**/*.sublime-project", - "**/*.sublime-settings", - "**/*.sublime-syntax", - "**/*.sublime-theme", - "**/*.sublime-workspace", - "**/*.sublime_metrics", - "**/*.sublime_session", - "**/*.syntax", - "**/*.tfstate", - "**/*.tfstate.backup", - "**/*.topojson", - "**/*.ts", - "**/*.tsx", - "**/*.vue", - "**/*.webapp", - "**/*.webmanifest", - "**/*.workbook", - "**/*.wxs", - "**/*.wxss", - "**/*.xht", - "**/*.xhtml", - "**/*.xsjs", - "**/*.xsjslib", - "**/*.yaml", - "**/*.yaml-tmlanguage", - "**/*.yaml.sed", - "**/*.yml", - "**/*.yml.mysql", - "**/*.yy", - "**/*.yyp", - "**/*.arcconfig", - "**/*.auto-changelog", - "**/*.babelrc", - "**/*.c8rc", - "**/*.clang-format", - "**/*.clang-tidy", - "**/*.devcontainer.json", - "**/*.eslintrc", - "**/*.eslintrc.json", - "**/*.gemrc", - "**/*.htmlhintrc", - "**/*.imgbotconfig", - "**/*.jscsrc", - "**/*.jshintrc", - "**/*.jslintrc", - "**/*.lintstagedrc", - "**/*.nycrc", - "**/*.prettierrc", - "**/*.stylelintrc", - "**/*.swcrc", - "**/*.tern-config", - "**/*.tern-project", - "**/*.watchmanconfig", - "**/*CITATION.cff", - "**/*Jakefile", - "**/*Pipfile.lock", - "**/*README", - "**/*api-extractor.json", - "**/*composer.json", - "**/*composer.lock", - "**/*contents.lr", - "**/*devcontainer.json", - "**/*glide.lock", - "**/*jsconfig.json", - "**/*language-configuration.json", - "**/*mcmod.info", - "**/*package-lock.json", - "**/*package.json", - "**/*tsconfig.json", - "**/*tslint.json" - ] - }, - "//#check:toml": {}, - "check-types": { - "dependsOn": ["^build"] - }, - "//#build:ts": { - "outputs": ["packages/**/dist"] - }, - "build:ts": { - "outputs": ["dist/**/*"] - }, - "build": { - "outputs": ["dist/**/*", ".next/**/*"], - "dependsOn": ["^build"] - }, - // This is a synthetic tasks that lets us pull in other workspaces as dependencies - // So changes in internal workspaces that we depend on, will trigger this task. - "topo": { - "dependsOn": ["^topo"] - } - } -} diff --git a/turbo.jsonc b/turbo.jsonc new file mode 100644 index 0000000000000..99398dca407f3 --- /dev/null +++ b/turbo.jsonc @@ -0,0 +1,60 @@ +{ + "$schema": "https://turborepo.com/schema.json", + "ui": "tui", + // The following are used by tools such as pnpm, gh actions to setup pnpm, etc. + "globalPassThroughEnv": [ + "Path", + "APPDATA", + "LOCALAPPDATA", + "TMPDIR", + "HOME", + "TMP", + "USERPROFILE", + "SCCACHE_GHA_ENABLED", + "SCCACHE_BUCKET", + "SCCACHE_REGION", + "AWS_ACCESS_KEY_ID", + "AWS_SECRET_ACCESS_KEY", + "RUSTC_WRAPPER", + "CARGO_INCREMENTAL", + "ACTIONS_CACHE_URL", + "ACTIONS_RUNTIME_TOKEN", + ], + // This is probably overkill, but we do things per-platform often enough that we should segment + // everything by OS and RUNNER_OS. This will segment between GH actions and everything else for now. + "globalEnv": ["OS", "RUNNER_OS"], + "tasks": { + "test": { + "outputs": ["coverage/**/*"], + + "env": ["NODE_VERSION"], + + // ^build is generically set here, we haven't fully enumerated which workspaces + // actually need to build before running tests. + "dependsOn": ["^build"], + }, + "//#lint": { + "dependsOn": ["//#format", "//#check:toml"], + }, + "//#format": {}, + "//#check:toml": {}, + "check-types": { + "dependsOn": ["^build", "topo"], + }, + "//#build:ts": { + "outputs": ["packages/**/dist"], + }, + "build:ts": { + "outputs": ["dist/**/*"], + }, + "build": { + "outputs": ["dist/**/*", ".next/**/*"], + "dependsOn": ["^build"], + }, + // This is a synthetic tasks that lets us pull in other workspaces as dependencies + // So changes in internal workspaces that we depend on, will trigger this task. + "topo": { + "dependsOn": ["^topo"], + }, + }, +}