From eebbebe1864ede25383c442530a0273bac80e323 Mon Sep 17 00:00:00 2001 From: UltimeLam <35449771+UltimeLam@users.noreply.github.com> Date: Tue, 10 Nov 2026 20:41:41 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=20--key=3Dvalue=20?= =?UTF-8?q?=E5=80=BC=E5=90=AB=E7=AD=89=E5=8F=B7=E8=A2=AB=E6=88=AA=E6=96=AD?= =?UTF-8?q?=EF=BC=8C=E5=8F=91=E5=B8=83=200.1.3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 参数解析改用首个 `=` 切分,`--define=KEY=VALUE` 完整保留。 - 包内补 `llms.txt` / `SKILLS.md` 消费侧 AI 入口,包根文档统一命名。 --- AGENTS.md | 17 +- CHANGELOG.md | 5 + CONTRIBUTING.md | 2 +- README.md | 2 + skills.md => SKILLS.md | 0 agent.md | 39 --- llms.txt | 5 +- package.json | 6 +- pnpm-lock.yaml | 638 ++++++++++++++++++++--------------------- pnpm-workspace.yaml | 11 + rules/04-release.md | 7 +- src/args.ts | 11 +- tests/infra.test.ts | 4 + tests/neutral.test.ts | 11 +- 14 files changed, 372 insertions(+), 386 deletions(-) rename skills.md => SKILLS.md (100%) delete mode 100644 agent.md diff --git a/AGENTS.md b/AGENTS.md index 5b9d55c..47d2ca4 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -1,21 +1,32 @@ # AGENTS.md — @ultime/cli -> 给在本仓库工作的 AI 与协作者:只放入口与红线,不复述 README。 +> 给在本仓库工作的 AI 与协作者:入口、可写 / 只读、红线与验收。 > 适用版本:0.1.x ## 先读 1. [`README.md`](./README.md) — 通用设施 API 与边界。 2. [`rules/README.md`](./rules/README.md) — 本包开发规范。 -3. [`llms.txt`](./llms.txt) — AI 索引;能力表见 [`skills.md`](./skills.md),操作约束见 [`agent.md`](./agent.md)。 +3. [`llms.txt`](./llms.txt) — AI 索引;能力表见 [`SKILLS.md`](./SKILLS.md)。 4. [`src/run.ts`](./src/run.ts) — 命令注册与退出码。 +## 可写 / 只读 + +| 路径 | 条件 | +|---|---| +| `src/args.ts` / `src/context.ts` / `src/run.ts` | 通用设施;保持零依赖 | +| `src/index.ts` | 公共出口;新增 API 同步 README / `SKILLS.md` | +| `tests/**` | 与 API 改动同批 | +| `rules/` / `llms.txt` / `SKILLS.md` | 随版本同批更新 | + +只读:`node_modules/**`;调用方包的源码与产物。 + ## 红线 - **零领域依赖**:不 import 任何领域包;不内置具体命令。 - **不做 IO 策略**:读盘写盘与配置路径由命令自己决定。 - **不引第三方解析库**:`parseArgs` 保持零依赖。 -- **API 变化同步**:`runCli` / `ParsedArgs` / `CliContext` 变化时同步 README、`skills.md` 与测试。 +- **API 变化同步**:`runCli` / `ParsedArgs` / `CliContext` 变化时同步 README、`SKILLS.md` 与测试。 ## 验证 diff --git a/CHANGELOG.md b/CHANGELOG.md index 92f8b77..054cf23 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,10 @@ # Changelog +## 0.1.3 - 2026-11-10 + +- 修复 `--key=value` 的值含等号时被截断:`--define=KEY=VALUE` 现在完整保留。 +- 包内新增 `llms.txt` / `SKILLS.md` 作为消费侧 AI 入口;`rules/` 留仓,操作约束并入 `AGENTS.md`。 + ## 0.1.2 - 2026-11-09 - 移除仓库内遗留的 `bin/ultime.js`:它不是本包的公开入口,引用的路径也已不存在。 diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 88ebf3f..232fbb2 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -16,7 +16,7 @@ - CLI 只做参数 / 路径 / IO / 退出码;配置合法性与产物内容归调用方包。 - 不 import 任何调用方包的源码,只通过公开包名与 exports 依赖。 - 不自维护具体项目的字段清单;`schema` 之类由调用方投影。 -- 新增命令或退出码:同步 README、`skills.md`、测试与版本戳。 +- 新增命令或退出码:同步 README、`SKILLS.md`、测试与版本戳。 ## Review diff --git a/README.md b/README.md index c3387e9..3b36b3d 100644 --- a/README.md +++ b/README.md @@ -44,6 +44,8 @@ process.exitCode = runCli(spec, process.argv.slice(2), processContext()) `parseArgs` 只认 `command`、`--flag`、`--key value` / `--key=value`;`-h/--help` 与 `-v/--version` 是保留 flag。 +AI 入口:[`llms.txt`](./llms.txt)(路由)与 [`SKILLS.md`](./SKILLS.md)(能力表)随包发布。 + ## 边界 - **零领域依赖**:不 import 任何领域包,也不认识具体业务对象。 diff --git a/skills.md b/SKILLS.md similarity index 100% rename from skills.md rename to SKILLS.md diff --git a/agent.md b/agent.md deleted file mode 100644 index 65ae1aa..0000000 --- a/agent.md +++ /dev/null @@ -1,39 +0,0 @@ -# @ultime/cli · 操作约束 - -> 定位:AI 在本仓可以改什么、不能改什么、改完怎么验。 -> 适用版本:0.1.x - ---- - -## 可写 - -| 路径 | 条件 | -|---|---| -| `src/args.ts` / `src/context.ts` / `src/run.ts` | 通用设施;保持零依赖 | -| `src/index.ts` | 公共出口;新增 API 同步 README / `skills.md` | -| `tests/**` | 与 API 改动同批 | -| `rules/` / `llms.txt` / `skills.md` / `agent.md` | 随版本同批更新 | - -## 只读 - -- `node_modules/**`; -- 调用方包的源码与产物。 - -## 禁止 - -- import 调用方包; -- 内置领域命令或业务 flag; -- 在设施层读盘写盘、定义日志格式; -- 为方便测试引入第三方参数解析库; -- 改 API 不同步 README、`skills.md` 与测试。 - -## 验证 - -```bash -pnpm check -pnpm test -pnpm typecheck -``` - -- 改 API:同步 README、`skills.md`、`agent.md` 与版本戳; -- 交付时说明跑了哪些命令;没跑或失败要写清哪一条、为什么。 diff --git a/llms.txt b/llms.txt index 570d74a..a6b6974 100644 --- a/llms.txt +++ b/llms.txt @@ -5,10 +5,7 @@ ## 去哪找 - 怎么用:[README.md](./README.md) -- 开发规则:[rules/README.md](./rules/README.md) -- 可调用能力:[skills.md](./skills.md) -- 操作约束:[agent.md](./agent.md) -- 仓库入口:[AGENTS.md](./AGENTS.md) +- 可调用能力:[SKILLS.md](./SKILLS.md) ## 机器入口 diff --git a/package.json b/package.json index 307ca7a..5be0351 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@ultime/cli", - "version": "0.1.2", + "version": "0.1.3", "description": "Ultime · cli:通用命令行设施(参数 / 命令注册 / 上下文 / 退出码),零领域依赖", "keywords": [ "argument-parser", @@ -24,6 +24,8 @@ "dist", "src", "README.md", + "llms.txt", + "SKILLS.md", "CHANGELOG.md", "CONTRIBUTING.md", "SECURITY.md" @@ -49,7 +51,7 @@ "@types/node": "^22.20.5", "tsx": "^4.23.15", "typescript": "^5.9.3", - "vite-plus": "1.4.0" + "vite-plus": "1.5.1" }, "engines": { "node": ">=22.18" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 5325618..94c4920 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -176,8 +176,8 @@ importers: specifier: ^5.9.3 version: 5.9.3 vite-plus: - specifier: 1.4.0 - version: 1.4.0(@types/node@22.20.5)(@vitest/ui@5.0.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3) + specifier: 1.5.1 + version: 1.5.1(@types/node@22.20.5)(@vitest/ui@5.1.0)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3) packages: @@ -362,289 +362,289 @@ packages: '@jridgewell/trace-mapping@0.3.31': resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==} - '@oxc-project/runtime@0.155.0': - resolution: {integrity: sha512-VbW9raczGS5ZZ1FMunUBYHe4uV/R684qlQCoMdE3n5JT1PcqQsvmFpMYkF8AD+W04fBLGAq6Tr7YsTk0jjvDBA==} + '@oxc-project/runtime@0.157.0': + resolution: {integrity: sha512-srnUknwVoji5JdmU664pA4XyjBJXmgxP8rWlnZhFovzw6XQxaICGWAuScZdlLmIHI+ZRc7WgeiC2CURF4tAszQ==} engines: {node: ^20.19.0 || >=22.12.0} - '@oxc-project/types@0.155.0': - resolution: {integrity: sha512-SeE8JPwW1xs1tHeNycjUtUBdhorRa8o4jlvjwk49R7/Z291i+4DQa7JJIgOm/TaYQZx+QrPQbVJ/9c8dMIZN8Q==} + '@oxc-project/types@0.157.0': + resolution: {integrity: sha512-95iTox1qdt6WGWce3xwNOVayByOfLaYAq+qGPpub6NWbBh9sv0GG3+zyfh9ZBCO/jVu5A0EWI+qQI7g6fevjxg==} - '@oxfmt/binding-android-arm-eabi@0.74.0': - resolution: {integrity: sha512-xxQwrf5EPI5zxvuCTW8r6tzCTjPQ+h6+HqJ0iRKRy2zS1yBllt/xLVjoIyUc+FnR7g0a5g1SZv2yyDYhTItLbA==} + '@oxfmt/binding-android-arm-eabi@0.76.0': + resolution: {integrity: sha512-z8x4kittQLPsrJWmfoIJyYqs2gNwceGShoUqAJdFRPw3K4kkkKCFHh3Cr4NFRvZb7DPfDS3+JfBjSm3OIyQaJQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm] os: [android] - '@oxfmt/binding-android-arm64@0.74.0': - resolution: {integrity: sha512-FJW3sATVvrWbV64al8xofCPZj4500Z/1W0ad7Tg1rcCUyh0EMbuSrsf3jsZS7CEbwQ5fQ0mRhmkc129GFgofSQ==} + '@oxfmt/binding-android-arm64@0.76.0': + resolution: {integrity: sha512-Zj9fEQhQSKGj8ZTB+X4q4ho4545xWf7qsvJpwREWnBz5BATEFYtStKRgiwYOZvxQ7ORlBEgSj7pmDzuljfV1mQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [android] - '@oxfmt/binding-darwin-arm64@0.74.0': - resolution: {integrity: sha512-TfmNKBD30dGyMu9GCLiaw2rt/z7fms9LS+5cKcNOyWst0QgAs8oZs6wPxMbVaaDVE0/PCdCosgWM1vbu6f5NUg==} + '@oxfmt/binding-darwin-arm64@0.76.0': + resolution: {integrity: sha512-jZy8GpUXaWpic5JPMAvLmaBz95Sx0naZl6hptBPLOMiYmZYiME7jAt6pv8o/tjQqPNWKb+7jKzZhrYx6UqM5MQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [darwin] - '@oxfmt/binding-darwin-x64@0.74.0': - resolution: {integrity: sha512-5Usf8+DfC4Q3o/MD8FkN47GrI6y0KbhQ4KhZ2HGzMZcXjcW1AeldwbUn51aKih+1TVuJFF9qkNm6X1nzm6NYng==} + '@oxfmt/binding-darwin-x64@0.76.0': + resolution: {integrity: sha512-U59+a9lVpoRp9enRhTE9GssL3qB1k09CYagRzTfs3dfknopMYV0x0xHZv7Pls3SNMqHlyHR+ufmY76CYafQoLw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [darwin] - '@oxfmt/binding-freebsd-x64@0.74.0': - resolution: {integrity: sha512-eL+1O3gykw1XihbZh2MRAciQvU2988LByrnjhyo/dmNG74X4oZ7XzigRoWPRFLfJCp8hzRkp/LbEhwe7uuT2eA==} + '@oxfmt/binding-freebsd-x64@0.76.0': + resolution: {integrity: sha512-J1R3YJHPdQJ2RQvzMdTVDWyizhihGiRGGAeEZxtGp629j5pcT5ypSLSiBflopD7o7tmiMD+xlNfhIVmjcHKMVQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [freebsd] - '@oxfmt/binding-linux-arm-gnueabihf@0.74.0': - resolution: {integrity: sha512-Xt0QtO2hJ4stnul8IL4LJGVLyp0xnc6ccN9fZ30yuubv8FWSRYxWwd1Za62KsEqAfmPSazoS/cLSUUJpja6npA==} + '@oxfmt/binding-linux-arm-gnueabihf@0.76.0': + resolution: {integrity: sha512-x9qTg6zHoqeyzmFVlIjSb9WlhZdoXaayMTeQeDeUEfKA484AgPJz7f9chLjDMONA6wUUX0FJxnVHsYgX5Zv0+g==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm] os: [linux] - '@oxfmt/binding-linux-arm-musleabihf@0.74.0': - resolution: {integrity: sha512-/4wYQ0gZl4vUR0QoBTGaay73FmQ1GAjUa9z9101TR2xbGNrg4a+grazlR0yzEOe3/E+PJr5BGfj66MMzm/54vg==} + '@oxfmt/binding-linux-arm-musleabihf@0.76.0': + resolution: {integrity: sha512-303gbamm7NDllTtkeaX+8F5Da+KcSBr64mqELQEFg9XgnjfLX3YBCHUcOfgIlVTSybesy43eoeKai8oGr0P6UA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm] os: [linux] - '@oxfmt/binding-linux-arm64-gnu@0.74.0': - resolution: {integrity: sha512-846bKzF+HJd+JkOFh3rxzmYvSq4Cm+GMT+p+mW7S13ZYo6GAAGv8bL8cAOi/XcdeMqxEJDCIMTVQLVBXHMCdig==} + '@oxfmt/binding-linux-arm64-gnu@0.76.0': + resolution: {integrity: sha512-j3UAXzCJoWX9bZLaICj6DfwkI/2fzja9RpiCIbIN+2CQAcKoY+5SH5pQUcECvn32mQm17NSPE9YqTAwYx1seZg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [linux] libc: [glibc] - '@oxfmt/binding-linux-arm64-musl@0.74.0': - resolution: {integrity: sha512-nI5FJwZ4Flo6CBdscpwxymZXxO3m3IErQJX55ZS6h+ObfGXu8FostL85L/RWPFaCLnIVE4/WfLw+2q8XvVEeUA==} + '@oxfmt/binding-linux-arm64-musl@0.76.0': + resolution: {integrity: sha512-qFZqWVkEzuxWMtUkCtHxsnohXHnUMBQr/ZIxF0KmlCSt8de/bc1lbpVgpqjb3QxCADQHG/O1s3JcowcBF2sqdw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [linux] libc: [musl] - '@oxfmt/binding-linux-ppc64-gnu@0.74.0': - resolution: {integrity: sha512-BoQYKuqUdsKAFAkK6DLBvkdv4+t0hppSm79sB0wIcE2o/eOwNj+6Z3OlKY4q3Eta/tlssP65FaS9vHn8TeF7vQ==} + '@oxfmt/binding-linux-ppc64-gnu@0.76.0': + resolution: {integrity: sha512-ROiAid0UH2GN5lMMX2JTgKlOKx1rN+6a1WxIuBsU3j5A3MuB9U5XkREMW76XBbAImnH45mfOCFcSIwb+drcVYg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [ppc64] os: [linux] libc: [glibc] - '@oxfmt/binding-linux-riscv64-gnu@0.74.0': - resolution: {integrity: sha512-FSroRrM12+jCdSQklF9aOxsKpI6wFs4ZCo/1cSYG80RWZS6z4LV+l9tXRMT8lDGu+yohIZBwi9M76FzGPFDE2A==} + '@oxfmt/binding-linux-riscv64-gnu@0.76.0': + resolution: {integrity: sha512-Oyd/9ObdM2RYkZ7yzF/GyvVdbNgJcRG8BFVwnAVo3ooqzaem4E2p5eTIGB09FecQD+Q5HQEANOTEnIZTO6rBAQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [riscv64] os: [linux] libc: [glibc] - '@oxfmt/binding-linux-riscv64-musl@0.74.0': - resolution: {integrity: sha512-0VLQD0dhGBLY9Ik/w+otMvD81D0YXi4VDwql65macV+O9UzmSWmUr6CKf+dMtysDeC0PnG3y6kBkRO08BJx52g==} + '@oxfmt/binding-linux-riscv64-musl@0.76.0': + resolution: {integrity: sha512-86DOpmPDR5UzHSOB8y5HlOpYAIBtMx+6L72IyousNx54q1Kz61aykB4ScovFYivZUak+7Ww6tPBUjarluzYKLw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [riscv64] os: [linux] libc: [musl] - '@oxfmt/binding-linux-s390x-gnu@0.74.0': - resolution: {integrity: sha512-6X7BbZNz34+OHM6Oqjf6TRcUyRn6aRcB4VtIDZAF/uQRyeVhg+G2hv6MlMvmnRekVSyTJ/8rG/u8W2dRFW6glg==} + '@oxfmt/binding-linux-s390x-gnu@0.76.0': + resolution: {integrity: sha512-u6omjjFooKfnHLBI+3UtBVInAeuEhoM/RAIw/OiFop2QQgOan5zDfqPR6guMaylt68L60kV+by07Ibp87KDjrw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [s390x] os: [linux] libc: [glibc] - '@oxfmt/binding-linux-x64-gnu@0.74.0': - resolution: {integrity: sha512-4kYIQK53yJXrxwxSzx8H2bojlf6/KezLGYLRXzV9QCCkoiCsvBTCid9Bg83dUPTLPa3g9K0730f6MKDbck1+OA==} + '@oxfmt/binding-linux-x64-gnu@0.76.0': + resolution: {integrity: sha512-L0/hW1MdMrgsvuLGp9YEQOYOGj5xPHa8wVRtybdd5av03PV4qSpAq3pyfC7sn7UCA8ynRhMRTAa9Kr9nV4LGZg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [linux] libc: [glibc] - '@oxfmt/binding-linux-x64-musl@0.74.0': - resolution: {integrity: sha512-MfWz4wDREjp/JQDmuxtKieix4FHGa1z5rBvB3betdcPwZvf5fqeQrlCm1mmoyuUVQOh9Pt3M61HwN94kJCxw7Q==} + '@oxfmt/binding-linux-x64-musl@0.76.0': + resolution: {integrity: sha512-JNk/7HaPDJjy5kih3vq6b71Qif3tHx1ZFACGBzeHeNzyKaIpar4eFGya89GR398K2rwX0eEVmEq1npBPlEkkmg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [linux] libc: [musl] - '@oxfmt/binding-openharmony-arm64@0.74.0': - resolution: {integrity: sha512-6rmAApkq5s1kbDjvNI6Nl5A+JqQkLORb2sR941pf5HWsrd01WGKyagK/B4vX9+kh1FfvRkNgEu59FHvVk4H8cQ==} + '@oxfmt/binding-openharmony-arm64@0.76.0': + resolution: {integrity: sha512-MDLrOQPXDuPKvPUCvpP3hC6kO72dsYxfpYiR08Nf5DiM75M0d8+D26JwT4uHDf0bcflvlGHcd58Hn2HpxkHUUQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [openharmony] - '@oxfmt/binding-win32-arm64-msvc@0.74.0': - resolution: {integrity: sha512-+5SpRUnZNGeXTyumHnpHa791tQtt04qZs076WT8eTcGF2OJ631VLnf7S0kQSPuDG+PtJM0phadEB2WAr5n1w9g==} + '@oxfmt/binding-win32-arm64-msvc@0.76.0': + resolution: {integrity: sha512-2CcICDrQKqMAOFuzmts/8Ov5iKb+DW/QrW4MFsl2bnRg86uoiUvtqUkHqNSY19Shegc8pBHiXMSEHDjIg94o0A==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [win32] - '@oxfmt/binding-win32-ia32-msvc@0.74.0': - resolution: {integrity: sha512-1Fg+wYBO3Dsti1QX+/6EYHjeQzLC84tLOAqPu/r7ah3UJlUs9C/DB703Ay9Vcg+8VMzqZA2P5VGhzJraVUD4OQ==} + '@oxfmt/binding-win32-ia32-msvc@0.76.0': + resolution: {integrity: sha512-NjZLJg+tQpMWVSyeWBBKCpib7H/uLq84ZzxCvY5eqHzSaItuzCECGA9MBiZwmW8fnkBIfppg49Ib//LSCGAp8Q==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [ia32] os: [win32] - '@oxfmt/binding-win32-x64-msvc@0.74.0': - resolution: {integrity: sha512-y9jXUgPBm2TZIWbQhMYRRYAQM57+r4fbykgc+j24ICIIZl+pcuoNhnq1CRGm3oFiHnEUnZO00qOtSPGQdJ2ziQ==} + '@oxfmt/binding-win32-x64-msvc@0.76.0': + resolution: {integrity: sha512-0vCMaX/qloc7uaKBDRh+62SBW8EqmhS7c8/al+PxD594ao4lyEWdcoEmVoBgnCNVW07GDpg+9uPV7x6ta9mljw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [win32] - '@oxlint-tsgolint/darwin-arm64@7.0.2004': - resolution: {integrity: sha512-uJk3ttju7Lz+Nv8WG4CsLyewoL1qf/Ny8S8OksJ7Bm/F14Tc9gMfW6arM1PCc57IzH/X/I79YsCWTgxX1FKibQ==} + '@oxlint-tsgolint/darwin-arm64@7.0.2005': + resolution: {integrity: sha512-VqDZxcZVjlonNLuuvraVNgDQt+1ndwa4yJo8OqsK4HYh/61ba9IlMStCVfi/aaIqRoDhNbAKC8gdcTrXqnb+Ug==} cpu: [arm64] os: [darwin] - '@oxlint-tsgolint/darwin-x64@7.0.2004': - resolution: {integrity: sha512-0BFfHTzDxNDFPcu0UZAXT6CyCJHAXM0dZveyDb4KEHa2qF/DSnOKOrmvK/wFuFol9kvijbGM9JfuOsor+zWXRw==} + '@oxlint-tsgolint/darwin-x64@7.0.2005': + resolution: {integrity: sha512-4kUfLRNYoVpv0Tm3jPYrvxyfOc/LmdvFC3pKZ4tL6K7lA7K/VS81SAtmxRzbYXYSyb3SBWhwsuX+df4neqzxxA==} cpu: [x64] os: [darwin] - '@oxlint-tsgolint/linux-arm64@7.0.2004': - resolution: {integrity: sha512-TAehQc+qdRXyDN3nl/r/3/oPrBVrbtrDeGMkFyG6mf+XphpoJ2lAMVFLclyvrVZCw02RbKROjyw8h72XwQQHcw==} + '@oxlint-tsgolint/linux-arm64@7.0.2005': + resolution: {integrity: sha512-rhUNcPsBlKvhXtrbhbBUidtRBRdJ8fbEHN9H5Q5N59gby18ruGuDA7KUxl7oRnUzp797uykYQhkBDm+0KpfK/Q==} cpu: [arm64] os: [linux] - '@oxlint-tsgolint/linux-x64@7.0.2004': - resolution: {integrity: sha512-LPunZvm6ZbWPfHMAyfZf9ci3HHvNEzLejO8zdqO3GoVGoSEHqqufHUD7+OgeatVSaJP7uXDJ2HaNOHIoH7go4Q==} + '@oxlint-tsgolint/linux-x64@7.0.2005': + resolution: {integrity: sha512-tKs9yinDQZOHygM0e8EJnjTU3mzJtdfkOZP6Udu82iLMePUSHOhTJ9zzU/mSd1hQxURI4LTRRiFhfzC+PzwdNA==} cpu: [x64] os: [linux] - '@oxlint-tsgolint/win32-arm64@7.0.2004': - resolution: {integrity: sha512-FVWplzDImWhiuawnIZVETaQecv4GWom6Jv4Fx2xj7hhXXDZ5okEgiw1gTCImHTIQsi2ycC5oSxVwrn69bMh7iw==} + '@oxlint-tsgolint/win32-arm64@7.0.2005': + resolution: {integrity: sha512-VYPnu1gjfbSv+ROhuyNfMs382D4zQU2ZRc8Uc3nuEZo1k2kf+1KfTrg4hrlWh73h9GI+dUWyo+DYCQzUBlPwcQ==} cpu: [arm64] os: [win32] - '@oxlint-tsgolint/win32-x64@7.0.2004': - resolution: {integrity: sha512-7PsxuUx11Ry9DYTWcljTzRbmZY9B6O9fFFfZV+aodQEMy6pfRT3fhoQRv9PtGN/89z1pPz3nFKrsFm6WqNtX7w==} + '@oxlint-tsgolint/win32-x64@7.0.2005': + resolution: {integrity: sha512-ekU89cTGy9fpQzuvxIsFHrnoP8XoFjGIRgPEW6eqgY2NYjGy9pwpjF79o04WXRMJFKRrcaVqkZXUUBdLsqpQDw==} cpu: [x64] os: [win32] - '@oxlint/binding-android-arm-eabi@1.89.0': - resolution: {integrity: sha512-Pflpba5F3gRAQ12sWglRxvWTHEdAusNDvmi4Y5N1T5SY1AGkM7AixOnET8qkrnLJ/F32qAlNokO6eCknT8tmnw==} + '@oxlint/binding-android-arm-eabi@1.91.0': + resolution: {integrity: sha512-eOqJUUS1MCqIoUUxMIkuwaqIdKaHr1SXYA0CQI95UUrF8jwQylQH33bBmnqhZfvWXKlRB2Ylx/+Sbk/ctEqzZQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm] os: [android] - '@oxlint/binding-android-arm64@1.89.0': - resolution: {integrity: sha512-dYmyD1x7LaPlb79vZWUcpTShk8dI9z1I+IubtqrBxWNJaDhQdPHwcsvg7q5StTU4xWyd9AwPfLaTYFZY8NZgtQ==} + '@oxlint/binding-android-arm64@1.91.0': + resolution: {integrity: sha512-vIJU4lRxK0EhbBt+iR3rkq3pio4I+V5Gshwjei3plNjN+CIq0WxWHzYVI06J9KN8Ar3hyNSFtzJAjVRLZOYpjg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [android] - '@oxlint/binding-darwin-arm64@1.89.0': - resolution: {integrity: sha512-Z/oxOPiIqiS7fItRdxaaOEC+6GD3OpGi0IxoR0dMefzQHolsKLzScw2DNcu/5gUPok3tv+G9mslvYB5bo3i0qg==} + '@oxlint/binding-darwin-arm64@1.91.0': + resolution: {integrity: sha512-tLy76MurwAOpQt5QVMkJUgexBSWhB7qdvAYb14bc0xntZS6f55aKicbZoxZ/QlmAbnrdlXeD5+IjwY8EZ9RWTg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [darwin] - '@oxlint/binding-darwin-x64@1.89.0': - resolution: {integrity: sha512-eAjTkHSjAxrdCPJxO6y5sPQL5pYLKb2kvxZz9UU7tXnOZk9I/HLtkvx9S7GHY883k+AmL/eC7mqFt+w7WCwk0w==} + '@oxlint/binding-darwin-x64@1.91.0': + resolution: {integrity: sha512-zPeMmjAqm5vXxbTp/JqYuc9gGSbUuEaeCAkFHB4TCRLTlfJGD//Fkx03YvZHCHZJ7ideLiiLcae+3f2I27qnaA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [darwin] - '@oxlint/binding-freebsd-x64@1.89.0': - resolution: {integrity: sha512-0lNCA9Tl1n1FKpqy2/9ckp0kIuSrtJ/l9bMRgaEhOtM7TsOHshFuwOcvW8oA9teXLMOJT61LjEKWiaHDFGxF/w==} + '@oxlint/binding-freebsd-x64@1.91.0': + resolution: {integrity: sha512-psOR9+xGMXn0hj4KY5M2kjSQ1n0TCMdYbPOraoV0iQyl7mw2oBBYGUM2+ma40m1YLVrktTBOta4FjrmcOHDhrg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [freebsd] - '@oxlint/binding-linux-arm-gnueabihf@1.89.0': - resolution: {integrity: sha512-OTFEvi9W+JczaZD1Caj17SGCoW8H7TE+fvx0D7ATEWa1Lohn91UMxFQ6r145SiGy/yCxeIwptMys/RAM7gSVSQ==} + '@oxlint/binding-linux-arm-gnueabihf@1.91.0': + resolution: {integrity: sha512-1PNA1j4ETxawvxfz6ueDxWgQgWkXPbv44DWZmC7LR07GqojGFDOwWbosOT6/AYiJr7zMXEhn2dPWMkyFFOFpUQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm] os: [linux] - '@oxlint/binding-linux-arm-musleabihf@1.89.0': - resolution: {integrity: sha512-fRxgNHvBLswj6MrhW2uBq5UDhPRQlCbHeq/Nf8yuG9zOxhDsXqX/mi2PX1axgsQxMm88el7HLiJAzglAnflYxw==} + '@oxlint/binding-linux-arm-musleabihf@1.91.0': + resolution: {integrity: sha512-jcNePVpca37lTbHmiPMnVbPAAW0rH9kAoDjsDv6vESEX9pzazIR1q5SyYuc1rQzdjHtc2VVCDN9jDh6tHcOHyA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm] os: [linux] - '@oxlint/binding-linux-arm64-gnu@1.89.0': - resolution: {integrity: sha512-v9ENzHvwrQoYSWTtviH1pOYc7R9UovDxVofnck50cNmPihRRTcrg5X0UlRbLOZ7IVtxPOlh2hb7kDO+FpE8SfQ==} + '@oxlint/binding-linux-arm64-gnu@1.91.0': + resolution: {integrity: sha512-TJi78UX6R+9qZ23ZKtzN6adfW83bjY0NXsCRMBRH6H7IizaMXmZbdRAtjedMkx77bT46YQH0csawsY9lwha8MA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [linux] libc: [glibc] - '@oxlint/binding-linux-arm64-musl@1.89.0': - resolution: {integrity: sha512-vfffe8mQ484AzVadlUOFpgL+JDwhvs9hrzxTgQP1FVfi4ZEUUYeffXlzC9dFV7Dgnu5s/KrNKvfmG6HxBd/ISQ==} + '@oxlint/binding-linux-arm64-musl@1.91.0': + resolution: {integrity: sha512-OowlLroUTzKq5OBvbu6iegch8SJ2DivXFCukzPWURwvcJhMj7/P0CUGH5qrDlxT1Kh48dcxqYqrvE8qK6xTLKQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [linux] libc: [musl] - '@oxlint/binding-linux-ppc64-gnu@1.89.0': - resolution: {integrity: sha512-Buonlp4hVS7RGNP5M7bPpGNQrenyzA2C64JcO/oz9C1c6dGOXJ7VEAnaiAMY7voou0JYyCJdvDVlFQc5DZX3DQ==} + '@oxlint/binding-linux-ppc64-gnu@1.91.0': + resolution: {integrity: sha512-QF/5Ge8yGpWg5s4awMNHfVKh1WOmk591Qg082i6CHenXYBa+W1E5RwWZXaKUOw4Ko7CCjqg3TfBc0AzhnqblYg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [ppc64] os: [linux] libc: [glibc] - '@oxlint/binding-linux-riscv64-gnu@1.89.0': - resolution: {integrity: sha512-1eVwJJrJ3lYIPT+cm7BcBBZZXY6IQZP/oyonaruTor/MrVyWOpvnwt1oD5CLdsHg5aVBIxXodQSvt+1gK6ck5w==} + '@oxlint/binding-linux-riscv64-gnu@1.91.0': + resolution: {integrity: sha512-dXlsKlNhzJQX1nageGKnvWe1D7uTng249hQM80CG/YPZ8F/VZHbxVLhImgurdWBOmu86XOemValLjrW6QIOM/Q==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [riscv64] os: [linux] libc: [glibc] - '@oxlint/binding-linux-riscv64-musl@1.89.0': - resolution: {integrity: sha512-fRQQsKUGShdEL5Fl9o9uhj3grkZbeXKLv0icQ5tspUCNYSDy8wzzEcP1WC2bKdTQ0rSszbKlO3iiHORxV22DLg==} + '@oxlint/binding-linux-riscv64-musl@1.91.0': + resolution: {integrity: sha512-tznkj5VrWNRUfymkaLcJetgMLbP9suL5ob/m7j0Fdbnm5u3Li/Ezo/YcBixiuwdL1sg0oGpyTe86It0J6T+Lxg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [riscv64] os: [linux] libc: [musl] - '@oxlint/binding-linux-s390x-gnu@1.89.0': - resolution: {integrity: sha512-dEtYjIy6+fHcjKklsmtmMkZRhwHr2UbzjmpvuPtQYSeN9awQ2hx5JLms5Wvri+8P/NZtD8v5hfgHALUql+/Ycg==} + '@oxlint/binding-linux-s390x-gnu@1.91.0': + resolution: {integrity: sha512-sNvfLiUYQkVsLNUgIW24AEYTHSd2zZ1vAxXssPdjuQHTtCpRvQihYri6d5z5FY7w/QrcnB5+g9E+/sqmZq8tfA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [s390x] os: [linux] libc: [glibc] - '@oxlint/binding-linux-x64-gnu@1.89.0': - resolution: {integrity: sha512-hqjwIj5KOYM8Wjef/p7IruNi1iByLhSzbMBk62y22P/E8q7Jj0Pp+DeUTKTRYyZYCDtU1wEGlnWOnttHbyNIww==} + '@oxlint/binding-linux-x64-gnu@1.91.0': + resolution: {integrity: sha512-eA25ETvimhUZ89y5BcunNY7yv7qwG2I7V7dFQAU+mIEqZ57gBCXdIERl0yXOEt43zjsw0yK2gRKTc+twF706wQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [linux] libc: [glibc] - '@oxlint/binding-linux-x64-musl@1.89.0': - resolution: {integrity: sha512-iAQN3e6o9UgUCcdGwqRx/jYcKbG3HK7ur3rH6lTqVcQeNGZ85AeWIg6cgn/edwFQ0ofEZZItMwkzyCVTahnvEA==} + '@oxlint/binding-linux-x64-musl@1.91.0': + resolution: {integrity: sha512-4hZ4Z9K+OkcTpAHDoUTMg/8MModbM0aocrl9KnGzp9h5iKqjrXraEUZorYoVCT7xoK93CAHXgTndxRBrOjH/fA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [linux] libc: [musl] - '@oxlint/binding-openharmony-arm64@1.89.0': - resolution: {integrity: sha512-MNxjEByz3N/7Q4qFQuPWvc14TpN9LoD3pECEDsJTZbP/wyB7U+hduUXEl7QAbbgVezFwsb9sWtNUO6XVBndOhg==} + '@oxlint/binding-openharmony-arm64@1.91.0': + resolution: {integrity: sha512-gtqn4b0kLpGe46Qh7NHiR86wZpd+TLaesO106s7V3RG33r63VB94LW5qPKEDJX64osh3xfjnPFn1M0484bC7wQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [openharmony] - '@oxlint/binding-win32-arm64-msvc@1.89.0': - resolution: {integrity: sha512-xxe+i9wfuFso/VnoL4mfj0UlzE+cfCFiUB06vkXCMyQdgVVmItF5FfAF4tATAktSU6uHruWR+FjqvAT9cHZZzg==} + '@oxlint/binding-win32-arm64-msvc@1.91.0': + resolution: {integrity: sha512-KQItBdsyHN28U3z/bEek6h9pvG3Uqv564QYO8K1bE/V7YRZgpHlRnfNKVPHkk4sfYKyPzEjCgW80QkImOLvJog==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [win32] - '@oxlint/binding-win32-ia32-msvc@1.89.0': - resolution: {integrity: sha512-saFy07cO94E664glwgLmKLI40HgTL1PY86y4T6+ud4niX4H0Kdqjcmqmjps7mQNdBytV5guGbXDdyQtRfeLbLA==} + '@oxlint/binding-win32-ia32-msvc@1.91.0': + resolution: {integrity: sha512-XFKqbbsQVmTgw+CyBKuzSZtAa45viom1naFfulKmkTFdDyDaBQaBqEz5J61TI8iwBynU+F8q7qPD+9mplZRhEg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [ia32] os: [win32] - '@oxlint/binding-win32-x64-msvc@1.89.0': - resolution: {integrity: sha512-hLFJ/o0f/dTJh/EW0vmcbREYSQO9tYgfiAAlsOkiLFiJuRRWvYtFELUXN5o2ijpSo/tlO1n+YlWN58tZwPG18A==} + '@oxlint/binding-win32-x64-msvc@1.91.0': + resolution: {integrity: sha512-DmpK0PthG66Bcz5Y4JqNbzXltzyLQtg3ofYpd25+ejm7kQYUM78VL1uIP/ZFct2781mwUyBX37LatFPCTVp35A==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [win32] - '@oxlint/plugins@1.89.0': - resolution: {integrity: sha512-TJBBNl4KIxbxrSk7gsqlz6iM1kxidfyTizEzfWqXvijF2Ou8/Da58GvjemBVmCmaUamwRij+JwsVc0kpBFuqfg==} + '@oxlint/plugins@1.91.0': + resolution: {integrity: sha512-Fh+SOBxMu7/pbSk84WG4BN6npcxxlF4jWNQJ+S4IUNyvSVeQwOVTFQMD/Dx2EqBQ1lVeCADcJ+0rzT1BKQ9cUA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} '@polka/url@1.0.0-next.29': @@ -675,18 +675,18 @@ packages: '@types/node@22.20.5': resolution: {integrity: sha512-U2+DNr+wSjpsTS/wZGYHq7GcwfuSmKiKvoPvK22zwTlRhU91yOniN4qRR5KhIjvif7ysw/dz/hKmfDH0Ris4aA==} - '@vitest/browser-preview@5.0.5': - resolution: {integrity: sha512-ViNg4UlomGSJHtnnr7Txm+55P7/aAMMoS+1WYnWjp5w5tzf7YEUAICcs2sb1uMovEnC8el/8zUfkWZ8+7fPCKA==} + '@vitest/browser-preview@5.1.0': + resolution: {integrity: sha512-z9SbodBSMoJtYy5VTCaSP5SSZfNYRlfIlR0P/uH1PAuhUJbstSyOYvxXCYmqG+EemIiZzd3uGUtREX5zbXLR8A==} peerDependencies: - vitest: 5.0.5 + vitest: 5.1.0 - '@vitest/browser@5.0.5': - resolution: {integrity: sha512-IDMoZX/iZ8rkilw7weaSgN8tJ7iZ9hUv0wYoKXyiyjWjWFwLSWAY707DcVTgxTYOudWC1E3HA9LYn7kVa9a7uQ==} + '@vitest/browser@5.1.0': + resolution: {integrity: sha512-2sjGVAC/Rs8Jwv+xxBgklNG2g1LGyNgcFMBw71AcfBstLz25UGv1+fVvvZ+z8IfSuNg3nipERijnFtoEIdRDEA==} peerDependencies: - vitest: 5.0.5 + vitest: 5.1.0 - '@vitest/mocker@5.0.5': - resolution: {integrity: sha512-xLL3lkDegJZw+MGoGaCCsFayDZthGgpAtr3Vziyfc4p7xH89K7KRPcRBBh/kEYm0Aqkt5DtTmkYpBtRV/FrHZg==} + '@vitest/mocker@5.1.0': + resolution: {integrity: sha512-5umB9/jlWcqVS6fsrFmv5Gdnpu6wAUio/lEOwAmvB7v+lFo/IW2B9FhAD0p19GCULTgMzLCdUmuCDCnAzWgppQ==} peerDependencies: msw: ^2.4.9 || ^3.0.0 vite: ^6.0.0 || ^7.0.0 || ^8.0.0 @@ -696,25 +696,25 @@ packages: vite: optional: true - '@vitest/pretty-format@5.0.5': - resolution: {integrity: sha512-24sSdIlMA9DVPXnYiB9siwU0bTd887Y9jX3+vabztCSsvHwo7ipvJ/a2L3Rljw8+2rK1f5fCj3h5U9I/Jsqgbw==} + '@vitest/pretty-format@5.1.0': + resolution: {integrity: sha512-IRx5mc30CrFzyMNni6SZKQ1r53kv049Mcvvk0WbWcD6PUz/bFjG4zYv0KosQAeonPpGp5WxqYBMqdSOfJfvVWw==} - '@vitest/snapshot@5.0.5': - resolution: {integrity: sha512-dHyFElWMQy0wFBGrIaPPeUWfJFh+jAUrv46ImIJGd8CADdKV3mlrAu3FyD0wesdxELFCs9M807e040Kba/XKtA==} + '@vitest/snapshot@5.1.0': + resolution: {integrity: sha512-6tLM70+37LVXz+A6QmOlMQUuj+taODAyXZhz58lNNNNKHH0D81yzPBEezKQQGPlABc8OpAQBOBVvssVLLQqixw==} - '@vitest/spy@5.0.5': - resolution: {integrity: sha512-lwJRExuH417257Q5wv9QYugN9IMJkoxcrKrYxGPQkBzl7wlNpTUxD/5yNX4ESKVUIShKPgkGchYPFMWOOk0wzw==} + '@vitest/spy@5.1.0': + resolution: {integrity: sha512-2DPO5OMHWKrBngC+fCmTQqemNF0gidRhp3lxbBmRhW+M1XJrfgPpqNqWVevXtn2f2ufD5ZaR1B6B641aAlcX5A==} - '@vitest/ui@5.0.5': - resolution: {integrity: sha512-dCoGUOdgmCaSB2g+WQ/spPCBkytAWdNUkFSXY4z+eYp2d8JEOY8v0uDRaJTG9qf/kTlTVZ4CuYMYMz/f1HS/qQ==} + '@vitest/ui@5.1.0': + resolution: {integrity: sha512-00S3x4NRmqIBUiTVWF9/xLaA9EP9KeKv0+1sBO7e2Y4luBISlW+2ttnhlk/zjbTqEvVhJWCCo7MXzu6zNbefqQ==} peerDependencies: - vitest: 5.0.5 + vitest: 5.1.0 - '@vitest/utils@5.0.5': - resolution: {integrity: sha512-/rBu7gzLDQI/SC79Tn98b5DwOgaHU/Gt4I9OVeP3YofzNaYtbImRCOJQmT1S6vOJg9gEIlWC+r3QxKkjuSa1nQ==} + '@vitest/utils@5.1.0': + resolution: {integrity: sha512-V+qgCwkvVw+s1t1S5TaoBHsLi5Sz/YmohCMoOu0mZ8ZQst2bKhRYARAQucWpVg8D0mv0x5MHcWXY5QdOsoiGBQ==} - '@voidzero-dev/vite-plus-core@1.4.0': - resolution: {integrity: sha512-LTGXCdZ58qJKfuCOmf0hnZOVA64eOgzDQOqYpI+71tPxk/0cGqPQhYDGQQZoEvNLAn1G2Lo4gKadsQdWxb99WQ==} + '@voidzero-dev/vite-plus-core@1.5.1': + resolution: {integrity: sha512-34nfvz01DlXmNTRtqOiA2OnI/QsnMZ/XkH2EJYXhXl7D5xloi9EBO87e57Zuo9sgqwDksvtp2gOH72MZZIz0qQ==} engines: {node: ^20.19.0 || ^22.18.0 || >=24.11.0} peerDependencies: '@arethetypeswrong/core': ^0.18.1 @@ -782,54 +782,54 @@ packages: yaml: optional: true - '@voidzero-dev/vite-plus-darwin-arm64@1.4.0': - resolution: {integrity: sha512-5Ie3vnrFrF5GFU+0VhbLuyoSmnzd8m42BvbLjncMOmAb6D1sEq4g37dlxPiVcJEqITM0t4zFnLkNSF4YAlk0FQ==} + '@voidzero-dev/vite-plus-darwin-arm64@1.5.1': + resolution: {integrity: sha512-hYxibkQivI54eOYpkEgYeXmxbRM+ovO9nYetDL6EJP7XHesuohaT/IpQgOigLlWj6+Bfqs0MTCfDHoS4gmUXcw==} engines: {node: '>=20.0.0'} cpu: [arm64] os: [darwin] - '@voidzero-dev/vite-plus-darwin-x64@1.4.0': - resolution: {integrity: sha512-vaR7F+ix/91EycJYXOQ24Nzw470U12x3L+YLbbtuRwHDMW67fCbhXzcW+otZS8q4eRdIzEcA5svv9P8kcsaRkA==} + '@voidzero-dev/vite-plus-darwin-x64@1.5.1': + resolution: {integrity: sha512-h82GIWf4zkG/UqYYaEtUv1oQWi755QAqG4m9S+ApB4dQvZQkSxsUZfKgBXASz2x6SH/SRcElZipnslTEBAghoA==} engines: {node: '>=20.0.0'} cpu: [x64] os: [darwin] - '@voidzero-dev/vite-plus-linux-arm64-gnu@1.4.0': - resolution: {integrity: sha512-58/PZrp+f3Hy6kFVKqbrZVenjo5t012rTOgRSgMoJyOhJjXBHqvORh9lB9GIip9r9maoWN31R1a44obPX9MD7g==} + '@voidzero-dev/vite-plus-linux-arm64-gnu@1.5.1': + resolution: {integrity: sha512-Vg1vugNxq2tI6eV6gn9e3S2QZP1XvCuqyHdhQuBMjPa852+jhUC2Yz1iqzSYthn6CGO7oGRK/Zj6xsvnzjk9Vg==} engines: {node: '>=20.0.0'} cpu: [arm64] os: [linux] libc: [glibc] - '@voidzero-dev/vite-plus-linux-arm64-musl@1.4.0': - resolution: {integrity: sha512-Ij08vPrxG1J23wQVm0LtLPrQevv4tos8TirP/jGTpQQmQAgYOpmIfMrx8BF+vOGMncOIo+kKacp4jPVmhctfhg==} + '@voidzero-dev/vite-plus-linux-arm64-musl@1.5.1': + resolution: {integrity: sha512-53lJyznOJmIHT7Q2Bi2v3hB4qr8XqTHVDZsfN1H7JMk1ptCuD7A++OKAsBh8/60xMhKEyCIH713vuzqJVW6drA==} engines: {node: '>=20.0.0'} cpu: [arm64] os: [linux] libc: [musl] - '@voidzero-dev/vite-plus-linux-x64-gnu@1.4.0': - resolution: {integrity: sha512-RbM21Y5cSx5WesaFV/Swo22JRvimjO6NDItoL5wNI6NTa987ck7v19HBmp+V4nkOCFHbMdxwfhyALDw0y06xEA==} + '@voidzero-dev/vite-plus-linux-x64-gnu@1.5.1': + resolution: {integrity: sha512-aU+cnwcnjDcH11dDe+roQ7GJRjLwt9YtYslcPQg+L1pLUSEuQUjlyfasuCoS8Xhb/Gz/miS3dQ5aZbhMIETk3g==} engines: {node: '>=20.0.0'} cpu: [x64] os: [linux] libc: [glibc] - '@voidzero-dev/vite-plus-linux-x64-musl@1.4.0': - resolution: {integrity: sha512-Q+p+YJztEmqjJoumTmPaBQ/PEx3eFhiNTQTn5+85gkBUiRexkFQ8A86TMFxbKVgrJbiAOltkrJRmVRhRs5Q0sA==} + '@voidzero-dev/vite-plus-linux-x64-musl@1.5.1': + resolution: {integrity: sha512-x0Ch0s+7y1rCKR/22jjrCL8UfaEXSp3tPedwhPk3wG6VE9bREaeiXCDagymMvWp6VuT3QeW1dTpg4/WrIrjaXQ==} engines: {node: '>=20.0.0'} cpu: [x64] os: [linux] libc: [musl] - '@voidzero-dev/vite-plus-win32-arm64-msvc@1.4.0': - resolution: {integrity: sha512-PLGVov8c4/QfveOM/AYjYDlgMCQ0SxCmJp392qBgxaSXP0nEg6yP4hn5UtnhxvluhHEzVkTf2r1Q3LNlZRI7kw==} + '@voidzero-dev/vite-plus-win32-arm64-msvc@1.5.1': + resolution: {integrity: sha512-VbVBuOxBYuxd1/1zbGmVpw9ey+N81F3v2E2aZc+OpPx8ZEytMb6b08/yKcJky/WA+fWHV5mkBYP4Kz/WZrByRg==} engines: {node: '>=20.0.0'} cpu: [arm64] os: [win32] - '@voidzero-dev/vite-plus-win32-x64-msvc@1.4.0': - resolution: {integrity: sha512-DYG7wDsMLLs2/+8qfeyLScdoMh+aPM4IZanoVPSNt8fMeeXR2GQiiZDKc0qZHKN9+YcdCGK1HLAdMAGSywKvsA==} + '@voidzero-dev/vite-plus-win32-x64-msvc@1.5.1': + resolution: {integrity: sha512-GlljpfSCydZXpiC9GGGLpWAyf0ZoUuOdbzYgTjF+DvHW4ntMWxgd7x1WnynFjMtLN2fp6KJ7mzgz9Y2k1uNW2Q==} engines: {node: '>=20.0.0'} cpu: [x64] os: [win32] @@ -1068,12 +1068,12 @@ packages: resolution: {integrity: sha512-5vvB5+W7ePv+p3uqxi+RcW1XAzLW0/hxt3/4X4Lc4qHudzOhmBiBwOY6DRob4WnanAEGvNcLjF+KNOufrUoEQw==} engines: {node: '>=12.20.0'} - oxfmt@0.74.0: - resolution: {integrity: sha512-G4OP7FgwGYZR5ttRpCOOfJdyRsSyvtn34vSXnjDq6Oqed5Dufg5mB44mank+51nAdHOKuTJ0lj0mksY7L+N61A==} + oxfmt@0.76.0: + resolution: {integrity: sha512-Yo9RIn9lRWTm/U8obHbXUWc39lCpEFXlEggFoPx01zS18OCFi7mAwMmL05+p1AunuJgSkONffWyBHJzpMMCRuQ==} engines: {node: ^20.19.0 || >=22.12.0} hasBin: true peerDependencies: - '@astrojs/compiler-rs': ^0.4.0 || ^0.5.0 + '@astrojs/compiler-rs': ^0.5.0 svelte: ^5.0.0 vite-plus: '*' peerDependenciesMeta: @@ -1084,16 +1084,16 @@ packages: vite-plus: optional: true - oxlint-tsgolint@7.0.2004: - resolution: {integrity: sha512-vQ9WDF3fiZJvRdSDosNOflerOCOpwol6vWzVDxW76RcU19cjTh7engvkHLvmv+tzedR8fAiJUVUGr6IVZdkzXQ==} + oxlint-tsgolint@7.0.2005: + resolution: {integrity: sha512-6ccPGu4u4J9bwYPHXBFPee3RZrX3BboRdU7k14zRDDB1lvN3O7J/vPRFdaEfa1+CWx4xnQQOp4ctoaF66oO0uw==} hasBin: true - oxlint@1.89.0: - resolution: {integrity: sha512-a25hkfo61okGPvJz432fRIPoxlKtNnOVy9w4rzrmGgNm4iVTPwpSQlmdqNWnp6p9QyyPVfAZRgnf5XvSBZFk/A==} + oxlint@1.91.0: + resolution: {integrity: sha512-vjy/cBZcEFcYh3dbxUoQK+bjc+QaY3ZWo86aJkZ5YAwp/HyiqP7dTdNgbvcIVJafhAH5sZbTqBp4sZcicEZngA==} engines: {node: ^20.19.0 || >=22.12.0} hasBin: true peerDependencies: - oxlint-tsgolint: '>=7.0.2003' + oxlint-tsgolint: '>=7.0.2005' vite-plus: '*' peerDependenciesMeta: oxlint-tsgolint: @@ -1174,12 +1174,12 @@ packages: undici-types@6.21.0: resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==} - vite-plus@1.4.0: - resolution: {integrity: sha512-bLyUKNFl0XjbHe20FpDM6OuknOb2E4ueoWKCW4n+wMO2+lQtA9tmAjW+Xs0Xe9rg2+tCgY3W13GOgDh2wjwjAQ==} + vite-plus@1.5.1: + resolution: {integrity: sha512-Ckl9Vc5fg3BC8SlxPKujSQz+p1CbFy+5++yrFVbwZRdcpHzj0ExaWuNccKdnW128xGU8ECX6RK7n5YPXSHFWpg==} engines: {node: ^22.18.0 || ^24.11.0 || >=26.0.0} hasBin: true peerDependencies: - '@vitest/browser-playwright': 5.0.5 + '@vitest/browser-playwright': 5.1.0 '@vitest/browser-webdriverio': ^5.0.0-beta.5 || >=5.0.0 playwright: '*' peerDependenciesMeta: @@ -1190,20 +1190,20 @@ packages: playwright: optional: true - vitest@5.0.5: - resolution: {integrity: sha512-cPODOMF8YnkiiYtDdHo6n4wWmBrOBBbOIYH2d33M4l3CdNn72h+qMmO6uXffUN6A5AZFXNND/d+krS9mgkXRfg==} + vitest@5.1.0: + resolution: {integrity: sha512-MzmNFnrwa8v8lF1bLxw3UJ4EREwVOVb75VqJZmUDRjJ6EluK/x9th7qTbaeDk41WxE1GxWqmTXcdsfobfH5sOA==} engines: {node: ^22.12.0 || ^24.0.0 || >=26.0.0} hasBin: true peerDependencies: '@edge-runtime/vm': '*' '@opentelemetry/api': ^1.9.0 '@types/node': ^22.0.0 || >=24.0.0 - '@vitest/browser-playwright': 5.0.5 - '@vitest/browser-preview': 5.0.5 + '@vitest/browser-playwright': 5.1.0 + '@vitest/browser-preview': 5.1.0 '@vitest/browser-webdriverio': ^5.0.0-beta.5 || >=5.0.0 - '@vitest/coverage-istanbul': 5.0.5 - '@vitest/coverage-v8': 5.0.5 - '@vitest/ui': 5.0.5 + '@vitest/coverage-istanbul': 5.1.0 + '@vitest/coverage-v8': 5.1.0 + '@vitest/ui': 5.1.0 happy-dom: '*' jsdom: '*' vite: ^6.4.0 || ^7.0.0 || ^8.0.0 @@ -1357,143 +1357,143 @@ snapshots: '@jridgewell/resolve-uri': 3.1.2 '@jridgewell/sourcemap-codec': 1.6.0 - '@oxc-project/runtime@0.155.0': {} + '@oxc-project/runtime@0.157.0': {} - '@oxc-project/types@0.155.0': {} + '@oxc-project/types@0.157.0': {} - '@oxfmt/binding-android-arm-eabi@0.74.0': + '@oxfmt/binding-android-arm-eabi@0.76.0': optional: true - '@oxfmt/binding-android-arm64@0.74.0': + '@oxfmt/binding-android-arm64@0.76.0': optional: true - '@oxfmt/binding-darwin-arm64@0.74.0': + '@oxfmt/binding-darwin-arm64@0.76.0': optional: true - '@oxfmt/binding-darwin-x64@0.74.0': + '@oxfmt/binding-darwin-x64@0.76.0': optional: true - '@oxfmt/binding-freebsd-x64@0.74.0': + '@oxfmt/binding-freebsd-x64@0.76.0': optional: true - '@oxfmt/binding-linux-arm-gnueabihf@0.74.0': + '@oxfmt/binding-linux-arm-gnueabihf@0.76.0': optional: true - '@oxfmt/binding-linux-arm-musleabihf@0.74.0': + '@oxfmt/binding-linux-arm-musleabihf@0.76.0': optional: true - '@oxfmt/binding-linux-arm64-gnu@0.74.0': + '@oxfmt/binding-linux-arm64-gnu@0.76.0': optional: true - '@oxfmt/binding-linux-arm64-musl@0.74.0': + '@oxfmt/binding-linux-arm64-musl@0.76.0': optional: true - '@oxfmt/binding-linux-ppc64-gnu@0.74.0': + '@oxfmt/binding-linux-ppc64-gnu@0.76.0': optional: true - '@oxfmt/binding-linux-riscv64-gnu@0.74.0': + '@oxfmt/binding-linux-riscv64-gnu@0.76.0': optional: true - '@oxfmt/binding-linux-riscv64-musl@0.74.0': + '@oxfmt/binding-linux-riscv64-musl@0.76.0': optional: true - '@oxfmt/binding-linux-s390x-gnu@0.74.0': + '@oxfmt/binding-linux-s390x-gnu@0.76.0': optional: true - '@oxfmt/binding-linux-x64-gnu@0.74.0': + '@oxfmt/binding-linux-x64-gnu@0.76.0': optional: true - '@oxfmt/binding-linux-x64-musl@0.74.0': + '@oxfmt/binding-linux-x64-musl@0.76.0': optional: true - '@oxfmt/binding-openharmony-arm64@0.74.0': + '@oxfmt/binding-openharmony-arm64@0.76.0': optional: true - '@oxfmt/binding-win32-arm64-msvc@0.74.0': + '@oxfmt/binding-win32-arm64-msvc@0.76.0': optional: true - '@oxfmt/binding-win32-ia32-msvc@0.74.0': + '@oxfmt/binding-win32-ia32-msvc@0.76.0': optional: true - '@oxfmt/binding-win32-x64-msvc@0.74.0': + '@oxfmt/binding-win32-x64-msvc@0.76.0': optional: true - '@oxlint-tsgolint/darwin-arm64@7.0.2004': + '@oxlint-tsgolint/darwin-arm64@7.0.2005': optional: true - '@oxlint-tsgolint/darwin-x64@7.0.2004': + '@oxlint-tsgolint/darwin-x64@7.0.2005': optional: true - '@oxlint-tsgolint/linux-arm64@7.0.2004': + '@oxlint-tsgolint/linux-arm64@7.0.2005': optional: true - '@oxlint-tsgolint/linux-x64@7.0.2004': + '@oxlint-tsgolint/linux-x64@7.0.2005': optional: true - '@oxlint-tsgolint/win32-arm64@7.0.2004': + '@oxlint-tsgolint/win32-arm64@7.0.2005': optional: true - '@oxlint-tsgolint/win32-x64@7.0.2004': + '@oxlint-tsgolint/win32-x64@7.0.2005': optional: true - '@oxlint/binding-android-arm-eabi@1.89.0': + '@oxlint/binding-android-arm-eabi@1.91.0': optional: true - '@oxlint/binding-android-arm64@1.89.0': + '@oxlint/binding-android-arm64@1.91.0': optional: true - '@oxlint/binding-darwin-arm64@1.89.0': + '@oxlint/binding-darwin-arm64@1.91.0': optional: true - '@oxlint/binding-darwin-x64@1.89.0': + '@oxlint/binding-darwin-x64@1.91.0': optional: true - '@oxlint/binding-freebsd-x64@1.89.0': + '@oxlint/binding-freebsd-x64@1.91.0': optional: true - '@oxlint/binding-linux-arm-gnueabihf@1.89.0': + '@oxlint/binding-linux-arm-gnueabihf@1.91.0': optional: true - '@oxlint/binding-linux-arm-musleabihf@1.89.0': + '@oxlint/binding-linux-arm-musleabihf@1.91.0': optional: true - '@oxlint/binding-linux-arm64-gnu@1.89.0': + '@oxlint/binding-linux-arm64-gnu@1.91.0': optional: true - '@oxlint/binding-linux-arm64-musl@1.89.0': + '@oxlint/binding-linux-arm64-musl@1.91.0': optional: true - '@oxlint/binding-linux-ppc64-gnu@1.89.0': + '@oxlint/binding-linux-ppc64-gnu@1.91.0': optional: true - '@oxlint/binding-linux-riscv64-gnu@1.89.0': + '@oxlint/binding-linux-riscv64-gnu@1.91.0': optional: true - '@oxlint/binding-linux-riscv64-musl@1.89.0': + '@oxlint/binding-linux-riscv64-musl@1.91.0': optional: true - '@oxlint/binding-linux-s390x-gnu@1.89.0': + '@oxlint/binding-linux-s390x-gnu@1.91.0': optional: true - '@oxlint/binding-linux-x64-gnu@1.89.0': + '@oxlint/binding-linux-x64-gnu@1.91.0': optional: true - '@oxlint/binding-linux-x64-musl@1.89.0': + '@oxlint/binding-linux-x64-musl@1.91.0': optional: true - '@oxlint/binding-openharmony-arm64@1.89.0': + '@oxlint/binding-openharmony-arm64@1.91.0': optional: true - '@oxlint/binding-win32-arm64-msvc@1.89.0': + '@oxlint/binding-win32-arm64-msvc@1.91.0': optional: true - '@oxlint/binding-win32-ia32-msvc@1.89.0': + '@oxlint/binding-win32-ia32-msvc@1.91.0': optional: true - '@oxlint/binding-win32-x64-msvc@1.89.0': + '@oxlint/binding-win32-x64-msvc@1.91.0': optional: true - '@oxlint/plugins@1.89.0': {} + '@oxlint/plugins@1.91.0': {} '@polka/url@1.0.0-next.29': {} @@ -1527,29 +1527,29 @@ snapshots: dependencies: undici-types: 6.21.0 - '@vitest/browser-preview@5.0.5(@voidzero-dev/vite-plus-core@1.4.0(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3))(vitest@5.0.5)': + '@vitest/browser-preview@5.1.0(@voidzero-dev/vite-plus-core@1.5.1(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3))(vitest@5.1.0)': dependencies: '@testing-library/dom': 10.4.2 '@testing-library/user-event': 14.6.8(@testing-library/dom@10.4.2) - '@vitest/browser': 5.0.5(@voidzero-dev/vite-plus-core@1.4.0(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3))(vitest@5.0.5) - vitest: 5.0.5(@types/node@22.20.5)(@vitest/browser-preview@5.0.5)(@vitest/ui@5.0.5)(@voidzero-dev/vite-plus-core@1.4.0(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3)) + '@vitest/browser': 5.1.0(@voidzero-dev/vite-plus-core@1.5.1(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3))(vitest@5.1.0) + vitest: 5.1.0(@types/node@22.20.5)(@vitest/browser-preview@5.1.0)(@vitest/ui@5.1.0)(@voidzero-dev/vite-plus-core@1.5.1(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3)) transitivePeerDependencies: - bufferutil - msw - utf-8-validate - vite - '@vitest/browser@5.0.5(@voidzero-dev/vite-plus-core@1.4.0(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3))(vitest@5.0.5)': + '@vitest/browser@5.1.0(@voidzero-dev/vite-plus-core@1.5.1(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3))(vitest@5.1.0)': dependencies: '@blazediff/core': 1.10.0 - '@vitest/mocker': 5.0.5(@voidzero-dev/vite-plus-core@1.4.0(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3)) - '@vitest/ui': 5.0.5(vitest@5.0.5) - '@vitest/utils': 5.0.5 + '@vitest/mocker': 5.1.0(@voidzero-dev/vite-plus-core@1.5.1(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3)) + '@vitest/ui': 5.1.0(vitest@5.1.0) + '@vitest/utils': 5.1.0 magic-string: 1.4.5 pngjs: 7.0.0 sirv: 3.0.2 tinyrainbow: 3.2.0 - vitest: 5.0.5(@types/node@22.20.5)(@vitest/browser-preview@5.0.5)(@vitest/ui@5.0.5)(@voidzero-dev/vite-plus-core@1.4.0(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3)) + vitest: 5.1.0(@types/node@22.20.5)(@vitest/browser-preview@5.1.0)(@vitest/ui@5.1.0)(@voidzero-dev/vite-plus-core@1.5.1(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3)) ws: 8.22.1 transitivePeerDependencies: - bufferutil @@ -1557,88 +1557,88 @@ snapshots: - utf-8-validate - vite - '@vitest/mocker@5.0.5(@voidzero-dev/vite-plus-core@1.4.0(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3))': + '@vitest/mocker@5.1.0(@voidzero-dev/vite-plus-core@1.5.1(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3))': dependencies: '@jridgewell/trace-mapping': 0.3.31 - '@vitest/spy': 5.0.5 + '@vitest/spy': 5.1.0 estree-walker: 3.0.3 magic-string: 1.4.5 optionalDependencies: - vite: '@voidzero-dev/vite-plus-core@1.4.0(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3)' + vite: '@voidzero-dev/vite-plus-core@1.5.1(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3)' - '@vitest/pretty-format@5.0.5': + '@vitest/pretty-format@5.1.0': dependencies: tinyrainbow: 3.2.0 - '@vitest/snapshot@5.0.5': + '@vitest/snapshot@5.1.0': dependencies: - '@vitest/pretty-format': 5.0.5 - '@vitest/utils': 5.0.5 + '@vitest/pretty-format': 5.1.0 + '@vitest/utils': 5.1.0 magic-string: 1.4.5 pathe: 2.0.3 - '@vitest/spy@5.0.5': {} + '@vitest/spy@5.1.0': {} - '@vitest/ui@5.0.5(vitest@5.0.5)': + '@vitest/ui@5.1.0(vitest@5.1.0)': dependencies: - '@vitest/utils': 5.0.5 + '@vitest/utils': 5.1.0 fflate: 0.8.3 flatted: 3.4.4 pathe: 2.0.3 sirv: 3.0.2 tinyrainbow: 3.2.0 - vitest: 5.0.5(@types/node@22.20.5)(@vitest/browser-preview@5.0.5)(@vitest/ui@5.0.5)(@voidzero-dev/vite-plus-core@1.4.0(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3)) + vitest: 5.1.0(@types/node@22.20.5)(@vitest/browser-preview@5.1.0)(@vitest/ui@5.1.0)(@voidzero-dev/vite-plus-core@1.5.1(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3)) - '@vitest/utils@5.0.5': + '@vitest/utils@5.1.0': dependencies: - '@vitest/pretty-format': 5.0.5 + '@vitest/pretty-format': 5.1.0 convert-source-map: 2.0.0 tinyrainbow: 3.2.0 - '@voidzero-dev/vite-plus-core@1.4.0(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3)': + '@voidzero-dev/vite-plus-core@1.5.1(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3)': dependencies: - '@oxc-project/runtime': 0.155.0 - '@oxc-project/types': 0.155.0 + '@oxc-project/runtime': 0.157.0 + '@oxc-project/types': 0.157.0 lightningcss: 1.33.0 postcss: 8.5.32 yuku-parser: 0.19.0 optionalDependencies: '@types/node': 22.20.5 - '@voidzero-dev/vite-plus-darwin-arm64': 1.4.0 - '@voidzero-dev/vite-plus-darwin-x64': 1.4.0 - '@voidzero-dev/vite-plus-linux-arm64-gnu': 1.4.0 - '@voidzero-dev/vite-plus-linux-arm64-musl': 1.4.0 - '@voidzero-dev/vite-plus-linux-x64-gnu': 1.4.0 - '@voidzero-dev/vite-plus-linux-x64-musl': 1.4.0 - '@voidzero-dev/vite-plus-win32-arm64-msvc': 1.4.0 - '@voidzero-dev/vite-plus-win32-x64-msvc': 1.4.0 + '@voidzero-dev/vite-plus-darwin-arm64': 1.5.1 + '@voidzero-dev/vite-plus-darwin-x64': 1.5.1 + '@voidzero-dev/vite-plus-linux-arm64-gnu': 1.5.1 + '@voidzero-dev/vite-plus-linux-arm64-musl': 1.5.1 + '@voidzero-dev/vite-plus-linux-x64-gnu': 1.5.1 + '@voidzero-dev/vite-plus-linux-x64-musl': 1.5.1 + '@voidzero-dev/vite-plus-win32-arm64-msvc': 1.5.1 + '@voidzero-dev/vite-plus-win32-x64-msvc': 1.5.1 esbuild: 0.28.2 fsevents: 2.3.3 tsx: 4.23.15 typescript: 5.9.3 - '@voidzero-dev/vite-plus-darwin-arm64@1.4.0': + '@voidzero-dev/vite-plus-darwin-arm64@1.5.1': optional: true - '@voidzero-dev/vite-plus-darwin-x64@1.4.0': + '@voidzero-dev/vite-plus-darwin-x64@1.5.1': optional: true - '@voidzero-dev/vite-plus-linux-arm64-gnu@1.4.0': + '@voidzero-dev/vite-plus-linux-arm64-gnu@1.5.1': optional: true - '@voidzero-dev/vite-plus-linux-arm64-musl@1.4.0': + '@voidzero-dev/vite-plus-linux-arm64-musl@1.5.1': optional: true - '@voidzero-dev/vite-plus-linux-x64-gnu@1.4.0': + '@voidzero-dev/vite-plus-linux-x64-gnu@1.5.1': optional: true - '@voidzero-dev/vite-plus-linux-x64-musl@1.4.0': + '@voidzero-dev/vite-plus-linux-x64-musl@1.5.1': optional: true - '@voidzero-dev/vite-plus-win32-arm64-msvc@1.4.0': + '@voidzero-dev/vite-plus-win32-arm64-msvc@1.5.1': optional: true - '@voidzero-dev/vite-plus-win32-x64-msvc@1.4.0': + '@voidzero-dev/vite-plus-win32-x64-msvc@1.5.1': optional: true '@yuku-core/binding-android-arm64@0.19.0': @@ -1810,63 +1810,63 @@ snapshots: obug@3.0.0: {} - oxfmt@0.74.0(vite-plus@1.4.0(@types/node@22.20.5)(@vitest/ui@5.0.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3)): + oxfmt@0.76.0(vite-plus@1.5.1(@types/node@22.20.5)(@vitest/ui@5.1.0)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3)): dependencies: tinypool: 2.2.0 optionalDependencies: - '@oxfmt/binding-android-arm-eabi': 0.74.0 - '@oxfmt/binding-android-arm64': 0.74.0 - '@oxfmt/binding-darwin-arm64': 0.74.0 - '@oxfmt/binding-darwin-x64': 0.74.0 - '@oxfmt/binding-freebsd-x64': 0.74.0 - '@oxfmt/binding-linux-arm-gnueabihf': 0.74.0 - '@oxfmt/binding-linux-arm-musleabihf': 0.74.0 - '@oxfmt/binding-linux-arm64-gnu': 0.74.0 - '@oxfmt/binding-linux-arm64-musl': 0.74.0 - '@oxfmt/binding-linux-ppc64-gnu': 0.74.0 - '@oxfmt/binding-linux-riscv64-gnu': 0.74.0 - '@oxfmt/binding-linux-riscv64-musl': 0.74.0 - '@oxfmt/binding-linux-s390x-gnu': 0.74.0 - '@oxfmt/binding-linux-x64-gnu': 0.74.0 - '@oxfmt/binding-linux-x64-musl': 0.74.0 - '@oxfmt/binding-openharmony-arm64': 0.74.0 - '@oxfmt/binding-win32-arm64-msvc': 0.74.0 - '@oxfmt/binding-win32-ia32-msvc': 0.74.0 - '@oxfmt/binding-win32-x64-msvc': 0.74.0 - vite-plus: 1.4.0(@types/node@22.20.5)(@vitest/ui@5.0.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3) - - oxlint-tsgolint@7.0.2004: + '@oxfmt/binding-android-arm-eabi': 0.76.0 + '@oxfmt/binding-android-arm64': 0.76.0 + '@oxfmt/binding-darwin-arm64': 0.76.0 + '@oxfmt/binding-darwin-x64': 0.76.0 + '@oxfmt/binding-freebsd-x64': 0.76.0 + '@oxfmt/binding-linux-arm-gnueabihf': 0.76.0 + '@oxfmt/binding-linux-arm-musleabihf': 0.76.0 + '@oxfmt/binding-linux-arm64-gnu': 0.76.0 + '@oxfmt/binding-linux-arm64-musl': 0.76.0 + '@oxfmt/binding-linux-ppc64-gnu': 0.76.0 + '@oxfmt/binding-linux-riscv64-gnu': 0.76.0 + '@oxfmt/binding-linux-riscv64-musl': 0.76.0 + '@oxfmt/binding-linux-s390x-gnu': 0.76.0 + '@oxfmt/binding-linux-x64-gnu': 0.76.0 + '@oxfmt/binding-linux-x64-musl': 0.76.0 + '@oxfmt/binding-openharmony-arm64': 0.76.0 + '@oxfmt/binding-win32-arm64-msvc': 0.76.0 + '@oxfmt/binding-win32-ia32-msvc': 0.76.0 + '@oxfmt/binding-win32-x64-msvc': 0.76.0 + vite-plus: 1.5.1(@types/node@22.20.5)(@vitest/ui@5.1.0)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3) + + oxlint-tsgolint@7.0.2005: optionalDependencies: - '@oxlint-tsgolint/darwin-arm64': 7.0.2004 - '@oxlint-tsgolint/darwin-x64': 7.0.2004 - '@oxlint-tsgolint/linux-arm64': 7.0.2004 - '@oxlint-tsgolint/linux-x64': 7.0.2004 - '@oxlint-tsgolint/win32-arm64': 7.0.2004 - '@oxlint-tsgolint/win32-x64': 7.0.2004 - - oxlint@1.89.0(oxlint-tsgolint@7.0.2004)(vite-plus@1.4.0(@types/node@22.20.5)(@vitest/ui@5.0.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3)): + '@oxlint-tsgolint/darwin-arm64': 7.0.2005 + '@oxlint-tsgolint/darwin-x64': 7.0.2005 + '@oxlint-tsgolint/linux-arm64': 7.0.2005 + '@oxlint-tsgolint/linux-x64': 7.0.2005 + '@oxlint-tsgolint/win32-arm64': 7.0.2005 + '@oxlint-tsgolint/win32-x64': 7.0.2005 + + oxlint@1.91.0(oxlint-tsgolint@7.0.2005)(vite-plus@1.5.1(@types/node@22.20.5)(@vitest/ui@5.1.0)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3)): optionalDependencies: - '@oxlint/binding-android-arm-eabi': 1.89.0 - '@oxlint/binding-android-arm64': 1.89.0 - '@oxlint/binding-darwin-arm64': 1.89.0 - '@oxlint/binding-darwin-x64': 1.89.0 - '@oxlint/binding-freebsd-x64': 1.89.0 - '@oxlint/binding-linux-arm-gnueabihf': 1.89.0 - '@oxlint/binding-linux-arm-musleabihf': 1.89.0 - '@oxlint/binding-linux-arm64-gnu': 1.89.0 - '@oxlint/binding-linux-arm64-musl': 1.89.0 - '@oxlint/binding-linux-ppc64-gnu': 1.89.0 - '@oxlint/binding-linux-riscv64-gnu': 1.89.0 - '@oxlint/binding-linux-riscv64-musl': 1.89.0 - '@oxlint/binding-linux-s390x-gnu': 1.89.0 - '@oxlint/binding-linux-x64-gnu': 1.89.0 - '@oxlint/binding-linux-x64-musl': 1.89.0 - '@oxlint/binding-openharmony-arm64': 1.89.0 - '@oxlint/binding-win32-arm64-msvc': 1.89.0 - '@oxlint/binding-win32-ia32-msvc': 1.89.0 - '@oxlint/binding-win32-x64-msvc': 1.89.0 - oxlint-tsgolint: 7.0.2004 - vite-plus: 1.4.0(@types/node@22.20.5)(@vitest/ui@5.0.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3) + '@oxlint/binding-android-arm-eabi': 1.91.0 + '@oxlint/binding-android-arm64': 1.91.0 + '@oxlint/binding-darwin-arm64': 1.91.0 + '@oxlint/binding-darwin-x64': 1.91.0 + '@oxlint/binding-freebsd-x64': 1.91.0 + '@oxlint/binding-linux-arm-gnueabihf': 1.91.0 + '@oxlint/binding-linux-arm-musleabihf': 1.91.0 + '@oxlint/binding-linux-arm64-gnu': 1.91.0 + '@oxlint/binding-linux-arm64-musl': 1.91.0 + '@oxlint/binding-linux-ppc64-gnu': 1.91.0 + '@oxlint/binding-linux-riscv64-gnu': 1.91.0 + '@oxlint/binding-linux-riscv64-musl': 1.91.0 + '@oxlint/binding-linux-s390x-gnu': 1.91.0 + '@oxlint/binding-linux-x64-gnu': 1.91.0 + '@oxlint/binding-linux-x64-musl': 1.91.0 + '@oxlint/binding-openharmony-arm64': 1.91.0 + '@oxlint/binding-win32-arm64-msvc': 1.91.0 + '@oxlint/binding-win32-ia32-msvc': 1.91.0 + '@oxlint/binding-win32-x64-msvc': 1.91.0 + oxlint-tsgolint: 7.0.2005 + vite-plus: 1.5.1(@types/node@22.20.5)(@vitest/ui@5.1.0)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3) pathe@2.0.3: {} @@ -1925,32 +1925,32 @@ snapshots: undici-types@6.21.0: {} - vite-plus@1.4.0(@types/node@22.20.5)(@vitest/ui@5.0.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3): + vite-plus@1.5.1(@types/node@22.20.5)(@vitest/ui@5.1.0)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3): dependencies: - '@oxc-project/runtime': 0.155.0 - '@oxc-project/types': 0.155.0 - '@oxlint/plugins': 1.89.0 - '@vitest/browser': 5.0.5(@voidzero-dev/vite-plus-core@1.4.0(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3))(vitest@5.0.5) - '@vitest/browser-preview': 5.0.5(@voidzero-dev/vite-plus-core@1.4.0(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3))(vitest@5.0.5) - '@vitest/mocker': 5.0.5(@voidzero-dev/vite-plus-core@1.4.0(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3)) - '@vitest/pretty-format': 5.0.5 - '@vitest/snapshot': 5.0.5 - '@vitest/spy': 5.0.5 - '@vitest/utils': 5.0.5 - oxfmt: 0.74.0(vite-plus@1.4.0(@types/node@22.20.5)(@vitest/ui@5.0.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3)) - oxlint: 1.89.0(oxlint-tsgolint@7.0.2004)(vite-plus@1.4.0(@types/node@22.20.5)(@vitest/ui@5.0.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3)) - oxlint-tsgolint: 7.0.2004 - vite: '@voidzero-dev/vite-plus-core@1.4.0(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3)' - vitest: 5.0.5(@types/node@22.20.5)(@vitest/browser-preview@5.0.5)(@vitest/ui@5.0.5)(@voidzero-dev/vite-plus-core@1.4.0(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3)) + '@oxc-project/runtime': 0.157.0 + '@oxc-project/types': 0.157.0 + '@oxlint/plugins': 1.91.0 + '@vitest/browser': 5.1.0(@voidzero-dev/vite-plus-core@1.5.1(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3))(vitest@5.1.0) + '@vitest/browser-preview': 5.1.0(@voidzero-dev/vite-plus-core@1.5.1(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3))(vitest@5.1.0) + '@vitest/mocker': 5.1.0(@voidzero-dev/vite-plus-core@1.5.1(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3)) + '@vitest/pretty-format': 5.1.0 + '@vitest/snapshot': 5.1.0 + '@vitest/spy': 5.1.0 + '@vitest/utils': 5.1.0 + oxfmt: 0.76.0(vite-plus@1.5.1(@types/node@22.20.5)(@vitest/ui@5.1.0)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3)) + oxlint: 1.91.0(oxlint-tsgolint@7.0.2005)(vite-plus@1.5.1(@types/node@22.20.5)(@vitest/ui@5.1.0)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3)) + oxlint-tsgolint: 7.0.2005 + vite: '@voidzero-dev/vite-plus-core@1.5.1(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3)' + vitest: 5.1.0(@types/node@22.20.5)(@vitest/browser-preview@5.1.0)(@vitest/ui@5.1.0)(@voidzero-dev/vite-plus-core@1.5.1(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3)) optionalDependencies: - '@voidzero-dev/vite-plus-darwin-arm64': 1.4.0 - '@voidzero-dev/vite-plus-darwin-x64': 1.4.0 - '@voidzero-dev/vite-plus-linux-arm64-gnu': 1.4.0 - '@voidzero-dev/vite-plus-linux-arm64-musl': 1.4.0 - '@voidzero-dev/vite-plus-linux-x64-gnu': 1.4.0 - '@voidzero-dev/vite-plus-linux-x64-musl': 1.4.0 - '@voidzero-dev/vite-plus-win32-arm64-msvc': 1.4.0 - '@voidzero-dev/vite-plus-win32-x64-msvc': 1.4.0 + '@voidzero-dev/vite-plus-darwin-arm64': 1.5.1 + '@voidzero-dev/vite-plus-darwin-x64': 1.5.1 + '@voidzero-dev/vite-plus-linux-arm64-gnu': 1.5.1 + '@voidzero-dev/vite-plus-linux-arm64-musl': 1.5.1 + '@voidzero-dev/vite-plus-linux-x64-gnu': 1.5.1 + '@voidzero-dev/vite-plus-linux-x64-musl': 1.5.1 + '@voidzero-dev/vite-plus-win32-arm64-msvc': 1.5.1 + '@voidzero-dev/vite-plus-win32-x64-msvc': 1.5.1 transitivePeerDependencies: - '@arethetypeswrong/core' - '@astrojs/compiler-rs' @@ -1986,10 +1986,10 @@ snapshots: - vue-tsc - yaml - vitest@5.0.5(@types/node@22.20.5)(@vitest/browser-preview@5.0.5)(@vitest/ui@5.0.5)(@voidzero-dev/vite-plus-core@1.4.0(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3)): + vitest@5.1.0(@types/node@22.20.5)(@vitest/browser-preview@5.1.0)(@vitest/ui@5.1.0)(@voidzero-dev/vite-plus-core@1.5.1(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3)): dependencies: '@types/chai': 5.2.3 - '@vitest/mocker': 5.0.5(@voidzero-dev/vite-plus-core@1.4.0(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3)) + '@vitest/mocker': 5.1.0(@voidzero-dev/vite-plus-core@1.5.1(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3)) chai: 6.3.0 es-module-lexer: 2.3.2 expect-type: 1.4.0 @@ -2000,12 +2000,12 @@ snapshots: tinybench: 6.2.3 tinyexec: 1.3.1 tinyglobby: 0.2.17 - vite: '@voidzero-dev/vite-plus-core@1.4.0(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3)' + vite: '@voidzero-dev/vite-plus-core@1.5.1(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3)' why-is-node-running: 3.2.1 optionalDependencies: '@types/node': 22.20.5 - '@vitest/browser-preview': 5.0.5(@voidzero-dev/vite-plus-core@1.4.0(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3))(vitest@5.0.5) - '@vitest/ui': 5.0.5(vitest@5.0.5) + '@vitest/browser-preview': 5.1.0(@voidzero-dev/vite-plus-core@1.5.1(@types/node@22.20.5)(esbuild@0.28.2)(tsx@4.23.15)(typescript@5.9.3))(vitest@5.1.0) + '@vitest/ui': 5.1.0(vitest@5.1.0) transitivePeerDependencies: - msw diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 9302755..db3559b 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -1,3 +1,14 @@ packages: ['.'] allowBuilds: esbuild: true +minimumReleaseAgeExclude: + - '@voidzero-dev/vite-plus-core@1.5.1' + - '@voidzero-dev/vite-plus-darwin-arm64@1.5.1' + - '@voidzero-dev/vite-plus-darwin-x64@1.5.1' + - '@voidzero-dev/vite-plus-linux-arm64-gnu@1.5.1' + - '@voidzero-dev/vite-plus-linux-arm64-musl@1.5.1' + - '@voidzero-dev/vite-plus-linux-x64-gnu@1.5.1' + - '@voidzero-dev/vite-plus-linux-x64-musl@1.5.1' + - '@voidzero-dev/vite-plus-win32-arm64-msvc@1.5.1' + - '@voidzero-dev/vite-plus-win32-x64-msvc@1.5.1' + - vite-plus@1.5.1 diff --git a/rules/04-release.md b/rules/04-release.md index 31010bd..f90d609 100644 --- a/rules/04-release.md +++ b/rules/04-release.md @@ -1,6 +1,6 @@ # 04 · 版本与发布 -> 定位:CLI 设施的 TS 直发形态、发布顺序与检查。 +> 定位:CLI 设施的编译 ESM 形态、发布顺序与检查。 > 适用版本:0.1.x > 关系:测试见 [`03-testing`](./03-testing.md)。 @@ -19,10 +19,11 @@ ## 发布前检查 - [ ] `pnpm check` / `pnpm test` / `pnpm typecheck` 全绿 -- [ ] `npm pack --dry-run` 只带 `src` / `README.md` / 附属文件 +- [ ] `npm pack --dry-run` 只带 `dist` / `src` / `README.md` / 附属文件(不含 `tests/` / `rules/` / `evals`) - [ ] `package.json` 版本、tag、`CHANGELOG.md` 一致 - [ ] README 的 API 与退出码表与实际一致 -- [ ] AI 文档同步:`rules/` / `llms.txt` / `skills.md` / `agent.md` / `AGENTS.md` 的版本戳已更新 +- [ ] AI 文档同步:`rules/` / `llms.txt` / `SKILLS.md` / `AGENTS.md` 的版本戳已更新 +- [ ] 包内配套设施:`npm pack --dry-run` 含 `llms.txt` / `SKILLS.md`,且与 `exports` 对齐 ## 兼容 diff --git a/src/args.ts b/src/args.ts index 1c4c059..a8f3e14 100644 --- a/src/args.ts +++ b/src/args.ts @@ -27,17 +27,18 @@ export function parseArgs(argv: string[]): ParsedArgs { continue } if (token.startsWith('--')) { - const [key, inline] = token.slice(2).split('=', 2) - if (inline != null) { - flags[key] = inline + const body = token.slice(2) + const equal = body.indexOf('=') + if (equal !== -1) { + flags[body.slice(0, equal)] = body.slice(equal + 1) continue } const next = argv[i + 1] if (next && !next.startsWith('-')) { - flags[key] = next + flags[body] = next i += 1 } else { - flags[key] = true + flags[body] = true } continue } diff --git a/tests/infra.test.ts b/tests/infra.test.ts index 4a601eb..1ea68b5 100644 --- a/tests/infra.test.ts +++ b/tests/infra.test.ts @@ -51,6 +51,10 @@ describe('cli · 参数', () => { expect(parseArgs(['run', '--check', '--next']).flags).toEqual({ check: true, next: true }) }) + it('--key=value 的值允许包含等号', () => { + expect(parseArgs(['run', '--define=KEY=VALUE']).flags).toEqual({ define: 'KEY=VALUE' }) + }) + it('空参数返回空命令', () => { expect(parseArgs([])).toEqual({ command: '', flags: {}, positional: [] }) }) diff --git a/tests/neutral.test.ts b/tests/neutral.test.ts index cd36650..3544bb2 100644 --- a/tests/neutral.test.ts +++ b/tests/neutral.test.ts @@ -7,16 +7,7 @@ import { describe, expect, it } from 'vite-plus/test' const ROOT = fileURLToPath(new URL('..', import.meta.url)) const SELF = path.join(ROOT, 'tests/neutral.test.ts') -const DOCS = [ - 'README.md', - 'AGENTS.md', - 'CONTRIBUTING.md', - 'CHANGELOG.md', - 'agent.md', - 'skills.md', - 'llms.txt', - 'SECURITY.md', -] +const DOCS = ['README.md', 'AGENTS.md', 'CONTRIBUTING.md', 'CHANGELOG.md', 'SKILLS.md', 'llms.txt', 'SECURITY.md'] /** CLI 是上游通用设施:不出现其它包的名称或领域示例。 */ const FORBIDDEN = [