@contember/react-richtext-renderer 2.1.0-alpha.3 → 2.1.0-alpha.35

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 (211) hide show
  1. package/package.json +5 -6
  2. package/src/components/RichText.tsx +4 -2
  3. package/src/components/RichTextRenderer.tsx +0 -2
  4. package/src/hooks/useRichTextBlocksSource.ts +30 -28
  5. package/src/index.ts +0 -1
  6. package/src/internal/components/ElementRenderer.tsx +5 -2
  7. package/src/internal/components/LeafRenderer.tsx +1 -1
  8. package/src/internal/components/RenderElementFallback.tsx +3 -3
  9. package/src/types/RichTextRenderingOptions.ts +1 -1
  10. package/src/types/custom/RenderLeaf.ts +6 -8
  11. package/tests/decodeBlockSource.test.tsx +18 -17
  12. package/tests/renderElement.test.tsx +130 -83
  13. package/tests/renderLeaf.test.tsx +31 -23
  14. package/tests/renderReferences.test.tsx +82 -38
  15. package/dist/development/index.cjs +0 -17
  16. package/dist/development/index.cjs.map +0 -1
  17. package/dist/development/index.js +0 -17
  18. package/dist/development/index.js.map +0 -1
  19. package/dist/development/src/RichTextRendererError.cjs +0 -6
  20. package/dist/development/src/RichTextRendererError.cjs.map +0 -1
  21. package/dist/development/src/RichTextRendererError.js +0 -6
  22. package/dist/development/src/RichTextRendererError.js.map +0 -1
  23. package/dist/development/src/components/RichText.cjs +0 -40
  24. package/dist/development/src/components/RichText.cjs.map +0 -1
  25. package/dist/development/src/components/RichText.js +0 -40
  26. package/dist/development/src/components/RichText.js.map +0 -1
  27. package/dist/development/src/components/RichTextBlocksRenderer.cjs +0 -42
  28. package/dist/development/src/components/RichTextBlocksRenderer.cjs.map +0 -1
  29. package/dist/development/src/components/RichTextBlocksRenderer.js +0 -42
  30. package/dist/development/src/components/RichTextBlocksRenderer.js.map +0 -1
  31. package/dist/development/src/components/RichTextFieldRenderer.cjs +0 -36
  32. package/dist/development/src/components/RichTextFieldRenderer.cjs.map +0 -1
  33. package/dist/development/src/components/RichTextFieldRenderer.js +0 -36
  34. package/dist/development/src/components/RichTextFieldRenderer.js.map +0 -1
  35. package/dist/development/src/components/RichTextRenderer.cjs +0 -22
  36. package/dist/development/src/components/RichTextRenderer.cjs.map +0 -1
  37. package/dist/development/src/components/RichTextRenderer.js +0 -22
  38. package/dist/development/src/components/RichTextRenderer.js.map +0 -1
  39. package/dist/development/src/hooks/useRichTextBlocksSource.cjs +0 -62
  40. package/dist/development/src/hooks/useRichTextBlocksSource.cjs.map +0 -1
  41. package/dist/development/src/hooks/useRichTextBlocksSource.js +0 -62
  42. package/dist/development/src/hooks/useRichTextBlocksSource.js.map +0 -1
  43. package/dist/development/src/hooks/useRichTextFieldSource.cjs +0 -26
  44. package/dist/development/src/hooks/useRichTextFieldSource.cjs.map +0 -1
  45. package/dist/development/src/hooks/useRichTextFieldSource.js +0 -26
  46. package/dist/development/src/hooks/useRichTextFieldSource.js.map +0 -1
  47. package/dist/development/src/internal/components/ElementRenderer.cjs +0 -28
  48. package/dist/development/src/internal/components/ElementRenderer.cjs.map +0 -1
  49. package/dist/development/src/internal/components/ElementRenderer.js +0 -28
  50. package/dist/development/src/internal/components/ElementRenderer.js.map +0 -1
  51. package/dist/development/src/internal/components/LeafRenderer.cjs +0 -27
  52. package/dist/development/src/internal/components/LeafRenderer.cjs.map +0 -1
  53. package/dist/development/src/internal/components/LeafRenderer.js +0 -27
  54. package/dist/development/src/internal/components/LeafRenderer.js.map +0 -1
  55. package/dist/development/src/internal/components/RenderElementFallback.cjs +0 -164
  56. package/dist/development/src/internal/components/RenderElementFallback.cjs.map +0 -1
  57. package/dist/development/src/internal/components/RenderElementFallback.js +0 -164
  58. package/dist/development/src/internal/components/RenderElementFallback.js.map +0 -1
  59. package/dist/development/src/internal/components/RenderLeafFallback.cjs +0 -74
  60. package/dist/development/src/internal/components/RenderLeafFallback.cjs.map +0 -1
  61. package/dist/development/src/internal/components/RenderLeafFallback.js +0 -74
  62. package/dist/development/src/internal/components/RenderLeafFallback.js.map +0 -1
  63. package/dist/development/src/internal/defaultDeserialize.cjs +0 -14
  64. package/dist/development/src/internal/defaultDeserialize.cjs.map +0 -1
  65. package/dist/development/src/internal/defaultDeserialize.js +0 -14
  66. package/dist/development/src/internal/defaultDeserialize.js.map +0 -1
  67. package/dist/development/src/internal/renderChildren.cjs +0 -30
  68. package/dist/development/src/internal/renderChildren.cjs.map +0 -1
  69. package/dist/development/src/internal/renderChildren.js +0 -30
  70. package/dist/development/src/internal/renderChildren.js.map +0 -1
  71. package/dist/development/src/internal/useReferenceMetadata.cjs +0 -42
  72. package/dist/development/src/internal/useReferenceMetadata.cjs.map +0 -1
  73. package/dist/development/src/internal/useReferenceMetadata.js +0 -42
  74. package/dist/development/src/internal/useReferenceMetadata.js.map +0 -1
  75. package/dist/production/index.cjs +0 -17
  76. package/dist/production/index.cjs.map +0 -1
  77. package/dist/production/index.js +0 -17
  78. package/dist/production/index.js.map +0 -1
  79. package/dist/production/src/RichTextRendererError.cjs +0 -6
  80. package/dist/production/src/RichTextRendererError.cjs.map +0 -1
  81. package/dist/production/src/RichTextRendererError.js +0 -6
  82. package/dist/production/src/RichTextRendererError.js.map +0 -1
  83. package/dist/production/src/components/RichText.cjs +0 -32
  84. package/dist/production/src/components/RichText.cjs.map +0 -1
  85. package/dist/production/src/components/RichText.js +0 -32
  86. package/dist/production/src/components/RichText.js.map +0 -1
  87. package/dist/production/src/components/RichTextBlocksRenderer.cjs +0 -30
  88. package/dist/production/src/components/RichTextBlocksRenderer.cjs.map +0 -1
  89. package/dist/production/src/components/RichTextBlocksRenderer.js +0 -30
  90. package/dist/production/src/components/RichTextBlocksRenderer.js.map +0 -1
  91. package/dist/production/src/components/RichTextFieldRenderer.cjs +0 -28
  92. package/dist/production/src/components/RichTextFieldRenderer.cjs.map +0 -1
  93. package/dist/production/src/components/RichTextFieldRenderer.js +0 -28
  94. package/dist/production/src/components/RichTextFieldRenderer.js.map +0 -1
  95. package/dist/production/src/components/RichTextRenderer.cjs +0 -14
  96. package/dist/production/src/components/RichTextRenderer.cjs.map +0 -1
  97. package/dist/production/src/components/RichTextRenderer.js +0 -14
  98. package/dist/production/src/components/RichTextRenderer.js.map +0 -1
  99. package/dist/production/src/hooks/useRichTextBlocksSource.cjs +0 -62
  100. package/dist/production/src/hooks/useRichTextBlocksSource.cjs.map +0 -1
  101. package/dist/production/src/hooks/useRichTextBlocksSource.js +0 -62
  102. package/dist/production/src/hooks/useRichTextBlocksSource.js.map +0 -1
  103. package/dist/production/src/hooks/useRichTextFieldSource.cjs +0 -26
  104. package/dist/production/src/hooks/useRichTextFieldSource.cjs.map +0 -1
  105. package/dist/production/src/hooks/useRichTextFieldSource.js +0 -26
  106. package/dist/production/src/hooks/useRichTextFieldSource.js.map +0 -1
  107. package/dist/production/src/internal/components/ElementRenderer.cjs +0 -24
  108. package/dist/production/src/internal/components/ElementRenderer.cjs.map +0 -1
  109. package/dist/production/src/internal/components/ElementRenderer.js +0 -24
  110. package/dist/production/src/internal/components/ElementRenderer.js.map +0 -1
  111. package/dist/production/src/internal/components/LeafRenderer.cjs +0 -23
  112. package/dist/production/src/internal/components/LeafRenderer.cjs.map +0 -1
  113. package/dist/production/src/internal/components/LeafRenderer.js +0 -23
  114. package/dist/production/src/internal/components/LeafRenderer.js.map +0 -1
  115. package/dist/production/src/internal/components/RenderElementFallback.cjs +0 -85
  116. package/dist/production/src/internal/components/RenderElementFallback.cjs.map +0 -1
  117. package/dist/production/src/internal/components/RenderElementFallback.js +0 -85
  118. package/dist/production/src/internal/components/RenderElementFallback.js.map +0 -1
  119. package/dist/production/src/internal/components/RenderLeafFallback.cjs +0 -38
  120. package/dist/production/src/internal/components/RenderLeafFallback.cjs.map +0 -1
  121. package/dist/production/src/internal/components/RenderLeafFallback.js +0 -38
  122. package/dist/production/src/internal/components/RenderLeafFallback.js.map +0 -1
  123. package/dist/production/src/internal/defaultDeserialize.cjs +0 -14
  124. package/dist/production/src/internal/defaultDeserialize.cjs.map +0 -1
  125. package/dist/production/src/internal/defaultDeserialize.js +0 -14
  126. package/dist/production/src/internal/defaultDeserialize.js.map +0 -1
  127. package/dist/production/src/internal/renderChildren.cjs +0 -18
  128. package/dist/production/src/internal/renderChildren.cjs.map +0 -1
  129. package/dist/production/src/internal/renderChildren.js +0 -18
  130. package/dist/production/src/internal/renderChildren.js.map +0 -1
  131. package/dist/production/src/internal/useReferenceMetadata.cjs +0 -37
  132. package/dist/production/src/internal/useReferenceMetadata.cjs.map +0 -1
  133. package/dist/production/src/internal/useReferenceMetadata.js +0 -37
  134. package/dist/production/src/internal/useReferenceMetadata.js.map +0 -1
  135. package/dist/types/RichTextRendererError.d.ts +0 -3
  136. package/dist/types/RichTextRendererError.d.ts.map +0 -1
  137. package/dist/types/components/RichText.d.ts +0 -13
  138. package/dist/types/components/RichText.d.ts.map +0 -1
  139. package/dist/types/components/RichTextBlocksRenderer.d.ts +0 -10
  140. package/dist/types/components/RichTextBlocksRenderer.d.ts.map +0 -1
  141. package/dist/types/components/RichTextFieldRenderer.d.ts +0 -10
  142. package/dist/types/components/RichTextFieldRenderer.d.ts.map +0 -1
  143. package/dist/types/components/RichTextRenderer.d.ts +0 -12
  144. package/dist/types/components/RichTextRenderer.d.ts.map +0 -1
  145. package/dist/types/components/index.d.ts +0 -5
  146. package/dist/types/components/index.d.ts.map +0 -1
  147. package/dist/types/hooks/index.d.ts +0 -3
  148. package/dist/types/hooks/index.d.ts.map +0 -1
  149. package/dist/types/hooks/useRichTextBlocksSource.d.ts +0 -3
  150. package/dist/types/hooks/useRichTextBlocksSource.d.ts.map +0 -1
  151. package/dist/types/hooks/useRichTextFieldSource.d.ts +0 -3
  152. package/dist/types/hooks/useRichTextFieldSource.d.ts.map +0 -1
  153. package/dist/types/index.d.ts +0 -5
  154. package/dist/types/index.d.ts.map +0 -1
  155. package/dist/types/internal/components/ElementRenderer.d.ts +0 -14
  156. package/dist/types/internal/components/ElementRenderer.d.ts.map +0 -1
  157. package/dist/types/internal/components/LeafRenderer.d.ts +0 -12
  158. package/dist/types/internal/components/LeafRenderer.d.ts.map +0 -1
  159. package/dist/types/internal/components/RenderElementFallback.d.ts +0 -14
  160. package/dist/types/internal/components/RenderElementFallback.d.ts.map +0 -1
  161. package/dist/types/internal/components/RenderLeafFallback.d.ts +0 -6
  162. package/dist/types/internal/components/RenderLeafFallback.d.ts.map +0 -1
  163. package/dist/types/internal/defaultDeserialize.d.ts +0 -5
  164. package/dist/types/internal/defaultDeserialize.d.ts.map +0 -1
  165. package/dist/types/internal/renderChildren.d.ts +0 -8
  166. package/dist/types/internal/renderChildren.d.ts.map +0 -1
  167. package/dist/types/internal/useReferenceMetadata.d.ts +0 -9
  168. package/dist/types/internal/useReferenceMetadata.d.ts.map +0 -1
  169. package/dist/types/tsconfig.tsbuildinfo +0 -1
  170. package/dist/types/types/RenderChildren.d.ts +0 -9
  171. package/dist/types/types/RenderChildren.d.ts.map +0 -1
  172. package/dist/types/types/RichTextBlock.d.ts +0 -8
  173. package/dist/types/types/RichTextBlock.d.ts.map +0 -1
  174. package/dist/types/types/RichTextBlockSource.d.ts +0 -9
  175. package/dist/types/types/RichTextBlockSource.d.ts.map +0 -1
  176. package/dist/types/types/RichTextFieldSource.d.ts +0 -6
  177. package/dist/types/types/RichTextFieldSource.d.ts.map +0 -1
  178. package/dist/types/types/RichTextReference.d.ts +0 -5
  179. package/dist/types/types/RichTextReference.d.ts.map +0 -1
  180. package/dist/types/types/RichTextReferenceMetadata.d.ts +0 -15
  181. package/dist/types/types/RichTextReferenceMetadata.d.ts.map +0 -1
  182. package/dist/types/types/RichTextRenderingOptions.d.ts +0 -14
  183. package/dist/types/types/RichTextRenderingOptions.d.ts.map +0 -1
  184. package/dist/types/types/builtin/BuiltinElements.d.ts +0 -48
  185. package/dist/types/types/builtin/BuiltinElements.d.ts.map +0 -1
  186. package/dist/types/types/builtin/BuiltinLeaves.d.ts +0 -21
  187. package/dist/types/types/builtin/BuiltinLeaves.d.ts.map +0 -1
  188. package/dist/types/types/builtin/index.d.ts +0 -3
  189. package/dist/types/types/builtin/index.d.ts.map +0 -1
  190. package/dist/types/types/custom/ReferenceRenderer.d.ts +0 -17
  191. package/dist/types/types/custom/ReferenceRenderer.d.ts.map +0 -1
  192. package/dist/types/types/custom/RenderBlock.d.ts +0 -7
  193. package/dist/types/types/custom/RenderBlock.d.ts.map +0 -1
  194. package/dist/types/types/custom/RenderElement.d.ts +0 -24
  195. package/dist/types/types/custom/RenderElement.d.ts.map +0 -1
  196. package/dist/types/types/custom/RenderLeaf.d.ts +0 -11
  197. package/dist/types/types/custom/RenderLeaf.d.ts.map +0 -1
  198. package/dist/types/types/custom/index.d.ts +0 -5
  199. package/dist/types/types/custom/index.d.ts.map +0 -1
  200. package/dist/types/types/index.d.ts +0 -11
  201. package/dist/types/types/index.d.ts.map +0 -1
  202. package/dist/types/types/structure/RichTextChild.d.ts +0 -5
  203. package/dist/types/types/structure/RichTextChild.d.ts.map +0 -1
  204. package/dist/types/types/structure/RichTextElement.d.ts +0 -8
  205. package/dist/types/types/structure/RichTextElement.d.ts.map +0 -1
  206. package/dist/types/types/structure/RichTextLeaf.d.ts +0 -4
  207. package/dist/types/types/structure/RichTextLeaf.d.ts.map +0 -1
  208. package/dist/types/types/structure/RootEditorNode.d.ts +0 -8
  209. package/dist/types/types/structure/RootEditorNode.d.ts.map +0 -1
  210. package/dist/types/types/structure/index.d.ts +0 -5
  211. package/dist/types/types/structure/index.d.ts.map +0 -1
@@ -1,164 +0,0 @@
1
- import { jsxDEV, Fragment } from "react/jsx-dev-runtime";
2
- import { createElement } from "react";
3
- import { renderChildren } from "../renderChildren.js";
4
- import { useReferenceMetadata } from "../useReferenceMetadata.js";
5
- import { RichTextRendererError } from "../../RichTextRendererError.js";
6
- const getElementDataAttributes = (element, attributeNamePrefix = "contember-") => {
7
- const { children, referenceId, ...extendedSpecifics } = element;
8
- return Object.fromEntries(
9
- Object.entries(extendedSpecifics).filter(([, value]) => {
10
- const t = typeof value;
11
- return t === "string" || t === "number" || t === "boolean";
12
- }).map(([attribute, value]) => [`data-${attributeNamePrefix}${attribute.toLowerCase()}`, value])
13
- );
14
- };
15
- function RenderElementFallback({ element, children, options, block }) {
16
- const attributes = getElementDataAttributes(element, options.attributeNamePrefix);
17
- switch (element.type) {
18
- case "anchor":
19
- return /* @__PURE__ */ jsxDEV("a", { ...attributes, href: element.href, children }, void 0, false, {
20
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/components/RenderElementFallback.tsx",
21
- lineNumber: 51,
22
- columnNumber: 5
23
- }, this);
24
- case "heading":
25
- return createElement(`h${element.level}`, attributes, children);
26
- // TODO numbered
27
- case "horizontalRule":
28
- return /* @__PURE__ */ jsxDEV("hr", { ...attributes }, void 0, false, {
29
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/components/RenderElementFallback.tsx",
30
- lineNumber: 58,
31
- columnNumber: 11
32
- }, this);
33
- case "listItem":
34
- return /* @__PURE__ */ jsxDEV("li", { ...attributes, children }, void 0, false, {
35
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/components/RenderElementFallback.tsx",
36
- lineNumber: 60,
37
- columnNumber: 11
38
- }, this);
39
- case "orderedList":
40
- return /* @__PURE__ */ jsxDEV("ol", { ...attributes, children }, void 0, false, {
41
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/components/RenderElementFallback.tsx",
42
- lineNumber: 62,
43
- columnNumber: 11
44
- }, this);
45
- case "paragraph":
46
- return /* @__PURE__ */ jsxDEV("p", { ...attributes, children }, void 0, false, {
47
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/components/RenderElementFallback.tsx",
48
- lineNumber: 64,
49
- columnNumber: 11
50
- }, this);
51
- case "reference": {
52
- return /* @__PURE__ */ jsxDEV(ReferenceElementFallback, { element, children, options, block }, void 0, false, {
53
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/components/RenderElementFallback.tsx",
54
- lineNumber: 66,
55
- columnNumber: 11
56
- }, this);
57
- }
58
- case "scrollTarget":
59
- return /* @__PURE__ */ jsxDEV("span", { ...attributes, id: element.identifier, children }, void 0, false, {
60
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/components/RenderElementFallback.tsx",
61
- lineNumber: 70,
62
- columnNumber: 5
63
- }, this);
64
- case "table": {
65
- const firstRow = element.children[0];
66
- if (!firstRow || firstRow.headerScope !== "table") {
67
- return /* @__PURE__ */ jsxDEV("table", { ...attributes, children: /* @__PURE__ */ jsxDEV("tbody", { children }, void 0, false, {
68
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/components/RenderElementFallback.tsx",
69
- lineNumber: 79,
70
- columnNumber: 7
71
- }, this) }, void 0, false, {
72
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/components/RenderElementFallback.tsx",
73
- lineNumber: 78,
74
- columnNumber: 6
75
- }, this);
76
- }
77
- return /* @__PURE__ */ jsxDEV("table", { ...attributes, children: [
78
- /* @__PURE__ */ jsxDEV("thead", { children: renderChildren([firstRow], options, block) }, void 0, false, {
79
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/components/RenderElementFallback.tsx",
80
- lineNumber: 85,
81
- columnNumber: 6
82
- }, this),
83
- /* @__PURE__ */ jsxDEV("tbody", { children: renderChildren(element.children.slice(1), options, block) }, void 0, false, {
84
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/components/RenderElementFallback.tsx",
85
- lineNumber: 86,
86
- columnNumber: 6
87
- }, this)
88
- ] }, void 0, true, {
89
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/components/RenderElementFallback.tsx",
90
- lineNumber: 84,
91
- columnNumber: 5
92
- }, this);
93
- }
94
- case "tableRow":
95
- return /* @__PURE__ */ jsxDEV("tr", { ...attributes, children }, void 0, false, {
96
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/components/RenderElementFallback.tsx",
97
- lineNumber: 91,
98
- columnNumber: 11
99
- }, this);
100
- case "tableCell": {
101
- if (element.headerScope) {
102
- return /* @__PURE__ */ jsxDEV("th", { ...attributes, scope: element.headerScope, children }, void 0, false, {
103
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/components/RenderElementFallback.tsx",
104
- lineNumber: 95,
105
- columnNumber: 6
106
- }, this);
107
- }
108
- return /* @__PURE__ */ jsxDEV("td", { ...attributes, children }, void 0, false, {
109
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/components/RenderElementFallback.tsx",
110
- lineNumber: 100,
111
- columnNumber: 11
112
- }, this);
113
- }
114
- case "unorderedList":
115
- return /* @__PURE__ */ jsxDEV("ul", { ...attributes, children }, void 0, false, {
116
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/components/RenderElementFallback.tsx",
117
- lineNumber: 103,
118
- columnNumber: 11
119
- }, this);
120
- default: {
121
- {
122
- throw new RichTextRendererError(
123
- `RichTextRenderer: unknown element of type '${element.type}'.`
124
- );
125
- }
126
- }
127
- }
128
- }
129
- function ReferenceElementFallback({ element, children, options, block }) {
130
- const elementMetadata = useReferenceMetadata(element, options, block, true);
131
- if (elementMetadata.referenceRenderer === void 0 || elementMetadata.referenceType === void 0 || elementMetadata.reference === void 0) {
132
- return children;
133
- }
134
- let Renderer = elementMetadata.referenceRenderer;
135
- return /* @__PURE__ */ jsxDEV(Fragment, { children: /* @__PURE__ */ jsxDEV(
136
- Renderer,
137
- {
138
- referenceType: elementMetadata.referenceType,
139
- referenceRenderer: elementMetadata.referenceRenderer,
140
- reference: elementMetadata.reference,
141
- formatVersion: block.content.formatVersion,
142
- block,
143
- options,
144
- element,
145
- children
146
- },
147
- void 0,
148
- false,
149
- {
150
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/components/RenderElementFallback.tsx",
151
- lineNumber: 140,
152
- columnNumber: 4
153
- },
154
- this
155
- ) }, void 0, false, {
156
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/components/RenderElementFallback.tsx",
157
- lineNumber: 139,
158
- columnNumber: 3
159
- }, this);
160
- }
161
- export {
162
- RenderElementFallback
163
- };
164
- //# sourceMappingURL=RenderElementFallback.js.map
@@ -1 +0,0 @@
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\telementMetadata.referenceType === undefined ||\n\t\telementMetadata.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":"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"}
@@ -1,74 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const jsxDevRuntime = require("react/jsx-dev-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__ */ jsxDevRuntime.jsxDEV(React.Fragment, { children: [
11
- !!i && /* @__PURE__ */ jsxDevRuntime.jsxDEV("br", {}, void 0, false, {
12
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/components/RenderLeafFallback.tsx",
13
- lineNumber: 15,
14
- columnNumber: 12
15
- }, this),
16
- line
17
- ] }, i, true, {
18
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/components/RenderLeafFallback.tsx",
19
- lineNumber: 14,
20
- columnNumber: 3
21
- }, this));
22
- }
23
- function RenderLeafFallback({ leaf }) {
24
- let element = jsxN2br(leaf.text);
25
- if ("isCode" in leaf && leaf.isCode === true) {
26
- element = /* @__PURE__ */ jsxDevRuntime.jsxDEV("code", { children: element }, void 0, false, {
27
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/components/RenderLeafFallback.tsx",
28
- lineNumber: 25,
29
- columnNumber: 13
30
- }, this);
31
- }
32
- if ("isStruckThrough" in leaf && leaf.isStruckThrough === true) {
33
- element = /* @__PURE__ */ jsxDevRuntime.jsxDEV("s", { children: element }, void 0, false, {
34
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/components/RenderLeafFallback.tsx",
35
- lineNumber: 28,
36
- columnNumber: 13
37
- }, this);
38
- }
39
- if ("isHighlighted" in leaf && leaf.isHighlighted === true) {
40
- element = /* @__PURE__ */ jsxDevRuntime.jsxDEV("em", { children: element }, void 0, false, {
41
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/components/RenderLeafFallback.tsx",
42
- lineNumber: 31,
43
- columnNumber: 13
44
- }, this);
45
- }
46
- if ("isUnderlined" in leaf && leaf.isUnderlined === true) {
47
- element = /* @__PURE__ */ jsxDevRuntime.jsxDEV("u", { children: element }, void 0, false, {
48
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/components/RenderLeafFallback.tsx",
49
- lineNumber: 34,
50
- columnNumber: 13
51
- }, this);
52
- }
53
- if ("isItalic" in leaf && leaf.isItalic === true) {
54
- element = /* @__PURE__ */ jsxDevRuntime.jsxDEV("i", { children: element }, void 0, false, {
55
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/components/RenderLeafFallback.tsx",
56
- lineNumber: 37,
57
- columnNumber: 13
58
- }, this);
59
- }
60
- if ("isBold" in leaf && leaf.isBold === true) {
61
- element = /* @__PURE__ */ jsxDevRuntime.jsxDEV("b", { children: element }, void 0, false, {
62
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/components/RenderLeafFallback.tsx",
63
- lineNumber: 40,
64
- columnNumber: 13
65
- }, this);
66
- }
67
- return /* @__PURE__ */ jsxDevRuntime.jsxDEV(jsxDevRuntime.Fragment, { children: element }, void 0, false, {
68
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/components/RenderLeafFallback.tsx",
69
- lineNumber: 42,
70
- columnNumber: 9
71
- }, this);
72
- }
73
- exports.RenderLeafFallback = RenderLeafFallback;
74
- //# sourceMappingURL=RenderLeafFallback.cjs.map
@@ -1 +0,0 @@
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":["jsxDEV","Fragment"],"mappings":";;;;AAOA,SAAS,QAAQ,MAAyB;AACnC,QAAA,QAAQ,KAAK,MAAM,IAAI;AACzB,MAAA,MAAM,UAAU,GAAG;AACf,WAAA;AAAA,EAAA;AAER,SAAO,MAAM,IAAI,CAAC,MAAM,MACvBA,qCAACC,MAAAA,UAAA,EACC,UAAA;AAAA,IAAC,CAAA,CAAC,KAAKD,qCAAC,MAAD,CAAA,GAAA,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAI,GAAA,IAAA;AAAA,IACX;AAAA,EAAA,EAAA,GAFa,GAAf,MAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAA,IAGA,CACA;AACF;AAEgB,SAAA,mBAAmB,EAAE,QAAiC;AACjE,MAAA,UAAU,QAAQ,KAAK,IAAI;AAE/B,MAAI,YAAY,QAAQ,KAAK,WAAW,MAAM;AACnC,cAAAA,8BAAAA,OAAC,UAAM,UAAP,WAAA,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAe,GAAA,IAAA;AAAA,EAAA;AAE1B,MAAI,qBAAqB,QAAQ,KAAK,oBAAoB,MAAM;AACrD,cAAAA,8BAAAA,OAAC,OAAG,UAAJ,WAAA,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAY,GAAA,IAAA;AAAA,EAAA;AAEvB,MAAI,mBAAmB,QAAQ,KAAK,kBAAkB,MAAM;AACjD,cAAAA,8BAAAA,OAAC,QAAI,UAAL,WAAA,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAa,GAAA,IAAA;AAAA,EAAA;AAExB,MAAI,kBAAkB,QAAQ,KAAK,iBAAiB,MAAM;AAC/C,cAAAA,8BAAAA,OAAC,OAAG,UAAJ,WAAA,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAY,GAAA,IAAA;AAAA,EAAA;AAEvB,MAAI,cAAc,QAAQ,KAAK,aAAa,MAAM;AACvC,cAAAA,8BAAAA,OAAC,OAAG,UAAJ,WAAA,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAY,GAAA,IAAA;AAAA,EAAA;AAEvB,MAAI,YAAY,QAAQ,KAAK,WAAW,MAAM;AACnC,cAAAA,8BAAAA,OAAC,OAAG,UAAJ,WAAA,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAY,GAAA,IAAA;AAAA,EAAA;AAEvB,wEAAU,UAAH,WAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAW,GAAA,IAAA;AACnB;;"}
@@ -1,74 +0,0 @@
1
- import { jsxDEV, Fragment } from "react/jsx-dev-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__ */ jsxDEV(Fragment$1, { children: [
9
- !!i && /* @__PURE__ */ jsxDEV("br", {}, void 0, false, {
10
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/components/RenderLeafFallback.tsx",
11
- lineNumber: 15,
12
- columnNumber: 12
13
- }, this),
14
- line
15
- ] }, i, true, {
16
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/components/RenderLeafFallback.tsx",
17
- lineNumber: 14,
18
- columnNumber: 3
19
- }, this));
20
- }
21
- function RenderLeafFallback({ leaf }) {
22
- let element = jsxN2br(leaf.text);
23
- if ("isCode" in leaf && leaf.isCode === true) {
24
- element = /* @__PURE__ */ jsxDEV("code", { children: element }, void 0, false, {
25
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/components/RenderLeafFallback.tsx",
26
- lineNumber: 25,
27
- columnNumber: 13
28
- }, this);
29
- }
30
- if ("isStruckThrough" in leaf && leaf.isStruckThrough === true) {
31
- element = /* @__PURE__ */ jsxDEV("s", { children: element }, void 0, false, {
32
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/components/RenderLeafFallback.tsx",
33
- lineNumber: 28,
34
- columnNumber: 13
35
- }, this);
36
- }
37
- if ("isHighlighted" in leaf && leaf.isHighlighted === true) {
38
- element = /* @__PURE__ */ jsxDEV("em", { children: element }, void 0, false, {
39
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/components/RenderLeafFallback.tsx",
40
- lineNumber: 31,
41
- columnNumber: 13
42
- }, this);
43
- }
44
- if ("isUnderlined" in leaf && leaf.isUnderlined === true) {
45
- element = /* @__PURE__ */ jsxDEV("u", { children: element }, void 0, false, {
46
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/components/RenderLeafFallback.tsx",
47
- lineNumber: 34,
48
- columnNumber: 13
49
- }, this);
50
- }
51
- if ("isItalic" in leaf && leaf.isItalic === true) {
52
- element = /* @__PURE__ */ jsxDEV("i", { children: element }, void 0, false, {
53
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/components/RenderLeafFallback.tsx",
54
- lineNumber: 37,
55
- columnNumber: 13
56
- }, this);
57
- }
58
- if ("isBold" in leaf && leaf.isBold === true) {
59
- element = /* @__PURE__ */ jsxDEV("b", { children: element }, void 0, false, {
60
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/components/RenderLeafFallback.tsx",
61
- lineNumber: 40,
62
- columnNumber: 13
63
- }, this);
64
- }
65
- return /* @__PURE__ */ jsxDEV(Fragment, { children: element }, void 0, false, {
66
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/components/RenderLeafFallback.tsx",
67
- lineNumber: 42,
68
- columnNumber: 9
69
- }, this);
70
- }
71
- export {
72
- RenderLeafFallback
73
- };
74
- //# sourceMappingURL=RenderLeafFallback.js.map
@@ -1 +0,0 @@
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;AACnC,QAAA,QAAQ,KAAK,MAAM,IAAI;AACzB,MAAA,MAAM,UAAU,GAAG;AACf,WAAA;AAAA,EAAA;AAER,SAAO,MAAM,IAAI,CAAC,MAAM,MACvB,uBAACA,YAAA,EACC,UAAA;AAAA,IAAC,CAAA,CAAC,KAAK,uBAAC,MAAD,CAAA,GAAA,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAI,GAAA,IAAA;AAAA,IACX;AAAA,EAAA,EAAA,GAFa,GAAf,MAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAA,IAGA,CACA;AACF;AAEgB,SAAA,mBAAmB,EAAE,QAAiC;AACjE,MAAA,UAAU,QAAQ,KAAK,IAAI;AAE/B,MAAI,YAAY,QAAQ,KAAK,WAAW,MAAM;AACnC,cAAA,uBAAC,UAAM,UAAP,WAAA,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAe,GAAA,IAAA;AAAA,EAAA;AAE1B,MAAI,qBAAqB,QAAQ,KAAK,oBAAoB,MAAM;AACrD,cAAA,uBAAC,OAAG,UAAJ,WAAA,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAY,GAAA,IAAA;AAAA,EAAA;AAEvB,MAAI,mBAAmB,QAAQ,KAAK,kBAAkB,MAAM;AACjD,cAAA,uBAAC,QAAI,UAAL,WAAA,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAa,GAAA,IAAA;AAAA,EAAA;AAExB,MAAI,kBAAkB,QAAQ,KAAK,iBAAiB,MAAM;AAC/C,cAAA,uBAAC,OAAG,UAAJ,WAAA,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAY,GAAA,IAAA;AAAA,EAAA;AAEvB,MAAI,cAAc,QAAQ,KAAK,aAAa,MAAM;AACvC,cAAA,uBAAC,OAAG,UAAJ,WAAA,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAY,GAAA,IAAA;AAAA,EAAA;AAEvB,MAAI,YAAY,QAAQ,KAAK,WAAW,MAAM;AACnC,cAAA,uBAAC,OAAG,UAAJ,WAAA,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAY,GAAA,IAAA;AAAA,EAAA;AAEvB,4CAAU,UAAH,WAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAW,GAAA,IAAA;AACnB;"}
@@ -1,14 +0,0 @@
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
@@ -1 +0,0 @@
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":";;AAIa,MAAA,qBAAqB,CAIjC,WACkD;AAC9C,MAAA;AACI,WAAA,KAAK,MAAM,MAAM;AAAA,WAChB,GAAG;AACJ,WAAA;AAAA,MACN,eAAe;AAAA,MACf,UAAU,CAAA;AAAA,IACX;AAAA,EAAA;AAEF;;"}
@@ -1,14 +0,0 @@
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
@@ -1 +0,0 @@
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":"AAIa,MAAA,qBAAqB,CAIjC,WACkD;AAC9C,MAAA;AACI,WAAA,KAAK,MAAM,MAAM;AAAA,WAChB,GAAG;AACJ,WAAA;AAAA,MACN,eAAe;AAAA,MACf,UAAU,CAAA;AAAA,IACX;AAAA,EAAA;AAEF;"}
@@ -1,30 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const jsxDevRuntime = require("react/jsx-dev-runtime");
4
- const ElementRenderer = require("./components/ElementRenderer.cjs");
5
- const LeafRenderer = require("./components/LeafRenderer.cjs");
6
- const renderChildren = (children, options, block) => {
7
- return /* @__PURE__ */ jsxDevRuntime.jsxDEV(jsxDevRuntime.Fragment, { children: (Array.isArray(children) ? children : [children]).map((child, i) => {
8
- if ("text" in child) {
9
- return /* @__PURE__ */ jsxDevRuntime.jsxDEV(LeafRenderer.LeafRenderer, { leaf: child, options, block }, i, false, {
10
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/renderChildren.tsx",
11
- lineNumber: 24,
12
- columnNumber: 13
13
- }, void 0);
14
- }
15
- if ("children" in child) {
16
- return /* @__PURE__ */ jsxDevRuntime.jsxDEV(ElementRenderer.ElementRenderer, { element: child, options, block, children: renderChildren(child.children, options, block) }, i, false, {
17
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/renderChildren.tsx",
18
- lineNumber: 28,
19
- columnNumber: 7
20
- }, void 0);
21
- }
22
- return null;
23
- }) }, void 0, false, {
24
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/renderChildren.tsx",
25
- lineNumber: 21,
26
- columnNumber: 3
27
- }, void 0);
28
- };
29
- exports.renderChildren = renderChildren;
30
- //# sourceMappingURL=renderChildren.cjs.map
@@ -1 +0,0 @@
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":["jsxDEV","Fragment","LeafRenderer","this","ElementRenderer"],"mappings":";;;;;AASO,MAAM,iBAAiB,CAI7B,UAGA,SACA,UACkB;AAClB,SAEIA,8BAAAA,OAAAC,cAAAA,UAAA,EAAA,WAAA,MAAM,QAAQ,QAAQ,IAAI,WAAW,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,MAAM;AACpE,QAAI,UAAU,OAAO;AACpB,kDAAQC,2BAAmD,EAAA,MAAM,OAAO,SAAkB,SAAlC,GAAjD,OAAA;AAAA,QAAA,UAAA;AAAA,QAAA,YAAA;AAAA,QAAA,cAAA;AAAA,MAAiG,GAAAC,MAAA;AAAA,IAAA;AAEzG,QAAI,cAAc,OAAO;AACxB,aACEH,8BAAAA,OAAAI,gBAAAA,iBAAA,EAAsD,SAAS,OAAO,SAAkB,OACvF,UAA6C,eAAA,MAAM,UAA6B,SAAS,KAAK,EAAA,GAD5C,GAApD,OAAA;AAAA,QAAA,UAAA;AAAA,QAAA,YAAA;AAAA,QAAA,cAAA;AAAA,MAEA,GAAAD,MAAA;AAAA,IAAA;AAGK,WAAA;AAAA,EAAA,CACP,EAbF,GAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAcA,GAAAA,MAAA;AAEF;;"}
@@ -1,30 +0,0 @@
1
- import { jsxDEV, Fragment } from "react/jsx-dev-runtime";
2
- import { ElementRenderer } from "./components/ElementRenderer.js";
3
- import { LeafRenderer } from "./components/LeafRenderer.js";
4
- const renderChildren = (children, options, block) => {
5
- return /* @__PURE__ */ jsxDEV(Fragment, { children: (Array.isArray(children) ? children : [children]).map((child, i) => {
6
- if ("text" in child) {
7
- return /* @__PURE__ */ jsxDEV(LeafRenderer, { leaf: child, options, block }, i, false, {
8
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/renderChildren.tsx",
9
- lineNumber: 24,
10
- columnNumber: 13
11
- }, void 0);
12
- }
13
- if ("children" in child) {
14
- return /* @__PURE__ */ jsxDEV(ElementRenderer, { element: child, options, block, children: renderChildren(child.children, options, block) }, i, false, {
15
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/renderChildren.tsx",
16
- lineNumber: 28,
17
- columnNumber: 7
18
- }, void 0);
19
- }
20
- return null;
21
- }) }, void 0, false, {
22
- fileName: "/home/runner/work/contember/contember/packages/react-richtext-renderer/src/internal/renderChildren.tsx",
23
- lineNumber: 21,
24
- columnNumber: 3
25
- }, void 0);
26
- };
27
- export {
28
- renderChildren
29
- };
30
- //# sourceMappingURL=renderChildren.js.map
@@ -1 +0,0 @@
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":["this"],"mappings":";;;AASO,MAAM,iBAAiB,CAI7B,UAGA,SACA,UACkB;AAClB,SAEI,uBAAA,UAAA,EAAA,WAAA,MAAM,QAAQ,QAAQ,IAAI,WAAW,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,MAAM;AACpE,QAAI,UAAU,OAAO;AACpB,oCAAQ,cAAmD,EAAA,MAAM,OAAO,SAAkB,SAAlC,GAAjD,OAAA;AAAA,QAAA,UAAA;AAAA,QAAA,YAAA;AAAA,QAAA,cAAA;AAAA,MAAiG,GAAAA,MAAA;AAAA,IAAA;AAEzG,QAAI,cAAc,OAAO;AACxB,aACE,uBAAA,iBAAA,EAAsD,SAAS,OAAO,SAAkB,OACvF,UAA6C,eAAA,MAAM,UAA6B,SAAS,KAAK,EAAA,GAD5C,GAApD,OAAA;AAAA,QAAA,UAAA;AAAA,QAAA,YAAA;AAAA,QAAA,cAAA;AAAA,MAEA,GAAAA,MAAA;AAAA,IAAA;AAGK,WAAA;AAAA,EAAA,CACP,EAbF,GAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAcA,GAAAA,MAAA;AAEF;"}
@@ -1,42 +0,0 @@
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
- if (expectReference) {
17
- throw new RichTextRendererError.RichTextRendererError(
18
- `RichTextRenderer: Expected element to have a referenceId.`
19
- );
20
- }
21
- return emptyReference;
22
- }
23
- const reference = block.references?.[id];
24
- if (reference === void 0) {
25
- if (undefinedReferenceHandler) {
26
- return undefinedReferenceHandler(id) ?? emptyReference;
27
- } else {
28
- throw new RichTextRendererError.RichTextRendererError(
29
- `RichTextRenderer: Cannot find reference id '${id}'`
30
- );
31
- }
32
- }
33
- const referenceRenderer = referenceRenderers?.[reference.type];
34
- return {
35
- reference,
36
- referenceType: reference.type,
37
- referenceRenderer
38
- };
39
- }, [block.references, element, expectReference, referenceRenderers, undefinedReferenceHandler]);
40
- };
41
- exports.useReferenceMetadata = useReferenceMetadata;
42
- //# sourceMappingURL=useReferenceMetadata.cjs.map
@@ -1 +0,0 @@
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,cAAQ,MAAM;AACd,UAAA,KAAK,QAAQ,aAAa;AAE5B,QAAA,OAAO,OAAO,UAAU;AACvB,UAAuB,iBAAiB;AAC3C,cAAM,IAAIC,sBAAA;AAAA,UACT;AAAA,QACD;AAAA,MAAA;AAEM,aAAA;AAAA,IAAA;AAGF,UAAA,YAAmC,MAAM,aAAa,EAAE;AAE9D,QAAI,cAAc,QAAW;AAC5B,UAAI,2BAA2B;AACvB,eAAA,0BAA0B,EAAE,KAAK;AAAA,MAAA,OAClC;AACN,cAAM,IAAIA,sBAAA;AAAA,UACT,+CAA+C,EAAE;AAAA,QAClD;AAAA,MAAA;AAAA,IACD;AAGK,UAAA,oBAAoB,qBAAqB,UAAU,IAAI;AAEtD,WAAA;AAAA,MACN;AAAA,MACA,eAAe,UAAU;AAAA,MACzB;AAAA,IACD;AAAA,EAAA,GACE,CAAC,MAAM,YAAY,SAAS,iBAAiB,oBAAoB,yBAAyB,CAAC;AAC/F;;"}
@@ -1,42 +0,0 @@
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
- if (expectReference) {
15
- throw new RichTextRendererError(
16
- `RichTextRenderer: Expected element to have a referenceId.`
17
- );
18
- }
19
- return emptyReference;
20
- }
21
- const reference = block.references?.[id];
22
- if (reference === void 0) {
23
- if (undefinedReferenceHandler) {
24
- return undefinedReferenceHandler(id) ?? emptyReference;
25
- } else {
26
- throw new RichTextRendererError(
27
- `RichTextRenderer: Cannot find reference id '${id}'`
28
- );
29
- }
30
- }
31
- const referenceRenderer = referenceRenderers?.[reference.type];
32
- return {
33
- reference,
34
- referenceType: reference.type,
35
- referenceRenderer
36
- };
37
- }, [block.references, element, expectReference, referenceRenderers, undefinedReferenceHandler]);
38
- };
39
- export {
40
- useReferenceMetadata
41
- };
42
- //# sourceMappingURL=useReferenceMetadata.js.map
@@ -1 +0,0 @@
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;AACd,UAAA,KAAK,QAAQ,aAAa;AAE5B,QAAA,OAAO,OAAO,UAAU;AACvB,UAAuB,iBAAiB;AAC3C,cAAM,IAAI;AAAA,UACT;AAAA,QACD;AAAA,MAAA;AAEM,aAAA;AAAA,IAAA;AAGF,UAAA,YAAmC,MAAM,aAAa,EAAE;AAE9D,QAAI,cAAc,QAAW;AAC5B,UAAI,2BAA2B;AACvB,eAAA,0BAA0B,EAAE,KAAK;AAAA,MAAA,OAClC;AACN,cAAM,IAAI;AAAA,UACT,+CAA+C,EAAE;AAAA,QAClD;AAAA,MAAA;AAAA,IACD;AAGK,UAAA,oBAAoB,qBAAqB,UAAU,IAAI;AAEtD,WAAA;AAAA,MACN;AAAA,MACA,eAAe,UAAU;AAAA,MACzB;AAAA,IACD;AAAA,EAAA,GACE,CAAC,MAAM,YAAY,SAAS,iBAAiB,oBAAoB,yBAAyB,CAAC;AAC/F;"}
@@ -1,17 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const RichTextRendererError = require("./src/RichTextRendererError.cjs");
4
- const RichText = require("./src/components/RichText.cjs");
5
- const RichTextFieldRenderer = require("./src/components/RichTextFieldRenderer.cjs");
6
- const RichTextBlocksRenderer = require("./src/components/RichTextBlocksRenderer.cjs");
7
- const RichTextRenderer = require("./src/components/RichTextRenderer.cjs");
8
- const useRichTextFieldSource = require("./src/hooks/useRichTextFieldSource.cjs");
9
- const useRichTextBlocksSource = require("./src/hooks/useRichTextBlocksSource.cjs");
10
- exports.RichTextRendererError = RichTextRendererError.RichTextRendererError;
11
- exports.RichText = RichText.RichText;
12
- exports.RichTextFieldRenderer = RichTextFieldRenderer.RichTextFieldRenderer;
13
- exports.RichTextBlocksRenderer = RichTextBlocksRenderer.RichTextBlocksRenderer;
14
- exports.RichTextRenderer = RichTextRenderer.RichTextRenderer;
15
- exports.useRichTextFieldSource = useRichTextFieldSource.useRichTextFieldSource;
16
- exports.useRichTextBlocksSource = useRichTextBlocksSource.useRichTextBlocksSource;
17
- //# sourceMappingURL=index.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;"}
@@ -1,17 +0,0 @@
1
- import { RichTextRendererError } from "./src/RichTextRendererError.js";
2
- import { RichText } from "./src/components/RichText.js";
3
- import { RichTextFieldRenderer } from "./src/components/RichTextFieldRenderer.js";
4
- import { RichTextBlocksRenderer } from "./src/components/RichTextBlocksRenderer.js";
5
- import { RichTextRenderer } from "./src/components/RichTextRenderer.js";
6
- import { useRichTextFieldSource } from "./src/hooks/useRichTextFieldSource.js";
7
- import { useRichTextBlocksSource } from "./src/hooks/useRichTextBlocksSource.js";
8
- export {
9
- RichText,
10
- RichTextBlocksRenderer,
11
- RichTextFieldRenderer,
12
- RichTextRenderer,
13
- RichTextRendererError,
14
- useRichTextBlocksSource,
15
- useRichTextFieldSource
16
- };
17
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}