@hzab/vite-config 0.0.2-alpha.0 → 0.0.3-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +95 -83
- package/LICENSE +21 -21
- package/README.md +184 -173
- package/dist/create-app-vite-config.cjs +160 -27
- package/dist/create-app-vite-config.cjs.map +1 -1
- package/dist/create-app-vite-config.js +160 -27
- package/dist/create-app-vite-config.js.map +1 -1
- package/dist/create-library-vite-config.cjs +39 -4
- package/dist/create-library-vite-config.cjs.map +1 -1
- package/dist/create-library-vite-config.js +38 -3
- package/dist/create-library-vite-config.js.map +1 -1
- package/dist/create-package-vitest-config.cjs.map +1 -1
- package/dist/create-package-vitest-config.js.map +1 -1
- package/dist/create-vite-config.cjs +160 -27
- package/dist/create-vite-config.cjs.map +1 -1
- package/dist/create-vite-config.js +160 -27
- package/dist/create-vite-config.js.map +1 -1
- package/dist/index.cjs +198 -30
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +199 -31
- package/dist/index.js.map +1 -1
- package/dist/plugins/copy.cjs.map +1 -1
- package/dist/plugins/copy.js.map +1 -1
- package/dist/plugins/hash-deploy.cjs +150 -25
- package/dist/plugins/hash-deploy.cjs.map +1 -1
- package/dist/plugins/hash-deploy.d.cts +16 -5
- package/dist/plugins/hash-deploy.d.ts +16 -5
- package/dist/plugins/hash-deploy.js +150 -25
- package/dist/plugins/hash-deploy.js.map +1 -1
- package/dist/plugins/less-tilde.cjs.map +1 -1
- package/dist/plugins/less-tilde.d.cts +17 -2
- package/dist/plugins/less-tilde.d.ts +17 -2
- package/dist/plugins/less-tilde.js.map +1 -1
- package/dist/plugins/lifecycle.cjs.map +1 -1
- package/dist/plugins/lifecycle.js.map +1 -1
- package/dist/plugins/public-assets.cjs.map +1 -1
- package/dist/plugins/public-assets.js.map +1 -1
- package/dist/plugins/public-config.cjs.map +1 -1
- package/dist/plugins/public-config.js.map +1 -1
- package/dist/plugins/react-compiler.cjs.map +1 -1
- package/dist/plugins/react-compiler.js.map +1 -1
- package/dist/plugins/relative-base.cjs.map +1 -1
- package/dist/plugins/relative-base.js.map +1 -1
- package/dist/plugins/stub-less.cjs.map +1 -1
- package/dist/plugins/stub-less.js.map +1 -1
- package/dist/plugins/svg-react.cjs.map +1 -1
- package/dist/plugins/svg-react.js.map +1 -1
- package/dist/types.d.cts +19 -8
- package/dist/types.d.ts +19 -8
- package/dist/vitest.cjs.map +1 -1
- package/dist/vitest.js.map +1 -1
- package/docs/README.md +15 -15
- package/docs/abt-management-ui/vite.config.mts +226 -226
- package/docs/api.md +404 -366
- package/docs/migration-from-webpack.md +723 -722
- package/docs/sync-public-path.md +52 -52
- package/docs/vite-config-integration.md +477 -476
- package/docs/vite-pnpm-integration.md +279 -279
- package/docs/vs-ccc-vite-config.md +26 -26
- package/docs/webpack-gap.md +108 -107
- package/package.json +1 -1
- package/src/client.d.ts +9 -9
- package/src/create-app-vite-config.ts +236 -218
- package/src/create-library-vite-config.ts +248 -199
- package/src/create-package-vitest-config.ts +54 -54
- package/src/create-vite-config.ts +22 -22
- package/src/index.ts +41 -42
- package/src/plugins/copy.ts +25 -25
- package/src/plugins/hash-deploy.ts +239 -199
- package/src/plugins/hash-dir-name.ts +212 -0
- package/src/plugins/less-tilde.ts +72 -44
- package/src/plugins/lifecycle.ts +40 -40
- package/src/plugins/public-assets.ts +28 -28
- package/src/plugins/public-config.ts +34 -34
- package/src/plugins/react-compiler.ts +32 -32
- package/src/plugins/relative-base.ts +20 -20
- package/src/plugins/stub-less.ts +26 -26
- package/src/plugins/svg-react.ts +90 -90
- package/src/svg-react-runtime.ts +4 -4
- package/src/svg-react.d.ts +6 -6
- package/src/types.ts +325 -314
- package/src/vitest-types.ts +20 -20
- package/src/vitest.ts +2 -2
- package/templates/src/vite-env.d.ts +2 -2
- package/templates/tsconfig.json +12 -12
- package/templates/vite.config.ts +26 -26
package/docs/sync-public-path.md
CHANGED
|
@@ -1,52 +1,52 @@
|
|
|
1
|
-
# 已实施:从 Vite 仓回灌 `PUBLIC_PATH` / `./client`
|
|
2
|
-
|
|
3
|
-
> 状态:**已实施**(2026-08-28)。
|
|
4
|
-
> 源:`~/Workbench/Vite/monorepo-packages/tooling/vite-config`(`@ccc/vite-config`)。
|
|
5
|
-
> 对照现状见 [vs-ccc-vite-config.md](./vs-ccc-vite-config.md)。
|
|
6
|
-
|
|
7
|
-
工厂在 `configure` 之后写入 `import.meta.env.PUBLIC_PATH`,供根入口 JS `fetch` / 动态 URL。相对 Hash 必须用 `./{hash}/`,不能跟 Vite `base`(后者保持 `./`)。HTML 子目录模板里的 `PUBLIC_PATH` 仍为 `./`,与 JS 前缀不是同一个值。
|
|
8
|
-
|
|
9
|
-
包名保持 `@hzab/vite-config`。本仓引号与对照仓一致(双引号)。单独 changeset / 发版。
|
|
10
|
-
|
|
11
|
-
## 已落地
|
|
12
|
-
|
|
13
|
-
1. `applyJsPublicPathDefine` / `resolveJsPublicPath`:`configure` 之后写入 `import.meta.env.PUBLIC_PATH`
|
|
14
|
-
2. `src/client.d.ts` 与 `exports["./client"]`
|
|
15
|
-
3. `test/js-public-path.test.ts`
|
|
16
|
-
4. 模板 `templates/src/vite-env.d.ts` 增加 `/// <reference types="@hzab/vite-config/client" />`
|
|
17
|
-
5. 文档:JS `PUBLIC_PATH` vs HTML `PUBLIC_PATH` vs `BASE_URL`
|
|
18
|
-
6. 重写 [vs-ccc-vite-config.md](./vs-ccc-vite-config.md)
|
|
19
|
-
7. `typecheck` / `test` / `api-report` / `pnpm --filter @hzab/vite-config pack --dry-run`
|
|
20
|
-
|
|
21
|
-
## 移植清单(对照)
|
|
22
|
-
|
|
23
|
-
| 源(Vite 仓)
|
|
24
|
-
|
|
|
25
|
-
| `src/create-app-vite-config.ts`
|
|
26
|
-
| `src/client.d.ts`
|
|
27
|
-
| `package.json` `exports["./client"]` | `{ "types": "./src/client.d.ts" }`
|
|
28
|
-
| `test/js-public-path.test.ts`
|
|
29
|
-
| `templates/src/vite-env.d.ts`
|
|
30
|
-
| `docs/api.md` / README
|
|
31
|
-
| `src/types.ts` `htmlData`
|
|
32
|
-
|
|
33
|
-
消费方必须写成静态成员 `import.meta.env.PUBLIC_PATH`,不要解构。`vite.define` / `configure` 里的同名键会被工厂覆盖。
|
|
34
|
-
|
|
35
|
-
## 刻意不搬
|
|
36
|
-
|
|
37
|
-
| 项
|
|
38
|
-
|
|
|
39
|
-
| `catalog:`
|
|
40
|
-
| `release.config.json` | 本仓走 `publish-target.json` |
|
|
41
|
-
| 改包名为 `@ccc`
|
|
42
|
-
|
|
43
|
-
## 验证
|
|
44
|
-
|
|
45
|
-
```bash
|
|
46
|
-
pnpm --filter @hzab/vite-config typecheck
|
|
47
|
-
pnpm --filter @hzab/vite-config test
|
|
48
|
-
pnpm --filter @hzab/vite-config api-report
|
|
49
|
-
pnpm --filter @hzab/vite-config pack --dry-run
|
|
50
|
-
```
|
|
51
|
-
|
|
52
|
-
确认 `exports` 含 `./client`(仅 types)与既有 `./svg-react` runtime。默认入口仍是 `dist/`。
|
|
1
|
+
# 已实施:从 Vite 仓回灌 `PUBLIC_PATH` / `./client`
|
|
2
|
+
|
|
3
|
+
> 状态:**已实施**(2026-08-28)。
|
|
4
|
+
> 源:`~/Workbench/Vite/monorepo-packages/tooling/vite-config`(`@ccc/vite-config`)。
|
|
5
|
+
> 对照现状见 [vs-ccc-vite-config.md](./vs-ccc-vite-config.md)。
|
|
6
|
+
|
|
7
|
+
工厂在 `configure` 之后写入 `import.meta.env.PUBLIC_PATH`,供根入口 JS `fetch` / 动态 URL。相对 Hash 必须用 `./{hash}/`,不能跟 Vite `base`(后者保持 `./`)。HTML 子目录模板里的 `PUBLIC_PATH` 仍为 `./`,与 JS 前缀不是同一个值。
|
|
8
|
+
|
|
9
|
+
包名保持 `@hzab/vite-config`。本仓引号与对照仓一致(双引号)。单独 changeset / 发版。
|
|
10
|
+
|
|
11
|
+
## 已落地
|
|
12
|
+
|
|
13
|
+
1. `applyJsPublicPathDefine` / `resolveJsPublicPath`:`configure` 之后写入 `import.meta.env.PUBLIC_PATH`
|
|
14
|
+
2. `src/client.d.ts` 与 `exports["./client"]`
|
|
15
|
+
3. `test/js-public-path.test.ts`
|
|
16
|
+
4. 模板 `templates/src/vite-env.d.ts` 增加 `/// <reference types="@hzab/vite-config/client" />`
|
|
17
|
+
5. 文档:JS `PUBLIC_PATH` vs HTML `PUBLIC_PATH` vs `BASE_URL`
|
|
18
|
+
6. 重写 [vs-ccc-vite-config.md](./vs-ccc-vite-config.md)
|
|
19
|
+
7. `typecheck` / `test` / `api-report` / `pnpm --filter @hzab/vite-config pack --dry-run`
|
|
20
|
+
|
|
21
|
+
## 移植清单(对照)
|
|
22
|
+
|
|
23
|
+
| 源(Vite 仓) | 本仓动作 |
|
|
24
|
+
| ------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------- |
|
|
25
|
+
| `src/create-app-vite-config.ts` | 已拷 `JS_PUBLIC_PATH_DEFINE_KEY`、`ensureTrailingSlash`、`resolveJsPublicPath`、`applyJsPublicPathDefine`;`configure` 之后调用 |
|
|
26
|
+
| `src/client.d.ts` | 已拷;声明 `ImportMetaEnv.PUBLIC_PATH` |
|
|
27
|
+
| `package.json` `exports["./client"]` | `{ "types": "./src/client.d.ts" }` |
|
|
28
|
+
| `test/js-public-path.test.ts` | 已拷;另断言 `./client` 为仅 types |
|
|
29
|
+
| `templates/src/vite-env.d.ts` | 已加 `/// <reference types="@hzab/vite-config/client" />` |
|
|
30
|
+
| `docs/api.md` / README | JS `import.meta.env.PUBLIC_PATH` vs HTML `<%= PUBLIC_PATH %>` vs `BASE_URL` |
|
|
31
|
+
| `src/types.ts` `htmlData` | 已注明 JS 用 `import.meta.env.PUBLIC_PATH` |
|
|
32
|
+
|
|
33
|
+
消费方必须写成静态成员 `import.meta.env.PUBLIC_PATH`,不要解构。`vite.define` / `configure` 里的同名键会被工厂覆盖。
|
|
34
|
+
|
|
35
|
+
## 刻意不搬
|
|
36
|
+
|
|
37
|
+
| 项 | 原因 |
|
|
38
|
+
| --------------------- | ---------------------------- |
|
|
39
|
+
| `catalog:` | 本仓钉死版本 |
|
|
40
|
+
| `release.config.json` | 本仓走 `publish-target.json` |
|
|
41
|
+
| 改包名为 `@ccc` | scope 即仓身份 |
|
|
42
|
+
|
|
43
|
+
## 验证
|
|
44
|
+
|
|
45
|
+
```bash
|
|
46
|
+
pnpm --filter @hzab/vite-config typecheck
|
|
47
|
+
pnpm --filter @hzab/vite-config test
|
|
48
|
+
pnpm --filter @hzab/vite-config api-report
|
|
49
|
+
pnpm --filter @hzab/vite-config pack --dry-run
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
确认 `exports` 含 `./client`(仅 types)与既有 `./svg-react` runtime。默认入口仍是 `dist/`。
|