@splunk/visualizations 28.8.0 → 28.9.1

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 (279) hide show
  1. package/Area.config.js +2 -4
  2. package/Area.config.js.map +2 -2
  3. package/Area.js +245 -147
  4. package/Area.js.map +4 -4
  5. package/Bar.config.js +2 -4
  6. package/Bar.config.js.map +2 -2
  7. package/Bar.js +246 -148
  8. package/Bar.js.map +4 -4
  9. package/Bubble/Bubble.d.ts +3 -1
  10. package/Bubble/Bubble.d.ts.map +1 -1
  11. package/Bubble.js +216 -108
  12. package/Bubble.js.map +4 -4
  13. package/CHANGELOG.external.md +43 -1
  14. package/ChoroplethSvg/ChoroplethSvg.d.ts +3 -1
  15. package/ChoroplethSvg/ChoroplethSvg.d.ts.map +1 -1
  16. package/ChoroplethSvg/PureChoroplethSvg/PureChoroplethSvg.d.ts.map +1 -1
  17. package/ChoroplethSvg/PureChoroplethSvg/SvgMutator.d.ts.map +1 -1
  18. package/ChoroplethSvg.js +638 -209
  19. package/ChoroplethSvg.js.map +4 -4
  20. package/Column.config.js +2 -4
  21. package/Column.config.js.map +2 -2
  22. package/Column.js +246 -148
  23. package/Column.js.map +4 -4
  24. package/Ellipse/Ellipse.d.ts +3 -1
  25. package/Ellipse/Ellipse.d.ts.map +1 -1
  26. package/Ellipse.js +216 -105
  27. package/Ellipse.js.map +4 -4
  28. package/Events/Events.d.ts +5 -3
  29. package/Events/Events.d.ts.map +1 -1
  30. package/Events/PureEvents/FieldSummaryTooltip.d.ts.map +1 -1
  31. package/Events/PureEvents/PureEvents.d.ts +0 -1
  32. package/Events/PureEvents/PureEvents.d.ts.map +1 -1
  33. package/Events.js +270 -157
  34. package/Events.js.map +4 -4
  35. package/FillerGauge.js +243 -140
  36. package/FillerGauge.js.map +4 -4
  37. package/Image/Image.d.ts +3 -1
  38. package/Image/Image.d.ts.map +1 -1
  39. package/Image.js +217 -106
  40. package/Image.js.map +4 -4
  41. package/Line.config.js +2 -4
  42. package/Line.config.js.map +2 -2
  43. package/Line.js +246 -148
  44. package/Line.js.map +4 -4
  45. package/LinkGraph/LinkGraph.d.ts +3 -1
  46. package/LinkGraph/LinkGraph.d.ts.map +1 -1
  47. package/LinkGraph/PureLinkGraph/PureLinkGraphUtils.d.ts.map +1 -1
  48. package/LinkGraph/PureLinkGraph/components/Node.d.ts.map +1 -1
  49. package/LinkGraph.config.js +1 -1
  50. package/LinkGraph.config.js.map +2 -2
  51. package/LinkGraph.js +802 -682
  52. package/LinkGraph.js.map +4 -4
  53. package/Map/Map.d.ts +10 -9
  54. package/Map/Map.d.ts.map +1 -1
  55. package/Map/PureMap/BubbleLayer.d.ts.map +1 -1
  56. package/Map/PureMap/ChoroplethLayer.d.ts.map +1 -1
  57. package/Map/PureMap/ClusterLayer.d.ts.map +1 -1
  58. package/Map/PureMap/MapUtils.d.ts.map +1 -1
  59. package/Map/PureMap/MarkerWrapper.d.ts.map +1 -1
  60. package/Map/PureMap/PureMap.d.ts +8 -65
  61. package/Map/PureMap/PureMap.d.ts.map +1 -1
  62. package/Map/PureMap/mapWorker.d.ts +2 -0
  63. package/Map/PureMap/mapWorker.d.ts.map +1 -0
  64. package/Map.config.js +1 -1
  65. package/Map.config.js.map +2 -2
  66. package/Map.js +439 -336
  67. package/Map.js.map +4 -4
  68. package/Markdown/Markdown.d.ts +9 -1
  69. package/Markdown/Markdown.d.ts.map +1 -1
  70. package/Markdown/config.d.ts.map +1 -1
  71. package/Markdown.config.js +5 -0
  72. package/Markdown.config.js.map +2 -2
  73. package/Markdown.js +225 -94
  74. package/Markdown.js.map +3 -3
  75. package/MarkerGauge.js +239 -134
  76. package/MarkerGauge.js.map +4 -4
  77. package/NetworkGraph/PureNetworkGraph/PureNetworkGraph.d.ts.map +1 -1
  78. package/NetworkGraph/PureNetworkGraph/components/NetworkGraphSvg.d.ts +1 -0
  79. package/NetworkGraph/PureNetworkGraph/components/NetworkGraphSvg.d.ts.map +1 -1
  80. package/NetworkGraph/PureNetworkGraph/components/Node.d.ts +1 -0
  81. package/NetworkGraph/PureNetworkGraph/components/Node.d.ts.map +1 -1
  82. package/NetworkGraph/PureNetworkGraph/utils/networkGraphUtils.d.ts +3 -5
  83. package/NetworkGraph/PureNetworkGraph/utils/networkGraphUtils.d.ts.map +1 -1
  84. package/NetworkGraph.config.js +4 -2
  85. package/NetworkGraph.config.js.map +2 -2
  86. package/NetworkGraph.js +327 -188
  87. package/NetworkGraph.js.map +4 -4
  88. package/ParallelCoordinates/ParallelCoordinates.d.ts +3 -1
  89. package/ParallelCoordinates/ParallelCoordinates.d.ts.map +1 -1
  90. package/ParallelCoordinates.js +239 -128
  91. package/ParallelCoordinates.js.map +4 -4
  92. package/Pie/config.d.ts.map +1 -1
  93. package/Pie/pieUtils.d.ts.map +1 -1
  94. package/Pie.config.js +4 -2
  95. package/Pie.config.js.map +2 -2
  96. package/Pie.js +228 -125
  97. package/Pie.js.map +3 -3
  98. package/ProcessTree/ProcessTree.d.ts +3 -1
  99. package/ProcessTree/ProcessTree.d.ts.map +1 -1
  100. package/ProcessTree/PureProcessTree/PureProcessTree.d.ts +1 -0
  101. package/ProcessTree/PureProcessTree/PureProcessTree.d.ts.map +1 -1
  102. package/ProcessTree/PureProcessTree/components/ProcessTreeLeftPanel.d.ts +1 -0
  103. package/ProcessTree/PureProcessTree/components/ProcessTreeLeftPanel.d.ts.map +1 -1
  104. package/ProcessTree/PureProcessTree/hooks/useProcessTreeGraphData.d.ts +2 -1
  105. package/ProcessTree/PureProcessTree/hooks/useProcessTreeGraphData.d.ts.map +1 -1
  106. package/ProcessTree/PureProcessTree/utils/iconLoader.d.ts +2 -0
  107. package/ProcessTree/PureProcessTree/utils/iconLoader.d.ts.map +1 -1
  108. package/ProcessTree/PureProcessTree/utils/processTreeUtils.d.ts +5 -1
  109. package/ProcessTree/PureProcessTree/utils/processTreeUtils.d.ts.map +1 -1
  110. package/ProcessTree.js +435 -192
  111. package/ProcessTree.js.map +4 -4
  112. package/Punchcard/Punchcard.d.ts +3 -1
  113. package/Punchcard/Punchcard.d.ts.map +1 -1
  114. package/Punchcard.js +238 -129
  115. package/Punchcard.js.map +4 -4
  116. package/Rectangle/Rectangle.d.ts +3 -1
  117. package/Rectangle/Rectangle.d.ts.map +1 -1
  118. package/Rectangle.js +218 -116
  119. package/Rectangle.js.map +4 -4
  120. package/RichText/PureRichText/Editor/EditorPanel.d.ts +1 -4
  121. package/RichText/PureRichText/Editor/EditorPanel.d.ts.map +1 -1
  122. package/RichText/PureRichText/Editor/hooks/useConfigPanelFocus.d.ts +14 -0
  123. package/RichText/PureRichText/Editor/hooks/useConfigPanelFocus.d.ts.map +1 -0
  124. package/RichText/PureRichText/Editor/hooks/useEditorPanelSync.d.ts +15 -0
  125. package/RichText/PureRichText/Editor/hooks/useEditorPanelSync.d.ts.map +1 -0
  126. package/RichText/PureRichText/Editor/hooks/useLinkHandlers.d.ts.map +1 -1
  127. package/RichText/PureRichText/Editor/hooks/usePortalTarget.d.ts +9 -0
  128. package/RichText/PureRichText/Editor/hooks/usePortalTarget.d.ts.map +1 -0
  129. package/RichText/PureRichText/InnerEditor.d.ts +15 -9
  130. package/RichText/PureRichText/InnerEditor.d.ts.map +1 -1
  131. package/RichText/PureRichText/PureRichText.d.ts +5 -10
  132. package/RichText/PureRichText/PureRichText.d.ts.map +1 -1
  133. package/RichText/PureRichText/PureRichTextContext.d.ts +3 -6
  134. package/RichText/PureRichText/PureRichTextContext.d.ts.map +1 -1
  135. package/RichText/PureRichText/RichTextStyles.d.ts +5 -4
  136. package/RichText/PureRichText/RichTextStyles.d.ts.map +1 -1
  137. package/RichText/PureRichText/activeInstance.d.ts +6 -7
  138. package/RichText/PureRichText/activeInstance.d.ts.map +1 -1
  139. package/RichText/PureRichText/config.d.ts.map +1 -1
  140. package/RichText/PureRichText/hooks/useContentSync.d.ts +9 -9
  141. package/RichText/PureRichText/hooks/useContentSync.d.ts.map +1 -1
  142. package/RichText/PureRichText/hooks/useDashboardKeyboardNav.d.ts +2 -7
  143. package/RichText/PureRichText/hooks/useDashboardKeyboardNav.d.ts.map +1 -1
  144. package/RichText/PureRichText/hooks/useEditorSetup.d.ts +8 -4
  145. package/RichText/PureRichText/hooks/useEditorSetup.d.ts.map +1 -1
  146. package/RichText/PureRichText/hooks/useFocusHandlers.d.ts +2 -4
  147. package/RichText/PureRichText/hooks/useFocusHandlers.d.ts.map +1 -1
  148. package/RichText/PureRichText/hooks/useKeyboardShortcuts.d.ts.map +1 -1
  149. package/RichText/PureRichText/hooks/useMouseHandlers.d.ts +3 -7
  150. package/RichText/PureRichText/hooks/useMouseHandlers.d.ts.map +1 -1
  151. package/RichText/PureRichText/hooks/useStepFontSize.d.ts +2 -2
  152. package/RichText/PureRichText/hooks/useStepLineSpacing.d.ts +2 -3
  153. package/RichText/PureRichText/hooks/useStepLineSpacing.d.ts.map +1 -1
  154. package/RichText/PureRichText/hooks/useTokenMap.d.ts +13 -24
  155. package/RichText/PureRichText/hooks/useTokenMap.d.ts.map +1 -1
  156. package/RichText/PureRichText/renderers/ElementRenderer.d.ts +2 -5
  157. package/RichText/PureRichText/renderers/ElementRenderer.d.ts.map +1 -1
  158. package/RichText/PureRichText/types.d.ts +6 -0
  159. package/RichText/PureRichText/types.d.ts.map +1 -1
  160. package/RichText/PureRichText/utils/slateUtils.d.ts +26 -2
  161. package/RichText/PureRichText/utils/slateUtils.d.ts.map +1 -1
  162. package/RichText/RichText.d.ts +3 -1
  163. package/RichText/RichText.d.ts.map +1 -1
  164. package/RichText/config.d.ts.map +1 -1
  165. package/RichText.config.js +5 -0
  166. package/RichText.config.js.map +2 -2
  167. package/RichText.js +1848 -842
  168. package/RichText.js.map +4 -4
  169. package/Sankey/PureSankey/PureSankey.d.ts +2 -0
  170. package/Sankey/PureSankey/PureSankey.d.ts.map +1 -1
  171. package/Sankey/PureSankey/SankeyLink.d.ts +3 -1
  172. package/Sankey/PureSankey/SankeyLink.d.ts.map +1 -1
  173. package/Sankey/PureSankey/SankeyNode.d.ts +5 -2
  174. package/Sankey/PureSankey/SankeyNode.d.ts.map +1 -1
  175. package/Sankey/PureSankey/SankeyUtils.d.ts.map +1 -1
  176. package/Sankey/Sankey.d.ts +3 -1
  177. package/Sankey/Sankey.d.ts.map +1 -1
  178. package/Sankey.js +508 -219
  179. package/Sankey.js.map +4 -4
  180. package/Scatter.config.js +3 -5
  181. package/Scatter.config.js.map +2 -2
  182. package/Scatter.js +244 -146
  183. package/Scatter.js.map +4 -4
  184. package/SingleValue/SingleValue.d.ts.map +1 -1
  185. package/SingleValue.js +273 -173
  186. package/SingleValue.js.map +4 -4
  187. package/SingleValueBasic.js +4 -4
  188. package/SingleValueBasic.js.map +2 -2
  189. package/SingleValueIcon/SingleValueIcon.d.ts.map +1 -1
  190. package/SingleValueIcon.js +264 -164
  191. package/SingleValueIcon.js.map +4 -4
  192. package/SingleValueRadial.js +267 -167
  193. package/SingleValueRadial.js.map +4 -4
  194. package/SparkLine/SparkLine.d.ts.map +1 -1
  195. package/SparkLine.js.map +2 -2
  196. package/Table/PureTable.d.ts.map +1 -1
  197. package/Table/Table.d.ts +2 -5
  198. package/Table/Table.d.ts.map +1 -1
  199. package/Table/hooks.d.ts.map +1 -1
  200. package/Table.config.js +1 -1
  201. package/Table.config.js.map +2 -2
  202. package/Table.js +293 -271
  203. package/Table.js.map +4 -4
  204. package/Timeline/Timeline.d.ts +3 -1
  205. package/Timeline/Timeline.d.ts.map +1 -1
  206. package/Timeline.config.js +2 -2
  207. package/Timeline.config.js.map +2 -2
  208. package/Timeline.js +266 -142
  209. package/Timeline.js.map +4 -4
  210. package/Treemap/Treemap.d.ts +3 -1
  211. package/Treemap/Treemap.d.ts.map +1 -1
  212. package/Treemap.js +263 -147
  213. package/Treemap.js.map +4 -4
  214. package/common/Charting.js +8 -10
  215. package/common/Charting.js.map +2 -2
  216. package/common/ChartingApi.d.ts.map +1 -1
  217. package/common/ChartingApi.js +5 -2
  218. package/common/ChartingApi.js.map +2 -2
  219. package/common/DocExampleWithVizSandbox.d.ts +2 -0
  220. package/common/DocExampleWithVizSandbox.d.ts.map +1 -1
  221. package/common/DocExampleWithVizSandbox.js +54 -6
  222. package/common/DocExampleWithVizSandbox.js.map +2 -2
  223. package/common/GaugeMajorTicks.js.map +2 -2
  224. package/common/GaugeValueMarker.js.map +2 -2
  225. package/common/OptionsDoc.js +1 -1
  226. package/common/OptionsDoc.js.map +2 -2
  227. package/common/OverviewDoc.js +54 -6
  228. package/common/OverviewDoc.js.map +2 -2
  229. package/common/ThemesDoc.js.map +2 -2
  230. package/common/TimeSeriesChartWrapper.js +10 -9
  231. package/common/TimeSeriesChartWrapper.js.map +2 -2
  232. package/common/chartingUtils.d.ts.map +1 -1
  233. package/common/chartingUtils.js +12 -11
  234. package/common/chartingUtils.js.map +2 -2
  235. package/common/components/IconPlaceholder.d.ts.map +1 -1
  236. package/common/docUtils.d.ts.map +1 -1
  237. package/common/docUtils.js +15 -6
  238. package/common/docUtils.js.map +2 -2
  239. package/common/editorConfig/AxesChartDataDisplay.d.ts.map +1 -1
  240. package/common/gaugeUtils.d.ts.map +1 -1
  241. package/common/gaugeUtils.js +4 -2
  242. package/common/gaugeUtils.js.map +2 -2
  243. package/common/hooks/useSorting.d.ts.map +1 -1
  244. package/common/interfaces/VizEvent.d.ts +7 -0
  245. package/common/interfaces/VizEvent.d.ts.map +1 -1
  246. package/common/utils/dataUtils.d.ts.map +1 -1
  247. package/common/utils/dataUtils.js +6 -10
  248. package/common/utils/dataUtils.js.map +2 -2
  249. package/common/utils/featureFlagUtils.js +2 -2
  250. package/common/utils/featureFlagUtils.js.map +2 -2
  251. package/common/utils/focusUtils.js +1 -1
  252. package/common/utils/focusUtils.js.map +2 -2
  253. package/common/utils/mapUtils.d.ts.map +1 -1
  254. package/common/utils/mapUtils.js +17 -21
  255. package/common/utils/mapUtils.js.map +3 -3
  256. package/common/utils/singleValueUtils.js +22 -25
  257. package/common/utils/singleValueUtils.js.map +2 -2
  258. package/common/utils/textUtils.d.ts.map +1 -1
  259. package/common/utils/textUtils.js +37 -23
  260. package/common/utils/textUtils.js.map +2 -2
  261. package/common/utils/trellisUtils.d.ts.map +1 -1
  262. package/common/utils/trellisUtils.js +18 -17
  263. package/common/utils/trellisUtils.js.map +2 -2
  264. package/common/utils/urlUtils.js.map +2 -2
  265. package/common/utils/visualizationTheme.d.ts +15 -0
  266. package/common/utils/visualizationTheme.d.ts.map +1 -0
  267. package/common/utils/visualizationTheme.js +72 -0
  268. package/common/utils/visualizationTheme.js.map +7 -0
  269. package/common/withDashboardViz.d.ts +3 -1
  270. package/common/withDashboardViz.d.ts.map +1 -1
  271. package/common/withDashboardViz.js +216 -105
  272. package/common/withDashboardViz.js.map +4 -4
  273. package/docs-llm/map/examples-react.md +39 -39
  274. package/docs-llm/network-graph/options.md +2 -2
  275. package/docs-llm/pie/examples-json.md +195 -0
  276. package/docs-llm/pie/examples-react.md +123 -0
  277. package/docs-llm/pie/options.md +1 -1
  278. package/docs-llm/process-tree/options.md +3 -2
  279. package/package.json +32 -29
@@ -1,8 +1,5 @@
1
1
  /**
2
- * EditorPanel Component
3
- *
4
- * Editor panel toolbar for the Slate.js-based rich text editor.
5
- * Portals to data-test="editor-purerichtext" in the editor sidebar.
2
+ * Editor panel toolbar for the Slate.js editor; portals to data-test="editor-purerichtext".
6
3
  */
7
4
  import React from 'react';
8
5
  import { VerticalAlign } from '../types';
@@ -1 +1 @@
1
- {"version":3,"file":"EditorPanel.d.ts","sourceRoot":"","sources":["../../../src/RichText/PureRichText/Editor/EditorPanel.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAmD,MAAM,OAAO,CAAC;AA2BxE,OAAO,EAAsC,aAAa,EAAa,MAAM,UAAU,CAAC;AAyCxF,MAAM,WAAW,gBAAgB;IAC7B,UAAU,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,qBAAqB,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;CAC1D;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CA6pBlD,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"EditorPanel.d.ts","sourceRoot":"","sources":["../../../src/RichText/PureRichText/Editor/EditorPanel.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAmD,MAAM,OAAO,CAAC;AA2BxE,OAAO,EAAsC,aAAa,EAAa,MAAM,UAAU,CAAC;AAkOxF,MAAM,WAAW,gBAAgB;IAC7B,UAAU,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,qBAAqB,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;CAC1D;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAoclD,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -0,0 +1,14 @@
1
+ interface ConfigPanelFocusArgs {
2
+ isEditMode: boolean;
3
+ isActive: boolean;
4
+ editorContainerRef: React.RefObject<HTMLDivElement>;
5
+ wasMouseRef: React.MutableRefObject<boolean>;
6
+ }
7
+ /**
8
+ * Config-panel focus behavior: tracks whether the last interaction was mouse vs keyboard
9
+ * (so format actions only refocus the editable after a click), and traps Tab focus within
10
+ * the panel so tabindex="-1" step buttons stay reachable.
11
+ */
12
+ export declare function useConfigPanelFocus({ isEditMode, isActive, editorContainerRef, wasMouseRef, }: ConfigPanelFocusArgs): void;
13
+ export {};
14
+ //# sourceMappingURL=useConfigPanelFocus.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useConfigPanelFocus.d.ts","sourceRoot":"","sources":["../../../../src/RichText/PureRichText/Editor/hooks/useConfigPanelFocus.ts"],"names":[],"mappings":"AAEA,UAAU,oBAAoB;IAC1B,UAAU,EAAE,OAAO,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,kBAAkB,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;IACpD,WAAW,EAAE,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;CAChD;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,EAChC,UAAU,EACV,QAAQ,EACR,kBAAkB,EAClB,WAAW,GACd,EAAE,oBAAoB,GAAG,IAAI,CAuI7B"}
@@ -0,0 +1,15 @@
1
+ import { TextAlign, VerticalAlign } from '../../types';
2
+ interface EditorPanelSyncArgs {
3
+ textAlign: TextAlign | undefined;
4
+ setAlign: (align: TextAlign) => void;
5
+ verticalAlignProp: VerticalAlign;
6
+ setVerticalAlign: (align: VerticalAlign) => void;
7
+ activeFontSize: string | number | undefined;
8
+ fontSizeDirtyRef: React.MutableRefObject<boolean>;
9
+ setCurrentFontSize: (n: number) => void;
10
+ setFontSizePreset: (s: string) => void;
11
+ }
12
+ /** Syncs alignment, vertical alignment, and font size state from selection/prop changes. */
13
+ export declare function useEditorPanelSync({ textAlign, setAlign, verticalAlignProp, setVerticalAlign, activeFontSize, fontSizeDirtyRef, setCurrentFontSize, setFontSizePreset, }: EditorPanelSyncArgs): void;
14
+ export {};
15
+ //# sourceMappingURL=useEditorPanelSync.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useEditorPanelSync.d.ts","sourceRoot":"","sources":["../../../../src/RichText/PureRichText/Editor/hooks/useEditorPanelSync.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAGvD,UAAU,mBAAmB;IACzB,SAAS,EAAE,SAAS,GAAG,SAAS,CAAC;IACjC,QAAQ,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,CAAC;IACrC,iBAAiB,EAAE,aAAa,CAAC;IACjC,gBAAgB,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IACjD,cAAc,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IAC5C,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAClD,kBAAkB,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,iBAAiB,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;CAC1C;AAED,4FAA4F;AAC5F,wBAAgB,kBAAkB,CAAC,EAC/B,SAAS,EACT,QAAQ,EACR,iBAAiB,EACjB,gBAAgB,EAChB,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,GACpB,EAAE,mBAAmB,GAAG,IAAI,CAoB5B"}
@@ -1 +1 @@
1
- {"version":3,"file":"useLinkHandlers.d.ts","sourceRoot":"","sources":["../../../../src/RichText/PureRichText/Editor/hooks/useLinkHandlers.ts"],"names":[],"mappings":"AAOA,UAAU,qBAAqB;IAC3B,QAAQ,EAAE,CAAC,MAAM,OAAO,CAAC,GAAG,SAAS,CAAC;IACtC,WAAW,EAAE,CAAC,MAAM;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC,GAAG,SAAS,CAAC;IACtE,kBAAkB,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IACvE,UAAU,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAC;CACxC;AAGD,wBAAgB,eAAe,CAAC,QAAQ,EAAE,qBAAqB;;;;;;;;;;;;;2BAyDnD,KAAK,CAAC,aAAa;EAwD9B"}
1
+ {"version":3,"file":"useLinkHandlers.d.ts","sourceRoot":"","sources":["../../../../src/RichText/PureRichText/Editor/hooks/useLinkHandlers.ts"],"names":[],"mappings":"AAOA,UAAU,qBAAqB;IAC3B,QAAQ,EAAE,CAAC,MAAM,OAAO,CAAC,GAAG,SAAS,CAAC;IACtC,WAAW,EAAE,CAAC,MAAM;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC,GAAG,SAAS,CAAC;IACtE,kBAAkB,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IACvE,UAAU,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAC;CACxC;AAGD,wBAAgB,eAAe,CAAC,QAAQ,EAAE,qBAAqB;;;;;;;;;;;;;2BAyDnD,KAAK,CAAC,aAAa;EAyD9B"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Polls for the toolbar's portal target (data-test="editor-purerichtext") while in edit mode,
3
+ * since it mounts/unmounts outside React's render cycle.
4
+ */
5
+ export declare function usePortalTarget(isEditMode: boolean): {
6
+ portalTargetRef: React.RefObject<HTMLElement>;
7
+ portalReady: boolean;
8
+ };
9
+ //# sourceMappingURL=usePortalTarget.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usePortalTarget.d.ts","sourceRoot":"","sources":["../../../../src/RichText/PureRichText/Editor/hooks/usePortalTarget.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,OAAO,GAAG;IAClD,eAAe,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IAC9C,WAAW,EAAE,OAAO,CAAC;CACxB,CA+BA"}
@@ -1,8 +1,6 @@
1
1
  /**
2
- * InnerEditor - Slate editor wrapper with all editing hooks.
3
- *
4
- * Handles: editor setup, content sync, keyboard shortcuts, focus/blur,
5
- * mouse events, fake highlight, font size stepping, and edit mode transitions.
2
+ * InnerEditor - Slate editor wrapper: setup, content sync, keyboard, focus/blur,
3
+ * mouse, fake highlight, font stepping, and edit mode transitions.
6
4
  */
7
5
  import * as React from 'react';
8
6
  import { Descendant, Editor } from 'slate';
@@ -38,14 +36,22 @@ export interface InnerEditorProps {
38
36
  forceNextSyncRef?: React.MutableRefObject<boolean>;
39
37
  /** Post-processing applied after a forced tree reset (e.g. re-apply token marks). */
40
38
  transformTreeRef?: React.MutableRefObject<((tree: import('slate').Descendant[]) => import('slate').Descendant[]) | null>;
41
- /** Called via queueMicrotask after typing to auto-resolve newly typed $token$ patterns. */
42
- autoResolveTokensRef?: React.MutableRefObject<(() => void) | null>;
39
+ /** Whether a new initialValue reference should re-sync otherwise unchanged content. */
40
+ syncInitialValueChanges?: boolean;
41
+ /** Called after editor changes to auto-resolve newly typed or pasted $token$ patterns. */
42
+ autoResolveTokensRef?: React.MutableRefObject<((includeValueChanges?: boolean) => void) | null>;
43
+ /** Marks the start of a paste so token resolution can wait for the paste burst to settle. */
44
+ onPasteStart?: () => void;
43
45
  /** Callback for screenreader announcements on format changes. */
44
46
  onAnnouncement?: (message: string) => void;
45
- /** Cancel any pending typing batch without saving. Called on Cmd+Z so the
46
- * batch does not create an intermediate save that consumes forceNextSyncRef
47
- * before the dashboard undo prop update arrives. */
47
+ /** Token name -> resolved value, used to resolve $token$ in link URLs. */
48
+ nameToValue?: Map<string, string>;
49
+ /** Cancel pending typing batch (no save). On Cmd+Z, avoids an intermediate
50
+ * save consuming forceNextSyncRef before the dashboard undo prop arrives. */
48
51
  onCancelPendingChanges?: () => void;
52
+ /** When bound (dashboard), open links through the framework's link.open
53
+ * event so its URL protection applies. Unset for the standalone viz. */
54
+ onLinkOpen?: (url: string) => void;
49
55
  }
50
56
  export declare const InnerEditor: React.FC<InnerEditorProps>;
51
57
  //# sourceMappingURL=InnerEditor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"InnerEditor.d.ts","sourceRoot":"","sources":["../../src/RichText/PureRichText/InnerEditor.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,UAAU,EAAE,MAAM,EAAc,MAAM,OAAO,CAAC;AAevD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAEpE,MAAM,WAAW,gBAAgB;IAC7B,YAAY,EAAE,UAAU,EAAE,CAAC;IAC3B,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,EAAE,OAAO,CAAC;IACvB,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACrD,gBAAgB,EAAE;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,IAAI,CAAC,EAAE,OAAO,CAAC;QACf,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,aAAa,CAAC,EAAE,OAAO,CAAC;KAC3B,CAAC;IACF,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAC7D,aAAa,CAAC,EAAE,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACjF,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,iEAAiE;IACjE,aAAa,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAC7C,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,qBAAqB,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;IACpE,qBAAqB,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;IACpE,iFAAiF;IACjF,cAAc,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;IACrD,qFAAqF;IACrF,gBAAgB,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACnD,qFAAqF;IACrF,gBAAgB,CAAC,EAAE,KAAK,CAAC,gBAAgB,CACrC,CAAC,CAAC,IAAI,EAAE,OAAO,OAAO,EAAE,UAAU,EAAE,KAAK,OAAO,OAAO,EAAE,UAAU,EAAE,CAAC,GAAG,IAAI,CAChF,CAAC;IACF,2FAA2F;IAC3F,oBAAoB,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;IACnE,iEAAiE;IACjE,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C;;yDAEqD;IACrD,sBAAsB,CAAC,EAAE,MAAM,IAAI,CAAC;CACvC;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CA4VlD,CAAC"}
1
+ {"version":3,"file":"InnerEditor.d.ts","sourceRoot":"","sources":["../../src/RichText/PureRichText/InnerEditor.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,UAAU,EAAE,MAAM,EAAc,MAAM,OAAO,CAAC;AAgBvD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAEpE,MAAM,WAAW,gBAAgB;IAC7B,YAAY,EAAE,UAAU,EAAE,CAAC;IAC3B,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,EAAE,OAAO,CAAC;IACvB,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACrD,gBAAgB,EAAE;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,IAAI,CAAC,EAAE,OAAO,CAAC;QACf,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,aAAa,CAAC,EAAE,OAAO,CAAC;KAC3B,CAAC;IACF,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAC7D,aAAa,CAAC,EAAE,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACjF,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,iEAAiE;IACjE,aAAa,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAC7C,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,qBAAqB,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;IACpE,qBAAqB,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;IACpE,iFAAiF;IACjF,cAAc,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;IACrD,qFAAqF;IACrF,gBAAgB,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACnD,qFAAqF;IACrF,gBAAgB,CAAC,EAAE,KAAK,CAAC,gBAAgB,CACrC,CAAC,CAAC,IAAI,EAAE,OAAO,OAAO,EAAE,UAAU,EAAE,KAAK,OAAO,OAAO,EAAE,UAAU,EAAE,CAAC,GAAG,IAAI,CAChF,CAAC;IACF,uFAAuF;IACvF,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,0FAA0F;IAC1F,oBAAoB,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,mBAAmB,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;IAChG,6FAA6F;IAC7F,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,iEAAiE;IACjE,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,0EAA0E;IAC1E,WAAW,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClC;kFAC8E;IAC9E,sBAAsB,CAAC,EAAE,MAAM,IAAI,CAAC;IACpC;6EACyE;IACzE,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CACtC;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAgWlD,CAAC"}
@@ -1,14 +1,7 @@
1
- /**
2
- * PureRichText - Slate.js based rich text visualization
3
- *
4
- * A production-ready rich text editor component with full formatting support.
5
- * Uses Slate.js for robust text editing capabilities.
6
- */
1
+ /** PureRichText - Slate.js based rich text editor visualization with full formatting support. */
7
2
  import * as React from 'react';
8
3
  import { Editor } from 'slate';
9
4
  import { PureRichTextProps } from './types';
10
- import { createElementRenderer } from './renderers/ElementRenderer';
11
- import { Leaf } from './renderers/LeafRenderer';
12
5
  import { getFontSizeInPx } from './utils/fontSize';
13
6
  /** Exported for unit testing. */
14
7
  export declare function resolveTokenDisplay(args: {
@@ -25,9 +18,11 @@ interface AutoResolveArgs {
25
18
  nameToValue: Map<string, string>;
26
19
  }
27
20
  /** Build the auto-resolve callback for showResolvedTokens=true, or null when off. Exported for unit testing only. */
28
- export declare function buildAutoResolveCallback(args: AutoResolveArgs): (() => void) | null;
21
+ export declare function buildAutoResolveCallback(args: AutoResolveArgs): ((includeValueChanges?: boolean) => void) | null;
29
22
  declare const PureRichText: React.ForwardRefExoticComponent<PureRichTextProps & React.RefAttributes<HTMLDivElement>>;
30
- export { Leaf, createElementRenderer, getFontSizeInPx };
23
+ export { Leaf } from './renderers/LeafRenderer';
24
+ export { createElementRenderer } from './renderers/ElementRenderer';
25
+ export { getFontSizeInPx };
31
26
  export { InnerEditor } from './InnerEditor';
32
27
  export type { InnerEditorProps } from './InnerEditor';
33
28
  export type { PureRichTextProps };
@@ -1 +1 @@
1
- {"version":3,"file":"PureRichText.d.ts","sourceRoot":"","sources":["../../src/RichText/PureRichText/PureRichText.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAM/B,OAAO,EAAc,MAAM,EAAoB,MAAM,OAAO,CAAC;AAY7D,OAAO,EAAoC,iBAAiB,EAA8B,MAAM,SAAS,CAAC;AAG1G,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAkBnD,iCAAiC;AACjC,wBAAgB,mBAAmB,CAAC,IAAI,EAAE;IACtC,UAAU,EAAE,OAAO,CAAC;IACpB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B,GAAG;IACA,mBAAmB,EAAE,MAAM,CAAC;IAC5B,kBAAkB,EAAE,OAAO,CAAC;CAC/B,CAOA;AAuMD,UAAU,eAAe;IACrB,cAAc,EAAE,KAAK,CAAC,gBAAgB,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACtD,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACpC;AAED,qHAAqH;AACrH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,eAAe,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAsDnF;AAED,QAAA,MAAM,YAAY,0FA0gBhB,CAAC;AAKH,OAAO,EAAE,IAAI,EAAE,qBAAqB,EAAE,eAAe,EAAE,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACtD,YAAY,EAAE,iBAAiB,EAAE,CAAC;AAElC,OAAO,EAAE,YAAY,IAAI,gBAAgB,EAAE,CAAC;AAC5C,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"PureRichText.d.ts","sourceRoot":"","sources":["../../src/RichText/PureRichText/PureRichText.tsx"],"names":[],"mappings":"AAAA,iGAAiG;AAEjG,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAM/B,OAAO,EAAc,MAAM,EAAoB,MAAM,OAAO,CAAC;AAa7D,OAAO,EAAoC,iBAAiB,EAA8B,MAAM,SAAS,CAAC;AAU1G,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAqBnD,iCAAiC;AACjC,wBAAgB,mBAAmB,CAAC,IAAI,EAAE;IACtC,UAAU,EAAE,OAAO,CAAC;IACpB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B,GAAG;IACA,mBAAmB,EAAE,MAAM,CAAC;IAC5B,kBAAkB,EAAE,OAAO,CAAC;CAC/B,CAMA;AAuRD,UAAU,eAAe;IACrB,cAAc,EAAE,KAAK,CAAC,gBAAgB,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACtD,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACpC;AAED,qHAAqH;AACrH,wBAAgB,wBAAwB,CACpC,IAAI,EAAE,eAAe,GACtB,CAAC,CAAC,mBAAmB,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC,GAAG,IAAI,CAoDlD;AAED,QAAA,MAAM,YAAY,0FAolBhB,CAAC;AAKH,OAAO,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACtD,YAAY,EAAE,iBAAiB,EAAE,CAAC;AAElC,OAAO,EAAE,YAAY,IAAI,gBAAgB,EAAE,CAAC;AAC5C,eAAe,YAAY,CAAC"}
@@ -1,10 +1,6 @@
1
1
  /**
2
- * PureRichText Context - Simplified
3
- *
4
- * activeTextStyles: active > user defaults > system defaults
5
- * - Starts with user defaults || system defaults
6
- * - Updates when cursor moves or user makes changes
7
- * - Reset button restores to user defaults
2
+ * PureRichText Context. activeTextStyles resolves active > user defaults > system defaults;
3
+ * updates on cursor move or edit, and Reset restores user defaults.
8
4
  */
9
5
  import React from 'react';
10
6
  import { Editor } from 'slate';
@@ -14,6 +10,7 @@ type LinkInfo = {
14
10
  text: string;
15
11
  };
16
12
  export type ActiveTextStyles = TextStyles & {
13
+ isLink?: boolean;
17
14
  isMixed?: {
18
15
  color?: boolean;
19
16
  backgroundColor?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"PureRichTextContext.d.ts","sourceRoot":"","sources":["../../src/RichText/PureRichText/PureRichTextContext.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PureRichTextContext.d.ts","sourceRoot":"","sources":["../../src/RichText/PureRichText/PureRichTextContext.tsx"],"names":[],"mappings":"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"}
@@ -8,17 +8,18 @@ export declare const PureRichTextContainer: import("styled-components").StyledCo
8
8
  $borderRadius?: number;
9
9
  $padding: [number, number, number, number];
10
10
  $isTextEditing?: boolean;
11
+ $isEditMode?: boolean;
11
12
  $hasEventHandlers?: boolean;
12
13
  }, never>;
13
- /**
14
- * Skip-link styled drilldown button shown when consumer has bound a richtext.click handler.
15
- * Mirrors the Markdown viz pattern so screen-reader / keyboard users can reach the click action.
16
- */
14
+ /** Skip-link drilldown button (shown when a richtext.click handler is bound) so SR/keyboard users can
15
+ * reach the click action. Mirrors the Markdown viz pattern. */
17
16
  export declare const DrilldownButton: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<import("@splunk/react-ui/Button").ButtonProps & import("react").RefAttributes<HTMLAnchorElement | HTMLButtonElement>>, any, import("@splunk/themes").OptionalThemedProps<import("@splunk/themes").AnyTheme>, never>;
18
17
  export declare const EditorWrapper: import("styled-components").StyledComponent<"div", any, {
19
18
  $isEditMode: boolean;
20
19
  $isTextEditing: boolean;
20
+ $hasEventHandlers?: boolean;
21
21
  $lineHeight?: string;
22
+ $verticalAlign?: VerticalAlign;
22
23
  }, never>;
23
24
  /** Visually hidden live region for screenreader announcements. */
24
25
  export declare const LiveRegion: import("styled-components").StyledComponent<"div", any, {}, never>;
@@ -1 +1 @@
1
- {"version":3,"file":"RichTextStyles.d.ts","sourceRoot":"","sources":["../../src/RichText/PureRichText/RichTextStyles.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAExC,eAAO,MAAM,qBAAqB;uBACX,MAAM;qBACR,aAAa;mBACf,MAAM;mBACN,MAAM;mBACN,MAAM;oBACL,MAAM;cACZ,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;qBACzB,OAAO;wBACJ,OAAO;SAqC9B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,eAAe,2SAQ3B,CAAC;AAEF,eAAO,MAAM,aAAa;iBACT,OAAO;oBACJ,OAAO;kBACT,MAAM;SA+DvB,CAAC;AAEF,kEAAkE;AAClE,eAAO,MAAM,UAAU,oEAUtB,CAAC"}
1
+ {"version":3,"file":"RichTextStyles.d.ts","sourceRoot":"","sources":["../../src/RichText/PureRichText/RichTextStyles.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAexC,eAAO,MAAM,qBAAqB;uBACX,MAAM;qBACR,aAAa;mBACf,MAAM;mBACN,MAAM;mBACN,MAAM;oBACL,MAAM;cACZ,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;qBACzB,OAAO;kBACV,OAAO;wBACD,OAAO;SA+C9B,CAAC;AAEF;+DAC+D;AAC/D,eAAO,MAAM,eAAe,2SAM3B,CAAC;AAEF,eAAO,MAAM,aAAa;iBACT,OAAO;oBACJ,OAAO;wBACH,OAAO;kBACb,MAAM;qBACH,aAAa;SA2FjC,CAAC;AAEF,kEAAkE;AAClE,eAAO,MAAM,UAAU,oEAUtB,CAAC"}
@@ -1,8 +1,6 @@
1
1
  /**
2
- * Module-level tracker for the currently active (focused) PureRichText instance.
3
- *
4
- * Kept in a separate file so both PureRichText.tsx and EditorPanel.tsx can import
5
- * from it without creating a circular dependency.
2
+ * Module-level tracker for the active (focused) PureRichText instance.
3
+ * Separate file so PureRichText.tsx and EditorPanel.tsx can import it without a cycle.
6
4
  */
7
5
  import { Editor } from 'slate';
8
6
  export declare function registerActiveRichText(id: string, editable: HTMLDivElement | null, editor: Editor | null): void;
@@ -10,9 +8,8 @@ export declare function clearActiveRichText(id: string): void;
10
8
  export declare function getActiveRichTextId(): string | null;
11
9
  export declare function getActiveSlateEditor(): Editor | null;
12
10
  /**
13
- * Restore focus and caret on the active Slate editor.
14
- * Uses ReactEditor.focus() which properly restores both DOM focus and the
15
- * Slate selection into window.getSelection(), making the caret visible again.
11
+ * Restore focus and caret on the active Slate editor. ReactEditor.focus() restores
12
+ * both DOM focus and the Slate selection into window.getSelection() (caret visible).
16
13
  */
17
14
  export declare function focusActiveEditable(): void;
18
15
  export declare function subscribeActiveRichText(callback: () => void): () => void;
@@ -20,4 +17,6 @@ export declare function setSuppressBlurDeactivation(value: boolean): void;
20
17
  export declare function isSuppressBlurDeactivation(): boolean;
21
18
  export declare function setMouseSelecting(value: boolean): void;
22
19
  export declare function isMouseSelecting(): boolean;
20
+ export declare function setSuppressNextEditClick(value: boolean): void;
21
+ export declare function consumeSuppressNextEditClick(): boolean;
23
22
  //# sourceMappingURL=activeInstance.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"activeInstance.d.ts","sourceRoot":"","sources":["../../src/RichText/PureRichText/activeInstance.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAQ/B,wBAAgB,sBAAsB,CAClC,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,cAAc,GAAG,IAAI,EAC/B,MAAM,EAAE,MAAM,GAAG,IAAI,GACtB,IAAI,CAKN;AAED,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAOpD;AAED,wBAAgB,mBAAmB,IAAI,MAAM,GAAG,IAAI,CAEnD;AAED,wBAAgB,oBAAoB,IAAI,MAAM,GAAG,IAAI,CAEpD;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,IAAI,IAAI,CAU1C;AAED,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAGxE;AAMD,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAEhE;AACD,wBAAgB,0BAA0B,IAAI,OAAO,CAEpD;AAKD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAEtD;AACD,wBAAgB,gBAAgB,IAAI,OAAO,CAE1C"}
1
+ {"version":3,"file":"activeInstance.d.ts","sourceRoot":"","sources":["../../src/RichText/PureRichText/activeInstance.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAQ/B,wBAAgB,sBAAsB,CAClC,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,cAAc,GAAG,IAAI,EAC/B,MAAM,EAAE,MAAM,GAAG,IAAI,GACtB,IAAI,CAKN;AAED,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAOpD;AAED,wBAAgB,mBAAmB,IAAI,MAAM,GAAG,IAAI,CAEnD;AAED,wBAAgB,oBAAoB,IAAI,MAAM,GAAG,IAAI,CAEpD;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,IAAI,IAAI,CAU1C;AAED,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAGxE;AAKD,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAEhE;AACD,wBAAgB,0BAA0B,IAAI,OAAO,CAEpD;AAKD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAEtD;AACD,wBAAgB,gBAAgB,IAAI,OAAO,CAE1C;AAKD,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAE7D;AACD,wBAAgB,4BAA4B,IAAI,OAAO,CAItD"}
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/RichText/PureRichText/config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAUH,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AA6B9D;;GAEG;AACH,QAAA,MAAM,MAAM;8BACkB,GAAG;;CAShC,CAAC;AAkKF,OAAO,EAAE,MAAM,EAAE,CAAC;;AAClB,wBAAqC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/RichText/PureRichText/config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAUH,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AA6B9D;;GAEG;AACH,QAAA,MAAM,MAAM;8BACkB,GAAG;;CAShC,CAAC;AAqKF,OAAO,EAAE,MAAM,EAAE,CAAC;;AAClB,wBAAqC"}
@@ -13,11 +13,8 @@ interface ContentSyncArgs {
13
13
  updateFakeHighlightAbs: (abs: AbsRange | null) => void;
14
14
  fakeHighlightAbsRef: React.MutableRefObject<AbsRange | null>;
15
15
  hasFocusRef: React.MutableRefObject<boolean>;
16
- /** Authoritative editing state ref -- goes true before the DOM receives focus
17
- * (set synchronously in activateTextEditing, before the rAF that calls focus()).
18
- * Used instead of hasFocusRef for the tree-reset guard so the gap between
19
- * activateTextEditing() and the actual focus event doesn't allow a stale
20
- * prop update to reset the tree and drop the first keystroke. */
16
+ /** Authoritative editing ref, true before DOM focus. Used (not hasFocusRef) for the
17
+ * tree-reset guard so a stale prop update can't reset the tree before focus lands. */
21
18
  isTextEditingRef: React.MutableRefObject<boolean>;
22
19
  lastSelectionRef: React.MutableRefObject<Editor['selection']>;
23
20
  /** Set by useContentSave; checked to detect round-trips and skip tree resets. */
@@ -26,15 +23,18 @@ interface ContentSyncArgs {
26
23
  forceNextSyncRef?: React.MutableRefObject<boolean>;
27
24
  /** Optional post-processing step (e.g. re-apply token marks) after a forced tree reset. */
28
25
  transformTreeRef?: React.MutableRefObject<((tree: Descendant[]) => Descendant[]) | null>;
29
- /** When set, called via queueMicrotask after each content change to auto-resolve
30
- * newly typed $token$ patterns into their resolved values. */
31
- autoResolveTokensRef?: React.MutableRefObject<(() => void) | null>;
26
+ /** Whether an initialValue identity change by itself should replace the editor tree.
27
+ * Resolved-token mode needs this; raw token editing does not. */
28
+ syncInitialValueChanges?: boolean;
29
+ /** When set, requested via queueMicrotask after each content change to auto-resolve
30
+ * newly typed $token$ patterns. The request may be coalesced during a paste burst. */
31
+ autoResolveTokensRef?: React.MutableRefObject<((includeValueChanges?: boolean) => void) | null>;
32
32
  }
33
33
  interface ContentSyncResult {
34
34
  value: Descendant[];
35
35
  handleChange: (newValue: Descendant[]) => void;
36
36
  lastEmittedHtmlRef: React.MutableRefObject<string>;
37
37
  }
38
- export declare function useContentSync({ editor, initialValue, richTextContent, onContentChange, updateActiveStyles, updateFakeHighlightAbs, fakeHighlightAbsRef, hasFocusRef, isTextEditingRef, lastSelectionRef, recentSavesRef, forceNextSyncRef, transformTreeRef, autoResolveTokensRef, }: ContentSyncArgs): ContentSyncResult;
38
+ export declare function useContentSync({ editor, initialValue, richTextContent, onContentChange, updateActiveStyles, updateFakeHighlightAbs, fakeHighlightAbsRef, hasFocusRef, isTextEditingRef, lastSelectionRef, recentSavesRef, forceNextSyncRef, transformTreeRef, syncInitialValueChanges, autoResolveTokensRef, }: ContentSyncArgs): ContentSyncResult;
39
39
  export {};
40
40
  //# sourceMappingURL=useContentSync.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useContentSync.d.ts","sourceRoot":"","sources":["../../../src/RichText/PureRichText/hooks/useContentSync.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,EAAqD,MAAM,OAAO,CAAC;AAG9F,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AA4EnD,UAAU,eAAe;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,UAAU,EAAE,CAAC;IAC3B,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAC7D,kBAAkB,EAAE,CAAC,eAAe,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IACxD,sBAAsB,EAAE,CAAC,GAAG,EAAE,QAAQ,GAAG,IAAI,KAAK,IAAI,CAAC;IACvD,mBAAmB,EAAE,KAAK,CAAC,gBAAgB,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC;IAC7D,WAAW,EAAE,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC7C;;;;sEAIkE;IAClE,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAClD,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;IAC9D,iFAAiF;IACjF,cAAc,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;IACrD,yGAAyG;IACzG,gBAAgB,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACnD,2FAA2F;IAC3F,gBAAgB,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,UAAU,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;IACzF;mEAC+D;IAC/D,oBAAoB,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;CACtE;AAED,UAAU,iBAAiB;IACvB,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,YAAY,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,KAAK,IAAI,CAAC;IAC/C,kBAAkB,EAAE,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;CACtD;AAyMD,wBAAgB,cAAc,CAAC,EAC3B,MAAM,EACN,YAAY,EACZ,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,sBAAsB,EACtB,mBAAmB,EACnB,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,gBAAgB,EAChB,gBAAgB,EAChB,oBAAoB,GACvB,EAAE,eAAe,GAAG,iBAAiB,CAgKrC"}
1
+ {"version":3,"file":"useContentSync.d.ts","sourceRoot":"","sources":["../../../src/RichText/PureRichText/hooks/useContentSync.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,EAAqD,MAAM,OAAO,CAAC;AAG9F,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AA2EnD,UAAU,eAAe;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,UAAU,EAAE,CAAC;IAC3B,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAC7D,kBAAkB,EAAE,CAAC,eAAe,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IACxD,sBAAsB,EAAE,CAAC,GAAG,EAAE,QAAQ,GAAG,IAAI,KAAK,IAAI,CAAC;IACvD,mBAAmB,EAAE,KAAK,CAAC,gBAAgB,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC;IAC7D,WAAW,EAAE,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC7C;2FACuF;IACvF,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAClD,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;IAC9D,iFAAiF;IACjF,cAAc,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;IACrD,yGAAyG;IACzG,gBAAgB,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACnD,2FAA2F;IAC3F,gBAAgB,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,UAAU,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;IACzF;qEACiE;IACjE,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC;2FACuF;IACvF,oBAAoB,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,mBAAmB,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;CACnG;AAED,UAAU,iBAAiB;IACvB,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,YAAY,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,KAAK,IAAI,CAAC;IAC/C,kBAAkB,EAAE,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;CACtD;AA6OD,wBAAgB,cAAc,CAAC,EAC3B,MAAM,EACN,YAAY,EACZ,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,sBAAsB,EACtB,mBAAmB,EACnB,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,gBAAgB,EAChB,gBAAgB,EAChB,uBAA8B,EAC9B,oBAAoB,GACvB,EAAE,eAAe,GAAG,iBAAiB,CAmLrC"}
@@ -1,11 +1,6 @@
1
1
  /**
2
- * useDashboardKeyboardNav - Document-level keyboard navigation for PureRichText.
3
- *
4
- * Handles: Tab/Shift+Tab skip-link behavior, Escape from sidebar,
5
- * Enter-to-edit activation, skip-link activation, focus-out deselection,
6
- * and viz-item selection observation.
7
- *
8
- * See keyboard reference sections D and E in the component knowledge base.
2
+ * Document-level keyboard nav for PureRichText: Tab/Shift+Tab skip-links, Escape from sidebar,
3
+ * Enter-to-edit, skip-link activation, focus-out deselection. See kb reference sections D and E.
9
4
  */
10
5
  import { Editor } from 'slate';
11
6
  interface DashboardKeyboardNavArgs {
@@ -1 +1 @@
1
- {"version":3,"file":"useDashboardKeyboardNav.d.ts","sourceRoot":"","sources":["../../../src/RichText/PureRichText/hooks/useDashboardKeyboardNav.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,EAAE,MAAM,EAAc,MAAM,OAAO,CAAC;AAK3C,UAAU,wBAAwB;IAC9B,UAAU,EAAE,OAAO,CAAC;IACpB,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACrD,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,KAAK,CAAC,gBAAgB,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACtD,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAClD,iBAAiB,EAAE,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACnD,qBAAqB,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;IACnE,uBAAuB,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;IACrE,mBAAmB,EAAE,MAAM,IAAI,CAAC;IAChC,aAAa,EAAE;QACX,qBAAqB,EAAE,MAAM,IAAI,CAAC;QAClC,mBAAmB,EAAE,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;QAC/C,qBAAqB,EAAE,MAAM,IAAI,CAAC;QAClC,mBAAmB,EAAE,MAAM,IAAI,CAAC;KACnC,CAAC;IACF,gBAAgB,EAAE;QACd,mBAAmB,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;KACpD,GAAG,IAAI,CAAC;CACZ;AAuTD,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,wBAAwB,GAAG,IAAI,CAY5E"}
1
+ {"version":3,"file":"useDashboardKeyboardNav.d.ts","sourceRoot":"","sources":["../../../src/RichText/PureRichText/hooks/useDashboardKeyboardNav.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,MAAM,EAAc,MAAM,OAAO,CAAC;AAK3C,UAAU,wBAAwB;IAC9B,UAAU,EAAE,OAAO,CAAC;IACpB,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACrD,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,KAAK,CAAC,gBAAgB,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACtD,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAClD,iBAAiB,EAAE,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACnD,qBAAqB,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;IACnE,uBAAuB,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;IACrE,mBAAmB,EAAE,MAAM,IAAI,CAAC;IAChC,aAAa,EAAE;QACX,qBAAqB,EAAE,MAAM,IAAI,CAAC;QAClC,mBAAmB,EAAE,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;QAC/C,qBAAqB,EAAE,MAAM,IAAI,CAAC;QAClC,mBAAmB,EAAE,MAAM,IAAI,CAAC;KACnC,CAAC;IACF,gBAAgB,EAAE;QACd,mBAAmB,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;KACpD,GAAG,IAAI,CAAC;CACZ;AAqTD,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,wBAAwB,GAAG,IAAI,CAa5E"}
@@ -1,8 +1,6 @@
1
1
  /**
2
- * useEditorSetup - Creates and configures the Slate editor instance.
3
- *
4
- * Handles: inline links, markdown autoformat, empty list-item Enter,
5
- * and stale selection recovery on onChange.
2
+ * useEditorSetup - Creates the Slate editor: inline links, markdown autoformat,
3
+ * empty list-item Enter, and stale selection recovery on onChange.
6
4
  */
7
5
  import { Editor } from 'slate';
8
6
  /** Returns true if the editor contains a single empty paragraph. */
@@ -30,6 +28,12 @@ interface DefaultTextStyleRef {
30
28
  strikethrough?: boolean;
31
29
  };
32
30
  }
31
+ /**
32
+ * Route plain-text insertion through editor.insertText instead of slate-react's native fast path,
33
+ * which calls toDOMPoint while the DOM<->node map may be stale (crashing "Cannot resolve a DOM node").
34
+ * Returning true makes slate-react skip its native path. IME input uses a different inputType, left untouched.
35
+ */
36
+ export declare function handleTextInsert(e: Editor, event: InputEvent): boolean;
33
37
  export declare function useEditorSetup(defaultTextStyleRef: DefaultTextStyleRef): Editor;
34
38
  export declare function useInitialMarks(editor: Editor, isEditMode: boolean, defaultTextStyle: DefaultTextStyleRef['current']): void;
35
39
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"useEditorSetup.d.ts","sourceRoot":"","sources":["../../../src/RichText/PureRichText/hooks/useEditorSetup.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAEH,MAAM,EAQT,MAAM,OAAO,CAAC;AA0Bf,oEAAoE;AACpE,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAMhD;AAED,+EAA+E;AAC/E,wBAAgB,iBAAiB,CAC7B,CAAC,EAAE,MAAM,EACT,KAAK,EAAE;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;CAC3B,GACF,IAAI,CASN;AAED,UAAU,mBAAmB;IACzB,OAAO,EAAE;QACL,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,IAAI,CAAC,EAAE,OAAO,CAAC;QACf,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,aAAa,CAAC,EAAE,OAAO,CAAC;KAC3B,CAAC;CACL;AA0gBD,wBAAgB,cAAc,CAAC,mBAAmB,EAAE,mBAAmB,GAAG,MAAM,CA+B/E;AAED,wBAAgB,eAAe,CAC3B,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,OAAO,EACnB,gBAAgB,EAAE,mBAAmB,CAAC,SAAS,CAAC,GACjD,IAAI,CAWN"}
1
+ {"version":3,"file":"useEditorSetup.d.ts","sourceRoot":"","sources":["../../../src/RichText/PureRichText/hooks/useEditorSetup.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAEH,MAAM,EAQT,MAAM,OAAO,CAAC;AAqGf,oEAAoE;AACpE,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAMhD;AAED,+EAA+E;AAC/E,wBAAgB,iBAAiB,CAC7B,CAAC,EAAE,MAAM,EACT,KAAK,EAAE;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;CAC3B,GACF,IAAI,CASN;AAED,UAAU,mBAAmB;IACzB,OAAO,EAAE;QACL,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,IAAI,CAAC,EAAE,OAAO,CAAC;QACf,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,aAAa,CAAC,EAAE,OAAO,CAAC;KAC3B,CAAC;CACL;AAmgBD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,GAAG,OAAO,CAQtE;AAmID,wBAAgB,cAAc,CAAC,mBAAmB,EAAE,mBAAmB,GAAG,MAAM,CA6B/E;AAED,wBAAgB,eAAe,CAC3B,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,OAAO,EACnB,gBAAgB,EAAE,mBAAmB,CAAC,SAAS,CAAC,GACjD,IAAI,CAWN"}
@@ -1,8 +1,6 @@
1
1
  /**
2
- * useFocusHandlers - Focus/blur management for the Slate editor.
3
- *
4
- * Handles: focus gating when not text-editing, blur deactivation with
5
- * configPanel detection, fake highlight on blur.
2
+ * useFocusHandlers - Focus/blur for the Slate editor: focus gating when not
3
+ * editing, blur deactivation with configPanel detection, fake highlight on blur.
6
4
  */
7
5
  import { Editor, Range } from 'slate';
8
6
  interface FocusHandlersArgs {
@@ -1 +1 @@
1
- {"version":3,"file":"useFocusHandlers.d.ts","sourceRoot":"","sources":["../../../src/RichText/PureRichText/hooks/useFocusHandlers.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAItC,UAAU,iBAAiB;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACpD,WAAW,EAAE,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC7C,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAClD,iBAAiB,EAAE,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACnD,sEAAsE;IACtE,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;IAC9D;oEACgE;IAChE,qBAAqB,EAAE,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACvD,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,mBAAmB,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,GAAG,IAAI,KAAK,IAAI,CAAC;IACxD,8EAA8E;IAC9E,sBAAsB,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,GAAG,IAAI,KAAK,IAAI,CAAC;IAC3D,mBAAmB,EAAE,CAAC,GAAG,EAAE,KAAK,GAAG,IAAI,KAAK,IAAI,CAAC;IACjD,sBAAsB,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK,IAAI,CAAC;IAC5C,aAAa,CAAC,EAAE,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACjF,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,uBAAuB,CAAC,EAAE,MAAM,IAAI,CAAC;CACxC;AAED,UAAU,mBAAmB;IACzB,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,UAAU,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC;CAC7C;AAqCD,wBAAgB,gBAAgB,CAAC,EAC7B,MAAM,EACN,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,EACrB,aAAa,EACb,sBAAsB,EACtB,mBAAmB,EACnB,sBAAsB,EACtB,aAAa,EACb,WAAW,EACX,uBAAuB,GAC1B,EAAE,iBAAiB,GAAG,mBAAmB,CAoGzC"}
1
+ {"version":3,"file":"useFocusHandlers.d.ts","sourceRoot":"","sources":["../../../src/RichText/PureRichText/hooks/useFocusHandlers.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAItC,UAAU,iBAAiB;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACpD,WAAW,EAAE,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC7C,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAClD,iBAAiB,EAAE,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACnD,sEAAsE;IACtE,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;IAC9D;oEACgE;IAChE,qBAAqB,EAAE,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACvD,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,mBAAmB,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,GAAG,IAAI,KAAK,IAAI,CAAC;IACxD,8EAA8E;IAC9E,sBAAsB,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,GAAG,IAAI,KAAK,IAAI,CAAC;IAC3D,mBAAmB,EAAE,CAAC,GAAG,EAAE,KAAK,GAAG,IAAI,KAAK,IAAI,CAAC;IACjD,sBAAsB,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK,IAAI,CAAC;IAC5C,aAAa,CAAC,EAAE,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACjF,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,uBAAuB,CAAC,EAAE,MAAM,IAAI,CAAC;CACxC;AAED,UAAU,mBAAmB;IACzB,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,UAAU,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC;CAC7C;AAqCD,wBAAgB,gBAAgB,CAAC,EAC7B,MAAM,EACN,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,EACrB,aAAa,EACb,sBAAsB,EACtB,mBAAmB,EACnB,sBAAsB,EACtB,aAAa,EACb,WAAW,EACX,uBAAuB,GAC1B,EAAE,iBAAiB,GAAG,mBAAmB,CA2FzC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useKeyboardShortcuts.d.ts","sourceRoot":"","sources":["../../../src/RichText/PureRichText/hooks/useKeyboardShortcuts.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,MAAM,EAA6B,MAAM,OAAO,CAAC;AAC1D,OAAO,EAAiB,aAAa,EAAE,MAAM,UAAU,CAAC;AAExD,UAAU,qBAAqB;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,CAAC,OAAO,EAAE,aAAa,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9D,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,eAAe,EAAE,MAAM,IAAI,CAAC;IAC5B,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACzC;AA4FD,wBAAgB,oBAAoB,CAAC,EACjC,MAAM,EACN,WAAW,EACX,cAAc,EACd,eAAe,EACf,YAAY,GACf,EAAE,qBAAqB,GAAG;IACvB,aAAa,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,aAAa,KAAK,IAAI,CAAC;CACvD,CA4CA"}
1
+ {"version":3,"file":"useKeyboardShortcuts.d.ts","sourceRoot":"","sources":["../../../src/RichText/PureRichText/hooks/useKeyboardShortcuts.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,MAAM,EAA6B,MAAM,OAAO,CAAC;AAC1D,OAAO,EAAiB,aAAa,EAAE,MAAM,UAAU,CAAC;AAExD,UAAU,qBAAqB;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,CAAC,OAAO,EAAE,aAAa,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9D,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,eAAe,EAAE,MAAM,IAAI,CAAC;IAC5B,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACzC;AAgGD,wBAAgB,oBAAoB,CAAC,EACjC,MAAM,EACN,WAAW,EACX,cAAc,EACd,eAAe,EACf,YAAY,GACf,EAAE,qBAAqB,GAAG;IACvB,aAAa,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,aAAa,KAAK,IAAI,CAAC;CACvD,CA4CA"}
@@ -1,9 +1,5 @@
1
- /**
2
- * useMouseHandlers - Mouse event handlers for the Slate editor.
3
- *
4
- * Handles: mousedown (text editing activation, drag-to-select stopPropagation),
5
- * empty-space click (caret placement), and drag prevention.
6
- */
1
+ /** useMouseHandlers - Slate mouse handlers: mousedown (edit activation, drag-to-select
2
+ * stopPropagation), empty-space click (caret placement), and drag prevention. */
7
3
  import { Editor } from 'slate';
8
4
  interface MouseHandlersArgs {
9
5
  editor: Editor;
@@ -19,6 +15,6 @@ interface MouseHandlersResult {
19
15
  handleEmptySpaceClick: (e: React.MouseEvent) => void;
20
16
  handleDragStart: (e: React.DragEvent) => void;
21
17
  }
22
- export declare function useMouseHandlers({ editor, editableRef, isEditMode, isTextEditing, onActivateTextEditing, clearFakeHighlight, }: MouseHandlersArgs): MouseHandlersResult;
18
+ export declare function useMouseHandlers({ editor, editableRef, containerRef, isEditMode, isTextEditing, onActivateTextEditing, clearFakeHighlight, }: MouseHandlersArgs): MouseHandlersResult;
23
19
  export {};
24
20
  //# sourceMappingURL=useMouseHandlers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useMouseHandlers.d.ts","sourceRoot":"","sources":["../../../src/RichText/PureRichText/hooks/useMouseHandlers.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,MAAM,EAAqB,MAAM,OAAO,CAAC;AAIlD,UAAU,iBAAiB;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACpD,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACrD,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,EAAE,OAAO,CAAC;IACvB,qBAAqB,CAAC,EAAE,MAAM,IAAI,CAAC;IACnC,kBAAkB,EAAE,MAAM,IAAI,CAAC;CAClC;AAED,UAAU,mBAAmB;IACzB,eAAe,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC;IAC/C,qBAAqB,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC;IACrD,eAAe,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC;CACjD;AAED,wBAAgB,gBAAgB,CAAC,EAC7B,MAAM,EACN,WAAW,EACX,UAAU,EACV,aAAa,EACb,qBAAqB,EACrB,kBAAkB,GACrB,EAAE,iBAAiB,GAAG,mBAAmB,CAiEzC"}
1
+ {"version":3,"file":"useMouseHandlers.d.ts","sourceRoot":"","sources":["../../../src/RichText/PureRichText/hooks/useMouseHandlers.ts"],"names":[],"mappings":"AAAA;iFACiF;AAGjF,OAAO,EAAE,MAAM,EAAqB,MAAM,OAAO,CAAC;AAsElD,UAAU,iBAAiB;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACpD,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACrD,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,EAAE,OAAO,CAAC;IACvB,qBAAqB,CAAC,EAAE,MAAM,IAAI,CAAC;IACnC,kBAAkB,EAAE,MAAM,IAAI,CAAC;CAClC;AAED,UAAU,mBAAmB;IACzB,eAAe,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC;IAC/C,qBAAqB,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC;IACrD,eAAe,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC;CACjD;AAED,wBAAgB,gBAAgB,CAAC,EAC7B,MAAM,EACN,WAAW,EACX,YAAY,EACZ,UAAU,EACV,aAAa,EACb,qBAAqB,EACrB,kBAAkB,GACrB,EAAE,iBAAiB,GAAG,mBAAmB,CAqGzC"}
@@ -1,6 +1,6 @@
1
1
  /**
2
- * useStepFontSize - Step font size up or down by delta px, clamped to [8, 96].
3
- * When the selection spans mixed sizes, each text node is stepped independently.
2
+ * useStepFontSize - Step font size by delta px, clamped to [8, 96].
3
+ * Mixed-size selections step each text node independently.
4
4
  */
5
5
  import { Editor } from 'slate';
6
6
  import type { AbsRange } from './useFakeHighlight';
@@ -1,7 +1,6 @@
1
1
  /**
2
- * useStepLineSpacing - Step line spacing up or down by delta (0.10 = 10%),
3
- * clamped to [1.00, 3.00]. When the selection spans blocks with mixed line
4
- * heights, each block is stepped independently (same pattern as useStepFontSize).
2
+ * useStepLineSpacing - Step line spacing by delta (0.10 = 10%), clamped to [1.00, 3.00].
3
+ * Mixed-height blocks step independently (same pattern as useStepFontSize).
5
4
  */
6
5
  import { Editor } from 'slate';
7
6
  import type { AbsRange } from './useFakeHighlight';
@@ -1 +1 @@
1
- {"version":3,"file":"useStepLineSpacing.d.ts","sourceRoot":"","sources":["../../../src/RichText/PureRichText/hooks/useStepLineSpacing.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,MAAM,EAAoD,MAAM,OAAO,CAAC;AAEjF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAoBnD,UAAU,mBAAmB;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,mBAAmB,EAAE,KAAK,CAAC,gBAAgB,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC;IAC7D,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;IAC9D,sBAAsB,EAAE,CAAC,GAAG,EAAE,QAAQ,GAAG,IAAI,KAAK,IAAI,CAAC;IACvD,kBAAkB,EAAE,MAAM,IAAI,CAAC;IAC/B,uBAAuB,EAAE,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,KAAK,IAAI,CAAC;CAClE;AAED,wBAAgB,kBAAkB,CAAC,EAC/B,MAAM,EACN,mBAAmB,EACnB,gBAAgB,EAChB,sBAAsB,EACtB,kBAAkB,EAClB,uBAAuB,GAC1B,EAAE,mBAAmB,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CA0E/C"}
1
+ {"version":3,"file":"useStepLineSpacing.d.ts","sourceRoot":"","sources":["../../../src/RichText/PureRichText/hooks/useStepLineSpacing.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,MAAM,EAAoD,MAAM,OAAO,CAAC;AAEjF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAoBnD,UAAU,mBAAmB;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,mBAAmB,EAAE,KAAK,CAAC,gBAAgB,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC;IAC7D,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;IAC9D,sBAAsB,EAAE,CAAC,GAAG,EAAE,QAAQ,GAAG,IAAI,KAAK,IAAI,CAAC;IACvD,kBAAkB,EAAE,MAAM,IAAI,CAAC;IAC/B,uBAAuB,EAAE,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,KAAK,IAAI,CAAC;CAClE;AAED,wBAAgB,kBAAkB,CAAC,EAC/B,MAAM,EACN,mBAAmB,EACnB,gBAAgB,EAChB,sBAAsB,EACtB,kBAAkB,EAClB,uBAAuB,GAC1B,EAAE,mBAAmB,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CA0E/C"}
@@ -2,36 +2,25 @@ import { Descendant } from 'slate';
2
2
  import type { TokenMatchMetadata, RichTextTokenMetadata } from '../types';
3
3
  /** Regex that matches $namespace:token_name|filter$ patterns. */
4
4
  export declare const TOKEN_PATTERN: RegExp;
5
- /**
6
- * Matches an escaped dollar (`$$`, literal `$`) OR a `$token$` pattern (with
7
- * optional `namespace:` prefix and `|filter` suffixes). `$$` is tried first so
8
- * it is never mis-read as a token boundary, matching the framework's
9
- * `ESCAPED_DELIMITER | VALID_TOKEN_PATTERN` convention. Group 1 is the full
10
- * raw content between the delimiters (namespace/name/filters), or undefined
11
- * for an escaped dollar -- this is the same string `normalizeTokenMetadata`
12
- * uses as the `nameToValue` key, so it round-trips without re-parsing.
13
- */
5
+ /** Matches an escaped dollar (`$$`, literal `$`) OR a `$token$` pattern. `$$` is tried first so it's
6
+ * never mis-read as a token boundary. Group 1 is the raw content (undefined for `$$`), reused as the
7
+ * `nameToValue` key so it round-trips without re-parsing. */
14
8
  export declare const TOKEN_OR_ESCAPE_PATTERN: RegExp;
15
- /**
16
- * Build a name -> value map and the raw content string from the framework's
17
- * TokenMatchMetadata. `start`/`end` are RAW-string offsets while we hold the
18
- * RESOLVED string, so we walk both cursors in parallel: copy each literal
19
- * segment, emit the raw `$token$`, and advance the resolved cursor by the
20
- * value's length (or the pattern length when the token is unresolved).
21
- */
9
+ /** Build a name -> value map and raw content from TokenMatchMetadata. `start`/`end` are RAW offsets
10
+ * but we hold the RESOLVED string, so we walk both cursors in parallel, advancing the resolved cursor
11
+ * by each value's length (or pattern length when unresolved). */
22
12
  export declare function normalizeTokenMetadata(metadata: TokenMatchMetadata[] | null | undefined, resolvedContent: string): {
23
13
  nameToValue: Map<string, string>;
24
14
  rawContent: string;
25
15
  reconciled: boolean;
26
16
  };
27
- /**
28
- * Mark every `$name$` pattern with a `tokenName` text mark and every `$$` escape
29
- * with `isEscapedDollar` (identity assigned by position). With `nameToValue`
30
- * (preview mode) each token node displays its resolved value; without it, the raw
31
- * pattern. Escaped dollars mirror this: raw `$$` without `nameToValue`, resolved
32
- * `$` with it. `slateToHtml` re-derives `$name$` / `$$` from the marks, so display
33
- * text is never reversed by lookup.
34
- */
17
+ /** Does `resolvedContent` match `rawContent`'s literal structure (each $token$ = wildcard)? True means
18
+ * only a token VALUE lagged (keep frozen raw); false means literal text changed (raw is stale). Linear
19
+ * glob walk, not a compiled regex, since adjacent tokens give catastrophic-backtracking `[\s\S]*[\s\S]*`. */
20
+ export declare function isValueOnlyChange(rawContent: string, resolvedContent: string): boolean;
21
+ /** Mark each `$name$` with `tokenName` and each `$$` with `isEscapedDollar`. With `nameToValue`
22
+ * (preview) nodes display resolved values, escaped dollars show `$`; without it, raw `$name$`/`$$`.
23
+ * `slateToHtml` re-derives the patterns from marks, so display text is never reversed by lookup. */
35
24
  export declare function wrapRawTokensInTree(nodes: Descendant[], nameToValue?: Map<string, string>): Descendant[];
36
25
  export interface TokenMapResult {
37
26
  /** Map of token NAME -> resolved value (1:1, unambiguous). */
@@ -1 +1 @@
1
- {"version":3,"file":"useTokenMap.d.ts","sourceRoot":"","sources":["../../../src/RichText/PureRichText/hooks/useTokenMap.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAiB,MAAM,OAAO,CAAC;AAClD,OAAO,KAAK,EAAc,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAqBtF,iEAAiE;AACjE,eAAO,MAAM,aAAa,QAAsD,CAAC;AAEjF;;;;;;;;GAQG;AACH,eAAO,MAAM,uBAAuB,QAGnC,CAAC;AAOF;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAClC,QAAQ,EAAE,kBAAkB,EAAE,GAAG,IAAI,GAAG,SAAS,EACjD,eAAe,EAAE,MAAM,GACxB;IAAE,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,OAAO,CAAA;CAAE,CA6C/E;AAgBD;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE,WAAW,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,UAAU,EAAE,CAExG;AA+DD,MAAM,WAAW,cAAc;IAC3B,8DAA8D;IAC9D,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,oFAAoF;IACpF,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAID;;;GAGG;AACH,wBAAgB,WAAW,CACvB,eAAe,EAAE,MAAM,EACvB,qBAAqB,CAAC,EAAE,qBAAqB,GAAG,IAAI,GACrD,cAAc,CAqChB"}
1
+ {"version":3,"file":"useTokenMap.d.ts","sourceRoot":"","sources":["../../../src/RichText/PureRichText/hooks/useTokenMap.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAiB,MAAM,OAAO,CAAC;AAClD,OAAO,KAAK,EAAc,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAkBtF,iEAAiE;AACjE,eAAO,MAAM,aAAa,QAAsD,CAAC;AAEjF;;6DAE6D;AAC7D,eAAO,MAAM,uBAAuB,QAGnC,CAAC;AAOF;;iEAEiE;AACjE,wBAAgB,sBAAsB,CAClC,QAAQ,EAAE,kBAAkB,EAAE,GAAG,IAAI,GAAG,SAAS,EACjD,eAAe,EAAE,MAAM,GACxB;IAAE,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,OAAO,CAAA;CAAE,CA2C/E;AA+BD;;6GAE6G;AAC7G,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,OAAO,CAmBtF;AAgBD;;oGAEoG;AACpG,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE,WAAW,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,UAAU,EAAE,CAExG;AAkFD,MAAM,WAAW,cAAc;IAC3B,8DAA8D;IAC9D,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,oFAAoF;IACpF,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAID;;;GAGG;AACH,wBAAgB,WAAW,CACvB,eAAe,EAAE,MAAM,EACvB,qBAAqB,CAAC,EAAE,qBAAqB,GAAG,IAAI,GACrD,cAAc,CAqChB"}
@@ -1,8 +1,5 @@
1
1
  import * as React from 'react';
2
2
  import { RenderElementProps } from 'slate-react';
3
- /**
4
- * Create Element renderer with edit mode awareness.
5
- * Returns a React component that renders Slate elements (paragraphs, lists, links).
6
- */
7
- export declare const createElementRenderer: (isEditMode: boolean, defaultLineHeight: string) => React.FC<RenderElementProps>;
3
+ /** Create an edit-mode-aware component that renders Slate elements (paragraphs, lists, links). */
4
+ export declare const createElementRenderer: (isEditMode: boolean, defaultLineHeight: string, nameToValue?: Map<string, string>, onLinkOpen?: (url: string) => void) => React.FC<RenderElementProps>;
8
5
  //# sourceMappingURL=ElementRenderer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ElementRenderer.d.ts","sourceRoot":"","sources":["../../../src/RichText/PureRichText/renderers/ElementRenderer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAIjD;;;GAGG;AACH,eAAO,MAAM,qBAAqB,GAC9B,YAAY,OAAO,EACnB,mBAAmB,MAAM,KAC1B,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAgF7B,CAAC"}
1
+ {"version":3,"file":"ElementRenderer.d.ts","sourceRoot":"","sources":["../../../src/RichText/PureRichText/renderers/ElementRenderer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AA6PjD,kGAAkG;AAClG,eAAO,MAAM,qBAAqB,GAC9B,YAAY,OAAO,EACnB,mBAAmB,MAAM,EACzB,cAAc,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EACjC,aAAa,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,KACnC,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAiE7B,CAAC"}
@@ -34,6 +34,7 @@ export interface CustomText {
34
34
  fontSize?: string;
35
35
  fontFamily?: string;
36
36
  tokenName?: string;
37
+ tokenOccurrence?: number;
37
38
  isRawToken?: boolean;
38
39
  isEscapedDollar?: boolean;
39
40
  }
@@ -113,6 +114,11 @@ export interface PureRichTextProps {
113
114
  richTextTokenMetadata?: RichTextTokenMetadata;
114
115
  onOptionsChange?: (options: Record<string, unknown>) => void;
115
116
  onRichtextClick?: (event: unknown) => void;
117
+ onLinkOpen?: (event: {
118
+ payload: {
119
+ url: string;
120
+ };
121
+ }) => void;
116
122
  hasEventHandlers?: boolean;
117
123
  }
118
124
  /** Initial empty Slate value */