@real-router/core 0.38.0 → 0.40.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (89) hide show
  1. package/README.md +27 -5
  2. package/dist/cjs/Router-B-Pev7K2.d.ts +46 -0
  3. package/dist/cjs/RouterValidator-mx2Zooya.d.ts +136 -0
  4. package/dist/cjs/api.d.ts +2 -1
  5. package/dist/cjs/api.js +1 -1
  6. package/dist/cjs/api.js.map +1 -1
  7. package/dist/cjs/index.d-y2b-8_3Y.d.ts +236 -0
  8. package/dist/cjs/index.d.ts +7 -24
  9. package/dist/cjs/index.js +1 -1
  10. package/dist/cjs/index.js.map +1 -1
  11. package/dist/cjs/metafile-cjs.json +1 -1
  12. package/dist/cjs/utils.d.ts +6 -1
  13. package/dist/cjs/utils.js +1 -1
  14. package/dist/cjs/utils.js.map +1 -1
  15. package/dist/cjs/validation.d.ts +184 -0
  16. package/dist/cjs/validation.js +1 -0
  17. package/dist/cjs/validation.js.map +1 -0
  18. package/dist/esm/Router-B-Pev7K2.d.mts +46 -0
  19. package/dist/esm/RouterValidator-mx2Zooya.d.mts +136 -0
  20. package/dist/esm/api.d.mts +2 -1
  21. package/dist/esm/api.mjs +1 -1
  22. package/dist/esm/api.mjs.map +1 -1
  23. package/dist/esm/chunk-5QXFUUDL.mjs +1 -0
  24. package/dist/esm/chunk-5QXFUUDL.mjs.map +1 -0
  25. package/dist/esm/chunk-HHIXK5UM.mjs +1 -0
  26. package/dist/esm/chunk-HHIXK5UM.mjs.map +1 -0
  27. package/dist/esm/chunk-QUUNDESP.mjs +1 -0
  28. package/dist/esm/chunk-QUUNDESP.mjs.map +1 -0
  29. package/dist/esm/chunk-RA5VYM7M.mjs +1 -0
  30. package/dist/esm/chunk-RA5VYM7M.mjs.map +1 -0
  31. package/dist/esm/index.d-y2b-8_3Y.d.mts +236 -0
  32. package/dist/esm/index.d.mts +7 -24
  33. package/dist/esm/index.mjs +1 -1
  34. package/dist/esm/metafile-esm.json +1 -1
  35. package/dist/esm/utils.d.mts +6 -1
  36. package/dist/esm/utils.mjs +1 -1
  37. package/dist/esm/utils.mjs.map +1 -1
  38. package/dist/esm/validation.d.mts +184 -0
  39. package/dist/esm/validation.mjs +1 -0
  40. package/dist/esm/validation.mjs.map +1 -0
  41. package/package.json +18 -5
  42. package/src/Router.ts +73 -99
  43. package/src/api/cloneRouter.ts +1 -30
  44. package/src/api/getDependenciesApi.ts +45 -86
  45. package/src/api/getLifecycleApi.ts +24 -19
  46. package/src/api/getPluginApi.ts +20 -28
  47. package/src/api/getRoutesApi.ts +49 -106
  48. package/src/constants.ts +0 -30
  49. package/src/guards.ts +46 -0
  50. package/src/helpers.ts +0 -17
  51. package/src/index.ts +4 -0
  52. package/src/internals.ts +6 -5
  53. package/src/namespaces/EventBusNamespace/EventBusNamespace.ts +2 -2
  54. package/src/namespaces/NavigationNamespace/NavigationNamespace.ts +0 -25
  55. package/src/namespaces/OptionsNamespace/OptionsNamespace.ts +4 -26
  56. package/src/namespaces/OptionsNamespace/constants.ts +0 -20
  57. package/src/namespaces/OptionsNamespace/index.ts +1 -5
  58. package/src/namespaces/OptionsNamespace/validators.ts +6 -245
  59. package/src/namespaces/PluginsNamespace/PluginsNamespace.ts +18 -59
  60. package/src/namespaces/PluginsNamespace/constants.ts +3 -6
  61. package/src/namespaces/PluginsNamespace/validators.ts +2 -57
  62. package/src/namespaces/RouteLifecycleNamespace/RouteLifecycleNamespace.ts +27 -84
  63. package/src/namespaces/RouterLifecycleNamespace/RouterLifecycleNamespace.ts +0 -16
  64. package/src/namespaces/RoutesNamespace/RoutesNamespace.ts +3 -12
  65. package/src/namespaces/RoutesNamespace/constants.ts +0 -8
  66. package/src/namespaces/RoutesNamespace/forwardChain.ts +34 -0
  67. package/src/namespaces/RoutesNamespace/index.ts +1 -1
  68. package/src/namespaces/RoutesNamespace/routeGuards.ts +62 -0
  69. package/src/namespaces/RoutesNamespace/routesStore.ts +7 -51
  70. package/src/namespaces/StateNamespace/StateNamespace.ts +0 -33
  71. package/src/namespaces/StateNamespace/helpers.ts +1 -1
  72. package/src/namespaces/index.ts +0 -3
  73. package/src/typeGuards.ts +1 -15
  74. package/src/types/RouterValidator.ts +155 -0
  75. package/src/utils/getStaticPaths.ts +50 -0
  76. package/src/utils/index.ts +4 -0
  77. package/src/validation.ts +12 -0
  78. package/src/wiring/RouterWiringBuilder.ts +32 -9
  79. package/dist/cjs/index.d-DDimDpYc.d.ts +0 -165
  80. package/dist/esm/chunk-CG7TKDP3.mjs +0 -1
  81. package/dist/esm/chunk-CG7TKDP3.mjs.map +0 -1
  82. package/dist/esm/index.d-DDimDpYc.d.mts +0 -165
  83. package/src/namespaces/DependenciesNamespace/validators.ts +0 -103
  84. package/src/namespaces/EventBusNamespace/validators.ts +0 -36
  85. package/src/namespaces/NavigationNamespace/validators.ts +0 -47
  86. package/src/namespaces/RouteLifecycleNamespace/validators.ts +0 -65
  87. package/src/namespaces/RoutesNamespace/forwardToValidation.ts +0 -408
  88. package/src/namespaces/RoutesNamespace/validators.ts +0 -566
  89. package/src/namespaces/StateNamespace/validators.ts +0 -46
@@ -0,0 +1,236 @@
1
+ /**
2
+ * Path Matcher Type Definitions.
3
+ *
4
+ * Core types for path matching and parameter extraction.
5
+ *
6
+ * @module path-matcher/types
7
+ */
8
+ /**
9
+ * Constraint pattern for a URL parameter.
10
+ */
11
+ interface ConstraintPattern {
12
+ /**
13
+ * Compiled RegExp for validating the parameter value.
14
+ *
15
+ * @example /^(\d+)$/ for constraint "<\\d+>"
16
+ */
17
+ readonly pattern: RegExp;
18
+ /**
19
+ * Raw constraint string from the route pattern.
20
+ *
21
+ * @example "<\\d+>"
22
+ */
23
+ readonly constraint: string;
24
+ }
25
+ /**
26
+ * Parameter metadata extracted from a route path pattern.
27
+ */
28
+ interface ParamMeta {
29
+ /**
30
+ * URL parameter names extracted from the path pattern.
31
+ *
32
+ * @example [":id", ":postId"] from "/users/:id/posts/:postId"
33
+ */
34
+ readonly urlParams: readonly string[];
35
+ /**
36
+ * Query parameter names extracted from the path pattern.
37
+ *
38
+ * @example ["q", "page"] from "/search?q&page"
39
+ */
40
+ readonly queryParams: readonly string[];
41
+ /**
42
+ * Splat parameter names extracted from the path pattern.
43
+ *
44
+ * @example ["path"] from "/files/*path"
45
+ */
46
+ readonly spatParams: readonly string[];
47
+ /**
48
+ * Map of parameter names to their type (url or query).
49
+ *
50
+ * @example { id: "url", q: "query" }
51
+ */
52
+ readonly paramTypeMap: Readonly<Record<string, "url" | "query">>;
53
+ /**
54
+ * Map of parameter names to their constraint patterns.
55
+ *
56
+ * Only includes parameters with explicit constraints (e.g., `:id<\\d+>`).
57
+ * Parameters without constraints are not included in this map.
58
+ *
59
+ * @example
60
+ * ```typescript
61
+ * buildParamMeta("/users/:id<\\d+>").constraintPatterns.get("id")
62
+ * // → { pattern: /^(\d+)$/, constraint: "<\\d+>" }
63
+ *
64
+ * buildParamMeta("/users/:id").constraintPatterns.size
65
+ * // → 0 (no constraints)
66
+ * ```
67
+ */
68
+ readonly constraintPatterns: ReadonlyMap<string, ConstraintPattern>;
69
+ /**
70
+ * Path pattern without query string, pre-computed for buildPath.
71
+ *
72
+ * @example "/users/:id" from "/users/:id?q&page"
73
+ */
74
+ readonly pathPattern: string;
75
+ }
76
+ /**
77
+ * URL parameter encoding strategies.
78
+ *
79
+ * - `default` - encodeURIComponent preserving sub-delimiters (+, :, ', !, ,, ;, *)
80
+ * - `uri` - encodeURI/decodeURI
81
+ * - `uriComponent` - encodeURIComponent/decodeURIComponent
82
+ * - `none` - no encoding/decoding
83
+ */
84
+ type URLParamsEncodingType = "default" | "uri" | "uriComponent" | "none";
85
+ interface MatcherInputNode {
86
+ readonly name: string;
87
+ readonly path: string;
88
+ readonly fullName: string;
89
+ readonly absolute: boolean;
90
+ readonly children: ReadonlyMap<string, MatcherInputNode>;
91
+ readonly nonAbsoluteChildren: readonly MatcherInputNode[];
92
+ readonly paramMeta: ParamMeta;
93
+ readonly paramTypeMap: Readonly<Record<string, "url" | "query">>;
94
+ readonly staticPath: string | null;
95
+ }
96
+ /**
97
+ * Per-call options for buildPath.
98
+ */
99
+ interface BuildPathOptions {
100
+ readonly queryParamsMode?: "default" | "strict" | "loose" | undefined;
101
+ readonly trailingSlash?: "default" | "always" | "never" | undefined;
102
+ }
103
+ interface MatchResult {
104
+ readonly segments: readonly MatcherInputNode[];
105
+ readonly params: Readonly<Record<string, unknown>>;
106
+ readonly meta: Readonly<Record<string, Record<string, "url" | "query">>>;
107
+ }
108
+ interface SegmentMatcherOptions {
109
+ caseSensitive?: boolean;
110
+ strictTrailingSlash?: boolean;
111
+ strictQueryParams?: boolean;
112
+ urlParamsEncoding?: URLParamsEncodingType;
113
+ parseQueryString?: (queryString: string) => Record<string, unknown>;
114
+ buildQueryString?: (params: Record<string, unknown>) => string;
115
+ }
116
+ interface ResolvedMatcherOptions {
117
+ readonly caseSensitive: boolean;
118
+ readonly strictTrailingSlash: boolean;
119
+ readonly strictQueryParams: boolean;
120
+ readonly urlParamsEncoding: URLParamsEncodingType;
121
+ readonly parseQueryString: (queryString: string) => Record<string, unknown>;
122
+ readonly buildQueryString: (params: Record<string, unknown>) => string;
123
+ }
124
+
125
+ declare class SegmentMatcher {
126
+ #private;
127
+ get options(): ResolvedMatcherOptions;
128
+ constructor(options?: SegmentMatcherOptions);
129
+ registerTree(node: MatcherInputNode): void;
130
+ match(path: string): MatchResult | undefined;
131
+ buildPath(name: string, params?: Record<string, unknown>, options?: BuildPathOptions): string;
132
+ getSegmentsByName(name: string): readonly MatcherInputNode[] | undefined;
133
+ getMetaByName(name: string): Readonly<Record<string, Record<string, "url" | "query">>> | undefined;
134
+ hasRoute(name: string): boolean;
135
+ setRootPath(rootPath: string): void;
136
+ }
137
+
138
+ /**
139
+ * Builder Module Type Definitions.
140
+ *
141
+ * Types for route tree construction and data structures.
142
+ *
143
+ * @module builder/types
144
+ */
145
+
146
+ /**
147
+ * Definition of a route for configuration.
148
+ */
149
+ interface RouteDefinition {
150
+ [key: string]: unknown;
151
+ name: string;
152
+ path: string;
153
+ children?: RouteDefinition[] | undefined;
154
+ }
155
+ /**
156
+ * Immutable route tree node.
157
+ *
158
+ * This is the core data structure of the new route-tree architecture.
159
+ * It contains only data (no methods) and is created by the builder.
160
+ *
161
+ * All caches are pre-computed at build time:
162
+ * - nonAbsoluteChildren: filtered children without absolute paths
163
+ * - absoluteDescendants: all descendants with absolute paths (recursive)
164
+ * - parentSegments: array from root to parent
165
+ * - fullName: pre-computed "users.profile" instead of runtime join
166
+ */
167
+ interface RouteTree {
168
+ /** Route segment name (e.g., "users" in "users.profile") */
169
+ readonly name: string;
170
+ /** Route path pattern (e.g., "/users/:id") */
171
+ readonly path: string;
172
+ /** Whether this route uses absolute path matching (path starts with "~") */
173
+ readonly absolute: boolean;
174
+ /** Child route nodes (Map for O(1) lookup by name) */
175
+ readonly children: ReadonlyMap<string, RouteTree>;
176
+ /** Parameter metadata extracted from path pattern (replaces parser dependency) */
177
+ readonly paramMeta: ParamMeta;
178
+ /** Parent node (null for root) */
179
+ readonly parent: RouteTree | null;
180
+ /** Children without absolute paths (for regular matching) */
181
+ readonly nonAbsoluteChildren: readonly RouteTree[];
182
+ /** Pre-computed full name (e.g., "users.profile") */
183
+ readonly fullName: string;
184
+ /**
185
+ * Pre-computed static path for routes without parameters.
186
+ * Used by buildPath fast path to avoid inject() overhead.
187
+ * Only set when route has no URL params, query params, or splat params.
188
+ */
189
+ readonly staticPath: string | null;
190
+ /**
191
+ * Pre-computed parameter type map for this segment.
192
+ * Cached to avoid recomputing on every navigation.
193
+ * Maps param name → "url" | "query".
194
+ */
195
+ readonly paramTypeMap: Readonly<Record<string, "url" | "query">>;
196
+ }
197
+
198
+ /**
199
+ * Matcher Factory.
200
+ *
201
+ * Creates a pre-configured path matcher with search-params DI baked in.
202
+ * This is the public API for creating matchers — SegmentMatcher class
203
+ * and search-params functions are internal implementation details.
204
+ *
205
+ * @module route-tree/createMatcher
206
+ */
207
+
208
+ /**
209
+ * Query string formatting options.
210
+ *
211
+ * Controls how arrays, booleans, and nulls are serialized in query strings.
212
+ */
213
+ interface QueryParamsConfig {
214
+ readonly arrayFormat?: "none" | "brackets" | "index" | "comma";
215
+ readonly booleanFormat?: "none" | "string" | "empty-true";
216
+ readonly nullFormat?: "default" | "hidden";
217
+ }
218
+ /**
219
+ * Options for creating a path matcher.
220
+ */
221
+ interface CreateMatcherOptions {
222
+ readonly caseSensitive?: boolean;
223
+ readonly strictTrailingSlash?: boolean;
224
+ readonly strictQueryParams?: boolean;
225
+ readonly urlParamsEncoding?: "default" | "uri" | "uriComponent" | "none";
226
+ readonly queryParams?: QueryParamsConfig;
227
+ }
228
+ /**
229
+ * Path matcher instance type.
230
+ *
231
+ * Opaque type — consumers use methods (match, buildPath, hasRoute, etc.)
232
+ * without knowing the underlying SegmentMatcher implementation.
233
+ */
234
+ type Matcher = SegmentMatcher;
235
+
236
+ export type { CreateMatcherOptions as C, Matcher as M, RouteTree as R, RouteDefinition as a };
@@ -1,27 +1,8 @@
1
- import { Params, RouteTreeState, ErrorCodeKeys, ErrorCodeValues, ErrorCodeToValueMap, EventToNameMap, State, DefaultDependencies, Route, Options, Router as Router$1, Navigator } from '@real-router/types';
1
+ export { B as BuildStateResultWithSegments, R as RouterValidator } from './RouterValidator-mx2Zooya.mjs';
2
+ import { R as Router } from './Router-B-Pev7K2.mjs';
3
+ import { ErrorCodeKeys, ErrorCodeValues, ErrorCodeToValueMap, EventToNameMap, State, DefaultDependencies, Route, Options, Router as Router$1, Navigator } from '@real-router/types';
2
4
  export { Config, DefaultDependencies, GuardFn, GuardFnFactory, Listener, NavigationOptions, Navigator, Options, Params, Plugin, PluginFactory, Route, RouteConfigUpdate, SimpleState, State, StateMeta, SubscribeFn, SubscribeState, Subscription, Unsubscribe } from '@real-router/types';
3
- import { R as Router } from './index.d-DDimDpYc.mjs';
4
- export { a as RouteTree } from './index.d-DDimDpYc.mjs';
5
-
6
- /**
7
- * Core-internal types + re-exports from @real-router/types.
8
- *
9
- * Factory types (PluginFactory, GuardFnFactory) and
10
- * route config types (Route, RouteConfigUpdate) are canonical in @real-router/types
11
- * and re-exported here for backward compatibility.
12
- */
13
-
14
- /**
15
- * Extended build result that includes segments for path building.
16
- * Used internally to avoid duplicate getSegmentsByName calls.
17
- *
18
- * @param segments - Route segments from getSegmentsByName (typed as unknown[] for cross-package compatibility)
19
- * @internal
20
- */
21
- interface BuildStateResultWithSegments<P extends Params = Params> {
22
- readonly state: RouteTreeState<P>;
23
- readonly segments: readonly unknown[];
24
- }
5
+ export { R as RouteTree } from './index.d-y2b-8_3Y.mjs';
25
6
 
26
7
  type ConstantsKeys = "UNKNOWN_ROUTE";
27
8
  type Constants = Record<ConstantsKeys, string>;
@@ -251,4 +232,6 @@ declare const createRouter: <Dependencies extends DefaultDependencies = DefaultD
251
232
 
252
233
  declare const getNavigator: <Dependencies extends DefaultDependencies = DefaultDependencies>(router: Router$1<Dependencies>) => Navigator;
253
234
 
254
- export { type BuildStateResultWithSegments, type Constants, type ErrorCodes, Router, RouterError, UNKNOWN_ROUTE, constants, createRouter, errorCodes, events, getNavigator };
235
+ declare function resolveForwardChain(startRoute: string, forwardMap: Record<string, string>, maxDepth?: number): string;
236
+
237
+ export { type Constants, type ErrorCodes, Router, RouterError, UNKNOWN_ROUTE, constants, createRouter, errorCodes, events, getNavigator, resolveForwardChain };
@@ -1 +1 @@
1
- import{Router as e}from"./chunk-CG7TKDP3.mjs";export{Router,RouterError,UNKNOWN_ROUTE,constants,errorCodes,events}from"./chunk-CG7TKDP3.mjs";var t=(t=[],r={},a={})=>new e(t,r,a),r=new WeakMap,a=e=>{let t=r.get(e);return t||(t=Object.freeze({navigate:e.navigate,getState:e.getState,isActiveRoute:e.isActiveRoute,canNavigateTo:e.canNavigateTo,subscribe:e.subscribe}),r.set(e,t)),t};export{t as createRouter,a as getNavigator};//# sourceMappingURL=index.mjs.map
1
+ import{Router as e}from"./chunk-RA5VYM7M.mjs";export{Router,resolveForwardChain}from"./chunk-RA5VYM7M.mjs";export{RouterError,UNKNOWN_ROUTE,constants,errorCodes,events}from"./chunk-5QXFUUDL.mjs";import"./chunk-QUUNDESP.mjs";var t=(t=[],r={},o={})=>new e(t,r,o),r=new WeakMap,o=e=>{let t=r.get(e);return t||(t=Object.freeze({navigate:e.navigate,getState:e.getState,isActiveRoute:e.isActiveRoute,canNavigateTo:e.canNavigateTo,subscribe:e.subscribe}),r.set(e,t)),t};export{t as createRouter,o as getNavigator};//# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"inputs":{"../event-emitter/dist/esm/index.mjs":{"bytes":1750,"imports":[],"format":"esm"},"../type-guards/dist/esm/index.mjs":{"bytes":3451,"imports":[],"format":"esm"},"src/constants.ts":{"bytes":4159,"imports":[],"format":"esm"},"src/fsm/routerFSM.ts":{"bytes":3088,"imports":[{"path":"@real-router/fsm","kind":"import-statement","external":true}],"format":"esm"},"src/fsm/index.ts":{"bytes":188,"imports":[{"path":"src/fsm/routerFSM.ts","kind":"import-statement","original":"./routerFSM"}],"format":"esm"},"src/helpers.ts":{"bytes":5658,"imports":[{"path":"src/constants.ts","kind":"import-statement","original":"./constants"},{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"}],"format":"esm"},"src/internals.ts":{"bytes":5123,"imports":[],"format":"esm"},"src/namespaces/DependenciesNamespace/dependenciesStore.ts":{"bytes":828,"imports":[{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"}],"format":"esm"},"src/namespaces/DependenciesNamespace/index.ts":{"bytes":190,"imports":[{"path":"src/namespaces/DependenciesNamespace/dependenciesStore.ts","kind":"import-statement","original":"./dependenciesStore"}],"format":"esm"},"src/namespaces/OptionsNamespace/constants.ts":{"bytes":1156,"imports":[],"format":"esm"},"src/namespaces/OptionsNamespace/helpers.ts":{"bytes":1627,"imports":[],"format":"esm"},"src/namespaces/OptionsNamespace/validators.ts":{"bytes":6937,"imports":[{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/namespaces/OptionsNamespace/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"}],"format":"esm"},"src/namespaces/OptionsNamespace/OptionsNamespace.ts":{"bytes":1613,"imports":[{"path":"src/namespaces/OptionsNamespace/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/namespaces/OptionsNamespace/helpers.ts","kind":"import-statement","original":"./helpers"},{"path":"src/namespaces/OptionsNamespace/validators.ts","kind":"import-statement","original":"./validators"}],"format":"esm"},"src/namespaces/OptionsNamespace/index.ts":{"bytes":265,"imports":[{"path":"src/namespaces/OptionsNamespace/OptionsNamespace.ts","kind":"import-statement","original":"./OptionsNamespace"},{"path":"src/namespaces/OptionsNamespace/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/namespaces/OptionsNamespace/helpers.ts","kind":"import-statement","original":"./helpers"}],"format":"esm"},"src/namespaces/StateNamespace/helpers.ts":{"bytes":1045,"imports":[],"format":"esm"},"src/namespaces/StateNamespace/StateNamespace.ts":{"bytes":7409,"imports":[{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/namespaces/StateNamespace/helpers.ts","kind":"import-statement","original":"./helpers"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"},{"path":"src/helpers.ts","kind":"import-statement","original":"../../helpers"}],"format":"esm"},"src/namespaces/StateNamespace/index.ts":{"bytes":168,"imports":[{"path":"src/namespaces/StateNamespace/StateNamespace.ts","kind":"import-statement","original":"./StateNamespace"}],"format":"esm"},"src/namespaces/PluginsNamespace/constants.ts":{"bytes":1120,"imports":[{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"}],"format":"esm"},"src/namespaces/PluginsNamespace/validators.ts":{"bytes":2525,"imports":[{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/namespaces/PluginsNamespace/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"}],"format":"esm"},"src/namespaces/PluginsNamespace/PluginsNamespace.ts":{"bytes":9397,"imports":[{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"src/namespaces/PluginsNamespace/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/namespaces/PluginsNamespace/validators.ts","kind":"import-statement","original":"./validators"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"},{"path":"src/helpers.ts","kind":"import-statement","original":"../../helpers"}],"format":"esm"},"src/namespaces/PluginsNamespace/index.ts":{"bytes":230,"imports":[{"path":"src/namespaces/PluginsNamespace/PluginsNamespace.ts","kind":"import-statement","original":"./PluginsNamespace"},{"path":"src/namespaces/PluginsNamespace/constants.ts","kind":"import-statement","original":"./constants"}],"format":"esm"},"src/namespaces/RouteLifecycleNamespace/validators.ts":{"bytes":1873,"imports":[{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"}],"format":"esm"},"src/namespaces/RouteLifecycleNamespace/RouteLifecycleNamespace.ts":{"bytes":13116,"imports":[{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/namespaces/RouteLifecycleNamespace/validators.ts","kind":"import-statement","original":"./validators"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"},{"path":"src/helpers.ts","kind":"import-statement","original":"../../helpers"}],"format":"esm"},"src/namespaces/RouteLifecycleNamespace/index.ts":{"bytes":195,"imports":[{"path":"src/namespaces/RouteLifecycleNamespace/RouteLifecycleNamespace.ts","kind":"import-statement","original":"./RouteLifecycleNamespace"}],"format":"esm"},"src/namespaces/RoutesNamespace/constants.ts":{"bytes":503,"imports":[],"format":"esm"},"src/namespaces/RoutesNamespace/helpers.ts":{"bytes":3038,"imports":[],"format":"esm"},"../path-matcher/dist/esm/index.mjs":{"bytes":9525,"imports":[],"format":"esm"},"../search-params/dist/esm/index.mjs":{"bytes":3813,"imports":[],"format":"esm"},"../route-tree/dist/esm/index.mjs":{"bytes":6514,"imports":[{"path":"../path-matcher/dist/esm/index.mjs","kind":"import-statement","original":"path-matcher"},{"path":"../search-params/dist/esm/index.mjs","kind":"import-statement","original":"search-params"}],"format":"esm"},"src/namespaces/RoutesNamespace/forwardToValidation.ts":{"bytes":11766,"imports":[{"path":"../route-tree/dist/esm/index.mjs","kind":"import-statement","original":"route-tree"},{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"}],"format":"esm"},"src/namespaces/RoutesNamespace/validators.ts":{"bytes":16834,"imports":[{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"../route-tree/dist/esm/index.mjs","kind":"import-statement","original":"route-tree"},{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/namespaces/RoutesNamespace/forwardToValidation.ts","kind":"import-statement","original":"./forwardToValidation"}],"format":"esm"},"src/namespaces/RoutesNamespace/routesStore.ts":{"bytes":11975,"imports":[{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"../route-tree/dist/esm/index.mjs","kind":"import-statement","original":"route-tree"},{"path":"src/namespaces/RoutesNamespace/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/namespaces/RoutesNamespace/forwardToValidation.ts","kind":"import-statement","original":"./forwardToValidation"},{"path":"src/namespaces/RoutesNamespace/helpers.ts","kind":"import-statement","original":"./helpers"},{"path":"src/namespaces/RoutesNamespace/validators.ts","kind":"import-statement","original":"./validators"}],"format":"esm"},"src/transitionPath.ts":{"bytes":13289,"imports":[],"format":"esm"},"src/namespaces/RoutesNamespace/RoutesNamespace.ts":{"bytes":15363,"imports":[{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/namespaces/RoutesNamespace/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/namespaces/RoutesNamespace/helpers.ts","kind":"import-statement","original":"./helpers"},{"path":"src/namespaces/RoutesNamespace/routesStore.ts","kind":"import-statement","original":"./routesStore"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"},{"path":"src/transitionPath.ts","kind":"import-statement","original":"../../transitionPath"}],"format":"esm"},"src/namespaces/RoutesNamespace/index.ts":{"bytes":347,"imports":[{"path":"src/namespaces/RoutesNamespace/RoutesNamespace.ts","kind":"import-statement","original":"./RoutesNamespace"},{"path":"src/namespaces/RoutesNamespace/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/namespaces/RoutesNamespace/helpers.ts","kind":"import-statement","original":"./helpers"}],"format":"esm"},"src/RouterError.ts":{"bytes":10101,"imports":[{"path":"src/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/helpers.ts","kind":"import-statement","original":"./helpers"}],"format":"esm"},"src/namespaces/NavigationNamespace/constants.ts":{"bytes":2439,"imports":[{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"},{"path":"src/RouterError.ts","kind":"import-statement","original":"../../RouterError"}],"format":"esm"},"src/namespaces/NavigationNamespace/transition/completeTransition.ts":{"bytes":2242,"imports":[{"path":"src/constants.ts","kind":"import-statement","original":"../../../constants"},{"path":"src/helpers.ts","kind":"import-statement","original":"../../../helpers"},{"path":"src/RouterError.ts","kind":"import-statement","original":"../../../RouterError"}],"format":"esm"},"src/namespaces/NavigationNamespace/transition/errorHandling.ts":{"bytes":3458,"imports":[{"path":"src/constants.ts","kind":"import-statement","original":"../../../constants"},{"path":"src/RouterError.ts","kind":"import-statement","original":"../../../RouterError"}],"format":"esm"},"src/namespaces/NavigationNamespace/transition/guardPhase.ts":{"bytes":4726,"imports":[{"path":"src/namespaces/NavigationNamespace/transition/errorHandling.ts","kind":"import-statement","original":"./errorHandling"},{"path":"src/constants.ts","kind":"import-statement","original":"../../../constants"},{"path":"src/RouterError.ts","kind":"import-statement","original":"../../../RouterError"}],"format":"esm"},"src/namespaces/NavigationNamespace/validators.ts":{"bytes":1409,"imports":[{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"}],"format":"esm"},"src/namespaces/NavigationNamespace/NavigationNamespace.ts":{"bytes":11239,"imports":[{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"src/namespaces/NavigationNamespace/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/namespaces/NavigationNamespace/transition/completeTransition.ts","kind":"import-statement","original":"./transition/completeTransition"},{"path":"src/namespaces/NavigationNamespace/transition/errorHandling.ts","kind":"import-statement","original":"./transition/errorHandling"},{"path":"src/namespaces/NavigationNamespace/transition/guardPhase.ts","kind":"import-statement","original":"./transition/guardPhase"},{"path":"src/namespaces/NavigationNamespace/validators.ts","kind":"import-statement","original":"./validators"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"},{"path":"src/RouterError.ts","kind":"import-statement","original":"../../RouterError"},{"path":"src/transitionPath.ts","kind":"import-statement","original":"../../transitionPath"}],"format":"esm"},"src/namespaces/NavigationNamespace/index.ts":{"bytes":179,"imports":[{"path":"src/namespaces/NavigationNamespace/NavigationNamespace.ts","kind":"import-statement","original":"./NavigationNamespace"}],"format":"esm"},"src/namespaces/RouterLifecycleNamespace/RouterLifecycleNamespace.ts":{"bytes":2863,"imports":[{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"},{"path":"src/RouterError.ts","kind":"import-statement","original":"../../RouterError"}],"format":"esm"},"src/namespaces/RouterLifecycleNamespace/index.ts":{"bytes":199,"imports":[{"path":"src/namespaces/RouterLifecycleNamespace/RouterLifecycleNamespace.ts","kind":"import-statement","original":"./RouterLifecycleNamespace"}],"format":"esm"},"src/namespaces/EventBusNamespace/EventBusNamespace.ts":{"bytes":6990,"imports":[{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"},{"path":"src/fsm/index.ts","kind":"import-statement","original":"../../fsm"}],"format":"esm"},"src/namespaces/EventBusNamespace/index.ts":{"bytes":166,"imports":[{"path":"src/namespaces/EventBusNamespace/EventBusNamespace.ts","kind":"import-statement","original":"./EventBusNamespace"}],"format":"esm"},"src/namespaces/index.ts":{"bytes":899,"imports":[{"path":"src/namespaces/DependenciesNamespace/index.ts","kind":"import-statement","original":"./DependenciesNamespace"},{"path":"src/namespaces/OptionsNamespace/index.ts","kind":"import-statement","original":"./OptionsNamespace"},{"path":"src/namespaces/StateNamespace/index.ts","kind":"import-statement","original":"./StateNamespace"},{"path":"src/namespaces/PluginsNamespace/index.ts","kind":"import-statement","original":"./PluginsNamespace"},{"path":"src/namespaces/RouteLifecycleNamespace/index.ts","kind":"import-statement","original":"./RouteLifecycleNamespace"},{"path":"src/namespaces/RoutesNamespace/index.ts","kind":"import-statement","original":"./RoutesNamespace"},{"path":"src/namespaces/NavigationNamespace/index.ts","kind":"import-statement","original":"./NavigationNamespace"},{"path":"src/namespaces/RouterLifecycleNamespace/index.ts","kind":"import-statement","original":"./RouterLifecycleNamespace"},{"path":"src/namespaces/EventBusNamespace/index.ts","kind":"import-statement","original":"./EventBusNamespace"}],"format":"esm"},"src/namespaces/DependenciesNamespace/validators.ts":{"bytes":2852,"imports":[{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"}],"format":"esm"},"src/namespaces/RouterLifecycleNamespace/constants.ts":{"bytes":1142,"imports":[{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"},{"path":"src/RouterError.ts","kind":"import-statement","original":"../../RouterError"}],"format":"esm"},"src/typeGuards.ts":{"bytes":1830,"imports":[{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"}],"format":"esm"},"src/wiring/RouterWiringBuilder.ts":{"bytes":8827,"imports":[{"path":"src/internals.ts","kind":"import-statement","original":"../internals"},{"path":"src/namespaces/OptionsNamespace/index.ts","kind":"import-statement","original":"../namespaces/OptionsNamespace"},{"path":"src/namespaces/RoutesNamespace/validators.ts","kind":"import-statement","original":"../namespaces/RoutesNamespace/validators"}],"format":"esm"},"src/wiring/wireRouter.ts":{"bytes":1058,"imports":[],"format":"esm"},"src/wiring/index.ts":{"bytes":190,"imports":[{"path":"src/wiring/RouterWiringBuilder.ts","kind":"import-statement","original":"./RouterWiringBuilder"},{"path":"src/wiring/wireRouter.ts","kind":"import-statement","original":"./wireRouter"}],"format":"esm"},"src/Router.ts":{"bytes":22126,"imports":[{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"../event-emitter/dist/esm/index.mjs","kind":"import-statement","original":"event-emitter"},{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/fsm/index.ts","kind":"import-statement","original":"./fsm"},{"path":"src/helpers.ts","kind":"import-statement","original":"./helpers"},{"path":"src/internals.ts","kind":"import-statement","original":"./internals"},{"path":"src/namespaces/index.ts","kind":"import-statement","original":"./namespaces"},{"path":"src/namespaces/DependenciesNamespace/validators.ts","kind":"import-statement","original":"./namespaces/DependenciesNamespace/validators"},{"path":"src/namespaces/RouterLifecycleNamespace/constants.ts","kind":"import-statement","original":"./namespaces/RouterLifecycleNamespace/constants"},{"path":"src/namespaces/RoutesNamespace/validators.ts","kind":"import-statement","original":"./namespaces/RoutesNamespace/validators"},{"path":"src/RouterError.ts","kind":"import-statement","original":"./RouterError"},{"path":"src/transitionPath.ts","kind":"import-statement","original":"./transitionPath"},{"path":"src/typeGuards.ts","kind":"import-statement","original":"./typeGuards"},{"path":"src/wiring/index.ts","kind":"import-statement","original":"./wiring"}],"format":"esm"},"src/createRouter.ts":{"bytes":897,"imports":[{"path":"src/Router.ts","kind":"import-statement","original":"./Router"}],"format":"esm"},"src/getNavigator.ts":{"bytes":605,"imports":[],"format":"esm"},"src/index.ts":{"bytes":1031,"imports":[{"path":"src/Router.ts","kind":"import-statement","original":"./Router"},{"path":"src/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/RouterError.ts","kind":"import-statement","original":"./RouterError"},{"path":"src/createRouter.ts","kind":"import-statement","original":"./createRouter"},{"path":"src/getNavigator.ts","kind":"import-statement","original":"./getNavigator"}],"format":"esm"},"src/api/helpers.ts":{"bytes":277,"imports":[{"path":"src/constants.ts","kind":"import-statement","original":"../constants"},{"path":"src/RouterError.ts","kind":"import-statement","original":"../RouterError"}],"format":"esm"},"src/namespaces/EventBusNamespace/validators.ts":{"bytes":961,"imports":[{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"}],"format":"esm"},"src/namespaces/StateNamespace/validators.ts":{"bytes":1240,"imports":[{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"}],"format":"esm"},"src/api/getPluginApi.ts":{"bytes":4562,"imports":[{"path":"src/api/helpers.ts","kind":"import-statement","original":"./helpers"},{"path":"src/constants.ts","kind":"import-statement","original":"../constants"},{"path":"src/internals.ts","kind":"import-statement","original":"../internals"},{"path":"src/namespaces/EventBusNamespace/validators.ts","kind":"import-statement","original":"../namespaces/EventBusNamespace/validators"},{"path":"src/namespaces/RoutesNamespace/validators.ts","kind":"import-statement","original":"../namespaces/RoutesNamespace/validators"},{"path":"src/namespaces/StateNamespace/validators.ts","kind":"import-statement","original":"../namespaces/StateNamespace/validators"},{"path":"src/RouterError.ts","kind":"import-statement","original":"../RouterError"}],"format":"esm"},"src/api/getRoutesApi.ts":{"bytes":17241,"imports":[{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/api/helpers.ts","kind":"import-statement","original":"./helpers"},{"path":"src/internals.ts","kind":"import-statement","original":"../internals"},{"path":"src/namespaces/RoutesNamespace/helpers.ts","kind":"import-statement","original":"../namespaces/RoutesNamespace/helpers"},{"path":"src/namespaces/RoutesNamespace/routesStore.ts","kind":"import-statement","original":"../namespaces/RoutesNamespace/routesStore"},{"path":"src/namespaces/RoutesNamespace/validators.ts","kind":"import-statement","original":"../namespaces/RoutesNamespace/validators"}],"format":"esm"},"src/api/getDependenciesApi.ts":{"bytes":6039,"imports":[{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/api/helpers.ts","kind":"import-statement","original":"./helpers"},{"path":"src/helpers.ts","kind":"import-statement","original":"../helpers"},{"path":"src/internals.ts","kind":"import-statement","original":"../internals"},{"path":"src/namespaces/DependenciesNamespace/validators.ts","kind":"import-statement","original":"../namespaces/DependenciesNamespace/validators"}],"format":"esm"},"src/api/getLifecycleApi.ts":{"bytes":1795,"imports":[{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/api/helpers.ts","kind":"import-statement","original":"./helpers"},{"path":"src/internals.ts","kind":"import-statement","original":"../internals"},{"path":"src/namespaces/RouteLifecycleNamespace/validators.ts","kind":"import-statement","original":"../namespaces/RouteLifecycleNamespace/validators"}],"format":"esm"},"src/api/cloneRouter.ts":{"bytes":3216,"imports":[{"path":"../route-tree/dist/esm/index.mjs","kind":"import-statement","original":"route-tree"},{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/constants.ts","kind":"import-statement","original":"../constants"},{"path":"src/internals.ts","kind":"import-statement","original":"../internals"},{"path":"src/Router.ts","kind":"import-statement","original":"../Router"},{"path":"src/RouterError.ts","kind":"import-statement","original":"../RouterError"},{"path":"src/api/getLifecycleApi.ts","kind":"import-statement","original":"./getLifecycleApi"}],"format":"esm"},"src/api/index.ts":{"bytes":349,"imports":[{"path":"src/api/getPluginApi.ts","kind":"import-statement","original":"./getPluginApi"},{"path":"src/api/getRoutesApi.ts","kind":"import-statement","original":"./getRoutesApi"},{"path":"src/api/getDependenciesApi.ts","kind":"import-statement","original":"./getDependenciesApi"},{"path":"src/api/getLifecycleApi.ts","kind":"import-statement","original":"./getLifecycleApi"},{"path":"src/api/cloneRouter.ts","kind":"import-statement","original":"./cloneRouter"}],"format":"esm"},"src/utils/serializeState.ts":{"bytes":649,"imports":[],"format":"esm"},"src/utils/index.ts":{"bytes":51,"imports":[{"path":"src/utils/serializeState.ts","kind":"import-statement","original":"./serializeState"}],"format":"esm"}},"outputs":{"dist/esm/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2150},"dist/esm/index.mjs":{"imports":[{"path":"dist/esm/chunk-CG7TKDP3.mjs","kind":"import-statement"}],"exports":["Router","RouterError","UNKNOWN_ROUTE","constants","createRouter","errorCodes","events","getNavigator"],"entryPoint":"src/index.ts","inputs":{"src/index.ts":{"bytesInOutput":0},"src/createRouter.ts":{"bytesInOutput":126},"src/getNavigator.ts":{"bytesInOutput":390}},"bytes":804},"dist/esm/api.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":52280},"dist/esm/api.mjs":{"imports":[{"path":"dist/esm/chunk-CG7TKDP3.mjs","kind":"import-statement"},{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"@real-router/logger","kind":"import-statement","external":true}],"exports":["cloneRouter","getDependenciesApi","getLifecycleApi","getPluginApi","getRoutesApi"],"entryPoint":"src/api/index.ts","inputs":{"src/api/helpers.ts":{"bytesInOutput":122},"src/namespaces/EventBusNamespace/validators.ts":{"bytesInOutput":369},"src/namespaces/StateNamespace/validators.ts":{"bytesInOutput":659},"src/api/getPluginApi.ts":{"bytesInOutput":3587},"src/api/index.ts":{"bytesInOutput":0},"src/api/getRoutesApi.ts":{"bytesInOutput":10471},"src/api/getDependenciesApi.ts":{"bytesInOutput":4180},"src/api/getLifecycleApi.ts":{"bytesInOutput":1147},"src/api/cloneRouter.ts":{"bytesInOutput":2365}},"bytes":24445},"dist/esm/chunk-CG7TKDP3.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":312416},"dist/esm/chunk-CG7TKDP3.mjs":{"imports":[{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"@real-router/fsm","kind":"import-statement","external":true},{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"@real-router/logger","kind":"import-statement","external":true}],"exports":["Router","RouterError","UNKNOWN_ROUTE","b","clearConfigEntries","clearRouteData","computeThresholds","constants","errorCodes","events","f","g","getInternals","j","refreshForwardMap","registerAllRouteHandlers","removeFromDefinitions","s","sanitizeRoute","throwIfInternalRoute","throwIfInternalRouteInArray","validEventNames","validateAddRouteArgs","validateClearRoutes","validateDependenciesObject","validateDependencyExists","validateDependencyLimit","validateDependencyName","validateHandler","validateMatchPathArgs","validateParentOption","validateRemoveRoute","validateRemoveRouteArgs","validateSetDependencyArgs","validateSetRootPathArgs","validateStateBuilderArgs","validateUpdateRoute","validateUpdateRouteBasicArgs","validateUpdateRoutePropertyTypes"],"inputs":{"src/constants.ts":{"bytesInOutput":2633},"../type-guards/dist/esm/index.mjs":{"bytesInOutput":3182},"src/helpers.ts":{"bytesInOutput":1794},"src/RouterError.ts":{"bytesInOutput":8509},"src/Router.ts":{"bytesInOutput":14801},"../event-emitter/dist/esm/index.mjs":{"bytesInOutput":2699},"src/fsm/routerFSM.ts":{"bytesInOutput":1269},"src/fsm/index.ts":{"bytesInOutput":0},"src/internals.ts":{"bytesInOutput":1125},"src/namespaces/DependenciesNamespace/dependenciesStore.ts":{"bytesInOutput":336},"src/namespaces/DependenciesNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/index.ts":{"bytesInOutput":0},"src/namespaces/OptionsNamespace/constants.ts":{"bytesInOutput":705},"src/namespaces/OptionsNamespace/helpers.ts":{"bytesInOutput":385},"src/namespaces/OptionsNamespace/validators.ts":{"bytesInOutput":4294},"src/namespaces/OptionsNamespace/OptionsNamespace.ts":{"bytesInOutput":930},"src/namespaces/OptionsNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/StateNamespace/helpers.ts":{"bytesInOutput":580},"src/namespaces/StateNamespace/StateNamespace.ts":{"bytesInOutput":5385},"src/namespaces/StateNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/PluginsNamespace/PluginsNamespace.ts":{"bytesInOutput":7151},"src/namespaces/PluginsNamespace/constants.ts":{"bytesInOutput":482},"src/namespaces/PluginsNamespace/validators.ts":{"bytesInOutput":1421},"src/namespaces/PluginsNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/RouteLifecycleNamespace/RouteLifecycleNamespace.ts":{"bytesInOutput":10554},"src/namespaces/RouteLifecycleNamespace/validators.ts":{"bytesInOutput":898},"src/namespaces/RouteLifecycleNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/RoutesNamespace/constants.ts":{"bytesInOutput":82},"src/namespaces/RoutesNamespace/helpers.ts":{"bytesInOutput":1653},"src/namespaces/RoutesNamespace/routesStore.ts":{"bytesInOutput":6346},"../path-matcher/dist/esm/index.mjs":{"bytesInOutput":13115},"../search-params/dist/esm/index.mjs":{"bytesInOutput":4202},"../route-tree/dist/esm/index.mjs":{"bytesInOutput":8191},"src/namespaces/RoutesNamespace/forwardToValidation.ts":{"bytesInOutput":6986},"src/namespaces/RoutesNamespace/validators.ts":{"bytesInOutput":8653},"src/transitionPath.ts":{"bytesInOutput":4755},"src/namespaces/RoutesNamespace/RoutesNamespace.ts":{"bytesInOutput":11252},"src/namespaces/RoutesNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/NavigationNamespace/NavigationNamespace.ts":{"bytesInOutput":8637},"src/namespaces/NavigationNamespace/constants.ts":{"bytesInOutput":635},"src/namespaces/NavigationNamespace/transition/completeTransition.ts":{"bytesInOutput":1508},"src/namespaces/NavigationNamespace/transition/errorHandling.ts":{"bytesInOutput":1476},"src/namespaces/NavigationNamespace/transition/guardPhase.ts":{"bytesInOutput":3516},"src/namespaces/NavigationNamespace/validators.ts":{"bytesInOutput":650},"src/namespaces/NavigationNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/RouterLifecycleNamespace/RouterLifecycleNamespace.ts":{"bytesInOutput":2116},"src/namespaces/RouterLifecycleNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/EventBusNamespace/EventBusNamespace.ts":{"bytesInOutput":4790},"src/namespaces/EventBusNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/DependenciesNamespace/validators.ts":{"bytesInOutput":1493},"src/namespaces/RouterLifecycleNamespace/constants.ts":{"bytesInOutput":91},"src/typeGuards.ts":{"bytesInOutput":1154},"src/wiring/RouterWiringBuilder.ts":{"bytesInOutput":6435},"src/wiring/index.ts":{"bytesInOutput":0},"src/wiring/wireRouter.ts":{"bytesInOutput":240}},"bytes":170920},"dist/esm/utils.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":989},"dist/esm/utils.mjs":{"imports":[],"exports":["serializeState"],"entryPoint":"src/utils/index.ts","inputs":{"src/utils/serializeState.ts":{"bytesInOutput":221},"src/utils/index.ts":{"bytesInOutput":0}},"bytes":281}}}
1
+ {"inputs":{"../event-emitter/dist/esm/index.mjs":{"bytes":1750,"imports":[],"format":"esm"},"src/constants.ts":{"bytes":3336,"imports":[],"format":"esm"},"src/fsm/routerFSM.ts":{"bytes":3088,"imports":[{"path":"@real-router/fsm","kind":"import-statement","external":true}],"format":"esm"},"src/fsm/index.ts":{"bytes":188,"imports":[{"path":"src/fsm/routerFSM.ts","kind":"import-statement","original":"./routerFSM"}],"format":"esm"},"src/guards.ts":{"bytes":1340,"imports":[],"format":"esm"},"src/helpers.ts":{"bytes":5295,"imports":[{"path":"src/constants.ts","kind":"import-statement","original":"./constants"}],"format":"esm"},"src/internals.ts":{"bytes":5226,"imports":[],"format":"esm"},"src/namespaces/DependenciesNamespace/dependenciesStore.ts":{"bytes":828,"imports":[{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"}],"format":"esm"},"src/namespaces/DependenciesNamespace/index.ts":{"bytes":190,"imports":[{"path":"src/namespaces/DependenciesNamespace/dependenciesStore.ts","kind":"import-statement","original":"./dependenciesStore"}],"format":"esm"},"src/namespaces/OptionsNamespace/constants.ts":{"bytes":502,"imports":[],"format":"esm"},"src/namespaces/OptionsNamespace/helpers.ts":{"bytes":1627,"imports":[],"format":"esm"},"src/namespaces/OptionsNamespace/validators.ts":{"bytes":465,"imports":[],"format":"esm"},"src/namespaces/OptionsNamespace/OptionsNamespace.ts":{"bytes":699,"imports":[{"path":"src/namespaces/OptionsNamespace/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/namespaces/OptionsNamespace/helpers.ts","kind":"import-statement","original":"./helpers"},{"path":"src/namespaces/OptionsNamespace/validators.ts","kind":"import-statement","original":"./validators"}],"format":"esm"},"src/namespaces/OptionsNamespace/index.ts":{"bytes":217,"imports":[{"path":"src/namespaces/OptionsNamespace/OptionsNamespace.ts","kind":"import-statement","original":"./OptionsNamespace"},{"path":"src/namespaces/OptionsNamespace/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/namespaces/OptionsNamespace/helpers.ts","kind":"import-statement","original":"./helpers"}],"format":"esm"},"src/namespaces/StateNamespace/helpers.ts":{"bytes":1053,"imports":[],"format":"esm"},"src/namespaces/StateNamespace/StateNamespace.ts":{"bytes":6447,"imports":[{"path":"src/namespaces/StateNamespace/helpers.ts","kind":"import-statement","original":"./helpers"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"},{"path":"src/helpers.ts","kind":"import-statement","original":"../../helpers"}],"format":"esm"},"src/namespaces/StateNamespace/index.ts":{"bytes":168,"imports":[{"path":"src/namespaces/StateNamespace/StateNamespace.ts","kind":"import-statement","original":"./StateNamespace"}],"format":"esm"},"src/namespaces/PluginsNamespace/constants.ts":{"bytes":994,"imports":[{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"}],"format":"esm"},"src/namespaces/PluginsNamespace/validators.ts":{"bytes":929,"imports":[],"format":"esm"},"src/namespaces/PluginsNamespace/PluginsNamespace.ts":{"bytes":8942,"imports":[{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"src/namespaces/PluginsNamespace/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/namespaces/PluginsNamespace/validators.ts","kind":"import-statement","original":"./validators"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"}],"format":"esm"},"src/namespaces/PluginsNamespace/index.ts":{"bytes":230,"imports":[{"path":"src/namespaces/PluginsNamespace/PluginsNamespace.ts","kind":"import-statement","original":"./PluginsNamespace"},{"path":"src/namespaces/PluginsNamespace/constants.ts","kind":"import-statement","original":"./constants"}],"format":"esm"},"src/namespaces/RouteLifecycleNamespace/RouteLifecycleNamespace.ts":{"bytes":11427,"imports":[{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"}],"format":"esm"},"src/namespaces/RouteLifecycleNamespace/index.ts":{"bytes":195,"imports":[{"path":"src/namespaces/RouteLifecycleNamespace/RouteLifecycleNamespace.ts","kind":"import-statement","original":"./RouteLifecycleNamespace"}],"format":"esm"},"src/namespaces/RoutesNamespace/constants.ts":{"bytes":149,"imports":[],"format":"esm"},"src/namespaces/RoutesNamespace/helpers.ts":{"bytes":3038,"imports":[],"format":"esm"},"../path-matcher/dist/esm/index.mjs":{"bytes":9525,"imports":[],"format":"esm"},"../search-params/dist/esm/index.mjs":{"bytes":3813,"imports":[],"format":"esm"},"../route-tree/dist/esm/index.mjs":{"bytes":6514,"imports":[{"path":"../path-matcher/dist/esm/index.mjs","kind":"import-statement","original":"path-matcher"},{"path":"../search-params/dist/esm/index.mjs","kind":"import-statement","original":"search-params"}],"format":"esm"},"src/namespaces/RoutesNamespace/forwardChain.ts":{"bytes":831,"imports":[],"format":"esm"},"src/namespaces/RoutesNamespace/routesStore.ts":{"bytes":10895,"imports":[{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"../route-tree/dist/esm/index.mjs","kind":"import-statement","original":"route-tree"},{"path":"src/namespaces/RoutesNamespace/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/namespaces/RoutesNamespace/forwardChain.ts","kind":"import-statement","original":"./forwardChain"},{"path":"src/namespaces/RoutesNamespace/helpers.ts","kind":"import-statement","original":"./helpers"}],"format":"esm"},"src/transitionPath.ts":{"bytes":13289,"imports":[],"format":"esm"},"src/namespaces/RoutesNamespace/RoutesNamespace.ts":{"bytes":15048,"imports":[{"path":"src/namespaces/RoutesNamespace/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/namespaces/RoutesNamespace/helpers.ts","kind":"import-statement","original":"./helpers"},{"path":"src/namespaces/RoutesNamespace/routesStore.ts","kind":"import-statement","original":"./routesStore"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"},{"path":"src/transitionPath.ts","kind":"import-statement","original":"../../transitionPath"}],"format":"esm"},"src/namespaces/RoutesNamespace/index.ts":{"bytes":326,"imports":[{"path":"src/namespaces/RoutesNamespace/RoutesNamespace.ts","kind":"import-statement","original":"./RoutesNamespace"},{"path":"src/namespaces/RoutesNamespace/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/namespaces/RoutesNamespace/helpers.ts","kind":"import-statement","original":"./helpers"}],"format":"esm"},"src/RouterError.ts":{"bytes":10101,"imports":[{"path":"src/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/helpers.ts","kind":"import-statement","original":"./helpers"}],"format":"esm"},"src/namespaces/NavigationNamespace/constants.ts":{"bytes":2439,"imports":[{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"},{"path":"src/RouterError.ts","kind":"import-statement","original":"../../RouterError"}],"format":"esm"},"src/namespaces/NavigationNamespace/transition/completeTransition.ts":{"bytes":2242,"imports":[{"path":"src/constants.ts","kind":"import-statement","original":"../../../constants"},{"path":"src/helpers.ts","kind":"import-statement","original":"../../../helpers"},{"path":"src/RouterError.ts","kind":"import-statement","original":"../../../RouterError"}],"format":"esm"},"src/namespaces/NavigationNamespace/transition/errorHandling.ts":{"bytes":3458,"imports":[{"path":"src/constants.ts","kind":"import-statement","original":"../../../constants"},{"path":"src/RouterError.ts","kind":"import-statement","original":"../../../RouterError"}],"format":"esm"},"src/namespaces/NavigationNamespace/transition/guardPhase.ts":{"bytes":4726,"imports":[{"path":"src/namespaces/NavigationNamespace/transition/errorHandling.ts","kind":"import-statement","original":"./errorHandling"},{"path":"src/constants.ts","kind":"import-statement","original":"../../../constants"},{"path":"src/RouterError.ts","kind":"import-statement","original":"../../../RouterError"}],"format":"esm"},"src/namespaces/NavigationNamespace/NavigationNamespace.ts":{"bytes":10430,"imports":[{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"src/namespaces/NavigationNamespace/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/namespaces/NavigationNamespace/transition/completeTransition.ts","kind":"import-statement","original":"./transition/completeTransition"},{"path":"src/namespaces/NavigationNamespace/transition/errorHandling.ts","kind":"import-statement","original":"./transition/errorHandling"},{"path":"src/namespaces/NavigationNamespace/transition/guardPhase.ts","kind":"import-statement","original":"./transition/guardPhase"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"},{"path":"src/RouterError.ts","kind":"import-statement","original":"../../RouterError"},{"path":"src/transitionPath.ts","kind":"import-statement","original":"../../transitionPath"}],"format":"esm"},"src/namespaces/NavigationNamespace/index.ts":{"bytes":179,"imports":[{"path":"src/namespaces/NavigationNamespace/NavigationNamespace.ts","kind":"import-statement","original":"./NavigationNamespace"}],"format":"esm"},"src/namespaces/RouterLifecycleNamespace/RouterLifecycleNamespace.ts":{"bytes":2267,"imports":[{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"},{"path":"src/RouterError.ts","kind":"import-statement","original":"../../RouterError"}],"format":"esm"},"src/namespaces/RouterLifecycleNamespace/index.ts":{"bytes":199,"imports":[{"path":"src/namespaces/RouterLifecycleNamespace/RouterLifecycleNamespace.ts","kind":"import-statement","original":"./RouterLifecycleNamespace"}],"format":"esm"},"src/namespaces/EventBusNamespace/EventBusNamespace.ts":{"bytes":7011,"imports":[{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"},{"path":"src/fsm/index.ts","kind":"import-statement","original":"../../fsm"}],"format":"esm"},"src/namespaces/EventBusNamespace/index.ts":{"bytes":166,"imports":[{"path":"src/namespaces/EventBusNamespace/EventBusNamespace.ts","kind":"import-statement","original":"./EventBusNamespace"}],"format":"esm"},"src/namespaces/index.ts":{"bytes":831,"imports":[{"path":"src/namespaces/DependenciesNamespace/index.ts","kind":"import-statement","original":"./DependenciesNamespace"},{"path":"src/namespaces/OptionsNamespace/index.ts","kind":"import-statement","original":"./OptionsNamespace"},{"path":"src/namespaces/StateNamespace/index.ts","kind":"import-statement","original":"./StateNamespace"},{"path":"src/namespaces/PluginsNamespace/index.ts","kind":"import-statement","original":"./PluginsNamespace"},{"path":"src/namespaces/RouteLifecycleNamespace/index.ts","kind":"import-statement","original":"./RouteLifecycleNamespace"},{"path":"src/namespaces/RoutesNamespace/index.ts","kind":"import-statement","original":"./RoutesNamespace"},{"path":"src/namespaces/NavigationNamespace/index.ts","kind":"import-statement","original":"./NavigationNamespace"},{"path":"src/namespaces/RouterLifecycleNamespace/index.ts","kind":"import-statement","original":"./RouterLifecycleNamespace"},{"path":"src/namespaces/EventBusNamespace/index.ts","kind":"import-statement","original":"./EventBusNamespace"}],"format":"esm"},"src/namespaces/RouterLifecycleNamespace/constants.ts":{"bytes":1142,"imports":[{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"},{"path":"src/RouterError.ts","kind":"import-statement","original":"../../RouterError"}],"format":"esm"},"src/typeGuards.ts":{"bytes":1616,"imports":[],"format":"esm"},"src/wiring/RouterWiringBuilder.ts":{"bytes":9355,"imports":[{"path":"src/internals.ts","kind":"import-statement","original":"../internals"},{"path":"src/namespaces/OptionsNamespace/index.ts","kind":"import-statement","original":"../namespaces/OptionsNamespace"}],"format":"esm"},"src/wiring/wireRouter.ts":{"bytes":1058,"imports":[],"format":"esm"},"src/wiring/index.ts":{"bytes":190,"imports":[{"path":"src/wiring/RouterWiringBuilder.ts","kind":"import-statement","original":"./RouterWiringBuilder"},{"path":"src/wiring/wireRouter.ts","kind":"import-statement","original":"./wireRouter"}],"format":"esm"},"src/Router.ts":{"bytes":21261,"imports":[{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"../event-emitter/dist/esm/index.mjs","kind":"import-statement","original":"event-emitter"},{"path":"src/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/fsm/index.ts","kind":"import-statement","original":"./fsm"},{"path":"src/guards.ts","kind":"import-statement","original":"./guards"},{"path":"src/helpers.ts","kind":"import-statement","original":"./helpers"},{"path":"src/internals.ts","kind":"import-statement","original":"./internals"},{"path":"src/namespaces/index.ts","kind":"import-statement","original":"./namespaces"},{"path":"src/namespaces/RouterLifecycleNamespace/constants.ts","kind":"import-statement","original":"./namespaces/RouterLifecycleNamespace/constants"},{"path":"src/RouterError.ts","kind":"import-statement","original":"./RouterError"},{"path":"src/transitionPath.ts","kind":"import-statement","original":"./transitionPath"},{"path":"src/typeGuards.ts","kind":"import-statement","original":"./typeGuards"},{"path":"src/wiring/index.ts","kind":"import-statement","original":"./wiring"}],"format":"esm"},"src/createRouter.ts":{"bytes":897,"imports":[{"path":"src/Router.ts","kind":"import-statement","original":"./Router"}],"format":"esm"},"src/getNavigator.ts":{"bytes":605,"imports":[],"format":"esm"},"src/index.ts":{"bytes":1178,"imports":[{"path":"src/Router.ts","kind":"import-statement","original":"./Router"},{"path":"src/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/RouterError.ts","kind":"import-statement","original":"./RouterError"},{"path":"src/createRouter.ts","kind":"import-statement","original":"./createRouter"},{"path":"src/getNavigator.ts","kind":"import-statement","original":"./getNavigator"},{"path":"src/namespaces/RoutesNamespace/forwardChain.ts","kind":"import-statement","original":"./namespaces/RoutesNamespace/forwardChain"}],"format":"esm"},"src/api/helpers.ts":{"bytes":277,"imports":[{"path":"src/constants.ts","kind":"import-statement","original":"../constants"},{"path":"src/RouterError.ts","kind":"import-statement","original":"../RouterError"}],"format":"esm"},"src/api/getPluginApi.ts":{"bytes":4308,"imports":[{"path":"src/api/helpers.ts","kind":"import-statement","original":"./helpers"},{"path":"src/constants.ts","kind":"import-statement","original":"../constants"},{"path":"src/internals.ts","kind":"import-statement","original":"../internals"},{"path":"src/RouterError.ts","kind":"import-statement","original":"../RouterError"}],"format":"esm"},"src/namespaces/RoutesNamespace/routeGuards.ts":{"bytes":1735,"imports":[{"path":"@real-router/logger","kind":"import-statement","external":true}],"format":"esm"},"src/api/getRoutesApi.ts":{"bytes":16424,"imports":[{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"src/api/helpers.ts","kind":"import-statement","original":"./helpers"},{"path":"src/guards.ts","kind":"import-statement","original":"../guards"},{"path":"src/internals.ts","kind":"import-statement","original":"../internals"},{"path":"src/namespaces/RoutesNamespace/helpers.ts","kind":"import-statement","original":"../namespaces/RoutesNamespace/helpers"},{"path":"src/namespaces/RoutesNamespace/routeGuards.ts","kind":"import-statement","original":"../namespaces/RoutesNamespace/routeGuards"},{"path":"src/namespaces/RoutesNamespace/routesStore.ts","kind":"import-statement","original":"../namespaces/RoutesNamespace/routesStore"}],"format":"esm"},"src/api/getDependenciesApi.ts":{"bytes":4809,"imports":[{"path":"src/api/helpers.ts","kind":"import-statement","original":"./helpers"},{"path":"src/internals.ts","kind":"import-statement","original":"../internals"}],"format":"esm"},"src/api/getLifecycleApi.ts":{"bytes":2073,"imports":[{"path":"src/api/helpers.ts","kind":"import-statement","original":"./helpers"},{"path":"src/internals.ts","kind":"import-statement","original":"../internals"}],"format":"esm"},"src/api/cloneRouter.ts":{"bytes":2534,"imports":[{"path":"../route-tree/dist/esm/index.mjs","kind":"import-statement","original":"route-tree"},{"path":"src/constants.ts","kind":"import-statement","original":"../constants"},{"path":"src/internals.ts","kind":"import-statement","original":"../internals"},{"path":"src/Router.ts","kind":"import-statement","original":"../Router"},{"path":"src/RouterError.ts","kind":"import-statement","original":"../RouterError"},{"path":"src/api/getLifecycleApi.ts","kind":"import-statement","original":"./getLifecycleApi"}],"format":"esm"},"src/api/index.ts":{"bytes":349,"imports":[{"path":"src/api/getPluginApi.ts","kind":"import-statement","original":"./getPluginApi"},{"path":"src/api/getRoutesApi.ts","kind":"import-statement","original":"./getRoutesApi"},{"path":"src/api/getDependenciesApi.ts","kind":"import-statement","original":"./getDependenciesApi"},{"path":"src/api/getLifecycleApi.ts","kind":"import-statement","original":"./getLifecycleApi"},{"path":"src/api/cloneRouter.ts","kind":"import-statement","original":"./cloneRouter"}],"format":"esm"},"src/utils/getStaticPaths.ts":{"bytes":1225,"imports":[{"path":"src/api/getPluginApi.ts","kind":"import-statement","original":"../api/getPluginApi"}],"format":"esm"},"src/utils/serializeState.ts":{"bytes":649,"imports":[],"format":"esm"},"src/utils/index.ts":{"bytes":163,"imports":[{"path":"src/utils/getStaticPaths.ts","kind":"import-statement","original":"./getStaticPaths"},{"path":"src/utils/serializeState.ts","kind":"import-statement","original":"./serializeState"}],"format":"esm"},"src/validation.ts":{"bytes":365,"imports":[{"path":"src/internals.ts","kind":"import-statement","original":"./internals"}],"format":"esm"}},"outputs":{"dist/esm/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2154},"dist/esm/index.mjs":{"imports":[{"path":"dist/esm/chunk-RA5VYM7M.mjs","kind":"import-statement"},{"path":"dist/esm/chunk-5QXFUUDL.mjs","kind":"import-statement"},{"path":"dist/esm/chunk-QUUNDESP.mjs","kind":"import-statement"}],"exports":["Router","RouterError","UNKNOWN_ROUTE","constants","createRouter","errorCodes","events","getNavigator","resolveForwardChain"],"entryPoint":"src/index.ts","inputs":{"src/index.ts":{"bytesInOutput":0},"src/createRouter.ts":{"bytesInOutput":126},"src/getNavigator.ts":{"bytesInOutput":390}},"bytes":920},"dist/esm/api.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":40123},"dist/esm/api.mjs":{"imports":[{"path":"dist/esm/chunk-RA5VYM7M.mjs","kind":"import-statement"},{"path":"dist/esm/chunk-HHIXK5UM.mjs","kind":"import-statement"},{"path":"dist/esm/chunk-5QXFUUDL.mjs","kind":"import-statement"},{"path":"dist/esm/chunk-QUUNDESP.mjs","kind":"import-statement"},{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"@real-router/logger","kind":"import-statement","external":true}],"exports":["cloneRouter","getDependenciesApi","getLifecycleApi","getPluginApi","getRoutesApi"],"entryPoint":"src/api/index.ts","inputs":{"src/api/index.ts":{"bytesInOutput":0},"src/api/getRoutesApi.ts":{"bytesInOutput":10018},"src/namespaces/RoutesNamespace/routeGuards.ts":{"bytesInOutput":1025},"src/api/getDependenciesApi.ts":{"bytesInOutput":3238},"src/api/getLifecycleApi.ts":{"bytesInOutput":1617},"src/api/cloneRouter.ts":{"bytesInOutput":1805}},"bytes":18785},"dist/esm/chunk-RA5VYM7M.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":212303},"dist/esm/chunk-RA5VYM7M.mjs":{"imports":[{"path":"dist/esm/chunk-5QXFUUDL.mjs","kind":"import-statement"},{"path":"dist/esm/chunk-QUUNDESP.mjs","kind":"import-statement"},{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"@real-router/fsm","kind":"import-statement","external":true},{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"@real-router/logger","kind":"import-statement","external":true}],"exports":["Router","clearConfigEntries","clearRouteData","f","guardRouteStructure","refreshForwardMap","registerAllRouteHandlers","removeFromDefinitions","resolveForwardChain","sanitizeRoute"],"inputs":{"src/namespaces/RoutesNamespace/forwardChain.ts":{"bytesInOutput":707},"src/Router.ts":{"bytesInOutput":14805},"../event-emitter/dist/esm/index.mjs":{"bytesInOutput":2693},"src/fsm/routerFSM.ts":{"bytesInOutput":1269},"src/fsm/index.ts":{"bytesInOutput":0},"src/guards.ts":{"bytesInOutput":846},"src/namespaces/DependenciesNamespace/dependenciesStore.ts":{"bytesInOutput":336},"src/namespaces/DependenciesNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/index.ts":{"bytesInOutput":0},"src/namespaces/OptionsNamespace/constants.ts":{"bytesInOutput":306},"src/namespaces/OptionsNamespace/helpers.ts":{"bytesInOutput":385},"src/namespaces/OptionsNamespace/validators.ts":{"bytesInOutput":205},"src/namespaces/OptionsNamespace/OptionsNamespace.ts":{"bytesInOutput":303},"src/namespaces/OptionsNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/StateNamespace/helpers.ts":{"bytesInOutput":586},"src/namespaces/StateNamespace/StateNamespace.ts":{"bytesInOutput":4661},"src/namespaces/StateNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/PluginsNamespace/PluginsNamespace.ts":{"bytesInOutput":6672},"src/namespaces/PluginsNamespace/constants.ts":{"bytesInOutput":434},"src/namespaces/PluginsNamespace/validators.ts":{"bytesInOutput":435},"src/namespaces/PluginsNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/RouteLifecycleNamespace/RouteLifecycleNamespace.ts":{"bytesInOutput":8803},"src/namespaces/RouteLifecycleNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/RoutesNamespace/constants.ts":{"bytesInOutput":29},"src/namespaces/RoutesNamespace/helpers.ts":{"bytesInOutput":1653},"src/namespaces/RoutesNamespace/routesStore.ts":{"bytesInOutput":5762},"../path-matcher/dist/esm/index.mjs":{"bytesInOutput":13080},"../search-params/dist/esm/index.mjs":{"bytesInOutput":4200},"../route-tree/dist/esm/index.mjs":{"bytesInOutput":3508},"src/transitionPath.ts":{"bytesInOutput":4751},"src/namespaces/RoutesNamespace/RoutesNamespace.ts":{"bytesInOutput":11120},"src/namespaces/RoutesNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/NavigationNamespace/NavigationNamespace.ts":{"bytesInOutput":8063},"src/namespaces/NavigationNamespace/constants.ts":{"bytesInOutput":635},"src/namespaces/NavigationNamespace/transition/completeTransition.ts":{"bytesInOutput":1508},"src/namespaces/NavigationNamespace/transition/errorHandling.ts":{"bytesInOutput":1476},"src/namespaces/NavigationNamespace/transition/guardPhase.ts":{"bytesInOutput":3516},"src/namespaces/NavigationNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/RouterLifecycleNamespace/RouterLifecycleNamespace.ts":{"bytesInOutput":1628},"src/namespaces/RouterLifecycleNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/EventBusNamespace/EventBusNamespace.ts":{"bytesInOutput":4808},"src/namespaces/EventBusNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/RouterLifecycleNamespace/constants.ts":{"bytesInOutput":91},"src/typeGuards.ts":{"bytesInOutput":1154},"src/wiring/RouterWiringBuilder.ts":{"bytesInOutput":7044},"src/wiring/index.ts":{"bytesInOutput":0},"src/wiring/wireRouter.ts":{"bytesInOutput":240}},"bytes":120796},"dist/esm/utils.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2919},"dist/esm/utils.mjs":{"imports":[{"path":"dist/esm/chunk-HHIXK5UM.mjs","kind":"import-statement"},{"path":"dist/esm/chunk-5QXFUUDL.mjs","kind":"import-statement"},{"path":"dist/esm/chunk-QUUNDESP.mjs","kind":"import-statement"}],"exports":["getStaticPaths","serializeState"],"entryPoint":"src/utils/index.ts","inputs":{"src/utils/getStaticPaths.ts":{"bytesInOutput":767},"src/utils/index.ts":{"bytesInOutput":0},"src/utils/serializeState.ts":{"bytesInOutput":221}},"bytes":1216},"dist/esm/chunk-HHIXK5UM.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":7522},"dist/esm/chunk-HHIXK5UM.mjs":{"imports":[{"path":"dist/esm/chunk-5QXFUUDL.mjs","kind":"import-statement"},{"path":"dist/esm/chunk-QUUNDESP.mjs","kind":"import-statement"}],"exports":["getPluginApi","throwIfDisposed"],"inputs":{"src/api/helpers.ts":{"bytesInOutput":122},"src/api/getPluginApi.ts":{"bytesInOutput":3634}},"bytes":3977},"dist/esm/chunk-5QXFUUDL.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":24546},"dist/esm/chunk-5QXFUUDL.mjs":{"imports":[],"exports":["DEFAULT_LIMITS","EMPTY_PARAMS","RouterError","UNKNOWN_ROUTE","constants","createLimits","errorCodes","events","freezeStateInPlace","plugins"],"inputs":{"src/constants.ts":{"bytesInOutput":2164},"src/helpers.ts":{"bytesInOutput":1670},"src/RouterError.ts":{"bytesInOutput":8509}},"bytes":12569},"dist/esm/validation.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/esm/validation.mjs":{"imports":[{"path":"dist/esm/chunk-QUUNDESP.mjs","kind":"import-statement"}],"exports":["getInternals"],"entryPoint":"src/validation.ts","inputs":{"src/validation.ts":{"bytesInOutput":0}},"bytes":82},"dist/esm/chunk-QUUNDESP.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":6356},"dist/esm/chunk-QUUNDESP.mjs":{"imports":[],"exports":["createInterceptable","createInterceptable2","getInternals","registerInternals"],"inputs":{"src/internals.ts":{"bytesInOutput":1151}},"bytes":1267}}}
@@ -1,3 +1,8 @@
1
+ import { DefaultDependencies, Router } from '@real-router/types';
2
+
3
+ type StaticPathEntries = Record<string, () => Promise<Record<string, string>[]>>;
4
+ declare function getStaticPaths<Dependencies extends DefaultDependencies = DefaultDependencies>(router: Router<Dependencies>, entries?: StaticPathEntries): Promise<string[]>;
5
+
1
6
  /**
2
7
  * XSS-safe JSON serialization for embedding data in HTML `<script>` tags.
3
8
  *
@@ -12,4 +17,4 @@
12
17
  */
13
18
  declare function serializeState(data: unknown): string;
14
19
 
15
- export { serializeState };
20
+ export { type StaticPathEntries, getStaticPaths, serializeState };
@@ -1 +1 @@
1
- function r(r){return void 0===r?"null":JSON.stringify(r).replaceAll("<",String.raw`\u003c`).replaceAll(">",String.raw`\u003e`).replaceAll("&",String.raw`\u0026`)}export{r as serializeState};//# sourceMappingURL=utils.mjs.map
1
+ import{getPluginApi as n}from"./chunk-HHIXK5UM.mjs";import"./chunk-5QXFUUDL.mjs";import"./chunk-QUUNDESP.mjs";function r(n){const t=[];for(const o of n.children.values())0===o.children.size?t.push(o.fullName):t.push(...r(o));return t}async function t(t,o){const e=r(n(t).getTree()),u=[];for(const n of e){const r=o?.[n];if(r){const o=await r();for(const r of o)u.push(t.buildPath(n,r))}else u.push(t.buildPath(n,{}))}return u}function o(n){return void 0===n?"null":JSON.stringify(n).replaceAll("<",String.raw`\u003c`).replaceAll(">",String.raw`\u003e`).replaceAll("&",String.raw`\u0026`)}export{t as getStaticPaths,o as serializeState};//# sourceMappingURL=utils.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utils/serializeState.ts"],"names":[],"mappings":";AAYO,SAAS,eAAe,IAAA,EAAuB;AACpD,EAAA,IAAI,SAAS,MAAA,EAAW;AACtB,IAAA,OAAO,MAAA;AAAA,EACT;AAEA,EAAA,OAAO,KAAK,SAAA,CAAU,IAAI,CAAA,CACvB,UAAA,CAAW,KAAK,MAAA,CAAO,GAAA,CAAA,MAAA,CAAW,CAAA,CAClC,UAAA,CAAW,KAAK,MAAA,CAAO,GAAA,CAAA,MAAA,CAAW,EAClC,UAAA,CAAW,GAAA,EAAK,OAAO,GAAA,CAAA,MAAA,CAAW,CAAA;AACvC","file":"utils.mjs","sourcesContent":["/**\n * XSS-safe JSON serialization for embedding data in HTML `<script>` tags.\n *\n * Escapes `<`, `>`, and `&` to their Unicode equivalents to prevent\n * injection via `</script>` or HTML entities inside inline scripts.\n *\n * @example\n * ```typescript\n * const json = serializeState({ name: \"home\", path: \"/\" });\n * const html = `<script>window.__STATE__=${json}</script>`;\n * ```\n */\nexport function serializeState(data: unknown): string {\n if (data === undefined) {\n return \"null\";\n }\n\n return JSON.stringify(data)\n .replaceAll(\"<\", String.raw`\\u003c`)\n .replaceAll(\">\", String.raw`\\u003e`)\n .replaceAll(\"&\", String.raw`\\u0026`);\n}\n"]}
1
+ {"version":3,"sources":["../../src/utils/getStaticPaths.ts","../../src/utils/serializeState.ts"],"names":[],"mappings":";AAUA,SAAS,kBAAkB,IAAA,EAA2B;AACpD,EAAA,MAAM,SAAmB,EAAC;AAE1B,EAAA,KAAA,MAAW,KAAA,IAAS,IAAA,CAAK,QAAA,CAAS,MAAA,EAAO,EAAG;AAC1C,IAAA,IAAI,KAAA,CAAM,QAAA,CAAS,IAAA,KAAS,CAAA,EAAG;AAC7B,MAAA,MAAA,CAAO,IAAA,CAAK,MAAM,QAAQ,CAAA;AAAA,IAC5B,CAAA,MAAO;AACL,MAAA,MAAA,CAAO,IAAA,CAAK,GAAG,iBAAA,CAAkB,KAAK,CAAC,CAAA;AAAA,IACzC;AAAA,EACF;AAEA,EAAA,OAAO,MAAA;AACT;AAEA,eAAsB,cAAA,CAGpB,QACA,OAAA,EACmB;AACnB,EAAA,MAAM,IAAA,GAAO,YAAA,CAAa,MAAM,CAAA,CAAE,OAAA,EAAQ;AAC1C,EAAA,MAAM,UAAA,GAAa,kBAAkB,IAAI,CAAA;AACzC,EAAA,MAAM,QAAkB,EAAC;AAEzB,EAAA,KAAA,MAAW,aAAa,UAAA,EAAY;AAClC,IAAA,MAAM,OAAA,GAAU,UAAU,SAAS,CAAA;AAEnC,IAAA,IAAI,OAAA,EAAS;AACX,MAAA,MAAM,SAAA,GAAY,MAAM,OAAA,EAAQ;AAEhC,MAAA,KAAA,MAAW,UAAU,SAAA,EAAW;AAC9B,QAAA,KAAA,CAAM,IAAA,CAAK,MAAA,CAAO,SAAA,CAAU,SAAA,EAAW,MAAM,CAAC,CAAA;AAAA,MAChD;AAAA,IACF,CAAA,MAAO;AACL,MAAA,KAAA,CAAM,KAAK,MAAA,CAAO,SAAA,CAAU,SAAA,EAAW,EAAE,CAAC,CAAA;AAAA,IAC5C;AAAA,EACF;AAEA,EAAA,OAAO,KAAA;AACT;;;ACrCO,SAAS,eAAe,IAAA,EAAuB;AACpD,EAAA,IAAI,SAAS,MAAA,EAAW;AACtB,IAAA,OAAO,MAAA;AAAA,EACT;AAEA,EAAA,OAAO,KAAK,SAAA,CAAU,IAAI,CAAA,CACvB,UAAA,CAAW,KAAK,MAAA,CAAO,GAAA,CAAA,MAAA,CAAW,CAAA,CAClC,UAAA,CAAW,KAAK,MAAA,CAAO,GAAA,CAAA,MAAA,CAAW,EAClC,UAAA,CAAW,GAAA,EAAK,OAAO,GAAA,CAAA,MAAA,CAAW,CAAA;AACvC","file":"utils.mjs","sourcesContent":["import { getPluginApi } from \"../api/getPluginApi\";\n\nimport type { DefaultDependencies, Router } from \"@real-router/types\";\nimport type { RouteTree } from \"route-tree\";\n\nexport type StaticPathEntries = Record<\n string,\n () => Promise<Record<string, string>[]>\n>;\n\nfunction getLeafRouteNames(node: RouteTree): string[] {\n const result: string[] = [];\n\n for (const child of node.children.values()) {\n if (child.children.size === 0) {\n result.push(child.fullName);\n } else {\n result.push(...getLeafRouteNames(child));\n }\n }\n\n return result;\n}\n\nexport async function getStaticPaths<\n Dependencies extends DefaultDependencies = DefaultDependencies,\n>(\n router: Router<Dependencies>,\n entries?: StaticPathEntries,\n): Promise<string[]> {\n const tree = getPluginApi(router).getTree();\n const leafRoutes = getLeafRouteNames(tree);\n const paths: string[] = [];\n\n for (const routeName of leafRoutes) {\n const entryFn = entries?.[routeName];\n\n if (entryFn) {\n const paramSets = await entryFn();\n\n for (const params of paramSets) {\n paths.push(router.buildPath(routeName, params));\n }\n } else {\n paths.push(router.buildPath(routeName, {}));\n }\n }\n\n return paths;\n}\n","/**\n * XSS-safe JSON serialization for embedding data in HTML `<script>` tags.\n *\n * Escapes `<`, `>`, and `&` to their Unicode equivalents to prevent\n * injection via `</script>` or HTML entities inside inline scripts.\n *\n * @example\n * ```typescript\n * const json = serializeState({ name: \"home\", path: \"/\" });\n * const html = `<script>window.__STATE__=${json}</script>`;\n * ```\n */\nexport function serializeState(data: unknown): string {\n if (data === undefined) {\n return \"null\";\n }\n\n return JSON.stringify(data)\n .replaceAll(\"<\", String.raw`\\u003c`)\n .replaceAll(\">\", String.raw`\\u003e`)\n .replaceAll(\"&\", String.raw`\\u0026`);\n}\n"]}