@edifice.io/react 2.6.9-develop-enabling.20261013152718 → 2.6.9-develop.20261013171251

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 (878) hide show
  1. package/dist/_virtual/_commonjsHelpers.js +8 -0
  2. package/dist/_virtual/isSameOrAfter.js +4 -0
  3. package/dist/_virtual/isToday.js +4 -0
  4. package/dist/_virtual/localeData.js +4 -0
  5. package/dist/_virtual/weekday.js +4 -0
  6. package/dist/audience.js +16 -1
  7. package/dist/comments.js +4 -1
  8. package/dist/components/ActionBar/ActionBar.js +8 -1
  9. package/dist/components/AddAttachments/AddAttachments.js +75 -1
  10. package/dist/components/AddAttachments/components/AddAttachmentToWorkspaceModal.js +41 -1
  11. package/dist/components/AddAttachments/components/SingleAttachment.js +27 -1
  12. package/dist/components/AddAttachments/hooks/useFileToAttachment.js +16 -1
  13. package/dist/components/Alert/Alert.js +105 -1
  14. package/dist/components/AppHeader/AppHeader.js +22 -1
  15. package/dist/components/AppIcon/AppIcon.d.ts +1 -15
  16. package/dist/components/AppIcon/AppIcon.js +60 -1
  17. package/dist/components/Attachment/Attachment.js +18 -1
  18. package/dist/components/Avatar/Avatar.js +53 -1
  19. package/dist/components/AvatarGroup/AvatarGroup.js +24 -1
  20. package/dist/components/Badge/Badge.js +33 -1
  21. package/dist/components/BetaSwitch/BetaSwitch.js +27 -1
  22. package/dist/components/Breadcrumb/Breadcrumb.js +28 -1
  23. package/dist/components/Breadcrumb/BreadcrumbItem.js +14 -1
  24. package/dist/components/Breadcrumb/BreadcrumbList.js +13 -1
  25. package/dist/components/Breadcrumb/BreadcrumbNav.js +22 -1
  26. package/dist/components/Button/Button.js +36 -1
  27. package/dist/components/Button/IconButton.js +19 -1
  28. package/dist/components/Button/SearchButton.js +17 -1
  29. package/dist/components/ButtonBeta/ButtonBeta.js +37 -1
  30. package/dist/components/Card/Card.js +53 -1
  31. package/dist/components/Card/CardBody.js +20 -1
  32. package/dist/components/Card/CardContext.js +11 -1
  33. package/dist/components/Card/CardFooter.js +7 -1
  34. package/dist/components/Card/CardHeader.js +22 -1
  35. package/dist/components/Card/CardImage.js +21 -1
  36. package/dist/components/Card/CardText.js +12 -1
  37. package/dist/components/Card/CardTitle.js +12 -1
  38. package/dist/components/Card/CardUser.js +10 -1
  39. package/dist/components/Checkbox/Checkbox.js +35 -1
  40. package/dist/components/ColorPicker/ColorPalette.js +171 -1
  41. package/dist/components/ColorPicker/ColorPicker.js +38 -1
  42. package/dist/components/ColorPicker/ColorPickerItem.js +13 -1
  43. package/dist/components/Combobox/Combobox.js +61 -1
  44. package/dist/components/Combobox/ComboboxTrigger.js +57 -1
  45. package/dist/components/DatePicker/DatePicker.js +40 -1
  46. package/dist/components/Divider/Divider.js +11 -1
  47. package/dist/components/Dropdown/Dropdown.d.ts +0 -2
  48. package/dist/components/Dropdown/Dropdown.js +96 -1
  49. package/dist/components/Dropdown/DropdownCheckboxItem.js +39 -1
  50. package/dist/components/Dropdown/DropdownContext.js +11 -1
  51. package/dist/components/Dropdown/DropdownItem.js +46 -1
  52. package/dist/components/Dropdown/DropdownItemHidden.js +19 -1
  53. package/dist/components/Dropdown/DropdownMenu.js +26 -1
  54. package/dist/components/Dropdown/DropdownMenuGroup.js +12 -1
  55. package/dist/components/Dropdown/DropdownRadioItem.js +39 -1
  56. package/dist/components/Dropdown/DropdownSearchInput.js +25 -1
  57. package/dist/components/Dropdown/DropdownSeparator.js +5 -1
  58. package/dist/components/Dropdown/DropdownTrigger.js +58 -1
  59. package/dist/components/Dropdown/index.d.ts +0 -1
  60. package/dist/components/Dropdown/useDropdownItemFilter.js +19 -1
  61. package/dist/components/Dropzone/Dropzone.js +55 -1
  62. package/dist/components/Dropzone/DropzoneContext.js +12 -1
  63. package/dist/components/Dropzone/DropzoneDrag.js +11 -1
  64. package/dist/components/Dropzone/DropzoneFile.js +30 -1
  65. package/dist/components/Dropzone/DropzoneImport.js +28 -1
  66. package/dist/components/EmptyScreen/EmptyScreen.js +21 -1
  67. package/dist/components/Flex/Flex.js +25 -1
  68. package/dist/components/Form/FormContext.js +11 -1
  69. package/dist/components/Form/FormControl.js +32 -1
  70. package/dist/components/Form/FormText.js +22 -1
  71. package/dist/components/Grid/Grid.d.ts +1 -1
  72. package/dist/components/Grid/Grid.js +32 -1
  73. package/dist/components/Heading/Heading.js +16 -1
  74. package/dist/components/Image/Image.js +44 -1
  75. package/dist/components/Input/Input.js +64 -1
  76. package/dist/components/Label/Label.js +37 -1
  77. package/dist/components/Layout/Layout.js +59 -1
  78. package/dist/components/Layout/components/Header.js +198 -1
  79. package/dist/components/Layout/components/HeaderNotificationsOverlay.js +18 -1
  80. package/dist/components/Layout/components/Help.js +25 -1
  81. package/dist/components/Layout/components/NavItem.js +14 -1
  82. package/dist/components/Layout/components/NavLink.js +21 -1
  83. package/dist/components/Layout/components/Navbar.js +13 -1
  84. package/dist/components/Layout/components/NavbarNav.js +13 -1
  85. package/dist/components/Layout/components/SearchEngine.js +33 -1
  86. package/dist/components/Layout/components/WidgetApps.js +23 -1
  87. package/dist/components/Layout/hooks/useHeader.js +39 -1
  88. package/dist/components/Layout/hooks/useHelp.js +86 -1
  89. package/dist/components/LinkPill/LinkPill.js +28 -1
  90. package/dist/components/List/List.js +54 -1
  91. package/dist/components/Loading/Loading.js +27 -1
  92. package/dist/components/LoadingScreen/LoadingScreen.js +25 -1
  93. package/dist/components/Logo/Logo.js +14 -1
  94. package/dist/components/LogoBeta/LogoBeta.js +14 -1
  95. package/dist/components/MediaViewer/MediaViewer.js +36 -1
  96. package/dist/components/MediaViewer/MediaWrapper.js +72 -1
  97. package/dist/components/MediaViewer/PdfViewer.js +36 -1
  98. package/dist/components/MediaViewer/ToolbarViewer.js +41 -1
  99. package/dist/components/MediaViewer/ToolbarZoom.js +19 -1
  100. package/dist/components/Menu/components/Menu.js +27 -1
  101. package/dist/components/Menu/components/MenuButton.js +30 -1
  102. package/dist/components/Menu/components/MenuContext.js +12 -1
  103. package/dist/components/Menu/components/MenuItem.js +19 -1
  104. package/dist/components/Menu/hooks/useMenu.js +50 -1
  105. package/dist/components/Modal/Modal.js +73 -1
  106. package/dist/components/Modal/ModalBody.js +15 -1
  107. package/dist/components/Modal/ModalContext.js +15 -1
  108. package/dist/components/Modal/ModalFooter.js +5 -1
  109. package/dist/components/Modal/ModalHeader.js +32 -1
  110. package/dist/components/Modal/ModalSubtitle.js +5 -1
  111. package/dist/components/ModalBeta/ModalBeta.js +62 -1
  112. package/dist/components/ModalBeta/ModalBetaBody.js +15 -1
  113. package/dist/components/ModalBeta/ModalBetaContext.js +15 -1
  114. package/dist/components/ModalBeta/ModalBetaFooter.js +7 -1
  115. package/dist/components/ModalBeta/ModalBetaHeader.js +31 -1
  116. package/dist/components/PageLayout/PageLayout.js +117 -1
  117. package/dist/components/PageLayout/PageLayoutContext.js +8 -1
  118. package/dist/components/PageLayout/components/PageLayoutBreadcrumb.js +10 -1
  119. package/dist/components/PageLayout/components/PageLayoutContent.js +22 -1
  120. package/dist/components/PageLayout/components/PageLayoutHeader.js +18 -1
  121. package/dist/components/PageLayout/components/PageLayoutHelpZone.js +6 -1
  122. package/dist/components/PageLayout/components/PageLayoutOverlay.js +51 -1
  123. package/dist/components/PageLayout/components/PageLayoutSidebarLeft.js +18 -1
  124. package/dist/components/PageLayout/components/PageLayoutSidebarRight.js +18 -1
  125. package/dist/components/PageLayout/hook/useOverlay.js +15 -1
  126. package/dist/components/PageLayout/store/overlayStore.js +12 -1
  127. package/dist/components/Pagination/Pagination.js +14 -1
  128. package/dist/components/Popover/Popover.js +52 -1
  129. package/dist/components/PreventPropagation/PreventPropagation.js +9 -1
  130. package/dist/components/PromotionCard/PromotionCard.js +31 -1
  131. package/dist/components/PromotionCard/PromotionCardBody.js +15 -1
  132. package/dist/components/PromotionCard/PromotionCardDescription.js +12 -1
  133. package/dist/components/PromotionCard/PromotionCardFooter.js +12 -1
  134. package/dist/components/PromotionCard/PromotionCardHeader.js +17 -1
  135. package/dist/components/PromotionCard/PromotionCardIcon.js +15 -1
  136. package/dist/components/PromotionCard/PromotionCardTitle.js +12 -1
  137. package/dist/components/Radio/Radio.js +31 -1
  138. package/dist/components/RadioCard/RadioCard.js +32 -1
  139. package/dist/components/RadioTile/RadioTile.d.ts +35 -0
  140. package/dist/components/RadioTile/RadioTile.js +22 -0
  141. package/dist/components/RadioTile/index.d.ts +2 -0
  142. package/dist/components/SearchBar/SearchBar.js +54 -1
  143. package/dist/components/SegmentedControl/SegmentedControl.js +33 -1
  144. package/dist/components/Select/Select.js +46 -1
  145. package/dist/components/Select/SelectTrigger.js +6 -1
  146. package/dist/components/Skeleton/ButtonSkeleton.d.ts +0 -9
  147. package/dist/components/Skeleton/ButtonSkeleton.js +16 -1
  148. package/dist/components/Skeleton/TextSkeleton.d.ts +0 -8
  149. package/dist/components/Skeleton/TextSkeleton.js +16 -1
  150. package/dist/components/Skeleton/index.d.ts +0 -2
  151. package/dist/components/SmartEllipsis/SmartEllipsis.js +21 -1
  152. package/dist/components/StackedGroup/StackedGroup.js +23 -1
  153. package/dist/components/Stepper/Stepper.js +15 -1
  154. package/dist/components/Switch/Switch.js +27 -1
  155. package/dist/components/Table/components/Table.d.ts +7 -34
  156. package/dist/components/Table/components/Table.js +25 -1
  157. package/dist/components/Table/components/TableTbody.js +11 -1
  158. package/dist/components/Table/components/TableTd.js +11 -1
  159. package/dist/components/Table/components/TableTh.js +11 -1
  160. package/dist/components/Table/components/TableThead.js +11 -1
  161. package/dist/components/Table/components/TableTr.js +11 -1
  162. package/dist/components/Tabs/components/Tabs.js +51 -1
  163. package/dist/components/Tabs/components/TabsItem.js +31 -1
  164. package/dist/components/Tabs/components/TabsList.js +34 -1
  165. package/dist/components/Tabs/components/TabsPanel.js +19 -1
  166. package/dist/components/Tabs/context/TabsContext.js +12 -1
  167. package/dist/components/Tabs/hooks/useTabs.js +61 -1
  168. package/dist/components/TextArea/TextArea.js +43 -1
  169. package/dist/components/TextCounter/TextCounter.js +16 -1
  170. package/dist/components/Toolbar/Toolbar.js +83 -1
  171. package/dist/components/Tooltip/Tooltip.js +41 -1
  172. package/dist/components/Tree/components/DndTree.js +61 -1
  173. package/dist/components/Tree/components/SortableTree.js +140 -1
  174. package/dist/components/Tree/components/Tree.js +86 -1
  175. package/dist/components/Tree/hooks/useTree.js +62 -1
  176. package/dist/components/Tree/hooks/useTreeSortable.js +198 -1
  177. package/dist/components/Tree/utilities/tree-sortable.js +161 -1
  178. package/dist/components/Tree/utilities/tree.js +44 -1
  179. package/dist/components/TreeView/TreeNode.js +69 -1
  180. package/dist/components/TreeView/TreeView.js +37 -1
  181. package/dist/components/TreeView/hooks/useTreeView.js +105 -1
  182. package/dist/components/TreeView/utilities/treeview.js +177 -1
  183. package/dist/components/UserRightsList/SaveBookmark.js +29 -1
  184. package/dist/components/UserRightsList/UserRightsBookmarkRow.js +30 -1
  185. package/dist/components/UserRightsList/UserRightsItem.js +36 -1
  186. package/dist/components/UserRightsList/UserRightsList.js +94 -1
  187. package/dist/components/UserRightsList/helpers/rightsHelpers.js +53 -1
  188. package/dist/components/UserRightsList/hooks/useBookmarkEntries.js +58 -1
  189. package/dist/components/UserRightsList/hooks/useSharingItems.js +57 -1
  190. package/dist/components/UserRightsList/types/types.js +6 -1
  191. package/dist/components/UserSearch/UserSearch.js +82 -1
  192. package/dist/components/UserSearch/types/visible.js +4 -1
  193. package/dist/components/VisuallyHidden/VisuallyHidden.js +8 -1
  194. package/dist/components/index.d.ts +1 -0
  195. package/dist/editor.js +79 -1
  196. package/dist/homepage.js +58 -1
  197. package/dist/hooks/useBackground/useBackground.js +18 -1
  198. package/dist/hooks/useBookmark/useBookmark.js +14 -1
  199. package/dist/hooks/useBreakpoint/useBreakpoint.js +14 -1
  200. package/dist/hooks/useBrowserInfo/useBrowserInfo.js +15 -1
  201. package/dist/hooks/useCantoo/useCantoo.js +18 -1
  202. package/dist/hooks/useCheckable/useCheckable.js +28 -1
  203. package/dist/hooks/useClickOutside/useClickOutside.js +27 -1
  204. package/dist/hooks/useConf/useConf.js +13 -1
  205. package/dist/hooks/useConversation/useConversation.js +39 -1
  206. package/dist/hooks/useCookiesConsent/useCookiesConsent.js +29 -1
  207. package/dist/hooks/useDate/useDate.d.ts +14 -32
  208. package/dist/hooks/useDate/useDate.js +87 -1
  209. package/dist/hooks/useDebounce/useDebounce.js +15 -1
  210. package/dist/hooks/useDirectory/useDirectory.js +17 -1
  211. package/dist/hooks/useDropdown/useDropdown.js +170 -1
  212. package/dist/hooks/useDropzone/useDropzone.js +98 -1
  213. package/dist/hooks/useEdificeIcons/useEdificeIcons.js +101 -1
  214. package/dist/hooks/useHasWorkflow/useHasWorkflow.js +14 -1
  215. package/dist/hooks/useHover/useHover.js +22 -1
  216. package/dist/hooks/useHttpErrorToast/useHttpErrorToast.js +36 -1
  217. package/dist/hooks/useImage/useImage.js +18 -1
  218. package/dist/hooks/useInfiniteScroll/useInfiniteScroll.js +20 -1
  219. package/dist/hooks/useIsAdmc/useIsAdmc.js +22 -1
  220. package/dist/hooks/useIsAdml/useIsAdml.js +18 -1
  221. package/dist/hooks/useIsAdmlcOrAdmc/useIsAdmlcOrAdmc.js +16 -1
  222. package/dist/hooks/useKeyPress/useKeyPress.js +14 -1
  223. package/dist/hooks/useLibraryUrl/useLibraryUrl.js +21 -1
  224. package/dist/hooks/useMediaLibrary/useMediaLibrary.js +58 -1
  225. package/dist/hooks/usePreferences/usePreferences.js +10 -1
  226. package/dist/hooks/usePublicConf/usePublicConf.js +12 -1
  227. package/dist/hooks/useResource/useResource.js +25 -1
  228. package/dist/hooks/useResourceSearch/useResourceSearch.js +19 -1
  229. package/dist/hooks/useScreeb/useScreeb.js +22 -1
  230. package/dist/hooks/useScrollToTop/useScrollToTop.js +9 -1
  231. package/dist/hooks/useSession/useSession.js +11 -1
  232. package/dist/hooks/useThumbnail/useThumbnail.js +33 -1
  233. package/dist/hooks/useTitle/useTitle.js +10 -1
  234. package/dist/hooks/useToast/useToast.js +37 -1
  235. package/dist/hooks/useToggle/useToggle.js +10 -1
  236. package/dist/hooks/useTrapFocus/useTrapFocus.js +17 -1
  237. package/dist/hooks/useTrashedResource/useTrashedResource.js +27 -1
  238. package/dist/hooks/useUiOverride/useUiOverride.js +13 -1
  239. package/dist/hooks/useUpload/useUpload.js +109 -1
  240. package/dist/hooks/useUploadFiles/useUploadFiles.js +107 -1
  241. package/dist/hooks/useUser/useUser.js +22 -1
  242. package/dist/hooks/useUserPreferences/useUserPreferences.js +40 -1
  243. package/dist/hooks/useWorkspaceFile/useWorkspaceFile.js +49 -1
  244. package/dist/hooks/useWorkspaceFolders/useWorkspaceFolders.js +54 -1
  245. package/dist/hooks/useWorkspaceFolders/useWorkspaceFoldersTree.js +51 -1
  246. package/dist/hooks/useWorkspaceSearch/useWorkspaceSearch.js +50 -1
  247. package/dist/hooks/useXitiTrackPageLoad/useXitiTrackPageLoad.js +28 -1
  248. package/dist/hooks/useZendeskGuide/useZendeskGuide.d.ts +1 -1
  249. package/dist/hooks/useZendeskGuide/useZendeskGuide.js +129 -1
  250. package/dist/hooks/useZoom/useZoom.js +14 -1
  251. package/dist/icons-apps.js +268 -1
  252. package/dist/icons-audience.js +28 -1
  253. package/dist/icons-nav.js +40 -1
  254. package/dist/icons.js +406 -1
  255. package/dist/index.js +370 -1
  256. package/dist/modals.js +22 -1
  257. package/dist/modules/HelpZone/HelpZone.js +52 -1
  258. package/dist/modules/HelpZone/HelpZoneContainer.js +18 -1
  259. package/dist/modules/audience/ReactionChoice.js +33 -1
  260. package/dist/modules/audience/ReactionModal.Card.js +33 -1
  261. package/dist/modules/audience/ReactionModal.js +75 -1
  262. package/dist/modules/audience/ReactionSummary.js +27 -1
  263. package/dist/modules/audience/ViewsByProfileCard.js +40 -1
  264. package/dist/modules/audience/ViewsCounter.js +20 -1
  265. package/dist/modules/audience/ViewsModal.js +44 -1
  266. package/dist/modules/audience/hooks/useReactionIcons.js +45 -1
  267. package/dist/modules/audience/hooks/useReactions.js +35 -1
  268. package/dist/modules/comments/components/BadgeProfile.js +18 -1
  269. package/dist/modules/comments/components/Comment.js +94 -1
  270. package/dist/modules/comments/components/CommentAvatar.js +17 -1
  271. package/dist/modules/comments/components/CommentDate.js +24 -1
  272. package/dist/modules/comments/components/CommentDeleted.js +11 -1
  273. package/dist/modules/comments/components/CommentForm.js +41 -1
  274. package/dist/modules/comments/components/CommentList.js +22 -1
  275. package/dist/modules/comments/components/CommentReplies.js +33 -1
  276. package/dist/modules/comments/components/CommentTitle.js +7 -1
  277. package/dist/modules/comments/components/DeleteModal.js +25 -1
  278. package/dist/modules/comments/components/TextCounter.js +8 -1
  279. package/dist/modules/comments/constants.js +10 -0
  280. package/dist/modules/comments/context/Context.js +5 -1
  281. package/dist/modules/comments/hooks/useAutosizeTextarea.js +19 -1
  282. package/dist/modules/comments/hooks/useCommentReplies.js +36 -1
  283. package/dist/modules/comments/hooks/useComments.js +71 -1
  284. package/dist/modules/comments/hooks/useCommentsContext.js +11 -1
  285. package/dist/modules/comments/hooks/useProfileQueries.js +27 -1
  286. package/dist/modules/comments/provider/CommentProvider.js +90 -1
  287. package/dist/modules/editor/components/BubbleMenuEditImage/BubbleMenuEditImage.js +135 -1
  288. package/dist/modules/editor/components/BubbleMenuEditInformationPane/BubbleMenuEditInformationPane.js +136 -1
  289. package/dist/modules/editor/components/Editor/CantooAdaptTextBoxView.js +33 -1
  290. package/dist/modules/editor/components/Editor/Editor.js +103 -1
  291. package/dist/modules/editor/components/Editor/EditorPreview.js +56 -1
  292. package/dist/modules/editor/components/Editor/EditorPreviewSkeleton.js +24 -1
  293. package/dist/modules/editor/components/Editor/EditorSkeleton.js +31 -1
  294. package/dist/modules/editor/components/EditorToolbar/EditorToolbar.Cantoo.js +79 -1
  295. package/dist/modules/editor/components/EditorToolbar/EditorToolbar.DropdownMenu.js +17 -1
  296. package/dist/modules/editor/components/EditorToolbar/EditorToolbar.Emoji.js +54 -1
  297. package/dist/modules/editor/components/EditorToolbar/EditorToolbar.HighlightColor.js +47 -1
  298. package/dist/modules/editor/components/EditorToolbar/EditorToolbar.PlusMenu.js +18 -1
  299. package/dist/modules/editor/components/EditorToolbar/EditorToolbar.TextColor.js +50 -1
  300. package/dist/modules/editor/components/EditorToolbar/EditorToolbar.TextSize.js +62 -1
  301. package/dist/modules/editor/components/EditorToolbar/EditorToolbar.Typography.js +52 -1
  302. package/dist/modules/editor/components/EditorToolbar/EditorToolbar.js +356 -1
  303. package/dist/modules/editor/components/MathsModal/MathsModal.js +49 -2
  304. package/dist/modules/editor/components/NodeView/AttachmentNodeView.js +10 -1
  305. package/dist/modules/editor/components/NodeView/AudioNodeView.js +10 -1
  306. package/dist/modules/editor/components/NodeView/ConversationHistoryNodeView.js +10 -1
  307. package/dist/modules/editor/components/NodeView/IframeNodeView.js +10 -1
  308. package/dist/modules/editor/components/NodeView/ImageNodeView.js +12 -1
  309. package/dist/modules/editor/components/NodeView/InformationPaneNodeView.js +10 -1
  310. package/dist/modules/editor/components/NodeView/LinkerNodeView.js +10 -1
  311. package/dist/modules/editor/components/NodeView/VideoNodeView.js +10 -1
  312. package/dist/modules/editor/components/Renderer/AttachmentRenderer.js +50 -1
  313. package/dist/modules/editor/components/Renderer/AudioRenderer.js +35 -1
  314. package/dist/modules/editor/components/Renderer/ConversationHistoryRenderer.js +28 -1
  315. package/dist/modules/editor/components/Renderer/InformationPaneRenderer.js +33 -1
  316. package/dist/modules/editor/components/Renderer/LinkerRenderer.js +34 -1
  317. package/dist/modules/editor/components/Renderer/MediaRenderer.js +84 -1
  318. package/dist/modules/editor/components/Toolbar/LinkToolbar.TippyOptions.js +8 -1
  319. package/dist/modules/editor/components/Toolbar/LinkToolbar.js +61 -1
  320. package/dist/modules/editor/components/Toolbar/TableToolbar.AddMenu.js +54 -1
  321. package/dist/modules/editor/components/Toolbar/TableToolbar.CellColor.js +45 -1
  322. package/dist/modules/editor/components/Toolbar/TableToolbar.DelMenu.js +48 -1
  323. package/dist/modules/editor/components/Toolbar/TableToolbar.js +89 -1
  324. package/dist/modules/editor/hooks/useActionOptions.js +86 -1
  325. package/dist/modules/editor/hooks/useCantooEditor.js +89 -1
  326. package/dist/modules/editor/hooks/useCommentEditor.js +37 -1
  327. package/dist/modules/editor/hooks/useEditorContext.js +12 -1
  328. package/dist/modules/editor/hooks/useImageModal.js +46 -1
  329. package/dist/modules/editor/hooks/useImageSelection.js +46 -1
  330. package/dist/modules/editor/hooks/useLinkToolbar.js +37 -1
  331. package/dist/modules/editor/hooks/useMathsModal.js +17 -1
  332. package/dist/modules/editor/hooks/useMathsStyles.js +20 -1
  333. package/dist/modules/editor/hooks/useMediaLibraryEditor.js +152 -3
  334. package/dist/modules/editor/hooks/useResizeMedia.js +59 -1
  335. package/dist/modules/editor/hooks/useSpeechRecognition.js +21 -1
  336. package/dist/modules/editor/hooks/useSpeechSynthetisis.js +20 -1
  337. package/dist/modules/editor/hooks/useTipTapEditor.js +88 -1
  338. package/dist/modules/editor/utilities/has-extension.js +4 -1
  339. package/dist/modules/editor/utilities/has-mark.js +4 -1
  340. package/dist/modules/editor/utilities/has-text-style.js +5 -1
  341. package/dist/modules/homepage/components/Communities/Communities.js +36 -1
  342. package/dist/modules/homepage/components/Communities/CommunitiesContainer.js +35 -1
  343. package/dist/modules/homepage/components/Communities/CommunitiesSkeleton.js +29 -1
  344. package/dist/modules/homepage/components/Communities/CommunityItem.js +28 -1
  345. package/dist/modules/homepage/components/Communities/useCommunities.js +30 -1
  346. package/dist/modules/homepage/components/Favorites/Favorites.js +31 -1
  347. package/dist/modules/homepage/components/Favorites/FavoritesContainer.js +10 -1
  348. package/dist/modules/homepage/components/Header/Header.js +106 -1
  349. package/dist/modules/homepage/components/HomeCard/HomeCard.js +25 -1
  350. package/dist/modules/homepage/components/HomeCard/HomeCardContent.js +10 -1
  351. package/dist/modules/homepage/components/HomeCard/HomeCardHeader.js +23 -1
  352. package/dist/modules/homepage/components/LastInfos/LastInfos.js +58 -1
  353. package/dist/modules/homepage/components/LastInfos/LastInfosContainer.js +37 -1
  354. package/dist/modules/homepage/components/LastInfos/LastInfosList.js +31 -1
  355. package/dist/modules/homepage/components/LastInfos/useLastInfos.js +25 -1
  356. package/dist/modules/homepage/components/MessageFlashList/MessageFlash.js +65 -1
  357. package/dist/modules/homepage/components/MessageFlashList/MessageFlashList.js +10 -1
  358. package/dist/modules/homepage/components/MessageFlashList/MessageFlashListContainer.js +14 -1
  359. package/dist/modules/homepage/components/MessageFlashList/hooks/useMessageFlashList.js +19 -1
  360. package/dist/modules/homepage/components/MessageFlashList/services/api/index.js +5 -1
  361. package/dist/modules/homepage/components/MessageFlashList/services/api/messagesFlashService.js +21 -1
  362. package/dist/modules/homepage/components/MessageFlashList/services/queries/messagesFlash.js +31 -1
  363. package/dist/modules/homepage/components/Notifications/NotificationItem.js +17 -1
  364. package/dist/modules/homepage/components/Notifications/NotificationList.js +51 -1
  365. package/dist/modules/homepage/components/Notifications/NotificationListContainer.js +23 -1
  366. package/dist/modules/homepage/components/Notifications/NotificationListSkeleton.js +17 -1
  367. package/dist/modules/homepage/components/Notifications/NotificationSkeleton.d.ts +1 -23
  368. package/dist/modules/homepage/components/Notifications/NotificationSkeleton.js +19 -1
  369. package/dist/modules/homepage/components/Notifications/components/CommonNotificationItem.js +32 -1
  370. package/dist/modules/homepage/components/Notifications/components/NotificationFilterMenu.js +29 -1
  371. package/dist/modules/homepage/components/Notifications/components/NotificationFilterModal.js +77 -1
  372. package/dist/modules/homepage/components/Notifications/components/NotificationItemResource.js +20 -1
  373. package/dist/modules/homepage/components/Notifications/components/NotificationOptionsMenu.js +42 -1
  374. package/dist/modules/homepage/components/Notifications/components/ReportNotificationModal.js +31 -1
  375. package/dist/modules/homepage/components/Notifications/components/SystemNotificationItem.js +21 -1
  376. package/dist/modules/homepage/components/Notifications/components/UserNotificationItem.js +26 -1
  377. package/dist/modules/homepage/components/Notifications/components/notificationAdapter.js +71 -1
  378. package/dist/modules/homepage/components/Notifications/hooks/useNotificationList.js +58 -1
  379. package/dist/modules/homepage/components/Notifications/services/api/index.js +5 -1
  380. package/dist/modules/homepage/components/Notifications/services/api/notificationService.js +33 -1
  381. package/dist/modules/homepage/components/Notifications/services/queries/notification.js +84 -1
  382. package/dist/modules/homepage/components/SchoolSpace/SchoolSpace.js +38 -1
  383. package/dist/modules/homepage/components/SchoolSpace/SchoolSpaceContainer.js +13 -1
  384. package/dist/modules/homepage/components/SchoolSpace/useUserSchools.js +39 -1
  385. package/dist/modules/homepage/components/UsefulLinks/LinkForm.js +67 -1
  386. package/dist/modules/homepage/components/UsefulLinks/UsefulLinks.js +31 -1
  387. package/dist/modules/homepage/components/UsefulLinks/UsefulLinksContainer.js +40 -1
  388. package/dist/modules/homepage/components/UsefulLinks/UsefulLinksModal.js +65 -1
  389. package/dist/modules/homepage/components/UsefulLinks/hooks/useUsefulLinksContainer.js +26 -1
  390. package/dist/modules/homepage/components/UsefulLinks/services/api/index.js +5 -1
  391. package/dist/modules/homepage/components/UsefulLinks/services/api/usefulLinksService.js +50 -1
  392. package/dist/modules/homepage/components/UsefulLinks/services/queries/usefulLinks.js +65 -1
  393. package/dist/modules/homepage/components/UserSpace/UserSpace.js +31 -1
  394. package/dist/modules/homepage/components/UserSpace/UserSpaceContainer.js +19 -1
  395. package/dist/modules/homepage/components/UserSpace/hooks/useChildren.js +23 -1
  396. package/dist/modules/homepage/components/UserSpace/hooks/useProfileLinks.js +75 -1
  397. package/dist/modules/homepage/hooks/useWidget.js +83 -1
  398. package/dist/modules/homepage/hooks/useWidgetPreferences.js +34 -1
  399. package/dist/modules/icons/components/IconAdd.js +12 -1
  400. package/dist/modules/icons/components/IconAddUser.js +12 -1
  401. package/dist/modules/icons/components/IconAdjustSettings.js +12 -1
  402. package/dist/modules/icons/components/IconAiFill.js +12 -1
  403. package/dist/modules/icons/components/IconAlertCircle.js +13 -1
  404. package/dist/modules/icons/components/IconAlertTriangle.js +13 -1
  405. package/dist/modules/icons/components/IconAlignCenter.js +12 -1
  406. package/dist/modules/icons/components/IconAlignJustify.js +12 -1
  407. package/dist/modules/icons/components/IconAlignLeft.js +12 -1
  408. package/dist/modules/icons/components/IconAlignRight.js +12 -1
  409. package/dist/modules/icons/components/IconAnswer.js +13 -1
  410. package/dist/modules/icons/components/IconApplications.js +12 -1
  411. package/dist/modules/icons/components/IconArrowDown.js +13 -1
  412. package/dist/modules/icons/components/IconArrowLeft.js +13 -1
  413. package/dist/modules/icons/components/IconArrowRight.js +13 -1
  414. package/dist/modules/icons/components/IconArrowUp.js +13 -1
  415. package/dist/modules/icons/components/IconBlock.js +12 -1
  416. package/dist/modules/icons/components/IconBlur.js +13 -1
  417. package/dist/modules/icons/components/IconBookmark.js +12 -1
  418. package/dist/modules/icons/components/IconBulle.js +16 -1
  419. package/dist/modules/icons/components/IconBulleError.js +13 -1
  420. package/dist/modules/icons/components/IconBulleSuccess.js +13 -1
  421. package/dist/modules/icons/components/IconBulletList.js +16 -1
  422. package/dist/modules/icons/components/IconBurgerMenu.js +12 -1
  423. package/dist/modules/icons/components/IconCalendar.js +12 -1
  424. package/dist/modules/icons/components/IconCalendarEdit.js +12 -1
  425. package/dist/modules/icons/components/IconCalendarLight.js +12 -1
  426. package/dist/modules/icons/components/IconCamera.js +13 -1
  427. package/dist/modules/icons/components/IconCantoo.js +23 -1
  428. package/dist/modules/icons/components/IconCenter.js +12 -1
  429. package/dist/modules/icons/components/IconCheck.js +12 -1
  430. package/dist/modules/icons/components/IconChecklist.js +13 -1
  431. package/dist/modules/icons/components/IconClass.js +13 -1
  432. package/dist/modules/icons/components/IconClock.js +12 -1
  433. package/dist/modules/icons/components/IconClockAlert.js +17 -1
  434. package/dist/modules/icons/components/IconClose.js +13 -1
  435. package/dist/modules/icons/components/IconCloseFullScreen.js +12 -1
  436. package/dist/modules/icons/components/IconCode.js +12 -1
  437. package/dist/modules/icons/components/IconCollect.js +12 -1
  438. package/dist/modules/icons/components/IconCopy.js +12 -1
  439. package/dist/modules/icons/components/IconCrop.js +13 -1
  440. package/dist/modules/icons/components/IconCut.js +13 -1
  441. package/dist/modules/icons/components/IconDelete.js +12 -1
  442. package/dist/modules/icons/components/IconDeleteColor.js +13 -1
  443. package/dist/modules/icons/components/IconDeleteColumn.js +12 -1
  444. package/dist/modules/icons/components/IconDeleteColumnHighlight.js +12 -1
  445. package/dist/modules/icons/components/IconDeleteRow.js +12 -1
  446. package/dist/modules/icons/components/IconDeleteRowHighlight.js +12 -1
  447. package/dist/modules/icons/components/IconDepositeInbox.js +13 -1
  448. package/dist/modules/icons/components/IconDownload.js +17 -1
  449. package/dist/modules/icons/components/IconEdit.js +13 -1
  450. package/dist/modules/icons/components/IconError.js +12 -1
  451. package/dist/modules/icons/components/IconExercizerAi.js +14 -1
  452. package/dist/modules/icons/components/IconExternalLink.js +13 -1
  453. package/dist/modules/icons/components/IconFiles.js +12 -1
  454. package/dist/modules/icons/components/IconFilter.js +12 -1
  455. package/dist/modules/icons/components/IconFlag.js +12 -1
  456. package/dist/modules/icons/components/IconFolder.js +12 -1
  457. package/dist/modules/icons/components/IconFolderAdd.js +13 -1
  458. package/dist/modules/icons/components/IconFolderDelete.js +12 -1
  459. package/dist/modules/icons/components/IconFolderMove.js +17 -1
  460. package/dist/modules/icons/components/IconForgoing.js +12 -1
  461. package/dist/modules/icons/components/IconFullScreen.js +12 -1
  462. package/dist/modules/icons/components/IconGlobe.js +12 -1
  463. package/dist/modules/icons/components/IconGlobe2.js +16 -1
  464. package/dist/modules/icons/components/IconGroupAvatar.js +12 -1
  465. package/dist/modules/icons/components/IconHandMove.js +12 -1
  466. package/dist/modules/icons/components/IconHeadphone.js +12 -1
  467. package/dist/modules/icons/components/IconHide.js +13 -1
  468. package/dist/modules/icons/components/IconHighlightColumn.js +12 -1
  469. package/dist/modules/icons/components/IconHighlightRow.js +12 -1
  470. package/dist/modules/icons/components/IconHome.js +12 -1
  471. package/dist/modules/icons/components/IconHourglass.js +12 -1
  472. package/dist/modules/icons/components/IconImageSizeLarge.js +12 -1
  473. package/dist/modules/icons/components/IconImageSizeMedium.js +12 -1
  474. package/dist/modules/icons/components/IconImageSizeSmall.js +12 -1
  475. package/dist/modules/icons/components/IconInbox.js +12 -1
  476. package/dist/modules/icons/components/IconInfoCircle.js +13 -1
  477. package/dist/modules/icons/components/IconInfoRectangle.js +13 -1
  478. package/dist/modules/icons/components/IconLabel.js +12 -1
  479. package/dist/modules/icons/components/IconLandscape.js +12 -1
  480. package/dist/modules/icons/components/IconLibrary.js +12 -1
  481. package/dist/modules/icons/components/IconLink.js +16 -1
  482. package/dist/modules/icons/components/IconListOrder.js +12 -1
  483. package/dist/modules/icons/components/IconLoader.js +12 -1
  484. package/dist/modules/icons/components/IconLock.js +12 -1
  485. package/dist/modules/icons/components/IconLsuArt.js +13 -1
  486. package/dist/modules/icons/components/IconLsuCompetenceNumerique.js +12 -1
  487. package/dist/modules/icons/components/IconLsuEmc.js +13 -1
  488. package/dist/modules/icons/components/IconLsuFrancais.js +13 -1
  489. package/dist/modules/icons/components/IconLsuHistoireGeo.js +12 -1
  490. package/dist/modules/icons/components/IconLsuLangue.js +16 -1
  491. package/dist/modules/icons/components/IconLsuLangue2.js +13 -1
  492. package/dist/modules/icons/components/IconLsuMath.js +16 -1
  493. package/dist/modules/icons/components/IconLsuParcoursEducatif.js +12 -1
  494. package/dist/modules/icons/components/IconLsuSport.js +12 -1
  495. package/dist/modules/icons/components/IconLsuSvt.js +12 -1
  496. package/dist/modules/icons/components/IconMail.js +13 -1
  497. package/dist/modules/icons/components/IconMailRecall.js +13 -1
  498. package/dist/modules/icons/components/IconMegaphone.js +12 -1
  499. package/dist/modules/icons/components/IconMergeCells.js +13 -1
  500. package/dist/modules/icons/components/IconMessageInfo.js +13 -1
  501. package/dist/modules/icons/components/IconMic.js +12 -1
  502. package/dist/modules/icons/components/IconMicOff.js +12 -1
  503. package/dist/modules/icons/components/IconMinus.js +12 -1
  504. package/dist/modules/icons/components/IconMove.js +14 -1
  505. package/dist/modules/icons/components/IconNoColors.js +12 -1
  506. package/dist/modules/icons/components/IconNotes.js +13 -1
  507. package/dist/modules/icons/components/IconNotification.js +12 -1
  508. package/dist/modules/icons/components/IconOptions.js +14 -1
  509. package/dist/modules/icons/components/IconOrderedList.js +16 -1
  510. package/dist/modules/icons/components/IconPaperclip.js +12 -1
  511. package/dist/modules/icons/components/IconParcoursCitoyen.js +14 -1
  512. package/dist/modules/icons/components/IconParcoursSecours.js +14 -1
  513. package/dist/modules/icons/components/IconPause.js +12 -1
  514. package/dist/modules/icons/components/IconPinOff.js +12 -1
  515. package/dist/modules/icons/components/IconPinOn.js +12 -1
  516. package/dist/modules/icons/components/IconPlaceholder.js +16 -1
  517. package/dist/modules/icons/components/IconPlay.js +12 -1
  518. package/dist/modules/icons/components/IconPlayFilled.js +12 -1
  519. package/dist/modules/icons/components/IconPlus.js +12 -1
  520. package/dist/modules/icons/components/IconPointerDefault.js +12 -1
  521. package/dist/modules/icons/components/IconPointerHand.js +12 -1
  522. package/dist/modules/icons/components/IconPrint.js +12 -1
  523. package/dist/modules/icons/components/IconQuestion.js +14 -1
  524. package/dist/modules/icons/components/IconQuestionMark.js +13 -1
  525. package/dist/modules/icons/components/IconRafterDown.js +12 -1
  526. package/dist/modules/icons/components/IconRafterLeft.js +12 -1
  527. package/dist/modules/icons/components/IconRafterRight.js +12 -1
  528. package/dist/modules/icons/components/IconRafterUp.js +12 -1
  529. package/dist/modules/icons/components/IconReaction.js +12 -1
  530. package/dist/modules/icons/components/IconReadMail.js +16 -1
  531. package/dist/modules/icons/components/IconRecord.js +12 -1
  532. package/dist/modules/icons/components/IconRecordPause.js +12 -1
  533. package/dist/modules/icons/components/IconRecordStop.js +12 -1
  534. package/dist/modules/icons/components/IconRecordVideo.js +12 -1
  535. package/dist/modules/icons/components/IconRedo.js +13 -1
  536. package/dist/modules/icons/components/IconRefresh.js +13 -1
  537. package/dist/modules/icons/components/IconReset.js +12 -1
  538. package/dist/modules/icons/components/IconRestart.js +12 -1
  539. package/dist/modules/icons/components/IconRestore.js +12 -1
  540. package/dist/modules/icons/components/IconSave.js +12 -1
  541. package/dist/modules/icons/components/IconSearch.js +12 -1
  542. package/dist/modules/icons/components/IconSee.js +13 -1
  543. package/dist/modules/icons/components/IconSend.js +12 -1
  544. package/dist/modules/icons/components/IconSetBackground.js +17 -1
  545. package/dist/modules/icons/components/IconSettings.js +16 -1
  546. package/dist/modules/icons/components/IconShare.js +12 -1
  547. package/dist/modules/icons/components/IconSignature.js +13 -1
  548. package/dist/modules/icons/components/IconSmartphone.js +13 -1
  549. package/dist/modules/icons/components/IconSmiley.js +13 -1
  550. package/dist/modules/icons/components/IconSortAscendingLetters.js +13 -1
  551. package/dist/modules/icons/components/IconSortDescending.js +13 -1
  552. package/dist/modules/icons/components/IconSortDescendingLetters.js +13 -1
  553. package/dist/modules/icons/components/IconSortTime.js +14 -1
  554. package/dist/modules/icons/components/IconSpeechToText.js +12 -1
  555. package/dist/modules/icons/components/IconSplitCells.js +13 -1
  556. package/dist/modules/icons/components/IconSquareRoot.js +12 -1
  557. package/dist/modules/icons/components/IconStar.js +13 -1
  558. package/dist/modules/icons/components/IconStarFull.js +13 -1
  559. package/dist/modules/icons/components/IconSubmission.js +12 -1
  560. package/dist/modules/icons/components/IconSubmitToValidate.js +12 -1
  561. package/dist/modules/icons/components/IconSubscript.js +12 -1
  562. package/dist/modules/icons/components/IconSuccessFill.js +12 -1
  563. package/dist/modules/icons/components/IconSuccessOutline.js +13 -1
  564. package/dist/modules/icons/components/IconSuperscript.js +12 -1
  565. package/dist/modules/icons/components/IconTable.js +12 -1
  566. package/dist/modules/icons/components/IconTeacher.js +12 -1
  567. package/dist/modules/icons/components/IconTextBold.js +12 -1
  568. package/dist/modules/icons/components/IconTextColor.js +16 -1
  569. package/dist/modules/icons/components/IconTextHighlight.js +16 -1
  570. package/dist/modules/icons/components/IconTextItalic.js +12 -1
  571. package/dist/modules/icons/components/IconTextPage.js +12 -1
  572. package/dist/modules/icons/components/IconTextSize.js +12 -1
  573. package/dist/modules/icons/components/IconTextToSpeech.js +12 -1
  574. package/dist/modules/icons/components/IconTextToSpeechOff.js +12 -1
  575. package/dist/modules/icons/components/IconTextTypo.js +12 -1
  576. package/dist/modules/icons/components/IconTextUnderline.js +13 -1
  577. package/dist/modules/icons/components/IconTextVanilla.js +13 -1
  578. package/dist/modules/icons/components/IconThumbDown.js +12 -1
  579. package/dist/modules/icons/components/IconThumbUp.js +12 -1
  580. package/dist/modules/icons/components/IconTool.js +12 -1
  581. package/dist/modules/icons/components/IconToolCenter.js +12 -1
  582. package/dist/modules/icons/components/IconTrendingUp.js +16 -1
  583. package/dist/modules/icons/components/IconUndo.js +13 -1
  584. package/dist/modules/icons/components/IconUndoAll.js +14 -1
  585. package/dist/modules/icons/components/IconUndoSlashed.js +12 -1
  586. package/dist/modules/icons/components/IconUnion.js +15 -1
  587. package/dist/modules/icons/components/IconUnlink.js +13 -1
  588. package/dist/modules/icons/components/IconUnlock.js +13 -1
  589. package/dist/modules/icons/components/IconUnreadMail.js +16 -1
  590. package/dist/modules/icons/components/IconUpload.js +18 -1
  591. package/dist/modules/icons/components/IconUser.js +12 -1
  592. package/dist/modules/icons/components/IconUserSearch.js +13 -1
  593. package/dist/modules/icons/components/IconUsers.js +13 -1
  594. package/dist/modules/icons/components/IconVideo.js +12 -1
  595. package/dist/modules/icons/components/IconViewCalendar.js +12 -1
  596. package/dist/modules/icons/components/IconViewList.js +15 -1
  597. package/dist/modules/icons/components/IconWand.js +12 -1
  598. package/dist/modules/icons/components/IconWrite.js +12 -1
  599. package/dist/modules/icons/components/IconZoomIn.js +12 -1
  600. package/dist/modules/icons/components/IconZoomOut.js +12 -1
  601. package/dist/modules/icons/components/apps/IconAccount.js +12 -1
  602. package/dist/modules/icons/components/apps/IconActualites.js +12 -1
  603. package/dist/modules/icons/components/apps/IconAdmin.js +12 -1
  604. package/dist/modules/icons/components/apps/IconAdminPortal.js +12 -1
  605. package/dist/modules/icons/components/apps/IconAdmissionPostBac.js +12 -1
  606. package/dist/modules/icons/components/apps/IconAgenda.js +13 -1
  607. package/dist/modules/icons/components/apps/IconAppointments.js +12 -1
  608. package/dist/modules/icons/components/apps/IconArchive.js +12 -1
  609. package/dist/modules/icons/components/apps/IconAssistance.js +12 -1
  610. package/dist/modules/icons/components/apps/IconAssistancetic.js +14 -1
  611. package/dist/modules/icons/components/apps/IconAssr.js +12 -1
  612. package/dist/modules/icons/components/apps/IconAward.js +12 -1
  613. package/dist/modules/icons/components/apps/IconBanquesavoir.js +12 -1
  614. package/dist/modules/icons/components/apps/IconBcdi.js +12 -1
  615. package/dist/modules/icons/components/apps/IconBiblionisep.js +12 -1
  616. package/dist/modules/icons/components/apps/IconBlog.js +12 -1
  617. package/dist/modules/icons/components/apps/IconBookmarkEmpty.js +12 -1
  618. package/dist/modules/icons/components/apps/IconCahierDeTexte.js +12 -1
  619. package/dist/modules/icons/components/apps/IconCahierTextes.js +12 -1
  620. package/dist/modules/icons/components/apps/IconCalendar.js +13 -1
  621. package/dist/modules/icons/components/apps/IconCanalNumerique.js +12 -1
  622. package/dist/modules/icons/components/apps/IconCcn.js +12 -1
  623. package/dist/modules/icons/components/apps/IconCerise.js +12 -1
  624. package/dist/modules/icons/components/apps/IconCervoprint.js +12 -1
  625. package/dist/modules/icons/components/apps/IconCharlemagne.js +12 -1
  626. package/dist/modules/icons/components/apps/IconCharte.js +12 -1
  627. package/dist/modules/icons/components/apps/IconChat.js +12 -1
  628. package/dist/modules/icons/components/apps/IconCidj.js +12 -1
  629. package/dist/modules/icons/components/apps/IconCns.js +12 -1
  630. package/dist/modules/icons/components/apps/IconCollaborativeWall.js +12 -1
  631. package/dist/modules/icons/components/apps/IconCommunities.js +12 -1
  632. package/dist/modules/icons/components/apps/IconCommunity.js +12 -1
  633. package/dist/modules/icons/components/apps/IconCompetences.js +12 -1
  634. package/dist/modules/icons/components/apps/IconConnecteurGenerique1.js +12 -1
  635. package/dist/modules/icons/components/apps/IconConnecteurGenerique2.js +12 -1
  636. package/dist/modules/icons/components/apps/IconConversation.js +12 -1
  637. package/dist/modules/icons/components/apps/IconDirectory.js +12 -1
  638. package/dist/modules/icons/components/apps/IconEdt.js +12 -1
  639. package/dist/modules/icons/components/apps/IconEducagri.js +12 -1
  640. package/dist/modules/icons/components/apps/IconEdumedia.js +12 -1
  641. package/dist/modules/icons/components/apps/IconEdumoov.js +12 -1
  642. package/dist/modules/icons/components/apps/IconEdutheque.js +12 -1
  643. package/dist/modules/icons/components/apps/IconElectron.js +12 -1
  644. package/dist/modules/icons/components/apps/IconElyceepicardie.js +12 -1
  645. package/dist/modules/icons/components/apps/IconEsidoc.js +12 -1
  646. package/dist/modules/icons/components/apps/IconEuropress.js +12 -1
  647. package/dist/modules/icons/components/apps/IconExercizer.js +12 -1
  648. package/dist/modules/icons/components/apps/IconForms.js +12 -1
  649. package/dist/modules/icons/components/apps/IconForum.js +12 -1
  650. package/dist/modules/icons/components/apps/IconGeogebra.js +12 -1
  651. package/dist/modules/icons/components/apps/IconGepi.js +12 -1
  652. package/dist/modules/icons/components/apps/IconGlpi.js +12 -1
  653. package/dist/modules/icons/components/apps/IconHiboutheque.js +12 -1
  654. package/dist/modules/icons/components/apps/IconItopstore.js +12 -1
  655. package/dist/modules/icons/components/apps/IconKne.js +12 -1
  656. package/dist/modules/icons/components/apps/IconLeSiteTv.js +12 -1
  657. package/dist/modules/icons/components/apps/IconLemonde.js +12 -1
  658. package/dist/modules/icons/components/apps/IconLesechos.js +12 -1
  659. package/dist/modules/icons/components/apps/IconLibrary.js +12 -1
  660. package/dist/modules/icons/components/apps/IconLivretScolaire.js +13 -1
  661. package/dist/modules/icons/components/apps/IconLool.js +15 -1
  662. package/dist/modules/icons/components/apps/IconLsu.js +12 -1
  663. package/dist/modules/icons/components/apps/IconMadmagz.js +12 -1
  664. package/dist/modules/icons/components/apps/IconMagneto.js +13 -1
  665. package/dist/modules/icons/components/apps/IconMatholycee.js +12 -1
  666. package/dist/modules/icons/components/apps/IconMaxicours.js +12 -1
  667. package/dist/modules/icons/components/apps/IconMediacentre.js +12 -1
  668. package/dist/modules/icons/components/apps/IconMindmap.js +12 -1
  669. package/dist/modules/icons/components/apps/IconMinetest.js +12 -1
  670. package/dist/modules/icons/components/apps/IconMinibadge.js +12 -1
  671. package/dist/modules/icons/components/apps/IconMonorientationenligne.js +12 -1
  672. package/dist/modules/icons/components/apps/IconMonstageenligne.js +12 -1
  673. package/dist/modules/icons/components/apps/IconMoodle.js +12 -1
  674. package/dist/modules/icons/components/apps/IconMuseefrancaisphoto.js +12 -1
  675. package/dist/modules/icons/components/apps/IconMyNetwork.js +12 -1
  676. package/dist/modules/icons/components/apps/IconNabook.js +16 -1
  677. package/dist/modules/icons/components/apps/IconNetvibes.js +12 -1
  678. package/dist/modules/icons/components/apps/IconNextcloudDeck.js +12 -1
  679. package/dist/modules/icons/components/apps/IconNextcloudFiles.js +12 -1
  680. package/dist/modules/icons/components/apps/IconNextcloudForms.js +12 -1
  681. package/dist/modules/icons/components/apps/IconNextcloudNotes.js +12 -1
  682. package/dist/modules/icons/components/apps/IconNextcloudTalk.js +12 -1
  683. package/dist/modules/icons/components/apps/IconNote.js +12 -1
  684. package/dist/modules/icons/components/apps/IconNotebook.js +12 -1
  685. package/dist/modules/icons/components/apps/IconNotes.js +12 -1
  686. package/dist/modules/icons/components/apps/IconOnisep.js +12 -1
  687. package/dist/modules/icons/components/apps/IconOnisep2.js +12 -1
  688. package/dist/modules/icons/components/apps/IconPad.js +12 -1
  689. package/dist/modules/icons/components/apps/IconPages.js +12 -1
  690. package/dist/modules/icons/components/apps/IconParametrage.js +12 -1
  691. package/dist/modules/icons/components/apps/IconParametrages.js +12 -1
  692. package/dist/modules/icons/components/apps/IconParaschool.js +12 -1
  693. package/dist/modules/icons/components/apps/IconParcours.js +12 -1
  694. package/dist/modules/icons/components/apps/IconPearltrees.js +12 -1
  695. package/dist/modules/icons/components/apps/IconPeertube.js +21 -1
  696. package/dist/modules/icons/components/apps/IconPicardieCursus.js +12 -1
  697. package/dist/modules/icons/components/apps/IconPlaceholder.js +16 -1
  698. package/dist/modules/icons/components/apps/IconPoll.js +12 -1
  699. package/dist/modules/icons/components/apps/IconPresences.js +12 -1
  700. package/dist/modules/icons/components/apps/IconProeps.js +12 -1
  701. package/dist/modules/icons/components/apps/IconPronote.js +12 -1
  702. package/dist/modules/icons/components/apps/IconPublic.js +12 -1
  703. package/dist/modules/icons/components/apps/IconQwant.js +12 -1
  704. package/dist/modules/icons/components/apps/IconQwantJunior.js +12 -1
  705. package/dist/modules/icons/components/apps/IconRack.js +12 -1
  706. package/dist/modules/icons/components/apps/IconRbs.js +12 -1
  707. package/dist/modules/icons/components/apps/IconResidenceArtiste.js +12 -1
  708. package/dist/modules/icons/components/apps/IconRessourcesdepartementale91.js +12 -1
  709. package/dist/modules/icons/components/apps/IconSacoche.js +12 -1
  710. package/dist/modules/icons/components/apps/IconSchoolbook.js +12 -1
  711. package/dist/modules/icons/components/apps/IconScolinfo.js +12 -1
  712. package/dist/modules/icons/components/apps/IconScrapbook.js +12 -1
  713. package/dist/modules/icons/components/apps/IconSearchengine.js +12 -1
  714. package/dist/modules/icons/components/apps/IconSettingsClass.js +12 -1
  715. package/dist/modules/icons/components/apps/IconSharebigfiles.js +12 -1
  716. package/dist/modules/icons/components/apps/IconStatistics.js +12 -1
  717. package/dist/modules/icons/components/apps/IconStats.js +12 -1
  718. package/dist/modules/icons/components/apps/IconSuitcase.js +12 -1
  719. package/dist/modules/icons/components/apps/IconSupport.js +12 -1
  720. package/dist/modules/icons/components/apps/IconTimeline.js +12 -1
  721. package/dist/modules/icons/components/apps/IconTimelinegenerator.js +12 -1
  722. package/dist/modules/icons/components/apps/IconTurboself.js +12 -1
  723. package/dist/modules/icons/components/apps/IconUniversalis.js +12 -1
  724. package/dist/modules/icons/components/apps/IconUnstagepourtous.js +12 -1
  725. package/dist/modules/icons/components/apps/IconUserbook.js +12 -1
  726. package/dist/modules/icons/components/apps/IconVideo.js +12 -1
  727. package/dist/modules/icons/components/apps/IconVieScolaire.js +12 -1
  728. package/dist/modules/icons/components/apps/IconVisioconf.js +12 -1
  729. package/dist/modules/icons/components/apps/IconVotil.js +14 -1
  730. package/dist/modules/icons/components/apps/IconWebclasseur.js +12 -1
  731. package/dist/modules/icons/components/apps/IconWebsite.js +12 -1
  732. package/dist/modules/icons/components/apps/IconWiki.js +13 -1
  733. package/dist/modules/icons/components/apps/IconWorkspace.js +12 -1
  734. package/dist/modules/icons/components/audience/IconCongrats.js +22 -1
  735. package/dist/modules/icons/components/audience/IconCongratsCounter.js +21 -1
  736. package/dist/modules/icons/components/audience/IconGreat.js +16 -1
  737. package/dist/modules/icons/components/audience/IconGreatCounter.js +14 -1
  738. package/dist/modules/icons/components/audience/IconGuest.js +12 -1
  739. package/dist/modules/icons/components/audience/IconInteresting.js +15 -1
  740. package/dist/modules/icons/components/audience/IconInterestingCounter.js +17 -1
  741. package/dist/modules/icons/components/audience/IconParent.js +12 -1
  742. package/dist/modules/icons/components/audience/IconPersonnel.js +12 -1
  743. package/dist/modules/icons/components/audience/IconStudent.js +20 -1
  744. package/dist/modules/icons/components/audience/IconTeacher.js +12 -1
  745. package/dist/modules/icons/components/audience/IconThanks.js +18 -1
  746. package/dist/modules/icons/components/audience/IconThanksCounter.js +16 -1
  747. package/dist/modules/icons/components/logo/IconLogoEdificeFull.js +26 -1
  748. package/dist/modules/icons/components/logo/IconLogoEdificeSmall.js +17 -1
  749. package/dist/modules/icons/components/nav/IconCommunities.js +12 -1
  750. package/dist/modules/icons/components/nav/IconCommunitiesBeta.js +18 -1
  751. package/dist/modules/icons/components/nav/IconCommunity.js +12 -1
  752. package/dist/modules/icons/components/nav/IconDisconnect.js +12 -1
  753. package/dist/modules/icons/components/nav/IconHome.js +12 -1
  754. package/dist/modules/icons/components/nav/IconHomeBeta.js +13 -1
  755. package/dist/modules/icons/components/nav/IconMessagesBeta.js +18 -1
  756. package/dist/modules/icons/components/nav/IconMyApps.js +12 -1
  757. package/dist/modules/icons/components/nav/IconMyAppsBeta.js +13 -1
  758. package/dist/modules/icons/components/nav/IconNeoAssistance.js +12 -1
  759. package/dist/modules/icons/components/nav/IconNeoMessaging.js +12 -1
  760. package/dist/modules/icons/components/nav/IconNewRelease.js +12 -1
  761. package/dist/modules/icons/components/nav/IconNotificationBeta.js +14 -1
  762. package/dist/modules/icons/components/nav/IconOneAssistance.js +12 -1
  763. package/dist/modules/icons/components/nav/IconOneMessaging.js +12 -1
  764. package/dist/modules/icons/components/nav/IconOneProfile.js +13 -1
  765. package/dist/modules/icons/components/nav/IconProfile.js +12 -1
  766. package/dist/modules/icons/components/nav/IconSearch.js +12 -1
  767. package/dist/modules/icons/components/nav/IconUserbook.js +12 -1
  768. package/dist/modules/modals/ConfirmModal/ConfirmModal.js +37 -1
  769. package/dist/modules/modals/OnboardingModal/OnboardingModal.js +77 -1
  770. package/dist/modules/modals/OnboardingModal/useOnboardingModal.js +38 -1
  771. package/dist/modules/modals/PublishModal/PublishModal.js +120 -1
  772. package/dist/modules/modals/PublishModal/components/ActivitiesDropdown.js +29 -1
  773. package/dist/modules/modals/PublishModal/components/AgeSelect.js +20 -1
  774. package/dist/modules/modals/PublishModal/components/LangSelect.js +19 -1
  775. package/dist/modules/modals/PublishModal/components/PublishModalFooter.js +23 -1
  776. package/dist/modules/modals/PublishModal/components/SubjectsDropdown.js +29 -1
  777. package/dist/modules/modals/PublishModal/components/ToastError.js +24 -1
  778. package/dist/modules/modals/PublishModal/components/ToastSuccess.js +18 -1
  779. package/dist/modules/modals/PublishModal/constants/ageOptions.js +4 -1
  780. package/dist/modules/modals/PublishModal/hooks/useActivitiesOptions.js +34 -1
  781. package/dist/modules/modals/PublishModal/hooks/useLanguageOptions.js +43 -1
  782. package/dist/modules/modals/PublishModal/hooks/usePublishModal.js +106 -1
  783. package/dist/modules/modals/PublishModal/hooks/useSubjectsOptions.js +118 -1
  784. package/dist/modules/modals/ResourceModal/ResourceModal.js +164 -1
  785. package/dist/modules/modals/ResourceModal/apps/BlogPublic.js +62 -1
  786. package/dist/modules/modals/ResourceModal/hooks/useSlug.js +41 -1
  787. package/dist/modules/modals/ResourceModal/hooks/useThumb.js +17 -1
  788. package/dist/modules/modals/ResourceModal/hooks/useUpdateMutation.js +12 -1
  789. package/dist/modules/modals/ShareModal/ShareBookmark.js +25 -1
  790. package/dist/modules/modals/ShareModal/ShareBookmarkLine.js +55 -1
  791. package/dist/modules/modals/ShareModal/ShareModal.js +40 -1
  792. package/dist/modules/modals/ShareModal/ShareResources.js +149 -1
  793. package/dist/modules/modals/ShareModal/apps/ShareBlog.js +43 -1
  794. package/dist/modules/modals/ShareModal/hooks/useSearch.js +174 -1
  795. package/dist/modules/modals/ShareModal/hooks/useShare.js +199 -1
  796. package/dist/modules/modals/ShareModal/hooks/useShareBookmark.js +68 -1
  797. package/dist/modules/modals/ShareModal/hooks/useShareMutation.js +15 -1
  798. package/dist/modules/modals/ShareModal/hooks/useShareRightDisabled.js +11 -1
  799. package/dist/modules/modals/ShareModal/hooks/useShareRightVisible.js +11 -1
  800. package/dist/modules/modals/ShareModal/utils/hasRight.js +4 -1
  801. package/dist/modules/modals/ShareModal/utils/showShareRightLine.js +4 -1
  802. package/dist/modules/multimedia/AudioRecorder/AudioRecorder.js +53 -1
  803. package/dist/modules/multimedia/AudioRecorder/AudioRecorderTimer.js +26 -1
  804. package/dist/modules/multimedia/AudioRecorder/useAudioRecorder.js +314 -1
  805. package/dist/modules/multimedia/Embed/Embed.js +32 -1
  806. package/dist/modules/multimedia/FileCard/FileCard.js +104 -1
  807. package/dist/modules/multimedia/FileCard/FileIcon.js +15 -1
  808. package/dist/modules/multimedia/ImageEditor/components/ImageEditor.js +130 -1
  809. package/dist/modules/multimedia/ImageEditor/components/ImageEditorToolbar.js +72 -1
  810. package/dist/modules/multimedia/ImageEditor/effects/blur.js +80 -1
  811. package/dist/modules/multimedia/ImageEditor/effects/constants.js +4 -1
  812. package/dist/modules/multimedia/ImageEditor/effects/crop.js +171 -1
  813. package/dist/modules/multimedia/ImageEditor/effects/misc.js +177 -1
  814. package/dist/modules/multimedia/ImageEditor/effects/resize.js +166 -1
  815. package/dist/modules/multimedia/ImageEditor/effects/rotate.js +32 -1
  816. package/dist/modules/multimedia/ImageEditor/hooks/useHistoryTool.js +65 -1
  817. package/dist/modules/multimedia/ImageEditor/hooks/useImageEditor.js +82 -1
  818. package/dist/modules/multimedia/ImageEditor/hooks/useImageEffects.js +55 -1
  819. package/dist/modules/multimedia/ImageEditor/utilities/aggregate.js +13 -1
  820. package/dist/modules/multimedia/ImagePicker/ImagePicker.js +40 -1
  821. package/dist/modules/multimedia/Linker/ExternalLinker/ExternalLinker.js +45 -1
  822. package/dist/modules/multimedia/Linker/InternalLinker/InternalLinker.js +151 -1
  823. package/dist/modules/multimedia/LinkerCard/LinkerCard.js +34 -1
  824. package/dist/modules/multimedia/MediaLibrary/MediaLibrary.d.ts +1 -1
  825. package/dist/modules/multimedia/MediaLibrary/MediaLibrary.js +226 -1
  826. package/dist/modules/multimedia/MediaLibrary/MediaLibraryContext.js +12 -1
  827. package/dist/modules/multimedia/MediaLibrary/innertabs/Audio.js +19 -1
  828. package/dist/modules/multimedia/MediaLibrary/innertabs/ExternalLink.js +17 -1
  829. package/dist/modules/multimedia/MediaLibrary/innertabs/Iframe.js +14 -1
  830. package/dist/modules/multimedia/MediaLibrary/innertabs/InternalLink.js +35 -1
  831. package/dist/modules/multimedia/MediaLibrary/innertabs/Upload.js +68 -1
  832. package/dist/modules/multimedia/MediaLibrary/innertabs/Video.js +22 -1
  833. package/dist/modules/multimedia/MediaLibrary/innertabs/VideoEmbedder.js +15 -1
  834. package/dist/modules/multimedia/MediaLibrary/innertabs/Workspace.js +31 -1
  835. package/dist/modules/multimedia/MediaLibrary/innertabs/index.js +21 -1
  836. package/dist/modules/multimedia/UploadCard/UploadCard.js +75 -1
  837. package/dist/modules/multimedia/UploadFiles/UploadFiles.js +56 -1
  838. package/dist/modules/multimedia/VideoEmbed/VideoEmbed.js +76 -1
  839. package/dist/modules/multimedia/VideoRecorder/VideoRecorder.js +156 -1
  840. package/dist/modules/multimedia/VideoRecorder/VideoRecorderToolbar.js +96 -1
  841. package/dist/modules/multimedia/VideoRecorder/useCameras.js +86 -1
  842. package/dist/modules/multimedia/Workspace/Workspace.js +172 -1
  843. package/dist/modules/multimedia/WorkspaceFolders/WorkspaceFolders.js +55 -1
  844. package/dist/modules/multimedia/WorkspaceFolders/components/NewFolderForm.js +39 -1
  845. package/dist/modules/multimedia/testing/mediaHarness.d.ts +154 -0
  846. package/dist/multimedia.js +32 -1
  847. package/dist/node_modules/.pnpm/dayjs@1.11.19/node_modules/dayjs/plugin/isSameOrAfter.js +18 -0
  848. package/dist/node_modules/.pnpm/dayjs@1.11.19/node_modules/dayjs/plugin/isToday.js +19 -0
  849. package/dist/node_modules/.pnpm/dayjs@1.11.19/node_modules/dayjs/plugin/localeData.js +82 -0
  850. package/dist/node_modules/.pnpm/dayjs@1.11.19/node_modules/dayjs/plugin/weekday.js +19 -0
  851. package/dist/providers/AntThemeProvider/AntProvider.js +28 -1
  852. package/dist/providers/AntThemeProvider/antThemeConfig.js +9 -1
  853. package/dist/providers/EdificeClientProvider/EdificeClientProvider.context.js +5 -1
  854. package/dist/providers/EdificeClientProvider/EdificeClientProvider.hook.js +11 -1
  855. package/dist/providers/EdificeClientProvider/EdificeClientProvider.js +54 -1
  856. package/dist/providers/EdificeScreebProvider/EdificeScreebProvider.js +52 -1
  857. package/dist/providers/EdificeThemeProvider/EdificeThemeProvider.context.js +5 -1
  858. package/dist/providers/EdificeThemeProvider/EdificeThemeProvider.hook.js +11 -1
  859. package/dist/providers/EdificeThemeProvider/EdificeThemeProvider.js +47 -1
  860. package/dist/providers/MockedProvider/MockedProvider.js +29 -1
  861. package/dist/providers/MockedProvider/MockedProvider.mocks.js +119 -1
  862. package/dist/style.css +1 -0
  863. package/dist/utilities/check-user-rights/check-user-rights.js +46 -1
  864. package/dist/utilities/create-selectors/create-selectors.js +11 -1
  865. package/dist/utilities/emptyscreen-mapping/emptyscreen-mapping.js +49 -1
  866. package/dist/utilities/mime-types/mime-types-utils.js +4 -1
  867. package/dist/utilities/react-query/react-query-utils.js +13 -1
  868. package/dist/utilities/refs/ref.js +14 -1
  869. package/dist/utilities/rotate-transition-style/get-rotate-transition-style.js +12 -1
  870. package/package.json +12 -11
  871. package/dist/_virtual/_rolldown/runtime.js +0 -1
  872. package/dist/components/Dropdown/DropdownVirtualizedMenu.d.ts +0 -80
  873. package/dist/components/Dropdown/DropdownVirtualizedMenu.js +0 -1
  874. package/dist/components/Skeleton/Skeleton.d.ts +0 -57
  875. package/dist/components/Skeleton/Skeleton.js +0 -1
  876. package/dist/components/Table/components/TableVirtualizedBody.d.ts +0 -29
  877. package/dist/components/Table/components/TableVirtualizedBody.js +0 -1
  878. package/dist/react.css +0 -2
@@ -1 +1,68 @@
1
- import Flex from"../../../../components/Flex/Flex.js";import{useMediaLibraryContext}from"../MediaLibraryContext.js";import Dropzone from"../../../../components/Dropzone/Dropzone.js";import Radio from"../../../../components/Radio/Radio.js";import UploadFiles from"../../UploadFiles/UploadFiles.js";import{useEffect,useRef,useState}from"react";import{jsx,jsxs}from"react/jsx-runtime";import{useTranslation}from"react-i18next";var acceptedTypes=type=>{let acceptedTypes=[];switch(type){case`audio`:acceptedTypes.push(`audio/*`);break;case`video`:acceptedTypes.push(`video/*`);break;case`image`:acceptedTypes.push(`image/png`),acceptedTypes.push(`image/jpeg`),acceptedTypes.push(`image/webp`),acceptedTypes.push(`image/gif`),acceptedTypes.push(`image/avif`),acceptedTypes.push(`image/heic`);break;default:break}return acceptedTypes},orderUploadedFiles=(uploadedFiles,sourceFilesInfo,byAlpha)=>{let infoOf=element=>element._id?sourceFilesInfo[element._id]:void 0,nameOf=element=>infoOf(element)?.name??element.name,lastModifiedOf=element=>infoOf(element)?.lastModified??0;return byAlpha?[...uploadedFiles].sort((a,b)=>nameOf(a).localeCompare(nameOf(b),void 0,{numeric:!0})):[...uploadedFiles].sort((a,b)=>lastModifiedOf(b)-lastModifiedOf(a)).reverse()},Upload=()=>{let{t}=useTranslation(),{type,visibility,multiple,setResult,setResultCounter,setCancellable,setPreSuccess}=useMediaLibraryContext(),[sortByAlpha,setSortByAlpha]=useState(!0),[uploadedFiles,setUploadedFiles]=useState([]),sourceFilesInfoRef=useRef({});return useEffect(()=>{if(!multiple||!uploadedFiles.length){setPreSuccess(void 0);return}setPreSuccess(()=>()=>Promise.resolve(orderUploadedFiles(uploadedFiles,sourceFilesInfoRef.current,sortByAlpha)))},[multiple,uploadedFiles,sortByAlpha,setPreSuccess]),jsxs(`div`,{className:`flex-grow-1`,children:[multiple&&jsxs(Flex,{className:`mb-16 ms-8`,align:`start`,direction:`column`,gap:`8`,children:[jsxs(`div`,{children:[t(`bbm.upload.sort.title`),` :`]}),jsx(Radio,{label:t(`bbm.upload.sort.alpha`),name:`media-library-upload-sort`,value:`alpha`,model:sortByAlpha?`alpha`:`date`,checked:sortByAlpha,onChange:()=>setSortByAlpha(!0),"data-testid":`media-library-upload-sort-alpha`}),jsx(Radio,{label:t(`bbm.upload.sort.date`),name:`media-library-upload-sort`,value:`date`,model:sortByAlpha?`alpha`:`date`,checked:!sortByAlpha,onChange:()=>setSortByAlpha(!1),"data-testid":`media-library-upload-sort-date`})]}),jsx(Dropzone,{multiple,accept:acceptedTypes(type??`embedder`),children:jsx(UploadFiles,{onFilesChange:(uploadedFiles,sourceFilesInfo)=>{sourceFilesInfoRef.current=sourceFilesInfo,setUploadedFiles(uploadedFiles),uploadedFiles.length?(setCancellable(uploadedFiles),setResultCounter(uploadedFiles.length),setResult(uploadedFiles)):(setCancellable([]),setResultCounter(void 0),setResult(void 0))},visibility})})]})};export{Upload};
1
+ import { jsxs, jsx } from "react/jsx-runtime";
2
+ import { useState, useRef, useEffect } from "react";
3
+ import { useTranslation } from "react-i18next";
4
+ import { useMediaLibraryContext } from "../MediaLibraryContext.js";
5
+ import Flex from "../../../../components/Flex/Flex.js";
6
+ import Radio from "../../../../components/Radio/Radio.js";
7
+ import Dropzone from "../../../../components/Dropzone/Dropzone.js";
8
+ import UploadFiles from "../../UploadFiles/UploadFiles.js";
9
+ const acceptedTypes = (type) => {
10
+ const acceptedTypes2 = [];
11
+ switch (type) {
12
+ case "audio":
13
+ acceptedTypes2.push("audio/*");
14
+ break;
15
+ case "video":
16
+ acceptedTypes2.push("video/*");
17
+ break;
18
+ case "image":
19
+ acceptedTypes2.push("image/png"), acceptedTypes2.push("image/jpeg"), acceptedTypes2.push("image/webp"), acceptedTypes2.push("image/gif"), acceptedTypes2.push("image/avif"), acceptedTypes2.push("image/heic");
20
+ break;
21
+ }
22
+ return acceptedTypes2;
23
+ }, orderUploadedFiles = (uploadedFiles, sourceFilesInfo, byAlpha) => {
24
+ const infoOf = (element) => element._id ? sourceFilesInfo[element._id] : void 0, nameOf = (element) => {
25
+ var _a;
26
+ return ((_a = infoOf(element)) == null ? void 0 : _a.name) ?? element.name;
27
+ }, lastModifiedOf = (element) => {
28
+ var _a;
29
+ return ((_a = infoOf(element)) == null ? void 0 : _a.lastModified) ?? 0;
30
+ };
31
+ return byAlpha ? [...uploadedFiles].sort((a, b) => nameOf(a).localeCompare(nameOf(b), void 0, {
32
+ numeric: !0
33
+ })) : [...uploadedFiles].sort((a, b) => lastModifiedOf(b) - lastModifiedOf(a)).reverse();
34
+ }, Upload = () => {
35
+ const {
36
+ t
37
+ } = useTranslation(), {
38
+ type,
39
+ visibility,
40
+ multiple,
41
+ setResult,
42
+ setResultCounter,
43
+ setCancellable,
44
+ setPreSuccess
45
+ } = useMediaLibraryContext(), [sortByAlpha, setSortByAlpha] = useState(!0), [uploadedFiles, setUploadedFiles] = useState([]), sourceFilesInfoRef = useRef({}), handleOnFilesChange = (uploadedFiles2, sourceFilesInfo) => {
46
+ sourceFilesInfoRef.current = sourceFilesInfo, setUploadedFiles(uploadedFiles2), uploadedFiles2.length ? (setCancellable(uploadedFiles2), setResultCounter(uploadedFiles2.length), setResult(uploadedFiles2)) : (setCancellable([]), setResultCounter(void 0), setResult(void 0));
47
+ };
48
+ return useEffect(() => {
49
+ if (!multiple || !uploadedFiles.length) {
50
+ setPreSuccess(void 0);
51
+ return;
52
+ }
53
+ setPreSuccess(() => () => Promise.resolve(orderUploadedFiles(uploadedFiles, sourceFilesInfoRef.current, sortByAlpha)));
54
+ }, [multiple, uploadedFiles, sortByAlpha, setPreSuccess]), /* @__PURE__ */ jsxs("div", { className: "flex-grow-1", children: [
55
+ multiple && /* @__PURE__ */ jsxs(Flex, { className: "mb-16 ms-8", align: "start", direction: "column", gap: "8", children: [
56
+ /* @__PURE__ */ jsxs("div", { children: [
57
+ t("bbm.upload.sort.title"),
58
+ " :"
59
+ ] }),
60
+ /* @__PURE__ */ jsx(Radio, { label: t("bbm.upload.sort.alpha"), name: "media-library-upload-sort", value: "alpha", model: sortByAlpha ? "alpha" : "date", checked: sortByAlpha, onChange: () => setSortByAlpha(!0), "data-testid": "media-library-upload-sort-alpha" }),
61
+ /* @__PURE__ */ jsx(Radio, { label: t("bbm.upload.sort.date"), name: "media-library-upload-sort", value: "date", model: sortByAlpha ? "alpha" : "date", checked: !sortByAlpha, onChange: () => setSortByAlpha(!1), "data-testid": "media-library-upload-sort-date" })
62
+ ] }),
63
+ /* @__PURE__ */ jsx(Dropzone, { multiple, accept: acceptedTypes(type ?? "embedder"), children: /* @__PURE__ */ jsx(UploadFiles, { onFilesChange: handleOnFilesChange, visibility }) })
64
+ ] });
65
+ };
66
+ export {
67
+ Upload
68
+ };
@@ -1 +1,22 @@
1
- import{useMediaLibraryContext}from"../MediaLibraryContext.js";import VideoRecorder from"../../VideoRecorder/VideoRecorder.js";import{useRef}from"react";import{jsx}from"react/jsx-runtime";import{useTranslation}from"react-i18next";var Video=()=>{let{appCode,setResult,setPreSuccess}=useMediaLibraryContext(),{t}=useTranslation(),ref=useRef(null);return jsx(VideoRecorder,{ref,appCode,caption:t(`bbm.video.caption`),onRecordUpdated:recordUrl=>{recordUrl?(setResult(recordUrl),setPreSuccess(()=>ref.current.save)):setResult()},onError:err=>{console.error(err)},hideSaveAction:!0})};export{Video};
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { useRef } from "react";
3
+ import { useTranslation } from "react-i18next";
4
+ import { useMediaLibraryContext } from "../MediaLibraryContext.js";
5
+ import VideoRecorder from "../../VideoRecorder/VideoRecorder.js";
6
+ const Video = () => {
7
+ const {
8
+ appCode,
9
+ setResult,
10
+ setPreSuccess
11
+ } = useMediaLibraryContext(), {
12
+ t
13
+ } = useTranslation(), ref = useRef(null), handleRecordUpdated = (recordUrl) => {
14
+ recordUrl ? (setResult(recordUrl), setPreSuccess(() => ref.current.save)) : setResult();
15
+ }, handleError = (err) => {
16
+ console.error(err);
17
+ };
18
+ return /* @__PURE__ */ jsx(VideoRecorder, { ref, appCode, caption: t("bbm.video.caption"), onRecordUpdated: handleRecordUpdated, onError: handleError, hideSaveAction: !0 });
19
+ };
20
+ export {
21
+ Video
22
+ };
@@ -1 +1,15 @@
1
- import{useMediaLibraryContext}from"../MediaLibraryContext.js";import VideoEmbed from"../../VideoEmbed/VideoEmbed.js";import{jsx}from"react/jsx-runtime";var VideoEmbedder=()=>{let{switchType,setResult}=useMediaLibraryContext();return jsx(VideoEmbed,{switchType,onSuccess:ressource=>{setResult(ressource)}})};export{VideoEmbedder};
1
+ import { jsx } from "react/jsx-runtime";
2
+ import VideoEmbed from "../../VideoEmbed/VideoEmbed.js";
3
+ import { useMediaLibraryContext } from "../MediaLibraryContext.js";
4
+ const VideoEmbedder = () => {
5
+ const {
6
+ switchType,
7
+ setResult
8
+ } = useMediaLibraryContext();
9
+ return /* @__PURE__ */ jsx(VideoEmbed, { switchType, onSuccess: (ressource) => {
10
+ setResult(ressource);
11
+ } });
12
+ };
13
+ export {
14
+ VideoEmbedder
15
+ };
@@ -1 +1,31 @@
1
- import{useMediaLibraryContext}from"../MediaLibraryContext.js";import Workspace$1 from"../../Workspace/Workspace.js";import{jsx}from"react/jsx-runtime";var Workspace=()=>{let{type,setResultCounter,setResult,multiple,visibility}=useMediaLibraryContext();function getDocumentRoleFilter(){switch(type){case`image`:return`img`;case`audio`:return`audio`;case`video`:return`video`;default:return null}}function handleSelect(result){setResultCounter(result.length),result.length?setResult(result):setResult()}return jsx(Workspace$1,{roles:getDocumentRoleFilter(),onSelect:handleSelect,multiple,className:`border rounded overflow-y-auto`,defaultFolder:visibility,showPublicFolder:visibility===`public`})};export{Workspace};
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { useMediaLibraryContext } from "../MediaLibraryContext.js";
3
+ import Workspace$1 from "../../Workspace/Workspace.js";
4
+ const Workspace = () => {
5
+ const {
6
+ type,
7
+ setResultCounter,
8
+ setResult,
9
+ multiple,
10
+ visibility
11
+ } = useMediaLibraryContext();
12
+ function getDocumentRoleFilter() {
13
+ switch (type) {
14
+ case "image":
15
+ return "img";
16
+ case "audio":
17
+ return "audio";
18
+ case "video":
19
+ return "video";
20
+ default:
21
+ return null;
22
+ }
23
+ }
24
+ function handleSelect(result) {
25
+ setResultCounter(result.length), result.length ? setResult(result) : setResult();
26
+ }
27
+ return /* @__PURE__ */ jsx(Workspace$1, { roles: getDocumentRoleFilter(), onSelect: handleSelect, multiple, className: "border rounded overflow-y-auto", defaultFolder: visibility, showPublicFolder: visibility === "public" });
28
+ };
29
+ export {
30
+ Workspace
31
+ };
@@ -1 +1,21 @@
1
- import{Audio}from"./Audio.js";import{ExternalLink}from"./ExternalLink.js";import{Iframe}from"./Iframe.js";import{InternalLink}from"./InternalLink.js";import{Upload}from"./Upload.js";import{Video}from"./Video.js";import{VideoEmbedder}from"./VideoEmbedder.js";import{Workspace}from"./Workspace.js";var InnerTabs={Audio,Video,Upload,ExternalLink,Workspace,InternalLink,Iframe,VideoEmbedder};export{InnerTabs};
1
+ import { Audio } from "./Audio.js";
2
+ import { ExternalLink } from "./ExternalLink.js";
3
+ import { Iframe } from "./Iframe.js";
4
+ import { InternalLink } from "./InternalLink.js";
5
+ import { Upload } from "./Upload.js";
6
+ import { Video } from "./Video.js";
7
+ import { VideoEmbedder } from "./VideoEmbedder.js";
8
+ import { Workspace } from "./Workspace.js";
9
+ const InnerTabs = {
10
+ Audio,
11
+ Video,
12
+ Upload,
13
+ ExternalLink,
14
+ Workspace,
15
+ InternalLink,
16
+ Iframe,
17
+ VideoEmbedder
18
+ };
19
+ export {
20
+ InnerTabs
21
+ };
@@ -1 +1,75 @@
1
- import SvgIconClose from"../../icons/components/IconClose.js";import SvgIconReset from"../../icons/components/IconReset.js";import SvgIconSuccessOutline from"../../icons/components/IconSuccessOutline.js";import SvgIconWand from"../../icons/components/IconWand.js";import Loading from"../../../components/Loading/Loading.js";import Button from"../../../components/Button/Button.js";import IconButton from"../../../components/Button/IconButton.js";import Tooltip from"../../../components/Tooltip/Tooltip.js";import Image from"../../../components/Image/Image.js";import Card from"../../../components/Card/Card.js";import{jsx,jsxs}from"react/jsx-runtime";import{useTranslation}from"react-i18next";import commonPlaceholder from"@edifice.io/bootstrap/dist/images/common/image-placeholder.png";var UploadCard=({item,status=`idle`,isClickable=!1,isSelectable=!1,onDelete,onEdit,onRetry})=>{let{t}=useTranslation(),{src,name,info}=item,isIdle=status===`idle`,isLoading=status===`loading`,isSuccess=status===`success`,isTypeImage=info?.type.startsWith(`image`),defaultMapping={text:``,context:null,image:jsx(`img`,{src:commonPlaceholder,alt:``,width:`48`,height:`48`})},mapping={error:{text:jsx(`strong`,{children:jsx(`small`,{className:`text-danger caption`,children:t(`tiptap.upload.error`)})}),context:jsx(Button,{leftIcon:jsx(SvgIconReset,{}),variant:`ghost`,color:`tertiary`,onClick:onRetry,children:t(`tiptap.upload.retry`)}),image:jsx(Image,{alt:``,src:`${commonPlaceholder}/common/image-status-error.svg`,objectFit:`cover`})},idle:defaultMapping,loading:{text:``,context:jsx(Tooltip,{message:t(`tiptap.tooltip.upload.loading`),placement:`top`,children:jsx(Loading,{isLoading:!0,loadingPosition:`left`,className:`text-secondary`})}),image:defaultMapping.image},warning:defaultMapping,success:{text:jsxs(`em`,{children:[info?.type,` `,info?.weight&&`- ${info.weight}`]}),context:jsx(Tooltip,{message:t(`tiptap.tooltip.upload.loaded`),placement:`top`,children:jsx(SvgIconSuccessOutline,{className:`text-success`})}),image:jsx(Image,{alt:``,src:src??``,width:`48`,objectFit:`cover`,className:`rounded`,style:{aspectRatio:1/1}})},unknown:defaultMapping};return jsx(Card,{isClickable,isSelectable,className:`card-upload`,children:jsxs(Card.Body,{children:[jsx(`div`,{className:`card-image`,children:mapping[status].image}),jsxs(`div`,{className:`text-truncate`,children:[jsx(Card.Text,{children:name}),jsx(Card.Text,{className:`caption`,children:mapping[status].text})]}),!isIdle&&jsx(`div`,{className:`ms-auto`,children:jsxs(`div`,{className:`d-flex align-items-center gap-12`,children:[mapping[status].context,!isIdle&&jsx(`div`,{className:`vr`}),isTypeImage&&jsx(Tooltip,{message:t(`tiptap.tooltip.upload.edit`),placement:`top`,children:jsx(IconButton,{icon:jsx(SvgIconWand,{}),variant:`ghost`,"aria-label":t(`tiptap.tooltip.upload.loading`),disabled:isLoading||!isSuccess,onClick:onEdit,color:`secondary`})}),jsx(Tooltip,{message:t(`tiptap.tooltip.upload.delete`),placement:`top`,children:jsx(IconButton,{icon:jsx(SvgIconClose,{}),variant:`ghost`,"aria-label":t(`tiptap.tooltip.upload.delete`),color:`tertiary`,onClick:onDelete})})]})})]})})};export{UploadCard as default};
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import commonPlaceholder from "@edifice.io/bootstrap/dist/images/common/image-placeholder.png";
3
+ import { useTranslation } from "react-i18next";
4
+ import SvgIconClose from "../../icons/components/IconClose.js";
5
+ import SvgIconReset from "../../icons/components/IconReset.js";
6
+ import SvgIconSuccessOutline from "../../icons/components/IconSuccessOutline.js";
7
+ import SvgIconWand from "../../icons/components/IconWand.js";
8
+ import Tooltip from "../../../components/Tooltip/Tooltip.js";
9
+ import Loading from "../../../components/Loading/Loading.js";
10
+ import Button from "../../../components/Button/Button.js";
11
+ import Card from "../../../components/Card/Card.js";
12
+ import IconButton from "../../../components/Button/IconButton.js";
13
+ import Image from "../../../components/Image/Image.js";
14
+ const UploadCard = ({
15
+ item,
16
+ status = "idle",
17
+ isClickable = !1,
18
+ isSelectable = !1,
19
+ onDelete,
20
+ onEdit,
21
+ onRetry
22
+ }) => {
23
+ const {
24
+ t
25
+ } = useTranslation(), {
26
+ src,
27
+ name,
28
+ info
29
+ } = item, isIdle = status === "idle", isLoading = status === "loading", isSuccess = status === "success", isTypeImage = info == null ? void 0 : info.type.startsWith("image"), defaultMapping = {
30
+ text: "",
31
+ context: null,
32
+ image: /* @__PURE__ */ jsx("img", { src: commonPlaceholder, alt: "", width: "48", height: "48" })
33
+ }, mapping = {
34
+ error: {
35
+ text: /* @__PURE__ */ jsx("strong", { children: /* @__PURE__ */ jsx("small", { className: "text-danger caption", children: t("tiptap.upload.error") }) }),
36
+ context: /* @__PURE__ */ jsx(Button, { leftIcon: /* @__PURE__ */ jsx(SvgIconReset, {}), variant: "ghost", color: "tertiary", onClick: onRetry, children: t("tiptap.upload.retry") }),
37
+ image: /* @__PURE__ */ jsx(Image, { alt: "", src: `${commonPlaceholder}/common/image-status-error.svg`, objectFit: "cover" })
38
+ },
39
+ idle: defaultMapping,
40
+ loading: {
41
+ text: "",
42
+ context: /* @__PURE__ */ jsx(Tooltip, { message: t("tiptap.tooltip.upload.loading"), placement: "top", children: /* @__PURE__ */ jsx(Loading, { isLoading: !0, loadingPosition: "left", className: "text-secondary" }) }),
43
+ image: defaultMapping.image
44
+ },
45
+ warning: defaultMapping,
46
+ success: {
47
+ text: /* @__PURE__ */ jsxs("em", { children: [
48
+ info == null ? void 0 : info.type,
49
+ " ",
50
+ (info == null ? void 0 : info.weight) && `- ${info.weight}`
51
+ ] }),
52
+ context: /* @__PURE__ */ jsx(Tooltip, { message: t("tiptap.tooltip.upload.loaded"), placement: "top", children: /* @__PURE__ */ jsx(SvgIconSuccessOutline, { className: "text-success" }) }),
53
+ image: /* @__PURE__ */ jsx(Image, { alt: "", src: src ?? "", width: "48", objectFit: "cover", className: "rounded", style: {
54
+ aspectRatio: 1 / 1
55
+ } })
56
+ },
57
+ unknown: defaultMapping
58
+ }, canEditItem = () => isTypeImage && /* @__PURE__ */ jsx(Tooltip, { message: t("tiptap.tooltip.upload.edit"), placement: "top", children: /* @__PURE__ */ jsx(IconButton, { icon: /* @__PURE__ */ jsx(SvgIconWand, {}), variant: "ghost", "aria-label": t("tiptap.tooltip.upload.loading"), disabled: isLoading || !isSuccess, onClick: onEdit, color: "secondary" }) });
59
+ return /* @__PURE__ */ jsx(Card, { isClickable, isSelectable, className: "card-upload", children: /* @__PURE__ */ jsxs(Card.Body, { children: [
60
+ /* @__PURE__ */ jsx("div", { className: "card-image", children: mapping[status].image }),
61
+ /* @__PURE__ */ jsxs("div", { className: "text-truncate", children: [
62
+ /* @__PURE__ */ jsx(Card.Text, { children: name }),
63
+ /* @__PURE__ */ jsx(Card.Text, { className: "caption", children: mapping[status].text })
64
+ ] }),
65
+ !isIdle && /* @__PURE__ */ jsx("div", { className: "ms-auto", children: /* @__PURE__ */ jsxs("div", { className: "d-flex align-items-center gap-12", children: [
66
+ mapping[status].context,
67
+ !isIdle && /* @__PURE__ */ jsx("div", { className: "vr" }),
68
+ canEditItem(),
69
+ /* @__PURE__ */ jsx(Tooltip, { message: t("tiptap.tooltip.upload.delete"), placement: "top", children: /* @__PURE__ */ jsx(IconButton, { icon: /* @__PURE__ */ jsx(SvgIconClose, {}), variant: "ghost", "aria-label": t("tiptap.tooltip.upload.delete"), color: "tertiary", onClick: onDelete }) })
70
+ ] }) })
71
+ ] }) });
72
+ };
73
+ export {
74
+ UploadCard as default
75
+ };
@@ -1 +1,56 @@
1
- import UploadCard from"../UploadCard/UploadCard.js";import useUploadFiles from"../../../hooks/useUploadFiles/useUploadFiles.js";import LoadingScreen from"../../../components/LoadingScreen/LoadingScreen.js";import{customSize}from"@edifice.io/utilities";import{Suspense,lazy,useEffect,useRef}from"react";import{Fragment as Fragment$1,jsx,jsxs}from"react/jsx-runtime";var ImageEditor=lazy(async()=>await import(`../ImageEditor/components/ImageEditor.js`)),UploadFiles=({onFilesChange,visibility=`protected`})=>{let{files,uploadedFiles,getUploadStatus,uploadFile,removeFile,updateImage,editingImage,setEditingImage,getUrl}=useUploadFiles({handleOnChange:onFilesChange,application:`media-library`,visibility}),fileBlobs=useRef(new Map);useEffect(()=>{let blobs=fileBlobs.current;return()=>{blobs.forEach(url=>URL.revokeObjectURL(url)),blobs.clear()}},[]);let renderItem=file=>{let src=file.type.startsWith(`image`)?fileBlobs.current.get(file.name):``;return fileBlobs.current.has(file.name)||fileBlobs.current.set(file.name,URL.createObjectURL(file)),{name:file.name,info:{type:file.type,weight:customSize(file.size||0,1)},src}},handleRemoveFile=file=>{let blobUrl=fileBlobs.current.get(file.name);blobUrl&&(URL.revokeObjectURL(blobUrl),fileBlobs.current.delete(file.name)),removeFile(file)};return jsxs(Fragment$1,{children:[files.map(file=>{let resource=uploadedFiles.find(uploadedFile=>uploadedFile.name===file.name);return jsx(UploadCard,{status:getUploadStatus(file),item:renderItem(file),onEdit:()=>setEditingImage(resource),onRetry:()=>uploadFile(file),onDelete:()=>handleRemoveFile(file)},file.name)}),editingImage&&jsx(Suspense,{fallback:jsx(LoadingScreen,{position:!1}),children:jsx(ImageEditor,{altText:editingImage.alt,legend:editingImage.title,image:getUrl(editingImage,!0),isOpen:!!editingImage,onCancel:()=>setEditingImage(void 0),onSave:updateImage,onError:console.error})})]})};export{UploadFiles as default};
1
+ import { jsxs, Fragment, jsx } from "react/jsx-runtime";
2
+ import { customSize } from "@edifice.io/utilities";
3
+ import { useRef, useEffect, Suspense, lazy } from "react";
4
+ import useUploadFiles from "../../../hooks/useUploadFiles/useUploadFiles.js";
5
+ import UploadCard from "../UploadCard/UploadCard.js";
6
+ import LoadingScreen from "../../../components/LoadingScreen/LoadingScreen.js";
7
+ const ImageEditor = /* @__PURE__ */ lazy(async () => await import("../ImageEditor/components/ImageEditor.js")), UploadFiles = ({
8
+ onFilesChange,
9
+ visibility = "protected"
10
+ }) => {
11
+ const {
12
+ files,
13
+ uploadedFiles,
14
+ getUploadStatus,
15
+ uploadFile,
16
+ removeFile,
17
+ updateImage,
18
+ editingImage,
19
+ setEditingImage,
20
+ getUrl
21
+ } = useUploadFiles({
22
+ handleOnChange: onFilesChange,
23
+ application: "media-library",
24
+ visibility
25
+ }), fileBlobs = useRef(/* @__PURE__ */ new Map());
26
+ useEffect(() => {
27
+ const blobs = fileBlobs.current;
28
+ return () => {
29
+ blobs.forEach((url) => URL.revokeObjectURL(url)), blobs.clear();
30
+ };
31
+ }, []);
32
+ const renderItem = (file) => {
33
+ const src = file.type.startsWith("image") ? fileBlobs.current.get(file.name) : "";
34
+ return fileBlobs.current.has(file.name) || fileBlobs.current.set(file.name, URL.createObjectURL(file)), {
35
+ name: file.name,
36
+ info: {
37
+ type: file.type,
38
+ weight: customSize(file.size || 0, 1)
39
+ },
40
+ src
41
+ };
42
+ }, handleRemoveFile = (file) => {
43
+ const blobUrl = fileBlobs.current.get(file.name);
44
+ blobUrl && (URL.revokeObjectURL(blobUrl), fileBlobs.current.delete(file.name)), removeFile(file);
45
+ };
46
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
47
+ files.map((file) => {
48
+ const resource = uploadedFiles.find((uploadedFile) => uploadedFile.name === file.name);
49
+ return /* @__PURE__ */ jsx(UploadCard, { status: getUploadStatus(file), item: renderItem(file), onEdit: () => setEditingImage(resource), onRetry: () => uploadFile(file), onDelete: () => handleRemoveFile(file) }, file.name);
50
+ }),
51
+ editingImage && /* @__PURE__ */ jsx(Suspense, { fallback: /* @__PURE__ */ jsx(LoadingScreen, { position: !1 }), children: /* @__PURE__ */ jsx(ImageEditor, { altText: editingImage.alt, legend: editingImage.title, image: getUrl(editingImage, !0), isOpen: !!editingImage, onCancel: () => setEditingImage(void 0), onSave: updateImage, onError: console.error }) })
52
+ ] });
53
+ };
54
+ export {
55
+ UploadFiles as default
56
+ };
@@ -1 +1,76 @@
1
- import SvgIconArrowRight from"../../icons/components/IconArrowRight.js";import SvgIconGlobe from"../../icons/components/IconGlobe.js";import Button from"../../../components/Button/Button.js";import Image from"../../../components/Image/Image.js";import Input from"../../../components/Input/Input.js";import FormControl from"../../../components/Form/FormControl.js";import EmptyScreen from"../../../components/EmptyScreen/EmptyScreen.js";import{useEffect,useId,useState}from"react";import{Fragment as Fragment$1,jsx,jsxs}from"react/jsx-runtime";import{useTranslation}from"react-i18next";import{odeServices}from"@edifice.io/client";import{useDebounce}from"@uidotdev/usehooks";import illuError from"@edifice.io/bootstrap/dist/images/emptyscreen/illu-error.svg";var VideoEmbed=({switchType,onSuccess})=>{let{t}=useTranslation(),[url,setUrl]=useState(),[embedVideo,setEmbedVideo]=useState(),[embedder,setEmbedder]=useState(void 0),[whiteListProvider,setWhiteListProvider]=useState(),debounceChangeUrl=useDebounce(url||``,300),formControlId=useId();useEffect(()=>{initWhiteListProvider()},[]),useEffect(()=>{if(whiteListProvider&&debounceChangeUrl){let embedderFound=odeServices.embedder().getProviderFromUrl(whiteListProvider,debounceChangeUrl);if(embedderFound){setEmbedder(embedderFound);let embedVideo=odeServices.embedder().getEmbedCodeForProvider(embedderFound,debounceChangeUrl);setEmbedVideo(embedVideo),onSuccess(embedVideo)}else setEmbedder(void 0),onSuccess()}},[debounceChangeUrl,whiteListProvider]);let initWhiteListProvider=async()=>{setWhiteListProvider(await Promise.all([odeServices.embedder().getDefault(),odeServices.embedder().getCustom()]).then(results=>results.flat()))};function handleUrlChange(event){let url=event.currentTarget.value;setUrl(url),onSuccess(url?.length?url:void 0)}function handleSwitchToEmbedderClick(){switchType?.(`embedder`)}return jsxs(`div`,{className:`d-flex flex-column flex-fill video-embed`,children:[jsxs(`div`,{className:`mb-8 d-flex`,children:[jsx(SvgIconGlobe,{className:`me-8`}),t(`bbm.video.url.title`)]}),jsx(FormControl,{id:formControlId,children:jsx(Input,{size:`md`,type:`text`,placeholder:t(`bbm.video.url.placeholder`),onChange:handleUrlChange})}),jsx(Fragment$1,{children:debounceChangeUrl?embedder?jsxs(`div`,{className:`mx-auto mt-16`,children:[jsxs(`div`,{className:`video-embed-provider d-flex align-items-center`,children:[jsx(Image,{src:embedder.logo,alt:`Logo `+embedder.displayName,className:`video-embed-provider-logo`}),embedder.displayName]}),embedVideo&&jsx(`div`,{className:`video-embed-preview mt-12`,dangerouslySetInnerHTML:{__html:embedVideo}})]}):jsxs(`div`,{className:`d-flex flex-column align-items-center m-16`,children:[jsx(EmptyScreen,{imageSrc:illuError,title:t(`bbm.video.previewError.title`),text:t(`bbm.video.previewError.text`)}),switchType&&jsxs(Button,{variant:`ghost`,color:`primary`,onClick:handleSwitchToEmbedderClick,className:`align-items-start mt-16`,children:[t(`bbm.video.useEmbedCode`),` `,jsx(SvgIconArrowRight,{})]})]}):switchType&&jsx(`div`,{className:`d-flex my-16 align-items-start`,children:jsxs(Button,{variant:`ghost`,color:`primary`,onClick:handleSwitchToEmbedderClick,className:`align-items-start`,children:[t(`bbm.video.useEmbedCode`),` `,jsx(SvgIconArrowRight,{})]})})})]})};export{VideoEmbed as default};
1
+ import { jsxs, jsx, Fragment } from "react/jsx-runtime";
2
+ import { useState, useId, useEffect } from "react";
3
+ import { odeServices } from "@edifice.io/client";
4
+ import { useDebounce } from "@uidotdev/usehooks";
5
+ import { useTranslation } from "react-i18next";
6
+ import SvgIconArrowRight from "../../icons/components/IconArrowRight.js";
7
+ import SvgIconGlobe from "../../icons/components/IconGlobe.js";
8
+ import illuError from "@edifice.io/bootstrap/dist/images/emptyscreen/illu-error.svg";
9
+ import FormControl from "../../../components/Form/FormControl.js";
10
+ import Input from "../../../components/Input/Input.js";
11
+ import Image from "../../../components/Image/Image.js";
12
+ import EmptyScreen from "../../../components/EmptyScreen/EmptyScreen.js";
13
+ import Button from "../../../components/Button/Button.js";
14
+ const VideoEmbed = ({
15
+ switchType,
16
+ onSuccess
17
+ }) => {
18
+ const {
19
+ t
20
+ } = useTranslation(), [url, setUrl] = useState(), [embedVideo, setEmbedVideo] = useState(), [embedder, setEmbedder] = useState(void 0), [whiteListProvider, setWhiteListProvider] = useState(), debounceChangeUrl = useDebounce(url || "", 300), formControlId = useId();
21
+ useEffect(() => {
22
+ initWhiteListProvider();
23
+ }, []), useEffect(() => {
24
+ if (whiteListProvider && debounceChangeUrl) {
25
+ const embedderFound = odeServices.embedder().getProviderFromUrl(whiteListProvider, debounceChangeUrl);
26
+ if (embedderFound) {
27
+ setEmbedder(embedderFound);
28
+ const embedVideo2 = odeServices.embedder().getEmbedCodeForProvider(embedderFound, debounceChangeUrl);
29
+ setEmbedVideo(embedVideo2), onSuccess(embedVideo2);
30
+ } else
31
+ setEmbedder(void 0), onSuccess();
32
+ }
33
+ }, [debounceChangeUrl, whiteListProvider]);
34
+ const initWhiteListProvider = async () => {
35
+ const whiteListProviderResponse = await Promise.all([odeServices.embedder().getDefault(), odeServices.embedder().getCustom()]).then((results) => results.flat());
36
+ setWhiteListProvider(whiteListProviderResponse);
37
+ };
38
+ function handleUrlChange(event) {
39
+ const url2 = event.currentTarget.value;
40
+ setUrl(url2), onSuccess(url2 != null && url2.length ? url2 : void 0);
41
+ }
42
+ function handleSwitchToEmbedderClick() {
43
+ switchType == null || switchType("embedder");
44
+ }
45
+ const renderContent = () => debounceChangeUrl ? embedder ? /* @__PURE__ */ jsxs("div", { className: "mx-auto mt-16", children: [
46
+ /* @__PURE__ */ jsxs("div", { className: "video-embed-provider d-flex align-items-center", children: [
47
+ /* @__PURE__ */ jsx(Image, { src: embedder.logo, alt: "Logo " + embedder.displayName, className: "video-embed-provider-logo" }),
48
+ embedder.displayName
49
+ ] }),
50
+ embedVideo && /* @__PURE__ */ jsx("div", { className: "video-embed-preview mt-12", dangerouslySetInnerHTML: {
51
+ __html: embedVideo
52
+ } })
53
+ ] }) : /* @__PURE__ */ jsxs("div", { className: "d-flex flex-column align-items-center m-16", children: [
54
+ /* @__PURE__ */ jsx(EmptyScreen, { imageSrc: illuError, title: t("bbm.video.previewError.title"), text: t("bbm.video.previewError.text") }),
55
+ switchType && /* @__PURE__ */ jsxs(Button, { variant: "ghost", color: "primary", onClick: handleSwitchToEmbedderClick, className: "align-items-start mt-16", children: [
56
+ t("bbm.video.useEmbedCode"),
57
+ " ",
58
+ /* @__PURE__ */ jsx(SvgIconArrowRight, {})
59
+ ] })
60
+ ] }) : switchType && /* @__PURE__ */ jsx("div", { className: "d-flex my-16 align-items-start", children: /* @__PURE__ */ jsxs(Button, { variant: "ghost", color: "primary", onClick: handleSwitchToEmbedderClick, className: "align-items-start", children: [
61
+ t("bbm.video.useEmbedCode"),
62
+ " ",
63
+ /* @__PURE__ */ jsx(SvgIconArrowRight, {})
64
+ ] }) });
65
+ return /* @__PURE__ */ jsxs("div", { className: "d-flex flex-column flex-fill video-embed", children: [
66
+ /* @__PURE__ */ jsxs("div", { className: "mb-8 d-flex", children: [
67
+ /* @__PURE__ */ jsx(SvgIconGlobe, { className: "me-8" }),
68
+ t("bbm.video.url.title")
69
+ ] }),
70
+ /* @__PURE__ */ jsx(FormControl, { id: formControlId, children: /* @__PURE__ */ jsx(Input, { size: "md", type: "text", placeholder: t("bbm.video.url.placeholder"), onChange: handleUrlChange }) }),
71
+ /* @__PURE__ */ jsx(Fragment, { children: renderContent() })
72
+ ] });
73
+ };
74
+ export {
75
+ VideoEmbed as default
76
+ };
@@ -1 +1,156 @@
1
- import SvgIconRecordVideo from"../../icons/components/IconRecordVideo.js";import SvgIconRecord from"../../icons/components/IconRecord.js";import{useCameras}from"./useCameras.js";import{VideoRecorderToolbar}from"./VideoRecorderToolbar.js";import useUpload from"../../../hooks/useUpload/useUpload.js";import Label from"../../../components/Label/Label.js";import FormControl from"../../../components/Form/FormControl.js";import LoadingScreen from"../../../components/LoadingScreen/LoadingScreen.js";import Select from"../../../components/Select/Select.js";import{convertMsToMS,getBestSupportedMimeType}from"@edifice.io/utilities";import{forwardRef,useCallback,useEffect,useImperativeHandle,useRef,useState}from"react";import{Fragment as Fragment$1,jsx,jsxs}from"react/jsx-runtime";import{useTranslation}from"react-i18next";import{odeServices}from"@edifice.io/client";var VideoRecorder=forwardRef(({appCode,caption,onSuccess,onError,onRecordUpdated,hideSaveAction=!1},ref)=>{let{inputDevices,setPreferedDevice,restartStream,stream}=useCameras(),[maxDuration,setMaxDuration]=useState(18e4),[recording,setRecording]=useState(!1),[recorded,setRecorded]=useState(!1),[playing,setPlaying]=useState(!1),[saving,setSaving]=useState(!1),[saved,setSaved]=useState(!1),[mimeType,setMimeType]=useState(``),[recordedChunks,setRecordedChunks]=useState([]),[recordedVideo,setRecordedVideo]=useState(),[recordedTime,setRecordedTime]=useState(0),[playedTime,setPlayedTime]=useState(0),videoRef=useRef(null),recorderRef=useRef(null),{uploadBlob}=useUpload(void 0,appCode);useImperativeHandle(ref,()=>({save:handleSave}));let{t}=useTranslation();useEffect(()=>{initMaxDuration()},[]);async function initMaxDuration(){try{setMaxDuration((await odeServices.video().getVideoConf()).maxDuration*60*1e3)}catch{setMaxDuration(180*1e3)}}useEffect(()=>{try{videoRef.current&&(videoRef.current.src&&(window.URL.revokeObjectURL(videoRef.current.src),videoRef.current.src=``),videoRef.current.srcObject instanceof MediaStream&&(videoRef.current.srcObject=null),stream&&(videoRef.current.srcObject=stream,videoRef.current.autoplay=!0,videoRef.current.volume=1,videoRef.current.muted=!0,videoRef.current.load()))}catch(err){console.error(err)}},[stream]),useEffect(()=>{if(recordedChunks.length&&!recording&&videoRef.current){let finalVideo=new Blob(recordedChunks,{type:mimeType});setRecordedVideo(finalVideo),onRecordUpdated&&onRecordUpdated(window.URL.createObjectURL(finalVideo)),videoRef.current.autoplay=!1,videoRef.current.srcObject=null,videoRef.current.src=window.URL.createObjectURL(finalVideo)}},[recording,recordedChunks]),useEffect(()=>{if(recording){let startedAt=Date.now(),timer=window.setInterval(()=>setRecordedTime(Date.now()-startedAt),500);return()=>{window.clearInterval(timer)}}},[recording]),useEffect(()=>{if(playing){let timer=window.setInterval(()=>setPlayedTime(prev=>prev+500),500);return()=>{window.clearInterval(timer)}}},[playing]);let handleRecord=useCallback(()=>{setRecording(!0),videoRef&&videoRef.current&&(videoRef.current.muted=!0);let mimeType=getBestSupportedMimeType();setMimeType(mimeType),stream&&(recorderRef.current=new MediaRecorder(stream,{mimeType}),recorderRef.current.ondataavailable=({data})=>{data.size>0&&setRecordedChunks(prev=>[...prev,data])},recorderRef.current.onerror=event=>console.error(event),recorderRef.current.start(1e3))},[stream]),handleStop=useCallback(()=>{setRecording(!1),setRecorded(!0),recorderRef.current?.state===`recording`&&(recorderRef.current.requestData(),recorderRef.current.stop())},[recorderRef]),handlePlayPause=useCallback(()=>{videoRef&&videoRef.current&&(videoRef.current.muted=!1),playing?(videoRef?.current?.pause(),setPlaying(!1)):(videoRef?.current?.play(),setPlaying(!0))},[playing]),handleReset=()=>{setRecorded(!1),setRecording(!1),setPlaying(!1),setSaved(!1),setRecordedTime(0),setRecordedChunks([]),setRecordedVideo(void 0),restartStream(),onRecordUpdated&&onRecordUpdated()},handleSave=async()=>{if(videoRef?.current?.pause(),setSaving(!0),!recordedVideo){console.error(`Error while saving video: recorded video is undefined.`);return}let resVideo=await uploadBlob(recordedVideo,{duration:recordedTime});if(resVideo!=null)return onSuccess?.([resVideo]),setSaving(!1),setSaved(!0),[resVideo];onError(`Error while uploading video`),setSaving(!1),setSaved(!0)};return useEffect(()=>{recordedTime>=maxDuration&&handleStop()},[recordedTime,handleStop]),jsxs(`div`,{className:`video-recorder d-flex flex-fill flex-column align-items-center pb-8`,children:[jsx(`div`,{className:`video-recorder-caption d-none d-md-block`,children:caption}),inputDevices.length>1&&jsx(`div`,{className:`video-recorder-devices mb-12`,children:jsxs(FormControl,{id:`selectInputDevice`,children:[jsx(Label,{className:`d-none d-md-block`,children:t(`bbm.video.record.select.devices.label`)}),jsx(Select,{placeholderOption:t(`bbm.video.record.select.devices.placeholder`),options:inputDevices.map(videoInputDevice=>videoInputDevice.label),onValueChange:option=>{let selectedDevice=inputDevices.find(inputDevice=>inputDevice.label===option);recorderRef.current?.state===`recording`&&(recorderRef.current.requestData(),recorderRef.current.stop()),setPreferedDevice(selectedDevice)}})]})}),jsxs(`div`,{className:`video-recorder-video-container position-relative align-self-stretch`,children:[jsx(`video`,{ref:videoRef,playsInline:!0,autoPlay:!0,controls:!1,muted:!0,onEnded:()=>{setPlaying(!1),setPlayedTime(0),videoRef.current&&(videoRef.current.currentTime=0)},className:`rounded`,children:jsx(`track`,{default:!0,kind:`captions`,srcLang:`fr`,src:``})}),(recording||recorded)&&jsxs(`div`,{className:`video-recorder-time d-flex align-items-center font-monospace fs-6 text-bg-dark rounded`,children:[recording&&jsxs(Fragment$1,{children:[jsx(SvgIconRecord,{width:12,height:12,color:`red`,className:`me-4`}),jsxs(`span`,{children:[convertMsToMS(recordedTime),`/`,convertMsToMS(maxDuration)]})]}),recorded&&jsxs(Fragment$1,{children:[jsx(SvgIconRecordVideo,{width:14,height:14,className:`me-4`}),jsxs(`span`,{children:[convertMsToMS(playedTime),`/`,convertMsToMS(recordedTime)]})]})]}),stream&&jsx(VideoRecorderToolbar,{playing,recording,recorded,saving,saved,hideSaveAction,handleRecord,handleStop,handlePlayPause,handleReset,handleSave})]}),saving&&jsx(LoadingScreen,{position:!1,caption:t(`bbm.video.save.loader.caption`)})]})});export{VideoRecorder as default};
1
+ import { jsxs, jsx, Fragment } from "react/jsx-runtime";
2
+ import { forwardRef, useState, useRef, useImperativeHandle, useEffect, useCallback } from "react";
3
+ import { odeServices } from "@edifice.io/client";
4
+ import { getBestSupportedMimeType, convertMsToMS } from "@edifice.io/utilities";
5
+ import { useTranslation } from "react-i18next";
6
+ import SvgIconRecordVideo from "../../icons/components/IconRecordVideo.js";
7
+ import SvgIconRecord from "../../icons/components/IconRecord.js";
8
+ import { useCameras } from "./useCameras.js";
9
+ import { VideoRecorderToolbar } from "./VideoRecorderToolbar.js";
10
+ import useUpload from "../../../hooks/useUpload/useUpload.js";
11
+ import FormControl from "../../../components/Form/FormControl.js";
12
+ import Label from "../../../components/Label/Label.js";
13
+ import Select from "../../../components/Select/Select.js";
14
+ import LoadingScreen from "../../../components/LoadingScreen/LoadingScreen.js";
15
+ const VideoRecorder = /* @__PURE__ */ forwardRef(({
16
+ appCode,
17
+ caption,
18
+ onSuccess,
19
+ onError,
20
+ onRecordUpdated,
21
+ hideSaveAction = !1
22
+ }, ref) => {
23
+ const {
24
+ inputDevices,
25
+ setPreferedDevice,
26
+ restartStream,
27
+ stream
28
+ } = useCameras(), [maxDuration, setMaxDuration] = useState(18e4), [recording, setRecording] = useState(!1), [recorded, setRecorded] = useState(!1), [playing, setPlaying] = useState(!1), [saving, setSaving] = useState(!1), [saved, setSaved] = useState(!1), [mimeType, setMimeType] = useState(""), [recordedChunks, setRecordedChunks] = useState([]), [recordedVideo, setRecordedVideo] = useState(), [recordedTime, setRecordedTime] = useState(0), [playedTime, setPlayedTime] = useState(0), videoRef = useRef(null), recorderRef = useRef(null), {
29
+ uploadBlob
30
+ } = useUpload(void 0, appCode);
31
+ useImperativeHandle(ref, () => ({
32
+ save: handleSave
33
+ }));
34
+ const {
35
+ t
36
+ } = useTranslation();
37
+ useEffect(() => {
38
+ initMaxDuration();
39
+ }, []);
40
+ async function initMaxDuration() {
41
+ try {
42
+ const videoConfResponse = await odeServices.video().getVideoConf();
43
+ setMaxDuration(videoConfResponse.maxDuration * 60 * 1e3);
44
+ } catch {
45
+ setMaxDuration(3 * 60 * 1e3);
46
+ }
47
+ }
48
+ useEffect(() => {
49
+ try {
50
+ videoRef.current && (videoRef.current.src && (window.URL.revokeObjectURL(videoRef.current.src), videoRef.current.src = ""), videoRef.current.srcObject instanceof MediaStream && (videoRef.current.srcObject = null), stream && (videoRef.current.srcObject = stream, videoRef.current.autoplay = !0, videoRef.current.volume = 1, videoRef.current.muted = !0, videoRef.current.load()));
51
+ } catch (err) {
52
+ console.error(err);
53
+ }
54
+ }, [stream]), useEffect(() => {
55
+ if (recordedChunks.length && !recording && videoRef.current) {
56
+ const finalVideo = new Blob(recordedChunks, {
57
+ type: mimeType
58
+ });
59
+ if (setRecordedVideo(finalVideo), onRecordUpdated) {
60
+ const videoUrl = window.URL.createObjectURL(finalVideo);
61
+ onRecordUpdated(videoUrl);
62
+ }
63
+ videoRef.current.autoplay = !1, videoRef.current.srcObject = null, videoRef.current.src = window.URL.createObjectURL(finalVideo);
64
+ }
65
+ }, [recording, recordedChunks]), useEffect(() => {
66
+ if (recording) {
67
+ const startedAt = Date.now(), timer = window.setInterval(
68
+ // Compute exact elapsed time by diffing the start time.
69
+ () => setRecordedTime(Date.now() - startedAt),
70
+ 500
71
+ );
72
+ return () => {
73
+ window.clearInterval(timer);
74
+ };
75
+ }
76
+ }, [recording]), useEffect(() => {
77
+ if (playing) {
78
+ const timer = window.setInterval(() => setPlayedTime((prev) => prev + 500), 500);
79
+ return () => {
80
+ window.clearInterval(timer);
81
+ };
82
+ }
83
+ }, [playing]);
84
+ const handleRecord = useCallback(() => {
85
+ setRecording(!0), videoRef && videoRef.current && (videoRef.current.muted = !0);
86
+ const mimeType2 = getBestSupportedMimeType();
87
+ setMimeType(mimeType2), stream && (recorderRef.current = new MediaRecorder(stream, {
88
+ mimeType: mimeType2
89
+ }), recorderRef.current.ondataavailable = ({
90
+ data
91
+ }) => {
92
+ data.size > 0 && setRecordedChunks((prev) => [...prev, data]);
93
+ }, recorderRef.current.onerror = (event) => console.error(event), recorderRef.current.start(1e3));
94
+ }, [stream]), handleStop = useCallback(() => {
95
+ var _a;
96
+ setRecording(!1), setRecorded(!0), ((_a = recorderRef.current) == null ? void 0 : _a.state) === "recording" && (recorderRef.current.requestData(), recorderRef.current.stop());
97
+ }, [recorderRef]), handlePlayPause = useCallback(() => {
98
+ var _a, _b;
99
+ videoRef && videoRef.current && (videoRef.current.muted = !1), playing ? ((_b = videoRef == null ? void 0 : videoRef.current) == null || _b.pause(), setPlaying(!1)) : ((_a = videoRef == null ? void 0 : videoRef.current) == null || _a.play(), setPlaying(!0));
100
+ }, [playing]), handleReset = () => {
101
+ setRecorded(!1), setRecording(!1), setPlaying(!1), setSaved(!1), setRecordedTime(0), setRecordedChunks([]), setRecordedVideo(void 0), restartStream(), onRecordUpdated && onRecordUpdated();
102
+ }, handleSave = async () => {
103
+ var _a;
104
+ if ((_a = videoRef == null ? void 0 : videoRef.current) == null || _a.pause(), setSaving(!0), !recordedVideo) {
105
+ console.error("Error while saving video: recorded video is undefined.");
106
+ return;
107
+ }
108
+ const resVideo = await uploadBlob(recordedVideo, {
109
+ duration: recordedTime
110
+ });
111
+ if (resVideo != null)
112
+ return onSuccess == null || onSuccess([resVideo]), setSaving(!1), setSaved(!0), [resVideo];
113
+ onError("Error while uploading video"), setSaving(!1), setSaved(!0);
114
+ }, handleEnded = () => {
115
+ setPlaying(!1), setPlayedTime(0), videoRef.current && (videoRef.current.currentTime = 0);
116
+ }, handleInputDeviceChange = (option) => {
117
+ var _a;
118
+ const selectedDevice = inputDevices.find((inputDevice) => inputDevice.label === option);
119
+ ((_a = recorderRef.current) == null ? void 0 : _a.state) === "recording" && (recorderRef.current.requestData(), recorderRef.current.stop()), setPreferedDevice(selectedDevice);
120
+ };
121
+ return useEffect(() => {
122
+ recordedTime >= maxDuration && handleStop();
123
+ }, [recordedTime, handleStop]), /* @__PURE__ */ jsxs("div", { className: "video-recorder d-flex flex-fill flex-column align-items-center pb-8", children: [
124
+ /* @__PURE__ */ jsx("div", { className: "video-recorder-caption d-none d-md-block", children: caption }),
125
+ inputDevices.length > 1 && /* @__PURE__ */ jsx("div", { className: "video-recorder-devices mb-12", children: /* @__PURE__ */ jsxs(FormControl, { id: "selectInputDevice", children: [
126
+ /* @__PURE__ */ jsx(Label, { className: "d-none d-md-block", children: t("bbm.video.record.select.devices.label") }),
127
+ /* @__PURE__ */ jsx(Select, { placeholderOption: t("bbm.video.record.select.devices.placeholder"), options: inputDevices.map((videoInputDevice) => videoInputDevice.label), onValueChange: handleInputDeviceChange })
128
+ ] }) }),
129
+ /* @__PURE__ */ jsxs("div", { className: "video-recorder-video-container position-relative align-self-stretch", children: [
130
+ /* @__PURE__ */ jsx("video", { ref: videoRef, playsInline: !0, autoPlay: !0, controls: !1, muted: !0, onEnded: handleEnded, className: "rounded", children: /* @__PURE__ */ jsx("track", { default: !0, kind: "captions", srcLang: "fr", src: "" }) }),
131
+ (recording || recorded) && /* @__PURE__ */ jsxs("div", { className: "video-recorder-time d-flex align-items-center font-monospace fs-6 text-bg-dark rounded", children: [
132
+ recording && /* @__PURE__ */ jsxs(Fragment, { children: [
133
+ /* @__PURE__ */ jsx(SvgIconRecord, { width: 12, height: 12, color: "red", className: "me-4" }),
134
+ /* @__PURE__ */ jsxs("span", { children: [
135
+ convertMsToMS(recordedTime),
136
+ "/",
137
+ convertMsToMS(maxDuration)
138
+ ] })
139
+ ] }),
140
+ recorded && /* @__PURE__ */ jsxs(Fragment, { children: [
141
+ /* @__PURE__ */ jsx(SvgIconRecordVideo, { width: 14, height: 14, className: "me-4" }),
142
+ /* @__PURE__ */ jsxs("span", { children: [
143
+ convertMsToMS(playedTime),
144
+ "/",
145
+ convertMsToMS(recordedTime)
146
+ ] })
147
+ ] })
148
+ ] }),
149
+ stream && /* @__PURE__ */ jsx(VideoRecorderToolbar, { playing, recording, recorded, saving, saved, hideSaveAction, handleRecord, handleStop, handlePlayPause, handleReset, handleSave })
150
+ ] }),
151
+ saving && /* @__PURE__ */ jsx(LoadingScreen, { position: !1, caption: t("bbm.video.save.loader.caption") })
152
+ ] });
153
+ });
154
+ export {
155
+ VideoRecorder as default
156
+ };