kiru 0.50.5 → 0.50.7

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 (59) hide show
  1. package/dist/components/suspense.d.ts +2 -12
  2. package/dist/components/suspense.d.ts.map +1 -1
  3. package/dist/components/suspense.js +4 -78
  4. package/dist/components/suspense.js.map +1 -1
  5. package/dist/dom.d.ts.map +1 -1
  6. package/dist/dom.js +22 -3
  7. package/dist/dom.js.map +1 -1
  8. package/dist/hooks/index.d.ts +1 -0
  9. package/dist/hooks/index.d.ts.map +1 -1
  10. package/dist/hooks/index.js +1 -0
  11. package/dist/hooks/index.js.map +1 -1
  12. package/dist/hooks/usePromise.d.ts +13 -0
  13. package/dist/hooks/usePromise.d.ts.map +1 -0
  14. package/dist/hooks/usePromise.js +79 -0
  15. package/dist/hooks/usePromise.js.map +1 -0
  16. package/dist/recursiveRender.d.ts.map +1 -1
  17. package/dist/recursiveRender.js +12 -3
  18. package/dist/recursiveRender.js.map +1 -1
  19. package/dist/router/context.d.ts +4 -0
  20. package/dist/router/context.d.ts.map +1 -1
  21. package/dist/router/context.js.map +1 -1
  22. package/dist/router/fileRouter.js +1 -1
  23. package/dist/router/fileRouter.js.map +1 -1
  24. package/dist/router/fileRouterController.d.ts +3 -4
  25. package/dist/router/fileRouterController.d.ts.map +1 -1
  26. package/dist/router/fileRouterController.js +33 -159
  27. package/dist/router/fileRouterController.js.map +1 -1
  28. package/dist/router/link.d.ts +9 -0
  29. package/dist/router/link.d.ts.map +1 -1
  30. package/dist/router/link.js +21 -3
  31. package/dist/router/link.js.map +1 -1
  32. package/dist/router/types.internal.d.ts +14 -0
  33. package/dist/router/types.internal.d.ts.map +1 -1
  34. package/dist/router/utils/index.d.ts +15 -0
  35. package/dist/router/utils/index.d.ts.map +1 -0
  36. package/dist/router/utils/index.js +148 -0
  37. package/dist/router/utils/index.js.map +1 -0
  38. package/dist/utils/dom.d.ts +2 -0
  39. package/dist/utils/dom.d.ts.map +1 -0
  40. package/dist/utils/dom.js +9 -0
  41. package/dist/utils/dom.js.map +1 -0
  42. package/dist/utils/index.d.ts +1 -0
  43. package/dist/utils/index.d.ts.map +1 -1
  44. package/dist/utils/index.js +1 -0
  45. package/dist/utils/index.js.map +1 -1
  46. package/package.json +1 -1
  47. package/src/components/suspense.ts +6 -125
  48. package/src/dom.ts +26 -2
  49. package/src/hooks/index.ts +1 -0
  50. package/src/hooks/usePromise.ts +121 -0
  51. package/src/recursiveRender.ts +14 -2
  52. package/src/router/context.ts +8 -0
  53. package/src/router/fileRouter.ts +1 -1
  54. package/src/router/fileRouterController.ts +47 -216
  55. package/src/router/link.ts +39 -2
  56. package/src/router/types.internal.ts +16 -0
  57. package/src/router/utils/index.ts +206 -0
  58. package/src/utils/dom.ts +10 -0
  59. package/src/utils/index.ts +1 -0
@@ -1,7 +1,6 @@
1
1
  import { $SUSPENSE_THROW } from "../constants.js";
2
- import { Signal } from "../signals/base.js";
3
- export type { SuspenseProps, UsePromiseCallbackContext, UsePromiseState };
4
- export { Suspense, isSuspenseThrowValue, usePromise };
2
+ export { Suspense, isSuspenseThrowValue };
3
+ export type { SuspenseProps };
5
4
  type StatefulPromiseValues<T extends readonly Kiru.StatefulPromise<unknown>[]> = {
6
5
  [I in keyof T]: T[I] extends Kiru.StatefulPromise<infer V> ? V : never;
7
6
  };
@@ -22,13 +21,4 @@ interface SuspenseThrowValue {
22
21
  * Returns true if the value was thrown by a Suspense component.
23
22
  */
24
23
  declare function isSuspenseThrowValue(value: unknown): value is SuspenseThrowValue;
25
- interface UsePromiseCallbackContext {
26
- signal: AbortSignal;
27
- }
28
- interface UsePromiseState<T> {
29
- data: Kiru.StatefulPromise<T>;
30
- refresh: () => void;
31
- pending: Signal<boolean>;
32
- }
33
- declare function usePromise<T>(callback: (ctx: UsePromiseCallbackContext) => Promise<T>, deps: unknown[]): UsePromiseState<T>;
34
24
  //# sourceMappingURL=suspense.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"suspense.d.ts","sourceRoot":"","sources":["../../src/components/suspense.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,eAAe,EAAyB,MAAM,iBAAiB,CAAA;AACxE,OAAO,EAAE,MAAM,EAAa,MAAM,oBAAoB,CAAA;AAEtD,YAAY,EAAE,aAAa,EAAE,yBAAyB,EAAE,eAAe,EAAE,CAAA;AACzE,OAAO,EAAE,QAAQ,EAAE,oBAAoB,EAAE,UAAU,EAAE,CAAA;AAErD,KAAK,qBAAqB,CAAC,CAAC,SAAS,SAAS,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,IAC3E;KACG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK;CACvE,CAAA;AAEH,KAAK,oBAAoB,CACvB,CAAC,SAAS,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,IAC/D,CAAC,SAAS,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,GACrC,qBAAqB,CAAC,CAAC,CAAC,GACxB,CAAC,CAAC,SAAS,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,CAAA;AAEzD,UAAU,aAAa,CACrB,CAAC,SAAS,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE;IAEjE,IAAI,EAAE,CAAC,CAAA;IACP,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,oBAAoB,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,OAAO,CAAA;IAC3D,QAAQ,CAAC,EAAE,GAAG,CAAC,OAAO,CAAA;CACvB;AAED,iBAAS,QAAQ,CACf,KAAK,CAAC,CAAC,SACH,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,GAC7B,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,EACnC,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,aAAa,CAAC,CAAC,CAAC,eA0B/C;AAED,UAAU,kBAAkB;IAC1B,CAAC,eAAe,CAAC,EAAE;QACjB,QAAQ,CAAC,EAAE,GAAG,CAAC,OAAO,CAAA;QACtB,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,CAAA;KACzC,CAAA;CACF;AAED;;GAEG;AACH,iBAAS,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,kBAAkB,CAEzE;AA6CD,UAAU,yBAAyB;IACjC,MAAM,EAAE,WAAW,CAAA;CACpB;AAED,UAAU,eAAe,CAAC,CAAC;IACzB,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAA;IAC7B,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAA;CACzB;AAED,iBAAS,UAAU,CAAC,CAAC,EACnB,QAAQ,EAAE,CAAC,GAAG,EAAE,yBAAyB,KAAK,OAAO,CAAC,CAAC,CAAC,EACxD,IAAI,EAAE,OAAO,EAAE,GACd,eAAe,CAAC,CAAC,CAAC,CAqDpB"}
1
+ {"version":3,"file":"suspense.d.ts","sourceRoot":"","sources":["../../src/components/suspense.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAKjD,OAAO,EAAE,QAAQ,EAAE,oBAAoB,EAAE,CAAA;AACzC,YAAY,EAAE,aAAa,EAAE,CAAA;AAE7B,KAAK,qBAAqB,CAAC,CAAC,SAAS,SAAS,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,IAC3E;KACG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK;CACvE,CAAA;AAEH,KAAK,oBAAoB,CACvB,CAAC,SAAS,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,IAC/D,CAAC,SAAS,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,GACrC,qBAAqB,CAAC,CAAC,CAAC,GACxB,CAAC,CAAC,SAAS,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,CAAA;AAEzD,UAAU,aAAa,CACrB,CAAC,SAAS,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE;IAEjE,IAAI,EAAE,CAAC,CAAA;IACP,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,oBAAoB,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,OAAO,CAAA;IAC3D,QAAQ,CAAC,EAAE,GAAG,CAAC,OAAO,CAAA;CACvB;AAED,iBAAS,QAAQ,CACf,KAAK,CAAC,CAAC,SACH,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,GAC7B,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,EACnC,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,aAAa,CAAC,CAAC,CAAC,eA0B/C;AAED,UAAU,kBAAkB;IAC1B,CAAC,eAAe,CAAC,EAAE;QACjB,QAAQ,CAAC,EAAE,GAAG,CAAC,OAAO,CAAA;QACtB,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,CAAA;KACzC,CAAA;CACF;AAED;;GAEG;AACH,iBAAS,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,kBAAkB,CAEzE"}
@@ -1,10 +1,7 @@
1
+ import { $SUSPENSE_THROW } from "../constants.js";
2
+ import { renderMode, node } from "../globals.js";
1
3
  import { requestUpdate } from "../scheduler.js";
2
- import { renderMode } from "../globals.js";
3
- import { cleanupHook, depsRequireChange, useHook, useId, } from "../hooks/index.js";
4
- import { getCurrentVNode } from "../utils/index.js";
5
- import { $SUSPENSE_THROW, PREFETCHED_DATA_EVENT } from "../constants.js";
6
- import { useSignal } from "../signals/base.js";
7
- export { Suspense, isSuspenseThrowValue, usePromise };
4
+ export { Suspense, isSuspenseThrowValue };
8
5
  function Suspense({ data, children, fallback }) {
9
6
  const promiseArray = Array.isArray(data)
10
7
  ? data
@@ -21,7 +18,7 @@ function Suspense({ data, children, fallback }) {
21
18
  if (p.state === "rejected")
22
19
  throw p.error;
23
20
  if (p.state === "pending") {
24
- const n = getCurrentVNode();
21
+ const n = node.current;
25
22
  Promise.allSettled(promiseArray).then(() => requestUpdate(n));
26
23
  return fallback;
27
24
  }
@@ -36,75 +33,4 @@ function Suspense({ data, children, fallback }) {
36
33
  function isSuspenseThrowValue(value) {
37
34
  return typeof value === "object" && !!value && $SUSPENSE_THROW in value;
38
35
  }
39
- function resolveHydrationPromise(id, signal) {
40
- return new Promise((resolve, reject) => {
41
- const prefetchCache = // @ts-ignore
42
- (window[PREFETCHED_DATA_EVENT] ?? (window[PREFETCHED_DATA_EVENT] = new Map()));
43
- const existing = prefetchCache.get(id);
44
- if (existing) {
45
- const { data, error } = existing;
46
- prefetchCache.delete(id);
47
- if (error)
48
- return reject(error);
49
- return resolve(data);
50
- }
51
- const onDataEvent = (event) => {
52
- const { detail } = event;
53
- if (detail.id === id) {
54
- prefetchCache.delete(id);
55
- window.removeEventListener(PREFETCHED_DATA_EVENT, onDataEvent);
56
- const { data, error } = detail;
57
- if (error)
58
- return reject(error);
59
- resolve(data);
60
- }
61
- };
62
- window.addEventListener(PREFETCHED_DATA_EVENT, onDataEvent);
63
- signal.addEventListener("abort", () => {
64
- window.removeEventListener(PREFETCHED_DATA_EVENT, onDataEvent);
65
- reject();
66
- });
67
- });
68
- }
69
- const nodeToPromiseIndex = new WeakMap();
70
- function usePromise(callback, deps) {
71
- const id = useId();
72
- const pending = useSignal(true);
73
- return useHook("usePromise", {}, ({ hook, isInit, vNode }) => {
74
- if (isInit || depsRequireChange(deps, hook.deps)) {
75
- pending.value = true;
76
- hook.deps = deps;
77
- cleanupHook(hook);
78
- const controller = (hook.abortController = new AbortController());
79
- hook.cleanup = () => controller.abort();
80
- const index = nodeToPromiseIndex.get(vNode) ?? 0;
81
- nodeToPromiseIndex.set(vNode, index + 1);
82
- const promiseId = `${id}:data:${index}`;
83
- const state = { id: promiseId, state: "pending" };
84
- const promise = renderMode.current === "hydrate"
85
- ? resolveHydrationPromise(promiseId, controller.signal)
86
- : callback({ signal: controller.signal });
87
- const p = (hook.promise = Object.assign(promise, state));
88
- p.then((value) => {
89
- p.state = "fulfilled";
90
- p.value = value;
91
- })
92
- .catch((error) => {
93
- p.state = "rejected";
94
- p.error = error instanceof Error ? error : new Error(error);
95
- })
96
- .finally(() => {
97
- pending.value = false;
98
- });
99
- }
100
- return {
101
- data: hook.promise,
102
- refresh: () => {
103
- hook.deps = undefined;
104
- requestUpdate(vNode);
105
- },
106
- pending,
107
- };
108
- });
109
- }
110
36
  //# sourceMappingURL=suspense.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"suspense.js","sourceRoot":"","sources":["../../src/components/suspense.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"suspense.js","sourceRoot":"","sources":["../../src/components/suspense.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAEjD,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,eAAe,CAAA;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAE/C,OAAO,EAAE,QAAQ,EAAE,oBAAoB,EAAE,CAAA;AAsBzC,SAAS,QAAQ,CAIf,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAoB;IAC9C,MAAM,YAAY,GAAoC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QACvE,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;IAEV,QAAQ,UAAU,CAAC,OAAO,EAAE,CAAC;QAC3B,KAAK,QAAQ,CAAC;QACd,KAAK,QAAQ;YACX,MAAM;gBACJ,CAAC,eAAe,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE;aAC1B,CAAA;QAEhC,KAAK,KAAK,CAAC;QACX,KAAK,SAAS;YACZ,KAAK,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC;gBAC7B,IAAI,CAAC,CAAC,KAAK,KAAK,UAAU;oBAAE,MAAM,CAAC,CAAC,KAAK,CAAA;gBACzC,IAAI,CAAC,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;oBAC1B,MAAM,CAAC,GAAG,IAAI,CAAC,OAAQ,CAAA;oBACvB,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAA;oBAC7D,OAAO,QAAQ,CAAA;gBACjB,CAAC;YACH,CAAC;YACD,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAA4B,CAAA;YAE1E,OAAO,QAAQ,CAAC,GAAG,MAAM,CAAC,CAAA;IAC9B,CAAC;AACH,CAAC;AASD;;GAEG;AACH,SAAS,oBAAoB,CAAC,KAAc;IAC1C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,CAAC,KAAK,IAAI,eAAe,IAAI,KAAK,CAAA;AACzE,CAAC"}
package/dist/dom.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"dom.d.ts","sourceRoot":"","sources":["../src/dom.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EACV,QAAQ,EAGR,OAAO,EAER,MAAM,eAAe,CAAA;AAGtB,OAAO,EACL,UAAU,EACV,uBAAuB,EACvB,sBAAsB,EACtB,cAAc,EACd,SAAS,EACT,UAAU,GACX,CAAA;AAED,KAAK,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;AAevB,iBAAS,uBAAuB,SAM/B;AAED,iBAAS,sBAAsB,SAS9B;AAiBD,iBAAS,SAAS,CAAC,KAAK,EAAE,QAAQ,GAAG,OAAO,CAU3C;AAiPD,iBAAS,UAAU,CAAC,KAAK,EAAE,KAAK,QAwC/B;AAwND,iBAAS,UAAU,CAAC,KAAK,EAAE,KAAK,QAa/B;AAsDD,iBAAS,cAAc,CAAC,KAAK,EAAE,KAAK,QAsCnC"}
1
+ {"version":3,"file":"dom.d.ts","sourceRoot":"","sources":["../src/dom.ts"],"names":[],"mappings":"AAwBA,OAAO,KAAK,EACV,QAAQ,EAGR,OAAO,EAER,MAAM,eAAe,CAAA;AAGtB,OAAO,EACL,UAAU,EACV,uBAAuB,EACvB,sBAAsB,EACtB,cAAc,EACd,SAAS,EACT,UAAU,GACX,CAAA;AAED,KAAK,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;AAevB,iBAAS,uBAAuB,SAM/B;AAED,iBAAS,sBAAsB,SAS9B;AAiBD,iBAAS,SAAS,CAAC,KAAK,EAAE,QAAQ,GAAG,OAAO,CAU3C;AAsQD,iBAAS,UAAU,CAAC,KAAK,EAAE,KAAK,QA0C/B;AAwND,iBAAS,UAAU,CAAC,KAAK,EAAE,KAAK,QAa/B;AAsDD,iBAAS,cAAc,CAAC,KAAK,EAAE,KAAK,QAsCnC"}
package/dist/dom.js CHANGED
@@ -1,4 +1,4 @@
1
- import { traverseApply, commitSnapshot, propFilters, propToHtmlAttr, getVNodeAppContext, } from "./utils/index.js";
1
+ import { traverseApply, commitSnapshot, propFilters, propToHtmlAttr, getVNodeAppContext, isPrimitiveChild, } from "./utils/index.js";
2
2
  import { booleanAttributes, FLAG_PLACEMENT, FLAG_UPDATE, FLAG_STATIC_DOM, svgTags, FLAG_NOOP, EVENT_PREFIX_REGEX, } from "./constants.js";
3
3
  import { Signal } from "./signals/base.js";
4
4
  import { unwrap } from "./signals/utils.js";
@@ -243,13 +243,32 @@ function subTextNode(vNode, textNode, signal) {
243
243
  }
244
244
  });
245
245
  }
246
+ function tryHydrateNullableSignalChild(vNode) {
247
+ if (vNode.type !== "#text" || !Signal.isSignal(vNode.props.nodeValue)) {
248
+ return;
249
+ }
250
+ const value = unwrap(vNode.props.nodeValue);
251
+ if (!isPrimitiveChild(value)) {
252
+ if (__DEV__) {
253
+ console.error(`[kiru]: Hydration mismatch - expected primitive child but received ${value}`);
254
+ }
255
+ return;
256
+ }
257
+ const dom = createTextNode(vNode);
258
+ const parent = hydrationStack.parent();
259
+ if (parent) {
260
+ parent.appendChild(dom);
261
+ }
262
+ return dom;
263
+ }
246
264
  function hydrateDom(vNode) {
247
- const dom = hydrationStack.nextChild();
248
- if (!dom)
265
+ const dom = hydrationStack.nextChild() ?? tryHydrateNullableSignalChild(vNode);
266
+ if (!dom) {
249
267
  throw new KiruError({
250
268
  message: `Hydration mismatch - no node found`,
251
269
  vNode,
252
270
  });
271
+ }
253
272
  let nodeName = dom.nodeName;
254
273
  if (!svgTags.has(nodeName)) {
255
274
  nodeName = nodeName.toLowerCase();
package/dist/dom.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"dom.js","sourceRoot":"","sources":["../src/dom.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dom.js","sourceRoot":"","sources":["../src/dom.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@ export * from "./useEffectEvent.js";
6
6
  export * from "./useId.js";
7
7
  export * from "./useLayoutEffect.js";
8
8
  export * from "./useMemo.js";
9
+ export * from "./usePromise.js";
9
10
  export * from "./useReducer.js";
10
11
  export * from "./useRef.js";
11
12
  export * from "./useState.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,kBAAkB,CAAA;AAChC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,qBAAqB,CAAA;AACnC,cAAc,YAAY,CAAA;AAC1B,cAAc,sBAAsB,CAAA;AACpC,cAAc,cAAc,CAAA;AAC5B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,2BAA2B,CAAA;AACzC,cAAc,wBAAwB,CAAA;AACtC,cAAc,YAAY,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,kBAAkB,CAAA;AAChC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,qBAAqB,CAAA;AACnC,cAAc,YAAY,CAAA;AAC1B,cAAc,sBAAsB,CAAA;AACpC,cAAc,cAAc,CAAA;AAC5B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,2BAA2B,CAAA;AACzC,cAAc,wBAAwB,CAAA;AACtC,cAAc,YAAY,CAAA"}
@@ -6,6 +6,7 @@ export * from "./useEffectEvent.js";
6
6
  export * from "./useId.js";
7
7
  export * from "./useLayoutEffect.js";
8
8
  export * from "./useMemo.js";
9
+ export * from "./usePromise.js";
9
10
  export * from "./useReducer.js";
10
11
  export * from "./useRef.js";
11
12
  export * from "./useState.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,kBAAkB,CAAA;AAChC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,qBAAqB,CAAA;AACnC,cAAc,YAAY,CAAA;AAC1B,cAAc,sBAAsB,CAAA;AACpC,cAAc,cAAc,CAAA;AAC5B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,2BAA2B,CAAA;AACzC,cAAc,wBAAwB,CAAA;AACtC,cAAc,YAAY,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,kBAAkB,CAAA;AAChC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,qBAAqB,CAAA;AACnC,cAAc,YAAY,CAAA;AAC1B,cAAc,sBAAsB,CAAA;AACpC,cAAc,cAAc,CAAA;AAC5B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,2BAA2B,CAAA;AACzC,cAAc,wBAAwB,CAAA;AACtC,cAAc,YAAY,CAAA"}
@@ -0,0 +1,13 @@
1
+ import { Signal } from "../signals/base.js";
2
+ export { usePromise };
3
+ export type { UsePromiseCallbackContext, UsePromiseState };
4
+ interface UsePromiseCallbackContext {
5
+ signal: AbortSignal;
6
+ }
7
+ interface UsePromiseState<T> {
8
+ data: Kiru.StatefulPromise<T>;
9
+ refresh: () => void;
10
+ pending: Signal<boolean>;
11
+ }
12
+ declare function usePromise<T>(callback: (ctx: UsePromiseCallbackContext) => Promise<T>, deps: unknown[]): UsePromiseState<T>;
13
+ //# sourceMappingURL=usePromise.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usePromise.d.ts","sourceRoot":"","sources":["../../src/hooks/usePromise.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAa,MAAM,oBAAoB,CAAA;AAItD,OAAO,EAAE,UAAU,EAAE,CAAA;AACrB,YAAY,EAAE,yBAAyB,EAAE,eAAe,EAAE,CAAA;AAI1D,UAAU,yBAAyB;IACjC,MAAM,EAAE,WAAW,CAAA;CACpB;AAED,UAAU,eAAe,CAAC,CAAC;IACzB,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAA;IAC7B,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAA;CACzB;AAED,iBAAS,UAAU,CAAC,CAAC,EACnB,QAAQ,EAAE,CAAC,GAAG,EAAE,yBAAyB,KAAK,OAAO,CAAC,CAAC,CAAC,EACxD,IAAI,EAAE,OAAO,EAAE,GACd,eAAe,CAAC,CAAC,CAAC,CAqDpB"}
@@ -0,0 +1,79 @@
1
+ import { PREFETCHED_DATA_EVENT } from "../constants.js";
2
+ import { renderMode } from "../globals.js";
3
+ import { requestUpdate } from "../scheduler.js";
4
+ import { useSignal } from "../signals/base.js";
5
+ import { cleanupHook, depsRequireChange, useHook } from "./utils.js";
6
+ import { useId } from "./useId.js";
7
+ export { usePromise };
8
+ const nodeToPromiseIndex = new WeakMap();
9
+ function usePromise(callback, deps) {
10
+ const id = useId();
11
+ const pending = useSignal(true);
12
+ return useHook("usePromise", {}, ({ hook, isInit, vNode }) => {
13
+ if (isInit || depsRequireChange(deps, hook.deps)) {
14
+ pending.value = true;
15
+ hook.deps = deps;
16
+ cleanupHook(hook);
17
+ const controller = (hook.abortController = new AbortController());
18
+ hook.cleanup = () => controller.abort();
19
+ const index = nodeToPromiseIndex.get(vNode) ?? 0;
20
+ nodeToPromiseIndex.set(vNode, index + 1);
21
+ const promiseId = `${id}:data:${index}`;
22
+ const state = { id: promiseId, state: "pending" };
23
+ const promise = renderMode.current === "hydrate"
24
+ ? resolvePrefetchedPromise(promiseId, controller.signal)
25
+ : callback({ signal: controller.signal });
26
+ const p = (hook.promise = Object.assign(promise, state));
27
+ p.then((value) => {
28
+ p.state = "fulfilled";
29
+ p.value = value;
30
+ })
31
+ .catch((error) => {
32
+ p.state = "rejected";
33
+ p.error = error instanceof Error ? error : new Error(error);
34
+ })
35
+ .finally(() => {
36
+ pending.value = false;
37
+ });
38
+ }
39
+ return {
40
+ data: hook.promise,
41
+ refresh: () => {
42
+ hook.deps = undefined;
43
+ requestUpdate(vNode);
44
+ },
45
+ pending,
46
+ };
47
+ });
48
+ }
49
+ function resolvePrefetchedPromise(id, signal) {
50
+ return new Promise((resolve, reject) => {
51
+ const prefetchCache = // @ts-ignore
52
+ (window[PREFETCHED_DATA_EVENT] ?? (window[PREFETCHED_DATA_EVENT] = new Map()));
53
+ const existing = prefetchCache.get(id);
54
+ if (existing) {
55
+ const { data, error } = existing;
56
+ prefetchCache.delete(id);
57
+ if (error)
58
+ return reject(error);
59
+ return resolve(data);
60
+ }
61
+ const onDataEvent = (event) => {
62
+ const { detail } = event;
63
+ if (detail.id === id) {
64
+ prefetchCache.delete(id);
65
+ window.removeEventListener(PREFETCHED_DATA_EVENT, onDataEvent);
66
+ const { data, error } = detail;
67
+ if (error)
68
+ return reject(error);
69
+ resolve(data);
70
+ }
71
+ };
72
+ window.addEventListener(PREFETCHED_DATA_EVENT, onDataEvent);
73
+ signal.addEventListener("abort", () => {
74
+ window.removeEventListener(PREFETCHED_DATA_EVENT, onDataEvent);
75
+ reject();
76
+ });
77
+ });
78
+ }
79
+ //# sourceMappingURL=usePromise.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usePromise.js","sourceRoot":"","sources":["../../src/hooks/usePromise.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"recursiveRender.d.ts","sourceRoot":"","sources":["../src/recursiveRender.ts"],"names":[],"mappings":"AAcA,MAAM,WAAW,sBAAsB;IACrC,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,KAAK,IAAI,CAAA;CAC5D;AAED,wBAAgB,eAAe,CAC7B,GAAG,EAAE,sBAAsB,EAC3B,EAAE,EAAE,OAAO,EACX,MAAM,EAAE,IAAI,CAAC,KAAK,GAAG,IAAI,EACzB,GAAG,EAAE,MAAM,GACV,IAAI,CAsGN"}
1
+ {"version":3,"file":"recursiveRender.d.ts","sourceRoot":"","sources":["../src/recursiveRender.ts"],"names":[],"mappings":"AAeA,MAAM,WAAW,sBAAsB;IACrC,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,KAAK,IAAI,CAAA;CAC5D;AAED,wBAAgB,eAAe,CAC7B,GAAG,EAAE,sBAAsB,EAC3B,EAAE,EAAE,OAAO,EACX,MAAM,EAAE,IAAI,CAAC,KAAK,GAAG,IAAI,EACzB,GAAG,EAAE,MAAM,GACV,IAAI,CAiHN"}
@@ -1,5 +1,5 @@
1
1
  import { node, hookIndex } from "./globals.js";
2
- import { isVNode, encodeHtmlEntities, propsToElementAttributes, isExoticType, assertValidElementProps, } from "./utils/index.js";
2
+ import { isVNode, encodeHtmlEntities, propsToElementAttributes, isExoticType, assertValidElementProps, isPrimitiveChild, } from "./utils/index.js";
3
3
  import { Signal } from "./signals/base.js";
4
4
  import { $ERROR_BOUNDARY, voidElements, $SUSPENSE_THROW } from "./constants.js";
5
5
  import { __DEV__ } from "./env.js";
@@ -21,10 +21,19 @@ export function recursiveRender(ctx, el, parent, idx) {
21
21
  return el.forEach((c, i) => recursiveRender(ctx, c, parent, i));
22
22
  }
23
23
  if (Signal.isSignal(el)) {
24
- return ctx.write(String(el.peek()));
24
+ const value = el.peek();
25
+ if (__DEV__) {
26
+ if (!isPrimitiveChild(value)) {
27
+ if (__DEV__) {
28
+ console.error(`[kiru]: expected primitive child but received ${value}`);
29
+ }
30
+ return;
31
+ }
32
+ }
33
+ return ctx.write(encodeHtmlEntities(String(value)));
25
34
  }
26
35
  if (!isVNode(el)) {
27
- return ctx.write(String(el));
36
+ return;
28
37
  }
29
38
  el.parent = parent;
30
39
  el.depth = (parent?.depth ?? -1) + 1;
@@ -1 +1 @@
1
- {"version":3,"file":"recursiveRender.js","sourceRoot":"","sources":["../src/recursiveRender.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"recursiveRender.js","sourceRoot":"","sources":["../src/recursiveRender.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,10 @@ export interface FileRouterContextType {
12
12
  replace?: boolean;
13
13
  transition?: boolean;
14
14
  }) => Promise<void>;
15
+ /**
16
+ * Prefetch a route module and its dependencies to be loaded in the background
17
+ */
18
+ prefetchRouteModules: (path: string) => void;
15
19
  /**
16
20
  * Reload the current route, optionally triggering a view transition
17
21
  */
@@ -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,qBAAqB;IACpC;;OAEG;IACH,KAAK,EAAE,WAAW,CAAA;IAClB;;;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;IAClB;;OAEG;IACH,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,OAAO,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC7D;;OAEG;IACH,QAAQ,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAA;CACtC;AAED,eAAO,MAAM,aAAa,qCAA8C,CAAA;AAKxE,wBAAgB,aAAa,IAAI,qBAAqB,CAErD"}
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,qBAAqB;IACpC;;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;QAAE,UAAU,CAAC,EAAE,OAAO,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAE7D;;OAEG;IACH,QAAQ,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAA;CACtC;AAED,eAAO,MAAM,aAAa,qCAA8C,CAAA;AAKxE,wBAAgB,aAAa,IAAI,qBAAqB,CAErD"}
@@ -1 +1 @@
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;AA0B9C,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
+ {"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;AAkC9C,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"}
@@ -5,6 +5,6 @@ import { FileRouterController } from "./fileRouterController.js";
5
5
  export function FileRouter(props) {
6
6
  const [controller] = useState(() => new FileRouterController(props.config));
7
7
  useEffect(() => () => controller.dispose(), [controller]);
8
- return createElement(RouterContext.Provider, { value: controller.getContextValue() }, controller.getChildren());
8
+ return createElement(RouterContext.Provider, { value: controller.contextValue }, controller.getChildren());
9
9
  }
10
10
  //# sourceMappingURL=fileRouter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fileRouter.js","sourceRoot":"","sources":["../../src/router/fileRouter.ts"],"names":[],"mappings":"AACA,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;AAsBhE,MAAM,UAAU,UAAU,CAAC,KAAsB;IAC/C,MAAM,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,oBAAoB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAA;IAC3E,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,eAAe,EAAE,EAAE,EACvC,UAAU,CAAC,WAAW,EAAE,CACzB,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"fileRouter.js","sourceRoot":"","sources":["../../src/router/fileRouter.ts"],"names":[],"mappings":"AACA,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;AAsBhE,MAAM,UAAU,UAAU,CAAC,KAAsB;IAC/C,MAAM,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,oBAAoB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAA;IAC3E,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,28 +1,27 @@
1
1
  import { type FileRouterContextType } from "./context.js";
2
2
  import type { FileRouterConfig, PageConfig } from "./types.js";
3
3
  export declare class FileRouterController {
4
+ contextValue: FileRouterContextType;
4
5
  private enableTransitions;
5
6
  private pages;
6
7
  private layouts;
7
8
  private abortController;
8
- private currentPage;
9
+ private routeState;
9
10
  private currentPageProps;
10
11
  private currentLayouts;
11
12
  private state;
12
- private contextValue;
13
13
  private cleanups;
14
14
  private filePathToPageRoute?;
15
15
  private pageRouteToConfig?;
16
16
  private currentRoute;
17
17
  constructor(config: FileRouterConfig);
18
18
  onPageConfigDefined<T extends PageConfig>(fp: string, config: T): void;
19
- getContextValue(): FileRouterContextType;
20
19
  getChildren(): Kiru.VNode | null;
21
20
  dispose(): void;
22
- private matchRoute;
23
21
  private loadRoute;
24
22
  private loadRouteData;
25
23
  private navigate;
24
+ private prefetchRouteModules;
26
25
  private setQuery;
27
26
  }
28
27
  //# sourceMappingURL=fileRouterController.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"fileRouterController.d.ts","sourceRoot":"","sources":["../../src/router/fileRouterController.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,cAAc,CAAA;AAGzD,OAAO,KAAK,EAEV,gBAAgB,EAChB,UAAU,EAIX,MAAM,YAAY,CAAA;AAgBnB,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,KAAK,CAAwB;IACrC,OAAO,CAAC,OAAO,CAAwB;IACvC,OAAO,CAAC,eAAe,CAAiB;IACxC,OAAO,CAAC,WAAW,CAIV;IACT,OAAO,CAAC,gBAAgB,CAA+B;IACvD,OAAO,CAAC,cAAc,CAAmB;IACzC,OAAO,CAAC,KAAK,CAAa;IAC1B,OAAO,CAAC,YAAY,CAAuB;IAC3C,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,mBAAmB,CAAC,CAG3B;IACD,OAAO,CAAC,iBAAiB,CAAC,CAAyB;IACnD,OAAO,CAAC,YAAY,CAAe;gBAEvB,MAAM,EAAE,gBAAgB;IA6D7B,mBAAmB,CAAC,CAAC,SAAS,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;IA+B/D,eAAe;IAIf,WAAW;IAgBX,OAAO;IAId,OAAO,CAAC,UAAU;YA0EJ,SAAS;YAkGT,aAAa;YAkCb,QAAQ;IActB,OAAO,CAAC,QAAQ;CAOjB"}
1
+ {"version":3,"file":"fileRouterController.d.ts","sourceRoot":"","sources":["../../src/router/fileRouterController.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,cAAc,CAAA;AAGzD,OAAO,KAAK,EAEV,gBAAgB,EAChB,UAAU,EAIX,MAAM,YAAY,CAAA;AAenB,qBAAa,oBAAoB;IACxB,YAAY,EAAE,qBAAqB,CAAA;IAC1C,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,KAAK,CAAwB;IACrC,OAAO,CAAC,OAAO,CAAwB;IACvC,OAAO,CAAC,eAAe,CAAiB;IACxC,OAAO,CAAC,UAAU,CAIT;IACT,OAAO,CAAC,gBAAgB,CAA+B;IACvD,OAAO,CAAC,cAAc,CAAmB;IACzC,OAAO,CAAC,KAAK,CAAa;IAC1B,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,mBAAmB,CAAC,CAG3B;IACD,OAAO,CAAC,iBAAiB,CAAC,CAAyB;IACnD,OAAO,CAAC,YAAY,CAAe;gBAEvB,MAAM,EAAE,gBAAgB;IA4D7B,mBAAmB,CAAC,CAAC,SAAS,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;IA+B/D,WAAW;IAUX,OAAO;YAIA,SAAS;YA2FT,aAAa;YAkCb,QAAQ;YAaR,oBAAoB;IAmBlC,OAAO,CAAC,QAAQ;CAOjB"}