@bendyline/squisq-editor-react 1.5.1 → 1.5.2

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 (401) hide show
  1. package/dist/index.d.ts +1991 -90
  2. package/dist/index.js +17088 -82
  3. package/dist/index.js.map +1 -1
  4. package/package.json +4 -4
  5. package/dist/DocumentSettingsDialog.d.ts +0 -26
  6. package/dist/DocumentSettingsDialog.d.ts.map +0 -1
  7. package/dist/DocumentSettingsDialog.js +0 -115
  8. package/dist/DocumentSettingsDialog.js.map +0 -1
  9. package/dist/DropZoneOverlay.d.ts +0 -24
  10. package/dist/DropZoneOverlay.d.ts.map +0 -1
  11. package/dist/DropZoneOverlay.js +0 -53
  12. package/dist/DropZoneOverlay.js.map +0 -1
  13. package/dist/EditorContext.d.ts +0 -391
  14. package/dist/EditorContext.d.ts.map +0 -1
  15. package/dist/EditorContext.js +0 -471
  16. package/dist/EditorContext.js.map +0 -1
  17. package/dist/EditorShell.d.ts +0 -328
  18. package/dist/EditorShell.d.ts.map +0 -1
  19. package/dist/EditorShell.js +0 -290
  20. package/dist/EditorShell.js.map +0 -1
  21. package/dist/EmojiPicker.d.ts +0 -50
  22. package/dist/EmojiPicker.d.ts.map +0 -1
  23. package/dist/EmojiPicker.js +0 -182
  24. package/dist/EmojiPicker.js.map +0 -1
  25. package/dist/ImageEditor.d.ts +0 -68
  26. package/dist/ImageEditor.d.ts.map +0 -1
  27. package/dist/ImageEditor.js +0 -166
  28. package/dist/ImageEditor.js.map +0 -1
  29. package/dist/ImageNodeView.d.ts +0 -27
  30. package/dist/ImageNodeView.d.ts.map +0 -1
  31. package/dist/ImageNodeView.js +0 -215
  32. package/dist/ImageNodeView.js.map +0 -1
  33. package/dist/ImageViewer.d.ts +0 -26
  34. package/dist/ImageViewer.d.ts.map +0 -1
  35. package/dist/ImageViewer.js +0 -119
  36. package/dist/ImageViewer.js.map +0 -1
  37. package/dist/InlineIcon.d.ts +0 -17
  38. package/dist/InlineIcon.d.ts.map +0 -1
  39. package/dist/InlineIcon.js +0 -72
  40. package/dist/InlineIcon.js.map +0 -1
  41. package/dist/InlinePreviewGutter.d.ts +0 -52
  42. package/dist/InlinePreviewGutter.d.ts.map +0 -1
  43. package/dist/InlinePreviewGutter.js +0 -397
  44. package/dist/InlinePreviewGutter.js.map +0 -1
  45. package/dist/LinkDialog.d.ts +0 -43
  46. package/dist/LinkDialog.d.ts.map +0 -1
  47. package/dist/LinkDialog.js +0 -102
  48. package/dist/LinkDialog.js.map +0 -1
  49. package/dist/MediaBin.d.ts +0 -29
  50. package/dist/MediaBin.d.ts.map +0 -1
  51. package/dist/MediaBin.js +0 -166
  52. package/dist/MediaBin.js.map +0 -1
  53. package/dist/MentionExtension.d.ts +0 -22
  54. package/dist/MentionExtension.d.ts.map +0 -1
  55. package/dist/MentionExtension.js +0 -245
  56. package/dist/MentionExtension.js.map +0 -1
  57. package/dist/OutlinePanel.d.ts +0 -17
  58. package/dist/OutlinePanel.d.ts.map +0 -1
  59. package/dist/OutlinePanel.js +0 -167
  60. package/dist/OutlinePanel.js.map +0 -1
  61. package/dist/PlainHtmlPreview.d.ts +0 -50
  62. package/dist/PlainHtmlPreview.d.ts.map +0 -1
  63. package/dist/PlainHtmlPreview.js +0 -155
  64. package/dist/PlainHtmlPreview.js.map +0 -1
  65. package/dist/PreviewControls.d.ts +0 -55
  66. package/dist/PreviewControls.d.ts.map +0 -1
  67. package/dist/PreviewControls.js +0 -277
  68. package/dist/PreviewControls.js.map +0 -1
  69. package/dist/PreviewPanel.d.ts +0 -29
  70. package/dist/PreviewPanel.d.ts.map +0 -1
  71. package/dist/PreviewPanel.js +0 -94
  72. package/dist/PreviewPanel.js.map +0 -1
  73. package/dist/RawEditor.d.ts +0 -32
  74. package/dist/RawEditor.d.ts.map +0 -1
  75. package/dist/RawEditor.js +0 -440
  76. package/dist/RawEditor.js.map +0 -1
  77. package/dist/RecorderEntry.d.ts +0 -24
  78. package/dist/RecorderEntry.d.ts.map +0 -1
  79. package/dist/RecorderEntry.js +0 -139
  80. package/dist/RecorderEntry.js.map +0 -1
  81. package/dist/StatusBar.d.ts +0 -15
  82. package/dist/StatusBar.d.ts.map +0 -1
  83. package/dist/StatusBar.js +0 -24
  84. package/dist/StatusBar.js.map +0 -1
  85. package/dist/TemplateAnnotation.d.ts +0 -20
  86. package/dist/TemplateAnnotation.d.ts.map +0 -1
  87. package/dist/TemplateAnnotation.js +0 -97
  88. package/dist/TemplateAnnotation.js.map +0 -1
  89. package/dist/TemplatePicker.d.ts +0 -53
  90. package/dist/TemplatePicker.d.ts.map +0 -1
  91. package/dist/TemplatePicker.js +0 -388
  92. package/dist/TemplatePicker.js.map +0 -1
  93. package/dist/ThemeCustomizerPanel.d.ts +0 -32
  94. package/dist/ThemeCustomizerPanel.d.ts.map +0 -1
  95. package/dist/ThemeCustomizerPanel.js +0 -256
  96. package/dist/ThemeCustomizerPanel.js.map +0 -1
  97. package/dist/ThemePicker.d.ts +0 -33
  98. package/dist/ThemePicker.d.ts.map +0 -1
  99. package/dist/ThemePicker.js +0 -148
  100. package/dist/ThemePicker.js.map +0 -1
  101. package/dist/Toolbar.d.ts +0 -36
  102. package/dist/Toolbar.d.ts.map +0 -1
  103. package/dist/Toolbar.js +0 -1001
  104. package/dist/Toolbar.js.map +0 -1
  105. package/dist/Tooltip.d.ts +0 -10
  106. package/dist/Tooltip.d.ts.map +0 -1
  107. package/dist/Tooltip.js +0 -104
  108. package/dist/Tooltip.js.map +0 -1
  109. package/dist/VersionHistoryPanel.d.ts +0 -14
  110. package/dist/VersionHistoryPanel.d.ts.map +0 -1
  111. package/dist/VersionHistoryPanel.js +0 -147
  112. package/dist/VersionHistoryPanel.js.map +0 -1
  113. package/dist/ViewMenuPanel.d.ts +0 -13
  114. package/dist/ViewMenuPanel.d.ts.map +0 -1
  115. package/dist/ViewMenuPanel.js +0 -58
  116. package/dist/ViewMenuPanel.js.map +0 -1
  117. package/dist/ViewSwitcher.d.ts +0 -14
  118. package/dist/ViewSwitcher.d.ts.map +0 -1
  119. package/dist/ViewSwitcher.js +0 -26
  120. package/dist/ViewSwitcher.js.map +0 -1
  121. package/dist/WysiwygEditor.d.ts +0 -39
  122. package/dist/WysiwygEditor.d.ts.map +0 -1
  123. package/dist/WysiwygEditor.js +0 -537
  124. package/dist/WysiwygEditor.js.map +0 -1
  125. package/dist/__tests__/detectMarkdown.test.d.ts +0 -2
  126. package/dist/__tests__/detectMarkdown.test.d.ts.map +0 -1
  127. package/dist/__tests__/detectMarkdown.test.js +0 -55
  128. package/dist/__tests__/detectMarkdown.test.js.map +0 -1
  129. package/dist/__tests__/documentSettingsDialog.test.d.ts +0 -2
  130. package/dist/__tests__/documentSettingsDialog.test.d.ts.map +0 -1
  131. package/dist/__tests__/documentSettingsDialog.test.js +0 -132
  132. package/dist/__tests__/documentSettingsDialog.test.js.map +0 -1
  133. package/dist/__tests__/emojiPicker.test.d.ts +0 -2
  134. package/dist/__tests__/emojiPicker.test.d.ts.map +0 -1
  135. package/dist/__tests__/emojiPicker.test.js +0 -111
  136. package/dist/__tests__/emojiPicker.test.js.map +0 -1
  137. package/dist/__tests__/fileKind.test.d.ts +0 -2
  138. package/dist/__tests__/fileKind.test.d.ts.map +0 -1
  139. package/dist/__tests__/fileKind.test.js +0 -94
  140. package/dist/__tests__/fileKind.test.js.map +0 -1
  141. package/dist/__tests__/imageEditAffordance.test.d.ts +0 -2
  142. package/dist/__tests__/imageEditAffordance.test.d.ts.map +0 -1
  143. package/dist/__tests__/imageEditAffordance.test.js +0 -188
  144. package/dist/__tests__/imageEditAffordance.test.js.map +0 -1
  145. package/dist/__tests__/imageEditorShell.test.d.ts +0 -2
  146. package/dist/__tests__/imageEditorShell.test.d.ts.map +0 -1
  147. package/dist/__tests__/imageEditorShell.test.js +0 -52
  148. package/dist/__tests__/imageEditorShell.test.js.map +0 -1
  149. package/dist/__tests__/imageEditorState.test.d.ts +0 -3
  150. package/dist/__tests__/imageEditorState.test.d.ts.map +0 -1
  151. package/dist/__tests__/imageEditorState.test.js +0 -148
  152. package/dist/__tests__/imageEditorState.test.js.map +0 -1
  153. package/dist/__tests__/inlinePreviewGutter.test.d.ts +0 -2
  154. package/dist/__tests__/inlinePreviewGutter.test.d.ts.map +0 -1
  155. package/dist/__tests__/inlinePreviewGutter.test.js +0 -51
  156. package/dist/__tests__/inlinePreviewGutter.test.js.map +0 -1
  157. package/dist/__tests__/inlinePreviewGutterAllBlocks.test.d.ts +0 -2
  158. package/dist/__tests__/inlinePreviewGutterAllBlocks.test.d.ts.map +0 -1
  159. package/dist/__tests__/inlinePreviewGutterAllBlocks.test.js +0 -63
  160. package/dist/__tests__/inlinePreviewGutterAllBlocks.test.js.map +0 -1
  161. package/dist/__tests__/jsonEditor.test.d.ts +0 -2
  162. package/dist/__tests__/jsonEditor.test.d.ts.map +0 -1
  163. package/dist/__tests__/jsonEditor.test.js +0 -134
  164. package/dist/__tests__/jsonEditor.test.js.map +0 -1
  165. package/dist/__tests__/layersPanel.test.d.ts +0 -2
  166. package/dist/__tests__/layersPanel.test.d.ts.map +0 -1
  167. package/dist/__tests__/layersPanel.test.js +0 -84
  168. package/dist/__tests__/layersPanel.test.js.map +0 -1
  169. package/dist/__tests__/linkDialogDocPicker.test.d.ts +0 -7
  170. package/dist/__tests__/linkDialogDocPicker.test.d.ts.map +0 -1
  171. package/dist/__tests__/linkDialogDocPicker.test.js +0 -75
  172. package/dist/__tests__/linkDialogDocPicker.test.js.map +0 -1
  173. package/dist/__tests__/mediaAttachmentFlow.test.d.ts +0 -2
  174. package/dist/__tests__/mediaAttachmentFlow.test.d.ts.map +0 -1
  175. package/dist/__tests__/mediaAttachmentFlow.test.js +0 -99
  176. package/dist/__tests__/mediaAttachmentFlow.test.js.map +0 -1
  177. package/dist/__tests__/outlinePanel.test.d.ts +0 -2
  178. package/dist/__tests__/outlinePanel.test.d.ts.map +0 -1
  179. package/dist/__tests__/outlinePanel.test.js +0 -68
  180. package/dist/__tests__/outlinePanel.test.js.map +0 -1
  181. package/dist/__tests__/plainHtmlPreview.test.d.ts +0 -2
  182. package/dist/__tests__/plainHtmlPreview.test.d.ts.map +0 -1
  183. package/dist/__tests__/plainHtmlPreview.test.js +0 -87
  184. package/dist/__tests__/plainHtmlPreview.test.js.map +0 -1
  185. package/dist/__tests__/propertiesPanel.test.d.ts +0 -2
  186. package/dist/__tests__/propertiesPanel.test.d.ts.map +0 -1
  187. package/dist/__tests__/propertiesPanel.test.js +0 -64
  188. package/dist/__tests__/propertiesPanel.test.js.map +0 -1
  189. package/dist/__tests__/recorderFormats.test.d.ts +0 -2
  190. package/dist/__tests__/recorderFormats.test.d.ts.map +0 -1
  191. package/dist/__tests__/recorderFormats.test.js +0 -121
  192. package/dist/__tests__/recorderFormats.test.js.map +0 -1
  193. package/dist/__tests__/recorderTimingJson.test.d.ts +0 -2
  194. package/dist/__tests__/recorderTimingJson.test.d.ts.map +0 -1
  195. package/dist/__tests__/recorderTimingJson.test.js +0 -37
  196. package/dist/__tests__/recorderTimingJson.test.js.map +0 -1
  197. package/dist/__tests__/templateAnnotationRoundTrip.test.d.ts +0 -2
  198. package/dist/__tests__/templateAnnotationRoundTrip.test.d.ts.map +0 -1
  199. package/dist/__tests__/templateAnnotationRoundTrip.test.js +0 -31
  200. package/dist/__tests__/templateAnnotationRoundTrip.test.js.map +0 -1
  201. package/dist/__tests__/tiptapBridge.test.d.ts +0 -2
  202. package/dist/__tests__/tiptapBridge.test.d.ts.map +0 -1
  203. package/dist/__tests__/tiptapBridge.test.js +0 -303
  204. package/dist/__tests__/tiptapBridge.test.js.map +0 -1
  205. package/dist/__tests__/tiptapImageRoundTrip.test.d.ts +0 -2
  206. package/dist/__tests__/tiptapImageRoundTrip.test.d.ts.map +0 -1
  207. package/dist/__tests__/tiptapImageRoundTrip.test.js +0 -68
  208. package/dist/__tests__/tiptapImageRoundTrip.test.js.map +0 -1
  209. package/dist/__tests__/useImageEditor.test.d.ts +0 -2
  210. package/dist/__tests__/useImageEditor.test.d.ts.map +0 -1
  211. package/dist/__tests__/useImageEditor.test.js +0 -131
  212. package/dist/__tests__/useImageEditor.test.js.map +0 -1
  213. package/dist/__tests__/useMediaRecorder.test.d.ts +0 -2
  214. package/dist/__tests__/useMediaRecorder.test.d.ts.map +0 -1
  215. package/dist/__tests__/useMediaRecorder.test.js +0 -153
  216. package/dist/__tests__/useMediaRecorder.test.js.map +0 -1
  217. package/dist/__tests__/versionHistory.test.d.ts +0 -2
  218. package/dist/__tests__/versionHistory.test.d.ts.map +0 -1
  219. package/dist/__tests__/versionHistory.test.js +0 -124
  220. package/dist/__tests__/versionHistory.test.js.map +0 -1
  221. package/dist/blockSlice.d.ts +0 -24
  222. package/dist/blockSlice.d.ts.map +0 -1
  223. package/dist/blockSlice.js +0 -63
  224. package/dist/blockSlice.js.map +0 -1
  225. package/dist/buildPreviewDoc.d.ts +0 -22
  226. package/dist/buildPreviewDoc.d.ts.map +0 -1
  227. package/dist/buildPreviewDoc.js +0 -262
  228. package/dist/buildPreviewDoc.js.map +0 -1
  229. package/dist/detectMarkdown.d.ts +0 -20
  230. package/dist/detectMarkdown.d.ts.map +0 -1
  231. package/dist/detectMarkdown.js +0 -61
  232. package/dist/detectMarkdown.js.map +0 -1
  233. package/dist/emojiData.d.ts +0 -81
  234. package/dist/emojiData.d.ts.map +0 -1
  235. package/dist/emojiData.js +0 -1283
  236. package/dist/emojiData.js.map +0 -1
  237. package/dist/fileKind.d.ts +0 -34
  238. package/dist/fileKind.d.ts.map +0 -1
  239. package/dist/fileKind.js +0 -144
  240. package/dist/fileKind.js.map +0 -1
  241. package/dist/hooks/useFileDrop.d.ts +0 -41
  242. package/dist/hooks/useFileDrop.d.ts.map +0 -1
  243. package/dist/hooks/useFileDrop.js +0 -205
  244. package/dist/hooks/useFileDrop.js.map +0 -1
  245. package/dist/imageEditor/CanvasSurface.d.ts +0 -31
  246. package/dist/imageEditor/CanvasSurface.d.ts.map +0 -1
  247. package/dist/imageEditor/CanvasSurface.js +0 -264
  248. package/dist/imageEditor/CanvasSurface.js.map +0 -1
  249. package/dist/imageEditor/ImageVersionHistoryDropdown.d.ts +0 -39
  250. package/dist/imageEditor/ImageVersionHistoryDropdown.d.ts.map +0 -1
  251. package/dist/imageEditor/ImageVersionHistoryDropdown.js +0 -283
  252. package/dist/imageEditor/ImageVersionHistoryDropdown.js.map +0 -1
  253. package/dist/imageEditor/LayersPanel.d.ts +0 -14
  254. package/dist/imageEditor/LayersPanel.d.ts.map +0 -1
  255. package/dist/imageEditor/LayersPanel.js +0 -43
  256. package/dist/imageEditor/LayersPanel.js.map +0 -1
  257. package/dist/imageEditor/PropertiesPanel.d.ts +0 -14
  258. package/dist/imageEditor/PropertiesPanel.d.ts.map +0 -1
  259. package/dist/imageEditor/PropertiesPanel.js +0 -97
  260. package/dist/imageEditor/PropertiesPanel.js.map +0 -1
  261. package/dist/imageEditor/Toolbar.d.ts +0 -30
  262. package/dist/imageEditor/Toolbar.d.ts.map +0 -1
  263. package/dist/imageEditor/Toolbar.js +0 -108
  264. package/dist/imageEditor/Toolbar.js.map +0 -1
  265. package/dist/imageEditor/icons.d.ts +0 -24
  266. package/dist/imageEditor/icons.d.ts.map +0 -1
  267. package/dist/imageEditor/icons.js +0 -45
  268. package/dist/imageEditor/icons.js.map +0 -1
  269. package/dist/imageEditor/layers/EditorImageLayer.d.ts +0 -16
  270. package/dist/imageEditor/layers/EditorImageLayer.d.ts.map +0 -1
  271. package/dist/imageEditor/layers/EditorImageLayer.js +0 -37
  272. package/dist/imageEditor/layers/EditorImageLayer.js.map +0 -1
  273. package/dist/imageEditor/layers/EditorShapeLayer.d.ts +0 -15
  274. package/dist/imageEditor/layers/EditorShapeLayer.d.ts.map +0 -1
  275. package/dist/imageEditor/layers/EditorShapeLayer.js +0 -20
  276. package/dist/imageEditor/layers/EditorShapeLayer.js.map +0 -1
  277. package/dist/imageEditor/layers/EditorTextLayer.d.ts +0 -18
  278. package/dist/imageEditor/layers/EditorTextLayer.d.ts.map +0 -1
  279. package/dist/imageEditor/layers/EditorTextLayer.js +0 -13
  280. package/dist/imageEditor/layers/EditorTextLayer.js.map +0 -1
  281. package/dist/imageEditor/layers/SelectionHandles.d.ts +0 -17
  282. package/dist/imageEditor/layers/SelectionHandles.d.ts.map +0 -1
  283. package/dist/imageEditor/layers/SelectionHandles.js +0 -19
  284. package/dist/imageEditor/layers/SelectionHandles.js.map +0 -1
  285. package/dist/imageEditor/state.d.ts +0 -76
  286. package/dist/imageEditor/state.d.ts.map +0 -1
  287. package/dist/imageEditor/state.js +0 -87
  288. package/dist/imageEditor/state.js.map +0 -1
  289. package/dist/imageEditor/useImageEditor.d.ts +0 -53
  290. package/dist/imageEditor/useImageEditor.d.ts.map +0 -1
  291. package/dist/imageEditor/useImageEditor.js +0 -244
  292. package/dist/imageEditor/useImageEditor.js.map +0 -1
  293. package/dist/imageEditor/useImageEditorTokens.d.ts +0 -16
  294. package/dist/imageEditor/useImageEditorTokens.d.ts.map +0 -1
  295. package/dist/imageEditor/useImageEditorTokens.js +0 -45
  296. package/dist/imageEditor/useImageEditorTokens.js.map +0 -1
  297. package/dist/index.d.ts.map +0 -1
  298. package/dist/jsonEditor/EmbeddedRichTextField.d.ts +0 -15
  299. package/dist/jsonEditor/EmbeddedRichTextField.d.ts.map +0 -1
  300. package/dist/jsonEditor/EmbeddedRichTextField.js +0 -74
  301. package/dist/jsonEditor/EmbeddedRichTextField.js.map +0 -1
  302. package/dist/jsonEditor/JsonEditor.d.ts +0 -36
  303. package/dist/jsonEditor/JsonEditor.d.ts.map +0 -1
  304. package/dist/jsonEditor/JsonEditor.js +0 -15
  305. package/dist/jsonEditor/JsonEditor.js.map +0 -1
  306. package/dist/jsonEditor/JsonEditorContext.d.ts +0 -28
  307. package/dist/jsonEditor/JsonEditorContext.d.ts.map +0 -1
  308. package/dist/jsonEditor/JsonEditorContext.js +0 -41
  309. package/dist/jsonEditor/JsonEditorContext.js.map +0 -1
  310. package/dist/jsonEditor/RenderNode.d.ts +0 -16
  311. package/dist/jsonEditor/RenderNode.d.ts.map +0 -1
  312. package/dist/jsonEditor/RenderNode.js +0 -32
  313. package/dist/jsonEditor/RenderNode.js.map +0 -1
  314. package/dist/jsonEditor/editors.d.ts +0 -36
  315. package/dist/jsonEditor/editors.d.ts.map +0 -1
  316. package/dist/jsonEditor/editors.js +0 -347
  317. package/dist/jsonEditor/editors.js.map +0 -1
  318. package/dist/jsonEditor/index.d.ts +0 -3
  319. package/dist/jsonEditor/index.d.ts.map +0 -1
  320. package/dist/jsonEditor/index.js +0 -2
  321. package/dist/jsonEditor/index.js.map +0 -1
  322. package/dist/jsonEditor/useJsonEditorTokens.d.ts +0 -13
  323. package/dist/jsonEditor/useJsonEditorTokens.d.ts.map +0 -1
  324. package/dist/jsonEditor/useJsonEditorTokens.js +0 -38
  325. package/dist/jsonEditor/useJsonEditorTokens.js.map +0 -1
  326. package/dist/mediaDragMime.d.ts +0 -17
  327. package/dist/mediaDragMime.d.ts.map +0 -1
  328. package/dist/mediaDragMime.js +0 -22
  329. package/dist/mediaDragMime.js.map +0 -1
  330. package/dist/recorder/RecorderButton.d.ts +0 -31
  331. package/dist/recorder/RecorderButton.d.ts.map +0 -1
  332. package/dist/recorder/RecorderButton.js +0 -24
  333. package/dist/recorder/RecorderButton.js.map +0 -1
  334. package/dist/recorder/RecorderModal.d.ts +0 -59
  335. package/dist/recorder/RecorderModal.d.ts.map +0 -1
  336. package/dist/recorder/RecorderModal.js +0 -333
  337. package/dist/recorder/RecorderModal.js.map +0 -1
  338. package/dist/recorder/RecorderPanel.d.ts +0 -25
  339. package/dist/recorder/RecorderPanel.d.ts.map +0 -1
  340. package/dist/recorder/RecorderPanel.js +0 -30
  341. package/dist/recorder/RecorderPanel.js.map +0 -1
  342. package/dist/recorder/formats.d.ts +0 -51
  343. package/dist/recorder/formats.d.ts.map +0 -1
  344. package/dist/recorder/formats.js +0 -144
  345. package/dist/recorder/formats.js.map +0 -1
  346. package/dist/recorder/hooks/useMediaRecorder.d.ts +0 -90
  347. package/dist/recorder/hooks/useMediaRecorder.d.ts.map +0 -1
  348. package/dist/recorder/hooks/useMediaRecorder.js +0 -277
  349. package/dist/recorder/hooks/useMediaRecorder.js.map +0 -1
  350. package/dist/recorder/hooks/useStreamPreview.d.ts +0 -22
  351. package/dist/recorder/hooks/useStreamPreview.d.ts.map +0 -1
  352. package/dist/recorder/hooks/useStreamPreview.js +0 -44
  353. package/dist/recorder/hooks/useStreamPreview.js.map +0 -1
  354. package/dist/recorder/sources/cameraStream.d.ts +0 -22
  355. package/dist/recorder/sources/cameraStream.d.ts.map +0 -1
  356. package/dist/recorder/sources/cameraStream.js +0 -24
  357. package/dist/recorder/sources/cameraStream.js.map +0 -1
  358. package/dist/recorder/sources/micStream.d.ts +0 -15
  359. package/dist/recorder/sources/micStream.d.ts.map +0 -1
  360. package/dist/recorder/sources/micStream.js +0 -24
  361. package/dist/recorder/sources/micStream.js.map +0 -1
  362. package/dist/recorder/sources/screenStream.d.ts +0 -53
  363. package/dist/recorder/sources/screenStream.d.ts.map +0 -1
  364. package/dist/recorder/sources/screenStream.js +0 -114
  365. package/dist/recorder/sources/screenStream.js.map +0 -1
  366. package/dist/recorder/timingJson.d.ts +0 -51
  367. package/dist/recorder/timingJson.d.ts.map +0 -1
  368. package/dist/recorder/timingJson.js +0 -42
  369. package/dist/recorder/timingJson.js.map +0 -1
  370. package/dist/tiptap/TiptapAudio.d.ts +0 -26
  371. package/dist/tiptap/TiptapAudio.d.ts.map +0 -1
  372. package/dist/tiptap/TiptapAudio.js +0 -58
  373. package/dist/tiptap/TiptapAudio.js.map +0 -1
  374. package/dist/tiptap/TiptapVideo.d.ts +0 -30
  375. package/dist/tiptap/TiptapVideo.d.ts.map +0 -1
  376. package/dist/tiptap/TiptapVideo.js +0 -66
  377. package/dist/tiptap/TiptapVideo.js.map +0 -1
  378. package/dist/tiptap/useResolvedMediaSrc.d.ts +0 -2
  379. package/dist/tiptap/useResolvedMediaSrc.d.ts.map +0 -1
  380. package/dist/tiptap/useResolvedMediaSrc.js +0 -42
  381. package/dist/tiptap/useResolvedMediaSrc.js.map +0 -1
  382. package/dist/tiptapBridge.d.ts +0 -24
  383. package/dist/tiptapBridge.d.ts.map +0 -1
  384. package/dist/tiptapBridge.js +0 -749
  385. package/dist/tiptapBridge.js.map +0 -1
  386. package/dist/useHeadingLayout.d.ts +0 -54
  387. package/dist/useHeadingLayout.d.ts.map +0 -1
  388. package/dist/useHeadingLayout.js +0 -260
  389. package/dist/useHeadingLayout.js.map +0 -1
  390. package/dist/utils/collectInlineFontAwesomeCss.d.ts +0 -21
  391. package/dist/utils/collectInlineFontAwesomeCss.d.ts.map +0 -1
  392. package/dist/utils/collectInlineFontAwesomeCss.js +0 -68
  393. package/dist/utils/collectInlineFontAwesomeCss.js.map +0 -1
  394. package/dist/utils/dropUtils.d.ts +0 -55
  395. package/dist/utils/dropUtils.d.ts.map +0 -1
  396. package/dist/utils/dropUtils.js +0 -110
  397. package/dist/utils/dropUtils.js.map +0 -1
  398. package/dist/utils/normalizeMalformedAssetUrl.d.ts +0 -15
  399. package/dist/utils/normalizeMalformedAssetUrl.d.ts.map +0 -1
  400. package/dist/utils/normalizeMalformedAssetUrl.js +0 -27
  401. package/dist/utils/normalizeMalformedAssetUrl.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"OutlinePanel.js","sourceRoot":"","sources":["../src/OutlinePanel.tsx"],"names":[],"mappings":"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"}
@@ -1,50 +0,0 @@
1
- /**
2
- * PlainHtmlPreview
3
- *
4
- * Live WYSIWYG preview of the plain-HTML export. Renders the result of
5
- * `markdownDocToPlainHtml` inside a sandboxed `<iframe srcDoc>` so the
6
- * exported document's inline `<style>` block can't leak into the host
7
- * page — and so the preview looks identical to what users get when they
8
- * open the downloaded `.html`.
9
- *
10
- * Image handling: relative `<img src>` references in the markdown can't
11
- * load directly from inside the iframe (there's no real document
12
- * origin). When a `mediaProvider` is supplied, this component walks the
13
- * parsed markdown for image refs, resolves each through
14
- * `mediaProvider.resolveUrl()` (which returns a cached blob URL), and
15
- * passes the resolved map to the renderer so the iframe gets blob URLs
16
- * it can fetch.
17
- */
18
- import type { CSSProperties } from 'react';
19
- import type { MediaProvider, Theme } from '@bendyline/squisq/schemas';
20
- export interface PlainHtmlPreviewProps {
21
- /** Raw markdown source. */
22
- markdown: string;
23
- /** Document title — populates the iframe's `<title>`. */
24
- title?: string;
25
- /**
26
- * Pre-resolved image substitutions (export-time use). Takes precedence
27
- * over live `mediaProvider` resolution for any URL it contains.
28
- */
29
- images?: Map<string, string>;
30
- /**
31
- * When passed, relative image URLs in the markdown are resolved live
32
- * via this provider. Skip for static previews where `images` already
33
- * contains everything.
34
- */
35
- mediaProvider?: MediaProvider | null;
36
- /** Token that, when changed, forces re-resolution of media URLs.
37
- * Mirrors the `mediaRevision` bump the editor uses after an image
38
- * edit so saves show up in the preview without remount. */
39
- mediaRevision?: number;
40
- /**
41
- * Squisq theme to apply. When set, the iframe loads any Google-
42
- * hosted fonts the theme uses and the rendered HTML adopts the
43
- * theme's colors and typography.
44
- */
45
- theme?: Theme;
46
- className?: string;
47
- style?: CSSProperties;
48
- }
49
- export declare function PlainHtmlPreview({ markdown, title, images, mediaProvider, mediaRevision, theme, className, style, }: PlainHtmlPreviewProps): import("react/jsx-runtime").JSX.Element;
50
- //# sourceMappingURL=PlainHtmlPreview.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PlainHtmlPreview.d.ts","sourceRoot":"","sources":["../src/PlainHtmlPreview.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAG3C,OAAO,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAKtE,MAAM,WAAW,qBAAqB;IACpC,2BAA2B;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,yDAAyD;IACzD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,MAAM,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B;;;;OAIG;IACH,aAAa,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IACrC;;gEAE4D;IAC5D,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;OAIG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;CACvB;AAUD,wBAAgB,gBAAgB,CAAC,EAC/B,QAAQ,EACR,KAAK,EACL,MAAM,EACN,aAAa,EACb,aAAa,EACb,KAAK,EACL,SAAS,EACT,KAAK,GACN,EAAE,qBAAqB,2CA6EvB"}
@@ -1,155 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- /**
3
- * PlainHtmlPreview
4
- *
5
- * Live WYSIWYG preview of the plain-HTML export. Renders the result of
6
- * `markdownDocToPlainHtml` inside a sandboxed `<iframe srcDoc>` so the
7
- * exported document's inline `<style>` block can't leak into the host
8
- * page — and so the preview looks identical to what users get when they
9
- * open the downloaded `.html`.
10
- *
11
- * Image handling: relative `<img src>` references in the markdown can't
12
- * load directly from inside the iframe (there's no real document
13
- * origin). When a `mediaProvider` is supplied, this component walks the
14
- * parsed markdown for image refs, resolves each through
15
- * `mediaProvider.resolveUrl()` (which returns a cached blob URL), and
16
- * passes the resolved map to the renderer so the iframe gets blob URLs
17
- * it can fetch.
18
- */
19
- import { useEffect, useMemo, useState } from 'react';
20
- import { parseMarkdown } from '@bendyline/squisq/markdown';
21
- import { markdownDocToPlainHtml } from '@bendyline/squisq-formats/html';
22
- import { normalizeMalformedAssetUrl } from './utils/normalizeMalformedAssetUrl';
23
- import { collectInlineFontAwesomeCss } from './utils/collectInlineFontAwesomeCss';
24
- const IFRAME_STYLE = {
25
- width: '100%',
26
- height: '100%',
27
- border: 'none',
28
- background: '#fff',
29
- display: 'block',
30
- };
31
- export function PlainHtmlPreview({ markdown, title, images, mediaProvider, mediaRevision, theme, className, style, }) {
32
- const mdDoc = useMemo(() => parseMarkdown(markdown), [markdown]);
33
- // Resolve any relative image URLs the doc references. Blob URLs are
34
- // cheap once cached, so re-resolving on every keystroke is fine —
35
- // `resolveUrl` is memoized inside the provider.
36
- const [resolvedImages, setResolvedImages] = useState(null);
37
- useEffect(() => {
38
- if (!mediaProvider) {
39
- setResolvedImages(null);
40
- return;
41
- }
42
- let cancelled = false;
43
- const refs = Array.from(collectImageRefs(mdDoc));
44
- Promise.all(refs.map(async (ref) => {
45
- // Word-style imports may have `http://<doc>_files/foo.png` —
46
- // recover the relative path so the workspace provider resolves
47
- // it, otherwise the iframe tries to fetch a nonsense hostname.
48
- const recovered = normalizeMalformedAssetUrl(ref);
49
- if (!recovered && isExternal(ref))
50
- return [ref, ref];
51
- const lookup = recovered ?? ref;
52
- try {
53
- const url = await mediaProvider.resolveUrl(lookup);
54
- return [ref, url];
55
- }
56
- catch {
57
- return [ref, ref];
58
- }
59
- })).then((pairs) => {
60
- if (cancelled)
61
- return;
62
- const next = new Map(pairs);
63
- setResolvedImages(next);
64
- });
65
- return () => {
66
- cancelled = true;
67
- };
68
- }, [mdDoc, mediaProvider, mediaRevision]);
69
- const mergedImages = useMemo(() => {
70
- if (!resolvedImages && !images)
71
- return undefined;
72
- const merged = new Map();
73
- if (resolvedImages)
74
- for (const [k, v] of resolvedImages)
75
- merged.set(k, v);
76
- if (images)
77
- for (const [k, v] of images)
78
- merged.set(k, v);
79
- return merged;
80
- }, [resolvedImages, images]);
81
- // Gather FontAwesome @font-face + utility rules from the host page's
82
- // own stylesheets so the iframe doesn't have to depend on a cross-
83
- // origin CDN fetch (which sandbox / tracking-prevention can silently
84
- // drop, leaving the icons invisible). The host (editor-react) already
85
- // bundles FA, so the rules are guaranteed to be present and the font
86
- // URLs inside them resolve to same-origin assets the iframe can
87
- // fetch under `allow-same-origin`.
88
- const iconsCss = useMemo(() => collectInlineFontAwesomeCss(), []);
89
- const html = useMemo(() => markdownDocToPlainHtml(mdDoc, { title, images: mergedImages, theme, iconsCss }), [mdDoc, title, mergedImages, theme, iconsCss]);
90
- return (_jsx("iframe", { className: className, "data-testid": "plain-html-preview", title: title ?? 'HTML preview', srcDoc: html,
91
- // `allow-same-origin` is required so the iframe can fetch blob:
92
- // URLs created by the host's media provider. We intentionally do
93
- // NOT include `allow-scripts` — the rendered HTML is plain-output
94
- // markup with no JS, and refusing scripts hardens against
95
- // accidental `<script>` content in user markdown.
96
- sandbox: "allow-same-origin", style: { ...IFRAME_STYLE, ...style } }));
97
- }
98
- // ── Image collection ───────────────────────────────────────────────
99
- function isExternal(url) {
100
- return (!url ||
101
- url.startsWith('data:') ||
102
- url.startsWith('blob:') ||
103
- url.startsWith('http://') ||
104
- url.startsWith('https://') ||
105
- url.startsWith('//'));
106
- }
107
- /**
108
- * Collect every image URL referenced anywhere in the doc — markdown
109
- * `image` nodes plus any `<img src>` inside raw HTML blocks/inlines
110
- * (the WYSIWYG editor emits the HTML form for resized images).
111
- */
112
- function collectImageRefs(doc) {
113
- const refs = new Set();
114
- function visitHtml(nodes) {
115
- for (const n of nodes) {
116
- if (n.type !== 'htmlElement')
117
- continue;
118
- const tag = n.tagName.toLowerCase();
119
- // <img>, <video>, and <audio> all reference media via `src`.
120
- // The export pipeline rewrites whichever map entries exist, so
121
- // collecting them under the same set is enough — `ctx.images`
122
- // is generic media despite the historical name.
123
- if (tag === 'img' || tag === 'video' || tag === 'audio' || tag === 'source') {
124
- const src = n.attributes.src;
125
- if (typeof src === 'string' && src)
126
- refs.add(src);
127
- }
128
- if (tag === 'video' || tag === 'audio') {
129
- const poster = n.attributes.poster;
130
- if (typeof poster === 'string' && poster)
131
- refs.add(poster);
132
- }
133
- visitHtml(n.children);
134
- }
135
- }
136
- function visit(node) {
137
- if (!node || typeof node !== 'object')
138
- return;
139
- const n = node;
140
- if (n.type === 'image' && typeof n.url === 'string' && n.url) {
141
- refs.add(n.url);
142
- }
143
- if ((n.type === 'htmlBlock' || n.type === 'htmlInline') && Array.isArray(n.htmlChildren)) {
144
- visitHtml(n.htmlChildren);
145
- }
146
- if (Array.isArray(n.children)) {
147
- for (const child of n.children)
148
- visit(child);
149
- }
150
- }
151
- for (const child of doc.children)
152
- visit(child);
153
- return refs;
154
- }
155
- //# sourceMappingURL=PlainHtmlPreview.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PlainHtmlPreview.js","sourceRoot":"","sources":["../src/PlainHtmlPreview.tsx"],"names":[],"mappings":"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"}
@@ -1,55 +0,0 @@
1
- /**
2
- * PreviewControls
3
- *
4
- * Shared context and inline toolbar component for preview settings
5
- * (viewport format, display mode, theme, transform, caption style).
6
- *
7
- * The context is provided by EditorShell and consumed by both:
8
- * - PreviewControls (toolbar dropdowns, rendered in the main toolbar)
9
- * - PreviewPanel (the actual player, which reads the selected values)
10
- */
11
- import type { ReactNode } from 'react';
12
- import type { DisplayMode, CaptionStyle } from '@bendyline/squisq-react';
13
- import type { ViewportPreset, ViewportConfig } from '@bendyline/squisq/schemas';
14
- import type { Theme } from '@bendyline/squisq/schemas';
15
- import type { Doc } from '@bendyline/squisq/schemas';
16
- export interface PreviewSettings {
17
- activePreset: ViewportPreset;
18
- setSelectedPreset: (preset: ViewportPreset | null) => void;
19
- activeViewport: ViewportConfig;
20
- activeDisplayMode: DisplayMode;
21
- setSelectedDisplayMode: (mode: DisplayMode | null) => void;
22
- activeThemeId: string;
23
- setSelectedThemeId: (id: string | null) => void;
24
- activeTheme: Theme;
25
- activeTransformStyle: string;
26
- setSelectedTransformStyle: (id: string | null) => void;
27
- activeCaptionStyle: CaptionStyle;
28
- setSelectedCaptionStyle: (style: CaptionStyle | null) => void;
29
- }
30
- export declare function usePreviewSettings(): PreviewSettings;
31
- /**
32
- * Like {@link usePreviewSettings} but returns `null` when no provider is
33
- * mounted. For consumers (e.g. WysiwygEditor) that want to react to the
34
- * active theme when available without forcing every test harness to
35
- * wrap them in a PreviewSettingsProvider.
36
- */
37
- export declare function usePreviewSettingsOptional(): PreviewSettings | null;
38
- export interface PreviewSettingsProviderProps {
39
- doc: Doc | null;
40
- children: ReactNode;
41
- /**
42
- * Optional Theme to use for the preview, regardless of `Doc.themeId` or
43
- * the user's theme dropdown selection. Used by the theme customizer to
44
- * preview an in-progress theme without mutating the document. When
45
- * present, `activeTheme` is this value and `activeThemeId` is its `id`.
46
- */
47
- themeOverride?: Theme | null;
48
- }
49
- export declare function PreviewSettingsProvider({ doc, children, themeOverride, }: PreviewSettingsProviderProps): import("react/jsx-runtime").JSX.Element;
50
- /**
51
- * Inline preview controls rendered in the main toolbar row.
52
- * On narrow viewports, collapses into a single settings button with a dropdown.
53
- */
54
- export declare function PreviewToolbarControls(): import("react/jsx-runtime").JSX.Element;
55
- //# sourceMappingURL=PreviewControls.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PreviewControls.d.ts","sourceRoot":"","sources":["../src/PreviewControls.tsx"],"names":[],"mappings":"AACA;;;;;;;;;GASG;AAWH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACzE,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAEhF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAGvD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,2BAA2B,CAAC;AAMrD,MAAM,WAAW,eAAe;IAC9B,YAAY,EAAE,cAAc,CAAC;IAC7B,iBAAiB,EAAE,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,KAAK,IAAI,CAAC;IAC3D,cAAc,EAAE,cAAc,CAAC;IAC/B,iBAAiB,EAAE,WAAW,CAAC;IAC/B,sBAAsB,EAAE,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,KAAK,IAAI,CAAC;IAC3D,aAAa,EAAE,MAAM,CAAC;IACtB,kBAAkB,EAAE,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAChD,WAAW,EAAE,KAAK,CAAC;IACnB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,yBAAyB,EAAE,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACvD,kBAAkB,EAAE,YAAY,CAAC;IACjC,uBAAuB,EAAE,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI,KAAK,IAAI,CAAC;CAC/D;AAID,wBAAgB,kBAAkB,IAAI,eAAe,CAIpD;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,IAAI,eAAe,GAAG,IAAI,CAEnE;AAiED,MAAM,WAAW,4BAA4B;IAC3C,GAAG,EAAE,GAAG,GAAG,IAAI,CAAC;IAChB,QAAQ,EAAE,SAAS,CAAC;IACpB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;CAC9B;AAoBD,wBAAgB,uBAAuB,CAAC,EACtC,GAAG,EACH,QAAQ,EACR,aAAa,GACd,EAAE,4BAA4B,2CA8H9B;AA8DD;;;GAGG;AACH,wBAAgB,sBAAsB,4CA2FrC"}
@@ -1,277 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- /* eslint-disable react-refresh/only-export-components */
3
- /**
4
- * PreviewControls
5
- *
6
- * Shared context and inline toolbar component for preview settings
7
- * (viewport format, display mode, theme, transform, caption style).
8
- *
9
- * The context is provided by EditorShell and consumed by both:
10
- * - PreviewControls (toolbar dropdowns, rendered in the main toolbar)
11
- * - PreviewPanel (the actual player, which reads the selected values)
12
- */
13
- import { createContext, useCallback, useContext, useState, useMemo, useEffect, useRef, } from 'react';
14
- import { VIEWPORT_PRESETS, getThemeSummaries, resolveTheme } from '@bendyline/squisq/schemas';
15
- import { ThemePicker } from './ThemePicker';
16
- import { getTransformStyleSummaries } from '@bendyline/squisq/transform';
17
- import { setFrontmatterValues } from '@bendyline/squisq/markdown';
18
- import { useEditorContext } from './EditorContext';
19
- const PreviewSettingsContext = createContext(null);
20
- export function usePreviewSettings() {
21
- const ctx = useContext(PreviewSettingsContext);
22
- if (!ctx)
23
- throw new Error('usePreviewSettings must be used within PreviewSettingsProvider');
24
- return ctx;
25
- }
26
- /**
27
- * Like {@link usePreviewSettings} but returns `null` when no provider is
28
- * mounted. For consumers (e.g. WysiwygEditor) that want to react to the
29
- * active theme when available without forcing every test harness to
30
- * wrap them in a PreviewSettingsProvider.
31
- */
32
- export function usePreviewSettingsOptional() {
33
- return useContext(PreviewSettingsContext);
34
- }
35
- // ── Frontmatter resolvers ────────────────────────────────────────
36
- function resolveRenderAs(value) {
37
- if (typeof value !== 'string')
38
- return null;
39
- const v = value.trim().toLowerCase();
40
- const mapping = {
41
- landscape: 'landscape',
42
- '16:9': 'landscape',
43
- widescreen: 'landscape',
44
- portrait: 'portrait',
45
- '9:16': 'portrait',
46
- vertical: 'portrait',
47
- stories: 'portrait',
48
- square: 'square',
49
- '1:1': 'square',
50
- standard: 'standard',
51
- '4:3': 'standard',
52
- };
53
- return mapping[v] ?? null;
54
- }
55
- function resolveDisplayMode(value) {
56
- if (typeof value !== 'string')
57
- return null;
58
- const v = value.trim().toLowerCase();
59
- if (v === 'video' || v === 'slideshow' || v === 'linear' || v === 'page')
60
- return v;
61
- if (v === 'slides' || v === 'presentation' || v === 'deck')
62
- return 'slideshow';
63
- if (v === 'document' || v === 'scroll')
64
- return 'linear';
65
- if (v === 'html' || v === 'plain' || v === 'reader')
66
- return 'page';
67
- return null;
68
- }
69
- const VALID_THEME_IDS = new Set(getThemeSummaries().map((s) => s.id));
70
- function resolveFrontmatterTheme(value) {
71
- if (typeof value !== 'string')
72
- return null;
73
- const v = value.trim().toLowerCase();
74
- if (VALID_THEME_IDS.has(v))
75
- return v;
76
- const normalized = v.replace(/\s+/g, '-');
77
- if (VALID_THEME_IDS.has(normalized))
78
- return normalized;
79
- return null;
80
- }
81
- const VALID_TRANSFORM_IDS = new Set(getTransformStyleSummaries().map((s) => s.id));
82
- function resolveFrontmatterTransform(value) {
83
- if (typeof value !== 'string')
84
- return null;
85
- const v = value.trim().toLowerCase();
86
- if (VALID_TRANSFORM_IDS.has(v))
87
- return v;
88
- const normalized = v.replace(/\s+/g, '-');
89
- if (VALID_TRANSFORM_IDS.has(normalized))
90
- return normalized;
91
- return null;
92
- }
93
- function resolveFrontmatterCaptionStyle(value) {
94
- if (typeof value !== 'string')
95
- return null;
96
- const v = value.trim().toLowerCase();
97
- if (v === 'standard' || v === 'social')
98
- return v;
99
- if (v === 'instagram' || v === 'tiktok' || v === 'reels')
100
- return 'social';
101
- return null;
102
- }
103
- /** Frontmatter keys we read/write for preview settings. The squisq-prefixed
104
- * keys are the canonical names; the legacy keys are still read so existing
105
- * documents keep working. Persistence (writes) uses only the squisq names. */
106
- const FM_KEYS = {
107
- theme: { canonical: 'squisq-theme', legacy: 'theme' },
108
- transform: { canonical: 'squisq-transform', legacy: 'transform-style' },
109
- captions: { canonical: 'squisq-captions', legacy: 'caption-style' },
110
- };
111
- function readFrontmatterKey(fm, canonical, legacy) {
112
- if (!fm)
113
- return undefined;
114
- return Object.prototype.hasOwnProperty.call(fm, canonical) ? fm[canonical] : fm[legacy];
115
- }
116
- export function PreviewSettingsProvider({ doc, children, themeOverride, }) {
117
- const frontmatter = doc?.frontmatter;
118
- const { markdownSource, setMarkdownSource } = useEditorContext();
119
- const persistFrontmatter = useCallback((updates) => {
120
- const next = setFrontmatterValues(markdownSource, updates);
121
- if (next !== markdownSource) {
122
- setMarkdownSource(next);
123
- }
124
- }, [markdownSource, setMarkdownSource]);
125
- // Viewport
126
- const fmPreset = useMemo(() => resolveRenderAs(frontmatter?.['document-render-as']), [frontmatter]);
127
- const [selectedPreset, setSelectedPreset] = useState(null);
128
- useEffect(() => setSelectedPreset(null), [fmPreset]);
129
- const activePreset = selectedPreset ?? fmPreset ?? 'landscape';
130
- const activeViewport = VIEWPORT_PRESETS[activePreset];
131
- // Display mode
132
- const fmMode = useMemo(() => resolveDisplayMode(frontmatter?.['display-mode']), [frontmatter]);
133
- const [selectedDisplayMode, setSelectedDisplayMode] = useState(null);
134
- useEffect(() => setSelectedDisplayMode(null), [fmMode]);
135
- const activeDisplayMode = selectedDisplayMode ?? fmMode ?? 'video';
136
- // Theme — persisted to `squisq-theme` (legacy `theme` still read for compat)
137
- const fmTheme = useMemo(() => resolveFrontmatterTheme(readFrontmatterKey(frontmatter, FM_KEYS.theme.canonical, FM_KEYS.theme.legacy)), [frontmatter]);
138
- const [selectedThemeId, setSelectedThemeId] = useState(null);
139
- useEffect(() => setSelectedThemeId(null), [fmTheme]);
140
- const resolvedThemeId = selectedThemeId ?? fmTheme ?? 'standard';
141
- const resolvedTheme = useMemo(() => resolveTheme(resolvedThemeId), [resolvedThemeId]);
142
- // themeOverride wins over both dropdown selection and frontmatter
143
- const activeThemeId = themeOverride?.id ?? resolvedThemeId;
144
- const activeTheme = themeOverride ?? resolvedTheme;
145
- const handleSetThemeId = useCallback((id) => {
146
- setSelectedThemeId(id);
147
- if (id !== null)
148
- persistFrontmatter({ [FM_KEYS.theme.canonical]: id });
149
- }, [persistFrontmatter]);
150
- // Transform — persisted to `squisq-transform` (legacy `transform-style` read for compat)
151
- const fmTransform = useMemo(() => resolveFrontmatterTransform(readFrontmatterKey(frontmatter, FM_KEYS.transform.canonical, FM_KEYS.transform.legacy)), [frontmatter]);
152
- const [selectedTransformStyle, setSelectedTransformStyle] = useState(null);
153
- useEffect(() => setSelectedTransformStyle(null), [fmTransform]);
154
- const activeTransformStyle = selectedTransformStyle ?? fmTransform ?? '';
155
- const handleSetTransformStyle = useCallback((id) => {
156
- setSelectedTransformStyle(id);
157
- if (id !== null) {
158
- // Empty string = "None" — remove the key rather than writing a blank value.
159
- persistFrontmatter({ [FM_KEYS.transform.canonical]: id === '' ? null : id });
160
- }
161
- }, [persistFrontmatter]);
162
- // Caption style — persisted to `squisq-captions` (legacy `caption-style` read for compat)
163
- const fmCaption = useMemo(() => resolveFrontmatterCaptionStyle(readFrontmatterKey(frontmatter, FM_KEYS.captions.canonical, FM_KEYS.captions.legacy)), [frontmatter]);
164
- const [selectedCaptionStyle, setSelectedCaptionStyle] = useState(null);
165
- useEffect(() => setSelectedCaptionStyle(null), [fmCaption]);
166
- const activeCaptionStyle = selectedCaptionStyle ?? fmCaption ?? 'standard';
167
- const handleSetCaptionStyle = useCallback((style) => {
168
- setSelectedCaptionStyle(style);
169
- if (style !== null)
170
- persistFrontmatter({ [FM_KEYS.captions.canonical]: style });
171
- }, [persistFrontmatter]);
172
- const value = useMemo(() => ({
173
- activePreset,
174
- setSelectedPreset,
175
- activeViewport,
176
- activeDisplayMode,
177
- setSelectedDisplayMode,
178
- activeThemeId,
179
- setSelectedThemeId: handleSetThemeId,
180
- activeTheme,
181
- activeTransformStyle,
182
- setSelectedTransformStyle: handleSetTransformStyle,
183
- activeCaptionStyle,
184
- setSelectedCaptionStyle: handleSetCaptionStyle,
185
- }), [
186
- activePreset,
187
- activeViewport,
188
- activeDisplayMode,
189
- activeThemeId,
190
- activeTheme,
191
- activeTransformStyle,
192
- activeCaptionStyle,
193
- handleSetThemeId,
194
- handleSetTransformStyle,
195
- handleSetCaptionStyle,
196
- ]);
197
- return (_jsx(PreviewSettingsContext.Provider, { value: value, children: children }));
198
- }
199
- // ── Dropdown options ─────────────────────────────────────────────
200
- const VIEWPORT_OPTIONS = [
201
- { key: 'landscape', label: '16:9' },
202
- { key: 'portrait', label: '9:16' },
203
- { key: 'square', label: '1:1' },
204
- { key: 'standard', label: '4:3' },
205
- ];
206
- const DISPLAY_MODE_OPTIONS = [
207
- { key: 'video', label: 'Video' },
208
- { key: 'slideshow', label: 'Slideshow' },
209
- { key: 'linear', label: 'Document' },
210
- { key: 'page', label: 'Page' },
211
- ];
212
- const TRANSFORM_STYLE_OPTIONS = [
213
- { key: '', label: 'None' },
214
- ...getTransformStyleSummaries().map((s) => ({ key: s.id, label: s.name })),
215
- ];
216
- const CAPTION_STYLE_OPTIONS = [
217
- { key: 'standard', label: 'Standard' },
218
- { key: 'social', label: 'Social' },
219
- ];
220
- // ── Shared styles ────────────────────────────────────────────────
221
- const labelStyle = {
222
- color: 'var(--squisq-text-muted, #6b7280)',
223
- fontSize: '12px',
224
- whiteSpace: 'nowrap',
225
- };
226
- const selectStyle = {
227
- padding: '2px 6px',
228
- borderRadius: '4px',
229
- border: '1px solid var(--squisq-border, #d1d5db)',
230
- background: 'var(--squisq-input-bg, #fff)',
231
- color: 'var(--squisq-text, #1f2937)',
232
- fontSize: '12px',
233
- cursor: 'pointer',
234
- };
235
- // ── Toolbar Controls Component ───────────────────────────────────
236
- /** Hook to track whether the viewport is narrow. */
237
- function useIsNarrow(breakpoint = 600) {
238
- const [narrow, setNarrow] = useState(() => typeof window !== 'undefined' && window.innerWidth <= breakpoint);
239
- useEffect(() => {
240
- const mq = window.matchMedia(`(max-width: ${breakpoint}px)`);
241
- const handler = (e) => setNarrow(e.matches);
242
- mq.addEventListener('change', handler);
243
- return () => mq.removeEventListener('change', handler);
244
- }, [breakpoint]);
245
- return narrow;
246
- }
247
- /**
248
- * Inline preview controls rendered in the main toolbar row.
249
- * On narrow viewports, collapses into a single settings button with a dropdown.
250
- */
251
- export function PreviewToolbarControls() {
252
- const s = usePreviewSettings();
253
- const isNarrow = useIsNarrow(768);
254
- const [popoverOpen, setPopoverOpen] = useState(false);
255
- const popoverRef = useRef(null);
256
- // Close popover on outside click
257
- useEffect(() => {
258
- if (!popoverOpen)
259
- return;
260
- const handler = (e) => {
261
- if (popoverRef.current && !popoverRef.current.contains(e.target)) {
262
- setPopoverOpen(false);
263
- }
264
- };
265
- document.addEventListener('mousedown', handler);
266
- return () => document.removeEventListener('mousedown', handler);
267
- }, [popoverOpen]);
268
- const controls = (_jsxs(_Fragment, { children: [_jsx(PreviewSelect, { label: "Format", value: s.activePreset, options: VIEWPORT_OPTIONS, onChange: (v) => s.setSelectedPreset(v), compact: isNarrow }), _jsx(PreviewSelect, { label: "Mode", value: s.activeDisplayMode, options: DISPLAY_MODE_OPTIONS, onChange: (v) => s.setSelectedDisplayMode(v), compact: isNarrow }), _jsxs("div", { className: `squisq-preview-control${isNarrow ? ' squisq-preview-control--compact' : ''}`, children: [_jsx("label", { style: labelStyle, children: "Theme:" }), _jsx(ThemePicker, { value: s.activeThemeId, onChange: (v) => s.setSelectedThemeId(v), ariaLabel: "Theme" })] }), _jsx(PreviewSelect, { label: "Transform", value: s.activeTransformStyle, options: TRANSFORM_STYLE_OPTIONS, onChange: (v) => s.setSelectedTransformStyle(v), compact: isNarrow }), _jsx(PreviewSelect, { label: "Captions", value: s.activeCaptionStyle, options: CAPTION_STYLE_OPTIONS, onChange: (v) => s.setSelectedCaptionStyle(v), compact: isNarrow })] }));
269
- if (isNarrow) {
270
- return (_jsxs("div", { className: "squisq-preview-controls-compact", ref: popoverRef, children: [_jsx("button", { className: "squisq-toolbar-button", onClick: () => setPopoverOpen((v) => !v), "aria-label": "Preview settings", title: "Preview settings", "aria-expanded": popoverOpen, children: _jsxs("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round", children: [_jsx("circle", { cx: "8", cy: "8", r: "2.5" }), _jsx("path", { d: "M13.5 8a5.5 5.5 0 01-.4 1.8l1.2 1.2-1.6 1.6-1.2-1.2A5.5 5.5 0 018 13.5a5.5 5.5 0 01-3.5-1.3L3.3 13.4 1.7 11.8l1.2-1.2A5.5 5.5 0 012.5 8c0-.6.1-1.2.4-1.8L1.7 5 3.3 3.4l1.2 1.2A5.5 5.5 0 018 2.5c1.3 0 2.5.5 3.5 1.3l1.2-1.2 1.6 1.6-1.2 1.2c.3.6.4 1.2.4 1.6z" })] }) }), popoverOpen && _jsx("div", { className: "squisq-preview-controls-popover", children: controls })] }));
271
- }
272
- return _jsx("div", { className: "squisq-preview-controls-inline", children: controls });
273
- }
274
- function PreviewSelect({ label, value, options, onChange, compact, }) {
275
- return (_jsxs("div", { className: `squisq-preview-control${compact ? ' squisq-preview-control--compact' : ''}`, children: [_jsxs("label", { style: labelStyle, children: [label, ":"] }), _jsx("select", { value: value, onChange: (e) => onChange(e.target.value), style: selectStyle, children: options.map((o) => (_jsx("option", { value: o.key, children: o.label }, o.key))) })] }));
276
- }
277
- //# sourceMappingURL=PreviewControls.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PreviewControls.js","sourceRoot":"","sources":["../src/PreviewControls.tsx"],"names":[],"mappings":"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"}
@@ -1,29 +0,0 @@
1
- /**
2
- * PreviewPanel
3
- *
4
- * Renders a live preview of the current markdown document as a slideshow
5
- * using the DocPlayer component from @bendyline/squisq-react. The
6
- * markdown → player-Doc conversion is delegated to the shared
7
- * `buildPreviewDoc` helper so live preview and the export pipeline stay
8
- * in sync.
9
- */
10
- import type { ContentContainer } from '@bendyline/squisq/storage';
11
- export interface PreviewPanelProps {
12
- /** Base path for resolving media URLs in DocPlayer */
13
- basePath?: string;
14
- /** Additional class name for the container */
15
- className?: string;
16
- /**
17
- * Workspace-scoped `ContentContainer` (the folder holding the doc and
18
- * its siblings). Used here for audio mapping — MP3 discovery and
19
- * `timing.json` reading.
20
- */
21
- workspaceContainer?: ContentContainer | null;
22
- }
23
- /**
24
- * Live preview panel that renders the current document as a slideshow
25
- * or document view. Controls (viewport, mode, theme, transform, captions)
26
- * are rendered in the main toolbar via PreviewToolbarControls.
27
- */
28
- export declare function PreviewPanel({ basePath, className, workspaceContainer }: PreviewPanelProps): import("react/jsx-runtime").JSX.Element;
29
- //# sourceMappingURL=PreviewPanel.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PreviewPanel.d.ts","sourceRoot":"","sources":["../src/PreviewPanel.tsx"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAOH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAMlE,MAAM,WAAW,iBAAiB;IAChC,sDAAsD;IACtD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,8CAA8C;IAC9C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC;CAC9C;AAID;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,EAAE,QAAc,EAAE,SAAS,EAAE,kBAAkB,EAAE,EAAE,iBAAiB,2CA0IhG"}