@finesoft/front 0.1.42 → 0.1.44

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.
@@ -1,5 +1,5 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-wcPFST8Q.mjs";
2
- import { n as parseAcceptLanguage } from "./locale-D2Bu7w47.mjs";
2
+ import { n as parseAcceptLanguage } from "./locale-iP9ABD4H.mjs";
3
3
  import { Hono } from "hono";
4
4
  //#region ../ssr/src/inject.ts
5
5
  /**
@@ -175,4 +175,4 @@ function createSSRApp(options) {
175
175
  //#endregion
176
176
  export { SSR_PLACEHOLDERS as a, createInternalFetch as i, createSSRApp as n, injectCSRShell as o, SSR_DEPTH_HEADER as r, injectSSRContent as s, app_exports as t };
177
177
 
178
- //# sourceMappingURL=app-re7jUCuM.mjs.map
178
+ //# sourceMappingURL=app-kSVTNgig.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"app-re7jUCuM.mjs","names":[],"sources":["../../ssr/src/inject.ts","../../server/src/internal-fetch.ts","../../server/src/app.ts"],"sourcesContent":["/**\n * injectSSRContent — 将 SSR 渲染结果注入 HTML 模板\n */\n\n/** SSR HTML 模板占位符常量 */\nexport const SSR_PLACEHOLDERS = {\n LANG: \"<!--ssr-lang-->\",\n HEAD: \"<!--ssr-head-->\",\n BODY: \"<!--ssr-body-->\",\n DATA: \"<!--ssr-data-->\",\n} as const;\n\nexport interface InjectSSROptions {\n template: string;\n locale: string;\n head: string;\n css: string;\n html: string;\n serializedData: string;\n}\n\nexport function injectSSRContent(options: InjectSSROptions): string {\n const { template, locale, head, css, html, serializedData } = options;\n const cssTag = css ? `<style>${css}</style>` : \"\";\n\n return template\n .replace(SSR_PLACEHOLDERS.LANG, locale)\n .replace(SSR_PLACEHOLDERS.HEAD, `${head}\\n${cssTag}`)\n .replace(SSR_PLACEHOLDERS.BODY, html)\n .replace(\n SSR_PLACEHOLDERS.DATA,\n `<script id=\"serialized-server-data\" type=\"application/json\">${serializedData}</script>`,\n );\n}\n\n/**\n * CSR 空壳注入 — 只替换 lang,清空 body/head/data 占位符\n * 用于 renderMode === \"csr\" 的路由\n */\nexport function injectCSRShell(template: string, locale: string): string {\n return template\n .replace(SSR_PLACEHOLDERS.LANG, locale)\n .replace(SSR_PLACEHOLDERS.HEAD, \"\")\n .replace(SSR_PLACEHOLDERS.BODY, \"\")\n .replace(SSR_PLACEHOLDERS.DATA, \"\");\n}\n","/**\n * createInternalFetch — SSR 内部路由回环 fetch 包装器\n *\n * 将相对路径(/api/…)请求转为 Hono app.fetch 内存调用,\n * 绝对 URL 和非字符串 input 走 globalThis.fetch(真实网络)。\n *\n * 递归深度保护采用请求头传递:每次 SSR 回环在请求头中写入深度值,\n * SSR catch-all 读取深度判断是否超限。对比闭包计数器方案:\n * - 并发安全:无共享可变状态\n * - 跨渲染准确:深度随请求在 Hono 路由链中传递\n */\n\nexport const SSR_DEPTH_HEADER = \"x-ssr-depth\";\nexport const MAX_SSR_DEPTH = 5;\n\n/**\n * 创建请求级 internal fetch\n *\n * @param appFetch - Hono app.fetch(父级路由)\n * @param depth - 当前 SSR 深度(由 catch-all handler 从请求头读取后 +1 传入)\n */\nexport function createInternalFetch(\n appFetch: (request: Request) => Response | Promise<Response>,\n depth: number = 1,\n): typeof globalThis.fetch {\n return ((input: RequestInfo | URL, init?: RequestInit) => {\n // 只拦截相对路径(以 / 开头),其他一律走真实网络\n if (typeof input === \"string\" && input.startsWith(\"/\")) {\n const request = new Request(`http://localhost${input}`, init);\n request.headers.set(SSR_DEPTH_HEADER, String(depth));\n return Promise.resolve(appFetch(request));\n }\n\n // 绝对 URL / URL 对象 / Request 对象 → 走正常网络\n return globalThis.fetch(input, init);\n }) as typeof globalThis.fetch;\n}\n","/**\n * createSSRApp — 创建 Hono SSR 应用\n *\n * 提供 SSR 通配路由,读取模板、加载 SSR 模块、渲染。\n * 应用层可在此之上追加自定义路由(API 代理等)。\n */\n\nimport { injectCSRShell, injectSSRContent } from \"@finesoft/ssr\";\nimport { Hono } from \"hono\";\nimport type { ViteDevServer } from \"vite\";\nimport { createInternalFetch, MAX_SSR_DEPTH, SSR_DEPTH_HEADER } from \"./internal-fetch\";\nimport { parseAcceptLanguage } from \"./locale\";\n\n/**\n * 匹配 Vite 配置级别的 renderMode 覆盖。\n * 精确路径优先,然后 glob 模式。\n */\nfunction matchRenderModeOverride(url: string, renderModes?: Record<string, string>): string | null {\n if (!renderModes) return null;\n const path = url.split(\"?\")[0];\n if (renderModes[path]) return renderModes[path];\n for (const [pattern, mode] of Object.entries(renderModes)) {\n if (pattern.includes(\"*\")) {\n const escaped = pattern.replace(/[.+?^${}()|[\\]\\\\]/g, \"\\\\$&\");\n const re = new RegExp(\"^\" + escaped.replace(/\\*/g, \".*\") + \"$\");\n if (re.test(path)) return mode;\n }\n }\n return null;\n}\n\nexport interface SSRModule {\n render: (\n url: string,\n locale: string,\n ssrContext?: {\n fetch?: typeof globalThis.fetch;\n request?: Request;\n },\n ) => Promise<{\n html: string;\n head: string;\n css: string;\n serverData: unknown;\n renderMode?: string;\n redirect?: { url: string; status: number };\n }>;\n serializeServerData: (data: unknown) => string;\n}\n\nexport interface SSRAppOptions {\n /** 项目根路径 */\n root: string;\n /** Vite dev server(仅开发模式) */\n vite?: ViteDevServer;\n /** 是否生产环境 */\n isProduction: boolean;\n /** SSR 入口文件路径(开发用,如 \"/src/ssr.ts\") */\n ssrEntryPath?: string;\n /** 生产环境 SSR 模块路径(如 \"../dist/server/ssr.js\") */\n ssrProductionModule?: string;\n /** 支持的语言列表 */\n supportedLocales?: string[];\n /** 默认语言 */\n defaultLocale?: string;\n /**\n * 父级 Hono app 的 fetch 函数,用于 SSR 内部路由回环。\n * SSR 渲染时,控制器的 fetch 请求(如 /api/apple/*)会通过此函数\n * 直接在进程内路由到代理 handler,避免网络自请求死锁。\n */\n parentFetch?: (request: Request) => Response | Promise<Response>;\n /**\n * 按路由覆盖渲染模式(精确路径或 glob 模式)。\n * 优先级高于路由级 renderMode。\n */\n renderModes?: Record<string, string>;\n}\n\nexport function createSSRApp(options: SSRAppOptions): Hono {\n const {\n root,\n vite,\n isProduction,\n ssrEntryPath = \"/src/ssr.ts\",\n ssrProductionModule,\n supportedLocales,\n defaultLocale,\n parentFetch,\n renderModes,\n } = options;\n\n const app = new Hono();\n\n /** ISR 内存缓存(prerender 路由首次请求后缓存,LRU 驱逐) */\n const ISR_CACHE_MAX = 1000;\n const isrCache = new Map<string, string>();\n function isrSet(key: string, val: string) {\n if (isrCache.size >= ISR_CACHE_MAX) {\n const first = isrCache.keys().next().value;\n if (first !== undefined) isrCache.delete(first);\n }\n isrCache.set(key, val);\n }\n\n /** 生产环境模板缓存(模板不变,避免每请求重复读盘) */\n let templateCache: string | undefined;\n\n async function readTemplate(url: string): Promise<string> {\n if (!isProduction && vite) {\n const { readFileSync } = await import(/* @vite-ignore */ \"node:fs\");\n const path = await import(/* @vite-ignore */ \"node:path\");\n const raw = readFileSync(path.resolve(root, \"index.html\"), \"utf-8\");\n return vite.transformIndexHtml(url, raw);\n }\n\n if (templateCache) return templateCache;\n\n const isDeno = typeof (globalThis as any).Deno !== \"undefined\";\n if (isDeno) {\n templateCache = (globalThis as any).Deno.readTextFileSync(\n new URL(\"../dist/client/index.html\", import.meta.url),\n );\n return templateCache!;\n }\n\n const { readFileSync } = await import(/* @vite-ignore */ \"node:fs\");\n const path = await import(/* @vite-ignore */ \"node:path\");\n templateCache = readFileSync(path.resolve(root, \"dist/client/index.html\"), \"utf-8\");\n return templateCache!;\n }\n\n async function loadSSRModule(): Promise<SSRModule> {\n if (!isProduction && vite) {\n return (await vite.ssrLoadModule(ssrEntryPath)) as SSRModule;\n }\n if (ssrProductionModule) {\n return import(/* @vite-ignore */ ssrProductionModule) as Promise<SSRModule>;\n }\n const path = await import(/* @vite-ignore */ \"node:path\");\n const { pathToFileURL } = await import(/* @vite-ignore */ \"node:url\");\n const absPath = pathToFileURL(path.resolve(root, \"dist/server/ssr.js\")).href;\n return import(/* @vite-ignore */ absPath) as Promise<SSRModule>;\n }\n\n app.get(\"*\", async (c) => {\n // 递归深度保护:从请求头读取 SSR 深度\n const ssrDepth = parseInt(c.req.header(SSR_DEPTH_HEADER) ?? \"0\", 10);\n if (ssrDepth >= MAX_SSR_DEPTH) {\n return c.text(\"SSR recursion loop detected\", 508);\n }\n\n const url = c.req.path + (c.req.url.includes(\"?\") ? \"?\" + c.req.url.split(\"?\")[1] : \"\");\n\n try {\n const template = await readTemplate(url);\n const { render, serializeServerData } = await loadSSRModule();\n\n const locale = parseAcceptLanguage(\n c.req.header(\"accept-language\"),\n supportedLocales,\n defaultLocale,\n );\n\n // Vite 配置级别覆盖:CSR 直接返回空壳\n const overrideMode = matchRenderModeOverride(url, renderModes);\n if (overrideMode === \"csr\") {\n return c.html(injectCSRShell(template, locale));\n }\n\n // ISR 缓存命中(key 含 locale,避免跨语言缓存污染)\n const cacheKey = `${locale}:${url}`;\n const cached = isrCache.get(cacheKey);\n if (cached) return c.html(cached);\n\n // 每请求创建 internalFetch,深度通过请求头传递\n const requestFetch = parentFetch\n ? createInternalFetch(parentFetch, ssrDepth + 1)\n : undefined;\n\n const ssrContext: {\n fetch?: typeof globalThis.fetch;\n request?: Request;\n } = { request: c.req.raw };\n if (requestFetch) ssrContext.fetch = requestFetch;\n\n const {\n html: appHtml,\n head,\n css,\n serverData,\n renderMode,\n redirect: middlewareRedirect,\n } = await render(url, locale, ssrContext);\n\n // 中间件要求重定向\n if (middlewareRedirect) {\n return c.redirect(middlewareRedirect.url, middlewareRedirect.status as 301 | 302);\n }\n\n // CSR 模式:返回空壳 HTML\n if (renderMode === \"csr\") {\n return c.html(injectCSRShell(template, locale));\n }\n\n const serializedData = serializeServerData(serverData);\n\n const finalHtml = injectSSRContent({\n template,\n locale,\n head,\n css,\n html: appHtml,\n serializedData,\n });\n\n // Prerender ISR 缓存(包括 Vite 配置覆盖和路由级)\n if (renderMode === \"prerender\" || overrideMode === \"prerender\") {\n isrSet(cacheKey, finalHtml);\n }\n\n return c.html(finalHtml);\n } catch (e) {\n if (!isProduction && vite) {\n vite.ssrFixStacktrace(e as Error);\n }\n console.error(\"[SSR Error]\", e);\n return c.text(\"Internal Server Error\", 500);\n }\n });\n\n return app;\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"app-kSVTNgig.mjs","names":[],"sources":["../../ssr/src/inject.ts","../../server/src/internal-fetch.ts","../../server/src/app.ts"],"sourcesContent":["/**\n * injectSSRContent — 将 SSR 渲染结果注入 HTML 模板\n */\n\n/** SSR HTML 模板占位符常量 */\nexport const SSR_PLACEHOLDERS = {\n LANG: \"<!--ssr-lang-->\",\n HEAD: \"<!--ssr-head-->\",\n BODY: \"<!--ssr-body-->\",\n DATA: \"<!--ssr-data-->\",\n} as const;\n\nexport interface InjectSSROptions {\n template: string;\n locale: string;\n head: string;\n css: string;\n html: string;\n serializedData: string;\n}\n\nexport function injectSSRContent(options: InjectSSROptions): string {\n const { template, locale, head, css, html, serializedData } = options;\n const cssTag = css ? `<style>${css}</style>` : \"\";\n\n return template\n .replace(SSR_PLACEHOLDERS.LANG, locale)\n .replace(SSR_PLACEHOLDERS.HEAD, `${head}\\n${cssTag}`)\n .replace(SSR_PLACEHOLDERS.BODY, html)\n .replace(\n SSR_PLACEHOLDERS.DATA,\n `<script id=\"serialized-server-data\" type=\"application/json\">${serializedData}</script>`,\n );\n}\n\n/**\n * CSR 空壳注入 — 只替换 lang,清空 body/head/data 占位符\n * 用于 renderMode === \"csr\" 的路由\n */\nexport function injectCSRShell(template: string, locale: string): string {\n return template\n .replace(SSR_PLACEHOLDERS.LANG, locale)\n .replace(SSR_PLACEHOLDERS.HEAD, \"\")\n .replace(SSR_PLACEHOLDERS.BODY, \"\")\n .replace(SSR_PLACEHOLDERS.DATA, \"\");\n}\n","/**\n * createInternalFetch — SSR 内部路由回环 fetch 包装器\n *\n * 将相对路径(/api/…)请求转为 Hono app.fetch 内存调用,\n * 绝对 URL 和非字符串 input 走 globalThis.fetch(真实网络)。\n *\n * 递归深度保护采用请求头传递:每次 SSR 回环在请求头中写入深度值,\n * SSR catch-all 读取深度判断是否超限。对比闭包计数器方案:\n * - 并发安全:无共享可变状态\n * - 跨渲染准确:深度随请求在 Hono 路由链中传递\n */\n\nexport const SSR_DEPTH_HEADER = \"x-ssr-depth\";\nexport const MAX_SSR_DEPTH = 5;\n\n/**\n * 创建请求级 internal fetch\n *\n * @param appFetch - Hono app.fetch(父级路由)\n * @param depth - 当前 SSR 深度(由 catch-all handler 从请求头读取后 +1 传入)\n */\nexport function createInternalFetch(\n appFetch: (request: Request) => Response | Promise<Response>,\n depth: number = 1,\n): typeof globalThis.fetch {\n return ((input: RequestInfo | URL, init?: RequestInit) => {\n // 只拦截相对路径(以 / 开头),其他一律走真实网络\n if (typeof input === \"string\" && input.startsWith(\"/\")) {\n const request = new Request(`http://localhost${input}`, init);\n request.headers.set(SSR_DEPTH_HEADER, String(depth));\n return Promise.resolve(appFetch(request));\n }\n\n // 绝对 URL / URL 对象 / Request 对象 → 走正常网络\n return globalThis.fetch(input, init);\n }) as typeof globalThis.fetch;\n}\n","/**\n * createSSRApp — 创建 Hono SSR 应用\n *\n * 提供 SSR 通配路由,读取模板、加载 SSR 模块、渲染。\n * 应用层可在此之上追加自定义路由(API 代理等)。\n */\n\nimport { injectCSRShell, injectSSRContent } from \"@finesoft/ssr\";\nimport { Hono } from \"hono\";\nimport type { ViteDevServer } from \"vite\";\nimport { createInternalFetch, MAX_SSR_DEPTH, SSR_DEPTH_HEADER } from \"./internal-fetch\";\nimport { parseAcceptLanguage } from \"./locale\";\n\n/**\n * 匹配 Vite 配置级别的 renderMode 覆盖。\n * 精确路径优先,然后 glob 模式。\n */\nfunction matchRenderModeOverride(url: string, renderModes?: Record<string, string>): string | null {\n if (!renderModes) return null;\n const path = url.split(\"?\")[0];\n if (renderModes[path]) return renderModes[path];\n for (const [pattern, mode] of Object.entries(renderModes)) {\n if (pattern.includes(\"*\")) {\n const escaped = pattern.replace(/[.+?^${}()|[\\]\\\\]/g, \"\\\\$&\");\n const re = new RegExp(\"^\" + escaped.replace(/\\*/g, \".*\") + \"$\");\n if (re.test(path)) return mode;\n }\n }\n return null;\n}\n\nexport interface SSRModule {\n render: (\n url: string,\n locale: string,\n ssrContext?: {\n fetch?: typeof globalThis.fetch;\n request?: Request;\n },\n ) => Promise<{\n html: string;\n head: string;\n css: string;\n serverData: unknown;\n renderMode?: string;\n redirect?: { url: string; status: number };\n }>;\n serializeServerData: (data: unknown) => string;\n}\n\nexport interface SSRAppOptions {\n /** 项目根路径 */\n root: string;\n /** Vite dev server(仅开发模式) */\n vite?: ViteDevServer;\n /** 是否生产环境 */\n isProduction: boolean;\n /** SSR 入口文件路径(开发用,如 \"/src/ssr.ts\") */\n ssrEntryPath?: string;\n /** 生产环境 SSR 模块路径(如 \"../dist/server/ssr.js\") */\n ssrProductionModule?: string;\n /** 支持的语言列表 */\n supportedLocales?: string[];\n /** 默认语言 */\n defaultLocale?: string;\n /**\n * 父级 Hono app 的 fetch 函数,用于 SSR 内部路由回环。\n * SSR 渲染时,控制器的 fetch 请求(如 /api/apple/*)会通过此函数\n * 直接在进程内路由到代理 handler,避免网络自请求死锁。\n */\n parentFetch?: (request: Request) => Response | Promise<Response>;\n /**\n * 按路由覆盖渲染模式(精确路径或 glob 模式)。\n * 优先级高于路由级 renderMode。\n */\n renderModes?: Record<string, string>;\n}\n\nexport function createSSRApp(options: SSRAppOptions): Hono {\n const {\n root,\n vite,\n isProduction,\n ssrEntryPath = \"/src/ssr.ts\",\n ssrProductionModule,\n supportedLocales,\n defaultLocale,\n parentFetch,\n renderModes,\n } = options;\n\n const app = new Hono();\n\n /** ISR 内存缓存(prerender 路由首次请求后缓存,LRU 驱逐) */\n const ISR_CACHE_MAX = 1000;\n const isrCache = new Map<string, string>();\n function isrSet(key: string, val: string) {\n if (isrCache.size >= ISR_CACHE_MAX) {\n const first = isrCache.keys().next().value;\n if (first !== undefined) isrCache.delete(first);\n }\n isrCache.set(key, val);\n }\n\n /** 生产环境模板缓存(模板不变,避免每请求重复读盘) */\n let templateCache: string | undefined;\n\n async function readTemplate(url: string): Promise<string> {\n if (!isProduction && vite) {\n const { readFileSync } = await import(/* @vite-ignore */ \"node:fs\");\n const path = await import(/* @vite-ignore */ \"node:path\");\n const raw = readFileSync(path.resolve(root, \"index.html\"), \"utf-8\");\n return vite.transformIndexHtml(url, raw);\n }\n\n if (templateCache) return templateCache;\n\n const isDeno = typeof (globalThis as any).Deno !== \"undefined\";\n if (isDeno) {\n templateCache = (globalThis as any).Deno.readTextFileSync(\n new URL(\"../dist/client/index.html\", import.meta.url),\n );\n return templateCache!;\n }\n\n const { readFileSync } = await import(/* @vite-ignore */ \"node:fs\");\n const path = await import(/* @vite-ignore */ \"node:path\");\n templateCache = readFileSync(path.resolve(root, \"dist/client/index.html\"), \"utf-8\");\n return templateCache!;\n }\n\n async function loadSSRModule(): Promise<SSRModule> {\n if (!isProduction && vite) {\n return (await vite.ssrLoadModule(ssrEntryPath)) as SSRModule;\n }\n if (ssrProductionModule) {\n return import(/* @vite-ignore */ ssrProductionModule) as Promise<SSRModule>;\n }\n const path = await import(/* @vite-ignore */ \"node:path\");\n const { pathToFileURL } = await import(/* @vite-ignore */ \"node:url\");\n const absPath = pathToFileURL(path.resolve(root, \"dist/server/ssr.js\")).href;\n return import(/* @vite-ignore */ absPath) as Promise<SSRModule>;\n }\n\n app.get(\"*\", async (c) => {\n // 递归深度保护:从请求头读取 SSR 深度\n const ssrDepth = parseInt(c.req.header(SSR_DEPTH_HEADER) ?? \"0\", 10);\n if (ssrDepth >= MAX_SSR_DEPTH) {\n return c.text(\"SSR recursion loop detected\", 508);\n }\n\n const url = c.req.path + (c.req.url.includes(\"?\") ? \"?\" + c.req.url.split(\"?\")[1] : \"\");\n\n try {\n const template = await readTemplate(url);\n const { render, serializeServerData } = await loadSSRModule();\n\n const locale = parseAcceptLanguage(\n c.req.header(\"accept-language\"),\n supportedLocales,\n defaultLocale,\n );\n\n // Vite 配置级别覆盖:CSR 直接返回空壳\n const overrideMode = matchRenderModeOverride(url, renderModes);\n if (overrideMode === \"csr\") {\n return c.html(injectCSRShell(template, locale));\n }\n\n // ISR 缓存命中(key 含 locale,避免跨语言缓存污染)\n const cacheKey = `${locale}:${url}`;\n const cached = isrCache.get(cacheKey);\n if (cached) return c.html(cached);\n\n // 每请求创建 internalFetch,深度通过请求头传递\n const requestFetch = parentFetch\n ? createInternalFetch(parentFetch, ssrDepth + 1)\n : undefined;\n\n const ssrContext: {\n fetch?: typeof globalThis.fetch;\n request?: Request;\n } = { request: c.req.raw };\n if (requestFetch) ssrContext.fetch = requestFetch;\n\n const {\n html: appHtml,\n head,\n css,\n serverData,\n renderMode,\n redirect: middlewareRedirect,\n } = await render(url, locale, ssrContext);\n\n // 中间件要求重定向\n if (middlewareRedirect) {\n return c.redirect(middlewareRedirect.url, middlewareRedirect.status as 301 | 302);\n }\n\n // CSR 模式:返回空壳 HTML\n if (renderMode === \"csr\") {\n return c.html(injectCSRShell(template, locale));\n }\n\n const serializedData = serializeServerData(serverData);\n\n const finalHtml = injectSSRContent({\n template,\n locale,\n head,\n css,\n html: appHtml,\n serializedData,\n });\n\n // Prerender ISR 缓存(包括 Vite 配置覆盖和路由级)\n if (renderMode === \"prerender\" || overrideMode === \"prerender\") {\n isrSet(cacheKey, finalHtml);\n }\n\n return c.html(finalHtml);\n } catch (e) {\n if (!isProduction && vite) {\n vite.ssrFixStacktrace(e as Error);\n }\n console.error(\"[SSR Error]\", e);\n return c.text(\"Internal Server Error\", 500);\n }\n });\n\n return app;\n}\n"],"mappings":"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"}
package/dist/index.d.mts CHANGED
@@ -807,8 +807,8 @@ interface SSRRenderOptions {
807
807
  bootstrap: (framework: Framework) => void;
808
808
  /** 获取错误页面 */
809
809
  getErrorPage: (status: number, message: string) => BasePage;
810
- /** 应用层渲染函数(如 Svelte SSR render) */
811
- renderApp: (page: BasePage, framework: Framework) => SSRAppResult;
810
+ /** 应用层渲染函数(如 Svelte SSR render / Vue renderToString) */
811
+ renderApp: (page: BasePage, framework: Framework) => SSRAppResult | Promise<SSRAppResult>;
812
812
  /** 可选的 SSR 请求上下文(如自定义 fetch) */
813
813
  ssrContext?: SSRContext;
814
814
  }
@@ -852,7 +852,7 @@ interface SSRRenderConfig {
852
852
  * @param locale - 当前语言
853
853
  * @returns SSR 渲染结果 { html, head, css }
854
854
  */
855
- renderApp: (page: BasePage, locale: string) => SSRAppResult;
855
+ renderApp: (page: BasePage, locale: string) => SSRAppResult | Promise<SSRAppResult>;
856
856
  /** Framework 构造配置(可选) */
857
857
  frameworkConfig?: FrameworkConfig;
858
858
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","names":[],"sources":["../../core/src/actions/types.ts","../../core/src/actions/dispatcher.ts","../../core/src/dependencies/container.ts","../../core/src/intents/types.ts","../../core/src/intents/dispatcher.ts","../../core/src/logger/types.ts","../../core/src/dependencies/make-dependencies.ts","../../core/src/models/page.ts","../../core/src/middleware/types.ts","../../core/src/router/router.ts","../../core/src/logger/base.ts","../../core/src/logger/composite.ts","../../core/src/logger/console.ts","../../core/src/logger/local-storage-filter.ts","../../core/src/prefetched-intents/prefetched-intents.ts","../../core/src/framework.ts","../../core/src/models/shelf.ts","../../core/src/prefetched-intents/stable-stringify.ts","../../core/src/http/client.ts","../../core/src/intents/base-controller.ts","../../core/src/data/mapper.ts","../../core/src/bootstrap/define-routes.ts","../../core/src/utils/lru-map.ts","../../core/src/utils/optional.ts","../../core/src/utils/url.ts","../../core/src/utils/uuid.ts","../../core/src/middleware/context.ts","../../core/src/middleware/pipeline.ts","../../browser/src/action-handlers/external-url-action.ts","../../browser/src/action-handlers/flow-action.ts","../../browser/src/action-handlers/register.ts","../../browser/src/start-app.ts","../../browser/src/utils/history.ts","../../browser/src/utils/try-scroll.ts","../../browser/src/server-data.ts","../../ssr/src/render.ts","../../ssr/src/create-render.ts","../../ssr/src/inject.ts","../../ssr/src/server-data.ts","../../server/src/proxy.ts","../../server/src/adapters/types.ts","../../server/src/adapters/auto.ts","../../server/src/adapters/cloudflare.ts","../../server/src/adapters/netlify.ts","../../server/src/adapters/node.ts","../../server/src/adapters/resolve.ts","../../server/src/adapters/static.ts","../../server/src/adapters/vercel.ts","../../server/src/app.ts","../../server/src/runtime.ts","../../server/src/create-server.ts","../../server/src/locale.ts","../../server/src/start.ts","../../server/src/vite-plugin.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../../core/src/actions/types.ts","../../core/src/actions/dispatcher.ts","../../core/src/dependencies/container.ts","../../core/src/intents/types.ts","../../core/src/intents/dispatcher.ts","../../core/src/logger/types.ts","../../core/src/dependencies/make-dependencies.ts","../../core/src/models/page.ts","../../core/src/middleware/types.ts","../../core/src/router/router.ts","../../core/src/logger/base.ts","../../core/src/logger/composite.ts","../../core/src/logger/console.ts","../../core/src/logger/local-storage-filter.ts","../../core/src/prefetched-intents/prefetched-intents.ts","../../core/src/framework.ts","../../core/src/models/shelf.ts","../../core/src/prefetched-intents/stable-stringify.ts","../../core/src/http/client.ts","../../core/src/intents/base-controller.ts","../../core/src/data/mapper.ts","../../core/src/bootstrap/define-routes.ts","../../core/src/utils/lru-map.ts","../../core/src/utils/optional.ts","../../core/src/utils/url.ts","../../core/src/utils/uuid.ts","../../core/src/middleware/context.ts","../../core/src/middleware/pipeline.ts","../../browser/src/action-handlers/external-url-action.ts","../../browser/src/action-handlers/flow-action.ts","../../browser/src/action-handlers/register.ts","../../browser/src/start-app.ts","../../browser/src/utils/history.ts","../../browser/src/utils/try-scroll.ts","../../browser/src/server-data.ts","../../ssr/src/render.ts","../../ssr/src/create-render.ts","../../ssr/src/inject.ts","../../ssr/src/server-data.ts","../../server/src/proxy.ts","../../server/src/adapters/types.ts","../../server/src/adapters/auto.ts","../../server/src/adapters/cloudflare.ts","../../server/src/adapters/netlify.ts","../../server/src/adapters/node.ts","../../server/src/adapters/resolve.ts","../../server/src/adapters/static.ts","../../server/src/adapters/vercel.ts","../../server/src/app.ts","../../server/src/runtime.ts","../../server/src/create-server.ts","../../server/src/locale.ts","../../server/src/start.ts","../../server/src/vite-plugin.ts"],"mappings":"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"}
package/dist/index.mjs CHANGED
@@ -1,6 +1,5 @@
1
- import "./server-peer-modules-BSSsxBaF.d.mts";
2
- import { a as SSR_PLACEHOLDERS, i as createInternalFetch, n as createSSRApp, o as injectCSRShell, s as injectSSRContent } from "./app-re7jUCuM.mjs";
3
- import { n as parseAcceptLanguage } from "./locale-D2Bu7w47.mjs";
1
+ import { a as SSR_PLACEHOLDERS, i as createInternalFetch, n as createSSRApp, o as injectCSRShell, s as injectSSRContent } from "./app-kSVTNgig.mjs";
2
+ import { n as parseAcceptLanguage } from "./locale-iP9ABD4H.mjs";
4
3
  import { Hono } from "hono";
5
4
  //#region ../core/src/actions/types.ts
6
5
  /**
@@ -1366,7 +1365,7 @@ async function ssrRender(options) {
1366
1365
  });
1367
1366
  const beforeResult = await framework.runBeforeLoad(navCtx, match.beforeGuards);
1368
1367
  if (beforeResult.kind !== "next") {
1369
- const earlyReturn = handleMiddlewareResult(beforeResult, getErrorPage, renderApp, framework);
1368
+ const earlyReturn = await handleMiddlewareResult(beforeResult, getErrorPage, renderApp, framework);
1370
1369
  if (earlyReturn) return earlyReturn;
1371
1370
  }
1372
1371
  try {
@@ -1385,11 +1384,11 @@ async function ssrRender(options) {
1385
1384
  };
1386
1385
  const afterResult = await framework.runAfterLoad(postCtx, match.afterGuards);
1387
1386
  if (afterResult.kind !== "next") {
1388
- const lateReturn = handleMiddlewareResult(afterResult, getErrorPage, renderApp, framework);
1387
+ const lateReturn = await handleMiddlewareResult(afterResult, getErrorPage, renderApp, framework);
1389
1388
  if (lateReturn) return lateReturn;
1390
1389
  }
1391
1390
  } else page = getErrorPage(404, "Page not found");
1392
- const result = renderApp(page, framework);
1391
+ const result = await renderApp(page, framework);
1393
1392
  return {
1394
1393
  html: result.html,
1395
1394
  head: result.head,
@@ -1405,7 +1404,7 @@ async function ssrRender(options) {
1405
1404
  * 将中间件结果转换为 SSRRenderResult(如果需要短路返回)。
1406
1405
  * 返回 null 表示继续正常流程。
1407
1406
  */
1408
- function handleMiddlewareResult(result, getErrorPage, renderApp, framework) {
1407
+ async function handleMiddlewareResult(result, getErrorPage, renderApp, framework) {
1409
1408
  switch (result.kind) {
1410
1409
  case "next": return null;
1411
1410
  case "redirect": return {
@@ -1429,7 +1428,7 @@ function handleMiddlewareResult(result, getErrorPage, renderApp, framework) {
1429
1428
  }
1430
1429
  };
1431
1430
  case "deny": {
1432
- const rendered = renderApp(getErrorPage(result.status, result.message), framework);
1431
+ const rendered = await renderApp(getErrorPage(result.status, result.message), framework);
1433
1432
  return {
1434
1433
  html: rendered.html,
1435
1434
  head: rendered.head,
@@ -2476,6 +2475,15 @@ async function createServer(config = {}) {
2476
2475
  //#endregion
2477
2476
  //#region ../server/src/vite-plugin.ts
2478
2477
  /**
2478
+ * finesoftFrontViteConfig — Vite 插件
2479
+ *
2480
+ * 将 Hono SSR 服务器集成到 Vite 的 dev / build / preview 生命周期中,
2481
+ * 使 template-project 只需 `vite` / `vite build` / `vite preview` 即可运行。
2482
+ *
2483
+ * 支持多平台 adapter: "vercel" | "cloudflare" | "netlify" | "node" | "static" | "auto"
2484
+ * 或自定义 Adapter 对象。
2485
+ */
2486
+ /**
2479
2487
  * 从 setup 模块中查找 setup 函数:优先 default,其次 setup 命名导出。
2480
2488
  */
2481
2489
  function resolveSetupFn(mod) {
@@ -2562,7 +2570,7 @@ function finesoftFrontViteConfig(options = {}) {
2562
2570
  /* @vite-ignore */
2563
2571
  "hono"
2564
2572
  );
2565
- const { createSSRApp } = await import("./app-re7jUCuM.mjs").then((n) => n.t);
2573
+ const { createSSRApp } = await import("./app-kSVTNgig.mjs").then((n) => n.t);
2566
2574
  const { getRequestListener } = await import(
2567
2575
  /* @vite-ignore */
2568
2576
  "@hono/node-server"
@@ -2609,11 +2617,7 @@ function finesoftFrontViteConfig(options = {}) {
2609
2617
  /* @vite-ignore */
2610
2618
  "hono"
2611
2619
  );
2612
- const { injectSSRContent, injectCSRShell } = await import(
2613
- /* @vite-ignore */
2614
- "@finesoft/ssr"
2615
- );
2616
- const { parseAcceptLanguage } = await import("./locale-D2Bu7w47.mjs").then((n) => n.t);
2620
+ const { parseAcceptLanguage } = await import("./locale-iP9ABD4H.mjs").then((n) => n.t);
2617
2621
  const { getRequestListener } = await import(
2618
2622
  /* @vite-ignore */
2619
2623
  "@hono/node-server"