kiru 0.53.0 → 0.54.0-preview.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 (81) hide show
  1. package/dist/globals.d.ts +1 -1
  2. package/dist/globals.d.ts.map +1 -1
  3. package/dist/globals.js.map +1 -1
  4. package/dist/router/client/index.d.ts +4 -2
  5. package/dist/router/client/index.d.ts.map +1 -1
  6. package/dist/router/client/index.js +49 -11
  7. package/dist/router/client/index.js.map +1 -1
  8. package/dist/router/context.d.ts +2 -0
  9. package/dist/router/context.d.ts.map +1 -1
  10. package/dist/router/context.js +5 -1
  11. package/dist/router/context.js.map +1 -1
  12. package/dist/router/fileRouterController.d.ts +2 -0
  13. package/dist/router/fileRouterController.d.ts.map +1 -1
  14. package/dist/router/fileRouterController.js +80 -9
  15. package/dist/router/fileRouterController.js.map +1 -1
  16. package/dist/router/globals.d.ts +3 -0
  17. package/dist/router/globals.d.ts.map +1 -1
  18. package/dist/router/globals.js +3 -0
  19. package/dist/router/globals.js.map +1 -1
  20. package/dist/router/guard.d.ts +17 -0
  21. package/dist/router/guard.d.ts.map +1 -0
  22. package/dist/router/guard.js +45 -0
  23. package/dist/router/guard.js.map +1 -0
  24. package/dist/router/head.d.ts.map +1 -1
  25. package/dist/router/head.js +5 -7
  26. package/dist/router/head.js.map +1 -1
  27. package/dist/router/index.d.ts +2 -1
  28. package/dist/router/index.d.ts.map +1 -1
  29. package/dist/router/index.js +2 -1
  30. package/dist/router/index.js.map +1 -1
  31. package/dist/router/{server → ssg}/index.d.ts +4 -3
  32. package/dist/router/ssg/index.d.ts.map +1 -0
  33. package/dist/router/{server → ssg}/index.js +7 -4
  34. package/dist/router/ssg/index.js.map +1 -0
  35. package/dist/router/ssr/index.d.ts +20 -0
  36. package/dist/router/ssr/index.d.ts.map +1 -0
  37. package/dist/router/ssr/index.js +160 -0
  38. package/dist/router/ssr/index.js.map +1 -0
  39. package/dist/router/types.d.ts +37 -4
  40. package/dist/router/types.d.ts.map +1 -1
  41. package/dist/router/types.internal.d.ts +4 -0
  42. package/dist/router/types.internal.d.ts.map +1 -1
  43. package/dist/router/utils/index.d.ts +8 -3
  44. package/dist/router/utils/index.d.ts.map +1 -1
  45. package/dist/router/utils/index.js +38 -6
  46. package/dist/router/utils/index.js.map +1 -1
  47. package/dist/ssr/client.d.ts +1 -1
  48. package/dist/ssr/client.d.ts.map +1 -1
  49. package/dist/ssr/server.d.ts +1 -2
  50. package/dist/ssr/server.d.ts.map +1 -1
  51. package/dist/ssr/server.js +16 -19
  52. package/dist/ssr/server.js.map +1 -1
  53. package/dist/types.d.ts +3 -0
  54. package/dist/types.d.ts.map +1 -1
  55. package/dist/utils/format.d.ts +2 -1
  56. package/dist/utils/format.d.ts.map +1 -1
  57. package/dist/utils/format.js +4 -1
  58. package/dist/utils/format.js.map +1 -1
  59. package/dist/utils/runtime.d.ts +1 -1
  60. package/dist/utils/runtime.js +1 -1
  61. package/package.json +8 -4
  62. package/src/globals.ts +1 -1
  63. package/src/router/client/index.ts +100 -14
  64. package/src/router/context.ts +7 -1
  65. package/src/router/fileRouterController.ts +137 -8
  66. package/src/router/globals.ts +4 -0
  67. package/src/router/guard.ts +72 -0
  68. package/src/router/head.ts +5 -7
  69. package/src/router/index.ts +12 -1
  70. package/src/router/{server → ssg}/index.ts +16 -9
  71. package/src/router/ssr/index.ts +247 -0
  72. package/src/router/types.internal.ts +5 -0
  73. package/src/router/types.ts +48 -4
  74. package/src/router/utils/index.ts +74 -8
  75. package/src/ssr/client.ts +1 -1
  76. package/src/ssr/server.ts +19 -21
  77. package/src/types.ts +3 -0
  78. package/src/utils/format.ts +5 -0
  79. package/src/utils/runtime.ts +1 -1
  80. package/dist/router/server/index.d.ts.map +0 -1
  81. package/dist/router/server/index.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/router/utils/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/router/utils/index.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ interface HydrationAppContextOptions extends AppContextOptions {
6
6
  * - "dynamic": SSR with lazy promise hydration
7
7
  * @default "dynamic"
8
8
  */
9
- hydrationMode?: "static" | "dynamic";
9
+ hydrationMode?: Kiru.HydrationMode;
10
10
  }
11
11
  export declare function hydrate(children: JSX.Element, container: HTMLElement, options?: HydrationAppContextOptions): AppContext;
12
12
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/ssr/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAKlE,UAAU,0BAA2B,SAAQ,iBAAiB;IAC5D;;;;;OAKG;IACH,aAAa,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAA;CACrC;AAED,wBAAgB,OAAO,CACrB,QAAQ,EAAE,GAAG,CAAC,OAAO,EACrB,SAAS,EAAE,WAAW,EACtB,OAAO,CAAC,EAAE,0BAA0B,GACnC,UAAU,CAkBZ"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/ssr/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAKlE,UAAU,0BAA2B,SAAQ,iBAAiB;IAC5D;;;;;OAKG;IACH,aAAa,CAAC,EAAE,IAAI,CAAC,aAAa,CAAA;CACnC;AAED,wBAAgB,OAAO,CACrB,QAAQ,EAAE,GAAG,CAAC,OAAO,EACrB,SAAS,EAAE,WAAW,EACtB,OAAO,CAAC,EAAE,0BAA0B,GACnC,UAAU,CAkBZ"}
@@ -1,6 +1,5 @@
1
- import { Readable } from "node:stream";
2
1
  export declare function renderToReadableStream(element: JSX.Element): {
3
2
  immediate: string;
4
- stream: Readable;
3
+ stream: ReadableStream | null;
5
4
  };
6
5
  //# sourceMappingURL=server.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/ssr/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAuBtC,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,GAAG;IAC5D,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,QAAQ,CAAA;CACjB,CA6CA"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/ssr/server.ts"],"names":[],"mappings":"AAsBA,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,GAAG;IAC5D,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,cAAc,GAAG,IAAI,CAAA;CAC9B,CA4CA"}
@@ -1,4 +1,3 @@
1
- import { Readable } from "node:stream";
2
1
  import { Fragment } from "../element.js";
3
2
  import { renderMode } from "../globals.js";
4
3
  import { STREAMED_DATA_EVENT } from "../constants.js";
@@ -17,12 +16,11 @@ d.querySelectorAll("[k-data]").forEach((p) => {
17
16
  });
18
17
  d.currentScript.remove()
19
18
  </script>
20
- `;
19
+ `.replace(/\s+/g, " ");
21
20
  export function renderToReadableStream(element) {
22
- const stream = new Readable({ read() { } });
23
- const rootNode = Fragment({ children: element });
24
21
  const streamPromises = new Set();
25
- const pendingWritePromises = [];
22
+ const dataPromises = [];
23
+ let stream = null;
26
24
  let immediate = "";
27
25
  const ctx = {
28
26
  write: (chunk) => (immediate += chunk),
@@ -31,30 +29,29 @@ export function renderToReadableStream(element) {
31
29
  if (streamPromises.has(promise))
32
30
  continue;
33
31
  streamPromises.add(promise);
34
- const writePromise = promise
32
+ const dataPromise = promise
35
33
  .then(() => ({ data: promise.value }))
36
34
  .catch(() => ({ error: promise.error?.message }))
37
- .then((value) => {
38
- const content = JSON.stringify(value);
39
- stream.push(`<script id="${promise.id}" k-data type="application/json">${content}</script>`);
40
- });
41
- pendingWritePromises.push(writePromise);
35
+ .then((value, content = JSON.stringify(value)) => `<script id="${promise.id}" k-data type="application/json">${content}</script>`);
36
+ dataPromises.push(dataPromise);
42
37
  }
43
38
  },
44
39
  };
45
40
  const prev = renderMode.current;
46
41
  renderMode.current = "stream";
47
- headlessRender(ctx, rootNode, null, 0);
42
+ headlessRender(ctx, Fragment({ children: element }), null, 0);
48
43
  renderMode.current = prev;
49
- if (pendingWritePromises.length > 0) {
50
- Promise.all(pendingWritePromises).then(() => {
51
- stream.push(STREAMED_DATA_SETUP);
52
- stream.push(null);
44
+ if (dataPromises.length > 0) {
45
+ stream = new ReadableStream({
46
+ async pull(controller) {
47
+ for await (const chunk of dataPromises) {
48
+ controller.enqueue(chunk);
49
+ }
50
+ controller.enqueue(STREAMED_DATA_SETUP);
51
+ controller.close();
52
+ },
53
53
  });
54
54
  }
55
- else {
56
- stream.push(null);
57
- }
58
55
  return { immediate, stream };
59
56
  }
60
57
  //# sourceMappingURL=server.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/ssr/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAErD,OAAO,EAAE,cAAc,EAAyB,MAAM,uBAAuB,CAAA;AAE7E,MAAM,mBAAmB,GAAG;;;iBAGX,mBAAmB;;;;;mCAKD,mBAAmB;;;;;;CAMrD,CAAA;AAED,MAAM,UAAU,sBAAsB,CAAC,OAAoB;IAIzD,MAAM,MAAM,GAAG,IAAI,QAAQ,CAAC,EAAE,IAAI,KAAI,CAAC,EAAE,CAAC,CAAA;IAC1C,MAAM,QAAQ,GAAG,QAAQ,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAA;IAChD,MAAM,cAAc,GAAG,IAAI,GAAG,EAAiC,CAAA;IAC/D,MAAM,oBAAoB,GAAoB,EAAE,CAAA;IAEhD,IAAI,SAAS,GAAG,EAAE,CAAA;IAElB,MAAM,GAAG,GAA0B;QACjC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,SAAS,IAAI,KAAK,CAAC;QACtC,YAAY,CAAC,IAAI;YACf,KAAK,MAAM,OAAO,IAAI,IAAI,EAAE,CAAC;gBAC3B,IAAI,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC;oBAAE,SAAQ;gBACzC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;gBAE3B,MAAM,YAAY,GAAG,OAAO;qBACzB,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;qBACrC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;qBAChD,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;oBACd,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;oBACrC,MAAM,CAAC,IAAI,CACT,eAAe,OAAO,CAAC,EAAE,oCAAoC,OAAO,WAAW,CAChF,CAAA;gBACH,CAAC,CAAC,CAAA;gBAEJ,oBAAoB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;YACzC,CAAC;QACH,CAAC;KACF,CAAA;IAED,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,CAAA;IAC/B,UAAU,CAAC,OAAO,GAAG,QAAQ,CAAA;IAC7B,cAAc,CAAC,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;IACtC,UAAU,CAAC,OAAO,GAAG,IAAI,CAAA;IAEzB,IAAI,oBAAoB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;YAC1C,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAA;YAChC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACnB,CAAC,CAAC,CAAA;IACJ,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACnB,CAAC;IAED,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,CAAA;AAC9B,CAAC"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/ssr/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAErD,OAAO,EAAE,cAAc,EAAyB,MAAM,uBAAuB,CAAA;AAE7E,MAAM,mBAAmB,GAAG;;;iBAGX,mBAAmB;;;;;mCAKD,mBAAmB;;;;;;CAMrD,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;AAEtB,MAAM,UAAU,sBAAsB,CAAC,OAAoB;IAIzD,MAAM,cAAc,GAAG,IAAI,GAAG,EAAiC,CAAA;IAC/D,MAAM,YAAY,GAAsB,EAAE,CAAA;IAC1C,IAAI,MAAM,GAA0B,IAAI,CAAA;IAExC,IAAI,SAAS,GAAG,EAAE,CAAA;IAElB,MAAM,GAAG,GAA0B;QACjC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,SAAS,IAAI,KAAK,CAAC;QACtC,YAAY,CAAC,IAAI;YACf,KAAK,MAAM,OAAO,IAAI,IAAI,EAAE,CAAC;gBAC3B,IAAI,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC;oBAAE,SAAQ;gBACzC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;gBAE3B,MAAM,WAAW,GAAG,OAAO;qBACxB,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;qBACrC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;qBAChD,IAAI,CACH,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,EAAE,CACzC,eAAe,OAAO,CAAC,EAAE,oCAAoC,OAAO,WAAW,CAClF,CAAA;gBACH,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;YAChC,CAAC;QACH,CAAC;KACF,CAAA;IAED,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,CAAA;IAC/B,UAAU,CAAC,OAAO,GAAG,QAAQ,CAAA;IAC7B,cAAc,CAAC,GAAG,EAAE,QAAQ,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;IAC7D,UAAU,CAAC,OAAO,GAAG,IAAI,CAAA;IAEzB,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,MAAM,GAAG,IAAI,cAAc,CAAC;YAC1B,KAAK,CAAC,IAAI,CAAC,UAAU;gBACnB,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;oBACvC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;gBAC3B,CAAC;gBACD,UAAU,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAA;gBACvC,UAAU,CAAC,KAAK,EAAE,CAAA;YACpB,CAAC;SACF,CAAC,CAAA;IACJ,CAAC;IAED,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,CAAA;AAC9B,CAAC"}
package/dist/types.d.ts CHANGED
@@ -59,6 +59,8 @@ declare global {
59
59
  }
60
60
  }
61
61
  namespace Kiru {
62
+ interface RequestContext {
63
+ }
62
64
  interface CustomEvents {
63
65
  }
64
66
  interface ProviderProps<T> {
@@ -111,6 +113,7 @@ declare global {
111
113
  }
112
114
  interface StatefulPromise<T> extends Promise<T>, PromiseState<T> {
113
115
  }
116
+ type HydrationMode = "static" | "dynamic";
114
117
  type RenderMode = "dom" | "hydrate" | "string" | "stream";
115
118
  type StateSetter<T> = T | ((prev: T) => T);
116
119
  type Signal<T> = SignalClass<T> | ReadonlySignal<T>;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
- export { className, encodeHtmlEntities, propFilters, propToHtmlAttr, styleObjectToString, propValueToHtmlAttrValue, propsToElementAttributes, safeStringify, };
1
+ export { toArray, className, encodeHtmlEntities, propFilters, propToHtmlAttr, styleObjectToString, propValueToHtmlAttrValue, propsToElementAttributes, safeStringify, };
2
+ declare function toArray<T>(value: T | T[]): T[];
2
3
  declare function className(...classes: (string | false | null | undefined)[]): string;
3
4
  declare function encodeHtmlEntities(text: string): string;
4
5
  declare const propFilters: {
@@ -1 +1 @@
1
- {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../src/utils/format.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,SAAS,EACT,kBAAkB,EAClB,WAAW,EACX,cAAc,EACd,mBAAmB,EACnB,wBAAwB,EACxB,wBAAwB,EACxB,aAAa,GACd,CAAA;AAUD,iBAAS,SAAS,CAAC,GAAG,OAAO,EAAE,CAAC,MAAM,GAAG,KAAK,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE,GAAG,MAAM,CAE5E;AAED,iBAAS,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAQhD;AAGD,QAAA,MAAM,WAAW;0BAER,MAAM,KACV,GAAG,IAAI,UAAU,GAAG,KAAK,GAAG,KAAK,GAAG,WAAW;mBACnC,MAAM;sCACa,MAAM;CAEzC,CAAA;AAED,iBAAS,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAmC3C;AAED,iBAAS,mBAAmB,CAAC,GAAG,EAAE,OAAO,CAAC,mBAAmB,CAAC,GAAG,MAAM,CAOtE;AAQD,iBAAS,wBAAwB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,CAIrE;AACD,iBAAS,wBAAwB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAkCxE;AAED,KAAK,oBAAoB,GAAG;IAC1B;;OAEG;IACH,SAAS,EAAE,OAAO,CAAA;CACnB,CAAA;AAED,iBAAS,aAAa,CACpB,KAAK,EAAE,OAAO,EACd,IAAI,GAAE,oBAA0C,GAC/C,MAAM,CAeR"}
1
+ {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../src/utils/format.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,OAAO,EACP,SAAS,EACT,kBAAkB,EAClB,WAAW,EACX,cAAc,EACd,mBAAmB,EACnB,wBAAwB,EACxB,wBAAwB,EACxB,aAAa,GACd,CAAA;AAUD,iBAAS,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,EAAE,CAEvC;AAED,iBAAS,SAAS,CAAC,GAAG,OAAO,EAAE,CAAC,MAAM,GAAG,KAAK,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE,GAAG,MAAM,CAE5E;AAED,iBAAS,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAQhD;AAGD,QAAA,MAAM,WAAW;0BAER,MAAM,KACV,GAAG,IAAI,UAAU,GAAG,KAAK,GAAG,KAAK,GAAG,WAAW;mBACnC,MAAM;sCACa,MAAM;CAEzC,CAAA;AAED,iBAAS,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAmC3C;AAED,iBAAS,mBAAmB,CAAC,GAAG,EAAE,OAAO,CAAC,mBAAmB,CAAC,GAAG,MAAM,CAOtE;AAQD,iBAAS,wBAAwB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,CAIrE;AACD,iBAAS,wBAAwB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAkCxE;AAED,KAAK,oBAAoB,GAAG;IAC1B;;OAEG;IACH,SAAS,EAAE,OAAO,CAAA;CACnB,CAAA;AAED,iBAAS,aAAa,CACpB,KAAK,EAAE,OAAO,EACd,IAAI,GAAE,oBAA0C,GAC/C,MAAM,CAeR"}
@@ -1,6 +1,6 @@
1
1
  import { unwrap } from "../signals/utils.js";
2
2
  import { booleanAttributes, snakeCaseAttributes } from "../constants.js";
3
- export { className, encodeHtmlEntities, propFilters, propToHtmlAttr, styleObjectToString, propValueToHtmlAttrValue, propsToElementAttributes, safeStringify, };
3
+ export { toArray, className, encodeHtmlEntities, propFilters, propToHtmlAttr, styleObjectToString, propValueToHtmlAttrValue, propsToElementAttributes, safeStringify, };
4
4
  const REGEX_AMP = /&/g;
5
5
  const REGEX_LT = /</g;
6
6
  const REGEX_GT = />/g;
@@ -8,6 +8,9 @@ const REGEX_SQT = /'/g;
8
8
  const REGEX_DBLQT = /"/g;
9
9
  const REGEX_SLASH = /\//g;
10
10
  const REGEX_ALPHA_UPPER = /[A-Z]/g;
11
+ function toArray(value) {
12
+ return Array.isArray(value) ? value : [value];
13
+ }
11
14
  function className(...classes) {
12
15
  return classes.filter(Boolean).join(" ");
13
16
  }
@@ -1 +1 @@
1
- {"version":3,"file":"format.js","sourceRoot":"","sources":["../../src/utils/format.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"format.js","sourceRoot":"","sources":["../../src/utils/format.ts"],"names":[],"mappings":"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"}
@@ -14,7 +14,7 @@ declare function composeRefs<T>(...refs: Array<Kiru.Ref<T>>): Kiru.RefCallback<T
14
14
  */
15
15
  declare function setRef<T>(ref: Kiru.Ref<T>, value: T): void;
16
16
  /**
17
- * Returns false if called during "stream" or "string" render modes.
17
+ * Returns true if called during 'dom' or 'hydrate' mode.
18
18
  */
19
19
  declare function sideEffectsEnabled(): boolean;
20
20
  //# sourceMappingURL=runtime.d.ts.map
@@ -39,7 +39,7 @@ function setRef(ref, value) {
39
39
  ref.current = value;
40
40
  }
41
41
  /**
42
- * Returns false if called during "stream" or "string" render modes.
42
+ * Returns true if called during 'dom' or 'hydrate' mode.
43
43
  */
44
44
  function sideEffectsEnabled() {
45
45
  return renderMode.current === "dom" || renderMode.current === "hydrate";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "kiru",
3
- "version": "0.53.0",
3
+ "version": "0.54.0-preview.0",
4
4
  "description": "A batteries-included, easy-to-use rendering library with a tiny footprint",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",
@@ -34,9 +34,13 @@
34
34
  "types": "./dist/router/client/index.d.ts",
35
35
  "default": "./dist/router/client/index.js"
36
36
  },
37
- "./router/server": {
38
- "types": "./dist/router/server/index.d.ts",
39
- "default": "./dist/router/server/index.js"
37
+ "./router/ssg": {
38
+ "types": "./dist/router/ssg/index.d.ts",
39
+ "default": "./dist/router/ssg/index.js"
40
+ },
41
+ "./router/ssr": {
42
+ "types": "./dist/router/ssr/index.d.ts",
43
+ "default": "./dist/router/ssr/index.js"
40
44
  },
41
45
  "./router/utils": {
42
46
  "types": "./dist/router/utils/index.d.ts",
package/src/globals.ts CHANGED
@@ -13,5 +13,5 @@ const renderMode = {
13
13
  }
14
14
 
15
15
  const hydrationMode = {
16
- current: "dynamic" as "static" | "dynamic",
16
+ current: "dynamic" as Kiru.HydrationMode,
17
17
  }
@@ -1,45 +1,87 @@
1
- // initClient({ dir, baseUrl, pages, layouts })
2
-
3
1
  import { createElement } from "../../element.js"
4
2
  import { hydrate } from "../../ssr/client.js"
5
3
  import { FileRouter } from "../fileRouter.js"
4
+ import { toArray } from "../../utils/format.js"
6
5
  import {
7
- matchLayouts,
6
+ matchModules,
8
7
  matchRoute,
9
8
  match404Route,
10
9
  parseQuery,
10
+ runBeforeEachGuards,
11
+ runAfterEachGuards,
12
+ runBeforeEnterHooks,
11
13
  } from "../utils/index.js"
12
- import type { FormattedViteImportMap, PageModule } from "../types.internal"
14
+ import type {
15
+ FormattedViteImportMap,
16
+ GuardModule,
17
+ PageModule,
18
+ } from "../types.internal"
13
19
  import type { FileRouterConfig, FileRouterPreloadConfig } from "../types"
14
- import { fileRouterInstance, fileRouterRoute, routerCache } from "../globals.js"
20
+ import {
21
+ fileRouterInstance,
22
+ fileRouterRoute,
23
+ requestContext,
24
+ routerCache,
25
+ } from "../globals.js"
15
26
  import { FileRouterController } from "../fileRouterController.js"
16
27
  import { FileRouterDataLoadError } from "../errors.js"
17
28
  import { __DEV__ } from "../../env.js"
18
29
  import { RouterCache } from "../cache.js"
30
+ import { RequestContext } from "../context.js"
19
31
 
20
32
  interface InitClientOptions {
21
33
  dir: string
22
34
  baseUrl: string
23
- pages: FormattedViteImportMap
35
+ pages: FormattedViteImportMap<PageModule>
24
36
  layouts: FormattedViteImportMap
37
+ guards?: FormattedViteImportMap<GuardModule>
25
38
  transition: boolean
39
+ hydrationMode?: Kiru.HydrationMode
26
40
  }
27
41
 
28
42
  export async function initClient(options: InitClientOptions) {
29
43
  routerCache.current = new RouterCache()
30
- const { dir, baseUrl, pages, layouts, transition } = options
44
+ const {
45
+ dir,
46
+ baseUrl,
47
+ pages,
48
+ layouts,
49
+ guards,
50
+ transition,
51
+ hydrationMode = "static",
52
+ } = options
53
+
54
+ try {
55
+ requestContext.current = JSON.parse(
56
+ document.querySelector("[k-request-context]")!.innerHTML
57
+ )
58
+ } catch {}
31
59
 
60
+ const preloaded = await preparePreloadConfig(
61
+ options,
62
+ false,
63
+ hydrationMode === "dynamic"
64
+ )
32
65
  const config: FileRouterConfig = {
33
66
  dir,
34
67
  baseUrl,
35
68
  pages,
36
69
  layouts,
70
+ guards,
37
71
  transition,
38
- preloaded: await preparePreloadConfig(options),
72
+ preloaded,
39
73
  }
40
74
 
41
- const app = createElement(FileRouter, { config })
42
- hydrate(app, document.body, { hydrationMode: "static" })
75
+ const children = createElement(FileRouter, { config })
76
+ const app =
77
+ hydrationMode === "static"
78
+ ? children
79
+ : createElement(RequestContext.Provider, {
80
+ value: requestContext.current,
81
+ children,
82
+ })
83
+
84
+ hydrate(app, document.body, { hydrationMode })
43
85
 
44
86
  if (__DEV__) {
45
87
  onLoadedDev()
@@ -48,7 +90,8 @@ export async function initClient(options: InitClientOptions) {
48
90
 
49
91
  async function preparePreloadConfig(
50
92
  options: InitClientOptions,
51
- isStatic404 = false
93
+ isStatic404 = false,
94
+ _isSSR = false
52
95
  ): Promise<FileRouterPreloadConfig> {
53
96
  let pageProps = {}
54
97
  let cacheData: null | { value: unknown } = null
@@ -68,7 +111,25 @@ async function preparePreloadConfig(
68
111
  throw new Error(`No route defined (path: ${url.pathname}).`)
69
112
  }
70
113
 
71
- const layoutEntries = matchLayouts(options.layouts, routeMatch.routeSegments)
114
+ const layoutEntries = matchModules(options.layouts, routeMatch.routeSegments)
115
+
116
+ // Load and run guards before loading page
117
+ // if SSR, do we even need to do this?
118
+ let guardModules: GuardModule[] = []
119
+ if (options.guards) {
120
+ const guardEntries = matchModules(options.guards, routeMatch.routeSegments)
121
+ guardModules = await Promise.all(guardEntries.map((entry) => entry.load()))
122
+
123
+ const redirectPath = await runBeforeEachGuards(
124
+ guardModules,
125
+ { ...requestContext.current },
126
+ url.pathname
127
+ )
128
+ if (redirectPath !== null) {
129
+ window.location.href = redirectPath
130
+ }
131
+ }
132
+
72
133
  fileRouterInstance.current = new FileRouterController()
73
134
  fileRouterRoute.current = routeMatch.route
74
135
  const [page, ...layouts] = await Promise.all([
@@ -77,6 +138,22 @@ async function preparePreloadConfig(
77
138
  ])
78
139
  fileRouterRoute.current = null
79
140
 
141
+ const onBeforeEnter = page.config?.hooks?.onBeforeEnter
142
+ if (onBeforeEnter) {
143
+ const redirectPath = await runBeforeEnterHooks(
144
+ toArray(onBeforeEnter),
145
+ { ...requestContext.current },
146
+ url.pathname
147
+ )
148
+ if (redirectPath) {
149
+ window.location.href = redirectPath
150
+ // @ts-ignore
151
+ return
152
+ }
153
+ }
154
+
155
+ const query = parseQuery(window.location.search)
156
+
80
157
  // Check if page has static props pre-loaded at build time
81
158
  if (page.__KIRU_STATIC_PROPS__) {
82
159
  const staticProps = page.__KIRU_STATIC_PROPS__[window.location.pathname]
@@ -100,21 +177,30 @@ async function preparePreloadConfig(
100
177
  const cacheKey = {
101
178
  path: window.location.pathname,
102
179
  params: routeMatch.params,
103
- query: parseQuery(url.search),
180
+ query,
104
181
  }
105
182
 
106
183
  cacheData = routerCache.current!.get(cacheKey, loader.cache)
107
184
  }
108
185
  }
109
186
 
187
+ window.__kiru.on("mount", () => {
188
+ runAfterEachGuards(
189
+ guardModules,
190
+ { ...requestContext.current },
191
+ url.pathname
192
+ )
193
+ })
194
+
110
195
  return {
111
196
  pages: options.pages,
112
197
  layouts: options.layouts,
198
+ guards: options.guards,
113
199
  page: page,
114
200
  pageProps: pageProps,
115
201
  pageLayouts: layouts,
116
202
  params: routeMatch.params,
117
- query: parseQuery(url.search),
203
+ query: query,
118
204
  route: routeMatch.route,
119
205
  cacheData,
120
206
  }
@@ -1,6 +1,6 @@
1
+ import { useContext } from "../hooks/index.js"
1
2
  import { createContext } from "../context.js"
2
3
  import { __DEV__ } from "../env.js"
3
- import { useContext } from "../hooks/index.js"
4
4
  import type { RouteQuery, RouterState } from "./types.js"
5
5
 
6
6
  export interface ReloadOptions {
@@ -74,3 +74,9 @@ if (__DEV__) {
74
74
  export function useFileRouter(): FileRouterContextType {
75
75
  return useContext(RouterContext)
76
76
  }
77
+
78
+ export const RequestContext = createContext<Kiru.RequestContext>({})
79
+
80
+ export function useRequestContext() {
81
+ return useContext(RequestContext)
82
+ }