markdown-flow-ui 0.2.14 → 0.2.16-dev.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 (465) hide show
  1. package/README.md +7 -0
  2. package/dist/assets/markdown-flow-ui.css +10 -1
  3. package/dist/components/ContentRender/CodeBlock.cjs +1 -1
  4. package/dist/components/ContentRender/CodeBlock.cjs.map +1 -1
  5. package/dist/components/ContentRender/CodeBlock.d.ts +5 -0
  6. package/dist/components/ContentRender/CodeBlock.es.js +41 -38
  7. package/dist/components/ContentRender/CodeBlock.es.js.map +1 -1
  8. package/dist/components/ContentRender/ContentRender.cjs +2 -2
  9. package/dist/components/ContentRender/ContentRender.cjs.map +1 -1
  10. package/dist/components/ContentRender/ContentRender.d.ts +12 -4
  11. package/dist/components/ContentRender/ContentRender.es.js +436 -306
  12. package/dist/components/ContentRender/ContentRender.es.js.map +1 -1
  13. package/dist/components/ContentRender/IframeSandbox.cjs +7 -7
  14. package/dist/components/ContentRender/IframeSandbox.cjs.map +1 -1
  15. package/dist/components/ContentRender/IframeSandbox.d.ts +5 -1
  16. package/dist/components/ContentRender/IframeSandbox.es.js +311 -266
  17. package/dist/components/ContentRender/IframeSandbox.es.js.map +1 -1
  18. package/dist/components/ContentRender/MarkdownFlowInput.cjs +1 -1
  19. package/dist/components/ContentRender/MarkdownFlowInput.cjs.map +1 -1
  20. package/dist/components/ContentRender/MarkdownFlowInput.d.ts +5 -1
  21. package/dist/components/ContentRender/MarkdownFlowInput.es.js +37 -32
  22. package/dist/components/ContentRender/MarkdownFlowInput.es.js.map +1 -1
  23. package/dist/components/ContentRender/SandboxApp.cjs +2 -2
  24. package/dist/components/ContentRender/SandboxApp.cjs.map +1 -1
  25. package/dist/components/ContentRender/SandboxApp.d.ts +5 -1
  26. package/dist/components/ContentRender/SandboxApp.es.js +108 -103
  27. package/dist/components/ContentRender/SandboxApp.es.js.map +1 -1
  28. package/dist/components/ContentRender/blackboard-vendor.d.ts +1 -1
  29. package/dist/components/ContentRender/contentRenderI18n.cjs +1 -1
  30. package/dist/components/ContentRender/contentRenderI18n.cjs.map +1 -1
  31. package/dist/components/ContentRender/contentRenderI18n.d.ts +6 -1
  32. package/dist/components/ContentRender/contentRenderI18n.es.js +5 -56
  33. package/dist/components/ContentRender/contentRenderI18n.es.js.map +1 -1
  34. package/dist/components/ContentRender/contentRenderI18n.test.d.ts +1 -0
  35. package/dist/components/ContentRender/index.cjs +1 -1
  36. package/dist/components/ContentRender/index.d.ts +11 -11
  37. package/dist/components/ContentRender/index.es.js +1 -2
  38. package/dist/components/ContentRender/index.es.js.map +1 -1
  39. package/dist/components/ContentRender/locales/contentRender.json.cjs +2 -0
  40. package/dist/components/ContentRender/locales/contentRender.json.cjs.map +1 -0
  41. package/dist/components/ContentRender/locales/contentRender.json.d.ts +90 -0
  42. package/dist/components/ContentRender/locales/contentRender.json.es.js +11 -0
  43. package/dist/components/ContentRender/locales/contentRender.json.es.js.map +1 -0
  44. package/dist/components/ContentRender/plugins/CustomVariable.cjs +1 -1
  45. package/dist/components/ContentRender/plugins/CustomVariable.cjs.map +1 -1
  46. package/dist/components/ContentRender/plugins/CustomVariable.d.ts +7 -3
  47. package/dist/components/ContentRender/plugins/CustomVariable.es.js +165 -151
  48. package/dist/components/ContentRender/plugins/CustomVariable.es.js.map +1 -1
  49. package/dist/components/ContentRender/plugins/MermaidChart.cjs +1 -1
  50. package/dist/components/ContentRender/plugins/MermaidChart.cjs.map +1 -1
  51. package/dist/components/ContentRender/plugins/MermaidChart.d.ts +1 -0
  52. package/dist/components/ContentRender/plugins/MermaidChart.es.js +68 -44
  53. package/dist/components/ContentRender/plugins/MermaidChart.es.js.map +1 -1
  54. package/dist/components/ContentRender/typewriterPacing.fixtures.d.ts +14 -0
  55. package/dist/components/ContentRender/utils/typewriter-pacing.cjs +3 -0
  56. package/dist/components/ContentRender/utils/typewriter-pacing.cjs.map +1 -0
  57. package/dist/components/ContentRender/utils/typewriter-pacing.d.ts +27 -0
  58. package/dist/components/ContentRender/utils/typewriter-pacing.es.js +98 -0
  59. package/dist/components/ContentRender/utils/typewriter-pacing.es.js.map +1 -0
  60. package/dist/components/ContentRender/utils/typewriter-pacing.test.d.ts +1 -0
  61. package/dist/components/MarkdownFlow/MarkdownFlow.cjs +1 -1
  62. package/dist/components/MarkdownFlow/MarkdownFlow.cjs.map +1 -1
  63. package/dist/components/MarkdownFlow/MarkdownFlow.d.ts +12 -4
  64. package/dist/components/MarkdownFlow/MarkdownFlow.es.js +51 -39
  65. package/dist/components/MarkdownFlow/MarkdownFlow.es.js.map +1 -1
  66. package/dist/components/MarkdownFlow/ScrollToBottomButton.cjs +1 -1
  67. package/dist/components/MarkdownFlow/ScrollToBottomButton.cjs.map +1 -1
  68. package/dist/components/MarkdownFlow/ScrollToBottomButton.d.ts +31 -1
  69. package/dist/components/MarkdownFlow/ScrollToBottomButton.es.js +46 -17
  70. package/dist/components/MarkdownFlow/ScrollToBottomButton.es.js.map +1 -1
  71. package/dist/components/MarkdownFlow/ScrollToBottomControl.cjs +2 -0
  72. package/dist/components/MarkdownFlow/ScrollToBottomControl.cjs.map +1 -0
  73. package/dist/components/MarkdownFlow/ScrollToBottomControl.d.ts +18 -0
  74. package/dist/components/MarkdownFlow/ScrollToBottomControl.es.js +47 -0
  75. package/dist/components/MarkdownFlow/ScrollToBottomControl.es.js.map +1 -0
  76. package/dist/components/MarkdownFlow/ScrollableMarkdownFlow.cjs +1 -1
  77. package/dist/components/MarkdownFlow/ScrollableMarkdownFlow.cjs.map +1 -1
  78. package/dist/components/MarkdownFlow/ScrollableMarkdownFlow.d.ts +1 -1
  79. package/dist/components/MarkdownFlow/ScrollableMarkdownFlow.es.js +33 -52
  80. package/dist/components/MarkdownFlow/ScrollableMarkdownFlow.es.js.map +1 -1
  81. package/dist/components/MarkdownFlow/index.cjs +1 -1
  82. package/dist/components/MarkdownFlow/index.d.ts +9 -6
  83. package/dist/components/MarkdownFlow/index.es.js +6 -6
  84. package/dist/components/MarkdownFlow/index.es.js.map +1 -1
  85. package/dist/components/MarkdownFlow/useScrollToBottom.cjs +1 -1
  86. package/dist/components/MarkdownFlow/useScrollToBottom.cjs.map +1 -1
  87. package/dist/components/MarkdownFlow/useScrollToBottom.d.ts +40 -8
  88. package/dist/components/MarkdownFlow/useScrollToBottom.es.js +352 -83
  89. package/dist/components/MarkdownFlow/useScrollToBottom.es.js.map +1 -1
  90. package/dist/components/MarkdownFlowEditor/MarkdownFlowEditor.cjs +1 -1
  91. package/dist/components/MarkdownFlowEditor/MarkdownFlowEditor.cjs.map +1 -1
  92. package/dist/components/MarkdownFlowEditor/MarkdownFlowEditor.d.ts +5 -3
  93. package/dist/components/MarkdownFlowEditor/MarkdownFlowEditor.es.js +371 -324
  94. package/dist/components/MarkdownFlowEditor/MarkdownFlowEditor.es.js.map +1 -1
  95. package/dist/components/MarkdownFlowEditor/components/CustomDialog.cjs +1 -1
  96. package/dist/components/MarkdownFlowEditor/components/CustomDialog.cjs.map +1 -1
  97. package/dist/components/MarkdownFlowEditor/components/CustomDialog.d.ts +10 -0
  98. package/dist/components/MarkdownFlowEditor/components/CustomDialog.es.js +22 -19
  99. package/dist/components/MarkdownFlowEditor/components/CustomDialog.es.js.map +1 -1
  100. package/dist/components/MarkdownFlowEditor/components/CustomPopover.cjs +1 -1
  101. package/dist/components/MarkdownFlowEditor/components/CustomPopover.cjs.map +1 -1
  102. package/dist/components/MarkdownFlowEditor/components/CustomPopover.d.ts +8 -0
  103. package/dist/components/MarkdownFlowEditor/components/CustomPopover.es.js +19 -15
  104. package/dist/components/MarkdownFlowEditor/components/CustomPopover.es.js.map +1 -1
  105. package/dist/components/MarkdownFlowEditor/components/EditorToolbar.cjs +1 -1
  106. package/dist/components/MarkdownFlowEditor/components/EditorToolbar.cjs.map +1 -1
  107. package/dist/components/MarkdownFlowEditor/components/EditorToolbar.d.ts +4 -1
  108. package/dist/components/MarkdownFlowEditor/components/EditorToolbar.es.js +99 -93
  109. package/dist/components/MarkdownFlowEditor/components/EditorToolbar.es.js.map +1 -1
  110. package/dist/components/MarkdownFlowEditor/components/ImageInject.cjs +1 -1
  111. package/dist/components/MarkdownFlowEditor/components/ImageInject.cjs.map +1 -1
  112. package/dist/components/MarkdownFlowEditor/components/ImageInject.d.ts +1 -1
  113. package/dist/components/MarkdownFlowEditor/components/ImageInject.es.js +183 -182
  114. package/dist/components/MarkdownFlowEditor/components/ImageInject.es.js.map +1 -1
  115. package/dist/components/MarkdownFlowEditor/components/VariableSearchDropdown.cjs +1 -1
  116. package/dist/components/MarkdownFlowEditor/components/VariableSearchDropdown.cjs.map +1 -1
  117. package/dist/components/MarkdownFlowEditor/components/VariableSearchDropdown.d.ts +1 -1
  118. package/dist/components/MarkdownFlowEditor/components/VariableSearchDropdown.es.js +107 -103
  119. package/dist/components/MarkdownFlowEditor/components/VariableSearchDropdown.es.js.map +1 -1
  120. package/dist/components/MarkdownFlowEditor/components/VariableSelect.cjs +1 -1
  121. package/dist/components/MarkdownFlowEditor/components/VariableSelect.cjs.map +1 -1
  122. package/dist/components/MarkdownFlowEditor/components/VariableSelect.d.ts +1 -1
  123. package/dist/components/MarkdownFlowEditor/components/VariableSelect.es.js +106 -106
  124. package/dist/components/MarkdownFlowEditor/components/VariableSelect.es.js.map +1 -1
  125. package/dist/components/MarkdownFlowEditor/components/VideoInject.cjs +1 -1
  126. package/dist/components/MarkdownFlowEditor/components/VideoInject.cjs.map +1 -1
  127. package/dist/components/MarkdownFlowEditor/components/VideoInject.es.js +64 -63
  128. package/dist/components/MarkdownFlowEditor/components/VideoInject.es.js.map +1 -1
  129. package/dist/components/MarkdownFlowEditor/components/icons/ButtonIcon.cjs +1 -1
  130. package/dist/components/MarkdownFlowEditor/components/icons/ButtonIcon.cjs.map +1 -1
  131. package/dist/components/MarkdownFlowEditor/components/icons/ButtonIcon.es.js +13 -13
  132. package/dist/components/MarkdownFlowEditor/components/icons/ButtonIcon.es.js.map +1 -1
  133. package/dist/components/MarkdownFlowEditor/components/icons/SearchBracesIcon.cjs +1 -1
  134. package/dist/components/MarkdownFlowEditor/components/icons/SearchBracesIcon.cjs.map +1 -1
  135. package/dist/components/MarkdownFlowEditor/components/icons/SearchBracesIcon.es.js +12 -12
  136. package/dist/components/MarkdownFlowEditor/components/icons/SearchBracesIcon.es.js.map +1 -1
  137. package/dist/components/MarkdownFlowEditor/editor-context.d.ts +1 -1
  138. package/dist/components/MarkdownFlowEditor/editorI18n.cjs +1 -1
  139. package/dist/components/MarkdownFlowEditor/editorI18n.cjs.map +1 -1
  140. package/dist/components/MarkdownFlowEditor/editorI18n.d.ts +290 -0
  141. package/dist/components/MarkdownFlowEditor/editorI18n.es.js +12 -8
  142. package/dist/components/MarkdownFlowEditor/editorI18n.es.js.map +1 -1
  143. package/dist/components/MarkdownFlowEditor/editorI18n.test.d.ts +1 -0
  144. package/dist/components/MarkdownFlowEditor/index.d.ts +6 -6
  145. package/dist/components/MarkdownFlowEditor/locales/ar-SA.json.cjs +2 -0
  146. package/dist/components/MarkdownFlowEditor/locales/ar-SA.json.cjs.map +1 -0
  147. package/dist/components/MarkdownFlowEditor/locales/ar-SA.json.d.ts +72 -0
  148. package/dist/components/MarkdownFlowEditor/locales/ar-SA.json.es.js +140 -0
  149. package/dist/components/MarkdownFlowEditor/locales/ar-SA.json.es.js.map +1 -0
  150. package/dist/components/MarkdownFlowEditor/locales/en-US.json.cjs +1 -1
  151. package/dist/components/MarkdownFlowEditor/locales/en-US.json.d.ts +2 -0
  152. package/dist/components/MarkdownFlowEditor/locales/en-US.json.es.js +118 -114
  153. package/dist/components/MarkdownFlowEditor/locales/en-US.json.es.js.map +1 -1
  154. package/dist/components/MarkdownFlowEditor/locales/fr-FR.json.cjs +1 -1
  155. package/dist/components/MarkdownFlowEditor/locales/fr-FR.json.d.ts +2 -0
  156. package/dist/components/MarkdownFlowEditor/locales/fr-FR.json.es.js +118 -114
  157. package/dist/components/MarkdownFlowEditor/locales/fr-FR.json.es.js.map +1 -1
  158. package/dist/components/MarkdownFlowEditor/locales/th-TH.json.cjs +2 -0
  159. package/dist/components/MarkdownFlowEditor/locales/th-TH.json.cjs.map +1 -0
  160. package/dist/components/MarkdownFlowEditor/locales/th-TH.json.d.ts +72 -0
  161. package/dist/components/MarkdownFlowEditor/locales/th-TH.json.es.js +140 -0
  162. package/dist/components/MarkdownFlowEditor/locales/th-TH.json.es.js.map +1 -0
  163. package/dist/components/MarkdownFlowEditor/locales/zh-CN.json.cjs +1 -1
  164. package/dist/components/MarkdownFlowEditor/locales/zh-CN.json.d.ts +2 -0
  165. package/dist/components/MarkdownFlowEditor/locales/zh-CN.json.es.js +70 -66
  166. package/dist/components/MarkdownFlowEditor/locales/zh-CN.json.es.js.map +1 -1
  167. package/dist/components/MarkdownFlowEditor/plugins/ImgPlaceholder.cjs +1 -1
  168. package/dist/components/MarkdownFlowEditor/plugins/ImgPlaceholder.cjs.map +1 -1
  169. package/dist/components/MarkdownFlowEditor/plugins/ImgPlaceholder.es.js +40 -35
  170. package/dist/components/MarkdownFlowEditor/plugins/ImgPlaceholder.es.js.map +1 -1
  171. package/dist/components/MarkdownFlowEditor/plugins/PlaceholderWidget.d.ts +1 -1
  172. package/dist/components/MarkdownFlowEditor/plugins/VideoPlaceholder.cjs +1 -1
  173. package/dist/components/MarkdownFlowEditor/plugins/VideoPlaceholder.cjs.map +1 -1
  174. package/dist/components/MarkdownFlowEditor/plugins/VideoPlaceholder.es.js +27 -23
  175. package/dist/components/MarkdownFlowEditor/plugins/VideoPlaceholder.es.js.map +1 -1
  176. package/dist/components/MarkdownFlowEditor/plugins/mediaPlaceholderLabels.cjs +2 -0
  177. package/dist/components/MarkdownFlowEditor/plugins/mediaPlaceholderLabels.cjs.map +1 -0
  178. package/dist/components/MarkdownFlowEditor/plugins/mediaPlaceholderLabels.d.ts +7 -0
  179. package/dist/components/MarkdownFlowEditor/plugins/mediaPlaceholderLabels.es.js +12 -0
  180. package/dist/components/MarkdownFlowEditor/plugins/mediaPlaceholderLabels.es.js.map +1 -0
  181. package/dist/components/MarkdownFlowEditor/utils.d.ts +1 -1
  182. package/dist/components/Slide/MarkdownSlideScaling.cjs +1 -1
  183. package/dist/components/Slide/MarkdownSlideScaling.cjs.map +1 -1
  184. package/dist/components/Slide/MarkdownSlideScaling.d.ts +1 -1
  185. package/dist/components/Slide/MarkdownSlideScaling.es.js +20 -20
  186. package/dist/components/Slide/MarkdownSlideScaling.es.js.map +1 -1
  187. package/dist/components/Slide/MobilePlayerSettingsSheet.cjs +1 -1
  188. package/dist/components/Slide/MobilePlayerSettingsSheet.cjs.map +1 -1
  189. package/dist/components/Slide/MobilePlayerSettingsSheet.d.ts +7 -2
  190. package/dist/components/Slide/MobilePlayerSettingsSheet.es.js +61 -57
  191. package/dist/components/Slide/MobilePlayerSettingsSheet.es.js.map +1 -1
  192. package/dist/components/Slide/Player.cjs +1 -1
  193. package/dist/components/Slide/Player.cjs.map +1 -1
  194. package/dist/components/Slide/Player.d.ts +6 -6
  195. package/dist/components/Slide/Player.es.js +547 -541
  196. package/dist/components/Slide/Player.es.js.map +1 -1
  197. package/dist/components/Slide/Slide.cjs +1 -1
  198. package/dist/components/Slide/Slide.cjs.map +1 -1
  199. package/dist/components/Slide/Slide.d.ts +14 -12
  200. package/dist/components/Slide/Slide.es.js +745 -726
  201. package/dist/components/Slide/Slide.es.js.map +1 -1
  202. package/dist/components/Slide/SubtitleOverlay.cjs +1 -1
  203. package/dist/components/Slide/SubtitleOverlay.cjs.map +1 -1
  204. package/dist/components/Slide/SubtitleOverlay.d.ts +2 -2
  205. package/dist/components/Slide/SubtitleOverlay.es.js +17 -17
  206. package/dist/components/Slide/SubtitleOverlay.es.js.map +1 -1
  207. package/dist/components/Slide/diff-utils.d.ts +1 -1
  208. package/dist/components/Slide/index.d.ts +12 -12
  209. package/dist/components/Slide/locales/slide.json.cjs +2 -0
  210. package/dist/components/Slide/locales/slide.json.cjs.map +1 -0
  211. package/dist/components/Slide/locales/slide.json.d.ts +205 -0
  212. package/dist/components/Slide/locales/slide.json.es.js +11 -0
  213. package/dist/components/Slide/locales/slide.json.es.js.map +1 -0
  214. package/dist/components/Slide/slideI18n.cjs +1 -1
  215. package/dist/components/Slide/slideI18n.cjs.map +1 -1
  216. package/dist/components/Slide/slideI18n.d.ts +6 -3
  217. package/dist/components/Slide/slideI18n.es.js +10 -155
  218. package/dist/components/Slide/slideI18n.es.js.map +1 -1
  219. package/dist/components/Slide/useSlide.d.ts +1 -1
  220. package/dist/components/Slide/utils/appendedMarkerAdvance.d.ts +1 -1
  221. package/dist/components/Slide/utils/audioSegments.d.ts +1 -1
  222. package/dist/components/Slide/utils/interactionResolution.d.ts +2 -2
  223. package/dist/components/Slide/utils/listenModeElementList.d.ts +2 -2
  224. package/dist/components/Slide/utils/markdownScaling.d.ts +1 -1
  225. package/dist/components/Slide/utils/playerCustomActions.d.ts +2 -2
  226. package/dist/components/Slide/utils/playerKeyboardShortcuts.cjs +1 -1
  227. package/dist/components/Slide/utils/playerKeyboardShortcuts.cjs.map +1 -1
  228. package/dist/components/Slide/utils/playerKeyboardShortcuts.d.ts +1 -1
  229. package/dist/components/Slide/utils/playerKeyboardShortcuts.es.js +20 -20
  230. package/dist/components/Slide/utils/playerKeyboardShortcuts.es.js.map +1 -1
  231. package/dist/components/Slide/utils/runStreamFixture.d.ts +1 -1
  232. package/dist/components/Slide/utils/segmentSeek.d.ts +1 -1
  233. package/dist/components/Slide/utils/silentStepAutoAdvance.d.ts +1 -1
  234. package/dist/components/Slide/utils/streamingNavigation.d.ts +1 -1
  235. package/dist/components/Slide/utils/subtitleCue.d.ts +1 -1
  236. package/dist/components/Slide/utils/subtitleJumpNavigation.d.ts +1 -1
  237. package/dist/components/index.d.ts +22 -18
  238. package/dist/components/ui/button.cjs +1 -1
  239. package/dist/components/ui/button.cjs.map +1 -1
  240. package/dist/components/ui/button.es.js +12 -13
  241. package/dist/components/ui/button.es.js.map +1 -1
  242. package/dist/components/ui/checkbox.cjs +1 -1
  243. package/dist/components/ui/checkbox.cjs.map +1 -1
  244. package/dist/components/ui/checkbox.es.js +35 -35
  245. package/dist/components/ui/checkbox.es.js.map +1 -1
  246. package/dist/components/ui/dialog.cjs +1 -1
  247. package/dist/components/ui/dialog.cjs.map +1 -1
  248. package/dist/components/ui/dialog.d.ts +5 -1
  249. package/dist/components/ui/dialog.es.js +37 -37
  250. package/dist/components/ui/dialog.es.js.map +1 -1
  251. package/dist/components/ui/input.cjs +1 -1
  252. package/dist/components/ui/input.cjs.map +1 -1
  253. package/dist/components/ui/input.es.js +4 -4
  254. package/dist/components/ui/input.es.js.map +1 -1
  255. package/dist/components/ui/inputGroup/button.cjs +1 -1
  256. package/dist/components/ui/inputGroup/button.cjs.map +1 -1
  257. package/dist/components/ui/inputGroup/button.es.js +9 -10
  258. package/dist/components/ui/inputGroup/button.es.js.map +1 -1
  259. package/dist/components/ui/inputGroup/input-group.cjs +1 -1
  260. package/dist/components/ui/inputGroup/input-group.cjs.map +1 -1
  261. package/dist/components/ui/inputGroup/input-group.d.ts +1 -1
  262. package/dist/components/ui/inputGroup/input-group.es.js +10 -10
  263. package/dist/components/ui/inputGroup/input-group.es.js.map +1 -1
  264. package/dist/components/ui/inputGroup/textarea.cjs +1 -1
  265. package/dist/components/ui/inputGroup/textarea.cjs.map +1 -1
  266. package/dist/components/ui/inputGroup/textarea.es.js +2 -2
  267. package/dist/components/ui/inputGroup/textarea.es.js.map +1 -1
  268. package/dist/components/ui/loading-overlay-card.cjs +2 -2
  269. package/dist/components/ui/loading-overlay-card.cjs.map +1 -1
  270. package/dist/components/ui/loading-overlay-card.es.js +11 -11
  271. package/dist/components/ui/loading-overlay-card.es.js.map +1 -1
  272. package/dist/components/ui/popover.cjs +1 -1
  273. package/dist/components/ui/popover.cjs.map +1 -1
  274. package/dist/components/ui/popover.es.js +6 -6
  275. package/dist/components/ui/popover.es.js.map +1 -1
  276. package/dist/components/ui/tooltip.cjs +1 -1
  277. package/dist/components/ui/tooltip.cjs.map +1 -1
  278. package/dist/components/ui/tooltip.es.js +16 -16
  279. package/dist/components/ui/tooltip.es.js.map +1 -1
  280. package/dist/editor.d.ts +2 -2
  281. package/dist/fonts/KaTeX_AMS-Regular.ttf +0 -0
  282. package/dist/fonts/KaTeX_AMS-Regular.woff +0 -0
  283. package/dist/fonts/KaTeX_AMS-Regular.woff2 +0 -0
  284. package/dist/fonts/KaTeX_Caligraphic-Bold.ttf +0 -0
  285. package/dist/fonts/KaTeX_Caligraphic-Bold.woff +0 -0
  286. package/dist/fonts/KaTeX_Caligraphic-Bold.woff2 +0 -0
  287. package/dist/fonts/KaTeX_Caligraphic-Regular.ttf +0 -0
  288. package/dist/fonts/KaTeX_Caligraphic-Regular.woff +0 -0
  289. package/dist/fonts/KaTeX_Caligraphic-Regular.woff2 +0 -0
  290. package/dist/fonts/KaTeX_Fraktur-Bold.ttf +0 -0
  291. package/dist/fonts/KaTeX_Fraktur-Bold.woff +0 -0
  292. package/dist/fonts/KaTeX_Fraktur-Bold.woff2 +0 -0
  293. package/dist/fonts/KaTeX_Fraktur-Regular.ttf +0 -0
  294. package/dist/fonts/KaTeX_Fraktur-Regular.woff +0 -0
  295. package/dist/fonts/KaTeX_Fraktur-Regular.woff2 +0 -0
  296. package/dist/fonts/KaTeX_Main-Bold.ttf +0 -0
  297. package/dist/fonts/KaTeX_Main-Bold.woff +0 -0
  298. package/dist/fonts/KaTeX_Main-Bold.woff2 +0 -0
  299. package/dist/fonts/KaTeX_Main-BoldItalic.ttf +0 -0
  300. package/dist/fonts/KaTeX_Main-BoldItalic.woff +0 -0
  301. package/dist/fonts/KaTeX_Main-BoldItalic.woff2 +0 -0
  302. package/dist/fonts/KaTeX_Main-Italic.ttf +0 -0
  303. package/dist/fonts/KaTeX_Main-Italic.woff +0 -0
  304. package/dist/fonts/KaTeX_Main-Italic.woff2 +0 -0
  305. package/dist/fonts/KaTeX_Main-Regular.ttf +0 -0
  306. package/dist/fonts/KaTeX_Main-Regular.woff +0 -0
  307. package/dist/fonts/KaTeX_Main-Regular.woff2 +0 -0
  308. package/dist/fonts/KaTeX_Math-BoldItalic.ttf +0 -0
  309. package/dist/fonts/KaTeX_Math-BoldItalic.woff +0 -0
  310. package/dist/fonts/KaTeX_Math-BoldItalic.woff2 +0 -0
  311. package/dist/fonts/KaTeX_Math-Italic.ttf +0 -0
  312. package/dist/fonts/KaTeX_Math-Italic.woff +0 -0
  313. package/dist/fonts/KaTeX_Math-Italic.woff2 +0 -0
  314. package/dist/fonts/KaTeX_SansSerif-Bold.ttf +0 -0
  315. package/dist/fonts/KaTeX_SansSerif-Bold.woff +0 -0
  316. package/dist/fonts/KaTeX_SansSerif-Bold.woff2 +0 -0
  317. package/dist/fonts/KaTeX_SansSerif-Italic.ttf +0 -0
  318. package/dist/fonts/KaTeX_SansSerif-Italic.woff +0 -0
  319. package/dist/fonts/KaTeX_SansSerif-Italic.woff2 +0 -0
  320. package/dist/fonts/KaTeX_SansSerif-Regular.ttf +0 -0
  321. package/dist/fonts/KaTeX_SansSerif-Regular.woff +0 -0
  322. package/dist/fonts/KaTeX_SansSerif-Regular.woff2 +0 -0
  323. package/dist/fonts/KaTeX_Script-Regular.ttf +0 -0
  324. package/dist/fonts/KaTeX_Script-Regular.woff +0 -0
  325. package/dist/fonts/KaTeX_Script-Regular.woff2 +0 -0
  326. package/dist/fonts/KaTeX_Size1-Regular.ttf +0 -0
  327. package/dist/fonts/KaTeX_Size1-Regular.woff +0 -0
  328. package/dist/fonts/KaTeX_Size1-Regular.woff2 +0 -0
  329. package/dist/fonts/KaTeX_Size2-Regular.ttf +0 -0
  330. package/dist/fonts/KaTeX_Size2-Regular.woff +0 -0
  331. package/dist/fonts/KaTeX_Size2-Regular.woff2 +0 -0
  332. package/dist/fonts/KaTeX_Size3-Regular.ttf +0 -0
  333. package/dist/fonts/KaTeX_Size3-Regular.woff +0 -0
  334. package/dist/fonts/KaTeX_Size3-Regular.woff2 +0 -0
  335. package/dist/fonts/KaTeX_Size4-Regular.ttf +0 -0
  336. package/dist/fonts/KaTeX_Size4-Regular.woff +0 -0
  337. package/dist/fonts/KaTeX_Size4-Regular.woff2 +0 -0
  338. package/dist/fonts/KaTeX_Typewriter-Regular.ttf +0 -0
  339. package/dist/fonts/KaTeX_Typewriter-Regular.woff +0 -0
  340. package/dist/fonts/KaTeX_Typewriter-Regular.woff2 +0 -0
  341. package/dist/index.cjs +1 -1
  342. package/dist/index.d.ts +2 -2
  343. package/dist/index.es.js +22 -19
  344. package/dist/index.es.js.map +1 -1
  345. package/dist/lib/locale.cjs +1 -1
  346. package/dist/lib/locale.cjs.map +1 -1
  347. package/dist/lib/locale.d.ts +5 -1
  348. package/dist/lib/locale.es.js +26 -13
  349. package/dist/lib/locale.es.js.map +1 -1
  350. package/dist/lib/locale.test.d.ts +1 -0
  351. package/dist/lib/useDetachedLanguage.cjs +2 -0
  352. package/dist/lib/useDetachedLanguage.cjs.map +1 -0
  353. package/dist/lib/useDetachedLanguage.d.ts +3 -0
  354. package/dist/lib/useDetachedLanguage.es.js +25 -0
  355. package/dist/lib/useDetachedLanguage.es.js.map +1 -0
  356. package/dist/lib/useResolvedDirection.cjs +2 -0
  357. package/dist/lib/useResolvedDirection.cjs.map +1 -0
  358. package/dist/lib/useResolvedDirection.d.ts +6 -0
  359. package/dist/lib/useResolvedDirection.es.js +37 -0
  360. package/dist/lib/useResolvedDirection.es.js.map +1 -0
  361. package/dist/markdown-flow-ui-lib.css +1 -1
  362. package/dist/node_modules/@radix-ui/react-arrow/dist/index.cjs +1 -1
  363. package/dist/node_modules/@radix-ui/react-arrow/dist/index.cjs.map +1 -1
  364. package/dist/node_modules/@radix-ui/react-arrow/dist/index.es.js +6 -6
  365. package/dist/node_modules/@radix-ui/react-arrow/dist/index.es.js.map +1 -1
  366. package/dist/node_modules/@radix-ui/react-context/dist/index.cjs +1 -1
  367. package/dist/node_modules/@radix-ui/react-context/dist/index.cjs.map +1 -1
  368. package/dist/node_modules/@radix-ui/react-context/dist/index.es.js +21 -21
  369. package/dist/node_modules/@radix-ui/react-context/dist/index.es.js.map +1 -1
  370. package/dist/node_modules/@radix-ui/react-dialog/dist/index.cjs +2 -2
  371. package/dist/node_modules/@radix-ui/react-dialog/dist/index.cjs.map +1 -1
  372. package/dist/node_modules/@radix-ui/react-dialog/dist/index.es.js +100 -100
  373. package/dist/node_modules/@radix-ui/react-dialog/dist/index.es.js.map +1 -1
  374. package/dist/node_modules/@radix-ui/react-dismissable-layer/dist/index.cjs +1 -1
  375. package/dist/node_modules/@radix-ui/react-dismissable-layer/dist/index.cjs.map +1 -1
  376. package/dist/node_modules/@radix-ui/react-dismissable-layer/dist/index.es.js +38 -38
  377. package/dist/node_modules/@radix-ui/react-dismissable-layer/dist/index.es.js.map +1 -1
  378. package/dist/node_modules/@radix-ui/react-focus-scope/dist/index.cjs +1 -1
  379. package/dist/node_modules/@radix-ui/react-focus-scope/dist/index.cjs.map +1 -1
  380. package/dist/node_modules/@radix-ui/react-focus-scope/dist/index.es.js +9 -9
  381. package/dist/node_modules/@radix-ui/react-focus-scope/dist/index.es.js.map +1 -1
  382. package/dist/node_modules/@radix-ui/react-popover/dist/index.cjs +1 -1
  383. package/dist/node_modules/@radix-ui/react-popover/dist/index.cjs.map +1 -1
  384. package/dist/node_modules/@radix-ui/react-popover/dist/index.es.js +95 -95
  385. package/dist/node_modules/@radix-ui/react-popover/dist/index.es.js.map +1 -1
  386. package/dist/node_modules/@radix-ui/react-popper/dist/index.cjs +1 -1
  387. package/dist/node_modules/@radix-ui/react-popper/dist/index.cjs.map +1 -1
  388. package/dist/node_modules/@radix-ui/react-popper/dist/index.es.js +48 -48
  389. package/dist/node_modules/@radix-ui/react-popper/dist/index.es.js.map +1 -1
  390. package/dist/node_modules/@radix-ui/react-portal/dist/index.cjs +1 -1
  391. package/dist/node_modules/@radix-ui/react-portal/dist/index.cjs.map +1 -1
  392. package/dist/node_modules/@radix-ui/react-portal/dist/index.es.js +6 -6
  393. package/dist/node_modules/@radix-ui/react-portal/dist/index.es.js.map +1 -1
  394. package/dist/node_modules/@radix-ui/react-primitive/dist/index.cjs +1 -1
  395. package/dist/node_modules/@radix-ui/react-primitive/dist/index.cjs.map +1 -1
  396. package/dist/node_modules/@radix-ui/react-primitive/dist/index.es.js +9 -9
  397. package/dist/node_modules/@radix-ui/react-primitive/dist/index.es.js.map +1 -1
  398. package/dist/node_modules/@radix-ui/react-slot/dist/index.cjs +1 -1
  399. package/dist/node_modules/@radix-ui/react-slot/dist/index.cjs.map +1 -1
  400. package/dist/node_modules/@radix-ui/react-slot/dist/index.es.js +17 -17
  401. package/dist/node_modules/@radix-ui/react-slot/dist/index.es.js.map +1 -1
  402. package/dist/node_modules/@radix-ui/react-tooltip/dist/index.cjs +1 -1
  403. package/dist/node_modules/@radix-ui/react-tooltip/dist/index.cjs.map +1 -1
  404. package/dist/node_modules/@radix-ui/react-tooltip/dist/index.es.js +100 -100
  405. package/dist/node_modules/@radix-ui/react-tooltip/dist/index.es.js.map +1 -1
  406. package/dist/node_modules/@radix-ui/react-visually-hidden/dist/index.cjs +1 -1
  407. package/dist/node_modules/@radix-ui/react-visually-hidden/dist/index.cjs.map +1 -1
  408. package/dist/node_modules/@radix-ui/react-visually-hidden/dist/index.es.js +6 -6
  409. package/dist/node_modules/@radix-ui/react-visually-hidden/dist/index.es.js.map +1 -1
  410. package/dist/node_modules/@uiw/react-codemirror/esm/index.cjs +1 -1
  411. package/dist/node_modules/@uiw/react-codemirror/esm/index.cjs.map +1 -1
  412. package/dist/node_modules/@uiw/react-codemirror/esm/index.es.js +27 -27
  413. package/dist/node_modules/@uiw/react-codemirror/esm/index.es.js.map +1 -1
  414. package/dist/node_modules/lucide-react/dist/esm/icons/{chevron-down.cjs → chevrons-down.cjs} +2 -2
  415. package/dist/node_modules/lucide-react/dist/esm/icons/chevrons-down.cjs.map +1 -0
  416. package/dist/node_modules/lucide-react/dist/esm/icons/{chevron-down.es.js → chevrons-down.es.js} +6 -3
  417. package/dist/node_modules/lucide-react/dist/esm/icons/chevrons-down.es.js.map +1 -0
  418. package/dist/node_modules/react-markdown/lib/index.cjs +1 -1
  419. package/dist/node_modules/react-markdown/lib/index.cjs.map +1 -1
  420. package/dist/node_modules/react-markdown/lib/index.es.js +39 -39
  421. package/dist/node_modules/react-markdown/lib/index.es.js.map +1 -1
  422. package/dist/renderer.cjs +1 -1
  423. package/dist/renderer.d.ts +18 -17
  424. package/dist/renderer.es.js +20 -17
  425. package/dist/renderer.es.js.map +1 -1
  426. package/dist/scroll.cjs +1 -1
  427. package/dist/scroll.d.ts +6 -3
  428. package/dist/scroll.es.js +4 -2
  429. package/dist/scroll.es.js.map +1 -1
  430. package/dist/slide.d.ts +3 -3
  431. package/package.json +5 -2
  432. package/dist/_virtual/jsx-runtime.cjs +0 -2
  433. package/dist/_virtual/jsx-runtime.cjs.map +0 -1
  434. package/dist/_virtual/jsx-runtime.es.js +0 -6
  435. package/dist/_virtual/jsx-runtime.es.js.map +0 -1
  436. package/dist/_virtual/jsx-runtime.es2.js +0 -5
  437. package/dist/_virtual/jsx-runtime.es2.js.map +0 -1
  438. package/dist/_virtual/jsx-runtime2.cjs +0 -2
  439. package/dist/_virtual/jsx-runtime2.cjs.map +0 -1
  440. package/dist/_virtual/react-jsx-runtime.development.cjs +0 -2
  441. package/dist/_virtual/react-jsx-runtime.development.cjs.map +0 -1
  442. package/dist/_virtual/react-jsx-runtime.development.es.js +0 -5
  443. package/dist/_virtual/react-jsx-runtime.development.es.js.map +0 -1
  444. package/dist/_virtual/react-jsx-runtime.production.cjs +0 -2
  445. package/dist/_virtual/react-jsx-runtime.production.cjs.map +0 -1
  446. package/dist/_virtual/react-jsx-runtime.production.es.js +0 -5
  447. package/dist/_virtual/react-jsx-runtime.production.es.js.map +0 -1
  448. package/dist/lib/localeTextMap.cjs +0 -2
  449. package/dist/lib/localeTextMap.cjs.map +0 -1
  450. package/dist/lib/localeTextMap.es.js +0 -5
  451. package/dist/lib/localeTextMap.es.js.map +0 -1
  452. package/dist/node_modules/lucide-react/dist/esm/icons/chevron-down.cjs.map +0 -1
  453. package/dist/node_modules/lucide-react/dist/esm/icons/chevron-down.es.js.map +0 -1
  454. package/dist/node_modules/react/cjs/react-jsx-runtime.development.cjs +0 -24
  455. package/dist/node_modules/react/cjs/react-jsx-runtime.development.cjs.map +0 -1
  456. package/dist/node_modules/react/cjs/react-jsx-runtime.development.es.js +0 -409
  457. package/dist/node_modules/react/cjs/react-jsx-runtime.development.es.js.map +0 -1
  458. package/dist/node_modules/react/cjs/react-jsx-runtime.production.cjs +0 -10
  459. package/dist/node_modules/react/cjs/react-jsx-runtime.production.cjs.map +0 -1
  460. package/dist/node_modules/react/cjs/react-jsx-runtime.production.es.js +0 -36
  461. package/dist/node_modules/react/cjs/react-jsx-runtime.production.es.js.map +0 -1
  462. package/dist/node_modules/react/jsx-runtime.cjs +0 -2
  463. package/dist/node_modules/react/jsx-runtime.cjs.map +0 -1
  464. package/dist/node_modules/react/jsx-runtime.es.js +0 -11
  465. package/dist/node_modules/react/jsx-runtime.es.js.map +0 -1
package/dist/index.cjs CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./components/MarkdownFlowEditor/MarkdownFlowEditor.cjs"),o=require("./components/MarkdownFlow/MarkdownFlow.cjs"),n=require("./components/MarkdownFlow/ScrollableMarkdownFlow.cjs"),r=require("./components/MarkdownFlow/ScrollToBottomButton.cjs"),l=require("./components/MarkdownFlow/useScrollToBottom.cjs"),a=require("./components/ContentRender/ContentRender.cjs"),u=require("./components/ContentRender/IframeSandbox.cjs"),c=require("./components/ContentRender/utils/split-content.cjs"),s=require("./components/ContentRender/MarkdownFlowInput.cjs"),t=require("./lib/interaction-defaults.cjs");exports.MarkdownFlowEditor=e.default;exports.MarkdownFlow=o.default;exports.ScrollableMarkdownFlow=n.default;exports.ScrollToBottomButton=r.ScrollToBottomButton;exports.useScrollToBottom=l.useScrollToBottom;exports.ContentRender=a.default;exports.IframeSandbox=u.default;exports.splitContentSegments=c.splitContentSegments;exports.MarkdownFlowInput=s.default;exports.getInteractionDefaultSelectedValues=t.getInteractionDefaultSelectedValues;exports.getInteractionDefaultValues=t.getInteractionDefaultValues;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./components/MarkdownFlowEditor/MarkdownFlowEditor.cjs"),l=require("./components/MarkdownFlow/MarkdownFlow.cjs"),o=require("./components/MarkdownFlow/ScrollableMarkdownFlow.cjs"),r=require("./components/MarkdownFlow/ScrollToBottomButton.cjs"),n=require("./components/MarkdownFlow/ScrollToBottomControl.cjs"),a=require("./components/MarkdownFlow/useScrollToBottom.cjs"),u=require("./components/ContentRender/ContentRender.cjs"),c=require("./components/ContentRender/IframeSandbox.cjs"),d=require("./components/ContentRender/utils/split-content.cjs"),s=require("./components/ContentRender/MarkdownFlowInput.cjs"),t=require("./lib/interaction-defaults.cjs");exports.MarkdownFlowEditor=e.default;exports.MarkdownFlow=l.default;exports.ScrollableMarkdown=o.default;exports.ScrollableMarkdownFlow=o.default;exports.ScrollToBottomButton=r.ScrollToBottomButton;exports.ScrollToBottomControl=n.ScrollToBottomControl;exports.useScrollToBottom=a.useScrollToBottom;exports.ContentRender=u.default;exports.IframeSandbox=c.default;exports.splitContentSegments=d.splitContentSegments;exports.MarkdownFlowInput=s.default;exports.getInteractionDefaultSelectedValues=t.getInteractionDefaultSelectedValues;exports.getInteractionDefaultValues=t.getInteractionDefaultValues;
2
2
  //# sourceMappingURL=index.cjs.map
package/dist/index.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export * from './editor';
2
- export * from './renderer';
1
+ export * from './editor.js';
2
+ export * from './renderer.js';
package/dist/index.es.js CHANGED
@@ -1,24 +1,27 @@
1
1
  import { default as e } from "./components/MarkdownFlowEditor/MarkdownFlowEditor.es.js";
2
- import { default as a } from "./components/MarkdownFlow/MarkdownFlow.es.js";
3
- import { default as f } from "./components/MarkdownFlow/ScrollableMarkdownFlow.es.js";
4
- import { ScrollToBottomButton as d } from "./components/MarkdownFlow/ScrollToBottomButton.es.js";
5
- import { useScrollToBottom as u } from "./components/MarkdownFlow/useScrollToBottom.es.js";
6
- import { default as s } from "./components/ContentRender/ContentRender.es.js";
7
- import { default as w } from "./components/ContentRender/IframeSandbox.es.js";
8
- import { splitContentSegments as S } from "./components/ContentRender/utils/split-content.es.js";
9
- import { default as k } from "./components/ContentRender/MarkdownFlowInput.es.js";
10
- import { getInteractionDefaultSelectedValues as I, getInteractionDefaultValues as M } from "./lib/interaction-defaults.es.js";
2
+ import { default as l } from "./components/MarkdownFlow/MarkdownFlow.es.js";
3
+ import { default as f, default as n } from "./components/MarkdownFlow/ScrollableMarkdownFlow.es.js";
4
+ import { ScrollToBottomButton as m } from "./components/MarkdownFlow/ScrollToBottomButton.es.js";
5
+ import { ScrollToBottomControl as p } from "./components/MarkdownFlow/ScrollToBottomControl.es.js";
6
+ import { useScrollToBottom as x } from "./components/MarkdownFlow/useScrollToBottom.es.js";
7
+ import { default as c } from "./components/ContentRender/ContentRender.es.js";
8
+ import { default as k } from "./components/ContentRender/IframeSandbox.es.js";
9
+ import { splitContentSegments as i } from "./components/ContentRender/utils/split-content.es.js";
10
+ import { default as F } from "./components/ContentRender/MarkdownFlowInput.es.js";
11
+ import { getInteractionDefaultSelectedValues as b, getInteractionDefaultValues as g } from "./lib/interaction-defaults.es.js";
11
12
  export {
12
- s as ContentRender,
13
- w as IframeSandbox,
14
- a as MarkdownFlow,
13
+ c as ContentRender,
14
+ k as IframeSandbox,
15
+ l as MarkdownFlow,
15
16
  e as MarkdownFlowEditor,
16
- k as MarkdownFlowInput,
17
- d as ScrollToBottomButton,
18
- f as ScrollableMarkdownFlow,
19
- I as getInteractionDefaultSelectedValues,
20
- M as getInteractionDefaultValues,
21
- S as splitContentSegments,
22
- u as useScrollToBottom
17
+ F as MarkdownFlowInput,
18
+ m as ScrollToBottomButton,
19
+ p as ScrollToBottomControl,
20
+ f as ScrollableMarkdown,
21
+ n as ScrollableMarkdownFlow,
22
+ b as getInteractionDefaultSelectedValues,
23
+ g as getInteractionDefaultValues,
24
+ i as splitContentSegments,
25
+ x as useScrollToBottom
23
26
  };
24
27
  //# sourceMappingURL=index.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;"}
1
+ {"version":3,"file":"index.es.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o="en-US",r=["en-US","fr-FR","zh-CN"],t={en:"en-US",fr:"fr-FR",zh:"zh-CN"},l=n=>{if(!n)return o;const e=n.split("_").join("-");if(r.includes(e))return e;const L=e.split("-")[0]?.toLowerCase();return t[L]??o};exports.DEFAULT_MARKDOWN_FLOW_LOCALE=o;exports.MARKDOWN_FLOW_LOCALES=r;exports.normalizeMarkdownFlowLocale=l;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n="en-US",t=["en-US","fr-FR","zh-CN","ar-SA","th-TH"],L={en:"en-US",fr:"fr-FR",zh:"zh-CN",ar:"ar-SA",th:"th-TH"},e=o=>{if(!o)return n;const r=o.split("_").join("-");if(t.includes(r))return r;const a=r.split("-")[0]?.toLowerCase();return L[a]??n},i=o=>{if(o)return e(o)==="ar-SA"?"rtl":"ltr"},l=o=>o?e(o):void 0;exports.DEFAULT_MARKDOWN_FLOW_LOCALE=n;exports.MARKDOWN_FLOW_LOCALES=t;exports.getMarkdownFlowDirection=i;exports.getMarkdownFlowLanguage=l;exports.normalizeMarkdownFlowLocale=e;
2
2
  //# sourceMappingURL=locale.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"locale.cjs","sources":["../../src/lib/locale.ts"],"sourcesContent":["export const DEFAULT_MARKDOWN_FLOW_LOCALE = \"en-US\";\n\nexport const MARKDOWN_FLOW_LOCALES = [\"en-US\", \"fr-FR\", \"zh-CN\"] as const;\n\nexport type MarkdownFlowLocale = (typeof MARKDOWN_FLOW_LOCALES)[number];\n\nconst localeAliasMap: Record<string, MarkdownFlowLocale> = {\n en: \"en-US\",\n fr: \"fr-FR\",\n zh: \"zh-CN\",\n};\n\nexport const normalizeMarkdownFlowLocale = (\n locale?: string | null\n): MarkdownFlowLocale => {\n if (!locale) {\n return DEFAULT_MARKDOWN_FLOW_LOCALE;\n }\n\n const normalizedLocale = locale.split(\"_\").join(\"-\");\n if (MARKDOWN_FLOW_LOCALES.includes(normalizedLocale as MarkdownFlowLocale)) {\n return normalizedLocale as MarkdownFlowLocale;\n }\n\n const baseLocale = normalizedLocale.split(\"-\")[0]?.toLowerCase();\n return localeAliasMap[baseLocale] ?? DEFAULT_MARKDOWN_FLOW_LOCALE;\n};\n"],"names":["DEFAULT_MARKDOWN_FLOW_LOCALE","MARKDOWN_FLOW_LOCALES","localeAliasMap","normalizeMarkdownFlowLocale","locale","normalizedLocale","baseLocale"],"mappings":"gFAAO,MAAMA,EAA+B,QAE/BC,EAAwB,CAAC,QAAS,QAAS,OAAO,EAIzDC,EAAqD,CACzD,GAAI,QACJ,GAAI,QACJ,GAAI,OACN,EAEaC,EACXC,GACuB,CACvB,GAAI,CAACA,EACH,OAAOJ,EAGT,MAAMK,EAAmBD,EAAO,MAAM,GAAG,EAAE,KAAK,GAAG,EACnD,GAAIH,EAAsB,SAASI,CAAsC,EACvE,OAAOA,EAGT,MAAMC,EAAaD,EAAiB,MAAM,GAAG,EAAE,CAAC,GAAG,YAAA,EACnD,OAAOH,EAAeI,CAAU,GAAKN,CACvC"}
1
+ {"version":3,"file":"locale.cjs","sources":["../../src/lib/locale.ts"],"sourcesContent":["export const DEFAULT_MARKDOWN_FLOW_LOCALE = \"en-US\";\n\nexport const MARKDOWN_FLOW_LOCALES = [\n \"en-US\",\n \"fr-FR\",\n \"zh-CN\",\n \"ar-SA\",\n \"th-TH\",\n] as const;\n\nexport type MarkdownFlowLocale = (typeof MARKDOWN_FLOW_LOCALES)[number];\n\nexport type MarkdownFlowDirection = \"ltr\" | \"rtl\";\n\nconst localeAliasMap: Record<string, MarkdownFlowLocale> = {\n en: \"en-US\",\n fr: \"fr-FR\",\n zh: \"zh-CN\",\n ar: \"ar-SA\",\n th: \"th-TH\",\n};\n\nexport const normalizeMarkdownFlowLocale = (\n locale?: string | null\n): MarkdownFlowLocale => {\n if (!locale) {\n return DEFAULT_MARKDOWN_FLOW_LOCALE;\n }\n\n const normalizedLocale = locale.split(\"_\").join(\"-\");\n if (MARKDOWN_FLOW_LOCALES.includes(normalizedLocale as MarkdownFlowLocale)) {\n return normalizedLocale as MarkdownFlowLocale;\n }\n\n const baseLocale = normalizedLocale.split(\"-\")[0]?.toLowerCase();\n return localeAliasMap[baseLocale] ?? DEFAULT_MARKDOWN_FLOW_LOCALE;\n};\n\nexport const getMarkdownFlowDirection = (\n locale?: string | null\n): MarkdownFlowDirection | undefined => {\n // An omitted locale must not override the embedding page's direction.\n if (!locale) return undefined;\n return normalizeMarkdownFlowLocale(locale) === \"ar-SA\" ? \"rtl\" : \"ltr\";\n};\n\n/** Omitted locales leave the host language in control. */\nexport const getMarkdownFlowLanguage = (\n locale?: string | null\n): MarkdownFlowLocale | undefined =>\n locale ? normalizeMarkdownFlowLocale(locale) : undefined;\n"],"names":["DEFAULT_MARKDOWN_FLOW_LOCALE","MARKDOWN_FLOW_LOCALES","localeAliasMap","normalizeMarkdownFlowLocale","locale","normalizedLocale","baseLocale","getMarkdownFlowDirection","getMarkdownFlowLanguage"],"mappings":"gFAAO,MAAMA,EAA+B,QAE/BC,EAAwB,CACnC,QACA,QACA,QACA,QACA,OACF,EAMMC,EAAqD,CACzD,GAAI,QACJ,GAAI,QACJ,GAAI,QACJ,GAAI,QACJ,GAAI,OACN,EAEaC,EACXC,GACuB,CACvB,GAAI,CAACA,EACH,OAAOJ,EAGT,MAAMK,EAAmBD,EAAO,MAAM,GAAG,EAAE,KAAK,GAAG,EACnD,GAAIH,EAAsB,SAASI,CAAsC,EACvE,OAAOA,EAGT,MAAMC,EAAaD,EAAiB,MAAM,GAAG,EAAE,CAAC,GAAG,YAAA,EACnD,OAAOH,EAAeI,CAAU,GAAKN,CACvC,EAEaO,EACXH,GACsC,CAEtC,GAAKA,EACL,OAAOD,EAA4BC,CAAM,IAAM,QAAU,MAAQ,KACnE,EAGaI,EACXJ,GAEAA,EAASD,EAA4BC,CAAM,EAAI"}
@@ -1,4 +1,8 @@
1
1
  export declare const DEFAULT_MARKDOWN_FLOW_LOCALE = "en-US";
2
- export declare const MARKDOWN_FLOW_LOCALES: readonly ["en-US", "fr-FR", "zh-CN"];
2
+ export declare const MARKDOWN_FLOW_LOCALES: readonly ["en-US", "fr-FR", "zh-CN", "ar-SA", "th-TH"];
3
3
  export type MarkdownFlowLocale = (typeof MARKDOWN_FLOW_LOCALES)[number];
4
+ export type MarkdownFlowDirection = "ltr" | "rtl";
4
5
  export declare const normalizeMarkdownFlowLocale: (locale?: string | null) => MarkdownFlowLocale;
6
+ export declare const getMarkdownFlowDirection: (locale?: string | null) => MarkdownFlowDirection | undefined;
7
+ /** Omitted locales leave the host language in control. */
8
+ export declare const getMarkdownFlowLanguage: (locale?: string | null) => MarkdownFlowLocale | undefined;
@@ -1,19 +1,32 @@
1
- const o = "en-US", t = ["en-US", "fr-FR", "zh-CN"], s = {
1
+ const t = "en-US", a = [
2
+ "en-US",
3
+ "fr-FR",
4
+ "zh-CN",
5
+ "ar-SA",
6
+ "th-TH"
7
+ ], i = {
2
8
  en: "en-US",
3
9
  fr: "fr-FR",
4
- zh: "zh-CN"
5
- }, L = (e) => {
6
- if (!e)
7
- return o;
8
- const n = e.split("_").join("-");
9
- if (t.includes(n))
10
+ zh: "zh-CN",
11
+ ar: "ar-SA",
12
+ th: "th-TH"
13
+ }, o = (r) => {
14
+ if (!r)
15
+ return t;
16
+ const n = r.split("_").join("-");
17
+ if (a.includes(n))
10
18
  return n;
11
- const r = n.split("-")[0]?.toLowerCase();
12
- return s[r] ?? o;
13
- };
19
+ const e = n.split("-")[0]?.toLowerCase();
20
+ return i[e] ?? t;
21
+ }, s = (r) => {
22
+ if (r)
23
+ return o(r) === "ar-SA" ? "rtl" : "ltr";
24
+ }, L = (r) => r ? o(r) : void 0;
14
25
  export {
15
- o as DEFAULT_MARKDOWN_FLOW_LOCALE,
16
- t as MARKDOWN_FLOW_LOCALES,
17
- L as normalizeMarkdownFlowLocale
26
+ t as DEFAULT_MARKDOWN_FLOW_LOCALE,
27
+ a as MARKDOWN_FLOW_LOCALES,
28
+ s as getMarkdownFlowDirection,
29
+ L as getMarkdownFlowLanguage,
30
+ o as normalizeMarkdownFlowLocale
18
31
  };
19
32
  //# sourceMappingURL=locale.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"locale.es.js","sources":["../../src/lib/locale.ts"],"sourcesContent":["export const DEFAULT_MARKDOWN_FLOW_LOCALE = \"en-US\";\n\nexport const MARKDOWN_FLOW_LOCALES = [\"en-US\", \"fr-FR\", \"zh-CN\"] as const;\n\nexport type MarkdownFlowLocale = (typeof MARKDOWN_FLOW_LOCALES)[number];\n\nconst localeAliasMap: Record<string, MarkdownFlowLocale> = {\n en: \"en-US\",\n fr: \"fr-FR\",\n zh: \"zh-CN\",\n};\n\nexport const normalizeMarkdownFlowLocale = (\n locale?: string | null\n): MarkdownFlowLocale => {\n if (!locale) {\n return DEFAULT_MARKDOWN_FLOW_LOCALE;\n }\n\n const normalizedLocale = locale.split(\"_\").join(\"-\");\n if (MARKDOWN_FLOW_LOCALES.includes(normalizedLocale as MarkdownFlowLocale)) {\n return normalizedLocale as MarkdownFlowLocale;\n }\n\n const baseLocale = normalizedLocale.split(\"-\")[0]?.toLowerCase();\n return localeAliasMap[baseLocale] ?? DEFAULT_MARKDOWN_FLOW_LOCALE;\n};\n"],"names":["DEFAULT_MARKDOWN_FLOW_LOCALE","MARKDOWN_FLOW_LOCALES","localeAliasMap","normalizeMarkdownFlowLocale","locale","normalizedLocale","baseLocale"],"mappings":"AAAO,MAAMA,IAA+B,SAE/BC,IAAwB,CAAC,SAAS,SAAS,OAAO,GAIzDC,IAAqD;AAAA,EACzD,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACN,GAEaC,IAA8B,CACzCC,MACuB;AACvB,MAAI,CAACA;AACH,WAAOJ;AAGT,QAAMK,IAAmBD,EAAO,MAAM,GAAG,EAAE,KAAK,GAAG;AACnD,MAAIH,EAAsB,SAASI,CAAsC;AACvE,WAAOA;AAGT,QAAMC,IAAaD,EAAiB,MAAM,GAAG,EAAE,CAAC,GAAG,YAAA;AACnD,SAAOH,EAAeI,CAAU,KAAKN;AACvC;"}
1
+ {"version":3,"file":"locale.es.js","sources":["../../src/lib/locale.ts"],"sourcesContent":["export const DEFAULT_MARKDOWN_FLOW_LOCALE = \"en-US\";\n\nexport const MARKDOWN_FLOW_LOCALES = [\n \"en-US\",\n \"fr-FR\",\n \"zh-CN\",\n \"ar-SA\",\n \"th-TH\",\n] as const;\n\nexport type MarkdownFlowLocale = (typeof MARKDOWN_FLOW_LOCALES)[number];\n\nexport type MarkdownFlowDirection = \"ltr\" | \"rtl\";\n\nconst localeAliasMap: Record<string, MarkdownFlowLocale> = {\n en: \"en-US\",\n fr: \"fr-FR\",\n zh: \"zh-CN\",\n ar: \"ar-SA\",\n th: \"th-TH\",\n};\n\nexport const normalizeMarkdownFlowLocale = (\n locale?: string | null\n): MarkdownFlowLocale => {\n if (!locale) {\n return DEFAULT_MARKDOWN_FLOW_LOCALE;\n }\n\n const normalizedLocale = locale.split(\"_\").join(\"-\");\n if (MARKDOWN_FLOW_LOCALES.includes(normalizedLocale as MarkdownFlowLocale)) {\n return normalizedLocale as MarkdownFlowLocale;\n }\n\n const baseLocale = normalizedLocale.split(\"-\")[0]?.toLowerCase();\n return localeAliasMap[baseLocale] ?? DEFAULT_MARKDOWN_FLOW_LOCALE;\n};\n\nexport const getMarkdownFlowDirection = (\n locale?: string | null\n): MarkdownFlowDirection | undefined => {\n // An omitted locale must not override the embedding page's direction.\n if (!locale) return undefined;\n return normalizeMarkdownFlowLocale(locale) === \"ar-SA\" ? \"rtl\" : \"ltr\";\n};\n\n/** Omitted locales leave the host language in control. */\nexport const getMarkdownFlowLanguage = (\n locale?: string | null\n): MarkdownFlowLocale | undefined =>\n locale ? normalizeMarkdownFlowLocale(locale) : undefined;\n"],"names":["DEFAULT_MARKDOWN_FLOW_LOCALE","MARKDOWN_FLOW_LOCALES","localeAliasMap","normalizeMarkdownFlowLocale","locale","normalizedLocale","baseLocale","getMarkdownFlowDirection","getMarkdownFlowLanguage"],"mappings":"AAAO,MAAMA,IAA+B,SAE/BC,IAAwB;AAAA,EACnC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAMMC,IAAqD;AAAA,EACzD,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACN,GAEaC,IAA8B,CACzCC,MACuB;AACvB,MAAI,CAACA;AACH,WAAOJ;AAGT,QAAMK,IAAmBD,EAAO,MAAM,GAAG,EAAE,KAAK,GAAG;AACnD,MAAIH,EAAsB,SAASI,CAAsC;AACvE,WAAOA;AAGT,QAAMC,IAAaD,EAAiB,MAAM,GAAG,EAAE,CAAC,GAAG,YAAA;AACnD,SAAOH,EAAeI,CAAU,KAAKN;AACvC,GAEaO,IAA2B,CACtCH,MACsC;AAEtC,MAAKA;AACL,WAAOD,EAA4BC,CAAM,MAAM,UAAU,QAAQ;AACnE,GAGaI,IAA0B,CACrCJ,MAEAA,IAASD,EAA4BC,CAAM,IAAI;"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("react"),i=(n,t)=>{const[o,c]=u.useState();return u.useEffect(()=>{const r=n.current;if(t!==void 0||!r)return;const a=()=>{c(r.closest("[lang]")?.getAttribute("lang")??void 0)};a();const s=new MutationObserver(a);for(let e=r;e;e=e.parentElement)s.observe(e,{attributes:!0,attributeFilter:["lang"]});return()=>s.disconnect()},[n,t]),t??o};exports.useDetachedLanguage=i;
2
+ //# sourceMappingURL=useDetachedLanguage.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDetachedLanguage.cjs","sources":["../../src/lib/useDetachedLanguage.ts"],"sourcesContent":["import { useEffect, useState, type RefObject } from \"react\";\n\n/** Carry the host language across portal and iframe DOM boundaries. */\nexport const useDetachedLanguage = (\n hostRef: RefObject<HTMLElement | null>,\n language?: string\n) => {\n const [inheritedLanguage, setInheritedLanguage] = useState<string>();\n useEffect(() => {\n const host = hostRef.current;\n if (language !== undefined || !host) return;\n const updateLanguage = () => {\n setInheritedLanguage(\n host.closest(\"[lang]\")?.getAttribute(\"lang\") ?? undefined\n );\n };\n updateLanguage();\n const observer = new MutationObserver(updateLanguage);\n for (\n let ancestor: HTMLElement | null = host;\n ancestor;\n ancestor = ancestor.parentElement\n ) {\n observer.observe(ancestor, {\n attributes: true,\n attributeFilter: [\"lang\"],\n });\n }\n return () => observer.disconnect();\n }, [hostRef, language]);\n return language ?? inheritedLanguage;\n};\n"],"names":["useDetachedLanguage","hostRef","language","inheritedLanguage","setInheritedLanguage","useState","useEffect","host","updateLanguage","observer","ancestor"],"mappings":"yGAGaA,EAAsB,CACjCC,EACAC,IACG,CACH,KAAM,CAACC,EAAmBC,CAAoB,EAAIC,WAAA,EAClDC,OAAAA,EAAAA,UAAU,IAAM,CACd,MAAMC,EAAON,EAAQ,QACrB,GAAIC,IAAa,QAAa,CAACK,EAAM,OACrC,MAAMC,EAAiB,IAAM,CAC3BJ,EACEG,EAAK,QAAQ,QAAQ,GAAG,aAAa,MAAM,GAAK,MAAA,CAEpD,EACAC,EAAA,EACA,MAAMC,EAAW,IAAI,iBAAiBD,CAAc,EACpD,QACME,EAA+BH,EACnCG,EACAA,EAAWA,EAAS,cAEpBD,EAAS,QAAQC,EAAU,CACzB,WAAY,GACZ,gBAAiB,CAAC,MAAM,CAAA,CACzB,EAEH,MAAO,IAAMD,EAAS,WAAA,CACxB,EAAG,CAACR,EAASC,CAAQ,CAAC,EACfA,GAAYC,CACrB"}
@@ -0,0 +1,3 @@
1
+ import { RefObject } from 'react';
2
+ /** Carry the host language across portal and iframe DOM boundaries. */
3
+ export declare const useDetachedLanguage: (hostRef: RefObject<HTMLElement | null>, language?: string) => string | undefined;
@@ -0,0 +1,25 @@
1
+ import { useState as i, useEffect as c } from "react";
2
+ const d = (n, t) => {
3
+ const [a, u] = i();
4
+ return c(() => {
5
+ const r = n.current;
6
+ if (t !== void 0 || !r) return;
7
+ const o = () => {
8
+ u(
9
+ r.closest("[lang]")?.getAttribute("lang") ?? void 0
10
+ );
11
+ };
12
+ o();
13
+ const s = new MutationObserver(o);
14
+ for (let e = r; e; e = e.parentElement)
15
+ s.observe(e, {
16
+ attributes: !0,
17
+ attributeFilter: ["lang"]
18
+ });
19
+ return () => s.disconnect();
20
+ }, [n, t]), t ?? a;
21
+ };
22
+ export {
23
+ d as useDetachedLanguage
24
+ };
25
+ //# sourceMappingURL=useDetachedLanguage.es.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDetachedLanguage.es.js","sources":["../../src/lib/useDetachedLanguage.ts"],"sourcesContent":["import { useEffect, useState, type RefObject } from \"react\";\n\n/** Carry the host language across portal and iframe DOM boundaries. */\nexport const useDetachedLanguage = (\n hostRef: RefObject<HTMLElement | null>,\n language?: string\n) => {\n const [inheritedLanguage, setInheritedLanguage] = useState<string>();\n useEffect(() => {\n const host = hostRef.current;\n if (language !== undefined || !host) return;\n const updateLanguage = () => {\n setInheritedLanguage(\n host.closest(\"[lang]\")?.getAttribute(\"lang\") ?? undefined\n );\n };\n updateLanguage();\n const observer = new MutationObserver(updateLanguage);\n for (\n let ancestor: HTMLElement | null = host;\n ancestor;\n ancestor = ancestor.parentElement\n ) {\n observer.observe(ancestor, {\n attributes: true,\n attributeFilter: [\"lang\"],\n });\n }\n return () => observer.disconnect();\n }, [hostRef, language]);\n return language ?? inheritedLanguage;\n};\n"],"names":["useDetachedLanguage","hostRef","language","inheritedLanguage","setInheritedLanguage","useState","useEffect","host","updateLanguage","observer","ancestor"],"mappings":";AAGO,MAAMA,IAAsB,CACjCC,GACAC,MACG;AACH,QAAM,CAACC,GAAmBC,CAAoB,IAAIC,EAAA;AAClD,SAAAC,EAAU,MAAM;AACd,UAAMC,IAAON,EAAQ;AACrB,QAAIC,MAAa,UAAa,CAACK,EAAM;AACrC,UAAMC,IAAiB,MAAM;AAC3B,MAAAJ;AAAA,QACEG,EAAK,QAAQ,QAAQ,GAAG,aAAa,MAAM,KAAK;AAAA,MAAA;AAAA,IAEpD;AACA,IAAAC,EAAA;AACA,UAAMC,IAAW,IAAI,iBAAiBD,CAAc;AACpD,aACME,IAA+BH,GACnCG,GACAA,IAAWA,EAAS;AAEpB,MAAAD,EAAS,QAAQC,GAAU;AAAA,QACzB,YAAY;AAAA,QACZ,iBAAiB,CAAC,MAAM;AAAA,MAAA,CACzB;AAEH,WAAO,MAAMD,EAAS,WAAA;AAAA,EACxB,GAAG,CAACR,GAASC,CAAQ,CAAC,GACfA,KAAYC;AACrB;"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("react"),w=(n,l)=>{const[v,b]=u.useState(l==="rtl"?"rtl":"ltr"),i=u.useCallback(()=>{const e=n.current;return e?.ownerDocument.defaultView?.getComputedStyle(e).direction==="rtl"?"rtl":"ltr"},[n]);return u.useLayoutEffect(()=>{const e=n.current,r=e?.ownerDocument.defaultView;if(!e||!r)return;let s=null;const c=new r.MutationObserver(()=>o()),o=()=>{b(i());const t=e.closest("[dir]"),d=t?.getAttribute("dir")?.toLowerCase()==="auto"?t:null;d!==s&&(c.disconnect(),s=d,s&&c.observe(s,{childList:!0,characterData:!0,subtree:!0}))};o();const a=new r.MutationObserver(o);for(let t=e;t;t=t.parentElement)a.observe(t,{attributes:!0,attributeFilter:["dir","class","style"]});return r.addEventListener("resize",o),()=>{a.disconnect(),c.disconnect(),r.removeEventListener("resize",o)}},[n,l,i]),{resolvedDirection:v,readDirection:i}};exports.useResolvedDirection=w;
2
+ //# sourceMappingURL=useResolvedDirection.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useResolvedDirection.cjs","sources":["../../src/lib/useResolvedDirection.ts"],"sourcesContent":["import { useCallback, useLayoutEffect, useState, type RefObject } from \"react\";\n\n/** Observe the host's effective direction for keyboard and detached UI surfaces. */\nexport const useResolvedDirection = (\n hostRef: RefObject<HTMLElement | null>,\n direction?: string\n) => {\n const [resolvedDirection, setResolvedDirection] = useState<\"ltr\" | \"rtl\">(\n direction === \"rtl\" ? \"rtl\" : \"ltr\"\n );\n const readDirection = useCallback(() => {\n const root = hostRef.current;\n return root?.ownerDocument.defaultView?.getComputedStyle(root).direction ===\n \"rtl\"\n ? \"rtl\"\n : \"ltr\";\n }, [hostRef]);\n\n useLayoutEffect(() => {\n const root = hostRef.current;\n const view = root?.ownerDocument.defaultView;\n if (!root || !view) return;\n let autoHost: Element | null = null;\n const textObserver = new view.MutationObserver(() => updateDirection());\n const updateDirection = () => {\n setResolvedDirection(readDirection());\n const owner = root.closest(\"[dir]\");\n const nextAutoHost =\n owner?.getAttribute(\"dir\")?.toLowerCase() === \"auto\" ? owner : null;\n if (nextAutoHost === autoHost) return;\n textObserver.disconnect();\n autoHost = nextAutoHost;\n if (autoHost) {\n textObserver.observe(autoHost, {\n childList: true,\n characterData: true,\n subtree: true,\n });\n }\n };\n updateDirection();\n const observer = new view.MutationObserver(updateDirection);\n for (\n let ancestor: HTMLElement | null = root;\n ancestor;\n ancestor = ancestor.parentElement\n ) {\n observer.observe(ancestor, {\n attributes: true,\n attributeFilter: [\"dir\", \"class\", \"style\"],\n });\n }\n view.addEventListener(\"resize\", updateDirection);\n return () => {\n observer.disconnect();\n textObserver.disconnect();\n view.removeEventListener(\"resize\", updateDirection);\n };\n }, [hostRef, direction, readDirection]);\n\n return { resolvedDirection, readDirection };\n};\n"],"names":["useResolvedDirection","hostRef","direction","resolvedDirection","setResolvedDirection","useState","readDirection","useCallback","root","useLayoutEffect","view","autoHost","textObserver","updateDirection","owner","nextAutoHost","observer","ancestor"],"mappings":"yGAGaA,EAAuB,CAClCC,EACAC,IACG,CACH,KAAM,CAACC,EAAmBC,CAAoB,EAAIC,EAAAA,SAChDH,IAAc,MAAQ,MAAQ,KAAA,EAE1BI,EAAgBC,EAAAA,YAAY,IAAM,CACtC,MAAMC,EAAOP,EAAQ,QACrB,OAAOO,GAAM,cAAc,aAAa,iBAAiBA,CAAI,EAAE,YAC7D,MACE,MACA,KACN,EAAG,CAACP,CAAO,CAAC,EAEZQ,OAAAA,EAAAA,gBAAgB,IAAM,CACpB,MAAMD,EAAOP,EAAQ,QACfS,EAAOF,GAAM,cAAc,YACjC,GAAI,CAACA,GAAQ,CAACE,EAAM,OACpB,IAAIC,EAA2B,KAC/B,MAAMC,EAAe,IAAIF,EAAK,iBAAiB,IAAMG,GAAiB,EAChEA,EAAkB,IAAM,CAC5BT,EAAqBE,GAAe,EACpC,MAAMQ,EAAQN,EAAK,QAAQ,OAAO,EAC5BO,EACJD,GAAO,aAAa,KAAK,GAAG,YAAA,IAAkB,OAASA,EAAQ,KAC7DC,IAAiBJ,IACrBC,EAAa,WAAA,EACbD,EAAWI,EACPJ,GACFC,EAAa,QAAQD,EAAU,CAC7B,UAAW,GACX,cAAe,GACf,QAAS,EAAA,CACV,EAEL,EACAE,EAAA,EACA,MAAMG,EAAW,IAAIN,EAAK,iBAAiBG,CAAe,EAC1D,QACMI,EAA+BT,EACnCS,EACAA,EAAWA,EAAS,cAEpBD,EAAS,QAAQC,EAAU,CACzB,WAAY,GACZ,gBAAiB,CAAC,MAAO,QAAS,OAAO,CAAA,CAC1C,EAEH,OAAAP,EAAK,iBAAiB,SAAUG,CAAe,EACxC,IAAM,CACXG,EAAS,WAAA,EACTJ,EAAa,WAAA,EACbF,EAAK,oBAAoB,SAAUG,CAAe,CACpD,CACF,EAAG,CAACZ,EAASC,EAAWI,CAAa,CAAC,EAE/B,CAAE,kBAAAH,EAAmB,cAAAG,CAAA,CAC9B"}
@@ -0,0 +1,6 @@
1
+ import { RefObject } from 'react';
2
+ /** Observe the host's effective direction for keyboard and detached UI surfaces. */
3
+ export declare const useResolvedDirection: (hostRef: RefObject<HTMLElement | null>, direction?: string) => {
4
+ resolvedDirection: "ltr" | "rtl";
5
+ readDirection: () => "ltr" | "rtl";
6
+ };
@@ -0,0 +1,37 @@
1
+ import { useState as b, useCallback as w, useLayoutEffect as D } from "react";
2
+ const f = (n, u) => {
3
+ const [d, v] = b(
4
+ u === "rtl" ? "rtl" : "ltr"
5
+ ), i = w(() => {
6
+ const e = n.current;
7
+ return e?.ownerDocument.defaultView?.getComputedStyle(e).direction === "rtl" ? "rtl" : "ltr";
8
+ }, [n]);
9
+ return D(() => {
10
+ const e = n.current, r = e?.ownerDocument.defaultView;
11
+ if (!e || !r) return;
12
+ let s = null;
13
+ const c = new r.MutationObserver(() => o()), o = () => {
14
+ v(i());
15
+ const t = e.closest("[dir]"), a = t?.getAttribute("dir")?.toLowerCase() === "auto" ? t : null;
16
+ a !== s && (c.disconnect(), s = a, s && c.observe(s, {
17
+ childList: !0,
18
+ characterData: !0,
19
+ subtree: !0
20
+ }));
21
+ };
22
+ o();
23
+ const l = new r.MutationObserver(o);
24
+ for (let t = e; t; t = t.parentElement)
25
+ l.observe(t, {
26
+ attributes: !0,
27
+ attributeFilter: ["dir", "class", "style"]
28
+ });
29
+ return r.addEventListener("resize", o), () => {
30
+ l.disconnect(), c.disconnect(), r.removeEventListener("resize", o);
31
+ };
32
+ }, [n, u, i]), { resolvedDirection: d, readDirection: i };
33
+ };
34
+ export {
35
+ f as useResolvedDirection
36
+ };
37
+ //# sourceMappingURL=useResolvedDirection.es.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useResolvedDirection.es.js","sources":["../../src/lib/useResolvedDirection.ts"],"sourcesContent":["import { useCallback, useLayoutEffect, useState, type RefObject } from \"react\";\n\n/** Observe the host's effective direction for keyboard and detached UI surfaces. */\nexport const useResolvedDirection = (\n hostRef: RefObject<HTMLElement | null>,\n direction?: string\n) => {\n const [resolvedDirection, setResolvedDirection] = useState<\"ltr\" | \"rtl\">(\n direction === \"rtl\" ? \"rtl\" : \"ltr\"\n );\n const readDirection = useCallback(() => {\n const root = hostRef.current;\n return root?.ownerDocument.defaultView?.getComputedStyle(root).direction ===\n \"rtl\"\n ? \"rtl\"\n : \"ltr\";\n }, [hostRef]);\n\n useLayoutEffect(() => {\n const root = hostRef.current;\n const view = root?.ownerDocument.defaultView;\n if (!root || !view) return;\n let autoHost: Element | null = null;\n const textObserver = new view.MutationObserver(() => updateDirection());\n const updateDirection = () => {\n setResolvedDirection(readDirection());\n const owner = root.closest(\"[dir]\");\n const nextAutoHost =\n owner?.getAttribute(\"dir\")?.toLowerCase() === \"auto\" ? owner : null;\n if (nextAutoHost === autoHost) return;\n textObserver.disconnect();\n autoHost = nextAutoHost;\n if (autoHost) {\n textObserver.observe(autoHost, {\n childList: true,\n characterData: true,\n subtree: true,\n });\n }\n };\n updateDirection();\n const observer = new view.MutationObserver(updateDirection);\n for (\n let ancestor: HTMLElement | null = root;\n ancestor;\n ancestor = ancestor.parentElement\n ) {\n observer.observe(ancestor, {\n attributes: true,\n attributeFilter: [\"dir\", \"class\", \"style\"],\n });\n }\n view.addEventListener(\"resize\", updateDirection);\n return () => {\n observer.disconnect();\n textObserver.disconnect();\n view.removeEventListener(\"resize\", updateDirection);\n };\n }, [hostRef, direction, readDirection]);\n\n return { resolvedDirection, readDirection };\n};\n"],"names":["useResolvedDirection","hostRef","direction","resolvedDirection","setResolvedDirection","useState","readDirection","useCallback","root","useLayoutEffect","view","autoHost","textObserver","updateDirection","owner","nextAutoHost","observer","ancestor"],"mappings":";AAGO,MAAMA,IAAuB,CAClCC,GACAC,MACG;AACH,QAAM,CAACC,GAAmBC,CAAoB,IAAIC;AAAA,IAChDH,MAAc,QAAQ,QAAQ;AAAA,EAAA,GAE1BI,IAAgBC,EAAY,MAAM;AACtC,UAAMC,IAAOP,EAAQ;AACrB,WAAOO,GAAM,cAAc,aAAa,iBAAiBA,CAAI,EAAE,cAC7D,QACE,QACA;AAAA,EACN,GAAG,CAACP,CAAO,CAAC;AAEZ,SAAAQ,EAAgB,MAAM;AACpB,UAAMD,IAAOP,EAAQ,SACfS,IAAOF,GAAM,cAAc;AACjC,QAAI,CAACA,KAAQ,CAACE,EAAM;AACpB,QAAIC,IAA2B;AAC/B,UAAMC,IAAe,IAAIF,EAAK,iBAAiB,MAAMG,GAAiB,GAChEA,IAAkB,MAAM;AAC5B,MAAAT,EAAqBE,GAAe;AACpC,YAAMQ,IAAQN,EAAK,QAAQ,OAAO,GAC5BO,IACJD,GAAO,aAAa,KAAK,GAAG,YAAA,MAAkB,SAASA,IAAQ;AACjE,MAAIC,MAAiBJ,MACrBC,EAAa,WAAA,GACbD,IAAWI,GACPJ,KACFC,EAAa,QAAQD,GAAU;AAAA,QAC7B,WAAW;AAAA,QACX,eAAe;AAAA,QACf,SAAS;AAAA,MAAA,CACV;AAAA,IAEL;AACA,IAAAE,EAAA;AACA,UAAMG,IAAW,IAAIN,EAAK,iBAAiBG,CAAe;AAC1D,aACMI,IAA+BT,GACnCS,GACAA,IAAWA,EAAS;AAEpB,MAAAD,EAAS,QAAQC,GAAU;AAAA,QACzB,YAAY;AAAA,QACZ,iBAAiB,CAAC,OAAO,SAAS,OAAO;AAAA,MAAA,CAC1C;AAEH,WAAAP,EAAK,iBAAiB,UAAUG,CAAe,GACxC,MAAM;AACX,MAAAG,EAAS,WAAA,GACTJ,EAAa,WAAA,GACbF,EAAK,oBAAoB,UAAUG,CAAe;AAAA,IACpD;AAAA,EACF,GAAG,CAACZ,GAASC,GAAWI,CAAa,CAAC,GAE/B,EAAE,mBAAAH,GAAmB,eAAAG,EAAA;AAC9B;"}