@contember/react-richtext-renderer 2.1.0-alpha.37 → 2.1.0-alpha.39

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 (198) hide show
  1. package/dist/development/index.cjs +17 -0
  2. package/dist/development/index.cjs.map +1 -0
  3. package/dist/development/index.js +17 -0
  4. package/dist/development/index.js.map +1 -0
  5. package/dist/development/src/RichTextRendererError.cjs +6 -0
  6. package/dist/development/src/RichTextRendererError.cjs.map +1 -0
  7. package/dist/development/src/RichTextRendererError.js +6 -0
  8. package/dist/development/src/RichTextRendererError.js.map +1 -0
  9. package/dist/development/src/components/RichText.cjs +40 -0
  10. package/dist/development/src/components/RichText.cjs.map +1 -0
  11. package/dist/development/src/components/RichText.js +40 -0
  12. package/dist/development/src/components/RichText.js.map +1 -0
  13. package/dist/development/src/components/RichTextBlocksRenderer.cjs +42 -0
  14. package/dist/development/src/components/RichTextBlocksRenderer.cjs.map +1 -0
  15. package/dist/development/src/components/RichTextBlocksRenderer.js +42 -0
  16. package/dist/development/src/components/RichTextBlocksRenderer.js.map +1 -0
  17. package/dist/development/src/components/RichTextFieldRenderer.cjs +36 -0
  18. package/dist/development/src/components/RichTextFieldRenderer.cjs.map +1 -0
  19. package/dist/development/src/components/RichTextFieldRenderer.js +36 -0
  20. package/dist/development/src/components/RichTextFieldRenderer.js.map +1 -0
  21. package/dist/development/src/components/RichTextRenderer.cjs +22 -0
  22. package/dist/development/src/components/RichTextRenderer.cjs.map +1 -0
  23. package/dist/development/src/components/RichTextRenderer.js +22 -0
  24. package/dist/development/src/components/RichTextRenderer.js.map +1 -0
  25. package/dist/development/src/hooks/useRichTextBlocksSource.cjs +64 -0
  26. package/dist/development/src/hooks/useRichTextBlocksSource.cjs.map +1 -0
  27. package/dist/development/src/hooks/useRichTextBlocksSource.js +64 -0
  28. package/dist/development/src/hooks/useRichTextBlocksSource.js.map +1 -0
  29. package/dist/development/src/hooks/useRichTextFieldSource.cjs +26 -0
  30. package/dist/development/src/hooks/useRichTextFieldSource.cjs.map +1 -0
  31. package/dist/development/src/hooks/useRichTextFieldSource.js +26 -0
  32. package/dist/development/src/hooks/useRichTextFieldSource.js.map +1 -0
  33. package/dist/development/src/internal/components/ElementRenderer.cjs +40 -0
  34. package/dist/development/src/internal/components/ElementRenderer.cjs.map +1 -0
  35. package/dist/development/src/internal/components/ElementRenderer.js +40 -0
  36. package/dist/development/src/internal/components/ElementRenderer.js.map +1 -0
  37. package/dist/development/src/internal/components/LeafRenderer.cjs +27 -0
  38. package/dist/development/src/internal/components/LeafRenderer.cjs.map +1 -0
  39. package/dist/development/src/internal/components/LeafRenderer.js +27 -0
  40. package/dist/development/src/internal/components/LeafRenderer.js.map +1 -0
  41. package/dist/development/src/internal/components/RenderElementFallback.cjs +164 -0
  42. package/dist/development/src/internal/components/RenderElementFallback.cjs.map +1 -0
  43. package/dist/development/src/internal/components/RenderElementFallback.js +164 -0
  44. package/dist/development/src/internal/components/RenderElementFallback.js.map +1 -0
  45. package/dist/development/src/internal/components/RenderLeafFallback.cjs +74 -0
  46. package/dist/development/src/internal/components/RenderLeafFallback.cjs.map +1 -0
  47. package/dist/development/src/internal/components/RenderLeafFallback.js +74 -0
  48. package/dist/development/src/internal/components/RenderLeafFallback.js.map +1 -0
  49. package/dist/development/src/internal/defaultDeserialize.cjs +14 -0
  50. package/dist/development/src/internal/defaultDeserialize.cjs.map +1 -0
  51. package/dist/development/src/internal/defaultDeserialize.js +14 -0
  52. package/dist/development/src/internal/defaultDeserialize.js.map +1 -0
  53. package/dist/development/src/internal/renderChildren.cjs +30 -0
  54. package/dist/development/src/internal/renderChildren.cjs.map +1 -0
  55. package/dist/development/src/internal/renderChildren.js +30 -0
  56. package/dist/development/src/internal/renderChildren.js.map +1 -0
  57. package/dist/development/src/internal/useReferenceMetadata.cjs +42 -0
  58. package/dist/development/src/internal/useReferenceMetadata.cjs.map +1 -0
  59. package/dist/development/src/internal/useReferenceMetadata.js +42 -0
  60. package/dist/development/src/internal/useReferenceMetadata.js.map +1 -0
  61. package/dist/production/index.cjs +17 -0
  62. package/dist/production/index.cjs.map +1 -0
  63. package/dist/production/index.js +17 -0
  64. package/dist/production/index.js.map +1 -0
  65. package/dist/production/src/RichTextRendererError.cjs +6 -0
  66. package/dist/production/src/RichTextRendererError.cjs.map +1 -0
  67. package/dist/production/src/RichTextRendererError.js +6 -0
  68. package/dist/production/src/RichTextRendererError.js.map +1 -0
  69. package/dist/production/src/components/RichText.cjs +32 -0
  70. package/dist/production/src/components/RichText.cjs.map +1 -0
  71. package/dist/production/src/components/RichText.js +32 -0
  72. package/dist/production/src/components/RichText.js.map +1 -0
  73. package/dist/production/src/components/RichTextBlocksRenderer.cjs +30 -0
  74. package/dist/production/src/components/RichTextBlocksRenderer.cjs.map +1 -0
  75. package/dist/production/src/components/RichTextBlocksRenderer.js +30 -0
  76. package/dist/production/src/components/RichTextBlocksRenderer.js.map +1 -0
  77. package/dist/production/src/components/RichTextFieldRenderer.cjs +28 -0
  78. package/dist/production/src/components/RichTextFieldRenderer.cjs.map +1 -0
  79. package/dist/production/src/components/RichTextFieldRenderer.js +28 -0
  80. package/dist/production/src/components/RichTextFieldRenderer.js.map +1 -0
  81. package/dist/production/src/components/RichTextRenderer.cjs +14 -0
  82. package/dist/production/src/components/RichTextRenderer.cjs.map +1 -0
  83. package/dist/production/src/components/RichTextRenderer.js +14 -0
  84. package/dist/production/src/components/RichTextRenderer.js.map +1 -0
  85. package/dist/production/src/hooks/useRichTextBlocksSource.cjs +64 -0
  86. package/dist/production/src/hooks/useRichTextBlocksSource.cjs.map +1 -0
  87. package/dist/production/src/hooks/useRichTextBlocksSource.js +64 -0
  88. package/dist/production/src/hooks/useRichTextBlocksSource.js.map +1 -0
  89. package/dist/production/src/hooks/useRichTextFieldSource.cjs +26 -0
  90. package/dist/production/src/hooks/useRichTextFieldSource.cjs.map +1 -0
  91. package/dist/production/src/hooks/useRichTextFieldSource.js +26 -0
  92. package/dist/production/src/hooks/useRichTextFieldSource.js.map +1 -0
  93. package/dist/production/src/internal/components/ElementRenderer.cjs +32 -0
  94. package/dist/production/src/internal/components/ElementRenderer.cjs.map +1 -0
  95. package/dist/production/src/internal/components/ElementRenderer.js +32 -0
  96. package/dist/production/src/internal/components/ElementRenderer.js.map +1 -0
  97. package/dist/production/src/internal/components/LeafRenderer.cjs +23 -0
  98. package/dist/production/src/internal/components/LeafRenderer.cjs.map +1 -0
  99. package/dist/production/src/internal/components/LeafRenderer.js +23 -0
  100. package/dist/production/src/internal/components/LeafRenderer.js.map +1 -0
  101. package/dist/production/src/internal/components/RenderElementFallback.cjs +85 -0
  102. package/dist/production/src/internal/components/RenderElementFallback.cjs.map +1 -0
  103. package/dist/production/src/internal/components/RenderElementFallback.js +85 -0
  104. package/dist/production/src/internal/components/RenderElementFallback.js.map +1 -0
  105. package/dist/production/src/internal/components/RenderLeafFallback.cjs +38 -0
  106. package/dist/production/src/internal/components/RenderLeafFallback.cjs.map +1 -0
  107. package/dist/production/src/internal/components/RenderLeafFallback.js +38 -0
  108. package/dist/production/src/internal/components/RenderLeafFallback.js.map +1 -0
  109. package/dist/production/src/internal/defaultDeserialize.cjs +14 -0
  110. package/dist/production/src/internal/defaultDeserialize.cjs.map +1 -0
  111. package/dist/production/src/internal/defaultDeserialize.js +14 -0
  112. package/dist/production/src/internal/defaultDeserialize.js.map +1 -0
  113. package/dist/production/src/internal/renderChildren.cjs +18 -0
  114. package/dist/production/src/internal/renderChildren.cjs.map +1 -0
  115. package/dist/production/src/internal/renderChildren.js +18 -0
  116. package/dist/production/src/internal/renderChildren.js.map +1 -0
  117. package/dist/production/src/internal/useReferenceMetadata.cjs +37 -0
  118. package/dist/production/src/internal/useReferenceMetadata.cjs.map +1 -0
  119. package/dist/production/src/internal/useReferenceMetadata.js +37 -0
  120. package/dist/production/src/internal/useReferenceMetadata.js.map +1 -0
  121. package/dist/types/RichTextRendererError.d.ts +3 -0
  122. package/dist/types/RichTextRendererError.d.ts.map +1 -0
  123. package/dist/types/components/RichText.d.ts +13 -0
  124. package/dist/types/components/RichText.d.ts.map +1 -0
  125. package/dist/types/components/RichTextBlocksRenderer.d.ts +10 -0
  126. package/dist/types/components/RichTextBlocksRenderer.d.ts.map +1 -0
  127. package/dist/types/components/RichTextFieldRenderer.d.ts +10 -0
  128. package/dist/types/components/RichTextFieldRenderer.d.ts.map +1 -0
  129. package/dist/types/components/RichTextRenderer.d.ts +12 -0
  130. package/dist/types/components/RichTextRenderer.d.ts.map +1 -0
  131. package/dist/types/components/index.d.ts +5 -0
  132. package/dist/types/components/index.d.ts.map +1 -0
  133. package/dist/types/hooks/index.d.ts +3 -0
  134. package/dist/types/hooks/index.d.ts.map +1 -0
  135. package/dist/types/hooks/useRichTextBlocksSource.d.ts +3 -0
  136. package/dist/types/hooks/useRichTextBlocksSource.d.ts.map +1 -0
  137. package/dist/types/hooks/useRichTextFieldSource.d.ts +3 -0
  138. package/dist/types/hooks/useRichTextFieldSource.d.ts.map +1 -0
  139. package/dist/types/index.d.ts +5 -0
  140. package/dist/types/index.d.ts.map +1 -0
  141. package/dist/types/internal/components/ElementRenderer.d.ts +14 -0
  142. package/dist/types/internal/components/ElementRenderer.d.ts.map +1 -0
  143. package/dist/types/internal/components/LeafRenderer.d.ts +12 -0
  144. package/dist/types/internal/components/LeafRenderer.d.ts.map +1 -0
  145. package/dist/types/internal/components/RenderElementFallback.d.ts +14 -0
  146. package/dist/types/internal/components/RenderElementFallback.d.ts.map +1 -0
  147. package/dist/types/internal/components/RenderLeafFallback.d.ts +6 -0
  148. package/dist/types/internal/components/RenderLeafFallback.d.ts.map +1 -0
  149. package/dist/types/internal/defaultDeserialize.d.ts +5 -0
  150. package/dist/types/internal/defaultDeserialize.d.ts.map +1 -0
  151. package/dist/types/internal/renderChildren.d.ts +8 -0
  152. package/dist/types/internal/renderChildren.d.ts.map +1 -0
  153. package/dist/types/internal/useReferenceMetadata.d.ts +9 -0
  154. package/dist/types/internal/useReferenceMetadata.d.ts.map +1 -0
  155. package/dist/types/tsconfig.tsbuildinfo +1 -0
  156. package/dist/types/types/RenderChildren.d.ts +9 -0
  157. package/dist/types/types/RenderChildren.d.ts.map +1 -0
  158. package/dist/types/types/RichTextBlock.d.ts +8 -0
  159. package/dist/types/types/RichTextBlock.d.ts.map +1 -0
  160. package/dist/types/types/RichTextBlockSource.d.ts +9 -0
  161. package/dist/types/types/RichTextBlockSource.d.ts.map +1 -0
  162. package/dist/types/types/RichTextFieldSource.d.ts +6 -0
  163. package/dist/types/types/RichTextFieldSource.d.ts.map +1 -0
  164. package/dist/types/types/RichTextReference.d.ts +5 -0
  165. package/dist/types/types/RichTextReference.d.ts.map +1 -0
  166. package/dist/types/types/RichTextReferenceMetadata.d.ts +15 -0
  167. package/dist/types/types/RichTextReferenceMetadata.d.ts.map +1 -0
  168. package/dist/types/types/RichTextRenderingOptions.d.ts +14 -0
  169. package/dist/types/types/RichTextRenderingOptions.d.ts.map +1 -0
  170. package/dist/types/types/builtin/BuiltinElements.d.ts +48 -0
  171. package/dist/types/types/builtin/BuiltinElements.d.ts.map +1 -0
  172. package/dist/types/types/builtin/BuiltinLeaves.d.ts +21 -0
  173. package/dist/types/types/builtin/BuiltinLeaves.d.ts.map +1 -0
  174. package/dist/types/types/builtin/index.d.ts +3 -0
  175. package/dist/types/types/builtin/index.d.ts.map +1 -0
  176. package/dist/types/types/custom/ReferenceRenderer.d.ts +17 -0
  177. package/dist/types/types/custom/ReferenceRenderer.d.ts.map +1 -0
  178. package/dist/types/types/custom/RenderBlock.d.ts +7 -0
  179. package/dist/types/types/custom/RenderBlock.d.ts.map +1 -0
  180. package/dist/types/types/custom/RenderElement.d.ts +24 -0
  181. package/dist/types/types/custom/RenderElement.d.ts.map +1 -0
  182. package/dist/types/types/custom/RenderLeaf.d.ts +11 -0
  183. package/dist/types/types/custom/RenderLeaf.d.ts.map +1 -0
  184. package/dist/types/types/custom/index.d.ts +5 -0
  185. package/dist/types/types/custom/index.d.ts.map +1 -0
  186. package/dist/types/types/index.d.ts +11 -0
  187. package/dist/types/types/index.d.ts.map +1 -0
  188. package/dist/types/types/structure/RichTextChild.d.ts +5 -0
  189. package/dist/types/types/structure/RichTextChild.d.ts.map +1 -0
  190. package/dist/types/types/structure/RichTextElement.d.ts +8 -0
  191. package/dist/types/types/structure/RichTextElement.d.ts.map +1 -0
  192. package/dist/types/types/structure/RichTextLeaf.d.ts +4 -0
  193. package/dist/types/types/structure/RichTextLeaf.d.ts.map +1 -0
  194. package/dist/types/types/structure/RootEditorNode.d.ts +8 -0
  195. package/dist/types/types/structure/RootEditorNode.d.ts.map +1 -0
  196. package/dist/types/types/structure/index.d.ts +5 -0
  197. package/dist/types/types/structure/index.d.ts.map +1 -0
  198. package/package.json +4 -4
@@ -0,0 +1,85 @@
1
+ import { jsx, jsxs, Fragment } from "react/jsx-runtime";
2
+ import { createElement } from "react";
3
+ import { renderChildren } from "../renderChildren.js";
4
+ import { useReferenceMetadata } from "../useReferenceMetadata.js";
5
+ const getElementDataAttributes = (element, attributeNamePrefix = "contember-") => {
6
+ const { children, referenceId, ...extendedSpecifics } = element;
7
+ return Object.fromEntries(
8
+ Object.entries(extendedSpecifics).filter(([, value]) => {
9
+ const t = typeof value;
10
+ return t === "string" || t === "number" || t === "boolean";
11
+ }).map(([attribute, value]) => [`data-${attributeNamePrefix}${attribute.toLowerCase()}`, value])
12
+ );
13
+ };
14
+ function RenderElementFallback({ element, children, options, block }) {
15
+ const attributes = getElementDataAttributes(element, options.attributeNamePrefix);
16
+ switch (element.type) {
17
+ case "anchor":
18
+ return /* @__PURE__ */ jsx("a", { ...attributes, href: element.href, children });
19
+ case "heading":
20
+ return createElement(`h${element.level}`, attributes, children);
21
+ // TODO numbered
22
+ case "horizontalRule":
23
+ return /* @__PURE__ */ jsx("hr", { ...attributes });
24
+ case "listItem":
25
+ return /* @__PURE__ */ jsx("li", { ...attributes, children });
26
+ case "orderedList":
27
+ return /* @__PURE__ */ jsx("ol", { ...attributes, children });
28
+ case "paragraph":
29
+ return /* @__PURE__ */ jsx("p", { ...attributes, children });
30
+ case "reference": {
31
+ return /* @__PURE__ */ jsx(ReferenceElementFallback, { element, children, options, block });
32
+ }
33
+ case "scrollTarget":
34
+ return /* @__PURE__ */ jsx("span", { ...attributes, id: element.identifier, children });
35
+ case "table": {
36
+ const firstRow = element.children[0];
37
+ if (!firstRow || firstRow.headerScope !== "table") {
38
+ return /* @__PURE__ */ jsx("table", { ...attributes, children: /* @__PURE__ */ jsx("tbody", { children }) });
39
+ }
40
+ return /* @__PURE__ */ jsxs("table", { ...attributes, children: [
41
+ /* @__PURE__ */ jsx("thead", { children: renderChildren([firstRow], options, block) }),
42
+ /* @__PURE__ */ jsx("tbody", { children: renderChildren(element.children.slice(1), options, block) })
43
+ ] });
44
+ }
45
+ case "tableRow":
46
+ return /* @__PURE__ */ jsx("tr", { ...attributes, children });
47
+ case "tableCell": {
48
+ if (element.headerScope) {
49
+ return /* @__PURE__ */ jsx("th", { ...attributes, scope: element.headerScope, children });
50
+ }
51
+ return /* @__PURE__ */ jsx("td", { ...attributes, children });
52
+ }
53
+ case "unorderedList":
54
+ return /* @__PURE__ */ jsx("ul", { ...attributes, children });
55
+ default: {
56
+ {
57
+ return children;
58
+ }
59
+ }
60
+ }
61
+ }
62
+ function ReferenceElementFallback({ element, children, options, block }) {
63
+ const elementMetadata = useReferenceMetadata(element, options, block, true);
64
+ if (elementMetadata.referenceRenderer === void 0 || elementMetadata.referenceType === void 0 || elementMetadata.reference === void 0) {
65
+ return children;
66
+ }
67
+ let Renderer = elementMetadata.referenceRenderer;
68
+ return /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsx(
69
+ Renderer,
70
+ {
71
+ referenceType: elementMetadata.referenceType,
72
+ referenceRenderer: elementMetadata.referenceRenderer,
73
+ reference: elementMetadata.reference,
74
+ formatVersion: block.content.formatVersion,
75
+ block,
76
+ options,
77
+ element,
78
+ children
79
+ }
80
+ ) });
81
+ }
82
+ export {
83
+ RenderElementFallback
84
+ };
85
+ //# sourceMappingURL=RenderElementFallback.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RenderElementFallback.js","sources":["../../../../../../packages/react-richtext-renderer/src/internal/components/RenderElementFallback.tsx"],"sourcesContent":["import { createElement, ReactElement } from 'react'\nimport type { BuiltinElements, RichTextReferenceElement, RichTextTableRowElement } from '../../types/builtin/BuiltinElements'\nimport { renderChildren } from '../renderChildren'\nimport { useReferenceMetadata } from '../useReferenceMetadata'\nimport type { RichTextElement } from '../../types/structure/RichTextElement'\nimport type { RichTextLeaf } from '../../types/structure/RichTextLeaf'\nimport { RichTextRendererError } from '../../RichTextRendererError'\nimport { RichTextBlock } from '../../types/RichTextBlock'\nimport { RichTextRenderingOptions } from '../../types/RichTextRenderingOptions'\n\nexport interface RenderElementFallbackProps<\n\tCustomElements extends RichTextElement = never,\n\tCustomLeaves extends RichTextLeaf = RichTextLeaf,\n> {\n\telement: BuiltinElements<CustomElements, CustomLeaves>\n\tchildren: ReactElement\n\toptions: RichTextRenderingOptions<CustomElements, CustomLeaves>\n\tblock: RichTextBlock<CustomElements, CustomLeaves>\n}\n\nconst getElementDataAttributes = <\n\tCustomElements extends RichTextElement = never,\n\tCustomLeaves extends RichTextLeaf = RichTextLeaf,\n>(\n\telement: RichTextElement<CustomElements, CustomLeaves>,\n\tattributeNamePrefix: string = 'contember-',\n): {\n\t[dataAttribute: string]: string | number | boolean\n} => {\n\tconst { children, referenceId, ...extendedSpecifics } = element\n\n\treturn Object.fromEntries(\n\t\tObject.entries(extendedSpecifics)\n\t\t\t.filter(([, value]) => {\n\t\t\t\tconst t = typeof value\n\t\t\t\treturn t === 'string' || t === 'number' || t === 'boolean'\n\t\t\t})\n\t\t\t.map(([attribute, value]) => [`data-${attributeNamePrefix}${attribute.toLowerCase()}`, value]),\n\t)\n}\n\nexport function RenderElementFallback<\n\tCustomElements extends RichTextElement = never,\n\tCustomLeaves extends RichTextLeaf = RichTextLeaf,\n>({ element, children, options, block }: RenderElementFallbackProps<CustomElements, CustomLeaves>) {\n\tconst attributes = getElementDataAttributes(element, options.attributeNamePrefix)\n\n\tswitch (element.type) {\n\t\tcase 'anchor':\n\t\t\treturn (\n\t\t\t\t<a {...attributes} href={element.href}>\n\t\t\t\t\t{children}\n\t\t\t\t</a>\n\t\t\t)\n\t\tcase 'heading':\n\t\t\treturn createElement(`h${element.level}`, attributes, children) // TODO numbered\n\t\tcase 'horizontalRule':\n\t\t\treturn <hr {...attributes} />\n\t\tcase 'listItem':\n\t\t\treturn <li {...attributes}>{children}</li>\n\t\tcase 'orderedList':\n\t\t\treturn <ol {...attributes}>{children}</ol>\n\t\tcase 'paragraph':\n\t\t\treturn <p {...attributes}>{children}</p>\n\t\tcase 'reference': {\n\t\t\treturn <ReferenceElementFallback element={element} children={children} options={options} block={block} />\n\t\t}\n\t\tcase 'scrollTarget':\n\t\t\treturn (\n\t\t\t\t<span {...attributes} id={element.identifier}>\n\t\t\t\t\t{children}\n\t\t\t\t</span>\n\t\t\t)\n\t\tcase 'table': {\n\t\t\tconst firstRow = element.children[0] as RichTextTableRowElement<CustomElements, CustomLeaves> | undefined\n\t\t\tif (!firstRow || firstRow.headerScope !== 'table') {\n\t\t\t\treturn (\n\t\t\t\t\t<table {...attributes}>\n\t\t\t\t\t\t<tbody>{children}</tbody>\n\t\t\t\t\t</table>\n\t\t\t\t)\n\t\t\t}\n\t\t\treturn (\n\t\t\t\t<table {...attributes}>\n\t\t\t\t\t<thead>{renderChildren<CustomElements, CustomLeaves>([firstRow], options, block)}</thead>\n\t\t\t\t\t<tbody>{renderChildren<CustomElements, CustomLeaves>(element.children.slice(1) as any, options, block)}</tbody>\n\t\t\t\t</table>\n\t\t\t)\n\t\t}\n\t\tcase 'tableRow':\n\t\t\treturn <tr {...attributes}>{children}</tr>\n\t\tcase 'tableCell': {\n\t\t\tif (element.headerScope) {\n\t\t\t\treturn (\n\t\t\t\t\t<th {...attributes} scope={element.headerScope}>\n\t\t\t\t\t\t{children}\n\t\t\t\t\t</th>\n\t\t\t\t)\n\t\t\t}\n\t\t\treturn <td {...attributes}>{children}</td>\n\t\t}\n\t\tcase 'unorderedList':\n\t\t\treturn <ul {...attributes}>{children}</ul>\n\t\tdefault: {\n\t\t\tif (import.meta.env.DEV) {\n\t\t\t\tthrow new RichTextRendererError(\n\t\t\t\t\t`RichTextRenderer: unknown element of type '${(element as { type: string }).type}'.`,\n\t\t\t\t)\n\t\t\t} else {\n\t\t\t\treturn children // At least render the text contents\n\t\t\t}\n\t\t}\n\t}\n}\n\ntype ReferenceElementFallbackProps<CustomElements extends RichTextElement = never, CustomLeaves extends RichTextLeaf = RichTextLeaf> = {\n\telement: RichTextReferenceElement<CustomElements, CustomLeaves>\n\tchildren: ReactElement\n\toptions: RichTextRenderingOptions<CustomElements, CustomLeaves>\n\tblock: RichTextBlock<CustomElements, CustomLeaves>\n}\n\nfunction ReferenceElementFallback<\n\tCustomElements extends RichTextElement = never,\n\tCustomLeaves extends RichTextLeaf = RichTextLeaf,\n>({ element, children, options, block }: ReferenceElementFallbackProps<CustomElements, CustomLeaves>) {\n\tconst elementMetadata = useReferenceMetadata<CustomElements, CustomLeaves>(element, options, block, true)\n\n\tif (\n\t\telementMetadata.referenceRenderer === undefined\n\t\t|| elementMetadata.referenceType === undefined\n\t\t|| elementMetadata.reference === undefined\n\t) {\n\t\treturn children // At least render the text contents\n\t}\n\n\tlet Renderer = elementMetadata.referenceRenderer\n\treturn (\n\t\t<>\n\t\t\t<Renderer\n\t\t\t\treferenceType={elementMetadata.referenceType}\n\t\t\t\treferenceRenderer={elementMetadata.referenceRenderer}\n\t\t\t\treference={elementMetadata.reference}\n\t\t\t\tformatVersion={block.content.formatVersion}\n\t\t\t\tblock={block}\n\t\t\t\toptions={options}\n\t\t\t\telement={element}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</Renderer>\n\t\t</>\n\t)\n}\n"],"names":[],"mappings":";;;;AAoBA,MAAM,2BAA2B,CAIhC,SACA,sBAA8B,iBAG1B;AACJ,QAAM,EAAE,UAAU,aAAa,GAAG,sBAAsB;AAExD,SAAO,OAAO;AAAA,IACb,OAAO,QAAQ,iBAAiB,EAC9B,OAAO,CAAC,CAAA,EAAG,KAAK,MAAM;AACtB,YAAM,IAAI,OAAO;AACjB,aAAO,MAAM,YAAY,MAAM,YAAY,MAAM;AAAA,IAClD,CAAC,EACA,IAAI,CAAC,CAAC,WAAW,KAAK,MAAM,CAAC,QAAQ,mBAAmB,GAAG,UAAU,aAAa,IAAI,KAAK,CAAC;AAAA,EAAA;AAEhG;AAEO,SAAS,sBAGd,EAAE,SAAS,UAAU,SAAS,SAAmE;AAClG,QAAM,aAAa,yBAAyB,SAAS,QAAQ,mBAAmB;AAEhF,UAAQ,QAAQ,MAAA;AAAA,IACf,KAAK;AACJ,iCACE,KAAA,EAAG,GAAG,YAAY,MAAM,QAAQ,MAC/B,UACF;AAAA,IAEF,KAAK;AACJ,aAAO,cAAc,IAAI,QAAQ,KAAK,IAAI,YAAY,QAAQ;AAAA;AAAA,IAC/D,KAAK;AACJ,aAAO,oBAAC,MAAA,EAAI,GAAG,YAAY;AAAA,IAC5B,KAAK;AACJ,iCAAQ,MAAA,EAAI,GAAG,YAAa,UAAS;AAAA,IACtC,KAAK;AACJ,iCAAQ,MAAA,EAAI,GAAG,YAAa,UAAS;AAAA,IACtC,KAAK;AACJ,iCAAQ,KAAA,EAAG,GAAG,YAAa,UAAS;AAAA,IACrC,KAAK,aAAa;AACjB,iCAAQ,0BAAA,EAAyB,SAAkB,UAAoB,SAAkB,OAAc;AAAA,IACxG;AAAA,IACA,KAAK;AACJ,iCACE,QAAA,EAAM,GAAG,YAAY,IAAI,QAAQ,YAChC,UACF;AAAA,IAEF,KAAK,SAAS;AACb,YAAM,WAAW,QAAQ,SAAS,CAAC;AACnC,UAAI,CAAC,YAAY,SAAS,gBAAgB,SAAS;AAClD,mCACE,SAAA,EAAO,GAAG,YACV,UAAA,oBAAC,SAAA,EAAO,SAAA,CAAS,GAClB;AAAA,MAEF;AACA,aACC,qBAAC,SAAA,EAAO,GAAG,YACV,UAAA;AAAA,QAAA,oBAAC,WAAO,UAAA,eAA6C,CAAC,QAAQ,GAAG,SAAS,KAAK,GAAE;AAAA,QACjF,oBAAC,SAAA,EAAO,UAAA,eAA6C,QAAQ,SAAS,MAAM,CAAC,GAAU,SAAS,KAAK,GAAE;AAAA,MAAA,GACxG;AAAA,IAEF;AAAA,IACA,KAAK;AACJ,iCAAQ,MAAA,EAAI,GAAG,YAAa,UAAS;AAAA,IACtC,KAAK,aAAa;AACjB,UAAI,QAAQ,aAAa;AACxB,mCACE,MAAA,EAAI,GAAG,YAAY,OAAO,QAAQ,aACjC,UACF;AAAA,MAEF;AACA,iCAAQ,MAAA,EAAI,GAAG,YAAa,UAAS;AAAA,IACtC;AAAA,IACA,KAAK;AACJ,iCAAQ,MAAA,EAAI,GAAG,YAAa,UAAS;AAAA,IACtC,SAAS;AAKD;AACN,eAAO;AAAA,MACR;AAAA,IACD;AAAA,EAAA;AAEF;AASA,SAAS,yBAGP,EAAE,SAAS,UAAU,SAAS,SAAsE;AACrG,QAAM,kBAAkB,qBAAmD,SAAS,SAAS,OAAO,IAAI;AAExG,MACC,gBAAgB,sBAAsB,UACnC,gBAAgB,kBAAkB,UAClC,gBAAgB,cAAc,QAChC;AACD,WAAO;AAAA,EACR;AAEA,MAAI,WAAW,gBAAgB;AAC/B,SACC,oBAAA,UAAA,EACC,UAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACA,eAAe,gBAAgB;AAAA,MAC/B,mBAAmB,gBAAgB;AAAA,MACnC,WAAW,gBAAgB;AAAA,MAC3B,eAAe,MAAM,QAAQ;AAAA,MAC7B;AAAA,MACA;AAAA,MACA;AAAA,MAEC;AAAA,IAAA;AAAA,EAAA,GAEH;AAEF;"}
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const React = require("react");
5
+ function jsxN2br(text) {
6
+ const lines = text.split("\n");
7
+ if (lines.length <= 1) {
8
+ return text;
9
+ }
10
+ return lines.map((line, i) => /* @__PURE__ */ jsxRuntime.jsxs(React.Fragment, { children: [
11
+ !!i && /* @__PURE__ */ jsxRuntime.jsx("br", {}),
12
+ line
13
+ ] }, i));
14
+ }
15
+ function RenderLeafFallback({ leaf }) {
16
+ let element = jsxN2br(leaf.text);
17
+ if ("isCode" in leaf && leaf.isCode === true) {
18
+ element = /* @__PURE__ */ jsxRuntime.jsx("code", { children: element });
19
+ }
20
+ if ("isStruckThrough" in leaf && leaf.isStruckThrough === true) {
21
+ element = /* @__PURE__ */ jsxRuntime.jsx("s", { children: element });
22
+ }
23
+ if ("isHighlighted" in leaf && leaf.isHighlighted === true) {
24
+ element = /* @__PURE__ */ jsxRuntime.jsx("em", { children: element });
25
+ }
26
+ if ("isUnderlined" in leaf && leaf.isUnderlined === true) {
27
+ element = /* @__PURE__ */ jsxRuntime.jsx("u", { children: element });
28
+ }
29
+ if ("isItalic" in leaf && leaf.isItalic === true) {
30
+ element = /* @__PURE__ */ jsxRuntime.jsx("i", { children: element });
31
+ }
32
+ if ("isBold" in leaf && leaf.isBold === true) {
33
+ element = /* @__PURE__ */ jsxRuntime.jsx("b", { children: element });
34
+ }
35
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: element });
36
+ }
37
+ exports.RenderLeafFallback = RenderLeafFallback;
38
+ //# sourceMappingURL=RenderLeafFallback.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RenderLeafFallback.cjs","sources":["../../../../../../packages/react-richtext-renderer/src/internal/components/RenderLeafFallback.tsx"],"sourcesContent":["import { Fragment, ReactNode } from 'react'\nimport type { BuiltinLeaves } from '../../types/builtin/BuiltinLeaves'\n\nexport interface RenderLeafFallbackProps {\n\tleaf: BuiltinLeaves\n}\n\nfunction jsxN2br(text: string): ReactNode {\n\tconst lines = text.split('\\n')\n\tif (lines.length <= 1) {\n\t\treturn text\n\t}\n\treturn lines.map((line, i) => (\n\t\t<Fragment key={i}>\n\t\t\t{!!i && <br />}\n\t\t\t{line}\n\t\t</Fragment>\n\t))\n}\n\nexport function RenderLeafFallback({ leaf }: RenderLeafFallbackProps) {\n\tlet element = jsxN2br(leaf.text)\n\n\tif ('isCode' in leaf && leaf.isCode === true) {\n\t\telement = <code>{element}</code>\n\t}\n\tif ('isStruckThrough' in leaf && leaf.isStruckThrough === true) {\n\t\telement = <s>{element}</s>\n\t}\n\tif ('isHighlighted' in leaf && leaf.isHighlighted === true) {\n\t\telement = <em>{element}</em>\n\t}\n\tif ('isUnderlined' in leaf && leaf.isUnderlined === true) {\n\t\telement = <u>{element}</u>\n\t}\n\tif ('isItalic' in leaf && leaf.isItalic === true) {\n\t\telement = <i>{element}</i>\n\t}\n\tif ('isBold' in leaf && leaf.isBold === true) {\n\t\telement = <b>{element}</b>\n\t}\n\treturn <>{element}</>\n}\n"],"names":["jsxs","Fragment","jsx"],"mappings":";;;;AAOA,SAAS,QAAQ,MAAyB;AACzC,QAAM,QAAQ,KAAK,MAAM,IAAI;AAC7B,MAAI,MAAM,UAAU,GAAG;AACtB,WAAO;AAAA,EACR;AACA,SAAO,MAAM,IAAI,CAAC,MAAM,MACvBA,gCAACC,MAAAA,UAAA,EACC,UAAA;AAAA,IAAA,CAAC,CAAC,KAAKC,+BAAC,MAAA,CAAA,CAAG;AAAA,IACX;AAAA,EAAA,EAAA,GAFa,CAGf,CACA;AACF;AAEO,SAAS,mBAAmB,EAAE,QAAiC;AACrE,MAAI,UAAU,QAAQ,KAAK,IAAI;AAE/B,MAAI,YAAY,QAAQ,KAAK,WAAW,MAAM;AAC7C,cAAUA,2BAAAA,IAAC,UAAM,UAAA,QAAA,CAAQ;AAAA,EAC1B;AACA,MAAI,qBAAqB,QAAQ,KAAK,oBAAoB,MAAM;AAC/D,cAAUA,2BAAAA,IAAC,OAAG,UAAA,QAAA,CAAQ;AAAA,EACvB;AACA,MAAI,mBAAmB,QAAQ,KAAK,kBAAkB,MAAM;AAC3D,cAAUA,2BAAAA,IAAC,QAAI,UAAA,QAAA,CAAQ;AAAA,EACxB;AACA,MAAI,kBAAkB,QAAQ,KAAK,iBAAiB,MAAM;AACzD,cAAUA,2BAAAA,IAAC,OAAG,UAAA,QAAA,CAAQ;AAAA,EACvB;AACA,MAAI,cAAc,QAAQ,KAAK,aAAa,MAAM;AACjD,cAAUA,2BAAAA,IAAC,OAAG,UAAA,QAAA,CAAQ;AAAA,EACvB;AACA,MAAI,YAAY,QAAQ,KAAK,WAAW,MAAM;AAC7C,cAAUA,2BAAAA,IAAC,OAAG,UAAA,QAAA,CAAQ;AAAA,EACvB;AACA,+DAAU,UAAA,QAAA,CAAQ;AACnB;;"}
@@ -0,0 +1,38 @@
1
+ import { jsx, Fragment, jsxs } from "react/jsx-runtime";
2
+ import { Fragment as Fragment$1 } from "react";
3
+ function jsxN2br(text) {
4
+ const lines = text.split("\n");
5
+ if (lines.length <= 1) {
6
+ return text;
7
+ }
8
+ return lines.map((line, i) => /* @__PURE__ */ jsxs(Fragment$1, { children: [
9
+ !!i && /* @__PURE__ */ jsx("br", {}),
10
+ line
11
+ ] }, i));
12
+ }
13
+ function RenderLeafFallback({ leaf }) {
14
+ let element = jsxN2br(leaf.text);
15
+ if ("isCode" in leaf && leaf.isCode === true) {
16
+ element = /* @__PURE__ */ jsx("code", { children: element });
17
+ }
18
+ if ("isStruckThrough" in leaf && leaf.isStruckThrough === true) {
19
+ element = /* @__PURE__ */ jsx("s", { children: element });
20
+ }
21
+ if ("isHighlighted" in leaf && leaf.isHighlighted === true) {
22
+ element = /* @__PURE__ */ jsx("em", { children: element });
23
+ }
24
+ if ("isUnderlined" in leaf && leaf.isUnderlined === true) {
25
+ element = /* @__PURE__ */ jsx("u", { children: element });
26
+ }
27
+ if ("isItalic" in leaf && leaf.isItalic === true) {
28
+ element = /* @__PURE__ */ jsx("i", { children: element });
29
+ }
30
+ if ("isBold" in leaf && leaf.isBold === true) {
31
+ element = /* @__PURE__ */ jsx("b", { children: element });
32
+ }
33
+ return /* @__PURE__ */ jsx(Fragment, { children: element });
34
+ }
35
+ export {
36
+ RenderLeafFallback
37
+ };
38
+ //# sourceMappingURL=RenderLeafFallback.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RenderLeafFallback.js","sources":["../../../../../../packages/react-richtext-renderer/src/internal/components/RenderLeafFallback.tsx"],"sourcesContent":["import { Fragment, ReactNode } from 'react'\nimport type { BuiltinLeaves } from '../../types/builtin/BuiltinLeaves'\n\nexport interface RenderLeafFallbackProps {\n\tleaf: BuiltinLeaves\n}\n\nfunction jsxN2br(text: string): ReactNode {\n\tconst lines = text.split('\\n')\n\tif (lines.length <= 1) {\n\t\treturn text\n\t}\n\treturn lines.map((line, i) => (\n\t\t<Fragment key={i}>\n\t\t\t{!!i && <br />}\n\t\t\t{line}\n\t\t</Fragment>\n\t))\n}\n\nexport function RenderLeafFallback({ leaf }: RenderLeafFallbackProps) {\n\tlet element = jsxN2br(leaf.text)\n\n\tif ('isCode' in leaf && leaf.isCode === true) {\n\t\telement = <code>{element}</code>\n\t}\n\tif ('isStruckThrough' in leaf && leaf.isStruckThrough === true) {\n\t\telement = <s>{element}</s>\n\t}\n\tif ('isHighlighted' in leaf && leaf.isHighlighted === true) {\n\t\telement = <em>{element}</em>\n\t}\n\tif ('isUnderlined' in leaf && leaf.isUnderlined === true) {\n\t\telement = <u>{element}</u>\n\t}\n\tif ('isItalic' in leaf && leaf.isItalic === true) {\n\t\telement = <i>{element}</i>\n\t}\n\tif ('isBold' in leaf && leaf.isBold === true) {\n\t\telement = <b>{element}</b>\n\t}\n\treturn <>{element}</>\n}\n"],"names":["Fragment"],"mappings":";;AAOA,SAAS,QAAQ,MAAyB;AACzC,QAAM,QAAQ,KAAK,MAAM,IAAI;AAC7B,MAAI,MAAM,UAAU,GAAG;AACtB,WAAO;AAAA,EACR;AACA,SAAO,MAAM,IAAI,CAAC,MAAM,MACvB,qBAACA,YAAA,EACC,UAAA;AAAA,IAAA,CAAC,CAAC,KAAK,oBAAC,MAAA,CAAA,CAAG;AAAA,IACX;AAAA,EAAA,EAAA,GAFa,CAGf,CACA;AACF;AAEO,SAAS,mBAAmB,EAAE,QAAiC;AACrE,MAAI,UAAU,QAAQ,KAAK,IAAI;AAE/B,MAAI,YAAY,QAAQ,KAAK,WAAW,MAAM;AAC7C,cAAU,oBAAC,UAAM,UAAA,QAAA,CAAQ;AAAA,EAC1B;AACA,MAAI,qBAAqB,QAAQ,KAAK,oBAAoB,MAAM;AAC/D,cAAU,oBAAC,OAAG,UAAA,QAAA,CAAQ;AAAA,EACvB;AACA,MAAI,mBAAmB,QAAQ,KAAK,kBAAkB,MAAM;AAC3D,cAAU,oBAAC,QAAI,UAAA,QAAA,CAAQ;AAAA,EACxB;AACA,MAAI,kBAAkB,QAAQ,KAAK,iBAAiB,MAAM;AACzD,cAAU,oBAAC,OAAG,UAAA,QAAA,CAAQ;AAAA,EACvB;AACA,MAAI,cAAc,QAAQ,KAAK,aAAa,MAAM;AACjD,cAAU,oBAAC,OAAG,UAAA,QAAA,CAAQ;AAAA,EACvB;AACA,MAAI,YAAY,QAAQ,KAAK,WAAW,MAAM;AAC7C,cAAU,oBAAC,OAAG,UAAA,QAAA,CAAQ;AAAA,EACvB;AACA,yCAAU,UAAA,QAAA,CAAQ;AACnB;"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const defaultDeserialize = (source) => {
4
+ try {
5
+ return JSON.parse(source);
6
+ } catch (e) {
7
+ return {
8
+ formatVersion: 0,
9
+ children: []
10
+ };
11
+ }
12
+ };
13
+ exports.defaultDeserialize = defaultDeserialize;
14
+ //# sourceMappingURL=defaultDeserialize.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaultDeserialize.cjs","sources":["../../../../../packages/react-richtext-renderer/src/internal/defaultDeserialize.ts"],"sourcesContent":["import type { RichTextElement } from '../types/structure/RichTextElement'\nimport type { RichTextLeaf } from '../types/structure/RichTextLeaf'\nimport type { RootEditorNode } from '../types/structure/RootEditorNode'\n\nexport const defaultDeserialize = <\n\tCustomElements extends RichTextElement = never,\n\tCustomLeaves extends RichTextLeaf = RichTextLeaf,\n>(\n\tsource: string,\n): RootEditorNode<CustomElements, CustomLeaves> => {\n\ttry {\n\t\treturn JSON.parse(source)\n\t} catch (e) {\n\t\treturn {\n\t\t\tformatVersion: 0,\n\t\t\tchildren: [],\n\t\t}\n\t}\n}\n"],"names":[],"mappings":";;AAIO,MAAM,qBAAqB,CAIjC,WACkD;AAClD,MAAI;AACH,WAAO,KAAK,MAAM,MAAM;AAAA,EACzB,SAAS,GAAG;AACX,WAAO;AAAA,MACN,eAAe;AAAA,MACf,UAAU,CAAA;AAAA,IAAC;AAAA,EAEb;AACD;;"}
@@ -0,0 +1,14 @@
1
+ const defaultDeserialize = (source) => {
2
+ try {
3
+ return JSON.parse(source);
4
+ } catch (e) {
5
+ return {
6
+ formatVersion: 0,
7
+ children: []
8
+ };
9
+ }
10
+ };
11
+ export {
12
+ defaultDeserialize
13
+ };
14
+ //# sourceMappingURL=defaultDeserialize.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaultDeserialize.js","sources":["../../../../../packages/react-richtext-renderer/src/internal/defaultDeserialize.ts"],"sourcesContent":["import type { RichTextElement } from '../types/structure/RichTextElement'\nimport type { RichTextLeaf } from '../types/structure/RichTextLeaf'\nimport type { RootEditorNode } from '../types/structure/RootEditorNode'\n\nexport const defaultDeserialize = <\n\tCustomElements extends RichTextElement = never,\n\tCustomLeaves extends RichTextLeaf = RichTextLeaf,\n>(\n\tsource: string,\n): RootEditorNode<CustomElements, CustomLeaves> => {\n\ttry {\n\t\treturn JSON.parse(source)\n\t} catch (e) {\n\t\treturn {\n\t\t\tformatVersion: 0,\n\t\t\tchildren: [],\n\t\t}\n\t}\n}\n"],"names":[],"mappings":"AAIO,MAAM,qBAAqB,CAIjC,WACkD;AAClD,MAAI;AACH,WAAO,KAAK,MAAM,MAAM;AAAA,EACzB,SAAS,GAAG;AACX,WAAO;AAAA,MACN,eAAe;AAAA,MACf,UAAU,CAAA;AAAA,IAAC;AAAA,EAEb;AACD;"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const ElementRenderer = require("./components/ElementRenderer.cjs");
5
+ const LeafRenderer = require("./components/LeafRenderer.cjs");
6
+ const renderChildren = (children, options, block) => {
7
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: (Array.isArray(children) ? children : [children]).map((child, i) => {
8
+ if ("text" in child) {
9
+ return /* @__PURE__ */ jsxRuntime.jsx(LeafRenderer.LeafRenderer, { leaf: child, options, block }, i);
10
+ }
11
+ if ("children" in child) {
12
+ return /* @__PURE__ */ jsxRuntime.jsx(ElementRenderer.ElementRenderer, { element: child, options, block, children: renderChildren(child.children, options, block) }, i);
13
+ }
14
+ return null;
15
+ }) });
16
+ };
17
+ exports.renderChildren = renderChildren;
18
+ //# sourceMappingURL=renderChildren.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"renderChildren.cjs","sources":["../../../../../packages/react-richtext-renderer/src/internal/renderChildren.tsx"],"sourcesContent":["import type { ReactElement } from 'react'\nimport { ElementRenderer } from './components/ElementRenderer'\nimport { LeafRenderer } from './components/LeafRenderer'\nimport type { RichTextElement } from '../types/structure/RichTextElement'\nimport type { RichTextLeaf } from '../types/structure/RichTextLeaf'\nimport { RichTextRenderingOptions } from '../types/RichTextRenderingOptions'\nimport { RichTextBlock } from '../types/RichTextBlock'\nimport { RichTextChild } from '../types/structure/RichTextChild'\n\nexport const renderChildren = <\n\tCustomElements extends RichTextElement = never,\n\tCustomLeaves extends RichTextLeaf = RichTextLeaf,\n>(\n\tchildren:\n\t\t| RichTextChild<CustomElements, CustomLeaves>\n\t\t| readonly RichTextChild<CustomElements, CustomLeaves>[],\n\toptions: RichTextRenderingOptions<CustomElements, CustomLeaves>,\n\tblock: RichTextBlock<CustomElements, CustomLeaves>,\n): ReactElement => {\n\treturn (\n\t\t<>\n\t\t\t{(Array.isArray(children) ? children : [children]).map((child, i) => {\n\t\t\t\tif ('text' in child) {\n\t\t\t\t\treturn <LeafRenderer<CustomElements, CustomLeaves> key={i} leaf={child} options={options} block={block} />\n\t\t\t\t}\n\t\t\t\tif ('children' in child) {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<ElementRenderer<CustomElements, CustomLeaves> key={i} element={child} options={options} block={block}>\n\t\t\t\t\t\t\t{renderChildren<CustomElements, CustomLeaves>(child.children as typeof children, options, block)}\n\t\t\t\t\t\t</ElementRenderer>\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t\treturn null // Throw?\n\t\t\t})}\n\t\t</>\n\t)\n}\n"],"names":["jsx","Fragment","LeafRenderer","ElementRenderer"],"mappings":";;;;;AASO,MAAM,iBAAiB,CAI7B,UAGA,SACA,UACkB;AAClB,SACCA,2BAAAA,IAAAC,WAAAA,UAAA,EACG,WAAA,MAAM,QAAQ,QAAQ,IAAI,WAAW,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,MAAM;AACpE,QAAI,UAAU,OAAO;AACpB,4CAAQC,aAAAA,cAAA,EAAmD,MAAM,OAAO,SAAkB,SAAlC,CAAgD;AAAA,IACzG;AACA,QAAI,cAAc,OAAO;AACxB,aACCF,2BAAAA,IAACG,gBAAAA,iBAAA,EAAsD,SAAS,OAAO,SAAkB,OACvF,UAAA,eAA6C,MAAM,UAA6B,SAAS,KAAK,EAAA,GAD5C,CAEpD;AAAA,IAEF;AACA,WAAO;AAAA,EACR,CAAC,EAAA,CACF;AAEF;;"}
@@ -0,0 +1,18 @@
1
+ import { jsx, Fragment } from "react/jsx-runtime";
2
+ import { ElementRenderer } from "./components/ElementRenderer.js";
3
+ import { LeafRenderer } from "./components/LeafRenderer.js";
4
+ const renderChildren = (children, options, block) => {
5
+ return /* @__PURE__ */ jsx(Fragment, { children: (Array.isArray(children) ? children : [children]).map((child, i) => {
6
+ if ("text" in child) {
7
+ return /* @__PURE__ */ jsx(LeafRenderer, { leaf: child, options, block }, i);
8
+ }
9
+ if ("children" in child) {
10
+ return /* @__PURE__ */ jsx(ElementRenderer, { element: child, options, block, children: renderChildren(child.children, options, block) }, i);
11
+ }
12
+ return null;
13
+ }) });
14
+ };
15
+ export {
16
+ renderChildren
17
+ };
18
+ //# sourceMappingURL=renderChildren.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"renderChildren.js","sources":["../../../../../packages/react-richtext-renderer/src/internal/renderChildren.tsx"],"sourcesContent":["import type { ReactElement } from 'react'\nimport { ElementRenderer } from './components/ElementRenderer'\nimport { LeafRenderer } from './components/LeafRenderer'\nimport type { RichTextElement } from '../types/structure/RichTextElement'\nimport type { RichTextLeaf } from '../types/structure/RichTextLeaf'\nimport { RichTextRenderingOptions } from '../types/RichTextRenderingOptions'\nimport { RichTextBlock } from '../types/RichTextBlock'\nimport { RichTextChild } from '../types/structure/RichTextChild'\n\nexport const renderChildren = <\n\tCustomElements extends RichTextElement = never,\n\tCustomLeaves extends RichTextLeaf = RichTextLeaf,\n>(\n\tchildren:\n\t\t| RichTextChild<CustomElements, CustomLeaves>\n\t\t| readonly RichTextChild<CustomElements, CustomLeaves>[],\n\toptions: RichTextRenderingOptions<CustomElements, CustomLeaves>,\n\tblock: RichTextBlock<CustomElements, CustomLeaves>,\n): ReactElement => {\n\treturn (\n\t\t<>\n\t\t\t{(Array.isArray(children) ? children : [children]).map((child, i) => {\n\t\t\t\tif ('text' in child) {\n\t\t\t\t\treturn <LeafRenderer<CustomElements, CustomLeaves> key={i} leaf={child} options={options} block={block} />\n\t\t\t\t}\n\t\t\t\tif ('children' in child) {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<ElementRenderer<CustomElements, CustomLeaves> key={i} element={child} options={options} block={block}>\n\t\t\t\t\t\t\t{renderChildren<CustomElements, CustomLeaves>(child.children as typeof children, options, block)}\n\t\t\t\t\t\t</ElementRenderer>\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t\treturn null // Throw?\n\t\t\t})}\n\t\t</>\n\t)\n}\n"],"names":[],"mappings":";;;AASO,MAAM,iBAAiB,CAI7B,UAGA,SACA,UACkB;AAClB,SACC,oBAAA,UAAA,EACG,WAAA,MAAM,QAAQ,QAAQ,IAAI,WAAW,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,MAAM;AACpE,QAAI,UAAU,OAAO;AACpB,iCAAQ,cAAA,EAAmD,MAAM,OAAO,SAAkB,SAAlC,CAAgD;AAAA,IACzG;AACA,QAAI,cAAc,OAAO;AACxB,aACC,oBAAC,iBAAA,EAAsD,SAAS,OAAO,SAAkB,OACvF,UAAA,eAA6C,MAAM,UAA6B,SAAS,KAAK,EAAA,GAD5C,CAEpD;AAAA,IAEF;AACA,WAAO;AAAA,EACR,CAAC,EAAA,CACF;AAEF;"}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const RichTextRendererError = require("../RichTextRendererError.cjs");
4
+ const React = require("react");
5
+ const emptyReference = {
6
+ reference: void 0,
7
+ referenceType: void 0,
8
+ referenceRenderer: void 0
9
+ };
10
+ const useReferenceMetadata = (element, options, block, expectReference = false) => {
11
+ const undefinedReferenceHandler = options.undefinedReferenceHandler;
12
+ const referenceRenderers = options.referenceRenderers;
13
+ return React.useMemo(() => {
14
+ const id = element["referenceId"];
15
+ if (typeof id !== "string") {
16
+ return emptyReference;
17
+ }
18
+ const reference = block.references?.[id];
19
+ if (reference === void 0) {
20
+ if (undefinedReferenceHandler) {
21
+ return undefinedReferenceHandler(id) ?? emptyReference;
22
+ } else {
23
+ throw new RichTextRendererError.RichTextRendererError(
24
+ `RichTextRenderer: Cannot find reference id '${id}'`
25
+ );
26
+ }
27
+ }
28
+ const referenceRenderer = referenceRenderers?.[reference.type];
29
+ return {
30
+ reference,
31
+ referenceType: reference.type,
32
+ referenceRenderer
33
+ };
34
+ }, [block.references, element, expectReference, referenceRenderers, undefinedReferenceHandler]);
35
+ };
36
+ exports.useReferenceMetadata = useReferenceMetadata;
37
+ //# sourceMappingURL=useReferenceMetadata.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useReferenceMetadata.cjs","sources":["../../../../../packages/react-richtext-renderer/src/internal/useReferenceMetadata.ts"],"sourcesContent":["import type { BuiltinElements } from '../types/builtin/BuiltinElements'\nimport type { RichTextElement } from '../types/structure/RichTextElement'\nimport type { RichTextReferenceMetadata } from '../types/RichTextReferenceMetadata'\nimport { RichTextReferenceEmptyMetadata } from '../types/RichTextReferenceMetadata'\nimport type { RichTextLeaf } from '../types/structure/RichTextLeaf'\nimport type { RichTextReference } from '../types/RichTextReference'\nimport { RichTextRendererError } from '../RichTextRendererError'\nimport { RichTextBlock } from '../types/RichTextBlock'\nimport { RichTextRenderingOptions } from '../types/RichTextRenderingOptions'\nimport { useMemo } from 'react'\n\nconst emptyReference: RichTextReferenceEmptyMetadata = {\n\treference: undefined,\n\treferenceType: undefined,\n\treferenceRenderer: undefined,\n}\nexport const useReferenceMetadata = <\n\tCustomElements extends RichTextElement = never,\n\tCustomLeaves extends RichTextLeaf = RichTextLeaf,\n\tReference extends RichTextReference = RichTextReference,\n>(\n\telement: CustomElements | BuiltinElements<CustomElements, CustomLeaves>,\n\toptions: RichTextRenderingOptions<CustomElements, CustomLeaves, Reference>,\n\tblock: RichTextBlock<CustomElements, CustomLeaves>,\n\texpectReference: boolean = false,\n): RichTextReferenceMetadata<CustomElements, CustomLeaves, Reference> => {\n\tconst undefinedReferenceHandler = options.undefinedReferenceHandler\n\tconst referenceRenderers = options.referenceRenderers\n\n\treturn useMemo(() => {\n\t\tconst id = element['referenceId']\n\n\t\tif (typeof id !== 'string') {\n\t\t\tif (import.meta.env.DEV && expectReference) {\n\t\t\t\tthrow new RichTextRendererError(\n\t\t\t\t\t`RichTextRenderer: Expected element to have a referenceId.`,\n\t\t\t\t)\n\t\t\t}\n\t\t\treturn emptyReference\n\t\t}\n\n\t\tconst reference: Reference | undefined = block.references?.[id] as Reference | undefined\n\n\t\tif (reference === undefined) {\n\t\t\tif (undefinedReferenceHandler) {\n\t\t\t\treturn undefinedReferenceHandler(id) ?? emptyReference\n\t\t\t} else {\n\t\t\t\tthrow new RichTextRendererError(\n\t\t\t\t\t`RichTextRenderer: Cannot find reference id '${id}'`,\n\t\t\t\t)\n\t\t\t}\n\t\t}\n\n\t\tconst referenceRenderer = referenceRenderers?.[reference.type]\n\n\t\treturn {\n\t\t\treference,\n\t\t\treferenceType: reference.type,\n\t\t\treferenceRenderer,\n\t\t}\n\t}, [block.references, element, expectReference, referenceRenderers, undefinedReferenceHandler])\n}\n"],"names":["useMemo","RichTextRendererError"],"mappings":";;;;AAWA,MAAM,iBAAiD;AAAA,EACtD,WAAW;AAAA,EACX,eAAe;AAAA,EACf,mBAAmB;AACpB;AACO,MAAM,uBAAuB,CAKnC,SACA,SACA,OACA,kBAA2B,UAC6C;AACxE,QAAM,4BAA4B,QAAQ;AAC1C,QAAM,qBAAqB,QAAQ;AAEnC,SAAOA,MAAAA,QAAQ,MAAM;AACpB,UAAM,KAAK,QAAQ,aAAa;AAEhC,QAAI,OAAO,OAAO,UAAU;AAM3B,aAAO;AAAA,IACR;AAEA,UAAM,YAAmC,MAAM,aAAa,EAAE;AAE9D,QAAI,cAAc,QAAW;AAC5B,UAAI,2BAA2B;AAC9B,eAAO,0BAA0B,EAAE,KAAK;AAAA,MACzC,OAAO;AACN,cAAM,IAAIC,sBAAAA;AAAAA,UACT,+CAA+C,EAAE;AAAA,QAAA;AAAA,MAEnD;AAAA,IACD;AAEA,UAAM,oBAAoB,qBAAqB,UAAU,IAAI;AAE7D,WAAO;AAAA,MACN;AAAA,MACA,eAAe,UAAU;AAAA,MACzB;AAAA,IAAA;AAAA,EAEF,GAAG,CAAC,MAAM,YAAY,SAAS,iBAAiB,oBAAoB,yBAAyB,CAAC;AAC/F;;"}
@@ -0,0 +1,37 @@
1
+ import { RichTextRendererError } from "../RichTextRendererError.js";
2
+ import { useMemo } from "react";
3
+ const emptyReference = {
4
+ reference: void 0,
5
+ referenceType: void 0,
6
+ referenceRenderer: void 0
7
+ };
8
+ const useReferenceMetadata = (element, options, block, expectReference = false) => {
9
+ const undefinedReferenceHandler = options.undefinedReferenceHandler;
10
+ const referenceRenderers = options.referenceRenderers;
11
+ return useMemo(() => {
12
+ const id = element["referenceId"];
13
+ if (typeof id !== "string") {
14
+ return emptyReference;
15
+ }
16
+ const reference = block.references?.[id];
17
+ if (reference === void 0) {
18
+ if (undefinedReferenceHandler) {
19
+ return undefinedReferenceHandler(id) ?? emptyReference;
20
+ } else {
21
+ throw new RichTextRendererError(
22
+ `RichTextRenderer: Cannot find reference id '${id}'`
23
+ );
24
+ }
25
+ }
26
+ const referenceRenderer = referenceRenderers?.[reference.type];
27
+ return {
28
+ reference,
29
+ referenceType: reference.type,
30
+ referenceRenderer
31
+ };
32
+ }, [block.references, element, expectReference, referenceRenderers, undefinedReferenceHandler]);
33
+ };
34
+ export {
35
+ useReferenceMetadata
36
+ };
37
+ //# sourceMappingURL=useReferenceMetadata.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useReferenceMetadata.js","sources":["../../../../../packages/react-richtext-renderer/src/internal/useReferenceMetadata.ts"],"sourcesContent":["import type { BuiltinElements } from '../types/builtin/BuiltinElements'\nimport type { RichTextElement } from '../types/structure/RichTextElement'\nimport type { RichTextReferenceMetadata } from '../types/RichTextReferenceMetadata'\nimport { RichTextReferenceEmptyMetadata } from '../types/RichTextReferenceMetadata'\nimport type { RichTextLeaf } from '../types/structure/RichTextLeaf'\nimport type { RichTextReference } from '../types/RichTextReference'\nimport { RichTextRendererError } from '../RichTextRendererError'\nimport { RichTextBlock } from '../types/RichTextBlock'\nimport { RichTextRenderingOptions } from '../types/RichTextRenderingOptions'\nimport { useMemo } from 'react'\n\nconst emptyReference: RichTextReferenceEmptyMetadata = {\n\treference: undefined,\n\treferenceType: undefined,\n\treferenceRenderer: undefined,\n}\nexport const useReferenceMetadata = <\n\tCustomElements extends RichTextElement = never,\n\tCustomLeaves extends RichTextLeaf = RichTextLeaf,\n\tReference extends RichTextReference = RichTextReference,\n>(\n\telement: CustomElements | BuiltinElements<CustomElements, CustomLeaves>,\n\toptions: RichTextRenderingOptions<CustomElements, CustomLeaves, Reference>,\n\tblock: RichTextBlock<CustomElements, CustomLeaves>,\n\texpectReference: boolean = false,\n): RichTextReferenceMetadata<CustomElements, CustomLeaves, Reference> => {\n\tconst undefinedReferenceHandler = options.undefinedReferenceHandler\n\tconst referenceRenderers = options.referenceRenderers\n\n\treturn useMemo(() => {\n\t\tconst id = element['referenceId']\n\n\t\tif (typeof id !== 'string') {\n\t\t\tif (import.meta.env.DEV && expectReference) {\n\t\t\t\tthrow new RichTextRendererError(\n\t\t\t\t\t`RichTextRenderer: Expected element to have a referenceId.`,\n\t\t\t\t)\n\t\t\t}\n\t\t\treturn emptyReference\n\t\t}\n\n\t\tconst reference: Reference | undefined = block.references?.[id] as Reference | undefined\n\n\t\tif (reference === undefined) {\n\t\t\tif (undefinedReferenceHandler) {\n\t\t\t\treturn undefinedReferenceHandler(id) ?? emptyReference\n\t\t\t} else {\n\t\t\t\tthrow new RichTextRendererError(\n\t\t\t\t\t`RichTextRenderer: Cannot find reference id '${id}'`,\n\t\t\t\t)\n\t\t\t}\n\t\t}\n\n\t\tconst referenceRenderer = referenceRenderers?.[reference.type]\n\n\t\treturn {\n\t\t\treference,\n\t\t\treferenceType: reference.type,\n\t\t\treferenceRenderer,\n\t\t}\n\t}, [block.references, element, expectReference, referenceRenderers, undefinedReferenceHandler])\n}\n"],"names":[],"mappings":";;AAWA,MAAM,iBAAiD;AAAA,EACtD,WAAW;AAAA,EACX,eAAe;AAAA,EACf,mBAAmB;AACpB;AACO,MAAM,uBAAuB,CAKnC,SACA,SACA,OACA,kBAA2B,UAC6C;AACxE,QAAM,4BAA4B,QAAQ;AAC1C,QAAM,qBAAqB,QAAQ;AAEnC,SAAO,QAAQ,MAAM;AACpB,UAAM,KAAK,QAAQ,aAAa;AAEhC,QAAI,OAAO,OAAO,UAAU;AAM3B,aAAO;AAAA,IACR;AAEA,UAAM,YAAmC,MAAM,aAAa,EAAE;AAE9D,QAAI,cAAc,QAAW;AAC5B,UAAI,2BAA2B;AAC9B,eAAO,0BAA0B,EAAE,KAAK;AAAA,MACzC,OAAO;AACN,cAAM,IAAI;AAAA,UACT,+CAA+C,EAAE;AAAA,QAAA;AAAA,MAEnD;AAAA,IACD;AAEA,UAAM,oBAAoB,qBAAqB,UAAU,IAAI;AAE7D,WAAO;AAAA,MACN;AAAA,MACA,eAAe,UAAU;AAAA,MACzB;AAAA,IAAA;AAAA,EAEF,GAAG,CAAC,MAAM,YAAY,SAAS,iBAAiB,oBAAoB,yBAAyB,CAAC;AAC/F;"}
@@ -0,0 +1,3 @@
1
+ export declare class RichTextRendererError extends Error {
2
+ }
3
+ //# sourceMappingURL=RichTextRendererError.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RichTextRendererError.d.ts","sourceRoot":"","sources":["../../src/RichTextRendererError.ts"],"names":[],"mappings":"AAAA,qBAAa,qBAAsB,SAAQ,KAAK;CAAG"}
@@ -0,0 +1,13 @@
1
+ import type { RichTextBlock } from '../types';
2
+ import { RichTextElement, RichTextLeaf, RichTextRenderingOptions } from '../types';
3
+ export type RichTextProps<CustomElements extends RichTextElement = never, CustomLeaves extends RichTextLeaf = RichTextLeaf> = {
4
+ blocks: RichTextBlock<CustomElements, CustomLeaves>[];
5
+ } & RichTextRenderingOptions<CustomElements, CustomLeaves>;
6
+ /**
7
+ * Accepts normalized decoded RichText blocks and renders them using the provided renderers.
8
+ * To use decoders, use `RichTextBlocksRenderer` or `RichTextFieldRenderer` instead.
9
+ *
10
+ * @group Content rendering
11
+ */
12
+ export declare const RichText: <CustomElements extends RichTextElement = never, CustomLeaves extends RichTextLeaf = RichTextLeaf>({ blocks, renderElement, renderLeaf, renderBlock, attributeNamePrefix, referenceRenderers, undefinedReferenceHandler, }: RichTextProps<CustomElements, CustomLeaves>) => import("react/jsx-runtime").JSX.Element;
13
+ //# sourceMappingURL=RichText.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RichText.d.ts","sourceRoot":"","sources":["../../../src/components/RichText.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAC7C,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAA;AAElF,MAAM,MAAM,aAAa,CACxB,cAAc,SAAS,eAAe,GAAG,KAAK,EAC9C,YAAY,SAAS,YAAY,GAAG,YAAY,IAE9C;IACD,MAAM,EAAE,aAAa,CAAC,cAAc,EAAE,YAAY,CAAC,EAAE,CAAA;CACrD,GACC,wBAAwB,CAAC,cAAc,EAAE,YAAY,CAAC,CAAA;AAEzD;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,GACpB,cAAc,SAAS,eAAe,GAAG,KAAK,EAC9C,YAAY,SAAS,YAAY,GAAG,YAAY,EAC/C,yHAQC,aAAa,CAAC,cAAc,EAAE,YAAY,CAAC,4CAsB7C,CAAA"}
@@ -0,0 +1,10 @@
1
+ import { RichTextBlockSource, RichTextElement, RichTextLeaf, RichTextRenderingOptions } from '../types';
2
+ export type { RichTextBlockSource };
3
+ export type RichTextBlocksRendererProps<CustomElements extends RichTextElement = never, CustomLeaves extends RichTextLeaf = RichTextLeaf> = RichTextBlockSource<CustomElements, CustomLeaves> & RichTextRenderingOptions<CustomElements, CustomLeaves>;
4
+ /**
5
+ * Accepts raw RichText blocks and renders them using the provided renderers.
6
+ *
7
+ * @group Content rendering
8
+ */
9
+ export declare const RichTextBlocksRenderer: <CustomElements extends RichTextElement = never, CustomLeaves extends RichTextLeaf = RichTextLeaf>({ renderElement, renderLeaf, renderBlock, attributeNamePrefix, referenceRenderers, undefinedReferenceHandler, ...props }: RichTextBlocksRendererProps<CustomElements, CustomLeaves>) => import("react/jsx-runtime").JSX.Element;
10
+ //# sourceMappingURL=RichTextBlocksRenderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RichTextBlocksRenderer.d.ts","sourceRoot":"","sources":["../../../src/components/RichTextBlocksRenderer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,YAAY,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAA;AAIvG,YAAY,EAAE,mBAAmB,EAAE,CAAA;AAEnC,MAAM,MAAM,2BAA2B,CAAC,cAAc,SAAS,eAAe,GAAG,KAAK,EAAE,YAAY,SAAS,YAAY,GAAG,YAAY,IACrI,mBAAmB,CAAC,cAAc,EAAE,YAAY,CAAC,GACjD,wBAAwB,CAAC,cAAc,EAAE,YAAY,CAAC,CAAA;AAEzD;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,GAClC,cAAc,SAAS,eAAe,GAAG,KAAK,EAC9C,YAAY,SAAS,YAAY,GAAG,YAAY,EAC/C,0HAQC,2BAA2B,CAAC,cAAc,EAAE,YAAY,CAAC,4CAa3D,CAAA"}
@@ -0,0 +1,10 @@
1
+ import { RichTextElement, RichTextFieldSource, RichTextLeaf, RichTextRenderingOptions } from '../types';
2
+ export type { RichTextFieldSource };
3
+ export type RichTextFieldRendererProps<CustomElements extends RichTextElement = never, CustomLeaves extends RichTextLeaf = RichTextLeaf> = RichTextFieldSource<CustomElements, CustomLeaves> & RichTextRenderingOptions<CustomElements, CustomLeaves>;
4
+ /**
5
+ * Accepts raw RichText field source and renders them using the provided renderers.
6
+ *
7
+ * @group Content rendering
8
+ */
9
+ export declare const RichTextFieldRenderer: <CustomElements extends RichTextElement = never, CustomLeaves extends RichTextLeaf = RichTextLeaf>({ renderLeaf, renderBlock, renderElement, attributeNamePrefix, undefinedReferenceHandler, ...source }: RichTextFieldRendererProps<CustomElements, CustomLeaves>) => import("react/jsx-runtime").JSX.Element;
10
+ //# sourceMappingURL=RichTextFieldRenderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RichTextFieldRenderer.d.ts","sourceRoot":"","sources":["../../../src/components/RichTextFieldRenderer.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,YAAY,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAA;AAGvG,YAAY,EAAE,mBAAmB,EAAE,CAAA;AAEnC,MAAM,MAAM,0BAA0B,CACrC,cAAc,SAAS,eAAe,GAAG,KAAK,EAC9C,YAAY,SAAS,YAAY,GAAG,YAAY,IAE9C,mBAAmB,CAAC,cAAc,EAAE,YAAY,CAAC,GACjD,wBAAwB,CAAC,cAAc,EAAE,YAAY,CAAC,CAAA;AAEzD;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,GACjC,cAAc,SAAS,eAAe,GAAG,KAAK,EAC9C,YAAY,SAAS,YAAY,GAAG,YAAY,EAC/C,uGAOC,0BAA0B,CAAC,cAAc,EAAE,YAAY,CAAC,4CAa1D,CAAA"}
@@ -0,0 +1,12 @@
1
+ import { ReactElement } from 'react';
2
+ import type { RichTextElement } from '../types/structure/RichTextElement';
3
+ import type { RichTextLeaf } from '../types/structure/RichTextLeaf';
4
+ import { RichTextFieldRendererProps } from './RichTextFieldRenderer';
5
+ import { RichTextBlocksRendererProps } from './RichTextBlocksRenderer';
6
+ export type RichTextRendererProps<CustomElements extends RichTextElement = never, CustomLeaves extends RichTextLeaf = RichTextLeaf> = RichTextFieldRendererProps<CustomElements, CustomLeaves> | RichTextBlocksRendererProps<CustomElements, CustomLeaves>;
7
+ /**
8
+ * @deprecated Use `RichTextBlocksRenderer` or `RichTextFieldRenderer` instead, or directly use `RichText`.
9
+ * @group Content rendering
10
+ */
11
+ export declare const RichTextRenderer: <CustomElements extends RichTextElement = never, CustomLeaves extends RichTextLeaf = RichTextLeaf>(props: RichTextRendererProps<CustomElements, CustomLeaves>) => ReactElement;
12
+ //# sourceMappingURL=RichTextRenderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RichTextRenderer.d.ts","sourceRoot":"","sources":["../../../src/components/RichTextRenderer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAQ,YAAY,EAAE,MAAM,OAAO,CAAA;AAC1C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAA;AACzE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAA;AACnE,OAAO,EAAyB,0BAA0B,EAAE,MAAM,yBAAyB,CAAA;AAC3F,OAAO,EAA0B,2BAA2B,EAAE,MAAM,0BAA0B,CAAA;AAE9F,MAAM,MAAM,qBAAqB,CAChC,cAAc,SAAS,eAAe,GAAG,KAAK,EAC9C,YAAY,SAAS,YAAY,GAAG,YAAY,IAE9C,0BAA0B,CAAC,cAAc,EAAE,YAAY,CAAC,GACxD,2BAA2B,CAAC,cAAc,EAAE,YAAY,CAAC,CAAA;AAE5D;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EASvB,CAAC,cAAc,SAAS,eAAe,GAAG,KAAK,EAAE,YAAY,SAAS,YAAY,GAAG,YAAY,EACtG,KAAK,EAAE,qBAAqB,CAAC,cAAc,EAAE,YAAY,CAAC,KACtD,YAAY,CAAA"}
@@ -0,0 +1,5 @@
1
+ export * from './RichText';
2
+ export * from './RichTextFieldRenderer';
3
+ export * from './RichTextBlocksRenderer';
4
+ export * from './RichTextRenderer';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,yBAAyB,CAAA;AACvC,cAAc,0BAA0B,CAAA;AACxC,cAAc,oBAAoB,CAAA"}
@@ -0,0 +1,3 @@
1
+ export * from './useRichTextFieldSource';
2
+ export * from './useRichTextBlocksSource';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAA;AACxC,cAAc,2BAA2B,CAAA"}
@@ -0,0 +1,3 @@
1
+ import { RichTextBlock, RichTextBlockSource, RichTextElement, RichTextLeaf } from '../types';
2
+ export declare const useRichTextBlocksSource: <CustomElements extends RichTextElement, CustomLeaves extends RichTextLeaf>({ deserialize, blocks, referencesField, sourceField, referenceDiscriminationField, }: RichTextBlockSource<CustomElements, CustomLeaves>) => RichTextBlock<CustomElements, CustomLeaves>[];
3
+ //# sourceMappingURL=useRichTextBlocksSource.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useRichTextBlocksSource.d.ts","sourceRoot":"","sources":["../../../src/hooks/useRichTextBlocksSource.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,eAAe,EAAE,YAAY,EAAqC,MAAM,UAAU,CAAA;AAK/H,eAAO,MAAM,uBAAuB,GAAI,cAAc,SAAS,eAAe,EAAE,YAAY,SAAS,YAAY,EAAE,sFAMhH,mBAAmB,CAAC,cAAc,EAAE,YAAY,CAAC,kDAiEnD,CAAA"}
@@ -0,0 +1,3 @@
1
+ import { RichTextBlock, RichTextElement, RichTextFieldSource, RichTextLeaf } from '../types';
2
+ export declare const useRichTextFieldSource: <CustomElements extends RichTextElement, CustomLeaves extends RichTextLeaf>({ source, deserialize, }: RichTextFieldSource<CustomElements, CustomLeaves>) => RichTextBlock<CustomElements, CustomLeaves>[];
3
+ //# sourceMappingURL=useRichTextFieldSource.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useRichTextFieldSource.d.ts","sourceRoot":"","sources":["../../../src/hooks/useRichTextFieldSource.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAI5F,eAAO,MAAM,sBAAsB,GAAI,cAAc,SAAS,eAAe,EAAE,YAAY,SAAS,YAAY,EAAE,0BAG/G,mBAAmB,CAAC,cAAc,EAAE,YAAY,CAAC,KAAG,aAAa,CAAC,cAAc,EAAE,YAAY,CAAC,EAkBjG,CAAA"}
@@ -0,0 +1,5 @@
1
+ export * from './components';
2
+ export * from './hooks';
3
+ export * from './types';
4
+ export * from './RichTextRendererError';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,SAAS,CAAA;AACvB,cAAc,SAAS,CAAA;AAEvB,cAAc,yBAAyB,CAAA"}
@@ -0,0 +1,14 @@
1
+ import type { ReactElement } from 'react';
2
+ import type { BuiltinElements } from '../../types/builtin/BuiltinElements';
3
+ import type { RichTextElement } from '../../types/structure/RichTextElement';
4
+ import type { RichTextLeaf } from '../../types/structure/RichTextLeaf';
5
+ import { RichTextBlock } from '../../types/RichTextBlock';
6
+ import { RichTextRenderingOptions } from '../../types/RichTextRenderingOptions';
7
+ export interface ElementRendererProps<CustomElements extends RichTextElement = never, CustomLeaves extends RichTextLeaf = RichTextLeaf> {
8
+ element: CustomElements | BuiltinElements<CustomElements, CustomLeaves>;
9
+ children: ReactElement;
10
+ options: RichTextRenderingOptions<CustomElements, CustomLeaves>;
11
+ block: RichTextBlock<CustomElements, CustomLeaves>;
12
+ }
13
+ export declare function ElementRenderer<CustomElements extends RichTextElement = never, CustomLeaves extends RichTextLeaf = RichTextLeaf>({ element, children, options, block }: ElementRendererProps<CustomElements, CustomLeaves>): import("react/jsx-runtime").JSX.Element;
14
+ //# sourceMappingURL=ElementRenderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ElementRenderer.d.ts","sourceRoot":"","sources":["../../../../src/internal/components/ElementRenderer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAA;AAEzC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAA;AAI1E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAA;AAC5E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAA;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AACzD,OAAO,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAA;AAE/E,MAAM,WAAW,oBAAoB,CACpC,cAAc,SAAS,eAAe,GAAG,KAAK,EAC9C,YAAY,SAAS,YAAY,GAAG,YAAY;IAEhD,OAAO,EAAE,cAAc,GAAG,eAAe,CAAC,cAAc,EAAE,YAAY,CAAC,CAAA;IACvE,QAAQ,EAAE,YAAY,CAAA;IACtB,OAAO,EAAE,wBAAwB,CAAC,cAAc,EAAE,YAAY,CAAC,CAAA;IAC/D,KAAK,EAAE,aAAa,CAAC,cAAc,EAAE,YAAY,CAAC,CAAA;CAClD;AAED,wBAAgB,eAAe,CAC9B,cAAc,SAAS,eAAe,GAAG,KAAK,EAC9C,YAAY,SAAS,YAAY,GAAG,YAAY,EAC/C,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,oBAAoB,CAAC,cAAc,EAAE,YAAY,CAAC,2CA0B1F"}
@@ -0,0 +1,12 @@
1
+ import type { BuiltinLeaves } from '../../types/builtin/BuiltinLeaves';
2
+ import type { RichTextLeaf } from '../../types/structure/RichTextLeaf';
3
+ import { RichTextElement } from '../../types/structure/RichTextElement';
4
+ import { RichTextRenderingOptions } from '../../types/RichTextRenderingOptions';
5
+ import { RichTextBlock } from '../../types/RichTextBlock';
6
+ export interface LeafRendererProps<CustomElements extends RichTextElement = never, CustomLeaves extends RichTextLeaf = RichTextLeaf> {
7
+ options: RichTextRenderingOptions<CustomElements, CustomLeaves>;
8
+ block: RichTextBlock<CustomElements, CustomLeaves>;
9
+ leaf: CustomLeaves & BuiltinLeaves;
10
+ }
11
+ export declare function LeafRenderer<CustomElements extends RichTextElement = never, CustomLeaves extends RichTextLeaf = RichTextLeaf>({ leaf, options: { renderLeaf }, block: { content: { formatVersion } }, }: LeafRendererProps<CustomElements, CustomLeaves>): import("react/jsx-runtime").JSX.Element;
12
+ //# sourceMappingURL=LeafRenderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LeafRenderer.d.ts","sourceRoot":"","sources":["../../../../src/internal/components/LeafRenderer.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAA;AAEtE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAA;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAA;AACvE,OAAO,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAA;AAC/E,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAEzD,MAAM,WAAW,iBAAiB,CAAC,cAAc,SAAS,eAAe,GAAG,KAAK,EAAE,YAAY,SAAS,YAAY,GAAG,YAAY;IAClI,OAAO,EAAE,wBAAwB,CAAC,cAAc,EAAE,YAAY,CAAC,CAAA;IAC/D,KAAK,EAAE,aAAa,CAAC,cAAc,EAAE,YAAY,CAAC,CAAA;IAClD,IAAI,EAAE,YAAY,GAAG,aAAa,CAAA;CAClC;AAED,wBAAgB,YAAY,CAC3B,cAAc,SAAS,eAAe,GAAG,KAAK,EAC9C,YAAY,SAAS,YAAY,GAAG,YAAY,EAC/C,EACD,IAAI,EACJ,OAAO,EAAE,EAAE,UAAU,EAAE,EACvB,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,aAAa,EAAE,EAAE,GACrC,EAAE,iBAAiB,CAAC,cAAc,EAAE,YAAY,CAAC,2CAcjD"}
@@ -0,0 +1,14 @@
1
+ import { ReactElement } from 'react';
2
+ import type { BuiltinElements } from '../../types/builtin/BuiltinElements';
3
+ import type { RichTextElement } from '../../types/structure/RichTextElement';
4
+ import type { RichTextLeaf } from '../../types/structure/RichTextLeaf';
5
+ import { RichTextBlock } from '../../types/RichTextBlock';
6
+ import { RichTextRenderingOptions } from '../../types/RichTextRenderingOptions';
7
+ export interface RenderElementFallbackProps<CustomElements extends RichTextElement = never, CustomLeaves extends RichTextLeaf = RichTextLeaf> {
8
+ element: BuiltinElements<CustomElements, CustomLeaves>;
9
+ children: ReactElement;
10
+ options: RichTextRenderingOptions<CustomElements, CustomLeaves>;
11
+ block: RichTextBlock<CustomElements, CustomLeaves>;
12
+ }
13
+ export declare function RenderElementFallback<CustomElements extends RichTextElement = never, CustomLeaves extends RichTextLeaf = RichTextLeaf>({ element, children, options, block }: RenderElementFallbackProps<CustomElements, CustomLeaves>): import("react/jsx-runtime").JSX.Element;
14
+ //# sourceMappingURL=RenderElementFallback.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RenderElementFallback.d.ts","sourceRoot":"","sources":["../../../../src/internal/components/RenderElementFallback.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAiB,YAAY,EAAE,MAAM,OAAO,CAAA;AACnD,OAAO,KAAK,EAAE,eAAe,EAAqD,MAAM,qCAAqC,CAAA;AAG7H,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAA;AAC5E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAA;AAEtE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AACzD,OAAO,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAA;AAE/E,MAAM,WAAW,0BAA0B,CAC1C,cAAc,SAAS,eAAe,GAAG,KAAK,EAC9C,YAAY,SAAS,YAAY,GAAG,YAAY;IAEhD,OAAO,EAAE,eAAe,CAAC,cAAc,EAAE,YAAY,CAAC,CAAA;IACtD,QAAQ,EAAE,YAAY,CAAA;IACtB,OAAO,EAAE,wBAAwB,CAAC,cAAc,EAAE,YAAY,CAAC,CAAA;IAC/D,KAAK,EAAE,aAAa,CAAC,cAAc,EAAE,YAAY,CAAC,CAAA;CAClD;AAuBD,wBAAgB,qBAAqB,CACpC,cAAc,SAAS,eAAe,GAAG,KAAK,EAC9C,YAAY,SAAS,YAAY,GAAG,YAAY,EAC/C,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,0BAA0B,CAAC,cAAc,EAAE,YAAY,CAAC,2CAqEhG"}
@@ -0,0 +1,6 @@
1
+ import type { BuiltinLeaves } from '../../types/builtin/BuiltinLeaves';
2
+ export interface RenderLeafFallbackProps {
3
+ leaf: BuiltinLeaves;
4
+ }
5
+ export declare function RenderLeafFallback({ leaf }: RenderLeafFallbackProps): import("react/jsx-runtime").JSX.Element;
6
+ //# sourceMappingURL=RenderLeafFallback.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RenderLeafFallback.d.ts","sourceRoot":"","sources":["../../../../src/internal/components/RenderLeafFallback.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAA;AAEtE,MAAM,WAAW,uBAAuB;IACvC,IAAI,EAAE,aAAa,CAAA;CACnB;AAeD,wBAAgB,kBAAkB,CAAC,EAAE,IAAI,EAAE,EAAE,uBAAuB,2CAsBnE"}
@@ -0,0 +1,5 @@
1
+ import type { RichTextElement } from '../types/structure/RichTextElement';
2
+ import type { RichTextLeaf } from '../types/structure/RichTextLeaf';
3
+ import type { RootEditorNode } from '../types/structure/RootEditorNode';
4
+ export declare const defaultDeserialize: <CustomElements extends RichTextElement = never, CustomLeaves extends RichTextLeaf = RichTextLeaf>(source: string) => RootEditorNode<CustomElements, CustomLeaves>;
5
+ //# sourceMappingURL=defaultDeserialize.d.ts.map