@frontify/guideline-blocks-settings 0.33.4 → 0.33.5

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 (508) 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 +78 -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 +54 -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 +17 -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 +30 -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 +16 -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 +43 -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/FloatingButton.es.js +25 -0
  88. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/FloatingButton.es.js.map +1 -0
  89. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/FloatingButtonEditButton.es.js +20 -0
  90. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/FloatingButtonEditButton.es.js.map +1 -0
  91. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/FloatingButtonUrlInput.es.js +26 -0
  92. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/FloatingButtonUrlInput.es.js.map +1 -0
  93. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/InsertButtonModal/InsertButtonModal.es.js +69 -0
  94. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/InsertButtonModal/InsertButtonModal.es.js.map +1 -0
  95. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/InsertButtonModal/useInsertModal.es.js +105 -0
  96. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/InsertButtonModal/useInsertModal.es.js.map +1 -0
  97. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/UnlinkButton.es.js +20 -0
  98. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/UnlinkButton.es.js.map +1 -0
  99. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/floatingButtonStore.es.js +32 -0
  100. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/floatingButtonStore.es.js.map +1 -0
  101. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonEdit.es.js +58 -0
  102. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonEdit.es.js.map +1 -0
  103. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonEnter.es.js +19 -0
  104. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonEnter.es.js.map +1 -0
  105. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonEscape.es.js +26 -0
  106. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonEscape.es.js.map +1 -0
  107. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonInsert.es.js +43 -0
  108. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonInsert.es.js.map +1 -0
  109. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useVirtualFloatingButton.es.js +18 -0
  110. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useVirtualFloatingButton.es.js.map +1 -0
  111. package/dist/components/RichTextEditor/plugins/ButtonPlugin/createButtonPlugin.es.js +68 -0
  112. package/dist/components/RichTextEditor/plugins/ButtonPlugin/createButtonPlugin.es.js.map +1 -0
  113. package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/insertButton.es.js +13 -0
  114. package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/insertButton.es.js.map +1 -0
  115. package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/submitFloatingButton.es.js +25 -0
  116. package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/submitFloatingButton.es.js.map +1 -0
  117. package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/unwrapButton.es.js +35 -0
  118. package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/unwrapButton.es.js.map +1 -0
  119. package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/upsertButton.es.js +86 -0
  120. package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/upsertButton.es.js.map +1 -0
  121. package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/upsertButtonText.es.js +24 -0
  122. package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/upsertButtonText.es.js.map +1 -0
  123. package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/wrapButton.es.js +19 -0
  124. package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/wrapButton.es.js.map +1 -0
  125. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/createButtonNode.es.js +13 -0
  126. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/createButtonNode.es.js.map +1 -0
  127. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/getButtonStyle.es.js +11 -0
  128. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/getButtonStyle.es.js.map +1 -0
  129. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/getUrl.es.js +10 -0
  130. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/getUrl.es.js.map +1 -0
  131. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/styles.es.js +81 -0
  132. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/styles.es.js.map +1 -0
  133. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/triggerFloatingButton.es.js +18 -0
  134. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/triggerFloatingButton.es.js.map +1 -0
  135. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/triggerFloatingButtonEdit.es.js +17 -0
  136. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/triggerFloatingButtonEdit.es.js.map +1 -0
  137. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/triggerFloatingButtonInsert.es.js +14 -0
  138. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/triggerFloatingButtonInsert.es.js.map +1 -0
  139. package/dist/components/RichTextEditor/plugins/ButtonPlugin/withButton.es.js +53 -0
  140. package/dist/components/RichTextEditor/plugins/ButtonPlugin/withButton.es.js.map +1 -0
  141. package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/CustomFloatingLink.es.js +19 -0
  142. package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/CustomFloatingLink.es.js.map +1 -0
  143. package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/EditLinkModal/EditModal.es.js +43 -0
  144. package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/EditLinkModal/EditModal.es.js.map +1 -0
  145. package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/EditLinkModal/useFloatingLinkEdit.es.js +53 -0
  146. package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/EditLinkModal/useFloatingLinkEdit.es.js.map +1 -0
  147. package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/FloatingLink.es.js +29 -0
  148. package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/FloatingLink.es.js.map +1 -0
  149. package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/InsertLinkModal.es.js +8 -0
  150. package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/InsertLinkModal.es.js.map +1 -0
  151. package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/InsertModal.es.js +66 -0
  152. package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/InsertModal.es.js.map +1 -0
  153. package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/useFloatingLinkInsert.es.js +40 -0
  154. package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/useFloatingLinkInsert.es.js.map +1 -0
  155. package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/useInsertModal.es.js +93 -0
  156. package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/useInsertModal.es.js.map +1 -0
  157. package/dist/components/RichTextEditor/plugins/LinkPlugin/LinkButton.es.js +25 -0
  158. package/dist/components/RichTextEditor/plugins/LinkPlugin/LinkButton.es.js.map +1 -0
  159. package/dist/components/RichTextEditor/plugins/LinkPlugin/LinkMarkupElement/LinkMarkupElementNode.es.js +27 -0
  160. package/dist/components/RichTextEditor/plugins/LinkPlugin/LinkMarkupElement/LinkMarkupElementNode.es.js.map +1 -0
  161. package/dist/components/RichTextEditor/plugins/LinkPlugin/LinkMarkupElement/index.es.js +12 -0
  162. package/dist/components/RichTextEditor/plugins/LinkPlugin/LinkMarkupElement/index.es.js.map +1 -0
  163. package/dist/components/RichTextEditor/plugins/LinkPlugin/id.es.js +5 -0
  164. package/dist/components/RichTextEditor/plugins/LinkPlugin/id.es.js.map +1 -0
  165. package/dist/components/RichTextEditor/plugins/LinkPlugin/index.es.js +45 -0
  166. package/dist/components/RichTextEditor/plugins/LinkPlugin/index.es.js.map +1 -0
  167. package/dist/components/RichTextEditor/plugins/TextStylePlugins/custom1Plugin.es.js +51 -0
  168. package/dist/components/RichTextEditor/plugins/TextStylePlugins/custom1Plugin.es.js.map +1 -0
  169. package/dist/components/RichTextEditor/plugins/TextStylePlugins/custom2Plugin.es.js +51 -0
  170. package/dist/components/RichTextEditor/plugins/TextStylePlugins/custom2Plugin.es.js.map +1 -0
  171. package/dist/components/RichTextEditor/plugins/TextStylePlugins/custom3Plugin.es.js +51 -0
  172. package/dist/components/RichTextEditor/plugins/TextStylePlugins/custom3Plugin.es.js.map +1 -0
  173. package/dist/components/RichTextEditor/plugins/TextStylePlugins/heading1Plugin.es.js +52 -0
  174. package/dist/components/RichTextEditor/plugins/TextStylePlugins/heading1Plugin.es.js.map +1 -0
  175. package/dist/components/RichTextEditor/plugins/TextStylePlugins/heading2Plugin.es.js +52 -0
  176. package/dist/components/RichTextEditor/plugins/TextStylePlugins/heading2Plugin.es.js.map +1 -0
  177. package/dist/components/RichTextEditor/plugins/TextStylePlugins/heading3Plugin.es.js +52 -0
  178. package/dist/components/RichTextEditor/plugins/TextStylePlugins/heading3Plugin.es.js.map +1 -0
  179. package/dist/components/RichTextEditor/plugins/TextStylePlugins/heading4Plugin.es.js +52 -0
  180. package/dist/components/RichTextEditor/plugins/TextStylePlugins/heading4Plugin.es.js.map +1 -0
  181. package/dist/components/RichTextEditor/plugins/TextStylePlugins/helpers.es.js +40 -0
  182. package/dist/components/RichTextEditor/plugins/TextStylePlugins/helpers.es.js.map +1 -0
  183. package/dist/components/RichTextEditor/plugins/TextStylePlugins/imageCaptionPlugin.es.js +52 -0
  184. package/dist/components/RichTextEditor/plugins/TextStylePlugins/imageCaptionPlugin.es.js.map +1 -0
  185. package/dist/components/RichTextEditor/plugins/TextStylePlugins/imageTitlePlugin.es.js +52 -0
  186. package/dist/components/RichTextEditor/plugins/TextStylePlugins/imageTitlePlugin.es.js.map +1 -0
  187. package/dist/components/RichTextEditor/plugins/TextStylePlugins/paragraphPlugin.es.js +46 -0
  188. package/dist/components/RichTextEditor/plugins/TextStylePlugins/paragraphPlugin.es.js.map +1 -0
  189. package/dist/components/RichTextEditor/plugins/TextStylePlugins/quotePlugin.es.js +54 -0
  190. package/dist/components/RichTextEditor/plugins/TextStylePlugins/quotePlugin.es.js.map +1 -0
  191. package/dist/components/RichTextEditor/plugins/styles.es.js +167 -0
  192. package/dist/components/RichTextEditor/plugins/styles.es.js.map +1 -0
  193. package/dist/helpers/addHttps.es.js +14 -0
  194. package/dist/helpers/addHttps.es.js.map +1 -0
  195. package/dist/helpers/convertToRichTextValue.es.js +6 -0
  196. package/dist/helpers/convertToRichTextValue.es.js.map +1 -0
  197. package/dist/helpers/customCoordinatesGetterFactory.es.js +32 -0
  198. package/dist/helpers/customCoordinatesGetterFactory.es.js.map +1 -0
  199. package/dist/helpers/hasRichTextValue.es.js +15 -0
  200. package/dist/helpers/hasRichTextValue.es.js.map +1 -0
  201. package/dist/helpers/isDownloadable.es.js +6 -0
  202. package/dist/helpers/isDownloadable.es.js.map +1 -0
  203. package/dist/helpers/mapColorPalettes.es.js +28 -0
  204. package/dist/helpers/mapColorPalettes.es.js.map +1 -0
  205. package/dist/hooks/useAttachments.es.js +53 -0
  206. package/dist/hooks/useAttachments.es.js.map +1 -0
  207. package/dist/hooks/useDndSensors.es.js +20 -0
  208. package/dist/hooks/useDndSensors.es.js.map +1 -0
  209. package/dist/index.cjs.js +4 -0
  210. package/dist/index.cjs.js.map +1 -0
  211. package/dist/index.d.ts +1193 -0
  212. package/dist/index.es.js +217 -0
  213. package/dist/index.es.js.map +1 -0
  214. package/dist/index.umd.js +4 -0
  215. package/dist/index.umd.js.map +1 -0
  216. package/dist/settings/background.es.js +22 -0
  217. package/dist/settings/background.es.js.map +1 -0
  218. package/dist/settings/border.es.js +61 -0
  219. package/dist/settings/border.es.js.map +1 -0
  220. package/dist/settings/borderRadius.es.js +56 -0
  221. package/dist/settings/borderRadius.es.js.map +1 -0
  222. package/dist/settings/borderRadiusExtended.es.js +64 -0
  223. package/dist/settings/borderRadiusExtended.es.js.map +1 -0
  224. package/dist/settings/defaultValues.es.js +19 -0
  225. package/dist/settings/defaultValues.es.js.map +1 -0
  226. package/dist/settings/gutter.es.js +56 -0
  227. package/dist/settings/gutter.es.js.map +1 -0
  228. package/dist/settings/margin.es.js +53 -0
  229. package/dist/settings/margin.es.js.map +1 -0
  230. package/dist/settings/marginExtended.es.js +65 -0
  231. package/dist/settings/marginExtended.es.js.map +1 -0
  232. package/dist/settings/padding.es.js +53 -0
  233. package/dist/settings/padding.es.js.map +1 -0
  234. package/dist/settings/paddingExtended.es.js +65 -0
  235. package/dist/settings/paddingExtended.es.js.map +1 -0
  236. package/dist/settings/securityDownloadable.es.js +19 -0
  237. package/dist/settings/securityDownloadable.es.js.map +1 -0
  238. package/dist/settings/securityGlobalControl.es.js +33 -0
  239. package/dist/settings/securityGlobalControl.es.js.map +1 -0
  240. package/dist/settings/types.es.js +48 -0
  241. package/dist/settings/types.es.js.map +1 -0
  242. package/dist/styles.css +1 -0
  243. package/dist/styles.css.es.js +2 -0
  244. package/dist/styles.css.es.js.map +1 -0
  245. package/dist/utilities/color/getReadableColor.es.js +14 -0
  246. package/dist/utilities/color/getReadableColor.es.js.map +1 -0
  247. package/dist/utilities/color/isDark.es.js +10 -0
  248. package/dist/utilities/color/isDark.es.js.map +1 -0
  249. package/dist/utilities/color/setAlpha.es.js +6 -0
  250. package/dist/utilities/color/setAlpha.es.js.map +1 -0
  251. package/dist/utilities/color/toColorObject.es.js +9 -0
  252. package/dist/utilities/color/toColorObject.es.js.map +1 -0
  253. package/dist/utilities/color/toHex8String.es.js +7 -0
  254. package/dist/utilities/color/toHex8String.es.js.map +1 -0
  255. package/dist/utilities/color/toHexString.es.js +7 -0
  256. package/dist/utilities/color/toHexString.es.js.map +1 -0
  257. package/dist/utilities/color/toRgbaString.es.js +7 -0
  258. package/dist/utilities/color/toRgbaString.es.js.map +1 -0
  259. package/dist/utilities/color/toShortRgba.es.js +11 -0
  260. package/dist/utilities/color/toShortRgba.es.js.map +1 -0
  261. package/dist/utilities/moveItemInArray.es.js +12 -0
  262. package/dist/utilities/moveItemInArray.es.js.map +1 -0
  263. package/dist/utilities/react/getBackgroundColorStyles.es.js +8 -0
  264. package/dist/utilities/react/getBackgroundColorStyles.es.js.map +1 -0
  265. package/dist/utilities/react/getBorderStyles.es.js +12 -0
  266. package/dist/utilities/react/getBorderStyles.es.js.map +1 -0
  267. package/dist/utilities/react/getRadiusStyles.es.js +8 -0
  268. package/dist/utilities/react/getRadiusStyles.es.js.map +1 -0
  269. package/dist/utilities/react/joinClassNames.es.js +5 -0
  270. package/dist/utilities/react/joinClassNames.es.js.map +1 -0
  271. package/package.json +8 -2
  272. package/.eslintrc.cjs +0 -27
  273. package/.prettierrc +0 -7
  274. package/CHANGELOG.md +0 -787
  275. package/postcss.config.cjs +0 -8
  276. package/setupTests.ts +0 -23
  277. package/src/components/Attachments/AttachmentItem.tsx +0 -247
  278. package/src/components/Attachments/Attachments.spec.ct.tsx +0 -165
  279. package/src/components/Attachments/Attachments.tsx +0 -241
  280. package/src/components/Attachments/AttachmentsButtonTrigger.tsx +0 -30
  281. package/src/components/Attachments/index.ts +0 -4
  282. package/src/components/Attachments/types.ts +0 -40
  283. package/src/components/BlockInjectButton/BlockInjectButton.spec.ct.tsx +0 -48
  284. package/src/components/BlockInjectButton/BlockInjectButton.tsx +0 -212
  285. package/src/components/BlockInjectButton/index.ts +0 -4
  286. package/src/components/BlockInjectButton/types.ts +0 -18
  287. package/src/components/BlockItemWrapper/BlockItemWrapper.spec.ct.tsx +0 -145
  288. package/src/components/BlockItemWrapper/BlockItemWrapper.tsx +0 -76
  289. package/src/components/BlockItemWrapper/Toolbar/AttachmentsToolbarButton/AttachmentsToolbarButton.spec.tsx +0 -96
  290. package/src/components/BlockItemWrapper/Toolbar/AttachmentsToolbarButton/AttachmentsToolbarButton.tsx +0 -42
  291. package/src/components/BlockItemWrapper/Toolbar/AttachmentsToolbarButton/AttachmentsToolbarButtonTrigger.spec.tsx +0 -44
  292. package/src/components/BlockItemWrapper/Toolbar/AttachmentsToolbarButton/AttachmentsToolbarButtonTrigger.tsx +0 -24
  293. package/src/components/BlockItemWrapper/Toolbar/AttachmentsToolbarButton/index.ts +0 -3
  294. package/src/components/BlockItemWrapper/Toolbar/BaseToolbarButton.spec.tsx +0 -40
  295. package/src/components/BlockItemWrapper/Toolbar/BaseToolbarButton.tsx +0 -37
  296. package/src/components/BlockItemWrapper/Toolbar/DragHandleToolbarButton/DragHandleToolbarButton.spec.tsx +0 -89
  297. package/src/components/BlockItemWrapper/Toolbar/DragHandleToolbarButton/DragHandleToolbarButton.tsx +0 -40
  298. package/src/components/BlockItemWrapper/Toolbar/DragHandleToolbarButton/index.ts +0 -3
  299. package/src/components/BlockItemWrapper/Toolbar/FlyoutToolbarButton/FlyoutToolbarButton.spec.tsx +0 -140
  300. package/src/components/BlockItemWrapper/Toolbar/FlyoutToolbarButton/FlyoutToolbarButton.tsx +0 -61
  301. package/src/components/BlockItemWrapper/Toolbar/FlyoutToolbarButton/index.ts +0 -3
  302. package/src/components/BlockItemWrapper/Toolbar/MenuToolbarButton/MenuToolbarButton.spec.tsx +0 -77
  303. package/src/components/BlockItemWrapper/Toolbar/MenuToolbarButton/MenuToolbarButton.tsx +0 -30
  304. package/src/components/BlockItemWrapper/Toolbar/MenuToolbarButton/ToolbarFlyoutMenu.spec.tsx +0 -63
  305. package/src/components/BlockItemWrapper/Toolbar/MenuToolbarButton/ToolbarFlyoutMenu.tsx +0 -40
  306. package/src/components/BlockItemWrapper/Toolbar/MenuToolbarButton/index.ts +0 -4
  307. package/src/components/BlockItemWrapper/Toolbar/Toolbar.spec.tsx +0 -259
  308. package/src/components/BlockItemWrapper/Toolbar/Toolbar.tsx +0 -36
  309. package/src/components/BlockItemWrapper/Toolbar/ToolbarButton/ToolbarButton.spec.tsx +0 -70
  310. package/src/components/BlockItemWrapper/Toolbar/ToolbarButton/ToolbarButton.tsx +0 -19
  311. package/src/components/BlockItemWrapper/Toolbar/ToolbarButton/index.ts +0 -3
  312. package/src/components/BlockItemWrapper/Toolbar/ToolbarButtonTooltip.tsx +0 -25
  313. package/src/components/BlockItemWrapper/Toolbar/ToolbarSegment.tsx +0 -9
  314. package/src/components/BlockItemWrapper/Toolbar/context/DragPreviewContext.tsx +0 -15
  315. package/src/components/BlockItemWrapper/Toolbar/context/MultiFlyoutContext.tsx +0 -25
  316. package/src/components/BlockItemWrapper/Toolbar/context/index.ts +0 -4
  317. package/src/components/BlockItemWrapper/Toolbar/helpers.ts +0 -33
  318. package/src/components/BlockItemWrapper/Toolbar/hooks/index.ts +0 -3
  319. package/src/components/BlockItemWrapper/Toolbar/hooks/useMultiFlyoutState.spec.tsx +0 -59
  320. package/src/components/BlockItemWrapper/Toolbar/hooks/useMultiFlyoutState.ts +0 -24
  321. package/src/components/BlockItemWrapper/Toolbar/index.ts +0 -10
  322. package/src/components/BlockItemWrapper/Toolbar/types.ts +0 -18
  323. package/src/components/BlockItemWrapper/constants.ts +0 -4
  324. package/src/components/BlockItemWrapper/index.ts +0 -6
  325. package/src/components/BlockItemWrapper/types.ts +0 -24
  326. package/src/components/DownloadButton/DownloadButton.spec.ct.tsx +0 -20
  327. package/src/components/DownloadButton/DownloadButton.tsx +0 -36
  328. package/src/components/DownloadButton/index.ts +0 -3
  329. package/src/components/DownloadButton/types.ts +0 -5
  330. package/src/components/Link/LinkInput.spec.ct.tsx +0 -142
  331. package/src/components/Link/LinkInput.tsx +0 -86
  332. package/src/components/Link/LinkSelector/DocumentLink.tsx +0 -81
  333. package/src/components/Link/LinkSelector/DocumentLinks.tsx +0 -102
  334. package/src/components/Link/LinkSelector/LinkSelector.spec.ct.tsx +0 -196
  335. package/src/components/Link/LinkSelector/LinkSelector.tsx +0 -96
  336. package/src/components/Link/LinkSelector/LoadingIndicator.tsx +0 -11
  337. package/src/components/Link/LinkSelector/PageLink.tsx +0 -96
  338. package/src/components/Link/LinkSelector/PageLinks.tsx +0 -71
  339. package/src/components/Link/LinkSelector/SectionLink.tsx +0 -36
  340. package/src/components/Link/LinkSelector/index.ts +0 -3
  341. package/src/components/Link/index.ts +0 -6
  342. package/src/components/Link/types.ts +0 -6
  343. package/src/components/Link/utils/getUrl.ts +0 -30
  344. package/src/components/Link/utils/index.ts +0 -5
  345. package/src/components/Link/utils/relativeUrlRegex.spec.ts +0 -32
  346. package/src/components/Link/utils/relativeUrlRegex.ts +0 -3
  347. package/src/components/Link/utils/url.spec.ts +0 -75
  348. package/src/components/Link/utils/url.ts +0 -21
  349. package/src/components/RichTextEditor/RichTextEditor.spec.ct.tsx +0 -231
  350. package/src/components/RichTextEditor/RichTextEditor.tsx +0 -62
  351. package/src/components/RichTextEditor/SerializedText.tsx +0 -29
  352. package/src/components/RichTextEditor/constants.ts +0 -3
  353. package/src/components/RichTextEditor/index.ts +0 -6
  354. package/src/components/RichTextEditor/pluginPresets/defaultPluginsWithLinkChooser.tsx +0 -55
  355. package/src/components/RichTextEditor/pluginPresets/index.ts +0 -3
  356. package/src/components/RichTextEditor/plugins/ButtonPlugin/ButtonMarkupElement/ButtonMarkupElementNode.tsx +0 -74
  357. package/src/components/RichTextEditor/plugins/ButtonPlugin/ButtonMarkupElement/index.ts +0 -11
  358. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/ButtonButton.tsx +0 -20
  359. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/ButtonToolbarButton.tsx +0 -56
  360. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/CustomFloatingButton.tsx +0 -19
  361. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/EditButtonModal/EditModal.tsx +0 -42
  362. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/FloatingButton.tsx +0 -37
  363. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/FloatingButtonEditButton.tsx +0 -22
  364. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/FloatingButtonUrlInput.tsx +0 -30
  365. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/InsertButtonModal/InsertButtonModal.tsx +0 -81
  366. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/InsertButtonModal/types.ts +0 -13
  367. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/InsertButtonModal/useInsertModal.ts +0 -143
  368. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/UnlinkButton.tsx +0 -31
  369. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/floatingButtonStore.ts +0 -46
  370. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/index.ts +0 -12
  371. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonEdit.ts +0 -113
  372. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonEnter.ts +0 -21
  373. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonEscape.ts +0 -30
  374. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonInsert.ts +0 -71
  375. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useVirtualFloatingButton.ts +0 -22
  376. package/src/components/RichTextEditor/plugins/ButtonPlugin/components/index.ts +0 -3
  377. package/src/components/RichTextEditor/plugins/ButtonPlugin/createButtonPlugin.ts +0 -118
  378. package/src/components/RichTextEditor/plugins/ButtonPlugin/index.ts +0 -7
  379. package/src/components/RichTextEditor/plugins/ButtonPlugin/transforms/index.ts +0 -8
  380. package/src/components/RichTextEditor/plugins/ButtonPlugin/transforms/insertButton.ts +0 -17
  381. package/src/components/RichTextEditor/plugins/ButtonPlugin/transforms/submitFloatingButton.ts +0 -40
  382. package/src/components/RichTextEditor/plugins/ButtonPlugin/transforms/unwrapButton.ts +0 -68
  383. package/src/components/RichTextEditor/plugins/ButtonPlugin/transforms/upsertButton.ts +0 -198
  384. package/src/components/RichTextEditor/plugins/ButtonPlugin/transforms/upsertButtonText.ts +0 -40
  385. package/src/components/RichTextEditor/plugins/ButtonPlugin/transforms/wrapButton.ts +0 -30
  386. package/src/components/RichTextEditor/plugins/ButtonPlugin/types.ts +0 -13
  387. package/src/components/RichTextEditor/plugins/ButtonPlugin/utils/createButtonNode.ts +0 -28
  388. package/src/components/RichTextEditor/plugins/ButtonPlugin/utils/getButtonStyle.ts +0 -14
  389. package/src/components/RichTextEditor/plugins/ButtonPlugin/utils/getUrl.ts +0 -18
  390. package/src/components/RichTextEditor/plugins/ButtonPlugin/utils/index.ts +0 -8
  391. package/src/components/RichTextEditor/plugins/ButtonPlugin/utils/styles.ts +0 -83
  392. package/src/components/RichTextEditor/plugins/ButtonPlugin/utils/triggerFloatingButton.ts +0 -23
  393. package/src/components/RichTextEditor/plugins/ButtonPlugin/utils/triggerFloatingButtonEdit.ts +0 -30
  394. package/src/components/RichTextEditor/plugins/ButtonPlugin/utils/triggerFloatingButtonInsert.ts +0 -45
  395. package/src/components/RichTextEditor/plugins/ButtonPlugin/withButton.ts +0 -106
  396. package/src/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/CustomFloatingLink.tsx +0 -26
  397. package/src/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/EditLinkModal/EditModal.tsx +0 -43
  398. package/src/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/EditLinkModal/index.ts +0 -4
  399. package/src/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/EditLinkModal/useFloatingLinkEdit.ts +0 -113
  400. package/src/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/FloatingLink.tsx +0 -45
  401. package/src/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/InsertLinkModal.tsx +0 -5
  402. package/src/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/InsertModal.tsx +0 -88
  403. package/src/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/index.ts +0 -4
  404. package/src/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/types.ts +0 -11
  405. package/src/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/useFloatingLinkInsert.ts +0 -73
  406. package/src/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/useInsertModal.ts +0 -136
  407. package/src/components/RichTextEditor/plugins/LinkPlugin/LinkButton.tsx +0 -38
  408. package/src/components/RichTextEditor/plugins/LinkPlugin/LinkMarkupElement/LinkMarkupElementNode.tsx +0 -36
  409. package/src/components/RichTextEditor/plugins/LinkPlugin/LinkMarkupElement/index.ts +0 -11
  410. package/src/components/RichTextEditor/plugins/LinkPlugin/id.ts +0 -3
  411. package/src/components/RichTextEditor/plugins/LinkPlugin/index.ts +0 -49
  412. package/src/components/RichTextEditor/plugins/LinkPlugin/types.ts +0 -12
  413. package/src/components/RichTextEditor/plugins/TextStylePlugins/custom1Plugin.tsx +0 -62
  414. package/src/components/RichTextEditor/plugins/TextStylePlugins/custom2Plugin.tsx +0 -62
  415. package/src/components/RichTextEditor/plugins/TextStylePlugins/custom3Plugin.tsx +0 -63
  416. package/src/components/RichTextEditor/plugins/TextStylePlugins/heading1Plugin.tsx +0 -62
  417. package/src/components/RichTextEditor/plugins/TextStylePlugins/heading2Plugin.tsx +0 -62
  418. package/src/components/RichTextEditor/plugins/TextStylePlugins/heading3Plugin.tsx +0 -62
  419. package/src/components/RichTextEditor/plugins/TextStylePlugins/heading4Plugin.tsx +0 -63
  420. package/src/components/RichTextEditor/plugins/TextStylePlugins/helpers.tsx +0 -44
  421. package/src/components/RichTextEditor/plugins/TextStylePlugins/imageCaptionPlugin.tsx +0 -62
  422. package/src/components/RichTextEditor/plugins/TextStylePlugins/imageTitlePlugin.tsx +0 -62
  423. package/src/components/RichTextEditor/plugins/TextStylePlugins/index.ts +0 -15
  424. package/src/components/RichTextEditor/plugins/TextStylePlugins/paragraphPlugin.tsx +0 -58
  425. package/src/components/RichTextEditor/plugins/TextStylePlugins/quotePlugin.tsx +0 -63
  426. package/src/components/RichTextEditor/plugins/index.ts +0 -6
  427. package/src/components/RichTextEditor/plugins/styles.ts +0 -178
  428. package/src/components/RichTextEditor/types.ts +0 -23
  429. package/src/components/index.ts +0 -8
  430. package/src/helpers/addHttps.spec.ts +0 -42
  431. package/src/helpers/addHttps.ts +0 -15
  432. package/src/helpers/convertToRichTextValue.spec.ts +0 -32
  433. package/src/helpers/convertToRichTextValue.ts +0 -6
  434. package/src/helpers/customCoordinatesGetterFactory.spec.ts +0 -69
  435. package/src/helpers/customCoordinatesGetterFactory.ts +0 -39
  436. package/src/helpers/hasRichTextValue.spec.ts +0 -63
  437. package/src/helpers/hasRichTextValue.ts +0 -29
  438. package/src/helpers/index.ts +0 -8
  439. package/src/helpers/isDownloadable.spec.ts +0 -47
  440. package/src/helpers/isDownloadable.ts +0 -7
  441. package/src/helpers/mapColorPalettes.spec.ts +0 -47
  442. package/src/helpers/mapColorPalettes.ts +0 -65
  443. package/src/hooks/index.ts +0 -4
  444. package/src/hooks/useAttachments.spec.tsx +0 -127
  445. package/src/hooks/useAttachments.tsx +0 -90
  446. package/src/hooks/useDndSensors.spec.ts +0 -40
  447. package/src/hooks/useDndSensors.ts +0 -23
  448. package/src/index.ts +0 -138
  449. package/src/settings/background.spec.ts +0 -173
  450. package/src/settings/background.ts +0 -52
  451. package/src/settings/border.spec.ts +0 -76
  452. package/src/settings/border.ts +0 -90
  453. package/src/settings/borderRadius.spec.ts +0 -30
  454. package/src/settings/borderRadius.ts +0 -73
  455. package/src/settings/borderRadiusExtended.spec.ts +0 -52
  456. package/src/settings/borderRadiusExtended.ts +0 -84
  457. package/src/settings/defaultValues.ts +0 -21
  458. package/src/settings/gutter.spec.ts +0 -60
  459. package/src/settings/gutter.ts +0 -75
  460. package/src/settings/index.ts +0 -14
  461. package/src/settings/margin.spec.ts +0 -42
  462. package/src/settings/margin.ts +0 -72
  463. package/src/settings/marginExtended.spec.ts +0 -45
  464. package/src/settings/marginExtended.ts +0 -91
  465. package/src/settings/padding.spec.ts +0 -42
  466. package/src/settings/padding.ts +0 -73
  467. package/src/settings/paddingExtended.spec.ts +0 -45
  468. package/src/settings/paddingExtended.ts +0 -91
  469. package/src/settings/security.spec.ts +0 -87
  470. package/src/settings/security.ts +0 -61
  471. package/src/settings/securityDownloadable.spec.ts +0 -46
  472. package/src/settings/securityDownloadable.ts +0 -33
  473. package/src/settings/securityGlobalControl.ts +0 -42
  474. package/src/settings/types.ts +0 -128
  475. package/src/styles.css +0 -3
  476. package/src/utilities/color/getReadableColor.spec.ts +0 -32
  477. package/src/utilities/color/getReadableColor.ts +0 -34
  478. package/src/utilities/color/index.ts +0 -10
  479. package/src/utilities/color/isDark.spec.ts +0 -33
  480. package/src/utilities/color/isDark.ts +0 -29
  481. package/src/utilities/color/setAlpha.spec.ts +0 -28
  482. package/src/utilities/color/setAlpha.ts +0 -14
  483. package/src/utilities/color/toColorObject.spec.ts +0 -19
  484. package/src/utilities/color/toColorObject.ts +0 -16
  485. package/src/utilities/color/toHex8String.spec.ts +0 -17
  486. package/src/utilities/color/toHex8String.ts +0 -14
  487. package/src/utilities/color/toHexString.spec.ts +0 -17
  488. package/src/utilities/color/toHexString.ts +0 -10
  489. package/src/utilities/color/toRgbaString.spec.ts +0 -12
  490. package/src/utilities/color/toRgbaString.ts +0 -14
  491. package/src/utilities/color/toShortRgba.spec.ts +0 -16
  492. package/src/utilities/color/toShortRgba.ts +0 -35
  493. package/src/utilities/index.ts +0 -5
  494. package/src/utilities/moveItemInArray.spec.ts +0 -17
  495. package/src/utilities/moveItemInArray.ts +0 -21
  496. package/src/utilities/react/getBackgroundColorStyles.spec.ts +0 -18
  497. package/src/utilities/react/getBackgroundColorStyles.ts +0 -10
  498. package/src/utilities/react/getBorderStyles.spec.ts +0 -39
  499. package/src/utilities/react/getBorderStyles.ts +0 -20
  500. package/src/utilities/react/getRadiusStyles.spec.ts +0 -25
  501. package/src/utilities/react/getRadiusStyles.ts +0 -8
  502. package/src/utilities/react/index.ts +0 -6
  503. package/src/utilities/react/joinClassNames.spec.ts +0 -18
  504. package/src/utilities/react/joinClassNames.ts +0 -10
  505. package/tailwind.config.ts +0 -27
  506. package/tsconfig.json +0 -24
  507. package/tsconfig.node.json +0 -12
  508. package/vite.config.ts +0 -71
@@ -0,0 +1,217 @@
1
+ import "./styles.css.es.js";
2
+ export * from "@frontify/sidebar-settings";
3
+ import { BlockInjectButton as m } from "./components/BlockInjectButton/BlockInjectButton.es.js";
4
+ import { BlockItemWrapper as g } from "./components/BlockItemWrapper/BlockItemWrapper.es.js";
5
+ import { DragPreviewContextProvider as u, useDragPreviewContext as f } from "./components/BlockItemWrapper/Toolbar/context/DragPreviewContext.es.js";
6
+ import { MultiFlyoutContextProvider as d, useMultiFlyoutContext as S } from "./components/BlockItemWrapper/Toolbar/context/MultiFlyoutContext.es.js";
7
+ import { useMultiFlyoutState as B } from "./components/BlockItemWrapper/Toolbar/hooks/useMultiFlyoutState.es.js";
8
+ import { Toolbar as y } from "./components/BlockItemWrapper/Toolbar/Toolbar.es.js";
9
+ import { AttachmentsToolbarButton as A, DEFAULT_ATTACHMENTS_BUTTON_ID as E } from "./components/BlockItemWrapper/Toolbar/AttachmentsToolbarButton/AttachmentsToolbarButton.es.js";
10
+ import { DragHandleToolbarButton as h } from "./components/BlockItemWrapper/Toolbar/DragHandleToolbarButton/DragHandleToolbarButton.es.js";
11
+ import { FlyoutToolbarButton as F } from "./components/BlockItemWrapper/Toolbar/FlyoutToolbarButton/FlyoutToolbarButton.es.js";
12
+ import { DEFAULT_MENU_BUTTON_ID as k, MenuToolbarButton as I } from "./components/BlockItemWrapper/Toolbar/MenuToolbarButton/MenuToolbarButton.es.js";
13
+ import { ToolbarFlyoutMenu as D } from "./components/BlockItemWrapper/Toolbar/MenuToolbarButton/ToolbarFlyoutMenu.es.js";
14
+ import { DEFAULT_DRAGGING_TOOLTIP as U, DEFAULT_DRAG_TOOLTIP as _ } from "./components/BlockItemWrapper/constants.es.js";
15
+ import { Attachments as G } from "./components/Attachments/Attachments.es.js";
16
+ import { DownloadButton as O } from "./components/DownloadButton/DownloadButton.es.js";
17
+ import { RichTextEditor as w } from "./components/RichTextEditor/RichTextEditor.es.js";
18
+ import { LinkPlugin as W, createLinkPlugin as j } from "./components/RichTextEditor/plugins/LinkPlugin/index.es.js";
19
+ import { BUTTON_PLUGIN as X, ButtonPlugin as q, ELEMENT_BUTTON as z, createButtonPlugin as J } from "./components/RichTextEditor/plugins/ButtonPlugin/createButtonPlugin.es.js";
20
+ import { withButton as Y } from "./components/RichTextEditor/plugins/ButtonPlugin/withButton.es.js";
21
+ import { insertButton as $ } from "./components/RichTextEditor/plugins/ButtonPlugin/transforms/insertButton.es.js";
22
+ import { submitFloatingButton as rt } from "./components/RichTextEditor/plugins/ButtonPlugin/transforms/submitFloatingButton.es.js";
23
+ import { unwrapButton as et } from "./components/RichTextEditor/plugins/ButtonPlugin/transforms/unwrapButton.es.js";
24
+ import { upsertButton as at } from "./components/RichTextEditor/plugins/ButtonPlugin/transforms/upsertButton.es.js";
25
+ import { upsertButtonText as pt } from "./components/RichTextEditor/plugins/ButtonPlugin/transforms/upsertButtonText.es.js";
26
+ import { wrapButton as lt } from "./components/RichTextEditor/plugins/ButtonPlugin/transforms/wrapButton.es.js";
27
+ import { getUrlFromEditor as xt } from "./components/RichTextEditor/plugins/ButtonPlugin/utils/getUrl.es.js";
28
+ import { createButtonNode as ft } from "./components/RichTextEditor/plugins/ButtonPlugin/utils/createButtonNode.es.js";
29
+ import { triggerFloatingButton as dt } from "./components/RichTextEditor/plugins/ButtonPlugin/utils/triggerFloatingButton.es.js";
30
+ import { triggerFloatingButtonEdit as Pt } from "./components/RichTextEditor/plugins/ButtonPlugin/utils/triggerFloatingButtonEdit.es.js";
31
+ import { triggerFloatingButtonInsert as Tt } from "./components/RichTextEditor/plugins/ButtonPlugin/utils/triggerFloatingButtonInsert.es.js";
32
+ import { BlockButtonStyles as ct } from "./components/RichTextEditor/plugins/ButtonPlugin/utils/styles.es.js";
33
+ import { Custom1Plugin as Et } from "./components/RichTextEditor/plugins/TextStylePlugins/custom1Plugin.es.js";
34
+ import { Custom2Plugin as ht } from "./components/RichTextEditor/plugins/TextStylePlugins/custom2Plugin.es.js";
35
+ import { Custom3Plugin as Ft } from "./components/RichTextEditor/plugins/TextStylePlugins/custom3Plugin.es.js";
36
+ import { Heading1Plugin as kt } from "./components/RichTextEditor/plugins/TextStylePlugins/heading1Plugin.es.js";
37
+ import { Heading2Plugin as bt } from "./components/RichTextEditor/plugins/TextStylePlugins/heading2Plugin.es.js";
38
+ import { Heading3Plugin as Rt } from "./components/RichTextEditor/plugins/TextStylePlugins/heading3Plugin.es.js";
39
+ import { Heading4Plugin as _t } from "./components/RichTextEditor/plugins/TextStylePlugins/heading4Plugin.es.js";
40
+ import { ImageCaptionPlugin as Gt } from "./components/RichTextEditor/plugins/TextStylePlugins/imageCaptionPlugin.es.js";
41
+ import { ImageTitlePlugin as Ot } from "./components/RichTextEditor/plugins/TextStylePlugins/imageTitlePlugin.es.js";
42
+ import { PARAGRAPH_CLASSES as wt, ParagraphMarkupElement as Vt, ParagraphMarkupElementNode as Wt, ParagraphPlugin as jt, createParagraphPlugin as Qt } from "./components/RichTextEditor/plugins/TextStylePlugins/paragraphPlugin.es.js";
43
+ import { QuoteMarkupElementNode as qt, QuotePlugin as zt, createQuotePlugin as Jt } from "./components/RichTextEditor/plugins/TextStylePlugins/quotePlugin.es.js";
44
+ import { AllTextStylePlugins as Yt, AllTextStyles as Zt, TextStylePluginsWithoutImage as $t, TextStylesWithoutImage as tr } from "./components/RichTextEditor/plugins/TextStylePlugins/helpers.es.js";
45
+ import { BlockStyles as or, TextStyles as er } from "./components/RichTextEditor/plugins/styles.es.js";
46
+ import { getDefaultPluginsWithLinkChooser as ar } from "./components/RichTextEditor/pluginPresets/defaultPluginsWithLinkChooser.es.js";
47
+ import { THEME_PREFIX as pr } from "./components/RichTextEditor/constants.es.js";
48
+ import { LinkSelector as lr } from "./components/Link/LinkSelector/LinkSelector.es.js";
49
+ import { LinkInput as xr } from "./components/Link/LinkInput.es.js";
50
+ import { getLegacyUrl as fr, getLinkFromEditor as sr, getUrl as dr, getUrlFromLinkOrLegacyLink as Sr } from "./components/Link/utils/getUrl.es.js";
51
+ import { relativeUrlRegex as Br } from "./components/Link/utils/relativeUrlRegex.es.js";
52
+ import { isValidUrl as yr, isValidUrlOrEmpty as cr } from "./components/Link/utils/url.es.js";
53
+ import { convertToRteValue as Er } from "./helpers/convertToRichTextValue.es.js";
54
+ import { customCoordinatesGetterFactory as hr } from "./helpers/customCoordinatesGetterFactory.es.js";
55
+ import { hasRichTextValue as Fr } from "./helpers/hasRichTextValue.es.js";
56
+ import { isDownloadable as kr } from "./helpers/isDownloadable.es.js";
57
+ import { mapAppBridgeColorPaletteToFonduePalette as br, mapAppBridgeColorPalettesToFonduePalettes as Dr } from "./helpers/mapColorPalettes.es.js";
58
+ import { addHttps as Ur } from "./helpers/addHttps.es.js";
59
+ import { AttachmentsProvider as Nr, useAttachments as Gr, useAttachmentsContext as Hr, withAttachmentsProvider as Or } from "./hooks/useAttachments.es.js";
60
+ import { useDndSensors as wr } from "./hooks/useDndSensors.es.js";
61
+ import { getBackgroundSettings as Wr } from "./settings/background.es.js";
62
+ import { getBorderSettings as Qr } from "./settings/border.es.js";
63
+ import { getBorderRadiusSettings as qr, getBorderRadiusSlider as zr } from "./settings/borderRadius.es.js";
64
+ import { getExtendedBorderRadiusSettings as Kr } from "./settings/borderRadiusExtended.es.js";
65
+ import { getGutterSettings as Zr } from "./settings/gutter.es.js";
66
+ import { getMarginSettings as to, getMarginSlider as ro } from "./settings/margin.es.js";
67
+ import { getMarginExtendedSettings as eo } from "./settings/marginExtended.es.js";
68
+ import { getPaddingSettings as ao, getPaddingSlider as io } from "./settings/padding.es.js";
69
+ import { getPaddingExtendedSettings as mo } from "./settings/paddingExtended.es.js";
70
+ import { BorderStyle as go, GutterSpacing as xo, Margin as uo, Padding as fo, Radius as so, Security as So, borderStyleMap as Po, gutterSpacingStyleMap as Bo, marginStyleMap as To, paddingStyleMap as yo, radiusStyleMap as co } from "./settings/types.es.js";
71
+ import { getSecurityDownloadableSetting as Eo, getSecurityGlobalControlId as Mo } from "./settings/securityDownloadable.es.js";
72
+ import { getSecurityGlobalControlSetting as Co } from "./settings/securityGlobalControl.es.js";
73
+ import { isDark as Lo } from "./utilities/color/isDark.es.js";
74
+ import { toHex8String as Io } from "./utilities/color/toHex8String.es.js";
75
+ import { toHexString as Do } from "./utilities/color/toHexString.es.js";
76
+ import { toRgbaString as Uo } from "./utilities/color/toRgbaString.es.js";
77
+ import { setAlpha as No } from "./utilities/color/setAlpha.es.js";
78
+ import { toColorObject as Ho } from "./utilities/color/toColorObject.es.js";
79
+ import { getReadableColor as vo } from "./utilities/color/getReadableColor.es.js";
80
+ import { toShortRgba as Vo } from "./utilities/color/toShortRgba.es.js";
81
+ import { moveItemInArray as jo } from "./utilities/moveItemInArray.es.js";
82
+ import { getBackgroundColorStyles as Xo } from "./utilities/react/getBackgroundColorStyles.es.js";
83
+ import { getBorderStyles as zo } from "./utilities/react/getBorderStyles.es.js";
84
+ import { getRadiusStyles as Ko } from "./utilities/react/getRadiusStyles.es.js";
85
+ import { joinClassNames as Zo } from "./utilities/react/joinClassNames.es.js";
86
+ var r = /* @__PURE__ */ ((t) => (t.Main = "main", t.Basics = "basics", t.Layout = "layout", t.Style = "style", t.Security = "security", t.Targets = "targets", t))(r || {});
87
+ const e = (t) => t, n = (t) => t;
88
+ export {
89
+ Yt as AllTextStylePlugins,
90
+ Zt as AllTextStyles,
91
+ G as Attachments,
92
+ Nr as AttachmentsProvider,
93
+ A as AttachmentsToolbarButton,
94
+ X as BUTTON_PLUGIN,
95
+ ct as BlockButtonStyles,
96
+ m as BlockInjectButton,
97
+ g as BlockItemWrapper,
98
+ or as BlockStyles,
99
+ go as BorderStyle,
100
+ q as ButtonPlugin,
101
+ Et as Custom1Plugin,
102
+ ht as Custom2Plugin,
103
+ Ft as Custom3Plugin,
104
+ E as DEFAULT_ATTACHMENTS_BUTTON_ID,
105
+ U as DEFAULT_DRAGGING_TOOLTIP,
106
+ _ as DEFAULT_DRAG_TOOLTIP,
107
+ k as DEFAULT_MENU_BUTTON_ID,
108
+ O as DownloadButton,
109
+ h as DragHandleToolbarButton,
110
+ u as DragPreviewContextProvider,
111
+ z as ELEMENT_BUTTON,
112
+ F as FlyoutToolbarButton,
113
+ xo as GutterSpacing,
114
+ kt as Heading1Plugin,
115
+ bt as Heading2Plugin,
116
+ Rt as Heading3Plugin,
117
+ _t as Heading4Plugin,
118
+ Gt as ImageCaptionPlugin,
119
+ Ot as ImageTitlePlugin,
120
+ xr as LinkInput,
121
+ W as LinkPlugin,
122
+ lr as LinkSelector,
123
+ uo as Margin,
124
+ I as MenuToolbarButton,
125
+ d as MultiFlyoutContextProvider,
126
+ wt as PARAGRAPH_CLASSES,
127
+ fo as Padding,
128
+ Vt as ParagraphMarkupElement,
129
+ Wt as ParagraphMarkupElementNode,
130
+ jt as ParagraphPlugin,
131
+ qt as QuoteMarkupElementNode,
132
+ zt as QuotePlugin,
133
+ so as Radius,
134
+ w as RichTextEditor,
135
+ r as Sections,
136
+ So as Security,
137
+ pr as THEME_PREFIX,
138
+ $t as TextStylePluginsWithoutImage,
139
+ er as TextStyles,
140
+ tr as TextStylesWithoutImage,
141
+ y as Toolbar,
142
+ D as ToolbarFlyoutMenu,
143
+ Ur as addHttps,
144
+ Po as borderStyleMap,
145
+ Er as convertToRteValue,
146
+ ft as createButtonNode,
147
+ J as createButtonPlugin,
148
+ j as createLinkPlugin,
149
+ Qt as createParagraphPlugin,
150
+ Jt as createQuotePlugin,
151
+ hr as customCoordinatesGetterFactory,
152
+ e as defineBlock,
153
+ n as defineSettings,
154
+ Xo as getBackgroundColorStyles,
155
+ Wr as getBackgroundSettings,
156
+ qr as getBorderRadiusSettings,
157
+ zr as getBorderRadiusSlider,
158
+ Qr as getBorderSettings,
159
+ zo as getBorderStyles,
160
+ ar as getDefaultPluginsWithLinkChooser,
161
+ Kr as getExtendedBorderRadiusSettings,
162
+ Zr as getGutterSettings,
163
+ fr as getLegacyUrl,
164
+ sr as getLinkFromEditor,
165
+ eo as getMarginExtendedSettings,
166
+ to as getMarginSettings,
167
+ ro as getMarginSlider,
168
+ mo as getPaddingExtendedSettings,
169
+ ao as getPaddingSettings,
170
+ io as getPaddingSlider,
171
+ Ko as getRadiusStyles,
172
+ vo as getReadableColor,
173
+ Eo as getSecurityDownloadableSetting,
174
+ Mo as getSecurityGlobalControlId,
175
+ Co as getSecurityGlobalControlSetting,
176
+ dr as getUrl,
177
+ xt as getUrlFromEditor,
178
+ Sr as getUrlFromLinkOrLegacyLink,
179
+ Bo as gutterSpacingStyleMap,
180
+ Fr as hasRichTextValue,
181
+ $ as insertButton,
182
+ Lo as isDark,
183
+ kr as isDownloadable,
184
+ yr as isValidUrl,
185
+ cr as isValidUrlOrEmpty,
186
+ Zo as joinClassNames,
187
+ br as mapAppBridgeColorPaletteToFonduePalette,
188
+ Dr as mapAppBridgeColorPalettesToFonduePalettes,
189
+ To as marginStyleMap,
190
+ jo as moveItemInArray,
191
+ yo as paddingStyleMap,
192
+ co as radiusStyleMap,
193
+ Br as relativeUrlRegex,
194
+ No as setAlpha,
195
+ rt as submitFloatingButton,
196
+ Ho as toColorObject,
197
+ Io as toHex8String,
198
+ Do as toHexString,
199
+ Uo as toRgbaString,
200
+ Vo as toShortRgba,
201
+ dt as triggerFloatingButton,
202
+ Pt as triggerFloatingButtonEdit,
203
+ Tt as triggerFloatingButtonInsert,
204
+ et as unwrapButton,
205
+ at as upsertButton,
206
+ pt as upsertButtonText,
207
+ Gr as useAttachments,
208
+ Hr as useAttachmentsContext,
209
+ wr as useDndSensors,
210
+ f as useDragPreviewContext,
211
+ S as useMultiFlyoutContext,
212
+ B as useMultiFlyoutState,
213
+ Or as withAttachmentsProvider,
214
+ Y as withButton,
215
+ lt as wrapButton
216
+ };
217
+ //# sourceMappingURL=index.es.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.es.js","sources":["../src/index.ts"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport './styles.css';\n\nimport type { FC } from 'react';\nimport type { AppBridgeBlock } from '@frontify/app-bridge';\nimport type {\n AssetInputBlock as AssetInputBlockSidebarSettings,\n BaseBlock as BaseBlockSidebarSettings,\n Bundle as BundleSidebarSettings,\n ChecklistBlock as ChecklistBlockSidebarSettings,\n ChoicesType as ChoicesTypeSidebarSettings,\n ColorInputBlock as ColorInputBlockSidebarSettings,\n DropdownBlock as DropdownBlockSidebarSettings,\n DynamicSettingBlock as DynamicSettingBlockSidebarSettings,\n DynamicSupportedBlock as DynamicSupportedBlockSidebarSettings,\n FontInputBlock as FontInputBlockSidebarSettings,\n InputBlock as InputBlockSidebarSettings,\n LegacyAssetInputBlock as LegacyAssetInputBlockSidebarSettings,\n LinkBlock as LinkBlockSidebarSettings,\n LinkChooserBlock as LinkChooserBlockSidebarSettings,\n MultiInputBlock as MultiInputBlockSidebarSettings,\n NotificationBlock as NotificationBlockSidebarSettings,\n SectionHeadingBlock as SectionHeadingBlockSidebarSettings,\n SegmentedControlsBlock as SegmentedControlsBlockSidebarSettings,\n SettingBlock as SettingBlockSidebarSettings,\n SimpleSettingBlock as SimpleSettingBlockSidebarSettings,\n SwitchBlock as SwitchBlockSidebarSettings,\n TemplateInputBlock as TemplateInputBlockSidebarSettings,\n TextareaBlock as TextareaBlockSidebarSettings,\n ValueOrPromisedValue as ValueOrPromisedValueSidebarSettings,\n} from '@frontify/sidebar-settings';\n\nexport * from '@frontify/sidebar-settings';\n\nexport type AssetInputBlock = AssetInputBlockSidebarSettings<AppBridgeBlock>;\nexport type BaseBlock<T = undefined> = BaseBlockSidebarSettings<AppBridgeBlock, T>;\nexport type Bundle = BundleSidebarSettings<AppBridgeBlock>;\nexport type ChecklistBlock = ChecklistBlockSidebarSettings<AppBridgeBlock>;\nexport type ChoicesType = ChoicesTypeSidebarSettings<AppBridgeBlock>;\nexport type ColorInputBlock = ColorInputBlockSidebarSettings<AppBridgeBlock>;\nexport type DropdownBlock = DropdownBlockSidebarSettings<AppBridgeBlock>;\nexport type DynamicSettingBlock<Block extends DynamicSupportedBlock = DynamicSupportedBlock> =\n DynamicSettingBlockSidebarSettings<AppBridgeBlock, Block>;\nexport type DynamicSupportedBlock = DynamicSupportedBlockSidebarSettings<AppBridgeBlock>;\nexport type FontInputBlock = FontInputBlockSidebarSettings<AppBridgeBlock>;\nexport type InputBlock = InputBlockSidebarSettings<AppBridgeBlock>;\nexport type LegacyAssetInputBlock = LegacyAssetInputBlockSidebarSettings<AppBridgeBlock>;\nexport type LinkBlock = LinkBlockSidebarSettings<AppBridgeBlock>;\nexport type LinkChooserBlock = LinkChooserBlockSidebarSettings<AppBridgeBlock>;\nexport type MultiInputBlock = MultiInputBlockSidebarSettings<AppBridgeBlock>;\nexport type NotificationBlock = NotificationBlockSidebarSettings<AppBridgeBlock>;\nexport type SectionHeadingBlock = SectionHeadingBlockSidebarSettings<AppBridgeBlock>;\nexport type SegmentedControlsBlock = SegmentedControlsBlockSidebarSettings<AppBridgeBlock>;\nexport type SettingBlock = SettingBlockSidebarSettings<AppBridgeBlock>;\nexport type SimpleSettingBlock = SimpleSettingBlockSidebarSettings<AppBridgeBlock>;\nexport type SwitchBlock = SwitchBlockSidebarSettings<AppBridgeBlock>;\nexport type TemplateInputBlock = TemplateInputBlockSidebarSettings<AppBridgeBlock>;\nexport type TextareaBlock = TextareaBlockSidebarSettings<AppBridgeBlock>;\nexport type ValueOrPromisedValue<T> = ValueOrPromisedValueSidebarSettings<AppBridgeBlock, T>;\n\nexport enum Sections {\n Main = 'main',\n Basics = 'basics',\n Layout = 'layout',\n Style = 'style',\n Security = 'security',\n Targets = 'targets',\n}\n\nexport type BlockSettingsStructureExport = {\n [Sections.Main]?: SettingBlock[];\n [Sections.Basics]?: SettingBlock[];\n [Sections.Layout]?: SettingBlock[];\n [Sections.Style]?: SettingBlock[];\n [Sections.Security]?: SettingBlock[];\n} & { [customSectionName: string]: SettingBlock[] };\n\nexport type BlockProps = {\n /**\n * The Frontify App Bridge provides an interface to the Frontify app internals.\n * {@link https://developer.frontify.com/d/XFPCrGNrXQQM/content-blocks#/details-concepts-1/content-blocks/introducing-the-app-bridge}\n */\n appBridge: AppBridgeBlock;\n};\n\nexport type BlockConfigExport = {\n /**\n * Block component to render.\n * {@link https://developer.frontify.com/d/XFPCrGNrXQQM/content-blocks#/details-concepts-1/content-blocks}\n */\n block: FC<BlockProps>;\n /**\n * Contains the block settings and its structure.\n * {@link https://developer.frontify.com/d/XFPCrGNrXQQM/content-blocks#/details-concepts-1/block-settings-1}\n */\n settings: ReturnType<typeof defineSettings>;\n /**\n * Block lifecycle hook ran before the block gets added in the Guideline.\n * The hook support both synchronous or asynchronous execution.\n * {@link https://developer.frontify.com/d/XFPCrGNrXQQM/content-blocks#/details-concepts-1/block-lifecycle/on-block-creation}\n */\n onBlockCreated?:\n | (({ appBridge }: { appBridge: AppBridgeBlock }) => void)\n | (({ appBridge }: { appBridge: AppBridgeBlock }) => Promise<void>);\n /**\n * Block lifecycle hook ran before the block gets deleted from the Guideline.\n * The hook support both synchronous or asynchronous execution.\n * {@link https://developer.frontify.com/d/XFPCrGNrXQQM/content-blocks#/details-concepts-1/block-lifecycle/on-block-deletion}\n */\n onBlockDeleted?:\n | (({ appBridge }: { appBridge: AppBridgeBlock }) => void)\n | (({ appBridge }: { appBridge: AppBridgeBlock }) => Promise<void>);\n};\n\n/**\n * Type helper to make it easier to export a theme, accepts a direct {@link BlockConfigExport} object.\n */\nexport const defineBlock = (config: BlockConfigExport): BlockConfigExport => config;\n\n/**\n * Type helper to make it easier to export block's settings structure, accepts a direct {@link BlockSettingsStructureExport} object\n * or a function return a direct {@link BlockSettingsStructureExport} or a function returning a Promise of {@link BlockSettingsStructureExport}.\n */\nexport const defineSettings = <\n T extends\n | BlockSettingsStructureExport\n | (() => Promise<BlockSettingsStructureExport>)\n | (() => BlockSettingsStructureExport),\n>(\n settingsStructure: T,\n): T => settingsStructure;\n\nexport * from './components';\nexport * from './helpers';\nexport * from './hooks';\nexport * from './settings';\nexport * from './utilities';\n"],"names":["Sections","defineBlock","config","defineSettings","settingsStructure"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6DY,IAAAA,sBAAAA,OACRA,EAAA,OAAO,QACPA,EAAA,SAAS,UACTA,EAAA,SAAS,UACTA,EAAA,QAAQ,SACRA,EAAA,WAAW,YACXA,EAAA,UAAU,WANFA,IAAAA,KAAA,CAAA,CAAA;AAyDC,MAAAC,IAAc,CAACC,MAAiDA,GAMhEC,IAAiB,CAM1BC,MACIA;"}
@@ -0,0 +1,4 @@
1
+ (function(l,h){typeof exports=="object"&&typeof module<"u"?h(exports,require("@frontify/sidebar-settings"),require("react/jsx-runtime"),require("@frontify/fondue"),require("react"),require("@frontify/app-bridge"),require("@dnd-kit/core"),require("@dnd-kit/modifiers"),require("@dnd-kit/sortable"),require("@react-aria/focus"),require("@udecode/plate"),require("slate-react"),require("@react-stately/overlays"),require("slate"),require("@ctrl/tinycolor")):typeof define=="function"&&define.amd?define(["exports","@frontify/sidebar-settings","react/jsx-runtime","@frontify/fondue","react","@frontify/app-bridge","@dnd-kit/core","@dnd-kit/modifiers","@dnd-kit/sortable","@react-aria/focus","@udecode/plate","slate-react","@react-stately/overlays","slate","@ctrl/tinycolor"],h):(l=typeof globalThis<"u"?globalThis:l||self,h(l.GuidelineBlocksSettings={},l.sidebarSettings,l.jsxRuntime,l.fondue,l.React,l.appBridge,l.core,l.modifiers,l.sortable,l.focus,l.plate,l.slateReact,l.overlays,l.slate,l.tinycolor))})(this,function(l,h,a,o,y,q,T,wn,de,Xe,i,Qe,yn,bn,z){"use strict";var Ga=Object.defineProperty;var Ka=(l,h,a)=>h in l?Ga(l,h,{enumerable:!0,configurable:!0,writable:!0,value:a}):l[h]=a;var A=(l,h,a)=>(Ka(l,typeof h!="symbol"?h+"":h,a),a);const H=e=>e.filter(Boolean).join(" "),vn=({onDrop:e,label:n,icon:t,secondaryLabel:r,isLoading:s,fillParentContainer:c,onAssetChooseClick:d,onUploadClick:g,withMenu:u=!0,onClick:b,validFileType:f,verticalLayout:m})=>{const[w,v]=y.useState(!1),[x,p]=y.useState(),E=y.useRef(null),[L,D]=y.useState(void 0),O=S=>{if(S.preventDefault(),v(!1),!_(S.dataTransfer.files)){D("Invalid"),setTimeout(()=>{D(void 0)},1e3);return}e==null||e(S.dataTransfer.files)},_=S=>{if(!f)return!0;for(let M=0;M<S.length;M++){const U=S[M].name.split(".").pop()??"";if(!q.FileExtensionSets[f].includes(U))return!1}return!0},$=S=>{if(!E.current||s)return;const{left:M,top:U}=E.current.getBoundingClientRect(),ke=S.clientX-M,pe=S.clientY-U;p([ke,pe])};return a.jsxs("button",{ref:E,"data-test-id":"block-inject-button",className:H(["tw-font-body tw-relative tw-text-sm tw-leading-4 tw-border tw-flex tw-items-center tw-justify-center tw-cursor-pointer tw-gap-3 tw-w-full first:tw-rounded-tl last:tw-rounded-br",m?"[&:not(:first-child)]:tw-border-t-0 first:tw-rounded-tr last:tw-rounded-bl":"[&:not(:first-child)]:tw-border-l-0 first:tw-rounded-bl last:tw-rounded-tr",c?"tw-h-full":"tw-h-[72px]",w&&!s?"tw-border-dashed":"tw-border-solid",x&&"tw-bg-blank-state-pressed-inverse",w&&"tw-bg-blank-state-weak-inverse",L?"!tw-border-red-50 !tw-cursor-not-allowed":" tw-border-blank-state-line",s||x||w||L?"":"tw-text-text-weak hover:tw-text-blank-state-hover hover:tw-bg-blank-state-hover-inverse hover:tw-border-blank-state-line-hover active:tw-text-blank-state-pressed active:tw-bg-blank-state-pressed-inverse active:tw-border-blank-state-line-hover",(w||x)&&!L?"[&>*]:tw-pointer-events-none tw-border-blank-state-line-hover":"tw-bg-blank-state-shaded-inverse tw-text-blank-state-shaded"]),onDragEnter:e?S=>{var M;if(v(!0),f==="Images")for(const U of Array.from(S.dataTransfer.items))(M=U==null?void 0:U.type)!=null&&M.startsWith("image/")?D(void 0):D("Invalid")}:void 0,onDragLeave:e?()=>{v(!1),D(void 0)}:void 0,onDrop:e?O:void 0,onClick:S=>{u&&$(S),b==null||b()},children:[s?a.jsx(o.LoadingCircle,{}):L?a.jsxs("div",{className:" tw-flex tw-items-center tw-justify-center tw-text-red-60 tw-font-medium",children:[a.jsx(o.IconExclamationMarkTriangle,{}),L]}):a.jsxs(a.Fragment,{children:[t&&a.jsx("div",{children:t}),(n||r)&&a.jsxs("div",{className:"tw-flex tw-flex-col tw-items-start",children:[n&&a.jsx("div",{className:"tw-font-medium",children:n}),r&&a.jsx("div",{className:"tw-font-normal",children:r})]})]}),x&&a.jsx("div",{className:"tw-absolute tw-left-0 tw-top-full tw-z-20",style:{left:x[0],top:x[1]},children:a.jsx(o.Flyout,{onOpenChange:S=>!S&&p(void 0),isOpen:!0,fitContent:!0,hug:!1,legacyFooter:!1,trigger:a.jsx("div",{}),children:a.jsx(o.ActionMenu,{menuBlocks:[{id:"menu",menuItems:[...g?[{id:"upload",size:o.MenuItemContentSize.XSmall,title:"Upload asset",onClick:()=>{g(),p(void 0)},initialValue:!0,decorator:a.jsx("div",{className:"tw-mr-2",children:a.jsx(o.IconArrowCircleUp20,{})})}]:[],...d?[{id:"asset",size:o.MenuItemContentSize.XSmall,title:"Browse asset",onClick:()=>{d(),p(void 0)},initialValue:!0,decorator:a.jsx("div",{className:"tw-mr-2",children:a.jsx(o.IconImageStack20,{})})}]:[]]}]})})})]})},G=e=>{const n=r=>typeof r=="object"&&["red","green","blue"].every(c=>r.hasOwnProperty(c)),t=r=>{const s=typeof r.alpha=="number"?r.alpha:1;return{r:r.red,g:r.green,b:r.blue,a:s}};return n(e)?t(e):e},Cn=e=>typeof e=="object"&&["red","green","blue"].every(t=>e==null?void 0:e.hasOwnProperty(t)),kn=(e,n)=>{const t=Cn(e)?G(e):e,r=new z.TinyColor(t);return n?r.getBrightness()<n:r.isDark()||r.getAlpha()>.25&&r.getAlpha()<1},pn=e=>new z.TinyColor(G(e)).toHex8String(),xn=e=>new z.TinyColor(G(e)).toHexString(),xe=e=>new z.TinyColor(G(e)).toRgbString(),Pn=(e,n)=>new z.TinyColor(n).setAlpha(e).toRgbString(),Sn=e=>{const{r:n,g:t,b:r,a:s}=new z.TinyColor(e);return{red:n,green:t,blue:r,alpha:s}},Ye=e=>typeof e=="object"&&["red","green","blue"].every(t=>e==null?void 0:e.hasOwnProperty(t)),Tn=(e,n)=>{const t=Ye(e)?G(e):e,r=Ye(n)?G(n):n;let s=new z.TinyColor(t);const c=new z.TinyColor(r);for(;z.readability(s,c)<4.5;)s=s.darken(1);return s.toRgbString()},En=(e,n,t)=>{const r=[...e],s=t<0?r.length+t:t;if(s>=0&&s<r.length){const c=r.splice(n,1)[0];r.splice(s,0,c)}return r},In=e=>({backgroundColor:xe(e)});var V=(e=>(e.Solid="Solid",e.Dashed="Dashed",e.Dotted="Dotted",e))(V||{});const Je={Solid:"solid",Dotted:"dotted",Dashed:"dashed"};var W=(e=>(e.None="None",e.Small="Small",e.Medium="Medium",e.Large="Large",e))(W||{});const K={None:"0px",Small:"2px",Medium:"4px",Large:"12px"};var j=(e=>(e.None="None",e.Small="Small",e.Medium="Medium",e.Large="Large",e))(j||{});const Z={None:"0px",Small:"24px",Medium:"36px",Large:"60px"};var X=(e=>(e.None="None",e.Small="Small",e.Medium="Medium",e.Large="Large",e))(X||{});const R={None:"0px",Small:"24px",Medium:"36px",Large:"60px"};var Q=(e=>(e.Global="Global",e.Custom="Custom",e))(Q||{}),Y=(e=>(e.Auto="Auto",e.S="S",e.M="M",e.L="L",e))(Y||{});const Ze={Auto:"4px",S:"10px",M:"30px",L:"50px"},Bn={red:241,green:241,blue:241,alpha:1},Re={red:234,green:235,blue:235,alpha:1},Nn="1px",se="24px",oe="24px",Ln=(e=V.Solid,n="1px",t=Re)=>({borderStyle:Je[e],borderWidth:n,borderColor:xe(t)}),An=(e,n=!1,t)=>({borderRadius:n?t:K[e]}),et=y.createContext(!1),tt=({children:e,isDragPreview:n})=>a.jsx(et.Provider,{value:n,children:e}),ie=()=>y.useContext(et),nt=y.createContext({openFlyoutIds:[],setOpenFlyoutIds:()=>console.error("No MultiFlyoutContext Provider found")}),rt=({children:e,openFlyoutIds:n,setOpenFlyoutIds:t})=>{const r=y.useMemo(()=>({openFlyoutIds:n,setOpenFlyoutIds:t}),[n,t]);return a.jsx(nt.Provider,{value:r,children:e})},at=()=>y.useContext(nt),ue=e=>{const{openFlyoutIds:n,setOpenFlyoutIds:t}=at(),r=y.useCallback(s=>{t(c=>{const d=c.filter(g=>g!==e);return s?[...d,e]:d})},[e,t]);return{isOpen:n.includes(e),onOpenChange:r}},st=({children:e})=>a.jsx("div",{className:"tw-pointer-events-auto tw-flex tw-flex-shrink-0 tw-gap-px tw-px-px tw-h-[26px] tw-items-center tw-self-start tw-leading-none",children:e}),ot=(e,n)=>{const{blockAssets:t,addAssetIdsToKey:r,deleteAssetIdsFromKey:s,updateAssetIdsFromKey:c}=q.useBlockAssets(e),d=(t==null?void 0:t[n])||[];return{onAttachmentsAdd:async m=>{await r(n,m.map(w=>w.id))},onAttachmentDelete:async m=>{await s(n,[m.id])},onAttachmentReplace:async(m,w)=>{const v=d.map(x=>x.id===m.id?w.id:x.id);await c(n,v)},onAttachmentsSorted:async m=>{const w=m.map(v=>v.id);await c(n,w)},attachments:d,appBridge:e}},it=y.createContext(null),lt=({appBridge:e,children:n,assetId:t})=>{const r=ot(e,t);return a.jsx(it.Provider,{value:r,children:n})},ct=()=>{const e=y.useContext(it);if(!e)throw new Error("No AttachmentsContext Provided. Component must be wrapped in an 'AttachmentsProvider' or the 'withAttachmentsProvider' HOC");return e},Fn=(e,n)=>{const t=r=>a.jsx(lt,{appBridge:r.appBridge,assetId:n,children:a.jsx(e,{...r})});return t.displayName="withAttachmentsProvider",t},Mn=[T.KeyboardCode.Down,T.KeyboardCode.Right,T.KeyboardCode.Up,T.KeyboardCode.Left],dt=(e,n)=>(t,{currentCoordinates:r,context:{activeNode:s}})=>{if(t.preventDefault(),Mn.includes(t.code)){const c=(s==null?void 0:s.offsetWidth)??0,d=(s==null?void 0:s.offsetHeight)??0;switch(t.code){case T.KeyboardCode.Right:return{...r,x:r.x+c+e};case T.KeyboardCode.Left:return{...r,x:r.x-c-e};case T.KeyboardCode.Down:return{...r,y:r.y+d+n};case T.KeyboardCode.Up:return{...r,y:r.y-d-n}}}},Dn={start:["Space","Enter"],cancel:[],end:["Space","Enter","Escape"]},On=(e=0,n=0)=>{const t=dt(e,n);return T.useSensors(T.useSensor(T.PointerSensor),T.useSensor(T.KeyboardSensor,{coordinateGetter:t,keyboardCodes:Dn}))},Un=e=>e==="IMAGE"?a.jsx(o.IconImage24,{}):e==="VIDEO"?a.jsx(o.IconPlayFrame24,{}):e==="AUDIO"?a.jsx(o.IconMusicNote24,{}):a.jsx(o.IconDocument24,{}),Pe=y.forwardRef(({item:e,isEditing:n,draggableProps:t,transformStyle:r,isDragging:s,isOverlay:c,isLoading:d,onDelete:g,onReplaceWithBrowse:u,onReplaceWithUpload:b,onDownload:f},m)=>{const[w,v]=y.useState(),[x,{selectedFiles:p}]=q.useFileInput({multiple:!0,accept:"image/*"}),[E,{results:L,doneAll:D}]=q.useAssetUpload(),{focusProps:O,isFocusVisible:_}=Xe.useFocusRing();y.useEffect(()=>{p&&E(p[0])},[p]),y.useEffect(()=>{D&&b(L[0])},[D,L]);const $=d||p&&!D;return a.jsxs("button",{"aria-label":"Download attachment","data-test-id":"attachments-item",onClick:()=>f==null?void 0:f(),ref:m,style:{...r,opacity:s&&!c?.3:1,fontFamily:"var(-f-theme-settings-body-font-family)"},className:H(["tw-cursor-pointer tw-text-left tw-w-full tw-relative tw-flex tw-gap-3 tw-px-5 tw-py-3 tw-items-center tw-group hover:tw-bg-box-neutral-hover",s?"tw-bg-box-neutral-hover":""]),children:[a.jsx("div",{className:"tw-text-text-weak group-hover:tw-text-box-neutral-inverse-hover",children:$?a.jsx(o.LoadingCircle,{size:o.LoadingCircleSize.Small}):Un(e.objectType)}),a.jsxs("div",{className:"tw-text-s tw-flex-1 tw-min-w-0",children:[a.jsx("div",{className:"tw-whitespace-nowrap tw-overflow-hidden tw-text-ellipsis tw-font-bold tw-text-text-weak group-hover:tw-text-box-neutral-inverse-hover",children:e.title}),a.jsx("div",{className:"tw-text-text-weak",children:`${e.fileSizeHumanReadable} - ${e.extension}`})]}),n&&a.jsxs("div",{"data-test-id":"attachments-actionbar",className:H(["tw-flex tw-gap-0.5 group-focus:tw-opacity-100 focus-visible:tw-opacity-100 focus-within:tw-opacity-100 group-hover:tw-opacity-100",c||(w==null?void 0:w.id)===e.id?"tw-opacity-100":"tw-opacity-0"]),children:[a.jsx("button",{...O,...t,"aria-label":"Drag attachment",className:H([" tw-border-button-border tw-bg-button-background active:tw-bg-button-background-pressed tw-group tw-border tw-box-box tw-relative tw-flex tw-items-center tw-justify-center tw-outline-none tw-font-medium tw-rounded tw-h-9 tw-w-9 ",s||c?"tw-cursor-grabbing tw-bg-button-background-pressed hover:tw-bg-button-background-pressed":"tw-cursor-grab hover:tw-bg-button-background-hover",_&&o.FOCUS_STYLE,_&&"tw-z-[2]"]),children:a.jsx(o.IconGrabHandle20,{})}),a.jsx("div",{"data-test-id":"attachments-actionbar-flyout",children:a.jsx(o.Flyout,{placement:o.FlyoutPlacement.Right,isOpen:(w==null?void 0:w.id)===e.id,fitContent:!0,legacyFooter:!1,onOpenChange:S=>v(S?e:void 0),trigger:(S,M)=>a.jsx(o.Button,{ref:M,icon:a.jsx(o.IconPen20,{}),emphasis:o.ButtonEmphasis.Default,onClick:()=>v(e)}),children:a.jsx(o.ActionMenu,{menuBlocks:[{id:"menu",menuItems:[{id:"upload",size:o.MenuItemContentSize.XSmall,title:"Replace with upload",onClick:()=>{x(),v(void 0)},initialValue:!0,decorator:a.jsx("div",{className:"tw-mr-2",children:a.jsx(o.IconArrowCircleUp20,{})})},{id:"asset",size:o.MenuItemContentSize.XSmall,title:"Replace with asset",onClick:()=>{u(),v(void 0)},initialValue:!0,decorator:a.jsx("div",{className:"tw-mr-2",children:a.jsx(o.IconImageStack20,{})})}]},{id:"menu-delete",menuItems:[{id:"delete",size:o.MenuItemContentSize.XSmall,title:"Delete",style:o.MenuItemStyle.Danger,onClick:()=>{g(),v(void 0)},initialValue:!0,decorator:a.jsx("div",{className:"tw-mr-2",children:a.jsx(o.IconTrashBin20,{})})}]}]})})})]})]})});Pe.displayName="AttachmentItem";const _n=e=>{const{attributes:n,listeners:t,setNodeRef:r,transform:s,transition:c,isDragging:d}=de.useSortable({id:e.item.id}),g={transform:s?`translate(${s.x}px, ${s.y}px)`:"",transition:c,zIndex:d?2:1},u={...n,...t};return a.jsx(Pe,{ref:r,isDragging:d,transformStyle:g,draggableProps:u,...e})},Hn=({children:e,isFlyoutOpen:n,triggerProps:t,triggerRef:r})=>a.jsxs("button",{className:H(["tw-flex tw-text-xs tw-font-body tw-items-center tw-gap-1 tw-rounded-full tw-outline tw-outline-1 tw-outline-offset-1 tw-p-1.5 tw-outline-line",n?"tw-bg-box-neutral-pressed tw-text-box-neutral-inverse-pressed":"tw-bg-base hover:tw-bg-box-neutral-hover active:tw-bg-box-neutral-pressed tw-text-box-neutral-inverse hover:tw-text-box-neutral-inverse-hover active:tw-text-box-neutral-inverse-pressed"]),...t,ref:r,"data-test-id":"attachments-button-trigger",children:[a.jsx(o.IconPaperclip16,{}),e,a.jsx(o.IconCaretDown12,{})]}),ut=({items:e=[],onDelete:n,onReplaceWithBrowse:t,onReplaceWithUpload:r,onBrowse:s,onUpload:c,onSorted:d,appBridge:g,triggerComponent:u=Hn,isOpen:b,onOpenChange:f})=>{const[m,w]=y.useState(e),[v,x]=y.useState(!1),p=T.useSensors(T.useSensor(T.PointerSensor),T.useSensor(T.KeyboardSensor)),[E,L]=y.useState(void 0),[D,O]=y.useState(!1),[_,$]=y.useState([]),[S,M]=y.useState(null),U=q.useEditorState(g),{openAssetChooser:ke,closeAssetChooser:pe}=q.useAssetChooser(g),dn=b!==void 0,Ke=dn?b:v,ae=m==null?void 0:m.find(k=>k.id===E),[Ha,{results:un,doneAll:gn}]=q.useAssetUpload({onUploadProgress:()=>!D&&O(!0)}),ce=k=>{const B=dn?f:x;B==null||B(k)};y.useEffect(()=>{w(e)},[e]),y.useEffect(()=>{S&&(O(!0),Ha(S))},[S]),y.useEffect(()=>{(async()=>{gn&&(await c(un),O(!1))})()},[gn,un]);const Va=()=>{ce(!1),ke(k=>{s(k),pe(),ce(!0)},{multiSelection:!0,selectedValueIds:m.map(k=>k.id)})},hn=k=>{ce(!1),ke(async B=>{ce(!0),pe(),$([..._,k.id]),await t(k,B[0]),$(_.filter(J=>J!==k.id))},{multiSelection:!1,selectedValueIds:m.map(B=>B.id)})},mn=async(k,B)=>{$([..._,k.id]),await r(k,B),$(_.filter(J=>J!==k.id))},za=k=>{const{active:B}=k;L(B.id)},$a=k=>{const{active:B,over:J}=k;if(J&&B.id!==J.id&&m){const Wa=m.findIndex(je=>je.id===B.id),qa=m.findIndex(je=>je.id===J.id),fn=de.arrayMove(m,Wa,qa);w(fn),d(fn)}L(void 0)};return U||((m==null?void 0:m.length)??0)>0?a.jsx(o.LegacyTooltip,{withArrow:!0,position:o.TooltipPosition.Top,content:"Attachments",disabled:Ke,enterDelay:500,triggerElement:a.jsx("div",{"data-test-id":"attachments-flyout-button",children:a.jsx(o.Flyout,{placement:o.FlyoutPlacement.BottomRight,onOpenChange:k=>ce(ae?!0:k),isOpen:Ke,hug:!1,fitContent:!0,legacyFooter:!1,trigger:(k,B)=>a.jsx(u,{isFlyoutOpen:Ke,triggerProps:k,triggerRef:B,children:a.jsx("div",{children:e.length>0?e.length:"Add"})}),children:a.jsxs("div",{className:"tw-w-[300px]","data-test-id":"attachments-flyout-content",children:[m.length>0&&a.jsxs(T.DndContext,{sensors:p,collisionDetection:T.closestCenter,onDragStart:za,onDragEnd:$a,modifiers:[wn.restrictToWindowEdges],children:[a.jsx(de.SortableContext,{items:m,strategy:de.rectSortingStrategy,children:a.jsx("div",{className:"tw-border-b tw-border-b-line",children:m.map(k=>a.jsx(_n,{isEditing:U,isLoading:_.includes(k.id),item:k,onDelete:()=>n(k),onReplaceWithBrowse:()=>hn(k),onReplaceWithUpload:B=>mn(k,B),onDownload:()=>g.dispatch({name:"downloadAsset",payload:k})},k.id))})}),a.jsx(T.DragOverlay,{children:ae&&a.jsx(Pe,{isOverlay:!0,isEditing:U,item:ae,isDragging:!0,onDelete:()=>n(ae),onReplaceWithBrowse:()=>hn(ae),onReplaceWithUpload:k=>mn(ae,k)},E)})]}),U&&a.jsxs("div",{className:"tw-px-5 tw-py-3",children:[a.jsx("div",{className:"tw-font-body tw-font-medium tw-text-text tw-text-s tw-my-4",children:"Add attachments"}),a.jsx(o.AssetInput,{isLoading:D,size:o.AssetInputSize.Small,onUploadClick:k=>M(k),onLibraryClick:Va})]})]})})})}):null},Vn=(e,n)=>{const t=[o.FOCUS_VISIBLE_STYLE,"tw-relative tw-inline-flex tw-items-center tw-justify-center","tw-h-6 tw-p-1","tw-rounded","tw-text-xs tw-font-medium","tw-gap-0.5","focus-visible:tw-z-10"];return n?t.push("tw-bg-box-neutral-pressed","tw-text-box-neutral-inverse-pressed",e==="grab"?"tw-cursor-grabbing":"tw-cursor-pointer"):t.push("hover:tw-bg-box-neutral-hover active:tw-bg-box-neutral-pressed","tw-text-text-weak hover:tw-text-box-neutral-inverse-hover active:tw-text-box-neutral-inverse-pressed",e==="grab"?"!tw-cursor-grab active:tw-cursor-grabbing":"tw-cursor-pointer"),H(t)},le=y.forwardRef(({onClick:e,children:n,forceActiveStyle:t,cursor:r="pointer","data-test-id":s="base-toolbar-button",...c},d)=>a.jsx("button",{onClick:e,className:Vn(r,t),"data-test-id":s,...c,ref:d,children:n}));le.displayName="BaseToolbarButton";const zn=({children:e,isFlyoutOpen:n,triggerProps:t,triggerRef:r})=>a.jsxs(le,{forceActiveStyle:n,"data-test-id":"attachments-toolbar-button-trigger",...t,ref:r,children:[a.jsx(o.IconPaperclip16,{}),e,a.jsx(o.IconCaretDown12,{})]}),gt="attachments",ht=({flyoutId:e=gt})=>{const n=o.useMemoizedId(e),{appBridge:t,attachments:r,onAttachmentsAdd:s,onAttachmentDelete:c,onAttachmentReplace:d,onAttachmentsSorted:g}=ct(),{isOpen:u,onOpenChange:b}=ue(n),f=ie();return a.jsx(ut,{onUpload:s,onDelete:c,onReplaceWithBrowse:d,onReplaceWithUpload:d,onSorted:g,onBrowse:s,items:r,appBridge:t,triggerComponent:zn,isOpen:u&&!f,onOpenChange:b})},Se=({open:e,content:n,children:t,disabled:r})=>a.jsx(o.LegacyTooltip,{withArrow:!0,hoverDelay:0,enterDelay:300,open:e,disabled:r,position:o.TooltipPosition.Top,content:a.jsx("div",{children:n}),triggerElement:t,"data-test-id":"toolbar-button-tooltip"}),$n=({tooltip:e,icon:n,onClick:t})=>{const r=ie();return a.jsx(Se,{disabled:r,content:e??"",children:a.jsx(le,{"data-test-id":"block-item-wrapper-toolbar-btn",onClick:t,children:n})})},mt="Drag or press ↵ to move",ft="Move with ↑↓←→ and confirm with ↵",wt=({tooltip:e,icon:n,setActivatorNodeRef:t,draggableProps:r})=>{const s=ie();return a.jsx(Se,{open:s,content:a.jsx("div",{children:s?ft:e??mt}),children:a.jsx(le,{ref:t,"data-test-id":"block-item-wrapper-toolbar-btn",forceActiveStyle:s,cursor:"grab",...r,children:n})})},Te=({content:e,icon:n,tooltip:t,flyoutId:r,flyoutFooter:s,flyoutHeader:c})=>{const d=o.useMemoizedId(r),{isOpen:g,onOpenChange:u}=ue(d),b=ie();return a.jsx(Se,{disabled:b||g,content:t,children:a.jsx("div",{className:"tw-flex tw-flex-shrink-0 tw-flex-1 tw-h-6 tw-relative",children:a.jsx(o.Flyout,{isOpen:g&&!b,legacyFooter:!1,fixedFooter:s,fixedHeader:c,fitContent:!0,hug:!1,placement:o.FlyoutPlacement.BottomRight,onOpenChange:u,trigger:(f,m)=>a.jsx(le,{"data-test-id":"block-item-wrapper-toolbar-flyout",forceActiveStyle:g&&!b,...f,ref:m,children:n}),children:e})})})},yt=({items:e,flyoutId:n})=>{const{onOpenChange:t}=ue(n);return a.jsx(o.ActionMenu,{menuBlocks:e.map((r,s)=>({id:s.toString(),menuItems:r.map((c,d)=>({id:s.toString()+d.toString(),size:o.MenuItemContentSize.XSmall,title:c.title,style:c.style,onClick:()=>{t(!1),c.onClick()},initialValue:!0,decorator:a.jsx("div",{className:"tw-mr-2",children:c.icon})}))}))})},Ee="menu",bt=({items:e,flyoutId:n=Ee,tooltip:t="Options"})=>{const r=o.useMemoizedId(n);return a.jsx(Te,{icon:a.jsx(o.IconDotsHorizontal16,{}),tooltip:t,flyoutId:r,content:a.jsx(yt,{items:e,flyoutId:r})})},vt=({items:e,attachments:n})=>a.jsxs("div",{"data-test-id":"block-item-wrapper-toolbar",className:"tw-rounded-md tw-bg-base tw-border tw-border-line-strong tw-divide-x tw-divide-line-strong tw-shadow-lg tw-flex tw-flex-none tw-items-center tw-isolate",children:[n.isEnabled&&a.jsx(st,{children:a.jsx(ht,{})}),a.jsx(st,{children:e.map(t=>t.type==="dragHandle"?a.jsx(wt,{...t},t.tooltip+t.type):t.type==="menu"?a.jsx(bt,{...t},t.tooltip+t.type):t.type==="flyout"?a.jsx(Te,{...t},t.tooltip+t.type):a.jsx($n,{...t},t.tooltip+t.type))})]}),Wn=({children:e,toolbarItems:n,shouldHideWrapper:t,shouldHideComponent:r=!1,isDragging:s=!1,shouldFillContainer:c,outlineOffset:d=2,shouldBeShown:g=!1,showAttachments:u=!1})=>{const[b,f]=y.useState(g?[Ee]:[]),m=y.useRef(null);if(t)return a.jsx(a.Fragment,{children:e});const w=n==null?void 0:n.filter(x=>x!==void 0),v=b.length>0||g;return a.jsx(tt,{isDragPreview:s,children:a.jsx(rt,{openFlyoutIds:b,setOpenFlyoutIds:f,children:a.jsxs("div",{ref:m,"data-test-id":"block-item-wrapper",style:{outlineOffset:d},className:H(["tw-relative tw-group tw-outline-1 tw-outline-box-selected-inverse",c&&"tw-flex-1 tw-h-full tw-w-full","hover:tw-outline focus-within:tw-outline",v&&"tw-outline",r&&"tw-opacity-0"]),children:[a.jsx("div",{style:{right:-1-d,bottom:`calc(100% - ${2+d}px)`},className:H(["tw-pointer-events-none tw-absolute tw-bottom-[calc(100%-4px)] tw-right-[-3px] tw-w-full tw-opacity-0 tw-z-[60]","group-hover:tw-opacity-100 group-focus:tw-opacity-100 focus-within:tw-opacity-100","tw-flex tw-justify-end",v&&"tw-opacity-100"]),children:a.jsx(vt,{attachments:{isEnabled:u},items:w})}),e]})})})},qn=({onDownload:e})=>{const{isFocused:n,focusProps:t}=Xe.useFocusRing();return a.jsx(o.LegacyTooltip,{withArrow:!0,position:o.TooltipPosition.Top,content:"Download",enterDelay:500,triggerElement:a.jsx("button",{tabIndex:0,"aria-label":"Download",...t,className:H(["tw-outline-none tw-rounded",n&&o.FOCUS_STYLE]),onClick:e,onPointerDown:r=>r.preventDefault(),children:a.jsx("span",{"data-test-id":"download-button",className:"tw-flex tw-text-xs tw-font-body tw-items-center tw-gap-1 tw-rounded-full tw-bg-box-neutral-strong-inverse hover:tw-bg-box-neutral-strong-inverse-hover active:tw-bg-box-neutral-strong-inverse-pressed tw-text-box-neutral-strong tw-outline tw-outline-1 tw-outline-offset-1 tw-p-1.5 tw-outline-line",children:a.jsx(o.IconArrowCircleDown16,{})})})})},Gn=({value:e="",gap:n,columns:t,show:r=!0,plugins:s})=>{const[c,d]=y.useState(null);return y.useEffect(()=>{(async()=>d(await o.serializeRawToHtmlAsync(e,s,t,n)))()},[e,t,n,s]),!r||c==="<br />"?null:c!==null?a.jsx("div",{className:"tw-w-full tw-whitespace-pre-wrap","data-test-id":"rte-content-html",dangerouslySetInnerHTML:{__html:c}}):a.jsx("div",{className:"tw-rounded-sm tw-bg-base-alt tw-animate-pulse tw-h-full tw-min-h-[10px] tw-w-full"})},Ct=e=>{if(!e)return!1;const n=t=>t.some(r=>r.text?r.text!=="":r.children?n(r.children):!1);try{const t=JSON.parse(e);return n(t)}catch{return!1}},Kn=(e="p",n="",t)=>Ct(n)?n:JSON.stringify([{type:e,children:[{text:n,textStyle:e}],align:t}]),jn=(e,n,t)=>e===Q.Custom?n:t,Xn=e=>e.map(kt),kt=e=>({id:e.id,title:e.name,colors:e.colors.map(Yn)}),Qn=e=>"revision"in e,Yn=e=>{if(Qn(e)){const{title:n,revision:t}=e;return{alpha:t.rgba.alpha?t.rgba.alpha/255:1,red:t.rgba.red??0,green:t.rgba.green??0,blue:t.rgba.blue??0,name:n??""}}return{alpha:e.alpha?e.alpha/255:1,red:e.red??0,green:e.green??0,blue:e.blue??0,name:e.name??""}},Ie=(e,n)=>{const t=i.getAboveNode(e,{match:{type:i.ELEMENT_LINK}});return Array.isArray(t)?n(t[0]):""},pt=e=>Ie(e,n=>{var t,r;return((r=(t=n.chosenLink)==null?void 0:t.searchResult)==null?void 0:r.link)||""}),xt=e=>Ie(e,n=>n.url||""),Pt=e=>{var n,t;return e.url||((t=(n=e.chosenLink)==null?void 0:n.searchResult)==null?void 0:t.link)||""},St=e=>Ie(e,Pt),Be=/^\/(document|r)\/\S+$/i,ge=e=>{if(Be.test(e))return e;try{return new URL(e),e}catch{return`https://${e}`}},he=e=>{if(Be.test(e))return!0;try{const n=new URL(e);return["http:","https:","mailto:","tel:"].includes(n.protocol)&&n.pathname!==""}catch{return!1}},ee=e=>he(ge(e))||e==="",Tt=(e,{type:n})=>{const{apply:t,normalizeNode:r}=e;return e.apply=s=>{if(s.type!=="set_selection"){t(s);return}const c=s.newProperties;if(!(c!=null&&c.focus)||!c.anchor||!i.isCollapsed(c)){t(s);return}const d=i.getAboveNode(e,{at:c,match:{type:i.getPluginType(e,P)}});if(d){const[,g]=d;let u;i.isStartPoint(e,c.focus,g)&&(u=i.getPreviousNodeEndPoint(e,g)),i.isEndPoint(e,c.focus,g)&&(u=i.getNextNodeStartPoint(e,g)),u&&(s.newProperties={anchor:u,focus:u})}t(s)},e.normalizeNode=([s,c])=>{if(s.type===i.getPluginType(e,P)){const d=e.selection;if(d&&i.isCollapsed(d)&&i.isEndPoint(e,d.focus,c)){const g=i.getNextNodeStartPoint(e,c);if(g)i.select(e,g);else{const u=bn.Path.next(c);i.insertNodes(e,{text:""},{at:u}),i.select(e,u)}}}r([s,c])},i.withRemoveEmptyNodes(e,i.mockPlugin({options:{types:n}}))},Et=(e,n,t)=>{i.insertNodes(e,[Lt(e,n)],t)},Ne=i.createStore("floatingButton")({openEditorId:null,mouseDown:!1,updated:!1,url:"",text:"",buttonStyle:"primary",newTab:!1,mode:"",isEditing:!1}).extendActions(e=>({reset:()=>{e.url(""),e.text(""),e.buttonStyle("primary"),e.newTab(!1),e.mode(""),e.isEditing(!1)}})).extendActions(e=>({show:(n,t)=>{e.mode(n),e.isEditing(!1),e.openEditorId(t)},hide:()=>{e.reset(),e.openEditorId(null)}})).extendSelectors(e=>({isOpen:n=>e.openEditorId===n})),I=Ne.set,F=Ne.get,te=()=>Ne.use,Le=e=>{if(!e.selection)return;const{isUrl:n,forceSubmit:t}=i.getPluginOptions(e,P),r=F.url();if(!((n==null?void 0:n(r))||t))return;const c=F.text(),d=F.buttonStyle(),g=F.newTab()?void 0:"_self";return I.hide(),It(e,{url:r,text:c,buttonStyle:d,target:g,isUrl:u=>t||!n?!0:n(u)}),setTimeout(()=>{i.focusEditor(e,e.selection??void 0)},0),!0},ne=(e,n)=>i.withoutNormalizing(e,()=>{var t,r,s,c,d,g;if(n!=null&&n.split){if(i.getAboveNode(e,{at:(t=e.selection)==null?void 0:t.anchor,match:{type:i.getPluginType(e,P)}}))return i.splitNodes(e,{at:(r=e.selection)==null?void 0:r.anchor,match:f=>i.isElement(f)&&f.type===i.getPluginType(e,P)}),ne(e,{at:(s=e.selection)==null?void 0:s.anchor}),!0;if(i.getAboveNode(e,{at:(c=e.selection)==null?void 0:c.focus,match:{type:i.getPluginType(e,P)}}))return i.splitNodes(e,{at:(d=e.selection)==null?void 0:d.focus,match:f=>i.isElement(f)&&f.type===i.getPluginType(e,P)}),ne(e,{at:(g=e.selection)==null?void 0:g.focus}),!0}i.unwrapNodes(e,{match:{type:i.getPluginType(e,P)},...n})}),It=(e,{url:n,text:t,buttonStyle:r,target:s,insertTextInButton:c,insertNodesOptions:d,isUrl:g=i.getPluginOptions(e,P).isUrl})=>{var L;const u=e.selection;if(!u)return;const b=i.getAboveNode(e,{at:u,match:{type:i.getPluginType(e,P)}});if(c&&b)return e.insertText(n),!0;if(!(g!=null&&g(n)))return;if(i.isDefined(t)&&t.length===0&&(t=n),b)return Rn(n,e,b,s,r,t),!0;const f=i.findNode(e,{at:u,match:{type:i.getPluginType(e,P)}}),[m,w]=f??[],v=Jn(e,w,t);if(i.isExpanded(u))return Zn(b,e,n,r,s,t),!0;v&&i.removeNodes(e,{at:w});const x=i.getNodeProps(m??{}),p=(L=e.selection)==null?void 0:L.focus.path;if(!p)return;const E=i.getNodeLeaf(e,p);return t!=null&&t.length||(t=n),Et(e,{...x,url:n,target:s,children:[{...E,text:t}]},d),!0};function Jn(e,n,t){return n&&(t==null?void 0:t.length)&&t!==i.getEditorString(e,n)}function Zn(e,n,t,r,s,c){e?ne(n,{at:e[1]}):ne(n,{split:!0}),Bt(n,{url:t,buttonStyle:r,target:s}),Ae(n,{url:t,target:s,text:c})}function Rn(e,n,t,r,s,c){var d,g,u;(e!==((d=t[0])==null?void 0:d.url)||r!==((g=t[0])==null?void 0:g.target)||s!==((u=t[0])==null?void 0:u.buttonStyle))&&i.setNodes(n,{url:e,target:r,buttonStyle:s},{at:t[1]}),Ae(n,{url:e,text:c,target:r})}const Ae=(e,{text:n})=>{const t=i.getAboveNode(e,{match:{type:i.getPluginType(e,P)}});if(t){const[r,s]=t;if(n!=null&&n.length&&n!==i.getEditorString(e,s)){const c=r.children[0];i.replaceNodeChildren(e,{at:s,nodes:{...c,text:n},insertOptions:{select:!0}})}}},Bt=(e,{url:n,buttonStyle:t,target:r,...s})=>{i.wrapNodes(e,{type:i.getPluginType(e,P),url:n,buttonStyle:t,target:r,children:[]},{split:!0,...s})},er=(e,n)=>{const t=i.getAboveNode(e,{match:{type:P}});return Array.isArray(t)?n(t[0]):""},Nt=e=>er(e,n=>n.url??""),Lt=(e,{url:n,text:t="",buttonStyle:r="primary",target:s,children:c})=>({type:i.getPluginType(e,P),url:n,target:s,buttonStyle:r,children:c??[{text:t}]}),At=(e,{focused:n}={})=>{if(F.mode()==="edit"){me(e);return}Fe(e,{focused:n})},me=e=>{const n=i.findNode(e,{match:{type:i.getPluginType(e,P)}});if(!n)return;const[t,r]=n;let s=i.getEditorString(e,r);I.url(t.url),I.newTab(t.target===void 0),s===t.url&&(s=""),I.text(s),I.isEditing(!0)},Fe=(e,{focused:n}={})=>{F.mode()||!n||i.isRangeAcrossBlocks(e,{at:e.selection})||i.someNode(e,{match:{type:i.getPluginType(e,P)}})||(I.text(i.getEditorString(e,e.selection)),I.show("insert",e.id))},fe={buttonPrimary:{fontFamily:"var(--f-theme-settings-button-primary-font-family)",fontSize:"var(--f-theme-settings-button-primary-font-size)",fontWeight:"var(--f-theme-settings-button-primary-font-weight)",lineHeight:"var(--f-theme-settings-button-primary-line-height)",paddingTop:"var(--f-theme-settings-button-primary-padding-top)",paddingRight:"var(--f-theme-settings-button-primary-padding-right)",paddingBottom:"var(--f-theme-settings-button-primary-padding-bottom)",paddingLeft:"var(--f-theme-settings-button-primary-padding-left)",fontStyle:"var(--f-theme-settings-button-primary-font-style)",textTransform:"var(--f-theme-settings-button-primary-text-transform)",backgroundColor:"var(--f-theme-settings-button-primary-background-color)",borderColor:"var(--f-theme-settings-button-primary-border-color)",borderRadius:"var(--f-theme-settings-button-primary-border-radius)",borderWidth:"var(--f-theme-settings-button-primary-border-width)",color:"var(--f-theme-settings-button-primary-color)",marginTop:"10px",marginBottom:"10px",display:"inline-block",hover:{backgroundColor:"var(--f-theme-settings-button-primary-background-color-hover)",borderColor:"var(--f-theme-settings-button-primary-border-color-hover)",color:"var(--f-theme-settings-button-primary-color-hover)"}},buttonSecondary:{fontFamily:"var(--f-theme-settings-button-secondary-font-family)",fontSize:"var(--f-theme-settings-button-secondary-font-size)",fontWeight:"var(--f-theme-settings-button-secondary-font-weight)",lineHeight:"var(--f-theme-settings-button-secondary-line-height)",paddingTop:"var(--f-theme-settings-button-secondary-padding-top)",paddingRight:"var(--f-theme-settings-button-secondary-padding-right)",paddingBottom:"var(--f-theme-settings-button-secondary-padding-bottom)",paddingLeft:"var(--f-theme-settings-button-secondary-padding-left)",fontStyle:"var(--f-theme-settings-button-secondary-font-style)",textTransform:"var(--f-theme-settings-button-secondary-text-transform)",backgroundColor:"var(--f-theme-settings-button-secondary-background-color)",borderColor:"var(--f-theme-settings-button-secondary-border-color)",borderRadius:"var(--f-theme-settings-button-secondary-border-radius)",borderWidth:"var(--f-theme-settings-button-secondary-border-width)",color:"var(--f-theme-settings-button-secondary-color)",display:"inline-block",marginTop:"10px",marginBottom:"10px",hover:{backgroundColor:"var(--f-theme-settings-button-secondary-background-color-hover)",borderColor:"var(--f-theme-settings-button-secondary-border-color-hover)",color:"var(--f-theme-settings-button-secondary-color-hover)"}},buttonTertiary:{fontFamily:"var(--f-theme-settings-button-tertiary-font-family)",fontSize:"var(--f-theme-settings-button-tertiary-font-size)",fontWeight:"var(--f-theme-settings-button-tertiary-font-weight)",lineHeight:"var(--f-theme-settings-button-tertiary-line-height)",paddingTop:"var(--f-theme-settings-button-tertiary-padding-top)",paddingRight:"var(--f-theme-settings-button-tertiary-padding-right)",paddingBottom:"var(--f-theme-settings-button-tertiary-padding-bottom)",paddingLeft:"var(--f-theme-settings-button-tertiary-padding-left)",fontStyle:"var(--f-theme-settings-button-tertiary-font-style)",textTransform:"var(--f-theme-settings-button-tertiary-text-transform)",backgroundColor:"var(--f-theme-settings-button-tertiary-background-color)",borderColor:"var(--f-theme-settings-button-tertiary-border-color)",borderRadius:"var(--f-theme-settings-button-tertiary-border-radius)",borderWidth:"var(--f-theme-settings-button-tertiary-border-width)",color:"var(--f-theme-settings-button-tertiary-color)",display:"inline-block",marginTop:"10px",marginBottom:"10px",hover:{backgroundColor:"var(--f-theme-settings-button-tertiary-background-color-hover)",borderColor:"var(--f-theme-settings-button-tertiary-border-color-hover)",color:"var(--f-theme-settings-button-tertiary-color-hover)"}}},tr=e=>({...i.useElementProps({...e,elementToAttributes:t=>({url:t.href,buttonStyle:t.buttonStyle||"primary",target:t.target||"_blank"})}),onMouseOver:t=>{t.stopPropagation()}}),nr=e=>{const{href:n,target:t,buttonStyle:r}=tr(e),{attributes:s,children:c}=e;return a.jsx(rr,{attributes:s,href:n,target:t,styles:fe[`button${r.charAt(0).toUpperCase()+r.slice(1)}`],children:c})},rr=({attributes:e,styles:n={hover:{}},children:t,href:r="#",target:s})=>{const[c,d]=y.useState(!1);return a.jsx("a",{...e,onMouseEnter:()=>d(!0),onMouseLeave:()=>d(!1),href:r,target:s,style:c?{...n,...n.hover}:n,children:t})};class ar extends o.MarkupElement{constructor(n=P,t=nr){super(n,t)}}const sr=({type:e,...n})=>{const t=i.useEditorRef(),r=!!i.isRangeInSameBlock(t,{at:t.selection}),s=!!(t!=null&&t.selection)&&i.someNode(t,{match:{type:e}});return a.jsx(i.ToolbarButton,{tooltip:o.getTooltip(r?`Button
2
+ ${o.getHotkeyByPlatform("Ctrl+Shift+K")}`:"Buttons can only be set for a single text block."),classNames:o.getButtonClassNames(r),active:s,onMouseDown:async c=>{t&&(c.preventDefault(),c.stopPropagation(),i.focusEditor(t,t.selection??t.prevSelection??void 0),setTimeout(()=>{At(t,{focused:!0})},0))},...n})},or=({editor:e,id:n})=>a.jsx("div",{"data-plugin-id":n,children:a.jsx(sr,{type:i.getPluginType(e,P),icon:a.jsx("span",{className:"tw-p-2 tw-h-8 tw-justify-center tw-items-center tw-flex",children:a.jsx(o.IconButton16,{})}),styles:o.buttonStyles})}),ir=()=>{const e=Er({});return a.jsx("div",{"data-test-id":"floating-button-edit",className:"tw-bg-white tw-text-text tw-rounded tw-shadow tw-p-4 tw-min-w-[400px]",children:a.jsxs("span",{"data-test-id":"preview-button-flyout",className:"tw-flex tw-justify-between tw-items-center",children:[a.jsx("span",{className:"tw-pointer-events-none",children:e.defaultValue}),a.jsxs("span",{className:"tw-flex tw-gap-2",children:[a.jsx("span",{role:"button",tabIndex:0,"data-test-id":"edit-button-button",className:"tw-transition tw-cursor-pointer tw-rounded hover:tw-bg-black-10 tw-p-1",children:a.jsx(ye.EditButton,{children:a.jsx(o.IconPen16,{})})}),a.jsx("span",{role:"button",tabIndex:0,"data-test-id":"remove-button-button",className:"tw-transition tw-cursor-pointer tw-rounded hover:tw-bg-black-10 tw-p-1",children:a.jsx(ye.UnlinkButton,{children:a.jsx(o.IconTrashBin16,{})})})]})]})})},lr=({section:e,selectedUrl:n,onSelectUrl:t})=>{const r=e.permanentLink===n;return a.jsx("button",{"data-test-id":"internal-link-selector-section-link",className:o.merge(["tw-py-2 tw-px-2.5 tw-pl-14 tw-leading-5 tw-cursor-pointer tw-w-full",r?"tw-bg-box-selected-strong tw-text-box-selected-strong-inverse hover:tw-bg-box-selected-strong-hover:hover hover:tw-text-box-selected-strong-inverse-hover:hover":"hover:tw-bg-box-neutral-hover hover:tw-text-box-neutral-inverse-hover"]),onClick:()=>t(e.permanentLink),children:a.jsxs("div",{className:"tw-flex tw-flex-1 tw-space-x-2 tw-items-center tw-h-6",children:[a.jsx(o.IconDocumentText16,{}),a.jsx("span",{className:"tw-text-s",children:e.title}),a.jsx("span",{className:"tw-flex-auto tw-font-sans tw-text-xs tw-text-right",children:"Section"})]})})},cr=({page:e,selectedUrl:n,onSelectUrl:t,itemsToExpandInitially:r,getDocumentSectionsByDocumentPageId:s})=>{const[c,d]=y.useState(e.id===r.documentId),[g,u]=y.useState([]),b=e.permanentLink===n;y.useEffect(()=>{(async()=>{const v=await s(e.id);u(v)})()},[e.id,s]),y.useEffect(()=>{e.id===r.pageId&&d(!0)},[r,e.id]);const f=[...g.values()],m=f.length>0;return a.jsxs(a.Fragment,{children:[a.jsx("button",{"data-test-id":"internal-link-selector-page-link",className:o.merge(["tw-py-2 tw-pr-2.5 tw-leading-5 tw-cursor-pointer tw-flex tw-w-full",m?"tw-pl-7":"tw-pl-12",b?"tw-bg-box-selected-strong tw-text-box-selected-strong-inverse hover:tw-bg-box-selected-strong-hover:hover hover:tw-text-box-selected-strong-inverse-hover:hover":"hover:tw-bg-box-neutral-hover hover:tw-text-box-neutral-inverse-hover"]),onClick:()=>t(e.permanentLink),children:a.jsxs("div",{className:"tw-flex tw-flex-1 tw-space-x-1 tw-items-center tw-h-6",children:[m&&a.jsx("button",{"data-test-id":"tree-item-toggle",className:"tw-flex tw-items-center tw-justify-center -tw-mr-2 tw-pr-3.5 tw-pt-1.5 tw-pb-1.5 tw-pl-3.5 tw-cursor-pointer",onClick:()=>d(!c),children:a.jsx("div",{className:o.merge(["tw-transition-transform tw-w-0 tw-h-0 tw-font-normal tw-border-t-4 tw-border-t-transparent tw-border-b-4 tw-border-b-transparent tw-border-l-4 tw-border-l-x-strong",c?"tw-rotate-90":""])})}),a.jsx("span",{className:"tw-text-s",children:e.title}),a.jsx("span",{className:"tw-flex-auto tw-font-sans tw-text-xs tw-text-right",children:"Page"})]},e.id)}),c&&f.length>0&&f.map(w=>a.jsx(lr,{section:w,selectedUrl:n,onSelectUrl:t},w.id))]})},Ft=()=>a.jsx("div",{className:"tw-flex tw-justify-center tw-h-10 tw-items-center",children:a.jsx(o.LoadingCircle,{size:o.LoadingCircleSize.Small})}),dr=({documentId:e,selectedUrl:n,onSelectUrl:t,itemsToExpandInitially:r,getDocumentSectionsByDocumentPageId:s,getDocumentPagesByDocumentId:c})=>{const[d,g]=y.useState([]),[u,b]=y.useState(!0),f=[...d.values()],m=!u&&f.length>0;return y.useEffect(()=>{c(e).then(w=>{const v=w.filter(p=>!!p.category).sort((p,E)=>p.category.sort===E.category.sort?p.sort-E.sort:p.category.sort-E.category.sort),x=w.filter(p=>!p.category).sort((p,E)=>p.sort-E.sort);g([...v,...x])}).finally(()=>{b(!1)})},[]),u?a.jsx(Ft,{}):m?a.jsx(a.Fragment,{children:f.map(w=>a.jsx(cr,{page:w,selectedUrl:n,onSelectUrl:t,itemsToExpandInitially:r,getDocumentSectionsByDocumentPageId:s},w.id))}):a.jsx("div",{className:"tw-h-10 tw-flex tw-items-center tw-pr-2.5 tw-pl-7 tw-leading-5 tw-text-s tw-text-text-weak",children:"This document does not contain any pages."})},ur=({document:e,selectedUrl:n,onSelectUrl:t,itemsToExpandInitially:r,getDocumentSectionsByDocumentPageId:s,getDocumentPagesByDocumentId:c})=>{const[d,g]=y.useState(e.id===r.documentId),u=e.permanentLink===n;return y.useEffect(()=>{e.id===r.documentId&&g(!0)},[r,e.id]),a.jsxs(a.Fragment,{children:[a.jsxs("button",{"data-test-id":"internal-link-selector-document-link",className:o.merge(["tw-flex tw-flex-1 tw-space-x-2 tw-items-center tw-py-2 tw-pr-2.5 tw-leading-5 tw-cursor-pointer tw-w-full",u?"tw-bg-box-selected-strong tw-text-box-selected-strong-inverse hover:tw-bg-box-selected-strong-hover:hover hover:tw-text-box-selected-strong-inverse-hover:hover":"hover:tw-bg-box-neutral-hover hover:tw-text-box-neutral-inverse-hover"]),onClick:()=>t(e.permanentLink),children:[a.jsx("button",{role:"button",tabIndex:0,"data-test-id":"tree-item-toggle",className:"tw-flex tw-items-center tw-justify-center -tw-mr-2 tw-pr-3.5 tw-pt-1.5 tw-pb-1.5 tw-pl-3.5 tw-cursor-pointer",onClick:()=>g(!d),children:a.jsx("div",{className:o.merge(["tw-transition-transform tw-w-0 tw-h-0 tw-font-normal tw-border-t-4 tw-border-t-transparent tw-border-b-4 tw-border-b-transparent tw-border-l-4 tw-border-l-x-strong",d?"tw-rotate-90":""])})}),a.jsx(o.IconColorFan16,{}),a.jsx("span",{className:"tw-text-s",children:e.title}),a.jsx("span",{className:"tw-flex-auto tw-font-sans tw-text-xs tw-text-right",children:"Document"})]}),d&&a.jsx(dr,{documentId:e.id,selectedUrl:n,onSelectUrl:t,itemsToExpandInitially:r,getDocumentSectionsByDocumentPageId:s,getDocumentPagesByDocumentId:c})]})},gr=({selectedUrl:e,onSelectUrl:n,getAllDocuments:t,getDocumentPagesByDocumentId:r,getDocumentSectionsByDocumentPageId:s})=>{const[c,d]=y.useState(!0),[g,u]=y.useState([]),[b,f]=y.useState({documentId:void 0,pageId:void 0}),m=[...g.values()];y.useEffect(()=>{e&&m.length>0&&w().then(v=>{f(v)})},[m.length]),y.useEffect(()=>{t().then(v=>{u(v)}).finally(()=>{d(!1)})},[]);const w=async()=>{const v={documentId:void 0,pageId:void 0};if(m.find(p=>p.permanentLink===e))return v;for(const p of m){const L=[...(await r(p.id)).values()];if(!!L.find(O=>O.permanentLink===e))return v.documentId=p.id,v;for(const O of L)if(!![...(await s(O.id)).values()].find(M=>M.permanentLink===e))return v.documentId=p.id,v.pageId=O.id,v}return v};return c?a.jsx(Ft,{}):a.jsx(a.Fragment,{children:m.map(v=>a.jsx(ur,{document:v,selectedUrl:e,onSelectUrl:n,itemsToExpandInitially:b,getDocumentSectionsByDocumentPageId:s,getDocumentPagesByDocumentId:r},v.id))})},Mt=({url:e,onUrlChange:n,buttonSize:t=o.ButtonSize.Medium,getAllDocuments:r,getDocumentPagesByDocumentId:s,getDocumentSectionsByDocumentPageId:c})=>{const{open:d,isOpen:g,close:u}=yn.useOverlayTriggerState({}),[b,f]=y.useState(e),m=x=>{f(x)},w=x=>{x.key==="Enter"&&v()};y.useEffect(()=>{e&&!b&&f(e)},[e,b]);const v=()=>{n==null||n(b),u()};return a.jsxs("div",{"data-test-id":"internal-link-selector",onKeyDown:w,children:[a.jsx(o.Button,{icon:a.jsx(o.IconLink,{}),size:t,type:o.ButtonType.Button,style:o.ButtonStyle.Default,emphasis:o.ButtonEmphasis.Default,onClick:()=>d(),children:"Internal link"}),a.jsxs(o.Modal,{zIndex:1001,onClose:()=>u(),isOpen:g,isDismissable:!0,children:[a.jsx(o.Modal.Header,{title:"Select internal link"}),a.jsx(o.Modal.Body,{children:a.jsx(gr,{selectedUrl:b,onSelectUrl:m,getAllDocuments:r,getDocumentPagesByDocumentId:s,getDocumentSectionsByDocumentPageId:c})}),a.jsx(o.Modal.Footer,{buttons:[{children:"Cancel",onClick:()=>u(),style:o.ButtonStyle.Default,emphasis:o.ButtonEmphasis.Default},{children:"Choose",onClick:x=>{x==null||x.preventDefault(),v()},style:o.ButtonStyle.Default,emphasis:o.ButtonEmphasis.Strong,disabled:!b}]})]})]})},Dt=({onUrlChange:e,onToggleTab:n,isValidUrlOrEmpty:t,appBridge:r,clearable:s,placeholder:c,newTab:d,openInNewTab:g,url:u="",required:b,info:f,label:m,buttonSize:w,hideInternalLinkButton:v})=>{const x=t?t(u):ee(u),p=d??(g?o.CheckboxState.Checked:o.CheckboxState.Unchecked);return a.jsxs("div",{"data-test-id":"link-input",children:[a.jsx(o.FormControl,{label:{children:m,htmlFor:"url",required:b,tooltip:f?{content:f,position:o.TooltipPosition.Top}:void 0},children:a.jsx(o.TextInput,{id:"url",value:u,clearable:s,onChange:e,placeholder:c??"https://example.com",focusOnMount:!0})}),!x&&a.jsx("div",{className:"tw-text-text-negative tw-mt-1 tw-text-s",children:"Please enter a valid URL."}),!v&&a.jsx("div",{className:"tw-mt-3",children:a.jsx(Mt,{url:u,onUrlChange:e,buttonSize:w??o.ButtonSize.Medium,getAllDocuments:()=>r.getAllDocuments(),getDocumentPagesByDocumentId:E=>r.getDocumentPagesByDocumentId(E),getDocumentSectionsByDocumentPageId:E=>r.getDocumentSectionsByDocumentPageId(E)})}),a.jsx("div",{className:"tw-mt-3",children:a.jsx(o.Checkbox,{value:"new-tab",label:"Open in new tab",state:p,onChange:n})})]})},Ot=({state:e,onTextChange:n,onUrlChange:t,onToggleTab:r,onCancel:s,onSave:c,isValidUrlOrEmpty:d,hasValues:g,testId:u,appBridge:b,children:f})=>a.jsxs("div",{"data-test-id":u,className:"tw-bg-white tw-rounded tw-shadow tw-p-7 tw-min-w-[400px] tw-overflow-y-auto",children:[a.jsx(o.FormControl,{label:{children:"Text",htmlFor:"linkText",required:!0},children:a.jsx(o.TextInput,{id:"linkText",value:e.text,placeholder:"Link Text",onChange:n})}),f,a.jsx("div",{className:"tw-mt-5",children:a.jsx(Dt,{url:e.url,newTab:e.newTab,onUrlChange:t,onToggleTab:r,isValidUrlOrEmpty:d,appBridge:b})}),a.jsx("div",{className:"tw-mt-3",children:a.jsxs("div",{className:"tw-pt-5 tw-flex tw-gap-x-3 tw-justify-end tw-border-t tw-border-t-black-10",children:[a.jsx(o.Button,{onClick:s,size:o.ButtonSize.Medium,style:o.ButtonStyle.Default,emphasis:o.ButtonEmphasis.Default,children:"Cancel"}),a.jsx(o.Button,{onClick:c,size:o.ButtonSize.Medium,icon:a.jsx(o.IconCheckMark20,{}),disabled:!g||!d(e==null?void 0:e.url),children:"Save"})]})})]}),hr=e=>{var t;const n=i.getAboveNode(e,{match:{type:P}});return Array.isArray(n)&&((t=n[0])==null?void 0:t.buttonStyle)||"primary"},mr={url:"",text:"",buttonStyle:"primary",newTab:o.CheckboxState.Unchecked},fr=()=>{const[e,n]=y.useReducer((t,r)=>{const{type:s,payload:c}=r;switch(s){case"NEW_TAB":return{...t,newTab:o.CheckboxState.Checked};case"SAME_TAB":return{...t,newTab:o.CheckboxState.Unchecked};case"URL":case"TEXT":case"BUTTON_STYLE":case"INIT":return{...t,...c};default:return t}},mr);return[e,n]},wr=()=>{const e=i.useEditorRef(),[n,t]=fr();y.useEffect(()=>{const m=hr(e);t({type:"INIT",payload:{text:F.text(),buttonStyle:m,newTab:F.newTab()?o.CheckboxState.Checked:o.CheckboxState.Unchecked,url:F.url()}})},[t,e]);const r=m=>{t({type:"TEXT",payload:{text:m}})},s=m=>{t({type:"BUTTON_STYLE",payload:{buttonStyle:m}})},c=m=>{t({type:"URL",payload:{url:m}})},d=m=>{t(m?{type:"NEW_TAB"}:{type:"SAME_TAB"})},g=()=>{I.hide()},u=m=>{if(!ee(n.url)||!b)return;const w=ge(n.url);I.text(n.text),I.url(w),I.buttonStyle(n.buttonStyle),I.newTab(n.newTab===o.CheckboxState.Checked),Le(e)&&(m==null||m.preventDefault())},b=n.url!==""&&n.text!=="",{appBridge:f}=i.getPluginOptions(e,P);return i.useHotkeys("enter",u,{enableOnFormTags:["INPUT"]},[]),{state:n,onTextChange:r,onButtonStyleChange:s,onUrlChange:c,onToggleTab:d,onCancel:g,onSave:u,hasValues:b,isValidUrlOrEmpty:ee,appBridge:f}},we="link-plugin";var C=(e=>(e.heading1="heading1",e.heading2="heading2",e.heading3="heading3",e.heading4="heading4",e.custom1="custom1",e.custom2="custom2",e.custom3="custom3",e.quote="quote",e.imageCaption="imageCaption",e.imageTitle="imageTitle",e.p="p",e))(C||{});const N={heading1:{fontSize:"var(--f-theme-settings-heading1-font-size)",lineHeight:"var(--f-theme-settings-heading1-line-height)",marginTop:"var(--f-theme-settings-heading1-margin-top)",marginBottom:"var(--f-theme-settings-heading1-margin-bottom)",textDecoration:"var(--f-theme-settings-heading1-text-decoration)",fontStyle:"var(--f-theme-settings-heading1-font-style)",textTransform:"var(--f-theme-settings-heading1-text-transform)",letterSpacing:"var(--f-theme-settings-heading1-letter-spacing)",fontWeight:"var(--f-theme-settings-heading1-font-weight)",fontFamily:"var(--f-theme-settings-heading1-font-family)",color:"var(--f-theme-settings-heading1-color)"},heading2:{fontSize:"var(--f-theme-settings-heading2-font-size)",lineHeight:"var(--f-theme-settings-heading2-line-height)",marginTop:"var(--f-theme-settings-heading2-margin-top)",marginBottom:"var(--f-theme-settings-heading2-margin-bottom)",textDecoration:"var(--f-theme-settings-heading2-text-decoration)",fontStyle:"var(--f-theme-settings-heading2-font-style)",textTransform:"var(--f-theme-settings-heading2-text-transform)",letterSpacing:"var(--f-theme-settings-heading2-letter-spacing)",fontWeight:"var(--f-theme-settings-heading2-font-weight)",fontFamily:"var(--f-theme-settings-heading2-font-family)",color:"var(--f-theme-settings-heading2-color)"},heading3:{fontSize:"var(--f-theme-settings-heading3-font-size)",lineHeight:"var(--f-theme-settings-heading3-line-height)",marginTop:"var(--f-theme-settings-heading3-margin-top)",marginBottom:"var(--f-theme-settings-heading3-margin-bottom)",textDecoration:"var(--f-theme-settings-heading3-text-decoration)",fontStyle:"var(--f-theme-settings-heading3-font-style)",textTransform:"var(--f-theme-settings-heading3-text-transform)",letterSpacing:"var(--f-theme-settings-heading3-letter-spacing)",fontWeight:"var(--f-theme-settings-heading3-font-weight)",fontFamily:"var(--f-theme-settings-heading3-font-family)",color:"var(--f-theme-settings-heading3-color)"},heading4:{fontSize:"var(--f-theme-settings-heading4-font-size)",lineHeight:"var(--f-theme-settings-heading4-line-height)",marginTop:"var(--f-theme-settings-heading4-margin-top)",marginBottom:"var(--f-theme-settings-heading4-margin-bottom)",textDecoration:"var(--f-theme-settings-heading4-text-decoration)",fontStyle:"var(--f-theme-settings-heading4-font-style)",textTransform:"var(--f-theme-settings-heading4-text-transform)",letterSpacing:"var(--f-theme-settings-heading4-letter-spacing)",fontWeight:"var(--f-theme-settings-heading4-font-weight)",fontFamily:"var(--f-theme-settings-heading4-font-family)",color:"var(--f-theme-settings-heading4-color)"},custom1:{fontSize:"var(--f-theme-settings-custom1-font-size)",lineHeight:"var(--f-theme-settings-custom1-line-height)",marginTop:"var(--f-theme-settings-custom1-margin-top)",marginBottom:"var(--f-theme-settings-custom1-margin-bottom)",textDecoration:"var(--f-theme-settings-custom1-text-decoration)",fontStyle:"var(--f-theme-settings-custom1-font-style)",textTransform:"var(--f-theme-settings-custom1-text-transform)",letterSpacing:"var(--f-theme-settings-custom1-letter-spacing)",fontWeight:"var(--f-theme-settings-custom1-font-weight)",fontFamily:"var(--f-theme-settings-custom1-font-family)",color:"var(--f-theme-settings-custom1-color)"},custom2:{fontSize:"var(--f-theme-settings-custom2-font-size)",lineHeight:"var(--f-theme-settings-custom2-line-height)",marginTop:"var(--f-theme-settings-custom2-margin-top)",marginBottom:"var(--f-theme-settings-custom2-margin-bottom)",textDecoration:"var(--f-theme-settings-custom2-text-decoration)",fontStyle:"var(--f-theme-settings-custom2-font-style)",textTransform:"var(--f-theme-settings-custom2-text-transform)",letterSpacing:"var(--f-theme-settings-custom2-letter-spacing)",fontWeight:"var(--f-theme-settings-custom2-font-weight)",fontFamily:"var(--f-theme-settings-custom2-font-family)",color:"var(--f-theme-settings-custom2-color)"},custom3:{fontSize:"var(--f-theme-settings-custom3-font-size)",lineHeight:"var(--f-theme-settings-custom3-line-height)",marginTop:"var(--f-theme-settings-custom3-margin-top)",marginBottom:"var(--f-theme-settings-custom3-margin-bottom)",textDecoration:"var(--f-theme-settings-custom3-text-decoration)",fontStyle:"var(--f-theme-settings-custom3-font-style)",textTransform:"var(--f-theme-settings-custom3-text-transform)",letterSpacing:"var(--f-theme-settings-custom3-letter-spacing)",fontWeight:"var(--f-theme-settings-custom3-font-weight)",fontFamily:"var(--f-theme-settings-custom3-font-family)",color:"var(--f-theme-settings-custom3-color)"},p:{fontSize:"var(--f-theme-settings-body-font-size)",lineHeight:"var(--f-theme-settings-body-line-height)",marginTop:"var(--f-theme-settings-body-margin-top)",marginBottom:"var(--f-theme-settings-body-margin-bottom)",textDecoration:"var(--f-theme-settings-body-text-decoration)",fontStyle:"var(--f-theme-settings-body-font-style)",textTransform:"var(--f-theme-settings-body-text-transform)",letterSpacing:"var(--f-theme-settings-body-letter-spacing)",fontWeight:"var(--f-theme-settings-body-font-weight)",fontFamily:"var(--f-theme-settings-body-font-family)",color:"var(--f-theme-settings-body-color)"},quote:{fontSize:"var(--f-theme-settings-quote-font-size)",lineHeight:"var(--f-theme-settings-quote-line-height)",marginTop:"var(--f-theme-settings-quote-margin-top)",marginBottom:"var(--f-theme-settings-quote-margin-bottom)",textDecoration:"var(--f-theme-settings-quote-text-decoration)",fontStyle:"var(--f-theme-settings-quote-font-style)",textTransform:"var(--f-theme-settings-quote-text-transform)",letterSpacing:"var(--f-theme-settings-quote-letter-spacing)",fontWeight:"var(--f-theme-settings-quote-font-weight)",fontFamily:"var(--f-theme-settings-quote-font-family)",color:"var(--f-theme-settings-quote-color)"},imageCaption:{fontSize:"var(--f-theme-settings-image-caption-font-size)",lineHeight:"var(--f-theme-settings-image-caption-line-height)",marginTop:"var(--f-theme-settings-image-caption-margin-top)",marginBottom:"var(--f-theme-settings-image-caption-margin-bottom)",textDecoration:"var(--f-theme-settings-image-caption-text-decoration)",fontStyle:"var(--f-theme-settings-image-caption-font-style)",textTransform:"var(--f-theme-settings-image-caption-text-transform)",letterSpacing:"var(--f-theme-settings-image-caption-letter-spacing)",fontWeight:"var(--f-theme-settings-image-caption-font-weight)",fontFamily:"var(--f-theme-settings-image-caption-font-family)",color:"var(--f-theme-settings-image-caption-color)"},imageTitle:{fontSize:"var(--f-theme-settings-image-title-font-size)",lineHeight:"var(--f-theme-settings-image-title-line-height)",marginTop:"var(--f-theme-settings-image-title-margin-top)",marginBottom:"var(--f-theme-settings-image-title-margin-bottom)",textDecoration:"var(--f-theme-settings-image-title-text-decoration)",fontStyle:"var(--f-theme-settings-image-title-font-style)",textTransform:"var(--f-theme-settings-image-title-text-transform)",letterSpacing:"var(--f-theme-settings-image-title-letter-spacing)",fontWeight:"var(--f-theme-settings-image-title-font-weight)",fontFamily:"var(--f-theme-settings-image-title-font-family)",color:"var(--f-theme-settings-image-title-color)"},[we]:{fontSize:"var(--f-theme-settings-link-font-size)",lineHeight:"var(--f-theme-settings-link-line-height)",marginTop:"var(--f-theme-settings-link-margin-top)",marginBottom:"var(--f-theme-settings-link-margin-bottom)",textDecoration:"var(--f-theme-settings-link-text-decoration)",fontStyle:"var(--f-theme-settings-link-font-style)",textTransform:"var(--f-theme-settings-link-text-transform)",letterSpacing:"var(--f-theme-settings-link-letter-spacing)",fontWeight:"var(--f-theme-settings-link-font-weight)",fontFamily:"var(--f-theme-settings-link-font-family)",color:"var(--f-theme-settings-link-color)"},...fe},yr=()=>{const e=wr(),{state:n,onButtonStyleChange:t}=e;return a.jsx(Ot,{...e,testId:"floating-button-insert",children:a.jsx("div",{className:"tw-pt-5",children:a.jsxs(o.FormControl,{label:{children:"Button Style",htmlFor:"buttonStyle",required:!0},children:[a.jsx(Me,{id:"primary",styles:N.buttonPrimary,isActive:n.buttonStyle==="primary",onClick:()=>t("primary"),children:n.text||"Primary Button"}),a.jsx(Me,{id:"secondary",styles:N.buttonSecondary,isActive:n.buttonStyle==="secondary",onClick:()=>t("secondary"),children:n.text||"Secondary Button"}),a.jsx(Me,{id:"tertiary",styles:N.buttonTertiary,isActive:n.buttonStyle==="tertiary",onClick:()=>t("tertiary"),children:n.text||"Tertiary Button"})]})})})},Me=({id:e,styles:n,isActive:t,onClick:r,children:s})=>{const[c,d]=y.useState(!1),g=()=>n&&n.hover&&c?{...n,...n.hover}:n;return a.jsx("button",{"data-test-id":`floating-button-insert-${e}`,onMouseEnter:()=>d(!0),onMouseLeave:()=>d(!1),onClick:r,style:{...g(),marginTop:0,marginBottom:0},className:t?"tw-outline tw-outline-1 tw-outline-violet-60 tw-outline-offset-2 tw-w-fit":"tw-w-fit",children:s})},br=()=>{const e=te().isEditing(),n=a.jsx(yr,{}),t=e?n:a.jsx(ir,{});return a.jsxs(a.Fragment,{children:[a.jsx(ye.InsertRoot,{children:n}),a.jsx(ye.EditRoot,{children:t})]})},P="button",Ut="button-plugin",_t=e=>i.createPluginFactory({key:P,isElement:!0,isInline:!0,props:({element:n})=>({nodeProps:{href:n==null?void 0:n.url,target:n==null?void 0:n.target}}),withOverrides:Tt,renderAfterEditable:br,options:{isUrl:he,rangeBeforeOptions:{matchString:" ",skipInvalid:!0,afterMatch:!0},triggerFloatingButtonHotkeys:"command+shift+k, ctrl+shift+k",appBridge:e},then:(n,{type:t})=>({deserializeHtml:{rules:[{validNodeName:"A",validClassName:"btn"}],getNode:r=>({type:t,url:r.getAttribute("href"),target:r.getAttribute("target")||"_blank"})}})})();class Ht extends o.Plugin{constructor({styles:t=fe,...r}){super(Ut,{button:or,markupElement:new ar,...r});A(this,"styles",{});A(this,"appBridge");this.styles=t,this.appBridge=r==null?void 0:r.appBridge}plugins(){return[_t(this.appBridge)]}}const vr=({floatingOptions:e,...n})=>{const t=i.useEditorRef(),r=i.usePlateSelectors(t.id).keyEditor(),s=te().mode(),c=te().isOpen(t.id),{triggerFloatingButtonHotkeys:d}=i.getPluginOptions(t,P),g=y.useCallback(()=>{const w=i.getAboveNode(t,{match:{type:i.getPluginType(t,P)}});if(w){const[,v]=w;return i.getRangeBoundingClientRect(t,{anchor:i.getStartPoint(t,v),focus:i.getEndPoint(t,v)})}return i.getDefaultBoundingClientRect()},[t]),u=c&&s==="edit",{update:b,style:f,floating:m}=zt({open:u,getBoundingClientRect:g,...e});return y.useEffect(()=>{const w=Nt(t);if(w&&I.url(w),t.selection&&i.someNode(t,{match:{type:i.getPluginType(t,P)}})){I.show("edit",t.id),b();return}F.mode()==="edit"&&I.hide()},[t,r,b]),i.useHotkeys(d,w=>{w.preventDefault(),F.mode()==="edit"&&me(t)},{enableOnContentEditable:!0},[]),Ir(),Vt(),{style:{...f,zIndex:1e3},...n,ref:i.useComposedRef(n.ref,m)}},Cr=({floatingOptions:e,...n})=>{const t=i.useEditorRef(),r=Qe.useFocused(),s=te().mode(),c=te().isOpen(t.id),{triggerFloatingButtonHotkeys:d}=i.getPluginOptions(t,P);i.useHotkeys(d,f=>{f.preventDefault(),Fe(t,{focused:r})},{enableOnContentEditable:!0},[r]);const{update:g,style:u,floating:b}=zt({open:c&&s==="insert",getBoundingClientRect:i.getSelectionBoundingClientRect,whileElementsMounted:void 0,...e});return y.useEffect(()=>{c&&g(),I.updated(c)},[c,g]),Vt(),{style:{...u,zIndex:1e3},...n,ref:i.useComposedRef(n.ref,b)}},kr=e=>{const n=i.useEditorRef();return{onClick:y.useCallback(()=>{me(n)},[n]),...e}},pr=i.createComponentAs(e=>{const n=kr(e);return i.createElementAs("button",n)}),xr=e=>{const n=i.useEditorRef();return{onClick:y.useCallback(()=>{ne(n),i.focusEditor(n,n.selection??void 0)},[n]),...e}},Pr=i.createComponentAs(e=>{const n=xr(e);return i.createElementAs(i.Button,n)}),Sr=i.createComponentAs(e=>{var t;const n=vr(e);return((t=n.style)==null?void 0:t.display)==="none"?null:i.createElementAs("div",n)}),Tr=i.createComponentAs(e=>{var t;const n=Cr(e);return((t=n.style)==null?void 0:t.display)==="none"?null:i.createElementAs("div",n)}),ye={EditRoot:Sr,InsertRoot:Tr,EditButton:pr,UnlinkButton:Pr},Er=e=>{const n=te().updated(),t=y.useRef(null);y.useEffect(()=>{t.current&&n&&setTimeout(()=>{var s;(s=t.current)==null||s.focus()},0)},[n]);const r=y.useCallback(s=>{I.url(s.target.value)},[]);return i.mergeProps({onChange:r,defaultValue:F.url()},{...e,ref:i.useComposedRef(e.ref,t)})},Ir=()=>{const e=i.useEditorRef();i.useHotkeys("*",n=>{n.key==="Enter"&&Le(e)&&n.preventDefault()},{enableOnFormTags:["INPUT"]},[])},Vt=()=>{const e=i.useEditorRef();i.useHotkeys("escape",()=>{if(F.mode()==="edit"){if(F.isEditing()){I.show("edit",e.id),i.focusEditor(e,e.selection??void 0);return}I.hide()}},{enableOnFormTags:["INPUT"],enableOnContentEditable:!0},[])},Br=12,Nr=-22,Lr=96,zt=e=>i.useVirtualFloating({placement:"bottom-start",middleware:[i.offset({mainAxis:Br,alignmentAxis:Nr}),i.flip({padding:Lr})],...e}),Ar=({id:e="rte",isEditing:n,value:t,columns:r,gap:s,placeholder:c,plugins:d,onTextChange:g,showSerializedText:u})=>{const[b,f]=y.useState(!1),m=w=>{g&&w!==t&&g(w),f(!1)};return y.useEffect(()=>{const w=v=>(v.preventDefault(),v.returnValue="Unprocessed changes");return b&&window.addEventListener("beforeunload",w),()=>window.removeEventListener("beforeunload",w)},[b]),n?a.jsx(o.RichTextEditor,{id:e,value:t,border:!1,placeholder:c,plugins:d,onValueChanged:()=>f(!0),onTextChange:m,hideExternalFloatingModals:w=>{F.isOpen(w)&&I.reset()}}):a.jsx(Gn,{value:t,columns:r,gap:s,show:u,plugins:d})},Fr=({floatingOptions:e,...n})=>{const t=i.useEditorRef(),r=Qe.useFocused(),s=i.useFloatingLinkSelectors().mode(),c=i.useFloatingLinkSelectors().isOpen(t.id),{triggerFloatingLinkHotkeys:d}=i.getPluginOptions(t,i.ELEMENT_LINK);i.useHotkeys(d,f=>{i.triggerFloatingLinkInsert(t,{focused:r})&&f.preventDefault()},{enableOnContentEditable:!0},[r]);const{update:g,style:u,floating:b}=i.useVirtualFloatingLink({editorId:t.id,open:c&&s==="insert",getBoundingClientRect:i.getSelectionBoundingClientRect,whileElementsMounted:()=>{},...e});return y.useEffect(()=>{c?(g(),i.floatingLinkActions.updated(!0)):i.floatingLinkActions.updated(!1)},[c,g]),i.useFloatingLinkEscape(),{style:{...u,zIndex:1e3},...n,ref:i.useComposedRef(n.ref,b)}},Mr=i.createComponentAs(e=>{var t;const n=Fr({...e,floatingOptions:{strategy:"absolute"}});return((t=n.style)==null?void 0:t.display)==="none"?null:i.createElementAs("div",n)}),Dr=i.createComponentAs(e=>{var t;const n=Ur({...e,floatingOptions:{strategy:"absolute"}});return((t=n.style)==null?void 0:t.display)==="none"?null:i.createElementAs("div",n)});i.FloatingLink.EditRoot=Dr,i.FloatingLink.InsertRoot=Mr;const be=i.FloatingLink,Or=()=>{const e=i.useFloatingLinkUrlInput({});return a.jsx("div",{"data-test-id":"floating-link-edit",className:"tw-bg-white tw-text-text tw-rounded tw-shadow tw-p-4 tw-min-w-[400px]",children:a.jsxs("span",{"data-test-id":"preview-link-flyout",className:"tw-flex tw-justify-between tw-items-center",children:[a.jsx("span",{className:"tw-pointer-events-none",children:e.defaultValue}),a.jsxs("span",{className:"tw-flex tw-gap-2",children:[a.jsx("span",{role:"button",tabIndex:0,"data-test-id":"edit-link-button",className:"tw-transition tw-cursor-pointer tw-rounded hover:tw-bg-black-10 tw-p-1",children:a.jsx(be.EditButton,{children:a.jsx(o.IconPen16,{})})}),a.jsx("span",{role:"button",tabIndex:0,"data-test-id":"remove-link-button",className:"tw-transition tw-cursor-pointer tw-rounded hover:tw-bg-black-10 tw-p-1",children:a.jsx(be.UnlinkButton,{children:a.jsx(o.IconTrashBin16,{})})})]})]})})},Ur=({floatingOptions:e,...n})=>{const t=i.useEditorRef(),r=i.usePlateSelectors().keyEditor(),s=i.useFloatingLinkSelectors().mode(),c=i.useFloatingLinkSelectors().isOpen(t.id),{triggerFloatingLinkHotkeys:d="command+k, ctrl+k"}=i.getPluginOptions(t,i.ELEMENT_LINK),g=y.useCallback(()=>{const w=i.getAboveNode(t,{match:{type:i.getPluginType(t,i.ELEMENT_LINK)}});if(w){const[,v]=w;return i.getRangeBoundingClientRect(t,{anchor:i.getStartPoint(t,v),focus:i.getEndPoint(t,v)})}return i.getDefaultBoundingClientRect()},[t]),u=c&&s==="edit",{update:b,style:f,floating:m}=i.useVirtualFloatingLink({editorId:t.id,open:u,getBoundingClientRect:g,...e});return y.useEffect(()=>{const w=St(t);if(w&&i.floatingLinkActions.url(w),t.selection&&i.someNode(t,{match:{type:i.getPluginType(t,i.ELEMENT_LINK)}})){i.floatingLinkActions.show("edit",t.id),b();return}i.floatingLinkSelectors.mode()==="edit"&&i.floatingLinkActions.hide()},[t,r,b]),i.useHotkeys(d,w=>{w.preventDefault(),i.floatingLinkSelectors.mode()==="edit"&&i.triggerFloatingLinkEdit(t)},{enableOnContentEditable:!0},[]),i.useFloatingLinkEnter(),i.useFloatingLinkEscape(),{style:{...f,zIndex:1e3},...n,ref:i.useComposedRef(n.ref,m)}},_r={url:"",text:"",newTab:o.CheckboxState.Unchecked},Hr=()=>{const[e,n]=y.useReducer((t,r)=>{const{type:s,payload:c}=r;switch(s){case"NEW_TAB":return{...t,newTab:o.CheckboxState.Checked};case"SAME_TAB":return{...t,newTab:o.CheckboxState.Unchecked};case"URL":case"TEXT":case"INIT":return{...t,...c};default:return t}},_r);return[e,n]},Vr=()=>{const e=i.useEditorRef(),[n,t]=Hr();y.useEffect(()=>{const f=pt(e),m=xt(e);t({type:"INIT",payload:{text:i.floatingLinkSelectors.text(),newTab:i.floatingLinkSelectors.newTab()?o.CheckboxState.Checked:o.CheckboxState.Unchecked,url:f&&m===""?f:i.floatingLinkSelectors.url()}})},[t,e]);const r=f=>{t({type:"TEXT",payload:{text:f}})},s=f=>{t({type:"URL",payload:{url:f}})},c=f=>{t(f?{type:"NEW_TAB"}:{type:"SAME_TAB"})},d=()=>{i.floatingLinkActions.hide()},g=f=>{if(!ee(n.url)||!u)return;const m=ge(n.url);i.floatingLinkActions.text(n.text),i.floatingLinkActions.url(m),i.floatingLinkActions.newTab(n.newTab===o.CheckboxState.Checked),i.submitFloatingLink(e)&&(f==null||f.preventDefault())},u=n.url!==""&&n.text!=="",{appBridge:b}=i.getPluginOptions(e,i.ELEMENT_LINK);return i.useHotkeys("enter",g,{enableOnFormTags:["INPUT"]},[]),{state:n,onTextChange:r,onUrlChange:s,onToggleTab:c,onCancel:d,onSave:g,hasValues:u,isValidUrlOrEmpty:ee,appBridge:b}},zr=()=>a.jsx(Ot,{...Vr(),testId:"floating-link-insert"}),$r=({readOnly:e})=>{const n=i.useFloatingLinkSelectors().isEditing();if(e)return null;const t=a.jsx(zr,{}),r=n?t:a.jsx(Or,{});return a.jsxs(a.Fragment,{children:[a.jsx(be.InsertRoot,{children:t}),a.jsx(be.EditRoot,{children:r})]})},Wr=({id:e,editorId:n})=>{const t=i.usePlateEditorState(i.useEventPlateId(n)),r=!!i.isRangeInSameBlock(t,{at:t.selection});return a.jsx("div",{"data-plugin-id":e,children:a.jsx(i.LinkToolbarButton,{tooltip:o.getTooltip(r?`Link
3
+ ${o.getHotkeyByPlatform("Ctrl+K")}`:"Links can only be set for a single text block."),icon:a.jsx("span",{className:"tw-p-2 tw-h-8 tw-justify-center tw-items-center tw-flex",children:a.jsx(o.IconLink,{size:o.IconSize.Size16})}),classNames:o.getButtonClassNames(r),styles:{root:{width:"24px",height:"24px"}},actionHandler:"onMouseDown"})})},qr=e=>({...i.useElementProps({...e,elementToAttributes:t=>{var r,s;return{href:t.url||((s=(r=t.chosenLink)==null?void 0:r.searchResult)==null?void 0:s.link)||"",target:t.target||"_self"}}}),onMouseOver:t=>{t.stopPropagation()}}),Gr=e=>{const n=qr(e),{attributes:t,children:r}=e;return a.jsx("a",{...t,href:n.href,target:n.target,style:N[we],children:r})};class Kr extends o.MarkupElement{constructor(n=i.ELEMENT_LINK,t=Gr){super(n,t)}}const $t=e=>i.createPluginFactory({...i.createLinkPlugin(),renderAfterEditable:$r,options:{isUrl:he,rangeBeforeOptions:{matchString:" ",skipInvalid:!0,afterMatch:!0},triggerFloatingLinkHotkeys:"command+k, ctrl+k",appBridge:e}})();class Wt extends o.Plugin{constructor(t,r=N[we]){super(we,{button:Wr,markupElement:new Kr,...t});A(this,"appBridge");A(this,"styles",{});this.styles=r,this.appBridge=t==null?void 0:t.appBridge}plugins(){return[$t(this.appBridge)]}}const jr="textstyle-custom1-plugin";class qt extends o.Plugin{constructor({styles:t=N.custom1,...r}={}){super(C.custom1,{label:"Custom 1",markupElement:new Xr,...r});A(this,"styles",{});this.styles=t}plugins(){return[Qr(this.styles)]}}class Xr extends o.MarkupElement{constructor(n=jr,t=Gt){super(n,t)}}const Gt=({element:e,attributes:n,children:t,styles:r})=>{const s=e.align;return a.jsx("p",{...n,style:r,className:o.merge([s&&o.alignmentClassnames[s],o.getColumnBreakClasses(e)]),children:t})},Qr=e=>i.createPluginFactory({key:C.custom1,isElement:!0,deserializeHtml:{rules:[{validClassName:C.custom1}]}})({component:n=>a.jsx(Gt,{...n,styles:e})}),Yr="textstyle-custom2-plugin";class Kt extends o.Plugin{constructor({styles:t=N.custom2,...r}={}){super(C.custom2,{label:"Custom 2",markupElement:new Jr,...r});A(this,"styles",{});this.styles=t}plugins(){return[Zr(this.styles)]}}class Jr extends o.MarkupElement{constructor(n=Yr,t=jt){super(n,t)}}const jt=({element:e,attributes:n,children:t,styles:r})=>{const s=e.align;return a.jsx("p",{...n,className:o.merge([s&&o.alignmentClassnames[s],o.getColumnBreakClasses(e)]),style:r,children:t})},Zr=e=>i.createPluginFactory({key:C.custom2,isElement:!0,deserializeHtml:{rules:[{validClassName:C.custom2}]}})({component:n=>a.jsx(jt,{...n,styles:e})}),Rr="textstyle-custom3-plugin";class Xt extends o.Plugin{constructor({styles:t=N.custom3,...r}={}){super(o.TextStyles.custom3,{label:"Custom 3",markupElement:new ea,...r});A(this,"styles",{});this.styles=t}plugins(){return[ta(this.styles)]}}class ea extends o.MarkupElement{constructor(n=Rr,t=Qt){super(n,t)}}const Qt=({element:e,attributes:n,children:t,styles:r})=>{const s=e.align;return a.jsx("p",{...n,className:o.merge([s&&o.alignmentClassnames[s],o.getColumnBreakClasses(e)]),style:r,children:t})},ta=e=>i.createPluginFactory({key:o.TextStyles.custom3,isElement:!0,deserializeHtml:{rules:[{validClassName:o.TextStyles.custom3}]}})({component:n=>a.jsx(Qt,{...n,styles:e})}),na="textstyle-heading1-plugin";class Yt extends o.Plugin{constructor({styles:t=N.heading1,...r}={}){super(C.heading1,{label:"Heading 1",markupElement:new ra,...r});A(this,"styles",{});this.styles=t}plugins(){return[aa(this.styles)]}}class ra extends o.MarkupElement{constructor(n=na,t=De){super(n,t)}}const De=({element:e,attributes:n,children:t,styles:r})=>{const s=e.align;return a.jsx("h1",{...n,className:o.merge([s&&o.alignmentClassnames[s],o.getColumnBreakClasses(e)]),style:r,children:t})},aa=e=>i.createPluginFactory({key:C.heading1,isElement:!0,component:De,deserializeHtml:{rules:[{validNodeName:["h1","H1"]}]}})({component:n=>a.jsx(De,{...n,styles:e})}),sa="textstyle-heading2-plugin";class Jt extends o.Plugin{constructor({styles:t=N.heading2,...r}={}){super(C.heading2,{label:"Heading 2",markupElement:new oa,...r});A(this,"styles",{});this.styles=t}plugins(){return[ia(this.styles)]}}class oa extends o.MarkupElement{constructor(n=sa,t=Oe){super(n,t)}}const Oe=({element:e,attributes:n,children:t,styles:r})=>{const s=e.align;return a.jsx("h2",{...n,className:o.merge([s&&o.alignmentClassnames[s],o.getColumnBreakClasses(e)]),style:r,children:t})},ia=e=>i.createPluginFactory({key:C.heading2,isElement:!0,component:Oe,deserializeHtml:{rules:[{validNodeName:["h2","H2"]}]}})({component:n=>a.jsx(Oe,{...n,styles:e})}),la="textstyle-heading3-plugin";class Zt extends o.Plugin{constructor({styles:t=N.heading3,...r}={}){super(C.heading3,{label:"Heading 3",markupElement:new ca,...r});A(this,"styles",{});this.styles=t}plugins(){return[da(this.styles)]}}class ca extends o.MarkupElement{constructor(n=la,t=Ue){super(n,t)}}const Ue=({element:e,attributes:n,children:t,styles:r})=>{const s=e.align;return a.jsx("h3",{...n,className:o.merge([s&&o.alignmentClassnames[s],o.getColumnBreakClasses(e)]),style:r,children:t})},da=e=>i.createPluginFactory({key:C.heading3,isElement:!0,component:Ue,deserializeHtml:{rules:[{validNodeName:["h3","H3"]}]}})({component:n=>a.jsx(Ue,{...n,styles:e})}),ua="textstyle-heading4-plugin";class Rt extends o.Plugin{constructor({styles:t=N.heading4,...r}={}){super(C.heading4,{label:"Heading 4",markupElement:new ga,...r});A(this,"styles",{});this.styles=t}plugins(){return[ha(this.styles)]}}class ga extends o.MarkupElement{constructor(n=ua,t=_e){super(n,t)}}const _e=({element:e,attributes:n,children:t,styles:r})=>{const s=e.align;return a.jsx("h4",{...n,className:o.merge([s&&o.alignmentClassnames[s],o.getColumnBreakClasses(e)]),style:r,children:t})},ha=e=>i.createPluginFactory({key:C.heading4,isElement:!0,component:_e,deserializeHtml:{rules:[{validNodeName:["h4","H4"]}]}})({component:n=>a.jsx(_e,{...n,styles:e})}),ma="textstyle-imageCaption-plugin";class en extends o.Plugin{constructor({styles:t=N.imageCaption,...r}={}){super(C.imageCaption,{label:"Image Caption",markupElement:new fa,...r});A(this,"styles",{});this.styles=t}plugins(){return[wa(this.styles)]}}class fa extends o.MarkupElement{constructor(n=ma,t=He){super(n,t)}}const He=({element:e,attributes:n,children:t,styles:r})=>{const s=e.align;return a.jsx("p",{...n,className:o.merge([s&&o.alignmentClassnames[s],o.getColumnBreakClasses(e)]),style:r,children:t})},wa=e=>i.createPluginFactory({key:C.imageCaption,isElement:!0,component:He,deserializeHtml:{rules:[{validClassName:C.imageCaption}]}})({component:n=>a.jsx(He,{...n,styles:e})}),ya="textstyle-imageTitle-plugin";class tn extends o.Plugin{constructor({styles:t=N.imageTitle,...r}={}){super(C.imageTitle,{label:"Image Title",markupElement:new ba,...r});A(this,"styles",{});this.styles=t}plugins(){return[va(this.styles)]}}class ba extends o.MarkupElement{constructor(n=ya,t=Ve){super(n,t)}}const Ve=({element:e,attributes:n,children:t,styles:r})=>{const s=e.align;return a.jsx("p",{...n,className:o.merge([s&&o.alignmentClassnames[s],o.getColumnBreakClasses(e)]),style:r,children:t})},va=e=>i.createPluginFactory({key:C.imageTitle,isElement:!0,component:Ve,deserializeHtml:{rules:[{validClassName:C.imageTitle}]}})({component:n=>a.jsx(Ve,{...n,styles:e})});class nn extends o.Plugin{constructor({styles:t=N.p,...r}={}){super(C.p,{markupElement:new an,label:"Body Text",...r});A(this,"styles",{});this.styles=t}plugins(){return[sn(this.styles)]}}const rn="tw-m-0 tw-px-0 tw-py-0",ve=({element:e,attributes:n,children:t,styles:r})=>{const s=e.align,c=o.merge([s&&o.alignmentClassnames[s],rn,o.getColumnBreakClasses(e)]);return a.jsx("p",{...n,className:c,style:r,children:t})};class an extends o.MarkupElement{constructor(n=C.p,t=ve){super(n,t)}}const sn=e=>i.createPluginFactory({...i.createParagraphPlugin(),key:C.p,isElement:!0,component:ve})({component:n=>a.jsx(ve,{...n,styles:e})}),Ca="textstyle-quote-plugin";class on extends o.Plugin{constructor({styles:t=N.quote,...r}={}){super(C.quote,{label:"Quote",markupElement:new ka,...r});A(this,"styles",{});this.styles=t}plugins(){return[ln(this.styles)]}}class ka extends o.MarkupElement{constructor(n=Ca,t=Ce){super(n,t)}}const Ce=({element:e,attributes:n,children:t,styles:r})=>{const s=e.align;return a.jsx("blockquote",{...n,className:o.merge([s&&o.alignmentClassnames[s],o.getColumnBreakClasses(e)]),style:r,children:t})},ln=e=>i.createPluginFactory({key:C.quote,isElement:!0,component:Ce,deserializeHtml:{rules:[{validNodeName:["blockquote","BLOCKQUOTE"]}]}})({component:n=>a.jsx(Ce,{...n,styles:e})}),ze=[new Yt,new Jt,new Zt,new Rt,new qt,new Kt,new Xt,new on,new nn],re=[C.heading1,C.heading2,C.heading3,C.heading4,C.custom1,C.custom2,C.custom3,C.quote,C.p],pa=[...ze,new en,new tn],xa=[...re,C.imageCaption,C.imageTitle],Pa=e=>new o.PluginComposer().setPlugin(new o.SoftBreakPlugin,new o.TextStylePlugin({textStyles:ze})).setPlugin([new o.BoldPlugin,new o.ItalicPlugin,new o.UnderlinePlugin,new o.StrikethroughPlugin,new Wt({appBridge:e}),new Ht({appBridge:e}),new o.CodePlugin],[new o.AlignLeftPlugin({validTypes:re}),new o.AlignCenterPlugin({validTypes:re}),new o.AlignRightPlugin({validTypes:re}),new o.AlignJustifyPlugin({validTypes:re}),new o.UnorderedListPlugin,new o.CheckboxListPlugin,new o.OrderedListPlugin,new o.ResetFormattingPlugin,new o.AutoformatPlugin]),Sa="--f-theme-settings-",Ta=e=>{const n=e!=null&&e.id?`hasBackground${e.id}`:"hasBackground",t=e!=null&&e.id?`backgroundColor${e.id}`:"backgroundColor",r=e!=null&&e.preventDefaultColor?void 0:(e==null?void 0:e.defaultColor)||Bn,s=e!=null&&e.label?e.label:"Background",c=e!=null&&e.switchLabel?e.switchLabel:void 0;return{id:n,label:s,type:"switch",switchLabel:c,defaultValue:!!(e!=null&&e.defaultValue),on:[{id:t,defaultValue:r,type:"colorInput"}]}},Ea=e=>{const n=e!=null&&e.id?`hasBorder_${e.id}`:"hasBorder",t=e!=null&&e.id?`borderSelection_${e.id}`:"borderSelection",r=e!=null&&e.id?`borderStyle_${e.id}`:"borderStyle",s=e!=null&&e.id?`borderWidth_${e.id}`:"borderWidth",c=e!=null&&e.id?`borderColor_${e.id}`:"borderColor",d=(e==null?void 0:e.defaultColor)||Re,g=e!=null&&e.switchLabel?e.switchLabel:void 0;return{id:n,label:"Border",type:"switch",switchLabel:g,defaultValue:!!(e!=null&&e.defaultValue),on:[{id:t,type:"multiInput",onChange:u=>h.appendUnit(u,s),layout:h.MultiInputLayout.Columns,lastItemFullWidth:!0,blocks:[{id:r,type:"dropdown",defaultValue:V.Solid,choices:[{value:V.Solid,label:V.Solid},{value:V.Dotted,label:V.Dotted},{value:V.Dashed,label:V.Dashed}]},{id:s,type:"input",defaultValue:Nn,rules:[h.numericalOrPixelRule,h.maximumNumericalOrPixelOrAutoRule(500)],placeholder:"e.g. 3px"},{id:c,type:"colorInput",defaultValue:d}]}],off:[]}},$e=(e,n=W.None)=>({id:e,type:"segmentedControls",defaultValue:n,choices:[{value:W.None,label:"None"},{value:W.Small,label:"S"},{value:W.Medium,label:"M"},{value:W.Large,label:"L"}]}),Ia=e=>{const n=e!=null&&e.id?`hasRadius_${e.id}`:"hasRadius",t=e!=null&&e.id?`radiusValue_${e.id}`:"radiusValue",r=e!=null&&e.id?`radiusChoice_${e.id}`:"radiusChoice",s=(e==null?void 0:e.defaultRadius)||W.None;return{id:n,label:"Corner radius",type:"switch",switchLabel:"Custom",defaultValue:!1,info:"Determining how rounded the corners are.",show:c=>{var d;return e!=null&&e.dependentSettingId?!!((d=c.getBlock(e.dependentSettingId))!=null&&d.value):!0},onChange:c=>h.presetCustomValue(c,r,t,(e==null?void 0:e.radiusStyleMap)||K),on:[{id:t,type:"input",placeholder:"e.g. 10px",rules:[h.numericalOrPixelRule],onChange:c=>h.appendUnit(c,t)}],off:[$e(r,s)]}},Ba=e=>{const n=e!=null&&e.id?`hasExtendedCustomRadius_${e.id}`:"hasExtendedCustomRadius",t=e!=null&&e.id?`extendedRadiusValue_${e.id}`:"extendedRadiusValue",r=e!=null&&e.id?`extendedRadiusChoice_${e.id}`:"extendedRadiusChoice",s=e!=null&&e.id?`extendedRadiusTopLeft_${e.id}`:"extendedRadiusTopLeft",c=e!=null&&e.id?`extendedRadiusTopRight_${e.id}`:"extendedRadiusTopRight",d=e!=null&&e.id?`extendedRadiusBottomLeft_${e.id}`:"extendedRadiusBottomLeft",g=e!=null&&e.id?`extendedRadiusBottomRight_${e.id}`:"extendedRadiusBottomRight";return{id:n,label:"Corner radius",type:"switch",switchLabel:"Custom",defaultValue:!1,info:"Determining how rounded the corners are.",show:u=>{var b;return e!=null&&e.dependentSettingId?!!((b=u.getBlock(e.dependentSettingId))!=null&&b.value):!0},onChange:u=>{h.presetCustomValue(u,r,s,K),h.presetCustomValue(u,r,c,K),h.presetCustomValue(u,r,d,K),h.presetCustomValue(u,r,g,K)},on:[{id:t,type:"multiInput",layout:h.MultiInputLayout.Columns,blocks:[{id:s,type:"input",label:"Top Left",rules:[h.numericalOrPixelRule],onChange:u=>h.appendUnit(u,s)},{id:c,type:"input",label:"Top Right",rules:[h.numericalOrPixelRule],onChange:u=>h.appendUnit(u,c)},{id:d,type:"input",label:"Bottom Left",rules:[h.numericalOrPixelRule],onChange:u=>h.appendUnit(u,d)},{id:g,type:"input",label:"Bottom Right",rules:[h.numericalOrPixelRule],onChange:u=>h.appendUnit(u,g)}]}],off:[$e(r,e==null?void 0:e.defaultValue)]}},Na=e=>{const n=e!=null&&e.id?e.id:"hasCustomSpacing",t=e!=null&&e.dependentSettingId?e.dependentSettingId:"columns",r=e!=null&&e.spacingChoiceId?e.spacingChoiceId:"spacingChoice",s=e!=null&&e.spacingCustomId?e.spacingCustomId:"spacingCustom",c=e!=null&&e.defaultValueChoices?e.defaultValueChoices:Y.M;return{id:n,type:"switch",defaultValue:!1,switchLabel:"Custom",label:"Gutter",info:"An official nerds term for ‘gap’",onChange:d=>h.presetCustomValue(d,r,s,Ze),show:d=>{var g;return((g=d.getBlock(t))==null?void 0:g.value)!=="1"},on:[{id:s,type:"input",rules:[h.numericalOrPixelRule],onChange:d=>h.appendUnit(d,s)}],off:[{id:r,type:"slider",defaultValue:c,choices:[{value:Y.Auto,label:"Auto"},{value:Y.S,label:"S"},{value:Y.M,label:"M"},{value:Y.L,label:"L"}]}]}},We=e=>({id:e,type:"segmentedControls",defaultValue:X.None,choices:[{value:X.None,label:"None"},{value:X.Small,label:"S"},{value:X.Medium,label:"M"},{value:X.Large,label:"L"}]}),La=e=>{const n=e!=null&&e.id?`hasCustomMarginValue_${e==null?void 0:e.id}`:"hasCustomMarginValue",t=e!=null&&e.id?`marginValue_${e==null?void 0:e.id}`:"marginValue",r=e!=null&&e.id?`marginChoice_${e==null?void 0:e.id}`:"marginChoice";return{id:n,label:"Margin",type:"switch",switchLabel:"Custom",defaultValue:!1,info:"The spacing around UI elements to create more space",onChange:s=>h.presetCustomValue(s,r,t,(e==null?void 0:e.marginStyleMap)||R),on:[{id:t,type:"input",placeholder:oe,rules:[h.numericalOrPixelRule,h.maximumNumericalOrPixelOrAutoRule(500)],onChange:s=>h.appendUnit(s,t)}],off:[We(r)]}},Aa=e=>{const n=e!=null&&e.id?`hasExtendedCustomMargin_${e==null?void 0:e.id}`:"hasExtendedCustomMargin",t=e!=null&&e.id?`extendedMarginValues_${e==null?void 0:e.id}`:"extendedMarginValues",r=e!=null&&e.id?`extendedMarginChoice_${e==null?void 0:e.id}`:"extendedMarginChoice",s=e!=null&&e.id?`extendedMarginTop_${e==null?void 0:e.id}`:"extendedMarginTop",c=e!=null&&e.id?`extendedMarginLeft_${e==null?void 0:e.id}`:"extendedMarginLeft",d=e!=null&&e.id?`extendedMarginRight_${e==null?void 0:e.id}`:"extendedMarginRight",g=e!=null&&e.id?`extendedMarginBottom_${e==null?void 0:e.id}`:"extendedMarginBottom";return{id:n,label:"Margin",type:"switch",switchLabel:"Custom",defaultValue:!1,info:"The spacing around UI elements to create more negative space",onChange:u=>{h.presetCustomValue(u,r,s,R),h.presetCustomValue(u,r,c,R),h.presetCustomValue(u,r,d,R),h.presetCustomValue(u,r,g,R)},on:[{id:t,type:"multiInput",layout:h.MultiInputLayout.Spider,blocks:[{id:s,type:"input",label:"Top",placeholder:oe,onChange:u=>h.appendUnit(u,s),rules:[h.numericalOrPixelRule,h.maximumNumericalOrPixelOrAutoRule(500)]},{id:c,type:"input",label:"Left",placeholder:oe,onChange:u=>h.appendUnit(u,c),rules:[h.numericalOrPixelRule,h.maximumNumericalOrPixelOrAutoRule(500)]},{id:d,type:"input",label:"Right",placeholder:oe,onChange:u=>h.appendUnit(u,d),rules:[h.numericalOrPixelRule,h.maximumNumericalOrPixelOrAutoRule(500)]},{id:g,type:"input",label:"Bottom",placeholder:oe,onChange:u=>h.appendUnit(u,g),rules:[h.numericalOrPixelRule,h.maximumNumericalOrPixelOrAutoRule(500)]}]}],off:[We(r)]}},qe=e=>({id:e,type:"segmentedControls",defaultValue:j.Small,choices:[{value:j.None,label:"None"},{value:j.Small,label:"S"},{value:j.Medium,label:"M"},{value:j.Large,label:"L"}]}),Fa=e=>{const n=e!=null&&e.id?`hasCustomPaddingValue_${e==null?void 0:e.id}`:"hasCustomPaddingValue",t=e!=null&&e.id?`paddingValue_${e==null?void 0:e.id}`:"paddingValue",r=e!=null&&e.id?`paddingChoice_${e==null?void 0:e.id}`:"paddingChoice";return{id:n,label:"Padding",type:"switch",switchLabel:"Custom",defaultValue:!1,info:"The spacing around UI elements to create more negative space",onChange:s=>h.presetCustomValue(s,r,t,(e==null?void 0:e.paddingStyleMap)||Z),on:[{id:t,type:"input",placeholder:se,rules:[h.numericalOrPixelRule,h.maximumNumericalOrPixelOrAutoRule(500)],onChange:s=>h.appendUnit(s,t)}],off:[qe(r)]}},Ma=e=>{const n=e!=null&&e.id?`hasExtendedCustomPadding_${e==null?void 0:e.id}`:"hasExtendedCustomPadding",t=e!=null&&e.id?`extendedPaddingValues_${e==null?void 0:e.id}`:"extendedPaddingValues",r=e!=null&&e.id?`extendedPaddingChoice_${e==null?void 0:e.id}`:"extendedPaddingChoice",s=e!=null&&e.id?`extendedPaddingTop_${e==null?void 0:e.id}`:"extendedPaddingTop",c=e!=null&&e.id?`extendedPaddingLeft_${e==null?void 0:e.id}`:"extendedPaddingLeft",d=e!=null&&e.id?`extendedPaddingRight_${e==null?void 0:e.id}`:"extendedPaddingRight",g=e!=null&&e.id?`extendedPaddingBottom_${e==null?void 0:e.id}`:"extendedPaddingBottom";return{id:n,label:"Padding",type:"switch",switchLabel:"Custom",defaultValue:!1,info:"The spacing around UI elements to create more negative space",onChange:u=>{h.presetCustomValue(u,r,s,Z),h.presetCustomValue(u,r,c,Z),h.presetCustomValue(u,r,d,Z),h.presetCustomValue(u,r,g,Z)},on:[{id:t,type:"multiInput",layout:h.MultiInputLayout.Spider,blocks:[{id:s,type:"input",label:"Top",placeholder:se,onChange:u=>h.appendUnit(u,s),rules:[h.numericalOrPixelRule,h.maximumNumericalOrPixelOrAutoRule(500)]},{id:c,type:"input",label:"Left",placeholder:se,onChange:u=>h.appendUnit(u,c),rules:[h.numericalOrPixelRule,h.maximumNumericalOrPixelOrAutoRule(500)]},{id:d,type:"input",label:"Right",placeholder:se,onChange:u=>h.appendUnit(u,d),rules:[h.numericalOrPixelRule,h.maximumNumericalOrPixelOrAutoRule(500)]},{id:g,type:"input",label:"Bottom",placeholder:se,onChange:u=>h.appendUnit(u,g),rules:[h.numericalOrPixelRule,h.maximumNumericalOrPixelOrAutoRule(500)]}]}],off:[qe(r)]}},Da=e=>{const n=Ge(e==null?void 0:e.globalControlId);return{id:e!=null&&e.id?e.id:"downloadable",type:"switch",defaultValue:!1,label:"Downloadable",show:t=>{var r;return((r=t.getBlock(n))==null?void 0:r.value)===Q.Custom}}},Ge=e=>e||"security",Oa=e=>[{id:Ge(e),type:"segmentedControls",defaultValue:Q.Global,choices:[{value:Q.Global,label:"Global Settings"},{value:Q.Custom,label:"Custom"}]},{id:"globalSettingsInfo",type:"notification",footer:h.createFooter({label:"Change global settings [here].",replace:{here:{event:"general-settings.open"}}})}];var cn=(e=>(e.Main="main",e.Basics="basics",e.Layout="layout",e.Style="style",e.Security="security",e.Targets="targets",e))(cn||{});const Ua=e=>e,_a=e=>e;l.AllTextStylePlugins=pa,l.AllTextStyles=xa,l.Attachments=ut,l.AttachmentsProvider=lt,l.AttachmentsToolbarButton=ht,l.BUTTON_PLUGIN=Ut,l.BlockButtonStyles=fe,l.BlockInjectButton=vn,l.BlockItemWrapper=Wn,l.BlockStyles=N,l.BorderStyle=V,l.ButtonPlugin=Ht,l.Custom1Plugin=qt,l.Custom2Plugin=Kt,l.Custom3Plugin=Xt,l.DEFAULT_ATTACHMENTS_BUTTON_ID=gt,l.DEFAULT_DRAGGING_TOOLTIP=ft,l.DEFAULT_DRAG_TOOLTIP=mt,l.DEFAULT_MENU_BUTTON_ID=Ee,l.DownloadButton=qn,l.DragHandleToolbarButton=wt,l.DragPreviewContextProvider=tt,l.ELEMENT_BUTTON=P,l.FlyoutToolbarButton=Te,l.GutterSpacing=Y,l.Heading1Plugin=Yt,l.Heading2Plugin=Jt,l.Heading3Plugin=Zt,l.Heading4Plugin=Rt,l.ImageCaptionPlugin=en,l.ImageTitlePlugin=tn,l.LinkInput=Dt,l.LinkPlugin=Wt,l.LinkSelector=Mt,l.Margin=X,l.MenuToolbarButton=bt,l.MultiFlyoutContextProvider=rt,l.PARAGRAPH_CLASSES=rn,l.Padding=j,l.ParagraphMarkupElement=an,l.ParagraphMarkupElementNode=ve,l.ParagraphPlugin=nn,l.QuoteMarkupElementNode=Ce,l.QuotePlugin=on,l.Radius=W,l.RichTextEditor=Ar,l.Sections=cn,l.Security=Q,l.THEME_PREFIX=Sa,l.TextStylePluginsWithoutImage=ze,l.TextStyles=C,l.TextStylesWithoutImage=re,l.Toolbar=vt,l.ToolbarFlyoutMenu=yt,l.addHttps=ge,l.borderStyleMap=Je,l.convertToRteValue=Kn,l.createButtonNode=Lt,l.createButtonPlugin=_t,l.createLinkPlugin=$t,l.createParagraphPlugin=sn,l.createQuotePlugin=ln,l.customCoordinatesGetterFactory=dt,l.defineBlock=Ua,l.defineSettings=_a,l.getBackgroundColorStyles=In,l.getBackgroundSettings=Ta,l.getBorderRadiusSettings=Ia,l.getBorderRadiusSlider=$e,l.getBorderSettings=Ea,l.getBorderStyles=Ln,l.getDefaultPluginsWithLinkChooser=Pa,l.getExtendedBorderRadiusSettings=Ba,l.getGutterSettings=Na,l.getLegacyUrl=pt,l.getLinkFromEditor=St,l.getMarginExtendedSettings=Aa,l.getMarginSettings=La,l.getMarginSlider=We,l.getPaddingExtendedSettings=Ma,l.getPaddingSettings=Fa,l.getPaddingSlider=qe,l.getRadiusStyles=An,l.getReadableColor=Tn,l.getSecurityDownloadableSetting=Da,l.getSecurityGlobalControlId=Ge,l.getSecurityGlobalControlSetting=Oa,l.getUrl=xt,l.getUrlFromEditor=Nt,l.getUrlFromLinkOrLegacyLink=Pt,l.gutterSpacingStyleMap=Ze,l.hasRichTextValue=Ct,l.insertButton=Et,l.isDark=kn,l.isDownloadable=jn,l.isValidUrl=he,l.isValidUrlOrEmpty=ee,l.joinClassNames=H,l.mapAppBridgeColorPaletteToFonduePalette=kt,l.mapAppBridgeColorPalettesToFonduePalettes=Xn,l.marginStyleMap=R,l.moveItemInArray=En,l.paddingStyleMap=Z,l.radiusStyleMap=K,l.relativeUrlRegex=Be,l.setAlpha=Pn,l.submitFloatingButton=Le,l.toColorObject=Sn,l.toHex8String=pn,l.toHexString=xn,l.toRgbaString=xe,l.toShortRgba=G,l.triggerFloatingButton=At,l.triggerFloatingButtonEdit=me,l.triggerFloatingButtonInsert=Fe,l.unwrapButton=ne,l.upsertButton=It,l.upsertButtonText=Ae,l.useAttachments=ot,l.useAttachmentsContext=ct,l.useDndSensors=On,l.useDragPreviewContext=ie,l.useMultiFlyoutContext=at,l.useMultiFlyoutState=ue,l.withAttachmentsProvider=Fn,l.withButton=Tt,l.wrapButton=Bt,Object.keys(h).forEach(e=>{e!=="default"&&!Object.prototype.hasOwnProperty.call(l,e)&&Object.defineProperty(l,e,{enumerable:!0,get:()=>h[e]})}),Object.defineProperty(l,Symbol.toStringTag,{value:"Module"})});
4
+ //# sourceMappingURL=index.umd.js.map