@frontify/guideline-blocks-settings 3.0.2 → 3.0.3

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 (262) hide show
  1. package/dist/_virtual/_rolldown/runtime.es.js +17 -0
  2. package/dist/components/Attachments/AttachmentItem.es.js +116 -168
  3. package/dist/components/Attachments/AttachmentItem.es.js.map +1 -1
  4. package/dist/components/Attachments/Attachments.es.js +145 -137
  5. package/dist/components/Attachments/Attachments.es.js.map +1 -1
  6. package/dist/components/Attachments/AttachmentsButtonTrigger.es.js +25 -28
  7. package/dist/components/Attachments/AttachmentsButtonTrigger.es.js.map +1 -1
  8. package/dist/components/BlockInjectButton/BlockInjectButton.es.js +114 -126
  9. package/dist/components/BlockInjectButton/BlockInjectButton.es.js.map +1 -1
  10. package/dist/components/BlockItemWrapper/BlockItemWrapper.es.js +53 -74
  11. package/dist/components/BlockItemWrapper/BlockItemWrapper.es.js.map +1 -1
  12. package/dist/components/BlockItemWrapper/Toolbar/AttachmentsToolbarButton/AttachmentsToolbarButton.es.js +26 -31
  13. package/dist/components/BlockItemWrapper/Toolbar/AttachmentsToolbarButton/AttachmentsToolbarButton.es.js.map +1 -1
  14. package/dist/components/BlockItemWrapper/Toolbar/AttachmentsToolbarButton/AttachmentsToolbarButtonTrigger.es.js +22 -25
  15. package/dist/components/BlockItemWrapper/Toolbar/AttachmentsToolbarButton/AttachmentsToolbarButtonTrigger.es.js.map +1 -1
  16. package/dist/components/BlockItemWrapper/Toolbar/BaseToolbarButton.es.js +17 -28
  17. package/dist/components/BlockItemWrapper/Toolbar/BaseToolbarButton.es.js.map +1 -1
  18. package/dist/components/BlockItemWrapper/Toolbar/DragHandleToolbarButton/DragHandleToolbarButton.es.js +25 -35
  19. package/dist/components/BlockItemWrapper/Toolbar/DragHandleToolbarButton/DragHandleToolbarButton.es.js.map +1 -1
  20. package/dist/components/BlockItemWrapper/Toolbar/FlyoutToolbarButton/FlyoutToolbarButton.es.js +41 -34
  21. package/dist/components/BlockItemWrapper/Toolbar/FlyoutToolbarButton/FlyoutToolbarButton.es.js.map +1 -1
  22. package/dist/components/BlockItemWrapper/Toolbar/MenuToolbarButton/MenuToolbarButton.es.js +41 -36
  23. package/dist/components/BlockItemWrapper/Toolbar/MenuToolbarButton/MenuToolbarButton.es.js.map +1 -1
  24. package/dist/components/BlockItemWrapper/Toolbar/Toolbar.es.js +24 -33
  25. package/dist/components/BlockItemWrapper/Toolbar/Toolbar.es.js.map +1 -1
  26. package/dist/components/BlockItemWrapper/Toolbar/ToolbarButton/ToolbarButton.es.js +20 -11
  27. package/dist/components/BlockItemWrapper/Toolbar/ToolbarButton/ToolbarButton.es.js.map +1 -1
  28. package/dist/components/BlockItemWrapper/Toolbar/ToolbarButtonTooltip.es.js +18 -10
  29. package/dist/components/BlockItemWrapper/Toolbar/ToolbarButtonTooltip.es.js.map +1 -1
  30. package/dist/components/BlockItemWrapper/Toolbar/ToolbarSegment.es.js +10 -12
  31. package/dist/components/BlockItemWrapper/Toolbar/ToolbarSegment.es.js.map +1 -1
  32. package/dist/components/BlockItemWrapper/Toolbar/context/DragPreviewContext.es.js +13 -13
  33. package/dist/components/BlockItemWrapper/Toolbar/context/DragPreviewContext.es.js.map +1 -1
  34. package/dist/components/BlockItemWrapper/Toolbar/context/MultiFlyoutContext.es.js +21 -19
  35. package/dist/components/BlockItemWrapper/Toolbar/context/MultiFlyoutContext.es.js.map +1 -1
  36. package/dist/components/BlockItemWrapper/Toolbar/helpers.es.js +18 -25
  37. package/dist/components/BlockItemWrapper/Toolbar/helpers.es.js.map +1 -1
  38. package/dist/components/BlockItemWrapper/Toolbar/hooks/useMultiFlyoutState.es.js +18 -17
  39. package/dist/components/BlockItemWrapper/Toolbar/hooks/useMultiFlyoutState.es.js.map +1 -1
  40. package/dist/components/BlockItemWrapper/constants.es.js +6 -6
  41. package/dist/components/BlockItemWrapper/constants.es.js.map +1 -1
  42. package/dist/components/Link/LinkInput.es.js +63 -63
  43. package/dist/components/Link/LinkInput.es.js.map +1 -1
  44. package/dist/components/Link/LinkSelector/DocumentLink.es.js +46 -63
  45. package/dist/components/Link/LinkSelector/DocumentLink.es.js.map +1 -1
  46. package/dist/components/Link/LinkSelector/DocumentLinks.es.js +50 -64
  47. package/dist/components/Link/LinkSelector/DocumentLinks.es.js.map +1 -1
  48. package/dist/components/Link/LinkSelector/LinkSelector2.es.js +77 -0
  49. package/dist/components/Link/LinkSelector/LinkSelector2.es.js.map +1 -0
  50. package/dist/components/Link/LinkSelector/LoadingIndicator.es.js +10 -6
  51. package/dist/components/Link/LinkSelector/LoadingIndicator.es.js.map +1 -1
  52. package/dist/components/Link/LinkSelector/PageLink.es.js +53 -67
  53. package/dist/components/Link/LinkSelector/PageLink.es.js.map +1 -1
  54. package/dist/components/Link/LinkSelector/PageLinks.es.js +28 -37
  55. package/dist/components/Link/LinkSelector/PageLinks.es.js.map +1 -1
  56. package/dist/components/Link/LinkSelector/SectionLink.es.js +31 -24
  57. package/dist/components/Link/LinkSelector/SectionLink.es.js.map +1 -1
  58. package/dist/components/Link/helpers/filterDocumentSectionsWithUnreadableTitles.es.js +6 -5
  59. package/dist/components/Link/helpers/filterDocumentSectionsWithUnreadableTitles.es.js.map +1 -1
  60. package/dist/components/Link/utils/getUrl.es.js +10 -12
  61. package/dist/components/Link/utils/getUrl.es.js.map +1 -1
  62. package/dist/components/Link/utils/relativeUrlRegex.es.js +6 -5
  63. package/dist/components/Link/utils/relativeUrlRegex.es.js.map +1 -1
  64. package/dist/components/Link/utils/url.es.js +21 -17
  65. package/dist/components/Link/utils/url.es.js.map +1 -1
  66. package/dist/components/RichTextEditor/RichTextEditor.es.js +61 -68
  67. package/dist/components/RichTextEditor/RichTextEditor.es.js.map +1 -1
  68. package/dist/components/RichTextEditor/SerializedText.es.js +25 -22
  69. package/dist/components/RichTextEditor/SerializedText.es.js.map +1 -1
  70. package/dist/components/RichTextEditor/constants.es.js +6 -5
  71. package/dist/components/RichTextEditor/constants.es.js.map +1 -1
  72. package/dist/components/RichTextEditor/pluginPresets/defaultPluginsWithLinkChooser.es.js +30 -37
  73. package/dist/components/RichTextEditor/pluginPresets/defaultPluginsWithLinkChooser.es.js.map +1 -1
  74. package/dist/components/RichTextEditor/plugins/ButtonPlugin/ButtonMarkupElement/ButtonMarkupElementNode.es.js +31 -39
  75. package/dist/components/RichTextEditor/plugins/ButtonPlugin/ButtonMarkupElement/ButtonMarkupElementNode.es.js.map +1 -1
  76. package/dist/components/RichTextEditor/plugins/ButtonPlugin/ButtonMarkupElement/index.es.js +12 -11
  77. package/dist/components/RichTextEditor/plugins/ButtonPlugin/ButtonMarkupElement/index.es.js.map +1 -1
  78. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/ButtonButton.es.js +19 -23
  79. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/ButtonButton.es.js.map +1 -1
  80. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/ButtonToolbarButton.es.js +24 -26
  81. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/ButtonToolbarButton.es.js.map +1 -1
  82. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/CustomFloatingButton.es.js +46 -53
  83. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/CustomFloatingButton.es.js.map +1 -1
  84. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/EditButtonModal/EditModal.es.js +52 -54
  85. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/EditButtonModal/EditModal.es.js.map +1 -1
  86. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/InsertButtonModal/InsertButtonModal.es.js +68 -68
  87. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/InsertButtonModal/InsertButtonModal.es.js.map +1 -1
  88. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/InsertButtonModal/useInsertModal.es.js +91 -103
  89. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/InsertButtonModal/useInsertModal.es.js.map +1 -1
  90. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/floatingButtonStore.es.js +26 -32
  91. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/floatingButtonStore.es.js.map +1 -1
  92. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonEdit.es.js +47 -53
  93. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonEdit.es.js.map +1 -1
  94. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonEnter.es.js +12 -18
  95. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonEnter.es.js.map +1 -1
  96. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonEscape.es.js +21 -25
  97. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonEscape.es.js.map +1 -1
  98. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonInsert.es.js +29 -37
  99. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useFloatingButtonInsert.es.js.map +1 -1
  100. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useVirtualFloatingButton.es.js +13 -17
  101. package/dist/components/RichTextEditor/plugins/ButtonPlugin/components/FloatingButton/useVirtualFloatingButton.es.js.map +1 -1
  102. package/dist/components/RichTextEditor/plugins/ButtonPlugin/createButtonPlugin.es.js +56 -62
  103. package/dist/components/RichTextEditor/plugins/ButtonPlugin/createButtonPlugin.es.js.map +1 -1
  104. package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/insertButton.es.js +9 -12
  105. package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/insertButton.es.js.map +1 -1
  106. package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/submitFloatingButton.es.js +23 -24
  107. package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/submitFloatingButton.es.js.map +1 -1
  108. package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/unwrapButton.es.js +28 -33
  109. package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/unwrapButton.es.js.map +1 -1
  110. package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/upsertButton.es.js +61 -80
  111. package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/upsertButton.es.js.map +1 -1
  112. package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/upsertButtonText.es.js +23 -23
  113. package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/upsertButtonText.es.js.map +1 -1
  114. package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/wrapButton.es.js +18 -18
  115. package/dist/components/RichTextEditor/plugins/ButtonPlugin/transforms/wrapButton.es.js.map +1 -1
  116. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/createButtonNode.es.js +13 -12
  117. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/createButtonNode.es.js.map +1 -1
  118. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/getButtonStyle.es.js +9 -8
  119. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/getButtonStyle.es.js.map +1 -1
  120. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/getUrl.es.js +11 -10
  121. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/getUrl.es.js.map +1 -1
  122. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/styles.es.js +85 -84
  123. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/styles.es.js.map +1 -1
  124. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/triggerFloatingButton.es.js +13 -16
  125. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/triggerFloatingButton.es.js.map +1 -1
  126. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/triggerFloatingButtonEdit.es.js +13 -16
  127. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/triggerFloatingButtonEdit.es.js.map +1 -1
  128. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/triggerFloatingButtonInsert.es.js +10 -13
  129. package/dist/components/RichTextEditor/plugins/ButtonPlugin/utils/triggerFloatingButtonInsert.es.js.map +1 -1
  130. package/dist/components/RichTextEditor/plugins/ButtonPlugin/withButton.es.js +45 -51
  131. package/dist/components/RichTextEditor/plugins/ButtonPlugin/withButton.es.js.map +1 -1
  132. package/dist/components/RichTextEditor/plugins/ColumnBreakPlugin/ColumnBreakPlugin.es.js +20 -22
  133. package/dist/components/RichTextEditor/plugins/ColumnBreakPlugin/ColumnBreakPlugin.es.js.map +1 -1
  134. package/dist/components/RichTextEditor/plugins/ColumnBreakPlugin/helpers.es.js +12 -12
  135. package/dist/components/RichTextEditor/plugins/ColumnBreakPlugin/helpers.es.js.map +1 -1
  136. package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/CustomFloatingLink.es.js +48 -57
  137. package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/CustomFloatingLink.es.js.map +1 -1
  138. package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/EditLinkModal/EditModal.es.js +46 -48
  139. package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/EditLinkModal/EditModal.es.js.map +1 -1
  140. package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/InsertLinkModal.es.js +12 -8
  141. package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/InsertLinkModal.es.js.map +1 -1
  142. package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/InsertModal.es.js +62 -71
  143. package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/InsertModal.es.js.map +1 -1
  144. package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/useInsertModal.es.js +76 -77
  145. package/dist/components/RichTextEditor/plugins/LinkPlugin/FloatingLink/InsertLinkModal/useInsertModal.es.js.map +1 -1
  146. package/dist/components/RichTextEditor/plugins/LinkPlugin/LinkButton.es.js +17 -21
  147. package/dist/components/RichTextEditor/plugins/LinkPlugin/LinkButton.es.js.map +1 -1
  148. package/dist/components/RichTextEditor/plugins/LinkPlugin/LinkMarkupElement/LinkMarkupElementNode.es.js +17 -10
  149. package/dist/components/RichTextEditor/plugins/LinkPlugin/LinkMarkupElement/LinkMarkupElementNode.es.js.map +1 -1
  150. package/dist/components/RichTextEditor/plugins/LinkPlugin/LinkMarkupElement/index.es.js +11 -10
  151. package/dist/components/RichTextEditor/plugins/LinkPlugin/LinkMarkupElement/index.es.js.map +1 -1
  152. package/dist/components/RichTextEditor/plugins/LinkPlugin/LinkToolbarButton.es.js +22 -26
  153. package/dist/components/RichTextEditor/plugins/LinkPlugin/LinkToolbarButton.es.js.map +1 -1
  154. package/dist/components/RichTextEditor/plugins/LinkPlugin/id.es.js +6 -5
  155. package/dist/components/RichTextEditor/plugins/LinkPlugin/id.es.js.map +1 -1
  156. package/dist/components/RichTextEditor/plugins/LinkPlugin/index.es.js +39 -40
  157. package/dist/components/RichTextEditor/plugins/LinkPlugin/index.es.js.map +1 -1
  158. package/dist/components/RichTextEditor/plugins/LinkPlugin/utils/getUrl.es.js +10 -10
  159. package/dist/components/RichTextEditor/plugins/LinkPlugin/utils/getUrl.es.js.map +1 -1
  160. package/dist/components/RichTextEditor/plugins/OrderedListPlugin/index.es.js +26 -26
  161. package/dist/components/RichTextEditor/plugins/OrderedListPlugin/index.es.js.map +1 -1
  162. package/dist/components/RichTextEditor/plugins/TextStylePlugins/custom1Plugin.es.js +40 -46
  163. package/dist/components/RichTextEditor/plugins/TextStylePlugins/custom1Plugin.es.js.map +1 -1
  164. package/dist/components/RichTextEditor/plugins/TextStylePlugins/custom2Plugin.es.js +40 -46
  165. package/dist/components/RichTextEditor/plugins/TextStylePlugins/custom2Plugin.es.js.map +1 -1
  166. package/dist/components/RichTextEditor/plugins/TextStylePlugins/custom3Plugin.es.js +40 -46
  167. package/dist/components/RichTextEditor/plugins/TextStylePlugins/custom3Plugin.es.js.map +1 -1
  168. package/dist/components/RichTextEditor/plugins/TextStylePlugins/heading1Plugin.es.js +41 -47
  169. package/dist/components/RichTextEditor/plugins/TextStylePlugins/heading1Plugin.es.js.map +1 -1
  170. package/dist/components/RichTextEditor/plugins/TextStylePlugins/heading2Plugin.es.js +41 -47
  171. package/dist/components/RichTextEditor/plugins/TextStylePlugins/heading2Plugin.es.js.map +1 -1
  172. package/dist/components/RichTextEditor/plugins/TextStylePlugins/heading3Plugin.es.js +41 -47
  173. package/dist/components/RichTextEditor/plugins/TextStylePlugins/heading3Plugin.es.js.map +1 -1
  174. package/dist/components/RichTextEditor/plugins/TextStylePlugins/heading4Plugin.es.js +41 -47
  175. package/dist/components/RichTextEditor/plugins/TextStylePlugins/heading4Plugin.es.js.map +1 -1
  176. package/dist/components/RichTextEditor/plugins/TextStylePlugins/helpers.es.js +44 -38
  177. package/dist/components/RichTextEditor/plugins/TextStylePlugins/helpers.es.js.map +1 -1
  178. package/dist/components/RichTextEditor/plugins/TextStylePlugins/imageCaptionPlugin.es.js +41 -47
  179. package/dist/components/RichTextEditor/plugins/TextStylePlugins/imageCaptionPlugin.es.js.map +1 -1
  180. package/dist/components/RichTextEditor/plugins/TextStylePlugins/imageTitlePlugin.es.js +40 -46
  181. package/dist/components/RichTextEditor/plugins/TextStylePlugins/imageTitlePlugin.es.js.map +1 -1
  182. package/dist/components/RichTextEditor/plugins/TextStylePlugins/paragraphPlugin.es.js +45 -41
  183. package/dist/components/RichTextEditor/plugins/TextStylePlugins/paragraphPlugin.es.js.map +1 -1
  184. package/dist/components/RichTextEditor/plugins/TextStylePlugins/quotePlugin.es.js +40 -48
  185. package/dist/components/RichTextEditor/plugins/TextStylePlugins/quotePlugin.es.js.map +1 -1
  186. package/dist/components/RichTextEditor/plugins/UnorderedListPlugin/index.es.js +29 -29
  187. package/dist/components/RichTextEditor/plugins/UnorderedListPlugin/index.es.js.map +1 -1
  188. package/dist/components/RichTextEditor/plugins/styles.es.js +167 -166
  189. package/dist/components/RichTextEditor/plugins/styles.es.js.map +1 -1
  190. package/dist/helpers/addHttps.es.js +12 -12
  191. package/dist/helpers/addHttps.es.js.map +1 -1
  192. package/dist/helpers/convertToRichTextValue.es.js +14 -6
  193. package/dist/helpers/convertToRichTextValue.es.js.map +1 -1
  194. package/dist/helpers/hasRichTextValue.es.js +13 -14
  195. package/dist/helpers/hasRichTextValue.es.js.map +1 -1
  196. package/dist/helpers/isDownloadable.es.js +6 -5
  197. package/dist/helpers/isDownloadable.es.js.map +1 -1
  198. package/dist/hooks/useAttachments.es.js +65 -73
  199. package/dist/hooks/useAttachments.es.js.map +1 -1
  200. package/dist/hooks/useIsInViewport.es.js +20 -21
  201. package/dist/hooks/useIsInViewport.es.js.map +1 -1
  202. package/dist/index.cjs.js +6 -8
  203. package/dist/index.cjs.js.map +1 -1
  204. package/dist/index.d.ts +8 -7
  205. package/dist/index.es.js +221 -213
  206. package/dist/index.es.js.map +1 -1
  207. package/dist/index.umd.js +6 -8
  208. package/dist/index.umd.js.map +1 -1
  209. package/dist/settings/background.es.js +20 -21
  210. package/dist/settings/background.es.js.map +1 -1
  211. package/dist/settings/border.es.js +62 -64
  212. package/dist/settings/border.es.js.map +1 -1
  213. package/dist/settings/borderRadius.es.js +49 -52
  214. package/dist/settings/borderRadius.es.js.map +1 -1
  215. package/dist/settings/borderRadiusExtended.es.js +58 -60
  216. package/dist/settings/borderRadiusExtended.es.js.map +1 -1
  217. package/dist/settings/defaultValues.es.js +16 -19
  218. package/dist/settings/defaultValues.es.js.map +1 -1
  219. package/dist/settings/gutter.es.js +48 -52
  220. package/dist/settings/gutter.es.js.map +1 -1
  221. package/dist/settings/margin.es.js +49 -52
  222. package/dist/settings/margin.es.js.map +1 -1
  223. package/dist/settings/marginExtended.es.js +62 -64
  224. package/dist/settings/marginExtended.es.js.map +1 -1
  225. package/dist/settings/padding.es.js +49 -52
  226. package/dist/settings/padding.es.js.map +1 -1
  227. package/dist/settings/paddingExtended.es.js +62 -64
  228. package/dist/settings/paddingExtended.es.js.map +1 -1
  229. package/dist/settings/securityDownloadable.es.js +16 -16
  230. package/dist/settings/securityDownloadable.es.js.map +1 -1
  231. package/dist/settings/securityGlobalControl.es.js +26 -32
  232. package/dist/settings/securityGlobalControl.es.js.map +1 -1
  233. package/dist/settings/types.es.js +41 -47
  234. package/dist/settings/types.es.js.map +1 -1
  235. package/dist/styles.css +1 -0
  236. package/dist/utilities/color/getReadableColor.es.js +15 -13
  237. package/dist/utilities/color/getReadableColor.es.js.map +1 -1
  238. package/dist/utilities/color/isDark.es.js +14 -9
  239. package/dist/utilities/color/isDark.es.js.map +1 -1
  240. package/dist/utilities/color/setAlpha.es.js +7 -6
  241. package/dist/utilities/color/setAlpha.es.js.map +1 -1
  242. package/dist/utilities/color/toColorObject.es.js +14 -8
  243. package/dist/utilities/color/toColorObject.es.js.map +1 -1
  244. package/dist/utilities/color/toHex8String.es.js +7 -6
  245. package/dist/utilities/color/toHex8String.es.js.map +1 -1
  246. package/dist/utilities/color/toHexString.es.js +7 -6
  247. package/dist/utilities/color/toHexString.es.js.map +1 -1
  248. package/dist/utilities/color/toRgbaString.es.js +7 -6
  249. package/dist/utilities/color/toRgbaString.es.js.map +1 -1
  250. package/dist/utilities/color/toShortRgba.es.js +18 -11
  251. package/dist/utilities/color/toShortRgba.es.js.map +1 -1
  252. package/dist/utilities/react/getBackgroundColorStyles.es.js +7 -8
  253. package/dist/utilities/react/getBackgroundColorStyles.es.js.map +1 -1
  254. package/dist/utilities/react/getBorderStyles.es.js +12 -11
  255. package/dist/utilities/react/getBorderStyles.es.js.map +1 -1
  256. package/dist/utilities/react/getRadiusStyles.es.js +7 -8
  257. package/dist/utilities/react/getRadiusStyles.es.js.map +1 -1
  258. package/dist/utilities/react/joinClassNames.es.js +6 -5
  259. package/dist/utilities/react/joinClassNames.es.js.map +1 -1
  260. package/package.json +6 -8
  261. package/dist/components/Link/LinkSelector/LinkSelector.es.js +0 -72
  262. package/dist/components/Link/LinkSelector/LinkSelector.es.js.map +0 -1
@@ -1,138 +1,146 @@
1
- import { jsx as e, jsxs as d } from "react/jsx-runtime";
2
- import { useSensors as nt, useSensor as B, PointerSensor as st, KeyboardSensor as at, DndContext as rt, closestCenter as it } from "@dnd-kit/core";
3
- import { restrictToParentElement as dt } from "@dnd-kit/modifiers";
4
- import { SortableContext as lt, rectSortingStrategy as ct, arrayMove as ht } from "@dnd-kit/sortable";
5
- import { useEditorState as pt, useAssetChooser as ut, useAssetUpload as mt } from "@frontify/app-bridge";
6
- import { Flyout as I, Tooltip as y, AssetInput as s, Flex as gt } from "@frontify/fondue/components";
7
- import { IconImageStack as ft, IconArrowCircleUp as wt } from "@frontify/fondue/icons";
8
- import { useState as r, useEffect as S } from "react";
9
- import { SortableAttachmentItem as It } from "./AttachmentItem.es.js";
10
- import { AttachmentsButtonTrigger as yt } from "./AttachmentsButtonTrigger.es.js";
11
- const Et = ({
12
- items: l = [],
13
- onDelete: M,
14
- onReplaceWithBrowse: O,
15
- onReplaceWithUpload: N,
16
- onBrowse: R,
17
- onUpload: W,
18
- onSorted: z,
19
- appBridge: p,
20
- triggerComponent: j = yt,
21
- isOpen: A,
22
- onOpenChange: K
23
- }) => {
24
- const [n, v] = r(l), [V, k] = r(!1), q = nt(B(st), B(at)), [G, C] = r(void 0), [x, u] = r(!1), [m, D] = r(!1), [c, h] = r([]), [g, H] = r(null), f = pt(p), { openAssetChooser: b, closeAssetChooser: F } = ut(p), L = A !== void 0, U = L ? A : V, J = n?.find((t) => t.id === G), [Q, { results: E, doneAll: P }] = mt({
25
- onUploadProgress: () => !x && u(!0)
26
- }), i = (t) => {
27
- (L ? K : k)?.(t);
28
- };
29
- S(() => {
30
- v(l);
31
- }, [l]), S(() => {
32
- g && (u(!0), Q(g));
33
- }, [g]), S(() => {
34
- (async () => P && (await W(E), u(!1)))();
35
- }, [P, E]);
36
- const X = () => {
37
- i(!1), b(
38
- // oxlint-disable-next-line typescript/no-misused-promises
39
- async (t) => {
40
- F(), i(!0), D(!0), await R(t), D(!1);
41
- },
42
- {
43
- multiSelection: !0,
44
- selectedValueIds: n.map((t) => t.id)
45
- }
46
- );
47
- }, Y = (t) => {
48
- i(!1), b(
49
- // oxlint-disable-next-line typescript/no-misused-promises
50
- async (o) => {
51
- i(!0), F(), h([...c, t.id]), await O(t, o[0]), h(c.filter((a) => a !== t.id));
52
- },
53
- {
54
- multiSelection: !1,
55
- selectedValueIds: n.map((o) => o.id)
56
- }
57
- );
58
- }, Z = async (t, o) => {
59
- h([...c, t.id]), await N(t, o), h(c.filter((a) => a !== t.id));
60
- }, _ = (t) => {
61
- const { active: o } = t;
62
- C(o.id);
63
- }, $ = (t) => {
64
- const { active: o, over: a } = t;
65
- if (a && o.id !== a.id && n) {
66
- const et = n.findIndex((w) => w.id === o.id), ot = n.findIndex((w) => w.id === a.id), T = ht(n, et, ot);
67
- v(T), z(T);
68
- }
69
- C(void 0);
70
- }, tt = {
71
- onEscapeKeyDown: (t) => {
72
- t.stopPropagation(), i(!1);
73
- }
74
- };
75
- return f || (n?.length ?? 0) > 0 ? /* @__PURE__ */ e("div", { "data-test-id": "attachments-flyout-button", children: /* @__PURE__ */ e(
76
- I.Root,
77
- {
78
- open: U,
79
- onOpenChange: (t) => i(J ? !0 : t),
80
- children: /* @__PURE__ */ d(y.Root, { enterDelay: 500, children: [
81
- /* @__PURE__ */ e(y.Trigger, { asChild: !0, children: /* @__PURE__ */ e(I.Trigger, { asChild: !0, "data-test-id": "attachments-button-trigger", children: /* @__PURE__ */ e(j, { isFlyoutOpen: U, children: /* @__PURE__ */ e("div", { children: l.length > 0 ? l.length : "Add" }) }) }) }),
82
- /* @__PURE__ */ e(I.Content, { side: "bottom", align: "end", width: "300px", ...tt, children: /* @__PURE__ */ d("div", { className: "tw-w-full", "data-test-id": "attachments-flyout-content", children: [
83
- n.length > 0 && /* @__PURE__ */ e(
84
- rt,
85
- {
86
- sensors: q,
87
- collisionDetection: it,
88
- onDragStart: _,
89
- onDragEnd: $,
90
- modifiers: [dt],
91
- children: /* @__PURE__ */ e(lt, { items: n, strategy: ct, children: /* @__PURE__ */ e("div", { className: "tw-border-b tw-border-b-line tw-relative", children: n.map((t) => /* @__PURE__ */ e(
92
- It,
93
- {
94
- isEditing: f,
95
- isLoading: c.includes(t.id),
96
- item: t,
97
- onDelete: () => M(t),
98
- onReplaceWithBrowse: () => Y(t),
99
- onReplaceWithUpload: (o) => Z(t, o),
100
- onDownload: () => p.dispatch({
101
- name: "downloadAsset",
102
- payload: t
103
- })
104
- },
105
- t.id
106
- )) }) })
107
- }
108
- ),
109
- f && /* @__PURE__ */ d("div", { className: "tw-px-5 tw-py-3", "data-test-id": "asset-input-placeholder", children: [
110
- /* @__PURE__ */ e("div", { className: "tw-font-primary tw-font-medium tw-text-primary tw-text-small tw-my-4", children: "Add attachments" }),
111
- x || m ? /* @__PURE__ */ d(s.Root, { orientation: "horizontal", children: [
112
- /* @__PURE__ */ e(s.Preview, { children: /* @__PURE__ */ e(s.PreviewLoading, {}) }),
113
- /* @__PURE__ */ e(s.Title, { children: "Asset" }),
114
- /* @__PURE__ */ e(s.Metadata, { children: /* @__PURE__ */ e(s.MetadataItem, { children: /* @__PURE__ */ d(gt, { align: "center", gap: 0.5, children: [
115
- m ? /* @__PURE__ */ e(ft, { size: 16 }) : /* @__PURE__ */ e(wt, { size: 16 }),
116
- m ? "Loading" : "Uploading"
117
- ] }) }) })
118
- ] }) : /* @__PURE__ */ d(s.Placeholder, { children: [
119
- /* @__PURE__ */ e(
120
- s.UploadInput,
121
- {
122
- allowMultiple: !0,
123
- onSelect: (t) => H(t.target.files)
124
- }
125
- ),
126
- /* @__PURE__ */ e(s.BrowseInput, { onBrowse: X })
127
- ] })
128
- ] })
129
- ] }) }),
130
- /* @__PURE__ */ e(y.Content, { side: "top", children: "Attachments" })
131
- ] })
132
- }
133
- ) }) : null;
1
+ import { SortableAttachmentItem as e } from "./AttachmentItem.es.js";
2
+ import { AttachmentsButtonTrigger as t } from "./AttachmentsButtonTrigger.es.js";
3
+ import { useAssetChooser as n, useAssetUpload as r, useEditorState as i } from "@frontify/app-bridge";
4
+ import { AssetInput as a, Flex as ee, Flyout as o, Tooltip as s } from "@frontify/fondue/components";
5
+ import { IconArrowCircleUp as te, IconImageStack as c } from "@frontify/fondue/icons";
6
+ import { useEffect as l, useState as u } from "react";
7
+ import { jsx as d, jsxs as f } from "react/jsx-runtime";
8
+ import { DndContext as p, KeyboardSensor as ne, PointerSensor as m, closestCenter as re, useSensor as h, useSensors as g } from "@dnd-kit/core";
9
+ import { restrictToParentElement as _ } from "@dnd-kit/modifiers";
10
+ import { SortableContext as v, arrayMove as y, rectSortingStrategy as b } from "@dnd-kit/sortable";
11
+ //#region src/components/Attachments/Attachments.tsx
12
+ var x = ({ items: x = [], onDelete: S, onReplaceWithBrowse: C, onReplaceWithUpload: w, onBrowse: T, onUpload: E, onSorted: ie, appBridge: D, triggerComponent: ae = t, isOpen: O, onOpenChange: oe }) => {
13
+ let [k, A] = u(x), [j, M] = u(!1), N = g(h(m), h(ne)), [P, F] = u(void 0), [I, L] = u(!1), [R, z] = u(!1), [B, V] = u([]), [H, U] = u(null), W = i(D), { openAssetChooser: G, closeAssetChooser: K } = n(D), q = O !== void 0, J = q ? O : j, Y = k?.find((e) => e.id === P), X = x.length, se = X > 0 ? `Open attachments, ${X} ${X === 1 ? "attachment" : "attachments"}` : "Add attachments", [ce, { results: Z, doneAll: Q }] = r({ onUploadProgress: () => !I && L(!0) }), $ = (e) => {
14
+ (q ? oe : M)?.(e);
15
+ };
16
+ l(() => {
17
+ A(x);
18
+ }, [x]), l(() => {
19
+ H && (L(!0), ce(H));
20
+ }, [H]), l(() => {
21
+ (async () => {
22
+ Q && (await E(Z), L(!1));
23
+ })();
24
+ }, [Q, Z]);
25
+ let le = () => {
26
+ $(!1), G(async (e) => {
27
+ K(), $(!0), z(!0), await T(e), z(!1);
28
+ }, {
29
+ multiSelection: !0,
30
+ selectedValueIds: k.map((e) => e.id)
31
+ });
32
+ }, ue = (e) => {
33
+ $(!1), G(async (t) => {
34
+ $(!0), K(), V([...B, e.id]), await C(e, t[0]), V(B.filter((t) => t !== e.id));
35
+ }, {
36
+ multiSelection: !1,
37
+ selectedValueIds: k.map((e) => e.id)
38
+ });
39
+ }, de = async (e, t) => {
40
+ V([...B, e.id]), await w(e, t), V(B.filter((t) => t !== e.id));
41
+ };
42
+ return W || (k?.length ?? 0) > 0 ? /* @__PURE__ */ d("div", {
43
+ "data-test-id": "attachments-flyout-button",
44
+ children: /* @__PURE__ */ d(o.Root, {
45
+ open: J,
46
+ onOpenChange: (e) => $(Y ? !0 : e),
47
+ children: /* @__PURE__ */ f(s.Root, {
48
+ enterDelay: 500,
49
+ children: [
50
+ /* @__PURE__ */ d(s.Trigger, {
51
+ asChild: !0,
52
+ children: /* @__PURE__ */ d(o.Trigger, {
53
+ asChild: !0,
54
+ "data-test-id": "attachments-button-trigger",
55
+ children: /* @__PURE__ */ d(ae, {
56
+ isFlyoutOpen: J,
57
+ "aria-label": se,
58
+ children: /* @__PURE__ */ d("div", {
59
+ "aria-hidden": "true",
60
+ children: X > 0 ? X : "Add"
61
+ })
62
+ })
63
+ })
64
+ }),
65
+ /* @__PURE__ */ d(o.Content, {
66
+ side: "bottom",
67
+ align: "end",
68
+ width: "300px",
69
+ onEscapeKeyDown: (e) => {
70
+ e.stopPropagation(), $(!1);
71
+ },
72
+ children: /* @__PURE__ */ f("div", {
73
+ className: "tw-w-full",
74
+ "data-test-id": "attachments-flyout-content",
75
+ children: [k.length > 0 && /* @__PURE__ */ d(p, {
76
+ sensors: N,
77
+ collisionDetection: re,
78
+ onDragStart: (e) => {
79
+ let { active: t } = e;
80
+ F(t.id);
81
+ },
82
+ onDragEnd: (e) => {
83
+ let { active: t, over: n } = e;
84
+ if (n && t.id !== n.id && k) {
85
+ let e = k.findIndex((e) => e.id === t.id), r = k.findIndex((e) => e.id === n.id), i = y(k, e, r);
86
+ A(i), ie(i);
87
+ }
88
+ F(void 0);
89
+ },
90
+ modifiers: [_],
91
+ children: /* @__PURE__ */ d(v, {
92
+ items: k,
93
+ strategy: b,
94
+ children: /* @__PURE__ */ d("div", {
95
+ className: "tw-border-b tw-border-b-line tw-relative",
96
+ children: k.map((t) => /* @__PURE__ */ d(e, {
97
+ isEditing: W,
98
+ isLoading: B.includes(t.id),
99
+ item: t,
100
+ onDelete: () => S(t),
101
+ onReplaceWithBrowse: () => ue(t),
102
+ onReplaceWithUpload: (e) => de(t, e),
103
+ onDownload: () => D.dispatch({
104
+ name: "downloadAsset",
105
+ payload: t
106
+ })
107
+ }, t.id))
108
+ })
109
+ })
110
+ }), W && /* @__PURE__ */ f("div", {
111
+ className: "tw-px-5 tw-py-3",
112
+ "data-test-id": "asset-input-placeholder",
113
+ children: [/* @__PURE__ */ d("div", {
114
+ className: "tw-font-primary tw-font-medium tw-text-primary tw-text-small tw-my-4",
115
+ children: "Add attachments"
116
+ }), I || R ? /* @__PURE__ */ f(a.Root, {
117
+ orientation: "horizontal",
118
+ children: [
119
+ /* @__PURE__ */ d(a.Preview, { children: /* @__PURE__ */ d(a.PreviewLoading, {}) }),
120
+ /* @__PURE__ */ d(a.Title, { children: "Asset" }),
121
+ /* @__PURE__ */ d(a.Metadata, { children: /* @__PURE__ */ d(a.MetadataItem, { children: /* @__PURE__ */ f(ee, {
122
+ align: "center",
123
+ gap: .5,
124
+ children: [d(R ? c : te, { size: 16 }), R ? "Loading" : "Uploading"]
125
+ }) }) })
126
+ ]
127
+ }) : /* @__PURE__ */ f(a.Placeholder, { children: [/* @__PURE__ */ d(a.UploadInput, {
128
+ allowMultiple: !0,
129
+ onSelect: (e) => U(e.target.files)
130
+ }), /* @__PURE__ */ d(a.BrowseInput, { onBrowse: le })] })]
131
+ })]
132
+ })
133
+ }),
134
+ /* @__PURE__ */ d(s.Content, {
135
+ side: "top",
136
+ children: "Attachments"
137
+ })
138
+ ]
139
+ })
140
+ })
141
+ }) : null;
134
142
  };
135
- export {
136
- Et as Attachments
137
- };
138
- //# sourceMappingURL=Attachments.es.js.map
143
+ //#endregion
144
+ export { x as Attachments };
145
+
146
+ //# sourceMappingURL=Attachments.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Attachments.es.js","sources":["../../../src/components/Attachments/Attachments.tsx"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport {\n DndContext,\n type DragEndEvent,\n type DragStartEvent,\n KeyboardSensor,\n PointerSensor,\n closestCenter,\n useSensor,\n useSensors,\n} from '@dnd-kit/core';\nimport { restrictToParentElement } from '@dnd-kit/modifiers';\nimport { SortableContext, arrayMove, rectSortingStrategy } from '@dnd-kit/sortable';\nimport { type Asset, useAssetChooser, useAssetUpload, useEditorState } from '@frontify/app-bridge';\nimport { Tooltip, Flyout, AssetInput, Flex } from '@frontify/fondue/components';\nimport { IconArrowCircleUp, IconImageStack } from '@frontify/fondue/icons';\nimport { useEffect, useState } from 'react';\n\nimport { SortableAttachmentItem } from './AttachmentItem';\nimport { AttachmentsButtonTrigger } from './AttachmentsButtonTrigger';\nimport { type AttachmentsProps } from './types';\n\nexport const Attachments = ({\n items = [],\n onDelete,\n onReplaceWithBrowse,\n onReplaceWithUpload,\n onBrowse,\n onUpload,\n onSorted,\n appBridge,\n triggerComponent: TriggerComponent = AttachmentsButtonTrigger,\n isOpen,\n onOpenChange,\n}: AttachmentsProps) => {\n const [internalItems, setInternalItems] = useState<Asset[]>(items);\n const [isFlyoutOpenInternal, setIsFlyoutOpenInternal] = useState(false);\n const sensors = useSensors(useSensor(PointerSensor), useSensor(KeyboardSensor));\n const [draggedAssetId, setDraggedAssetId] = useState<number | undefined>(undefined);\n const [isUploadLoading, setIsUploadLoading] = useState(false);\n const [isBrowseLoading, setIsBrowseLoading] = useState(false);\n const [assetIdsLoading, setAssetIdsLoading] = useState<number[]>([]);\n const [selectedFiles, setSelectedFiles] = useState<FileList | null>(null);\n const isEditing = useEditorState(appBridge);\n const { openAssetChooser, closeAssetChooser } = useAssetChooser(appBridge);\n const isControllingStateExternally = isOpen !== undefined;\n const isFlyoutOpen = isControllingStateExternally ? isOpen : isFlyoutOpenInternal;\n\n const draggedItem = internalItems?.find((item) => item.id === draggedAssetId);\n\n const [uploadFile, { results: uploadResults, doneAll }] = useAssetUpload({\n onUploadProgress: () => !isUploadLoading && setIsUploadLoading(true),\n });\n\n const handleFlyoutOpenChange = (isOpen: boolean) => {\n const stateSetter = isControllingStateExternally ? onOpenChange : setIsFlyoutOpenInternal;\n\n stateSetter?.(isOpen);\n };\n\n useEffect(() => {\n setInternalItems(items);\n }, [items]);\n\n useEffect(() => {\n if (selectedFiles) {\n setIsUploadLoading(true);\n uploadFile(selectedFiles);\n }\n // oxlint-disable-next-line @eslint-react/exhaustive-deps\n }, [selectedFiles]);\n\n useEffect(() => {\n const uploadDone = async () => {\n if (doneAll) {\n await onUpload(uploadResults);\n setIsUploadLoading(false);\n }\n };\n uploadDone();\n // oxlint-disable-next-line @eslint-react/exhaustive-deps\n }, [doneAll, uploadResults]);\n\n const onOpenAssetChooser = () => {\n handleFlyoutOpenChange(false);\n openAssetChooser(\n // oxlint-disable-next-line typescript/no-misused-promises\n async (result: Asset[]) => {\n closeAssetChooser();\n handleFlyoutOpenChange(true);\n setIsBrowseLoading(true);\n await onBrowse(result);\n setIsBrowseLoading(false);\n },\n {\n multiSelection: true,\n selectedValueIds: internalItems.map((internalItem) => internalItem.id),\n },\n );\n };\n\n const onReplaceItemWithBrowse = (toReplace: Asset) => {\n handleFlyoutOpenChange(false);\n openAssetChooser(\n // oxlint-disable-next-line typescript/no-misused-promises\n async (result: Asset[]) => {\n handleFlyoutOpenChange(true);\n closeAssetChooser();\n setAssetIdsLoading([...assetIdsLoading, toReplace.id]);\n await onReplaceWithBrowse(toReplace, result[0]);\n setAssetIdsLoading(assetIdsLoading.filter((id) => id !== toReplace.id));\n },\n {\n multiSelection: false,\n selectedValueIds: internalItems.map((internalItem) => internalItem.id),\n },\n );\n };\n\n const onReplaceItemWithUpload = async (toReplace: Asset, uploadedAsset: Asset) => {\n setAssetIdsLoading([...assetIdsLoading, toReplace.id]);\n await onReplaceWithUpload(toReplace, uploadedAsset);\n setAssetIdsLoading(assetIdsLoading.filter((id) => id !== toReplace.id));\n };\n\n const handleDragStart = (event: DragStartEvent) => {\n const { active } = event;\n setDraggedAssetId(active.id as number);\n };\n\n const handleDragEnd = (event: DragEndEvent) => {\n const { active, over } = event;\n if (over && active.id !== over.id && internalItems) {\n const oldIndex = internalItems.findIndex((i) => i.id === active.id);\n const newIndex = internalItems.findIndex((i) => i.id === over.id);\n const sortedItems = arrayMove(internalItems, oldIndex, newIndex);\n setInternalItems(sortedItems);\n onSorted(sortedItems);\n }\n setDraggedAssetId(undefined);\n };\n\n const autoFocusModifier = {\n onEscapeKeyDown: (event: Event) => {\n event.stopPropagation();\n handleFlyoutOpenChange(false);\n },\n };\n\n return isEditing || (internalItems?.length ?? 0) > 0 ? (\n <div data-test-id=\"attachments-flyout-button\">\n <Flyout.Root\n open={isFlyoutOpen}\n onOpenChange={(isOpen) => handleFlyoutOpenChange(draggedItem ? true : isOpen)}\n >\n <Tooltip.Root enterDelay={500}>\n <Tooltip.Trigger asChild>\n <Flyout.Trigger asChild data-test-id=\"attachments-button-trigger\">\n <TriggerComponent isFlyoutOpen={isFlyoutOpen}>\n <div>{items.length > 0 ? items.length : 'Add'}</div>\n </TriggerComponent>\n </Flyout.Trigger>\n </Tooltip.Trigger>\n <Flyout.Content side=\"bottom\" align=\"end\" width=\"300px\" {...autoFocusModifier}>\n <div className=\"tw-w-full\" data-test-id=\"attachments-flyout-content\">\n {internalItems.length > 0 && (\n <DndContext\n sensors={sensors}\n collisionDetection={closestCenter}\n onDragStart={handleDragStart}\n onDragEnd={handleDragEnd}\n modifiers={[restrictToParentElement]}\n >\n <SortableContext items={internalItems} strategy={rectSortingStrategy}>\n <div className=\"tw-border-b tw-border-b-line tw-relative\">\n {internalItems.map((item) => (\n <SortableAttachmentItem\n isEditing={isEditing}\n isLoading={assetIdsLoading.includes(item.id)}\n key={item.id}\n item={item}\n onDelete={() => onDelete(item)}\n onReplaceWithBrowse={() => onReplaceItemWithBrowse(item)}\n onReplaceWithUpload={(uploadedAsset: Asset) =>\n onReplaceItemWithUpload(item, uploadedAsset)\n }\n onDownload={() =>\n appBridge.dispatch({\n name: 'downloadAsset',\n payload: item,\n })\n }\n />\n ))}\n </div>\n </SortableContext>\n </DndContext>\n )}\n {isEditing && (\n <div className=\"tw-px-5 tw-py-3\" data-test-id=\"asset-input-placeholder\">\n <div className=\"tw-font-primary tw-font-medium tw-text-primary tw-text-small tw-my-4\">\n Add attachments\n </div>\n {isUploadLoading || isBrowseLoading ? (\n <AssetInput.Root orientation=\"horizontal\">\n <AssetInput.Preview>\n <AssetInput.PreviewLoading />\n </AssetInput.Preview>\n <AssetInput.Title>Asset</AssetInput.Title>\n <AssetInput.Metadata>\n <AssetInput.MetadataItem>\n <Flex align=\"center\" gap={0.5}>\n {isBrowseLoading ? (\n <IconImageStack size={16} />\n ) : (\n <IconArrowCircleUp size={16} />\n )}\n {isBrowseLoading ? 'Loading' : 'Uploading'}\n </Flex>\n </AssetInput.MetadataItem>\n </AssetInput.Metadata>\n </AssetInput.Root>\n ) : (\n <AssetInput.Placeholder>\n <AssetInput.UploadInput\n allowMultiple\n onSelect={(event) => setSelectedFiles(event.target.files)}\n />\n <AssetInput.BrowseInput onBrowse={onOpenAssetChooser} />\n </AssetInput.Placeholder>\n )}\n </div>\n )}\n </div>\n </Flyout.Content>\n <Tooltip.Content side=\"top\">Attachments</Tooltip.Content>\n </Tooltip.Root>\n </Flyout.Root>\n </div>\n ) : null;\n};\n"],"names":["Attachments","items","onDelete","onReplaceWithBrowse","onReplaceWithUpload","onBrowse","onUpload","onSorted","appBridge","TriggerComponent","AttachmentsButtonTrigger","isOpen","onOpenChange","internalItems","setInternalItems","useState","isFlyoutOpenInternal","setIsFlyoutOpenInternal","sensors","useSensors","useSensor","PointerSensor","KeyboardSensor","draggedAssetId","setDraggedAssetId","isUploadLoading","setIsUploadLoading","isBrowseLoading","setIsBrowseLoading","assetIdsLoading","setAssetIdsLoading","selectedFiles","setSelectedFiles","isEditing","useEditorState","openAssetChooser","closeAssetChooser","useAssetChooser","isControllingStateExternally","isFlyoutOpen","draggedItem","item","uploadFile","uploadResults","doneAll","useAssetUpload","handleFlyoutOpenChange","useEffect","onOpenAssetChooser","result","internalItem","onReplaceItemWithBrowse","toReplace","id","onReplaceItemWithUpload","uploadedAsset","handleDragStart","event","active","handleDragEnd","over","oldIndex","i","newIndex","sortedItems","arrayMove","autoFocusModifier","jsx","Flyout","jsxs","Tooltip","DndContext","closestCenter","restrictToParentElement","SortableContext","rectSortingStrategy","SortableAttachmentItem","AssetInput","Flex","IconImageStack","IconArrowCircleUp"],"mappings":"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"}
1
+ {"version":3,"file":"Attachments.es.js","names":[],"sources":["../../../src/components/Attachments/Attachments.tsx"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport {\n DndContext,\n type DragEndEvent,\n type DragStartEvent,\n KeyboardSensor,\n PointerSensor,\n closestCenter,\n useSensor,\n useSensors,\n} from '@dnd-kit/core';\nimport { restrictToParentElement } from '@dnd-kit/modifiers';\nimport { SortableContext, arrayMove, rectSortingStrategy } from '@dnd-kit/sortable';\nimport { type Asset, useAssetChooser, useAssetUpload, useEditorState } from '@frontify/app-bridge';\nimport { Tooltip, Flyout, AssetInput, Flex } from '@frontify/fondue/components';\nimport { IconArrowCircleUp, IconImageStack } from '@frontify/fondue/icons';\nimport { useEffect, useState } from 'react';\n\nimport { SortableAttachmentItem } from './AttachmentItem';\nimport { AttachmentsButtonTrigger } from './AttachmentsButtonTrigger';\nimport { type AttachmentsProps } from './types';\n\nexport const Attachments = ({\n items = [],\n onDelete,\n onReplaceWithBrowse,\n onReplaceWithUpload,\n onBrowse,\n onUpload,\n onSorted,\n appBridge,\n triggerComponent: TriggerComponent = AttachmentsButtonTrigger,\n isOpen,\n onOpenChange,\n}: AttachmentsProps) => {\n const [internalItems, setInternalItems] = useState<Asset[]>(items);\n const [isFlyoutOpenInternal, setIsFlyoutOpenInternal] = useState(false);\n const sensors = useSensors(useSensor(PointerSensor), useSensor(KeyboardSensor));\n const [draggedAssetId, setDraggedAssetId] = useState<number | undefined>(undefined);\n const [isUploadLoading, setIsUploadLoading] = useState(false);\n const [isBrowseLoading, setIsBrowseLoading] = useState(false);\n const [assetIdsLoading, setAssetIdsLoading] = useState<number[]>([]);\n const [selectedFiles, setSelectedFiles] = useState<FileList | null>(null);\n const isEditing = useEditorState(appBridge);\n const { openAssetChooser, closeAssetChooser } = useAssetChooser(appBridge);\n const isControllingStateExternally = isOpen !== undefined;\n const isFlyoutOpen = isControllingStateExternally ? isOpen : isFlyoutOpenInternal;\n\n const draggedItem = internalItems?.find((item) => item.id === draggedAssetId);\n\n const attachmentCount = items.length;\n const triggerLabel =\n attachmentCount > 0\n ? `Open attachments, ${attachmentCount} ${attachmentCount === 1 ? 'attachment' : 'attachments'}`\n : 'Add attachments';\n\n const [uploadFile, { results: uploadResults, doneAll }] = useAssetUpload({\n onUploadProgress: () => !isUploadLoading && setIsUploadLoading(true),\n });\n\n const handleFlyoutOpenChange = (isOpen: boolean) => {\n const stateSetter = isControllingStateExternally ? onOpenChange : setIsFlyoutOpenInternal;\n\n stateSetter?.(isOpen);\n };\n\n useEffect(() => {\n setInternalItems(items);\n }, [items]);\n\n useEffect(() => {\n if (selectedFiles) {\n setIsUploadLoading(true);\n uploadFile(selectedFiles);\n }\n // oxlint-disable-next-line @eslint-react/exhaustive-deps\n }, [selectedFiles]);\n\n useEffect(() => {\n const uploadDone = async () => {\n if (doneAll) {\n await onUpload(uploadResults);\n setIsUploadLoading(false);\n }\n };\n uploadDone();\n // oxlint-disable-next-line @eslint-react/exhaustive-deps\n }, [doneAll, uploadResults]);\n\n const onOpenAssetChooser = () => {\n handleFlyoutOpenChange(false);\n openAssetChooser(\n // oxlint-disable-next-line typescript/no-misused-promises\n async (result: Asset[]) => {\n closeAssetChooser();\n handleFlyoutOpenChange(true);\n setIsBrowseLoading(true);\n await onBrowse(result);\n setIsBrowseLoading(false);\n },\n {\n multiSelection: true,\n selectedValueIds: internalItems.map((internalItem) => internalItem.id),\n },\n );\n };\n\n const onReplaceItemWithBrowse = (toReplace: Asset) => {\n handleFlyoutOpenChange(false);\n openAssetChooser(\n // oxlint-disable-next-line typescript/no-misused-promises\n async (result: Asset[]) => {\n handleFlyoutOpenChange(true);\n closeAssetChooser();\n setAssetIdsLoading([...assetIdsLoading, toReplace.id]);\n await onReplaceWithBrowse(toReplace, result[0]);\n setAssetIdsLoading(assetIdsLoading.filter((id) => id !== toReplace.id));\n },\n {\n multiSelection: false,\n selectedValueIds: internalItems.map((internalItem) => internalItem.id),\n },\n );\n };\n\n const onReplaceItemWithUpload = async (toReplace: Asset, uploadedAsset: Asset) => {\n setAssetIdsLoading([...assetIdsLoading, toReplace.id]);\n await onReplaceWithUpload(toReplace, uploadedAsset);\n setAssetIdsLoading(assetIdsLoading.filter((id) => id !== toReplace.id));\n };\n\n const handleDragStart = (event: DragStartEvent) => {\n const { active } = event;\n setDraggedAssetId(active.id as number);\n };\n\n const handleDragEnd = (event: DragEndEvent) => {\n const { active, over } = event;\n if (over && active.id !== over.id && internalItems) {\n const oldIndex = internalItems.findIndex((i) => i.id === active.id);\n const newIndex = internalItems.findIndex((i) => i.id === over.id);\n const sortedItems = arrayMove(internalItems, oldIndex, newIndex);\n setInternalItems(sortedItems);\n onSorted(sortedItems);\n }\n setDraggedAssetId(undefined);\n };\n\n const autoFocusModifier = {\n onEscapeKeyDown: (event: Event) => {\n event.stopPropagation();\n handleFlyoutOpenChange(false);\n },\n };\n\n return isEditing || (internalItems?.length ?? 0) > 0 ? (\n <div data-test-id=\"attachments-flyout-button\">\n <Flyout.Root\n open={isFlyoutOpen}\n onOpenChange={(isOpen) => handleFlyoutOpenChange(draggedItem ? true : isOpen)}\n >\n <Tooltip.Root enterDelay={500}>\n <Tooltip.Trigger asChild>\n <Flyout.Trigger asChild data-test-id=\"attachments-button-trigger\">\n <TriggerComponent isFlyoutOpen={isFlyoutOpen} aria-label={triggerLabel}>\n <div aria-hidden=\"true\">{attachmentCount > 0 ? attachmentCount : 'Add'}</div>\n </TriggerComponent>\n </Flyout.Trigger>\n </Tooltip.Trigger>\n <Flyout.Content side=\"bottom\" align=\"end\" width=\"300px\" {...autoFocusModifier}>\n <div className=\"tw-w-full\" data-test-id=\"attachments-flyout-content\">\n {internalItems.length > 0 && (\n <DndContext\n sensors={sensors}\n collisionDetection={closestCenter}\n onDragStart={handleDragStart}\n onDragEnd={handleDragEnd}\n modifiers={[restrictToParentElement]}\n >\n <SortableContext items={internalItems} strategy={rectSortingStrategy}>\n <div className=\"tw-border-b tw-border-b-line tw-relative\">\n {internalItems.map((item) => (\n <SortableAttachmentItem\n isEditing={isEditing}\n isLoading={assetIdsLoading.includes(item.id)}\n key={item.id}\n item={item}\n onDelete={() => onDelete(item)}\n onReplaceWithBrowse={() => onReplaceItemWithBrowse(item)}\n onReplaceWithUpload={(uploadedAsset: Asset) =>\n onReplaceItemWithUpload(item, uploadedAsset)\n }\n onDownload={() =>\n appBridge.dispatch({\n name: 'downloadAsset',\n payload: item,\n })\n }\n />\n ))}\n </div>\n </SortableContext>\n </DndContext>\n )}\n {isEditing && (\n <div className=\"tw-px-5 tw-py-3\" data-test-id=\"asset-input-placeholder\">\n <div className=\"tw-font-primary tw-font-medium tw-text-primary tw-text-small tw-my-4\">\n Add attachments\n </div>\n {isUploadLoading || isBrowseLoading ? (\n <AssetInput.Root orientation=\"horizontal\">\n <AssetInput.Preview>\n <AssetInput.PreviewLoading />\n </AssetInput.Preview>\n <AssetInput.Title>Asset</AssetInput.Title>\n <AssetInput.Metadata>\n <AssetInput.MetadataItem>\n <Flex align=\"center\" gap={0.5}>\n {isBrowseLoading ? (\n <IconImageStack size={16} />\n ) : (\n <IconArrowCircleUp size={16} />\n )}\n {isBrowseLoading ? 'Loading' : 'Uploading'}\n </Flex>\n </AssetInput.MetadataItem>\n </AssetInput.Metadata>\n </AssetInput.Root>\n ) : (\n <AssetInput.Placeholder>\n <AssetInput.UploadInput\n allowMultiple\n onSelect={(event) => setSelectedFiles(event.target.files)}\n />\n <AssetInput.BrowseInput onBrowse={onOpenAssetChooser} />\n </AssetInput.Placeholder>\n )}\n </div>\n )}\n </div>\n </Flyout.Content>\n <Tooltip.Content side=\"top\">Attachments</Tooltip.Content>\n </Tooltip.Root>\n </Flyout.Root>\n </div>\n ) : null;\n};\n"],"mappings":"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"}
@@ -1,28 +1,25 @@
1
- import { jsxs as i, jsx as t } from "react/jsx-runtime";
2
- import { Button as m } from "@frontify/fondue/components";
3
- import { IconPaperclip as s, IconCaretDown as a } from "@frontify/fondue/icons";
4
- import { forwardRef as n } from "react";
5
- const c = n(
6
- ({ children: r, ...e }, o) => /* @__PURE__ */ i(
7
- m,
8
- {
9
- ref: o,
10
- size: "small",
11
- rounding: "full",
12
- emphasis: "default",
13
- "data-test-id": "attachments-button-trigger",
14
- className: "tw-body-medium",
15
- ...e,
16
- children: [
17
- /* @__PURE__ */ t(s, { size: "16" }),
18
- r,
19
- /* @__PURE__ */ t(a, { size: "12" })
20
- ]
21
- }
22
- )
23
- );
24
- c.displayName = "AttachmentsButtonTrigger";
25
- export {
26
- c as AttachmentsButtonTrigger
27
- };
28
- //# sourceMappingURL=AttachmentsButtonTrigger.es.js.map
1
+ import { Button as e } from "@frontify/fondue/components";
2
+ import { IconCaretDown as t, IconPaperclip as n } from "@frontify/fondue/icons";
3
+ import { forwardRef as r } from "react";
4
+ import { jsx as i, jsxs as a } from "react/jsx-runtime";
5
+ //#region src/components/Attachments/AttachmentsButtonTrigger.tsx
6
+ var o = r(({ children: r, ...o }, s) => /* @__PURE__ */ a(e, {
7
+ ref: s,
8
+ size: "small",
9
+ rounding: "full",
10
+ emphasis: "default",
11
+ "data-test-id": "attachments-button-trigger",
12
+ className: "tw-body-medium",
13
+ ...o,
14
+ "aria-haspopup": "menu",
15
+ children: [
16
+ /* @__PURE__ */ i(n, { size: "16" }),
17
+ r,
18
+ /* @__PURE__ */ i(t, { size: "12" })
19
+ ]
20
+ }));
21
+ o.displayName = "AttachmentsButtonTrigger";
22
+ //#endregion
23
+ export { o as AttachmentsButtonTrigger };
24
+
25
+ //# sourceMappingURL=AttachmentsButtonTrigger.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AttachmentsButtonTrigger.es.js","sources":["../../../src/components/Attachments/AttachmentsButtonTrigger.tsx"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport { Button } from '@frontify/fondue/components';\nimport { IconCaretDown, IconPaperclip } from '@frontify/fondue/icons';\nimport { forwardRef } from 'react';\n\nimport { type AttachmentsTriggerProps } from './types';\n\nexport const AttachmentsButtonTrigger = forwardRef<HTMLButtonElement, AttachmentsTriggerProps>(\n ({ children, ...props }, ref) => (\n <Button\n ref={ref}\n size=\"small\"\n rounding=\"full\"\n emphasis=\"default\"\n data-test-id=\"attachments-button-trigger\"\n className=\"tw-body-medium\"\n {...props}\n >\n <IconPaperclip size=\"16\" />\n {children}\n <IconCaretDown size=\"12\" />\n </Button>\n ),\n);\n\nAttachmentsButtonTrigger.displayName = 'AttachmentsButtonTrigger';\n"],"names":["AttachmentsButtonTrigger","forwardRef","children","props","ref","jsxs","Button","jsx","IconPaperclip","IconCaretDown"],"mappings":";;;;AAQO,MAAMA,IAA2BC;AAAA,EACpC,CAAC,EAAE,UAAAC,GAAU,GAAGC,EAAA,GAASC,MACrB,gBAAAC;AAAA,IAACC;AAAA,IAAA;AAAA,MACG,KAAAF;AAAA,MACA,MAAK;AAAA,MACL,UAAS;AAAA,MACT,UAAS;AAAA,MACT,gBAAa;AAAA,MACb,WAAU;AAAA,MACT,GAAGD;AAAA,MAEJ,UAAA;AAAA,QAAA,gBAAAI,EAACC,GAAA,EAAc,MAAK,KAAA,CAAK;AAAA,QACxBN;AAAA,QACD,gBAAAK,EAACE,GAAA,EAAc,MAAK,KAAA,CAAK;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGrC;AAEAT,EAAyB,cAAc;"}
1
+ {"version":3,"file":"AttachmentsButtonTrigger.es.js","names":[],"sources":["../../../src/components/Attachments/AttachmentsButtonTrigger.tsx"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport { Button } from '@frontify/fondue/components';\nimport { IconCaretDown, IconPaperclip } from '@frontify/fondue/icons';\nimport { forwardRef } from 'react';\n\nimport { type AttachmentsTriggerProps } from './types';\n\nexport const AttachmentsButtonTrigger = forwardRef<HTMLButtonElement, AttachmentsTriggerProps>(\n ({ children, ...props }, ref) => (\n <Button\n ref={ref}\n size=\"small\"\n rounding=\"full\"\n emphasis=\"default\"\n data-test-id=\"attachments-button-trigger\"\n className=\"tw-body-medium\"\n {...props}\n aria-haspopup=\"menu\"\n >\n <IconPaperclip size=\"16\" />\n {children}\n <IconCaretDown size=\"12\" />\n </Button>\n ),\n);\n\nAttachmentsButtonTrigger.displayName = 'AttachmentsButtonTrigger';\n"],"mappings":";;;;;AAQA,IAAa,IAA2B,GACnC,EAAE,aAAU,GAAG,KAAS,MACrB,kBAAC,GAAD;CACS;CACL,MAAK;CACL,UAAS;CACT,UAAS;CACT,gBAAa;CACb,WAAU;CACV,GAAI;CACJ,iBAAc;CARlB,UAAA;EAUI,kBAAC,GAAD,EAAe,MAAK,KAAM,CAAA;EACzB;EACD,kBAAC,GAAD,EAAe,MAAK,KAAM,CAAA;CACtB;AAEhB,CAAA,CAAA;AAEA,EAAyB,cAAc"}