payload-richtext-tiptap 0.0.8 → 0.0.10

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 (233) hide show
  1. package/dist/src/fields/TiptapEditor/Components.js +1 -1
  2. package/dist/src/fields/TiptapEditor/Components.js.map +1 -1
  3. package/dist/src/fields/TiptapEditor/extensions/Iframe/menus/IframeMenu.js +2 -2
  4. package/dist/src/fields/TiptapEditor/extensions/Iframe/menus/IframeMenu.js.map +1 -1
  5. package/dist/src/fields/TiptapEditor/extensions/ImageBlock/ImageBlock.js +1 -1
  6. package/dist/src/fields/TiptapEditor/extensions/ImageBlock/ImageBlock.js.map +1 -1
  7. package/dist/src/fields/TiptapEditor/extensions/ImageBlock/components/ImageBlockMenu.js +3 -3
  8. package/dist/src/fields/TiptapEditor/extensions/ImageBlock/components/ImageBlockMenu.js.map +1 -1
  9. package/dist/src/fields/TiptapEditor/extensions/ImageUpload/ImageUpload.js +1 -1
  10. package/dist/src/fields/TiptapEditor/extensions/ImageUpload/ImageUpload.js.map +1 -1
  11. package/dist/src/fields/TiptapEditor/extensions/ImageUpload/view/ImageUploader.js +3 -3
  12. package/dist/src/fields/TiptapEditor/extensions/ImageUpload/view/ImageUploader.js.map +1 -1
  13. package/dist/src/fields/TiptapEditor/extensions/ImageUpload/view/index.d.ts +1 -1
  14. package/dist/src/fields/TiptapEditor/extensions/ImageUpload/view/index.d.ts.map +1 -1
  15. package/dist/src/fields/TiptapEditor/extensions/ImageUpload/view/index.js +1 -1
  16. package/dist/src/fields/TiptapEditor/extensions/ImageUpload/view/index.js.map +1 -1
  17. package/dist/src/fields/TiptapEditor/extensions/InsideLinks/insideLinks.js +1 -1
  18. package/dist/src/fields/TiptapEditor/extensions/InsideLinks/insideLinks.js.map +1 -1
  19. package/dist/src/fields/TiptapEditor/extensions/InsideLinks/menus/InsideLinksMenu.js +1 -1
  20. package/dist/src/fields/TiptapEditor/extensions/InsideLinks/menus/InsideLinksMenu.js.map +1 -1
  21. package/dist/src/fields/TiptapEditor/extensions/InsideLinks/menus/index.d.ts +1 -1
  22. package/dist/src/fields/TiptapEditor/extensions/InsideLinks/menus/index.d.ts.map +1 -1
  23. package/dist/src/fields/TiptapEditor/extensions/InsideLinks/menus/index.js +1 -1
  24. package/dist/src/fields/TiptapEditor/extensions/InsideLinks/menus/index.js.map +1 -1
  25. package/dist/src/fields/TiptapEditor/extensions/MultiColumn/menus/ColumnsMenu.js +2 -2
  26. package/dist/src/fields/TiptapEditor/extensions/MultiColumn/menus/ColumnsMenu.js.map +1 -1
  27. package/dist/src/fields/TiptapEditor/extensions/MultiColumn/menus/index.d.ts +1 -1
  28. package/dist/src/fields/TiptapEditor/extensions/MultiColumn/menus/index.d.ts.map +1 -1
  29. package/dist/src/fields/TiptapEditor/extensions/MultiColumn/menus/index.js +1 -1
  30. package/dist/src/fields/TiptapEditor/extensions/MultiColumn/menus/index.js.map +1 -1
  31. package/dist/src/fields/TiptapEditor/extensions/SlashCommand/CommandButton.js +1 -1
  32. package/dist/src/fields/TiptapEditor/extensions/SlashCommand/CommandButton.js.map +1 -1
  33. package/dist/src/fields/TiptapEditor/extensions/SlashCommand/MenuList.js +3 -3
  34. package/dist/src/fields/TiptapEditor/extensions/SlashCommand/MenuList.js.map +1 -1
  35. package/dist/src/fields/TiptapEditor/extensions/SlashCommand/SlashCommand.js +1 -1
  36. package/dist/src/fields/TiptapEditor/extensions/SlashCommand/SlashCommand.js.map +1 -1
  37. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Facebook/FacebookEmbed.js +1 -1
  38. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Facebook/FacebookEmbed.js.map +1 -1
  39. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Facebook/facebook.js +1 -1
  40. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Facebook/facebook.js.map +1 -1
  41. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Instagram/InstagramEmbed.js +1 -1
  42. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Instagram/InstagramEmbed.js.map +1 -1
  43. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Instagram/instagram.js +1 -1
  44. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Instagram/instagram.js.map +1 -1
  45. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Linkedin/LinkedinEmbed.js +1 -1
  46. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Linkedin/LinkedinEmbed.js.map +1 -1
  47. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Linkedin/linkedin.js +1 -1
  48. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Linkedin/linkedin.js.map +1 -1
  49. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Tiktok/TiktokEmbed.js +1 -1
  50. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Tiktok/TiktokEmbed.js.map +1 -1
  51. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Tiktok/tiktok.js +1 -1
  52. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Tiktok/tiktok.js.map +1 -1
  53. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Twitter/TwitterEmbed.js +1 -1
  54. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Twitter/TwitterEmbed.js.map +1 -1
  55. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Twitter/twitter.js +1 -1
  56. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Twitter/twitter.js.map +1 -1
  57. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Youtube/YoutubeEmbed.js +1 -1
  58. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Youtube/YoutubeEmbed.js.map +1 -1
  59. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Youtube/youtube.js +1 -1
  60. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Youtube/youtube.js.map +1 -1
  61. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/menus/SocialMediaMenu.js +1 -1
  62. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/menus/SocialMediaMenu.js.map +1 -1
  63. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/menus/index.d.ts +1 -1
  64. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/menus/index.d.ts.map +1 -1
  65. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/menus/index.js +1 -1
  66. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/menus/index.js.map +1 -1
  67. package/dist/src/fields/TiptapEditor/extensions/Table/menus/TableColumn/index.js +3 -3
  68. package/dist/src/fields/TiptapEditor/extensions/Table/menus/TableColumn/index.js.map +1 -1
  69. package/dist/src/fields/TiptapEditor/extensions/Table/menus/TableRow/index.js +3 -3
  70. package/dist/src/fields/TiptapEditor/extensions/Table/menus/TableRow/index.js.map +1 -1
  71. package/dist/src/fields/TiptapEditor/extensions/Table/menus/index.d.ts +2 -2
  72. package/dist/src/fields/TiptapEditor/extensions/Table/menus/index.d.ts.map +1 -1
  73. package/dist/src/fields/TiptapEditor/extensions/Table/menus/index.js +2 -2
  74. package/dist/src/fields/TiptapEditor/extensions/Table/menus/index.js.map +1 -1
  75. package/dist/src/fields/TiptapEditor/extensions/TableOfContentsNode/TableOfContentsNode.js +1 -1
  76. package/dist/src/fields/TiptapEditor/extensions/TableOfContentsNode/TableOfContentsNode.js.map +1 -1
  77. package/dist/src/fields/TiptapEditor/extensions/TableOfContentsNode/index.d.ts +1 -1
  78. package/dist/src/fields/TiptapEditor/extensions/TableOfContentsNode/index.d.ts.map +1 -1
  79. package/dist/src/fields/TiptapEditor/extensions/TableOfContentsNode/index.js +1 -1
  80. package/dist/src/fields/TiptapEditor/extensions/TableOfContentsNode/index.js.map +1 -1
  81. package/dist/src/fields/TiptapEditor/extensions/extension-kit.js +1 -1
  82. package/dist/src/fields/TiptapEditor/extensions/extension-kit.js.map +1 -1
  83. package/dist/src/fields/TiptapEditor/features/BlockEditor/BlockEditor.d.ts +1 -1
  84. package/dist/src/fields/TiptapEditor/features/BlockEditor/BlockEditor.d.ts.map +1 -1
  85. package/dist/src/fields/TiptapEditor/features/BlockEditor/BlockEditor.js +6 -6
  86. package/dist/src/fields/TiptapEditor/features/BlockEditor/BlockEditor.js.map +1 -1
  87. package/dist/src/fields/TiptapEditor/features/BlockEditor/components/EditorHeader.d.ts +1 -1
  88. package/dist/src/fields/TiptapEditor/features/BlockEditor/components/EditorHeader.d.ts.map +1 -1
  89. package/dist/src/fields/TiptapEditor/features/BlockEditor/components/EditorHeader.js +3 -3
  90. package/dist/src/fields/TiptapEditor/features/BlockEditor/components/EditorHeader.js.map +1 -1
  91. package/dist/src/fields/TiptapEditor/features/BlockEditor/components/EditorInfo.d.ts +1 -1
  92. package/dist/src/fields/TiptapEditor/features/BlockEditor/components/EditorInfo.d.ts.map +1 -1
  93. package/dist/src/fields/TiptapEditor/features/BlockEditor/components/EditorInfo.js.map +1 -1
  94. package/dist/src/fields/TiptapEditor/features/BlockEditor/index.d.ts +1 -1
  95. package/dist/src/fields/TiptapEditor/features/BlockEditor/index.d.ts.map +1 -1
  96. package/dist/src/fields/TiptapEditor/features/BlockEditor/index.js +1 -1
  97. package/dist/src/fields/TiptapEditor/features/BlockEditor/index.js.map +1 -1
  98. package/dist/src/fields/TiptapEditor/features/Sidebar/Sidebar.js +1 -1
  99. package/dist/src/fields/TiptapEditor/features/Sidebar/Sidebar.js.map +1 -1
  100. package/dist/src/fields/TiptapEditor/features/Sidebar/index.d.ts +1 -1
  101. package/dist/src/fields/TiptapEditor/features/Sidebar/index.d.ts.map +1 -1
  102. package/dist/src/fields/TiptapEditor/features/Sidebar/index.js +1 -1
  103. package/dist/src/fields/TiptapEditor/features/Sidebar/index.js.map +1 -1
  104. package/dist/src/fields/TiptapEditor/features/TableOfContents/index.d.ts +1 -1
  105. package/dist/src/fields/TiptapEditor/features/TableOfContents/index.d.ts.map +1 -1
  106. package/dist/src/fields/TiptapEditor/features/TableOfContents/index.js +1 -1
  107. package/dist/src/fields/TiptapEditor/features/TableOfContents/index.js.map +1 -1
  108. package/dist/src/fields/TiptapEditor/features/menus/ContentItemMenu/ContentItemMenu.js +6 -6
  109. package/dist/src/fields/TiptapEditor/features/menus/ContentItemMenu/ContentItemMenu.js.map +1 -1
  110. package/dist/src/fields/TiptapEditor/features/menus/ContentItemMenu/index.d.ts +1 -1
  111. package/dist/src/fields/TiptapEditor/features/menus/ContentItemMenu/index.d.ts.map +1 -1
  112. package/dist/src/fields/TiptapEditor/features/menus/ContentItemMenu/index.js +1 -1
  113. package/dist/src/fields/TiptapEditor/features/menus/ContentItemMenu/index.js.map +1 -1
  114. package/dist/src/fields/TiptapEditor/features/menus/LinkMenu/LinkMenu.js +3 -3
  115. package/dist/src/fields/TiptapEditor/features/menus/LinkMenu/LinkMenu.js.map +1 -1
  116. package/dist/src/fields/TiptapEditor/features/menus/LinkMenu/index.d.ts +1 -1
  117. package/dist/src/fields/TiptapEditor/features/menus/LinkMenu/index.d.ts.map +1 -1
  118. package/dist/src/fields/TiptapEditor/features/menus/LinkMenu/index.js +1 -1
  119. package/dist/src/fields/TiptapEditor/features/menus/LinkMenu/index.js.map +1 -1
  120. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/TextMenu.js +9 -9
  121. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/TextMenu.js.map +1 -1
  122. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/ContentTypePicker.js +4 -4
  123. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/ContentTypePicker.js.map +1 -1
  124. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/EditIframeLinkPopover.js +3 -3
  125. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/EditIframeLinkPopover.js.map +1 -1
  126. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/EditLinkPopover.js +3 -3
  127. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/EditLinkPopover.js.map +1 -1
  128. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/FontFamilyPicker.js +4 -4
  129. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/FontFamilyPicker.js.map +1 -1
  130. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/FontSizePicker.js +4 -4
  131. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/FontSizePicker.js.map +1 -1
  132. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/SocialMediaPopover.js +3 -3
  133. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/SocialMediaPopover.js.map +1 -1
  134. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/ai-completion-command.js +1 -1
  135. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/ai-completion-command.js.map +1 -1
  136. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/ai-selector-commands.js +5 -5
  137. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/ai-selector-commands.js.map +1 -1
  138. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/hooks/useTextmenuContentTypes.d.ts +1 -1
  139. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/hooks/useTextmenuContentTypes.d.ts.map +1 -1
  140. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/hooks/useTextmenuContentTypes.js.map +1 -1
  141. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/index.d.ts +1 -1
  142. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/index.d.ts.map +1 -1
  143. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/index.js +1 -1
  144. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/index.js.map +1 -1
  145. package/dist/src/fields/TiptapEditor/features/menus/index.d.ts +3 -3
  146. package/dist/src/fields/TiptapEditor/features/menus/index.d.ts.map +1 -1
  147. package/dist/src/fields/TiptapEditor/features/menus/index.js +3 -3
  148. package/dist/src/fields/TiptapEditor/features/menus/index.js.map +1 -1
  149. package/dist/src/fields/TiptapEditor/features/panels/AIEditorPanel/AIEditorPanel.js +6 -6
  150. package/dist/src/fields/TiptapEditor/features/panels/AIEditorPanel/AIEditorPanel.js.map +1 -1
  151. package/dist/src/fields/TiptapEditor/features/panels/AIEditorPanel/index.d.ts +1 -1
  152. package/dist/src/fields/TiptapEditor/features/panels/AIEditorPanel/index.d.ts.map +1 -1
  153. package/dist/src/fields/TiptapEditor/features/panels/AIEditorPanel/index.js +1 -1
  154. package/dist/src/fields/TiptapEditor/features/panels/AIEditorPanel/index.js.map +1 -1
  155. package/dist/src/fields/TiptapEditor/features/panels/Colorpicker/Colorpicker.js +4 -4
  156. package/dist/src/fields/TiptapEditor/features/panels/Colorpicker/Colorpicker.js.map +1 -1
  157. package/dist/src/fields/TiptapEditor/features/panels/Colorpicker/index.d.ts +1 -1
  158. package/dist/src/fields/TiptapEditor/features/panels/Colorpicker/index.d.ts.map +1 -1
  159. package/dist/src/fields/TiptapEditor/features/panels/Colorpicker/index.js +1 -1
  160. package/dist/src/fields/TiptapEditor/features/panels/Colorpicker/index.js.map +1 -1
  161. package/dist/src/fields/TiptapEditor/features/panels/IframeLinkEditorPanel/IframeLinkEditorPanel.js +1 -1
  162. package/dist/src/fields/TiptapEditor/features/panels/IframeLinkEditorPanel/IframeLinkEditorPanel.js.map +1 -1
  163. package/dist/src/fields/TiptapEditor/features/panels/InsideLinksEditorPanel/InsideLinksEditorPanel.js +2 -2
  164. package/dist/src/fields/TiptapEditor/features/panels/InsideLinksEditorPanel/InsideLinksEditorPanel.js.map +1 -1
  165. package/dist/src/fields/TiptapEditor/features/panels/InsideLinksEditorPanel/index.d.ts +1 -1
  166. package/dist/src/fields/TiptapEditor/features/panels/InsideLinksEditorPanel/index.d.ts.map +1 -1
  167. package/dist/src/fields/TiptapEditor/features/panels/InsideLinksEditorPanel/index.js +1 -1
  168. package/dist/src/fields/TiptapEditor/features/panels/InsideLinksEditorPanel/index.js.map +1 -1
  169. package/dist/src/fields/TiptapEditor/features/panels/LinkEditorPanel/LinkEditorPanel.js +4 -4
  170. package/dist/src/fields/TiptapEditor/features/panels/LinkEditorPanel/LinkEditorPanel.js.map +1 -1
  171. package/dist/src/fields/TiptapEditor/features/panels/LinkEditorPanel/index.d.ts +1 -1
  172. package/dist/src/fields/TiptapEditor/features/panels/LinkEditorPanel/index.d.ts.map +1 -1
  173. package/dist/src/fields/TiptapEditor/features/panels/LinkEditorPanel/index.js +1 -1
  174. package/dist/src/fields/TiptapEditor/features/panels/LinkEditorPanel/index.js.map +1 -1
  175. package/dist/src/fields/TiptapEditor/features/panels/LinkPreviewPanel/LinkPreviewPanel.js +4 -4
  176. package/dist/src/fields/TiptapEditor/features/panels/LinkPreviewPanel/LinkPreviewPanel.js.map +1 -1
  177. package/dist/src/fields/TiptapEditor/features/panels/LinkPreviewPanel/index.d.ts +1 -1
  178. package/dist/src/fields/TiptapEditor/features/panels/LinkPreviewPanel/index.d.ts.map +1 -1
  179. package/dist/src/fields/TiptapEditor/features/panels/LinkPreviewPanel/index.js +1 -1
  180. package/dist/src/fields/TiptapEditor/features/panels/LinkPreviewPanel/index.js.map +1 -1
  181. package/dist/src/fields/TiptapEditor/features/panels/SocialMediaEditorPanel/SocialMediaEditorPanel.js +2 -2
  182. package/dist/src/fields/TiptapEditor/features/panels/SocialMediaEditorPanel/SocialMediaEditorPanel.js.map +1 -1
  183. package/dist/src/fields/TiptapEditor/features/panels/SocialMediaEditorPanel/index.d.ts +1 -1
  184. package/dist/src/fields/TiptapEditor/features/panels/SocialMediaEditorPanel/index.d.ts.map +1 -1
  185. package/dist/src/fields/TiptapEditor/features/panels/SocialMediaEditorPanel/index.js +1 -1
  186. package/dist/src/fields/TiptapEditor/features/panels/SocialMediaEditorPanel/index.js.map +1 -1
  187. package/dist/src/fields/TiptapEditor/features/panels/index.d.ts +3 -3
  188. package/dist/src/fields/TiptapEditor/features/panels/index.d.ts.map +1 -1
  189. package/dist/src/fields/TiptapEditor/features/panels/index.js +3 -3
  190. package/dist/src/fields/TiptapEditor/features/panels/index.js.map +1 -1
  191. package/dist/src/fields/TiptapEditor/features/ui/Button/index.d.ts +1 -1
  192. package/dist/src/fields/TiptapEditor/features/ui/Button/index.d.ts.map +1 -1
  193. package/dist/src/fields/TiptapEditor/features/ui/Button/index.js +1 -1
  194. package/dist/src/fields/TiptapEditor/features/ui/Button/index.js.map +1 -1
  195. package/dist/src/fields/TiptapEditor/features/ui/Dropdown/index.d.ts +1 -1
  196. package/dist/src/fields/TiptapEditor/features/ui/Dropdown/index.d.ts.map +1 -1
  197. package/dist/src/fields/TiptapEditor/features/ui/Dropdown/index.js +1 -1
  198. package/dist/src/fields/TiptapEditor/features/ui/Dropdown/index.js.map +1 -1
  199. package/dist/src/fields/TiptapEditor/features/ui/Loader/index.d.ts +1 -1
  200. package/dist/src/fields/TiptapEditor/features/ui/Loader/index.d.ts.map +1 -1
  201. package/dist/src/fields/TiptapEditor/features/ui/Loader/index.js +1 -1
  202. package/dist/src/fields/TiptapEditor/features/ui/Loader/index.js.map +1 -1
  203. package/dist/src/fields/TiptapEditor/features/ui/Panel/index.js +1 -1
  204. package/dist/src/fields/TiptapEditor/features/ui/Panel/index.js.map +1 -1
  205. package/dist/src/fields/TiptapEditor/features/ui/PopoverMenu.js +2 -2
  206. package/dist/src/fields/TiptapEditor/features/ui/PopoverMenu.js.map +1 -1
  207. package/dist/src/fields/TiptapEditor/features/ui/Spinner/index.d.ts +1 -1
  208. package/dist/src/fields/TiptapEditor/features/ui/Spinner/index.d.ts.map +1 -1
  209. package/dist/src/fields/TiptapEditor/features/ui/Spinner/index.js +1 -1
  210. package/dist/src/fields/TiptapEditor/features/ui/Spinner/index.js.map +1 -1
  211. package/dist/src/fields/TiptapEditor/features/ui/Textarea/index.d.ts +1 -1
  212. package/dist/src/fields/TiptapEditor/features/ui/Textarea/index.d.ts.map +1 -1
  213. package/dist/src/fields/TiptapEditor/features/ui/Textarea/index.js +1 -1
  214. package/dist/src/fields/TiptapEditor/features/ui/Textarea/index.js.map +1 -1
  215. package/dist/src/fields/TiptapEditor/features/ui/Toggle/index.d.ts +1 -1
  216. package/dist/src/fields/TiptapEditor/features/ui/Toggle/index.d.ts.map +1 -1
  217. package/dist/src/fields/TiptapEditor/features/ui/Toggle/index.js +1 -1
  218. package/dist/src/fields/TiptapEditor/features/ui/Toggle/index.js.map +1 -1
  219. package/dist/src/fields/TiptapEditor/features/ui/Toolbar.d.ts +1 -1
  220. package/dist/src/fields/TiptapEditor/features/ui/Toolbar.d.ts.map +1 -1
  221. package/dist/src/fields/TiptapEditor/features/ui/Toolbar.js +3 -3
  222. package/dist/src/fields/TiptapEditor/features/ui/Toolbar.js.map +1 -1
  223. package/dist/src/fields/TiptapEditor/hooks/useBlockEditor.d.ts +1 -1
  224. package/dist/src/fields/TiptapEditor/hooks/useBlockEditor.js +1 -1
  225. package/dist/src/fields/TiptapEditor/hooks/useBlockEditor.js.map +1 -1
  226. package/dist/src/fields/TiptapEditor/index.js +1 -1
  227. package/dist/src/fields/TiptapEditor/index.js.map +1 -1
  228. package/dist/src/index.d.ts +3 -3
  229. package/dist/src/index.d.ts.map +1 -1
  230. package/dist/src/index.js +3 -3
  231. package/dist/src/index.js.map +1 -1
  232. package/dist/tsconfig.tsbuildinfo +1 -1
  233. package/package.json +2 -2
@@ -12,7 +12,7 @@ import React, { useCallback, useEffect, useState } from "react";
12
12
  // import { BlockEditor } from './features/BlockEditor'
13
13
  import { useField } from "@payloadcms/ui/forms/useField";
14
14
  import { useLocale } from "@payloadcms/ui/providers/Locale";
15
- import { BlockEditor } from "./features/BlockEditor/BlockEditor.jsx";
15
+ import { BlockEditor } from "./features/BlockEditor/BlockEditor.js";
16
16
  const useDarkmode = ()=>{
17
17
  const [isDarkMode, setIsDarkMode] = useState(typeof window !== "undefined" ? document.documentElement.getAttribute("data-theme") === "dark" : false);
18
18
  useEffect(()=>{
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/fields/TiptapEditor/Components.tsx"],"sourcesContent":["\"use client\";\nimport React, { useCallback, useEffect, useState } from \"react\";\n\n// import 'cal-sans'\n\n// import '@fontsource/inter/100.css'\n// import '@fontsource/inter/200.css'\n// import '@fontsource/inter/300.css'\n// import '@fontsource/inter/400.css'\n// import '@fontsource/inter/500.css'\n// import '@fontsource/inter/600.css'\n// import '@fontsource/inter/700.css'\n// import { BlockEditor } from './features/BlockEditor'\nimport { useField } from \"@payloadcms/ui/forms/useField\";\nimport { useLocale } from \"@payloadcms/ui/providers/Locale\";\nimport { BlockEditor } from \"./features/BlockEditor/BlockEditor.jsx\";\nimport { CustomComponent, JSONField, ServerProps } from \"payload\";\n\ntype Props = JSONField & ServerProps;\n\nconst useDarkmode = () => {\n const [isDarkMode, setIsDarkMode] = useState<boolean>(\n typeof window !== \"undefined\"\n ? document.documentElement.getAttribute(\"data-theme\") === \"dark\"\n : false\n );\n\n useEffect(() => {\n const mediaQuery = window.matchMedia(\"(prefers-color-scheme: dark)\");\n const handleChange = () => setIsDarkMode(mediaQuery.matches);\n mediaQuery.addEventListener(\"change\", handleChange);\n return () => mediaQuery.removeEventListener(\"change\", handleChange);\n }, []);\n\n useEffect(() => {\n document.documentElement.classList.toggle(\"dark\", isDarkMode);\n }, [isDarkMode]);\n\n const toggleDarkMode = useCallback(\n () => setIsDarkMode((isDark) => !isDark),\n []\n );\n const lightMode = useCallback(() => setIsDarkMode(false), []);\n const darkMode = useCallback(() => setIsDarkMode(true), []);\n\n return {\n isDarkMode,\n toggleDarkMode,\n lightMode,\n darkMode,\n };\n};\n\nexport const EditorComponent: CustomComponent = (props) => {\n const { value, setValue } = useField<any>({\n path: props.name,\n });\n\n useDarkmode();\n const hasCollab = false;\n // const { i18n } = useTranslation()\n\n const { code } = useLocale();\n return (\n <div\n lang={code}\n className=\"content-field content-field-disabled\"\n style={{ width: \"100%\", height: \"100%\", overflow: \"visible\" }}\n >\n {/* {DarkModeSwitcher} */}\n {/* <FieldLabel label={props?.label ?? capitalize(props?.name) ?? ''} /> */}\n <BlockEditor\n hasCollab={hasCollab}\n content={value}\n handleChange={(value) => {\n setValue(value);\n }}\n />\n </div>\n );\n};\n"],"names":["React","useCallback","useEffect","useState","useField","useLocale","BlockEditor","useDarkmode","isDarkMode","setIsDarkMode","window","document","documentElement","getAttribute","mediaQuery","matchMedia","handleChange","matches","addEventListener","removeEventListener","classList","toggle","toggleDarkMode","isDark","lightMode","darkMode","EditorComponent","props","value","setValue","path","name","hasCollab","code","div","lang","className","style","width","height","overflow","content"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA;;AACA,OAAOA,SAASC,WAAW,EAAEC,SAAS,EAAEC,QAAQ,QAAQ,QAAQ;AAEhE,oBAAoB;AAEpB,qCAAqC;AACrC,qCAAqC;AACrC,qCAAqC;AACrC,qCAAqC;AACrC,qCAAqC;AACrC,qCAAqC;AACrC,qCAAqC;AACrC,uDAAuD;AACvD,SAASC,QAAQ,QAAQ,gCAAgC;AACzD,SAASC,SAAS,QAAQ,kCAAkC;AAC5D,SAASC,WAAW,QAAQ,yCAAyC;AAKrE,MAAMC,cAAc;IAClB,MAAM,CAACC,YAAYC,cAAc,GAAGN,SAClC,OAAOO,WAAW,cACdC,SAASC,eAAe,CAACC,YAAY,CAAC,kBAAkB,SACxD;IAGNX,UAAU;QACR,MAAMY,aAAaJ,OAAOK,UAAU,CAAC;QACrC,MAAMC,eAAe,IAAMP,cAAcK,WAAWG,OAAO;QAC3DH,WAAWI,gBAAgB,CAAC,UAAUF;QACtC,OAAO,IAAMF,WAAWK,mBAAmB,CAAC,UAAUH;IACxD,GAAG,EAAE;IAELd,UAAU;QACRS,SAASC,eAAe,CAACQ,SAAS,CAACC,MAAM,CAAC,QAAQb;IACpD,GAAG;QAACA;KAAW;IAEf,MAAMc,iBAAiBrB,YACrB,IAAMQ,cAAc,CAACc,SAAW,CAACA,SACjC,EAAE;IAEJ,MAAMC,YAAYvB,YAAY,IAAMQ,cAAc,QAAQ,EAAE;IAC5D,MAAMgB,WAAWxB,YAAY,IAAMQ,cAAc,OAAO,EAAE;IAE1D,OAAO;QACLD;QACAc;QACAE;QACAC;IACF;AACF;AAEA,OAAO,MAAMC,kBAAmC,CAACC;IAC/C,MAAM,EAAEC,KAAK,EAAEC,QAAQ,EAAE,GAAGzB,SAAc;QACxC0B,MAAMH,MAAMI,IAAI;IAClB;IAEAxB;IACA,MAAMyB,YAAY;IAClB,oCAAoC;IAEpC,MAAM,EAAEC,IAAI,EAAE,GAAG5B;IACjB,qBACE,KAAC6B;QACCC,MAAMF;QACNG,WAAU;QACVC,OAAO;YAAEC,OAAO;YAAQC,QAAQ;YAAQC,UAAU;QAAU;kBAI5D,cAAA,KAAClC;YACC0B,WAAWA;YACXS,SAASb;YACTZ,cAAc,CAACY;gBACbC,SAASD;YACX;;;AAIR,EAAE"}
1
+ {"version":3,"sources":["../../../../src/fields/TiptapEditor/Components.tsx"],"sourcesContent":["\"use client\";\nimport React, { useCallback, useEffect, useState } from \"react\";\n\n// import 'cal-sans'\n\n// import '@fontsource/inter/100.css'\n// import '@fontsource/inter/200.css'\n// import '@fontsource/inter/300.css'\n// import '@fontsource/inter/400.css'\n// import '@fontsource/inter/500.css'\n// import '@fontsource/inter/600.css'\n// import '@fontsource/inter/700.css'\n// import { BlockEditor } from './features/BlockEditor'\nimport { useField } from \"@payloadcms/ui/forms/useField\";\nimport { useLocale } from \"@payloadcms/ui/providers/Locale\";\nimport { BlockEditor } from \"./features/BlockEditor/BlockEditor.js\";\nimport { CustomComponent, JSONField, ServerProps } from \"payload\";\n\ntype Props = JSONField & ServerProps;\n\nconst useDarkmode = () => {\n const [isDarkMode, setIsDarkMode] = useState<boolean>(\n typeof window !== \"undefined\"\n ? document.documentElement.getAttribute(\"data-theme\") === \"dark\"\n : false\n );\n\n useEffect(() => {\n const mediaQuery = window.matchMedia(\"(prefers-color-scheme: dark)\");\n const handleChange = () => setIsDarkMode(mediaQuery.matches);\n mediaQuery.addEventListener(\"change\", handleChange);\n return () => mediaQuery.removeEventListener(\"change\", handleChange);\n }, []);\n\n useEffect(() => {\n document.documentElement.classList.toggle(\"dark\", isDarkMode);\n }, [isDarkMode]);\n\n const toggleDarkMode = useCallback(\n () => setIsDarkMode((isDark) => !isDark),\n []\n );\n const lightMode = useCallback(() => setIsDarkMode(false), []);\n const darkMode = useCallback(() => setIsDarkMode(true), []);\n\n return {\n isDarkMode,\n toggleDarkMode,\n lightMode,\n darkMode,\n };\n};\n\nexport const EditorComponent: CustomComponent = (props) => {\n const { value, setValue } = useField<any>({\n path: props.name,\n });\n\n useDarkmode();\n const hasCollab = false;\n // const { i18n } = useTranslation()\n\n const { code } = useLocale();\n return (\n <div\n lang={code}\n className=\"content-field content-field-disabled\"\n style={{ width: \"100%\", height: \"100%\", overflow: \"visible\" }}\n >\n {/* {DarkModeSwitcher} */}\n {/* <FieldLabel label={props?.label ?? capitalize(props?.name) ?? ''} /> */}\n <BlockEditor\n hasCollab={hasCollab}\n content={value}\n handleChange={(value) => {\n setValue(value);\n }}\n />\n </div>\n );\n};\n"],"names":["React","useCallback","useEffect","useState","useField","useLocale","BlockEditor","useDarkmode","isDarkMode","setIsDarkMode","window","document","documentElement","getAttribute","mediaQuery","matchMedia","handleChange","matches","addEventListener","removeEventListener","classList","toggle","toggleDarkMode","isDark","lightMode","darkMode","EditorComponent","props","value","setValue","path","name","hasCollab","code","div","lang","className","style","width","height","overflow","content"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA;;AACA,OAAOA,SAASC,WAAW,EAAEC,SAAS,EAAEC,QAAQ,QAAQ,QAAQ;AAEhE,oBAAoB;AAEpB,qCAAqC;AACrC,qCAAqC;AACrC,qCAAqC;AACrC,qCAAqC;AACrC,qCAAqC;AACrC,qCAAqC;AACrC,qCAAqC;AACrC,uDAAuD;AACvD,SAASC,QAAQ,QAAQ,gCAAgC;AACzD,SAASC,SAAS,QAAQ,kCAAkC;AAC5D,SAASC,WAAW,QAAQ,wCAAwC;AAKpE,MAAMC,cAAc;IAClB,MAAM,CAACC,YAAYC,cAAc,GAAGN,SAClC,OAAOO,WAAW,cACdC,SAASC,eAAe,CAACC,YAAY,CAAC,kBAAkB,SACxD;IAGNX,UAAU;QACR,MAAMY,aAAaJ,OAAOK,UAAU,CAAC;QACrC,MAAMC,eAAe,IAAMP,cAAcK,WAAWG,OAAO;QAC3DH,WAAWI,gBAAgB,CAAC,UAAUF;QACtC,OAAO,IAAMF,WAAWK,mBAAmB,CAAC,UAAUH;IACxD,GAAG,EAAE;IAELd,UAAU;QACRS,SAASC,eAAe,CAACQ,SAAS,CAACC,MAAM,CAAC,QAAQb;IACpD,GAAG;QAACA;KAAW;IAEf,MAAMc,iBAAiBrB,YACrB,IAAMQ,cAAc,CAACc,SAAW,CAACA,SACjC,EAAE;IAEJ,MAAMC,YAAYvB,YAAY,IAAMQ,cAAc,QAAQ,EAAE;IAC5D,MAAMgB,WAAWxB,YAAY,IAAMQ,cAAc,OAAO,EAAE;IAE1D,OAAO;QACLD;QACAc;QACAE;QACAC;IACF;AACF;AAEA,OAAO,MAAMC,kBAAmC,CAACC;IAC/C,MAAM,EAAEC,KAAK,EAAEC,QAAQ,EAAE,GAAGzB,SAAc;QACxC0B,MAAMH,MAAMI,IAAI;IAClB;IAEAxB;IACA,MAAMyB,YAAY;IAClB,oCAAoC;IAEpC,MAAM,EAAEC,IAAI,EAAE,GAAG5B;IACjB,qBACE,KAAC6B;QACCC,MAAMF;QACNG,WAAU;QACVC,OAAO;YAAEC,OAAO;YAAQC,QAAQ;YAAQC,UAAU;QAAU;kBAI5D,cAAA,KAAClC;YACC0B,WAAWA;YACXS,SAASb;YACTZ,cAAc,CAACY;gBACbC,SAASD;YACX;;;AAIR,EAAE"}
@@ -1,8 +1,8 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { BubbleMenu as BaseBubbleMenu } from "@tiptap/react";
3
3
  import React, { useCallback } from "react";
4
- import { EditIframeLinkPopover } from "../../../features/menus/TextMenu/components/EditIframeLinkPopover.jsx";
5
- import { Toolbar } from "../../../features/ui/Toolbar.jsx";
4
+ import { EditIframeLinkPopover } from "../../../features/menus/TextMenu/components/EditIframeLinkPopover.js";
5
+ import { Toolbar } from "../../../features/ui/Toolbar.js";
6
6
  import { getRenderContainer } from "../../../lib/utils/index.js";
7
7
  export const IframeMenu = ({ editor, appendTo })=>{
8
8
  const getReferenceClientRect = useCallback(()=>{
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/extensions/Iframe/menus/IframeMenu.tsx"],"sourcesContent":["import { BubbleMenu as BaseBubbleMenu } from \"@tiptap/react\";\nimport React, { useCallback } from \"react\";\nimport { sticky } from \"tippy.js\";\nimport { v4 as uuid } from \"uuid\";\n\nimport { EditIframeLinkPopover } from \"../../../features/menus/TextMenu/components/EditIframeLinkPopover.jsx\";\nimport { MenuProps } from \"../../../features/menus/types.js\";\nimport { Toolbar } from \"../../../features/ui/Toolbar.jsx\";\nimport { getRenderContainer } from \"../../../lib/utils/index.js\";\n\nexport const IframeMenu = ({ editor, appendTo }: MenuProps) => {\n const getReferenceClientRect = useCallback(() => {\n const renderContainer = getRenderContainer(editor, \"iframe\");\n const rect =\n renderContainer?.getBoundingClientRect() ||\n new DOMRect(-1000, -1000, 0, 0);\n\n return rect;\n }, [editor]);\n\n const shouldShow = useCallback(() => {\n const isIframe = editor.isActive(\"iframe\");\n return isIframe;\n }, [editor]);\n\n const onHtml = useCallback(\n (html: string) => editor.chain().focus().setHtml(html).run(),\n [editor]\n );\n return (\n <BaseBubbleMenu\n editor={editor}\n pluginKey={`iframeMenu`}\n shouldShow={shouldShow}\n tippyOptions={{ popperOptions: { placement: \"top-start\" } }}\n updateDelay={100}\n >\n <Toolbar.Wrapper>\n <Toolbar.Button\n type=\"button\"\n tooltip=\"Sidebar left\"\n active={true}\n // onClick={onColumnLeft}\n >\n <EditIframeLinkPopover\n onSetLink={onHtml}\n initialSrcLink={editor?.getAttributes(\"iframe\")?.editorValue ?? \"\"}\n />\n </Toolbar.Button>\n </Toolbar.Wrapper>\n </BaseBubbleMenu>\n );\n};\n\nexport default IframeMenu;\n"],"names":["BubbleMenu","BaseBubbleMenu","React","useCallback","EditIframeLinkPopover","Toolbar","getRenderContainer","IframeMenu","editor","appendTo","getReferenceClientRect","renderContainer","rect","getBoundingClientRect","DOMRect","shouldShow","isIframe","isActive","onHtml","html","chain","focus","setHtml","run","pluginKey","tippyOptions","popperOptions","placement","updateDelay","Wrapper","Button","type","tooltip","active","onSetLink","initialSrcLink","getAttributes","editorValue"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";AAAA,SAASA,cAAcC,cAAc,QAAQ,gBAAgB;AAC7D,OAAOC,SAASC,WAAW,QAAQ,QAAQ;AAI3C,SAASC,qBAAqB,QAAQ,wEAAwE;AAE9G,SAASC,OAAO,QAAQ,mCAAmC;AAC3D,SAASC,kBAAkB,QAAQ,8BAA8B;AAEjE,OAAO,MAAMC,aAAa,CAAC,EAAEC,MAAM,EAAEC,QAAQ,EAAa;IACxD,MAAMC,yBAAyBP,YAAY;QACzC,MAAMQ,kBAAkBL,mBAAmBE,QAAQ;QACnD,MAAMI,OACJD,iBAAiBE,2BACjB,IAAIC,QAAQ,CAAC,MAAM,CAAC,MAAM,GAAG;QAE/B,OAAOF;IACT,GAAG;QAACJ;KAAO;IAEX,MAAMO,aAAaZ,YAAY;QAC7B,MAAMa,WAAWR,OAAOS,QAAQ,CAAC;QACjC,OAAOD;IACT,GAAG;QAACR;KAAO;IAEX,MAAMU,SAASf,YACb,CAACgB,OAAiBX,OAAOY,KAAK,GAAGC,KAAK,GAAGC,OAAO,CAACH,MAAMI,GAAG,IAC1D;QAACf;KAAO;IAEV,qBACE,KAACP;QACCO,QAAQA;QACRgB,WAAW,CAAC,UAAU,CAAC;QACvBT,YAAYA;QACZU,cAAc;YAAEC,eAAe;gBAAEC,WAAW;YAAY;QAAE;QAC1DC,aAAa;kBAEb,cAAA,KAACvB,QAAQwB,OAAO;sBACd,cAAA,KAACxB,QAAQyB,MAAM;gBACbC,MAAK;gBACLC,SAAQ;gBACRC,QAAQ;0BAGR,cAAA,KAAC7B;oBACC8B,WAAWhB;oBACXiB,gBAAgB3B,QAAQ4B,cAAc,WAAWC,eAAe;;;;;AAM5E,EAAE;AAEF,eAAe9B,WAAW"}
1
+ {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/extensions/Iframe/menus/IframeMenu.tsx"],"sourcesContent":["import { BubbleMenu as BaseBubbleMenu } from \"@tiptap/react\";\nimport React, { useCallback } from \"react\";\nimport { sticky } from \"tippy.js\";\nimport { v4 as uuid } from \"uuid\";\n\nimport { EditIframeLinkPopover } from \"../../../features/menus/TextMenu/components/EditIframeLinkPopover.js\";\nimport { MenuProps } from \"../../../features/menus/types.js\";\nimport { Toolbar } from \"../../../features/ui/Toolbar.js\";\nimport { getRenderContainer } from \"../../../lib/utils/index.js\";\n\nexport const IframeMenu = ({ editor, appendTo }: MenuProps) => {\n const getReferenceClientRect = useCallback(() => {\n const renderContainer = getRenderContainer(editor, \"iframe\");\n const rect =\n renderContainer?.getBoundingClientRect() ||\n new DOMRect(-1000, -1000, 0, 0);\n\n return rect;\n }, [editor]);\n\n const shouldShow = useCallback(() => {\n const isIframe = editor.isActive(\"iframe\");\n return isIframe;\n }, [editor]);\n\n const onHtml = useCallback(\n (html: string) => editor.chain().focus().setHtml(html).run(),\n [editor]\n );\n return (\n <BaseBubbleMenu\n editor={editor}\n pluginKey={`iframeMenu`}\n shouldShow={shouldShow}\n tippyOptions={{ popperOptions: { placement: \"top-start\" } }}\n updateDelay={100}\n >\n <Toolbar.Wrapper>\n <Toolbar.Button\n type=\"button\"\n tooltip=\"Sidebar left\"\n active={true}\n // onClick={onColumnLeft}\n >\n <EditIframeLinkPopover\n onSetLink={onHtml}\n initialSrcLink={editor?.getAttributes(\"iframe\")?.editorValue ?? \"\"}\n />\n </Toolbar.Button>\n </Toolbar.Wrapper>\n </BaseBubbleMenu>\n );\n};\n\nexport default IframeMenu;\n"],"names":["BubbleMenu","BaseBubbleMenu","React","useCallback","EditIframeLinkPopover","Toolbar","getRenderContainer","IframeMenu","editor","appendTo","getReferenceClientRect","renderContainer","rect","getBoundingClientRect","DOMRect","shouldShow","isIframe","isActive","onHtml","html","chain","focus","setHtml","run","pluginKey","tippyOptions","popperOptions","placement","updateDelay","Wrapper","Button","type","tooltip","active","onSetLink","initialSrcLink","getAttributes","editorValue"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";AAAA,SAASA,cAAcC,cAAc,QAAQ,gBAAgB;AAC7D,OAAOC,SAASC,WAAW,QAAQ,QAAQ;AAI3C,SAASC,qBAAqB,QAAQ,uEAAuE;AAE7G,SAASC,OAAO,QAAQ,kCAAkC;AAC1D,SAASC,kBAAkB,QAAQ,8BAA8B;AAEjE,OAAO,MAAMC,aAAa,CAAC,EAAEC,MAAM,EAAEC,QAAQ,EAAa;IACxD,MAAMC,yBAAyBP,YAAY;QACzC,MAAMQ,kBAAkBL,mBAAmBE,QAAQ;QACnD,MAAMI,OACJD,iBAAiBE,2BACjB,IAAIC,QAAQ,CAAC,MAAM,CAAC,MAAM,GAAG;QAE/B,OAAOF;IACT,GAAG;QAACJ;KAAO;IAEX,MAAMO,aAAaZ,YAAY;QAC7B,MAAMa,WAAWR,OAAOS,QAAQ,CAAC;QACjC,OAAOD;IACT,GAAG;QAACR;KAAO;IAEX,MAAMU,SAASf,YACb,CAACgB,OAAiBX,OAAOY,KAAK,GAAGC,KAAK,GAAGC,OAAO,CAACH,MAAMI,GAAG,IAC1D;QAACf;KAAO;IAEV,qBACE,KAACP;QACCO,QAAQA;QACRgB,WAAW,CAAC,UAAU,CAAC;QACvBT,YAAYA;QACZU,cAAc;YAAEC,eAAe;gBAAEC,WAAW;YAAY;QAAE;QAC1DC,aAAa;kBAEb,cAAA,KAACvB,QAAQwB,OAAO;sBACd,cAAA,KAACxB,QAAQyB,MAAM;gBACbC,MAAK;gBACLC,SAAQ;gBACRC,QAAQ;0BAGR,cAAA,KAAC7B;oBACC8B,WAAWhB;oBACXiB,gBAAgB3B,QAAQ4B,cAAc,WAAWC,eAAe;;;;;AAM5E,EAAE;AAEF,eAAe9B,WAAW"}
@@ -1,6 +1,6 @@
1
1
  import { ReactNodeViewRenderer } from "@tiptap/react";
2
2
  import { mergeAttributes } from "@tiptap/core";
3
- import { ImageBlockView } from "./components/ImageBlockView.jsx";
3
+ import { ImageBlockView } from "./components/ImageBlockView.js";
4
4
  import { Image } from "../Image/Image.js";
5
5
  export const ImageBlock = Image.extend({
6
6
  name: "imageBlock",
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/fields/TiptapEditor/extensions/ImageBlock/ImageBlock.ts"],"sourcesContent":["import { ReactNodeViewRenderer } from \"@tiptap/react\";\nimport { mergeAttributes, Range } from \"@tiptap/core\";\n\nimport { ImageBlockView } from \"./components/ImageBlockView.jsx\";\nimport { Image } from \"../Image/Image.js\";\n\ndeclare module \"@tiptap/core\" {\n interface Commands<ReturnType> {\n imageBlock: {\n setImageBlock: (attributes: { src: string }) => ReturnType;\n setImageBlockAt: (attributes: {\n src: string;\n pos: number | Range;\n }) => ReturnType;\n setImageBlockAlign: (align: \"left\" | \"center\" | \"right\") => ReturnType;\n setImageBlockWidth: (width: number) => ReturnType;\n };\n }\n}\n\nexport const ImageBlock = Image.extend({\n name: \"imageBlock\",\n\n group: \"block\",\n\n defining: true,\n\n isolating: true,\n\n addAttributes() {\n return {\n src: {\n default: \"\",\n parseHTML: (element) => element.getAttribute(\"src\"),\n renderHTML: (attributes) => ({\n src: attributes.src,\n }),\n },\n width: {\n default: \"100%\",\n parseHTML: (element) => element.getAttribute(\"data-width\"),\n renderHTML: (attributes) => ({\n \"data-width\": attributes.width,\n }),\n },\n align: {\n default: \"center\",\n parseHTML: (element) => element.getAttribute(\"data-align\"),\n renderHTML: (attributes) => ({\n \"data-align\": attributes.align,\n }),\n },\n alt: {\n default: undefined,\n parseHTML: (element) => element.getAttribute(\"alt\"),\n renderHTML: (attributes) => ({\n alt: attributes.alt,\n }),\n },\n };\n },\n\n parseHTML() {\n return [\n {\n tag: 'img[src*=\"tiptap.dev\"]:not([src^=\"data:\"]), img[src*=\"windows.net\"]:not([src^=\"data:\"])',\n },\n ];\n },\n\n renderHTML({ HTMLAttributes }) {\n return [\n \"img\",\n mergeAttributes(this.options.HTMLAttributes, HTMLAttributes),\n ];\n },\n\n addCommands() {\n return {\n setImageBlock:\n (attrs) =>\n ({ commands }) => {\n return commands.insertContent({\n type: \"imageBlock\",\n attrs: { src: attrs.src },\n });\n },\n\n setImageBlockAt:\n (attrs) =>\n ({ commands }) => {\n return commands.insertContentAt(attrs.pos, {\n type: \"imageBlock\",\n attrs: { src: attrs.src },\n });\n },\n\n setImageBlockAlign:\n (align) =>\n ({ commands }) =>\n commands.updateAttributes(\"imageBlock\", { align }),\n\n setImageBlockWidth:\n (width) =>\n ({ commands }) =>\n commands.updateAttributes(\"imageBlock\", {\n width: `${Math.max(0, Math.min(100, width))}%`,\n }),\n };\n },\n\n addNodeView() {\n return ReactNodeViewRenderer(ImageBlockView);\n },\n});\n\nexport default ImageBlock;\n"],"names":["ReactNodeViewRenderer","mergeAttributes","ImageBlockView","Image","ImageBlock","extend","name","group","defining","isolating","addAttributes","src","default","parseHTML","element","getAttribute","renderHTML","attributes","width","align","alt","undefined","tag","HTMLAttributes","options","addCommands","setImageBlock","attrs","commands","insertContent","type","setImageBlockAt","insertContentAt","pos","setImageBlockAlign","updateAttributes","setImageBlockWidth","Math","max","min","addNodeView"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA,SAASA,qBAAqB,QAAQ,gBAAgB;AACtD,SAASC,eAAe,QAAe,eAAe;AAEtD,SAASC,cAAc,QAAQ,kCAAkC;AACjE,SAASC,KAAK,QAAQ,oBAAoB;AAgB1C,OAAO,MAAMC,aAAaD,MAAME,MAAM,CAAC;IACrCC,MAAM;IAENC,OAAO;IAEPC,UAAU;IAEVC,WAAW;IAEXC;QACE,OAAO;YACLC,KAAK;gBACHC,SAAS;gBACTC,WAAW,CAACC,UAAYA,QAAQC,YAAY,CAAC;gBAC7CC,YAAY,CAACC,aAAgB,CAAA;wBAC3BN,KAAKM,WAAWN,GAAG;oBACrB,CAAA;YACF;YACAO,OAAO;gBACLN,SAAS;gBACTC,WAAW,CAACC,UAAYA,QAAQC,YAAY,CAAC;gBAC7CC,YAAY,CAACC,aAAgB,CAAA;wBAC3B,cAAcA,WAAWC,KAAK;oBAChC,CAAA;YACF;YACAC,OAAO;gBACLP,SAAS;gBACTC,WAAW,CAACC,UAAYA,QAAQC,YAAY,CAAC;gBAC7CC,YAAY,CAACC,aAAgB,CAAA;wBAC3B,cAAcA,WAAWE,KAAK;oBAChC,CAAA;YACF;YACAC,KAAK;gBACHR,SAASS;gBACTR,WAAW,CAACC,UAAYA,QAAQC,YAAY,CAAC;gBAC7CC,YAAY,CAACC,aAAgB,CAAA;wBAC3BG,KAAKH,WAAWG,GAAG;oBACrB,CAAA;YACF;QACF;IACF;IAEAP;QACE,OAAO;YACL;gBACES,KAAK;YACP;SACD;IACH;IAEAN,YAAW,EAAEO,cAAc,EAAE;QAC3B,OAAO;YACL;YACAtB,gBAAgB,IAAI,CAACuB,OAAO,CAACD,cAAc,EAAEA;SAC9C;IACH;IAEAE;QACE,OAAO;YACLC,eACE,CAACC,QACD,CAAC,EAAEC,QAAQ,EAAE;oBACX,OAAOA,SAASC,aAAa,CAAC;wBAC5BC,MAAM;wBACNH,OAAO;4BAAEhB,KAAKgB,MAAMhB,GAAG;wBAAC;oBAC1B;gBACF;YAEFoB,iBACE,CAACJ,QACD,CAAC,EAAEC,QAAQ,EAAE;oBACX,OAAOA,SAASI,eAAe,CAACL,MAAMM,GAAG,EAAE;wBACzCH,MAAM;wBACNH,OAAO;4BAAEhB,KAAKgB,MAAMhB,GAAG;wBAAC;oBAC1B;gBACF;YAEFuB,oBACE,CAACf,QACD,CAAC,EAAES,QAAQ,EAAE,GACXA,SAASO,gBAAgB,CAAC,cAAc;wBAAEhB;oBAAM;YAEpDiB,oBACE,CAAClB,QACD,CAAC,EAAEU,QAAQ,EAAE,GACXA,SAASO,gBAAgB,CAAC,cAAc;wBACtCjB,OAAO,CAAC,EAAEmB,KAAKC,GAAG,CAAC,GAAGD,KAAKE,GAAG,CAAC,KAAKrB,QAAQ,CAAC,CAAC;oBAChD;QACN;IACF;IAEAsB;QACE,OAAOxC,sBAAsBE;IAC/B;AACF,GAAG;AAEH,eAAeE,WAAW"}
1
+ {"version":3,"sources":["../../../../../../src/fields/TiptapEditor/extensions/ImageBlock/ImageBlock.ts"],"sourcesContent":["import { ReactNodeViewRenderer } from \"@tiptap/react\";\nimport { mergeAttributes, Range } from \"@tiptap/core\";\n\nimport { ImageBlockView } from \"./components/ImageBlockView.js\";\nimport { Image } from \"../Image/Image.js\";\n\ndeclare module \"@tiptap/core\" {\n interface Commands<ReturnType> {\n imageBlock: {\n setImageBlock: (attributes: { src: string }) => ReturnType;\n setImageBlockAt: (attributes: {\n src: string;\n pos: number | Range;\n }) => ReturnType;\n setImageBlockAlign: (align: \"left\" | \"center\" | \"right\") => ReturnType;\n setImageBlockWidth: (width: number) => ReturnType;\n };\n }\n}\n\nexport const ImageBlock = Image.extend({\n name: \"imageBlock\",\n\n group: \"block\",\n\n defining: true,\n\n isolating: true,\n\n addAttributes() {\n return {\n src: {\n default: \"\",\n parseHTML: (element) => element.getAttribute(\"src\"),\n renderHTML: (attributes) => ({\n src: attributes.src,\n }),\n },\n width: {\n default: \"100%\",\n parseHTML: (element) => element.getAttribute(\"data-width\"),\n renderHTML: (attributes) => ({\n \"data-width\": attributes.width,\n }),\n },\n align: {\n default: \"center\",\n parseHTML: (element) => element.getAttribute(\"data-align\"),\n renderHTML: (attributes) => ({\n \"data-align\": attributes.align,\n }),\n },\n alt: {\n default: undefined,\n parseHTML: (element) => element.getAttribute(\"alt\"),\n renderHTML: (attributes) => ({\n alt: attributes.alt,\n }),\n },\n };\n },\n\n parseHTML() {\n return [\n {\n tag: 'img[src*=\"tiptap.dev\"]:not([src^=\"data:\"]), img[src*=\"windows.net\"]:not([src^=\"data:\"])',\n },\n ];\n },\n\n renderHTML({ HTMLAttributes }) {\n return [\n \"img\",\n mergeAttributes(this.options.HTMLAttributes, HTMLAttributes),\n ];\n },\n\n addCommands() {\n return {\n setImageBlock:\n (attrs) =>\n ({ commands }) => {\n return commands.insertContent({\n type: \"imageBlock\",\n attrs: { src: attrs.src },\n });\n },\n\n setImageBlockAt:\n (attrs) =>\n ({ commands }) => {\n return commands.insertContentAt(attrs.pos, {\n type: \"imageBlock\",\n attrs: { src: attrs.src },\n });\n },\n\n setImageBlockAlign:\n (align) =>\n ({ commands }) =>\n commands.updateAttributes(\"imageBlock\", { align }),\n\n setImageBlockWidth:\n (width) =>\n ({ commands }) =>\n commands.updateAttributes(\"imageBlock\", {\n width: `${Math.max(0, Math.min(100, width))}%`,\n }),\n };\n },\n\n addNodeView() {\n return ReactNodeViewRenderer(ImageBlockView);\n },\n});\n\nexport default ImageBlock;\n"],"names":["ReactNodeViewRenderer","mergeAttributes","ImageBlockView","Image","ImageBlock","extend","name","group","defining","isolating","addAttributes","src","default","parseHTML","element","getAttribute","renderHTML","attributes","width","align","alt","undefined","tag","HTMLAttributes","options","addCommands","setImageBlock","attrs","commands","insertContent","type","setImageBlockAt","insertContentAt","pos","setImageBlockAlign","updateAttributes","setImageBlockWidth","Math","max","min","addNodeView"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA,SAASA,qBAAqB,QAAQ,gBAAgB;AACtD,SAASC,eAAe,QAAe,eAAe;AAEtD,SAASC,cAAc,QAAQ,iCAAiC;AAChE,SAASC,KAAK,QAAQ,oBAAoB;AAgB1C,OAAO,MAAMC,aAAaD,MAAME,MAAM,CAAC;IACrCC,MAAM;IAENC,OAAO;IAEPC,UAAU;IAEVC,WAAW;IAEXC;QACE,OAAO;YACLC,KAAK;gBACHC,SAAS;gBACTC,WAAW,CAACC,UAAYA,QAAQC,YAAY,CAAC;gBAC7CC,YAAY,CAACC,aAAgB,CAAA;wBAC3BN,KAAKM,WAAWN,GAAG;oBACrB,CAAA;YACF;YACAO,OAAO;gBACLN,SAAS;gBACTC,WAAW,CAACC,UAAYA,QAAQC,YAAY,CAAC;gBAC7CC,YAAY,CAACC,aAAgB,CAAA;wBAC3B,cAAcA,WAAWC,KAAK;oBAChC,CAAA;YACF;YACAC,OAAO;gBACLP,SAAS;gBACTC,WAAW,CAACC,UAAYA,QAAQC,YAAY,CAAC;gBAC7CC,YAAY,CAACC,aAAgB,CAAA;wBAC3B,cAAcA,WAAWE,KAAK;oBAChC,CAAA;YACF;YACAC,KAAK;gBACHR,SAASS;gBACTR,WAAW,CAACC,UAAYA,QAAQC,YAAY,CAAC;gBAC7CC,YAAY,CAACC,aAAgB,CAAA;wBAC3BG,KAAKH,WAAWG,GAAG;oBACrB,CAAA;YACF;QACF;IACF;IAEAP;QACE,OAAO;YACL;gBACES,KAAK;YACP;SACD;IACH;IAEAN,YAAW,EAAEO,cAAc,EAAE;QAC3B,OAAO;YACL;YACAtB,gBAAgB,IAAI,CAACuB,OAAO,CAACD,cAAc,EAAEA;SAC9C;IACH;IAEAE;QACE,OAAO;YACLC,eACE,CAACC,QACD,CAAC,EAAEC,QAAQ,EAAE;oBACX,OAAOA,SAASC,aAAa,CAAC;wBAC5BC,MAAM;wBACNH,OAAO;4BAAEhB,KAAKgB,MAAMhB,GAAG;wBAAC;oBAC1B;gBACF;YAEFoB,iBACE,CAACJ,QACD,CAAC,EAAEC,QAAQ,EAAE;oBACX,OAAOA,SAASI,eAAe,CAACL,MAAMM,GAAG,EAAE;wBACzCH,MAAM;wBACNH,OAAO;4BAAEhB,KAAKgB,MAAMhB,GAAG;wBAAC;oBAC1B;gBACF;YAEFuB,oBACE,CAACf,QACD,CAAC,EAAES,QAAQ,EAAE,GACXA,SAASO,gBAAgB,CAAC,cAAc;wBAAEhB;oBAAM;YAEpDiB,oBACE,CAAClB,QACD,CAAC,EAAEU,QAAQ,EAAE,GACXA,SAASO,gBAAgB,CAAC,cAAc;wBACtCjB,OAAO,CAAC,EAAEmB,KAAKC,GAAG,CAAC,GAAGD,KAAKE,GAAG,CAAC,KAAKrB,QAAQ,CAAC,CAAC;oBAChD;QACN;IACF;IAEAsB;QACE,OAAOxC,sBAAsBE;IAC/B;AACF,GAAG;AAEH,eAAeE,WAAW"}
@@ -4,10 +4,10 @@ import { useCallback, useRef } from "react";
4
4
  import { sticky } from "tippy.js";
5
5
  import { v4 as uuid } from "uuid";
6
6
  import { AlignHorizontalDistributeCenter, AlignHorizontalDistributeEnd, AlignHorizontalDistributeStart } from "lucide-react";
7
- import { Icon } from "../../../features/ui/Icon.jsx";
8
- import { Toolbar } from "../../../features/ui/Toolbar.jsx";
7
+ import { Icon } from "../../../features/ui/Icon.js";
8
+ import { Toolbar } from "../../../features/ui/Toolbar.js";
9
9
  import { getRenderContainer } from "../../../lib/utils/index.js";
10
- import { ImageBlockWidth } from "./ImageBlockWidth.jsx";
10
+ import { ImageBlockWidth } from "./ImageBlockWidth.js";
11
11
  export const ImageBlockMenu = ({ editor, appendTo })=>{
12
12
  const menuRef = useRef(null);
13
13
  const tippyInstance = useRef(null);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/extensions/ImageBlock/components/ImageBlockMenu.tsx"],"sourcesContent":["import { BubbleMenu as BaseBubbleMenu } from \"@tiptap/react\";\nimport { ReactNode, useCallback, useRef } from \"react\";\nimport { Instance, sticky } from \"tippy.js\";\nimport { v4 as uuid } from \"uuid\";\n\nimport {\n AlignHorizontalDistributeCenter,\n AlignHorizontalDistributeEnd,\n AlignHorizontalDistributeStart,\n} from \"lucide-react\";\nimport { MenuProps } from \"../../../features/menus/types.js\";\nimport { Icon } from \"../../../features/ui/Icon.jsx\";\nimport { Toolbar } from \"../../../features/ui/Toolbar.jsx\";\nimport { getRenderContainer } from \"../../../lib/utils/index.js\";\nimport { ImageBlockWidth } from \"./ImageBlockWidth.jsx\";\n\nexport const ImageBlockMenu = ({ editor, appendTo }: MenuProps): ReactNode => {\n const menuRef = useRef<HTMLDivElement>(null);\n const tippyInstance = useRef<Instance | null>(null);\n\n const getReferenceClientRect = useCallback(() => {\n const renderContainer = getRenderContainer(editor, \"node-imageBlock\");\n const rect =\n renderContainer?.getBoundingClientRect() ||\n new DOMRect(-1000, -1000, 0, 0);\n\n return rect;\n }, [editor]);\n\n const shouldShow = useCallback(() => {\n const isActive = editor.isActive(\"imageBlock\");\n\n return isActive;\n }, [editor]);\n\n const onAlignImageLeft = useCallback(() => {\n editor\n .chain()\n .focus(undefined, { scrollIntoView: false })\n .setImageBlockAlign(\"left\")\n .run();\n }, [editor]);\n\n const onAlignImageCenter = useCallback(() => {\n editor\n .chain()\n .focus(undefined, { scrollIntoView: false })\n .setImageBlockAlign(\"center\")\n .run();\n }, [editor]);\n\n const onAlignImageRight = useCallback(() => {\n editor\n .chain()\n .focus(undefined, { scrollIntoView: false })\n .setImageBlockAlign(\"right\")\n .run();\n }, [editor]);\n\n const onWidthChange = useCallback(\n (value: number) => {\n editor\n .chain()\n .focus(undefined, { scrollIntoView: false })\n .setImageBlockWidth(value)\n .run();\n },\n [editor]\n );\n\n return (\n <BaseBubbleMenu\n editor={editor}\n pluginKey={`imageBlockMenu-${uuid()}`}\n shouldShow={shouldShow}\n updateDelay={0}\n tippyOptions={{\n offset: [0, 8],\n popperOptions: {\n modifiers: [{ name: \"flip\", enabled: false }],\n },\n getReferenceClientRect,\n onCreate: (instance: Instance) => {\n tippyInstance.current = instance;\n },\n appendTo: () => {\n return appendTo?.current;\n },\n plugins: [sticky],\n sticky: \"popper\",\n }}\n >\n <Toolbar.Wrapper shouldShowContent={shouldShow()} ref={menuRef}>\n <Toolbar.Button\n type=\"button\"\n tooltip=\"Align image left\"\n active={editor.isActive(\"imageBlock\", { align: \"left\" })}\n onClick={onAlignImageLeft}\n >\n <Icon icon={AlignHorizontalDistributeStart} />\n </Toolbar.Button>\n <Toolbar.Button\n type=\"button\"\n tooltip=\"Align image center\"\n active={editor.isActive(\"imageBlock\", { align: \"center\" })}\n onClick={onAlignImageCenter}\n >\n <Icon icon={AlignHorizontalDistributeCenter} />\n </Toolbar.Button>\n <Toolbar.Button\n type=\"button\"\n tooltip=\"Align image right\"\n active={editor.isActive(\"imageBlock\", { align: \"right\" })}\n onClick={onAlignImageRight}\n >\n <Icon icon={AlignHorizontalDistributeEnd} />\n </Toolbar.Button>\n <Toolbar.Divider />\n <ImageBlockWidth\n onChange={onWidthChange}\n value={parseInt(editor.getAttributes(\"imageBlock\").width)}\n />\n </Toolbar.Wrapper>\n </BaseBubbleMenu>\n );\n};\n\nexport default ImageBlockMenu;\n"],"names":["BubbleMenu","BaseBubbleMenu","useCallback","useRef","sticky","v4","uuid","AlignHorizontalDistributeCenter","AlignHorizontalDistributeEnd","AlignHorizontalDistributeStart","Icon","Toolbar","getRenderContainer","ImageBlockWidth","ImageBlockMenu","editor","appendTo","menuRef","tippyInstance","getReferenceClientRect","renderContainer","rect","getBoundingClientRect","DOMRect","shouldShow","isActive","onAlignImageLeft","chain","focus","undefined","scrollIntoView","setImageBlockAlign","run","onAlignImageCenter","onAlignImageRight","onWidthChange","value","setImageBlockWidth","pluginKey","updateDelay","tippyOptions","offset","popperOptions","modifiers","name","enabled","onCreate","instance","current","plugins","Wrapper","shouldShowContent","ref","Button","type","tooltip","active","align","onClick","icon","Divider","onChange","parseInt","getAttributes","width"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
1
+ {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/extensions/ImageBlock/components/ImageBlockMenu.tsx"],"sourcesContent":["import { BubbleMenu as BaseBubbleMenu } from \"@tiptap/react\";\nimport { ReactNode, useCallback, useRef } from \"react\";\nimport { Instance, sticky } from \"tippy.js\";\nimport { v4 as uuid } from \"uuid\";\n\nimport {\n AlignHorizontalDistributeCenter,\n AlignHorizontalDistributeEnd,\n AlignHorizontalDistributeStart,\n} from \"lucide-react\";\nimport { MenuProps } from \"../../../features/menus/types.js\";\nimport { Icon } from \"../../../features/ui/Icon.js\";\nimport { Toolbar } from \"../../../features/ui/Toolbar.js\";\nimport { getRenderContainer } from \"../../../lib/utils/index.js\";\nimport { ImageBlockWidth } from \"./ImageBlockWidth.js\";\n\nexport const ImageBlockMenu = ({ editor, appendTo }: MenuProps): ReactNode => {\n const menuRef = useRef<HTMLDivElement>(null);\n const tippyInstance = useRef<Instance | null>(null);\n\n const getReferenceClientRect = useCallback(() => {\n const renderContainer = getRenderContainer(editor, \"node-imageBlock\");\n const rect =\n renderContainer?.getBoundingClientRect() ||\n new DOMRect(-1000, -1000, 0, 0);\n\n return rect;\n }, [editor]);\n\n const shouldShow = useCallback(() => {\n const isActive = editor.isActive(\"imageBlock\");\n\n return isActive;\n }, [editor]);\n\n const onAlignImageLeft = useCallback(() => {\n editor\n .chain()\n .focus(undefined, { scrollIntoView: false })\n .setImageBlockAlign(\"left\")\n .run();\n }, [editor]);\n\n const onAlignImageCenter = useCallback(() => {\n editor\n .chain()\n .focus(undefined, { scrollIntoView: false })\n .setImageBlockAlign(\"center\")\n .run();\n }, [editor]);\n\n const onAlignImageRight = useCallback(() => {\n editor\n .chain()\n .focus(undefined, { scrollIntoView: false })\n .setImageBlockAlign(\"right\")\n .run();\n }, [editor]);\n\n const onWidthChange = useCallback(\n (value: number) => {\n editor\n .chain()\n .focus(undefined, { scrollIntoView: false })\n .setImageBlockWidth(value)\n .run();\n },\n [editor]\n );\n\n return (\n <BaseBubbleMenu\n editor={editor}\n pluginKey={`imageBlockMenu-${uuid()}`}\n shouldShow={shouldShow}\n updateDelay={0}\n tippyOptions={{\n offset: [0, 8],\n popperOptions: {\n modifiers: [{ name: \"flip\", enabled: false }],\n },\n getReferenceClientRect,\n onCreate: (instance: Instance) => {\n tippyInstance.current = instance;\n },\n appendTo: () => {\n return appendTo?.current;\n },\n plugins: [sticky],\n sticky: \"popper\",\n }}\n >\n <Toolbar.Wrapper shouldShowContent={shouldShow()} ref={menuRef}>\n <Toolbar.Button\n type=\"button\"\n tooltip=\"Align image left\"\n active={editor.isActive(\"imageBlock\", { align: \"left\" })}\n onClick={onAlignImageLeft}\n >\n <Icon icon={AlignHorizontalDistributeStart} />\n </Toolbar.Button>\n <Toolbar.Button\n type=\"button\"\n tooltip=\"Align image center\"\n active={editor.isActive(\"imageBlock\", { align: \"center\" })}\n onClick={onAlignImageCenter}\n >\n <Icon icon={AlignHorizontalDistributeCenter} />\n </Toolbar.Button>\n <Toolbar.Button\n type=\"button\"\n tooltip=\"Align image right\"\n active={editor.isActive(\"imageBlock\", { align: \"right\" })}\n onClick={onAlignImageRight}\n >\n <Icon icon={AlignHorizontalDistributeEnd} />\n </Toolbar.Button>\n <Toolbar.Divider />\n <ImageBlockWidth\n onChange={onWidthChange}\n value={parseInt(editor.getAttributes(\"imageBlock\").width)}\n />\n </Toolbar.Wrapper>\n </BaseBubbleMenu>\n );\n};\n\nexport default ImageBlockMenu;\n"],"names":["BubbleMenu","BaseBubbleMenu","useCallback","useRef","sticky","v4","uuid","AlignHorizontalDistributeCenter","AlignHorizontalDistributeEnd","AlignHorizontalDistributeStart","Icon","Toolbar","getRenderContainer","ImageBlockWidth","ImageBlockMenu","editor","appendTo","menuRef","tippyInstance","getReferenceClientRect","renderContainer","rect","getBoundingClientRect","DOMRect","shouldShow","isActive","onAlignImageLeft","chain","focus","undefined","scrollIntoView","setImageBlockAlign","run","onAlignImageCenter","onAlignImageRight","onWidthChange","value","setImageBlockWidth","pluginKey","updateDelay","tippyOptions","offset","popperOptions","modifiers","name","enabled","onCreate","instance","current","plugins","Wrapper","shouldShowContent","ref","Button","type","tooltip","active","align","onClick","icon","Divider","onChange","parseInt","getAttributes","width"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { Node, ReactNodeViewRenderer } from "@tiptap/react";
2
- import { ImageUpload as ImageUploadComponent } from "./view/ImageUpload.jsx";
2
+ import { ImageUpload as ImageUploadComponent } from "./view/ImageUpload.js";
3
3
  export const ImageUpload = Node.create({
4
4
  name: "imageUpload",
5
5
  isolating: true,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/fields/TiptapEditor/extensions/ImageUpload/ImageUpload.ts"],"sourcesContent":["import { Node, ReactNodeViewRenderer } from \"@tiptap/react\";\nimport { ImageUpload as ImageUploadComponent } from \"./view/ImageUpload.jsx\";\n\ndeclare module \"@tiptap/core\" {\n interface Commands<ReturnType> {\n imageUpload: {\n setImageUpload: () => ReturnType;\n };\n }\n}\n\nexport const ImageUpload = Node.create({\n name: \"imageUpload\",\n\n isolating: true,\n\n defining: true,\n\n group: \"block\",\n\n draggable: true,\n\n selectable: true,\n\n inline: false,\n\n parseHTML() {\n return [\n {\n tag: `div[data-type=\"${this.name}\"]`,\n },\n ];\n },\n\n renderHTML() {\n return [\"div\", { \"data-type\": this.name }];\n },\n\n addCommands() {\n return {\n setImageUpload:\n () =>\n ({ commands }) =>\n commands.insertContent(`<div data-type=\"${this.name}\"></div>`),\n };\n },\n\n addNodeView() {\n return ReactNodeViewRenderer(ImageUploadComponent);\n },\n});\n\nexport default ImageUpload;\n"],"names":["Node","ReactNodeViewRenderer","ImageUpload","ImageUploadComponent","create","name","isolating","defining","group","draggable","selectable","inline","parseHTML","tag","renderHTML","addCommands","setImageUpload","commands","insertContent","addNodeView"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA,SAASA,IAAI,EAAEC,qBAAqB,QAAQ,gBAAgB;AAC5D,SAASC,eAAeC,oBAAoB,QAAQ,yBAAyB;AAU7E,OAAO,MAAMD,cAAcF,KAAKI,MAAM,CAAC;IACrCC,MAAM;IAENC,WAAW;IAEXC,UAAU;IAEVC,OAAO;IAEPC,WAAW;IAEXC,YAAY;IAEZC,QAAQ;IAERC;QACE,OAAO;YACL;gBACEC,KAAK,CAAC,eAAe,EAAE,IAAI,CAACR,IAAI,CAAC,EAAE,CAAC;YACtC;SACD;IACH;IAEAS;QACE,OAAO;YAAC;YAAO;gBAAE,aAAa,IAAI,CAACT,IAAI;YAAC;SAAE;IAC5C;IAEAU;QACE,OAAO;YACLC,gBACE,IACA,CAAC,EAAEC,QAAQ,EAAE,GACXA,SAASC,aAAa,CAAC,CAAC,gBAAgB,EAAE,IAAI,CAACb,IAAI,CAAC,QAAQ,CAAC;QACnE;IACF;IAEAc;QACE,OAAOlB,sBAAsBE;IAC/B;AACF,GAAG;AAEH,eAAeD,YAAY"}
1
+ {"version":3,"sources":["../../../../../../src/fields/TiptapEditor/extensions/ImageUpload/ImageUpload.ts"],"sourcesContent":["import { Node, ReactNodeViewRenderer } from \"@tiptap/react\";\nimport { ImageUpload as ImageUploadComponent } from \"./view/ImageUpload.js\";\n\ndeclare module \"@tiptap/core\" {\n interface Commands<ReturnType> {\n imageUpload: {\n setImageUpload: () => ReturnType;\n };\n }\n}\n\nexport const ImageUpload = Node.create({\n name: \"imageUpload\",\n\n isolating: true,\n\n defining: true,\n\n group: \"block\",\n\n draggable: true,\n\n selectable: true,\n\n inline: false,\n\n parseHTML() {\n return [\n {\n tag: `div[data-type=\"${this.name}\"]`,\n },\n ];\n },\n\n renderHTML() {\n return [\"div\", { \"data-type\": this.name }];\n },\n\n addCommands() {\n return {\n setImageUpload:\n () =>\n ({ commands }) =>\n commands.insertContent(`<div data-type=\"${this.name}\"></div>`),\n };\n },\n\n addNodeView() {\n return ReactNodeViewRenderer(ImageUploadComponent);\n },\n});\n\nexport default ImageUpload;\n"],"names":["Node","ReactNodeViewRenderer","ImageUpload","ImageUploadComponent","create","name","isolating","defining","group","draggable","selectable","inline","parseHTML","tag","renderHTML","addCommands","setImageUpload","commands","insertContent","addNodeView"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA,SAASA,IAAI,EAAEC,qBAAqB,QAAQ,gBAAgB;AAC5D,SAASC,eAAeC,oBAAoB,QAAQ,wBAAwB;AAU5E,OAAO,MAAMD,cAAcF,KAAKI,MAAM,CAAC;IACrCC,MAAM;IAENC,WAAW;IAEXC,UAAU;IAEVC,OAAO;IAEPC,WAAW;IAEXC,YAAY;IAEZC,QAAQ;IAERC;QACE,OAAO;YACL;gBACEC,KAAK,CAAC,eAAe,EAAE,IAAI,CAACR,IAAI,CAAC,EAAE,CAAC;YACtC;SACD;IACH;IAEAS;QACE,OAAO;YAAC;YAAO;gBAAE,aAAa,IAAI,CAACT,IAAI;YAAC;SAAE;IAC5C;IAEAU;QACE,OAAO;YACLC,gBACE,IACA,CAAC,EAAEC,QAAQ,EAAE,GACXA,SAASC,aAAa,CAAC,CAAC,gBAAgB,EAAE,IAAI,CAACb,IAAI,CAAC,QAAQ,CAAC;QACnE;IACF;IAEAc;QACE,OAAOlB,sBAAsBE;IAC/B;AACF,GAAG;AAEH,eAAeD,YAAY"}
@@ -1,9 +1,9 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { Image, Upload } from "lucide-react";
3
3
  import { useCallback } from "react";
4
- import { Button } from "../../../features/ui/Button/Button.jsx";
5
- import { Icon } from "../../../features/ui/Icon.jsx";
6
- import { Spinner } from "../../../features/ui/Spinner/Spinner.jsx";
4
+ import { Button } from "../../../features/ui/Button/Button.js";
5
+ import { Icon } from "../../../features/ui/Icon.js";
6
+ import { Spinner } from "../../../features/ui/Spinner/Spinner.js";
7
7
  import { cn } from "../../../lib/utils/index.js";
8
8
  import { useDropZone, useFileUpload, useUploader } from "./hooks.js";
9
9
  export const ImageUploader = ({ onUpload })=>{
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/extensions/ImageUpload/view/ImageUploader.tsx"],"sourcesContent":["import { Image, Upload } from \"lucide-react\";\nimport { ChangeEvent, useCallback } from \"react\";\nimport { Button } from \"../../../features/ui/Button/Button.jsx\";\nimport { Icon } from \"../../../features/ui/Icon.jsx\";\nimport { Spinner } from \"../../../features/ui/Spinner/Spinner.jsx\";\nimport { cn } from \"../../../lib/utils/index.js\";\nimport { useDropZone, useFileUpload, useUploader } from \"./hooks.js\";\nexport const ImageUploader = ({\n onUpload,\n}: {\n onUpload: (url: string) => void;\n}) => {\n const { loading, uploadFile } = useUploader({ onUpload });\n const { handleUploadClick, ref } = useFileUpload();\n const { draggedInside, onDrop, onDragEnter, onDragLeave } = useDropZone({\n uploader: uploadFile,\n });\n\n const onFileChange = useCallback(\n (e: ChangeEvent<HTMLInputElement>) =>\n e.target.files ? uploadFile() : null,\n [uploadFile]\n );\n\n if (loading) {\n return (\n <div className=\"flex items-center justify-center p-8 rounded-lg min-h-[10rem] bg-opacity-80\">\n <Spinner className=\"text-neutral-500\" size={1.5} />\n </div>\n );\n }\n\n const wrapperClass = cn(\n \"flex flex-col items-center justify-center px-8 py-10 rounded-lg bg-opacity-80\",\n draggedInside && \"bg-neutral-100\"\n );\n\n return (\n <div\n className={wrapperClass}\n onDrop={onDrop}\n onDragOver={onDragEnter}\n onDragLeave={onDragLeave}\n contentEditable={false}\n >\n <Icon\n icon={Image}\n className=\"w-12 h-12 mb-4 text-black dark:text-white opacity-20\"\n />\n <div className=\"flex flex-col items-center justify-center gap-2\">\n <div className=\"text-sm font-medium text-center text-neutral-400 dark:text-neutral-500\">\n {draggedInside ? \"Drop image here\" : \"Drag and drop or\"}\n </div>\n <div>\n <Button\n type=\"button\"\n disabled={draggedInside}\n onClick={handleUploadClick}\n variant=\"primary\"\n buttonSize=\"small\"\n >\n <Icon icon={Upload} />\n Upload an image\n </Button>\n </div>\n </div>\n <input\n className=\"w-0 h-0 overflow-hidden opacity-0\"\n ref={ref}\n type=\"file\"\n accept=\".jpg,.jpeg,.png,.webp,.gif\"\n onChange={onFileChange}\n />\n </div>\n );\n};\n\nexport default ImageUploader;\n"],"names":["Image","Upload","useCallback","Button","Icon","Spinner","cn","useDropZone","useFileUpload","useUploader","ImageUploader","onUpload","loading","uploadFile","handleUploadClick","ref","draggedInside","onDrop","onDragEnter","onDragLeave","uploader","onFileChange","e","target","files","div","className","size","wrapperClass","onDragOver","contentEditable","icon","type","disabled","onClick","variant","buttonSize","input","accept","onChange"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";AAAA,SAASA,KAAK,EAAEC,MAAM,QAAQ,eAAe;AAC7C,SAAsBC,WAAW,QAAQ,QAAQ;AACjD,SAASC,MAAM,QAAQ,yCAAyC;AAChE,SAASC,IAAI,QAAQ,gCAAgC;AACrD,SAASC,OAAO,QAAQ,2CAA2C;AACnE,SAASC,EAAE,QAAQ,8BAA8B;AACjD,SAASC,WAAW,EAAEC,aAAa,EAAEC,WAAW,QAAQ,aAAa;AACrE,OAAO,MAAMC,gBAAgB,CAAC,EAC5BC,QAAQ,EAGT;IACC,MAAM,EAAEC,OAAO,EAAEC,UAAU,EAAE,GAAGJ,YAAY;QAAEE;IAAS;IACvD,MAAM,EAAEG,iBAAiB,EAAEC,GAAG,EAAE,GAAGP;IACnC,MAAM,EAAEQ,aAAa,EAAEC,MAAM,EAAEC,WAAW,EAAEC,WAAW,EAAE,GAAGZ,YAAY;QACtEa,UAAUP;IACZ;IAEA,MAAMQ,eAAenB,YACnB,CAACoB,IACCA,EAAEC,MAAM,CAACC,KAAK,GAAGX,eAAe,MAClC;QAACA;KAAW;IAGd,IAAID,SAAS;QACX,qBACE,KAACa;YAAIC,WAAU;sBACb,cAAA,KAACrB;gBAAQqB,WAAU;gBAAmBC,MAAM;;;IAGlD;IAEA,MAAMC,eAAetB,GACnB,iFACAU,iBAAiB;IAGnB,qBACE,MAACS;QACCC,WAAWE;QACXX,QAAQA;QACRY,YAAYX;QACZC,aAAaA;QACbW,iBAAiB;;0BAEjB,KAAC1B;gBACC2B,MAAM/B;gBACN0B,WAAU;;0BAEZ,MAACD;gBAAIC,WAAU;;kCACb,KAACD;wBAAIC,WAAU;kCACZV,gBAAgB,oBAAoB;;kCAEvC,KAACS;kCACC,cAAA,MAACtB;4BACC6B,MAAK;4BACLC,UAAUjB;4BACVkB,SAASpB;4BACTqB,SAAQ;4BACRC,YAAW;;8CAEX,KAAChC;oCAAK2B,MAAM9B;;gCAAU;;;;;;0BAK5B,KAACoC;gBACCX,WAAU;gBACVX,KAAKA;gBACLiB,MAAK;gBACLM,QAAO;gBACPC,UAAUlB;;;;AAIlB,EAAE;AAEF,eAAeX,cAAc"}
1
+ {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/extensions/ImageUpload/view/ImageUploader.tsx"],"sourcesContent":["import { Image, Upload } from \"lucide-react\";\nimport { ChangeEvent, useCallback } from \"react\";\nimport { Button } from \"../../../features/ui/Button/Button.js\";\nimport { Icon } from \"../../../features/ui/Icon.js\";\nimport { Spinner } from \"../../../features/ui/Spinner/Spinner.js\";\nimport { cn } from \"../../../lib/utils/index.js\";\nimport { useDropZone, useFileUpload, useUploader } from \"./hooks.js\";\nexport const ImageUploader = ({\n onUpload,\n}: {\n onUpload: (url: string) => void;\n}) => {\n const { loading, uploadFile } = useUploader({ onUpload });\n const { handleUploadClick, ref } = useFileUpload();\n const { draggedInside, onDrop, onDragEnter, onDragLeave } = useDropZone({\n uploader: uploadFile,\n });\n\n const onFileChange = useCallback(\n (e: ChangeEvent<HTMLInputElement>) =>\n e.target.files ? uploadFile() : null,\n [uploadFile]\n );\n\n if (loading) {\n return (\n <div className=\"flex items-center justify-center p-8 rounded-lg min-h-[10rem] bg-opacity-80\">\n <Spinner className=\"text-neutral-500\" size={1.5} />\n </div>\n );\n }\n\n const wrapperClass = cn(\n \"flex flex-col items-center justify-center px-8 py-10 rounded-lg bg-opacity-80\",\n draggedInside && \"bg-neutral-100\"\n );\n\n return (\n <div\n className={wrapperClass}\n onDrop={onDrop}\n onDragOver={onDragEnter}\n onDragLeave={onDragLeave}\n contentEditable={false}\n >\n <Icon\n icon={Image}\n className=\"w-12 h-12 mb-4 text-black dark:text-white opacity-20\"\n />\n <div className=\"flex flex-col items-center justify-center gap-2\">\n <div className=\"text-sm font-medium text-center text-neutral-400 dark:text-neutral-500\">\n {draggedInside ? \"Drop image here\" : \"Drag and drop or\"}\n </div>\n <div>\n <Button\n type=\"button\"\n disabled={draggedInside}\n onClick={handleUploadClick}\n variant=\"primary\"\n buttonSize=\"small\"\n >\n <Icon icon={Upload} />\n Upload an image\n </Button>\n </div>\n </div>\n <input\n className=\"w-0 h-0 overflow-hidden opacity-0\"\n ref={ref}\n type=\"file\"\n accept=\".jpg,.jpeg,.png,.webp,.gif\"\n onChange={onFileChange}\n />\n </div>\n );\n};\n\nexport default ImageUploader;\n"],"names":["Image","Upload","useCallback","Button","Icon","Spinner","cn","useDropZone","useFileUpload","useUploader","ImageUploader","onUpload","loading","uploadFile","handleUploadClick","ref","draggedInside","onDrop","onDragEnter","onDragLeave","uploader","onFileChange","e","target","files","div","className","size","wrapperClass","onDragOver","contentEditable","icon","type","disabled","onClick","variant","buttonSize","input","accept","onChange"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";AAAA,SAASA,KAAK,EAAEC,MAAM,QAAQ,eAAe;AAC7C,SAAsBC,WAAW,QAAQ,QAAQ;AACjD,SAASC,MAAM,QAAQ,wCAAwC;AAC/D,SAASC,IAAI,QAAQ,+BAA+B;AACpD,SAASC,OAAO,QAAQ,0CAA0C;AAClE,SAASC,EAAE,QAAQ,8BAA8B;AACjD,SAASC,WAAW,EAAEC,aAAa,EAAEC,WAAW,QAAQ,aAAa;AACrE,OAAO,MAAMC,gBAAgB,CAAC,EAC5BC,QAAQ,EAGT;IACC,MAAM,EAAEC,OAAO,EAAEC,UAAU,EAAE,GAAGJ,YAAY;QAAEE;IAAS;IACvD,MAAM,EAAEG,iBAAiB,EAAEC,GAAG,EAAE,GAAGP;IACnC,MAAM,EAAEQ,aAAa,EAAEC,MAAM,EAAEC,WAAW,EAAEC,WAAW,EAAE,GAAGZ,YAAY;QACtEa,UAAUP;IACZ;IAEA,MAAMQ,eAAenB,YACnB,CAACoB,IACCA,EAAEC,MAAM,CAACC,KAAK,GAAGX,eAAe,MAClC;QAACA;KAAW;IAGd,IAAID,SAAS;QACX,qBACE,KAACa;YAAIC,WAAU;sBACb,cAAA,KAACrB;gBAAQqB,WAAU;gBAAmBC,MAAM;;;IAGlD;IAEA,MAAMC,eAAetB,GACnB,iFACAU,iBAAiB;IAGnB,qBACE,MAACS;QACCC,WAAWE;QACXX,QAAQA;QACRY,YAAYX;QACZC,aAAaA;QACbW,iBAAiB;;0BAEjB,KAAC1B;gBACC2B,MAAM/B;gBACN0B,WAAU;;0BAEZ,MAACD;gBAAIC,WAAU;;kCACb,KAACD;wBAAIC,WAAU;kCACZV,gBAAgB,oBAAoB;;kCAEvC,KAACS;kCACC,cAAA,MAACtB;4BACC6B,MAAK;4BACLC,UAAUjB;4BACVkB,SAASpB;4BACTqB,SAAQ;4BACRC,YAAW;;8CAEX,KAAChC;oCAAK2B,MAAM9B;;gCAAU;;;;;;0BAK5B,KAACoC;gBACCX,WAAU;gBACVX,KAAKA;gBACLiB,MAAK;gBACLM,QAAO;gBACPC,UAAUlB;;;;AAIlB,EAAE;AAEF,eAAeX,cAAc"}
@@ -1,2 +1,2 @@
1
- export * from "./ImageUpload.jsx";
1
+ export * from "./ImageUpload.js";
2
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/fields/TiptapEditor/extensions/ImageUpload/view/index.tsx"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/fields/TiptapEditor/extensions/ImageUpload/view/index.tsx"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC"}
@@ -1,3 +1,3 @@
1
- export * from "./ImageUpload.jsx";
1
+ export * from "./ImageUpload.js";
2
2
 
3
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/extensions/ImageUpload/view/index.tsx"],"sourcesContent":["export * from \"./ImageUpload.jsx\";\n"],"names":[],"rangeMappings":"","mappings":"AAAA,cAAc,oBAAoB"}
1
+ {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/extensions/ImageUpload/view/index.tsx"],"sourcesContent":["export * from \"./ImageUpload.js\";\n"],"names":[],"rangeMappings":"","mappings":"AAAA,cAAc,mBAAmB"}
@@ -1,6 +1,6 @@
1
1
  import { Node, mergeAttributes } from "@tiptap/core";
2
2
  import { ReactNodeViewRenderer } from "@tiptap/react";
3
- import InsideLinksComponent from "./InsideLinksComponent.jsx";
3
+ import InsideLinksComponent from "./InsideLinksComponent.js";
4
4
  export const InsideLinks = Node.create({
5
5
  name: "insideLinks",
6
6
  group: "block",
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/fields/TiptapEditor/extensions/InsideLinks/insideLinks.ts"],"sourcesContent":["declare module \"@tiptap/core\" {\n interface Commands<ReturnType> {\n insideLinks: {\n /**\n * Add an image\n */\n\n insertInsideLinks: ({\n thumbnail,\n title,\n id,\n type,\n url,\n }: {\n thumbnail?: string;\n title?: string;\n id?: string;\n type?: string;\n url?: string;\n }) => ReturnType;\n };\n }\n}\n\nimport { Node, mergeAttributes } from \"@tiptap/core\";\nimport { ReactNodeViewRenderer } from \"@tiptap/react\";\nimport InsideLinksComponent from \"./InsideLinksComponent.jsx\";\n\nexport const InsideLinks = Node.create({\n name: \"insideLinks\",\n\n group: \"block\",\n content: \"inline*\",\n draggable: true,\n\n // content: 'inline*',\n\n parseHTML() {\n return [\n {\n tag: 'div[data-type=\"insideLinks\"]',\n },\n ];\n },\n\n addAttributes() {\n return {\n thumbnail: { default: null },\n title: { default: null },\n id: { default: null },\n type: { default: null },\n url: { default: null },\n };\n },\n\n addKeyboardShortcuts() {\n return {\n \"Mod-Enter\": () => {\n return this.editor\n .chain()\n .insertContentAt(this.editor.state.selection.head, {\n type: this.type.name,\n })\n .focus()\n .run();\n },\n };\n },\n\n renderHTML({ HTMLAttributes }) {\n return [\n \"div\",\n mergeAttributes(HTMLAttributes, { \"data-type\": \"insideLinks\" }),\n 0,\n ];\n },\n\n addNodeView() {\n return ReactNodeViewRenderer(InsideLinksComponent);\n },\n\n addCommands() {\n return {\n insertInsideLinks:\n ({\n thumbnail,\n title,\n id,\n type,\n url,\n }: {\n thumbnail?: string;\n title?: string;\n id?: string;\n type?: string;\n url?: string;\n }) =>\n ({ commands, state }) => {\n return commands.insertContent({\n type: \"insideLinks\",\n attrs: {\n thumbnail,\n title,\n id,\n type,\n url,\n },\n });\n },\n };\n },\n});\n\nfunction isValidHttpUrl(string: string) {\n let url;\n\n try {\n url = new URL(string);\n } catch (_) {\n return false;\n }\n\n return url.protocol === \"http:\" || url.protocol === \"https:\";\n}\n"],"names":["Node","mergeAttributes","ReactNodeViewRenderer","InsideLinksComponent","InsideLinks","create","name","group","content","draggable","parseHTML","tag","addAttributes","thumbnail","default","title","id","type","url","addKeyboardShortcuts","editor","chain","insertContentAt","state","selection","head","focus","run","renderHTML","HTMLAttributes","addNodeView","addCommands","insertInsideLinks","commands","insertContent","attrs","isValidHttpUrl","string","URL","_","protocol"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAwBA,SAASA,IAAI,EAAEC,eAAe,QAAQ,eAAe;AACrD,SAASC,qBAAqB,QAAQ,gBAAgB;AACtD,OAAOC,0BAA0B,6BAA6B;AAE9D,OAAO,MAAMC,cAAcJ,KAAKK,MAAM,CAAC;IACrCC,MAAM;IAENC,OAAO;IACPC,SAAS;IACTC,WAAW;IAEX,sBAAsB;IAEtBC;QACE,OAAO;YACL;gBACEC,KAAK;YACP;SACD;IACH;IAEAC;QACE,OAAO;YACLC,WAAW;gBAAEC,SAAS;YAAK;YAC3BC,OAAO;gBAAED,SAAS;YAAK;YACvBE,IAAI;gBAAEF,SAAS;YAAK;YACpBG,MAAM;gBAAEH,SAAS;YAAK;YACtBI,KAAK;gBAAEJ,SAAS;YAAK;QACvB;IACF;IAEAK;QACE,OAAO;YACL,aAAa;gBACX,OAAO,IAAI,CAACC,MAAM,CACfC,KAAK,GACLC,eAAe,CAAC,IAAI,CAACF,MAAM,CAACG,KAAK,CAACC,SAAS,CAACC,IAAI,EAAE;oBACjDR,MAAM,IAAI,CAACA,IAAI,CAACX,IAAI;gBACtB,GACCoB,KAAK,GACLC,GAAG;YACR;QACF;IACF;IAEAC,YAAW,EAAEC,cAAc,EAAE;QAC3B,OAAO;YACL;YACA5B,gBAAgB4B,gBAAgB;gBAAE,aAAa;YAAc;YAC7D;SACD;IACH;IAEAC;QACE,OAAO5B,sBAAsBC;IAC/B;IAEA4B;QACE,OAAO;YACLC,mBACE,CAAC,EACCnB,SAAS,EACTE,KAAK,EACLC,EAAE,EACFC,IAAI,EACJC,GAAG,EAOJ,GACD,CAAC,EAAEe,QAAQ,EAAEV,KAAK,EAAE;oBAClB,OAAOU,SAASC,aAAa,CAAC;wBAC5BjB,MAAM;wBACNkB,OAAO;4BACLtB;4BACAE;4BACAC;4BACAC;4BACAC;wBACF;oBACF;gBACF;QACJ;IACF;AACF,GAAG;AAEH,SAASkB,eAAeC,MAAc;IACpC,IAAInB;IAEJ,IAAI;QACFA,MAAM,IAAIoB,IAAID;IAChB,EAAE,OAAOE,GAAG;QACV,OAAO;IACT;IAEA,OAAOrB,IAAIsB,QAAQ,KAAK,WAAWtB,IAAIsB,QAAQ,KAAK;AACtD"}
1
+ {"version":3,"sources":["../../../../../../src/fields/TiptapEditor/extensions/InsideLinks/insideLinks.ts"],"sourcesContent":["declare module \"@tiptap/core\" {\n interface Commands<ReturnType> {\n insideLinks: {\n /**\n * Add an image\n */\n\n insertInsideLinks: ({\n thumbnail,\n title,\n id,\n type,\n url,\n }: {\n thumbnail?: string;\n title?: string;\n id?: string;\n type?: string;\n url?: string;\n }) => ReturnType;\n };\n }\n}\n\nimport { Node, mergeAttributes } from \"@tiptap/core\";\nimport { ReactNodeViewRenderer } from \"@tiptap/react\";\nimport InsideLinksComponent from \"./InsideLinksComponent.js\";\n\nexport const InsideLinks = Node.create({\n name: \"insideLinks\",\n\n group: \"block\",\n content: \"inline*\",\n draggable: true,\n\n // content: 'inline*',\n\n parseHTML() {\n return [\n {\n tag: 'div[data-type=\"insideLinks\"]',\n },\n ];\n },\n\n addAttributes() {\n return {\n thumbnail: { default: null },\n title: { default: null },\n id: { default: null },\n type: { default: null },\n url: { default: null },\n };\n },\n\n addKeyboardShortcuts() {\n return {\n \"Mod-Enter\": () => {\n return this.editor\n .chain()\n .insertContentAt(this.editor.state.selection.head, {\n type: this.type.name,\n })\n .focus()\n .run();\n },\n };\n },\n\n renderHTML({ HTMLAttributes }) {\n return [\n \"div\",\n mergeAttributes(HTMLAttributes, { \"data-type\": \"insideLinks\" }),\n 0,\n ];\n },\n\n addNodeView() {\n return ReactNodeViewRenderer(InsideLinksComponent);\n },\n\n addCommands() {\n return {\n insertInsideLinks:\n ({\n thumbnail,\n title,\n id,\n type,\n url,\n }: {\n thumbnail?: string;\n title?: string;\n id?: string;\n type?: string;\n url?: string;\n }) =>\n ({ commands, state }) => {\n return commands.insertContent({\n type: \"insideLinks\",\n attrs: {\n thumbnail,\n title,\n id,\n type,\n url,\n },\n });\n },\n };\n },\n});\n\nfunction isValidHttpUrl(string: string) {\n let url;\n\n try {\n url = new URL(string);\n } catch (_) {\n return false;\n }\n\n return url.protocol === \"http:\" || url.protocol === \"https:\";\n}\n"],"names":["Node","mergeAttributes","ReactNodeViewRenderer","InsideLinksComponent","InsideLinks","create","name","group","content","draggable","parseHTML","tag","addAttributes","thumbnail","default","title","id","type","url","addKeyboardShortcuts","editor","chain","insertContentAt","state","selection","head","focus","run","renderHTML","HTMLAttributes","addNodeView","addCommands","insertInsideLinks","commands","insertContent","attrs","isValidHttpUrl","string","URL","_","protocol"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAwBA,SAASA,IAAI,EAAEC,eAAe,QAAQ,eAAe;AACrD,SAASC,qBAAqB,QAAQ,gBAAgB;AACtD,OAAOC,0BAA0B,4BAA4B;AAE7D,OAAO,MAAMC,cAAcJ,KAAKK,MAAM,CAAC;IACrCC,MAAM;IAENC,OAAO;IACPC,SAAS;IACTC,WAAW;IAEX,sBAAsB;IAEtBC;QACE,OAAO;YACL;gBACEC,KAAK;YACP;SACD;IACH;IAEAC;QACE,OAAO;YACLC,WAAW;gBAAEC,SAAS;YAAK;YAC3BC,OAAO;gBAAED,SAAS;YAAK;YACvBE,IAAI;gBAAEF,SAAS;YAAK;YACpBG,MAAM;gBAAEH,SAAS;YAAK;YACtBI,KAAK;gBAAEJ,SAAS;YAAK;QACvB;IACF;IAEAK;QACE,OAAO;YACL,aAAa;gBACX,OAAO,IAAI,CAACC,MAAM,CACfC,KAAK,GACLC,eAAe,CAAC,IAAI,CAACF,MAAM,CAACG,KAAK,CAACC,SAAS,CAACC,IAAI,EAAE;oBACjDR,MAAM,IAAI,CAACA,IAAI,CAACX,IAAI;gBACtB,GACCoB,KAAK,GACLC,GAAG;YACR;QACF;IACF;IAEAC,YAAW,EAAEC,cAAc,EAAE;QAC3B,OAAO;YACL;YACA5B,gBAAgB4B,gBAAgB;gBAAE,aAAa;YAAc;YAC7D;SACD;IACH;IAEAC;QACE,OAAO5B,sBAAsBC;IAC/B;IAEA4B;QACE,OAAO;YACLC,mBACE,CAAC,EACCnB,SAAS,EACTE,KAAK,EACLC,EAAE,EACFC,IAAI,EACJC,GAAG,EAOJ,GACD,CAAC,EAAEe,QAAQ,EAAEV,KAAK,EAAE;oBAClB,OAAOU,SAASC,aAAa,CAAC;wBAC5BjB,MAAM;wBACNkB,OAAO;4BACLtB;4BACAE;4BACAC;4BACAC;4BACAC;wBACF;oBACF;gBACF;QACJ;IACF;AACF,GAAG;AAEH,SAASkB,eAAeC,MAAc;IACpC,IAAInB;IAEJ,IAAI;QACFA,MAAM,IAAIoB,IAAID;IAChB,EAAE,OAAOE,GAAG;QACV,OAAO;IACT;IAEA,OAAOrB,IAAIsB,QAAQ,KAAK,WAAWtB,IAAIsB,QAAQ,KAAK;AACtD"}
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { BubbleMenu as BaseBubbleMenu } from "@tiptap/react";
3
3
  import { useCallback } from "react";
4
- import { InsideLinksEditorPanel } from "../../../features/panels/InsideLinksEditorPanel/index.jsx";
4
+ import { InsideLinksEditorPanel } from "../../../features/panels/InsideLinksEditorPanel/index.js";
5
5
  export const InsideLinksMenu = ({ editor, appendTo })=>{
6
6
  const shouldShow = useCallback(()=>{
7
7
  const isInsideLinks = editor.isActive("insideLinks");
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/extensions/InsideLinks/menus/InsideLinksMenu.tsx"],"sourcesContent":["import { BubbleMenu as BaseBubbleMenu } from \"@tiptap/react\";\nimport { useCallback } from \"react\";\n\nimport { MenuProps } from \"../../../features/menus/types.js\";\nimport { InsideLinksEditorPanel } from \"../../../features/panels/InsideLinksEditorPanel/index.jsx\";\n\nexport const InsideLinksMenu = ({ editor, appendTo }: MenuProps) => {\n const shouldShow = useCallback(() => {\n const isInsideLinks = editor.isActive(\"insideLinks\");\n return isInsideLinks;\n }, [editor]);\n\n const onRelationshipSelect = useCallback(\n ({\n id,\n type,\n thumbnail,\n title,\n url,\n }: {\n id: string;\n type: string;\n thumbnail: string;\n title: string;\n url: string;\n }) => {\n editor\n .chain()\n .focus()\n .insertInsideLinks({ id, type, thumbnail, title, url })\n .run();\n },\n [editor]\n );\n\n return (\n <BaseBubbleMenu\n editor={editor}\n pluginKey={`socialMediaMenu`}\n shouldShow={shouldShow}\n tippyOptions={{\n popperOptions: { placement: \"bottom\" },\n placement: \"bottom\",\n // appendTo: () => {\n // return appendTo?.current\n // },\n }}\n updateDelay={100}\n >\n <p>Inside Links</p>\n <InsideLinksEditorPanel\n onRelationshipSelect={onRelationshipSelect}\n onCancel={() => {\n editor.chain().blur().run();\n }}\n />\n {/* <SocialMediaPopover onSetLink={onHtml} initialSrcLink={''} /> */}\n {/* \n <Toolbar.Wrapper>\n <to\n <Toolbar.Button\n type=\"button\"\n tooltip=\"Sidebar left\"\n active={true}\n // onClick={onColumnLeft}\n >\n <SocialMediaPopover onSetLink={onHtml} initialSrcLink={''} />\n </Toolbar.Button>\n </Toolbar.Wrapper> */}\n </BaseBubbleMenu>\n );\n};\n\nexport default InsideLinksMenu;\n"],"names":["BubbleMenu","BaseBubbleMenu","useCallback","InsideLinksEditorPanel","InsideLinksMenu","editor","appendTo","shouldShow","isInsideLinks","isActive","onRelationshipSelect","id","type","thumbnail","title","url","chain","focus","insertInsideLinks","run","pluginKey","tippyOptions","popperOptions","placement","updateDelay","p","onCancel","blur"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";AAAA,SAASA,cAAcC,cAAc,QAAQ,gBAAgB;AAC7D,SAASC,WAAW,QAAQ,QAAQ;AAGpC,SAASC,sBAAsB,QAAQ,4DAA4D;AAEnG,OAAO,MAAMC,kBAAkB,CAAC,EAAEC,MAAM,EAAEC,QAAQ,EAAa;IAC7D,MAAMC,aAAaL,YAAY;QAC7B,MAAMM,gBAAgBH,OAAOI,QAAQ,CAAC;QACtC,OAAOD;IACT,GAAG;QAACH;KAAO;IAEX,MAAMK,uBAAuBR,YAC3B,CAAC,EACCS,EAAE,EACFC,IAAI,EACJC,SAAS,EACTC,KAAK,EACLC,GAAG,EAOJ;QACCV,OACGW,KAAK,GACLC,KAAK,GACLC,iBAAiB,CAAC;YAAEP;YAAIC;YAAMC;YAAWC;YAAOC;QAAI,GACpDI,GAAG;IACR,GACA;QAACd;KAAO;IAGV,qBACE,MAACJ;QACCI,QAAQA;QACRe,WAAW,CAAC,eAAe,CAAC;QAC5Bb,YAAYA;QACZc,cAAc;YACZC,eAAe;gBAAEC,WAAW;YAAS;YACrCA,WAAW;QAIb;QACAC,aAAa;;0BAEb,KAACC;0BAAE;;0BACH,KAACtB;gBACCO,sBAAsBA;gBACtBgB,UAAU;oBACRrB,OAAOW,KAAK,GAAGW,IAAI,GAAGR,GAAG;gBAC3B;;;;AAiBR,EAAE;AAEF,eAAef,gBAAgB"}
1
+ {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/extensions/InsideLinks/menus/InsideLinksMenu.tsx"],"sourcesContent":["import { BubbleMenu as BaseBubbleMenu } from \"@tiptap/react\";\nimport { useCallback } from \"react\";\n\nimport { MenuProps } from \"../../../features/menus/types.js\";\nimport { InsideLinksEditorPanel } from \"../../../features/panels/InsideLinksEditorPanel/index.js\";\n\nexport const InsideLinksMenu = ({ editor, appendTo }: MenuProps) => {\n const shouldShow = useCallback(() => {\n const isInsideLinks = editor.isActive(\"insideLinks\");\n return isInsideLinks;\n }, [editor]);\n\n const onRelationshipSelect = useCallback(\n ({\n id,\n type,\n thumbnail,\n title,\n url,\n }: {\n id: string;\n type: string;\n thumbnail: string;\n title: string;\n url: string;\n }) => {\n editor\n .chain()\n .focus()\n .insertInsideLinks({ id, type, thumbnail, title, url })\n .run();\n },\n [editor]\n );\n\n return (\n <BaseBubbleMenu\n editor={editor}\n pluginKey={`socialMediaMenu`}\n shouldShow={shouldShow}\n tippyOptions={{\n popperOptions: { placement: \"bottom\" },\n placement: \"bottom\",\n // appendTo: () => {\n // return appendTo?.current\n // },\n }}\n updateDelay={100}\n >\n <p>Inside Links</p>\n <InsideLinksEditorPanel\n onRelationshipSelect={onRelationshipSelect}\n onCancel={() => {\n editor.chain().blur().run();\n }}\n />\n {/* <SocialMediaPopover onSetLink={onHtml} initialSrcLink={''} /> */}\n {/* \n <Toolbar.Wrapper>\n <to\n <Toolbar.Button\n type=\"button\"\n tooltip=\"Sidebar left\"\n active={true}\n // onClick={onColumnLeft}\n >\n <SocialMediaPopover onSetLink={onHtml} initialSrcLink={''} />\n </Toolbar.Button>\n </Toolbar.Wrapper> */}\n </BaseBubbleMenu>\n );\n};\n\nexport default InsideLinksMenu;\n"],"names":["BubbleMenu","BaseBubbleMenu","useCallback","InsideLinksEditorPanel","InsideLinksMenu","editor","appendTo","shouldShow","isInsideLinks","isActive","onRelationshipSelect","id","type","thumbnail","title","url","chain","focus","insertInsideLinks","run","pluginKey","tippyOptions","popperOptions","placement","updateDelay","p","onCancel","blur"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";AAAA,SAASA,cAAcC,cAAc,QAAQ,gBAAgB;AAC7D,SAASC,WAAW,QAAQ,QAAQ;AAGpC,SAASC,sBAAsB,QAAQ,2DAA2D;AAElG,OAAO,MAAMC,kBAAkB,CAAC,EAAEC,MAAM,EAAEC,QAAQ,EAAa;IAC7D,MAAMC,aAAaL,YAAY;QAC7B,MAAMM,gBAAgBH,OAAOI,QAAQ,CAAC;QACtC,OAAOD;IACT,GAAG;QAACH;KAAO;IAEX,MAAMK,uBAAuBR,YAC3B,CAAC,EACCS,EAAE,EACFC,IAAI,EACJC,SAAS,EACTC,KAAK,EACLC,GAAG,EAOJ;QACCV,OACGW,KAAK,GACLC,KAAK,GACLC,iBAAiB,CAAC;YAAEP;YAAIC;YAAMC;YAAWC;YAAOC;QAAI,GACpDI,GAAG;IACR,GACA;QAACd;KAAO;IAGV,qBACE,MAACJ;QACCI,QAAQA;QACRe,WAAW,CAAC,eAAe,CAAC;QAC5Bb,YAAYA;QACZc,cAAc;YACZC,eAAe;gBAAEC,WAAW;YAAS;YACrCA,WAAW;QAIb;QACAC,aAAa;;0BAEb,KAACC;0BAAE;;0BACH,KAACtB;gBACCO,sBAAsBA;gBACtBgB,UAAU;oBACRrB,OAAOW,KAAK,GAAGW,IAAI,GAAGR,GAAG;gBAC3B;;;;AAiBR,EAAE;AAEF,eAAef,gBAAgB"}
@@ -1,2 +1,2 @@
1
- export * from "./InsideLinksMenu.jsx";
1
+ export * from "./InsideLinksMenu.js";
2
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/fields/TiptapEditor/extensions/InsideLinks/menus/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/fields/TiptapEditor/extensions/InsideLinks/menus/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC"}
@@ -1,3 +1,3 @@
1
- export * from "./InsideLinksMenu.jsx";
1
+ export * from "./InsideLinksMenu.js";
2
2
 
3
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/extensions/InsideLinks/menus/index.ts"],"sourcesContent":["export * from \"./InsideLinksMenu.jsx\";\n"],"names":[],"rangeMappings":"","mappings":"AAAA,cAAc,wBAAwB"}
1
+ {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/extensions/InsideLinks/menus/index.ts"],"sourcesContent":["export * from \"./InsideLinksMenu.js\";\n"],"names":[],"rangeMappings":"","mappings":"AAAA,cAAc,uBAAuB"}
@@ -4,8 +4,8 @@ import { useCallback } from "react";
4
4
  import { sticky } from "tippy.js";
5
5
  import { v4 as uuid } from "uuid";
6
6
  import { Columns2, PanelLeft, PanelRight } from "lucide-react";
7
- import { Icon } from "../../../features/ui/Icon.jsx";
8
- import { Toolbar } from "../../../features/ui/Toolbar.jsx";
7
+ import { Icon } from "../../../features/ui/Icon.js";
8
+ import { Toolbar } from "../../../features/ui/Toolbar.js";
9
9
  import { getRenderContainer } from "../../../lib/utils/index.js";
10
10
  import { ColumnLayout } from "../Columns.js";
11
11
  export const ColumnsMenu = ({ editor, appendTo })=>{
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/extensions/MultiColumn/menus/ColumnsMenu.tsx"],"sourcesContent":["import { BubbleMenu as BaseBubbleMenu } from \"@tiptap/react\";\nimport { useCallback } from \"react\";\nimport { sticky } from \"tippy.js\";\nimport { v4 as uuid } from \"uuid\";\n\nimport { Columns2, PanelLeft, PanelRight } from \"lucide-react\";\nimport { MenuProps } from \"../../../features/menus/types.js\";\nimport { Icon } from \"../../../features/ui/Icon.jsx\";\nimport { Toolbar } from \"../../../features/ui/Toolbar.jsx\";\nimport { getRenderContainer } from \"../../../lib/utils/index.js\";\nimport { ColumnLayout } from \"../Columns.js\";\n\nexport const ColumnsMenu = ({ editor, appendTo }: MenuProps) => {\n const getReferenceClientRect = useCallback(() => {\n const renderContainer = getRenderContainer(editor, \"columns\");\n const rect =\n renderContainer?.getBoundingClientRect() ||\n new DOMRect(-1000, -1000, 0, 0);\n\n return rect;\n }, [editor]);\n\n const shouldShow = useCallback(() => {\n const isColumns = editor.isActive(\"columns\");\n return isColumns;\n }, [editor]);\n\n const onColumnLeft = useCallback(() => {\n editor.chain().focus().setLayout(ColumnLayout.SidebarLeft).run();\n }, [editor]);\n\n const onColumnRight = useCallback(() => {\n editor.chain().focus().setLayout(ColumnLayout.SidebarRight).run();\n }, [editor]);\n\n const onColumnTwo = useCallback(() => {\n editor.chain().focus().setLayout(ColumnLayout.TwoColumn).run();\n }, [editor]);\n\n return (\n <BaseBubbleMenu\n editor={editor}\n pluginKey={`columnsMenu-${uuid()}`}\n shouldShow={shouldShow}\n updateDelay={0}\n tippyOptions={{\n offset: [0, 8],\n popperOptions: {\n modifiers: [{ name: \"flip\", enabled: false }],\n },\n getReferenceClientRect,\n appendTo: () => appendTo?.current,\n plugins: [sticky],\n sticky: \"popper\",\n }}\n >\n <Toolbar.Wrapper>\n <Toolbar.Button\n type=\"button\"\n tooltip=\"Sidebar left\"\n active={editor.isActive(\"columns\", {\n layout: ColumnLayout.SidebarLeft,\n })}\n onClick={onColumnLeft}\n >\n <Icon icon={PanelLeft} />\n </Toolbar.Button>\n <Toolbar.Button\n type=\"button\"\n tooltip=\"Two columns\"\n active={editor.isActive(\"columns\", {\n layout: ColumnLayout.TwoColumn,\n })}\n onClick={onColumnTwo}\n >\n <Icon icon={Columns2} />\n </Toolbar.Button>\n <Toolbar.Button\n type=\"button\"\n tooltip=\"Sidebar right\"\n active={editor.isActive(\"columns\", {\n layout: ColumnLayout.SidebarRight,\n })}\n onClick={onColumnRight}\n >\n <Icon icon={PanelRight} />\n </Toolbar.Button>\n </Toolbar.Wrapper>\n </BaseBubbleMenu>\n );\n};\n\nexport default ColumnsMenu;\n"],"names":["BubbleMenu","BaseBubbleMenu","useCallback","sticky","v4","uuid","Columns2","PanelLeft","PanelRight","Icon","Toolbar","getRenderContainer","ColumnLayout","ColumnsMenu","editor","appendTo","getReferenceClientRect","renderContainer","rect","getBoundingClientRect","DOMRect","shouldShow","isColumns","isActive","onColumnLeft","chain","focus","setLayout","SidebarLeft","run","onColumnRight","SidebarRight","onColumnTwo","TwoColumn","pluginKey","updateDelay","tippyOptions","offset","popperOptions","modifiers","name","enabled","current","plugins","Wrapper","Button","type","tooltip","active","layout","onClick","icon"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";AAAA,SAASA,cAAcC,cAAc,QAAQ,gBAAgB;AAC7D,SAASC,WAAW,QAAQ,QAAQ;AACpC,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,MAAMC,IAAI,QAAQ,OAAO;AAElC,SAASC,QAAQ,EAAEC,SAAS,EAAEC,UAAU,QAAQ,eAAe;AAE/D,SAASC,IAAI,QAAQ,gCAAgC;AACrD,SAASC,OAAO,QAAQ,mCAAmC;AAC3D,SAASC,kBAAkB,QAAQ,8BAA8B;AACjE,SAASC,YAAY,QAAQ,gBAAgB;AAE7C,OAAO,MAAMC,cAAc,CAAC,EAAEC,MAAM,EAAEC,QAAQ,EAAa;IACzD,MAAMC,yBAAyBd,YAAY;QACzC,MAAMe,kBAAkBN,mBAAmBG,QAAQ;QACnD,MAAMI,OACJD,iBAAiBE,2BACjB,IAAIC,QAAQ,CAAC,MAAM,CAAC,MAAM,GAAG;QAE/B,OAAOF;IACT,GAAG;QAACJ;KAAO;IAEX,MAAMO,aAAanB,YAAY;QAC7B,MAAMoB,YAAYR,OAAOS,QAAQ,CAAC;QAClC,OAAOD;IACT,GAAG;QAACR;KAAO;IAEX,MAAMU,eAAetB,YAAY;QAC/BY,OAAOW,KAAK,GAAGC,KAAK,GAAGC,SAAS,CAACf,aAAagB,WAAW,EAAEC,GAAG;IAChE,GAAG;QAACf;KAAO;IAEX,MAAMgB,gBAAgB5B,YAAY;QAChCY,OAAOW,KAAK,GAAGC,KAAK,GAAGC,SAAS,CAACf,aAAamB,YAAY,EAAEF,GAAG;IACjE,GAAG;QAACf;KAAO;IAEX,MAAMkB,cAAc9B,YAAY;QAC9BY,OAAOW,KAAK,GAAGC,KAAK,GAAGC,SAAS,CAACf,aAAaqB,SAAS,EAAEJ,GAAG;IAC9D,GAAG;QAACf;KAAO;IAEX,qBACE,KAACb;QACCa,QAAQA;QACRoB,WAAW,CAAC,YAAY,EAAE7B,OAAO,CAAC;QAClCgB,YAAYA;QACZc,aAAa;QACbC,cAAc;YACZC,QAAQ;gBAAC;gBAAG;aAAE;YACdC,eAAe;gBACbC,WAAW;oBAAC;wBAAEC,MAAM;wBAAQC,SAAS;oBAAM;iBAAE;YAC/C;YACAzB;YACAD,UAAU,IAAMA,UAAU2B;YAC1BC,SAAS;gBAACxC;aAAO;YACjBA,QAAQ;QACV;kBAEA,cAAA,MAACO,QAAQkC,OAAO;;8BACd,KAAClC,QAAQmC,MAAM;oBACbC,MAAK;oBACLC,SAAQ;oBACRC,QAAQlC,OAAOS,QAAQ,CAAC,WAAW;wBACjC0B,QAAQrC,aAAagB,WAAW;oBAClC;oBACAsB,SAAS1B;8BAET,cAAA,KAACf;wBAAK0C,MAAM5C;;;8BAEd,KAACG,QAAQmC,MAAM;oBACbC,MAAK;oBACLC,SAAQ;oBACRC,QAAQlC,OAAOS,QAAQ,CAAC,WAAW;wBACjC0B,QAAQrC,aAAaqB,SAAS;oBAChC;oBACAiB,SAASlB;8BAET,cAAA,KAACvB;wBAAK0C,MAAM7C;;;8BAEd,KAACI,QAAQmC,MAAM;oBACbC,MAAK;oBACLC,SAAQ;oBACRC,QAAQlC,OAAOS,QAAQ,CAAC,WAAW;wBACjC0B,QAAQrC,aAAamB,YAAY;oBACnC;oBACAmB,SAASpB;8BAET,cAAA,KAACrB;wBAAK0C,MAAM3C;;;;;;AAKtB,EAAE;AAEF,eAAeK,YAAY"}
1
+ {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/extensions/MultiColumn/menus/ColumnsMenu.tsx"],"sourcesContent":["import { BubbleMenu as BaseBubbleMenu } from \"@tiptap/react\";\nimport { useCallback } from \"react\";\nimport { sticky } from \"tippy.js\";\nimport { v4 as uuid } from \"uuid\";\n\nimport { Columns2, PanelLeft, PanelRight } from \"lucide-react\";\nimport { MenuProps } from \"../../../features/menus/types.js\";\nimport { Icon } from \"../../../features/ui/Icon.js\";\nimport { Toolbar } from \"../../../features/ui/Toolbar.js\";\nimport { getRenderContainer } from \"../../../lib/utils/index.js\";\nimport { ColumnLayout } from \"../Columns.js\";\n\nexport const ColumnsMenu = ({ editor, appendTo }: MenuProps) => {\n const getReferenceClientRect = useCallback(() => {\n const renderContainer = getRenderContainer(editor, \"columns\");\n const rect =\n renderContainer?.getBoundingClientRect() ||\n new DOMRect(-1000, -1000, 0, 0);\n\n return rect;\n }, [editor]);\n\n const shouldShow = useCallback(() => {\n const isColumns = editor.isActive(\"columns\");\n return isColumns;\n }, [editor]);\n\n const onColumnLeft = useCallback(() => {\n editor.chain().focus().setLayout(ColumnLayout.SidebarLeft).run();\n }, [editor]);\n\n const onColumnRight = useCallback(() => {\n editor.chain().focus().setLayout(ColumnLayout.SidebarRight).run();\n }, [editor]);\n\n const onColumnTwo = useCallback(() => {\n editor.chain().focus().setLayout(ColumnLayout.TwoColumn).run();\n }, [editor]);\n\n return (\n <BaseBubbleMenu\n editor={editor}\n pluginKey={`columnsMenu-${uuid()}`}\n shouldShow={shouldShow}\n updateDelay={0}\n tippyOptions={{\n offset: [0, 8],\n popperOptions: {\n modifiers: [{ name: \"flip\", enabled: false }],\n },\n getReferenceClientRect,\n appendTo: () => appendTo?.current,\n plugins: [sticky],\n sticky: \"popper\",\n }}\n >\n <Toolbar.Wrapper>\n <Toolbar.Button\n type=\"button\"\n tooltip=\"Sidebar left\"\n active={editor.isActive(\"columns\", {\n layout: ColumnLayout.SidebarLeft,\n })}\n onClick={onColumnLeft}\n >\n <Icon icon={PanelLeft} />\n </Toolbar.Button>\n <Toolbar.Button\n type=\"button\"\n tooltip=\"Two columns\"\n active={editor.isActive(\"columns\", {\n layout: ColumnLayout.TwoColumn,\n })}\n onClick={onColumnTwo}\n >\n <Icon icon={Columns2} />\n </Toolbar.Button>\n <Toolbar.Button\n type=\"button\"\n tooltip=\"Sidebar right\"\n active={editor.isActive(\"columns\", {\n layout: ColumnLayout.SidebarRight,\n })}\n onClick={onColumnRight}\n >\n <Icon icon={PanelRight} />\n </Toolbar.Button>\n </Toolbar.Wrapper>\n </BaseBubbleMenu>\n );\n};\n\nexport default ColumnsMenu;\n"],"names":["BubbleMenu","BaseBubbleMenu","useCallback","sticky","v4","uuid","Columns2","PanelLeft","PanelRight","Icon","Toolbar","getRenderContainer","ColumnLayout","ColumnsMenu","editor","appendTo","getReferenceClientRect","renderContainer","rect","getBoundingClientRect","DOMRect","shouldShow","isColumns","isActive","onColumnLeft","chain","focus","setLayout","SidebarLeft","run","onColumnRight","SidebarRight","onColumnTwo","TwoColumn","pluginKey","updateDelay","tippyOptions","offset","popperOptions","modifiers","name","enabled","current","plugins","Wrapper","Button","type","tooltip","active","layout","onClick","icon"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";AAAA,SAASA,cAAcC,cAAc,QAAQ,gBAAgB;AAC7D,SAASC,WAAW,QAAQ,QAAQ;AACpC,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,MAAMC,IAAI,QAAQ,OAAO;AAElC,SAASC,QAAQ,EAAEC,SAAS,EAAEC,UAAU,QAAQ,eAAe;AAE/D,SAASC,IAAI,QAAQ,+BAA+B;AACpD,SAASC,OAAO,QAAQ,kCAAkC;AAC1D,SAASC,kBAAkB,QAAQ,8BAA8B;AACjE,SAASC,YAAY,QAAQ,gBAAgB;AAE7C,OAAO,MAAMC,cAAc,CAAC,EAAEC,MAAM,EAAEC,QAAQ,EAAa;IACzD,MAAMC,yBAAyBd,YAAY;QACzC,MAAMe,kBAAkBN,mBAAmBG,QAAQ;QACnD,MAAMI,OACJD,iBAAiBE,2BACjB,IAAIC,QAAQ,CAAC,MAAM,CAAC,MAAM,GAAG;QAE/B,OAAOF;IACT,GAAG;QAACJ;KAAO;IAEX,MAAMO,aAAanB,YAAY;QAC7B,MAAMoB,YAAYR,OAAOS,QAAQ,CAAC;QAClC,OAAOD;IACT,GAAG;QAACR;KAAO;IAEX,MAAMU,eAAetB,YAAY;QAC/BY,OAAOW,KAAK,GAAGC,KAAK,GAAGC,SAAS,CAACf,aAAagB,WAAW,EAAEC,GAAG;IAChE,GAAG;QAACf;KAAO;IAEX,MAAMgB,gBAAgB5B,YAAY;QAChCY,OAAOW,KAAK,GAAGC,KAAK,GAAGC,SAAS,CAACf,aAAamB,YAAY,EAAEF,GAAG;IACjE,GAAG;QAACf;KAAO;IAEX,MAAMkB,cAAc9B,YAAY;QAC9BY,OAAOW,KAAK,GAAGC,KAAK,GAAGC,SAAS,CAACf,aAAaqB,SAAS,EAAEJ,GAAG;IAC9D,GAAG;QAACf;KAAO;IAEX,qBACE,KAACb;QACCa,QAAQA;QACRoB,WAAW,CAAC,YAAY,EAAE7B,OAAO,CAAC;QAClCgB,YAAYA;QACZc,aAAa;QACbC,cAAc;YACZC,QAAQ;gBAAC;gBAAG;aAAE;YACdC,eAAe;gBACbC,WAAW;oBAAC;wBAAEC,MAAM;wBAAQC,SAAS;oBAAM;iBAAE;YAC/C;YACAzB;YACAD,UAAU,IAAMA,UAAU2B;YAC1BC,SAAS;gBAACxC;aAAO;YACjBA,QAAQ;QACV;kBAEA,cAAA,MAACO,QAAQkC,OAAO;;8BACd,KAAClC,QAAQmC,MAAM;oBACbC,MAAK;oBACLC,SAAQ;oBACRC,QAAQlC,OAAOS,QAAQ,CAAC,WAAW;wBACjC0B,QAAQrC,aAAagB,WAAW;oBAClC;oBACAsB,SAAS1B;8BAET,cAAA,KAACf;wBAAK0C,MAAM5C;;;8BAEd,KAACG,QAAQmC,MAAM;oBACbC,MAAK;oBACLC,SAAQ;oBACRC,QAAQlC,OAAOS,QAAQ,CAAC,WAAW;wBACjC0B,QAAQrC,aAAaqB,SAAS;oBAChC;oBACAiB,SAASlB;8BAET,cAAA,KAACvB;wBAAK0C,MAAM7C;;;8BAEd,KAACI,QAAQmC,MAAM;oBACbC,MAAK;oBACLC,SAAQ;oBACRC,QAAQlC,OAAOS,QAAQ,CAAC,WAAW;wBACjC0B,QAAQrC,aAAamB,YAAY;oBACnC;oBACAmB,SAASpB;8BAET,cAAA,KAACrB;wBAAK0C,MAAM3C;;;;;;AAKtB,EAAE;AAEF,eAAeK,YAAY"}
@@ -1,2 +1,2 @@
1
- export * from "./ColumnsMenu.jsx";
1
+ export * from "./ColumnsMenu.js";
2
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/fields/TiptapEditor/extensions/MultiColumn/menus/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/fields/TiptapEditor/extensions/MultiColumn/menus/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC"}
@@ -1,3 +1,3 @@
1
- export * from "./ColumnsMenu.jsx";
1
+ export * from "./ColumnsMenu.js";
2
2
 
3
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/extensions/MultiColumn/menus/index.ts"],"sourcesContent":["export * from \"./ColumnsMenu.jsx\";\n"],"names":[],"rangeMappings":"","mappings":"AAAA,cAAc,oBAAoB"}
1
+ {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/extensions/MultiColumn/menus/index.ts"],"sourcesContent":["export * from \"./ColumnsMenu.js\";\n"],"names":[],"rangeMappings":"","mappings":"AAAA,cAAc,mBAAmB"}
@@ -1,6 +1,6 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { forwardRef } from "react";
3
- import { Icon } from "../../features/ui/Icon.jsx";
3
+ import { Icon } from "../../features/ui/Icon.js";
4
4
  import { cn } from "../../lib/utils/index.js";
5
5
  export const CommandButton = /*#__PURE__*/ forwardRef(({ active, icon, onClick, title }, ref)=>{
6
6
  const wrapperClass = cn("flex text-neutral-500 items-center text-xs font-semibold justify-start p-1.5 gap-2 rounded", !active && "bg-transparent hover:bg-neutral-50 hover:text-black", active && "bg-neutral-100 text-black hover:bg-neutral-100");
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/fields/TiptapEditor/extensions/SlashCommand/CommandButton.tsx"],"sourcesContent":["import { LucideIcon } from \"lucide-react\";\nimport { forwardRef } from \"react\";\nimport { Icon } from \"../../features/ui/Icon.jsx\";\nimport { cn } from \"../../lib/utils/index.js\";\n\nexport type CommandButtonProps = {\n active?: boolean;\n description: string;\n icon: LucideIcon;\n onClick: () => void;\n title: string;\n};\n\nexport const CommandButton = forwardRef<HTMLButtonElement, CommandButtonProps>(\n ({ active, icon, onClick, title }, ref) => {\n const wrapperClass = cn(\n \"flex text-neutral-500 items-center text-xs font-semibold justify-start p-1.5 gap-2 rounded\",\n !active && \"bg-transparent hover:bg-neutral-50 hover:text-black\",\n active && \"bg-neutral-100 text-black hover:bg-neutral-100\"\n );\n\n return (\n <button\n type=\"button\"\n ref={ref}\n onClick={onClick}\n className={wrapperClass}\n >\n <Icon icon={icon} className=\"w-3 h-3\" />\n <div className=\"flex flex-col items-start justify-start\">\n <div className=\"text-sm font-medium\">{title}</div>\n </div>\n </button>\n );\n }\n);\n\nCommandButton.displayName = \"CommandButton\";\n"],"names":["forwardRef","Icon","cn","CommandButton","active","icon","onClick","title","ref","wrapperClass","button","type","className","div","displayName"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";AACA,SAASA,UAAU,QAAQ,QAAQ;AACnC,SAASC,IAAI,QAAQ,6BAA6B;AAClD,SAASC,EAAE,QAAQ,2BAA2B;AAU9C,OAAO,MAAMC,8BAAgBH,WAC3B,CAAC,EAAEI,MAAM,EAAEC,IAAI,EAAEC,OAAO,EAAEC,KAAK,EAAE,EAAEC;IACjC,MAAMC,eAAeP,GACnB,8FACA,CAACE,UAAU,uDACXA,UAAU;IAGZ,qBACE,MAACM;QACCC,MAAK;QACLH,KAAKA;QACLF,SAASA;QACTM,WAAWH;;0BAEX,KAACR;gBAAKI,MAAMA;gBAAMO,WAAU;;0BAC5B,KAACC;gBAAID,WAAU;0BACb,cAAA,KAACC;oBAAID,WAAU;8BAAuBL;;;;;AAI9C,GACA;AAEFJ,cAAcW,WAAW,GAAG"}
1
+ {"version":3,"sources":["../../../../../../src/fields/TiptapEditor/extensions/SlashCommand/CommandButton.tsx"],"sourcesContent":["import { LucideIcon } from \"lucide-react\";\nimport { forwardRef } from \"react\";\nimport { Icon } from \"../../features/ui/Icon.js\";\nimport { cn } from \"../../lib/utils/index.js\";\n\nexport type CommandButtonProps = {\n active?: boolean;\n description: string;\n icon: LucideIcon;\n onClick: () => void;\n title: string;\n};\n\nexport const CommandButton = forwardRef<HTMLButtonElement, CommandButtonProps>(\n ({ active, icon, onClick, title }, ref) => {\n const wrapperClass = cn(\n \"flex text-neutral-500 items-center text-xs font-semibold justify-start p-1.5 gap-2 rounded\",\n !active && \"bg-transparent hover:bg-neutral-50 hover:text-black\",\n active && \"bg-neutral-100 text-black hover:bg-neutral-100\"\n );\n\n return (\n <button\n type=\"button\"\n ref={ref}\n onClick={onClick}\n className={wrapperClass}\n >\n <Icon icon={icon} className=\"w-3 h-3\" />\n <div className=\"flex flex-col items-start justify-start\">\n <div className=\"text-sm font-medium\">{title}</div>\n </div>\n </button>\n );\n }\n);\n\nCommandButton.displayName = \"CommandButton\";\n"],"names":["forwardRef","Icon","cn","CommandButton","active","icon","onClick","title","ref","wrapperClass","button","type","className","div","displayName"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";AACA,SAASA,UAAU,QAAQ,QAAQ;AACnC,SAASC,IAAI,QAAQ,4BAA4B;AACjD,SAASC,EAAE,QAAQ,2BAA2B;AAU9C,OAAO,MAAMC,8BAAgBH,WAC3B,CAAC,EAAEI,MAAM,EAAEC,IAAI,EAAEC,OAAO,EAAEC,KAAK,EAAE,EAAEC;IACjC,MAAMC,eAAeP,GACnB,8FACA,CAACE,UAAU,uDACXA,UAAU;IAGZ,qBACE,MAACM;QACCC,MAAK;QACLH,KAAKA;QACLF,SAASA;QACTM,WAAWH;;0BAEX,KAACR;gBAAKI,MAAMA;gBAAMO,WAAU;;0BAC5B,KAACC;gBAAID,WAAU;0BACb,cAAA,KAACC;oBAAID,WAAU;8BAAuBL;;;;;AAI9C,GACA;AAEFJ,cAAcW,WAAW,GAAG"}
@@ -1,8 +1,8 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import React, { useCallback, useEffect, useRef, useState } from "react";
3
- import { DropdownButton } from "../../features/ui/Dropdown/Dropdown.jsx";
4
- import { Surface } from "../../features/ui/Surface.jsx";
5
- import { Icon } from "../../features/ui/Icon.jsx";
3
+ import { DropdownButton } from "../../features/ui/Dropdown/Dropdown.js";
4
+ import { Surface } from "../../features/ui/Surface.js";
5
+ import { Icon } from "../../features/ui/Icon.js";
6
6
  export const MenuList = /*#__PURE__*/ React.forwardRef((props, ref)=>{
7
7
  const scrollContainer = useRef(null);
8
8
  const activeItem = useRef(null);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/fields/TiptapEditor/extensions/SlashCommand/MenuList.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useRef, useState } from \"react\";\n\nimport { DropdownButton } from \"../../features/ui/Dropdown/Dropdown.jsx\";\nimport { Surface } from \"../../features/ui/Surface.jsx\";\nimport { Command, MenuListProps } from \"./types.js\";\n\nimport { Icon } from \"../../features/ui/Icon.jsx\";\n\nexport const MenuList = React.forwardRef((props: MenuListProps, ref) => {\n const scrollContainer = useRef<HTMLDivElement>(null);\n const activeItem = useRef<HTMLButtonElement>(null);\n const [selectedGroupIndex, setSelectedGroupIndex] = useState(0);\n const [selectedCommandIndex, setSelectedCommandIndex] = useState(0);\n\n // Anytime the groups change, i.e. the user types to narrow it down, we want to\n // reset the current selection to the first menu item\n useEffect(() => {\n setSelectedGroupIndex(0);\n setSelectedCommandIndex(0);\n }, [props.items]);\n\n const selectItem = useCallback(\n (groupIndex: number, commandIndex: number) => {\n const command = props.items[groupIndex].commands[commandIndex];\n props.command(command);\n },\n [props]\n );\n\n React.useImperativeHandle(ref, () => ({\n onKeyDown: ({ event }: { event: React.KeyboardEvent }) => {\n if (event.key === \"ArrowDown\") {\n if (!props.items.length) {\n return false;\n }\n\n const commands = props.items[selectedGroupIndex].commands;\n\n let newCommandIndex = selectedCommandIndex + 1;\n let newGroupIndex = selectedGroupIndex;\n\n if (commands.length - 1 < newCommandIndex) {\n newCommandIndex = 0;\n newGroupIndex = selectedGroupIndex + 1;\n }\n\n if (props.items.length - 1 < newGroupIndex) {\n newGroupIndex = 0;\n }\n\n setSelectedCommandIndex(newCommandIndex);\n setSelectedGroupIndex(newGroupIndex);\n\n return true;\n }\n\n if (event.key === \"ArrowUp\") {\n if (!props.items.length) {\n return false;\n }\n\n let newCommandIndex = selectedCommandIndex - 1;\n let newGroupIndex = selectedGroupIndex;\n\n if (newCommandIndex < 0) {\n newGroupIndex = selectedGroupIndex - 1;\n newCommandIndex =\n props.items[newGroupIndex]?.commands.length - 1 || 0;\n }\n\n if (newGroupIndex < 0) {\n newGroupIndex = props.items.length - 1;\n newCommandIndex = props.items[newGroupIndex].commands.length - 1;\n }\n\n setSelectedCommandIndex(newCommandIndex);\n setSelectedGroupIndex(newGroupIndex);\n\n return true;\n }\n\n if (event.key === \"Enter\") {\n if (\n !props.items.length ||\n selectedGroupIndex === -1 ||\n selectedCommandIndex === -1\n ) {\n return false;\n }\n\n selectItem(selectedGroupIndex, selectedCommandIndex);\n\n return true;\n }\n\n return false;\n },\n }));\n\n useEffect(() => {\n if (activeItem.current && scrollContainer.current) {\n const offsetTop = activeItem.current.offsetTop;\n const offsetHeight = activeItem.current.offsetHeight;\n\n scrollContainer.current.scrollTop = offsetTop - offsetHeight;\n }\n }, [selectedCommandIndex, selectedGroupIndex]);\n\n const createCommandClickHandler = useCallback(\n (groupIndex: number, commandIndex: number) => {\n return () => {\n selectItem(groupIndex, commandIndex);\n };\n },\n [selectItem]\n );\n\n if (!props.items.length) {\n return null;\n }\n\n return (\n <Surface\n ref={scrollContainer}\n className=\"text-black max-h-[min(80vh,24rem)] overflow-auto flex-wrap mb-8 p-2\"\n >\n <div className=\"grid grid-cols-1 gap-0.5\">\n {props.items.map((group, groupIndex: number) => (\n <React.Fragment key={`${group.title}-wrapper`}>\n <div\n className=\"text-neutral-500 text-[0.65rem] col-[1/-1] mx-2 mt-4 font-semibold tracking-wider select-none uppercase first:mt-0.5\"\n key={`${group.title}`}\n >\n {group.title}\n </div>\n {group.commands.map((command: Command, commandIndex: number) => (\n <DropdownButton\n key={`${command.label}`}\n isActive={\n selectedGroupIndex === groupIndex &&\n selectedCommandIndex === commandIndex\n }\n onClick={createCommandClickHandler(groupIndex, commandIndex)}\n >\n <Icon icon={command.icon} className=\"mr-1\" />\n {command.label}\n </DropdownButton>\n ))}\n </React.Fragment>\n ))}\n </div>\n </Surface>\n );\n});\n\nMenuList.displayName = \"MenuList\";\n\nexport default MenuList;\n"],"names":["React","useCallback","useEffect","useRef","useState","DropdownButton","Surface","Icon","MenuList","forwardRef","props","ref","scrollContainer","activeItem","selectedGroupIndex","setSelectedGroupIndex","selectedCommandIndex","setSelectedCommandIndex","items","selectItem","groupIndex","commandIndex","command","commands","useImperativeHandle","onKeyDown","event","key","length","newCommandIndex","newGroupIndex","current","offsetTop","offsetHeight","scrollTop","createCommandClickHandler","className","div","map","group","Fragment","title","isActive","onClick","icon","label","displayName"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
1
+ {"version":3,"sources":["../../../../../../src/fields/TiptapEditor/extensions/SlashCommand/MenuList.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useRef, useState } from \"react\";\n\nimport { DropdownButton } from \"../../features/ui/Dropdown/Dropdown.js\";\nimport { Surface } from \"../../features/ui/Surface.js\";\nimport { Command, MenuListProps } from \"./types.js\";\n\nimport { Icon } from \"../../features/ui/Icon.js\";\n\nexport const MenuList = React.forwardRef((props: MenuListProps, ref) => {\n const scrollContainer = useRef<HTMLDivElement>(null);\n const activeItem = useRef<HTMLButtonElement>(null);\n const [selectedGroupIndex, setSelectedGroupIndex] = useState(0);\n const [selectedCommandIndex, setSelectedCommandIndex] = useState(0);\n\n // Anytime the groups change, i.e. the user types to narrow it down, we want to\n // reset the current selection to the first menu item\n useEffect(() => {\n setSelectedGroupIndex(0);\n setSelectedCommandIndex(0);\n }, [props.items]);\n\n const selectItem = useCallback(\n (groupIndex: number, commandIndex: number) => {\n const command = props.items[groupIndex].commands[commandIndex];\n props.command(command);\n },\n [props]\n );\n\n React.useImperativeHandle(ref, () => ({\n onKeyDown: ({ event }: { event: React.KeyboardEvent }) => {\n if (event.key === \"ArrowDown\") {\n if (!props.items.length) {\n return false;\n }\n\n const commands = props.items[selectedGroupIndex].commands;\n\n let newCommandIndex = selectedCommandIndex + 1;\n let newGroupIndex = selectedGroupIndex;\n\n if (commands.length - 1 < newCommandIndex) {\n newCommandIndex = 0;\n newGroupIndex = selectedGroupIndex + 1;\n }\n\n if (props.items.length - 1 < newGroupIndex) {\n newGroupIndex = 0;\n }\n\n setSelectedCommandIndex(newCommandIndex);\n setSelectedGroupIndex(newGroupIndex);\n\n return true;\n }\n\n if (event.key === \"ArrowUp\") {\n if (!props.items.length) {\n return false;\n }\n\n let newCommandIndex = selectedCommandIndex - 1;\n let newGroupIndex = selectedGroupIndex;\n\n if (newCommandIndex < 0) {\n newGroupIndex = selectedGroupIndex - 1;\n newCommandIndex =\n props.items[newGroupIndex]?.commands.length - 1 || 0;\n }\n\n if (newGroupIndex < 0) {\n newGroupIndex = props.items.length - 1;\n newCommandIndex = props.items[newGroupIndex].commands.length - 1;\n }\n\n setSelectedCommandIndex(newCommandIndex);\n setSelectedGroupIndex(newGroupIndex);\n\n return true;\n }\n\n if (event.key === \"Enter\") {\n if (\n !props.items.length ||\n selectedGroupIndex === -1 ||\n selectedCommandIndex === -1\n ) {\n return false;\n }\n\n selectItem(selectedGroupIndex, selectedCommandIndex);\n\n return true;\n }\n\n return false;\n },\n }));\n\n useEffect(() => {\n if (activeItem.current && scrollContainer.current) {\n const offsetTop = activeItem.current.offsetTop;\n const offsetHeight = activeItem.current.offsetHeight;\n\n scrollContainer.current.scrollTop = offsetTop - offsetHeight;\n }\n }, [selectedCommandIndex, selectedGroupIndex]);\n\n const createCommandClickHandler = useCallback(\n (groupIndex: number, commandIndex: number) => {\n return () => {\n selectItem(groupIndex, commandIndex);\n };\n },\n [selectItem]\n );\n\n if (!props.items.length) {\n return null;\n }\n\n return (\n <Surface\n ref={scrollContainer}\n className=\"text-black max-h-[min(80vh,24rem)] overflow-auto flex-wrap mb-8 p-2\"\n >\n <div className=\"grid grid-cols-1 gap-0.5\">\n {props.items.map((group, groupIndex: number) => (\n <React.Fragment key={`${group.title}-wrapper`}>\n <div\n className=\"text-neutral-500 text-[0.65rem] col-[1/-1] mx-2 mt-4 font-semibold tracking-wider select-none uppercase first:mt-0.5\"\n key={`${group.title}`}\n >\n {group.title}\n </div>\n {group.commands.map((command: Command, commandIndex: number) => (\n <DropdownButton\n key={`${command.label}`}\n isActive={\n selectedGroupIndex === groupIndex &&\n selectedCommandIndex === commandIndex\n }\n onClick={createCommandClickHandler(groupIndex, commandIndex)}\n >\n <Icon icon={command.icon} className=\"mr-1\" />\n {command.label}\n </DropdownButton>\n ))}\n </React.Fragment>\n ))}\n </div>\n </Surface>\n );\n});\n\nMenuList.displayName = \"MenuList\";\n\nexport default MenuList;\n"],"names":["React","useCallback","useEffect","useRef","useState","DropdownButton","Surface","Icon","MenuList","forwardRef","props","ref","scrollContainer","activeItem","selectedGroupIndex","setSelectedGroupIndex","selectedCommandIndex","setSelectedCommandIndex","items","selectItem","groupIndex","commandIndex","command","commands","useImperativeHandle","onKeyDown","event","key","length","newCommandIndex","newGroupIndex","current","offsetTop","offsetHeight","scrollTop","createCommandClickHandler","className","div","map","group","Fragment","title","isActive","onClick","icon","label","displayName"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
@@ -4,7 +4,7 @@ import Suggestion from "@tiptap/suggestion";
4
4
  import { PluginKey } from "@tiptap/pm/state";
5
5
  import tippy from "tippy.js";
6
6
  import { GROUPS } from "./groups.js";
7
- import { MenuList } from "./MenuList.jsx";
7
+ import { MenuList } from "./MenuList.js";
8
8
  const extensionName = "slashCommand";
9
9
  let popup;
10
10
  export const SlashCommand = Extension.create({