zova-module-a-ssr 5.1.26 → 5.1.30

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/dist/index.js CHANGED
@@ -270,11 +270,12 @@ var CtxSSRMetaStore = class extends BeanSimple {
270
270
  return _data;
271
271
  },
272
272
  });`;
273
- const ssr_local_themename = this.sys.config.ssr.cookie ? "" : "window.ssr_local_themename=window.ssr_load_local('themename');";
273
+ const ssr_local_themename = this.sys.config.ssr.cookie ? "" : `window.ssr_local_themename=window.ssr_load_local('themename','${this.sys.env.STYLE_DEFAULT_THEME}');`;
274
274
  ctx.endingHeadTags += `<script id="ssr-prefers-color-schema-dark">
275
- window.ssr_load_local=function(key){
275
+ window.ssr_load_local=function(key,defaultValue){
276
276
  const __ssr_local=localStorage.getItem(key);
277
- return __ssr_local?JSON.parse(__ssr_local):undefined;
277
+ const value=__ssr_local?JSON.parse(__ssr_local):undefined;
278
+ return value??defaultValue;
278
279
  };
279
280
  ${ssr_local_themedark}
280
281
  ${ssr_local_themename}
@@ -571,7 +572,9 @@ var CtxSSR = class extends BeanSimple {
571
572
  "id",
572
573
  "name",
573
574
  "for",
574
- "d"
575
+ "d",
576
+ "aria-labelledby",
577
+ "aria-controls"
575
578
  ].includes(key)) {
576
579
  ignore = true;
577
580
  if (clientValue !== void 0) {
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../src/bean/sys.ssrState.ts","../src/config/config.ts","../src/lib/useMeta.ts","../src/monkey.ts","../src/lib/utils.ts","../src/lib/ssrMetaStore.ts","../src/lib/ssr.ts","../src/monkeySys.ts","../src/.metadata/index.ts"],"sourcesContent":["var _dec, _dec2, _class;\nimport { \"BeanInfo\" as __z_BeanInfo } from \"zova\";\nimport { BeanBase, cast } from 'zova';\nimport { Sys } from 'zova-module-a-bean';\nconst SymbolSSRState = Symbol('SymbolSSRState');\nconst SymbolSSRStateDefer = Symbol('SymbolSSRStateDefer');\nexport let SysSsrState = (_dec = Sys(), _dec2 = __z_BeanInfo({\n module: \"a-ssr\"\n}), _dec(_class = _dec2(_class = class SysSsrState extends BeanBase {\n constructor(...args) {\n super(...args);\n this[SymbolSSRState] = void 0;\n this[SymbolSSRStateDefer] = void 0;\n }\n async __init__() {\n if (process.env.CLIENT) {\n if (cast(window).__INITIAL_STATE__) {\n this[SymbolSSRState] = cast(window).__INITIAL_STATE__;\n delete cast(window).__INITIAL_STATE__;\n document.getElementById('ssr-state-init')?.remove();\n } else {\n this[SymbolSSRState] = {};\n }\n if (cast(window).__INITIAL_STATE_DEFER__) {\n this[SymbolSSRStateDefer] = cast(window).__INITIAL_STATE_DEFER__;\n delete cast(window).__INITIAL_STATE_DEFER__;\n document.getElementById('ssr-state-defer-init')?.remove();\n } else {\n this[SymbolSSRStateDefer] = {};\n }\n }\n }\n get state() {\n return this[SymbolSSRState];\n }\n get stateDefer() {\n return this[SymbolSSRStateDefer];\n }\n}) || _class) || _class);","export const config = sys => {\n const ssrConfig = {\n cookieThemeDarkDefault: sys.env.SSR_COOKIE_THEMEDARK_DEFAULT === 'true',\n optimization: {\n bodyReadyObserver: sys.env.SSR_BODYREADYOBSERVER === 'true'\n },\n transferCache: sys.env.SSR_TRANSFERCACHE === 'false' ? false : {\n expires: _normalizeExpires(sys.env.SSR_TRANSFERCACHE_EXPIRES)\n }\n };\n return ssrConfig;\n};\nfunction _normalizeExpires(expires) {\n if (!expires) return 0;\n if (!Number.isNaN(Number(expires))) return Number(expires);\n return expires;\n}","// from: quasar/ui/src/composables/use-meta.js\nimport { computed, onActivated, onDeactivated, onUnmounted, watch } from 'vue';\nexport function useMeta(ctx, metaOptions) {\n if (process.env.SERVER) {\n ctx.meta.$ssr.context.__qMetaList.push(typeof metaOptions === 'function' ? metaOptions() : metaOptions);\n } else {\n const meta = {\n active: true\n };\n if (typeof metaOptions === 'function') {\n const content = computed(metaOptions);\n meta.val = content.value;\n watch(content, val => {\n meta.val = val;\n meta.active === true && ctx.meta.$ssr.metaStore.planClientUpdate();\n });\n } else {\n meta.val = metaOptions;\n }\n ctx.meta.$ssr.metaStore.addMetaOptions(meta);\n ctx.meta.$ssr.metaStore.planClientUpdate();\n onActivated(() => {\n try {\n meta.active = true;\n ctx.meta.$ssr.metaStore.planClientUpdate();\n } catch (_err) {}\n });\n onDeactivated(() => {\n try {\n meta.active = false;\n ctx.meta.$ssr.metaStore.planClientUpdate();\n } catch (_err) {}\n });\n onUnmounted(() => {\n try {\n ctx.meta.$ssr.metaStore.removeMetaOptions(meta);\n ctx.meta.$ssr.metaStore.planClientUpdate();\n } catch (_err) {}\n });\n }\n}","import { isNavigationFailure } from '@cabloy/vue-router';\nimport { BeanSimple, cast } from 'zova';\nimport { useMeta } from './lib/useMeta.js';\nexport class Monkey extends BeanSimple {\n appContextInitialize(ctx) {\n ctx.meta.$ssr = ctx.app.ctx.meta.$ssr;\n if (process.env.SERVER) {\n ctx.meta.$ssr._registerServerContext(ctx);\n }\n }\n async appInitialize() {\n // ssr errorHandler\n if (process.env.SERVER) {\n this._ssrErrorHandler();\n }\n }\n async moduleLoading(_module) {}\n async moduleLoaded(module) {\n // ssrContext.modules\n if (process.env.SERVER && process.env.PROD) {\n if (!this.ctx.meta.$ssr.context.modules) this.ctx.meta.$ssr.context.modules = new Set();\n this.ctx.meta.$ssr.context.modules.add(`@@${module.info.relativeName}`);\n }\n }\n async beanInit(bean, beanInstance) {\n const self = this;\n // $ssr\n bean.defineProperty(beanInstance, '$ssr', {\n enumerable: false,\n configurable: true,\n get() {\n return self.app.ctx.meta.$ssr;\n }\n });\n // $useMeta\n bean.defineProperty(beanInstance, '$useMeta', {\n enumerable: false,\n configurable: true,\n get() {\n return function (options) {\n const ctx = cast(this).ctx;\n ctx.util.instanceScope(() => {\n useMeta(ctx, options);\n });\n };\n }\n });\n }\n _ssrErrorHandler() {\n if (!process.env.SERVER) return;\n const _eventErrorHandler = this.app.meta.event.on('app:errorHandler', (_data, next) => {\n const err = next();\n if (!err || !(err instanceof Error)) return err;\n return this._errorHandlerDefaultServer(err);\n });\n this.ctx.meta.$ssr.context.onRendered(_err => {\n _eventErrorHandler();\n });\n }\n _errorHandlerDefaultServer(err) {\n if (!process.env.SERVER) return err;\n if (isNavigationFailure(err)) {\n if (!this.ctx.meta.$ssr.renderSSRError) {\n this.ctx.meta.$ssr.renderSSRError = err;\n }\n return undefined;\n } else if (err.code === 401) {\n try {\n this.app.$gotoLogin();\n } catch (err) {\n this.ctx.meta.$ssr.renderSSRError = err;\n }\n } else {\n this.ctx.meta.$ssr.renderSSRError = err;\n }\n return undefined;\n }\n}","import * as devalue from 'devalue';\nexport function unevalPatch(value) {\n return devalue.uneval(value);\n // return devalue.uneval(value, value => {\n // if (value && typeof value === 'object' && value.toJSON) {\n // return value.toJSON();\n // }\n // });\n}","// from: quasar/ui/src/plugins/Meta.js\nimport { extend } from '@cabloy/extend';\nimport { BeanSimple, cast } from 'zova';\nimport { unevalPatch } from './utils.js';\nexport class CtxSSRMetaStore extends BeanSimple {\n constructor(...args) {\n super(...args);\n this._updateId = 0;\n this._currentClientMeta = void 0;\n this._clientList = [];\n }\n __init__() {\n if (process.env.SERVER) {\n const ssrContext = this.ctx.meta.$ssr.context;\n ssrContext.__qMetaList = [];\n if (this.sys.env.SSR_BODYREADYOBSERVER === 'true') {\n ssrContext.__qMetaList.push({\n bodyStyle: {\n display: 'none'\n }\n });\n }\n ssrContext.rendered = () => {\n this._onRenderedLast();\n ssrContext.rendered = () => {};\n };\n }\n if (process.env.CLIENT && this.ctx.meta.$ssr.isRuntimeSsrPreHydration) {\n this._currentClientMeta = cast(window).__Q_META__;\n document.getElementById('ssr-meta-init')?.remove();\n }\n }\n _onRenderedLast(err) {\n const app = this.app;\n try {\n if (err) return;\n const ssrContext = this.ctx.meta.$ssr.context;\n this._injectContextState(ssrContext);\n this._injectContextStateDefer(ssrContext);\n this._injectServerMeta(ssrContext);\n } finally {\n this.ctx.meta.$ssr._disposeServerContexts();\n app?.close();\n }\n }\n addMetaOptions(metaOptionsWrapper) {\n this._clientList.push(metaOptionsWrapper);\n }\n removeMetaOptions(metaOptionsWrapper) {\n this._clientList.splice(this._clientList.indexOf(metaOptionsWrapper), 1);\n }\n planClientUpdate() {\n if (this._updateId !== 0) {\n clearTimeout(this._updateId);\n }\n this._updateId = window.setTimeout(() => {\n this._updateId = 0;\n this._updateClientMeta();\n }, 50);\n }\n _updateClientMeta() {\n const data = {\n title: '',\n titleTemplate: undefined,\n meta: {},\n link: {},\n script: {},\n htmlAttr: {},\n bodyAttr: {}\n };\n for (let i = 0; i < this._clientList.length; i++) {\n const {\n active,\n val\n } = this._clientList[i];\n if (active === true) {\n extend(true, data, val);\n }\n }\n normalize(data);\n apply(diff(this._currentClientMeta, data));\n this._currentClientMeta = data;\n }\n _injectServerMeta(ssrContext) {\n const data = {\n title: '',\n titleTemplate: undefined,\n meta: {},\n link: {},\n htmlAttr: {},\n bodyAttr: {},\n bodyStyle: {},\n bodyClass: {},\n noscript: {}\n };\n const list = ssrContext.__qMetaList;\n for (let i = 0; i < list.length; i++) {\n extend(true, data, list[i]);\n }\n normalize(data);\n const nonce = ssrContext.nonce !== void 0 ? ` nonce=\"${ssrContext.nonce}\"` : '';\n const ctx = ssrContext._meta;\n const htmlAttr = Object.keys(data.htmlAttr).filter(htmlFilter);\n if (htmlAttr.length !== 0) {\n ctx.htmlAttrs += (ctx.htmlAttrs.length !== 0 ? ' ' : '') + htmlAttr.map(getAttr(data.htmlAttr)).join(' ');\n }\n ctx.headTags += getHead(data);\n const bodyAttr = Object.keys(data.bodyAttr).filter(bodyFilter);\n if (bodyAttr.length !== 0) {\n ctx.bodyAttrs += (ctx.bodyAttrs.length !== 0 ? ' ' : '') + bodyAttr.map(getAttr(data.bodyAttr)).join(' ');\n }\n const bodyStyle = Object.keys(data.bodyStyle).filter(name => !!data.bodyStyle[name]).map(name => `${name}:${data.bodyStyle[name]};`).join('');\n if (bodyStyle) {\n ctx.bodyAttrs += `${ctx.bodyAttrs.length !== 0 ? ' ' : ''}style=\"${bodyStyle}\"`;\n }\n const _bodyClass = ctx.bodyClasses.split(' ').filter(item => !!item);\n const bodyClass = {};\n _bodyClass.forEach(item => bodyClass[item] = true);\n extend(true, bodyClass, data.bodyClass);\n ctx.bodyClasses = Object.keys(bodyClass).filter(name => bodyClass[name]).map(name => name).join(' ');\n data.title = '\\'\"`';\n ctx.endingHeadTags += `${Object.keys(data.noscript).map(name => `<noscript data-qmeta=\"${name}\">${data.noscript[name]}</noscript>`).join('')}<script${nonce} id=\"ssr-meta-init\">window.__Q_META__=${delete data.bodyStyle && delete data.bodyClass && delete data.noscript && unevalPatch(data)}</script>`;\n let ssr_local_themedark = this.sys.config.ssr.cookie ? `let ssr_cookie_themedark=document.cookie.split('; ')?.find(item=>item.indexOf('themedark=')>-1)?.split('=')[1];\n ssr_cookie_themedark=ssr_cookie_themedark==='true'?true:ssr_cookie_themedark==='false'?false:${this.sys.env.SSR_COOKIE_THEMEDARK_DEFAULT};\n window.ssr_themedark=window.ssr_cookie_themedark=ssr_cookie_themedark;` : `let ssr_local_themedark=window.ssr_load_local('themedark');\n if(ssr_local_themedark===undefined || ssr_local_themedark==='auto'){\n ssr_local_themedark=window.matchMedia('(prefers-color-scheme: dark)').matches;\n }\n window.ssr_themedark=window.ssr_local_themedark=ssr_local_themedark;`;\n // Resolve the final browser theme from the SSR dual markers emitted before page render.\n ssr_local_themedark += `Object.defineProperty(window, 'ssr_themedark_data', {\n get: () => {\n let _data=document.body.getAttribute('data-ssr-theme-dark-'+window.ssr_themedark);\n if(_data===undefined || _data===null){\n _data=window.__INITIAL_STATE__ && window.__INITIAL_STATE__['data-ssr-theme-dark-'+window.ssr_themedark];\n }\n return _data;\n },\n });`;\n const ssr_local_themename = this.sys.config.ssr.cookie ? '' : \"window.ssr_local_themename=window.ssr_load_local('themename');\";\n ctx.endingHeadTags += `<script id=\"ssr-prefers-color-schema-dark\">\n window.ssr_load_local=function(key){\n const __ssr_local=localStorage.getItem(key);\n return __ssr_local?JSON.parse(__ssr_local):undefined;\n };\n ${ssr_local_themedark}\n ${ssr_local_themename}\n document.querySelector('#ssr-prefers-color-schema-dark').remove();\n </script>`.replaceAll('\\n', '');\n if (this.sys.env.SSR_BODYREADYOBSERVER === 'true') {\n ctx.bodyTags += `<script id=\"ssr-body-ready-observer\">\n window.ssr_bodyReadyObserverClear=()=>{\n if(window.ssr_bodyReadyObserver){\n window.ssr_body_ready_condition=undefined;\n window.ssr_body_ready_callback=undefined;\n window.ssr_bodyReadyObserver.disconnect();\n window.ssr_bodyReadyObserver=undefined;\n document.body.style.display='block';\n document.querySelector('#ssr-body-ready-observer').remove();\n }\n };\n window.ssr_bodyReadyObserver = new MutationObserver(() => {\n if(window.ssr_body_ready_condition && window.ssr_body_ready_condition()){\n window.ssr_body_ready_callback();\n window.ssr_bodyReadyObserverClear();\n }\n });\n window.ssr_bodyReadyObserver.observe(document.body, {\n subtree: true,\n childList: true,\n });\n document.addEventListener(\"DOMContentLoaded\", () => {\n window.ssr_bodyReadyObserverClear();\n });\n </script>`.replaceAll('\\n', '');\n }\n }\n _injectContextState(ssrContext) {\n const ctx = ssrContext._meta;\n const nonce = ssrContext.nonce !== void 0 ? ` nonce=\"${ssrContext.nonce}\"` : '';\n ctx.endingHeadTags += `<script${nonce} id=\"ssr-state-init\">window.__INITIAL_STATE__=${unevalPatch(ssrContext.state)}</script>`;\n }\n _injectContextStateDefer(ssrContext) {\n const ctx = ssrContext._meta;\n const nonce = ssrContext.nonce !== void 0 ? ` nonce=\"${ssrContext.nonce}\"` : '';\n ctx.endingBodyTags += `<script${nonce} id=\"ssr-state-defer-init\">window.__INITIAL_STATE_DEFER__=${unevalPatch(ssrContext.stateDefer)}</script>`;\n }\n}\nfunction normalize(meta) {\n if (meta.title) {\n meta.title = meta.titleTemplate ? meta.titleTemplate(meta.title) : meta.title;\n delete meta.titleTemplate;\n }\n [['meta', 'content'], ['link', 'href']].forEach(type => {\n const metaType = meta[type[0]];\n const metaProp = type[1];\n for (const name in metaType) {\n const metaLink = metaType[name];\n if (metaLink.template) {\n if (Object.keys(metaLink).length === 1) {\n delete metaType[name];\n } else {\n metaLink[metaProp] = metaLink.template(metaLink[metaProp] || '');\n delete metaLink.template;\n }\n }\n }\n });\n}\nfunction changed(old, def) {\n if (Object.keys(old).length !== Object.keys(def).length) {\n return true;\n }\n for (const key in old) {\n if (old[key] !== def[key]) {\n return true;\n }\n }\n}\nfunction bodyFilter(name) {\n return ['class', 'style'].includes(name) === false;\n}\nfunction htmlFilter(_name) {\n return true;\n // return ['lang', 'dir'].includes(name) === false;\n}\nfunction diff(meta, other) {\n const add = {};\n const remove = {};\n if (meta === void 0) {\n return {\n add: other,\n remove\n };\n }\n if (meta.title !== other.title) {\n add.title = other.title;\n }\n ['meta', 'link', 'script', 'htmlAttr', 'bodyAttr'].forEach(type => {\n const old = meta[type];\n const cur = other[type];\n remove[type] = [];\n if (old === void 0 || old === null) {\n add[type] = cur;\n return;\n }\n add[type] = {};\n for (const key in old) {\n if (Object.prototype.hasOwnProperty.call(cur, key) === false) {\n remove[type].push(key);\n }\n }\n for (const key in cur) {\n if (Object.prototype.hasOwnProperty.call(old, key) === false) {\n add[type][key] = cur[key];\n } else if (changed(old[key], cur[key]) === true) {\n remove[type].push(key);\n add[type][key] = cur[key];\n }\n }\n });\n return {\n add,\n remove\n };\n}\nfunction apply({\n add,\n remove\n}) {\n if (add.title) {\n document.title = add.title;\n }\n if (Object.keys(remove).length !== 0) {\n ['meta', 'link', 'script'].forEach(type => {\n remove[type].forEach(name => {\n document.head.querySelector(`${type}[data-qmeta=\"${name}\"]`)?.remove();\n });\n });\n remove.htmlAttr.filter(htmlFilter).forEach(name => {\n document.documentElement.removeAttribute(name);\n });\n remove.bodyAttr.filter(bodyFilter).forEach(name => {\n document.body.removeAttribute(name);\n });\n }\n ['meta', 'link', 'script'].forEach(type => {\n const metaType = add[type];\n for (const name in metaType) {\n const tag = document.createElement(type);\n for (const att in metaType[name]) {\n if (att !== 'innerHTML') {\n tag.setAttribute(att, metaType[name][att]);\n }\n }\n tag.setAttribute('data-qmeta', name);\n if (type === 'script') {\n tag.innerHTML = metaType[name].innerHTML || '';\n }\n document.head.appendChild(tag);\n }\n });\n Object.keys(add.htmlAttr).filter(htmlFilter).forEach(name => {\n document.documentElement.setAttribute(name, add.htmlAttr[name] || '');\n });\n Object.keys(add.bodyAttr).filter(bodyFilter).forEach(name => {\n document.body.setAttribute(name, add.bodyAttr[name] || '');\n });\n}\nfunction getAttr(seed) {\n return att => {\n const val = seed[att];\n return att + (val !== true && val !== void 0 ? `=\"${val}\"` : '');\n };\n}\nfunction getHead(meta) {\n let output = '';\n if (meta.title) {\n output += `<title>${meta.title}</title>`;\n }\n ['meta', 'link', 'script'].forEach(type => {\n const metaType = meta[type];\n for (const att in metaType) {\n const attrs = Object.keys(metaType[att]).filter(att => att !== 'innerHTML').map(getAttr(metaType[att]));\n output += `<${type} ${attrs.join(' ')} data-qmeta=\"${att}\">`;\n if (type === 'script') {\n output += `${metaType[att].innerHTML || ''}</script>`;\n }\n }\n });\n return output;\n}","import { includeBooleanAttr, isBooleanAttr, isString, stringifyStyle } from '@vue/shared';\nimport { defu } from 'defu';\nimport { normalizeClass, normalizeStyle, ref, useSSRContext } from 'vue';\nimport { BeanSimple } from 'zova';\nimport { CtxSSRMetaStore } from './ssrMetaStore.js';\nconst SymbolIsRuntimeSsrPreHydration = Symbol('SymbolIsRuntimeSsrPreHydration');\nconst SymbolSSRContext = Symbol('SymbolSSRContext');\nconst SymbolSSRState = Symbol('SymbolSSRState');\nconst SymbolOnHydrateds = Symbol('SymbolOnHydrateds');\nconst SymbolOnHydratePropHasMismatches = Symbol('SymbolOnHydratePropHasMismatches');\nconst SymbolInstanceUpdates = Symbol('SymbolInstanceUpdates');\nconst SymbolHydratingCounter = Symbol('SymbolHydratingCounter');\nconst SymbolServerContexts = Symbol('SymbolServerContexts');\nexport class CtxSSR extends BeanSimple {\n constructor(...args) {\n super(...args);\n this[SymbolIsRuntimeSsrPreHydration] = ref(false);\n this[SymbolSSRContext] = void 0;\n this[SymbolSSRState] = void 0;\n this[SymbolOnHydrateds] = [];\n this[SymbolOnHydratePropHasMismatches] = [];\n this[SymbolInstanceUpdates] = [];\n this[SymbolHydratingCounter] = 0;\n this[SymbolServerContexts] = new Set();\n this.metaStore = void 0;\n }\n /** @internal */\n initialize() {\n if (process.env.SERVER) {\n this._serverContextRegister();\n }\n // ssr state\n this[SymbolSSRState] = this.sys.bean._getBeanSyncOnly('a-ssr.sys.ssrState');\n // SymbolIsRuntimeSsrPreHydration\n if (process.env.SERVER) {\n this[SymbolIsRuntimeSsrPreHydration].value = true;\n } else if (process.env.CLIENT && document.body.getAttribute('data-server-rendered') !== null) {\n this[SymbolIsRuntimeSsrPreHydration].value = true;\n }\n // onHydratePropHasMismatch\n if (process.env.CLIENT && this.isRuntimeSsrPreHydration) {\n this.onHydratePropHasMismatch((el, key, clientValue, vnode, instance) => {\n return this._onHydratePropHasMismatchDefault(el, key, clientValue, vnode, instance);\n });\n }\n // metaStore\n this.metaStore = this.bean._newBeanSimple(CtxSSRMetaStore, false);\n // fix: flash on page load\n // need not check process.env.DEV, because maybe need remove vite-css-module-id on prod\n if (process.env.CLIENT && this.isRuntimeSsrPreHydration) {\n this.onHydrated(() => {\n document.querySelectorAll('style[vite-css-module-id]').forEach(node => node.remove());\n });\n }\n }\n _serverContextRegister(currentContext = this.ctx) {\n const serverContexts = this[SymbolServerContexts];\n serverContexts.add(currentContext);\n this.context.onRendered(() => {\n serverContexts.delete(currentContext);\n });\n }\n _serverContextsDispose() {\n const serverContexts = this[SymbolServerContexts];\n for (const serverContext of serverContexts) {\n if (serverContext.disposed) continue;\n if (serverContext.bean && serverContext.bean !== serverContext.app?.bean) {\n serverContext.bean.dispose();\n }\n serverContext.dispose();\n }\n serverContexts.clear();\n }\n get isRuntimeSsrPreHydration() {\n return this[SymbolIsRuntimeSsrPreHydration].value;\n }\n set isRuntimeSsrPreHydration(value) {\n this[SymbolIsRuntimeSsrPreHydration].value = value;\n }\n get context() {\n if (process.env.CLIENT) throw new Error('cannot called in client');\n if (!this[SymbolSSRContext]) {\n this.ctx.util.instanceScope(() => {\n this[SymbolSSRContext] = useSSRContext();\n this._initContext();\n });\n }\n return this[SymbolSSRContext];\n }\n get state() {\n if (process.env.SERVER) {\n return this.context.state;\n } else {\n return this[SymbolSSRState].state;\n }\n }\n get stateDefer() {\n if (process.env.SERVER) {\n return this.context.stateDefer;\n } else {\n return this[SymbolSSRState].stateDefer;\n }\n }\n get renderSSRError() {\n return this.context._meta.renderError;\n }\n set renderSSRError(err) {\n this.context._meta.renderError = err;\n }\n getPerformAction(baseURL) {\n if (process.env.SERVER && baseURL === this.sys.env.SSR_API_BASE_URL) return this.context.performAction;\n return undefined;\n }\n _initContext() {\n const ssrContext = this[SymbolSSRContext];\n ssrContext._meta = defu(ssrContext._meta, {\n htmlAttrs: '',\n headTags: '',\n endingHeadTags: '',\n bodyClasses: '',\n bodyAttrs: 'data-server-rendered',\n bodyTags: '',\n endingBodyTags: '',\n baseUrl: this.sys.util.getAbsoluteUrlFromPagePath(undefined, false, true) // not include publicPath\n });\n ssrContext.state = ssrContext.state || {};\n ssrContext.stateDefer = ssrContext.stateDefer || {};\n }\n onHydrated(fn) {\n this[SymbolOnHydrateds].push(fn);\n }\n onHydratePropHasMismatch(fn) {\n this[SymbolOnHydratePropHasMismatches].push(fn);\n }\n handleDirectOrOnHydrated(fn) {\n if (process.env.CLIENT && this.isRuntimeSsrPreHydration) {\n this.onHydrated(fn);\n } else {\n return fn();\n }\n }\n _onHydratePropHasMismatchDefault(el, key, clientValue, _vnode, _instance) {\n // expected\n let ignore = false;\n let expected;\n if (key === 'class') {\n ignore = true;\n if (clientValue !== undefined) {\n expected = normalizeClass(clientValue);\n el.setAttribute(key, expected);\n }\n } else if (key === 'style') {\n ignore = true;\n if (clientValue !== undefined) {\n expected = isString(clientValue) ? clientValue : stringifyStyle(normalizeStyle(clientValue));\n el.setAttribute(key, expected);\n }\n } else if (['id', 'name', 'for', 'd'].includes(key)) {\n ignore = true;\n if (clientValue !== undefined) {\n expected = String(clientValue);\n el.setAttribute(key, expected);\n }\n } else if (key === 'value') {\n ignore = true;\n if (clientValue !== undefined) {\n expected = String(clientValue);\n if (el.tagName === 'TEXTAREA') {\n el.value = expected;\n } else {\n el.setAttribute(key, expected);\n }\n }\n } else if (isBooleanAttr(key)) {\n ignore = true;\n if (clientValue !== undefined) {\n const expected = includeBooleanAttr(clientValue);\n if (expected) {\n el.setAttribute(key, '');\n } else {\n el.removeAttribute(key);\n }\n }\n } else if (el.getAttribute(`data-hydrate-ignore-${key}`) !== null) {\n ignore = true;\n if (clientValue !== undefined) {\n expected = String(clientValue);\n el.setAttribute(key, expected);\n }\n }\n if (!ignore) return {\n clientValue\n };\n return {\n ignore: true\n };\n }\n _hydrated() {\n if (!this.isRuntimeSsrPreHydration) return;\n // should be first\n this.isRuntimeSsrPreHydration = false;\n //\n this[SymbolInstanceUpdates].forEach(instance => {\n if (!instance.isUnmounted && instance.zova) {\n try {\n instance.update();\n } catch (err) {\n if (!err.message.includes(\"'insertBefore'\")) {\n throw err;\n }\n }\n }\n });\n this[SymbolInstanceUpdates] = [];\n //\n this[SymbolOnHydrateds].forEach(fn => fn());\n this[SymbolOnHydrateds] = [];\n //\n this[SymbolOnHydratePropHasMismatches] = [];\n }\n\n /** @internal */\n _hydratePropHasMismatch(el, key, clientValue, vnode, instance) {\n for (const fn of this[SymbolOnHydratePropHasMismatches]) {\n const res = fn(el, key, clientValue, vnode, instance);\n if (res.ignore) return res;\n clientValue = res.clientValue;\n }\n return {\n ignore: false,\n clientValue\n };\n }\n\n /** @internal */\n _hydratingInc() {\n ++this[SymbolHydratingCounter];\n }\n\n /** @internal */\n _hydratingDec() {\n if (--this[SymbolHydratingCounter] === 0) {\n this._hydrated();\n }\n }\n\n /** @internal */\n _hydratingInstanceRecord(instance) {\n if (!this[SymbolInstanceUpdates].includes(instance)) {\n this[SymbolInstanceUpdates].push(instance);\n return true;\n }\n return false;\n }\n\n /** @internal */\n _registerServerContext(currentContext) {\n this._serverContextRegister(currentContext);\n }\n\n /** @internal */\n _disposeServerContexts() {\n this._serverContextsDispose();\n }\n}","import { BeanSimple } from 'zova';\nimport { CtxSSR } from './lib/ssr.js';\nexport class MonkeySys extends BeanSimple {\n constructor(moduleSelf) {\n super();\n this._moduleSelf = void 0;\n this._sysSsrState = void 0;\n this._moduleSelf = moduleSelf;\n }\n async getSysSsrState() {\n if (!this._sysSsrState) {\n this._sysSsrState = await this.bean._getBean('a-ssr.sys.ssrState', false);\n }\n return this._sysSsrState;\n }\n async moduleLoading(module) {\n if (this._moduleSelf === module) return;\n await this.getSysSsrState();\n }\n async moduleLoaded(_module) {}\n async configLoaded(_module, _config) {}\n sysContextInitialize(ctx) {\n ctx.meta.$ssr = ctx.bean._newBeanSimple(CtxSSR, false);\n ctx.meta.$ssr.initialize();\n }\n}","var _dec, _dec2, _class;\nimport { \"BeanInfo\" as __z_BeanInfo } from \"zova\";\n// eslint-disable\n/** sys: begin */\nexport * from '../bean/sys.ssrState.js';\nimport 'zova';\n/** sys: end */\n/** sys: begin */\nimport { SysSsrState } from '../bean/sys.ssrState.js';\nimport 'zova';\n/** sys: end */\n/** config: begin */\nexport * from '../config/config.js';\n/** config: end */\n/** monkey: begin */\nexport * from '../monkey.js';\n/** monkey: end */\n/** monkeySys: begin */\nexport * from '../monkeySys.js';\n/** monkeySys: end */\n/** scope: begin */\nimport { BeanScopeBase } from 'zova';\nimport { Scope } from 'zova-module-a-bean';\nexport let ScopeModuleASsr = (_dec = Scope(), _dec2 = __z_BeanInfo({\n module: \"a-ssr\"\n}), _dec(_class = _dec2(_class = class ScopeModuleASsr extends BeanScopeBase {}) || _class) || _class);\nimport 'zova';\n\n/** scope: end */"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../src/bean/sys.ssrState.ts","../src/config/config.ts","../src/lib/useMeta.ts","../src/monkey.ts","../src/lib/utils.ts","../src/lib/ssrMetaStore.ts","../src/lib/ssr.ts","../src/monkeySys.ts","../src/.metadata/index.ts"],"sourcesContent":["var _dec, _dec2, _class;\nimport { \"BeanInfo\" as __z_BeanInfo } from \"zova\";\nimport { BeanBase, cast } from 'zova';\nimport { Sys } from 'zova-module-a-bean';\nconst SymbolSSRState = Symbol('SymbolSSRState');\nconst SymbolSSRStateDefer = Symbol('SymbolSSRStateDefer');\nexport let SysSsrState = (_dec = Sys(), _dec2 = __z_BeanInfo({\n module: \"a-ssr\"\n}), _dec(_class = _dec2(_class = class SysSsrState extends BeanBase {\n constructor(...args) {\n super(...args);\n this[SymbolSSRState] = void 0;\n this[SymbolSSRStateDefer] = void 0;\n }\n async __init__() {\n if (process.env.CLIENT) {\n if (cast(window).__INITIAL_STATE__) {\n this[SymbolSSRState] = cast(window).__INITIAL_STATE__;\n delete cast(window).__INITIAL_STATE__;\n document.getElementById('ssr-state-init')?.remove();\n } else {\n this[SymbolSSRState] = {};\n }\n if (cast(window).__INITIAL_STATE_DEFER__) {\n this[SymbolSSRStateDefer] = cast(window).__INITIAL_STATE_DEFER__;\n delete cast(window).__INITIAL_STATE_DEFER__;\n document.getElementById('ssr-state-defer-init')?.remove();\n } else {\n this[SymbolSSRStateDefer] = {};\n }\n }\n }\n get state() {\n return this[SymbolSSRState];\n }\n get stateDefer() {\n return this[SymbolSSRStateDefer];\n }\n}) || _class) || _class);","export const config = sys => {\n const ssrConfig = {\n cookieThemeDarkDefault: sys.env.SSR_COOKIE_THEMEDARK_DEFAULT === 'true',\n optimization: {\n bodyReadyObserver: sys.env.SSR_BODYREADYOBSERVER === 'true'\n },\n transferCache: sys.env.SSR_TRANSFERCACHE === 'false' ? false : {\n expires: _normalizeExpires(sys.env.SSR_TRANSFERCACHE_EXPIRES)\n }\n };\n return ssrConfig;\n};\nfunction _normalizeExpires(expires) {\n if (!expires) return 0;\n if (!Number.isNaN(Number(expires))) return Number(expires);\n return expires;\n}","// from: quasar/ui/src/composables/use-meta.js\nimport { computed, onActivated, onDeactivated, onUnmounted, watch } from 'vue';\nexport function useMeta(ctx, metaOptions) {\n if (process.env.SERVER) {\n ctx.meta.$ssr.context.__qMetaList.push(typeof metaOptions === 'function' ? metaOptions() : metaOptions);\n } else {\n const meta = {\n active: true\n };\n if (typeof metaOptions === 'function') {\n const content = computed(metaOptions);\n meta.val = content.value;\n watch(content, val => {\n meta.val = val;\n meta.active === true && ctx.meta.$ssr.metaStore.planClientUpdate();\n });\n } else {\n meta.val = metaOptions;\n }\n ctx.meta.$ssr.metaStore.addMetaOptions(meta);\n ctx.meta.$ssr.metaStore.planClientUpdate();\n onActivated(() => {\n try {\n meta.active = true;\n ctx.meta.$ssr.metaStore.planClientUpdate();\n } catch (_err) {}\n });\n onDeactivated(() => {\n try {\n meta.active = false;\n ctx.meta.$ssr.metaStore.planClientUpdate();\n } catch (_err) {}\n });\n onUnmounted(() => {\n try {\n ctx.meta.$ssr.metaStore.removeMetaOptions(meta);\n ctx.meta.$ssr.metaStore.planClientUpdate();\n } catch (_err) {}\n });\n }\n}","import { isNavigationFailure } from '@cabloy/vue-router';\nimport { BeanSimple, cast } from 'zova';\nimport { useMeta } from './lib/useMeta.js';\nexport class Monkey extends BeanSimple {\n appContextInitialize(ctx) {\n ctx.meta.$ssr = ctx.app.ctx.meta.$ssr;\n if (process.env.SERVER) {\n ctx.meta.$ssr._registerServerContext(ctx);\n }\n }\n async appInitialize() {\n // ssr errorHandler\n if (process.env.SERVER) {\n this._ssrErrorHandler();\n }\n }\n async moduleLoading(_module) {}\n async moduleLoaded(module) {\n // ssrContext.modules\n if (process.env.SERVER && process.env.PROD) {\n if (!this.ctx.meta.$ssr.context.modules) this.ctx.meta.$ssr.context.modules = new Set();\n this.ctx.meta.$ssr.context.modules.add(`@@${module.info.relativeName}`);\n }\n }\n async beanInit(bean, beanInstance) {\n const self = this;\n // $ssr\n bean.defineProperty(beanInstance, '$ssr', {\n enumerable: false,\n configurable: true,\n get() {\n return self.app.ctx.meta.$ssr;\n }\n });\n // $useMeta\n bean.defineProperty(beanInstance, '$useMeta', {\n enumerable: false,\n configurable: true,\n get() {\n return function (options) {\n const ctx = cast(this).ctx;\n ctx.util.instanceScope(() => {\n useMeta(ctx, options);\n });\n };\n }\n });\n }\n _ssrErrorHandler() {\n if (!process.env.SERVER) return;\n const _eventErrorHandler = this.app.meta.event.on('app:errorHandler', (_data, next) => {\n const err = next();\n if (!err || !(err instanceof Error)) return err;\n return this._errorHandlerDefaultServer(err);\n });\n this.ctx.meta.$ssr.context.onRendered(_err => {\n _eventErrorHandler();\n });\n }\n _errorHandlerDefaultServer(err) {\n if (!process.env.SERVER) return err;\n if (isNavigationFailure(err)) {\n if (!this.ctx.meta.$ssr.renderSSRError) {\n this.ctx.meta.$ssr.renderSSRError = err;\n }\n return undefined;\n } else if (err.code === 401) {\n try {\n this.app.$gotoLogin();\n } catch (err) {\n this.ctx.meta.$ssr.renderSSRError = err;\n }\n } else {\n this.ctx.meta.$ssr.renderSSRError = err;\n }\n return undefined;\n }\n}","import * as devalue from 'devalue';\nexport function unevalPatch(value) {\n return devalue.uneval(value);\n // return devalue.uneval(value, value => {\n // if (value && typeof value === 'object' && value.toJSON) {\n // return value.toJSON();\n // }\n // });\n}","// from: quasar/ui/src/plugins/Meta.js\nimport { extend } from '@cabloy/extend';\nimport { BeanSimple, cast } from 'zova';\nimport { unevalPatch } from './utils.js';\nexport class CtxSSRMetaStore extends BeanSimple {\n constructor(...args) {\n super(...args);\n this._updateId = 0;\n this._currentClientMeta = void 0;\n this._clientList = [];\n }\n __init__() {\n if (process.env.SERVER) {\n const ssrContext = this.ctx.meta.$ssr.context;\n ssrContext.__qMetaList = [];\n if (this.sys.env.SSR_BODYREADYOBSERVER === 'true') {\n ssrContext.__qMetaList.push({\n bodyStyle: {\n display: 'none'\n }\n });\n }\n ssrContext.rendered = () => {\n this._onRenderedLast();\n ssrContext.rendered = () => {};\n };\n }\n if (process.env.CLIENT && this.ctx.meta.$ssr.isRuntimeSsrPreHydration) {\n this._currentClientMeta = cast(window).__Q_META__;\n document.getElementById('ssr-meta-init')?.remove();\n }\n }\n _onRenderedLast(err) {\n const app = this.app;\n try {\n if (err) return;\n const ssrContext = this.ctx.meta.$ssr.context;\n this._injectContextState(ssrContext);\n this._injectContextStateDefer(ssrContext);\n this._injectServerMeta(ssrContext);\n } finally {\n this.ctx.meta.$ssr._disposeServerContexts();\n app?.close();\n }\n }\n addMetaOptions(metaOptionsWrapper) {\n this._clientList.push(metaOptionsWrapper);\n }\n removeMetaOptions(metaOptionsWrapper) {\n this._clientList.splice(this._clientList.indexOf(metaOptionsWrapper), 1);\n }\n planClientUpdate() {\n if (this._updateId !== 0) {\n clearTimeout(this._updateId);\n }\n this._updateId = window.setTimeout(() => {\n this._updateId = 0;\n this._updateClientMeta();\n }, 50);\n }\n _updateClientMeta() {\n const data = {\n title: '',\n titleTemplate: undefined,\n meta: {},\n link: {},\n script: {},\n htmlAttr: {},\n bodyAttr: {}\n };\n for (let i = 0; i < this._clientList.length; i++) {\n const {\n active,\n val\n } = this._clientList[i];\n if (active === true) {\n extend(true, data, val);\n }\n }\n normalize(data);\n apply(diff(this._currentClientMeta, data));\n this._currentClientMeta = data;\n }\n _injectServerMeta(ssrContext) {\n const data = {\n title: '',\n titleTemplate: undefined,\n meta: {},\n link: {},\n htmlAttr: {},\n bodyAttr: {},\n bodyStyle: {},\n bodyClass: {},\n noscript: {}\n };\n const list = ssrContext.__qMetaList;\n for (let i = 0; i < list.length; i++) {\n extend(true, data, list[i]);\n }\n normalize(data);\n const nonce = ssrContext.nonce !== void 0 ? ` nonce=\"${ssrContext.nonce}\"` : '';\n const ctx = ssrContext._meta;\n const htmlAttr = Object.keys(data.htmlAttr).filter(htmlFilter);\n if (htmlAttr.length !== 0) {\n ctx.htmlAttrs += (ctx.htmlAttrs.length !== 0 ? ' ' : '') + htmlAttr.map(getAttr(data.htmlAttr)).join(' ');\n }\n ctx.headTags += getHead(data);\n const bodyAttr = Object.keys(data.bodyAttr).filter(bodyFilter);\n if (bodyAttr.length !== 0) {\n ctx.bodyAttrs += (ctx.bodyAttrs.length !== 0 ? ' ' : '') + bodyAttr.map(getAttr(data.bodyAttr)).join(' ');\n }\n const bodyStyle = Object.keys(data.bodyStyle).filter(name => !!data.bodyStyle[name]).map(name => `${name}:${data.bodyStyle[name]};`).join('');\n if (bodyStyle) {\n ctx.bodyAttrs += `${ctx.bodyAttrs.length !== 0 ? ' ' : ''}style=\"${bodyStyle}\"`;\n }\n const _bodyClass = ctx.bodyClasses.split(' ').filter(item => !!item);\n const bodyClass = {};\n _bodyClass.forEach(item => bodyClass[item] = true);\n extend(true, bodyClass, data.bodyClass);\n ctx.bodyClasses = Object.keys(bodyClass).filter(name => bodyClass[name]).map(name => name).join(' ');\n data.title = '\\'\"`';\n ctx.endingHeadTags += `${Object.keys(data.noscript).map(name => `<noscript data-qmeta=\"${name}\">${data.noscript[name]}</noscript>`).join('')}<script${nonce} id=\"ssr-meta-init\">window.__Q_META__=${delete data.bodyStyle && delete data.bodyClass && delete data.noscript && unevalPatch(data)}</script>`;\n let ssr_local_themedark = this.sys.config.ssr.cookie ? `let ssr_cookie_themedark=document.cookie.split('; ')?.find(item=>item.indexOf('themedark=')>-1)?.split('=')[1];\n ssr_cookie_themedark=ssr_cookie_themedark==='true'?true:ssr_cookie_themedark==='false'?false:${this.sys.env.SSR_COOKIE_THEMEDARK_DEFAULT};\n window.ssr_themedark=window.ssr_cookie_themedark=ssr_cookie_themedark;` : `let ssr_local_themedark=window.ssr_load_local('themedark');\n if(ssr_local_themedark===undefined || ssr_local_themedark==='auto'){\n ssr_local_themedark=window.matchMedia('(prefers-color-scheme: dark)').matches;\n }\n window.ssr_themedark=window.ssr_local_themedark=ssr_local_themedark;`;\n // Resolve the final browser theme from the SSR dual markers emitted before page render.\n ssr_local_themedark += `Object.defineProperty(window, 'ssr_themedark_data', {\n get: () => {\n let _data=document.body.getAttribute('data-ssr-theme-dark-'+window.ssr_themedark);\n if(_data===undefined || _data===null){\n _data=window.__INITIAL_STATE__ && window.__INITIAL_STATE__['data-ssr-theme-dark-'+window.ssr_themedark];\n }\n return _data;\n },\n });`;\n const ssr_local_themename = this.sys.config.ssr.cookie ? '' : `window.ssr_local_themename=window.ssr_load_local('themename','${this.sys.env.STYLE_DEFAULT_THEME}');`;\n ctx.endingHeadTags += `<script id=\"ssr-prefers-color-schema-dark\">\n window.ssr_load_local=function(key,defaultValue){\n const __ssr_local=localStorage.getItem(key);\n const value=__ssr_local?JSON.parse(__ssr_local):undefined;\n return value??defaultValue;\n };\n ${ssr_local_themedark}\n ${ssr_local_themename}\n document.querySelector('#ssr-prefers-color-schema-dark').remove();\n </script>`.replaceAll('\\n', '');\n if (this.sys.env.SSR_BODYREADYOBSERVER === 'true') {\n ctx.bodyTags += `<script id=\"ssr-body-ready-observer\">\n window.ssr_bodyReadyObserverClear=()=>{\n if(window.ssr_bodyReadyObserver){\n window.ssr_body_ready_condition=undefined;\n window.ssr_body_ready_callback=undefined;\n window.ssr_bodyReadyObserver.disconnect();\n window.ssr_bodyReadyObserver=undefined;\n document.body.style.display='block';\n document.querySelector('#ssr-body-ready-observer').remove();\n }\n };\n window.ssr_bodyReadyObserver = new MutationObserver(() => {\n if(window.ssr_body_ready_condition && window.ssr_body_ready_condition()){\n window.ssr_body_ready_callback();\n window.ssr_bodyReadyObserverClear();\n }\n });\n window.ssr_bodyReadyObserver.observe(document.body, {\n subtree: true,\n childList: true,\n });\n document.addEventListener(\"DOMContentLoaded\", () => {\n window.ssr_bodyReadyObserverClear();\n });\n </script>`.replaceAll('\\n', '');\n }\n }\n _injectContextState(ssrContext) {\n const ctx = ssrContext._meta;\n const nonce = ssrContext.nonce !== void 0 ? ` nonce=\"${ssrContext.nonce}\"` : '';\n ctx.endingHeadTags += `<script${nonce} id=\"ssr-state-init\">window.__INITIAL_STATE__=${unevalPatch(ssrContext.state)}</script>`;\n }\n _injectContextStateDefer(ssrContext) {\n const ctx = ssrContext._meta;\n const nonce = ssrContext.nonce !== void 0 ? ` nonce=\"${ssrContext.nonce}\"` : '';\n ctx.endingBodyTags += `<script${nonce} id=\"ssr-state-defer-init\">window.__INITIAL_STATE_DEFER__=${unevalPatch(ssrContext.stateDefer)}</script>`;\n }\n}\nfunction normalize(meta) {\n if (meta.title) {\n meta.title = meta.titleTemplate ? meta.titleTemplate(meta.title) : meta.title;\n delete meta.titleTemplate;\n }\n [['meta', 'content'], ['link', 'href']].forEach(type => {\n const metaType = meta[type[0]];\n const metaProp = type[1];\n for (const name in metaType) {\n const metaLink = metaType[name];\n if (metaLink.template) {\n if (Object.keys(metaLink).length === 1) {\n delete metaType[name];\n } else {\n metaLink[metaProp] = metaLink.template(metaLink[metaProp] || '');\n delete metaLink.template;\n }\n }\n }\n });\n}\nfunction changed(old, def) {\n if (Object.keys(old).length !== Object.keys(def).length) {\n return true;\n }\n for (const key in old) {\n if (old[key] !== def[key]) {\n return true;\n }\n }\n}\nfunction bodyFilter(name) {\n return ['class', 'style'].includes(name) === false;\n}\nfunction htmlFilter(_name) {\n return true;\n // return ['lang', 'dir'].includes(name) === false;\n}\nfunction diff(meta, other) {\n const add = {};\n const remove = {};\n if (meta === void 0) {\n return {\n add: other,\n remove\n };\n }\n if (meta.title !== other.title) {\n add.title = other.title;\n }\n ['meta', 'link', 'script', 'htmlAttr', 'bodyAttr'].forEach(type => {\n const old = meta[type];\n const cur = other[type];\n remove[type] = [];\n if (old === void 0 || old === null) {\n add[type] = cur;\n return;\n }\n add[type] = {};\n for (const key in old) {\n if (Object.prototype.hasOwnProperty.call(cur, key) === false) {\n remove[type].push(key);\n }\n }\n for (const key in cur) {\n if (Object.prototype.hasOwnProperty.call(old, key) === false) {\n add[type][key] = cur[key];\n } else if (changed(old[key], cur[key]) === true) {\n remove[type].push(key);\n add[type][key] = cur[key];\n }\n }\n });\n return {\n add,\n remove\n };\n}\nfunction apply({\n add,\n remove\n}) {\n if (add.title) {\n document.title = add.title;\n }\n if (Object.keys(remove).length !== 0) {\n ['meta', 'link', 'script'].forEach(type => {\n remove[type].forEach(name => {\n document.head.querySelector(`${type}[data-qmeta=\"${name}\"]`)?.remove();\n });\n });\n remove.htmlAttr.filter(htmlFilter).forEach(name => {\n document.documentElement.removeAttribute(name);\n });\n remove.bodyAttr.filter(bodyFilter).forEach(name => {\n document.body.removeAttribute(name);\n });\n }\n ['meta', 'link', 'script'].forEach(type => {\n const metaType = add[type];\n for (const name in metaType) {\n const tag = document.createElement(type);\n for (const att in metaType[name]) {\n if (att !== 'innerHTML') {\n tag.setAttribute(att, metaType[name][att]);\n }\n }\n tag.setAttribute('data-qmeta', name);\n if (type === 'script') {\n tag.innerHTML = metaType[name].innerHTML || '';\n }\n document.head.appendChild(tag);\n }\n });\n Object.keys(add.htmlAttr).filter(htmlFilter).forEach(name => {\n document.documentElement.setAttribute(name, add.htmlAttr[name] || '');\n });\n Object.keys(add.bodyAttr).filter(bodyFilter).forEach(name => {\n document.body.setAttribute(name, add.bodyAttr[name] || '');\n });\n}\nfunction getAttr(seed) {\n return att => {\n const val = seed[att];\n return att + (val !== true && val !== void 0 ? `=\"${val}\"` : '');\n };\n}\nfunction getHead(meta) {\n let output = '';\n if (meta.title) {\n output += `<title>${meta.title}</title>`;\n }\n ['meta', 'link', 'script'].forEach(type => {\n const metaType = meta[type];\n for (const att in metaType) {\n const attrs = Object.keys(metaType[att]).filter(att => att !== 'innerHTML').map(getAttr(metaType[att]));\n output += `<${type} ${attrs.join(' ')} data-qmeta=\"${att}\">`;\n if (type === 'script') {\n output += `${metaType[att].innerHTML || ''}</script>`;\n }\n }\n });\n return output;\n}","import { includeBooleanAttr, isBooleanAttr, isString, stringifyStyle } from '@vue/shared';\nimport { defu } from 'defu';\nimport { normalizeClass, normalizeStyle, ref, useSSRContext } from 'vue';\nimport { BeanSimple } from 'zova';\nimport { CtxSSRMetaStore } from './ssrMetaStore.js';\nconst SymbolIsRuntimeSsrPreHydration = Symbol('SymbolIsRuntimeSsrPreHydration');\nconst SymbolSSRContext = Symbol('SymbolSSRContext');\nconst SymbolSSRState = Symbol('SymbolSSRState');\nconst SymbolOnHydrateds = Symbol('SymbolOnHydrateds');\nconst SymbolOnHydratePropHasMismatches = Symbol('SymbolOnHydratePropHasMismatches');\nconst SymbolInstanceUpdates = Symbol('SymbolInstanceUpdates');\nconst SymbolHydratingCounter = Symbol('SymbolHydratingCounter');\nconst SymbolServerContexts = Symbol('SymbolServerContexts');\nexport class CtxSSR extends BeanSimple {\n constructor(...args) {\n super(...args);\n this[SymbolIsRuntimeSsrPreHydration] = ref(false);\n this[SymbolSSRContext] = void 0;\n this[SymbolSSRState] = void 0;\n this[SymbolOnHydrateds] = [];\n this[SymbolOnHydratePropHasMismatches] = [];\n this[SymbolInstanceUpdates] = [];\n this[SymbolHydratingCounter] = 0;\n this[SymbolServerContexts] = new Set();\n this.metaStore = void 0;\n }\n /** @internal */\n initialize() {\n if (process.env.SERVER) {\n this._serverContextRegister();\n }\n // ssr state\n this[SymbolSSRState] = this.sys.bean._getBeanSyncOnly('a-ssr.sys.ssrState');\n // SymbolIsRuntimeSsrPreHydration\n if (process.env.SERVER) {\n this[SymbolIsRuntimeSsrPreHydration].value = true;\n } else if (process.env.CLIENT && document.body.getAttribute('data-server-rendered') !== null) {\n this[SymbolIsRuntimeSsrPreHydration].value = true;\n }\n // onHydratePropHasMismatch\n if (process.env.CLIENT && this.isRuntimeSsrPreHydration) {\n this.onHydratePropHasMismatch((el, key, clientValue, vnode, instance) => {\n return this._onHydratePropHasMismatchDefault(el, key, clientValue, vnode, instance);\n });\n }\n // metaStore\n this.metaStore = this.bean._newBeanSimple(CtxSSRMetaStore, false);\n // fix: flash on page load\n // need not check process.env.DEV, because maybe need remove vite-css-module-id on prod\n if (process.env.CLIENT && this.isRuntimeSsrPreHydration) {\n this.onHydrated(() => {\n document.querySelectorAll('style[vite-css-module-id]').forEach(node => node.remove());\n });\n }\n }\n _serverContextRegister(currentContext = this.ctx) {\n const serverContexts = this[SymbolServerContexts];\n serverContexts.add(currentContext);\n this.context.onRendered(() => {\n serverContexts.delete(currentContext);\n });\n }\n _serverContextsDispose() {\n const serverContexts = this[SymbolServerContexts];\n for (const serverContext of serverContexts) {\n if (serverContext.disposed) continue;\n if (serverContext.bean && serverContext.bean !== serverContext.app?.bean) {\n serverContext.bean.dispose();\n }\n serverContext.dispose();\n }\n serverContexts.clear();\n }\n get isRuntimeSsrPreHydration() {\n return this[SymbolIsRuntimeSsrPreHydration].value;\n }\n set isRuntimeSsrPreHydration(value) {\n this[SymbolIsRuntimeSsrPreHydration].value = value;\n }\n get context() {\n if (process.env.CLIENT) throw new Error('cannot called in client');\n if (!this[SymbolSSRContext]) {\n this.ctx.util.instanceScope(() => {\n this[SymbolSSRContext] = useSSRContext();\n this._initContext();\n });\n }\n return this[SymbolSSRContext];\n }\n get state() {\n if (process.env.SERVER) {\n return this.context.state;\n } else {\n return this[SymbolSSRState].state;\n }\n }\n get stateDefer() {\n if (process.env.SERVER) {\n return this.context.stateDefer;\n } else {\n return this[SymbolSSRState].stateDefer;\n }\n }\n get renderSSRError() {\n return this.context._meta.renderError;\n }\n set renderSSRError(err) {\n this.context._meta.renderError = err;\n }\n getPerformAction(baseURL) {\n if (process.env.SERVER && baseURL === this.sys.env.SSR_API_BASE_URL) return this.context.performAction;\n return undefined;\n }\n _initContext() {\n const ssrContext = this[SymbolSSRContext];\n ssrContext._meta = defu(ssrContext._meta, {\n htmlAttrs: '',\n headTags: '',\n endingHeadTags: '',\n bodyClasses: '',\n bodyAttrs: 'data-server-rendered',\n bodyTags: '',\n endingBodyTags: '',\n baseUrl: this.sys.util.getAbsoluteUrlFromPagePath(undefined, false, true) // not include publicPath\n });\n ssrContext.state = ssrContext.state || {};\n ssrContext.stateDefer = ssrContext.stateDefer || {};\n }\n onHydrated(fn) {\n this[SymbolOnHydrateds].push(fn);\n }\n onHydratePropHasMismatch(fn) {\n this[SymbolOnHydratePropHasMismatches].push(fn);\n }\n handleDirectOrOnHydrated(fn) {\n if (process.env.CLIENT && this.isRuntimeSsrPreHydration) {\n this.onHydrated(fn);\n } else {\n return fn();\n }\n }\n _onHydratePropHasMismatchDefault(el, key, clientValue, _vnode, _instance) {\n // expected\n let ignore = false;\n let expected;\n if (key === 'class') {\n ignore = true;\n if (clientValue !== undefined) {\n expected = normalizeClass(clientValue);\n el.setAttribute(key, expected);\n }\n } else if (key === 'style') {\n ignore = true;\n if (clientValue !== undefined) {\n expected = isString(clientValue) ? clientValue : stringifyStyle(normalizeStyle(clientValue));\n el.setAttribute(key, expected);\n }\n } else if (['id', 'name', 'for', 'd', 'aria-labelledby', 'aria-controls'].includes(key)) {\n ignore = true;\n if (clientValue !== undefined) {\n expected = String(clientValue);\n el.setAttribute(key, expected);\n }\n } else if (key === 'value') {\n ignore = true;\n if (clientValue !== undefined) {\n expected = String(clientValue);\n if (el.tagName === 'TEXTAREA') {\n el.value = expected;\n } else {\n el.setAttribute(key, expected);\n }\n }\n } else if (isBooleanAttr(key)) {\n ignore = true;\n if (clientValue !== undefined) {\n const expected = includeBooleanAttr(clientValue);\n if (expected) {\n el.setAttribute(key, '');\n } else {\n el.removeAttribute(key);\n }\n }\n } else if (el.getAttribute(`data-hydrate-ignore-${key}`) !== null) {\n ignore = true;\n if (clientValue !== undefined) {\n expected = String(clientValue);\n el.setAttribute(key, expected);\n }\n }\n if (!ignore) return {\n clientValue\n };\n return {\n ignore: true\n };\n }\n _hydrated() {\n if (!this.isRuntimeSsrPreHydration) return;\n // should be first\n this.isRuntimeSsrPreHydration = false;\n //\n this[SymbolInstanceUpdates].forEach(instance => {\n if (!instance.isUnmounted && instance.zova) {\n try {\n instance.update();\n } catch (err) {\n if (!err.message.includes(\"'insertBefore'\")) {\n throw err;\n }\n }\n }\n });\n this[SymbolInstanceUpdates] = [];\n //\n this[SymbolOnHydrateds].forEach(fn => fn());\n this[SymbolOnHydrateds] = [];\n //\n this[SymbolOnHydratePropHasMismatches] = [];\n }\n\n /** @internal */\n _hydratePropHasMismatch(el, key, clientValue, vnode, instance) {\n for (const fn of this[SymbolOnHydratePropHasMismatches]) {\n const res = fn(el, key, clientValue, vnode, instance);\n if (res.ignore) return res;\n clientValue = res.clientValue;\n }\n return {\n ignore: false,\n clientValue\n };\n }\n\n /** @internal */\n _hydratingInc() {\n ++this[SymbolHydratingCounter];\n }\n\n /** @internal */\n _hydratingDec() {\n if (--this[SymbolHydratingCounter] === 0) {\n this._hydrated();\n }\n }\n\n /** @internal */\n _hydratingInstanceRecord(instance) {\n if (!this[SymbolInstanceUpdates].includes(instance)) {\n this[SymbolInstanceUpdates].push(instance);\n return true;\n }\n return false;\n }\n\n /** @internal */\n _registerServerContext(currentContext) {\n this._serverContextRegister(currentContext);\n }\n\n /** @internal */\n _disposeServerContexts() {\n this._serverContextsDispose();\n }\n}","import { BeanSimple } from 'zova';\nimport { CtxSSR } from './lib/ssr.js';\nexport class MonkeySys extends BeanSimple {\n constructor(moduleSelf) {\n super();\n this._moduleSelf = void 0;\n this._sysSsrState = void 0;\n this._moduleSelf = moduleSelf;\n }\n async getSysSsrState() {\n if (!this._sysSsrState) {\n this._sysSsrState = await this.bean._getBean('a-ssr.sys.ssrState', false);\n }\n return this._sysSsrState;\n }\n async moduleLoading(module) {\n if (this._moduleSelf === module) return;\n await this.getSysSsrState();\n }\n async moduleLoaded(_module) {}\n async configLoaded(_module, _config) {}\n sysContextInitialize(ctx) {\n ctx.meta.$ssr = ctx.bean._newBeanSimple(CtxSSR, false);\n ctx.meta.$ssr.initialize();\n }\n}","var _dec, _dec2, _class;\nimport { \"BeanInfo\" as __z_BeanInfo } from \"zova\";\n// eslint-disable\n/** sys: begin */\nexport * from '../bean/sys.ssrState.js';\nimport 'zova';\n/** sys: end */\n/** sys: begin */\nimport { SysSsrState } from '../bean/sys.ssrState.js';\nimport 'zova';\n/** sys: end */\n/** config: begin */\nexport * from '../config/config.js';\n/** config: end */\n/** monkey: begin */\nexport * from '../monkey.js';\n/** monkey: end */\n/** monkeySys: begin */\nexport * from '../monkeySys.js';\n/** monkeySys: end */\n/** scope: begin */\nimport { BeanScopeBase } from 'zova';\nimport { Scope } from 'zova-module-a-bean';\nexport let ScopeModuleASsr = (_dec = Scope(), _dec2 = __z_BeanInfo({\n module: \"a-ssr\"\n}), _dec(_class = _dec2(_class = class ScopeModuleASsr extends BeanScopeBase {}) || _class) || _class);\nimport 'zova';\n\n/** scope: end */"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ssrMetaStore.d.ts","sourceRoot":"","sources":["../../src/lib/ssrMetaStore.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAQ,MAAM,MAAM,CAAC;AAExC,OAAO,KAAK,EAA8B,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAIzF,qBAAa,eAAgB,SAAQ,UAAU;IAC7C,OAAO,CAAC,SAAS,CAAa;IAC9B,OAAO,CAAC,kBAAkB,CAAC,CAAiB;IAC5C,OAAO,CAAC,WAAW,CAA+B;IAElD,SAAS,CAAC,QAAQ;IAoBlB,OAAO,CAAC,eAAe;IAevB,cAAc,CAAC,kBAAkB,EAAE,qBAAqB;IAIxD,iBAAiB,CAAC,kBAAkB,EAAE,qBAAqB;IAI3D,gBAAgB;IAUhB,OAAO,CAAC,iBAAiB;IAyBzB,OAAO,CAAC,iBAAiB;IA+HzB,OAAO,CAAC,mBAAmB;IAQ3B,OAAO,CAAC,wBAAwB;CAOjC"}
1
+ {"version":3,"file":"ssrMetaStore.d.ts","sourceRoot":"","sources":["../../src/lib/ssrMetaStore.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAQ,MAAM,MAAM,CAAC;AAExC,OAAO,KAAK,EAA8B,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAIzF,qBAAa,eAAgB,SAAQ,UAAU;IAC7C,OAAO,CAAC,SAAS,CAAa;IAC9B,OAAO,CAAC,kBAAkB,CAAC,CAAiB;IAC5C,OAAO,CAAC,WAAW,CAA+B;IAElD,SAAS,CAAC,QAAQ;IAoBlB,OAAO,CAAC,eAAe;IAevB,cAAc,CAAC,kBAAkB,EAAE,qBAAqB;IAIxD,iBAAiB,CAAC,kBAAkB,EAAE,qBAAqB;IAI3D,gBAAgB;IAUhB,OAAO,CAAC,iBAAiB;IAyBzB,OAAO,CAAC,iBAAiB;IAgIzB,OAAO,CAAC,mBAAmB;IAQ3B,OAAO,CAAC,wBAAwB;CAOjC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "zova-module-a-ssr",
3
- "version": "5.1.26",
4
- "gitHead": "1a39e8008e1b48001cfeff475ddd53a2a0d867c4",
3
+ "version": "5.1.30",
4
+ "gitHead": "930ba49377457e21ae394f86cc94d787dafbe327",
5
5
  "description": "",
6
6
  "keywords": [
7
7
  "Zova Module"
package/src/lib/ssr.ts CHANGED
@@ -193,7 +193,7 @@ export class CtxSSR extends BeanSimple {
193
193
  : stringifyStyle(normalizeStyle(clientValue));
194
194
  el.setAttribute(key, expected as string);
195
195
  }
196
- } else if (['id', 'name', 'for', 'd'].includes(key)) {
196
+ } else if (['id', 'name', 'for', 'd', 'aria-labelledby', 'aria-controls'].includes(key)) {
197
197
  ignore = true;
198
198
  if (clientValue !== undefined) {
199
199
  expected = String(clientValue);
@@ -176,11 +176,12 @@ export class CtxSSRMetaStore extends BeanSimple {
176
176
  });`;
177
177
  const ssr_local_themename = this.sys.config.ssr.cookie
178
178
  ? ''
179
- : "window.ssr_local_themename=window.ssr_load_local('themename');";
179
+ : `window.ssr_local_themename=window.ssr_load_local('themename','${this.sys.env.STYLE_DEFAULT_THEME}');`;
180
180
  ctx.endingHeadTags += `<script id="ssr-prefers-color-schema-dark">
181
- window.ssr_load_local=function(key){
181
+ window.ssr_load_local=function(key,defaultValue){
182
182
  const __ssr_local=localStorage.getItem(key);
183
- return __ssr_local?JSON.parse(__ssr_local):undefined;
183
+ const value=__ssr_local?JSON.parse(__ssr_local):undefined;
184
+ return value??defaultValue;
184
185
  };
185
186
  ${ssr_local_themedark}
186
187
  ${ssr_local_themename}