@bendyline/squisq-editor-react 1.5.0 → 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,139 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- /**
3
- * RecorderEntry — toolbar slot that wires `RecorderPanel` from
4
- * `@bendyline/squisq-recorder-react` into the editor.
5
- *
6
- * Reads `mediaProvider`, `workspaceContainer`, `activeView`,
7
- * `tiptapEditor`, and the markdown editing helpers from
8
- * `useEditorContext()`. On a successful save it:
9
- * - inserts an HTML5 media element at the cursor — `<video>` for
10
- * camera / screen recordings, `<audio>` for narration / mic
11
- * recordings — which the markdown renderer turns into an inline
12
- * `<InlineVideoPlayer>` / `<InlineAudioPlayer>` with native
13
- * controls;
14
- * - for narration, also annotates the nearest heading with
15
- * `{[audio=filename]}` so `resolveAudioMapping()` continues to tie
16
- * the recording to that block during slideshow playback;
17
- * - bumps `mediaRevision` so any blob URLs the media bin cached for
18
- * the previous file list are invalidated.
19
- *
20
- * The component returns `null` when no `mediaProvider` is wired —
21
- * recording without a place to write the captured bytes is a
22
- * misconfiguration, not a feature.
23
- */
24
- import { useCallback } from 'react';
25
- import { RecorderPanel } from './recorder/RecorderPanel.js';
26
- import { useEditorContext } from './EditorContext';
27
- /**
28
- * Insert a narration annotation `{[audio=filename]}` onto the heading
29
- * line currently above the cursor in the Monaco editor. Pure-text
30
- * insertion at the line's end keeps the markdown valid and matches the
31
- * shape `resolveAudioMapping()` reads. Returns true if a heading line
32
- * was found and updated.
33
- */
34
- function annotateMonacoHeading(editor, filename) {
35
- const model = editor.getModel();
36
- if (!model)
37
- return false;
38
- const position = editor.getPosition();
39
- if (!position)
40
- return false;
41
- // Walk upward from the cursor to find the nearest heading line.
42
- for (let line = position.lineNumber; line >= 1; line--) {
43
- const text = model.getLineContent(line);
44
- if (!/^#{1,6}\s/.test(text))
45
- continue;
46
- // Skip if the heading already has an audio annotation — don't
47
- // stomp the user's existing wiring. Add a separate annotation in
48
- // that case wouldn't help either (resolveAudioMapping reads only
49
- // the first audio= entry).
50
- if (/\{\[audio=/.test(text))
51
- return true;
52
- const trimmed = text.replace(/\s+$/, '');
53
- const insertText = ` {[audio=${filename}]}`;
54
- const column = trimmed.length + 1;
55
- editor.executeEdits('recorder-annotation', [
56
- {
57
- range: {
58
- startLineNumber: line,
59
- startColumn: column,
60
- endLineNumber: line,
61
- endColumn: column,
62
- },
63
- text: insertText,
64
- },
65
- ]);
66
- return true;
67
- }
68
- return false;
69
- }
70
- export function RecorderEntry() {
71
- const { mediaProvider, workspaceContainer, activeView, monacoEditor, tiptapEditor, insertAtCursor, bumpMediaRevision, markdownSource, setMarkdownSource, } = useEditorContext();
72
- const handleSave = useCallback((result) => {
73
- bumpMediaRevision();
74
- if (result.source === 'mic') {
75
- // Narration — annotate the nearest heading (drives the
76
- // slideshow narration pipeline at `core/src/doc/audioMapping.ts`)
77
- // *and* insert an inline `<audio controls>` so the user can
78
- // audition the recording inside the editor. The two roles are
79
- // orthogonal: the annotation is metadata for playback timing,
80
- // the HTML tag is an in-editor preview control.
81
- if (activeView === 'raw' && monacoEditor) {
82
- annotateMonacoHeading(monacoEditor, result.filename);
83
- }
84
- const audioTag = `<audio src="${result.relativePath}" controls></audio>`;
85
- if (activeView === 'wysiwyg' && tiptapEditor) {
86
- tiptapEditor
87
- .chain()
88
- .focus()
89
- .insertContent({
90
- type: 'audio',
91
- attrs: { src: result.relativePath, controls: true },
92
- })
93
- .run();
94
- return;
95
- }
96
- if (activeView === 'raw' && monacoEditor) {
97
- // The annotation went onto the heading line; drop the player
98
- // on a fresh line at the cursor.
99
- insertAtCursor(`\n\n${audioTag}\n`);
100
- return;
101
- }
102
- setMarkdownSource(markdownSource ? `${markdownSource}\n\n${audioTag}` : audioTag);
103
- return;
104
- }
105
- // Camera / screen / screen+mic — inline video player. We pin
106
- // width=480 so the editor preview doesn't blow up to natural
107
- // resolution on big monitors; the height is intrinsic, so the
108
- // aspect ratio is preserved regardless of source dimensions.
109
- const videoTag = `<video src="${result.relativePath}" controls width="480"></video>`;
110
- if (activeView === 'wysiwyg' && tiptapEditor) {
111
- tiptapEditor
112
- .chain()
113
- .focus()
114
- .insertContent({
115
- type: 'video',
116
- attrs: { src: result.relativePath, controls: true, width: 480 },
117
- })
118
- .run();
119
- return;
120
- }
121
- if (activeView === 'raw' && monacoEditor) {
122
- insertAtCursor(videoTag);
123
- return;
124
- }
125
- setMarkdownSource(markdownSource ? `${markdownSource}\n\n${videoTag}` : videoTag);
126
- }, [
127
- activeView,
128
- monacoEditor,
129
- tiptapEditor,
130
- insertAtCursor,
131
- bumpMediaRevision,
132
- markdownSource,
133
- setMarkdownSource,
134
- ]);
135
- if (!mediaProvider)
136
- return null;
137
- return (_jsx(RecorderPanel, { mediaProvider: mediaProvider, container: workspaceContainer, onSave: handleSave, className: "squisq-toolbar-button" }));
138
- }
139
- //# sourceMappingURL=RecorderEntry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"RecorderEntry.js","sourceRoot":"","sources":["../src/RecorderEntry.tsx"],"names":[],"mappings":"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"}
@@ -1,15 +0,0 @@
1
- /**
2
- * StatusBar
3
- *
4
- * Bottom status bar showing document statistics and parse status.
5
- */
6
- export interface StatusBarProps {
7
- /** Additional class name */
8
- className?: string;
9
- }
10
- /**
11
- * Status bar displaying document statistics: character count, word count,
12
- * block count, and parse/error status.
13
- */
14
- export declare function StatusBar({ className }: StatusBarProps): import("react/jsx-runtime").JSX.Element;
15
- //# sourceMappingURL=StatusBar.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"StatusBar.d.ts","sourceRoot":"","sources":["../src/StatusBar.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,MAAM,WAAW,cAAc;IAC7B,4BAA4B;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,EAAE,SAAS,EAAE,EAAE,cAAc,2CA6BtD"}
package/dist/StatusBar.js DELETED
@@ -1,24 +0,0 @@
1
- import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
2
- /**
3
- * StatusBar
4
- *
5
- * Bottom status bar showing document statistics and parse status.
6
- */
7
- import { useMemo } from 'react';
8
- import { useEditorContext } from './EditorContext';
9
- /**
10
- * Status bar displaying document statistics: character count, word count,
11
- * block count, and parse/error status.
12
- */
13
- export function StatusBar({ className }) {
14
- const { markdownSource, doc, parseError, isParsing } = useEditorContext();
15
- const stats = useMemo(() => {
16
- const chars = markdownSource.length;
17
- const words = markdownSource.trim() ? markdownSource.trim().split(/\s+/).length : 0;
18
- const lines = markdownSource.split('\n').length;
19
- const blocks = doc?.blocks.length ?? 0;
20
- return { chars, words, lines, blocks };
21
- }, [markdownSource, doc]);
22
- return (_jsxs("div", { className: `squisq-status-bar ${className || ''}`, children: [_jsxs("span", { className: "squisq-status-item", children: [stats.words, " words"] }), _jsxs("span", { className: "squisq-status-item", children: [stats.chars, " chars"] }), _jsxs("span", { className: "squisq-status-item", children: [stats.lines, " lines"] }), _jsxs("span", { className: "squisq-status-item", children: [stats.blocks, " blocks"] }), _jsx("span", { className: "squisq-status-spacer" }), isParsing && _jsx("span", { className: "squisq-status-item squisq-status-parsing", children: "Parsing\u2026" }), parseError && (_jsx("span", { className: "squisq-status-item squisq-status-error", title: parseError, children: "\u26A0 Error" })), !isParsing && !parseError && (_jsx("span", { className: "squisq-status-item squisq-status-ok", children: "\u2713 OK" }))] }));
23
- }
24
- //# sourceMappingURL=StatusBar.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"StatusBar.js","sourceRoot":"","sources":["../src/StatusBar.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAOnD;;;GAGG;AACH,MAAM,UAAU,SAAS,CAAC,EAAE,SAAS,EAAkB;IACrD,MAAM,EAAE,cAAc,EAAE,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,gBAAgB,EAAE,CAAC;IAE1E,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,EAAE;QACzB,MAAM,KAAK,GAAG,cAAc,CAAC,MAAM,CAAC;QACpC,MAAM,KAAK,GAAG,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QACpF,MAAM,KAAK,GAAG,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;QAChD,MAAM,MAAM,GAAG,GAAG,EAAE,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC;QACvC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IACzC,CAAC,EAAE,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC,CAAC;IAE1B,OAAO,CACL,eAAK,SAAS,EAAE,qBAAqB,SAAS,IAAI,EAAE,EAAE,aACpD,gBAAM,SAAS,EAAC,oBAAoB,aAAE,KAAK,CAAC,KAAK,cAAc,EAC/D,gBAAM,SAAS,EAAC,oBAAoB,aAAE,KAAK,CAAC,KAAK,cAAc,EAC/D,gBAAM,SAAS,EAAC,oBAAoB,aAAE,KAAK,CAAC,KAAK,cAAc,EAC/D,gBAAM,SAAS,EAAC,oBAAoB,aAAE,KAAK,CAAC,MAAM,eAAe,EACjE,eAAM,SAAS,EAAC,sBAAsB,GAAG,EACxC,SAAS,IAAI,eAAM,SAAS,EAAC,0CAA0C,8BAAgB,EACvF,UAAU,IAAI,CACb,eAAM,SAAS,EAAC,wCAAwC,EAAC,KAAK,EAAE,UAAU,6BAEnE,CACR,EACA,CAAC,SAAS,IAAI,CAAC,UAAU,IAAI,CAC5B,eAAM,SAAS,EAAC,qCAAqC,0BAAY,CAClE,IACG,CACP,CAAC;AACJ,CAAC"}
@@ -1,20 +0,0 @@
1
- /**
2
- * TemplateAnnotation — Tiptap Heading Extension
3
- *
4
- * Extends Tiptap's built-in Heading node to support `data-template` and
5
- * `data-template-params` HTML attributes. These attributes store which block
6
- * template should be used for a heading section.
7
- *
8
- * When present, the heading renders a visible badge (styled CSS chip)
9
- * showing the template name, e.g. `[chart]`.
10
- *
11
- * The tiptapBridge converts `### Title {[chart]}` markdown into
12
- * `<h3 data-template="chart">Title</h3>` and back, so this extension
13
- * ensures Tiptap's schema preserves those attributes through edits.
14
- */
15
- /**
16
- * HeadingWithTemplate — drop-in replacement for Tiptap's Heading that
17
- * persists template annotation attributes.
18
- */
19
- export declare const HeadingWithTemplate: import("@tiptap/core").Node<import("@tiptap/extension-heading").HeadingOptions, any>;
20
- //# sourceMappingURL=TemplateAnnotation.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TemplateAnnotation.d.ts","sourceRoot":"","sources":["../src/TemplateAnnotation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAKH;;;GAGG;AACH,eAAO,MAAM,mBAAmB,sFA4E9B,CAAC"}
@@ -1,97 +0,0 @@
1
- /**
2
- * TemplateAnnotation — Tiptap Heading Extension
3
- *
4
- * Extends Tiptap's built-in Heading node to support `data-template` and
5
- * `data-template-params` HTML attributes. These attributes store which block
6
- * template should be used for a heading section.
7
- *
8
- * When present, the heading renders a visible badge (styled CSS chip)
9
- * showing the template name, e.g. `[chart]`.
10
- *
11
- * The tiptapBridge converts `### Title {[chart]}` markdown into
12
- * `<h3 data-template="chart">Title</h3>` and back, so this extension
13
- * ensures Tiptap's schema preserves those attributes through edits.
14
- */
15
- import Heading from '@tiptap/extension-heading';
16
- import { templateLabel } from './TemplatePicker';
17
- /**
18
- * HeadingWithTemplate — drop-in replacement for Tiptap's Heading that
19
- * persists template annotation attributes.
20
- */
21
- export const HeadingWithTemplate = Heading.extend({
22
- addAttributes() {
23
- return {
24
- ...this.parent?.(),
25
- dataTemplate: {
26
- default: null,
27
- parseHTML: (element) => element.getAttribute('data-template') || null,
28
- renderHTML: (attributes) => {
29
- if (!attributes.dataTemplate)
30
- return {};
31
- return { 'data-template': attributes.dataTemplate };
32
- },
33
- },
34
- dataTemplateParams: {
35
- default: null,
36
- parseHTML: (element) => element.getAttribute('data-template-params') || null,
37
- renderHTML: (attributes) => {
38
- if (!attributes.dataTemplateParams)
39
- return {};
40
- return { 'data-template-params': attributes.dataTemplateParams };
41
- },
42
- },
43
- };
44
- },
45
- renderHTML({ node, HTMLAttributes }) {
46
- const level = node.attrs.level;
47
- const tag = `h${level}`;
48
- const templateName = HTMLAttributes['data-template'];
49
- // Render heading with a trailing badge span. The badge has no text
50
- // content — its label is painted via CSS `content: attr(data-template-label)`
51
- // so the template name never becomes part of the serialized heading
52
- // text (which would leak into markdown on round-trip).
53
- //
54
- // When no template is set we still render a subtle "empty" badge so
55
- // authors have a visible affordance for opening the template picker
56
- // straight from the heading (matches the clicky chip shown for
57
- // templated headings). The empty variant has no `data-template`
58
- // attribute, so the bridge treats the heading as plain on save.
59
- if (templateName) {
60
- return [
61
- tag,
62
- HTMLAttributes,
63
- ['span', { class: 'squisq-heading-content' }, 0],
64
- [
65
- 'span',
66
- {
67
- class: 'squisq-template-badge',
68
- contenteditable: 'false',
69
- role: 'button',
70
- tabindex: '0',
71
- 'aria-haspopup': 'listbox',
72
- title: 'Change block template',
73
- 'data-template': templateName,
74
- 'data-template-label': templateLabel(templateName),
75
- },
76
- ],
77
- ];
78
- }
79
- return [
80
- tag,
81
- HTMLAttributes,
82
- ['span', { class: 'squisq-heading-content' }, 0],
83
- [
84
- 'span',
85
- {
86
- class: 'squisq-template-badge squisq-template-badge--empty',
87
- contenteditable: 'false',
88
- role: 'button',
89
- tabindex: '0',
90
- 'aria-haspopup': 'listbox',
91
- title: 'Choose block template',
92
- },
93
- ],
94
- ];
95
- },
96
- });
97
- //# sourceMappingURL=TemplateAnnotation.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TemplateAnnotation.js","sourceRoot":"","sources":["../src/TemplateAnnotation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,OAAO,MAAM,2BAA2B,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC;IAChD,aAAa;QACX,OAAO;YACL,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE;YAClB,YAAY,EAAE;gBACZ,OAAO,EAAE,IAAI;gBACb,SAAS,EAAE,CAAC,OAAoB,EAAE,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,eAAe,CAAC,IAAI,IAAI;gBAClF,UAAU,EAAE,CAAC,UAAmC,EAAE,EAAE;oBAClD,IAAI,CAAC,UAAU,CAAC,YAAY;wBAAE,OAAO,EAAE,CAAC;oBACxC,OAAO,EAAE,eAAe,EAAE,UAAU,CAAC,YAAY,EAAE,CAAC;gBACtD,CAAC;aACF;YACD,kBAAkB,EAAE;gBAClB,OAAO,EAAE,IAAI;gBACb,SAAS,EAAE,CAAC,OAAoB,EAAE,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,sBAAsB,CAAC,IAAI,IAAI;gBACzF,UAAU,EAAE,CAAC,UAAmC,EAAE,EAAE;oBAClD,IAAI,CAAC,UAAU,CAAC,kBAAkB;wBAAE,OAAO,EAAE,CAAC;oBAC9C,OAAO,EAAE,sBAAsB,EAAE,UAAU,CAAC,kBAAkB,EAAE,CAAC;gBACnE,CAAC;aACF;SACF,CAAC;IACJ,CAAC;IAED,UAAU,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE;QACjC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;QAC/B,MAAM,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC;QACxB,MAAM,YAAY,GAAG,cAAc,CAAC,eAAe,CAAC,CAAC;QAErD,mEAAmE;QACnE,8EAA8E;QAC9E,oEAAoE;QACpE,uDAAuD;QACvD,EAAE;QACF,oEAAoE;QACpE,oEAAoE;QACpE,+DAA+D;QAC/D,gEAAgE;QAChE,gEAAgE;QAChE,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO;gBACL,GAAG;gBACH,cAAc;gBACd,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,wBAAwB,EAAE,EAAE,CAAC,CAAC;gBAChD;oBACE,MAAM;oBACN;wBACE,KAAK,EAAE,uBAAuB;wBAC9B,eAAe,EAAE,OAAO;wBACxB,IAAI,EAAE,QAAQ;wBACd,QAAQ,EAAE,GAAG;wBACb,eAAe,EAAE,SAAS;wBAC1B,KAAK,EAAE,uBAAuB;wBAC9B,eAAe,EAAE,YAAY;wBAC7B,qBAAqB,EAAE,aAAa,CAAC,YAAY,CAAC;qBACnD;iBACF;aACF,CAAC;QACJ,CAAC;QAED,OAAO;YACL,GAAG;YACH,cAAc;YACd,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,wBAAwB,EAAE,EAAE,CAAC,CAAC;YAChD;gBACE,MAAM;gBACN;oBACE,KAAK,EAAE,oDAAoD;oBAC3D,eAAe,EAAE,OAAO;oBACxB,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,GAAG;oBACb,eAAe,EAAE,SAAS;oBAC1B,KAAK,EAAE,uBAAuB;iBAC/B;aACF;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
@@ -1,53 +0,0 @@
1
- /**
2
- * TemplatePicker
3
- *
4
- * A custom popover that replaces the plain <select> for block templates.
5
- * Each template entry shows a mini wireframe SVG, a human-readable label,
6
- * and a one-sentence description so authors can quickly find the right layout.
7
- */
8
- /**
9
- * Canonical template names known to the picker, in the order they
10
- * appear in the gallery. Exported so callers can hand the same list to
11
- * `recommendTemplatesForBlock()` and stay in sync with the visual
12
- * order.
13
- */
14
- export declare const TEMPLATE_NAMES: readonly string[];
15
- /**
16
- * Convert a camelCase template id to a human-readable label. Accepts both
17
- * the canonical short ids (`title`, `quote`, `map`, `list`) and the
18
- * legacy long ones (`titleBlock`, `quoteBlock`, `mapBlock`, `listBlock`)
19
- * so existing documents keep showing a friendly label without first
20
- * normalizing their annotations.
21
- */
22
- export declare function templateLabel(name: string): string;
23
- export interface TemplatePickerProps {
24
- value: string;
25
- onChange: (name: string) => void;
26
- /** When true, shows only the trigger button (no popover) — used in the overflow menu. */
27
- compact?: boolean;
28
- /**
29
- * Template names to surface in a "Recommended for this block" section
30
- * above the full list. When omitted or empty, the gallery renders as a
31
- * single ungrouped grid (legacy behavior).
32
- */
33
- recommended?: readonly string[];
34
- }
35
- export declare function TemplatePicker({ value, onChange, compact, recommended }: TemplatePickerProps): import("react/jsx-runtime").JSX.Element;
36
- export interface TemplateBadgePopoverProps {
37
- /** DOMRect of the badge that triggered the popover (in viewport coords). */
38
- anchorRect: DOMRect;
39
- /** Currently active template name (empty string for none). */
40
- value: string;
41
- onChange: (name: string) => void;
42
- onClose: () => void;
43
- /** Optional list of template names to surface as "Recommended for this block". */
44
- recommended?: readonly string[];
45
- }
46
- /**
47
- * Standalone popover that mirrors the toolbar `TemplatePicker`'s gallery,
48
- * but is anchored to a caller-supplied DOM rect (typically a clicked
49
- * `.squisq-template-badge` span). Handles its own positioning, outside
50
- * clicks, Escape, and viewport-edge clamping.
51
- */
52
- export declare function TemplateBadgePopover({ anchorRect, value, onChange, onClose, recommended, }: TemplateBadgePopoverProps): import("react").ReactPortal;
53
- //# sourceMappingURL=TemplatePicker.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TemplatePicker.d.ts","sourceRoot":"","sources":["../src/TemplatePicker.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AA2XH;;;;;GAKG;AACH,eAAO,MAAM,cAAc,EAAE,SAAS,MAAM,EAAwC,CAAC;AAErF;;;;;;GAMG;AAEH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAOlD;AAgBD,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,yFAAyF;IACzF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;OAIG;IACH,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACjC;AAED,wBAAgB,cAAc,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,EAAE,mBAAmB,2CA0J5F;AA8GD,MAAM,WAAW,yBAAyB;IACxC,4EAA4E;IAC5E,UAAU,EAAE,OAAO,CAAC;IACpB,8DAA8D;IAC9D,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,kFAAkF;IAClF,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACjC;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,EACnC,UAAU,EACV,KAAK,EACL,QAAQ,EACR,OAAO,EACP,WAAW,GACZ,EAAE,yBAAyB,+BA6C3B"}