@projectcor/maia-components 2.11.103-4 → 2.11.103-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 (72) hide show
  1. package/lib/App.js +44 -19
  2. package/lib/components/atoms/MAIAInput/MAIAInput.js +1 -6
  3. package/lib/components/atoms/icons/index.js +1 -2
  4. package/lib/components/index.js +2 -1
  5. package/lib/components/molecules/AbmSection/AbmAccessibilitySection/AbmAccessibilitySection.js +91 -4
  6. package/lib/components/molecules/ChatAIMessages/ChatAIMessages.js +7 -46
  7. package/lib/components/molecules/ChatAIModal/ChatAIModal.js +69 -308
  8. package/lib/components/molecules/ChatAIModal/ChatAIModal.styles.js +18 -28
  9. package/lib/components/molecules/ChatAIModal/components/ChatAiModalFooter/ChatAiModalFooter.js +2 -9
  10. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.js +61 -69
  11. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.styles.js +1 -5
  12. package/lib/components/molecules/ChatFooter/ChatFooter.js +2 -4
  13. package/lib/components/molecules/Sidebar/Sidebar.js +61 -104
  14. package/lib/components/molecules/Sidebar/Sidebar.layout.styles.js +1 -16
  15. package/lib/components/molecules/Sidebar/Sidebar.styles.js +29 -30
  16. package/lib/components/organisms/AbmAgentModal/AbmAgentModal.js +35 -6
  17. package/lib/components/organisms/ChatAI/ChatAI.js +40 -131
  18. package/lib/components/organisms/ChatAIPage/ChatAIPage.js +543 -0
  19. package/lib/components/organisms/ChatAIPage/ChatAIPage.styles.js +16 -0
  20. package/lib/components/organisms/ChatAIPage/index.js +3 -0
  21. package/lib/context/global-context.js +1 -3
  22. package/lib/dev/DevMaiaPage.js +30 -0
  23. package/lib/hooks/useAgentModel/useCreateAgent.js +61 -14
  24. package/lib/hooks/useAgentModel/useUpdateAgent.js +58 -11
  25. package/lib/hooks/useChatManager/useChatManager.js +438 -530
  26. package/lib/hooks/useChatMessages/useChatMessages.js +236 -427
  27. package/lib/hooks/useChats/useChats.js +4 -21
  28. package/lib/hooks/useEvent.js +2 -1
  29. package/lib/hooks/useOrchestratorStream/useOrchestratorStream.interface.js +1 -1
  30. package/lib/hooks/useOrchestratorStream/useOrchestratorStream.js +521 -139
  31. package/lib/hooks/useStreamingMessage/index.js +3 -2
  32. package/lib/hooks/useStreamingMessage/streamingStore.js +69 -0
  33. package/lib/hooks/useStreamingMessage/useStreamingMessage.js +17 -13
  34. package/lib/index.js +5 -2
  35. package/lib/lang/br/index.js +9 -11
  36. package/lib/lang/en/index.js +9 -11
  37. package/lib/lang/es/index.js +9 -11
  38. package/lib/lang/fr/index.js +10 -13
  39. package/lib/services/maia/Agents/connectors.js +250 -0
  40. package/lib/services/maia/Chats/getChatsByUserId.js +4 -6
  41. package/lib/services/maia/Chats/index.js +1 -3
  42. package/lib/store/chatsStore.types.js +1 -1
  43. package/lib/store/useChatsStore.js +12 -149
  44. package/lib/types/Chat.js +1 -1
  45. package/lib/types/agentModal.js +1 -1
  46. package/lib/utils/normalizeAgentConnectors.js +28 -3
  47. package/package.json +3 -3
  48. package/lib/components/atoms/SessionGeneratingDot/SessionGeneratingDot.js +0 -20
  49. package/lib/components/atoms/SessionGeneratingDot/SessionGeneratingDot.styles.js +0 -20
  50. package/lib/components/atoms/SessionGeneratingDot/index.js +0 -2
  51. package/lib/components/atoms/icons/MaiaSparkleIcon.js +0 -75
  52. package/lib/components/molecules/ChatAIModal/components/MaiaMinimizedPill/MaiaMinimizedPill.js +0 -66
  53. package/lib/components/molecules/ChatAIModal/components/MaiaMinimizedPill/MaiaMinimizedPill.styles.js +0 -55
  54. package/lib/components/molecules/ChatAIModal/components/MaiaMinimizedPill/index.js +0 -2
  55. package/lib/hooks/useMinimizedPillBottomOffset.js +0 -97
  56. package/lib/services/maia/Chats/markSessionAsRead.js +0 -32
  57. package/lib/store/chatsSidebarOptimistic.js +0 -92
  58. package/lib/store/maiaMinimizedPersistence.js +0 -49
  59. package/lib/store/sessions/activeView.js +0 -22
  60. package/lib/store/sessions/index.js +0 -9
  61. package/lib/store/sessions/sessionHitlContext.js +0 -15
  62. package/lib/store/sessions/sessionNotificationSound.js +0 -57
  63. package/lib/store/sessions/sessionNotifications.js +0 -110
  64. package/lib/store/sessions/sessionNotifications.types.js +0 -2
  65. package/lib/store/sessions/sessionStreamManager.js +0 -576
  66. package/lib/store/sessions/sessionStreamingText.js +0 -80
  67. package/lib/store/sessions/sessions.types.js +0 -35
  68. package/lib/store/sessions/useSessionMeta.js +0 -39
  69. package/lib/store/sessions/useSessionStreamingText.js +0 -18
  70. package/lib/store/sessions/useSessionsStore.js +0 -197
  71. package/lib/utils/formatUnreadCount.js +0 -6
  72. package/lib/utils/maiaHostOpen.js +0 -54
@@ -0,0 +1,16 @@
1
+ import styled from 'styled-components';
2
+
3
+ /** Contenedor del host (COR content-wrapper o dev full viewport). Debe tener altura explícita. */
4
+ export var SCPageHost = styled.div.withConfig({
5
+ displayName: "ChatAIPagestyles__SCPageHost",
6
+ componentId: "sc-1qi3lp8-0"
7
+ })(["width:100%;height:100%;min-height:0;overflow:hidden;"]);
8
+ export var SCPageWrapper = styled.div.withConfig({
9
+ displayName: "ChatAIPagestyles__SCPageWrapper",
10
+ componentId: "sc-1qi3lp8-1"
11
+ })(["width:100%;height:100%;min-height:0;display:flex;overflow:hidden;font-family:'Work Sans',sans-serif;"]);
12
+ export var SCPageMain = styled.div.withConfig({
13
+ displayName: "ChatAIPagestyles__SCPageMain",
14
+ componentId: "sc-1qi3lp8-2"
15
+ })(["flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden;background:white;"]);
16
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJzdHlsZWQiLCJTQ1BhZ2VIb3N0IiwiZGl2Iiwid2l0aENvbmZpZyIsImRpc3BsYXlOYW1lIiwiY29tcG9uZW50SWQiLCJTQ1BhZ2VXcmFwcGVyIiwiU0NQYWdlTWFpbiJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL29yZ2FuaXNtcy9DaGF0QUlQYWdlL0NoYXRBSVBhZ2Uuc3R5bGVzLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJ1xuXG4vKiogQ29udGVuZWRvciBkZWwgaG9zdCAoQ09SIGNvbnRlbnQtd3JhcHBlciBvIGRldiBmdWxsIHZpZXdwb3J0KS4gRGViZSB0ZW5lciBhbHR1cmEgZXhwbMOtY2l0YS4gKi9cbmV4cG9ydCBjb25zdCBTQ1BhZ2VIb3N0ID0gc3R5bGVkLmRpdmBcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbmBcblxuZXhwb3J0IGNvbnN0IFNDUGFnZVdyYXBwZXIgPSBzdHlsZWQuZGl2YFxuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBmb250LWZhbWlseTogJ1dvcmsgU2FucycsIHNhbnMtc2VyaWY7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ1BhZ2VNYWluID0gc3R5bGVkLmRpdmBcbiAgZmxleDogMTtcbiAgbWluLXdpZHRoOiAwO1xuICBtaW4taGVpZ2h0OiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbmBcbiJdLCJtYXBwaW5ncyI6IkFBQUEsT0FBT0EsTUFBTSxNQUFNLG1CQUFtQjs7QUFFdEM7QUFDQSxPQUFPLElBQU1DLFVBQVUsR0FBR0QsTUFBTSxDQUFDRSxHQUFHLENBQUFDLFVBQUE7RUFBQUMsV0FBQTtFQUFBQyxXQUFBO0FBQUEsNERBS25DO0FBRUQsT0FBTyxJQUFNQyxhQUFhLEdBQUdOLE1BQU0sQ0FBQ0UsR0FBRyxDQUFBQyxVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLDRHQU90QztBQUVELE9BQU8sSUFBTUUsVUFBVSxHQUFHUCxNQUFNLENBQUNFLEdBQUcsQ0FBQUMsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSw0R0FRbkMiLCJpZ25vcmVMaXN0IjpbXX0=
@@ -0,0 +1,3 @@
1
+ export { ChatAIPage } from './ChatAIPage';
2
+ export { SCPageHost } from './ChatAIPage.styles';
3
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJDaGF0QUlQYWdlIiwiU0NQYWdlSG9zdCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL29yZ2FuaXNtcy9DaGF0QUlQYWdlL2luZGV4LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IENoYXRBSVBhZ2UgfSBmcm9tICcuL0NoYXRBSVBhZ2UnXG5leHBvcnQgdHlwZSB7IENoYXRBSVBhZ2VQcm9wcyB9IGZyb20gJy4vQ2hhdEFJUGFnZSdcbmV4cG9ydCB7IFNDUGFnZUhvc3QgfSBmcm9tICcuL0NoYXRBSVBhZ2Uuc3R5bGVzJ1xuIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUFTQSxVQUFVLFFBQVEsY0FBYztBQUV6QyxTQUFTQyxVQUFVLFFBQVEscUJBQXFCIiwiaWdub3JlTGlzdCI6W119
@@ -22,8 +22,6 @@ export { DEFAULT_AGENT };
22
22
  * futuro a multi-contexto (`pins: PinnedContext[]`) sea aditivo.
23
23
  */
24
24
 
25
- /** Elemento del host (COR web) que el pill minimizado debe esquivar. */
26
-
27
25
  /** FAQ inyectada por el host (ej. banner de proyecto en COR) para abrir el chat con el mismo criterio que un clic en FAQ en home.
28
26
  * `faqId` es opcional: cuando no existe (ej. mensaje de desvíos del banner), el chat envía solo el texto sin header X-Faq-Id.
29
27
  * `contextData` es opcional: payload del banner (desvío/métricas) que viaja en el header `X-Context-Data` del orchestrator (JSON en base64). */
@@ -36,4 +34,4 @@ export var useGlobalContext = function useGlobalContext() {
36
34
  }
37
35
  return context;
38
36
  };
39
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjcmVhdGVDb250ZXh0IiwidXNlQ29udGV4dCIsIkRFRkFVTFRfQUdFTlQiLCJpZCIsIm5hbWUiLCJjcmVhdGVkX2J5IiwiaXNfZGVsZXRlZCIsImNvbXBhbnlfaWQiLCJlbW9qaSIsImludHJvZHVjdGlvbiIsInR5cGUiLCJrbm93bGVkZ2UiLCJpc19pbnRlcm5hbCIsIkdsb2JhbENvbnRleHQiLCJ1c2VHbG9iYWxDb250ZXh0IiwiY29udGV4dCIsIkVycm9yIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbnRleHQvZ2xvYmFsLWNvbnRleHQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlQ29udGV4dCwgTXV0YWJsZVJlZk9iamVjdCwgdXNlQ29udGV4dCB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgUHJvamVjdCB9IGZyb20gJy4uL3R5cGVzL1Byb2plY3QnXG5pbXBvcnQgeyBDbGllbnQgfSBmcm9tICcuLi90eXBlcy9DbGllbnQnXG5pbXBvcnQgeyBUYXNrIH0gZnJvbSAnLi4vdHlwZXMvVGFzaydcbmltcG9ydCB7IENvbmZpZ1NldHRpbmdJdGVtIH0gZnJvbSAnLi4vY29uc3RhbnRzL3Blcm1pc3Npb25zL3R5cGVzJ1xuaW1wb3J0IHsgQWdlbnQgfSBmcm9tICcuLi90eXBlcy9hZ2VudCdcblxuY29uc3QgREVGQVVMVF9BR0VOVDogQWdlbnQgPSB7XG4gIGlkOiAnMScsXG4gIG5hbWU6ICdBZ2VudGUgUE0nLFxuICBjcmVhdGVkX2J5OiB7IG5hbWU6ICcxNzQ1NCcsIGlzX2RlbGV0ZWQ6IGZhbHNlIH0sXG4gIGNvbXBhbnlfaWQ6ICcyMzM2JyxcbiAgZW1vamk6ICfwn5OKJyxcbiAgaW50cm9kdWN0aW9uOiBudWxsLFxuICB0eXBlOiAncG0nLFxuICBrbm93bGVkZ2U6IFtdLFxuICBpc19pbnRlcm5hbDogZmFsc2UsXG59XG5cbmV4cG9ydCB7IERFRkFVTFRfQUdFTlQgfVxuXG5leHBvcnQgdHlwZSBDaGlwc1Byb2plY3QgPSB7XG4gIHByb2plY3ROYW1lOiBzdHJpbmdcbiAgY2xpZW50TmFtZTogc3RyaW5nXG4gIHByb2plY3RJZDogc3RyaW5nXG59XG5cbi8qKlxuICogUGluIGRlIGNvbnRleHRvIHBlcnNpc3RlbnRlLCBkZXJpdmFkbyBkZSBgcHJvamVjdGAvYGNsaWVudGAvYHRhc2tgL2BjaGlwc1Byb2plY3RgIChSRkMgwqcxMi4yKS5cbiAqIE1vbm8tY29udGV4dG8gaG95IChsYSBlbnRpZGFkIG3DoXMgZXNwZWPDrWZpY2EgYWN0aXZhKTsgZWwgc2NvcGUgaGFjaWEgYXJyaWJhIHZpYWphIGVuIGBwYXJlbnRzYC5cbiAqIExvcyBjb25zdW1pZG9yZXMgZGViZXLDrWFuIGxlZXIgYHBpbm5lZENvbnRleHRgIGVuIHZleiBkZSBsb3MgY2FtcG9zIHN1ZWx0b3MsIHBhcmEgcXVlIGVsIHNhbHRvXG4gKiBmdXR1cm8gYSBtdWx0aS1jb250ZXh0byAoYHBpbnM6IFBpbm5lZENvbnRleHRbXWApIHNlYSBhZGl0aXZvLlxuICovXG5leHBvcnQgdHlwZSBQaW5uZWRDb250ZXh0ID0ge1xuICB0eXBlOiAnY2xpZW50JyB8ICdwcm9qZWN0JyB8ICd0YXNrJ1xuICBpZDogc3RyaW5nIHwgbnVtYmVyXG4gIG5hbWU6IHN0cmluZ1xuICBwYXJlbnRzPzogeyBjbGllbnRJZD86IHN0cmluZyB8IG51bWJlcjsgcHJvamVjdElkPzogc3RyaW5nIHwgbnVtYmVyIH1cbn1cblxuZXhwb3J0IHR5cGUgU2VjdGlvbiA9ICdwcm9qZWN0JyB8ICdoZWFkZXInIHwgJ2NsaWVudCcgfCAndGFzaycgfCAncGxhbm5lcidcblxuLyoqIEVsZW1lbnRvIGRlbCBob3N0IChDT1Igd2ViKSBxdWUgZWwgcGlsbCBtaW5pbWl6YWRvIGRlYmUgZXNxdWl2YXIuICovXG5leHBvcnQgdHlwZSBNaW5pbWl6ZWRQaWxsQXZvaWRBbmNob3IgPSB7XG4gIHNlbGVjdG9yOiBzdHJpbmdcbiAgZ2FwUHg/OiBudW1iZXJcbn1cblxudHlwZSBCYXNlR2xvYmFsQ29udGV4dFR5cGUgPSB7XG4gIHNlY3Rpb246IFNlY3Rpb25cbiAgYWdlbnQ6IEFnZW50IHwgbnVsbFxuICBzZWxlY3RBZ2VudDogKGFnZW50OiBBZ2VudCkgPT4gdm9pZFxuICBjbGVhckFnZW50OiAoKSA9PiB2b2lkXG4gIHByb2plY3Q6IFByb2plY3QgfCBudWxsXG4gIHNldFByb2plY3Q6IChwcm9qZWN0OiBQcm9qZWN0IHwgbnVsbCkgPT4gdm9pZFxuICBjbGllbnQ6IENsaWVudCB8IG51bGxcbiAgc2V0Q2xpZW50OiAoY2xpZW50OiBDbGllbnQgfCBudWxsKSA9PiB2b2lkXG4gIHRhc2s6IFRhc2sgfCBudWxsXG4gIHNldFRhc2s6ICh0YXNrOiBUYXNrIHwgbnVsbCkgPT4gdm9pZFxuICBpc1dlYlNlYXJjaEFjdGl2ZTogYm9vbGVhblxuICB0b2dnbGVXZWJTZWFyY2g6ICgpID0+IHZvaWRcbiAgaXNEZWVwU2VhcmNoQWN0aXZlOiBib29sZWFuXG4gIHRvZ2dsZURlZXBTZWFyY2g6ICgpID0+IHZvaWRcbiAgaGFzTXVsdGlBZ2VudHM/OiBib29sZWFuXG4gIGNoaXBzUHJvamVjdD86IENoaXBzUHJvamVjdCB8IG51bGxcbiAgc2V0Q2hpcHNQcm9qZWN0OiAoY2hpcHNQcm9qZWN0OiBDaGlwc1Byb2plY3QgfCBudWxsKSA9PiB2b2lkXG4gIC8qKiBQaW4gZGUgY29udGV4dG8gZGVyaXZhZG8gKGFycmF5LXJlYWR5LCBSRkMgwqcxMi4xKS4gTW9ubyBob3k7IG51bGwgZW4gbW9kbyBnbG9iYWwuICovXG4gIHBpbm5lZENvbnRleHQ/OiBQaW5uZWRDb250ZXh0IHwgbnVsbFxuICAvKiogQW5jaG9ycyBkZWwgaG9zdCBwYXJhIHBvc2ljaW9uYXIgZWwgcGlsbCBtaW5pbWl6YWRvIHNpbiBzb2xhcGFyc2UgKGVqLiBcIisgQWdyZWdhciB0YXJlYVwiKS4gKi9cbiAgbWluaW1pemVkUGlsbEF2b2lkQW5jaG9ycz86IE1pbmltaXplZFBpbGxBdm9pZEFuY2hvcltdXG59XG5cbi8qKiBGQVEgaW55ZWN0YWRhIHBvciBlbCBob3N0IChlai4gYmFubmVyIGRlIHByb3llY3RvIGVuIENPUikgcGFyYSBhYnJpciBlbCBjaGF0IGNvbiBlbCBtaXNtbyBjcml0ZXJpbyBxdWUgdW4gY2xpYyBlbiBGQVEgZW4gaG9tZS5cbiAqIGBmYXFJZGAgZXMgb3BjaW9uYWw6IGN1YW5kbyBubyBleGlzdGUgKGVqLiBtZW5zYWplIGRlIGRlc3bDrW9zIGRlbCBiYW5uZXIpLCBlbCBjaGF0IGVudsOtYSBzb2xvIGVsIHRleHRvIHNpbiBoZWFkZXIgWC1GYXEtSWQuXG4gKiBgY29udGV4dERhdGFgIGVzIG9wY2lvbmFsOiBwYXlsb2FkIGRlbCBiYW5uZXIgKGRlc3bDrW8vbcOpdHJpY2FzKSBxdWUgdmlhamEgZW4gZWwgaGVhZGVyIGBYLUNvbnRleHQtRGF0YWAgZGVsIG9yY2hlc3RyYXRvciAoSlNPTiBlbiBiYXNlNjQpLiAqL1xuZXhwb3J0IHR5cGUgQmFubmVyRW50cnlGYXEgPSB7XG4gIGZhcUlkPzogc3RyaW5nXG4gIGZhcVRpdGxlOiBzdHJpbmdcbiAgY29udGV4dERhdGE/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxufVxuXG5leHBvcnQgdHlwZSBQcm9qZWN0U3VtbWFyeUNvbnRleHRUeXBlID0gQmFzZUdsb2JhbENvbnRleHRUeXBlICYge1xuICBjb25maWd1cmVTZXR0aW5nc0l0ZW1zOiBNdXRhYmxlUmVmT2JqZWN0PENvbmZpZ1NldHRpbmdJdGVtW10+XG4gIHJlc3RvcmVDb25maWd1cmVTZXR0aW5nczogKCkgPT4gdm9pZFxuICBlbnRpdHlWYWx1ZXM6IHtcbiAgICBwcm9qZWN0SWQ6IHN0cmluZyB8IG51bGxcbiAgICBjbGllbnRJZDogc3RyaW5nIHwgbnVsbFxuICB9XG4gIHNldEVudGl0eVZhbHVlczogKGVudGl0eTogeyBwcm9qZWN0SWQ6IHN0cmluZyB8IG51bGw7IGNsaWVudElkOiBzdHJpbmcgfCBudWxsIH0pID0+IHZvaWRcbiAgLyoqIFNpIHZpZW5lIGRlZmluaWRhLCBlbCBtb2RhbCBkaXNwYXJhIHVuYSB2ZXogYHN0YXJ0Q2hhdChmYXFUaXRsZSwgW10sIGZhcUlkKWAgYWwgZXN0YXIgbGlzdG9zIGFnZW50ZSArIGVudGlkYWQgKi9cbiAgYmFubmVyRW50cnlGYXE/OiBCYW5uZXJFbnRyeUZhcSB8IG51bGxcbiAgaW5pdGlhbERyYWZ0Pzogc3RyaW5nIHwgbnVsbFxuICAvKipcbiAgICogT25lLXNob3Q6IHRydWUgYWZ0ZXIgZW1haWwgZGVlcC1saW5rIGRyYWZ0IGlzIGFwcGxpZWQgdG8gdGhlIGNvbXBvc2VyLlxuICAgKiBDb25zdW1lZCBvbiBmaXJzdCBBSV9DSEFUX1NFTkQgKGBzb3VyY2U6ICdkZWVwX2xpbmsnYCk7IGNsZWFyZWQgb24gY2hhdCBzZXNzaW9uIGNoYW5nZSAvIGNsb3NlLlxuICAgKi9cbiAgZGVlcExpbmtTZW5kUGVuZGluZ1JlZj86IE11dGFibGVSZWZPYmplY3Q8Ym9vbGVhbj5cbn1cblxudHlwZSBBbGxvd2VkR2xvYmFsQ29udGV4dFR5cGUgPSBQcm9qZWN0U3VtbWFyeUNvbnRleHRUeXBlXG5cbmV4cG9ydCB0eXBlIEdsb2JhbENvbnRleHRUeXBlPFQgZXh0ZW5kcyBBbGxvd2VkR2xvYmFsQ29udGV4dFR5cGUgPSBBbGxvd2VkR2xvYmFsQ29udGV4dFR5cGU+ID0gVCB8IG51bGxcblxuZXhwb3J0IGNvbnN0IEdsb2JhbENvbnRleHQgPSBjcmVhdGVDb250ZXh0PEdsb2JhbENvbnRleHRUeXBlPihudWxsKVxuXG5leHBvcnQgY29uc3QgdXNlR2xvYmFsQ29udGV4dCA9IDxUIGV4dGVuZHMgQmFzZUdsb2JhbENvbnRleHRUeXBlID0gQWxsb3dlZEdsb2JhbENvbnRleHRUeXBlPigpID0+IHtcbiAgY29uc3QgY29udGV4dCA9IHVzZUNvbnRleHQoR2xvYmFsQ29udGV4dClcblxuICBpZiAoIWNvbnRleHQpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ3VzZUdsb2JhbENvbnRleHQgbXVzdCBiZSB1c2VkIHdpdGhpbiBhIEdsb2JhbENvbnRleHRQcm92aWRlcicpXG4gIH1cblxuICByZXR1cm4gY29udGV4dCBhcyB1bmtub3duIGFzIFRcbn1cbiJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsYUFBYSxFQUFvQkMsVUFBVSxRQUFRLE9BQU87QUFPbkUsSUFBTUMsYUFBb0IsR0FBRztFQUMzQkMsRUFBRSxFQUFFLEdBQUc7RUFDUEMsSUFBSSxFQUFFLFdBQVc7RUFDakJDLFVBQVUsRUFBRTtJQUFFRCxJQUFJLEVBQUUsT0FBTztJQUFFRSxVQUFVLEVBQUU7RUFBTSxDQUFDO0VBQ2hEQyxVQUFVLEVBQUUsTUFBTTtFQUNsQkMsS0FBSyxFQUFFLElBQUk7RUFDWEMsWUFBWSxFQUFFLElBQUk7RUFDbEJDLElBQUksRUFBRSxJQUFJO0VBQ1ZDLFNBQVMsRUFBRSxFQUFFO0VBQ2JDLFdBQVcsRUFBRTtBQUNmLENBQUM7QUFFRCxTQUFTVixhQUFhOztBQVF0QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBVUE7O0FBOEJBO0FBQ0E7QUFDQTs7QUE2QkEsT0FBTyxJQUFNVyxhQUFhLGdCQUFHYixhQUFhLENBQW9CLElBQUksQ0FBQztBQUVuRSxPQUFPLElBQU1jLGdCQUFnQixHQUFHLFNBQW5CQSxnQkFBZ0JBLENBQUEsRUFBcUU7RUFDaEcsSUFBTUMsT0FBTyxHQUFHZCxVQUFVLENBQUNZLGFBQWEsQ0FBQztFQUV6QyxJQUFJLENBQUNFLE9BQU8sRUFBRTtJQUNaLE1BQU0sSUFBSUMsS0FBSyxDQUFDLDhEQUE4RCxDQUFDO0VBQ2pGO0VBRUEsT0FBT0QsT0FBTztBQUNoQixDQUFDIiwiaWdub3JlTGlzdCI6W119
37
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjcmVhdGVDb250ZXh0IiwidXNlQ29udGV4dCIsIkRFRkFVTFRfQUdFTlQiLCJpZCIsIm5hbWUiLCJjcmVhdGVkX2J5IiwiaXNfZGVsZXRlZCIsImNvbXBhbnlfaWQiLCJlbW9qaSIsImludHJvZHVjdGlvbiIsInR5cGUiLCJrbm93bGVkZ2UiLCJpc19pbnRlcm5hbCIsIkdsb2JhbENvbnRleHQiLCJ1c2VHbG9iYWxDb250ZXh0IiwiY29udGV4dCIsIkVycm9yIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbnRleHQvZ2xvYmFsLWNvbnRleHQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlQ29udGV4dCwgTXV0YWJsZVJlZk9iamVjdCwgdXNlQ29udGV4dCB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgUHJvamVjdCB9IGZyb20gJy4uL3R5cGVzL1Byb2plY3QnXG5pbXBvcnQgeyBDbGllbnQgfSBmcm9tICcuLi90eXBlcy9DbGllbnQnXG5pbXBvcnQgeyBUYXNrIH0gZnJvbSAnLi4vdHlwZXMvVGFzaydcbmltcG9ydCB7IENvbmZpZ1NldHRpbmdJdGVtIH0gZnJvbSAnLi4vY29uc3RhbnRzL3Blcm1pc3Npb25zL3R5cGVzJ1xuaW1wb3J0IHsgQWdlbnQgfSBmcm9tICcuLi90eXBlcy9hZ2VudCdcblxuY29uc3QgREVGQVVMVF9BR0VOVDogQWdlbnQgPSB7XG4gIGlkOiAnMScsXG4gIG5hbWU6ICdBZ2VudGUgUE0nLFxuICBjcmVhdGVkX2J5OiB7IG5hbWU6ICcxNzQ1NCcsIGlzX2RlbGV0ZWQ6IGZhbHNlIH0sXG4gIGNvbXBhbnlfaWQ6ICcyMzM2JyxcbiAgZW1vamk6ICfwn5OKJyxcbiAgaW50cm9kdWN0aW9uOiBudWxsLFxuICB0eXBlOiAncG0nLFxuICBrbm93bGVkZ2U6IFtdLFxuICBpc19pbnRlcm5hbDogZmFsc2UsXG59XG5cbmV4cG9ydCB7IERFRkFVTFRfQUdFTlQgfVxuXG5leHBvcnQgdHlwZSBDaGlwc1Byb2plY3QgPSB7XG4gIHByb2plY3ROYW1lOiBzdHJpbmdcbiAgY2xpZW50TmFtZTogc3RyaW5nXG4gIHByb2plY3RJZDogc3RyaW5nXG59XG5cbi8qKlxuICogUGluIGRlIGNvbnRleHRvIHBlcnNpc3RlbnRlLCBkZXJpdmFkbyBkZSBgcHJvamVjdGAvYGNsaWVudGAvYHRhc2tgL2BjaGlwc1Byb2plY3RgIChSRkMgwqcxMi4yKS5cbiAqIE1vbm8tY29udGV4dG8gaG95IChsYSBlbnRpZGFkIG3DoXMgZXNwZWPDrWZpY2EgYWN0aXZhKTsgZWwgc2NvcGUgaGFjaWEgYXJyaWJhIHZpYWphIGVuIGBwYXJlbnRzYC5cbiAqIExvcyBjb25zdW1pZG9yZXMgZGViZXLDrWFuIGxlZXIgYHBpbm5lZENvbnRleHRgIGVuIHZleiBkZSBsb3MgY2FtcG9zIHN1ZWx0b3MsIHBhcmEgcXVlIGVsIHNhbHRvXG4gKiBmdXR1cm8gYSBtdWx0aS1jb250ZXh0byAoYHBpbnM6IFBpbm5lZENvbnRleHRbXWApIHNlYSBhZGl0aXZvLlxuICovXG5leHBvcnQgdHlwZSBQaW5uZWRDb250ZXh0ID0ge1xuICB0eXBlOiAnY2xpZW50JyB8ICdwcm9qZWN0JyB8ICd0YXNrJ1xuICBpZDogc3RyaW5nIHwgbnVtYmVyXG4gIG5hbWU6IHN0cmluZ1xuICBwYXJlbnRzPzogeyBjbGllbnRJZD86IHN0cmluZyB8IG51bWJlcjsgcHJvamVjdElkPzogc3RyaW5nIHwgbnVtYmVyIH1cbn1cblxuZXhwb3J0IHR5cGUgU2VjdGlvbiA9ICdwcm9qZWN0JyB8ICdoZWFkZXInIHwgJ2NsaWVudCcgfCAndGFzaycgfCAncGxhbm5lcidcblxudHlwZSBCYXNlR2xvYmFsQ29udGV4dFR5cGUgPSB7XG4gIHNlY3Rpb246IFNlY3Rpb25cbiAgYWdlbnQ6IEFnZW50IHwgbnVsbFxuICBzZWxlY3RBZ2VudDogKGFnZW50OiBBZ2VudCkgPT4gdm9pZFxuICBjbGVhckFnZW50OiAoKSA9PiB2b2lkXG4gIHByb2plY3Q6IFByb2plY3QgfCBudWxsXG4gIHNldFByb2plY3Q6IChwcm9qZWN0OiBQcm9qZWN0IHwgbnVsbCkgPT4gdm9pZFxuICBjbGllbnQ6IENsaWVudCB8IG51bGxcbiAgc2V0Q2xpZW50OiAoY2xpZW50OiBDbGllbnQgfCBudWxsKSA9PiB2b2lkXG4gIHRhc2s6IFRhc2sgfCBudWxsXG4gIHNldFRhc2s6ICh0YXNrOiBUYXNrIHwgbnVsbCkgPT4gdm9pZFxuICBpc1dlYlNlYXJjaEFjdGl2ZTogYm9vbGVhblxuICB0b2dnbGVXZWJTZWFyY2g6ICgpID0+IHZvaWRcbiAgaXNEZWVwU2VhcmNoQWN0aXZlOiBib29sZWFuXG4gIHRvZ2dsZURlZXBTZWFyY2g6ICgpID0+IHZvaWRcbiAgaGFzTXVsdGlBZ2VudHM/OiBib29sZWFuXG4gIGNoaXBzUHJvamVjdD86IENoaXBzUHJvamVjdCB8IG51bGxcbiAgc2V0Q2hpcHNQcm9qZWN0OiAoY2hpcHNQcm9qZWN0OiBDaGlwc1Byb2plY3QgfCBudWxsKSA9PiB2b2lkXG4gIC8qKiBQaW4gZGUgY29udGV4dG8gZGVyaXZhZG8gKGFycmF5LXJlYWR5LCBSRkMgwqcxMi4xKS4gTW9ubyBob3k7IG51bGwgZW4gbW9kbyBnbG9iYWwuICovXG4gIHBpbm5lZENvbnRleHQ/OiBQaW5uZWRDb250ZXh0IHwgbnVsbFxufVxuXG4vKiogRkFRIGlueWVjdGFkYSBwb3IgZWwgaG9zdCAoZWouIGJhbm5lciBkZSBwcm95ZWN0byBlbiBDT1IpIHBhcmEgYWJyaXIgZWwgY2hhdCBjb24gZWwgbWlzbW8gY3JpdGVyaW8gcXVlIHVuIGNsaWMgZW4gRkFRIGVuIGhvbWUuXG4gKiBgZmFxSWRgIGVzIG9wY2lvbmFsOiBjdWFuZG8gbm8gZXhpc3RlIChlai4gbWVuc2FqZSBkZSBkZXN2w61vcyBkZWwgYmFubmVyKSwgZWwgY2hhdCBlbnbDrWEgc29sbyBlbCB0ZXh0byBzaW4gaGVhZGVyIFgtRmFxLUlkLlxuICogYGNvbnRleHREYXRhYCBlcyBvcGNpb25hbDogcGF5bG9hZCBkZWwgYmFubmVyIChkZXN2w61vL23DqXRyaWNhcykgcXVlIHZpYWphIGVuIGVsIGhlYWRlciBgWC1Db250ZXh0LURhdGFgIGRlbCBvcmNoZXN0cmF0b3IgKEpTT04gZW4gYmFzZTY0KS4gKi9cbmV4cG9ydCB0eXBlIEJhbm5lckVudHJ5RmFxID0ge1xuICBmYXFJZD86IHN0cmluZ1xuICBmYXFUaXRsZTogc3RyaW5nXG4gIGNvbnRleHREYXRhPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbn1cblxuZXhwb3J0IHR5cGUgUHJvamVjdFN1bW1hcnlDb250ZXh0VHlwZSA9IEJhc2VHbG9iYWxDb250ZXh0VHlwZSAmIHtcbiAgY29uZmlndXJlU2V0dGluZ3NJdGVtczogTXV0YWJsZVJlZk9iamVjdDxDb25maWdTZXR0aW5nSXRlbVtdPlxuICByZXN0b3JlQ29uZmlndXJlU2V0dGluZ3M6ICgpID0+IHZvaWRcbiAgZW50aXR5VmFsdWVzOiB7XG4gICAgcHJvamVjdElkOiBzdHJpbmcgfCBudWxsXG4gICAgY2xpZW50SWQ6IHN0cmluZyB8IG51bGxcbiAgfVxuICBzZXRFbnRpdHlWYWx1ZXM6IChlbnRpdHk6IHsgcHJvamVjdElkOiBzdHJpbmcgfCBudWxsOyBjbGllbnRJZDogc3RyaW5nIHwgbnVsbCB9KSA9PiB2b2lkXG4gIC8qKiBTaSB2aWVuZSBkZWZpbmlkYSwgZWwgbW9kYWwgZGlzcGFyYSB1bmEgdmV6IGBzdGFydENoYXQoZmFxVGl0bGUsIFtdLCBmYXFJZClgIGFsIGVzdGFyIGxpc3RvcyBhZ2VudGUgKyBlbnRpZGFkICovXG4gIGJhbm5lckVudHJ5RmFxPzogQmFubmVyRW50cnlGYXEgfCBudWxsXG4gIGluaXRpYWxEcmFmdD86IHN0cmluZyB8IG51bGxcbiAgLyoqXG4gICAqIE9uZS1zaG90OiB0cnVlIGFmdGVyIGVtYWlsIGRlZXAtbGluayBkcmFmdCBpcyBhcHBsaWVkIHRvIHRoZSBjb21wb3Nlci5cbiAgICogQ29uc3VtZWQgb24gZmlyc3QgQUlfQ0hBVF9TRU5EIChgc291cmNlOiAnZGVlcF9saW5rJ2ApOyBjbGVhcmVkIG9uIGNoYXQgc2Vzc2lvbiBjaGFuZ2UgLyBjbG9zZS5cbiAgICovXG4gIGRlZXBMaW5rU2VuZFBlbmRpbmdSZWY/OiBNdXRhYmxlUmVmT2JqZWN0PGJvb2xlYW4+XG59XG5cbnR5cGUgQWxsb3dlZEdsb2JhbENvbnRleHRUeXBlID0gUHJvamVjdFN1bW1hcnlDb250ZXh0VHlwZVxuXG5leHBvcnQgdHlwZSBHbG9iYWxDb250ZXh0VHlwZTxUIGV4dGVuZHMgQWxsb3dlZEdsb2JhbENvbnRleHRUeXBlID0gQWxsb3dlZEdsb2JhbENvbnRleHRUeXBlPiA9IFQgfCBudWxsXG5cbmV4cG9ydCBjb25zdCBHbG9iYWxDb250ZXh0ID0gY3JlYXRlQ29udGV4dDxHbG9iYWxDb250ZXh0VHlwZT4obnVsbClcblxuZXhwb3J0IGNvbnN0IHVzZUdsb2JhbENvbnRleHQgPSA8VCBleHRlbmRzIEJhc2VHbG9iYWxDb250ZXh0VHlwZSA9IEFsbG93ZWRHbG9iYWxDb250ZXh0VHlwZT4oKSA9PiB7XG4gIGNvbnN0IGNvbnRleHQgPSB1c2VDb250ZXh0KEdsb2JhbENvbnRleHQpXG5cbiAgaWYgKCFjb250ZXh0KSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCd1c2VHbG9iYWxDb250ZXh0IG11c3QgYmUgdXNlZCB3aXRoaW4gYSBHbG9iYWxDb250ZXh0UHJvdmlkZXInKVxuICB9XG5cbiAgcmV0dXJuIGNvbnRleHQgYXMgdW5rbm93biBhcyBUXG59XG4iXSwibWFwcGluZ3MiOiJBQUFBLFNBQVNBLGFBQWEsRUFBb0JDLFVBQVUsUUFBUSxPQUFPO0FBT25FLElBQU1DLGFBQW9CLEdBQUc7RUFDM0JDLEVBQUUsRUFBRSxHQUFHO0VBQ1BDLElBQUksRUFBRSxXQUFXO0VBQ2pCQyxVQUFVLEVBQUU7SUFBRUQsSUFBSSxFQUFFLE9BQU87SUFBRUUsVUFBVSxFQUFFO0VBQU0sQ0FBQztFQUNoREMsVUFBVSxFQUFFLE1BQU07RUFDbEJDLEtBQUssRUFBRSxJQUFJO0VBQ1hDLFlBQVksRUFBRSxJQUFJO0VBQ2xCQyxJQUFJLEVBQUUsSUFBSTtFQUNWQyxTQUFTLEVBQUUsRUFBRTtFQUNiQyxXQUFXLEVBQUU7QUFDZixDQUFDO0FBRUQsU0FBU1YsYUFBYTs7QUFRdEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQWdDQTtBQUNBO0FBQ0E7O0FBNkJBLE9BQU8sSUFBTVcsYUFBYSxnQkFBR2IsYUFBYSxDQUFvQixJQUFJLENBQUM7QUFFbkUsT0FBTyxJQUFNYyxnQkFBZ0IsR0FBRyxTQUFuQkEsZ0JBQWdCQSxDQUFBLEVBQXFFO0VBQ2hHLElBQU1DLE9BQU8sR0FBR2QsVUFBVSxDQUFDWSxhQUFhLENBQUM7RUFFekMsSUFBSSxDQUFDRSxPQUFPLEVBQUU7SUFDWixNQUFNLElBQUlDLEtBQUssQ0FBQyw4REFBOEQsQ0FBQztFQUNqRjtFQUVBLE9BQU9ELE9BQU87QUFDaEIsQ0FBQyIsImlnbm9yZUxpc3QiOltdfQ==
@@ -0,0 +1,30 @@
1
+ import { ChatAIPage } from '../components/organisms/ChatAIPage';
2
+ import { SCPageHost } from '../components/organisms/ChatAIPage/ChatAIPage.styles';
3
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
4
+ export var DevMaiaPage = function DevMaiaPage() {
5
+ return /*#__PURE__*/_jsxs(_Fragment, {
6
+ children: [/*#__PURE__*/_jsx("div", {
7
+ id: "abm-agent-modal"
8
+ }), /*#__PURE__*/_jsx("div", {
9
+ id: "snackbar-portal-maia-chat-agent"
10
+ }), /*#__PURE__*/_jsx("div", {
11
+ id: "emoji-picker-container"
12
+ }), /*#__PURE__*/_jsx("div", {
13
+ id: "emoji-picker-container-maia-chat-agent"
14
+ }), /*#__PURE__*/_jsx("div", {
15
+ id: "modal-portal-video-onboarding"
16
+ }), /*#__PURE__*/_jsx(SCPageHost, {
17
+ style: {
18
+ height: '100vh'
19
+ },
20
+ children: /*#__PURE__*/_jsx(ChatAIPage, {
21
+ section: "header",
22
+ entity: {
23
+ projectId: null,
24
+ clientId: null
25
+ }
26
+ })
27
+ })]
28
+ });
29
+ };
30
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJDaGF0QUlQYWdlIiwiU0NQYWdlSG9zdCIsImpzeCIsIl9qc3giLCJGcmFnbWVudCIsIl9GcmFnbWVudCIsImpzeHMiLCJfanN4cyIsIkRldk1haWFQYWdlIiwiY2hpbGRyZW4iLCJpZCIsInN0eWxlIiwiaGVpZ2h0Iiwic2VjdGlvbiIsImVudGl0eSIsInByb2plY3RJZCIsImNsaWVudElkIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Rldi9EZXZNYWlhUGFnZS50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhdEFJUGFnZSB9IGZyb20gJy4uL2NvbXBvbmVudHMvb3JnYW5pc21zL0NoYXRBSVBhZ2UnXG5pbXBvcnQgeyBTQ1BhZ2VIb3N0IH0gZnJvbSAnLi4vY29tcG9uZW50cy9vcmdhbmlzbXMvQ2hhdEFJUGFnZS9DaGF0QUlQYWdlLnN0eWxlcydcblxuZXhwb3J0IGNvbnN0IERldk1haWFQYWdlID0gKCkgPT4gKFxuICA8PlxuICAgIDxkaXYgaWQ9XCJhYm0tYWdlbnQtbW9kYWxcIiAvPlxuICAgIDxkaXYgaWQ9XCJzbmFja2Jhci1wb3J0YWwtbWFpYS1jaGF0LWFnZW50XCIgLz5cbiAgICA8ZGl2IGlkPVwiZW1vamktcGlja2VyLWNvbnRhaW5lclwiIC8+XG4gICAgPGRpdiBpZD1cImVtb2ppLXBpY2tlci1jb250YWluZXItbWFpYS1jaGF0LWFnZW50XCIgLz5cbiAgICA8ZGl2IGlkPVwibW9kYWwtcG9ydGFsLXZpZGVvLW9uYm9hcmRpbmdcIiAvPlxuICAgIDxTQ1BhZ2VIb3N0IHN0eWxlPXt7IGhlaWdodDogJzEwMHZoJyB9fT5cbiAgICAgIDxDaGF0QUlQYWdlIHNlY3Rpb249XCJoZWFkZXJcIiBlbnRpdHk9e3sgcHJvamVjdElkOiBudWxsLCBjbGllbnRJZDogbnVsbCB9fSAvPlxuICAgIDwvU0NQYWdlSG9zdD5cbiAgPC8+XG4pXG4iXSwibWFwcGluZ3MiOiJBQUFBLFNBQVNBLFVBQVUsUUFBUSxvQ0FBb0M7QUFDL0QsU0FBU0MsVUFBVSxRQUFRLHNEQUFzRDtBQUFBLFNBQUFDLEdBQUEsSUFBQUMsSUFBQSxFQUFBQyxRQUFBLElBQUFDLFNBQUEsRUFBQUMsSUFBQSxJQUFBQyxLQUFBO0FBRWpGLE9BQU8sSUFBTUMsV0FBVyxHQUFHLFNBQWRBLFdBQVdBLENBQUE7RUFBQSxvQkFDdEJELEtBQUEsQ0FBQUYsU0FBQTtJQUFBSSxRQUFBLGdCQUNFTixJQUFBO01BQUtPLEVBQUUsRUFBQztJQUFpQixDQUFFLENBQUMsZUFDNUJQLElBQUE7TUFBS08sRUFBRSxFQUFDO0lBQWlDLENBQUUsQ0FBQyxlQUM1Q1AsSUFBQTtNQUFLTyxFQUFFLEVBQUM7SUFBd0IsQ0FBRSxDQUFDLGVBQ25DUCxJQUFBO01BQUtPLEVBQUUsRUFBQztJQUF3QyxDQUFFLENBQUMsZUFDbkRQLElBQUE7TUFBS08sRUFBRSxFQUFDO0lBQStCLENBQUUsQ0FBQyxlQUMxQ1AsSUFBQSxDQUFDRixVQUFVO01BQUNVLEtBQUssRUFBRTtRQUFFQyxNQUFNLEVBQUU7TUFBUSxDQUFFO01BQUFILFFBQUEsZUFDckNOLElBQUEsQ0FBQ0gsVUFBVTtRQUFDYSxPQUFPLEVBQUMsUUFBUTtRQUFDQyxNQUFNLEVBQUU7VUFBRUMsU0FBUyxFQUFFLElBQUk7VUFBRUMsUUFBUSxFQUFFO1FBQUs7TUFBRSxDQUFFO0lBQUMsQ0FDbEUsQ0FBQztFQUFBLENBQ2IsQ0FBQztBQUFBLENBQ0oiLCJpZ25vcmVMaXN0IjpbXX0=
@@ -9,6 +9,7 @@ import { useState, useRef } from 'react';
9
9
  import { useTranslation } from 'react-i18next';
10
10
  import { createAgent } from '../../services/maia/Agents/createAgent';
11
11
  import { setAgentToolGroups } from '../../services/maia/Agents/setAgentToolGroups';
12
+ import { connectorAuthErrorMessage, openConnectorAuthorizationWindows, saveAgentConnectors, waitForConnectorAuthorization } from '../../services/maia/Agents/connectors';
12
13
  import { useSnackBarManager } from '../useSnackBarManager/useSnackBarManager';
13
14
  import { buildAgentToolGroupsRequest, buildAgentConnectorsFromTaskAccess } from '../../utils/normalizeAgentConnectors';
14
15
  export var parsedValuesByReq = function parsedValuesByReq(agentValues) {
@@ -46,7 +47,7 @@ export var useCreateAgent = function useCreateAgent() {
46
47
  };
47
48
  var handleCreateAgent = /*#__PURE__*/function () {
48
49
  var _ref = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(values) {
49
- var parsedValue, _values$accessibility, _values$accessibility2, response, taskAccess, _t, _t2;
50
+ var parsedValue, _values$accessibility, _values$accessibility2, _values$accessibility3, response, taskAccess, selectedConnectors, authPopup, connectorsResponse, pendingAuth, authPopupWindow, authErrors, _yield$waitForConnect, authorized, authError, _t, _t2, _t3;
50
51
  return _regeneratorRuntime.wrap(function (_context) {
51
52
  while (1) switch (_context.prev = _context.next) {
52
53
  case 0:
@@ -72,8 +73,10 @@ export var useCreateAgent = function useCreateAgent() {
72
73
  throw new Error(response.error);
73
74
  case 4:
74
75
  taskAccess = (_values$accessibility = (_values$accessibility2 = values.accessibility) === null || _values$accessibility2 === void 0 ? void 0 : _values$accessibility2.taskAccess) !== null && _values$accessibility !== void 0 ? _values$accessibility : true;
76
+ selectedConnectors = ((_values$accessibility3 = values.accessibility) === null || _values$accessibility3 === void 0 ? void 0 : _values$accessibility3.selectedConnectors) || [];
77
+ authPopup = selectedConnectors.length > 0 ? window.open('', '_blank', 'popup=yes,width=560,height=760') : null;
75
78
  if (!(response !== null && response !== void 0 && response.id)) {
76
- _context.next = 8;
79
+ _context.next = 13;
77
80
  break;
78
81
  }
79
82
  _context.prev = 5;
@@ -87,27 +90,71 @@ export var useCreateAgent = function useCreateAgent() {
87
90
  _t = _context["catch"](5);
88
91
  console.error('Error setting agent tool groups:', _t);
89
92
  case 8:
93
+ _context.prev = 8;
94
+ _context.next = 9;
95
+ return saveAgentConnectors(response.id.toString(), selectedConnectors);
96
+ case 9:
97
+ connectorsResponse = _context.sent;
98
+ pendingAuth = connectorsResponse.requires_auth || [];
99
+ authPopupWindow = openConnectorAuthorizationWindows(pendingAuth, authPopup);
100
+ authErrors = connectorsResponse.auth_errors || [];
101
+ if (authErrors.length) {
102
+ handleSnackbarError(authErrors.map(function (error) {
103
+ return error.slug === 'netsuite' ? t('accessibilitySection.netsuiteAuthSetupRequired') : connectorAuthErrorMessage(error);
104
+ }).join(' '));
105
+ }
106
+ if (!pendingAuth.length) {
107
+ _context.next = 11;
108
+ break;
109
+ }
110
+ _context.next = 10;
111
+ return waitForConnectorAuthorization({
112
+ agentId: response.id.toString(),
113
+ slugs: pendingAuth.map(function (item) {
114
+ return item.slug;
115
+ }),
116
+ popup: authPopupWindow
117
+ });
118
+ case 10:
119
+ _yield$waitForConnect = _context.sent;
120
+ authorized = _yield$waitForConnect.authorized;
121
+ authError = _yield$waitForConnect.error;
122
+ if (!authorized.length) {
123
+ handleSnackbarError(authError && authError !== 'timeout' ? authError : t('accessibilitySection.connectorAuthIncomplete'));
124
+ }
125
+ case 11:
126
+ _context.next = 13;
127
+ break;
128
+ case 12:
129
+ _context.prev = 12;
130
+ _t2 = _context["catch"](8);
131
+ console.error('Error setting agent connectors:', _t2);
132
+ if (authPopup && !authPopup.closed) {
133
+ authPopup.close();
134
+ }
135
+ handleSnackbarError(t('accessibilitySection.connectorAuthFailed'));
136
+ case 13:
90
137
  setError(null);
91
138
  setSuccess(_objectSpread(_objectSpread({}, response), {}, {
92
- connectors: buildAgentConnectorsFromTaskAccess(taskAccess)
139
+ connectors: buildAgentConnectorsFromTaskAccess(taskAccess, selectedConnectors)
93
140
  }));
94
- _context.next = 10;
141
+ _context.next = 15;
95
142
  break;
96
- case 9:
97
- _context.prev = 9;
98
- _t2 = _context["catch"](2);
99
- setError(_t2 instanceof Error ? _t2.message : t('errorAgentCreated'));
143
+ case 14:
144
+ _context.prev = 14;
145
+ _t3 = _context["catch"](2);
146
+ setError(_t3 instanceof Error ? _t3.message : t('errorAgentCreated'));
100
147
  handleSnackbarError(t('errorAgentCreated'));
101
- case 10:
102
- _context.prev = 10;
148
+ case 15:
149
+ _context.prev = 15;
103
150
  setIsLoading(false);
104
151
  isProcessingRef.current = false;
105
- return _context.finish(10);
106
- case 11:
152
+ return _context.finish(15);
153
+ case 16:
107
154
  case "end":
108
155
  return _context.stop();
109
156
  }
110
- }, _callee, null, [[2, 9, 10, 11], [5, 7]]);
157
+ }, _callee, null, [[2, 14, 15, 16], [5, 7], [8, 12]]);
111
158
  }));
112
159
  return function handleCreateAgent(_x) {
113
160
  return _ref.apply(this, arguments);
@@ -125,4 +172,4 @@ export var useCreateAgent = function useCreateAgent() {
125
172
  resetSuccess: resetSuccess
126
173
  };
127
174
  };
128
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VTdGF0ZSIsInVzZVJlZiIsInVzZVRyYW5zbGF0aW9uIiwiY3JlYXRlQWdlbnQiLCJzZXRBZ2VudFRvb2xHcm91cHMiLCJ1c2VTbmFja0Jhck1hbmFnZXIiLCJidWlsZEFnZW50VG9vbEdyb3Vwc1JlcXVlc3QiLCJidWlsZEFnZW50Q29ubmVjdG9yc0Zyb21UYXNrQWNjZXNzIiwicGFyc2VkVmFsdWVzQnlSZXEiLCJhZ2VudFZhbHVlcyIsIl9hZ2VudFZhbHVlcyRhaU1vZGVsIiwiX2FnZW50VmFsdWVzJGFpTW9kZWwyIiwibmFtZSIsImVtb2ppIiwiaW50cm9kdWN0aW9uIiwiaW5wdXRfcGxhY2Vob2xkZXIiLCJpbnB1dFBsYWNlaG9sZGVyIiwidXNlcl9wcm9tcHQiLCJ1c2VyUHJvbXB0IiwicHJvdmlkZXIiLCJhaU1vZGVsIiwibW9kZWxfbmFtZSIsInVzZUNyZWF0ZUFnZW50IiwiX3VzZVRyYW5zbGF0aW9uIiwidCIsIl91c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheSIsImlzTG9hZGluZyIsInNldElzTG9hZGluZyIsIl91c2VTdGF0ZTMiLCJfdXNlU3RhdGU0IiwiZXJyb3IiLCJzZXRFcnJvciIsIl91c2VTdGF0ZTUiLCJfdXNlU3RhdGU2Iiwic3VjY2VzcyIsInNldFN1Y2Nlc3MiLCJfdXNlU25hY2tCYXJNYW5hZ2VyIiwiaGFuZGxlU25hY2tiYXJFcnJvciIsImlzUHJvY2Vzc2luZ1JlZiIsImhhbmRsZVNldFN1Y2Nlc3MiLCJ2YWx1ZSIsImhhbmRsZUNyZWF0ZUFnZW50IiwiX3JlZiIsIl9hc3luY1RvR2VuZXJhdG9yIiwiX3JlZ2VuZXJhdG9yUnVudGltZSIsIm1hcmsiLCJfY2FsbGVlIiwidmFsdWVzIiwicGFyc2VkVmFsdWUiLCJfdmFsdWVzJGFjY2Vzc2liaWxpdHkiLCJfdmFsdWVzJGFjY2Vzc2liaWxpdHkyIiwicmVzcG9uc2UiLCJ0YXNrQWNjZXNzIiwiX3QiLCJfdDIiLCJ3cmFwIiwiX2NvbnRleHQiLCJwcmV2IiwibmV4dCIsImN1cnJlbnQiLCJhYnJ1cHQiLCJnZW5lcmFsIiwic2VudCIsIkVycm9yIiwiYWNjZXNzaWJpbGl0eSIsImlkIiwidG9TdHJpbmciLCJjb25zb2xlIiwiX29iamVjdFNwcmVhZCIsImNvbm5lY3RvcnMiLCJtZXNzYWdlIiwiZmluaXNoIiwic3RvcCIsIl94IiwiYXBwbHkiLCJhcmd1bWVudHMiLCJyZXNldFN1Y2Nlc3MiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaG9va3MvdXNlQWdlbnRNb2RlbC91c2VDcmVhdGVBZ2VudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXG5pbXBvcnQgeyB1c2VTdGF0ZSwgdXNlUmVmIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyB1c2VUcmFuc2xhdGlvbiB9IGZyb20gJ3JlYWN0LWkxOG5leHQnXG5pbXBvcnQgeyBBZ2VudENyZWF0ZVJlcXVlc3QsIGNyZWF0ZUFnZW50IH0gZnJvbSAnLi4vLi4vc2VydmljZXMvbWFpYS9BZ2VudHMvY3JlYXRlQWdlbnQnXG5pbXBvcnQgeyBzZXRBZ2VudFRvb2xHcm91cHMgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9tYWlhL0FnZW50cy9zZXRBZ2VudFRvb2xHcm91cHMnXG5pbXBvcnQgeyB1c2VTbmFja0Jhck1hbmFnZXIgfSBmcm9tICcuLi91c2VTbmFja0Jhck1hbmFnZXIvdXNlU25hY2tCYXJNYW5hZ2VyJ1xuaW1wb3J0IHsgYnVpbGRBZ2VudFRvb2xHcm91cHNSZXF1ZXN0LCBidWlsZEFnZW50Q29ubmVjdG9yc0Zyb21UYXNrQWNjZXNzIH0gZnJvbSAnLi4vLi4vdXRpbHMvbm9ybWFsaXplQWdlbnRDb25uZWN0b3JzJ1xuXG5leHBvcnQgY29uc3QgcGFyc2VkVmFsdWVzQnlSZXEgPSAoYWdlbnRWYWx1ZXM6IGFueSk6IEFnZW50Q3JlYXRlUmVxdWVzdCA9PiB7XG4gIHJldHVybiB7XG4gICAgbmFtZTogYWdlbnRWYWx1ZXMubmFtZSxcbiAgICBlbW9qaTogYWdlbnRWYWx1ZXMuZW1vamkgfHwgJ+KcqCcsXG4gICAgaW50cm9kdWN0aW9uOiBhZ2VudFZhbHVlcy5pbnRyb2R1Y3Rpb24gfHwgJycsXG4gICAgaW5wdXRfcGxhY2Vob2xkZXI6IGFnZW50VmFsdWVzLmlucHV0UGxhY2Vob2xkZXIgfHwgJycsXG4gICAgdXNlcl9wcm9tcHQ6IGFnZW50VmFsdWVzLnVzZXJQcm9tcHQsXG4gICAgcHJvdmlkZXI6IGFnZW50VmFsdWVzLmFpTW9kZWw/LnByb3ZpZGVyLFxuICAgIG1vZGVsX25hbWU6IGFnZW50VmFsdWVzLmFpTW9kZWw/Lm1vZGVsX25hbWUsXG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IHVzZUNyZWF0ZUFnZW50ID0gKCkgPT4ge1xuICBjb25zdCB7IHQgfSA9IHVzZVRyYW5zbGF0aW9uKCdhYm1fYWdlbnRfc2VjdGlvbicpXG4gIGNvbnN0IFtpc0xvYWRpbmcsIHNldElzTG9hZGluZ10gPSB1c2VTdGF0ZShmYWxzZSlcbiAgY29uc3QgW2Vycm9yLCBzZXRFcnJvcl0gPSB1c2VTdGF0ZTxzdHJpbmcgfCBudWxsPihudWxsKVxuICBjb25zdCBbc3VjY2Vzcywgc2V0U3VjY2Vzc10gPSB1c2VTdGF0ZTxhbnk+KGZhbHNlKVxuICBjb25zdCB7IGhhbmRsZVNuYWNrYmFyRXJyb3IgfSA9IHVzZVNuYWNrQmFyTWFuYWdlcigpXG4gIGNvbnN0IGlzUHJvY2Vzc2luZ1JlZiA9IHVzZVJlZihmYWxzZSlcblxuICBjb25zdCBoYW5kbGVTZXRTdWNjZXNzID0gKHZhbHVlOiBib29sZWFuKSA9PiB7XG4gICAgc2V0U3VjY2Vzcyh2YWx1ZSlcbiAgfVxuXG4gIGNvbnN0IGhhbmRsZUNyZWF0ZUFnZW50ID0gYXN5bmMgKHZhbHVlczogYW55KSA9PiB7XG4gICAgaWYgKGlzUHJvY2Vzc2luZ1JlZi5jdXJyZW50KSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBjb25zdCBwYXJzZWRWYWx1ZTogQWdlbnRDcmVhdGVSZXF1ZXN0ID0gcGFyc2VkVmFsdWVzQnlSZXEodmFsdWVzLmdlbmVyYWwpXG5cbiAgICBpc1Byb2Nlc3NpbmdSZWYuY3VycmVudCA9IHRydWVcbiAgICBzZXRJc0xvYWRpbmcodHJ1ZSlcbiAgICBzZXRTdWNjZXNzKGZhbHNlKVxuXG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgY3JlYXRlQWdlbnQocGFyc2VkVmFsdWUpXG5cbiAgICAgIGlmIChyZXNwb25zZS5lcnJvcikge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IocmVzcG9uc2UuZXJyb3IpXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHRhc2tBY2Nlc3MgPSB2YWx1ZXMuYWNjZXNzaWJpbGl0eT8udGFza0FjY2VzcyA/PyB0cnVlXG5cbiAgICAgIGlmIChyZXNwb25zZT8uaWQpIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBhd2FpdCBzZXRBZ2VudFRvb2xHcm91cHMocmVzcG9uc2UuaWQudG9TdHJpbmcoKSwgYnVpbGRBZ2VudFRvb2xHcm91cHNSZXF1ZXN0KHRhc2tBY2Nlc3MpKVxuICAgICAgICB9IGNhdGNoICh0b29sR3JvdXBzRXJyb3IpIHtcbiAgICAgICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBzZXR0aW5nIGFnZW50IHRvb2wgZ3JvdXBzOicsIHRvb2xHcm91cHNFcnJvcilcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBzZXRFcnJvcihudWxsKVxuICAgICAgc2V0U3VjY2Vzcyh7IC4uLnJlc3BvbnNlLCBjb25uZWN0b3JzOiBidWlsZEFnZW50Q29ubmVjdG9yc0Zyb21UYXNrQWNjZXNzKHRhc2tBY2Nlc3MpIH0pXG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICBzZXRFcnJvcihlcnIgaW5zdGFuY2VvZiBFcnJvciA/IGVyci5tZXNzYWdlIDogdCgnZXJyb3JBZ2VudENyZWF0ZWQnKSlcbiAgICAgIGhhbmRsZVNuYWNrYmFyRXJyb3IodCgnZXJyb3JBZ2VudENyZWF0ZWQnKSlcbiAgICB9IGZpbmFsbHkge1xuICAgICAgc2V0SXNMb2FkaW5nKGZhbHNlKVxuICAgICAgaXNQcm9jZXNzaW5nUmVmLmN1cnJlbnQgPSBmYWxzZVxuICAgIH1cbiAgfVxuXG4gIGNvbnN0IHJlc2V0U3VjY2VzcyA9ICgpID0+IHtcbiAgICBzZXRTdWNjZXNzKGZhbHNlKVxuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBoYW5kbGVDcmVhdGVBZ2VudCxcbiAgICBpc0xvYWRpbmcsXG4gICAgZXJyb3IsXG4gICAgc3VjY2VzcyxcbiAgICBoYW5kbGVTZXRTdWNjZXNzLFxuICAgIHJlc2V0U3VjY2VzcyxcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQTtBQUNBLFNBQVNBLFFBQVEsRUFBRUMsTUFBTSxRQUFRLE9BQU87QUFDeEMsU0FBU0MsY0FBYyxRQUFRLGVBQWU7QUFDOUMsU0FBNkJDLFdBQVcsUUFBUSx3Q0FBd0M7QUFDeEYsU0FBU0Msa0JBQWtCLFFBQVEsK0NBQStDO0FBQ2xGLFNBQVNDLGtCQUFrQixRQUFRLDBDQUEwQztBQUM3RSxTQUFTQywyQkFBMkIsRUFBRUMsa0NBQWtDLFFBQVEsc0NBQXNDO0FBRXRILE9BQU8sSUFBTUMsaUJBQWlCLEdBQUcsU0FBcEJBLGlCQUFpQkEsQ0FBSUMsV0FBZ0IsRUFBeUI7RUFBQSxJQUFBQyxvQkFBQSxFQUFBQyxxQkFBQTtFQUN6RSxPQUFPO0lBQ0xDLElBQUksRUFBRUgsV0FBVyxDQUFDRyxJQUFJO0lBQ3RCQyxLQUFLLEVBQUVKLFdBQVcsQ0FBQ0ksS0FBSyxJQUFJLEdBQUc7SUFDL0JDLFlBQVksRUFBRUwsV0FBVyxDQUFDSyxZQUFZLElBQUksRUFBRTtJQUM1Q0MsaUJBQWlCLEVBQUVOLFdBQVcsQ0FBQ08sZ0JBQWdCLElBQUksRUFBRTtJQUNyREMsV0FBVyxFQUFFUixXQUFXLENBQUNTLFVBQVU7SUFDbkNDLFFBQVEsR0FBQVQsb0JBQUEsR0FBRUQsV0FBVyxDQUFDVyxPQUFPLGNBQUFWLG9CQUFBLHVCQUFuQkEsb0JBQUEsQ0FBcUJTLFFBQVE7SUFD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
175
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VTdGF0ZSIsInVzZVJlZiIsInVzZVRyYW5zbGF0aW9uIiwiY3JlYXRlQWdlbnQiLCJzZXRBZ2VudFRvb2xHcm91cHMiLCJjb25uZWN0b3JBdXRoRXJyb3JNZXNzYWdlIiwib3BlbkNvbm5lY3RvckF1dGhvcml6YXRpb25XaW5kb3dzIiwic2F2ZUFnZW50Q29ubmVjdG9ycyIsIndhaXRGb3JDb25uZWN0b3JBdXRob3JpemF0aW9uIiwidXNlU25hY2tCYXJNYW5hZ2VyIiwiYnVpbGRBZ2VudFRvb2xHcm91cHNSZXF1ZXN0IiwiYnVpbGRBZ2VudENvbm5lY3RvcnNGcm9tVGFza0FjY2VzcyIsInBhcnNlZFZhbHVlc0J5UmVxIiwiYWdlbnRWYWx1ZXMiLCJfYWdlbnRWYWx1ZXMkYWlNb2RlbCIsIl9hZ2VudFZhbHVlcyRhaU1vZGVsMiIsIm5hbWUiLCJlbW9qaSIsImludHJvZHVjdGlvbiIsImlucHV0X3BsYWNlaG9sZGVyIiwiaW5wdXRQbGFjZWhvbGRlciIsInVzZXJfcHJvbXB0IiwidXNlclByb21wdCIsInByb3ZpZGVyIiwiYWlNb2RlbCIsIm1vZGVsX25hbWUiLCJ1c2VDcmVhdGVBZ2VudCIsIl91c2VUcmFuc2xhdGlvbiIsInQiLCJfdXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkiLCJpc0xvYWRpbmciLCJzZXRJc0xvYWRpbmciLCJfdXNlU3RhdGUzIiwiX3VzZVN0YXRlNCIsImVycm9yIiwic2V0RXJyb3IiLCJfdXNlU3RhdGU1IiwiX3VzZVN0YXRlNiIsInN1Y2Nlc3MiLCJzZXRTdWNjZXNzIiwiX3VzZVNuYWNrQmFyTWFuYWdlciIsImhhbmRsZVNuYWNrYmFyRXJyb3IiLCJpc1Byb2Nlc3NpbmdSZWYiLCJoYW5kbGVTZXRTdWNjZXNzIiwidmFsdWUiLCJoYW5kbGVDcmVhdGVBZ2VudCIsIl9yZWYiLCJfYXN5bmNUb0dlbmVyYXRvciIsIl9yZWdlbmVyYXRvclJ1bnRpbWUiLCJtYXJrIiwiX2NhbGxlZSIsInZhbHVlcyIsInBhcnNlZFZhbHVlIiwiX3ZhbHVlcyRhY2Nlc3NpYmlsaXR5IiwiX3ZhbHVlcyRhY2Nlc3NpYmlsaXR5MiIsIl92YWx1ZXMkYWNjZXNzaWJpbGl0eTMiLCJyZXNwb25zZSIsInRhc2tBY2Nlc3MiLCJzZWxlY3RlZENvbm5lY3RvcnMiLCJhdXRoUG9wdXAiLCJjb25uZWN0b3JzUmVzcG9uc2UiLCJwZW5kaW5nQXV0aCIsImF1dGhQb3B1cFdpbmRvdyIsImF1dGhFcnJvcnMiLCJfeWllbGQkd2FpdEZvckNvbm5lY3QiLCJhdXRob3JpemVkIiwiYXV0aEVycm9yIiwiX3QiLCJfdDIiLCJfdDMiLCJ3cmFwIiwiX2NvbnRleHQiLCJwcmV2IiwibmV4dCIsImN1cnJlbnQiLCJhYnJ1cHQiLCJnZW5lcmFsIiwic2VudCIsIkVycm9yIiwiYWNjZXNzaWJpbGl0eSIsImxlbmd0aCIsIndpbmRvdyIsIm9wZW4iLCJpZCIsInRvU3RyaW5nIiwiY29uc29sZSIsInJlcXVpcmVzX2F1dGgiLCJhdXRoX2Vycm9ycyIsIm1hcCIsInNsdWciLCJqb2luIiwiYWdlbnRJZCIsInNsdWdzIiwiaXRlbSIsInBvcHVwIiwiY2xvc2VkIiwiY2xvc2UiLCJfb2JqZWN0U3ByZWFkIiwiY29ubmVjdG9ycyIsIm1lc3NhZ2UiLCJmaW5pc2giLCJzdG9wIiwiX3giLCJhcHBseSIsImFyZ3VtZW50cyIsInJlc2V0U3VjY2VzcyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ob29rcy91c2VBZ2VudE1vZGVsL3VzZUNyZWF0ZUFnZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnkgKi9cbmltcG9ydCB7IHVzZVN0YXRlLCB1c2VSZWYgfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IHVzZVRyYW5zbGF0aW9uIH0gZnJvbSAncmVhY3QtaTE4bmV4dCdcbmltcG9ydCB7IEFnZW50Q3JlYXRlUmVxdWVzdCwgY3JlYXRlQWdlbnQgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9tYWlhL0FnZW50cy9jcmVhdGVBZ2VudCdcbmltcG9ydCB7IHNldEFnZW50VG9vbEdyb3VwcyB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL21haWEvQWdlbnRzL3NldEFnZW50VG9vbEdyb3VwcydcbmltcG9ydCB7IGNvbm5lY3RvckF1dGhFcnJvck1lc3NhZ2UsIG9wZW5Db25uZWN0b3JBdXRob3JpemF0aW9uV2luZG93cywgc2F2ZUFnZW50Q29ubmVjdG9ycywgd2FpdEZvckNvbm5lY3RvckF1dGhvcml6YXRpb24gfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9tYWlhL0FnZW50cy9jb25uZWN0b3JzJ1xuaW1wb3J0IHsgdXNlU25hY2tCYXJNYW5hZ2VyIH0gZnJvbSAnLi4vdXNlU25hY2tCYXJNYW5hZ2VyL3VzZVNuYWNrQmFyTWFuYWdlcidcbmltcG9ydCB7IGJ1aWxkQWdlbnRUb29sR3JvdXBzUmVxdWVzdCwgYnVpbGRBZ2VudENvbm5lY3RvcnNGcm9tVGFza0FjY2VzcyB9IGZyb20gJy4uLy4uL3V0aWxzL25vcm1hbGl6ZUFnZW50Q29ubmVjdG9ycydcblxuZXhwb3J0IGNvbnN0IHBhcnNlZFZhbHVlc0J5UmVxID0gKGFnZW50VmFsdWVzOiBhbnkpOiBBZ2VudENyZWF0ZVJlcXVlc3QgPT4ge1xuICByZXR1cm4ge1xuICAgIG5hbWU6IGFnZW50VmFsdWVzLm5hbWUsXG4gICAgZW1vamk6IGFnZW50VmFsdWVzLmVtb2ppIHx8ICfinKgnLFxuICAgIGludHJvZHVjdGlvbjogYWdlbnRWYWx1ZXMuaW50cm9kdWN0aW9uIHx8ICcnLFxuICAgIGlucHV0X3BsYWNlaG9sZGVyOiBhZ2VudFZhbHVlcy5pbnB1dFBsYWNlaG9sZGVyIHx8ICcnLFxuICAgIHVzZXJfcHJvbXB0OiBhZ2VudFZhbHVlcy51c2VyUHJvbXB0LFxuICAgIHByb3ZpZGVyOiBhZ2VudFZhbHVlcy5haU1vZGVsPy5wcm92aWRlcixcbiAgICBtb2RlbF9uYW1lOiBhZ2VudFZhbHVlcy5haU1vZGVsPy5tb2RlbF9uYW1lLFxuICB9XG59XG5cbmV4cG9ydCBjb25zdCB1c2VDcmVhdGVBZ2VudCA9ICgpID0+IHtcbiAgY29uc3QgeyB0IH0gPSB1c2VUcmFuc2xhdGlvbignYWJtX2FnZW50X3NlY3Rpb24nKVxuICBjb25zdCBbaXNMb2FkaW5nLCBzZXRJc0xvYWRpbmddID0gdXNlU3RhdGUoZmFsc2UpXG4gIGNvbnN0IFtlcnJvciwgc2V0RXJyb3JdID0gdXNlU3RhdGU8c3RyaW5nIHwgbnVsbD4obnVsbClcbiAgY29uc3QgW3N1Y2Nlc3MsIHNldFN1Y2Nlc3NdID0gdXNlU3RhdGU8YW55PihmYWxzZSlcbiAgY29uc3QgeyBoYW5kbGVTbmFja2JhckVycm9yIH0gPSB1c2VTbmFja0Jhck1hbmFnZXIoKVxuICBjb25zdCBpc1Byb2Nlc3NpbmdSZWYgPSB1c2VSZWYoZmFsc2UpXG5cbiAgY29uc3QgaGFuZGxlU2V0U3VjY2VzcyA9ICh2YWx1ZTogYm9vbGVhbikgPT4ge1xuICAgIHNldFN1Y2Nlc3ModmFsdWUpXG4gIH1cblxuICBjb25zdCBoYW5kbGVDcmVhdGVBZ2VudCA9IGFzeW5jICh2YWx1ZXM6IGFueSkgPT4ge1xuICAgIGlmIChpc1Byb2Nlc3NpbmdSZWYuY3VycmVudCkge1xuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgY29uc3QgcGFyc2VkVmFsdWU6IEFnZW50Q3JlYXRlUmVxdWVzdCA9IHBhcnNlZFZhbHVlc0J5UmVxKHZhbHVlcy5nZW5lcmFsKVxuXG4gICAgaXNQcm9jZXNzaW5nUmVmLmN1cnJlbnQgPSB0cnVlXG4gICAgc2V0SXNMb2FkaW5nKHRydWUpXG4gICAgc2V0U3VjY2VzcyhmYWxzZSlcblxuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGNyZWF0ZUFnZW50KHBhcnNlZFZhbHVlKVxuXG4gICAgICBpZiAocmVzcG9uc2UuZXJyb3IpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKHJlc3BvbnNlLmVycm9yKVxuICAgICAgfVxuXG4gICAgICBjb25zdCB0YXNrQWNjZXNzID0gdmFsdWVzLmFjY2Vzc2liaWxpdHk/LnRhc2tBY2Nlc3MgPz8gdHJ1ZVxuICAgICAgY29uc3Qgc2VsZWN0ZWRDb25uZWN0b3JzOiBzdHJpbmdbXSA9IHZhbHVlcy5hY2Nlc3NpYmlsaXR5Py5zZWxlY3RlZENvbm5lY3RvcnMgfHwgW11cbiAgICAgIGNvbnN0IGF1dGhQb3B1cCA9XG4gICAgICAgIHNlbGVjdGVkQ29ubmVjdG9ycy5sZW5ndGggPiAwID8gd2luZG93Lm9wZW4oJycsICdfYmxhbmsnLCAncG9wdXA9eWVzLHdpZHRoPTU2MCxoZWlnaHQ9NzYwJykgOiBudWxsXG5cbiAgICAgIGlmIChyZXNwb25zZT8uaWQpIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBhd2FpdCBzZXRBZ2VudFRvb2xHcm91cHMocmVzcG9uc2UuaWQudG9TdHJpbmcoKSwgYnVpbGRBZ2VudFRvb2xHcm91cHNSZXF1ZXN0KHRhc2tBY2Nlc3MpKVxuICAgICAgICB9IGNhdGNoICh0b29sR3JvdXBzRXJyb3IpIHtcbiAgICAgICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBzZXR0aW5nIGFnZW50IHRvb2wgZ3JvdXBzOicsIHRvb2xHcm91cHNFcnJvcilcbiAgICAgICAgfVxuXG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgY29uc3QgY29ubmVjdG9yc1Jlc3BvbnNlID0gYXdhaXQgc2F2ZUFnZW50Q29ubmVjdG9ycyhyZXNwb25zZS5pZC50b1N0cmluZygpLCBzZWxlY3RlZENvbm5lY3RvcnMpXG4gICAgICAgICAgY29uc3QgcGVuZGluZ0F1dGggPSBjb25uZWN0b3JzUmVzcG9uc2UucmVxdWlyZXNfYXV0aCB8fCBbXVxuICAgICAgICAgIGNvbnN0IGF1dGhQb3B1cFdpbmRvdyA9IG9wZW5Db25uZWN0b3JBdXRob3JpemF0aW9uV2luZG93cyhwZW5kaW5nQXV0aCwgYXV0aFBvcHVwKVxuICAgICAgICAgIGNvbnN0IGF1dGhFcnJvcnMgPSBjb25uZWN0b3JzUmVzcG9uc2UuYXV0aF9lcnJvcnMgfHwgW11cbiAgICAgICAgICBpZiAoYXV0aEVycm9ycy5sZW5ndGgpIHtcbiAgICAgICAgICAgIGhhbmRsZVNuYWNrYmFyRXJyb3IoXG4gICAgICAgICAgICAgIGF1dGhFcnJvcnMubWFwKGVycm9yID0+XG4gICAgICAgICAgICAgICAgZXJyb3Iuc2x1ZyA9PT0gJ25ldHN1aXRlJyA/IHQoJ2FjY2Vzc2liaWxpdHlTZWN0aW9uLm5ldHN1aXRlQXV0aFNldHVwUmVxdWlyZWQnKSA6IGNvbm5lY3RvckF1dGhFcnJvck1lc3NhZ2UoZXJyb3IpXG4gICAgICAgICAgICAgICkuam9pbignICcpXG4gICAgICAgICAgICApXG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChwZW5kaW5nQXV0aC5sZW5ndGgpIHtcbiAgICAgICAgICAgIGNvbnN0IHsgYXV0aG9yaXplZCwgZXJyb3I6IGF1dGhFcnJvciB9ID0gYXdhaXQgd2FpdEZvckNvbm5lY3RvckF1dGhvcml6YXRpb24oe1xuICAgICAgICAgICAgICBhZ2VudElkOiByZXNwb25zZS5pZC50b1N0cmluZygpLFxuICAgICAgICAgICAgICBzbHVnczogcGVuZGluZ0F1dGgubWFwKGl0ZW0gPT4gaXRlbS5zbHVnKSxcbiAgICAgICAgICAgICAgcG9wdXA6IGF1dGhQb3B1cFdpbmRvdyxcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICBpZiAoIWF1dGhvcml6ZWQubGVuZ3RoKSB7XG4gICAgICAgICAgICAgIGhhbmRsZVNuYWNrYmFyRXJyb3IoYXV0aEVycm9yICYmIGF1dGhFcnJvciAhPT0gJ3RpbWVvdXQnXG4gICAgICAgICAgICAgICAgPyBhdXRoRXJyb3JcbiAgICAgICAgICAgICAgICA6IHQoJ2FjY2Vzc2liaWxpdHlTZWN0aW9uLmNvbm5lY3RvckF1dGhJbmNvbXBsZXRlJykpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9IGNhdGNoIChjb25uZWN0b3JzRXJyb3IpIHtcbiAgICAgICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBzZXR0aW5nIGFnZW50IGNvbm5lY3RvcnM6JywgY29ubmVjdG9yc0Vycm9yKVxuICAgICAgICAgIGlmIChhdXRoUG9wdXAgJiYgIWF1dGhQb3B1cC5jbG9zZWQpIHtcbiAgICAgICAgICAgIGF1dGhQb3B1cC5jbG9zZSgpXG4gICAgICAgICAgfVxuICAgICAgICAgIGhhbmRsZVNuYWNrYmFyRXJyb3IodCgnYWNjZXNzaWJpbGl0eVNlY3Rpb24uY29ubmVjdG9yQXV0aEZhaWxlZCcpKVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHNldEVycm9yKG51bGwpXG4gICAgICBzZXRTdWNjZXNzKHsgLi4ucmVzcG9uc2UsIGNvbm5lY3RvcnM6IGJ1aWxkQWdlbnRDb25uZWN0b3JzRnJvbVRhc2tBY2Nlc3ModGFza0FjY2Vzcywgc2VsZWN0ZWRDb25uZWN0b3JzKSB9KVxuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgc2V0RXJyb3IoZXJyIGluc3RhbmNlb2YgRXJyb3IgPyBlcnIubWVzc2FnZSA6IHQoJ2Vycm9yQWdlbnRDcmVhdGVkJykpXG4gICAgICBoYW5kbGVTbmFja2JhckVycm9yKHQoJ2Vycm9yQWdlbnRDcmVhdGVkJykpXG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHNldElzTG9hZGluZyhmYWxzZSlcbiAgICAgIGlzUHJvY2Vzc2luZ1JlZi5jdXJyZW50ID0gZmFsc2VcbiAgICB9XG4gIH1cblxuICBjb25zdCByZXNldFN1Y2Nlc3MgPSAoKSA9PiB7XG4gICAgc2V0U3VjY2VzcyhmYWxzZSlcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgaGFuZGxlQ3JlYXRlQWdlbnQsXG4gICAgaXNMb2FkaW5nLFxuICAgIGVycm9yLFxuICAgIHN1Y2Nlc3MsXG4gICAgaGFuZGxlU2V0U3VjY2VzcyxcbiAgICByZXNldFN1Y2Nlc3MsXG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUE7QUFDQSxTQUFTQSxRQUFRLEVBQUVDLE1BQU0sUUFBUSxPQUFPO0FBQ3hDLFNBQVNDLGNBQWMsUUFBUSxlQUFlO0FBQzlDLFNBQTZCQyxXQUFX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
@@ -9,6 +9,7 @@ import { useState, useRef } from 'react';
9
9
  import { useTranslation } from 'react-i18next';
10
10
  import { updateAgent } from '../../services/maia/Agents/updateAgent';
11
11
  import { setAgentToolGroups } from '../../services/maia/Agents/setAgentToolGroups';
12
+ import { connectorAuthErrorMessage, openConnectorAuthorizationWindows, saveAgentConnectors, waitForConnectorAuthorization } from '../../services/maia/Agents/connectors';
12
13
  import { useSnackBarManager } from '../useSnackBarManager/useSnackBarManager';
13
14
  import { buildAgentToolGroupsRequest, buildAgentConnectorsFromTaskAccess } from '../../utils/normalizeAgentConnectors';
14
15
  export var parsedValuesByReq = function parsedValuesByReq(agentValues) {
@@ -47,7 +48,7 @@ export var useUpdateAgent = function useUpdateAgent() {
47
48
  };
48
49
  var handleUpdateAgent = /*#__PURE__*/function () {
49
50
  var _ref = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(values) {
50
- var parsedValue, _values$accessibility, _values$accessibility2, _values$general, response, taskAccess, agentId, _t, _t2;
51
+ var parsedValue, _values$accessibility, _values$accessibility2, _values$accessibility3, _values$general, response, taskAccess, selectedConnectors, agentId, authPopup, connectorsResponse, pendingAuth, authPopupWindow, authErrors, _yield$waitForConnect, authorized, authError, _t, _t2, _t3;
51
52
  return _regeneratorRuntime.wrap(function (_context) {
52
53
  while (1) switch (_context.prev = _context.next) {
53
54
  case 0:
@@ -73,9 +74,11 @@ export var useUpdateAgent = function useUpdateAgent() {
73
74
  throw new Error(response.error);
74
75
  case 4:
75
76
  taskAccess = (_values$accessibility = (_values$accessibility2 = values.accessibility) === null || _values$accessibility2 === void 0 ? void 0 : _values$accessibility2.taskAccess) !== null && _values$accessibility !== void 0 ? _values$accessibility : true;
77
+ selectedConnectors = ((_values$accessibility3 = values.accessibility) === null || _values$accessibility3 === void 0 ? void 0 : _values$accessibility3.selectedConnectors) || [];
76
78
  agentId = (_values$general = values.general) === null || _values$general === void 0 ? void 0 : _values$general.id;
79
+ authPopup = selectedConnectors.length > 0 ? window.open('', '_blank', 'popup=yes,width=560,height=760') : null;
77
80
  if (!agentId) {
78
- _context.next = 8;
81
+ _context.next = 13;
79
82
  break;
80
83
  }
81
84
  _context.prev = 5;
@@ -89,26 +92,70 @@ export var useUpdateAgent = function useUpdateAgent() {
89
92
  _t = _context["catch"](5);
90
93
  console.error('Error setting agent tool groups:', _t);
91
94
  case 8:
95
+ _context.prev = 8;
96
+ _context.next = 9;
97
+ return saveAgentConnectors(agentId.toString(), selectedConnectors);
98
+ case 9:
99
+ connectorsResponse = _context.sent;
100
+ pendingAuth = connectorsResponse.requires_auth || [];
101
+ authPopupWindow = openConnectorAuthorizationWindows(pendingAuth, authPopup);
102
+ authErrors = connectorsResponse.auth_errors || [];
103
+ if (authErrors.length) {
104
+ handleSnackbarError(authErrors.map(function (error) {
105
+ return error.slug === 'netsuite' ? t('accessibilitySection.netsuiteAuthSetupRequired') : connectorAuthErrorMessage(error);
106
+ }).join(' '));
107
+ }
108
+ if (!pendingAuth.length) {
109
+ _context.next = 11;
110
+ break;
111
+ }
112
+ _context.next = 10;
113
+ return waitForConnectorAuthorization({
114
+ agentId: agentId.toString(),
115
+ slugs: pendingAuth.map(function (item) {
116
+ return item.slug;
117
+ }),
118
+ popup: authPopupWindow
119
+ });
120
+ case 10:
121
+ _yield$waitForConnect = _context.sent;
122
+ authorized = _yield$waitForConnect.authorized;
123
+ authError = _yield$waitForConnect.error;
124
+ if (!authorized.length) {
125
+ handleSnackbarError(authError && authError !== 'timeout' ? authError : t('accessibilitySection.connectorAuthIncomplete'));
126
+ }
127
+ case 11:
128
+ _context.next = 13;
129
+ break;
130
+ case 12:
131
+ _context.prev = 12;
132
+ _t2 = _context["catch"](8);
133
+ console.error('Error setting agent connectors:', _t2);
134
+ if (authPopup && !authPopup.closed) {
135
+ authPopup.close();
136
+ }
137
+ handleSnackbarError(t('accessibilitySection.connectorAuthFailed'));
138
+ case 13:
92
139
  setError(null);
93
140
  setSuccess(_objectSpread(_objectSpread({}, response), {}, {
94
- connectors: buildAgentConnectorsFromTaskAccess(taskAccess)
141
+ connectors: buildAgentConnectorsFromTaskAccess(taskAccess, selectedConnectors)
95
142
  }));
96
143
  setIsLoading(false);
97
144
  isProcessingRef.current = false;
98
- _context.next = 10;
145
+ _context.next = 15;
99
146
  break;
100
- case 9:
101
- _context.prev = 9;
102
- _t2 = _context["catch"](2);
103
- setError(_t2 instanceof Error ? _t2.message : t('errorAgentCreated'));
147
+ case 14:
148
+ _context.prev = 14;
149
+ _t3 = _context["catch"](2);
150
+ setError(_t3 instanceof Error ? _t3.message : t('errorAgentCreated'));
104
151
  setIsLoading(false);
105
152
  isProcessingRef.current = false;
106
153
  handleSnackbarError(t('errorAgentCreated'));
107
- case 10:
154
+ case 15:
108
155
  case "end":
109
156
  return _context.stop();
110
157
  }
111
- }, _callee, null, [[2, 9], [5, 7]]);
158
+ }, _callee, null, [[2, 14], [5, 7], [8, 12]]);
112
159
  }));
113
160
  return function handleUpdateAgent(_x) {
114
161
  return _ref.apply(this, arguments);
@@ -126,4 +173,4 @@ export var useUpdateAgent = function useUpdateAgent() {
126
173
  resetSuccess: resetSuccess
127
174
  };
128
175
  };
129
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VTdGF0ZSIsInVzZVJlZiIsInVzZVRyYW5zbGF0aW9uIiwidXBkYXRlQWdlbnQiLCJzZXRBZ2VudFRvb2xHcm91cHMiLCJ1c2VTbmFja0Jhck1hbmFnZXIiLCJidWlsZEFnZW50VG9vbEdyb3Vwc1JlcXVlc3QiLCJidWlsZEFnZW50Q29ubmVjdG9yc0Zyb21UYXNrQWNjZXNzIiwicGFyc2VkVmFsdWVzQnlSZXEiLCJhZ2VudFZhbHVlcyIsIl9hZ2VudFZhbHVlcyRhaU1vZGVsIiwiX2FnZW50VmFsdWVzJGFpTW9kZWwyIiwiaWQiLCJuYW1lIiwiZW1vamkiLCJpbnRyb2R1Y3Rpb24iLCJpbnB1dF9wbGFjZWhvbGRlciIsImlucHV0UGxhY2Vob2xkZXIiLCJ1c2VyX3Byb21wdCIsInVzZXJQcm9tcHQiLCJwcm92aWRlciIsImFpTW9kZWwiLCJtb2RlbF9uYW1lIiwidXNlVXBkYXRlQWdlbnQiLCJfdXNlVHJhbnNsYXRpb24iLCJ0IiwiX3VzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5IiwiaXNMb2FkaW5nIiwic2V0SXNMb2FkaW5nIiwiX3VzZVN0YXRlMyIsIl91c2VTdGF0ZTQiLCJlcnJvciIsInNldEVycm9yIiwiX3VzZVN0YXRlNSIsIl91c2VTdGF0ZTYiLCJzdWNjZXNzIiwic2V0U3VjY2VzcyIsIl91c2VTbmFja0Jhck1hbmFnZXIiLCJoYW5kbGVTbmFja2JhckVycm9yIiwiaXNQcm9jZXNzaW5nUmVmIiwiaGFuZGxlU2V0U3VjY2VzcyIsInZhbHVlIiwiaGFuZGxlVXBkYXRlQWdlbnQiLCJfcmVmIiwiX2FzeW5jVG9HZW5lcmF0b3IiLCJfcmVnZW5lcmF0b3JSdW50aW1lIiwibWFyayIsIl9jYWxsZWUiLCJ2YWx1ZXMiLCJwYXJzZWRWYWx1ZSIsIl92YWx1ZXMkYWNjZXNzaWJpbGl0eSIsIl92YWx1ZXMkYWNjZXNzaWJpbGl0eTIiLCJfdmFsdWVzJGdlbmVyYWwiLCJyZXNwb25zZSIsInRhc2tBY2Nlc3MiLCJhZ2VudElkIiwiX3QiLCJfdDIiLCJ3cmFwIiwiX2NvbnRleHQiLCJwcmV2IiwibmV4dCIsImN1cnJlbnQiLCJhYnJ1cHQiLCJnZW5lcmFsIiwic2VudCIsIkVycm9yIiwiYWNjZXNzaWJpbGl0eSIsInRvU3RyaW5nIiwiY29uc29sZSIsIl9vYmplY3RTcHJlYWQiLCJjb25uZWN0b3JzIiwibWVzc2FnZSIsInN0b3AiLCJfeCIsImFwcGx5IiwiYXJndW1lbnRzIiwicmVzZXRTdWNjZXNzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2hvb2tzL3VzZUFnZW50TW9kZWwvdXNlVXBkYXRlQWdlbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAqL1xuaW1wb3J0IHsgdXNlU3RhdGUsIHVzZVJlZiB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgdXNlVHJhbnNsYXRpb24gfSBmcm9tICdyZWFjdC1pMThuZXh0J1xuaW1wb3J0IHsgQWdlbnRVcGRhdGVSZXF1ZXN0LCB1cGRhdGVBZ2VudCB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL21haWEvQWdlbnRzL3VwZGF0ZUFnZW50J1xuaW1wb3J0IHsgc2V0QWdlbnRUb29sR3JvdXBzIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvbWFpYS9BZ2VudHMvc2V0QWdlbnRUb29sR3JvdXBzJ1xuaW1wb3J0IHsgdXNlU25hY2tCYXJNYW5hZ2VyIH0gZnJvbSAnLi4vdXNlU25hY2tCYXJNYW5hZ2VyL3VzZVNuYWNrQmFyTWFuYWdlcidcbmltcG9ydCB7IGJ1aWxkQWdlbnRUb29sR3JvdXBzUmVxdWVzdCwgYnVpbGRBZ2VudENvbm5lY3RvcnNGcm9tVGFza0FjY2VzcyB9IGZyb20gJy4uLy4uL3V0aWxzL25vcm1hbGl6ZUFnZW50Q29ubmVjdG9ycydcblxuZXhwb3J0IGNvbnN0IHBhcnNlZFZhbHVlc0J5UmVxID0gKGFnZW50VmFsdWVzOiBhbnkpOiBBZ2VudFVwZGF0ZVJlcXVlc3QgPT4ge1xuICByZXR1cm4ge1xuICAgIGlkOiBhZ2VudFZhbHVlcy5pZCxcbiAgICBuYW1lOiBhZ2VudFZhbHVlcy5uYW1lLFxuICAgIGVtb2ppOiBhZ2VudFZhbHVlcy5lbW9qaSB8fCAn4pyoJyxcbiAgICBpbnRyb2R1Y3Rpb246IGFnZW50VmFsdWVzLmludHJvZHVjdGlvbiB8fCAnJyxcbiAgICBpbnB1dF9wbGFjZWhvbGRlcjogYWdlbnRWYWx1ZXMuaW5wdXRQbGFjZWhvbGRlciB8fCAnJyxcbiAgICB1c2VyX3Byb21wdDogYWdlbnRWYWx1ZXMudXNlclByb21wdCxcbiAgICBwcm92aWRlcjogYWdlbnRWYWx1ZXMuYWlNb2RlbD8ucHJvdmlkZXIsXG4gICAgbW9kZWxfbmFtZTogYWdlbnRWYWx1ZXMuYWlNb2RlbD8ubW9kZWxfbmFtZSxcbiAgfVxufVxuXG5leHBvcnQgY29uc3QgdXNlVXBkYXRlQWdlbnQgPSAoKSA9PiB7XG4gIGNvbnN0IHsgdCB9ID0gdXNlVHJhbnNsYXRpb24oJ2FibV9hZ2VudF9zZWN0aW9uJylcbiAgY29uc3QgW2lzTG9hZGluZywgc2V0SXNMb2FkaW5nXSA9IHVzZVN0YXRlKGZhbHNlKVxuICBjb25zdCBbZXJyb3IsIHNldEVycm9yXSA9IHVzZVN0YXRlPHN0cmluZyB8IG51bGw+KG51bGwpXG4gIGNvbnN0IFtzdWNjZXNzLCBzZXRTdWNjZXNzXSA9IHVzZVN0YXRlPGFueT4oZmFsc2UpXG4gIGNvbnN0IHsgaGFuZGxlU25hY2tiYXJFcnJvciB9ID0gdXNlU25hY2tCYXJNYW5hZ2VyKClcbiAgY29uc3QgaXNQcm9jZXNzaW5nUmVmID0gdXNlUmVmKGZhbHNlKVxuXG4gIGNvbnN0IGhhbmRsZVNldFN1Y2Nlc3MgPSAodmFsdWU6IGJvb2xlYW4pID0+IHtcbiAgICBzZXRTdWNjZXNzKHZhbHVlKVxuICB9XG5cbiAgY29uc3QgaGFuZGxlVXBkYXRlQWdlbnQgPSBhc3luYyAodmFsdWVzOiBhbnkpID0+IHtcbiAgICBpZiAoaXNQcm9jZXNzaW5nUmVmLmN1cnJlbnQpIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGNvbnN0IHBhcnNlZFZhbHVlOiBBZ2VudFVwZGF0ZVJlcXVlc3QgPSBwYXJzZWRWYWx1ZXNCeVJlcSh2YWx1ZXMuZ2VuZXJhbClcblxuICAgIGlzUHJvY2Vzc2luZ1JlZi5jdXJyZW50ID0gdHJ1ZVxuICAgIHNldElzTG9hZGluZyh0cnVlKVxuICAgIHNldFN1Y2Nlc3MoZmFsc2UpXG5cbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB1cGRhdGVBZ2VudChwYXJzZWRWYWx1ZSlcblxuICAgICAgaWYgKHJlc3BvbnNlLmVycm9yKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihyZXNwb25zZS5lcnJvcilcbiAgICAgIH1cblxuICAgICAgY29uc3QgdGFza0FjY2VzcyA9IHZhbHVlcy5hY2Nlc3NpYmlsaXR5Py50YXNrQWNjZXNzID8/IHRydWVcbiAgICAgIGNvbnN0IGFnZW50SWQgPSB2YWx1ZXMuZ2VuZXJhbD8uaWRcbiAgICAgIGlmIChhZ2VudElkKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgYXdhaXQgc2V0QWdlbnRUb29sR3JvdXBzKGFnZW50SWQudG9TdHJpbmcoKSwgYnVpbGRBZ2VudFRvb2xHcm91cHNSZXF1ZXN0KHRhc2tBY2Nlc3MpKVxuICAgICAgICB9IGNhdGNoICh0b29sR3JvdXBzRXJyb3IpIHtcbiAgICAgICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBzZXR0aW5nIGFnZW50IHRvb2wgZ3JvdXBzOicsIHRvb2xHcm91cHNFcnJvcilcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBzZXRFcnJvcihudWxsKVxuICAgICAgc2V0U3VjY2Vzcyh7IC4uLnJlc3BvbnNlLCBjb25uZWN0b3JzOiBidWlsZEFnZW50Q29ubmVjdG9yc0Zyb21UYXNrQWNjZXNzKHRhc2tBY2Nlc3MpIH0pXG4gICAgICBzZXRJc0xvYWRpbmcoZmFsc2UpXG4gICAgICBpc1Byb2Nlc3NpbmdSZWYuY3VycmVudCA9IGZhbHNlXG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICBzZXRFcnJvcihlcnIgaW5zdGFuY2VvZiBFcnJvciA/IGVyci5tZXNzYWdlIDogdCgnZXJyb3JBZ2VudENyZWF0ZWQnKSlcbiAgICAgIHNldElzTG9hZGluZyhmYWxzZSlcbiAgICAgIGlzUHJvY2Vzc2luZ1JlZi5jdXJyZW50ID0gZmFsc2VcbiAgICAgIGhhbmRsZVNuYWNrYmFyRXJyb3IodCgnZXJyb3JBZ2VudENyZWF0ZWQnKSlcbiAgICB9XG4gIH1cblxuICBjb25zdCByZXNldFN1Y2Nlc3MgPSAoKSA9PiB7XG4gICAgc2V0U3VjY2VzcyhmYWxzZSlcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgaGFuZGxlVXBkYXRlQWdlbnQsXG4gICAgaXNMb2FkaW5nLFxuICAgIGVycm9yLFxuICAgIHN1Y2Nlc3MsXG4gICAgaGFuZGxlU2V0U3VjY2VzcyxcbiAgICByZXNldFN1Y2Nlc3MsXG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUE7QUFDQSxTQUFTQSxRQUFRLEVBQUVDLE1BQU0sUUFBUSxPQUFPO0FBQ3hDLFNBQVNDLGNBQWMsUUFBUSxlQUFlO0FBQzlDLFNBQTZCQyxXQUFXLFFBQVEsd0NBQXdDO0FBQ3hGLFNBQVNDLGtCQUFrQixRQUFRLCtDQUErQztBQUNsRixTQUFTQyxrQkFBa0IsUUFBUSwwQ0FBMEM7QUFDN0UsU0FBU0MsMkJBQTJCLEVBQUVDLGtDQUFrQyxRQUFRLHNDQUFzQztBQUV0SCxPQUFPLElBQU1DLGlCQUFpQixHQUFHLFNBQXBCQSxpQkFBaUJBLENBQUlDLFdBQWdCLEVBQXlCO0VBQUEsSUFBQUMsb0JBQUEsRUFBQUMscUJBQUE7RUFDekUsT0FBTztJQUNMQyxFQUFFLEVBQUVILFdBQVcsQ0FBQ0csRUFBRTtJQUNsQkMsSUFBSSxFQUFFSixXQUFXLENBQUNJLElBQUk7SUFDdEJDLEtBQUssRUFBRUwsV0FBVyxDQUFDSyxLQUFLLElBQUksR0FBRztJQUMvQkMsWUFBWSxFQUFFTixXQUFXLENBQUNNLFlBQVksSUFBSSxFQUFFO0lBQzVDQyxpQkFB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
176
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VTdGF0ZSIsInVzZVJlZiIsInVzZVRyYW5zbGF0aW9uIiwidXBkYXRlQWdlbnQiLCJzZXRBZ2VudFRvb2xHcm91cHMiLCJjb25uZWN0b3JBdXRoRXJyb3JNZXNzYWdlIiwib3BlbkNvbm5lY3RvckF1dGhvcml6YXRpb25XaW5kb3dzIiwic2F2ZUFnZW50Q29ubmVjdG9ycyIsIndhaXRGb3JDb25uZWN0b3JBdXRob3JpemF0aW9uIiwidXNlU25hY2tCYXJNYW5hZ2VyIiwiYnVpbGRBZ2VudFRvb2xHcm91cHNSZXF1ZXN0IiwiYnVpbGRBZ2VudENvbm5lY3RvcnNGcm9tVGFza0FjY2VzcyIsInBhcnNlZFZhbHVlc0J5UmVxIiwiYWdlbnRWYWx1ZXMiLCJfYWdlbnRWYWx1ZXMkYWlNb2RlbCIsIl9hZ2VudFZhbHVlcyRhaU1vZGVsMiIsImlkIiwibmFtZSIsImVtb2ppIiwiaW50cm9kdWN0aW9uIiwiaW5wdXRfcGxhY2Vob2xkZXIiLCJpbnB1dFBsYWNlaG9sZGVyIiwidXNlcl9wcm9tcHQiLCJ1c2VyUHJvbXB0IiwicHJvdmlkZXIiLCJhaU1vZGVsIiwibW9kZWxfbmFtZSIsInVzZVVwZGF0ZUFnZW50IiwiX3VzZVRyYW5zbGF0aW9uIiwidCIsIl91c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheSIsImlzTG9hZGluZyIsInNldElzTG9hZGluZyIsIl91c2VTdGF0ZTMiLCJfdXNlU3RhdGU0IiwiZXJyb3IiLCJzZXRFcnJvciIsIl91c2VTdGF0ZTUiLCJfdXNlU3RhdGU2Iiwic3VjY2VzcyIsInNldFN1Y2Nlc3MiLCJfdXNlU25hY2tCYXJNYW5hZ2VyIiwiaGFuZGxlU25hY2tiYXJFcnJvciIsImlzUHJvY2Vzc2luZ1JlZiIsImhhbmRsZVNldFN1Y2Nlc3MiLCJ2YWx1ZSIsImhhbmRsZVVwZGF0ZUFnZW50IiwiX3JlZiIsIl9hc3luY1RvR2VuZXJhdG9yIiwiX3JlZ2VuZXJhdG9yUnVudGltZSIsIm1hcmsiLCJfY2FsbGVlIiwidmFsdWVzIiwicGFyc2VkVmFsdWUiLCJfdmFsdWVzJGFjY2Vzc2liaWxpdHkiLCJfdmFsdWVzJGFjY2Vzc2liaWxpdHkyIiwiX3ZhbHVlcyRhY2Nlc3NpYmlsaXR5MyIsIl92YWx1ZXMkZ2VuZXJhbCIsInJlc3BvbnNlIiwidGFza0FjY2VzcyIsInNlbGVjdGVkQ29ubmVjdG9ycyIsImFnZW50SWQiLCJhdXRoUG9wdXAiLCJjb25uZWN0b3JzUmVzcG9uc2UiLCJwZW5kaW5nQXV0aCIsImF1dGhQb3B1cFdpbmRvdyIsImF1dGhFcnJvcnMiLCJfeWllbGQkd2FpdEZvckNvbm5lY3QiLCJhdXRob3JpemVkIiwiYXV0aEVycm9yIiwiX3QiLCJfdDIiLCJfdDMiLCJ3cmFwIiwiX2NvbnRleHQiLCJwcmV2IiwibmV4dCIsImN1cnJlbnQiLCJhYnJ1cHQiLCJnZW5lcmFsIiwic2VudCIsIkVycm9yIiwiYWNjZXNzaWJpbGl0eSIsImxlbmd0aCIsIndpbmRvdyIsIm9wZW4iLCJ0b1N0cmluZyIsImNvbnNvbGUiLCJyZXF1aXJlc19hdXRoIiwiYXV0aF9lcnJvcnMiLCJtYXAiLCJzbHVnIiwiam9pbiIsInNsdWdzIiwiaXRlbSIsInBvcHVwIiwiY2xvc2VkIiwiY2xvc2UiLCJfb2JqZWN0U3ByZWFkIiwiY29ubmVjdG9ycyIsIm1lc3NhZ2UiLCJzdG9wIiwiX3giLCJhcHBseSIsImFyZ3VtZW50cyIsInJlc2V0U3VjY2VzcyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ob29rcy91c2VBZ2VudE1vZGVsL3VzZVVwZGF0ZUFnZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnkgKi9cbmltcG9ydCB7IHVzZVN0YXRlLCB1c2VSZWYgfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IHVzZVRyYW5zbGF0aW9uIH0gZnJvbSAncmVhY3QtaTE4bmV4dCdcbmltcG9ydCB7IEFnZW50VXBkYXRlUmVxdWVzdCwgdXBkYXRlQWdlbnQgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9tYWlhL0FnZW50cy91cGRhdGVBZ2VudCdcbmltcG9ydCB7IHNldEFnZW50VG9vbEdyb3VwcyB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL21haWEvQWdlbnRzL3NldEFnZW50VG9vbEdyb3VwcydcbmltcG9ydCB7IGNvbm5lY3RvckF1dGhFcnJvck1lc3NhZ2UsIG9wZW5Db25uZWN0b3JBdXRob3JpemF0aW9uV2luZG93cywgc2F2ZUFnZW50Q29ubmVjdG9ycywgd2FpdEZvckNvbm5lY3RvckF1dGhvcml6YXRpb24gfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9tYWlhL0FnZW50cy9jb25uZWN0b3JzJ1xuaW1wb3J0IHsgdXNlU25hY2tCYXJNYW5hZ2VyIH0gZnJvbSAnLi4vdXNlU25hY2tCYXJNYW5hZ2VyL3VzZVNuYWNrQmFyTWFuYWdlcidcbmltcG9ydCB7IGJ1aWxkQWdlbnRUb29sR3JvdXBzUmVxdWVzdCwgYnVpbGRBZ2VudENvbm5lY3RvcnNGcm9tVGFza0FjY2VzcyB9IGZyb20gJy4uLy4uL3V0aWxzL25vcm1hbGl6ZUFnZW50Q29ubmVjdG9ycydcblxuZXhwb3J0IGNvbnN0IHBhcnNlZFZhbHVlc0J5UmVxID0gKGFnZW50VmFsdWVzOiBhbnkpOiBBZ2VudFVwZGF0ZVJlcXVlc3QgPT4ge1xuICByZXR1cm4ge1xuICAgIGlkOiBhZ2VudFZhbHVlcy5pZCxcbiAgICBuYW1lOiBhZ2VudFZhbHVlcy5uYW1lLFxuICAgIGVtb2ppOiBhZ2VudFZhbHVlcy5lbW9qaSB8fCAn4pyoJyxcbiAgICBpbnRyb2R1Y3Rpb246IGFnZW50VmFsdWVzLmludHJvZHVjdGlvbiB8fCAnJyxcbiAgICBpbnB1dF9wbGFjZWhvbGRlcjogYWdlbnRWYWx1ZXMuaW5wdXRQbGFjZWhvbGRlciB8fCAnJyxcbiAgICB1c2VyX3Byb21wdDogYWdlbnRWYWx1ZXMudXNlclByb21wdCxcbiAgICBwcm92aWRlcjogYWdlbnRWYWx1ZXMuYWlNb2RlbD8ucHJvdmlkZXIsXG4gICAgbW9kZWxfbmFtZTogYWdlbnRWYWx1ZXMuYWlNb2RlbD8ubW9kZWxfbmFtZSxcbiAgfVxufVxuXG5leHBvcnQgY29uc3QgdXNlVXBkYXRlQWdlbnQgPSAoKSA9PiB7XG4gIGNvbnN0IHsgdCB9ID0gdXNlVHJhbnNsYXRpb24oJ2FibV9hZ2VudF9zZWN0aW9uJylcbiAgY29uc3QgW2lzTG9hZGluZywgc2V0SXNMb2FkaW5nXSA9IHVzZVN0YXRlKGZhbHNlKVxuICBjb25zdCBbZXJyb3IsIHNldEVycm9yXSA9IHVzZVN0YXRlPHN0cmluZyB8IG51bGw+KG51bGwpXG4gIGNvbnN0IFtzdWNjZXNzLCBzZXRTdWNjZXNzXSA9IHVzZVN0YXRlPGFueT4oZmFsc2UpXG4gIGNvbnN0IHsgaGFuZGxlU25hY2tiYXJFcnJvciB9ID0gdXNlU25hY2tCYXJNYW5hZ2VyKClcbiAgY29uc3QgaXNQcm9jZXNzaW5nUmVmID0gdXNlUmVmKGZhbHNlKVxuXG4gIGNvbnN0IGhhbmRsZVNldFN1Y2Nlc3MgPSAodmFsdWU6IGJvb2xlYW4pID0+IHtcbiAgICBzZXRTdWNjZXNzKHZhbHVlKVxuICB9XG5cbiAgY29uc3QgaGFuZGxlVXBkYXRlQWdlbnQgPSBhc3luYyAodmFsdWVzOiBhbnkpID0+IHtcbiAgICBpZiAoaXNQcm9jZXNzaW5nUmVmLmN1cnJlbnQpIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGNvbnN0IHBhcnNlZFZhbHVlOiBBZ2VudFVwZGF0ZVJlcXVlc3QgPSBwYXJzZWRWYWx1ZXNCeVJlcSh2YWx1ZXMuZ2VuZXJhbClcblxuICAgIGlzUHJvY2Vzc2luZ1JlZi5jdXJyZW50ID0gdHJ1ZVxuICAgIHNldElzTG9hZGluZyh0cnVlKVxuICAgIHNldFN1Y2Nlc3MoZmFsc2UpXG5cbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB1cGRhdGVBZ2VudChwYXJzZWRWYWx1ZSlcblxuICAgICAgaWYgKHJlc3BvbnNlLmVycm9yKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihyZXNwb25zZS5lcnJvcilcbiAgICAgIH1cblxuICAgICAgY29uc3QgdGFza0FjY2VzcyA9IHZhbHVlcy5hY2Nlc3NpYmlsaXR5Py50YXNrQWNjZXNzID8/IHRydWVcbiAgICAgIGNvbnN0IHNlbGVjdGVkQ29ubmVjdG9yczogc3RyaW5nW10gPSB2YWx1ZXMuYWNjZXNzaWJpbGl0eT8uc2VsZWN0ZWRDb25uZWN0b3JzIHx8IFtdXG4gICAgICBjb25zdCBhZ2VudElkID0gdmFsdWVzLmdlbmVyYWw/LmlkXG4gICAgICBjb25zdCBhdXRoUG9wdXAgPVxuICAgICAgICBzZWxlY3RlZENvbm5lY3RvcnMubGVuZ3RoID4gMCA/IHdpbmRvdy5vcGVuKCcnLCAnX2JsYW5rJywgJ3BvcHVwPXllcyx3aWR0aD01NjAsaGVpZ2h0PTc2MCcpIDogbnVsbFxuICAgICAgaWYgKGFnZW50SWQpIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBhd2FpdCBzZXRBZ2VudFRvb2xHcm91cHMoYWdlbnRJZC50b1N0cmluZygpLCBidWlsZEFnZW50VG9vbEdyb3Vwc1JlcXVlc3QodGFza0FjY2VzcykpXG4gICAgICAgIH0gY2F0Y2ggKHRvb2xHcm91cHNFcnJvcikge1xuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIHNldHRpbmcgYWdlbnQgdG9vbCBncm91cHM6JywgdG9vbEdyb3Vwc0Vycm9yKVxuICAgICAgICB9XG5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBjb25zdCBjb25uZWN0b3JzUmVzcG9uc2UgPSBhd2FpdCBzYXZlQWdlbnRDb25uZWN0b3JzKGFnZW50SWQudG9TdHJpbmcoKSwgc2VsZWN0ZWRDb25uZWN0b3JzKVxuICAgICAgICAgIGNvbnN0IHBlbmRpbmdBdXRoID0gY29ubmVjdG9yc1Jlc3BvbnNlLnJlcXVpcmVzX2F1dGggfHwgW11cbiAgICAgICAgICBjb25zdCBhdXRoUG9wdXBXaW5kb3cgPSBvcGVuQ29ubmVjdG9yQXV0aG9yaXphdGlvbldpbmRvd3MocGVuZGluZ0F1dGgsIGF1dGhQb3B1cClcbiAgICAgICAgICBjb25zdCBhdXRoRXJyb3JzID0gY29ubmVjdG9yc1Jlc3BvbnNlLmF1dGhfZXJyb3JzIHx8IFtdXG4gICAgICAgICAgaWYgKGF1dGhFcnJvcnMubGVuZ3RoKSB7XG4gICAgICAgICAgICBoYW5kbGVTbmFja2JhckVycm9yKFxuICAgICAgICAgICAgICBhdXRoRXJyb3JzLm1hcChlcnJvciA9PlxuICAgICAgICAgICAgICAgIGVycm9yLnNsdWcgPT09ICduZXRzdWl0ZScgPyB0KCdhY2Nlc3NpYmlsaXR5U2VjdGlvbi5uZXRzdWl0ZUF1dGhTZXR1cFJlcXVpcmVkJykgOiBjb25uZWN0b3JBdXRoRXJyb3JNZXNzYWdlKGVycm9yKVxuICAgICAgICAgICAgICApLmpvaW4oJyAnKVxuICAgICAgICAgICAgKVxuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAocGVuZGluZ0F1dGgubGVuZ3RoKSB7XG4gICAgICAgICAgICBjb25zdCB7IGF1dGhvcml6ZWQsIGVycm9yOiBhdXRoRXJyb3IgfSA9IGF3YWl0IHdhaXRGb3JDb25uZWN0b3JBdXRob3JpemF0aW9uKHtcbiAgICAgICAgICAgICAgYWdlbnRJZDogYWdlbnRJZC50b1N0cmluZygpLFxuICAgICAgICAgICAgICBzbHVnczogcGVuZGluZ0F1dGgubWFwKGl0ZW0gPT4gaXRlbS5zbHVnKSxcbiAgICAgICAgICAgICAgcG9wdXA6IGF1dGhQb3B1cFdpbmRvdyxcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICBpZiAoIWF1dGhvcml6ZWQubGVuZ3RoKSB7XG4gICAgICAgICAgICAgIGhhbmRsZVNuYWNrYmFyRXJyb3IoYXV0aEVycm9yICYmIGF1dGhFcnJvciAhPT0gJ3RpbWVvdXQnXG4gICAgICAgICAgICAgICAgPyBhdXRoRXJyb3JcbiAgICAgICAgICAgICAgICA6IHQoJ2FjY2Vzc2liaWxpdHlTZWN0aW9uLmNvbm5lY3RvckF1dGhJbmNvbXBsZXRlJykpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9IGNhdGNoIChjb25uZWN0b3JzRXJyb3IpIHtcbiAgICAgICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBzZXR0aW5nIGFnZW50IGNvbm5lY3RvcnM6JywgY29ubmVjdG9yc0Vycm9yKVxuICAgICAgICAgIGlmIChhdXRoUG9wdXAgJiYgIWF1dGhQb3B1cC5jbG9zZWQpIHtcbiAgICAgICAgICAgIGF1dGhQb3B1cC5jbG9zZSgpXG4gICAgICAgICAgfVxuICAgICAgICAgIGhhbmRsZVNuYWNrYmFyRXJyb3IodCgnYWNjZXNzaWJpbGl0eVNlY3Rpb24uY29ubmVjdG9yQXV0aEZhaWxlZCcpKVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHNldEVycm9yKG51bGwpXG4gICAgICBzZXRTdWNjZXNzKHsgLi4ucmVzcG9uc2UsIGNvbm5lY3RvcnM6IGJ1aWxkQWdlbnRDb25uZWN0b3JzRnJvbVRhc2tBY2Nlc3ModGFza0FjY2Vzcywgc2VsZWN0ZWRDb25uZWN0b3JzKSB9KVxuICAgICAgc2V0SXNMb2FkaW5nKGZhbHNlKVxuICAgICAgaXNQcm9jZXNzaW5nUmVmLmN1cnJlbnQgPSBmYWxzZVxuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgc2V0RXJyb3IoZXJyIGluc3RhbmNlb2YgRXJyb3IgPyBlcnIubWVzc2FnZSA6IHQoJ2Vycm9yQWdlbnRDcmVhdGVkJykpXG4gICAgICBzZXRJc0xvYWRpbmcoZmFsc2UpXG4gICAgICBpc1Byb2Nlc3NpbmdSZWYuY3VycmVudCA9IGZhbHNlXG4gICAgICBoYW5kbGVTbmFja2JhckVycm9yKHQoJ2Vycm9yQWdlbnRDcmVhdGVkJykpXG4gICAgfVxuICB9XG5cbiAgY29uc3QgcmVzZXRTdWNjZXNzID0gKCkgPT4ge1xuICAgIHNldFN1Y2Nlc3MoZmFsc2UpXG4gIH1cblxuICByZXR1cm4ge1xuICAgIGhhbmRsZVVwZGF0ZUFnZW50LFxuICAgIGlzTG9hZGluZyxcbiAgICBlcnJvcixcbiAgICBzdWNjZXNzLFxuICAgIGhhbmRsZVNldFN1Y2Nlc3MsXG4gICAgcmVzZXRTdWNjZXNzLFxuICB9XG59XG4i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