payload-richtext-tiptap 0.0.40 → 0.0.42

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 (258) hide show
  1. package/README.md +4 -47
  2. package/dist/src/fields/TiptapEditor/Components.d.ts.map +1 -1
  3. package/dist/src/fields/TiptapEditor/Components.js +3 -3
  4. package/dist/src/fields/TiptapEditor/Components.js.map +1 -1
  5. package/dist/src/fields/TiptapEditor/context/EditorContext.js.map +1 -1
  6. package/dist/src/fields/TiptapEditor/extensions/AICommand/AICommand.d.ts +4 -0
  7. package/dist/src/fields/TiptapEditor/extensions/AICommand/AICommand.d.ts.map +1 -0
  8. package/dist/src/fields/TiptapEditor/extensions/AICommand/AICommand.js +208 -0
  9. package/dist/src/fields/TiptapEditor/extensions/AICommand/AICommand.js.map +1 -0
  10. package/dist/src/fields/TiptapEditor/extensions/AICommand/AIMenuList.d.ts +5 -0
  11. package/dist/src/fields/TiptapEditor/extensions/AICommand/AIMenuList.d.ts.map +1 -0
  12. package/dist/src/fields/TiptapEditor/extensions/AICommand/AIMenuList.js +123 -0
  13. package/dist/src/fields/TiptapEditor/extensions/AICommand/AIMenuList.js.map +1 -0
  14. package/dist/src/fields/TiptapEditor/extensions/AICommand/CommandButton.d.ts +10 -0
  15. package/dist/src/fields/TiptapEditor/extensions/AICommand/CommandButton.d.ts.map +1 -0
  16. package/dist/src/fields/TiptapEditor/extensions/AICommand/CommandButton.js +29 -0
  17. package/dist/src/fields/TiptapEditor/extensions/AICommand/CommandButton.js.map +1 -0
  18. package/dist/src/fields/TiptapEditor/extensions/AICommand/MenuList.d.ts +5 -0
  19. package/dist/src/fields/TiptapEditor/extensions/AICommand/MenuList.d.ts.map +1 -0
  20. package/dist/src/fields/TiptapEditor/extensions/AICommand/MenuList.js +123 -0
  21. package/dist/src/fields/TiptapEditor/extensions/AICommand/MenuList.js.map +1 -0
  22. package/dist/src/fields/TiptapEditor/extensions/AICommand/groups.d.ts +4 -0
  23. package/dist/src/fields/TiptapEditor/extensions/AICommand/groups.d.ts.map +1 -0
  24. package/dist/src/fields/TiptapEditor/extensions/AICommand/groups.js +260 -0
  25. package/dist/src/fields/TiptapEditor/extensions/AICommand/groups.js.map +1 -0
  26. package/dist/src/fields/TiptapEditor/extensions/AICommand/index.d.ts +2 -0
  27. package/dist/src/fields/TiptapEditor/extensions/AICommand/index.d.ts.map +1 -0
  28. package/dist/src/fields/TiptapEditor/extensions/AICommand/index.js +3 -0
  29. package/dist/src/fields/TiptapEditor/extensions/AICommand/index.js.map +1 -0
  30. package/dist/src/fields/TiptapEditor/extensions/AICommand/types.d.ts +22 -0
  31. package/dist/src/fields/TiptapEditor/extensions/AICommand/types.d.ts.map +1 -0
  32. package/dist/src/fields/TiptapEditor/extensions/AICommand/types.js +3 -0
  33. package/dist/src/fields/TiptapEditor/extensions/AICommand/types.js.map +1 -0
  34. package/dist/src/fields/TiptapEditor/extensions/BlockquoteFigure/BlockquoteFigure.js.map +1 -1
  35. package/dist/src/fields/TiptapEditor/extensions/BlockquoteFigure/Design.js.map +1 -1
  36. package/dist/src/fields/TiptapEditor/extensions/BlockquoteFigure/Quote/Quote.js.map +1 -1
  37. package/dist/src/fields/TiptapEditor/extensions/BlockquoteFigure/Quote/index.js.map +1 -1
  38. package/dist/src/fields/TiptapEditor/extensions/BlockquoteFigure/QuoteCaption/QuoteCaption.js.map +1 -1
  39. package/dist/src/fields/TiptapEditor/extensions/BlockquoteFigure/QuoteCaption/index.js.map +1 -1
  40. package/dist/src/fields/TiptapEditor/extensions/BlockquoteFigure/index.js.map +1 -1
  41. package/dist/src/fields/TiptapEditor/extensions/Document/Document.js.map +1 -1
  42. package/dist/src/fields/TiptapEditor/extensions/Document/index.js.map +1 -1
  43. package/dist/src/fields/TiptapEditor/extensions/Figcaption/Figcaption.js.map +1 -1
  44. package/dist/src/fields/TiptapEditor/extensions/Figcaption/index.js.map +1 -1
  45. package/dist/src/fields/TiptapEditor/extensions/Figure/Figure.js.map +1 -1
  46. package/dist/src/fields/TiptapEditor/extensions/Figure/index.js.map +1 -1
  47. package/dist/src/fields/TiptapEditor/extensions/FontSize/FontSize.js.map +1 -1
  48. package/dist/src/fields/TiptapEditor/extensions/FontSize/index.js.map +1 -1
  49. package/dist/src/fields/TiptapEditor/extensions/Heading/Heading.js.map +1 -1
  50. package/dist/src/fields/TiptapEditor/extensions/Heading/index.js.map +1 -1
  51. package/dist/src/fields/TiptapEditor/extensions/HorizontalRule/HorizontalRule.js.map +1 -1
  52. package/dist/src/fields/TiptapEditor/extensions/HorizontalRule/index.js.map +1 -1
  53. package/dist/src/fields/TiptapEditor/extensions/Iframe/iframe.js.map +1 -1
  54. package/dist/src/fields/TiptapEditor/extensions/Iframe/index.js.map +1 -1
  55. package/dist/src/fields/TiptapEditor/extensions/Iframe/menus/IframeMenu.js.map +1 -1
  56. package/dist/src/fields/TiptapEditor/extensions/Iframe/menus/index.js.map +1 -1
  57. package/dist/src/fields/TiptapEditor/extensions/Image/Image.js.map +1 -1
  58. package/dist/src/fields/TiptapEditor/extensions/Image/index.js.map +1 -1
  59. package/dist/src/fields/TiptapEditor/extensions/ImageBlock/ImageBlock.js.map +1 -1
  60. package/dist/src/fields/TiptapEditor/extensions/ImageBlock/components/ImageBlockMenu.js.map +1 -1
  61. package/dist/src/fields/TiptapEditor/extensions/ImageBlock/components/ImageBlockView.js.map +1 -1
  62. package/dist/src/fields/TiptapEditor/extensions/ImageBlock/components/ImageBlockWidth.js.map +1 -1
  63. package/dist/src/fields/TiptapEditor/extensions/ImageBlock/index.js.map +1 -1
  64. package/dist/src/fields/TiptapEditor/extensions/ImageUpload/ImageUpload.d.ts.map +1 -1
  65. package/dist/src/fields/TiptapEditor/extensions/ImageUpload/ImageUpload.js +3 -2
  66. package/dist/src/fields/TiptapEditor/extensions/ImageUpload/ImageUpload.js.map +1 -1
  67. package/dist/src/fields/TiptapEditor/extensions/ImageUpload/index.js.map +1 -1
  68. package/dist/src/fields/TiptapEditor/extensions/ImageUpload/view/ImageUpload.d.ts +2 -2
  69. package/dist/src/fields/TiptapEditor/extensions/ImageUpload/view/ImageUpload.d.ts.map +1 -1
  70. package/dist/src/fields/TiptapEditor/extensions/ImageUpload/view/ImageUpload.js +38 -21
  71. package/dist/src/fields/TiptapEditor/extensions/ImageUpload/view/ImageUpload.js.map +1 -1
  72. package/dist/src/fields/TiptapEditor/extensions/ImageUpload/view/ImageUploader.js.map +1 -1
  73. package/dist/src/fields/TiptapEditor/extensions/ImageUpload/view/hooks.js.map +1 -1
  74. package/dist/src/fields/TiptapEditor/extensions/ImageUpload/view/index.js.map +1 -1
  75. package/dist/src/fields/TiptapEditor/extensions/InsideLinks/InsideLink.client.js.map +1 -1
  76. package/dist/src/fields/TiptapEditor/extensions/InsideLinks/InsideLinksComponent.js.map +1 -1
  77. package/dist/src/fields/TiptapEditor/extensions/InsideLinks/index.js.map +1 -1
  78. package/dist/src/fields/TiptapEditor/extensions/InsideLinks/insideLinks.js.map +1 -1
  79. package/dist/src/fields/TiptapEditor/extensions/InsideLinks/menus/InsideLinksMenu.js.map +1 -1
  80. package/dist/src/fields/TiptapEditor/extensions/InsideLinks/menus/index.js.map +1 -1
  81. package/dist/src/fields/TiptapEditor/extensions/Link/Link.js.map +1 -1
  82. package/dist/src/fields/TiptapEditor/extensions/Link/index.js.map +1 -1
  83. package/dist/src/fields/TiptapEditor/extensions/MultiColumn/Column.js.map +1 -1
  84. package/dist/src/fields/TiptapEditor/extensions/MultiColumn/Columns.js.map +1 -1
  85. package/dist/src/fields/TiptapEditor/extensions/MultiColumn/index.js.map +1 -1
  86. package/dist/src/fields/TiptapEditor/extensions/MultiColumn/menus/ColumnsMenu.js.map +1 -1
  87. package/dist/src/fields/TiptapEditor/extensions/MultiColumn/menus/index.js.map +1 -1
  88. package/dist/src/fields/TiptapEditor/extensions/Paragraph/Paragraph.js.map +1 -1
  89. package/dist/src/fields/TiptapEditor/extensions/Paragraph/index.js.map +1 -1
  90. package/dist/src/fields/TiptapEditor/extensions/Selection/Selection.js.map +1 -1
  91. package/dist/src/fields/TiptapEditor/extensions/Selection/index.js.map +1 -1
  92. package/dist/src/fields/TiptapEditor/extensions/SlashCommand/CommandButton.js.map +1 -1
  93. package/dist/src/fields/TiptapEditor/extensions/SlashCommand/MenuList.js.map +1 -1
  94. package/dist/src/fields/TiptapEditor/extensions/SlashCommand/SlashCommand.js.map +1 -1
  95. package/dist/src/fields/TiptapEditor/extensions/SlashCommand/groups.js.map +1 -1
  96. package/dist/src/fields/TiptapEditor/extensions/SlashCommand/index.js.map +1 -1
  97. package/dist/src/fields/TiptapEditor/extensions/SlashCommand/types.js.map +1 -1
  98. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Facebook/FacebookEmbed.js.map +1 -1
  99. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Facebook/facebook.js.map +1 -1
  100. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Facebook/index.js.map +1 -1
  101. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Instagram/InstagramEmbed.js.map +1 -1
  102. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Instagram/index.js.map +1 -1
  103. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Instagram/instagram.js.map +1 -1
  104. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Linkedin/LinkedinEmbed.js.map +1 -1
  105. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Linkedin/index.js.map +1 -1
  106. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Linkedin/linkedin.js.map +1 -1
  107. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/SocialMediaEmbed.js.map +1 -1
  108. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Tiktok/TiktokEmbed.js.map +1 -1
  109. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Tiktok/index.js.map +1 -1
  110. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Tiktok/tiktok.js.map +1 -1
  111. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Twitter/TwitterEmbed.js.map +1 -1
  112. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Twitter/index.js.map +1 -1
  113. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Twitter/twitter.js.map +1 -1
  114. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Youtube/YoutubeEmbed.js.map +1 -1
  115. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Youtube/index.js.map +1 -1
  116. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/Youtube/youtube.js.map +1 -1
  117. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/index.js.map +1 -1
  118. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/menus/SocialMediaMenu.js.map +1 -1
  119. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/menus/constants.js.map +1 -1
  120. package/dist/src/fields/TiptapEditor/extensions/SocialMedia/menus/index.js.map +1 -1
  121. package/dist/src/fields/TiptapEditor/extensions/Table/Cell.js.map +1 -1
  122. package/dist/src/fields/TiptapEditor/extensions/Table/Header.js.map +1 -1
  123. package/dist/src/fields/TiptapEditor/extensions/Table/Row.js.map +1 -1
  124. package/dist/src/fields/TiptapEditor/extensions/Table/Table.js.map +1 -1
  125. package/dist/src/fields/TiptapEditor/extensions/Table/index.js.map +1 -1
  126. package/dist/src/fields/TiptapEditor/extensions/Table/menus/TableColumn/index.js.map +1 -1
  127. package/dist/src/fields/TiptapEditor/extensions/Table/menus/TableColumn/utils.js.map +1 -1
  128. package/dist/src/fields/TiptapEditor/extensions/Table/menus/TableRow/index.js.map +1 -1
  129. package/dist/src/fields/TiptapEditor/extensions/Table/menus/TableRow/utils.js.map +1 -1
  130. package/dist/src/fields/TiptapEditor/extensions/Table/menus/index.js.map +1 -1
  131. package/dist/src/fields/TiptapEditor/extensions/Table/utils.js.map +1 -1
  132. package/dist/src/fields/TiptapEditor/extensions/TableOfContentsNode/TableOfContentsNode.js.map +1 -1
  133. package/dist/src/fields/TiptapEditor/extensions/TableOfContentsNode/index.js.map +1 -1
  134. package/dist/src/fields/TiptapEditor/extensions/TrailingNode/index.js.map +1 -1
  135. package/dist/src/fields/TiptapEditor/extensions/TrailingNode/trailing-node.js.map +1 -1
  136. package/dist/src/fields/TiptapEditor/extensions/extension-kit.d.ts +3 -1
  137. package/dist/src/fields/TiptapEditor/extensions/extension-kit.d.ts.map +1 -1
  138. package/dist/src/fields/TiptapEditor/extensions/extension-kit.js +22 -15
  139. package/dist/src/fields/TiptapEditor/extensions/extension-kit.js.map +1 -1
  140. package/dist/src/fields/TiptapEditor/extensions/index.d.ts +1 -0
  141. package/dist/src/fields/TiptapEditor/extensions/index.d.ts.map +1 -1
  142. package/dist/src/fields/TiptapEditor/extensions/index.js +1 -0
  143. package/dist/src/fields/TiptapEditor/extensions/index.js.map +1 -1
  144. package/dist/src/fields/TiptapEditor/features/BlockEditor/BlockEditor.d.ts +4 -1
  145. package/dist/src/fields/TiptapEditor/features/BlockEditor/BlockEditor.d.ts.map +1 -1
  146. package/dist/src/fields/TiptapEditor/features/BlockEditor/BlockEditor.js +3 -2
  147. package/dist/src/fields/TiptapEditor/features/BlockEditor/BlockEditor.js.map +1 -1
  148. package/dist/src/fields/TiptapEditor/features/BlockEditor/components/EditorHeader.js.map +1 -1
  149. package/dist/src/fields/TiptapEditor/features/BlockEditor/components/EditorInfo.js.map +1 -1
  150. package/dist/src/fields/TiptapEditor/features/BlockEditor/index.js.map +1 -1
  151. package/dist/src/fields/TiptapEditor/features/BlockEditor/types.js.map +1 -1
  152. package/dist/src/fields/TiptapEditor/features/Sidebar/Sidebar.js.map +1 -1
  153. package/dist/src/fields/TiptapEditor/features/Sidebar/index.js.map +1 -1
  154. package/dist/src/fields/TiptapEditor/features/TableOfContents/TableOfContents.js.map +1 -1
  155. package/dist/src/fields/TiptapEditor/features/TableOfContents/index.js.map +1 -1
  156. package/dist/src/fields/TiptapEditor/features/menus/ContentItemMenu/ContentItemMenu.js.map +1 -1
  157. package/dist/src/fields/TiptapEditor/features/menus/ContentItemMenu/hooks/useContentItemActions.js.map +1 -1
  158. package/dist/src/fields/TiptapEditor/features/menus/ContentItemMenu/hooks/useData.js.map +1 -1
  159. package/dist/src/fields/TiptapEditor/features/menus/ContentItemMenu/index.js.map +1 -1
  160. package/dist/src/fields/TiptapEditor/features/menus/LinkMenu/LinkMenu.js.map +1 -1
  161. package/dist/src/fields/TiptapEditor/features/menus/LinkMenu/index.js.map +1 -1
  162. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/TextMenu.js.map +1 -1
  163. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/ContentTypePicker.js.map +1 -1
  164. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/EditIframeLinkPopover.js.map +1 -1
  165. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/EditLinkPopover.js.map +1 -1
  166. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/FontFamilyPicker.js.map +1 -1
  167. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/FontSizePicker.js.map +1 -1
  168. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/SocialMediaPopover.js.map +1 -1
  169. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/ai-completion-command.js.map +1 -1
  170. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/ai-draft-selector-commands.d.ts +8 -0
  171. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/ai-draft-selector-commands.d.ts.map +1 -0
  172. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/ai-draft-selector-commands.js +94 -0
  173. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/ai-draft-selector-commands.js.map +1 -0
  174. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/ai-selector-commands.js.map +1 -1
  175. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/hooks/useTextmenuCommands.js.map +1 -1
  176. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/hooks/useTextmenuContentTypes.js.map +1 -1
  177. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/hooks/useTextmenuStates.js.map +1 -1
  178. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/index.js.map +1 -1
  179. package/dist/src/fields/TiptapEditor/features/menus/index.js.map +1 -1
  180. package/dist/src/fields/TiptapEditor/features/menus/types.js.map +1 -1
  181. package/dist/src/fields/TiptapEditor/features/panels/AICommandPanel/AICommandPanel.d.ts +7 -0
  182. package/dist/src/fields/TiptapEditor/features/panels/AICommandPanel/AICommandPanel.d.ts.map +1 -0
  183. package/dist/src/fields/TiptapEditor/features/panels/AICommandPanel/AICommandPanel.js +193 -0
  184. package/dist/src/fields/TiptapEditor/features/panels/AICommandPanel/AICommandPanel.js.map +1 -0
  185. package/dist/src/fields/TiptapEditor/features/panels/AICommandPanel/index.d.ts +2 -0
  186. package/dist/src/fields/TiptapEditor/features/panels/AICommandPanel/index.d.ts.map +1 -0
  187. package/dist/src/fields/TiptapEditor/features/panels/AICommandPanel/index.js +3 -0
  188. package/dist/src/fields/TiptapEditor/features/panels/AICommandPanel/index.js.map +1 -0
  189. package/dist/src/fields/TiptapEditor/features/panels/AIEditorPanel/AIEditorPanel.d.ts.map +1 -1
  190. package/dist/src/fields/TiptapEditor/features/panels/AIEditorPanel/AIEditorPanel.js +29 -17
  191. package/dist/src/fields/TiptapEditor/features/panels/AIEditorPanel/AIEditorPanel.js.map +1 -1
  192. package/dist/src/fields/TiptapEditor/features/panels/AIEditorPanel/index.js.map +1 -1
  193. package/dist/src/fields/TiptapEditor/features/panels/Colorpicker/ColorButton.js.map +1 -1
  194. package/dist/src/fields/TiptapEditor/features/panels/Colorpicker/Colorpicker.js.map +1 -1
  195. package/dist/src/fields/TiptapEditor/features/panels/Colorpicker/index.js.map +1 -1
  196. package/dist/src/fields/TiptapEditor/features/panels/IframeLinkEditorPanel/IframeLinkEditorPanel.js.map +1 -1
  197. package/dist/src/fields/TiptapEditor/features/panels/IframeLinkEditorPanel/index.js.map +1 -1
  198. package/dist/src/fields/TiptapEditor/features/panels/InsideLinksEditorPanel/InsideLinksEditorPanel.js.map +1 -1
  199. package/dist/src/fields/TiptapEditor/features/panels/InsideLinksEditorPanel/index.js.map +1 -1
  200. package/dist/src/fields/TiptapEditor/features/panels/LinkEditorPanel/LinkEditorPanel.js.map +1 -1
  201. package/dist/src/fields/TiptapEditor/features/panels/LinkEditorPanel/index.js.map +1 -1
  202. package/dist/src/fields/TiptapEditor/features/panels/LinkPreviewPanel/LinkPreviewPanel.js.map +1 -1
  203. package/dist/src/fields/TiptapEditor/features/panels/LinkPreviewPanel/index.js.map +1 -1
  204. package/dist/src/fields/TiptapEditor/features/panels/SocialMediaEditorPanel/SocialMediaEditorPanel.js.map +1 -1
  205. package/dist/src/fields/TiptapEditor/features/panels/SocialMediaEditorPanel/index.js.map +1 -1
  206. package/dist/src/fields/TiptapEditor/features/panels/index.js.map +1 -1
  207. package/dist/src/fields/TiptapEditor/features/ui/Button/Button.js.map +1 -1
  208. package/dist/src/fields/TiptapEditor/features/ui/Button/index.js.map +1 -1
  209. package/dist/src/fields/TiptapEditor/features/ui/Dropdown/Dropdown.js.map +1 -1
  210. package/dist/src/fields/TiptapEditor/features/ui/Dropdown/index.js.map +1 -1
  211. package/dist/src/fields/TiptapEditor/features/ui/Icon.js.map +1 -1
  212. package/dist/src/fields/TiptapEditor/features/ui/Loader/Loader.js.map +1 -1
  213. package/dist/src/fields/TiptapEditor/features/ui/Loader/index.js.map +1 -1
  214. package/dist/src/fields/TiptapEditor/features/ui/Loader/types.js.map +1 -1
  215. package/dist/src/fields/TiptapEditor/features/ui/Panel/index.js.map +1 -1
  216. package/dist/src/fields/TiptapEditor/features/ui/PopoverMenu.js.map +1 -1
  217. package/dist/src/fields/TiptapEditor/features/ui/Spinner/Spinner.js.map +1 -1
  218. package/dist/src/fields/TiptapEditor/features/ui/Spinner/index.js.map +1 -1
  219. package/dist/src/fields/TiptapEditor/features/ui/Surface.js.map +1 -1
  220. package/dist/src/fields/TiptapEditor/features/ui/Textarea/Textarea.js.map +1 -1
  221. package/dist/src/fields/TiptapEditor/features/ui/Textarea/index.js.map +1 -1
  222. package/dist/src/fields/TiptapEditor/features/ui/Toggle/Toggle.js.map +1 -1
  223. package/dist/src/fields/TiptapEditor/features/ui/Toggle/index.js.map +1 -1
  224. package/dist/src/fields/TiptapEditor/features/ui/Toolbar.js.map +1 -1
  225. package/dist/src/fields/TiptapEditor/features/ui/Tooltip/index.js.map +1 -1
  226. package/dist/src/fields/TiptapEditor/features/ui/Tooltip/types.js.map +1 -1
  227. package/dist/src/fields/TiptapEditor/features/ui/crazy-spinner.js.map +1 -1
  228. package/dist/src/fields/TiptapEditor/features/ui/scroll-area.js.map +1 -1
  229. package/dist/src/fields/TiptapEditor/hooks/useBlockEditor.d.ts +3 -1
  230. package/dist/src/fields/TiptapEditor/hooks/useBlockEditor.d.ts.map +1 -1
  231. package/dist/src/fields/TiptapEditor/hooks/useBlockEditor.js +4 -3
  232. package/dist/src/fields/TiptapEditor/hooks/useBlockEditor.js.map +1 -1
  233. package/dist/src/fields/TiptapEditor/hooks/useSidebar.js.map +1 -1
  234. package/dist/src/fields/TiptapEditor/index.js.map +1 -1
  235. package/dist/src/fields/TiptapEditor/lib/api.js.map +1 -1
  236. package/dist/src/fields/TiptapEditor/lib/constants.js.map +1 -1
  237. package/dist/src/fields/TiptapEditor/lib/data/initialContent.js.map +1 -1
  238. package/dist/src/fields/TiptapEditor/lib/extract.d.ts +3 -0
  239. package/dist/src/fields/TiptapEditor/lib/extract.d.ts.map +1 -0
  240. package/dist/src/fields/TiptapEditor/lib/extract.js +28 -0
  241. package/dist/src/fields/TiptapEditor/lib/extract.js.map +1 -0
  242. package/dist/src/fields/TiptapEditor/lib/utils/cssVar.js.map +1 -1
  243. package/dist/src/fields/TiptapEditor/lib/utils/deepMerge.js.map +1 -1
  244. package/dist/src/fields/TiptapEditor/lib/utils/getRenderContainer.js.map +1 -1
  245. package/dist/src/fields/TiptapEditor/lib/utils/index.js.map +1 -1
  246. package/dist/src/fields/TiptapEditor/lib/utils/isCustomNodeSelected.js.map +1 -1
  247. package/dist/src/fields/TiptapEditor/lib/utils/isRtl.js.map +1 -1
  248. package/dist/src/fields/TiptapEditor/lib/utils/isTextSelected.js.map +1 -1
  249. package/dist/src/fields/TiptapEditor/lib/utils/partialRequired.js.map +1 -1
  250. package/dist/src/fields/TiptapEditor/types.d.js +3 -0
  251. package/dist/src/fields/TiptapEditor/types.d.js.map +1 -0
  252. package/dist/src/index.d.ts +1 -0
  253. package/dist/src/index.d.ts.map +1 -1
  254. package/dist/src/index.js +1 -0
  255. package/dist/src/index.js.map +1 -1
  256. package/dist/src/styles.css +0 -4
  257. package/dist/tsconfig.tsbuildinfo +1 -1
  258. package/package.json +2 -1
@@ -1 +1 @@
1
- {"version":3,"file":"AIEditorPanel.d.ts","sourceRoot":"","sources":["../../../../../../../src/fields/TiptapEditor/features/panels/AIEditorPanel/AIEditorPanel.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAavC,MAAM,MAAM,kBAAkB,GAAG;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CACxC,CAAC;AAEF,eAAO,MAAM,aAAa,6BAA8B,kBAAkB,gCAwIzE,CAAC"}
1
+ {"version":3,"file":"AIEditorPanel.d.ts","sourceRoot":"","sources":["../../../../../../../src/fields/TiptapEditor/features/panels/AIEditorPanel/AIEditorPanel.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAevC,MAAM,MAAM,kBAAkB,GAAG;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CACxC,CAAC;AAEF,eAAO,MAAM,aAAa,6BAA8B,kBAAkB,gCAuJzE,CAAC"}
@@ -3,7 +3,8 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
3
3
  import { useLocale } from "@payloadcms/ui/providers/Locale";
4
4
  import { useCompletion } from "ai/react";
5
5
  import { ArrowRight, Sparkles } from "lucide-react";
6
- import { useCallback, useState } from "react";
6
+ import { useCallback, useRef, useState } from "react";
7
+ import TextareaAutosize from "react-textarea-autosize";
7
8
  import Markdown from "react-markdown";
8
9
  import { getPrevText } from "../../../lib/utils/index.js";
9
10
  import { isRTL } from "../../../lib/utils/isRtl.js";
@@ -16,6 +17,10 @@ import { ScrollArea } from "../../ui/scroll-area.js";
16
17
  export const AIEditorPanel = ({ editor, onOpenChange })=>{
17
18
  const [inputValue, setInputValue] = useState("");
18
19
  const { code } = useLocale();
20
+ const { view } = editor;
21
+ const editorNode = view.dom;
22
+ const boundigClient = editorNode.getBoundingClientRect();
23
+ const inputRef = useRef(null);
19
24
  // const { status, messages, input, submitMessage, handleInputChange } = useAssistant({
20
25
  // // id: "novel",
21
26
  // api: "/api/assistant",
@@ -44,13 +49,15 @@ export const AIEditorPanel = ({ editor, onOpenChange })=>{
44
49
  });
45
50
  const hasCompletion = completion.length > 0;
46
51
  const handleClick = useCallback(()=>{
47
- if (completion) return complete(completion, {
48
- body: {
49
- option: "zap",
50
- command: inputValue,
51
- language: code ?? "en"
52
- }
53
- }).then(()=>setInputValue(""));
52
+ if (completion) {
53
+ return complete(completion, {
54
+ body: {
55
+ option: "zap",
56
+ command: inputValue,
57
+ language: code ?? "en"
58
+ }
59
+ }).then(()=>setInputValue(""));
60
+ }
54
61
  const text = getPrevText(editor, {
55
62
  chars: 5000
56
63
  });
@@ -62,14 +69,18 @@ export const AIEditorPanel = ({ editor, onOpenChange })=>{
62
69
  }
63
70
  }).then(()=>setInputValue(""));
64
71
  }, [
65
- code
72
+ code,
73
+ inputValue
66
74
  ]);
67
75
  return /*#__PURE__*/ _jsx(Surface, {
68
- className: "p-2 min-w-[20rem]",
76
+ className: `p-2 min-w-[20rem] `,
77
+ style: {
78
+ width: boundigClient?.width
79
+ },
69
80
  children: /*#__PURE__*/ _jsxs(_Fragment, {
70
81
  children: [
71
82
  hasCompletion && /*#__PURE__*/ _jsx("div", {
72
- className: "flex max-h-[400px]",
83
+ className: "flex w-full",
73
84
  children: /*#__PURE__*/ _jsx(ScrollArea, {
74
85
  children: /*#__PURE__*/ _jsx("div", {
75
86
  className: "prose p-2 px-4 prose-sm",
@@ -101,7 +112,8 @@ export const AIEditorPanel = ({ editor, onOpenChange })=>{
101
112
  /*#__PURE__*/ _jsx(Sparkles, {
102
113
  className: "mr-2 h-4 w-4 shrink-0 text-blue-500 "
103
114
  }),
104
- /*#__PURE__*/ _jsx("input", {
115
+ /*#__PURE__*/ _jsx(TextareaAutosize, {
116
+ ref: inputRef,
105
117
  className: "w-full p-2 text-black bg-white rounded dark:bg-black dark:text-white focus:outline-none",
106
118
  value: inputValue,
107
119
  onChange: (e)=>{
@@ -109,7 +121,8 @@ export const AIEditorPanel = ({ editor, onOpenChange })=>{
109
121
  },
110
122
  placeholder: hasCompletion ? "Tell AI what to do next" : "Ask AI to edit or generate...",
111
123
  autoFocus: true,
112
- // onFocus={() => addAIHighlight(editor)}
124
+ // onFocus={() => {
125
+ // addAIHighlight(editor)}}
113
126
  onKeyDown: (e)=>{
114
127
  if (e.key === "Enter") handleClick();
115
128
  }
@@ -131,10 +144,9 @@ export const AIEditorPanel = ({ editor, onOpenChange })=>{
131
144
  completion: completion
132
145
  }) : /*#__PURE__*/ _jsx(AISelectorCommands, {
133
146
  editor: editor,
134
- onSelect: (value, options)=>{
135
- complete(value, {
136
- body: options
137
- });
147
+ onSelect: (value)=>{
148
+ setInputValue(value);
149
+ inputRef.current.focus();
138
150
  }
139
151
  })
140
152
  ]
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/panels/AIEditorPanel/AIEditorPanel.tsx"],"sourcesContent":["\"use client\";\n\nimport { useLocale } from \"@payloadcms/ui/providers/Locale\";\nimport { Editor } from \"@tiptap/react\";\nimport { useCompletion } from \"ai/react\";\nimport { ArrowRight, Sparkles } from \"lucide-react\";\nimport { useCallback, useState } from \"react\";\nimport Markdown from \"react-markdown\";\nimport { getPrevText } from \"../../../lib/utils/index.js\";\nimport { isRTL } from \"../../../lib/utils/isRtl.js\";\nimport AICompletionCommands from \"../../menus/TextMenu/components/ai-completion-command.js\";\nimport AISelectorCommands from \"../../menus/TextMenu/components/ai-selector-commands.js\";\nimport { Surface } from \"../../ui/Surface.js\";\nimport { Toolbar } from \"../../ui/Toolbar.js\";\nimport CrazySpinner from \"../../ui/crazy-spinner.js\";\nimport { ScrollArea } from \"../../ui/scroll-area.js\";\nexport type AIEditorPanelProps = {\n editor: Editor;\n onOpenChange: (value: boolean) => void;\n};\n\nexport const AIEditorPanel = ({ editor, onOpenChange }: AIEditorPanelProps) => {\n const [inputValue, setInputValue] = useState(\"\");\n const { code } = useLocale();\n\n // const { status, messages, input, submitMessage, handleInputChange } = useAssistant({\n // // id: \"novel\",\n // api: \"/api/assistant\",\n // onResponse: (response) => {\n // if (response.status === 429) {\n // toast.error(\"You have reached your request limit for the day.\");\n // return;\n // }\n // },\n // onError: (e) => {\n // toast.error(e.message);\n // },\n // });\n\n const { completion, complete, isLoading } = useCompletion({\n // id: \"novel\",\n api: \"/api/generate\",\n onResponse: (response) => {\n if (response.status === 429) {\n console.log(\"You have reached your request limit for the day.\");\n\n return;\n }\n },\n onError: (e) => {\n console.log(\"ERROR\", e.message);\n },\n });\n\n const hasCompletion = completion.length > 0;\n const handleClick = useCallback(() => {\n if (completion)\n return complete(completion, {\n body: { option: \"zap\", command: inputValue, language: code ?? \"en\" },\n }).then(() => setInputValue(\"\"));\n const text = getPrevText(editor, { chars: 5000 });\n\n complete(text, {\n body: { option: \"zap\", command: inputValue, language: code ?? \"en\" },\n }).then(() => setInputValue(\"\"));\n }, [code]);\n return (\n <Surface className=\"p-2 min-w-[20rem]\">\n <>\n {hasCompletion && (\n <div className=\"flex max-h-[400px]\">\n <ScrollArea>\n <div\n className=\"prose p-2 px-4 prose-sm\"\n dir={isRTL(completion) ? \"rtl\" : \"ltr\"}\n >\n <Markdown>{completion}</Markdown>\n </div>\n </ScrollArea>\n </div>\n )}\n\n {isLoading && (\n <div className=\"flex h-12 w-full items-center px-4 text-sm font-medium text-muted-foreground text-blue-500\">\n <Sparkles className=\"mr-2 h-4 w-4 shrink-0 \" />\n AI is thinking\n <div className=\"ml-2 mt-1\">\n <CrazySpinner />\n </div>\n </div>\n )}\n\n {!isLoading && (\n <>\n <div className=\"flex justify-between items-center\">\n {/* <CommandInput\n value={inputValue}\n onValueChange={setInputValue}\n autoFocus\n placeholder={\n hasCompletion ? 'Tell AI what to do next' : 'Ask AI to edit or generate...'\n }\n // onFocus={() => addAIHighlight(editor)}\n onKeyDown={(e) => {\n if (e.key === 'Enter') handleClick()\n }}\n /> */}\n <Sparkles className=\"mr-2 h-4 w-4 shrink-0 text-blue-500 \" />\n <input\n className=\"w-full p-2 text-black bg-white rounded dark:bg-black dark:text-white focus:outline-none\"\n value={inputValue}\n onChange={(e) => {\n setInputValue(e.target.value);\n }}\n placeholder={\n hasCompletion\n ? \"Tell AI what to do next\"\n : \"Ask AI to edit or generate...\"\n }\n autoFocus\n // onFocus={() => addAIHighlight(editor)}\n\n onKeyDown={(e) => {\n if (e.key === \"Enter\") handleClick();\n }}\n />\n <Toolbar.Button\n // size=\"icon\"\n\n // className=\"absolute right-2 top-1/2 h-6 w-6 -translate-y-1/2 rounded-full bg-zinc-100 hover:bg-zinc-150\"\n onClick={handleClick}\n >\n <ArrowRight />\n </Toolbar.Button>\n </div>\n {hasCompletion ? (\n <AICompletionCommands\n editor={editor}\n onDiscard={() => {\n editor.chain().unsetHighlight().focus().run();\n onOpenChange(false);\n }}\n completion={completion}\n />\n ) : (\n <AISelectorCommands\n editor={editor}\n onSelect={(value, options) => {\n complete(value, { body: options });\n }}\n />\n )}\n </>\n )}\n </>\n </Surface>\n );\n};\n"],"names":["useLocale","useCompletion","ArrowRight","Sparkles","useCallback","useState","Markdown","getPrevText","isRTL","AICompletionCommands","AISelectorCommands","Surface","Toolbar","CrazySpinner","ScrollArea","AIEditorPanel","editor","onOpenChange","inputValue","setInputValue","code","completion","complete","isLoading","api","onResponse","response","status","console","log","onError","e","message","hasCompletion","length","handleClick","body","option","command","language","then","text","chars","className","div","dir","input","value","onChange","target","placeholder","autoFocus","onKeyDown","key","Button","onClick","onDiscard","chain","unsetHighlight","focus","run","onSelect","options"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA;;AAEA,SAASA,SAAS,QAAQ,kCAAkC;AAE5D,SAASC,aAAa,QAAQ,WAAW;AACzC,SAASC,UAAU,EAAEC,QAAQ,QAAQ,eAAe;AACpD,SAASC,WAAW,EAAEC,QAAQ,QAAQ,QAAQ;AAC9C,OAAOC,cAAc,iBAAiB;AACtC,SAASC,WAAW,QAAQ,8BAA8B;AAC1D,SAASC,KAAK,QAAQ,8BAA8B;AACpD,OAAOC,0BAA0B,2DAA2D;AAC5F,OAAOC,wBAAwB,0DAA0D;AACzF,SAASC,OAAO,QAAQ,sBAAsB;AAC9C,SAASC,OAAO,QAAQ,sBAAsB;AAC9C,OAAOC,kBAAkB,4BAA4B;AACrD,SAASC,UAAU,QAAQ,0BAA0B;AAMrD,OAAO,MAAMC,gBAAgB,CAAC,EAAEC,MAAM,EAAEC,YAAY,EAAsB;IACxE,MAAM,CAACC,YAAYC,cAAc,GAAGd,SAAS;IAC7C,MAAM,EAAEe,IAAI,EAAE,GAAGpB;IAEjB,uFAAuF;IACvF,oBAAoB;IACpB,2BAA2B;IAC3B,gCAAgC;IAChC,qCAAqC;IACrC,yEAAyE;IACzE,gBAAgB;IAChB,QAAQ;IACR,OAAO;IACP,sBAAsB;IACtB,8BAA8B;IAC9B,OAAO;IACP,MAAM;IAEN,MAAM,EAAEqB,UAAU,EAAEC,QAAQ,EAAEC,SAAS,EAAE,GAAGtB,cAAc;QACxD,eAAe;QACfuB,KAAK;QACLC,YAAY,CAACC;YACX,IAAIA,SAASC,MAAM,KAAK,KAAK;gBAC3BC,QAAQC,GAAG,CAAC;gBAEZ;YACF;QACF;QACAC,SAAS,CAACC;YACRH,QAAQC,GAAG,CAAC,SAASE,EAAEC,OAAO;QAChC;IACF;IAEA,MAAMC,gBAAgBZ,WAAWa,MAAM,GAAG;IAC1C,MAAMC,cAAc/B,YAAY;QAC9B,IAAIiB,YACF,OAAOC,SAASD,YAAY;YAC1Be,MAAM;gBAAEC,QAAQ;gBAAOC,SAASpB;gBAAYqB,UAAUnB,QAAQ;YAAK;QACrE,GAAGoB,IAAI,CAAC,IAAMrB,cAAc;QAC9B,MAAMsB,OAAOlC,YAAYS,QAAQ;YAAE0B,OAAO;QAAK;QAE/CpB,SAASmB,MAAM;YACbL,MAAM;gBAAEC,QAAQ;gBAAOC,SAASpB;gBAAYqB,UAAUnB,QAAQ;YAAK;QACrE,GAAGoB,IAAI,CAAC,IAAMrB,cAAc;IAC9B,GAAG;QAACC;KAAK;IACT,qBACE,KAACT;QAAQgC,WAAU;kBACjB,cAAA;;gBACGV,+BACC,KAACW;oBAAID,WAAU;8BACb,cAAA,KAAC7B;kCACC,cAAA,KAAC8B;4BACCD,WAAU;4BACVE,KAAKrC,MAAMa,cAAc,QAAQ;sCAEjC,cAAA,KAACf;0CAAUe;;;;;gBAMlBE,2BACC,MAACqB;oBAAID,WAAU;;sCACb,KAACxC;4BAASwC,WAAU;;wBAA4B;sCAEhD,KAACC;4BAAID,WAAU;sCACb,cAAA,KAAC9B;;;;gBAKN,CAACU,2BACA;;sCACE,MAACqB;4BAAID,WAAU;;8CAab,KAACxC;oCAASwC,WAAU;;8CACpB,KAACG;oCACCH,WAAU;oCACVI,OAAO7B;oCACP8B,UAAU,CAACjB;wCACTZ,cAAcY,EAAEkB,MAAM,CAACF,KAAK;oCAC9B;oCACAG,aACEjB,gBACI,4BACA;oCAENkB,SAAS;oCACT,yCAAyC;oCAEzCC,WAAW,CAACrB;wCACV,IAAIA,EAAEsB,GAAG,KAAK,SAASlB;oCACzB;;8CAEF,KAACvB,QAAQ0C,MAAM;oCACb,cAAc;oCAEd,4GAA4G;oCAC5GC,SAASpB;8CAET,cAAA,KAACjC;;;;wBAGJ+B,8BACC,KAACxB;4BACCO,QAAQA;4BACRwC,WAAW;gCACTxC,OAAOyC,KAAK,GAAGC,cAAc,GAAGC,KAAK,GAAGC,GAAG;gCAC3C3C,aAAa;4BACf;4BACAI,YAAYA;2CAGd,KAACX;4BACCM,QAAQA;4BACR6C,UAAU,CAACd,OAAOe;gCAChBxC,SAASyB,OAAO;oCAAEX,MAAM0B;gCAAQ;4BAClC;;;;;;;AAQhB,EAAE"}
1
+ {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/panels/AIEditorPanel/AIEditorPanel.tsx"],"sourcesContent":["\"use client\";\n\nimport { useLocale } from \"@payloadcms/ui/providers/Locale\";\nimport { Editor } from \"@tiptap/react\";\nimport { useCompletion } from \"ai/react\";\nimport { ArrowRight, Sparkles } from \"lucide-react\";\nimport { useCallback, useEffect, useRef, useState } from \"react\";\nimport TextareaAutosize from \"react-textarea-autosize\";\n\nimport Markdown from \"react-markdown\";\nimport { getPrevText } from \"../../../lib/utils/index.js\";\nimport { isRTL } from \"../../../lib/utils/isRtl.js\";\nimport AICompletionCommands from \"../../menus/TextMenu/components/ai-completion-command.js\";\nimport AISelectorCommands from \"../../menus/TextMenu/components/ai-selector-commands.js\";\nimport { Surface } from \"../../ui/Surface.js\";\nimport { Toolbar } from \"../../ui/Toolbar.js\";\nimport CrazySpinner from \"../../ui/crazy-spinner.js\";\nimport { ScrollArea } from \"../../ui/scroll-area.js\";\nexport type AIEditorPanelProps = {\n editor: Editor;\n onOpenChange: (value: boolean) => void;\n};\n\nexport const AIEditorPanel = ({ editor, onOpenChange }: AIEditorPanelProps) => {\n const [inputValue, setInputValue] = useState(\"\");\n const { code } = useLocale();\n const { view } = editor;\n\n const editorNode = view.dom as HTMLElement;\n const boundigClient = editorNode.getBoundingClientRect();\n const inputRef = useRef<HTMLTextAreaElement>(null);\n\n // const { status, messages, input, submitMessage, handleInputChange } = useAssistant({\n // // id: \"novel\",\n // api: \"/api/assistant\",\n // onResponse: (response) => {\n // if (response.status === 429) {\n // toast.error(\"You have reached your request limit for the day.\");\n // return;\n // }\n // },\n // onError: (e) => {\n // toast.error(e.message);\n // },\n // });\n\n const { completion, complete, isLoading } = useCompletion({\n // id: \"novel\",\n api: \"/api/generate\",\n onResponse: (response) => {\n if (response.status === 429) {\n console.log(\"You have reached your request limit for the day.\");\n\n return;\n }\n },\n onError: (e) => {\n console.log(\"ERROR\", e.message);\n },\n });\n\n const hasCompletion = completion.length > 0;\n const handleClick = useCallback(() => {\n if (completion) {\n return complete(completion, {\n body: { option: \"zap\", command: inputValue, language: code ?? \"en\" },\n }).then(() => setInputValue(\"\"));\n }\n const text = getPrevText(editor, { chars: 5000 });\n\n complete(text, {\n body: { option: \"zap\", command: inputValue, language: code ?? \"en\" },\n }).then(() => setInputValue(\"\"));\n }, [code, inputValue]);\n\n return (\n <Surface\n className={`p-2 min-w-[20rem] `}\n style={{\n width: boundigClient?.width,\n }}\n >\n <>\n {hasCompletion && (\n <div className=\"flex w-full\">\n <ScrollArea>\n <div\n className=\"prose p-2 px-4 prose-sm\"\n dir={isRTL(completion) ? \"rtl\" : \"ltr\"}\n >\n <Markdown>{completion}</Markdown>\n </div>\n </ScrollArea>\n </div>\n )}\n\n {isLoading && (\n <div className=\"flex h-12 w-full items-center px-4 text-sm font-medium text-muted-foreground text-blue-500\">\n <Sparkles className=\"mr-2 h-4 w-4 shrink-0 \" />\n AI is thinking\n <div className=\"ml-2 mt-1\">\n <CrazySpinner />\n </div>\n </div>\n )}\n\n {!isLoading && (\n <>\n <div className=\"flex justify-between items-center\">\n {/* <CommandInput\n value={inputValue}\n onValueChange={setInputValue}\n autoFocus\n placeholder={\n hasCompletion ? 'Tell AI what to do next' : 'Ask AI to edit or generate...'\n }\n // onFocus={() => addAIHighlight(editor)}\n onKeyDown={(e) => {\n if (e.key === 'Enter') handleClick()\n }}\n /> */}\n <Sparkles className=\"mr-2 h-4 w-4 shrink-0 text-blue-500 \" />\n <TextareaAutosize\n ref={inputRef}\n className=\"w-full p-2 text-black bg-white rounded dark:bg-black dark:text-white focus:outline-none\"\n value={inputValue}\n onChange={(e) => {\n setInputValue(e.target.value);\n }}\n placeholder={\n hasCompletion\n ? \"Tell AI what to do next\"\n : \"Ask AI to edit or generate...\"\n }\n autoFocus\n // onFocus={() => {\n // addAIHighlight(editor)}}\n\n onKeyDown={(e) => {\n if (e.key === \"Enter\") handleClick();\n }}\n />\n <Toolbar.Button\n // size=\"icon\"\n\n // className=\"absolute right-2 top-1/2 h-6 w-6 -translate-y-1/2 rounded-full bg-zinc-100 hover:bg-zinc-150\"\n onClick={handleClick}\n >\n <ArrowRight />\n </Toolbar.Button>\n </div>\n {hasCompletion ? (\n <AICompletionCommands\n editor={editor}\n onDiscard={() => {\n editor.chain().unsetHighlight().focus().run();\n onOpenChange(false);\n }}\n completion={completion}\n />\n ) : (\n <AISelectorCommands\n editor={editor}\n onSelect={(value) => {\n setInputValue(value);\n inputRef.current.focus();\n }}\n />\n )}\n </>\n )}\n </>\n </Surface>\n );\n};\n"],"names":["useLocale","useCompletion","ArrowRight","Sparkles","useCallback","useRef","useState","TextareaAutosize","Markdown","getPrevText","isRTL","AICompletionCommands","AISelectorCommands","Surface","Toolbar","CrazySpinner","ScrollArea","AIEditorPanel","editor","onOpenChange","inputValue","setInputValue","code","view","editorNode","dom","boundigClient","getBoundingClientRect","inputRef","completion","complete","isLoading","api","onResponse","response","status","console","log","onError","e","message","hasCompletion","length","handleClick","body","option","command","language","then","text","chars","className","style","width","div","dir","ref","value","onChange","target","placeholder","autoFocus","onKeyDown","key","Button","onClick","onDiscard","chain","unsetHighlight","focus","run","onSelect","current"],"mappings":"AAAA;;AAEA,SAASA,SAAS,QAAQ,kCAAkC;AAE5D,SAASC,aAAa,QAAQ,WAAW;AACzC,SAASC,UAAU,EAAEC,QAAQ,QAAQ,eAAe;AACpD,SAASC,WAAW,EAAaC,MAAM,EAAEC,QAAQ,QAAQ,QAAQ;AACjE,OAAOC,sBAAsB,0BAA0B;AAEvD,OAAOC,cAAc,iBAAiB;AACtC,SAASC,WAAW,QAAQ,8BAA8B;AAC1D,SAASC,KAAK,QAAQ,8BAA8B;AACpD,OAAOC,0BAA0B,2DAA2D;AAC5F,OAAOC,wBAAwB,0DAA0D;AACzF,SAASC,OAAO,QAAQ,sBAAsB;AAC9C,SAASC,OAAO,QAAQ,sBAAsB;AAC9C,OAAOC,kBAAkB,4BAA4B;AACrD,SAASC,UAAU,QAAQ,0BAA0B;AAMrD,OAAO,MAAMC,gBAAgB,CAAC,EAAEC,MAAM,EAAEC,YAAY,EAAsB;IACxE,MAAM,CAACC,YAAYC,cAAc,GAAGf,SAAS;IAC7C,MAAM,EAAEgB,IAAI,EAAE,GAAGtB;IACjB,MAAM,EAAEuB,IAAI,EAAE,GAAGL;IAEjB,MAAMM,aAAaD,KAAKE,GAAG;IAC3B,MAAMC,gBAAgBF,WAAWG,qBAAqB;IACtD,MAAMC,WAAWvB,OAA4B;IAE7C,uFAAuF;IACvF,oBAAoB;IACpB,2BAA2B;IAC3B,gCAAgC;IAChC,qCAAqC;IACrC,yEAAyE;IACzE,gBAAgB;IAChB,QAAQ;IACR,OAAO;IACP,sBAAsB;IACtB,8BAA8B;IAC9B,OAAO;IACP,MAAM;IAEN,MAAM,EAAEwB,UAAU,EAAEC,QAAQ,EAAEC,SAAS,EAAE,GAAG9B,cAAc;QACxD,eAAe;QACf+B,KAAK;QACLC,YAAY,CAACC;YACX,IAAIA,SAASC,MAAM,KAAK,KAAK;gBAC3BC,QAAQC,GAAG,CAAC;gBAEZ;YACF;QACF;QACAC,SAAS,CAACC;YACRH,QAAQC,GAAG,CAAC,SAASE,EAAEC,OAAO;QAChC;IACF;IAEA,MAAMC,gBAAgBZ,WAAWa,MAAM,GAAG;IAC1C,MAAMC,cAAcvC,YAAY;QAC9B,IAAIyB,YAAY;YACd,OAAOC,SAASD,YAAY;gBAC1Be,MAAM;oBAAEC,QAAQ;oBAAOC,SAAS1B;oBAAY2B,UAAUzB,QAAQ;gBAAK;YACrE,GAAG0B,IAAI,CAAC,IAAM3B,cAAc;QAC9B;QACA,MAAM4B,OAAOxC,YAAYS,QAAQ;YAAEgC,OAAO;QAAK;QAE/CpB,SAASmB,MAAM;YACbL,MAAM;gBAAEC,QAAQ;gBAAOC,SAAS1B;gBAAY2B,UAAUzB,QAAQ;YAAK;QACrE,GAAG0B,IAAI,CAAC,IAAM3B,cAAc;IAC9B,GAAG;QAACC;QAAMF;KAAW;IAErB,qBACE,KAACP;QACCsC,WAAW,CAAC,kBAAkB,CAAC;QAC/BC,OAAO;YACLC,OAAO3B,eAAe2B;QACxB;kBAEA,cAAA;;gBACGZ,+BACC,KAACa;oBAAIH,WAAU;8BACb,cAAA,KAACnC;kCACC,cAAA,KAACsC;4BACCH,WAAU;4BACVI,KAAK7C,MAAMmB,cAAc,QAAQ;sCAEjC,cAAA,KAACrB;0CAAUqB;;;;;gBAMlBE,2BACC,MAACuB;oBAAIH,WAAU;;sCACb,KAAChD;4BAASgD,WAAU;;wBAA4B;sCAEhD,KAACG;4BAAIH,WAAU;sCACb,cAAA,KAACpC;;;;gBAKN,CAACgB,2BACA;;sCACE,MAACuB;4BAAIH,WAAU;;8CAab,KAAChD;oCAASgD,WAAU;;8CACpB,KAAC5C;oCACCiD,KAAK5B;oCACLuB,WAAU;oCACVM,OAAOrC;oCACPsC,UAAU,CAACnB;wCACTlB,cAAckB,EAAEoB,MAAM,CAACF,KAAK;oCAC9B;oCACAG,aACEnB,gBACI,4BACA;oCAENoB,SAAS;oCACT,mBAAmB;oCACnB,6BAA6B;oCAE7BC,WAAW,CAACvB;wCACV,IAAIA,EAAEwB,GAAG,KAAK,SAASpB;oCACzB;;8CAEF,KAAC7B,QAAQkD,MAAM;oCACb,cAAc;oCAEd,4GAA4G;oCAC5GC,SAAStB;8CAET,cAAA,KAACzC;;;;wBAGJuC,8BACC,KAAC9B;4BACCO,QAAQA;4BACRgD,WAAW;gCACThD,OAAOiD,KAAK,GAAGC,cAAc,GAAGC,KAAK,GAAGC,GAAG;gCAC3CnD,aAAa;4BACf;4BACAU,YAAYA;2CAGd,KAACjB;4BACCM,QAAQA;4BACRqD,UAAU,CAACd;gCACTpC,cAAcoC;gCACd7B,SAAS4C,OAAO,CAACH,KAAK;4BACxB;;;;;;;AAQhB,EAAE"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/panels/AIEditorPanel/index.tsx"],"sourcesContent":["export * from \"./AIEditorPanel.js\";\n"],"names":[],"rangeMappings":"","mappings":"AAAA,cAAc,qBAAqB"}
1
+ {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/panels/AIEditorPanel/index.tsx"],"sourcesContent":["export * from \"./AIEditorPanel.js\";\n"],"names":[],"mappings":"AAAA,cAAc,qBAAqB"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/panels/Colorpicker/ColorButton.tsx"],"sourcesContent":["import React, { memo, useCallback } from \"react\";\nimport { cn } from \"../../../lib/utils/index.js\";\n\nexport type ColorButtonProps = {\n color?: string;\n active?: boolean;\n onColorChange?: (color: string) => void; // eslint-disable-line no-unused-vars\n};\n\nexport const ColorButton = memo(\n ({ color, active, onColorChange }: ColorButtonProps) => {\n const wrapperClassName = cn(\n \"flex items-center justify-center px-1.5 py-1.5 rounded group\",\n !active && \"hover:bg-neutral-100\",\n active && \"bg-neutral-100\"\n );\n const bubbleClassName = cn(\n \"w-4 h-4 rounded bg-slate-100 shadow-sm ring-offset-2 ring-current\",\n !active && `hover:ring-1`,\n active && `ring-1`\n );\n\n const handleClick = useCallback(() => {\n if (onColorChange) {\n onColorChange(color || \"\");\n }\n }, [onColorChange, color]);\n\n return (\n <button type=\"button\" onClick={handleClick} className={wrapperClassName}>\n <div\n style={{ backgroundColor: color, color: color }}\n className={bubbleClassName}\n ></div>\n </button>\n );\n }\n);\n\nColorButton.displayName = \"ColorButton\";\n"],"names":["React","memo","useCallback","cn","ColorButton","color","active","onColorChange","wrapperClassName","bubbleClassName","handleClick","button","type","onClick","className","div","style","backgroundColor","displayName"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";AAAA,OAAOA,SAASC,IAAI,EAAEC,WAAW,QAAQ,QAAQ;AACjD,SAASC,EAAE,QAAQ,8BAA8B;AAQjD,OAAO,MAAMC,4BAAcH,KACzB,CAAC,EAAEI,KAAK,EAAEC,MAAM,EAAEC,aAAa,EAAoB;IACjD,MAAMC,mBAAmBL,GACvB,gEACA,CAACG,UAAU,wBACXA,UAAU;IAEZ,MAAMG,kBAAkBN,GACtB,qEACA,CAACG,UAAU,CAAC,YAAY,CAAC,EACzBA,UAAU,CAAC,MAAM,CAAC;IAGpB,MAAMI,cAAcR,YAAY;QAC9B,IAAIK,eAAe;YACjBA,cAAcF,SAAS;QACzB;IACF,GAAG;QAACE;QAAeF;KAAM;IAEzB,qBACE,KAACM;QAAOC,MAAK;QAASC,SAASH;QAAaI,WAAWN;kBACrD,cAAA,KAACO;YACCC,OAAO;gBAAEC,iBAAiBZ;gBAAOA,OAAOA;YAAM;YAC9CS,WAAWL;;;AAInB,GACA;AAEFL,YAAYc,WAAW,GAAG"}
1
+ {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/panels/Colorpicker/ColorButton.tsx"],"sourcesContent":["import React, { memo, useCallback } from \"react\";\nimport { cn } from \"../../../lib/utils/index.js\";\n\nexport type ColorButtonProps = {\n color?: string;\n active?: boolean;\n onColorChange?: (color: string) => void; // eslint-disable-line no-unused-vars\n};\n\nexport const ColorButton = memo(\n ({ color, active, onColorChange }: ColorButtonProps) => {\n const wrapperClassName = cn(\n \"flex items-center justify-center px-1.5 py-1.5 rounded group\",\n !active && \"hover:bg-neutral-100\",\n active && \"bg-neutral-100\"\n );\n const bubbleClassName = cn(\n \"w-4 h-4 rounded bg-slate-100 shadow-sm ring-offset-2 ring-current\",\n !active && `hover:ring-1`,\n active && `ring-1`\n );\n\n const handleClick = useCallback(() => {\n if (onColorChange) {\n onColorChange(color || \"\");\n }\n }, [onColorChange, color]);\n\n return (\n <button type=\"button\" onClick={handleClick} className={wrapperClassName}>\n <div\n style={{ backgroundColor: color, color: color }}\n className={bubbleClassName}\n ></div>\n </button>\n );\n }\n);\n\nColorButton.displayName = \"ColorButton\";\n"],"names":["React","memo","useCallback","cn","ColorButton","color","active","onColorChange","wrapperClassName","bubbleClassName","handleClick","button","type","onClick","className","div","style","backgroundColor","displayName"],"mappings":";AAAA,OAAOA,SAASC,IAAI,EAAEC,WAAW,QAAQ,QAAQ;AACjD,SAASC,EAAE,QAAQ,8BAA8B;AAQjD,OAAO,MAAMC,4BAAcH,KACzB,CAAC,EAAEI,KAAK,EAAEC,MAAM,EAAEC,aAAa,EAAoB;IACjD,MAAMC,mBAAmBL,GACvB,gEACA,CAACG,UAAU,wBACXA,UAAU;IAEZ,MAAMG,kBAAkBN,GACtB,qEACA,CAACG,UAAU,CAAC,YAAY,CAAC,EACzBA,UAAU,CAAC,MAAM,CAAC;IAGpB,MAAMI,cAAcR,YAAY;QAC9B,IAAIK,eAAe;YACjBA,cAAcF,SAAS;QACzB;IACF,GAAG;QAACE;QAAeF;KAAM;IAEzB,qBACE,KAACM;QAAOC,MAAK;QAASC,SAASH;QAAaI,WAAWN;kBACrD,cAAA,KAACO;YACCC,OAAO;gBAAEC,iBAAiBZ;gBAAOA,OAAOA;YAAM;YAC9CS,WAAWL;;;AAInB,GACA;AAEFL,YAAYc,WAAW,GAAG"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/panels/Colorpicker/Colorpicker.tsx"],"sourcesContent":["import React, { useCallback, useState } from \"react\";\nimport { HexColorPicker } from \"react-colorful\";\nimport { ColorButton } from \"./ColorButton.js\";\nimport { Toolbar } from \"../../ui/Toolbar.js\";\nimport { Icon } from \"../../ui/Icon.js\";\nimport { themeColors } from \"../../../lib/constants.js\";\nimport { Undo } from \"lucide-react\";\n\nexport type ColorPickerProps = {\n color?: string;\n onChange?: (color: string) => void;\n onClear?: () => void;\n};\n\nexport const ColorPicker = ({ color, onChange, onClear }: ColorPickerProps) => {\n const [colorInputValue, setColorInputValue] = useState(color || \"\");\n\n const handleColorUpdate = useCallback(\n (event: React.ChangeEvent<HTMLInputElement>) => {\n setColorInputValue(event.target.value);\n },\n []\n );\n\n const handleColorChange = useCallback(() => {\n const isCorrectColor = /^#([0-9A-F]{3}){1,2}$/i.test(colorInputValue);\n\n if (!isCorrectColor) {\n if (onChange) {\n onChange(\"\");\n }\n\n return;\n }\n\n if (onChange) {\n onChange(colorInputValue);\n }\n }, [colorInputValue, onChange]);\n\n return (\n <div className=\"flex flex-col gap-2\">\n <HexColorPicker\n className=\"w-full\"\n color={color || \"\"}\n onChange={onChange}\n />\n <input\n type=\"text\"\n className=\"w-full p-2 text-black bg-white border rounded dark:bg-black dark:text-white border-neutral-200 dark:border-neutral-800 focus:outline-1 focus:ring-0 focus:outline-neutral-300 dark:focus:outline-neutral-700\"\n placeholder=\"#000000\"\n value={colorInputValue}\n onChange={handleColorUpdate}\n onBlur={handleColorChange}\n />\n <div className=\"flex flex-wrap items-center gap-1 max-w-[15rem]\">\n {themeColors.map((currentColor) => (\n <ColorButton\n active={currentColor === color}\n color={currentColor}\n key={currentColor}\n onColorChange={onChange}\n />\n ))}\n <Toolbar.Button tooltip=\"Reset color to default\" onClick={onClear}>\n <Icon icon={Undo} />\n </Toolbar.Button>\n </div>\n </div>\n );\n};\n"],"names":["React","useCallback","useState","HexColorPicker","ColorButton","Toolbar","Icon","themeColors","Undo","ColorPicker","color","onChange","onClear","colorInputValue","setColorInputValue","handleColorUpdate","event","target","value","handleColorChange","isCorrectColor","test","div","className","input","type","placeholder","onBlur","map","currentColor","active","onColorChange","Button","tooltip","onClick","icon"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";AAAA,OAAOA,SAASC,WAAW,EAAEC,QAAQ,QAAQ,QAAQ;AACrD,SAASC,cAAc,QAAQ,iBAAiB;AAChD,SAASC,WAAW,QAAQ,mBAAmB;AAC/C,SAASC,OAAO,QAAQ,sBAAsB;AAC9C,SAASC,IAAI,QAAQ,mBAAmB;AACxC,SAASC,WAAW,QAAQ,4BAA4B;AACxD,SAASC,IAAI,QAAQ,eAAe;AAQpC,OAAO,MAAMC,cAAc,CAAC,EAAEC,KAAK,EAAEC,QAAQ,EAAEC,OAAO,EAAoB;IACxE,MAAM,CAACC,iBAAiBC,mBAAmB,GAAGZ,SAASQ,SAAS;IAEhE,MAAMK,oBAAoBd,YACxB,CAACe;QACCF,mBAAmBE,MAAMC,MAAM,CAACC,KAAK;IACvC,GACA,EAAE;IAGJ,MAAMC,oBAAoBlB,YAAY;QACpC,MAAMmB,iBAAiB,yBAAyBC,IAAI,CAACR;QAErD,IAAI,CAACO,gBAAgB;YACnB,IAAIT,UAAU;gBACZA,SAAS;YACX;YAEA;QACF;QAEA,IAAIA,UAAU;YACZA,SAASE;QACX;IACF,GAAG;QAACA;QAAiBF;KAAS;IAE9B,qBACE,MAACW;QAAIC,WAAU;;0BACb,KAACpB;gBACCoB,WAAU;gBACVb,OAAOA,SAAS;gBAChBC,UAAUA;;0BAEZ,KAACa;gBACCC,MAAK;gBACLF,WAAU;gBACVG,aAAY;gBACZR,OAAOL;gBACPF,UAAUI;gBACVY,QAAQR;;0BAEV,MAACG;gBAAIC,WAAU;;oBACZhB,YAAYqB,GAAG,CAAC,CAACC,6BAChB,KAACzB;4BACC0B,QAAQD,iBAAiBnB;4BACzBA,OAAOmB;4BAEPE,eAAepB;2BADVkB;kCAIT,KAACxB,QAAQ2B,MAAM;wBAACC,SAAQ;wBAAyBC,SAAStB;kCACxD,cAAA,KAACN;4BAAK6B,MAAM3B;;;;;;;AAKtB,EAAE"}
1
+ {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/panels/Colorpicker/Colorpicker.tsx"],"sourcesContent":["import React, { useCallback, useState } from \"react\";\nimport { HexColorPicker } from \"react-colorful\";\nimport { ColorButton } from \"./ColorButton.js\";\nimport { Toolbar } from \"../../ui/Toolbar.js\";\nimport { Icon } from \"../../ui/Icon.js\";\nimport { themeColors } from \"../../../lib/constants.js\";\nimport { Undo } from \"lucide-react\";\n\nexport type ColorPickerProps = {\n color?: string;\n onChange?: (color: string) => void;\n onClear?: () => void;\n};\n\nexport const ColorPicker = ({ color, onChange, onClear }: ColorPickerProps) => {\n const [colorInputValue, setColorInputValue] = useState(color || \"\");\n\n const handleColorUpdate = useCallback(\n (event: React.ChangeEvent<HTMLInputElement>) => {\n setColorInputValue(event.target.value);\n },\n []\n );\n\n const handleColorChange = useCallback(() => {\n const isCorrectColor = /^#([0-9A-F]{3}){1,2}$/i.test(colorInputValue);\n\n if (!isCorrectColor) {\n if (onChange) {\n onChange(\"\");\n }\n\n return;\n }\n\n if (onChange) {\n onChange(colorInputValue);\n }\n }, [colorInputValue, onChange]);\n\n return (\n <div className=\"flex flex-col gap-2\">\n <HexColorPicker\n className=\"w-full\"\n color={color || \"\"}\n onChange={onChange}\n />\n <input\n type=\"text\"\n className=\"w-full p-2 text-black bg-white border rounded dark:bg-black dark:text-white border-neutral-200 dark:border-neutral-800 focus:outline-1 focus:ring-0 focus:outline-neutral-300 dark:focus:outline-neutral-700\"\n placeholder=\"#000000\"\n value={colorInputValue}\n onChange={handleColorUpdate}\n onBlur={handleColorChange}\n />\n <div className=\"flex flex-wrap items-center gap-1 max-w-[15rem]\">\n {themeColors.map((currentColor) => (\n <ColorButton\n active={currentColor === color}\n color={currentColor}\n key={currentColor}\n onColorChange={onChange}\n />\n ))}\n <Toolbar.Button tooltip=\"Reset color to default\" onClick={onClear}>\n <Icon icon={Undo} />\n </Toolbar.Button>\n </div>\n </div>\n );\n};\n"],"names":["React","useCallback","useState","HexColorPicker","ColorButton","Toolbar","Icon","themeColors","Undo","ColorPicker","color","onChange","onClear","colorInputValue","setColorInputValue","handleColorUpdate","event","target","value","handleColorChange","isCorrectColor","test","div","className","input","type","placeholder","onBlur","map","currentColor","active","onColorChange","Button","tooltip","onClick","icon"],"mappings":";AAAA,OAAOA,SAASC,WAAW,EAAEC,QAAQ,QAAQ,QAAQ;AACrD,SAASC,cAAc,QAAQ,iBAAiB;AAChD,SAASC,WAAW,QAAQ,mBAAmB;AAC/C,SAASC,OAAO,QAAQ,sBAAsB;AAC9C,SAASC,IAAI,QAAQ,mBAAmB;AACxC,SAASC,WAAW,QAAQ,4BAA4B;AACxD,SAASC,IAAI,QAAQ,eAAe;AAQpC,OAAO,MAAMC,cAAc,CAAC,EAAEC,KAAK,EAAEC,QAAQ,EAAEC,OAAO,EAAoB;IACxE,MAAM,CAACC,iBAAiBC,mBAAmB,GAAGZ,SAASQ,SAAS;IAEhE,MAAMK,oBAAoBd,YACxB,CAACe;QACCF,mBAAmBE,MAAMC,MAAM,CAACC,KAAK;IACvC,GACA,EAAE;IAGJ,MAAMC,oBAAoBlB,YAAY;QACpC,MAAMmB,iBAAiB,yBAAyBC,IAAI,CAACR;QAErD,IAAI,CAACO,gBAAgB;YACnB,IAAIT,UAAU;gBACZA,SAAS;YACX;YAEA;QACF;QAEA,IAAIA,UAAU;YACZA,SAASE;QACX;IACF,GAAG;QAACA;QAAiBF;KAAS;IAE9B,qBACE,MAACW;QAAIC,WAAU;;0BACb,KAACpB;gBACCoB,WAAU;gBACVb,OAAOA,SAAS;gBAChBC,UAAUA;;0BAEZ,KAACa;gBACCC,MAAK;gBACLF,WAAU;gBACVG,aAAY;gBACZR,OAAOL;gBACPF,UAAUI;gBACVY,QAAQR;;0BAEV,MAACG;gBAAIC,WAAU;;oBACZhB,YAAYqB,GAAG,CAAC,CAACC,6BAChB,KAACzB;4BACC0B,QAAQD,iBAAiBnB;4BACzBA,OAAOmB;4BAEPE,eAAepB;2BADVkB;kCAIT,KAACxB,QAAQ2B,MAAM;wBAACC,SAAQ;wBAAyBC,SAAStB;kCACxD,cAAA,KAACN;4BAAK6B,MAAM3B;;;;;;;AAKtB,EAAE"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/panels/Colorpicker/index.tsx"],"sourcesContent":["export * from \"./Colorpicker.js\";\n"],"names":[],"rangeMappings":"","mappings":"AAAA,cAAc,mBAAmB"}
1
+ {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/panels/Colorpicker/index.tsx"],"sourcesContent":["export * from \"./Colorpicker.js\";\n"],"names":[],"mappings":"AAAA,cAAc,mBAAmB"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/panels/IframeLinkEditorPanel/IframeLinkEditorPanel.tsx"],"sourcesContent":["import React, { useCallback, useState } from \"react\";\nimport { Link } from \"lucide-react\";\nimport { Button } from \"../../ui/Button/Button.js\";\nimport { Icon } from \"../../ui/Icon.js\";\nimport { Surface } from \"../../ui/Surface.js\";\n\nexport type IframeLinkEditorPanelProps = {\n initialSrc?: string;\n initialOpenInNewTab?: boolean;\n onSetLink: (src: string) => void;\n};\n\nexport const useLinkEditorState = ({\n initialSrc,\n onSetLink,\n}: IframeLinkEditorPanelProps) => {\n const [url, setUrl] = useState(initialSrc || \"\");\n\n const onChange = useCallback(\n (event: React.ChangeEvent<HTMLTextAreaElement>) => {\n setUrl(event.target.value);\n },\n []\n );\n\n // const isValidUrl = useMemo(() => /^(\\S+):(\\/\\/)?\\S+$/.test(url), [url]);\n\n const handleSubmit = useCallback(\n (e: React.FormEvent) => {\n e.preventDefault();\n // if (isValidUrl) {\n onSetLink(url);\n // }\n },\n [url, onSetLink]\n );\n\n return {\n url,\n setUrl,\n onChange,\n handleSubmit,\n };\n};\n\nexport const IframeLinkEditorPanel = ({\n onSetLink,\n initialOpenInNewTab,\n initialSrc,\n}: IframeLinkEditorPanelProps) => {\n const state = useLinkEditorState({\n onSetLink,\n initialOpenInNewTab,\n initialSrc,\n });\n\n return (\n <Surface className=\"p-2\">\n <div className=\"flex items-center gap-2\">\n <label className=\"flex items-center gap-2 p-2 rounded-lg bg-neutral-100 dark:bg-neutral-900 cursor-text\">\n <Icon icon={Link} className=\"flex-none text-black dark:text-white\" />\n <textarea\n className=\"flex-1 bg-transparent outline-none min-w-[12rem] text-black text-sm dark:text-white\"\n placeholder=\"Enter Embed Code\"\n value={state.url}\n onChange={state.onChange}\n />\n </label>\n <Button\n variant=\"primary\"\n buttonSize=\"small\"\n type=\"button\"\n onClick={(e) => {\n state.handleSubmit(e);\n }}\n // disabled={!state.isValidUrl}\n >\n Set Link\n </Button>\n </div>\n </Surface>\n );\n};\n"],"names":["React","useCallback","useState","Link","Button","Icon","Surface","useLinkEditorState","initialSrc","onSetLink","url","setUrl","onChange","event","target","value","handleSubmit","e","preventDefault","IframeLinkEditorPanel","initialOpenInNewTab","state","className","div","label","icon","textarea","placeholder","variant","buttonSize","type","onClick"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";AAAA,OAAOA,SAASC,WAAW,EAAEC,QAAQ,QAAQ,QAAQ;AACrD,SAASC,IAAI,QAAQ,eAAe;AACpC,SAASC,MAAM,QAAQ,4BAA4B;AACnD,SAASC,IAAI,QAAQ,mBAAmB;AACxC,SAASC,OAAO,QAAQ,sBAAsB;AAQ9C,OAAO,MAAMC,qBAAqB,CAAC,EACjCC,UAAU,EACVC,SAAS,EACkB;IAC3B,MAAM,CAACC,KAAKC,OAAO,GAAGT,SAASM,cAAc;IAE7C,MAAMI,WAAWX,YACf,CAACY;QACCF,OAAOE,MAAMC,MAAM,CAACC,KAAK;IAC3B,GACA,EAAE;IAGJ,2EAA2E;IAE3E,MAAMC,eAAef,YACnB,CAACgB;QACCA,EAAEC,cAAc;QAChB,oBAAoB;QACpBT,UAAUC;IACV,IAAI;IACN,GACA;QAACA;QAAKD;KAAU;IAGlB,OAAO;QACLC;QACAC;QACAC;QACAI;IACF;AACF,EAAE;AAEF,OAAO,MAAMG,wBAAwB,CAAC,EACpCV,SAAS,EACTW,mBAAmB,EACnBZ,UAAU,EACiB;IAC3B,MAAMa,QAAQd,mBAAmB;QAC/BE;QACAW;QACAZ;IACF;IAEA,qBACE,KAACF;QAAQgB,WAAU;kBACjB,cAAA,MAACC;YAAID,WAAU;;8BACb,MAACE;oBAAMF,WAAU;;sCACf,KAACjB;4BAAKoB,MAAMtB;4BAAMmB,WAAU;;sCAC5B,KAACI;4BACCJ,WAAU;4BACVK,aAAY;4BACZZ,OAAOM,MAAMX,GAAG;4BAChBE,UAAUS,MAAMT,QAAQ;;;;8BAG5B,KAACR;oBACCwB,SAAQ;oBACRC,YAAW;oBACXC,MAAK;oBACLC,SAAS,CAACd;wBACRI,MAAML,YAAY,CAACC;oBACrB;8BAED;;;;;AAMT,EAAE"}
1
+ {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/panels/IframeLinkEditorPanel/IframeLinkEditorPanel.tsx"],"sourcesContent":["import React, { useCallback, useState } from \"react\";\nimport { Link } from \"lucide-react\";\nimport { Button } from \"../../ui/Button/Button.js\";\nimport { Icon } from \"../../ui/Icon.js\";\nimport { Surface } from \"../../ui/Surface.js\";\n\nexport type IframeLinkEditorPanelProps = {\n initialSrc?: string;\n initialOpenInNewTab?: boolean;\n onSetLink: (src: string) => void;\n};\n\nexport const useLinkEditorState = ({\n initialSrc,\n onSetLink,\n}: IframeLinkEditorPanelProps) => {\n const [url, setUrl] = useState(initialSrc || \"\");\n\n const onChange = useCallback(\n (event: React.ChangeEvent<HTMLTextAreaElement>) => {\n setUrl(event.target.value);\n },\n []\n );\n\n // const isValidUrl = useMemo(() => /^(\\S+):(\\/\\/)?\\S+$/.test(url), [url]);\n\n const handleSubmit = useCallback(\n (e: React.FormEvent) => {\n e.preventDefault();\n // if (isValidUrl) {\n onSetLink(url);\n // }\n },\n [url, onSetLink]\n );\n\n return {\n url,\n setUrl,\n onChange,\n handleSubmit,\n };\n};\n\nexport const IframeLinkEditorPanel = ({\n onSetLink,\n initialOpenInNewTab,\n initialSrc,\n}: IframeLinkEditorPanelProps) => {\n const state = useLinkEditorState({\n onSetLink,\n initialOpenInNewTab,\n initialSrc,\n });\n\n return (\n <Surface className=\"p-2\">\n <div className=\"flex items-center gap-2\">\n <label className=\"flex items-center gap-2 p-2 rounded-lg bg-neutral-100 dark:bg-neutral-900 cursor-text\">\n <Icon icon={Link} className=\"flex-none text-black dark:text-white\" />\n <textarea\n className=\"flex-1 bg-transparent outline-none min-w-[12rem] text-black text-sm dark:text-white\"\n placeholder=\"Enter Embed Code\"\n value={state.url}\n onChange={state.onChange}\n />\n </label>\n <Button\n variant=\"primary\"\n buttonSize=\"small\"\n type=\"button\"\n onClick={(e) => {\n state.handleSubmit(e);\n }}\n // disabled={!state.isValidUrl}\n >\n Set Link\n </Button>\n </div>\n </Surface>\n );\n};\n"],"names":["React","useCallback","useState","Link","Button","Icon","Surface","useLinkEditorState","initialSrc","onSetLink","url","setUrl","onChange","event","target","value","handleSubmit","e","preventDefault","IframeLinkEditorPanel","initialOpenInNewTab","state","className","div","label","icon","textarea","placeholder","variant","buttonSize","type","onClick"],"mappings":";AAAA,OAAOA,SAASC,WAAW,EAAEC,QAAQ,QAAQ,QAAQ;AACrD,SAASC,IAAI,QAAQ,eAAe;AACpC,SAASC,MAAM,QAAQ,4BAA4B;AACnD,SAASC,IAAI,QAAQ,mBAAmB;AACxC,SAASC,OAAO,QAAQ,sBAAsB;AAQ9C,OAAO,MAAMC,qBAAqB,CAAC,EACjCC,UAAU,EACVC,SAAS,EACkB;IAC3B,MAAM,CAACC,KAAKC,OAAO,GAAGT,SAASM,cAAc;IAE7C,MAAMI,WAAWX,YACf,CAACY;QACCF,OAAOE,MAAMC,MAAM,CAACC,KAAK;IAC3B,GACA,EAAE;IAGJ,2EAA2E;IAE3E,MAAMC,eAAef,YACnB,CAACgB;QACCA,EAAEC,cAAc;QAChB,oBAAoB;QACpBT,UAAUC;IACV,IAAI;IACN,GACA;QAACA;QAAKD;KAAU;IAGlB,OAAO;QACLC;QACAC;QACAC;QACAI;IACF;AACF,EAAE;AAEF,OAAO,MAAMG,wBAAwB,CAAC,EACpCV,SAAS,EACTW,mBAAmB,EACnBZ,UAAU,EACiB;IAC3B,MAAMa,QAAQd,mBAAmB;QAC/BE;QACAW;QACAZ;IACF;IAEA,qBACE,KAACF;QAAQgB,WAAU;kBACjB,cAAA,MAACC;YAAID,WAAU;;8BACb,MAACE;oBAAMF,WAAU;;sCACf,KAACjB;4BAAKoB,MAAMtB;4BAAMmB,WAAU;;sCAC5B,KAACI;4BACCJ,WAAU;4BACVK,aAAY;4BACZZ,OAAOM,MAAMX,GAAG;4BAChBE,UAAUS,MAAMT,QAAQ;;;;8BAG5B,KAACR;oBACCwB,SAAQ;oBACRC,YAAW;oBACXC,MAAK;oBACLC,SAAS,CAACd;wBACRI,MAAML,YAAY,CAACC;oBACrB;8BAED;;;;;AAMT,EAAE"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/panels/IframeLinkEditorPanel/index.tsx"],"sourcesContent":["export * from \"./IframeLinkEditorPanel.js\";\n"],"names":[],"rangeMappings":"","mappings":"AAAA,cAAc,6BAA6B"}
1
+ {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/panels/IframeLinkEditorPanel/index.tsx"],"sourcesContent":["export * from \"./IframeLinkEditorPanel.js\";\n"],"names":[],"mappings":"AAAA,cAAc,6BAA6B"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/panels/InsideLinksEditorPanel/InsideLinksEditorPanel.tsx"],"sourcesContent":["import { ContentRelationship } from \"../../../extensions/InsideLinks/InsideLink.client.js\";\nimport { Surface } from \"../../ui/Surface.js\";\n\nexport type InsideLinksEditorPanelProps = {\n onRelationshipSelect: ({\n thumbnail,\n title,\n id,\n type,\n url,\n }: {\n id: string;\n type: string;\n thumbnail: string;\n title: string;\n url: string;\n }) => void;\n onCancel: () => void;\n};\n\nexport const InsideLinksEditorPanel = ({\n onRelationshipSelect,\n onCancel,\n}: // initialOpenInNewTab,\nInsideLinksEditorPanelProps) => {\n return (\n <Surface className=\"p-2\">\n <div className=\"flex flex-col items-center gap-2 p-1\">\n <ContentRelationship\n setRelationship={({ id, thumbnail, title, type, url }) => {\n onRelationshipSelect({ id, thumbnail, title, type, url });\n }}\n cancelSelection={() => {\n onCancel();\n }}\n />\n <span className=\"mt-1 mb-0 text-sm\">Add Internal Link to Contents</span>\n </div>\n </Surface>\n );\n};\n"],"names":["ContentRelationship","Surface","InsideLinksEditorPanel","onRelationshipSelect","onCancel","className","div","setRelationship","id","thumbnail","title","type","url","cancelSelection","span"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";AAAA,SAASA,mBAAmB,QAAQ,uDAAuD;AAC3F,SAASC,OAAO,QAAQ,sBAAsB;AAmB9C,OAAO,MAAMC,yBAAyB,CAAC,EACrCC,oBAAoB,EACpBC,QAAQ,EAEiB;IACzB,qBACE,KAACH;QAAQI,WAAU;kBACjB,cAAA,MAACC;YAAID,WAAU;;8BACb,KAACL;oBACCO,iBAAiB,CAAC,EAAEC,EAAE,EAAEC,SAAS,EAAEC,KAAK,EAAEC,IAAI,EAAEC,GAAG,EAAE;wBACnDT,qBAAqB;4BAAEK;4BAAIC;4BAAWC;4BAAOC;4BAAMC;wBAAI;oBACzD;oBACAC,iBAAiB;wBACfT;oBACF;;8BAEF,KAACU;oBAAKT,WAAU;8BAAoB;;;;;AAI5C,EAAE"}
1
+ {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/panels/InsideLinksEditorPanel/InsideLinksEditorPanel.tsx"],"sourcesContent":["import { ContentRelationship } from \"../../../extensions/InsideLinks/InsideLink.client.js\";\nimport { Surface } from \"../../ui/Surface.js\";\n\nexport type InsideLinksEditorPanelProps = {\n onRelationshipSelect: ({\n thumbnail,\n title,\n id,\n type,\n url,\n }: {\n id: string;\n type: string;\n thumbnail: string;\n title: string;\n url: string;\n }) => void;\n onCancel: () => void;\n};\n\nexport const InsideLinksEditorPanel = ({\n onRelationshipSelect,\n onCancel,\n}: // initialOpenInNewTab,\nInsideLinksEditorPanelProps) => {\n return (\n <Surface className=\"p-2\">\n <div className=\"flex flex-col items-center gap-2 p-1\">\n <ContentRelationship\n setRelationship={({ id, thumbnail, title, type, url }) => {\n onRelationshipSelect({ id, thumbnail, title, type, url });\n }}\n cancelSelection={() => {\n onCancel();\n }}\n />\n <span className=\"mt-1 mb-0 text-sm\">Add Internal Link to Contents</span>\n </div>\n </Surface>\n );\n};\n"],"names":["ContentRelationship","Surface","InsideLinksEditorPanel","onRelationshipSelect","onCancel","className","div","setRelationship","id","thumbnail","title","type","url","cancelSelection","span"],"mappings":";AAAA,SAASA,mBAAmB,QAAQ,uDAAuD;AAC3F,SAASC,OAAO,QAAQ,sBAAsB;AAmB9C,OAAO,MAAMC,yBAAyB,CAAC,EACrCC,oBAAoB,EACpBC,QAAQ,EAEiB;IACzB,qBACE,KAACH;QAAQI,WAAU;kBACjB,cAAA,MAACC;YAAID,WAAU;;8BACb,KAACL;oBACCO,iBAAiB,CAAC,EAAEC,EAAE,EAAEC,SAAS,EAAEC,KAAK,EAAEC,IAAI,EAAEC,GAAG,EAAE;wBACnDT,qBAAqB;4BAAEK;4BAAIC;4BAAWC;4BAAOC;4BAAMC;wBAAI;oBACzD;oBACAC,iBAAiB;wBACfT;oBACF;;8BAEF,KAACU;oBAAKT,WAAU;8BAAoB;;;;;AAI5C,EAAE"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/panels/InsideLinksEditorPanel/index.tsx"],"sourcesContent":["export * from \"./InsideLinksEditorPanel.js\";\n"],"names":[],"rangeMappings":"","mappings":"AAAA,cAAc,8BAA8B"}
1
+ {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/panels/InsideLinksEditorPanel/index.tsx"],"sourcesContent":["export * from \"./InsideLinksEditorPanel.js\";\n"],"names":[],"mappings":"AAAA,cAAc,8BAA8B"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/panels/LinkEditorPanel/LinkEditorPanel.tsx"],"sourcesContent":["import { Link } from \"lucide-react\";\nimport React, { useCallback, useMemo, useState } from \"react\";\nimport { Button } from \"../../ui/Button/Button.js\";\nimport { Icon } from \"../../ui/Icon.js\";\nimport { Surface } from \"../../ui/Surface.js\";\nimport { Toggle } from \"../../ui/Toggle/Toggle.js\";\n\nexport type LinkEditorPanelProps = {\n initialUrl?: string;\n initialOpenInNewTab?: boolean;\n onSetLink: (url: string, openInNewTab?: boolean) => void;\n};\n\nexport const useLinkEditorState = ({\n initialUrl,\n initialOpenInNewTab,\n onSetLink,\n}: LinkEditorPanelProps) => {\n const [url, setUrl] = useState(initialUrl || \"\");\n const [openInNewTab, setOpenInNewTab] = useState(\n initialOpenInNewTab || false\n );\n\n const onChange = useCallback((event: React.ChangeEvent<HTMLInputElement>) => {\n setUrl(event.target.value);\n }, []);\n\n const isValidUrl = useMemo(() => /^(\\S+):(\\/\\/)?\\S+$/.test(url), [url]);\n\n const handleSubmit = useCallback(\n (e: React.FormEvent) => {\n e.preventDefault();\n if (isValidUrl) {\n onSetLink(url, openInNewTab);\n }\n },\n [url, isValidUrl, openInNewTab, onSetLink]\n );\n\n return {\n url,\n setUrl,\n openInNewTab,\n setOpenInNewTab,\n onChange,\n handleSubmit,\n isValidUrl,\n };\n};\n\nexport const LinkEditorPanel = ({\n onSetLink,\n initialOpenInNewTab,\n initialUrl,\n}: LinkEditorPanelProps) => {\n const state = useLinkEditorState({\n onSetLink,\n initialOpenInNewTab,\n initialUrl,\n });\n\n return (\n <Surface className=\"p-2\">\n <div className=\"flex items-center gap-2\">\n <label className=\"flex items-center gap-2 p-2 rounded-lg bg-neutral-100 dark:bg-neutral-900 cursor-text\">\n <Icon icon={Link} className=\"flex-none text-black dark:text-white\" />\n <input\n type=\"url\"\n className=\"flex-1 bg-transparent outline-none min-w-[12rem] text-black text-sm dark:text-white\"\n placeholder=\"Enter URL\"\n value={state.url}\n onChange={state.onChange}\n />\n </label>\n <Button\n variant=\"primary\"\n buttonSize=\"small\"\n type=\"button\"\n onClick={(e) => {\n state.handleSubmit(e);\n }}\n disabled={!state.isValidUrl}\n >\n Set Link\n </Button>\n <div className=\"mt-3\">\n <label className=\"flex items-center justify-start gap-2 text-sm font-semibold cursor-pointer select-none text-neutral-500 dark:text-neutral-400\">\n Open in new tab\n <Toggle\n active={state.openInNewTab}\n onChange={state.setOpenInNewTab}\n />\n </label>\n </div>\n </div>\n </Surface>\n );\n};\n"],"names":["Link","React","useCallback","useMemo","useState","Button","Icon","Surface","Toggle","useLinkEditorState","initialUrl","initialOpenInNewTab","onSetLink","url","setUrl","openInNewTab","setOpenInNewTab","onChange","event","target","value","isValidUrl","test","handleSubmit","e","preventDefault","LinkEditorPanel","state","className","div","label","icon","input","type","placeholder","variant","buttonSize","onClick","disabled","active"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";AAAA,SAASA,IAAI,QAAQ,eAAe;AACpC,OAAOC,SAASC,WAAW,EAAEC,OAAO,EAAEC,QAAQ,QAAQ,QAAQ;AAC9D,SAASC,MAAM,QAAQ,4BAA4B;AACnD,SAASC,IAAI,QAAQ,mBAAmB;AACxC,SAASC,OAAO,QAAQ,sBAAsB;AAC9C,SAASC,MAAM,QAAQ,4BAA4B;AAQnD,OAAO,MAAMC,qBAAqB,CAAC,EACjCC,UAAU,EACVC,mBAAmB,EACnBC,SAAS,EACY;IACrB,MAAM,CAACC,KAAKC,OAAO,GAAGV,SAASM,cAAc;IAC7C,MAAM,CAACK,cAAcC,gBAAgB,GAAGZ,SACtCO,uBAAuB;IAGzB,MAAMM,WAAWf,YAAY,CAACgB;QAC5BJ,OAAOI,MAAMC,MAAM,CAACC,KAAK;IAC3B,GAAG,EAAE;IAEL,MAAMC,aAAalB,QAAQ,IAAM,qBAAqBmB,IAAI,CAACT,MAAM;QAACA;KAAI;IAEtE,MAAMU,eAAerB,YACnB,CAACsB;QACCA,EAAEC,cAAc;QAChB,IAAIJ,YAAY;YACdT,UAAUC,KAAKE;QACjB;IACF,GACA;QAACF;QAAKQ;QAAYN;QAAcH;KAAU;IAG5C,OAAO;QACLC;QACAC;QACAC;QACAC;QACAC;QACAM;QACAF;IACF;AACF,EAAE;AAEF,OAAO,MAAMK,kBAAkB,CAAC,EAC9Bd,SAAS,EACTD,mBAAmB,EACnBD,UAAU,EACW;IACrB,MAAMiB,QAAQlB,mBAAmB;QAC/BG;QACAD;QACAD;IACF;IAEA,qBACE,KAACH;QAAQqB,WAAU;kBACjB,cAAA,MAACC;YAAID,WAAU;;8BACb,MAACE;oBAAMF,WAAU;;sCACf,KAACtB;4BAAKyB,MAAM/B;4BAAM4B,WAAU;;sCAC5B,KAACI;4BACCC,MAAK;4BACLL,WAAU;4BACVM,aAAY;4BACZd,OAAOO,MAAMd,GAAG;4BAChBI,UAAUU,MAAMV,QAAQ;;;;8BAG5B,KAACZ;oBACC8B,SAAQ;oBACRC,YAAW;oBACXH,MAAK;oBACLI,SAAS,CAACb;wBACRG,MAAMJ,YAAY,CAACC;oBACrB;oBACAc,UAAU,CAACX,MAAMN,UAAU;8BAC5B;;8BAGD,KAACQ;oBAAID,WAAU;8BACb,cAAA,MAACE;wBAAMF,WAAU;;4BAAgI;0CAE/I,KAACpB;gCACC+B,QAAQZ,MAAMZ,YAAY;gCAC1BE,UAAUU,MAAMX,eAAe;;;;;;;;AAO7C,EAAE"}
1
+ {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/panels/LinkEditorPanel/LinkEditorPanel.tsx"],"sourcesContent":["import { Link } from \"lucide-react\";\nimport React, { useCallback, useMemo, useState } from \"react\";\nimport { Button } from \"../../ui/Button/Button.js\";\nimport { Icon } from \"../../ui/Icon.js\";\nimport { Surface } from \"../../ui/Surface.js\";\nimport { Toggle } from \"../../ui/Toggle/Toggle.js\";\n\nexport type LinkEditorPanelProps = {\n initialUrl?: string;\n initialOpenInNewTab?: boolean;\n onSetLink: (url: string, openInNewTab?: boolean) => void;\n};\n\nexport const useLinkEditorState = ({\n initialUrl,\n initialOpenInNewTab,\n onSetLink,\n}: LinkEditorPanelProps) => {\n const [url, setUrl] = useState(initialUrl || \"\");\n const [openInNewTab, setOpenInNewTab] = useState(\n initialOpenInNewTab || false\n );\n\n const onChange = useCallback((event: React.ChangeEvent<HTMLInputElement>) => {\n setUrl(event.target.value);\n }, []);\n\n const isValidUrl = useMemo(() => /^(\\S+):(\\/\\/)?\\S+$/.test(url), [url]);\n\n const handleSubmit = useCallback(\n (e: React.FormEvent) => {\n e.preventDefault();\n if (isValidUrl) {\n onSetLink(url, openInNewTab);\n }\n },\n [url, isValidUrl, openInNewTab, onSetLink]\n );\n\n return {\n url,\n setUrl,\n openInNewTab,\n setOpenInNewTab,\n onChange,\n handleSubmit,\n isValidUrl,\n };\n};\n\nexport const LinkEditorPanel = ({\n onSetLink,\n initialOpenInNewTab,\n initialUrl,\n}: LinkEditorPanelProps) => {\n const state = useLinkEditorState({\n onSetLink,\n initialOpenInNewTab,\n initialUrl,\n });\n\n return (\n <Surface className=\"p-2\">\n <div className=\"flex items-center gap-2\">\n <label className=\"flex items-center gap-2 p-2 rounded-lg bg-neutral-100 dark:bg-neutral-900 cursor-text\">\n <Icon icon={Link} className=\"flex-none text-black dark:text-white\" />\n <input\n type=\"url\"\n className=\"flex-1 bg-transparent outline-none min-w-[12rem] text-black text-sm dark:text-white\"\n placeholder=\"Enter URL\"\n value={state.url}\n onChange={state.onChange}\n />\n </label>\n <Button\n variant=\"primary\"\n buttonSize=\"small\"\n type=\"button\"\n onClick={(e) => {\n state.handleSubmit(e);\n }}\n disabled={!state.isValidUrl}\n >\n Set Link\n </Button>\n <div className=\"mt-3\">\n <label className=\"flex items-center justify-start gap-2 text-sm font-semibold cursor-pointer select-none text-neutral-500 dark:text-neutral-400\">\n Open in new tab\n <Toggle\n active={state.openInNewTab}\n onChange={state.setOpenInNewTab}\n />\n </label>\n </div>\n </div>\n </Surface>\n );\n};\n"],"names":["Link","React","useCallback","useMemo","useState","Button","Icon","Surface","Toggle","useLinkEditorState","initialUrl","initialOpenInNewTab","onSetLink","url","setUrl","openInNewTab","setOpenInNewTab","onChange","event","target","value","isValidUrl","test","handleSubmit","e","preventDefault","LinkEditorPanel","state","className","div","label","icon","input","type","placeholder","variant","buttonSize","onClick","disabled","active"],"mappings":";AAAA,SAASA,IAAI,QAAQ,eAAe;AACpC,OAAOC,SAASC,WAAW,EAAEC,OAAO,EAAEC,QAAQ,QAAQ,QAAQ;AAC9D,SAASC,MAAM,QAAQ,4BAA4B;AACnD,SAASC,IAAI,QAAQ,mBAAmB;AACxC,SAASC,OAAO,QAAQ,sBAAsB;AAC9C,SAASC,MAAM,QAAQ,4BAA4B;AAQnD,OAAO,MAAMC,qBAAqB,CAAC,EACjCC,UAAU,EACVC,mBAAmB,EACnBC,SAAS,EACY;IACrB,MAAM,CAACC,KAAKC,OAAO,GAAGV,SAASM,cAAc;IAC7C,MAAM,CAACK,cAAcC,gBAAgB,GAAGZ,SACtCO,uBAAuB;IAGzB,MAAMM,WAAWf,YAAY,CAACgB;QAC5BJ,OAAOI,MAAMC,MAAM,CAACC,KAAK;IAC3B,GAAG,EAAE;IAEL,MAAMC,aAAalB,QAAQ,IAAM,qBAAqBmB,IAAI,CAACT,MAAM;QAACA;KAAI;IAEtE,MAAMU,eAAerB,YACnB,CAACsB;QACCA,EAAEC,cAAc;QAChB,IAAIJ,YAAY;YACdT,UAAUC,KAAKE;QACjB;IACF,GACA;QAACF;QAAKQ;QAAYN;QAAcH;KAAU;IAG5C,OAAO;QACLC;QACAC;QACAC;QACAC;QACAC;QACAM;QACAF;IACF;AACF,EAAE;AAEF,OAAO,MAAMK,kBAAkB,CAAC,EAC9Bd,SAAS,EACTD,mBAAmB,EACnBD,UAAU,EACW;IACrB,MAAMiB,QAAQlB,mBAAmB;QAC/BG;QACAD;QACAD;IACF;IAEA,qBACE,KAACH;QAAQqB,WAAU;kBACjB,cAAA,MAACC;YAAID,WAAU;;8BACb,MAACE;oBAAMF,WAAU;;sCACf,KAACtB;4BAAKyB,MAAM/B;4BAAM4B,WAAU;;sCAC5B,KAACI;4BACCC,MAAK;4BACLL,WAAU;4BACVM,aAAY;4BACZd,OAAOO,MAAMd,GAAG;4BAChBI,UAAUU,MAAMV,QAAQ;;;;8BAG5B,KAACZ;oBACC8B,SAAQ;oBACRC,YAAW;oBACXH,MAAK;oBACLI,SAAS,CAACb;wBACRG,MAAMJ,YAAY,CAACC;oBACrB;oBACAc,UAAU,CAACX,MAAMN,UAAU;8BAC5B;;8BAGD,KAACQ;oBAAID,WAAU;8BACb,cAAA,MAACE;wBAAMF,WAAU;;4BAAgI;0CAE/I,KAACpB;gCACC+B,QAAQZ,MAAMZ,YAAY;gCAC1BE,UAAUU,MAAMX,eAAe;;;;;;;;AAO7C,EAAE"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/panels/LinkEditorPanel/index.tsx"],"sourcesContent":["export * from \"./LinkEditorPanel.js\";\n"],"names":[],"rangeMappings":"","mappings":"AAAA,cAAc,uBAAuB"}
1
+ {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/panels/LinkEditorPanel/index.tsx"],"sourcesContent":["export * from \"./LinkEditorPanel.js\";\n"],"names":[],"mappings":"AAAA,cAAc,uBAAuB"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/panels/LinkPreviewPanel/LinkPreviewPanel.tsx"],"sourcesContent":["import { Pen, Trash2 } from \"lucide-react\";\nimport { Icon } from \"../../ui/Icon.js\";\nimport { Surface } from \"../../ui/Surface.js\";\nimport { Toolbar } from \"../../ui/Toolbar.js\";\nimport Tooltip from \"../../ui/Tooltip/index.js\";\nexport type LinkPreviewPanelProps = {\n url: string;\n onEdit: () => void;\n onClear: () => void;\n};\n\nexport const LinkPreviewPanel = ({\n onClear,\n onEdit,\n url,\n}: LinkPreviewPanelProps) => {\n return (\n <Surface className=\"flex items-center gap-2 p-2\">\n <a\n href={url}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n className=\"text-sm underline break-all\"\n >\n {url}\n </a>\n <Toolbar.Divider />\n <Tooltip title=\"Edit link\">\n <Toolbar.Button type=\"button\" onClick={onEdit}>\n <Icon icon={Pen} />\n </Toolbar.Button>\n </Tooltip>\n <Tooltip title=\"Remove link\">\n <Toolbar.Button type=\"button\" onClick={onClear}>\n <Icon icon={Trash2} />\n </Toolbar.Button>\n </Tooltip>\n </Surface>\n );\n};\n"],"names":["Pen","Trash2","Icon","Surface","Toolbar","Tooltip","LinkPreviewPanel","onClear","onEdit","url","className","a","href","target","rel","Divider","title","Button","type","onClick","icon"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";AAAA,SAASA,GAAG,EAAEC,MAAM,QAAQ,eAAe;AAC3C,SAASC,IAAI,QAAQ,mBAAmB;AACxC,SAASC,OAAO,QAAQ,sBAAsB;AAC9C,SAASC,OAAO,QAAQ,sBAAsB;AAC9C,OAAOC,aAAa,4BAA4B;AAOhD,OAAO,MAAMC,mBAAmB,CAAC,EAC/BC,OAAO,EACPC,MAAM,EACNC,GAAG,EACmB;IACtB,qBACE,MAACN;QAAQO,WAAU;;0BACjB,KAACC;gBACCC,MAAMH;gBACNI,QAAO;gBACPC,KAAI;gBACJJ,WAAU;0BAETD;;0BAEH,KAACL,QAAQW,OAAO;0BAChB,KAACV;gBAAQW,OAAM;0BACb,cAAA,KAACZ,QAAQa,MAAM;oBAACC,MAAK;oBAASC,SAASX;8BACrC,cAAA,KAACN;wBAAKkB,MAAMpB;;;;0BAGhB,KAACK;gBAAQW,OAAM;0BACb,cAAA,KAACZ,QAAQa,MAAM;oBAACC,MAAK;oBAASC,SAASZ;8BACrC,cAAA,KAACL;wBAAKkB,MAAMnB;;;;;;AAKtB,EAAE"}
1
+ {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/panels/LinkPreviewPanel/LinkPreviewPanel.tsx"],"sourcesContent":["import { Pen, Trash2 } from \"lucide-react\";\nimport { Icon } from \"../../ui/Icon.js\";\nimport { Surface } from \"../../ui/Surface.js\";\nimport { Toolbar } from \"../../ui/Toolbar.js\";\nimport Tooltip from \"../../ui/Tooltip/index.js\";\nexport type LinkPreviewPanelProps = {\n url: string;\n onEdit: () => void;\n onClear: () => void;\n};\n\nexport const LinkPreviewPanel = ({\n onClear,\n onEdit,\n url,\n}: LinkPreviewPanelProps) => {\n return (\n <Surface className=\"flex items-center gap-2 p-2\">\n <a\n href={url}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n className=\"text-sm underline break-all\"\n >\n {url}\n </a>\n <Toolbar.Divider />\n <Tooltip title=\"Edit link\">\n <Toolbar.Button type=\"button\" onClick={onEdit}>\n <Icon icon={Pen} />\n </Toolbar.Button>\n </Tooltip>\n <Tooltip title=\"Remove link\">\n <Toolbar.Button type=\"button\" onClick={onClear}>\n <Icon icon={Trash2} />\n </Toolbar.Button>\n </Tooltip>\n </Surface>\n );\n};\n"],"names":["Pen","Trash2","Icon","Surface","Toolbar","Tooltip","LinkPreviewPanel","onClear","onEdit","url","className","a","href","target","rel","Divider","title","Button","type","onClick","icon"],"mappings":";AAAA,SAASA,GAAG,EAAEC,MAAM,QAAQ,eAAe;AAC3C,SAASC,IAAI,QAAQ,mBAAmB;AACxC,SAASC,OAAO,QAAQ,sBAAsB;AAC9C,SAASC,OAAO,QAAQ,sBAAsB;AAC9C,OAAOC,aAAa,4BAA4B;AAOhD,OAAO,MAAMC,mBAAmB,CAAC,EAC/BC,OAAO,EACPC,MAAM,EACNC,GAAG,EACmB;IACtB,qBACE,MAACN;QAAQO,WAAU;;0BACjB,KAACC;gBACCC,MAAMH;gBACNI,QAAO;gBACPC,KAAI;gBACJJ,WAAU;0BAETD;;0BAEH,KAACL,QAAQW,OAAO;0BAChB,KAACV;gBAAQW,OAAM;0BACb,cAAA,KAACZ,QAAQa,MAAM;oBAACC,MAAK;oBAASC,SAASX;8BACrC,cAAA,KAACN;wBAAKkB,MAAMpB;;;;0BAGhB,KAACK;gBAAQW,OAAM;0BACb,cAAA,KAACZ,QAAQa,MAAM;oBAACC,MAAK;oBAASC,SAASZ;8BACrC,cAAA,KAACL;wBAAKkB,MAAMnB;;;;;;AAKtB,EAAE"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/panels/LinkPreviewPanel/index.tsx"],"sourcesContent":["export * from \"./LinkPreviewPanel.js\";\n"],"names":[],"rangeMappings":"","mappings":"AAAA,cAAc,wBAAwB"}
1
+ {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/panels/LinkPreviewPanel/index.tsx"],"sourcesContent":["export * from \"./LinkPreviewPanel.js\";\n"],"names":[],"mappings":"AAAA,cAAc,wBAAwB"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/panels/SocialMediaEditorPanel/SocialMediaEditorPanel.tsx"],"sourcesContent":["import React, { useCallback, useState } from \"react\";\nimport { Button } from \"../../ui/Button/Button.js\";\nimport { Surface } from \"../../ui/Surface.js\";\n\nexport type SocialMediaEditorPanelProps = {\n initialSrc?: string;\n initialOpenInNewTab?: boolean;\n onSetLink: (src: string) => void;\n placeholderText: string;\n buttonText: string;\n descriptionText: string;\n};\n\nexport const useLinkEditorState = ({\n initialSrc,\n onSetLink,\n}: SocialMediaEditorPanelProps) => {\n const [url, setUrl] = useState(initialSrc || \"\");\n\n const onChange = useCallback((event: React.ChangeEvent<HTMLInputElement>) => {\n setUrl(event.target.value);\n }, []);\n\n // const isValidUrl = useMemo(() => /^(\\S+):(\\/\\/)?\\S+$/.test(url), [url]);\n\n const handleSubmit = useCallback(\n (e: React.FormEvent) => {\n e.preventDefault();\n // if (isValidUrl) {\n onSetLink(url);\n // }\n },\n [url, onSetLink]\n );\n\n return {\n url,\n setUrl,\n onChange,\n handleSubmit,\n };\n};\n\nexport const SocialMediaEditorPanel = ({\n onSetLink,\n initialOpenInNewTab,\n initialSrc,\n placeholderText,\n buttonText,\n descriptionText,\n}: SocialMediaEditorPanelProps) => {\n const state = useLinkEditorState({\n onSetLink,\n initialOpenInNewTab,\n initialSrc,\n placeholderText,\n buttonText,\n descriptionText,\n });\n\n return (\n <Surface className=\"p-2\">\n <div className=\"flex flex-col items-center gap-2 p-1\">\n <label className=\"flex items-center gap-2 p-2 rounded-lg bg-neutral-100 dark:bg-neutral-900 cursor-text w-full\">\n {/* <Icon icon={Link} className=\"flex-none text-black dark:text-white\" /> */}\n <input\n className=\"flex-1 bg-transparent outline-none min-w-[276px] text-black text-sm dark:text-white\"\n placeholder={placeholderText}\n value={state.url}\n onChange={state.onChange}\n />\n </label>\n <Button\n variant=\"primary\"\n buttonSize=\"medium\"\n className=\"w-full m-2\"\n type=\"button\"\n onClick={(e) => {\n state.handleSubmit(e);\n }}\n // disabled={!state.isValidUrl}\n >\n {buttonText}\n </Button>\n <span className=\"mt-1 mb-0 text-sm\">{descriptionText}</span>\n </div>\n </Surface>\n );\n};\n"],"names":["React","useCallback","useState","Button","Surface","useLinkEditorState","initialSrc","onSetLink","url","setUrl","onChange","event","target","value","handleSubmit","e","preventDefault","SocialMediaEditorPanel","initialOpenInNewTab","placeholderText","buttonText","descriptionText","state","className","div","label","input","placeholder","variant","buttonSize","type","onClick","span"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";AAAA,OAAOA,SAASC,WAAW,EAAEC,QAAQ,QAAQ,QAAQ;AACrD,SAASC,MAAM,QAAQ,4BAA4B;AACnD,SAASC,OAAO,QAAQ,sBAAsB;AAW9C,OAAO,MAAMC,qBAAqB,CAAC,EACjCC,UAAU,EACVC,SAAS,EACmB;IAC5B,MAAM,CAACC,KAAKC,OAAO,GAAGP,SAASI,cAAc;IAE7C,MAAMI,WAAWT,YAAY,CAACU;QAC5BF,OAAOE,MAAMC,MAAM,CAACC,KAAK;IAC3B,GAAG,EAAE;IAEL,2EAA2E;IAE3E,MAAMC,eAAeb,YACnB,CAACc;QACCA,EAAEC,cAAc;QAChB,oBAAoB;QACpBT,UAAUC;IACV,IAAI;IACN,GACA;QAACA;QAAKD;KAAU;IAGlB,OAAO;QACLC;QACAC;QACAC;QACAI;IACF;AACF,EAAE;AAEF,OAAO,MAAMG,yBAAyB,CAAC,EACrCV,SAAS,EACTW,mBAAmB,EACnBZ,UAAU,EACVa,eAAe,EACfC,UAAU,EACVC,eAAe,EACa;IAC5B,MAAMC,QAAQjB,mBAAmB;QAC/BE;QACAW;QACAZ;QACAa;QACAC;QACAC;IACF;IAEA,qBACE,KAACjB;QAAQmB,WAAU;kBACjB,cAAA,MAACC;YAAID,WAAU;;8BACb,KAACE;oBAAMF,WAAU;8BAEf,cAAA,KAACG;wBACCH,WAAU;wBACVI,aAAaR;wBACbN,OAAOS,MAAMd,GAAG;wBAChBE,UAAUY,MAAMZ,QAAQ;;;8BAG5B,KAACP;oBACCyB,SAAQ;oBACRC,YAAW;oBACXN,WAAU;oBACVO,MAAK;oBACLC,SAAS,CAAChB;wBACRO,MAAMR,YAAY,CAACC;oBACrB;8BAGCK;;8BAEH,KAACY;oBAAKT,WAAU;8BAAqBF;;;;;AAI7C,EAAE"}
1
+ {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/panels/SocialMediaEditorPanel/SocialMediaEditorPanel.tsx"],"sourcesContent":["import React, { useCallback, useState } from \"react\";\nimport { Button } from \"../../ui/Button/Button.js\";\nimport { Surface } from \"../../ui/Surface.js\";\n\nexport type SocialMediaEditorPanelProps = {\n initialSrc?: string;\n initialOpenInNewTab?: boolean;\n onSetLink: (src: string) => void;\n placeholderText: string;\n buttonText: string;\n descriptionText: string;\n};\n\nexport const useLinkEditorState = ({\n initialSrc,\n onSetLink,\n}: SocialMediaEditorPanelProps) => {\n const [url, setUrl] = useState(initialSrc || \"\");\n\n const onChange = useCallback((event: React.ChangeEvent<HTMLInputElement>) => {\n setUrl(event.target.value);\n }, []);\n\n // const isValidUrl = useMemo(() => /^(\\S+):(\\/\\/)?\\S+$/.test(url), [url]);\n\n const handleSubmit = useCallback(\n (e: React.FormEvent) => {\n e.preventDefault();\n // if (isValidUrl) {\n onSetLink(url);\n // }\n },\n [url, onSetLink]\n );\n\n return {\n url,\n setUrl,\n onChange,\n handleSubmit,\n };\n};\n\nexport const SocialMediaEditorPanel = ({\n onSetLink,\n initialOpenInNewTab,\n initialSrc,\n placeholderText,\n buttonText,\n descriptionText,\n}: SocialMediaEditorPanelProps) => {\n const state = useLinkEditorState({\n onSetLink,\n initialOpenInNewTab,\n initialSrc,\n placeholderText,\n buttonText,\n descriptionText,\n });\n\n return (\n <Surface className=\"p-2\">\n <div className=\"flex flex-col items-center gap-2 p-1\">\n <label className=\"flex items-center gap-2 p-2 rounded-lg bg-neutral-100 dark:bg-neutral-900 cursor-text w-full\">\n {/* <Icon icon={Link} className=\"flex-none text-black dark:text-white\" /> */}\n <input\n className=\"flex-1 bg-transparent outline-none min-w-[276px] text-black text-sm dark:text-white\"\n placeholder={placeholderText}\n value={state.url}\n onChange={state.onChange}\n />\n </label>\n <Button\n variant=\"primary\"\n buttonSize=\"medium\"\n className=\"w-full m-2\"\n type=\"button\"\n onClick={(e) => {\n state.handleSubmit(e);\n }}\n // disabled={!state.isValidUrl}\n >\n {buttonText}\n </Button>\n <span className=\"mt-1 mb-0 text-sm\">{descriptionText}</span>\n </div>\n </Surface>\n );\n};\n"],"names":["React","useCallback","useState","Button","Surface","useLinkEditorState","initialSrc","onSetLink","url","setUrl","onChange","event","target","value","handleSubmit","e","preventDefault","SocialMediaEditorPanel","initialOpenInNewTab","placeholderText","buttonText","descriptionText","state","className","div","label","input","placeholder","variant","buttonSize","type","onClick","span"],"mappings":";AAAA,OAAOA,SAASC,WAAW,EAAEC,QAAQ,QAAQ,QAAQ;AACrD,SAASC,MAAM,QAAQ,4BAA4B;AACnD,SAASC,OAAO,QAAQ,sBAAsB;AAW9C,OAAO,MAAMC,qBAAqB,CAAC,EACjCC,UAAU,EACVC,SAAS,EACmB;IAC5B,MAAM,CAACC,KAAKC,OAAO,GAAGP,SAASI,cAAc;IAE7C,MAAMI,WAAWT,YAAY,CAACU;QAC5BF,OAAOE,MAAMC,MAAM,CAACC,KAAK;IAC3B,GAAG,EAAE;IAEL,2EAA2E;IAE3E,MAAMC,eAAeb,YACnB,CAACc;QACCA,EAAEC,cAAc;QAChB,oBAAoB;QACpBT,UAAUC;IACV,IAAI;IACN,GACA;QAACA;QAAKD;KAAU;IAGlB,OAAO;QACLC;QACAC;QACAC;QACAI;IACF;AACF,EAAE;AAEF,OAAO,MAAMG,yBAAyB,CAAC,EACrCV,SAAS,EACTW,mBAAmB,EACnBZ,UAAU,EACVa,eAAe,EACfC,UAAU,EACVC,eAAe,EACa;IAC5B,MAAMC,QAAQjB,mBAAmB;QAC/BE;QACAW;QACAZ;QACAa;QACAC;QACAC;IACF;IAEA,qBACE,KAACjB;QAAQmB,WAAU;kBACjB,cAAA,MAACC;YAAID,WAAU;;8BACb,KAACE;oBAAMF,WAAU;8BAEf,cAAA,KAACG;wBACCH,WAAU;wBACVI,aAAaR;wBACbN,OAAOS,MAAMd,GAAG;wBAChBE,UAAUY,MAAMZ,QAAQ;;;8BAG5B,KAACP;oBACCyB,SAAQ;oBACRC,YAAW;oBACXN,WAAU;oBACVO,MAAK;oBACLC,SAAS,CAAChB;wBACRO,MAAMR,YAAY,CAACC;oBACrB;8BAGCK;;8BAEH,KAACY;oBAAKT,WAAU;8BAAqBF;;;;;AAI7C,EAAE"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/panels/SocialMediaEditorPanel/index.tsx"],"sourcesContent":["export * from \"./SocialMediaEditorPanel.js\";\n"],"names":[],"rangeMappings":"","mappings":"AAAA,cAAc,8BAA8B"}
1
+ {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/panels/SocialMediaEditorPanel/index.tsx"],"sourcesContent":["export * from \"./SocialMediaEditorPanel.js\";\n"],"names":[],"mappings":"AAAA,cAAc,8BAA8B"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/fields/TiptapEditor/features/panels/index.tsx"],"sourcesContent":["export * from \"./Colorpicker/index.js\";\nexport * from \"./LinkEditorPanel/index.js\";\nexport * from \"./LinkPreviewPanel/index.js\";\n"],"names":[],"rangeMappings":";;","mappings":"AAAA,cAAc,yBAAyB;AACvC,cAAc,6BAA6B;AAC3C,cAAc,8BAA8B"}
1
+ {"version":3,"sources":["../../../../../../src/fields/TiptapEditor/features/panels/index.tsx"],"sourcesContent":["export * from \"./Colorpicker/index.js\";\nexport * from \"./LinkEditorPanel/index.js\";\nexport * from \"./LinkPreviewPanel/index.js\";\n"],"names":[],"mappings":"AAAA,cAAc,yBAAyB;AACvC,cAAc,6BAA6B;AAC3C,cAAc,8BAA8B"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/ui/Button/Button.tsx"],"sourcesContent":["import React from \"react\";\nimport { cn } from \"../../../lib/utils/index.js\";\n\nexport type ButtonVariant =\n | \"primary\"\n | \"secondary\"\n | \"tertiary\"\n | \"quaternary\"\n | \"ghost\";\nexport type ButtonSize = \"medium\" | \"small\" | \"icon\" | \"iconSmall\";\n\nexport type ButtonProps = {\n variant?: ButtonVariant;\n active?: boolean;\n activeClassname?: string;\n buttonSize?: ButtonSize;\n} & React.ButtonHTMLAttributes<HTMLButtonElement>;\n\nexport const Button = React.forwardRef<HTMLButtonElement, ButtonProps>(\n (\n {\n active,\n buttonSize = \"medium\",\n children,\n disabled,\n variant = \"primary\",\n className,\n activeClassname,\n ...rest\n },\n ref\n ) => {\n const buttonClassName = cn(\n \"flex group items-center justify-center border border-transparent gap-2 text-base font-semibold rounded-md disabled:opacity-50 whitespace-nowrap\",\n\n variant === \"primary\" &&\n cn(\n \"text-white bg-black border-black dark:text-black dark:bg-white dark:border-white\",\n !disabled &&\n !active &&\n \"hover:bg-neutral-800 active:bg-neutral-900 dark:hover:bg-neutral-200 dark:active:bg-neutral-300\",\n active && cn(\"bg-neutral-900 dark:bg-neutral-300\", activeClassname)\n ),\n\n variant === \"secondary\" &&\n cn(\n \"text-neutral-900 dark:text-white\",\n !disabled &&\n !active &&\n \"hover:bg-neutral-100 active:bg-neutral-200 dark:hover:bg-neutral-900 dark:active:bg-neutral-800\",\n active && \"bg-neutral-200 dark:bg-neutral-800\"\n ),\n\n variant === \"tertiary\" &&\n cn(\n \"bg-neutral-50 text-neutral-900 dark:bg-neutral-900 dark:text-white dark:border-neutral-900\",\n !disabled &&\n !active &&\n \"hover:bg-neutral-100 active:bg-neutral-200 dark:hover:bg-neutral-800 dark:active:bg-neutral-700\",\n active && cn(\"bg-neutral-200 dark:bg-neutral-800\", activeClassname)\n ),\n\n variant === \"ghost\" &&\n cn(\n \"bg-transparent border-transparent text-neutral-500 dark:text-neutral-400\",\n !disabled &&\n !active &&\n \"hover:bg-black/5 hover:text-neutral-700 active:bg-black/10 active:text-neutral-800 dark:hover:bg-white/10 dark:hover:text-neutral-300 dark:active:text-neutral-200\",\n active &&\n cn(\n \"bg-black/10 text-neutral-800 dark:bg-white/20 dark:text-neutral-200\",\n activeClassname\n )\n ),\n\n buttonSize === \"medium\" && \"py-2 px-3\",\n buttonSize === \"small\" && \"py-1 px-2\",\n buttonSize === \"icon\" && \"w-8 h-8\",\n buttonSize === \"iconSmall\" && \"w-6 h-6\",\n\n className\n );\n\n return (\n <button\n type=\"button\"\n ref={ref}\n disabled={disabled}\n className={buttonClassName}\n {...rest}\n >\n {children}\n </button>\n );\n }\n);\n\nButton.displayName = \"Button\";\n"],"names":["React","cn","Button","forwardRef","active","buttonSize","children","disabled","variant","className","activeClassname","rest","ref","buttonClassName","button","type","displayName"],"rangeMappings":";;;;;;;;;;;;;;","mappings":";AAAA,OAAOA,WAAW,QAAQ;AAC1B,SAASC,EAAE,QAAQ,8BAA8B;AAiBjD,OAAO,MAAMC,uBAASF,MAAMG,UAAU,CACpC,CACE,EACEC,MAAM,EACNC,aAAa,QAAQ,EACrBC,QAAQ,EACRC,QAAQ,EACRC,UAAU,SAAS,EACnBC,SAAS,EACTC,eAAe,EACf,GAAGC,MACJ,EACDC;IAEA,MAAMC,kBAAkBZ,GACtB,mJAEAO,YAAY,aACVP,GACE,oFACA,CAACM,YACC,CAACH,UACD,mGACFA,UAAUH,GAAG,sCAAsCS,mBAGvDF,YAAY,eACVP,GACE,oCACA,CAACM,YACC,CAACH,UACD,mGACFA,UAAU,uCAGdI,YAAY,cACVP,GACE,8FACA,CAACM,YACC,CAACH,UACD,mGACFA,UAAUH,GAAG,sCAAsCS,mBAGvDF,YAAY,WACVP,GACE,4EACA,CAACM,YACC,CAACH,UACD,sKACFA,UACEH,GACE,uEACAS,mBAIRL,eAAe,YAAY,aAC3BA,eAAe,WAAW,aAC1BA,eAAe,UAAU,WACzBA,eAAe,eAAe,WAE9BI;IAGF,qBACE,KAACK;QACCC,MAAK;QACLH,KAAKA;QACLL,UAAUA;QACVE,WAAWI;QACV,GAAGF,IAAI;kBAEPL;;AAGP,GACA;AAEFJ,OAAOc,WAAW,GAAG"}
1
+ {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/ui/Button/Button.tsx"],"sourcesContent":["import React from \"react\";\nimport { cn } from \"../../../lib/utils/index.js\";\n\nexport type ButtonVariant =\n | \"primary\"\n | \"secondary\"\n | \"tertiary\"\n | \"quaternary\"\n | \"ghost\";\nexport type ButtonSize = \"medium\" | \"small\" | \"icon\" | \"iconSmall\";\n\nexport type ButtonProps = {\n variant?: ButtonVariant;\n active?: boolean;\n activeClassname?: string;\n buttonSize?: ButtonSize;\n} & React.ButtonHTMLAttributes<HTMLButtonElement>;\n\nexport const Button = React.forwardRef<HTMLButtonElement, ButtonProps>(\n (\n {\n active,\n buttonSize = \"medium\",\n children,\n disabled,\n variant = \"primary\",\n className,\n activeClassname,\n ...rest\n },\n ref\n ) => {\n const buttonClassName = cn(\n \"flex group items-center justify-center border border-transparent gap-2 text-base font-semibold rounded-md disabled:opacity-50 whitespace-nowrap\",\n\n variant === \"primary\" &&\n cn(\n \"text-white bg-black border-black dark:text-black dark:bg-white dark:border-white\",\n !disabled &&\n !active &&\n \"hover:bg-neutral-800 active:bg-neutral-900 dark:hover:bg-neutral-200 dark:active:bg-neutral-300\",\n active && cn(\"bg-neutral-900 dark:bg-neutral-300\", activeClassname)\n ),\n\n variant === \"secondary\" &&\n cn(\n \"text-neutral-900 dark:text-white\",\n !disabled &&\n !active &&\n \"hover:bg-neutral-100 active:bg-neutral-200 dark:hover:bg-neutral-900 dark:active:bg-neutral-800\",\n active && \"bg-neutral-200 dark:bg-neutral-800\"\n ),\n\n variant === \"tertiary\" &&\n cn(\n \"bg-neutral-50 text-neutral-900 dark:bg-neutral-900 dark:text-white dark:border-neutral-900\",\n !disabled &&\n !active &&\n \"hover:bg-neutral-100 active:bg-neutral-200 dark:hover:bg-neutral-800 dark:active:bg-neutral-700\",\n active && cn(\"bg-neutral-200 dark:bg-neutral-800\", activeClassname)\n ),\n\n variant === \"ghost\" &&\n cn(\n \"bg-transparent border-transparent text-neutral-500 dark:text-neutral-400\",\n !disabled &&\n !active &&\n \"hover:bg-black/5 hover:text-neutral-700 active:bg-black/10 active:text-neutral-800 dark:hover:bg-white/10 dark:hover:text-neutral-300 dark:active:text-neutral-200\",\n active &&\n cn(\n \"bg-black/10 text-neutral-800 dark:bg-white/20 dark:text-neutral-200\",\n activeClassname\n )\n ),\n\n buttonSize === \"medium\" && \"py-2 px-3\",\n buttonSize === \"small\" && \"py-1 px-2\",\n buttonSize === \"icon\" && \"w-8 h-8\",\n buttonSize === \"iconSmall\" && \"w-6 h-6\",\n\n className\n );\n\n return (\n <button\n type=\"button\"\n ref={ref}\n disabled={disabled}\n className={buttonClassName}\n {...rest}\n >\n {children}\n </button>\n );\n }\n);\n\nButton.displayName = \"Button\";\n"],"names":["React","cn","Button","forwardRef","active","buttonSize","children","disabled","variant","className","activeClassname","rest","ref","buttonClassName","button","type","displayName"],"mappings":";AAAA,OAAOA,WAAW,QAAQ;AAC1B,SAASC,EAAE,QAAQ,8BAA8B;AAiBjD,OAAO,MAAMC,uBAASF,MAAMG,UAAU,CACpC,CACE,EACEC,MAAM,EACNC,aAAa,QAAQ,EACrBC,QAAQ,EACRC,QAAQ,EACRC,UAAU,SAAS,EACnBC,SAAS,EACTC,eAAe,EACf,GAAGC,MACJ,EACDC;IAEA,MAAMC,kBAAkBZ,GACtB,mJAEAO,YAAY,aACVP,GACE,oFACA,CAACM,YACC,CAACH,UACD,mGACFA,UAAUH,GAAG,sCAAsCS,mBAGvDF,YAAY,eACVP,GACE,oCACA,CAACM,YACC,CAACH,UACD,mGACFA,UAAU,uCAGdI,YAAY,cACVP,GACE,8FACA,CAACM,YACC,CAACH,UACD,mGACFA,UAAUH,GAAG,sCAAsCS,mBAGvDF,YAAY,WACVP,GACE,4EACA,CAACM,YACC,CAACH,UACD,sKACFA,UACEH,GACE,uEACAS,mBAIRL,eAAe,YAAY,aAC3BA,eAAe,WAAW,aAC1BA,eAAe,UAAU,WACzBA,eAAe,eAAe,WAE9BI;IAGF,qBACE,KAACK;QACCC,MAAK;QACLH,KAAKA;QACLL,UAAUA;QACVE,WAAWI;QACV,GAAGF,IAAI;kBAEPL;;AAGP,GACA;AAEFJ,OAAOc,WAAW,GAAG"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/ui/Button/index.tsx"],"sourcesContent":["export * from \"./Button.js\";\n"],"names":[],"rangeMappings":"","mappings":"AAAA,cAAc,cAAc"}
1
+ {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/ui/Button/index.tsx"],"sourcesContent":["export * from \"./Button.js\";\n"],"names":[],"mappings":"AAAA,cAAc,cAAc"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/ui/Dropdown/Dropdown.tsx"],"sourcesContent":["import React from \"react\";\nimport { cn } from \"../../../lib/utils/index.js\";\n\nexport const DropdownCategoryTitle = ({\n children,\n}: {\n children: React.ReactNode;\n}) => {\n return (\n <div className=\"text-[.65rem] font-semibold mb-1 uppercase text-neutral-500 dark:text-neutral-400 px-1.5\">\n {children}\n </div>\n );\n};\n\nexport const DropdownButton = ({\n children,\n isActive,\n onClick,\n disabled,\n className,\n}: {\n children: React.ReactNode;\n isActive?: boolean;\n onClick?: () => void;\n disabled?: boolean;\n className?: string;\n}) => {\n const buttonClass = cn(\n \"flex items-center gap-2 p-1.5 text-sm font-medium text-neutral-500 dark:text-neutral-400 text-left bg-transparent w-full rounded outline-none\",\n !isActive && !disabled,\n \"hover:bg-neutral-100 hover:text-neutral-800 dark:hover:bg-neutral-900 dark:hover:text-neutral-200\",\n isActive &&\n !disabled &&\n \"bg-neutral-100 text-neutral-800 dark:bg-neutral-900 dark:text-neutral-200\",\n disabled && \"text-neutral-400 cursor-not-allowed dark:text-neutral-600\",\n className\n );\n\n return (\n <button\n type=\"button\"\n className={buttonClass}\n disabled={disabled}\n onClick={onClick}\n >\n {children}\n </button>\n );\n};\n"],"names":["React","cn","DropdownCategoryTitle","children","div","className","DropdownButton","isActive","onClick","disabled","buttonClass","button","type"],"rangeMappings":";;;;;;;;;;;;;;;;;;","mappings":";AAAA,OAAOA,WAAW,QAAQ;AAC1B,SAASC,EAAE,QAAQ,8BAA8B;AAEjD,OAAO,MAAMC,wBAAwB,CAAC,EACpCC,QAAQ,EAGT;IACC,qBACE,KAACC;QAAIC,WAAU;kBACZF;;AAGP,EAAE;AAEF,OAAO,MAAMG,iBAAiB,CAAC,EAC7BH,QAAQ,EACRI,QAAQ,EACRC,OAAO,EACPC,QAAQ,EACRJ,SAAS,EAOV;IACC,MAAMK,cAAcT,GAClB,iJACA,CAACM,YAAY,CAACE,UACd,qGACAF,YACE,CAACE,YACD,6EACFA,YAAY,6DACZJ;IAGF,qBACE,KAACM;QACCC,MAAK;QACLP,WAAWK;QACXD,UAAUA;QACVD,SAASA;kBAERL;;AAGP,EAAE"}
1
+ {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/ui/Dropdown/Dropdown.tsx"],"sourcesContent":["import React from \"react\";\nimport { cn } from \"../../../lib/utils/index.js\";\n\nexport const DropdownCategoryTitle = ({\n children,\n}: {\n children: React.ReactNode;\n}) => {\n return (\n <div className=\"text-[.65rem] font-semibold mb-1 uppercase text-neutral-500 dark:text-neutral-400 px-1.5\">\n {children}\n </div>\n );\n};\n\nexport const DropdownButton = ({\n children,\n isActive,\n onClick,\n disabled,\n className,\n}: {\n children: React.ReactNode;\n isActive?: boolean;\n onClick?: () => void;\n disabled?: boolean;\n className?: string;\n}) => {\n const buttonClass = cn(\n \"flex items-center gap-2 p-1.5 text-sm font-medium text-neutral-500 dark:text-neutral-400 text-left bg-transparent w-full rounded outline-none\",\n !isActive && !disabled,\n \"hover:bg-neutral-100 hover:text-neutral-800 dark:hover:bg-neutral-900 dark:hover:text-neutral-200\",\n isActive &&\n !disabled &&\n \"bg-neutral-100 text-neutral-800 dark:bg-neutral-900 dark:text-neutral-200\",\n disabled && \"text-neutral-400 cursor-not-allowed dark:text-neutral-600\",\n className\n );\n\n return (\n <button\n type=\"button\"\n className={buttonClass}\n disabled={disabled}\n onClick={onClick}\n >\n {children}\n </button>\n );\n};\n"],"names":["React","cn","DropdownCategoryTitle","children","div","className","DropdownButton","isActive","onClick","disabled","buttonClass","button","type"],"mappings":";AAAA,OAAOA,WAAW,QAAQ;AAC1B,SAASC,EAAE,QAAQ,8BAA8B;AAEjD,OAAO,MAAMC,wBAAwB,CAAC,EACpCC,QAAQ,EAGT;IACC,qBACE,KAACC;QAAIC,WAAU;kBACZF;;AAGP,EAAE;AAEF,OAAO,MAAMG,iBAAiB,CAAC,EAC7BH,QAAQ,EACRI,QAAQ,EACRC,OAAO,EACPC,QAAQ,EACRJ,SAAS,EAOV;IACC,MAAMK,cAAcT,GAClB,iJACA,CAACM,YAAY,CAACE,UACd,qGACAF,YACE,CAACE,YACD,6EACFA,YAAY,6DACZJ;IAGF,qBACE,KAACM;QACCC,MAAK;QACLP,WAAWK;QACXD,UAAUA;QACVD,SAASA;kBAERL;;AAGP,EAAE"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/ui/Dropdown/index.tsx"],"sourcesContent":["export * from \"./Dropdown.js\";\n"],"names":[],"rangeMappings":"","mappings":"AAAA,cAAc,gBAAgB"}
1
+ {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/ui/Dropdown/index.tsx"],"sourcesContent":["export * from \"./Dropdown.js\";\n"],"names":[],"mappings":"AAAA,cAAc,gBAAgB"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/fields/TiptapEditor/features/ui/Icon.tsx"],"sourcesContent":["import { LucideIcon } from \"lucide-react\";\nimport { memo } from \"react\";\nimport { cn } from \"../../lib/utils/index.js\";\n\nexport type IconProps = {\n icon: LucideIcon;\n // name: keyof typeof icons\n className?: string;\n strokeWidth?: number;\n};\n\nexport const Icon = memo(({ icon, className, strokeWidth }: IconProps) => {\n const IconComponent = icon;\n\n if (!IconComponent) {\n return null;\n }\n\n return (\n <IconComponent\n className={cn(\"w-4 h-4\", className)}\n strokeWidth={strokeWidth || 2.5}\n />\n );\n});\n\nIcon.displayName = \"Icon\";\n"],"names":["memo","cn","Icon","icon","className","strokeWidth","IconComponent","displayName"],"rangeMappings":";;;;;;;;;;;;;","mappings":";AACA,SAASA,IAAI,QAAQ,QAAQ;AAC7B,SAASC,EAAE,QAAQ,2BAA2B;AAS9C,OAAO,MAAMC,qBAAOF,KAAK,CAAC,EAAEG,IAAI,EAAEC,SAAS,EAAEC,WAAW,EAAa;IACnE,MAAMC,gBAAgBH;IAEtB,IAAI,CAACG,eAAe;QAClB,OAAO;IACT;IAEA,qBACE,KAACA;QACCF,WAAWH,GAAG,WAAWG;QACzBC,aAAaA,eAAe;;AAGlC,GAAG;AAEHH,KAAKK,WAAW,GAAG"}
1
+ {"version":3,"sources":["../../../../../../src/fields/TiptapEditor/features/ui/Icon.tsx"],"sourcesContent":["import { LucideIcon } from \"lucide-react\";\nimport { memo } from \"react\";\nimport { cn } from \"../../lib/utils/index.js\";\n\nexport type IconProps = {\n icon: LucideIcon;\n // name: keyof typeof icons\n className?: string;\n strokeWidth?: number;\n};\n\nexport const Icon = memo(({ icon, className, strokeWidth }: IconProps) => {\n const IconComponent = icon;\n\n if (!IconComponent) {\n return null;\n }\n\n return (\n <IconComponent\n className={cn(\"w-4 h-4\", className)}\n strokeWidth={strokeWidth || 2.5}\n />\n );\n});\n\nIcon.displayName = \"Icon\";\n"],"names":["memo","cn","Icon","icon","className","strokeWidth","IconComponent","displayName"],"mappings":";AACA,SAASA,IAAI,QAAQ,QAAQ;AAC7B,SAASC,EAAE,QAAQ,2BAA2B;AAS9C,OAAO,MAAMC,qBAAOF,KAAK,CAAC,EAAEG,IAAI,EAAEC,SAAS,EAAEC,WAAW,EAAa;IACnE,MAAMC,gBAAgBH;IAEtB,IAAI,CAACG,eAAe;QAClB,OAAO;IACT;IAEA,qBACE,KAACA;QACCF,WAAWH,GAAG,WAAWG;QACzBC,aAAaA,eAAe;;AAGlC,GAAG;AAEHH,KAAKK,WAAW,GAAG"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/ui/Loader/Loader.tsx"],"sourcesContent":["import React from \"react\";\nimport { createPortal } from \"react-dom\";\n\nimport { LoaderProps, LoadingWrapperProps } from \"./types.js\";\n\nconst LoadingWrapper = ({ label }: LoadingWrapperProps) => {\n return (\n <div className=\"flex flex-col items-center justify-center gap-2 p-4 text-white bg-black rounded-lg shadow-2xl dark:text-black dark:bg-white\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className=\"w-8 h-8 animate-spin\"\n >\n <path d=\"M21 12a9 9 0 1 1-6.219-8.56\" />\n </svg>\n {label && (\n <p className=\"text-sm font-semibold leading-tight text-white dark:text-black\">\n {label}\n </p>\n )}\n </div>\n );\n};\n\nexport const Loader = ({ hasOverlay = true, label }: LoaderProps) => {\n return hasOverlay ? (\n createPortal(\n <div className=\"items-center justify-center bg-black/60 flex h-full w-full fixed top-0 left-0 select-none z-[9999]\">\n <LoadingWrapper label={label} />\n </div>,\n document.body\n )\n ) : (\n <LoadingWrapper label={label} />\n );\n};\n\nexport default Loader;\n"],"names":["React","createPortal","LoadingWrapper","label","div","className","svg","xmlns","viewBox","fill","stroke","strokeWidth","strokeLinecap","strokeLinejoin","path","d","p","Loader","hasOverlay","document","body"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";AAAA,OAAOA,WAAW,QAAQ;AAC1B,SAASC,YAAY,QAAQ,YAAY;AAIzC,MAAMC,iBAAiB,CAAC,EAAEC,KAAK,EAAuB;IACpD,qBACE,MAACC;QAAIC,WAAU;;0BACb,KAACC;gBACCC,OAAM;gBACNC,SAAQ;gBACRC,MAAK;gBACLC,QAAO;gBACPC,aAAY;gBACZC,eAAc;gBACdC,gBAAe;gBACfR,WAAU;0BAEV,cAAA,KAACS;oBAAKC,GAAE;;;YAETZ,uBACC,KAACa;gBAAEX,WAAU;0BACVF;;;;AAKX;AAEA,OAAO,MAAMc,SAAS,CAAC,EAAEC,aAAa,IAAI,EAAEf,KAAK,EAAe;IAC9D,OAAOe,2BACLjB,2BACE,KAACG;QAAIC,WAAU;kBACb,cAAA,KAACH;YAAeC,OAAOA;;QAEzBgB,SAASC,IAAI,kBAGf,KAAClB;QAAeC,OAAOA;;AAE3B,EAAE;AAEF,eAAec,OAAO"}
1
+ {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/ui/Loader/Loader.tsx"],"sourcesContent":["import React from \"react\";\nimport { createPortal } from \"react-dom\";\n\nimport { LoaderProps, LoadingWrapperProps } from \"./types.js\";\n\nconst LoadingWrapper = ({ label }: LoadingWrapperProps) => {\n return (\n <div className=\"flex flex-col items-center justify-center gap-2 p-4 text-white bg-black rounded-lg shadow-2xl dark:text-black dark:bg-white\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className=\"w-8 h-8 animate-spin\"\n >\n <path d=\"M21 12a9 9 0 1 1-6.219-8.56\" />\n </svg>\n {label && (\n <p className=\"text-sm font-semibold leading-tight text-white dark:text-black\">\n {label}\n </p>\n )}\n </div>\n );\n};\n\nexport const Loader = ({ hasOverlay = true, label }: LoaderProps) => {\n return hasOverlay ? (\n createPortal(\n <div className=\"items-center justify-center bg-black/60 flex h-full w-full fixed top-0 left-0 select-none z-[9999]\">\n <LoadingWrapper label={label} />\n </div>,\n document.body\n )\n ) : (\n <LoadingWrapper label={label} />\n );\n};\n\nexport default Loader;\n"],"names":["React","createPortal","LoadingWrapper","label","div","className","svg","xmlns","viewBox","fill","stroke","strokeWidth","strokeLinecap","strokeLinejoin","path","d","p","Loader","hasOverlay","document","body"],"mappings":";AAAA,OAAOA,WAAW,QAAQ;AAC1B,SAASC,YAAY,QAAQ,YAAY;AAIzC,MAAMC,iBAAiB,CAAC,EAAEC,KAAK,EAAuB;IACpD,qBACE,MAACC;QAAIC,WAAU;;0BACb,KAACC;gBACCC,OAAM;gBACNC,SAAQ;gBACRC,MAAK;gBACLC,QAAO;gBACPC,aAAY;gBACZC,eAAc;gBACdC,gBAAe;gBACfR,WAAU;0BAEV,cAAA,KAACS;oBAAKC,GAAE;;;YAETZ,uBACC,KAACa;gBAAEX,WAAU;0BACVF;;;;AAKX;AAEA,OAAO,MAAMc,SAAS,CAAC,EAAEC,aAAa,IAAI,EAAEf,KAAK,EAAe;IAC9D,OAAOe,2BACLjB,2BACE,KAACG;QAAIC,WAAU;kBACb,cAAA,KAACH;YAAeC,OAAOA;;QAEzBgB,SAASC,IAAI,kBAGf,KAAClB;QAAeC,OAAOA;;AAE3B,EAAE;AAEF,eAAec,OAAO"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/ui/Loader/index.ts"],"sourcesContent":["export * from \"./Loader.js\";\n"],"names":[],"rangeMappings":"","mappings":"AAAA,cAAc,cAAc"}
1
+ {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/ui/Loader/index.ts"],"sourcesContent":["export * from \"./Loader.js\";\n"],"names":[],"mappings":"AAAA,cAAc,cAAc"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/ui/Loader/types.ts"],"sourcesContent":["export interface LoadingWrapperProps {\n label?: string\n}\n\nexport interface LoaderProps extends LoadingWrapperProps {\n hasOverlay?: boolean\n}\n"],"names":[],"rangeMappings":"","mappings":"AAIA,WAEC"}
1
+ {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/ui/Loader/types.ts"],"sourcesContent":["export interface LoadingWrapperProps {\n label?: string\n}\n\nexport interface LoaderProps extends LoadingWrapperProps {\n hasOverlay?: boolean\n}\n"],"names":[],"mappings":"AAIA,WAEC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/ui/Panel/index.tsx"],"sourcesContent":["import React from \"react\";\nimport { forwardRef } from \"react\";\nimport { Slot } from \"@radix-ui/react-slot\";\nimport { Surface } from \"../Surface.js\";\nimport { cn } from \"../../../lib/utils/index.js\";\n\nexport type PanelProps = {\n spacing?: \"medium\" | \"small\";\n noShadow?: boolean;\n asChild?: boolean;\n} & React.HTMLAttributes<HTMLDivElement>;\n\nexport const Panel = forwardRef<HTMLDivElement, PanelProps>(\n ({ asChild, className, children, spacing, noShadow, ...rest }, ref) => {\n const panelClass = cn(\n \"p-2\",\n spacing === \"small\" && \"p-[0.2rem]\",\n className\n );\n\n const Comp = asChild ? Slot : \"div\";\n\n return (\n <Comp ref={ref} {...rest}>\n <Surface className={panelClass} withShadow={!noShadow}>\n {children}\n </Surface>\n </Comp>\n );\n }\n);\n\nPanel.displayName = \"Panel\";\n\nexport const PanelDivider = forwardRef<\n HTMLDivElement,\n { asChild?: boolean } & React.HTMLAttributes<HTMLDivElement>\n>(({ asChild, className, children, ...rest }, ref) => {\n const dividerClass = cn(\"border-b border-b-black/10 mb-2 pb-2\", className);\n\n const Comp = asChild ? Slot : \"div\";\n\n return (\n <Comp className={dividerClass} {...rest} ref={ref}>\n {children}\n </Comp>\n );\n});\n\nPanelDivider.displayName = \"PanelDivider\";\n\nexport const PanelHeader = forwardRef<\n HTMLDivElement,\n { asChild?: boolean } & React.HTMLAttributes<HTMLDivElement>\n>(({ asChild, className, children, ...rest }, ref) => {\n const headerClass = cn(\n \"border-b border-b-black/10 text-sm mb-2 pb-2\",\n className\n );\n\n const Comp = asChild ? Slot : \"div\";\n\n return (\n <Comp className={headerClass} {...rest} ref={ref}>\n {children}\n </Comp>\n );\n});\n\nPanelHeader.displayName = \"PanelHeader\";\n\nexport const PanelSection = forwardRef<\n HTMLDivElement,\n { asChild?: boolean } & React.HTMLAttributes<HTMLDivElement>\n>(({ asChild, className, children, ...rest }, ref) => {\n const sectionClass = cn(\"mt-4 first:mt-1\", className);\n\n const Comp = asChild ? Slot : \"div\";\n\n return (\n <Comp className={sectionClass} {...rest} ref={ref}>\n {children}\n </Comp>\n );\n});\n\nPanelSection.displayName = \"PanelSection\";\n\nexport const PanelHeadline = forwardRef<\n HTMLDivElement,\n { asChild?: boolean } & React.HTMLAttributes<HTMLDivElement>\n>(({ asChild, className, children, ...rest }, ref) => {\n const headlineClass = cn(\n \"text-black/80 dark:text-white/80 text-xs font-medium mb-2 ml-1.5\",\n className\n );\n\n const Comp = asChild ? Slot : \"div\";\n\n return (\n <Comp className={headlineClass} {...rest} ref={ref}>\n {children}\n </Comp>\n );\n});\n\nPanelHeadline.displayName = \"PanelHeadline\";\n\nexport const PanelFooter = forwardRef<\n HTMLDivElement,\n { asChild?: boolean } & React.HTMLAttributes<HTMLDivElement>\n>(({ asChild, className, children, ...rest }, ref) => {\n const footerClass = cn(\n \"border-t border-black/10 text-sm mt-2 pt-2\",\n className\n );\n\n const Comp = asChild ? Slot : \"div\";\n\n return (\n <Comp className={footerClass} {...rest} ref={ref}>\n {children}\n </Comp>\n );\n});\n\nPanelFooter.displayName = \"PanelFooter\";\n"],"names":["React","forwardRef","Slot","Surface","cn","Panel","asChild","className","children","spacing","noShadow","rest","ref","panelClass","Comp","withShadow","displayName","PanelDivider","dividerClass","PanelHeader","headerClass","PanelSection","sectionClass","PanelHeadline","headlineClass","PanelFooter","footerClass"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";AAAA,OAAOA,WAAW,QAAQ;AAC1B,SAASC,UAAU,QAAQ,QAAQ;AACnC,SAASC,IAAI,QAAQ,uBAAuB;AAC5C,SAASC,OAAO,QAAQ,gBAAgB;AACxC,SAASC,EAAE,QAAQ,8BAA8B;AAQjD,OAAO,MAAMC,sBAAQJ,WACnB,CAAC,EAAEK,OAAO,EAAEC,SAAS,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,QAAQ,EAAE,GAAGC,MAAM,EAAEC;IAC7D,MAAMC,aAAaT,GACjB,OACAK,YAAY,WAAW,cACvBF;IAGF,MAAMO,OAAOR,UAAUJ,OAAO;IAE9B,qBACE,KAACY;QAAKF,KAAKA;QAAM,GAAGD,IAAI;kBACtB,cAAA,KAACR;YAAQI,WAAWM;YAAYE,YAAY,CAACL;sBAC1CF;;;AAIT,GACA;AAEFH,MAAMW,WAAW,GAAG;AAEpB,OAAO,MAAMC,6BAAehB,WAG1B,CAAC,EAAEK,OAAO,EAAEC,SAAS,EAAEC,QAAQ,EAAE,GAAGG,MAAM,EAAEC;IAC5C,MAAMM,eAAed,GAAG,wCAAwCG;IAEhE,MAAMO,OAAOR,UAAUJ,OAAO;IAE9B,qBACE,KAACY;QAAKP,WAAWW;QAAe,GAAGP,IAAI;QAAEC,KAAKA;kBAC3CJ;;AAGP,GAAG;AAEHS,aAAaD,WAAW,GAAG;AAE3B,OAAO,MAAMG,4BAAclB,WAGzB,CAAC,EAAEK,OAAO,EAAEC,SAAS,EAAEC,QAAQ,EAAE,GAAGG,MAAM,EAAEC;IAC5C,MAAMQ,cAAchB,GAClB,gDACAG;IAGF,MAAMO,OAAOR,UAAUJ,OAAO;IAE9B,qBACE,KAACY;QAAKP,WAAWa;QAAc,GAAGT,IAAI;QAAEC,KAAKA;kBAC1CJ;;AAGP,GAAG;AAEHW,YAAYH,WAAW,GAAG;AAE1B,OAAO,MAAMK,6BAAepB,WAG1B,CAAC,EAAEK,OAAO,EAAEC,SAAS,EAAEC,QAAQ,EAAE,GAAGG,MAAM,EAAEC;IAC5C,MAAMU,eAAelB,GAAG,mBAAmBG;IAE3C,MAAMO,OAAOR,UAAUJ,OAAO;IAE9B,qBACE,KAACY;QAAKP,WAAWe;QAAe,GAAGX,IAAI;QAAEC,KAAKA;kBAC3CJ;;AAGP,GAAG;AAEHa,aAAaL,WAAW,GAAG;AAE3B,OAAO,MAAMO,8BAAgBtB,WAG3B,CAAC,EAAEK,OAAO,EAAEC,SAAS,EAAEC,QAAQ,EAAE,GAAGG,MAAM,EAAEC;IAC5C,MAAMY,gBAAgBpB,GACpB,oEACAG;IAGF,MAAMO,OAAOR,UAAUJ,OAAO;IAE9B,qBACE,KAACY;QAAKP,WAAWiB;QAAgB,GAAGb,IAAI;QAAEC,KAAKA;kBAC5CJ;;AAGP,GAAG;AAEHe,cAAcP,WAAW,GAAG;AAE5B,OAAO,MAAMS,4BAAcxB,WAGzB,CAAC,EAAEK,OAAO,EAAEC,SAAS,EAAEC,QAAQ,EAAE,GAAGG,MAAM,EAAEC;IAC5C,MAAMc,cAActB,GAClB,8CACAG;IAGF,MAAMO,OAAOR,UAAUJ,OAAO;IAE9B,qBACE,KAACY;QAAKP,WAAWmB;QAAc,GAAGf,IAAI;QAAEC,KAAKA;kBAC1CJ;;AAGP,GAAG;AAEHiB,YAAYT,WAAW,GAAG"}
1
+ {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/ui/Panel/index.tsx"],"sourcesContent":["import React from \"react\";\nimport { forwardRef } from \"react\";\nimport { Slot } from \"@radix-ui/react-slot\";\nimport { Surface } from \"../Surface.js\";\nimport { cn } from \"../../../lib/utils/index.js\";\n\nexport type PanelProps = {\n spacing?: \"medium\" | \"small\";\n noShadow?: boolean;\n asChild?: boolean;\n} & React.HTMLAttributes<HTMLDivElement>;\n\nexport const Panel = forwardRef<HTMLDivElement, PanelProps>(\n ({ asChild, className, children, spacing, noShadow, ...rest }, ref) => {\n const panelClass = cn(\n \"p-2\",\n spacing === \"small\" && \"p-[0.2rem]\",\n className\n );\n\n const Comp = asChild ? Slot : \"div\";\n\n return (\n <Comp ref={ref} {...rest}>\n <Surface className={panelClass} withShadow={!noShadow}>\n {children}\n </Surface>\n </Comp>\n );\n }\n);\n\nPanel.displayName = \"Panel\";\n\nexport const PanelDivider = forwardRef<\n HTMLDivElement,\n { asChild?: boolean } & React.HTMLAttributes<HTMLDivElement>\n>(({ asChild, className, children, ...rest }, ref) => {\n const dividerClass = cn(\"border-b border-b-black/10 mb-2 pb-2\", className);\n\n const Comp = asChild ? Slot : \"div\";\n\n return (\n <Comp className={dividerClass} {...rest} ref={ref}>\n {children}\n </Comp>\n );\n});\n\nPanelDivider.displayName = \"PanelDivider\";\n\nexport const PanelHeader = forwardRef<\n HTMLDivElement,\n { asChild?: boolean } & React.HTMLAttributes<HTMLDivElement>\n>(({ asChild, className, children, ...rest }, ref) => {\n const headerClass = cn(\n \"border-b border-b-black/10 text-sm mb-2 pb-2\",\n className\n );\n\n const Comp = asChild ? Slot : \"div\";\n\n return (\n <Comp className={headerClass} {...rest} ref={ref}>\n {children}\n </Comp>\n );\n});\n\nPanelHeader.displayName = \"PanelHeader\";\n\nexport const PanelSection = forwardRef<\n HTMLDivElement,\n { asChild?: boolean } & React.HTMLAttributes<HTMLDivElement>\n>(({ asChild, className, children, ...rest }, ref) => {\n const sectionClass = cn(\"mt-4 first:mt-1\", className);\n\n const Comp = asChild ? Slot : \"div\";\n\n return (\n <Comp className={sectionClass} {...rest} ref={ref}>\n {children}\n </Comp>\n );\n});\n\nPanelSection.displayName = \"PanelSection\";\n\nexport const PanelHeadline = forwardRef<\n HTMLDivElement,\n { asChild?: boolean } & React.HTMLAttributes<HTMLDivElement>\n>(({ asChild, className, children, ...rest }, ref) => {\n const headlineClass = cn(\n \"text-black/80 dark:text-white/80 text-xs font-medium mb-2 ml-1.5\",\n className\n );\n\n const Comp = asChild ? Slot : \"div\";\n\n return (\n <Comp className={headlineClass} {...rest} ref={ref}>\n {children}\n </Comp>\n );\n});\n\nPanelHeadline.displayName = \"PanelHeadline\";\n\nexport const PanelFooter = forwardRef<\n HTMLDivElement,\n { asChild?: boolean } & React.HTMLAttributes<HTMLDivElement>\n>(({ asChild, className, children, ...rest }, ref) => {\n const footerClass = cn(\n \"border-t border-black/10 text-sm mt-2 pt-2\",\n className\n );\n\n const Comp = asChild ? Slot : \"div\";\n\n return (\n <Comp className={footerClass} {...rest} ref={ref}>\n {children}\n </Comp>\n );\n});\n\nPanelFooter.displayName = \"PanelFooter\";\n"],"names":["React","forwardRef","Slot","Surface","cn","Panel","asChild","className","children","spacing","noShadow","rest","ref","panelClass","Comp","withShadow","displayName","PanelDivider","dividerClass","PanelHeader","headerClass","PanelSection","sectionClass","PanelHeadline","headlineClass","PanelFooter","footerClass"],"mappings":";AAAA,OAAOA,WAAW,QAAQ;AAC1B,SAASC,UAAU,QAAQ,QAAQ;AACnC,SAASC,IAAI,QAAQ,uBAAuB;AAC5C,SAASC,OAAO,QAAQ,gBAAgB;AACxC,SAASC,EAAE,QAAQ,8BAA8B;AAQjD,OAAO,MAAMC,sBAAQJ,WACnB,CAAC,EAAEK,OAAO,EAAEC,SAAS,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,QAAQ,EAAE,GAAGC,MAAM,EAAEC;IAC7D,MAAMC,aAAaT,GACjB,OACAK,YAAY,WAAW,cACvBF;IAGF,MAAMO,OAAOR,UAAUJ,OAAO;IAE9B,qBACE,KAACY;QAAKF,KAAKA;QAAM,GAAGD,IAAI;kBACtB,cAAA,KAACR;YAAQI,WAAWM;YAAYE,YAAY,CAACL;sBAC1CF;;;AAIT,GACA;AAEFH,MAAMW,WAAW,GAAG;AAEpB,OAAO,MAAMC,6BAAehB,WAG1B,CAAC,EAAEK,OAAO,EAAEC,SAAS,EAAEC,QAAQ,EAAE,GAAGG,MAAM,EAAEC;IAC5C,MAAMM,eAAed,GAAG,wCAAwCG;IAEhE,MAAMO,OAAOR,UAAUJ,OAAO;IAE9B,qBACE,KAACY;QAAKP,WAAWW;QAAe,GAAGP,IAAI;QAAEC,KAAKA;kBAC3CJ;;AAGP,GAAG;AAEHS,aAAaD,WAAW,GAAG;AAE3B,OAAO,MAAMG,4BAAclB,WAGzB,CAAC,EAAEK,OAAO,EAAEC,SAAS,EAAEC,QAAQ,EAAE,GAAGG,MAAM,EAAEC;IAC5C,MAAMQ,cAAchB,GAClB,gDACAG;IAGF,MAAMO,OAAOR,UAAUJ,OAAO;IAE9B,qBACE,KAACY;QAAKP,WAAWa;QAAc,GAAGT,IAAI;QAAEC,KAAKA;kBAC1CJ;;AAGP,GAAG;AAEHW,YAAYH,WAAW,GAAG;AAE1B,OAAO,MAAMK,6BAAepB,WAG1B,CAAC,EAAEK,OAAO,EAAEC,SAAS,EAAEC,QAAQ,EAAE,GAAGG,MAAM,EAAEC;IAC5C,MAAMU,eAAelB,GAAG,mBAAmBG;IAE3C,MAAMO,OAAOR,UAAUJ,OAAO;IAE9B,qBACE,KAACY;QAAKP,WAAWe;QAAe,GAAGX,IAAI;QAAEC,KAAKA;kBAC3CJ;;AAGP,GAAG;AAEHa,aAAaL,WAAW,GAAG;AAE3B,OAAO,MAAMO,8BAAgBtB,WAG3B,CAAC,EAAEK,OAAO,EAAEC,SAAS,EAAEC,QAAQ,EAAE,GAAGG,MAAM,EAAEC;IAC5C,MAAMY,gBAAgBpB,GACpB,oEACAG;IAGF,MAAMO,OAAOR,UAAUJ,OAAO;IAE9B,qBACE,KAACY;QAAKP,WAAWiB;QAAgB,GAAGb,IAAI;QAAEC,KAAKA;kBAC5CJ;;AAGP,GAAG;AAEHe,cAAcP,WAAW,GAAG;AAE5B,OAAO,MAAMS,4BAAcxB,WAGzB,CAAC,EAAEK,OAAO,EAAEC,SAAS,EAAEC,QAAQ,EAAE,GAAGG,MAAM,EAAEC;IAC5C,MAAMc,cAActB,GAClB,8CACAG;IAGF,MAAMO,OAAOR,UAAUJ,OAAO;IAE9B,qBACE,KAACY;QAAKP,WAAWmB;QAAc,GAAGf,IAAI;QAAEC,KAAKA;kBAC1CJ;;AAGP,GAAG;AAEHiB,YAAYT,WAAW,GAAG"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/fields/TiptapEditor/features/ui/PopoverMenu.tsx"],"sourcesContent":["import * as Popover from \"@radix-ui/react-popover\";\nimport { LucideIcon } from \"lucide-react\";\nimport React, { forwardRef } from \"react\";\nimport { cn } from \"../../lib/utils/index.js\";\nimport { Surface } from \"./Surface.js\";\nimport { Toolbar } from \"./Toolbar.js\";\n\nexport const Trigger = Popover.Trigger;\nexport const Portal = Popover.Portal;\n\nexport type MenuProps = {\n children: React.ReactNode;\n trigger: React.ReactNode;\n triggerClassName?: string;\n customTrigger?: boolean;\n isOpen?: boolean;\n onOpenChange?: (state: boolean) => void;\n withPortal?: boolean;\n tooltip?: string;\n isActive?: boolean;\n};\n\nexport const Menu = ({\n customTrigger,\n trigger,\n triggerClassName,\n children,\n isOpen,\n withPortal,\n tooltip,\n onOpenChange,\n}: MenuProps) => {\n return (\n <Popover.Root onOpenChange={onOpenChange}>\n {customTrigger ? (\n <Trigger asChild>{trigger}</Trigger>\n ) : (\n <Trigger asChild>\n <Toolbar.Button\n type=\"button\"\n className={triggerClassName}\n tooltip={!isOpen ? tooltip : \"\"}\n >\n {trigger}\n </Toolbar.Button>\n </Trigger>\n )}\n {withPortal ? (\n <Popover.Portal>\n <Popover.Content asChild sideOffset={8}>\n <Surface className=\"min-w-[15rem] p-2 flex flex-col gap-0.5 max-h-80 overflow-auto z-[9999]\">\n {children}\n </Surface>\n </Popover.Content>\n </Popover.Portal>\n ) : (\n <Popover.Content asChild sideOffset={8}>\n <Surface className=\"min-w-[15rem] p-2 flex flex-col gap-0.5 max-h-80 overflow-auto z-[9999]\">\n {children}\n </Surface>\n </Popover.Content>\n )}\n </Popover.Root>\n );\n};\n\nMenu.displayName = \"Menu\";\n\nexport const Item = ({\n label,\n close = true,\n icon,\n iconComponent,\n disabled,\n onClick,\n isActive,\n}: {\n label: string | React.ReactNode;\n icon?: LucideIcon;\n iconComponent?: React.ReactNode;\n close?: boolean;\n disabled?: boolean;\n onClick: () => void;\n isActive?: boolean;\n}) => {\n const className = cn(\n \"flex items-center gap-2 p-1.5 text-sm font-medium text-neutral-500 text-left bg-transparent w-full rounded outline-none\",\n !isActive && !disabled,\n \"hover:bg-neutral-100 hover:text-neutral-800 dark:hover:bg-neutral-900 dark:hover:text-neutral-200\",\n isActive &&\n !disabled &&\n \"bg-neutral-100 text-neutral-800 dark:bg-neutral-900 dark:text-neutral-200\",\n disabled && \"text-neutral-400 cursor-not-allowed dark:text-neutral-600\"\n );\n\n const IconComponent = icon ? icon : null;\n const IconCustomComponent = iconComponent || null;\n\n const ItemComponent = close ? Popover.Close : \"button\";\n\n return (\n <ItemComponent className={className} onClick={onClick} disabled={disabled}>\n {IconComponent && <IconComponent className=\"w-4 h-4\" />}\n {IconCustomComponent}\n {label}\n </ItemComponent>\n );\n};\n\nexport type CategoryTitle = {\n children: React.ReactNode;\n};\n\nexport const CategoryTitle = ({ children }: CategoryTitle) => {\n return (\n <div className=\"mt-4 first:mt-1.5 mb-1.5 text-[0.625rem] font-medium text-neutral-400 dark:text-neutral-600 uppercase select-none px-1\">\n {children}\n </div>\n );\n};\n\nexport const Divider = forwardRef<HTMLHRElement>((props, ref) => {\n return (\n <hr\n {...props}\n ref={ref}\n className=\"my-1 border-neutral-200 dark:border-neutral-800\"\n />\n );\n});\n\nDivider.displayName = \"Divider\";\n"],"names":["Popover","React","forwardRef","cn","Surface","Toolbar","Trigger","Portal","Menu","customTrigger","trigger","triggerClassName","children","isOpen","withPortal","tooltip","onOpenChange","Root","asChild","Button","type","className","Content","sideOffset","displayName","Item","label","close","icon","iconComponent","disabled","onClick","isActive","IconComponent","IconCustomComponent","ItemComponent","Close","CategoryTitle","div","Divider","props","ref","hr"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";AAAA,YAAYA,aAAa,0BAA0B;AAEnD,OAAOC,SAASC,UAAU,QAAQ,QAAQ;AAC1C,SAASC,EAAE,QAAQ,2BAA2B;AAC9C,SAASC,OAAO,QAAQ,eAAe;AACvC,SAASC,OAAO,QAAQ,eAAe;AAEvC,OAAO,MAAMC,UAAUN,QAAQM,OAAO,CAAC;AACvC,OAAO,MAAMC,SAASP,QAAQO,MAAM,CAAC;AAcrC,OAAO,MAAMC,OAAO,CAAC,EACnBC,aAAa,EACbC,OAAO,EACPC,gBAAgB,EAChBC,QAAQ,EACRC,MAAM,EACNC,UAAU,EACVC,OAAO,EACPC,YAAY,EACF;IACV,qBACE,MAAChB,QAAQiB,IAAI;QAACD,cAAcA;;YACzBP,8BACC,KAACH;gBAAQY,OAAO;0BAAER;+BAElB,KAACJ;gBAAQY,OAAO;0BACd,cAAA,KAACb,QAAQc,MAAM;oBACbC,MAAK;oBACLC,WAAWV;oBACXI,SAAS,CAACF,SAASE,UAAU;8BAE5BL;;;YAINI,2BACC,KAACd,QAAQO,MAAM;0BACb,cAAA,KAACP,QAAQsB,OAAO;oBAACJ,OAAO;oBAACK,YAAY;8BACnC,cAAA,KAACnB;wBAAQiB,WAAU;kCAChBT;;;+BAKP,KAACZ,QAAQsB,OAAO;gBAACJ,OAAO;gBAACK,YAAY;0BACnC,cAAA,KAACnB;oBAAQiB,WAAU;8BAChBT;;;;;AAMb,EAAE;AAEFJ,KAAKgB,WAAW,GAAG;AAEnB,OAAO,MAAMC,OAAO,CAAC,EACnBC,KAAK,EACLC,QAAQ,IAAI,EACZC,IAAI,EACJC,aAAa,EACbC,QAAQ,EACRC,OAAO,EACPC,QAAQ,EAST;IACC,MAAMX,YAAYlB,GAChB,4HACA,CAAC6B,YAAY,CAACF,UACd,qGACAE,YACE,CAACF,YACD,6EACFA,YAAY;IAGd,MAAMG,gBAAgBL,OAAOA,OAAO;IACpC,MAAMM,sBAAsBL,iBAAiB;IAE7C,MAAMM,gBAAgBR,QAAQ3B,QAAQoC,KAAK,GAAG;IAE9C,qBACE,MAACD;QAAcd,WAAWA;QAAWU,SAASA;QAASD,UAAUA;;YAC9DG,+BAAiB,KAACA;gBAAcZ,WAAU;;YAC1Ca;YACAR;;;AAGP,EAAE;AAMF,OAAO,MAAMW,gBAAgB,CAAC,EAAEzB,QAAQ,EAAiB;IACvD,qBACE,KAAC0B;QAAIjB,WAAU;kBACZT;;AAGP,EAAE;AAEF,OAAO,MAAM2B,wBAAUrC,WAA0B,CAACsC,OAAOC;IACvD,qBACE,KAACC;QACE,GAAGF,KAAK;QACTC,KAAKA;QACLpB,WAAU;;AAGhB,GAAG;AAEHkB,QAAQf,WAAW,GAAG"}
1
+ {"version":3,"sources":["../../../../../../src/fields/TiptapEditor/features/ui/PopoverMenu.tsx"],"sourcesContent":["import * as Popover from \"@radix-ui/react-popover\";\nimport { LucideIcon } from \"lucide-react\";\nimport React, { forwardRef } from \"react\";\nimport { cn } from \"../../lib/utils/index.js\";\nimport { Surface } from \"./Surface.js\";\nimport { Toolbar } from \"./Toolbar.js\";\n\nexport const Trigger = Popover.Trigger;\nexport const Portal = Popover.Portal;\n\nexport type MenuProps = {\n children: React.ReactNode;\n trigger: React.ReactNode;\n triggerClassName?: string;\n customTrigger?: boolean;\n isOpen?: boolean;\n onOpenChange?: (state: boolean) => void;\n withPortal?: boolean;\n tooltip?: string;\n isActive?: boolean;\n};\n\nexport const Menu = ({\n customTrigger,\n trigger,\n triggerClassName,\n children,\n isOpen,\n withPortal,\n tooltip,\n onOpenChange,\n}: MenuProps) => {\n return (\n <Popover.Root onOpenChange={onOpenChange}>\n {customTrigger ? (\n <Trigger asChild>{trigger}</Trigger>\n ) : (\n <Trigger asChild>\n <Toolbar.Button\n type=\"button\"\n className={triggerClassName}\n tooltip={!isOpen ? tooltip : \"\"}\n >\n {trigger}\n </Toolbar.Button>\n </Trigger>\n )}\n {withPortal ? (\n <Popover.Portal>\n <Popover.Content asChild sideOffset={8}>\n <Surface className=\"min-w-[15rem] p-2 flex flex-col gap-0.5 max-h-80 overflow-auto z-[9999]\">\n {children}\n </Surface>\n </Popover.Content>\n </Popover.Portal>\n ) : (\n <Popover.Content asChild sideOffset={8}>\n <Surface className=\"min-w-[15rem] p-2 flex flex-col gap-0.5 max-h-80 overflow-auto z-[9999]\">\n {children}\n </Surface>\n </Popover.Content>\n )}\n </Popover.Root>\n );\n};\n\nMenu.displayName = \"Menu\";\n\nexport const Item = ({\n label,\n close = true,\n icon,\n iconComponent,\n disabled,\n onClick,\n isActive,\n}: {\n label: string | React.ReactNode;\n icon?: LucideIcon;\n iconComponent?: React.ReactNode;\n close?: boolean;\n disabled?: boolean;\n onClick: () => void;\n isActive?: boolean;\n}) => {\n const className = cn(\n \"flex items-center gap-2 p-1.5 text-sm font-medium text-neutral-500 text-left bg-transparent w-full rounded outline-none\",\n !isActive && !disabled,\n \"hover:bg-neutral-100 hover:text-neutral-800 dark:hover:bg-neutral-900 dark:hover:text-neutral-200\",\n isActive &&\n !disabled &&\n \"bg-neutral-100 text-neutral-800 dark:bg-neutral-900 dark:text-neutral-200\",\n disabled && \"text-neutral-400 cursor-not-allowed dark:text-neutral-600\"\n );\n\n const IconComponent = icon ? icon : null;\n const IconCustomComponent = iconComponent || null;\n\n const ItemComponent = close ? Popover.Close : \"button\";\n\n return (\n <ItemComponent className={className} onClick={onClick} disabled={disabled}>\n {IconComponent && <IconComponent className=\"w-4 h-4\" />}\n {IconCustomComponent}\n {label}\n </ItemComponent>\n );\n};\n\nexport type CategoryTitle = {\n children: React.ReactNode;\n};\n\nexport const CategoryTitle = ({ children }: CategoryTitle) => {\n return (\n <div className=\"mt-4 first:mt-1.5 mb-1.5 text-[0.625rem] font-medium text-neutral-400 dark:text-neutral-600 uppercase select-none px-1\">\n {children}\n </div>\n );\n};\n\nexport const Divider = forwardRef<HTMLHRElement>((props, ref) => {\n return (\n <hr\n {...props}\n ref={ref}\n className=\"my-1 border-neutral-200 dark:border-neutral-800\"\n />\n );\n});\n\nDivider.displayName = \"Divider\";\n"],"names":["Popover","React","forwardRef","cn","Surface","Toolbar","Trigger","Portal","Menu","customTrigger","trigger","triggerClassName","children","isOpen","withPortal","tooltip","onOpenChange","Root","asChild","Button","type","className","Content","sideOffset","displayName","Item","label","close","icon","iconComponent","disabled","onClick","isActive","IconComponent","IconCustomComponent","ItemComponent","Close","CategoryTitle","div","Divider","props","ref","hr"],"mappings":";AAAA,YAAYA,aAAa,0BAA0B;AAEnD,OAAOC,SAASC,UAAU,QAAQ,QAAQ;AAC1C,SAASC,EAAE,QAAQ,2BAA2B;AAC9C,SAASC,OAAO,QAAQ,eAAe;AACvC,SAASC,OAAO,QAAQ,eAAe;AAEvC,OAAO,MAAMC,UAAUN,QAAQM,OAAO,CAAC;AACvC,OAAO,MAAMC,SAASP,QAAQO,MAAM,CAAC;AAcrC,OAAO,MAAMC,OAAO,CAAC,EACnBC,aAAa,EACbC,OAAO,EACPC,gBAAgB,EAChBC,QAAQ,EACRC,MAAM,EACNC,UAAU,EACVC,OAAO,EACPC,YAAY,EACF;IACV,qBACE,MAAChB,QAAQiB,IAAI;QAACD,cAAcA;;YACzBP,8BACC,KAACH;gBAAQY,OAAO;0BAAER;+BAElB,KAACJ;gBAAQY,OAAO;0BACd,cAAA,KAACb,QAAQc,MAAM;oBACbC,MAAK;oBACLC,WAAWV;oBACXI,SAAS,CAACF,SAASE,UAAU;8BAE5BL;;;YAINI,2BACC,KAACd,QAAQO,MAAM;0BACb,cAAA,KAACP,QAAQsB,OAAO;oBAACJ,OAAO;oBAACK,YAAY;8BACnC,cAAA,KAACnB;wBAAQiB,WAAU;kCAChBT;;;+BAKP,KAACZ,QAAQsB,OAAO;gBAACJ,OAAO;gBAACK,YAAY;0BACnC,cAAA,KAACnB;oBAAQiB,WAAU;8BAChBT;;;;;AAMb,EAAE;AAEFJ,KAAKgB,WAAW,GAAG;AAEnB,OAAO,MAAMC,OAAO,CAAC,EACnBC,KAAK,EACLC,QAAQ,IAAI,EACZC,IAAI,EACJC,aAAa,EACbC,QAAQ,EACRC,OAAO,EACPC,QAAQ,EAST;IACC,MAAMX,YAAYlB,GAChB,4HACA,CAAC6B,YAAY,CAACF,UACd,qGACAE,YACE,CAACF,YACD,6EACFA,YAAY;IAGd,MAAMG,gBAAgBL,OAAOA,OAAO;IACpC,MAAMM,sBAAsBL,iBAAiB;IAE7C,MAAMM,gBAAgBR,QAAQ3B,QAAQoC,KAAK,GAAG;IAE9C,qBACE,MAACD;QAAcd,WAAWA;QAAWU,SAASA;QAASD,UAAUA;;YAC9DG,+BAAiB,KAACA;gBAAcZ,WAAU;;YAC1Ca;YACAR;;;AAGP,EAAE;AAMF,OAAO,MAAMW,gBAAgB,CAAC,EAAEzB,QAAQ,EAAiB;IACvD,qBACE,KAAC0B;QAAIjB,WAAU;kBACZT;;AAGP,EAAE;AAEF,OAAO,MAAM2B,wBAAUrC,WAA0B,CAACsC,OAAOC;IACvD,qBACE,KAACC;QACE,GAAGF,KAAK;QACTC,KAAKA;QACLpB,WAAU;;AAGhB,GAAG;AAEHkB,QAAQf,WAAW,GAAG"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/ui/Spinner/Spinner.tsx"],"sourcesContent":["import React from \"react\";\nimport { HTMLProps, forwardRef } from \"react\";\nimport { cn } from \"../../../lib/utils/index.js\";\n\nexport const Spinner = forwardRef<HTMLDivElement, HTMLProps<HTMLDivElement>>(\n ({ className, ...rest }, ref) => {\n const spinnerClass = cn(\n \"animate-spin rounded-full border-2 border-current border-t-transparent h-4 w-4\",\n className\n );\n\n return <div className={spinnerClass} ref={ref} {...rest} />;\n }\n);\n\nSpinner.displayName = \"Spinner\";\n"],"names":["React","forwardRef","cn","Spinner","className","rest","ref","spinnerClass","div","displayName"],"rangeMappings":";;;;;;;;;;;;","mappings":";AAAA,OAAOA,WAAW,QAAQ;AAC1B,SAAoBC,UAAU,QAAQ,QAAQ;AAC9C,SAASC,EAAE,QAAQ,8BAA8B;AAEjD,OAAO,MAAMC,wBAAUF,WACrB,CAAC,EAAEG,SAAS,EAAE,GAAGC,MAAM,EAAEC;IACvB,MAAMC,eAAeL,GACnB,kFACAE;IAGF,qBAAO,KAACI;QAAIJ,WAAWG;QAAcD,KAAKA;QAAM,GAAGD,IAAI;;AACzD,GACA;AAEFF,QAAQM,WAAW,GAAG"}
1
+ {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/ui/Spinner/Spinner.tsx"],"sourcesContent":["import React from \"react\";\nimport { HTMLProps, forwardRef } from \"react\";\nimport { cn } from \"../../../lib/utils/index.js\";\n\nexport const Spinner = forwardRef<HTMLDivElement, HTMLProps<HTMLDivElement>>(\n ({ className, ...rest }, ref) => {\n const spinnerClass = cn(\n \"animate-spin rounded-full border-2 border-current border-t-transparent h-4 w-4\",\n className\n );\n\n return <div className={spinnerClass} ref={ref} {...rest} />;\n }\n);\n\nSpinner.displayName = \"Spinner\";\n"],"names":["React","forwardRef","cn","Spinner","className","rest","ref","spinnerClass","div","displayName"],"mappings":";AAAA,OAAOA,WAAW,QAAQ;AAC1B,SAAoBC,UAAU,QAAQ,QAAQ;AAC9C,SAASC,EAAE,QAAQ,8BAA8B;AAEjD,OAAO,MAAMC,wBAAUF,WACrB,CAAC,EAAEG,SAAS,EAAE,GAAGC,MAAM,EAAEC;IACvB,MAAMC,eAAeL,GACnB,kFACAE;IAGF,qBAAO,KAACI;QAAIJ,WAAWG;QAAcD,KAAKA;QAAM,GAAGD,IAAI;;AACzD,GACA;AAEFF,QAAQM,WAAW,GAAG"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/ui/Spinner/index.tsx"],"sourcesContent":["export * from \"./Spinner.js\";\n"],"names":[],"rangeMappings":"","mappings":"AAAA,cAAc,eAAe"}
1
+ {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/ui/Spinner/index.tsx"],"sourcesContent":["export * from \"./Spinner.js\";\n"],"names":[],"mappings":"AAAA,cAAc,eAAe"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/fields/TiptapEditor/features/ui/Surface.tsx"],"sourcesContent":["import React, { HTMLProps, forwardRef } from \"react\";\nimport { cn } from \"../../lib/utils/index.js\";\n\nexport type SurfaceProps = HTMLProps<HTMLDivElement> & {\n withShadow?: boolean;\n withBorder?: boolean;\n};\n\nexport const Surface = forwardRef<HTMLDivElement, SurfaceProps>(\n (\n { children, className, withShadow = true, withBorder = true, ...props },\n ref\n ) => {\n const surfaceClass = cn(\n className,\n \"bg-white rounded-lg dark:bg-black\",\n withShadow ? \"shadow-sm\" : \"\",\n withBorder ? \"border border-neutral-200 dark:border-neutral-800\" : \"\"\n );\n\n return (\n <div className={surfaceClass} {...props} ref={ref}>\n {children}\n </div>\n );\n }\n);\n\nSurface.displayName = \"Surface\";\n"],"names":["React","forwardRef","cn","Surface","children","className","withShadow","withBorder","props","ref","surfaceClass","div","displayName"],"rangeMappings":";;;;;;;;;;;;","mappings":";AAAA,OAAOA,SAAoBC,UAAU,QAAQ,QAAQ;AACrD,SAASC,EAAE,QAAQ,2BAA2B;AAO9C,OAAO,MAAMC,wBAAUF,WACrB,CACE,EAAEG,QAAQ,EAAEC,SAAS,EAAEC,aAAa,IAAI,EAAEC,aAAa,IAAI,EAAE,GAAGC,OAAO,EACvEC;IAEA,MAAMC,eAAeR,GACnBG,WACA,qCACAC,aAAa,cAAc,IAC3BC,aAAa,sDAAsD;IAGrE,qBACE,KAACI;QAAIN,WAAWK;QAAe,GAAGF,KAAK;QAAEC,KAAKA;kBAC3CL;;AAGP,GACA;AAEFD,QAAQS,WAAW,GAAG"}
1
+ {"version":3,"sources":["../../../../../../src/fields/TiptapEditor/features/ui/Surface.tsx"],"sourcesContent":["import React, { HTMLProps, forwardRef } from \"react\";\nimport { cn } from \"../../lib/utils/index.js\";\n\nexport type SurfaceProps = HTMLProps<HTMLDivElement> & {\n withShadow?: boolean;\n withBorder?: boolean;\n};\n\nexport const Surface = forwardRef<HTMLDivElement, SurfaceProps>(\n (\n { children, className, withShadow = true, withBorder = true, ...props },\n ref\n ) => {\n const surfaceClass = cn(\n className,\n \"bg-white rounded-lg dark:bg-black\",\n withShadow ? \"shadow-sm\" : \"\",\n withBorder ? \"border border-neutral-200 dark:border-neutral-800\" : \"\"\n );\n\n return (\n <div className={surfaceClass} {...props} ref={ref}>\n {children}\n </div>\n );\n }\n);\n\nSurface.displayName = \"Surface\";\n"],"names":["React","forwardRef","cn","Surface","children","className","withShadow","withBorder","props","ref","surfaceClass","div","displayName"],"mappings":";AAAA,OAAOA,SAAoBC,UAAU,QAAQ,QAAQ;AACrD,SAASC,EAAE,QAAQ,2BAA2B;AAO9C,OAAO,MAAMC,wBAAUF,WACrB,CACE,EAAEG,QAAQ,EAAEC,SAAS,EAAEC,aAAa,IAAI,EAAEC,aAAa,IAAI,EAAE,GAAGC,OAAO,EACvEC;IAEA,MAAMC,eAAeR,GACnBG,WACA,qCACAC,aAAa,cAAc,IAC3BC,aAAa,sDAAsD;IAGrE,qBACE,KAACI;QAAIN,WAAWK;QAAe,GAAGF,KAAK;QAAEC,KAAKA;kBAC3CL;;AAGP,GACA;AAEFD,QAAQS,WAAW,GAAG"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/ui/Textarea/Textarea.tsx"],"sourcesContent":["import React, { forwardRef } from \"react\";\nimport { cn } from \"../../../lib/utils/index.js\";\n\nexport const Textarea = forwardRef<\n HTMLTextAreaElement,\n React.TextareaHTMLAttributes<HTMLTextAreaElement>\n>(({ className, ...rest }, ref) => {\n const textAreaClassName = cn(\n \"bg-black/5 border-0 rounded-lg caret-black block text-black text-sm font-medium h-[4.5rem] px-2 py-1 w-full\",\n \"dark:bg-white/10 dark:text-white dark:caret-white\",\n \"hover:bg-black/10\",\n \"dark:hover:bg-white/20\",\n \"focus:bg-transparent active:bg-transparent focus:outline focus:outline-black active:outline active:outline-black\",\n \"dark:focus:outline-white dark:active:outline-white\",\n className\n );\n\n return <textarea className={textAreaClassName} ref={ref} {...rest} />;\n});\n\nTextarea.displayName = \"Textarea\";\n"],"names":["React","forwardRef","cn","Textarea","className","rest","ref","textAreaClassName","textarea","displayName"],"rangeMappings":";;;;;;;;;;;","mappings":";AAAA,OAAOA,SAASC,UAAU,QAAQ,QAAQ;AAC1C,SAASC,EAAE,QAAQ,8BAA8B;AAEjD,OAAO,MAAMC,yBAAWF,WAGtB,CAAC,EAAEG,SAAS,EAAE,GAAGC,MAAM,EAAEC;IACzB,MAAMC,oBAAoBL,GACxB,+GACA,qDACA,qBACA,0BACA,oHACA,sDACAE;IAGF,qBAAO,KAACI;QAASJ,WAAWG;QAAmBD,KAAKA;QAAM,GAAGD,IAAI;;AACnE,GAAG;AAEHF,SAASM,WAAW,GAAG"}
1
+ {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/ui/Textarea/Textarea.tsx"],"sourcesContent":["import React, { forwardRef } from \"react\";\nimport { cn } from \"../../../lib/utils/index.js\";\n\nexport const Textarea = forwardRef<\n HTMLTextAreaElement,\n React.TextareaHTMLAttributes<HTMLTextAreaElement>\n>(({ className, ...rest }, ref) => {\n const textAreaClassName = cn(\n \"bg-black/5 border-0 rounded-lg caret-black block text-black text-sm font-medium h-[4.5rem] px-2 py-1 w-full\",\n \"dark:bg-white/10 dark:text-white dark:caret-white\",\n \"hover:bg-black/10\",\n \"dark:hover:bg-white/20\",\n \"focus:bg-transparent active:bg-transparent focus:outline focus:outline-black active:outline active:outline-black\",\n \"dark:focus:outline-white dark:active:outline-white\",\n className\n );\n\n return <textarea className={textAreaClassName} ref={ref} {...rest} />;\n});\n\nTextarea.displayName = \"Textarea\";\n"],"names":["React","forwardRef","cn","Textarea","className","rest","ref","textAreaClassName","textarea","displayName"],"mappings":";AAAA,OAAOA,SAASC,UAAU,QAAQ,QAAQ;AAC1C,SAASC,EAAE,QAAQ,8BAA8B;AAEjD,OAAO,MAAMC,yBAAWF,WAGtB,CAAC,EAAEG,SAAS,EAAE,GAAGC,MAAM,EAAEC;IACzB,MAAMC,oBAAoBL,GACxB,+GACA,qDACA,qBACA,0BACA,oHACA,sDACAE;IAGF,qBAAO,KAACI;QAASJ,WAAWG;QAAmBD,KAAKA;QAAM,GAAGD,IAAI;;AACnE,GAAG;AAEHF,SAASM,WAAW,GAAG"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/ui/Textarea/index.tsx"],"sourcesContent":["export * from \"./Textarea.js\";\n"],"names":[],"rangeMappings":"","mappings":"AAAA,cAAc,gBAAgB"}
1
+ {"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/ui/Textarea/index.tsx"],"sourcesContent":["export * from \"./Textarea.js\";\n"],"names":[],"mappings":"AAAA,cAAc,gBAAgB"}