@projectcor/maia-components 2.11.94-0 → 2.11.95

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 (131) hide show
  1. package/CHANGELOG.md +100 -0
  2. package/lib/components/atoms/AgentActivityIndicator/AgentActivityIndicator.styles.js +2 -2
  3. package/lib/components/atoms/AttachmentPreviewModal/AttachmentPreviewModal.js +28 -41
  4. package/lib/components/atoms/AttachmentPreviewModal/WordPreview.js +128 -0
  5. package/lib/components/atoms/ContextMentionChip/ContextMentionChip.styles.js +7 -3
  6. package/lib/components/atoms/ContextMentionEditor/ContextMentionEditor.js +41 -2
  7. package/lib/components/atoms/ContextMentionItem/ContextMentionItem.js +29 -2
  8. package/lib/components/atoms/ContextMentionItem/ContextMentionItem.styles.js +33 -24
  9. package/lib/components/atoms/ContextMentionPopover/ContextMentionPopover.js +23 -4
  10. package/lib/components/atoms/FrequentlyUsedActions/FrequentlyUsedActions.js +15 -7
  11. package/lib/components/atoms/FrequentlyUsedActions/FrequentlyUsedActions.styles.js +10 -4
  12. package/lib/components/atoms/MAIAInput/MAIAInput.js +47 -26
  13. package/lib/components/atoms/icons/ActionCalendarIcon.js +112 -0
  14. package/lib/components/atoms/icons/ActionChatIcon.js +71 -0
  15. package/lib/components/atoms/icons/ActionTimeBackIcon.js +112 -0
  16. package/lib/components/atoms/icons/SkillIcon.js +30 -0
  17. package/lib/components/atoms/icons/SkillsNavIcon.js +27 -0
  18. package/lib/components/atoms/icons/index.js +3 -2
  19. package/lib/components/molecules/AbmSection/AbmAccessibilitySection/AbmAccessibilitySection.js +4 -1
  20. package/lib/components/molecules/ChatAIContent/ChatAIContent.js +14 -1
  21. package/lib/components/molecules/ChatAIContent/ChatAIContent.skeleton.js +3 -3
  22. package/lib/components/molecules/ChatAIHome/ChatAIHome.js +117 -30
  23. package/lib/components/molecules/ChatAIHome/styles.js +142 -49
  24. package/lib/components/molecules/ChatAIMessages/ChatAIMessages.js +12 -48
  25. package/lib/components/molecules/ChatAIMessages/ChatAISuggestions.js +6 -2
  26. package/lib/components/molecules/ChatAIMessages/newStyles.js +2 -2
  27. package/lib/components/molecules/ChatAIModal/ChatAIModal.js +122 -212
  28. package/lib/components/molecules/ChatAIModal/ChatAIModal.styles.js +18 -28
  29. package/lib/components/molecules/ChatAIModal/components/ChatAiModalFooter/ChatAiModalFooter.js +3 -10
  30. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.js +7 -17
  31. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.styles.js +1 -5
  32. package/lib/components/molecules/ChatAIModal/constants.js +6 -2
  33. package/lib/components/molecules/ChatAIModal/layout.js +2 -2
  34. package/lib/components/molecules/ChatAIMyAgents/ChatAIMyAgents.js +3 -3
  35. package/lib/components/molecules/ChatAIMySkills/ChatAIMySkills.js +357 -0
  36. package/lib/components/molecules/ChatAIMySkills/ChatAIMySkills.styles.js +145 -0
  37. package/lib/components/molecules/ChatAIMySkills/index.js +2 -0
  38. package/lib/components/molecules/ChatFooter/ChatFooter.js +19 -8
  39. package/lib/components/molecules/ContextMentionInput/ContextMentionInput.js +3 -1
  40. package/lib/components/molecules/Sidebar/Sidebar.js +93 -112
  41. package/lib/components/molecules/Sidebar/Sidebar.layout.styles.js +1 -16
  42. package/lib/components/molecules/Sidebar/Sidebar.styles.js +29 -34
  43. package/lib/components/organisms/AbmSkillGenerateModal/AbmSkillGenerateModal.js +175 -0
  44. package/lib/components/organisms/AbmSkillGenerateModal/AbmSkillGenerateModal.styles.js +34 -0
  45. package/lib/components/organisms/AbmSkillGenerateModal/index.js +2 -0
  46. package/lib/components/organisms/AbmSkillModal/AbmSkillModal.js +451 -0
  47. package/lib/components/organisms/AbmSkillModal/AbmSkillModal.styles.js +98 -0
  48. package/lib/components/organisms/AbmSkillModal/index.js +2 -0
  49. package/lib/components/organisms/ChatAI/ChatAI.js +17 -10
  50. package/lib/components/organisms/DeleteQuestionModal/DeleteQuestionModal.js +8 -1
  51. package/lib/constants/config.js +4 -1
  52. package/lib/constants/maiaHourAgentAccess.js +15 -0
  53. package/lib/constants/maiaTaskPanelAccess.js +4 -4
  54. package/lib/constants/permissions/index.js +2 -2
  55. package/lib/constants/permissions/utils.js +4 -1
  56. package/lib/constants/plannerSyncEvents.js +15 -0
  57. package/lib/context/cor-user.js +9 -1
  58. package/lib/context/global-context.js +1 -1
  59. package/lib/dev/DevChatAI.js +2 -2
  60. package/lib/hooks/useChatManager/useChatManager.js +456 -560
  61. package/lib/hooks/useChatMessages/useChatMessages.js +236 -414
  62. package/lib/hooks/useChats/useChats.js +4 -21
  63. package/lib/hooks/useContextMentions.js +51 -9
  64. package/lib/hooks/useContextPinPopover.js +1 -8
  65. package/lib/hooks/useEntitySearch.js +277 -91
  66. package/lib/hooks/useEvent.js +2 -1
  67. package/lib/hooks/useFrequentlyUsedActions.js +4 -2
  68. package/lib/hooks/useMentionAllowedTypes.js +26 -8
  69. package/lib/hooks/useMentionPopover.js +43 -13
  70. package/lib/hooks/useOrchestratorStream/useOrchestratorStream.interface.js +1 -1
  71. package/lib/hooks/useOrchestratorStream/useOrchestratorStream.js +521 -139
  72. package/lib/hooks/useProjectSummaryConfig.js +23 -30
  73. package/lib/hooks/useSlashCommands.js +3 -2
  74. package/lib/hooks/useStreamingMessage/index.js +3 -2
  75. package/lib/hooks/useStreamingMessage/streamingStore.js +69 -0
  76. package/lib/hooks/useStreamingMessage/useStreamingMessage.js +17 -13
  77. package/lib/lang/br/index.js +73 -15
  78. package/lib/lang/en/index.js +73 -15
  79. package/lib/lang/es/index.js +73 -15
  80. package/lib/lang/fr/index.js +70 -17
  81. package/lib/services/appcues.js +3 -2
  82. package/lib/services/maia/Actions/getFrequentlyUsedActions.js +1 -1
  83. package/lib/services/maia/Agents/getAgents.js +3 -6
  84. package/lib/services/maia/Chats/getChatsByUserId.js +4 -6
  85. package/lib/services/maia/Chats/index.js +1 -3
  86. package/lib/services/maia/Orchestrator/orchestrator.js +1 -7
  87. package/lib/services/maia/Skills/createSkill.js +39 -0
  88. package/lib/services/maia/Skills/deleteSkill.js +38 -0
  89. package/lib/services/maia/Skills/generateSkill.js +41 -0
  90. package/lib/services/maia/Skills/getSkills.js +90 -0
  91. package/lib/services/maia/Skills/updateSkill.js +39 -0
  92. package/lib/store/chatsStore.types.js +1 -1
  93. package/lib/store/useChatsStore.js +12 -149
  94. package/lib/types/Action.js +1 -1
  95. package/lib/types/Chat.js +1 -1
  96. package/lib/types/agent.js +1 -1
  97. package/lib/types/contextMention.js +1 -1
  98. package/lib/types/global.d.js +1 -1
  99. package/lib/types/skill.js +2 -0
  100. package/lib/utils/actionCategoryMap.js +6 -2
  101. package/lib/utils/actionIconMap.js +8 -2
  102. package/lib/utils/contextMentionIcons.js +29 -1
  103. package/lib/utils/contextMentionTriggers.js +6 -3
  104. package/lib/utils/hoursPlannerQuickActionType.js +64 -0
  105. package/lib/utils/orchestratorSubagents.js +11 -0
  106. package/lib/utils/renderContextMentions.js +9 -4
  107. package/lib/utils/streamActivityMessages.js +2 -1
  108. package/package.json +15 -10
  109. package/lib/components/atoms/SessionGeneratingDot/SessionGeneratingDot.js +0 -17
  110. package/lib/components/atoms/SessionGeneratingDot/SessionGeneratingDot.styles.js +0 -15
  111. package/lib/components/atoms/SessionGeneratingDot/index.js +0 -2
  112. package/lib/components/atoms/icons/MaiaSparkleIcon.js +0 -75
  113. package/lib/components/molecules/ChatAIModal/components/MaiaMinimizedPill/MaiaMinimizedPill.js +0 -55
  114. package/lib/components/molecules/ChatAIModal/components/MaiaMinimizedPill/MaiaMinimizedPill.styles.js +0 -46
  115. package/lib/components/molecules/ChatAIModal/components/MaiaMinimizedPill/index.js +0 -2
  116. package/lib/services/maia/Chats/markSessionAsRead.js +0 -32
  117. package/lib/store/chatsSidebarOptimistic.js +0 -92
  118. package/lib/store/maiaMinimizedPersistence.js +0 -49
  119. package/lib/store/sessions/activeView.js +0 -22
  120. package/lib/store/sessions/index.js +0 -9
  121. package/lib/store/sessions/sessionHitlContext.js +0 -15
  122. package/lib/store/sessions/sessionNotificationSound.js +0 -57
  123. package/lib/store/sessions/sessionNotifications.js +0 -110
  124. package/lib/store/sessions/sessionNotifications.types.js +0 -2
  125. package/lib/store/sessions/sessionStreamManager.js +0 -576
  126. package/lib/store/sessions/sessionStreamingText.js +0 -80
  127. package/lib/store/sessions/sessions.types.js +0 -35
  128. package/lib/store/sessions/useSessionMeta.js +0 -39
  129. package/lib/store/sessions/useSessionStreamingText.js +0 -18
  130. package/lib/store/sessions/useSessionsStore.js +0 -197
  131. package/lib/utils/formatUnreadCount.js +0 -6
@@ -1,110 +0,0 @@
1
- import i18n from '../../lang';
2
- import { SECTIONS } from '../../constants/config';
3
- import { formatChatListTitleMentions } from '../../utils/renderContextMentions';
4
- import { ChatHistoryRole } from '../../types/Chat';
5
- import { useChatsStore } from '../useChatsStore';
6
- import { useSessionsStore } from './useSessionsStore';
7
- import { activeView } from './activeView';
8
- import { playSessionFinishedSound } from './sessionNotificationSound';
9
- var initialized = false;
10
- var resolveSessionNotificationTitle = function resolveSessionNotificationTitle(sessionId) {
11
- var _chat$title, _meta$title, _userMessage$message;
12
- var chat = useChatsStore.getState().chats.find(function (item) {
13
- return item.sessionExternalId === sessionId;
14
- });
15
- if (chat !== null && chat !== void 0 && (_chat$title = chat.title) !== null && _chat$title !== void 0 && _chat$title.trim()) {
16
- return formatChatListTitleMentions(chat.title);
17
- }
18
- var meta = useSessionsStore.getState().getMeta(sessionId);
19
- if (meta !== null && meta !== void 0 && (_meta$title = meta.title) !== null && _meta$title !== void 0 && _meta$title.trim()) {
20
- return meta.title.trim();
21
- }
22
- var messages = useSessionsStore.getState().getMessages(sessionId);
23
- var userMessage = messages.find(function (msg) {
24
- var _msg$user;
25
- return msg.role === ChatHistoryRole.USER || ((_msg$user = msg.user) === null || _msg$user === void 0 ? void 0 : _msg$user.id) && msg.user.id !== 'assistant';
26
- });
27
- var raw = userMessage === null || userMessage === void 0 || (_userMessage$message = userMessage.message) === null || _userMessage$message === void 0 ? void 0 : _userMessage$message.trim();
28
- if (raw) {
29
- return raw.length > 60 ? "".concat(raw.slice(0, 60), "\u2026") : raw;
30
- }
31
- return i18n.t('conversations.emptyLabel', {
32
- ns: SECTIONS.chatAI,
33
- defaultValue: 'Conversation'
34
- });
35
- };
36
- var buildNotificationMessage = function buildNotificationMessage(kind, title) {
37
- var truncatedTitle = title.length > 48 ? "".concat(title.slice(0, 48), "\u2026") : title;
38
- if (kind === 'approval_required') {
39
- return i18n.t('conversations.sessionFinishedApproval', {
40
- ns: SECTIONS.chatAI,
41
- title: truncatedTitle,
42
- defaultValue: '{{title}} requires your approval'
43
- });
44
- }
45
- if (kind === 'error') {
46
- return i18n.t('conversations.sessionFinishedError', {
47
- ns: SECTIONS.chatAI,
48
- title: truncatedTitle,
49
- defaultValue: '{{title}} encountered an error'
50
- });
51
- }
52
- return i18n.t('conversations.sessionFinished', {
53
- ns: SECTIONS.chatAI,
54
- title: truncatedTitle,
55
- defaultValue: '{{title}} finished responding'
56
- });
57
- };
58
- var showBrowserNotificationIfAllowed = function showBrowserNotificationIfAllowed(message) {
59
- if (typeof window === 'undefined' || !('Notification' in window)) return;
60
- if (Notification.permission !== 'granted') return;
61
- if (!document.hidden) return;
62
- try {
63
- // eslint-disable-next-line no-new
64
- new Notification('MAIA', {
65
- body: message,
66
- tag: 'maia-session-finished'
67
- });
68
- } catch (_unused) {
69
- // ignore
70
- }
71
- };
72
- var handleSessionFinishedEvent = function handleSessionFinishedEvent(event) {
73
- var _ref = event,
74
- detail = _ref.detail;
75
- if (!(detail !== null && detail !== void 0 && detail.sessionId)) return;
76
- playSessionFinishedSound();
77
- var message = buildNotificationMessage(detail.kind, resolveSessionNotificationTitle(detail.sessionId));
78
- document.dispatchEvent(new CustomEvent('snackbar-event', {
79
- detail: {
80
- show: true,
81
- severity: detail.kind === 'error' ? 'error' : 'info',
82
- message: message,
83
- autoHideDuration: 5000
84
- }
85
- }));
86
- showBrowserNotificationIfAllowed(message);
87
- };
88
-
89
- /** Registra el listener global (idempotente). Sobrevive al desmontaje del chat visible. */
90
- export var ensureSessionNotificationsInitialized = function ensureSessionNotificationsInitialized() {
91
- if (initialized || typeof document === 'undefined') return;
92
- initialized = true;
93
- document.addEventListener('maia-session-finished', handleSessionFinishedEvent);
94
- };
95
-
96
- /**
97
- * Marca unread y emite evento solo si la sesión NO es la que el usuario está mirando.
98
- * Toast + sonido los consume `ensureSessionNotificationsInitialized`.
99
- */
100
- export var notifySessionFinishedInBackground = function notifySessionFinishedInBackground(sessionId, kind) {
101
- ensureSessionNotificationsInitialized();
102
- if (activeView.is(sessionId)) return;
103
- document.dispatchEvent(new CustomEvent('maia-session-finished', {
104
- detail: {
105
- sessionId: sessionId,
106
- kind: kind
107
- }
108
- }));
109
- };
110
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJpMThuIiwiU0VDVElPTlMiLCJmb3JtYXRDaGF0TGlzdFRpdGxlTWVudGlvbnMiLCJDaGF0SGlzdG9yeVJvbGUiLCJ1c2VDaGF0c1N0b3JlIiwidXNlU2Vzc2lvbnNTdG9yZSIsImFjdGl2ZVZpZXciLCJwbGF5U2Vzc2lvbkZpbmlzaGVkU291bmQiLCJpbml0aWFsaXplZCIsInJlc29sdmVTZXNzaW9uTm90aWZpY2F0aW9uVGl0bGUiLCJzZXNzaW9uSWQiLCJfY2hhdCR0aXRsZSIsIl9tZXRhJHRpdGxlIiwiX3VzZXJNZXNzYWdlJG1lc3NhZ2UiLCJjaGF0IiwiZ2V0U3RhdGUiLCJjaGF0cyIsImZpbmQiLCJpdGVtIiwic2Vzc2lvbkV4dGVybmFsSWQiLCJ0aXRsZSIsInRyaW0iLCJtZXRhIiwiZ2V0TWV0YSIsIm1lc3NhZ2VzIiwiZ2V0TWVzc2FnZXMiLCJ1c2VyTWVzc2FnZSIsIm1zZyIsIl9tc2ckdXNlciIsInJvbGUiLCJVU0VSIiwidXNlciIsImlkIiwicmF3IiwibWVzc2FnZSIsImxlbmd0aCIsImNvbmNhdCIsInNsaWNlIiwidCIsIm5zIiwiY2hhdEFJIiwiZGVmYXVsdFZhbHVlIiwiYnVpbGROb3RpZmljYXRpb25NZXNzYWdlIiwia2luZCIsInRydW5jYXRlZFRpdGxlIiwic2hvd0Jyb3dzZXJOb3RpZmljYXRpb25JZkFsbG93ZWQiLCJ3aW5kb3ciLCJOb3RpZmljYXRpb24iLCJwZXJtaXNzaW9uIiwiZG9jdW1lbnQiLCJoaWRkZW4iLCJib2R5IiwidGFnIiwiX3VudXNlZCIsImhhbmRsZVNlc3Npb25GaW5pc2hlZEV2ZW50IiwiZXZlbnQiLCJfcmVmIiwiZGV0YWlsIiwiZGlzcGF0Y2hFdmVudCIsIkN1c3RvbUV2ZW50Iiwic2hvdyIsInNldmVyaXR5IiwiYXV0b0hpZGVEdXJhdGlvbiIsImVuc3VyZVNlc3Npb25Ob3RpZmljYXRpb25zSW5pdGlhbGl6ZWQiLCJhZGRFdmVudExpc3RlbmVyIiwibm90aWZ5U2Vzc2lvbkZpbmlzaGVkSW5CYWNrZ3JvdW5kIiwiaXMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc3RvcmUvc2Vzc2lvbnMvc2Vzc2lvbk5vdGlmaWNhdGlvbnMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGkxOG4gZnJvbSAnLi4vLi4vbGFuZydcbmltcG9ydCB7IFNFQ1RJT05TIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzL2NvbmZpZydcbmltcG9ydCB7IGZvcm1hdENoYXRMaXN0VGl0bGVNZW50aW9ucyB9IGZyb20gJy4uLy4uL3V0aWxzL3JlbmRlckNvbnRleHRNZW50aW9ucydcbmltcG9ydCB7IENoYXRIaXN0b3J5Um9sZSB9IGZyb20gJy4uLy4uL3R5cGVzL0NoYXQnXG5pbXBvcnQgeyB1c2VDaGF0c1N0b3JlIH0gZnJvbSAnLi4vdXNlQ2hhdHNTdG9yZSdcbmltcG9ydCB7IHVzZVNlc3Npb25zU3RvcmUgfSBmcm9tICcuL3VzZVNlc3Npb25zU3RvcmUnXG5pbXBvcnQgeyBhY3RpdmVWaWV3IH0gZnJvbSAnLi9hY3RpdmVWaWV3J1xuaW1wb3J0IHsgcGxheVNlc3Npb25GaW5pc2hlZFNvdW5kIH0gZnJvbSAnLi9zZXNzaW9uTm90aWZpY2F0aW9uU291bmQnXG5pbXBvcnQgdHlwZSB7IE1haWFTZXNzaW9uRmluaXNoZWREZXRhaWwsIFNlc3Npb25GaW5pc2hlZEtpbmQgfSBmcm9tICcuL3Nlc3Npb25Ob3RpZmljYXRpb25zLnR5cGVzJ1xuXG5sZXQgaW5pdGlhbGl6ZWQgPSBmYWxzZVxuXG5jb25zdCByZXNvbHZlU2Vzc2lvbk5vdGlmaWNhdGlvblRpdGxlID0gKHNlc3Npb25JZDogc3RyaW5nKTogc3RyaW5nID0+IHtcbiAgY29uc3QgY2hhdCA9IHVzZUNoYXRzU3RvcmUuZ2V0U3RhdGUoKS5jaGF0cy5maW5kKGl0ZW0gPT4gaXRlbS5zZXNzaW9uRXh0ZXJuYWxJZCA9PT0gc2Vzc2lvbklkKVxuICBpZiAoY2hhdD8udGl0bGU/LnRyaW0oKSkge1xuICAgIHJldHVybiBmb3JtYXRDaGF0TGlzdFRpdGxlTWVudGlvbnMoY2hhdC50aXRsZSlcbiAgfVxuXG4gIGNvbnN0IG1ldGEgPSB1c2VTZXNzaW9uc1N0b3JlLmdldFN0YXRlKCkuZ2V0TWV0YShzZXNzaW9uSWQpXG4gIGlmIChtZXRhPy50aXRsZT8udHJpbSgpKSB7XG4gICAgcmV0dXJuIG1ldGEudGl0bGUudHJpbSgpXG4gIH1cblxuICBjb25zdCBtZXNzYWdlcyA9IHVzZVNlc3Npb25zU3RvcmUuZ2V0U3RhdGUoKS5nZXRNZXNzYWdlcyhzZXNzaW9uSWQpXG4gIGNvbnN0IHVzZXJNZXNzYWdlID0gbWVzc2FnZXMuZmluZChcbiAgICBtc2cgPT4gbXNnLnJvbGUgPT09IENoYXRIaXN0b3J5Um9sZS5VU0VSIHx8IChtc2cudXNlcj8uaWQgJiYgbXNnLnVzZXIuaWQgIT09ICdhc3Npc3RhbnQnKVxuICApXG4gIGNvbnN0IHJhdyA9IHVzZXJNZXNzYWdlPy5tZXNzYWdlPy50cmltKClcbiAgaWYgKHJhdykge1xuICAgIHJldHVybiByYXcubGVuZ3RoID4gNjAgPyBgJHtyYXcuc2xpY2UoMCwgNjApfeKApmAgOiByYXdcbiAgfVxuXG4gIHJldHVybiBpMThuLnQoJ2NvbnZlcnNhdGlvbnMuZW1wdHlMYWJlbCcsIHtcbiAgICBuczogU0VDVElPTlMuY2hhdEFJLFxuICAgIGRlZmF1bHRWYWx1ZTogJ0NvbnZlcnNhdGlvbicsXG4gIH0pXG59XG5cbmNvbnN0IGJ1aWxkTm90aWZpY2F0aW9uTWVzc2FnZSA9IChraW5kOiBTZXNzaW9uRmluaXNoZWRLaW5kLCB0aXRsZTogc3RyaW5nKTogc3RyaW5nID0+IHtcbiAgY29uc3QgdHJ1bmNhdGVkVGl0bGUgPSB0aXRsZS5sZW5ndGggPiA0OCA/IGAke3RpdGxlLnNsaWNlKDAsIDQ4KX3igKZgIDogdGl0bGVcblxuICBpZiAoa2luZCA9PT0gJ2FwcHJvdmFsX3JlcXVpcmVkJykge1xuICAgIHJldHVybiBpMThuLnQoJ2NvbnZlcnNhdGlvbnMuc2Vzc2lvbkZpbmlzaGVkQXBwcm92YWwnLCB7XG4gICAgICBuczogU0VDVElPTlMuY2hhdEFJLFxuICAgICAgdGl0bGU6IHRydW5jYXRlZFRpdGxlLFxuICAgICAgZGVmYXVsdFZhbHVlOiAne3t0aXRsZX19IHJlcXVpcmVzIHlvdXIgYXBwcm92YWwnLFxuICAgIH0pXG4gIH1cblxuICBpZiAoa2luZCA9PT0gJ2Vycm9yJykge1xuICAgIHJldHVybiBpMThuLnQoJ2NvbnZlcnNhdGlvbnMuc2Vzc2lvbkZpbmlzaGVkRXJyb3InLCB7XG4gICAgICBuczogU0VDVElPTlMuY2hhdEFJLFxuICAgICAgdGl0bGU6IHRydW5jYXRlZFRpdGxlLFxuICAgICAgZGVmYXVsdFZhbHVlOiAne3t0aXRsZX19IGVuY291bnRlcmVkIGFuIGVycm9yJyxcbiAgICB9KVxuICB9XG5cbiAgcmV0dXJuIGkxOG4udCgnY29udmVyc2F0aW9ucy5zZXNzaW9uRmluaXNoZWQnLCB7XG4gICAgbnM6IFNFQ1RJT05TLmNoYXRBSSxcbiAgICB0aXRsZTogdHJ1bmNhdGVkVGl0bGUsXG4gICAgZGVmYXVsdFZhbHVlOiAne3t0aXRsZX19IGZpbmlzaGVkIHJlc3BvbmRpbmcnLFxuICB9KVxufVxuXG5jb25zdCBzaG93QnJvd3Nlck5vdGlmaWNhdGlvbklmQWxsb3dlZCA9IChtZXNzYWdlOiBzdHJpbmcpOiB2b2lkID0+IHtcbiAgaWYgKHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnIHx8ICEoJ05vdGlmaWNhdGlvbicgaW4gd2luZG93KSkgcmV0dXJuXG4gIGlmIChOb3RpZmljYXRpb24ucGVybWlzc2lvbiAhPT0gJ2dyYW50ZWQnKSByZXR1cm5cbiAgaWYgKCFkb2N1bWVudC5oaWRkZW4pIHJldHVyblxuXG4gIHRyeSB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLW5ld1xuICAgIG5ldyBOb3RpZmljYXRpb24oJ01BSUEnLCB7IGJvZHk6IG1lc3NhZ2UsIHRhZzogJ21haWEtc2Vzc2lvbi1maW5pc2hlZCcgfSlcbiAgfSBjYXRjaCB7XG4gICAgLy8gaWdub3JlXG4gIH1cbn1cblxuY29uc3QgaGFuZGxlU2Vzc2lvbkZpbmlzaGVkRXZlbnQgPSAoZXZlbnQ6IEV2ZW50KTogdm9pZCA9PiB7XG4gIGNvbnN0IHsgZGV0YWlsIH0gPSBldmVudCBhcyBDdXN0b21FdmVudDxNYWlhU2Vzc2lvbkZpbmlzaGVkRGV0YWlsPlxuICBpZiAoIWRldGFpbD8uc2Vzc2lvbklkKSByZXR1cm5cblxuICBwbGF5U2Vzc2lvbkZpbmlzaGVkU291bmQoKVxuXG4gIGNvbnN0IG1lc3NhZ2UgPSBidWlsZE5vdGlmaWNhdGlvbk1lc3NhZ2UoZGV0YWlsLmtpbmQsIHJlc29sdmVTZXNzaW9uTm90aWZpY2F0aW9uVGl0bGUoZGV0YWlsLnNlc3Npb25JZCkpXG5cbiAgZG9jdW1lbnQuZGlzcGF0Y2hFdmVudChcbiAgICBuZXcgQ3VzdG9tRXZlbnQoJ3NuYWNrYmFyLWV2ZW50Jywge1xuICAgICAgZGV0YWlsOiB7XG4gICAgICAgIHNob3c6IHRydWUsXG4gICAgICAgIHNldmVyaXR5OiBkZXRhaWwua2luZCA9PT0gJ2Vycm9yJyA/ICdlcnJvcicgOiAnaW5mbycsXG4gICAgICAgIG1lc3NhZ2UsXG4gICAgICAgIGF1dG9IaWRlRHVyYXRpb246IDUwMDAsXG4gICAgICB9LFxuICAgIH0pXG4gIClcblxuICBzaG93QnJvd3Nlck5vdGlmaWNhdGlvbklmQWxsb3dlZChtZXNzYWdlKVxufVxuXG4vKiogUmVnaXN0cmEgZWwgbGlzdGVuZXIgZ2xvYmFsIChpZGVtcG90ZW50ZSkuIFNvYnJldml2ZSBhbCBkZXNtb250YWplIGRlbCBjaGF0IHZpc2libGUuICovXG5leHBvcnQgY29uc3QgZW5zdXJlU2Vzc2lvbk5vdGlmaWNhdGlvbnNJbml0aWFsaXplZCA9ICgpOiB2b2lkID0+IHtcbiAgaWYgKGluaXRpYWxpemVkIHx8IHR5cGVvZiBkb2N1bWVudCA9PT0gJ3VuZGVmaW5lZCcpIHJldHVyblxuICBpbml0aWFsaXplZCA9IHRydWVcbiAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignbWFpYS1zZXNzaW9uLWZpbmlzaGVkJywgaGFuZGxlU2Vzc2lvbkZpbmlzaGVkRXZlbnQpXG59XG5cbi8qKlxuICogTWFyY2EgdW5yZWFkIHkgZW1pdGUgZXZlbnRvIHNvbG8gc2kgbGEgc2VzacOzbiBOTyBlcyBsYSBxdWUgZWwgdXN1YXJpbyBlc3TDoSBtaXJhbmRvLlxuICogVG9hc3QgKyBzb25pZG8gbG9zIGNvbnN1bWUgYGVuc3VyZVNlc3Npb25Ob3RpZmljYXRpb25zSW5pdGlhbGl6ZWRgLlxuICovXG5leHBvcnQgY29uc3Qgbm90aWZ5U2Vzc2lvbkZpbmlzaGVkSW5CYWNrZ3JvdW5kID0gKHNlc3Npb25JZDogc3RyaW5nLCBraW5kOiBTZXNzaW9uRmluaXNoZWRLaW5kKTogdm9pZCA9PiB7XG4gIGVuc3VyZVNlc3Npb25Ob3RpZmljYXRpb25zSW5pdGlhbGl6ZWQoKVxuXG4gIGlmIChhY3RpdmVWaWV3LmlzKHNlc3Npb25JZCkpIHJldHVyblxuXG4gIGRvY3VtZW50LmRpc3BhdGNoRXZlbnQoXG4gICAgbmV3IEN1c3RvbUV2ZW50KCdtYWlhLXNlc3Npb24tZmluaXNoZWQnLCB7XG4gICAgICBkZXRhaWw6IHsgc2Vzc2lvbklkLCBraW5kIH0gc2F0aXNmaWVzIE1haWFTZXNzaW9uRmluaXNoZWREZXRhaWwsXG4gICAgfSlcbiAgKVxufVxuIl0sIm1hcHBpbmdzIjoiQUFBQSxPQUFPQSxJQUFJLE1BQU0sWUFBWTtBQUM3QixTQUFTQyxRQUFRLFFBQVEsd0JBQXdCO0FBQ2pELFNBQVNDLDJCQUEyQixRQUFRLG1DQUFtQztBQUMvRSxTQUFTQyxlQUFlLFFBQVEsa0JBQWtCO0FBQ2xELFNBQVNDLGFBQWEsUUFBUSxrQkFBa0I7QUFDaEQsU0FBU0MsZ0JBQWdCLFFBQVEsb0JBQW9CO0FBQ3JELFNBQVNDLFVBQVUsUUFBUSxjQUFjO0FBQ3pDLFNBQVNDLHdCQUF3QixRQUFRLDRCQUE0QjtBQUdyRSxJQUFJQyxXQUFXLEdBQUcsS0FBSztBQUV2QixJQUFNQywrQkFBK0IsR0FBRyxTQUFsQ0EsK0JBQStCQSxDQUFJQyxTQUFpQixFQUFhO0VBQUEsSUFBQUMs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
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3N0b3JlL3Nlc3Npb25zL3Nlc3Npb25Ob3RpZmljYXRpb25zLnR5cGVzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIFNlc3Npb25GaW5pc2hlZEtpbmQgPSAnY29tcGxldGUnIHwgJ2FwcHJvdmFsX3JlcXVpcmVkJyB8ICdlcnJvcidcblxuZXhwb3J0IHR5cGUgTWFpYVNlc3Npb25GaW5pc2hlZERldGFpbCA9IHtcbiAgc2Vzc2lvbklkOiBzdHJpbmdcbiAga2luZDogU2Vzc2lvbkZpbmlzaGVkS2luZFxufVxuIl0sIm1hcHBpbmdzIjoiIiwiaWdub3JlTGlzdCI6W119