create-agentic-monorepo 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/template.json ADDED
@@ -0,0 +1 @@
1
+ {"formatVersion":1,"creatorVersion":"0.1.0","digest":"sha256:f8f50656f030765e26c65c98c869b7e61fee9eabf202155151bb23a4fd717205","files":[{"path":".editorconfig","mode":420,"text":"root = true\n\n[*]\ncharset = utf-8\nend_of_line = lf\ninsert_final_newline = true\ntrim_trailing_whitespace = true\nindent_style = space\nindent_size = 2\n\n[*.{swift,rs}]\nindent_size = 4\n"},{"path":".github/dependabot.yml","mode":420,"text":"version: 2\nupdates:\n - package-ecosystem: \"npm\"\n directory: \"/\"\n schedule:\n interval: \"weekly\"\n"},{"path":".github/workflows/ci.yml","mode":420,"text":"name: ci\n\non:\n push:\n branches: [main]\n pull_request:\n\njobs:\n creator-smoke:\n name: creator-smoke (${{ matrix.os }}, Node ${{ matrix.node }})\n runs-on: ${{ matrix.os }}\n strategy:\n fail-fast: false\n matrix:\n include:\n - { os: ubuntu-latest, node: \"22.13.0\" }\n - { os: windows-latest, node: \"22.13.0\" }\n - { os: macos-latest, node: \"22.13.0\" }\n - { os: ubuntu-latest, node: \"24.x\" }\n steps:\n - id: checkout\n uses: actions/checkout@v4\n - id: setup-pnpm\n uses: pnpm/action-setup@v4\n - id: setup-node\n uses: actions/setup-node@v4\n with:\n node-version: ${{ matrix.node }}\n cache: pnpm\n - id: install-dependencies\n run: pnpm install --frozen-lockfile\n - id: build-domain\n run: pnpm --dir libs/domains/scaffolding build\n - id: build-node-adapter\n run: pnpm --dir libs/platform/node/scaffolding build\n - id: build-creator\n run: pnpm --dir apps/cli/create-agentic-monorepo build\n - id: smoke-creator\n run: node tools/smoke-create-agentic-monorepo.mjs --mode portable\n\n verify:\n needs: creator-smoke\n if: ${{ always() }}\n runs-on: macos-latest\n steps:\n - id: creator-smoke-gate\n run: test \"${{ needs.creator-smoke.result }}\" = success\n - id: checkout\n uses: actions/checkout@v4\n - id: setup-pnpm\n uses: pnpm/action-setup@v4\n - id: setup-node\n uses: actions/setup-node@v4\n with:\n node-version: 22.13.0\n cache: pnpm\n - id: setup-swiftlint\n run: brew install swiftlint\n - id: reset-rust\n run: rustup toolchain uninstall 1.97.1 1.97.1-aarch64-apple-darwin || true\n - id: repair-rust-cache\n run: rm -rf \"$HOME/.rustup/toolchains/1.97.1-aarch64-apple-darwin\"\n - id: setup-rust\n run: rustup toolchain install 1.97.1 --profile minimal --component clippy --component rustfmt\n - id: install-dependencies\n run: pnpm install --frozen-lockfile\n - id: verify-workspace\n run: pnpm nx run-many -t typecheck build test lint\n - id: check-format\n run: pnpm format:check\n - id: smoke-generated-native\n run: node tools/smoke-create-agentic-monorepo.mjs --mode native\n - id: smoke-generated-dev\n run: node tools/smoke-create-agentic-monorepo.mjs --mode dev\n"},{"path":".gitignore","mode":420,"text":"node_modules/\ndist/\n.nx/\ntarget/\n.build/\n.swiftpm/\n.DS_Store\n"},{"path":".npmrc","mode":420,"text":"engine-strict=true\nsave-exact=true\n"},{"path":".oxfmtrc.json","mode":420,"text":"{\n \"printWidth\": 100,\n \"sortImports\": {}\n}\n"},{"path":".oxlintrc.json","mode":420,"text":"{\n \"$schema\": \"./node_modules/oxlint/configuration_schema.json\",\n \"plugins\": [\"typescript\", \"oxc\", \"import\", \"promise\", \"unicorn\", \"vitest\"],\n \"options\": {\n \"typeAware\": true\n },\n \"categories\": {\n \"correctness\": \"error\",\n \"suspicious\": \"error\",\n \"perf\": \"error\",\n \"pedantic\": \"error\",\n \"style\": \"error\"\n },\n \"rules\": {\n \"no-restricted-imports\": [\n \"error\",\n {\n \"patterns\": [\n {\n \"group\": [\"**/libs/**\", \"**/apps/**\"],\n \"message\": \"Import workspace projects by package name\"\n }\n ]\n }\n ],\n \"typescript/consistent-type-definitions\": [\"error\", \"type\"],\n \"typescript/prefer-readonly-parameter-types\": \"off\",\n \"typescript/prefer-nullish-coalescing\": \"off\",\n \"func-style\": [\"error\", \"declaration\"],\n \"no-ternary\": \"error\",\n \"unicorn/prefer-ternary\": \"off\",\n \"no-else-return\": \"off\",\n \"max-depth\": [\"error\", 3],\n \"max-lines-per-function\": [\"error\", 15],\n \"max-params\": [\"error\", 4],\n \"sort-imports\": \"off\",\n \"import/consistent-type-specifier-style\": [\"error\", \"prefer-inline\"],\n \"import/no-named-export\": \"off\",\n \"import/prefer-default-export\": \"off\",\n \"import/exports-last\": \"off\",\n \"sort-keys\": \"off\",\n \"one-var\": \"off\",\n \"vitest/prefer-expect-assertions\": \"off\",\n \"vitest/require-top-level-describe\": \"off\",\n \"vitest/no-importing-vitest-globals\": \"off\",\n \"vitest/require-hook\": \"off\"\n },\n \"overrides\": [\n {\n \"files\": [\"**/*.test.ts\"],\n \"rules\": {\n \"no-magic-numbers\": \"off\"\n }\n },\n {\n \"files\": [\"apps/cli/**\"],\n \"rules\": {\n \"import/no-nodejs-modules\": \"off\"\n }\n },\n {\n \"files\": [\"tools/**\"],\n \"rules\": {\n \"import/no-nodejs-modules\": \"off\",\n \"no-magic-numbers\": \"off\",\n \"typescript/no-unsafe-assignment\": \"off\",\n \"typescript/no-unsafe-argument\": \"off\",\n \"typescript/no-unsafe-call\": \"off\",\n \"typescript/no-unsafe-member-access\": \"off\",\n \"typescript/no-unsafe-return\": \"off\",\n \"typescript/strict-boolean-expressions\": \"off\"\n }\n }\n ],\n \"ignorePatterns\": [\"**/dist\", \"**/node_modules\", \"**/target\", \"**/.build\"]\n}\n"},{"path":".swift-format","mode":420,"text":"{\n \"version\": 1,\n \"lineLength\": 120,\n \"indentation\": {\n \"spaces\": 4\n },\n \"rules\": {\n \"NeverForceUnwrap\": true,\n \"NeverUseForceTry\": true,\n \"NeverUseImplicitlyUnwrappedOptionals\": true\n }\n}\n"},{"path":".swiftlint.yml","mode":420,"text":"disabled_rules:\n - trailing_comma\n - line_length\n\nopt_in_rules:\n - closure_spacing\n - contains_over_filter_count\n - contains_over_filter_is_empty\n - contains_over_first_not_nil\n - contains_over_range_nil_comparison\n - empty_collection_literal\n - empty_count\n - empty_string\n - fatal_error_message\n - first_where\n - force_unwrapping\n - identical_operands\n - implicitly_unwrapped_optional\n - joined_default_parameter\n - last_where\n - legacy_multiple\n - modifier_order\n - multiline_arguments\n - multiline_parameters\n - operator_usage_whitespace\n - overridden_super_call\n - prefer_self_type_over_type_of_self\n - prohibited_super_call\n - redundant_nil_coalescing\n - redundant_type_annotation\n - reduce_into\n - sorted_imports\n - static_operator\n - toggle_bool\n - unavailable_function\n - unneeded_parentheses_in_closure_argument\n - unowned_variable_capture\n - untyped_error_in_catch\n - vertical_whitespace_closing_braces\n - vertical_whitespace_opening_braces\n - weak_delegate\n - yoda_condition\n"},{"path":"apps/cli/example-app/package.json","mode":420,"text":"{\n \"name\": \"cli-example-app\",\n \"version\": \"0.1.0\",\n \"private\": true,\n \"type\": \"module\",\n \"scripts\": {\n \"build\": \"tsdown\",\n \"typecheck\": \"tsc\",\n \"start\": \"node dist/main.mjs\",\n \"test\": \"vitest run\",\n \"lint\": \"oxlint --config ../../../.oxlintrc.json .\"\n },\n \"dependencies\": {\n \"@domains/search\": \"workspace:*\"\n },\n \"nx\": {\n \"tags\": [\n \"type:app\",\n \"platform:cli\",\n \"lang:ts\"\n ]\n }\n}\n"},{"path":"apps/cli/example-app/README.md","mode":420,"text":"# CLI Example App\n\nMinimal command line application in TypeScript. It composes domain libraries and owns no reusable logic.\n\n- Build with `pnpm nx run cli-example-app:build`\n- Run with `pnpm nx run cli-example-app:start -- your query`\n- Typecheck with `pnpm nx run cli-example-app:typecheck`\n- Test with `pnpm nx run cli-example-app:test`\n- Lint with `pnpm nx run cli-example-app:lint`\n\nLint runs `oxlint` with type aware rules from the root `.oxlintrc.json`.\n"},{"path":"apps/cli/example-app/src/main.ts","mode":420,"text":"import { formatSearchReport } from \"./search-report.js\";\n\nconst firstQueryArgumentIndex = 2;\nconst rawText = process.argv.slice(firstQueryArgumentIndex).join(\" \");\nconst report = formatSearchReport(rawText);\nconsole.log(report);\n"},{"path":"apps/cli/example-app/src/search-report.test.ts","mode":420,"text":"import { expect, test } from \"vitest\";\n\nimport { formatSearchReport } from \"./search-report.js\";\n\ntest(\"starts the report with the parsed query\", () => {\n const report = formatSearchReport(\" Example Query \");\n const lines = report.split(\"\\n\");\n expect(lines[0]).toBe('Search report for \"example query\"');\n});\n\ntest(\"lists results in ranked order\", () => {\n const report = formatSearchReport(\"example\");\n const lines = report.split(\"\\n\");\n expect(lines[1]).toBe(\"Second sample result\");\n expect(lines[2]).toBe(\"First sample result\");\n});\n"},{"path":"apps/cli/example-app/src/search-report.ts","mode":420,"text":"import { type SearchResult, parseQuery, rankResults } from \"@domains/search\";\n\nexport function formatSearchReport(rawText: string): string {\n const query = parseQuery(rawText);\n const first: SearchResult = { title: \"First sample result\", score: 0.4 };\n const second: SearchResult = { title: \"Second sample result\", score: 0.9 };\n const ranked = rankResults([first, second]);\n const titles = ranked.map((result) => resultTitle(result));\n const lines = [`Search report for \"${query.text}\"`, ...titles];\n return lines.join(\"\\n\");\n}\n\nfunction resultTitle(result: SearchResult): string {\n return result.title;\n}\n"},{"path":"apps/cli/example-app/tsconfig.json","mode":420,"text":"{\n \"extends\": \"../../../tsconfig.base.json\",\n \"compilerOptions\": {\n \"module\": \"nodenext\",\n \"moduleResolution\": \"nodenext\",\n \"types\": [\"node\"],\n \"noEmit\": true\n },\n \"include\": [\"src\"]\n}\n"},{"path":"apps/cli/example-app/tsdown.config.ts","mode":420,"text":"import { defineConfig } from \"tsdown\";\n\nexport default defineConfig({\n entry: [\"src/main.ts\"],\n format: [\"esm\"],\n dts: false,\n});\n"},{"path":"apps/mac/example-app/Package.swift","mode":420,"text":"// swift-tools-version: 6.0\nimport PackageDescription\n\nlet strictSwiftSettings: [SwiftSetting] = [\n .enableUpcomingFeature(\"ExistentialAny\"),\n .enableUpcomingFeature(\"InternalImportsByDefault\"),\n .enableUpcomingFeature(\"MemberImportVisibility\"),\n]\n\nlet package = Package(\n name: \"MacExampleApp\",\n platforms: [\n .macOS(.v14)\n ],\n dependencies: [\n .package(path: \"../../../libs/platform/mac/filesystem\")\n ],\n targets: [\n .executableTarget(\n name: \"MacExampleApp\",\n dependencies: [\n .product(name: \"MacFilesystem\", package: \"filesystem\")\n ],\n swiftSettings: strictSwiftSettings\n )\n ]\n)\n"},{"path":"apps/mac/example-app/project.json","mode":420,"text":"{\n \"$schema\": \"../../../node_modules/nx/schemas/project-schema.json\",\n \"name\": \"mac-example-app\",\n \"projectType\": \"application\",\n \"tags\": [\"type:app\", \"platform:mac\", \"lang:swift\"],\n \"implicitDependencies\": [\"mac-filesystem\"],\n \"targets\": {\n \"build\": {\n \"executor\": \"nx:run-commands\",\n \"cache\": false,\n \"options\": {\n \"command\": \"swift build\",\n \"cwd\": \"apps/mac/example-app\"\n }\n },\n \"run\": {\n \"executor\": \"nx:run-commands\",\n \"options\": {\n \"command\": \"swift run\",\n \"cwd\": \"apps/mac/example-app\"\n }\n },\n \"lint\": {\n \"executor\": \"nx:run-commands\",\n \"dependsOn\": [],\n \"inputs\": [\"default\", \"{workspaceRoot}/.swift-format\", \"{workspaceRoot}/.swiftlint.yml\"],\n \"options\": {\n \"commands\": [\n \"swift format lint --strict --parallel --recursive Sources Package.swift\",\n \"../../../tools/swiftlint.sh lint --strict --quiet --config ../../../.swiftlint.yml Sources Package.swift\"\n ],\n \"parallel\": false,\n \"cwd\": \"apps/mac/example-app\"\n }\n },\n \"format\": {\n \"executor\": \"nx:run-commands\",\n \"cache\": false,\n \"options\": {\n \"commands\": [\n \"swift format --in-place --parallel --recursive Sources Package.swift\",\n \"../../../tools/swiftlint.sh --fix --quiet --config ../../../.swiftlint.yml Sources Package.swift\"\n ],\n \"parallel\": false,\n \"cwd\": \"apps/mac/example-app\"\n }\n }\n }\n}\n"},{"path":"apps/mac/example-app/README.md","mode":420,"text":"# Mac Example App\n\nNative macOS application in Swift and SwiftUI. It composes platform libraries and owns no reusable logic.\n\n- Build with `pnpm nx run mac-example-app:build`\n- Run with `pnpm nx run mac-example-app:run`\n- Lint with `pnpm nx run mac-example-app:lint`\n- Format with `pnpm nx run mac-example-app:format`\n\nBuilds in Swift 6 language mode with strict upcoming features enabled in `Package.swift`. Lint runs `swift format lint --strict` and SwiftLint `--strict` without compiling.\n"},{"path":"apps/mac/example-app/Sources/MacExampleApp/ContentView.swift","mode":420,"text":"import MacFilesystem\nimport SwiftUI\n\nstruct ContentView: View {\n private let supportDirectory = MacFilesystem.applicationSupportDirectory(appName: \"MacExampleApp\")\n\n var body: some View {\n VStack(alignment: .leading, spacing: 8) {\n Text(\"Mac Example App\")\n .font(.title)\n Text(supportDirectory.path)\n .font(.body)\n }\n .padding()\n .frame(minWidth: 480, minHeight: 160)\n }\n}\n"},{"path":"apps/mac/example-app/Sources/MacExampleApp/MacExampleApp.swift","mode":420,"text":"import SwiftUI\n\n@main\nstruct MacExampleApplication: App {\n var body: some Scene {\n WindowGroup {\n ContentView()\n }\n }\n}\n"},{"path":"apps/web/example-app/index.html","mode":420,"text":"<!doctype html>\n<html lang=\"en\">\n <head>\n <meta charset=\"utf-8\" />\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\" />\n <title>Web Example App</title>\n </head>\n <body>\n <main id=\"app\"></main>\n <script type=\"module\" src=\"/src/main.ts\"></script>\n </body>\n</html>\n"},{"path":"apps/web/example-app/package.json","mode":420,"text":"{\n \"name\": \"web-example-app\",\n \"version\": \"0.1.0\",\n \"private\": true,\n \"type\": \"module\",\n \"scripts\": {\n \"dev\": \"vite\",\n \"build\": \"vite build\",\n \"typecheck\": \"tsc\",\n \"preview\": \"vite preview\",\n \"test\": \"vitest run\",\n \"lint\": \"oxlint --config ../../../.oxlintrc.json .\"\n },\n \"dependencies\": {\n \"@domains/search\": \"workspace:*\"\n },\n \"nx\": {\n \"tags\": [\n \"type:app\",\n \"platform:web\",\n \"lang:ts\"\n ]\n }\n}\n"},{"path":"apps/web/example-app/README.md","mode":420,"text":"# Web Example App\n\nMinimal web application in TypeScript with Vite. It composes domain libraries and owns no reusable logic.\n\n- Develop with `pnpm nx run web-example-app:dev`\n- Build with `pnpm nx run web-example-app:build`\n- Typecheck with `pnpm nx run web-example-app:typecheck`\n- Test with `pnpm nx run web-example-app:test`\n- Lint with `pnpm nx run web-example-app:lint`\n\nLint runs `oxlint` with type aware rules from the root `.oxlintrc.json`.\n"},{"path":"apps/web/example-app/src/main.ts","mode":420,"text":"import { buildSearchPreview } from \"./search-preview\";\n\nconst mount = document.querySelector(\"#app\");\nif (mount instanceof HTMLElement) {\n const preview = buildSearchPreview(\"Example Query\");\n const heading = document.createElement(\"h1\");\n heading.textContent = preview.heading;\n const list = document.createElement(\"ul\");\n for (const title of preview.resultTitles) {\n const item = document.createElement(\"li\");\n item.textContent = title;\n list.append(item);\n }\n mount.append(heading);\n mount.append(list);\n}\n"},{"path":"apps/web/example-app/src/search-preview.test.ts","mode":420,"text":"import { expect, test } from \"vitest\";\n\nimport { buildSearchPreview } from \"./search-preview\";\n\ntest(\"builds a heading for the parsed query\", () => {\n const preview = buildSearchPreview(\" Example Query \");\n expect(preview.heading).toBe('Search preview for \"example query\"');\n});\n\ntest(\"lists result titles in ranked order\", () => {\n const preview = buildSearchPreview(\"example\");\n expect(preview.resultTitles).toStrictEqual([\"Second sample result\", \"First sample result\"]);\n});\n"},{"path":"apps/web/example-app/src/search-preview.ts","mode":420,"text":"import { type SearchResult, parseQuery, rankResults } from \"@domains/search\";\n\nexport type SearchPreview = {\n readonly heading: string;\n readonly resultTitles: readonly string[];\n};\n\nexport function buildSearchPreview(rawText: string): SearchPreview {\n const query = parseQuery(rawText);\n const first: SearchResult = { title: \"First sample result\", score: 0.4 };\n const second: SearchResult = { title: \"Second sample result\", score: 0.9 };\n const ranked = rankResults([first, second]);\n const resultTitles = ranked.map((result) => resultTitle(result));\n const heading = `Search preview for \"${query.text}\"`;\n return { heading, resultTitles };\n}\n\nfunction resultTitle(result: SearchResult): string {\n return result.title;\n}\n"},{"path":"apps/web/example-app/tsconfig.json","mode":420,"text":"{\n \"extends\": \"../../../tsconfig.base.json\",\n \"compilerOptions\": {\n \"module\": \"esnext\",\n \"moduleResolution\": \"bundler\",\n \"lib\": [\"es2022\", \"dom\"],\n \"noEmit\": true\n },\n \"include\": [\"src\"]\n}\n"},{"path":"docs/architecture.md","mode":420,"text":"# Architecture\n\n## Placement\n\n- Business logic for a domain lives in `libs/domains/<domain>`.\n- Wrappers around platform APIs live in `libs/platform/<platform>/<capability>`.\n- Persistence and networking live in `libs/infrastructure/<capability>`.\n- Pure Rust cores live in `libs/rust/<crate>`. Binding crates live beside their core at `libs/rust/<crate>-<ecosystem>`.\n- Repo tooling lives in `tools`.\n- Apps compose libraries. They own no reusable business logic.\n\n## Layer purposes\n\n- A domain holds business logic in plain TypeScript. It defines data and operations, not outside-world access.\n- A platform library wraps one operating-system capability for one target.\n- An infrastructure library adapts persistence or networking and may be shared across platforms.\n- An app composes domain, platform, infrastructure, and binding libraries. It owns no reusable logic.\n\n## Tags\n\nEvery project declares tags. TypeScript projects declare them in the `nx` field of `package.json`. Swift and Rust projects declare them in `project.json`.\n\n- Exactly one recognized type tag is required: `type:app`, `type:domain`, `type:platform`, `type:infrastructure`, `type:rust`, or `type:binding`.\n- `domain:<name>` marks business ownership. Rust cores retain their domain tag and may depend only on Rust cores in the same domain.\n- `platform:<name>` marks the platform a project targets.\n- `lang:<name>` marks the implementation language.\n\n## Dependency rules\n\n- Apps may depend on domain, platform, infrastructure, and binding libraries.\n- Domain libraries may depend only on domain libraries and bindings in their own domain.\n- Infrastructure libraries may depend on infrastructure, platform, and domain libraries.\n- Rust cores may depend only on same-domain Rust cores.\n- Bindings are Rust projects and may depend only on Rust cores.\n- A `domain:<name>` project may depend only on projects with the same domain tag.\n- Nothing depends on an app.\n\n`tools/check-boundaries.mjs` enforces these rules for every project by reading the Nx graph and project tags. It uses a per-run temporary graph directory and removes it in `finally`, so concurrent checks do not share `.nx/boundaries-graph.json`. It also checks binding ecosystem/language compatibility, scans every Cargo dependency table for FFI crates, and checks TypeScript domain runtime manifests. TypeScript domain `dependencies`, `optionalDependencies`, and `peerDependencies` must use any `workspace:` protocol; `devDependencies` and bundled-dependency metadata are out of scope.\n\n## Tool rules\n\nThese principles govern every configurable tool in this repo. Apply them to any tool added later.\n\n- Every check is `error` or `off`. A warning that does not fail the task is noise an agent pays tokens to read and a human learns to ignore.\n- One tool owns each failure class. A duplicated diagnostic is paid twice. `oxfmt` owns TypeScript formatting and import order. `oxlint` owns TypeScript semantics and unused code. `tsc` owns types. `swift format` owns Swift formatting. SwiftLint owns Swift semantics. `rustfmt` owns Rust formatting. `clippy` owns Rust semantics. The graph checker owns boundaries.\n- Autofix over report. A violation the formatter fixes itself costs zero tokens. Sorting and layout belong to formatters and never to linters.\n- A rule earns `error` when the failure it prevents costs more than the ceremony it demands. Rules that force boilerplate get turned off by name in the config so every deviation stays visible and deliberate.\n- Prefer tool defaults over custom style. Models are trained on default formatted code. Every custom style choice turns generation into correction.\n- Code shape is enforced mechanically. `max-depth` and `max-lines-per-function` and `max-params` keep every function small enough to read in one pass.\n\n## Decisions\n\n- Each language uses its native toolchain. Nx only discovers projects and runs and caches tasks.\n- Swift and Rust builds are not Nx cached. Their toolchains own incremental builds. Their tests are Nx cached.\n- TypeScript projects link through pnpm workspace packages. The `exports` field keeps each public API small.\n- TypeScript 7 owns type checking through each project's `typecheck` target. Its declaration emit is not production ready yet so `tsdown` owns library emit on the Rolldown and Oxc engine.\n- `oxlint` with `oxlint-tsgolint` owns linting. Type aware rules run on the TypeScript 7 native engine. Boundary enforcement moved to the graph checker because no oxc tool ships an Nx boundary rule.\n- `rust-toolchain.toml` pins Rust to `1.97.1` and provides `clippy` and `rustfmt`.\n- `minimumReleaseAge: 2880` in `pnpm-workspace.yaml` keeps versions younger than 48 hours out of resolution. Supply chain attacks are usually caught within that window.\n- SwiftPM in Swift 6.1 has no safe warnings as errors setting. Swift strictness comes from Swift 6 language mode plus upcoming feature flags in each `Package.swift`.\n- Swift lint uses `swift format lint --strict` from the bundled toolchain. It is compile free and shares the root `.swift-format` config across apps and libs. `unsafeFlags` and build plugins were rejected. The first breaks package consumption and the second slows every build.\n- Shared logic across languages lives in a pure Rust core. Each language reaches it through a thin binding crate tagged `type:binding`, `lang:rust`, and exactly one of `binding:node` or `binding:swift`.\n- Runtime targets `dev`, `serve`, `preview`, `start`, and `run` are gated on builds through root `targetDefaults`, so a development server never starts against unbuilt workspace dependencies.\n- Node bindings use `lang:ts` consumers; Swift bindings use `lang:swift` consumers. Bindings are the only language-crossing edge.\n- Pure Rust cores must remain FFI-free across normal, build, dev, and target-specific dependency tables. FFI crates such as `napi*` and `uniffi*` belong in bindings.\n- Bundled-dependency metadata is intentionally out of scope; this checker enforces declared manifest dependencies only.\n- SwiftLint adds semantic rules on top and comes from Homebrew rather than the repo. Lint calls go through `tools/swiftlint.sh`. The wrapper points SwiftLint at the Command Line Tools SourceKit when no full Xcode is selected.\n- `swift format` owns Swift formatting. SwiftLint rules that fight it get disabled in `.swiftlint.yml`. `trailing_comma` was the first.\n"},{"path":"libs/domains/search/package.json","mode":420,"text":"{\n \"name\": \"@domains/search\",\n \"version\": \"0.1.0\",\n \"private\": true,\n \"type\": \"module\",\n \"exports\": {\n \".\": {\n \"types\": \"./dist/index.d.mts\",\n \"default\": \"./dist/index.mjs\"\n }\n },\n \"scripts\": {\n \"build\": \"tsdown\",\n \"typecheck\": \"tsc\",\n \"test\": \"vitest run\",\n \"lint\": \"oxlint --config ../../../.oxlintrc.json .\"\n },\n \"nx\": {\n \"tags\": [\n \"type:domain\",\n \"domain:search\",\n \"lang:ts\"\n ]\n }\n}\n"},{"path":"libs/domains/search/README.md","mode":420,"text":"# Search Domain\n\nOwns search queries and result ranking. Pure TypeScript with no platform or UI dependencies. The public API is `src/index.ts`.\n\n- Build with `pnpm nx run @domains/search:build`\n- Typecheck with `pnpm nx run @domains/search:typecheck`\n- Test with `pnpm nx run @domains/search:test`\n- Lint with `pnpm nx run @domains/search:lint`\n\nLint runs `oxlint` with type aware rules from the root `.oxlintrc.json`.\n"},{"path":"libs/domains/search/src/index.ts","mode":420,"text":"export { parseQuery } from \"./query.js\";\nexport type { SearchQuery } from \"./query.js\";\nexport { rankResults } from \"./results.js\";\nexport type { SearchResult } from \"./results.js\";\n"},{"path":"libs/domains/search/src/query.test.ts","mode":420,"text":"import { expect, test } from \"vitest\";\n\nimport { parseQuery } from \"./query.js\";\n\ntest(\"parseQuery trims and lowercases the text\", () => {\n const query = parseQuery(\" Hello World \");\n expect(query.text).toBe(\"hello world\");\n});\n"},{"path":"libs/domains/search/src/query.ts","mode":420,"text":"export type SearchQuery = {\n readonly text: string;\n};\n\nexport function parseQuery(rawText: string): SearchQuery {\n const text = rawText.trim().toLowerCase();\n return { text };\n}\n"},{"path":"libs/domains/search/src/results.test.ts","mode":420,"text":"import { expect, test } from \"vitest\";\n\nimport { type SearchResult, rankResults } from \"./results.js\";\n\ntest(\"rankResults orders results by score descending\", () => {\n const low: SearchResult = { title: \"Low\", score: 0.2 };\n const high: SearchResult = { title: \"High\", score: 0.9 };\n const ranked = rankResults([low, high]);\n expect(ranked[0]).toStrictEqual(high);\n expect(ranked[1]).toStrictEqual(low);\n});\n\ntest(\"rankResults leaves the input untouched\", () => {\n const low: SearchResult = { title: \"Low\", score: 0.2 };\n const high: SearchResult = { title: \"High\", score: 0.9 };\n const input = [low, high];\n rankResults(input);\n expect(input[0]).toStrictEqual(low);\n});\n"},{"path":"libs/domains/search/src/results.ts","mode":420,"text":"export type SearchResult = {\n readonly title: string;\n readonly score: number;\n};\n\nexport function rankResults(results: readonly SearchResult[]): SearchResult[] {\n const ranked = [...results];\n ranked.sort(byScoreDescending);\n return ranked;\n}\n\nfunction byScoreDescending(first: SearchResult, second: SearchResult): number {\n return second.score - first.score;\n}\n"},{"path":"libs/domains/search/tsconfig.json","mode":420,"text":"{\n \"extends\": \"../../../tsconfig.base.json\",\n \"compilerOptions\": {\n \"module\": \"nodenext\",\n \"moduleResolution\": \"nodenext\",\n \"noEmit\": true\n },\n \"include\": [\"src\"]\n}\n"},{"path":"libs/domains/search/tsdown.config.ts","mode":420,"text":"import { defineConfig } from \"tsdown\";\n\nexport default defineConfig({\n entry: [\"src/index.ts\"],\n format: [\"esm\"],\n dts: true,\n});\n"},{"path":"libs/platform/mac/filesystem/Package.swift","mode":420,"text":"// swift-tools-version: 6.0\nimport PackageDescription\n\nlet strictSwiftSettings: [SwiftSetting] = [\n .enableUpcomingFeature(\"ExistentialAny\"),\n .enableUpcomingFeature(\"InternalImportsByDefault\"),\n .enableUpcomingFeature(\"MemberImportVisibility\"),\n]\n\nlet package = Package(\n name: \"MacFilesystem\",\n platforms: [\n .macOS(.v14)\n ],\n products: [\n .library(name: \"MacFilesystem\", targets: [\"MacFilesystem\"])\n ],\n targets: [\n .target(\n name: \"MacFilesystem\",\n swiftSettings: strictSwiftSettings\n ),\n .testTarget(\n name: \"MacFilesystemTests\",\n dependencies: [\"MacFilesystem\"],\n swiftSettings: strictSwiftSettings\n ),\n ]\n)\n"},{"path":"libs/platform/mac/filesystem/project.json","mode":420,"text":"{\n \"$schema\": \"../../../../node_modules/nx/schemas/project-schema.json\",\n \"name\": \"mac-filesystem\",\n \"projectType\": \"library\",\n \"tags\": [\"type:platform\", \"platform:mac\", \"lang:swift\"],\n \"targets\": {\n \"build\": {\n \"executor\": \"nx:run-commands\",\n \"cache\": false,\n \"options\": {\n \"command\": \"swift build\",\n \"cwd\": \"libs/platform/mac/filesystem\"\n }\n },\n \"test\": {\n \"executor\": \"nx:run-commands\",\n \"dependsOn\": [\"build\", \"^build\"],\n \"options\": {\n \"command\": \"swift test\",\n \"cwd\": \"libs/platform/mac/filesystem\"\n }\n },\n \"lint\": {\n \"executor\": \"nx:run-commands\",\n \"dependsOn\": [],\n \"inputs\": [\"default\", \"{workspaceRoot}/.swift-format\", \"{workspaceRoot}/.swiftlint.yml\"],\n \"options\": {\n \"commands\": [\n \"swift format lint --strict --parallel --recursive Sources Tests Package.swift\",\n \"../../../../tools/swiftlint.sh lint --strict --quiet --config ../../../../.swiftlint.yml Sources Tests Package.swift\"\n ],\n \"parallel\": false,\n \"cwd\": \"libs/platform/mac/filesystem\"\n }\n },\n \"format\": {\n \"executor\": \"nx:run-commands\",\n \"cache\": false,\n \"options\": {\n \"commands\": [\n \"swift format --in-place --parallel --recursive Sources Tests Package.swift\",\n \"../../../../tools/swiftlint.sh --fix --quiet --config ../../../../.swiftlint.yml Sources Tests Package.swift\"\n ],\n \"parallel\": false,\n \"cwd\": \"libs/platform/mac/filesystem\"\n }\n }\n }\n}\n"},{"path":"libs/platform/mac/filesystem/README.md","mode":420,"text":"# Mac Filesystem\n\nOwns macOS filesystem locations for apps. Swift package consumed by macOS apps through SwiftPM.\n\n- Build with `pnpm nx run mac-filesystem:build`\n- Test with `pnpm nx run mac-filesystem:test`\n- Lint with `pnpm nx run mac-filesystem:lint`\n- Format with `pnpm nx run mac-filesystem:format`\n\nBuilds in Swift 6 language mode with strict upcoming features enabled in `Package.swift`. Lint runs `swift format lint --strict` and SwiftLint `--strict` without compiling.\n"},{"path":"libs/platform/mac/filesystem/Sources/MacFilesystem/MacFilesystem.swift","mode":420,"text":"public import Foundation\n\npublic enum MacFilesystem {\n public static func applicationSupportDirectory(appName: String) -> URL {\n let fileManager = FileManager.default\n let baseDirectories = fileManager.urls(for: .applicationSupportDirectory, in: .userDomainMask)\n var result = URL(fileURLWithPath: NSHomeDirectory())\n if let baseDirectory = baseDirectories.first {\n result = baseDirectory\n }\n result = result.appendingPathComponent(appName, isDirectory: true)\n return result\n }\n}\n"},{"path":"libs/platform/mac/filesystem/Tests/MacFilesystemTests/MacFilesystemTests.swift","mode":420,"text":"import Foundation\nimport MacFilesystem\nimport Testing\n\n@Test func appendsAppNameToTheApplicationSupportPath() {\n let directory = MacFilesystem.applicationSupportDirectory(appName: \"ExampleApp\")\n #expect(directory.lastPathComponent == \"ExampleApp\")\n #expect(directory.path.contains(\"Application Support\"))\n}\n"},{"path":"libs/rust/search-index/Cargo.lock","mode":420,"text":"# This file is automatically @generated by Cargo.\n# It is not intended for manual editing.\nversion = 4\n\n[[package]]\nname = \"search-index\"\nversion = \"0.1.0\"\n"},{"path":"libs/rust/search-index/Cargo.toml","mode":420,"text":"[package]\nname = \"search-index\"\nversion = \"0.1.0\"\nedition = \"2024\"\nrust-version = \"1.97\"\n\n[lints.rust]\nunsafe_code = \"forbid\"\n\n[lints.clippy]\nall = { level = \"deny\", priority = -1 }\npedantic = { level = \"deny\", priority = -1 }\n"},{"path":"libs/rust/search-index/project.json","mode":420,"text":"{\n \"$schema\": \"../../../node_modules/nx/schemas/project-schema.json\",\n \"name\": \"search-index\",\n \"projectType\": \"library\",\n \"tags\": [\"type:rust\", \"domain:search\", \"lang:rust\"],\n \"targets\": {\n \"build\": {\n \"executor\": \"nx:run-commands\",\n \"cache\": false,\n \"options\": {\n \"command\": \"cargo build\",\n \"cwd\": \"libs/rust/search-index\"\n }\n },\n \"test\": {\n \"executor\": \"nx:run-commands\",\n \"options\": {\n \"command\": \"cargo test\",\n \"cwd\": \"libs/rust/search-index\"\n }\n },\n \"lint\": {\n \"executor\": \"nx:run-commands\",\n \"dependsOn\": [],\n \"options\": {\n \"commands\": [\"cargo clippy --all-targets -- -D warnings\", \"cargo fmt --check\"],\n \"parallel\": false,\n \"cwd\": \"libs/rust/search-index\"\n }\n }\n }\n}\n"},{"path":"libs/rust/search-index/README.md","mode":420,"text":"# Search Index\n\nOwns in memory indexing and matching of entries for the search domain. Rust crate built with Cargo. No app consumes it yet. It exists to show how Rust projects plug into the workspace.\n\n- Build with `pnpm nx run search-index:build`\n- Test with `pnpm nx run search-index:test`\n- Lint with `pnpm nx run search-index:lint`\n\nLint denies every `clippy` warning and checks `rustfmt`. `Cargo.toml` forbids `unsafe_code`.\n"},{"path":"libs/rust/search-index/src/lib.rs","mode":420,"text":"pub struct SearchIndex {\n entries: Vec<String>,\n}\n\nimpl SearchIndex {\n #[must_use]\n pub fn new() -> SearchIndex {\n SearchIndex {\n entries: Vec::new(),\n }\n }\n\n pub fn insert(&mut self, entry: &str) {\n self.entries.push(entry.to_lowercase());\n }\n\n #[must_use]\n pub fn matches(&self, needle: &str) -> Vec<String> {\n let lowered = needle.to_lowercase();\n let mut result = Vec::new();\n for entry in &self.entries {\n if entry.contains(&lowered) {\n result.push(entry.clone());\n }\n }\n result\n }\n}\n\nimpl Default for SearchIndex {\n fn default() -> SearchIndex {\n SearchIndex::new()\n }\n}\n\n#[cfg(test)]\nmod tests {\n use super::SearchIndex;\n\n #[test]\n fn matches_entries_case_insensitively() {\n let mut index = SearchIndex::new();\n index.insert(\"Open Settings\");\n index.insert(\"Quit App\");\n let found = index.matches(\"SETTINGS\");\n assert_eq!(found, vec![\"open settings\".to_string()]);\n }\n\n #[test]\n fn returns_nothing_for_an_unknown_needle() {\n let mut index = SearchIndex::new();\n index.insert(\"Open Settings\");\n let found = index.matches(\"missing\");\n assert!(found.is_empty());\n }\n}\n"},{"path":"LICENSE","mode":420,"text":"MIT License\n\nCopyright (c) 2026 Fayez Nazzal\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n"},{"path":"nx.json","mode":420,"text":"{\n \"$schema\": \"./node_modules/nx/schemas/nx-schema.json\",\n \"defaultBase\": \"main\",\n \"namedInputs\": {\n \"default\": [\"{projectRoot}/**/*\", \"!{projectRoot}/dist/**\"],\n \"production\": [\"default\", \"!{projectRoot}/**/*.{test,spec}.*\"]\n },\n \"targetDefaults\": {\n \"build\": {\n \"dependsOn\": [\"^build\", \"typecheck\"],\n \"cache\": true,\n \"outputs\": [\"{projectRoot}/dist\"]\n },\n \"typecheck\": {\n \"dependsOn\": [\"^build\"],\n \"cache\": true,\n \"inputs\": [\"default\", \"^default\", \"{workspaceRoot}/tsconfig.base.json\"]\n },\n \"test\": {\n \"dependsOn\": [\"^build\"],\n \"cache\": true\n },\n \"lint\": {\n \"dependsOn\": [\"^build\"],\n \"cache\": true,\n \"inputs\": [\"default\", \"{workspaceRoot}/.oxlintrc.json\"]\n },\n \"dev\": {\n \"dependsOn\": [\"^build\"],\n \"cache\": false,\n \"continuous\": true\n },\n \"serve\": {\n \"dependsOn\": [\"^build\"],\n \"cache\": false,\n \"continuous\": true\n },\n \"preview\": {\n \"dependsOn\": [\"build\"],\n \"cache\": false,\n \"continuous\": true\n },\n \"start\": {\n \"dependsOn\": [\"build\"],\n \"cache\": false\n },\n \"run\": {\n \"dependsOn\": [\"build\"],\n \"cache\": false\n }\n },\n \"analytics\": true\n}\n"},{"path":"package.json","mode":420,"text":"{\n \"name\": \"agentic-monorepo\",\n \"version\": \"0.1.0\",\n \"private\": true,\n \"scripts\": {\n \"lint\": \"oxlint apps libs tools && node tools/check-boundaries.mjs\",\n \"format\": \"oxfmt\",\n \"format:check\": \"oxfmt --check\"\n },\n \"devDependencies\": {\n \"@types/node\": \"26.4.1\",\n \"cross-spawn\": \"7.0.6\",\n \"nx\": \"23.2.0\",\n \"oxfmt\": \"0.66.0\",\n \"oxlint\": \"1.81.0\",\n \"oxlint-tsgolint\": \"7.0.2001\",\n \"tsdown\": \"0.22.14\",\n \"typescript\": \"7.0.2\",\n \"unrun\": \"0.3.1\",\n \"vite\": \"8.2.2\",\n \"vitest\": \"4.1.11\"\n },\n \"engines\": {\n \"node\": \">=22.13.0\"\n },\n \"packageManager\": \"pnpm@11.21.0\",\n \"nx\": {\n \"name\": \"workspace\",\n \"includedScripts\": [\n \"lint\",\n \"format\"\n ],\n \"targets\": {\n \"lint\": {\n \"dependsOn\": [],\n \"inputs\": [\n \"{workspaceRoot}/apps/**/*\",\n \"{workspaceRoot}/libs/**/*\",\n \"{workspaceRoot}/tools/**/*\",\n \"{workspaceRoot}/.oxlintrc.json\",\n \"{workspaceRoot}/**/project.json\",\n \"{workspaceRoot}/**/package.json\",\n \"{workspaceRoot}/nx.json\"\n ]\n },\n \"format\": {\n \"cache\": false\n }\n }\n }\n}\n"},{"path":"pnpm-lock.yaml","mode":420,"text":"lockfileVersion: '9.0'\n\nsettings:\n autoInstallPeers: true\n excludeLinksFromLockfile: false\n\nimporters:\n\n .:\n devDependencies:\n '@types/node':\n specifier: 26.4.1\n version: 26.4.1\n cross-spawn:\n specifier: 7.0.6\n version: 7.0.6\n nx:\n specifier: 23.2.0\n version: 23.2.0\n oxfmt:\n specifier: 0.66.0\n version: 0.66.0\n oxlint:\n specifier: 1.81.0\n version: 1.81.0(oxlint-tsgolint@7.0.2001)\n oxlint-tsgolint:\n specifier: 7.0.2001\n version: 7.0.2001\n tsdown:\n specifier: 0.22.14\n version: 0.22.14(typescript@7.0.2)(unrun@0.3.1)\n typescript:\n specifier: 7.0.2\n version: 7.0.2\n unrun:\n specifier: 0.3.1\n version: 0.3.1\n vite:\n specifier: 8.2.2\n version: 8.2.2(@types/node@26.4.1)(yaml@2.9.0)\n vitest:\n specifier: 4.1.11\n version: 4.1.11(@types/node@26.4.1)(vite@8.2.2(@types/node@26.4.1)(yaml@2.9.0))\n\n apps/cli/create-agentic-monorepo:\n dependencies:\n '@clack/prompts':\n specifier: 1.7.0\n version: 1.7.0\n '@domains/scaffolding':\n specifier: workspace:*\n version: link:../../../libs/domains/scaffolding\n '@platform/node-scaffolding':\n specifier: workspace:*\n version: link:../../../libs/platform/node/scaffolding\n cross-spawn:\n specifier: 7.0.6\n version: 7.0.6\n picocolors:\n specifier: 1.1.1\n version: 1.1.1\n yaml:\n specifier: 2.9.0\n version: 2.9.0\n publishDirectory: dist/package\n\n apps/cli/example-app:\n dependencies:\n '@domains/search':\n specifier: workspace:*\n version: link:../../../libs/domains/search\n\n apps/web/example-app:\n dependencies:\n '@domains/search':\n specifier: workspace:*\n version: link:../../../libs/domains/search\n\n libs/domains/scaffolding: {}\n\n libs/domains/search: {}\n\n libs/platform/node/scaffolding:\n dependencies:\n '@domains/scaffolding':\n specifier: workspace:*\n version: link:../../../domains/scaffolding\n cross-spawn:\n specifier: 7.0.6\n version: 7.0.6\n yaml:\n specifier: 2.9.0\n version: 2.9.0\n devDependencies:\n '@types/cross-spawn':\n specifier: 6.0.6\n version: 6.0.6\n\npackages:\n\n '@clack/core@1.4.3':\n resolution: {integrity: sha512-/kr3UWNtdJfxZtPgDqUOmG2pvwlmcLGheex5yiZKdwbzZJxhV+HMNR9QNmyY5cGwTNV6LrR7Jtp+KjhUAP1qBQ==}\n engines: {node: '>= 20.12.0'}\n\n '@clack/prompts@1.7.0':\n resolution: {integrity: sha512-y7/yvZ2TPAnR9+jnc00klvNNLkJiXFFrQA/hlLCcxA9a2A4zQIOimyFQ9XfwYKiGD1fb5GY8vbKIIgO8d5Tb2A==}\n engines: {node: '>= 20.12.0'}\n\n '@emnapi/core@1.4.5':\n resolution: {integrity: sha512-XsLw1dEOpkSX/WucdqUhPWP7hDxSvZiY+fsUC14h+FtQ2Ifni4znbBt8punRX+Uj2JG/uDb8nEHVKvrVlvdZ5Q==}\n\n '@emnapi/runtime@1.4.5':\n resolution: {integrity: sha512-++LApOtY0pEEz1zrd9vy1/zXVaVJJ/EbAF3u0fXIzPJEDtnITsBGbbK0EkM72amhl/R5b+5xx0Y/QhcVOpuulg==}\n\n '@emnapi/wasi-threads@1.0.4':\n resolution: {integrity: sha512-PJR+bOmMOPH8AtcTGAyYNiuJ3/Fcoj2XN/gBEWzDIKh254XO+mM9XoXHk5GNEhodxeMznbg7BlRojVbKN+gC6g==}\n\n '@jest/diff-sequences@30.0.1':\n resolution: {integrity: sha512-n5H8QLDJ47QqbCNn5SuFjCRDrOLEZ0h8vAHCK5RL9Ls7Xa8AQLa/YxAc9UjFqoEDM48muwtBGjtMY5cr0PLDCw==}\n engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}\n\n '@jridgewell/sourcemap-codec@1.5.5':\n resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==}\n\n '@napi-rs/wasm-runtime@0.2.4':\n resolution: {integrity: sha512-9zESzOO5aDByvhIAsOy9TbpZ0Ur2AJbUI7UT73kcUTS2mxAMHOBaa1st/jAymNoCtvrit99kkzT1FZuXVcgfIQ==}\n\n '@nx/nx-darwin-arm64@23.2.0':\n resolution: {integrity: sha512-nael5WwtqBX/YZDU0iv8M4rJ8auF9kF+sU5pYpronIbvu/LdDptq31vWT06ivW8eXRaLxDqFmpXR8tS5IYDmdw==}\n cpu: [arm64]\n os: [darwin]\n\n '@nx/nx-darwin-x64@23.2.0':\n resolution: {integrity: sha512-jZ7c6ktp8Wdroru6lj8WxvYDiK70B2cE3GdV9pcgCcVQvK6PLJXgOaHvQjALMINraYhzlsWX/FkWMy4eMMlJzg==}\n cpu: [x64]\n os: [darwin]\n\n '@nx/nx-freebsd-x64@23.2.0':\n resolution: {integrity: sha512-5MDLl4q0kYZcX6CLu5x1YEq5YUUmo6CqoWApgC/2Ky2kEX9Kz+9fuTJlKlwwSlAxlb3TyQVKXrjGfwF0M30ygA==}\n cpu: [x64]\n os: [freebsd]\n\n '@nx/nx-linux-arm-gnueabihf@23.2.0':\n resolution: {integrity: sha512-YBY7VGEyrzWNPG6M1knOjykMbsHmX/uN5TywwtLYp2mp6PaDC9MNO9z2BDaVmdS+Y8u030RrDpESwLkB0f9d4g==}\n cpu: [arm]\n os: [linux]\n\n '@nx/nx-linux-arm64-gnu@23.2.0':\n resolution: {integrity: sha512-CzDkhtI+HYKGWPbjfMhslrgGpWer/qGd6MOFwkjxI8JYdqRV0BYivnAuqogsyPpBDNzalxK8xM55MD/f+edQ+w==}\n cpu: [arm64]\n os: [linux]\n libc: [glibc]\n\n '@nx/nx-linux-arm64-musl@23.2.0':\n resolution: {integrity: sha512-poDmLBCX4WHcYwlklFingeqHVSaTdeUe5jhuQhR6BygDpFdVk4kibovEHh4A5LRkPag4SACNRy1VRBKoaoEyUA==}\n cpu: [arm64]\n os: [linux]\n libc: [musl]\n\n '@nx/nx-linux-x64-gnu@23.2.0':\n resolution: {integrity: sha512-8E8IAkJJw1+eF9UNZKZnc1UDDNOmRaGQbb/AXL8Ix0MP3LObDjIyX9NLYxrtcb9HUcWrygcuKsySum+E5C4s3w==}\n cpu: [x64]\n os: [linux]\n libc: [glibc]\n\n '@nx/nx-linux-x64-musl@23.2.0':\n resolution: {integrity: sha512-X/i1GfhqeOM1pGNBDDeIDKhtpXKnYjBR8hv8YoVW9pHQXAJ2iUux6SCP1Gg5tIKUYTdZRvsknf0g7KEw3p1sug==}\n cpu: [x64]\n os: [linux]\n libc: [musl]\n\n '@nx/nx-win32-arm64-msvc@23.2.0':\n resolution: {integrity: sha512-MSXbpHVSduWYnCu8MyPs88H6XnbU20jHWUvtPFDFkxgA8Slhl09hzpp2xq8TS4M8dS2OxK4QWcZyszqRMkwQrw==}\n cpu: [arm64]\n os: [win32]\n\n '@nx/nx-win32-x64-msvc@23.2.0':\n resolution: {integrity: sha512-OZKEU4d5YmOht1id5wyWhVfvuNEo0hl4DYRFzDh/r94nbTqfNEPcY0bTDfvtjZ79ZM5tPC1Z1k8/L4dkhMpFhw==}\n cpu: [x64]\n os: [win32]\n\n '@oxc-project/types@0.144.0':\n resolution: {integrity: sha512-nuhZIOLuI6TFQ32I/WnUx+SCPY7SdSKwgnFHydAuoS1+Z4BRcaP+RRJmGzl9lw+0OFF7UmaESf7KQRXaNLHypg==}\n\n '@oxfmt/binding-android-arm-eabi@0.66.0':\n resolution: {integrity: sha512-2Me9eoptv6ERdEuI2P8AOlYdHHraXebJaM6SC0kc2Dfb+mLrep2db+fedBPKaYn673h/vBgvP4tkOdAbaudX6w==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [arm]\n os: [android]\n\n '@oxfmt/binding-android-arm64@0.66.0':\n resolution: {integrity: sha512-u7O+bSSF0HGsDKkQQxBqvLGVepu93RA+JKu+ONqvfh4sCnCEbj31wZj4iG5gk3XfRwrmYj0/8catkO2LcblQKQ==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [arm64]\n os: [android]\n\n '@oxfmt/binding-darwin-arm64@0.66.0':\n resolution: {integrity: sha512-/ikyMIVjX/sdo7KtjxoEsSUosfPzveVhT9RWMx9yGqFDKFJ89JAEKuEeLBmurDjrkb4w8tOnAdSO3SBaplY3bw==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [arm64]\n os: [darwin]\n\n '@oxfmt/binding-darwin-x64@0.66.0':\n resolution: {integrity: sha512-q5xUsKeFqawa9NXa6ZGXWimFV19m8MogKPdTaSVDAAk2EQKBmBZRDeluwcl1p8ty/OFc9s9888OKEh3xfPVH0g==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [x64]\n os: [darwin]\n\n '@oxfmt/binding-freebsd-x64@0.66.0':\n resolution: {integrity: sha512-CR+x4VzMY0pRXLK/xFQ/RzsSFkP5t2Z2mef0QY6OP/rTRcMUoMLCOM62/3Fp/t0K+UDoBKxvMyeb6D0zPMjleA==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [x64]\n os: [freebsd]\n\n '@oxfmt/binding-linux-arm-gnueabihf@0.66.0':\n resolution: {integrity: sha512-ZEYmO/LbH9tTQCADILHGZE4GeOXOAj2VzedHkASNwjmwlwtutJCLpCJbIs37wRGTFgWRoEcD72jpMX+IBJUGjQ==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [arm]\n os: [linux]\n\n '@oxfmt/binding-linux-arm-musleabihf@0.66.0':\n resolution: {integrity: sha512-hNtR9/oU0CeTkq7JnRkmBQwqe17v2ZaAMLC4VcN7IIOWeRyWDk0knSPWS9iiLmtbZ2RRBBtsG01jQgkZmKCJeQ==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [arm]\n os: [linux]\n\n '@oxfmt/binding-linux-arm64-gnu@0.66.0':\n resolution: {integrity: sha512-uwOVQ8i6I1LT/+eDzfsgrrcZp8Fn6NPVUPn8fF5gdFGekFf0PddF+LEuwsD0/pbNUcKZhDj2rQ5UpITh9gF4iQ==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [arm64]\n os: [linux]\n libc: [glibc]\n\n '@oxfmt/binding-linux-arm64-musl@0.66.0':\n resolution: {integrity: sha512-tTkF2Dmx4nGAjmBlZb+UtTGqR/EK4ZrW9qBfzte07a9XWqzoGGKzpFFlyNDhQe+Uwql94+ReCTeNbhOXscw1Dg==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [arm64]\n os: [linux]\n libc: [musl]\n\n '@oxfmt/binding-linux-ppc64-gnu@0.66.0':\n resolution: {integrity: sha512-F3cKHUav4yXOHn6GFnwpBhSYsJOYKKf9eqO/9jlEuqPxNw9zb98E9ZFct79gcg8pibUGkbveEu9WDlmXJpDzKw==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [ppc64]\n os: [linux]\n libc: [glibc]\n\n '@oxfmt/binding-linux-riscv64-gnu@0.66.0':\n resolution: {integrity: sha512-K5fDaNZfDyQMYA/3qL21bqyN0X9T15LLwwbFPt2aHc94+ZG7bh0vZEsy2y7NlRnjjHFSwN+Hzg6ldJtbOriH4Q==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [riscv64]\n os: [linux]\n libc: [glibc]\n\n '@oxfmt/binding-linux-riscv64-musl@0.66.0':\n resolution: {integrity: sha512-44Yc+I+qOmTElRcEhm5hUKIUJEQIOugymz4ua4tB0Wox7tGAfIbjzmXz/HDAtw1Ij6gmBwZlzh4hc9679RhWeA==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [riscv64]\n os: [linux]\n libc: [musl]\n\n '@oxfmt/binding-linux-s390x-gnu@0.66.0':\n resolution: {integrity: sha512-1e29Eg9hEj2kRBB19M0seIehPbbXHCk35GvImjDvb79rjjYjXCRmtbUNHJcgoktZAMIzXrTbxDBKmTc1V4bg3A==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [s390x]\n os: [linux]\n libc: [glibc]\n\n '@oxfmt/binding-linux-x64-gnu@0.66.0':\n resolution: {integrity: sha512-vODY1UQo10gngn0+D4xHKU84F1Twm1LqrzV4SqPXvmQKSd87paehvZ6jqA5wKs6XQrlWul9clYMDVHcoW9CPMA==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [x64]\n os: [linux]\n libc: [glibc]\n\n '@oxfmt/binding-linux-x64-musl@0.66.0':\n resolution: {integrity: sha512-YDzXx2JsT4+HL4MdkVrYjO55NS5lUKNm8rLC4ZPou8+seu0v0jhecSh+ufoO6+xEa8gccEezMlI2WHJi4ApUgw==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [x64]\n os: [linux]\n libc: [musl]\n\n '@oxfmt/binding-openharmony-arm64@0.66.0':\n resolution: {integrity: sha512-mJjUYd8lj0+j4JkYyEM+5qKBf1Rnrpgjn/SVYKJhicVDqLz566ooa7Fs8zflPqt+dnZDV7X054rVIQX6ZcQNlQ==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [arm64]\n os: [openharmony]\n\n '@oxfmt/binding-win32-arm64-msvc@0.66.0':\n resolution: {integrity: sha512-soV+0vESv7e5ntCHWC61x4gg8OSak6IHHnWsZmHrJFlvMj2AK+kmldErCNkVkrvc1Ts2/++rJXn+IuAb2WMXhw==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [arm64]\n os: [win32]\n\n '@oxfmt/binding-win32-ia32-msvc@0.66.0':\n resolution: {integrity: sha512-YCPi23uRIEYuIKTZohAkKbPFpujQ5QBuUM5iDv+UqbCmTPAkaFsxjsSuB8xlBpRT0G7eP/4HMF+cPDSqHtOD9A==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [ia32]\n os: [win32]\n\n '@oxfmt/binding-win32-x64-msvc@0.66.0':\n resolution: {integrity: sha512-bwTQcv/JVRPkOqQtMF0X7vpvpncDQiBcXHxZ9S2hR12Hlo8bvBdUR5x5XnxzDZ3kM0qoZw1rv7KaD66Ly+pFWA==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [x64]\n os: [win32]\n\n '@oxlint-tsgolint/darwin-arm64@7.0.2001':\n resolution: {integrity: sha512-CUJEdbSZ54+Xy9OXqOhWLTKZKV0BBiV7C2i/ygyVmXtkUNXx5YCzN8DpSSshTAKktoL7S+tnQ/ftFG/i7X896w==}\n cpu: [arm64]\n os: [darwin]\n\n '@oxlint-tsgolint/darwin-x64@7.0.2001':\n resolution: {integrity: sha512-pXfBb5BqONCcgrXQNUZWXgiYmRSWJzd97S8i41VVOh6ut0tyo+cJ5FKFpczDHxiVNfj/3e7c9B4MtztNdpIVCw==}\n cpu: [x64]\n os: [darwin]\n\n '@oxlint-tsgolint/linux-arm64@7.0.2001':\n resolution: {integrity: sha512-roP7zujb/QDPzDwEKsFFpzNHHy91/Y7oX9vQXk78ekyZtcQj1QXDIMH33gjDdHBfRl4K9pZ36xhRgrP4Zr+R8A==}\n cpu: [arm64]\n os: [linux]\n\n '@oxlint-tsgolint/linux-x64@7.0.2001':\n resolution: {integrity: sha512-UDezNqdECVmngu2TPnjaS1YoAmcTaBoI5lV9vk3VahBxoi+I5r9k3iJTT7qZoYWOXTD/7T7bNcwRgrocR6BscQ==}\n cpu: [x64]\n os: [linux]\n\n '@oxlint-tsgolint/win32-arm64@7.0.2001':\n resolution: {integrity: sha512-uJZhqB6pdXLuN+AD1F5082byyQti/NPmJA77GtcFlmT2HzRelqbNls3SaIqxpjdFgvSBF9g0yOKGBkGFg7kX8Q==}\n cpu: [arm64]\n os: [win32]\n\n '@oxlint-tsgolint/win32-x64@7.0.2001':\n resolution: {integrity: sha512-FkDRm8hx9OwzGQqyWG1tO5QrTLRApff9DzSgpz9QZau37BR8d1VYKOxMLGf6shPZntJFoTwIIJYT68VndYDCog==}\n cpu: [x64]\n os: [win32]\n\n '@oxlint/binding-android-arm-eabi@1.81.0':\n resolution: {integrity: sha512-IcCRsXiedJoJopY6mpZUBEeVFsUrutmrG7dZ87zMuKJlhg70Ora9bBl1WcCxZQtyI10YpnVdEso5oCg7YcfSHw==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [arm]\n os: [android]\n\n '@oxlint/binding-android-arm64@1.81.0':\n resolution: {integrity: sha512-GRrIPyTGVhx3L3h+0T5xT2A0jFAcdPv4+IfuXpGDLIdl6XeYhgg/zw72A5ILZoUgRqZuM8F1y+V/gfDriXSxzQ==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [arm64]\n os: [android]\n\n '@oxlint/binding-darwin-arm64@1.81.0':\n resolution: {integrity: sha512-qNQ9tXRgLuKbqSV1S2h9h4KPHjbovO7RRR2/enUOtHzTkFZ7B9X5zqqHJua8dRyc7dBy7Aoyq5pqTSLFVcAzGQ==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [arm64]\n os: [darwin]\n\n '@oxlint/binding-darwin-x64@1.81.0':\n resolution: {integrity: sha512-q0QTm32jWga2Gv4j7IaVZN0jYMi9UV73sWVgFtDA4iIfqwMCLLZ3ve+9KwfYtsaKZSgQhmPaogeZWqDZpcY1Pw==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [x64]\n os: [darwin]\n\n '@oxlint/binding-freebsd-x64@1.81.0':\n resolution: {integrity: sha512-/+8wVWDXEC7wHVAhOc59Fw/SkMc1arLkFD8iQCaSsmzenK1X4doFqquL9H1wrtGUzaiycVqkf/sSpcILK6W1UA==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [x64]\n os: [freebsd]\n\n '@oxlint/binding-linux-arm-gnueabihf@1.81.0':\n resolution: {integrity: sha512-4xt422FEgioRq9hAL4Tq7fujGUWnc8z1BJ+Oi8RN8vB8axaP+sdK6a2xdlcQCCYnJg9QMuMFS0AucuIFx/EacA==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [arm]\n os: [linux]\n\n '@oxlint/binding-linux-arm-musleabihf@1.81.0':\n resolution: {integrity: sha512-u3vna8KdGplH4DRCW9K54D68fcMo7IxVrkCJWwXnIhwtBdnDnYrmzOUA/XjmBlPpcLsgw9Z5BNdY4za9+Dj+MQ==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [arm]\n os: [linux]\n\n '@oxlint/binding-linux-arm64-gnu@1.81.0':\n resolution: {integrity: sha512-3j9k+gsYsE7nv71GWotXsqsa2l9/aJenD7dVHNt/CBvsb0SgRjSMnHFeP59IXUAl1wvVFhqGl2wJNMwWU3UBlA==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [arm64]\n os: [linux]\n libc: [glibc]\n\n '@oxlint/binding-linux-arm64-musl@1.81.0':\n resolution: {integrity: sha512-k5iAp3dNxW0/uDCBY+WSm8jKB2szu7SkEQZdgRRpDXvuDd69vvDcqhB3A/pWCfCwXyenjNjFn9Td1fVoyAc+Yg==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [arm64]\n os: [linux]\n libc: [musl]\n\n '@oxlint/binding-linux-ppc64-gnu@1.81.0':\n resolution: {integrity: sha512-TFqLja3uYmVSte6nof9GWrex9Z8WgdZrNiLC6Te5rXGDqXB2y4j/26iFhwosXiAFqDhE9JJVuuCkDKLwptTn1g==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [ppc64]\n os: [linux]\n libc: [glibc]\n\n '@oxlint/binding-linux-riscv64-gnu@1.81.0':\n resolution: {integrity: sha512-UEcySvGS0NOVo7h7n7CYyJL9+6gFAh7Zc/ToDXVScFvzHSTIxtzkMVU30rmQ6+nQ1LF+UdiRDdJajpDu+OylLg==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [riscv64]\n os: [linux]\n libc: [glibc]\n\n '@oxlint/binding-linux-riscv64-musl@1.81.0':\n resolution: {integrity: sha512-H+diDbhD00+wI1IRP8Kz88x/lat+DgtoBJzoTthS16xkTJGNaEkfb8gzmd1rzc/2uDQQMl7GNl+JFUacVeWxIA==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [riscv64]\n os: [linux]\n libc: [musl]\n\n '@oxlint/binding-linux-s390x-gnu@1.81.0':\n resolution: {integrity: sha512-8znJ/5TekjOKg1j1Acho4PJMdiAHLtlcXuWEiipOhAMV6rQcXdmDdXCbheyDczN6TjBwiNfjcP81k4AthrKRzw==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [s390x]\n os: [linux]\n libc: [glibc]\n\n '@oxlint/binding-linux-x64-gnu@1.81.0':\n resolution: {integrity: sha512-Q2Wj70yFsvn5QjlmifFzbj4H+kJy53bwqc41o1fzoM7MpLV1NIbhg/LpWXRfC6KOkSAdUx1Wd8VJsdPmhp/HRA==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [x64]\n os: [linux]\n libc: [glibc]\n\n '@oxlint/binding-linux-x64-musl@1.81.0':\n resolution: {integrity: sha512-cPInHp/ddEe5qkyK2IiyQ8Q3Mp2oLLEhhsGgTK2oZx4L6+llGam1H1yBvJZ7qHfOXj8N3hxBS8sj4tO+gtFlIg==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [x64]\n os: [linux]\n libc: [musl]\n\n '@oxlint/binding-openharmony-arm64@1.81.0':\n resolution: {integrity: sha512-0CQxSX4ajqm07AHBf5U33qQzXKdd7wtq/oTL/7vpY6RNNuxrRi8W4bqUV1Jyu/vj+9KmxQyDhxfeVX1nQL6kfg==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [arm64]\n os: [openharmony]\n\n '@oxlint/binding-win32-arm64-msvc@1.81.0':\n resolution: {integrity: sha512-l0hbeISm9673hVrrQU8j/p2M7YH9Ouoj7p7E/QM55NTrKVLP+P3PF8hLu+OY+x0VtGRW+ggiQKZqmdYps9H+TA==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [arm64]\n os: [win32]\n\n '@oxlint/binding-win32-ia32-msvc@1.81.0':\n resolution: {integrity: sha512-ksqPP5jbFXcYreEQ7zdJh06rJQBymCTyGRCdaXjfcf2aG4f8KxUWY5wcgYHmaTK+FJ4bPG5sUAdOX+6trnH1JA==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [ia32]\n os: [win32]\n\n '@oxlint/binding-win32-x64-msvc@1.81.0':\n resolution: {integrity: sha512-IZuUCwGw9emG5JtCp+fYGB+Z4OWEoeEcM8R5BA1pYw63/ieYFVdcU2ylxTpHbVHSenZnsYE+ZZ20uHAJszQ4cA==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [x64]\n os: [win32]\n\n '@quansync/fs@1.0.0':\n resolution: {integrity: sha512-4TJ3DFtlf1L5LDMaM6CanJ/0lckGNtJcMjQ1NAV6zDmA0tEHKZtxNKin8EgPaVX1YzljbxckyT2tJrpQKAtngQ==}\n\n '@rolldown/binding-android-arm64@1.2.4':\n resolution: {integrity: sha512-jHC2cnyKz5xU2fhECtFl8OZ83cYNt13GZQD+0uMJ/X3o+ijmd56okHhTUwxVSHPx1IRVIJEZ1/1pPzeLCU6XKA==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [arm64]\n os: [android]\n\n '@rolldown/binding-darwin-arm64@1.2.4':\n resolution: {integrity: sha512-Dc5mPD8F5F/FS8i01syd7FTF6yB2fVthH/TRkjwJkzUK6EpoxHtqvZQP5Zwq80/5z19TWYHIg1KOHboCgVx/aQ==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [arm64]\n os: [darwin]\n\n '@rolldown/binding-darwin-x64@1.2.4':\n resolution: {integrity: sha512-fpDm4oBo6SqLvWUYCmFhdde3U9KH2fRNNMeAnAPAIwxRL345xutL0EtEUcuoxsoazdJGv/MuDBQHlCDrtbvqOg==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [x64]\n os: [darwin]\n\n '@rolldown/binding-freebsd-x64@1.2.4':\n resolution: {integrity: sha512-rSJoreDE/HoIzoaib6MTp5jQtCTdMHKIvItAKT/ImS6Y6Ww76oUaeMyp4Vc/fAgd/ehji068IxetHXAnqUwN9A==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [x64]\n os: [freebsd]\n\n '@rolldown/binding-linux-arm-gnueabihf@1.2.4':\n resolution: {integrity: sha512-/jm8OGHgn7oGaJu3i/qZI9spUGcJ+y/lk43ttQ/iO1tOd9NissG6o97bighBCiL+BKRngmcDuR6ikfwYdJmVuQ==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [arm]\n os: [linux]\n\n '@rolldown/binding-linux-arm64-gnu@1.2.4':\n resolution: {integrity: sha512-tIP06BeD9EqvECBrPZ+sqdPlYrT+aYaAiu1wYziVx5elRK/ftm33JxVDy2bXGbr6J0CrtirCkR87/X5a2euEng==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [arm64]\n os: [linux]\n libc: [glibc]\n\n '@rolldown/binding-linux-arm64-musl@1.2.4':\n resolution: {integrity: sha512-Ql1Q0EQqVThvn9VAVlwNzsUvbSFtCMGjLpRRi4pk5i7NZZ4n5ISiLMjHYtus4VQ2PvkSw24zyaCVsiS+sXPj1w==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [arm64]\n os: [linux]\n libc: [musl]\n\n '@rolldown/binding-linux-ppc64-gnu@1.2.4':\n resolution: {integrity: sha512-GjbjXD4XXfN19D0LZNbmiCBUoDiRACsYHr0yaIbbn8aFsXjHZifcYqu/W5Er5X2X990WjHXFrxarn5chzItorQ==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [ppc64]\n os: [linux]\n libc: [glibc]\n\n '@rolldown/binding-linux-s390x-gnu@1.2.4':\n resolution: {integrity: sha512-p5WR0NOwaRmJ/B1b6IjEFLLivwEsf3PrdBIhRbhTCQisbo2SvHHpG4ELB/+FgQNnB88LTOF86upmJmbvZdQ2lw==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [s390x]\n os: [linux]\n libc: [glibc]\n\n '@rolldown/binding-linux-x64-gnu@1.2.4':\n resolution: {integrity: sha512-4/GyVjmhR+Tc6HLJvwc1sOhPqAZtySiSMesOZyX6JQ5XBxoTDEMKQzvo07NIK6nTon/SivlZqvhzvuVBNQhObQ==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [x64]\n os: [linux]\n libc: [glibc]\n\n '@rolldown/binding-linux-x64-musl@1.2.4':\n resolution: {integrity: sha512-l9eeLsCNvPpmSXUej0etw/J1eqV0Jj1D5G/xG6YTijmE6dkv6E2QezgWbTfQk63v952DPqrjOCoiqxq7Bw0YUQ==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [x64]\n os: [linux]\n libc: [musl]\n\n '@rolldown/binding-openharmony-arm64@1.2.4':\n resolution: {integrity: sha512-e0F355MSTMm3+UOqtV3L24gFUp2N5m1f8L/7d56deik6va+AXdrt9F8LbzGpeWGWRbZEDq4m8NVnJDeBtf9DZg==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [arm64]\n os: [openharmony]\n\n '@rolldown/binding-win32-arm64-msvc@1.2.4':\n resolution: {integrity: sha512-AWLi0uBRYh6QlE7OKhiz+phZC0qwtij2QZmhmOdsLdFn64m7oMpooE9ICE3lhm9xMb4SpDo2WbHcxX1iFLFtqw==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [arm64]\n os: [win32]\n\n '@rolldown/binding-win32-x64-msvc@1.2.4':\n resolution: {integrity: sha512-UwSDJOg3dqCAejWdxclJjCsh3Qq4vLYMDxmyHqo1btz3stK2VqgwNd3mm5tuIwzSlGIQ/1H9Hr+Zn09mrezNqQ==}\n engines: {node: ^20.19.0 || >=22.12.0}\n cpu: [x64]\n os: [win32]\n\n '@rolldown/pluginutils@1.0.1':\n resolution: {integrity: sha512-2j9bGt5Jh8hj+vPtgzPtl72j0yRxHAyumoo6TNfAjsLB04UtpSvPbPcDcBMxz7n+9CYB0c1GxQFxYRg2jimqGw==}\n\n '@standard-schema/spec@1.1.0':\n resolution: {integrity: sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==}\n\n '@tybys/wasm-util@0.9.0':\n resolution: {integrity: sha512-6+7nlbMVX/PVDCwaIQ8nTOPveOcFLSt8GcXdx8hD0bt39uWxYT88uXzqTd4fTvqta7oeUJqudepapKNt2DYJFw==}\n\n '@types/chai@5.2.3':\n resolution: {integrity: sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==}\n\n '@types/cross-spawn@6.0.6':\n resolution: {integrity: sha512-fXRhhUkG4H3TQk5dBhQ7m/JDdSNHKwR2BBia62lhwEIq9xGiQKLxd6LymNhn47SjXhsUEPmxi+PKw2OkW4LLjA==}\n\n '@types/deep-eql@4.0.2':\n resolution: {integrity: sha512-c9h9dVVMigMPc4bwTvC5dxqtqJZwQPePsWjPlpSOnojbor6pGqdk541lfA7AqFQr5pB1BRdq0juY9db81BwyFw==}\n\n '@types/estree@1.0.9':\n resolution: {integrity: sha512-GhdPgy1el4/ImP05X05Uw4cw2/M93BCUmnEvWZNStlCzEKME4Fkk+YpoA5OiHNQmoS7Cafb8Xa3Pya8m1Qrzeg==}\n\n '@types/node@26.4.1':\n resolution: {integrity: sha512-k97ENvZWtvA6yqz5/FS6a7duDgOPEeOQOc2iKS/nY6mX6qJUKtLnWzQS+Xj6tXweyj6ZcTAK2Qecetnvi9nCLA==}\n\n '@typescript/typescript-aix-ppc64@7.0.2':\n resolution: {integrity: sha512-MTKKkWB7p/0E9xi1d1tHtZ5PiLkGEMIq88pK2CubZjOsLtYTLqhgIgi6zepFa+9GHZ6h05NMCkQxGKiPXMxXtQ==}\n engines: {node: '>=16.20.0'}\n cpu: [ppc64]\n os: [aix]\n\n '@typescript/typescript-darwin-arm64@7.0.2':\n resolution: {integrity: sha512-gowzar9MwS/aRWp6f3a4KUqzRjAZjOsmGNCM6LcTgXum+dBfgsBVMN+AgvOCCbguXyick6LJhpBszxMebJ8syA==}\n engines: {node: '>=16.20.0'}\n cpu: [arm64]\n os: [darwin]\n\n '@typescript/typescript-darwin-x64@7.0.2':\n resolution: {integrity: sha512-SZ9xZInqApNlNGc9s0W1VSsktYSOe9cFqNOIqmN1Gs8SmkjKZYFt017G4VwPxASInODuAdbTW7sXiFUf893RgA==}\n engines: {node: '>=16.20.0'}\n cpu: [x64]\n os: [darwin]\n\n '@typescript/typescript-freebsd-arm64@7.0.2':\n resolution: {integrity: sha512-W5NH4y/J0plIIS5b2xvTEkU7JFxyqdMAOgf+Ilhl0vHQXKO5dZoxd+C/jEtq56c4F3wk71RB4BMRQ2XdI+bwYQ==}\n engines: {node: '>=16.20.0'}\n cpu: [arm64]\n os: [freebsd]\n\n '@typescript/typescript-freebsd-x64@7.0.2':\n resolution: {integrity: sha512-UMGDx5sTpzNw3WiPebH7l90IWfJggEd+egHt/q6p7/Cm3zqoV7VxkGXt+3DxPIw8CcmvAB0j3sVVfbhX+M4Tpw==}\n engines: {node: '>=16.20.0'}\n cpu: [x64]\n os: [freebsd]\n\n '@typescript/typescript-linux-arm64@7.0.2':\n resolution: {integrity: sha512-Qh4eU4/y3yDjnfjjyPYihMj5/ODIlmt+Bzu17OI+fiSRDW57QmU5SiN63exPRNJPKUzcc1INa1NXdrJ+MqHjUQ==}\n engines: {node: '>=16.20.0'}\n cpu: [arm64]\n os: [linux]\n\n '@typescript/typescript-linux-arm@7.0.2':\n resolution: {integrity: sha512-gffT3xPz9sR7j/YJExkyPntrI0P2EP9XbOyWzth2/Gs0RstK+90RBcO0ncXoXy/beYll1SXw846Nf2zdnEz0QQ==}\n engines: {node: '>=16.20.0'}\n cpu: [arm]\n os: [linux]\n\n '@typescript/typescript-linux-loong64@7.0.2':\n resolution: {integrity: sha512-uEHck9i8hoAzXPiYRib1O7miOnz23SxIeVl6F4LXox+qov1K35jHcEW6VHKvZI+pyvl7fZEP4MCU5LYvIq1GuQ==}\n engines: {node: '>=16.20.0'}\n cpu: [loong64]\n os: [linux]\n\n '@typescript/typescript-linux-mips64el@7.0.2':\n resolution: {integrity: sha512-R4KvAMnE43W5Qeqb0Ly56O3mWMWIAgsMyz36DCaycd5nbg/9kzm0liw3JocfRqyJY0KPmzFjbswozXyW0DnIYA==}\n engines: {node: '>=16.20.0'}\n cpu: [mips64el]\n os: [linux]\n\n '@typescript/typescript-linux-ppc64@7.0.2':\n resolution: {integrity: sha512-DORx5b3sd/4S7eayxm4FQv+A7CrkUIGRaHiwI8oiHTAI1fAPWhF4J0vAlkC8biAlHSVVwxMQ3tjZ2/DVbnQiiA==}\n engines: {node: '>=16.20.0'}\n cpu: [ppc64]\n os: [linux]\n\n '@typescript/typescript-linux-riscv64@7.0.2':\n resolution: {integrity: sha512-wf0jqEDOjrPRnKwYRyyJDRo11KMbvMFrU+q4zqKyChODBzvlkbhNQfKvLxQCcwTpdDaXSHZTVuh0JoCrKCUMHQ==}\n engines: {node: '>=16.20.0'}\n cpu: [riscv64]\n os: [linux]\n\n '@typescript/typescript-linux-s390x@7.0.2':\n resolution: {integrity: sha512-IkwJc3L7yhytWd/ewjyxNDfOmswCm9GWMJT/ue/dU4aZNbwZeYAetq42VyLmsmSjvoX7z74X6ZaYCtzAr0EuGw==}\n engines: {node: '>=16.20.0'}\n cpu: [s390x]\n os: [linux]\n\n '@typescript/typescript-linux-x64@7.0.2':\n resolution: {integrity: sha512-EYdf2cNg7rgCWJnxCdJ+F3V39O8ihb37eHAu1LK8oAFizgTQbPOK7zHHXbPt8rX24COqODXeI3sIf0fCXG7H/A==}\n engines: {node: '>=16.20.0'}\n cpu: [x64]\n os: [linux]\n\n '@typescript/typescript-netbsd-arm64@7.0.2':\n resolution: {integrity: sha512-+polYF4MF04aPpO5FTkHran9yUQDSXqy5GiSDKpsll5jy3l3+g9QLhpf39T+ePtefhXLOGrLl0QIjkQP6VnelA==}\n engines: {node: '>=16.20.0'}\n cpu: [arm64]\n os: [netbsd]\n\n '@typescript/typescript-netbsd-x64@7.0.2':\n resolution: {integrity: sha512-8YIT0EHM/3dq10ZOVF/A7pc/YSMtbcecct4rWtexrnSCHOPcpC2KTLXfTCR6vDpnSiY12heNb1GiN/wu+T/FyA==}\n engines: {node: '>=16.20.0'}\n cpu: [x64]\n os: [netbsd]\n\n '@typescript/typescript-openbsd-arm64@7.0.2':\n resolution: {integrity: sha512-APT8+ClYnuYm1u9+kgGXoMj2VzWzcymwh2gNSQVySHfkRDGOTVkoWLjCmOQSaO+PoqQ57B0flRp9SA+7GnnkzQ==}\n engines: {node: '>=16.20.0'}\n cpu: [arm64]\n os: [openbsd]\n\n '@typescript/typescript-openbsd-x64@7.0.2':\n resolution: {integrity: sha512-yX7s+Q0Dln0Dt9tEzZsAjXXR/+ytBM7AlglaqyeMPxQszJ1JhlJdZ6jLA+IzldHtflX81em7lDao1xXu+aRRkg==}\n engines: {node: '>=16.20.0'}\n cpu: [x64]\n os: [openbsd]\n\n '@typescript/typescript-sunos-x64@7.0.2':\n resolution: {integrity: sha512-dLJDGaLZ1D4HPQn62u1n8mBDkJREwMsAkCdkwd4Ieqw+x3TUyTsqY0YiBCtE6H6OzzgGk3iuZ3vFWRS+E8/d1g==}\n engines: {node: '>=16.20.0'}\n cpu: [x64]\n os: [sunos]\n\n '@typescript/typescript-win32-arm64@7.0.2':\n resolution: {integrity: sha512-Gyl1Vy6OsWesLzmq+EP0Fb7b4Nid5232AvcA2SFcdYreldpNtYFFofPjnt62y9hQy7VTaZp65ICJjuAQRaVcIQ==}\n engines: {node: '>=16.20.0'}\n cpu: [arm64]\n os: [win32]\n\n '@typescript/typescript-win32-x64@7.0.2':\n resolution: {integrity: sha512-0BQ3HkAHHlKLSp1qRvf3SUhGpGsDuhB/jgFw75guyqbxJqEaS0Cw/VFO8i2nHglJUzQCRtMMR/IBAKE3ETMC4g==}\n engines: {node: '>=16.20.0'}\n cpu: [x64]\n os: [win32]\n\n '@vitest/expect@4.1.11':\n resolution: {integrity: sha512-VX2x5vNJXET47KAFzwERI+KRMtTTCSWTfSMKsW7JsUsXV4psq++e3DvZpuTDOpHcxytiDs6p2nhVb2tVDiiUYw==}\n\n '@vitest/mocker@4.1.11':\n resolution: {integrity: sha512-2XJVD55d1o5AZous5CCGKS74g/riOj9odEt2bQpCVZeblHyHdnMeFl4jl0XjU21stf4mbjUkew2eXQZt65g5CQ==}\n peerDependencies:\n msw: ^2.4.9\n vite: ^6.0.0 || ^7.0.0 || ^8.0.0\n peerDependenciesMeta:\n msw:\n optional: true\n vite:\n optional: true\n\n '@vitest/pretty-format@4.1.11':\n resolution: {integrity: sha512-yiZzPbGTS9Sr/JpFl8zHrcIkAofNbFV6k21vIgQN/cY/oxZeXhJv5sc/MBJ5jFKWmWs+oJHw0UXLZjmf931+Vw==}\n\n '@vitest/runner@4.1.11':\n resolution: {integrity: sha512-LztvUgdwMNJMIkj3hQnnxiC2Xy1zNxq928W/xhjCLaNCzqTZOudjwbQf6v9IntZGPw132i2Lq2rgTRZHD3JHNw==}\n\n '@vitest/snapshot@4.1.11':\n resolution: {integrity: sha512-pN7ikn1ON7h8ee4gIAp4AzyK+zBtJPzVbqOgu5LCEh4VaJVbPQcgYQYJIMGQPXVeJJq1fnfazis7a5pFNPahog==}\n\n '@vitest/spy@4.1.11':\n resolution: {integrity: sha512-apNa/prQy2qCeywhnixOHPRCgGNhvg7T4Dapfl1GahLp/R+uhBm5cPyFoNVyqsNd2h1nJxL6BqqdIjiABL60YA==}\n\n '@vitest/utils@4.1.11':\n resolution: {integrity: sha512-zTCVGpyFsGWBhllOyKlTw/vnr6D9qxsfSDyfbyZmTyjHw5N/VuvzHpHoQjm2ZJzn4RJgx5w4r7V0er69CmLgPQ==}\n\n '@yarnpkg/lockfile@1.1.0':\n resolution: {integrity: sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==}\n\n '@yuku-codegen/binding-android-arm64@0.8.7':\n resolution: {integrity: sha512-C/0zV5IhgVdYhGJTwrY0v8dknxlhiKwtVJkMUaexu9/QvRmzlV4vfU3hZlUSgqc2BxQHntL1mCVbDq8j0FRFDw==}\n cpu: [arm64]\n os: [android]\n\n '@yuku-codegen/binding-darwin-arm64@0.8.7':\n resolution: {integrity: sha512-/u+REDMI4a0/lsJXTM4c53/w31OGZLOReZIyg62uhgLs0kc8NHsj/nOcxTdlQjq5gi0zhdkccD9LaLTXcdzPvw==}\n cpu: [arm64]\n os: [darwin]\n\n '@yuku-codegen/binding-darwin-x64@0.8.7':\n resolution: {integrity: sha512-sMMzFOwCo4WXR+/6zIBThOocSC50iIIZZdfiIDbaLvj0Ax/rWt/iavyfEAqajyvzydLyCqR/ZItdLWSRlu1umw==}\n cpu: [x64]\n os: [darwin]\n\n '@yuku-codegen/binding-freebsd-x64@0.8.7':\n resolution: {integrity: sha512-MpdpKXix9P+Y1rKgjvcNeNtGjXeL1CmttNhYINrWls8kRpm4xM/oBGTmn6w7to8lAlwj5jm8q03dQPl5mRv4Qw==}\n cpu: [x64]\n os: [freebsd]\n\n '@yuku-codegen/binding-linux-arm-gnu@0.8.7':\n resolution: {integrity: sha512-rr1srFLlPAmC1vtxfc9C1YLDe3iH09YjfSeeIidBqKhzx1MATjOAq4mjlRUOnhr/L27MotWIYOFKwVsd5JZFOg==}\n cpu: [arm]\n os: [linux]\n libc: [glibc]\n\n '@yuku-codegen/binding-linux-arm-musl@0.8.7':\n resolution: {integrity: sha512-eAufXh8qBRpiSO6ueaMDL+yyoXIGLhpUce72YbcACtZU2qhExwBIJyEtQf5kH2Ki0X2aqkSjSfog4OPtKXan3Q==}\n cpu: [arm]\n os: [linux]\n libc: [musl]\n\n '@yuku-codegen/binding-linux-arm64-gnu@0.8.7':\n resolution: {integrity: sha512-gw4w6wPoHObBrdIC4duVWLmJOvpdE25j5D7yrM5mACNlK4klRz/lv8hK+ssQk9EJHBgZjSaqZIJVFgqNYbfv7A==}\n cpu: [arm64]\n os: [linux]\n libc: [glibc]\n\n '@yuku-codegen/binding-linux-arm64-musl@0.8.7':\n resolution: {integrity: sha512-L68N6Y4XkqcIaKo3Ra88JEvBEH4AHff44A4INcrxeVWZ8CZtu2tCpfVxe3hR8qQQMcvBSQlDn24KpkCKEhVvfA==}\n cpu: [arm64]\n os: [linux]\n libc: [musl]\n\n '@yuku-codegen/binding-linux-x64-gnu@0.8.7':\n resolution: {integrity: sha512-dzyAbltJmf3Cqlb8HcFuYIf5Yn0fl1vTr3XJ9HiVNNvOlhqPSArOqtw9vI1p6/VTXTjrMLXlU+s+/kNHiIy/Cw==}\n cpu: [x64]\n os: [linux]\n libc: [glibc]\n\n '@yuku-codegen/binding-linux-x64-musl@0.8.7':\n resolution: {integrity: sha512-Otw4MH3404q0Bbvl+YTdW9aoUV5vXmUw8260bWvt1XlaoIX/ceSgI4ygheRDMfBPoHt6FDayQaO9OLVUZAgkFA==}\n cpu: [x64]\n os: [linux]\n libc: [musl]\n\n '@yuku-codegen/binding-win32-arm64@0.8.7':\n resolution: {integrity: sha512-qo/jyrzryiBuKEsFiuWaBCBe3tRMynQ0qFWFgOEjcCMQeZfBm+wKiVEUEFXXLc7bh8YezguAWp0Mtnhq4ARNyA==}\n cpu: [arm64]\n os: [win32]\n\n '@yuku-codegen/binding-win32-x64@0.8.7':\n resolution: {integrity: sha512-D5lDsVDx6m00E6bWySlWdH72Ca4TPSaphDqB6QjU6MpuNLIJqoGoatYyq2rOmBE8Zv/kunot/o58KGL03P3eiA==}\n cpu: [x64]\n os: [win32]\n\n '@yuku-parser/binding-android-arm64@0.8.7':\n resolution: {integrity: sha512-eGKYiUDX7Y0V7tDTmg+JTVnXnjMqfXXsorZ+EDf5kxwchQ3Or1HS14MzI2fw+jFhHR85fCWt+mtX33Yao73hIQ==}\n cpu: [arm64]\n os: [android]\n\n '@yuku-parser/binding-darwin-arm64@0.8.7':\n resolution: {integrity: sha512-Re0RHelKLnjEURulY2/KxW+Ngb8zuNA4BRZuMwgGQNzVumT6u4U2N2hc01oeYVNVof0i7GrXE4UCNBgbpRRnjQ==}\n cpu: [arm64]\n os: [darwin]\n\n '@yuku-parser/binding-darwin-x64@0.8.7':\n resolution: {integrity: sha512-Hn8DROtQkjlA1ACbPgj4a7eP9IuVOI504oiTwpkWPbpaDWD9KdmnVYCqW+1LfenNK/g7O9NhWGpXEdaCNX7lIA==}\n cpu: [x64]\n os: [darwin]\n\n '@yuku-parser/binding-freebsd-x64@0.8.7':\n resolution: {integrity: sha512-bAP2OV8wRuzplX/jYxv9+vvqQT8JxyNphI8fLfXGL054Xs+4/J5u33cIm3y4rxY8rdoLmmdiJs2Tq7r7lrDRfA==}\n cpu: [x64]\n os: [freebsd]\n\n '@yuku-parser/binding-linux-arm-gnu@0.8.7':\n resolution: {integrity: sha512-kTYwJQQgmZeAWdDIWabiReIZMpmfLueIj1tCmjStUtFGhR1Z0qwxonKVfUC4N7h/VhGGzLZ//7O1kgt1QKqgCg==}\n cpu: [arm]\n os: [linux]\n libc: [glibc]\n\n '@yuku-parser/binding-linux-arm-musl@0.8.7':\n resolution: {integrity: sha512-uL4jE8HPT2BLlxAXyD10LqgPuXa9eDa0BKpCdSANmzIJghq/2eZo3/gQNtaxPZMupWoxjYzSad9IXrwu7aYPXQ==}\n cpu: [arm]\n os: [linux]\n libc: [musl]\n\n '@yuku-parser/binding-linux-arm64-gnu@0.8.7':\n resolution: {integrity: sha512-3gVN4pWSKZmXiNX7cU164dR9MPvesCHnlH6nPfpK+yQsCuYphjKKplcb4SnZBrhiqmXbgb2HR0c2TS0IZUPhgA==}\n cpu: [arm64]\n os: [linux]\n libc: [glibc]\n\n '@yuku-parser/binding-linux-arm64-musl@0.8.7':\n resolution: {integrity: sha512-S0mwfEjoLpxzXeZw802Wa4RaELsQiPtWqG6INcy8j4GtvNFtl4LCX3eGO1XLn9pyLAISLzTRyU3zUCBUPin8lg==}\n cpu: [arm64]\n os: [linux]\n libc: [musl]\n\n '@yuku-parser/binding-linux-x64-gnu@0.8.7':\n resolution: {integrity: sha512-lnbWdPmerE5D1uH1G4IEZKnPzCrWCStRGrtgpSIe1RibAo5bZIjDbbbPYXmMHCEh4F+x/JaJpElh26a3r+BPbg==}\n cpu: [x64]\n os: [linux]\n libc: [glibc]\n\n '@yuku-parser/binding-linux-x64-musl@0.8.7':\n resolution: {integrity: sha512-769uwndMvMzUvATWbAcEvyLHKA+DzhHSCl/obBUrRdYfRo26yxui6S8y3z7uJ+Naup7UKrDxrpK7OnQkxkl9KQ==}\n cpu: [x64]\n os: [linux]\n libc: [musl]\n\n '@yuku-parser/binding-win32-arm64@0.8.7':\n resolution: {integrity: sha512-mEB/9PlaAkisJ6KWGz0zvywXoU6+80dTlR2LwS7s/jcXXoU6fm2+sitBZXtqu3+Q4DcDgPxM45uWMCzPs0TSRw==}\n cpu: [arm64]\n os: [win32]\n\n '@yuku-parser/binding-win32-x64@0.8.7':\n resolution: {integrity: sha512-8vNB2DP0ou61nGb8tc/qfi41gfyDXz1MHr2zqL3nR+cJ6CEbiuWV/l/a/vv151gCgiZLLAyGkQGENpozdg716w==}\n cpu: [x64]\n os: [win32]\n\n '@yuku-toolchain/types@0.8.7':\n resolution: {integrity: sha512-2Z53dNxAJL6UvFoIrDZvYf3zlO8s4VJK4O2hhaB4mXVwwpX/7ajtss3cmfqKvamlNLWyt9FSWs4eoYdlbxpnHA==}\n\n '@zkochan/js-yaml@0.0.7':\n resolution: {integrity: sha512-nrUSn7hzt7J6JWgWGz78ZYI8wj+gdIJdk0Ynjpp8l+trkn58Uqsf6RYrYkEK+3X18EX+TNdtJI0WxAtc+L84SQ==}\n hasBin: true\n\n agent-base@6.0.2:\n resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==}\n engines: {node: '>= 6.0.0'}\n\n ansi-regex@5.0.1:\n resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==}\n engines: {node: '>=8'}\n\n ansi-styles@4.3.0:\n resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==}\n engines: {node: '>=8'}\n\n ansis@4.3.1:\n resolution: {integrity: sha512-BJ8/l4R5LRE7hW9WdSuGYrLSHi2ynxeFpDFbH0K/CgNeY/tyhk+vO6TYxXC5r5CpUhNVX310xzPsN/H9lCdfOA==}\n engines: {node: '>=14'}\n\n argparse@2.0.1:\n resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==}\n\n assertion-error@2.0.1:\n resolution: {integrity: sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==}\n engines: {node: '>=12'}\n\n asynckit@0.4.0:\n resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==}\n\n axios@1.18.1:\n resolution: {integrity: sha512-3nTvFlvpn9Zu/RkHUqtc7/+al4UpRW5az71ap5zccp6e8RAYEzhMTecX8Dz1wWDYrPpUoB1HAQEGEAEvUr7S9g==}\n\n balanced-match@4.0.3:\n resolution: {integrity: sha512-1pHv8LX9CpKut1Zp4EXey7Z8OfH11ONNH6Dhi2WDUt31VVZFXZzKwXcysBgqSumFCmR+0dqjMK5v5JiFHzi0+g==}\n engines: {node: 20 || >=22}\n\n base64-js@1.5.1:\n resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==}\n\n bl@4.1.0:\n resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==}\n\n brace-expansion@5.0.9:\n resolution: {integrity: sha512-ScQ4IuvIEF1TMlP7Zt+vjJ//9zlPb2SDcxWxM3bk8s6t6GGdJ7KO1dCcTidOPJKePW30LE/2cT7wCyPho9/Wxg==}\n engines: {node: 20 || >=22}\n\n buffer@5.7.1:\n resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==}\n\n bundle-name@4.1.0:\n resolution: {integrity: sha512-tjwM5exMg6BGRI+kNmTntNsvdZS1X8BFYS6tnJ2hdH0kVxM6/eVZ2xy+FqStSWvYmtfFMDLIxurorHwDKfDz5Q==}\n engines: {node: '>=18'}\n\n cac@7.0.0:\n resolution: {integrity: sha512-tixWYgm5ZoOD+3g6UTea91eow5z6AAHaho3g0V9CNSNb45gM8SmflpAc+GRd1InC4AqN/07Unrgp56Y94N9hJQ==}\n engines: {node: '>=20.19.0'}\n\n call-bind-apply-helpers@1.0.2:\n resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==}\n engines: {node: '>= 0.4'}\n\n chai@6.2.2:\n resolution: {integrity: sha512-NUPRluOfOiTKBKvWPtSD4PhFvWCqOi0BGStNWs57X9js7XGTprSmFoz5F0tWhR4WPjNeR9jXqdC7/UpSJTnlRg==}\n engines: {node: '>=18'}\n\n chalk@4.1.2:\n resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}\n engines: {node: '>=10'}\n\n cli-cursor@3.1.0:\n resolution: {integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==}\n engines: {node: '>=8'}\n\n cli-spinners@2.6.1:\n resolution: {integrity: sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g==}\n engines: {node: '>=6'}\n\n cliui@8.0.1:\n resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==}\n engines: {node: '>=12'}\n\n clone@1.0.4:\n resolution: {integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==}\n engines: {node: '>=0.8'}\n\n color-convert@2.0.1:\n resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}\n engines: {node: '>=7.0.0'}\n\n color-name@1.1.4:\n resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}\n\n combined-stream@1.0.8:\n resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==}\n engines: {node: '>= 0.8'}\n\n convert-source-map@2.0.0:\n resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==}\n\n cross-spawn@7.0.6:\n resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==}\n engines: {node: '>= 8'}\n\n debug@4.4.3:\n resolution: {integrity: sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==}\n engines: {node: '>=6.0'}\n peerDependencies:\n supports-color: '*'\n peerDependenciesMeta:\n supports-color:\n optional: true\n\n default-browser-id@5.0.0:\n resolution: {integrity: sha512-A6p/pu/6fyBcA1TRz/GqWYPViplrftcW2gZC9q79ngNCKAeR/X3gcEdXQHl4KNXV+3wgIJ1CPkJQ3IHM6lcsyA==}\n engines: {node: '>=18'}\n\n default-browser@5.2.1:\n resolution: {integrity: sha512-WY/3TUME0x3KPYdRRxEJJvXRHV4PyPoUsxtZa78lwItwRQRHhd2U9xOscaT/YTf8uCXIAjeJOFBVEh/7FtD8Xg==}\n engines: {node: '>=18'}\n\n defaults@1.0.4:\n resolution: {integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==}\n\n define-lazy-prop@3.0.0:\n resolution: {integrity: sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==}\n engines: {node: '>=12'}\n\n defu@6.1.7:\n resolution: {integrity: sha512-7z22QmUWiQ/2d0KkdYmANbRUVABpZ9SNYyH5vx6PZ+nE5bcC0l7uFvEfHlyld/HcGBFTL536ClDt3DEcSlEJAQ==}\n\n delayed-stream@1.0.0:\n resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==}\n engines: {node: '>=0.4.0'}\n\n detect-libc@2.1.2:\n resolution: {integrity: sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==}\n engines: {node: '>=8'}\n\n dotenv-expand@12.0.3:\n resolution: {integrity: sha512-uc47g4b+4k/M/SeaW1y4OApx+mtLWl92l5LMPP0GNXctZqELk+YGgOPIIC5elYmUH4OuoK3JLhuRUYegeySiFA==}\n engines: {node: '>=12'}\n\n dotenv@16.4.7:\n resolution: {integrity: sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==}\n engines: {node: '>=12'}\n\n dts-resolver@3.0.0:\n resolution: {integrity: sha512-1T1f+z+4tl9XD+m+0HBgWoL/nm0bOIffyWaUuUSBlFg/86IWvfx+wjNaO/ybU0AJzG9/Mi5hBUgGV6zCmWEN7Q==}\n engines: {node: ^22.18.0 || >=24.0.0}\n peerDependencies:\n oxc-resolver: '>=11.0.0'\n peerDependenciesMeta:\n oxc-resolver:\n optional: true\n\n dunder-proto@1.0.1:\n resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==}\n engines: {node: '>= 0.4'}\n\n ejs@5.0.1:\n resolution: {integrity: sha512-COqBPFMxuPTPspXl2DkVYaDS3HtrD1GpzOGkNTJ1IYkifq/r9h8SVEFrjA3D9/VJGOEoMQcrlhpntcSUrM8k6A==}\n engines: {node: '>=0.12.18'}\n hasBin: true\n\n emoji-regex@8.0.0:\n resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}\n\n empathic@2.0.1:\n resolution: {integrity: sha512-YGRs8knHhKHVShLkFET/rWAU8kmHbOV5LwN938RHI0pljAJ1Gf6SzXsSmRaEzcXTtOOmVqJ5+WtQPL5uigY50Q==}\n engines: {node: '>=14'}\n\n end-of-stream@1.4.5:\n resolution: {integrity: sha512-ooEGc6HP26xXq/N+GCGOT0JKCLDGrq2bQUZrQ7gyrJiZANJ/8YDTxTpQBXGMn+WbIQXNVpyWymm7KYVICQnyOg==}\n\n es-define-property@1.0.1:\n resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==}\n engines: {node: '>= 0.4'}\n\n es-errors@1.3.0:\n resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==}\n engines: {node: '>= 0.4'}\n\n es-module-lexer@2.3.1:\n resolution: {integrity: sha512-shc1dbU90Yl/xq1QrC7QRtfcwURZuVRfPhZbDoldJ1cn1gzDvBaBWlv0eFolj5+0znnPJz5TXLxsN77X/12KTA==}\n\n es-object-atoms@1.1.1:\n resolution: {integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==}\n engines: {node: '>= 0.4'}\n\n es-set-tostringtag@2.1.0:\n resolution: {integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==}\n engines: {node: '>= 0.4'}\n\n escalade@3.2.0:\n resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==}\n engines: {node: '>=6'}\n\n escape-string-regexp@1.0.5:\n resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==}\n engines: {node: '>=0.8.0'}\n\n estree-walker@3.0.3:\n resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==}\n\n expect-type@1.4.0:\n resolution: {integrity: sha512-KfYbmpRm0VbLjEvVa9yGwCi9GI34xvi7A/HXYWQO65CSD2u3MczUJSuwXKFIxlGsgBQizV9q5J9NHj4VG0n+pA==}\n engines: {node: '>=12.0.0'}\n\n fast-string-truncated-width@3.0.3:\n resolution: {integrity: sha512-0jjjIEL6+0jag3l2XWWizO64/aZVtpiGE3t0Zgqxv0DPuxiMjvB3M24fCyhZUO4KomJQPj3LTSUnDP3GpdwC0g==}\n\n fast-string-width@3.0.2:\n resolution: {integrity: sha512-gX8LrtNEI5hq8DVUfRQMbr5lpaS4nMIWV+7XEbXk2b8kiQIizgnlr12B4dA3ZEx3308ze0O4Q1R+cHts8kyUJg==}\n\n fast-wrap-ansi@0.2.0:\n resolution: {integrity: sha512-rLV8JHxTyhVmFYhBJuMujcrHqOT2cnO5Zxj37qROj23CP39GXubJRBUFF0z8KFK77Uc0SukZUf7JZhsVEQ6n8w==}\n\n fdir@6.5.0:\n resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==}\n engines: {node: '>=12.0.0'}\n peerDependencies:\n picomatch: ^3 || ^4\n peerDependenciesMeta:\n picomatch:\n optional: true\n\n figures@3.2.0:\n resolution: {integrity: sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==}\n engines: {node: '>=8'}\n\n flat@5.0.2:\n resolution: {integrity: sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==}\n hasBin: true\n\n follow-redirects@1.16.0:\n resolution: {integrity: sha512-y5rN/uOsadFT/JfYwhxRS5R7Qce+g3zG97+JrtFZlC9klX/W5hD7iiLzScI4nZqUS7DNUdhPgw4xI8W2LuXlUw==}\n engines: {node: '>=4.0'}\n peerDependencies:\n debug: '*'\n peerDependenciesMeta:\n debug:\n optional: true\n\n form-data@4.0.6:\n resolution: {integrity: sha512-vKatAh4SlVfgbv+YtmhiRjhEMJsYpsG1Y2rMQtR+SVSbytsSD1YGzDIcrAJmdFec88u/+VoGmxnl+80gL1tRCQ==}\n engines: {node: '>= 6'}\n\n fs-constants@1.0.0:\n resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==}\n\n fsevents@2.3.3:\n resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}\n engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}\n os: [darwin]\n\n function-bind@1.1.2:\n resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==}\n\n get-caller-file@2.0.5:\n resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==}\n engines: {node: 6.* || 8.* || >= 10.*}\n\n get-intrinsic@1.3.0:\n resolution: {integrity: sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==}\n engines: {node: '>= 0.4'}\n\n get-proto@1.0.1:\n resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==}\n engines: {node: '>= 0.4'}\n\n get-tsconfig@5.0.0-beta.5:\n resolution: {integrity: sha512-/6gFNr0N04nob252sTQxyFLi3eKFRqIg1I87YcqAMT1i6SQrSF6KujUEQrtrjMV0H/eejTCltLdDSTEMzHbnsQ==}\n engines: {node: '>=20.20.0'}\n\n gopd@1.2.0:\n resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==}\n engines: {node: '>= 0.4'}\n\n has-flag@4.0.0:\n resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==}\n engines: {node: '>=8'}\n\n has-symbols@1.1.0:\n resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==}\n engines: {node: '>= 0.4'}\n\n has-tostringtag@1.0.2:\n resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==}\n engines: {node: '>= 0.4'}\n\n hasown@2.0.4:\n resolution: {integrity: sha512-T2UbfbBEF32wiepXIsMlTW9+dDYC6wMh/t/vYA4tuOMKqWz/n3vr1NFSxQiyP+zk2mXsoMA/i/7qV6LKut1t1A==}\n engines: {node: '>= 0.4'}\n\n hookable@6.1.1:\n resolution: {integrity: sha512-U9LYDy1CwhMCnprUfeAZWZGByVbhd54hwepegYTK7Pi5NvqEj63ifz5z+xukznehT7i6NIZRu89Ay1AZmRsLEQ==}\n\n https-proxy-agent@5.0.1:\n resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==}\n engines: {node: '>= 6'}\n\n ieee754@1.2.1:\n resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==}\n\n ignore@7.0.5:\n resolution: {integrity: sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==}\n engines: {node: '>= 4'}\n\n import-without-cache@0.4.0:\n resolution: {integrity: sha512-NkJQA7oZ4YHQhd2+H3BoRFKF3d/XNsiKpHZCQEMH9pDX27hQQLsTyOocyRgaIVtf8gHX3Nt3LPkR4e5EdtPAGQ==}\n engines: {node: ^22.18.0 || >=24.0.0}\n\n inherits@2.0.4:\n resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==}\n\n is-docker@3.0.0:\n resolution: {integrity: sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==}\n engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}\n hasBin: true\n\n is-fullwidth-code-point@3.0.0:\n resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==}\n engines: {node: '>=8'}\n\n is-inside-container@1.0.0:\n resolution: {integrity: sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==}\n engines: {node: '>=14.16'}\n hasBin: true\n\n is-interactive@1.0.0:\n resolution: {integrity: sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==}\n engines: {node: '>=8'}\n\n is-unicode-supported@0.1.0:\n resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==}\n engines: {node: '>=10'}\n\n is-wsl@3.1.0:\n resolution: {integrity: sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw==}\n engines: {node: '>=16'}\n\n isexe@2.0.0:\n resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}\n\n json5@2.2.3:\n resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==}\n engines: {node: '>=6'}\n hasBin: true\n\n jsonc-parser@3.3.1:\n resolution: {integrity: sha512-HUgH65KyejrUFPvHFPbqOY0rsFip3Bo5wb4ngvdi1EpCYWUQDC5V+Y7mZws+DLkr4M//zQJoanu1SP+87Dv1oQ==}\n\n lightningcss-android-arm64@1.33.0:\n resolution: {integrity: sha512-gEpRTalKdosp4Bb8qWtc2iOgE5SeIHlpS1up9bFq2wAyYhl1UdTObYiHe98zEM9SQvSoqQZ1IQD0JNpg3Ml5pg==}\n engines: {node: '>= 12.0.0'}\n cpu: [arm64]\n os: [android]\n\n lightningcss-darwin-arm64@1.33.0:\n resolution: {integrity: sha512-Sciaz8eenNTKn9b3t7+xr0ipTp9YxKQY4npwQ3mrRuL0BAVHBLyZxofhaKBAVtzmtRZ/zTyo0/to4B1uWG/Djg==}\n engines: {node: '>= 12.0.0'}\n cpu: [arm64]\n os: [darwin]\n\n lightningcss-darwin-x64@1.33.0:\n resolution: {integrity: sha512-Z5UPAxzrjlWNNyGy6i65cJzzvgJ5D3T6wMvs+gWpY9d7qRhANrxqAp6LhxIgZhWEw18RfJTGcRxjuLIBr+m8XQ==}\n engines: {node: '>= 12.0.0'}\n cpu: [x64]\n os: [darwin]\n\n lightningcss-freebsd-x64@1.33.0:\n resolution: {integrity: sha512-QQM/Ti/hQajJwCY+RiWuCZ9sdtI/XQk7nDK5vC8kkdwixezOlDgvDx7+RT+QjK6FcFT4MpsuoBnHIo/O3StRRg==}\n engines: {node: '>= 12.0.0'}\n cpu: [x64]\n os: [freebsd]\n\n lightningcss-linux-arm-gnueabihf@1.33.0:\n resolution: {integrity: sha512-N7FVBe6iS24MlM6R/4RBTxGhQheZGs7tiQ9U32UtF75NzP5Q7xWPRqLBCKxlRQRk3rY1jCIPLzx7WzOhuUIRLQ==}\n engines: {node: '>= 12.0.0'}\n cpu: [arm]\n os: [linux]\n\n lightningcss-linux-arm64-gnu@1.33.0:\n resolution: {integrity: sha512-j2v/itmy4HlNxlc6voKXYgBqNi0Ng2LShg4z7GufpEgs05P+2suBVyi9I6YHq5uoVFx9ETin3eCEhLVyXGQnKg==}\n engines: {node: '>= 12.0.0'}\n cpu: [arm64]\n os: [linux]\n libc: [glibc]\n\n lightningcss-linux-arm64-musl@1.33.0:\n resolution: {integrity: sha512-yiO5ROMuYQgXbC60yjZU5CYSFZGKXL0HFATXt9mHJn1+zW55oCtMI9NfcVhYLMFDL7gV7oBPon/EmMMGg2OvtQ==}\n engines: {node: '>= 12.0.0'}\n cpu: [arm64]\n os: [linux]\n libc: [musl]\n\n lightningcss-linux-x64-gnu@1.33.0:\n resolution: {integrity: sha512-ar+Ju7LmcN0Jo4FpL4hpFybwNG9/3A/Br5KW2n2jyODg3MEZXaDYADdemoNS+BDNfMgKvylJLj4S5tyRActuAg==}\n engines: {node: '>= 12.0.0'}\n cpu: [x64]\n os: [linux]\n libc: [glibc]\n\n lightningcss-linux-x64-musl@1.33.0:\n resolution: {integrity: sha512-RYiYbkokw0trfKqqzfF55lginwEPrD3OJDfTuJzFs1MK6iFnDenaz1fqLLtX4ITG3OktJQXOeTaw1awrBAlZPw==}\n engines: {node: '>= 12.0.0'}\n cpu: [x64]\n os: [linux]\n libc: [musl]\n\n lightningcss-win32-arm64-msvc@1.33.0:\n resolution: {integrity: sha512-1K+MPfLSFVpphzpdbfkhlWk6wBrTObBzS2T6db10PNOZgR9GoVsAWzwNyuhUYYbTp23j+4RrncfujZ4uAzXvwA==}\n engines: {node: '>= 12.0.0'}\n cpu: [arm64]\n os: [win32]\n\n lightningcss-win32-x64-msvc@1.33.0:\n resolution: {integrity: sha512-OlEICDx/Xl0FqSp4bry8zFnCvGpig3Gl4gCquvYwHuqJKEC1+n9NgDniFvqHGmMv1ZkqDJrDqKKSykTDX+ehuA==}\n engines: {node: '>= 12.0.0'}\n cpu: [x64]\n os: [win32]\n\n lightningcss@1.33.0:\n resolution: {integrity: sha512-WkUDrojuJs0xkgGf2udWxa3yGBRxPtxUkB79i6aCZLRgc7PM8fZe9TosfPDcvEpQZbuFASnHYmRLBLUbmLOIIA==}\n engines: {node: '>= 12.0.0'}\n\n lines-and-columns@2.0.3:\n resolution: {integrity: sha512-cNOjgCnLB+FnvWWtyRTzmB3POJ+cXxTA81LoW7u8JdmhfXzriropYwpjShnz1QLLWsQwY7nIxoDmcPTwphDK9w==}\n engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}\n\n log-symbols@4.1.0:\n resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==}\n engines: {node: '>=10'}\n\n magic-string@0.30.21:\n resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==}\n\n math-intrinsics@1.1.0:\n resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==}\n engines: {node: '>= 0.4'}\n\n mime-db@1.52.0:\n resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==}\n engines: {node: '>= 0.6'}\n\n mime-types@2.1.35:\n resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==}\n engines: {node: '>= 0.6'}\n\n mimic-fn@2.1.0:\n resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==}\n engines: {node: '>=6'}\n\n minimatch@10.2.5:\n resolution: {integrity: sha512-MULkVLfKGYDFYejP07QOurDLLQpcjk7Fw+7jXS2R2czRQzR56yHRveU5NDJEOviH+hETZKSkIk5c+T23GjFUMg==}\n engines: {node: 18 || 20 || >=22}\n\n minimist@1.2.8:\n resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==}\n\n ms@2.1.3:\n resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==}\n\n nanoid@3.3.18:\n resolution: {integrity: sha512-DTg4MJbGMWkfi6VZFdNt2/caMbQy4Ou+Op/hJQvGEWcnVfoA1QA+xzRKAzw9jD6+GVOOeYr/mIcuDSdug6F6+w==}\n engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}\n hasBin: true\n\n npm-run-path@4.0.1:\n resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==}\n engines: {node: '>=8'}\n\n nx@23.2.0:\n resolution: {integrity: sha512-EWscwgKDr40bpsy2Dpijx0+wdkQjF8Z5Gvo91qLh3Ot2qkoYCznAzrqT2hXkkc1USC1TvX64t5IgsQq0Wtg1nA==}\n hasBin: true\n peerDependencies:\n '@swc-node/register': ^1.11.1\n '@swc/core': ^1.15.8\n peerDependenciesMeta:\n '@swc-node/register':\n optional: true\n '@swc/core':\n optional: true\n\n obug@2.1.4:\n resolution: {integrity: sha512-4a+OsYv9UktOJKE+l1A4OufDgdRF9PifWj+tJnHURo/P+WOxpG4GzUFL9qCalmWauao6ogiG+QvnCovwPoyAWA==}\n engines: {node: '>=12.20.0'}\n\n once@1.4.0:\n resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==}\n\n onetime@5.1.2:\n resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==}\n engines: {node: '>=6'}\n\n open@10.1.0:\n resolution: {integrity: sha512-mnkeQ1qP5Ue2wd+aivTD3NHd/lZ96Lu0jgf0pwktLPtx6cTZiH7tyeGRRHs0zX0rbrahXPnXlUnbeXyaBBuIaw==}\n engines: {node: '>=18'}\n\n ora@5.4.1:\n resolution: {integrity: sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==}\n engines: {node: '>=10'}\n\n oxfmt@0.66.0:\n resolution: {integrity: sha512-FfvqR8RFtV6JJpRrpkfqyVCQ7HDvZ/VriWFx7veftCgL1B5ZO9qNr+1rvPieycMQnNfVG0PWyJQiy7p0hq1I5w==}\n engines: {node: ^20.19.0 || >=22.12.0}\n hasBin: true\n peerDependencies:\n svelte: ^5.0.0\n vite-plus: '*'\n peerDependenciesMeta:\n svelte:\n optional: true\n vite-plus:\n optional: true\n\n oxlint-tsgolint@7.0.2001:\n resolution: {integrity: sha512-KjK/XLcXr1DSyonKhsuFqJRiuKqcyG9j3LJ8nkOsrLzGvodBPqzHOKauy10asLMDI0sUpvb+1sxlzff3udZvfg==}\n hasBin: true\n\n oxlint@1.81.0:\n resolution: {integrity: sha512-HyrJYqeoOCL0iqaLEzGewGT48ZX99P3hxYh8udAF9RGGIghSamkXE4ClUyBpEDNqasamThgmlPbuMOe7SAZmHg==}\n engines: {node: ^20.19.0 || >=22.12.0}\n hasBin: true\n peerDependencies:\n oxlint-tsgolint: '>=7.0.2001'\n vite-plus: '*'\n peerDependenciesMeta:\n oxlint-tsgolint:\n optional: true\n vite-plus:\n optional: true\n\n path-key@3.1.1:\n resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==}\n engines: {node: '>=8'}\n\n pathe@2.0.3:\n resolution: {integrity: sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==}\n\n picocolors@1.1.1:\n resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==}\n\n picomatch@4.0.5:\n resolution: {integrity: sha512-RvwwcruNjI1ncT5xRakeyS9Lf8lcItv34KD+aif+VH9kduAyfYBipGh12274xtenIPZ119/R9BdTBa8gAwSh0A==}\n engines: {node: '>=12'}\n\n postcss@8.5.26:\n resolution: {integrity: sha512-u82N74LFzG8ca+dD8puPnplTXoGH4fTPpVGuIbt36G3qvNlkvfD0lEAZSxaly3KX8TS/L1A1gsCEmvKmBcVbkQ==}\n engines: {node: ^10 || ^12 || >=14}\n\n proxy-from-env@2.1.0:\n resolution: {integrity: sha512-cJ+oHTW1VAEa8cJslgmUZrc+sjRKgAKl3Zyse6+PV38hZe/V6Z14TbCuXcan9F9ghlz4QrFr2c92TNF82UkYHA==}\n engines: {node: '>=10'}\n\n quansync@1.0.0:\n resolution: {integrity: sha512-5xZacEEufv3HSTPQuchrvV6soaiACMFnq1H8wkVioctoH3TRha9Sz66lOxRwPK/qZj7HPiSveih9yAyh98gvqA==}\n\n readable-stream@3.6.2:\n resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==}\n engines: {node: '>= 6'}\n\n require-directory@2.1.1:\n resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==}\n engines: {node: '>=0.10.0'}\n\n resolve-pkg-maps@1.0.0:\n resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==}\n\n resolve.exports@2.0.3:\n resolution: {integrity: sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A==}\n engines: {node: '>=10'}\n\n restore-cursor@3.1.0:\n resolution: {integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==}\n engines: {node: '>=8'}\n\n rolldown-plugin-dts@0.27.14:\n resolution: {integrity: sha512-ZvuDDwoIpRK9RPxDXratCpklFO9QZZWndf/sd0VBFb4LEj0jj07UcHK9OCh7V4XiFz2Z89ziyBC2K6tJiDjrbw==}\n engines: {node: ^22.18.0 || >=24.11.0}\n peerDependencies:\n '@typescript/native-preview': '*'\n '@volar/typescript': ~2.4.0\n rolldown: ^1.0.0\n typescript: ^5.0.0 || ^6.0.0 || ~7.0.0\n vue-tsc: ~3.2.0 || ~3.3.0\n peerDependenciesMeta:\n '@typescript/native-preview':\n optional: true\n '@volar/typescript':\n optional: true\n typescript:\n optional: true\n vue-tsc:\n optional: true\n\n rolldown@1.2.4:\n resolution: {integrity: sha512-rSr7irW0K7QRWzjdJXqZowkcRdDtjRduh43rBltnVKd0VFq839l1lJoDvGJb6gl7+4rTTCrPWu+YfujUL8Ug7w==}\n engines: {node: ^20.19.0 || >=22.12.0}\n hasBin: true\n\n run-applescript@7.0.0:\n resolution: {integrity: sha512-9by4Ij99JUr/MCFBUkDKLWK3G9HVXmabKz9U5MlIAIuvuzkiOicRYs8XJLxX+xahD+mLiiCYDqF9dKAgtzKP1A==}\n engines: {node: '>=18'}\n\n safe-buffer@5.2.1:\n resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==}\n\n semver@7.8.4:\n resolution: {integrity: sha512-rUCObTnP32Q08R2uuIrt7r9PlEonuTmtuXYcW6s5kjdlj3xbnwe+21yXptAUYcMAABLkYYTtnmzb3w3EDZfueA==}\n engines: {node: '>=10'}\n hasBin: true\n\n shebang-command@2.0.0:\n resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==}\n engines: {node: '>=8'}\n\n shebang-regex@3.0.0:\n resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==}\n engines: {node: '>=8'}\n\n siginfo@2.0.0:\n resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==}\n\n signal-exit@3.0.7:\n resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==}\n\n sisteransi@1.0.5:\n resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==}\n\n smol-toml@1.6.1:\n resolution: {integrity: sha512-dWUG8F5sIIARXih1DTaQAX4SsiTXhInKf1buxdY9DIg4ZYPZK5nGM1VRIYmEbDbsHt7USo99xSLFu5Q1IqTmsg==}\n engines: {node: '>= 18'}\n\n source-map-js@1.2.1:\n resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==}\n engines: {node: '>=0.10.0'}\n\n stackback@0.0.2:\n resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==}\n\n std-env@4.2.0:\n resolution: {integrity: sha512-oCUKSupKTHX53EyjDtuZQ64pjLJ6yYCtpmEw0goYxtjG9KpbRe8KAsl2tBUGU9DyMcJ0RwJ8GqJAFzMXcXW1Rw==}\n\n string-width@4.2.3:\n resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==}\n engines: {node: '>=8'}\n\n string_decoder@1.3.0:\n resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==}\n\n strip-ansi@6.0.1:\n resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==}\n engines: {node: '>=8'}\n\n strip-bom@3.0.0:\n resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==}\n engines: {node: '>=4'}\n\n supports-color@7.2.0:\n resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==}\n engines: {node: '>=8'}\n\n tar-stream@2.2.0:\n resolution: {integrity: sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==}\n engines: {node: '>=6'}\n\n tinybench@2.9.0:\n resolution: {integrity: sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==}\n\n tinyexec@1.3.0:\n resolution: {integrity: sha512-QKAl9m8gWWGHV8jZcPeym6j+XULi6tOf1mT83WYJ4Lk2ytW/uwAWkrP0uFsdoYMdueVJ0qs26wZ+23xeB4ibNQ==}\n engines: {node: '>=18'}\n\n tinyglobby@0.2.17:\n resolution: {integrity: sha512-wXR/dYpcqKmfWpEdZjiKJOwCNFndD0DMnrW/cYjVGttEkBfVgcLFHoNrlj47mjOVic9yyNu65alsgF4NQyTa2g==}\n engines: {node: '>=12.0.0'}\n\n tinypool@2.1.0:\n resolution: {integrity: sha512-Pugqs6M0m7Lv1I7FtxN4aoyToKg1C4tu+/381vH35y8oENM/Ai7f7C4StcoK4/+BSw9ebcS8jRiVrORFKCALLw==}\n engines: {node: ^20.0.0 || >=22.0.0}\n\n tinyrainbow@3.1.1:\n resolution: {integrity: sha512-yau8yJdTt989Mm0Bd/236QnzEiPf2xLLTqUZRUJOo/3CB078LSwzei343DgtJVmfJKJE3TMINY1u42SQsP6mXw==}\n engines: {node: '>=14.0.0'}\n\n tmp@0.2.7:\n resolution: {integrity: sha512-e0votIpp4Uo2AJYSzVHV6xCcawuiez3DzqDAbrTc3YxBkplN6e+dM13ZeIcZnDg/QpSuU2zfZ3rzwY8ukEnaXw==}\n engines: {node: '>=14.14'}\n\n tree-kill@1.2.2:\n resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==}\n hasBin: true\n\n tsconfig-paths@4.2.0:\n resolution: {integrity: sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg==}\n engines: {node: '>=6'}\n\n tsdown@0.22.14:\n resolution: {integrity: sha512-ule7Y+fsAN2iZbLDoo7C4KYljFJNJJ+fLshyn+9gozeTspVersWHxwdGB+Dm2hzA38s6muFnUTl0jK3vJm9ifQ==}\n engines: {node: ^22.18.0 || >=24.11.0}\n hasBin: true\n peerDependencies:\n '@arethetypeswrong/core': ^0.18.1\n '@tsdown/css': 0.22.14\n '@tsdown/exe': 0.22.14\n '@vitejs/devtools': '*'\n publint: ^0.3.8\n tsx: '*'\n typescript: ^5.0.0 || ^6.0.0 || ^7.0.0\n unplugin-unused: ^0.5.0\n unrun: '*'\n peerDependenciesMeta:\n '@arethetypeswrong/core':\n optional: true\n '@tsdown/css':\n optional: true\n '@tsdown/exe':\n optional: true\n '@vitejs/devtools':\n optional: true\n publint:\n optional: true\n tsx:\n optional: true\n typescript:\n optional: true\n unplugin-unused:\n optional: true\n unrun:\n optional: true\n\n tslib@2.8.1:\n resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==}\n\n typescript@7.0.2:\n resolution: {integrity: sha512-8FYau96o3NKOhbjKi/qNvG/W5jhzxkbdm5sj9AbZ/5T5sWqn3hJgLfGx27sRKZWTvyzCP8dLRBTf5tBTSRVUNA==}\n engines: {node: '>=16.20.0'}\n hasBin: true\n\n unconfig-core@7.5.0:\n resolution: {integrity: sha512-Su3FauozOGP44ZmKdHy2oE6LPjk51M/TRRjHv2HNCWiDvfvCoxC2lno6jevMA91MYAdCdwP05QnWdWpSbncX/w==}\n\n undici-types@8.3.0:\n resolution: {integrity: sha512-j375ScV60dom+YkPFIfTLcOiPxkN/buHz5GobjLhixFuANaNs3C9l4GmrWqejgXWJ7BbJcFYpTEUkS1Ge8bpZQ==}\n\n unrun@0.3.1:\n resolution: {integrity: sha512-onIck/oNnCaytwths1ZVp1LK2Gq2hPoyFhiHebObuUXqR3S0uHuLLaBK8K6mRRgV7Ptip8AnNvaUsgzwWwBZuA==}\n engines: {node: ^22.13.0 || >=24.0.0}\n hasBin: true\n peerDependencies:\n synckit: ^0.11.11\n peerDependenciesMeta:\n synckit:\n optional: true\n\n util-deprecate@1.0.2:\n resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}\n\n verkit@0.3.2:\n resolution: {integrity: sha512-zj/ob3UsvJGN0whEAKFp53REA5X66hvffVqoCtVQAakJKnKlH+/PcOfMoFwIG/o4rElqLv/ycAFlx8ZlXUorCg==}\n engines: {node: '>=18.12.0'}\n\n vite@8.2.2:\n resolution: {integrity: sha512-cFKLV/PRgAUlIRm5WjMjJ86jrftzpqcgH+Us+DS8mI3CDNiH30Whrz8uHL3+MOLPAgqbMBAqWdAHAphOAM+z/Q==}\n engines: {node: ^20.19.0 || >=22.12.0}\n hasBin: true\n peerDependencies:\n '@types/node': ^20.19.0 || >=22.12.0\n '@vitejs/devtools': ^0.4.0 || ^0.5.0\n esbuild: ^0.27.0 || ^0.28.0\n jiti: '>=1.21.0'\n less: ^4.0.0\n sass: ^1.70.0\n sass-embedded: ^1.70.0\n stylus: '>=0.54.8'\n sugarss: ^5.0.0\n terser: ^5.16.0\n tsx: ^4.8.1\n yaml: ^2.4.2\n peerDependenciesMeta:\n '@types/node':\n optional: true\n '@vitejs/devtools':\n optional: true\n esbuild:\n optional: true\n jiti:\n optional: true\n less:\n optional: true\n sass:\n optional: true\n sass-embedded:\n optional: true\n stylus:\n optional: true\n sugarss:\n optional: true\n terser:\n optional: true\n tsx:\n optional: true\n yaml:\n optional: true\n\n vitest@4.1.11:\n resolution: {integrity: sha512-fhACrNXUidIbGSBr5FlbuBkO7VWC1ZyLl0DO4CU2DrQoAPxX84Ysxs+HeGQpii5lZWV1Q4gBZTTu49mF+A6Edw==}\n engines: {node: ^20.0.0 || ^22.0.0 || >=24.0.0}\n hasBin: true\n peerDependencies:\n '@edge-runtime/vm': '*'\n '@opentelemetry/api': ^1.9.0\n '@types/node': ^20.0.0 || ^22.0.0 || >=24.0.0\n '@vitest/browser-playwright': 4.1.11\n '@vitest/browser-preview': 4.1.11\n '@vitest/browser-webdriverio': 4.1.11\n '@vitest/coverage-istanbul': 4.1.11\n '@vitest/coverage-v8': 4.1.11\n '@vitest/ui': 4.1.11\n happy-dom: '*'\n jsdom: '*'\n vite: ^6.0.0 || ^7.0.0 || ^8.0.0\n peerDependenciesMeta:\n '@edge-runtime/vm':\n optional: true\n '@opentelemetry/api':\n optional: true\n '@types/node':\n optional: true\n '@vitest/browser-playwright':\n optional: true\n '@vitest/browser-preview':\n optional: true\n '@vitest/browser-webdriverio':\n optional: true\n '@vitest/coverage-istanbul':\n optional: true\n '@vitest/coverage-v8':\n optional: true\n '@vitest/ui':\n optional: true\n happy-dom:\n optional: true\n jsdom:\n optional: true\n\n wcwidth@1.0.1:\n resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==}\n\n which@2.0.2:\n resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}\n engines: {node: '>= 8'}\n hasBin: true\n\n which@3.0.1:\n resolution: {integrity: sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==}\n engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}\n hasBin: true\n\n why-is-node-running@2.3.0:\n resolution: {integrity: sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==}\n engines: {node: '>=8'}\n hasBin: true\n\n wrap-ansi@7.0.0:\n resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==}\n engines: {node: '>=10'}\n\n wrappy@1.0.2:\n resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==}\n\n y18n@5.0.8:\n resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==}\n engines: {node: '>=10'}\n\n yaml@2.9.0:\n resolution: {integrity: sha512-2AvhNX3mb8zd6Zy7INTtSpl1F15HW6Wnqj0srWlkKLcpYl/gMIMJiyuGq2KeI2YFxUPjdlB+3Lc10seMLtL4cA==}\n engines: {node: '>= 14.6'}\n hasBin: true\n\n yargs-parser@21.1.1:\n resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==}\n engines: {node: '>=12'}\n\n yargs@17.7.2:\n resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==}\n engines: {node: '>=12'}\n\n yuku-ast@0.8.7:\n resolution: {integrity: sha512-h6+4bDfyootiMB9vckk5uKo5r5j0GHrkr17FQTDNfEsFT3DWlN9uu1HJwQwc64pgmLCI945fWM3lbTIqxjT3GQ==}\n\n yuku-codegen@0.8.7:\n resolution: {integrity: sha512-adwDZSh8oVDzhE6Du9PwVWxcOxeV0e2EVhUuMKWfhSY4wkrDq9eqixlxFF3l/XGUV1E7UFzhpz9393MUumkyNw==}\n\n yuku-parser@0.8.7:\n resolution: {integrity: sha512-vRD9nwt4L3aYpxNqeSC4WqLv58xrXef0Ong1Mc45CTXTIpvLafx7JO05sczmQZwdLEZvywrLOGdNC5+Rp5N1BQ==}\n\nsnapshots:\n\n '@clack/core@1.4.3':\n dependencies:\n fast-wrap-ansi: 0.2.0\n sisteransi: 1.0.5\n\n '@clack/prompts@1.7.0':\n dependencies:\n '@clack/core': 1.4.3\n fast-string-width: 3.0.2\n fast-wrap-ansi: 0.2.0\n sisteransi: 1.0.5\n\n '@emnapi/core@1.4.5':\n dependencies:\n '@emnapi/wasi-threads': 1.0.4\n tslib: 2.8.1\n\n '@emnapi/runtime@1.4.5':\n dependencies:\n tslib: 2.8.1\n\n '@emnapi/wasi-threads@1.0.4':\n dependencies:\n tslib: 2.8.1\n\n '@jest/diff-sequences@30.0.1': {}\n\n '@jridgewell/sourcemap-codec@1.5.5': {}\n\n '@napi-rs/wasm-runtime@0.2.4':\n dependencies:\n '@emnapi/core': 1.4.5\n '@emnapi/runtime': 1.4.5\n '@tybys/wasm-util': 0.9.0\n\n '@nx/nx-darwin-arm64@23.2.0':\n optional: true\n\n '@nx/nx-darwin-x64@23.2.0':\n optional: true\n\n '@nx/nx-freebsd-x64@23.2.0':\n optional: true\n\n '@nx/nx-linux-arm-gnueabihf@23.2.0':\n optional: true\n\n '@nx/nx-linux-arm64-gnu@23.2.0':\n optional: true\n\n '@nx/nx-linux-arm64-musl@23.2.0':\n optional: true\n\n '@nx/nx-linux-x64-gnu@23.2.0':\n optional: true\n\n '@nx/nx-linux-x64-musl@23.2.0':\n optional: true\n\n '@nx/nx-win32-arm64-msvc@23.2.0':\n optional: true\n\n '@nx/nx-win32-x64-msvc@23.2.0':\n optional: true\n\n '@oxc-project/types@0.144.0': {}\n\n '@oxfmt/binding-android-arm-eabi@0.66.0':\n optional: true\n\n '@oxfmt/binding-android-arm64@0.66.0':\n optional: true\n\n '@oxfmt/binding-darwin-arm64@0.66.0':\n optional: true\n\n '@oxfmt/binding-darwin-x64@0.66.0':\n optional: true\n\n '@oxfmt/binding-freebsd-x64@0.66.0':\n optional: true\n\n '@oxfmt/binding-linux-arm-gnueabihf@0.66.0':\n optional: true\n\n '@oxfmt/binding-linux-arm-musleabihf@0.66.0':\n optional: true\n\n '@oxfmt/binding-linux-arm64-gnu@0.66.0':\n optional: true\n\n '@oxfmt/binding-linux-arm64-musl@0.66.0':\n optional: true\n\n '@oxfmt/binding-linux-ppc64-gnu@0.66.0':\n optional: true\n\n '@oxfmt/binding-linux-riscv64-gnu@0.66.0':\n optional: true\n\n '@oxfmt/binding-linux-riscv64-musl@0.66.0':\n optional: true\n\n '@oxfmt/binding-linux-s390x-gnu@0.66.0':\n optional: true\n\n '@oxfmt/binding-linux-x64-gnu@0.66.0':\n optional: true\n\n '@oxfmt/binding-linux-x64-musl@0.66.0':\n optional: true\n\n '@oxfmt/binding-openharmony-arm64@0.66.0':\n optional: true\n\n '@oxfmt/binding-win32-arm64-msvc@0.66.0':\n optional: true\n\n '@oxfmt/binding-win32-ia32-msvc@0.66.0':\n optional: true\n\n '@oxfmt/binding-win32-x64-msvc@0.66.0':\n optional: true\n\n '@oxlint-tsgolint/darwin-arm64@7.0.2001':\n optional: true\n\n '@oxlint-tsgolint/darwin-x64@7.0.2001':\n optional: true\n\n '@oxlint-tsgolint/linux-arm64@7.0.2001':\n optional: true\n\n '@oxlint-tsgolint/linux-x64@7.0.2001':\n optional: true\n\n '@oxlint-tsgolint/win32-arm64@7.0.2001':\n optional: true\n\n '@oxlint-tsgolint/win32-x64@7.0.2001':\n optional: true\n\n '@oxlint/binding-android-arm-eabi@1.81.0':\n optional: true\n\n '@oxlint/binding-android-arm64@1.81.0':\n optional: true\n\n '@oxlint/binding-darwin-arm64@1.81.0':\n optional: true\n\n '@oxlint/binding-darwin-x64@1.81.0':\n optional: true\n\n '@oxlint/binding-freebsd-x64@1.81.0':\n optional: true\n\n '@oxlint/binding-linux-arm-gnueabihf@1.81.0':\n optional: true\n\n '@oxlint/binding-linux-arm-musleabihf@1.81.0':\n optional: true\n\n '@oxlint/binding-linux-arm64-gnu@1.81.0':\n optional: true\n\n '@oxlint/binding-linux-arm64-musl@1.81.0':\n optional: true\n\n '@oxlint/binding-linux-ppc64-gnu@1.81.0':\n optional: true\n\n '@oxlint/binding-linux-riscv64-gnu@1.81.0':\n optional: true\n\n '@oxlint/binding-linux-riscv64-musl@1.81.0':\n optional: true\n\n '@oxlint/binding-linux-s390x-gnu@1.81.0':\n optional: true\n\n '@oxlint/binding-linux-x64-gnu@1.81.0':\n optional: true\n\n '@oxlint/binding-linux-x64-musl@1.81.0':\n optional: true\n\n '@oxlint/binding-openharmony-arm64@1.81.0':\n optional: true\n\n '@oxlint/binding-win32-arm64-msvc@1.81.0':\n optional: true\n\n '@oxlint/binding-win32-ia32-msvc@1.81.0':\n optional: true\n\n '@oxlint/binding-win32-x64-msvc@1.81.0':\n optional: true\n\n '@quansync/fs@1.0.0':\n dependencies:\n quansync: 1.0.0\n\n '@rolldown/binding-android-arm64@1.2.4':\n optional: true\n\n '@rolldown/binding-darwin-arm64@1.2.4':\n optional: true\n\n '@rolldown/binding-darwin-x64@1.2.4':\n optional: true\n\n '@rolldown/binding-freebsd-x64@1.2.4':\n optional: true\n\n '@rolldown/binding-linux-arm-gnueabihf@1.2.4':\n optional: true\n\n '@rolldown/binding-linux-arm64-gnu@1.2.4':\n optional: true\n\n '@rolldown/binding-linux-arm64-musl@1.2.4':\n optional: true\n\n '@rolldown/binding-linux-ppc64-gnu@1.2.4':\n optional: true\n\n '@rolldown/binding-linux-s390x-gnu@1.2.4':\n optional: true\n\n '@rolldown/binding-linux-x64-gnu@1.2.4':\n optional: true\n\n '@rolldown/binding-linux-x64-musl@1.2.4':\n optional: true\n\n '@rolldown/binding-openharmony-arm64@1.2.4':\n optional: true\n\n '@rolldown/binding-win32-arm64-msvc@1.2.4':\n optional: true\n\n '@rolldown/binding-win32-x64-msvc@1.2.4':\n optional: true\n\n '@rolldown/pluginutils@1.0.1': {}\n\n '@standard-schema/spec@1.1.0': {}\n\n '@tybys/wasm-util@0.9.0':\n dependencies:\n tslib: 2.8.1\n\n '@types/chai@5.2.3':\n dependencies:\n '@types/deep-eql': 4.0.2\n assertion-error: 2.0.1\n\n '@types/cross-spawn@6.0.6':\n dependencies:\n '@types/node': 26.4.1\n\n '@types/deep-eql@4.0.2': {}\n\n '@types/estree@1.0.9': {}\n\n '@types/node@26.4.1':\n dependencies:\n undici-types: 8.3.0\n\n '@typescript/typescript-aix-ppc64@7.0.2':\n optional: true\n\n '@typescript/typescript-darwin-arm64@7.0.2':\n optional: true\n\n '@typescript/typescript-darwin-x64@7.0.2':\n optional: true\n\n '@typescript/typescript-freebsd-arm64@7.0.2':\n optional: true\n\n '@typescript/typescript-freebsd-x64@7.0.2':\n optional: true\n\n '@typescript/typescript-linux-arm64@7.0.2':\n optional: true\n\n '@typescript/typescript-linux-arm@7.0.2':\n optional: true\n\n '@typescript/typescript-linux-loong64@7.0.2':\n optional: true\n\n '@typescript/typescript-linux-mips64el@7.0.2':\n optional: true\n\n '@typescript/typescript-linux-ppc64@7.0.2':\n optional: true\n\n '@typescript/typescript-linux-riscv64@7.0.2':\n optional: true\n\n '@typescript/typescript-linux-s390x@7.0.2':\n optional: true\n\n '@typescript/typescript-linux-x64@7.0.2':\n optional: true\n\n '@typescript/typescript-netbsd-arm64@7.0.2':\n optional: true\n\n '@typescript/typescript-netbsd-x64@7.0.2':\n optional: true\n\n '@typescript/typescript-openbsd-arm64@7.0.2':\n optional: true\n\n '@typescript/typescript-openbsd-x64@7.0.2':\n optional: true\n\n '@typescript/typescript-sunos-x64@7.0.2':\n optional: true\n\n '@typescript/typescript-win32-arm64@7.0.2':\n optional: true\n\n '@typescript/typescript-win32-x64@7.0.2':\n optional: true\n\n '@vitest/expect@4.1.11':\n dependencies:\n '@standard-schema/spec': 1.1.0\n '@types/chai': 5.2.3\n '@vitest/spy': 4.1.11\n '@vitest/utils': 4.1.11\n chai: 6.2.2\n tinyrainbow: 3.1.1\n\n '@vitest/mocker@4.1.11(vite@8.2.2(@types/node@26.4.1)(yaml@2.9.0))':\n dependencies:\n '@vitest/spy': 4.1.11\n estree-walker: 3.0.3\n magic-string: 0.30.21\n optionalDependencies:\n vite: 8.2.2(@types/node@26.4.1)(yaml@2.9.0)\n\n '@vitest/pretty-format@4.1.11':\n dependencies:\n tinyrainbow: 3.1.1\n\n '@vitest/runner@4.1.11':\n dependencies:\n '@vitest/utils': 4.1.11\n pathe: 2.0.3\n\n '@vitest/snapshot@4.1.11':\n dependencies:\n '@vitest/pretty-format': 4.1.11\n '@vitest/utils': 4.1.11\n magic-string: 0.30.21\n pathe: 2.0.3\n\n '@vitest/spy@4.1.11': {}\n\n '@vitest/utils@4.1.11':\n dependencies:\n '@vitest/pretty-format': 4.1.11\n convert-source-map: 2.0.0\n tinyrainbow: 3.1.1\n\n '@yarnpkg/lockfile@1.1.0': {}\n\n '@yuku-codegen/binding-android-arm64@0.8.7':\n optional: true\n\n '@yuku-codegen/binding-darwin-arm64@0.8.7':\n optional: true\n\n '@yuku-codegen/binding-darwin-x64@0.8.7':\n optional: true\n\n '@yuku-codegen/binding-freebsd-x64@0.8.7':\n optional: true\n\n '@yuku-codegen/binding-linux-arm-gnu@0.8.7':\n optional: true\n\n '@yuku-codegen/binding-linux-arm-musl@0.8.7':\n optional: true\n\n '@yuku-codegen/binding-linux-arm64-gnu@0.8.7':\n optional: true\n\n '@yuku-codegen/binding-linux-arm64-musl@0.8.7':\n optional: true\n\n '@yuku-codegen/binding-linux-x64-gnu@0.8.7':\n optional: true\n\n '@yuku-codegen/binding-linux-x64-musl@0.8.7':\n optional: true\n\n '@yuku-codegen/binding-win32-arm64@0.8.7':\n optional: true\n\n '@yuku-codegen/binding-win32-x64@0.8.7':\n optional: true\n\n '@yuku-parser/binding-android-arm64@0.8.7':\n optional: true\n\n '@yuku-parser/binding-darwin-arm64@0.8.7':\n optional: true\n\n '@yuku-parser/binding-darwin-x64@0.8.7':\n optional: true\n\n '@yuku-parser/binding-freebsd-x64@0.8.7':\n optional: true\n\n '@yuku-parser/binding-linux-arm-gnu@0.8.7':\n optional: true\n\n '@yuku-parser/binding-linux-arm-musl@0.8.7':\n optional: true\n\n '@yuku-parser/binding-linux-arm64-gnu@0.8.7':\n optional: true\n\n '@yuku-parser/binding-linux-arm64-musl@0.8.7':\n optional: true\n\n '@yuku-parser/binding-linux-x64-gnu@0.8.7':\n optional: true\n\n '@yuku-parser/binding-linux-x64-musl@0.8.7':\n optional: true\n\n '@yuku-parser/binding-win32-arm64@0.8.7':\n optional: true\n\n '@yuku-parser/binding-win32-x64@0.8.7':\n optional: true\n\n '@yuku-toolchain/types@0.8.7': {}\n\n '@zkochan/js-yaml@0.0.7':\n dependencies:\n argparse: 2.0.1\n\n agent-base@6.0.2(supports-color@7.2.0):\n dependencies:\n debug: 4.4.3(supports-color@7.2.0)\n transitivePeerDependencies:\n - supports-color\n\n ansi-regex@5.0.1: {}\n\n ansi-styles@4.3.0:\n dependencies:\n color-convert: 2.0.1\n\n ansis@4.3.1: {}\n\n argparse@2.0.1: {}\n\n assertion-error@2.0.1: {}\n\n asynckit@0.4.0: {}\n\n axios@1.18.1(debug@4.4.3(supports-color@7.2.0))(supports-color@7.2.0):\n dependencies:\n follow-redirects: 1.16.0(debug@4.4.3(supports-color@7.2.0))\n form-data: 4.0.6\n https-proxy-agent: 5.0.1(supports-color@7.2.0)\n proxy-from-env: 2.1.0\n transitivePeerDependencies:\n - debug\n - supports-color\n\n balanced-match@4.0.3: {}\n\n base64-js@1.5.1: {}\n\n bl@4.1.0:\n dependencies:\n buffer: 5.7.1\n inherits: 2.0.4\n readable-stream: 3.6.2\n\n brace-expansion@5.0.9:\n dependencies:\n balanced-match: 4.0.3\n\n buffer@5.7.1:\n dependencies:\n base64-js: 1.5.1\n ieee754: 1.2.1\n\n bundle-name@4.1.0:\n dependencies:\n run-applescript: 7.0.0\n\n cac@7.0.0: {}\n\n call-bind-apply-helpers@1.0.2:\n dependencies:\n es-errors: 1.3.0\n function-bind: 1.1.2\n\n chai@6.2.2: {}\n\n chalk@4.1.2:\n dependencies:\n ansi-styles: 4.3.0\n supports-color: 7.2.0\n\n cli-cursor@3.1.0:\n dependencies:\n restore-cursor: 3.1.0\n\n cli-spinners@2.6.1: {}\n\n cliui@8.0.1:\n dependencies:\n string-width: 4.2.3\n strip-ansi: 6.0.1\n wrap-ansi: 7.0.0\n\n clone@1.0.4: {}\n\n color-convert@2.0.1:\n dependencies:\n color-name: 1.1.4\n\n color-name@1.1.4: {}\n\n combined-stream@1.0.8:\n dependencies:\n delayed-stream: 1.0.0\n\n convert-source-map@2.0.0: {}\n\n cross-spawn@7.0.6:\n dependencies:\n path-key: 3.1.1\n shebang-command: 2.0.0\n which: 2.0.2\n\n debug@4.4.3(supports-color@7.2.0):\n dependencies:\n ms: 2.1.3\n optionalDependencies:\n supports-color: 7.2.0\n\n default-browser-id@5.0.0: {}\n\n default-browser@5.2.1:\n dependencies:\n bundle-name: 4.1.0\n default-browser-id: 5.0.0\n\n defaults@1.0.4:\n dependencies:\n clone: 1.0.4\n\n define-lazy-prop@3.0.0: {}\n\n defu@6.1.7: {}\n\n delayed-stream@1.0.0: {}\n\n detect-libc@2.1.2: {}\n\n dotenv-expand@12.0.3:\n dependencies:\n dotenv: 16.4.7\n\n dotenv@16.4.7: {}\n\n dts-resolver@3.0.0: {}\n\n dunder-proto@1.0.1:\n dependencies:\n call-bind-apply-helpers: 1.0.2\n es-errors: 1.3.0\n gopd: 1.2.0\n\n ejs@5.0.1: {}\n\n emoji-regex@8.0.0: {}\n\n empathic@2.0.1: {}\n\n end-of-stream@1.4.5:\n dependencies:\n once: 1.4.0\n\n es-define-property@1.0.1: {}\n\n es-errors@1.3.0: {}\n\n es-module-lexer@2.3.1: {}\n\n es-object-atoms@1.1.1:\n dependencies:\n es-errors: 1.3.0\n\n es-set-tostringtag@2.1.0:\n dependencies:\n es-errors: 1.3.0\n get-intrinsic: 1.3.0\n has-tostringtag: 1.0.2\n hasown: 2.0.4\n\n escalade@3.2.0: {}\n\n escape-string-regexp@1.0.5: {}\n\n estree-walker@3.0.3:\n dependencies:\n '@types/estree': 1.0.9\n\n expect-type@1.4.0: {}\n\n fast-string-truncated-width@3.0.3: {}\n\n fast-string-width@3.0.2:\n dependencies:\n fast-string-truncated-width: 3.0.3\n\n fast-wrap-ansi@0.2.0:\n dependencies:\n fast-string-width: 3.0.2\n\n fdir@6.5.0(picomatch@4.0.5):\n optionalDependencies:\n picomatch: 4.0.5\n\n figures@3.2.0:\n dependencies:\n escape-string-regexp: 1.0.5\n\n flat@5.0.2: {}\n\n follow-redirects@1.16.0(debug@4.4.3(supports-color@7.2.0)):\n optionalDependencies:\n debug: 4.4.3(supports-color@7.2.0)\n\n form-data@4.0.6:\n dependencies:\n asynckit: 0.4.0\n combined-stream: 1.0.8\n es-set-tostringtag: 2.1.0\n hasown: 2.0.4\n mime-types: 2.1.35\n\n fs-constants@1.0.0: {}\n\n fsevents@2.3.3:\n optional: true\n\n function-bind@1.1.2: {}\n\n get-caller-file@2.0.5: {}\n\n get-intrinsic@1.3.0:\n dependencies:\n call-bind-apply-helpers: 1.0.2\n es-define-property: 1.0.1\n es-errors: 1.3.0\n es-object-atoms: 1.1.1\n function-bind: 1.1.2\n get-proto: 1.0.1\n gopd: 1.2.0\n has-symbols: 1.1.0\n hasown: 2.0.4\n math-intrinsics: 1.1.0\n\n get-proto@1.0.1:\n dependencies:\n dunder-proto: 1.0.1\n es-object-atoms: 1.1.1\n\n get-tsconfig@5.0.0-beta.5:\n dependencies:\n resolve-pkg-maps: 1.0.0\n\n gopd@1.2.0: {}\n\n has-flag@4.0.0: {}\n\n has-symbols@1.1.0: {}\n\n has-tostringtag@1.0.2:\n dependencies:\n has-symbols: 1.1.0\n\n hasown@2.0.4:\n dependencies:\n function-bind: 1.1.2\n\n hookable@6.1.1: {}\n\n https-proxy-agent@5.0.1(supports-color@7.2.0):\n dependencies:\n agent-base: 6.0.2(supports-color@7.2.0)\n debug: 4.4.3(supports-color@7.2.0)\n transitivePeerDependencies:\n - supports-color\n\n ieee754@1.2.1: {}\n\n ignore@7.0.5: {}\n\n import-without-cache@0.4.0: {}\n\n inherits@2.0.4: {}\n\n is-docker@3.0.0: {}\n\n is-fullwidth-code-point@3.0.0: {}\n\n is-inside-container@1.0.0:\n dependencies:\n is-docker: 3.0.0\n\n is-interactive@1.0.0: {}\n\n is-unicode-supported@0.1.0: {}\n\n is-wsl@3.1.0:\n dependencies:\n is-inside-container: 1.0.0\n\n isexe@2.0.0: {}\n\n json5@2.2.3: {}\n\n jsonc-parser@3.3.1: {}\n\n lightningcss-android-arm64@1.33.0:\n optional: true\n\n lightningcss-darwin-arm64@1.33.0:\n optional: true\n\n lightningcss-darwin-x64@1.33.0:\n optional: true\n\n lightningcss-freebsd-x64@1.33.0:\n optional: true\n\n lightningcss-linux-arm-gnueabihf@1.33.0:\n optional: true\n\n lightningcss-linux-arm64-gnu@1.33.0:\n optional: true\n\n lightningcss-linux-arm64-musl@1.33.0:\n optional: true\n\n lightningcss-linux-x64-gnu@1.33.0:\n optional: true\n\n lightningcss-linux-x64-musl@1.33.0:\n optional: true\n\n lightningcss-win32-arm64-msvc@1.33.0:\n optional: true\n\n lightningcss-win32-x64-msvc@1.33.0:\n optional: true\n\n lightningcss@1.33.0:\n dependencies:\n detect-libc: 2.1.2\n optionalDependencies:\n lightningcss-android-arm64: 1.33.0\n lightningcss-darwin-arm64: 1.33.0\n lightningcss-darwin-x64: 1.33.0\n lightningcss-freebsd-x64: 1.33.0\n lightningcss-linux-arm-gnueabihf: 1.33.0\n lightningcss-linux-arm64-gnu: 1.33.0\n lightningcss-linux-arm64-musl: 1.33.0\n lightningcss-linux-x64-gnu: 1.33.0\n lightningcss-linux-x64-musl: 1.33.0\n lightningcss-win32-arm64-msvc: 1.33.0\n lightningcss-win32-x64-msvc: 1.33.0\n\n lines-and-columns@2.0.3: {}\n\n log-symbols@4.1.0:\n dependencies:\n chalk: 4.1.2\n is-unicode-supported: 0.1.0\n\n magic-string@0.30.21:\n dependencies:\n '@jridgewell/sourcemap-codec': 1.5.5\n\n math-intrinsics@1.1.0: {}\n\n mime-db@1.52.0: {}\n\n mime-types@2.1.35:\n dependencies:\n mime-db: 1.52.0\n\n mimic-fn@2.1.0: {}\n\n minimatch@10.2.5:\n dependencies:\n brace-expansion: 5.0.9\n\n minimist@1.2.8: {}\n\n ms@2.1.3: {}\n\n nanoid@3.3.18: {}\n\n npm-run-path@4.0.1:\n dependencies:\n path-key: 3.1.1\n\n nx@23.2.0:\n dependencies:\n '@clack/core': 1.4.3\n '@clack/prompts': 1.7.0\n '@emnapi/core': 1.4.5\n '@emnapi/runtime': 1.4.5\n '@emnapi/wasi-threads': 1.0.4\n '@jest/diff-sequences': 30.0.1\n '@napi-rs/wasm-runtime': 0.2.4\n '@tybys/wasm-util': 0.9.0\n '@yarnpkg/lockfile': 1.1.0\n '@zkochan/js-yaml': 0.0.7\n agent-base: 6.0.2(supports-color@7.2.0)\n ansi-regex: 5.0.1\n ansi-styles: 4.3.0\n argparse: 2.0.1\n asynckit: 0.4.0\n axios: 1.18.1(debug@4.4.3(supports-color@7.2.0))(supports-color@7.2.0)\n balanced-match: 4.0.3\n base64-js: 1.5.1\n bl: 4.1.0\n brace-expansion: 5.0.9\n buffer: 5.7.1\n bundle-name: 4.1.0\n call-bind-apply-helpers: 1.0.2\n chalk: 4.1.2\n cli-cursor: 3.1.0\n cli-spinners: 2.6.1\n cliui: 8.0.1\n clone: 1.0.4\n color-convert: 2.0.1\n color-name: 1.1.4\n combined-stream: 1.0.8\n debug: 4.4.3(supports-color@7.2.0)\n default-browser: 5.2.1\n default-browser-id: 5.0.0\n defaults: 1.0.4\n define-lazy-prop: 3.0.0\n delayed-stream: 1.0.0\n dotenv: 16.4.7\n dotenv-expand: 12.0.3\n dunder-proto: 1.0.1\n ejs: 5.0.1\n emoji-regex: 8.0.0\n end-of-stream: 1.4.5\n es-define-property: 1.0.1\n es-errors: 1.3.0\n es-object-atoms: 1.1.1\n es-set-tostringtag: 2.1.0\n escalade: 3.2.0\n escape-string-regexp: 1.0.5\n fast-string-truncated-width: 3.0.3\n fast-string-width: 3.0.2\n fast-wrap-ansi: 0.2.0\n figures: 3.2.0\n flat: 5.0.2\n follow-redirects: 1.16.0(debug@4.4.3(supports-color@7.2.0))\n form-data: 4.0.6\n fs-constants: 1.0.0\n function-bind: 1.1.2\n get-caller-file: 2.0.5\n get-intrinsic: 1.3.0\n get-proto: 1.0.1\n gopd: 1.2.0\n has-flag: 4.0.0\n has-symbols: 1.1.0\n has-tostringtag: 1.0.2\n hasown: 2.0.4\n https-proxy-agent: 5.0.1(supports-color@7.2.0)\n ieee754: 1.2.1\n ignore: 7.0.5\n inherits: 2.0.4\n is-docker: 3.0.0\n is-fullwidth-code-point: 3.0.0\n is-inside-container: 1.0.0\n is-interactive: 1.0.0\n is-unicode-supported: 0.1.0\n is-wsl: 3.1.0\n isexe: 2.0.0\n json5: 2.2.3\n jsonc-parser: 3.3.1\n lines-and-columns: 2.0.3\n log-symbols: 4.1.0\n math-intrinsics: 1.1.0\n mime-db: 1.52.0\n mime-types: 2.1.35\n mimic-fn: 2.1.0\n minimatch: 10.2.5\n minimist: 1.2.8\n ms: 2.1.3\n npm-run-path: 4.0.1\n once: 1.4.0\n onetime: 5.1.2\n open: 10.1.0\n ora: 5.4.1\n path-key: 3.1.1\n picocolors: 1.1.1\n proxy-from-env: 2.1.0\n readable-stream: 3.6.2\n require-directory: 2.1.1\n resolve.exports: 2.0.3\n restore-cursor: 3.1.0\n run-applescript: 7.0.0\n safe-buffer: 5.2.1\n semver: 7.8.4\n signal-exit: 3.0.7\n sisteransi: 1.0.5\n smol-toml: 1.6.1\n string-width: 4.2.3\n string_decoder: 1.3.0\n strip-ansi: 6.0.1\n strip-bom: 3.0.0\n supports-color: 7.2.0\n tar-stream: 2.2.0\n tmp: 0.2.7\n tsconfig-paths: 4.2.0\n tslib: 2.8.1\n util-deprecate: 1.0.2\n wcwidth: 1.0.1\n which: 3.0.1\n wrap-ansi: 7.0.0\n wrappy: 1.0.2\n y18n: 5.0.8\n yaml: 2.9.0\n yargs: 17.7.2\n yargs-parser: 21.1.1\n optionalDependencies:\n '@nx/nx-darwin-arm64': 23.2.0\n '@nx/nx-darwin-x64': 23.2.0\n '@nx/nx-freebsd-x64': 23.2.0\n '@nx/nx-linux-arm-gnueabihf': 23.2.0\n '@nx/nx-linux-arm64-gnu': 23.2.0\n '@nx/nx-linux-arm64-musl': 23.2.0\n '@nx/nx-linux-x64-gnu': 23.2.0\n '@nx/nx-linux-x64-musl': 23.2.0\n '@nx/nx-win32-arm64-msvc': 23.2.0\n '@nx/nx-win32-x64-msvc': 23.2.0\n\n obug@2.1.4: {}\n\n once@1.4.0:\n dependencies:\n wrappy: 1.0.2\n\n onetime@5.1.2:\n dependencies:\n mimic-fn: 2.1.0\n\n open@10.1.0:\n dependencies:\n default-browser: 5.2.1\n define-lazy-prop: 3.0.0\n is-inside-container: 1.0.0\n is-wsl: 3.1.0\n\n ora@5.4.1:\n dependencies:\n bl: 4.1.0\n chalk: 4.1.2\n cli-cursor: 3.1.0\n cli-spinners: 2.6.1\n is-interactive: 1.0.0\n is-unicode-supported: 0.1.0\n log-symbols: 4.1.0\n strip-ansi: 6.0.1\n wcwidth: 1.0.1\n\n oxfmt@0.66.0:\n dependencies:\n tinypool: 2.1.0\n optionalDependencies:\n '@oxfmt/binding-android-arm-eabi': 0.66.0\n '@oxfmt/binding-android-arm64': 0.66.0\n '@oxfmt/binding-darwin-arm64': 0.66.0\n '@oxfmt/binding-darwin-x64': 0.66.0\n '@oxfmt/binding-freebsd-x64': 0.66.0\n '@oxfmt/binding-linux-arm-gnueabihf': 0.66.0\n '@oxfmt/binding-linux-arm-musleabihf': 0.66.0\n '@oxfmt/binding-linux-arm64-gnu': 0.66.0\n '@oxfmt/binding-linux-arm64-musl': 0.66.0\n '@oxfmt/binding-linux-ppc64-gnu': 0.66.0\n '@oxfmt/binding-linux-riscv64-gnu': 0.66.0\n '@oxfmt/binding-linux-riscv64-musl': 0.66.0\n '@oxfmt/binding-linux-s390x-gnu': 0.66.0\n '@oxfmt/binding-linux-x64-gnu': 0.66.0\n '@oxfmt/binding-linux-x64-musl': 0.66.0\n '@oxfmt/binding-openharmony-arm64': 0.66.0\n '@oxfmt/binding-win32-arm64-msvc': 0.66.0\n '@oxfmt/binding-win32-ia32-msvc': 0.66.0\n '@oxfmt/binding-win32-x64-msvc': 0.66.0\n\n oxlint-tsgolint@7.0.2001:\n optionalDependencies:\n '@oxlint-tsgolint/darwin-arm64': 7.0.2001\n '@oxlint-tsgolint/darwin-x64': 7.0.2001\n '@oxlint-tsgolint/linux-arm64': 7.0.2001\n '@oxlint-tsgolint/linux-x64': 7.0.2001\n '@oxlint-tsgolint/win32-arm64': 7.0.2001\n '@oxlint-tsgolint/win32-x64': 7.0.2001\n\n oxlint@1.81.0(oxlint-tsgolint@7.0.2001):\n optionalDependencies:\n '@oxlint/binding-android-arm-eabi': 1.81.0\n '@oxlint/binding-android-arm64': 1.81.0\n '@oxlint/binding-darwin-arm64': 1.81.0\n '@oxlint/binding-darwin-x64': 1.81.0\n '@oxlint/binding-freebsd-x64': 1.81.0\n '@oxlint/binding-linux-arm-gnueabihf': 1.81.0\n '@oxlint/binding-linux-arm-musleabihf': 1.81.0\n '@oxlint/binding-linux-arm64-gnu': 1.81.0\n '@oxlint/binding-linux-arm64-musl': 1.81.0\n '@oxlint/binding-linux-ppc64-gnu': 1.81.0\n '@oxlint/binding-linux-riscv64-gnu': 1.81.0\n '@oxlint/binding-linux-riscv64-musl': 1.81.0\n '@oxlint/binding-linux-s390x-gnu': 1.81.0\n '@oxlint/binding-linux-x64-gnu': 1.81.0\n '@oxlint/binding-linux-x64-musl': 1.81.0\n '@oxlint/binding-openharmony-arm64': 1.81.0\n '@oxlint/binding-win32-arm64-msvc': 1.81.0\n '@oxlint/binding-win32-ia32-msvc': 1.81.0\n '@oxlint/binding-win32-x64-msvc': 1.81.0\n oxlint-tsgolint: 7.0.2001\n\n path-key@3.1.1: {}\n\n pathe@2.0.3: {}\n\n picocolors@1.1.1: {}\n\n picomatch@4.0.5: {}\n\n postcss@8.5.26:\n dependencies:\n nanoid: 3.3.18\n picocolors: 1.1.1\n source-map-js: 1.2.1\n\n proxy-from-env@2.1.0: {}\n\n quansync@1.0.0: {}\n\n readable-stream@3.6.2:\n dependencies:\n inherits: 2.0.4\n string_decoder: 1.3.0\n util-deprecate: 1.0.2\n\n require-directory@2.1.1: {}\n\n resolve-pkg-maps@1.0.0: {}\n\n resolve.exports@2.0.3: {}\n\n restore-cursor@3.1.0:\n dependencies:\n onetime: 5.1.2\n signal-exit: 3.0.7\n\n rolldown-plugin-dts@0.27.14(rolldown@1.2.4)(typescript@7.0.2):\n dependencies:\n dts-resolver: 3.0.0\n get-tsconfig: 5.0.0-beta.5\n obug: 2.1.4\n rolldown: 1.2.4\n yuku-ast: 0.8.7\n yuku-codegen: 0.8.7\n yuku-parser: 0.8.7\n optionalDependencies:\n typescript: 7.0.2\n transitivePeerDependencies:\n - oxc-resolver\n\n rolldown@1.2.4:\n dependencies:\n '@oxc-project/types': 0.144.0\n '@rolldown/pluginutils': 1.0.1\n optionalDependencies:\n '@rolldown/binding-android-arm64': 1.2.4\n '@rolldown/binding-darwin-arm64': 1.2.4\n '@rolldown/binding-darwin-x64': 1.2.4\n '@rolldown/binding-freebsd-x64': 1.2.4\n '@rolldown/binding-linux-arm-gnueabihf': 1.2.4\n '@rolldown/binding-linux-arm64-gnu': 1.2.4\n '@rolldown/binding-linux-arm64-musl': 1.2.4\n '@rolldown/binding-linux-ppc64-gnu': 1.2.4\n '@rolldown/binding-linux-s390x-gnu': 1.2.4\n '@rolldown/binding-linux-x64-gnu': 1.2.4\n '@rolldown/binding-linux-x64-musl': 1.2.4\n '@rolldown/binding-openharmony-arm64': 1.2.4\n '@rolldown/binding-win32-arm64-msvc': 1.2.4\n '@rolldown/binding-win32-x64-msvc': 1.2.4\n\n run-applescript@7.0.0: {}\n\n safe-buffer@5.2.1: {}\n\n semver@7.8.4: {}\n\n shebang-command@2.0.0:\n dependencies:\n shebang-regex: 3.0.0\n\n shebang-regex@3.0.0: {}\n\n siginfo@2.0.0: {}\n\n signal-exit@3.0.7: {}\n\n sisteransi@1.0.5: {}\n\n smol-toml@1.6.1: {}\n\n source-map-js@1.2.1: {}\n\n stackback@0.0.2: {}\n\n std-env@4.2.0: {}\n\n string-width@4.2.3:\n dependencies:\n emoji-regex: 8.0.0\n is-fullwidth-code-point: 3.0.0\n strip-ansi: 6.0.1\n\n string_decoder@1.3.0:\n dependencies:\n safe-buffer: 5.2.1\n\n strip-ansi@6.0.1:\n dependencies:\n ansi-regex: 5.0.1\n\n strip-bom@3.0.0: {}\n\n supports-color@7.2.0:\n dependencies:\n has-flag: 4.0.0\n\n tar-stream@2.2.0:\n dependencies:\n bl: 4.1.0\n end-of-stream: 1.4.5\n fs-constants: 1.0.0\n inherits: 2.0.4\n readable-stream: 3.6.2\n\n tinybench@2.9.0: {}\n\n tinyexec@1.3.0: {}\n\n tinyglobby@0.2.17:\n dependencies:\n fdir: 6.5.0(picomatch@4.0.5)\n picomatch: 4.0.5\n\n tinypool@2.1.0: {}\n\n tinyrainbow@3.1.1: {}\n\n tmp@0.2.7: {}\n\n tree-kill@1.2.2: {}\n\n tsconfig-paths@4.2.0:\n dependencies:\n json5: 2.2.3\n minimist: 1.2.8\n strip-bom: 3.0.0\n\n tsdown@0.22.14(typescript@7.0.2)(unrun@0.3.1):\n dependencies:\n ansis: 4.3.1\n cac: 7.0.0\n defu: 6.1.7\n empathic: 2.0.1\n hookable: 6.1.1\n import-without-cache: 0.4.0\n obug: 2.1.4\n picomatch: 4.0.5\n rolldown: 1.2.4\n rolldown-plugin-dts: 0.27.14(rolldown@1.2.4)(typescript@7.0.2)\n tinyexec: 1.3.0\n tinyglobby: 0.2.17\n tree-kill: 1.2.2\n unconfig-core: 7.5.0\n verkit: 0.3.2\n optionalDependencies:\n typescript: 7.0.2\n unrun: 0.3.1\n transitivePeerDependencies:\n - '@typescript/native-preview'\n - '@volar/typescript'\n - oxc-resolver\n - vue-tsc\n\n tslib@2.8.1: {}\n\n typescript@7.0.2:\n optionalDependencies:\n '@typescript/typescript-aix-ppc64': 7.0.2\n '@typescript/typescript-darwin-arm64': 7.0.2\n '@typescript/typescript-darwin-x64': 7.0.2\n '@typescript/typescript-freebsd-arm64': 7.0.2\n '@typescript/typescript-freebsd-x64': 7.0.2\n '@typescript/typescript-linux-arm': 7.0.2\n '@typescript/typescript-linux-arm64': 7.0.2\n '@typescript/typescript-linux-loong64': 7.0.2\n '@typescript/typescript-linux-mips64el': 7.0.2\n '@typescript/typescript-linux-ppc64': 7.0.2\n '@typescript/typescript-linux-riscv64': 7.0.2\n '@typescript/typescript-linux-s390x': 7.0.2\n '@typescript/typescript-linux-x64': 7.0.2\n '@typescript/typescript-netbsd-arm64': 7.0.2\n '@typescript/typescript-netbsd-x64': 7.0.2\n '@typescript/typescript-openbsd-arm64': 7.0.2\n '@typescript/typescript-openbsd-x64': 7.0.2\n '@typescript/typescript-sunos-x64': 7.0.2\n '@typescript/typescript-win32-arm64': 7.0.2\n '@typescript/typescript-win32-x64': 7.0.2\n\n unconfig-core@7.5.0:\n dependencies:\n '@quansync/fs': 1.0.0\n quansync: 1.0.0\n\n undici-types@8.3.0: {}\n\n unrun@0.3.1:\n dependencies:\n rolldown: 1.2.4\n\n util-deprecate@1.0.2: {}\n\n verkit@0.3.2: {}\n\n vite@8.2.2(@types/node@26.4.1)(yaml@2.9.0):\n dependencies:\n lightningcss: 1.33.0\n picomatch: 4.0.5\n postcss: 8.5.26\n rolldown: 1.2.4\n tinyglobby: 0.2.17\n optionalDependencies:\n '@types/node': 26.4.1\n fsevents: 2.3.3\n yaml: 2.9.0\n\n vitest@4.1.11(@types/node@26.4.1)(vite@8.2.2(@types/node@26.4.1)(yaml@2.9.0)):\n dependencies:\n '@vitest/expect': 4.1.11\n '@vitest/mocker': 4.1.11(vite@8.2.2(@types/node@26.4.1)(yaml@2.9.0))\n '@vitest/pretty-format': 4.1.11\n '@vitest/runner': 4.1.11\n '@vitest/snapshot': 4.1.11\n '@vitest/spy': 4.1.11\n '@vitest/utils': 4.1.11\n es-module-lexer: 2.3.1\n expect-type: 1.4.0\n magic-string: 0.30.21\n obug: 2.1.4\n pathe: 2.0.3\n picomatch: 4.0.5\n std-env: 4.2.0\n tinybench: 2.9.0\n tinyexec: 1.3.0\n tinyglobby: 0.2.17\n tinyrainbow: 3.1.1\n vite: 8.2.2(@types/node@26.4.1)(yaml@2.9.0)\n why-is-node-running: 2.3.0\n optionalDependencies:\n '@types/node': 26.4.1\n transitivePeerDependencies:\n - msw\n\n wcwidth@1.0.1:\n dependencies:\n defaults: 1.0.4\n\n which@2.0.2:\n dependencies:\n isexe: 2.0.0\n\n which@3.0.1:\n dependencies:\n isexe: 2.0.0\n\n why-is-node-running@2.3.0:\n dependencies:\n siginfo: 2.0.0\n stackback: 0.0.2\n\n wrap-ansi@7.0.0:\n dependencies:\n ansi-styles: 4.3.0\n string-width: 4.2.3\n strip-ansi: 6.0.1\n\n wrappy@1.0.2: {}\n\n y18n@5.0.8: {}\n\n yaml@2.9.0: {}\n\n yargs-parser@21.1.1: {}\n\n yargs@17.7.2:\n dependencies:\n cliui: 8.0.1\n escalade: 3.2.0\n get-caller-file: 2.0.5\n require-directory: 2.1.1\n string-width: 4.2.3\n y18n: 5.0.8\n yargs-parser: 21.1.1\n\n yuku-ast@0.8.7:\n dependencies:\n '@yuku-toolchain/types': 0.8.7\n\n yuku-codegen@0.8.7:\n dependencies:\n '@yuku-toolchain/types': 0.8.7\n optionalDependencies:\n '@yuku-codegen/binding-android-arm64': 0.8.7\n '@yuku-codegen/binding-darwin-arm64': 0.8.7\n '@yuku-codegen/binding-darwin-x64': 0.8.7\n '@yuku-codegen/binding-freebsd-x64': 0.8.7\n '@yuku-codegen/binding-linux-arm-gnu': 0.8.7\n '@yuku-codegen/binding-linux-arm-musl': 0.8.7\n '@yuku-codegen/binding-linux-arm64-gnu': 0.8.7\n '@yuku-codegen/binding-linux-arm64-musl': 0.8.7\n '@yuku-codegen/binding-linux-x64-gnu': 0.8.7\n '@yuku-codegen/binding-linux-x64-musl': 0.8.7\n '@yuku-codegen/binding-win32-arm64': 0.8.7\n '@yuku-codegen/binding-win32-x64': 0.8.7\n\n yuku-parser@0.8.7:\n dependencies:\n '@yuku-toolchain/types': 0.8.7\n yuku-ast: 0.8.7\n optionalDependencies:\n '@yuku-parser/binding-android-arm64': 0.8.7\n '@yuku-parser/binding-darwin-arm64': 0.8.7\n '@yuku-parser/binding-darwin-x64': 0.8.7\n '@yuku-parser/binding-freebsd-x64': 0.8.7\n '@yuku-parser/binding-linux-arm-gnu': 0.8.7\n '@yuku-parser/binding-linux-arm-musl': 0.8.7\n '@yuku-parser/binding-linux-arm64-gnu': 0.8.7\n '@yuku-parser/binding-linux-arm64-musl': 0.8.7\n '@yuku-parser/binding-linux-x64-gnu': 0.8.7\n '@yuku-parser/binding-linux-x64-musl': 0.8.7\n '@yuku-parser/binding-win32-arm64': 0.8.7\n '@yuku-parser/binding-win32-x64': 0.8.7\n"},{"path":"pnpm-workspace.yaml","mode":420,"text":"packages:\n - \"apps/**\"\n - \"libs/**\"\n - \"!apps/cli/create-agentic-monorepo/dist/**\"\nallowBuilds:\n nx: true\nminimumReleaseAge: 2880\n"},{"path":"rust-toolchain.toml","mode":420,"text":"[toolchain]\nchannel = \"1.97.1\"\ncomponents = [\"clippy\", \"rustfmt\"]\n"},{"path":"tools/check-boundaries.mjs","mode":420,"text":"import { mkdtempSync, readFileSync, rmSync } from \"node:fs\";\nimport { tmpdir } from \"node:os\";\nimport { join } from \"node:path\";\n\n/* eslint-disable curly, init-declarations, max-depth, max-lines-per-function, max-statements, no-array-sort, no-continue */\nimport crossSpawn from \"cross-spawn\";\n\nconst failureExitCode = 1;\nconst typeTags = new Set([\n \"type:app\",\n \"type:domain\",\n \"type:platform\",\n \"type:infrastructure\",\n \"type:rust\",\n \"type:binding\",\n]);\n\nconst allowedDependencyTags = {\n \"type:app\": [\"type:domain\", \"type:platform\", \"type:infrastructure\", \"type:binding\"],\n \"type:domain\": [\"type:domain\", \"type:binding\"],\n \"type:platform\": [\"type:platform\", \"type:domain\"],\n \"type:infrastructure\": [\"type:infrastructure\", \"type:platform\", \"type:domain\"],\n \"type:rust\": [\"type:rust\"],\n \"type:binding\": [\"type:rust\"],\n};\n\nconst bindingEcosystemLanguages = {\n \"binding:node\": [\"lang:ts\"],\n \"binding:swift\": [\"lang:swift\"],\n};\nconst ffiCratePrefixes = [\"napi\", \"uniffi\"];\n\nfunction loadGraph() {\n const tempDir = mkdtempSync(join(tmpdir(), \"boundaries-graph-\"));\n const graphFile = join(tempDir, \"graph.json\");\n try {\n const result = crossSpawn.sync(\"pnpm\", [\"exec\", \"nx\", \"graph\", `--file=${graphFile}`], {\n stdio: \"pipe\",\n encoding: \"utf8\",\n });\n if (result.error) {\n throw result.error;\n }\n if (result.status !== 0 || result.signal) {\n const diagnostics = [result.stdout, result.stderr].filter(Boolean).join(\"\\n\");\n let status = String(result.status);\n if (result.status === null) status = \"null\";\n let signal = \"\";\n if (result.signal !== null) signal = `, signal=${result.signal}`;\n let detail = \"\";\n if (diagnostics.length > 0) detail = `\\n${diagnostics}`;\n throw new Error(`Unable to load Nx graph (status=${status}${signal})${detail}`);\n }\n return JSON.parse(readFileSync(graphFile, \"utf8\")).graph;\n } finally {\n rmSync(tempDir, { recursive: true, force: true });\n }\n}\n\nfunction tagsOf(node) {\n return node.data.tags ?? [];\n}\n\nfunction hasAnyTag(tags, allowed) {\n return tags.some((tag) => allowed.includes(tag));\n}\n\nfunction typeTagViolations(graph) {\n const found = [];\n for (const [name, node] of Object.entries(graph.nodes)) {\n const tags = tagsOf(node);\n const recognized = tags.filter((tag) => typeTags.has(tag));\n if (node.data.root !== \".\" && recognized.length === 0) {\n found.push(`${name} has no recognized type tag`);\n }\n if (recognized.length > 1) {\n found.push(`${name} has multiple recognized type tags: ${recognized.join(\", \")}`);\n }\n }\n return found;\n}\n\nfunction bindingTagsOf(tags) {\n return tags.filter((tag) => Object.hasOwn(bindingEcosystemLanguages, tag));\n}\n\nfunction languageTagsOf(tags) {\n return tags.filter((tag) => tag.startsWith(\"lang:\"));\n}\n\nfunction bindingTagViolations(graph) {\n const found = [];\n for (const [name, node] of Object.entries(graph.nodes)) {\n const tags = tagsOf(node);\n const ecosystems = bindingTagsOf(tags);\n if (tags.includes(\"type:binding\") && ecosystems.length !== 1) {\n found.push(`${name} carries type:binding without exactly one known binding tag`);\n }\n if (!tags.includes(\"type:binding\") && ecosystems.length > 0) {\n found.push(`${name} carries a binding tag without type:binding`);\n }\n if (tags.includes(\"type:binding\") && !tags.includes(\"lang:rust\")) {\n found.push(`${name} binding must carry lang:rust`);\n }\n }\n return found;\n}\n\nfunction ecosystemViolations(sourceName, sourceTags, targetName, targetTags) {\n const found = [];\n for (const targetTag of bindingTagsOf(targetTags)) {\n const allowedLanguages = bindingEcosystemLanguages[targetTag];\n if (!hasAnyTag(sourceTags, allowedLanguages) && !sourceTags.includes(targetTag)) {\n found.push(\n `${sourceName} may not depend on ${targetName} outside the ${targetTag} ecosystem`,\n );\n }\n }\n return found;\n}\n\nfunction languageMismatchViolations(sourceName, sourceTags, targetName, targetTags) {\n if (sourceTags.includes(\"type:binding\") || targetTags.includes(\"type:binding\")) {\n return [];\n }\n const sourceLanguages = languageTagsOf(sourceTags);\n const targetLanguages = languageTagsOf(targetTags);\n if (sourceLanguages.length !== 1 || targetLanguages.length !== 1) {\n return [];\n }\n if (sourceLanguages[0] === targetLanguages[0]) {\n return [];\n }\n return [\n `${sourceName} (${sourceLanguages[0]}) may not depend on ${targetName} (${targetLanguages[0]}) across languages`,\n ];\n}\n\nfunction dependencyViolations(sourceName, sourceTags, targetName, targetTags) {\n const found = [];\n if (targetTags.includes(\"type:app\")) {\n found.push(`${sourceName} depends on application ${targetName}`);\n }\n for (const sourceTag of sourceTags) {\n const allowed = allowedDependencyTags[sourceTag];\n if (allowed && !hasAnyTag(targetTags, allowed)) {\n found.push(`${sourceName} (${sourceTag}) may not depend on ${targetName}`);\n }\n if (sourceTag.startsWith(\"domain:\") && !targetTags.includes(sourceTag)) {\n found.push(`${sourceName} (${sourceTag}) may not depend on ${targetName} outside its domain`);\n }\n }\n return [\n ...found,\n ...ecosystemViolations(sourceName, sourceTags, targetName, targetTags),\n ...languageMismatchViolations(sourceName, sourceTags, targetName, targetTags),\n ];\n}\n\nfunction graphViolations(graph) {\n const found = [];\n for (const [sourceName, dependencies] of Object.entries(graph.dependencies)) {\n const sourceNode = graph.nodes[sourceName];\n if (sourceNode) {\n const sourceTags = tagsOf(sourceNode);\n for (const dependency of dependencies) {\n const targetNode = graph.nodes[dependency.target];\n if (targetNode) {\n found.push(\n ...dependencyViolations(sourceName, sourceTags, dependency.target, tagsOf(targetNode)),\n );\n }\n }\n }\n }\n return found;\n}\n\nfunction stripTomlComment(line) {\n let quoted = false;\n for (let index = 0; index < line.length; index += 1) {\n if (line[index] === '\"' && line[index - 1] !== \"\\\\\") {\n quoted = !quoted;\n }\n if (line[index] === \"#\" && !quoted) {\n return line.slice(0, index);\n }\n }\n return line;\n}\n\nfunction parseDependencyCrates(manifest) {\n const crates = [];\n let inDependencyTable = false;\n for (const rawLine of manifest.split(/\\r?\\n/u)) {\n const line = stripTomlComment(rawLine).trim();\n const header = line.match(/^\\[(?<name>[^\\]]+)\\]$/u);\n if (header) {\n inDependencyTable = /(?:^|\\.)dependencies(?:\\.|$)/u.test(header.groups.name.trim());\n continue;\n }\n if (!inDependencyTable) continue;\n const entry = line.match(\n /^(?:\"(?<double>[^\"]+)\"|'(?<single>[^']+)'|(?<bare>[A-Za-z0-9_-]+))\\s*=\\s*(?<value>.*)$/u,\n );\n if (!entry) continue;\n const crate = entry.groups.double ?? entry.groups.single ?? entry.groups.bare;\n const packageMatch = entry.groups.value.match(/\\bpackage\\s*=\\s*[\"'](?<name>[^\"']+)[\"']/u);\n crates.push(crate);\n if (packageMatch) crates.push(packageMatch.groups.name);\n }\n return crates;\n}\n\nfunction ffiDependencyViolations(name, manifestPath) {\n let manifest;\n try {\n manifest = readFileSync(manifestPath, \"utf8\");\n } catch {\n return [];\n }\n const crates = new Set(\n parseDependencyCrates(manifest).filter((crate) =>\n ffiCratePrefixes.some((prefix) => crate === prefix || crate.startsWith(`${prefix}-`)),\n ),\n );\n return [...crates]\n .sort((left, right) => left.localeCompare(right))\n .map((crate) => `core crate ${name} must stay FFI-free; move ${crate} into a binding crate`);\n}\n\nfunction ffiViolations(graph) {\n const found = [];\n for (const [name, node] of Object.entries(graph.nodes)) {\n const tags = tagsOf(node);\n if (tags.includes(\"type:rust\") && !tags.includes(\"type:binding\")) {\n found.push(...ffiDependencyViolations(name, join(node.data.root, \"Cargo.toml\")));\n }\n }\n return found;\n}\n\nfunction typescriptDomainRoots(graph) {\n return Object.entries(graph.nodes)\n .filter(([, node]) => tagsOf(node).includes(\"type:domain\") && tagsOf(node).includes(\"lang:ts\"))\n .map(([name, node]) => ({ name, root: node.data.root }));\n}\n\nfunction thirdPartyDependencyViolations(graph) {\n const found = [];\n for (const { name, root } of typescriptDomainRoots(graph)) {\n let manifest;\n try {\n manifest = JSON.parse(readFileSync(join(root, \"package.json\"), \"utf8\"));\n } catch {\n continue;\n }\n const runtimeDependencies = new Set([\n ...Object.keys(manifest.dependencies ?? {}),\n ...Object.keys(manifest.optionalDependencies ?? {}),\n ...Object.keys(manifest.peerDependencies ?? {}),\n ]);\n for (const dependencyName of [...runtimeDependencies].sort()) {\n const sections = [\n manifest.dependencies,\n manifest.optionalDependencies,\n manifest.peerDependencies,\n ];\n const specifiers = sections\n .filter((section) => section && dependencyName in section)\n .map((section) => section[dependencyName]);\n if (!specifiers.every((specifier) => specifier.startsWith(\"workspace:\"))) {\n found.push(`${name} has third-party runtime dependency ${dependencyName}`);\n }\n }\n }\n return found;\n}\n\nconst graph = loadGraph();\nconst violations = [\n ...graphViolations(graph),\n ...typeTagViolations(graph),\n ...bindingTagViolations(graph),\n ...ffiViolations(graph),\n ...thirdPartyDependencyViolations(graph),\n];\nfor (const violation of violations) console.error(violation);\nif (violations.length === 0) {\n console.log(`boundaries ok across ${Object.keys(graph.nodes).length} projects`);\n} else {\n process.exitCode = failureExitCode;\n}\n"},{"path":"tools/swiftlint.sh","mode":493,"text":"#!/bin/sh\nset -eu\ndeveloper_dir=\"$(xcode-select -p)\"\nif [ ! -d \"$developer_dir/Toolchains\" ]; then\n export TOOLCHAIN_DIR=\"$developer_dir\"\nfi\nexec swiftlint \"$@\"\n"},{"path":"tsconfig.base.json","mode":420,"text":"{\n \"compilerOptions\": {\n \"strict\": true,\n \"target\": \"es2022\",\n \"moduleDetection\": \"force\",\n \"isolatedModules\": true,\n \"esModuleInterop\": true,\n \"skipLibCheck\": true,\n \"forceConsistentCasingInFileNames\": true,\n \"verbatimModuleSyntax\": true,\n \"erasableSyntaxOnly\": true,\n \"noUncheckedIndexedAccess\": true,\n \"exactOptionalPropertyTypes\": true,\n \"noImplicitReturns\": true,\n \"noImplicitOverride\": true,\n \"noFallthroughCasesInSwitch\": true,\n \"noPropertyAccessFromIndexSignature\": true,\n \"noUncheckedSideEffectImports\": true,\n \"allowUnusedLabels\": false,\n \"allowUnreachableCode\": false\n }\n}\n"}]}