@lark-apaas/coding-preset-vite-react 1.0.18 → 1.0.19-alpha.20260823195004

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.
Files changed (40) hide show
  1. package/lib/index.d.ts +1 -9
  2. package/lib/index.d.ts.map +1 -1
  3. package/lib/index.js +58 -101
  4. package/lib/index.js.map +1 -1
  5. package/lib/plugins/banner.d.ts +3 -0
  6. package/lib/plugins/banner.d.ts.map +1 -0
  7. package/lib/plugins/banner.js +26 -0
  8. package/lib/plugins/banner.js.map +1 -0
  9. package/lib/plugins/fonts-mirror.d.ts.map +1 -1
  10. package/lib/plugins/fonts-mirror.js +10 -0
  11. package/lib/plugins/fonts-mirror.js.map +1 -1
  12. package/lib/plugins/health.d.ts +8 -14
  13. package/lib/plugins/health.d.ts.map +1 -1
  14. package/lib/plugins/health.js +5 -28
  15. package/lib/plugins/health.js.map +1 -1
  16. package/lib/plugins/preconnect.d.ts +31 -0
  17. package/lib/plugins/preconnect.d.ts.map +1 -0
  18. package/lib/plugins/preconnect.js +65 -0
  19. package/lib/plugins/preconnect.js.map +1 -0
  20. package/lib/plugins/runtime-injection.d.ts +23 -0
  21. package/lib/plugins/runtime-injection.d.ts.map +1 -0
  22. package/lib/plugins/runtime-injection.js +93 -0
  23. package/lib/plugins/runtime-injection.js.map +1 -0
  24. package/lib/plugins/source-map-upload.d.ts +7 -0
  25. package/lib/plugins/source-map-upload.d.ts.map +1 -0
  26. package/lib/plugins/source-map-upload.js +104 -0
  27. package/lib/plugins/source-map-upload.js.map +1 -0
  28. package/package.json +2 -1
  29. package/lib/plugins/health-core.d.ts +0 -92
  30. package/lib/plugins/health-core.d.ts.map +0 -1
  31. package/lib/plugins/health-core.js +0 -239
  32. package/lib/plugins/health-core.js.map +0 -1
  33. package/lib/plugins/standalone-html.d.ts +0 -53
  34. package/lib/plugins/standalone-html.d.ts.map +0 -1
  35. package/lib/plugins/standalone-html.js +0 -102
  36. package/lib/plugins/standalone-html.js.map +0 -1
  37. package/lib/plugins/standalone-router.d.ts +0 -24
  38. package/lib/plugins/standalone-router.d.ts.map +0 -1
  39. package/lib/plugins/standalone-router.js +0 -51
  40. package/lib/plugins/standalone-router.js.map +0 -1
package/lib/index.d.ts CHANGED
@@ -29,12 +29,6 @@ import { type UserConfig } from 'vite';
29
29
  * - MIAODA_FONTS_MIRROR_OFF `1` 关 Google Fonts 代理替换
30
30
  * - MIAODA_APP_TYPE 妙搭应用类型(数字字符串,供 lite Safety 徽标判断)
31
31
  * - MIAODA_APP_ARCH_TYPE 妙搭应用架构类型(数字字符串)
32
- * - MIAODA_BUILD_TARGET `standalone` 切到离线产物构建(miaoda app export-standalone 注入):
33
- * rollup output 换 iife(去 manualChunks)、挂 standalone-html 剥掉
34
- * 入口 script 的 type="module"/crossorigin、摘掉 slardar / og-meta /
35
- * view-context 三个平台注入插件。
36
- * **严格相等判断**:不设或值不是 `standalone`(含大写、拼错)一律
37
- * 按现有平台构建行为走,不做模糊匹配。
38
32
  */
39
33
  export interface PresetOptions {
40
34
  /** fullstack 模式下 NestJS server 端口,默认 3000;dev-proxy 反代目标 */
@@ -43,7 +37,7 @@ export interface PresetOptions {
43
37
  export declare function defineConfig(overrides?: UserConfig, options?: PresetOptions): UserConfig;
44
38
  export default defineConfig;
45
39
  export { routesPlugin, parseRoutes } from './plugins/routes';
46
- export { htmlMinifyPlugin, minifyHtmlWithHbsProtection, } from './plugins/html-minify';
40
+ export { htmlMinifyPlugin, minifyHtmlWithHbsProtection } from './plugins/html-minify';
47
41
  export { staticAssetsPlugin } from './plugins/static-assets';
48
42
  export { capabilitiesBundlePlugin } from './plugins/capabilities';
49
43
  export { errorOverlayPlugin } from './plugins/error-overlay';
@@ -59,8 +53,6 @@ export { viteClientPatchPlugin } from './plugins/vite-client-patch';
59
53
  export { invalidateOnOutdatedDepPlugin } from './plugins/invalidate-on-outdated-dep';
60
54
  export { slardarPlugin } from './plugins/slardar';
61
55
  export { devLogsPlugin } from './plugins/dev-logs';
62
- export { standaloneHtmlPlugin } from './plugins/standalone-html';
63
- export { standaloneRouterPlugin } from './plugins/standalone-router';
64
56
  export { devProxyPlugin } from './plugins/dev-proxy';
65
57
  export { htmlOutputPlugin } from './plugins/html-output';
66
58
  export { basenamePlugin } from './plugins/basename';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAGL,KAAK,UAAU,EAEhB,MAAM,MAAM,CAAC;AA0Ed;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,MAAM,WAAW,aAAa;IAC5B,4DAA4D;IAC5D,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,YAAY,CAC1B,SAAS,GAAE,UAAe,EAC1B,OAAO,GAAE,aAAkB,GAC1B,UAAU,CAodZ;AAGD,eAAe,YAAY,CAAC;AAG5B,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EACL,gBAAgB,EAChB,2BAA2B,GAC5B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,6BAA6B,EAAE,MAAM,sCAAsC,CAAC;AACrF,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAErE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EACL,iBAAiB,EACjB,qCAAqC,GACtC,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,8BAA8B,EAAE,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAA4B,KAAK,UAAU,EAAsB,MAAM,MAAM,CAAC;AA4ErF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,MAAM,WAAW,aAAa;IAC5B,4DAA4D;IAC5D,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,YAAY,CAC1B,SAAS,GAAE,UAAe,EAC1B,OAAO,GAAE,aAAkB,GAC1B,UAAU,CA6ZZ;AAGD,eAAe,YAAY,CAAC;AAG5B,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAC;AACtF,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,6BAA6B,EAAE,MAAM,sCAAsC,CAAC;AACrF,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EACL,iBAAiB,EACjB,qCAAqC,GACtC,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,8BAA8B,EAAE,MAAM,uBAAuB,CAAC"}
package/lib/index.js CHANGED
@@ -36,7 +36,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
36
36
  return (mod && mod.__esModule) ? mod : { "default": mod };
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.registerSnapDomProxyMiddleware = exports.normalizeBasePathWithoutTrailingSlash = exports.normalizeBasePath = exports.serverLogPlugin = exports.basenamePlugin = exports.htmlOutputPlugin = exports.devProxyPlugin = exports.standaloneRouterPlugin = exports.standaloneHtmlPlugin = exports.devLogsPlugin = exports.slardarPlugin = exports.invalidateOnOutdatedDepPlugin = exports.viteClientPatchPlugin = exports.polyfillPlugin = exports.fontsMirrorPlugin = exports.ogMetaPlugin = exports.moduleAliasPlugin = exports.viewContextPlugin = exports.healthMiddlewarePlugin = exports.wsWatchdogPlugin = exports.hmrTimingPlugin = exports.errorOverlayPlugin = exports.capabilitiesBundlePlugin = exports.staticAssetsPlugin = exports.minifyHtmlWithHbsProtection = exports.htmlMinifyPlugin = exports.parseRoutes = exports.routesPlugin = void 0;
39
+ exports.registerSnapDomProxyMiddleware = exports.normalizeBasePathWithoutTrailingSlash = exports.normalizeBasePath = exports.serverLogPlugin = exports.basenamePlugin = exports.htmlOutputPlugin = exports.devProxyPlugin = exports.devLogsPlugin = exports.slardarPlugin = exports.invalidateOnOutdatedDepPlugin = exports.viteClientPatchPlugin = exports.polyfillPlugin = exports.fontsMirrorPlugin = exports.ogMetaPlugin = exports.moduleAliasPlugin = exports.viewContextPlugin = exports.healthMiddlewarePlugin = exports.wsWatchdogPlugin = exports.hmrTimingPlugin = exports.errorOverlayPlugin = exports.capabilitiesBundlePlugin = exports.staticAssetsPlugin = exports.minifyHtmlWithHbsProtection = exports.htmlMinifyPlugin = exports.parseRoutes = exports.routesPlugin = void 0;
40
40
  exports.defineConfig = defineConfig;
41
41
  const fs = __importStar(require("node:fs"));
42
42
  const path = __importStar(require("node:path"));
@@ -61,13 +61,18 @@ const vite_client_patch_1 = require("./plugins/vite-client-patch");
61
61
  const invalidate_on_outdated_dep_1 = require("./plugins/invalidate-on-outdated-dep");
62
62
  const slardar_1 = require("./plugins/slardar");
63
63
  const dev_logs_1 = require("./plugins/dev-logs");
64
- const standalone_html_1 = require("./plugins/standalone-html");
65
- const standalone_router_1 = require("./plugins/standalone-router");
66
64
  // fullstack-only 4 件套(MIAODA_APP_TYPE === '3' 时启用)
67
65
  const dev_proxy_1 = require("./plugins/dev-proxy");
68
66
  const html_output_1 = require("./plugins/html-output");
69
67
  const basename_1 = require("./plugins/basename");
70
68
  const server_log_1 = require("./plugins/server-log");
69
+ // 从 v1 fullstack-vite-preset 平移过来的 fullstack-only plugin
70
+ // 收敛复用方案: 让新全栈应用不再走独立 v1, 统一在这个 preset 里, isFullstack 分支挂上。
71
+ // jsPage 侧目前不启用, 未来若发现有 jsPage 收益(如 sourceMapUpload / preconnect)再解 gate。
72
+ const banner_1 = require("./plugins/banner");
73
+ const runtime_injection_1 = require("./plugins/runtime-injection");
74
+ const source_map_upload_1 = require("./plugins/source-map-upload");
75
+ const preconnect_1 = require("./plugins/preconnect");
71
76
  const normalize_base_path_1 = require("./utils/normalize-base-path");
72
77
  const snapdom_proxy_1 = require("./utils/snapdom-proxy");
73
78
  /**
@@ -113,18 +118,23 @@ function defineConfig(overrides = {}, options = {}) {
113
118
  // 通过 env 而非 vite.config 第二参,让同一份 preset 同时给 jsPage 和 fullstack 用,
114
119
  // user vite.config 不用感知。
115
120
  const isFullstack = process.env.MIAODA_APP_TYPE === '3';
116
- // standalone 构建:产出可脱离妙搭平台本地访问的产物(miaoda app export-standalone 注入)。
117
- // 与 isFullstack 同形态——单个 derived const,不在各处读 env。
118
- // 严格相等:拼错值按平台模式走,不猜测意图。
119
- const isStandalone = process.env.MIAODA_BUILD_TARGET === 'standalone';
120
121
  const fullstackServerPort = options.serverPort ?? 3000;
122
+ // 平移自 v1 fullstack-vite-preset:
123
+ // - releaseId: 挂到 window.__RELEASE_COMMIT_ID__ 供运行时反查版本 (env RELEASE_ID 优先, 兜底时间戳)
124
+ // - assetOriginsForPreconnect: 部署带 CDN (publicPath 是绝对 URL) 才需要 preconnect
125
+ const releaseId = process.env.RELEASE_ID || new Date().toISOString();
121
126
  // ASSETS_CDN_PATH 来自 miaoda-cli 注入的 MIAODA_RESOURCE_CDN_PREFIX,通常是完整 URL
122
127
  // (`https://cdn.bytetos.com/...`)。必须用 URL-safe 的 normalize,不能强加 `/` 前缀
123
128
  // —— 否则会变成 `/https://cdn.bytetos.com/...` 直接破掉 Vite 的 base 替换。
124
129
  const assetsCdnPath = (0, normalize_base_path_1.normalizeBasePathWithoutTrailingSlash)(process.env.ASSETS_CDN_PATH);
125
130
  // dev / prod base 来源不同:dev 完全用 clientBasePath,prod 优先 CDN
126
- const publicPath = isDev ? clientBasePath : assetsCdnPath || clientBasePath;
131
+ const publicPath = isDev ? clientBasePath : (assetsCdnPath || clientBasePath);
127
132
  const base = publicPath ? `${publicPath}/` : '/';
133
+ // 部署带 CDN (publicPath 是绝对 URL) 时给浏览器提前 preconnect, dev 不需要
134
+ const assetOriginsForPreconnect = [];
135
+ if (!isDev && typeof publicPath === 'string' && /^https?:\/\//.test(publicPath)) {
136
+ assetOriginsForPreconnect.push(publicPath);
137
+ }
128
138
  // 从 clientBasePath 提取 appId 给 viewContext 用
129
139
  const isNewPathFormat = /^\/app\/[^/]/.test(clientBasePath);
130
140
  const appId = isNewPathFormat
@@ -149,8 +159,7 @@ function defineConfig(overrides = {}, options = {}) {
149
159
  'process.env.CLIENT_BASE_PATH': JSON.stringify(clientBasePath),
150
160
  __APP_BASE_PATH__: JSON.stringify(clientBasePath),
151
161
  // 未设置时替换为字面量 `undefined`,让 `??` fallback 正确触发(`""`/`undefined` 行为不同)
152
- 'process.env.FORCE_FRAMEWORK_DOMAIN_MAIN': process.env
153
- .FORCE_FRAMEWORK_DOMAIN_MAIN
162
+ 'process.env.FORCE_FRAMEWORK_DOMAIN_MAIN': process.env.FORCE_FRAMEWORK_DOMAIN_MAIN
154
163
  ? JSON.stringify(process.env.FORCE_FRAMEWORK_DOMAIN_MAIN)
155
164
  : 'undefined',
156
165
  'process.env.CWD': JSON.stringify(''),
@@ -168,14 +177,8 @@ function defineConfig(overrides = {}, options = {}) {
168
177
  'process.env.MIAODA_APP_SOURCE': process.env.MIAODA_APP_SOURCE
169
178
  ? JSON.stringify(process.env.MIAODA_APP_SOURCE)
170
179
  : 'undefined',
171
- // standalone 导出构建标记(miaoda app pack)。client-toolkit* 的 AppContainer 据此
172
- // 不挂 Safety 徽标 / 豆包水印 —— 那些判据是 fail-open 的,离线产物里必然显示。
173
- 'process.env.MIAODA_BUILD_TARGET': process.env.MIAODA_BUILD_TARGET
174
- ? JSON.stringify(process.env.MIAODA_BUILD_TARGET)
175
- : 'undefined',
176
180
  // 部署环境(boe/pre/online),豆包水印「投诉与举报」域名据此选
177
- 'process.env.FORCE_FRAMEWORK_ENVIRONMENT': process.env
178
- .FORCE_FRAMEWORK_ENVIRONMENT
181
+ 'process.env.FORCE_FRAMEWORK_ENVIRONMENT': process.env.FORCE_FRAMEWORK_ENVIRONMENT
179
182
  ? JSON.stringify(process.env.FORCE_FRAMEWORK_ENVIRONMENT)
180
183
  : 'undefined',
181
184
  };
@@ -303,38 +306,23 @@ function defineConfig(overrides = {}, options = {}) {
303
306
  // OG Meta tags + title + favicon 注入 HBS 占位符({{appName}} / {{appAvatar}} 等)
304
307
  // 由部署运行时(vefaas)调 platform API 拿 appInfo 后做 hbs replace;
305
308
  // dev 预览看到的是字面占位符,业务侧用 useAppInfo + useEffect setTitle 兜底
306
- //
307
- // standalone 下摘掉:没有 vefaas 替换环节,留着会让标签页标题显示字面 "{{appName}}"
308
- !isStandalone && (0, og_meta_1.ogMetaPlugin)(),
309
+ (0, og_meta_1.ogMetaPlugin)(),
309
310
  // head 顺序敏感:slardar 必须排在 viewContext **之前**——
310
311
  // Vite 同 bucket(head-prepend)是"后执行者插更前"。
311
312
  // 数组里 slardar 在前 → HTML 里 viewContext 在 slardar 之上 → onload 时拿得到 window.tenantId
312
- //
313
- // standalone 下两者都摘:slardar 注入 4 个外链脚本(Slardar / Tea / performance),
314
- // viewContext prod 注入 {{userId}} / {{tenantId}} HBS 占位符 —— 脱离 vefaas 没人替换,
315
- // window.tenantId 会是字符串 "{{tenantId}}",业务代码 if (tenantId) 会判成真值。
316
- !isStandalone && (0, slardar_1.slardarPlugin)({ bid: 'apaas_miaoda' }),
317
- !isStandalone &&
318
- (0, view_context_1.viewContextPlugin)({ appId: isDev ? appId : undefined, clientBasePath }),
313
+ (0, slardar_1.slardarPlugin)({ bid: 'apaas_miaoda' }),
314
+ (0, view_context_1.viewContextPlugin)({ appId: isDev ? appId : undefined, clientBasePath }),
319
315
  // basename 运行时注入:改写入口文件的 process.env.CLIENT_BASE_PATH 为运行时读 window.__BASENAME__
320
316
  // enforce:'pre' 确保在 vite define 替换之前执行,只影响入口文件,SDK 内部代码保持编译期常量
321
317
  (0, basename_injection_1.basenameInjectionPlugin)({ envBasePath: clientBasePath }),
322
318
  // prod only: 老浏览器 polyfill(按需加载)
323
- // standalone 下不挂:该形态**不承诺浏览器兼容性**——接口失败、CDN 外链不本地化
324
- // 都已是明确口径,老浏览器支持同理。带着 polyfill 反而是个没验证过的承诺
325
- // (standalone 产物从未在老浏览器上测过,file:// 下还可能有别的未知问题)。
326
- !isDev && !isStandalone && (0, polyfill_1.polyfillPlugin)(),
327
- // standalone:BrowserRouter → HashRouter。enforce:'pre',必须早于 react() 转译。
328
- // 不换的话产物首屏直接落 404 页(pathname 匹配不上任何 Route),实测确认。
329
- isStandalone && (0, standalone_router_1.standaloneRouterPlugin)(),
330
- // standalone:剥掉 Vite 写死的 type="module" / crossorigin,否则 file:// 下被 CORS 拦
331
- isStandalone && (0, standalone_html_1.standaloneHtmlPlugin)(),
319
+ !isDev && (0, polyfill_1.polyfillPlugin)(),
332
320
  // build-time HTML minify(HBS 占位符保护)
333
321
  (0, html_minify_1.htmlMinifyPlugin)(),
334
322
  // dev only DX 插件
335
323
  isDev && (0, hmr_timing_1.hmrTimingPlugin)(),
336
324
  isDev && (0, ws_watchdog_1.wsWatchdogPlugin)({ clientBasePath }),
337
- isDev && (0, health_1.healthMiddlewarePlugin)({ serverPort: fullstackServerPort }),
325
+ isDev && (0, health_1.healthMiddlewarePlugin)(),
338
326
  // 客户端日志收集 endpoint(POST /dev/logs/collect{,-batch})
339
327
  isDev && (0, dev_logs_1.devLogsPlugin)({ basePath: clientBasePath }),
340
328
  // Google Fonts → 妙搭字体代理(编译时字符串 replace;dev / build 都有用)
@@ -349,16 +337,29 @@ function defineConfig(overrides = {}, options = {}) {
349
337
  appId,
350
338
  }),
351
339
  // dev 写出 dist/client/index.html 让 NestJS HBS 渲染;prod 修正 outDir + minify
352
- isFullstack &&
353
- (0, html_output_1.htmlOutputPlugin)({
354
- isDev,
355
- outDir: path.resolve(rootDir, 'dist/client'),
356
- }),
340
+ isFullstack && (0, html_output_1.htmlOutputPlugin)({
341
+ isDev,
342
+ outDir: path.resolve(rootDir, 'dist/client'),
343
+ }),
357
344
  // CLIENT_BASE_PATH 占位符替换为运行时 window.__BASENAME__
358
345
  isFullstack && (0, basename_1.basenamePlugin)({ envBasePath: clientBasePath }),
359
346
  // 挂 devtool-kits 的 dev-logs middleware:提供 /server-logs SSE 等 endpoints
360
347
  // 给妙搭外壳实时读 NestJS server.log;require() 加载,包未装时自动跳过
361
348
  isFullstack && (0, server_log_1.serverLogPlugin)({ basePath: clientBasePath, rootDir }),
349
+ // ── 从 v1 fullstack-vite-preset 平移的 fullstack-only plugin (2026-08-19 收敛) ──
350
+ // 挂 window.__RELEASE_COMMIT_ID__ 到 entry chunk 头部, 运行时反查版本
351
+ isFullstack && (0, banner_1.bannerPlugin)(`window.__RELEASE_COMMIT_ID__ = '${releaseId}';`),
352
+ // 早注入 @lark-apaas/client-toolkit/runtime, 让 platform runtime 在业务代码前 boot
353
+ isFullstack && (0, runtime_injection_1.runtimeInjectionPlugin)({ clientBasePath }),
354
+ // 部署带 CDN 时才有 origin 可 preconnect, 数组空自动跳过
355
+ isFullstack &&
356
+ assetOriginsForPreconnect.length > 0 &&
357
+ (0, preconnect_1.preconnectPlugin)({ origins: assetOriginsForPreconnect }),
358
+ // 仅 prod build: 把 sourcemap 汇总到 dist/sourcemaps 供上传 Slardar CDN
359
+ isFullstack && !isDev &&
360
+ (0, source_map_upload_1.sourceMapUploadPlugin)({
361
+ outputDir: path.resolve(rootDir, 'dist/sourcemaps'),
362
+ }),
362
363
  ].filter(Boolean),
363
364
  resolve: {
364
365
  // Vite 8 原生 tsconfig paths 解析
@@ -391,9 +392,7 @@ function defineConfig(overrides = {}, options = {}) {
391
392
  allowedHosts: true,
392
393
  headers: {
393
394
  ...(process.env.FORCE_FRAMEWORK_DOMAIN_MAIN
394
- ? {
395
- 'Access-Control-Allow-Origin': process.env.FORCE_FRAMEWORK_DOMAIN_MAIN,
396
- }
395
+ ? { 'Access-Control-Allow-Origin': process.env.FORCE_FRAMEWORK_DOMAIN_MAIN }
397
396
  : {}),
398
397
  },
399
398
  watch: {
@@ -403,12 +402,7 @@ function defineConfig(overrides = {}, options = {}) {
403
402
  },
404
403
  // 优先级:独立 WS 域名 > 反代 wss > 本地 ws;切域名时 clientPort 固定 443
405
404
  hmr: process.env.MIAODA_WS_HOST
406
- ? {
407
- protocol: 'wss',
408
- host: process.env.MIAODA_WS_HOST,
409
- clientPort: 443,
410
- path: '/ws',
411
- }
405
+ ? { protocol: 'wss', host: process.env.MIAODA_WS_HOST, clientPort: 443, path: '/ws' }
412
406
  : process.env.FORCE_FRAMEWORK_DOMAIN_MAIN
413
407
  ? { protocol: 'wss', path: '/ws' }
414
408
  : { path: '/ws' },
@@ -423,54 +417,23 @@ function defineConfig(overrides = {}, options = {}) {
423
417
  outDir: path.resolve(rootDir, 'dist/client'),
424
418
  // build.sh 已经在 vite build 前 `rm -rf dist`,这里不再让 vite 自己清
425
419
  emptyOutDir: false,
426
- // standalone 不产 sourcemap:产物拿去分发,map 的 sourcesContent 内嵌原始源码
427
- // (实测真实应用 486 条、含 12 个业务文件);且 hidden 模式产物里没有
428
- // sourceMappingURL 引用它,纯属白生成。
429
- sourcemap: isStandalone ? false : isDev ? true : 'hidden',
420
+ sourcemap: isDev ? true : 'hidden',
430
421
  minify: !isDev,
431
422
  cssTarget: ['ios12', 'safari12', 'chrome80'],
432
- // standalone 刻意产单 chunk,体积必然超默认 500kB 阈值。该警告给的三条建议
433
- // (动态 import 拆包 / 开 codeSplitting / 调阈值)前两条正是 standalone 不能做的,
434
- // 留着是纯噪音,会盖住真正需要注意的构建输出。
435
- ...(isStandalone
436
- ? { chunkSizeWarningLimit: Number.POSITIVE_INFINITY }
437
- : {}),
438
423
  rollupOptions: {
439
424
  input: resolveClientPath(rootDir, 'index.html'),
440
- // standalone:产物要能在 file:// 下打开,而 <script type="module"> 在 opaque
441
- // origin 下必被 CORS 拦,故 JS 体必须是经典脚本 → iife。
442
- //
443
- // ⚠️ **iife 下 rolldown 会把 `import.meta` 整体替换成 `{}`**,并对每个出现点
444
- // 打 EMPTY_IMPORT_META 警告。刻意**不消音**(试过 `transform.define:
445
- // {'import.meta':'{}'}` 能清零,但会把信号一起埋掉)。两处来源已实测分析:
446
- // 1. react-router dist/development:`if (... && import.meta.hot)` 真值判断,
447
- // `{}` → undefined → falsy,完全安全。
448
- // 2. vite 内部 preload-helper:`new URL(spec, import.meta.url)` ——
449
- // `import.meta.url` 为 undefined 时**会抛 TypeError**。当前不炸,是因为
450
- // iife ⇒ codeSplitting:false ⇒ 动态 import 被内联 ⇒ 待预加载的 deps 为空,
451
- // 那段代码根本不执行。
452
- //
453
- // **即:安全性依赖「iife 蕴含无代码分割」这个隐式耦合。** 若哪天让 standalone
454
- // 重新开启代码分割,preload-helper 会真的跑起来并抛错 —— 那条警告就是提示。
455
- // iife 蕴含 codeSplitting:false,此时带 manualChunks 会直接 build fail:
456
- // Invalid configuration: "output.manualChunks" cannot be used when
457
- // "output.codeSplitting" is set to false.
458
- // ⚠️ 只切 format 不够——Vite 8 的 build-html 仍会写死 type="module" crossorigin,
459
- // 剥属性由 standaloneHtmlPlugin 负责(另见 Task 1.5)。
460
- output: isStandalone
461
- ? { format: 'iife' }
462
- : {
463
- // 按依赖拆 chunk,优化缓存和并行加载
464
- manualChunks(id) {
465
- if (id.includes('@lark-apaas/client-toolkit-lite'))
466
- return 'toolkit';
467
- if (id.includes('@radix-ui'))
468
- return 'radix';
469
- if (id.includes('@data-loom'))
470
- return 'dataloom';
471
- return undefined;
472
- },
425
+ output: {
426
+ // 按依赖拆 chunk,优化缓存和并行加载
427
+ manualChunks(id) {
428
+ if (id.includes('@lark-apaas/client-toolkit-lite'))
429
+ return 'toolkit';
430
+ if (id.includes('@radix-ui'))
431
+ return 'radix';
432
+ if (id.includes('@data-loom'))
433
+ return 'dataloom';
434
+ return undefined;
473
435
  },
436
+ },
474
437
  },
475
438
  copyPublicDir: true,
476
439
  },
@@ -513,9 +476,7 @@ function defineConfig(overrides = {}, options = {}) {
513
476
  }
514
477
  }
515
478
  // SnapDom proxy(client 截图库的跨域转发)
516
- (0, snapdom_proxy_1.registerSnapDomProxyMiddleware)(server.middlewares, {
517
- baseUrl: clientBasePath,
518
- });
479
+ (0, snapdom_proxy_1.registerSnapDomProxyMiddleware)(server.middlewares, { baseUrl: clientBasePath });
519
480
  // 注:客户端日志收集 endpoint 现在由 devLogsPlugin 自己挂载(plugin 数组里),
520
481
  // 这里不再做集中注册——以前依赖 @lark-apaas/devtool-kits 已彻底去除
521
482
  },
@@ -562,10 +523,6 @@ var slardar_2 = require("./plugins/slardar");
562
523
  Object.defineProperty(exports, "slardarPlugin", { enumerable: true, get: function () { return slardar_2.slardarPlugin; } });
563
524
  var dev_logs_2 = require("./plugins/dev-logs");
564
525
  Object.defineProperty(exports, "devLogsPlugin", { enumerable: true, get: function () { return dev_logs_2.devLogsPlugin; } });
565
- var standalone_html_2 = require("./plugins/standalone-html");
566
- Object.defineProperty(exports, "standaloneHtmlPlugin", { enumerable: true, get: function () { return standalone_html_2.standaloneHtmlPlugin; } });
567
- var standalone_router_2 = require("./plugins/standalone-router");
568
- Object.defineProperty(exports, "standaloneRouterPlugin", { enumerable: true, get: function () { return standalone_router_2.standaloneRouterPlugin; } });
569
526
  // fullstack-only 4 件套(option fullstack:true 启用,也可单独引入)
570
527
  var dev_proxy_2 = require("./plugins/dev-proxy");
571
528
  Object.defineProperty(exports, "devProxyPlugin", { enumerable: true, get: function () { return dev_proxy_2.devProxyPlugin; } });
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { Plugin } from 'vite';
2
+ export declare function bannerPlugin(banner: string): Plugin;
3
+ //# sourceMappingURL=banner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"banner.d.ts","sourceRoot":"","sources":["../../src/plugins/banner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAGnC,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAiBnD"}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.bannerPlugin = bannerPlugin;
7
+ const magic_string_1 = __importDefault(require("magic-string"));
8
+ function bannerPlugin(banner) {
9
+ return {
10
+ name: 'vite-plugin-banner',
11
+ enforce: 'post',
12
+ renderChunk(code, chunk) {
13
+ // Only add banner to entry chunks
14
+ if (chunk.isEntry) {
15
+ const magicString = new magic_string_1.default(code);
16
+ magicString.prepend(`${banner}\n`);
17
+ return {
18
+ code: magicString.toString(),
19
+ map: magicString.generateMap({ hires: true }),
20
+ };
21
+ }
22
+ return null;
23
+ },
24
+ };
25
+ }
26
+ //# sourceMappingURL=banner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"banner.js","sourceRoot":"","sources":["../../src/plugins/banner.ts"],"names":[],"mappings":";;;;;AAGA,oCAiBC;AAnBD,gEAAuC;AAEvC,SAAgB,YAAY,CAAC,MAAc;IACzC,OAAO;QACL,IAAI,EAAE,oBAAoB;QAC1B,OAAO,EAAE,MAAM;QACf,WAAW,CAAC,IAAI,EAAE,KAAK;YACrB,kCAAkC;YAClC,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;gBAClB,MAAM,WAAW,GAAG,IAAI,sBAAW,CAAC,IAAI,CAAC,CAAC;gBAC1C,WAAW,CAAC,OAAO,CAAC,GAAG,MAAM,IAAI,CAAC,CAAC;gBACnC,OAAO;oBACL,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE;oBAC5B,GAAG,EAAE,WAAW,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;iBAC9C,CAAC;YACJ,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"fonts-mirror.d.ts","sourceRoot":"","sources":["../../src/plugins/fonts-mirror.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAsBnC,MAAM,WAAW,wBAAwB;IACvC,sDAAsD;IACtD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gBAAgB;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gCAAgC;IAChC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,kBAAkB;IAClB,OAAO,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;CAC/B;AAED,wBAAgB,iBAAiB,CAAC,OAAO,GAAE,wBAA6B,GAAG,MAAM,GAAG,KAAK,CA8ExF;AAED,eAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"fonts-mirror.d.ts","sourceRoot":"","sources":["../../src/plugins/fonts-mirror.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAgCnC,MAAM,WAAW,wBAAwB;IACvC,sDAAsD;IACtD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gBAAgB;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gCAAgC;IAChC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,kBAAkB;IAClB,OAAO,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;CAC/B;AAED,wBAAgB,iBAAiB,CAAC,OAAO,GAAE,wBAA6B,GAAG,MAAM,GAAG,KAAK,CA8ExF;AAED,eAAe,iBAAiB,CAAC"}
@@ -5,9 +5,19 @@ exports.fontsMirrorPlugin = fontsMirrorPlugin;
5
5
  * 编译时把 `fonts.googleapis.com` / `fonts.gstatic.com` 全量改写到妙搭字体代理,
6
6
  * 屏蔽 Google Fonts 在内网 / 部分客户端不可达导致的白屏。
7
7
  *
8
+ * 历史背景(章小川 @ 2026-04-17 妙搭 CR 群):
9
+ * - 原方案(miaoda-skills MR 311)在 skill PE 里教模型使用 miaoda.feishu.cn/fonts
10
+ * - 问题:占 token + 增加模型学习成本;存量应用无法追溯修复
11
+ * - 现方案:在 preset 层做编译时字符串替换
12
+ * · pathname 与 Google Fonts 完全一致(`/css` / `/css2?family=...&wght=...&display=swap`)
13
+ * · 只换域名,任何模型输出都能被正确代理
14
+ * · 存量应用只需重新编译发布即可修复
15
+ * · 单点收敛,所有用 preset 的应用一致受益
16
+ *
8
17
  * - 命中文件类型:html / css / scss / less / styl / js / ts / tsx / vue / svelte 等
9
18
  * - URL pathname 保持与 Google Fonts 一致(`/css`、`/css2?family=...&wght=...`),
10
19
  * 任意模型输出形式都能被代理;只换域名
20
+ * - 覆盖 fonts.googleapis.com(CSS 加载 API)和 fonts.gstatic.com(字体文件 CDN)
11
21
  * - 关闭:`{ disabled: true }` 或环境变量 `MIAODA_FONTS_MIRROR_OFF=1`
12
22
  *
13
23
  * 兜底策略(generateBundle):
@@ -1 +1 @@
1
- {"version":3,"file":"fonts-mirror.js","sourceRoot":"","sources":["../../src/plugins/fonts-mirror.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fonts-mirror.js","sourceRoot":"","sources":["../../src/plugins/fonts-mirror.ts"],"names":[],"mappings":"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"}
@@ -1,24 +1,18 @@
1
1
  import type { Plugin } from 'vite';
2
- import { HEALTH_ENDPOINT } from './health-core';
3
2
  /**
4
- * 给妙搭沙箱外壳提供统一的 health endpoint。协议与判定见 `./health-core`。
3
+ * 给妙搭沙箱外壳提供统一的 health endpoint。
5
4
  *
6
- * **本 preset 同时服务 jsPage 和 fullstack**(见 `src/index.ts` 的
7
- * `isFullstack = MIAODA_APP_TYPE === '3'`,它 gate 了 devProxyPlugin 等
8
- * fullstack-only 插件;升级链路上的存量全栈应用也走这个包)。
9
- * 缺省由 `isFullstackApp()` 判定,与 `isFullstack` 同一口径,保证
10
- * 「反代到 3000」和「health 说有后端」不会分叉。
5
+ * 协议(飞书文档 - 妙搭应用 Health Check 接口规范):
6
+ * - HTTP connection refused / timeout → dev server 没起来 → 外壳重启沙箱
7
+ * - 200 + { ready: true } → 应用已就绪
8
+ * - 200 + { ready: false } → 还在启动,按 error 描述判断重试
9
+ *
10
+ * 不归本接口管:
11
+ * - vite compile error / runtime error / 资源加载失败 → 浏览器侧自己上报
11
12
  */
12
- export { HEALTH_ENDPOINT };
13
13
  export interface HealthMiddlewarePluginOptions {
14
14
  /** Health endpoint 路径,默认 `/dev/health`。 */
15
15
  endpoint?: string;
16
- /** 后端端口;缺省读 SERVER_PORT,再兜底 3000 */
17
- serverPort?: number;
18
- /** server.std.log 所在目录;缺省读 LOG_DIR,再兜底 ./logs */
19
- logDir?: string;
20
- /** 本应用是否有 Node 后端;缺省按 MIAODA_APP_TYPE 判定 */
21
- hasServer?: boolean;
22
16
  }
23
17
  export declare function healthMiddlewarePlugin(options?: HealthMiddlewarePluginOptions): Plugin;
24
18
  export default healthMiddlewarePlugin;
@@ -1 +1 @@
1
- {"version":3,"file":"health.d.ts","sourceRoot":"","sources":["../../src/plugins/health.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAiB,MAAM,MAAM,CAAC;AAElD,OAAO,EAAE,eAAe,EAAqB,MAAM,eAAe,CAAC;AAEnE;;;;;;;;GAQG;AACH,OAAO,EAAE,eAAe,EAAE,CAAC;AAE3B,MAAM,WAAW,6BAA6B;IAC5C,2CAA2C;IAC3C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,oCAAoC;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iDAAiD;IACjD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,4CAA4C;IAC5C,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,wBAAgB,sBAAsB,CAAC,OAAO,GAAE,6BAAkC,GAAG,MAAM,CAqD1F;AAED,eAAe,sBAAsB,CAAC"}
1
+ {"version":3,"file":"health.d.ts","sourceRoot":"","sources":["../../src/plugins/health.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAiB,MAAM,MAAM,CAAC;AAElD;;;;;;;;;;GAUG;AACH,MAAM,WAAW,6BAA6B;IAC5C,2CAA2C;IAC3C,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,wBAAgB,sBAAsB,CAAC,OAAO,GAAE,6BAAkC,GAAG,MAAM,CA+B1F;AAED,eAAe,sBAAsB,CAAC"}
@@ -1,11 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.HEALTH_ENDPOINT = void 0;
4
3
  exports.healthMiddlewarePlugin = healthMiddlewarePlugin;
5
- const health_core_1 = require("./health-core");
6
- Object.defineProperty(exports, "HEALTH_ENDPOINT", { enumerable: true, get: function () { return health_core_1.HEALTH_ENDPOINT; } });
7
4
  function healthMiddlewarePlugin(options = {}) {
8
- const endpoint = options.endpoint ?? health_core_1.HEALTH_ENDPOINT;
5
+ const endpoint = options.endpoint ?? '/dev/health';
9
6
  let viteReady = false;
10
7
  return {
11
8
  name: 'miaoda-health',
@@ -24,33 +21,13 @@ function healthMiddlewarePlugin(options = {}) {
24
21
  viteReady = true;
25
22
  });
26
23
  }
27
- const probe = (0, health_core_1.createHealthProbe)({
28
- isClientReady: () => viteReady,
29
- hasServer: options.hasServer,
30
- serverPort: options.serverPort,
31
- logDir: options.logDir,
32
- });
33
24
  server.middlewares.use(endpoint, (req, res, next) => {
34
25
  if (req.method && req.method !== 'GET')
35
26
  return next();
36
- const write = (payload) => {
37
- res.setHeader('Content-Type', 'application/json');
38
- res.setHeader('Cache-Control', 'no-store');
39
- res.statusCode = 200;
40
- res.end(JSON.stringify(payload));
41
- };
42
- // probe() 内部已兜底不会 reject;但 write 本身可能抛(响应已被销毁等),
43
- // 不接 catch 的话请求会一直挂到外壳超时,还会留下 unhandled rejection。
44
- void probe()
45
- .then(write)
46
- .catch(() => {
47
- try {
48
- write({ ready: false, status: 'pending' });
49
- }
50
- catch {
51
- res.end();
52
- }
53
- });
27
+ res.setHeader('Content-Type', 'application/json');
28
+ res.setHeader('Cache-Control', 'no-store');
29
+ res.statusCode = 200;
30
+ res.end(JSON.stringify({ ready: viteReady }));
54
31
  });
55
32
  },
56
33
  };
@@ -1 +1 @@
1
- {"version":3,"file":"health.js","sourceRoot":"","sources":["../../src/plugins/health.ts"],"names":[],"mappings":";;;AA0BA,wDAqDC;AA7ED,+CAAmE;AAW1D,gGAXA,6BAAe,OAWA;AAaxB,SAAgB,sBAAsB,CAAC,UAAyC,EAAE;IAChF,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,6BAAe,CAAC;IACrD,IAAI,SAAS,GAAG,KAAK,CAAC;IAEtB,OAAO;QACL,IAAI,EAAE,eAAe;QACrB,KAAK,EAAE,OAAO;QAEd,eAAe,CAAC,MAAqB;YACnC,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;YACrC,QAAQ;YACR,2CAA2C;YAC3C,4CAA4C;YAC5C,0BAA0B;YAC1B,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,SAAS,EAAE,CAAC;gBACxC,SAAS,GAAG,IAAI,CAAC;YACnB,CAAC;iBAAM,CAAC;gBACN,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE;oBAChC,SAAS,GAAG,IAAI,CAAC;gBACnB,CAAC,CAAC,CAAC;YACL,CAAC;YAED,MAAM,KAAK,GAAG,IAAA,+BAAiB,EAAC;gBAC9B,aAAa,EAAE,GAAG,EAAE,CAAC,SAAS;gBAC9B,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,MAAM,EAAE,OAAO,CAAC,MAAM;aACvB,CAAC,CAAC;YAEH,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;gBAClD,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK;oBAAE,OAAO,IAAI,EAAE,CAAC;gBAEtD,MAAM,KAAK,GAAG,CAAC,OAAgB,EAAE,EAAE;oBACjC,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;oBAClD,GAAG,CAAC,SAAS,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;oBAC3C,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC;oBACrB,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;gBACnC,CAAC,CAAC;gBAEF,iDAAiD;gBACjD,mDAAmD;gBACnD,KAAK,KAAK,EAAE;qBACT,IAAI,CAAC,KAAK,CAAC;qBACX,KAAK,CAAC,GAAG,EAAE;oBACV,IAAI,CAAC;wBACH,KAAK,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;oBAC7C,CAAC;oBAAC,MAAM,CAAC;wBACP,GAAG,CAAC,GAAG,EAAE,CAAC;oBACZ,CAAC;gBACH,CAAC,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC;AAED,kBAAe,sBAAsB,CAAC"}
1
+ {"version":3,"file":"health.js","sourceRoot":"","sources":["../../src/plugins/health.ts"],"names":[],"mappings":";;AAkBA,wDA+BC;AA/BD,SAAgB,sBAAsB,CAAC,UAAyC,EAAE;IAChF,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,aAAa,CAAC;IACnD,IAAI,SAAS,GAAG,KAAK,CAAC;IAEtB,OAAO;QACL,IAAI,EAAE,eAAe;QACrB,KAAK,EAAE,OAAO;QAEd,eAAe,CAAC,MAAqB;YACnC,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;YACrC,QAAQ;YACR,2CAA2C;YAC3C,4CAA4C;YAC5C,0BAA0B;YAC1B,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,SAAS,EAAE,CAAC;gBACxC,SAAS,GAAG,IAAI,CAAC;YACnB,CAAC;iBAAM,CAAC;gBACN,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE;oBAChC,SAAS,GAAG,IAAI,CAAC;gBACnB,CAAC,CAAC,CAAC;YACL,CAAC;YAED,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;gBAClD,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK;oBAAE,OAAO,IAAI,EAAE,CAAC;gBACtD,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;gBAClD,GAAG,CAAC,SAAS,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;gBAC3C,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC;gBACrB,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;YAChD,CAAC,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC;AAED,kBAAe,sBAAsB,CAAC"}
@@ -0,0 +1,31 @@
1
+ import type { Plugin } from 'vite';
2
+ export interface PreconnectPluginOptions {
3
+ /**
4
+ * 需要 preconnect 的 origin 列表。允许传完整 URL,内部会解析为 origin 并去重。
5
+ * 非 http(s) 协议或解析失败的项会被忽略。
6
+ */
7
+ origins: string[];
8
+ /**
9
+ * preconnect link 的 crossorigin 属性。
10
+ * - `true` 或 `'anonymous'`:`crossorigin="anonymous"`(匹配 `<script crossorigin>` / `<link modulepreload>` 等 CORS 请求)
11
+ * - `'use-credentials'`:`crossorigin="use-credentials"`
12
+ * - `false`:不设置 crossorigin 属性(匹配普通 `<script src>` 等非 CORS 请求)
13
+ *
14
+ * 默认 `'anonymous'`,匹配 Vite 打包输出的 ESM chunks(默认带 crossorigin)。
15
+ */
16
+ crossOrigin?: boolean | 'anonymous' | 'use-credentials';
17
+ /**
18
+ * 是否同时添加 `dns-prefetch` 作为兜底(对不支持 preconnect 的旧浏览器有效)。默认 false。
19
+ */
20
+ dnsPrefetchFallback?: boolean;
21
+ }
22
+ /**
23
+ * 注入 `<link rel="preconnect">`(可选附加 `<link rel="dns-prefetch">`)到 HTML head 最前面,
24
+ * 让浏览器提前建立到关键资源域名的 TCP + TLS 连接,减少首屏资源的等待时间。
25
+ *
26
+ * 插件本身不关心域名来源,域名完全由调用方通过 `origins` 传入——上层可以基于 `publicPath`、
27
+ * 环境变量或业务配置动态派生,未来更换 CDN 只需改上层即可。
28
+ */
29
+ export declare function preconnectPlugin(options: PreconnectPluginOptions): Plugin;
30
+ export default preconnectPlugin;
31
+ //# sourceMappingURL=preconnect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preconnect.d.ts","sourceRoot":"","sources":["../../src/plugins/preconnect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAEnC,MAAM,WAAW,uBAAuB;IACtC;;;OAGG;IACH,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,OAAO,GAAG,WAAW,GAAG,iBAAiB,CAAC;IACxD;;OAEG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AA0BD;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,uBAAuB,GAAG,MAAM,CAgCzE;AAED,eAAe,gBAAgB,CAAC"}