@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,388 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- /**
3
- * TemplatePicker
4
- *
5
- * A custom popover that replaces the plain <select> for block templates.
6
- * Each template entry shows a mini wireframe SVG, a human-readable label,
7
- * and a one-sentence description so authors can quickly find the right layout.
8
- */
9
- import { useEffect, useRef, useState } from 'react';
10
- import { createPortal } from 'react-dom';
11
- const W = 56;
12
- const H = 40;
13
- /** Neutral fill for structural shapes */
14
- const F1 = '#d1d5db';
15
- /** Slightly darker fill for important / featured elements */
16
- const F2 = '#9ca3af';
17
- /** Accent fill (stat number, image, play button) */
18
- const FA = '#818cf8';
19
- function TemplateIcon({ children }) {
20
- return (_jsx("svg", { width: W, height: H, viewBox: `0 0 ${W} ${H}`, "aria-hidden": "true", className: "squisq-template-picker-icon", children: children }));
21
- }
22
- const NONE_ENTRY = {
23
- name: '',
24
- label: '— none —',
25
- description: 'Plain heading block with no visual template.',
26
- icon: (_jsxs(TemplateIcon, { children: [_jsx("rect", { x: 4, y: 4, width: 48, height: 32, rx: 2, fill: "none", stroke: F1, strokeWidth: 1.5, strokeDasharray: "3 2" }), _jsx("rect", { x: 12, y: 15, width: 32, height: 4, rx: 1, fill: F1 }), _jsx("rect", { x: 16, y: 22, width: 24, height: 3, rx: 1, fill: F1, opacity: 0.6 })] })),
27
- };
28
- const TEMPLATE_ENTRIES = [
29
- {
30
- name: 'title',
31
- label: 'Title',
32
- description: 'A bold opening slide with large title text, perfect for covers and chapters.',
33
- icon: (_jsxs(TemplateIcon, { children: [_jsx("rect", { x: 4, y: 4, width: 48, height: 32, rx: 2, fill: F1, opacity: 0.3 }), _jsx("rect", { x: 8, y: 11, width: 40, height: 8, rx: 1, fill: FA }), _jsx("rect", { x: 14, y: 23, width: 28, height: 3, rx: 1, fill: F2 }), _jsx("rect", { x: 20, y: 29, width: 16, height: 2, rx: 1, fill: F1 })] })),
34
- },
35
- {
36
- name: 'sectionHeader',
37
- label: 'Section Header',
38
- description: 'A clean section break with a prominent title and optional subtitle.',
39
- icon: (_jsxs(TemplateIcon, { children: [_jsx("rect", { x: 4, y: 4, width: 3, height: 32, rx: 1, fill: FA }), _jsx("rect", { x: 11, y: 8, width: 36, height: 6, rx: 1, fill: F2 }), _jsx("rect", { x: 11, y: 18, width: 28, height: 3, rx: 1, fill: F1 }), _jsx("rect", { x: 11, y: 24, width: 20, height: 2.5, rx: 1, fill: F1, opacity: 0.7 })] })),
40
- },
41
- {
42
- name: 'statHighlight',
43
- label: 'Stat Highlight',
44
- description: 'Showcases a single key number or metric with supporting context.',
45
- icon: (_jsxs(TemplateIcon, { children: [_jsx("rect", { x: 14, y: 4, width: 28, height: 16, rx: 2, fill: FA }), _jsx("rect", { x: 10, y: 24, width: 36, height: 3.5, rx: 1, fill: F2 }), _jsx("rect", { x: 16, y: 30, width: 24, height: 2.5, rx: 1, fill: F1 })] })),
46
- },
47
- {
48
- name: 'quote',
49
- label: 'Quote',
50
- description: 'Displays a stylized pull quote with decorative marks and attribution.',
51
- icon: (_jsxs(TemplateIcon, { children: [_jsx("text", { x: 5, y: 18, fontSize: 18, fill: FA, fontFamily: "serif", fontWeight: "bold", opacity: 0.7, children: "\"" }), _jsx("rect", { x: 16, y: 8, width: 36, height: 4, rx: 1, fill: F2 }), _jsx("rect", { x: 16, y: 15, width: 32, height: 4, rx: 1, fill: F2 }), _jsx("rect", { x: 16, y: 22, width: 24, height: 4, rx: 1, fill: F2 }), _jsx("rect", { x: 16, y: 31, width: 18, height: 2.5, rx: 1, fill: F1 })] })),
52
- },
53
- {
54
- name: 'factCard',
55
- label: 'Fact Card',
56
- description: 'Presents a focused fact or insight with a labeled header and body text.',
57
- icon: (_jsxs(TemplateIcon, { children: [_jsx("rect", { x: 4, y: 4, width: 20, height: 6, rx: 3, fill: FA, opacity: 0.8 }), _jsx("rect", { x: 4, y: 14, width: 48, height: 5, rx: 1, fill: F2 }), _jsx("rect", { x: 4, y: 22, width: 44, height: 3.5, rx: 1, fill: F1 }), _jsx("rect", { x: 4, y: 28, width: 36, height: 3, rx: 1, fill: F1, opacity: 0.7 })] })),
58
- },
59
- {
60
- name: 'twoColumn',
61
- label: 'Two Column',
62
- description: 'Divides the slide into two equal side-by-side content columns.',
63
- icon: (_jsxs(TemplateIcon, { children: [_jsx("rect", { x: 3, y: 4, width: 23, height: 32, rx: 2, fill: F1, opacity: 0.4 }), _jsx("rect", { x: 3, y: 4, width: 23, height: 7, rx: 2, fill: F2, opacity: 0.6 }), _jsx("rect", { x: 6, y: 15, width: 17, height: 3, rx: 1, fill: F1 }), _jsx("rect", { x: 6, y: 21, width: 14, height: 2.5, rx: 1, fill: F1, opacity: 0.7 }), _jsx("rect", { x: 30, y: 4, width: 23, height: 32, rx: 2, fill: F1, opacity: 0.4 }), _jsx("rect", { x: 30, y: 4, width: 23, height: 7, rx: 2, fill: F2, opacity: 0.6 }), _jsx("rect", { x: 33, y: 15, width: 17, height: 3, rx: 1, fill: F1 }), _jsx("rect", { x: 33, y: 21, width: 14, height: 2.5, rx: 1, fill: F1, opacity: 0.7 })] })),
64
- },
65
- {
66
- name: 'dateEvent',
67
- label: 'Date Event',
68
- description: 'Highlights a date-based event or milestone with a prominent date display.',
69
- icon: (_jsxs(TemplateIcon, { children: [_jsx("rect", { x: 3, y: 4, width: 18, height: 18, rx: 3, fill: FA, opacity: 0.85 }), _jsx("rect", { x: 6, y: 8, width: 12, height: 2, rx: 1, fill: "white", opacity: 0.7 }), _jsx("rect", { x: 6, y: 13, width: 12, height: 6, rx: 1, fill: "white", opacity: 0.5 }), _jsx("rect", { x: 25, y: 6, width: 27, height: 5, rx: 1, fill: F2 }), _jsx("rect", { x: 25, y: 15, width: 22, height: 3, rx: 1, fill: F1 }), _jsx("rect", { x: 25, y: 21, width: 16, height: 2.5, rx: 1, fill: F1, opacity: 0.7 }), _jsx("rect", { x: 3, y: 27, width: 50, height: 2.5, rx: 1, fill: F1, opacity: 0.5 }), _jsx("rect", { x: 3, y: 32, width: 40, height: 2, rx: 1, fill: F1, opacity: 0.4 })] })),
70
- },
71
- {
72
- name: 'imageWithCaption',
73
- label: 'Image with Caption',
74
- description: 'Displays a full-bleed image with an optional caption below.',
75
- icon: (_jsxs(TemplateIcon, { children: [_jsx("rect", { x: 3, y: 3, width: 50, height: 28, rx: 2, fill: F2, opacity: 0.5 }), _jsx("line", { x1: 3, y1: 14, x2: 53, y2: 14, stroke: "white", strokeWidth: 0.5, opacity: 0.3 }), _jsx("polygon", { points: "22,10 22,20 32,15", fill: "white", opacity: 0.4 }), _jsx("rect", { x: 10, y: 35, width: 36, height: 2.5, rx: 1, fill: F1 })] })),
76
- },
77
- {
78
- name: 'leftFeature',
79
- label: 'Left Feature',
80
- description: 'Image on the left, title and body text stacked on the right.',
81
- icon: (_jsxs(TemplateIcon, { children: [_jsx("rect", { x: 3, y: 4, width: 24, height: 32, rx: 2, fill: F2, opacity: 0.55 }), _jsx("polygon", { points: "11,16 11,24 19,20", fill: "white", opacity: 0.5 }), _jsx("rect", { x: 31, y: 9, width: 20, height: 4, rx: 1, fill: FA }), _jsx("rect", { x: 31, y: 17, width: 22, height: 2.5, rx: 1, fill: F1 }), _jsx("rect", { x: 31, y: 22, width: 22, height: 2.5, rx: 1, fill: F1, opacity: 0.75 }), _jsx("rect", { x: 31, y: 27, width: 16, height: 2.5, rx: 1, fill: F1, opacity: 0.6 })] })),
82
- },
83
- {
84
- name: 'rightFeature',
85
- label: 'Right Feature',
86
- description: 'Image on the right, title and body text stacked on the left.',
87
- icon: (_jsxs(TemplateIcon, { children: [_jsx("rect", { x: 29, y: 4, width: 24, height: 32, rx: 2, fill: F2, opacity: 0.55 }), _jsx("polygon", { points: "37,16 37,24 45,20", fill: "white", opacity: 0.5 }), _jsx("rect", { x: 3, y: 9, width: 20, height: 4, rx: 1, fill: FA }), _jsx("rect", { x: 3, y: 17, width: 22, height: 2.5, rx: 1, fill: F1 }), _jsx("rect", { x: 3, y: 22, width: 22, height: 2.5, rx: 1, fill: F1, opacity: 0.75 }), _jsx("rect", { x: 3, y: 27, width: 16, height: 2.5, rx: 1, fill: F1, opacity: 0.6 })] })),
88
- },
89
- {
90
- name: 'map',
91
- label: 'Map',
92
- description: 'Embeds an interactive map centered on a geographic location.',
93
- icon: (_jsxs(TemplateIcon, { children: [_jsx("rect", { x: 3, y: 3, width: 50, height: 34, rx: 2, fill: F1, opacity: 0.3 }), _jsx("line", { x1: 3, y1: 13, x2: 53, y2: 13, stroke: F1, strokeWidth: 1 }), _jsx("line", { x1: 3, y1: 23, x2: 53, y2: 23, stroke: F1, strokeWidth: 1 }), _jsx("line", { x1: 18, y1: 3, x2: 18, y2: 37, stroke: F1, strokeWidth: 1 }), _jsx("line", { x1: 38, y1: 3, x2: 38, y2: 37, stroke: F1, strokeWidth: 1 }), _jsx("circle", { cx: 28, cy: 18, r: 4, fill: FA, opacity: 0.8 }), _jsx("line", { x1: 28, y1: 22, x2: 28, y2: 26, stroke: FA, strokeWidth: 1.5, opacity: 0.6 })] })),
94
- },
95
- {
96
- name: 'fullBleedQuote',
97
- label: 'Full Bleed Quote',
98
- description: 'A full-width quote that spans the entire slide for maximum impact.',
99
- icon: (_jsxs(TemplateIcon, { children: [_jsx("rect", { x: 4, y: 4, width: 48, height: 32, rx: 2, fill: F2, opacity: 0.2 }), _jsx("text", { x: 5, y: 15, fontSize: 16, fill: FA, fontFamily: "serif", fontWeight: "bold", opacity: 0.8, children: "\"" }), _jsx("rect", { x: 4, y: 14, width: 48, height: 5, rx: 1, fill: F2 }), _jsx("rect", { x: 4, y: 22, width: 44, height: 5, rx: 1, fill: F2 }), _jsx("rect", { x: 4, y: 30, width: 30, height: 4, rx: 1, fill: F2, opacity: 0.7 })] })),
100
- },
101
- {
102
- name: 'list',
103
- label: 'List',
104
- description: 'Renders a bulleted or numbered list in a clean, card-style layout.',
105
- icon: (_jsxs(TemplateIcon, { children: [_jsx("rect", { x: 4, y: 5, width: 6, height: 5, rx: 3, fill: FA, opacity: 0.8 }), _jsx("rect", { x: 14, y: 6, width: 38, height: 4, rx: 1, fill: F2 }), _jsx("rect", { x: 4, y: 17, width: 6, height: 5, rx: 3, fill: FA, opacity: 0.8 }), _jsx("rect", { x: 14, y: 18, width: 34, height: 4, rx: 1, fill: F2 }), _jsx("rect", { x: 4, y: 29, width: 6, height: 5, rx: 3, fill: FA, opacity: 0.8 }), _jsx("rect", { x: 14, y: 30, width: 36, height: 4, rx: 1, fill: F2 })] })),
106
- },
107
- {
108
- name: 'photoGrid',
109
- label: 'Photo Grid',
110
- description: 'Arranges multiple photos in a 2×2 or 3×3 mosaic grid.',
111
- icon: (_jsxs(TemplateIcon, { children: [_jsx("rect", { x: 3, y: 3, width: 23, height: 16, rx: 1.5, fill: F2, opacity: 0.55 }), _jsx("rect", { x: 30, y: 3, width: 23, height: 16, rx: 1.5, fill: F2, opacity: 0.7 }), _jsx("rect", { x: 3, y: 22, width: 23, height: 16, rx: 1.5, fill: F2, opacity: 0.8 }), _jsx("rect", { x: 30, y: 22, width: 23, height: 16, rx: 1.5, fill: F2, opacity: 0.5 })] })),
112
- },
113
- {
114
- name: 'definitionCard',
115
- label: 'Definition Card',
116
- description: 'Shows a term and its definition in a structured, dictionary-style card.',
117
- icon: (_jsxs(TemplateIcon, { children: [_jsx("rect", { x: 4, y: 6, width: 32, height: 6, rx: 1, fill: FA, opacity: 0.8 }), _jsx("rect", { x: 4, y: 17, width: 48, height: 3.5, rx: 1, fill: F1 }), _jsx("rect", { x: 4, y: 23, width: 44, height: 3, rx: 1, fill: F1, opacity: 0.8 }), _jsx("rect", { x: 4, y: 29, width: 36, height: 3, rx: 1, fill: F1, opacity: 0.6 })] })),
118
- },
119
- {
120
- name: 'comparisonBar',
121
- label: 'Comparison Bar',
122
- description: 'Visualizes two or more values side-by-side with labeled horizontal bars.',
123
- icon: (_jsxs(TemplateIcon, { children: [_jsx("rect", { x: 4, y: 5, width: 14, height: 3, rx: 1, fill: F1 }), _jsx("rect", { x: 20, y: 4, width: 32, height: 5, rx: 1, fill: FA, opacity: 0.85 }), _jsx("rect", { x: 4, y: 16, width: 14, height: 3, rx: 1, fill: F1 }), _jsx("rect", { x: 20, y: 15, width: 22, height: 5, rx: 1, fill: F2, opacity: 0.7 }), _jsx("rect", { x: 4, y: 27, width: 14, height: 3, rx: 1, fill: F1 }), _jsx("rect", { x: 20, y: 26, width: 28, height: 5, rx: 1, fill: F2, opacity: 0.5 })] })),
124
- },
125
- {
126
- name: 'pullQuote',
127
- label: 'Pull Quote',
128
- description: 'A stylized pull quote with large decorative marks and centered text.',
129
- icon: (_jsxs(TemplateIcon, { children: [_jsx("text", { x: 3, y: 20, fontSize: 26, fill: FA, fontFamily: "serif", opacity: 0.5, children: "\"" }), _jsx("rect", { x: 16, y: 7, width: 36, height: 4.5, rx: 1, fill: F2 }), _jsx("rect", { x: 16, y: 15, width: 34, height: 4.5, rx: 1, fill: F2 }), _jsx("rect", { x: 16, y: 23, width: 28, height: 4.5, rx: 1, fill: F2 }), _jsx("rect", { x: 32, y: 31, width: 20, height: 3, rx: 1, fill: F1 }), _jsx("text", { x: 44, y: 42, fontSize: 26, fill: FA, fontFamily: "serif", opacity: 0.3, children: "\"" })] })),
130
- },
131
- {
132
- name: 'videoWithCaption',
133
- label: 'Video with Caption',
134
- description: 'Embeds a video player with an optional caption below.',
135
- icon: (_jsxs(TemplateIcon, { children: [_jsx("rect", { x: 3, y: 3, width: 50, height: 28, rx: 2, fill: F1, opacity: 0.4 }), _jsx("rect", { x: 3, y: 3, width: 50, height: 28, rx: 2, fill: F2, opacity: 0.25 }), _jsx("circle", { cx: 28, cy: 17, r: 8, fill: FA, opacity: 0.7 }), _jsx("polygon", { points: "25,13 25,21 33,17", fill: "white" }), _jsx("rect", { x: 10, y: 35, width: 36, height: 2.5, rx: 1, fill: F1 })] })),
136
- },
137
- {
138
- name: 'videoPullQuote',
139
- label: 'Video Pull Quote',
140
- description: 'Combines a video panel with a highlighted pull quote side-by-side.',
141
- icon: (_jsxs(TemplateIcon, { children: [_jsx("rect", { x: 3, y: 4, width: 23, height: 32, rx: 2, fill: F2, opacity: 0.35 }), _jsx("circle", { cx: 14.5, cy: 20, r: 6, fill: FA, opacity: 0.65 }), _jsx("polygon", { points: "12,17 12,23 18,20", fill: "white" }), _jsx("rect", { x: 30, y: 4, width: 23, height: 32, rx: 2, fill: F1, opacity: 0.3 }), _jsx("text", { x: 32, y: 16, fontSize: 12, fill: FA, fontFamily: "serif", opacity: 0.6, children: "\"" }), _jsx("rect", { x: 30, y: 17, width: 20, height: 3.5, rx: 1, fill: F2 }), _jsx("rect", { x: 30, y: 23, width: 18, height: 3, rx: 1, fill: F1 }), _jsx("rect", { x: 30, y: 29, width: 14, height: 2.5, rx: 1, fill: F1, opacity: 0.7 })] })),
142
- },
143
- {
144
- name: 'dataTable',
145
- label: 'Data Table',
146
- description: 'Renders tabular data in a clean, styled table with a header row.',
147
- icon: (_jsxs(TemplateIcon, { children: [_jsx("rect", { x: 3, y: 3, width: 50, height: 8, rx: 1.5, fill: FA, opacity: 0.7 }), _jsx("rect", { x: 3, y: 13, width: 50, height: 6, rx: 1, fill: F1, opacity: 0.5 }), _jsx("rect", { x: 3, y: 21, width: 50, height: 6, rx: 1, fill: F1, opacity: 0.35 }), _jsx("rect", { x: 3, y: 29, width: 50, height: 6, rx: 1, fill: F1, opacity: 0.5 }), _jsx("line", { x1: 20, y1: 3, x2: 20, y2: 35, stroke: "white", strokeWidth: 1, opacity: 0.4 }), _jsx("line", { x1: 37, y1: 3, x2: 37, y2: 35, stroke: "white", strokeWidth: 1, opacity: 0.4 })] })),
148
- },
149
- ];
150
- /**
151
- * Canonical template names known to the picker, in the order they
152
- * appear in the gallery. Exported so callers can hand the same list to
153
- * `recommendTemplatesForBlock()` and stay in sync with the visual
154
- * order.
155
- */
156
- export const TEMPLATE_NAMES = TEMPLATE_ENTRIES.map((e) => e.name);
157
- /**
158
- * Convert a camelCase template id to a human-readable label. Accepts both
159
- * the canonical short ids (`title`, `quote`, `map`, `list`) and the
160
- * legacy long ones (`titleBlock`, `quoteBlock`, `mapBlock`, `listBlock`)
161
- * so existing documents keep showing a friendly label without first
162
- * normalizing their annotations.
163
- */
164
- // eslint-disable-next-line react-refresh/only-export-components
165
- export function templateLabel(name) {
166
- if (!name)
167
- return '— none —';
168
- const resolved = TEMPLATE_NAME_ALIASES[name] ?? name;
169
- const entry = TEMPLATE_ENTRIES.find((e) => e.name === resolved);
170
- if (entry)
171
- return entry.label;
172
- // Fallback: split camelCase
173
- return resolved.replace(/([A-Z])/g, ' $1').replace(/^./, (s) => s.toUpperCase());
174
- }
175
- /**
176
- * Legacy template id → canonical short id. Kept inline to avoid pulling
177
- * the core package's runtime registry into the picker's bundle — the
178
- * picker only needs this for label resolution.
179
- */
180
- const TEMPLATE_NAME_ALIASES = {
181
- titleBlock: 'title',
182
- quoteBlock: 'quote',
183
- mapBlock: 'map',
184
- listBlock: 'list',
185
- };
186
- export function TemplatePicker({ value, onChange, compact, recommended }) {
187
- const [open, setOpen] = useState(false);
188
- const [popoverStyle, setPopoverStyle] = useState({});
189
- const containerRef = useRef(null);
190
- const triggerRef = useRef(null);
191
- // Position the portal popover below the trigger button. Clamp the
192
- // left edge so the gallery (up to 780px wide) doesn't overflow the
193
- // viewport when the toolbar trigger sits near the right edge of the
194
- // window — previously the popover was left-aligned to the trigger,
195
- // which pushed half the cards off-screen at narrow widths.
196
- const updatePosition = () => {
197
- if (!triggerRef.current)
198
- return;
199
- const rect = triggerRef.current.getBoundingClientRect();
200
- const popoverEl = document.getElementById('squisq-template-gallery-portal');
201
- // Use the actual rendered width if the popover is already mounted;
202
- // otherwise fall back to the CSS-defined max so the first paint
203
- // doesn't overflow either. Measure the portal element directly —
204
- // its `firstElementChild` is the (small) "(none)" option, not the
205
- // gallery itself.
206
- const popoverWidth = popoverEl?.getBoundingClientRect().width ?? 780;
207
- const margin = 8;
208
- const maxLeft = Math.max(margin, window.innerWidth - popoverWidth - margin);
209
- const left = Math.min(Math.max(margin, rect.left), maxLeft);
210
- setPopoverStyle({
211
- position: 'fixed',
212
- top: rect.bottom + 6,
213
- left,
214
- zIndex: 9999,
215
- });
216
- };
217
- const handleOpen = () => {
218
- updatePosition();
219
- setOpen((v) => !v);
220
- };
221
- // Close on outside click
222
- useEffect(() => {
223
- if (!open)
224
- return;
225
- const handler = (e) => {
226
- const target = e.target;
227
- const inTrigger = triggerRef.current?.contains(target);
228
- const inPopover = document.getElementById('squisq-template-gallery-portal')?.contains(target);
229
- if (!inTrigger && !inPopover) {
230
- setOpen(false);
231
- }
232
- };
233
- document.addEventListener('mousedown', handler);
234
- return () => document.removeEventListener('mousedown', handler);
235
- }, [open]);
236
- // Close on Escape
237
- useEffect(() => {
238
- if (!open)
239
- return;
240
- const handler = (e) => {
241
- if (e.key === 'Escape')
242
- setOpen(false);
243
- };
244
- document.addEventListener('keydown', handler);
245
- return () => document.removeEventListener('keydown', handler);
246
- }, [open]);
247
- // Reposition on scroll/resize while open
248
- useEffect(() => {
249
- if (!open)
250
- return;
251
- // Reposition once on the next frame so the clamp uses the actual
252
- // rendered popover width (the initial open() runs before mount).
253
- requestAnimationFrame(updatePosition);
254
- const handler = () => updatePosition();
255
- window.addEventListener('scroll', handler, true);
256
- window.addEventListener('resize', handler);
257
- return () => {
258
- window.removeEventListener('scroll', handler, true);
259
- window.removeEventListener('resize', handler);
260
- };
261
- }, [open]);
262
- const handleSelect = (name) => {
263
- onChange(name);
264
- setOpen(false);
265
- };
266
- const currentLabel = templateLabel(value);
267
- const currentEntry = (value && TEMPLATE_ENTRIES.find((e) => e.name === value)) || NONE_ENTRY;
268
- if (compact) {
269
- // In overflow menu, use a simple select for space efficiency
270
- const all = [NONE_ENTRY, ...TEMPLATE_ENTRIES];
271
- return (_jsx("select", { className: "squisq-template-picker-select", value: value, onChange: (e) => onChange(e.target.value), children: all.map((e) => (_jsx("option", { value: e.name, children: e.label }, e.name))) }));
272
- }
273
- const gallery = open
274
- ? createPortal(_jsx(TemplateGalleryBody, { value: value, onSelect: handleSelect, style: popoverStyle, recommended: recommended }), document.body)
275
- : null;
276
- return (_jsxs("div", { className: "squisq-template-picker-popover-host", ref: containerRef, children: [_jsxs("button", { ref: triggerRef, type: "button", className: `squisq-template-picker-trigger${open ? ' squisq-template-picker-trigger--open' : ''}`, onClick: handleOpen, "aria-haspopup": "listbox", "aria-expanded": open, title: "Choose block template", children: [_jsx("span", { className: "squisq-template-picker-trigger-label", children: "Block:" }), _jsx("span", { className: "squisq-template-picker-trigger-thumb", "aria-hidden": "true", children: currentEntry.icon }), _jsx("span", { className: "squisq-template-picker-trigger-value", children: value ? currentLabel : '(No visual)' }), _jsx("svg", { className: "squisq-template-picker-trigger-caret", width: "10", height: "10", viewBox: "0 0 10 10", fill: "currentColor", "aria-hidden": "true", children: _jsx("path", { d: "M2 3.5l3 3 3-3", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", fill: "none" }) })] }), gallery] }));
277
- }
278
- // ── Reusable gallery body ──────────────────────────────────────────
279
- /**
280
- * The popover/grid markup shared by the toolbar `TemplatePicker` and the
281
- * inline `TemplateBadgeMenu`. Renders all template cards plus the
282
- * "(none)" option; no positioning logic — callers supply `style` (typically
283
- * a `position: fixed` rect from `getBoundingClientRect()`).
284
- */
285
- function TemplateCard({ entry, value, onSelect, }) {
286
- return (_jsxs("button", { type: "button", role: "option", "aria-selected": value === entry.name, className: `squisq-template-gallery-card${value === entry.name ? ' squisq-template-gallery-card--selected' : ''}`, onClick: () => onSelect(entry.name), title: entry.description, children: [_jsx("div", { className: "squisq-template-gallery-card-icon", children: entry.icon }), _jsxs("div", { className: "squisq-template-gallery-card-body", children: [_jsx("span", { className: "squisq-template-gallery-card-name", children: entry.label }), _jsx("span", { className: "squisq-template-gallery-card-desc", children: entry.description })] })] }));
287
- }
288
- function TemplateGalleryBody({ value, onSelect, style, recommended, }) {
289
- const recommendedSet = recommended && recommended.length > 0 ? new Set(recommended) : null;
290
- const recommendedEntries = recommendedSet
291
- ? TEMPLATE_ENTRIES.filter((e) => recommendedSet.has(e.name))
292
- : [];
293
- const restEntries = recommendedSet
294
- ? TEMPLATE_ENTRIES.filter((e) => !recommendedSet.has(e.name))
295
- : TEMPLATE_ENTRIES;
296
- const segmented = recommendedEntries.length > 0;
297
- return (_jsxs("div", { id: "squisq-template-gallery-portal", className: `squisq-template-gallery${segmented ? ' squisq-template-gallery--segmented' : ''}`, role: "listbox", "aria-label": "Block templates", style: style, children: [_jsxs("button", { type: "button", role: "option", "aria-selected": value === '', className: `squisq-template-gallery-none${value === '' ? ' squisq-template-gallery-card--selected' : ''}`, onClick: () => onSelect(''), children: [NONE_ENTRY.icon, _jsx("span", { className: "squisq-template-gallery-none-label", children: NONE_ENTRY.label }), _jsx("span", { className: "squisq-template-gallery-none-desc", children: NONE_ENTRY.description })] }), segmented && (_jsxs("div", { className: "squisq-template-gallery-section", children: [_jsx("h3", { className: "squisq-template-gallery-section-title", children: "Recommended for this block" }), _jsx("div", { className: "squisq-template-gallery-grid", children: recommendedEntries.map((entry) => (_jsx(TemplateCard, { entry: entry, value: value, onSelect: onSelect }, entry.name))) })] })), segmented ? (_jsxs("div", { className: "squisq-template-gallery-section", children: [_jsx("h3", { className: "squisq-template-gallery-section-title", children: "All templates" }), _jsx("div", { className: "squisq-template-gallery-grid", children: restEntries.map((entry) => (_jsx(TemplateCard, { entry: entry, value: value, onSelect: onSelect }, entry.name))) })] })) : (_jsx("div", { className: "squisq-template-gallery-grid", children: restEntries.map((entry) => (_jsx(TemplateCard, { entry: entry, value: value, onSelect: onSelect }, entry.name))) }))] }));
298
- }
299
- /**
300
- * Standalone popover that mirrors the toolbar `TemplatePicker`'s gallery,
301
- * but is anchored to a caller-supplied DOM rect (typically a clicked
302
- * `.squisq-template-badge` span). Handles its own positioning, outside
303
- * clicks, Escape, and viewport-edge clamping.
304
- */
305
- export function TemplateBadgePopover({ anchorRect, value, onChange, onClose, recommended, }) {
306
- const [style, setStyle] = useState(() => computePopoverStyle(anchorRect));
307
- // Reposition once after mount using the actual rendered popover width.
308
- useEffect(() => {
309
- requestAnimationFrame(() => setStyle(computePopoverStyle(anchorRect)));
310
- }, [anchorRect]);
311
- // Outside click + Escape close
312
- useEffect(() => {
313
- const onKey = (e) => {
314
- if (e.key === 'Escape')
315
- onClose();
316
- };
317
- const onMouse = (e) => {
318
- const target = e.target;
319
- const inPopover = document.getElementById('squisq-template-gallery-portal')?.contains(target);
320
- if (!inPopover)
321
- onClose();
322
- };
323
- // Defer the mousedown listener by one frame so the click that opened
324
- // us doesn't immediately close us.
325
- const id = requestAnimationFrame(() => {
326
- document.addEventListener('mousedown', onMouse);
327
- });
328
- document.addEventListener('keydown', onKey);
329
- return () => {
330
- cancelAnimationFrame(id);
331
- document.removeEventListener('mousedown', onMouse);
332
- document.removeEventListener('keydown', onKey);
333
- };
334
- }, [onClose]);
335
- const handleSelect = (name) => {
336
- onChange(name);
337
- onClose();
338
- };
339
- return createPortal(_jsx(TemplateGalleryBody, { value: value, onSelect: handleSelect, style: style, recommended: recommended }), document.body);
340
- }
341
- function computePopoverStyle(rect) {
342
- // The portal *is* the gallery (`#squisq-template-gallery-portal` is the
343
- // outer `.squisq-template-gallery` div). Measure it directly — using
344
- // `firstElementChild` returns the "(none)" option, which is ~50px tall
345
- // and made the "fits below" check incorrectly pass on tall galleries.
346
- const popoverEl = document.getElementById('squisq-template-gallery-portal');
347
- const popoverRect = popoverEl?.getBoundingClientRect();
348
- const popoverWidth = popoverRect?.width ?? 780;
349
- const popoverHeight = popoverRect?.height ?? 520;
350
- const margin = 8;
351
- const gap = 6;
352
- const vw = window.innerWidth;
353
- const vh = window.innerHeight;
354
- // Vertical placement: prefer below the badge, fall back to above.
355
- // If neither fits, center the popover in the viewport (dialog-style)
356
- // so the gallery is always fully visible no matter where the chip
357
- // sits in the editor (top, middle, bottom).
358
- const spaceBelow = vh - rect.bottom - margin;
359
- const spaceAbove = rect.top - margin;
360
- let top;
361
- let left;
362
- if (popoverHeight + gap <= spaceBelow) {
363
- top = rect.bottom + gap;
364
- const maxLeft = Math.max(margin, vw - popoverWidth - margin);
365
- left = Math.min(Math.max(margin, rect.left), maxLeft);
366
- }
367
- else if (popoverHeight + gap <= spaceAbove) {
368
- top = rect.top - popoverHeight - gap;
369
- const maxLeft = Math.max(margin, vw - popoverWidth - margin);
370
- left = Math.min(Math.max(margin, rect.left), maxLeft);
371
- }
372
- else {
373
- // Center it.
374
- top = Math.max(margin, Math.floor((vh - popoverHeight) / 2));
375
- left = Math.max(margin, Math.floor((vw - popoverWidth) / 2));
376
- }
377
- return {
378
- position: 'fixed',
379
- top,
380
- left,
381
- // Cap height so an oversized gallery still fits and scrolls
382
- // gracefully instead of pushing past the viewport.
383
- maxHeight: `${vh - 2 * margin}px`,
384
- overflowY: 'auto',
385
- zIndex: 9999,
386
- };
387
- }
388
- //# sourceMappingURL=TemplatePicker.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TemplatePicker.js","sourceRoot":"","sources":["../src/TemplatePicker.tsx"],"names":[],"mappings":"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"}
@@ -1,32 +0,0 @@
1
- /**
2
- * ThemeCustomizerPanel
3
- *
4
- * Drop-in toolbar button + popover that lets the user author a custom
5
- * Theme by picking seed colors, fonts, and a few thematic presets.
6
- *
7
- * Design:
8
- * - **Controlled component** — host owns the `value` and forwards
9
- * `onChange` whenever the user edits anything. This avoids coupling
10
- * the panel to any specific preview wiring; the host decides whether
11
- * to register the theme, set it as the preview theme, persist it, etc.
12
- * - **Subset of the Theme schema** — the panel exposes seed colors,
13
- * curated/free-text fonts, and a handful of preset groups. Everything
14
- * else (templateHints, layoutOverrides, persistentLayers, individual
15
- * colorSchemes, animation defaults) inherits from the compiler's
16
- * STARTER_THEME and can only be edited by hand-modifying the JSON.
17
- * - **Industry-standard mental model** — primary / secondary / accent +
18
- * derived lighter/darker variants, like Material UI / Tailwind / Radix.
19
- */
20
- import type { Theme } from '@bendyline/squisq/schemas';
21
- export interface ThemeCustomizerPanelProps {
22
- /** Current custom theme (or null to start from defaults). */
23
- value: Theme | null;
24
- /** Fired on every edit. Host typically registers the theme + previews it. */
25
- onChange: (theme: Theme) => void;
26
- /** Fired when the user clicks Save. Host typically persists the theme JSON. */
27
- onSave?: (theme: Theme, json: string) => void;
28
- /** Fired when the user clicks Reset. Host typically clears its persistent storage. */
29
- onReset?: () => void;
30
- }
31
- export declare function ThemeCustomizerPanel({ value, onChange, onSave, onReset, }: ThemeCustomizerPanelProps): import("react/jsx-runtime").JSX.Element;
32
- //# sourceMappingURL=ThemeCustomizerPanel.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ThemeCustomizerPanel.d.ts","sourceRoot":"","sources":["../src/ThemeCustomizerPanel.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAGH,OAAO,KAAK,EAAE,KAAK,EAA+B,MAAM,2BAA2B,CAAC;AA6LpF,MAAM,WAAW,yBAAyB;IACxC,6DAA6D;IAC7D,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,6EAA6E;IAC7E,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,+EAA+E;IAC/E,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,sFAAsF;IACtF,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,wBAAgB,oBAAoB,CAAC,EACnC,KAAK,EACL,QAAQ,EACR,MAAM,EACN,OAAO,GACR,EAAE,yBAAyB,2CA6N3B"}