@rakun-kit/react 1.5.2 → 1.6.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 (111) hide show
  1. package/README.md +41 -34
  2. package/dist/cjs/Image.js +35 -34
  3. package/dist/cjs/Image.js.map +1 -1
  4. package/dist/cjs/JsonViewer.js +76 -0
  5. package/dist/cjs/JsonViewer.js.map +1 -0
  6. package/dist/cjs/ModuleRenderer.js +7 -2
  7. package/dist/cjs/ModuleRenderer.js.map +1 -1
  8. package/dist/cjs/PageInfoClientProvider.js +9 -6
  9. package/dist/cjs/PageInfoClientProvider.js.map +1 -1
  10. package/dist/cjs/PageInfoClientSync.js +3 -2
  11. package/dist/cjs/PageInfoClientSync.js.map +1 -1
  12. package/dist/cjs/PageInfoProvider.js +6 -2
  13. package/dist/cjs/PageInfoProvider.js.map +1 -1
  14. package/dist/cjs/RakunLogo.js +12 -0
  15. package/dist/cjs/RakunLogo.js.map +1 -0
  16. package/dist/cjs/ServerModuleRenderer.js +4 -0
  17. package/dist/cjs/ServerModuleRenderer.js.map +1 -1
  18. package/dist/cjs/StructuredData.js +135 -0
  19. package/dist/cjs/StructuredData.js.map +1 -0
  20. package/dist/cjs/Video.js +64 -0
  21. package/dist/cjs/Video.js.map +1 -0
  22. package/dist/cjs/builtin-modules.js +7 -0
  23. package/dist/cjs/builtin-modules.js.map +1 -0
  24. package/dist/cjs/format.js +3 -3
  25. package/dist/cjs/format.js.map +1 -1
  26. package/dist/cjs/index.js +5 -0
  27. package/dist/cjs/index.js.map +1 -1
  28. package/dist/cjs/mediaUrl.js +25 -0
  29. package/dist/cjs/mediaUrl.js.map +1 -0
  30. package/dist/cjs/pageInfoStore.js +58 -14
  31. package/dist/cjs/pageInfoStore.js.map +1 -1
  32. package/dist/cjs/translation.js +2 -1
  33. package/dist/cjs/translation.js.map +1 -1
  34. package/dist/cjs/useClientT.js +2 -0
  35. package/dist/cjs/useClientT.js.map +1 -1
  36. package/dist/cjs/useT.js +2 -0
  37. package/dist/cjs/useT.js.map +1 -1
  38. package/dist/docs/index.md +43 -10
  39. package/dist/esm/Image.d.ts +2 -2
  40. package/dist/esm/Image.d.ts.map +1 -1
  41. package/dist/esm/Image.js +32 -31
  42. package/dist/esm/Image.js.map +1 -1
  43. package/dist/esm/JsonViewer.d.ts +17 -0
  44. package/dist/esm/JsonViewer.d.ts.map +1 -0
  45. package/dist/esm/JsonViewer.js +73 -0
  46. package/dist/esm/JsonViewer.js.map +1 -0
  47. package/dist/esm/ModuleRenderer.d.ts +1 -1
  48. package/dist/esm/ModuleRenderer.d.ts.map +1 -1
  49. package/dist/esm/ModuleRenderer.js +7 -2
  50. package/dist/esm/ModuleRenderer.js.map +1 -1
  51. package/dist/esm/PageInfoClientProvider.d.ts +4 -2
  52. package/dist/esm/PageInfoClientProvider.d.ts.map +1 -1
  53. package/dist/esm/PageInfoClientProvider.js +8 -6
  54. package/dist/esm/PageInfoClientProvider.js.map +1 -1
  55. package/dist/esm/PageInfoClientSync.d.ts +1 -0
  56. package/dist/esm/PageInfoClientSync.d.ts.map +1 -1
  57. package/dist/esm/PageInfoClientSync.js +3 -2
  58. package/dist/esm/PageInfoClientSync.js.map +1 -1
  59. package/dist/esm/PageInfoProvider.d.ts +1 -0
  60. package/dist/esm/PageInfoProvider.d.ts.map +1 -1
  61. package/dist/esm/PageInfoProvider.js +7 -3
  62. package/dist/esm/PageInfoProvider.js.map +1 -1
  63. package/dist/esm/RakunLogo.d.ts +6 -0
  64. package/dist/esm/RakunLogo.d.ts.map +1 -0
  65. package/dist/esm/RakunLogo.js +7 -0
  66. package/dist/esm/RakunLogo.js.map +1 -0
  67. package/dist/esm/ServerModuleRenderer.d.ts.map +1 -1
  68. package/dist/esm/ServerModuleRenderer.js +4 -0
  69. package/dist/esm/ServerModuleRenderer.js.map +1 -1
  70. package/dist/esm/StructuredData.d.ts +29 -0
  71. package/dist/esm/StructuredData.d.ts.map +1 -0
  72. package/dist/esm/StructuredData.js +129 -0
  73. package/dist/esm/StructuredData.js.map +1 -0
  74. package/dist/esm/Video.d.ts +35 -0
  75. package/dist/esm/Video.d.ts.map +1 -0
  76. package/dist/esm/Video.js +60 -0
  77. package/dist/esm/Video.js.map +1 -0
  78. package/dist/esm/builtin-modules.d.ts +3 -0
  79. package/dist/esm/builtin-modules.d.ts.map +1 -0
  80. package/dist/esm/builtin-modules.js +3 -0
  81. package/dist/esm/builtin-modules.js.map +1 -0
  82. package/dist/esm/format.d.ts +2 -0
  83. package/dist/esm/format.d.ts.map +1 -1
  84. package/dist/esm/format.js +3 -3
  85. package/dist/esm/format.js.map +1 -1
  86. package/dist/esm/index.d.ts +11 -6
  87. package/dist/esm/index.d.ts.map +1 -1
  88. package/dist/esm/index.js +11 -6
  89. package/dist/esm/index.js.map +1 -1
  90. package/dist/esm/mediaUrl.d.ts +7 -0
  91. package/dist/esm/mediaUrl.d.ts.map +1 -0
  92. package/dist/esm/mediaUrl.js +21 -0
  93. package/dist/esm/mediaUrl.js.map +1 -0
  94. package/dist/esm/pageInfoStore.d.ts +4 -1
  95. package/dist/esm/pageInfoStore.d.ts.map +1 -1
  96. package/dist/esm/pageInfoStore.js +55 -13
  97. package/dist/esm/pageInfoStore.js.map +1 -1
  98. package/dist/esm/translation.d.ts +1 -1
  99. package/dist/esm/translation.d.ts.map +1 -1
  100. package/dist/esm/translation.js +1 -1
  101. package/dist/esm/translation.js.map +1 -1
  102. package/dist/esm/useClientT.d.ts +1 -1
  103. package/dist/esm/useClientT.d.ts.map +1 -1
  104. package/dist/esm/useClientT.js +3 -1
  105. package/dist/esm/useClientT.js.map +1 -1
  106. package/dist/esm/useT.d.ts +1 -1
  107. package/dist/esm/useT.d.ts.map +1 -1
  108. package/dist/esm/useT.js +3 -1
  109. package/dist/esm/useT.js.map +1 -1
  110. package/dist/tsconfig.build.tsbuildinfo +1 -1
  111. package/package.json +68 -68
package/README.md CHANGED
@@ -2,18 +2,23 @@
2
2
 
3
3
  React helpers for rendering Rakun web modules.
4
4
 
5
+ The package also exports `RakunLogoMark` and `RakunLogoBadge` for Rakun-owned
6
+ development and manager UI. `JsonViewer` provides the shared collapsible JSON
7
+ tree used by Rakun debugging interfaces; use `defaultExpandedDepth={-1}` when
8
+ the root should start collapsed.
9
+
5
10
  Apps provide a module registry, so framework adapters stay open:
6
11
 
7
12
  ```tsx
8
- import { createModuleRegistry, ModuleRenderer } from "@rakun-kit/react";
13
+ import { createModuleRegistry, ModuleRenderer } from '@rakun-kit/react'
9
14
 
10
15
  const registry = createModuleRegistry({
11
- Hero: () => import("./modules/Hero"),
12
- Footer: () => import("./modules/Footer"),
13
- });
16
+ Hero: () => import('./modules/Hero'),
17
+ Footer: () => import('./modules/Footer'),
18
+ })
14
19
 
15
20
  export function Page({ modules }) {
16
- return <ModuleRenderer modules={modules} registry={registry} />;
21
+ return <ModuleRenderer modules={modules} registry={registry} />
17
22
  }
18
23
  ```
19
24
 
@@ -23,14 +28,12 @@ loading strategies.
23
28
  With Vite, use `import.meta.glob`:
24
29
 
25
30
  ```tsx
26
- import { createModuleRegistryFromGlob, ModuleRenderer } from "@rakun-kit/react";
31
+ import { createModuleRegistryFromGlob, ModuleRenderer } from '@rakun-kit/react'
27
32
 
28
- const registry = createModuleRegistryFromGlob(
29
- import.meta.glob("./modules/*.{tsx,jsx}"),
30
- );
33
+ const registry = createModuleRegistryFromGlob(import.meta.glob('./modules/*.{tsx,jsx}'))
31
34
 
32
35
  export function Page({ modules }) {
33
- return <ModuleRenderer modules={modules} registry={registry} />;
36
+ return <ModuleRenderer modules={modules} registry={registry} />
34
37
  }
35
38
  ```
36
39
 
@@ -40,29 +43,21 @@ matches a Rakun module with `_type: "Hero"`.
40
43
  For nested folders or custom names:
41
44
 
42
45
  ```tsx
43
- const registry = createModuleRegistryFromGlob(
44
- import.meta.glob("./modules/**/*.tsx"),
45
- {
46
- getName: (path) => path.split("/").at(-2),
47
- },
48
- );
46
+ const registry = createModuleRegistryFromGlob(import.meta.glob('./modules/**/*.tsx'), {
47
+ getName: (path) => path.split('/').at(-2),
48
+ })
49
49
  ```
50
50
 
51
51
  With Next, keep the dynamic import inside a client module when using
52
52
  `ModuleRenderer`:
53
53
 
54
54
  ```tsx
55
- "use client";
55
+ 'use client'
56
56
 
57
- import { ModuleRenderer } from "@rakun-kit/react";
57
+ import { ModuleRenderer } from '@rakun-kit/react'
58
58
 
59
59
  export function Page({ modules }) {
60
- return (
61
- <ModuleRenderer
62
- modules={modules}
63
- loadModule={(name) => import(`@/modules/${name}`)}
64
- />
65
- );
60
+ return <ModuleRenderer modules={modules} loadModule={(name) => import(`@/modules/${name}`)} />
66
61
  }
67
62
  ```
68
63
 
@@ -71,20 +66,15 @@ For nested modules rendered by a React Server Component, use
71
66
  does not cross a server-to-client boundary:
72
67
 
73
68
  ```tsx
74
- import { ServerModuleRenderer } from "@rakun-kit/react";
69
+ import { ServerModuleRenderer } from '@rakun-kit/react'
75
70
 
76
71
  export default async function SectionLayout({ blocks = [] }) {
77
72
  const modules = blocks.map(({ name, value }) => ({
78
73
  ...value,
79
74
  _type: name,
80
- }));
75
+ }))
81
76
 
82
- return (
83
- <ServerModuleRenderer
84
- modules={modules}
85
- loadModule={(name) => import(`./${name}`)}
86
- />
87
- );
77
+ return <ServerModuleRenderer modules={modules} loadModule={(name) => import(`./${name}`)} />
88
78
  }
89
79
  ```
90
80
 
@@ -92,6 +82,12 @@ Use the client `ModuleRenderer` when viewport lazy loading or client-side module
92
82
  loading is required. `ServerModuleRenderer` also accepts a `registry` and a
93
83
  `missing` renderer, but intentionally has no client-only lazy-loading props.
94
84
 
85
+ Both renderers handle Rakun's built-in `StructuredData` module without a loader
86
+ entry and emit a safely escaped `application/ld+json` script. An explicit
87
+ registry entry named `StructuredData` overrides the native renderer. The package
88
+ also exports `StructuredData`, `buildStructuredData`, and `serializeJsonLd` for
89
+ direct use.
90
+
95
91
  Web plugins package module registries that the application explicitly merges:
96
92
 
97
93
  ```tsx
@@ -125,7 +121,7 @@ dynamic import from inside the application bundle.
125
121
  Use `PageLayoutRenderer` when Rakun returns layout slots:
126
122
 
127
123
  ```tsx
128
- import { PageLayoutRenderer } from "@rakun-kit/react";
124
+ import { PageLayoutRenderer } from '@rakun-kit/react'
129
125
 
130
126
  export function Page({ page }) {
131
127
  return (
@@ -134,9 +130,20 @@ export function Page({ page }) {
134
130
  loadModule={(name) => import(`@/modules/${name}`)}
135
131
  renderContent={({ children }) => <main>{children}</main>}
136
132
  />
137
- );
133
+ )
138
134
  }
139
135
  ```
140
136
 
141
137
  Given a layout like `header -> content -> footer`, only the content modules are
142
138
  wrapped in `<main>`.
139
+
140
+ Media returned by Rakun can be rendered with the package's `Image` and `Video`
141
+ components. `Video` puts WebM before MP4, allowing the browser to prefer WebM
142
+ when it is supported and fall back to MP4 otherwise:
143
+
144
+ ```tsx
145
+ import { Image, Video } from '@rakun-kit/react'
146
+
147
+ <Image image={hero.image} sizes="100vw" />
148
+ <Video video={hero.video} controls playsInline />
149
+ ```
package/dist/cjs/Image.js CHANGED
@@ -4,33 +4,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.Image = void 0;
5
5
  exports.RakunImage = RakunImage;
6
6
  const jsx_runtime_1 = require("react/jsx-runtime");
7
- const encodeMediaPath = (value) => value
8
- .split("/")
9
- .filter(Boolean)
10
- .map((part) => encodeURIComponent(part))
11
- .join("/");
12
- const joinUrlPath = (baseUrl, pathname) => {
13
- const normalizedPath = pathname.startsWith("/") ? pathname : `/${pathname}`;
14
- if (!baseUrl)
15
- return normalizedPath;
16
- return `${baseUrl.replace(/\/$/, "")}${normalizedPath}`;
17
- };
18
- const resolvePublicMediaUrl = ({ key, access, mediaBaseUrl, mediaPublicPath, }) => {
19
- if (!key || access === "private")
20
- return undefined;
21
- const publicKey = key.startsWith("public/")
22
- ? key.slice("public/".length)
23
- : key;
24
- const encodedKey = encodeMediaPath(publicKey);
25
- if (!encodedKey)
26
- return undefined;
27
- return joinUrlPath(mediaBaseUrl, `${mediaPublicPath}/${encodedKey}`);
28
- };
7
+ const react_1 = require("react");
8
+ const mediaUrl_1 = require("./mediaUrl.js");
29
9
  const buildSrcSet = ({ src, width, sizes, access, mediaBaseUrl, mediaPublicPath, includeOriginal, }) => {
30
10
  const entries = (sizes ?? [])
31
11
  .map((size) => ({
32
12
  url: size.url ||
33
- resolvePublicMediaUrl({
13
+ (0, mediaUrl_1.resolvePublicMediaUrl)({
34
14
  key: size.key,
35
15
  access,
36
16
  mediaBaseUrl,
@@ -57,18 +37,18 @@ const buildSrcSet = ({ src, width, sizes, access, mediaBaseUrl, mediaPublicPath,
57
37
  .join(", ");
58
38
  return srcSet || undefined;
59
39
  };
60
- function RakunImage({ image, src, previewSrc, fallbackSrc, usePreview = false, alt, title, width, height, sizes = "100vw", imageSizes, srcSet, mediaBaseUrl, mediaPublicPath = "/media/public", includeOriginalInSrcSet = true, priority = false, loading = "lazy", decoding = "async", style, ...imgProps }) {
40
+ function RakunImage({ image, src, previewSrc, fallbackSrc, usePreview = false, alt, title, width, height, sizes = "100vw", imageSizes, srcSet, mediaBaseUrl, mediaPublicPath = "/media/public", includeOriginalInSrcSet = true, priority = false, loading = "lazy", decoding = "async", style, onLoad, ...imgProps }) {
61
41
  const resolvedImgProps = {
62
42
  ...imgProps,
63
43
  ...(priority ? { fetchPriority: "high" } : {}),
64
44
  };
65
- const resolvedOriginalFromKey = resolvePublicMediaUrl({
45
+ const resolvedOriginalFromKey = (0, mediaUrl_1.resolvePublicMediaUrl)({
66
46
  key: image?.key,
67
47
  access: image?.access,
68
48
  mediaBaseUrl,
69
49
  mediaPublicPath,
70
50
  });
71
- const resolvedPreviewFromKey = resolvePublicMediaUrl({
51
+ const resolvedPreviewFromKey = (0, mediaUrl_1.resolvePublicMediaUrl)({
72
52
  key: image?.previewKey,
73
53
  access: image?.access,
74
54
  mediaBaseUrl,
@@ -100,14 +80,35 @@ function RakunImage({ image, src, previewSrc, fallbackSrc, usePreview = false, a
100
80
  resolvedPreviewSrc.startsWith("data:")
101
81
  ? resolvedPreviewSrc
102
82
  : undefined;
103
- return ((0, jsx_runtime_1.jsx)("img", { ...resolvedImgProps, src: resolvedSrc, srcSet: responsiveSrcSet || undefined, sizes: responsiveSrcSet ? sizes : undefined, alt: alt ?? image?.alt ?? image?.title ?? image?.name ?? "", title: title ?? image?.title ?? undefined, width: resolvedWidth ?? undefined, height: resolvedHeight ?? undefined, loading: priority ? "eager" : loading, decoding: decoding, style: inlinePreviewSrc
104
- ? {
105
- ...style,
106
- backgroundImage: `url("${inlinePreviewSrc}")`,
107
- backgroundSize: "cover",
108
- backgroundPosition: "center",
109
- }
110
- : style }));
83
+ const imageRef = (0, react_1.useRef)(null);
84
+ const [loadedSrc, setLoadedSrc] = (0, react_1.useState)();
85
+ const isLoaded = !!resolvedSrc && loadedSrc === resolvedSrc;
86
+ (0, react_1.useEffect)(() => {
87
+ const element = imageRef.current;
88
+ if (resolvedSrc && element?.complete && element.naturalWidth > 0) {
89
+ setLoadedSrc(resolvedSrc);
90
+ }
91
+ }, [resolvedSrc]);
92
+ const previewStyle = inlinePreviewSrc
93
+ ? {
94
+ ...style,
95
+ backgroundImage: isLoaded
96
+ ? style?.backgroundImage
97
+ : `url("${inlinePreviewSrc}")`,
98
+ backgroundSize: isLoaded ? style?.backgroundSize : "cover",
99
+ backgroundPosition: isLoaded ? style?.backgroundPosition : "center",
100
+ filter: isLoaded
101
+ ? style?.filter
102
+ : [style?.filter, "blur(20px)"].filter(Boolean).join(" "),
103
+ transition: [style?.transition, "filter 250ms ease-out"]
104
+ .filter(Boolean)
105
+ .join(", "),
106
+ }
107
+ : style;
108
+ return ((0, jsx_runtime_1.jsx)("img", { ref: imageRef, ...resolvedImgProps, src: resolvedSrc, srcSet: responsiveSrcSet || undefined, sizes: responsiveSrcSet ? sizes : undefined, alt: alt ?? image?.alt ?? image?.title ?? image?.name ?? "", title: title ?? image?.title ?? undefined, width: resolvedWidth ?? undefined, height: resolvedHeight ?? undefined, loading: priority ? "eager" : loading, decoding: decoding, style: previewStyle, onLoad: (event) => {
109
+ setLoadedSrc(resolvedSrc);
110
+ onLoad?.(event);
111
+ } }));
111
112
  }
112
113
  exports.Image = RakunImage;
113
114
  //# sourceMappingURL=Image.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Image.js","sourceRoot":"","sources":["../../src/Image.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;AAsJb,gCA6FC;;AA5LD,MAAM,eAAe,GAAG,CAAC,KAAa,EAAU,EAAE,CAChD,KAAK;KACF,KAAK,CAAC,GAAG,CAAC;KACV,MAAM,CAAC,OAAO,CAAC;KACf,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;KACvC,IAAI,CAAC,GAAG,CAAC,CAAC;AAEf,MAAM,WAAW,GAAG,CAAC,OAAkC,EAAE,QAAgB,EAAE,EAAE;IAC3E,MAAM,cAAc,GAAG,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,QAAQ,EAAE,CAAC;IAE5E,IAAI,CAAC,OAAO;QAAE,OAAO,cAAc,CAAC;IAEpC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,cAAc,EAAE,CAAC;AAC1D,CAAC,CAAC;AAEF,MAAM,qBAAqB,GAAG,CAAC,EAC7B,GAAG,EACH,MAAM,EACN,YAAY,EACZ,eAAe,GAMhB,EAAsB,EAAE;IACvB,IAAI,CAAC,GAAG,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAEnD,MAAM,SAAS,GAAG,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC;QACzC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC;QAC7B,CAAC,CAAC,GAAG,CAAC;IACR,MAAM,UAAU,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC;IAE9C,IAAI,CAAC,UAAU;QAAE,OAAO,SAAS,CAAC;IAElC,OAAO,WAAW,CAAC,YAAY,EAAE,GAAG,eAAe,IAAI,UAAU,EAAE,CAAC,CAAC;AACvE,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,EACnB,GAAG,EACH,KAAK,EACL,KAAK,EACL,MAAM,EACN,YAAY,EACZ,eAAe,EACf,eAAe,GAShB,EAAsB,EAAE;IACvB,MAAM,OAAO,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;SAC1B,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACd,GAAG,EACD,IAAI,CAAC,GAAG;YACR,qBAAqB,CAAC;gBACpB,GAAG,EAAE,IAAI,CAAC,GAAG;gBACb,MAAM;gBACN,YAAY;gBACZ,eAAe;aAChB,CAAC;QACJ,KAAK,EAAE,IAAI,CAAC,KAAK;KAClB,CAAC,CAAC;SACF,MAAM,CACL,CAAC,IAAI,EAA0C,EAAE,CAC/C,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC,CAC9D;SACA,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACd,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;KAC9B,CAAC,CAAC,CAAC;IAEN,IACE,eAAe;QACf,GAAG;QACH,KAAK;QACL,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;QACtB,KAAK,GAAG,CAAC;QACT,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,KAAK,KAAK,CAAC,EAC/C,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACvD,CAAC;IAED,MAAM,MAAM,GAAG,OAAO;SACnB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;SACjC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC,KAAK,GAAG,CAAC;SAC9C,IAAI,CAAC,IAAI,CAAC,CAAC;IAEd,OAAO,MAAM,IAAI,SAAS,CAAC;AAC7B,CAAC,CAAC;AAEF,SAAgB,UAAU,CAAC,EACzB,KAAK,EACL,GAAG,EACH,UAAU,EACV,WAAW,EACX,UAAU,GAAG,KAAK,EAClB,GAAG,EACH,KAAK,EACL,KAAK,EACL,MAAM,EACN,KAAK,GAAG,OAAO,EACf,UAAU,EACV,MAAM,EACN,YAAY,EACZ,eAAe,GAAG,eAAe,EACjC,uBAAuB,GAAG,IAAI,EAC9B,QAAQ,GAAG,KAAK,EAChB,OAAO,GAAG,MAAM,EAChB,QAAQ,GAAG,OAAO,EAClB,KAAK,EACL,GAAG,QAAQ,EACK;IAChB,MAAM,gBAAgB,GAAsB;QAC1C,GAAG,QAAQ;QACX,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,MAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACxD,CAAC;IACF,MAAM,uBAAuB,GAAG,qBAAqB,CAAC;QACpD,GAAG,EAAE,KAAK,EAAE,GAAG;QACf,MAAM,EAAE,KAAK,EAAE,MAAM;QACrB,YAAY;QACZ,eAAe;KAChB,CAAC,CAAC;IACH,MAAM,sBAAsB,GAAG,qBAAqB,CAAC;QACnD,GAAG,EAAE,KAAK,EAAE,UAAU;QACtB,MAAM,EAAE,KAAK,EAAE,MAAM;QACrB,YAAY;QACZ,eAAe;KAChB,CAAC,CAAC;IACH,MAAM,WAAW,GACf,GAAG,IAAI,KAAK,EAAE,GAAG,IAAI,uBAAuB,IAAI,WAAW,IAAI,SAAS,CAAC;IAC3E,MAAM,kBAAkB,GACtB,UAAU,IAAI,KAAK,EAAE,UAAU,IAAI,sBAAsB,IAAI,SAAS,CAAC;IACzE,MAAM,WAAW,GAAG,UAAU;QAC5B,CAAC,CAAC,CAAC,kBAAkB,IAAI,WAAW,CAAC;QACrC,CAAC,CAAC,WAAW,CAAC;IAChB,MAAM,aAAa,GAAG,KAAK,IAAI,KAAK,EAAE,KAAK,IAAI,SAAS,CAAC;IACzD,MAAM,cAAc,GAAG,MAAM,IAAI,KAAK,EAAE,MAAM,IAAI,SAAS,CAAC;IAC5D,MAAM,YAAY,GAChB,OAAO,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC;IACnE,MAAM,gBAAgB,GAAG,UAAU;QACjC,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,CAAC,MAAM;YACP,KAAK,EAAE,MAAM;YACb,WAAW,CAAC;gBACV,GAAG,EAAE,WAAW;gBAChB,KAAK,EAAE,YAAY;gBACnB,KAAK,EAAE,UAAU,IAAI,KAAK,EAAE,KAAK;gBACjC,MAAM,EAAE,KAAK,EAAE,MAAM;gBACrB,YAAY;gBACZ,eAAe;gBACf,eAAe,EAAE,uBAAuB;aACzC,CAAC,CAAC,CAAC;IACR,MAAM,gBAAgB,GACpB,CAAC,UAAU;QACX,kBAAkB;QAClB,kBAAkB,CAAC,UAAU,CAAC,OAAO,CAAC;QACpC,CAAC,CAAC,kBAAkB;QACpB,CAAC,CAAC,SAAS,CAAC;IAEhB,OAAO,CACL,mCACM,gBAAgB,EACpB,GAAG,EAAE,WAAW,EAChB,MAAM,EAAE,gBAAgB,IAAI,SAAS,EACrC,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,EAC3C,GAAG,EAAE,GAAG,IAAI,KAAK,EAAE,GAAG,IAAI,KAAK,EAAE,KAAK,IAAI,KAAK,EAAE,IAAI,IAAI,EAAE,EAC3D,KAAK,EAAE,KAAK,IAAI,KAAK,EAAE,KAAK,IAAI,SAAS,EACzC,KAAK,EAAE,aAAa,IAAI,SAAS,EACjC,MAAM,EAAE,cAAc,IAAI,SAAS,EACnC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EACrC,QAAQ,EAAE,QAAQ,EAClB,KAAK,EACH,gBAAgB;YACd,CAAC,CAAC;gBACE,GAAG,KAAK;gBACR,eAAe,EAAE,QAAQ,gBAAgB,IAAI;gBAC7C,cAAc,EAAE,OAAO;gBACvB,kBAAkB,EAAE,QAAQ;aAC7B;YACH,CAAC,CAAC,KAAK,GAEX,CACH,CAAC;AACJ,CAAC;AAEY,QAAA,KAAK,GAAG,UAAU,CAAC"}
1
+ {"version":3,"file":"Image.js","sourceRoot":"","sources":["../../src/Image.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ 'use client';
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.JsonViewer = JsonViewer;
5
+ const jsx_runtime_1 = require("react/jsx-runtime");
6
+ const react_1 = require("react");
7
+ const defaultTheme = {
8
+ foreground: 'currentColor',
9
+ muted: '#8f99a3',
10
+ accent: '#49d17d',
11
+ border: 'rgba(127, 127, 127, 0.28)',
12
+ hover: 'rgba(127, 127, 127, 0.12)',
13
+ };
14
+ const isObject = (value) => typeof value === 'object' && value !== null;
15
+ const getEntries = (value) => Array.isArray(value)
16
+ ? value.map((item, index) => [String(index), item])
17
+ : Object.entries(value);
18
+ const formatPrimitive = (value) => {
19
+ if (typeof value === 'string')
20
+ return JSON.stringify(value);
21
+ if (typeof value === 'number' || typeof value === 'boolean')
22
+ return String(value);
23
+ if (value === null)
24
+ return 'null';
25
+ if (value === undefined)
26
+ return 'undefined';
27
+ return String(value);
28
+ };
29
+ const Chevron = ({ open, color }) => ((0, jsx_runtime_1.jsx)("svg", { "aria-hidden": "true", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", style: {
30
+ width: 16,
31
+ height: 16,
32
+ flexShrink: 0,
33
+ color,
34
+ transform: open ? 'rotate(90deg)' : undefined,
35
+ transition: 'transform 140ms ease',
36
+ }, children: (0, jsx_runtime_1.jsx)("path", { d: "m9 18 6-6-6-6" }) }));
37
+ const JsonNode = ({ name, value, depth, isLast = true, defaultExpandedDepth, theme, }) => {
38
+ const [open, setOpen] = (0, react_1.useState)(depth <= defaultExpandedDepth);
39
+ const [hovered, setHovered] = (0, react_1.useState)(false);
40
+ const entries = isObject(value) ? getEntries(value) : [];
41
+ const expandable = entries.length > 0;
42
+ const array = Array.isArray(value);
43
+ const openToken = array ? '[' : '{';
44
+ const closeToken = array ? ']' : '}';
45
+ const suffix = isLast ? '' : ',';
46
+ const collapsedToken = `${openToken}...${closeToken}${suffix}`;
47
+ const nameLabel = name === undefined ? null : ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("span", { style: { color: theme.foreground }, children: JSON.stringify(name) }), (0, jsx_runtime_1.jsx)("span", { style: { color: theme.muted }, children: ": " })] }));
48
+ if (!expandable) {
49
+ const emptyCollection = isObject(value) ? `${openToken}${closeToken}` : null;
50
+ return ((0, jsx_runtime_1.jsx)("div", { style: { display: 'flex', minWidth: 0, paddingLeft: 16 }, children: (0, jsx_runtime_1.jsxs)("span", { style: { minWidth: 0, overflowWrap: 'anywhere' }, children: [nameLabel, (0, jsx_runtime_1.jsx)("span", { style: { color: theme.accent }, children: emptyCollection ?? formatPrimitive(value) }), (0, jsx_runtime_1.jsx)("span", { style: { color: theme.muted }, children: suffix })] }) }));
51
+ }
52
+ return ((0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsxs)("button", { type: "button", "aria-expanded": open, onClick: () => setOpen((value) => !value), onMouseEnter: () => setHovered(true), onMouseLeave: () => setHovered(false), style: {
53
+ display: 'flex',
54
+ alignItems: 'center',
55
+ width: '100%',
56
+ minWidth: 0,
57
+ padding: 0,
58
+ border: 0,
59
+ borderRadius: 3,
60
+ background: hovered ? theme.hover : 'transparent',
61
+ color: 'inherit',
62
+ font: 'inherit',
63
+ lineHeight: 'inherit',
64
+ textAlign: 'left',
65
+ cursor: 'pointer',
66
+ }, children: [(0, jsx_runtime_1.jsx)(Chevron, { open: open, color: theme.muted }), (0, jsx_runtime_1.jsxs)("span", { style: { minWidth: 0, overflowWrap: 'anywhere' }, children: [nameLabel, (0, jsx_runtime_1.jsx)("span", { style: { color: theme.muted }, children: open ? openToken : collapsedToken })] })] }), open ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("div", { style: {
67
+ marginLeft: 8,
68
+ paddingLeft: 12,
69
+ borderLeft: `1px solid ${theme.border}`,
70
+ }, children: entries.map(([key, child], index) => ((0, jsx_runtime_1.jsx)(JsonNode, { name: key, value: child, depth: depth + 1, isLast: index === entries.length - 1, defaultExpandedDepth: defaultExpandedDepth, theme: theme }, key))) }), (0, jsx_runtime_1.jsxs)("div", { style: { marginLeft: 8, color: theme.muted }, children: [closeToken, suffix] })] })) : null] }));
71
+ };
72
+ function JsonViewer({ value, className, style, defaultExpandedDepth = 0, theme: themeOverrides, }) {
73
+ const theme = { ...defaultTheme, ...themeOverrides };
74
+ return ((0, jsx_runtime_1.jsx)("div", { className: className, style: { minWidth: 0, ...style }, children: (0, jsx_runtime_1.jsx)(JsonNode, { value: value, depth: 0, defaultExpandedDepth: defaultExpandedDepth, theme: theme }) }));
75
+ }
76
+ //# sourceMappingURL=JsonViewer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JsonViewer.js","sourceRoot":"","sources":["../../src/JsonViewer.tsx"],"names":[],"mappings":"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"}
@@ -7,6 +7,7 @@ const jsx_runtime_1 = require("react/jsx-runtime");
7
7
  const react_1 = require("react");
8
8
  const web_1 = require("@rakun-kit/core/web");
9
9
  const ErrorBoundary_1 = require("./ErrorBoundary.js");
10
+ const builtin_modules_1 = require("./builtin-modules.js");
10
11
  const LazyViewport_1 = require("./LazyViewport.js");
11
12
  const pageInfoStore_1 = require("./pageInfoStore.js");
12
13
  const registry_1 = require("./registry.js");
@@ -32,6 +33,10 @@ function getLazyComponent(load) {
32
33
  }
33
34
  function ModuleView({ module, index, registry, loadModule, fallback, missing, }) {
34
35
  const entry = registry?.[module._type];
36
+ const BuiltinComponent = entry ? null : (0, builtin_modules_1.getRakunBuiltinModuleComponent)(module._type);
37
+ if (BuiltinComponent) {
38
+ return (0, jsx_runtime_1.jsx)(BuiltinComponent, { ...module });
39
+ }
35
40
  if (!entry && !loadModule) {
36
41
  return missing?.({ module, index }) ?? null;
37
42
  }
@@ -67,7 +72,7 @@ function ModuleRenderer({ modules, page, layout, registry, loadModule, fallback,
67
72
  const render = () => ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: entries.map((entry) => {
68
73
  return ((0, jsx_runtime_1.jsx)(RenderModule, { module: entry.module, index: entry.index, entry: entry, registry: registry, loadModule: loadModule, fallback: fallback, missing: missing, error: error, lazyByViewport: lazyByViewport, eager: eager, rootMargin: rootMargin, threshold: threshold, getKey: getKey }, `${entry.module._id}:${entry.index}`));
69
74
  }) }));
70
- return page ? (0, pageInfoStore_1.runWithPageInfo)(page.info, render) : render();
75
+ return page ? (0, pageInfoStore_1.runWithPageInfo)(page.info, render, page.literals) : render();
71
76
  }
72
77
  function PageLayoutRenderer({ modules, page, layout, registry, loadModule, fallback, missing, error, eager = 3, lazy: lazyByViewport = true, rootMargin, threshold, getKey = defaultGetKey, renderContent = ({ children }) => (0, jsx_runtime_1.jsx)("main", { children: children }), }) {
73
78
  const source = (0, react_1.useMemo)(() => layout ??
@@ -110,6 +115,6 @@ function PageLayoutRenderer({ modules, page, layout, registry, loadModule, fallb
110
115
  index: layoutIndex,
111
116
  }) }, `content:${layoutIndex}`));
112
117
  }) }));
113
- return page ? (0, pageInfoStore_1.runWithPageInfo)(page.info, render) : render();
118
+ return page ? (0, pageInfoStore_1.runWithPageInfo)(page.info, render, page.literals) : render();
114
119
  }
115
120
  //# sourceMappingURL=ModuleRenderer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ModuleRenderer.js","sourceRoot":"","sources":["../../src/ModuleRenderer.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ModuleRenderer.js","sourceRoot":"","sources":["../../src/ModuleRenderer.tsx"],"names":[],"mappings":"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"}
@@ -1,18 +1,21 @@
1
1
  "use strict";
2
2
  'use client';
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.useClientPageInfo = void 0;
4
+ exports.useClientPageLiterals = exports.useClientPageInfo = void 0;
5
5
  exports.PageInfoClientProvider = PageInfoClientProvider;
6
6
  const jsx_runtime_1 = require("react/jsx-runtime");
7
7
  const react_1 = require("react");
8
8
  const pageInfoStore_1 = require("./pageInfoStore.js");
9
- const PageInfoContext = (0, react_1.createContext)(undefined);
10
- function PageInfoClientProvider({ value, children, }) {
9
+ const PageRuntimeContext = (0, react_1.createContext)({ info: undefined, literals: undefined });
10
+ function PageInfoClientProvider({ value, literals, children, }) {
11
11
  (0, react_1.useEffect)(() => {
12
12
  (0, pageInfoStore_1.setCurrentPageInfo)(value);
13
- }, [value]);
14
- return ((0, jsx_runtime_1.jsx)(PageInfoContext.Provider, { value: value, children: children }));
13
+ (0, pageInfoStore_1.setCurrentPageLiterals)(literals);
14
+ }, [value, literals]);
15
+ return ((0, jsx_runtime_1.jsx)(PageRuntimeContext.Provider, { value: { info: value, literals }, children: children }));
15
16
  }
16
- const useClientPageInfo = () => (0, react_1.useContext)(PageInfoContext);
17
+ const useClientPageInfo = () => (0, react_1.useContext)(PageRuntimeContext).info;
17
18
  exports.useClientPageInfo = useClientPageInfo;
19
+ const useClientPageLiterals = () => (0, react_1.useContext)(PageRuntimeContext).literals;
20
+ exports.useClientPageLiterals = useClientPageLiterals;
18
21
  //# sourceMappingURL=PageInfoClientProvider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PageInfoClientProvider.js","sourceRoot":"","sources":["../../src/PageInfoClientProvider.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAA;;;AAQZ,wDAgBC;;AAtBD,iCAA4E;AAE5E,mDAAmE;AAEnE,MAAM,eAAe,GAAG,IAAA,qBAAa,EAAW,SAAS,CAAC,CAAA;AAE1D,SAAgB,sBAAsB,CAAC,EACrC,KAAK,EACL,QAAQ,GAIT;IACC,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IAAA,kCAAkB,EAAC,KAAK,CAAC,CAAA;IAC3B,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAA;IAEX,OAAO,CACL,uBAAC,eAAe,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,YACnC,QAAQ,GACgB,CAC5B,CAAA;AACH,CAAC;AAEM,MAAM,iBAAiB,GAAG,GAAa,EAAE,CAAC,IAAA,kBAAU,EAAC,eAAe,CAAC,CAAA;AAA/D,QAAA,iBAAiB,qBAA8C"}
1
+ {"version":3,"file":"PageInfoClientProvider.js","sourceRoot":"","sources":["../../src/PageInfoClientProvider.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAA;;;AAgBZ,wDAmBC;;AAjCD,iCAA4E;AAE5E,mDAKwB;AAExB,MAAM,kBAAkB,GAAG,IAAA,qBAAa,EAGrC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAA;AAE5C,SAAgB,sBAAsB,CAAC,EACrC,KAAK,EACL,QAAQ,EACR,QAAQ,GAKT;IACC,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IAAA,kCAAkB,EAAC,KAAK,CAAC,CAAA;QACzB,IAAA,sCAAsB,EAAC,QAAQ,CAAC,CAAA;IAClC,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAA;IAErB,OAAO,CACL,uBAAC,kBAAkB,CAAC,QAAQ,IAAC,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,YAC1D,QAAQ,GACmB,CAC/B,CAAA;AACH,CAAC;AAEM,MAAM,iBAAiB,GAAG,GAAa,EAAE,CAAC,IAAA,kBAAU,EAAC,kBAAkB,CAAC,CAAC,IAAI,CAAA;AAAvE,QAAA,iBAAiB,qBAAsD;AAC7E,MAAM,qBAAqB,GAAG,GAAiB,EAAE,CACtD,IAAA,kBAAU,EAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAA;AAD5B,QAAA,qBAAqB,yBACO"}
@@ -4,11 +4,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.PageInfoClientSync = PageInfoClientSync;
5
5
  const react_1 = require("react");
6
6
  function PageInfoClientSync(props) {
7
- const { value } = props;
7
+ const { value, literals } = props;
8
8
  (0, react_1.useEffect)(() => {
9
9
  ;
10
10
  window.__CMS_PAGE_INFO__ = value;
11
- }, [value]);
11
+ window.__CMS_PAGE_LITERALS__ = literals;
12
+ }, [value, literals]);
12
13
  return null;
13
14
  }
14
15
  //# sourceMappingURL=PageInfoClientSync.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PageInfoClientSync.js","sourceRoot":"","sources":["../../src/PageInfoClientSync.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAA;;AAQZ,gDAUC;AAhBD,iCAAiC;AAMjC,SAAgB,kBAAkB,CAAC,KAElC;IACC,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAA;IAEvB,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,CAAC;QAAC,MAAwB,CAAC,iBAAiB,GAAG,KAAK,CAAA;IACtD,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAA;IAEX,OAAO,IAAI,CAAA;AACb,CAAC"}
1
+ {"version":3,"file":"PageInfoClientSync.js","sourceRoot":"","sources":["../../src/PageInfoClientSync.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAA;;AASZ,gDAYC;AAnBD,iCAAiC;AAOjC,SAAgB,kBAAkB,CAAC,KAGlC;IACC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAA;IAEjC,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,CAAC;QAAC,MAAwB,CAAC,iBAAiB,GAAG,KAAK,CACnD;QAAC,MAAwB,CAAC,qBAAqB,GAAG,QAAQ,CAAA;IAC7D,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAA;IAErB,OAAO,IAAI,CAAA;AACb,CAAC"}
@@ -14,12 +14,16 @@ const pageInfoScriptEscapes = {
14
14
  };
15
15
  const serializePageInfo = (value) => JSON.stringify(value ?? null).replace(/[<>&\u2028\u2029]/g, (char) => pageInfoScriptEscapes[char] ?? char);
16
16
  function PageInfoProvider(props) {
17
- const { value, children } = props;
17
+ const { value, literals, children } = props;
18
18
  const serializedValue = serializePageInfo(value);
19
+ const serializedLiterals = serializePageInfo(literals);
19
20
  (0, pageInfoStore_1.setCurrentPageInfo)(value);
21
+ (0, pageInfoStore_1.setCurrentPageLiterals)(literals);
20
22
  return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("template", { "data-rakun-page-info": "", dangerouslySetInnerHTML: {
21
23
  __html: serializedValue,
22
- } }), (0, jsx_runtime_1.jsx)(PageInfoClientProvider_1.PageInfoClientProvider, { value: value, children: children })] }));
24
+ } }), (0, jsx_runtime_1.jsx)("template", { "data-rakun-page-literals": "", dangerouslySetInnerHTML: {
25
+ __html: serializedLiterals,
26
+ } }), (0, jsx_runtime_1.jsx)(PageInfoClientProvider_1.PageInfoClientProvider, { value: value, literals: literals, children: children })] }));
23
27
  }
24
28
  const usePageInfo = () => (0, pageInfoStore_1.getCurrentPageInfo)();
25
29
  exports.usePageInfo = usePageInfo;
@@ -1 +1 @@
1
- {"version":3,"file":"PageInfoProvider.js","sourceRoot":"","sources":["../../src/PageInfoProvider.tsx"],"names":[],"mappings":";;;AAmBA,4CAqBC;;AAtCD,qEAAiE;AACjE,mDAAwE;AAExE,MAAM,qBAAqB,GAA2B;IACpD,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,QAAQ,EAAE,SAAS;IACnB,QAAQ,EAAE,SAAS;CACpB,CAAA;AAED,MAAM,iBAAiB,GAAG,CAAC,KAA+B,EAAE,EAAE,CAC5D,IAAI,CAAC,SAAS,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,OAAO,CACnC,oBAAoB,EACpB,CAAC,IAAI,EAAE,EAAE,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,IAAI,CAC9C,CAAA;AAEH,SAAgB,gBAAgB,CAAC,KAGhC;IACC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAA;IACjC,MAAM,eAAe,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAA;IAChD,IAAA,kCAAkB,EAAC,KAAK,CAAC,CAAA;IAEzB,OAAO,CACL,6DACE,6DACuB,EAAE,EACvB,uBAAuB,EAAE;oBACvB,MAAM,EAAE,eAAe;iBACxB,GACD,EACF,uBAAC,+CAAsB,IAAC,KAAK,EAAE,KAAK,YACjC,QAAQ,GACc,IACxB,CACJ,CAAA;AACH,CAAC;AAEM,MAAM,WAAW,GAAG,GAAwC,EAAE,CACnE,IAAA,kCAAkB,GAAE,CAAA;AADT,QAAA,WAAW,eACF"}
1
+ {"version":3,"file":"PageInfoProvider.js","sourceRoot":"","sources":["../../src/PageInfoProvider.tsx"],"names":[],"mappings":";;;AAuBA,4CA8BC;;AAnDD,qEAAiE;AACjE,mDAIwB;AAExB,MAAM,qBAAqB,GAA2B;IACpD,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,QAAQ,EAAE,SAAS;IACnB,QAAQ,EAAE,SAAS;CACpB,CAAA;AAED,MAAM,iBAAiB,GAAG,CAAC,KAA+B,EAAE,EAAE,CAC5D,IAAI,CAAC,SAAS,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,OAAO,CACnC,oBAAoB,EACpB,CAAC,IAAI,EAAE,EAAE,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,IAAI,CAC9C,CAAA;AAEH,SAAgB,gBAAgB,CAAC,KAIhC;IACC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAA;IAC3C,MAAM,eAAe,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAA;IAChD,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAA;IACtD,IAAA,kCAAkB,EAAC,KAAK,CAAC,CAAA;IACzB,IAAA,sCAAsB,EAAC,QAAQ,CAAC,CAAA;IAEhC,OAAO,CACL,6DACE,6DACuB,EAAE,EACvB,uBAAuB,EAAE;oBACvB,MAAM,EAAE,eAAe;iBACxB,GACD,EACF,iEAC2B,EAAE,EAC3B,uBAAuB,EAAE;oBACvB,MAAM,EAAE,kBAAkB;iBAC3B,GACD,EACF,uBAAC,+CAAsB,IAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,YACrD,QAAQ,GACc,IACxB,CACJ,CAAA;AACH,CAAC;AAEM,MAAM,WAAW,GAAG,GAAwC,EAAE,CACnE,IAAA,kCAAkB,GAAE,CAAA;AADT,QAAA,WAAW,eACF"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RakunLogoBadge = exports.RakunLogoMark = void 0;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const bodyPath = 'M622.69,378.97l-7.87-3.27c-8.49-2.82-16.82-5.44-24.64-9.88l-22.98-13.04c-17.14-9.73-34.74-19.71-54.11-24.54-13.87-3.46-28.36-2.98-42.2.45l-.9.27c-.23.07-.42-.37-.27-.6.2-.33.69-.3.85-.38l8.05-4.02,9.27-4.78c13.66-7.04,25.7-16.06,36.58-26.94,8.18-8.18,14.85-17.02,20.53-27.03,3.79-6.67,8.26-12.5,13.47-18.17l-4.33-2.81c-14-11.56-22.5-26.25-28.21-43.37-1.87-5.61-3.05-10.92-4.32-16.68l-4.26-19.28c-2.2-9.94-5.7-19.07-9.62-28.56l7.08-19.51c4.88-13.43,7.12-27.12,8.05-41.45l.02-18.8-1.31-10.54c-.59-4.73-1.98-9.15-4.11-13.31-1.85-3.6-4.59-6.13-8.66-6.94-10.63-2.14-21.12-2.21-32.01-.83-19.54,2.49-37.75,9.83-53.96,20.91l-16,11.96c-26.1-10.6-53.13-17.06-81.14-18.57l-24.09-.03-16.85,1.27c-2.22.17-3.35.42-5.28-1.13C255.86,20.38,227.96,4.22,197.47.48c-4.42-.54-9.04-.75-13.36.09-10.59,2.08-18.5,25.14-20.88,36.51-3.54,16.94-4.22,34.01-2.8,51.26.27,3.25,1.12,6.38.48,9.55-2.38,11.98-14.39,23.73-24.4,30.61l-28.48,19.58c-10.37,7.13-19.72,14.99-28.87,23.7-32.27,30.74-55.23,70.67-67.66,113.35-19.49,66.93-14.14,138.48,15.51,201.59,8.15,17.34,18.25,33.78,29.7,49.26,14.51,19.62,31.63,36.7,50.67,51.91,16.82,13.43,34.94,24.72,54.12,34.49,34.07,17.36,70.62,28.79,108.49,34.07l33.6,3.13,24.47.26c22.33-.65,44-3.25,65.84-8.17,15.34-3.46,30.11-7.66,44.82-13.27,64.06-24.39,117.66-67.78,152.91-126.79,20.57-34.43,35.58-77.14,35.62-117.4,0-6.09.11-13.3-4.56-15.24ZM477.12,40.23c8.53-3.25,17.03-4.9,26.14-4.41,7.08.38,8.11,17.69,7.99,26.1-.28,20.21-5.54,39.84-14.69,57.75-3.12-4.92-3.05-10.13-1.78-15.31,2.4-9.75,4.27-19.32,5.25-29.29.67-6.75.95-22.02-1.09-24.14-.45-.47-1.18-.55-1.99-.34-11.93,3.09-22.52,8.77-32.55,15.89-6.21,4.41-11.95,8.82-16.93,14.85l-7.55-6.16-6.92-5.41c12.39-13.22,27.27-23.14,44.11-29.55ZM176.14,38.05c1.43-7.66,5.82-24.68,11.41-26.17,3.43-.91,6.95-.31,10.43.5,23.18,5.42,43.09,19.09,60.14,35.39l6.17,6.57-2.24,3.01-7.12,9.01-24.7-20.22c-8.6-6.19-17.43-11.4-27.3-15.18-3.18-1.22-6.26-1.84-10.01-2-2.89,3.46-4.18,7.47-5.13,11.67-4.2,18.65-3.26,38.53.7,57.22.39,1.84-.73,3.03-1.8,4.19l-4.18,4.52c-8.56-20.47-10.35-47.18-6.35-68.51ZM287.44,434.53c-3.38,31.27-12.53,61.31-27.96,88.68-9.16,16.25-20.47,30.8-34.46,43.12-14.37,12.65-31.12,21.63-49.85,26.4l-10.27,1.56c-10.31,1.57-20.24-.76-29.28-6.17-36.95-23.55-64.98-54.48-88.94-91.45,46.65,1.52,80.77-26.13,104.46-63.74,9.02-14.63,15.58-30.08,20.58-46.56,5.87-19.42,8.82-39.02,10.16-59.27l.13-31.61c20.26,12.94,41.59,22.91,64.28,30.31l17.04,6.09c9.4,3.36,17.4,21.2,20.13,32.02,5.81,23.08,6.54,46.9,3.97,70.63ZM292.73,320.91l-37.86-8.12,21.66-7.32,40.76-14.73c8.39-3.03,16.14-6.44,23.92-10.59,15.68-8.35,28.53-21.18,29.13-39.61.36-11.23-4.04-21.51-12.31-28.93-16.52-14.83-38.65-19.75-60.55-16.33-15.13,2.37-29,8.61-41.14,18.03l-28.03,24.47c-12.38,10.8-26.42,19.13-42.26,23.32l-10.66,2.82c4.43,6.63,9.54,12.44,15.81,17.41,7.89,6.96,16.67,11.56,25.82,17.58-11.79-3.76-22.02-10.12-32.42-16.47-20.63-12.6-38.09-28.85-52.05-49.08,18.69-6.46,35.22-16.92,48.92-30.83l14.12-15.47c14.68-16.44,30.36-31.96,50.9-40.65,36.27-15.36,77.99-10.38,107.43,16.3,9.62,8.71,16.63,19.38,21.61,31.43,8.23,19.93,5.75,36.57,11.03,52.05,3.37,9.9,9.45,18.42,17.8,24.69,4.43,2.91,8.94,5.11,13.71,7.2,6.72-3.41,13.42-5,21.45-5.31-5.84-5.82-8.74-12.44-9.8-20.3-1.41-10.42-.75-20.58,1.51-30.96,3.58-16.8,12.94-36.95,28.18-45.41,9.51-5.28,21.25-4.84,29.86,1.84,5.15,3.99,8.7,9.05,11.93,14.66l10.13,21.41c7.04,14.89,12.82,27.56,28.11,35.79-10.4,7.46-23.48,10.14-33.21,1.82-4.82-4.13-7.99-9.26-10.49-15.06-4.41-10.22-11.14-18.51-22.52-19.94-9.66-1.21-18.91,2.24-25.37,9.51-11.13,12.52-12.97,31.16-.16,43.04l13.43,10.05c3.36,2.51,6.83,4.75,9.45,8.02,7.12,8.93,7.29,20.5,1.64,30.56-3.97,7.07-8.93,12.65-14.51,18.27-4.65,4.68-9.49,9.28-15.82,11.66-8.72,3.28-18.06,4.21-27.32,3.6-8.42-.56-16.47-1.21-24.57-3.55l-29.86-8.62c-22.27-7.44-44.42-13.32-67.38-18.25ZM507.46,520.38c-1.46,15.25-4.66,29.61-10.37,43.71-6.61,16.32-17.24,32.81-32.42,42.5-8.57,5.47-17.03,10.04-26.28,13.96-25.91,10.98-52.89,17.8-80.85,21.19-17.42,2-34.32,2.87-52.29,2.21,10.54-4.68,20.38-9.8,28.95-17.48,12.4-11.1,22.42-24.01,30.55-38.54,7.03-12.68,12.93-25.35,17.35-39.19,6.16-19.3,10.19-38.66,11.57-58.92,2.44-35.88-.68-72.91-13.65-106.45-4.63-11.97-10.15-22.92-17.97-33.27l14.52,4.22c11.18,3.25,22.18,5.6,33.86,6.52l27.51.09c13.51,2.73,26.94,16.61,34.7,27.93,11.34,16.54,19.7,34.53,25.89,53.66,8.17,25.26,11.46,51.45,8.93,77.88Z';
6
+ const eyePath = 'M445.67,325.71c2.13.77,4.11,1.25,6.32.04,8.31-4.58,14.82-12.96,15.89-22.5.58-5.15-2.9-9.37-7.75-9.99-11.22-1.43-30.37,1.57-32.78,12.36-2.11,9.45,9.01,16.75,18.32,20.1Z';
7
+ const LogoPaths = () => ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("path", { d: bodyPath, fill: 'currentColor' }), (0, jsx_runtime_1.jsx)("path", { d: eyePath, fill: 'currentColor' })] }));
8
+ const RakunLogoMark = (props) => ((0, jsx_runtime_1.jsx)("svg", { "aria-hidden": 'true', focusable: 'false', viewBox: '0 0 627.26 659.83', xmlns: 'http://www.w3.org/2000/svg', ...props, children: (0, jsx_runtime_1.jsx)(LogoPaths, {}) }));
9
+ exports.RakunLogoMark = RakunLogoMark;
10
+ const RakunLogoBadge = (props) => ((0, jsx_runtime_1.jsxs)("svg", { "aria-hidden": 'true', focusable: 'false', viewBox: '0 0 974.13 974.13', xmlns: 'http://www.w3.org/2000/svg', ...props, children: [(0, jsx_runtime_1.jsx)("circle", { cx: '487.07', cy: '487.07', fill: '#fff', r: '487.07' }), (0, jsx_runtime_1.jsx)("g", { transform: 'translate(173.44 157.15)', children: (0, jsx_runtime_1.jsx)(LogoPaths, {}) })] }));
11
+ exports.RakunLogoBadge = RakunLogoBadge;
12
+ //# sourceMappingURL=RakunLogo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RakunLogo.js","sourceRoot":"","sources":["../../src/RakunLogo.tsx"],"names":[],"mappings":";;;;AAEA,MAAM,QAAQ,GACZ,8tIAA8tI,CAAA;AAEhuI,MAAM,OAAO,GACX,yKAAyK,CAAA;AAI3K,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC,CACtB,6DACE,iCAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAC,cAAc,GAAG,EACzC,iCAAM,CAAC,EAAE,OAAO,EAAE,IAAI,EAAC,cAAc,GAAG,IACvC,CACJ,CAAA;AAEM,MAAM,aAAa,GAAG,CAAC,KAAqB,EAAE,EAAE,CAAC,CACtD,+CACc,MAAM,EAClB,SAAS,EAAC,OAAO,EACjB,OAAO,EAAC,mBAAmB,EAC3B,KAAK,EAAC,4BAA4B,KAC9B,KAAK,YAET,uBAAC,SAAS,KAAG,GACT,CACP,CAAA;AAVY,QAAA,aAAa,iBAUzB;AAEM,MAAM,cAAc,GAAG,CAAC,KAAqB,EAAE,EAAE,CAAC,CACvD,gDACc,MAAM,EAClB,SAAS,EAAC,OAAO,EACjB,OAAO,EAAC,mBAAmB,EAC3B,KAAK,EAAC,4BAA4B,KAC9B,KAAK,aAET,mCAAQ,EAAE,EAAC,QAAQ,EAAC,EAAE,EAAC,QAAQ,EAAC,IAAI,EAAC,MAAM,EAAC,CAAC,EAAC,QAAQ,GAAG,EACzD,8BAAG,SAAS,EAAC,0BAA0B,YACrC,uBAAC,SAAS,KAAG,GACX,IACA,CACP,CAAA;AAbY,QAAA,cAAc,kBAa1B"}
@@ -3,11 +3,15 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ServerModuleRenderer = ServerModuleRenderer;
4
4
  const jsx_runtime_1 = require("react/jsx-runtime");
5
5
  const react_1 = require("react");
6
+ const builtin_modules_1 = require("./builtin-modules.js");
6
7
  const registry_1 = require("./registry.js");
7
8
  const defaultGetKey = ({ module, index, }) => `${module._id}:${index}`;
8
9
  const resolveComponent = async (module, registry, loadModule) => {
9
10
  const entry = registry?.[module._type];
10
11
  if (!entry) {
12
+ const BuiltinComponent = (0, builtin_modules_1.getRakunBuiltinModuleComponent)(module._type);
13
+ if (BuiltinComponent)
14
+ return BuiltinComponent;
11
15
  if (!loadModule)
12
16
  return null;
13
17
  const moduleImport = await loadModule(module._type);
@@ -1 +1 @@
1
- {"version":3,"file":"ServerModuleRenderer.js","sourceRoot":"","sources":["../../src/ServerModuleRenderer.tsx"],"names":[],"mappings":";;AAuDA,oDAyBC;;AAhFD,iCAAgD;AAEhD,yCAOmB;AAmBnB,MAAM,aAAa,GAAG,CAA6B,EACjD,MAAM,EACN,KAAK,GAC8B,EAAU,EAAE,CAAC,GAAG,MAAM,CAAC,GAAG,IAAI,KAAK,EAAE,CAAA;AAE1E,MAAM,gBAAgB,GAAG,KAAK,EAC5B,MAAe,EACf,QAAuC,EACvC,UAA+C,EACT,EAAE;IACxC,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IAEtC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,IAAI,CAAC,UAAU;YAAE,OAAO,IAAI,CAAA;QAE5B,MAAM,YAAY,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QACnD,OAAO,IAAA,8BAAmB,EAAC,YAAiC,CAAC,CAAC,SAAS,CAAA;IACzE,CAAC;IAED,MAAM,MAAM,GAAG,IAAA,4BAAiB,EAAC,KAAK,CAAC,CAAA;IACvC,IAAI,MAAM,CAAC,SAAS;QAAE,OAAO,MAAM,CAAC,SAAS,CAAA;IAC7C,IAAI,CAAC,MAAM,CAAC,IAAI;QAAE,OAAO,IAAI,CAAA;IAE7B,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAA;IACxC,OAAO,IAAA,8BAAmB,EAAC,YAAY,CAAC,CAAC,SAAS,CAAA;AACpD,CAAC,CAAA;AAEM,KAAK,UAAU,oBAAoB,CAExC,EACA,OAAO,GAAG,EAAE,EACZ,QAAQ,EACR,UAAU,EACV,OAAO,EACP,MAAM,GAAG,aAAa,GACa;IACnC,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAChC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE;QAClC,MAAM,GAAG,GAAG,MAAM,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAA;QACrC,MAAM,SAAS,GAAG,MAAM,gBAAgB,CAAC,MAAM,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAA;QAEtE,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,CACL,uBAAC,gBAAQ,cAAY,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,IAAI,IAAI,IAA1C,GAAG,CAAmD,CACtE,CAAA;QACH,CAAC;QAED,OAAO,uBAAC,SAAS,OAAe,MAAM,IAAf,GAAG,CAAgB,CAAA;IAC5C,CAAC,CAAC,CACH,CAAA;IAED,OAAO,uBAAC,gBAAQ,cAAE,QAAQ,GAAY,CAAA;AACxC,CAAC"}
1
+ {"version":3,"file":"ServerModuleRenderer.js","sourceRoot":"","sources":["../../src/ServerModuleRenderer.tsx"],"names":[],"mappings":";;AA2DA,oDAyBC;;AApFD,iCAAgD;AAEhD,uDAAkE;AAClE,yCAOmB;AAmBnB,MAAM,aAAa,GAAG,CAA6B,EACjD,MAAM,EACN,KAAK,GAC8B,EAAU,EAAE,CAAC,GAAG,MAAM,CAAC,GAAG,IAAI,KAAK,EAAE,CAAA;AAE1E,MAAM,gBAAgB,GAAG,KAAK,EAC5B,MAAe,EACf,QAAuC,EACvC,UAA+C,EACT,EAAE;IACxC,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IAEtC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,gBAAgB,GAAG,IAAA,gDAA8B,EAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QACrE,IAAI,gBAAgB;YAAE,OAAO,gBAAgB,CAAA;QAE7C,IAAI,CAAC,UAAU;YAAE,OAAO,IAAI,CAAA;QAE5B,MAAM,YAAY,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QACnD,OAAO,IAAA,8BAAmB,EAAC,YAAiC,CAAC,CAAC,SAAS,CAAA;IACzE,CAAC;IAED,MAAM,MAAM,GAAG,IAAA,4BAAiB,EAAC,KAAK,CAAC,CAAA;IACvC,IAAI,MAAM,CAAC,SAAS;QAAE,OAAO,MAAM,CAAC,SAAS,CAAA;IAC7C,IAAI,CAAC,MAAM,CAAC,IAAI;QAAE,OAAO,IAAI,CAAA;IAE7B,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAA;IACxC,OAAO,IAAA,8BAAmB,EAAC,YAAY,CAAC,CAAC,SAAS,CAAA;AACpD,CAAC,CAAA;AAEM,KAAK,UAAU,oBAAoB,CAExC,EACA,OAAO,GAAG,EAAE,EACZ,QAAQ,EACR,UAAU,EACV,OAAO,EACP,MAAM,GAAG,aAAa,GACa;IACnC,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAChC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE;QAClC,MAAM,GAAG,GAAG,MAAM,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAA;QACrC,MAAM,SAAS,GAAG,MAAM,gBAAgB,CAAC,MAAM,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAA;QAEtE,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,CACL,uBAAC,gBAAQ,cAAY,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,IAAI,IAAI,IAA1C,GAAG,CAAmD,CACtE,CAAA;QACH,CAAC;QAED,OAAO,uBAAC,SAAS,OAAe,MAAM,IAAf,GAAG,CAAgB,CAAA;IAC5C,CAAC,CAAC,CACH,CAAA;IAED,OAAO,uBAAC,gBAAQ,cAAE,QAAQ,GAAY,CAAA;AACxC,CAAC"}