@projectcor/maia-components 2.28.0 → 2.30.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 (658) hide show
  1. package/lib/App.js +55 -0
  2. package/lib/components/atoms/ActionableButton.js +60 -0
  3. package/lib/components/atoms/AgentActivityIndicator/AgentActivityIndicator.js +89 -0
  4. package/lib/components/atoms/AgentActivityIndicator/AgentActivityIndicator.styles.js +21 -0
  5. package/lib/components/atoms/AgentActivityIndicator/AgentActivityIndicator.utils.js +9 -0
  6. package/lib/components/atoms/AgentActivityIndicator/index.js +2 -0
  7. package/lib/components/atoms/ApprovalBox/ApprovalBox.js +209 -0
  8. package/lib/components/atoms/ApprovalBox/ApprovalBox.styles.js +93 -0
  9. package/lib/components/atoms/ApprovalBox/index.js +2 -0
  10. package/lib/components/atoms/AttachmentCard/AttachmentCard.js +218 -0
  11. package/lib/components/atoms/AttachmentCard/AttachmentCard.styles.js +52 -0
  12. package/lib/components/atoms/AttachmentCard/AttachmentCardAudio.js +448 -0
  13. package/lib/components/atoms/AttachmentCard/AttachmentCardAudio.styles.js +58 -0
  14. package/lib/components/atoms/AttachmentCard/AttachmentCardImage.js +55 -0
  15. package/lib/components/atoms/AttachmentCard/AttachmentCardImage.styles.js +14 -0
  16. package/lib/components/atoms/AttachmentCard/index.js +4 -0
  17. package/lib/components/atoms/AttachmentPreviewModal/AttachmentPreviewModal.js +442 -0
  18. package/lib/components/atoms/AttachmentPreviewModal/AttachmentPreviewModal.styles.js +119 -0
  19. package/lib/components/atoms/AttachmentPreviewModal/ExcelPreview.js +222 -0
  20. package/lib/components/atoms/AttachmentPreviewModal/PptPreview.js +313 -0
  21. package/lib/components/atoms/AttachmentPreviewModal/WordPreview.js +128 -0
  22. package/lib/components/atoms/AttachmentPreviewModal/index.js +2 -0
  23. package/lib/components/atoms/Backdrop/Backdrop.js +17 -0
  24. package/lib/components/atoms/Backdrop/Backdrop.styles.js +9 -0
  25. package/lib/components/atoms/Backdrop/index.js +2 -0
  26. package/lib/components/atoms/CardItem.js +7 -0
  27. package/lib/components/atoms/CardMenu/CardMenu.js +131 -0
  28. package/lib/components/atoms/CardMenu/index.js +2 -0
  29. package/lib/components/atoms/CardMenu/styles.js +21 -0
  30. package/lib/components/atoms/ChatClientSelector/ChatClientSelector.js +77 -0
  31. package/lib/components/atoms/ChatClientSelector/index.js +2 -0
  32. package/lib/components/atoms/ChatDisclaimerMessage/ChatDisclaimerMessage.js +9 -0
  33. package/lib/components/atoms/ChatDisclaimerMessage/index.js +2 -0
  34. package/lib/components/atoms/ChatDisclaimerMessage/styles.js +6 -0
  35. package/lib/components/atoms/Checkbox/Checkbox.js +34 -0
  36. package/lib/components/atoms/Checkbox/index.js +2 -0
  37. package/lib/components/atoms/Checkbox/styles.js +39 -0
  38. package/lib/components/atoms/Chip/Chip.js +150 -0
  39. package/lib/components/atoms/Chip/index.js +2 -0
  40. package/lib/components/atoms/Chip/styles.js +43 -0
  41. package/lib/components/atoms/ChipLlm/ChipLlm.js +45 -0
  42. package/lib/components/atoms/ChipLlm/ChipLlm.style.js +21 -0
  43. package/lib/components/atoms/ChipLlm/index.js +2 -0
  44. package/lib/components/atoms/ChipStatus/ChipStatus.interface.js +2 -0
  45. package/lib/components/atoms/ChipStatus/ChipStatus.js +14 -0
  46. package/lib/components/atoms/ChipStatus/ChipStatus.styles.js +27 -0
  47. package/lib/components/atoms/ChipStatus/index.js +2 -0
  48. package/lib/components/atoms/ClearButton.js +6 -0
  49. package/lib/components/atoms/ClientSelector/ClientSelector.js +146 -0
  50. package/lib/components/atoms/ClientSelector/ClientSelector.styles.js +15 -0
  51. package/lib/components/atoms/ClientSelector/index.js +2 -0
  52. package/lib/components/atoms/ContextMentionChip/ContextMentionChip.js +38 -0
  53. package/lib/components/atoms/ContextMentionChip/ContextMentionChip.styles.js +188 -0
  54. package/lib/components/atoms/ContextMentionChip/MentionOverflowLabel.js +39 -0
  55. package/lib/components/atoms/ContextMentionChip/buildChipElement.js +434 -0
  56. package/lib/components/atoms/ContextMentionChip/index.js +4 -0
  57. package/lib/components/atoms/ContextMentionEditor/ContextMentionEditor.js +411 -0
  58. package/lib/components/atoms/ContextMentionEditor/ContextMentionEditor.styles.js +10 -0
  59. package/lib/components/atoms/ContextMentionEditor/index.js +2 -0
  60. package/lib/components/atoms/ContextMentionItem/ContextMentionItem.js +309 -0
  61. package/lib/components/atoms/ContextMentionItem/ContextMentionItem.styles.js +157 -0
  62. package/lib/components/atoms/ContextMentionItem/index.js +2 -0
  63. package/lib/components/atoms/ContextMentionPopover/ContextMentionPopover.js +307 -0
  64. package/lib/components/atoms/ContextMentionPopover/ContextMentionPopover.styles.js +108 -0
  65. package/lib/components/atoms/ContextMentionPopover/index.js +3 -0
  66. package/lib/components/atoms/CopyToClipboard.js +70 -0
  67. package/lib/components/atoms/EditableLabel/EditableLabel.js +110 -0
  68. package/lib/components/atoms/EditableLabel/index.js +2 -0
  69. package/lib/components/atoms/EditableLabel/styles.js +7 -0
  70. package/lib/components/atoms/EmptySearchClients/EmptySearchClients.js +22 -0
  71. package/lib/components/atoms/EmptySearchClients/EmptySearchClients.styles.js +18 -0
  72. package/lib/components/atoms/EmptySearchClients/index.js +2 -0
  73. package/lib/components/atoms/EmptySearchProjects/EmptySearchProjects.js +19 -0
  74. package/lib/components/atoms/EmptySearchProjects/EmptySearchProjects.styles.js +15 -0
  75. package/lib/components/atoms/EmptySearchProjects/index.js +2 -0
  76. package/lib/components/atoms/EntitySelector/EntitySelector.js +247 -0
  77. package/lib/components/atoms/EntitySelector/EntitySelector.skeleton.js +38 -0
  78. package/lib/components/atoms/EntitySelector/EntitySelector.styles.js +67 -0
  79. package/lib/components/atoms/EntitySelector/index.js +2 -0
  80. package/lib/components/atoms/ErrorSearchClients/ErrorSearchClients.js +14 -0
  81. package/lib/components/atoms/ErrorSearchClients/ErrorSearchClients.styles.js +15 -0
  82. package/lib/components/atoms/ErrorSearchFaqs/ErrorSearchFaqs.js +14 -0
  83. package/lib/components/atoms/ErrorSearchFaqs/ErrorSearchFaqs.style.js +15 -0
  84. package/lib/components/atoms/ErrorSearchFaqs/index.js +2 -0
  85. package/lib/components/atoms/ErrorSearchProjects/ErrorSearchProjects.js +18 -0
  86. package/lib/components/atoms/ErrorSearchProjects/ErrorSearchProjects.style.js +15 -0
  87. package/lib/components/atoms/ErrorSearchProjects/index.js +2 -0
  88. package/lib/components/atoms/Expand/Expand.js +32 -0
  89. package/lib/components/atoms/Expand/index.js +2 -0
  90. package/lib/components/atoms/Fade/Fade.js +56 -0
  91. package/lib/components/atoms/Fade/index.js +2 -0
  92. package/lib/components/atoms/FeedbackButton/FeedbackButton.js +59 -0
  93. package/lib/components/atoms/FeedbackButton/FeedbackButton.styles.js +14 -0
  94. package/lib/components/atoms/FeedbackButton/index.js +2 -0
  95. package/lib/components/atoms/FrequentlyAskedQuestions/FrequentlyAskedQuestions.js +138 -0
  96. package/lib/components/atoms/FrequentlyAskedQuestions/FrequentlyAskedQuestions.skeleton.js +44 -0
  97. package/lib/components/atoms/FrequentlyAskedQuestions/FrequentlyAskedQuestions.styles.js +43 -0
  98. package/lib/components/atoms/FrequentlyAskedQuestions/index.js +2 -0
  99. package/lib/components/atoms/FrequentlyUsedActions/FrequentlyUsedActions.js +122 -0
  100. package/lib/components/atoms/FrequentlyUsedActions/FrequentlyUsedActions.skeleton.js +43 -0
  101. package/lib/components/atoms/FrequentlyUsedActions/FrequentlyUsedActions.styles.js +62 -0
  102. package/lib/components/atoms/FrequentlyUsedActions/index.js +2 -0
  103. package/lib/components/atoms/GoBackButton.js +24 -0
  104. package/lib/components/atoms/HelpButton.js +44 -0
  105. package/lib/components/atoms/IconButton.js +56 -0
  106. package/lib/components/atoms/ImagePreview/ImagePreview.js +96 -0
  107. package/lib/components/atoms/ImagePreview/ImagePreview.styles.js +70 -0
  108. package/lib/components/atoms/Input/CustomInput.interface.js +2 -0
  109. package/lib/components/atoms/Input/CustomInput.js +91 -0
  110. package/lib/components/atoms/Input/CustomInput.styles.js +39 -0
  111. package/lib/components/atoms/Input/index.js +2 -0
  112. package/lib/components/atoms/ListMenuOption/ListMenuOption.js +41 -0
  113. package/lib/components/atoms/ListMenuOption/index.js +2 -0
  114. package/lib/components/atoms/ListMenuOption/styles.js +9 -0
  115. package/lib/components/atoms/Loader.js +41 -0
  116. package/lib/components/atoms/LoadingFaqs/LoadingFaqs.js +11 -0
  117. package/lib/components/atoms/LoadingFaqs/LoadingFaqs.style.js +6 -0
  118. package/lib/components/atoms/LoadingFaqs/index.js +2 -0
  119. package/lib/components/atoms/LoadingSearchClients/LoadingSearchClients.js +11 -0
  120. package/lib/components/atoms/LoadingSearchClients/LoadingSearchClients.styles.js +6 -0
  121. package/lib/components/atoms/LoadingSearchClients/index.js +2 -0
  122. package/lib/components/atoms/LoadingSearchProjects/LoadingSearchProjects.js +14 -0
  123. package/lib/components/atoms/LoadingSearchProjects/LoadingSearchProjects.style.js +10 -0
  124. package/lib/components/atoms/LoadingSearchProjects/index.js +2 -0
  125. package/lib/components/atoms/LoadingText/LoadingText.js +18 -0
  126. package/lib/components/atoms/LoadingText/index.js +2 -0
  127. package/lib/components/atoms/LoadingText/styles.js +7 -0
  128. package/lib/components/atoms/MAIAButton/MAIAButton.js +33 -0
  129. package/lib/components/atoms/MAIAButton/index.js +2 -0
  130. package/lib/components/atoms/MAIAError/MAIAError.js +15 -0
  131. package/lib/components/atoms/MAIAError/index.js +2 -0
  132. package/lib/components/atoms/MAIAInput/MAIAInput.js +1058 -0
  133. package/lib/components/atoms/MAIAInput/MAIAInputEditor.js +266 -0
  134. package/lib/components/atoms/MAIAInput/index.js +2 -0
  135. package/lib/components/atoms/MAIAInput/maiaInputLayout.js +25 -0
  136. package/lib/components/atoms/MAIAInput/styles.js +182 -0
  137. package/lib/components/atoms/MAIAMessage/MAIAMessage.interfaces.js +2 -0
  138. package/lib/components/atoms/MAIAMessage/MAIAMessage.js +22 -0
  139. package/lib/components/atoms/MAIAMessage/index.js +2 -0
  140. package/lib/components/atoms/MAIAMessage/styles.js +7 -0
  141. package/lib/components/atoms/MaiaStreamdown/MaiaStreamdown.config.js +23 -0
  142. package/lib/components/atoms/MaiaStreamdown/MaiaStreamdown.interfaces.js +2 -0
  143. package/lib/components/atoms/MaiaStreamdown/MaiaStreamdown.js +51 -0
  144. package/lib/components/atoms/MaiaStreamdown/MaiaStreamdown.styles.js +26 -0
  145. package/lib/components/atoms/MaiaStreamdown/index.js +2 -0
  146. package/lib/components/atoms/MaiaWrapper/MaiaWrapper.js +18 -0
  147. package/lib/components/atoms/MaiaWrapper/MaiaWrapperBase.js +84 -0
  148. package/lib/components/atoms/MaiaWrapper/ModernMaiaWrapper.js +15 -0
  149. package/lib/components/atoms/MaiaWrapper/index.js +3 -0
  150. package/lib/components/atoms/MaiaWrapper/styles.js +21 -0
  151. package/lib/components/atoms/ModalClientAccess/ModalClientAccess.interface.js +2 -0
  152. package/lib/components/atoms/ModalClientAccess/ModalClientAccess.js +84 -0
  153. package/lib/components/atoms/ModalClientAccess/ModalClientAccess.styles.js +53 -0
  154. package/lib/components/atoms/ModalClientAccess/index.js +2 -0
  155. package/lib/components/atoms/ModalInfo/ModalInfo.js +52 -0
  156. package/lib/components/atoms/ModalInfo/ModalInfoContent.js +7 -0
  157. package/lib/components/atoms/ModalInfo/index.js +3 -0
  158. package/lib/components/atoms/ModalInfo/styles.js +7 -0
  159. package/lib/components/atoms/ModalProject/ModalProject.interface.js +2 -0
  160. package/lib/components/atoms/ModalProject/ModalProject.js +112 -0
  161. package/lib/components/atoms/ModalProject/ModalProject.style.js +59 -0
  162. package/lib/components/atoms/ModalProject/index.js +2 -0
  163. package/lib/components/atoms/NextPageLoader.js +33 -0
  164. package/lib/components/atoms/OnboardingModalButton/OnboardingModal.js +28 -0
  165. package/lib/components/atoms/OnboardingModalButton/OnboardingModalButton.js +180 -0
  166. package/lib/components/atoms/OnboardingModalButton/OnboardingModalButton.styles.js +34 -0
  167. package/lib/components/atoms/OnboardingModalButton/index.js +3 -0
  168. package/lib/components/atoms/OptionAccessibility/OptionAccessibility.js +131 -0
  169. package/lib/components/atoms/OptionAccessibility/OptionAccessibility.styles.js +59 -0
  170. package/lib/components/atoms/OptionAccessibility/index.js +2 -0
  171. package/lib/components/atoms/OptionCorPermission/OptionCorPermission.js +27 -0
  172. package/lib/components/atoms/OptionCorPermission/OptionCorPermission.styles.js +18 -0
  173. package/lib/components/atoms/OptionCorPermission/index.js +2 -0
  174. package/lib/components/atoms/PrimaryButton.js +31 -0
  175. package/lib/components/atoms/ProjectSelector/ProjectSelector.js +77 -0
  176. package/lib/components/atoms/ProjectSelector/ProjectSelector.styles.js +61 -0
  177. package/lib/components/atoms/ProjectSelector/index.js +2 -0
  178. package/lib/components/atoms/SecondaryButton.js +20 -0
  179. package/lib/components/atoms/SessionGeneratingDot/SessionGeneratingDot.js +20 -0
  180. package/lib/components/atoms/SessionGeneratingDot/SessionGeneratingDot.styles.js +20 -0
  181. package/lib/components/atoms/SessionGeneratingDot/index.js +2 -0
  182. package/lib/components/atoms/Skeleton/Skeleton.js +36 -0
  183. package/lib/components/atoms/Skeleton/index.js +2 -0
  184. package/lib/components/atoms/SlashCommandChip/SlashCommandChip.js +16 -0
  185. package/lib/components/atoms/SlashCommandChip/SlashCommandChip.styles.js +24 -0
  186. package/lib/components/atoms/SlashCommandChip/buildSlashChipElement.js +18 -0
  187. package/lib/components/atoms/SlashCommandChip/index.js +4 -0
  188. package/lib/components/atoms/SlashCommandDropdown/SlashCommandDropdown.js +210 -0
  189. package/lib/components/atoms/SlashCommandDropdown/SlashCommandDropdown.styles.js +53 -0
  190. package/lib/components/atoms/SlashCommandDropdown/index.js +2 -0
  191. package/lib/components/atoms/Switch/Switch.js +27 -0
  192. package/lib/components/atoms/Switch/Switch.styles.js +22 -0
  193. package/lib/components/atoms/Switch/index.js +2 -0
  194. package/lib/components/atoms/TextArea/CustomTextArea.interface.js +2 -0
  195. package/lib/components/atoms/TextArea/CustomTextArea.js +93 -0
  196. package/lib/components/atoms/TextArea/CustomTextArea.styles.js +25 -0
  197. package/lib/components/atoms/TextArea/TextArea.interfaces.js +2 -0
  198. package/lib/components/atoms/TextArea/TextArea.js +172 -0
  199. package/lib/components/atoms/TextArea/TextArea.styles.js +16 -0
  200. package/lib/components/atoms/TextArea/index.js +2 -0
  201. package/lib/components/atoms/ThirdButton.js +19 -0
  202. package/lib/components/atoms/VideoModal/VideoModal.js +76 -0
  203. package/lib/components/atoms/VideoModal/index.js +2 -0
  204. package/lib/components/atoms/WithAppCfg.js +26 -0
  205. package/lib/components/atoms/WithFeatureValidation.js +23 -0
  206. package/lib/components/atoms/WrapperCenterIcon/WrapperCenterIcon.js +9 -0
  207. package/lib/components/atoms/WrapperCenterIcon/WrapperCenterIcon.styles.js +6 -0
  208. package/lib/components/atoms/WrapperCenterIcon/index.js +2 -0
  209. package/lib/components/atoms/icons/AIIcon.js +23 -0
  210. package/lib/components/atoms/icons/AacFile.js +39 -0
  211. package/lib/components/atoms/icons/AccessibilityIcon.js +42 -0
  212. package/lib/components/atoms/icons/ActionAssignIcon.js +111 -0
  213. package/lib/components/atoms/icons/ActionCalendarIcon.js +112 -0
  214. package/lib/components/atoms/icons/ActionChargeHoursIcon.js +111 -0
  215. package/lib/components/atoms/icons/ActionChatIcon.js +71 -0
  216. package/lib/components/atoms/icons/ActionCreateIcon.js +91 -0
  217. package/lib/components/atoms/icons/ActionCreateReworkIcon.js +39 -0
  218. package/lib/components/atoms/icons/ActionCreateSubtaskIcon.js +37 -0
  219. package/lib/components/atoms/icons/ActionEditIcon.js +39 -0
  220. package/lib/components/atoms/icons/ActionSummaryMessagesIcon.js +88 -0
  221. package/lib/components/atoms/icons/ActionSummaryTaskIcon.js +37 -0
  222. package/lib/components/atoms/icons/ActionTimeBackIcon.js +112 -0
  223. package/lib/components/atoms/icons/AgentMaiaIcon.js +31 -0
  224. package/lib/components/atoms/icons/Brain.js +77 -0
  225. package/lib/components/atoms/icons/CorAccessIcon.js +41 -0
  226. package/lib/components/atoms/icons/CorLogo.js +76 -0
  227. package/lib/components/atoms/icons/CsvFile.js +41 -0
  228. package/lib/components/atoms/icons/DocFile.js +41 -0
  229. package/lib/components/atoms/icons/DocxFile.js +41 -0
  230. package/lib/components/atoms/icons/EmptyClientIllustration.js +67 -0
  231. package/lib/components/atoms/icons/EmptyHistory.js +46 -0
  232. package/lib/components/atoms/icons/EmptySearchIllustration.js +37 -0
  233. package/lib/components/atoms/icons/EmptyState.js +84 -0
  234. package/lib/components/atoms/icons/EmptyStateAgents.js +58 -0
  235. package/lib/components/atoms/icons/ErrorIcon.js +14 -0
  236. package/lib/components/atoms/icons/ErrorSearchIllustration.js +52 -0
  237. package/lib/components/atoms/icons/ErrorState.js +51 -0
  238. package/lib/components/atoms/icons/FaqChevronIcon.js +39 -0
  239. package/lib/components/atoms/icons/FaqsIcon.js +51 -0
  240. package/lib/components/atoms/icons/FlacIcon.js +39 -0
  241. package/lib/components/atoms/icons/FolderIcon.js +29 -0
  242. package/lib/components/atoms/icons/HomeIcon.js +30 -0
  243. package/lib/components/atoms/icons/ImageFile.js +46 -0
  244. package/lib/components/atoms/icons/M4aFile.js +39 -0
  245. package/lib/components/atoms/icons/MAIAIcon.js +20 -0
  246. package/lib/components/atoms/icons/MAIAIsologo.js +65 -0
  247. package/lib/components/atoms/icons/MDFile.js +41 -0
  248. package/lib/components/atoms/icons/MaiaChatLayoutFloatingIcon.js +41 -0
  249. package/lib/components/atoms/icons/MaiaChatLayoutFullscreenIcon.js +41 -0
  250. package/lib/components/atoms/icons/MaiaChatLayoutMenuIcon.js +33 -0
  251. package/lib/components/atoms/icons/MaiaChatLayoutSidebarIcon.js +41 -0
  252. package/lib/components/atoms/icons/MaiaInputAddIcon.js +42 -0
  253. package/lib/components/atoms/icons/MaiaInputAttachIcon.js +29 -0
  254. package/lib/components/atoms/icons/MaiaInputAttachmentImageIcon.js +33 -0
  255. package/lib/components/atoms/icons/MaiaInputDeepSearchIcon.js +35 -0
  256. package/lib/components/atoms/icons/MaiaInputMentionIcon.js +44 -0
  257. package/lib/components/atoms/icons/MaiaInputRobotIcon.js +29 -0
  258. package/lib/components/atoms/icons/MaiaInputSendIcon.js +29 -0
  259. package/lib/components/atoms/icons/MaiaInputSlashIcon.js +29 -0
  260. package/lib/components/atoms/icons/MaiaInputWebSearchIcon.js +35 -0
  261. package/lib/components/atoms/icons/MaiaSettingsProject.js +111 -0
  262. package/lib/components/atoms/icons/MaiaSettingsProjectV2.js +193 -0
  263. package/lib/components/atoms/icons/MaiaSparkleIcon.js +75 -0
  264. package/lib/components/atoms/icons/MaiaStoreIcon.js +31 -0
  265. package/lib/components/atoms/icons/Mp3File.js +39 -0
  266. package/lib/components/atoms/icons/Mp4File.js +39 -0
  267. package/lib/components/atoms/icons/MyAgentsNavIcon.js +51 -0
  268. package/lib/components/atoms/icons/NewChat.js +29 -0
  269. package/lib/components/atoms/icons/NotionIcon.js +36 -0
  270. package/lib/components/atoms/icons/OgaFile.js +39 -0
  271. package/lib/components/atoms/icons/OggFile.js +39 -0
  272. package/lib/components/atoms/icons/PdfFile.js +39 -0
  273. package/lib/components/atoms/icons/PptFile.js +47 -0
  274. package/lib/components/atoms/icons/PptxFile.js +49 -0
  275. package/lib/components/atoms/icons/RetryIcon.js +34 -0
  276. package/lib/components/atoms/icons/SkillIcon.js +30 -0
  277. package/lib/components/atoms/icons/SkillsNavIcon.js +27 -0
  278. package/lib/components/atoms/icons/SubtaskIcon.js +36 -0
  279. package/lib/components/atoms/icons/TaskLinkIcon.js +27 -0
  280. package/lib/components/atoms/icons/TelescopeIcon.js +60 -0
  281. package/lib/components/atoms/icons/TemplateGradientIcon.js +42 -0
  282. package/lib/components/atoms/icons/TextFile.js +41 -0
  283. package/lib/components/atoms/icons/WavFile.js +39 -0
  284. package/lib/components/atoms/icons/WebmFile.js +50 -0
  285. package/lib/components/atoms/icons/XlsFile.js +42 -0
  286. package/lib/components/atoms/icons/XlsxFile.js +42 -0
  287. package/lib/components/atoms/icons/index.js +50 -0
  288. package/lib/components/atoms/index.js +42 -0
  289. package/lib/components/index.js +11 -0
  290. package/lib/components/molecules/AbmSection/AbmAccessibilitySection/AbmAccessibilitySection.interface.js +2 -0
  291. package/lib/components/molecules/AbmSection/AbmAccessibilitySection/AbmAccessibilitySection.js +149 -0
  292. package/lib/components/molecules/AbmSection/AbmAccessibilitySection/AbmAccessibilitySection.styles.js +53 -0
  293. package/lib/components/molecules/AbmSection/AbmGeneralSection.js +415 -0
  294. package/lib/components/molecules/AbmSection/AbmGeneralSection.styles.js +152 -0
  295. package/lib/components/molecules/AbmSection/AbmKnowledgeSection.js +374 -0
  296. package/lib/components/molecules/AbmSection/AbmKnowledgeSection.styles.js +106 -0
  297. package/lib/components/molecules/AbmSection/AbmLoaderFiles.js +92 -0
  298. package/lib/components/molecules/AbmSection/AbmLoaderFiles.styles.js +57 -0
  299. package/lib/components/molecules/AbmSection/index.js +4 -0
  300. package/lib/components/molecules/ChatAIClientSelector/ChatAIClientSelector.js +52 -0
  301. package/lib/components/molecules/ChatAIClientSelector/index.js +2 -0
  302. package/lib/components/molecules/ChatAIContent/ChatAIContent.js +117 -0
  303. package/lib/components/molecules/ChatAIContent/ChatAIContent.skeleton.js +187 -0
  304. package/lib/components/molecules/ChatAIContent/ChatAIContent.styles.js +6 -0
  305. package/lib/components/molecules/ChatAIContent/index.js +2 -0
  306. package/lib/components/molecules/ChatAIHistory/ChatAIHistory.js +241 -0
  307. package/lib/components/molecules/ChatAIHistory/index.js +2 -0
  308. package/lib/components/molecules/ChatAIHistory/styles.js +22 -0
  309. package/lib/components/molecules/ChatAIHome/ChatAIHome.js +649 -0
  310. package/lib/components/molecules/ChatAIHome/ChatAIHomeMaiaker.js +115 -0
  311. package/lib/components/molecules/ChatAIHome/ChatAIHomeMaiaker.styles.js +95 -0
  312. package/lib/components/molecules/ChatAIHome/index.js +2 -0
  313. package/lib/components/molecules/ChatAIHome/styles.js +335 -0
  314. package/lib/components/molecules/ChatAIMessages/ChatAICreateAgentActions.js +137 -0
  315. package/lib/components/molecules/ChatAIMessages/ChatAIMessages.js +853 -0
  316. package/lib/components/molecules/ChatAIMessages/ChatAISuggestions.js +47 -0
  317. package/lib/components/molecules/ChatAIMessages/ChatAISuggestions.styles.js +37 -0
  318. package/lib/components/molecules/ChatAIMessages/README.md +101 -0
  319. package/lib/components/molecules/ChatAIMessages/index.js +2 -0
  320. package/lib/components/molecules/ChatAIMessages/newStyles.js +131 -0
  321. package/lib/components/molecules/ChatAIMessages/styles.js +94 -0
  322. package/lib/components/molecules/ChatAIModal/ChatAIModal.js +1217 -0
  323. package/lib/components/molecules/ChatAIModal/ChatAIModal.styles.js +58 -0
  324. package/lib/components/molecules/ChatAIModal/components/ChatAiAgentOptions/ChatAiAgentOptions.js +127 -0
  325. package/lib/components/molecules/ChatAIModal/components/ChatAiAgentOptions/ChatAiAgentOptions.styles.js +34 -0
  326. package/lib/components/molecules/ChatAIModal/components/ChatAiAgentOptions/index.js +2 -0
  327. package/lib/components/molecules/ChatAIModal/components/ChatAiModalFooter/ChatAiModalFooter.js +189 -0
  328. package/lib/components/molecules/ChatAIModal/components/ChatAiModalFooter/ChatAiModalFooter.styles.js +26 -0
  329. package/lib/components/molecules/ChatAIModal/components/ChatAiModalFooter/index.js +2 -0
  330. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.js +448 -0
  331. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.styles.js +108 -0
  332. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/index.js +2 -0
  333. package/lib/components/molecules/ChatAIModal/components/MaiaMinimizedPill/MaiaMinimizedPill.js +48 -0
  334. package/lib/components/molecules/ChatAIModal/components/MaiaMinimizedPill/MaiaMinimizedPill.styles.js +38 -0
  335. package/lib/components/molecules/ChatAIModal/components/MaiaMinimizedPill/index.js +2 -0
  336. package/lib/components/molecules/ChatAIModal/constants.js +40 -0
  337. package/lib/components/molecules/ChatAIModal/floatingPanelMotion/FloatingPanelMotion.js +16 -0
  338. package/lib/components/molecules/ChatAIModal/floatingPanelMotion/FloatingPanelMotion.styles.js +12 -0
  339. package/lib/components/molecules/ChatAIModal/floatingPanelMotion/constants.js +13 -0
  340. package/lib/components/molecules/ChatAIModal/floatingPanelMotion/index.js +3 -0
  341. package/lib/components/molecules/ChatAIModal/floatingPanelMotion/useFloatingPanelDragTilt.js +57 -0
  342. package/lib/components/molecules/ChatAIModal/index.js +2 -0
  343. package/lib/components/molecules/ChatAIModal/layout.js +74 -0
  344. package/lib/components/molecules/ChatAIMyAgents/ChatAIMyAgents.js +457 -0
  345. package/lib/components/molecules/ChatAIMyAgents/ChatAIMyAgents.styles.js +218 -0
  346. package/lib/components/molecules/ChatAIMySkills/ChatAIMySkills.js +357 -0
  347. package/lib/components/molecules/ChatAIMySkills/ChatAIMySkills.styles.js +145 -0
  348. package/lib/components/molecules/ChatAIMySkills/index.js +2 -0
  349. package/lib/components/molecules/ChatAIProjectSelector/ChatAIProjectSelector.js +48 -0
  350. package/lib/components/molecules/ChatAIProjectSelector/ChatAIProjectSelector.styles.js +49 -0
  351. package/lib/components/molecules/ChatAIProjectSelector/index.js +2 -0
  352. package/lib/components/molecules/ChatFooter/ChatFooter.js +337 -0
  353. package/lib/components/molecules/ChatFooter/ChatFooterCorAccess.js +32 -0
  354. package/lib/components/molecules/ChatFooter/ChatFooterCorAccess.styles.js +14 -0
  355. package/lib/components/molecules/ChatFooter/ChatFooterFaqs.js +201 -0
  356. package/lib/components/molecules/ChatFooter/ChatFooterFaqs.styles.js +51 -0
  357. package/lib/components/molecules/ChatFooter/index.js +2 -0
  358. package/lib/components/molecules/ChatFooter/styles.js +23 -0
  359. package/lib/components/molecules/ContextMentionInput/ContextMentionInput.js +62 -0
  360. package/lib/components/molecules/ContextMentionInput/ContextMentionInput.styles.js +6 -0
  361. package/lib/components/molecules/ContextMentionInput/index.js +2 -0
  362. package/lib/components/molecules/MessageFeedback/MessageFeedback.js +118 -0
  363. package/lib/components/molecules/MessageFeedback/index.js +2 -0
  364. package/lib/components/molecules/MessageFeedback/styles.js +14 -0
  365. package/lib/components/molecules/ProjectSummaryChat/ProjectSummaryChat.js +127 -0
  366. package/lib/components/molecules/ProjectSummaryChat/index.js +2 -0
  367. package/lib/components/molecules/ProjectSummaryChat/styles.js +8 -0
  368. package/lib/components/molecules/ProjectSummaryConfig/ProjectSummaryConfig.js +152 -0
  369. package/lib/components/molecules/ProjectSummaryConfig/index.js +2 -0
  370. package/lib/components/molecules/ProjectSummaryConfig/styles.js +86 -0
  371. package/lib/components/molecules/ProjectSummaryContent/ProjectSummaryContent.js +49 -0
  372. package/lib/components/molecules/ProjectSummaryContent/index.js +2 -0
  373. package/lib/components/molecules/ProjectSummaryModal/ProjectSummaryModal.js +19 -0
  374. package/lib/components/molecules/ProjectSummaryModal/index.js +2 -0
  375. package/lib/components/molecules/ProjectSummaryModal/styles.js +2 -0
  376. package/lib/components/molecules/Sidebar/Sidebar.js +715 -0
  377. package/lib/components/molecules/Sidebar/Sidebar.layout.styles.js +157 -0
  378. package/lib/components/molecules/Sidebar/Sidebar.skeleton.js +48 -0
  379. package/lib/components/molecules/Sidebar/Sidebar.styles.js +75 -0
  380. package/lib/components/molecules/Sidebar/index.js +2 -0
  381. package/lib/components/organisms/AbmAgentModal/AbmAgentModal.js +1420 -0
  382. package/lib/components/organisms/AbmAgentModal/AbmAgentModal.styles.js +93 -0
  383. package/lib/components/organisms/AbmAgentModal/index.js +2 -0
  384. package/lib/components/organisms/AbmSkillGenerateModal/AbmSkillGenerateModal.js +175 -0
  385. package/lib/components/organisms/AbmSkillGenerateModal/AbmSkillGenerateModal.styles.js +34 -0
  386. package/lib/components/organisms/AbmSkillGenerateModal/index.js +2 -0
  387. package/lib/components/organisms/AbmSkillModal/AbmSkillModal.js +432 -0
  388. package/lib/components/organisms/AbmSkillModal/AbmSkillModal.styles.js +98 -0
  389. package/lib/components/organisms/AbmSkillModal/index.js +2 -0
  390. package/lib/components/organisms/ChatAI/ChatAI.js +167 -0
  391. package/lib/components/organisms/ChatAI/index.js +2 -0
  392. package/lib/components/organisms/ChatAI/styles.js +7 -0
  393. package/lib/components/organisms/ClientAIButton/ClientAIButton.js +23 -0
  394. package/lib/components/organisms/ClientAIButton/index.js +2 -0
  395. package/lib/components/organisms/DeleteAgentModal/DeleteAgentModal.js +86 -0
  396. package/lib/components/organisms/DeleteAgentModal/DeleteAgentModal.styles.js +39 -0
  397. package/lib/components/organisms/DeleteAgentModal/index.js +2 -0
  398. package/lib/components/organisms/DeleteQuestionModal/DeleteQuestionModal.js +122 -0
  399. package/lib/components/organisms/DeleteQuestionModal/DeleteQuestionModal.styles.js +47 -0
  400. package/lib/components/organisms/DeleteQuestionModal/index.js +2 -0
  401. package/lib/components/organisms/EditQuestionModal/EditQuestionModal.js +138 -0
  402. package/lib/components/organisms/EditQuestionModal/EditQuestionModal.styles.js +69 -0
  403. package/lib/components/organisms/EditQuestionModal/index.js +2 -0
  404. package/lib/components/organisms/ModalFileExceeds/ModalFileExceeds.js +113 -0
  405. package/lib/components/organisms/ModalFileExceeds/ModalFileExceeds.styles.js +54 -0
  406. package/lib/components/organisms/ModalFileExceeds/index.js +2 -0
  407. package/lib/components/organisms/ProjectAIButton/ProjectAIButton.js +26 -0
  408. package/lib/components/organisms/ProjectAIButton/index.js +2 -0
  409. package/lib/components/organisms/ProjectSummary/ProjectSummary.js +60 -0
  410. package/lib/components/organisms/ProjectSummary/index.js +2 -0
  411. package/lib/components/organisms/ProjectSummary/styles.js +7 -0
  412. package/lib/components/organisms/SnackBar/Snackbar.interface.js +2 -0
  413. package/lib/components/organisms/SnackBar/Snackbar.js +73 -0
  414. package/lib/components/organisms/SnackBar/Snackbar.styles.js +9 -0
  415. package/lib/components/organisms/SnackBar/index.js +2 -0
  416. package/lib/components/organisms/SourcesInformation/SourceItem.js +18 -0
  417. package/lib/components/organisms/SourcesInformation/SourceItem.styles.js +14 -0
  418. package/lib/components/organisms/SourcesInformation/SourcesInformationModal.js +66 -0
  419. package/lib/components/organisms/SourcesInformation/SourcesInformationModal.styles.js +27 -0
  420. package/lib/components/organisms/SourcesInformation/index.js +2 -0
  421. package/lib/constants/config.js +13 -0
  422. package/lib/constants/formatExtensions.js +55 -0
  423. package/lib/constants/gqlClient.js +4 -0
  424. package/lib/constants/maiaHourAgentAccess.js +15 -0
  425. package/lib/constants/maiaTaskPanelAccess.js +24 -0
  426. package/lib/constants/maiaTaskPanelOutsideClick.js +9 -0
  427. package/lib/constants/maiaTaskPanelZIndex.js +19 -0
  428. package/lib/constants/permissions/config.js +72 -0
  429. package/lib/constants/permissions/index.js +3 -0
  430. package/lib/constants/permissions/types.js +2 -0
  431. package/lib/constants/permissions/utils.js +18 -0
  432. package/lib/constants/plannerSyncEvents.js +15 -0
  433. package/lib/constants/taskLinkIcon.js +15 -0
  434. package/lib/constants/taskUrls.js +11 -0
  435. package/lib/context/cor-user.js +31 -0
  436. package/lib/context/global-context.js +39 -0
  437. package/lib/dev/DevChatAI.js +101 -0
  438. package/lib/dev/DevContextMentionInput.js +67 -0
  439. package/lib/dev/ProjectSummary.js +9 -0
  440. package/lib/dev/Providers.js +27 -0
  441. package/lib/exports.js +2 -0
  442. package/lib/hooks/README.md +192 -0
  443. package/lib/hooks/index.js +30 -0
  444. package/lib/hooks/useAccessClient/index.js +2 -0
  445. package/lib/hooks/useAccessClient/useAccessClient.js +81 -0
  446. package/lib/hooks/useAgentModel/index.js +2 -0
  447. package/lib/hooks/useAgentModel/useAgentModel.js +62 -0
  448. package/lib/hooks/useAgentModel/useCreateAgent.js +128 -0
  449. package/lib/hooks/useAgentModel/useDeleteAgent.js +88 -0
  450. package/lib/hooks/useAgentModel/useUpdateAgent.js +129 -0
  451. package/lib/hooks/useAgentSuggestions.js +60 -0
  452. package/lib/hooks/useCaretPosition.js +65 -0
  453. package/lib/hooks/useChatManager/index.js +2 -0
  454. package/lib/hooks/useChatManager/useChatManager.interface.js +2 -0
  455. package/lib/hooks/useChatManager/useChatManager.js +1782 -0
  456. package/lib/hooks/useChatMessages/index.js +2 -0
  457. package/lib/hooks/useChatMessages/useChatMessages.interface.js +2 -0
  458. package/lib/hooks/useChatMessages/useChatMessages.js +722 -0
  459. package/lib/hooks/useChats/index.js +2 -0
  460. package/lib/hooks/useChats/useChats.interfaces.js +2 -0
  461. package/lib/hooks/useChats/useChats.js +187 -0
  462. package/lib/hooks/useClientSearch.js +163 -0
  463. package/lib/hooks/useContextMentions.js +463 -0
  464. package/lib/hooks/useContextPinPopover.js +228 -0
  465. package/lib/hooks/useDebounce.js +18 -0
  466. package/lib/hooks/useEntitySearch.js +1239 -0
  467. package/lib/hooks/useEvent.js +93 -0
  468. package/lib/hooks/useFrequentlyAskedQuestions.js +150 -0
  469. package/lib/hooks/useFrequentlyUsedActions.js +94 -0
  470. package/lib/hooks/useKnowledge/deleteKnowledge.js +69 -0
  471. package/lib/hooks/useKnowledge/downloadKnowledge.js +81 -0
  472. package/lib/hooks/useKnowledge/index.js +4 -0
  473. package/lib/hooks/useKnowledge/saveKnowledge.js +107 -0
  474. package/lib/hooks/useKnowledge/useKnowledgeOperations.js +156 -0
  475. package/lib/hooks/useMaiaTaskPanelZIndex.js +17 -0
  476. package/lib/hooks/useMentionAllowedTypes.js +136 -0
  477. package/lib/hooks/useMentionPopover.js +366 -0
  478. package/lib/hooks/useMinimizedPillBottomOffset.js +110 -0
  479. package/lib/hooks/useModal/index.js +2 -0
  480. package/lib/hooks/useModal/useModal.interfaces.js +2 -0
  481. package/lib/hooks/useModal/useModal.js +47 -0
  482. package/lib/hooks/useOnboardingNavigation.js +20 -0
  483. package/lib/hooks/useOrchestratorStream/index.js +2 -0
  484. package/lib/hooks/useOrchestratorStream/useOrchestratorStream.interface.js +2 -0
  485. package/lib/hooks/useOrchestratorStream/useOrchestratorStream.js +269 -0
  486. package/lib/hooks/useProjectSearch.js +183 -0
  487. package/lib/hooks/useProjectSummary.js +101 -0
  488. package/lib/hooks/useProjectSummaryConfig.js +211 -0
  489. package/lib/hooks/useProjects.js +46 -0
  490. package/lib/hooks/useRecentClientsSearch.js +150 -0
  491. package/lib/hooks/useRecentContexts.js +86 -0
  492. package/lib/hooks/useResize.js +29 -0
  493. package/lib/hooks/useSlashCommands.js +84 -0
  494. package/lib/hooks/useSmoothStreamText/index.js +2 -0
  495. package/lib/hooks/useSmoothStreamText/useSmoothStreamText.js +197 -0
  496. package/lib/hooks/useSnackBarManager/useSnackBarManager.js +41 -0
  497. package/lib/hooks/useStreamResponse.js +112 -0
  498. package/lib/hooks/useStreamdownStyles.js +13 -0
  499. package/lib/hooks/useStreamingMessage/index.js +2 -0
  500. package/lib/hooks/useStreamingMessage/useStreamingMessage.js +18 -0
  501. package/lib/hooks/useT.js +17 -0
  502. package/lib/hooks/useTabTaskDefault.js +33 -0
  503. package/lib/hooks/useTaskPanel.js +22 -0
  504. package/lib/hooks/useTextOverflowEllipsisTooltip.js +34 -0
  505. package/lib/hooks/useToggle.js +19 -0
  506. package/lib/hooks/useToggleFavorite/index.js +2 -0
  507. package/lib/hooks/useToggleFavorite/useToggleFavorite.js +83 -0
  508. package/lib/index.css +76 -0
  509. package/lib/index.js +30 -0
  510. package/lib/lang/br/index.js +761 -0
  511. package/lib/lang/en/index.js +761 -0
  512. package/lib/lang/es/index.js +762 -0
  513. package/lib/lang/fr/index.js +582 -0
  514. package/lib/lang/index.js +24 -0
  515. package/lib/lang/utils.js +33 -0
  516. package/lib/mocks/mockChats.js +395 -0
  517. package/lib/mocks/mockOrchestrator.js +5 -0
  518. package/lib/mocks/mockProject.js +11 -0
  519. package/lib/mocks/mockProjectSummary.js +6 -0
  520. package/lib/mocks/mockedUser.js +169 -0
  521. package/lib/services/apolloClient.js +3 -0
  522. package/lib/services/appcues.js +19 -0
  523. package/lib/services/corpilot/ProjectSummary/getProjectSummary.js +31 -0
  524. package/lib/services/corpilot/ProjectSummary/index.js +5 -0
  525. package/lib/services/corpilot/client.js +27 -0
  526. package/lib/services/corpilot/index.js +5 -0
  527. package/lib/services/maia/Access/updateAccess.js +59 -0
  528. package/lib/services/maia/Actions/getFrequentlyUsedActions.js +46 -0
  529. package/lib/services/maia/Actions/getSlashCommands.js +39 -0
  530. package/lib/services/maia/Actions/index.js +7 -0
  531. package/lib/services/maia/Agents/createAgent.js +39 -0
  532. package/lib/services/maia/Agents/deleteAgent.js +38 -0
  533. package/lib/services/maia/Agents/fetchAgentDetail.js +122 -0
  534. package/lib/services/maia/Agents/getAgentById.js +162 -0
  535. package/lib/services/maia/Agents/getAgentModels.js +112 -0
  536. package/lib/services/maia/Agents/getAgentSuggestions.js +44 -0
  537. package/lib/services/maia/Agents/getAgents.js +718 -0
  538. package/lib/services/maia/Agents/setAgentToolGroups.js +42 -0
  539. package/lib/services/maia/Agents/toggleFavorite.js +34 -0
  540. package/lib/services/maia/Agents/updateAgent.js +39 -0
  541. package/lib/services/maia/Chats/deleteChat.js +32 -0
  542. package/lib/services/maia/Chats/getChatMessages.js +144 -0
  543. package/lib/services/maia/Chats/getChatsByUserId.js +82 -0
  544. package/lib/services/maia/Chats/index.js +15 -0
  545. package/lib/services/maia/Chats/markSessionAsRead.js +32 -0
  546. package/lib/services/maia/Chats/patchChat.js +43 -0
  547. package/lib/services/maia/Chats/wasHelpfulChat.js +31 -0
  548. package/lib/services/maia/Faqs/getFrequentlyAskedQuestions.js +55 -0
  549. package/lib/services/maia/Faqs/index.js +5 -0
  550. package/lib/services/maia/Knowledge/delete.js +41 -0
  551. package/lib/services/maia/Knowledge/download.js +48 -0
  552. package/lib/services/maia/Knowledge/index.js +3 -0
  553. package/lib/services/maia/Knowledge/save.js +43 -0
  554. package/lib/services/maia/Orchestrator/index.js +7 -0
  555. package/lib/services/maia/Orchestrator/orchestrator.js +246 -0
  556. package/lib/services/maia/RecentClients/getRecentClients.js +43 -0
  557. package/lib/services/maia/RecentClients/index.js +6 -0
  558. package/lib/services/maia/RecentContexts/getRecentContexts.js +54 -0
  559. package/lib/services/maia/RecentContexts/index.js +6 -0
  560. package/lib/services/maia/RecentProjects/getRecentProjects.js +55 -0
  561. package/lib/services/maia/RecentProjects/index.js +6 -0
  562. package/lib/services/maia/RecentTasks/getRecentTasks.js +54 -0
  563. package/lib/services/maia/RecentTasks/index.js +6 -0
  564. package/lib/services/maia/RecentUsers/getRecentUsers.js +59 -0
  565. package/lib/services/maia/RecentUsers/index.js +6 -0
  566. package/lib/services/maia/Skills/createSkill.js +39 -0
  567. package/lib/services/maia/Skills/deleteSkill.js +38 -0
  568. package/lib/services/maia/Skills/generateSkill.js +41 -0
  569. package/lib/services/maia/Skills/getSkills.js +90 -0
  570. package/lib/services/maia/Skills/updateSkill.js +39 -0
  571. package/lib/services/maia/client.js +27 -0
  572. package/lib/services/maia/index.js +17 -0
  573. package/lib/services/query/ClientSearchQuery.js +5 -0
  574. package/lib/services/query/entitySearchQuery.js +18 -0
  575. package/lib/services/query/index.js +2 -0
  576. package/lib/services/query/projectSearchByValueQuery.js +5 -0
  577. package/lib/services/query/taskUserTabQuery.js +8 -0
  578. package/lib/services/query/usersDirectoryQuery.js +19 -0
  579. package/lib/services/types.js +6 -0
  580. package/lib/services/utils/fetchCOR.js +117 -0
  581. package/lib/services/utils/getCookie.js +10 -0
  582. package/lib/services/utils/index.js +3 -0
  583. package/lib/services/utils/mapChatMessages.js +287 -0
  584. package/lib/services/utils/validateIsMaia.js +4 -0
  585. package/lib/store/chatsSidebarOptimistic.js +92 -0
  586. package/lib/store/chatsStore.types.js +2 -0
  587. package/lib/store/chatsStoreLifecycle.js +8 -0
  588. package/lib/store/faqsStore.types.js +2 -0
  589. package/lib/store/index.js +4 -0
  590. package/lib/store/maiaLastChatPersistence.js +35 -0
  591. package/lib/store/sessions/activeView.js +22 -0
  592. package/lib/store/sessions/index.js +9 -0
  593. package/lib/store/sessions/sessionHitlContext.js +15 -0
  594. package/lib/store/sessions/sessionNotificationSound.js +57 -0
  595. package/lib/store/sessions/sessionNotifications.js +110 -0
  596. package/lib/store/sessions/sessionNotifications.types.js +2 -0
  597. package/lib/store/sessions/sessionStreamManager.js +715 -0
  598. package/lib/store/sessions/sessionStreamingText.js +80 -0
  599. package/lib/store/sessions/sessions.types.js +35 -0
  600. package/lib/store/sessions/useSessionMeta.js +39 -0
  601. package/lib/store/sessions/useSessionStreamingText.js +18 -0
  602. package/lib/store/sessions/useSessionsStore.js +197 -0
  603. package/lib/store/useChatsStore.js +387 -0
  604. package/lib/store/useFaqsStore.js +27 -0
  605. package/lib/streamdownStyles.js +9 -0
  606. package/lib/styles/StyledCleanContainer.js +7 -0
  607. package/lib/styles/cascade.js +14 -0
  608. package/lib/styles/config.js +47 -0
  609. package/lib/styles/shared/scrollable.js +3 -0
  610. package/lib/styles/transitions.js +21 -0
  611. package/lib/types/Action.js +2 -0
  612. package/lib/types/AgentSuggestion.js +2 -0
  613. package/lib/types/Chat.js +10 -0
  614. package/lib/types/Client.js +2 -0
  615. package/lib/types/FrequentlyAskedQuestion.js +2 -0
  616. package/lib/types/Project.js +2 -0
  617. package/lib/types/ProjectSummaryConfigKeys.js +9 -0
  618. package/lib/types/Task.js +2 -0
  619. package/lib/types/agent.js +2 -0
  620. package/lib/types/agentModal.js +2 -0
  621. package/lib/types/contextMention.js +37 -0
  622. package/lib/types/global.d.js +2 -0
  623. package/lib/types/skill.js +2 -0
  624. package/lib/types/streamActivity.js +2 -0
  625. package/lib/types/userType.d.js +2 -0
  626. package/lib/utils/actionCategoryMap.js +37 -0
  627. package/lib/utils/actionIconMap.js +61 -0
  628. package/lib/utils/agentDisplayName.js +42 -0
  629. package/lib/utils/chatInputFiles.js +52 -0
  630. package/lib/utils/contextMentionIcons.js +134 -0
  631. package/lib/utils/contextMentionLabel.js +4 -0
  632. package/lib/utils/contextMentionTriggers.js +54 -0
  633. package/lib/utils/contextMentionTypeLabel.js +17 -0
  634. package/lib/utils/corConnectorMentionTypes.js +41 -0
  635. package/lib/utils/ensureStreamdownStyles.js +21 -0
  636. package/lib/utils/entityLinkRender.js +135 -0
  637. package/lib/utils/fileDownloadHelper.js +40 -0
  638. package/lib/utils/formatQuickActionMessage.js +16 -0
  639. package/lib/utils/formatUnreadCount.js +6 -0
  640. package/lib/utils/getUnitFileSize.js +13 -0
  641. package/lib/utils/hitlAnalytics.js +65 -0
  642. package/lib/utils/hoursPlannerQuickActionType.js +64 -0
  643. package/lib/utils/imagePreprocessor.js +108 -0
  644. package/lib/utils/index.js +3 -0
  645. package/lib/utils/maiaHostOpen.js +19 -0
  646. package/lib/utils/maiaStreamdownRehypePlugins.js +27 -0
  647. package/lib/utils/mapBackendLang.js +8 -0
  648. package/lib/utils/normalizeAgentConnectors.js +70 -0
  649. package/lib/utils/openTaskInCorPanel.js +22 -0
  650. package/lib/utils/orchestratorSubagents.js +11 -0
  651. package/lib/utils/renderContextMentions.js +399 -0
  652. package/lib/utils/retryCompletion.js +85 -0
  653. package/lib/utils/slashCommandMarker.js +30 -0
  654. package/lib/utils/sortManagerHoursHomeFuas.js +14 -0
  655. package/lib/utils/sseStreamContent.js +17 -0
  656. package/lib/utils/streamActivityMessages.js +359 -0
  657. package/lib/utils/validateTrimmedFields.js +8 -0
  658. package/package.json +1 -1
@@ -0,0 +1,55 @@
1
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
+ import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
3
+ import _regeneratorRuntime from "@babel/runtime/regenerator";
4
+ 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; }
5
+ 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; }
6
+ import { fetchMaia } from '../client';
7
+ export var getFrequentlyAskedQuestions = /*#__PURE__*/function () {
8
+ var _ref = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(params) {
9
+ var agentId, lang, limit, offset, category, entityId, entityType, queryParams, response, data;
10
+ return _regeneratorRuntime.wrap(function (_context) {
11
+ while (1) switch (_context.prev = _context.next) {
12
+ case 0:
13
+ agentId = params.agentId, lang = params.lang, limit = params.limit, offset = params.offset, category = params.category, entityId = params.entityId, entityType = params.entityType;
14
+ queryParams = new URLSearchParams(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({
15
+ lang: lang
16
+ }, limit && {
17
+ limit: limit.toString()
18
+ }), offset && {
19
+ offset: offset.toString()
20
+ }), category && {
21
+ category: category
22
+ }), entityId && {
23
+ entity_id: entityId
24
+ }), entityType && {
25
+ entity_type: entityType
26
+ }));
27
+ _context.next = 1;
28
+ return fetchMaia({
29
+ path: "agents/".concat(agentId, "/frequently-asked-questions?").concat(queryParams.toString()),
30
+ method: 'GET'
31
+ });
32
+ case 1:
33
+ response = _context.sent;
34
+ if (response.ok) {
35
+ _context.next = 2;
36
+ break;
37
+ }
38
+ throw new Error("HTTP error! status: ".concat(response.status));
39
+ case 2:
40
+ _context.next = 3;
41
+ return response.json();
42
+ case 3:
43
+ data = _context.sent;
44
+ return _context.abrupt("return", data);
45
+ case 4:
46
+ case "end":
47
+ return _context.stop();
48
+ }
49
+ }, _callee);
50
+ }));
51
+ return function getFrequentlyAskedQuestions(_x) {
52
+ return _ref.apply(this, arguments);
53
+ };
54
+ }();
55
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJmZXRjaE1haWEiLCJnZXRGcmVxdWVudGx5QXNrZWRRdWVzdGlvbnMiLCJfcmVmIiwiX2FzeW5jVG9HZW5lcmF0b3IiLCJfcmVnZW5lcmF0b3JSdW50aW1lIiwibWFyayIsIl9jYWxsZWUiLCJwYXJhbXMiLCJhZ2VudElkIiwibGFuZyIsImxpbWl0Iiwib2Zmc2V0IiwiY2F0ZWdvcnkiLCJlbnRpdHlJZCIsImVudGl0eVR5cGUiLCJxdWVyeVBhcmFtcyIsInJlc3BvbnNlIiwiZGF0YSIsIndyYXAiLCJfY29udGV4dCIsInByZXYiLCJuZXh0IiwiVVJMU2VhcmNoUGFyYW1zIiwiX29iamVjdFNwcmVhZCIsInRvU3RyaW5nIiwiZW50aXR5X2lkIiwiZW50aXR5X3R5cGUiLCJwYXRoIiwiY29uY2F0IiwibWV0aG9kIiwic2VudCIsIm9rIiwiRXJyb3IiLCJzdGF0dXMiLCJqc29uIiwiYWJydXB0Iiwic3RvcCIsIl94IiwiYXBwbHkiLCJhcmd1bWVudHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvc2VydmljZXMvbWFpYS9GYXFzL2dldEZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9ucy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmZXRjaE1haWEgfSBmcm9tICcuLi9jbGllbnQnXG5pbXBvcnQgdHlwZSB7IEZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9uUmVzcG9uc2UgfSBmcm9tICcuLi8uLi8uLi90eXBlcy9GcmVxdWVudGx5QXNrZWRRdWVzdGlvbidcblxudHlwZSBHZXRGcmVxdWVudGx5QXNrZWRRdWVzdGlvbnNQYXJhbXMgPSB7XG4gIGFnZW50SWQ6IHN0cmluZ1xuICBsYW5nOiBzdHJpbmdcbiAgbGltaXQ/OiBudW1iZXJcbiAgb2Zmc2V0PzogbnVtYmVyXG4gIC8qKiBlai4gYGJhbm5lcnxwcm9qZWN0YCBwYXJhIEZBUXMgZGUgYmFubmVyIGVuIGNvbnRleHRvIGVudGlkYWQgKi9cbiAgY2F0ZWdvcnk/OiBzdHJpbmdcbiAgLyoqIGlkIGRlIHByb3llY3RvL2NsaWVudGUgc2Vnw7puIGVsIGVuZHBvaW50ICovXG4gIGVudGl0eUlkPzogc3RyaW5nXG4gIC8qKiB0aXBvIGRlIGNvbnRleHRvIHNlbGVjY2lvbmFkbyBlbiBlbCBob21lIChjbGllbnQgfCBwcm9qZWN0IHwgdGFzaykgKi9cbiAgZW50aXR5VHlwZT86IHN0cmluZ1xufVxuXG5leHBvcnQgY29uc3QgZ2V0RnJlcXVlbnRseUFza2VkUXVlc3Rpb25zID0gYXN5bmMgKFxuICBwYXJhbXM6IEdldEZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9uc1BhcmFtc1xuKTogUHJvbWlzZTxGcmVxdWVudGx5QXNrZWRRdWVzdGlvblJlc3BvbnNlPiA9PiB7XG4gIGNvbnN0IHsgYWdlbnRJZCwgbGFuZywgbGltaXQsIG9mZnNldCwgY2F0ZWdvcnksIGVudGl0eUlkLCBlbnRpdHlUeXBlIH0gPSBwYXJhbXNcbiAgY29uc3QgcXVlcnlQYXJhbXMgPSBuZXcgVVJMU2VhcmNoUGFyYW1zKHtcbiAgICBsYW5nLFxuICAgIC4uLihsaW1pdCAmJiB7IGxpbWl0OiBsaW1pdC50b1N0cmluZygpIH0pLFxuICAgIC4uLihvZmZzZXQgJiYgeyBvZmZzZXQ6IG9mZnNldC50b1N0cmluZygpIH0pLFxuICAgIC4uLihjYXRlZ29yeSAmJiB7IGNhdGVnb3J5IH0pLFxuICAgIC4uLihlbnRpdHlJZCAmJiB7IGVudGl0eV9pZDogZW50aXR5SWQgfSksXG4gICAgLi4uKGVudGl0eVR5cGUgJiYgeyBlbnRpdHlfdHlwZTogZW50aXR5VHlwZSB9KSxcbiAgfSlcblxuICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoTWFpYSh7XG4gICAgcGF0aDogYGFnZW50cy8ke2FnZW50SWR9L2ZyZXF1ZW50bHktYXNrZWQtcXVlc3Rpb25zPyR7cXVlcnlQYXJhbXMudG9TdHJpbmcoKX1gLFxuICAgIG1ldGhvZDogJ0dFVCcsXG4gIH0pXG5cbiAgaWYgKCFyZXNwb25zZS5vaykge1xuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCBlcnJvciEgc3RhdHVzOiAke3Jlc3BvbnNlLnN0YXR1c31gKVxuICB9XG5cbiAgY29uc3QgZGF0YSA9IChhd2FpdCByZXNwb25zZS5qc29uKCkpIGFzIEZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9uUmVzcG9uc2VcblxuICByZXR1cm4gZGF0YVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7OztBQUFBLFNBQVNBLFNBQVMsUUFBUSxXQUFXO0FBZ0JyQyxPQUFPLElBQU1DLDJCQUEyQjtFQUFBLElBQUFDLElBQUEsR0FBQUMsaUJBQUEsY0FBQUMsbUJBQUEsQ0FBQUMsSUFBQSxDQUFHLFNBQUFDLFFBQ3pDQyxNQUF5QztJQUFBLElBQUFDLE9BQUEsRUFBQUMsSUFBQSxFQUFBQyxLQUFBLEVBQUFDLE1BQUEsRUFBQUMsUUFBQSxFQUFBQyxRQUFBLEVBQUFDLFVBQUEsRUFBQUMsV0FBQSxFQUFBQyxRQUFBLEVBQUFDLElBQUE7SUFBQSxPQUFBYixtQkFBQSxDQUFBYyxJQUFBLFdBQUFDLFFBQUE7TUFBQSxrQkFBQUEsUUFBQSxDQUFBQyxJQUFBLEdBQUFELFFBQUEsQ0FBQUUsSUFBQTtRQUFBO1VBRWpDYixPQUFPLEdBQTBERCxNQUFNLENBQXZFQyxPQUFPLEVBQUVDLElBQUksR0FBb0RGLE1BQU0sQ0FBOURFLElBQUksRUFBRUMsS0FBSyxHQUE2Q0gsTUFBTSxDQUF4REcsS0FBSyxFQUFFQyxNQUFNLEdBQXFDSixNQUFNLENBQWpESSxNQUFNLEVBQUVDLFFBQVEsR0FBMkJMLE1BQU0sQ0FBekNLLFFBQVEsRUFBRUMsUUFBUSxHQUFpQk4sTUFBTSxDQUEvQk0sUUFBUSxFQUFFQyxVQUFVLEdBQUtQLE1BQU0sQ0FBckJPLFVBQVU7VUFDOURDLFdBQVcsR0FBRyxJQUFJTyxlQUFlLENBQUFDLGFBQUEsQ0FBQUEsYUFBQSxDQUFBQSxhQUFBLENBQUFBLGFBQUEsQ0FBQUEsYUFBQTtZQUNyQ2QsSUFBSSxFQUFKQTtVQUFJLEdBQ0FDLEtBQUssSUFBSTtZQUFFQSxLQUFLLEVBQUVBLEtBQUssQ0FBQ2MsUUFBUSxDQUFDO1VBQUUsQ0FBQyxHQUNwQ2IsTUFBTSxJQUFJO1lBQUVBLE1BQU0sRUFBRUEsTUFBTSxDQUFDYSxRQUFRLENBQUM7VUFBRSxDQUFDLEdBQ3ZDWixRQUFRLElBQUk7WUFBRUEsUUFBUSxFQUFSQTtVQUFTLENBQUMsR0FDeEJDLFFBQVEsSUFBSTtZQUFFWSxTQUFTLEVBQUVaO1VBQVMsQ0FBQyxHQUNuQ0MsVUFBVSxJQUFJO1lBQUVZLFdBQVcsRUFBRVo7VUFBVyxDQUFDLENBQzlDLENBQUM7VUFBQUssUUFBQSxDQUFBRSxJQUFBO1VBQUEsT0FFcUJyQixTQUFTLENBQUM7WUFDL0IyQixJQUFJLFlBQUFDLE1BQUEsQ0FBWXBCLE9BQU8sa0NBQUFvQixNQUFBLENBQStCYixXQUFXLENBQUNTLFFBQVEsQ0FBQyxDQUFDLENBQUU7WUFDOUVLLE1BQU0sRUFBRTtVQUNWLENBQUMsQ0FBQztRQUFBO1VBSEliLFFBQVEsR0FBQUcsUUFBQSxDQUFBVyxJQUFBO1VBQUEsSUFLVGQsUUFBUSxDQUFDZSxFQUFFO1lBQUFaLFFBQUEsQ0FBQUUsSUFBQTtZQUFBO1VBQUE7VUFBQSxNQUNSLElBQUlXLEtBQUssd0JBQUFKLE1BQUEsQ0FBd0JaLFFBQVEsQ0FBQ2lCLE1BQU0sQ0FBRSxDQUFDO1FBQUE7VUFBQWQsUUFBQSxDQUFBRSxJQUFBO1VBQUEsT0FHdkNMLFFBQVEsQ0FBQ2tCLElBQUksQ0FBQyxDQUFDO1FBQUE7VUFBN0JqQixJQUFJLEdBQUFFLFFBQUEsQ0FBQVcsSUFBQTtVQUFBLE9BQUFYLFFBQUEsQ0FBQWdCLE1BQUEsV0FFSGxCLElBQUk7UUFBQTtRQUFBO1VBQUEsT0FBQUUsUUFBQSxDQUFBaUIsSUFBQTtNQUFBO0lBQUEsR0FBQTlCLE9BQUE7RUFBQSxDQUNaO0VBQUEsZ0JBekJZTCwyQkFBMkJBLENBQUFvQyxFQUFBO0lBQUEsT0FBQW5DLElBQUEsQ0FBQW9DLEtBQUEsT0FBQUMsU0FBQTtFQUFBO0FBQUEsR0F5QnZDIiwiaWdub3JlTGlzdCI6W119
@@ -0,0 +1,5 @@
1
+ import { getFrequentlyAskedQuestions } from './getFrequentlyAskedQuestions';
2
+ export default {
3
+ getFrequentlyAskedQuestions: getFrequentlyAskedQuestions
4
+ };
5
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJnZXRGcmVxdWVudGx5QXNrZWRRdWVzdGlvbnMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvc2VydmljZXMvbWFpYS9GYXFzL2luZGV4LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGdldEZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9ucyB9IGZyb20gJy4vZ2V0RnJlcXVlbnRseUFza2VkUXVlc3Rpb25zJ1xuXG5leHBvcnQgZGVmYXVsdCB7XG4gIGdldEZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9ucyxcbn1cbiJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsMkJBQTJCLFFBQVEsK0JBQStCO0FBRTNFLGVBQWU7RUFDYkEsMkJBQTJCLEVBQTNCQTtBQUNGLENBQUMiLCJpZ25vcmVMaXN0IjpbXX0=
@@ -0,0 +1,41 @@
1
+ import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
2
+ import _regeneratorRuntime from "@babel/runtime/regenerator";
3
+ import { fetchMaia } from '../client';
4
+ export var deleteKnowledge = /*#__PURE__*/function () {
5
+ var _ref = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(knowledgeId, agentId) {
6
+ var response, data;
7
+ return _regeneratorRuntime.wrap(function (_context) {
8
+ while (1) switch (_context.prev = _context.next) {
9
+ case 0:
10
+ _context.next = 1;
11
+ return fetchMaia({
12
+ path: "agents/".concat(agentId, "/knowledge-base"),
13
+ method: 'DELETE',
14
+ body: {
15
+ knowledge_base_ids: knowledgeId
16
+ }
17
+ });
18
+ case 1:
19
+ response = _context.sent;
20
+ if (response.ok) {
21
+ _context.next = 2;
22
+ break;
23
+ }
24
+ throw new Error('Failed to delete knowledge');
25
+ case 2:
26
+ _context.next = 3;
27
+ return response.json();
28
+ case 3:
29
+ data = _context.sent;
30
+ return _context.abrupt("return", data);
31
+ case 4:
32
+ case "end":
33
+ return _context.stop();
34
+ }
35
+ }, _callee);
36
+ }));
37
+ return function deleteKnowledge(_x, _x2) {
38
+ return _ref.apply(this, arguments);
39
+ };
40
+ }();
41
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJmZXRjaE1haWEiLCJkZWxldGVLbm93bGVkZ2UiLCJfcmVmIiwiX2FzeW5jVG9HZW5lcmF0b3IiLCJfcmVnZW5lcmF0b3JSdW50aW1lIiwibWFyayIsIl9jYWxsZWUiLCJrbm93bGVkZ2VJZCIsImFnZW50SWQiLCJyZXNwb25zZSIsImRhdGEiLCJ3cmFwIiwiX2NvbnRleHQiLCJwcmV2IiwibmV4dCIsInBhdGgiLCJjb25jYXQiLCJtZXRob2QiLCJib2R5Iiwia25vd2xlZGdlX2Jhc2VfaWRzIiwic2VudCIsIm9rIiwiRXJyb3IiLCJqc29uIiwiYWJydXB0Iiwic3RvcCIsIl94IiwiX3gyIiwiYXBwbHkiLCJhcmd1bWVudHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvc2VydmljZXMvbWFpYS9Lbm93bGVkZ2UvZGVsZXRlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZldGNoTWFpYSB9IGZyb20gJy4uL2NsaWVudCdcblxuZXhwb3J0IGNvbnN0IGRlbGV0ZUtub3dsZWRnZSA9IGFzeW5jIChrbm93bGVkZ2VJZDogc3RyaW5nW10sIGFnZW50SWQ6IHN0cmluZykgPT4ge1xuICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoTWFpYSh7XG4gICAgcGF0aDogYGFnZW50cy8ke2FnZW50SWR9L2tub3dsZWRnZS1iYXNlYCxcbiAgICBtZXRob2Q6ICdERUxFVEUnLFxuICAgIGJvZHk6IHtcbiAgICAgIGtub3dsZWRnZV9iYXNlX2lkczoga25vd2xlZGdlSWQsXG4gICAgfSxcbiAgfSlcblxuICBpZiAoIXJlc3BvbnNlLm9rKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gZGVsZXRlIGtub3dsZWRnZScpXG4gIH1cblxuICBjb25zdCBkYXRhID0gYXdhaXQgcmVzcG9uc2UuanNvbigpXG5cbiAgcmV0dXJuIGRhdGFcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7QUFBQSxTQUFTQSxTQUFTLFFBQVEsV0FBVztBQUVyQyxPQUFPLElBQU1DLGVBQWU7RUFBQSxJQUFBQyxJQUFBLEdBQUFDLGlCQUFBLGNBQUFDLG1CQUFBLENBQUFDLElBQUEsQ0FBRyxTQUFBQyxRQUFPQyxXQUFxQixFQUFFQyxPQUFlO0lBQUEsSUFBQUMsUUFBQSxFQUFBQyxJQUFBO0lBQUEsT0FBQU4sbUJBQUEsQ0FBQU8sSUFBQSxXQUFBQyxRQUFBO01BQUEsa0JBQUFBLFFBQUEsQ0FBQUMsSUFBQSxHQUFBRCxRQUFBLENBQUFFLElBQUE7UUFBQTtVQUFBRixRQUFBLENBQUFFLElBQUE7VUFBQSxPQUNuRGQsU0FBUyxDQUFDO1lBQy9CZSxJQUFJLFlBQUFDLE1BQUEsQ0FBWVIsT0FBTyxvQkFBaUI7WUFDeENTLE1BQU0sRUFBRSxRQUFRO1lBQ2hCQyxJQUFJLEVBQUU7Y0FDSkMsa0JBQWtCLEVBQUVaO1lBQ3RCO1VBQ0YsQ0FBQyxDQUFDO1FBQUE7VUFOSUUsUUFBUSxHQUFBRyxRQUFBLENBQUFRLElBQUE7VUFBQSxJQVFUWCxRQUFRLENBQUNZLEVBQUU7WUFBQVQsUUFBQSxDQUFBRSxJQUFBO1lBQUE7VUFBQTtVQUFBLE1BQ1IsSUFBSVEsS0FBSyxDQUFDLDRCQUE0QixDQUFDO1FBQUE7VUFBQVYsUUFBQSxDQUFBRSxJQUFBO1VBQUEsT0FHNUJMLFFBQVEsQ0FBQ2MsSUFBSSxDQUFDLENBQUM7UUFBQTtVQUE1QmIsSUFBSSxHQUFBRSxRQUFBLENBQUFRLElBQUE7VUFBQSxPQUFBUixRQUFBLENBQUFZLE1BQUEsV0FFSGQsSUFBSTtRQUFBO1FBQUE7VUFBQSxPQUFBRSxRQUFBLENBQUFhLElBQUE7TUFBQTtJQUFBLEdBQUFuQixPQUFBO0VBQUEsQ0FDWjtFQUFBLGdCQWhCWUwsZUFBZUEsQ0FBQXlCLEVBQUEsRUFBQUMsR0FBQTtJQUFBLE9BQUF6QixJQUFBLENBQUEwQixLQUFBLE9BQUFDLFNBQUE7RUFBQTtBQUFBLEdBZ0IzQiIsImlnbm9yZUxpc3QiOltdfQ==
@@ -0,0 +1,48 @@
1
+ import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
2
+ import _regeneratorRuntime from "@babel/runtime/regenerator";
3
+ import { fetchMaia } from '../client';
4
+ export var downloadKnowledge = /*#__PURE__*/function () {
5
+ var _ref2 = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(_ref) {
6
+ var _contentDisposition$s;
7
+ var agentId, knowledgeId, response, contentDisposition, filename, contentType, blob;
8
+ return _regeneratorRuntime.wrap(function (_context) {
9
+ while (1) switch (_context.prev = _context.next) {
10
+ case 0:
11
+ agentId = _ref.agentId, knowledgeId = _ref.knowledgeId;
12
+ _context.next = 1;
13
+ return fetchMaia({
14
+ path: "agents/".concat(agentId, "/knowledge-base/").concat(knowledgeId, "/download"),
15
+ method: 'GET'
16
+ });
17
+ case 1:
18
+ response = _context.sent;
19
+ if (response.ok) {
20
+ _context.next = 2;
21
+ break;
22
+ }
23
+ throw new Error("Error al descargar el archivo: ".concat(response.status, " ").concat(response.statusText));
24
+ case 2:
25
+ contentDisposition = response.headers.get('content-disposition');
26
+ filename = contentDisposition ? ((_contentDisposition$s = contentDisposition.split('filename=')[1]) === null || _contentDisposition$s === void 0 ? void 0 : _contentDisposition$s.replace(/"/g, '')) || 'archivo-descargado' : 'archivo-descargado';
27
+ contentType = response.headers.get('content-type') || 'application/octet-stream';
28
+ _context.next = 3;
29
+ return response.blob();
30
+ case 3:
31
+ blob = _context.sent;
32
+ return _context.abrupt("return", {
33
+ blob: blob,
34
+ filename: filename,
35
+ contentType: contentType,
36
+ size: blob.size
37
+ });
38
+ case 4:
39
+ case "end":
40
+ return _context.stop();
41
+ }
42
+ }, _callee);
43
+ }));
44
+ return function downloadKnowledge(_x) {
45
+ return _ref2.apply(this, arguments);
46
+ };
47
+ }();
48
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJmZXRjaE1haWEiLCJkb3dubG9hZEtub3dsZWRnZSIsIl9yZWYyIiwiX2FzeW5jVG9HZW5lcmF0b3IiLCJfcmVnZW5lcmF0b3JSdW50aW1lIiwibWFyayIsIl9jYWxsZWUiLCJfcmVmIiwiX2NvbnRlbnREaXNwb3NpdGlvbiRzIiwiYWdlbnRJZCIsImtub3dsZWRnZUlkIiwicmVzcG9uc2UiLCJjb250ZW50RGlzcG9zaXRpb24iLCJmaWxlbmFtZSIsImNvbnRlbnRUeXBlIiwiYmxvYiIsIndyYXAiLCJfY29udGV4dCIsInByZXYiLCJuZXh0IiwicGF0aCIsImNvbmNhdCIsIm1ldGhvZCIsInNlbnQiLCJvayIsIkVycm9yIiwic3RhdHVzIiwic3RhdHVzVGV4dCIsImhlYWRlcnMiLCJnZXQiLCJzcGxpdCIsInJlcGxhY2UiLCJhYnJ1cHQiLCJzaXplIiwic3RvcCIsIl94IiwiYXBwbHkiLCJhcmd1bWVudHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvc2VydmljZXMvbWFpYS9Lbm93bGVkZ2UvZG93bmxvYWQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZmV0Y2hNYWlhIH0gZnJvbSAnLi4vY2xpZW50J1xuXG5leHBvcnQgY29uc3QgZG93bmxvYWRLbm93bGVkZ2UgPSBhc3luYyAoeyBhZ2VudElkLCBrbm93bGVkZ2VJZCB9OiB7IGFnZW50SWQ6IHN0cmluZzsga25vd2xlZGdlSWQ6IHN0cmluZyB9KSA9PiB7XG4gIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2hNYWlhKHtcbiAgICBwYXRoOiBgYWdlbnRzLyR7YWdlbnRJZH0va25vd2xlZGdlLWJhc2UvJHtrbm93bGVkZ2VJZH0vZG93bmxvYWRgLFxuICAgIG1ldGhvZDogJ0dFVCcsXG4gIH0pXG5cbiAgaWYgKCFyZXNwb25zZS5vaykge1xuICAgIHRocm93IG5ldyBFcnJvcihgRXJyb3IgYWwgZGVzY2FyZ2FyIGVsIGFyY2hpdm86ICR7cmVzcG9uc2Uuc3RhdHVzfSAke3Jlc3BvbnNlLnN0YXR1c1RleHR9YClcbiAgfVxuXG4gIGNvbnN0IGNvbnRlbnREaXNwb3NpdGlvbiA9IHJlc3BvbnNlLmhlYWRlcnMuZ2V0KCdjb250ZW50LWRpc3Bvc2l0aW9uJylcbiAgY29uc3QgZmlsZW5hbWUgPSBjb250ZW50RGlzcG9zaXRpb25cbiAgICA/IGNvbnRlbnREaXNwb3NpdGlvbi5zcGxpdCgnZmlsZW5hbWU9JylbMV0/LnJlcGxhY2UoL1wiL2csICcnKSB8fCAnYXJjaGl2by1kZXNjYXJnYWRvJ1xuICAgIDogJ2FyY2hpdm8tZGVzY2FyZ2FkbydcblxuICBjb25zdCBjb250ZW50VHlwZSA9IHJlc3BvbnNlLmhlYWRlcnMuZ2V0KCdjb250ZW50LXR5cGUnKSB8fCAnYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtJ1xuXG4gIGNvbnN0IGJsb2IgPSBhd2FpdCByZXNwb25zZS5ibG9iKClcblxuICByZXR1cm4ge1xuICAgIGJsb2IsXG4gICAgZmlsZW5hbWUsXG4gICAgY29udGVudFR5cGUsXG4gICAgc2l6ZTogYmxvYi5zaXplLFxuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7O0FBQUEsU0FBU0EsU0FBUyxRQUFRLFdBQVc7QUFFckMsT0FBTyxJQUFNQyxpQkFBaUI7RUFBQSxJQUFBQyxLQUFBLEdBQUFDLGlCQUFBLGNBQUFDLG1CQUFBLENBQUFDLElBQUEsQ0FBRyxTQUFBQyxRQUFBQyxJQUFBO0lBQUEsSUFBQUMscUJBQUE7SUFBQSxJQUFBQyxPQUFBLEVBQUFDLFdBQUEsRUFBQUMsUUFBQSxFQUFBQyxrQkFBQSxFQUFBQyxRQUFBLEVBQUFDLFdBQUEsRUFBQUMsSUFBQTtJQUFBLE9BQUFYLG1CQUFBLENBQUFZLElBQUEsV0FBQUMsUUFBQTtNQUFBLGtCQUFBQSxRQUFBLENBQUFDLElBQUEsR0FBQUQsUUFBQSxDQUFBRSxJQUFBO1FBQUE7VUFBU1YsT0FBTyxHQUFBRixJQUFBLENBQVBFLE9BQU8sRUFBRUMsV0FBVyxHQUFBSCxJQUFBLENBQVhHLFdBQVc7VUFBQU8sUUFBQSxDQUFBRSxJQUFBO1VBQUEsT0FDckNuQixTQUFTLENBQUM7WUFDL0JvQixJQUFJLFlBQUFDLE1BQUEsQ0FBWVosT0FBTyxzQkFBQVksTUFBQSxDQUFtQlgsV0FBVyxjQUFXO1lBQ2hFWSxNQUFNLEVBQUU7VUFDVixDQUFDLENBQUM7UUFBQTtVQUhJWCxRQUFRLEdBQUFNLFFBQUEsQ0FBQU0sSUFBQTtVQUFBLElBS1RaLFFBQVEsQ0FBQ2EsRUFBRTtZQUFBUCxRQUFBLENBQUFFLElBQUE7WUFBQTtVQUFBO1VBQUEsTUFDUixJQUFJTSxLQUFLLG1DQUFBSixNQUFBLENBQW1DVixRQUFRLENBQUNlLE1BQU0sT0FBQUwsTUFBQSxDQUFJVixRQUFRLENBQUNnQixVQUFVLENBQUUsQ0FBQztRQUFBO1VBR3ZGZixrQkFBa0IsR0FBR0QsUUFBUSxDQUFDaUIsT0FBTyxDQUFDQyxHQUFHLENBQUMscUJBQXFCLENBQUM7VUFDaEVoQixRQUFRLEdBQUdELGtCQUFrQixHQUMvQixFQUFBSixxQkFBQSxHQUFBSSxrQkFBa0IsQ0FBQ2tCLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsY0FBQXRCLHFCQUFBLHVCQUF4Q0EscUJBQUEsQ0FBMEN1QixPQUFPLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxLQUFJLG9CQUFvQixHQUNuRixvQkFBb0I7VUFFbEJqQixXQUFXLEdBQUdILFFBQVEsQ0FBQ2lCLE9BQU8sQ0FBQ0MsR0FBRyxDQUFDLGNBQWMsQ0FBQyxJQUFJLDBCQUEwQjtVQUFBWixRQUFBLENBQUFFLElBQUE7VUFBQSxPQUVuRVIsUUFBUSxDQUFDSSxJQUFJLENBQUMsQ0FBQztRQUFBO1VBQTVCQSxJQUFJLEdBQUFFLFFBQUEsQ0FBQU0sSUFBQTtVQUFBLE9BQUFOLFFBQUEsQ0FBQWUsTUFBQSxXQUVIO1lBQ0xqQixJQUFJLEVBQUpBLElBQUk7WUFDSkYsUUFBUSxFQUFSQSxRQUFRO1lBQ1JDLFdBQVcsRUFBWEEsV0FBVztZQUNYbUIsSUFBSSxFQUFFbEIsSUFBSSxDQUFDa0I7VUFDYixDQUFDO1FBQUE7UUFBQTtVQUFBLE9BQUFoQixRQUFBLENBQUFpQixJQUFBO01BQUE7SUFBQSxHQUFBNUIsT0FBQTtFQUFBLENBQ0Y7RUFBQSxnQkF6QllMLGlCQUFpQkEsQ0FBQWtDLEVBQUE7SUFBQSxPQUFBakMsS0FBQSxDQUFBa0MsS0FBQSxPQUFBQyxTQUFBO0VBQUE7QUFBQSxHQXlCN0IiLCJpZ25vcmVMaXN0IjpbXX0=
@@ -0,0 +1,3 @@
1
+ export { saveKnowledge } from './save';
2
+ export { deleteKnowledge } from './delete';
3
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJzYXZlS25vd2xlZGdlIiwiZGVsZXRlS25vd2xlZGdlIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3NlcnZpY2VzL21haWEvS25vd2xlZGdlL2luZGV4LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IHNhdmVLbm93bGVkZ2UgfSBmcm9tICcuL3NhdmUnXG5leHBvcnQgeyBkZWxldGVLbm93bGVkZ2UgfSBmcm9tICcuL2RlbGV0ZSdcbiJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsYUFBYSxRQUFRLFFBQVE7QUFDdEMsU0FBU0MsZUFBZSxRQUFRLFVBQVUiLCJpZ25vcmVMaXN0IjpbXX0=
@@ -0,0 +1,43 @@
1
+ import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
2
+ import _regeneratorRuntime from "@babel/runtime/regenerator";
3
+ import { fetchMaia } from '../client';
4
+ export var saveKnowledge = /*#__PURE__*/function () {
5
+ var _ref = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(knowledge, agentId) {
6
+ var formData, response, data;
7
+ return _regeneratorRuntime.wrap(function (_context) {
8
+ while (1) switch (_context.prev = _context.next) {
9
+ case 0:
10
+ formData = new FormData();
11
+ knowledge.forEach(function (file) {
12
+ formData.append('files', file.file);
13
+ });
14
+ _context.next = 1;
15
+ return fetchMaia({
16
+ path: "agents/".concat(agentId, "/knowledge-base"),
17
+ method: 'POST',
18
+ body: formData
19
+ });
20
+ case 1:
21
+ response = _context.sent;
22
+ if (response.ok) {
23
+ _context.next = 2;
24
+ break;
25
+ }
26
+ throw new Error('Failed to save knowledge-base');
27
+ case 2:
28
+ _context.next = 3;
29
+ return response.json();
30
+ case 3:
31
+ data = _context.sent;
32
+ return _context.abrupt("return", data);
33
+ case 4:
34
+ case "end":
35
+ return _context.stop();
36
+ }
37
+ }, _callee);
38
+ }));
39
+ return function saveKnowledge(_x, _x2) {
40
+ return _ref.apply(this, arguments);
41
+ };
42
+ }();
43
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJmZXRjaE1haWEiLCJzYXZlS25vd2xlZGdlIiwiX3JlZiIsIl9hc3luY1RvR2VuZXJhdG9yIiwiX3JlZ2VuZXJhdG9yUnVudGltZSIsIm1hcmsiLCJfY2FsbGVlIiwia25vd2xlZGdlIiwiYWdlbnRJZCIsImZvcm1EYXRhIiwicmVzcG9uc2UiLCJkYXRhIiwid3JhcCIsIl9jb250ZXh0IiwicHJldiIsIm5leHQiLCJGb3JtRGF0YSIsImZvckVhY2giLCJmaWxlIiwiYXBwZW5kIiwicGF0aCIsImNvbmNhdCIsIm1ldGhvZCIsImJvZHkiLCJzZW50Iiwib2siLCJFcnJvciIsImpzb24iLCJhYnJ1cHQiLCJzdG9wIiwiX3giLCJfeDIiLCJhcHBseSIsImFyZ3VtZW50cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9tYWlhL0tub3dsZWRnZS9zYXZlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEtub3dsZWRnZUFnZW50IH0gZnJvbSAndHlwZXMvYWdlbnQnXG5pbXBvcnQgeyBmZXRjaE1haWEgfSBmcm9tICcuLi9jbGllbnQnXG5cbmV4cG9ydCBjb25zdCBzYXZlS25vd2xlZGdlID0gYXN5bmMgKGtub3dsZWRnZTogS25vd2xlZGdlQWdlbnRbXSwgYWdlbnRJZDogc3RyaW5nKSA9PiB7XG4gIGNvbnN0IGZvcm1EYXRhID0gbmV3IEZvcm1EYXRhKClcbiAga25vd2xlZGdlLmZvckVhY2goZmlsZSA9PiB7XG4gICAgZm9ybURhdGEuYXBwZW5kKCdmaWxlcycsIGZpbGUuZmlsZSlcbiAgfSlcblxuICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoTWFpYSh7XG4gICAgcGF0aDogYGFnZW50cy8ke2FnZW50SWR9L2tub3dsZWRnZS1iYXNlYCxcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBib2R5OiBmb3JtRGF0YSxcbiAgfSlcblxuICBpZiAoIXJlc3BvbnNlLm9rKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gc2F2ZSBrbm93bGVkZ2UtYmFzZScpXG4gIH1cblxuICBjb25zdCBkYXRhID0gYXdhaXQgcmVzcG9uc2UuanNvbigpXG5cbiAgcmV0dXJuIGRhdGFcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7QUFDQSxTQUFTQSxTQUFTLFFBQVEsV0FBVztBQUVyQyxPQUFPLElBQU1DLGFBQWE7RUFBQSxJQUFBQyxJQUFBLEdBQUFDLGlCQUFBLGNBQUFDLG1CQUFBLENBQUFDLElBQUEsQ0FBRyxTQUFBQyxRQUFPQyxTQUEyQixFQUFFQyxPQUFlO0lBQUEsSUFBQUMsUUFBQSxFQUFBQyxRQUFBLEVBQUFDLElBQUE7SUFBQSxPQUFBUCxtQkFBQSxDQUFBUSxJQUFBLFdBQUFDLFFBQUE7TUFBQSxrQkFBQUEsUUFBQSxDQUFBQyxJQUFBLEdBQUFELFFBQUEsQ0FBQUUsSUFBQTtRQUFBO1VBQ3hFTixRQUFRLEdBQUcsSUFBSU8sUUFBUSxDQUFDLENBQUM7VUFDL0JULFNBQVMsQ0FBQ1UsT0FBTyxDQUFDLFVBQUFDLElBQUksRUFBSTtZQUN4QlQsUUFBUSxDQUFDVSxNQUFNLENBQUMsT0FBTyxFQUFFRCxJQUFJLENBQUNBLElBQUksQ0FBQztVQUNyQyxDQUFDLENBQUM7VUFBQUwsUUFBQSxDQUFBRSxJQUFBO1VBQUEsT0FFcUJmLFNBQVMsQ0FBQztZQUMvQm9CLElBQUksWUFBQUMsTUFBQSxDQUFZYixPQUFPLG9CQUFpQjtZQUN4Q2MsTUFBTSxFQUFFLE1BQU07WUFDZEMsSUFBSSxFQUFFZDtVQUNSLENBQUMsQ0FBQztRQUFBO1VBSklDLFFBQVEsR0FBQUcsUUFBQSxDQUFBVyxJQUFBO1VBQUEsSUFNVGQsUUFBUSxDQUFDZSxFQUFFO1lBQUFaLFFBQUEsQ0FBQUUsSUFBQTtZQUFBO1VBQUE7VUFBQSxNQUNSLElBQUlXLEtBQUssQ0FBQywrQkFBK0IsQ0FBQztRQUFBO1VBQUFiLFFBQUEsQ0FBQUUsSUFBQTtVQUFBLE9BRy9CTCxRQUFRLENBQUNpQixJQUFJLENBQUMsQ0FBQztRQUFBO1VBQTVCaEIsSUFBSSxHQUFBRSxRQUFBLENBQUFXLElBQUE7VUFBQSxPQUFBWCxRQUFBLENBQUFlLE1BQUEsV0FFSGpCLElBQUk7UUFBQTtRQUFBO1VBQUEsT0FBQUUsUUFBQSxDQUFBZ0IsSUFBQTtNQUFBO0lBQUEsR0FBQXZCLE9BQUE7RUFBQSxDQUNaO0VBQUEsZ0JBbkJZTCxhQUFhQSxDQUFBNkIsRUFBQSxFQUFBQyxHQUFBO0lBQUEsT0FBQTdCLElBQUEsQ0FBQThCLEtBQUEsT0FBQUMsU0FBQTtFQUFBO0FBQUEsR0FtQnpCIiwiaWdub3JlTGlzdCI6W119
@@ -0,0 +1,7 @@
1
+ import { orchestrator, continueThread, retryCompletion } from './orchestrator';
2
+ export default {
3
+ orchestrator: orchestrator,
4
+ continueThread: continueThread,
5
+ retryCompletion: retryCompletion
6
+ };
7
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJvcmNoZXN0cmF0b3IiLCJjb250aW51ZVRocmVhZCIsInJldHJ5Q29tcGxldGlvbiJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9tYWlhL09yY2hlc3RyYXRvci9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBvcmNoZXN0cmF0b3IsIGNvbnRpbnVlVGhyZWFkLCByZXRyeUNvbXBsZXRpb24gfSBmcm9tICcuL29yY2hlc3RyYXRvcidcblxuZXhwb3J0IGRlZmF1bHQge1xuICBvcmNoZXN0cmF0b3IsXG4gIGNvbnRpbnVlVGhyZWFkLFxuICByZXRyeUNvbXBsZXRpb24sXG59XG4iXSwibWFwcGluZ3MiOiJBQUFBLFNBQVNBLFlBQVksRUFBRUMsY0FBYyxFQUFFQyxlQUFlLFFBQVEsZ0JBQWdCO0FBRTlFLGVBQWU7RUFDYkYsWUFBWSxFQUFaQSxZQUFZO0VBQ1pDLGNBQWMsRUFBZEEsY0FBYztFQUNkQyxlQUFlLEVBQWZBO0FBQ0YsQ0FBQyIsImlnbm9yZUxpc3QiOltdfQ==
@@ -0,0 +1,246 @@
1
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
+ import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
3
+ 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; }
4
+ 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; }
5
+ import _regeneratorRuntime from "@babel/runtime/regenerator";
6
+ /* eslint-disable @typescript-eslint/no-explicit-any */
7
+ /* eslint-disable @typescript-eslint/no-unused-vars */
8
+ /* eslint-disable-next-line import/no-cycle */
9
+
10
+ import { mapCORLang } from '../../../lang/utils';
11
+ import { fetchMaia } from '../client';
12
+ import { FILE_FORMAT_EXTENSIONS, FILE_PRESENTATION_FORMAT_EXTENSIONS, FILE_MAIA_VISION_FORMAT_EXTENSIONS, FILE_AUDIO_FORMAT_EXTENSIONS, getMaxAttachmentSizeMb } from '../../../constants/formatExtensions';
13
+
14
+ /** Codifica JSON UTF-8 en base64 para headers HTTP (evita problemas con caracteres especiales). */
15
+ var encodeContextDataHeader = function encodeContextDataHeader(contextData) {
16
+ var json = JSON.stringify(contextData);
17
+ var bytes = new TextEncoder().encode(json);
18
+ var binary = '';
19
+ for (var i = 0; i < bytes.length; i += 1) {
20
+ binary += String.fromCharCode(bytes[i]);
21
+ }
22
+ return btoa(binary);
23
+ };
24
+ var MAX_FILES = 5;
25
+ var ALLOWED_FILE_EXTENSIONS = ['.txt', '.md', '.csv', '.doc', '.docx', '.ppt', '.pptx', '.png', '.jpg', '.jpeg', '.pdf', '.xlsx', '.xls', '.flac', '.m4a', '.mp3', '.mp4', '.oga', '.ogg', '.wav', '.webm'];
26
+ var validateAttachments = function validateAttachments(attachments) {
27
+ if (attachments.length > MAX_FILES) {
28
+ throw new Error("M\xE1ximo ".concat(MAX_FILES, " archivos permitidos"));
29
+ }
30
+ attachments.forEach(function (attachment) {
31
+ // Validar extensión del archivo
32
+ var fileExtension = attachment.name.toLowerCase().substring(attachment.name.lastIndexOf('.'));
33
+ if (!ALLOWED_FILE_EXTENSIONS.includes(fileExtension)) {
34
+ throw new Error("El archivo \"".concat(attachment.name, "\" no tiene un formato soportado. Formatos permitidos: ").concat(ALLOWED_FILE_EXTENSIONS.join(', ')));
35
+ }
36
+
37
+ // Validar tamaño del archivo según el tipo
38
+ var fileSize = typeof attachment.size === 'number' ? attachment.size : Number(attachment.size);
39
+ var maxSizeMb = getMaxAttachmentSizeMb(fileExtension);
40
+ var maxSizeBytes = maxSizeMb * 1024 * 1024;
41
+ if ((FILE_FORMAT_EXTENSIONS.includes(fileExtension) || FILE_PRESENTATION_FORMAT_EXTENSIONS.includes(fileExtension) || FILE_MAIA_VISION_FORMAT_EXTENSIONS.includes(fileExtension) || FILE_AUDIO_FORMAT_EXTENSIONS.includes(fileExtension)) && fileSize > maxSizeBytes) {
42
+ throw new Error("El archivo \"".concat(attachment.name, "\" excede el tama\xF1o m\xE1ximo de ").concat(maxSizeMb, "MB"));
43
+ }
44
+ });
45
+ };
46
+ var toRetryLocale = function toRetryLocale(lang) {
47
+ if (lang === 'br') return 'pt-BR';
48
+ if (lang === 'es') return 'es-AR';
49
+ if (lang === 'fr') return 'fr-FR';
50
+ return 'en-US';
51
+ };
52
+ export var retryCompletion = /*#__PURE__*/function () {
53
+ var _ref = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(body, signal) {
54
+ var sessionId, memorySessionId, agentId, lang, isWebSearchActive, isDeepSearchActive, projectId, clientId, taskId, agentType, contextData, path, headers, contextId, timezone;
55
+ return _regeneratorRuntime.wrap(function (_context) {
56
+ while (1) switch (_context.prev = _context.next) {
57
+ case 0:
58
+ sessionId = body.sessionId, memorySessionId = body.memorySessionId, agentId = body.agentId, lang = body.lang, isWebSearchActive = body.isWebSearchActive, isDeepSearchActive = body.isDeepSearchActive, projectId = body.projectId, clientId = body.clientId, taskId = body.taskId, agentType = body.agentType, contextData = body.contextData;
59
+ path = 'orchestrator/retry_completion?mode=stream';
60
+ if (isWebSearchActive === true) {
61
+ path += '&search_web=true';
62
+ }
63
+ if (isDeepSearchActive === true) {
64
+ path += '&search_web=true&depth=true';
65
+ }
66
+ headers = {
67
+ 'X-Agent-Id': agentId.toString(),
68
+ 'Accept-Language': mapCORLang(lang)
69
+ };
70
+ if (agentType === 'orchestrator') {
71
+ contextId = '';
72
+ if (taskId != null) contextId = "task:".concat(taskId);else if (projectId != null) contextId = "project:".concat(projectId);else if (clientId != null) contextId = "client:".concat(clientId);
73
+ if (contextId) {
74
+ headers['X-Context-Id'] = contextId;
75
+ }
76
+ }
77
+ if (contextData && Object.keys(contextData).length > 0) {
78
+ headers['X-Context-Data'] = encodeContextDataHeader(contextData);
79
+ }
80
+ timezone = typeof Intl !== 'undefined' ? Intl.DateTimeFormat().resolvedOptions().timeZone : 'America/Buenos_Aires';
81
+ return _context.abrupt("return", fetchMaia({
82
+ path: path,
83
+ method: 'POST',
84
+ headers: headers,
85
+ body: {
86
+ session_id: sessionId,
87
+ parent_message_uuid: memorySessionId,
88
+ turn_message_uuids: {
89
+ assistant_message_uuid: memorySessionId
90
+ },
91
+ memory_session_id: memorySessionId,
92
+ prompt: '',
93
+ locale: toRetryLocale(lang),
94
+ timezone: timezone,
95
+ metadata: {}
96
+ },
97
+ signal: signal
98
+ }));
99
+ case 1:
100
+ case "end":
101
+ return _context.stop();
102
+ }
103
+ }, _callee);
104
+ }));
105
+ return function retryCompletion(_x, _x2) {
106
+ return _ref.apply(this, arguments);
107
+ };
108
+ }();
109
+ export var continueThread = /*#__PURE__*/function () {
110
+ var _ref2 = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee2(body, signal) {
111
+ var threadIds, sessionId, decision, editedActions, agentId, lang, requestBody;
112
+ return _regeneratorRuntime.wrap(function (_context2) {
113
+ while (1) switch (_context2.prev = _context2.next) {
114
+ case 0:
115
+ threadIds = body.threadIds, sessionId = body.sessionId, decision = body.decision, editedActions = body.editedActions, agentId = body.agentId, lang = body.lang;
116
+ requestBody = {
117
+ thread_ids: threadIds,
118
+ session_id: sessionId,
119
+ decision: decision
120
+ };
121
+ if (decision === 'edit' && editedActions) {
122
+ requestBody.edited_actions = editedActions;
123
+ }
124
+ return _context2.abrupt("return", fetchMaia({
125
+ path: 'orchestrator/continue-thread?mode=stream',
126
+ method: 'POST',
127
+ headers: {
128
+ 'X-Agent-Id': agentId.toString(),
129
+ 'Accept-Language': mapCORLang(lang)
130
+ },
131
+ body: requestBody,
132
+ signal: signal
133
+ }));
134
+ case 1:
135
+ case "end":
136
+ return _context2.stop();
137
+ }
138
+ }, _callee2);
139
+ }));
140
+ return function continueThread(_x3, _x4) {
141
+ return _ref2.apply(this, arguments);
142
+ };
143
+ }();
144
+ export var orchestrator = /*#__PURE__*/function () {
145
+ var _ref3 = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee3(body, signal) {
146
+ var input, projectId, lang, userId, firstName, lastName, chatId, clientId, clientName, feeId, agentId, isWebSearchActive, isDeepSearchActive, attachments, projectName, taskId, taskName, faqId, agentSuggestionId, fuaId, scId, agentEntity, agentType, contextMessage, contextData, formData, metadata, path, headers, contextId;
147
+ return _regeneratorRuntime.wrap(function (_context3) {
148
+ while (1) switch (_context3.prev = _context3.next) {
149
+ case 0:
150
+ input = body.input, projectId = body.projectId, lang = body.lang, userId = body.userId, firstName = body.firstName, lastName = body.lastName, chatId = body.chatId, clientId = body.clientId, clientName = body.clientName, feeId = body.feeId, agentId = body.agentId, isWebSearchActive = body.isWebSearchActive, isDeepSearchActive = body.isDeepSearchActive, attachments = body.attachments, projectName = body.projectName, taskId = body.taskId, taskName = body.taskName, faqId = body.faqId, agentSuggestionId = body.agentSuggestionId, fuaId = body.fuaId, scId = body.scId, agentEntity = body.agentEntity, agentType = body.agentType, contextMessage = body.contextMessage, contextData = body.contextData;
151
+ formData = new FormData();
152
+ formData.append('input', input);
153
+ formData.append('session_id', chatId);
154
+ if (attachments !== null && attachments !== void 0 && attachments.length) {
155
+ validateAttachments(attachments);
156
+ attachments.forEach(function (attachment) {
157
+ // Usar el archivo original si existe (para imágenes procesadas), sino usar el archivo normal
158
+ var fileToSend = attachment.originalFile || attachment.file;
159
+ formData.append('files', fileToSend);
160
+ });
161
+ }
162
+ if (agentEntity === 'global' && agentType !== 'orchestrator') {
163
+ metadata = {};
164
+ } else {
165
+ metadata = _objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({
166
+ lang: mapCORLang(lang)
167
+ }, userId ? {
168
+ user_id: userId
169
+ } : {}), firstName ? {
170
+ first_name: firstName
171
+ } : {}), lastName ? {
172
+ last_name: lastName
173
+ } : {}), feeId != null ? {
174
+ fee_id: feeId
175
+ } : {}), clientId != null ? {
176
+ client_id: clientId
177
+ } : {}), clientName ? {
178
+ client_name: clientName
179
+ } : {}), projectId ? {
180
+ project_id: projectId
181
+ } : {}), projectName ? {
182
+ project_name: projectName
183
+ } : {}), taskId != null ? {
184
+ task_id: taskId
185
+ } : {}), taskName ? {
186
+ task_name: taskName
187
+ } : {}), {}, {
188
+ subdomain: window.location.hostname.split('.')[0]
189
+ }, contextMessage && Object.keys(contextMessage).length > 0 ? {
190
+ context_message: contextMessage
191
+ } : {});
192
+ }
193
+ formData.append('metadata', JSON.stringify(metadata));
194
+ path = 'orchestrator?mode=stream';
195
+ if (isWebSearchActive === true) {
196
+ path += '&search_web=true';
197
+ }
198
+ if (isDeepSearchActive === true) {
199
+ path += '&search_web=true&depth=true';
200
+ }
201
+ headers = {
202
+ 'X-Agent-Id': agentId.toString()
203
+ }; // Pin de contexto (RFC §9.1): el header le dice al router a quién derivar antes de parsear el body.
204
+ // Mono-entidad con prioridad por jerarquía (tarea > proyecto > cliente).
205
+ // Solo aplica al orquestador (MAIA): es el único agente sin scope propio, donde el pin define la derivación.
206
+ // El scope persistente en `metadata` (project_id/client_id/task_id) es la "colección de uno" array-ready.
207
+ if (agentType === 'orchestrator') {
208
+ contextId = '';
209
+ if (taskId != null) contextId = "task:".concat(taskId);else if (projectId != null) contextId = "project:".concat(projectId);else if (clientId != null) contextId = "client:".concat(clientId);
210
+ if (contextId) {
211
+ headers['X-Context-Id'] = contextId;
212
+ }
213
+ }
214
+ if (faqId) {
215
+ headers['X-Faq-Id'] = faqId;
216
+ }
217
+ if (agentSuggestionId && agentEntity === 'global') {
218
+ headers['X-Agent-Suggestion'] = agentSuggestionId;
219
+ }
220
+ if (fuaId) {
221
+ headers['X-Fua-Id'] = fuaId;
222
+ }
223
+ if (scId) {
224
+ headers['X-SC-Id'] = scId;
225
+ }
226
+ if (contextData && Object.keys(contextData).length > 0) {
227
+ headers['X-Context-Data'] = encodeContextDataHeader(contextData);
228
+ }
229
+ return _context3.abrupt("return", fetchMaia({
230
+ path: path,
231
+ method: 'POST',
232
+ headers: headers,
233
+ body: formData,
234
+ signal: signal
235
+ }));
236
+ case 1:
237
+ case "end":
238
+ return _context3.stop();
239
+ }
240
+ }, _callee3);
241
+ }));
242
+ return function orchestrator(_x5, _x6) {
243
+ return _ref3.apply(this, arguments);
244
+ };
245
+ }();
246
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJtYXBDT1JMYW5nIiwiZmV0Y2hNYWlhIiwiRklMRV9GT1JNQVRfRVhURU5TSU9OUyIsIkZJTEVfUFJFU0VOVEFUSU9OX0ZPUk1BVF9FWFRFTlNJT05TIiwiRklMRV9NQUlBX1ZJU0lPTl9GT1JNQVRfRVhURU5TSU9OUyIsIkZJTEVfQVVESU9fRk9STUFUX0VYVEVOU0lPTlMiLCJnZXRNYXhBdHRhY2htZW50U2l6ZU1iIiwiZW5jb2RlQ29udGV4dERhdGFIZWFkZXIiLCJjb250ZXh0RGF0YSIsImpzb24iLCJKU09OIiwic3RyaW5naWZ5IiwiYnl0ZXMiLCJUZXh0RW5jb2RlciIsImVuY29kZSIsImJpbmFyeSIsImkiLCJsZW5ndGgiLCJTdHJpbmciLCJmcm9tQ2hhckNvZGUiLCJidG9hIiwiTUFYX0ZJTEVTIiwiQUxMT1dFRF9GSUxFX0VYVEVOU0lPTlMiLCJ2YWxpZGF0ZUF0dGFjaG1lbnRzIiwiYXR0YWNobWVudHMiLCJFcnJvciIsImNvbmNhdCIsImZvckVhY2giLCJhdHRhY2htZW50IiwiZmlsZUV4dGVuc2lvbiIsIm5hbWUiLCJ0b0xvd2VyQ2FzZSIsInN1YnN0cmluZyIsImxhc3RJbmRleE9mIiwiaW5jbHVkZXMiLCJqb2luIiwiZmlsZVNpemUiLCJzaXplIiwiTnVtYmVyIiwibWF4U2l6ZU1iIiwibWF4U2l6ZUJ5dGVzIiwidG9SZXRyeUxvY2FsZSIsImxhbmciLCJyZXRyeUNvbXBsZXRpb24iLCJfcmVmIiwiX2FzeW5jVG9HZW5lcmF0b3IiLCJfcmVnZW5lcmF0b3JSdW50aW1lIiwibWFyayIsIl9jYWxsZWUiLCJib2R5Iiwic2lnbmFsIiwic2Vzc2lvbklkIiwibWVtb3J5U2Vzc2lvbklkIiwiYWdlbnRJZCIsImlzV2ViU2VhcmNoQWN0aXZlIiwiaXNEZWVwU2VhcmNoQWN0aXZlIiwicHJvamVjdElkIiwiY2xpZW50SWQiLCJ0YXNrSWQiLCJhZ2VudFR5cGUiLCJwYXRoIiwiaGVhZGVycyIsImNvbnRleHRJZCIsInRpbWV6b25lIiwid3JhcCIsIl9jb250ZXh0IiwicHJldiIsIm5leHQiLCJ0b1N0cmluZyIsIk9iamVjdCIsImtleXMiLCJJbnRsIiwiRGF0ZVRpbWVGb3JtYXQiLCJyZXNvbHZlZE9wdGlvbnMiLCJ0aW1lWm9uZSIsImFicnVwdCIsIm1ldGhvZCIsInNlc3Npb25faWQiLCJwYXJlbnRfbWVzc2FnZV91dWlkIiwidHVybl9tZXNzYWdlX3V1aWRzIiwiYXNzaXN0YW50X21lc3NhZ2VfdXVpZCIsIm1lbW9yeV9zZXNzaW9uX2lkIiwicHJvbXB0IiwibG9jYWxlIiwibWV0YWRhdGEiLCJzdG9wIiwiX3giLCJfeDIiLCJhcHBseSIsImFyZ3VtZW50cyIsImNvbnRpbnVlVGhyZWFkIiwiX3JlZjIiLCJfY2FsbGVlMiIsInRocmVhZElkcyIsImRlY2lzaW9uIiwiZWRpdGVkQWN0aW9ucyIsInJlcXVlc3RCb2R5IiwiX2NvbnRleHQyIiwidGhyZWFkX2lkcyIsImVkaXRlZF9hY3Rpb25zIiwiX3gzIiwiX3g0Iiwib3JjaGVzdHJhdG9yIiwiX3JlZjMiLCJfY2FsbGVlMyIsImlucHV0IiwidXNlcklkIiwiZmlyc3ROYW1lIiwibGFzdE5hbWUiLCJjaGF0SWQiLCJjbGllbnROYW1lIiwiZmVlSWQiLCJwcm9qZWN0TmFtZSIsInRhc2tOYW1lIiwiZmFxSWQiLCJhZ2VudFN1Z2dlc3Rpb25JZCIsImZ1YUlkIiwic2NJZCIsImFnZW50RW50aXR5IiwiY29udGV4dE1lc3NhZ2UiLCJmb3JtRGF0YSIsIl9jb250ZXh0MyIsIkZvcm1EYXRhIiwiYXBwZW5kIiwiZmlsZVRvU2VuZCIsIm9yaWdpbmFsRmlsZSIsImZpbGUiLCJfb2JqZWN0U3ByZWFkIiwidXNlcl9pZCIsImZpcnN0X25hbWUiLCJsYXN0X25hbWUiLCJmZWVfaWQiLCJjbGllbnRfaWQiLCJjbGllbnRfbmFtZSIsInByb2plY3RfaWQiLCJwcm9qZWN0X25hbWUiLCJ0YXNrX2lkIiwidGFza19uYW1lIiwic3ViZG9tYWluIiwid2luZG93IiwibG9jYXRpb24iLCJob3N0bmFtZSIsInNwbGl0IiwiY29udGV4dF9tZXNzYWdlIiwiX3g1IiwiX3g2Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3NlcnZpY2VzL21haWEvT3JjaGVzdHJhdG9yL29yY2hlc3RyYXRvci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXG4vKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnMgKi9cbi8qIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBpbXBvcnQvbm8tY3ljbGUgKi9cbmltcG9ydCB7IEF0dGFjaG1lbnRGaWxlIH0gZnJvbSAnLi4vLi4vLi4vY29tcG9uZW50cy9tb2xlY3VsZXMvQ2hhdEZvb3Rlci9DaGF0Rm9vdGVyJ1xuaW1wb3J0IHsgbWFwQ09STGFuZyB9IGZyb20gJy4uLy4uLy4uL2xhbmcvdXRpbHMnXG5pbXBvcnQgeyBDaGF0SGlzdG9yeSB9IGZyb20gJy4uLy4uLy4uL3R5cGVzL0NoYXQnXG5pbXBvcnQgeyBBZ2VudEVudGl0eSwgQWdlbnRUeXBlIH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMvYWdlbnQnXG5pbXBvcnQgeyBDb250ZXh0TWVzc2FnZSB9IGZyb20gJy4uLy4uLy4uL3R5cGVzL2NvbnRleHRNZW50aW9uJ1xuaW1wb3J0IHsgZmV0Y2hNYWlhIH0gZnJvbSAnLi4vY2xpZW50J1xuaW1wb3J0IHtcbiAgRklMRV9GT1JNQVRfRVhURU5TSU9OUyxcbiAgRklMRV9QUkVTRU5UQVRJT05fRk9STUFUX0VYVEVOU0lPTlMsXG4gIEZJTEVfTUFJQV9WSVNJT05fRk9STUFUX0VYVEVOU0lPTlMsXG4gIEZJTEVfQVVESU9fRk9STUFUX0VYVEVOU0lPTlMsXG4gIGdldE1heEF0dGFjaG1lbnRTaXplTWIsXG59IGZyb20gJy4uLy4uLy4uL2NvbnN0YW50cy9mb3JtYXRFeHRlbnNpb25zJ1xuXG4vKiogQ29kaWZpY2EgSlNPTiBVVEYtOCBlbiBiYXNlNjQgcGFyYSBoZWFkZXJzIEhUVFAgKGV2aXRhIHByb2JsZW1hcyBjb24gY2FyYWN0ZXJlcyBlc3BlY2lhbGVzKS4gKi9cbmNvbnN0IGVuY29kZUNvbnRleHREYXRhSGVhZGVyID0gKGNvbnRleHREYXRhOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPik6IHN0cmluZyA9PiB7XG4gIGNvbnN0IGpzb24gPSBKU09OLnN0cmluZ2lmeShjb250ZXh0RGF0YSlcbiAgY29uc3QgYnl0ZXMgPSBuZXcgVGV4dEVuY29kZXIoKS5lbmNvZGUoanNvbilcbiAgbGV0IGJpbmFyeSA9ICcnXG4gIGZvciAobGV0IGkgPSAwOyBpIDwgYnl0ZXMubGVuZ3RoOyBpICs9IDEpIHtcbiAgICBiaW5hcnkgKz0gU3RyaW5nLmZyb21DaGFyQ29kZShieXRlc1tpXSEpXG4gIH1cbiAgcmV0dXJuIGJ0b2EoYmluYXJ5KVxufVxuXG50eXBlIE9yY2hlc3RyYXRvclJlcXVlc3QgPSB7XG4gIGlucHV0OiBzdHJpbmdcbiAgcHJvamVjdElkPzogbnVtYmVyXG4gIGxhbmc6IHN0cmluZ1xuICB1c2VySWQ6IHN0cmluZ1xuICBmaXJzdE5hbWU/OiBzdHJpbmdcbiAgbGFzdE5hbWU/OiBzdHJpbmdcbiAgY29tcGFueUlkOiBzdHJpbmdcbiAgY2hhdElkOiBzdHJpbmdcbiAgaGlzdG9yeTogQ2hhdEhpc3RvcnlbXVxuICBtZXNzYWdlSWQ6IHN0cmluZ1xuICBjbGllbnRJZD86IG51bWJlclxuICBjbGllbnROYW1lPzogc3RyaW5nXG4gIGZlZUlkPzogbnVtYmVyXG4gIGFnZW50TmFtZTogc3RyaW5nXG4gIGFnZW50SWQ6IG51bWJlciB8IHN0cmluZ1xuICBpc1dlYlNlYXJjaEFjdGl2ZT86IGJvb2xlYW5cbiAgaXNEZWVwU2VhcmNoQWN0aXZlPzogYm9vbGVhblxuICBhdHRhY2htZW50cz86IEF0dGFjaG1lbnRGaWxlW11cbiAgcHJvamVjdE5hbWU/OiBzdHJpbmdcbiAgdGFza0lkPzogbnVtYmVyXG4gIHRhc2tOYW1lPzogc3RyaW5nXG4gIGZhcUlkPzogc3RyaW5nXG4gIGFnZW50U3VnZ2VzdGlvbklkPzogc3RyaW5nXG4gIGZ1YUlkPzogc3RyaW5nXG4gIHNjSWQ/OiBzdHJpbmdcbiAgYWdlbnRFbnRpdHk/OiBBZ2VudEVudGl0eVxuICBhZ2VudFR5cGU/OiBBZ2VudFR5cGVcbiAgLyoqXG4gICAqIEVudGlkYWRlcyBtZW5jaW9uYWRhcyBjb24gYEBgIGVuIEVTRSBtZW5zYWplLiBTZSBpbnllY3RhIGNvbW9cbiAgICogYGNvbnRleHRfbWVzc2FnZWAgZGVudHJvIGRlIGxhIG1ldGFkYXRhIGRlbCBvcmNoZXN0cmF0b3IgeSBzb2xvIHZpdmUgZW5cbiAgICogZXNlIHR1cm5vIChubyBwcm9wYWdhIGFsIGNvbnRleHRvIGdsb2JhbCBuaSBhIGZ1dHVyb3MgbWVuc2FqZXMpLlxuICAgKi9cbiAgY29udGV4dE1lc3NhZ2U/OiBDb250ZXh0TWVzc2FnZVxuICAvKiogUGF5bG9hZCBkZWwgYmFubmVyIChob3N0IENPUikgZW52aWFkbyBjb21vIGhlYWRlciBgWC1Db250ZXh0LURhdGFgIChKU09OIGVuIGJhc2U2NCkuICovXG4gIGNvbnRleHREYXRhPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbn1cblxuY29uc3QgTUFYX0ZJTEVTID0gNVxuY29uc3QgQUxMT1dFRF9GSUxFX0VYVEVOU0lPTlMgPSBbXG4gICcudHh0JyxcbiAgJy5tZCcsXG4gICcuY3N2JyxcbiAgJy5kb2MnLFxuICAnLmRvY3gnLFxuICAnLnBwdCcsXG4gICcucHB0eCcsXG4gICcucG5nJyxcbiAgJy5qcGcnLFxuICAnLmpwZWcnLFxuICAnLnBkZicsXG4gICcueGxzeCcsXG4gICcueGxzJyxcbiAgJy5mbGFjJyxcbiAgJy5tNGEnLFxuICAnLm1wMycsXG4gICcubXA0JyxcbiAgJy5vZ2EnLFxuICAnLm9nZycsXG4gICcud2F2JyxcbiAgJy53ZWJtJyxcbl1cblxuY29uc3QgdmFsaWRhdGVBdHRhY2htZW50cyA9IChhdHRhY2htZW50czogQXR0YWNobWVudEZpbGVbXSk6IHZvaWQgPT4ge1xuICBpZiAoYXR0YWNobWVudHMubGVuZ3RoID4gTUFYX0ZJTEVTKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBNw6F4aW1vICR7TUFYX0ZJTEVTfSBhcmNoaXZvcyBwZXJtaXRpZG9zYClcbiAgfVxuXG4gIGF0dGFjaG1lbnRzLmZvckVhY2goYXR0YWNobWVudCA9PiB7XG4gICAgLy8gVmFsaWRhciBleHRlbnNpw7NuIGRlbCBhcmNoaXZvXG4gICAgY29uc3QgZmlsZUV4dGVuc2lvbiA9IGF0dGFjaG1lbnQubmFtZS50b0xvd2VyQ2FzZSgpLnN1YnN0cmluZyhhdHRhY2htZW50Lm5hbWUubGFzdEluZGV4T2YoJy4nKSlcbiAgICBpZiAoIUFMTE9XRURfRklMRV9FWFRFTlNJT05TLmluY2x1ZGVzKGZpbGVFeHRlbnNpb24pKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBFbCBhcmNoaXZvIFwiJHthdHRhY2htZW50Lm5hbWV9XCIgbm8gdGllbmUgdW4gZm9ybWF0byBzb3BvcnRhZG8uIEZvcm1hdG9zIHBlcm1pdGlkb3M6ICR7QUxMT1dFRF9GSUxFX0VYVEVOU0lPTlMuam9pbignLCAnKX1gXG4gICAgICApXG4gICAgfVxuXG4gICAgLy8gVmFsaWRhciB0YW1hw7FvIGRlbCBhcmNoaXZvIHNlZ8O6biBlbCB0aXBvXG4gICAgY29uc3QgZmlsZVNpemUgPSB0eXBlb2YgYXR0YWNobWVudC5zaXplID09PSAnbnVtYmVyJyA/IGF0dGFjaG1lbnQuc2l6ZSA6IE51bWJlcihhdHRhY2htZW50LnNpemUpXG4gICAgY29uc3QgbWF4U2l6ZU1iID0gZ2V0TWF4QXR0YWNobWVudFNpemVNYihmaWxlRXh0ZW5zaW9uKVxuICAgIGNvbnN0IG1heFNpemVCeXRlcyA9IG1heFNpemVNYiAqIDEwMjQgKiAxMDI0XG5cbiAgICBpZiAoXG4gICAgICAoRklMRV9GT1JNQVRfRVhURU5TSU9OUy5pbmNsdWRlcyhmaWxlRXh0ZW5zaW9uKSB8fFxuICAgICAgICBGSUxFX1BSRVNFTlRBVElPTl9GT1JNQVRfRVhURU5TSU9OUy5pbmNsdWRlcyhmaWxlRXh0ZW5zaW9uKSB8fFxuICAgICAgICBGSUxFX01BSUFfVklTSU9OX0ZPUk1BVF9FWFRFTlNJT05TLmluY2x1ZGVzKGZpbGVFeHRlbnNpb24pIHx8XG4gICAgICAgIEZJTEVfQVVESU9fRk9STUFUX0VYVEVOU0lPTlMuaW5jbHVkZXMoZmlsZUV4dGVuc2lvbikpICYmXG4gICAgICBmaWxlU2l6ZSA+IG1heFNpemVCeXRlc1xuICAgICkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBFbCBhcmNoaXZvIFwiJHthdHRhY2htZW50Lm5hbWV9XCIgZXhjZWRlIGVsIHRhbWHDsW8gbcOheGltbyBkZSAke21heFNpemVNYn1NQmApXG4gICAgfVxuICB9KVxufVxuXG50eXBlIENvbnRpbnVlVGhyZWFkUmVxdWVzdCA9IHtcbiAgdGhyZWFkSWRzOiBzdHJpbmdbXVxuICBzZXNzaW9uSWQ6IHN0cmluZ1xuICBkZWNpc2lvbjogJ2FwcHJvdmUnIHwgJ2VkaXQnIHwgJ3JlamVjdCdcbiAgZWRpdGVkQWN0aW9ucz86IEFycmF5PHsgdG9vbF9uYW1lOiBzdHJpbmc7IGFyZ3M6IFJlY29yZDxzdHJpbmcsIHVua25vd24+IH0+XG4gIGFnZW50SWQ6IG51bWJlciB8IHN0cmluZ1xuICBsYW5nOiBzdHJpbmdcbn1cblxuY29uc3QgdG9SZXRyeUxvY2FsZSA9IChsYW5nOiBzdHJpbmcpOiBzdHJpbmcgPT4ge1xuICBpZiAobGFuZyA9PT0gJ2JyJykgcmV0dXJuICdwdC1CUidcbiAgaWYgKGxhbmcgPT09ICdlcycpIHJldHVybiAnZXMtQVInXG4gIGlmIChsYW5nID09PSAnZnInKSByZXR1cm4gJ2ZyLUZSJ1xuICByZXR1cm4gJ2VuLVVTJ1xufVxuXG5leHBvcnQgdHlwZSBSZXRyeUNvbXBsZXRpb25SZXF1ZXN0ID0ge1xuICBzZXNzaW9uSWQ6IHN0cmluZ1xuICBtZW1vcnlTZXNzaW9uSWQ6IHN0cmluZ1xuICBhZ2VudElkOiBudW1iZXIgfCBzdHJpbmdcbiAgbGFuZzogc3RyaW5nXG4gIGlzV2ViU2VhcmNoQWN0aXZlPzogYm9vbGVhblxuICBpc0RlZXBTZWFyY2hBY3RpdmU/OiBib29sZWFuXG4gIHByb2plY3RJZD86IG51bWJlclxuICBjbGllbnRJZD86IG51bWJlclxuICB0YXNrSWQ/OiBudW1iZXJcbiAgYWdlbnRUeXBlPzogQWdlbnRUeXBlXG4gIGNvbnRleHREYXRhPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbn1cblxuZXhwb3J0IGNvbnN0IHJldHJ5Q29tcGxldGlvbiA9IGFzeW5jIChib2R5OiBSZXRyeUNvbXBsZXRpb25SZXF1ZXN0LCBzaWduYWw/OiBBYm9ydFNpZ25hbCk6IFByb21pc2U8UmVzcG9uc2U+ID0+IHtcbiAgY29uc3Qge1xuICAgIHNlc3Npb25JZCxcbiAgICBtZW1vcnlTZXNzaW9uSWQsXG4gICAgYWdlbnRJZCxcbiAgICBsYW5nLFxuICAgIGlzV2ViU2VhcmNoQWN0aXZlLFxuICAgIGlzRGVlcFNlYXJjaEFjdGl2ZSxcbiAgICBwcm9qZWN0SWQsXG4gICAgY2xpZW50SWQsXG4gICAgdGFza0lkLFxuICAgIGFnZW50VHlwZSxcbiAgICBjb250ZXh0RGF0YSxcbiAgfSA9IGJvZHlcblxuICBsZXQgcGF0aCA9ICdvcmNoZXN0cmF0b3IvcmV0cnlfY29tcGxldGlvbj9tb2RlPXN0cmVhbSdcbiAgaWYgKGlzV2ViU2VhcmNoQWN0aXZlID09PSB0cnVlKSB7XG4gICAgcGF0aCArPSAnJnNlYXJjaF93ZWI9dHJ1ZSdcbiAgfVxuICBpZiAoaXNEZWVwU2VhcmNoQWN0aXZlID09PSB0cnVlKSB7XG4gICAgcGF0aCArPSAnJnNlYXJjaF93ZWI9dHJ1ZSZkZXB0aD10cnVlJ1xuICB9XG5cbiAgY29uc3QgaGVhZGVyczogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgICAnWC1BZ2VudC1JZCc6IGFnZW50SWQudG9TdHJpbmcoKSxcbiAgICAnQWNjZXB0LUxhbmd1YWdlJzogbWFwQ09STGFuZyhsYW5nKSxcbiAgfVxuXG4gIGlmIChhZ2VudFR5cGUgPT09ICdvcmNoZXN0cmF0b3InKSB7XG4gICAgbGV0IGNvbnRleHRJZCA9ICcnXG4gICAgaWYgKHRhc2tJZCAhPSBudWxsKSBjb250ZXh0SWQgPSBgdGFzazoke3Rhc2tJZH1gXG4gICAgZWxzZSBpZiAocHJvamVjdElkICE9IG51bGwpIGNvbnRleHRJZCA9IGBwcm9qZWN0OiR7cHJvamVjdElkfWBcbiAgICBlbHNlIGlmIChjbGllbnRJZCAhPSBudWxsKSBjb250ZXh0SWQgPSBgY2xpZW50OiR7Y2xpZW50SWR9YFxuICAgIGlmIChjb250ZXh0SWQpIHtcbiAgICAgIGhlYWRlcnNbJ1gtQ29udGV4dC1JZCddID0gY29udGV4dElkXG4gICAgfVxuICB9XG5cbiAgaWYgKGNvbnRleHREYXRhICYmIE9iamVjdC5rZXlzKGNvbnRleHREYXRhKS5sZW5ndGggPiAwKSB7XG4gICAgaGVhZGVyc1snWC1Db250ZXh0LURhdGEnXSA9IGVuY29kZUNvbnRleHREYXRhSGVhZGVyKGNvbnRleHREYXRhKVxuICB9XG5cbiAgY29uc3QgdGltZXpvbmUgPVxuICAgIHR5cGVvZiBJbnRsICE9PSAndW5kZWZpbmVkJyA/IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSA6ICdBbWVyaWNhL0J1ZW5vc19BaXJlcydcblxuICByZXR1cm4gZmV0Y2hNYWlhKHtcbiAgICBwYXRoLFxuICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgIGhlYWRlcnMsXG4gICAgYm9keToge1xuICAgICAgc2Vzc2lvbl9pZDogc2Vzc2lvbklkLFxuICAgICAgcGFyZW50X21lc3NhZ2VfdXVpZDogbWVtb3J5U2Vzc2lvbklkLFxuICAgICAgdHVybl9tZXNzYWdlX3V1aWRzOiB7IGFzc2lzdGFudF9tZXNzYWdlX3V1aWQ6IG1lbW9yeVNlc3Npb25JZCB9LFxuICAgICAgbWVtb3J5X3Nlc3Npb25faWQ6IG1lbW9yeVNlc3Npb25JZCxcbiAgICAgIHByb21wdDogJycsXG4gICAgICBsb2NhbGU6IHRvUmV0cnlMb2NhbGUobGFuZyksXG4gICAgICB0aW1lem9uZSxcbiAgICAgIG1ldGFkYXRhOiB7fSxcbiAgICB9LFxuICAgIHNpZ25hbCxcbiAgfSlcbn1cblxuZXhwb3J0IGNvbnN0IGNvbnRpbnVlVGhyZWFkID0gYXN5bmMgKGJvZHk6IENvbnRpbnVlVGhyZWFkUmVxdWVzdCwgc2lnbmFsPzogQWJvcnRTaWduYWwpOiBQcm9taXNlPFJlc3BvbnNlPiA9PiB7XG4gIGNvbnN0IHsgdGhyZWFkSWRzLCBzZXNzaW9uSWQsIGRlY2lzaW9uLCBlZGl0ZWRBY3Rpb25zLCBhZ2VudElkLCBsYW5nIH0gPSBib2R5XG5cbiAgY29uc3QgcmVxdWVzdEJvZHk6IFJlY29yZDxzdHJpbmcsIHVua25vd24+ID0ge1xuICAgIHRocmVhZF9pZHM6IHRocmVhZElkcyxcbiAgICBzZXNzaW9uX2lkOiBzZXNzaW9uSWQsXG4gICAgZGVjaXNpb24sXG4gIH1cblxuICBpZiAoZGVjaXNpb24gPT09ICdlZGl0JyAmJiBlZGl0ZWRBY3Rpb25zKSB7XG4gICAgcmVxdWVzdEJvZHkuZWRpdGVkX2FjdGlvbnMgPSBlZGl0ZWRBY3Rpb25zXG4gIH1cblxuICByZXR1cm4gZmV0Y2hNYWlhKHtcbiAgICBwYXRoOiAnb3JjaGVzdHJhdG9yL2NvbnRpbnVlLXRocmVhZD9tb2RlPXN0cmVhbScsXG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczoge1xuICAgICAgJ1gtQWdlbnQtSWQnOiBhZ2VudElkLnRvU3RyaW5nKCksXG4gICAgICAnQWNjZXB0LUxhbmd1YWdlJzogbWFwQ09STGFuZyhsYW5nKSxcbiAgICB9LFxuICAgIGJvZHk6IHJlcXVlc3RCb2R5LFxuICAgIHNpZ25hbCxcbiAgfSlcbn1cblxuZXhwb3J0IGNvbnN0IG9yY2hlc3RyYXRvciA9IGFzeW5jIChib2R5OiBPcmNoZXN0cmF0b3JSZXF1ZXN0LCBzaWduYWw/OiBBYm9ydFNpZ25hbCk6IFByb21pc2U8UmVzcG9uc2U+ID0+IHtcbiAgY29uc3Qge1xuICAgIGlucHV0LFxuICAgIHByb2plY3RJZCxcbiAgICBsYW5nLFxuICAgIHVzZXJJZCxcbiAgICBmaXJzdE5hbWUsXG4gICAgbGFzdE5hbWUsXG4gICAgY2hhdElkLFxuICAgIGNsaWVudElkLFxuICAgIGNsaWVudE5hbWUsXG4gICAgZmVlSWQsXG4gICAgYWdlbnRJZCxcbiAgICBpc1dlYlNlYXJjaEFjdGl2ZSxcbiAgICBpc0RlZXBTZWFyY2hBY3RpdmUsXG4gICAgYXR0YWNobWVudHMsXG4gICAgcHJvamVjdE5hbWUsXG4gICAgdGFza0lkLFxuICAgIHRhc2tOYW1lLFxuICAgIGZhcUlkLFxuICAgIGFnZW50U3VnZ2VzdGlvbklkLFxuICAgIGZ1YUlkLFxuICAgIHNjSWQsXG4gICAgYWdlbnRFbnRpdHksXG4gICAgYWdlbnRUeXBlLFxuICAgIGNvbnRleHRNZXNzYWdlLFxuICAgIGNvbnRleHREYXRhLFxuICB9ID0gYm9keVxuXG4gIGNvbnN0IGZvcm1EYXRhID0gbmV3IEZvcm1EYXRhKClcbiAgZm9ybURhdGEuYXBwZW5kKCdpbnB1dCcsIGlucHV0KVxuICBmb3JtRGF0YS5hcHBlbmQoJ3Nlc3Npb25faWQnLCBjaGF0SWQpXG5cbiAgaWYgKGF0dGFjaG1lbnRzPy5sZW5ndGgpIHtcbiAgICB2YWxpZGF0ZUF0dGFjaG1lbnRzKGF0dGFjaG1lbnRzKVxuXG4gICAgYXR0YWNobWVudHMuZm9yRWFjaChhdHRhY2htZW50ID0+IHtcbiAgICAgIC8vIFVzYXIgZWwgYXJjaGl2byBvcmlnaW5hbCBzaSBleGlzdGUgKHBhcmEgaW3DoWdlbmVzIHByb2Nlc2FkYXMpLCBzaW5vIHVzYXIgZWwgYXJjaGl2byBub3JtYWxcbiAgICAgIGNvbnN0IGZpbGVUb1NlbmQgPSBhdHRhY2htZW50Lm9yaWdpbmFsRmlsZSB8fCBhdHRhY2htZW50LmZpbGVcbiAgICAgIGZvcm1EYXRhLmFwcGVuZCgnZmlsZXMnLCBmaWxlVG9TZW5kKVxuICAgIH0pXG4gIH1cblxuICBsZXQgbWV0YWRhdGE6IFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4gIGlmIChhZ2VudEVudGl0eSA9PT0gJ2dsb2JhbCcgJiYgYWdlbnRUeXBlICE9PSAnb3JjaGVzdHJhdG9yJykge1xuICAgIG1ldGFkYXRhID0ge31cbiAgfSBlbHNlIHtcbiAgICBtZXRhZGF0YSA9IHtcbiAgICAgIGxhbmc6IG1hcENPUkxhbmcobGFuZyksXG4gICAgICAuLi4odXNlcklkID8geyB1c2VyX2lkOiB1c2VySWQgfSA6IHt9KSxcbiAgICAgIC4uLihmaXJzdE5hbWUgPyB7IGZpcnN0X25hbWU6IGZpcnN0TmFtZSB9IDoge30pLFxuICAgICAgLi4uKGxhc3ROYW1lID8geyBsYXN0X25hbWU6IGxhc3ROYW1lIH0gOiB7fSksXG4gICAgICAuLi4oZmVlSWQgIT0gbnVsbCA/IHsgZmVlX2lkOiBmZWVJZCB9IDoge30pLFxuICAgICAgLi4uKGNsaWVudElkICE9IG51bGwgPyB7IGNsaWVudF9pZDogY2xpZW50SWQgfSA6IHt9KSxcbiAgICAgIC4uLihjbGllbnROYW1lID8geyBjbGllbnRfbmFtZTogY2xpZW50TmFtZSB9IDoge30pLFxuICAgICAgLi4uKHByb2plY3RJZCA/IHsgcHJvamVjdF9pZDogcHJvamVjdElkIH0gOiB7fSksXG4gICAgICAuLi4ocHJvamVjdE5hbWUgPyB7IHByb2plY3RfbmFtZTogcHJvamVjdE5hbWUgfSA6IHt9KSxcbiAgICAgIC4uLih0YXNrSWQgIT0gbnVsbCA/IHsgdGFza19pZDogdGFza0lkIH0gOiB7fSksXG4gICAgICAuLi4odGFza05hbWUgPyB7IHRhc2tfbmFtZTogdGFza05hbWUgfSA6IHt9KSxcbiAgICAgIHN1YmRvbWFpbjogd2luZG93LmxvY2F0aW9uLmhvc3RuYW1lLnNwbGl0KCcuJylbMF0sXG4gICAgICAuLi4oY29udGV4dE1lc3NhZ2UgJiYgT2JqZWN0LmtleXMoY29udGV4dE1lc3NhZ2UpLmxlbmd0aCA+IDAgPyB7IGNvbnRleHRfbWVzc2FnZTogY29udGV4dE1lc3NhZ2UgfSA6IHt9KSxcbiAgICB9XG4gIH1cbiAgZm9ybURhdGEuYXBwZW5kKCdtZXRhZGF0YScsIEpTT04uc3RyaW5naWZ5KG1ldGFkYXRhKSlcblxuICBsZXQgcGF0aCA9ICdvcmNoZXN0cmF0b3I/bW9kZT1zdHJlYW0nXG4gIGlmIChpc1dlYlNlYXJjaEFjdGl2ZSA9PT0gdHJ1ZSkge1xuICAgIHBhdGggKz0gJyZzZWFyY2hfd2ViPXRydWUnXG4gIH1cbiAgaWYgKGlzRGVlcFNlYXJjaEFjdGl2ZSA9PT0gdHJ1ZSkge1xuICAgIHBhdGggKz0gJyZzZWFyY2hfd2ViPXRydWUmZGVwdGg9dHJ1ZSdcbiAgfVxuXG4gIGNvbnN0IGhlYWRlcnM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gICAgJ1gtQWdlbnQtSWQnOiBhZ2VudElkLnRvU3RyaW5nKCksXG4gIH1cblxuICAvLyBQaW4gZGUgY29udGV4dG8gKFJGQyDCpzkuMSk6IGVsIGhlYWRlciBsZSBkaWNlIGFsIHJvdXRlciBhIHF1acOpbiBkZXJpdmFyIGFudGVzIGRlIHBhcnNlYXIgZWwgYm9keS5cbiAgLy8gTW9uby1lbnRpZGFkIGNvbiBwcmlvcmlkYWQgcG9yIGplcmFycXXDrWEgKHRhcmVhID4gcHJveWVjdG8gPiBjbGllbnRlKS5cbiAgLy8gU29sbyBhcGxpY2EgYWwgb3JxdWVzdGFkb3IgKE1BSUEpOiBlcyBlbCDDum5pY28gYWdlbnRlIHNpbiBzY29wZSBwcm9waW8sIGRvbmRlIGVsIHBpbiBkZWZpbmUgbGEgZGVyaXZhY2nDs24uXG4gIC8vIEVsIHNjb3BlIHBlcnNpc3RlbnRlIGVuIGBtZXRhZGF0YWAgKHByb2plY3RfaWQvY2xpZW50X2lkL3Rhc2tfaWQpIGVzIGxhIFwiY29sZWNjacOzbiBkZSB1bm9cIiBhcnJheS1yZWFkeS5cbiAgaWYgKGFnZW50VHlwZSA9PT0gJ29yY2hlc3RyYXRvcicpIHtcbiAgICBsZXQgY29udGV4dElkID0gJydcbiAgICBpZiAodGFza0lkICE9IG51bGwpIGNvbnRleHRJZCA9IGB0YXNrOiR7dGFza0lkfWBcbiAgICBlbHNlIGlmIChwcm9qZWN0SWQgIT0gbnVsbCkgY29udGV4dElkID0gYHByb2plY3Q6JHtwcm9qZWN0SWR9YFxuICAgIGVsc2UgaWYgKGNsaWVudElkICE9IG51bGwpIGNvbnRleHRJZCA9IGBjbGllbnQ6JHtjbGllbnRJZH1gXG4gICAgaWYgKGNvbnRleHRJZCkge1xuICAgICAgaGVhZGVyc1snWC1Db250ZXh0LUlkJ10gPSBjb250ZXh0SWRcbiAgICB9XG4gIH1cblxuICBpZiAoZmFxSWQpIHtcbiAgICBoZWFkZXJzWydYLUZhcS1JZCddID0gZmFxSWRcbiAgfVxuXG4gIGlmIChhZ2VudFN1Z2dlc3Rpb25JZCAmJiBhZ2VudEVudGl0eSA9PT0gJ2dsb2JhbCcpIHtcbiAgICBoZWFkZXJzWydYLUFnZW50LVN1Z2dlc3Rpb24nXSA9IGFnZW50U3VnZ2VzdGlvbklkXG4gIH1cblxuICBpZiAoZnVhSWQpIHtcbiAgICBoZWFkZXJzWydYLUZ1YS1JZCddID0gZnVhSWRcbiAgfVxuXG4gIGlmIChzY0lkKSB7XG4gICAgaGVhZGVyc1snWC1TQy1JZCddID0gc2NJZFxuICB9XG5cbiAgaWYgKGNvbnRleHREYXRhICYmIE9iamVjdC5rZXlzKGNvbnRleHREYXRhKS5sZW5ndGggPiAwKSB7XG4gICAgaGVhZGVyc1snWC1Db250ZXh0LURhdGEnXSA9IGVuY29kZUNvbnRleHREYXRhSGVhZGVyKGNvbnRleHREYXRhKVxuICB9XG5cbiAgcmV0dXJuIGZldGNoTWFpYSh7XG4gICAgcGF0aCxcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBoZWFkZXJzLFxuICAgIGJvZHk6IGZvcm1EYXRhLFxuICAgIHNpZ25hbCxcbiAgfSlcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQTtBQUNBO0FBQ0E7O0FBRUEsU0FBU0EsVUFBVSxRQUFRLHFCQUFxQjtBQUloRCxTQUFTQyxTQUFTLFFBQVEsV0FBVztBQUNyQyxTQUNFQyxzQkFBc0IsRUFDdEJDLG1DQUFtQyxFQUNuQ0Msa0NBQWtDLEVBQ2xDQyw0QkFBNEIsRUFDNUJDLHNCQUFzQixRQUNqQixxQ0FBcUM7O0FBRTVDO0FBQ0EsSUFBTUMsdUJBQXVCLEdBQUcs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
@@ -0,0 +1,43 @@
1
+ import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
2
+ import _regeneratorRuntime from "@babel/runtime/regenerator";
3
+ import { fetchMaia } from '../client';
4
+
5
+ /** Formato de respuesta del API: { data: Array<{ id, name, totalProyectos? }> } */
6
+
7
+ export var getRecentClients = /*#__PURE__*/function () {
8
+ var _ref = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
9
+ var _json$data;
10
+ var response, json, items;
11
+ return _regeneratorRuntime.wrap(function (_context) {
12
+ while (1) switch (_context.prev = _context.next) {
13
+ case 0:
14
+ _context.next = 1;
15
+ return fetchMaia({
16
+ path: 'recent-clients',
17
+ method: 'GET'
18
+ });
19
+ case 1:
20
+ response = _context.sent;
21
+ if (response.ok) {
22
+ _context.next = 2;
23
+ break;
24
+ }
25
+ throw new Error('Failed fetching recent clients');
26
+ case 2:
27
+ _context.next = 3;
28
+ return response.json();
29
+ case 3:
30
+ json = _context.sent;
31
+ items = Array.isArray(json) ? json : (_json$data = json === null || json === void 0 ? void 0 : json.data) !== null && _json$data !== void 0 ? _json$data : [];
32
+ return _context.abrupt("return", items);
33
+ case 4:
34
+ case "end":
35
+ return _context.stop();
36
+ }
37
+ }, _callee);
38
+ }));
39
+ return function getRecentClients() {
40
+ return _ref.apply(this, arguments);
41
+ };
42
+ }();
43
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJmZXRjaE1haWEiLCJnZXRSZWNlbnRDbGllbnRzIiwiX3JlZiIsIl9hc3luY1RvR2VuZXJhdG9yIiwiX3JlZ2VuZXJhdG9yUnVudGltZSIsIm1hcmsiLCJfY2FsbGVlIiwiX2pzb24kZGF0YSIsInJlc3BvbnNlIiwianNvbiIsIml0ZW1zIiwid3JhcCIsIl9jb250ZXh0IiwicHJldiIsIm5leHQiLCJwYXRoIiwibWV0aG9kIiwic2VudCIsIm9rIiwiRXJyb3IiLCJBcnJheSIsImlzQXJyYXkiLCJkYXRhIiwiYWJydXB0Iiwic3RvcCIsImFwcGx5IiwiYXJndW1lbnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3NlcnZpY2VzL21haWEvUmVjZW50Q2xpZW50cy9nZXRSZWNlbnRDbGllbnRzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZldGNoTWFpYSB9IGZyb20gJy4uL2NsaWVudCdcblxuLyoqIEZvcm1hdG8gZGUgcmVzcHVlc3RhIGRlbCBBUEk6IHsgZGF0YTogQXJyYXk8eyBpZCwgbmFtZSwgdG90YWxQcm95ZWN0b3M/IH0+IH0gKi9cbmV4cG9ydCB0eXBlIFJlY2VudENsaWVudEl0ZW0gPSB7XG4gIGlkOiBudW1iZXJcbiAgbmFtZTogc3RyaW5nXG4gIHRvdGFsUHJveWVjdG9zPzogbnVtYmVyXG59XG5cbmV4cG9ydCBjb25zdCBnZXRSZWNlbnRDbGllbnRzID0gYXN5bmMgKCk6IFByb21pc2U8UmVjZW50Q2xpZW50SXRlbVtdPiA9PiB7XG4gIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2hNYWlhKHtcbiAgICBwYXRoOiAncmVjZW50LWNsaWVudHMnLFxuICAgIG1ldGhvZDogJ0dFVCcsXG4gIH0pXG5cbiAgaWYgKCFyZXNwb25zZS5vaykge1xuICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIGZldGNoaW5nIHJlY2VudCBjbGllbnRzJylcbiAgfVxuXG4gIGNvbnN0IGpzb24gPSBhd2FpdCByZXNwb25zZS5qc29uKClcbiAgY29uc3QgaXRlbXMgPSBBcnJheS5pc0FycmF5KGpzb24pID8ganNvbiA6IChqc29uPy5kYXRhID8/IFtdKVxuICByZXR1cm4gaXRlbXNcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7QUFBQSxTQUFTQSxTQUFTLFFBQVEsV0FBVzs7QUFFckM7O0FBT0EsT0FBTyxJQUFNQyxnQkFBZ0I7RUFBQSxJQUFBQyxJQUFBLEdBQUFDLGlCQUFBLGNBQUFDLG1CQUFBLENBQUFDLElBQUEsQ0FBRyxTQUFBQyxRQUFBO0lBQUEsSUFBQUMsVUFBQTtJQUFBLElBQUFDLFFBQUEsRUFBQUMsSUFBQSxFQUFBQyxLQUFBO0lBQUEsT0FBQU4sbUJBQUEsQ0FBQU8sSUFBQSxXQUFBQyxRQUFBO01BQUEsa0JBQUFBLFFBQUEsQ0FBQUMsSUFBQSxHQUFBRCxRQUFBLENBQUFFLElBQUE7UUFBQTtVQUFBRixRQUFBLENBQUFFLElBQUE7VUFBQSxPQUNQZCxTQUFTLENBQUM7WUFDL0JlLElBQUksRUFBRSxnQkFBZ0I7WUFDdEJDLE1BQU0sRUFBRTtVQUNWLENBQUMsQ0FBQztRQUFBO1VBSElSLFFBQVEsR0FBQUksUUFBQSxDQUFBSyxJQUFBO1VBQUEsSUFLVFQsUUFBUSxDQUFDVSxFQUFFO1lBQUFOLFFBQUEsQ0FBQUUsSUFBQTtZQUFBO1VBQUE7VUFBQSxNQUNSLElBQUlLLEtBQUssQ0FBQyxnQ0FBZ0MsQ0FBQztRQUFBO1VBQUFQLFFBQUEsQ0FBQUUsSUFBQTtVQUFBLE9BR2hDTixRQUFRLENBQUNDLElBQUksQ0FBQyxDQUFDO1FBQUE7VUFBNUJBLElBQUksR0FBQUcsUUFBQSxDQUFBSyxJQUFBO1VBQ0pQLEtBQUssR0FBR1UsS0FBSyxDQUFDQyxPQUFPLENBQUNaLElBQUksQ0FBQyxHQUFHQSxJQUFJLElBQUFGLFVBQUEsR0FBSUUsSUFBSSxhQUFKQSxJQUFJLHVCQUFKQSxJQUFJLENBQUVhLElBQUksY0FBQWYsVUFBQSxjQUFBQSxVQUFBLEdBQUksRUFBRztVQUFBLE9BQUFLLFFBQUEsQ0FBQVcsTUFBQSxXQUN0RGIsS0FBSztRQUFBO1FBQUE7VUFBQSxPQUFBRSxRQUFBLENBQUFZLElBQUE7TUFBQTtJQUFBLEdBQUFsQixPQUFBO0VBQUEsQ0FDYjtFQUFBLGdCQWJZTCxnQkFBZ0JBLENBQUE7SUFBQSxPQUFBQyxJQUFBLENBQUF1QixLQUFBLE9BQUFDLFNBQUE7RUFBQTtBQUFBLEdBYTVCIiwiaWdub3JlTGlzdCI6W119
@@ -0,0 +1,6 @@
1
+ import { getRecentClients } from './getRecentClients';
2
+ export { getRecentClients } from './getRecentClients';
3
+ export default {
4
+ getRecentClients: getRecentClients
5
+ };
6
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJnZXRSZWNlbnRDbGllbnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3NlcnZpY2VzL21haWEvUmVjZW50Q2xpZW50cy9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZXRSZWNlbnRDbGllbnRzIH0gZnJvbSAnLi9nZXRSZWNlbnRDbGllbnRzJ1xuXG5leHBvcnQgeyBnZXRSZWNlbnRDbGllbnRzLCB0eXBlIFJlY2VudENsaWVudEl0ZW0gfSBmcm9tICcuL2dldFJlY2VudENsaWVudHMnXG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgZ2V0UmVjZW50Q2xpZW50cyxcbn1cbiJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsZ0JBQWdCLFFBQVEsb0JBQW9CO0FBRXJELFNBQVNBLGdCQUFnQixRQUErQixvQkFBb0I7QUFFNUUsZUFBZTtFQUNiQSxnQkFBZ0IsRUFBaEJBO0FBQ0YsQ0FBQyIsImlnbm9yZUxpc3QiOltdfQ==