@projectcor/maia-components 2.44.5-0 → 2.45.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (428) hide show
  1. package/README.md +2 -0
  2. package/lib/App.js +19 -44
  3. package/lib/components/atoms/AttachmentCard/AttachmentCardAudio.js +51 -5
  4. package/lib/components/atoms/AttachmentPreviewModal/AttachmentPreviewModal.js +76 -18
  5. package/lib/components/atoms/AttachmentPreviewModal/PptPreview.js +31 -3
  6. package/lib/components/atoms/AttachmentPreviewModal/WordPreview.js +4 -2
  7. package/lib/components/atoms/ContextMentionChip/buildChipElement.js +255 -15
  8. package/lib/components/atoms/ContextMentionEditor/ContextMentionEditor.js +34 -5
  9. package/lib/components/atoms/FrequentlyUsedActions/FrequentlyUsedActions.js +1 -3
  10. package/lib/components/atoms/FrequentlyUsedActions/FrequentlyUsedActions.styles.js +7 -19
  11. package/lib/components/atoms/MAIAInput/MAIAInput.js +10 -4
  12. package/lib/components/atoms/MAIAInput/MAIAInputEditor.js +60 -8
  13. package/lib/components/atoms/OnboardingModalButton/OnboardingModalButton.js +15 -3
  14. package/lib/components/atoms/ReasoningBlock/ReasoningBlock.js +2 -7
  15. package/lib/components/atoms/ReasoningBlock/ReasoningBlock.styles.js +16 -21
  16. package/lib/components/atoms/ReasoningBlock/ReasoningSteps.js +5 -7
  17. package/lib/components/atoms/ReasoningBlock/ReasoningTimeline.js +52 -72
  18. package/lib/components/atoms/ReasoningBlock/reasoningLeading.js +1 -6
  19. package/lib/components/atoms/ReasoningBlock/reasoningLiveNarration.js +15 -36
  20. package/lib/components/index.js +1 -2
  21. package/lib/components/molecules/AbmSection/AbmAccessibilitySection/AbmAccessibilitySection.js +29 -5
  22. package/lib/components/molecules/AbmSection/AbmGeneralSection.js +40 -6
  23. package/lib/components/molecules/AbmSection/AbmKnowledgeSection.js +90 -18
  24. package/lib/components/molecules/AbmSection/AbmLoaderFiles.js +15 -5
  25. package/lib/components/molecules/ChatAIContent/ChatAIContent.js +3 -7
  26. package/lib/components/molecules/ChatAIHome/ChatAIHome.js +6 -21
  27. package/lib/components/molecules/ChatAIMessages/ChatAIMessages.js +47 -19
  28. package/lib/components/molecules/ChatAIMessages/newStyles.js +26 -29
  29. package/lib/components/molecules/ChatAIModal/ChatAIModal.helpers.js +4 -147
  30. package/lib/components/molecules/ChatAIModal/ChatAIModal.js +108 -64
  31. package/lib/components/molecules/ChatAIModal/components/ChatAiAgentOptions/ChatAiAgentOptions.js +2 -3
  32. package/lib/components/molecules/ChatAIModal/components/ChatAiModalFooter/ChatAiModalFooter.js +153 -15
  33. package/lib/components/molecules/ChatAIModal/components/ChatAiModalFooter/ChatAiModalFooter.styles.js +26 -2
  34. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.js +86 -76
  35. package/lib/components/molecules/ChatFooter/ChatFooter.js +3 -5
  36. package/lib/components/molecules/ChatFooter/ChatFooterFaqs.js +44 -9
  37. package/lib/components/molecules/Sidebar/Sidebar.js +23 -41
  38. package/lib/components/organisms/AbmAgentModal/AbmAgentModal.js +171 -56
  39. package/lib/constants/permissions/index.js +2 -2
  40. package/lib/constants/permissions/utils.js +1 -4
  41. package/lib/dev/DevReasoningTimeline.js +37 -68
  42. package/lib/dev/Providers.js +3 -5
  43. package/lib/hooks/useChatManager/useChatManager.js +351 -76
  44. package/lib/hooks/useChatMessages/useChatMessages.js +82 -12
  45. package/lib/hooks/useClientSearch.js +32 -4
  46. package/lib/hooks/useContextMentions.js +163 -2
  47. package/lib/hooks/useContextPinPopover.js +75 -16
  48. package/lib/hooks/useEntitySearch.js +391 -38
  49. package/lib/hooks/useFrequentlyUsedActions.js +22 -60
  50. package/lib/hooks/useMentionPopover.js +35 -9
  51. package/lib/hooks/useMinimizedPillBottomOffset.js +45 -15
  52. package/lib/hooks/useProjectSearch.js +58 -4
  53. package/lib/hooks/useProjectSummaryConfig.js +52 -14
  54. package/lib/hooks/useRecentClientsSearch.js +32 -4
  55. package/lib/index.js +2 -5
  56. package/lib/lang/approvalBoxToolActions.js +492 -0
  57. package/lib/lang/br/index.js +23 -59
  58. package/lib/lang/en/index.js +23 -59
  59. package/lib/lang/es/index.js +23 -59
  60. package/lib/lang/fr/index.js +23 -59
  61. package/lib/services/maia/Actions/getFrequentlyUsedActions.js +1 -1
  62. package/lib/services/maia/Agents/getAgents.js +242 -78
  63. package/lib/services/maia/Orchestrator/orchestrator.js +121 -38
  64. package/lib/store/sessions/sessionNotifications.js +41 -35
  65. package/lib/store/sessions/sessionStreamManager.js +52 -40
  66. package/lib/styles/cascade.js +3 -29
  67. package/lib/styles/transitions.js +1 -3
  68. package/lib/types/agentModal.js +1 -1
  69. package/lib/types/global.d.js +1 -1
  70. package/lib/utils/hoursPlannerQuickActionType.js +1 -74
  71. package/lib/utils/imagePreprocessor.js +37 -12
  72. package/lib/utils/streamActivityMessages.js +60 -32
  73. package/package.json +1 -1
  74. package/lib/components/atoms/ActionableButton.spec.js +0 -111
  75. package/lib/components/atoms/AgentActivityIndicator/AgentActivityIndicator.spec.js +0 -52
  76. package/lib/components/atoms/AgentActivityIndicator/AgentActivityIndicator.utils.spec.js +0 -11
  77. package/lib/components/atoms/ApprovalBox/ApprovalBox.spec.js +0 -135
  78. package/lib/components/atoms/AttachmentCard/AttachmentCard.spec.js +0 -123
  79. package/lib/components/atoms/AttachmentCard/AttachmentCardAudio.helpers.js +0 -65
  80. package/lib/components/atoms/AttachmentCard/AttachmentCardAudio.helpers.spec.js +0 -66
  81. package/lib/components/atoms/AttachmentCard/AttachmentCardAudio.spec.js +0 -211
  82. package/lib/components/atoms/AttachmentCard/AttachmentCardImage.spec.js +0 -78
  83. package/lib/components/atoms/AttachmentPreviewModal/AttachmentPreviewModal.helpers.js +0 -55
  84. package/lib/components/atoms/AttachmentPreviewModal/AttachmentPreviewModal.helpers.spec.js +0 -41
  85. package/lib/components/atoms/AttachmentPreviewModal/AttachmentPreviewModal.spec.js +0 -253
  86. package/lib/components/atoms/AttachmentPreviewModal/ExcelPreview.spec.js +0 -80
  87. package/lib/components/atoms/AttachmentPreviewModal/PptPreview.helpers.js +0 -31
  88. package/lib/components/atoms/AttachmentPreviewModal/PptPreview.helpers.spec.js +0 -33
  89. package/lib/components/atoms/AttachmentPreviewModal/PptPreview.spec.js +0 -25
  90. package/lib/components/atoms/AttachmentPreviewModal/WordPreview.helpers.js +0 -4
  91. package/lib/components/atoms/AttachmentPreviewModal/WordPreview.helpers.spec.js +0 -11
  92. package/lib/components/atoms/AttachmentPreviewModal/WordPreview.spec.js +0 -77
  93. package/lib/components/atoms/Backdrop/Backdrop.spec.js +0 -28
  94. package/lib/components/atoms/CardMenu/CardMenu.spec.js +0 -56
  95. package/lib/components/atoms/ChatClientSelector/ChatClientSelector.spec.js +0 -67
  96. package/lib/components/atoms/Checkbox/Checkbox.spec.js +0 -27
  97. package/lib/components/atoms/Chip/Chip.spec.js +0 -82
  98. package/lib/components/atoms/ChipLlm/ChipLlm.spec.js +0 -26
  99. package/lib/components/atoms/ClientSelector/ClientSelector.spec.js +0 -88
  100. package/lib/components/atoms/ContextMentionChip/ContextMentionChip.spec.js +0 -29
  101. package/lib/components/atoms/ContextMentionChip/MentionOverflowLabel.spec.js +0 -46
  102. package/lib/components/atoms/ContextMentionChip/buildChipElement.helpers.js +0 -227
  103. package/lib/components/atoms/ContextMentionChip/buildChipElement.helpers.spec.js +0 -77
  104. package/lib/components/atoms/ContextMentionChip/buildChipElement.spec.js +0 -81
  105. package/lib/components/atoms/ContextMentionEditor/ContextMentionEditor.helpers.js +0 -31
  106. package/lib/components/atoms/ContextMentionEditor/ContextMentionEditor.helpers.spec.js +0 -48
  107. package/lib/components/atoms/ContextMentionEditor/ContextMentionEditor.spec.js +0 -231
  108. package/lib/components/atoms/ContextMentionItem/ContextMentionItem.spec.js +0 -107
  109. package/lib/components/atoms/ContextMentionPopover/ContextMentionPopover.spec.js +0 -136
  110. package/lib/components/atoms/CopyToClipboard.spec.js +0 -74
  111. package/lib/components/atoms/EditableLabel/EditableLabel.spec.js +0 -76
  112. package/lib/components/atoms/EntitySelector/EntitySelector.spec.js +0 -86
  113. package/lib/components/atoms/Expand/Expand.spec.js +0 -57
  114. package/lib/components/atoms/Fade/Fade.spec.js +0 -31
  115. package/lib/components/atoms/FeedbackButton/FeedbackButton.spec.js +0 -75
  116. package/lib/components/atoms/FrequentlyAskedQuestions/FrequentlyAskedQuestions.spec.js +0 -104
  117. package/lib/components/atoms/FrequentlyUsedActions/FrequentlyUsedActions.spec.js +0 -91
  118. package/lib/components/atoms/HelpButton.spec.js +0 -87
  119. package/lib/components/atoms/ImagePreview/ImagePreview.spec.js +0 -96
  120. package/lib/components/atoms/ListMenuOption/ListMenuOption.spec.js +0 -54
  121. package/lib/components/atoms/LoadingFaqs/LoadingFaqs.spec.js +0 -21
  122. package/lib/components/atoms/LoadingSearchClients/LoadingSearchClients.spec.js +0 -20
  123. package/lib/components/atoms/LoadingSearchProjects/LoadingSearchProjects.spec.js +0 -26
  124. package/lib/components/atoms/LoadingText/LoadingText.spec.js +0 -25
  125. package/lib/components/atoms/MAIAButton/MAIAButton.spec.js +0 -42
  126. package/lib/components/atoms/MAIAError/MAIAError.spec.js +0 -27
  127. package/lib/components/atoms/MAIAInput/MAIAInput.helpers.js +0 -12
  128. package/lib/components/atoms/MAIAInput/MAIAInput.helpers.spec.js +0 -26
  129. package/lib/components/atoms/MAIAInput/MAIAInput.spec.js +0 -430
  130. package/lib/components/atoms/MAIAInput/MAIAInputEditor.helpers.js +0 -50
  131. package/lib/components/atoms/MAIAInput/MAIAInputEditor.helpers.spec.js +0 -20
  132. package/lib/components/atoms/MAIAInput/MAIAInputEditor.spec.js +0 -53
  133. package/lib/components/atoms/MAIAInput/maiaInputLayout.spec.js +0 -22
  134. package/lib/components/atoms/MaiaStreamdown/MaiaStreamdown.spec.js +0 -64
  135. package/lib/components/atoms/MaiaWrapper/MaiaWrapper.spec.js +0 -43
  136. package/lib/components/atoms/MaiaWrapper/MaiaWrapperBase.spec.js +0 -114
  137. package/lib/components/atoms/MaiaWrapper/ModernMaiaWrapper.spec.js +0 -51
  138. package/lib/components/atoms/ModalClientAccess/ModalClientAccess.spec.js +0 -48
  139. package/lib/components/atoms/ModalProject/ModalProject.spec.js +0 -66
  140. package/lib/components/atoms/NextPageLoader.spec.js +0 -37
  141. package/lib/components/atoms/OnboardingModalButton/OnboardingModal.spec.js +0 -20
  142. package/lib/components/atoms/OnboardingModalButton/OnboardingModalButton.helpers.js +0 -17
  143. package/lib/components/atoms/OnboardingModalButton/OnboardingModalButton.helpers.spec.js +0 -35
  144. package/lib/components/atoms/OnboardingModalButton/OnboardingModalButton.spec.js +0 -47
  145. package/lib/components/atoms/OptionAccessibility/OptionAccessibility.spec.js +0 -86
  146. package/lib/components/atoms/PrimaryButton.spec.js +0 -42
  147. package/lib/components/atoms/ProjectSelector/ProjectSelector.spec.js +0 -69
  148. package/lib/components/atoms/ReasoningBlock/ReasoningBlock.spec.js +0 -69
  149. package/lib/components/atoms/ReasoningBlock/ReasoningSteps.spec.js +0 -59
  150. package/lib/components/atoms/ReasoningBlock/ReasoningTimeline.spec.js +0 -132
  151. package/lib/components/atoms/ReasoningBlock/groupParallelSteps.spec.js +0 -162
  152. package/lib/components/atoms/ReasoningBlock/reasoningLeading.spec.js +0 -70
  153. package/lib/components/atoms/ReasoningBlock/reasoningLiveNarration.spec.js +0 -120
  154. package/lib/components/atoms/ReasoningBlock/reasoningMotion.js +0 -4
  155. package/lib/components/atoms/ReasoningBlock/reasoningTimeline.helpers.js +0 -10
  156. package/lib/components/atoms/ReasoningBlock/reasoningTimeline.helpers.spec.js +0 -31
  157. package/lib/components/atoms/ReasoningBlock/useCollapsibleHeight.js +0 -52
  158. package/lib/components/atoms/ReasoningBlock/useCollapsibleHeight.spec.js +0 -90
  159. package/lib/components/atoms/SessionGeneratingDot/SessionGeneratingDot.spec.js +0 -16
  160. package/lib/components/atoms/SkillsDropdown/SkillsDropdown.spec.js +0 -107
  161. package/lib/components/atoms/SlashCommandChip/SlashCommandChip.spec.js +0 -24
  162. package/lib/components/atoms/SlashCommandDropdown/SlashCommandDropdown.spec.js +0 -85
  163. package/lib/components/atoms/Switch/Switch.spec.js +0 -41
  164. package/lib/components/atoms/TextArea/CustomTextArea.spec.js +0 -52
  165. package/lib/components/atoms/TextArea/TextArea.spec.js +0 -68
  166. package/lib/components/atoms/ThirdButton.spec.js +0 -29
  167. package/lib/components/atoms/VideoModal/VideoModal.spec.js +0 -68
  168. package/lib/components/atoms/WithAppCfg.spec.js +0 -60
  169. package/lib/components/molecules/AbmSection/AbmAccessibilitySection/AbmAccessibilitySection.helpers.js +0 -37
  170. package/lib/components/molecules/AbmSection/AbmAccessibilitySection/AbmAccessibilitySection.helpers.spec.js +0 -53
  171. package/lib/components/molecules/AbmSection/AbmAccessibilitySection/AbmAccessibilitySection.spec.js +0 -371
  172. package/lib/components/molecules/AbmSection/AbmGeneralSection.helpers.js +0 -39
  173. package/lib/components/molecules/AbmSection/AbmGeneralSection.helpers.spec.js +0 -57
  174. package/lib/components/molecules/AbmSection/AbmGeneralSection.spec.js +0 -227
  175. package/lib/components/molecules/AbmSection/AbmKnowledgeSection.helpers.js +0 -86
  176. package/lib/components/molecules/AbmSection/AbmKnowledgeSection.helpers.spec.js +0 -108
  177. package/lib/components/molecules/AbmSection/AbmKnowledgeSection.spec.js +0 -254
  178. package/lib/components/molecules/AbmSection/AbmLoaderFiles.helpers.js +0 -17
  179. package/lib/components/molecules/AbmSection/AbmLoaderFiles.helpers.spec.js +0 -50
  180. package/lib/components/molecules/AbmSection/AbmLoaderFiles.spec.js +0 -94
  181. package/lib/components/molecules/AgentInputBlock/AgentInputBlockMessage.js +0 -83
  182. package/lib/components/molecules/AgentInputBlock/AgentInputBlockMessage.styles.js +0 -30
  183. package/lib/components/molecules/AgentInputBlock/index.js +0 -5
  184. package/lib/components/molecules/AgentInputBlock/resolveAgentInputBlock.js +0 -52
  185. package/lib/components/molecules/AgentInputBlock/resolveAgentInputBlock.spec.js +0 -76
  186. package/lib/components/molecules/AgentInputBlock/resolveLegacyContextSession.js +0 -20
  187. package/lib/components/molecules/AgentInputBlock/resolveLegacyContextSession.spec.js +0 -34
  188. package/lib/components/molecules/AgentInputBlock/useAgentChangeModelAction.js +0 -36
  189. package/lib/components/molecules/ChatAIClientSelector/ChatAIClientSelector.spec.js +0 -66
  190. package/lib/components/molecules/ChatAIContent/ChatAIContent.spec.js +0 -145
  191. package/lib/components/molecules/ChatAIHistory/ChatAIHistory.spec.js +0 -204
  192. package/lib/components/molecules/ChatAIHome/ChatAIHome.spec.js +0 -246
  193. package/lib/components/molecules/ChatAIHome/ChatAIHomeMaiaker.spec.js +0 -86
  194. package/lib/components/molecules/ChatAIMessages/ChatAICreateAgentActions.spec.js +0 -104
  195. package/lib/components/molecules/ChatAIMessages/ChatAIMessages.helpers.js +0 -54
  196. package/lib/components/molecules/ChatAIMessages/ChatAIMessages.helpers.spec.js +0 -77
  197. package/lib/components/molecules/ChatAIMessages/ChatAIMessages.spec.js +0 -410
  198. package/lib/components/molecules/ChatAIMessages/ChatAISuggestions.spec.js +0 -46
  199. package/lib/components/molecules/ChatAIModal/ChatAIModal.helpers.spec.js +0 -471
  200. package/lib/components/molecules/ChatAIModal/ChatAIModal.spec.js +0 -659
  201. package/lib/components/molecules/ChatAIModal/components/ChatAiAgentOptions/ChatAiAgentOptions.helpers.js +0 -5
  202. package/lib/components/molecules/ChatAIModal/components/ChatAiAgentOptions/ChatAiAgentOptions.helpers.spec.js +0 -33
  203. package/lib/components/molecules/ChatAIModal/components/ChatAiAgentOptions/ChatAiAgentOptions.spec.js +0 -116
  204. package/lib/components/molecules/ChatAIModal/components/ChatAiModalFooter/ChatAiModalFooter.spec.js +0 -134
  205. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.helpers.js +0 -30
  206. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.helpers.spec.js +0 -95
  207. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.spec.js +0 -241
  208. package/lib/components/molecules/ChatAIModal/components/MaiaMinimizedPill/MaiaMinimizedPill.spec.js +0 -37
  209. package/lib/components/molecules/ChatAIModal/constants.spec.js +0 -16
  210. package/lib/components/molecules/ChatAIModal/floatingPanelMotion/FloatingPanelMotion.spec.js +0 -22
  211. package/lib/components/molecules/ChatAIModal/floatingPanelMotion/useFloatingPanelDragTilt.spec.js +0 -67
  212. package/lib/components/molecules/ChatAIModal/layout.spec.js +0 -72
  213. package/lib/components/molecules/ChatAIMyAgents/ChatAIMyAgents.spec.js +0 -172
  214. package/lib/components/molecules/ChatAIMySkills/ChatAIMySkills.spec.js +0 -128
  215. package/lib/components/molecules/ChatAIProjectSelector/ChatAIProjectSelector.spec.js +0 -66
  216. package/lib/components/molecules/ChatFooter/ChatFooter.spec.js +0 -355
  217. package/lib/components/molecules/ChatFooter/ChatFooterCorAccess.spec.js +0 -10
  218. package/lib/components/molecules/ChatFooter/ChatFooterFaqs.helpers.js +0 -48
  219. package/lib/components/molecules/ChatFooter/ChatFooterFaqs.helpers.spec.js +0 -82
  220. package/lib/components/molecules/ChatFooter/ChatFooterFaqs.spec.js +0 -139
  221. package/lib/components/molecules/ContextMentionInput/ContextMentionInput.spec.js +0 -84
  222. package/lib/components/molecules/MessageFeedback/MessageFeedback.spec.js +0 -116
  223. package/lib/components/molecules/ProjectSummaryChat/ProjectSummaryChat.spec.js +0 -126
  224. package/lib/components/molecules/ProjectSummaryConfig/ProjectSummaryConfig.spec.js +0 -115
  225. package/lib/components/molecules/ProjectSummaryContent/ProjectSummaryContent.spec.js +0 -79
  226. package/lib/components/molecules/ProjectSummaryModal/ProjectSummaryModal.spec.js +0 -37
  227. package/lib/components/molecules/Sidebar/Sidebar.spec.js +0 -453
  228. package/lib/components/organisms/AbmAgentModal/AbmAgentModal.helpers.js +0 -198
  229. package/lib/components/organisms/AbmAgentModal/AbmAgentModal.helpers.spec.js +0 -385
  230. package/lib/components/organisms/AbmAgentModal/AbmAgentModal.spec.js +0 -1125
  231. package/lib/components/organisms/AbmSkillGenerateModal/AbmSkillGenerateModal.spec.js +0 -112
  232. package/lib/components/organisms/AbmSkillModal/AbmSkillModal.spec.js +0 -405
  233. package/lib/components/organisms/ChatAI/ChatAI.spec.js +0 -174
  234. package/lib/components/organisms/ChatAIPage/ChatAIPage.js +0 -525
  235. package/lib/components/organisms/ChatAIPage/ChatAIPage.spec.js +0 -231
  236. package/lib/components/organisms/ChatAIPage/ChatAIPage.styles.js +0 -16
  237. package/lib/components/organisms/ChatAIPage/ChatAIPageHeader.js +0 -253
  238. package/lib/components/organisms/ChatAIPage/ChatAIPageHeader.spec.js +0 -139
  239. package/lib/components/organisms/ChatAIPage/ChatAIPageHeader.styles.js +0 -13
  240. package/lib/components/organisms/ChatAIPage/ChatAIPageHome.js +0 -267
  241. package/lib/components/organisms/ChatAIPage/ChatAIPageHome.spec.js +0 -261
  242. package/lib/components/organisms/ChatAIPage/ChatAIPageHome.styles.js +0 -194
  243. package/lib/components/organisms/ChatAIPage/ChatAIPageHomeActionCardSlot.js +0 -105
  244. package/lib/components/organisms/ChatAIPage/ChatAIPageHomeActionCardSlot.spec.js +0 -73
  245. package/lib/components/organisms/ChatAIPage/ChatAIPageHomeActionCards.skeleton.js +0 -38
  246. package/lib/components/organisms/ChatAIPage/getDaypart.js +0 -9
  247. package/lib/components/organisms/ChatAIPage/getDaypart.spec.js +0 -19
  248. package/lib/components/organisms/ChatAIPage/index.js +0 -3
  249. package/lib/components/organisms/ClientAIButton/ClientAIButton.spec.js +0 -53
  250. package/lib/components/organisms/DeleteAgentModal/DeleteAgentModal.spec.js +0 -59
  251. package/lib/components/organisms/DeleteQuestionModal/DeleteQuestionModal.spec.js +0 -79
  252. package/lib/components/organisms/EditQuestionModal/EditQuestionModal.spec.js +0 -86
  253. package/lib/components/organisms/ModalFileExceeds/ModalFileExceeds.spec.js +0 -49
  254. package/lib/components/organisms/ProjectAIButton/ProjectAIButton.spec.js +0 -67
  255. package/lib/components/organisms/ProjectSummary/ProjectSummary.spec.js +0 -117
  256. package/lib/components/organisms/SnackBar/Snackbar.spec.js +0 -66
  257. package/lib/components/organisms/SourcesInformation/SourceItem.spec.js +0 -19
  258. package/lib/components/organisms/SourcesInformation/SourcesInformationModal.spec.js +0 -52
  259. package/lib/constants/maiaExternalConnectorsAccess.spec.js +0 -29
  260. package/lib/constants/permissions/utils.spec.js +0 -128
  261. package/lib/dev/DevMaiaPage.js +0 -30
  262. package/lib/hooks/frequentlyUsedActionsCache.js +0 -17
  263. package/lib/hooks/frequentlyUsedActionsCache.spec.js +0 -25
  264. package/lib/hooks/useAccessClient/useAccessClient.spec.js +0 -149
  265. package/lib/hooks/useAgentModel/useAgentModel.spec.js +0 -83
  266. package/lib/hooks/useAgentModel/useCreateAgent.spec.js +0 -231
  267. package/lib/hooks/useAgentModel/useDeleteAgent.spec.js +0 -183
  268. package/lib/hooks/useAgentModel/useUpdateAgent.spec.js +0 -313
  269. package/lib/hooks/useAgentSuggestions.spec.js +0 -89
  270. package/lib/hooks/useCaretPosition.spec.js +0 -58
  271. package/lib/hooks/useChatManager/useChatManager.helpers.js +0 -353
  272. package/lib/hooks/useChatManager/useChatManager.helpers.spec.js +0 -506
  273. package/lib/hooks/useChatManager/useChatManager.spec.js +0 -1261
  274. package/lib/hooks/useChatMessages/useChatMessages.helpers.js +0 -109
  275. package/lib/hooks/useChatMessages/useChatMessages.helpers.spec.js +0 -176
  276. package/lib/hooks/useChatMessages/useChatMessages.spec.js +0 -379
  277. package/lib/hooks/useChats/useChats.spec.js +0 -208
  278. package/lib/hooks/useClientSearch.helpers.js +0 -36
  279. package/lib/hooks/useClientSearch.helpers.spec.js +0 -52
  280. package/lib/hooks/useClientSearch.spec.js +0 -86
  281. package/lib/hooks/useContextMentions.helpers.js +0 -152
  282. package/lib/hooks/useContextMentions.helpers.spec.js +0 -143
  283. package/lib/hooks/useContextMentions.spec.js +0 -239
  284. package/lib/hooks/useContextMentions.types.js +0 -2
  285. package/lib/hooks/useContextPinPopover.helpers.js +0 -95
  286. package/lib/hooks/useContextPinPopover.helpers.spec.js +0 -115
  287. package/lib/hooks/useContextPinPopover.spec.js +0 -159
  288. package/lib/hooks/useContinueLegacyContextInNewChat/index.js +0 -2
  289. package/lib/hooks/useContinueLegacyContextInNewChat/useContinueLegacyContextInNewChat.js +0 -93
  290. package/lib/hooks/useDebounce.spec.js +0 -42
  291. package/lib/hooks/useEntitySearch.helpers.js +0 -359
  292. package/lib/hooks/useEntitySearch.helpers.spec.js +0 -321
  293. package/lib/hooks/useEntitySearch.spec.js +0 -443
  294. package/lib/hooks/useEvent.spec.js +0 -45
  295. package/lib/hooks/useFrequentlyAskedQuestions.spec.js +0 -222
  296. package/lib/hooks/useFrequentlyUsedActions.spec.js +0 -135
  297. package/lib/hooks/useIsMaiaPageRoute.js +0 -26
  298. package/lib/hooks/useIsMaiaPageRoute.spec.js +0 -26
  299. package/lib/hooks/useKnowledge/deleteKnowledge.spec.js +0 -122
  300. package/lib/hooks/useKnowledge/downloadKnowledge.spec.js +0 -148
  301. package/lib/hooks/useKnowledge/saveKnowledge.spec.js +0 -104
  302. package/lib/hooks/useKnowledge/useKnowledgeOperations.spec.js +0 -178
  303. package/lib/hooks/useMaiaChatSessionMeta/index.js +0 -2
  304. package/lib/hooks/useMaiaChatSessionMeta/useMaiaChatSessionMeta.js +0 -24
  305. package/lib/hooks/useMentionAllowedTypes.spec.js +0 -89
  306. package/lib/hooks/useMentionPopover.helpers.js +0 -41
  307. package/lib/hooks/useMentionPopover.helpers.spec.js +0 -71
  308. package/lib/hooks/useMentionPopover.spec.js +0 -215
  309. package/lib/hooks/useMinimizedPillBottomOffset.helpers.js +0 -47
  310. package/lib/hooks/useMinimizedPillBottomOffset.helpers.spec.js +0 -132
  311. package/lib/hooks/useMinimizedPillBottomOffset.spec.js +0 -89
  312. package/lib/hooks/useMinimizedPillNoveltyDot/useMinimizedPillNoveltyDot.spec.js +0 -67
  313. package/lib/hooks/useModal/useModal.spec.js +0 -73
  314. package/lib/hooks/useOrchestratorStream/useOrchestratorStream.spec.js +0 -192
  315. package/lib/hooks/useProjectSearch.helpers.js +0 -61
  316. package/lib/hooks/useProjectSearch.helpers.spec.js +0 -70
  317. package/lib/hooks/useProjectSearch.spec.js +0 -91
  318. package/lib/hooks/useProjectSummary.spec.js +0 -193
  319. package/lib/hooks/useProjectSummaryConfig.helpers.js +0 -62
  320. package/lib/hooks/useProjectSummaryConfig.helpers.spec.js +0 -92
  321. package/lib/hooks/useProjectSummaryConfig.spec.js +0 -133
  322. package/lib/hooks/useReasoningTrace/reasoningStore.spec.js +0 -112
  323. package/lib/hooks/useRecentClientsSearch.helpers.js +0 -33
  324. package/lib/hooks/useRecentClientsSearch.helpers.spec.js +0 -33
  325. package/lib/hooks/useRecentClientsSearch.spec.js +0 -85
  326. package/lib/hooks/useRecentContexts.spec.js +0 -139
  327. package/lib/hooks/useResize.spec.js +0 -37
  328. package/lib/hooks/useSkillsCatalog.spec.js +0 -88
  329. package/lib/hooks/useSlashCommands.spec.js +0 -139
  330. package/lib/hooks/useSmoothStreamText/useSmoothStreamText.spec.js +0 -101
  331. package/lib/hooks/useSnackBarManager/useSnackBarManager.spec.js +0 -33
  332. package/lib/hooks/useStreamResponse.spec.js +0 -199
  333. package/lib/hooks/useT.spec.js +0 -20
  334. package/lib/hooks/useToggle.spec.js +0 -33
  335. package/lib/hooks/useToggleFavorite/useToggleFavorite.spec.js +0 -171
  336. package/lib/services/maia/Access/updateAccess.spec.js +0 -137
  337. package/lib/services/maia/Actions/getFrequentlyUsedActions.spec.js +0 -56
  338. package/lib/services/maia/Actions/getSlashCommands.spec.js +0 -91
  339. package/lib/services/maia/Agents/connectors.spec.js +0 -359
  340. package/lib/services/maia/Agents/createAgent.spec.js +0 -55
  341. package/lib/services/maia/Agents/deleteAgent.spec.js +0 -57
  342. package/lib/services/maia/Agents/fetchAgentDetail.spec.js +0 -108
  343. package/lib/services/maia/Agents/getAgentById.spec.js +0 -190
  344. package/lib/services/maia/Agents/getAgentModels.spec.js +0 -190
  345. package/lib/services/maia/Agents/getAgentSuggestions.spec.js +0 -89
  346. package/lib/services/maia/Agents/getAgents.helpers.js +0 -181
  347. package/lib/services/maia/Agents/getAgents.helpers.spec.js +0 -211
  348. package/lib/services/maia/Agents/getAgents.spec.js +0 -697
  349. package/lib/services/maia/Agents/setAgentToolGroups.spec.js +0 -45
  350. package/lib/services/maia/Agents/toggleFavorite.spec.js +0 -59
  351. package/lib/services/maia/Agents/updateAgent.spec.js +0 -48
  352. package/lib/services/maia/Chats/deleteChat.spec.js +0 -31
  353. package/lib/services/maia/Chats/getChatMessages.spec.js +0 -150
  354. package/lib/services/maia/Chats/getChatsByUserId.spec.js +0 -149
  355. package/lib/services/maia/Chats/markSessionAsRead.spec.js +0 -30
  356. package/lib/services/maia/Chats/patchChat.spec.js +0 -41
  357. package/lib/services/maia/Chats/wasHelpfulChat.spec.js +0 -28
  358. package/lib/services/maia/Faqs/getFrequentlyAskedQuestions.spec.js +0 -58
  359. package/lib/services/maia/Knowledge/delete.spec.js +0 -45
  360. package/lib/services/maia/Knowledge/download.spec.js +0 -78
  361. package/lib/services/maia/Knowledge/save.spec.js +0 -58
  362. package/lib/services/maia/Orchestrator/orchestrator.helpers.js +0 -130
  363. package/lib/services/maia/Orchestrator/orchestrator.helpers.spec.js +0 -153
  364. package/lib/services/maia/Orchestrator/orchestrator.spec.js +0 -181
  365. package/lib/services/maia/RecentClients/getRecentClients.spec.js +0 -52
  366. package/lib/services/maia/RecentContexts/getRecentContexts.spec.js +0 -103
  367. package/lib/services/maia/RecentProjects/getRecentProjects.spec.js +0 -82
  368. package/lib/services/maia/RecentTasks/getRecentTasks.spec.js +0 -63
  369. package/lib/services/maia/RecentUsers/getRecentUsers.spec.js +0 -82
  370. package/lib/services/maia/Skills/createSkill.spec.js +0 -68
  371. package/lib/services/maia/Skills/deleteSkill.spec.js +0 -42
  372. package/lib/services/maia/Skills/generateSkill.spec.js +0 -48
  373. package/lib/services/maia/Skills/getSkills.spec.js +0 -152
  374. package/lib/services/maia/Skills/updateSkill.spec.js +0 -62
  375. package/lib/services/maia/client.spec.js +0 -56
  376. package/lib/services/utils/fetchCOR.spec.js +0 -211
  377. package/lib/services/utils/getCookie.spec.js +0 -20
  378. package/lib/services/utils/mapChatMessages.spec.js +0 -254
  379. package/lib/store/chatsSidebarOptimistic.spec.js +0 -112
  380. package/lib/store/maiaLastChatPersistence.spec.js +0 -22
  381. package/lib/store/maiaPanelSessionPersistence.spec.js +0 -62
  382. package/lib/store/sessions/sessionNotificationSound.spec.js +0 -145
  383. package/lib/store/sessions/sessionNotifications.helpers.js +0 -45
  384. package/lib/store/sessions/sessionNotifications.helpers.spec.js +0 -63
  385. package/lib/store/sessions/sessionNotifications.spec.js +0 -106
  386. package/lib/store/sessions/sessionStreamManager.spec.js +0 -503
  387. package/lib/store/sessions/sessions.types.spec.js +0 -16
  388. package/lib/store/sessions/useSessionsStore.spec.js +0 -135
  389. package/lib/store/useChatsStore.spec.js +0 -619
  390. package/lib/store/useFaqsStore.spec.js +0 -57
  391. package/lib/test/mockSseStream.js +0 -121
  392. package/lib/test/streamdownCodeMock.js +0 -6
  393. package/lib/test/streamdownMock.js +0 -12
  394. package/lib/utils/actionCategoryMap.spec.js +0 -18
  395. package/lib/utils/agentDisplayName.spec.js +0 -44
  396. package/lib/utils/autoApproveStorage.spec.js +0 -25
  397. package/lib/utils/chatInputFiles.spec.js +0 -39
  398. package/lib/utils/contextMentionIcons.spec.js +0 -41
  399. package/lib/utils/contextMentionLabel.spec.js +0 -13
  400. package/lib/utils/contextMentionTriggers.spec.js +0 -38
  401. package/lib/utils/contextMentionTypeLabel.spec.js +0 -14
  402. package/lib/utils/corConnectorMentionTypes.spec.js +0 -23
  403. package/lib/utils/entityLinkRender.spec.js +0 -72
  404. package/lib/utils/fileDownloadHelper.spec.js +0 -67
  405. package/lib/utils/formatQuickActionMessage.spec.js +0 -27
  406. package/lib/utils/formatUnreadCount.spec.js +0 -12
  407. package/lib/utils/getUnitFileSize.spec.js +0 -18
  408. package/lib/utils/hitlAnalytics.spec.js +0 -100
  409. package/lib/utils/hoursPlannerQuickActionType.spec.js +0 -64
  410. package/lib/utils/imagePreprocessor.helpers.js +0 -28
  411. package/lib/utils/imagePreprocessor.helpers.spec.js +0 -28
  412. package/lib/utils/imagePreprocessor.spec.js +0 -112
  413. package/lib/utils/maiaPageRoute.js +0 -24
  414. package/lib/utils/maiaPageRoute.spec.js +0 -23
  415. package/lib/utils/mapBackendLang.spec.js +0 -19
  416. package/lib/utils/navigateContextEntity.spec.js +0 -50
  417. package/lib/utils/normalizeAgentConnectors.spec.js +0 -107
  418. package/lib/utils/orchestratorSubagents.spec.js +0 -32
  419. package/lib/utils/reasoningMappers.spec.js +0 -103
  420. package/lib/utils/recentContextsHomeLimit.spec.js +0 -32
  421. package/lib/utils/renderContextMentions.spec.js +0 -158
  422. package/lib/utils/retryCompletion.spec.js +0 -99
  423. package/lib/utils/skillContentSize.spec.js +0 -13
  424. package/lib/utils/slashCommandMarker.spec.js +0 -43
  425. package/lib/utils/sortManagerHoursHomeFuas.spec.js +0 -51
  426. package/lib/utils/sseStreamContent.spec.js +0 -31
  427. package/lib/utils/streamActivityMessages.spec.js +0 -227
  428. package/lib/utils/validateTrimmedFields.spec.js +0 -26
@@ -1,135 +0,0 @@
1
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4
- import { fireEvent, renderWithProviders, screen } from '../../../test/test-utils';
5
- import { ApprovalBox } from './ApprovalBox';
6
- import { jsx as _jsx } from "react/jsx-runtime";
7
- var triggerEvent = jest.fn();
8
- jest.mock('../../../context/global-context', function () {
9
- return {
10
- useGlobalContext: function useGlobalContext() {
11
- return {
12
- agent: {
13
- type: 'custom',
14
- name: 'Legal',
15
- entity: 'custom'
16
- }
17
- };
18
- }
19
- };
20
- });
21
- jest.mock('../../../hooks/useEvent', function () {
22
- return {
23
- EVENTS: {
24
- aiChatHitl: 'AI_CHAT_HITL',
25
- aiChatHitlOption: 'AI_CHAT_HITL_OPTION',
26
- connectorCor: 'AI_CHAT_ABM_CONNECTOR_COR'
27
- },
28
- useEvent: function useEvent() {
29
- return triggerEvent;
30
- }
31
- };
32
- });
33
- var action = function action() {
34
- var overrides = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
35
- return _objectSpread({
36
- tool_name: 'edit_task',
37
- tool_call_id: 'c1',
38
- tool_args: {},
39
- thread_id: 't1'
40
- }, overrides);
41
- };
42
- describe('ApprovalBox', function () {
43
- var onApprove = jest.fn();
44
- var onReject = jest.fn();
45
- beforeEach(function () {
46
- onApprove.mockClear();
47
- onReject.mockClear();
48
- triggerEvent.mockClear();
49
- });
50
- it('approves the pending actions', function () {
51
- var props = {
52
- actions: [action()],
53
- onApprove: onApprove,
54
- onReject: onReject
55
- };
56
- var _renderWithProviders = renderWithProviders(/*#__PURE__*/_jsx(ApprovalBox, _objectSpread({}, props))),
57
- rerender = _renderWithProviders.rerender;
58
- fireEvent.click(screen.getByRole('button', {
59
- name: 'approvalBox.approve'
60
- }));
61
- expect(onApprove).toHaveBeenCalledWith(['t1'], undefined);
62
- rerender(/*#__PURE__*/_jsx(ApprovalBox, _objectSpread(_objectSpread({}, props), {}, {
63
- status: "approved"
64
- })));
65
- expect(screen.getByText('approvalBox.status.approved')).toBeInTheDocument();
66
- });
67
- it('rejects the pending actions', function () {
68
- var props = {
69
- actions: [action()],
70
- onApprove: onApprove,
71
- onReject: onReject
72
- };
73
- var _renderWithProviders2 = renderWithProviders(/*#__PURE__*/_jsx(ApprovalBox, _objectSpread({}, props))),
74
- rerender = _renderWithProviders2.rerender;
75
- fireEvent.click(screen.getByRole('button', {
76
- name: 'approvalBox.deny'
77
- }));
78
- expect(onReject).toHaveBeenCalledWith(['t1']);
79
- rerender(/*#__PURE__*/_jsx(ApprovalBox, _objectSpread(_objectSpread({}, props), {}, {
80
- status: "rejected"
81
- })));
82
- expect(screen.getByText('approvalBox.status.denied')).toBeInTheDocument();
83
- });
84
- it('hides the buttons when the project is deleted', function () {
85
- renderWithProviders(/*#__PURE__*/_jsx(ApprovalBox, {
86
- actions: [action()],
87
- onApprove: onApprove,
88
- onReject: onReject,
89
- isProjectDeleted: true
90
- }));
91
- expect(screen.queryByRole('button', {
92
- name: 'approvalBox.approve'
93
- })).not.toBeInTheDocument();
94
- });
95
- it('does not approve again while loading', function () {
96
- renderWithProviders(/*#__PURE__*/_jsx(ApprovalBox, {
97
- actions: [action()],
98
- onApprove: onApprove,
99
- onReject: onReject,
100
- isLoading: true
101
- }));
102
- fireEvent.click(screen.getByRole('button', {
103
- name: 'approvalBox.approve'
104
- }));
105
- expect(onApprove).not.toHaveBeenCalled();
106
- });
107
- it('does not show COR toggles for a regular tool batch', function () {
108
- renderWithProviders(/*#__PURE__*/_jsx(ApprovalBox, {
109
- actions: [action()],
110
- onApprove: onApprove,
111
- onReject: onReject
112
- }));
113
- expect(screen.queryByText('accessibilitySection.corPermissionsTitle')).not.toBeInTheDocument();
114
- });
115
- it('sends selected COR slugs when approving create_agent', function () {
116
- renderWithProviders(/*#__PURE__*/_jsx(ApprovalBox, {
117
- actions: [action({
118
- tool_name: 'create_agent'
119
- })],
120
- onApprove: onApprove,
121
- onReject: onReject
122
- }));
123
- expect(screen.getByText('accessibilitySection.corPermissionsTitle')).toBeInTheDocument();
124
- fireEvent.click(screen.getByRole('switch', {
125
- name: 'accessibilitySection.clientAccessTitle'
126
- }));
127
- fireEvent.click(screen.getByRole('button', {
128
- name: 'approvalBox.approve'
129
- }));
130
- expect(onApprove).toHaveBeenCalledWith(['t1'], {
131
- tool_group_slugs: ['proyectos', 'tareas']
132
- });
133
- });
134
- });
135
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJmaXJlRXZlbnQiLCJyZW5kZXJXaXRoUHJvdmlkZXJzIiwic2NyZWVuIiwiQXBwcm92YWxCb3giLCJqc3giLCJfanN4IiwidHJpZ2dlckV2ZW50IiwiamVzdCIsImZuIiwibW9jayIsInVzZUdsb2JhbENvbnRleHQiLCJhZ2VudCIsInR5cGUiLCJuYW1lIiwiZW50aXR5IiwiRVZFTlRTIiwiYWlDaGF0SGl0bCIsImFpQ2hhdEhpdGxPcHRpb24iLCJjb25uZWN0b3JDb3IiLCJ1c2VFdmVudCIsImFjdGlvbiIsIm92ZXJyaWRlcyIsImFyZ3VtZW50cyIsImxlbmd0aCIsInVuZGVmaW5lZCIsIl9vYmplY3RTcHJlYWQiLCJ0b29sX25hbWUiLCJ0b29sX2NhbGxfaWQiLCJ0b29sX2FyZ3MiLCJ0aHJlYWRfaWQiLCJkZXNjcmliZSIsIm9uQXBwcm92ZSIsIm9uUmVqZWN0IiwiYmVmb3JlRWFjaCIsIm1vY2tDbGVhciIsIml0IiwicHJvcHMiLCJhY3Rpb25zIiwiX3JlbmRlcldpdGhQcm92aWRlcnMiLCJyZXJlbmRlciIsImNsaWNrIiwiZ2V0QnlSb2xlIiwiZXhwZWN0IiwidG9IYXZlQmVlbkNhbGxlZFdpdGgiLCJzdGF0dXMiLCJnZXRCeVRleHQiLCJ0b0JlSW5UaGVEb2N1bWVudCIsIl9yZW5kZXJXaXRoUHJvdmlkZXJzMiIsImlzUHJvamVjdERlbGV0ZWQiLCJxdWVyeUJ5Um9sZSIsIm5vdCIsImlzTG9hZGluZyIsInRvSGF2ZUJlZW5DYWxsZWQiLCJxdWVyeUJ5VGV4dCIsInRvb2xfZ3JvdXBfc2x1Z3MiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9hdG9tcy9BcHByb3ZhbEJveC9BcHByb3ZhbEJveC5zcGVjLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmaXJlRXZlbnQsIHJlbmRlcldpdGhQcm92aWRlcnMsIHNjcmVlbiB9IGZyb20gJy4uLy4uLy4uL3Rlc3QvdGVzdC11dGlscydcbmltcG9ydCB0eXBlIHsgUGVuZGluZ0FjdGlvbiB9IGZyb20gJy4uLy4uLy4uL3R5cGVzL0NoYXQnXG5pbXBvcnQgeyBBcHByb3ZhbEJveCB9IGZyb20gJy4vQXBwcm92YWxCb3gnXG5cbmNvbnN0IHRyaWdnZXJFdmVudCA9IGplc3QuZm4oKVxuXG5qZXN0Lm1vY2soJy4uLy4uLy4uL2NvbnRleHQvZ2xvYmFsLWNvbnRleHQnLCAoKSA9PiAoe1xuICB1c2VHbG9iYWxDb250ZXh0OiAoKSA9PiAoeyBhZ2VudDogeyB0eXBlOiAnY3VzdG9tJywgbmFtZTogJ0xlZ2FsJywgZW50aXR5OiAnY3VzdG9tJyB9IH0pLFxufSkpXG5cbmplc3QubW9jaygnLi4vLi4vLi4vaG9va3MvdXNlRXZlbnQnLCAoKSA9PiAoe1xuICBFVkVOVFM6IHtcbiAgICBhaUNoYXRIaXRsOiAnQUlfQ0hBVF9ISVRMJyxcbiAgICBhaUNoYXRIaXRsT3B0aW9uOiAnQUlfQ0hBVF9ISVRMX09QVElPTicsXG4gICAgY29ubmVjdG9yQ29yOiAnQUlfQ0hBVF9BQk1fQ09OTkVDVE9SX0NPUicsXG4gIH0sXG4gIHVzZUV2ZW50OiAoKSA9PiB0cmlnZ2VyRXZlbnQsXG59KSlcblxuY29uc3QgYWN0aW9uID0gKG92ZXJyaWRlczogUGFydGlhbDxQZW5kaW5nQWN0aW9uPiA9IHt9KTogUGVuZGluZ0FjdGlvbiA9PiAoe1xuICB0b29sX25hbWU6ICdlZGl0X3Rhc2snLFxuICB0b29sX2NhbGxfaWQ6ICdjMScsXG4gIHRvb2xfYXJnczoge30sXG4gIHRocmVhZF9pZDogJ3QxJyxcbiAgLi4ub3ZlcnJpZGVzLFxufSlcblxuZGVzY3JpYmUoJ0FwcHJvdmFsQm94JywgKCkgPT4ge1xuICBjb25zdCBvbkFwcHJvdmUgPSBqZXN0LmZuKClcbiAgY29uc3Qgb25SZWplY3QgPSBqZXN0LmZuKClcblxuICBiZWZvcmVFYWNoKCgpID0+IHtcbiAgICBvbkFwcHJvdmUubW9ja0NsZWFyKClcbiAgICBvblJlamVjdC5tb2NrQ2xlYXIoKVxuICAgIHRyaWdnZXJFdmVudC5tb2NrQ2xlYXIoKVxuICB9KVxuXG4gIGl0KCdhcHByb3ZlcyB0aGUgcGVuZGluZyBhY3Rpb25zJywgKCkgPT4ge1xuICAgIGNvbnN0IHByb3BzID0geyBhY3Rpb25zOiBbYWN0aW9uKCldLCBvbkFwcHJvdmUsIG9uUmVqZWN0IH1cbiAgICBjb25zdCB7IHJlcmVuZGVyIH0gPSByZW5kZXJXaXRoUHJvdmlkZXJzKDxBcHByb3ZhbEJveCB7Li4ucHJvcHN9IC8+KVxuXG4gICAgZmlyZUV2ZW50LmNsaWNrKHNjcmVlbi5nZXRCeVJvbGUoJ2J1dHRvbicsIHsgbmFtZTogJ2FwcHJvdmFsQm94LmFwcHJvdmUnIH0pKVxuICAgIGV4cGVjdChvbkFwcHJvdmUpLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKFsndDEnXSwgdW5kZWZpbmVkKVxuXG4gICAgcmVyZW5kZXIoPEFwcHJvdmFsQm94IHsuLi5wcm9wc30gc3RhdHVzPVwiYXBwcm92ZWRcIiAvPilcbiAgICBleHBlY3Qoc2NyZWVuLmdldEJ5VGV4dCgnYXBwcm92YWxCb3guc3RhdHVzLmFwcHJvdmVkJykpLnRvQmVJblRoZURvY3VtZW50KClcbiAgfSlcblxuICBpdCgncmVqZWN0cyB0aGUgcGVuZGluZyBhY3Rpb25zJywgKCkgPT4ge1xuICAgIGNvbnN0IHByb3BzID0geyBhY3Rpb25zOiBbYWN0aW9uKCldLCBvbkFwcHJvdmUsIG9uUmVqZWN0IH1cbiAgICBjb25zdCB7IHJlcmVuZGVyIH0gPSByZW5kZXJXaXRoUHJvdmlkZXJzKDxBcHByb3ZhbEJveCB7Li4ucHJvcHN9IC8+KVxuXG4gICAgZmlyZUV2ZW50LmNsaWNrKHNjcmVlbi5nZXRCeVJvbGUoJ2J1dHRvbicsIHsgbmFtZTogJ2FwcHJvdmFsQm94LmRlbnknIH0pKVxuICAgIGV4cGVjdChvblJlamVjdCkudG9IYXZlQmVlbkNhbGxlZFdpdGgoWyd0MSddKVxuXG4gICAgcmVyZW5kZXIoPEFwcHJvdmFsQm94IHsuLi5wcm9wc30gc3RhdHVzPVwicmVqZWN0ZWRcIiAvPilcbiAgICBleHBlY3Qoc2NyZWVuLmdldEJ5VGV4dCgnYXBwcm92YWxCb3guc3RhdHVzLmRlbmllZCcpKS50b0JlSW5UaGVEb2N1bWVudCgpXG4gIH0pXG5cbiAgaXQoJ2hpZGVzIHRoZSBidXR0b25zIHdoZW4gdGhlIHByb2plY3QgaXMgZGVsZXRlZCcsICgpID0+IHtcbiAgICByZW5kZXJXaXRoUHJvdmlkZXJzKDxBcHByb3ZhbEJveCBhY3Rpb25zPXtbYWN0aW9uKCldfSBvbkFwcHJvdmU9e29uQXBwcm92ZX0gb25SZWplY3Q9e29uUmVqZWN0fSBpc1Byb2plY3REZWxldGVkIC8+KVxuXG4gICAgZXhwZWN0KHNjcmVlbi5xdWVyeUJ5Um9sZSgnYnV0dG9uJywgeyBuYW1lOiAnYXBwcm92YWxCb3guYXBwcm92ZScgfSkpLm5vdC50b0JlSW5UaGVEb2N1bWVudCgpXG4gIH0pXG5cbiAgaXQoJ2RvZXMgbm90IGFwcHJvdmUgYWdhaW4gd2hpbGUgbG9hZGluZycsICgpID0+IHtcbiAgICByZW5kZXJXaXRoUHJvdmlkZXJzKDxBcHByb3ZhbEJveCBhY3Rpb25zPXtbYWN0aW9uKCldfSBvbkFwcHJvdmU9e29uQXBwcm92ZX0gb25SZWplY3Q9e29uUmVqZWN0fSBpc0xvYWRpbmcgLz4pXG5cbiAgICBmaXJlRXZlbnQuY2xpY2soc2NyZWVuLmdldEJ5Um9sZSgnYnV0dG9uJywgeyBuYW1lOiAnYXBwcm92YWxCb3guYXBwcm92ZScgfSkpXG5cbiAgICBleHBlY3Qob25BcHByb3ZlKS5ub3QudG9IYXZlQmVlbkNhbGxlZCgpXG4gIH0pXG5cbiAgaXQoJ2RvZXMgbm90IHNob3cgQ09SIHRvZ2dsZXMgZm9yIGEgcmVndWxhciB0b29sIGJhdGNoJywgKCkgPT4ge1xuICAgIHJlbmRlcldpdGhQcm92aWRlcnMoPEFwcHJvdmFsQm94IGFjdGlvbnM9e1thY3Rpb24oKV19IG9uQXBwcm92ZT17b25BcHByb3ZlfSBvblJlamVjdD17b25SZWplY3R9IC8+KVxuXG4gICAgZXhwZWN0KHNjcmVlbi5xdWVyeUJ5VGV4dCgnYWNjZXNzaWJpbGl0eVNlY3Rpb24uY29yUGVybWlzc2lvbnNUaXRsZScpKS5ub3QudG9CZUluVGhlRG9jdW1lbnQoKVxuICB9KVxuXG4gIGl0KCdzZW5kcyBzZWxlY3RlZCBDT1Igc2x1Z3Mgd2hlbiBhcHByb3ZpbmcgY3JlYXRlX2FnZW50JywgKCkgPT4ge1xuICAgIHJlbmRlcldpdGhQcm92aWRlcnMoXG4gICAgICA8QXBwcm92YWxCb3ggYWN0aW9ucz17W2FjdGlvbih7IHRvb2xfbmFtZTogJ2NyZWF0ZV9hZ2VudCcgfSldfSBvbkFwcHJvdmU9e29uQXBwcm92ZX0gb25SZWplY3Q9e29uUmVqZWN0fSAvPlxuICAgIClcblxuICAgIGV4cGVjdChzY3JlZW4uZ2V0QnlUZXh0KCdhY2Nlc3NpYmlsaXR5U2VjdGlvbi5jb3JQZXJtaXNzaW9uc1RpdGxlJykpLnRvQmVJblRoZURvY3VtZW50KClcbiAgICBmaXJlRXZlbnQuY2xpY2soc2NyZWVuLmdldEJ5Um9sZSgnc3dpdGNoJywgeyBuYW1lOiAnYWNjZXNzaWJpbGl0eVNlY3Rpb24uY2xpZW50QWNjZXNzVGl0bGUnIH0pKVxuICAgIGZpcmVFdmVudC5jbGljayhzY3JlZW4uZ2V0QnlSb2xlKCdidXR0b24nLCB7IG5hbWU6ICdhcHByb3ZhbEJveC5hcHByb3ZlJyB9KSlcblxuICAgIGV4cGVjdChvbkFwcHJvdmUpLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKFsndDEnXSwgeyB0b29sX2dyb3VwX3NsdWdzOiBbJ3Byb3llY3RvcycsICd0YXJlYXMnXSB9KVxuICB9KVxufSlcbiJdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsU0FBU0EsU0FBUyxFQUFFQyxtQkFBbUIsRUFBRUMsTUFBTSxRQUFRLDBCQUEwQjtBQUVqRixTQUFTQyxXQUFXLFFBQVEsZUFBZTtBQUFBLFNBQUFDLEdBQUEsSUFBQUMsSUFBQTtBQUUzQyxJQUFNQyxZQUFZLEdBQUdDLElBQUksQ0FBQ0MsRUFBRSxDQUFDLENBQUM7QUFFOUJELElBQUksQ0FBQ0UsSUFBSSxDQUFDLGlDQUFpQyxFQUFFO0VBQUEsT0FBTztJQUNsREMsZ0JBQWdCLEVBQUUsU0FBbEJB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LENBQUUsQ0FBQyxDQUFDO0lBRTdHbkQsU0FBUyxDQUFDd0MsS0FBSyxDQUFDdEMsTUFBTSxDQUFDdUMsU0FBUyxDQUFDLFFBQVEsRUFBRTtNQUFFNUIsSUFBSSxFQUFFO0lBQXNCLENBQUMsQ0FBQyxDQUFDO0lBRTVFNkIsTUFBTSxDQUFDWCxTQUFTLENBQUMsQ0FBQ21CLEdBQUcsQ0FBQ0UsZ0JBQWdCLENBQUMsQ0FBQztFQUMxQyxDQUFDLENBQUM7RUFFRmpCLEVBQUUsQ0FBQyxvREFBb0QsRUFBRSxZQUFNO0lBQzdEbEMsbUJBQW1CLGNBQUNJLElBQUEsQ0FBQ0YsV0FBVztNQUFDa0MsT0FBTyxFQUFFLENBQUNqQixNQUFNLENBQUMsQ0FBQyxDQUFFO01BQUNXLFNBQVMsRUFBRUEsU0FBVTtNQUFDQyxRQUFRLEVBQUVBO0lBQVMsQ0FBRSxDQUFDLENBQUM7SUFFbkdVLE1BQU0sQ0FBQ3hDLE1BQU0sQ0FBQ21ELFdBQVcsQ0FBQywwQ0FBMEMsQ0FBQyxDQUFDLENBQUNILEdBQUcsQ0FBQ0osaUJBQWlCLENBQUMsQ0FBQztFQUNoRyxDQUFDLENBQUM7RUFFRlgsRUFBRSxDQUFDLHNEQUFzRCxFQUFFLFlBQU07SUFDL0RsQyxtQkFBbUIsY0FDakJJLElBQUEsQ0FBQ0YsV0FBVztNQUFDa0MsT0FBTyxFQUFFLENBQUNqQixNQUFNLENBQUM7UUFBRU0sU0FBUyxFQUFFO01BQWUsQ0FBQyxDQUFDLENBQUU7TUFBQ0ssU0FBUyxFQUFFQSxTQUFVO01BQUNDLFFBQVEsRUFBRUE7SUFBUyxDQUFFLENBQzVHLENBQUM7SUFFRFUsTUFBTSxDQUFDeEMsTUFBTSxDQUFDMkMsU0FBUyxDQUFDLDBDQUEwQyxDQUFDLENBQUMsQ0FBQ0MsaUJBQWlCLENBQUMsQ0FBQztJQUN4RjlDLFNBQVMsQ0FBQ3dDLEtBQUssQ0FBQ3RDLE1BQU0sQ0FBQ3VDLFNBQVMsQ0FBQyxRQUFRLEVBQUU7TUFBRTVCLElBQUksRUFBRTtJQUF5QyxDQUFDLENBQUMsQ0FBQztJQUMvRmIsU0FBUyxDQUFDd0MsS0FBSyxDQUFDdEMsTUFBTSxDQUFDdUMsU0FBUyxDQUFDLFFBQVEsRUFBRTtNQUFFNUIsSUFBSSxFQUFFO0lBQXNCLENBQUMsQ0FBQyxDQUFDO0lBRTVFNkIsTUFBTSxDQUFDWCxTQUFTLENBQUMsQ0FBQ1ksb0JBQW9CLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRTtNQUFFVyxnQkFBZ0IsRUFBRSxDQUFDLFdBQVcsRUFBRSxRQUFRO0lBQUUsQ0FBQyxDQUFDO0VBQy9GLENBQUMsQ0FBQztBQUNKLENBQUMsQ0FBQyIsImlnbm9yZUxpc3QiOltdfQ==
@@ -1,123 +0,0 @@
1
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4
- import { fireEvent, renderWithProviders, screen } from '../../../test/test-utils';
5
- import { AttachmentCard } from './AttachmentCard';
6
- import { jsx as _jsx } from "react/jsx-runtime";
7
- jest.mock('../../molecules/ChatFooter/ChatFooter', function () {
8
- var React = jest.requireActual('react');
9
- return {
10
- IconByFileType: {
11
- 'application/pdf': React.createElement('span', {
12
- 'data-testid': 'pdf-icon'
13
- })
14
- }
15
- };
16
- });
17
- jest.mock('./AttachmentCardImage', function () {
18
- return {
19
- AttachmentCardImage: function AttachmentCardImage(_ref) {
20
- var attachment = _ref.attachment;
21
- return /*#__PURE__*/_jsx("div", {
22
- "data-testid": "attachment-image",
23
- children: attachment.name
24
- });
25
- }
26
- };
27
- });
28
- jest.mock('./AttachmentCardAudio', function () {
29
- return {
30
- AttachmentCardAudio: function AttachmentCardAudio() {
31
- return /*#__PURE__*/_jsx("div", {
32
- "data-testid": "attachment-audio"
33
- });
34
- }
35
- };
36
- });
37
- jest.mock('../../../hooks/useResize', function () {
38
- return {
39
- useResizeListener: function useResizeListener() {
40
- return {
41
- showTooltip: false
42
- };
43
- }
44
- };
45
- });
46
- var buildAttachment = function buildAttachment() {
47
- var overrides = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
48
- return _objectSpread({
49
- id: 'file-1',
50
- name: 'report',
51
- type: 'pdf',
52
- size: 2048,
53
- file: new File([], 'report.pdf', {
54
- type: 'application/pdf'
55
- })
56
- }, overrides);
57
- };
58
- describe('AttachmentCard', function () {
59
- it('renders a generic file card with name and actions', function () {
60
- var handleAction = jest.fn();
61
- renderWithProviders(/*#__PURE__*/_jsx(AttachmentCard, {
62
- positionIndex: 0,
63
- attachment: buildAttachment(),
64
- handleAction: handleAction
65
- }));
66
- expect(screen.getByText('report.pdf')).toBeInTheDocument();
67
- var actionButtons = document.querySelectorAll('button[data-icon-only="true"]');
68
- expect(actionButtons.length).toBeGreaterThanOrEqual(2);
69
- fireEvent.click(actionButtons[1]);
70
- expect(handleAction).toHaveBeenCalledWith({
71
- id: 0,
72
- action: 'delete'
73
- });
74
- });
75
- it('delegates image attachments to AttachmentCardImage', function () {
76
- renderWithProviders(/*#__PURE__*/_jsx(AttachmentCard, {
77
- positionIndex: 0,
78
- attachment: buildAttachment({
79
- name: 'photo',
80
- type: 'png'
81
- })
82
- }));
83
- expect(screen.getByTestId('attachment-image')).toHaveTextContent('photo');
84
- });
85
- it('delegates audio attachments to AttachmentCardAudio', function () {
86
- renderWithProviders(/*#__PURE__*/_jsx(AttachmentCard, {
87
- positionIndex: 0,
88
- attachment: buildAttachment({
89
- name: 'voice',
90
- type: 'mp3'
91
- })
92
- }));
93
- expect(screen.getByTestId('attachment-audio')).toBeInTheDocument();
94
- });
95
- it('calls onDownload when provided without handleAction', function () {
96
- var onDownload = jest.fn();
97
- renderWithProviders(/*#__PURE__*/_jsx(AttachmentCard, {
98
- positionIndex: 2,
99
- attachment: buildAttachment(),
100
- onDownload: onDownload
101
- }));
102
- var downloadButton = document.querySelector('button[data-icon-only="true"]');
103
- expect(downloadButton).toBeTruthy();
104
- fireEvent.click(downloadButton);
105
- expect(onDownload).toHaveBeenCalled();
106
- });
107
- it('shows the preview action in knowledge section when upload is done', function () {
108
- var onClick = jest.fn();
109
- renderWithProviders(/*#__PURE__*/_jsx(AttachmentCard, {
110
- positionIndex: 0,
111
- attachment: buildAttachment({
112
- status: 'done'
113
- }),
114
- handleAction: jest.fn(),
115
- abmKnowledgeSection: true,
116
- onClick: onClick
117
- }));
118
- var actionButtons = document.querySelectorAll('button[data-icon-only="true"]');
119
- fireEvent.click(actionButtons[actionButtons.length - 1]);
120
- expect(onClick).toHaveBeenCalled();
121
- });
122
- });
123
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJmaXJlRXZlbnQiLCJyZW5kZXJXaXRoUHJvdmlkZXJzIiwic2NyZWVuIiwiQXR0YWNobWVudENhcmQiLCJqc3giLCJfanN4IiwiamVzdCIsIm1vY2siLCJSZWFjdCIsInJlcXVpcmVBY3R1YWwiLCJJY29uQnlGaWxlVHlwZSIsImNyZWF0ZUVsZW1lbnQiLCJBdHRhY2htZW50Q2FyZEltYWdlIiwiX3JlZiIsImF0dGFjaG1lbnQiLCJjaGlsZHJlbiIsIm5hbWUiLCJBdHRhY2htZW50Q2FyZEF1ZGlvIiwidXNlUmVzaXplTGlzdGVuZXIiLCJzaG93VG9vbHRpcCIsImJ1aWxkQXR0YWNobWVudCIsIm92ZXJyaWRlcyIsImFyZ3VtZW50cyIsImxlbmd0aCIsInVuZGVmaW5lZCIsIl9vYmplY3RTcHJlYWQiLCJpZCIsInR5cGUiLCJzaXplIiwiZmlsZSIsIkZpbGUiLCJkZXNjcmliZSIsIml0IiwiaGFuZGxlQWN0aW9uIiwiZm4iLCJwb3NpdGlvbkluZGV4IiwiZXhwZWN0IiwiZ2V0QnlUZXh0IiwidG9CZUluVGhlRG9jdW1lbnQiLCJhY3Rpb25CdXR0b25zIiwiZG9jdW1lbnQiLCJxdWVyeVNlbGVjdG9yQWxsIiwidG9CZUdyZWF0ZXJUaGFuT3JFcXVhbCIsImNsaWNrIiwidG9IYXZlQmVlbkNhbGxlZFdpdGgiLCJhY3Rpb24iLCJnZXRCeVRlc3RJZCIsInRvSGF2ZVRleHRDb250ZW50Iiwib25Eb3dubG9hZCIsImRvd25sb2FkQnV0dG9uIiwicXVlcnlTZWxlY3RvciIsInRvQmVUcnV0aHkiLCJ0b0hhdmVCZWVuQ2FsbGVkIiwib25DbGljayIsInN0YXR1cyIsImFibUtub3dsZWRnZVNlY3Rpb24iXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9hdG9tcy9BdHRhY2htZW50Q2FyZC9BdHRhY2htZW50Q2FyZC5zcGVjLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmaXJlRXZlbnQsIHJlbmRlcldpdGhQcm92aWRlcnMsIHNjcmVlbiB9IGZyb20gJy4uLy4uLy4uL3Rlc3QvdGVzdC11dGlscydcbmltcG9ydCB7IEF0dGFjaG1lbnRDYXJkIH0gZnJvbSAnLi9BdHRhY2htZW50Q2FyZCdcblxuamVzdC5tb2NrKCcuLi8uLi9tb2xlY3VsZXMvQ2hhdEZvb3Rlci9DaGF0Rm9vdGVyJywgKCkgPT4ge1xuICBjb25zdCBSZWFjdCA9IGplc3QucmVxdWlyZUFjdHVhbCgncmVhY3QnKSBhcyB0eXBlb2YgaW1wb3J0KCdyZWFjdCcpXG4gIHJldHVybiB7XG4gICAgSWNvbkJ5RmlsZVR5cGU6IHtcbiAgICAgICdhcHBsaWNhdGlvbi9wZGYnOiBSZWFjdC5jcmVhdGVFbGVtZW50KCdzcGFuJywgeyAnZGF0YS10ZXN0aWQnOiAncGRmLWljb24nIH0pLFxuICAgIH0sXG4gIH1cbn0pXG5cbmplc3QubW9jaygnLi9BdHRhY2htZW50Q2FyZEltYWdlJywgKCkgPT4gKHtcbiAgQXR0YWNobWVudENhcmRJbWFnZTogKHsgYXR0YWNobWVudCB9OiB7IGF0dGFjaG1lbnQ6IHsgbmFtZTogc3RyaW5nIH0gfSkgPT4gKFxuICAgIDxkaXYgZGF0YS10ZXN0aWQ9XCJhdHRhY2htZW50LWltYWdlXCI+e2F0dGFjaG1lbnQubmFtZX08L2Rpdj5cbiAgKSxcbn0pKVxuXG5qZXN0Lm1vY2soJy4vQXR0YWNobWVudENhcmRBdWRpbycsICgpID0+ICh7XG4gIEF0dGFjaG1lbnRDYXJkQXVkaW86ICgpID0+IDxkaXYgZGF0YS10ZXN0aWQ9XCJhdHRhY2htZW50LWF1ZGlvXCIgLz4sXG59KSlcblxuamVzdC5tb2NrKCcuLi8uLi8uLi9ob29rcy91c2VSZXNpemUnLCAoKSA9PiAoe1xuICB1c2VSZXNpemVMaXN0ZW5lcjogKCkgPT4gKHsgc2hvd1Rvb2x0aXA6IGZhbHNlIH0pLFxufSkpXG5cbnR5cGUgVGVzdEF0dGFjaG1lbnQgPSB7XG4gIGlkOiBzdHJpbmdcbiAgbmFtZTogc3RyaW5nXG4gIHR5cGU6IHN0cmluZ1xuICBzaXplOiBudW1iZXJcbiAgZmlsZTogRmlsZVxuICBzdGF0dXM/OiBzdHJpbmdcbn1cblxuY29uc3QgYnVpbGRBdHRhY2htZW50ID0gKG92ZXJyaWRlczogUGFydGlhbDxUZXN0QXR0YWNobWVudD4gPSB7fSk6IFRlc3RBdHRhY2htZW50ID0+ICh7XG4gIGlkOiAnZmlsZS0xJyxcbiAgbmFtZTogJ3JlcG9ydCcsXG4gIHR5cGU6ICdwZGYnLFxuICBzaXplOiAyMDQ4LFxuICBmaWxlOiBuZXcgRmlsZShbXSwgJ3JlcG9ydC5wZGYnLCB7IHR5cGU6ICdhcHBsaWNhdGlvbi9wZGYnIH0pLFxuICAuLi5vdmVycmlkZXMsXG59KVxuXG5kZXNjcmliZSgnQXR0YWNobWVudENhcmQnLCAoKSA9PiB7XG4gIGl0KCdyZW5kZXJzIGEgZ2VuZXJpYyBmaWxlIGNhcmQgd2l0aCBuYW1lIGFuZCBhY3Rpb25zJywgKCkgPT4ge1xuICAgIGNvbnN0IGhhbmRsZUFjdGlvbiA9IGplc3QuZm4oKVxuXG4gICAgcmVuZGVyV2l0aFByb3ZpZGVycyhcbiAgICAgIDxBdHRhY2htZW50Q2FyZCBwb3NpdGlvbkluZGV4PXswfSBhdHRhY2htZW50PXtidWlsZEF0dGFjaG1lbnQoKSBhcyBuZXZlcn0gaGFuZGxlQWN0aW9uPXtoYW5kbGVBY3Rpb259IC8+XG4gICAgKVxuXG4gICAgZXhwZWN0KHNjcmVlbi5nZXRCeVRleHQoJ3JlcG9ydC5wZGYnKSkudG9CZUluVGhlRG9jdW1lbnQoKVxuXG4gICAgY29uc3QgYWN0aW9uQnV0dG9ucyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ2J1dHRvbltkYXRhLWljb24tb25seT1cInRydWVcIl0nKVxuICAgIGV4cGVjdChhY3Rpb25CdXR0b25zLmxlbmd0aCkudG9CZUdyZWF0ZXJUaGFuT3JFcXVhbCgyKVxuICAgIGZpcmVFdmVudC5jbGljayhhY3Rpb25CdXR0b25zWzFdKVxuICAgIGV4cGVjdChoYW5kbGVBY3Rpb24pLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKHsgaWQ6IDAsIGFjdGlvbjogJ2RlbGV0ZScgfSlcbiAgfSlcblxuICBpdCgnZGVsZWdhdGVzIGltYWdlIGF0dGFjaG1lbnRzIHRvIEF0dGFjaG1lbnRDYXJkSW1hZ2UnLCAoKSA9PiB7XG4gICAgcmVuZGVyV2l0aFByb3ZpZGVycyhcbiAgICAgIDxBdHRhY2htZW50Q2FyZCBwb3NpdGlvbkluZGV4PXswfSBhdHRhY2htZW50PXtidWlsZEF0dGFjaG1lbnQoeyBuYW1lOiAncGhvdG8nLCB0eXBlOiAncG5nJyB9KSBhcyBuZXZlcn0gLz5cbiAgICApXG5cbiAgICBleHBlY3Qoc2NyZWVuLmdldEJ5VGVzdElkKCdhdHRhY2htZW50LWltYWdlJykpLnRvSGF2ZVRleHRDb250ZW50KCdwaG90bycpXG4gIH0pXG5cbiAgaXQoJ2RlbGVnYXRlcyBhdWRpbyBhdHRhY2htZW50cyB0byBBdHRhY2htZW50Q2FyZEF1ZGlvJywgKCkgPT4ge1xuICAgIHJlbmRlcldpdGhQcm92aWRlcnMoXG4gICAgICA8QXR0YWNobWVudENhcmQgcG9zaXRpb25JbmRleD17MH0gYXR0YWNobWVudD17YnVpbGRBdHRhY2htZW50KHsgbmFtZTogJ3ZvaWNlJywgdHlwZTogJ21wMycgfSkgYXMgbmV2ZXJ9IC8+XG4gICAgKVxuXG4gICAgZXhwZWN0KHNjcmVlbi5nZXRCeVRlc3RJZCgnYXR0YWNobWVudC1hdWRpbycpKS50b0JlSW5UaGVEb2N1bWVudCgpXG4gIH0pXG5cbiAgaXQoJ2NhbGxzIG9uRG93bmxvYWQgd2hlbiBwcm92aWRlZCB3aXRob3V0IGhhbmRsZUFjdGlvbicsICgpID0+IHtcbiAgICBjb25zdCBvbkRvd25sb2FkID0gamVzdC5mbigpXG5cbiAgICByZW5kZXJXaXRoUHJvdmlkZXJzKFxuICAgICAgPEF0dGFjaG1lbnRDYXJkIHBvc2l0aW9uSW5kZXg9ezJ9IGF0dGFjaG1lbnQ9e2J1aWxkQXR0YWNobWVudCgpIGFzIG5ldmVyfSBvbkRvd25sb2FkPXtvbkRvd25sb2FkfSAvPlxuICAgIClcblxuICAgIGNvbnN0IGRvd25sb2FkQnV0dG9uID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignYnV0dG9uW2RhdGEtaWNvbi1vbmx5PVwidHJ1ZVwiXScpXG4gICAgZXhwZWN0KGRvd25sb2FkQnV0dG9uKS50b0JlVHJ1dGh5KClcbiAgICBmaXJlRXZlbnQuY2xpY2soZG93bmxvYWRCdXR0b24gYXMgSFRNTEJ1dHRvbkVsZW1lbnQpXG4gICAgZXhwZWN0KG9uRG93bmxvYWQpLnRvSGF2ZUJlZW5DYWxsZWQoKVxuICB9KVxuXG4gIGl0KCdzaG93cyB0aGUgcHJldmlldyBhY3Rpb24gaW4ga25vd2xlZGdlIHNlY3Rpb24gd2hlbiB1cGxvYWQgaXMgZG9uZScsICgpID0+IHtcbiAgICBjb25zdCBvbkNsaWNrID0gamVzdC5mbigpXG5cbiAgICByZW5kZXJXaXRoUHJvdmlkZXJzKFxuICAgICAgPEF0dGFjaG1lbnRDYXJkXG4gICAgICAgIHBvc2l0aW9uSW5kZXg9ezB9XG4gICAgICAgIGF0dGFjaG1lbnQ9e2J1aWxkQXR0YWNobWVudCh7IHN0YXR1czogJ2RvbmUnIH0pIGFzIG5ldmVyfVxuICAgICAgICBoYW5kbGVBY3Rpb249e2plc3QuZm4oKX1cbiAgICAgICAgYWJtS25vd2xlZGdlU2VjdGlvblxuICAgICAgICBvbkNsaWNrPXtvbkNsaWNrfVxuICAgICAgLz5cbiAgICApXG5cbiAgICBjb25zdCBhY3Rpb25CdXR0b25zID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnYnV0dG9uW2RhdGEtaWNvbi1vbmx5PVwidHJ1ZVwiXScpXG4gICAgZmlyZUV2ZW50LmNsaWNrKGFjdGlvbkJ1dHRvbnNbYWN0aW9uQnV0dG9ucy5sZW5ndGggLSAxXSlcbiAgICBleHBlY3Qob25DbGljaykudG9IYXZlQmVlbkNhbGxlZCgpXG4gIH0pXG59KVxuIl0sIm1hcHBpbmdzIjoiOzs7QUFBQSxTQUFTQSxTQUFTLEVBQUVDLG1CQUFtQixFQUFFQyxNQUFNLFFBQVEsMEJBQTBCO0FBQ2pGLFNBQVNDLGNBQWMsUUFBUSxrQkFBa0I7QUFBQSxTQUFBQyxHQUFBLElBQUFDLElBQUE7QUFFakRDLElBQUksQ0FBQ0MsSUFBSSxD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
@@ -1,65 +0,0 @@
1
- import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
2
- import _createClass from "@babel/runtime/helpers/createClass";
3
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
4
- export var formatTime = function formatTime(seconds) {
5
- var mins = Math.floor(seconds / 60);
6
- var secs = Math.floor(seconds % 60);
7
- return "".concat(mins, ":").concat(secs.toString().padStart(2, '0'));
8
- };
9
- export var formatTimeWithHours = function formatTimeWithHours(seconds) {
10
- var hours = Math.floor(seconds / 3600);
11
- var mins = Math.floor(seconds % 3600 / 60);
12
- var secs = Math.floor(seconds % 60);
13
- if (hours > 0) {
14
- return "".concat(hours, ":").concat(mins.toString().padStart(2, '0'), ":").concat(secs.toString().padStart(2, '0'));
15
- }
16
- return "".concat(mins, ":").concat(secs.toString().padStart(2, '0'));
17
- };
18
- export var resolveAudioFileExtension = function resolveAudioFileExtension(name, mimeOrExt) {
19
- var fileNameParts = name.split('.');
20
- if (fileNameParts.length > 1) {
21
- var _fileNameParts$pop;
22
- return ((_fileNameParts$pop = fileNameParts.pop()) === null || _fileNameParts$pop === void 0 ? void 0 : _fileNameParts$pop.toLowerCase()) || '';
23
- }
24
- return (mimeOrExt === null || mimeOrExt === void 0 ? void 0 : mimeOrExt.toLowerCase()) || '';
25
- };
26
- export var resolveFullAudioFileName = function resolveFullAudioFileName(name, mimeOrExt) {
27
- if (name.includes('.')) return name;
28
- return mimeOrExt ? "".concat(name, ".").concat(mimeOrExt) : name;
29
- };
30
- export var resolveAudioAttachmentMeta = function resolveAudioAttachmentMeta(attachment) {
31
- var fileExtension = resolveAudioFileExtension(attachment.name, attachment.type);
32
- var fullFileName = resolveFullAudioFileName(attachment.name, attachment.type);
33
- return {
34
- fileExtension: fileExtension,
35
- fullFileName: fullFileName
36
- };
37
- };
38
-
39
- /** Gestor global de audio para evitar múltiples reproducciones simultáneas. */
40
- export var AudioManager = /*#__PURE__*/function () {
41
- function AudioManager() {
42
- _classCallCheck(this, AudioManager);
43
- _defineProperty(this, "activeAudios", new Set());
44
- }
45
- return _createClass(AudioManager, [{
46
- key: "register",
47
- value: function register(audio) {
48
- var _this = this;
49
- this.activeAudios.add(audio);
50
- return function () {
51
- _this.activeAudios["delete"](audio);
52
- };
53
- }
54
- }, {
55
- key: "pauseAllExcept",
56
- value: function pauseAllExcept(currentAudio) {
57
- this.activeAudios.forEach(function (audio) {
58
- if (audio !== currentAudio && !audio.paused) {
59
- audio.pause();
60
- }
61
- });
62
- }
63
- }]);
64
- }();
65
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJmb3JtYXRUaW1lIiwic2Vjb25kcyIsIm1pbnMiLCJNYXRoIiwiZmxvb3IiLCJzZWNzIiwiY29uY2F0IiwidG9TdHJpbmciLCJwYWRTdGFydCIsImZvcm1hdFRpbWVXaXRoSG91cnMiLCJob3VycyIsInJlc29sdmVBdWRpb0ZpbGVFeHRlbnNpb24iLCJuYW1lIiwibWltZU9yRXh0IiwiZmlsZU5hbWVQYXJ0cyIsInNwbGl0IiwibGVuZ3RoIiwiX2ZpbGVOYW1lUGFydHMkcG9wIiwicG9wIiwidG9Mb3dlckNhc2UiLCJyZXNvbHZlRnVsbEF1ZGlvRmlsZU5hbWUiLCJpbmNsdWRlcyIsInJlc29sdmVBdWRpb0F0dGFjaG1lbnRNZXRhIiwiYXR0YWNobWVudCIsImZpbGVFeHRlbnNpb24iLCJ0eXBlIiwiZnVsbEZpbGVOYW1lIiwiQXVkaW9NYW5hZ2VyIiwiX2NsYXNzQ2FsbENoZWNrIiwiX2RlZmluZVByb3BlcnR5IiwiU2V0IiwiX2NyZWF0ZUNsYXNzIiwia2V5IiwidmFsdWUiLCJyZWdpc3RlciIsImF1ZGlvIiwiX3RoaXMiLCJhY3RpdmVBdWRpb3MiLCJhZGQiLCJwYXVzZUFsbEV4Y2VwdCIsImN1cnJlbnRBdWRpbyIsImZvckVhY2giLCJwYXVzZWQiLCJwYXVzZSJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2F0b21zL0F0dGFjaG1lbnRDYXJkL0F0dGFjaG1lbnRDYXJkQXVkaW8uaGVscGVycy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBdHRhY2htZW50RmlsZSB9IGZyb20gJy4uLy4uL21vbGVjdWxlcy9DaGF0Rm9vdGVyL0NoYXRGb290ZXInXG5cbmV4cG9ydCBjb25zdCBmb3JtYXRUaW1lID0gKHNlY29uZHM6IG51bWJlcik6IHN0cmluZyA9PiB7XG4gIGNvbnN0IG1pbnMgPSBNYXRoLmZsb29yKHNlY29uZHMgLyA2MClcbiAgY29uc3Qgc2VjcyA9IE1hdGguZmxvb3Ioc2Vjb25kcyAlIDYwKVxuICByZXR1cm4gYCR7bWluc306JHtzZWNzLnRvU3RyaW5nKCkucGFkU3RhcnQoMiwgJzAnKX1gXG59XG5cbmV4cG9ydCBjb25zdCBmb3JtYXRUaW1lV2l0aEhvdXJzID0gKHNlY29uZHM6IG51bWJlcik6IHN0cmluZyA9PiB7XG4gIGNvbnN0IGhvdXJzID0gTWF0aC5mbG9vcihzZWNvbmRzIC8gMzYwMClcbiAgY29uc3QgbWlucyA9IE1hdGguZmxvb3IoKHNlY29uZHMgJSAzNjAwKSAvIDYwKVxuICBjb25zdCBzZWNzID0gTWF0aC5mbG9vcihzZWNvbmRzICUgNjApXG4gIGlmIChob3VycyA+IDApIHtcbiAgICByZXR1cm4gYCR7aG91cnN9OiR7bWlucy50b1N0cmluZygpLnBhZFN0YXJ0KDIsICcwJyl9OiR7c2Vjcy50b1N0cmluZygpLnBhZFN0YXJ0KDIsICcwJyl9YFxuICB9XG4gIHJldHVybiBgJHttaW5zfToke3NlY3MudG9TdHJpbmcoKS5wYWRTdGFydCgyLCAnMCcpfWBcbn1cblxuZXhwb3J0IGNvbnN0IHJlc29sdmVBdWRpb0ZpbGVFeHRlbnNpb24gPSAobmFtZTogc3RyaW5nLCBtaW1lT3JFeHQ/OiBzdHJpbmcpOiBzdHJpbmcgPT4ge1xuICBjb25zdCBmaWxlTmFtZVBhcnRzID0gbmFtZS5zcGxpdCgnLicpXG4gIGlmIChmaWxlTmFtZVBhcnRzLmxlbmd0aCA+IDEpIHtcbiAgICByZXR1cm4gZmlsZU5hbWVQYXJ0cy5wb3AoKT8udG9Mb3dlckNhc2UoKSB8fCAnJ1xuICB9XG4gIHJldHVybiBtaW1lT3JFeHQ/LnRvTG93ZXJDYXNlKCkgfHwgJydcbn1cblxuZXhwb3J0IGNvbnN0IHJlc29sdmVGdWxsQXVkaW9GaWxlTmFtZSA9IChuYW1lOiBzdHJpbmcsIG1pbWVPckV4dD86IHN0cmluZyk6IHN0cmluZyA9PiB7XG4gIGlmIChuYW1lLmluY2x1ZGVzKCcuJykpIHJldHVybiBuYW1lXG4gIHJldHVybiBtaW1lT3JFeHQgPyBgJHtuYW1lfS4ke21pbWVPckV4dH1gIDogbmFtZVxufVxuXG5leHBvcnQgY29uc3QgcmVzb2x2ZUF1ZGlvQXR0YWNobWVudE1ldGEgPSAoYXR0YWNobWVudDogUGljazxBdHRhY2htZW50RmlsZSwgJ25hbWUnIHwgJ3R5cGUnPikgPT4ge1xuICBjb25zdCBmaWxlRXh0ZW5zaW9uID0gcmVzb2x2ZUF1ZGlvRmlsZUV4dGVuc2lvbihhdHRhY2htZW50Lm5hbWUsIGF0dGFjaG1lbnQudHlwZSlcbiAgY29uc3QgZnVsbEZpbGVOYW1lID0gcmVzb2x2ZUZ1bGxBdWRpb0ZpbGVOYW1lKGF0dGFjaG1lbnQubmFtZSwgYXR0YWNobWVudC50eXBlKVxuICByZXR1cm4geyBmaWxlRXh0ZW5zaW9uLCBmdWxsRmlsZU5hbWUgfVxufVxuXG4vKiogR2VzdG9yIGdsb2JhbCBkZSBhdWRpbyBwYXJhIGV2aXRhciBtw7psdGlwbGVzIHJlcHJvZHVjY2lvbmVzIHNpbXVsdMOhbmVhcy4gKi9cbmV4cG9ydCBjbGFzcyBBdWRpb01hbmFnZXIge1xuICBwcml2YXRlIGFjdGl2ZUF1ZGlvczogU2V0PEhUTUxBdWRpb0VsZW1lbnQ+ID0gbmV3IFNldCgpXG5cbiAgcmVnaXN0ZXIoYXVkaW86IEhUTUxBdWRpb0VsZW1lbnQpOiAoKSA9PiB2b2lkIHtcbiAgICB0aGlzLmFjdGl2ZUF1ZGlvcy5hZGQoYXVkaW8pXG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIHRoaXMuYWN0aXZlQXVkaW9zLmRlbGV0ZShhdWRpbylcbiAgICB9XG4gIH1cblxuICBwYXVzZUFsbEV4Y2VwdChjdXJyZW50QXVkaW86IEhUTUxBdWRpb0VsZW1lbnQpOiB2b2lkIHtcbiAgICB0aGlzLmFjdGl2ZUF1ZGlvcy5mb3JFYWNoKGF1ZGlvID0+IHtcbiAgICAgIGlmIChhdWRpbyAhPT0gY3VycmVudEF1ZGlvICYmICFhdWRpby5wYXVzZWQpIHtcbiAgICAgICAgYXVkaW8ucGF1c2UoKVxuICAgICAgfVxuICAgIH0pXG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7O0FBRUEsT0FBTyxJQUFNQSxVQUFVLEdBQUcsU0FBYkEsVUFBVUEsQ0FBSUMsT0FBZSxFQUFhO0VBQ3JELElBQU1DLElBQUksR0FBR0MsSUFBSSxDQUFDQyxLQUFLLENBQUNILE9BQU8sR0FBRyxFQUFFLENBQUM7RUFDckMsSUFBTUksSUFBSSxHQUFHRixJQUFJLENBQUNDLEtBQUssQ0FBQ0gsT0FBTyxHQUFHLEVBQUUsQ0FBQztFQUNyQyxVQUFBSyxNQUFBLENBQVVKLElBQUksT0FBQUksTUFBQSxDQUFJRCxJQUFJLENBQUNFLFFBQVEsQ0FBQyxDQUFDLENBQUNDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDO0FBQ3BELENBQUM7QUFFRCxPQUFPLElBQU1DLG1CQUFtQixHQUFHLFNBQXRCQSxtQkFBbUJBLENBQUlSLE9BQWUsRUFBYTtFQUM5RCxJQUFNUyxLQUFLLEdBQUdQLElBQUksQ0FBQ0MsS0FBSyxDQUFDSCxPQUFPLEdBQUcsSUFBSSxDQUFDO0VBQ3hDLElBQU1DLElBQUksR0FBR0MsSUFBSSxDQUFDQyxLQUFLLENBQUVILE9BQU8sR0FBRyxJQUFJLEdBQUksRUFBRSxDQUFDO0VBQzlDLElBQU1JLElBQUksR0FBR0YsSUFBSSxDQUFDQyxLQUFLLENBQUNILE9BQU8sR0FBRyxFQUFFLENBQUM7RUFDckMsSUFBSVMsS0FBSyxHQUFHLENBQUMsRUFBRTtJQUNiLFVBQUFKLE1BQUEsQ0FBVUksS0FBSyxPQUFBSixNQUFBLENBQUlKLElBQUksQ0FBQ0ssUUFBUSxDQUFDLENBQUMsQ0FBQ0MsUUFBUSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsT0FBQUYsTUFBQSxDQUFJRCxJQUFJLENBQUNFLFFBQVEsQ0FBQyxDQUFDLENBQUNDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDO0VBQ3pGO0VBQ0EsVUFBQUYsTUFBQSxDQUFVSixJQUFJLE9BQUFJLE1BQUEsQ0FBSUQsSUFBSSxDQUFDRSxRQUFRLENBQUMsQ0FBQyxDQUFDQyxRQUFRLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQztBQUNwRCxDQUFDO0FBRUQsT0FBTyxJQUFNRyx5QkFBeUIsR0FBRyxTQUE1QkEseUJBQXlCQSxDQUFJQyxJQUFZLEVBQUVDLFNBQWtCLEVBQWE7RUFDckYsSUFBTUMsYUFBYSxHQUFHRixJQUFJLENBQUNHLEtBQUssQ0FBQyxHQUFHLENBQUM7RUFDckMsSUFBSUQsYUFBYSxDQUFDRSxNQUFNLEdBQUcsQ0FBQyxFQUFFO0lBQUEsSUFBQUMsa0JBQUE7SUFDNUIsT0FBTyxFQUFBQSxrQkFBQSxHQUFBSCxhQUFhLENBQUNJLEdBQUcsQ0FBQyxDQUFDLGNBQUFELGtCQUFBLHVCQUFuQkEsa0JBQUEsQ0FBcUJFLFdBQVcsQ0FBQyxDQUFDLEtBQUksRUFBRTtFQUNqRDtFQUNBLE9BQU8sQ0FBQU4sU0FBUyxhQUFUQSxTQUFTLHVCQUFUQSxTQUFTLENBQUVNLFdBQVcsQ0FBQyxDQUFDLEtBQUksRUFBRTtBQUN2QyxDQUFDO0FBRUQsT0FBTyxJQUFNQyx3QkFBd0IsR0FBRyxTQUEzQkEsd0JBQXdCQSxDQUFJUixJQUFZLEVBQUVDLFNBQWtCLEVBQWE7RUFDcEYsSUFBSUQsSUFBSSxDQUFDUyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUUsT0FBT1QsSUFBSTtFQUNuQyxPQUFPQyxTQUFTLE1BQUFQLE1BQUEsQ0FBTU0sSUFBSSxPQUFBTixNQUFBLENBQUlPLFNBQVMsSUFBS0QsSUFBSTtBQUNsRCxDQUFDO0FBRUQsT0FBTyxJQUFNVSwwQkFBMEIsR0FBRyxTQUE3QkEsMEJBQTBCQSxDQUFJQyxVQUFpRCxFQUFLO0VBQy9GLElBQU1DLGFBQWEsR0FBR2IseUJBQXlCLENBQUNZLFVBQVUsQ0FBQ1gsSUFBSSxFQUFFVyxVQUFVLENBQUNFLElBQUksQ0FBQztFQUNqRixJQUFNQyxZQUFZLEdBQUdOLHdCQUF3QixDQUFDRyxVQUFVLENBQUNYLElBQUksRUFBRVcsVUFBVSxDQUFDRSxJQUFJLENBQUM7RUFDL0UsT0FBTztJQUFFRCxhQUFhLEVBQWJBLGFBQWE7SUFBRUUsWUFBWSxFQUFaQTtFQUFhLENBQUM7QUFDeEMsQ0FBQzs7QUFFRDtBQUNBLFdBQWFDLFlBQVk7RUFBQSxTQUFBQSxhQUFBO0lBQUFDLGVBQUEsT0FBQUQsWUFBQTtJQUFBRSxlQUFBLHVCQUN1QixJQUFJQyxHQUFHLENBQUMsQ0FBQztFQUFBO0VBQUEsT0FBQUMsWUFBQSxDQUFBSixZQUFBO0lBQUFLLEdBQUE7SUFBQUMsS0FBQSxFQUV2RCxTQUFBQyxRQUFRQSxDQUFDQyxLQUF1QixFQUFjO01BQUEsSUFBQUMsS0FBQTtNQUM1QyxJQUFJLENBQUNDLFlBQVksQ0FBQ0MsR0FBRyxDQUFDSCxLQUFLLENBQUM7TUFDNUIsT0FBTyxZQUFNO1FBQ1hDLEtBQUksQ0FBQ0MsWUFBWSxVQUFPLENBQUNGLEtBQUssQ0FBQztNQUNqQyxDQUFDO0lBQ0g7RUFBQztJQUFBSCxHQUFBO0lBQUFDLEtBQUEsRUFFRCxTQUFBTSxjQUFjQSxDQUFDQyxZQUE4QixFQUFRO01BQ25ELElBQUksQ0FBQ0gsWUFBWSxDQUFDSSxPQUFPLENBQUMsVUFBQU4sS0FBSyxFQUFJO1FBQ2pDLElBQUlBLEtBQUssS0FBS0ssWUFBWSxJQUFJLENBQUNMLEtBQUssQ0FBQ08sTUFBTSxFQUFFO1VBQzNDUCxLQUFLLENBQUNRLEtBQUssQ0FBQyxDQUFDO1FBQ2Y7TUFDRixDQUFDLENBQUM7SUFDSjtFQUFDO0FBQUEiLCJpZ25vcmVMaXN0IjpbXX0=
@@ -1,66 +0,0 @@
1
- import { AudioManager, formatTime, formatTimeWithHours, resolveAudioAttachmentMeta, resolveAudioFileExtension, resolveFullAudioFileName } from './AttachmentCardAudio.helpers';
2
- describe('AttachmentCardAudio.helpers', function () {
3
- describe('formatTime', function () {
4
- it('formats seconds as mm:ss', function () {
5
- expect(formatTime(0)).toBe('0:00');
6
- expect(formatTime(65)).toBe('1:05');
7
- expect(formatTime(125)).toBe('2:05');
8
- });
9
- });
10
- describe('formatTimeWithHours', function () {
11
- it('formats short durations without hours', function () {
12
- expect(formatTimeWithHours(90)).toBe('1:30');
13
- });
14
- it('includes hours for long durations', function () {
15
- expect(formatTimeWithHours(3661)).toBe('1:01:01');
16
- });
17
- });
18
- describe('resolveAudioFileExtension', function () {
19
- it('reads the extension from the file name or falls back to type', function () {
20
- expect(resolveAudioFileExtension('voice.mp3')).toBe('mp3');
21
- expect(resolveAudioFileExtension('voice', 'wav')).toBe('wav');
22
- });
23
- });
24
- describe('resolveFullAudioFileName', function () {
25
- it('keeps names with extension and appends type when missing', function () {
26
- expect(resolveFullAudioFileName('voice.mp3')).toBe('voice.mp3');
27
- expect(resolveFullAudioFileName('voice', 'mp3')).toBe('voice.mp3');
28
- });
29
- });
30
- describe('resolveAudioAttachmentMeta', function () {
31
- it('combines extension and display name', function () {
32
- expect(resolveAudioAttachmentMeta({
33
- name: 'clip',
34
- type: 'ogg'
35
- })).toEqual({
36
- fileExtension: 'ogg',
37
- fullFileName: 'clip.ogg'
38
- });
39
- });
40
- });
41
- describe('AudioManager', function () {
42
- it('pauses every active audio except the current one', function () {
43
- var manager = new AudioManager();
44
- var current = {
45
- paused: false,
46
- pause: jest.fn()
47
- };
48
- var other = {
49
- paused: false,
50
- pause: jest.fn()
51
- };
52
- var alreadyPaused = {
53
- paused: true,
54
- pause: jest.fn()
55
- };
56
- manager.register(current);
57
- manager.register(other);
58
- manager.register(alreadyPaused);
59
- manager.pauseAllExcept(current);
60
- expect(other.pause).toHaveBeenCalled();
61
- expect(current.pause).not.toHaveBeenCalled();
62
- expect(alreadyPaused.pause).not.toHaveBeenCalled();
63
- });
64
- });
65
- });
66
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJBdWRpb01hbmFnZXIiLCJmb3JtYXRUaW1lIiwiZm9ybWF0VGltZVdpdGhIb3VycyIsInJlc29sdmVBdWRpb0F0dGFjaG1lbnRNZXRhIiwicmVzb2x2ZUF1ZGlvRmlsZUV4dGVuc2lvbiIsInJlc29sdmVGdWxsQXVkaW9GaWxlTmFtZSIsImRlc2NyaWJlIiwiaXQiLCJleHBlY3QiLCJ0b0JlIiwibmFtZSIsInR5cGUiLCJ0b0VxdWFsIiwiZmlsZUV4dGVuc2lvbiIsImZ1bGxGaWxlTmFtZSIsIm1hbmFnZXIiLCJjdXJyZW50IiwicGF1c2VkIiwicGF1c2UiLCJqZXN0IiwiZm4iLCJvdGhlciIsImFscmVhZHlQYXVzZWQiLCJyZWdpc3RlciIsInBhdXNlQWxsRXhjZXB0IiwidG9IYXZlQmVlbkNhbGxlZCIsIm5vdCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2F0b21zL0F0dGFjaG1lbnRDYXJkL0F0dGFjaG1lbnRDYXJkQXVkaW8uaGVscGVycy5zcGVjLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEF1ZGlvTWFuYWdlcixcbiAgZm9ybWF0VGltZSxcbiAgZm9ybWF0VGltZVdpdGhIb3VycyxcbiAgcmVzb2x2ZUF1ZGlvQXR0YWNobWVudE1ldGEsXG4gIHJlc29sdmVBdWRpb0ZpbGVFeHRlbnNpb24sXG4gIHJlc29sdmVGdWxsQXVkaW9GaWxlTmFtZSxcbn0gZnJvbSAnLi9BdHRhY2htZW50Q2FyZEF1ZGlvLmhlbHBlcnMnXG5cbmRlc2NyaWJlKCdBdHRhY2htZW50Q2FyZEF1ZGlvLmhlbHBlcnMnLCAoKSA9PiB7XG4gIGRlc2NyaWJlKCdmb3JtYXRUaW1lJywgKCkgPT4ge1xuICAgIGl0KCdmb3JtYXRzIHNlY29uZHMgYXMgbW06c3MnLCAoKSA9PiB7XG4gICAgICBleHBlY3QoZm9ybWF0VGltZSgwKSkudG9CZSgnMDowMCcpXG4gICAgICBleHBlY3QoZm9ybWF0VGltZSg2NSkpLnRvQmUoJzE6MDUnKVxuICAgICAgZXhwZWN0KGZvcm1hdFRpbWUoMTI1KSkudG9CZSgnMjowNScpXG4gICAgfSlcbiAgfSlcblxuICBkZXNjcmliZSgnZm9ybWF0VGltZVdpdGhIb3VycycsICgpID0+IHtcbiAgICBpdCgnZm9ybWF0cyBzaG9ydCBkdXJhdGlvbnMgd2l0aG91dCBob3VycycsICgpID0+IHtcbiAgICAgIGV4cGVjdChmb3JtYXRUaW1lV2l0aEhvdXJzKDkwKSkudG9CZSgnMTozMCcpXG4gICAgfSlcblxuICAgIGl0KCdpbmNsdWRlcyBob3VycyBmb3IgbG9uZyBkdXJhdGlvbnMnLCAoKSA9PiB7XG4gICAgICBleHBlY3QoZm9ybWF0VGltZVdpdGhIb3VycygzNjYxKSkudG9CZSgnMTowMTowMScpXG4gICAgfSlcbiAgfSlcblxuICBkZXNjcmliZSgncmVzb2x2ZUF1ZGlvRmlsZUV4dGVuc2lvbicsICgpID0+IHtcbiAgICBpdCgncmVhZHMgdGhlIGV4dGVuc2lvbiBmcm9tIHRoZSBmaWxlIG5hbWUgb3IgZmFsbHMgYmFjayB0byB0eXBlJywgKCkgPT4ge1xuICAgICAgZXhwZWN0KHJlc29sdmVBdWRpb0ZpbGVFeHRlbnNpb24oJ3ZvaWNlLm1wMycpKS50b0JlKCdtcDMnKVxuICAgICAgZXhwZWN0KHJlc29sdmVBdWRpb0ZpbGVFeHRlbnNpb24oJ3ZvaWNlJywgJ3dhdicpKS50b0JlKCd3YXYnKVxuICAgIH0pXG4gIH0pXG5cbiAgZGVzY3JpYmUoJ3Jlc29sdmVGdWxsQXVkaW9GaWxlTmFtZScsICgpID0+IHtcbiAgICBpdCgna2VlcHMgbmFtZXMgd2l0aCBleHRlbnNpb24gYW5kIGFwcGVuZHMgdHlwZSB3aGVuIG1pc3NpbmcnLCAoKSA9PiB7XG4gICAgICBleHBlY3QocmVzb2x2ZUZ1bGxBdWRpb0ZpbGVOYW1lKCd2b2ljZS5tcDMnKSkudG9CZSgndm9pY2UubXAzJylcbiAgICAgIGV4cGVjdChyZXNvbHZlRnVsbEF1ZGlvRmlsZU5hbWUoJ3ZvaWNlJywgJ21wMycpKS50b0JlKCd2b2ljZS5tcDMnKVxuICAgIH0pXG4gIH0pXG5cbiAgZGVzY3JpYmUoJ3Jlc29sdmVBdWRpb0F0dGFjaG1lbnRNZXRhJywgKCkgPT4ge1xuICAgIGl0KCdjb21iaW5lcyBleHRlbnNpb24gYW5kIGRpc3BsYXkgbmFtZScsICgpID0+IHtcbiAgICAgIGV4cGVjdChyZXNvbHZlQXVkaW9BdHRhY2htZW50TWV0YSh7IG5hbWU6ICdjbGlwJywgdHlwZTogJ29nZycgfSkpLnRvRXF1YWwoe1xuICAgICAgICBmaWxlRXh0ZW5zaW9uOiAnb2dnJyxcbiAgICAgICAgZnVsbEZpbGVOYW1lOiAnY2xpcC5vZ2cnLFxuICAgICAgfSlcbiAgICB9KVxuICB9KVxuXG4gIGRlc2NyaWJlKCdBdWRpb01hbmFnZXInLCAoKSA9PiB7XG4gICAgaXQoJ3BhdXNlcyBldmVyeSBhY3RpdmUgYXVkaW8gZXhjZXB0IHRoZSBjdXJyZW50IG9uZScsICgpID0+IHtcbiAgICAgIGNvbnN0IG1hbmFnZXIgPSBuZXcgQXVkaW9NYW5hZ2VyKClcbiAgICAgIGNvbnN0IGN1cnJlbnQgPSB7IHBhdXNlZDogZmFsc2UsIHBhdXNlOiBqZXN0LmZuKCkgfSBhcyB1bmtub3duIGFzIEhUTUxBdWRpb0VsZW1lbnRcbiAgICAgIGNvbnN0IG90aGVyID0geyBwYXVzZWQ6IGZhbHNlLCBwYXVzZTogamVzdC5mbigpIH0gYXMgdW5rbm93biBhcyBIVE1MQXVkaW9FbGVtZW50XG4gICAgICBjb25zdCBhbHJlYWR5UGF1c2VkID0geyBwYXVzZWQ6IHRydWUsIHBhdXNlOiBqZXN0LmZuKCkgfSBhcyB1bmtub3duIGFzIEhUTUxBdWRpb0VsZW1lbnRcblxuICAgICAgbWFuYWdlci5yZWdpc3RlcihjdXJyZW50KVxuICAgICAgbWFuYWdlci5yZWdpc3RlcihvdGhlcilcbiAgICAgIG1hbmFnZXIucmVnaXN0ZXIoYWxyZWFkeVBhdXNlZClcblxuICAgICAgbWFuYWdlci5wYXVzZUFsbEV4Y2VwdChjdXJyZW50KVxuXG4gICAgICBleHBlY3Qob3RoZXIucGF1c2UpLnRvSGF2ZUJlZW5DYWxsZWQoKVxuICAgICAgZXhwZWN0KGN1cnJlbnQucGF1c2UpLm5vdC50b0hhdmVCZWVuQ2FsbGVkKClcbiAgICAgIGV4cGVjdChhbHJlYWR5UGF1c2VkLnBhdXNlKS5ub3QudG9IYXZlQmVlbkNhbGxlZCgpXG4gICAgfSlcbiAgfSlcbn0pXG4iXSwibWFwcGluZ3MiOiJBQUFBLFNBQ0VBLFlBQVksRUFDWkMsVUFBVSxFQUNWQyxtQkFBbUIsRUFDbkJDLDBCQUEwQixFQUMxQkMseUJBQXlCLEVBQ3pCQyx3QkFBd0IsUUFDbkIsK0JBQStCO0FBRXRDQyxRQUFRLENBQUMsNkJBQTZCLEVBQUUsWUFBTTtFQUM1Q0EsUUFBUSxDQUFDLFlBQVksRUFBRSxZQUFNO0lBQzNCQyxFQUFFLENBQUMsMEJBQTBCLEVBQUUsWUFBTTtNQUNuQ0MsTUFBTSxDQUFDUCxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQ1EsSUFBSSxDQUFDLE1BQU0sQ0FBQztNQUNsQ0QsTUFBTSxDQUFDUCxVQUFVLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQ1EsSUFBSSxDQUFDLE1BQU0sQ0FBQztNQUNuQ0QsTUFBTSxDQUFDUCxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQ1EsSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUN0QyxDQUFDLENBQUM7RUFDSixDQUFDLENBQUM7RUFFRkgsUUFBUSxDQUFDLHFCQUFxQixFQUFFLFlBQU07SUFDcENDLEVBQUUsQ0FBQyx1Q0FBdUMsRUFBRSxZQUFNO01BQ2hEQyxNQUFNLENBQUNOLG1CQUFtQixDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUNPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDOUMsQ0FBQyxDQUFDO0lBRUZGLEVBQUUsQ0FBQyxtQ0FBbUMsRUFBRSxZQUFNO01BQzVDQyxNQUFNLENBQUNOLG1CQUFtQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUNPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDbkQsQ0FBQyxDQUFDO0VBQ0osQ0FBQyxDQUFDO0VBRUZILFFBQVEsQ0FBQywyQkFBMkIsRUFBRSxZQUFN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