diff --git a/LICENSE b/LICENSE index 7d9d7b6..d586682 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,7 @@ MIT License Copyright (c) 2022 Ray +Copyright (c) 2020-2026 Alexandre Mouton-Brady and Solid contributors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/README.md b/README.md index d4459dd..8207776 100644 --- a/README.md +++ b/README.md @@ -2,105 +2,147 @@ [![NPM version](https://img.shields.io/npm/v/unplugin-solid?color=a1b858&label=)](https://www.npmjs.com/package/unplugin-solid) +Solid 2 compilation for Vite, Rollup, Rolldown, webpack, Rspack, esbuild, and Astro, powered by unplugin. + ## πŸ“¦ Installation ```bash -$ npm install -D unplugin-solid -$ yarn add -D unplugin-solid -$ pnpm add -D unplugin-solid +npm install -D unplugin-solid +npm install solid-js@^2.0.0-rc.9 @solidjs/web@^2.0.0-rc.9 +``` + +For TypeScript projects, preserve JSX for the plugin and use the web runtime's JSX types: + +```json +{ + "compilerOptions": { + "jsx": "preserve", + "jsxImportSource": "@solidjs/web" + } +} ``` ## πŸš€ Usage +Add the adapter for your build tool to its configuration. Vite and Astro require Vite 8 or 9. +
-Vite
+Vite ```ts // vite.config.ts import Solid from "unplugin-solid/vite"; +import { defineConfig } from "vite"; export default defineConfig({ - plugins: [Solid({/* options */})], + plugins: [Solid()], }); ``` -
+
-Rollup
+Rollup -```ts +```js // rollup.config.js import Solid from "unplugin-solid/rollup"; export default { - plugins: [ - Solid({/* options */}), - // other plugins - ], + plugins: [Solid()], }; ``` -
+
-Rolldown
+Rolldown -```ts +```js // rolldown.config.js import Solid from "unplugin-solid/rolldown"; export default { - plugins: [ - Solid({/* options */}), - // other plugins - ], + plugins: [Solid()], }; ``` -
+
-Webpack
+webpack + +```js +// webpack.config.cjs +const Solid = require("unplugin-solid/webpack"); -```ts -// webpack.config.js module.exports = { - /* ... */ - plugins: [require("unplugin-solid/webpack")({/* options */})], + plugins: [Solid()], }; ``` -
+
-esbuild
+Rspack -```ts -// esbuild.config.js +```js +// rspack.config.cjs +const Solid = require("unplugin-solid/rspack"); + +module.exports = { + plugins: [Solid()], +}; +``` + +
+ +
+esbuild + +```js +// build.mjs import { build } from "esbuild"; +import Solid from "unplugin-solid/esbuild"; -build({ - /* ... */ - plugins: [require("unplugin-solid/esbuild")({/* options */})], +await build({ + entryPoints: ["src/index.tsx"], + bundle: true, + outdir: "dist", + plugins: [Solid()], }); ``` -
+
-Astro
+Astro -```ts +```js // astro.config.mjs +import { defineConfig } from "astro/config"; import Solid from "unplugin-solid/astro"; export default defineConfig({ - integrations: [Solid({/* options */})], + integrations: [Solid({})], }); ``` -
+ + +## βš™οΈ Options + +All adapters use the native Solid compiler by default. Pass `compiler: "babel"` to use the Babel compiler: + +```ts +Solid({ compiler: "babel" }); +``` + +Use `solid` to configure JSX compilation and `babel` to add Babel plugins or presets. With the native compiler, custom Babel transforms run before JSX compilation. + +Vite and Astro support refresh, SSR compilation, and experimental TSRX. Compiling TSRX with the Babel backend also requires `@tsrx/core@0.1.63`. Use `refresh: { disabled: true }` to disable refresh, or `observe: true` to select Solid’s observable runtime builds. + +The other adapters support JSX compilation options. Set `ssr: true` when compiling a server bundle and `dev: true` to enable compiler development output. ## πŸ“ License diff --git a/package.json b/package.json index 9b4ecce..590fd44 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "unplugin-solid", "version": "2.0.0", - "packageManager": "pnpm@11.13.0", + "packageManager": "pnpm@12.5.1", "author": "Ray (@so1ve)", "type": "module", "description": "Transform Solid.js code in various bundlers powered by unplugin", @@ -59,37 +59,40 @@ "typecheck": "tsc --noEmit" }, "dependencies": { + "@ampproject/remapping": "^2.3.0", "@babel/core": "^7.29.7", - "babel-preset-solid": "^1.9.12", + "@solidjs/babel-plugin": "^2.0.0-rc.9", + "@solidjs/compiler": "^2.0.0-rc.9", "merge-anything": "^6.0.6", - "solid-refresh": "^0.7.8", "unplugin": "^3.3.0", - "vitefu": "^1.1.3" + "vitefu": "^1.0.4" }, "devDependencies": { - "@so1ve/eslint-config": "^4.6.2", - "@so1ve/prettier-config": "^4.6.2", + "@so1ve/eslint-config": "^4.7.0", + "@so1ve/prettier-config": "^4.7.0", + "@solidjs/vite-plugin": "^3.0.0-next.44", + "@solidjs/web": "^2.0.0-rc.9", "@sxzz/test-utils": "^0.5.18", "@types/babel__core": "^7.20.5", "@types/node": "^26.1.1", "bumpp": "^11.1.0", "esbuild": "^0.28.1", - "eslint": "^10.7.0", - "prettier": "^3.9.5", + "eslint": "^10.11.0", + "prettier": "^3.9.9", "rollup": "^4.62.2", - "solid-js": "^1.9.14", + "solid-js": "^2.0.0-rc.9", "tsdown": "^0.22.7", "typescript": "^6.0.3", "unplugin-oxc": "^0.6.1", "vite": "^8.1.4", - "vite-plugin-solid": "^2.11.12", "vitest": "^4.1.10", "webpack": "^5.108.4" }, "peerDependencies": { - "@testing-library/jest-dom": "^5.16.6 || ^5.17.0 || ^6.0.0", - "solid-js": "^1.9.9", - "vite": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0" + "@solidjs/web": "^2.0.0-rc.9", + "@testing-library/jest-dom": "^5.16.6 || ^5.17.0 || ^6.0.0 || ^7.0.0", + "solid-js": "^2.0.0-rc.9", + "vite": "^8.0.0 || ^9.0.0" }, "peerDependenciesMeta": { "@testing-library/jest-dom": { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 11909a1..9e42963 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1,3 +1,161 @@ +--- +lockfileVersion: '9.0' + +importers: + + .: + configDependencies: {} + packageManagerDependencies: + pnpm: + specifier: 12.5.1 + version: 12.5.1 + +packages: + + '@pnpm/exe.android-arm64@12.5.1': + resolution: {integrity: sha512-6LGBmQuDzUmgpHSuy+haG0jrmkwFNa4EuShDZqK3cIBv4Wfb75CzjJmowkzr+iJg40vnBKMQ62t4Ko6mwsId7A==} + cpu: [arm64] + os: [android] + + '@pnpm/exe.android-x64@12.5.1': + resolution: {integrity: sha512-091oCltP3Rx89yxL1Wh5rXkUXEyFzyxIzSHKRFDyDFlQkb8Ox8FaDcm+M8PNkMyqnLA+qeGOLzY7Rjj9izl1Ww==} + cpu: [x64] + os: [android] + + '@pnpm/exe.darwin-arm64@12.5.1': + resolution: {integrity: sha512-r1vEMQPVjRexZMyL2HonxJoo3+nuB/+G+tg+f2PK6faRdXX1TDwevKXOxJAfqlPInTy6W/pm912+s+m0NcR4BQ==} + cpu: [arm64] + os: [darwin] + + '@pnpm/exe.darwin-x64@12.5.1': + resolution: {integrity: sha512-YHwI1g2B+Y2cAEylOR31r781GWijdJL7Gy7TEn/ZpZ5v/Cuwp5/Pz0EFCgo0M2MKLafAbL/laUMGvOpAdnerAw==} + cpu: [x64] + os: [darwin] + + '@pnpm/exe.freebsd-x64@12.5.1': + resolution: {integrity: sha512-sFUMHiYFs6q5syFwgaVppzhQSmqnXoJIz/YwTXIOXTDE76ndIpTRpDGAnBCBKjsaEBnqjJA/2l6hpJcNDNoMiA==} + cpu: [x64] + os: [freebsd] + + '@pnpm/exe.linux-arm64-musl@12.5.1': + resolution: {integrity: sha512-zupuxYZBuBEGjUz805/4/Asq01UNziFADANt8yp+LdUjU9bbMa3xY78Bx1PsGDqBy7aiad4sdUMK8ZxH4n4gmQ==} + cpu: [arm64] + os: [linux] + libc: [musl] + + '@pnpm/exe.linux-arm64@12.5.1': + resolution: {integrity: sha512-6hbMWW2/eQo1b5wvQPe/ndLHVTH88Rav6N+ffD4/h6IuFMjWCgasFYYsFv0GrvpqREAx3SwmZSvli+0NFXqbxA==} + cpu: [arm64] + os: [linux] + libc: [glibc] + + '@pnpm/exe.linux-ppc64@12.5.1': + resolution: {integrity: sha512-Gg3maDzaE/ZFMV9HIx/BwMN0Y6QbEs13URfxmiYHtKjjLAs5wEQZRMUP87YNLYO7cNaEfbM8GRbS9vPosyD9Gw==} + cpu: [ppc64] + os: [linux] + libc: [glibc] + + '@pnpm/exe.linux-riscv64@12.5.1': + resolution: {integrity: sha512-6fgWxXYMBMsWQ8DAiRevscX4QZQjwh+FsyCj8ZOk8pMXvqeq84MqBLCmS6KckvnbdqJ+HlSVQ7fs/kd0ldwfhA==} + cpu: [riscv64] + os: [linux] + libc: [glibc] + + '@pnpm/exe.linux-s390x@12.5.1': + resolution: {integrity: sha512-nzMZruRvxDhEfYUhzu+7EmM39+82Dgagc/6hPFPqGqzXNGcIG0anuxbUxfeNtI64SHt91KuuYUmCB/inlM+Pag==} + cpu: [s390x] + os: [linux] + libc: [glibc] + + '@pnpm/exe.linux-x64-musl@12.5.1': + resolution: {integrity: sha512-kHCbegdTNHpzmPtUD4S5fqkVkqgdQR47spF9p2VPP3dIIkZl6Ytk8w0vhlAsAGgge8FmucfwX+vvPKgm0NtOCQ==} + cpu: [x64] + os: [linux] + libc: [musl] + + '@pnpm/exe.linux-x64@12.5.1': + resolution: {integrity: sha512-3PkUBYo5z4dgtlnTNIFj7QGpcDUAuqXz9WGVigPDCeccEnhGiRkWmA5102TmYJHtwJP3LfmE+ZF9PGeWhn8p9Q==} + cpu: [x64] + os: [linux] + libc: [glibc] + + '@pnpm/exe.win32-arm64@12.5.1': + resolution: {integrity: sha512-49NvjZIXHly56/PLoEDD7VphbO4N8dwMXoApElDFCpVGDNGeKlwlib1tXtnpTF6i2/XIsAj7GgatHB5KHXgBnA==} + cpu: [arm64] + os: [win32] + + '@pnpm/exe.win32-x64@12.5.1': + resolution: {integrity: sha512-ePUmQFPAPJFNMwg1lelDx2PdjHqYRiF0yfg5e6qeDbPNOu97QNo557Ru/SxmCrmt8ydQWNuZXWpdEp019md5vw==} + cpu: [x64] + os: [win32] + + pnpm@12.5.1: + resolution: {integrity: sha512-4/MFvHhKK8ifWtO2E4iJRw+ujSr182thIW7JHCw9ZAiXdfneOKrDMQROpA8kXLDVZmOS399lgk4ZB+9qLGLeXw==} + engines: {node: '>=18.*'} + hasBin: true + +snapshots: + + '@pnpm/exe.android-arm64@12.5.1': + optional: true + + '@pnpm/exe.android-x64@12.5.1': + optional: true + + '@pnpm/exe.darwin-arm64@12.5.1': + optional: true + + '@pnpm/exe.darwin-x64@12.5.1': + optional: true + + '@pnpm/exe.freebsd-x64@12.5.1': + optional: true + + '@pnpm/exe.linux-arm64-musl@12.5.1': + optional: true + + '@pnpm/exe.linux-arm64@12.5.1': + optional: true + + '@pnpm/exe.linux-ppc64@12.5.1': + optional: true + + '@pnpm/exe.linux-riscv64@12.5.1': + optional: true + + '@pnpm/exe.linux-s390x@12.5.1': + optional: true + + '@pnpm/exe.linux-x64-musl@12.5.1': + optional: true + + '@pnpm/exe.linux-x64@12.5.1': + optional: true + + '@pnpm/exe.win32-arm64@12.5.1': + optional: true + + '@pnpm/exe.win32-x64@12.5.1': + optional: true + + pnpm@12.5.1: + optionalDependencies: + '@pnpm/exe.android-arm64': 12.5.1 + '@pnpm/exe.android-x64': 12.5.1 + '@pnpm/exe.darwin-arm64': 12.5.1 + '@pnpm/exe.darwin-x64': 12.5.1 + '@pnpm/exe.freebsd-x64': 12.5.1 + '@pnpm/exe.linux-arm64': 12.5.1 + '@pnpm/exe.linux-arm64-musl': 12.5.1 + '@pnpm/exe.linux-ppc64': 12.5.1 + '@pnpm/exe.linux-riscv64': 12.5.1 + '@pnpm/exe.linux-s390x': 12.5.1 + '@pnpm/exe.linux-x64': 12.5.1 + '@pnpm/exe.linux-x64-musl': 12.5.1 + '@pnpm/exe.win32-arm64': 12.5.1 + '@pnpm/exe.win32-x64': 12.5.1 + +--- lockfileVersion: '9.0' settings: @@ -8,34 +166,43 @@ importers: .: dependencies: + '@ampproject/remapping': + specifier: ^2.3.0 + version: 2.3.0 '@babel/core': specifier: ^7.29.7 - version: 7.29.7 + version: 7.29.7(supports-color@9.4.0) + '@solidjs/babel-plugin': + specifier: ^2.0.0-rc.9 + version: 2.0.0-rc.9(@babel/core@7.29.7(supports-color@9.4.0))(@tsrx/core@0.1.63(@typescript-eslint/types@8.70.1)) + '@solidjs/compiler': + specifier: ^2.0.0-rc.9 + version: 2.0.0-rc.9 '@testing-library/jest-dom': - specifier: ^5.16.6 || ^5.17.0 || ^6.0.0 + specifier: ^5.16.6 || ^5.17.0 || ^6.0.0 || ^7.0.0 version: 6.9.1 - babel-preset-solid: - specifier: ^1.9.12 - version: 1.9.12(@babel/core@7.29.7)(solid-js@1.9.14) merge-anything: specifier: ^6.0.6 version: 6.0.6 - solid-refresh: - specifier: ^0.7.8 - version: 0.7.8(solid-js@1.9.14) unplugin: specifier: ^3.3.0 - version: 3.3.0(esbuild@0.28.1)(rolldown@1.1.5)(rollup@4.62.2)(vite@8.1.4(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.49.0)(yaml@2.9.0))(webpack@5.108.4(esbuild@0.28.1)) + version: 3.3.0(esbuild@0.28.1)(rolldown@1.1.5)(rollup@4.62.2)(vite@8.1.4(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.49.0)(yaml@2.9.0))(webpack@5.108.4(esbuild@0.28.1)(lightningcss@1.32.0)(postcss@8.5.19)) vitefu: - specifier: ^1.1.3 + specifier: ^1.0.4 version: 1.1.3(vite@8.1.4(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.49.0)(yaml@2.9.0)) devDependencies: '@so1ve/eslint-config': - specifier: ^4.6.2 - version: 4.6.2(@typescript-eslint/eslint-plugin@8.64.0(@typescript-eslint/parser@8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(@typescript-eslint/rule-tester@8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(@typescript-eslint/typescript-estree@8.64.0(typescript@6.0.3))(eslint-import-resolver-node@0.3.10)(eslint@10.7.0(jiti@2.7.0))(prettier@3.9.5)(ts-declaration-location@1.0.7(typescript@6.0.3))(typescript@6.0.3)(vitest@4.1.10(@types/node@26.1.1)(vite@8.1.4(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.49.0)(yaml@2.9.0))) + specifier: ^4.7.0 + version: 4.7.0(@emnapi/core@1.11.3)(@emnapi/runtime@1.11.3)(@typescript-eslint/eslint-plugin@8.70.1(@typescript-eslint/parser@8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3))(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3))(@typescript-eslint/typescript-estree@8.70.1(supports-color@9.4.0)(typescript@6.0.3))(eslint-import-resolver-node@0.3.10(supports-color@9.4.0))(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(prettier@3.9.9)(supports-color@9.4.0)(ts-declaration-location@1.0.7(typescript@6.0.3))(typescript@6.0.3)(vitest@4.1.10(@types/node@26.1.1)(vite@8.1.4(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.49.0)(yaml@2.9.0))) '@so1ve/prettier-config': - specifier: ^4.6.2 - version: 4.6.2(prettier@3.9.5) + specifier: ^4.7.0 + version: 4.7.0(prettier@3.9.9)(supports-color@9.4.0) + '@solidjs/vite-plugin': + specifier: ^3.0.0-next.44 + version: 3.0.0-next.44(@solidjs/web@2.0.0-rc.9(solid-js@2.0.0-rc.9))(@testing-library/jest-dom@6.9.1)(@tsrx/core@0.1.63(@typescript-eslint/types@8.70.1))(solid-js@2.0.0-rc.9)(supports-color@9.4.0)(vite@8.1.4(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.49.0)(yaml@2.9.0)) + '@solidjs/web': + specifier: ^2.0.0-rc.9 + version: 2.0.0-rc.9(solid-js@2.0.0-rc.9) '@sxzz/test-utils': specifier: ^0.5.18 version: 0.5.18(esbuild@0.28.1)(rolldown@1.1.5)(rollup@4.62.2)(typescript@6.0.3)(vitest@4.1.10(@types/node@26.1.1)(vite@8.1.4(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.49.0)(yaml@2.9.0))) @@ -52,17 +219,17 @@ importers: specifier: ^0.28.1 version: 0.28.1 eslint: - specifier: ^10.7.0 - version: 10.7.0(jiti@2.7.0) + specifier: ^10.11.0 + version: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) prettier: - specifier: ^3.9.5 - version: 3.9.5 + specifier: ^3.9.9 + version: 3.9.9 rollup: specifier: ^4.62.2 version: 4.62.2 solid-js: - specifier: ^1.9.14 - version: 1.9.14 + specifier: ^2.0.0-rc.9 + version: 2.0.0-rc.9 tsdown: specifier: ^0.22.7 version: 0.22.7(@arethetypeswrong/core@0.18.5)(oxc-resolver@11.24.2)(publint@0.3.21)(typescript@6.0.3) @@ -71,25 +238,26 @@ importers: version: 6.0.3 unplugin-oxc: specifier: ^0.6.1 - version: 0.6.1(esbuild@0.28.1)(rolldown@1.1.5)(rollup@4.62.2)(vite@8.1.4(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.49.0)(yaml@2.9.0))(webpack@5.108.4(esbuild@0.28.1)) + version: 0.6.1(esbuild@0.28.1)(rolldown@1.1.5)(rollup@4.62.2)(vite@8.1.4(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.49.0)(yaml@2.9.0))(webpack@5.108.4(esbuild@0.28.1)(lightningcss@1.32.0)(postcss@8.5.19)) vite: specifier: ^8.1.4 version: 8.1.4(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.49.0)(yaml@2.9.0) - vite-plugin-solid: - specifier: ^2.11.12 - version: 2.11.12(@testing-library/jest-dom@6.9.1)(solid-js@1.9.14)(vite@8.1.4(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.49.0)(yaml@2.9.0)) vitest: specifier: ^4.1.10 version: 4.1.10(@types/node@26.1.1)(vite@8.1.4(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.49.0)(yaml@2.9.0)) webpack: specifier: ^5.108.4 - version: 5.108.4(esbuild@0.28.1) + version: 5.108.4(esbuild@0.28.1)(lightningcss@1.32.0)(postcss@8.5.19) packages: '@adobe/css-tools@4.5.0': resolution: {integrity: sha512-6OzddxPio9UiWTCemp4N8cYLV2ZN1ncRnV1cVGtve7dhPOtRkleRyx32GQCYSwDYgaHU3USMm84tNsvKzRCa1Q==} + '@ampproject/remapping@2.3.0': + resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} + engines: {node: '>=6.0.0'} + '@andrewbranch/untar.js@1.0.3': resolution: {integrity: sha512-Jh15/qVmrLGhkKJBdXlK1+9tY4lZruYjsgkDFj08ZmDiWVBLJcqkok7Z0/R0In+i1rScBpJlSvrTS2Lm41Pbnw==} @@ -97,12 +265,80 @@ packages: resolution: {integrity: sha512-9ytjzGwxjm9Uz7I9avfbt5vlQt6uk9uRRESzJjqrznl6WKvI6dwYTo+vJ3U02Wrq/mR3iql/PzhvHhKdJIAjDQ==} engines: {node: '>=20'} + '@astrojs/compiler-binding-android-arm64@0.4.1': + resolution: {integrity: sha512-Wtx2DZORuNTLASLLZ8hlrjFaJe1LUloatcCn9EPq7knBhRpjMGXeJANIJMeBZG4igvz7x+3nyAJM2iwCSW9xog==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [android] + + '@astrojs/compiler-binding-darwin-arm64@0.4.1': + resolution: {integrity: sha512-7iwXcU+hB60Y1SvOfnWHNioT72gDsDQKaDipXh2Onwp/TvQMozhbvhy13wJR8Af940a0h6PbddCeJFpj791UDA==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [darwin] + + '@astrojs/compiler-binding-darwin-x64@0.4.1': + resolution: {integrity: sha512-pifjICos49RXhSVKSDu5gDB0/8j0O7DmxSp1DaWW2PyLG5ekwSkcrfOZto5JqhdI7QYMZB3XOiXpsdOXpS4npA==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [darwin] + + '@astrojs/compiler-binding-linux-arm64-gnu@0.4.1': + resolution: {integrity: sha512-hsZMlNWc6LqWHh9LlSwTq1/XCY7pxA5rkkKIdZRV8mgbOz9OwLvjEoe5Jry13eIZjMUQO8XnQyzk8o/Pjw2YFA==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [linux] + libc: [glibc] + + '@astrojs/compiler-binding-linux-arm64-musl@0.4.1': + resolution: {integrity: sha512-a3EW27f+Z9uf57vYmpLgUriA1y9wDhKz57PT8D8XlFZt2HZEWhUxKuxI1jvKVI9p8okYee11WXEm/FHY1G9yoQ==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [linux] + libc: [musl] + + '@astrojs/compiler-binding-linux-x64-gnu@0.4.1': + resolution: {integrity: sha512-XruPTKB/SS4DFzeAjQ1ZyM0ieHDjapHkOSnnzRApZ4FXY2YAI7UY3mETjfJiIS/acyZyrnPH5jObv1gATTdUJQ==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [linux] + libc: [glibc] + + '@astrojs/compiler-binding-linux-x64-musl@0.4.1': + resolution: {integrity: sha512-E8j7lGanqNpudtkUbsFaOLJhmwFe4Ecqux7K9hkj4wULIPNZRM2bYZNcMSj8r1oWvaUiwZl8LaaNwv3+14jqhw==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [linux] + libc: [musl] + + '@astrojs/compiler-binding-wasm32-wasi@0.4.1': + resolution: {integrity: sha512-vNLxIv41ZE+nmPFtw24cRW5ZXG+ZPcAGtgigtjCP8lvcxKI7u2GrXoMsCgEH5fMw8WCEJpwLvsVBg15rJKAkyA==} + engines: {node: '>=14.0.0'} + cpu: [wasm32] + + '@astrojs/compiler-binding-win32-arm64-msvc@0.4.1': + resolution: {integrity: sha512-/xTDgRsFDoTh0/+KFXJ74DY4Jqn8CoSHwa8UP5RAblHfnRHkenwfSl4zYDET61O9vXKLk09UzHjjq09yP20/AQ==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [win32] + + '@astrojs/compiler-binding-win32-x64-msvc@0.4.1': + resolution: {integrity: sha512-0x5J6iHZO0Fjo/CVzoIbXKzWnGESftDbEUQ/oXQ61HhUAFoR7+T1jfToZSNAS+gYyBXHSTpMWYC7lzarbhClcg==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [win32] + + '@astrojs/compiler-binding@0.4.1': + resolution: {integrity: sha512-ZYVDW1P58OXyxqZbOMp+/2U9KA7y2esIx9r4pWdpZ/l6fCZhaw4ul+D7EgpRVxYLkyTWqzANbTTUFGPFP8zDHA==} + engines: {node: ^20.19.0 || >=22.12.0} + + '@astrojs/compiler-rs@0.4.1': + resolution: {integrity: sha512-//NmAuRhy7eU9iP0ceI5Pymy55M+nUZ//kS6XeOyhBWdDib2KbJOyFaVJ52k7sDkJwTKVox7oPu3SpYiVnGm5A==} + engines: {node: '>=22.12.0'} + '@astrojs/compiler@2.13.1': resolution: {integrity: sha512-f3FN83d2G/v32ipNClRKgYv30onQlMZX1vCeZMjPsMMPl1mDpmbl0+N5BYo4S/ofzqJyS5hvwacEo0CCVDn/Qg==} - '@astrojs/compiler@3.0.1': - resolution: {integrity: sha512-z97oYbdebO5aoWzuJ/8q5hLK232+17KcLZ7cJ8BCWk6+qNzVxn/gftC0KzMBUTD8WAaBkPpNSQK6PXLnNrZ0CA==} - '@babel/code-frame@7.29.7': resolution: {integrity: sha512-Aup7aUOfpbAUg2ROOJN6Iw5f9DMBlzu0mIkm/malLQFN/YQgO48wCj0Kxa3sEHJvPVFg7siR+qRInwXd2qhQKw==} engines: {node: '>=6.9.0'} @@ -187,6 +423,12 @@ packages: '@braidai/lang@1.1.2': resolution: {integrity: sha512-qBcknbBufNHlui137Hft8xauQMTZDKdophmLFv05r2eNmdIv/MlPuP4TdUknHG68UdWLgVZwgxVe735HzJNIwA==} + '@cacheable/memory@2.2.0': + resolution: {integrity: sha512-CTLKqLItRCEixEAewD3/j9DB3/o96gpTPD4eJ1v+DGOlxZRZncRQkGYqqnAGCscYd6RNeXfGeiuCphsPtqyIfQ==} + + '@cacheable/utils@2.5.0': + resolution: {integrity: sha512-buipgOVDkkPXNR5+xBpDw7Zk2n1EvU7qBJCNUcL7rhQ//kfpOXPAvQ511Os0vpLYJ1pZnvudNytkQt2hst3wqA==} + '@emnapi/core@1.10.0': resolution: {integrity: sha512-yq6OkJ4p82CAfPl0u9mQebQHKPJkY7WrIuk205cTYnYe+k2Z8YBh11FrbRG/H6ihirqcacOgl2BIO8oyMQLeXw==} @@ -196,6 +438,9 @@ packages: '@emnapi/core@1.11.2': resolution: {integrity: sha512-TC8MkTuZUtcTSiFeuC0ksCh9QIJ5+F21MvZ4Wn4ORfYaFJ/0dsiudv5tVkejgwZlwQ39jL9WWDe2lz8x0WglOA==} + '@emnapi/core@1.11.3': + resolution: {integrity: sha512-zLpS5asjEb7lq8jYLq37N6XKaE41DIexlY1rF/z4/tIl3wo13Sqm28fRyfIsKZD+NZ8mM5RoKkpW/rBcuoSZSg==} + '@emnapi/runtime@1.10.0': resolution: {integrity: sha512-ewvYlk86xUoGI0zQRNq/mC+16R1QeDlKQy21Ki3oSYXNgLb45GV1P6A0M+/s6nyCuNDqe5VpaY84BzXGwVbwFA==} @@ -205,15 +450,21 @@ packages: '@emnapi/runtime@1.11.2': resolution: {integrity: sha512-kyOl3X0DuTiT1h2ft8r2fYO8JYtU9a9Xis/zBSiGArNaagCOWx90N1k2wxp18czFDH+OgcWGb5ZP/XMt3dcyPA==} + '@emnapi/runtime@1.11.3': + resolution: {integrity: sha512-Xz4Tpyki7XyrpbUK1jR1AhdAdaXyhhY4lZ3neLodmhpuWfy2PAQN5B46sAiU4liOXGLkHypn/qU+jvfWSCYYLA==} + '@emnapi/wasi-threads@1.2.1': resolution: {integrity: sha512-uTII7OYF+/Mes/MrcIOYp5yOtSMLBWSIoLPpcgwipoiKbli6k322tcoFsxoIIxPDqW01SQGAgko4EzZi2BNv2w==} '@emnapi/wasi-threads@1.2.2': resolution: {integrity: sha512-c95qOXkHdydNKhscBTebqEC1CVAZpyqOfVfBzQ1qgzyl3gfeldUjIggDbIZgDKsHLgnsM+igH7TJ/eAasaVuMA==} - '@es-joy/jsdoccomment@0.84.0': - resolution: {integrity: sha512-0xew1CxOam0gV5OMjh2KjFQZsKL2bByX1+q4j3E73MpYIdyUxcZb/xQct9ccUb+ve5KGUYbCUxyPnYB7RbuP+w==} - engines: {node: ^20.19.0 || ^22.13.0 || >=24} + '@emnapi/wasi-threads@1.2.3': + resolution: {integrity: sha512-ELEBe8PsLvvJ6QMr0zLt8ffvOHW/dc1m3CEzNMg7aJUv3bMaoDtw2TXyDAwkYBuroxxuHEwhRTLJSe5sya547g==} + + '@es-joy/jsdoccomment@0.92.0': + resolution: {integrity: sha512-WivZqV5jPTYDQJgIMp0hTsyQESKYNY6yCJr4b0l84tYtQntkAMkc6zARh2vlRQyeg4aYHPUkCUDpvr2IWAiGpQ==} + engines: {node: ^22.22.2 || >=24.15.0} '@esbuild/aix-ppc64@0.28.1': resolution: {integrity: sha512-Svl7tq8k/08+p6CXPpRjQ1fKX+1odH/BQbb48fV6fj3CWHhsoIOoY87w1oHXm0qEpkIK3ZfVgp0hed3XBXzXMQ==} @@ -371,14 +622,14 @@ packages: cpu: [x64] os: [win32] - '@eslint-community/eslint-plugin-eslint-comments@4.7.2': - resolution: {integrity: sha512-LF03qURSwEWm2dz5wtdDCzNk+7Opl0X7q6I3undsaIuNsEiNvRV3BCtqu14Q/6Pzg1tBj44LcxpW2EpSLZStZw==} + '@eslint-community/eslint-plugin-eslint-comments@4.8.1': + resolution: {integrity: sha512-vafrdi15JHBFh1qWOAucyJwlEEuhdoMof28jOdKdgnwZ7bXwd6v4wzHYSmAVLwnx0yc7bqAtfJ0EZQV1WAzV/Q==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0 || ^10.0.0 - '@eslint-community/eslint-utils@4.9.1': - resolution: {integrity: sha512-phrYmNiYppR7znFEdqgfWHXR6NCkZEK7hwWDHZUjit/2/U0r6XvkDl0SYnoM51Hq7FhCGdLDT6zxCCOY1hexsQ==} + '@eslint-community/eslint-utils@4.10.1': + resolution: {integrity: sha512-cuadcxVFE8sDK6iWJbs8Sn0av2Nrh2QSGQhVlBW9AaAHqHwjWsZHT8LJ4hFGPh7ASBV2deFdM7H/DPjulmh8rg==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 @@ -387,8 +638,8 @@ packages: resolution: {integrity: sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - '@eslint/compat@2.1.0': - resolution: {integrity: sha512-LgaSCymEpw7tF53xvDw9SNsraPb1IBHxpdABIOM0hW8UAlP8znrjYtuxfR58FSJ3L9BhwD+FaPRFQpZq84Nh6g==} + '@eslint/compat@2.1.1': + resolution: {integrity: sha512-rMcy8GSrwNzcISX/BlTDY/GLB4eCopEuy9woIls3To+15OLxykZrxxq+WUcylCPCQ6F4MujjBM1DX5V1aqI3Vw==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} peerDependencies: eslint: ^8.40 || 9 || 10 @@ -404,8 +655,8 @@ packages: resolution: {integrity: sha512-eIJYKTCECbP/nsKaaruF6LW967mtbQbsw4JTtSVkUQc9MneSkbrgPJAbKl9nWr0ZeowV8BfsarBmPpBzGelA2w==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} - '@eslint/config-helpers@0.6.0': - resolution: {integrity: sha512-ii6Bw9jJ2zi2cWA2Z+9/QZ/+3DX6kwaV5Q986D/CdP3Lap3w/pgQZ373FV7byY/i7L4IRH/G43I5dz1ClsCbpA==} + '@eslint/config-helpers@0.7.0': + resolution: {integrity: sha512-DObd/KKUsU+FaFv4PLxSRenpXfQWmPXXP3pPZ6/K1PCrMu2vQpMDMuQe/BqYeoLcz8ro0bVDF1RxOJgfVEdhUw==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} '@eslint/core@0.17.0': @@ -416,6 +667,10 @@ packages: resolution: {integrity: sha512-MwcE1P+AZ4C6DWlpin/OmOA54mmIZ/+xZuJiQd4SyB29oAJjN30UW9wkKNptW2ctp4cEsvhlLY/CsQ1uoHDloQ==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} + '@eslint/css-tree@4.1.1': + resolution: {integrity: sha512-A+s89eP+yDAPkKjnIOfjlkGifg5J7GPn01nWx14UjBVWktfkxOU4975F9ZZ13xNxkGiblNcBaAqgKhnQrW6SWA==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + '@eslint/object-schema@3.0.5': resolution: {integrity: sha512-vqTaUEgxzm+YDSdElad6PiRoX4t8VGDjCtt05zn4nU810UIx/uNEV7/lZJ6KwFThKZOzOxzXy48da+No7HZaMw==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} @@ -424,31 +679,31 @@ packages: resolution: {integrity: sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/plugin-kit@0.7.2': - resolution: {integrity: sha512-+CNAzxglkrpNf/kKywqQfk74QjtceuOE7Qm+AF8miRvPF/wmmK5+OJOgVh3AVTT3RP2mH3+FOaxlE5v72owk0A==} + '@eslint/plugin-kit@0.7.3': + resolution: {integrity: sha512-IkO+/KEUvwbVpiURZg+P7zF74z5Jxe0UgJxVni+RtoHQ6IZieXaO02kmadomap/q+l6bc/jdPGGqTjhuZnuz1Q==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} - '@html-eslint/core@0.61.0': - resolution: {integrity: sha512-/dcMywhcO7+CvyV5oUGUkh4641ZyeJyncQas+Ulq7z9fXorTstMrApIzIUdV9TNgkwZZ97Rd8/8XbXkxgoJo6A==} + '@html-eslint/core@0.65.0': + resolution: {integrity: sha512-UJUf0dDI6xq6iitksPXrfLwu2Gc143LGFHMlVnRPZxkoLz1xIzKbkQVxrqxqNmandsSmhWfkGw//U2BsBH/QRw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@html-eslint/eslint-plugin@0.61.0': - resolution: {integrity: sha512-iIuyw42ssr3hoBs0dn+ivD4ZPyrMgq1v4Hqx8N3qVEyTcli/XYQ5C20CWPE8msYLU/TmBnvkl0VgzymiIsrRcw==} + '@html-eslint/eslint-plugin@0.65.0': + resolution: {integrity: sha512-zYa4ARNbkp/GPlIY+1NFV5v6H3EDs+jby4/rFnZDaS/S3mFEvBail4+dPqugHljrBmAZ0UkxMATR696ypRvPCQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: '>=8.0.0 || ^10.0.0-0' - '@html-eslint/parser@0.61.0': - resolution: {integrity: sha512-D+4TqU3tiAJ1QuP1IjVkOTYc9Q26FfDbBx3ZqaADzEd1Jgsb+ZdV2UGTBSOzKNHw6ojQCyGnaF3hPg4HSV9TKQ==} + '@html-eslint/parser@0.65.0': + resolution: {integrity: sha512-sMZ8D60uQ/yLKViiqkzX3vnpBwcBNE8x/Ax8roAdrLiErkJ4wLMdXq+kmRm0rqfTuC0mqPJ+7uRTAgUB6wXg2w==} - '@html-eslint/template-parser@0.61.0': - resolution: {integrity: sha512-mPN9UsW02m+WtDQb48FLzTCVDCBuXboRzDO37yPipp6ai98IDJBslrFjmHHh8dwBIs9QlQXWpTdlRiV3NvTwtA==} + '@html-eslint/template-parser@0.65.0': + resolution: {integrity: sha512-gUc9D4PaV5uvQjR21Q1wumbe2Qyf6decJjCZCpM77kZ7mMprIDvnF4LgCJBkTldidc4j1GzJvqkJ5e+r+skFyw==} - '@html-eslint/template-syntax-parser@0.61.0': - resolution: {integrity: sha512-m5XAYPRyX/uRNkcPaBBrM+k2SfWHhjkTLFPMz+T7CiH3nbPm7wolcudMqDfW9QoexcxCQke+xJ/ZZz/PDOykKg==} + '@html-eslint/template-syntax-parser@0.65.0': + resolution: {integrity: sha512-Kh7TFOM4cYcutzGZdWKxnZJpWpuZwu4hcSxbn/PHVBgDOytKOwpuPvCKn1+B11fSFxLhrrR3RHvsBVknntpcbA==} - '@html-eslint/types@0.61.0': - resolution: {integrity: sha512-1cVh4dHkHwJqKrd/8t5U3wkzm0osTax+TLrmmtCaotYXQAJlZ2Cp31GQHY+lF17p71iHp3NoNYisUblV/lGzBg==} + '@html-eslint/types@0.65.0': + resolution: {integrity: sha512-bWMTSRwFXwvturEYvA5ng43+jpFh9FTpAgC2HE3O0ijsde40VcoO6DtcjFl7QY8AW5O/PeisDDl1Hbe5q89wsg==} '@humanfs/core@0.19.2': resolution: {integrity: sha512-UhXNm+CFMWcbChXywFwkmhqjs3PRCmcSa/hfBgLIb7oQ5HNb1wS0icWsGtSAUNgefHeI+eBrA8I1fxmbHsGdvA==} @@ -490,9 +745,21 @@ packages: '@jridgewell/sourcemap-codec@1.5.5': resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==} + '@jridgewell/sourcemap-codec@1.6.0': + resolution: {integrity: sha512-T7jf+5zgsZHwNJ4lvQ7/aezbyk0nNX+zJVWpmHA7VYsEx7a7qr5Rg5IbtJFqkgze5Y2sruq1RUY8Q837Od7iFw==} + '@jridgewell/trace-mapping@0.3.31': resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==} + '@keyv/bigmap@1.3.1': + resolution: {integrity: sha512-WbzE9sdmQtKy8vrNPa9BRnwZh5UF4s1KTmSK0KUVLo3eff5BlQNNWDnFOouNpKfPKDnms9xynJjsMYjMaT/aFQ==} + engines: {node: '>= 18'} + peerDependencies: + keyv: ^5.6.0 + + '@keyv/serialize@1.1.1': + resolution: {integrity: sha512-dXn3FZhPv0US+7dtJsIi2R+c7qWYiReoEh5zUntWCf4oSpMNib8FDhSoed6m3QyZdx5hK7iLFkYk3rNxwt8vTA==} + '@loaderkit/resolve@1.0.6': resolution: {integrity: sha512-G8FdIoF5CypfwmD9rl8BXod5HDn8JqB0CCNBXDTaRZ+yRYhARrrSToX1zg1zy9jX3zLqigsELwhT4gNtkdQAUg==} @@ -502,17 +769,16 @@ packages: '@emnapi/core': ^1.7.1 '@emnapi/runtime': ^1.7.1 - '@nodelib/fs.scandir@2.1.5': - resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} - engines: {node: '>= 8'} - - '@nodelib/fs.stat@2.0.5': - resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} - engines: {node: '>= 8'} + '@napi-rs/wasm-runtime@1.2.4': + resolution: {integrity: sha512-AJxoUD2/15ESHbvpcyjU274nsAPLuOtPHCk0vKJM5pj//Fg/B1FXNWjPnXTT9PymCYYiHo4zPj0ZomXBKhoy7g==} + engines: {node: ^20.19.0 || ^22.13.0 || >=23.5.0} + peerDependencies: + '@emnapi/core': ^1.7.1 || ^2.0.0-alpha.4 + '@emnapi/runtime': ^1.7.1 || ^2.0.0-alpha.4 - '@nodelib/fs.walk@1.2.8': - resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} - engines: {node: '>= 8'} + '@noble/hashes@2.4.0': + resolution: {integrity: sha512-X5XaVWZIBCT7HHZGm5I7ZQXDwLG+bGXuSrMQAW+7Zvl87h1kmc1ZB1VSRJcpUfoUrGQp4Fkoxm5kZ+Ms+aW+eA==} + engines: {node: '>= 20.19.0'} '@npmcli/config@8.3.4': resolution: {integrity: sha512-01rtHedemDNhUXdicU7s+QYz/3JyV5Naj84cvdXGH4mgCdL+agmSYaLF4LUG4vMCLzhBO8YtS0gPpH1FGvbgAw==} @@ -1153,23 +1419,91 @@ packages: cpu: [x64] os: [win32] - '@rviscomi/capo.js@2.1.0': - resolution: {integrity: sha512-y6J+KJqsrY8AcDswLKkvd8KdpFindjS4Q9rSuK8CIpsQOepEjgRaMR4S8OtuLOQoVYLCROT3ffMQqRWrUMQdQA==} + '@rviscomi/capo.js@2.3.1': + resolution: {integrity: sha512-RW3MxHN/HujvKHgDFEq9+vg+6EeOJSgYSwCQ4c3HwGvHMSQNeW89IsEvAYFkKZDeqjGbblRBwNSJdkbl5RnL3Q==} - '@so1ve/eslint-config@4.6.2': - resolution: {integrity: sha512-SFt1oHYVNrkQY2DjeL8EHRbCyxmAqeDuCDWzNnZx97gBRzf6uMJFxWkEc0AAFOnlroGmPnJgvYuct13k/v0ZTQ==} + '@so1ve/eslint-config@4.7.0': + resolution: {integrity: sha512-NTMwjdW6xa48lOOy3yQXPVvYW1MlDv/g8XCBl7Q3wmhxX+VeSrbbF7dIJHC8UK7Gt/DwyWGUVCYY+9ioVgrXkw==} peerDependencies: eslint: ^10.0.2 prettier: ^3.8.1 - '@so1ve/eslint-plugin@4.6.2': - resolution: {integrity: sha512-8tuMpskup5eNlyzpMNm9j8JEQoocFS2YWCaVpFu6J1psdjDy89akU6h0FiIrUknsQUDvp2JVuDSAuQHQZj48rA==} + '@so1ve/eslint-plugin@4.7.0': + resolution: {integrity: sha512-W/nwfCrZBtGqrBzoOXUsu2mCwzQX35DXlqEIj/nf5eLKi4nx9zOE6KPMoEFvV4IqJ+CpPmpJVxAj54zozcaESQ==} - '@so1ve/prettier-config@4.6.2': - resolution: {integrity: sha512-CLaBnHHZBzuChNNNKrrQ6GvcBlzIM2tsHYJ6D11FFP5Bt34vSo8GiFDHTtTiooYBzLjnGkFfVF5m8wU+OEdGBA==} + '@so1ve/prettier-config@4.7.0': + resolution: {integrity: sha512-VOIOyawKAnqN2ieo3TP9NLthToFNYMH5lgeAehhndc0BeQqISFtP9WJ2dwuS+ynf1uoOOgkV4zb9THDC3HoU3g==} peerDependencies: prettier: ^3.8.1 + '@solidjs/babel-plugin@2.0.0-rc.9': + resolution: {integrity: sha512-Qd+qY9UCB3gYCWQSS3p9DETHx9igOnQWFo0xqqyFWO9xT0mo3SmAyfHbQXOLlpuwpPC2DJjzjtWqiT/HQHPYYQ==} + peerDependencies: + '@babel/core': ^7.20.12 + '@tsrx/core': 0.1.63 + peerDependenciesMeta: + '@tsrx/core': + optional: true + + '@solidjs/compiler-darwin-arm64@2.0.0-rc.9': + resolution: {integrity: sha512-pFEu7BYhEuCkwgAdveTkkOTYpkq4IMbGYTwLqOprk6Ts+65rHjrV7Pm+hkoETqaRzX66n1vThsSG/j1NPU8FsA==} + cpu: [arm64] + os: [darwin] + + '@solidjs/compiler-darwin-x64@2.0.0-rc.9': + resolution: {integrity: sha512-bxJnKYUvqKyV/hzbgDi2VThb9D8NStr9+RFv1l4rjI8pXZxlqNSPGbISAdzk4DbbXNQdKHNl2ne0M1uuhXPpjA==} + cpu: [x64] + os: [darwin] + + '@solidjs/compiler-linux-arm64-gnu@2.0.0-rc.9': + resolution: {integrity: sha512-UzugKIkZDfMUJR4GqEeYX5bj5N4xl3TvnsxYhPfkDlulszw6RXpnya0l5xrPKY0woXKz4+rPnvUrA8zJjwJKdA==} + cpu: [arm64] + os: [linux] + libc: [glibc] + + '@solidjs/compiler-linux-x64-gnu@2.0.0-rc.9': + resolution: {integrity: sha512-vejdMmYyozeFmOK7uZ/THfIiASqMUYeNOsG8Gcve8LtSUgcGHYxVxcVvw7Aaf2bGyPCjv0AEKblbn/F9Bk1rlw==} + cpu: [x64] + os: [linux] + libc: [glibc] + + '@solidjs/compiler-wasm32-wasi@2.0.0-rc.9': + resolution: {integrity: sha512-MvRfGiJhEzn7PJumX8hzKjZjwhmLLa5yym3aG67rG9vs9EB3q2XO+syNUkmBXMMw9WQy3kc/jXh5xmrJz/N3Bg==} + engines: {node: '>=14.0.0'} + + '@solidjs/compiler-win32-x64-msvc@2.0.0-rc.9': + resolution: {integrity: sha512-u+Jh/5QA5jJf+VXInq/nQ7RINDIZXLI0WgErbeIIpdY0v01SdZ12wqi9P9iQSWIflF9ef0Pwa5MFde3E23xszQ==} + cpu: [x64] + os: [win32] + + '@solidjs/compiler@2.0.0-rc.9': + resolution: {integrity: sha512-TzxMcJDhVswSEL3UtXuUWfFzIyNBx0LN6KAJZ6ryvlElAEdq2T2mpaw/Vn5fMjXcv0bCqas8CVADBhrkDVfPMg==} + + '@solidjs/signals@2.0.0-rc.9': + resolution: {integrity: sha512-o3pqiTgpH5NR2DstiKrt9s/6+0YOFtv+MfvLONwLsS247I+EWMMyTu9BkRcgd35UR5Pa1DM16lI1/5uaIMY6Gw==} + engines: {node: '>=22.12.0'} + + '@solidjs/vite-plugin@3.0.0-next.44': + resolution: {integrity: sha512-P/jIo9khECJft0eS2VCYJq16/JPtqoeBqaw/33VAlov8DSkd/6DU605wUTTZ3ZzpB0BFjDrwlyInjKNxFH0oLQ==} + engines: {node: ^20.19.0 || >=22.12.0} + peerDependencies: + '@solidjs/start-devtools': ^1.0.0-next.2 + '@solidjs/web': ^2.0.0-rc.9 + '@testing-library/jest-dom': ^5.16.6 || ^5.17.0 || ^6.0.0 || ^7.0.0 + solid-js: ^2.0.0-rc.9 + vite: ^8.0.0 || ^9.0.0 + peerDependenciesMeta: + '@solidjs/start-devtools': + optional: true + '@testing-library/jest-dom': + optional: true + + '@solidjs/web@2.0.0-rc.9': + resolution: {integrity: sha512-pfiWoLDnLc+QYWc7UyLqO+5QrPEf3oTiNmmRC+C+uM6AZ5VH0bZMNPtLM5rJ29LKPiTwQitKV843IQDf/oeyhQ==} + engines: {node: '>=22.12.0'} + peerDependencies: + solid-js: ^2.0.0-rc.9 + '@standard-schema/spec@1.1.0': resolution: {integrity: sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==} @@ -1179,6 +1513,11 @@ packages: peerDependencies: eslint: ^9.0.0 || ^10.0.0 + '@sveltejs/acorn-typescript@1.0.13': + resolution: {integrity: sha512-wgKggnhZVL9Bfx1OaKKTrYY9BFRk6C8UAkQNUcIv1+llzYrIqy+RZm5HPKzn0NpEBvTVhTqB4kQyllZywsRBRQ==} + peerDependencies: + acorn: ^8.9.0 + '@sxzz/test-utils@0.5.18': resolution: {integrity: sha512-Od2KZMSzibfnNhcpniDVvPqyHOdx/UG1Wz9ZrJnH9zJx94deSZnIKaOF32Wzw3VaQMupQhrAEg1+B0uNYcA33Q==} engines: {node: '>=20.19.0'} @@ -1217,9 +1556,18 @@ packages: resolution: {integrity: sha512-zIcONa+hVtVSSep9UT3jZ5rizo2BsxgyDYU7WFD5eICBE7no3881HGeb/QkGfsJs6JTkY1aQhT7rIPC7e+0nnA==} engines: {node: '>=14', npm: '>=6', yarn: '>=1'} + '@tsrx/core@0.1.63': + resolution: {integrity: sha512-EQIkCcqW7wTLtLGQQP8bRUe9O+GYFpBsZXXgs7088YIjtoHlNAE2qVgtsEPYY86oV5XBY9aGWLsjCS0SzXvLqw==} + + '@tsrx/runtime@0.1.2': + resolution: {integrity: sha512-bhiacN/1cDKtBAY/sePUmRldkj5TvAXk8gqlyCxF22XM7l+gM0FIISDDSg0jIa1pcBfnyW2vnc82WdtfO9h7Ng==} + '@tybys/wasm-util@0.10.3': resolution: {integrity: sha512-F3fo1MYrRJYL3zER0OUOmkutjr1Vp23m7OsSgp7nq4SP6OqX6C/56XFIPAl5bt3zaBRjmW7SGz3u/6LwFpYcOg==} + '@tybys/wasm-util@0.10.4': + resolution: {integrity: sha512-W3c4gRigFS0T/Ma4qIYF3GDAc5AQdHb1yL5znJT1Zv1YaD9Kitx656wBjvr19qbiosmZT8lWDM5BEMynUqX65A==} + '@types/babel__core@7.20.5': resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==} @@ -1271,12 +1619,15 @@ packages: '@types/ms@2.1.0': resolution: {integrity: sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==} - '@types/node@22.20.1': - resolution: {integrity: sha512-EANqOCF9QFyra+4pfxUcX9STKJpCLjMbObVzljIJomAWSnuSIEAvyzEU53GaajbXJEgdh0iEcPL+DGvpUd4k1Q==} + '@types/node@22.20.4': + resolution: {integrity: sha512-zJRE40jpHtKqE/C4fgHrAKQLJuSpzEnP9ff9Y7YtoR3Wd2pwqzlekDeEuUQXjRd+QCYnVnNwuJYmhdk9XV8gvA==} '@types/node@26.1.1': resolution: {integrity: sha512-nxAkRSVkN1Y0JC1W8ky/fTfkGsMmcrRsbx+3XoZE+rMOX71kLYTV7fLXpqud1GpbpP5TuffXFqfX7fH2GgZREw==} + '@types/node@26.6.2': + resolution: {integrity: sha512-X1P21scMv4zGKLYqjdGjaKa7COa0RKVYYZZN/NfvLQ1JegxFhdhpZG/Lyn8AXx6CDUavKAd11v6BvfpkDByK8g==} + '@types/supports-color@8.1.3': resolution: {integrity: sha512-Hy6UMpxhE3j1tLpl27exp1XqHD7n8chAiNPzWfz16LPZoMMoSc4dzLl6w9qijkEb/r5O1ozdu1CWGA2L83ZeZg==} @@ -1286,102 +1637,65 @@ packages: '@types/unist@3.0.3': resolution: {integrity: sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==} - '@typescript-eslint/eslint-plugin@8.64.0': - resolution: {integrity: sha512-CGvQPBxN3wZLu6Rz2kFUpZeoCm78xUic92ck39KPePkO1NPOwjCqdQnm5Q87tpWw9vcBvW8XLrDXjH9PWYtJ3Q==} + '@typescript-eslint/eslint-plugin@8.70.1': + resolution: {integrity: sha512-nDNrUQ/4ruSNYbu749TRY7cfrzPtoLHEXSNBI8aaNY32LlZCajixqRf3FqcKC4p5Cam4VOHYx/t+i5+nKXvrqA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - '@typescript-eslint/parser': ^8.64.0 + '@typescript-eslint/parser': ^8.70.1 eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/experimental-utils@2.34.0': - resolution: {integrity: sha512-eS6FTkq+wuMJ+sgtuNTtcqavWXqsflWcfBnlYhg/nS4aZ1leewkXGbvBhaapn1q6qf4M71bsR1tez5JTRMuqwA==} - engines: {node: ^8.10.0 || ^10.13.0 || >=11.10.1} - peerDependencies: - eslint: '*' - - '@typescript-eslint/parser@8.64.0': - resolution: {integrity: sha512-KA0OshtlcCCXmbfqyZkM5pV3/WNraJf7DkJRLpyrmwPtud57H5BDX7C3k0LPSPxpprfRL+cJDGabF10mvNCoCw==} + '@typescript-eslint/parser@8.70.1': + resolution: {integrity: sha512-nO974WLllwhSFWQXnMLj6nDGa8f0khKEz1JzpPJ1u7Vm/4X1X6ZHajpoknU4bb41vJyMB0HHVyS2GqdhWfIXZw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/project-service@8.64.0': - resolution: {integrity: sha512-tk4WpOJ6IEbGrVHaNmM0YRrwAD3exZlIK3iadQNAxh4YKk6jvUQ4ecq18n+v7+meh+cJ3j+D8nbk8sRKhlwLQg==} + '@typescript-eslint/project-service@8.70.1': + resolution: {integrity: sha512-62xOgboPfwc3/IgPSX/W6oQR3ZbF04194FPGUGH8HL8iLFHbt/456/8Ph1wLNUgVF+s94FlHoipBsz+v7+LMnA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/rule-tester@8.64.0': - resolution: {integrity: sha512-QmEBcU+JKvSx2DagEb/Nip7331IAQkH77QlEp5KNWs9/OvbhiUXvdf09k43dZtIRtAA0ahNDesQ+bfpjN/UsMA==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - peerDependencies: - eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 - typescript: '>=4.8.4 <6.1.0' - - '@typescript-eslint/scope-manager@8.64.0': - resolution: {integrity: sha512-CXEaFdYXjSTgKhisNkwCcJwTP8Pl+fmRrEQrri4nm3vU743bALrxzLmq7fHG/7e6a5xO0lDYeURpZmBuhHk54w==} + '@typescript-eslint/scope-manager@8.70.1': + resolution: {integrity: sha512-Pa0EeSeAusQc1WbjQMac+YfenewYTBu0KjgYvkUKwhXaHUKbFog23Dm/rp0DX/6tyYOQ3Xl1a+3EcFNZynGHCw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/tsconfig-utils@8.64.0': - resolution: {integrity: sha512-2yo8rRNKuzbVWQp5kslhANqZ2uDAeROQHBRZNPu8JDsHmeFNj/XJJhX/FhNUWmkHHvoNsKa6+tHJiig87EzsQw==} + '@typescript-eslint/tsconfig-utils@8.70.1': + resolution: {integrity: sha512-jumze1fPI+sDOaM2TWGQdn39PDxTr7TZGeuyLkAbNyx2vtMT3uRnVKChN0hfht5V2TugphJzF6bYXvBcE09qqg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/type-utils@8.64.0': - resolution: {integrity: sha512-XWG4Fmmv/6SvyS9nH8jWrKs6terwJvE8cyRt1CzYYqzp9OrPhCT4cMc/f7C6RZCwG+qMmiffJS1/qJP8G1URtg==} + '@typescript-eslint/type-utils@8.70.1': + resolution: {integrity: sha512-7zKTnyvaVWqzLZHPFQtX1hVHqgkMC+WebPWakNCSyrQVbIP1AM0L0TlBZtACldIRb6PptI8Odk+jyZ5kP3B1VA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/types@8.64.0': - resolution: {integrity: sha512-qjhfuTfLXjA4IOzXvz0rTjT01BqEiIgPoUeMwiEjnaHKJMTNo8rH5pYW1a2L/0Dnux2fPC85AeyJoWaGa8WxTA==} + '@typescript-eslint/types@8.70.1': + resolution: {integrity: sha512-Dm1ypdhhrGCTyyehxElhgJ6kgk8MVCv5qXdoOVqPr1uqk42jX8KjrZqhROvdShczA8qrDoYiOWn1ykWlx2k81Q==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/typescript-estree@2.34.0': - resolution: {integrity: sha512-OMAr+nJWKdlVM9LOqCqh3pQQPwxHAN7Du8DR6dmwCrAmxtiXQnhHJ6tBNtf+cggqfo51SG/FCwnKhXCIM7hnVg==} - engines: {node: ^8.10.0 || ^10.13.0 || >=11.10.1} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@typescript-eslint/typescript-estree@8.64.0': - resolution: {integrity: sha512-Pztpsn1aCE1oWDvDEfUk31nngvvF7vUB5SwHFEaZIFpvw7WJtqUHHL4plBZDA9HfWJJjL13BdG0YrJInTUvoVA==} + '@typescript-eslint/typescript-estree@8.70.1': + resolution: {integrity: sha512-TU8PwyGN0PQJUcE96mw8eCQ44SmxGdQlJmlWakHaHQ15eIuuvye5yNtmh/i6oS88jzXVQB71xdNkbkB/fMwL0g==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/utils@8.64.0': - resolution: {integrity: sha512-aJUGVB3+U0htrrCjoA8qukw8cm8fNCGAxK/tVoS70k8aeb7DETKeFozRiVFIwEeN9WJLsjaP3ph8I60tY2XZoQ==} + '@typescript-eslint/utils@8.70.1': + resolution: {integrity: sha512-Esgul8MsnKnRLdYU2Eb2cRV9bS5HJYtKj1ByJnOzzG2M58DGdSUQ1jUuILxipqcpB2h9WLrbD5GijIWUjX/Tqw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/visitor-keys@8.64.0': - resolution: {integrity: sha512-mrtuL8Nsn6gi2H4mo5KMTp823M+3Q19Ew/i+Zlikq20tIMm99C3Ez0dCmkWWnxut20esQvTg8aUSEhMcAOXhEw==} + '@typescript-eslint/visitor-keys@8.70.1': + resolution: {integrity: sha512-Vwj9lUIW5Xq3wQ9w6gv3R86g1hMK8f2zNOdGTAgeXUMMXFK78G9ruCjjqutHMNJc0+CH7LYRnHeUB9IT8wFmcw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@unocss/config@66.7.5': - resolution: {integrity: sha512-dkPl9glhEahJ+Xoja5ZseKKnH+vZaeaKQzg8b0otcKcPPNrHQgu1nu3QgfeOjnXOGrjZIotHwUeVtt4ZA2Skgg==} - - '@unocss/core@66.7.5': - resolution: {integrity: sha512-UdJb8MiMywcau8QrWEVgUAz0kvoFHyR+sACwYCgmBh/BpKJGyR/zw/Ys3wvysbm0f+i/20VGBex/QQxYVlzdyQ==} - - '@unocss/eslint-config@66.7.5': - resolution: {integrity: sha512-uFy7R0Fmb881p9Arv+ZFmnSzjhL+7E26bIsY8LKX+ueKUvzCFcQ1+OQ6cuHfriau9lwZ4iG7T4sGW8oYayNOYQ==} - - '@unocss/eslint-plugin@66.7.5': - resolution: {integrity: sha512-VCOY8w/y+o/2Vm6QqDgKZmX7XUjU0y/22ScI6AU0CxYtKUjHukUFubKgvn7/iRHiJEhrgtpxF1kDLvkNzhsklg==} - - '@unocss/rule-utils@66.7.5': - resolution: {integrity: sha512-/AKHBRF6ZOexE3EDDv8ZEYh40P5e2Eha41IYUbE1wjigW7++ssmvimSTdufJzZvU5DGP++E3B3WEsFPprZMjAg==} - '@unrs/resolver-binding-android-arm-eabi@1.12.2': resolution: {integrity: sha512-g5T90pqg1bo/7mytQx6F4iBNC0Wsh9cu+z9veDbFjc7HjpesJFWD7QMS0NGStXM075+7dJPPVvBbpZlnrdpi/w==} cpu: [arm] @@ -1502,8 +1816,8 @@ packages: cpu: [x64] os: [win32] - '@vitest/eslint-plugin@1.6.23': - resolution: {integrity: sha512-CbrXxQpIUMbeyylGlxaxTgnWYM44et4Nx58swl7+vrTyC9Ttx+hQoy8BGCregbbZ08K5qFhRHeoad1VvERUbkg==} + '@vitest/eslint-plugin@1.6.27': + resolution: {integrity: sha512-X1RCAfwbatG4GFbJ/1PIHP9MSZMt0JJThqbYID+vS4L783k6QGlLPe421wQE8dHXuGCcenVLsydiM4qzsYWxhg==} engines: {node: '>=18'} peerDependencies: '@typescript-eslint/eslint-plugin': '*' @@ -1746,6 +2060,11 @@ packages: engines: {node: '>=0.4.0'} hasBin: true + acorn@8.18.0: + resolution: {integrity: sha512-lGq+9yr1/GuAWaVYIHRjvvySG5/4VfKIvC8EWxStPdcDh/Ka7FG3twP6v4d5BkravUilhIAsG4Qj83t02LWUPQ==} + engines: {node: '>=0.4.0'} + hasBin: true + ajv-formats@2.1.1: resolution: {integrity: sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==} peerDependencies: @@ -1769,8 +2088,8 @@ packages: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} engines: {node: '>=8'} - ansi-regex@6.2.2: - resolution: {integrity: sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==} + ansi-regex@6.3.0: + resolution: {integrity: sha512-WpDfL7NO6j7tH88IDBNVdUJxDh9nmCteAVW9dsep846XdwF4naCBK+/tGLX3KJgcpgMRXCFlTM2hKGoK9FsdrQ==} engines: {node: '>=12'} ansi-styles@4.3.0: @@ -1808,15 +2127,9 @@ packages: resolution: {integrity: sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==} engines: {node: '>=12'} - astro-eslint-parser@1.4.0: - resolution: {integrity: sha512-+QDcgc7e+au6EZ0YjMmRRjNoQo5bDMlaR45aWDoFsuxQTCM9qmCHRoiKJPELgckJ8Wmr7vcfpa9eCDHBFh6G4w==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - - astrojs-compiler-sync@1.1.1: - resolution: {integrity: sha512-0mKvB9sDQRIZPsEJadw6OaFbGJ92cJPPR++ICca9XEyiUAZqgVuk25jNmzHPT0KF80rI94trSZrUR5iHFXGGOQ==} - engines: {node: ^18.18.0 || >=20.9.0} - peerDependencies: - '@astrojs/compiler': '>=0.27.0' + astro-eslint-parser@3.1.0: + resolution: {integrity: sha512-lS5qlx401Q1ZUhQ44XQnM4uT2qI6hA0H+vstrd841xGVxunFOs0ut3DWJGYHK1l7mxRxQdDi1j53pfE7/AyGlA==} + engines: {node: ^22.22.3 || ^24.16.0 || >=26.3.0} async-function@1.0.0: resolution: {integrity: sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==} @@ -1826,20 +2139,6 @@ packages: resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} engines: {node: '>= 0.4'} - babel-plugin-jsx-dom-expressions@0.40.7: - resolution: {integrity: sha512-/O6JWUmjv03OI9lL2ry9bUjpD5S3PclM55RRJEyCdcFZ5W2SEA/59d+l2hNsk3gI6kiWRdRPdOtqZmsQzFN1pQ==} - peerDependencies: - '@babel/core': ^7.20.12 - - babel-preset-solid@1.9.12: - resolution: {integrity: sha512-LLqnuKVDlKpyBlMPcH6qEvs/wmS9a+NczppxJ3ryS/c0O5IiSFOIBQi9GzyiGDSbcJpx4Gr87jyFTos1MyEuWg==} - peerDependencies: - '@babel/core': ^7.0.0 - solid-js: ^1.9.12 - peerDependenciesMeta: - solid-js: - optional: true - bail@2.0.2: resolution: {integrity: sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==} @@ -1855,36 +2154,43 @@ packages: engines: {node: '>=6.0.0'} hasBin: true + baseline-browser-mapping@2.11.25: + resolution: {integrity: sha512-gMmEShwwq7FJqMwvfRwvCl00v4kN+KOfJqXn+f4nrufak5gNHJOksd/60Dvjuz7sI8Y5WiSFBa8FEYr+zoyqCw==} + engines: {node: '>=6.0.0'} + hasBin: true + binary-searching@2.0.5: resolution: {integrity: sha512-v4N2l3RxL+m4zDxyxz3Ne2aTmiPn8ZUpKFpdPtO+ItW1NcTCXA7JeHG5GMBSvoKSkQZ9ycS+EouDVxYB9ufKWA==} boolbase@1.0.0: resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} - brace-expansion@1.1.16: - resolution: {integrity: sha512-IDw48K2/2kRkg9LdJxurvq3lV3aBgq0REY89duEqFRthjlPdXHKMj7EnQOXVckxzgisinf3nHfrcE2FufFLXMw==} + brace-expansion@2.1.7: + resolution: {integrity: sha512-uZbew1NqdmPDTMJ8ah1y+b+9QEJrfkXFk3RcTQw3X0jW/xRUvFKsg1CfQdSYGdTbXZWExtU3J3ccxtnfw1Fi0g==} - brace-expansion@2.1.2: - resolution: {integrity: sha512-w5JZcKgdhDOgOwm8H+KgbosopHMuGcl6qbulwjtz3SM7I7P3yW1eAjzMPLrIE+NQ9vjgANKHWeMHnrT0OXW1oA==} + brace-expansion@5.0.12: + resolution: {integrity: sha512-YovQ3rzhaLMIrDjNDMkNS01tea93qhEhG5xy8f6+R0l+dw3Ki+5sCoIoI942iuLZTHWogWktgwVDhU09iNEimQ==} + engines: {node: 20 || >=22} brace-expansion@5.0.7: resolution: {integrity: sha512-7oFy703dxfY3/NLxC1fh2SUCQ0H9rmAY+5EpDVfXjUTTs+HEwR2nYaqLv+GWcTsumwxPfiz6CzCNkwXwBUwqCA==} engines: {node: 18 || 20 || >=22} - braces@3.0.3: - resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} - engines: {node: '>=8'} - browserslist@4.28.6: resolution: {integrity: sha512-FQBYNK15VMslhLHpA7+n+n1GOlF1kId2xcCg7/j95f24AOF6VDYMNH4mFxF7KuaTdv627faazpOAjFzMrfJOUw==} engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true + browserslist@4.29.0: + resolution: {integrity: sha512-3GSvyjvDI4Dur1Meg2BekJquu5uF+9R9a1+5M1Mde192eZoXbeXjzgOsgqPS2V8D5wrrip0gR5Hf/GhWQ9ZzaA==} + engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} + hasBin: true + buffer-from@1.1.2: resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} - builtin-modules@5.3.0: - resolution: {integrity: sha512-hMQUl2bUFG339QygPM97E+mc8OY1IAchORZxm4a/frcYwKzozMzRVDBwHW0NjOqGElLm2O37AVQE8ikxlZHrMQ==} + builtin-modules@5.4.0: + resolution: {integrity: sha512-JCWSCdun+4Ovd9BhM/Vtlmwb7oD6Wl4YiPRXXwhAuwlPhW1un/MKgXn7GZoFm53ginnoNzus69V8JWx0K393jg==} engines: {node: '>=18.20'} bumpp@11.1.0: @@ -1896,6 +2202,9 @@ packages: resolution: {integrity: sha512-tixWYgm5ZoOD+3g6UTea91eow5z6AAHaho3g0V9CNSNb45gM8SmflpAc+GRd1InC4AqN/07Unrgp56Y94N9hJQ==} engines: {node: '>=20.19.0'} + cacheable@2.5.0: + resolution: {integrity: sha512-60cyAOytib/OzBw1JNSoSV/boK1AtHryDIjvVBk7XbN4ugfkM3+Sry7fEjNgPMGgOjuaZPAp8ruZ0Cxafwyq9g==} + call-bind-apply-helpers@1.0.2: resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==} engines: {node: '>= 0.4'} @@ -1911,9 +2220,8 @@ packages: caniuse-lite@1.0.30001805: resolution: {integrity: sha512-52noaS3DubycKSXaU30TwPGIp+POyQSUVa5jBEq3vkRkY0kjyb3LQgvhU6WGyCcyXqVLWO0Cw0Q6BSdD0kUfVA==} - case-police@2.2.1: - resolution: {integrity: sha512-EZlL1YgE36hPbgkbSh32RvfITFE1K/z6K6DHlLLUDq/QctI/jON/pTTIS4C4eqyaVn5pvG118HanhEFry420Ow==} - hasBin: true + caniuse-lite@1.0.30001810: + resolution: {integrity: sha512-TITQPUkaz+aVk5GL6NhOdwk1aEaNTSDPsGFWrTuhKGtjTF70jL/Oht2W4c6rXUe5fu7Ie19VIahAXHIIiWWNeg==} ccount@2.0.1: resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} @@ -1955,22 +2263,16 @@ packages: color-name@1.1.4: resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} - colorette@2.0.20: - resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==} - commander@2.20.3: resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} - comment-parser@1.4.5: - resolution: {integrity: sha512-aRDkn3uyIlCFfk5NUA+VdwMmMsh8JGhc4hapfV4yxymHGQ3BVskMQfoXGpCo5IoBuQ9tS5iiVKhCpTcB4pW4qw==} - engines: {node: '>= 12.0.0'} - comment-parser@1.4.7: resolution: {integrity: sha512-0h+uSNtQGW3D98eQt3jJ8L06Fves8hncB4V/PKdw/Qb8Hnk19VaKuTr55UNRYiSoVa7WwrFls+rh3ux9agmkeQ==} engines: {node: '>= 12.0.0'} - concat-map@0.0.1: - resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} + comment-parser@1.4.9: + resolution: {integrity: sha512-+2AvZKjJaNq9GQljm3tr0utwrig5BL+jgJGvz5rDpGKNIp+ojcRXWUwBbh/sGIi1QCprR6PsKFakub+w1v+4hQ==} + engines: {node: '>= 12.0.0'} concat-stream@2.0.0: resolution: {integrity: sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==} @@ -1979,18 +2281,19 @@ packages: confbox@0.1.8: resolution: {integrity: sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==} - confbox@0.2.4: - resolution: {integrity: sha512-ysOGlgTFbN2/Y6Cg3Iye8YKulHw+R2fNXHrgSmXISQdMnomY6eNDprVdW9R5xBguEqI954+S6709UyiO7B+6OQ==} + confbox@0.3.1: + resolution: {integrity: sha512-cKUSoKa8YxFZZSmraVi7onONx3amu77ngK3kGpsYHDH7drPwCRkQE1RYMPlLRrMtnciRj274XNRxcHxnKmDSnA==} - consola@3.4.2: - resolution: {integrity: sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA==} - engines: {node: ^14.18.0 || >=16.10.0} + convert-hrtime@5.0.0: + resolution: {integrity: sha512-lOETlkIeYSJWcbbcvjRKGxVMXJR+8+OQb/mTPbA4ObPMytYIsUbuOE0Jzy60hjARYszq1id0j8KgVhC+WGZVTg==} + engines: {node: '>=12'} convert-source-map@2.0.0: resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} - core-js-compat@3.49.0: - resolution: {integrity: sha512-VQXt1jr9cBz03b331DFDCCP90b3fanciLkgiOoy8SBHy06gNf+vQ1A3WFLqG7I8TipYIKeYK9wxd0tUrvHcOZA==} + core-js-compat@3.50.0: + resolution: {integrity: sha512-XGpFGbMLHwSt74YLTKho7Ib242qi6O8MSX+sRokV4oz7iKXvQWGYZthjIhjRGMxjzVkAubBO512dKGYcefmX3Q==} + engines: {node: '>=6.4.0'} cross-spawn@7.0.6: resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} @@ -2111,6 +2414,9 @@ packages: electron-to-chromium@1.5.389: resolution: {integrity: sha512-cEto7aeOqBfU1D+c5py5pE+ooscKE75JifxLBdFUZsqAxRS6y7kebtxAZvICszSl05gPjYHDTjY+lXpyGvpJbg==} + electron-to-chromium@1.5.437: + resolution: {integrity: sha512-1z60R0Nb+kYPnGUrQ6PvMjTVINDGMfqQZ/mI5FJIHvTotlA6noI+YJWakbjaFM+qhLXg9WnK3RUeYSO5ixSHJA==} + emoji-regex@10.6.0: resolution: {integrity: sha512-toUI84YS5YmxW219erniWD0CIVOo46xGKColeNQRgOzDorgBi1v4D71/OFzgD9GO2UGKIv1C3Sp8DAn0+j5w7A==} @@ -2124,10 +2430,18 @@ packages: resolution: {integrity: sha512-YGRs8knHhKHVShLkFET/rWAU8kmHbOV5LwN938RHI0pljAJ1Gf6SzXsSmRaEzcXTtOOmVqJ5+WtQPL5uigY50Q==} engines: {node: '>=14'} + empathic@2.1.0: + resolution: {integrity: sha512-AnfC1ATldl49/cvZdLPDjBfrRNwbDO05aibiOtzQu3qtlbJtomNLhF30HEtn/7iBz50dlMECqATo3fG0LrdEgw==} + engines: {node: '>=14'} + enhanced-resolve@5.24.2: resolution: {integrity: sha512-rpsZEGT1jFuve6QlpyRp9ckQ+kN61hvF9BzCPyMdaKTm8UJce96KBn3sorXOFXlzjPrs3Vc4T1NsSroZ3PxlFw==} engines: {node: '>=10.13.0'} + enhanced-resolve@5.25.1: + resolution: {integrity: sha512-nGXts5znJzmWPu+mIE9izCOzdg63oJca2mDzGWWTth7sr4aCToKcoyFVBQwN75Ij5Pf6p510EwkTqViTRzDV+w==} + engines: {node: '>=10.13.0'} + entities@4.5.0: resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} engines: {node: '>=0.12'} @@ -2140,6 +2454,10 @@ packages: resolution: {integrity: sha512-TWrgLOFUQTH994YUyl1yT4uyavY5nNB5muff+RtWaqNVCAK408b5ZnnbNAUEWLTCpum9w6arT70i1XdQ4UeOPA==} engines: {node: '>=0.12'} + entities@8.1.0: + resolution: {integrity: sha512-kxL7msIffSuh9aaFAMD7rxAIuTRMAHMeBtgHW2yUdWw732ZNh4MehkF2gdjvtdmikkaIP9bFDDJOPlsvm7avrA==} + engines: {node: '>=20.19.0'} + err-code@2.0.3: resolution: {integrity: sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==} @@ -2207,16 +2525,10 @@ packages: peerDependencies: eslint: '>=6.0.0' - eslint-compat-utils@0.6.5: - resolution: {integrity: sha512-vAUHYzue4YAa2hNACjB8HvUQj5yehAZgiClyFVVom9cP8z5NSFq3PwB/TtJslN2zAMgRX6FCFCjYBbQh71g5RQ==} - engines: {node: '>=12'} + eslint-config-flat-gitignore@2.4.0: + resolution: {integrity: sha512-JhYC+V7qEDiCDsbJcVP8fxNc62fk4+i91YLP/YvmVHlkaQ8Xo99olYN8MO5COdxl7onGlsrfZVONe5NYsZP1UA==} peerDependencies: - eslint: '>=6.0.0' - - eslint-config-flat-gitignore@2.3.0: - resolution: {integrity: sha512-bg4ZLGgoARg1naWfsINUUb/52Ksw/K22K+T16D38Y8v+/sGwwIYrGvH/JBjOin+RQtxxC9tzNNiy4shnGtGyyQ==} - peerDependencies: - eslint: ^9.5.0 || ^10.0.0 + eslint: ^9.5.0 || ^10.0.0 eslint-flat-config-utils@3.2.0: resolution: {integrity: sha512-PHgo1X5uqIorJONLVD9BIaOSdoYFD3z/AeJljdqDPlWVRpeCYkDbK9k0AXoYVqqNJr6FEYIEr5Rm2TSktLQcHw==} @@ -2267,54 +2579,41 @@ packages: remark-lint-file-extension: optional: true - eslint-module-utils@2.14.0: - resolution: {integrity: sha512-W2WCRZ9Dqntd+2u8jJcVMV2PKulc6RdLgUUoh/yQr3uB6lo/ZOeGx11sv60/8S4QFFKNslAlWhr9u0Ef7ZW6Ig==} - engines: {node: '>=4'} - peerDependencies: - '@typescript-eslint/parser': '*' - eslint: '*' - eslint-import-resolver-node: '*' - eslint-import-resolver-typescript: '*' - eslint-import-resolver-webpack: '*' - peerDependenciesMeta: - '@typescript-eslint/parser': - optional: true - eslint: - optional: true - eslint-import-resolver-node: - optional: true - eslint-import-resolver-typescript: - optional: true - eslint-import-resolver-webpack: - optional: true - eslint-plugin-array-func@5.1.1: resolution: {integrity: sha512-TbVGk+yLqXHgtrS4DnYzg2Ycuk5y+lYFy5NgT748neQdJvNIYUucxp2QQjPU7dwbs9xp9fyktgtK069y9rNdig==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: '>=8.51.0' - eslint-plugin-astro@1.7.0: - resolution: {integrity: sha512-89xpAn528UKCdmyysbg0AHHqi6sqcK89wXnJIpu4F0mFBN03zATEBNK7pRtMfl6gwtMOm5ECXs+Wz5qDHhwTFw==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + eslint-plugin-astro@3.2.1: + resolution: {integrity: sha512-IgU7LIkpEg0r6bQGwc3Ck5jHgkUk3rOrEfRhUxDtMx/M0GD3SG/turMtvwj989KRR12Wt1l89faZ5ynjvVL7hg==} + engines: {node: ^22.22.3 || ^24.16.0 || >=26.3.0} peerDependencies: - eslint: '>=8.57.0' - - eslint-plugin-case-police@2.2.1: - resolution: {integrity: sha512-SgqQjqU/SJOIsrWl5pyJJLLCUwJQOut0djk/7wGckEhePsH6P/pKXBjip3l7Hxrvi+1u91SwKjuGJAphrfqWmQ==} - peerDependencies: - eslint: ^9.9.0 || ^10.0.0 + '@typescript-eslint/parser': '>=8.61.0' + eslint: '>=10.0.0' + eslint-plugin-jsx-a11y: '>=6.10.2' + eslint-plugin-jsx-a11y-x: '>=0.2.0' + typescript-eslint: '>=8.61.0' + peerDependenciesMeta: + '@typescript-eslint/parser': + optional: true + eslint-plugin-jsx-a11y: + optional: true + eslint-plugin-jsx-a11y-x: + optional: true + typescript-eslint: + optional: true - eslint-plugin-command@3.5.2: - resolution: {integrity: sha512-PA59QAkQDwvcCMEt5lYLJLI3zDGVKJeC4id/pcRY2XdRYhSGW7iyYT1VC1N3bmpuvu6Qb/9QptiS3GJMjeGTJg==} + eslint-plugin-command@4.0.0: + resolution: {integrity: sha512-mM1UdKu39YF5nUBVbA+PaVvpB3R3Niwjes8CQ8rJTTbgIThgrfQILgDqmtpAAQL1xGaolCoES1SfiwzwPVGkXQ==} + engines: {node: ^22.22.2 || >=24.15.0} peerDependencies: - '@typescript-eslint/rule-tester': '*' '@typescript-eslint/typescript-estree': '*' '@typescript-eslint/utils': '*' eslint: '*' - eslint-plugin-de-morgan@2.1.3: - resolution: {integrity: sha512-vuU/AIPvzsRhCyAfgaWwRVy0QUGvtv2pCn3N6tV4LZRFRNKPuV+Md1mYLvLuM9tORKLe8plzx5DqS9/II/3dew==} + eslint-plugin-de-morgan@2.2.0: + resolution: {integrity: sha512-bHg8e68rQTJ01av4sxhgNWQeoSzPWDjb6MqeKgmgRGaCzq83Ou6/g5S1ZssvFdHHS4BsblkJkagoioUmSEHPMg==} engines: {node: ^20.0.0 || >=22.0.0} peerDependencies: eslint: ^8.45.0 || ^9.0.0 || ^10.0.0 @@ -2325,8 +2624,8 @@ packages: peerDependencies: eslint: '>=8' - eslint-plugin-html@8.1.4: - resolution: {integrity: sha512-Eno3oPEj3s6AhvDJ5zHhnHPDvXp6LNFXuy3w51fNebOKYuTrfjOHUGwP+mOrGFpR6eOJkO1xkB8ivtbfMjbMjg==} + eslint-plugin-html@8.2.0: + resolution: {integrity: sha512-L6F37uij4uq3cZah46BawXeZlZYW9IfFeep7BwkuxBZA++BbihvEpoJPhq0NpCruPRzVkG/tpgvQYM53Re4pVA==} engines: {node: '>=16.0.0'} eslint-plugin-import-lite@0.6.0: @@ -2348,8 +2647,8 @@ packages: eslint-import-resolver-node: optional: true - eslint-plugin-jsonc@3.3.0: - resolution: {integrity: sha512-CsTR8aDcShDg6A71ZppLaWiPoSo2J1Ivjm5/c4Mnb9sxgwWq+WG2PgeoAnj7SwzDPJB75tlHvLrGy6ntooIitg==} + eslint-plugin-jsonc@3.4.2: + resolution: {integrity: sha512-q5xzjCYFQuhFomTbctXzd3STfDJ8XduvaigjQmMEbP2gzSKrc58y3Fv6D775/cIK1/sRUn+4kpljiU2iW8k0zw==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} peerDependencies: eslint: '>=9.38.0' @@ -2360,8 +2659,8 @@ packages: peerDependencies: eslint: '>=8.0.0' - eslint-plugin-n@18.2.2: - resolution: {integrity: sha512-gOO0lIqwEjZ750kv9/SptCWArUoAZXJoBr0vYWTO2dCBxctHUXlBIigiC8xuxxr/NKqgIT6Ehz1xRcilj8a5cA==} + eslint-plugin-n@18.3.0: + resolution: {integrity: sha512-cPVguuDe6DrIPb/qUXHf8P89MaVTUmiYWwpt5gX5AILsvRIiZAxMFXcFR6QHYBksqKJpjfUBlL/RleCJUWcD7w==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} peerDependencies: eslint: '>=8.57.1' @@ -2379,13 +2678,6 @@ packages: peerDependencies: eslint: '>=9' - eslint-plugin-no-explicit-type-exports@0.12.1: - resolution: {integrity: sha512-m1v/f+LYVygCY735KfCovkoXYPbZH5zxEj/tuLOnMwX/qbJEJoRb9evul88Ois5HidvKbiMdMg/tXU55Ki++jg==} - engines: {node: ^8.10.0 || ^10.13.0 || >=11.10.1} - peerDependencies: - '@typescript-eslint/parser': '>= 2.27.0' - eslint: '>= 6.x' - eslint-plugin-no-only-tests@3.4.0: resolution: {integrity: sha512-4S3/9Nb7A2tiMcpzEQE9bQSlpeOz6WJkgryBuou/SA8W2x2c8Zf4j0NvTKBjv6qNhF9T79tmkecm/0CHqV0UGg==} engines: {node: '>=5.0.0'} @@ -2394,14 +2686,14 @@ packages: resolution: {integrity: sha512-tdz/EU/LeQLPNMBIQOSl39by+/NGKdhjfba6qDvMWjcbY0GmiMk0bXrIXRGAwW9fksH30Y+KKlK1Jc32bbql9w==} engines: {node: '>=6'} - eslint-plugin-perfectionist@5.10.0: - resolution: {integrity: sha512-HiqpDrUDbGrMC6iHQbemgDyHJ0366Vyz/qRWmxQcSAkmG25cXr8BdRgx8yAhOKhEfBXn8Rnf/mTCsV4EqUJSxg==} + eslint-plugin-perfectionist@5.12.0: + resolution: {integrity: sha512-1S1Vgb9b3AIxlJoVMbGKB5PwOCtA0PTvDIiGhIoT9CzZa5aZ6BhgGywIj3ONJ5vrH7gTDjgsLgJ1gPUbDI6UUQ==} engines: {node: ^20.0.0 || >=22.0.0} peerDependencies: eslint: ^8.45.0 || ^9.0.0 || ^10.0.0 - eslint-plugin-pnpm@1.6.1: - resolution: {integrity: sha512-pgcaJclu3YxZ/WMsiKMF58bHQasbGVARSMqCJvFaETYxSc7KcR2H74UVWV6exuGv9nNv9c0KKqn4PVHQlzMSEg==} + eslint-plugin-pnpm@1.9.1: + resolution: {integrity: sha512-8++1Egww2cqc9Wylmt7P+xXNMQVCosAZ4m4W4Gc0V5lGea8HFByHTRvUI+ZvvpO8fLXGg2O4MQc90EhuI3mMdQ==} peerDependencies: eslint: ^9.0.0 || ^10.0.0 @@ -2411,30 +2703,30 @@ packages: peerDependencies: eslint: ^7.0.0 || ^8.0.0 || ^9.0.0 || ^10.0.0 - eslint-plugin-regexp@3.1.1: - resolution: {integrity: sha512-MxR5nqoQCtVWmJwia0D2+NlXX1xzdpkslsVOZLEYQ4PQWEaL65PCZXURxaBc3lPnkNFpNxzMIRmYVxdl8giXRA==} + eslint-plugin-regexp@3.3.1: + resolution: {integrity: sha512-58bGUci/AaWAo1ETj6Lsnmy6QXwnSyVONRA805828nnqp7vrTwdaQMc02vtowmYB3A5OB3SLr3r5HgmfxX4dLg==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} peerDependencies: eslint: '>=9.38.0' - eslint-plugin-solid@0.14.5: - resolution: {integrity: sha512-nfuYK09ah5aJG/oEN6P1qziy1zLgW4PDWe75VNPi4CEFYk1x2AEqwFeQfEPR7gNn0F2jOeqKhx2E+5oNCOBYWQ==} - engines: {node: '>=18.0.0'} + eslint-plugin-solid@0.17.1: + resolution: {integrity: sha512-SXxDBB2PAdxe3bvUFZfqEzZvJAS6b29P/opkp0CPo1fEm2zsMpacPVbYihhkxKOjQPRkD2zJdUEedyvxEZ1UnA==} + engines: {node: '>=22.0.0'} peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0 + eslint: ^9.0.0 || ^10.0.0 typescript: '>=4.8.4' - eslint-plugin-toml@1.4.0: - resolution: {integrity: sha512-3ErTnfUjXq/23f72XeyRcE0Y4Sd/ME1lsZeezczqpn2R4tE7+Sgco/NUKDXm0xAMz15tzcRz/9RfJRm6AqRO+A==} + eslint-plugin-toml@1.5.0: + resolution: {integrity: sha512-qBjRywEkKxO2uYOjus//6GVF1r+Hg5QDkRO8RTY6XcaXgWfBU0DhwpFmJa2Ljf0Sz49r7DdZlpKwwHmJ4nmH1Q==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} peerDependencies: eslint: '>=9.38.0' - eslint-plugin-unicorn@65.0.1: - resolution: {integrity: sha512-daCrQrgxOoOz2uMPWB3Y3vvv/5q+ncwICI8IjoebiwtW87CaY4tAN5EEiRXTYVnf7qi1v1BGBdHOSnZLV0rx6A==} - engines: {node: ^20.10.0 || >=21.0.0} + eslint-plugin-unicorn@74.0.0: + resolution: {integrity: sha512-AGnsGi2SxHg1HEAXxn9nSnZfyjvTWkxm8E8hpd/9tD6dLjBUdcD7+D6ZN64HmmCXTSXlrwVyUqe20Uyb2CaurA==} + engines: {node: '>=22'} peerDependencies: - eslint: '>=9.38.0' + eslint: '>=10.4' eslint-plugin-unused-imports@4.4.1: resolution: {integrity: sha512-oZGYUz1X3sRMGUB+0cZyK2VcvRX5lm/vB56PgNNcU+7ficUCKm66oZWKUubXWnOuPjQ8PvmXtCViXBMONPe7tQ==} @@ -2445,8 +2737,8 @@ packages: '@typescript-eslint/eslint-plugin': optional: true - eslint-plugin-vue@10.9.2: - resolution: {integrity: sha512-4g7ZP3pYcuqd7Zp0pzUKcos0W+RkjBz4EGdhJ92FcYk6v03Ti/GK5NwjgsjxHK+98eXDbHeK7VtX1az7/8doZA==} + eslint-plugin-vue@10.11.0: + resolution: {integrity: sha512-fGt38SsaPCZ2FmA3bX/3vOW2qdsPNx0/9x+7Aab6NMX++PhynMtK4LWC4vzXgfQBCqpUAler18H38GA+NBAd0Q==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: '@stylistic/eslint-plugin': ^2.0.0 || ^3.0.0 || ^4.0.0 || ^5.0.0 @@ -2459,8 +2751,8 @@ packages: '@typescript-eslint/parser': optional: true - eslint-plugin-yml@3.6.0: - resolution: {integrity: sha512-8lSqBIiOJO8ms1gktdlNaVGm3zXQJiYeKhQmtIG66XzU58kFDOjQae4sufQEMGHC4bP8VxiaH3tjU5PpDB6euw==} + eslint-plugin-yml@3.8.1: + resolution: {integrity: sha512-E/70psRwxz5EJ8dBtzrFfqSiiInuSytbdtFCjueb/GcKjsWzPBfxfhtQePImMAPjHwMA/VDurO7DJwStDJ4wWg==} engines: {node: ^20.19.0 || ^22.13.0 || >=24.0.0} peerDependencies: eslint: '>=9.38.0' @@ -2469,22 +2761,10 @@ packages: resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} engines: {node: '>=8.0.0'} - eslint-scope@8.4.0: - resolution: {integrity: sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - eslint-scope@9.1.2: resolution: {integrity: sha512-xS90H51cKw0jltxmvmHy2Iai1LIqrfbw57b79w/J7MfvDfkIkFZ+kj6zC3BjtUwh150HsSSdxXZcsuv72miDFQ==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} - eslint-utils@2.1.0: - resolution: {integrity: sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==} - engines: {node: '>=6'} - - eslint-visitor-keys@1.3.0: - resolution: {integrity: sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==} - engines: {node: '>=4'} - eslint-visitor-keys@3.4.3: resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -2497,8 +2777,8 @@ packages: resolution: {integrity: sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} - eslint@10.7.0: - resolution: {integrity: sha512-GVTD7s1vdIl6UYvAfriOPeY1Df8LIZjfofLvHwde+erDHGGuHyuM6xoxRxmHiebhYuD2p1vN4wWh0XzPARSGDQ==} + eslint@10.11.0: + resolution: {integrity: sha512-P7a6UEEqb9G95MYAtqkmsTbVXIYyzIfl6NGOIJk162PaahFxFyeGcrlXYFSiagECg4sEm8IseJdZBKR3rx6MsQ==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} hasBin: true peerDependencies: @@ -2519,6 +2799,14 @@ packages: resolution: {integrity: sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g==} engines: {node: '>=0.10'} + esrap@2.3.9: + resolution: {integrity: sha512-wshgAMVu4xdUeXi07YDnzim4ddkg8rx2yDTW3WyvskWkDdCYa4+jUMLaHXEO1e1+dmrqhrwbGsgRjQqzGJkqJQ==} + peerDependencies: + '@typescript-eslint/types': ^8.2.0 + peerDependenciesMeta: + '@typescript-eslint/types': + optional: true + esrecurse@4.3.0: resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} engines: {node: '>=4.0'} @@ -2552,8 +2840,8 @@ packages: resolution: {integrity: sha512-KfYbmpRm0VbLjEvVa9yGwCi9GI34xvi7A/HXYWQO65CSD2u3MczUJSuwXKFIxlGsgBQizV9q5J9NHj4VG0n+pA==} engines: {node: '>=12.0.0'} - exsolve@1.1.0: - resolution: {integrity: sha512-D+42+T12DdIlJM3uepa55qGiL3sYdLBOxIl2ifQCzCHz4c7eiolaHsi3BIqEr7JxBzxv2pYZQX9kw16ziMcEmw==} + exsolve@1.1.1: + resolution: {integrity: sha512-9U/jZUgjnSGyntRr6y5Muu1MJcwFl6kPu7k8qLF0IMNfLqvw0NZ4nnVDq0RVoZ0RvCyumib4Ez3KYrVfilrw+g==} extend@3.0.2: resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} @@ -2561,10 +2849,6 @@ packages: fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} - fast-glob@3.3.3: - resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==} - engines: {node: '>=8.6.0'} - fast-json-stable-stringify@2.1.0: resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} @@ -2574,9 +2858,6 @@ packages: fast-uri@3.1.3: resolution: {integrity: sha512-i70LwGWUduXqzicKXWshooq+sWL1K3WUU5rKZNG/0i3a1OSoX3HqhH5WbWwTmqWfor4urUakGPiRQcleRZTwOg==} - fastq@1.20.1: - resolution: {integrity: sha512-GGToxJ/w1x32s/D2EKND7kTil4n8OVk/9mycTc4VDza13lOvpUZTGX3mFSCtV9ksdGBVzvsyAVLM6mHFThxXxw==} - fdir@6.5.0: resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==} engines: {node: '>=12.0.0'} @@ -2589,13 +2870,8 @@ packages: fflate@0.8.3: resolution: {integrity: sha512-tbZNuJrLwGUp3zshBtdy4W+ORxZuIh8a5ilyIEQDC5rY1f3U20JMry0Ll3WBzU58EZKsEuJFXhb5gwv8CsPvgA==} - file-entry-cache@8.0.0: - resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==} - engines: {node: '>=16.0.0'} - - fill-range@7.1.1: - resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} - engines: {node: '>=8'} + file-entry-cache@11.1.5: + resolution: {integrity: sha512-+PFTHITI08JIGhnNpGNI8T8inUpgZfk3GNEqfT9R2zZV2iFXg3CvqzSl/uEhs7TSGujYRELEANyDvS8Fj7+S7Q==} find-up-simple@1.0.1: resolution: {integrity: sha512-afd4O7zpqHeRyg4PfDQsXmlDe2PfdHtJt6Akt8jOWaApLOZk5JXs6VMR29lz03pRe9mpykrRCYIYxaJYcfpncQ==} @@ -2605,12 +2881,11 @@ packages: resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} engines: {node: '>=10'} - flat-cache@4.0.1: - resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==} - engines: {node: '>=16'} + flat-cache@6.1.23: + resolution: {integrity: sha512-f++BY9pTk+983xK1FLzlLpmM0i0z+jHmx3QESGkURMXujQZz1k5wzwX6hjnQ8goaD0B+sYnDK1yZ6MTyZfUaqA==} - flatted@3.4.2: - resolution: {integrity: sha512-PjDse7RzhcPkIJwy5t7KPWQSZ9cAbzQXcafsetQoD7sOJRQlGikNbx7yZp2OotDnJyrDcbyRq3Ttb18iYOqkxA==} + flatted@3.4.4: + resolution: {integrity: sha512-5+ybhBZANEJxaH3X5evAFatUxLfEHSr7n6kYJ+1Qd0mUqr4eu9gIf6GDbWHf8RJijHrjjO8G+la14SlL2SeS1Q==} for-each@0.3.5: resolution: {integrity: sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==} @@ -2620,9 +2895,6 @@ packages: resolution: {integrity: sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==} engines: {node: '>=14'} - fs.realpath@1.0.0: - resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} - fsevents@2.3.3: resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} @@ -2631,6 +2903,10 @@ packages: function-bind@1.1.2: resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} + function-timeout@1.0.2: + resolution: {integrity: sha512-939eZS4gJ3htTHAldmyyuzlrD58P03fHG49v2JfFXbV6OhvZKRC9j2yAtdHw/zrp2zXHuv05zMIy40F0ge7spA==} + engines: {node: '>=18'} + function.prototype.name@1.2.0: resolution: {integrity: sha512-jObKIik1P2QjPHP5nz5BaOtUlfgS0fWo8IUByNXkM+o+02sJOi94em77GwJKQSJ3gfPHdgzLNrHc1uokV4P/ew==} engines: {node: '>= 0.4'} @@ -2658,17 +2934,13 @@ packages: resolution: {integrity: sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==} engines: {node: '>= 0.4'} - get-tsconfig@4.14.0: - resolution: {integrity: sha512-yTb+8DXzDREzgvYmh6s9vHsSVCHeC0G3PI5bEXNBHtmshPnO+S5O7qgLEOn0I5QvMy6kpZN8K1NKGyilLb93wA==} + get-tsconfig@4.14.3: + resolution: {integrity: sha512-++QEw4DIY7WGoukz+/+A/8dGYPT9l9yIadnmSgZ8Rjr3YVSVDipQSO9CdnJo9ePqFqUUqh+wk9uIaoiAwsiPkA==} get-tsconfig@5.0.0-beta.5: resolution: {integrity: sha512-/6gFNr0N04nob252sTQxyFLi3eKFRqIg1I87YcqAMT1i6SQrSF6KujUEQrtrjMV0H/eejTCltLdDSTEMzHbnsQ==} engines: {node: '>=20.20.0'} - glob-parent@5.1.2: - resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} - engines: {node: '>= 6'} - glob-parent@6.0.2: resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} engines: {node: '>=10.13.0'} @@ -2678,20 +2950,12 @@ packages: deprecated: Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me hasBin: true - glob@7.2.3: - resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} - deprecated: Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me - globals@15.15.0: resolution: {integrity: sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg==} engines: {node: '>=18'} - globals@16.5.0: - resolution: {integrity: sha512-c/c15i26VrJ4IRt5Z89DnIzCGDn9EcebibhAOjw5ibqEHsE1wLUgkPn9RDmNcUKyU87GeaL633nyJ+pplFR2ZQ==} - engines: {node: '>=18'} - - globals@17.7.0: - resolution: {integrity: sha512-Czmyns5dUsq4seFBR/Kdydhmo8y9kC79hiSkPn0YcGtNnYWnrgt0vjrSjx9tspoDGWm2CMarffRuLjM4xUz8xg==} + globals@17.12.0: + resolution: {integrity: sha512-cezEd/DTyyht9cvSSURyygXPfy04GtWO/5e6ZPvH7fCtjKz9PYOmuawphw1Ctd1f6C+5JypXfGD7ahNMXvevBA==} engines: {node: '>=18'} globalthis@1.0.4: @@ -2731,6 +2995,10 @@ packages: resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==} engines: {node: '>= 0.4'} + hashery@1.5.1: + resolution: {integrity: sha512-iZyKG96/JwPz1N55vj2Ie2vXbhu440zfUfJvSwEqEbeLluk7NnapfGqa7LH0mOsnDxTF85Mx8/dyR6HfqcbmbQ==} + engines: {node: '>=20'} + hasown@2.0.4: resolution: {integrity: sha512-T2UbfbBEF32wiepXIsMlTW9+dDYC6wMh/t/vYA4tuOMKqWz/n3vr1NFSxQiyP+zk2mXsoMA/i/7qV6LKut1t1A==} engines: {node: '>= 0.4'} @@ -2738,6 +3006,12 @@ packages: hookable@6.1.1: resolution: {integrity: sha512-U9LYDy1CwhMCnprUfeAZWZGByVbhd54hwepegYTK7Pi5NvqEj63ifz5z+xukznehT7i6NIZRu89Ay1AZmRsLEQ==} + hookified@1.15.1: + resolution: {integrity: sha512-MvG/clsADq1GPM2KGo2nyfaWVyn9naPiXrqIe4jYjXNZQt238kWyOGrsyc/DmRAQ+Re6yeo6yX/yoNCG5KAEVg==} + + hookified@2.2.0: + resolution: {integrity: sha512-p/LgFzRN5FeoD3DLS6bkUapeye6E4SI6yJs6KetENd18S+FBthqYq2amJUWpt5z0EQwwHemidjY5OqJGEKm5uA==} + hosted-git-info@7.0.2: resolution: {integrity: sha512-puUZAUKT5m8Zzvs72XWy3HtvVbTWljRE66cP60bxJzAqf2DgICo7lYTY2IHUmLnNpjYvw5bvmoHvPc0QO2a62w==} engines: {node: ^16.14.0 || >=18.0.0} @@ -2755,6 +3029,10 @@ packages: htmlparser2@10.1.0: resolution: {integrity: sha512-VTZkM9GWRAtEpveh7MSF6SjjrpNVNNVJfFup7xTY3UpFtm67foy9HDVXneLtFVt4pMz5kZtgNcvCniNFb1hlEQ==} + identifier-regex@1.1.0: + resolution: {integrity: sha512-SLX4H/vtcYlYnL7XqnuJKHU7Z8517TgsW9nmQiGOgMCjQ8V/deLYu6bEmbGoXe7WMMhc9+EUGyFFneHja8KabA==} + engines: {node: '>=18'} + ignore@5.3.2: resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} engines: {node: '>= 4'} @@ -2763,6 +3041,10 @@ packages: resolution: {integrity: sha512-InwqeHHN2XpumIkMvpl/DCJVrAHgCsG5+cn1XlnLWGwtZBm8QJfSusItfrwx81CTp5agNZqpKU2J/ccC5nGT4A==} engines: {node: '>= 4'} + ignore@7.0.10: + resolution: {integrity: sha512-HpbUakT7xp5miBUywCHf36ZEuAJNklBJDDsGpUIjMzOSmM8ELSfA9Sa/QDPeNeqeoN31u+UTCkL4klCOVvRm4Q==} + engines: {node: '>= 4'} + ignore@7.0.6: resolution: {integrity: sha512-BAg6QkE8W+TuQLrrw0Ugr7HegXduRuuj8/ti2kSOc+jz1dmx8/WNcjr6XGnq5YpDWxFwwaavqD0+jIUOKelTsw==} engines: {node: '>= 4'} @@ -2786,10 +3068,6 @@ packages: resolution: {integrity: sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==} engines: {node: '>=12'} - inflight@1.0.6: - resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} - deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. - inherits@2.0.4: resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} @@ -2889,6 +3167,10 @@ packages: resolution: {integrity: sha512-S+OpgB5i7wzIue/YSE5hg0e5ZYfG3hhpNh9KGl6ayJ38p7ED6wxQLd1TV91xHpcTvw90KMJ9EwN3F/iNflHBVg==} engines: {node: '>=8'} + is-identifier@1.1.0: + resolution: {integrity: sha512-NhOds0mDx9lJu+1lBRO0xbwFo5nobA7GCk/0e5xjr6+6XugX985+0OyGX35BNrTkPAsdLcIKg02HUQJOK8D8kw==} + engines: {node: '>=18'} + is-map@2.0.3: resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==} engines: {node: '>= 0.4'} @@ -2901,14 +3183,13 @@ packages: resolution: {integrity: sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==} engines: {node: '>= 0.4'} - is-number@7.0.0: - resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} - engines: {node: '>=0.12.0'} - is-plain-obj@4.1.0: resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==} engines: {node: '>=12'} + is-reference@3.0.3: + resolution: {integrity: sha512-ixkJoqQvAP88E6wLydLGGqCJsrFUnqoH6HnaczB8XmDH1oaWU+xxdptvikTgaEhtZ53Ky6YXiBuUI2WXLMCwjw==} + is-regex@1.2.1: resolution: {integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==} engines: {node: '>= 0.4'} @@ -2977,22 +3258,19 @@ packages: js-tokens@4.0.0: resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} - jsdoc-type-pratt-parser@7.1.1: - resolution: {integrity: sha512-/2uqY7x6bsrpi3i9LVU6J89352C0rpMk0as8trXxCtvd4kPk1ke/Eyif6wqfSLvoNJqcDG9Vk4UsXgygzCt2xA==} - engines: {node: '>=20.0.0'} + jsdoc-type-pratt-parser@9.0.1: + resolution: {integrity: sha512-1LJ/negRKJxH0+ulOsJYEpUgzIs1DAOz9QctuS4In2LW/Ro3l8C4ej5al+5FU2hBGEOAY3R3SCnP6x8226JMIw==} + engines: {node: ^22.22.2 || >=24.15.0} - jsdoc-type-pratt-parser@7.2.0: - resolution: {integrity: sha512-dh140MMgjyg3JhJZY/+iEzW+NO5xR2gpbDFKHqotCmexElVntw7GjWjt511+C/Ef02RU5TKYrJo/Xlzk+OLaTw==} - engines: {node: '>=20.0.0'} + jsdoc-type-pratt-parser@9.2.2: + resolution: {integrity: sha512-eFY7Rlscvv/BpY6UsVsjKwMhu1tJO/F4U/vC9g3yeRy/JqszuO1UP6Vdq+85G+3FP6fEw/sWR8a5ftPFY86csw==} + engines: {node: ^22.22.2 || >=24.15.0} jsesc@3.1.0: resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==} engines: {node: '>=6'} hasBin: true - json-buffer@3.0.1: - resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} - json-parse-even-better-errors@3.0.2: resolution: {integrity: sha512-fi0NG4bPjCHunUJffmLd0gxssIgkNmArMvis4iNah6Owg1MCJjWhEcDLmsK6iGkJq3tHwbDkTlce70/tmXN4cQ==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -3011,8 +3289,8 @@ packages: engines: {node: '>=6'} hasBin: true - jsonc-eslint-parser@3.1.0: - resolution: {integrity: sha512-75EA7EWZExL/j+MDKQrRbdzcRI2HOkRlmUw8fZJc1ioqFEOvBsq7Rt+A6yCxOt9w/TYNpkt52gC6nm/g5tFIng==} + jsonc-eslint-parser@3.3.0: + resolution: {integrity: sha512-hYTGkHGNRZnXOFZ1urhINADoqDrGfpy53cjw+dxk84QE0pUDujQzeUeamNs6Mz44/TKD49z2x6/GVSu4ZrtA+Q==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} jsonc-parser@3.3.1: @@ -3021,8 +3299,8 @@ packages: kebab-case@1.0.2: resolution: {integrity: sha512-7n6wXq4gNgBELfDCpzKc+mRrZFs7D+wgfF5WRFLNAr4DA/qtr9Js8uOAVAfHhuLMfAcQ0pRKqbpjx+TcJVdE1Q==} - keyv@4.5.4: - resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} + keyv@5.6.0: + resolution: {integrity: sha512-CYDD3SOtsHtyXeEORYRx2qBtpDJFjRTGXUtmNEMGyzYOKj1TE3tycdlho7kA1Ufx9OYWZzg52QFBGALTirzDSw==} known-css-properties@0.30.0: resolution: {integrity: sha512-VSWXYUnsPu9+WYKkfmJyLKtIvaRJi1kXUqVmBACORXZQxT5oZDsoZ2vQP+bQFDnWtpI/4eq3MLoRMjI2fnLzTQ==} @@ -3124,12 +3402,6 @@ packages: resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} engines: {node: '>=10'} - lodash.merge@4.6.2: - resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} - - lodash@4.18.1: - resolution: {integrity: sha512-dMInicTPVE8d1e5otfwmmjlxkZoUpiVLwyeTdUsi/Caj/gfzzblBcCE5sRHV/AsjuCmxWrte2TNGSYuCeCq+0Q==} - longest-streak@3.1.0: resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==} @@ -3146,6 +3418,10 @@ packages: magic-string@0.30.21: resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==} + make-asynchronous@1.1.0: + resolution: {integrity: sha512-ayF7iT+44LXdxJLTrTd3TLQpFDDvPCBxXxbv+pMUSuHA5Q8zyAfwkRP6aHHwNVFBUFWtxAHqwNJxF8vMZLAbVg==} + engines: {node: '>=18'} + math-intrinsics@1.1.0: resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} engines: {node: '>= 0.4'} @@ -3177,6 +3453,9 @@ packages: mdn-data@2.27.1: resolution: {integrity: sha512-9Yubnt3e8A0OKwxYSXyhLymGW4sCufcLG6VdiDdUGVkPhpqLxlvP5vl1983gQjJl3tqbrM731mjaZaP68AgosQ==} + mdn-data@2.35.0: + resolution: {integrity: sha512-k+1+dEIm2z/BEfdvYzT/fIyAGeDBo/1AJNJI4ilFXJRYoxP/3Ds+GP8shAOIq8jYXY9N5nGB3Ag104NsagmLAA==} + merge-anything@5.1.7: resolution: {integrity: sha512-eRtbOb1N5iyH0tkQDAoQ4Ipsp/5qSR79Dzrz8hEPxRX10RWWR/iQXdoKmBSRCThY1Fh5EhISDtpSc93fpxUniQ==} engines: {node: '>=12.13'} @@ -3188,10 +3467,6 @@ packages: merge-stream@2.0.0: resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} - merge2@1.4.1: - resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} - engines: {node: '>= 8'} - micromark-core-commonmark@2.0.3: resolution: {integrity: sha512-RDBrHEMSxVFLg6xvnXmb1Ayr2WzLAWjeSATAoxwKYJV94TeNavgoIdA0a9ytzDSVzBy2YKFK+emCPOEibLeCrg==} @@ -3276,10 +3551,6 @@ packages: micromark@4.0.2: resolution: {integrity: sha512-zpe98Q6kvavpCr1NPVSCMebCKfD7CA2NqZ+rykeNhONIJBpc1tFKt9hucLGwha3jNTNI8lHpctWJWoimVF4PfA==} - micromatch@4.0.8: - resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} - engines: {node: '>=8.6'} - mime-db@1.54.0: resolution: {integrity: sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==} engines: {node: '>= 0.6'} @@ -3292,8 +3563,9 @@ packages: resolution: {integrity: sha512-MULkVLfKGYDFYejP07QOurDLLQpcjk7Fw+7jXS2R2czRQzR56yHRveU5NDJEOviH+hETZKSkIk5c+T23GjFUMg==} engines: {node: 18 || 20 || >=22} - minimatch@3.1.5: - resolution: {integrity: sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==} + minimatch@10.2.6: + resolution: {integrity: sha512-vpLQEs+VLCr1nU0BXS07maYoFwlDAH0gngQuuttxIwutDFEMHq2blX+8vpgxDdK3J1PwjCJiep77OitTZ4Ll1A==} + engines: {node: 18 || 20 || >=22} minimatch@9.0.9: resolution: {integrity: sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg==} @@ -3361,6 +3633,11 @@ packages: engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true + nanoid@3.3.19: + resolution: {integrity: sha512-Y2tUNy4ouw6tq5oDSKeQYGOyhkUBhNOcGV/02KC+6kd9eDGqdZd++mjMiIDilrBYvjEnCYvVtsuHCuP+okSfug==} + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} + hasBin: true + napi-postinstall@0.3.4: resolution: {integrity: sha512-PHI5f1O0EP5xJ9gQmFGMS6IZcrVvTjpXjz7Na41gTE7eE2hK11lg04CECCYEEjdc17EV4DO+fkGEtt7TpTaTiQ==} engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} @@ -3387,6 +3664,10 @@ packages: resolution: {integrity: sha512-wRNIrw4DmVLKQlbgOMdkMx27Wrpzes2hh5Jtbi2bjPd+4wJstWIqP5A+lscnqbm0xxmT5Bpg8Lec5ItEBwx6BQ==} engines: {node: '>=18'} + node-releases@2.0.57: + resolution: {integrity: sha512-kQK9LGGFiHtrWiNhZtA7Qbw17AQz+dmsEKODRIVTXA9+e5MS/2gZEBhYJt13GrAz5/IOZKddH/0Z3TP/Zgo+yw==} + engines: {node: '>=18'} + nopt@7.2.1: resolution: {integrity: sha512-taM24ViiimT/XntxbPyJQzCG+p4EKOpgD3mxFwW38mGjVUrfERQOeY4EDHjdnptttfHuHQXFx+lTP08Q+mLa/w==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -3435,9 +3716,6 @@ packages: resolution: {integrity: sha512-9miFgM2OFba7hB+pRgvtV84pYTBaoTHohvmIgiRt6dRIzbwEOIaNaP+dIlGs2fNFoB0SeISs0Jz5WFVRid6Xyg==} engines: {node: '>=12.20.0'} - once@1.4.0: - resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} - optionator@0.9.4: resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} engines: {node: '>= 0.8.0'} @@ -3457,6 +3735,10 @@ packages: resolution: {integrity: sha512-Sm7POE1WzSOwQnBXnC/iSpjCluH9Nbf+1zNfW4KQzxCm3uwkdebzgpIwdeufUnZK0vi/7JePkvt62LX8DZGJVw==} engines: {node: ^20.19.0 || >=22.12.0} + p-event@6.0.1: + resolution: {integrity: sha512-Q6Bekk5wpzW5qIyUP4gdMEujObYstZl6DMMOSenwBvV0BlE5LkDwkjs5yHbZmdCEq2o4RJx4tE1vwxFVf2FG1w==} + engines: {node: '>=16.17'} + p-limit@3.1.0: resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} engines: {node: '>=10'} @@ -3465,6 +3747,10 @@ packages: resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} engines: {node: '>=10'} + p-timeout@6.1.4: + resolution: {integrity: sha512-MyIV3ZA/PmyBN/ud8vV9XzwTrNtR4jFrObymZYnZqMmW0zA8Z17vnT0rBgFE/TlohB+YCHqXMgZzb3Csp49vqg==} + engines: {node: '>=14.16'} + package-json-from-dist@1.0.1: resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} @@ -3485,10 +3771,6 @@ packages: resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} engines: {node: '>=8'} - path-is-absolute@1.0.1: - resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} - engines: {node: '>=0.10.0'} - path-key@3.1.1: resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} engines: {node: '>=8'} @@ -3506,39 +3788,43 @@ packages: picocolors@1.1.1: resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} - picomatch@2.3.2: - resolution: {integrity: sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA==} - engines: {node: '>=8.6'} - picomatch@4.0.5: resolution: {integrity: sha512-RvwwcruNjI1ncT5xRakeyS9Lf8lcItv34KD+aif+VH9kduAyfYBipGh12274xtenIPZ119/R9BdTBa8gAwSh0A==} engines: {node: '>=12'} + picomatch@4.0.7: + resolution: {integrity: sha512-qcJu88Q2IWqJsDD529JKMdwGm/dvInW4HvQnRwiH9JtihJvzGOscDtHE3x1pBKeUOTysQ8kVmLnJ2kJu7yhcGA==} + engines: {node: '>=12'} + pkg-types@1.3.1: resolution: {integrity: sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==} - pkg-types@2.3.1: - resolution: {integrity: sha512-y+ichcgc2LrADuhLNAx8DFjVfgz91pRxfZdI3UDhxHvcVEZsenLO+7XaU5vOp0u/7V/wZ+plyuQxtrDlZJ+yeg==} + pkg-types@2.3.3: + resolution: {integrity: sha512-j/lCFdcppV0JxWpCEITdbDltBxPP6cHT+yNJ6Go2OgoSA9518X847X9z0p6LtA4Nc16+eQzCZjRrWanTGvHJ5w==} pluralize@8.0.0: resolution: {integrity: sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==} engines: {node: '>=4'} - pnpm-workspace-yaml@1.6.1: - resolution: {integrity: sha512-yTeZntGWi8m9WNuhoVsP0DpFc4sC1U0+rr/qR6Zi9n2g3sxXY+JfccjXjjruNz96tM8I09yaJUA86doRnNLkbg==} + pnpm-workspace-yaml@1.9.1: + resolution: {integrity: sha512-Xj/T2X6DNAWbtk/9UQ0/TJRswltiHZevmcMjqoL7WrpJi67lu3qaslU4+I+zJ8wtwqmuvAE0KkB8rbv2ZdogBg==} possible-typed-array-names@1.1.0: resolution: {integrity: sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==} engines: {node: '>= 0.4'} - postcss-selector-parser@7.1.4: - resolution: {integrity: sha512-HeP7D2wyhkR+XaK6v4W8oRF62Dsz4flyuczALJp61GckGm42u1saSSJ/0auvcBqxs3jMRFEcPK34At/0JBKdOg==} + postcss-selector-parser@7.1.6: + resolution: {integrity: sha512-7qASPzhKF2l2KLboRZux8CCTRMdGiV08vWmyKzPz22qZ7ZjQBOeY7rNzNoCLSUiftJ7HUq0GERHmxw/t0dCdMw==} engines: {node: '>=4'} postcss@8.5.19: resolution: {integrity: sha512-Mz8SaolMd8nB+G13WkORcxQKHZ/NE4xXevtkJHVuG+guo9/wYKlIMTKAqGdEmYOXR2ijPjTYNHssizdaVSUNdQ==} engines: {node: ^10 || ^12 || >=14} + postcss@8.5.28: + resolution: {integrity: sha512-RRuzqDtt5Y9h3quz5hWhK+TPnsmVs6WwSU6LkJMeY4HstUEDuYTG8UJSdawMRzmzAtV+KEoG8N3Qg2qLy5vM/A==} + engines: {node: ^10 || ^12 || >=14} + prelude-ls@1.2.1: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} engines: {node: '>= 0.8.0'} @@ -3559,8 +3845,8 @@ packages: peerDependencies: prettier: ^3.0.3 - prettier@3.9.5: - resolution: {integrity: sha512-/FVl766LpUfB5vXgCYOYa0MeV/441Ia99AeICQIQFTY/Nw0roZwULcXpku5i1/m5kt/baz+s4Zogspd839HSMg==} + prettier@3.9.9: + resolution: {integrity: sha512-Z/CJHIkdujO/OtN7nXUii0Rf3VT5SRuhjBA82Xvu2XhBUgX3nhP67T0LHceBdQLex7OOFGTox+Q5Yg8Jk2Qivg==} engines: {node: '>=14'} hasBin: true @@ -3589,14 +3875,19 @@ packages: resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} engines: {node: '>=6'} + qified@0.10.1: + resolution: {integrity: sha512-+Owyggi9IxT1ePKGafcI87ubSmxol6smwJ+RAHDQlx9+9cPwFWDiKFFCPuWhr9ignlGpZ9vDQLw67N4dcTVFEA==} + engines: {node: '>=20'} + quansync@0.2.11: resolution: {integrity: sha512-AifT7QEbW9Nri4tAwR5M/uzpBuqfZf+zwaEM/QkzEjj7NBuFD2rBuy0K3dE+8wltbezDV7JMA0WfnCPYRSYbXA==} quansync@1.0.0: resolution: {integrity: sha512-5xZacEEufv3HSTPQuchrvV6soaiACMFnq1H8wkVioctoH3TRha9Sz66lOxRwPK/qZj7HPiSveih9yAyh98gvqA==} - queue-microtask@1.2.3: - resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} + quote-js-string@0.1.0: + resolution: {integrity: sha512-Y3NoRtprEEZQD8RfxMCfS0ZTqc4e+i18OrXEXAvpM6TfC/3y+0L5rNbZiSnbBBEkDfFzbpd8o+cE8q3/anjMGA==} + engines: {node: '>=22'} read-package-json-fast@3.0.2: resolution: {integrity: sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw==} @@ -3626,8 +3917,8 @@ packages: resolution: {integrity: sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==} engines: {node: '>= 0.4'} - regjsparser@0.13.2: - resolution: {integrity: sha512-NgRBy2Nx/bE+9F27nVHnqcN5HjyLmecqsqx2PJHu3/IEtADD4WuxuXIVExD5PoSDFVrl78dOonfcOe5O+5nbzQ==} + regjsparser@0.13.3: + resolution: {integrity: sha512-ycwFAS14Jw4mppvmK4GR/J6u3WpWpjkEApehuHtLc/8VpPNpDMbQ4WjqwplXifGeyKOzHSFLmSPqzksDQE2Sfg==} hasBin: true remark-mdx@3.1.1: @@ -3643,6 +3934,10 @@ packages: resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} engines: {node: '>=0.10.0'} + reserved-identifiers@1.2.0: + resolution: {integrity: sha512-yE7KUfFvaBFzGPs5H3Ops1RevfUEsDc5Iz65rOwWg4lE8HJSYtle77uul3+573457oHvBKuHYDl/xqUkKpEEdw==} + engines: {node: '>=18'} + resolve-pkg-maps@1.0.0: resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} @@ -3655,10 +3950,6 @@ packages: resolution: {integrity: sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==} engines: {node: '>= 4'} - reusify@1.1.0: - resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==} - engines: {iojs: '>=1.0.0', node: '>=0.10.0'} - rolldown-plugin-dts@0.27.9: resolution: {integrity: sha512-d54yt65+ZF/Mk8H6P36As02PAMdaiWRSzVNtJRc1h7nCgUFjuRI4cN2DyTfJyfVpPH6pgy7/2D7YQH1/Rh75Yg==} engines: {node: ^22.18.0 || >=24.11.0} @@ -3688,9 +3979,6 @@ packages: engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true - run-parallel@1.2.0: - resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} - s.color@0.0.15: resolution: {integrity: sha512-AUNrbEUHeKY8XsYr/DYpl+qk5+aM+DChopnWOPEzn8YKzOhv4l2zH6LzZms3tOZP3wwdOyc0RmTciyi46HLIuA==} @@ -3733,14 +4021,14 @@ packages: engines: {node: '>=10'} hasBin: true - seroval-plugins@1.5.5: - resolution: {integrity: sha512-+BDhqYM6CEn3x09v44dpa9p6974FuUB2dxk+Ctn04k0cO1Zt6QODTXfmEZK0eBaTe/fJBvP4NMGuNJ+R8T+QMg==} + seroval-plugins@1.6.7: + resolution: {integrity: sha512-4Nk35ttD3DTDJW4hgw5StsVAPeU6qnDFnULAouw6tQ7oLTV/ICXrWpsXo2EE52eSP2joUMazbVf52mFEcADqRw==} engines: {node: '>=10'} peerDependencies: seroval: ^1.0 - seroval@1.5.5: - resolution: {integrity: sha512-bSjOuPcwPKLSJNhr9+bZxA20nQxVle5J5MNsYRVE6cIg7KpRLXGupymePavu0jrxlPiPsr4xGZSB8yUY2sH2sw==} + seroval@1.6.7: + resolution: {integrity: sha512-AeDcLh0yO2SFm9W71essgnSzLV9DI8ZH0x0knXn2DMnUZj728mpLbxjlbB6IqKCmqh8JA3cEqRyGoNkt584JcQ==} engines: {node: '>=10'} set-function-length@1.2.2: @@ -3786,18 +4074,9 @@ packages: resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} engines: {node: '>=14'} - solid-js@1.9.14: - resolution: {integrity: sha512-sAEXC0Kk0S1EDg+8ysEWJDbYhA3RRoEjwuySUGlKIemeo0I5YZfOyumNjNs9Sv3y2nmhD+0rW66ag2HsMuQiGQ==} - - solid-refresh@0.6.3: - resolution: {integrity: sha512-F3aPsX6hVw9ttm5LYlth8Q15x6MlI/J3Dn+o3EQyRTtTxidepSTwAYdozt01/YA+7ObcciagGEyXIopGZzQtbA==} - peerDependencies: - solid-js: ^1.3 - - solid-refresh@0.7.8: - resolution: {integrity: sha512-iG442T3HXJp5jEebCy8okETrWnmX7CnxNOKrJQVeufh6WXSn+xtLXaptUXXMHTWcRqTJOJwQ8UwzxrRtVFSIzA==} - peerDependencies: - solid-js: ^1.3 + solid-js@2.0.0-rc.9: + resolution: {integrity: sha512-J/oHWnWqe7S0FeIEdIRKDvyyo+HY/TYKr2PrIB8VlePMWuErDg78QHqdsAV7f6HKa9qhWR/23eqzR/ZRV9ep0g==} + engines: {node: '>=22.12.0'} source-map-js@1.2.1: resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} @@ -3819,8 +4098,8 @@ packages: spdx-expression-parse@3.0.1: resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==} - spdx-license-ids@3.0.23: - resolution: {integrity: sha512-CWLcCCH7VLu13TgOH+r8p1O/Znwhqv/dbb6lqWy67G+pT1kHmeD/+V36AVb/vq8QMIQwVShJ6Ssl5FPh0fuSdw==} + spdx-license-ids@3.0.24: + resolution: {integrity: sha512-cLS9TtWkIQFyLkJ3/5aFQAOHOSKTlOs/7WDut/XPSdjom1fJhUdkepeJAKXa9Y05+FabHd0sti+Et559vDtkpQ==} stable-hash-x@0.2.0: resolution: {integrity: sha512-o3yWv49B/o4QZk5ZcsALc6t0+eCelPc44zZsLtCQnZPDwFpDYSWcDnrv2TtMmMbQ7uKo3J0HTURCqckw23czNQ==} @@ -3888,6 +4167,10 @@ packages: suf-log@2.5.3: resolution: {integrity: sha512-KvC8OPjzdNOe+xQ4XWJV2whQA0aM1kGVczMQ8+dStAO6KfEB140JEVQ9dE76ONZ0/Ylf67ni4tILPJB41U0eow==} + super-regex@1.1.0: + resolution: {integrity: sha512-WHkws2ZflZe41zj6AolvvmaTrWds/VuyeYr9iPVv/oQeaIoVxMKaushfFWpOGDT+GuBrM/sVqF8KUCYQlSSTdQ==} + engines: {node: '>=18'} + supports-color@8.1.1: resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==} engines: {node: '>=10'} @@ -3913,6 +4196,10 @@ packages: engines: {node: '>=10'} hasBin: true + time-span@5.1.0: + resolution: {integrity: sha512-75voc/9G4rDIJleOo4jPvN4/YC4GRZrY8yy1uU4lwrB3XEQbWve8zXoO5No4eFrGcTAMYyoY67p8jRQdtA1HbA==} + engines: {node: '>=12'} + tinybench@2.9.0: resolution: {integrity: sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==} @@ -3928,10 +4215,6 @@ packages: resolution: {integrity: sha512-Bf+ILmBgretUrdJxzXM0SgXLZ3XfiaUuOj/IKQHuTXip+05Xn+uyEYdVg0kYDipTBcLrCVyUzAPz7QmArb0mmw==} engines: {node: '>=14.0.0'} - to-regex-range@5.0.1: - resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} - engines: {node: '>=8.0'} - toml-eslint-parser@1.0.3: resolution: {integrity: sha512-A5F0cM6+mDleacLIEUkmfpkBbnHJFV1d2rprHU2MXNk7mlxHq2zGojA+SRvQD1RoMo9gqjZPWEaKG4v1BQ48lw==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} @@ -3988,18 +4271,9 @@ packages: unrun: optional: true - tslib@1.14.1: - resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} - tslib@2.8.1: resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} - tsutils@3.21.0: - resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} - engines: {node: '>= 6'} - peerDependencies: - typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' - type-check@0.4.0: resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} engines: {node: '>= 0.8.0'} @@ -4008,6 +4282,10 @@ packages: resolution: {integrity: sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==} engines: {node: '>=14.16'} + type-fest@4.41.0: + resolution: {integrity: sha512-TeTSQ6H5YHvpqVwBRcnLDCBnDOHWYu7IvGbHT6N8AOymcr9PJGjc1GTtiWZTYg0NCgYwvnYWEkVChQAr9bjfwA==} + engines: {node: '>=16'} + typed-array-buffer@1.0.3: resolution: {integrity: sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==} engines: {node: '>= 0.4'} @@ -4027,8 +4305,8 @@ packages: typedarray@0.0.6: resolution: {integrity: sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==} - typescript-eslint@8.64.0: - resolution: {integrity: sha512-0qg+pDNMnqYzqH9AnNK+39tejHvsShUOUUoRUgtnTGE7QuMZhiFDnozq8nHJVq+Wae6NMLKNWLg5WmkcC/ndyQ==} + typescript-eslint@8.70.1: + resolution: {integrity: sha512-AcWG7KDjZ2THNXsgwttMaGmzVi0VFRlFYfqFHYQRbDpF3owuYbuiL8c7UUrd2k8s3PoSfIQrWfrGXfcElrWLYA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 @@ -4063,6 +4341,9 @@ packages: undici-types@8.3.0: resolution: {integrity: sha512-j375ScV60dom+YkPFIfTLcOiPxkN/buHz5GobjLhixFuANaNs3C9l4GmrWqejgXWJ7BbJcFYpTEUkS1Ge8bpZQ==} + undici-types@8.9.0: + resolution: {integrity: sha512-KTDyRTYX8sWmKXAikPHHSyc63CRPETMctyjKFupcC6OBLXT3xsN0e9aF7m+mIXutFWpUXuedtowG7iLOzp0kQg==} + unified-engine@11.2.2: resolution: {integrity: sha512-15g/gWE7qQl9tQ3nAEbMd5h9HV1EACtFs6N9xaRBZICoCwnNGbal1kOs++ICf4aiTdItZxU2s/kYWhW7htlqJg==} @@ -4142,6 +4423,12 @@ packages: peerDependencies: browserslist: '>= 4.21.0' + update-browserslist-db@1.3.3: + resolution: {integrity: sha512-pJ2sYawQS0R/WI928Gj5GlPhTGzbMelq0+4INtSYNDV9ErKJcX6xjGWkoG/VnB3dpUm00zALaqkrUD77pO5TDQ==} + hasBin: true + peerDependencies: + browserslist: '>= 4.21.0' + uri-js@4.4.1: resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} @@ -4155,6 +4442,10 @@ packages: resolution: {integrity: sha512-OljLrQ9SQdOUqTaQxqL5dEfZWrXExyyWsozYlAWFawPVNuD83igl7uJD2RTkNMbniIYgt8l81eCJGIdQF7avLQ==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + verkit@0.3.2: + resolution: {integrity: sha512-zj/ob3UsvJGN0whEAKFp53REA5X66hvffVqoCtVQAakJKnKlH+/PcOfMoFwIG/o4rElqLv/ycAFlx8ZlXUorCg==} + engines: {node: '>=18.12.0'} + vfile-message@4.0.3: resolution: {integrity: sha512-QTHzsGd1EhbZs4AsQ20JX1rC3cOlt/IWJruk893DfLRr57lcnOeMaWG4K0JrRta4mIJZKth2Au3mM3u03/JWKw==} @@ -4170,16 +4461,6 @@ packages: vfile@6.0.3: resolution: {integrity: sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==} - vite-plugin-solid@2.11.12: - resolution: {integrity: sha512-FgjPcx2OwX9h6f28jli7A4bG7PP3te8uyakE5iqsmpq3Jqi1TWLgSroC9N6cMfGRU2zXsl4Q6ISvTr2VL0QHpA==} - peerDependencies: - '@testing-library/jest-dom': ^5.16.6 || ^5.17.0 || ^6.* - solid-js: ^1.7.2 - vite: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 - peerDependenciesMeta: - '@testing-library/jest-dom': - optional: true - vite@8.1.4: resolution: {integrity: sha512-bTT9PsdWO+MQMNG9ZXIP/qM9wGh37DFxTV/sPq9cFpHr3w4jkgef032PkAL9jAqhk3Nz8NQw3O8n6/xFkqO4QQ==} engines: {node: ^20.19.0 || >=22.12.0} @@ -4275,14 +4556,14 @@ packages: vscode-css-languageservice@6.3.10: resolution: {integrity: sha512-eq5N9Er3fC4vA9zd9EFhyBG90wtCCuXgRSpAndaOgXMh1Wgep5lBgRIeDgjZBW9pa+332yC9+49cZMW8jcL3MA==} - vscode-languageserver-textdocument@1.0.12: - resolution: {integrity: sha512-cxWNPesCnQCcMPeenjKKsOCKQZ/L6Tv19DTRIGuLWe32lyzWhihGVJ/rcckZXJxfdKCFvRLS3fpBIsV/ZGX4zA==} + vscode-languageserver-textdocument@1.0.14: + resolution: {integrity: sha512-EQyqJMi552E4ZTf46izQ4Fj6XquqxCySR3J5ZSD1SisMf6RfpeOWHxGBE8Gr6V0/3GHIGdAzDn8F8+1nTGCnoQ==} vscode-languageserver-types@3.17.5: resolution: {integrity: sha512-Ld1VelNuX9pdF39h2Hgaeb5hEZM2Z3jUrrMgWQAu82jMtZp7p3vJT3BzToKtZI7NgQssZje5o0zryOrhQvzQAg==} - vscode-uri@3.1.0: - resolution: {integrity: sha512-/BpdSx+yCQGnCvecbyXdxHDkuk55/G3xwnC0GqY4gmQ3j+A+g8kzzgB4Nk/SINjqn6+waqw3EgbVF2QKExkRxQ==} + vscode-uri@3.2.0: + resolution: {integrity: sha512-m2gXo3bn0G1kT9InzMf07fTbqMbGtyckj3bH5ktLO+1Ssv+yiATZ4dhwaQv9UZWxJh6E9IFGnQyjgWVDWVBDrg==} vue-eslint-parser@10.4.1: resolution: {integrity: sha512-Gk6gRDj0n/fkRa3C3l0bBheoBckUq/Rs0F/TvMWIS6nzzx67amAViMe9CkNgsP2tXyQONvGiHQESHwFtZ3aYDA==} @@ -4297,6 +4578,9 @@ packages: resolution: {integrity: sha512-6i/00NBjP4yGPs+caKSyRfpTF/8Torsu0MOW3mMzIbhgISFder8i7xbqgHlLMwJrdiN8ndBV3UA1/AfzPSr+jg==} engines: {node: '>=10.13.0'} + web-worker@1.5.0: + resolution: {integrity: sha512-RiMReJrTAiA+mBjGONMnjVDP2u3p9R1vkcGz6gDIrOMT3oGuYwX2WRMYI9ipkphSuE5XKEhydbhNEJh4NY9mlw==} + webpack-sources@3.5.1: resolution: {integrity: sha512-jyuiGJdtvY434z5bUZrjz67v76/ePNvFZTp9Mdz29IlH4+GPsgyGjiv0fKI+M7BdkU6ADjulUcKAd3tUK3WlEw==} engines: {node: '>=10.13.0'} @@ -4357,12 +4641,9 @@ packages: resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} engines: {node: '>=12'} - wrappy@1.0.2: - resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} - - xml-name-validator@4.0.0: - resolution: {integrity: sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==} - engines: {node: '>=12'} + xml-name-validator@5.0.0: + resolution: {integrity: sha512-EvGK8EJ3DhaHfbRlETOWAS5pO9MZITeauHKJyb8wyajUfQUenkIg2MvLDTZ4T/TgIcm3HU0TFBgWWboAZ30UHg==} + engines: {node: '>=18'} yallist@3.1.1: resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} @@ -4376,6 +4657,11 @@ packages: engines: {node: '>= 14.6'} hasBin: true + yaml@2.9.1: + resolution: {integrity: sha512-3NxN8+78OdzbT7C/WjGsyfPAtJaN3FNDsWxv7Y7mcDsT/oOmgW8BpyQQFFBnvZE3j9Y2Sdz1ULFLezL7Eb2yFw==} + engines: {node: '>= 14.6'} + hasBin: true + yocto-queue@0.1.0: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} engines: {node: '>=10'} @@ -4389,6 +4675,9 @@ packages: yuku-parser@0.6.1: resolution: {integrity: sha512-dPE3/+H2VBw9LhjoIVeW/axKidYGd+XzNtrwGGseZ0325cQFl0Dpwyh0R74XWe/WqQn4M8CR5YApsv2KF2zN1A==} + zimmerframe@1.1.5: + resolution: {integrity: sha512-msJxIvYDYcoNL+PJsu+7qmpDWsYmAxTY+2TNYXXF0hzBzBk0BMecOqDOG/EckUoKCuKwObfbugIl8QpqHDXeFA==} + zwitch@2.0.4: resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} @@ -4396,6 +4685,11 @@ snapshots: '@adobe/css-tools@4.5.0': {} + '@ampproject/remapping@2.3.0': + dependencies: + '@jridgewell/gen-mapping': 0.3.13 + '@jridgewell/trace-mapping': 0.3.31 + '@andrewbranch/untar.js@1.0.3': optional: true @@ -4411,9 +4705,65 @@ snapshots: validate-npm-package-name: 5.0.1 optional: true - '@astrojs/compiler@2.13.1': {} + '@astrojs/compiler-binding-android-arm64@0.4.1': + optional: true + + '@astrojs/compiler-binding-darwin-arm64@0.4.1': + optional: true + + '@astrojs/compiler-binding-darwin-x64@0.4.1': + optional: true + + '@astrojs/compiler-binding-linux-arm64-gnu@0.4.1': + optional: true + + '@astrojs/compiler-binding-linux-arm64-musl@0.4.1': + optional: true + + '@astrojs/compiler-binding-linux-x64-gnu@0.4.1': + optional: true - '@astrojs/compiler@3.0.1': {} + '@astrojs/compiler-binding-linux-x64-musl@0.4.1': + optional: true + + '@astrojs/compiler-binding-wasm32-wasi@0.4.1(@emnapi/core@1.11.3)(@emnapi/runtime@1.11.3)': + dependencies: + '@napi-rs/wasm-runtime': 1.2.4(@emnapi/core@1.11.3)(@emnapi/runtime@1.11.3) + transitivePeerDependencies: + - '@emnapi/core' + - '@emnapi/runtime' + optional: true + + '@astrojs/compiler-binding-win32-arm64-msvc@0.4.1': + optional: true + + '@astrojs/compiler-binding-win32-x64-msvc@0.4.1': + optional: true + + '@astrojs/compiler-binding@0.4.1(@emnapi/core@1.11.3)(@emnapi/runtime@1.11.3)': + optionalDependencies: + '@astrojs/compiler-binding-android-arm64': 0.4.1 + '@astrojs/compiler-binding-darwin-arm64': 0.4.1 + '@astrojs/compiler-binding-darwin-x64': 0.4.1 + '@astrojs/compiler-binding-linux-arm64-gnu': 0.4.1 + '@astrojs/compiler-binding-linux-arm64-musl': 0.4.1 + '@astrojs/compiler-binding-linux-x64-gnu': 0.4.1 + '@astrojs/compiler-binding-linux-x64-musl': 0.4.1 + '@astrojs/compiler-binding-wasm32-wasi': 0.4.1(@emnapi/core@1.11.3)(@emnapi/runtime@1.11.3) + '@astrojs/compiler-binding-win32-arm64-msvc': 0.4.1 + '@astrojs/compiler-binding-win32-x64-msvc': 0.4.1 + transitivePeerDependencies: + - '@emnapi/core' + - '@emnapi/runtime' + + '@astrojs/compiler-rs@0.4.1(@emnapi/core@1.11.3)(@emnapi/runtime@1.11.3)': + dependencies: + '@astrojs/compiler-binding': 0.4.1(@emnapi/core@1.11.3)(@emnapi/runtime@1.11.3) + transitivePeerDependencies: + - '@emnapi/core' + - '@emnapi/runtime' + + '@astrojs/compiler@2.13.1': {} '@babel/code-frame@7.29.7': dependencies: @@ -4423,20 +4773,20 @@ snapshots: '@babel/compat-data@7.29.7': {} - '@babel/core@7.29.7': + '@babel/core@7.29.7(supports-color@9.4.0)': dependencies: '@babel/code-frame': 7.29.7 '@babel/generator': 7.29.7 '@babel/helper-compilation-targets': 7.29.7 - '@babel/helper-module-transforms': 7.29.7(@babel/core@7.29.7) + '@babel/helper-module-transforms': 7.29.7(@babel/core@7.29.7(supports-color@9.4.0))(supports-color@9.4.0) '@babel/helpers': 7.29.7 '@babel/parser': 7.29.7 '@babel/template': 7.29.7 - '@babel/traverse': 7.29.7 + '@babel/traverse': 7.29.7(supports-color@9.4.0) '@babel/types': 7.29.7 '@jridgewell/remapping': 2.3.5 convert-source-map: 2.0.0 - debug: 4.4.3 + debug: 4.4.3(supports-color@9.4.0) gensync: 1.0.0-beta.2 json5: 2.2.3 semver: 6.3.1 @@ -4465,19 +4815,19 @@ snapshots: dependencies: '@babel/types': 7.29.7 - '@babel/helper-module-imports@7.29.7': + '@babel/helper-module-imports@7.29.7(supports-color@9.4.0)': dependencies: - '@babel/traverse': 7.29.7 + '@babel/traverse': 7.29.7(supports-color@9.4.0) '@babel/types': 7.29.7 transitivePeerDependencies: - supports-color - '@babel/helper-module-transforms@7.29.7(@babel/core@7.29.7)': + '@babel/helper-module-transforms@7.29.7(@babel/core@7.29.7(supports-color@9.4.0))(supports-color@9.4.0)': dependencies: - '@babel/core': 7.29.7 - '@babel/helper-module-imports': 7.29.7 + '@babel/core': 7.29.7(supports-color@9.4.0) + '@babel/helper-module-imports': 7.29.7(supports-color@9.4.0) '@babel/helper-validator-identifier': 7.29.7 - '@babel/traverse': 7.29.7 + '@babel/traverse': 7.29.7(supports-color@9.4.0) transitivePeerDependencies: - supports-color @@ -4498,9 +4848,9 @@ snapshots: dependencies: '@babel/types': 7.29.7 - '@babel/plugin-syntax-jsx@7.29.7(@babel/core@7.29.7)': + '@babel/plugin-syntax-jsx@7.29.7(@babel/core@7.29.7(supports-color@9.4.0))': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@9.4.0) '@babel/helper-plugin-utils': 7.29.7 '@babel/template@7.29.7': @@ -4509,7 +4859,7 @@ snapshots: '@babel/parser': 7.29.7 '@babel/types': 7.29.7 - '@babel/traverse@7.29.7': + '@babel/traverse@7.29.7(supports-color@9.4.0)': dependencies: '@babel/code-frame': 7.29.7 '@babel/generator': 7.29.7 @@ -4517,7 +4867,7 @@ snapshots: '@babel/parser': 7.29.7 '@babel/template': 7.29.7 '@babel/types': 7.29.7 - debug: 4.4.3 + debug: 4.4.3(supports-color@9.4.0) transitivePeerDependencies: - supports-color @@ -4529,6 +4879,18 @@ snapshots: '@braidai/lang@1.1.2': optional: true + '@cacheable/memory@2.2.0': + dependencies: + '@cacheable/utils': 2.5.0 + '@keyv/bigmap': 1.3.1(keyv@5.6.0) + hookified: 1.15.1 + keyv: 5.6.0 + + '@cacheable/utils@2.5.0': + dependencies: + hashery: 1.5.1 + keyv: 5.6.0 + '@emnapi/core@1.10.0': dependencies: '@emnapi/wasi-threads': 1.2.1 @@ -4547,6 +4909,12 @@ snapshots: tslib: 2.8.1 optional: true + '@emnapi/core@1.11.3': + dependencies: + '@emnapi/wasi-threads': 1.2.3 + tslib: 2.8.1 + optional: true + '@emnapi/runtime@1.10.0': dependencies: tslib: 2.8.1 @@ -4562,6 +4930,11 @@ snapshots: tslib: 2.8.1 optional: true + '@emnapi/runtime@1.11.3': + dependencies: + tslib: 2.8.1 + optional: true + '@emnapi/wasi-threads@1.2.1': dependencies: tslib: 2.8.1 @@ -4572,13 +4945,18 @@ snapshots: tslib: 2.8.1 optional: true - '@es-joy/jsdoccomment@0.84.0': + '@emnapi/wasi-threads@1.2.3': + dependencies: + tslib: 2.8.1 + optional: true + + '@es-joy/jsdoccomment@0.92.0': dependencies: '@types/estree': 1.0.9 - '@typescript-eslint/types': 8.64.0 - comment-parser: 1.4.5 + '@typescript-eslint/types': 8.70.1 + comment-parser: 1.4.7 esquery: 1.7.0 - jsdoc-type-pratt-parser: 7.1.1 + jsdoc-type-pratt-parser: 9.0.1 '@esbuild/aix-ppc64@0.28.1': optional: true @@ -4658,30 +5036,30 @@ snapshots: '@esbuild/win32-x64@0.28.1': optional: true - '@eslint-community/eslint-plugin-eslint-comments@4.7.2(eslint@10.7.0(jiti@2.7.0))': + '@eslint-community/eslint-plugin-eslint-comments@4.8.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))': dependencies: escape-string-regexp: 4.0.0 - eslint: 10.7.0(jiti@2.7.0) - ignore: 7.0.6 + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) + ignore: 7.0.10 - '@eslint-community/eslint-utils@4.9.1(eslint@10.7.0(jiti@2.7.0))': + '@eslint-community/eslint-utils@4.10.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))': dependencies: - eslint: 10.7.0(jiti@2.7.0) + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) eslint-visitor-keys: 3.4.3 '@eslint-community/regexpp@4.12.2': {} - '@eslint/compat@2.1.0(eslint@10.7.0(jiti@2.7.0))': + '@eslint/compat@2.1.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))': dependencies: '@eslint/core': 1.2.1 optionalDependencies: - eslint: 10.7.0(jiti@2.7.0) + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) - '@eslint/config-array@0.23.5': + '@eslint/config-array@0.23.5(supports-color@9.4.0)': dependencies: '@eslint/object-schema': 3.0.5 - debug: 4.4.3 - minimatch: 10.2.5 + debug: 4.4.3(supports-color@9.4.0) + minimatch: 10.2.6 transitivePeerDependencies: - supports-color @@ -4689,7 +5067,7 @@ snapshots: dependencies: '@eslint/core': 1.2.1 - '@eslint/config-helpers@0.6.0': + '@eslint/config-helpers@0.7.0': dependencies: '@eslint/core': 1.2.1 @@ -4701,6 +5079,11 @@ snapshots: dependencies: '@types/json-schema': 7.0.15 + '@eslint/css-tree@4.1.1': + dependencies: + mdn-data: 2.35.0 + source-map-js: 1.2.1 + '@eslint/object-schema@3.0.5': {} '@eslint/plugin-kit@0.4.1': @@ -4708,45 +5091,45 @@ snapshots: '@eslint/core': 0.17.0 levn: 0.4.1 - '@eslint/plugin-kit@0.7.2': + '@eslint/plugin-kit@0.7.3': dependencies: '@eslint/core': 1.2.1 levn: 0.4.1 - '@html-eslint/core@0.61.0': + '@html-eslint/core@0.65.0': dependencies: - '@html-eslint/types': 0.61.0 + '@html-eslint/types': 0.65.0 html-standard: 0.0.13 - '@html-eslint/eslint-plugin@0.61.0(eslint@10.7.0(jiti@2.7.0))': + '@html-eslint/eslint-plugin@0.65.0(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))': dependencies: '@eslint/plugin-kit': 0.4.1 - '@html-eslint/core': 0.61.0 - '@html-eslint/parser': 0.61.0 - '@html-eslint/template-parser': 0.61.0 - '@html-eslint/template-syntax-parser': 0.61.0 - '@html-eslint/types': 0.61.0 - '@rviscomi/capo.js': 2.1.0 - eslint: 10.7.0(jiti@2.7.0) + '@html-eslint/core': 0.65.0 + '@html-eslint/parser': 0.65.0 + '@html-eslint/template-parser': 0.65.0 + '@html-eslint/template-syntax-parser': 0.65.0 + '@html-eslint/types': 0.65.0 + '@rviscomi/capo.js': 2.3.1 + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) html-standard: 0.0.13 - '@html-eslint/parser@0.61.0': + '@html-eslint/parser@0.65.0': dependencies: - '@html-eslint/template-syntax-parser': 0.61.0 - '@html-eslint/types': 0.61.0 + '@html-eslint/template-syntax-parser': 0.65.0 + '@html-eslint/types': 0.65.0 css-tree: 3.2.1 es-html-parser: 0.3.1 - '@html-eslint/template-parser@0.61.0': + '@html-eslint/template-parser@0.65.0': dependencies: - '@html-eslint/types': 0.61.0 + '@html-eslint/types': 0.65.0 es-html-parser: 0.3.1 - '@html-eslint/template-syntax-parser@0.61.0': + '@html-eslint/template-syntax-parser@0.65.0': dependencies: - '@html-eslint/types': 0.61.0 + '@html-eslint/types': 0.65.0 - '@html-eslint/types@0.61.0': + '@html-eslint/types@0.65.0': dependencies: '@types/css-tree': 2.3.11 '@types/estree': 1.0.9 @@ -4796,21 +5179,24 @@ snapshots: '@jridgewell/sourcemap-codec@1.5.5': {} + '@jridgewell/sourcemap-codec@1.6.0': {} + '@jridgewell/trace-mapping@0.3.31': dependencies: '@jridgewell/resolve-uri': 3.1.2 '@jridgewell/sourcemap-codec': 1.5.5 - '@loaderkit/resolve@1.0.6': + '@keyv/bigmap@1.3.1(keyv@5.6.0)': dependencies: - '@braidai/lang': 1.1.2 - optional: true + hashery: 1.5.1 + hookified: 1.15.1 + keyv: 5.6.0 + + '@keyv/serialize@1.1.1': {} - '@napi-rs/wasm-runtime@1.1.6(@emnapi/core@1.10.0)(@emnapi/runtime@1.10.0)': + '@loaderkit/resolve@1.0.6': dependencies: - '@emnapi/core': 1.10.0 - '@emnapi/runtime': 1.10.0 - '@tybys/wasm-util': 0.10.3 + '@braidai/lang': 1.1.2 optional: true '@napi-rs/wasm-runtime@1.1.6(@emnapi/core@1.11.1)(@emnapi/runtime@1.11.1)': @@ -4827,17 +5213,29 @@ snapshots: '@tybys/wasm-util': 0.10.3 optional: true - '@nodelib/fs.scandir@2.1.5': + '@napi-rs/wasm-runtime@1.1.6(@emnapi/core@1.11.3)(@emnapi/runtime@1.11.3)': dependencies: - '@nodelib/fs.stat': 2.0.5 - run-parallel: 1.2.0 + '@emnapi/core': 1.11.3 + '@emnapi/runtime': 1.11.3 + '@tybys/wasm-util': 0.10.3 + optional: true - '@nodelib/fs.stat@2.0.5': {} + '@napi-rs/wasm-runtime@1.2.4(@emnapi/core@1.10.0)(@emnapi/runtime@1.10.0)': + dependencies: + '@emnapi/core': 1.10.0 + '@emnapi/runtime': 1.10.0 + '@tybys/wasm-util': 0.10.4 + optional: true - '@nodelib/fs.walk@1.2.8': + '@napi-rs/wasm-runtime@1.2.4(@emnapi/core@1.11.3)(@emnapi/runtime@1.11.3)': dependencies: - '@nodelib/fs.scandir': 2.1.5 - fastq: 1.20.1 + '@emnapi/core': 1.11.3 + '@emnapi/runtime': 1.11.3 + '@tybys/wasm-util': 0.10.4 + optional: true + + '@noble/hashes@2.4.0': + optional: true '@npmcli/config@8.3.4': dependencies: @@ -5224,103 +5622,174 @@ snapshots: '@rollup/rollup-win32-x64-msvc@4.62.2': optional: true - '@rviscomi/capo.js@2.1.0': {} + '@rviscomi/capo.js@2.3.1': {} - '@so1ve/eslint-config@4.6.2(@typescript-eslint/eslint-plugin@8.64.0(@typescript-eslint/parser@8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(@typescript-eslint/rule-tester@8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(@typescript-eslint/typescript-estree@8.64.0(typescript@6.0.3))(eslint-import-resolver-node@0.3.10)(eslint@10.7.0(jiti@2.7.0))(prettier@3.9.5)(ts-declaration-location@1.0.7(typescript@6.0.3))(typescript@6.0.3)(vitest@4.1.10(@types/node@26.1.1)(vite@8.1.4(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.49.0)(yaml@2.9.0)))': + '@so1ve/eslint-config@4.7.0(@emnapi/core@1.11.3)(@emnapi/runtime@1.11.3)(@typescript-eslint/eslint-plugin@8.70.1(@typescript-eslint/parser@8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3))(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3))(@typescript-eslint/typescript-estree@8.70.1(supports-color@9.4.0)(typescript@6.0.3))(eslint-import-resolver-node@0.3.10(supports-color@9.4.0))(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(prettier@3.9.9)(supports-color@9.4.0)(ts-declaration-location@1.0.7(typescript@6.0.3))(typescript@6.0.3)(vitest@4.1.10(@types/node@26.1.1)(vite@8.1.4(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.49.0)(yaml@2.9.0)))': dependencies: - '@eslint-community/eslint-plugin-eslint-comments': 4.7.2(eslint@10.7.0(jiti@2.7.0)) - '@html-eslint/eslint-plugin': 0.61.0(eslint@10.7.0(jiti@2.7.0)) - '@html-eslint/parser': 0.61.0 - '@so1ve/eslint-plugin': 4.6.2(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3) - '@stylistic/eslint-plugin': 5.10.0(eslint@10.7.0(jiti@2.7.0)) - '@typescript-eslint/parser': 8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3) - '@typescript-eslint/utils': 8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3) - '@unocss/eslint-config': 66.7.5(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3) - '@vitest/eslint-plugin': 1.6.23(@typescript-eslint/eslint-plugin@8.64.0(@typescript-eslint/parser@8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3)(vitest@4.1.10(@types/node@26.1.1)(vite@8.1.4(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.49.0)(yaml@2.9.0))) - astro-eslint-parser: 1.4.0 - eslint: 10.7.0(jiti@2.7.0) - eslint-config-flat-gitignore: 2.3.0(eslint@10.7.0(jiti@2.7.0)) + '@eslint-community/eslint-plugin-eslint-comments': 4.8.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)) + '@html-eslint/eslint-plugin': 0.65.0(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)) + '@html-eslint/parser': 0.65.0 + '@so1ve/eslint-plugin': 4.7.0(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3) + '@stylistic/eslint-plugin': 5.10.0(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)) + '@typescript-eslint/parser': 8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3) + '@typescript-eslint/utils': 8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3) + '@vitest/eslint-plugin': 1.6.27(@typescript-eslint/eslint-plugin@8.70.1(@typescript-eslint/parser@8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3))(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3))(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3)(vitest@4.1.10(@types/node@26.1.1)(vite@8.1.4(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.49.0)(yaml@2.9.0))) + astro-eslint-parser: 3.1.0(@emnapi/core@1.11.3)(@emnapi/runtime@1.11.3)(supports-color@9.4.0) + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) + eslint-config-flat-gitignore: 2.4.0(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)) eslint-flat-config-utils: 3.2.0 - eslint-import-resolver-typescript: 4.4.5(eslint-plugin-import-x@4.17.1(@typescript-eslint/utils@8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(eslint-import-resolver-node@0.3.10)(eslint@10.7.0(jiti@2.7.0)))(eslint@10.7.0(jiti@2.7.0)) - eslint-mdx: 3.8.1(eslint@10.7.0(jiti@2.7.0)) - eslint-plugin-array-func: 5.1.1(eslint@10.7.0(jiti@2.7.0)) - eslint-plugin-astro: 1.7.0(eslint@10.7.0(jiti@2.7.0)) - eslint-plugin-case-police: 2.2.1(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3) - eslint-plugin-command: 3.5.2(@typescript-eslint/rule-tester@8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(@typescript-eslint/typescript-estree@8.64.0(typescript@6.0.3))(@typescript-eslint/utils@8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(eslint@10.7.0(jiti@2.7.0)) - eslint-plugin-de-morgan: 2.1.3(eslint@10.7.0(jiti@2.7.0)) - eslint-plugin-html: 8.1.4 - eslint-plugin-import-lite: 0.6.0(eslint@10.7.0(jiti@2.7.0)) - eslint-plugin-import-x: 4.17.1(@typescript-eslint/utils@8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(eslint-import-resolver-node@0.3.10)(eslint@10.7.0(jiti@2.7.0)) - eslint-plugin-jsonc: 3.3.0(eslint@10.7.0(jiti@2.7.0)) - eslint-plugin-mdx: 3.8.1(eslint@10.7.0(jiti@2.7.0)) - eslint-plugin-n: 18.2.2(eslint@10.7.0(jiti@2.7.0))(ts-declaration-location@1.0.7(typescript@6.0.3))(typescript@6.0.3) - eslint-plugin-no-await-in-promise: 3.0.1(eslint@10.7.0(jiti@2.7.0)) - eslint-plugin-no-explicit-type-exports: 0.12.1(@typescript-eslint/parser@8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(eslint-import-resolver-typescript@4.4.5(eslint-plugin-import-x@4.17.1(@typescript-eslint/utils@8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(eslint-import-resolver-node@0.3.10)(eslint@10.7.0(jiti@2.7.0)))(eslint@10.7.0(jiti@2.7.0)))(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3) + eslint-import-resolver-typescript: 4.4.5(eslint-plugin-import-x@4.17.1(@typescript-eslint/utils@8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3))(eslint-import-resolver-node@0.3.10(supports-color@9.4.0))(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0))(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0) + eslint-plugin-array-func: 5.1.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)) + eslint-plugin-astro: 3.2.1(@emnapi/core@1.11.3)(@emnapi/runtime@1.11.3)(@typescript-eslint/parser@8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3))(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript-eslint@8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3)) + eslint-plugin-command: 4.0.0(@typescript-eslint/typescript-estree@8.70.1(supports-color@9.4.0)(typescript@6.0.3))(@typescript-eslint/utils@8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3))(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)) + eslint-plugin-de-morgan: 2.2.0(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)) + eslint-plugin-html: 8.2.0 + eslint-plugin-import-lite: 0.6.0(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)) + eslint-plugin-import-x: 4.17.1(@typescript-eslint/utils@8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3))(eslint-import-resolver-node@0.3.10(supports-color@9.4.0))(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0) + eslint-plugin-jsonc: 3.4.2(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)) + eslint-plugin-mdx: 3.8.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0) + eslint-plugin-n: 18.3.0(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(ts-declaration-location@1.0.7(typescript@6.0.3))(typescript@6.0.3) + eslint-plugin-no-await-in-promise: 3.0.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)) eslint-plugin-no-only-tests: 3.4.0 eslint-plugin-only-error: 1.0.2 - eslint-plugin-perfectionist: 5.10.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3) - eslint-plugin-pnpm: 1.6.1(eslint@10.7.0(jiti@2.7.0)) - eslint-plugin-promise: 7.3.0(eslint@10.7.0(jiti@2.7.0)) - eslint-plugin-regexp: 3.1.1(eslint@10.7.0(jiti@2.7.0)) - eslint-plugin-solid: 0.14.5(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3) - eslint-plugin-toml: 1.4.0(eslint@10.7.0(jiti@2.7.0)) - eslint-plugin-unicorn: 65.0.1(eslint@10.7.0(jiti@2.7.0)) - eslint-plugin-unused-imports: 4.4.1(@typescript-eslint/eslint-plugin@8.64.0(@typescript-eslint/parser@8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(eslint@10.7.0(jiti@2.7.0)) - eslint-plugin-vue: 10.9.2(@stylistic/eslint-plugin@5.10.0(eslint@10.7.0(jiti@2.7.0)))(@typescript-eslint/parser@8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(eslint@10.7.0(jiti@2.7.0))(vue-eslint-parser@10.4.1(eslint@10.7.0(jiti@2.7.0))) - eslint-plugin-yml: 3.6.0(eslint@10.7.0(jiti@2.7.0)) + eslint-plugin-perfectionist: 5.12.0(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3) + eslint-plugin-pnpm: 1.9.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)) + eslint-plugin-promise: 7.3.0(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)) + eslint-plugin-regexp: 3.3.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)) + eslint-plugin-solid: 0.17.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3) + eslint-plugin-toml: 1.5.0(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0) + eslint-plugin-unicorn: 74.0.0(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)) + eslint-plugin-unused-imports: 4.4.1(@typescript-eslint/eslint-plugin@8.70.1(@typescript-eslint/parser@8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3))(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3))(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)) + eslint-plugin-vue: 10.11.0(@stylistic/eslint-plugin@5.10.0(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)))(@typescript-eslint/parser@8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3))(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(vue-eslint-parser@10.4.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)) + eslint-plugin-yml: 3.8.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)) find-up-simple: 1.0.1 - globals: 17.7.0 + globals: 17.12.0 local-pkg: 1.2.1 - prettier: 3.9.5 + prettier: 3.9.9 toml-eslint-parser: 1.0.3 - typescript-eslint: 8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3) - vue-eslint-parser: 10.4.1(eslint@10.7.0(jiti@2.7.0)) + typescript-eslint: 8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3) + vue-eslint-parser: 10.4.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0) yaml-eslint-parser: 2.1.0 transitivePeerDependencies: + - '@emnapi/core' + - '@emnapi/runtime' - '@eslint/json' - '@typescript-eslint/eslint-plugin' - - '@typescript-eslint/rule-tester' - '@typescript-eslint/typescript-estree' - bluebird - eslint-import-resolver-node - - eslint-import-resolver-webpack - eslint-plugin-import + - eslint-plugin-jsx-a11y + - eslint-plugin-jsx-a11y-x - remark-lint-file-extension - supports-color - ts-declaration-location - typescript - vitest - '@so1ve/eslint-plugin@4.6.2(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3)': + '@so1ve/eslint-plugin@4.7.0(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3)': dependencies: - '@typescript-eslint/types': 8.64.0 - '@typescript-eslint/utils': 8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3) + '@typescript-eslint/types': 8.70.1 + '@typescript-eslint/utils': 8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3) natsort: 2.0.3 transitivePeerDependencies: - eslint - supports-color - typescript - '@so1ve/prettier-config@4.6.2(prettier@3.9.5)': + '@so1ve/prettier-config@4.7.0(prettier@3.9.9)(supports-color@9.4.0)': dependencies: - prettier: 3.9.5 + prettier: 3.9.9 prettier-plugin-astro: 0.14.1 - prettier-plugin-jsdoc: 1.8.1(prettier@3.9.5) - prettier-plugin-toml: 2.0.6(prettier@3.9.5) + prettier-plugin-jsdoc: 1.8.1(prettier@3.9.9)(supports-color@9.4.0) + prettier-plugin-toml: 2.0.6(prettier@3.9.9) transitivePeerDependencies: - supports-color + '@solidjs/babel-plugin@2.0.0-rc.9(@babel/core@7.29.7(supports-color@9.4.0))(@tsrx/core@0.1.63(@typescript-eslint/types@8.70.1))': + dependencies: + '@babel/core': 7.29.7(supports-color@9.4.0) + '@babel/helper-module-imports': 7.18.6 + '@babel/plugin-syntax-jsx': 7.29.7(@babel/core@7.29.7(supports-color@9.4.0)) + '@babel/types': 7.29.7 + html-entities: 2.3.3 + parse5: 7.3.0 + optionalDependencies: + '@tsrx/core': 0.1.63(@typescript-eslint/types@8.70.1) + + '@solidjs/compiler-darwin-arm64@2.0.0-rc.9': + optional: true + + '@solidjs/compiler-darwin-x64@2.0.0-rc.9': + optional: true + + '@solidjs/compiler-linux-arm64-gnu@2.0.0-rc.9': + optional: true + + '@solidjs/compiler-linux-x64-gnu@2.0.0-rc.9': + optional: true + + '@solidjs/compiler-wasm32-wasi@2.0.0-rc.9': + dependencies: + '@emnapi/core': 1.11.3 + '@emnapi/runtime': 1.11.3 + '@napi-rs/wasm-runtime': 1.1.6(@emnapi/core@1.11.3)(@emnapi/runtime@1.11.3) + optional: true + + '@solidjs/compiler-win32-x64-msvc@2.0.0-rc.9': + optional: true + + '@solidjs/compiler@2.0.0-rc.9': + optionalDependencies: + '@solidjs/compiler-darwin-arm64': 2.0.0-rc.9 + '@solidjs/compiler-darwin-x64': 2.0.0-rc.9 + '@solidjs/compiler-linux-arm64-gnu': 2.0.0-rc.9 + '@solidjs/compiler-linux-x64-gnu': 2.0.0-rc.9 + '@solidjs/compiler-wasm32-wasi': 2.0.0-rc.9 + '@solidjs/compiler-win32-x64-msvc': 2.0.0-rc.9 + + '@solidjs/signals@2.0.0-rc.9': {} + + '@solidjs/vite-plugin@3.0.0-next.44(@solidjs/web@2.0.0-rc.9(solid-js@2.0.0-rc.9))(@testing-library/jest-dom@6.9.1)(@tsrx/core@0.1.63(@typescript-eslint/types@8.70.1))(solid-js@2.0.0-rc.9)(supports-color@9.4.0)(vite@8.1.4(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.49.0)(yaml@2.9.0))': + dependencies: + '@ampproject/remapping': 2.3.0 + '@babel/core': 7.29.7(supports-color@9.4.0) + '@solidjs/babel-plugin': 2.0.0-rc.9(@babel/core@7.29.7(supports-color@9.4.0))(@tsrx/core@0.1.63(@typescript-eslint/types@8.70.1)) + '@solidjs/compiler': 2.0.0-rc.9 + '@solidjs/web': 2.0.0-rc.9(solid-js@2.0.0-rc.9) + '@types/babel__core': 7.20.5 + merge-anything: 5.1.7 + solid-js: 2.0.0-rc.9 + vite: 8.1.4(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.49.0)(yaml@2.9.0) + vitefu: 1.1.3(vite@8.1.4(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.49.0)(yaml@2.9.0)) + optionalDependencies: + '@testing-library/jest-dom': 6.9.1 + transitivePeerDependencies: + - '@tsrx/core' + - supports-color + + '@solidjs/web@2.0.0-rc.9(solid-js@2.0.0-rc.9)': + dependencies: + seroval: 1.6.7 + seroval-plugins: 1.6.7(seroval@1.6.7) + solid-js: 2.0.0-rc.9 + '@standard-schema/spec@1.1.0': {} - '@stylistic/eslint-plugin@5.10.0(eslint@10.7.0(jiti@2.7.0))': + '@stylistic/eslint-plugin@5.10.0(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))': dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.7.0(jiti@2.7.0)) - '@typescript-eslint/types': 8.64.0 - eslint: 10.7.0(jiti@2.7.0) + '@eslint-community/eslint-utils': 4.10.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)) + '@typescript-eslint/types': 8.70.1 + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) eslint-visitor-keys: 4.2.1 espree: 10.4.0 estraverse: 5.3.0 - picomatch: 4.0.5 + picomatch: 4.0.7 + + '@sveltejs/acorn-typescript@1.0.13(acorn@8.17.0)': + dependencies: + acorn: 8.17.0 + optional: true '@sxzz/test-utils@0.5.18(esbuild@0.28.1)(rolldown@1.1.5)(rollup@4.62.2)(typescript@6.0.3)(vitest@4.1.10(@types/node@26.1.1)(vite@8.1.4(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.49.0)(yaml@2.9.0)))': dependencies: @@ -5348,11 +5817,36 @@ snapshots: picocolors: 1.1.1 redent: 3.0.0 + '@tsrx/core@0.1.63(@typescript-eslint/types@8.70.1)': + dependencies: + '@jridgewell/sourcemap-codec': 1.5.5 + '@noble/hashes': 2.4.0 + '@sveltejs/acorn-typescript': 1.0.13(acorn@8.17.0) + '@tsrx/runtime': 0.1.2 + '@types/estree': 1.0.9 + '@types/estree-jsx': 1.0.5 + acorn: 8.17.0 + esrap: 2.3.9(@typescript-eslint/types@8.70.1) + is-reference: 3.0.3 + magic-string: 0.30.21 + zimmerframe: 1.1.5 + transitivePeerDependencies: + - '@typescript-eslint/types' + optional: true + + '@tsrx/runtime@0.1.2': + optional: true + '@tybys/wasm-util@0.10.3': dependencies: tslib: 2.8.1 optional: true + '@tybys/wasm-util@0.10.4': + dependencies: + tslib: 2.8.1 + optional: true + '@types/babel__core@7.20.5': dependencies: '@babel/parser': 7.29.7 @@ -5381,7 +5875,7 @@ snapshots: '@types/concat-stream@2.0.3': dependencies: - '@types/node': 26.1.1 + '@types/node': 26.6.2 '@types/css-tree@2.3.11': {} @@ -5413,7 +5907,7 @@ snapshots: '@types/ms@2.1.0': {} - '@types/node@22.20.1': + '@types/node@22.20.4': dependencies: undici-types: 6.21.0 @@ -5421,21 +5915,25 @@ snapshots: dependencies: undici-types: 8.3.0 + '@types/node@26.6.2': + dependencies: + undici-types: 8.9.0 + '@types/supports-color@8.1.3': {} '@types/unist@2.0.11': {} '@types/unist@3.0.3': {} - '@typescript-eslint/eslint-plugin@8.64.0(@typescript-eslint/parser@8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3)': + '@typescript-eslint/eslint-plugin@8.70.1(@typescript-eslint/parser@8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3))(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3)': dependencies: '@eslint-community/regexpp': 4.12.2 - '@typescript-eslint/parser': 8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3) - '@typescript-eslint/scope-manager': 8.64.0 - '@typescript-eslint/type-utils': 8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3) - '@typescript-eslint/utils': 8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3) - '@typescript-eslint/visitor-keys': 8.64.0 - eslint: 10.7.0(jiti@2.7.0) + '@typescript-eslint/parser': 8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3) + '@typescript-eslint/scope-manager': 8.70.1 + '@typescript-eslint/type-utils': 8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3) + '@typescript-eslint/utils': 8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3) + '@typescript-eslint/visitor-keys': 8.70.1 + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) ignore: 7.0.6 natural-compare: 1.4.0 ts-api-utils: 2.5.0(typescript@6.0.3) @@ -5443,96 +5941,57 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/experimental-utils@2.34.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3)': + '@typescript-eslint/parser@8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3)': dependencies: - '@types/json-schema': 7.0.15 - '@typescript-eslint/typescript-estree': 2.34.0(typescript@6.0.3) - eslint: 10.7.0(jiti@2.7.0) - eslint-scope: 5.1.1 - eslint-utils: 2.1.0 - transitivePeerDependencies: - - supports-color - - typescript - - '@typescript-eslint/parser@8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3)': - dependencies: - '@typescript-eslint/scope-manager': 8.64.0 - '@typescript-eslint/types': 8.64.0 - '@typescript-eslint/typescript-estree': 8.64.0(typescript@6.0.3) - '@typescript-eslint/visitor-keys': 8.64.0 - debug: 4.4.3 - eslint: 10.7.0(jiti@2.7.0) + '@typescript-eslint/scope-manager': 8.70.1 + '@typescript-eslint/types': 8.70.1 + '@typescript-eslint/typescript-estree': 8.70.1(supports-color@9.4.0)(typescript@6.0.3) + '@typescript-eslint/visitor-keys': 8.70.1 + debug: 4.4.3(supports-color@9.4.0) + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) typescript: 6.0.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/project-service@8.64.0(typescript@6.0.3)': + '@typescript-eslint/project-service@8.70.1(supports-color@9.4.0)(typescript@6.0.3)': dependencies: - '@typescript-eslint/tsconfig-utils': 8.64.0(typescript@6.0.3) - '@typescript-eslint/types': 8.64.0 - debug: 4.4.3 + '@typescript-eslint/tsconfig-utils': 8.70.1(typescript@6.0.3) + '@typescript-eslint/types': 8.70.1 + debug: 4.4.3(supports-color@9.4.0) typescript: 6.0.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/rule-tester@8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3)': + '@typescript-eslint/scope-manager@8.70.1': dependencies: - '@typescript-eslint/parser': 8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3) - '@typescript-eslint/typescript-estree': 8.64.0(typescript@6.0.3) - '@typescript-eslint/utils': 8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3) - ajv: 6.15.0 - eslint: 10.7.0(jiti@2.7.0) - json-stable-stringify-without-jsonify: 1.0.1 - lodash.merge: 4.6.2 - semver: 7.8.5 - typescript: 6.0.3 - transitivePeerDependencies: - - supports-color - - '@typescript-eslint/scope-manager@8.64.0': - dependencies: - '@typescript-eslint/types': 8.64.0 - '@typescript-eslint/visitor-keys': 8.64.0 + '@typescript-eslint/types': 8.70.1 + '@typescript-eslint/visitor-keys': 8.70.1 - '@typescript-eslint/tsconfig-utils@8.64.0(typescript@6.0.3)': + '@typescript-eslint/tsconfig-utils@8.70.1(typescript@6.0.3)': dependencies: typescript: 6.0.3 - '@typescript-eslint/type-utils@8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3)': + '@typescript-eslint/type-utils@8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3)': dependencies: - '@typescript-eslint/types': 8.64.0 - '@typescript-eslint/typescript-estree': 8.64.0(typescript@6.0.3) - '@typescript-eslint/utils': 8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3) - debug: 4.4.3 - eslint: 10.7.0(jiti@2.7.0) + '@typescript-eslint/types': 8.70.1 + '@typescript-eslint/typescript-estree': 8.70.1(supports-color@9.4.0)(typescript@6.0.3) + '@typescript-eslint/utils': 8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3) + debug: 4.4.3(supports-color@9.4.0) + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) ts-api-utils: 2.5.0(typescript@6.0.3) typescript: 6.0.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/types@8.64.0': {} + '@typescript-eslint/types@8.70.1': {} - '@typescript-eslint/typescript-estree@2.34.0(typescript@6.0.3)': + '@typescript-eslint/typescript-estree@8.70.1(supports-color@9.4.0)(typescript@6.0.3)': dependencies: - debug: 4.4.3 - eslint-visitor-keys: 1.3.0 - glob: 7.2.3 - is-glob: 4.0.3 - lodash: 4.18.1 - semver: 7.8.5 - tsutils: 3.21.0(typescript@6.0.3) - optionalDependencies: - typescript: 6.0.3 - transitivePeerDependencies: - - supports-color - - '@typescript-eslint/typescript-estree@8.64.0(typescript@6.0.3)': - dependencies: - '@typescript-eslint/project-service': 8.64.0(typescript@6.0.3) - '@typescript-eslint/tsconfig-utils': 8.64.0(typescript@6.0.3) - '@typescript-eslint/types': 8.64.0 - '@typescript-eslint/visitor-keys': 8.64.0 - debug: 4.4.3 + '@typescript-eslint/project-service': 8.70.1(supports-color@9.4.0)(typescript@6.0.3) + '@typescript-eslint/tsconfig-utils': 8.70.1(typescript@6.0.3) + '@typescript-eslint/types': 8.70.1 + '@typescript-eslint/visitor-keys': 8.70.1 + debug: 4.4.3(supports-color@9.4.0) minimatch: 10.2.5 semver: 7.8.5 tinyglobby: 0.2.17 @@ -5541,57 +6000,22 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3)': + '@typescript-eslint/utils@8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3)': dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.7.0(jiti@2.7.0)) - '@typescript-eslint/scope-manager': 8.64.0 - '@typescript-eslint/types': 8.64.0 - '@typescript-eslint/typescript-estree': 8.64.0(typescript@6.0.3) - eslint: 10.7.0(jiti@2.7.0) + '@eslint-community/eslint-utils': 4.10.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)) + '@typescript-eslint/scope-manager': 8.70.1 + '@typescript-eslint/types': 8.70.1 + '@typescript-eslint/typescript-estree': 8.70.1(supports-color@9.4.0)(typescript@6.0.3) + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) typescript: 6.0.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/visitor-keys@8.64.0': + '@typescript-eslint/visitor-keys@8.70.1': dependencies: - '@typescript-eslint/types': 8.64.0 + '@typescript-eslint/types': 8.70.1 eslint-visitor-keys: 5.0.1 - '@unocss/config@66.7.5': - dependencies: - '@unocss/core': 66.7.5 - colorette: 2.0.20 - consola: 3.4.2 - unconfig: 7.5.0 - - '@unocss/core@66.7.5': {} - - '@unocss/eslint-config@66.7.5(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3)': - dependencies: - '@unocss/eslint-plugin': 66.7.5(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3) - transitivePeerDependencies: - - eslint - - supports-color - - typescript - - '@unocss/eslint-plugin@66.7.5(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3)': - dependencies: - '@typescript-eslint/utils': 8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3) - '@unocss/config': 66.7.5 - '@unocss/core': 66.7.5 - '@unocss/rule-utils': 66.7.5 - magic-string: 0.30.21 - synckit: 0.11.13 - transitivePeerDependencies: - - eslint - - supports-color - - typescript - - '@unocss/rule-utils@66.7.5': - dependencies: - '@unocss/core': 66.7.5 - magic-string: 0.30.21 - '@unrs/resolver-binding-android-arm-eabi@1.12.2': optional: true @@ -5650,7 +6074,7 @@ snapshots: dependencies: '@emnapi/core': 1.10.0 '@emnapi/runtime': 1.10.0 - '@napi-rs/wasm-runtime': 1.1.6(@emnapi/core@1.10.0)(@emnapi/runtime@1.10.0) + '@napi-rs/wasm-runtime': 1.2.4(@emnapi/core@1.10.0)(@emnapi/runtime@1.10.0) optional: true '@unrs/resolver-binding-win32-arm64-msvc@1.12.2': @@ -5662,13 +6086,13 @@ snapshots: '@unrs/resolver-binding-win32-x64-msvc@1.12.2': optional: true - '@vitest/eslint-plugin@1.6.23(@typescript-eslint/eslint-plugin@8.64.0(@typescript-eslint/parser@8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3)(vitest@4.1.10(@types/node@26.1.1)(vite@8.1.4(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.49.0)(yaml@2.9.0)))': + '@vitest/eslint-plugin@1.6.27(@typescript-eslint/eslint-plugin@8.70.1(@typescript-eslint/parser@8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3))(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3))(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3)(vitest@4.1.10(@types/node@26.1.1)(vite@8.1.4(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.49.0)(yaml@2.9.0)))': dependencies: - '@typescript-eslint/scope-manager': 8.64.0 - '@typescript-eslint/utils': 8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3) - eslint: 10.7.0(jiti@2.7.0) + '@typescript-eslint/scope-manager': 8.70.1 + '@typescript-eslint/utils': 8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3) + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) optionalDependencies: - '@typescript-eslint/eslint-plugin': 8.64.0(@typescript-eslint/parser@8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3) + '@typescript-eslint/eslint-plugin': 8.70.1(@typescript-eslint/parser@8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3))(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3) typescript: 6.0.3 vitest: 4.1.10(@types/node@26.1.1)(vite@8.1.4(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.49.0)(yaml@2.9.0)) transitivePeerDependencies: @@ -5871,12 +6295,14 @@ snapshots: dependencies: acorn: 8.17.0 - acorn-jsx@5.3.2(acorn@8.17.0): + acorn-jsx@5.3.2(acorn@8.18.0): dependencies: - acorn: 8.17.0 + acorn: 8.18.0 acorn@8.17.0: {} + acorn@8.18.0: {} + ajv-formats@2.1.1(ajv@8.20.0): optionalDependencies: ajv: 8.20.0 @@ -5902,7 +6328,7 @@ snapshots: ansi-regex@5.0.1: {} - ansi-regex@6.2.2: {} + ansi-regex@6.3.0: {} ansi-styles@4.3.0: dependencies: @@ -5920,6 +6346,7 @@ snapshots: dependencies: call-bound: 1.0.4 is-array-buffer: 3.0.5 + optional: true array.prototype.flatmap@1.3.3: dependencies: @@ -5927,6 +6354,7 @@ snapshots: define-properties: 1.2.1 es-abstract: 1.24.2 es-shim-unscopables: 1.1.0 + optional: true arraybuffer.prototype.slice@1.0.4: dependencies: @@ -5937,52 +6365,33 @@ snapshots: es-errors: 1.3.0 get-intrinsic: 1.3.0 is-array-buffer: 3.0.5 + optional: true assertion-error@2.0.1: {} - astro-eslint-parser@1.4.0: + astro-eslint-parser@3.1.0(@emnapi/core@1.11.3)(@emnapi/runtime@1.11.3)(supports-color@9.4.0): dependencies: - '@astrojs/compiler': 3.0.1 - '@typescript-eslint/scope-manager': 8.64.0 - '@typescript-eslint/types': 8.64.0 - astrojs-compiler-sync: 1.1.1(@astrojs/compiler@3.0.1) - debug: 4.4.3 - entities: 7.0.1 - eslint-scope: 8.4.0 - eslint-visitor-keys: 4.2.1 - espree: 10.4.0 - fast-glob: 3.3.3 - is-glob: 4.0.3 + '@astrojs/compiler-rs': 0.4.1(@emnapi/core@1.11.3)(@emnapi/runtime@1.11.3) + '@typescript-eslint/scope-manager': 8.70.1 + '@typescript-eslint/types': 8.70.1 + debug: 4.4.3(supports-color@9.4.0) + eslint-scope: 9.1.2 + eslint-visitor-keys: 5.0.1 + espree: 11.2.0 semver: 7.8.5 + tinyglobby: 0.2.17 transitivePeerDependencies: + - '@emnapi/core' + - '@emnapi/runtime' - supports-color - astrojs-compiler-sync@1.1.1(@astrojs/compiler@3.0.1): - dependencies: - '@astrojs/compiler': 3.0.1 - synckit: 0.11.13 - - async-function@1.0.0: {} + async-function@1.0.0: + optional: true available-typed-arrays@1.0.7: dependencies: possible-typed-array-names: 1.1.0 - - babel-plugin-jsx-dom-expressions@0.40.7(@babel/core@7.29.7): - dependencies: - '@babel/core': 7.29.7 - '@babel/helper-module-imports': 7.18.6 - '@babel/plugin-syntax-jsx': 7.29.7(@babel/core@7.29.7) - '@babel/types': 7.29.7 - html-entities: 2.3.3 - parse5: 7.3.0 - - babel-preset-solid@1.9.12(@babel/core@7.29.7)(solid-js@1.9.14): - dependencies: - '@babel/core': 7.29.7 - babel-plugin-jsx-dom-expressions: 0.40.7(@babel/core@7.29.7) - optionalDependencies: - solid-js: 1.9.14 + optional: true bail@2.0.2: {} @@ -5992,27 +6401,24 @@ snapshots: baseline-browser-mapping@2.10.43: {} + baseline-browser-mapping@2.11.25: {} + binary-searching@2.0.5: {} boolbase@1.0.0: {} - brace-expansion@1.1.16: + brace-expansion@2.1.7: dependencies: balanced-match: 1.0.2 - concat-map: 0.0.1 - brace-expansion@2.1.2: + brace-expansion@5.0.12: dependencies: - balanced-match: 1.0.2 + balanced-match: 4.0.4 brace-expansion@5.0.7: dependencies: balanced-match: 4.0.4 - braces@3.0.3: - dependencies: - fill-range: 7.1.1 - browserslist@4.28.6: dependencies: baseline-browser-mapping: 2.10.43 @@ -6021,9 +6427,17 @@ snapshots: node-releases: 2.0.51 update-browserslist-db: 1.2.3(browserslist@4.28.6) + browserslist@4.29.0: + dependencies: + baseline-browser-mapping: 2.11.25 + caniuse-lite: 1.0.30001810 + electron-to-chromium: 1.5.437 + node-releases: 2.0.57 + update-browserslist-db: 1.3.3(browserslist@4.29.0) + buffer-from@1.1.2: {} - builtin-modules@5.3.0: {} + builtin-modules@5.4.0: {} bumpp@11.1.0: dependencies: @@ -6039,10 +6453,19 @@ snapshots: cac@7.0.0: {} + cacheable@2.5.0: + dependencies: + '@cacheable/memory': 2.2.0 + '@cacheable/utils': 2.5.0 + hookified: 1.15.1 + keyv: 5.6.0 + qified: 0.10.1 + call-bind-apply-helpers@1.0.2: dependencies: es-errors: 1.3.0 function-bind: 1.1.2 + optional: true call-bind@1.0.9: dependencies: @@ -6050,15 +6473,17 @@ snapshots: es-define-property: 1.0.1 get-intrinsic: 1.3.0 set-function-length: 1.2.2 + optional: true call-bound@1.0.4: dependencies: call-bind-apply-helpers: 1.0.2 get-intrinsic: 1.3.0 + optional: true caniuse-lite@1.0.30001805: {} - case-police@2.2.1: {} + caniuse-lite@1.0.30001810: {} ccount@2.0.1: {} @@ -6087,15 +6512,11 @@ snapshots: color-name@1.1.4: {} - colorette@2.0.20: {} - commander@2.20.3: {} - comment-parser@1.4.5: {} - comment-parser@1.4.7: {} - concat-map@0.0.1: {} + comment-parser@1.4.9: {} concat-stream@2.0.0: dependencies: @@ -6106,15 +6527,15 @@ snapshots: confbox@0.1.8: {} - confbox@0.2.4: {} + confbox@0.3.1: {} - consola@3.4.2: {} + convert-hrtime@5.0.0: {} convert-source-map@2.0.0: {} - core-js-compat@3.49.0: + core-js-compat@3.50.0: dependencies: - browserslist: 4.28.6 + browserslist: 4.29.0 cross-spawn@7.0.6: dependencies: @@ -6138,26 +6559,34 @@ snapshots: call-bound: 1.0.4 es-errors: 1.3.0 is-data-view: 1.0.2 + optional: true data-view-byte-length@1.0.2: dependencies: call-bound: 1.0.4 es-errors: 1.3.0 is-data-view: 1.0.2 + optional: true data-view-byte-offset@1.0.1: dependencies: call-bound: 1.0.4 es-errors: 1.3.0 is-data-view: 1.0.2 + optional: true - debug@3.2.7: + debug@3.2.7(supports-color@9.4.0): dependencies: ms: 2.1.3 + optionalDependencies: + supports-color: 9.4.0 + optional: true - debug@4.4.3: + debug@4.4.3(supports-color@9.4.0): dependencies: ms: 2.1.3 + optionalDependencies: + supports-color: 9.4.0 decode-named-character-reference@1.3.0: dependencies: @@ -6170,12 +6599,14 @@ snapshots: es-define-property: 1.0.1 es-errors: 1.3.0 gopd: 1.2.0 + optional: true define-properties@1.2.1: dependencies: define-data-property: 1.1.4 has-property-descriptors: 1.0.2 object-keys: 1.1.1 + optional: true defu@6.1.7: {} @@ -6220,11 +6651,14 @@ snapshots: call-bind-apply-helpers: 1.0.2 es-errors: 1.3.0 gopd: 1.2.0 + optional: true eastasianwidth@0.2.0: {} electron-to-chromium@1.5.389: {} + electron-to-chromium@1.5.437: {} + emoji-regex@10.6.0: {} emoji-regex@8.0.0: {} @@ -6233,17 +6667,26 @@ snapshots: empathic@2.0.1: {} + empathic@2.1.0: {} + enhanced-resolve@5.24.2: dependencies: graceful-fs: 4.2.11 tapable: 2.3.3 + enhanced-resolve@5.25.1: + dependencies: + graceful-fs: 4.2.11 + tapable: 2.3.3 + entities@4.5.0: {} entities@6.0.1: {} entities@7.0.1: {} + entities@8.1.0: {} + err-code@2.0.3: {} error-ex@1.3.4: @@ -6256,6 +6699,7 @@ snapshots: es-object-atoms: 1.1.2 is-callable: 1.2.7 object-inspect: 1.13.4 + optional: true es-abstract@1.24.2: dependencies: @@ -6313,10 +6757,13 @@ snapshots: typed-array-length: 1.0.8 unbox-primitive: 1.1.0 which-typed-array: 1.1.22 + optional: true - es-define-property@1.0.1: {} + es-define-property@1.0.1: + optional: true - es-errors@1.3.0: {} + es-errors@1.3.0: + optional: true es-html-parser@0.3.1: {} @@ -6325,6 +6772,7 @@ snapshots: es-object-atoms@1.1.2: dependencies: es-errors: 1.3.0 + optional: true es-set-tostringtag@2.1.0: dependencies: @@ -6332,10 +6780,12 @@ snapshots: get-intrinsic: 1.3.0 has-tostringtag: 1.0.2 hasown: 2.0.4 + optional: true es-shim-unscopables@1.1.0: dependencies: hasown: 2.0.4 + optional: true es-to-primitive@1.3.4: dependencies: @@ -6345,6 +6795,7 @@ snapshots: is-callable: 1.2.7 is-date-object: 1.1.0 is-symbol: 1.1.1 + optional: true esbuild@0.28.1: optionalDependencies: @@ -6381,20 +6832,15 @@ snapshots: escape-string-regexp@5.0.0: {} - eslint-compat-utils@0.5.1(eslint@10.7.0(jiti@2.7.0)): + eslint-compat-utils@0.5.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)): dependencies: - eslint: 10.7.0(jiti@2.7.0) + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) semver: 7.8.5 - eslint-compat-utils@0.6.5(eslint@10.7.0(jiti@2.7.0)): + eslint-config-flat-gitignore@2.4.0(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)): dependencies: - eslint: 10.7.0(jiti@2.7.0) - semver: 7.8.5 - - eslint-config-flat-gitignore@2.3.0(eslint@10.7.0(jiti@2.7.0)): - dependencies: - '@eslint/compat': 2.1.0(eslint@10.7.0(jiti@2.7.0)) - eslint: 10.7.0(jiti@2.7.0) + '@eslint/compat': 2.1.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)) + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) eslint-flat-config-utils@3.2.0: dependencies: @@ -6403,167 +6849,152 @@ snapshots: eslint-import-context@0.1.9(unrs-resolver@1.12.2): dependencies: - get-tsconfig: 4.14.0 + get-tsconfig: 4.14.3 stable-hash-x: 0.2.0 optionalDependencies: unrs-resolver: 1.12.2 - eslint-import-resolver-node@0.3.10: + eslint-import-resolver-node@0.3.10(supports-color@9.4.0): dependencies: - debug: 3.2.7 + debug: 3.2.7(supports-color@9.4.0) is-core-module: 2.16.2 resolve: 2.0.0-next.7 transitivePeerDependencies: - supports-color + optional: true - eslint-import-resolver-typescript@4.4.5(eslint-plugin-import-x@4.17.1(@typescript-eslint/utils@8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(eslint-import-resolver-node@0.3.10)(eslint@10.7.0(jiti@2.7.0)))(eslint@10.7.0(jiti@2.7.0)): + eslint-import-resolver-typescript@4.4.5(eslint-plugin-import-x@4.17.1(@typescript-eslint/utils@8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3))(eslint-import-resolver-node@0.3.10(supports-color@9.4.0))(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0))(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0): dependencies: - debug: 4.4.3 - eslint: 10.7.0(jiti@2.7.0) + debug: 4.4.3(supports-color@9.4.0) + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) eslint-import-context: 0.1.9(unrs-resolver@1.12.2) - get-tsconfig: 4.14.0 + get-tsconfig: 4.14.3 is-bun-module: 2.0.0 stable-hash-x: 0.2.0 tinyglobby: 0.2.17 unrs-resolver: 1.12.2 optionalDependencies: - eslint-plugin-import-x: 4.17.1(@typescript-eslint/utils@8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(eslint-import-resolver-node@0.3.10)(eslint@10.7.0(jiti@2.7.0)) + eslint-plugin-import-x: 4.17.1(@typescript-eslint/utils@8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3))(eslint-import-resolver-node@0.3.10(supports-color@9.4.0))(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0) transitivePeerDependencies: - supports-color - eslint-json-compat-utils@0.2.3(eslint@10.7.0(jiti@2.7.0))(jsonc-eslint-parser@3.1.0): + eslint-json-compat-utils@0.2.3(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(jsonc-eslint-parser@3.3.0): dependencies: - eslint: 10.7.0(jiti@2.7.0) + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) esquery: 1.7.0 - jsonc-eslint-parser: 3.1.0 + jsonc-eslint-parser: 3.3.0 - eslint-mdx@3.8.1(eslint@10.7.0(jiti@2.7.0)): + eslint-mdx@3.8.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0): dependencies: - acorn: 8.17.0 - acorn-jsx: 5.3.2(acorn@8.17.0) - eslint: 10.7.0(jiti@2.7.0) + acorn: 8.18.0 + acorn-jsx: 5.3.2(acorn@8.18.0) + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) espree: 11.2.0 estree-util-visit: 2.0.0 - remark-mdx: 3.1.1 - remark-parse: 11.0.0 + remark-mdx: 3.1.1(supports-color@9.4.0) + remark-parse: 11.0.0(supports-color@9.4.0) remark-stringify: 11.0.0 synckit: 0.11.13 unified: 11.0.5 - unified-engine: 11.2.2 + unified-engine: 11.2.2(supports-color@9.4.0) unist-util-visit: 5.1.0 vfile: 6.0.3 transitivePeerDependencies: - - bluebird - - supports-color - - eslint-module-utils@2.14.0(@typescript-eslint/parser@8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(eslint-import-resolver-node@0.3.10)(eslint-import-resolver-typescript@4.4.5(eslint-plugin-import-x@4.17.1(@typescript-eslint/utils@8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(eslint-import-resolver-node@0.3.10)(eslint@10.7.0(jiti@2.7.0)))(eslint@10.7.0(jiti@2.7.0)))(eslint@10.7.0(jiti@2.7.0)): - dependencies: - debug: 3.2.7 - optionalDependencies: - '@typescript-eslint/parser': 8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3) - eslint: 10.7.0(jiti@2.7.0) - eslint-import-resolver-node: 0.3.10 - eslint-import-resolver-typescript: 4.4.5(eslint-plugin-import-x@4.17.1(@typescript-eslint/utils@8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(eslint-import-resolver-node@0.3.10)(eslint@10.7.0(jiti@2.7.0)))(eslint@10.7.0(jiti@2.7.0)) - transitivePeerDependencies: - - supports-color - - eslint-plugin-array-func@5.1.1(eslint@10.7.0(jiti@2.7.0)): - dependencies: - eslint: 10.7.0(jiti@2.7.0) - - eslint-plugin-astro@1.7.0(eslint@10.7.0(jiti@2.7.0)): - dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.7.0(jiti@2.7.0)) - '@jridgewell/sourcemap-codec': 1.5.5 - '@typescript-eslint/types': 8.64.0 - astro-eslint-parser: 1.4.0 - eslint: 10.7.0(jiti@2.7.0) - eslint-compat-utils: 0.6.5(eslint@10.7.0(jiti@2.7.0)) - globals: 16.5.0 - postcss: 8.5.19 - postcss-selector-parser: 7.1.4 - transitivePeerDependencies: + - bluebird - supports-color - eslint-plugin-case-police@2.2.1(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3): + eslint-plugin-array-func@5.1.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)): + dependencies: + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) + + eslint-plugin-astro@3.2.1(@emnapi/core@1.11.3)(@emnapi/runtime@1.11.3)(@typescript-eslint/parser@8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3))(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript-eslint@8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3)): dependencies: - '@typescript-eslint/utils': 8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3) - case-police: 2.2.1 - eslint: 10.7.0(jiti@2.7.0) + '@eslint-community/eslint-utils': 4.10.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)) + '@jridgewell/sourcemap-codec': 1.6.0 + '@typescript-eslint/types': 8.70.1 + astro-eslint-parser: 3.1.0(@emnapi/core@1.11.3)(@emnapi/runtime@1.11.3)(supports-color@9.4.0) + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) + espree: 11.2.0 + globals: 17.12.0 + postcss: 8.5.28 + postcss-selector-parser: 7.1.6 synckit: 0.11.13 + optionalDependencies: + '@typescript-eslint/parser': 8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3) + typescript-eslint: 8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3) transitivePeerDependencies: + - '@emnapi/core' + - '@emnapi/runtime' - supports-color - - typescript - eslint-plugin-command@3.5.2(@typescript-eslint/rule-tester@8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(@typescript-eslint/typescript-estree@8.64.0(typescript@6.0.3))(@typescript-eslint/utils@8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(eslint@10.7.0(jiti@2.7.0)): + eslint-plugin-command@4.0.0(@typescript-eslint/typescript-estree@8.70.1(supports-color@9.4.0)(typescript@6.0.3))(@typescript-eslint/utils@8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3))(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)): dependencies: - '@es-joy/jsdoccomment': 0.84.0 - '@typescript-eslint/rule-tester': 8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3) - '@typescript-eslint/typescript-estree': 8.64.0(typescript@6.0.3) - '@typescript-eslint/utils': 8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3) - eslint: 10.7.0(jiti@2.7.0) + '@es-joy/jsdoccomment': 0.92.0 + '@typescript-eslint/typescript-estree': 8.70.1(supports-color@9.4.0)(typescript@6.0.3) + '@typescript-eslint/utils': 8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3) + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) - eslint-plugin-de-morgan@2.1.3(eslint@10.7.0(jiti@2.7.0)): + eslint-plugin-de-morgan@2.2.0(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)): dependencies: - eslint: 10.7.0(jiti@2.7.0) + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) - eslint-plugin-es-x@7.8.0(eslint@10.7.0(jiti@2.7.0)): + eslint-plugin-es-x@7.8.0(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)): dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.7.0(jiti@2.7.0)) + '@eslint-community/eslint-utils': 4.10.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)) '@eslint-community/regexpp': 4.12.2 - eslint: 10.7.0(jiti@2.7.0) - eslint-compat-utils: 0.5.1(eslint@10.7.0(jiti@2.7.0)) + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) + eslint-compat-utils: 0.5.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)) - eslint-plugin-html@8.1.4: + eslint-plugin-html@8.2.0: dependencies: htmlparser2: 10.1.0 - eslint-plugin-import-lite@0.6.0(eslint@10.7.0(jiti@2.7.0)): + eslint-plugin-import-lite@0.6.0(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)): dependencies: - eslint: 10.7.0(jiti@2.7.0) + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) - eslint-plugin-import-x@4.17.1(@typescript-eslint/utils@8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(eslint-import-resolver-node@0.3.10)(eslint@10.7.0(jiti@2.7.0)): + eslint-plugin-import-x@4.17.1(@typescript-eslint/utils@8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3))(eslint-import-resolver-node@0.3.10(supports-color@9.4.0))(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0): dependencies: - '@typescript-eslint/types': 8.64.0 - comment-parser: 1.4.7 - debug: 4.4.3 - eslint: 10.7.0(jiti@2.7.0) + '@typescript-eslint/types': 8.70.1 + comment-parser: 1.4.9 + debug: 4.4.3(supports-color@9.4.0) + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) eslint-import-context: 0.1.9(unrs-resolver@1.12.2) is-glob: 4.0.3 - minimatch: 10.2.5 + minimatch: 10.2.6 semver: 7.8.5 stable-hash-x: 0.2.0 unrs-resolver: 1.12.2 optionalDependencies: - '@typescript-eslint/utils': 8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3) - eslint-import-resolver-node: 0.3.10 + '@typescript-eslint/utils': 8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3) + eslint-import-resolver-node: 0.3.10(supports-color@9.4.0) transitivePeerDependencies: - supports-color - eslint-plugin-jsonc@3.3.0(eslint@10.7.0(jiti@2.7.0)): + eslint-plugin-jsonc@3.4.2(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)): dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.7.0(jiti@2.7.0)) + '@eslint-community/eslint-utils': 4.10.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)) '@eslint/core': 1.2.1 - '@eslint/plugin-kit': 0.7.2 + '@eslint/plugin-kit': 0.7.3 '@ota-meshi/ast-token-store': 0.3.0 diff-sequences: 29.6.3 - eslint: 10.7.0(jiti@2.7.0) - eslint-json-compat-utils: 0.2.3(eslint@10.7.0(jiti@2.7.0))(jsonc-eslint-parser@3.1.0) - jsonc-eslint-parser: 3.1.0 + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) + eslint-json-compat-utils: 0.2.3(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(jsonc-eslint-parser@3.3.0) + jsonc-eslint-parser: 3.3.0 natural-compare: 1.4.0 synckit: 0.11.13 transitivePeerDependencies: - '@eslint/json' - eslint-plugin-mdx@3.8.1(eslint@10.7.0(jiti@2.7.0)): + eslint-plugin-mdx@3.8.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0): dependencies: - eslint: 10.7.0(jiti@2.7.0) - eslint-mdx: 3.8.1(eslint@10.7.0(jiti@2.7.0)) - mdast-util-from-markdown: 2.0.3 - mdast-util-mdx: 3.0.0 + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) + eslint-mdx: 3.8.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0) + mdast-util-from-markdown: 2.0.3(supports-color@9.4.0) + mdast-util-mdx: 3.0.0(supports-color@9.4.0) micromark-extension-mdxjs: 3.0.0 - remark-mdx: 3.1.1 - remark-parse: 11.0.0 + remark-mdx: 3.1.1(supports-color@9.4.0) + remark-parse: 11.0.0(supports-color@9.4.0) remark-stringify: 11.0.0 synckit: 0.11.13 unified: 11.0.5 @@ -6573,13 +7004,13 @@ snapshots: - remark-lint-file-extension - supports-color - eslint-plugin-n@18.2.2(eslint@10.7.0(jiti@2.7.0))(ts-declaration-location@1.0.7(typescript@6.0.3))(typescript@6.0.3): + eslint-plugin-n@18.3.0(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(ts-declaration-location@1.0.7(typescript@6.0.3))(typescript@6.0.3): dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.7.0(jiti@2.7.0)) - enhanced-resolve: 5.24.2 - eslint: 10.7.0(jiti@2.7.0) - eslint-plugin-es-x: 7.8.0(eslint@10.7.0(jiti@2.7.0)) - get-tsconfig: 4.14.0 + '@eslint-community/eslint-utils': 4.10.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)) + enhanced-resolve: 5.25.1 + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) + eslint-plugin-es-x: 7.8.0(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)) + get-tsconfig: 4.14.3 globals: 15.15.0 globrex: 0.1.2 ignore: 5.3.2 @@ -6588,67 +7019,58 @@ snapshots: ts-declaration-location: 1.0.7(typescript@6.0.3) typescript: 6.0.3 - eslint-plugin-no-await-in-promise@3.0.1(eslint@10.7.0(jiti@2.7.0)): - dependencies: - eslint: 10.7.0(jiti@2.7.0) - - eslint-plugin-no-explicit-type-exports@0.12.1(@typescript-eslint/parser@8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(eslint-import-resolver-typescript@4.4.5(eslint-plugin-import-x@4.17.1(@typescript-eslint/utils@8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(eslint-import-resolver-node@0.3.10)(eslint@10.7.0(jiti@2.7.0)))(eslint@10.7.0(jiti@2.7.0)))(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3): + eslint-plugin-no-await-in-promise@3.0.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)): dependencies: - '@typescript-eslint/experimental-utils': 2.34.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3) - '@typescript-eslint/parser': 8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3) - eslint: 10.7.0(jiti@2.7.0) - eslint-import-resolver-node: 0.3.10 - eslint-module-utils: 2.14.0(@typescript-eslint/parser@8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(eslint-import-resolver-node@0.3.10)(eslint-import-resolver-typescript@4.4.5(eslint-plugin-import-x@4.17.1(@typescript-eslint/utils@8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(eslint-import-resolver-node@0.3.10)(eslint@10.7.0(jiti@2.7.0)))(eslint@10.7.0(jiti@2.7.0)))(eslint@10.7.0(jiti@2.7.0)) - transitivePeerDependencies: - - eslint-import-resolver-typescript - - eslint-import-resolver-webpack - - supports-color - - typescript + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) eslint-plugin-no-only-tests@3.4.0: {} eslint-plugin-only-error@1.0.2: {} - eslint-plugin-perfectionist@5.10.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3): + eslint-plugin-perfectionist@5.12.0(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3): dependencies: - '@typescript-eslint/utils': 8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3) - eslint: 10.7.0(jiti@2.7.0) + '@typescript-eslint/types': 8.70.1 + '@typescript-eslint/utils': 8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3) + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) natural-orderby: 5.0.0 transitivePeerDependencies: - supports-color - typescript - eslint-plugin-pnpm@1.6.1(eslint@10.7.0(jiti@2.7.0)): + eslint-plugin-pnpm@1.9.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)): dependencies: - empathic: 2.0.1 - eslint: 10.7.0(jiti@2.7.0) - jsonc-eslint-parser: 3.1.0 + empathic: 2.1.0 + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) + eslint-json-compat-utils: 0.2.3(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(jsonc-eslint-parser@3.3.0) + jsonc-eslint-parser: 3.3.0 pathe: 2.0.3 - pnpm-workspace-yaml: 1.6.1 + pnpm-workspace-yaml: 1.9.1 tinyglobby: 0.2.17 - yaml: 2.9.0 + yaml: 2.9.1 yaml-eslint-parser: 2.1.0 + transitivePeerDependencies: + - '@eslint/json' - eslint-plugin-promise@7.3.0(eslint@10.7.0(jiti@2.7.0)): + eslint-plugin-promise@7.3.0(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)): dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.7.0(jiti@2.7.0)) - eslint: 10.7.0(jiti@2.7.0) + '@eslint-community/eslint-utils': 4.10.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)) + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) - eslint-plugin-regexp@3.1.1(eslint@10.7.0(jiti@2.7.0)): + eslint-plugin-regexp@3.3.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)): dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.7.0(jiti@2.7.0)) + '@eslint-community/eslint-utils': 4.10.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)) '@eslint-community/regexpp': 4.12.2 - comment-parser: 1.4.7 - eslint: 10.7.0(jiti@2.7.0) - jsdoc-type-pratt-parser: 7.2.0 + comment-parser: 1.4.9 + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) + jsdoc-type-pratt-parser: 9.2.2 refa: 0.12.1 regexp-ast-analysis: 0.7.1 scslre: 0.3.0 - eslint-plugin-solid@0.14.5(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3): + eslint-plugin-solid@0.17.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3): dependencies: - '@typescript-eslint/utils': 8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3) - eslint: 10.7.0(jiti@2.7.0) + '@typescript-eslint/utils': 8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3) + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) estraverse: 5.3.0 is-html: 2.0.0 kebab-case: 1.0.2 @@ -6658,64 +7080,69 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-plugin-toml@1.4.0(eslint@10.7.0(jiti@2.7.0)): + eslint-plugin-toml@1.5.0(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0): dependencies: '@eslint/core': 1.2.1 - '@eslint/plugin-kit': 0.7.2 + '@eslint/plugin-kit': 0.7.3 '@ota-meshi/ast-token-store': 0.3.0 - debug: 4.4.3 - eslint: 10.7.0(jiti@2.7.0) + debug: 4.4.3(supports-color@9.4.0) + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) toml-eslint-parser: 1.0.3 transitivePeerDependencies: - supports-color - eslint-plugin-unicorn@65.0.1(eslint@10.7.0(jiti@2.7.0)): + eslint-plugin-unicorn@74.0.0(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)): dependencies: - '@babel/helper-validator-identifier': 7.29.7 - '@eslint-community/eslint-utils': 4.9.1(eslint@10.7.0(jiti@2.7.0)) + '@eslint-community/eslint-utils': 4.10.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)) + '@eslint/css-tree': 4.1.1 + browserslist: 4.29.0 change-case: 5.4.4 ci-info: 4.4.0 - core-js-compat: 3.49.0 + core-js-compat: 3.50.0 detect-indent: 7.0.2 - eslint: 10.7.0(jiti@2.7.0) + entities: 8.1.0 + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) find-up-simple: 1.0.1 - globals: 17.7.0 + globals: 17.12.0 indent-string: 5.0.0 is-builtin-module: 5.0.0 - jsesc: 3.1.0 + is-identifier: 1.1.0 pluralize: 8.0.0 - regjsparser: 0.13.2 + quote-js-string: 0.1.0 + regjsparser: 0.13.3 + reserved-identifiers: 1.2.0 semver: 7.8.5 strip-indent: 4.1.1 + yaml: 2.9.1 - eslint-plugin-unused-imports@4.4.1(@typescript-eslint/eslint-plugin@8.64.0(@typescript-eslint/parser@8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(eslint@10.7.0(jiti@2.7.0)): + eslint-plugin-unused-imports@4.4.1(@typescript-eslint/eslint-plugin@8.70.1(@typescript-eslint/parser@8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3))(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3))(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)): dependencies: - eslint: 10.7.0(jiti@2.7.0) + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) optionalDependencies: - '@typescript-eslint/eslint-plugin': 8.64.0(@typescript-eslint/parser@8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3) + '@typescript-eslint/eslint-plugin': 8.70.1(@typescript-eslint/parser@8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3))(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3) - eslint-plugin-vue@10.9.2(@stylistic/eslint-plugin@5.10.0(eslint@10.7.0(jiti@2.7.0)))(@typescript-eslint/parser@8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(eslint@10.7.0(jiti@2.7.0))(vue-eslint-parser@10.4.1(eslint@10.7.0(jiti@2.7.0))): + eslint-plugin-vue@10.11.0(@stylistic/eslint-plugin@5.10.0(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)))(@typescript-eslint/parser@8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3))(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(vue-eslint-parser@10.4.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)): dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.7.0(jiti@2.7.0)) - eslint: 10.7.0(jiti@2.7.0) + '@eslint-community/eslint-utils': 4.10.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)) + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) natural-compare: 1.4.0 nth-check: 2.1.1 - postcss-selector-parser: 7.1.4 + postcss-selector-parser: 7.1.6 semver: 7.8.5 - vue-eslint-parser: 10.4.1(eslint@10.7.0(jiti@2.7.0)) - xml-name-validator: 4.0.0 + vue-eslint-parser: 10.4.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0) + xml-name-validator: 5.0.0 optionalDependencies: - '@stylistic/eslint-plugin': 5.10.0(eslint@10.7.0(jiti@2.7.0)) - '@typescript-eslint/parser': 8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3) + '@stylistic/eslint-plugin': 5.10.0(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)) + '@typescript-eslint/parser': 8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3) - eslint-plugin-yml@3.6.0(eslint@10.7.0(jiti@2.7.0)): + eslint-plugin-yml@3.8.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)): dependencies: '@eslint/core': 1.2.1 - '@eslint/plugin-kit': 0.7.2 + '@eslint/plugin-kit': 0.7.3 '@ota-meshi/ast-token-store': 0.3.0 diff-sequences: 29.6.3 escape-string-regexp: 5.0.0 - eslint: 10.7.0(jiti@2.7.0) + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) natural-compare: 1.4.0 yaml-eslint-parser: 2.1.0 @@ -6724,11 +7151,6 @@ snapshots: esrecurse: 4.3.0 estraverse: 4.3.0 - eslint-scope@8.4.0: - dependencies: - esrecurse: 4.3.0 - estraverse: 5.3.0 - eslint-scope@9.1.2: dependencies: '@types/esrecurse': 4.3.1 @@ -6736,33 +7158,27 @@ snapshots: esrecurse: 4.3.0 estraverse: 5.3.0 - eslint-utils@2.1.0: - dependencies: - eslint-visitor-keys: 1.3.0 - - eslint-visitor-keys@1.3.0: {} - eslint-visitor-keys@3.4.3: {} eslint-visitor-keys@4.2.1: {} eslint-visitor-keys@5.0.1: {} - eslint@10.7.0(jiti@2.7.0): + eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0): dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.7.0(jiti@2.7.0)) + '@eslint-community/eslint-utils': 4.10.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0)) '@eslint-community/regexpp': 4.12.2 - '@eslint/config-array': 0.23.5 - '@eslint/config-helpers': 0.6.0 + '@eslint/config-array': 0.23.5(supports-color@9.4.0) + '@eslint/config-helpers': 0.7.0 '@eslint/core': 1.2.1 - '@eslint/plugin-kit': 0.7.2 + '@eslint/plugin-kit': 0.7.3 '@humanfs/node': 0.16.8 '@humanwhocodes/module-importer': 1.0.1 '@humanwhocodes/retry': 0.4.3 '@types/estree': 1.0.9 ajv: 6.15.0 cross-spawn: 7.0.6 - debug: 4.4.3 + debug: 4.4.3(supports-color@9.4.0) escape-string-regexp: 4.0.0 eslint-scope: 9.1.2 eslint-visitor-keys: 5.0.1 @@ -6770,14 +7186,14 @@ snapshots: esquery: 1.7.0 esutils: 2.0.3 fast-deep-equal: 3.1.3 - file-entry-cache: 8.0.0 + file-entry-cache: 11.1.5 find-up: 5.0.0 glob-parent: 6.0.2 ignore: 5.3.2 imurmurhash: 0.1.4 is-glob: 4.0.3 json-stable-stringify-without-jsonify: 1.0.1 - minimatch: 10.2.5 + minimatch: 10.2.6 natural-compare: 1.4.0 optionator: 0.9.4 optionalDependencies: @@ -6787,20 +7203,27 @@ snapshots: espree@10.4.0: dependencies: - acorn: 8.17.0 - acorn-jsx: 5.3.2(acorn@8.17.0) + acorn: 8.18.0 + acorn-jsx: 5.3.2(acorn@8.18.0) eslint-visitor-keys: 4.2.1 espree@11.2.0: dependencies: - acorn: 8.17.0 - acorn-jsx: 5.3.2(acorn@8.17.0) + acorn: 8.18.0 + acorn-jsx: 5.3.2(acorn@8.18.0) eslint-visitor-keys: 5.0.1 esquery@1.7.0: dependencies: estraverse: 5.3.0 + esrap@2.3.9(@typescript-eslint/types@8.70.1): + dependencies: + '@jridgewell/sourcemap-codec': 1.5.5 + optionalDependencies: + '@typescript-eslint/types': 8.70.1 + optional: true + esrecurse@4.3.0: dependencies: estraverse: 5.3.0 @@ -6826,30 +7249,18 @@ snapshots: expect-type@1.4.0: {} - exsolve@1.1.0: {} + exsolve@1.1.1: {} extend@3.0.2: {} fast-deep-equal@3.1.3: {} - fast-glob@3.3.3: - dependencies: - '@nodelib/fs.stat': 2.0.5 - '@nodelib/fs.walk': 1.2.8 - glob-parent: 5.1.2 - merge2: 1.4.1 - micromatch: 4.0.8 - fast-json-stable-stringify@2.1.0: {} fast-levenshtein@2.0.6: {} fast-uri@3.1.3: {} - fastq@1.20.1: - dependencies: - reusify: 1.1.0 - fdir@6.5.0(picomatch@4.0.5): optionalDependencies: picomatch: 4.0.5 @@ -6857,13 +7268,9 @@ snapshots: fflate@0.8.3: optional: true - file-entry-cache@8.0.0: + file-entry-cache@11.1.5: dependencies: - flat-cache: 4.0.1 - - fill-range@7.1.1: - dependencies: - to-regex-range: 5.0.1 + flat-cache: 6.1.23 find-up-simple@1.0.1: {} @@ -6872,28 +7279,31 @@ snapshots: locate-path: 6.0.0 path-exists: 4.0.0 - flat-cache@4.0.1: + flat-cache@6.1.23: dependencies: - flatted: 3.4.2 - keyv: 4.5.4 + cacheable: 2.5.0 + flatted: 3.4.4 + hookified: 1.15.1 - flatted@3.4.2: {} + flatted@3.4.4: {} for-each@0.3.5: dependencies: is-callable: 1.2.7 + optional: true foreground-child@3.3.1: dependencies: cross-spawn: 7.0.6 signal-exit: 4.1.0 - fs.realpath@1.0.0: {} - fsevents@2.3.3: optional: true - function-bind@1.1.2: {} + function-bind@1.1.2: + optional: true + + function-timeout@1.0.2: {} function.prototype.name@1.2.0: dependencies: @@ -6906,10 +7316,13 @@ snapshots: hasown: 2.0.4 is-callable: 1.2.7 is-document.all: 1.0.0 + optional: true - functions-have-names@1.2.3: {} + functions-have-names@1.2.3: + optional: true - generator-function@2.0.1: {} + generator-function@2.0.1: + optional: true gensync@1.0.0-beta.2: {} @@ -6925,19 +7338,22 @@ snapshots: has-symbols: 1.1.0 hasown: 2.0.4 math-intrinsics: 1.1.0 + optional: true get-proto@1.0.1: dependencies: dunder-proto: 1.0.1 es-object-atoms: 1.1.2 + optional: true get-symbol-description@1.1.0: dependencies: call-bound: 1.0.4 es-errors: 1.3.0 get-intrinsic: 1.3.0 + optional: true - get-tsconfig@4.14.0: + get-tsconfig@4.14.3: dependencies: resolve-pkg-maps: 1.0.0 @@ -6945,10 +7361,6 @@ snapshots: dependencies: resolve-pkg-maps: 1.0.0 - glob-parent@5.1.2: - dependencies: - is-glob: 4.0.3 - glob-parent@6.0.2: dependencies: is-glob: 4.0.3 @@ -6962,56 +7374,61 @@ snapshots: package-json-from-dist: 1.0.1 path-scurry: 1.11.1 - glob@7.2.3: - dependencies: - fs.realpath: 1.0.0 - inflight: 1.0.6 - inherits: 2.0.4 - minimatch: 3.1.5 - once: 1.4.0 - path-is-absolute: 1.0.1 - globals@15.15.0: {} - globals@16.5.0: {} - - globals@17.7.0: {} + globals@17.12.0: {} globalthis@1.0.4: dependencies: define-properties: 1.2.1 gopd: 1.2.0 + optional: true globrex@0.1.2: {} - gopd@1.2.0: {} + gopd@1.2.0: + optional: true graceful-fs@4.2.11: {} - has-bigints@1.1.0: {} + has-bigints@1.1.0: + optional: true has-flag@4.0.0: {} has-property-descriptors@1.0.2: dependencies: es-define-property: 1.0.1 + optional: true has-proto@1.2.0: dependencies: dunder-proto: 1.0.1 + optional: true - has-symbols@1.1.0: {} + has-symbols@1.1.0: + optional: true has-tostringtag@1.0.2: dependencies: has-symbols: 1.1.0 + optional: true + + hashery@1.5.1: + dependencies: + hookified: 1.15.1 hasown@2.0.4: dependencies: function-bind: 1.1.2 + optional: true hookable@6.1.1: {} + hookified@1.15.1: {} + + hookified@2.2.0: {} + hosted-git-info@7.0.2: dependencies: lru-cache: 10.4.3 @@ -7021,7 +7438,7 @@ snapshots: html-standard@0.0.13: dependencies: vscode-css-languageservice: 6.3.10 - vscode-languageserver-textdocument: 1.0.12 + vscode-languageserver-textdocument: 1.0.14 html-tags@3.3.1: {} @@ -7032,10 +7449,16 @@ snapshots: domutils: 3.2.2 entities: 7.0.1 + identifier-regex@1.1.0: + dependencies: + reserved-identifiers: 1.2.0 + ignore@5.3.2: {} ignore@6.0.2: {} + ignore@7.0.10: {} + ignore@7.0.6: {} import-meta-resolve@4.2.0: {} @@ -7048,11 +7471,6 @@ snapshots: indent-string@5.0.0: {} - inflight@1.0.6: - dependencies: - once: 1.4.0 - wrappy: 1.0.2 - inherits@2.0.4: {} ini@4.1.3: {} @@ -7064,6 +7482,7 @@ snapshots: es-errors: 1.3.0 hasown: 2.0.4 side-channel: 1.1.1 + optional: true is-alphabetical@2.0.1: {} @@ -7077,6 +7496,7 @@ snapshots: call-bind: 1.0.9 call-bound: 1.0.4 get-intrinsic: 1.3.0 + optional: true is-arrayish@0.2.1: {} @@ -7087,46 +7507,54 @@ snapshots: get-proto: 1.0.1 has-tostringtag: 1.0.2 safe-regex-test: 1.1.0 + optional: true is-bigint@1.1.0: dependencies: has-bigints: 1.1.0 + optional: true is-boolean-object@1.2.2: dependencies: call-bound: 1.0.4 has-tostringtag: 1.0.2 + optional: true is-builtin-module@5.0.0: dependencies: - builtin-modules: 5.3.0 + builtin-modules: 5.4.0 is-bun-module@2.0.0: dependencies: semver: 7.8.5 - is-callable@1.2.7: {} + is-callable@1.2.7: + optional: true is-core-module@2.16.2: dependencies: hasown: 2.0.4 + optional: true is-data-view@1.0.2: dependencies: call-bound: 1.0.4 get-intrinsic: 1.3.0 is-typed-array: 1.1.15 + optional: true is-date-object@1.1.0: dependencies: call-bound: 1.0.4 has-tostringtag: 1.0.2 + optional: true is-decimal@2.0.1: {} is-document.all@1.0.0: dependencies: call-bound: 1.0.4 + optional: true is-empty@1.2.0: {} @@ -7135,6 +7563,7 @@ snapshots: is-finalizationregistry@1.1.1: dependencies: call-bound: 1.0.4 + optional: true is-fullwidth-code-point@3.0.0: {} @@ -7145,6 +7574,7 @@ snapshots: get-proto: 1.0.1 has-tostringtag: 1.0.2 safe-regex-test: 1.1.0 + optional: true is-glob@4.0.3: dependencies: @@ -7156,63 +7586,84 @@ snapshots: dependencies: html-tags: 3.3.1 - is-map@2.0.3: {} + is-identifier@1.1.0: + dependencies: + identifier-regex: 1.1.0 + super-regex: 1.1.0 + + is-map@2.0.3: + optional: true - is-negative-zero@2.0.3: {} + is-negative-zero@2.0.3: + optional: true is-number-object@1.1.1: dependencies: call-bound: 1.0.4 has-tostringtag: 1.0.2 - - is-number@7.0.0: {} + optional: true is-plain-obj@4.1.0: {} + is-reference@3.0.3: + dependencies: + '@types/estree': 1.0.9 + optional: true + is-regex@1.2.1: dependencies: call-bound: 1.0.4 gopd: 1.2.0 has-tostringtag: 1.0.2 hasown: 2.0.4 + optional: true - is-set@2.0.3: {} + is-set@2.0.3: + optional: true is-shared-array-buffer@1.0.4: dependencies: call-bound: 1.0.4 + optional: true is-string@1.1.1: dependencies: call-bound: 1.0.4 has-tostringtag: 1.0.2 + optional: true is-symbol@1.1.1: dependencies: call-bound: 1.0.4 has-symbols: 1.1.0 safe-regex-test: 1.1.0 + optional: true is-typed-array@1.1.15: dependencies: which-typed-array: 1.1.22 + optional: true - is-weakmap@2.0.2: {} + is-weakmap@2.0.2: + optional: true is-weakref@1.1.1: dependencies: call-bound: 1.0.4 + optional: true is-weakset@2.0.4: dependencies: call-bound: 1.0.4 get-intrinsic: 1.3.0 + optional: true is-what@4.1.16: {} is-what@5.5.0: {} - isarray@2.0.5: {} + isarray@2.0.5: + optional: true isexe@2.0.0: {} @@ -7234,14 +7685,17 @@ snapshots: js-tokens@4.0.0: {} - jsdoc-type-pratt-parser@7.1.1: {} + jsdoc-type-pratt-parser@9.0.1: + dependencies: + '@types/estree': 1.0.9 - jsdoc-type-pratt-parser@7.2.0: {} + jsdoc-type-pratt-parser@9.2.2: + dependencies: + '@types/estree': 1.0.9 + '@types/node': 26.6.2 jsesc@3.1.0: {} - json-buffer@3.0.1: {} - json-parse-even-better-errors@3.0.2: {} json-schema-traverse@0.4.1: {} @@ -7252,19 +7706,19 @@ snapshots: json5@2.2.3: {} - jsonc-eslint-parser@3.1.0: + jsonc-eslint-parser@3.3.0: dependencies: - acorn: 8.17.0 + acorn: 8.18.0 eslint-visitor-keys: 5.0.1 - semver: 7.8.5 + verkit: 0.3.2 jsonc-parser@3.3.1: {} kebab-case@1.0.2: {} - keyv@4.5.4: + keyv@5.6.0: dependencies: - json-buffer: 3.0.1 + '@keyv/serialize': 1.1.1 known-css-properties@0.30.0: {} @@ -7336,17 +7790,13 @@ snapshots: local-pkg@1.2.1: dependencies: mlly: 1.8.2 - pkg-types: 2.3.1 + pkg-types: 2.3.3 quansync: 0.2.11 locate-path@6.0.0: dependencies: p-locate: 5.0.0 - lodash.merge@4.6.2: {} - - lodash@4.18.1: {} - longest-streak@3.1.0: {} lru-cache@10.4.3: {} @@ -7362,16 +7812,23 @@ snapshots: dependencies: '@jridgewell/sourcemap-codec': 1.5.5 - math-intrinsics@1.1.0: {} + make-asynchronous@1.1.0: + dependencies: + p-event: 6.0.1 + type-fest: 4.41.0 + web-worker: 1.5.0 - mdast-util-from-markdown@2.0.3: + math-intrinsics@1.1.0: + optional: true + + mdast-util-from-markdown@2.0.3(supports-color@9.4.0): dependencies: '@types/mdast': 4.0.4 '@types/unist': 3.0.3 decode-named-character-reference: 1.3.0 devlop: 1.1.0 mdast-util-to-string: 4.0.0 - micromark: 4.0.2 + micromark: 4.0.2(supports-color@9.4.0) micromark-util-decode-numeric-character-reference: 2.0.2 micromark-util-decode-string: 2.0.1 micromark-util-normalize-identifier: 2.0.1 @@ -7381,18 +7838,18 @@ snapshots: transitivePeerDependencies: - supports-color - mdast-util-mdx-expression@2.0.1: + mdast-util-mdx-expression@2.0.1(supports-color@9.4.0): dependencies: '@types/estree-jsx': 1.0.5 '@types/hast': 3.0.5 '@types/mdast': 4.0.4 devlop: 1.1.0 - mdast-util-from-markdown: 2.0.3 + mdast-util-from-markdown: 2.0.3(supports-color@9.4.0) mdast-util-to-markdown: 2.1.2 transitivePeerDependencies: - supports-color - mdast-util-mdx-jsx@3.2.0: + mdast-util-mdx-jsx@3.2.0(supports-color@9.4.0): dependencies: '@types/estree-jsx': 1.0.5 '@types/hast': 3.0.5 @@ -7400,7 +7857,7 @@ snapshots: '@types/unist': 3.0.3 ccount: 2.0.1 devlop: 1.1.0 - mdast-util-from-markdown: 2.0.3 + mdast-util-from-markdown: 2.0.3(supports-color@9.4.0) mdast-util-to-markdown: 2.1.2 parse-entities: 4.0.2 stringify-entities: 4.0.4 @@ -7409,23 +7866,23 @@ snapshots: transitivePeerDependencies: - supports-color - mdast-util-mdx@3.0.0: + mdast-util-mdx@3.0.0(supports-color@9.4.0): dependencies: - mdast-util-from-markdown: 2.0.3 - mdast-util-mdx-expression: 2.0.1 - mdast-util-mdx-jsx: 3.2.0 - mdast-util-mdxjs-esm: 2.0.1 + mdast-util-from-markdown: 2.0.3(supports-color@9.4.0) + mdast-util-mdx-expression: 2.0.1(supports-color@9.4.0) + mdast-util-mdx-jsx: 3.2.0(supports-color@9.4.0) + mdast-util-mdxjs-esm: 2.0.1(supports-color@9.4.0) mdast-util-to-markdown: 2.1.2 transitivePeerDependencies: - supports-color - mdast-util-mdxjs-esm@2.0.1: + mdast-util-mdxjs-esm@2.0.1(supports-color@9.4.0): dependencies: '@types/estree-jsx': 1.0.5 '@types/hast': 3.0.5 '@types/mdast': 4.0.4 devlop: 1.1.0 - mdast-util-from-markdown: 2.0.3 + mdast-util-from-markdown: 2.0.3(supports-color@9.4.0) mdast-util-to-markdown: 2.1.2 transitivePeerDependencies: - supports-color @@ -7453,6 +7910,8 @@ snapshots: mdn-data@2.27.1: {} + mdn-data@2.35.0: {} + merge-anything@5.1.7: dependencies: is-what: 4.1.16 @@ -7463,8 +7922,6 @@ snapshots: merge-stream@2.0.0: {} - merge2@1.4.1: {} - micromark-core-commonmark@2.0.3: dependencies: decode-named-character-reference: 1.3.0 @@ -7526,8 +7983,8 @@ snapshots: micromark-extension-mdxjs@3.0.0: dependencies: - acorn: 8.17.0 - acorn-jsx: 5.3.2(acorn@8.17.0) + acorn: 8.18.0 + acorn-jsx: 5.3.2(acorn@8.18.0) micromark-extension-mdx-expression: 3.0.1 micromark-extension-mdx-jsx: 3.0.2 micromark-extension-mdx-md: 2.0.0 @@ -7649,10 +8106,10 @@ snapshots: micromark-util-types@2.0.2: {} - micromark@4.0.2: + micromark@4.0.2(supports-color@9.4.0): dependencies: '@types/debug': 4.1.13 - debug: 4.4.3 + debug: 4.4.3(supports-color@9.4.0) decode-named-character-reference: 1.3.0 devlop: 1.1.0 micromark-core-commonmark: 2.0.3 @@ -7671,11 +8128,6 @@ snapshots: transitivePeerDependencies: - supports-color - micromatch@4.0.8: - dependencies: - braces: 3.0.3 - picomatch: 2.3.2 - mime-db@1.54.0: {} min-indent@1.0.1: {} @@ -7684,29 +8136,31 @@ snapshots: dependencies: brace-expansion: 5.0.7 - minimatch@3.1.5: + minimatch@10.2.6: dependencies: - brace-expansion: 1.1.16 + brace-expansion: 5.0.12 minimatch@9.0.9: dependencies: - brace-expansion: 2.1.2 + brace-expansion: 2.1.7 - minimizer-webpack-plugin@5.6.1(esbuild@0.28.1)(webpack@5.108.4(esbuild@0.28.1)): + minimizer-webpack-plugin@5.6.1(esbuild@0.28.1)(lightningcss@1.32.0)(postcss@8.5.19)(webpack@5.108.4(esbuild@0.28.1)(lightningcss@1.32.0)(postcss@8.5.19)): dependencies: '@jridgewell/trace-mapping': 0.3.31 jest-worker: 27.5.1 schema-utils: 4.3.3 terser: 5.49.0 - webpack: 5.108.4(esbuild@0.28.1) + webpack: 5.108.4(esbuild@0.28.1)(lightningcss@1.32.0)(postcss@8.5.19) optionalDependencies: esbuild: 0.28.1 + lightningcss: 1.32.0 + postcss: 8.5.19 minipass@7.1.3: {} mlly@1.8.2: dependencies: - acorn: 8.17.0 + acorn: 8.18.0 pathe: 2.0.3 pkg-types: 1.3.1 ufo: 1.6.4 @@ -7718,6 +8172,8 @@ snapshots: nanoid@3.3.16: {} + nanoid@3.3.19: {} + napi-postinstall@0.3.4: {} natsort@2.0.3: {} @@ -7734,9 +8190,12 @@ snapshots: es-errors: 1.3.0 object.entries: 1.1.9 semver: 6.3.1 + optional: true node-releases@2.0.51: {} + node-releases@2.0.57: {} + nopt@7.2.1: dependencies: abbrev: 2.0.0 @@ -7771,9 +8230,11 @@ snapshots: dependencies: boolbase: 1.0.0 - object-inspect@1.13.4: {} + object-inspect@1.13.4: + optional: true - object-keys@1.1.1: {} + object-keys@1.1.1: + optional: true object.assign@4.1.7: dependencies: @@ -7783,6 +8244,7 @@ snapshots: es-object-atoms: 1.1.2 has-symbols: 1.1.0 object-keys: 1.1.1 + optional: true object.entries@1.1.9: dependencies: @@ -7790,13 +8252,10 @@ snapshots: call-bound: 1.0.4 define-properties: 1.2.1 es-object-atoms: 1.1.2 + optional: true obug@2.1.3: {} - once@1.4.0: - dependencies: - wrappy: 1.0.2 - optionator@0.9.4: dependencies: deep-is: 0.1.4 @@ -7811,6 +8270,7 @@ snapshots: get-intrinsic: 1.3.0 object-keys: 1.1.1 safe-push-apply: 1.0.0 + optional: true oxc-minify@0.139.0: optionalDependencies: @@ -7880,6 +8340,10 @@ snapshots: '@oxc-transform/binding-win32-ia32-msvc': 0.139.0 '@oxc-transform/binding-win32-x64-msvc': 0.139.0 + p-event@6.0.1: + dependencies: + p-timeout: 6.1.4 + p-limit@3.1.0: dependencies: yocto-queue: 0.1.0 @@ -7888,6 +8352,8 @@ snapshots: dependencies: p-limit: 3.1.0 + p-timeout@6.1.4: {} + package-json-from-dist@1.0.1: {} package-manager-detector@1.7.0: {} @@ -7916,11 +8382,10 @@ snapshots: path-exists@4.0.0: {} - path-is-absolute@1.0.1: {} - path-key@3.1.1: {} - path-parse@1.0.7: {} + path-parse@1.0.7: + optional: true path-scurry@1.11.1: dependencies: @@ -7931,31 +8396,32 @@ snapshots: picocolors@1.1.1: {} - picomatch@2.3.2: {} - picomatch@4.0.5: {} + picomatch@4.0.7: {} + pkg-types@1.3.1: dependencies: confbox: 0.1.8 mlly: 1.8.2 pathe: 2.0.3 - pkg-types@2.3.1: + pkg-types@2.3.3: dependencies: - confbox: 0.2.4 - exsolve: 1.1.0 + confbox: 0.3.1 + exsolve: 1.1.1 pathe: 2.0.3 pluralize@8.0.0: {} - pnpm-workspace-yaml@1.6.1: + pnpm-workspace-yaml@1.9.1: dependencies: - yaml: 2.9.0 + yaml: 2.9.1 - possible-typed-array-names@1.1.0: {} + possible-typed-array-names@1.1.0: + optional: true - postcss-selector-parser@7.1.4: + postcss-selector-parser@7.1.6: dependencies: cssesc: 3.0.0 util-deprecate: 1.0.2 @@ -7966,29 +8432,35 @@ snapshots: picocolors: 1.1.1 source-map-js: 1.2.1 + postcss@8.5.28: + dependencies: + nanoid: 3.3.19 + picocolors: 1.1.1 + source-map-js: 1.2.1 + prelude-ls@1.2.1: {} prettier-plugin-astro@0.14.1: dependencies: '@astrojs/compiler': 2.13.1 - prettier: 3.9.5 + prettier: 3.9.9 sass-formatter: 0.7.9 - prettier-plugin-jsdoc@1.8.1(prettier@3.9.5): + prettier-plugin-jsdoc@1.8.1(prettier@3.9.9)(supports-color@9.4.0): dependencies: binary-searching: 2.0.5 - comment-parser: 1.4.7 - mdast-util-from-markdown: 2.0.3 - prettier: 3.9.5 + comment-parser: 1.4.9 + mdast-util-from-markdown: 2.0.3(supports-color@9.4.0) + prettier: 3.9.9 transitivePeerDependencies: - supports-color - prettier-plugin-toml@2.0.6(prettier@3.9.5): + prettier-plugin-toml@2.0.6(prettier@3.9.9): dependencies: '@taplo/lib': 0.5.0 - prettier: 3.9.5 + prettier: 3.9.9 - prettier@3.9.5: {} + prettier@3.9.9: {} proc-log@4.2.0: {} @@ -8009,11 +8481,15 @@ snapshots: punycode@2.3.1: {} + qified@0.10.1: + dependencies: + hookified: 2.2.0 + quansync@0.2.11: {} quansync@1.0.0: {} - queue-microtask@1.2.3: {} + quote-js-string@0.1.0: {} read-package-json-fast@3.0.2: dependencies: @@ -8045,6 +8521,7 @@ snapshots: get-intrinsic: 1.3.0 get-proto: 1.0.1 which-builtin-type: 1.2.1 + optional: true regexp-ast-analysis@0.7.1: dependencies: @@ -8059,22 +8536,23 @@ snapshots: get-proto: 1.0.1 gopd: 1.2.0 set-function-name: 2.0.2 + optional: true - regjsparser@0.13.2: + regjsparser@0.13.3: dependencies: jsesc: 3.1.0 - remark-mdx@3.1.1: + remark-mdx@3.1.1(supports-color@9.4.0): dependencies: - mdast-util-mdx: 3.0.0 + mdast-util-mdx: 3.0.0(supports-color@9.4.0) micromark-extension-mdxjs: 3.0.0 transitivePeerDependencies: - supports-color - remark-parse@11.0.0: + remark-parse@11.0.0(supports-color@9.4.0): dependencies: '@types/mdast': 4.0.4 - mdast-util-from-markdown: 2.0.3 + mdast-util-from-markdown: 2.0.3(supports-color@9.4.0) micromark-util-types: 2.0.2 unified: 11.0.5 transitivePeerDependencies: @@ -8088,6 +8566,8 @@ snapshots: require-from-string@2.0.2: {} + reserved-identifiers@1.2.0: {} + resolve-pkg-maps@1.0.0: {} resolve@2.0.0-next.7: @@ -8098,11 +8578,10 @@ snapshots: object-keys: 1.1.1 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 + optional: true retry@0.12.0: {} - reusify@1.1.0: {} - rolldown-plugin-dts@0.27.9(oxc-resolver@11.24.2)(rolldown@1.1.5)(typescript@6.0.3): dependencies: dts-resolver: 3.0.0(oxc-resolver@11.24.2) @@ -8169,10 +8648,6 @@ snapshots: '@rollup/rollup-win32-x64-msvc': 4.62.2 fsevents: 2.3.3 - run-parallel@1.2.0: - dependencies: - queue-microtask: 1.2.3 - s.color@0.0.15: {} sade@1.8.1: @@ -8187,6 +8662,7 @@ snapshots: get-intrinsic: 1.3.0 has-symbols: 1.1.0 isarray: 2.0.5 + optional: true safe-buffer@5.2.1: {} @@ -8194,12 +8670,14 @@ snapshots: dependencies: es-errors: 1.3.0 isarray: 2.0.5 + optional: true safe-regex-test@1.1.0: dependencies: call-bound: 1.0.4 es-errors: 1.3.0 is-regex: 1.2.1 + optional: true sass-formatter@0.7.9: dependencies: @@ -8222,11 +8700,11 @@ snapshots: semver@7.8.5: {} - seroval-plugins@1.5.5(seroval@1.5.5): + seroval-plugins@1.6.7(seroval@1.6.7): dependencies: - seroval: 1.5.5 + seroval: 1.6.7 - seroval@1.5.5: {} + seroval@1.6.7: {} set-function-length@1.2.2: dependencies: @@ -8236,6 +8714,7 @@ snapshots: get-intrinsic: 1.3.0 gopd: 1.2.0 has-property-descriptors: 1.0.2 + optional: true set-function-name@2.0.2: dependencies: @@ -8243,12 +8722,14 @@ snapshots: es-errors: 1.3.0 functions-have-names: 1.2.3 has-property-descriptors: 1.0.2 + optional: true set-proto@1.0.0: dependencies: dunder-proto: 1.0.1 es-errors: 1.3.0 es-object-atoms: 1.1.2 + optional: true shebang-command@2.0.0: dependencies: @@ -8260,6 +8741,7 @@ snapshots: dependencies: es-errors: 1.3.0 object-inspect: 1.13.4 + optional: true side-channel-map@1.0.1: dependencies: @@ -8267,6 +8749,7 @@ snapshots: es-errors: 1.3.0 get-intrinsic: 1.3.0 object-inspect: 1.13.4 + optional: true side-channel-weakmap@1.0.2: dependencies: @@ -8275,6 +8758,7 @@ snapshots: get-intrinsic: 1.3.0 object-inspect: 1.13.4 side-channel-map: 1.0.1 + optional: true side-channel@1.1.1: dependencies: @@ -8283,31 +8767,18 @@ snapshots: side-channel-list: 1.0.1 side-channel-map: 1.0.1 side-channel-weakmap: 1.0.2 + optional: true siginfo@2.0.0: {} signal-exit@4.1.0: {} - solid-js@1.9.14: + solid-js@2.0.0-rc.9: dependencies: + '@solidjs/signals': 2.0.0-rc.9 csstype: 3.2.3 - seroval: 1.5.5 - seroval-plugins: 1.5.5(seroval@1.5.5) - - solid-refresh@0.6.3(solid-js@1.9.14): - dependencies: - '@babel/generator': 7.29.7 - '@babel/helper-module-imports': 7.29.7 - '@babel/types': 7.29.7 - solid-js: 1.9.14 - transitivePeerDependencies: - - supports-color - - solid-refresh@0.7.8(solid-js@1.9.14): - dependencies: - '@babel/generator': 7.29.7 - '@babel/types': 7.29.7 - solid-js: 1.9.14 + seroval: 1.6.7 + seroval-plugins: 1.6.7(seroval@1.6.7) source-map-js@1.2.1: {} @@ -8321,16 +8792,16 @@ snapshots: spdx-correct@3.2.0: dependencies: spdx-expression-parse: 3.0.1 - spdx-license-ids: 3.0.23 + spdx-license-ids: 3.0.24 spdx-exceptions@2.5.0: {} spdx-expression-parse@3.0.1: dependencies: spdx-exceptions: 2.5.0 - spdx-license-ids: 3.0.23 + spdx-license-ids: 3.0.24 - spdx-license-ids@3.0.23: {} + spdx-license-ids@3.0.24: {} stable-hash-x@0.2.0: {} @@ -8342,6 +8813,7 @@ snapshots: dependencies: es-errors: 1.3.0 internal-slot: 1.1.0 + optional: true string-width@4.2.3: dependencies: @@ -8371,6 +8843,7 @@ snapshots: es-object-atoms: 1.1.2 has-property-descriptors: 1.0.2 safe-regex-test: 1.1.0 + optional: true string.prototype.trimend@1.0.10: dependencies: @@ -8378,12 +8851,14 @@ snapshots: call-bound: 1.0.4 define-properties: 1.2.1 es-object-atoms: 1.1.2 + optional: true string.prototype.trimstart@1.0.8: dependencies: call-bind: 1.0.9 define-properties: 1.2.1 es-object-atoms: 1.1.2 + optional: true string_decoder@1.3.0: dependencies: @@ -8400,7 +8875,7 @@ snapshots: strip-ansi@7.2.0: dependencies: - ansi-regex: 6.2.2 + ansi-regex: 6.3.0 strip-indent@3.0.0: dependencies: @@ -8416,13 +8891,20 @@ snapshots: dependencies: s.color: 0.0.15 + super-regex@1.1.0: + dependencies: + function-timeout: 1.0.2 + make-asynchronous: 1.1.0 + time-span: 5.1.0 + supports-color@8.1.1: dependencies: has-flag: 4.0.0 supports-color@9.4.0: {} - supports-preserve-symlinks-flag@1.0.0: {} + supports-preserve-symlinks-flag@1.0.0: + optional: true synckit@0.11.13: dependencies: @@ -8437,6 +8919,10 @@ snapshots: commander: 2.20.3 source-map-support: 0.5.21 + time-span@5.1.0: + dependencies: + convert-hrtime: 5.0.0 + tinybench@2.9.0: {} tinyexec@1.2.4: {} @@ -8448,10 +8934,6 @@ snapshots: tinyrainbow@3.1.0: {} - to-regex-range@5.0.1: - dependencies: - is-number: 7.0.0 - toml-eslint-parser@1.0.3: dependencies: eslint-visitor-keys: 5.0.1 @@ -8497,27 +8979,23 @@ snapshots: - oxc-resolver - vue-tsc - tslib@1.14.1: {} - tslib@2.8.1: optional: true - tsutils@3.21.0(typescript@6.0.3): - dependencies: - tslib: 1.14.1 - typescript: 6.0.3 - type-check@0.4.0: dependencies: prelude-ls: 1.2.1 type-fest@3.13.1: {} + type-fest@4.41.0: {} + typed-array-buffer@1.0.3: dependencies: call-bound: 1.0.4 es-errors: 1.3.0 is-typed-array: 1.1.15 + optional: true typed-array-byte-length@1.0.3: dependencies: @@ -8526,6 +9004,7 @@ snapshots: gopd: 1.2.0 has-proto: 1.2.0 is-typed-array: 1.1.15 + optional: true typed-array-byte-offset@1.0.4: dependencies: @@ -8536,6 +9015,7 @@ snapshots: has-proto: 1.2.0 is-typed-array: 1.1.15 reflect.getprototypeof: 1.0.10 + optional: true typed-array-length@1.0.8: dependencies: @@ -8545,16 +9025,17 @@ snapshots: is-typed-array: 1.1.15 possible-typed-array-names: 1.1.0 reflect.getprototypeof: 1.0.10 + optional: true typedarray@0.0.6: {} - typescript-eslint@8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3): + typescript-eslint@8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3): dependencies: - '@typescript-eslint/eslint-plugin': 8.64.0(@typescript-eslint/parser@8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3))(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3) - '@typescript-eslint/parser': 8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3) - '@typescript-eslint/typescript-estree': 8.64.0(typescript@6.0.3) - '@typescript-eslint/utils': 8.64.0(eslint@10.7.0(jiti@2.7.0))(typescript@6.0.3) - eslint: 10.7.0(jiti@2.7.0) + '@typescript-eslint/eslint-plugin': 8.70.1(@typescript-eslint/parser@8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3))(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3) + '@typescript-eslint/parser': 8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3) + '@typescript-eslint/typescript-estree': 8.70.1(supports-color@9.4.0)(typescript@6.0.3) + '@typescript-eslint/utils': 8.70.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0)(typescript@6.0.3) + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) typescript: 6.0.3 transitivePeerDependencies: - supports-color @@ -8572,6 +9053,7 @@ snapshots: has-bigints: 1.1.0 has-symbols: 1.1.0 which-boxed-primitive: 1.1.1 + optional: true unconfig-core@7.5.0: dependencies: @@ -8590,15 +9072,17 @@ snapshots: undici-types@8.3.0: {} - unified-engine@11.2.2: + undici-types@8.9.0: {} + + unified-engine@11.2.2(supports-color@9.4.0): dependencies: '@types/concat-stream': 2.0.3 '@types/debug': 4.1.13 '@types/is-empty': 1.2.3 - '@types/node': 22.20.1 + '@types/node': 22.20.4 '@types/unist': 3.0.3 concat-stream: 2.0.0 - debug: 4.4.3 + debug: 4.4.3(supports-color@9.4.0) extend: 3.0.2 glob: 10.5.0 ignore: 6.0.2 @@ -8612,7 +9096,7 @@ snapshots: vfile-message: 4.0.3 vfile-reporter: 8.1.1 vfile-statistics: 3.0.0 - yaml: 2.9.0 + yaml: 2.9.1 transitivePeerDependencies: - bluebird - supports-color @@ -8654,12 +9138,12 @@ snapshots: unist-util-is: 6.0.1 unist-util-visit-parents: 6.0.2 - unplugin-oxc@0.6.1(esbuild@0.28.1)(rolldown@1.1.5)(rollup@4.62.2)(vite@8.1.4(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.49.0)(yaml@2.9.0))(webpack@5.108.4(esbuild@0.28.1)): + unplugin-oxc@0.6.1(esbuild@0.28.1)(rolldown@1.1.5)(rollup@4.62.2)(vite@8.1.4(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.49.0)(yaml@2.9.0))(webpack@5.108.4(esbuild@0.28.1)(lightningcss@1.32.0)(postcss@8.5.19)): dependencies: oxc-minify: 0.139.0 oxc-resolver: 11.24.2 oxc-transform: 0.139.0 - unplugin: 3.3.0(esbuild@0.28.1)(rolldown@1.1.5)(rollup@4.62.2)(vite@8.1.4(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.49.0)(yaml@2.9.0))(webpack@5.108.4(esbuild@0.28.1)) + unplugin: 3.3.0(esbuild@0.28.1)(rolldown@1.1.5)(rollup@4.62.2)(vite@8.1.4(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.49.0)(yaml@2.9.0))(webpack@5.108.4(esbuild@0.28.1)(lightningcss@1.32.0)(postcss@8.5.19)) transitivePeerDependencies: - '@farmfe/core' - '@rspack/core' @@ -8675,7 +9159,7 @@ snapshots: pathe: 2.0.3 picomatch: 4.0.5 - unplugin@3.3.0(esbuild@0.28.1)(rolldown@1.1.5)(rollup@4.62.2)(vite@8.1.4(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.49.0)(yaml@2.9.0))(webpack@5.108.4(esbuild@0.28.1)): + unplugin@3.3.0(esbuild@0.28.1)(rolldown@1.1.5)(rollup@4.62.2)(vite@8.1.4(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.49.0)(yaml@2.9.0))(webpack@5.108.4(esbuild@0.28.1)(lightningcss@1.32.0)(postcss@8.5.19)): dependencies: '@jridgewell/remapping': 2.3.5 picomatch: 4.0.5 @@ -8685,7 +9169,7 @@ snapshots: rolldown: 1.1.5 rollup: 4.62.2 vite: 8.1.4(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.49.0)(yaml@2.9.0) - webpack: 5.108.4(esbuild@0.28.1) + webpack: 5.108.4(esbuild@0.28.1)(lightningcss@1.32.0)(postcss@8.5.19) unrs-resolver@1.12.2: dependencies: @@ -8720,6 +9204,12 @@ snapshots: escalade: 3.2.0 picocolors: 1.1.1 + update-browserslist-db@1.3.3(browserslist@4.29.0): + dependencies: + browserslist: 4.29.0 + escalade: 3.2.0 + picocolors: 1.1.1 + uri-js@4.4.1: dependencies: punycode: 2.3.1 @@ -8733,6 +9223,8 @@ snapshots: validate-npm-package-name@5.0.1: {} + verkit@0.3.2: {} + vfile-message@4.0.3: dependencies: '@types/unist': 3.0.3 @@ -8764,21 +9256,6 @@ snapshots: '@types/unist': 3.0.3 vfile-message: 4.0.3 - vite-plugin-solid@2.11.12(@testing-library/jest-dom@6.9.1)(solid-js@1.9.14)(vite@8.1.4(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.49.0)(yaml@2.9.0)): - dependencies: - '@babel/core': 7.29.7 - '@types/babel__core': 7.20.5 - babel-preset-solid: 1.9.12(@babel/core@7.29.7)(solid-js@1.9.14) - merge-anything: 5.1.7 - solid-js: 1.9.14 - solid-refresh: 0.6.3(solid-js@1.9.14) - vite: 8.1.4(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.49.0)(yaml@2.9.0) - vitefu: 1.1.3(vite@8.1.4(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.49.0)(yaml@2.9.0)) - optionalDependencies: - '@testing-library/jest-dom': 6.9.1 - transitivePeerDependencies: - - supports-color - vite@8.1.4(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.49.0)(yaml@2.9.0): dependencies: lightningcss: 1.32.0 @@ -8828,20 +9305,20 @@ snapshots: vscode-css-languageservice@6.3.10: dependencies: '@vscode/l10n': 0.0.18 - vscode-languageserver-textdocument: 1.0.12 + vscode-languageserver-textdocument: 1.0.14 vscode-languageserver-types: 3.17.5 - vscode-uri: 3.1.0 + vscode-uri: 3.2.0 - vscode-languageserver-textdocument@1.0.12: {} + vscode-languageserver-textdocument@1.0.14: {} vscode-languageserver-types@3.17.5: {} - vscode-uri@3.1.0: {} + vscode-uri@3.2.0: {} - vue-eslint-parser@10.4.1(eslint@10.7.0(jiti@2.7.0)): + vue-eslint-parser@10.4.1(eslint@10.11.0(jiti@2.7.0)(supports-color@9.4.0))(supports-color@9.4.0): dependencies: - debug: 4.4.3 - eslint: 10.7.0(jiti@2.7.0) + debug: 4.4.3(supports-color@9.4.0) + eslint: 10.11.0(jiti@2.7.0)(supports-color@9.4.0) eslint-scope: 9.1.2 eslint-visitor-keys: 5.0.1 espree: 11.2.0 @@ -8856,11 +9333,13 @@ snapshots: dependencies: graceful-fs: 4.2.11 + web-worker@1.5.0: {} + webpack-sources@3.5.1: {} webpack-virtual-modules@0.6.2: {} - webpack@5.108.4(esbuild@0.28.1): + webpack@5.108.4(esbuild@0.28.1)(lightningcss@1.32.0)(postcss@8.5.19): dependencies: '@types/estree': 1.0.9 '@types/json-schema': 7.0.15 @@ -8878,7 +9357,7 @@ snapshots: graceful-fs: 4.2.11 loader-runner: 4.3.2 mime-db: 1.54.0 - minimizer-webpack-plugin: 5.6.1(esbuild@0.28.1)(webpack@5.108.4(esbuild@0.28.1)) + minimizer-webpack-plugin: 5.6.1(esbuild@0.28.1)(lightningcss@1.32.0)(postcss@8.5.19)(webpack@5.108.4(esbuild@0.28.1)(lightningcss@1.32.0)(postcss@8.5.19)) neo-async: 2.6.2 schema-utils: 4.3.3 tapable: 2.3.3 @@ -8905,6 +9384,7 @@ snapshots: is-number-object: 1.1.1 is-string: 1.1.1 is-symbol: 1.1.1 + optional: true which-builtin-type@1.2.1: dependencies: @@ -8921,6 +9401,7 @@ snapshots: which-boxed-primitive: 1.1.1 which-collection: 1.0.2 which-typed-array: 1.1.22 + optional: true which-collection@1.0.2: dependencies: @@ -8928,6 +9409,7 @@ snapshots: is-set: 2.0.3 is-weakmap: 2.0.2 is-weakset: 2.0.4 + optional: true which-typed-array@1.1.22: dependencies: @@ -8938,6 +9420,7 @@ snapshots: get-proto: 1.0.1 gopd: 1.2.0 has-tostringtag: 1.0.2 + optional: true which@2.0.2: dependencies: @@ -8966,19 +9449,19 @@ snapshots: string-width: 5.1.2 strip-ansi: 7.2.0 - wrappy@1.0.2: {} - - xml-name-validator@4.0.0: {} + xml-name-validator@5.0.0: {} yallist@3.1.1: {} yaml-eslint-parser@2.1.0: dependencies: eslint-visitor-keys: 5.0.1 - yaml: 2.9.0 + yaml: 2.9.1 yaml@2.9.0: {} + yaml@2.9.1: {} + yocto-queue@0.1.0: {} yuku-ast@0.1.7: @@ -9017,4 +9500,7 @@ snapshots: '@yuku-parser/binding-win32-arm64': 0.6.1 '@yuku-parser/binding-win32-x64': 0.6.1 + zimmerframe@1.1.5: + optional: true + zwitch@2.0.4: {} diff --git a/src/core/index.ts b/src/core/index.ts index bd81727..ba8695a 100644 --- a/src/core/index.ts +++ b/src/core/index.ts @@ -1,327 +1,615 @@ -// Adapted from https://github.com/solidjs/vite-plugin-solid/blob/master/src/index.ts -import { readFileSync } from "node:fs"; +// Adapted from solidjs/solid-vite-plugin at c94fcf351cb5e8392fc8c3d5085886b943dc2725 (MIT). +import path from "node:path"; +import process from "node:process"; +import remapping from "@ampproject/remapping"; import type { TransformOptions } from "@babel/core"; -import { transformAsync } from "@babel/core"; -// @ts-expect-error -import solid from "babel-preset-solid"; import { mergeAndConcat } from "merge-anything"; -import solidRefresh from "solid-refresh/babel"; -import type { UnpluginFactory, UnpluginInstance } from "unplugin"; +import type { + SourceMapCompact, + UnpluginFactory, + UnpluginInstance, +} from "unplugin"; import { createUnplugin } from "unplugin"; +import type { HotPayload, ViteDevServer } from "vite"; import { crawlFrameworkPkgs } from "vitefu"; -import type { Options } from "./types"; +import { + cleanModuleId, + isTsrxCssModule, + isTsrxModule, + offsetSourceMapLine, + prependTsrxCssImport, + resolveTsrxCssModule, + resolvedTsrxCssModuleId, + tsrxCssSourceId, + updateTsrxCss, +} from "./tsrx"; +import type { Options, SolidOptions } from "./types"; import { containsSolidField, - getExtension, getJestDomExport, - normalizeAliases, - require, + isNonRuntimeSolidPkg, } from "./utils"; -const runtimePublicPath = "/@solid-refresh"; -const runtimeFilePath = require.resolve("solid-refresh/dist/solid-refresh.mjs"); -const runtimeCode = readFileSync(runtimeFilePath, "utf-8"); - -const SOLID_EXTERNALS = [ - "solid-js", - "solid-js/web", - "solid-js/store", - "solid-js/html", - "solid-js/h", -]; +const SOLID_RUNTIME_PKGS = ["solid-js", "@solidjs/web"]; +const REFRESH_RUNTIME_SOURCE = "solid-js/refresh"; +const BOUNDARY_MODULE_ID = "\0unplugin-solid:boundary-modules"; +const LAZY_PLACEHOLDER_PREFIX = "__SOLID_LAZY_MODULE__:"; + +type SourceMap = SourceMapCompact; + +function combineSourcemaps( + maps: (SourceMap | string | null | undefined)[], +): SourceMap | null { + const chain = maps + .filter((map) => map != null) + .map((map) => + typeof map === "string" ? JSON.parse(map) : { ...map, version: 3 }, + ); + if (chain.length === 0) { + return null; + } + if (chain.length === 1) { + return chain[0]; + } + + return JSON.parse(remapping(chain.reverse(), () => null).toString()); +} + +function isServerEnvironment( + context: unknown, + options?: { ssr?: boolean }, +): boolean { + const consumer = ( + context as { environment?: { config: { consumer?: string } } } + ).environment?.config.consumer; + + return consumer ? consumer === "server" : options?.ssr === true; +} export const unpluginFactory: UnpluginFactory = ( options = {}, meta, ) => { + const isVite = meta.framework === "vite"; + let dev = options.dev === true; + const observe = options.observe === true; let needHmr = false; - let replaceDev = false; - let projectRoot: string | undefined = process.cwd(); + let projectRoot = process.cwd(); let isTestMode = false; - let isVite6OrLater = false; - let isVite8OrLater = false; - let solidPkgsConfig: - Awaited> | undefined; + let serverTestPosture = false; + let filter: (id: string) => boolean; + let devServer: ViteDevServer; + let solidPkgsConfig: Awaited>; + const tsrxCss = new Map(); + + const getSolidOptions = (ssr: boolean): SolidOptions => ({ + generate: ssr && (options.ssr || isTestMode) ? "ssr" : "dom", + hydratable: !isTestMode && options.ssr === true, + dev, + ...(dev || observe ? { componentNames: true } : {}), + ...options.solid, + }); + + async function compile(source: string, id: string, ssr: boolean) { + if (id.includes("\0") || isTsrxCssModule(id)) { + return null; + } + id = cleanModuleId(id); + const extension = path.extname(id); + const customExtension = options.extensions?.find( + (item) => (typeof item === "string" ? item : item[0]) === extension, + ); + const tsrx = isVite && isTsrxModule(id); + if (!/\.[mc]?[tj]sx$/i.test(id) && !tsrx && !customExtension) { + return null; + } + + const typescript = + tsrx || + /\.[mc]?tsx$/i.test(id) || + (Array.isArray(customExtension) && customExtension[1].typescript); + const filename = + tsrx || /\.(?:[mc]?[jt]s|[jt]sx)$/i.test(id) + ? id + : `${id}.${typescript ? "tsx" : "jsx"}`; + const solidOptions = getSolidOptions(ssr); + const babelOptions = + typeof options.babel === "function" + ? await options.babel(source, id, ssr) + : options.babel; + const maps: (SourceMap | string | null | undefined)[] = []; + const compiler = + isVite || options.compiler !== "babel" + ? await import("@solidjs/compiler") + : undefined; + const refresh = needHmr && !ssr && !id.includes("node_modules"); + let code = source; + let css = ""; + + async function babelTransform(filename: string) { + const { transformAsync } = await import("@babel/core"); + const plugins: NonNullable = []; + if (options.compiler === "babel") { + // @ts-expect-error @solidjs/babel-plugin does not publish declarations. + const { default: solid } = await import("@solidjs/babel-plugin"); + plugins.push([solid, solidOptions]); + } + const result = await transformAsync( + code, + mergeAndConcat(babelOptions ?? {}, { + root: projectRoot, + filename, + sourceFileName: id, + ast: false, + sourceMaps: true, + configFile: false, + babelrc: false, + parserOpts: { + plugins: typescript + ? ["jsx", "decorators", "typescript"] + : ["jsx", "decorators"], + }, + plugins, + } satisfies TransformOptions), + ); + if (!result) { + return false; + } + code = result.code!; + maps.push(result.map); + if (tsrx && options.compiler === "babel") { + css = (result.metadata as { css?: string }).css ?? ""; + } + + return true; + } + + // TSRX must be lowered before the lazy and refresh passes can parse it. + if (tsrx) { + if (options.compiler === "babel") { + if (!(await babelTransform(id))) { + return null; + } + } else { + const result = await compiler!.transformAsync(code, { + ...solidOptions, + filename, + sourceMap: true, + }); + code = result.code; + css = result.css ?? ""; + maps.push(result.map); + if (options.babel && !(await babelTransform(`${id}.tsx`))) { + return null; + } + } + } + + if (isVite) { + const passFilename = tsrx ? `${id}.tsx` : filename; + const lazyResult = await compiler!.transformLazyAsync(code, { + filename: passFilename, + sourceMap: true, + }); + code = lazyResult.code; + maps.push(lazyResult.map); + if (refresh) { + const refreshResult = await compiler!.transformRefreshAsync(code, { + filename: passFilename, + bundler: "vite", + fixRender: true, + ...(typeof options.refresh?.granular === "boolean" + ? { granular: options.refresh.granular } + : {}), + jsx: false, + importSource: REFRESH_RUNTIME_SOURCE, + sourceMap: true, + }); + code = refreshResult.code; + maps.push(refreshResult.map); + } + } + + if (!tsrx) { + if ( + (options.compiler === "babel" || options.babel !== undefined) && + !(await babelTransform(id)) + ) { + return null; + } + if (options.compiler !== "babel") { + const result = await compiler!.transformAsync(code, { + ...solidOptions, + filename, + sourceMap: true, + }); + code = result.code; + maps.push(result.map && { ...JSON.parse(result.map), sources: [id] }); + } + } + + // The native TSRX frontend does not yet provide a composable source map. + let map = + tsrx && options.compiler !== "babel" ? null : combineSourcemaps(maps); + if (tsrx) { + updateTsrxCss(tsrxCss, id, css); + if (css) { + code = prependTsrxCssImport(code, id); + map = offsetSourceMapLine(map); + } + const { transformWithOxc } = await import("vite"); + const stripped = await transformWithOxc( + code, + `${id}.tsx`, + { + lang: "tsx", + sourcemap: map != null, + target: "esnext", + }, + map ?? undefined, + ); + code = stripped.code; + map = map == null ? null : (stripped.map ?? null); + } + + return { code, map }; + } return { name: "unplugin-solid", enforce: "pre", - + rolldown: { + options(opts) { + opts.external ??= SOLID_RUNTIME_PKGS; + opts.transform ??= { jsx: "preserve" }; + }, + }, + transform: { + filter: { id: { include: options.include, exclude: options.exclude } }, + handler(source, id) { + return compile(source, id, options.ssr === true); + }, + }, vite: { async config(userConfig, { command }) { - // We inject the dev mode only if the user explicitly wants it or if we are in dev (serve) mode - replaceDev = + dev = options.dev === true || (options.dev !== false && command === "serve"); - projectRoot = userConfig.root; + projectRoot = path.resolve(userConfig.root ?? projectRoot); isTestMode = userConfig.mode === "test"; - - const { version } = await import("vite"); - const viteVersionMajor = Number(version.split(".")[0]); - isVite6OrLater = viteVersionMajor >= 6; - isVite8OrLater = viteVersionMajor >= 8; - - userConfig.resolve ??= {}; - userConfig.resolve.alias = normalizeAliases(userConfig.resolve?.alias); - + const userTest = + ( + userConfig as typeof userConfig & { + test?: { + environment?: string; + setupFiles?: string | string[]; + browser?: { enabled?: boolean }; + workspace?: unknown; + projects?: unknown; + server?: { + deps?: { + inline?: boolean | (string | RegExp)[]; + external?: (string | RegExp)[]; + }; + }; + }; + } + ).test ?? {}; + const test: typeof userTest = {}; + serverTestPosture = + isTestMode && + ["edge-runtime", "node"].includes(userTest.environment ?? ""); solidPkgsConfig = await crawlFrameworkPkgs({ viteUserConfig: userConfig, - root: projectRoot ?? process.cwd(), + root: projectRoot, isBuild: command === "build", - isFrameworkPkgByJson(pkgJson) { - return containsSolidField(pkgJson.exports ?? {}); + isFrameworkPkgByJson: (pkg) => containsSolidField(pkg.exports ?? {}), + isFrameworkPkgByName: (name) => + isNonRuntimeSolidPkg(name) ? false : undefined, + isSemiFrameworkPkgByJson(pkg) { + if ((!dev && !observe) || isTestMode) { + return false; + } + + return SOLID_RUNTIME_PKGS.some( + (name) => + Boolean(pkg.dependencies?.[name]) || + Boolean(pkg.peerDependencies?.[name]), + ); }, }); - - // fix for bundling dev in production - const nestedDeps = replaceDev ? SOLID_EXTERNALS : []; - - const userTest = (userConfig as any).test ?? {}; - const test = {} as any; - if (userConfig.mode === "test") { - // to simplify the processing of the config, we normalize the setupFiles to an array - const userSetupFiles: string[] = - typeof userTest.setupFiles === "string" - ? [userTest.setupFiles] - : (userTest.setupFiles ?? []); - - if (!userTest.environment && !options.ssr) { + if (isTestMode) { + if ( + !userTest.environment && + !userTest.browser?.enabled && + !userTest.workspace && + !userTest.projects + ) { test.environment = "jsdom"; } - - if ( - !userTest.server?.deps?.external?.find((item: string | RegExp) => + if (serverTestPosture) { + if (!userTest.server?.deps?.inline) { + test.server = { + deps: { inline: [/solid-js/, /@solidjs[+/]web/] }, + }; + } + } else if ( + !userTest.server?.deps?.external?.some((item) => /solid-js/.test(item.toString()), ) ) { test.server = { deps: { external: [/solid-js/] } }; } - if (!userTest.browser?.enabled) { - // vitest browser mode already has bundled jest-dom assertions - // https://main.vitest.dev/guide/browser/assertion-api.html#assertion-api - const jestDomImport = getJestDomExport(userSetupFiles); - if (jestDomImport) { - test.setupFiles = [jestDomImport]; + if (!userTest.browser?.enabled && !serverTestPosture) { + const setupFiles = + typeof userTest.setupFiles === "string" + ? [userTest.setupFiles] + : (userTest.setupFiles ?? []); + const jestDom = getJestDomExport(setupFiles, projectRoot); + if (jestDom) { + test.setupFiles = [jestDom]; } } } + const nestedDeps = dev ? SOLID_RUNTIME_PKGS : []; return { - /** - * We only need esbuild on .ts or .js files. .tsx & .jsx files are - * handled by us - */ - // esbuild: { include: /\.ts$/ }, - resolve: { - conditions: isVite6OrLater - ? undefined - : [ - "solid", - ...(replaceDev ? ["development"] : []), - ...(userConfig.mode === "test" && !options.ssr - ? ["browser"] - : []), - ], - dedupe: nestedDeps, - alias: [ - { find: /^solid-refresh$/, replacement: runtimePublicPath }, - ], - }, + resolve: { dedupe: nestedDeps }, optimizeDeps: { - include: [...nestedDeps, ...solidPkgsConfig.optimizeDeps.include], + extensions: [".tsrx"], + include: [ + ...nestedDeps, + ...(command === "serve" && + options.hot !== false && + !options.refresh?.disabled + ? [REFRESH_RUNTIME_SOURCE] + : []), + ...solidPkgsConfig.optimizeDeps.include, + ], exclude: solidPkgsConfig.optimizeDeps.exclude, - ...(isVite8OrLater - ? { - rolldownOptions: { - transform: { jsx: "preserve" as const }, + rolldownOptions: { + transform: { jsx: { runtime: "classic" as const } }, + plugins: [ + { + name: "unplugin-solid:tsrx-dep-scan", + async transform(source, id) { + if (!isTsrxModule(id) || isTsrxCssModule(id)) { + return null; + } + const { transformAsync } = + await import("@solidjs/compiler"); + const { transformWithOxc } = await import("vite"); + const result = await transformAsync(source, { + ...getSolidOptions(false), + filename: cleanModuleId(id), + sourceMap: false, + }); + const stripped = await transformWithOxc( + result.code, + `${cleanModuleId(id)}.tsx`, + { lang: "tsx", sourcemap: false, target: "esnext" }, + ); + + return { code: stripped.code, map: null }; }, - } - : {}), + }, + ], + }, }, - ...(isVite6OrLater ? {} : { ssr: solidPkgsConfig.ssr }), - ...(test.server ? { test } : {}), + ...(Object.keys(test).length > 0 ? { test } : {}), }; }, - async configEnvironment(name, config, opts) { + const { + createFilter, + defaultClientConditions, + defaultServerConditions, + defaultExternalConditions, + } = await import("vite"); config.resolve ??= {}; - // Emulate Vite default fallback for `resolve.conditions` if not set - if (config.resolve.conditions == null) { - const { defaultClientConditions, defaultServerConditions } = - await import("vite"); - config.resolve.conditions = - config.consumer === "client" || - name === "client" || - opts.isSsrTargetWebworker - ? [...defaultClientConditions] - : [...defaultServerConditions]; - } + config.resolve.conditions ??= [ + ...(config.consumer === "client" || + name === "client" || + opts.isSsrTargetWebworker + ? defaultClientConditions + : defaultServerConditions), + ]; config.resolve.conditions = [ "solid", - ...(replaceDev ? ["development"] : []), - ...(isTestMode && !opts.isSsrTargetWebworker && !options.ssr + ...(dev ? ["development"] : []), + ...(observe ? ["observe"] : []), + ...(isTestMode && !serverTestPosture && !opts.isSsrTargetWebworker ? ["browser"] : []), ...config.resolve.conditions, ]; - if ( - isVite6OrLater && - name === "ssr" && - solidPkgsConfig && - config.resolve.noExternal !== true + (dev || observe) && + config.consumer !== "client" && + name !== "client" ) { - config.resolve.noExternal = [ - ...(Array.isArray(config.resolve.noExternal) - ? config.resolve.noExternal - : []), + config.resolve.externalConditions = [ + ...(dev ? ["development"] : []), + ...(observe ? ["observe"] : []), + ...(config.resolve.externalConditions ?? defaultExternalConditions), + ]; + // Inline runtime consumers together so Node and Vite cannot load + // separate development and production instances of Solid. + if (!isTestMode && config.resolve.noExternal !== true) { + const noExternal = config.resolve.noExternal; + config.resolve.noExternal = [ + ...(Array.isArray(noExternal) + ? noExternal + : noExternal + ? [noExternal] + : []), + ...SOLID_RUNTIME_PKGS, + ]; + } + } + if (name === "ssr" && config.resolve.noExternal !== true) { + const hostNoExternal = config.resolve.noExternal; + const noExternal = [ + ...(Array.isArray(hostNoExternal) + ? hostNoExternal + : hostNoExternal + ? [hostNoExternal] + : []), ...solidPkgsConfig.ssr.noExternal, ]; + config.resolve.noExternal = noExternal; + const keepsExternal = createFilter(undefined, noExternal, { + resolve: false, + }); config.resolve.external = [ ...(Array.isArray(config.resolve.external) ? config.resolve.external : []), - ...solidPkgsConfig.ssr.external, + ...solidPkgsConfig.ssr.external.filter((dep) => keepsExternal(dep)), ]; } }, - - configResolved(config) { + async configResolved(config) { + const { createFilter } = await import("vite"); + projectRoot = config.root; + filter = createFilter(options.include, options.exclude, { + resolve: projectRoot, + }); needHmr = config.command === "serve" && config.mode !== "production" && - options.hot !== false; + options.hot !== false && + !options.refresh?.disabled; }, - - resolveId(id) { - if (id === runtimePublicPath) { - return id; + configureServer(server) { + devServer = server; + if (!needHmr) { + return; } - }, + // Keep a syntax-error overlay from being replaced by a refresh reload. + let lastErrorTime = 0; + const send = server.hot.send.bind(server.hot); + server.hot.send = (payload: HotPayload | string, data?: unknown) => { + if (typeof payload === "object" && payload) { + if (payload.type === "error") { + lastErrorTime = Date.now(); + } else if ( + lastErrorTime && + (payload.type === "full-reload" || payload.type === "update") + ) { + if (Date.now() - lastErrorTime < 200) { + return; + } + lastErrorTime = 0; + } + } - load(id) { - if (id === runtimePublicPath) { - return runtimeCode; - } - }, - }, + if (typeof payload === "string") { + return send(payload, data); + } - rolldown: { - options(opts) { - opts.external ??= SOLID_EXTERNALS; - opts.transform ??= { - jsx: "preserve", + return send(payload); }; }, - }, - - transform: { - filter: { - id: { - include: options.include, - exclude: options.exclude, - }, - }, - async handler(source, id, transformOptions?: { ssr?: boolean }) { - if (id.includes("\0")) { - return null; + async hotUpdate({ file, modules, read }) { + if (isTsrxModule(file) && this.environment.name === "client") { + await compile(await read(), file, false); + const cssModule = this.environment.moduleGraph.getModuleById( + resolvedTsrxCssModuleId(file), + ); + if (cssModule) { + this.environment.moduleGraph.invalidateModule(cssModule); + + return modules.includes(cssModule) + ? modules + : [...modules, cssModule]; + } } - const isSsr = - meta.framework === "vite" - ? Boolean(transformOptions?.ssr) - : Boolean(options.ssr); - const currentFileExtension = getExtension(id); - - const extensionsToWatch = options.extensions ?? []; - const allExtensions = extensionsToWatch.map((extension) => - // An extension can be a string or a tuple [extension, options] - typeof extension === "string" ? extension : extension[0], - ); - - id = id.replace(/\?.*$/, ""); - if ( - !/\.[mc]?[tj]sx$/i.test(id) && - !allExtensions.includes(currentFileExtension) + this.environment.name !== "client" && + "runner" in this.environment ) { + if (modules.length > 0) { + this.environment.hot.send({ type: "full-reload" }); + const client = devServer.environments.client; + if (client && !client.moduleGraph.getModulesByFile(file)?.size) { + client.hot.send({ type: "full-reload" }); + } + } + + return []; + } + }, + resolveId(id, importer, resolveOptions) { + const cssId = resolveTsrxCssModule(id); + if (cssId) { + return cssId; + } + if (id !== "server-only" && id !== "client-only") { return null; } - - const inNodeModules = /node_modules/.test(id); - - let solidOptions: { generate: "ssr" | "dom"; hydratable: boolean }; - - if (options.ssr) { - solidOptions = isSsr - ? { generate: "ssr", hydratable: true } - : { generate: "dom", hydratable: true }; - } else { - solidOptions = { generate: "dom", hydratable: false }; + const scan = (resolveOptions as { scan?: boolean }).scan; + const server = isServerEnvironment(this, resolveOptions); + if (!scan && (id === "server-only" ? !server : server)) { + this.error( + `[unplugin-solid] Cannot import '${id}' in a ${server ? "server" : "client"} module: ${importer}`, + ); } - // We need to know if the current file extension has a typescript options tied to it - const shouldBeProcessedWithTypescript = - /\.[mc]?tsx$/i.test(id) || - extensionsToWatch.some((extension) => { - if (typeof extension === "string") { - return extension.includes("tsx"); - } - - const [extensionName, extensionOptions] = extension; - if (extensionName !== currentFileExtension) { - return false; - } - - return extensionOptions.typescript; - }); - const plugins: NonNullable< - NonNullable["plugins"] - > = ["jsx"]; - - if (shouldBeProcessedWithTypescript) { - plugins.push("typescript"); + return BOUNDARY_MODULE_ID; + }, + load(id) { + if (id === BOUNDARY_MODULE_ID) { + return "export {}"; } - - const opts: TransformOptions = { - root: projectRoot, - filename: id, - sourceFileName: id, - presets: [[solid, { ...solidOptions, ...(options.solid ?? {}) }]], - plugins: - needHmr && !isSsr && !inNodeModules - ? [[solidRefresh, { bundler: meta.framework }]] - : [], - ast: false, - sourceMaps: true, - configFile: false, - babelrc: false, - parserOpts: { - plugins, - }, - }; - - // Default value for babel user options - let babelUserOptions: TransformOptions = {}; - - if (options.babel) { - if (typeof options.babel === "function") { - const babelOptions = options.babel(source, id, isSsr); - babelUserOptions = - babelOptions instanceof Promise - ? await babelOptions - : babelOptions; - } else { - babelUserOptions = options.babel; + const source = tsrxCssSourceId(id); + if (source) { + return tsrxCss.get(source) ?? ""; + } + }, + async transform(source, id, transformOptions) { + if (!filter(id)) { + return null; + } + const ssr = isServerEnvironment(this, transformOptions); + const result = await compile(source, id, ssr); + if (!result) { + return null; + } + // Match the native lazy transform's placeholder contract. Queries + // remain part of module identity for client manifests and dev URLs. + const placeholders = result.code.matchAll( + new RegExp(`"${LAZY_PLACEHOLDER_PREFIX}([^"]+)"`, "g"), + ); + for (const match of placeholders) { + const resolved = await this.resolve(match[1], cleanModuleId(id)); + if (resolved) { + const file = cleanModuleId(resolved.id); + const query = resolved.id.slice(file.length); + const relative = + path.relative(projectRoot, file).split(path.sep).join("/") + + query; + result.code = result.code.replace( + match[0], + JSON.stringify(relative), + ); } } + if ( + ssr && + !id.includes("node_modules") && + !result.code.includes("$$moduleUrl") + ) { + const file = cleanModuleId(id); + const relative = + path.relative(projectRoot, file).split(path.sep).join("/") + + id.slice(file.length); + result.code += `\nexport const $$moduleUrl = ${JSON.stringify(relative)};\n`; + } - const babelOptions = mergeAndConcat(babelUserOptions, opts); - - const { code, map } = (await transformAsync(source, babelOptions))!; - - return { code: code!, map }; + return result; }, }, }; @@ -329,5 +617,4 @@ export const unpluginFactory: UnpluginFactory = ( export const unplugin: UnpluginInstance = /* #__PURE__ */ createUnplugin(unpluginFactory); - export default unplugin; diff --git a/src/core/tsrx.ts b/src/core/tsrx.ts new file mode 100644 index 0000000..563370a --- /dev/null +++ b/src/core/tsrx.ts @@ -0,0 +1,107 @@ +// Adapted from solidjs/solid-vite-plugin at c94fcf351cb5e8392fc8c3d5085886b943dc2725 (MIT). +export const TSRX_CSS_QUERY = "?solid-tsrx-css&lang.css"; + +const NULL_BYTE_PLACEHOLDER = "/@id/__x00__"; + +export function cleanModuleId(id: string): string { + const query = id.indexOf("?"); + + return query === -1 ? id : id.slice(0, query); +} + +export const isTsrxModule = (id: string): boolean => + cleanModuleId(id).toLowerCase().endsWith(".tsrx"); + +export function isTsrxCssModule(id: string): boolean { + const unwrapped = id.startsWith("\0") + ? id.slice(1) + : id.startsWith(NULL_BYTE_PLACEHOLDER) + ? id.slice(NULL_BYTE_PLACEHOLDER.length) + : id; + const queryIndex = unwrapped.indexOf("?"); + if ( + queryIndex === -1 || + !unwrapped.slice(0, queryIndex).toLowerCase().endsWith(".tsrx") + ) { + return false; + } + const params = unwrapped.slice(queryIndex + 1).split("&"); + + return params.includes("solid-tsrx-css") && params.includes("lang.css"); +} + +export function resolveTsrxCssModule(id: string): string | null { + if (!isTsrxCssModule(id)) { + return null; + } + if (id.startsWith("\0")) { + return id; + } + if (id.startsWith(NULL_BYTE_PLACEHOLDER)) { + return `\0${id.slice(NULL_BYTE_PLACEHOLDER.length)}`; + } + + return `\0${id}`; +} + +export const tsrxCssModuleId = (id: string): string => + cleanModuleId(id) + TSRX_CSS_QUERY; + +export const resolvedTsrxCssModuleId = (id: string): string => + `\0${tsrxCssModuleId(id)}`; + +export function tsrxCssSourceId(id: string): string | null { + if (!id.startsWith("\0") || !isTsrxCssModule(id)) { + return null; + } + + return cleanModuleId(id.slice(1)); +} + +export function updateTsrxCss( + cache: Map, + id: string, + css: string | null | undefined, +): void { + const key = cleanModuleId(id); + if (css) { + cache.set(key, css); + } else { + cache.delete(key); + } +} + +export const prependTsrxCssImport = (code: string, id: string): string => + `import ${JSON.stringify(tsrxCssModuleId(id))};\n${code}`; + +export function offsetSourceMapLine(map: T): T { + if ( + map && + typeof map === "object" && + "mappings" in map && + typeof (map as { mappings?: unknown }).mappings === "string" + ) { + return { + ...map, + mappings: `;${(map as { mappings: string }).mappings}`, + }; + } + if ( + map && + typeof map === "object" && + "sections" in map && + Array.isArray((map as { sections?: unknown }).sections) + ) { + return { + ...map, + sections: ( + map as { sections: { offset: { line: number; column: number } }[] } + ).sections.map((section) => ({ + ...section, + offset: { ...section.offset, line: section.offset.line + 1 }, + })), + }; + } + + return map; +} diff --git a/src/core/types.ts b/src/core/types.ts index c05748f..276dca7 100644 --- a/src/core/types.ts +++ b/src/core/types.ts @@ -1,153 +1,79 @@ import type { TransformOptions } from "@babel/core"; +import type { TransformOptions as CompilerOptions } from "@solidjs/compiler"; import type { FilterPattern } from "unplugin"; -/** - * Possible options for the `extensions` property. - */ +export type Compiler = "native" | "babel"; +export type SolidOptions = Omit; + export interface ExtensionOptions { typescript?: boolean; } +export interface RefreshOptions { + /** + * Disable Vite's development refresh transform. + */ + disabled?: boolean; + /** + * Preserve unchanged components when updating a module. @default true + */ + granular?: boolean; +} + export interface Options { /** - * A [picomatch](https://github.com/micromatch/picomatch) pattern, or array of - * patterns, which specifies the files the plugin should operate on. + * Files to compile. Vite resolves relative patterns against its project root. */ include?: FilterPattern; /** - * A [picomatch](https://github.com/micromatch/picomatch) pattern, or array of - * patterns, which specifies the files to be ignored by the plugin. + * Files to skip. */ exclude?: FilterPattern; /** - * This will inject solid-js/dev in place of solid-js in dev mode. Has no - * effect in prod. If set to `false`, it won't inject it in dev. This is - * useful for extra logs and debugging. - * - * @default true + * JSX compiler backend. @default "native" + */ + compiler?: Compiler; + /** + * Compiler development output. Enabled by default during Vite development. */ dev?: boolean; /** - * This will force SSR code in the produced files. + * Keep component names and select Vite's observable runtime builds. + */ + observe?: boolean; + /** + * Compile for server rendering. In Vite, client modules are hydratable and + * server modules use SSR code generation. Other bundlers produce server + * code. * * @default false */ ssr?: boolean; - /** - * This will inject HMR runtime in dev mode. Has no effect in prod. If set to - * `false`, it won't inject the runtime in dev. - * - * @default true + * Enable Vite refresh. @deprecated Use `refresh.disabled` instead. */ hot?: boolean; /** - * This registers additional extensions that should be processed by - * vite-plugin-solid. - * - * @default undefined + * Vite refresh options. + */ + refresh?: RefreshOptions; + /** + * Additional source extensions. Vite also handles `.tsrx` automatically. */ extensions?: (string | [string, ExtensionOptions])[]; /** - * Pass any additional babel transform options. They will be merged with the - * transformations required by Solid. - * - * @default {} + * Custom Babel transforms. With the native compiler, these run before JSX + * compilation, or after lowering TSRX to ordinary TypeScript. */ babel?: | TransformOptions - | ((source: string, id: string, ssr: boolean) => TransformOptions) - | ((source: string, id: string, ssr: boolean) => Promise); + | (( + source: string, + id: string, + ssr: boolean, + ) => TransformOptions | Promise); /** - * Pass any additional - * [babel-plugin-jsx-dom-expressions](https://github.com/ryansolid/dom-expressions/tree/main/packages/babel-plugin-jsx-dom-expressions#plugin-options). - * They will be merged with the defaults sets by - * [babel-preset-solid](https://github.com/solidjs/solid/blob/main/packages/babel-preset-solid/index.js#L8-L25). - * - * @default {} + * Options passed to the Solid JSX compiler. */ - solid?: { - /** - * Remove unnecessary closing tags from template strings. More info here: - * https://github.com/solidjs/solid/blob/main/CHANGELOG.md#smaller-templates - * - * @default false - */ - omitNestedClosingTags?: boolean; - - /** - * Remove the last closing tag from template strings. Enabled by default - * even when `omitNestedClosingTags` is disabled. Can be disabled for - * compatibility for some browser-like environments. - * - * @default true - */ - omitLastClosingTag?: boolean; - - /** - * Remove unnecessary quotes from template strings. Can be disabled for - * compatibility for some browser-like environments. - * - * @default true - */ - omitQuotes?: boolean; - - /** - * The name of the runtime module to import the methods from. - * - * @default "solid-js/web" - */ - moduleName?: string; - - /** - * The output mode of the compiler. Can be: - * - * - "dom" is standard output - * - "ssr" is for server side rendering of strings. - * - "universal" is for using custom renderers from solid-js/universal - * - * @default "dom" - */ - generate?: "ssr" | "dom" | "universal"; - - /** - * Indicate whether the output should contain hydratable markers. - * - * @default false - */ - hydratable?: boolean; - - /** - * Boolean to indicate whether to enable automatic event delegation on - * camelCase. - * - * @default true - */ - delegateEvents?: boolean; - - /** - * Boolean indicates whether smart conditional detection should be used. - * This optimizes simple boolean expressions and ternaries in JSX. - * - * @default true - */ - wrapConditionals?: boolean; - - /** - * Boolean indicates whether to set current render context on Custom - * Elements and slots. Useful for seemless Context API with Web Components. - * - * @default true - */ - contextToCustomElements?: boolean; - - /** - * Array of Component exports from module, that aren't included by default - * with the library. This plugin will automatically import them if it comes - * across them in the JSX. - * - * @defaultValue `["For", "Show", "Switch", "Match", "Suspense", "SuspenseList", "Portal", "Index", "Dynamic", "ErrorBoundary"]` - */ - builtIns?: string[]; - }; + solid?: SolidOptions; } diff --git a/src/core/utils.ts b/src/core/utils.ts index 53505ac..9a4d827 100644 --- a/src/core/utils.ts +++ b/src/core/utils.ts @@ -1,15 +1,31 @@ +// Adapted from solidjs/solid-vite-plugin at c94fcf351cb5e8392fc8c3d5085886b943dc2725 (MIT). +import { existsSync, realpathSync } from "node:fs"; import { createRequire } from "node:module"; +import path from "node:path"; -import type { Alias, AliasOptions } from "vite"; +const NON_RUNTIME_SOLID_PKGS = [ + "unplugin-solid", + "@solidjs/vite-plugin", + "vite", + "vitest", + "eslint-plugin-solid", +]; +const NON_RUNTIME_SOLID_PREFIXES = [ + "vite-plugin-", + "eslint-plugin-", + "prettier-plugin-", + "@types/", +]; -export const require: NodeJS.Require = createRequire(import.meta.url); +export function isNonRuntimeSolidPkg(name: string): boolean { + const bare = name.slice(name.lastIndexOf("/") + 1); -export function getExtension(filename: string): string { - const index = filename.lastIndexOf("."); - - return index === -1 - ? "" - : filename.slice(Math.max(0, index)).replace(/\?.+$/, ""); + return ( + NON_RUNTIME_SOLID_PKGS.includes(name) || + NON_RUNTIME_SOLID_PREFIXES.some((p) => + (p.startsWith("@") ? name : bare).startsWith(p), + ) + ); } export function containsSolidField(fields: Record): boolean { @@ -30,32 +46,67 @@ export function containsSolidField(fields: Record): boolean { return false; } -export const getJestDomExport = (setupFiles: string[]): string | undefined => - setupFiles?.some((path) => /jest-dom/.test(path)) - ? undefined - : [ - "@testing-library/jest-dom/vitest", - "@testing-library/jest-dom/extend-expect", - ].find((path) => { - try { - require.resolve(path); - - return true; - } catch { - return false; - } - }); - /** - * This basically normalize all aliases of the config into the array format of - * the alias. - * - * Eg: alias: { '@': 'src/' } => [{ find: '@', replacement: 'src/' }] + * Locate a bare package the way Vite (and Node without `NODE_PATH`) does: walk + * `/node_modules/` up from `root`. `require.resolve` can't be used + * for this β€” it also consults `NODE_PATH`, which pnpm's bin shims (`pnpm + * vitest`, `pnpm test`) point at the hoisted virtual store + * (`node_modules/.pnpm/node_modules`), where every transitive dependency of the + * whole tree is reachable. */ -export const normalizeAliases = (alias: AliasOptions = []): Alias[] => - Array.isArray(alias) - ? alias - : Object.entries(alias).map(([find, replacement]) => ({ - find, - replacement, - })); +function findPackageDir(name: string, root: string): string | undefined { + let dir = root; + while (true) { + const candidate = path.join(dir, "node_modules", name); + if (existsSync(path.join(candidate, "package.json"))) { + return candidate; + } + const parent = path.dirname(dir); + if (parent === dir) { + return undefined; + } + dir = parent; + } +} + +export function getJestDomExport( + setupFiles: string[], + root: string, +): string | undefined { + if (setupFiles?.some((file) => /jest-dom/.test(file))) { + return undefined; + } + + // Resolve from the project root, not from this plugin's own location. With pnpm's + // isolated node_modules layout the plugin can reach a jest-dom that only exists as a + // transitive dependency (e.g. of Storybook), while Vitest resolves `setupFiles` from the + // project root, where it isn't installed, and fails to load it. + // https://github.com/solidjs/solid-vite-plugin/issues/231 + // The bare specifier (not the resolved path) is injected on purpose: `require.resolve` picks + // jest-dom's CommonJS entry, which Vitest refuses to load, while Vitest itself resolves the + // specifier to the ESM entry. + const packageDir = findPackageDir("@testing-library/jest-dom", root); + if (!packageDir) { + return undefined; + } + // Check the subpath against THIS copy: resolving from inside the package + // self-references its `exports` map (v6+), or falls back to its own files + // for versions without one (v5's `extend-expect`). `NODE_PATH` still + // participates in that lookup, so make sure the hit landed in the package + // Vite will resolve rather than in some hoisted copy of another version. + const realPackageDir = realpathSync(packageDir); + const packageRequire = createRequire(path.join(packageDir, "package.json")); + + return [ + "@testing-library/jest-dom/vitest", + "@testing-library/jest-dom/extend-expect", + ].find((specifier) => { + try { + const resolved = realpathSync(packageRequire.resolve(specifier)); + + return resolved.startsWith(realPackageDir + path.sep); + } catch { + return false; + } + }); +} diff --git a/src/index.ts b/src/index.ts index 0cc3989..725b7ea 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,2 +1,2 @@ export { default, unplugin, unpluginFactory } from "./core"; -export type { ExtensionOptions, Options } from "./core/types"; +export type * from "./core/types"; diff --git a/test/__snapshots__/esbuild.test.ts.snap b/test/__snapshots__/esbuild.test.ts.snap index 44297fa..38fa578 100644 --- a/test/__snapshots__/esbuild.test.ts.snap +++ b/test/__snapshots__/esbuild.test.ts.snap @@ -1,8 +1,8 @@ // Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html -exports[`esbuild > test/fixtures/basic.tsx > dev = false 1`] = ` +exports[`esbuild > test/fixtures/basic.tsx > dev = false > compiler = babel 1`] = ` "// test/fixtures/basic.tsx -import { template as _$template } from "solid-js/web"; +import { template as _$template } from "@solidjs/web"; var _tmpl$ = /* @__PURE__ */ _$template(\`
Hello World\`); var Foo = _tmpl$(); var basic_default = Foo; @@ -12,11 +12,11 @@ export { " `; -exports[`esbuild > test/fixtures/basic.tsx > dev = false 2`] = `undefined`; +exports[`esbuild > test/fixtures/basic.tsx > dev = false > compiler = babel 2`] = `undefined`; -exports[`esbuild > test/fixtures/basic.tsx > dev = true 1`] = ` +exports[`esbuild > test/fixtures/basic.tsx > dev = false > compiler = native 1`] = ` "// test/fixtures/basic.tsx -import { template as _$template } from "solid-js/web"; +import { template as _$template } from "@solidjs/web"; var _tmpl$ = /* @__PURE__ */ _$template(\`
Hello World\`); var Foo = _tmpl$(); var basic_default = Foo; @@ -26,34 +26,62 @@ export { " `; -exports[`esbuild > test/fixtures/basic.tsx > dev = true 2`] = `undefined`; +exports[`esbuild > test/fixtures/basic.tsx > dev = false > compiler = native 2`] = `undefined`; -exports[`esbuild > test/fixtures/syntax.tsx > dev = false 1`] = ` +exports[`esbuild > test/fixtures/basic.tsx > dev = true > compiler = babel 1`] = ` +"// test/fixtures/basic.tsx +import { template as _$template } from "@solidjs/web"; +var _tmpl$ = /* @__PURE__ */ _$template(\`
Hello World\`); +var Foo = _tmpl$(); +var basic_default = Foo; +export { + basic_default as default +}; +" +`; + +exports[`esbuild > test/fixtures/basic.tsx > dev = true > compiler = babel 2`] = `undefined`; + +exports[`esbuild > test/fixtures/basic.tsx > dev = true > compiler = native 1`] = ` +"// test/fixtures/basic.tsx +import { template as _$template } from "@solidjs/web"; +var _tmpl$ = /* @__PURE__ */ _$template(\`
Hello World\`); +var Foo = _tmpl$(); +var basic_default = Foo; +export { + basic_default as default +}; +" +`; + +exports[`esbuild > test/fixtures/basic.tsx > dev = true > compiler = native 2`] = `undefined`; + +exports[`esbuild > test/fixtures/syntax.tsx > dev = false > compiler = babel 1`] = ` "// test/fixtures/syntax.tsx -import { template as _$template } from "solid-js/web"; -import { delegateEvents as _$delegateEvents } from "solid-js/web"; -import { createComponent as _$createComponent } from "solid-js/web"; -import { createEffect, createSignal, onCleanup, onMount, Suspense } from "solid-js"; +import { template as _$template } from "@solidjs/web"; +import { delegateEvents as _$delegateEvents } from "@solidjs/web"; +import { createComponent as _$createComponent } from "@solidjs/web"; +import { createEffect, createSignal, onCleanup, onSettled, Loading } from "solid-js"; var _tmpl$ = /* @__PURE__ */ _$template(\` ); diff --git a/test/rolldown.test.ts b/test/rolldown.test.ts index 0acbfbc..9324962 100644 --- a/test/rolldown.test.ts +++ b/test/rolldown.test.ts @@ -29,13 +29,7 @@ describe("rolldown", async () => { const outputOptions = result ?? inputOptions; expect(outputOptions.transform).toEqual({ jsx: "preserve" }); - expect(outputOptions.external).toEqual([ - "solid-js", - "solid-js/web", - "solid-js/store", - "solid-js/html", - "solid-js/h", - ]); + expect(outputOptions.external).toEqual(["solid-js", "@solidjs/web"]); }); await testFixtures( @@ -45,6 +39,7 @@ describe("rolldown", async () => { id, Solid({ dev: args.dev, + compiler: args.compiler, }), ); @@ -54,7 +49,10 @@ describe("rolldown", async () => { ); }, { - params: [["dev", [true, false]]], + params: [ + ["dev", [true, false]], + ["compiler", ["native", "babel"]], + ], promise: true, }, ); diff --git a/test/rollup.test.ts b/test/rollup.test.ts index 877c7c7..36a453b 100644 --- a/test/rollup.test.ts +++ b/test/rollup.test.ts @@ -1,52 +1,31 @@ -import process from "node:process"; - +import ViteSolid from "@solidjs/vite-plugin"; import { rollupBuild, testFixtures } from "@sxzz/test-utils"; import Oxc from "unplugin-oxc/rollup"; -import ViteSolid from "vite-plugin-solid"; +import { resolveConfig } from "vite"; import { describe, expect } from "vitest"; import Solid from "../src/rollup"; -import type { Options } from "../src/types"; async function getCode(file: string, plugin: any) { const bundle = await rollupBuild(file, [plugin, Oxc()], { - external: ["solid-js"], + external: ["solid-js", "@solidjs/web"], }); return bundle.snapshot; } -function createPlugins(opt: Options & { root: string }) { - const vite = ViteSolid(opt); - // @ts-expect-error - vite.configResolved!({ - root: opt.root, - command: "build", - dev: opt.dev, - build: { - sourcemap: false, - }, - define: {}, - logger: {}, - } as any); - - return { - unplugin: Solid(opt), - vite, - }; -} - describe("rollup", async () => { await testFixtures( "test/fixtures/*.{js,ts,jsx,tsx}", async (args, id) => { - const { unplugin, vite } = createPlugins({ - root: process.cwd(), - dev: args.dev, - }); - + const options = { dev: args.dev, compiler: args.compiler }; + const config = await resolveConfig( + { configFile: false, plugins: [ViteSolid(options)] }, + "build", + ); + const vite = config.plugins.find((plugin) => plugin.name === "solid")!; const viteCode = await getCode(id, vite); - const unpluginCode = await getCode(id, unplugin); + const unpluginCode = await getCode(id, Solid(options)); expect(viteCode).toBe(unpluginCode); @@ -56,7 +35,10 @@ describe("rollup", async () => { ); }, { - params: [["dev", [true, false]]], + params: [ + ["dev", [true, false]], + ["compiler", ["native", "babel"]], + ], promise: true, }, ); diff --git a/test/vite.test.ts b/test/vite.test.ts index ff6819c..a2dde9b 100644 --- a/test/vite.test.ts +++ b/test/vite.test.ts @@ -1,181 +1,69 @@ -import type { TransformOptions } from "@babel/core"; -import type { ConfigEnv, Plugin, UserConfig } from "vite"; -import { beforeEach, describe, expect, it, vi } from "vitest"; +import path from "node:path"; -import Solid from "../src/vite"; - -const { crawlFrameworkPkgs } = vi.hoisted(() => ({ - crawlFrameworkPkgs: vi.fn(), -})); - -vi.mock("vitefu", () => ({ crawlFrameworkPkgs })); - -const configEnv: ConfigEnv = { - command: "build", - mode: "production", - isPreview: false, - isSsrBuild: false, -}; - -type HookHandler = (...args: unknown[]) => unknown; - -function getHookHandler(hook: unknown): HookHandler { - if (typeof hook === "function") { - return hook as HookHandler; - } - - return (hook as { handler: HookHandler }).handler; -} - -const runConfig = async ( - plugin: Plugin, - userConfig: UserConfig = {}, - env: ConfigEnv = configEnv, -): Promise => - (await getHookHandler(plugin.config).call({}, userConfig, env)) as UserConfig; - -async function runConfigEnvironment( - plugin: Plugin, - name: string, - config: Record, -): Promise { - await getHookHandler(plugin.configEnvironment).call({}, name, config, { - isSsrTargetWebworker: false, - }); -} - -const runTransform = async ( - plugin: Plugin, - source: string, - id: string, - ssr: boolean, -): Promise<{ code: string; map?: unknown } | null | undefined> => - (await getHookHandler(plugin.transform).call({}, source, id, { - ssr, - })) as { code: string; map?: unknown } | null | undefined; - -describe("vite", () => { - beforeEach(() => { - crawlFrameworkPkgs.mockReset().mockResolvedValue({ - optimizeDeps: { - include: ["vitefu-include"], - exclude: ["vitefu-exclude"], - }, - ssr: { - noExternal: ["vitefu-no-external"], - external: ["vitefu-external"], - }, - }); - }); - - it("preserves JSX for Vite 8 dependency optimization without top-level SSR config", async () => { - const result = await runConfig(Solid()); - - expect(result.optimizeDeps).toMatchObject({ - rolldownOptions: { - transform: { - jsx: "preserve", - }, - }, - }); - expect(result).not.toHaveProperty("ssr"); - }); - - it("merges vitefu SSR resolution into existing environment config", async () => { - const plugin = Solid(); - await runConfig(plugin); - const environment = { - consumer: "server", - resolve: { - conditions: ["node"], - noExternal: ["existing-no-external"], - external: ["existing-external"], - }, - }; +import { build, createServer } from "vite"; +import { describe, expect, it } from "vitest"; +import { defineConfig } from "vitest/config"; - await runConfigEnvironment(plugin, "ssr", environment); - - expect(environment.resolve.noExternal).toEqual([ - "existing-no-external", - "vitefu-no-external", - ]); - expect(environment.resolve.external).toEqual([ - "existing-external", - "vitefu-external", - ]); - }); - - it("does not append SSR externals when noExternal is true", async () => { - const plugin = Solid(); - await runConfig(plugin); - const environment = { - consumer: "server", - resolve: { - conditions: ["node"], - noExternal: true, - external: ["existing-external"], - }, - }; - - await runConfigEnvironment(plugin, "ssr", environment); - - expect(environment.resolve.noExternal).toBeTruthy(); - expect(environment.resolve.external).toEqual(["existing-external"]); - }); - - it("does not add the browser condition in test mode when SSR is forced", async () => { - const plugin = Solid({ ssr: true }); - await runConfig(plugin, { mode: "test" }, { ...configEnv, mode: "test" }); - const environment = { - consumer: "client", - resolve: { - conditions: ["module"], - }, - }; - - await runConfigEnvironment(plugin, "client", environment); - - expect(environment.resolve.conditions).toContain("solid"); - expect(environment.resolve.conditions).not.toContain("browser"); - }); - - it("uses Vite's transform SSR flag for client and server output", async () => { - const ssrValues: boolean[] = []; - const babel = vi.fn( - (_source: string, _id: string, ssr: boolean): TransformOptions => { - ssrValues.push(ssr); - - return {}; - }, - ); - const plugin = Solid({ babel, ssr: true }); - const source = "export default () =>
Hello
"; - - const client = await runTransform(plugin, source, "/src/App.tsx", false); - const server = await runTransform(plugin, source, "/src/App.tsx", true); - - expect(ssrValues).toEqual([false, true]); - expect(client?.code).not.toBe(server?.code); - expect(client?.code).toContain("template"); - expect(server?.code).toContain("ssr"); - }); - - it("skips files excluded by the transform filter", async () => { - const babel = vi.fn((): TransformOptions => ({})); - const plugin = Solid({ - include: /\.tsx$/, - exclude: /excluded/, - babel, - }); - - const result = await runTransform( - plugin, - "export default () =>
", - "/src/excluded.tsx", - false, - ); +import Solid from "../src/vite"; - expect(result).toBeUndefined(); - expect(babel).not.toHaveBeenCalled(); - }); +// Adapted from solidjs/solid-vite-plugin at c94fcf351cb5e8392fc8c3d5085886b943dc2725 (MIT): +// examples/start-ssr/src/{posture,server-posture}.test.tsx +// examples/ssr/test/boundary.mjs + +describe("Vite", () => { + it.each([ + ["jsdom", /template/, /getNextElement|ssrElement|ssr\(/], + ["node", /\bssr(?:Element)?\b/, /getNextElement|cloneNode/], + ] as const)( + "uses %s test compilation even when the application enables SSR", + async (environment, generated, excluded) => { + const server = await createServer({ + configFile: false, + ...defineConfig({ + mode: "test", + plugins: [Solid({ ssr: true })], + test: environment === "node" ? { environment } : undefined, + }), + server: { middlewareMode: true, watch: null, hmr: false }, + optimizeDeps: { noDiscovery: true }, + }); + try { + const target = environment === "node" ? "ssr" : "client"; + const result = await server.environments[target].transformRequest( + "/test/fixtures/basic.tsx", + ); + const conditions = server.environments.ssr.config.resolve.conditions; + + expect(conditions.includes("browser")).toBe(environment === "jsdom"); + expect(server.config).toMatchObject({ test: { environment } }); + expect(result?.code).toMatch(generated); + expect(result?.code).not.toMatch(excluded); + } finally { + await server.close(); + } + }, + ); + + it.each(["server-only", "client-only"])( + "enforces the %s boundary during builds", + async (marker) => { + const entry = path.resolve(`test/fixtures/boundaries/${marker}.ts`); + const runBuild = (ssr: boolean) => + build({ + configFile: false, + logLevel: "silent", + plugins: [Solid({ ssr: true })], + build: { + write: false, + ssr: ssr ? entry : false, + rolldownOptions: ssr ? {} : { input: entry }, + }, + }); + + await expect(runBuild(marker === "server-only")).resolves.toBeDefined(); + await expect(runBuild(marker !== "server-only")).rejects.toThrow( + `[unplugin-solid] Cannot import '${marker}' in a ${marker === "server-only" ? "client" : "server"} module: ${entry}`, + ); + }, + ); }); diff --git a/tsconfig.json b/tsconfig.json index 8c3aa16..f05da07 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -2,7 +2,7 @@ "compilerOptions": { "target": "esnext", "jsx": "preserve", - "jsxImportSource": "solid-js", + "jsxImportSource": "@solidjs/web", "lib": ["es2022"], "moduleDetection": "force", "module": "preserve",