@real-router/core 0.147.7 → 0.147.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/Router-D_KKo_8d.js +2 -0
- package/dist/cjs/Router-D_KKo_8d.js.map +1 -0
- package/dist/cjs/api.js +1 -1
- package/dist/cjs/engine/validation/route-batch.d.ts.map +1 -1
- package/dist/cjs/index.js +1 -1
- package/dist/cjs/internals-2GhdY5S9.js +2 -0
- package/dist/cjs/{internals-CPtQ-QBg.js.map → internals-2GhdY5S9.js.map} +1 -1
- package/dist/cjs/namespaces/RoutesNamespace/routesStore.d.ts.map +1 -1
- package/dist/cjs/validation.js +1 -1
- package/dist/esm/Router-BZEAYHJu.mjs +2 -0
- package/dist/esm/Router-BZEAYHJu.mjs.map +1 -0
- package/dist/esm/api.mjs +1 -1
- package/dist/esm/api.mjs.map +1 -1
- package/dist/esm/engine/validation/route-batch.d.mts.map +1 -1
- package/dist/esm/index.mjs +1 -1
- package/dist/esm/internals-CL2IjTt7.mjs +2 -0
- package/dist/esm/{internals-CXO8tXaA.mjs.map → internals-CL2IjTt7.mjs.map} +1 -1
- package/dist/esm/namespaces/RoutesNamespace/routesStore.d.mts.map +1 -1
- package/dist/esm/validation.mjs +1 -1
- package/package.json +1 -1
- package/dist/cjs/Router-BEUUiqKN.js +0 -2
- package/dist/cjs/Router-BEUUiqKN.js.map +0 -1
- package/dist/cjs/internals-CPtQ-QBg.js +0 -2
- package/dist/esm/Router-es3FcDbN.mjs +0 -2
- package/dist/esm/Router-es3FcDbN.mjs.map +0 -1
- package/dist/esm/internals-CXO8tXaA.mjs +0 -2
package/dist/cjs/api.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./RouterError-CentZBJj.js"),t=require("./internals-CPtQ-QBg.js"),n=require("./Router-BEUUiqKN.js"),r=require("./helpers-MqHoQdC_.js"),i=e.i(`router`);function a(t,n){if(t())throw i.code(e.v.REENTRANT_TREE_MUTATION)`cannot mutate the route tree from inside a subscribeChanges handler — the mutation would run while a TREE_CHANGED emit is on the stack and the tree must stay atomic. Defer it: queueMicrotask(() => routes.add(...)) or await.`;if(n())throw i.code(e.v.REENTRANT_TREE_MUTATION)`cannot mutate the route tree from inside replace()'s revalidation — the tree would move under a state that has not been revalidated yet. Defer it: queueMicrotask(() => routes.replace(...)) or await.`}function o(e,t,n){if(t){let r=t===e;if(r||t.startsWith(`${e}.`)){let i=r?``:` (current: "${t}")`;return n.warn(`router.removeRoute`,`Cannot remove route "${e}" — it is currently active${i}. Navigate away first.`),!1}}return!0}function s(e,t){t.warn(`router.removeRoute`,`Route "${e}" removed while navigation is in progress. Removing a route the router is navigating to (or an ancestor of it) fails that navigation. The rejected navigate() promise carries "CANCELLED" while the guard walk is synchronous and "ROUTE_NOT_FOUND" once it has gone async; onTransitionError always reports "ROUTE_NOT_FOUND", and onTransitionCancel never fires. The committed state is not affected either way.`)}function c(e){let t=e.indexOf(`?`);return t===-1?e:e.slice(0,t)}function l(e,t,n,r){return n&&c(e)!==c(t)?(r.error(`router.setRootPath`,"Cannot change the root PATH while navigation is in progress — it moves every route's path, including the one being navigated to. Wait for navigation to complete. (Changing only the `?`-declared query names is allowed here: it moves no paths.)"),!1):!0}function u(e,t){return!e||(t.error(`router.clear`,`Cannot clear routes while navigation is in progress. Wait for navigation to complete.`),!1)}const d=e.i(`router`,`claimContextNamespace`),f=e.i(`router`,`extendRouter`),p=Object.freeze,m=Object.keys,h=new WeakMap;function g(i){let o=h.get(i);if(o)return o;let s=t.o(i),c={makeState:(e,t,n,r)=>s.makeState(e,t,n,r),forwardState:(e,n,r)=>(t.c(s.checks,t.n[`forwardState:entry`],e,n,r),s.forwardState(e,n,r)),matchPath:e=>s.matchPath(e,s.getOptions()),navigateToState:(e,t)=>s.navigateToState(e,t),setRootPath:e=>{if(t.l(s.isDisposed),a(s.treeChanged.isEmitting,()=>s.routeGetStore().revalidating),!l(s.getRootPath(),e,s.isTransitioning(),s.logger))return!1;let n=s.getRootPath();return s.setRootPath(e),n!==e&&s.treeChanged.emit({op:`rootPath`,previous:n,next:e}),!0},getRootPath:s.getRootPath,addEventListener:(e,t)=>s.addEventListener(e,t),buildNavigationState:(e,i={},a={})=>{t.u(s,`buildNavigationState`,e,i);let o=r.t(i);t.c(s.checks,t.n[`buildNavigationState:state`],e,o,a);let c=n.E(s.port(),e,o,a,{diagnoseUndeclared:!0});if(s.buildStateResolved(c.name,c.path))return t.x(`buildNavigationState`,c.name,c.path,s.port().queryNames(c.name)),n.w(c,n.T(c,s.port()))},buildPathResolved:(e,t,n)=>s.buildPathResolved(e,t,n),getAdoptedOrigins:s.getAdoptedOrigins,logger:p({log:(e,t,...n)=>{s.logger.log(e,t,...n)},warn:(e,t,...n)=>{s.logger.warn(e,t,...n)},error:(e,t,...n)=>{s.logger.error(e,t,...n)}}),getDeclaredQueryNames:e=>s.getDeclaredQueryNames(e),getUrlParams:e=>n.C(s.routeGetStore(),e),getForwardMap:()=>{let t=e.s();return e.o(t,s.routeGetStore().config.forwardMap),p(t)},getResolvedLimits:()=>s.dependenciesGetStore().limits,getDependencyKeys:()=>p(m(s.dependenciesGetStore().dependencies)),getExternalGuardNames:()=>{let[e,t]=s.routeGetStore().lifecycleNamespace.getFactoriesByOrigin().external;return p([...new Set([...m(e),...m(t)])])},getOptions:s.getOptions,getTree:s.getTree,addInterceptor:(e,r)=>{t.l(s.isDisposed),n.N(e,r);let i=s.interceptors.get(e);i||(i=[],s.interceptors.set(e,i)),i.push(r);let a=!1;return()=>{a||(a=!0,i.splice(i.indexOf(r),1))}},subscribeDiagnostic:s.subscribeDiagnostic,addCheck:(e,r)=>{t.l(s.isDisposed),n.j(e,r);let i=s.checks.get(e);i||(i=[],s.checks.set(e,i)),i.push(r);let a=!1;return()=>{a||(a=!0,i.splice(i.indexOf(r),1))}},getRouteConfig:e=>{let t=s.routeGetStore();if(t.matcher.hasRoute(e))return t.routeCustomFields[e]},extendRouter:r=>{t.l(s.isDisposed),n.M(r);let a=m(r);for(let t of a)if(t in i)throw f.code(e.v.PLUGIN_CONFLICT)`Cannot extend router: property "${t}" already exists`;let o=a.map(e=>r[e]),c={keys:a};for(let[e,t]of a.entries())i[t]=o[e];s.routerExtensions.push(c);let l=!1;return()=>{if(l)return;l=!0;for(let e of c.keys)delete i[e];let e=s.routerExtensions.indexOf(c);e!==-1&&s.routerExtensions.splice(e,1)}},emitTransitionError:e=>{t.l(s.isDisposed),s.emitTransitionError(e)},claimContextNamespace:n=>{if(t.l(s.isDisposed),typeof n!=`string`||n===``)throw d.type`namespace must be a non-empty string, got ${typeof n==`string`?`an empty string`:typeof n}`;if(s.contextClaimRecords.has(n))throw d.code(e.v.CONTEXT_NAMESPACE_ALREADY_CLAIMED)`Cannot claim context namespace: "${n}" is already claimed by another plugin`;let r={write(t,i){s.contextClaimRecords.get(n)===r&&e.l(t.context,n,i)},release(){s.contextClaimRecords.get(n)===r&&s.contextClaimRecords.delete(n)}};return s.contextClaimRecords.set(n,r),r}},u=p(c);return h.set(i,u),u}const _=e.i(`router`,`clear`),v=Object.freeze,y=Object.keys,b=Object.freeze({replace:!0,revalidate:!0}),x=Object.freeze([]);function S(e,t,r,i){let a=t=>e.has(t);n.x(t.decoders,a),n.x(t.encoders,a),n.x(t.defaultParams,a),n.x(t.defaultSearch,a),n.x(t.forwardMap,a),n.x(t.forwardFnMap,a),n.x(r,a),n.x(t.forwardMap,e=>a(t.forwardMap[e]));let[o,s]=i.getFactories();for(let e of y(s))a(e)&&i.clearCanActivate(e,`both`);for(let e of y(o))a(e)&&i.clearCanDeactivate(e,`both`)}function C(e,t,n,r){let i=n.forwardFnMap[t],a=n.forwardMap[t];i===void 0?a!==void 0&&(e.forwardTo=a):e.forwardTo=i,t in n.defaultParams&&(e.defaultParams=n.defaultParams[t]),t in n.defaultSearch&&(e.defaultSearch=n.defaultSearch[t]),t in n.decoders&&(e.decodeParams=n.decoders[t]),t in n.encoders&&(e.encodeParams=n.encoders[t]);let[o,s]=r;return t in s&&(e.canActivate=s[t]),t in o&&(e.canDeactivate=o[t]),e}function w(t,n,r,i){let a={name:t.name,path:t.path};return C(a,n,r,i),t.children&&e.l(a,`children`,t.children.map(e=>w(e,`${n}.${e.name}`,r,i))),a}function T(e,t,n,r){let i={name:e,path:t};return C(i,e,n,r),v(i)}function E(e,t){let n=new Map,r=e.lifecycleNamespace.getFactories(),i=(a,o)=>{for(let s of a){let a=o?`${o}.${s.name}`:s.name;t(a)&&n.set(a,T(a,s.path,e.config,r)),s.children&&i(s.children,a)}};return i(e.definitions,``),n}function D(e,t){let n=E(e,e=>t.has(e));return v([...n.values()])}function O(e,t,n){let r=n.lifecycleNamespace.getFactories(),i=[],a=(e,t)=>{for(let o of e){let e=t?`${t}.${o.name}`:o.name;i.push(T(e,o.path,n.config,r)),o.children&&a(o.children,e)}};return a(e,t??``),v(i)}function k(e,t){let n=[],r=[];for(let[r,i]of e)t.has(r)||n.push(i);for(let[n,i]of t)e.has(n)||r.push(i);return{removed:v(n),added:v(r)}}function A(e){let t={};return e.forwardTo!==void 0&&(t.forwardTo=e.forwardTo),e.defaultParams!==void 0&&(t.defaultParams=e.defaultParams),e.defaultSearch!==void 0&&(t.defaultSearch=e.defaultSearch),e.encodeParams!==void 0&&(t.encodeParams=e.encodeParams),e.decodeParams!==void 0&&(t.decodeParams=e.decodeParams),v(t)}function j(e,t,r,i){n.a(e,t,r);let a=n.f(e,t,r,i);n.y(a.matcher,a.config,`addRoute`),e.lifecycleNamespace.preflightHandlerLimit(a.pendingCanActivate.keys(),a.pendingCanDeactivate.keys(),!1),n.i(e,a)}function M(e,t,n){e.systemCommit(t,n,b)}function N(e,t,r,i,a){n.l(t,`addRoute`),n.d(t,`addRoute`),n.o(t,`addRoute`),n.s(t,``,`addRoute`),n.c(t,``,`addRoute`);let o=n.p(t,e.rootPath,e.matcherOptions,r.logger);n.y(o.matcher,o.config,`addRoute`),e.lifecycleNamespace.preflightHandlerLimit(o.pendingCanActivate.keys(),o.pendingCanDeactivate.keys(),!0);let s=n.g(o,e.depsStore);e.lifecycleNamespace.clearDefinitionGuards(),n.i(e,o,s),e.revalidating=!0;try{if(a?.(),i!==void 0){let t=r.matchPath(i.path,r.getOptions());if(t){if(t.name===i.name)M(r,{...t,context:i.context,transition:i.transition},i);else{let{toDeactivate:a,toActivate:o,intersection:s}=n.n(t,i,r.getMetaForState);if(e.lifecycleNamespace.canNavigateTo([],o,t,i)){let e={phase:`activating`,from:i.name,reason:`success`,replace:!0,segments:{deactivated:a,activated:o,intersection:s}};M(r,{...t,transition:e},i)}else r.revalidateToNotFound(i.path)}}else r.revalidateToNotFound(i.path)}}finally{e.revalidating=!1}}function P(e,t,r){let i=e.definitions,a=n.S(i,t);if(a===void 0)return;let o=r?D(e,a):x;return S(a,e.config,e.routeCustomFields,e.lifecycleNamespace),n.h(e,i),o}function F(e,t){let r=e.matcher.getSegmentsByName(t);if(!r)return;let i=r.at(-1),a=n.R(i),o=e.lifecycleNamespace.getFactories();return w(a,t,e.config,o)}const I=new WeakMap;function L(r){let i=I.get(r);if(i)return i;let c=t.o(r),l=c.routeGetStore(),d=e=>{c.treeChanged.emit(e)},f=v({add:(e,r)=>{t.l(c.isDisposed),a(c.treeChanged.isEmitting,()=>l.revalidating);let i=Array.isArray(e)?e:[e],o=r?.parent,s=n.I(i);if(t.c(c.checks,t.n[`addRoute:batch`],s,o),j(l,s,o,c.logger),c.treeChanged.listenerCount()>0){let e=O(s,o,l);d(o===void 0?{op:`add`,added:e}:{op:`add`,added:e,parent:o})}},remove:e=>{if(t.l(c.isDisposed),a(c.treeChanged.isEmitting,()=>l.revalidating),t.c(c.checks,t.n[`removeRoute:entry`],e),n.u(e,`removeRoute`),!o(e,c.getStateName(),c.logger))return;let r=c.treeChanged.listenerCount()>0,i=P(l,e,r);if(i===void 0){c.logger.warn(`router.removeRoute`,`Route "${e}" not found. No changes made.`);return}c.isTransitioning()&&s(e,c.logger),r&&d({op:`remove`,name:e,removedSubtree:i})},update:(e,r)=>{if(t.l(c.isDisposed),a(c.treeChanged.isEmitting,()=>l.revalidating),t.c(c.checks,t.n[`updateRoute:entry`],e,r),n.u(e,`updateRoute`),!l.matcher.hasRoute(e))return;c.isTransitioning()&&c.logger.error(`router.updateRoute`,`Updating route "${e}" while navigation is in progress. This may cause unexpected behavior.`);let i=l.lifecycleNamespace,o=n.m(l,i,e,r);if(c.treeChanged.listenerCount()>0){let t=A(o);y(t).length>0&&d({op:`update`,name:e,patch:t})}},clear:()=>{if(t.l(c.isDisposed),a(c.treeChanged.isEmitting,()=>l.revalidating),c.getStateName()!==void 0)throw _.code(e.v.ROUTER_NOT_STOPPED)`Cannot clear routes while a state is committed. Use replace(routes) to swap the tree on a running router, or stop() first.`;if(!u(c.isTransitioning(),c.logger))return;let r=c.treeChanged.listenerCount()>0?v([...E(l,()=>!0).values()]):void 0;n._(l),l.lifecycleNamespace.clearAll(),r!==void 0&&d({op:`clear`,removed:r})},has:e=>(t.c(c.checks,t.n[`hasRoute:entry`],e),l.matcher.hasRoute(e)),get:e=>(t.c(c.checks,t.n[`getRoute:entry`],e),F(l,e)),replace:e=>{t.l(c.isDisposed),a(c.treeChanged.isEmitting,()=>l.revalidating);let i=Array.isArray(e)?e:[e];if(!u(c.isTransitioning(),c.logger))return;let o=n.I(i);t.c(c.checks,t.n[`replaceRoutes:batch`],o);let s=r.getState(),f=c.treeChanged.listenerCount()>0?E(l,()=>!0):void 0;N(l,o,c,s,f===void 0?void 0:()=>{let e=E(l,()=>!0),{removed:t,added:n}=k(f,e);d({op:`replace`,removed:t,added:n})})},subscribeChanges:e=>(n.F(e),c.treeChanged.subscribe(e))});return I.set(r,f),f}const R=Object.hasOwn,z=Object.keys,B=e=>typeof e==`symbol`?e:String(e),V=[];function H(e,t,n,r){if(n===void 0)return;let i=e.dependencies,a=B(t),o=r?z(i):V;if(o.includes(a)){let e=i[a];e!==n&&!(Number.isNaN(e)&&Number.isNaN(n))&&r?.dependencies.warnOverwrite(String(a),`setDependency`)}else r?.dependencies.validateDependencyCount(o.length,e.limits.maxDependencies,`setDependency`);i[a]=n}function U(e,t,r){let i=[],a=e.dependencies,o=new Set(r?z(a):V);n.L(t,(t,s)=>{o.has(t)?i.push(t):(r?.dependencies.validateDependencyCount(o.size,e.limits.maxDependencies,`setDependencies`),o.add(t)),n.A(a,t,s)}),i.length>0&&r?.dependencies.warnBatchOverwrite(i,`setDependencies`)}function W(e){let r=t.o(e);return{get:e=>{r.validator?.dependencies.validateDependencyName(e,`getDependency`);let t=r.dependenciesGetStore(),i=n.O(t,e);return r.validator?.dependencies.validateDependencyExists(e,i),i},getAll:()=>n.k(r.dependenciesGetStore()),set:(e,n)=>{t.l(r.isDisposed),r.validator?.dependencies.validateSetDependencyArgs(e,n,`setDependency`),H(r.dependenciesGetStore(),e,n,r.validator),t.l(r.isDisposed)},setAll:e=>{t.l(r.isDisposed);let n=r.dependenciesGetStore();r.validator?.dependencies.validateDependenciesObject(e,`setDependencies`),U(n,e,r.validator),t.l(r.isDisposed)},remove:e=>{t.l(r.isDisposed),r.validator?.dependencies.validateDependencyName(e,`removeDependency`);let n=r.dependenciesGetStore(),i=B(e);R(n.dependencies,i)||r.validator?.dependencies.warnRemoveNonExistent(String(i)),delete n.dependencies[i]},reset:()=>{t.l(r.isDisposed),n.D(r.dependenciesGetStore())},has:e=>(r.validator?.dependencies.validateDependencyName(e,`hasDependency`),R(r.dependenciesGetStore().dependencies,e))}}function G(e){let r=t.o(e),i=r.routeGetStore().lifecycleNamespace;return{addActivateGuard(e,a){t.l(r.isDisposed),n.P(e,`addActivateGuard`),t.c(r.checks,t.n[`addActivateGuard:entry`],e,a),i.addCanActivate(e,a,!1)},addDeactivateGuard(e,a){t.l(r.isDisposed),n.P(e,`addDeactivateGuard`),t.c(r.checks,t.n[`addDeactivateGuard:entry`],e,a),i.addCanDeactivate(e,a,!1)},removeActivateGuard(e){t.l(r.isDisposed),n.P(e,`removeActivateGuard`),t.c(r.checks,t.n[`removeActivateGuard:entry`],e),i.clearCanActivate(e,`external`)},removeDeactivateGuard(e){t.l(r.isDisposed),n.P(e,`removeDeactivateGuard`),t.c(r.checks,t.n[`removeDeactivateGuard:entry`],e),i.clearCanDeactivate(e,`external`)}}}const K=Object.entries,q=Object.hasOwn,J=e.i(`cloneRouter`);function Y(r,i,a){let o=t.o(r);if(o.isDisposed())throw J.code(e.v.ROUTER_DISPOSED)`cannot clone a disposed router — dispose() is terminal`;o.validator?.dependencies.validateCloneArgs(i);let s=o.routeGetStore(),c=n.z(s.tree),l=s.config,u=s.resolvedForwardMap,d=s.routeCustomFields,{options:f,dependencies:p,pluginFactories:m,loggerConfig:h,limits:g,limitKeys:_}=o.getCloneState(),{definition:v,external:y}=s.lifecycleNamespace.getFactoriesByOrigin(),b={...p};i!==void 0&&n.L(i,(t,n)=>{e.l(b,t,n)});let x=a?.logger,S=x?{...h,...x}:h,C=new n.t(c,{...f,...s.matcherOptions?.queryParams!==void 0&&{queryParams:s.matcherOptions.queryParams},logger:S,..._!==void 0&&{limits:Object.fromEntries(_.filter(e=>q(g,e)).map(e=>[e,g[e]]))},...s.matcherOptions?.urlParamsEncoding!==void 0&&{urlParamsEncoding:s.matcherOptions.urlParamsEncoding}},b),w=t.o(C),T=w.routeGetStore(),E=T.lifecycleNamespace;n.b(T.config,l),n.r(T,Object.assign(T.resolvedForwardMap,u)),Object.assign(T.routeCustomFields,d),s.rootPath!==``&&w.setRootPath(s.rootPath);let[D,O]=v,[k,A]=y;for(let[e,t]of K(D))E.addCanDeactivate(e,t,!0);for(let[e,t]of K(O))E.addCanActivate(e,t,!0);let j=G(C);for(let[e,t]of K(k))j.addDeactivateGuard(e,t);for(let[e,t]of K(A))j.addActivateGuard(e,t);let M=new Set(w.getCloneState().pluginFactories),N=m.filter(e=>!M.has(e));return N.length>0&&C.usePlugin(...N),C}exports.cloneRouter=Y,exports.getDependenciesApi=W,exports.getLifecycleApi=G,exports.getPluginApi=g,exports.getRoutesApi=L;
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./RouterError-CentZBJj.js"),t=require("./internals-2GhdY5S9.js"),n=require("./Router-D_KKo_8d.js"),r=require("./helpers-MqHoQdC_.js"),i=e.i(`router`);function a(t,n){if(t())throw i.code(e.v.REENTRANT_TREE_MUTATION)`cannot mutate the route tree from inside a subscribeChanges handler — the mutation would run while a TREE_CHANGED emit is on the stack and the tree must stay atomic. Defer it: queueMicrotask(() => routes.add(...)) or await.`;if(n())throw i.code(e.v.REENTRANT_TREE_MUTATION)`cannot mutate the route tree from inside replace()'s revalidation — the tree would move under a state that has not been revalidated yet. Defer it: queueMicrotask(() => routes.replace(...)) or await.`}function o(e,t,n){if(t){let r=t===e;if(r||t.startsWith(`${e}.`)){let i=r?``:` (current: "${t}")`;return n.warn(`router.removeRoute`,`Cannot remove route "${e}" — it is currently active${i}. Navigate away first.`),!1}}return!0}function s(e,t){t.warn(`router.removeRoute`,`Route "${e}" removed while navigation is in progress. Removing a route the router is navigating to (or an ancestor of it) fails that navigation. The rejected navigate() promise carries "CANCELLED" while the guard walk is synchronous and "ROUTE_NOT_FOUND" once it has gone async; onTransitionError always reports "ROUTE_NOT_FOUND", and onTransitionCancel never fires. The committed state is not affected either way.`)}function c(e){let t=e.indexOf(`?`);return t===-1?e:e.slice(0,t)}function l(e,t,n,r){return n&&c(e)!==c(t)?(r.error(`router.setRootPath`,"Cannot change the root PATH while navigation is in progress — it moves every route's path, including the one being navigated to. Wait for navigation to complete. (Changing only the `?`-declared query names is allowed here: it moves no paths.)"),!1):!0}function u(e,t){return!e||(t.error(`router.clear`,`Cannot clear routes while navigation is in progress. Wait for navigation to complete.`),!1)}const d=e.i(`router`,`claimContextNamespace`),f=e.i(`router`,`extendRouter`),p=Object.freeze,m=Object.keys,h=new WeakMap;function g(i){let o=h.get(i);if(o)return o;let s=t.o(i),c={makeState:(e,t,n,r)=>s.makeState(e,t,n,r),forwardState:(e,n,r)=>(t.c(s.checks,t.n[`forwardState:entry`],e,n,r),s.forwardState(e,n,r)),matchPath:e=>s.matchPath(e,s.getOptions()),navigateToState:(e,t)=>s.navigateToState(e,t),setRootPath:e=>{if(t.l(s.isDisposed),a(s.treeChanged.isEmitting,()=>s.routeGetStore().revalidating),!l(s.getRootPath(),e,s.isTransitioning(),s.logger))return!1;let n=s.getRootPath();return s.setRootPath(e),n!==e&&s.treeChanged.emit({op:`rootPath`,previous:n,next:e}),!0},getRootPath:s.getRootPath,addEventListener:(e,t)=>s.addEventListener(e,t),buildNavigationState:(e,i={},a={})=>{t.u(s,`buildNavigationState`,e,i);let o=r.t(i);t.c(s.checks,t.n[`buildNavigationState:state`],e,o,a);let c=n.E(s.port(),e,o,a,{diagnoseUndeclared:!0});if(s.buildStateResolved(c.name,c.path))return t.S(`buildNavigationState`,c.name,c.path,s.port().queryNames(c.name)),n.w(c,n.T(c,s.port()))},buildPathResolved:(e,t,n)=>s.buildPathResolved(e,t,n),getAdoptedOrigins:s.getAdoptedOrigins,logger:p({log:(e,t,...n)=>{s.logger.log(e,t,...n)},warn:(e,t,...n)=>{s.logger.warn(e,t,...n)},error:(e,t,...n)=>{s.logger.error(e,t,...n)}}),getDeclaredQueryNames:e=>s.getDeclaredQueryNames(e),getUrlParams:e=>n.C(s.routeGetStore(),e),getForwardMap:()=>{let t=e.s();return e.o(t,s.routeGetStore().config.forwardMap),p(t)},getResolvedLimits:()=>s.dependenciesGetStore().limits,getDependencyKeys:()=>p(m(s.dependenciesGetStore().dependencies)),getExternalGuardNames:()=>{let[e,t]=s.routeGetStore().lifecycleNamespace.getFactoriesByOrigin().external;return p([...new Set([...m(e),...m(t)])])},getOptions:s.getOptions,getTree:s.getTree,addInterceptor:(e,r)=>{t.l(s.isDisposed),n.N(e,r);let i=s.interceptors.get(e);i||(i=[],s.interceptors.set(e,i)),i.push(r);let a=!1;return()=>{a||(a=!0,i.splice(i.indexOf(r),1))}},subscribeDiagnostic:s.subscribeDiagnostic,addCheck:(e,r)=>{t.l(s.isDisposed),n.j(e,r);let i=s.checks.get(e);i||(i=[],s.checks.set(e,i)),i.push(r);let a=!1;return()=>{a||(a=!0,i.splice(i.indexOf(r),1))}},getRouteConfig:e=>{let t=s.routeGetStore();if(t.matcher.hasRoute(e))return t.routeCustomFields[e]},extendRouter:r=>{t.l(s.isDisposed),n.M(r);let a=m(r);for(let t of a)if(t in i)throw f.code(e.v.PLUGIN_CONFLICT)`Cannot extend router: property "${t}" already exists`;let o=a.map(e=>r[e]),c={keys:a};for(let[e,t]of a.entries())i[t]=o[e];s.routerExtensions.push(c);let l=!1;return()=>{if(l)return;l=!0;for(let e of c.keys)delete i[e];let e=s.routerExtensions.indexOf(c);e!==-1&&s.routerExtensions.splice(e,1)}},emitTransitionError:e=>{t.l(s.isDisposed),s.emitTransitionError(e)},claimContextNamespace:n=>{if(t.l(s.isDisposed),typeof n!=`string`||n===``)throw d.type`namespace must be a non-empty string, got ${typeof n==`string`?`an empty string`:typeof n}`;if(s.contextClaimRecords.has(n))throw d.code(e.v.CONTEXT_NAMESPACE_ALREADY_CLAIMED)`Cannot claim context namespace: "${n}" is already claimed by another plugin`;let r={write(t,i){s.contextClaimRecords.get(n)===r&&e.l(t.context,n,i)},release(){s.contextClaimRecords.get(n)===r&&s.contextClaimRecords.delete(n)}};return s.contextClaimRecords.set(n,r),r}},u=p(c);return h.set(i,u),u}const _=e.i(`router`,`clear`),v=Object.freeze,y=Object.keys,b=Object.freeze({replace:!0,revalidate:!0}),x=Object.freeze([]);function S(e,t,r,i){let a=t=>e.has(t);n.x(t.decoders,a),n.x(t.encoders,a),n.x(t.defaultParams,a),n.x(t.defaultSearch,a),n.x(t.forwardMap,a),n.x(t.forwardFnMap,a),n.x(r,a),n.x(t.forwardMap,e=>a(t.forwardMap[e]));let[o,s]=i.getFactories();for(let e of y(s))a(e)&&i.clearCanActivate(e,`both`);for(let e of y(o))a(e)&&i.clearCanDeactivate(e,`both`)}function C(e,t,n,r){let i=n.forwardFnMap[t],a=n.forwardMap[t];i===void 0?a!==void 0&&(e.forwardTo=a):e.forwardTo=i,t in n.defaultParams&&(e.defaultParams=n.defaultParams[t]),t in n.defaultSearch&&(e.defaultSearch=n.defaultSearch[t]),t in n.decoders&&(e.decodeParams=n.decoders[t]),t in n.encoders&&(e.encodeParams=n.encoders[t]);let[o,s]=r;return t in s&&(e.canActivate=s[t]),t in o&&(e.canDeactivate=o[t]),e}function w(t,n,r,i){let a={name:t.name,path:t.path};return C(a,n,r,i),t.children&&e.l(a,`children`,t.children.map(e=>w(e,`${n}.${e.name}`,r,i))),a}function T(e,t,n,r){let i={name:e,path:t};return C(i,e,n,r),v(i)}function E(e,t){let n=new Map,r=e.lifecycleNamespace.getFactories(),i=(a,o)=>{for(let s of a){let a=o?`${o}.${s.name}`:s.name;t(a)&&n.set(a,T(a,s.path,e.config,r)),s.children&&i(s.children,a)}};return i(e.definitions,``),n}function D(e,t){let n=E(e,e=>t.has(e));return v([...n.values()])}function O(e,t,n){let r=n.lifecycleNamespace.getFactories(),i=[],a=(e,t)=>{for(let o of e){let e=t?`${t}.${o.name}`:o.name;i.push(T(e,o.path,n.config,r)),o.children&&a(o.children,e)}};return a(e,t??``),v(i)}function k(e,t){let n=[],r=[];for(let[r,i]of e)t.has(r)||n.push(i);for(let[n,i]of t)e.has(n)||r.push(i);return{removed:v(n),added:v(r)}}function A(e){let t={};return e.forwardTo!==void 0&&(t.forwardTo=e.forwardTo),e.defaultParams!==void 0&&(t.defaultParams=e.defaultParams),e.defaultSearch!==void 0&&(t.defaultSearch=e.defaultSearch),e.encodeParams!==void 0&&(t.encodeParams=e.encodeParams),e.decodeParams!==void 0&&(t.decodeParams=e.decodeParams),v(t)}function j(e,t,r,i){n.a(e,t,r);let a=n.f(e,t,r,i);n.y(a.matcher,a.config,`addRoute`),e.lifecycleNamespace.preflightHandlerLimit(a.pendingCanActivate.keys(),a.pendingCanDeactivate.keys(),!1),n.i(e,a)}function M(e,t,n){e.systemCommit(t,n,b)}function N(e,t,r,i,a){n.l(t,`addRoute`),n.d(t,`addRoute`),n.o(t,`addRoute`),n.s(t,``,`addRoute`),n.c(t,``,`addRoute`);let o=n.p(t,e.rootPath,e.matcherOptions,r.logger);n.y(o.matcher,o.config,`addRoute`),e.lifecycleNamespace.preflightHandlerLimit(o.pendingCanActivate.keys(),o.pendingCanDeactivate.keys(),!0);let s=n.g(o,e.depsStore);e.lifecycleNamespace.clearDefinitionGuards(),n.i(e,o,s),e.revalidating=!0;try{if(a?.(),i!==void 0){let t=r.matchPath(i.path,r.getOptions());if(t){if(t.name===i.name)M(r,{...t,context:i.context,transition:i.transition},i);else{let{toDeactivate:a,toActivate:o,intersection:s}=n.n(t,i,r.getMetaForState);if(e.lifecycleNamespace.canNavigateTo([],o,t,i)){let e={phase:`activating`,from:i.name,reason:`success`,replace:!0,segments:{deactivated:a,activated:o,intersection:s}};M(r,{...t,transition:e},i)}else r.revalidateToNotFound(i.path)}}else r.revalidateToNotFound(i.path)}}finally{e.revalidating=!1}}function P(e,t,r){let i=e.definitions,a=n.S(i,t);if(a===void 0)return;let o=r?D(e,a):x;return S(a,e.config,e.routeCustomFields,e.lifecycleNamespace),n.h(e,i),o}function F(e,t){let r=e.matcher.getSegmentsByName(t);if(!r)return;let i=r.at(-1),a=n.R(i),o=e.lifecycleNamespace.getFactories();return w(a,t,e.config,o)}const I=new WeakMap;function L(r){let i=I.get(r);if(i)return i;let c=t.o(r),l=c.routeGetStore(),d=e=>{c.treeChanged.emit(e)},f=v({add:(e,r)=>{t.l(c.isDisposed),a(c.treeChanged.isEmitting,()=>l.revalidating);let i=Array.isArray(e)?e:[e],o=r?.parent,s=n.I(i);if(t.c(c.checks,t.n[`addRoute:batch`],s,o),j(l,s,o,c.logger),c.treeChanged.listenerCount()>0){let e=O(s,o,l);d(o===void 0?{op:`add`,added:e}:{op:`add`,added:e,parent:o})}},remove:e=>{if(t.l(c.isDisposed),a(c.treeChanged.isEmitting,()=>l.revalidating),t.c(c.checks,t.n[`removeRoute:entry`],e),n.u(e,`removeRoute`),!o(e,c.getStateName(),c.logger))return;let r=c.treeChanged.listenerCount()>0,i=P(l,e,r);if(i===void 0){c.logger.warn(`router.removeRoute`,`Route "${e}" not found. No changes made.`);return}c.isTransitioning()&&s(e,c.logger),r&&d({op:`remove`,name:e,removedSubtree:i})},update:(e,r)=>{if(t.l(c.isDisposed),a(c.treeChanged.isEmitting,()=>l.revalidating),t.c(c.checks,t.n[`updateRoute:entry`],e,r),n.u(e,`updateRoute`),!l.matcher.hasRoute(e))return;c.isTransitioning()&&c.logger.error(`router.updateRoute`,`Updating route "${e}" while navigation is in progress. This may cause unexpected behavior.`);let i=l.lifecycleNamespace,o=n.m(l,i,e,r);if(c.treeChanged.listenerCount()>0){let t=A(o);y(t).length>0&&d({op:`update`,name:e,patch:t})}},clear:()=>{if(t.l(c.isDisposed),a(c.treeChanged.isEmitting,()=>l.revalidating),c.getStateName()!==void 0)throw _.code(e.v.ROUTER_NOT_STOPPED)`Cannot clear routes while a state is committed. Use replace(routes) to swap the tree on a running router, or stop() first.`;if(!u(c.isTransitioning(),c.logger))return;let r=c.treeChanged.listenerCount()>0?v([...E(l,()=>!0).values()]):void 0;n._(l),l.lifecycleNamespace.clearAll(),r!==void 0&&d({op:`clear`,removed:r})},has:e=>(t.c(c.checks,t.n[`hasRoute:entry`],e),l.matcher.hasRoute(e)),get:e=>(t.c(c.checks,t.n[`getRoute:entry`],e),F(l,e)),replace:e=>{t.l(c.isDisposed),a(c.treeChanged.isEmitting,()=>l.revalidating);let i=Array.isArray(e)?e:[e];if(!u(c.isTransitioning(),c.logger))return;let o=n.I(i);t.c(c.checks,t.n[`replaceRoutes:batch`],o);let s=r.getState(),f=c.treeChanged.listenerCount()>0?E(l,()=>!0):void 0;N(l,o,c,s,f===void 0?void 0:()=>{let e=E(l,()=>!0),{removed:t,added:n}=k(f,e);d({op:`replace`,removed:t,added:n})})},subscribeChanges:e=>(n.F(e),c.treeChanged.subscribe(e))});return I.set(r,f),f}const R=Object.hasOwn,z=Object.keys,B=e=>typeof e==`symbol`?e:String(e),V=[];function H(e,t,n,r){if(n===void 0)return;let i=e.dependencies,a=B(t),o=r?z(i):V;if(o.includes(a)){let e=i[a];e!==n&&!(Number.isNaN(e)&&Number.isNaN(n))&&r?.dependencies.warnOverwrite(String(a),`setDependency`)}else r?.dependencies.validateDependencyCount(o.length,e.limits.maxDependencies,`setDependency`);i[a]=n}function U(e,t,r){let i=[],a=e.dependencies,o=new Set(r?z(a):V);n.L(t,(t,s)=>{o.has(t)?i.push(t):(r?.dependencies.validateDependencyCount(o.size,e.limits.maxDependencies,`setDependencies`),o.add(t)),n.A(a,t,s)}),i.length>0&&r?.dependencies.warnBatchOverwrite(i,`setDependencies`)}function W(e){let r=t.o(e);return{get:e=>{r.validator?.dependencies.validateDependencyName(e,`getDependency`);let t=r.dependenciesGetStore(),i=n.O(t,e);return r.validator?.dependencies.validateDependencyExists(e,i),i},getAll:()=>n.k(r.dependenciesGetStore()),set:(e,n)=>{t.l(r.isDisposed),r.validator?.dependencies.validateSetDependencyArgs(e,n,`setDependency`),H(r.dependenciesGetStore(),e,n,r.validator),t.l(r.isDisposed)},setAll:e=>{t.l(r.isDisposed);let n=r.dependenciesGetStore();r.validator?.dependencies.validateDependenciesObject(e,`setDependencies`),U(n,e,r.validator),t.l(r.isDisposed)},remove:e=>{t.l(r.isDisposed),r.validator?.dependencies.validateDependencyName(e,`removeDependency`);let n=r.dependenciesGetStore(),i=B(e);R(n.dependencies,i)||r.validator?.dependencies.warnRemoveNonExistent(String(i)),delete n.dependencies[i]},reset:()=>{t.l(r.isDisposed),n.D(r.dependenciesGetStore())},has:e=>(r.validator?.dependencies.validateDependencyName(e,`hasDependency`),R(r.dependenciesGetStore().dependencies,e))}}function G(e){let r=t.o(e),i=r.routeGetStore().lifecycleNamespace;return{addActivateGuard(e,a){t.l(r.isDisposed),n.P(e,`addActivateGuard`),t.c(r.checks,t.n[`addActivateGuard:entry`],e,a),i.addCanActivate(e,a,!1)},addDeactivateGuard(e,a){t.l(r.isDisposed),n.P(e,`addDeactivateGuard`),t.c(r.checks,t.n[`addDeactivateGuard:entry`],e,a),i.addCanDeactivate(e,a,!1)},removeActivateGuard(e){t.l(r.isDisposed),n.P(e,`removeActivateGuard`),t.c(r.checks,t.n[`removeActivateGuard:entry`],e),i.clearCanActivate(e,`external`)},removeDeactivateGuard(e){t.l(r.isDisposed),n.P(e,`removeDeactivateGuard`),t.c(r.checks,t.n[`removeDeactivateGuard:entry`],e),i.clearCanDeactivate(e,`external`)}}}const K=Object.entries,q=Object.hasOwn,J=e.i(`cloneRouter`);function Y(r,i,a){let o=t.o(r);if(o.isDisposed())throw J.code(e.v.ROUTER_DISPOSED)`cannot clone a disposed router — dispose() is terminal`;o.validator?.dependencies.validateCloneArgs(i);let s=o.routeGetStore(),c=n.z(s.tree),l=s.config,u=s.resolvedForwardMap,d=s.routeCustomFields,{options:f,dependencies:p,pluginFactories:m,loggerConfig:h,limits:g,limitKeys:_}=o.getCloneState(),{definition:v,external:y}=s.lifecycleNamespace.getFactoriesByOrigin(),b={...p};i!==void 0&&n.L(i,(t,n)=>{e.l(b,t,n)});let x=a?.logger,S=x?{...h,...x}:h,C=new n.t(c,{...f,...s.matcherOptions?.queryParams!==void 0&&{queryParams:s.matcherOptions.queryParams},logger:S,..._!==void 0&&{limits:Object.fromEntries(_.filter(e=>q(g,e)).map(e=>[e,g[e]]))},...s.matcherOptions?.urlParamsEncoding!==void 0&&{urlParamsEncoding:s.matcherOptions.urlParamsEncoding}},b),w=t.o(C),T=w.routeGetStore(),E=T.lifecycleNamespace;n.b(T.config,l),n.r(T,Object.assign(T.resolvedForwardMap,u)),Object.assign(T.routeCustomFields,d),s.rootPath!==``&&w.setRootPath(s.rootPath);let[D,O]=v,[k,A]=y;for(let[e,t]of K(D))E.addCanDeactivate(e,t,!0);for(let[e,t]of K(O))E.addCanActivate(e,t,!0);let j=G(C);for(let[e,t]of K(k))j.addDeactivateGuard(e,t);for(let[e,t]of K(A))j.addActivateGuard(e,t);let M=new Set(w.getCloneState().pluginFactories),N=m.filter(e=>!M.has(e));return N.length>0&&C.usePlugin(...N),C}exports.cloneRouter=Y,exports.getDependenciesApi=W,exports.getLifecycleApi=G,exports.getPluginApi=g,exports.getRoutesApi=L;
|
|
2
2
|
//# sourceMappingURL=api.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"route-batch.d.ts","names":[],"sources":["../../../../src/engine/validation/route-batch.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"route-batch.d.ts","names":[],"sources":["../../../../src/engine/validation/route-batch.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBAuXgB,cACd,gBACA,oBACA,WAAW,WACX,qBACA,YAAY,aACZ,oBAAoB,YAAY,uBACvB,SAAS"}
|
package/dist/cjs/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./RouterError-CentZBJj.js"),t=require("./Router-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./RouterError-CentZBJj.js"),t=require("./Router-D_KKo_8d.js"),n=(e=[],n={},r={})=>new t.t(e,n,r),r=Object.freeze,i=new WeakMap,a=e=>{let t=i.get(e);return t||(t=r({navigate:e.navigate,getState:e.getState,isActiveRoute:e.isActiveRoute,canNavigateTo:e.canNavigateTo,subscribe:e.subscribe,subscribeLeave:e.subscribeLeave,isLeaveApproved:e.isLeaveApproved}),i.set(e,t)),t};exports.Router=t.t,exports.RouterError=e.t,exports.UNKNOWN_ROUTE=e.h,exports.constants=e._,exports.createRouter=n,exports.errorCodes=e.v,exports.events=e.y,exports.getNavigator=a,exports.resolveForwardChain=t.v;
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const e=require("./RouterError-CentZBJj.js"),t=Object.hasOwn;function n(e,n){if(n.length!==0&&e!=null)for(let r of n){if(!t(e,r))continue;let n;try{n=e[r]}catch{return}if(n!==void 0)return r}}function r(t,r,i,o,s,c){let l=n(i,o);if(l!==void 0)throw e.i(`router`,t).type`${a(r,l,typeof s==`function`?s():s,c)}`}function i(e,t,n,i){r(e,t,n,i,"the `params` bag this call is about to ship — the channel check above it read a different value, so the caller's object answered differently between the two reads")}function a(e,t,n="the `params` argument",r="Pass it in `search` instead"){return`Route "${e}" declares \`${t}\` as a query param, but it was given in ${n} — the path channel. ${r}; the two channels are separate since RFC-4 M2 and the router never moves a key between them.`}const o=e=>e===58||e===42;function s(e){let t=[],n=0;for(let r=0;r<e.length;r+=1)e.charCodeAt(r)===47&&(t.push(e.slice(n,r)),n=r+1);return t.push(e.slice(n)),t}function c(e){let t=e.length;if(t===0)return{kind:`static`,text:``};if(!o(e.charCodeAt(0))){for(let n=0;n<t;n+=1){let r=e.charCodeAt(n);if(r===60||r===62)return{error:`constraint-removed`};if(o(r)&&n+1<t)return{error:`fused-marker`}}return e.charCodeAt(t-1)===63?{error:`name-less`}:{kind:`static`,text:e}}let n=e.charCodeAt(0)===42,r=1;for(;r<t;){let t=e.charCodeAt(r);if(t===60||t===62||t===63)break;r+=1}let i=e.slice(1,r);return i.length===0?{error:`name-less`}:o(i.charCodeAt(i.length-1))?{error:`trailing-marker`}:r<t?e.charCodeAt(r)===63?{error:`optional-removed`}:{error:`constraint-removed`}:n?{kind:`splat`,name:i}:{kind:`param`,name:i}}function l(e){for(let t of s(e)){let e=c(t);if(`error`in e)return e.error}}function u(e){let t=s(e);for(let e=0;e<t.length;e+=1){let n=c(t[e]);if(`error`in n){if(n.error===`optional-removed`){let n=t[e],r=[...t];return r[e]=n.slice(0,n.indexOf(`?`)),{code:`optional-removed`,segment:n,withoutSegment:t.filter((t,n)=>n!==e).join(`/`),requiredForm:r.join(`/`)}}return n.error===`constraint-removed`?{code:`constraint-removed`,segment:t[e]}:void 0}}}const d=/[<>]/u;function f(e){for(let t=0;t<e.length;t+=1){if(e.codePointAt(t)!==63)continue;let n=t+1<e.length?e.codePointAt(t+1):-1;if(n!==-1&&n!==47&&n!==63&&n!==60)return t}return-1}const p=Object.freeze([]),m=Object.freeze({}),h=Object.freeze({urlParams:p,queryParams:p,paramTypeMap:m,pathPattern:``});function g(e,t,n){for(let r of s(e)){if(r.length===0)continue;let e=c(r);`error`in e||e.kind===`static`||(t.push(e.name),n[e.name]=`url`)}}function _(t){let n=[],r=[],i=e.s(),a=f(t);if(a!==-1){let e=t.slice(a+1).split(`&`);for(let t of e){let e=t.trim();e.length>0&&(r.push(e),i[e]=`query`)}t=t.slice(0,a)}return g(t,n,i),v(n,r,e.c(i),t)}function v(e,t,n,r){return{urlParams:e.length===0?p:e,queryParams:t.length===0?p:t,paramTypeMap:e.length===0&&t.length===0?m:n,pathPattern:r}}const y=/^[A-Z_a-z][\w-]*$/,b=/\S/,x=1e4;function S(t,n){if(t===``)throw e.i(`router`,n).type`Route name cannot be empty`}function C(t,n){if(!b.test(t))throw e.i(`router`,n).type`Route name cannot contain only whitespace`}function w(t,n){if(t.length>x)throw e.i(`router`,n).type`Route name exceeds maximum length of ${x} characters`}function T(t,n){if(t.includes(`.`))throw e.i(`router`,n).type`Route name "${t}" cannot contain dots. Use children array or { parent } option in addRoute() instead.`}function E(t,n){if(!y.test(t))throw e.i(`router`,n).type`Invalid route name "${t}". Name must start with a letter or underscore, followed by letters, numbers, underscores, or hyphens.`}function D(t,n){return e.i(`router`,t).type`${n}`}function ee(e,t,n,r){let i=new Set;for(let a of e){if(i.has(a))throw D(n,`Invalid path for route "${t}": duplicate parameter name ':${a}' in "${r}" (a param name must be unique within a route — the second binding would overwrite the first)`);i.add(a)}}function O(e,t,n,r){for(let i of e)if(d.test(i))throw D(n,`Invalid path for route "${t}": invalid query-param name "${i}" in "${r}" (a query-param name cannot contain '<' or '>' — it would never round-trip; rename the query param)`)}function k(e){let t=!0,n=!1;for(let r of e){if(r===`/`){t=!0;continue}if(t&&=(n=r===`:`||r===`*`,!1),!n&&r.codePointAt(0)>=128)return!0}return!1}function A(e,t,n){switch(e){case`name-less`:case`trailing-marker`:return`Invalid path for route "${t}": parameter marker (':' or '*') without a name in "${n}"`;case`fused-marker`:return`Invalid path for route "${t}": parameter marker (':' or '*') must begin a segment, but "${n}" fuses one to a static prefix (use a boundary marker like "/a/:b")`}}function j(e,t){return e.code===`optional-removed`?`Invalid path for route "${t}": optional params are not supported — "${e.segment}". Declare two sibling routes instead: "${e.withoutSegment}" and "${e.requiredForm}" (the route hierarchy already expresses optionality)`:`Invalid path for route "${t}": regex constraints are not supported — '<' and '>' are reserved in path segments ("${e.segment}"). Match the segment as a plain string and validate the value in a guard (canActivate) or app code`}function M(e,t,n,r){if(typeof e!=`string`){let t;throw t=e===null?`null`:Array.isArray(e)?`array`:typeof e,D(n,`Route path must be a string, got ${t}`)}if(e===``)return;if(/\s/.test(e))throw D(n,`Invalid path for route "${t}": whitespace not allowed in "${e}"`);if(!/^([/?~]|[^/]+$)/.test(e))throw D(n,`Route "${t}" has invalid path format: "${e}". Path should start with '/', '~', '?' or be a relative segment.`);if(e.includes(`//`))throw D(n,`Invalid path for route "${t}": double slashes not allowed in "${e}"`);let{pathPattern:i,urlParams:a,queryParams:o}=_(e);ee(a,t,n,e),O(o,t,n,e);let s=u(i);if(s!==void 0)throw D(n,j(s,t));let c=l(i);if(c!==void 0)throw D(n,A(c,t,e));if(k(i))throw D(n,`Invalid path for route "${t}": non-ASCII static segment in "${e}" — match compares static segments raw and rejects non-ASCII input, so this route would never match. Percent-encode it (e.g. '/caf%C3%A9') or use a param`);let d=r&&r.paramMeta.urlParams.length>0;if(e.startsWith(`~`)&&d)throw D(n,`Absolute path "${e}" cannot be used under parent route with URL parameters`)}const N=Object.getOwnPropertyDescriptor,P=Object.keys,F=Object.getPrototypeOf;function I(e){if(e===null)return`null`;if(typeof e==`object`){try{let t=e.constructor;if(typeof t==`function`&&t.name!==`Object`)return t.name||`object`}catch{}return`object`}return typeof e}function L(e){for(let t of P(e)){let n=N(e,t);if(n&&(n.get||n.set))return!0}return!1}function R(t,n){if(!t||typeof t!=`object`)throw e.i(`router`,n).type`Route must be an object, got ${I(t)}`;let r=F(t);if(r!==Object.prototype&&r!==null)throw e.i(`router`,n).type`Route must be a plain object, got ${I(t)}`;if(L(t))throw e.i(`router`,n).type`Route must not have getters or setters`}function z(t,n,r,i){if(typeof n!=`function`)throw e.i(`router`,i).type`Route "${r}" ${t} must be a function`}function B(e,t,n,r){t!==void 0&&z(e,t,n,r)}function V(t,n){if(typeof t.name!=`string`)throw e.i(`router`,n).type`Route name must be a string, got ${I(t.name)}`;let r=t.name;S(r,n),C(r,n),w(r,n),!r.startsWith(`@@`)&&(T(r,n),E(r,n))}function H(e,t){if(!t.includes(`.`))return e.children.get(t);let n=e;for(let e of t.split(`.`))if(n=n.children.get(e),!n)return;return n}function U(t,n,r){if(H(t,n))throw e.i(`router`,r).plain`Route "${n}" already exists`}function te(t,n,r){if(t.has(n))throw e.i(`router`,r).plain`Duplicate route "${n}" in batch`;t.add(n)}function W(t,n,r,i){let a=n===``?t:H(t,n);if(a){for(let t of a.children.values())if(t.path===r)throw e.i(`router`,i).plain`Path "${r}" is already defined`}}function G(t,n,r,i){let a=t.get(n);if(a?.has(r))throw e.i(`router`,i).plain`Path "${r}" is already defined`;a?a.add(r):t.set(n,new Set([r]))}function K(t,n,r,i=``,a,o){R(t,n);let s=t;V(s,n),M(s.path,s.name,n,r);let c=s.name,l=i?`${i}.${c}`:c;B(`encodeParams`,s.encodeParams,l,n),B(`decodeParams`,s.decodeParams,l,n),r&&l&&U(r,l,n),a&&te(a,l,n);let u=s.path,d=i;if(r&&W(r,d,u,n),o&&G(o,d,u,n),s.children!==void 0){if(!Array.isArray(s.children))throw e.i(`router`,n).type`Route "${c}" children must be an array, got ${I(s.children)}`;for(let e of s.children)K(e,n,r,l,a,o)}}const q=new WeakMap,J=Symbol.for(`real-router.router`);function Y(e){try{return e?.[J]===!0}catch{return!1}}function X(e){let t=q.get(e);if(!t)throw TypeError(Y(e)?"[real-router] This IS a router, but not one this copy of @real-router/core built. Core identifies a router by object identity, so it is either wrapped in a Proxy (Vue `reactive()` / Pinia — store it with `markRaw`), or your dependency tree holds two copies of @real-router/core — dedupe it to one.":`[real-router] Invalid router instance — not found in internals registry`);return t}function Z(e,t,n,i){r(t,n,i,e.getDeclaredQueryNames(n))}function Q(t){if(t())throw e.n(new e.t(e.v.ROUTER_DISPOSED,{message:`[router] this router is disposed — dispose() is terminal`}))}function ne(e,t){q.set(e,t),Object.defineProperty(e,J,{value:!0})}function $(e,t,n,r){let i=t;for(let t of e){let e=i,n=r===void 0?e:(...t)=>r(e(...t));i=(...e)=>t(n,...e)}return i(...n)}const re={start:`start`,forwardState:`forwardState`},ie={PLUGIN_AFTER_START:`PLUGIN_AFTER_START`},ae={"buildPath:params":`buildPath:params`,"buildPathResolved:params":`buildPathResolved:params`,"canNavigateTo:entry":`canNavigateTo:entry`,"canNavigateTo:params":`canNavigateTo:params`,"navigate:entry":`navigate:entry`,"navigate:params":`navigate:params`,"addRoute:batch":`addRoute:batch`,"replaceRoutes:batch":`replaceRoutes:batch`,"removeRoute:entry":`removeRoute:entry`,"updateRoute:entry":`updateRoute:entry`,"hasRoute:entry":`hasRoute:entry`,"getRoute:entry":`getRoute:entry`,"forwardState:entry":`forwardState:entry`,"buildNavigationState:state":`buildNavigationState:state`,"addActivateGuard:entry":`addActivateGuard:entry`,"addDeactivateGuard:entry":`addDeactivateGuard:entry`,"removeActivateGuard:entry":`removeActivateGuard:entry`,"removeDeactivateGuard:entry":`removeDeactivateGuard:entry`};function oe(e,t,...n){let r=e.get(t);if(r===void 0)return;let i=r.length;for(let e=0;e<i&&e<r.length;e++)r[e](...n)}function se(e,t,n){return((...r)=>{let i=n.get(e);return!i||i.length===0?t(...r):$(i,t,r)})}function ce(e,t,n,r,i){return(a,o,s)=>{let c=n.get(e);return!c||c.length===0?t(a,o,s):$(c,t,i(a,o,s),r)}}Object.defineProperty(exports,"C",{enumerable:!0,get:function(){return n}}),Object.defineProperty(exports,"S",{enumerable:!0,get:function(){return i}}),Object.defineProperty(exports,"_",{enumerable:!0,get:function(){return d}}),Object.defineProperty(exports,"a",{enumerable:!0,get:function(){return ce}}),Object.defineProperty(exports,"b",{enumerable:!0,get:function(){return s}}),Object.defineProperty(exports,"c",{enumerable:!0,get:function(){return oe}}),Object.defineProperty(exports,"d",{enumerable:!0,get:function(){return z}}),Object.defineProperty(exports,"f",{enumerable:!0,get:function(){return K}}),Object.defineProperty(exports,"g",{enumerable:!0,get:function(){return h}}),Object.defineProperty(exports,"h",{enumerable:!0,get:function(){return S}}),Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return se}}),Object.defineProperty(exports,"l",{enumerable:!0,get:function(){return Q}}),Object.defineProperty(exports,"m",{enumerable:!0,get:function(){return T}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return ae}}),Object.defineProperty(exports,"o",{enumerable:!0,get:function(){return X}}),Object.defineProperty(exports,"p",{enumerable:!0,get:function(){return R}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return re}}),Object.defineProperty(exports,"s",{enumerable:!0,get:function(){return ne}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return ie}}),Object.defineProperty(exports,"u",{enumerable:!0,get:function(){return Z}}),Object.defineProperty(exports,"v",{enumerable:!0,get:function(){return _}}),Object.defineProperty(exports,"w",{enumerable:!0,get:function(){return a}}),Object.defineProperty(exports,"x",{enumerable:!0,get:function(){return r}}),Object.defineProperty(exports,"y",{enumerable:!0,get:function(){return c}});
|
|
2
|
+
//# sourceMappingURL=internals-2GhdY5S9.js.map
|