@jasonshimmy/vite-plugin-cer-app 0.28.3 → 0.29.0
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/README.md +2 -0
- package/dist/cli/adapters/cloudflare.d.ts +2 -2
- package/dist/cli/adapters/cloudflare.d.ts.map +1 -1
- package/dist/cli/adapters/cloudflare.js +83 -159
- package/dist/cli/adapters/cloudflare.js.map +1 -1
- package/dist/cli/adapters/deployment-mode.d.ts +10 -0
- package/dist/cli/adapters/deployment-mode.d.ts.map +1 -0
- package/dist/cli/adapters/deployment-mode.js +59 -0
- package/dist/cli/adapters/deployment-mode.js.map +1 -0
- package/dist/cli/adapters/netlify.d.ts +5 -4
- package/dist/cli/adapters/netlify.d.ts.map +1 -1
- package/dist/cli/adapters/netlify.js +26 -150
- package/dist/cli/adapters/netlify.js.map +1 -1
- package/dist/cli/adapters/vercel.d.ts +2 -3
- package/dist/cli/adapters/vercel.d.ts.map +1 -1
- package/dist/cli/adapters/vercel.js +36 -111
- package/dist/cli/adapters/vercel.js.map +1 -1
- package/dist/cli/adapters/web-bridge.d.ts +3 -0
- package/dist/cli/adapters/web-bridge.d.ts.map +1 -0
- package/dist/cli/adapters/web-bridge.js +110 -0
- package/dist/cli/adapters/web-bridge.js.map +1 -0
- package/dist/cli/checks/lighthouse.d.ts +6 -0
- package/dist/cli/checks/lighthouse.d.ts.map +1 -1
- package/dist/cli/checks/lighthouse.js +49 -44
- package/dist/cli/checks/lighthouse.js.map +1 -1
- package/dist/cli/checks/performance.d.ts +3 -0
- package/dist/cli/checks/performance.d.ts.map +1 -1
- package/dist/cli/checks/performance.js +56 -15
- package/dist/cli/checks/performance.js.map +1 -1
- package/dist/cli/checks/quality.d.ts +35 -0
- package/dist/cli/checks/quality.d.ts.map +1 -0
- package/dist/cli/checks/quality.js +72 -0
- package/dist/cli/checks/quality.js.map +1 -0
- package/dist/cli/checks/seo.d.ts +9 -0
- package/dist/cli/checks/seo.d.ts.map +1 -0
- package/dist/cli/checks/seo.js +40 -0
- package/dist/cli/checks/seo.js.map +1 -0
- package/dist/cli/commands/build.d.ts.map +1 -1
- package/dist/cli/commands/build.js +2 -51
- package/dist/cli/commands/build.js.map +1 -1
- package/dist/cli/commands/check.d.ts.map +1 -1
- package/dist/cli/commands/check.js +12 -0
- package/dist/cli/commands/check.js.map +1 -1
- package/dist/cli/commands/dev.d.ts +4 -0
- package/dist/cli/commands/dev.d.ts.map +1 -1
- package/dist/cli/commands/dev.js +1 -72
- package/dist/cli/commands/dev.js.map +1 -1
- package/dist/cli/commands/generate.d.ts +1 -4
- package/dist/cli/commands/generate.d.ts.map +1 -1
- package/dist/cli/commands/generate.js +4 -73
- package/dist/cli/commands/generate.js.map +1 -1
- package/dist/cli/commands/preview-paths.d.ts +3 -0
- package/dist/cli/commands/preview-paths.d.ts.map +1 -0
- package/dist/cli/commands/preview-paths.js +8 -0
- package/dist/cli/commands/preview-paths.js.map +1 -0
- package/dist/cli/commands/preview.d.ts +11 -0
- package/dist/cli/commands/preview.d.ts.map +1 -1
- package/dist/cli/commands/preview.js +124 -458
- package/dist/cli/commands/preview.js.map +1 -1
- package/dist/cli/config.d.ts +3 -0
- package/dist/cli/config.d.ts.map +1 -0
- package/dist/cli/config.js +68 -0
- package/dist/cli/config.js.map +1 -0
- package/dist/cli/create/templates/spa/package.json.tpl +1 -1
- package/dist/cli/create/templates/ssg/package.json.tpl +1 -1
- package/dist/cli/create/templates/ssr/package.json.tpl +1 -1
- package/dist/plugin/build-ssg.d.ts.map +1 -1
- package/dist/plugin/build-ssg.js +79 -9
- package/dist/plugin/build-ssg.js.map +1 -1
- package/dist/plugin/build-ssr.d.ts.map +1 -1
- package/dist/plugin/build-ssr.js +3 -1
- package/dist/plugin/build-ssr.js.map +1 -1
- package/dist/plugin/dev-server.d.ts +8 -0
- package/dist/plugin/dev-server.d.ts.map +1 -1
- package/dist/plugin/dev-server.js.map +1 -1
- package/dist/plugin/dts-generator.d.ts.map +1 -1
- package/dist/plugin/dts-generator.js +3 -0
- package/dist/plugin/dts-generator.js.map +1 -1
- package/dist/plugin/html-post-process.d.ts +1 -1
- package/dist/plugin/html-post-process.d.ts.map +1 -1
- package/dist/plugin/html-post-process.js +7 -5
- package/dist/plugin/html-post-process.js.map +1 -1
- package/dist/plugin/index.d.ts +1 -4
- package/dist/plugin/index.d.ts.map +1 -1
- package/dist/plugin/index.js +26 -8
- package/dist/plugin/index.js.map +1 -1
- package/dist/plugin/server-content.d.ts +3 -0
- package/dist/plugin/server-content.d.ts.map +1 -0
- package/dist/plugin/server-content.js +25 -0
- package/dist/plugin/server-content.js.map +1 -0
- package/dist/plugin/transforms/auto-import.d.ts.map +1 -1
- package/dist/plugin/transforms/auto-import.js +6 -5
- package/dist/plugin/transforms/auto-import.js.map +1 -1
- package/dist/plugin/virtual/content-components.d.ts +3 -1
- package/dist/plugin/virtual/content-components.d.ts.map +1 -1
- package/dist/plugin/virtual/content-components.js +104 -21
- package/dist/plugin/virtual/content-components.js.map +1 -1
- package/dist/runtime/app-template.d.ts.map +1 -1
- package/dist/runtime/app-template.js +18 -8
- package/dist/runtime/app-template.js.map +1 -1
- package/dist/runtime/composables/index.d.ts +2 -0
- package/dist/runtime/composables/index.d.ts.map +1 -1
- package/dist/runtime/composables/index.js +1 -0
- package/dist/runtime/composables/index.js.map +1 -1
- package/dist/runtime/composables/render-content.d.ts +10 -0
- package/dist/runtime/composables/render-content.d.ts.map +1 -0
- package/dist/runtime/composables/render-content.js +21 -0
- package/dist/runtime/composables/render-content.js.map +1 -0
- package/dist/runtime/composables/use-auth.d.ts.map +1 -1
- package/dist/runtime/composables/use-auth.js +14 -6
- package/dist/runtime/composables/use-auth.js.map +1 -1
- package/dist/runtime/composables/use-content-page.d.ts +2 -0
- package/dist/runtime/composables/use-content-page.d.ts.map +1 -1
- package/dist/runtime/composables/use-content-page.js +1 -1
- package/dist/runtime/composables/use-content-page.js.map +1 -1
- package/dist/runtime/content/client.d.ts +2 -3
- package/dist/runtime/content/client.d.ts.map +1 -1
- package/dist/runtime/content/client.js +4 -5
- package/dist/runtime/content/client.js.map +1 -1
- package/dist/runtime/entry-server-template.d.ts.map +1 -1
- package/dist/runtime/entry-server-template.js +45 -15
- package/dist/runtime/entry-server-template.js.map +1 -1
- package/dist/runtime/isr-handler.d.ts +4 -15
- package/dist/runtime/isr-handler.d.ts.map +1 -1
- package/dist/runtime/isr-handler.js +64 -45
- package/dist/runtime/isr-handler.js.map +1 -1
- package/dist/runtime/request-dispatcher.d.ts +31 -0
- package/dist/runtime/request-dispatcher.d.ts.map +1 -0
- package/dist/runtime/request-dispatcher.js +152 -0
- package/dist/runtime/request-dispatcher.js.map +1 -0
- package/dist/runtime/route-matching.d.ts +20 -0
- package/dist/runtime/route-matching.d.ts.map +1 -0
- package/dist/runtime/route-matching.js +45 -0
- package/dist/runtime/route-matching.js.map +1 -0
- package/dist/types/api.d.ts +3 -0
- package/dist/types/api.d.ts.map +1 -1
- package/dist/types/config.d.ts +27 -0
- package/dist/types/config.d.ts.map +1 -1
- package/dist/types/config.js.map +1 -1
- package/dist/types/content.d.ts +2 -0
- package/dist/types/content.d.ts.map +1 -1
- package/dist/types/page.d.ts +11 -7
- package/dist/types/page.d.ts.map +1 -1
- package/package.json +23 -9
- package/dist/cli/commands/preview-isr.d.ts +0 -66
- package/dist/cli/commands/preview-isr.d.ts.map +0 -1
- package/dist/cli/commands/preview-isr.js +0 -132
- package/dist/cli/commands/preview-isr.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"content-components.js","sourceRoot":"","sources":["../../../src/plugin/virtual/content-components.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,6BAA6B,EAAE,
|
|
1
|
+
{"version":3,"file":"content-components.js","sourceRoot":"","sources":["../../../src/plugin/virtual/content-components.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app-template.d.ts","sourceRoot":"","sources":["../../src/runtime/app-template.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,aAAa,GAAE,SAAS,MAAM,EAAO,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"app-template.d.ts","sourceRoot":"","sources":["../../src/runtime/app-template.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,aAAa,GAAE,SAAS,MAAM,EAAO,GAAG,MAAM,CA6lBtF"}
|
|
@@ -13,13 +13,13 @@ export function generateAppEntryTemplate(globalImports = []) {
|
|
|
13
13
|
// Regenerated automatically on every dev server start and build.
|
|
14
14
|
|
|
15
15
|
import '@jasonshimmy/custom-elements-runtime/css'
|
|
16
|
-
${integrationImports}${integrationImports ? '\n' : ''}
|
|
16
|
+
${integrationImports}${integrationImports ? '\n' : ''}
|
|
17
17
|
// virtual:cer-jit-init must run before virtual:cer-layouts and virtual:cer-plugins
|
|
18
18
|
// so JIT CSS is enabled before those modules upgrade custom elements via
|
|
19
19
|
// customElements.define(). Static imports execute depth-first in module order,
|
|
20
20
|
// so placing this import here guarantees enableJITCSS() fires first.
|
|
21
21
|
import 'virtual:cer-jit-init'
|
|
22
|
-
import 'virtual:cer-content-components'
|
|
22
|
+
import { loadContentComponents } from 'virtual:cer-content-components'
|
|
23
23
|
import routes from 'virtual:cer-routes'
|
|
24
24
|
import layouts from 'virtual:cer-layouts'
|
|
25
25
|
import plugins from 'virtual:cer-plugins'
|
|
@@ -86,6 +86,8 @@ let _currentPageLocation = typeof window !== 'undefined'
|
|
|
86
86
|
// Route chunks and loaders may resolve out of order during rapid navigation or
|
|
87
87
|
// initial hydration. Only the newest request is allowed to publish page state.
|
|
88
88
|
let _pageLoadVersion = 0
|
|
89
|
+
let _pageLoadController
|
|
90
|
+
let _retryPath
|
|
89
91
|
|
|
90
92
|
function _toLoaderAttrs(data) {
|
|
91
93
|
if (data === undefined || data === null || typeof data !== 'object') return {}
|
|
@@ -98,6 +100,10 @@ function _toLoaderAttrs(data) {
|
|
|
98
100
|
// stores the results so cer-layout-view can pass them as element attributes.
|
|
99
101
|
async function _loadPageForPath(path, options = {}) {
|
|
100
102
|
const loadVersion = ++_pageLoadVersion
|
|
103
|
+
_pageLoadController?.abort()
|
|
104
|
+
const controller = new AbortController()
|
|
105
|
+
_pageLoadController = controller
|
|
106
|
+
_retryPath = path
|
|
101
107
|
try {
|
|
102
108
|
const url = new URL(path, 'http://x')
|
|
103
109
|
const query = Object.fromEntries(url.searchParams)
|
|
@@ -121,7 +127,7 @@ async function _loadPageForPath(path, options = {}) {
|
|
|
121
127
|
let hasFreshLoaderData = false
|
|
122
128
|
if (typeof mod.loader === 'function' && runLoader) {
|
|
123
129
|
try {
|
|
124
|
-
const data = await mod.loader({ params, query })
|
|
130
|
+
const data = await mod.loader({ params, query, signal: controller.signal })
|
|
125
131
|
if (loadVersion !== _pageLoadVersion) return
|
|
126
132
|
if (data !== undefined && data !== null) {
|
|
127
133
|
loaderData = data
|
|
@@ -140,6 +146,8 @@ async function _loadPageForPath(path, options = {}) {
|
|
|
140
146
|
// instead of re-running the loader on the client, then derive primitive attrs
|
|
141
147
|
// from that payload so useProps() stays consistent with usePageData().
|
|
142
148
|
if (loadVersion !== _pageLoadVersion) return
|
|
149
|
+
await loadContentComponents(path, false, loaderData)
|
|
150
|
+
if (loadVersion !== _pageLoadVersion) return
|
|
143
151
|
loaderAttrs = { ...loaderAttrs, ..._toLoaderAttrs(loaderData) }
|
|
144
152
|
if (hasFreshLoaderData) {
|
|
145
153
|
// Publish loader data only after confirming this is still the newest route.
|
|
@@ -150,8 +158,9 @@ async function _loadPageForPath(path, options = {}) {
|
|
|
150
158
|
_currentPageLocation = url.pathname + url.search
|
|
151
159
|
_currentPageAttrs = loaderAttrs
|
|
152
160
|
_currentPageKey = loadVersion
|
|
153
|
-
} catch {
|
|
161
|
+
} catch (err) {
|
|
154
162
|
if (loadVersion !== _pageLoadVersion) return
|
|
163
|
+
currentError.value = err instanceof Error ? err.message : String(err)
|
|
155
164
|
_currentPageTag = null
|
|
156
165
|
_currentPageAttrs = {}
|
|
157
166
|
_currentPageKey = null
|
|
@@ -166,7 +175,7 @@ const currentError = ref(null)
|
|
|
166
175
|
|
|
167
176
|
const resetError = () => {
|
|
168
177
|
currentError.value = null
|
|
169
|
-
void router.replace(router.getCurrent().path)
|
|
178
|
+
void router.replace(_retryPath ?? router.getCurrent().path)
|
|
170
179
|
}
|
|
171
180
|
;(globalThis).resetError = resetError
|
|
172
181
|
|
|
@@ -196,7 +205,7 @@ router.push = async (path) => {
|
|
|
196
205
|
if (navigationIntent !== _navigationIntent) return
|
|
197
206
|
await _push(path)
|
|
198
207
|
} catch (err) {
|
|
199
|
-
currentError.value = err instanceof Error ? err.message : String(err)
|
|
208
|
+
if (navigationIntent === _navigationIntent) currentError.value = err instanceof Error ? err.message : String(err)
|
|
200
209
|
} finally {
|
|
201
210
|
if (navigationIntent === _navigationIntent) {
|
|
202
211
|
_activateClientRouteRendering()
|
|
@@ -217,7 +226,7 @@ router.replace = async (path) => {
|
|
|
217
226
|
if (navigationIntent !== _navigationIntent) return
|
|
218
227
|
await _replace(path)
|
|
219
228
|
} catch (err) {
|
|
220
|
-
currentError.value = err instanceof Error ? err.message : String(err)
|
|
229
|
+
if (navigationIntent === _navigationIntent) currentError.value = err instanceof Error ? err.message : String(err)
|
|
221
230
|
} finally {
|
|
222
231
|
if (navigationIntent === _navigationIntent) {
|
|
223
232
|
_activateClientRouteRendering()
|
|
@@ -481,6 +490,7 @@ if (typeof window !== 'undefined') {
|
|
|
481
490
|
// untouched. Load its module after the first paint so explicitly
|
|
482
491
|
// interactive descendants (breadcrumbs, TOCs, menus, etc.) can upgrade
|
|
483
492
|
// without putting the static page chunk on the critical rendering path.
|
|
493
|
+
void loadContentComponents(window.location.pathname, true, (globalThis).__CER_DATA__).catch((error) => console.error('[cer-app] Content modules failed:', error))
|
|
484
494
|
const _loadStaticRouteModule = () => {
|
|
485
495
|
const _load = _initMatch?.route?.load
|
|
486
496
|
if (typeof _load === 'function') {
|
|
@@ -584,7 +594,7 @@ if (typeof window !== 'undefined') {
|
|
|
584
594
|
// Safari / older environments fallback.
|
|
585
595
|
setTimeout(() => { void _doHydrate() }, 1)
|
|
586
596
|
}
|
|
587
|
-
} else if (_hydrateStrategy === 'visible') {
|
|
597
|
+
} else if (_hydrateStrategy === 'visible' && typeof IntersectionObserver === 'function') {
|
|
588
598
|
// Defer until cer-layout-view (or body as fallback) enters the viewport.
|
|
589
599
|
const _el = document.querySelector('cer-layout-view') ?? document.body
|
|
590
600
|
const _io = new IntersectionObserver(([entry]) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app-template.js","sourceRoot":"","sources":["../../src/runtime/app-template.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,UAAU,wBAAwB,CAAC,aAAa,GAAsB,EAAE;IAC5E,MAAM,kBAAkB,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,CAAC;SACnD,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,WAAW,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC;SACvF,IAAI,CAAC,IAAI,CAAC,CAAA;IACb,OAAO;;;;EAIP,kBAAkB,GAAG,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE
|
|
1
|
+
{"version":3,"file":"app-template.js","sourceRoot":"","sources":["../../src/runtime/app-template.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,UAAU,wBAAwB,CAAC,aAAa,GAAsB,EAAE;IAC5E,MAAM,kBAAkB,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,CAAC;SACnD,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,WAAW,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC;SACvF,IAAI,CAAC,IAAI,CAAC,CAAA;IACb,OAAO;;;;EAIP,kBAAkB,GAAG,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAolBpD,CAAA;AACD,CAAC"}
|
|
@@ -29,4 +29,6 @@ export { defineContentPageLoader, normalizeContentPath, useContentBreadcrumbs, u
|
|
|
29
29
|
export type { ContentBreadcrumb, ContentBreadcrumbOptions, ContentPageData, ContentPageLoaderOptions, ContentSeoOptions, } from './use-content-page.js';
|
|
30
30
|
export { useActiveHeadings } from './use-active-headings.js';
|
|
31
31
|
export type { ActiveHeadingsOptions } from './use-active-headings.js';
|
|
32
|
+
export { renderContent } from './render-content.js';
|
|
33
|
+
export type { RenderContentOptions, ContentComponentProps } from './render-content.js';
|
|
32
34
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/runtime/composables/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAClG,YAAY,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AACnG,YAAY,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAC7G,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAA;AACtE,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C,YAAY,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,YAAY,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACzE,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,YAAY,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC7D,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAA;AAC7G,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,YAAY,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,YAAY,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AACvD,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC1D,YAAY,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AACrE,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACpB,qBAAqB,EACrB,kBAAkB,EAClB,aAAa,GACd,MAAM,uBAAuB,CAAA;AAC9B,YAAY,EACV,iBAAiB,EACjB,wBAAwB,EACxB,eAAe,EACf,wBAAwB,EACxB,iBAAiB,GAClB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAC5D,YAAY,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/runtime/composables/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAClG,YAAY,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AACnG,YAAY,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAC7G,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAA;AACtE,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C,YAAY,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,YAAY,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACzE,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,YAAY,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC7D,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAA;AAC7G,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,YAAY,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,YAAY,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AACvD,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC1D,YAAY,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AACrE,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACpB,qBAAqB,EACrB,kBAAkB,EAClB,aAAa,GACd,MAAM,uBAAuB,CAAA;AAC9B,YAAY,EACV,iBAAiB,EACjB,wBAAwB,EACxB,eAAe,EACf,wBAAwB,EACxB,iBAAiB,GAClB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAC5D,YAAY,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAA;AAErE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,YAAY,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA"}
|
|
@@ -17,4 +17,5 @@ export { queryContent, QueryBuilder } from './use-content.js';
|
|
|
17
17
|
export { useContentSearch } from './use-content-search.js';
|
|
18
18
|
export { defineContentPageLoader, normalizeContentPath, useContentBreadcrumbs, useContentHeadings, useContentSeo, } from './use-content-page.js';
|
|
19
19
|
export { useActiveHeadings } from './use-active-headings.js';
|
|
20
|
+
export { renderContent } from './render-content.js';
|
|
20
21
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/runtime/composables/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAElG,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAEnG,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAA;AACtE,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAE9C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE3C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAE7C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAEvC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAEzC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAEzC,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE3C,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAE1D,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACpB,qBAAqB,EACrB,kBAAkB,EAClB,aAAa,GACd,MAAM,uBAAuB,CAAA;AAQ9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/runtime/composables/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAElG,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAEnG,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAA;AACtE,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAE9C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE3C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAE7C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAEvC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAEzC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAEzC,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE3C,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAE1D,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACpB,qBAAqB,EACrB,kBAAkB,EAClB,aAAa,GACd,MAAM,uBAAuB,CAAA;AAQ9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAG5D,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { type VNode } from '@jasonshimmy/custom-elements-runtime';
|
|
2
|
+
import type { ContentItem } from '../../types/content.js';
|
|
3
|
+
export type ContentComponentProps = Record<string, Record<string, unknown>>;
|
|
4
|
+
export interface RenderContentOptions {
|
|
5
|
+
/** Loader data keyed by tag. Attribute-specific resolvers support repeated components. */
|
|
6
|
+
components?: Record<string, Record<string, unknown> | ((attrs: Record<string, unknown>) => Record<string, unknown>)>;
|
|
7
|
+
}
|
|
8
|
+
/** Parse trusted generated Markdown HTML into VNodes so registered components receive SSR. */
|
|
9
|
+
export declare function renderContent(doc: Pick<ContentItem, 'body'> | null, options?: RenderContentOptions): VNode | VNode[];
|
|
10
|
+
//# sourceMappingURL=render-content.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"render-content.d.ts","sourceRoot":"","sources":["../../../src/runtime/composables/render-content.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,KAAK,EAAE,MAAM,sCAAsC,CAAA;AACvE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AAEzD,MAAM,MAAM,qBAAqB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;AAC3E,MAAM,WAAW,oBAAoB;IACnC,0FAA0F;IAC1F,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAA;CACrH;AAED,8FAA8F;AAC9F,wBAAgB,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,GAAG,IAAI,EAAE,OAAO,GAAE,oBAAyB,GAAG,KAAK,GAAG,KAAK,EAAE,CAcxH"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { html } from '@jasonshimmy/custom-elements-runtime';
|
|
2
|
+
/** Parse trusted generated Markdown HTML into VNodes so registered components receive SSR. */
|
|
3
|
+
export function renderContent(doc, options = {}) {
|
|
4
|
+
if (!doc)
|
|
5
|
+
return [];
|
|
6
|
+
const strings = Object.assign([doc.body], { raw: [doc.body] });
|
|
7
|
+
const nodes = html(strings);
|
|
8
|
+
function visit(node) {
|
|
9
|
+
const resolver = options.components?.[node.tag];
|
|
10
|
+
if (resolver) {
|
|
11
|
+
const props = typeof resolver === 'function' ? resolver(node.props?.attrs ?? {}) : resolver;
|
|
12
|
+
node.props = { ...node.props, props: { ...node.props?.props, ...props } };
|
|
13
|
+
}
|
|
14
|
+
if (Array.isArray(node.children))
|
|
15
|
+
node.children.forEach(visit);
|
|
16
|
+
}
|
|
17
|
+
;
|
|
18
|
+
(Array.isArray(nodes) ? nodes : [nodes]).forEach(visit);
|
|
19
|
+
return nodes;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=render-content.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"render-content.js","sourceRoot":"","sources":["../../../src/runtime/composables/render-content.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAc,MAAM,sCAAsC,CAAA;AASvE,8FAA8F;AAC9F,MAAM,UAAU,aAAa,CAAC,GAAqC,EAAE,OAAO,GAAyB,EAAE;IACrG,IAAI,CAAC,GAAG;QAAE,OAAO,EAAE,CAAA;IACnB,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAoC,CAAA;IACjG,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,CAAA;IAC3B,SAAS,KAAK,CAAC,IAAW;QACxB,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAC/C,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,KAAK,GAAG,OAAO,QAAQ,KAAK,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAA;YAC3F,IAAI,CAAC,KAAK,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,EAAE,CAAA;QAC3E,CAAC;QACD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC;YAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IAChE,CAAC;IACD,CAAC;IAAA,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IACxD,OAAO,KAAK,CAAA;AACd,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-auth.d.ts","sourceRoot":"","sources":["../../../src/runtime/composables/use-auth.ts"],"names":[],"mappings":"AAIA;;;;GAIG;AACH,MAAM,WAAW,QAAQ;IACvB,QAAQ,EAAE,MAAM,CAAA;IAChB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACvB;AAED,0FAA0F;AAC1F,MAAM,WAAW,cAAc;IAC7B,oEAAoE;IACpE,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI,CAAA;IAC9B,2CAA2C;IAC3C,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;IAC1B;;;OAGG;IACH,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B;;;;;;;OAOG;IACH,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;CACxB;AAID;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,wBAAgB,OAAO,CAAC,UAAU,SAAS,GAAG,cAAc,
|
|
1
|
+
{"version":3,"file":"use-auth.d.ts","sourceRoot":"","sources":["../../../src/runtime/composables/use-auth.ts"],"names":[],"mappings":"AAIA;;;;GAIG;AACH,MAAM,WAAW,QAAQ;IACvB,QAAQ,EAAE,MAAM,CAAA;IAChB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACvB;AAED,0FAA0F;AAC1F,MAAM,WAAW,cAAc;IAC7B,oEAAoE;IACpE,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI,CAAA;IAC9B,2CAA2C;IAC3C,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;IAC1B;;;OAGG;IACH,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B;;;;;;;OAOG;IACH,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;CACxB;AAID;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,wBAAgB,OAAO,CAAC,UAAU,SAAS,GAAG,cAAc,CAqD3D"}
|
|
@@ -42,8 +42,12 @@ export function useAuth(sessionKey = 'auth') {
|
|
|
42
42
|
// __CER_AUTH_STORE__ is only present in Node.js (tree-shaken on client).
|
|
43
43
|
const authStore = g['__CER_AUTH_STORE__'];
|
|
44
44
|
let user = null;
|
|
45
|
+
let context;
|
|
45
46
|
if (authStore) {
|
|
46
|
-
|
|
47
|
+
const value = authStore.getStore();
|
|
48
|
+
if (value && 'currentUser' in value && !('provider' in value))
|
|
49
|
+
context = value;
|
|
50
|
+
user = context ? context.currentUser : value ?? null;
|
|
47
51
|
}
|
|
48
52
|
else {
|
|
49
53
|
// Client: read from the global hydrated by the client entry.
|
|
@@ -51,10 +55,10 @@ export function useAuth(sessionKey = 'auth') {
|
|
|
51
55
|
}
|
|
52
56
|
return {
|
|
53
57
|
get user() {
|
|
54
|
-
return user;
|
|
58
|
+
return context ? context.currentUser : user;
|
|
55
59
|
},
|
|
56
60
|
get loggedIn() {
|
|
57
|
-
return user !== null;
|
|
61
|
+
return (context ? context.currentUser : user) !== null;
|
|
58
62
|
},
|
|
59
63
|
login(provider) {
|
|
60
64
|
if (typeof window !== 'undefined') {
|
|
@@ -73,9 +77,13 @@ export function useAuth(sessionKey = 'auth') {
|
|
|
73
77
|
// Also clear the local user reference so the current render sees null.
|
|
74
78
|
user = null;
|
|
75
79
|
// Clear the ALS store value so concurrent requests are unaffected.
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
80
|
+
if (context)
|
|
81
|
+
context.currentUser = null;
|
|
82
|
+
else {
|
|
83
|
+
// Compatibility with custom/older Node bundles that store the user directly.
|
|
84
|
+
const store = g['__CER_AUTH_STORE__'];
|
|
85
|
+
store?.enterWith?.(null);
|
|
86
|
+
}
|
|
79
87
|
}
|
|
80
88
|
},
|
|
81
89
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-auth.js","sourceRoot":"","sources":["../../../src/runtime/composables/use-auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAwC7C,iFAAiF;AAEjF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,MAAM,UAAU,OAAO,CAAC,UAAU,GAAG,MAAM;IACzC,MAAM,CAAC,GAAG,UAAqC,CAAA;IAE/C,+DAA+D;IAC/D,yEAAyE;IACzE,MAAM,SAAS,GAAG,CAAC,CAAC,oBAAoB,CAAwC,CAAA;IAChF,IAAI,IAAI,GAAoB,IAAI,CAAA;
|
|
1
|
+
{"version":3,"file":"use-auth.js","sourceRoot":"","sources":["../../../src/runtime/composables/use-auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAwC7C,iFAAiF;AAEjF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,MAAM,UAAU,OAAO,CAAC,UAAU,GAAG,MAAM;IACzC,MAAM,CAAC,GAAG,UAAqC,CAAA;IAE/C,+DAA+D;IAC/D,yEAAyE;IACzE,MAAM,SAAS,GAAG,CAAC,CAAC,oBAAoB,CAAwC,CAAA;IAChF,IAAI,IAAI,GAAoB,IAAI,CAAA;IAChC,IAAI,OAAqD,CAAA;IAEzD,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,KAAK,GAAG,SAAS,CAAC,QAAQ,EAAwD,CAAA;QACxF,IAAI,KAAK,IAAI,aAAa,IAAI,KAAK,IAAI,CAAC,CAAC,UAAU,IAAI,KAAK,CAAC;YAAE,OAAO,GAAG,KAAyC,CAAA;QAClH,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,KAAwB,IAAI,IAAI,CAAA;IACzE,CAAC;SAAM,CAAC;QACN,6DAA6D;QAC7D,IAAI,GAAI,CAAC,CAAC,mBAAmB,CAAqB,IAAI,IAAI,CAAA;IAC5D,CAAC;IAED,OAAO;QACL,IAAI,IAAI;YACN,OAAO,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAA;QAC7C,CAAC;QAED,IAAI,QAAQ;YACV,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,CAAA;QACxD,CAAC;QAED,KAAK,CAAC,QAAgB;YACpB,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;gBAClC,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,aAAa,QAAQ,EAAE,CAAA;YAChD,CAAC;QACH,CAAC;QAED,KAAK,CAAC,MAAM;YACV,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;gBAClC,gEAAgE;gBAChE,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,kBAAkB,CAAA;YAC3C,CAAC;iBAAM,CAAC;gBACN,qDAAqD;gBACrD,MAAM,OAAO,GAAG,UAAU,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAA;gBAChD,MAAM,OAAO,CAAC,KAAK,EAAE,CAAA;gBACrB,uEAAuE;gBACvE,IAAI,GAAG,IAAI,CAAA;gBACX,mEAAmE;gBACnE,IAAI,OAAO;oBAAE,OAAO,CAAC,WAAW,GAAG,IAAI,CAAA;qBAClC,CAAC;oBACJ,6EAA6E;oBAC7E,MAAM,KAAK,GAAG,CAAC,CAAC,oBAAoB,CAAqD,CAAA;oBACzF,KAAK,EAAE,SAAS,EAAE,CAAC,IAAI,CAAC,CAAA;gBAC1B,CAAC;YACH,CAAC;QACH,CAAC;KACF,CAAA;AACH,CAAC"}
|
|
@@ -32,6 +32,8 @@ export interface ContentSeoOptions {
|
|
|
32
32
|
breadcrumbs?: ContentBreadcrumb[];
|
|
33
33
|
/** Path depth at which Open Graph pages become articles. Defaults to 2. */
|
|
34
34
|
articleDepth?: number;
|
|
35
|
+
/** Indexable document policy; missing documents always remain noindex. */
|
|
36
|
+
robots?: string;
|
|
35
37
|
notFoundTitle?: string;
|
|
36
38
|
}
|
|
37
39
|
/** Normalize a route/catch-all value into the content layer's absolute path form. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-content-page.d.ts","sourceRoot":"","sources":["../../../src/runtime/composables/use-content-page.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAe,MAAM,wBAAwB,CAAA;AACtF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAK5D,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,WAAW,GAAG,IAAI,CAAA;IACvB,aAAa,EAAE,MAAM,EAAE,CAAA;CACxB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,OAAO,CAAA;IACf,OAAO,EAAE,OAAO,CAAA;CACjB;AAED,MAAM,WAAW,wBAAwB;IACvC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,kFAAkF;IAClF,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IACzC,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,CAAA;CAC1C;AAED,MAAM,WAAW,wBAAwB;IACvC,yDAAyD;IACzD,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,WAAW,GAAG,IAAI,CAAA;IACvB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,WAAW,CAAC,EAAE,iBAAiB,EAAE,CAAA;IACjC,2EAA2E;IAC3E,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAED,qFAAqF;AACrF,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,MAAM,CAG7E;AAaD,8EAA8E;AAC9E,wBAAgB,uBAAuB,CAAC,OAAO,GAAE,wBAA6B,gBAElD,iBAAiB,KAAG,OAAO,CAAC,eAAe,CAAC,CAavE;AAYD,qFAAqF;AACrF,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,WAAW,GAAG,IAAI,EACvB,aAAa,GAAE,SAAS,MAAM,EAAU,EACxC,OAAO,GAAE,wBAA6B,GACrC,iBAAiB,EAAE,CAqCrB;AAED,wEAAwE;AACxE,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,GAAG,IAAI,GAAG,SAAS,EAChD,MAAM,GAAE,SAAS,cAAc,CAAC,OAAO,CAAC,EAAW,GAClD,cAAc,EAAE,CAGlB;AA2BD,uFAAuF;AACvF,wBAAgB,aAAa,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAsE9D"}
|
|
1
|
+
{"version":3,"file":"use-content-page.d.ts","sourceRoot":"","sources":["../../../src/runtime/composables/use-content-page.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAe,MAAM,wBAAwB,CAAA;AACtF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAK5D,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,WAAW,GAAG,IAAI,CAAA;IACvB,aAAa,EAAE,MAAM,EAAE,CAAA;CACxB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,OAAO,CAAA;IACf,OAAO,EAAE,OAAO,CAAA;CACjB;AAED,MAAM,WAAW,wBAAwB;IACvC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,kFAAkF;IAClF,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IACzC,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,CAAA;CAC1C;AAED,MAAM,WAAW,wBAAwB;IACvC,yDAAyD;IACzD,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,WAAW,GAAG,IAAI,CAAA;IACvB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,WAAW,CAAC,EAAE,iBAAiB,EAAE,CAAA;IACjC,2EAA2E;IAC3E,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,0EAA0E;IAC1E,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAED,qFAAqF;AACrF,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,MAAM,CAG7E;AAaD,8EAA8E;AAC9E,wBAAgB,uBAAuB,CAAC,OAAO,GAAE,wBAA6B,gBAElD,iBAAiB,KAAG,OAAO,CAAC,eAAe,CAAC,CAavE;AAYD,qFAAqF;AACrF,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,WAAW,GAAG,IAAI,EACvB,aAAa,GAAE,SAAS,MAAM,EAAU,EACxC,OAAO,GAAE,wBAA6B,GACrC,iBAAiB,EAAE,CAqCrB;AAED,wEAAwE;AACxE,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,GAAG,IAAI,GAAG,SAAS,EAChD,MAAM,GAAE,SAAS,cAAc,CAAC,OAAO,CAAC,EAAW,GAClD,cAAc,EAAE,CAGlB;AA2BD,uFAAuF;AACvF,wBAAgB,aAAa,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAsE9D"}
|
|
@@ -150,7 +150,7 @@ export function useContentSeo(options) {
|
|
|
150
150
|
// explicit indexable value lets the head deduper and live DOM update replace
|
|
151
151
|
// a stale noindex rather than leaving a valid page blocked from crawlers.
|
|
152
152
|
useHead({
|
|
153
|
-
meta: [{ name: 'robots', content: options.doc ? 'index, follow' : 'noindex' }],
|
|
153
|
+
meta: [{ name: 'robots', content: options.doc ? options.robots ?? 'index, follow' : 'noindex' }],
|
|
154
154
|
});
|
|
155
155
|
if (!options.doc)
|
|
156
156
|
return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-content-page.js","sourceRoot":"","sources":["../../../src/runtime/composables/use-content-page.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"use-content-page.js","sourceRoot":"","sources":["../../../src/runtime/composables/use-content-page.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,9 +7,8 @@ export declare function contentSearchIndexUrl(): string;
|
|
|
7
7
|
* Resolution strategy:
|
|
8
8
|
* - **Server (dev + SSG build-time)**: reads from `globalThis.__CER_CONTENT_STORE__`
|
|
9
9
|
* populated by the `cerContent()` Vite plugin's `buildStart` hook.
|
|
10
|
-
* - **Server (production SSR runtime)**:
|
|
11
|
-
*
|
|
12
|
-
* `dist/_content/`.
|
|
10
|
+
* - **Server (production SSR runtime)**: uses the build-embedded snapshot.
|
|
11
|
+
* Older/custom bundles can fall back to packaged content JSON files.
|
|
13
12
|
* - **Client (SPA / browser navigation)**: lazy-fetches `/_content/manifest.json`
|
|
14
13
|
* once (cached) for listing; fetches `/_content/[path].json` per `.first()`.
|
|
15
14
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/runtime/content/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AA0BtE,+EAA+E;AAC/E,wBAAgB,qBAAqB,IAAI,MAAM,CAE9C;AAyBD
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/runtime/content/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AA0BtE,+EAA+E;AAC/E,wBAAgB,qBAAqB,IAAI,MAAM,CAE9C;AAyBD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,aAAa;IAClB,WAAW,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IAiDrC,OAAO,OAAO,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;CAmDzD,CAAA"}
|
|
@@ -37,8 +37,8 @@ function fetchManifest() {
|
|
|
37
37
|
return _manifestPromise;
|
|
38
38
|
}
|
|
39
39
|
// ─── Server-side production caches ───────────────────────────────────────────
|
|
40
|
-
//
|
|
41
|
-
//
|
|
40
|
+
// Older/custom SSR bundles may omit the embedded __CER_CONTENT_STORE__ snapshot.
|
|
41
|
+
// Cache fallback filesystem reads here to avoid repeated
|
|
42
42
|
// disk I/O on every request — critical at 10k+ pages where manifest.json is ~2MB.
|
|
43
43
|
let _ssrManifest = null;
|
|
44
44
|
const _ssrItemCache = new Map();
|
|
@@ -49,9 +49,8 @@ const _ssrItemCache = new Map();
|
|
|
49
49
|
* Resolution strategy:
|
|
50
50
|
* - **Server (dev + SSG build-time)**: reads from `globalThis.__CER_CONTENT_STORE__`
|
|
51
51
|
* populated by the `cerContent()` Vite plugin's `buildStart` hook.
|
|
52
|
-
* - **Server (production SSR runtime)**:
|
|
53
|
-
*
|
|
54
|
-
* `dist/_content/`.
|
|
52
|
+
* - **Server (production SSR runtime)**: uses the build-embedded snapshot.
|
|
53
|
+
* Older/custom bundles can fall back to packaged content JSON files.
|
|
55
54
|
* - **Client (SPA / browser navigation)**: lazy-fetches `/_content/manifest.json`
|
|
56
55
|
* once (cached) for listing; fetches `/_content/[path].json` per `.first()`.
|
|
57
56
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/runtime/content/client.ts"],"names":[],"mappings":"AAEA,kFAAkF;AAElF,kFAAkF;AAClF,IAAI,KAAK,GAAW,EAAE,CAAA;AAEtB,IAAI,CAAC;IACH,+EAA+E;IAC/E,sEAAsE;IACtE,MAAM,CAAC,GAAG,UAAqC,CAAA;IAC/C,MAAM,SAAS,GAAG,CAAC,CAAC,oBAAoB,CAA+C,CAAA;IACvF,KAAK,GAAG,SAAS,EAAE,MAAM,EAAE,IAAI,IAAI,EAAE,CAAA;IACrC,iEAAiE;IACjE,IAAI,KAAK,KAAK,GAAG;QAAE,KAAK,GAAG,EAAE,CAAA;AAC/B,CAAC;AAAC,MAAM,CAAC;IACP,KAAK,GAAG,EAAE,CAAA;AACZ,CAAC;AAED,iFAAiF;AAEjF,SAAS,qBAAqB,CAAC,IAAY;IACzC,IAAI,IAAI,KAAK,GAAG;QAAE,OAAO,YAAY,CAAA;IACrC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,OAAO,CAAA;AAChC,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,qBAAqB;IACnC,OAAO,GAAG,KAAK,6BAA6B,CAAA;AAC9C,CAAC;AAED,iFAAiF;AAEjF,IAAI,gBAAgB,GAAkC,IAAI,CAAA;AAE1D,SAAS,aAAa;IACpB,IAAI,gBAAgB;QAAE,OAAO,gBAAgB,CAAA;IAC7C,gBAAgB,GAAG,KAAK,CAAC,GAAG,KAAK,yBAAyB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;QACrE,IAAI,CAAC,CAAC,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAA;QAC3E,OAAO,CAAC,CAAC,IAAI,EAA4B,CAAA;IAC3C,CAAC,CAAC,CAAA;IACF,OAAO,gBAAgB,CAAA;AACzB,CAAC;AAED,gFAAgF;AAChF,
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/runtime/content/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entry-server-template.d.ts","sourceRoot":"","sources":["../../src/runtime/entry-server-template.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAS/D;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAoBzD;AAED;;;;;GAKG;AACH,wBAAgB,8BAA8B,CAC5C,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,MAAM,EAAO,GACrB,MAAM,CAoBR;AAaD,eAAO,MAAM,qBAAqB,
|
|
1
|
+
{"version":3,"file":"entry-server-template.d.ts","sourceRoot":"","sources":["../../src/runtime/entry-server-template.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAS/D;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAoBzD;AAED;;;;;GAKG;AACH,wBAAgB,8BAA8B,CAC5C,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,MAAM,EAAO,GACrB,MAAM,CAoBR;AAaD,eAAO,MAAM,qBAAqB,QA8hBjC,CAAA"}
|
|
@@ -72,7 +72,7 @@ export function deferEntryModulesForFirstPaint(html, dsdTags = []) {
|
|
|
72
72
|
const serializedSrc = serializeForInlineScript(src);
|
|
73
73
|
const serializedDsdTags = serializeForInlineScript(dsdTags);
|
|
74
74
|
const start = `function(){if(typeof performance==='object'&&typeof performance.mark==='function')performance.mark('cer:entry-start');globalThis.__CER_STATIC_ENTRY__=true;globalThis.__CER_DSD_TAGS__=new Set(${serializedDsdTags});return import(${serializedSrc}).catch(function(error){console.error('[cer-app] Failed to start client entry:',error)})}`;
|
|
75
|
-
return `<link rel="modulepreload" crossorigin href="${escapedHref}"><script data-cer-deferred-entry>(function(start){var observer=null,fallback=null,started=false,guarding=true,queued=[];function capture(event){if(!guarding||event.defaultPrevented)return;var path=typeof event.composedPath==='function'?event.composedPath():[];if(
|
|
75
|
+
return `<link rel="modulepreload" crossorigin href="${escapedHref}"><script data-cer-deferred-entry>(function(start){var observer=null,fallback=null,started=false,guarding=true,queued=[];function capture(event){if(!guarding||event.defaultPrevented)return;if(event.type==='keydown'&&!((event.ctrlKey||event.metaKey)&&String(event.key).toLowerCase()==='k'))return;var path=typeof event.composedPath==='function'?event.composedPath():[];if(event.type!=='keydown'&&!path.some(function(node){return node&&typeof node.localName==='string'&&node.localName.indexOf('-')>0}))return;event.preventDefault();event.stopImmediatePropagation();queued.push({target:path[0]||event.target,event:event})}function replay(){guarding=false;document.removeEventListener('click',capture,true);document.removeEventListener('keydown',capture,true);queued.splice(0).forEach(function(item){var event=item.event,target=item.target,init={bubbles:true,composed:true,cancelable:true},clone;if(typeof KeyboardEvent==='function'&&event instanceof KeyboardEvent){clone=new KeyboardEvent(event.type,Object.assign(init,{key:event.key,code:event.code,ctrlKey:event.ctrlKey,metaKey:event.metaKey,shiftKey:event.shiftKey,altKey:event.altKey,repeat:event.repeat}))}else{clone=new MouseEvent(event.type,Object.assign(init,{button:event.button,buttons:event.buttons,clientX:event.clientX,clientY:event.clientY,ctrlKey:event.ctrlKey,metaKey:event.metaKey,shiftKey:event.shiftKey,altKey:event.altKey}))}if(target&&target.isConnected)target.dispatchEvent(clone)})}function ready(){var view=document.querySelector('cer-layout-view'),shell=view&&Array.prototype.find.call(view.children,function(element){return element.localName&&element.localName!=='script'});if(!shell||shell.hasAttribute('data-cer-hydrated')){replay();return}if(typeof MutationObserver!=='function'){setTimeout(replay,0);return}var readiness=new MutationObserver(function(){if(shell.hasAttribute('data-cer-hydrated')){readiness.disconnect();replay()}});readiness.observe(shell,{attributes:true,attributeFilter:['data-cer-hydrated']});setTimeout(function(){readiness.disconnect();replay()},1000)}function boot(){Promise.resolve(start()).then(ready,replay)}function run(){if(started)return;started=true;if(observer)observer.disconnect();if(fallback!==null)clearTimeout(fallback);setTimeout(boot,0)}function byFrame(){if(typeof requestAnimationFrame==='function'){requestAnimationFrame(function(){requestAnimationFrame(function(){requestAnimationFrame(run)})})}else{run()}}document.addEventListener('click',capture,true);document.addEventListener('keydown',capture,true);if(typeof PerformanceObserver==='function'){try{observer=new PerformanceObserver(function(list){if(list.getEntriesByName('first-contentful-paint').length)run()});fallback=setTimeout(run,1000);observer.observe({type:'paint',buffered:true})}catch(error){byFrame()}}else{byFrame()}})(${start})</script>`;
|
|
76
76
|
});
|
|
77
77
|
}
|
|
78
78
|
const inlineSerializerSource = serializeForInlineScript
|
|
@@ -105,6 +105,7 @@ import { initRouter } from '@jasonshimmy/custom-elements-runtime/router'
|
|
|
105
105
|
import { beginHeadCollection, endHeadCollection, serializeHeadTags, initRuntimeConfig, resolvePrivateConfig, useSession } from '@jasonshimmy/vite-plugin-cer-app/composables'
|
|
106
106
|
import { errorTag } from 'virtual:cer-error'
|
|
107
107
|
import { createIsrHandler } from '@jasonshimmy/vite-plugin-cer-app/isr'
|
|
108
|
+
import { createRequestDispatcher } from '@jasonshimmy/vite-plugin-cer-app/server'
|
|
108
109
|
|
|
109
110
|
${inlineSerializerSource}
|
|
110
111
|
${dsdTagCollectorSource}
|
|
@@ -210,10 +211,17 @@ export async function runServerMiddleware(req, res) {
|
|
|
210
211
|
let calledNext = false
|
|
211
212
|
try {
|
|
212
213
|
await new Promise((resolve, reject) => {
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
214
|
+
const finish = () => { cleanup(); resolve() }
|
|
215
|
+
const fail = (err) => { cleanup(); reject(err) }
|
|
216
|
+
const cleanup = () => { res.off?.('finish', finish); res.off?.('close', finish) }
|
|
217
|
+
res.once?.('finish', finish)
|
|
218
|
+
res.once?.('close', finish)
|
|
219
|
+
try {
|
|
220
|
+
Promise.resolve(mw(req, res, (err) => {
|
|
221
|
+
if (err) fail(err)
|
|
222
|
+
else { calledNext = true; finish() }
|
|
223
|
+
})).then(() => { if (res.writableEnded) finish() }, fail)
|
|
224
|
+
} catch (err) { fail(err) }
|
|
217
225
|
})
|
|
218
226
|
} catch (err) {
|
|
219
227
|
if (_hooks?.onError) {
|
|
@@ -327,7 +335,7 @@ const _prepareRequest = async (req) => {
|
|
|
327
335
|
|
|
328
336
|
// Store the current route info so useRoute() can read it synchronously
|
|
329
337
|
// from any layout or component during this render pass.
|
|
330
|
-
_cerRouteStore.
|
|
338
|
+
Object.assign(_cerRouteStore.getStore(), {
|
|
331
339
|
path: current.path,
|
|
332
340
|
params,
|
|
333
341
|
query: current.query ?? {},
|
|
@@ -444,6 +452,7 @@ export const handler = async (req, res) => {
|
|
|
444
452
|
if (_hooks?.onRequest) {
|
|
445
453
|
try { await _hooks.onRequest({ path: _requestPath, method: req.method ?? 'GET', req }) } catch { /* hooks must not crash the handler */ }
|
|
446
454
|
}
|
|
455
|
+
await _cerRouteStore.run({ path: _requestPath, params: {}, query: {}, meta: null }, async () => {
|
|
447
456
|
await _cerStateStore.run(new Map(), async () => {
|
|
448
457
|
await _cerReqStore.run({ req, res }, async () => {
|
|
449
458
|
await _cerDataStore.run(null, async () => {
|
|
@@ -455,11 +464,25 @@ export const handler = async (req, res) => {
|
|
|
455
464
|
if (_authSessionKey) {
|
|
456
465
|
try { _authUser = await useSession({ name: _authSessionKey }).get() } catch { /* no session secret */ }
|
|
457
466
|
}
|
|
458
|
-
await _cerAuthStore.run(_authUser, async () => {
|
|
467
|
+
await _cerAuthStore.run({ currentUser: _authUser }, async () => {
|
|
459
468
|
const { vnode, router, head, status, loaderData, hydrationStrategy = 'load' } = await _prepareRequest(req)
|
|
469
|
+
if (res.destroyed) return
|
|
460
470
|
if (status != null) res.statusCode = status
|
|
461
471
|
|
|
462
472
|
let _headCollectionOpen = false
|
|
473
|
+
let reader
|
|
474
|
+
const stopStream = () => { if (reader) void reader.cancel().catch(() => {}) }
|
|
475
|
+
res.once?.('close', stopStream)
|
|
476
|
+
const writeChunk = async (chunk) => {
|
|
477
|
+
if (res.destroyed) return
|
|
478
|
+
if (res.write(chunk) === false && typeof res.once === 'function') {
|
|
479
|
+
await new Promise((resolve) => {
|
|
480
|
+
const done = () => { res.off?.('drain', done); res.off?.('close', done); resolve() }
|
|
481
|
+
res.once('drain', done); res.once('close', done)
|
|
482
|
+
if (res.destroyed) done()
|
|
483
|
+
})
|
|
484
|
+
}
|
|
485
|
+
}
|
|
463
486
|
// Wrap the entire render pass in _cerDataStore.run(loaderData) so that
|
|
464
487
|
// usePageData() inside component renderFn calls sees the correct store
|
|
465
488
|
// value. AsyncLocalStorage.enterWith() inside _prepareRequest does NOT
|
|
@@ -493,7 +516,7 @@ export const handler = async (req, res) => {
|
|
|
493
516
|
const headTags = serializeHeadTags(endHeadCollection())
|
|
494
517
|
_headCollectionOpen = false
|
|
495
518
|
|
|
496
|
-
|
|
519
|
+
reader = stream.getReader()
|
|
497
520
|
|
|
498
521
|
// Read the first (synchronous) chunk — rejects if the sync render failed.
|
|
499
522
|
const { value: firstChunk = '' } = await reader.read()
|
|
@@ -549,22 +572,22 @@ export const handler = async (req, res) => {
|
|
|
549
572
|
const fromBodyClose = bodyCloseIdx >= 0 ? merged.slice(bodyCloseIdx) : ''
|
|
550
573
|
|
|
551
574
|
res.setHeader('Content-Type', 'text/html; charset=utf-8')
|
|
552
|
-
|
|
553
|
-
res.write(beforeBodyClose)
|
|
575
|
+
await writeChunk(beforeBodyClose)
|
|
554
576
|
|
|
555
577
|
// Stream async component swap scripts through as-is.
|
|
556
578
|
while (true) {
|
|
557
579
|
const { value, done } = await reader.read()
|
|
558
580
|
if (done) break
|
|
559
|
-
|
|
581
|
+
await writeChunk(value)
|
|
560
582
|
}
|
|
561
583
|
|
|
562
584
|
// Inject DSD polyfill immediately before </body>, then close the document.
|
|
563
|
-
res.end(DSD_POLYFILL_SCRIPT + fromBodyClose)
|
|
585
|
+
if (!res.destroyed) res.end(DSD_POLYFILL_SCRIPT + fromBodyClose)
|
|
564
586
|
if (_hooks?.onResponse) {
|
|
565
|
-
try { void _hooks.onResponse({ path: _requestPath, method: req.method ?? 'GET', statusCode: res.statusCode, duration: Date.now() - _requestStart, req }) } catch { /* ignore */ }
|
|
587
|
+
try { void Promise.resolve(_hooks.onResponse({ path: _requestPath, method: req.method ?? 'GET', statusCode: res.statusCode, duration: Date.now() - _requestStart, req })).catch(() => {}) } catch { /* ignore */ }
|
|
566
588
|
}
|
|
567
589
|
} catch (_renderErr) {
|
|
590
|
+
if (res.destroyed) return
|
|
568
591
|
if (_hooks?.onError) {
|
|
569
592
|
try { await _hooks.onError(_renderErr, { type: 'render', path: _requestPath, req }) } catch { /* hooks must not crash the handler */ }
|
|
570
593
|
}
|
|
@@ -580,8 +603,11 @@ export const handler = async (req, res) => {
|
|
|
580
603
|
res.end()
|
|
581
604
|
}
|
|
582
605
|
if (_hooks?.onResponse) {
|
|
583
|
-
try { void _hooks.onResponse({ path: _requestPath, method: req.method ?? 'GET', statusCode: res.statusCode, duration: Date.now() - _requestStart, req }) } catch { /* ignore */ }
|
|
606
|
+
try { void Promise.resolve(_hooks.onResponse({ path: _requestPath, method: req.method ?? 'GET', statusCode: res.statusCode, duration: Date.now() - _requestStart, req })).catch(() => {}) } catch { /* ignore */ }
|
|
584
607
|
}
|
|
608
|
+
} finally {
|
|
609
|
+
res.off?.('close', stopStream)
|
|
610
|
+
if (reader) { try { await reader.cancel() } catch { /* already closed */ } }
|
|
585
611
|
}
|
|
586
612
|
}) // _cerDataStore.run(loaderData)
|
|
587
613
|
}) // _cerAuthStore.run
|
|
@@ -589,11 +615,15 @@ export const handler = async (req, res) => {
|
|
|
589
615
|
}) // _cerDataStore.run
|
|
590
616
|
}) // _cerReqStore.run
|
|
591
617
|
}) // _cerStateStore.run
|
|
618
|
+
}) // _cerRouteStore.run
|
|
592
619
|
}
|
|
593
620
|
|
|
594
|
-
// ISR-wrapped handler for
|
|
621
|
+
// ISR-wrapped handler for Node integrations; Web frameworks require a bridge.
|
|
595
622
|
// Routes with meta.ssg.revalidate are served stale-while-revalidate.
|
|
596
623
|
export const isrHandler = createIsrHandler(routes, handler)
|
|
624
|
+
export const spaHandler = (req, res) => { res.setHeader('Content-Type', 'text/html; charset=utf-8'); res.end(req.method === 'HEAD' ? undefined : ((globalThis).__CER_CLIENT_TEMPLATE__ ?? _clientTemplate ?? '')) }
|
|
625
|
+
export const createDispatchRequest = (options = {}) => createRequestDispatcher({ handler, spaHandler, routes, apiRoutes, runServerMiddleware, runWithRequestContext }, options)
|
|
626
|
+
export const dispatchRequest = createDispatchRequest()
|
|
597
627
|
|
|
598
628
|
export { apiRoutes, plugins, layouts, routes, serverMiddleware }
|
|
599
629
|
export default handler
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entry-server-template.js","sourceRoot":"","sources":["../../src/runtime/entry-server-template.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"entry-server-template.js","sourceRoot":"","sources":["../../src/runtime/entry-server-template.ts"],"names":[],"mappings":"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"}
|