zova-module-a-router 5.1.32 → 5.1.34

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"sys.router.d.ts","sourceRoot":"","sources":["../../src/bean/sys.router.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oBAAoB,EACpB,6BAA6B,EAC7B,oCAAoC,EACpC,4BAA4B,EAC5B,MAAM,EACN,aAAa,EACd,MAAM,oBAAoB,CAAC;AAW5B,OAAO,EAAE,QAAQ,EAAoB,MAAM,MAAM,CAAC;AAIlD,OAAO,EAEL,qBAAqB,EACrB,eAAe,EACf,eAAe,EAChB,MAAM,oBAAoB,CAAC;AAG5B,MAAM,WAAW,SAAU,SAAQ,MAAM;CAAG;AAE5C,qBACa,SAAU,SAAQ,QAAQ;IACrC,OAAO,CAAC,aAAa,CAAS;IAE9B,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM;cAId,QAAQ;IASjB,YAAY,CAAC,OAAO,CAAC,EAAE,aAAa;IAoCpC,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,qBAAqB;IAK9D,WAAW,CAAC,CAAC,SAAS,MAAM,eAAe,EAChD,IAAI,EAAE,CAAC,EACP,OAAO,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,EAC5B,QAAQ,CAAC,EAAE,OAAO;IAQP,YAAY,CACvB,GAAG,EAAE,MAAM,EACX,QAAQ,CAAC,EAAE,OAAO,EAClB,YAAY,CAAC,EAAE,OAAO,GACrB,OAAO,CAAC,4BAA4B,GAAG,SAAS,CAAC;IAiB7C,cAAc,CACnB,EAAE,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;KAAE,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GACnF,OAAO;IAYH,qBAAqB,CAC1B,QAAQ,EAAE,MAAM,EAChB,YAAY,CAAC,EAAE,oCAAoC,GAClD,OAAO;IAmBG,WAAW,CAAC,QAAQ,EAAE,MAAM;IAiDzC,eAAe,CAAC,KAAK,EAAE,6BAA6B,GAAG,oBAAoB,GAAG,SAAS;IAIvF,gBAAgB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS;IAInE,YAAY,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO;IAIvD,WAAW,CAAC,CAAC,SAAS,MAAM,eAAe,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,MAAM;IAS3F,YAAY,CAAC,CAAC,SAAS,MAAM,eAAe,EAC1C,IAAI,EAAE,CAAC,EACP,OAAO,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,EAC5B,QAAQ,CAAC,EAAE,OAAO,GACjB,MAAM,GAAG,SAAS;IAoBrB,OAAO,CAAC,oBAAoB;IAQ5B,OAAO,CAAC,kBAAkB;IA2B1B,OAAO,CAAC,iBAAiB;IAezB,OAAO,CAAC,iBAAiB;IAQzB,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,cAAc;CA4EvB"}
1
+ {"version":3,"file":"sys.router.d.ts","sourceRoot":"","sources":["../../src/bean/sys.router.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oBAAoB,EACpB,6BAA6B,EAC7B,oCAAoC,EACpC,4BAA4B,EAC5B,MAAM,EACN,aAAa,EACd,MAAM,oBAAoB,CAAC;AAW5B,OAAO,EAAE,QAAQ,EAA+B,MAAM,MAAM,CAAC;AAI7D,OAAO,EAEL,qBAAqB,EACrB,eAAe,EACf,eAAe,EAChB,MAAM,oBAAoB,CAAC;AAG5B,MAAM,WAAW,SAAU,SAAQ,MAAM;CAAG;AAE5C,qBACa,SAAU,SAAQ,QAAQ;IACrC,OAAO,CAAC,aAAa,CAAS;IAE9B,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM;cAId,QAAQ;IASjB,YAAY,CAAC,OAAO,CAAC,EAAE,aAAa;IAoCpC,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,qBAAqB;IAK9D,WAAW,CAAC,CAAC,SAAS,MAAM,eAAe,EAChD,IAAI,EAAE,CAAC,EACP,OAAO,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,EAC5B,QAAQ,CAAC,EAAE,OAAO;IAQP,YAAY,CACvB,GAAG,EAAE,MAAM,EACX,QAAQ,CAAC,EAAE,OAAO,EAClB,YAAY,CAAC,EAAE,OAAO,GACrB,OAAO,CAAC,4BAA4B,GAAG,SAAS,CAAC;IAkB7C,cAAc,CACnB,EAAE,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;KAAE,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GACnF,OAAO;IAYH,qBAAqB,CAC1B,QAAQ,EAAE,MAAM,EAChB,YAAY,CAAC,EAAE,oCAAoC,GAClD,OAAO;IAmBG,WAAW,CAAC,QAAQ,EAAE,MAAM;IAiDzC,eAAe,CAAC,KAAK,EAAE,6BAA6B,GAAG,oBAAoB,GAAG,SAAS;IAIvF,gBAAgB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS;IAInE,YAAY,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO;IAIvD,WAAW,CAAC,CAAC,SAAS,MAAM,eAAe,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,MAAM;IAS3F,YAAY,CAAC,CAAC,SAAS,MAAM,eAAe,EAC1C,IAAI,EAAE,CAAC,EACP,OAAO,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,EAC5B,QAAQ,CAAC,EAAE,OAAO,GACjB,MAAM,GAAG,SAAS;IAoBrB,OAAO,CAAC,oBAAoB;IAQ5B,OAAO,CAAC,kBAAkB;IA2B1B,OAAO,CAAC,iBAAiB;IAezB,OAAO,CAAC,iBAAiB;IAQzB,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,cAAc;CA4EvB"}
package/dist/index.js CHANGED
@@ -129,7 +129,7 @@ var SysRouter = (_dec$5 = Sys(), _dec2$5 = BeanInfo({ module: "a-router" }), _de
129
129
  return absolute ? this.sys.util.getAbsoluteUrlFromPagePath(pagePath) : pagePath;
130
130
  }
131
131
  async resolveRoute(url, check404, checkAliasOf) {
132
- const pagePath = this.sys.util.getPagePathFromAbsoluteUrl(url);
132
+ const pagePath = isHttpUrl(url) ? this.sys.util.getPagePathFromAbsoluteUrl(url) : url;
133
133
  let route = await this.ensureRoute(pagePath);
134
134
  if (check404 && route.name === "$:/:catchAll(.*)*") return;
135
135
  if (checkAliasOf) {
@@ -601,12 +601,14 @@ var Monkey = class extends BeanSimple {
601
601
  return this._beanRouter;
602
602
  }
603
603
  async appInitialize() {
604
- const ssrState = this.ctx.meta.$ssr.state;
605
- if (process.env.SERVER && (ssrState.ssrProfile === void 0 || ssrState.ssrProfileOptions === void 0)) {
604
+ if (process.env.SERVER) {
606
605
  const pagePathFull = this.app.$getCurrentPagePath();
607
606
  if (pagePathFull) {
608
607
  const route = await (await this._getSysRouter()).resolveRoute(pagePathFull, true, false);
609
- if (route) this.ctx.meta.$ssr._setProfile(route.meta.ssrProfile, route.meta.ssrProfileOptions);
608
+ if (route) {
609
+ this.ctx.meta.$ssr._setProfile(route.meta.ssrProfile, route.meta.ssrProfileOptions, route.meta.locale);
610
+ this.ctx.meta.$ssr._setLocale(route);
611
+ }
610
612
  }
611
613
  }
612
614
  this.serviceRouterGuards = await this.bean._newBean(ServiceRouterGuards, false);
@@ -780,7 +782,7 @@ var MonkeySys = class extends BeanSimple {
780
782
  app.$getPagePathLogin = (returnTo, cause) => {
781
783
  const query = {};
782
784
  if (cause) query.cause = cause;
783
- const returnTo2 = returnTo === app.sys.env.ROUTER_PAGE_LOGIN ? void 0 : returnTo;
785
+ const returnTo2 = _fixReturnTo(app, returnTo);
784
786
  return app.$getPagePath(app.sys.env.ROUTER_PAGE_LOGIN, {
785
787
  query,
786
788
  returnTo: returnTo2
@@ -803,8 +805,8 @@ var MonkeySys = class extends BeanSimple {
803
805
  });
804
806
  };
805
807
  app.$gotoLogin = (returnTo, cause) => {
806
- if (!returnTo && cast(app.meta.$router.currentRoute)?.path === app.sys.env.ROUTER_PAGE_LOGIN) return;
807
- const returnTo2 = returnTo ?? app.$getCurrentPagePath();
808
+ const returnTo2 = _fixReturnTo(app, returnTo);
809
+ if (!returnTo2 && cast(app.meta.$router.currentRoute)?.path === app.sys.env.ROUTER_PAGE_LOGIN) return;
808
810
  const pagePath = app.$getPagePathLogin(returnTo2, cause);
809
811
  return app.$gotoPage(pagePath);
810
812
  };
@@ -831,6 +833,10 @@ var MonkeySys = class extends BeanSimple {
831
833
  };
832
834
  }
833
835
  };
836
+ function _fixReturnTo(app, returnTo) {
837
+ const returnTo2 = returnTo === false ? false : typeof returnTo === "string" ? returnTo : app.$getCurrentPagePath();
838
+ return returnTo2 === app.sys.env.ROUTER_PAGE_LOGIN ? false : returnTo2;
839
+ }
834
840
  //#endregion
835
841
  //#region src/.metadata/index.ts
836
842
  /** monkeySys: end */
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["RouterView","h","KeepAlive","Transition","BeanControllerBase","cast","pageRouteKey","routerViewKey","BeanRouterViewBase","__init__","bean","_setBean","$router","addRouterView","__dispose__","removeRouterView","backRoute","_route","forwardRoute","setPageMeta","_pageMeta","prepareRouteMeta","Error","getKeepAliveInclude","render","slots","default","component","routeMeta","route","vnode","Component","key","componentKey","zovaHostProviders","include","_createVNode","RouterView","h","cast","Controller","pageRouteKey","BeanRouterViewBase","ControllerRouterViewEmpty","_dec","_dec2","__z_BeanInfo","module","_class","__init__","render","slots","default","component","vnode","Component","zovaHostProviders","route","_createVNode"],"sources":["../src/model/pageData.ts","../src/lib/const.ts","../src/lib/utils.ts","../src/types/utils.ts","../src/bean/sys.router.ts","../src/bean/bean.router.ts","../src/bean/bean.routerGuardsBase.ts","../src/types/router.ts","../src/service/routerGuards.ts","../src/lib/routerViewBase.tsx","../src/component/routerViewEmpty/controller.tsx","../src/.metadata/component/routerViewEmpty.ts","../src/config/config.ts","../src/monkey.ts","../src/monkeySys.ts","../src/.metadata/index.ts"],"sourcesContent":["var _dec, _dec2, _class;\nimport { \"BeanInfo\" as __z_BeanInfo } from \"zova\";\nimport { BeanModelBase, Model } from 'zova-module-a-model';\nexport let ModelPageData = (_dec = Model(), _dec2 = __z_BeanInfo({\n module: \"a-router\"\n}), _dec(_class = _dec2(_class = class ModelPageData extends BeanModelBase {\n constructor(...args) {\n super(...args);\n this._pageDataInner = void 0;\n this.current = void 0;\n }\n async __init__() {\n if (process.env.SERVER) {\n const pagePath = this.$ssr.state.pagePath;\n if (pagePath) {\n this._pageDataInner = this.getPageData(pagePath);\n this._pageDataInner = this.$ssr.state.pageData;\n this.current = this._pageDataInner;\n }\n } else {\n if (this.$ssr.isRuntimeSsrPreHydration) {\n this.current = this.$ssr.state.pageData;\n } else {\n const route = this.$pageRoute;\n this.current = route ? this.getPageData(route.path) : undefined;\n }\n }\n }\n getPageData(pagePath) {\n return this.$useStateMem({\n queryKey: ['pageData', pagePath]\n });\n }\n}) || _class) || _class);","export const pageRouteKey = '$$pageRoute';\nexport const routerViewKey = '$$routerView';","import { routerViewLocationKey } from '@cabloy/vue-router';\nimport { inject } from 'vue';\nimport { pageRouteKey } from './const.js';\nexport function getRouteMatched(route) {\n let match = route.matched.find(item => item.aliasOf);\n if (match) {\n match = match.aliasOf;\n } else {\n match = route.matched[route.matched.length - 1];\n }\n return match;\n}\nexport function getRealRouteName(name) {\n if (!name) return undefined;\n name = String(name);\n if (name.startsWith('$:')) return undefined;\n return name;\n}\nexport function isRouterName(name) {\n return !!name && name.includes(':') && !name.includes('/');\n}\nexport function getPageRoute(ctx) {\n const route = ctx.bean._getBeanFromHost({\n name: pageRouteKey\n });\n return route;\n}\nexport function getCurrentRoute(ctx) {\n const route = ctx.util.instanceScope(() => {\n return inject(routerViewLocationKey);\n });\n return route;\n}\nexport const scrollBehavior = (to, _from, savedPosition) => {\n if (savedPosition) {\n return new Promise(resolve => {\n setTimeout(() => {\n // savedPosition = Object.assign({}, savedPosition, { behavior: 'smooth' });\n resolve(savedPosition);\n }, 100);\n });\n } else if (to.hash) {\n return new Promise(resolve => {\n setTimeout(() => {\n // resolve({ el: to.hash, behavior: 'smooth' });\n resolve({\n el: to.hash\n });\n }, 200);\n });\n } else {\n return {\n left: 0,\n top: 0\n };\n }\n};","export const SymbolRouterHistory = Symbol('SymbolRouterHistory');","var _dec, _dec2, _class;\nimport { \"BeanInfo\" as __z_BeanInfo } from \"zova\";\nimport * as ModuleInfo from '@cabloy/module-info';\nimport { combineParamsAndQuery } from '@cabloy/utils';\nimport { createMemoryHistory, createRouter, createWebHashHistory, createWebHistory } from '@cabloy/vue-router';\nimport { BeanBase, cast, deepExtend } from 'zova';\nimport { Sys } from 'zova-module-a-bean';\nimport { getCurrentRoute, getRealRouteName, getRouteMatched, isRouterName } from '../lib/utils.js';\nimport { SymbolRouterHistory } from '../types/utils.js';\nexport let SysRouter = (_dec = Sys(), _dec2 = __z_BeanInfo({\n module: \"a-router\"\n}), _dec(_class = _dec2(_class = class SysRouter extends BeanBase {\n constructor(...args) {\n super(...args);\n this._vueRouterSys = void 0;\n }\n get router() {\n return this._vueRouterSys;\n }\n __get__(prop) {\n return this._vueRouterSys && this._vueRouterSys[prop];\n }\n async __init__() {\n // create router\n this._vueRouterSys = this.createRouter();\n // config.routes\n this._loadConfigRoutes();\n // legacy routes\n this._loadLegacyRoutes();\n }\n createRouter(options) {\n options = Object.assign({}, options);\n // matcher\n if (!options.matcher) {\n options.matcher = this._vueRouterSys?.matcher;\n }\n // routes\n if (!options.routes) {\n if (!this._vueRouterSys) {\n options.routes = [];\n }\n }\n // scrollBehavior\n if (!options.scrollBehavior) {\n options.scrollBehavior = this.scope.config.scrollBehavior;\n }\n // history\n if (!options.history) {\n const createHistory = process.env.SERVER ? createMemoryHistory : this.sys.env.ROUTER_MODE === 'history' ? createWebHistory : createWebHashHistory;\n const routeBase = process.env.SERVER || this.sys.env.ROUTER_MODE === 'history' ? this.sys.env.APP_PUBLIC_PATH : undefined;\n options.history = createHistory(routeBase);\n }\n // create\n const router = createRouter(options);\n cast(router).__hasDevtools = true;\n router[SymbolRouterHistory] = options.history;\n return router;\n }\n createAsyncComponent(component) {\n if (typeof component !== 'string') return component;\n return this.sys.meta.component.createAsyncComponent(component);\n }\n getPagePath(path, options, absolute) {\n const query = options?.query;\n const params = this._normalizePageParams(options?.params);\n const pagePath = combineParamsAndQuery(path, {\n params,\n query\n });\n return absolute ? this.sys.util.getAbsoluteUrlFromPagePath(pagePath) : pagePath;\n }\n async resolveRoute(url, check404, checkAliasOf) {\n const pagePath = this.sys.util.getPagePathFromAbsoluteUrl(url);\n let route = await this.ensureRoute(pagePath);\n if (check404 && route.name === '$:/:catchAll(.*)*') return;\n // aliasOf\n if (checkAliasOf) {\n const matchItem = route.matched.find(item => item.aliasOf);\n if (matchItem) {\n route = matchItem.aliasOf;\n }\n // 404\n if (check404 && route.name === '$:/:catchAll(.*)*') return;\n }\n // ok\n return route;\n }\n checkPathValid(to) {\n const _name = to && typeof to === 'object' ? to.name : undefined;\n const _path = to && typeof to === 'object' ? to.name ?? to.path : to;\n // legacy\n if (this._findLegacyRoute(_name, _path)) return true;\n // general check\n if (!_path) return true;\n const moduleName = ModuleInfo.parseName(_path);\n if (!moduleName) return true;\n return this.sys.meta.module.exists(moduleName);\n }\n checkActiveOfFullPath(fullPath, currentRoute) {\n if (!currentRoute) {\n currentRoute = getCurrentRoute(this.ctx)?.value;\n }\n if (!currentRoute) return false;\n if (currentRoute.fullPath === fullPath) return true;\n if (!currentRoute.matched || currentRoute.matched.length === 0) return false;\n return currentRoute.matched.some(routeAlias => {\n const fullPathAlias = this.getPagePath(routeAlias.path, {\n params: currentRoute.params,\n query: currentRoute.query\n });\n return fullPathAlias === fullPath;\n });\n }\n async ensureRoute(pagePath) {\n // try to resolve, support alias route\n let route = this._vueRouterSys.resolve(pagePath);\n if (route && route.name !== '$:/:catchAll(.*)*') return route;\n // try to load module\n const moduleName = ModuleInfo.parseName(pagePath);\n if (moduleName) {\n if (this.sys.meta.module.exists(moduleName)) {\n const module = this.sys.meta.module.get(moduleName);\n if (!module) {\n await this.sys.meta.module.use(moduleName);\n // try to resolve again\n route = this._vueRouterSys.resolve(pagePath);\n }\n }\n }\n return route;\n }\n\n /** @internal */\n _registerRoutes(module) {\n if (!module.resource.routes) return;\n for (const route of module.resource.routes) {\n this._registerRoute(route, module);\n }\n }\n\n /** @internal */\n _findConfigRoute(name, path) {\n name = this.getRealRouteName(name);\n return name ? this.sys.config.routes.name[name] : this.sys.config.routes.path[path];\n }\n\n /** @internal */\n _findLegacyRoute(name, path) {\n const legacyRoutes = cast(this.sys.meta).legacyRoutes;\n if (!legacyRoutes) return;\n name = this.getRealRouteName(name);\n return legacyRoutes.find(item => {\n return name ? item.name === name : item.path === path;\n });\n }\n getRouteMatched(route) {\n return getRouteMatched(route);\n }\n getRealRouteName(name) {\n return getRealRouteName(name);\n }\n isRouterName(name) {\n return isRouterName(name);\n }\n resolveName(name, options) {\n const params = cast(options)?.params;\n const query = cast(options)?.query;\n return this._resolveNameOrPath(query, query => {\n const route = this.router.resolve({\n name,\n params,\n query\n });\n return route.fullPath;\n });\n }\n getAliasPath(name, options, absolute) {\n const alias = this.sys.config.routes.name[name]?.alias;\n if (!alias) return;\n const params = this._normalizePageParams(cast(options)?.params);\n const query = cast(options)?.query;\n const aliasName = `$alias:${name}`;\n const routeAlias = this._resolveNameOrPath(query, query => {\n const route = this.router.resolve({\n name: this.router.hasRoute(aliasName) ? aliasName : name,\n params,\n query\n });\n return route.fullPath;\n });\n const pagePath = routeAlias.startsWith('/__alias__') ? routeAlias.substring('/__alias__'.length) || '/' : routeAlias;\n return absolute ? this.sys.util.getAbsoluteUrlFromPagePath(pagePath) : pagePath;\n }\n _normalizePageParams(params) {\n const paramsLocale = cast(params)?.locale;\n if (paramsLocale === undefined) return params;\n const localeCurrent = paramsLocale === true ? this.app.meta.locale.current : paramsLocale;\n const locale = localeCurrent === this.sys.config.locale.default ? undefined : localeCurrent;\n return Object.assign({}, params, {\n locale\n });\n }\n _resolveNameOrPath(query, fn) {\n const query1 = {};\n const query2 = [];\n if (query) {\n for (const key in query) {\n const value = query[key];\n if (value && typeof value === 'object') {\n query2.push([key, value]);\n } else {\n query1[key] = value;\n }\n }\n }\n // resolve\n const fullPath = fn(query1);\n // query2\n const query2str = query2.map(([key, value]) => {\n return `${encodeURIComponent(key)}=${encodeURIComponent(JSON.stringify(value))}`;\n }).join('&');\n // join\n if (!query2str) return fullPath;\n const join = Object.keys(query1).length > 0 ? '&' : '?';\n return `${fullPath}${join}${query2str}`;\n }\n _loadConfigRoutes() {\n const routesPath = this.sys.config.routes.path;\n for (const key in routesPath) {\n const route = routesPath[key];\n if (!route) continue;\n this._loadConfigRoute({\n ...route,\n path: key,\n name: `$:${key}`\n });\n }\n const routesName = this.sys.config.routes.name;\n for (const key in routesName) {\n const route = routesName[key];\n if (!route) continue;\n this._loadConfigRoute({\n ...route,\n path: route.path || route.alias,\n name: key\n });\n }\n }\n _loadLegacyRoutes() {\n const legacyRoutes = cast(this.sys.meta).legacyRoutes;\n if (!legacyRoutes) return;\n for (const route of legacyRoutes) {\n this._registerRoute(route);\n }\n }\n _loadConfigRoute(route) {\n this.router.addRoute(route);\n }\n _registerRoute(route, module) {\n // path\n let path;\n if (route.path !== undefined) {\n if (!module || route.meta?.absolute === true) {\n path = route.path;\n } else {\n path = route.path ? `/${module.info.pid}/${module.info.name}/${route.path}` : `/${module.info.pid}/${module.info.name}`;\n }\n }\n // name\n let name;\n if (route.name) {\n if (!module || route.meta?.absolute === true) {\n name = String(route.name);\n } else {\n name = `${module.info.relativeName}:${String(route.name)}`;\n }\n }\n // config route\n const configRoute = name ? this.sys.config.routes.name[name] : this.sys.config.routes.path[path];\n if (configRoute) {\n route = deepExtend({}, route, configRoute);\n }\n // name alias\n if (name && configRoute?.alias) {\n const alias = Array.isArray(configRoute.alias) ? configRoute.alias[0] : configRoute.alias;\n // add extra route\n this.router.addRoute({\n name: `$alias:${name}`,\n path: `/__alias__${alias}`,\n redirect: ''\n });\n }\n // name\n if (!name) {\n name = `$:${path}`;\n }\n // meta\n const meta = route.meta;\n // component\n const component = route.component;\n // layout / routeData\n let layout = meta?.layout;\n let routeData;\n let routeNameParent;\n if (layout === false) {\n routeData = {\n ...route,\n name,\n path,\n component,\n meta\n };\n } else {\n if (layout === undefined || layout === 'default') {\n layout = this.sys.config.layout.component.default;\n } else if (layout === 'empty') {\n layout = this.sys.config.layout.component.empty;\n }\n routeNameParent = `$:${name}`;\n routeData = {\n name: routeNameParent,\n path,\n component: this.createAsyncComponent(layout),\n children: [{\n ...route,\n name,\n path: '',\n component,\n meta\n }]\n };\n }\n // force delete\n if (this.router.hasRoute(routeNameParent)) {\n this.router.removeRoute(routeNameParent);\n }\n if (this.router.hasRoute(name)) {\n this.router.removeRoute(name);\n }\n // add\n this.router.addRoute(routeData);\n }\n}) || _class) || _class);","var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _class, _class2, _descriptor, _descriptor2;\nfunction _initializerDefineProperty(e, i, r, l) { r && Object.defineProperty(e, i, { enumerable: r.enumerable, configurable: r.configurable, writable: r.writable, value: r.initializer ? r.initializer.call(l) : void 0 }); }\nfunction _applyDecoratedDescriptor(i, e, r, n, l) { var a = {}; return Object.keys(n).forEach(function (i) { a[i] = n[i]; }), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, (\"value\" in a || a.initializer) && (a.writable = !0), a = r.slice().reverse().reduce(function (r, n) { return n(i, e, r) || r; }, a), l && void 0 !== a.initializer && (a.value = a.initializer ? a.initializer.call(l) : void 0, a.initializer = void 0), void 0 === a.initializer ? (Object.defineProperty(i, e, a), null) : a; }\nfunction _initializerWarningHelper(r, e) { throw Error(\"Decorating class property failed. Please ensure that transform-class-properties is enabled and runs after the decorators transform.\"); }\nimport { \"BeanInfo\" as __z_BeanInfo } from \"zova\";\nimport { BeanBase, Use } from 'zova';\nimport { Bean } from 'zova-module-a-bean';\nimport { ModelPageData } from '../model/pageData.js';\nimport { SysRouter } from './sys.router.js';\nexport let BeanRouter = (_dec = Bean(), _dec2 = __z_BeanInfo({\n module: \"a-router\"\n}), _dec3 = Use(), _dec4 = Reflect.metadata(\"design:type\", typeof SysRouter === \"undefined\" ? Object : SysRouter), _dec5 = Use(), _dec6 = Reflect.metadata(\"design:type\", typeof ModelPageData === \"undefined\" ? Object : ModelPageData), _dec(_class = _dec2(_class = (_class2 = class BeanRouter extends BeanBase {\n constructor(...args) {\n super(...args);\n this._vueRouterApp = void 0;\n this._eventRouterGuards = [];\n this._routerViews = [];\n _initializerDefineProperty(this, \"$$sysRouter\", _descriptor, this);\n _initializerDefineProperty(this, \"$$modelPageData\", _descriptor2, this);\n }\n // for prepare pageData on server\n\n get router() {\n return this._vueRouterApp;\n }\n __dispose__() {\n for (const fn of this._eventRouterGuards) {\n fn();\n }\n }\n __get__(prop) {\n // SymbolRouter first\n const value = this._vueRouterApp?.[prop];\n if (value !== undefined) return value;\n return this.$$sysRouter?.[prop];\n }\n async __init__(mainRouter) {\n // create router\n this._vueRouterApp = this.$$sysRouter.createRouter();\n if (!mainRouter) {\n // emit event\n await this.app.meta.event.emit('a-router:routerGuards', this);\n }\n }\n addRouterView(routerView) {\n this._routerViews.push(routerView);\n }\n removeRouterView(routerView) {\n const index = this._routerViews.findIndex(item => item === routerView);\n if (index > -1) {\n this._routerViews.splice(index, 1);\n }\n }\n afterEachBackRoute(route) {\n for (const routerView of this._routerViews) {\n const res = routerView.backRoute(route);\n if (res) break;\n }\n }\n afterEachForwardRoute(route) {\n for (const routerView of this._routerViews) {\n const res = routerView.forwardRoute(route);\n if (res) break;\n }\n }\n beforeEach(guard) {\n const fn = this._vueRouterApp.beforeEach(guard);\n this._eventRouterGuards.push(fn);\n return fn;\n }\n beforeResolve(guard) {\n const fn = this._vueRouterApp.beforeResolve(guard);\n this._eventRouterGuards.push(fn);\n return fn;\n }\n afterEach(guard) {\n const fn = this._vueRouterApp.afterEach(guard);\n this._eventRouterGuards.push(fn);\n return fn;\n }\n onError(handler) {\n const fn = this._vueRouterApp.onError(handler);\n this._eventRouterGuards.push(fn);\n return fn;\n }\n setPageMeta(route, pageMeta) {\n for (const routerView of this._routerViews) {\n routerView.setPageMeta(route, pageMeta);\n }\n }\n}, _descriptor = _applyDecoratedDescriptor(_class2.prototype, \"$$sysRouter\", [_dec3, _dec4], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"$$modelPageData\", [_dec5, _dec6], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _class2)) || _class) || _class);","var _dec, _dec2, _dec3, _class;\nimport { \"BeanInfo\" as __z_BeanInfo } from \"zova\";\nimport { BeanBase, Virtual } from 'zova';\nimport { Bean } from 'zova-module-a-bean';\nexport let BeanRouterGuardsBase = (_dec = Bean(), _dec2 = Virtual(), _dec3 = __z_BeanInfo({\n module: \"a-router\"\n}), _dec(_class = _dec2(_class = _dec3(_class = class BeanRouterGuardsBase extends BeanBase {\n constructor(...args) {\n super(...args);\n this._eventRouterGuards = void 0;\n }\n async __init__() {\n this._eventRouterGuards = this.app.meta.event.on('a-router:routerGuards', async (router, next) => {\n this.onRouterGuards(router);\n return await next();\n });\n }\n __dispose__() {\n this.dispose();\n }\n dispose() {\n if (this._eventRouterGuards) {\n this._eventRouterGuards();\n }\n }\n onRouterGuards(_router) {}\n}) || _class) || _class) || _class);","import 'vue-router';\nexport let NavigationType = /*#__PURE__*/function (NavigationType) {\n NavigationType[\"pop\"] = \"pop\";\n NavigationType[\"push\"] = \"push\";\n return NavigationType;\n}({});\nexport let NavigationDirection = /*#__PURE__*/function (NavigationDirection) {\n NavigationDirection[\"back\"] = \"back\";\n NavigationDirection[\"forward\"] = \"forward\";\n NavigationDirection[\"unknown\"] = \"\";\n return NavigationDirection;\n}({});","var _dec, _dec2, _class;\nimport { \"BeanInfo\" as __z_BeanInfo } from \"zova\";\nimport * as ModuleInfo from '@cabloy/module-info';\nimport { Service } from 'zova-module-a-bean';\nimport { BeanRouterGuardsBase } from '../bean/bean.routerGuardsBase.js';\nimport { NavigationDirection, NavigationType } from '../types/router.js';\nexport let ServiceRouterGuards = (_dec = Service(), _dec2 = __z_BeanInfo({\n module: \"a-router\"\n}), _dec(_class = _dec2(_class = class ServiceRouterGuards extends BeanRouterGuardsBase {\n onRouterGuards(router) {\n const self = this;\n router.beforeEach(async to => {\n // match path\n let match = to.matched.find(item => item.aliasOf);\n if (match) {\n match = match.aliasOf;\n } else {\n match = to.matched[to.matched.length - 1];\n // prepareCheck\n if (!(await this._prepareCheck(match?.path, to.path))) {\n // redirect again\n return to.fullPath;\n }\n // legacy\n const legacyRoute = router._findLegacyRoute(match?.name, match?.path);\n if (legacyRoute) return;\n // alias\n const configRoute = router._findConfigRoute(match?.name, match?.path);\n const alias = configRoute?.alias;\n if (alias) {\n // force load module\n const resLoadModule = await this._forceLoadModule(router, match?.name, match?.path);\n if (resLoadModule && resLoadModule !== true) return resLoadModule;\n if (resLoadModule === false) return to.fullPath;\n const name = router.getRealRouteName(match?.name);\n if (name) {\n const routeAlias = router.getAliasPath(name, {\n params: to.params,\n query: to.query\n });\n return routeAlias || '/';\n } else {\n return {\n path: Array.isArray(alias) ? alias[0] : alias,\n params: to.params,\n query: to.query\n };\n }\n }\n }\n // force load module\n const resLoadModule = await this._forceLoadModule(router, match?.name, match?.path);\n if (resLoadModule === true) return;\n if (resLoadModule) return resLoadModule;\n // redirect again\n return to.fullPath;\n });\n router.afterEach(function (to, from, error) {\n if (error) return;\n const info = arguments[3];\n // from\n if (from.fullPath !== to.fullPath) {\n self._afterEachFrom(router, from, info);\n }\n // to\n router.afterEachForwardRoute(to);\n });\n }\n _afterEachFrom(router, from, info) {\n if (!info) return;\n const needBack = info.type === NavigationType.pop && info.direction === NavigationDirection.back || info.type === NavigationType.push && info.replace;\n if (!needBack) return;\n router.afterEachBackRoute(from);\n }\n\n // if 404 then check if module loaded\n async _prepareCheck(pathMatched, pathTo) {\n if (pathMatched === '/:catchAll(.*)*') {\n const moduleInfo = ModuleInfo.parseInfo(ModuleInfo.parseName(pathTo));\n if (moduleInfo && this.app.meta.module.exists(moduleInfo.relativeName) && !this.app.meta.module.get(moduleInfo.relativeName, false)) {\n // use module\n await this.app.meta.module.use(moduleInfo.relativeName);\n // redirect again\n return false;\n }\n }\n return true;\n }\n async _forceLoadModule(router, name, path) {\n const nameOrPath = router.getRealRouteName(name) || path;\n // module info\n const moduleInfo = ModuleInfo.parseInfo(ModuleInfo.parseName(nameOrPath));\n if (!moduleInfo) {\n // donothing\n return true;\n }\n const moduleName = moduleInfo.relativeName;\n // check if exists\n if (!this.app.meta.module.exists(moduleName)) return '/404';\n // check if loaded\n const module = this.app.meta.module.get(moduleName, false);\n if (module) return true;\n // use module\n await this.app.meta.module.use(moduleName);\n // means need load\n return false;\n }\n}) || _class) || _class);","import type { RouteLocationNormalizedLoadedGeneric } from '@cabloy/vue-router';\n\nimport { RouterView } from '@cabloy/vue-router';\nimport { h, KeepAlive, Transition } from 'vue';\nimport { BeanControllerBase, cast } from 'zova';\n\nimport type { IPageMeta } from '../types/pageMeta.js';\nimport type { IRouterViewSlotParams, IRouteViewRouteMeta } from '../types/routerView.js';\n\nimport { pageRouteKey, routerViewKey } from './const.js';\n\nexport interface IRouterViewPropsBase {}\n\nexport class BeanRouterViewBase extends BeanControllerBase implements IRouterViewPropsBase {\n protected async __init__() {\n this.bean._setBean(routerViewKey, this);\n this.$router.addRouterView(this);\n }\n\n protected __dispose__() {\n this.$router.removeRouterView(this);\n }\n\n public backRoute(_route: RouteLocationNormalizedLoadedGeneric) {\n return false;\n }\n\n public forwardRoute(_route: RouteLocationNormalizedLoadedGeneric) {\n return false;\n }\n\n public setPageMeta(_route: RouteLocationNormalizedLoadedGeneric, _pageMeta: IPageMeta) {}\n\n protected prepareRouteMeta(_route: RouteLocationNormalizedLoadedGeneric): IRouteViewRouteMeta {\n throw new Error('Not Implemented');\n }\n\n protected getKeepAliveInclude(): string[] | undefined {\n throw new Error('Not Implemented');\n }\n\n protected render() {\n const slots = {\n default: (component: IRouterViewSlotParams) => {\n const routeMeta = this.prepareRouteMeta(component.route);\n return h(Transition, null, {\n default: () => {\n const vnode = h(component.Component as any, {\n key: routeMeta.componentKey,\n });\n cast(vnode).zovaHostProviders = { [pageRouteKey]: component.route };\n return [\n h(\n KeepAlive,\n {\n include: this.getKeepAliveInclude(),\n },\n [vnode],\n ),\n ];\n },\n });\n },\n };\n return <RouterView v-slots={slots}></RouterView>;\n }\n}\n","import { RouterView } from '@cabloy/vue-router';\nimport { h } from 'vue';\nimport { cast } from 'zova';\nimport { Controller } from 'zova-module-a-bean';\n\nimport { pageRouteKey } from '../../lib/const.js';\nimport { BeanRouterViewBase } from '../../lib/routerViewBase.js';\n\n@Controller()\nexport class ControllerRouterViewEmpty extends BeanRouterViewBase {\n protected async __init__() {}\n\n protected render() {\n const slots = {\n default: component => {\n const vnode = h(component.Component);\n cast(vnode).zovaHostProviders = { [pageRouteKey]: component.route };\n return vnode;\n },\n };\n return <RouterView v-slots={slots}></RouterView>;\n }\n}\n","import { defineComponent } from 'vue';\nimport { prepareComponentOptions, useController } from 'zova';\nimport { ControllerRouterViewEmpty } from '../../component/routerViewEmpty/controller.jsx';\nexport const ZRouterViewEmpty = defineComponent(_props => {\n useController(ControllerRouterViewEmpty, undefined, undefined);\n return () => {};\n}, prepareComponentOptions());","import { scrollBehavior } from '../lib/utils.js';\nexport const config = _sys => {\n return {\n scrollBehavior\n };\n};","import * as ModuleInfo from '@cabloy/module-info';\nimport { shallowReactive } from 'vue';\nimport { BeanControllerPageBase, BeanSimple, cast, useComputed } from 'zova';\nimport { routerViewKey } from './lib/const.js';\nimport { getCurrentRoute, getPageRoute, getRealRouteName, getRouteMatched } from './lib/utils.js';\nimport { ServiceRouterGuards } from './service/routerGuards.js';\nimport { SymbolRouterHistory } from './types/utils.js';\nexport class Monkey extends BeanSimple {\n constructor(...args) {\n super(...args);\n this._beanRouter = void 0;\n this._sysRouter = void 0;\n this.serviceRouterGuards = void 0;\n }\n async _getSysRouter() {\n if (!this._sysRouter) {\n this._sysRouter = await this.sys.bean._getBean('a-router.sys.router', false);\n }\n return this._sysRouter;\n }\n async getBeanRouter() {\n if (!this._beanRouter) {\n // markReactive: true\n this._beanRouter = this.app.meta.$router = await this.bean._getBean('a-router.bean.router', true, true);\n }\n return this._beanRouter;\n }\n async appInitialize() {\n const ssrState = this.ctx.meta.$ssr.state;\n if (process.env.SERVER && (ssrState.ssrProfile === undefined || ssrState.ssrProfileOptions === undefined)) {\n const pagePathFull = this.app.$getCurrentPagePath();\n if (pagePathFull) {\n const sysRouter = await this._getSysRouter();\n const route = await sysRouter.resolveRoute(pagePathFull, true, false);\n if (route) {\n this.ctx.meta.$ssr._setProfile(route.meta.ssrProfile, route.meta.ssrProfileOptions);\n }\n }\n }\n // router\n this.serviceRouterGuards = await this.bean._newBean(ServiceRouterGuards, false);\n // ssr errorHandler\n if (process.env.CLIENT) {\n this._ssrErrorHandler();\n }\n }\n async appInitialized() {\n const beanRouter = await this.getBeanRouter();\n // emit event\n await this.app.meta.event.emit('a-router:routerGuards', beanRouter);\n }\n appClose() {\n if (this.serviceRouterGuards) {\n this.serviceRouterGuards.dispose();\n }\n }\n async appReady() {\n const beanRouter = await this.getBeanRouter();\n // pagePath\n if (process.env.CLIENT && this.ctx.meta.$ssr.isRuntimeSsrPreHydration) {\n const pagePathFull = this.ctx.meta.$ssr.state.pagePathFull;\n if (pagePathFull) {\n const routerHistory = beanRouter.router[SymbolRouterHistory];\n routerHistory.push(pagePathFull);\n }\n }\n // use router\n this.app.vue.use(beanRouter);\n // ssr\n if (process.env.SERVER) {\n // push\n const pagePath = this.app.$getCurrentPagePath();\n beanRouter.push(pagePath);\n await beanRouter.isReady();\n } else if (process.env.CLIENT && this.ctx.meta.$ssr.isRuntimeSsrPreHydration) {\n await beanRouter.isReady();\n }\n }\n async beanInit(bean, beanInstance) {\n bean.defineProperty(beanInstance, '$router', {\n enumerable: false,\n configurable: true,\n get() {\n return bean._getBeanFromHost('a-router.bean.router');\n }\n });\n bean.defineProperty(beanInstance, '$routerView', {\n enumerable: false,\n configurable: true,\n get() {\n return bean._getBeanFromHost({\n name: routerViewKey\n });\n }\n });\n bean.defineProperty(beanInstance, '$pageRoute', {\n enumerable: false,\n configurable: true,\n get() {\n return useComputed(() => {\n return getPageRoute(cast(bean).ctx);\n });\n }\n });\n bean.defineProperty(beanInstance, '$currentRoute', {\n enumerable: false,\n configurable: true,\n get() {\n return useComputed(() => {\n return getCurrentRoute(cast(bean).ctx);\n });\n }\n });\n }\n controllerDataPrepare(controllerData, ctx) {\n controllerData.context.route = getPageRoute(ctx);\n }\n controllerDataInit(controllerData, controller) {\n // only for controller page\n if (!(controller instanceof BeanControllerPageBase)) return;\n const route = controllerData.context.route;\n this._initControllerRoute(route, controller);\n }\n controllerDataUpdate(controller) {\n // only for controller page\n if (!(controller instanceof BeanControllerPageBase)) return;\n const route = getPageRoute(cast(cast(controller).ctx));\n this._initControllerRoute(route, controller);\n }\n _initControllerRoute(route, controller) {\n if (!route) return;\n const routeMatched = getRouteMatched(route);\n if (!routeMatched) return;\n // check if the same\n if (controller.$routeMatched && !this._checkIfRouteSame(routeMatched, controller.$routeMatched)) return;\n // check if changed\n const changed = !controller.$route || controller.$route.fullPath !== route.fullPath;\n if (!changed) return;\n controller.$route = route;\n controller.$routeMatched = routeMatched;\n // update $params/$query\n const routeName = getRealRouteName(routeMatched.name);\n const schemaKey = routeName || String(routeMatched.path);\n let schemas;\n const moduleInfo = ModuleInfo.parseInfo(ModuleInfo.parseName(schemaKey));\n if (!moduleInfo) {\n // do nothing\n return;\n }\n if (!this.app.meta.module.exists(moduleInfo.relativeName)) {\n // do nothing\n return;\n }\n const module = this.app.meta.module.get(moduleInfo.relativeName);\n if (routeName) {\n schemas = module.resource.pageNameSchemas?.[schemaKey];\n } else {\n schemas = module.resource.pagePathSchemas?.[schemaKey];\n }\n if (schemas?.params) {\n const params = schemas.params.parse(route.params);\n if (!controller.$params) {\n controller.$params = process.env.SERVER ? params : shallowReactive(params);\n } else {\n // hold the same $params ref\n Object.assign(controller.$params, params);\n }\n }\n if (schemas?.query) {\n const query = schemas.query.parse(route.query);\n if (!controller.$query) {\n controller.$query = process.env.SERVER ? query : shallowReactive(query);\n } else {\n // hold the same $query ref\n Object.assign(controller.$query, query);\n }\n }\n }\n _checkIfRouteSame(route1, route2) {\n return route1.name && route1.name === route2.name || route1.path === route2.path;\n }\n _ssrErrorHandler() {\n if (!process.env.CLIENT) return;\n this.app.meta.event.on('app:errorHandler', (data, next) => {\n const err = next();\n if (!err || !(err instanceof Error)) return err;\n return this._errorHandlerDefaultClient(err, data);\n });\n }\n _errorHandlerDefaultClient(err, _data) {\n if (!process.env.CLIENT) return err;\n // client\n if ([301, 302].includes(Number(err.code))) {\n this.app.$gotoPage(err.pagePath);\n return undefined;\n }\n // COMPONENT_UNMOUNTED\n if (err.code === 600) {\n // do nothing\n return undefined;\n }\n // 401\n if (err.code === 401) {\n this.app.$gotoLogin();\n return undefined;\n }\n // not handled\n return err;\n }\n}","import { BeanSimple, cast, isHttpUrl } from 'zova';\nexport class MonkeySys extends BeanSimple {\n constructor(moduleSelf) {\n super();\n this._moduleSelf = void 0;\n this._sysRouter = void 0;\n this._moduleSelf = moduleSelf;\n }\n async getSysRouter() {\n if (!this._sysRouter) {\n this._sysRouter = await this.sys.bean._getBean('a-router.sys.router', false);\n }\n return this._sysRouter;\n }\n async moduleLoading(module) {\n if (this._moduleSelf === module) return;\n if (!module.resource.routes) return;\n const sysRouter = await this.getSysRouter();\n sysRouter._registerRoutes(module);\n }\n async moduleLoaded(_module) {}\n async configLoaded(_module, _config) {}\n sysApplicationInitialize(app) {\n app.$redirect = (pagePath, status) => {\n const error = new Error();\n error.code = status ?? 302;\n if (isHttpUrl(pagePath)) {\n error.pagePath = pagePath;\n error.url = pagePath;\n } else {\n error.pagePath = pagePath;\n error.url = app.sys.util.getAbsoluteUrlFromPagePath(pagePath, true);\n }\n error.message = process.env.SERVER ? error.url : error.pagePath;\n throw error;\n };\n app.$getPagePath = (pagePath, options) => {\n const query = {\n ...options?.query\n };\n // returnTo\n if (options?.returnTo) {\n const returnTo = typeof options.returnTo === 'string' ? options.returnTo : app.$getCurrentPagePath();\n if (returnTo !== app.$getPagePathHome()) {\n query[app.sys.env.ROUTER_KEY_RETURNTO] = returnTo;\n }\n }\n return app.meta.$router.getPagePath(pagePath, {\n params: options?.params,\n query\n });\n };\n app.$getPagePathLogin = (returnTo, cause) => {\n const query = {};\n if (cause) {\n query.cause = cause;\n }\n const returnTo2 = returnTo === app.sys.env.ROUTER_PAGE_LOGIN ? undefined : returnTo;\n return app.$getPagePath(app.sys.env.ROUTER_PAGE_LOGIN, {\n query,\n returnTo: returnTo2\n });\n };\n app.$getPagePathAccessDenied = () => {\n return app.$getPagePath('/home/base/errorAccessDenied');\n };\n app.$gotoPage = (pagePath, options) => {\n pagePath = app.$getPagePath(pagePath, options);\n // redirect\n if (process.env.SERVER || options?.forceRedirect) {\n return app.$redirect(pagePath);\n }\n // replace\n if (isHttpUrl(pagePath)) {\n window.location[options?.replace ? 'replace' : 'assign'](pagePath);\n } else {\n return app.meta.$router[options?.replace ? 'replace' : 'push'](pagePath);\n }\n };\n app.$gotoHome = options => {\n const pagePath = app.$getPagePathHome(options);\n return app.$gotoPage(pagePath, {\n ...options,\n params: undefined\n });\n };\n app.$gotoLogin = (returnTo, cause) => {\n if (!returnTo && cast(app.meta.$router.currentRoute)?.path === app.sys.env.ROUTER_PAGE_LOGIN) {\n return;\n }\n const returnTo2 = returnTo ?? app.$getCurrentPagePath();\n const pagePath = app.$getPagePathLogin(returnTo2, cause);\n return app.$gotoPage(pagePath);\n };\n app.$gotoAccessDenied = () => {\n const pagePath = app.$getPagePathAccessDenied();\n if (cast(app.meta.$router.currentRoute)?.path === pagePath) return;\n return app.$gotoPage(pagePath, {\n replace: true\n });\n };\n app.$gotoReturnTo = returnTo => {\n const pagePath = app.$getReturnTo(returnTo);\n return app.$gotoPage(pagePath, {\n replace: true\n });\n };\n app.$getReturnTo = returnTo => {\n // not use ??\n const pagePath = returnTo || cast(app.meta.$router.currentRoute)?.query?.[app.sys.env.ROUTER_KEY_RETURNTO] || app.$getPagePathHome();\n return pagePath;\n };\n app.$getCurrentPagePath = () => {\n if (process.env.SERVER) {\n return app.ctx.meta.$ssr.state.pagePathFull ?? app.sys.util.getPagePathFromAbsoluteUrl(app.ctx.meta.$ssr.context.req.url);\n }\n return cast(app.meta.$router.currentRoute)?.fullPath;\n };\n app.$getPagePathHome = options => {\n let params = options?.params;\n if (params?.locale === undefined) {\n params = Object.assign({}, params, {\n locale: true\n });\n }\n // not handle options?.query\n return app.meta.$router.getPagePath(app.sys.env.ROUTER_PAGE_HOME, {\n params\n });\n };\n }\n}","var _dec, _dec2, _class;\nimport { \"BeanInfo\" as __z_BeanInfo } from \"zova\";\n// eslint-disable\n/** model: begin */\nexport * from '../model/pageData.js';\nimport 'zova-module-a-model';\n/** model: end */\n/** model: begin */\nimport { ModelPageData } from '../model/pageData.js';\nimport 'zova';\n/** model: end */\n/** sys: begin */\nexport * from '../bean/sys.router.js';\nimport 'zova';\n/** sys: end */\n/** sys: begin */\nimport { SysRouter } from '../bean/sys.router.js';\nimport 'zova';\n/** sys: end */\n/** bean: begin */\nexport * from '../bean/bean.router.js';\nexport * from '../bean/bean.routerGuardsBase.js';\nimport 'zova';\n/** bean: end */\n/** bean: begin */\nimport { BeanRouter } from '../bean/bean.router.js';\nimport 'zova';\n/** bean: end */\n/** service: begin */\nexport * from '../service/routerGuards.js';\nimport 'zova-module-a-bean';\n/** service: end */\n/** service: begin */\nimport { ServiceRouterGuards } from '../service/routerGuards.js';\nimport 'zova';\n/** service: end */\n/** controller: begin */\nexport * from '../component/routerViewEmpty/controller.jsx';\nimport 'zova';\n/** controller: end */\n/** controller: begin */\nimport { ControllerRouterViewEmpty } from '../component/routerViewEmpty/controller.jsx';\nimport 'zova';\n/** controller: end */\n\n/** components: begin */\nexport * from './component/routerViewEmpty.js';\nimport { ZRouterViewEmpty } from './component/routerViewEmpty.js';\nexport const components = {\n 'routerViewEmpty': ZRouterViewEmpty\n};\nimport 'zova';\n/** components: 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 ScopeModuleARouter = (_dec = Scope(), _dec2 = __z_BeanInfo({\n module: \"a-router\"\n}), _dec(_class = _dec2(_class = class ScopeModuleARouter extends BeanScopeBase {}) || _class) || _class);\nimport 'zova';\n\n/** scope: end */"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["RouterView","h","KeepAlive","Transition","BeanControllerBase","cast","pageRouteKey","routerViewKey","BeanRouterViewBase","__init__","bean","_setBean","$router","addRouterView","__dispose__","removeRouterView","backRoute","_route","forwardRoute","setPageMeta","_pageMeta","prepareRouteMeta","Error","getKeepAliveInclude","render","slots","default","component","routeMeta","route","vnode","Component","key","componentKey","zovaHostProviders","include","_createVNode","RouterView","h","cast","Controller","pageRouteKey","BeanRouterViewBase","ControllerRouterViewEmpty","_dec","_dec2","__z_BeanInfo","module","_class","__init__","render","slots","default","component","vnode","Component","zovaHostProviders","route","_createVNode"],"sources":["../src/model/pageData.ts","../src/lib/const.ts","../src/lib/utils.ts","../src/types/utils.ts","../src/bean/sys.router.ts","../src/bean/bean.router.ts","../src/bean/bean.routerGuardsBase.ts","../src/types/router.ts","../src/service/routerGuards.ts","../src/lib/routerViewBase.tsx","../src/component/routerViewEmpty/controller.tsx","../src/.metadata/component/routerViewEmpty.ts","../src/config/config.ts","../src/monkey.ts","../src/monkeySys.ts","../src/.metadata/index.ts"],"sourcesContent":["var _dec, _dec2, _class;\nimport { \"BeanInfo\" as __z_BeanInfo } from \"zova\";\nimport { BeanModelBase, Model } from 'zova-module-a-model';\nexport let ModelPageData = (_dec = Model(), _dec2 = __z_BeanInfo({\n module: \"a-router\"\n}), _dec(_class = _dec2(_class = class ModelPageData extends BeanModelBase {\n constructor(...args) {\n super(...args);\n this._pageDataInner = void 0;\n this.current = void 0;\n }\n async __init__() {\n if (process.env.SERVER) {\n const pagePath = this.$ssr.state.pagePath;\n if (pagePath) {\n this._pageDataInner = this.getPageData(pagePath);\n this._pageDataInner = this.$ssr.state.pageData;\n this.current = this._pageDataInner;\n }\n } else {\n if (this.$ssr.isRuntimeSsrPreHydration) {\n this.current = this.$ssr.state.pageData;\n } else {\n const route = this.$pageRoute;\n this.current = route ? this.getPageData(route.path) : undefined;\n }\n }\n }\n getPageData(pagePath) {\n return this.$useStateMem({\n queryKey: ['pageData', pagePath]\n });\n }\n}) || _class) || _class);","export const pageRouteKey = '$$pageRoute';\nexport const routerViewKey = '$$routerView';","import { routerViewLocationKey } from '@cabloy/vue-router';\nimport { inject } from 'vue';\nimport { pageRouteKey } from './const.js';\nexport function getRouteMatched(route) {\n let match = route.matched.find(item => item.aliasOf);\n if (match) {\n match = match.aliasOf;\n } else {\n match = route.matched[route.matched.length - 1];\n }\n return match;\n}\nexport function getRealRouteName(name) {\n if (!name) return undefined;\n name = String(name);\n if (name.startsWith('$:')) return undefined;\n return name;\n}\nexport function isRouterName(name) {\n return !!name && name.includes(':') && !name.includes('/');\n}\nexport function getPageRoute(ctx) {\n const route = ctx.bean._getBeanFromHost({\n name: pageRouteKey\n });\n return route;\n}\nexport function getCurrentRoute(ctx) {\n const route = ctx.util.instanceScope(() => {\n return inject(routerViewLocationKey);\n });\n return route;\n}\nexport const scrollBehavior = (to, _from, savedPosition) => {\n if (savedPosition) {\n return new Promise(resolve => {\n setTimeout(() => {\n // savedPosition = Object.assign({}, savedPosition, { behavior: 'smooth' });\n resolve(savedPosition);\n }, 100);\n });\n } else if (to.hash) {\n return new Promise(resolve => {\n setTimeout(() => {\n // resolve({ el: to.hash, behavior: 'smooth' });\n resolve({\n el: to.hash\n });\n }, 200);\n });\n } else {\n return {\n left: 0,\n top: 0\n };\n }\n};","export const SymbolRouterHistory = Symbol('SymbolRouterHistory');","var _dec, _dec2, _class;\nimport { \"BeanInfo\" as __z_BeanInfo } from \"zova\";\nimport * as ModuleInfo from '@cabloy/module-info';\nimport { combineParamsAndQuery } from '@cabloy/utils';\nimport { createMemoryHistory, createRouter, createWebHashHistory, createWebHistory } from '@cabloy/vue-router';\nimport { BeanBase, cast, deepExtend, isHttpUrl } from 'zova';\nimport { Sys } from 'zova-module-a-bean';\nimport { getCurrentRoute, getRealRouteName, getRouteMatched, isRouterName } from '../lib/utils.js';\nimport { SymbolRouterHistory } from '../types/utils.js';\nexport let SysRouter = (_dec = Sys(), _dec2 = __z_BeanInfo({\n module: \"a-router\"\n}), _dec(_class = _dec2(_class = class SysRouter extends BeanBase {\n constructor(...args) {\n super(...args);\n this._vueRouterSys = void 0;\n }\n get router() {\n return this._vueRouterSys;\n }\n __get__(prop) {\n return this._vueRouterSys && this._vueRouterSys[prop];\n }\n async __init__() {\n // create router\n this._vueRouterSys = this.createRouter();\n // config.routes\n this._loadConfigRoutes();\n // legacy routes\n this._loadLegacyRoutes();\n }\n createRouter(options) {\n options = Object.assign({}, options);\n // matcher\n if (!options.matcher) {\n options.matcher = this._vueRouterSys?.matcher;\n }\n // routes\n if (!options.routes) {\n if (!this._vueRouterSys) {\n options.routes = [];\n }\n }\n // scrollBehavior\n if (!options.scrollBehavior) {\n options.scrollBehavior = this.scope.config.scrollBehavior;\n }\n // history\n if (!options.history) {\n const createHistory = process.env.SERVER ? createMemoryHistory : this.sys.env.ROUTER_MODE === 'history' ? createWebHistory : createWebHashHistory;\n const routeBase = process.env.SERVER || this.sys.env.ROUTER_MODE === 'history' ? this.sys.env.APP_PUBLIC_PATH : undefined;\n options.history = createHistory(routeBase);\n }\n // create\n const router = createRouter(options);\n cast(router).__hasDevtools = true;\n router[SymbolRouterHistory] = options.history;\n return router;\n }\n createAsyncComponent(component) {\n if (typeof component !== 'string') return component;\n return this.sys.meta.component.createAsyncComponent(component);\n }\n getPagePath(path, options, absolute) {\n const query = options?.query;\n const params = this._normalizePageParams(options?.params);\n const pagePath = combineParamsAndQuery(path, {\n params,\n query\n });\n return absolute ? this.sys.util.getAbsoluteUrlFromPagePath(pagePath) : pagePath;\n }\n async resolveRoute(url, check404, checkAliasOf) {\n // url: should not has APP_PUBLIC_PATH prefix when not http url\n const pagePath = isHttpUrl(url) ? this.sys.util.getPagePathFromAbsoluteUrl(url) : url;\n let route = await this.ensureRoute(pagePath);\n if (check404 && route.name === '$:/:catchAll(.*)*') return;\n // aliasOf\n if (checkAliasOf) {\n const matchItem = route.matched.find(item => item.aliasOf);\n if (matchItem) {\n route = matchItem.aliasOf;\n }\n // 404\n if (check404 && route.name === '$:/:catchAll(.*)*') return;\n }\n // ok\n return route;\n }\n checkPathValid(to) {\n const _name = to && typeof to === 'object' ? to.name : undefined;\n const _path = to && typeof to === 'object' ? to.name ?? to.path : to;\n // legacy\n if (this._findLegacyRoute(_name, _path)) return true;\n // general check\n if (!_path) return true;\n const moduleName = ModuleInfo.parseName(_path);\n if (!moduleName) return true;\n return this.sys.meta.module.exists(moduleName);\n }\n checkActiveOfFullPath(fullPath, currentRoute) {\n if (!currentRoute) {\n currentRoute = getCurrentRoute(this.ctx)?.value;\n }\n if (!currentRoute) return false;\n if (currentRoute.fullPath === fullPath) return true;\n if (!currentRoute.matched || currentRoute.matched.length === 0) return false;\n return currentRoute.matched.some(routeAlias => {\n const fullPathAlias = this.getPagePath(routeAlias.path, {\n params: currentRoute.params,\n query: currentRoute.query\n });\n return fullPathAlias === fullPath;\n });\n }\n async ensureRoute(pagePath) {\n // try to resolve, support alias route\n let route = this._vueRouterSys.resolve(pagePath);\n if (route && route.name !== '$:/:catchAll(.*)*') return route;\n // try to load module\n const moduleName = ModuleInfo.parseName(pagePath);\n if (moduleName) {\n if (this.sys.meta.module.exists(moduleName)) {\n const module = this.sys.meta.module.get(moduleName);\n if (!module) {\n await this.sys.meta.module.use(moduleName);\n // try to resolve again\n route = this._vueRouterSys.resolve(pagePath);\n }\n }\n }\n return route;\n }\n\n /** @internal */\n _registerRoutes(module) {\n if (!module.resource.routes) return;\n for (const route of module.resource.routes) {\n this._registerRoute(route, module);\n }\n }\n\n /** @internal */\n _findConfigRoute(name, path) {\n name = this.getRealRouteName(name);\n return name ? this.sys.config.routes.name[name] : this.sys.config.routes.path[path];\n }\n\n /** @internal */\n _findLegacyRoute(name, path) {\n const legacyRoutes = cast(this.sys.meta).legacyRoutes;\n if (!legacyRoutes) return;\n name = this.getRealRouteName(name);\n return legacyRoutes.find(item => {\n return name ? item.name === name : item.path === path;\n });\n }\n getRouteMatched(route) {\n return getRouteMatched(route);\n }\n getRealRouteName(name) {\n return getRealRouteName(name);\n }\n isRouterName(name) {\n return isRouterName(name);\n }\n resolveName(name, options) {\n const params = cast(options)?.params;\n const query = cast(options)?.query;\n return this._resolveNameOrPath(query, query => {\n const route = this.router.resolve({\n name,\n params,\n query\n });\n return route.fullPath;\n });\n }\n getAliasPath(name, options, absolute) {\n const alias = this.sys.config.routes.name[name]?.alias;\n if (!alias) return;\n const params = this._normalizePageParams(cast(options)?.params);\n const query = cast(options)?.query;\n const aliasName = `$alias:${name}`;\n const routeAlias = this._resolveNameOrPath(query, query => {\n const route = this.router.resolve({\n name: this.router.hasRoute(aliasName) ? aliasName : name,\n params,\n query\n });\n return route.fullPath;\n });\n const pagePath = routeAlias.startsWith('/__alias__') ? routeAlias.substring('/__alias__'.length) || '/' : routeAlias;\n return absolute ? this.sys.util.getAbsoluteUrlFromPagePath(pagePath) : pagePath;\n }\n _normalizePageParams(params) {\n const paramsLocale = cast(params)?.locale;\n if (paramsLocale === undefined) return params;\n const localeCurrent = paramsLocale === true ? this.app.meta.locale.current : paramsLocale;\n const locale = localeCurrent === this.sys.config.locale.default ? undefined : localeCurrent;\n return Object.assign({}, params, {\n locale\n });\n }\n _resolveNameOrPath(query, fn) {\n const query1 = {};\n const query2 = [];\n if (query) {\n for (const key in query) {\n const value = query[key];\n if (value && typeof value === 'object') {\n query2.push([key, value]);\n } else {\n query1[key] = value;\n }\n }\n }\n // resolve\n const fullPath = fn(query1);\n // query2\n const query2str = query2.map(([key, value]) => {\n return `${encodeURIComponent(key)}=${encodeURIComponent(JSON.stringify(value))}`;\n }).join('&');\n // join\n if (!query2str) return fullPath;\n const join = Object.keys(query1).length > 0 ? '&' : '?';\n return `${fullPath}${join}${query2str}`;\n }\n _loadConfigRoutes() {\n const routesPath = this.sys.config.routes.path;\n for (const key in routesPath) {\n const route = routesPath[key];\n if (!route) continue;\n this._loadConfigRoute({\n ...route,\n path: key,\n name: `$:${key}`\n });\n }\n const routesName = this.sys.config.routes.name;\n for (const key in routesName) {\n const route = routesName[key];\n if (!route) continue;\n this._loadConfigRoute({\n ...route,\n path: route.path || route.alias,\n name: key\n });\n }\n }\n _loadLegacyRoutes() {\n const legacyRoutes = cast(this.sys.meta).legacyRoutes;\n if (!legacyRoutes) return;\n for (const route of legacyRoutes) {\n this._registerRoute(route);\n }\n }\n _loadConfigRoute(route) {\n this.router.addRoute(route);\n }\n _registerRoute(route, module) {\n // path\n let path;\n if (route.path !== undefined) {\n if (!module || route.meta?.absolute === true) {\n path = route.path;\n } else {\n path = route.path ? `/${module.info.pid}/${module.info.name}/${route.path}` : `/${module.info.pid}/${module.info.name}`;\n }\n }\n // name\n let name;\n if (route.name) {\n if (!module || route.meta?.absolute === true) {\n name = String(route.name);\n } else {\n name = `${module.info.relativeName}:${String(route.name)}`;\n }\n }\n // config route\n const configRoute = name ? this.sys.config.routes.name[name] : this.sys.config.routes.path[path];\n if (configRoute) {\n route = deepExtend({}, route, configRoute);\n }\n // name alias\n if (name && configRoute?.alias) {\n const alias = Array.isArray(configRoute.alias) ? configRoute.alias[0] : configRoute.alias;\n // add extra route\n this.router.addRoute({\n name: `$alias:${name}`,\n path: `/__alias__${alias}`,\n redirect: ''\n });\n }\n // name\n if (!name) {\n name = `$:${path}`;\n }\n // meta\n const meta = route.meta;\n // component\n const component = route.component;\n // layout / routeData\n let layout = meta?.layout;\n let routeData;\n let routeNameParent;\n if (layout === false) {\n routeData = {\n ...route,\n name,\n path,\n component,\n meta\n };\n } else {\n if (layout === undefined || layout === 'default') {\n layout = this.sys.config.layout.component.default;\n } else if (layout === 'empty') {\n layout = this.sys.config.layout.component.empty;\n }\n routeNameParent = `$:${name}`;\n routeData = {\n name: routeNameParent,\n path,\n component: this.createAsyncComponent(layout),\n children: [{\n ...route,\n name,\n path: '',\n component,\n meta\n }]\n };\n }\n // force delete\n if (this.router.hasRoute(routeNameParent)) {\n this.router.removeRoute(routeNameParent);\n }\n if (this.router.hasRoute(name)) {\n this.router.removeRoute(name);\n }\n // add\n this.router.addRoute(routeData);\n }\n}) || _class) || _class);","var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _class, _class2, _descriptor, _descriptor2;\nfunction _initializerDefineProperty(e, i, r, l) { r && Object.defineProperty(e, i, { enumerable: r.enumerable, configurable: r.configurable, writable: r.writable, value: r.initializer ? r.initializer.call(l) : void 0 }); }\nfunction _applyDecoratedDescriptor(i, e, r, n, l) { var a = {}; return Object.keys(n).forEach(function (i) { a[i] = n[i]; }), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, (\"value\" in a || a.initializer) && (a.writable = !0), a = r.slice().reverse().reduce(function (r, n) { return n(i, e, r) || r; }, a), l && void 0 !== a.initializer && (a.value = a.initializer ? a.initializer.call(l) : void 0, a.initializer = void 0), void 0 === a.initializer ? (Object.defineProperty(i, e, a), null) : a; }\nfunction _initializerWarningHelper(r, e) { throw Error(\"Decorating class property failed. Please ensure that transform-class-properties is enabled and runs after the decorators transform.\"); }\nimport { \"BeanInfo\" as __z_BeanInfo } from \"zova\";\nimport { BeanBase, Use } from 'zova';\nimport { Bean } from 'zova-module-a-bean';\nimport { ModelPageData } from '../model/pageData.js';\nimport { SysRouter } from './sys.router.js';\nexport let BeanRouter = (_dec = Bean(), _dec2 = __z_BeanInfo({\n module: \"a-router\"\n}), _dec3 = Use(), _dec4 = Reflect.metadata(\"design:type\", typeof SysRouter === \"undefined\" ? Object : SysRouter), _dec5 = Use(), _dec6 = Reflect.metadata(\"design:type\", typeof ModelPageData === \"undefined\" ? Object : ModelPageData), _dec(_class = _dec2(_class = (_class2 = class BeanRouter extends BeanBase {\n constructor(...args) {\n super(...args);\n this._vueRouterApp = void 0;\n this._eventRouterGuards = [];\n this._routerViews = [];\n _initializerDefineProperty(this, \"$$sysRouter\", _descriptor, this);\n _initializerDefineProperty(this, \"$$modelPageData\", _descriptor2, this);\n }\n // for prepare pageData on server\n\n get router() {\n return this._vueRouterApp;\n }\n __dispose__() {\n for (const fn of this._eventRouterGuards) {\n fn();\n }\n }\n __get__(prop) {\n // SymbolRouter first\n const value = this._vueRouterApp?.[prop];\n if (value !== undefined) return value;\n return this.$$sysRouter?.[prop];\n }\n async __init__(mainRouter) {\n // create router\n this._vueRouterApp = this.$$sysRouter.createRouter();\n if (!mainRouter) {\n // emit event\n await this.app.meta.event.emit('a-router:routerGuards', this);\n }\n }\n addRouterView(routerView) {\n this._routerViews.push(routerView);\n }\n removeRouterView(routerView) {\n const index = this._routerViews.findIndex(item => item === routerView);\n if (index > -1) {\n this._routerViews.splice(index, 1);\n }\n }\n afterEachBackRoute(route) {\n for (const routerView of this._routerViews) {\n const res = routerView.backRoute(route);\n if (res) break;\n }\n }\n afterEachForwardRoute(route) {\n for (const routerView of this._routerViews) {\n const res = routerView.forwardRoute(route);\n if (res) break;\n }\n }\n beforeEach(guard) {\n const fn = this._vueRouterApp.beforeEach(guard);\n this._eventRouterGuards.push(fn);\n return fn;\n }\n beforeResolve(guard) {\n const fn = this._vueRouterApp.beforeResolve(guard);\n this._eventRouterGuards.push(fn);\n return fn;\n }\n afterEach(guard) {\n const fn = this._vueRouterApp.afterEach(guard);\n this._eventRouterGuards.push(fn);\n return fn;\n }\n onError(handler) {\n const fn = this._vueRouterApp.onError(handler);\n this._eventRouterGuards.push(fn);\n return fn;\n }\n setPageMeta(route, pageMeta) {\n for (const routerView of this._routerViews) {\n routerView.setPageMeta(route, pageMeta);\n }\n }\n}, _descriptor = _applyDecoratedDescriptor(_class2.prototype, \"$$sysRouter\", [_dec3, _dec4], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"$$modelPageData\", [_dec5, _dec6], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _class2)) || _class) || _class);","var _dec, _dec2, _dec3, _class;\nimport { \"BeanInfo\" as __z_BeanInfo } from \"zova\";\nimport { BeanBase, Virtual } from 'zova';\nimport { Bean } from 'zova-module-a-bean';\nexport let BeanRouterGuardsBase = (_dec = Bean(), _dec2 = Virtual(), _dec3 = __z_BeanInfo({\n module: \"a-router\"\n}), _dec(_class = _dec2(_class = _dec3(_class = class BeanRouterGuardsBase extends BeanBase {\n constructor(...args) {\n super(...args);\n this._eventRouterGuards = void 0;\n }\n async __init__() {\n this._eventRouterGuards = this.app.meta.event.on('a-router:routerGuards', async (router, next) => {\n this.onRouterGuards(router);\n return await next();\n });\n }\n __dispose__() {\n this.dispose();\n }\n dispose() {\n if (this._eventRouterGuards) {\n this._eventRouterGuards();\n }\n }\n onRouterGuards(_router) {}\n}) || _class) || _class) || _class);","import 'vue-router';\nexport let NavigationType = /*#__PURE__*/function (NavigationType) {\n NavigationType[\"pop\"] = \"pop\";\n NavigationType[\"push\"] = \"push\";\n return NavigationType;\n}({});\nexport let NavigationDirection = /*#__PURE__*/function (NavigationDirection) {\n NavigationDirection[\"back\"] = \"back\";\n NavigationDirection[\"forward\"] = \"forward\";\n NavigationDirection[\"unknown\"] = \"\";\n return NavigationDirection;\n}({});","var _dec, _dec2, _class;\nimport { \"BeanInfo\" as __z_BeanInfo } from \"zova\";\nimport * as ModuleInfo from '@cabloy/module-info';\nimport { Service } from 'zova-module-a-bean';\nimport { BeanRouterGuardsBase } from '../bean/bean.routerGuardsBase.js';\nimport { NavigationDirection, NavigationType } from '../types/router.js';\nexport let ServiceRouterGuards = (_dec = Service(), _dec2 = __z_BeanInfo({\n module: \"a-router\"\n}), _dec(_class = _dec2(_class = class ServiceRouterGuards extends BeanRouterGuardsBase {\n onRouterGuards(router) {\n const self = this;\n router.beforeEach(async to => {\n // match path\n let match = to.matched.find(item => item.aliasOf);\n if (match) {\n match = match.aliasOf;\n } else {\n match = to.matched[to.matched.length - 1];\n // prepareCheck\n if (!(await this._prepareCheck(match?.path, to.path))) {\n // redirect again\n return to.fullPath;\n }\n // legacy\n const legacyRoute = router._findLegacyRoute(match?.name, match?.path);\n if (legacyRoute) return;\n // alias\n const configRoute = router._findConfigRoute(match?.name, match?.path);\n const alias = configRoute?.alias;\n if (alias) {\n // force load module\n const resLoadModule = await this._forceLoadModule(router, match?.name, match?.path);\n if (resLoadModule && resLoadModule !== true) return resLoadModule;\n if (resLoadModule === false) return to.fullPath;\n const name = router.getRealRouteName(match?.name);\n if (name) {\n const routeAlias = router.getAliasPath(name, {\n params: to.params,\n query: to.query\n });\n return routeAlias || '/';\n } else {\n return {\n path: Array.isArray(alias) ? alias[0] : alias,\n params: to.params,\n query: to.query\n };\n }\n }\n }\n // force load module\n const resLoadModule = await this._forceLoadModule(router, match?.name, match?.path);\n if (resLoadModule === true) return;\n if (resLoadModule) return resLoadModule;\n // redirect again\n return to.fullPath;\n });\n router.afterEach(function (to, from, error) {\n if (error) return;\n const info = arguments[3];\n // from\n if (from.fullPath !== to.fullPath) {\n self._afterEachFrom(router, from, info);\n }\n // to\n router.afterEachForwardRoute(to);\n });\n }\n _afterEachFrom(router, from, info) {\n if (!info) return;\n const needBack = info.type === NavigationType.pop && info.direction === NavigationDirection.back || info.type === NavigationType.push && info.replace;\n if (!needBack) return;\n router.afterEachBackRoute(from);\n }\n\n // if 404 then check if module loaded\n async _prepareCheck(pathMatched, pathTo) {\n if (pathMatched === '/:catchAll(.*)*') {\n const moduleInfo = ModuleInfo.parseInfo(ModuleInfo.parseName(pathTo));\n if (moduleInfo && this.app.meta.module.exists(moduleInfo.relativeName) && !this.app.meta.module.get(moduleInfo.relativeName, false)) {\n // use module\n await this.app.meta.module.use(moduleInfo.relativeName);\n // redirect again\n return false;\n }\n }\n return true;\n }\n async _forceLoadModule(router, name, path) {\n const nameOrPath = router.getRealRouteName(name) || path;\n // module info\n const moduleInfo = ModuleInfo.parseInfo(ModuleInfo.parseName(nameOrPath));\n if (!moduleInfo) {\n // donothing\n return true;\n }\n const moduleName = moduleInfo.relativeName;\n // check if exists\n if (!this.app.meta.module.exists(moduleName)) return '/404';\n // check if loaded\n const module = this.app.meta.module.get(moduleName, false);\n if (module) return true;\n // use module\n await this.app.meta.module.use(moduleName);\n // means need load\n return false;\n }\n}) || _class) || _class);","import type { RouteLocationNormalizedLoadedGeneric } from '@cabloy/vue-router';\n\nimport { RouterView } from '@cabloy/vue-router';\nimport { h, KeepAlive, Transition } from 'vue';\nimport { BeanControllerBase, cast } from 'zova';\n\nimport type { IPageMeta } from '../types/pageMeta.js';\nimport type { IRouterViewSlotParams, IRouteViewRouteMeta } from '../types/routerView.js';\n\nimport { pageRouteKey, routerViewKey } from './const.js';\n\nexport interface IRouterViewPropsBase {}\n\nexport class BeanRouterViewBase extends BeanControllerBase implements IRouterViewPropsBase {\n protected async __init__() {\n this.bean._setBean(routerViewKey, this);\n this.$router.addRouterView(this);\n }\n\n protected __dispose__() {\n this.$router.removeRouterView(this);\n }\n\n public backRoute(_route: RouteLocationNormalizedLoadedGeneric) {\n return false;\n }\n\n public forwardRoute(_route: RouteLocationNormalizedLoadedGeneric) {\n return false;\n }\n\n public setPageMeta(_route: RouteLocationNormalizedLoadedGeneric, _pageMeta: IPageMeta) {}\n\n protected prepareRouteMeta(_route: RouteLocationNormalizedLoadedGeneric): IRouteViewRouteMeta {\n throw new Error('Not Implemented');\n }\n\n protected getKeepAliveInclude(): string[] | undefined {\n throw new Error('Not Implemented');\n }\n\n protected render() {\n const slots = {\n default: (component: IRouterViewSlotParams) => {\n const routeMeta = this.prepareRouteMeta(component.route);\n return h(Transition, null, {\n default: () => {\n const vnode = h(component.Component as any, {\n key: routeMeta.componentKey,\n });\n cast(vnode).zovaHostProviders = { [pageRouteKey]: component.route };\n return [\n h(\n KeepAlive,\n {\n include: this.getKeepAliveInclude(),\n },\n [vnode],\n ),\n ];\n },\n });\n },\n };\n return <RouterView v-slots={slots}></RouterView>;\n }\n}\n","import { RouterView } from '@cabloy/vue-router';\nimport { h } from 'vue';\nimport { cast } from 'zova';\nimport { Controller } from 'zova-module-a-bean';\n\nimport { pageRouteKey } from '../../lib/const.js';\nimport { BeanRouterViewBase } from '../../lib/routerViewBase.js';\n\n@Controller()\nexport class ControllerRouterViewEmpty extends BeanRouterViewBase {\n protected async __init__() {}\n\n protected render() {\n const slots = {\n default: component => {\n const vnode = h(component.Component);\n cast(vnode).zovaHostProviders = { [pageRouteKey]: component.route };\n return vnode;\n },\n };\n return <RouterView v-slots={slots}></RouterView>;\n }\n}\n","import { defineComponent } from 'vue';\nimport { prepareComponentOptions, useController } from 'zova';\nimport { ControllerRouterViewEmpty } from '../../component/routerViewEmpty/controller.jsx';\nexport const ZRouterViewEmpty = defineComponent(_props => {\n useController(ControllerRouterViewEmpty, undefined, undefined);\n return () => {};\n}, prepareComponentOptions());","import { scrollBehavior } from '../lib/utils.js';\nexport const config = _sys => {\n return {\n scrollBehavior\n };\n};","import * as ModuleInfo from '@cabloy/module-info';\nimport { shallowReactive } from 'vue';\nimport { BeanControllerPageBase, BeanSimple, cast, useComputed } from 'zova';\nimport { routerViewKey } from './lib/const.js';\nimport { getCurrentRoute, getPageRoute, getRealRouteName, getRouteMatched } from './lib/utils.js';\nimport { ServiceRouterGuards } from './service/routerGuards.js';\nimport { SymbolRouterHistory } from './types/utils.js';\nexport class Monkey extends BeanSimple {\n constructor(...args) {\n super(...args);\n this._beanRouter = void 0;\n this._sysRouter = void 0;\n this.serviceRouterGuards = void 0;\n }\n async _getSysRouter() {\n if (!this._sysRouter) {\n this._sysRouter = await this.sys.bean._getBean('a-router.sys.router', false);\n }\n return this._sysRouter;\n }\n async getBeanRouter() {\n if (!this._beanRouter) {\n // markReactive: true\n this._beanRouter = this.app.meta.$router = await this.bean._getBean('a-router.bean.router', true, true);\n }\n return this._beanRouter;\n }\n async appInitialize() {\n if (process.env.SERVER) {\n const pagePathFull = this.app.$getCurrentPagePath();\n if (pagePathFull) {\n const sysRouter = await this._getSysRouter();\n const route = await sysRouter.resolveRoute(pagePathFull, true, false);\n if (route) {\n // ssr profile\n this.ctx.meta.$ssr._setProfile(route.meta.ssrProfile, route.meta.ssrProfileOptions, route.meta.locale);\n // locale\n this.ctx.meta.$ssr._setLocale(route);\n }\n }\n }\n // router\n this.serviceRouterGuards = await this.bean._newBean(ServiceRouterGuards, false);\n // ssr errorHandler\n if (process.env.CLIENT) {\n this._ssrErrorHandler();\n }\n }\n async appInitialized() {\n const beanRouter = await this.getBeanRouter();\n // emit event\n await this.app.meta.event.emit('a-router:routerGuards', beanRouter);\n }\n appClose() {\n if (this.serviceRouterGuards) {\n this.serviceRouterGuards.dispose();\n }\n }\n async appReady() {\n const beanRouter = await this.getBeanRouter();\n // pagePath\n if (process.env.CLIENT && this.ctx.meta.$ssr.isRuntimeSsrPreHydration) {\n const pagePathFull = this.ctx.meta.$ssr.state.pagePathFull;\n if (pagePathFull) {\n const routerHistory = beanRouter.router[SymbolRouterHistory];\n routerHistory.push(pagePathFull);\n }\n }\n // use router\n this.app.vue.use(beanRouter);\n // ssr\n if (process.env.SERVER) {\n // push\n const pagePath = this.app.$getCurrentPagePath();\n beanRouter.push(pagePath);\n await beanRouter.isReady();\n } else if (process.env.CLIENT && this.ctx.meta.$ssr.isRuntimeSsrPreHydration) {\n await beanRouter.isReady();\n }\n }\n async beanInit(bean, beanInstance) {\n bean.defineProperty(beanInstance, '$router', {\n enumerable: false,\n configurable: true,\n get() {\n return bean._getBeanFromHost('a-router.bean.router');\n }\n });\n bean.defineProperty(beanInstance, '$routerView', {\n enumerable: false,\n configurable: true,\n get() {\n return bean._getBeanFromHost({\n name: routerViewKey\n });\n }\n });\n bean.defineProperty(beanInstance, '$pageRoute', {\n enumerable: false,\n configurable: true,\n get() {\n return useComputed(() => {\n return getPageRoute(cast(bean).ctx);\n });\n }\n });\n bean.defineProperty(beanInstance, '$currentRoute', {\n enumerable: false,\n configurable: true,\n get() {\n return useComputed(() => {\n return getCurrentRoute(cast(bean).ctx);\n });\n }\n });\n }\n controllerDataPrepare(controllerData, ctx) {\n controllerData.context.route = getPageRoute(ctx);\n }\n controllerDataInit(controllerData, controller) {\n // only for controller page\n if (!(controller instanceof BeanControllerPageBase)) return;\n const route = controllerData.context.route;\n this._initControllerRoute(route, controller);\n }\n controllerDataUpdate(controller) {\n // only for controller page\n if (!(controller instanceof BeanControllerPageBase)) return;\n const route = getPageRoute(cast(cast(controller).ctx));\n this._initControllerRoute(route, controller);\n }\n _initControllerRoute(route, controller) {\n if (!route) return;\n const routeMatched = getRouteMatched(route);\n if (!routeMatched) return;\n // check if the same\n if (controller.$routeMatched && !this._checkIfRouteSame(routeMatched, controller.$routeMatched)) return;\n // check if changed\n const changed = !controller.$route || controller.$route.fullPath !== route.fullPath;\n if (!changed) return;\n controller.$route = route;\n controller.$routeMatched = routeMatched;\n // update $params/$query\n const routeName = getRealRouteName(routeMatched.name);\n const schemaKey = routeName || String(routeMatched.path);\n let schemas;\n const moduleInfo = ModuleInfo.parseInfo(ModuleInfo.parseName(schemaKey));\n if (!moduleInfo) {\n // do nothing\n return;\n }\n if (!this.app.meta.module.exists(moduleInfo.relativeName)) {\n // do nothing\n return;\n }\n const module = this.app.meta.module.get(moduleInfo.relativeName);\n if (routeName) {\n schemas = module.resource.pageNameSchemas?.[schemaKey];\n } else {\n schemas = module.resource.pagePathSchemas?.[schemaKey];\n }\n if (schemas?.params) {\n const params = schemas.params.parse(route.params);\n if (!controller.$params) {\n controller.$params = process.env.SERVER ? params : shallowReactive(params);\n } else {\n // hold the same $params ref\n Object.assign(controller.$params, params);\n }\n }\n if (schemas?.query) {\n const query = schemas.query.parse(route.query);\n if (!controller.$query) {\n controller.$query = process.env.SERVER ? query : shallowReactive(query);\n } else {\n // hold the same $query ref\n Object.assign(controller.$query, query);\n }\n }\n }\n _checkIfRouteSame(route1, route2) {\n return route1.name && route1.name === route2.name || route1.path === route2.path;\n }\n _ssrErrorHandler() {\n if (!process.env.CLIENT) return;\n this.app.meta.event.on('app:errorHandler', (data, next) => {\n const err = next();\n if (!err || !(err instanceof Error)) return err;\n return this._errorHandlerDefaultClient(err, data);\n });\n }\n _errorHandlerDefaultClient(err, _data) {\n if (!process.env.CLIENT) return err;\n // client\n if ([301, 302].includes(Number(err.code))) {\n this.app.$gotoPage(err.pagePath);\n return undefined;\n }\n // COMPONENT_UNMOUNTED\n if (err.code === 600) {\n // do nothing\n return undefined;\n }\n // 401\n if (err.code === 401) {\n this.app.$gotoLogin();\n return undefined;\n }\n // not handled\n return err;\n }\n}","import { BeanSimple, cast, isHttpUrl } from 'zova';\nexport class MonkeySys extends BeanSimple {\n constructor(moduleSelf) {\n super();\n this._moduleSelf = void 0;\n this._sysRouter = void 0;\n this._moduleSelf = moduleSelf;\n }\n async getSysRouter() {\n if (!this._sysRouter) {\n this._sysRouter = await this.sys.bean._getBean('a-router.sys.router', false);\n }\n return this._sysRouter;\n }\n async moduleLoading(module) {\n if (this._moduleSelf === module) return;\n if (!module.resource.routes) return;\n const sysRouter = await this.getSysRouter();\n sysRouter._registerRoutes(module);\n }\n async moduleLoaded(_module) {}\n async configLoaded(_module, _config) {}\n sysApplicationInitialize(app) {\n app.$redirect = (pagePath, status) => {\n const error = new Error();\n error.code = status ?? 302;\n if (isHttpUrl(pagePath)) {\n error.pagePath = pagePath;\n error.url = pagePath;\n } else {\n error.pagePath = pagePath;\n error.url = app.sys.util.getAbsoluteUrlFromPagePath(pagePath, true);\n }\n error.message = process.env.SERVER ? error.url : error.pagePath;\n throw error;\n };\n app.$getPagePath = (pagePath, options) => {\n const query = {\n ...options?.query\n };\n // returnTo\n if (options?.returnTo) {\n const returnTo = typeof options.returnTo === 'string' ? options.returnTo : app.$getCurrentPagePath();\n if (returnTo !== app.$getPagePathHome()) {\n query[app.sys.env.ROUTER_KEY_RETURNTO] = returnTo;\n }\n }\n return app.meta.$router.getPagePath(pagePath, {\n params: options?.params,\n query\n });\n };\n app.$getPagePathLogin = (returnTo, cause) => {\n const query = {};\n if (cause) {\n query.cause = cause;\n }\n const returnTo2 = _fixReturnTo(app, returnTo);\n return app.$getPagePath(app.sys.env.ROUTER_PAGE_LOGIN, {\n query,\n returnTo: returnTo2\n });\n };\n app.$getPagePathAccessDenied = () => {\n return app.$getPagePath('/home/base/errorAccessDenied');\n };\n app.$gotoPage = (pagePath, options) => {\n pagePath = app.$getPagePath(pagePath, options);\n // redirect\n if (process.env.SERVER || options?.forceRedirect) {\n return app.$redirect(pagePath);\n }\n // replace\n if (isHttpUrl(pagePath)) {\n window.location[options?.replace ? 'replace' : 'assign'](pagePath);\n } else {\n return app.meta.$router[options?.replace ? 'replace' : 'push'](pagePath);\n }\n };\n app.$gotoHome = options => {\n const pagePath = app.$getPagePathHome(options);\n return app.$gotoPage(pagePath, {\n ...options,\n params: undefined\n });\n };\n app.$gotoLogin = (returnTo, cause) => {\n const returnTo2 = _fixReturnTo(app, returnTo);\n if (!returnTo2 && cast(app.meta.$router.currentRoute)?.path === app.sys.env.ROUTER_PAGE_LOGIN) {\n return;\n }\n const pagePath = app.$getPagePathLogin(returnTo2, cause);\n return app.$gotoPage(pagePath);\n };\n app.$gotoAccessDenied = () => {\n const pagePath = app.$getPagePathAccessDenied();\n if (cast(app.meta.$router.currentRoute)?.path === pagePath) return;\n return app.$gotoPage(pagePath, {\n replace: true\n });\n };\n app.$gotoReturnTo = returnTo => {\n const pagePath = app.$getReturnTo(returnTo);\n return app.$gotoPage(pagePath, {\n replace: true\n });\n };\n app.$getReturnTo = returnTo => {\n // not use ??\n const pagePath = returnTo || cast(app.meta.$router.currentRoute)?.query?.[app.sys.env.ROUTER_KEY_RETURNTO] || app.$getPagePathHome();\n return pagePath;\n };\n app.$getCurrentPagePath = () => {\n if (process.env.SERVER) {\n return app.ctx.meta.$ssr.state.pagePathFull ?? app.sys.util.getPagePathFromAbsoluteUrl(app.ctx.meta.$ssr.context.req.url);\n }\n return cast(app.meta.$router.currentRoute)?.fullPath;\n };\n app.$getPagePathHome = options => {\n let params = options?.params;\n if (params?.locale === undefined) {\n params = Object.assign({}, params, {\n locale: true\n });\n }\n // not handle options?.query\n return app.meta.$router.getPagePath(app.sys.env.ROUTER_PAGE_HOME, {\n params\n });\n };\n }\n}\nfunction _fixReturnTo(app, returnTo) {\n const returnTo2 = returnTo === false ? false : typeof returnTo === 'string' ? returnTo : app.$getCurrentPagePath();\n return returnTo2 === app.sys.env.ROUTER_PAGE_LOGIN ? false : returnTo2;\n}","var _dec, _dec2, _class;\nimport { \"BeanInfo\" as __z_BeanInfo } from \"zova\";\n// eslint-disable\n/** model: begin */\nexport * from '../model/pageData.js';\nimport 'zova-module-a-model';\n/** model: end */\n/** model: begin */\nimport { ModelPageData } from '../model/pageData.js';\nimport 'zova';\n/** model: end */\n/** sys: begin */\nexport * from '../bean/sys.router.js';\nimport 'zova';\n/** sys: end */\n/** sys: begin */\nimport { SysRouter } from '../bean/sys.router.js';\nimport 'zova';\n/** sys: end */\n/** bean: begin */\nexport * from '../bean/bean.router.js';\nexport * from '../bean/bean.routerGuardsBase.js';\nimport 'zova';\n/** bean: end */\n/** bean: begin */\nimport { BeanRouter } from '../bean/bean.router.js';\nimport 'zova';\n/** bean: end */\n/** service: begin */\nexport * from '../service/routerGuards.js';\nimport 'zova-module-a-bean';\n/** service: end */\n/** service: begin */\nimport { ServiceRouterGuards } from '../service/routerGuards.js';\nimport 'zova';\n/** service: end */\n/** controller: begin */\nexport * from '../component/routerViewEmpty/controller.jsx';\nimport 'zova';\n/** controller: end */\n/** controller: begin */\nimport { ControllerRouterViewEmpty } from '../component/routerViewEmpty/controller.jsx';\nimport 'zova';\n/** controller: end */\n\n/** components: begin */\nexport * from './component/routerViewEmpty.js';\nimport { ZRouterViewEmpty } from './component/routerViewEmpty.js';\nexport const components = {\n 'routerViewEmpty': ZRouterViewEmpty\n};\nimport 'zova';\n/** components: 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 ScopeModuleARouter = (_dec = Scope(), _dec2 = __z_BeanInfo({\n module: \"a-router\"\n}), _dec(_class = _dec2(_class = class ScopeModuleARouter extends BeanScopeBase {}) || _class) || _class);\nimport 'zova';\n\n/** scope: end */"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"monkey.d.ts","sourceRoot":"","sources":["../src/monkey.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,QAAQ,EACR,aAAa,EACb,eAAe,EAEf,eAAe,EACf,oBAAoB,EACpB,qBAAqB,EACrB,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,WAAW,EACZ,MAAM,MAAM,CAAC;AAKd,OAAO,EAA0B,UAAU,EAAqB,MAAM,MAAM,CAAC;AAE7E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAMxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAGhE,qBAAa,MACX,SAAQ,UACR,YACE,oBAAoB,EACpB,qBAAqB,EACrB,eAAe,EACf,eAAe,EACf,eAAe,EACf,iBAAiB;IAEnB,OAAO,CAAC,WAAW,CAAa;IAChC,OAAO,CAAC,UAAU,CAAY;IAC9B,mBAAmB,EAAE,mBAAmB,CAAC;YAE3B,aAAa;IAOrB,aAAa;IAYb,aAAa;IAuBb,cAAc;IAMpB,QAAQ,IAAI,IAAI;IAMV,QAAQ;IAuBR,QAAQ,CAAC,IAAI,EAAE,aAAa,EAAE,YAAY,EAAE,QAAQ;IAmC1D,qBAAqB,CAAC,cAAc,EAAE,eAAe,EAAE,GAAG,EAAE,WAAW;IAIvE,kBAAkB,CAAC,cAAc,EAAE,eAAe,EAAE,UAAU,EAAE,QAAQ;IAOxE,oBAAoB,CAAC,UAAU,EAAE,QAAQ;IAOzC,OAAO,CAAC,oBAAoB;IAsD5B,OAAO,CAAC,iBAAiB;IAIzB,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,0BAA0B;CAoBnC"}
1
+ {"version":3,"file":"monkey.d.ts","sourceRoot":"","sources":["../src/monkey.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,QAAQ,EACR,aAAa,EACb,eAAe,EAEf,eAAe,EACf,oBAAoB,EACpB,qBAAqB,EACrB,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,WAAW,EACZ,MAAM,MAAM,CAAC;AAKd,OAAO,EAA0B,UAAU,EAAqB,MAAM,MAAM,CAAC;AAE7E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAMxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAGhE,qBAAa,MACX,SAAQ,UACR,YACE,oBAAoB,EACpB,qBAAqB,EACrB,eAAe,EACf,eAAe,EACf,eAAe,EACf,iBAAiB;IAEnB,OAAO,CAAC,WAAW,CAAa;IAChC,OAAO,CAAC,UAAU,CAAY;IAC9B,mBAAmB,EAAE,mBAAmB,CAAC;YAE3B,aAAa;IAOrB,aAAa;IAYb,aAAa;IA0Bb,cAAc;IAMpB,QAAQ,IAAI,IAAI;IAMV,QAAQ;IAuBR,QAAQ,CAAC,IAAI,EAAE,aAAa,EAAE,YAAY,EAAE,QAAQ;IAmC1D,qBAAqB,CAAC,cAAc,EAAE,eAAe,EAAE,GAAG,EAAE,WAAW;IAIvE,kBAAkB,CAAC,cAAc,EAAE,eAAe,EAAE,UAAU,EAAE,QAAQ;IAOxE,oBAAoB,CAAC,UAAU,EAAE,QAAQ;IAOzC,OAAO,CAAC,oBAAoB;IAsD5B,OAAO,CAAC,iBAAiB;IAIzB,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,0BAA0B;CAoBnC"}
@@ -27,11 +27,11 @@ declare module 'zova' {
27
27
  interface ZovaApplication {
28
28
  $redirect(pagePath: string, status?: 301 | 302): never;
29
29
  $getPagePath<K extends keyof IPagePathRecord>(pagePath: K, options?: IPagePathRecord[K] & IGetPagePathOptions): string;
30
- $getPagePathLogin(returnTo?: string, cause?: string): string;
30
+ $getPagePathLogin(returnTo?: string | boolean, cause?: string): string;
31
31
  $getPagePathAccessDenied(): string;
32
32
  $gotoPage(pagePath: string, options?: IGotoPageOptions): TypeGotoPageResult;
33
33
  $gotoHome(options?: IGotoPageOptions): TypeGotoPageResult;
34
- $gotoLogin(returnTo?: string, cause?: string): TypeGotoPageResult;
34
+ $gotoLogin(returnTo?: string | boolean, cause?: string): TypeGotoPageResult;
35
35
  $gotoAccessDenied(): TypeGotoPageResult;
36
36
  $gotoReturnTo(returnTo?: string): TypeGotoPageResult;
37
37
  $getReturnTo(returnTo?: string): string;
@@ -1 +1 @@
1
- {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../src/types/router.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../src/types/router.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "zova-module-a-router",
3
- "version": "5.1.32",
4
- "gitHead": "f431773baeff1b631f2ba56f657f0160e6dcbd5b",
3
+ "version": "5.1.34",
4
+ "gitHead": "eb85d771ef75776a439e56df3af8be6a3a36c1c2",
5
5
  "description": "router",
6
6
  "keywords": [
7
7
  "Zova Module"
@@ -4,15 +4,15 @@ export * from '../model/pageData.js';
4
4
  import { IModelOptionsPageData } from '../model/pageData.js';
5
5
  import 'zova-module-a-model';
6
6
  declare module 'zova-module-a-model' {
7
-
7
+
8
8
  export interface IModelRecord {
9
9
  'a-router:pageData': IModelOptionsPageData;
10
10
  }
11
11
 
12
-
12
+
13
13
  }
14
14
  declare module 'zova-module-a-router' {
15
-
15
+
16
16
  export interface ModelPageData {
17
17
  /** @internal */
18
18
  get scope(): ScopeModuleARouter;
@@ -22,7 +22,7 @@ declare module 'zova-module-a-router' {
22
22
  get $beanFullName(): 'a-router.model.pageData';
23
23
  get $onionName(): 'a-router:pageData';
24
24
  get $onionOptions(): IModelOptionsPageData;
25
- }
25
+ }
26
26
  }
27
27
  /** model: end */
28
28
  /** model: begin */
@@ -39,11 +39,11 @@ export * from '../bean/sys.router.js';
39
39
 
40
40
  import 'zova';
41
41
  declare module 'zova' {
42
-
43
-
42
+
43
+
44
44
  }
45
45
  declare module 'zova-module-a-router' {
46
-
46
+
47
47
  export interface SysRouter {
48
48
  /** @internal */
49
49
  get scope(): ScopeModuleARouter;
@@ -52,8 +52,8 @@ declare module 'zova-module-a-router' {
52
52
  export interface SysRouter {
53
53
  get $beanFullName(): 'a-router.sys.router';
54
54
  get $onionName(): 'a-router:router';
55
-
56
- }
55
+
56
+ }
57
57
  }
58
58
  /** sys: end */
59
59
  /** sys: begin */
@@ -71,11 +71,11 @@ export * from '../bean/bean.routerGuardsBase.js';
71
71
 
72
72
  import 'zova';
73
73
  declare module 'zova' {
74
-
75
-
74
+
75
+
76
76
  }
77
77
  declare module 'zova-module-a-router' {
78
-
78
+
79
79
  export interface BeanRouter {
80
80
  /** @internal */
81
81
  get scope(): ScopeModuleARouter;
@@ -84,8 +84,8 @@ declare module 'zova-module-a-router' {
84
84
  export interface BeanRouter {
85
85
  get $beanFullName(): 'a-router.bean.router';
86
86
  get $onionName(): 'a-router:router';
87
-
88
- }
87
+
88
+ }
89
89
  }
90
90
  /** bean: end */
91
91
  /** bean: begin */
@@ -104,15 +104,15 @@ export * from '../service/routerGuards.js';
104
104
 
105
105
  import 'zova-module-a-bean';
106
106
  declare module 'zova-module-a-bean' {
107
-
107
+
108
108
  export interface IServiceRecord {
109
109
  'a-router:routerGuards': never;
110
110
  }
111
111
 
112
-
112
+
113
113
  }
114
114
  declare module 'zova-module-a-router' {
115
-
115
+
116
116
  export interface ServiceRouterGuards {
117
117
  /** @internal */
118
118
  get scope(): ScopeModuleARouter;
@@ -121,8 +121,8 @@ declare module 'zova-module-a-router' {
121
121
  export interface ServiceRouterGuards {
122
122
  get $beanFullName(): 'a-router.service.routerGuards';
123
123
  get $onionName(): 'a-router:routerGuards';
124
-
125
- }
124
+
125
+ }
126
126
  }
127
127
  /** service: end */
128
128
  /** service: begin */
@@ -139,15 +139,15 @@ export * from '../component/routerViewEmpty/controller.jsx';
139
139
 
140
140
  import 'zova';
141
141
  declare module 'zova' {
142
-
143
-
142
+
143
+
144
144
  }
145
145
  declare module 'zova-module-a-router' {
146
-
146
+
147
147
  export interface ControllerRouterViewEmpty {
148
148
  /** @internal */
149
149
  get scope(): ScopeModuleARouter;
150
- }
150
+ }
151
151
  }
152
152
  /** controller: end */
153
153
  /** controller: begin */
@@ -203,14 +203,14 @@ declare module 'zova' {
203
203
  export interface IBeanScopeRecord {
204
204
  'a-router': ScopeModuleARouter;
205
205
  }
206
-
206
+
207
207
  export interface IBeanScopeConfig {
208
208
  'a-router': ReturnType<typeof config>;
209
209
  }
210
210
 
211
-
212
211
 
213
-
212
+
213
+
214
214
  }
215
-
215
+
216
216
  /** scope: end */
@@ -16,7 +16,7 @@ import {
16
16
  createWebHashHistory,
17
17
  createWebHistory,
18
18
  } from '@cabloy/vue-router';
19
- import { BeanBase, cast, deepExtend } from 'zova';
19
+ import { BeanBase, cast, deepExtend, isHttpUrl } from 'zova';
20
20
  import { Sys } from 'zova-module-a-bean';
21
21
 
22
22
  import { getCurrentRoute, getRealRouteName, getRouteMatched, isRouterName } from '../lib/utils.js';
@@ -108,7 +108,8 @@ export class SysRouter extends BeanBase {
108
108
  check404?: boolean,
109
109
  checkAliasOf?: boolean,
110
110
  ): Promise<RouteLocationResolvedGeneric | undefined> {
111
- const pagePath = this.sys.util.getPagePathFromAbsoluteUrl(url);
111
+ // url: should not has APP_PUBLIC_PATH prefix when not http url
112
+ const pagePath = isHttpUrl(url) ? this.sys.util.getPagePathFromAbsoluteUrl(url) : url;
112
113
  let route = await this.ensureRoute(pagePath);
113
114
  if (check404 && route.name === '$:/:catchAll(.*)*') return;
114
115
  // aliasOf
package/src/monkey.ts CHANGED
@@ -64,17 +64,20 @@ export class Monkey
64
64
  }
65
65
 
66
66
  async appInitialize() {
67
- const ssrState = this.ctx.meta.$ssr.state;
68
- if (
69
- process.env.SERVER &&
70
- (ssrState.ssrProfile === undefined || ssrState.ssrProfileOptions === undefined)
71
- ) {
67
+ if (process.env.SERVER) {
72
68
  const pagePathFull = this.app.$getCurrentPagePath();
73
69
  if (pagePathFull) {
74
70
  const sysRouter = await this._getSysRouter();
75
71
  const route = await sysRouter.resolveRoute(pagePathFull, true, false);
76
72
  if (route) {
77
- this.ctx.meta.$ssr._setProfile(route.meta.ssrProfile, route.meta.ssrProfileOptions);
73
+ // ssr profile
74
+ this.ctx.meta.$ssr._setProfile(
75
+ route.meta.ssrProfile,
76
+ route.meta.ssrProfileOptions,
77
+ route.meta.locale,
78
+ );
79
+ // locale
80
+ this.ctx.meta.$ssr._setLocale(route);
78
81
  }
79
82
  }
80
83
  }
package/src/monkeySys.ts CHANGED
@@ -69,12 +69,12 @@ export class MonkeySys
69
69
  } as never,
70
70
  );
71
71
  };
72
- app.$getPagePathLogin = (returnTo?: string, cause?: string) => {
72
+ app.$getPagePathLogin = (returnTo?: string | boolean, cause?: string) => {
73
73
  const query: any = {};
74
74
  if (cause) {
75
75
  query.cause = cause;
76
76
  }
77
- const returnTo2 = returnTo === app.sys.env.ROUTER_PAGE_LOGIN ? undefined : returnTo;
77
+ const returnTo2 = _fixReturnTo(app, returnTo);
78
78
  return app.$getPagePath(
79
79
  app.sys.env.ROUTER_PAGE_LOGIN as never,
80
80
  {
@@ -103,14 +103,14 @@ export class MonkeySys
103
103
  const pagePath = app.$getPagePathHome(options);
104
104
  return app.$gotoPage(pagePath, { ...options, params: undefined });
105
105
  };
106
- app.$gotoLogin = (returnTo?: string, cause?: string) => {
106
+ app.$gotoLogin = (returnTo?: string | boolean, cause?: string) => {
107
+ const returnTo2 = _fixReturnTo(app, returnTo);
107
108
  if (
108
- !returnTo &&
109
+ !returnTo2 &&
109
110
  cast(app.meta.$router.currentRoute)?.path === app.sys.env.ROUTER_PAGE_LOGIN
110
111
  ) {
111
112
  return;
112
113
  }
113
- const returnTo2 = returnTo ?? app.$getCurrentPagePath();
114
114
  const pagePath = app.$getPagePathLogin(returnTo2, cause);
115
115
  return app.$gotoPage(pagePath);
116
116
  };
@@ -153,3 +153,13 @@ export class MonkeySys
153
153
  };
154
154
  }
155
155
  }
156
+
157
+ function _fixReturnTo(app: ZovaApplication, returnTo?: string | boolean) {
158
+ const returnTo2 =
159
+ returnTo === false
160
+ ? false
161
+ : typeof returnTo === 'string'
162
+ ? returnTo
163
+ : app.$getCurrentPagePath();
164
+ return returnTo2 === app.sys.env.ROUTER_PAGE_LOGIN ? false : returnTo2;
165
+ }
@@ -53,11 +53,11 @@ declare module 'zova' {
53
53
  pagePath: K,
54
54
  options?: IPagePathRecord[K] & IGetPagePathOptions,
55
55
  ): string;
56
- $getPagePathLogin(returnTo?: string, cause?: string): string;
56
+ $getPagePathLogin(returnTo?: string | boolean, cause?: string): string;
57
57
  $getPagePathAccessDenied(): string;
58
58
  $gotoPage(pagePath: string, options?: IGotoPageOptions): TypeGotoPageResult;
59
59
  $gotoHome(options?: IGotoPageOptions): TypeGotoPageResult;
60
- $gotoLogin(returnTo?: string, cause?: string): TypeGotoPageResult;
60
+ $gotoLogin(returnTo?: string | boolean, cause?: string): TypeGotoPageResult;
61
61
  $gotoAccessDenied(): TypeGotoPageResult;
62
62
  $gotoReturnTo(returnTo?: string): TypeGotoPageResult;
63
63
  $getReturnTo(returnTo?: string): string;