kiru 0.54.0-preview.0 → 0.54.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 (178) hide show
  1. package/dist/components/memo.d.ts +1 -3
  2. package/dist/components/memo.d.ts.map +1 -1
  3. package/dist/components/memo.js +2 -2
  4. package/dist/components/memo.js.map +1 -1
  5. package/dist/context.d.ts.map +1 -1
  6. package/dist/context.js +1 -23
  7. package/dist/context.js.map +1 -1
  8. package/dist/dom.d.ts.map +1 -1
  9. package/dist/dom.js +109 -72
  10. package/dist/dom.js.map +1 -1
  11. package/dist/error.d.ts.map +1 -1
  12. package/dist/error.js +2 -4
  13. package/dist/error.js.map +1 -1
  14. package/dist/form/index.d.ts.map +1 -1
  15. package/dist/form/index.js +6 -10
  16. package/dist/form/index.js.map +1 -1
  17. package/dist/globals.d.ts +1 -1
  18. package/dist/globals.d.ts.map +1 -1
  19. package/dist/globals.js.map +1 -1
  20. package/dist/hmr.d.ts +1 -0
  21. package/dist/hmr.d.ts.map +1 -1
  22. package/dist/hmr.js +11 -3
  23. package/dist/hmr.js.map +1 -1
  24. package/dist/hooks/useEffectEvent.d.ts.map +1 -1
  25. package/dist/hooks/useEffectEvent.js.map +1 -1
  26. package/dist/hooks/usePromise.d.ts.map +1 -1
  27. package/dist/hooks/usePromise.js.map +1 -1
  28. package/dist/hooks/utils.d.ts.map +1 -1
  29. package/dist/hooks/utils.js +10 -10
  30. package/dist/hooks/utils.js.map +1 -1
  31. package/dist/hydration.d.ts +6 -13
  32. package/dist/hydration.d.ts.map +1 -1
  33. package/dist/hydration.js +20 -50
  34. package/dist/hydration.js.map +1 -1
  35. package/dist/reconciler.d.ts.map +1 -1
  36. package/dist/reconciler.js +3 -6
  37. package/dist/reconciler.js.map +1 -1
  38. package/dist/recursiveRender.d.ts.map +1 -1
  39. package/dist/recursiveRender.js +9 -8
  40. package/dist/recursiveRender.js.map +1 -1
  41. package/dist/renderToString.d.ts.map +1 -1
  42. package/dist/renderToString.js.map +1 -1
  43. package/dist/router/client/index.d.ts +2 -4
  44. package/dist/router/client/index.d.ts.map +1 -1
  45. package/dist/router/client/index.js +11 -49
  46. package/dist/router/client/index.js.map +1 -1
  47. package/dist/router/context.d.ts +5 -2
  48. package/dist/router/context.d.ts.map +1 -1
  49. package/dist/router/context.js +1 -5
  50. package/dist/router/context.js.map +1 -1
  51. package/dist/router/fileRouter.d.ts.map +1 -1
  52. package/dist/router/fileRouter.js +2 -4
  53. package/dist/router/fileRouter.js.map +1 -1
  54. package/dist/router/fileRouterController.d.ts +2 -2
  55. package/dist/router/fileRouterController.d.ts.map +1 -1
  56. package/dist/router/fileRouterController.js +39 -101
  57. package/dist/router/fileRouterController.js.map +1 -1
  58. package/dist/router/globals.d.ts +0 -3
  59. package/dist/router/globals.d.ts.map +1 -1
  60. package/dist/router/globals.js +0 -3
  61. package/dist/router/globals.js.map +1 -1
  62. package/dist/router/head.d.ts.map +1 -1
  63. package/dist/router/head.js +7 -5
  64. package/dist/router/head.js.map +1 -1
  65. package/dist/router/index.d.ts +1 -2
  66. package/dist/router/index.d.ts.map +1 -1
  67. package/dist/router/index.js +1 -2
  68. package/dist/router/index.js.map +1 -1
  69. package/dist/router/link.js +3 -3
  70. package/dist/router/link.js.map +1 -1
  71. package/dist/router/{ssg → server}/index.d.ts +3 -4
  72. package/dist/router/server/index.d.ts.map +1 -0
  73. package/dist/router/{ssg → server}/index.js +5 -8
  74. package/dist/router/server/index.js.map +1 -0
  75. package/dist/router/types.d.ts +4 -37
  76. package/dist/router/types.d.ts.map +1 -1
  77. package/dist/router/types.internal.d.ts +0 -4
  78. package/dist/router/types.internal.d.ts.map +1 -1
  79. package/dist/router/utils/index.d.ts +3 -8
  80. package/dist/router/utils/index.d.ts.map +1 -1
  81. package/dist/router/utils/index.js +8 -40
  82. package/dist/router/utils/index.js.map +1 -1
  83. package/dist/scheduler.d.ts.map +1 -1
  84. package/dist/scheduler.js +60 -53
  85. package/dist/scheduler.js.map +1 -1
  86. package/dist/signals/base.d.ts +0 -2
  87. package/dist/signals/base.d.ts.map +1 -1
  88. package/dist/signals/base.js +0 -6
  89. package/dist/signals/base.js.map +1 -1
  90. package/dist/signals/computed.d.ts +3 -0
  91. package/dist/signals/computed.d.ts.map +1 -1
  92. package/dist/signals/computed.js +29 -20
  93. package/dist/signals/computed.js.map +1 -1
  94. package/dist/signals/for.d.ts +3 -3
  95. package/dist/signals/for.d.ts.map +1 -1
  96. package/dist/signals/for.js +2 -1
  97. package/dist/signals/for.js.map +1 -1
  98. package/dist/signals/utils.d.ts.map +1 -1
  99. package/dist/signals/utils.js +2 -1
  100. package/dist/signals/utils.js.map +1 -1
  101. package/dist/signals/watch.d.ts.map +1 -1
  102. package/dist/signals/watch.js +18 -22
  103. package/dist/signals/watch.js.map +1 -1
  104. package/dist/ssr/client.d.ts +1 -1
  105. package/dist/ssr/client.d.ts.map +1 -1
  106. package/dist/ssr/client.js +0 -2
  107. package/dist/ssr/client.js.map +1 -1
  108. package/dist/ssr/server.d.ts +2 -1
  109. package/dist/ssr/server.d.ts.map +1 -1
  110. package/dist/ssr/server.js +19 -16
  111. package/dist/ssr/server.js.map +1 -1
  112. package/dist/types.d.ts +0 -7
  113. package/dist/types.d.ts.map +1 -1
  114. package/dist/types.dom.d.ts +3 -3
  115. package/dist/types.dom.d.ts.map +1 -1
  116. package/dist/utils/format.d.ts +1 -2
  117. package/dist/utils/format.d.ts.map +1 -1
  118. package/dist/utils/format.js +1 -4
  119. package/dist/utils/format.js.map +1 -1
  120. package/dist/utils/runtime.d.ts +3 -2
  121. package/dist/utils/runtime.d.ts.map +1 -1
  122. package/dist/utils/runtime.js +5 -2
  123. package/dist/utils/runtime.js.map +1 -1
  124. package/dist/utils/vdom.d.ts.map +1 -1
  125. package/dist/utils/vdom.js +2 -2
  126. package/dist/utils/vdom.js.map +1 -1
  127. package/package.json +4 -8
  128. package/src/components/memo.ts +3 -11
  129. package/src/context.ts +1 -24
  130. package/src/dom.ts +145 -96
  131. package/src/error.ts +2 -4
  132. package/src/form/index.ts +6 -9
  133. package/src/globals.ts +1 -1
  134. package/src/hmr.ts +14 -5
  135. package/src/hooks/useEffectEvent.ts +0 -1
  136. package/src/hooks/usePromise.ts +0 -1
  137. package/src/hooks/utils.ts +12 -12
  138. package/src/hydration.ts +21 -57
  139. package/src/reconciler.ts +2 -6
  140. package/src/recursiveRender.ts +10 -9
  141. package/src/renderToString.ts +0 -1
  142. package/src/router/client/index.ts +14 -100
  143. package/src/router/context.ts +6 -7
  144. package/src/router/fileRouter.ts +2 -6
  145. package/src/router/fileRouterController.ts +39 -159
  146. package/src/router/globals.ts +0 -4
  147. package/src/router/head.ts +7 -5
  148. package/src/router/index.ts +1 -12
  149. package/src/router/link.ts +3 -3
  150. package/src/router/{ssg → server}/index.ts +10 -17
  151. package/src/router/types.internal.ts +0 -5
  152. package/src/router/types.ts +4 -48
  153. package/src/router/utils/index.ts +16 -79
  154. package/src/scheduler.ts +83 -70
  155. package/src/signals/base.ts +0 -8
  156. package/src/signals/computed.ts +30 -18
  157. package/src/signals/for.ts +15 -10
  158. package/src/signals/utils.ts +2 -1
  159. package/src/signals/watch.ts +27 -22
  160. package/src/ssr/client.ts +1 -4
  161. package/src/ssr/server.ts +21 -20
  162. package/src/types.dom.ts +4 -5
  163. package/src/types.ts +0 -10
  164. package/src/utils/format.ts +0 -5
  165. package/src/utils/runtime.ts +6 -2
  166. package/src/utils/vdom.ts +2 -7
  167. package/dist/router/guard.d.ts +0 -17
  168. package/dist/router/guard.d.ts.map +0 -1
  169. package/dist/router/guard.js +0 -45
  170. package/dist/router/guard.js.map +0 -1
  171. package/dist/router/ssg/index.d.ts.map +0 -1
  172. package/dist/router/ssg/index.js.map +0 -1
  173. package/dist/router/ssr/index.d.ts +0 -20
  174. package/dist/router/ssr/index.d.ts.map +0 -1
  175. package/dist/router/ssr/index.js +0 -160
  176. package/dist/router/ssr/index.js.map +0 -1
  177. package/src/router/guard.ts +0 -72
  178. package/src/router/ssr/index.ts +0 -247
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/router/client/index.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EACV,sBAAsB,EACtB,WAAW,EACX,UAAU,EACX,MAAM,mBAAmB,CAAA;AAc1B,UAAU,iBAAiB;IACzB,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,sBAAsB,CAAC,UAAU,CAAC,CAAA;IACzC,OAAO,EAAE,sBAAsB,CAAA;IAC/B,MAAM,CAAC,EAAE,sBAAsB,CAAC,WAAW,CAAC,CAAA;IAC5C,UAAU,EAAE,OAAO,CAAA;IACnB,aAAa,CAAC,EAAE,IAAI,CAAC,aAAa,CAAA;CACnC;AAED,wBAAsB,UAAU,CAAC,OAAO,EAAE,iBAAiB,iBA+C1D"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/router/client/index.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,sBAAsB,EAAc,MAAM,mBAAmB,CAAA;AAQ3E,UAAU,iBAAiB;IACzB,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,sBAAsB,CAAA;IAC7B,OAAO,EAAE,sBAAsB,CAAA;IAC/B,UAAU,EAAE,OAAO,CAAA;CACpB;AAED,wBAAsB,UAAU,CAAC,OAAO,EAAE,iBAAiB,iBAmB1D"}
@@ -1,44 +1,31 @@
1
+ // initClient({ dir, baseUrl, pages, layouts })
1
2
  import { createElement } from "../../element.js";
2
3
  import { hydrate } from "../../ssr/client.js";
3
4
  import { FileRouter } from "../fileRouter.js";
4
- import { toArray } from "../../utils/format.js";
5
- import { matchModules, matchRoute, match404Route, parseQuery, runBeforeEachGuards, runAfterEachGuards, runBeforeEnterHooks, } from "../utils/index.js";
6
- import { fileRouterInstance, fileRouterRoute, requestContext, routerCache, } from "../globals.js";
5
+ import { matchLayouts, matchRoute, match404Route, parseQuery, } from "../utils/index.js";
6
+ import { fileRouterInstance, fileRouterRoute, routerCache } from "../globals.js";
7
7
  import { FileRouterController } from "../fileRouterController.js";
8
8
  import { FileRouterDataLoadError } from "../errors.js";
9
9
  import { __DEV__ } from "../../env.js";
10
10
  import { RouterCache } from "../cache.js";
11
- import { RequestContext } from "../context.js";
12
11
  export async function initClient(options) {
13
12
  routerCache.current = new RouterCache();
14
- const { dir, baseUrl, pages, layouts, guards, transition, hydrationMode = "static", } = options;
15
- try {
16
- requestContext.current = JSON.parse(document.querySelector("[k-request-context]").innerHTML);
17
- }
18
- catch { }
19
- const preloaded = await preparePreloadConfig(options, false, hydrationMode === "dynamic");
13
+ const { dir, baseUrl, pages, layouts, transition } = options;
20
14
  const config = {
21
15
  dir,
22
16
  baseUrl,
23
17
  pages,
24
18
  layouts,
25
- guards,
26
19
  transition,
27
- preloaded,
20
+ preloaded: await preparePreloadConfig(options),
28
21
  };
29
- const children = createElement(FileRouter, { config });
30
- const app = hydrationMode === "static"
31
- ? children
32
- : createElement(RequestContext.Provider, {
33
- value: requestContext.current,
34
- children,
35
- });
36
- hydrate(app, document.body, { hydrationMode });
22
+ const app = createElement(FileRouter, { config });
23
+ hydrate(app, document.body, { hydrationMode: "static" });
37
24
  if (__DEV__) {
38
25
  onLoadedDev();
39
26
  }
40
27
  }
41
- async function preparePreloadConfig(options, isStatic404 = false, _isSSR = false) {
28
+ async function preparePreloadConfig(options, isStatic404 = false) {
42
29
  let pageProps = {};
43
30
  let cacheData = null;
44
31
  let url = new URL(window.location.pathname, "http://localhost");
@@ -55,18 +42,7 @@ async function preparePreloadConfig(options, isStatic404 = false, _isSSR = false
55
42
  if (!routeMatch) {
56
43
  throw new Error(`No route defined (path: ${url.pathname}).`);
57
44
  }
58
- const layoutEntries = matchModules(options.layouts, routeMatch.routeSegments);
59
- // Load and run guards before loading page
60
- // if SSR, do we even need to do this?
61
- let guardModules = [];
62
- if (options.guards) {
63
- const guardEntries = matchModules(options.guards, routeMatch.routeSegments);
64
- guardModules = await Promise.all(guardEntries.map((entry) => entry.load()));
65
- const redirectPath = await runBeforeEachGuards(guardModules, { ...requestContext.current }, url.pathname);
66
- if (redirectPath !== null) {
67
- window.location.href = redirectPath;
68
- }
69
- }
45
+ const layoutEntries = matchLayouts(options.layouts, routeMatch.routeSegments);
70
46
  fileRouterInstance.current = new FileRouterController();
71
47
  fileRouterRoute.current = routeMatch.route;
72
48
  const [page, ...layouts] = await Promise.all([
@@ -74,16 +50,6 @@ async function preparePreloadConfig(options, isStatic404 = false, _isSSR = false
74
50
  ...layoutEntries.map((e) => e.load()),
75
51
  ]);
76
52
  fileRouterRoute.current = null;
77
- const onBeforeEnter = page.config?.hooks?.onBeforeEnter;
78
- if (onBeforeEnter) {
79
- const redirectPath = await runBeforeEnterHooks(toArray(onBeforeEnter), { ...requestContext.current }, url.pathname);
80
- if (redirectPath) {
81
- window.location.href = redirectPath;
82
- // @ts-ignore
83
- return;
84
- }
85
- }
86
- const query = parseQuery(window.location.search);
87
53
  // Check if page has static props pre-loaded at build time
88
54
  if (page.__KIRU_STATIC_PROPS__) {
89
55
  const staticProps = page.__KIRU_STATIC_PROPS__[window.location.pathname];
@@ -106,23 +72,19 @@ async function preparePreloadConfig(options, isStatic404 = false, _isSSR = false
106
72
  const cacheKey = {
107
73
  path: window.location.pathname,
108
74
  params: routeMatch.params,
109
- query,
75
+ query: parseQuery(url.search),
110
76
  };
111
77
  cacheData = routerCache.current.get(cacheKey, loader.cache);
112
78
  }
113
79
  }
114
- window.__kiru.on("mount", () => {
115
- runAfterEachGuards(guardModules, { ...requestContext.current }, url.pathname);
116
- });
117
80
  return {
118
81
  pages: options.pages,
119
82
  layouts: options.layouts,
120
- guards: options.guards,
121
83
  page: page,
122
84
  pageProps: pageProps,
123
85
  pageLayouts: layouts,
124
86
  params: routeMatch.params,
125
- query: query,
87
+ query: parseQuery(url.search),
126
88
  route: routeMatch.route,
127
89
  cacheData,
128
90
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/router/client/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/router/client/index.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,11 @@ export interface ReloadOptions {
12
12
  invalidate?: boolean;
13
13
  }
14
14
  export interface FileRouterContextType {
15
+ /**
16
+ * The base URL of the router
17
+ * @default "/"
18
+ */
19
+ baseUrl: string;
15
20
  /**
16
21
  * Invalidate cached loader data for the given paths
17
22
  * @example
@@ -58,6 +63,4 @@ export interface FileRouterContextType {
58
63
  }
59
64
  export declare const RouterContext: Kiru.Context<FileRouterContextType>;
60
65
  export declare function useFileRouter(): FileRouterContextType;
61
- export declare const RequestContext: Kiru.Context<Kiru.RequestContext>;
62
- export declare function useRequestContext(): Kiru.RequestContext;
63
66
  //# sourceMappingURL=context.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/router/context.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAEzD,MAAM,WAAW,aAAa;IAC5B;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAA;CACrB;AAED,MAAM,WAAW,qBAAqB;IACpC;;;;;;OAMG;IACH,UAAU,CAAC,GAAG,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC7C;;OAEG;IACH,KAAK,EAAE,WAAW,CAAA;IAElB;;;OAGG;IACH,QAAQ,EAAE,CACR,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,OAAO,CAAC;QAAC,UAAU,CAAC,EAAE,OAAO,CAAA;KAAE,KAClD,OAAO,CAAC,IAAI,CAAC,CAAA;IAElB;;OAEG;IACH,oBAAoB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IAE5C;;OAEG;IACH,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE;QACjB,UAAU,CAAC,EAAE,OAAO,CAAA;QACpB,UAAU,CAAC,EAAE,OAAO,CAAA;KACrB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAEnB;;OAEG;IACH,QAAQ,EAAE,CACR,KAAK,EAAE,UAAU,EACjB,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,KAC5B,OAAO,CAAC,IAAI,CAAC,CAAA;IAElB;;OAEG;IACH,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CAC1E;AAED,eAAO,MAAM,aAAa,qCAA8C,CAAA;AAKxE,wBAAgB,aAAa,IAAI,qBAAqB,CAErD;AAED,eAAO,MAAM,cAAc,mCAAyC,CAAA;AAEpE,wBAAgB,iBAAiB,wBAEhC"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/router/context.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAEzD,MAAM,WAAW,aAAa;IAC5B;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAA;CACrB;AAED,MAAM,WAAW,qBAAqB;IACpC;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAA;IACf;;;;;;OAMG;IACH,UAAU,CAAC,GAAG,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC7C;;OAEG;IACH,KAAK,EAAE,WAAW,CAAA;IAElB;;;OAGG;IACH,QAAQ,EAAE,CACR,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,OAAO,CAAC;QAAC,UAAU,CAAC,EAAE,OAAO,CAAA;KAAE,KAClD,OAAO,CAAC,IAAI,CAAC,CAAA;IAElB;;OAEG;IACH,oBAAoB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IAE5C;;OAEG;IACH,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE;QACjB,UAAU,CAAC,EAAE,OAAO,CAAA;QACpB,UAAU,CAAC,EAAE,OAAO,CAAA;KACrB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAEnB;;OAEG;IACH,QAAQ,EAAE,CACR,KAAK,EAAE,UAAU,EACjB,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,KAC5B,OAAO,CAAC,IAAI,CAAC,CAAA;IAElB;;OAEG;IACH,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CAC1E;AAED,eAAO,MAAM,aAAa,qCAA8C,CAAA;AAKxE,wBAAgB,aAAa,IAAI,qBAAqB,CAErD"}
@@ -1,6 +1,6 @@
1
- import { useContext } from "../hooks/index.js";
2
1
  import { createContext } from "../context.js";
3
2
  import { __DEV__ } from "../env.js";
3
+ import { useContext } from "../hooks/index.js";
4
4
  export const RouterContext = createContext(null);
5
5
  if (__DEV__) {
6
6
  RouterContext.displayName = "RouterContext";
@@ -8,8 +8,4 @@ if (__DEV__) {
8
8
  export function useFileRouter() {
9
9
  return useContext(RouterContext);
10
10
  }
11
- export const RequestContext = createContext({});
12
- export function useRequestContext() {
13
- return useContext(RequestContext);
14
- }
15
11
  //# sourceMappingURL=context.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/router/context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAkEnC,MAAM,CAAC,MAAM,aAAa,GAAG,aAAa,CAAwB,IAAK,CAAC,CAAA;AACxE,IAAI,OAAO,EAAE,CAAC;IACZ,aAAa,CAAC,WAAW,GAAG,eAAe,CAAA;AAC7C,CAAC;AAED,MAAM,UAAU,aAAa;IAC3B,OAAO,UAAU,CAAC,aAAa,CAAC,CAAA;AAClC,CAAC;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,aAAa,CAAsB,EAAE,CAAC,CAAA;AAEpE,MAAM,UAAU,iBAAiB;IAC/B,OAAO,UAAU,CAAC,cAAc,CAAC,CAAA;AACnC,CAAC"}
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/router/context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAuE9C,MAAM,CAAC,MAAM,aAAa,GAAG,aAAa,CAAwB,IAAK,CAAC,CAAA;AACxE,IAAI,OAAO,EAAE,CAAC;IACZ,aAAa,CAAC,WAAW,GAAG,eAAe,CAAA;AAC7C,CAAC;AAED,MAAM,UAAU,aAAa;IAC3B,OAAO,UAAU,CAAC,aAAa,CAAC,CAAA;AAClC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"fileRouter.d.ts","sourceRoot":"","sources":["../../src/router/fileRouter.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAGlD,MAAM,WAAW,eAAe;IAC9B;;;;;;;;;;;;;;OAcG;IACH,MAAM,EAAE,gBAAgB,CAAA;CACzB;AAED,wBAAgB,UAAU,CAAC,EAAE,MAAM,EAAE,EAAE,eAAe,GAAG,GAAG,CAAC,OAAO,CAkBnE"}
1
+ {"version":3,"file":"fileRouter.d.ts","sourceRoot":"","sources":["../../src/router/fileRouter.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAGlD,MAAM,WAAW,eAAe;IAC9B;;;;;;;;;;;;;;OAcG;IACH,MAAM,EAAE,gBAAgB,CAAA;CACzB;AAED,wBAAgB,UAAU,CAAC,EAAE,MAAM,EAAE,EAAE,eAAe,GAAG,GAAG,CAAC,OAAO,CAcnE"}
@@ -5,10 +5,8 @@ import { FileRouterController } from "./fileRouterController.js";
5
5
  import { fileRouterInstance } from "./globals.js";
6
6
  export function FileRouter({ config }) {
7
7
  const [controller] = useState(() => {
8
- if (fileRouterInstance.current && !config.preloaded) {
9
- throw new Error("[kiru/router]: FileRouter cannot be instantiated more than once at a time.");
10
- }
11
- const router = (fileRouterInstance.current ?? (fileRouterInstance.current = new FileRouterController()));
8
+ fileRouterInstance.current?.dispose();
9
+ const router = (fileRouterInstance.current = new FileRouterController());
12
10
  router.init(config);
13
11
  return router;
14
12
  });
@@ -1 +1 @@
1
- {"version":3,"file":"fileRouter.js","sourceRoot":"","sources":["../../src/router/fileRouter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAC7C,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAC5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AAEhE,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AAqBjD,MAAM,UAAU,UAAU,CAAC,EAAE,MAAM,EAAmB;IACpD,MAAM,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE;QACjC,IAAI,kBAAkB,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YACpD,MAAM,IAAI,KAAK,CACb,4EAA4E,CAC7E,CAAA;QACH,CAAC;QACD,MAAM,MAAM,GAAG,CAAC,kBAAkB,CAAC,OAAO,KAA1B,kBAAkB,CAAC,OAAO,GAAK,IAAI,oBAAoB,EAAE,EAAC,CAAA;QAC1E,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACnB,OAAO,MAAM,CAAA;IACf,CAAC,CAAC,CAAA;IACF,SAAS,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAA;IAEzD,OAAO,aAAa,CAClB,aAAa,CAAC,QAAQ,EACtB,EAAE,KAAK,EAAE,UAAU,CAAC,YAAY,EAAE,EAClC,UAAU,CAAC,WAAW,EAAE,CACzB,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"fileRouter.js","sourceRoot":"","sources":["../../src/router/fileRouter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAC7C,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAC5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AAEhE,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AAqBjD,MAAM,UAAU,UAAU,CAAC,EAAE,MAAM,EAAmB;IACpD,MAAM,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE;QACjC,kBAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,CAAA;QACrC,MAAM,MAAM,GAAG,CAAC,kBAAkB,CAAC,OAAO,GAAG,IAAI,oBAAoB,EAAE,CAAC,CAAA;QACxE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACnB,OAAO,MAAM,CAAA;IACf,CAAC,CAAC,CAAA;IACF,SAAS,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAA;IAEzD,OAAO,aAAa,CAClB,aAAa,CAAC,QAAQ,EACtB,EAAE,KAAK,EAAE,UAAU,CAAC,YAAY,EAAE,EAClC,UAAU,CAAC,WAAW,EAAE,CACzB,CAAA;AACH,CAAC"}
@@ -14,12 +14,11 @@ export declare class FileRouterController {
14
14
  private historyIndex;
15
15
  private layouts;
16
16
  private pages;
17
- private guards;
18
17
  private pageRouteToConfig?;
19
18
  private state;
19
+ private baseUrl;
20
20
  constructor();
21
21
  init(config: FileRouterConfig): void;
22
- private onBeforeLeave;
23
22
  getChildren(): Kiru.Element | null;
24
23
  dispose(): void;
25
24
  private loadRoute;
@@ -30,5 +29,6 @@ export declare class FileRouterController {
30
29
  private setQuery;
31
30
  private setHash;
32
31
  private updateHistoryState;
32
+ private createContextValue;
33
33
  }
34
34
  //# sourceMappingURL=fileRouterController.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"fileRouterController.d.ts","sourceRoot":"","sources":["../../src/router/fileRouterController.ts"],"names":[],"mappings":"AAKA,OAAO,EAAiB,KAAK,qBAAqB,EAAE,MAAM,cAAc,CAAA;AAQxE,OAAO,KAAK,EACV,gBAAgB,EAChB,UAAU,EAKX,MAAM,YAAY,CAAA;AACnB,OAAO,KAAK,EAEV,iBAAiB,EAKlB,MAAM,qBAAqB,CAAA;AAqB5B,qBAAa,oBAAoB;IACxB,YAAY,EAAE,qBAAqB,CAAA;IACnC,QAAQ,CAAC,EAAE,iBAAiB,CAAA;IAC5B,uBAAuB,CAAC,EAAE,CAAC,CAAC,SAAS,UAAU,CAAC,GAAG,CAAC,EACzD,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,CAAC,KACN,IAAI,CAAA;IACT,OAAO,CAAC,eAAe,CAAiB;IACxC,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,gBAAgB,CAAiC;IACzD,OAAO,CAAC,cAAc,CAAmB;IACzC,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,mBAAmB,CAAC,CAG3B;IACD,OAAO,CAAC,YAAY,CAAQ;IAC5B,OAAO,CAAC,OAAO,CAAwB;IACvC,OAAO,CAAC,KAAK,CAAoC;IACjD,OAAO,CAAC,MAAM,CAAqC;IACnD,OAAO,CAAC,iBAAiB,CAAC,CAAyB;IACnD,OAAO,CAAC,KAAK,CAAa;;IAgInB,IAAI,CAAC,MAAM,EAAE,gBAAgB;IAqLpC,OAAO,CAAC,aAAa;IAyBd,WAAW;IAUX,OAAO;YAUA,SAAS;YAiMT,aAAa;IAmD3B,OAAO,CAAC,UAAU;YAcJ,QAAQ;YAqCR,oBAAoB;IAuBlC,OAAO,CAAC,QAAQ;YAUF,OAAO;YAcP,kBAAkB;CA6BjC"}
1
+ {"version":3,"file":"fileRouterController.d.ts","sourceRoot":"","sources":["../../src/router/fileRouterController.ts"],"names":[],"mappings":"AAIA,OAAO,EAAiB,KAAK,qBAAqB,EAAE,MAAM,cAAc,CAAA;AAGxE,OAAO,KAAK,EACV,gBAAgB,EAChB,UAAU,EAKX,MAAM,YAAY,CAAA;AACnB,OAAO,KAAK,EAEV,iBAAiB,EAIlB,MAAM,qBAAqB,CAAA;AAiB5B,qBAAa,oBAAoB;IACxB,YAAY,EAAE,qBAAqB,CAAA;IACnC,QAAQ,CAAC,EAAE,iBAAiB,CAAA;IAC5B,uBAAuB,CAAC,EAAE,CAAC,CAAC,SAAS,UAAU,CAAC,GAAG,CAAC,EACzD,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,CAAC,KACN,IAAI,CAAA;IACT,OAAO,CAAC,eAAe,CAAiB;IACxC,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,gBAAgB,CAAiC;IACzD,OAAO,CAAC,cAAc,CAAmB;IACzC,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,mBAAmB,CAAC,CAG3B;IACD,OAAO,CAAC,YAAY,CAAQ;IAC5B,OAAO,CAAC,OAAO,CAAwB;IACvC,OAAO,CAAC,KAAK,CAAoC;IACjD,OAAO,CAAC,iBAAiB,CAAC,CAAyB;IACnD,OAAO,CAAC,KAAK,CAAa;IAC1B,OAAO,CAAC,OAAO,CAAM;;IA2Gd,IAAI,CAAC,MAAM,EAAE,gBAAgB;IAqJ7B,WAAW;IAUX,OAAO;YAUA,SAAS;YA6IT,aAAa;IAmD3B,OAAO,CAAC,UAAU;YAcJ,QAAQ;YAkCR,oBAAoB;IAuBlC,OAAO,CAAC,QAAQ;YAUF,OAAO;YAcP,kBAAkB;IA2BhC,OAAO,CAAC,kBAAkB;CA0B3B"}
@@ -2,14 +2,14 @@ import { Signal } from "../signals/base.js";
2
2
  import { watch } from "../signals/watch.js";
3
3
  import { __DEV__ } from "../env.js";
4
4
  import { flushSync, nextIdle } from "../scheduler.js";
5
- import { toArray } from "../utils/format.js";
6
5
  import { FileRouterDataLoadError } from "./errors.js";
7
- import { fileRouterInstance, fileRouterRoute, requestContext, routerCache, } from "./globals.js";
8
- import { formatViteImportMap, matchModules, matchRoute, match404Route, normalizePrefixPath, parseQuery, wrapWithLayouts, runAfterEachGuards, runBeforeEachGuards, runBeforeEnterHooks, runBeforeLeaveHooks, } from "./utils/index.js";
6
+ import { fileRouterInstance, fileRouterRoute, routerCache } from "./globals.js";
7
+ import { formatViteImportMap, matchLayouts, matchRoute, match404Route, normalizePrefixPath, parseQuery, wrapWithLayouts, } from "./utils/index.js";
9
8
  import { RouterCache } from "./cache.js";
10
9
  import { scrollStack } from "./scrollStack.js";
11
10
  export class FileRouterController {
12
11
  constructor() {
12
+ this.baseUrl = "/";
13
13
  routerCache.current ?? (routerCache.current = new RouterCache());
14
14
  this.abortController = new AbortController();
15
15
  this.currentPage = new Signal(null);
@@ -19,7 +19,6 @@ export class FileRouterController {
19
19
  this.historyIndex = 0;
20
20
  this.layouts = {};
21
21
  this.pages = {};
22
- this.guards = {};
23
22
  this.state = {
24
23
  pathname: window.location.pathname,
25
24
  hash: window.location.hash,
@@ -27,27 +26,7 @@ export class FileRouterController {
27
26
  query: {},
28
27
  signal: this.abortController.signal,
29
28
  };
30
- const __this = this;
31
- this.contextValue = {
32
- invalidate: async (...paths) => {
33
- if (this.invalidate(...paths)) {
34
- return this.loadRoute(void 0, void 0, true);
35
- }
36
- },
37
- get state() {
38
- return { ...__this.state };
39
- },
40
- navigate: this.navigate.bind(this),
41
- prefetchRouteModules: this.prefetchRouteModules.bind(this),
42
- reload: async (options) => {
43
- if (options?.invalidate ?? true) {
44
- this.invalidate(this.state.pathname);
45
- }
46
- return this.loadRoute(void 0, void 0, options?.transition);
47
- },
48
- setQuery: this.setQuery.bind(this),
49
- setHash: this.setHash.bind(this),
50
- };
29
+ this.contextValue = this.createContextValue();
51
30
  if (__DEV__) {
52
31
  this.filePathToPageRoute = new Map();
53
32
  this.pageRouteToConfig = new Map();
@@ -124,14 +103,15 @@ export class FileRouterController {
124
103
  }
125
104
  }
126
105
  init(config) {
127
- const { pages, layouts, guards, dir = "/pages", baseUrl = "/", transition, preloaded, } = config;
106
+ const { pages, layouts, dir = "/pages", baseUrl = "/", transition, preloaded, } = config;
128
107
  this.enableTransitions = !!transition;
129
108
  const [normalizedDir, normalizedBaseUrl] = [
130
109
  normalizePrefixPath(dir),
131
110
  normalizePrefixPath(baseUrl),
132
111
  ];
112
+ this.baseUrl = normalizedBaseUrl.slice(0, -1);
133
113
  if (preloaded) {
134
- const { pages, layouts, guards, page, pageProps, pageLayouts, route, params, query, cacheData, } = preloaded;
114
+ const { pages, layouts, page, pageProps, pageLayouts, route, params, query, cacheData, } = preloaded;
135
115
  this.state = {
136
116
  params,
137
117
  query,
@@ -148,8 +128,6 @@ export class FileRouterController {
148
128
  this.currentLayouts.value = pageLayouts.map((l) => l.default);
149
129
  this.pages = pages;
150
130
  this.layouts = layouts;
151
- this.guards = (guards ??
152
- {});
153
131
  if (__DEV__) {
154
132
  if (page.config) {
155
133
  this.dev_onPageConfigDefined(route, page.config);
@@ -184,9 +162,6 @@ export class FileRouterController {
184
162
  else {
185
163
  this.pages = formatViteImportMap(pages, normalizedDir, normalizedBaseUrl);
186
164
  this.layouts = formatViteImportMap(layouts, normalizedDir, normalizedBaseUrl);
187
- this.guards = !guards
188
- ? {}
189
- : formatViteImportMap(guards, normalizedDir, normalizedBaseUrl);
190
165
  if (__DEV__) {
191
166
  validateRoutes(this.pages);
192
167
  }
@@ -219,26 +194,8 @@ export class FileRouterController {
219
194
  scrollStack.replace(this.historyIndex, window.scrollX, window.scrollY);
220
195
  window.history.scrollRestoration = "auto";
221
196
  });
222
- let ignorePopState = false;
223
197
  window.addEventListener("popstate", (e) => {
224
198
  e.preventDefault();
225
- if (!ignorePopState &&
226
- this.onBeforeLeave(window.location.pathname) === false) {
227
- ignorePopState = true;
228
- if (e.state !== null) {
229
- if (e.state.index > this.historyIndex) {
230
- window.history.go(-1);
231
- }
232
- else if (e.state.index < this.historyIndex) {
233
- window.history.go(1);
234
- }
235
- }
236
- return;
237
- }
238
- if (ignorePopState) {
239
- ignorePopState = false;
240
- return;
241
- }
242
199
  scrollStack.replace(this.historyIndex, window.scrollX, window.scrollY);
243
200
  this.loadRoute().then(() => {
244
201
  if (e.state != null) {
@@ -251,23 +208,6 @@ export class FileRouterController {
251
208
  });
252
209
  });
253
210
  }
254
- onBeforeLeave(to) {
255
- const currentPage = this.currentPage.peek();
256
- if (!currentPage) {
257
- return true;
258
- }
259
- let config = currentPage.config ?? {};
260
- if (__DEV__) {
261
- if (this.pageRouteToConfig?.has(currentPage.route)) {
262
- config = this.pageRouteToConfig.get(currentPage.route);
263
- }
264
- }
265
- const onBeforeLeave = config.hooks?.onBeforeLeave;
266
- if (onBeforeLeave) {
267
- return runBeforeLeaveHooks(toArray(onBeforeLeave), { ...requestContext.current }, to, this.state.pathname);
268
- }
269
- return true;
270
- }
271
211
  getChildren() {
272
212
  const page = this.currentPage.value;
273
213
  if (!page)
@@ -303,22 +243,9 @@ See https://kirujs.dev/docs/api/file-router#404 for more information.`);
303
243
  routeMatch = _404Match;
304
244
  }
305
245
  const { route, pageEntry, params, routeSegments } = routeMatch;
306
- // Apply beforeEach guards before loading route
307
- const guardEntries = matchModules(this.guards, routeSegments);
308
- const guardModules = await Promise.all(guardEntries.map((entry) => entry.load()));
309
- const fromPath = this.state.pathname;
310
- const redirectPath = await runBeforeEachGuards(guardModules, { ...requestContext.current }, path, fromPath);
311
- // If redirect was requested, navigate to that path instead
312
- if (redirectPath !== null) {
313
- this.state.pathname = path;
314
- return this.navigate(redirectPath, {
315
- replace: true,
316
- transition: enableTransition,
317
- });
318
- }
319
246
  fileRouterRoute.current = route;
320
247
  const pagePromise = pageEntry.load();
321
- const layoutPromises = matchModules(this.layouts, routeSegments).map((layoutEntry) => layoutEntry.load());
248
+ const layoutPromises = matchLayouts(this.layouts, routeSegments).map((layoutEntry) => layoutEntry.load());
322
249
  const [page, ...layouts] = await Promise.all([
323
250
  pagePromise,
324
251
  ...layoutPromises,
@@ -343,17 +270,7 @@ See https://kirujs.dev/docs/api/file-router#404 for more information.`);
343
270
  config = this.pageRouteToConfig.get(route);
344
271
  }
345
272
  }
346
- const { loader, hooks } = config;
347
- if (hooks?.onBeforeEnter) {
348
- const redirectPath = await runBeforeEnterHooks(toArray(hooks.onBeforeEnter), requestContext, path, fromPath);
349
- if (redirectPath) {
350
- this.state.pathname = path;
351
- return this.navigate(redirectPath, {
352
- replace: true,
353
- transition: enableTransition,
354
- });
355
- }
356
- }
273
+ const { loader } = config;
357
274
  if (loader) {
358
275
  if (loader.mode !== "static" || __DEV__) {
359
276
  // Check cache first if caching is enabled
@@ -402,6 +319,7 @@ See https://kirujs.dev/docs/api/file-router#404 for more information.`);
402
319
  }
403
320
  return handleStateTransition(signal, enableTransition, () => {
404
321
  this.state = routerState;
322
+ this.contextValue = this.createContextValue();
405
323
  this.currentPage.value = {
406
324
  component: page.default,
407
325
  config,
@@ -411,9 +329,6 @@ See https://kirujs.dev/docs/api/file-router#404 for more information.`);
411
329
  this.currentLayouts.value = layouts
412
330
  .filter((m) => typeof m.default === "function")
413
331
  .map((m) => m.default);
414
- nextIdle(() => {
415
- runAfterEachGuards(guardModules, { ...requestContext.current }, path, fromPath);
416
- });
417
332
  });
418
333
  }
419
334
  catch (error) {
@@ -425,7 +340,7 @@ See https://kirujs.dev/docs/api/file-router#404 for more information.`);
425
340
  const { loader } = config;
426
341
  // Load data from loader (cache check is now done earlier in loadRoute)
427
342
  loader
428
- .load({ ...routerState, context: { ...requestContext.current } })
343
+ .load(routerState)
429
344
  .then((data) => {
430
345
  // Cache the data if caching is enabled
431
346
  if (loader.mode !== "static" && loader.cache) {
@@ -473,9 +388,6 @@ See https://kirujs.dev/docs/api/file-router#404 for more information.`);
473
388
  if (nextHash === prevHash && nextPath === prevPath) {
474
389
  return;
475
390
  }
476
- if (this.onBeforeLeave(prevPath) === false) {
477
- return;
478
- }
479
391
  this.updateHistoryState(path, options);
480
392
  this.loadRoute(void 0, void 0, options?.transition ?? this.enableTransitions).then(() => {
481
393
  if (nextHash !== prevHash) {
@@ -500,7 +412,7 @@ See https://kirujs.dev/docs/api/file-router#404 for more information.`);
500
412
  const { pageEntry, route } = routeMatch;
501
413
  fileRouterRoute.current = route;
502
414
  const pagePromise = pageEntry.load();
503
- const layoutPromises = matchModules(this.layouts, route.split("/")).map((layoutEntry) => layoutEntry.load());
415
+ const layoutPromises = matchLayouts(this.layouts, route.split("/")).map((layoutEntry) => layoutEntry.load());
504
416
  await Promise.all([pagePromise, ...layoutPromises]);
505
417
  fileRouterRoute.current = null;
506
418
  }
@@ -535,10 +447,10 @@ See https://kirujs.dev/docs/api/file-router#404 for more information.`);
535
447
  window.history.replaceState({ ...window.history.state, index: this.historyIndex }, "", path);
536
448
  }
537
449
  else {
538
- const current = scrollStack.get();
539
450
  // if we've gone back and are now going forward, we need to
540
451
  // truncate the scroll stack so it doesn't just permanently grow.
541
452
  // this should keep it at the same length as the history stack.
453
+ const current = scrollStack.get();
542
454
  if (this.historyIndex < window.history.length - 1) {
543
455
  current.length = this.historyIndex;
544
456
  }
@@ -546,6 +458,32 @@ See https://kirujs.dev/docs/api/file-router#404 for more information.`);
546
458
  window.history.pushState({ ...window.history.state, index: ++this.historyIndex }, "", path);
547
459
  }
548
460
  }
461
+ createContextValue() {
462
+ const __this = this;
463
+ return {
464
+ get baseUrl() {
465
+ return __this.baseUrl;
466
+ },
467
+ invalidate: async (...paths) => {
468
+ if (this.invalidate(...paths)) {
469
+ return this.loadRoute(void 0, void 0, true);
470
+ }
471
+ },
472
+ get state() {
473
+ return { ...__this.state };
474
+ },
475
+ navigate: this.navigate.bind(this),
476
+ prefetchRouteModules: this.prefetchRouteModules.bind(this),
477
+ reload: async (options) => {
478
+ if (options?.invalidate ?? true) {
479
+ this.invalidate(this.state.pathname);
480
+ }
481
+ return this.loadRoute(void 0, void 0, options?.transition);
482
+ },
483
+ setQuery: this.setQuery.bind(this),
484
+ setHash: this.setHash.bind(this),
485
+ };
486
+ }
549
487
  }
550
488
  function buildQueryString(query) {
551
489
  const params = new URLSearchParams();
@@ -1 +1 @@
1
- {"version":3,"file":"fileRouterController.js","sourceRoot":"","sources":["../../src/router/fileRouterController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fileRouterController.js","sourceRoot":"","sources":["../../src/router/fileRouterController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAErD,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAA;AACrD,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAgB/E,OAAO,EACL,mBAAmB,EACnB,YAAY,EACZ,UAAU,EACV,aAAa,EACb,mBAAmB,EACnB,UAAU,EACV,eAAe,GAChB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,WAAW,EAAiB,MAAM,YAAY,CAAA;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAM9C,MAAM,OAAO,oBAAoB;IAuB/B;QAFQ,YAAO,GAAG,GAAG,CAAA;QAGnB,WAAW,CAAC,OAAO,KAAnB,WAAW,CAAC,OAAO,GAAK,IAAI,WAAW,EAAE,EAAA;QACzC,IAAI,CAAC,eAAe,GAAG,IAAI,eAAe,EAAE,CAAA;QAC5C,IAAI,CAAC,WAAW,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,CAAA;QACnC,IAAI,CAAC,gBAAgB,GAAG,IAAI,MAAM,CAAC,EAAE,CAAC,CAAA;QACtC,IAAI,CAAC,cAAc,GAAG,IAAI,MAAM,CAAC,EAAE,CAAC,CAAA;QACpC,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAA;QAC9B,IAAI,CAAC,YAAY,GAAG,CAAC,CAAA;QACrB,IAAI,CAAC,OAAO,GAAG,EAAE,CAAA;QACjB,IAAI,CAAC,KAAK,GAAG,EAAE,CAAA;QACf,IAAI,CAAC,KAAK,GAAG;YACX,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,QAAQ;YAClC,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI;YAC1B,MAAM,EAAE,EAAE;YACV,KAAK,EAAE,EAAE;YACT,MAAM,EAAE,IAAI,CAAC,eAAe,CAAC,MAAM;SACpC,CAAA;QACD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAA;QAC7C,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,CAAC,mBAAmB,GAAG,IAAI,GAAG,EAAE,CAAA;YACpC,IAAI,CAAC,iBAAiB,GAAG,IAAI,GAAG,EAAE,CAAA;YAClC,IAAI,CAAC,uBAAuB,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE;gBAC5C,MAAM,QAAQ,GAAG,IAAI,CAAC,mBAAmB,EAAE,GAAG,CAAC,EAAE,CAAC,CAAA;gBAClD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;oBAC3B,MAAM,KAAK,GAAG,eAAe,CAAC,OAAO,CAAA;oBACrC,IAAI,CAAC,KAAK;wBAAE,OAAM;oBAClB,IAAI,CAAC,mBAAmB,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;oBACpD,OAAM;gBACR,CAAC;gBACD,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAA;gBACtC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAA;gBAC5B,IAAI,OAAO,EAAE,KAAK,KAAK,QAAQ,CAAC,KAAK,IAAI,MAAM,EAAE,CAAC;oBAChD,MAAM,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAA;oBACrC,MAAM,UAAU,GACd,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,UAAU,CAAC;wBAC/C,IAAI,CAAC,iBAAiB,CAAA;oBAExB,0CAA0C;oBAC1C,IAAI,UAAU,GAAG,IAAI,CAAA;oBACrB,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;wBAC7C,MAAM,QAAQ,GAAa;4BACzB,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ;4BACzB,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM;4BACzB,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK;yBACxB,CAAA;wBACD,UAAU,GAAG,WAAW,CAAC,OAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,CAAA;oBAC/D,CAAC;oBAED,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;wBACxB,wDAAwD;wBACxD,MAAM,KAAK,GAAG;4BACZ,GAAG,CAAC;4BACJ,IAAI,EAAE,UAAU,CAAC,KAAK;4BACtB,KAAK,EAAE,IAAI;4BACX,OAAO,EAAE,KAAK;yBACf,CAAA;wBACD,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE;4BACxD,IAAI,CAAC,gBAAgB,CAAC,KAAK,GAAG,KAAK,CAAA;wBACrC,CAAC,CAAC,CAAA;oBACJ,CAAC;yBAAM,CAAC;wBACN,oDAAoD;wBACpD,MAAM,KAAK,GAAG;4BACZ,GAAG,CAAC;4BACJ,OAAO,EAAE,IAAI;4BACb,IAAI,EAAE,IAAI;4BACV,KAAK,EAAE,IAAI;yBACZ,CAAA;wBACD,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE;4BACxD,IAAI,CAAC,gBAAgB,CAAC,KAAK,GAAG,KAAK,CAAA;wBACrC,CAAC,CAAC,CAAA;wBAEF,IAAI,CAAC,aAAa,CAChB,MAA8B,EAC9B,KAAK,EACL,IAAI,CAAC,KAAK,EACV,UAAU,CACX,CAAA;oBACH,CAAC;gBACH,CAAC;gBAED,IAAI,CAAC,iBAAiB,EAAE,GAAG,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;YACrD,CAAC,CAAA;YACD,IAAI,CAAC,QAAQ,GAAG;gBACd,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK;gBAC1B,UAAU,EAAE,KAAK,EAAE,GAAG,KAAe,EAAE,EAAE;oBACvC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC;wBAC9B,OAAO,IAAI,CAAC,SAAS,EAAE,CAAA;oBACzB,CAAC;gBACH,CAAC;gBACD,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;gBAClC,MAAM,EAAE,GAAG,EAAE;oBACX,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;oBACpC,OAAO,IAAI,CAAC,SAAS,EAAE,CAAA;gBACzB,CAAC;gBACD,SAAS,EAAE,CAAC,QAAQ,EAAE,EAAE;oBACtB,MAAM,OAAO,GAAG,KAAK,CACnB,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,gBAAgB,CAAC,EACzC,QAAQ,CACT,CAAA;oBACD,OAAO,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,CAAA;gBAC7B,CAAC;aACF,CAAA;QACH,CAAC;IACH,CAAC;IAEM,IAAI,CAAC,MAAwB;QAClC,MAAM,EACJ,KAAK,EACL,OAAO,EACP,GAAG,GAAG,QAAQ,EACd,OAAO,GAAG,GAAG,EACb,UAAU,EACV,SAAS,GACV,GAAG,MAAM,CAAA;QACV,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC,UAAU,CAAA;QACrC,MAAM,CAAC,aAAa,EAAE,iBAAiB,CAAC,GAAG;YACzC,mBAAmB,CAAC,GAAG,CAAC;YACxB,mBAAmB,CAAC,OAAO,CAAC;SAC7B,CAAA;QACD,IAAI,CAAC,OAAO,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QAE7C,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,EACJ,KAAK,EACL,OAAO,EACP,IAAI,EACJ,SAAS,EACT,WAAW,EACX,KAAK,EACL,MAAM,EACN,KAAK,EACL,SAAS,GACV,GAAG,SAAS,CAAA;YACb,IAAI,CAAC,KAAK,GAAG;gBACX,MAAM;gBACN,KAAK;gBACL,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,QAAQ;gBAClC,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI;gBAC1B,MAAM,EAAE,IAAI,CAAC,eAAe,CAAC,MAAM;aACpC,CAAA;YACD,IAAI,CAAC,WAAW,CAAC,KAAK,GAAG;gBACvB,SAAS,EAAE,IAAI,CAAC,OAAO;gBACvB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,KAAK;aACN,CAAA;YACD,IAAI,CAAC,gBAAgB,CAAC,KAAK,GAAG,SAAS,CAAA;YACvC,IAAI,CAAC,cAAc,CAAC,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;YAC7D,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;YAClB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;YACtB,IAAI,OAAO,EAAE,CAAC;gBACZ,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;oBAChB,IAAI,CAAC,uBAAwB,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;gBACnD,CAAC;YACH,CAAC;YACD,IAAI,OAAO,EAAE,CAAC;gBACZ,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAC5B,CAAC;YACD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,MAAM,CAAA;YAClC,IACE,MAAM;gBACN,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,SAAS,CAAC,OAAO,KAAK,IAAI,CAAC,IAAI,OAAO,CAAC,EACrE,CAAC;gBACD,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;oBACvB,IAAI,CAAC,aAAa,CAChB,IAAI,CAAC,MAA8B,EACnC,SAAS,EACT,IAAI,CAAC,KAAK,CACX,CAAA;gBACH,CAAC;qBAAM,CAAC;oBACN,QAAQ,CAAC,GAAG,EAAE;wBACZ,MAAM,KAAK,GAAG;4BACZ,GAAG,SAAS;4BACZ,IAAI,EAAE,SAAS,CAAC,KAAK;4BACrB,KAAK,EAAE,IAAI;4BACX,OAAO,EAAE,KAAK;yBACf,CAAA;wBACD,aAAa;wBACb,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,IAAI,CAAC,iBAAiB,CAAA;wBAC9D,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE;4BACxD,IAAI,CAAC,gBAAgB,CAAC,KAAK,GAAG,KAAK,CAAA;wBACrC,CAAC,CAAC,CAAA;oBACJ,CAAC,CAAC,CAAA;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,KAAK,GAAG,mBAAmB,CAC9B,KAAsB,EACtB,aAAa,EACb,iBAAiB,CAClB,CAAA;YAED,IAAI,CAAC,OAAO,GAAG,mBAAmB,CAChC,OAAwB,EACxB,aAAa,EACb,iBAAiB,CAClB,CAAA;YACD,IAAI,OAAO,EAAE,CAAC;gBACZ,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAC5B,CAAC;YACD,IAAI,CAAC,SAAS,EAAE,CAAA;QAClB,CAAC;QAED,MAAM,CAAC,OAAO,CAAC,iBAAiB,GAAG,QAAQ,CAAA;QAE3C,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,KAAgB,CAAA;QACpD,IACE,OAAO,YAAY,KAAK,QAAQ;YAChC,YAAY,KAAK,IAAI;YACrB,CAAC,CAAC,OAAO,IAAI,YAAY,CAAC;YAC1B,OAAO,YAAY,CAAC,KAAK,KAAK,QAAQ,EACtC,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAA;YACxC,IAAI,CAAC,YAAY,GAAG,MAAM,CAAA;YAC1B,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC;gBACjB,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;YAChE,CAAC;YAED,MAAM,CAAC,OAAO,CAAC,YAAY,CACzB,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,EACrD,EAAE,EACF,MAAM,CAAC,QAAQ,CAAC,IAAI,CACrB,CAAA;QACH,CAAC;aAAM,CAAC;YACN,MAAM,EAAE,KAAK,EAAE,GAAG,YAAY,CAAA;YAC9B,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;gBACd,IAAI,CAAC,YAAY,GAAG,KAAK,CAAA;gBACzB,MAAM,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;gBACzC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;oBACzB,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,CAAA;gBAC5B,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,CAAC,gBAAgB,CAAC,cAAc,EAAE,GAAG,EAAE;YAC3C,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAA;YACtE,MAAM,CAAC,OAAO,CAAC,iBAAiB,GAAG,MAAM,CAAA;QAC3C,CAAC,CAAC,CAAA;QAEF,MAAM,CAAC,gBAAgB,CAAC,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE;YACxC,CAAC,CAAC,cAAc,EAAE,CAAA;YAClB,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAA;YAEtE,IAAI,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;gBACzB,IAAI,CAAC,CAAC,KAAK,IAAI,IAAI,EAAE,CAAC;oBACpB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAA;oBACjC,MAAM,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;oBACjD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;wBACzB,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,CAAA;oBAC5B,CAAC;gBACH,CAAC;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC;IAEM,WAAW;QAChB,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAA;QACnC,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAA;QAEtB,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,EACvC,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAA;QAErC,OAAO,eAAe,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAA;IACxD,CAAC;IAEM,OAAO;QACZ,IAAI,CAAC,eAAe,EAAE,KAAK,EAAE,CAAA;QAC7B,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,CAAC,mBAAmB,EAAE,KAAK,EAAE,CAAA;YACjC,IAAI,CAAC,iBAAiB,EAAE,KAAK,EAAE,CAAA;QACjC,CAAC;QACD,eAAe,CAAC,OAAO,GAAG,IAAI,CAAA;QAC9B,kBAAkB,CAAC,OAAO,GAAG,IAAI,CAAA;IACnC,CAAC;IAEO,KAAK,CAAC,SAAS,CACrB,OAAe,MAAM,CAAC,QAAQ,CAAC,QAAQ,EACvC,QAAiC,EAAE,EACnC,gBAAgB,GAAG,IAAI,CAAC,iBAAiB,EACzC,WAAW,GAAG,KAAK;QAEnB,IAAI,CAAC,eAAe,EAAE,KAAK,EAAE,CAAA;QAC7B,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC,CAAC,MAAM,CAAA;QAEpE,IAAI,CAAC;YACH,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;YACpD,IAAI,UAAU,GAAG,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,YAAY,CAAC,CAAA;YAErD,IAAI,CAAC,UAAU,IAAI,WAAW,EAAE,CAAC;gBAC/B,+CAA+C;gBAC/C,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,CAAC,KAAK,EAAE,YAAY,CAAC,CAAA;gBACzD,IAAI,CAAC,SAAS,EAAE,CAAC;oBACf,IAAI,OAAO,EAAE,CAAC;wBACZ,OAAO,CAAC,KAAK,CACX,8CAA8C,IAAI;sEACM,CACzD,CAAA;oBACH,CAAC;oBACD,OAAM;gBACR,CAAC;gBACD,UAAU,GAAG,SAAS,CAAA;YACxB,CAAC;YAED,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,UAAU,CAAA;YAE9D,eAAe,CAAC,OAAO,GAAG,KAAK,CAAA;YAC/B,MAAM,WAAW,GAAG,SAAS,CAAC,IAAI,EAAE,CAAA;YAEpC,MAAM,cAAc,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC,GAAG,CAClE,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE,CACpC,CAAA;YAED,MAAM,CAAC,IAAI,EAAE,GAAG,OAAO,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAC3C,WAAW;gBACX,GAAG,cAAc;aAClB,CAAC,CAAA;YAEF,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;YAChD,eAAe,CAAC,OAAO,GAAG,IAAI,CAAA;YAC9B,IAAI,MAAM,CAAC,OAAO;gBAAE,OAAM;YAE1B,IAAI,OAAO,IAAI,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;gBACvC,MAAM,IAAI,KAAK,CACb,oEAAoE,CACrE,CAAA;YACH,CAAC;YAED,MAAM,WAAW,GAAgB;gBAC/B,QAAQ,EAAE,IAAI;gBACd,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI;gBAC1B,MAAM;gBACN,KAAK;gBACL,MAAM;aACP,CAAA;YAED,IAAI,MAAM,GAAG,IAAI,CAAC,MAAM,IAAK,EAAiB,CAAA;YAC9C,IAAI,OAAO,EAAE,CAAC;gBACZ,IAAI,IAAI,CAAC,iBAAiB,EAAE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;oBACvC,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAE,CAAA;gBAC7C,CAAC;YACH,CAAC;YAED,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAAA;YAEzB,IAAI,MAAM,EAAE,CAAC;gBACX,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,EAAE,CAAC;oBACxC,0CAA0C;oBAC1C,IAAI,UAAU,GAAG,IAAI,CAAA;oBACrB,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;wBAC7C,MAAM,QAAQ,GAAa;4BACzB,IAAI,EAAE,WAAW,CAAC,QAAQ;4BAC1B,MAAM,EAAE,WAAW,CAAC,MAAM;4BAC1B,KAAK,EAAE,WAAW,CAAC,KAAK;yBACzB,CAAA;wBACD,UAAU,GAAG,WAAW,CAAC,OAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,CAAA;oBAC/D,CAAC;oBAED,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;wBACxB,wDAAwD;wBACxD,KAAK,GAAG;4BACN,GAAG,KAAK;4BACR,IAAI,EAAE,UAAU,CAAC,KAAK;4BACtB,KAAK,EAAE,IAAI;4BACX,OAAO,EAAE,KAAK;yBAC0B,CAAA;oBAC5C,CAAC;yBAAM,CAAC;wBACN,oDAAoD;wBACpD,KAAK,GAAG;4BACN,GAAG,KAAK;4BACR,OAAO,EAAE,IAAI;4BACb,IAAI,EAAE,IAAI;4BACV,KAAK,EAAE,IAAI;yBAC6B,CAAA;wBAE1C,IAAI,CAAC,aAAa,CAChB,MAA8B,EAC9B,KAAK,EACL,WAAW,EACX,gBAAgB,CACjB,CAAA;oBACH,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,MAAM,WAAW,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC,IAAI,CAAC,CAAA;oBACtD,IAAI,CAAC,WAAW,EAAE,CAAC;wBACjB,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,gBAAgB,EAAE,IAAI,CAAC,CAAA;oBAC5D,CAAC;oBAED,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,WAAW,CAAA;oBACnC,KAAK,GAAG;wBACN,GAAG,KAAK;wBACR,IAAI,EAAE,IAAI;wBACV,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,uBAAuB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;wBACxD,OAAO,EAAE,KAAK;qBACmB,CAAA;gBACrC,CAAC;YACH,CAAC;YAED,OAAO,qBAAqB,CAAC,MAAM,EAAE,gBAAgB,EAAE,GAAG,EAAE;gBAC1D,IAAI,CAAC,KAAK,GAAG,WAAW,CAAA;gBACxB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAA;gBAC7C,IAAI,CAAC,WAAW,CAAC,KAAK,GAAG;oBACvB,SAAS,EAAE,IAAI,CAAC,OAAO;oBACvB,MAAM;oBACN,KAAK,EAAE,GAAG,GAAG,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC;iBACrC,CAAA;gBACD,IAAI,CAAC,gBAAgB,CAAC,KAAK,GAAG,KAAK,CAAA;gBACnC,IAAI,CAAC,cAAc,CAAC,KAAK,GAAG,OAAO;qBAChC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,OAAO,KAAK,UAAU,CAAC;qBAC9C,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;YAC1B,CAAC,CAAC,CAAA;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,gDAAgD,EAAE,KAAK,CAAC,CAAA;YACtE,IAAI,CAAC,WAAW,CAAC,KAAK,GAAG,IAAI,CAAA;QAC/B,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,aAAa,CACzB,MAA4B,EAC5B,KAA8B,EAC9B,WAAwB,EACxB,gBAAgB,GAAG,IAAI,CAAC,iBAAiB;QAEzC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAAA;QAEzB,uEAAuE;QACvE,MAAM;aACH,IAAI,CAAC,WAAW,CAAC;aACjB,IAAI,CACH,CAAC,IAAI,EAAE,EAAE;YACP,uCAAuC;YACvC,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;gBAC7C,MAAM,QAAQ,GAAa;oBACzB,IAAI,EAAE,WAAW,CAAC,QAAQ;oBAC1B,MAAM,EAAE,WAAW,CAAC,MAAM;oBAC1B,KAAK,EAAE,WAAW,CAAC,KAAK;iBACzB,CAAA;gBACD,WAAW,CAAC,OAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAA;YACxD,CAAC;YAED,OAAO;gBACL,IAAI;gBACJ,KAAK,EAAE,IAAI;gBACX,OAAO,EAAE,KAAK;aAC0B,CAAA;QAC5C,CAAC,EACD,CAAC,KAAK,EAAE,EAAE,CACR,CAAC;YACC,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,IAAI,uBAAuB,CAAC,KAAK,CAAC;YACzC,OAAO,EAAE,KAAK;SACf,CAA0C,CAC9C;aACA,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;YACd,IAAI,WAAW,CAAC,MAAM,CAAC,OAAO;gBAAE,OAAM;YAEtC,MAAM,UAAU,GACd,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,gBAAgB,CAAA;YAErE,qBAAqB,CAAC,WAAW,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE;gBACzD,IAAI,CAAC,gBAAgB,CAAC,KAAK,GAAG;oBAC5B,GAAG,KAAK;oBACR,GAAG,KAAK;iBACgC,CAAA;YAC5C,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACN,CAAC;IAEO,UAAU,CAAC,GAAG,KAAe;QACnC,2BAA2B;QAC3B,WAAW,CAAC,OAAQ,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,CAAA;QAEzC,sDAAsD;QACtD,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAA;QACvC,MAAM,aAAa,GAAG,WAAW,CAAC,OAAQ,CAAC,kBAAkB,CAC3D,WAAW,EACX,KAAK,CACN,CAAA;QAED,OAAO,aAAa,CAAA;IACtB,CAAC;IAEO,KAAK,CAAC,QAAQ,CACpB,IAAY,EACZ,OAGC;QAED,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAA;QAC7C,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAA;QAClD,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;QACzD,IAAI,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACnD,OAAM;QACR,CAAC;QAED,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QAEtC,IAAI,CAAC,SAAS,CACZ,KAAK,CAAC,EACN,KAAK,CAAC,EACN,OAAO,EAAE,UAAU,IAAI,IAAI,CAAC,iBAAiB,CAC9C,CAAC,IAAI,CAAC,GAAG,EAAE;YACV,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBAC1B,MAAM,CAAC,aAAa,CAAC,IAAI,eAAe,CAAC,YAAY,CAAC,CAAC,CAAA;YACzD,CAAC;YAED,IAAI,QAAQ,CAAA;YACZ,IAAI,QAAQ,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACxE,QAAQ,CAAC,cAAc,EAAE,CAAA;YAC3B,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;YACvB,CAAC;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAAC,IAAY;QAC7C,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAA;QAC7C,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,UAAU,CAC3B,IAAI,CAAC,KAAK,EACV,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CACxC,CAAA;YACD,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,MAAM,IAAI,KAAK,CAAC,2BAA2B,IAAI,IAAI,CAAC,CAAA;YACtD,CAAC;YACD,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,UAAU,CAAA;YACvC,eAAe,CAAC,OAAO,GAAG,KAAK,CAAA;YAC/B,MAAM,WAAW,GAAG,SAAS,CAAC,IAAI,EAAE,CAAA;YACpC,MAAM,cAAc,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CACrE,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE,CACpC,CAAA;YACD,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,GAAG,cAAc,CAAC,CAAC,CAAA;YACnD,eAAe,CAAC,OAAO,GAAG,IAAI,CAAA;QAChC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,0CAA0C,EAAE,KAAK,CAAC,CAAA;QAClE,CAAC;IACH,CAAC;IAEO,QAAQ,CAAC,KAAiB,EAAE,OAA+B;QACjE,MAAM,WAAW,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAA;QAC3C,MAAM,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,GACnC,WAAW,CAAC,CAAC,CAAC,IAAI,WAAW,EAAE,CAAC,CAAC,CAAC,EACpC,EAAE,CAAA;QACF,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QACxC,IAAI,CAAC,KAAK,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,CAAA;QACrC,OAAO,IAAI,CAAC,SAAS,EAAE,CAAA;IACzB,CAAC;IAEO,KAAK,CAAC,OAAO,CAAC,IAAY,EAAE,OAA+B;QACjE,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YACjB,IAAI,GAAG,EAAE,CAAA;QACX,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAChD,IAAI,GAAG,IAAI,IAAI,EAAE,CAAA;QACnB,CAAC;QACD,IAAI,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YAC7B,OAAM;QACR,CAAC;QACD,IAAI,CAAC,kBAAkB,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,EAAE,EAAE,OAAO,CAAC,CAAA;QACjE,IAAI,CAAC,KAAK,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,CAAA;QACpC,OAAO,IAAI,CAAC,SAAS,EAAE,CAAA;IACzB,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAC9B,IAAY,EACZ,OAA+B;QAE/B,IAAI,OAAO,EAAE,OAAO,EAAE,CAAC;YACrB,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAA;YACtE,MAAM,CAAC,OAAO,CAAC,YAAY,CACzB,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,EACrD,EAAE,EACF,IAAI,CACL,CAAA;QACH,CAAC;aAAM,CAAC;YACN,2DAA2D;YAC3D,iEAAiE;YACjE,+DAA+D;YAC/D,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE,CAAA;YACjC,IAAI,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAClD,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,CAAA;YACpC,CAAC;YACD,WAAW,CAAC,IAAI,CAAC,CAAC,GAAG,OAAO,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;YAChE,MAAM,CAAC,OAAO,CAAC,SAAS,CACtB,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,IAAI,CAAC,YAAY,EAAE,EACvD,EAAE,EACF,IAAI,CACL,CAAA;QACH,CAAC;IACH,CAAC;IACO,kBAAkB;QACxB,MAAM,MAAM,GAAG,IAAI,CAAA;QACnB,OAAO;YACL,IAAI,OAAO;gBACT,OAAO,MAAM,CAAC,OAAO,CAAA;YACvB,CAAC;YACD,UAAU,EAAE,KAAK,EAAE,GAAG,KAAe,EAAE,EAAE;gBACvC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC;oBAC9B,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,IAAI,CAAC,CAAA;gBAC7C,CAAC;YACH,CAAC;YACD,IAAI,KAAK;gBACP,OAAO,EAAE,GAAG,MAAM,CAAC,KAAK,EAAE,CAAA;YAC5B,CAAC;YACD,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;YAClC,oBAAoB,EAAE,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC;YAC1D,MAAM,EAAE,KAAK,EAAE,OAAuB,EAAE,EAAE;gBACxC,IAAI,OAAO,EAAE,UAAU,IAAI,IAAI,EAAE,CAAC;oBAChC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;gBACtC,CAAC;gBACD,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,CAAA;YAC5D,CAAC;YACD,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;YAClC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;SACjC,CAAA;IACH,CAAC;CACF;AAED,SAAS,gBAAgB,CACvB,KAAoD;IAEpD,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAA;IAEpC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACjD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBACzB,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAA;YAC7C,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;YACxB,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAA;AAC1B,CAAC;AAED,KAAK,UAAU,qBAAqB,CAClC,MAAmB,EACnB,gBAAyB,EACzB,QAAoB;IAEpB,IAAI,CAAC,gBAAgB,IAAI,OAAO,QAAQ,CAAC,mBAAmB,KAAK,UAAU,EAAE,CAAC;QAC5E,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;YACnC,QAAQ,EAAE,CAAA;YACV,QAAQ,CAAC,OAAO,CAAC,CAAA;QACnB,CAAC,CAAC,CAAA;IACJ,CAAC;IACD,MAAM,EAAE,GAAG,QAAQ,CAAC,mBAAmB,CAAC,GAAG,EAAE;QAC3C,QAAQ,EAAE,CAAA;QACV,SAAS,EAAE,CAAA;IACb,CAAC,CAAC,CAAA;IAEF,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC,CAAA;IAC3D,MAAM,EAAE,CAAC,KAAK,CAAA;AAChB,CAAC;AAED,SAAS,cAAc,CAAC,OAA+B;IAErD,MAAM,cAAc,GAAqB,EAAE,CAAA;IAC3C,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACvC,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC3C,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;YACxB,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;YAExB,IAAI,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;gBACnC,cAAc,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;YACzD,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,IAAI,OAAO,GAAG,4CAA4C,CAAA;QAC1D,OAAO,IAAI,cAAc;aACtB,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE;YACxB,OAAO,QAAQ,MAAM,CAAC,QAAQ,qBAAqB,MAAM,CAAC,QAAQ,KAAK,CAAA;QACzE,CAAC,CAAC;aACD,IAAI,CAAC,EAAE,CAAC,CAAA;QACX,OAAO,IAAI,6DAA6D,CAAA;QACxE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACvB,CAAC;AACH,CAAC;AAED,SAAS,cAAc,CAAC,MAAc,EAAE,MAAc;IACpD,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IACnD,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IAEnD,yCAAyC;IACzC,MAAM,aAAa,GAAG,SAAS,CAAC,MAAM,CACpC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CACpD,CAAA;IACD,MAAM,aAAa,GAAG,SAAS,CAAC,MAAM,CACpC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CACpD,CAAA;IAED,uDAAuD;IACvD,IAAI,aAAa,CAAC,MAAM,KAAK,aAAa,CAAC,MAAM,EAAE,CAAC;QAClD,OAAO,KAAK,CAAA;IACd,CAAC;IAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC9C,MAAM,IAAI,GAAG,aAAa,CAAC,CAAC,CAAC,CAAA;QAC7B,MAAM,IAAI,GAAG,aAAa,CAAC,CAAC,CAAC,CAAA;QAE7B,uDAAuD;QACvD,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACnD,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;gBAClB,OAAO,KAAK,CAAA;YACd,CAAC;QACH,CAAC;QACD,qDAAqD;aAChD,IACH,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;YAC/C,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAC/C,CAAC;YACD,OAAO,KAAK,CAAA;QACd,CAAC;QACD,qCAAqC;aAChC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACtD,mDAAmD;YACnD,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;YACtC,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;YACtC,IAAI,WAAW,KAAK,WAAW,EAAE,CAAC;gBAChC,OAAO,KAAK,CAAA;YACd,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC"}