@frontify/guideline-blocks-settings 0.33.4 → 0.34.0

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 (498) hide show
  1. package/dist/components/Attachments/AttachmentItem.es.js +174 -0
  2. package/dist/components/Attachments/AttachmentItem.es.js.map +1 -0
  3. package/dist/components/Attachments/Attachments.es.js +160 -0
  4. package/dist/components/Attachments/Attachments.es.js.map +1 -0
  5. package/dist/components/Attachments/AttachmentsButtonTrigger.es.js +29 -0
  6. package/dist/components/Attachments/AttachmentsButtonTrigger.es.js.map +1 -0
  7. package/dist/components/BlockInjectButton/BlockInjectButton.es.js +150 -0
  8. package/dist/components/BlockInjectButton/BlockInjectButton.es.js.map +1 -0
  9. package/dist/components/BlockItemWrapper/BlockItemWrapper.es.js +71 -0
  10. package/dist/components/BlockItemWrapper/BlockItemWrapper.es.js.map +1 -0
  11. package/dist/components/BlockItemWrapper/Toolbar/AttachmentsToolbarButton/AttachmentsToolbarButton.es.js +33 -0
  12. package/dist/components/BlockItemWrapper/Toolbar/AttachmentsToolbarButton/AttachmentsToolbarButton.es.js.map +1 -0
  13. package/dist/components/BlockItemWrapper/Toolbar/AttachmentsToolbarButton/AttachmentsToolbarButtonTrigger.es.js +26 -0
  14. package/dist/components/BlockItemWrapper/Toolbar/AttachmentsToolbarButton/AttachmentsToolbarButtonTrigger.es.js.map +1 -0
  15. package/dist/components/BlockItemWrapper/Toolbar/BaseToolbarButton.es.js +28 -0
  16. package/dist/components/BlockItemWrapper/Toolbar/BaseToolbarButton.es.js.map +1 -0
  17. package/dist/components/BlockItemWrapper/Toolbar/DragHandleToolbarButton/DragHandleToolbarButton.es.js +35 -0
  18. package/dist/components/BlockItemWrapper/Toolbar/DragHandleToolbarButton/DragHandleToolbarButton.es.js.map +1 -0
  19. package/dist/components/BlockItemWrapper/Toolbar/FlyoutToolbarButton/FlyoutToolbarButton.es.js +44 -0
  20. package/dist/components/BlockItemWrapper/Toolbar/FlyoutToolbarButton/FlyoutToolbarButton.es.js.map +1 -0
  21. package/dist/components/BlockItemWrapper/Toolbar/MenuToolbarButton/MenuToolbarButton.es.js +25 -0
  22. package/dist/components/BlockItemWrapper/Toolbar/MenuToolbarButton/MenuToolbarButton.es.js.map +1 -0
  23. package/dist/components/BlockItemWrapper/Toolbar/MenuToolbarButton/ToolbarFlyoutMenu.es.js +29 -0
  24. package/dist/components/BlockItemWrapper/Toolbar/MenuToolbarButton/ToolbarFlyoutMenu.es.js.map +1 -0
  25. package/dist/components/BlockItemWrapper/Toolbar/Toolbar.es.js +22 -0
  26. package/dist/components/BlockItemWrapper/Toolbar/Toolbar.es.js.map +1 -0
  27. package/dist/components/BlockItemWrapper/Toolbar/ToolbarButton/ToolbarButton.es.js +12 -0
  28. package/dist/components/BlockItemWrapper/Toolbar/ToolbarButton/ToolbarButton.es.js.map +1 -0
  29. package/dist/components/BlockItemWrapper/Toolbar/ToolbarButtonTooltip.es.js +20 -0
  30. package/dist/components/BlockItemWrapper/Toolbar/ToolbarButtonTooltip.es.js.map +1 -0
  31. package/dist/components/BlockItemWrapper/Toolbar/ToolbarSegment.es.js +6 -0
  32. package/dist/components/BlockItemWrapper/Toolbar/ToolbarSegment.es.js.map +1 -0
  33. package/dist/components/BlockItemWrapper/Toolbar/context/DragPreviewContext.es.js +11 -0
  34. package/dist/components/BlockItemWrapper/Toolbar/context/DragPreviewContext.es.js.map +1 -0
  35. package/dist/components/BlockItemWrapper/Toolbar/context/MultiFlyoutContext.es.js +18 -0
  36. package/dist/components/BlockItemWrapper/Toolbar/context/MultiFlyoutContext.es.js.map +1 -0
  37. package/dist/components/BlockItemWrapper/Toolbar/helpers.es.js +26 -0
  38. package/dist/components/BlockItemWrapper/Toolbar/helpers.es.js.map +1 -0
  39. package/dist/components/BlockItemWrapper/Toolbar/hooks/useMultiFlyoutState.es.js +18 -0
  40. package/dist/components/BlockItemWrapper/Toolbar/hooks/useMultiFlyoutState.es.js.map +1 -0
  41. package/dist/components/BlockItemWrapper/constants.es.js +6 -0
  42. package/dist/components/BlockItemWrapper/constants.es.js.map +1 -0
  43. package/dist/components/DownloadButton/DownloadButton.es.js +39 -0
  44. package/dist/components/DownloadButton/DownloadButton.es.js.map +1 -0
  45. package/dist/components/Link/LinkInput.es.js +63 -0
  46. package/dist/components/Link/LinkInput.es.js.map +1 -0
  47. package/dist/components/Link/LinkSelector/DocumentLink.es.js +68 -0
  48. package/dist/components/Link/LinkSelector/DocumentLink.es.js.map +1 -0
  49. package/dist/components/Link/LinkSelector/DocumentLinks.es.js +60 -0
  50. package/dist/components/Link/LinkSelector/DocumentLinks.es.js.map +1 -0
  51. package/dist/components/Link/LinkSelector/LinkSelector.es.js +86 -0
  52. package/dist/components/Link/LinkSelector/LinkSelector.es.js.map +1 -0
  53. package/dist/components/Link/LinkSelector/LoadingIndicator.es.js +7 -0
  54. package/dist/components/Link/LinkSelector/LoadingIndicator.es.js.map +1 -0
  55. package/dist/components/Link/LinkSelector/PageLink.es.js +70 -0
  56. package/dist/components/Link/LinkSelector/PageLink.es.js.map +1 -0
  57. package/dist/components/Link/LinkSelector/PageLinks.es.js +38 -0
  58. package/dist/components/Link/LinkSelector/PageLinks.es.js.map +1 -0
  59. package/dist/components/Link/LinkSelector/SectionLink.es.js +25 -0
  60. package/dist/components/Link/LinkSelector/SectionLink.es.js.map +1 -0
  61. package/dist/components/Link/utils/getUrl.es.js +18 -0
  62. package/dist/components/Link/utils/getUrl.es.js.map +1 -0
  63. package/dist/components/Link/utils/relativeUrlRegex.es.js +5 -0
  64. package/dist/components/Link/utils/relativeUrlRegex.es.js.map +1 -0
  65. package/dist/components/Link/utils/url.es.js +17 -0
  66. package/dist/components/Link/utils/url.es.js.map +1 -0
  67. package/dist/components/RichTextEditor/RichTextEditor.es.js +42 -0
  68. package/dist/components/RichTextEditor/RichTextEditor.es.js.map +1 -0
  69. package/dist/components/RichTextEditor/SerializedText.es.js +20 -0
  70. package/dist/components/RichTextEditor/SerializedText.es.js.map +1 -0
  71. package/dist/components/RichTextEditor/constants.es.js +5 -0
  72. package/dist/components/RichTextEditor/constants.es.js.map +1 -0
  73. package/dist/components/RichTextEditor/pluginPresets/defaultPluginsWithLinkChooser.es.js +35 -0
  74. package/dist/components/RichTextEditor/pluginPresets/defaultPluginsWithLinkChooser.es.js.map +1 -0
  75. package/dist/components/RichTextEditor/plugins/ButtonPlugin/ButtonMarkupElement/ButtonMarkupElementNode.es.js +41 -0
  76. package/dist/components/RichTextEditor/plugins/ButtonPlugin/ButtonMarkupElement/ButtonMarkupElementNode.es.js.map +1 -0
  77. package/dist/components/RichTextEditor/plugins/ButtonPlugin/ButtonMarkupElement/index.es.js +12 -0
  78. package/dist/components/RichTextEditor/plugins/ButtonPlugin/ButtonMarkupElement/index.es.js.map +1 -0
  79. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/ButtonButton.es.js +24 -0
  80. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/ButtonButton.es.js.map +1 -0
  81. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/ButtonToolbarButton.es.js +26 -0
  82. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/ButtonToolbarButton.es.js.map +1 -0
  83. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/CustomFloatingButton.es.js +28 -0
  84. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/CustomFloatingButton.es.js.map +1 -0
  85. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/EditButtonModal/EditModal.es.js +48 -0
  86. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/EditButtonModal/EditModal.es.js.map +1 -0
  87. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/InsertButtonModal/InsertButtonModal.es.js +69 -0
  88. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/InsertButtonModal/InsertButtonModal.es.js.map +1 -0
  89. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/InsertButtonModal/useInsertModal.es.js +104 -0
  90. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/InsertButtonModal/useInsertModal.es.js.map +1 -0
  91. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/floatingButtonStore.es.js +32 -0
  92. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/floatingButtonStore.es.js.map +1 -0
  93. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonEdit.es.js +57 -0
  94. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonEdit.es.js.map +1 -0
  95. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonEnter.es.js +19 -0
  96. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonEnter.es.js.map +1 -0
  97. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonEscape.es.js +26 -0
  98. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonEscape.es.js.map +1 -0
  99. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonInsert.es.js +41 -0
  100. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonInsert.es.js.map +1 -0
  101. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useVirtualFloatingButton.es.js +18 -0
  102. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useVirtualFloatingButton.es.js.map +1 -0
  103. package/dist/components/RichTextEditor/plugins/ButtonPlugin/createButtonPlugin.es.js +67 -0
  104. package/dist/components/RichTextEditor/plugins/ButtonPlugin/createButtonPlugin.es.js.map +1 -0
  105. package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/insertButton.es.js +13 -0
  106. package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/insertButton.es.js.map +1 -0
  107. package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/submitFloatingButton.es.js +25 -0
  108. package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/submitFloatingButton.es.js.map +1 -0
  109. package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/unwrapButton.es.js +35 -0
  110. package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/unwrapButton.es.js.map +1 -0
  111. package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/upsertButton.es.js +86 -0
  112. package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/upsertButton.es.js.map +1 -0
  113. package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/upsertButtonText.es.js +24 -0
  114. package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/upsertButtonText.es.js.map +1 -0
  115. package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/wrapButton.es.js +19 -0
  116. package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/wrapButton.es.js.map +1 -0
  117. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/createButtonNode.es.js +13 -0
  118. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/createButtonNode.es.js.map +1 -0
  119. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/getButtonStyle.es.js +11 -0
  120. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/getButtonStyle.es.js.map +1 -0
  121. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/getUrl.es.js +10 -0
  122. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/getUrl.es.js.map +1 -0
  123. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/styles.es.js +81 -0
  124. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/styles.es.js.map +1 -0
  125. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/triggerFloatingButton.es.js +18 -0
  126. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/triggerFloatingButton.es.js.map +1 -0
  127. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/triggerFloatingButtonEdit.es.js +17 -0
  128. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/triggerFloatingButtonEdit.es.js.map +1 -0
  129. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/triggerFloatingButtonInsert.es.js +14 -0
  130. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/triggerFloatingButtonInsert.es.js.map +1 -0
  131. package/dist/components/RichTextEditor/plugins/ButtonPlugin/withButton.es.js +52 -0
  132. package/dist/components/RichTextEditor/plugins/ButtonPlugin/withButton.es.js.map +1 -0
  133. package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/CustomFloatingLink.es.js +32 -0
  134. package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/CustomFloatingLink.es.js.map +1 -0
  135. package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/EditLinkModal/EditModal.es.js +35 -0
  136. package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/EditLinkModal/EditModal.es.js.map +1 -0
  137. package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/InsertLinkModal.es.js +8 -0
  138. package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/InsertLinkModal.es.js.map +1 -0
  139. package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/InsertModal.es.js +66 -0
  140. package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/InsertModal.es.js.map +1 -0
  141. package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/useInsertModal.es.js +79 -0
  142. package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/useInsertModal.es.js.map +1 -0
  143. package/dist/components/RichTextEditor/plugins/LinkPlugin/LinkButton.es.js +22 -0
  144. package/dist/components/RichTextEditor/plugins/LinkPlugin/LinkButton.es.js.map +1 -0
  145. package/dist/components/RichTextEditor/plugins/LinkPlugin/LinkMarkupElement/LinkMarkupElementNode.es.js +12 -0
  146. package/dist/components/RichTextEditor/plugins/LinkPlugin/LinkMarkupElement/LinkMarkupElementNode.es.js.map +1 -0
  147. package/dist/components/RichTextEditor/plugins/LinkPlugin/LinkMarkupElement/index.es.js +11 -0
  148. package/dist/components/RichTextEditor/plugins/LinkPlugin/LinkMarkupElement/index.es.js.map +1 -0
  149. package/dist/components/RichTextEditor/plugins/LinkPlugin/LinkToolbarButton.es.js +25 -0
  150. package/dist/components/RichTextEditor/plugins/LinkPlugin/LinkToolbarButton.es.js.map +1 -0
  151. package/dist/components/RichTextEditor/plugins/LinkPlugin/id.es.js +5 -0
  152. package/dist/components/RichTextEditor/plugins/LinkPlugin/id.es.js.map +1 -0
  153. package/dist/components/RichTextEditor/plugins/LinkPlugin/index.es.js +45 -0
  154. package/dist/components/RichTextEditor/plugins/LinkPlugin/index.es.js.map +1 -0
  155. package/dist/components/RichTextEditor/plugins/LinkPlugin/utils/getUrl.es.js +13 -0
  156. package/dist/components/RichTextEditor/plugins/LinkPlugin/utils/getUrl.es.js.map +1 -0
  157. package/dist/components/RichTextEditor/plugins/TextStylePlugins/custom1Plugin.es.js +50 -0
  158. package/dist/components/RichTextEditor/plugins/TextStylePlugins/custom1Plugin.es.js.map +1 -0
  159. package/dist/components/RichTextEditor/plugins/TextStylePlugins/custom2Plugin.es.js +50 -0
  160. package/dist/components/RichTextEditor/plugins/TextStylePlugins/custom2Plugin.es.js.map +1 -0
  161. package/dist/components/RichTextEditor/plugins/TextStylePlugins/custom3Plugin.es.js +50 -0
  162. package/dist/components/RichTextEditor/plugins/TextStylePlugins/custom3Plugin.es.js.map +1 -0
  163. package/dist/components/RichTextEditor/plugins/TextStylePlugins/heading1Plugin.es.js +51 -0
  164. package/dist/components/RichTextEditor/plugins/TextStylePlugins/heading1Plugin.es.js.map +1 -0
  165. package/dist/components/RichTextEditor/plugins/TextStylePlugins/heading2Plugin.es.js +51 -0
  166. package/dist/components/RichTextEditor/plugins/TextStylePlugins/heading2Plugin.es.js.map +1 -0
  167. package/dist/components/RichTextEditor/plugins/TextStylePlugins/heading3Plugin.es.js +51 -0
  168. package/dist/components/RichTextEditor/plugins/TextStylePlugins/heading3Plugin.es.js.map +1 -0
  169. package/dist/components/RichTextEditor/plugins/TextStylePlugins/heading4Plugin.es.js +51 -0
  170. package/dist/components/RichTextEditor/plugins/TextStylePlugins/heading4Plugin.es.js.map +1 -0
  171. package/dist/components/RichTextEditor/plugins/TextStylePlugins/helpers.es.js +40 -0
  172. package/dist/components/RichTextEditor/plugins/TextStylePlugins/helpers.es.js.map +1 -0
  173. package/dist/components/RichTextEditor/plugins/TextStylePlugins/imageCaptionPlugin.es.js +51 -0
  174. package/dist/components/RichTextEditor/plugins/TextStylePlugins/imageCaptionPlugin.es.js.map +1 -0
  175. package/dist/components/RichTextEditor/plugins/TextStylePlugins/imageTitlePlugin.es.js +51 -0
  176. package/dist/components/RichTextEditor/plugins/TextStylePlugins/imageTitlePlugin.es.js.map +1 -0
  177. package/dist/components/RichTextEditor/plugins/TextStylePlugins/paragraphPlugin.es.js +45 -0
  178. package/dist/components/RichTextEditor/plugins/TextStylePlugins/paragraphPlugin.es.js.map +1 -0
  179. package/dist/components/RichTextEditor/plugins/TextStylePlugins/quotePlugin.es.js +53 -0
  180. package/dist/components/RichTextEditor/plugins/TextStylePlugins/quotePlugin.es.js.map +1 -0
  181. package/dist/components/RichTextEditor/plugins/styles.es.js +167 -0
  182. package/dist/components/RichTextEditor/plugins/styles.es.js.map +1 -0
  183. package/dist/helpers/addHttps.es.js +14 -0
  184. package/dist/helpers/addHttps.es.js.map +1 -0
  185. package/dist/helpers/convertToRichTextValue.es.js +6 -0
  186. package/dist/helpers/convertToRichTextValue.es.js.map +1 -0
  187. package/dist/helpers/customCoordinatesGetterFactory.es.js +32 -0
  188. package/dist/helpers/customCoordinatesGetterFactory.es.js.map +1 -0
  189. package/dist/helpers/hasRichTextValue.es.js +15 -0
  190. package/dist/helpers/hasRichTextValue.es.js.map +1 -0
  191. package/dist/helpers/isDownloadable.es.js +6 -0
  192. package/dist/helpers/isDownloadable.es.js.map +1 -0
  193. package/dist/helpers/mapColorPalettes.es.js +28 -0
  194. package/dist/helpers/mapColorPalettes.es.js.map +1 -0
  195. package/dist/hooks/useAttachments.es.js +53 -0
  196. package/dist/hooks/useAttachments.es.js.map +1 -0
  197. package/dist/hooks/useDndSensors.es.js +20 -0
  198. package/dist/hooks/useDndSensors.es.js.map +1 -0
  199. package/dist/index.cjs.js +4 -0
  200. package/dist/index.cjs.js.map +1 -0
  201. package/dist/index.d.ts +1190 -0
  202. package/dist/index.es.js +217 -0
  203. package/dist/index.es.js.map +1 -0
  204. package/dist/index.umd.js +4 -0
  205. package/dist/index.umd.js.map +1 -0
  206. package/dist/settings/background.es.js +22 -0
  207. package/dist/settings/background.es.js.map +1 -0
  208. package/dist/settings/border.es.js +61 -0
  209. package/dist/settings/border.es.js.map +1 -0
  210. package/dist/settings/borderRadius.es.js +56 -0
  211. package/dist/settings/borderRadius.es.js.map +1 -0
  212. package/dist/settings/borderRadiusExtended.es.js +64 -0
  213. package/dist/settings/borderRadiusExtended.es.js.map +1 -0
  214. package/dist/settings/defaultValues.es.js +19 -0
  215. package/dist/settings/defaultValues.es.js.map +1 -0
  216. package/dist/settings/gutter.es.js +56 -0
  217. package/dist/settings/gutter.es.js.map +1 -0
  218. package/dist/settings/margin.es.js +53 -0
  219. package/dist/settings/margin.es.js.map +1 -0
  220. package/dist/settings/marginExtended.es.js +65 -0
  221. package/dist/settings/marginExtended.es.js.map +1 -0
  222. package/dist/settings/padding.es.js +53 -0
  223. package/dist/settings/padding.es.js.map +1 -0
  224. package/dist/settings/paddingExtended.es.js +65 -0
  225. package/dist/settings/paddingExtended.es.js.map +1 -0
  226. package/dist/settings/securityDownloadable.es.js +19 -0
  227. package/dist/settings/securityDownloadable.es.js.map +1 -0
  228. package/dist/settings/securityGlobalControl.es.js +33 -0
  229. package/dist/settings/securityGlobalControl.es.js.map +1 -0
  230. package/dist/settings/types.es.js +48 -0
  231. package/dist/settings/types.es.js.map +1 -0
  232. package/dist/styles.css +1 -0
  233. package/dist/styles.css.es.js +2 -0
  234. package/dist/styles.css.es.js.map +1 -0
  235. package/dist/utilities/color/getReadableColor.es.js +14 -0
  236. package/dist/utilities/color/getReadableColor.es.js.map +1 -0
  237. package/dist/utilities/color/isDark.es.js +10 -0
  238. package/dist/utilities/color/isDark.es.js.map +1 -0
  239. package/dist/utilities/color/setAlpha.es.js +6 -0
  240. package/dist/utilities/color/setAlpha.es.js.map +1 -0
  241. package/dist/utilities/color/toColorObject.es.js +9 -0
  242. package/dist/utilities/color/toColorObject.es.js.map +1 -0
  243. package/dist/utilities/color/toHex8String.es.js +7 -0
  244. package/dist/utilities/color/toHex8String.es.js.map +1 -0
  245. package/dist/utilities/color/toHexString.es.js +7 -0
  246. package/dist/utilities/color/toHexString.es.js.map +1 -0
  247. package/dist/utilities/color/toRgbaString.es.js +7 -0
  248. package/dist/utilities/color/toRgbaString.es.js.map +1 -0
  249. package/dist/utilities/color/toShortRgba.es.js +11 -0
  250. package/dist/utilities/color/toShortRgba.es.js.map +1 -0
  251. package/dist/utilities/moveItemInArray.es.js +12 -0
  252. package/dist/utilities/moveItemInArray.es.js.map +1 -0
  253. package/dist/utilities/react/getBackgroundColorStyles.es.js +8 -0
  254. package/dist/utilities/react/getBackgroundColorStyles.es.js.map +1 -0
  255. package/dist/utilities/react/getBorderStyles.es.js +12 -0
  256. package/dist/utilities/react/getBorderStyles.es.js.map +1 -0
  257. package/dist/utilities/react/getRadiusStyles.es.js +8 -0
  258. package/dist/utilities/react/getRadiusStyles.es.js.map +1 -0
  259. package/dist/utilities/react/joinClassNames.es.js +5 -0
  260. package/dist/utilities/react/joinClassNames.es.js.map +1 -0
  261. package/package.json +9 -6
  262. package/.eslintrc.cjs +0 -27
  263. package/.prettierrc +0 -7
  264. package/CHANGELOG.md +0 -787
  265. package/postcss.config.cjs +0 -8
  266. package/setupTests.ts +0 -23
  267. package/src/components/Attachments/AttachmentItem.tsx +0 -247
  268. package/src/components/Attachments/Attachments.spec.ct.tsx +0 -165
  269. package/src/components/Attachments/Attachments.tsx +0 -241
  270. package/src/components/Attachments/AttachmentsButtonTrigger.tsx +0 -30
  271. package/src/components/Attachments/index.ts +0 -4
  272. package/src/components/Attachments/types.ts +0 -40
  273. package/src/components/BlockInjectButton/BlockInjectButton.spec.ct.tsx +0 -48
  274. package/src/components/BlockInjectButton/BlockInjectButton.tsx +0 -212
  275. package/src/components/BlockInjectButton/index.ts +0 -4
  276. package/src/components/BlockInjectButton/types.ts +0 -18
  277. package/src/components/BlockItemWrapper/BlockItemWrapper.spec.ct.tsx +0 -145
  278. package/src/components/BlockItemWrapper/BlockItemWrapper.tsx +0 -76
  279. package/src/components/BlockItemWrapper/Toolbar/AttachmentsToolbarButton/AttachmentsToolbarButton.spec.tsx +0 -96
  280. package/src/components/BlockItemWrapper/Toolbar/AttachmentsToolbarButton/AttachmentsToolbarButton.tsx +0 -42
  281. package/src/components/BlockItemWrapper/Toolbar/AttachmentsToolbarButton/AttachmentsToolbarButtonTrigger.spec.tsx +0 -44
  282. package/src/components/BlockItemWrapper/Toolbar/AttachmentsToolbarButton/AttachmentsToolbarButtonTrigger.tsx +0 -24
  283. package/src/components/BlockItemWrapper/Toolbar/AttachmentsToolbarButton/index.ts +0 -3
  284. package/src/components/BlockItemWrapper/Toolbar/BaseToolbarButton.spec.tsx +0 -40
  285. package/src/components/BlockItemWrapper/Toolbar/BaseToolbarButton.tsx +0 -37
  286. package/src/components/BlockItemWrapper/Toolbar/DragHandleToolbarButton/DragHandleToolbarButton.spec.tsx +0 -89
  287. package/src/components/BlockItemWrapper/Toolbar/DragHandleToolbarButton/DragHandleToolbarButton.tsx +0 -40
  288. package/src/components/BlockItemWrapper/Toolbar/DragHandleToolbarButton/index.ts +0 -3
  289. package/src/components/BlockItemWrapper/Toolbar/FlyoutToolbarButton/FlyoutToolbarButton.spec.tsx +0 -140
  290. package/src/components/BlockItemWrapper/Toolbar/FlyoutToolbarButton/FlyoutToolbarButton.tsx +0 -61
  291. package/src/components/BlockItemWrapper/Toolbar/FlyoutToolbarButton/index.ts +0 -3
  292. package/src/components/BlockItemWrapper/Toolbar/MenuToolbarButton/MenuToolbarButton.spec.tsx +0 -77
  293. package/src/components/BlockItemWrapper/Toolbar/MenuToolbarButton/MenuToolbarButton.tsx +0 -30
  294. package/src/components/BlockItemWrapper/Toolbar/MenuToolbarButton/ToolbarFlyoutMenu.spec.tsx +0 -63
  295. package/src/components/BlockItemWrapper/Toolbar/MenuToolbarButton/ToolbarFlyoutMenu.tsx +0 -40
  296. package/src/components/BlockItemWrapper/Toolbar/MenuToolbarButton/index.ts +0 -4
  297. package/src/components/BlockItemWrapper/Toolbar/Toolbar.spec.tsx +0 -259
  298. package/src/components/BlockItemWrapper/Toolbar/Toolbar.tsx +0 -36
  299. package/src/components/BlockItemWrapper/Toolbar/ToolbarButton/ToolbarButton.spec.tsx +0 -70
  300. package/src/components/BlockItemWrapper/Toolbar/ToolbarButton/ToolbarButton.tsx +0 -19
  301. package/src/components/BlockItemWrapper/Toolbar/ToolbarButton/index.ts +0 -3
  302. package/src/components/BlockItemWrapper/Toolbar/ToolbarButtonTooltip.tsx +0 -25
  303. package/src/components/BlockItemWrapper/Toolbar/ToolbarSegment.tsx +0 -9
  304. package/src/components/BlockItemWrapper/Toolbar/context/DragPreviewContext.tsx +0 -15
  305. package/src/components/BlockItemWrapper/Toolbar/context/MultiFlyoutContext.tsx +0 -25
  306. package/src/components/BlockItemWrapper/Toolbar/context/index.ts +0 -4
  307. package/src/components/BlockItemWrapper/Toolbar/helpers.ts +0 -33
  308. package/src/components/BlockItemWrapper/Toolbar/hooks/index.ts +0 -3
  309. package/src/components/BlockItemWrapper/Toolbar/hooks/useMultiFlyoutState.spec.tsx +0 -59
  310. package/src/components/BlockItemWrapper/Toolbar/hooks/useMultiFlyoutState.ts +0 -24
  311. package/src/components/BlockItemWrapper/Toolbar/index.ts +0 -10
  312. package/src/components/BlockItemWrapper/Toolbar/types.ts +0 -18
  313. package/src/components/BlockItemWrapper/constants.ts +0 -4
  314. package/src/components/BlockItemWrapper/index.ts +0 -6
  315. package/src/components/BlockItemWrapper/types.ts +0 -24
  316. package/src/components/DownloadButton/DownloadButton.spec.ct.tsx +0 -20
  317. package/src/components/DownloadButton/DownloadButton.tsx +0 -36
  318. package/src/components/DownloadButton/index.ts +0 -3
  319. package/src/components/DownloadButton/types.ts +0 -5
  320. package/src/components/Link/LinkInput.spec.ct.tsx +0 -142
  321. package/src/components/Link/LinkInput.tsx +0 -86
  322. package/src/components/Link/LinkSelector/DocumentLink.tsx +0 -81
  323. package/src/components/Link/LinkSelector/DocumentLinks.tsx +0 -102
  324. package/src/components/Link/LinkSelector/LinkSelector.spec.ct.tsx +0 -196
  325. package/src/components/Link/LinkSelector/LinkSelector.tsx +0 -96
  326. package/src/components/Link/LinkSelector/LoadingIndicator.tsx +0 -11
  327. package/src/components/Link/LinkSelector/PageLink.tsx +0 -96
  328. package/src/components/Link/LinkSelector/PageLinks.tsx +0 -71
  329. package/src/components/Link/LinkSelector/SectionLink.tsx +0 -36
  330. package/src/components/Link/LinkSelector/index.ts +0 -3
  331. package/src/components/Link/index.ts +0 -6
  332. package/src/components/Link/types.ts +0 -6
  333. package/src/components/Link/utils/getUrl.ts +0 -30
  334. package/src/components/Link/utils/index.ts +0 -5
  335. package/src/components/Link/utils/relativeUrlRegex.spec.ts +0 -32
  336. package/src/components/Link/utils/relativeUrlRegex.ts +0 -3
  337. package/src/components/Link/utils/url.spec.ts +0 -75
  338. package/src/components/Link/utils/url.ts +0 -21
  339. package/src/components/RichTextEditor/RichTextEditor.spec.ct.tsx +0 -231
  340. package/src/components/RichTextEditor/RichTextEditor.tsx +0 -62
  341. package/src/components/RichTextEditor/SerializedText.tsx +0 -29
  342. package/src/components/RichTextEditor/constants.ts +0 -3
  343. package/src/components/RichTextEditor/index.ts +0 -6
  344. package/src/components/RichTextEditor/pluginPresets/defaultPluginsWithLinkChooser.tsx +0 -55
  345. package/src/components/RichTextEditor/pluginPresets/index.ts +0 -3
  346. package/src/components/RichTextEditor/plugins/ButtonPlugin/ButtonMarkupElement/ButtonMarkupElementNode.tsx +0 -74
  347. package/src/components/RichTextEditor/plugins/ButtonPlugin/ButtonMarkupElement/index.ts +0 -11
  348. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/ButtonButton.tsx +0 -20
  349. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/ButtonToolbarButton.tsx +0 -56
  350. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/CustomFloatingButton.tsx +0 -19
  351. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/EditButtonModal/EditModal.tsx +0 -42
  352. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/FloatingButton.tsx +0 -37
  353. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/FloatingButtonEditButton.tsx +0 -22
  354. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/FloatingButtonUrlInput.tsx +0 -30
  355. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/InsertButtonModal/InsertButtonModal.tsx +0 -81
  356. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/InsertButtonModal/types.ts +0 -13
  357. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/InsertButtonModal/useInsertModal.ts +0 -143
  358. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/UnlinkButton.tsx +0 -31
  359. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/floatingButtonStore.ts +0 -46
  360. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/index.ts +0 -12
  361. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonEdit.ts +0 -113
  362. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonEnter.ts +0 -21
  363. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonEscape.ts +0 -30
  364. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonInsert.ts +0 -71
  365. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useVirtualFloatingButton.ts +0 -22
  366. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/index.ts +0 -3
  367. package/src/components/RichTextEditor/plugins/ButtonPlugin/createButtonPlugin.ts +0 -118
  368. package/src/components/RichTextEditor/plugins/ButtonPlugin/index.ts +0 -7
  369. package/src/components/RichTextEditor/plugins/ButtonPlugin/transforms/index.ts +0 -8
  370. package/src/components/RichTextEditor/plugins/ButtonPlugin/transforms/insertButton.ts +0 -17
  371. package/src/components/RichTextEditor/plugins/ButtonPlugin/transforms/submitFloatingButton.ts +0 -40
  372. package/src/components/RichTextEditor/plugins/ButtonPlugin/transforms/unwrapButton.ts +0 -68
  373. package/src/components/RichTextEditor/plugins/ButtonPlugin/transforms/upsertButton.ts +0 -198
  374. package/src/components/RichTextEditor/plugins/ButtonPlugin/transforms/upsertButtonText.ts +0 -40
  375. package/src/components/RichTextEditor/plugins/ButtonPlugin/transforms/wrapButton.ts +0 -30
  376. package/src/components/RichTextEditor/plugins/ButtonPlugin/types.ts +0 -13
  377. package/src/components/RichTextEditor/plugins/ButtonPlugin/utils/createButtonNode.ts +0 -28
  378. package/src/components/RichTextEditor/plugins/ButtonPlugin/utils/getButtonStyle.ts +0 -14
  379. package/src/components/RichTextEditor/plugins/ButtonPlugin/utils/getUrl.ts +0 -18
  380. package/src/components/RichTextEditor/plugins/ButtonPlugin/utils/index.ts +0 -8
  381. package/src/components/RichTextEditor/plugins/ButtonPlugin/utils/styles.ts +0 -83
  382. package/src/components/RichTextEditor/plugins/ButtonPlugin/utils/triggerFloatingButton.ts +0 -23
  383. package/src/components/RichTextEditor/plugins/ButtonPlugin/utils/triggerFloatingButtonEdit.ts +0 -30
  384. package/src/components/RichTextEditor/plugins/ButtonPlugin/utils/triggerFloatingButtonInsert.ts +0 -45
  385. package/src/components/RichTextEditor/plugins/ButtonPlugin/withButton.ts +0 -106
  386. package/src/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/CustomFloatingLink.tsx +0 -26
  387. package/src/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/EditLinkModal/EditModal.tsx +0 -43
  388. package/src/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/EditLinkModal/index.ts +0 -4
  389. package/src/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/EditLinkModal/useFloatingLinkEdit.ts +0 -113
  390. package/src/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/FloatingLink.tsx +0 -45
  391. package/src/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/InsertLinkModal.tsx +0 -5
  392. package/src/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/InsertModal.tsx +0 -88
  393. package/src/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/index.ts +0 -4
  394. package/src/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/types.ts +0 -11
  395. package/src/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/useFloatingLinkInsert.ts +0 -73
  396. package/src/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/useInsertModal.ts +0 -136
  397. package/src/components/RichTextEditor/plugins/LinkPlugin/LinkButton.tsx +0 -38
  398. package/src/components/RichTextEditor/plugins/LinkPlugin/LinkMarkupElement/LinkMarkupElementNode.tsx +0 -36
  399. package/src/components/RichTextEditor/plugins/LinkPlugin/LinkMarkupElement/index.ts +0 -11
  400. package/src/components/RichTextEditor/plugins/LinkPlugin/id.ts +0 -3
  401. package/src/components/RichTextEditor/plugins/LinkPlugin/index.ts +0 -49
  402. package/src/components/RichTextEditor/plugins/LinkPlugin/types.ts +0 -12
  403. package/src/components/RichTextEditor/plugins/TextStylePlugins/custom1Plugin.tsx +0 -62
  404. package/src/components/RichTextEditor/plugins/TextStylePlugins/custom2Plugin.tsx +0 -62
  405. package/src/components/RichTextEditor/plugins/TextStylePlugins/custom3Plugin.tsx +0 -63
  406. package/src/components/RichTextEditor/plugins/TextStylePlugins/heading1Plugin.tsx +0 -62
  407. package/src/components/RichTextEditor/plugins/TextStylePlugins/heading2Plugin.tsx +0 -62
  408. package/src/components/RichTextEditor/plugins/TextStylePlugins/heading3Plugin.tsx +0 -62
  409. package/src/components/RichTextEditor/plugins/TextStylePlugins/heading4Plugin.tsx +0 -63
  410. package/src/components/RichTextEditor/plugins/TextStylePlugins/helpers.tsx +0 -44
  411. package/src/components/RichTextEditor/plugins/TextStylePlugins/imageCaptionPlugin.tsx +0 -62
  412. package/src/components/RichTextEditor/plugins/TextStylePlugins/imageTitlePlugin.tsx +0 -62
  413. package/src/components/RichTextEditor/plugins/TextStylePlugins/index.ts +0 -15
  414. package/src/components/RichTextEditor/plugins/TextStylePlugins/paragraphPlugin.tsx +0 -58
  415. package/src/components/RichTextEditor/plugins/TextStylePlugins/quotePlugin.tsx +0 -63
  416. package/src/components/RichTextEditor/plugins/index.ts +0 -6
  417. package/src/components/RichTextEditor/plugins/styles.ts +0 -178
  418. package/src/components/RichTextEditor/types.ts +0 -23
  419. package/src/components/index.ts +0 -8
  420. package/src/helpers/addHttps.spec.ts +0 -42
  421. package/src/helpers/addHttps.ts +0 -15
  422. package/src/helpers/convertToRichTextValue.spec.ts +0 -32
  423. package/src/helpers/convertToRichTextValue.ts +0 -6
  424. package/src/helpers/customCoordinatesGetterFactory.spec.ts +0 -69
  425. package/src/helpers/customCoordinatesGetterFactory.ts +0 -39
  426. package/src/helpers/hasRichTextValue.spec.ts +0 -63
  427. package/src/helpers/hasRichTextValue.ts +0 -29
  428. package/src/helpers/index.ts +0 -8
  429. package/src/helpers/isDownloadable.spec.ts +0 -47
  430. package/src/helpers/isDownloadable.ts +0 -7
  431. package/src/helpers/mapColorPalettes.spec.ts +0 -47
  432. package/src/helpers/mapColorPalettes.ts +0 -65
  433. package/src/hooks/index.ts +0 -4
  434. package/src/hooks/useAttachments.spec.tsx +0 -127
  435. package/src/hooks/useAttachments.tsx +0 -90
  436. package/src/hooks/useDndSensors.spec.ts +0 -40
  437. package/src/hooks/useDndSensors.ts +0 -23
  438. package/src/index.ts +0 -138
  439. package/src/settings/background.spec.ts +0 -173
  440. package/src/settings/background.ts +0 -52
  441. package/src/settings/border.spec.ts +0 -76
  442. package/src/settings/border.ts +0 -90
  443. package/src/settings/borderRadius.spec.ts +0 -30
  444. package/src/settings/borderRadius.ts +0 -73
  445. package/src/settings/borderRadiusExtended.spec.ts +0 -52
  446. package/src/settings/borderRadiusExtended.ts +0 -84
  447. package/src/settings/defaultValues.ts +0 -21
  448. package/src/settings/gutter.spec.ts +0 -60
  449. package/src/settings/gutter.ts +0 -75
  450. package/src/settings/index.ts +0 -14
  451. package/src/settings/margin.spec.ts +0 -42
  452. package/src/settings/margin.ts +0 -72
  453. package/src/settings/marginExtended.spec.ts +0 -45
  454. package/src/settings/marginExtended.ts +0 -91
  455. package/src/settings/padding.spec.ts +0 -42
  456. package/src/settings/padding.ts +0 -73
  457. package/src/settings/paddingExtended.spec.ts +0 -45
  458. package/src/settings/paddingExtended.ts +0 -91
  459. package/src/settings/security.spec.ts +0 -87
  460. package/src/settings/security.ts +0 -61
  461. package/src/settings/securityDownloadable.spec.ts +0 -46
  462. package/src/settings/securityDownloadable.ts +0 -33
  463. package/src/settings/securityGlobalControl.ts +0 -42
  464. package/src/settings/types.ts +0 -128
  465. package/src/styles.css +0 -3
  466. package/src/utilities/color/getReadableColor.spec.ts +0 -32
  467. package/src/utilities/color/getReadableColor.ts +0 -34
  468. package/src/utilities/color/index.ts +0 -10
  469. package/src/utilities/color/isDark.spec.ts +0 -33
  470. package/src/utilities/color/isDark.ts +0 -29
  471. package/src/utilities/color/setAlpha.spec.ts +0 -28
  472. package/src/utilities/color/setAlpha.ts +0 -14
  473. package/src/utilities/color/toColorObject.spec.ts +0 -19
  474. package/src/utilities/color/toColorObject.ts +0 -16
  475. package/src/utilities/color/toHex8String.spec.ts +0 -17
  476. package/src/utilities/color/toHex8String.ts +0 -14
  477. package/src/utilities/color/toHexString.spec.ts +0 -17
  478. package/src/utilities/color/toHexString.ts +0 -10
  479. package/src/utilities/color/toRgbaString.spec.ts +0 -12
  480. package/src/utilities/color/toRgbaString.ts +0 -14
  481. package/src/utilities/color/toShortRgba.spec.ts +0 -16
  482. package/src/utilities/color/toShortRgba.ts +0 -35
  483. package/src/utilities/index.ts +0 -5
  484. package/src/utilities/moveItemInArray.spec.ts +0 -17
  485. package/src/utilities/moveItemInArray.ts +0 -21
  486. package/src/utilities/react/getBackgroundColorStyles.spec.ts +0 -18
  487. package/src/utilities/react/getBackgroundColorStyles.ts +0 -10
  488. package/src/utilities/react/getBorderStyles.spec.ts +0 -39
  489. package/src/utilities/react/getBorderStyles.ts +0 -20
  490. package/src/utilities/react/getRadiusStyles.spec.ts +0 -25
  491. package/src/utilities/react/getRadiusStyles.ts +0 -8
  492. package/src/utilities/react/index.ts +0 -6
  493. package/src/utilities/react/joinClassNames.spec.ts +0 -18
  494. package/src/utilities/react/joinClassNames.ts +0 -10
  495. package/tailwind.config.ts +0 -27
  496. package/tsconfig.json +0 -24
  497. package/tsconfig.node.json +0 -12
  498. package/vite.config.ts +0 -71
@@ -1,56 +0,0 @@
1
- /* (c) Copyright Frontify Ltd., all rights reserved. */
2
-
3
- import { getButtonClassNames, getHotkeyByPlatform, getTooltip } from '@frontify/fondue';
4
- import {
5
- BlockToolbarButtonProps,
6
- ToolbarButton,
7
- focusEditor,
8
- isRangeInSameBlock,
9
- someNode,
10
- useEditorRef,
11
- } from '@udecode/plate';
12
-
13
- import { triggerFloatingButton } from '../utils';
14
-
15
- export interface LinkToolbarButtonProps extends BlockToolbarButtonProps {
16
- /**
17
- * Default onMouseDown is getting the link url by calling this promise before inserting the image.
18
- */
19
- getLinkUrl?: (prevUrl: string | null) => Promise<string | null>;
20
- }
21
-
22
- export const ButtonToolbarButton = ({ type, ...props }: LinkToolbarButtonProps) => {
23
- const editor = useEditorRef();
24
- const isEnabled = !!isRangeInSameBlock(editor, {
25
- at: editor.selection,
26
- });
27
-
28
- const isLink = !!editor?.selection && someNode(editor, { match: { type } });
29
-
30
- return (
31
- <ToolbarButton
32
- tooltip={getTooltip(
33
- isEnabled
34
- ? `Button\n${getHotkeyByPlatform('Ctrl+Shift+K')}`
35
- : 'Buttons can only be set for a single text block.',
36
- )}
37
- classNames={getButtonClassNames(isEnabled)}
38
- active={isLink}
39
- onMouseDown={async (event) => {
40
- if (!editor) {
41
- return;
42
- }
43
-
44
- event.preventDefault();
45
- event.stopPropagation();
46
-
47
- focusEditor(editor, editor.selection ?? editor.prevSelection ?? undefined);
48
-
49
- setTimeout(() => {
50
- triggerFloatingButton(editor, { focused: true });
51
- }, 0);
52
- }}
53
- {...props}
54
- />
55
- );
56
- };
@@ -1,19 +0,0 @@
1
- /* (c) Copyright Frontify Ltd., all rights reserved. */
2
-
3
- import { EditModal } from './EditButtonModal/EditModal';
4
- import { FloatingButton } from './FloatingButton';
5
- import { useFloatingButtonSelectors } from './floatingButtonStore';
6
- import { InsertButtonModal } from './InsertButtonModal/InsertButtonModal';
7
-
8
- export const CustomFloatingButton = () => {
9
- const isEditing = useFloatingButtonSelectors().isEditing();
10
-
11
- const input = <InsertButtonModal />;
12
- const editContent = isEditing ? input : <EditModal />;
13
- return (
14
- <>
15
- <FloatingButton.InsertRoot>{input}</FloatingButton.InsertRoot>
16
- <FloatingButton.EditRoot>{editContent}</FloatingButton.EditRoot>
17
- </>
18
- );
19
- };
@@ -1,42 +0,0 @@
1
- /* (c) Copyright Frontify Ltd., all rights reserved. */
2
-
3
- import { IconPen16, IconTrashBin16 } from '@frontify/fondue';
4
- import { FloatingButton, useFloatingButtonUrlInput } from '..';
5
-
6
- export const EditModal = () => {
7
- const urlHtmlProps = useFloatingButtonUrlInput({});
8
-
9
- return (
10
- <div
11
- data-test-id="floating-button-edit"
12
- className="tw-bg-white tw-text-text tw-rounded tw-shadow tw-p-4 tw-min-w-[400px]"
13
- >
14
- <span data-test-id="preview-button-flyout" className="tw-flex tw-justify-between tw-items-center">
15
- <span className="tw-pointer-events-none">{urlHtmlProps.defaultValue}</span>
16
- <span className="tw-flex tw-gap-2">
17
- <span
18
- role="button"
19
- tabIndex={0}
20
- data-test-id="edit-button-button"
21
- className="tw-transition tw-cursor-pointer tw-rounded hover:tw-bg-black-10 tw-p-1"
22
- >
23
- <FloatingButton.EditButton>
24
- <IconPen16 />
25
- </FloatingButton.EditButton>
26
- </span>
27
-
28
- <span
29
- role="button"
30
- tabIndex={0}
31
- data-test-id="remove-button-button"
32
- className="tw-transition tw-cursor-pointer tw-rounded hover:tw-bg-black-10 tw-p-1"
33
- >
34
- <FloatingButton.UnlinkButton>
35
- <IconTrashBin16 />
36
- </FloatingButton.UnlinkButton>
37
- </span>
38
- </span>
39
- </span>
40
- </div>
41
- );
42
- };
@@ -1,37 +0,0 @@
1
- /* (c) Copyright Frontify Ltd., all rights reserved. */
2
-
3
- import { HTMLPropsAs, UseVirtualFloatingOptions, createComponentAs, createElementAs } from '@udecode/plate';
4
- import { useFloatingButtonEdit } from './useFloatingButtonEdit';
5
- import { useFloatingButtonInsert } from './useFloatingButtonInsert';
6
- import { FloatingButtonEditButton } from './FloatingButtonEditButton';
7
- import { UnlinkButton } from './UnlinkButton';
8
-
9
- export type FloatingButtonProps = HTMLPropsAs<'div'> & {
10
- floatingOptions?: UseVirtualFloatingOptions;
11
- };
12
-
13
- export const FloatingButtonEditRoot = createComponentAs<FloatingButtonProps>((props) => {
14
- const htmlProps = useFloatingButtonEdit(props);
15
-
16
- if (htmlProps.style?.display === 'none') {
17
- return null;
18
- }
19
-
20
- return createElementAs('div', htmlProps);
21
- });
22
-
23
- export const FloatingButtonInsertRoot = createComponentAs<FloatingButtonProps>((props) => {
24
- const htmlProps = useFloatingButtonInsert(props);
25
-
26
- if (htmlProps.style?.display === 'none') {
27
- return null;
28
- }
29
- return createElementAs('div', htmlProps);
30
- });
31
-
32
- export const FloatingButton = {
33
- EditRoot: FloatingButtonEditRoot,
34
- InsertRoot: FloatingButtonInsertRoot,
35
- EditButton: FloatingButtonEditButton,
36
- UnlinkButton,
37
- };
@@ -1,22 +0,0 @@
1
- /* (c) Copyright Frontify Ltd., all rights reserved. */
2
-
3
- import { useCallback } from 'react';
4
- import { AsProps, HTMLPropsAs, createComponentAs, createElementAs, useEditorRef } from '@udecode/plate';
5
- import { triggerFloatingButtonEdit } from '../../utils/triggerFloatingButtonEdit';
6
-
7
- export const useFloatingButtonEditButton = (props: HTMLPropsAs<'button'>): HTMLPropsAs<'button'> => {
8
- const editor = useEditorRef();
9
-
10
- return {
11
- onClick: useCallback(() => {
12
- triggerFloatingButtonEdit(editor);
13
- }, [editor]),
14
- ...props,
15
- };
16
- };
17
-
18
- export const FloatingButtonEditButton = createComponentAs<AsProps<'button'>>((props) => {
19
- const htmlProps = useFloatingButtonEditButton(props);
20
-
21
- return createElementAs('button', htmlProps);
22
- });
@@ -1,30 +0,0 @@
1
- /* (c) Copyright Frontify Ltd., all rights reserved. */
2
-
3
- import { ChangeEventHandler, useCallback, useEffect, useRef } from 'react';
4
- import { HTMLPropsAs, mergeProps, useComposedRef } from '@udecode/plate';
5
- import { floatingButtonActions, floatingButtonSelectors, useFloatingButtonSelectors } from './floatingButtonStore';
6
-
7
- export const useFloatingButtonUrlInput = (props: HTMLPropsAs<'input'>): HTMLPropsAs<'input'> => {
8
- const updated = useFloatingButtonSelectors().updated();
9
- const ref = useRef<HTMLInputElement>(null);
10
-
11
- useEffect(() => {
12
- if (ref.current && updated) {
13
- setTimeout(() => {
14
- ref.current?.focus();
15
- }, 0);
16
- }
17
- }, [updated]);
18
-
19
- const onChange: ChangeEventHandler<HTMLInputElement> = useCallback((e) => {
20
- floatingButtonActions.url(e.target.value);
21
- }, []);
22
-
23
- return mergeProps(
24
- {
25
- onChange,
26
- defaultValue: floatingButtonSelectors.url(),
27
- },
28
- { ...props, ref: useComposedRef<HTMLInputElement>(props.ref, ref) },
29
- );
30
- };
@@ -1,81 +0,0 @@
1
- /* (c) Copyright Frontify Ltd., all rights reserved. */
2
-
3
- import { FormControl } from '@frontify/fondue';
4
- import { CSSProperties, ReactElement, ReactNode, useState } from 'react';
5
- import { InsertModal } from '../../../../LinkPlugin/FloatingLink/InsertLinkModal/InsertModal';
6
- import { useInsertModal } from './useInsertModal';
7
- import { BlockStyles } from '../../../../styles';
8
-
9
- export const InsertButtonModal = () => {
10
- const modalProps = useInsertModal();
11
- const { state, onButtonStyleChange } = modalProps;
12
-
13
- return (
14
- <InsertModal {...modalProps} testId="floating-button-insert">
15
- <div className="tw-pt-5">
16
- <FormControl
17
- label={{
18
- children: 'Button Style',
19
- htmlFor: 'buttonStyle',
20
- required: true,
21
- }}
22
- >
23
- <HoverableButton
24
- id="primary"
25
- styles={BlockStyles.buttonPrimary}
26
- isActive={state.buttonStyle === 'primary'}
27
- onClick={() => onButtonStyleChange('primary')}
28
- >
29
- {state.text || 'Primary Button'}
30
- </HoverableButton>
31
-
32
- <HoverableButton
33
- id="secondary"
34
- styles={BlockStyles.buttonSecondary}
35
- isActive={state.buttonStyle === 'secondary'}
36
- onClick={() => onButtonStyleChange('secondary')}
37
- >
38
- {state.text || 'Secondary Button'}
39
- </HoverableButton>
40
-
41
- <HoverableButton
42
- id="tertiary"
43
- styles={BlockStyles.buttonTertiary}
44
- isActive={state.buttonStyle === 'tertiary'}
45
- onClick={() => onButtonStyleChange('tertiary')}
46
- >
47
- {state.text || 'Tertiary Button'}
48
- </HoverableButton>
49
- </FormControl>
50
- </div>
51
- </InsertModal>
52
- );
53
- };
54
-
55
- type Props = {
56
- id: string;
57
- styles?: CSSProperties & { hover?: CSSProperties };
58
- isActive: boolean;
59
- onClick: () => void;
60
- children: ReactNode;
61
- };
62
-
63
- const HoverableButton = ({ id, styles, isActive, onClick, children }: Props): ReactElement => {
64
- const [hovered, setHovered] = useState(false);
65
- const getStyles = () => (styles && styles.hover && hovered ? { ...styles, ...styles.hover } : styles);
66
-
67
- return (
68
- <button
69
- data-test-id={`floating-button-insert-${id}`}
70
- onMouseEnter={() => setHovered(true)}
71
- onMouseLeave={() => setHovered(false)}
72
- onClick={onClick}
73
- style={{ ...getStyles(), marginTop: 0, marginBottom: 0 }}
74
- className={
75
- isActive ? 'tw-outline tw-outline-1 tw-outline-violet-60 tw-outline-offset-2 tw-w-fit' : 'tw-w-fit'
76
- }
77
- >
78
- {children}
79
- </button>
80
- );
81
- };
@@ -1,13 +0,0 @@
1
- /* (c) Copyright Frontify Ltd., all rights reserved. */
2
-
3
- import { CheckboxState } from '@frontify/fondue';
4
- import { RichTextButtonStyle } from '../../../types';
5
-
6
- export type InsertModalDispatchType = { type: string; payload?: Partial<InsertModalStateProps> };
7
-
8
- export type InsertModalStateProps = {
9
- url: string;
10
- text: string;
11
- buttonStyle: RichTextButtonStyle;
12
- newTab: CheckboxState;
13
- };
@@ -1,143 +0,0 @@
1
- /* (c) Copyright Frontify Ltd., all rights reserved. */
2
-
3
- import { Dispatch, Reducer, useEffect, useReducer } from 'react';
4
- import { getPluginOptions, useEditorRef, useHotkeys } from '@udecode/plate';
5
- import { InsertModalDispatchType, InsertModalStateProps } from './types';
6
- import { floatingButtonActions, floatingButtonSelectors } from '../floatingButtonStore';
7
- import { ELEMENT_BUTTON } from '../../../createButtonPlugin';
8
- import { submitFloatingButton } from '../../../transforms/submitFloatingButton';
9
- import { RichTextButtonStyle } from '../../../types';
10
- import { getButtonStyle } from '../../../utils/getButtonStyle';
11
- import { AppBridgeBlock } from '@frontify/app-bridge';
12
- import { CheckboxState } from '@frontify/fondue';
13
- import { addHttps } from '../../../../../../../helpers';
14
- import { isValidUrlOrEmpty } from '../../../../../../Link/utils/url';
15
-
16
- const initialState: InsertModalStateProps = {
17
- url: '',
18
- text: '',
19
- buttonStyle: 'primary',
20
- newTab: CheckboxState.Unchecked,
21
- };
22
-
23
- export const InsertModalState = (): [InsertModalStateProps, Dispatch<InsertModalDispatchType>] => {
24
- const [state, dispatch] = useReducer<Reducer<InsertModalStateProps, InsertModalDispatchType>>((state, action) => {
25
- const { type, payload } = action;
26
-
27
- switch (type) {
28
- case 'NEW_TAB':
29
- return {
30
- ...state,
31
- newTab: CheckboxState.Checked,
32
- };
33
- case 'SAME_TAB':
34
- return {
35
- ...state,
36
- newTab: CheckboxState.Unchecked,
37
- };
38
- case 'URL':
39
- case 'TEXT':
40
- case 'BUTTON_STYLE':
41
- case 'INIT':
42
- return {
43
- ...state,
44
- ...payload,
45
- };
46
- default:
47
- return state;
48
- }
49
- }, initialState);
50
-
51
- return [state, dispatch];
52
- };
53
-
54
- export const useInsertModal = () => {
55
- const editor = useEditorRef();
56
- const [state, dispatch] = InsertModalState();
57
-
58
- useEffect(() => {
59
- const buttonStyle = getButtonStyle(editor);
60
-
61
- dispatch({
62
- type: 'INIT',
63
- payload: {
64
- text: floatingButtonSelectors.text(),
65
- buttonStyle,
66
- newTab: floatingButtonSelectors.newTab() ? CheckboxState.Checked : CheckboxState.Unchecked,
67
- url: floatingButtonSelectors.url(),
68
- },
69
- });
70
- }, [dispatch, editor]);
71
-
72
- const onTextChange = (value: string) => {
73
- dispatch({
74
- type: 'TEXT',
75
- payload: { text: value },
76
- });
77
- };
78
-
79
- const onButtonStyleChange = (value: RichTextButtonStyle) => {
80
- dispatch({
81
- type: 'BUTTON_STYLE',
82
- payload: { buttonStyle: value },
83
- });
84
- };
85
-
86
- const onUrlChange = (value: string) => {
87
- dispatch({
88
- type: 'URL',
89
- payload: { url: value },
90
- });
91
- };
92
-
93
- const onToggleTab = (checked: boolean) => {
94
- checked ? dispatch({ type: 'NEW_TAB' }) : dispatch({ type: 'SAME_TAB' });
95
- };
96
-
97
- const onCancel = () => {
98
- floatingButtonActions.hide();
99
- };
100
-
101
- const onSave = (event: React.MouseEvent<HTMLButtonElement, MouseEvent> | KeyboardEvent | undefined) => {
102
- if (!isValidUrlOrEmpty(state.url) || !hasValues) {
103
- return;
104
- }
105
-
106
- const urlToSave = addHttps(state.url);
107
-
108
- floatingButtonActions.text(state.text);
109
- floatingButtonActions.url(urlToSave);
110
- floatingButtonActions.buttonStyle(state.buttonStyle);
111
- floatingButtonActions.newTab(state.newTab === CheckboxState.Checked);
112
-
113
- if (submitFloatingButton(editor)) {
114
- event?.preventDefault();
115
- }
116
- };
117
-
118
- const hasValues = state.url !== '' && state.text !== '';
119
-
120
- const { appBridge } = getPluginOptions<{ appBridge: AppBridgeBlock }>(editor, ELEMENT_BUTTON);
121
-
122
- useHotkeys(
123
- 'enter',
124
- onSave,
125
- {
126
- enableOnFormTags: ['INPUT'],
127
- },
128
- [],
129
- );
130
-
131
- return {
132
- state,
133
- onTextChange,
134
- onButtonStyleChange,
135
- onUrlChange,
136
- onToggleTab,
137
- onCancel,
138
- onSave,
139
- hasValues,
140
- isValidUrlOrEmpty,
141
- appBridge,
142
- };
143
- };
@@ -1,31 +0,0 @@
1
- /* (c) Copyright Frontify Ltd., all rights reserved. */
2
-
3
- import { useCallback } from 'react';
4
- import {
5
- AsProps,
6
- Button,
7
- HTMLPropsAs,
8
- createComponentAs,
9
- createElementAs,
10
- focusEditor,
11
- useEditorRef,
12
- } from '@udecode/plate';
13
- import { unwrapButton } from '../../transforms/index';
14
-
15
- export const useUnlinkButton = (props: HTMLPropsAs<'button'>): HTMLPropsAs<'button'> => {
16
- const editor = useEditorRef();
17
-
18
- return {
19
- onClick: useCallback(() => {
20
- unwrapButton(editor);
21
- focusEditor(editor, editor.selection ?? undefined);
22
- }, [editor]),
23
- ...props,
24
- };
25
- };
26
-
27
- export const UnlinkButton = createComponentAs<AsProps<'button'>>((props) => {
28
- const htmlProps = useUnlinkButton(props);
29
-
30
- return createElementAs(Button, htmlProps);
31
- });
@@ -1,46 +0,0 @@
1
- /* (c) Copyright Frontify Ltd., all rights reserved. */
2
-
3
- import { createStore } from '@udecode/plate';
4
- import { RichTextButtonStyle } from '../../types';
5
-
6
- export type FloatingButtonMode = '' | 'insert' | 'edit';
7
-
8
- export const floatingButtonStore: any = createStore('floatingButton')({
9
- openEditorId: null as null | string,
10
- mouseDown: false,
11
- updated: false,
12
- url: '',
13
- text: '',
14
- buttonStyle: 'primary' as RichTextButtonStyle,
15
- newTab: false,
16
- mode: '' as FloatingButtonMode,
17
- isEditing: false,
18
- })
19
- .extendActions((set) => ({
20
- reset: () => {
21
- set.url('');
22
- set.text('');
23
- set.buttonStyle('primary');
24
- set.newTab(false);
25
- set.mode('');
26
- set.isEditing(false);
27
- },
28
- }))
29
- .extendActions((set) => ({
30
- show: (mode: FloatingButtonMode, editorId: string) => {
31
- set.mode(mode);
32
- set.isEditing(false);
33
- set.openEditorId(editorId);
34
- },
35
- hide: () => {
36
- set.reset();
37
- set.openEditorId(null);
38
- },
39
- }))
40
- .extendSelectors((state) => ({
41
- isOpen: (editorId: string) => state.openEditorId === editorId,
42
- }));
43
-
44
- export const floatingButtonActions = floatingButtonStore.set;
45
- export const floatingButtonSelectors = floatingButtonStore.get;
46
- export const useFloatingButtonSelectors = () => floatingButtonStore.use;
@@ -1,12 +0,0 @@
1
- /* (c) Copyright Frontify Ltd., all rights reserved. */
2
-
3
- export * from './FloatingButton';
4
- export * from './FloatingButtonEditButton';
5
- export * from './FloatingButtonUrlInput';
6
- export * from './UnlinkButton';
7
- export * from './floatingButtonStore';
8
- export * from './useFloatingButtonEdit';
9
- export * from './useFloatingButtonEnter';
10
- export * from './useFloatingButtonEscape';
11
- export * from './useFloatingButtonInsert';
12
- export * from './useVirtualFloatingButton';
@@ -1,113 +0,0 @@
1
- /* (c) Copyright Frontify Ltd., all rights reserved. */
2
-
3
- import {
4
- HTMLPropsAs,
5
- getAboveNode,
6
- getDefaultBoundingClientRect,
7
- getEndPoint,
8
- getPluginOptions,
9
- getPluginType,
10
- getRangeBoundingClientRect,
11
- getStartPoint,
12
- someNode,
13
- useComposedRef,
14
- useEditorRef,
15
- useHotkeys,
16
- usePlateSelectors,
17
- } from '@udecode/plate';
18
- import { useCallback, useEffect } from 'react';
19
- import { ButtonPlugin, ELEMENT_BUTTON } from '../../createButtonPlugin';
20
- import { getUrlFromEditor } from '../../utils';
21
- import { triggerFloatingButtonEdit } from '../../utils/triggerFloatingButtonEdit';
22
- import {
23
- FloatingButtonProps,
24
- floatingButtonActions,
25
- floatingButtonSelectors,
26
- useFloatingButtonEnter,
27
- useFloatingButtonEscape,
28
- useFloatingButtonSelectors,
29
- useVirtualFloatingButton,
30
- } from '.';
31
-
32
- export const useFloatingButtonEdit = ({ floatingOptions, ...props }: FloatingButtonProps): HTMLPropsAs<'div'> => {
33
- const editor = useEditorRef();
34
- const keyEditor = usePlateSelectors(editor.id).keyEditor();
35
- const mode = useFloatingButtonSelectors().mode();
36
- const open = useFloatingButtonSelectors().isOpen(editor.id);
37
-
38
- const { triggerFloatingButtonHotkeys } = getPluginOptions<ButtonPlugin>(editor, ELEMENT_BUTTON);
39
-
40
- const getBoundingClientRect = useCallback(() => {
41
- const entry = getAboveNode(editor, {
42
- match: { type: getPluginType(editor, ELEMENT_BUTTON) },
43
- });
44
-
45
- if (entry) {
46
- const [, path] = entry;
47
- return getRangeBoundingClientRect(editor, {
48
- anchor: getStartPoint(editor, path),
49
- focus: getEndPoint(editor, path),
50
- });
51
- }
52
-
53
- return getDefaultBoundingClientRect();
54
- }, [editor]);
55
-
56
- const isOpen = open && mode === 'edit';
57
-
58
- const { update, style, floating } = useVirtualFloatingButton({
59
- open: isOpen,
60
- getBoundingClientRect,
61
- ...floatingOptions,
62
- });
63
-
64
- useEffect(() => {
65
- const url = getUrlFromEditor(editor);
66
- if (url) {
67
- floatingButtonActions.url(url);
68
- }
69
-
70
- if (
71
- editor.selection &&
72
- someNode(editor, {
73
- match: { type: getPluginType(editor, ELEMENT_BUTTON) },
74
- })
75
- ) {
76
- floatingButtonActions.show('edit', editor.id);
77
- update();
78
- return;
79
- }
80
-
81
- if (floatingButtonSelectors.mode() === 'edit') {
82
- floatingButtonActions.hide();
83
- }
84
- }, [editor, keyEditor, update]);
85
-
86
- useHotkeys(
87
- triggerFloatingButtonHotkeys,
88
- (e) => {
89
- e.preventDefault();
90
-
91
- if (floatingButtonSelectors.mode() === 'edit') {
92
- triggerFloatingButtonEdit(editor);
93
- }
94
- },
95
- {
96
- enableOnContentEditable: true,
97
- },
98
- [],
99
- );
100
-
101
- useFloatingButtonEnter();
102
-
103
- useFloatingButtonEscape();
104
-
105
- return {
106
- style: {
107
- ...style,
108
- zIndex: 1000,
109
- },
110
- ...props,
111
- ref: useComposedRef<HTMLElement | null>(props.ref, floating),
112
- };
113
- };
@@ -1,21 +0,0 @@
1
- /* (c) Copyright Frontify Ltd., all rights reserved. */
2
-
3
- import { useEditorRef, useHotkeys } from '@udecode/plate';
4
- import { submitFloatingButton } from '../../transforms/submitFloatingButton';
5
-
6
- export const useFloatingButtonEnter = () => {
7
- const editor = useEditorRef();
8
-
9
- useHotkeys(
10
- '*',
11
- (e) => {
12
- if (e.key === 'Enter' && submitFloatingButton(editor)) {
13
- e.preventDefault();
14
- }
15
- },
16
- {
17
- enableOnFormTags: ['INPUT'],
18
- },
19
- [],
20
- );
21
- };