@projectcor/maia-components 2.44.5-0 → 2.44.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (427) hide show
  1. package/README.md +2 -0
  2. package/lib/App.js +19 -44
  3. package/lib/components/atoms/AttachmentCard/AttachmentCardAudio.js +51 -5
  4. package/lib/components/atoms/AttachmentPreviewModal/AttachmentPreviewModal.js +76 -18
  5. package/lib/components/atoms/AttachmentPreviewModal/PptPreview.js +31 -3
  6. package/lib/components/atoms/AttachmentPreviewModal/WordPreview.js +4 -2
  7. package/lib/components/atoms/ContextMentionChip/buildChipElement.js +255 -15
  8. package/lib/components/atoms/ContextMentionEditor/ContextMentionEditor.js +34 -5
  9. package/lib/components/atoms/FrequentlyUsedActions/FrequentlyUsedActions.js +1 -3
  10. package/lib/components/atoms/FrequentlyUsedActions/FrequentlyUsedActions.styles.js +7 -19
  11. package/lib/components/atoms/MAIAInput/MAIAInput.js +10 -4
  12. package/lib/components/atoms/MAIAInput/MAIAInputEditor.js +60 -8
  13. package/lib/components/atoms/OnboardingModalButton/OnboardingModalButton.js +15 -3
  14. package/lib/components/atoms/ReasoningBlock/ReasoningBlock.js +2 -7
  15. package/lib/components/atoms/ReasoningBlock/ReasoningBlock.styles.js +16 -21
  16. package/lib/components/atoms/ReasoningBlock/ReasoningSteps.js +5 -7
  17. package/lib/components/atoms/ReasoningBlock/ReasoningTimeline.js +52 -72
  18. package/lib/components/atoms/ReasoningBlock/reasoningLeading.js +1 -6
  19. package/lib/components/atoms/ReasoningBlock/reasoningLiveNarration.js +15 -36
  20. package/lib/components/index.js +1 -2
  21. package/lib/components/molecules/AbmSection/AbmAccessibilitySection/AbmAccessibilitySection.js +29 -5
  22. package/lib/components/molecules/AbmSection/AbmGeneralSection.js +40 -6
  23. package/lib/components/molecules/AbmSection/AbmKnowledgeSection.js +90 -18
  24. package/lib/components/molecules/AbmSection/AbmLoaderFiles.js +15 -5
  25. package/lib/components/molecules/ChatAIContent/ChatAIContent.js +3 -7
  26. package/lib/components/molecules/ChatAIHome/ChatAIHome.js +6 -21
  27. package/lib/components/molecules/ChatAIMessages/ChatAIMessages.js +47 -19
  28. package/lib/components/molecules/ChatAIMessages/newStyles.js +26 -29
  29. package/lib/components/molecules/ChatAIModal/ChatAIModal.helpers.js +4 -147
  30. package/lib/components/molecules/ChatAIModal/ChatAIModal.js +108 -64
  31. package/lib/components/molecules/ChatAIModal/components/ChatAiAgentOptions/ChatAiAgentOptions.js +2 -3
  32. package/lib/components/molecules/ChatAIModal/components/ChatAiModalFooter/ChatAiModalFooter.js +153 -15
  33. package/lib/components/molecules/ChatAIModal/components/ChatAiModalFooter/ChatAiModalFooter.styles.js +26 -2
  34. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.js +86 -76
  35. package/lib/components/molecules/ChatFooter/ChatFooter.js +3 -5
  36. package/lib/components/molecules/ChatFooter/ChatFooterFaqs.js +44 -9
  37. package/lib/components/molecules/Sidebar/Sidebar.js +23 -41
  38. package/lib/components/organisms/AbmAgentModal/AbmAgentModal.js +171 -56
  39. package/lib/constants/permissions/index.js +2 -2
  40. package/lib/constants/permissions/utils.js +1 -4
  41. package/lib/dev/DevReasoningTimeline.js +37 -68
  42. package/lib/dev/Providers.js +3 -5
  43. package/lib/hooks/useChatManager/useChatManager.js +351 -76
  44. package/lib/hooks/useChatMessages/useChatMessages.js +82 -12
  45. package/lib/hooks/useClientSearch.js +32 -4
  46. package/lib/hooks/useContextMentions.js +163 -2
  47. package/lib/hooks/useContextPinPopover.js +75 -16
  48. package/lib/hooks/useEntitySearch.js +391 -38
  49. package/lib/hooks/useFrequentlyUsedActions.js +22 -60
  50. package/lib/hooks/useMentionPopover.js +35 -9
  51. package/lib/hooks/useMinimizedPillBottomOffset.js +45 -15
  52. package/lib/hooks/useProjectSearch.js +58 -4
  53. package/lib/hooks/useProjectSummaryConfig.js +52 -14
  54. package/lib/hooks/useRecentClientsSearch.js +32 -4
  55. package/lib/index.js +2 -5
  56. package/lib/lang/br/index.js +9 -26
  57. package/lib/lang/en/index.js +9 -26
  58. package/lib/lang/es/index.js +9 -26
  59. package/lib/lang/fr/index.js +9 -26
  60. package/lib/services/maia/Actions/getFrequentlyUsedActions.js +1 -1
  61. package/lib/services/maia/Agents/getAgents.js +242 -78
  62. package/lib/services/maia/Orchestrator/orchestrator.js +121 -38
  63. package/lib/store/sessions/sessionNotifications.js +41 -35
  64. package/lib/store/sessions/sessionStreamManager.js +52 -40
  65. package/lib/styles/cascade.js +3 -29
  66. package/lib/styles/transitions.js +1 -3
  67. package/lib/types/agentModal.js +1 -1
  68. package/lib/types/global.d.js +1 -1
  69. package/lib/utils/hoursPlannerQuickActionType.js +1 -74
  70. package/lib/utils/imagePreprocessor.js +37 -12
  71. package/lib/utils/streamActivityMessages.js +21 -32
  72. package/package.json +1 -1
  73. package/lib/components/atoms/ActionableButton.spec.js +0 -111
  74. package/lib/components/atoms/AgentActivityIndicator/AgentActivityIndicator.spec.js +0 -52
  75. package/lib/components/atoms/AgentActivityIndicator/AgentActivityIndicator.utils.spec.js +0 -11
  76. package/lib/components/atoms/ApprovalBox/ApprovalBox.spec.js +0 -135
  77. package/lib/components/atoms/AttachmentCard/AttachmentCard.spec.js +0 -123
  78. package/lib/components/atoms/AttachmentCard/AttachmentCardAudio.helpers.js +0 -65
  79. package/lib/components/atoms/AttachmentCard/AttachmentCardAudio.helpers.spec.js +0 -66
  80. package/lib/components/atoms/AttachmentCard/AttachmentCardAudio.spec.js +0 -211
  81. package/lib/components/atoms/AttachmentCard/AttachmentCardImage.spec.js +0 -78
  82. package/lib/components/atoms/AttachmentPreviewModal/AttachmentPreviewModal.helpers.js +0 -55
  83. package/lib/components/atoms/AttachmentPreviewModal/AttachmentPreviewModal.helpers.spec.js +0 -41
  84. package/lib/components/atoms/AttachmentPreviewModal/AttachmentPreviewModal.spec.js +0 -253
  85. package/lib/components/atoms/AttachmentPreviewModal/ExcelPreview.spec.js +0 -80
  86. package/lib/components/atoms/AttachmentPreviewModal/PptPreview.helpers.js +0 -31
  87. package/lib/components/atoms/AttachmentPreviewModal/PptPreview.helpers.spec.js +0 -33
  88. package/lib/components/atoms/AttachmentPreviewModal/PptPreview.spec.js +0 -25
  89. package/lib/components/atoms/AttachmentPreviewModal/WordPreview.helpers.js +0 -4
  90. package/lib/components/atoms/AttachmentPreviewModal/WordPreview.helpers.spec.js +0 -11
  91. package/lib/components/atoms/AttachmentPreviewModal/WordPreview.spec.js +0 -77
  92. package/lib/components/atoms/Backdrop/Backdrop.spec.js +0 -28
  93. package/lib/components/atoms/CardMenu/CardMenu.spec.js +0 -56
  94. package/lib/components/atoms/ChatClientSelector/ChatClientSelector.spec.js +0 -67
  95. package/lib/components/atoms/Checkbox/Checkbox.spec.js +0 -27
  96. package/lib/components/atoms/Chip/Chip.spec.js +0 -82
  97. package/lib/components/atoms/ChipLlm/ChipLlm.spec.js +0 -26
  98. package/lib/components/atoms/ClientSelector/ClientSelector.spec.js +0 -88
  99. package/lib/components/atoms/ContextMentionChip/ContextMentionChip.spec.js +0 -29
  100. package/lib/components/atoms/ContextMentionChip/MentionOverflowLabel.spec.js +0 -46
  101. package/lib/components/atoms/ContextMentionChip/buildChipElement.helpers.js +0 -227
  102. package/lib/components/atoms/ContextMentionChip/buildChipElement.helpers.spec.js +0 -77
  103. package/lib/components/atoms/ContextMentionChip/buildChipElement.spec.js +0 -81
  104. package/lib/components/atoms/ContextMentionEditor/ContextMentionEditor.helpers.js +0 -31
  105. package/lib/components/atoms/ContextMentionEditor/ContextMentionEditor.helpers.spec.js +0 -48
  106. package/lib/components/atoms/ContextMentionEditor/ContextMentionEditor.spec.js +0 -231
  107. package/lib/components/atoms/ContextMentionItem/ContextMentionItem.spec.js +0 -107
  108. package/lib/components/atoms/ContextMentionPopover/ContextMentionPopover.spec.js +0 -136
  109. package/lib/components/atoms/CopyToClipboard.spec.js +0 -74
  110. package/lib/components/atoms/EditableLabel/EditableLabel.spec.js +0 -76
  111. package/lib/components/atoms/EntitySelector/EntitySelector.spec.js +0 -86
  112. package/lib/components/atoms/Expand/Expand.spec.js +0 -57
  113. package/lib/components/atoms/Fade/Fade.spec.js +0 -31
  114. package/lib/components/atoms/FeedbackButton/FeedbackButton.spec.js +0 -75
  115. package/lib/components/atoms/FrequentlyAskedQuestions/FrequentlyAskedQuestions.spec.js +0 -104
  116. package/lib/components/atoms/FrequentlyUsedActions/FrequentlyUsedActions.spec.js +0 -91
  117. package/lib/components/atoms/HelpButton.spec.js +0 -87
  118. package/lib/components/atoms/ImagePreview/ImagePreview.spec.js +0 -96
  119. package/lib/components/atoms/ListMenuOption/ListMenuOption.spec.js +0 -54
  120. package/lib/components/atoms/LoadingFaqs/LoadingFaqs.spec.js +0 -21
  121. package/lib/components/atoms/LoadingSearchClients/LoadingSearchClients.spec.js +0 -20
  122. package/lib/components/atoms/LoadingSearchProjects/LoadingSearchProjects.spec.js +0 -26
  123. package/lib/components/atoms/LoadingText/LoadingText.spec.js +0 -25
  124. package/lib/components/atoms/MAIAButton/MAIAButton.spec.js +0 -42
  125. package/lib/components/atoms/MAIAError/MAIAError.spec.js +0 -27
  126. package/lib/components/atoms/MAIAInput/MAIAInput.helpers.js +0 -12
  127. package/lib/components/atoms/MAIAInput/MAIAInput.helpers.spec.js +0 -26
  128. package/lib/components/atoms/MAIAInput/MAIAInput.spec.js +0 -430
  129. package/lib/components/atoms/MAIAInput/MAIAInputEditor.helpers.js +0 -50
  130. package/lib/components/atoms/MAIAInput/MAIAInputEditor.helpers.spec.js +0 -20
  131. package/lib/components/atoms/MAIAInput/MAIAInputEditor.spec.js +0 -53
  132. package/lib/components/atoms/MAIAInput/maiaInputLayout.spec.js +0 -22
  133. package/lib/components/atoms/MaiaStreamdown/MaiaStreamdown.spec.js +0 -64
  134. package/lib/components/atoms/MaiaWrapper/MaiaWrapper.spec.js +0 -43
  135. package/lib/components/atoms/MaiaWrapper/MaiaWrapperBase.spec.js +0 -114
  136. package/lib/components/atoms/MaiaWrapper/ModernMaiaWrapper.spec.js +0 -51
  137. package/lib/components/atoms/ModalClientAccess/ModalClientAccess.spec.js +0 -48
  138. package/lib/components/atoms/ModalProject/ModalProject.spec.js +0 -66
  139. package/lib/components/atoms/NextPageLoader.spec.js +0 -37
  140. package/lib/components/atoms/OnboardingModalButton/OnboardingModal.spec.js +0 -20
  141. package/lib/components/atoms/OnboardingModalButton/OnboardingModalButton.helpers.js +0 -17
  142. package/lib/components/atoms/OnboardingModalButton/OnboardingModalButton.helpers.spec.js +0 -35
  143. package/lib/components/atoms/OnboardingModalButton/OnboardingModalButton.spec.js +0 -47
  144. package/lib/components/atoms/OptionAccessibility/OptionAccessibility.spec.js +0 -86
  145. package/lib/components/atoms/PrimaryButton.spec.js +0 -42
  146. package/lib/components/atoms/ProjectSelector/ProjectSelector.spec.js +0 -69
  147. package/lib/components/atoms/ReasoningBlock/ReasoningBlock.spec.js +0 -69
  148. package/lib/components/atoms/ReasoningBlock/ReasoningSteps.spec.js +0 -59
  149. package/lib/components/atoms/ReasoningBlock/ReasoningTimeline.spec.js +0 -132
  150. package/lib/components/atoms/ReasoningBlock/groupParallelSteps.spec.js +0 -162
  151. package/lib/components/atoms/ReasoningBlock/reasoningLeading.spec.js +0 -70
  152. package/lib/components/atoms/ReasoningBlock/reasoningLiveNarration.spec.js +0 -120
  153. package/lib/components/atoms/ReasoningBlock/reasoningMotion.js +0 -4
  154. package/lib/components/atoms/ReasoningBlock/reasoningTimeline.helpers.js +0 -10
  155. package/lib/components/atoms/ReasoningBlock/reasoningTimeline.helpers.spec.js +0 -31
  156. package/lib/components/atoms/ReasoningBlock/useCollapsibleHeight.js +0 -52
  157. package/lib/components/atoms/ReasoningBlock/useCollapsibleHeight.spec.js +0 -90
  158. package/lib/components/atoms/SessionGeneratingDot/SessionGeneratingDot.spec.js +0 -16
  159. package/lib/components/atoms/SkillsDropdown/SkillsDropdown.spec.js +0 -107
  160. package/lib/components/atoms/SlashCommandChip/SlashCommandChip.spec.js +0 -24
  161. package/lib/components/atoms/SlashCommandDropdown/SlashCommandDropdown.spec.js +0 -85
  162. package/lib/components/atoms/Switch/Switch.spec.js +0 -41
  163. package/lib/components/atoms/TextArea/CustomTextArea.spec.js +0 -52
  164. package/lib/components/atoms/TextArea/TextArea.spec.js +0 -68
  165. package/lib/components/atoms/ThirdButton.spec.js +0 -29
  166. package/lib/components/atoms/VideoModal/VideoModal.spec.js +0 -68
  167. package/lib/components/atoms/WithAppCfg.spec.js +0 -60
  168. package/lib/components/molecules/AbmSection/AbmAccessibilitySection/AbmAccessibilitySection.helpers.js +0 -37
  169. package/lib/components/molecules/AbmSection/AbmAccessibilitySection/AbmAccessibilitySection.helpers.spec.js +0 -53
  170. package/lib/components/molecules/AbmSection/AbmAccessibilitySection/AbmAccessibilitySection.spec.js +0 -371
  171. package/lib/components/molecules/AbmSection/AbmGeneralSection.helpers.js +0 -39
  172. package/lib/components/molecules/AbmSection/AbmGeneralSection.helpers.spec.js +0 -57
  173. package/lib/components/molecules/AbmSection/AbmGeneralSection.spec.js +0 -227
  174. package/lib/components/molecules/AbmSection/AbmKnowledgeSection.helpers.js +0 -86
  175. package/lib/components/molecules/AbmSection/AbmKnowledgeSection.helpers.spec.js +0 -108
  176. package/lib/components/molecules/AbmSection/AbmKnowledgeSection.spec.js +0 -254
  177. package/lib/components/molecules/AbmSection/AbmLoaderFiles.helpers.js +0 -17
  178. package/lib/components/molecules/AbmSection/AbmLoaderFiles.helpers.spec.js +0 -50
  179. package/lib/components/molecules/AbmSection/AbmLoaderFiles.spec.js +0 -94
  180. package/lib/components/molecules/AgentInputBlock/AgentInputBlockMessage.js +0 -83
  181. package/lib/components/molecules/AgentInputBlock/AgentInputBlockMessage.styles.js +0 -30
  182. package/lib/components/molecules/AgentInputBlock/index.js +0 -5
  183. package/lib/components/molecules/AgentInputBlock/resolveAgentInputBlock.js +0 -52
  184. package/lib/components/molecules/AgentInputBlock/resolveAgentInputBlock.spec.js +0 -76
  185. package/lib/components/molecules/AgentInputBlock/resolveLegacyContextSession.js +0 -20
  186. package/lib/components/molecules/AgentInputBlock/resolveLegacyContextSession.spec.js +0 -34
  187. package/lib/components/molecules/AgentInputBlock/useAgentChangeModelAction.js +0 -36
  188. package/lib/components/molecules/ChatAIClientSelector/ChatAIClientSelector.spec.js +0 -66
  189. package/lib/components/molecules/ChatAIContent/ChatAIContent.spec.js +0 -145
  190. package/lib/components/molecules/ChatAIHistory/ChatAIHistory.spec.js +0 -204
  191. package/lib/components/molecules/ChatAIHome/ChatAIHome.spec.js +0 -246
  192. package/lib/components/molecules/ChatAIHome/ChatAIHomeMaiaker.spec.js +0 -86
  193. package/lib/components/molecules/ChatAIMessages/ChatAICreateAgentActions.spec.js +0 -104
  194. package/lib/components/molecules/ChatAIMessages/ChatAIMessages.helpers.js +0 -54
  195. package/lib/components/molecules/ChatAIMessages/ChatAIMessages.helpers.spec.js +0 -77
  196. package/lib/components/molecules/ChatAIMessages/ChatAIMessages.spec.js +0 -410
  197. package/lib/components/molecules/ChatAIMessages/ChatAISuggestions.spec.js +0 -46
  198. package/lib/components/molecules/ChatAIModal/ChatAIModal.helpers.spec.js +0 -471
  199. package/lib/components/molecules/ChatAIModal/ChatAIModal.spec.js +0 -659
  200. package/lib/components/molecules/ChatAIModal/components/ChatAiAgentOptions/ChatAiAgentOptions.helpers.js +0 -5
  201. package/lib/components/molecules/ChatAIModal/components/ChatAiAgentOptions/ChatAiAgentOptions.helpers.spec.js +0 -33
  202. package/lib/components/molecules/ChatAIModal/components/ChatAiAgentOptions/ChatAiAgentOptions.spec.js +0 -116
  203. package/lib/components/molecules/ChatAIModal/components/ChatAiModalFooter/ChatAiModalFooter.spec.js +0 -134
  204. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.helpers.js +0 -30
  205. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.helpers.spec.js +0 -95
  206. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.spec.js +0 -241
  207. package/lib/components/molecules/ChatAIModal/components/MaiaMinimizedPill/MaiaMinimizedPill.spec.js +0 -37
  208. package/lib/components/molecules/ChatAIModal/constants.spec.js +0 -16
  209. package/lib/components/molecules/ChatAIModal/floatingPanelMotion/FloatingPanelMotion.spec.js +0 -22
  210. package/lib/components/molecules/ChatAIModal/floatingPanelMotion/useFloatingPanelDragTilt.spec.js +0 -67
  211. package/lib/components/molecules/ChatAIModal/layout.spec.js +0 -72
  212. package/lib/components/molecules/ChatAIMyAgents/ChatAIMyAgents.spec.js +0 -172
  213. package/lib/components/molecules/ChatAIMySkills/ChatAIMySkills.spec.js +0 -128
  214. package/lib/components/molecules/ChatAIProjectSelector/ChatAIProjectSelector.spec.js +0 -66
  215. package/lib/components/molecules/ChatFooter/ChatFooter.spec.js +0 -355
  216. package/lib/components/molecules/ChatFooter/ChatFooterCorAccess.spec.js +0 -10
  217. package/lib/components/molecules/ChatFooter/ChatFooterFaqs.helpers.js +0 -48
  218. package/lib/components/molecules/ChatFooter/ChatFooterFaqs.helpers.spec.js +0 -82
  219. package/lib/components/molecules/ChatFooter/ChatFooterFaqs.spec.js +0 -139
  220. package/lib/components/molecules/ContextMentionInput/ContextMentionInput.spec.js +0 -84
  221. package/lib/components/molecules/MessageFeedback/MessageFeedback.spec.js +0 -116
  222. package/lib/components/molecules/ProjectSummaryChat/ProjectSummaryChat.spec.js +0 -126
  223. package/lib/components/molecules/ProjectSummaryConfig/ProjectSummaryConfig.spec.js +0 -115
  224. package/lib/components/molecules/ProjectSummaryContent/ProjectSummaryContent.spec.js +0 -79
  225. package/lib/components/molecules/ProjectSummaryModal/ProjectSummaryModal.spec.js +0 -37
  226. package/lib/components/molecules/Sidebar/Sidebar.spec.js +0 -453
  227. package/lib/components/organisms/AbmAgentModal/AbmAgentModal.helpers.js +0 -198
  228. package/lib/components/organisms/AbmAgentModal/AbmAgentModal.helpers.spec.js +0 -385
  229. package/lib/components/organisms/AbmAgentModal/AbmAgentModal.spec.js +0 -1125
  230. package/lib/components/organisms/AbmSkillGenerateModal/AbmSkillGenerateModal.spec.js +0 -112
  231. package/lib/components/organisms/AbmSkillModal/AbmSkillModal.spec.js +0 -405
  232. package/lib/components/organisms/ChatAI/ChatAI.spec.js +0 -174
  233. package/lib/components/organisms/ChatAIPage/ChatAIPage.js +0 -525
  234. package/lib/components/organisms/ChatAIPage/ChatAIPage.spec.js +0 -231
  235. package/lib/components/organisms/ChatAIPage/ChatAIPage.styles.js +0 -16
  236. package/lib/components/organisms/ChatAIPage/ChatAIPageHeader.js +0 -253
  237. package/lib/components/organisms/ChatAIPage/ChatAIPageHeader.spec.js +0 -139
  238. package/lib/components/organisms/ChatAIPage/ChatAIPageHeader.styles.js +0 -13
  239. package/lib/components/organisms/ChatAIPage/ChatAIPageHome.js +0 -267
  240. package/lib/components/organisms/ChatAIPage/ChatAIPageHome.spec.js +0 -261
  241. package/lib/components/organisms/ChatAIPage/ChatAIPageHome.styles.js +0 -194
  242. package/lib/components/organisms/ChatAIPage/ChatAIPageHomeActionCardSlot.js +0 -105
  243. package/lib/components/organisms/ChatAIPage/ChatAIPageHomeActionCardSlot.spec.js +0 -73
  244. package/lib/components/organisms/ChatAIPage/ChatAIPageHomeActionCards.skeleton.js +0 -38
  245. package/lib/components/organisms/ChatAIPage/getDaypart.js +0 -9
  246. package/lib/components/organisms/ChatAIPage/getDaypart.spec.js +0 -19
  247. package/lib/components/organisms/ChatAIPage/index.js +0 -3
  248. package/lib/components/organisms/ClientAIButton/ClientAIButton.spec.js +0 -53
  249. package/lib/components/organisms/DeleteAgentModal/DeleteAgentModal.spec.js +0 -59
  250. package/lib/components/organisms/DeleteQuestionModal/DeleteQuestionModal.spec.js +0 -79
  251. package/lib/components/organisms/EditQuestionModal/EditQuestionModal.spec.js +0 -86
  252. package/lib/components/organisms/ModalFileExceeds/ModalFileExceeds.spec.js +0 -49
  253. package/lib/components/organisms/ProjectAIButton/ProjectAIButton.spec.js +0 -67
  254. package/lib/components/organisms/ProjectSummary/ProjectSummary.spec.js +0 -117
  255. package/lib/components/organisms/SnackBar/Snackbar.spec.js +0 -66
  256. package/lib/components/organisms/SourcesInformation/SourceItem.spec.js +0 -19
  257. package/lib/components/organisms/SourcesInformation/SourcesInformationModal.spec.js +0 -52
  258. package/lib/constants/maiaExternalConnectorsAccess.spec.js +0 -29
  259. package/lib/constants/permissions/utils.spec.js +0 -128
  260. package/lib/dev/DevMaiaPage.js +0 -30
  261. package/lib/hooks/frequentlyUsedActionsCache.js +0 -17
  262. package/lib/hooks/frequentlyUsedActionsCache.spec.js +0 -25
  263. package/lib/hooks/useAccessClient/useAccessClient.spec.js +0 -149
  264. package/lib/hooks/useAgentModel/useAgentModel.spec.js +0 -83
  265. package/lib/hooks/useAgentModel/useCreateAgent.spec.js +0 -231
  266. package/lib/hooks/useAgentModel/useDeleteAgent.spec.js +0 -183
  267. package/lib/hooks/useAgentModel/useUpdateAgent.spec.js +0 -313
  268. package/lib/hooks/useAgentSuggestions.spec.js +0 -89
  269. package/lib/hooks/useCaretPosition.spec.js +0 -58
  270. package/lib/hooks/useChatManager/useChatManager.helpers.js +0 -353
  271. package/lib/hooks/useChatManager/useChatManager.helpers.spec.js +0 -506
  272. package/lib/hooks/useChatManager/useChatManager.spec.js +0 -1261
  273. package/lib/hooks/useChatMessages/useChatMessages.helpers.js +0 -109
  274. package/lib/hooks/useChatMessages/useChatMessages.helpers.spec.js +0 -176
  275. package/lib/hooks/useChatMessages/useChatMessages.spec.js +0 -379
  276. package/lib/hooks/useChats/useChats.spec.js +0 -208
  277. package/lib/hooks/useClientSearch.helpers.js +0 -36
  278. package/lib/hooks/useClientSearch.helpers.spec.js +0 -52
  279. package/lib/hooks/useClientSearch.spec.js +0 -86
  280. package/lib/hooks/useContextMentions.helpers.js +0 -152
  281. package/lib/hooks/useContextMentions.helpers.spec.js +0 -143
  282. package/lib/hooks/useContextMentions.spec.js +0 -239
  283. package/lib/hooks/useContextMentions.types.js +0 -2
  284. package/lib/hooks/useContextPinPopover.helpers.js +0 -95
  285. package/lib/hooks/useContextPinPopover.helpers.spec.js +0 -115
  286. package/lib/hooks/useContextPinPopover.spec.js +0 -159
  287. package/lib/hooks/useContinueLegacyContextInNewChat/index.js +0 -2
  288. package/lib/hooks/useContinueLegacyContextInNewChat/useContinueLegacyContextInNewChat.js +0 -93
  289. package/lib/hooks/useDebounce.spec.js +0 -42
  290. package/lib/hooks/useEntitySearch.helpers.js +0 -359
  291. package/lib/hooks/useEntitySearch.helpers.spec.js +0 -321
  292. package/lib/hooks/useEntitySearch.spec.js +0 -443
  293. package/lib/hooks/useEvent.spec.js +0 -45
  294. package/lib/hooks/useFrequentlyAskedQuestions.spec.js +0 -222
  295. package/lib/hooks/useFrequentlyUsedActions.spec.js +0 -135
  296. package/lib/hooks/useIsMaiaPageRoute.js +0 -26
  297. package/lib/hooks/useIsMaiaPageRoute.spec.js +0 -26
  298. package/lib/hooks/useKnowledge/deleteKnowledge.spec.js +0 -122
  299. package/lib/hooks/useKnowledge/downloadKnowledge.spec.js +0 -148
  300. package/lib/hooks/useKnowledge/saveKnowledge.spec.js +0 -104
  301. package/lib/hooks/useKnowledge/useKnowledgeOperations.spec.js +0 -178
  302. package/lib/hooks/useMaiaChatSessionMeta/index.js +0 -2
  303. package/lib/hooks/useMaiaChatSessionMeta/useMaiaChatSessionMeta.js +0 -24
  304. package/lib/hooks/useMentionAllowedTypes.spec.js +0 -89
  305. package/lib/hooks/useMentionPopover.helpers.js +0 -41
  306. package/lib/hooks/useMentionPopover.helpers.spec.js +0 -71
  307. package/lib/hooks/useMentionPopover.spec.js +0 -215
  308. package/lib/hooks/useMinimizedPillBottomOffset.helpers.js +0 -47
  309. package/lib/hooks/useMinimizedPillBottomOffset.helpers.spec.js +0 -132
  310. package/lib/hooks/useMinimizedPillBottomOffset.spec.js +0 -89
  311. package/lib/hooks/useMinimizedPillNoveltyDot/useMinimizedPillNoveltyDot.spec.js +0 -67
  312. package/lib/hooks/useModal/useModal.spec.js +0 -73
  313. package/lib/hooks/useOrchestratorStream/useOrchestratorStream.spec.js +0 -192
  314. package/lib/hooks/useProjectSearch.helpers.js +0 -61
  315. package/lib/hooks/useProjectSearch.helpers.spec.js +0 -70
  316. package/lib/hooks/useProjectSearch.spec.js +0 -91
  317. package/lib/hooks/useProjectSummary.spec.js +0 -193
  318. package/lib/hooks/useProjectSummaryConfig.helpers.js +0 -62
  319. package/lib/hooks/useProjectSummaryConfig.helpers.spec.js +0 -92
  320. package/lib/hooks/useProjectSummaryConfig.spec.js +0 -133
  321. package/lib/hooks/useReasoningTrace/reasoningStore.spec.js +0 -112
  322. package/lib/hooks/useRecentClientsSearch.helpers.js +0 -33
  323. package/lib/hooks/useRecentClientsSearch.helpers.spec.js +0 -33
  324. package/lib/hooks/useRecentClientsSearch.spec.js +0 -85
  325. package/lib/hooks/useRecentContexts.spec.js +0 -139
  326. package/lib/hooks/useResize.spec.js +0 -37
  327. package/lib/hooks/useSkillsCatalog.spec.js +0 -88
  328. package/lib/hooks/useSlashCommands.spec.js +0 -139
  329. package/lib/hooks/useSmoothStreamText/useSmoothStreamText.spec.js +0 -101
  330. package/lib/hooks/useSnackBarManager/useSnackBarManager.spec.js +0 -33
  331. package/lib/hooks/useStreamResponse.spec.js +0 -199
  332. package/lib/hooks/useT.spec.js +0 -20
  333. package/lib/hooks/useToggle.spec.js +0 -33
  334. package/lib/hooks/useToggleFavorite/useToggleFavorite.spec.js +0 -171
  335. package/lib/services/maia/Access/updateAccess.spec.js +0 -137
  336. package/lib/services/maia/Actions/getFrequentlyUsedActions.spec.js +0 -56
  337. package/lib/services/maia/Actions/getSlashCommands.spec.js +0 -91
  338. package/lib/services/maia/Agents/connectors.spec.js +0 -359
  339. package/lib/services/maia/Agents/createAgent.spec.js +0 -55
  340. package/lib/services/maia/Agents/deleteAgent.spec.js +0 -57
  341. package/lib/services/maia/Agents/fetchAgentDetail.spec.js +0 -108
  342. package/lib/services/maia/Agents/getAgentById.spec.js +0 -190
  343. package/lib/services/maia/Agents/getAgentModels.spec.js +0 -190
  344. package/lib/services/maia/Agents/getAgentSuggestions.spec.js +0 -89
  345. package/lib/services/maia/Agents/getAgents.helpers.js +0 -181
  346. package/lib/services/maia/Agents/getAgents.helpers.spec.js +0 -211
  347. package/lib/services/maia/Agents/getAgents.spec.js +0 -697
  348. package/lib/services/maia/Agents/setAgentToolGroups.spec.js +0 -45
  349. package/lib/services/maia/Agents/toggleFavorite.spec.js +0 -59
  350. package/lib/services/maia/Agents/updateAgent.spec.js +0 -48
  351. package/lib/services/maia/Chats/deleteChat.spec.js +0 -31
  352. package/lib/services/maia/Chats/getChatMessages.spec.js +0 -150
  353. package/lib/services/maia/Chats/getChatsByUserId.spec.js +0 -149
  354. package/lib/services/maia/Chats/markSessionAsRead.spec.js +0 -30
  355. package/lib/services/maia/Chats/patchChat.spec.js +0 -41
  356. package/lib/services/maia/Chats/wasHelpfulChat.spec.js +0 -28
  357. package/lib/services/maia/Faqs/getFrequentlyAskedQuestions.spec.js +0 -58
  358. package/lib/services/maia/Knowledge/delete.spec.js +0 -45
  359. package/lib/services/maia/Knowledge/download.spec.js +0 -78
  360. package/lib/services/maia/Knowledge/save.spec.js +0 -58
  361. package/lib/services/maia/Orchestrator/orchestrator.helpers.js +0 -130
  362. package/lib/services/maia/Orchestrator/orchestrator.helpers.spec.js +0 -153
  363. package/lib/services/maia/Orchestrator/orchestrator.spec.js +0 -181
  364. package/lib/services/maia/RecentClients/getRecentClients.spec.js +0 -52
  365. package/lib/services/maia/RecentContexts/getRecentContexts.spec.js +0 -103
  366. package/lib/services/maia/RecentProjects/getRecentProjects.spec.js +0 -82
  367. package/lib/services/maia/RecentTasks/getRecentTasks.spec.js +0 -63
  368. package/lib/services/maia/RecentUsers/getRecentUsers.spec.js +0 -82
  369. package/lib/services/maia/Skills/createSkill.spec.js +0 -68
  370. package/lib/services/maia/Skills/deleteSkill.spec.js +0 -42
  371. package/lib/services/maia/Skills/generateSkill.spec.js +0 -48
  372. package/lib/services/maia/Skills/getSkills.spec.js +0 -152
  373. package/lib/services/maia/Skills/updateSkill.spec.js +0 -62
  374. package/lib/services/maia/client.spec.js +0 -56
  375. package/lib/services/utils/fetchCOR.spec.js +0 -211
  376. package/lib/services/utils/getCookie.spec.js +0 -20
  377. package/lib/services/utils/mapChatMessages.spec.js +0 -254
  378. package/lib/store/chatsSidebarOptimistic.spec.js +0 -112
  379. package/lib/store/maiaLastChatPersistence.spec.js +0 -22
  380. package/lib/store/maiaPanelSessionPersistence.spec.js +0 -62
  381. package/lib/store/sessions/sessionNotificationSound.spec.js +0 -145
  382. package/lib/store/sessions/sessionNotifications.helpers.js +0 -45
  383. package/lib/store/sessions/sessionNotifications.helpers.spec.js +0 -63
  384. package/lib/store/sessions/sessionNotifications.spec.js +0 -106
  385. package/lib/store/sessions/sessionStreamManager.spec.js +0 -503
  386. package/lib/store/sessions/sessions.types.spec.js +0 -16
  387. package/lib/store/sessions/useSessionsStore.spec.js +0 -135
  388. package/lib/store/useChatsStore.spec.js +0 -619
  389. package/lib/store/useFaqsStore.spec.js +0 -57
  390. package/lib/test/mockSseStream.js +0 -121
  391. package/lib/test/streamdownCodeMock.js +0 -6
  392. package/lib/test/streamdownMock.js +0 -12
  393. package/lib/utils/actionCategoryMap.spec.js +0 -18
  394. package/lib/utils/agentDisplayName.spec.js +0 -44
  395. package/lib/utils/autoApproveStorage.spec.js +0 -25
  396. package/lib/utils/chatInputFiles.spec.js +0 -39
  397. package/lib/utils/contextMentionIcons.spec.js +0 -41
  398. package/lib/utils/contextMentionLabel.spec.js +0 -13
  399. package/lib/utils/contextMentionTriggers.spec.js +0 -38
  400. package/lib/utils/contextMentionTypeLabel.spec.js +0 -14
  401. package/lib/utils/corConnectorMentionTypes.spec.js +0 -23
  402. package/lib/utils/entityLinkRender.spec.js +0 -72
  403. package/lib/utils/fileDownloadHelper.spec.js +0 -67
  404. package/lib/utils/formatQuickActionMessage.spec.js +0 -27
  405. package/lib/utils/formatUnreadCount.spec.js +0 -12
  406. package/lib/utils/getUnitFileSize.spec.js +0 -18
  407. package/lib/utils/hitlAnalytics.spec.js +0 -100
  408. package/lib/utils/hoursPlannerQuickActionType.spec.js +0 -64
  409. package/lib/utils/imagePreprocessor.helpers.js +0 -28
  410. package/lib/utils/imagePreprocessor.helpers.spec.js +0 -28
  411. package/lib/utils/imagePreprocessor.spec.js +0 -112
  412. package/lib/utils/maiaPageRoute.js +0 -24
  413. package/lib/utils/maiaPageRoute.spec.js +0 -23
  414. package/lib/utils/mapBackendLang.spec.js +0 -19
  415. package/lib/utils/navigateContextEntity.spec.js +0 -50
  416. package/lib/utils/normalizeAgentConnectors.spec.js +0 -107
  417. package/lib/utils/orchestratorSubagents.spec.js +0 -32
  418. package/lib/utils/reasoningMappers.spec.js +0 -103
  419. package/lib/utils/recentContextsHomeLimit.spec.js +0 -32
  420. package/lib/utils/renderContextMentions.spec.js +0 -158
  421. package/lib/utils/retryCompletion.spec.js +0 -99
  422. package/lib/utils/skillContentSize.spec.js +0 -13
  423. package/lib/utils/slashCommandMarker.spec.js +0 -43
  424. package/lib/utils/sortManagerHoursHomeFuas.spec.js +0 -51
  425. package/lib/utils/sseStreamContent.spec.js +0 -31
  426. package/lib/utils/streamActivityMessages.spec.js +0 -227
  427. package/lib/utils/validateTrimmedFields.spec.js +0 -26
@@ -10,7 +10,6 @@ import { EVENTS, useEvent } from '../../../../../hooks/useEvent';
10
10
  import { validateIsMaia } from '../../../../../services/utils/validateIsMaia';
11
11
  import { useToggleFavorite } from '../../../../../hooks';
12
12
  import { MAIAIcon } from '../../../../atoms/icons';
13
- import { canEditCustomAgentInSelector } from './ChatAiAgentOptions.helpers';
14
13
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
15
14
  export var ChatAIAgentOption = function ChatAIAgentOption(_ref) {
16
15
  var _user$permissions;
@@ -31,7 +30,7 @@ export var ChatAIAgentOption = function ChatAIAgentOption(_ref) {
31
30
  var _useToggleFavorite = useToggleFavorite(),
32
31
  toggleFavorite = _useToggleFavorite.toggleFavorite;
33
32
  var userPermissions = user === null || user === void 0 || (_user$permissions = user.permissions) === null || _user$permissions === void 0 ? void 0 : _user$permissions.ai_agents;
34
- var canEditCustomAgent = canEditCustomAgentInSelector(agent, userPermissions, Boolean(window.MAIA_CHAT_AI_FEATURE_ACCESS_MULTI_AGENTS));
33
+ var canEditCustomAgent = (userPermissions === null || userPermissions === void 0 ? void 0 : userPermissions.edit) && !validateIsMaia(agent) && agent.type === 'custom' && window.MAIA_CHAT_AI_FEATURE_ACCESS_MULTI_AGENTS;
35
34
  var handleClick = function handleClick(event) {
36
35
  event.preventDefault();
37
36
  event.stopPropagation();
@@ -125,4 +124,4 @@ export var ChatAIAgentOption = function ChatAIAgentOption(_ref) {
125
124
  })]
126
125
  }, "agent-".concat(index));
127
126
  };
128
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VSZWYiLCJUb29sdGlwIiwiUGVuY2lsIiwiU3RhciIsInVzZVRyYW5zbGF0aW9uIiwidXNlUmVzaXplTGlzdGVuZXIiLCJTQ0NBSUFPV3JhcHBlciIsIlNDQ0FJQU9XcmFwcGVyRWRpdCIsIlNDQ0FJTUFnZW50TmFtZSIsIlNDQ0FJTVdyYXBwZXJBZ2VudE5hbWUiLCJ1c2VVc2VyIiwiRVZFTlRTIiwidXNlRXZlbnQiLCJ2YWxpZGF0ZUlzTWFpYSIsInVzZVRvZ2dsZUZhdm9yaXRlIiwiTUFJQUljb24iLCJjYW5FZGl0Q3VzdG9tQWdlbnRJblNlbGVjdG9yIiwianN4IiwiX2pzeCIsImpzeHMiLCJfanN4cyIsIkNoYXRBSUFnZW50T3B0aW9uIiwiX3JlZiIsIl91c2VyJHBlcm1pc3Npb25zIiwiYWdlbnQiLCJpbmRleCIsImhhbmRsZVNlbGVjdEFnZW50IiwiaXNTZWxlY3RlZCIsImlzTWFpYSIsIm9uRmF2b3JpdGVUb2dnbGUiLCJzZXRJc0V4cGFuZGVkIiwiX3VzZVRyYW5zbGF0aW9uIiwidCIsInVzZXIiLCJhbXBsaXR1ZEV2ZW50IiwiYWdlbnRSZWYiLCJfdXNlUmVzaXplTGlzdGVuZXIiLCJuYW1lIiwic2hvd1Rvb2x0aXAiLCJfdXNlVG9nZ2xlRmF2b3JpdGUiLCJ0b2dnbGVGYXZvcml0ZSIsInVzZXJQZXJtaXNzaW9ucyIsInBlcm1pc3Npb25zIiwiYWlfYWdlbnRzIiwiY2FuRWRpdEN1c3RvbUFnZW50IiwiQm9vbGVhbiIsIndpbmRvdyIsIk1BSUFfQ0hBVF9BSV9GRUFUVVJFX0FDQ0VTU19NVUxUSV9BR0VOVFMiLCJoYW5kbGVDbGljayIsImV2ZW50IiwicHJldmVudERlZmF1bHQiLCJzdG9wUHJvcGFnYXRpb24iLCJoYW5kbGVUb2dnbGVGYXZvcml0ZSIsImlkIiwidXBkYXRlZEFnZW50IiwiYWlDaGF0RmF2b3JpdGUiLCJvcHRpb24iLCJpc19mYXZvcml0ZSIsInVuZGVmaW5lZCIsIiRpbmRleCIsIm9uQ2xpY2siLCJjaGlsZHJlbiIsInR5cGUiLCJlbW9qaSIsInRpdGxlIiwicmVmIiwiaGFzQ29ycnVwdGVkQWNjZXNzIiwiaGFzX2NvcnJ1cHRlZF9hY2Nlc3MiLCJzdHlsZSIsImRpc3BsYXkiLCJnYXAiLCJhbGlnbkl0ZW1zIiwiZSIsIm9wZW5Nb2RhbCIsImRvY3VtZW50IiwiZGlzcGF0Y2hFdmVudCIsIkN1c3RvbUV2ZW50IiwiZGV0YWlsIiwiYWdlbnRWYWx1ZXMiLCJ2YWx1ZXMiLCJpc0VkaXRpbmciLCJrbm93bGVkZ2UiLCJnZW5lcmFsIiwiaXNPcGVuIiwid2lkdGgiLCJoZWlnaHQiLCJjb2xvciIsImNsYXNzTmFtZSIsImFsd2F5c1Zpc2libGUiLCJmaWxsIiwidmFyaWFudCIsImNvbmNhdCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL21vbGVjdWxlcy9DaGF0QUlNb2RhbC9jb21wb25lbnRzL0NoYXRBaUFnZW50T3B0aW9ucy9DaGF0QWlBZ2VudE9wdGlvbnMudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHVzZVJlZiwgTW91c2VFdmVudCB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgVG9vbHRpcCB9IGZyb20gJ0Bwcm9qZWN0Y29yL3Rvb2x0aXB2Mi9saWIvY29tcG9uZW50cy9Ub29sdGlwJ1xuaW1wb3J0IHsgUGVuY2lsIH0gZnJvbSAnQHByb2plY3Rjb3IvaWNvbnMvbGliL2NvbXBvbmVudHMvUGVuY2lsJ1xuaW1wb3J0IHsgU3RhciB9IGZyb20gJ0Bwcm9qZWN0Y29yL2ljb25zL2xpYi9jb21wb25lbnRzL1N0YXInXG5pbXBvcnQgeyB1c2VUcmFuc2xhdGlvbiB9IGZyb20gJ3JlYWN0LWkxOG5leHQnXG5pbXBvcnQgeyBBZ2VudCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL3R5cGVzL2FnZW50J1xuaW1wb3J0IHsgdXNlUmVzaXplTGlzdGVuZXIgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9ob29rcy91c2VSZXNpemUnXG5pbXBvcnQge1xuICBTQ0NBSUFPV3JhcHBlcixcbiAgU0NDQUlBT1dyYXBwZXJFZGl0LFxuICBTQ0NBSU1BZ2VudE5hbWUsXG4gIFNDQ0FJTVdyYXBwZXJBZ2VudE5hbWUsXG59IGZyb20gJy4vQ2hhdEFpQWdlbnRPcHRpb25zLnN0eWxlcydcbmltcG9ydCB7IHVzZVVzZXIgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9jb250ZXh0L2Nvci11c2VyJ1xuaW1wb3J0IHsgRVZFTlRTLCB1c2VFdmVudCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2hvb2tzL3VzZUV2ZW50J1xuaW1wb3J0IHsgdmFsaWRhdGVJc01haWEgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9zZXJ2aWNlcy91dGlscy92YWxpZGF0ZUlzTWFpYSdcbmltcG9ydCB7IHVzZVRvZ2dsZUZhdm9yaXRlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vaG9va3MnXG5pbXBvcnQgeyBNQUlBSWNvbiB9IGZyb20gJy4uLy4uLy4uLy4uL2F0b21zL2ljb25zJ1xuaW1wb3J0IHsgY2FuRWRpdEN1c3RvbUFnZW50SW5TZWxlY3RvciB9IGZyb20gJy4vQ2hhdEFpQWdlbnRPcHRpb25zLmhlbHBlcnMnXG5cbmV4cG9ydCBjb25zdCBDaGF0QUlBZ2VudE9wdGlvbiA9ICh7XG4gIGFnZW50LFxuICBpbmRleCxcbiAgaGFuZGxlU2VsZWN0QWdlbnQsXG4gIGlzU2VsZWN0ZWQsXG4gIGlzTWFpYSxcbiAgb25GYXZvcml0ZVRvZ2dsZSxcbiAgc2V0SXNFeHBhbmRlZCxcbn06IHtcbiAgYWdlbnQ6IEFnZW50XG4gIGluZGV4OiBudW1iZXJcbiAgaGFuZGxlU2VsZWN0QWdlbnQ6IChhZ2VudDogQWdlbnQpID0+IHZvaWRcbiAgaXNTZWxlY3RlZDogYm9vbGVhblxuICBpc01haWE/OiBib29sZWFuXG4gIG9uRmF2b3JpdGVUb2dnbGU/OiAodXBkYXRlZEFnZW50OiBBZ2VudCkgPT4gdm9pZFxuICBzZXRJc0V4cGFuZGVkPzogKGlzRXhwYW5kZWQ6IGJvb2xlYW4pID0+IHZvaWRcbn0pID0+IHtcbiAgY29uc3QgeyB0IH0gPSB1c2VUcmFuc2xhdGlvbihbJ2NoYXRfYWlfc2VjdGlvbiddKVxuICBjb25zdCB1c2VyID0gdXNlVXNlcigpXG4gIGNvbnN0IGFtcGxpdHVkRXZlbnQgPSB1c2VFdmVudCgpXG4gIGNvbnN0IGFnZW50UmVmID0gdXNlUmVmPEhUTUxTcGFuRWxlbWVudD4obnVsbClcbiAgY29uc3QgeyBzaG93VG9vbHRpcCB9ID0gdXNlUmVzaXplTGlzdGVuZXIoYWdlbnRSZWYsIFthZ2VudC5uYW1lXSlcbiAgY29uc3QgeyB0b2dnbGVGYXZvcml0ZSB9ID0gdXNlVG9nZ2xlRmF2b3JpdGUoKVxuXG4gIGNvbnN0IHVzZXJQZXJtaXNzaW9ucyA9IHVzZXI/LnBlcm1pc3Npb25zPy5haV9hZ2VudHNcbiAgY29uc3QgY2FuRWRpdEN1c3RvbUFnZW50ID0gY2FuRWRpdEN1c3RvbUFnZW50SW5TZWxlY3RvcihcbiAgICBhZ2VudCxcbiAgICB1c2VyUGVybWlzc2lvbnMsXG4gICAgQm9vbGVhbih3aW5kb3cuTUFJQV9DSEFUX0FJX0ZFQVRVUkVfQUNDRVNTX01VTFRJX0FHRU5UUylcbiAgKVxuXG4gIGNvbnN0IGhhbmRsZUNsaWNrID0gKGV2ZW50OiBNb3VzZUV2ZW50PEhUTUxEaXZFbGVtZW50PikgPT4ge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KClcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKVxuICAgIGhhbmRsZVNlbGVjdEFnZW50KGFnZW50KVxuICB9XG5cbiAgY29uc3QgaGFuZGxlVG9nZ2xlRmF2b3JpdGUgPSAoZXZlbnQ6IE1vdXNlRXZlbnQ8SFRNTERpdkVsZW1lbnQ+KSA9PiB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKVxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXG5cbiAgICB0b2dnbGVGYXZvcml0ZShcbiAgICAgIGFnZW50LmlkLFxuICAgICAgdXBkYXRlZEFnZW50ID0+IHtcbiAgICAgICAgaWYgKG9uRmF2b3JpdGVUb2dnbGUpIHtcbiAgICAgICAgICBvbkZhdm9yaXRlVG9nZ2xlKHVwZGF0ZWRBZ2VudClcbiAgICAgICAgfVxuICAgICAgICBhbXBsaXR1ZEV2ZW50KEVWRU5UUy5haUNoYXRGYXZvcml0ZSwgeyBvcHRpb246IHVwZGF0ZWRBZ2VudC5pc19mYXZvcml0ZSA/ICdhZGQnIDogJ3JlbW92ZScgfSlcbiAgICAgIH0sXG4gICAgICB1bmRlZmluZWQsXG4gICAgICBhZ2VudC5pc19mYXZvcml0ZVxuICAgIClcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPFNDQ0FJQU9XcmFwcGVyIGtleT17YGFnZW50LSR7aW5kZXh9YH0gJGluZGV4PXtpbmRleH0gaXNTZWxlY3RlZD17aXNTZWxlY3RlZH0gb25DbGljaz17aGFuZGxlQ2xpY2t9IGlzTWFpYT17aXNNYWlhfT5cbiAgICAgIHthZ2VudC50eXBlID09PSAnY3VzdG9tJyAmJiA8c3Bhbj57YWdlbnQ/LmVtb2ppfTwvc3Bhbj59XG4gICAgICB7YWdlbnQudHlwZSA9PT0gJ29yY2hlc3RyYXRvcicgJiYgKFxuICAgICAgICA8c3Bhbj5cbiAgICAgICAgICA8TUFJQUljb24gLz5cbiAgICAgICAgPC9zcGFuPlxuICAgICAgKX1cbiAgICAgIDxTQ0NBSU1XcmFwcGVyQWdlbnROYW1lPlxuICAgICAgICA8VG9vbHRpcCB0aXRsZT17c2hvd1Rvb2x0aXAgPyBhZ2VudD8ubmFtZSA6ICcnfT5cbiAgICAgICAgICA8U0NDQUlNQWdlbnROYW1lIHJlZj17YWdlbnRSZWZ9IGlzU2VsZWN0ZWQ9e2lzU2VsZWN0ZWR9IGhhc0NvcnJ1cHRlZEFjY2Vzcz17ISFhZ2VudD8uaGFzX2NvcnJ1cHRlZF9hY2Nlc3N9PlxuICAgICAgICAgICAge2FnZW50Py5uYW1lfVxuICAgICAgICAgIDwvU0NDQUlNQWdlbnROYW1lPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIDxkaXYgc3R5bGU9e3sgZGlzcGxheTogJ2ZsZXgnLCBnYXA6ICc0cHgnLCBhbGlnbkl0ZW1zOiAnY2VudGVyJyB9fT5cbiAgICAgICAgICB7Y2FuRWRpdEN1c3RvbUFnZW50ICYmIChcbiAgICAgICAgICAgIDxUb29sdGlwIHRpdGxlPXt0KCdhZ2VudHMuZWRpdCcpfT5cbiAgICAgICAgICAgICAgPFNDQ0FJQU9XcmFwcGVyRWRpdFxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e2UgPT4ge1xuICAgICAgICAgICAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKVxuICAgICAgICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpXG4gICAgICAgICAgICAgICAgICBzZXRJc0V4cGFuZGVkPy4oZmFsc2UpXG4gICAgICAgICAgICAgICAgICBhbXBsaXR1ZEV2ZW50KEVWRU5UUy5vcGVuTW9kYWwsIHsgb3B0aW9uOiAnZWRpdF9hZ2VudCcgfSlcbiAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmRpc3BhdGNoRXZlbnQoXG4gICAgICAgICAgICAgICAgICAgIG5ldyBDdXN0b21FdmVudCgnYWJtLWFnZW50LW1vZGFsLXNldC12YWx1ZXMnLCB7XG4gICAgICAgICAgICAgICAgICAgICAgZGV0YWlsOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBhZ2VudFZhbHVlczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZXM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpc0VkaXRpbmc6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAga25vd2xlZGdlOiBhZ2VudD8ua25vd2xlZGdlIHx8IFtdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdlbmVyYWw6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IGFnZW50Lm5hbWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogYWdlbnQuaWQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaXNPcGVuOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8UGVuY2lsIHdpZHRoPXsyMH0gaGVpZ2h0PXsyMH0gY29sb3I9XCIjYTZhNmE2XCIgY2xhc3NOYW1lPVwicGVuY2lsLWljb25cIiAvPlxuICAgICAgICAgICAgICA8L1NDQ0FJQU9XcmFwcGVyRWRpdD5cbiAgICAgICAgICAgIDwvVG9vbHRpcD5cbiAgICAgICAgICApfVxuICAgICAgICAgIHshdmFsaWRhdGVJc01haWEoYWdlbnQgYXMgQWdlbnQpICYmIChcbiAgICAgICAgICAgIDxUb29sdGlwIHRpdGxlPXthZ2VudD8uaXNfZmF2b3JpdGUgPyB0KCdhZ2VudHMucmVtb3ZlRmF2b3JpdGUnKSA6IHQoJ2FnZW50cy5hZGRGYXZvcml0ZScpfT5cbiAgICAgICAgICAgICAgPFNDQ0FJQU9XcmFwcGVyRWRpdCBhbHdheXNWaXNpYmxlPXthZ2VudD8uaXNfZmF2b3JpdGV9IG9uQ2xpY2s9e2hhbmRsZVRvZ2dsZUZhdm9yaXRlfT5cbiAgICAgICAgICAgICAgICA8U3RhclxuICAgICAgICAgICAgICAgICAgd2lkdGg9ezIwfVxuICAgICAgICAgICAgICAgICAgaGVpZ2h0PXsyMH1cbiAgICAgICAgICAgICAgICAgIGNvbG9yPXthZ2VudD8uaXNfZmF2b3JpdGUgPyAnI0ZGQzYyNCcgOiAnI2E2YTZhNid9XG4gICAgICAgICAgICAgICAgICBmaWxsPXthZ2VudD8uaXNfZmF2b3JpdGUgPyAnI0ZGQzYyNCcgOiAnbm9uZSd9XG4gICAgICAgICAgICAgICAgICB2YXJpYW50PVwic29saWRcIlxuICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXthZ2VudD8uaXNfZmF2b3JpdGUgPyAnJyA6ICdzdGFyLWZhdm9yaXRlLWljb24nfVxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDwvU0NDQUlBT1dyYXBwZXJFZGl0PlxuICAgICAgICAgICAgPC9Ub29sdGlwPlxuICAgICAgICAgICl9XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9TQ0NBSU1XcmFwcGVyQWdlbnROYW1lPlxuICAgIDwvU0NDQUlBT1dyYXBwZXI+XG4gIClcbn1cbiJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsTUFBTSxRQUFvQixPQUFPO0FBQzFDLFNBQVNDLE9BQU8sUUFBUSw4Q0FBOEM7QUFDdEUsU0FBU0MsTUFBTSxRQUFRLHlDQUF5QztBQUNoRSxTQUFTQyxJQUFJLFFBQVEsdUNBQXVDO0FBQzVELFNBQVNDLGNBQWMsUUFBUSxlQUFlO0FBRTlDLFNBQVNDLGlCQUFpQixRQUFRLGdDQUFnQztBQUNsRSxTQUNFQyxjQUFjLEVBQ2RDLGtCQUFrQixFQUNsQkMsZUFBZSxFQUNmQyxzQkFBc0IsUUFDakIsNkJBQTZCO0FBQ3BDLFNBQVNDLE9BQU8sUUFBUSxpQ0FBaUM7QUFDekQsU0FBU0MsTUFBTSxFQUFFQyxRQUFRLFFBQVEsK0JBQStCO0FBQ2hFLFNBQVNDLGNBQWMsUUFBUSw4Q0FBOEM7QUFDN0UsU0FBU0MsaUJBQWlCLFFBQVEsc0JBQXNCO0FBQ3hELFNBQVNDLFFBQVEsUUFBUSx5QkFBeUI7QUFDbEQsU0FBU0MsNEJBQTRCLFFBQVEsOEJBQThCO0FBQUEsU0FBQUMsR0FBQSxJQUFBQyxJQUFBLEVBQUFDLElBQUEsSUFBQUMsS0FBQTtBQUUzRSxPQUFPLElBQU1DLGlCQUFpQixHQUFHLFNBQXBCQSxpQkFBaUJBLENBQUFDLElBQUEsRUFnQnhCO0VBQUEsSUFBQUMsaUJBQUE7RUFBQSxJQWZKQyxLQUFLLEdBQUFGLElBQUEsQ0FBTEUsS0FBSztJQUNMQyxLQUFLLEdBQUFILElBQUEsQ0FBTEcsS0FBSztJQUNMQyxpQkFBaUIsR0FBQUosSUFBQSxDQUFqQkksaUJBQWlCO0lBQ2pCQyxVQUFVLEdBQUFMLElBQUEsQ0FBVkssVUFBVTtJQUNWQyxNQUFNLEdBQUFOLElBQUEsQ0FBTk0s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
127
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VSZWYiLCJUb29sdGlwIiwiUGVuY2lsIiwiU3RhciIsInVzZVRyYW5zbGF0aW9uIiwidXNlUmVzaXplTGlzdGVuZXIiLCJTQ0NBSUFPV3JhcHBlciIsIlNDQ0FJQU9XcmFwcGVyRWRpdCIsIlNDQ0FJTUFnZW50TmFtZSIsIlNDQ0FJTVdyYXBwZXJBZ2VudE5hbWUiLCJ1c2VVc2VyIiwiRVZFTlRTIiwidXNlRXZlbnQiLCJ2YWxpZGF0ZUlzTWFpYSIsInVzZVRvZ2dsZUZhdm9yaXRlIiwiTUFJQUljb24iLCJqc3giLCJfanN4IiwianN4cyIsIl9qc3hzIiwiQ2hhdEFJQWdlbnRPcHRpb24iLCJfcmVmIiwiX3VzZXIkcGVybWlzc2lvbnMiLCJhZ2VudCIsImluZGV4IiwiaGFuZGxlU2VsZWN0QWdlbnQiLCJpc1NlbGVjdGVkIiwiaXNNYWlhIiwib25GYXZvcml0ZVRvZ2dsZSIsInNldElzRXhwYW5kZWQiLCJfdXNlVHJhbnNsYXRpb24iLCJ0IiwidXNlciIsImFtcGxpdHVkRXZlbnQiLCJhZ2VudFJlZiIsIl91c2VSZXNpemVMaXN0ZW5lciIsIm5hbWUiLCJzaG93VG9vbHRpcCIsIl91c2VUb2dnbGVGYXZvcml0ZSIsInRvZ2dsZUZhdm9yaXRlIiwidXNlclBlcm1pc3Npb25zIiwicGVybWlzc2lvbnMiLCJhaV9hZ2VudHMiLCJjYW5FZGl0Q3VzdG9tQWdlbnQiLCJlZGl0IiwidHlwZSIsIndpbmRvdyIsIk1BSUFfQ0hBVF9BSV9GRUFUVVJFX0FDQ0VTU19NVUxUSV9BR0VOVFMiLCJoYW5kbGVDbGljayIsImV2ZW50IiwicHJldmVudERlZmF1bHQiLCJzdG9wUHJvcGFnYXRpb24iLCJoYW5kbGVUb2dnbGVGYXZvcml0ZSIsImlkIiwidXBkYXRlZEFnZW50IiwiYWlDaGF0RmF2b3JpdGUiLCJvcHRpb24iLCJpc19mYXZvcml0ZSIsInVuZGVmaW5lZCIsIiRpbmRleCIsIm9uQ2xpY2siLCJjaGlsZHJlbiIsImVtb2ppIiwidGl0bGUiLCJyZWYiLCJoYXNDb3JydXB0ZWRBY2Nlc3MiLCJoYXNfY29ycnVwdGVkX2FjY2VzcyIsInN0eWxlIiwiZGlzcGxheSIsImdhcCIsImFsaWduSXRlbXMiLCJlIiwib3Blbk1vZGFsIiwiZG9jdW1lbnQiLCJkaXNwYXRjaEV2ZW50IiwiQ3VzdG9tRXZlbnQiLCJkZXRhaWwiLCJhZ2VudFZhbHVlcyIsInZhbHVlcyIsImlzRWRpdGluZyIsImtub3dsZWRnZSIsImdlbmVyYWwiLCJpc09wZW4iLCJ3aWR0aCIsImhlaWdodCIsImNvbG9yIiwiY2xhc3NOYW1lIiwiYWx3YXlzVmlzaWJsZSIsImZpbGwiLCJ2YXJpYW50IiwiY29uY2F0Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbW9sZWN1bGVzL0NoYXRBSU1vZGFsL2NvbXBvbmVudHMvQ2hhdEFpQWdlbnRPcHRpb25zL0NoYXRBaUFnZW50T3B0aW9ucy50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlUmVmLCBNb3VzZUV2ZW50IH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBUb29sdGlwIH0gZnJvbSAnQHByb2plY3Rjb3IvdG9vbHRpcHYyL2xpYi9jb21wb25lbnRzL1Rvb2x0aXAnXG5pbXBvcnQgeyBQZW5jaWwgfSBmcm9tICdAcHJvamVjdGNvci9pY29ucy9saWIvY29tcG9uZW50cy9QZW5jaWwnXG5pbXBvcnQgeyBTdGFyIH0gZnJvbSAnQHByb2plY3Rjb3IvaWNvbnMvbGliL2NvbXBvbmVudHMvU3RhcidcbmltcG9ydCB7IHVzZVRyYW5zbGF0aW9uIH0gZnJvbSAncmVhY3QtaTE4bmV4dCdcbmltcG9ydCB7IEFnZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vdHlwZXMvYWdlbnQnXG5pbXBvcnQgeyB1c2VSZXNpemVMaXN0ZW5lciB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2hvb2tzL3VzZVJlc2l6ZSdcbmltcG9ydCB7XG4gIFNDQ0FJQU9XcmFwcGVyLFxuICBTQ0NBSUFPV3JhcHBlckVkaXQsXG4gIFNDQ0FJTUFnZW50TmFtZSxcbiAgU0NDQUlNV3JhcHBlckFnZW50TmFtZSxcbn0gZnJvbSAnLi9DaGF0QWlBZ2VudE9wdGlvbnMuc3R5bGVzJ1xuaW1wb3J0IHsgdXNlVXNlciB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2NvbnRleHQvY29yLXVzZXInXG5pbXBvcnQgeyBFVkVOVFMsIHVzZUV2ZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vaG9va3MvdXNlRXZlbnQnXG5pbXBvcnQgeyB2YWxpZGF0ZUlzTWFpYSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL3NlcnZpY2VzL3V0aWxzL3ZhbGlkYXRlSXNNYWlhJ1xuaW1wb3J0IHsgdXNlVG9nZ2xlRmF2b3JpdGUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9ob29rcydcbmltcG9ydCB7IE1BSUFJY29uIH0gZnJvbSAnLi4vLi4vLi4vLi4vYXRvbXMvaWNvbnMnXG5cbmV4cG9ydCBjb25zdCBDaGF0QUlBZ2VudE9wdGlvbiA9ICh7XG4gIGFnZW50LFxuICBpbmRleCxcbiAgaGFuZGxlU2VsZWN0QWdlbnQsXG4gIGlzU2VsZWN0ZWQsXG4gIGlzTWFpYSxcbiAgb25GYXZvcml0ZVRvZ2dsZSxcbiAgc2V0SXNFeHBhbmRlZCxcbn06IHtcbiAgYWdlbnQ6IEFnZW50XG4gIGluZGV4OiBudW1iZXJcbiAgaGFuZGxlU2VsZWN0QWdlbnQ6IChhZ2VudDogQWdlbnQpID0+IHZvaWRcbiAgaXNTZWxlY3RlZDogYm9vbGVhblxuICBpc01haWE/OiBib29sZWFuXG4gIG9uRmF2b3JpdGVUb2dnbGU/OiAodXBkYXRlZEFnZW50OiBBZ2VudCkgPT4gdm9pZFxuICBzZXRJc0V4cGFuZGVkPzogKGlzRXhwYW5kZWQ6IGJvb2xlYW4pID0+IHZvaWRcbn0pID0+IHtcbiAgY29uc3QgeyB0IH0gPSB1c2VUcmFuc2xhdGlvbihbJ2NoYXRfYWlfc2VjdGlvbiddKVxuICBjb25zdCB1c2VyID0gdXNlVXNlcigpXG4gIGNvbnN0IGFtcGxpdHVkRXZlbnQgPSB1c2VFdmVudCgpXG4gIGNvbnN0IGFnZW50UmVmID0gdXNlUmVmPEhUTUxTcGFuRWxlbWVudD4obnVsbClcbiAgY29uc3QgeyBzaG93VG9vbHRpcCB9ID0gdXNlUmVzaXplTGlzdGVuZXIoYWdlbnRSZWYsIFthZ2VudC5uYW1lXSlcbiAgY29uc3QgeyB0b2dnbGVGYXZvcml0ZSB9ID0gdXNlVG9nZ2xlRmF2b3JpdGUoKVxuXG4gIGNvbnN0IHVzZXJQZXJtaXNzaW9ucyA9IHVzZXI/LnBlcm1pc3Npb25zPy5haV9hZ2VudHNcbiAgY29uc3QgY2FuRWRpdEN1c3RvbUFnZW50ID1cbiAgICB1c2VyUGVybWlzc2lvbnM/LmVkaXQgJiZcbiAgICAhdmFsaWRhdGVJc01haWEoYWdlbnQgYXMgQWdlbnQpICYmXG4gICAgYWdlbnQudHlwZSA9PT0gJ2N1c3RvbScgJiZcbiAgICB3aW5kb3cuTUFJQV9DSEFUX0FJX0ZFQVRVUkVfQUNDRVNTX01VTFRJX0FHRU5UU1xuXG4gIGNvbnN0IGhhbmRsZUNsaWNrID0gKGV2ZW50OiBNb3VzZUV2ZW50PEhUTUxEaXZFbGVtZW50PikgPT4ge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KClcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKVxuICAgIGhhbmRsZVNlbGVjdEFnZW50KGFnZW50KVxuICB9XG5cbiAgY29uc3QgaGFuZGxlVG9nZ2xlRmF2b3JpdGUgPSAoZXZlbnQ6IE1vdXNlRXZlbnQ8SFRNTERpdkVsZW1lbnQ+KSA9PiB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKVxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXG5cbiAgICB0b2dnbGVGYXZvcml0ZShcbiAgICAgIGFnZW50LmlkLFxuICAgICAgdXBkYXRlZEFnZW50ID0+IHtcbiAgICAgICAgaWYgKG9uRmF2b3JpdGVUb2dnbGUpIHtcbiAgICAgICAgICBvbkZhdm9yaXRlVG9nZ2xlKHVwZGF0ZWRBZ2VudClcbiAgICAgICAgfVxuICAgICAgICBhbXBsaXR1ZEV2ZW50KEVWRU5UUy5haUNoYXRGYXZvcml0ZSwgeyBvcHRpb246IHVwZGF0ZWRBZ2VudC5pc19mYXZvcml0ZSA/ICdhZGQnIDogJ3JlbW92ZScgfSlcbiAgICAgIH0sXG4gICAgICB1bmRlZmluZWQsXG4gICAgICBhZ2VudC5pc19mYXZvcml0ZVxuICAgIClcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPFNDQ0FJQU9XcmFwcGVyIGtleT17YGFnZW50LSR7aW5kZXh9YH0gJGluZGV4PXtpbmRleH0gaXNTZWxlY3RlZD17aXNTZWxlY3RlZH0gb25DbGljaz17aGFuZGxlQ2xpY2t9IGlzTWFpYT17aXNNYWlhfT5cbiAgICAgIHthZ2VudC50eXBlID09PSAnY3VzdG9tJyAmJiA8c3Bhbj57YWdlbnQ/LmVtb2ppfTwvc3Bhbj59XG4gICAgICB7YWdlbnQudHlwZSA9PT0gJ29yY2hlc3RyYXRvcicgJiYgKFxuICAgICAgICA8c3Bhbj5cbiAgICAgICAgICA8TUFJQUljb24gLz5cbiAgICAgICAgPC9zcGFuPlxuICAgICAgKX1cbiAgICAgIDxTQ0NBSU1XcmFwcGVyQWdlbnROYW1lPlxuICAgICAgICA8VG9vbHRpcCB0aXRsZT17c2hvd1Rvb2x0aXAgPyBhZ2VudD8ubmFtZSA6ICcnfT5cbiAgICAgICAgICA8U0NDQUlNQWdlbnROYW1lIHJlZj17YWdlbnRSZWZ9IGlzU2VsZWN0ZWQ9e2lzU2VsZWN0ZWR9IGhhc0NvcnJ1cHRlZEFjY2Vzcz17ISFhZ2VudD8uaGFzX2NvcnJ1cHRlZF9hY2Nlc3N9PlxuICAgICAgICAgICAge2FnZW50Py5uYW1lfVxuICAgICAgICAgIDwvU0NDQUlNQWdlbnROYW1lPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIDxkaXYgc3R5bGU9e3sgZGlzcGxheTogJ2ZsZXgnLCBnYXA6ICc0cHgnLCBhbGlnbkl0ZW1zOiAnY2VudGVyJyB9fT5cbiAgICAgICAgICB7Y2FuRWRpdEN1c3RvbUFnZW50ICYmIChcbiAgICAgICAgICAgIDxUb29sdGlwIHRpdGxlPXt0KCdhZ2VudHMuZWRpdCcpfT5cbiAgICAgICAgICAgICAgPFNDQ0FJQU9XcmFwcGVyRWRpdFxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e2UgPT4ge1xuICAgICAgICAgICAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKVxuICAgICAgICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpXG4gICAgICAgICAgICAgICAgICBzZXRJc0V4cGFuZGVkPy4oZmFsc2UpXG4gICAgICAgICAgICAgICAgICBhbXBsaXR1ZEV2ZW50KEVWRU5UUy5vcGVuTW9kYWwsIHsgb3B0aW9uOiAnZWRpdF9hZ2VudCcgfSlcbiAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmRpc3BhdGNoRXZlbnQoXG4gICAgICAgICAgICAgICAgICAgIG5ldyBDdXN0b21FdmVudCgnYWJtLWFnZW50LW1vZGFsLXNldC12YWx1ZXMnLCB7XG4gICAgICAgICAgICAgICAgICAgICAgZGV0YWlsOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBhZ2VudFZhbHVlczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZXM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpc0VkaXRpbmc6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAga25vd2xlZGdlOiBhZ2VudD8ua25vd2xlZGdlIHx8IFtdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdlbmVyYWw6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IGFnZW50Lm5hbWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogYWdlbnQuaWQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaXNPcGVuOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8UGVuY2lsIHdpZHRoPXsyMH0gaGVpZ2h0PXsyMH0gY29sb3I9XCIjYTZhNmE2XCIgY2xhc3NOYW1lPVwicGVuY2lsLWljb25cIiAvPlxuICAgICAgICAgICAgICA8L1NDQ0FJQU9XcmFwcGVyRWRpdD5cbiAgICAgICAgICAgIDwvVG9vbHRpcD5cbiAgICAgICAgICApfVxuICAgICAgICAgIHshdmFsaWRhdGVJc01haWEoYWdlbnQgYXMgQWdlbnQpICYmIChcbiAgICAgICAgICAgIDxUb29sdGlwIHRpdGxlPXthZ2VudD8uaXNfZmF2b3JpdGUgPyB0KCdhZ2VudHMucmVtb3ZlRmF2b3JpdGUnKSA6IHQoJ2FnZW50cy5hZGRGYXZvcml0ZScpfT5cbiAgICAgICAgICAgICAgPFNDQ0FJQU9XcmFwcGVyRWRpdCBhbHdheXNWaXNpYmxlPXthZ2VudD8uaXNfZmF2b3JpdGV9IG9uQ2xpY2s9e2hhbmRsZVRvZ2dsZUZhdm9yaXRlfT5cbiAgICAgICAgICAgICAgICA8U3RhclxuICAgICAgICAgICAgICAgICAgd2lkdGg9ezIwfVxuICAgICAgICAgICAgICAgICAgaGVpZ2h0PXsyMH1cbiAgICAgICAgICAgICAgICAgIGNvbG9yPXthZ2VudD8uaXNfZmF2b3JpdGUgPyAnI0ZGQzYyNCcgOiAnI2E2YTZhNid9XG4gICAgICAgICAgICAgICAgICBmaWxsPXthZ2VudD8uaXNfZmF2b3JpdGUgPyAnI0ZGQzYyNCcgOiAnbm9uZSd9XG4gICAgICAgICAgICAgICAgICB2YXJpYW50PVwic29saWRcIlxuICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXthZ2VudD8uaXNfZmF2b3JpdGUgPyAnJyA6ICdzdGFyLWZhdm9yaXRlLWljb24nfVxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDwvU0NDQUlBT1dyYXBwZXJFZGl0PlxuICAgICAgICAgICAgPC9Ub29sdGlwPlxuICAgICAgICAgICl9XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9TQ0NBSU1XcmFwcGVyQWdlbnROYW1lPlxuICAgIDwvU0NDQUlBT1dyYXBwZXI+XG4gIClcbn1cbiJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsTUFBTSxRQUFvQixPQUFPO0FBQzFDLFNBQVNDLE9BQU8sUUFBUSw4Q0FBOEM7QUFDdEUsU0FBU0MsTUFBTSxRQUFRLHlDQUF5QztBQUNoRSxTQUFTQyxJQUFJLFFBQVEsdUNBQXVDO0FBQzVELFNBQVNDLGNBQWMsUUFBUSxlQUFlO0FBRTlDLFNBQVNDLGlCQUFpQixRQUFRLGdDQUFnQztBQUNsRSxTQUNFQyxjQUFjLEVBQ2RDLGtCQUFrQixFQUNsQkMsZUFBZSxFQUNmQyxzQkFBc0IsUUFDakIsNkJBQTZCO0FBQ3BDLFNBQVNDLE9BQU8sUUFBUSxpQ0FBaUM7QUFDekQsU0FBU0MsTUFBTSxFQUFFQyxRQUFRLFFBQVEsK0JBQStCO0FBQ2hFLFNBQVNDLGNBQWMsUUFBUSw4Q0FBOEM7QUFDN0UsU0FBU0MsaUJBQWlCLFFBQVEsc0JBQXNCO0FBQ3hELFNBQVNDLFFBQVEsUUFBUSx5QkFBeUI7QUFBQSxTQUFBQyxHQUFBLElBQUFDLElBQUEsRUFBQUMsSUFBQSxJQUFBQyxLQUFBO0FBRWxELE9BQU8sSUFBTUMsaUJBQWlCLEdBQUcsU0FBcEJBLGlCQUFpQkEsQ0FBQUMsSUFBQSxFQWdCeEI7RUFBQSxJQUFBQyxpQkFBQTtFQUFBLElBZkpDLEtBQUssR0FBQUYsSUFBQSxDQUFMRSxLQUFLO0lBQ0xDLEtBQUssR0FBQUgsSUFBQSxDQUFMRyxLQUFLO0lBQ0xDLGlCQUFpQixHQUFBSixJQUFBLENBQWpCSSxpQkFBaUI7SUFDakJDLFVBQVUsR0FBQUwsSUFBQSxDQUFWSyxVQUFVO0lBQ1ZDLE1BQU0sR0FBQU4sSUFBQSxDQUFOTSxNQUFNO0lBQ05DLGdCQUFnQixHQUFBUCxJQUFBLENBQWhCTyxnQkFBZ0I7SUFDaEJDLGFBQWEsR0FBQVIsSUFBQSxDQUFiUSxhQUFhO0VBVWIsSUFBQUMsZUFBQSxHQUFjMUIsY0FBYyxDQUFDLENBQUMsaUJB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
@@ -1,9 +1,17 @@
1
+ import { InformationCircle } from '@projectcor/icons/lib/components/InformationCircle';
2
+ import colors from '@projectcor/theme/lib/base/colors';
3
+ import moment from 'moment';
4
+ import { useTranslation } from 'react-i18next';
1
5
  import { ChatFooter } from '../../../ChatFooter/ChatFooter';
6
+ import { SECTIONS } from '../../../../../constants/config';
7
+ import { useUser } from '../../../../../context/cor-user';
8
+ import { validateIsMaia } from '../../../../../services/utils/validateIsMaia';
9
+ import { EVENTS, useEvent } from '../../../../../hooks/useEvent';
2
10
  import { useChatsStore } from '../../../../../store/useChatsStore';
3
- import { AgentInputBlockMessage, resolveAgentInputBlock, useAgentChangeModelAction } from '../../../AgentInputBlock';
4
- import { SCCAIMFWrapper } from './ChatAiModalFooter.styles';
5
- import { jsx as _jsx } from "react/jsx-runtime";
11
+ import { SCCAIMFWrapper, SCCAIMFWrapperInfoDeletedAgent, SCCAIMFWrapperInfoDeletedAgentText, SCCAIMFWrapperInfoIcon, SCCAIMFMessageWithAction, SCCAIMFChangeModelButton } from './ChatAiModalFooter.styles';
12
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
6
13
  export var ChatAiModalFooter = function ChatAiModalFooter(_ref) {
14
+ var _user$permissions;
7
15
  var agent = _ref.agent,
8
16
  handleSendMessage = _ref.handleSendMessage,
9
17
  handleStopGeneration = _ref.handleStopGeneration,
@@ -15,20 +23,150 @@ export var ChatAiModalFooter = function ChatAiModalFooter(_ref) {
15
23
  legacyContextSession = _ref.legacyContextSession,
16
24
  onContinueInNewChat = _ref.onContinueInNewChat,
17
25
  layoutMode = _ref.layoutMode;
26
+ var _useTranslation = useTranslation([SECTIONS.abmAgent]),
27
+ t = _useTranslation.t;
28
+ var user = useUser();
29
+ var eventAmplitude = useEvent();
18
30
  var markChatAsRead = useChatsStore(function (state) {
19
31
  return state.markChatAsRead;
20
32
  });
21
- var inputBlock = resolveAgentInputBlock(agent, legacyContextSession);
22
- var _useAgentChangeModelA = useAgentChangeModelAction(agent),
23
- canEditCustomAgent = _useAgentChangeModelA.canEditCustomAgent,
24
- openChangeModelModal = _useAgentChangeModelA.openChangeModelModal;
25
- if (inputBlock) {
26
- return /*#__PURE__*/_jsx(AgentInputBlockMessage, {
27
- block: inputBlock,
28
- variant: "footer",
29
- onContinueInNewChat: onContinueInNewChat,
30
- onChangeModel: openChangeModelModal,
31
- showChangeModelButton: inputBlock.kind === 'custom_warning' ? canEditCustomAgent : false
33
+ var infoIconColor = colors.text.secondary;
34
+ var canEditCustomAgent = !!agent && !!(user !== null && user !== void 0 && (_user$permissions = user.permissions) !== null && _user$permissions !== void 0 && (_user$permissions = _user$permissions.ai_agents) !== null && _user$permissions !== void 0 && _user$permissions.edit) && !validateIsMaia(agent) && agent.type === 'custom' && window.MAIA_CHAT_AI_FEATURE_ACCESS_MULTI_AGENTS;
35
+ var handleOpenChangeModelModal = function handleOpenChangeModelModal() {
36
+ if (!agent || !canEditCustomAgent) return;
37
+ eventAmplitude(EVENTS.openModal, {
38
+ option: 'edit_agent'
39
+ });
40
+ document.dispatchEvent(new CustomEvent('abm-agent-modal-set-values', {
41
+ detail: {
42
+ agentValues: {
43
+ values: {
44
+ isEditing: true,
45
+ knowledge: agent.knowledge || [],
46
+ general: {
47
+ name: agent.name,
48
+ id: agent.id
49
+ }
50
+ },
51
+ isOpen: true
52
+ }
53
+ }
54
+ }));
55
+ };
56
+ if (legacyContextSession) {
57
+ return /*#__PURE__*/_jsx(SCCAIMFWrapper, {
58
+ children: /*#__PURE__*/_jsxs(SCCAIMFWrapperInfoDeletedAgent, {
59
+ children: [/*#__PURE__*/_jsx(SCCAIMFWrapperInfoIcon, {
60
+ children: /*#__PURE__*/_jsx(InformationCircle, {
61
+ width: 20,
62
+ height: 20,
63
+ color: infoIconColor
64
+ })
65
+ }), /*#__PURE__*/_jsxs(SCCAIMFMessageWithAction, {
66
+ children: [/*#__PURE__*/_jsx(SCCAIMFWrapperInfoDeletedAgentText, {
67
+ children: t('legendLegacyContextSession', {
68
+ name: legacyContextSession.contextName
69
+ })
70
+ }), /*#__PURE__*/_jsx(SCCAIMFChangeModelButton, {
71
+ type: "button",
72
+ onClick: onContinueInNewChat,
73
+ children: t('continueInNewChat')
74
+ })]
75
+ })]
76
+ })
77
+ });
78
+ }
79
+ if (agent !== null && agent !== void 0 && agent.is_deleted) {
80
+ return /*#__PURE__*/_jsx(SCCAIMFWrapper, {
81
+ children: /*#__PURE__*/_jsxs(SCCAIMFWrapperInfoDeletedAgent, {
82
+ children: [/*#__PURE__*/_jsx(SCCAIMFWrapperInfoIcon, {
83
+ children: /*#__PURE__*/_jsx(InformationCircle, {
84
+ width: 20,
85
+ height: 20,
86
+ color: infoIconColor
87
+ })
88
+ }), /*#__PURE__*/_jsxs(SCCAIMFWrapperInfoDeletedAgentText, {
89
+ children: [t('legendDeletedAgent'), " ", moment(agent === null || agent === void 0 ? void 0 : agent.deleted_at).format('DD [de] MMMM, YYYY')]
90
+ })]
91
+ })
92
+ });
93
+ }
94
+ if (agent !== null && agent !== void 0 && agent.project_deleted) {
95
+ return /*#__PURE__*/_jsx(SCCAIMFWrapper, {
96
+ children: /*#__PURE__*/_jsxs(SCCAIMFWrapperInfoDeletedAgent, {
97
+ children: [/*#__PURE__*/_jsx(SCCAIMFWrapperInfoIcon, {
98
+ children: /*#__PURE__*/_jsx(InformationCircle, {
99
+ width: 20,
100
+ height: 20,
101
+ color: infoIconColor
102
+ })
103
+ }), /*#__PURE__*/_jsx(SCCAIMFWrapperInfoDeletedAgentText, {
104
+ children: t('legendProjectDeleted', {
105
+ name: agent.project_deleted.name
106
+ })
107
+ })]
108
+ })
109
+ });
110
+ }
111
+ if (agent !== null && agent !== void 0 && agent.has_not_access) {
112
+ return /*#__PURE__*/_jsx(SCCAIMFWrapper, {
113
+ children: /*#__PURE__*/_jsxs(SCCAIMFWrapperInfoDeletedAgent, {
114
+ children: [/*#__PURE__*/_jsx(SCCAIMFWrapperInfoIcon, {
115
+ children: /*#__PURE__*/_jsx(InformationCircle, {
116
+ width: 20,
117
+ height: 20,
118
+ color: infoIconColor
119
+ })
120
+ }), /*#__PURE__*/_jsx(SCCAIMFWrapperInfoDeletedAgentText, {
121
+ children: t('legendNoAccess', {
122
+ name: agent === null || agent === void 0 ? void 0 : agent.name
123
+ })
124
+ })]
125
+ })
126
+ });
127
+ }
128
+ if (agent !== null && agent !== void 0 && agent.has_not_permissions || !agent) {
129
+ return /*#__PURE__*/_jsx(SCCAIMFWrapper, {
130
+ children: /*#__PURE__*/_jsxs(SCCAIMFWrapperInfoDeletedAgent, {
131
+ children: [/*#__PURE__*/_jsx(SCCAIMFWrapperInfoIcon, {
132
+ children: /*#__PURE__*/_jsx(InformationCircle, {
133
+ width: 20,
134
+ height: 20,
135
+ color: infoIconColor
136
+ })
137
+ }), /*#__PURE__*/_jsx(SCCAIMFWrapperInfoDeletedAgentText, {
138
+ children: t('legendNoPermissions', {
139
+ name: agent === null || agent === void 0 ? void 0 : agent.name
140
+ })
141
+ })]
142
+ })
143
+ });
144
+ }
145
+ var customAgentWarningKey = null;
146
+ if ((agent === null || agent === void 0 ? void 0 : agent.type) === 'custom' && agent !== null && agent !== void 0 && agent.model_deprecated) {
147
+ customAgentWarningKey = 'legendModelDeprecated';
148
+ } else if ((agent === null || agent === void 0 ? void 0 : agent.type) === 'custom' && ((agent === null || agent === void 0 ? void 0 : agent.provider_status) === 'partial_outage' || (agent === null || agent === void 0 ? void 0 : agent.provider_status) === 'major_outage' || (agent === null || agent === void 0 ? void 0 : agent.provider_status) === 'under_maintenance')) {
149
+ customAgentWarningKey = 'legendProviderStatus';
150
+ }
151
+ if (customAgentWarningKey) {
152
+ return /*#__PURE__*/_jsx(SCCAIMFWrapper, {
153
+ children: /*#__PURE__*/_jsxs(SCCAIMFWrapperInfoDeletedAgent, {
154
+ children: [/*#__PURE__*/_jsx(SCCAIMFWrapperInfoIcon, {
155
+ children: /*#__PURE__*/_jsx(InformationCircle, {
156
+ width: 20,
157
+ height: 20,
158
+ color: infoIconColor
159
+ })
160
+ }), /*#__PURE__*/_jsxs(SCCAIMFMessageWithAction, {
161
+ children: [/*#__PURE__*/_jsx(SCCAIMFWrapperInfoDeletedAgentText, {
162
+ children: t(customAgentWarningKey)
163
+ }), canEditCustomAgent && /*#__PURE__*/_jsx(SCCAIMFChangeModelButton, {
164
+ type: "button",
165
+ onClick: handleOpenChangeModelModal,
166
+ children: t('changeModel')
167
+ })]
168
+ })]
169
+ })
32
170
  });
33
171
  }
34
172
  return /*#__PURE__*/_jsx(SCCAIMFWrapper, {
@@ -48,4 +186,4 @@ export var ChatAiModalFooter = function ChatAiModalFooter(_ref) {
48
186
  })
49
187
  });
50
188
  };
51
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJDaGF0Rm9vdGVyIiwidXNlQ2hhdHNTdG9yZSIsIkFnZW50SW5wdXRCbG9ja01lc3NhZ2UiLCJyZXNvbHZlQWdlbnRJbnB1dEJsb2NrIiwidXNlQWdlbnRDaGFuZ2VNb2RlbEFjdGlvbiIsIlNDQ0FJTUZXcmFwcGVyIiwianN4IiwiX2pzeCIsIkNoYXRBaU1vZGFsRm9vdGVyIiwiX3JlZiIsImFnZW50IiwiaGFuZGxlU2VuZE1lc3NhZ2UiLCJoYW5kbGVTdG9wR2VuZXJhdGlvbiIsImlzU3RyZWFtaW5nIiwiaXNXcml0aW5nIiwiY2hhdElkIiwibmV3Q2hhdEtleSIsInRvb2x0aXBaSW5kZXgiLCJsZWdhY3lDb250ZXh0U2Vzc2lvbiIsIm9uQ29udGludWVJbk5ld0NoYXQiLCJsYXlvdXRNb2RlIiwibWFya0NoYXRBc1JlYWQiLCJzdGF0ZSIsImlucHV0QmxvY2siLCJfdXNlQWdlbnRDaGFuZ2VNb2RlbEEiLCJjYW5FZGl0Q3VzdG9tQWdlbnQiLCJvcGVuQ2hhbmdlTW9kZWxNb2RhbCIsImJsb2NrIiwidmFyaWFudCIsIm9uQ2hhbmdlTW9kZWwiLCJzaG93Q2hhbmdlTW9kZWxCdXR0b24iLCJraW5kIiwiY2hpbGRyZW4iLCJvblNlbmRNZXNzYWdlIiwiZGlzYWJsZWQiLCJvblN0b3BHZW5lcmF0aW9uIiwib25JbnB1dEZvY3VzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbW9sZWN1bGVzL0NoYXRBSU1vZGFsL2NvbXBvbmVudHMvQ2hhdEFpTW9kYWxGb290ZXIvQ2hhdEFpTW9kYWxGb290ZXIudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYXRGb290ZXIgfSBmcm9tICcuLi8uLi8uLi9DaGF0Rm9vdGVyL0NoYXRGb290ZXInXG5pbXBvcnQgeyB1c2VDaGF0c1N0b3JlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vc3RvcmUvdXNlQ2hhdHNTdG9yZSdcbmltcG9ydCB7IEFnZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vdHlwZXMvYWdlbnQnXG5pbXBvcnQgdHlwZSB7IE1haWFDaGF0TW9kYWxMYXlvdXRNb2RlIH0gZnJvbSAnLi4vLi4vbGF5b3V0J1xuaW1wb3J0IHtcbiAgQWdlbnRJbnB1dEJsb2NrTWVzc2FnZSxcbiAgcmVzb2x2ZUFnZW50SW5wdXRCbG9jayxcbiAgdXNlQWdlbnRDaGFuZ2VNb2RlbEFjdGlvbixcbiAgdHlwZSBMZWdhY3lDb250ZXh0U2Vzc2lvbixcbn0gZnJvbSAnLi4vLi4vLi4vQWdlbnRJbnB1dEJsb2NrJ1xuaW1wb3J0IHsgU0NDQUlNRldyYXBwZXIgfSBmcm9tICcuL0NoYXRBaU1vZGFsRm9vdGVyLnN0eWxlcydcblxuZXhwb3J0IGNvbnN0IENoYXRBaU1vZGFsRm9vdGVyID0gKHtcbiAgYWdlbnQsXG4gIGhhbmRsZVNlbmRNZXNzYWdlLFxuICBoYW5kbGVTdG9wR2VuZXJhdGlvbixcbiAgaXNTdHJlYW1pbmcsXG4gIGlzV3JpdGluZyxcbiAgY2hhdElkLFxuICBuZXdDaGF0S2V5LFxuICB0b29sdGlwWkluZGV4LFxuICBsZWdhY3lDb250ZXh0U2Vzc2lvbixcbiAgb25Db250aW51ZUluTmV3Q2hhdCxcbiAgbGF5b3V0TW9kZSxcbn06IHtcbiAgYWdlbnQ/OiBBZ2VudCB8IG51bGxcbiAgaGFuZGxlU2VuZE1lc3NhZ2U6IFBhcmFtZXRlcnM8dHlwZW9mIENoYXRGb290ZXI+WzBdWydvblNlbmRNZXNzYWdlJ11cbiAgaGFuZGxlU3RvcEdlbmVyYXRpb24/OiAoKCkgPT4gdm9pZCkgfCBudWxsXG4gIGlzU3RyZWFtaW5nPzogYm9vbGVhblxuICBpc1dyaXRpbmc/OiBib29sZWFuXG4gIGNoYXRJZD86IHN0cmluZyB8IG51bGxcbiAgbmV3Q2hhdEtleT86IG51bWJlclxuICB0b29sdGlwWkluZGV4PzogbnVtYmVyXG4gIGxlZ2FjeUNvbnRleHRTZXNzaW9uPzogTGVnYWN5Q29udGV4dFNlc3Npb24gfCBudWxsXG4gIG9uQ29udGludWVJbk5ld0NoYXQ/OiAoKSA9PiB2b2lkXG4gIGxheW91dE1vZGU/OiBNYWlhQ2hhdE1vZGFsTGF5b3V0TW9kZVxufSkgPT4ge1xuICBjb25zdCBtYXJrQ2hhdEFzUmVhZCA9IHVzZUNoYXRzU3RvcmUoc3RhdGUgPT4gc3RhdGUubWFya0NoYXRBc1JlYWQpXG4gIGNvbnN0IGlucHV0QmxvY2sgPSByZXNvbHZlQWdlbnRJbnB1dEJsb2NrKGFnZW50LCBsZWdhY3lDb250ZXh0U2Vzc2lvbilcbiAgY29uc3QgeyBjYW5FZGl0Q3VzdG9tQWdlbnQsIG9wZW5DaGFuZ2VNb2RlbE1vZGFsIH0gPSB1c2VBZ2VudENoYW5nZU1vZGVsQWN0aW9uKGFnZW50KVxuXG4gIGlmIChpbnB1dEJsb2NrKSB7XG4gICAgcmV0dXJuIChcbiAgICAgIDxBZ2VudElucHV0QmxvY2tNZXNzYWdlXG4gICAgICAgIGJsb2NrPXtpbnB1dEJsb2NrfVxuICAgICAgICB2YXJpYW50PVwiZm9vdGVyXCJcbiAgICAgICAgb25Db250aW51ZUluTmV3Q2hhdD17b25Db250aW51ZUluTmV3Q2hhdH1cbiAgICAgICAgb25DaGFuZ2VNb2RlbD17b3BlbkNoYW5nZU1vZGVsTW9kYWx9XG4gICAgICAgIHNob3dDaGFuZ2VNb2RlbEJ1dHRvbj17aW5wdXRCbG9jay5raW5kID09PSAnY3VzdG9tX3dhcm5pbmcnID8gY2FuRWRpdEN1c3RvbUFnZW50IDogZmFsc2V9XG4gICAgICAvPlxuICAgIClcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPFNDQ0FJTUZXcmFwcGVyPlxuICAgICAgPENoYXRGb290ZXJcbiAgICAgICAgb25TZW5kTWVzc2FnZT17aGFuZGxlU2VuZE1lc3NhZ2V9XG4gICAgICAgIGRpc2FibGVkPXtmYWxzZX1cbiAgICAgICAgaXNTdHJlYW1pbmc9e2lzU3RyZWFtaW5nfVxuICAgICAgICBpc1dyaXRpbmc9e2lzV3JpdGluZ31cbiAgICAgICAgb25TdG9wR2VuZXJhdGlvbj17aGFuZGxlU3RvcEdlbmVyYXRpb259XG4gICAgICAgIGNoYXRJZD17Y2hhdElkfVxuICAgICAgICBuZXdDaGF0S2V5PXtuZXdDaGF0S2V5fVxuICAgICAgICB0b29sdGlwWkluZGV4PXt0b29sdGlwWkluZGV4fVxuICAgICAgICBsYXlvdXRNb2RlPXtsYXlvdXRNb2RlfVxuICAgICAgICBvbklucHV0Rm9jdXM9eygpID0+IG1hcmtDaGF0QXNSZWFkKGNoYXRJZCl9XG4gICAgICAvPlxuICAgIDwvU0NDQUlNRldyYXBwZXI+XG4gIClcbn1cbiJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsVUFBVSxRQUFRLGdDQUFnQztBQUMzRCxTQUFTQyxhQUFhLFFBQVEsb0NBQW9DO0FBR2xFLFNBQ0VDLHNCQUFzQixFQUN0QkMsc0JBQXNCLEVBQ3RCQyx5QkFBeUIsUUFFcEIsMEJBQTBCO0FBQ2pDLFNBQVNDLGNBQWMsUUFBUSw0QkFBNEI7QUFBQSxTQUFBQyxHQUFBLElBQUFDLElBQUE7QUFFM0QsT0FBTyxJQUFNQyxpQkFBaUIsR0FBRyxTQUFwQkEsaUJBQWlCQSxDQUFBQyxJQUFBLEVBd0J4QjtFQUFBLElBdkJKQyxLQUFLLEdBQUFELElBQUEsQ0FBTEMsS0FBSztJQUNMQyxpQkFBaUIsR0FBQUYsSUFBQSxDQUFqQkUsaUJBQWlCO0lBQ2pCQyxvQkFBb0IsR0FBQUgsSUFBQSxDQUFwQkcsb0JBQW9CO0lBQ3BCQyxXQUFXLEdBQUFKLElBQUEsQ0FBWEksV0FBVztJQUNYQyxTQUFTLEdBQUFMLElBQUEsQ0FBVEssU0FBUztJQUNUQyxNQUFNLEdBQUFOLElBQUEsQ0FBTk0sTUFBTTtJQUNOQyxVQUFVLEdBQUFQLElBQUEsQ0FBVk8sVUFBVTtJQUNWQyxhQUFhLEdBQUFSLElBQUEsQ0FBYlEsYUFBYTtJQUNiQyxvQkFBb0IsR0FBQVQsSUFBQSxDQUFwQlMsb0JBQW9CO0lBQ3BCQyxtQkFBbUIsR0FBQVYsSUFBQSxDQUFuQlUsbUJBQW1CO0lBQ25CQyxVQUFVLEdBQUFYLElBQUEsQ0FBVlcsVUFBVTtFQWNWLElBQU1DLGNBQWMsR0FBR3BCLGFBQWEsQ0FBQyxVQUFBcUIsS0FBSztJQUFBLE9BQUlBLEtBQUssQ0FBQ0QsY0FBYztFQUFBLEVBQUM7RUFDbkUsSUFBTUUsVUFBVSxHQUFHcEIsc0JBQXNCLENBQUNPLEtBQUssRUFBRVEsb0JBQW9CLENBQUM7RUFDdEUsSUFBQU0scUJBQUEsR0FBcURwQix5QkFBeUIsQ0FBQ00sS0FBSyxDQUFDO0lBQTdFZSxrQkFBa0IsR0FBQUQscUJBQUEsQ0FBbEJDLGtCQUFrQjtJQUFFQyxvQkFBb0IsR0FBQUYscUJBQUEsQ0FBcEJFLG9CQUFvQjtFQUVoRCxJQUFJSCxVQUFVLEVBQUU7SUFDZCxvQkFDRWhCLElBQUEsQ0FBQ0wsc0JBQXNCO01BQ3JCeUIsS0FBSyxFQUFFSixVQUFXO01BQ2xCSyxPQUFPLEVBQUMsUUFBUTtNQUNoQlQsbUJBQW1CLEVBQUVBLG1CQUFvQjtNQUN6Q1UsYUFBYSxFQUFFSCxvQkFBcUI7TUFDcENJLHFCQUFxQixFQUFFUCxVQUFVLENBQUNRLElBQUksS0FBSyxnQkFBZ0IsR0FBR04sa0JBQWtCLEdBQUc7SUFBTSxDQUMxRixDQUFDO0VBRU47RUFFQSxvQkFDRWxCLElBQUEsQ0FBQ0YsY0FBYztJQUFBMkIsUUFBQSxlQUNiekIsSUFBQSxDQUFDUCxVQUFVO01BQ1RpQyxhQUFhLEVBQUV0QixpQkFBa0I7TUFDakN1QixRQUFRLEVBQUUsS0FBTTtNQUNoQnJCLFdBQVcsRUFBRUEsV0FBWTtNQUN6QkMsU0FBUyxFQUFFQSxTQUFVO01BQ3JCcUIsZ0JBQWdCLEVBQUV2QixvQkFBcUI7TUFDdkNHLE1BQU0sRUFBRUEsTUFBTztNQUNmQyxVQUFVLEVBQUVBLFVBQVc7TUFDdkJDLGFBQWEsRUFBRUEsYUFBYztNQUM3QkcsVUFBVSxFQUFFQSxVQUFXO01BQ3ZCZ0IsWUFBWSxFQUFFLFNBQWRBLFlBQVlBLENBQUE7UUFBQSxPQUFRZixjQUFjLENBQUNOLE1BQU0sQ0FBQztNQUFBO0lBQUMsQ0FDNUM7RUFBQyxDQUNZLENBQUM7QUFFckIsQ0FBQyIsImlnbm9yZUxpc3QiOltdfQ==
189
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJJbmZvcm1hdGlvbkNpcmNsZSIsImNvbG9ycyIsIm1vbWVudCIsInVzZVRyYW5zbGF0aW9uIiwiQ2hhdEZvb3RlciIsIlNFQ1RJT05TIiwidXNlVXNlciIsInZhbGlkYXRlSXNNYWlhIiwiRVZFTlRTIiwidXNlRXZlbnQiLCJ1c2VDaGF0c1N0b3JlIiwiU0NDQUlNRldyYXBwZXIiLCJTQ0NBSU1GV3JhcHBlckluZm9EZWxldGVkQWdlbnQiLCJTQ0NBSU1GV3JhcHBlckluZm9EZWxldGVkQWdlbnRUZXh0IiwiU0NDQUlNRldyYXBwZXJJbmZvSWNvbiIsIlNDQ0FJTUZNZXNzYWdlV2l0aEFjdGlvbiIsIlNDQ0FJTUZDaGFuZ2VNb2RlbEJ1dHRvbiIsImpzeCIsIl9qc3giLCJqc3hzIiwiX2pzeHMiLCJDaGF0QWlNb2RhbEZvb3RlciIsIl9yZWYiLCJfdXNlciRwZXJtaXNzaW9ucyIsImFnZW50IiwiaGFuZGxlU2VuZE1lc3NhZ2UiLCJoYW5kbGVTdG9wR2VuZXJhdGlvbiIsImlzU3RyZWFtaW5nIiwiaXNXcml0aW5nIiwiY2hhdElkIiwibmV3Q2hhdEtleSIsInRvb2x0aXBaSW5kZXgiLCJsZWdhY3lDb250ZXh0U2Vzc2lvbiIsIm9uQ29udGludWVJbk5ld0NoYXQiLCJsYXlvdXRNb2RlIiwiX3VzZVRyYW5zbGF0aW9uIiwiYWJtQWdlbnQiLCJ0IiwidXNlciIsImV2ZW50QW1wbGl0dWRlIiwibWFya0NoYXRBc1JlYWQiLCJzdGF0ZSIsImluZm9JY29uQ29sb3IiLCJ0ZXh0Iiwic2Vjb25kYXJ5IiwiY2FuRWRpdEN1c3RvbUFnZW50IiwicGVybWlzc2lvbnMiLCJhaV9hZ2VudHMiLCJlZGl0IiwidHlwZSIsIndpbmRvdyIsIk1BSUFfQ0hBVF9BSV9GRUFUVVJFX0FDQ0VTU19NVUxUSV9BR0VOVFMiLCJoYW5kbGVPcGVuQ2hhbmdlTW9kZWxNb2RhbCIsIm9wZW5Nb2RhbCIsIm9wdGlvbiIsImRvY3VtZW50IiwiZGlzcGF0Y2hFdmVudCIsIkN1c3RvbUV2ZW50IiwiZGV0YWlsIiwiYWdlbnRWYWx1ZXMiLCJ2YWx1ZXMiLCJpc0VkaXRpbmciLCJrbm93bGVkZ2UiLCJnZW5lcmFsIiwibmFtZSIsImlkIiwiaXNPcGVuIiwiY2hpbGRyZW4iLCJ3aWR0aCIsImhlaWdodCIsImNvbG9yIiwiY29udGV4dE5hbWUiLCJvbkNsaWNrIiwiaXNfZGVsZXRlZCIsImRlbGV0ZWRfYXQiLCJmb3JtYXQiLCJwcm9qZWN0X2RlbGV0ZWQiLCJoYXNfbm90X2FjY2VzcyIsImhhc19ub3RfcGVybWlzc2lvbnMiLCJjdXN0b21BZ2VudFdhcm5pbmdLZXkiLCJtb2RlbF9kZXByZWNhdGVkIiwicHJvdmlkZXJfc3RhdHVzIiwib25TZW5kTWVzc2FnZSIsImRpc2FibGVkIiwib25TdG9wR2VuZXJhdGlvbiIsIm9uSW5wdXRGb2N1cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL21vbGVjdWxlcy9DaGF0QUlNb2RhbC9jb21wb25lbnRzL0NoYXRBaU1vZGFsRm9vdGVyL0NoYXRBaU1vZGFsRm9vdGVyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmZvcm1hdGlvbkNpcmNsZSB9IGZyb20gJ0Bwcm9qZWN0Y29yL2ljb25zL2xpYi9jb21wb25lbnRzL0luZm9ybWF0aW9uQ2lyY2xlJ1xuaW1wb3J0IGNvbG9ycyBmcm9tICdAcHJvamVjdGNvci90aGVtZS9saWIvYmFzZS9jb2xvcnMnXG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudCdcbmltcG9ydCB7IHVzZVRyYW5zbGF0aW9uIH0gZnJvbSAncmVhY3QtaTE4bmV4dCdcbmltcG9ydCB7IENoYXRGb290ZXIgfSBmcm9tICcuLi8uLi8uLi9DaGF0Rm9vdGVyL0NoYXRGb290ZXInXG5pbXBvcnQgeyBTRUNUSU9OUyB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50cy9jb25maWcnXG5pbXBvcnQgeyB1c2VVc2VyIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vY29udGV4dC9jb3ItdXNlcidcbmltcG9ydCB7IEFnZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vdHlwZXMvYWdlbnQnXG5pbXBvcnQgeyB2YWxpZGF0ZUlzTWFpYSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL3NlcnZpY2VzL3V0aWxzL3ZhbGlkYXRlSXNNYWlhJ1xuaW1wb3J0IHsgRVZFTlRTLCB1c2VFdmVudCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2hvb2tzL3VzZUV2ZW50J1xuaW1wb3J0IHsgdXNlQ2hhdHNTdG9yZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL3N0b3JlL3VzZUNoYXRzU3RvcmUnXG5pbXBvcnQge1xuICBTQ0NBSU1GV3JhcHBlcixcbiAgU0NDQUlNRldyYXBwZXJJbmZvRGVsZXRlZEFnZW50LFxuICBTQ0NBSU1GV3JhcHBlckluZm9EZWxldGVkQWdlbnRUZXh0LFxuICBTQ0NBSU1GV3JhcHBlckluZm9JY29uLFxuICBTQ0NBSU1GTWVzc2FnZVdpdGhBY3Rpb24sXG4gIFNDQ0FJTUZDaGFuZ2VNb2RlbEJ1dHRvbixcbn0gZnJvbSAnLi9DaGF0QWlNb2RhbEZvb3Rlci5zdHlsZXMnXG5pbXBvcnQgdHlwZSB7IE1haWFDaGF0TW9kYWxMYXlvdXRNb2RlIH0gZnJvbSAnLi4vLi4vbGF5b3V0J1xuXG5leHBvcnQgY29uc3QgQ2hhdEFpTW9kYWxGb290ZXIgPSAoe1xuICBhZ2VudCxcbiAgaGFuZGxlU2VuZE1lc3NhZ2UsXG4gIGhhbmRsZVN0b3BHZW5lcmF0aW9uLFxuICBpc1N0cmVhbWluZyxcbiAgaXNXcml0aW5nLFxuICBjaGF0SWQsXG4gIG5ld0NoYXRLZXksXG4gIHRvb2x0aXBaSW5kZXgsXG4gIGxlZ2FjeUNvbnRleHRTZXNzaW9uLFxuICBvbkNvbnRpbnVlSW5OZXdDaGF0LFxuICBsYXlvdXRNb2RlLFxufToge1xuICBhZ2VudD86IEFnZW50IHwgbnVsbFxuICBoYW5kbGVTZW5kTWVzc2FnZTogUGFyYW1ldGVyczx0eXBlb2YgQ2hhdEZvb3Rlcj5bMF1bJ29uU2VuZE1lc3NhZ2UnXVxuICBoYW5kbGVTdG9wR2VuZXJhdGlvbj86ICgoKSA9PiB2b2lkKSB8IG51bGxcbiAgaXNTdHJlYW1pbmc/OiBib29sZWFuXG4gIGlzV3JpdGluZz86IGJvb2xlYW5cbiAgY2hhdElkPzogc3RyaW5nIHwgbnVsbFxuICBuZXdDaGF0S2V5PzogbnVtYmVyXG4gIHRvb2x0aXBaSW5kZXg/OiBudW1iZXJcbiAgLyoqIFNpIGxhIHNlc3Npb24gYWJpZXJ0YSBlcyBkZSB1biBjbG9uZSBsZWdhY3kgKGVudGl0eSBwcm9qZWN0L3Rhc2svY2xpZW50KSwgc2UgbXVlc3RyYSB1biBjYXJ0ZWxcbiAgICogIHBhcmEgY29udGludWFyIGVsIGNvbnRleHRvIGVuIHVuIGNoYXQgbnVldm8gKGNvbiBlbCBvcmNoZXN0cmF0b3IpIGVuIHZleiBkZWwgaW5wdXQuICovXG4gIGxlZ2FjeUNvbnRleHRTZXNzaW9uPzogeyBlbnRpdHlUeXBlOiAncHJvamVjdCcgfCAndGFzaycgfCAnY2xpZW50JzsgY29udGV4dE5hbWU6IHN0cmluZyB9IHwgbnVsbFxuICBvbkNvbnRpbnVlSW5OZXdDaGF0PzogKCkgPT4gdm9pZFxuICBsYXlvdXRNb2RlPzogTWFpYUNoYXRNb2RhbExheW91dE1vZGVcbn0pID0+IHtcbiAgY29uc3QgeyB0IH0gPSB1c2VUcmFuc2xhdGlvbihbU0VDVElPTlMuYWJtQWdlbnRdKVxuICBjb25zdCB1c2VyID0gdXNlVXNlcigpXG4gIGNvbnN0IGV2ZW50QW1wbGl0dWRlID0gdXNlRXZlbnQoKVxuICBjb25zdCBtYXJrQ2hhdEFzUmVhZCA9IHVzZUNoYXRzU3RvcmUoc3RhdGUgPT4gc3RhdGUubWFya0NoYXRBc1JlYWQpXG4gIGNvbnN0IGluZm9JY29uQ29sb3IgPSBjb2xvcnMudGV4dC5zZWNvbmRhcnlcblxuICBjb25zdCBjYW5FZGl0Q3VzdG9tQWdlbnQgPVxuICAgICEhYWdlbnQgJiZcbiAgICAhIXVzZXI/LnBlcm1pc3Npb25zPy5haV9hZ2VudHM/LmVkaXQgJiZcbiAgICAhdmFsaWRhdGVJc01haWEoYWdlbnQgYXMgQWdlbnQpICYmXG4gICAgYWdlbnQudHlwZSA9PT0gJ2N1c3RvbScgJiZcbiAgICB3aW5kb3cuTUFJQV9DSEFUX0FJX0ZFQVRVUkVfQUNDRVNTX01VTFRJX0FHRU5UU1xuXG4gIGNvbnN0IGhhbmRsZU9wZW5DaGFuZ2VNb2RlbE1vZGFsID0gKCkgPT4ge1xuICAgIGlmICghYWdlbnQgfHwgIWNhbkVkaXRDdXN0b21BZ2VudCkgcmV0dXJuXG5cbiAgICBldmVudEFtcGxpdHVkZShFVkVOVFMub3Blbk1vZGFsLCB7IG9wdGlvbjogJ2VkaXRfYWdlbnQnIH0pXG4gICAgZG9jdW1lbnQuZGlzcGF0Y2hFdmVudChcbiAgICAgIG5ldyBDdXN0b21FdmVudCgnYWJtLWFnZW50LW1vZGFsLXNldC12YWx1ZXMnLCB7XG4gICAgICAgIGRldGFpbDoge1xuICAgICAgICAgIGFnZW50VmFsdWVzOiB7XG4gICAgICAgICAgICB2YWx1ZXM6IHtcbiAgICAgICAgICAgICAgaXNFZGl0aW5nOiB0cnVlLFxuICAgICAgICAgICAgICBrbm93bGVkZ2U6IGFnZW50Lmtub3dsZWRnZSB8fCBbXSxcbiAgICAgICAgICAgICAgZ2VuZXJhbDoge1xuICAgICAgICAgICAgICAgIG5hbWU6IGFnZW50Lm5hbWUsXG4gICAgICAgICAgICAgICAgaWQ6IGFnZW50LmlkLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGlzT3BlbjogdHJ1ZSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSlcbiAgICApXG4gIH1cblxuICBpZiAobGVnYWN5Q29udGV4dFNlc3Npb24pIHtcbiAgICByZXR1cm4gKFxuICAgICAgPFNDQ0FJTUZXcmFwcGVyPlxuICAgICAgICA8U0NDQUlNRldyYXBwZXJJbmZvRGVsZXRlZEFnZW50PlxuICAgICAgICAgIDxTQ0NBSU1GV3JhcHBlckluZm9JY29uPlxuICAgICAgICAgICAgPEluZm9ybWF0aW9uQ2lyY2xlIHdpZHRoPXsyMH0gaGVpZ2h0PXsyMH0gY29sb3I9e2luZm9JY29uQ29sb3J9IC8+XG4gICAgICAgICAgPC9TQ0NBSU1GV3JhcHBlckluZm9JY29uPlxuICAgICAgICAgIDxTQ0NBSU1GTWVzc2FnZVdpdGhBY3Rpb24+XG4gICAgICAgICAgICA8U0NDQUlNRldyYXBwZXJJbmZvRGVsZXRlZEFnZW50VGV4dD5cbiAgICAgICAgICAgICAge3QoJ2xlZ2VuZExlZ2FjeUNvbnRleHRTZXNzaW9uJywgeyBuYW1lOiBsZWdhY3lDb250ZXh0U2Vzc2lvbi5jb250ZXh0TmFtZSB9KX1cbiAgICAgICAgICAgIDwvU0NDQUlNRldyYXBwZXJJbmZvRGVsZXRlZEFnZW50VGV4dD5cbiAgICAgICAgICAgIDxTQ0NBSU1GQ2hhbmdlTW9kZWxCdXR0b24gdHlwZT1cImJ1dHRvblwiIG9uQ2xpY2s9e29uQ29udGludWVJbk5ld0NoYXR9PlxuICAgICAgICAgICAgICB7dCgnY29udGludWVJbk5ld0NoYXQnKX1cbiAgICAgICAgICAgIDwvU0NDQUlNRkNoYW5nZU1vZGVsQnV0dG9uPlxuICAgICAgICAgIDwvU0NDQUlNRk1lc3NhZ2VXaXRoQWN0aW9uPlxuICAgICAgICA8L1NDQ0FJTUZXcmFwcGVySW5mb0RlbGV0ZWRBZ2VudD5cbiAgICAgIDwvU0NDQUlNRldyYXBwZXI+XG4gICAgKVxuICB9XG5cbiAgaWYgKGFnZW50Py5pc19kZWxldGVkKSB7XG4gICAgcmV0dXJuIChcbiAgICAgIDxTQ0NBSU1GV3JhcHBlcj5cbiAgICAgICAgPFNDQ0FJTUZXcmFwcGVySW5mb0RlbGV0ZWRBZ2VudD5cbiAgICAgICAgICA8U0NDQUlNRldyYXBwZXJJbmZvSWNvbj5cbiAgICAgICAgICAgIDxJbmZvcm1hdGlvbkNpcmNsZSB3aWR0aD17MjB9IGhlaWdodD17MjB9IGNvbG9yPXtpbmZvSWNvbkNvbG9yfSAvPlxuICAgICAgICAgIDwvU0NDQUlNRldyYXBwZXJJbmZvSWNvbj5cbiAgICAgICAgICA8U0NDQUlNRldyYXBwZXJJbmZvRGVsZXRlZEFnZW50VGV4dD5cbiAgICAgICAgICAgIHt0KCdsZWdlbmREZWxldGVkQWdlbnQnKX0ge21vbWVudChhZ2VudD8uZGVsZXRlZF9hdCkuZm9ybWF0KCdERCBbZGVdIE1NTU0sIFlZWVknKX1cbiAgICAgICAgICA8L1NDQ0FJTUZXcmFwcGVySW5mb0RlbGV0ZWRBZ2VudFRleHQ+XG4gICAgICAgIDwvU0NDQUlNRldyYXBwZXJJbmZvRGVsZXRlZEFnZW50PlxuICAgICAgPC9TQ0NBSU1GV3JhcHBlcj5cbiAgICApXG4gIH1cblxuICBpZiAoYWdlbnQ/LnByb2plY3RfZGVsZXRlZCkge1xuICAgIHJldHVybiAoXG4gICAgICA8U0NDQUlNRldyYXBwZXI+XG4gICAgICAgIDxTQ0NBSU1GV3JhcHBlckluZm9EZWxldGVkQWdlbnQ+XG4gICAgICAgICAgPFNDQ0FJTUZXcmFwcGVySW5mb0ljb24+XG4gICAgICAgICAgICA8SW5mb3JtYXRpb25DaXJjbGUgd2lkdGg9ezIwfSBoZWlnaHQ9ezIwfSBjb2xvcj17aW5mb0ljb25Db2xvcn0gLz5cbiAgICAgICAgICA8L1NDQ0FJTUZXcmFwcGVySW5mb0ljb24+XG4gICAgICAgICAgPFNDQ0FJTUZXcmFwcGVySW5mb0RlbGV0ZWRBZ2VudFRleHQ+XG4gICAgICAgICAgICB7dCgnbGVnZW5kUHJvamVjdERlbGV0ZWQnLCB7IG5hbWU6IGFnZW50LnByb2plY3RfZGVsZXRlZC5uYW1lIH0pfVxuICAgICAgICAgIDwvU0NDQUlNRldyYXBwZXJJbmZvRGVsZXRlZEFnZW50VGV4dD5cbiAgICAgICAgPC9TQ0NBSU1GV3JhcHBlckluZm9EZWxldGVkQWdlbnQ+XG4gICAgICA8L1NDQ0FJTUZXcmFwcGVyPlxuICAgIClcbiAgfVxuXG4gIGlmIChhZ2VudD8uaGFzX25vdF9hY2Nlc3MpIHtcbiAgICByZXR1cm4gKFxuICAgICAgPFNDQ0FJTUZXcmFwcGVyPlxuICAgICAgICA8U0NDQUlNRldyYXBwZXJJbmZvRGVsZXRlZEFnZW50PlxuICAgICAgICAgIDxTQ0NBSU1GV3JhcHBlckluZm9JY29uPlxuICAgICAgICAgICAgPEluZm9ybWF0aW9uQ2lyY2xlIHdpZHRoPXsyMH0gaGVpZ2h0PXsyMH0gY29sb3I9e2luZm9JY29uQ29sb3J9IC8+XG4gICAgICAgICAgPC9TQ0NBSU1GV3JhcHBlckluZm9JY29uPlxuICAgICAgICAgIDxTQ0NBSU1GV3JhcHBlckluZm9EZWxldGVkQWdlbnRUZXh0PlxuICAgICAgICAgICAge3QoJ2xlZ2VuZE5vQWNjZXNzJywgeyBuYW1lOiBhZ2VudD8ubmFtZSB9KX1cbiAgICAgICAgICA8L1NDQ0FJTUZXcmFwcGVySW5mb0RlbGV0ZWRBZ2VudFRleHQ+XG4gICAgICAgIDwvU0NDQUlNRldyYXBwZXJJbmZvRGVsZXRlZEFnZW50PlxuICAgICAgPC9TQ0NBSU1GV3JhcHBlcj5cbiAgICApXG4gIH1cblxuICBpZiAoYWdlbnQ/Lmhhc19ub3RfcGVybWlzc2lvbnMgfHwgIWFnZW50KSB7XG4gICAgcmV0dXJuIChcbiAgICAgIDxTQ0NBSU1GV3JhcHBlcj5cbiAgICAgICAgPFNDQ0FJTUZXcmFwcGVySW5mb0RlbGV0ZWRBZ2VudD5cbiAgICAgICAgICA8U0NDQUlNRldyYXBwZXJJbmZvSWNvbj5cbiAgICAgICAgICAgIDxJbmZvcm1hdGlvbkNpcmNsZSB3aWR0aD17MjB9IGhlaWdodD17MjB9IGNvbG9yPXtpbmZvSWNvbkNvbG9yfSAvPlxuICAgICAgICAgIDwvU0NDQUlNRldyYXBwZXJJbmZvSWNvbj5cbiAgICAgICAgICA8U0NDQUlNRldyYXBwZXJJbmZvRGVsZXRlZEFnZW50VGV4dD5cbiAgICAgICAgICAgIHt0KCdsZWdlbmROb1Blcm1pc3Npb25zJywgeyBuYW1lOiBhZ2VudD8ubmFtZSB9KX1cbiAgICAgICAgICA8L1NDQ0FJTUZXcmFwcGVySW5mb0RlbGV0ZWRBZ2VudFRleHQ+XG4gICAgICAgIDwvU0NDQUlNRldyYXBwZXJJbmZvRGVsZXRlZEFnZW50PlxuICAgICAgPC9TQ0NBSU1GV3JhcHBlcj5cbiAgICApXG4gIH1cblxuICBsZXQgY3VzdG9tQWdlbnRXYXJuaW5nS2V5OiBzdHJpbmcgfCBudWxsID0gbnVsbFxuXG4gIGlmIChhZ2VudD8udHlwZSA9PT0gJ2N1c3RvbScgJiYgYWdlbnQ/Lm1vZGVsX2RlcHJlY2F0ZWQpIHtcbiAgICBjdXN0b21BZ2VudFdhcm5pbmdLZXkgPSAnbGVnZW5kTW9kZWxEZXByZWNhdGVkJ1xuICB9IGVsc2UgaWYgKFxuICAgIGFnZW50Py50eXBlID09PSAnY3VzdG9tJyAmJlxuICAgIChhZ2VudD8ucHJvdmlkZXJfc3RhdHVzID09PSAncGFydGlhbF9vdXRhZ2UnIHx8XG4gICAgICBhZ2VudD8ucHJvdmlkZXJfc3RhdHVzID09PSAnbWFqb3Jfb3V0YWdlJyB8fFxuICAgICAgYWdlbnQ/LnByb3ZpZGVyX3N0YXR1cyA9PT0gJ3VuZGVyX21haW50ZW5hbmNlJylcbiAgKSB7XG4gICAgY3VzdG9tQWdlbnRXYXJuaW5nS2V5ID0gJ2xlZ2VuZFByb3ZpZGVyU3RhdHVzJ1xuICB9XG5cbiAgaWYgKGN1c3RvbUFnZW50V2FybmluZ0tleSkge1xuICAgIHJldHVybiAoXG4gICAgICA8U0NDQUlNRldyYXBwZXI+XG4gICAgICAgIDxTQ0NBSU1GV3JhcHBlckluZm9EZWxldGVkQWdlbnQ+XG4gICAgICAgICAgPFNDQ0FJTUZXcmFwcGVySW5mb0ljb24+XG4gICAgICAgICAgICA8SW5mb3JtYXRpb25DaXJjbGUgd2lkdGg9ezIwfSBoZWlnaHQ9ezIwfSBjb2xvcj17aW5mb0ljb25Db2xvcn0gLz5cbiAgICAgICAgICA8L1NDQ0FJTUZXcmFwcGVySW5mb0ljb24+XG4gICAgICAgICAgPFNDQ0FJTUZNZXNzYWdlV2l0aEFjdGlvbj5cbiAgICAgICAgICAgIDxTQ0NBSU1GV3JhcHBlckluZm9EZWxldGVkQWdlbnRUZXh0Pnt0KGN1c3RvbUFnZW50V2FybmluZ0tleSl9PC9TQ0NBSU1GV3JhcHBlckluZm9EZWxldGVkQWdlbnRUZXh0PlxuICAgICAgICAgICAge2NhbkVkaXRDdXN0b21BZ2VudCAmJiAoXG4gICAgICAgICAgICAgIDxTQ0NBSU1GQ2hhbmdlTW9kZWxCdXR0b24gdHlwZT1cImJ1dHRvblwiIG9uQ2xpY2s9e2hhbmRsZU9wZW5DaGFuZ2VNb2RlbE1vZGFsfT5cbiAgICAgICAgICAgICAgICB7dCgnY2hhbmdlTW9kZWwnKX1cbiAgICAgICAgICAgICAgPC9TQ0NBSU1GQ2hhbmdlTW9kZWxCdXR0b24+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvU0NDQUlNRk1lc3NhZ2VXaXRoQWN0aW9uPlxuICAgICAgICA8L1NDQ0FJTUZXcmFwcGVySW5mb0RlbGV0ZWRBZ2VudD5cbiAgICAgIDwvU0NDQUlNRldyYXBwZXI+XG4gICAgKVxuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8U0NDQUlNRldyYXBwZXI+XG4gICAgICA8Q2hhdEZvb3RlclxuICAgICAgICBvblNlbmRNZXNzYWdlPXtoYW5kbGVTZW5kTWVzc2FnZX1cbiAgICAgICAgZGlzYWJsZWQ9e2ZhbHNlfVxuICAgICAgICBpc1N0cmVhbWluZz17aXNTdHJlYW1pbmd9XG4gICAgICAgIGlzV3JpdGluZz17aXNXcml0aW5nfVxuICAgICAgICBvblN0b3BHZW5lcmF0aW9uPXtoYW5kbGVTdG9wR2VuZXJhdGlvbn1cbiAgICAgICAgY2hhdElkPXtjaGF0SWR9XG4gICAgICAgIG5ld0NoYXRLZXk9e25ld0NoYXRLZXl9XG4gICAgICAgIHRvb2x0aXBaSW5kZXg9e3Rvb2x0aXBaSW5kZXh9XG4gICAgICAgIGxheW91dE1vZGU9e2xheW91dE1vZGV9XG4gICAgICAgIG9uSW5wdXRGb2N1cz17KCkgPT4gbWFya0NoYXRBc1JlYWQoY2hhdElkKX1cbiAgICAgIC8+XG4gICAgPC9TQ0NBSU1GV3JhcHBlcj5cbiAgKVxufVxuIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUFTQSxpQkFBaUIsUUFBUSxvREFBb0Q7QUFDdEYsT0FBT0MsTUFBTSxNQUFNLG1DQUFtQztBQUN0RCxPQUFPQyxNQUFNLE1BQU0sUUFBUTtBQUMzQixTQUFTQyxjQUFjLFFBQVEsZUFBZTtBQUM5QyxTQUFTQyxVQUFVLFFBQVEsZ0NBQWdDO0FBQzNELFNBQVNDLFFBQVEsUUFB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
@@ -1,2 +1,26 @@
1
- export { SCAgentInputBlockOuter as SCCAIMFWrapper, SCAgentInputBlockBanner as SCCAIMFWrapperInfoDeletedAgent, SCAgentInputBlockText as SCCAIMFWrapperInfoDeletedAgentText, SCAgentInputBlockIcon as SCCAIMFWrapperInfoIcon, SCAgentInputBlockMessageWithAction as SCCAIMFMessageWithAction, SCAgentInputBlockActionButton as SCCAIMFChangeModelButton } from '../../../AgentInputBlock/AgentInputBlockMessage.styles';
2
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJTQ0FnZW50SW5wdXRCbG9ja091dGVyIiwiU0NDQUlNRldyYXBwZXIiLCJTQ0FnZW50SW5wdXRCbG9ja0Jhbm5lciIsIlNDQ0FJTUZXcmFwcGVySW5mb0RlbGV0ZWRBZ2VudCIsIlNDQWdlbnRJbnB1dEJsb2NrVGV4dCIsIlNDQ0FJTUZXcmFwcGVySW5mb0RlbGV0ZWRBZ2VudFRleHQiLCJTQ0FnZW50SW5wdXRCbG9ja0ljb24iLCJTQ0NBSU1GV3JhcHBlckluZm9JY29uIiwiU0NBZ2VudElucHV0QmxvY2tNZXNzYWdlV2l0aEFjdGlvbiIsIlNDQ0FJTUZNZXNzYWdlV2l0aEFjdGlvbiIsIlNDQWdlbnRJbnB1dEJsb2NrQWN0aW9uQnV0dG9uIiwiU0NDQUlNRkNoYW5nZU1vZGVsQnV0dG9uIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbW9sZWN1bGVzL0NoYXRBSU1vZGFsL2NvbXBvbmVudHMvQ2hhdEFpTW9kYWxGb290ZXIvQ2hhdEFpTW9kYWxGb290ZXIuc3R5bGVzLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQge1xuICBTQ0FnZW50SW5wdXRCbG9ja091dGVyIGFzIFNDQ0FJTUZXcmFwcGVyLFxuICBTQ0FnZW50SW5wdXRCbG9ja0Jhbm5lciBhcyBTQ0NBSU1GV3JhcHBlckluZm9EZWxldGVkQWdlbnQsXG4gIFNDQWdlbnRJbnB1dEJsb2NrVGV4dCBhcyBTQ0NBSU1GV3JhcHBlckluZm9EZWxldGVkQWdlbnRUZXh0LFxuICBTQ0FnZW50SW5wdXRCbG9ja0ljb24gYXMgU0NDQUlNRldyYXBwZXJJbmZvSWNvbixcbiAgU0NBZ2VudElucHV0QmxvY2tNZXNzYWdlV2l0aEFjdGlvbiBhcyBTQ0NBSU1GTWVzc2FnZVdpdGhBY3Rpb24sXG4gIFNDQWdlbnRJbnB1dEJsb2NrQWN0aW9uQnV0dG9uIGFzIFNDQ0FJTUZDaGFuZ2VNb2RlbEJ1dHRvbixcbn0gZnJvbSAnLi4vLi4vLi4vQWdlbnRJbnB1dEJsb2NrL0FnZW50SW5wdXRCbG9ja01lc3NhZ2Uuc3R5bGVzJ1xuIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUNFQSxzQkFBc0IsSUFBSUMsY0FBYyxFQUN4Q0MsdUJBQXVCLElBQUlDLDhCQUE4QixFQUN6REMscUJBQXFCLElBQUlDLGtDQUFrQyxFQUMzREMscUJBQXFCLElBQUlDLHNCQUFzQixFQUMvQ0Msa0NBQWtDLElBQUlDLHdCQUF3QixFQUM5REMsNkJBQTZCLElBQUlDLHdCQUF3QixRQUNwRCx3REFBd0QiLCJpZ25vcmVMaXN0IjpbXX0=
1
+ import styled from 'styled-components';
2
+ export var SCCAIMFWrapper = styled.div.withConfig({
3
+ displayName: "ChatAiModalFooterstyles__SCCAIMFWrapper",
4
+ componentId: "sc-o2nrrw-0"
5
+ })(["padding:8px 16px;display:flex;justify-content:center;flex-shrink:0;align-self:flex-end;width:100%;"]);
6
+ export var SCCAIMFWrapperInfoDeletedAgent = styled.div.withConfig({
7
+ displayName: "ChatAiModalFooterstyles__SCCAIMFWrapperInfoDeletedAgent",
8
+ componentId: "sc-o2nrrw-1"
9
+ })(["width:100%;max-width:864px;padding:15px;display:flex;justify-content:center;align-items:center;border-radius:8px;gap:8px;background-color:rgba(242,242,242,1);"]);
10
+ export var SCCAIMFWrapperInfoDeletedAgentText = styled.span.withConfig({
11
+ displayName: "ChatAiModalFooterstyles__SCCAIMFWrapperInfoDeletedAgentText",
12
+ componentId: "sc-o2nrrw-2"
13
+ })(["font-size:14px;line-height:140%;color:rgba(102,102,102,1);"]);
14
+ export var SCCAIMFWrapperInfoIcon = styled.div.withConfig({
15
+ displayName: "ChatAiModalFooterstyles__SCCAIMFWrapperInfoIcon",
16
+ componentId: "sc-o2nrrw-3"
17
+ })(["flex-shrink:0;display:flex;align-items:center;justify-content:center;width:20px;height:20px;align-self:flex-start;"]);
18
+ export var SCCAIMFMessageWithAction = styled.div.withConfig({
19
+ displayName: "ChatAiModalFooterstyles__SCCAIMFMessageWithAction",
20
+ componentId: "sc-o2nrrw-4"
21
+ })(["display:flex;flex-direction:column;gap:8px;"]);
22
+ export var SCCAIMFChangeModelButton = styled.button.withConfig({
23
+ displayName: "ChatAiModalFooterstyles__SCCAIMFChangeModelButton",
24
+ componentId: "sc-o2nrrw-5"
25
+ })(["padding:0;border:none;background:none;cursor:pointer;width:fit-content;color:var(--Text-Secondary,#666);font-family:'Work Sans',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:14px;font-style:normal;font-weight:500;line-height:140%;letter-spacing:-0.21px;text-decoration-line:underline;text-decoration-style:solid;text-decoration-skip-ink:none;"]);
26
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJzdHlsZWQiLCJTQ0NBSU1GV3JhcHBlciIsImRpdiIsIndpdGhDb25maWciLCJkaXNwbGF5TmFtZSIsImNvbXBvbmVudElkIiwiU0NDQUlNRldyYXBwZXJJbmZvRGVsZXRlZEFnZW50IiwiU0NDQUlNRldyYXBwZXJJbmZvRGVsZXRlZEFnZW50VGV4dCIsInNwYW4iLCJTQ0NBSU1GV3JhcHBlckluZm9JY29uIiwiU0NDQUlNRk1lc3NhZ2VXaXRoQWN0aW9uIiwiU0NDQUlNRkNoYW5nZU1vZGVsQnV0dG9uIiwiYnV0dG9uIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbW9sZWN1bGVzL0NoYXRBSU1vZGFsL2NvbXBvbmVudHMvQ2hhdEFpTW9kYWxGb290ZXIvQ2hhdEFpTW9kYWxGb290ZXIuc3R5bGVzLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJ1xuXG5leHBvcnQgY29uc3QgU0NDQUlNRldyYXBwZXIgPSBzdHlsZWQuZGl2YFxuICBwYWRkaW5nOiA4cHggMTZweDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbiAgd2lkdGg6IDEwMCU7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ0NBSU1GV3JhcHBlckluZm9EZWxldGVkQWdlbnQgPSBzdHlsZWQuZGl2YFxuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiA4NjRweDtcbiAgcGFkZGluZzogMTVweDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgZ2FwOiA4cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjQyLCAyNDIsIDI0MiwgMSk7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ0NBSU1GV3JhcHBlckluZm9EZWxldGVkQWdlbnRUZXh0ID0gc3R5bGVkLnNwYW5gXG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDE0MCU7XG4gIGNvbG9yOiByZ2JhKDEwMiwgMTAyLCAxMDIsIDEpO1xuYFxuXG5leHBvcnQgY29uc3QgU0NDQUlNRldyYXBwZXJJbmZvSWNvbiA9IHN0eWxlZC5kaXZgXG4gIGZsZXgtc2hyaW5rOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbmBcblxuZXhwb3J0IGNvbnN0IFNDQ0FJTUZNZXNzYWdlV2l0aEFjdGlvbiA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogOHB4O1xuYFxuXG5leHBvcnQgY29uc3QgU0NDQUlNRkNoYW5nZU1vZGVsQnV0dG9uID0gc3R5bGVkLmJ1dHRvbmBcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHdpZHRoOiBmaXQtY29udGVudDtcbiAgY29sb3I6IHZhcigtLVRleHQtU2Vjb25kYXJ5LCAjNjY2KTtcbiAgZm9udC1mYW1pbHk6XG4gICAgJ1dvcmsgU2FucycsXG4gICAgc3lzdGVtLXVpLFxuICAgIC1hcHBsZS1zeXN0ZW0sXG4gICAgQmxpbmtNYWNTeXN0ZW1Gb250LFxuICAgICdTZWdvZSBVSScsXG4gICAgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxpbmUtaGVpZ2h0OiAxNDAlO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMjFweDtcbiAgdGV4dC1kZWNvcmF0aW9uLWxpbmU6IHVuZGVybGluZTtcbiAgdGV4dC1kZWNvcmF0aW9uLXN0eWxlOiBzb2xpZDtcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lO1xuYFxuIl0sIm1hcHBpbmdzIjoiQUFBQSxPQUFPQSxNQUFNLE1BQU0sbUJBQW1CO0FBRXRDLE9BQU8sSUFBTUMsY0FBYyxHQUFHRCxNQUFNLENBQUNFLEdBQUcsQ0FBQUMsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSwwR0FPdkM7QUFFRCxPQUFPLElBQU1DLDhCQUE4QixHQUFHTixNQUFNLENBQUNFLEdBQUcsQ0FBQUMsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSxzS0FVdkQ7QUFFRCxPQUFPLElBQU1FLGtDQUFrQyxHQUFHUCxNQUFNLENBQUNRLElBQUksQ0FBQUwsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSxrRUFJNUQ7QUFFRCxPQUFPLElBQU1JLHNCQUFzQixHQUFHVCxNQUFNLENBQUNFLEdBQUcsQ0FBQUMsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSwwSEFRL0M7QUFFRCxPQUFPLElBQU1LLHdCQUF3QixHQUFHVixNQUFNLENBQUNFLEdBQUcsQ0FBQUMsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSxtREFJakQ7QUFFRCxPQUFPLElBQU1NLHdCQUF3QixHQUFHWCxNQUFNLENBQUNZLE1BQU0sQ0FBQVQsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSwyWEFzQnBEIiwiaWdub3JlTGlzdCI6W119