@projectcor/maia-components 2.11.41-11 → 2.11.41-2
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.
- package/lib/App.js +22 -11
- package/lib/components/atoms/ContextMentionChip/ContextMentionChip.js +38 -0
- package/lib/components/atoms/ContextMentionChip/ContextMentionChip.styles.js +184 -0
- package/lib/components/atoms/ContextMentionChip/MentionOverflowLabel.js +39 -0
- package/lib/components/atoms/ContextMentionChip/buildChipElement.js +390 -0
- package/lib/components/atoms/ContextMentionChip/index.js +4 -0
- package/lib/components/atoms/ContextMentionEditor/ContextMentionEditor.js +195 -0
- package/lib/components/atoms/ContextMentionEditor/ContextMentionEditor.styles.js +6 -0
- package/lib/components/atoms/ContextMentionEditor/index.js +2 -0
- package/lib/components/atoms/ContextMentionItem/ContextMentionItem.js +282 -0
- package/lib/components/atoms/ContextMentionItem/ContextMentionItem.styles.js +145 -0
- package/lib/components/atoms/ContextMentionItem/index.js +2 -0
- package/lib/components/atoms/ContextMentionPopover/ContextMentionPopover.js +168 -0
- package/lib/components/atoms/ContextMentionPopover/ContextMentionPopover.styles.js +79 -0
- package/lib/components/atoms/ContextMentionPopover/index.js +3 -0
- package/lib/components/atoms/MAIAInput/MAIAInput.js +238 -321
- package/lib/components/atoms/MAIAInput/MAIAInputEditor.js +269 -0
- package/lib/components/atoms/MAIAInput/styles.js +75 -46
- package/lib/components/atoms/icons/NotionIcon.js +36 -0
- package/lib/components/atoms/icons/SubtaskIcon.js +36 -0
- package/lib/components/atoms/icons/index.js +2 -1
- package/lib/components/index.js +2 -1
- package/lib/components/molecules/ChatAIHistory/ChatAIHistory.js +8 -4
- package/lib/components/molecules/ChatAIMessages/ChatAIMessages.js +31 -3
- package/lib/components/molecules/ChatAIMessages/newStyles.js +5 -2
- package/lib/components/molecules/ChatAIModal/ChatAIModal.js +9 -18
- package/lib/components/molecules/ChatFooter/ChatFooter.js +5 -4
- package/lib/components/molecules/ContextMentionInput/ContextMentionInput.js +68 -0
- package/lib/components/molecules/ContextMentionInput/ContextMentionInput.styles.js +6 -0
- package/lib/components/molecules/ContextMentionInput/index.js +2 -0
- package/lib/components/molecules/Sidebar/Sidebar.js +9 -5
- package/lib/components/molecules/Sidebar/Sidebar.layout.styles.js +6 -2
- package/lib/components/organisms/ChatAI/ChatAI.js +4 -20
- package/lib/components/organisms/DeleteQuestionModal/DeleteQuestionModal.js +5 -2
- package/lib/components/organisms/EditQuestionModal/EditQuestionModal.js +6 -3
- package/lib/constants/config.js +3 -1
- package/lib/constants/taskLinkIcon.js +6 -0
- package/lib/context/cor-user.js +1 -1
- package/lib/context/global-context.js +1 -5
- package/lib/dev/DevContextMentionInput.js +65 -0
- package/lib/dev/Providers.js +11 -6
- package/lib/hooks/useCaretPosition.js +35 -0
- package/lib/hooks/useChatManager/useChatManager.interface.js +1 -1
- package/lib/hooks/useChatManager/useChatManager.js +21 -11
- package/lib/hooks/useChatMessages/useChatMessages.interface.js +1 -1
- package/lib/hooks/useChatMessages/useChatMessages.js +30 -14
- package/lib/hooks/useClientSearch.js +3 -2
- package/lib/hooks/useContextMentions.js +270 -0
- package/lib/hooks/useEntitySearch.js +1119 -0
- package/lib/hooks/useEvent.js +6 -1
- package/lib/hooks/useMentionAllowedTypes.js +103 -0
- package/lib/hooks/useMentionPopover.js +334 -0
- package/lib/hooks/useOrchestratorStream/useOrchestratorStream.js +6 -4
- package/lib/hooks/useProjectSearch.js +3 -2
- package/lib/hooks/useRecentClientsSearch.js +3 -2
- package/lib/hooks/useTaskPanel.js +3 -10
- package/lib/hooks/useTextOverflowEllipsisTooltip.js +34 -0
- package/lib/lang/br/index.js +24 -1
- package/lib/lang/en/index.js +24 -1
- package/lib/lang/es/index.js +24 -1
- package/lib/lang/fr/index.js +23 -1
- package/lib/services/maia/Chats/getChatMessages.js +29 -4
- package/lib/services/maia/Faqs/getFrequentlyAskedQuestions.js +4 -8
- package/lib/services/maia/Orchestrator/orchestrator.js +8 -5
- package/lib/services/maia/RecentProjects/getRecentProjects.js +12 -4
- package/lib/services/maia/RecentTasks/getRecentTasks.js +54 -0
- package/lib/services/maia/RecentTasks/index.js +6 -0
- package/lib/services/maia/RecentUsers/getRecentUsers.js +59 -0
- package/lib/services/maia/RecentUsers/index.js +6 -0
- package/lib/services/query/entitySearchQuery.js +18 -0
- package/lib/services/query/usersDirectoryQuery.js +19 -0
- package/lib/services/utils/mapChatMessages.js +12 -5
- package/lib/types/Chat.js +1 -1
- package/lib/types/agent.js +1 -1
- package/lib/types/contextMention.js +37 -0
- package/lib/utils/contextMentionIcons.js +115 -0
- package/lib/utils/contextMentionLabel.js +4 -0
- package/lib/utils/contextMentionTypeLabel.js +17 -0
- package/lib/utils/maiaStreamdownRehypePlugins.js +27 -0
- package/lib/utils/openTaskInCorPanel.js +18 -0
- package/lib/utils/renderContextMentions.js +299 -0
- package/package.json +2 -1
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
2
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
3
3
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
4
|
+
/* eslint-disable import/no-cycle */
|
|
4
5
|
import { CorLogo } from '../../components/atoms/icons';
|
|
5
6
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
7
|
+
/* eslint-enable import/no-cycle */
|
|
8
|
+
|
|
6
9
|
export var ASSISTANT_USER = {
|
|
7
10
|
id: 'assistant',
|
|
8
11
|
name: 'Maia',
|
|
@@ -75,7 +78,7 @@ export var mapChatMessages = function mapChatMessages(items, currentUser, cancel
|
|
|
75
78
|
// Only emit question if it has content (avoid duplicate empty questions)
|
|
76
79
|
if (firstItem.question) {
|
|
77
80
|
var _firstItem$project_me, _firstItem$project_me2, _firstItem$client_met, _firstItem$client_met2;
|
|
78
|
-
mappedItems.push(_objectSpread({
|
|
81
|
+
mappedItems.push(_objectSpread(_objectSpread({
|
|
79
82
|
id: "".concat(firstItem.message_id || firstItem.memory_session_id, "-question"),
|
|
80
83
|
agentId: firstItem.agent_id,
|
|
81
84
|
message: firstItem.question,
|
|
@@ -91,7 +94,9 @@ export var mapChatMessages = function mapChatMessages(items, currentUser, cancel
|
|
|
91
94
|
projectMetadata: {
|
|
92
95
|
is_deleted: firstItem.project_metadata.is_deleted
|
|
93
96
|
}
|
|
94
|
-
})
|
|
97
|
+
}), firstItem.context_message ? {
|
|
98
|
+
contextMessage: firstItem.context_message
|
|
99
|
+
} : {}));
|
|
95
100
|
}
|
|
96
101
|
|
|
97
102
|
// Omitir el mensaje con ApprovalBox para aprobaciones manuales: deja visible solo la pregunta del usuario
|
|
@@ -189,7 +194,7 @@ export var mapChatMessages = function mapChatMessages(items, currentUser, cancel
|
|
|
189
194
|
}
|
|
190
195
|
|
|
191
196
|
// ── Normal (non-HITL) items ──
|
|
192
|
-
mappedItems.push(_objectSpread({
|
|
197
|
+
mappedItems.push(_objectSpread(_objectSpread({
|
|
193
198
|
id: "".concat(item.message_id || item.memory_session_id, "-question"),
|
|
194
199
|
agentId: item.agent_id,
|
|
195
200
|
message: item.question,
|
|
@@ -205,7 +210,9 @@ export var mapChatMessages = function mapChatMessages(items, currentUser, cancel
|
|
|
205
210
|
projectMetadata: {
|
|
206
211
|
is_deleted: item.project_metadata.is_deleted
|
|
207
212
|
}
|
|
208
|
-
})
|
|
213
|
+
}), item.context_message ? {
|
|
214
|
+
contextMessage: item.context_message
|
|
215
|
+
} : {}));
|
|
209
216
|
var answerMessage = _objectSpread({
|
|
210
217
|
id: "".concat(item.message_id || item.memory_session_id, "-answer"),
|
|
211
218
|
agentId: item.agent_id,
|
|
@@ -269,4 +276,4 @@ export var mapChatMessages = function mapChatMessages(items, currentUser, cancel
|
|
|
269
276
|
});
|
|
270
277
|
return mappedItems;
|
|
271
278
|
};
|
|
272
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJDb3JMb2dvIiwianN4IiwiX2pzeCIsIkFTU0lTVEFOVF9VU0VSIiwiaWQiLCJuYW1lIiwiYXZhdGFySWNvbiIsInN0eWxlIiwiZGlzcGxheSIsImFsaWduSXRlbXMiLCJqdXN0aWZ5Q29udGVudCIsInBvc2l0aW9uIiwidG9wIiwiY2hpbGRyZW4iLCJnZXRNZXNzYWdlQXR0YWNobWVudHNCeVJvbGUiLCJhdHRhY2htZW50cyIsInJvbGUiLCJBcnJheSIsImlzQXJyYXkiLCJmaWx0ZXIiLCJhdHRhY2htZW50IiwiYXR0YWNobWVudFJvbGUiLCJyZXNvbHZlQXBwcm92YWxTdGF0dXMiLCJzdGF0dXMiLCJtYXBDaGF0TWVzc2FnZXMiLCJpdGVtcyIsImN1cnJlbnRVc2VyIiwiY2FuY2VsbGVkVGV4dCIsImhpdGxHcm91cHMiLCJNYXAiLCJmb3JFYWNoIiwiaXRlbSIsImluZGV4IiwicGVuZGluZ19hcHByb3ZhbCIsIm90aWQiLCJvcmlnaW5hbF90aHJlYWRfaWQiLCJ0aHJlYWRfaWQiLCJtZXNzYWdlX2lkIiwiZXhpc3RpbmciLCJnZXQiLCJwdXNoIiwic2V0IiwiZmlyc3RJbmRleCIsImVtaXR0ZWRHcm91cHMiLCJTZXQiLCJtYXBwZWRJdGVtcyIsIl9pdGVtJHBlbmRpbmdfYXBwcm92YSIsIl9pdGVtJHByb2plY3RfbWV0YWRhdCIsIl9pdGVtJHByb2plY3RfbWV0YWRhdDIiLCJfaXRlbSRjbGllbnRfbWV0YWRhdGEiLCJfaXRlbSRjbGllbnRfbWV0YWRhdGEyIiwiX2l0ZW0kcHJvamVjdF9tZXRhZGF0MyIsIl9pdGVtJHByb2plY3RfbWV0YWRhdDQiLCJfaXRlbSRjbGllbnRfbWV0YWRhdGEzIiwiX2l0ZW0kY2xpZW50X21ldGFkYXRhNCIsImlzSGl0bEl0ZW0iLCJfZmlyc3RJdGVtJHByb2plY3RfbWUzIiwiX2ZpcnN0SXRlbSRwcm9qZWN0X21lNCIsIl9maXJzdEl0ZW0kY2xpZW50X21ldDMiLCJfZmlyc3RJdGVtJGNsaWVudF9tZXQ0IiwiX2dyb3VwJGl0ZW1zJGZpbmQiLCJoYXMiLCJhZGQiLCJncm91cCIsImZpcnN0SXRlbSIsImlzTWFudWFsQXBwcm92YWwiLCJzb21lIiwiZ2kiLCJfZ2kkcGVuZGluZ19hcHByb3ZhbCIsIm1hbnVhbF9hcHByb3ZhbF9kZXRlY3RlZCIsInF1ZXN0aW9uIiwiX2ZpcnN0SXRlbSRwcm9qZWN0X21lIiwiX2ZpcnN0SXRlbSRwcm9qZWN0X21lMiIsIl9maXJzdEl0ZW0kY2xpZW50X21ldCIsIl9maXJzdEl0ZW0kY2xpZW50X21ldDIiLCJfb2JqZWN0U3ByZWFkIiwiY29uY2F0IiwibWVtb3J5X3Nlc3Npb25faWQiLCJhZ2VudElkIiwiYWdlbnRfaWQiLCJtZXNzYWdlIiwiZGF0ZSIsIkRhdGUiLCJ0aW1lc3RhbXAiLCJ1c2VyIiwicHJvamVjdElkIiwicHJvamVjdF9tZXRhZGF0YSIsInByb2plY3ROYW1lIiwiY2xpZW50SWQiLCJjbGllbnRfbWV0YWRhdGEiLCJjbGllbnROYW1lIiwic291cmNlcyIsInByb2plY3RNZXRhZGF0YSIsImlzX2RlbGV0ZWQiLCJwZW5kaW5nQWN0aW9ucyIsIm1hcCIsInRvb2xfY2FsbF9pZCIsInRvb2xfbmFtZSIsInRvb2xfYXJncyIsInN0YXR1c2VzIiwiZ3JvdXBTdGF0dXMiLCJzIiwiYW5zd2VyTWVzc2FnZSIsIndhc0hlbHBmdWwiLCJ3YXNfaGVscGZ1bCIsImFwcHJvdmFsIiwidHlwZSIsInBlbmRpbmdfYWN0aW9ucyIsInRvdGFsX2FjdGlvbnMiLCJsZW5ndGgiLCJzZXNzaW9uX2lkIiwibWV0YWRhdGEiLCJfZ2kkcGVuZGluZ19hcHByb3ZhbDIiLCJ3YXJuaW5nX21lc3NhZ2UiLCJmaW5kIiwiX2dpJHBlbmRpbmdfYXBwcm92YWwzIiwidW5kZWZpbmVkIiwiYXBwcm92YWxTdGF0dXMiLCJyZWplY3RlZEl0ZW0iLCJhbnN3ZXIiLCJzdGFydHNXaXRoIiwiX3JlamVjdGVkSXRlbSRwcm9qZWN0IiwiX3JlamVjdGVkSXRlbSRwcm9qZWN0MiIsIl9yZWplY3RlZEl0ZW0kY2xpZW50XyIsIl9yZWplY3RlZEl0ZW0kY2xpZW50XzIiLCJzdWdnZXN0aW9ucyIsInN1Z2dlc3RfcmVwbHkiLCJpc19jYW5jZWxsZWQiLCJfaXRlbSRwcm9qZWN0X21ldGFkYXQ1IiwiX2l0ZW0kcHJvamVjdF9tZXRhZGF0NiIsIl9pdGVtJGNsaWVudF9tZXRhZGF0YTUiLCJfaXRlbSRjbGllbnRfbWV0YWRhdGE2IiwiX2l0ZW0kcHJvamVjdF9tZXRhZGF0NyIsIl9pdGVtJHByb2plY3RfbWV0YWRhdDgiLCJfaXRlbSRjbGllbnRfbWV0YWRhdGE3IiwiX2l0ZW0kY2xpZW50X21ldGFkYXRhOCIsImlzRnJvbnRlbmRDYW5jZWxsZWQiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2VydmljZXMvdXRpbHMvbWFwQ2hhdE1lc3NhZ2VzLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb3JMb2dvIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9hdG9tcy9pY29ucydcbmltcG9ydCB7IENoYXRNZXNzYWdlLCBDaGF0TWVzc2FnZUl0ZW1SZXNwb25zZSwgQ2hhdE1lc3NhZ2VVc2VyIH0gZnJvbSAnLi4vLi4vdHlwZXMvQ2hhdCdcblxuZXhwb3J0IGNvbnN0IEFTU0lTVEFOVF9VU0VSOiBDaGF0TWVzc2FnZVVzZXIgPSB7XG4gIGlkOiAnYXNzaXN0YW50JyxcbiAgbmFtZTogJ01haWEnLFxuICBhdmF0YXJJY29uOiAoXG4gICAgPGRpdiBzdHlsZT17eyBkaXNwbGF5OiAnZmxleCcsIGFsaWduSXRlbXM6ICdjZW50ZXInLCBqdXN0aWZ5Q29udGVudDogJ2NlbnRlcicsIHBvc2l0aW9uOiAnc3RpY2t5JywgdG9wOiAwIH19PlxuICAgICAgPENvckxvZ28gLz5cbiAgICA8L2Rpdj5cbiAgKSxcbn1cblxuY29uc3QgZ2V0TWVzc2FnZUF0dGFjaG1lbnRzQnlSb2xlID0gKFxuICBhdHRhY2htZW50czogQ2hhdE1lc3NhZ2VJdGVtUmVzcG9uc2VbJ2F0dGFjaG1lbnRzJ10sXG4gIHJvbGU6ICd1c2VyJyB8ICdhc3Npc3RhbnQnXG4pID0+IHtcbiAgaWYgKCFBcnJheS5pc0FycmF5KGF0dGFjaG1lbnRzKSkgcmV0dXJuIFtdXG5cbiAgcmV0dXJuIGF0dGFjaG1lbnRzLmZpbHRlcihhdHRhY2htZW50ID0+IHtcbiAgICBjb25zdCBhdHRhY2htZW50Um9sZSA9IGF0dGFjaG1lbnQ/LnJvbGUgfHwgJ3VzZXInXG4gICAgcmV0dXJuIHJvbGUgPT09ICdhc3Npc3RhbnQnID8gYXR0YWNobWVudFJvbGUgPT09ICdhc3Npc3RhbnQnIDogYXR0YWNobWVudFJvbGUgIT09ICdhc3Npc3RhbnQnXG4gIH0pXG59XG5cbi8qKlxuICogUmVzb2x2ZSB0aGUgZnJvbnRlbmQgYXBwcm92YWxTdGF0dXMgZnJvbSB0aGUgYmFja2VuZCBNZW1vcnlTZXNzaW9uIHN0YXR1cy5cbiAqL1xuZnVuY3Rpb24gcmVzb2x2ZUFwcHJvdmFsU3RhdHVzKHN0YXR1cz86IHN0cmluZyk6ICdwZW5kaW5nJyB8ICdhcHByb3ZlZCcgfCAncmVqZWN0ZWQnIHtcbiAgaWYgKHN0YXR1cyA9PT0gJ2NvbXBsZXRlZCcgfHwgc3RhdHVzID09PSAnYXBwcm92ZWQnKSByZXR1cm4gJ2FwcHJvdmVkJ1xuICBpZiAoc3RhdHVzID09PSAncmVqZWN0ZWQnKSByZXR1cm4gJ3JlamVjdGVkJ1xuICByZXR1cm4gJ3BlbmRpbmcnXG59XG5cbmV4cG9ydCBjb25zdCBtYXBDaGF0TWVzc2FnZXMgPSAoXG4gIGl0ZW1zOiBDaGF0TWVzc2FnZUl0ZW1SZXNwb25zZVtdLFxuICBjdXJyZW50VXNlcjogQ2hhdE1lc3NhZ2VVc2VyLFxuICBjYW5jZWxsZWRUZXh0Pzogc3RyaW5nXG4pOiBDaGF0TWVzc2FnZVtdID0+IHtcbiAgLy8g4pSA4pSAIDEuIEdyb3VwIEhJVEwgaXRlbXMgdGhhdCBzaGFyZSB0aGUgc2FtZSBvcmlnaW5hbF90aHJlYWRfaWQg4pSA4pSAXG4gIC8vIFNvIG11bHRpcGxlIE1lbW9yeVNlc3Npb25zIGZyb20gYSBzaW5nbGUgSElUTCBiYXRjaCByZW5kZXIgaW4gb25lIEFwcHJvdmFsQm94LlxuICBjb25zdCBoaXRsR3JvdXBzID0gbmV3IE1hcDxzdHJpbmcsIHsgaXRlbXM6IENoYXRNZXNzYWdlSXRlbVJlc3BvbnNlW107IGZpcnN0SW5kZXg6IG51bWJlciB9PigpXG4gIGl0ZW1zLmZvckVhY2goKGl0ZW0sIGluZGV4KSA9PiB7XG4gICAgaWYgKCFpdGVtLnBlbmRpbmdfYXBwcm92YWwpIHJldHVyblxuICAgIGNvbnN0IG90aWQgPSBpdGVtLnBlbmRpbmdfYXBwcm92YWwub3JpZ2luYWxfdGhyZWFkX2lkIHx8IGl0ZW0udGhyZWFkX2lkIHx8IGl0ZW0ubWVzc2FnZV9pZFxuICAgIGlmICghb3RpZCkgcmV0dXJuXG5cbiAgICBjb25zdCBleGlzdGluZyA9IGhpdGxHcm91cHMuZ2V0KG90aWQpXG4gICAgaWYgKGV4aXN0aW5nKSB7XG4gICAgICBleGlzdGluZy5pdGVtcy5wdXNoKGl0ZW0pXG4gICAgfSBlbHNlIHtcbiAgICAgIGhpdGxHcm91cHMuc2V0KG90aWQsIHsgaXRlbXM6IFtpdGVtXSwgZmlyc3RJbmRleDogaW5kZXggfSlcbiAgICB9XG4gIH0pXG5cbiAgLy8gVHJhY2sgd2hpY2ggb3JpZ2luYWxfdGhyZWFkX2lkcyBoYXZlIGFscmVhZHkgYmVlbiBlbWl0dGVkXG4gIGNvbnN0IGVtaXR0ZWRHcm91cHMgPSBuZXcgU2V0PHN0cmluZz4oKVxuXG4gIGNvbnN0IG1hcHBlZEl0ZW1zOiBDaGF0TWVzc2FnZVtdID0gW11cblxuICBpdGVtcy5mb3JFYWNoKGl0ZW0gPT4ge1xuICAgIGNvbnN0IGlzSGl0bEl0ZW0gPSAhIWl0ZW0ucGVuZGluZ19hcHByb3ZhbFxuICAgIGNvbnN0IG90aWQgPSBpdGVtLnBlbmRpbmdfYXBwcm92YWw/Lm9yaWdpbmFsX3RocmVhZF9pZCB8fCBpdGVtLnRocmVhZF9pZCB8fCBpdGVtLm1lc3NhZ2VfaWQgfHwgJydcblxuICAgIC8vIOKUgOKUgCBISVRMIGl0ZW1zOiBlbWl0IG9uY2UgcGVyIGdyb3VwIChvbiB0aGUgZmlyc3QgaXRlbSBvZiB0aGUgZ3JvdXApIOKUgOKUgFxuICAgIGlmIChpc0hpdGxJdGVtICYmIG90aWQpIHtcbiAgICAgIGlmIChlbWl0dGVkR3JvdXBzLmhhcyhvdGlkKSkgcmV0dXJuIC8vIEFscmVhZHkgZW1pdHRlZCB0aGlzIGdyb3VwXG4gICAgICBlbWl0dGVkR3JvdXBzLmFkZChvdGlkKVxuXG4gICAgICBjb25zdCBncm91cCA9IGhpdGxHcm91cHMuZ2V0KG90aWQpIVxuICAgICAgY29uc3QgZmlyc3RJdGVtID0gZ3JvdXAuaXRlbXNbMF1cbiAgICAgIGNvbnN0IGlzTWFudWFsQXBwcm92YWwgPSBncm91cC5pdGVtcy5zb21lKGdpID0+IGdpLnBlbmRpbmdfYXBwcm92YWw/Lm1hbnVhbF9hcHByb3ZhbF9kZXRlY3RlZClcblxuICAgICAgLy8gT25seSBlbWl0IHF1ZXN0aW9uIGlmIGl0IGhhcyBjb250ZW50IChhdm9pZCBkdXBsaWNhdGUgZW1wdHkgcXVlc3Rpb25zKVxuICAgICAgaWYgKGZpcnN0SXRlbS5xdWVzdGlvbikge1xuICAgICAgICBtYXBwZWRJdGVtcy5wdXNoKHtcbiAgICAgICAgICBpZDogYCR7Zmlyc3RJdGVtLm1lc3NhZ2VfaWQgfHwgZmlyc3RJdGVtLm1lbW9yeV9zZXNzaW9uX2lkfS1xdWVzdGlvbmAsXG4gICAgICAgICAgYWdlbnRJZDogZmlyc3RJdGVtLmFnZW50X2lkLFxuICAgICAgICAgIG1lc3NhZ2U6IGZpcnN0SXRlbS5xdWVzdGlvbixcbiAgICAgICAgICBkYXRlOiBuZXcgRGF0ZShmaXJzdEl0ZW0udGltZXN0YW1wKSxcbiAgICAgICAgICB1c2VyOiBjdXJyZW50VXNlcixcbiAgICAgICAgICBwcm9qZWN0SWQ6IGZpcnN0SXRlbS5wcm9qZWN0X21ldGFkYXRhPy5pZCxcbiAgICAgICAgICBwcm9qZWN0TmFtZTogZmlyc3RJdGVtLnByb2plY3RfbWV0YWRhdGE/Lm5hbWUsXG4gICAgICAgICAgY2xpZW50SWQ6IGZpcnN0SXRlbS5jbGllbnRfbWV0YWRhdGE/LmlkLFxuICAgICAgICAgIGNsaWVudE5hbWU6IGZpcnN0SXRlbS5jbGllbnRfbWV0YWRhdGE/Lm5hbWUsXG4gICAgICAgICAgYXR0YWNobWVudHM6IGdldE1lc3NhZ2VBdHRhY2htZW50c0J5Um9sZShmaXJzdEl0ZW0uYXR0YWNobWVudHMsICd1c2VyJyksXG4gICAgICAgICAgc291cmNlczogbnVsbCxcbiAgICAgICAgICAuLi4oZmlyc3RJdGVtLnByb2plY3RfbWV0YWRhdGEgJiYgeyBwcm9qZWN0TWV0YWRhdGE6IHsgaXNfZGVsZXRlZDogZmlyc3RJdGVtLnByb2plY3RfbWV0YWRhdGEuaXNfZGVsZXRlZCB9IH0pLFxuICAgICAgICB9KVxuICAgICAgfVxuXG4gICAgICAvLyBPbWl0aXIgZWwgbWVuc2FqZSBjb24gQXBwcm92YWxCb3ggcGFyYSBhcHJvYmFjaW9uZXMgbWFudWFsZXM6IGRlamEgdmlzaWJsZSBzb2xvIGxhIHByZWd1bnRhIGRlbCB1c3VhcmlvXG4gICAgICBpZiAoaXNNYW51YWxBcHByb3ZhbCkgcmV0dXJuXG5cbiAgICAgIC8vIEJ1aWxkIG1lcmdlZCBwZW5kaW5nX2FjdGlvbnMgZnJvbSBhbGwgaXRlbXMgaW4gdGhlIGdyb3VwXG4gICAgICBjb25zdCBwZW5kaW5nQWN0aW9ucyA9IGdyb3VwLml0ZW1zLm1hcChnaSA9PiAoe1xuICAgICAgICB0aHJlYWRfaWQ6IGdpLnRocmVhZF9pZCB8fCAnJyxcbiAgICAgICAgdG9vbF9jYWxsX2lkOiBnaS5wZW5kaW5nX2FwcHJvdmFsIS50b29sX2NhbGxfaWQgfHwgJycsXG4gICAgICAgIHRvb2xfbmFtZTogZ2kucGVuZGluZ19hcHByb3ZhbCEudG9vbF9uYW1lIHx8ICd1bmtub3duJyxcbiAgICAgICAgdG9vbF9hcmdzOiBnaS5wZW5kaW5nX2FwcHJvdmFsIS50b29sX2FyZ3MgfHwge30sXG4gICAgICB9KSlcblxuICAgICAgLy8gUmVzb2x2ZSBzdGF0dXM6IGlmIEFOWSBpcyBwZW5kaW5nIOKGkiBwZW5kaW5nOyBpZiBBTEwgYXBwcm92ZWQg4oaSIGFwcHJvdmVkOyBlbHNlIHJlamVjdGVkXG4gICAgICBjb25zdCBzdGF0dXNlcyA9IGdyb3VwLml0ZW1zLm1hcChnaSA9PiByZXNvbHZlQXBwcm92YWxTdGF0dXMoZ2kuc3RhdHVzKSlcbiAgICAgIGxldCBncm91cFN0YXR1czogJ3BlbmRpbmcnIHwgJ2FwcHJvdmVkJyB8ICdyZWplY3RlZCcgPSAnYXBwcm92ZWQnXG4gICAgICBpZiAoc3RhdHVzZXMuc29tZShzID0+IHMgPT09ICdwZW5kaW5nJykpIHtcbiAgICAgICAgZ3JvdXBTdGF0dXMgPSAncGVuZGluZydcbiAgICAgIH0gZWxzZSBpZiAoc3RhdHVzZXMuc29tZShzID0+IHMgPT09ICdyZWplY3RlZCcpKSB7XG4gICAgICAgIGdyb3VwU3RhdHVzID0gJ3JlamVjdGVkJ1xuICAgICAgfVxuXG4gICAgICBjb25zdCBhbnN3ZXJNZXNzYWdlOiBDaGF0TWVzc2FnZSA9IHtcbiAgICAgICAgaWQ6IGBhcHByb3ZhbC0ke290aWR9YCxcbiAgICAgICAgYWdlbnRJZDogZmlyc3RJdGVtLmFnZW50X2lkLFxuICAgICAgICBtZXNzYWdlOiAnJyxcbiAgICAgICAgZGF0ZTogbmV3IERhdGUoZmlyc3RJdGVtLnRpbWVzdGFtcCksXG4gICAgICAgIHVzZXI6IEFTU0lTVEFOVF9VU0VSLFxuICAgICAgICBwcm9qZWN0SWQ6IGZpcnN0SXRlbS5wcm9qZWN0X21ldGFkYXRhPy5pZCxcbiAgICAgICAgcHJvamVjdE5hbWU6IGZpcnN0SXRlbS5wcm9qZWN0X21ldGFkYXRhPy5uYW1lLFxuICAgICAgICBjbGllbnRJZDogZmlyc3RJdGVtLmNsaWVudF9tZXRhZGF0YT8uaWQsXG4gICAgICAgIGNsaWVudE5hbWU6IGZpcnN0SXRlbS5jbGllbnRfbWV0YWRhdGE/Lm5hbWUsXG4gICAgICAgIHdhc0hlbHBmdWw6IGZpcnN0SXRlbS53YXNfaGVscGZ1bCxcbiAgICAgICAgYXR0YWNobWVudHM6IGdldE1lc3NhZ2VBdHRhY2htZW50c0J5Um9sZShmaXJzdEl0ZW0uYXR0YWNobWVudHMsICdhc3Npc3RhbnQnKSxcbiAgICAgICAgc291cmNlczogW10sXG4gICAgICAgIC4uLihmaXJzdEl0ZW0ucHJvamVjdF9tZXRhZGF0YSAmJiB7IHByb2plY3RNZXRhZGF0YTogeyBpc19kZWxldGVkOiBmaXJzdEl0ZW0ucHJvamVjdF9tZXRhZGF0YS5pc19kZWxldGVkIH0gfSksXG4gICAgICAgIGFwcHJvdmFsOiB7XG4gICAgICAgICAgdHlwZTogJ2FwcHJvdmFsX3JlcXVpcmVkJyxcbiAgICAgICAgICBwZW5kaW5nX2FjdGlvbnM6IHBlbmRpbmdBY3Rpb25zLFxuICAgICAgICAgIHRvdGFsX2FjdGlvbnM6IHBlbmRpbmdBY3Rpb25zLmxlbmd0aCxcbiAgICAgICAgICBvcmlnaW5hbF90aHJlYWRfaWQ6IG90aWQsXG4gICAgICAgICAgc2Vzc2lvbl9pZDogZmlyc3RJdGVtLnBlbmRpbmdfYXBwcm92YWwhLnNlc3Npb25faWQgfHwgJycsXG4gICAgICAgICAgbWV0YWRhdGE6IGZpcnN0SXRlbS5wZW5kaW5nX2FwcHJvdmFsIS5tZXRhZGF0YSB8fCB7fSxcbiAgICAgICAgICBtYW51YWxfYXBwcm92YWxfZGV0ZWN0ZWQ6IGdyb3VwLml0ZW1zLnNvbWUoZ2kgPT4gZ2kucGVuZGluZ19hcHByb3ZhbD8ubWFudWFsX2FwcHJvdmFsX2RldGVjdGVkKSxcbiAgICAgICAgICB3YXJuaW5nX21lc3NhZ2U6XG4gICAgICAgICAgICBncm91cC5pdGVtcy5maW5kKGdpID0+IGdpLnBlbmRpbmdfYXBwcm92YWw/Lndhcm5pbmdfbWVzc2FnZSk/LnBlbmRpbmdfYXBwcm92YWw/Lndhcm5pbmdfbWVzc2FnZSB8fFxuICAgICAgICAgICAgdW5kZWZpbmVkLFxuICAgICAgICB9LFxuICAgICAgICBhcHByb3ZhbFN0YXR1czogZ3JvdXBTdGF0dXMsXG4gICAgICB9XG5cbiAgICAgIG1hcHBlZEl0ZW1zLnB1c2goYW5zd2VyTWVzc2FnZSlcblxuICAgICAgLy8gSWYgcmVqZWN0ZWQsIGFkZCB0aGUgcmVqZWN0aW9uIG1lc3NhZ2VcbiAgICAgIGlmIChncm91cFN0YXR1cyA9PT0gJ3JlamVjdGVkJykge1xuICAgICAgICBjb25zdCByZWplY3RlZEl0ZW0gPSBncm91cC5pdGVtcy5maW5kKFxuICAgICAgICAgIGdpID0+IGdpLnN0YXR1cyA9PT0gJ3JlamVjdGVkJyAmJiBnaS5hbnN3ZXIgJiYgIWdpLmFuc3dlci5zdGFydHNXaXRoKCdbUGVuZGllbnRlJylcbiAgICAgICAgKVxuICAgICAgICBpZiAocmVqZWN0ZWRJdGVtKSB7XG4gICAgICAgICAgbWFwcGVkSXRlbXMucHVzaCh7XG4gICAgICAgICAgICBpZDogYCR7cmVqZWN0ZWRJdGVtLm1lc3NhZ2VfaWQgfHwgcmVqZWN0ZWRJdGVtLm1lbW9yeV9zZXNzaW9uX2lkfS1yZWplY3Rpb25gLFxuICAgICAgICAgICAgYWdlbnRJZDogcmVqZWN0ZWRJdGVtLmFnZW50X2lkLFxuICAgICAgICAgICAgbWVzc2FnZTogcmVqZWN0ZWRJdGVtLmFuc3dlcixcbiAgICAgICAgICAgIGRhdGU6IG5ldyBEYXRlKHJlamVjdGVkSXRlbS50aW1lc3RhbXApLFxuICAgICAgICAgICAgdXNlcjogQVNTSVNUQU5UX1VTRVIsXG4gICAgICAgICAgICBwcm9qZWN0SWQ6IHJlamVjdGVkSXRlbS5wcm9qZWN0X21ldGFkYXRhPy5pZCxcbiAgICAgICAgICAgIHByb2plY3ROYW1lOiByZWplY3RlZEl0ZW0ucHJvamVjdF9tZXRhZGF0YT8ubmFtZSxcbiAgICAgICAgICAgIGNsaWVudElkOiByZWplY3RlZEl0ZW0uY2xpZW50X21ldGFkYXRhPy5pZCxcbiAgICAgICAgICAgIGNsaWVudE5hbWU6IHJlamVjdGVkSXRlbS5jbGllbnRfbWV0YWRhdGE/Lm5hbWUsXG4gICAgICAgICAgICBhdHRhY2htZW50czogW10sXG4gICAgICAgICAgICBzb3VyY2VzOiBbXSxcbiAgICAgICAgICAgIC4uLihyZWplY3RlZEl0ZW0ucHJvamVjdF9tZXRhZGF0YSAmJiB7XG4gICAgICAgICAgICAgIHByb2plY3RNZXRhZGF0YTogeyBpc19kZWxldGVkOiByZWplY3RlZEl0ZW0ucHJvamVjdF9tZXRhZGF0YS5pc19kZWxldGVkIH0sXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICB9KVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIC8vIOKUgOKUgCBOb3JtYWwgKG5vbi1ISVRMKSBpdGVtcyDilIDilIBcbiAgICBtYXBwZWRJdGVtcy5wdXNoKHtcbiAgICAgIGlkOiBgJHtpdGVtLm1lc3NhZ2VfaWQgfHwgaXRlbS5tZW1vcnlfc2Vzc2lvbl9pZH0tcXVlc3Rpb25gLFxuICAgICAgYWdlbnRJZDogaXRlbS5hZ2VudF9pZCxcbiAgICAgIG1lc3NhZ2U6IGl0ZW0ucXVlc3Rpb24sXG4gICAgICBkYXRlOiBuZXcgRGF0ZShpdGVtLnRpbWVzdGFtcCksXG4gICAgICB1c2VyOiBjdXJyZW50VXNlcixcbiAgICAgIHByb2plY3RJZDogaXRlbS5wcm9qZWN0X21ldGFkYXRhPy5pZCxcbiAgICAgIHByb2plY3ROYW1lOiBpdGVtLnByb2plY3RfbWV0YWRhdGE/Lm5hbWUsXG4gICAgICBjbGllbnRJZDogaXRlbS5jbGllbnRfbWV0YWRhdGE/LmlkLFxuICAgICAgY2xpZW50TmFtZTogaXRlbS5jbGllbnRfbWV0YWRhdGE/Lm5hbWUsXG4gICAgICBhdHRhY2htZW50czogZ2V0TWVzc2FnZUF0dGFjaG1lbnRzQnlSb2xlKGl0ZW0uYXR0YWNobWVudHMsICd1c2VyJyksXG4gICAgICBzb3VyY2VzOiBudWxsLFxuICAgICAgLi4uKGl0ZW0ucHJvamVjdF9tZXRhZGF0YSAmJiB7IHByb2plY3RNZXRhZGF0YTogeyBpc19kZWxldGVkOiBpdGVtLnByb2plY3RfbWV0YWRhdGEuaXNfZGVsZXRlZCB9IH0pLFxuICAgIH0pXG5cbiAgICBjb25zdCBhbnN3ZXJNZXNzYWdlOiBDaGF0TWVzc2FnZSA9IHtcbiAgICAgIGlkOiBgJHtpdGVtLm1lc3NhZ2VfaWQgfHwgaXRlbS5tZW1vcnlfc2Vzc2lvbl9pZH0tYW5zd2VyYCxcbiAgICAgIGFnZW50SWQ6IGl0ZW0uYWdlbnRfaWQsXG4gICAgICBtZXNzYWdlOiBpdGVtLmFuc3dlcixcbiAgICAgIGRhdGU6IG5ldyBEYXRlKGl0ZW0udGltZXN0YW1wKSxcbiAgICAgIHVzZXI6IEFTU0lTVEFOVF9VU0VSLFxuICAgICAgcHJvamVjdElkOiBpdGVtLnByb2plY3RfbWV0YWRhdGE/LmlkLFxuICAgICAgcHJvamVjdE5hbWU6IGl0ZW0ucHJvamVjdF9tZXRhZGF0YT8ubmFtZSxcbiAgICAgIGNsaWVudElkOiBpdGVtLmNsaWVudF9tZXRhZGF0YT8uaWQsXG4gICAgICBjbGllbnROYW1lOiBpdGVtLmNsaWVudF9tZXRhZGF0YT8ubmFtZSxcbiAgICAgIHdhc0hlbHBmdWw6IGl0ZW0ud2FzX2hlbHBmdWwsXG4gICAgICBhdHRhY2htZW50czogZ2V0TWVzc2FnZUF0dGFjaG1lbnRzQnlSb2xlKGl0ZW0uYXR0YWNobWVudHMsICdhc3Npc3RhbnQnKSxcbiAgICAgIHNvdXJjZXM6IGl0ZW0uc291cmNlcyB8fCBbXSxcbiAgICAgIHN1Z2dlc3Rpb25zOiBpdGVtLnN1Z2dlc3RfcmVwbHkgfHwgaXRlbS5zdWdnZXN0aW9ucyB8fCBbXSxcbiAgICAgIGlzX2NhbmNlbGxlZDogaXRlbS5pc19jYW5jZWxsZWQsXG4gICAgICAuLi4oaXRlbS5wcm9qZWN0X21ldGFkYXRhICYmIHsgcHJvamVjdE1ldGFkYXRhOiB7IGlzX2RlbGV0ZWQ6IGl0ZW0ucHJvamVjdF9tZXRhZGF0YS5pc19kZWxldGVkIH0gfSksXG4gICAgfVxuXG4gICAgbWFwcGVkSXRlbXMucHVzaChhbnN3ZXJNZXNzYWdlKVxuXG4gICAgaWYgKGl0ZW0uc3RhdHVzID09PSAncmVqZWN0ZWQnICYmIGl0ZW0uYW5zd2VyICYmICFpdGVtLmFuc3dlci5zdGFydHNXaXRoKCdbUGVuZGllbnRlJykpIHtcbiAgICAgIG1hcHBlZEl0ZW1zLnB1c2goe1xuICAgICAgICBpZDogYCR7aXRlbS5tZXNzYWdlX2lkIHx8IGl0ZW0ubWVtb3J5X3Nlc3Npb25faWR9LXJlamVjdGlvbmAsXG4gICAgICAgIGFnZW50SWQ6IGl0ZW0uYWdlbnRfaWQsXG4gICAgICAgIG1lc3NhZ2U6IGl0ZW0uYW5zd2VyLFxuICAgICAgICBkYXRlOiBuZXcgRGF0ZShpdGVtLnRpbWVzdGFtcCksXG4gICAgICAgIHVzZXI6IEFTU0lTVEFOVF9VU0VSLFxuICAgICAgICBwcm9qZWN0SWQ6IGl0ZW0ucHJvamVjdF9tZXRhZGF0YT8uaWQsXG4gICAgICAgIHByb2plY3ROYW1lOiBpdGVtLnByb2plY3RfbWV0YWRhdGE/Lm5hbWUsXG4gICAgICAgIGNsaWVudElkOiBpdGVtLmNsaWVudF9tZXRhZGF0YT8uaWQsXG4gICAgICAgIGNsaWVudE5hbWU6IGl0ZW0uY2xpZW50X21ldGFkYXRhPy5uYW1lLFxuICAgICAgICBhdHRhY2htZW50czogW10sXG4gICAgICAgIHNvdXJjZXM6IFtdLFxuICAgICAgICAuLi4oaXRlbS5wcm9qZWN0X21ldGFkYXRhICYmIHsgcHJvamVjdE1ldGFkYXRhOiB7IGlzX2RlbGV0ZWQ6IGl0ZW0ucHJvamVjdF9tZXRhZGF0YS5pc19kZWxldGVkIH0gfSksXG4gICAgICB9KVxuICAgIH1cblxuICAgIGlmIChpdGVtLmlzX2NhbmNlbGxlZCkge1xuICAgICAgbWFwcGVkSXRlbXMucHVzaCh7XG4gICAgICAgIGlkOiBgJHtpdGVtLm1lc3NhZ2VfaWQgfHwgaXRlbS5tZW1vcnlfc2Vzc2lvbl9pZH0tY2FuY2VsbGVkYCxcbiAgICAgICAgYWdlbnRJZDogaXRlbS5hZ2VudF9pZCxcbiAgICAgICAgbWVzc2FnZTogY2FuY2VsbGVkVGV4dCB8fCAnU2UgaGEgY2FuY2VsYWRvIGxhIGLDunNxdWVkYS4nLFxuICAgICAgICBkYXRlOiBuZXcgRGF0ZShpdGVtLnRpbWVzdGFtcCksXG4gICAgICAgIHVzZXI6IEFTU0lTVEFOVF9VU0VSLFxuICAgICAgICBwcm9qZWN0SWQ6IGl0ZW0ucHJvamVjdF9tZXRhZGF0YT8uaWQsXG4gICAgICAgIHByb2plY3ROYW1lOiBpdGVtLnByb2plY3RfbWV0YWRhdGE/Lm5hbWUsXG4gICAgICAgIGNsaWVudElkOiBpdGVtLmNsaWVudF9tZXRhZGF0YT8uaWQsXG4gICAgICAgIGNsaWVudE5hbWU6IGl0ZW0uY2xpZW50X21ldGFkYXRhPy5uYW1lLFxuICAgICAgICBpc0Zyb250ZW5kQ2FuY2VsbGVkOiB0cnVlLFxuICAgICAgICAuLi4oaXRlbS5wcm9qZWN0X21ldGFkYXRhICYmIHsgcHJvamVjdE1ldGFkYXRhOiB7IGlzX2RlbGV0ZWQ6IGl0ZW0ucHJvamVjdF9tZXRhZGF0YS5pc19kZWxldGVkIH0gfSksXG4gICAgICB9KVxuICAgIH1cbiAgfSlcblxuICByZXR1cm4gbWFwcGVkSXRlbXNcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsU0FBU0EsT0FBTyxRQUFRLDhCQUE4QjtBQUFBLFNBQUFDLEdBQUEsSUFBQUMsSUFBQTtBQUd0RCxPQUFPLElBQU1DLGNBQStCLEdBQUc7RUFDN0NDLEVBQUUsRUFBRSxXQUFXO0VBQ2ZDLElBQUksRUFBRSxNQUFNO0VBQ1pDLFVBQVUsZUFDUkosSUFBQTtJQUFLSyxLQUFLLEVBQUU7TUFBRUMsT0FBTyxFQUFFLE1BQU07TUFBRUMsVUFBVSxFQUFFLFFBQVE7TUFBRUMsY0FBYyxFQUFFLFFBQVE7TUFBRUMsUUFBUSxFQUFFLFFBQVE7TUFBRUMsR0FBRyxFQUFFO0lBQUUsQ0FBRTtJQUFBQyxRQUFBLGVBQzFHWCxJQUFBLENBQUNGLE9BQU8sSUFBRTtFQUFDLENBQ1I7QUFFVCxDQUFDO0FBRUQsSUFBTWMsMkJBQTJCLEdBQUcsU0FBOUJBLDJCQUEyQkEsQ0FDL0JDLFdBQW1ELEVBQ25EQyxJQUEwQixFQUN2QjtFQUNILElBQUksQ0FBQ0MsS0FBSyxDQUFDQyxPQUFPLENBQUNILFdBQVcsQ0FBQyxFQUFFLE9BQU8sRUFBRTtFQUUxQyxPQUFPQSxXQUFXLENBQUNJLE1BQU0sQ0FBQyxVQUFBQyxVQUFVLEVBQUk7SUFDdEMsSUFBTUMsY0FBYyxHQUFHLENBQUFELFVBQVUsYUFBVkEsVUFBVSx1QkFB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
|
|
279
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJDb3JMb2dvIiwianN4IiwiX2pzeCIsIkFTU0lTVEFOVF9VU0VSIiwiaWQiLCJuYW1lIiwiYXZhdGFySWNvbiIsInN0eWxlIiwiZGlzcGxheSIsImFsaWduSXRlbXMiLCJqdXN0aWZ5Q29udGVudCIsInBvc2l0aW9uIiwidG9wIiwiY2hpbGRyZW4iLCJnZXRNZXNzYWdlQXR0YWNobWVudHNCeVJvbGUiLCJhdHRhY2htZW50cyIsInJvbGUiLCJBcnJheSIsImlzQXJyYXkiLCJmaWx0ZXIiLCJhdHRhY2htZW50IiwiYXR0YWNobWVudFJvbGUiLCJyZXNvbHZlQXBwcm92YWxTdGF0dXMiLCJzdGF0dXMiLCJtYXBDaGF0TWVzc2FnZXMiLCJpdGVtcyIsImN1cnJlbnRVc2VyIiwiY2FuY2VsbGVkVGV4dCIsImhpdGxHcm91cHMiLCJNYXAiLCJmb3JFYWNoIiwiaXRlbSIsImluZGV4IiwicGVuZGluZ19hcHByb3ZhbCIsIm90aWQiLCJvcmlnaW5hbF90aHJlYWRfaWQiLCJ0aHJlYWRfaWQiLCJtZXNzYWdlX2lkIiwiZXhpc3RpbmciLCJnZXQiLCJwdXNoIiwic2V0IiwiZmlyc3RJbmRleCIsImVtaXR0ZWRHcm91cHMiLCJTZXQiLCJtYXBwZWRJdGVtcyIsIl9pdGVtJHBlbmRpbmdfYXBwcm92YSIsIl9pdGVtJHByb2plY3RfbWV0YWRhdCIsIl9pdGVtJHByb2plY3RfbWV0YWRhdDIiLCJfaXRlbSRjbGllbnRfbWV0YWRhdGEiLCJfaXRlbSRjbGllbnRfbWV0YWRhdGEyIiwiX2l0ZW0kcHJvamVjdF9tZXRhZGF0MyIsIl9pdGVtJHByb2plY3RfbWV0YWRhdDQiLCJfaXRlbSRjbGllbnRfbWV0YWRhdGEzIiwiX2l0ZW0kY2xpZW50X21ldGFkYXRhNCIsImlzSGl0bEl0ZW0iLCJfZmlyc3RJdGVtJHByb2plY3RfbWUzIiwiX2ZpcnN0SXRlbSRwcm9qZWN0X21lNCIsIl9maXJzdEl0ZW0kY2xpZW50X21ldDMiLCJfZmlyc3RJdGVtJGNsaWVudF9tZXQ0IiwiX2dyb3VwJGl0ZW1zJGZpbmQiLCJoYXMiLCJhZGQiLCJncm91cCIsImZpcnN0SXRlbSIsImlzTWFudWFsQXBwcm92YWwiLCJzb21lIiwiZ2kiLCJfZ2kkcGVuZGluZ19hcHByb3ZhbCIsIm1hbnVhbF9hcHByb3ZhbF9kZXRlY3RlZCIsInF1ZXN0aW9uIiwiX2ZpcnN0SXRlbSRwcm9qZWN0X21lIiwiX2ZpcnN0SXRlbSRwcm9qZWN0X21lMiIsIl9maXJzdEl0ZW0kY2xpZW50X21ldCIsIl9maXJzdEl0ZW0kY2xpZW50X21ldDIiLCJfb2JqZWN0U3ByZWFkIiwiY29uY2F0IiwibWVtb3J5X3Nlc3Npb25faWQiLCJhZ2VudElkIiwiYWdlbnRfaWQiLCJtZXNzYWdlIiwiZGF0ZSIsIkRhdGUiLCJ0aW1lc3RhbXAiLCJ1c2VyIiwicHJvamVjdElkIiwicHJvamVjdF9tZXRhZGF0YSIsInByb2plY3ROYW1lIiwiY2xpZW50SWQiLCJjbGllbnRfbWV0YWRhdGEiLCJjbGllbnROYW1lIiwic291cmNlcyIsInByb2plY3RNZXRhZGF0YSIsImlzX2RlbGV0ZWQiLCJjb250ZXh0X21lc3NhZ2UiLCJjb250ZXh0TWVzc2FnZSIsInBlbmRpbmdBY3Rpb25zIiwibWFwIiwidG9vbF9jYWxsX2lkIiwidG9vbF9uYW1lIiwidG9vbF9hcmdzIiwic3RhdHVzZXMiLCJncm91cFN0YXR1cyIsInMiLCJhbnN3ZXJNZXNzYWdlIiwid2FzSGVscGZ1bCIsIndhc19oZWxwZnVsIiwiYXBwcm92YWwiLCJ0eXBlIiwicGVuZGluZ19hY3Rpb25zIiwidG90YWxfYWN0aW9ucyIsImxlbmd0aCIsInNlc3Npb25faWQiLCJtZXRhZGF0YSIsIl9naSRwZW5kaW5nX2FwcHJvdmFsMiIsIndhcm5pbmdfbWVzc2FnZSIsImZpbmQiLCJfZ2kkcGVuZGluZ19hcHByb3ZhbDMiLCJ1bmRlZmluZWQiLCJhcHByb3ZhbFN0YXR1cyIsInJlamVjdGVkSXRlbSIsImFuc3dlciIsInN0YXJ0c1dpdGgiLCJfcmVqZWN0ZWRJdGVtJHByb2plY3QiLCJfcmVqZWN0ZWRJdGVtJHByb2plY3QyIiwiX3JlamVjdGVkSXRlbSRjbGllbnRfIiwiX3JlamVjdGVkSXRlbSRjbGllbnRfMiIsInN1Z2dlc3Rpb25zIiwic3VnZ2VzdF9yZXBseSIsImlzX2NhbmNlbGxlZCIsIl9pdGVtJHByb2plY3RfbWV0YWRhdDUiLCJfaXRlbSRwcm9qZWN0X21ldGFkYXQ2IiwiX2l0ZW0kY2xpZW50X21ldGFkYXRhNSIsIl9pdGVtJGNsaWVudF9tZXRhZGF0YTYiLCJfaXRlbSRwcm9qZWN0X21ldGFkYXQ3IiwiX2l0ZW0kcHJvamVjdF9tZXRhZGF0OCIsIl9pdGVtJGNsaWVudF9tZXRhZGF0YTciLCJfaXRlbSRjbGllbnRfbWV0YWRhdGE4IiwiaXNGcm9udGVuZENhbmNlbGxlZCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zZXJ2aWNlcy91dGlscy9tYXBDaGF0TWVzc2FnZXMudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIGltcG9ydC9uby1jeWNsZSAqL1xuaW1wb3J0IHsgQ29yTG9nbyB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvYXRvbXMvaWNvbnMnXG5pbXBvcnQgeyBDaGF0TWVzc2FnZSwgQ2hhdE1lc3NhZ2VJdGVtUmVzcG9uc2UsIENoYXRNZXNzYWdlVXNlciB9IGZyb20gJy4uLy4uL3R5cGVzL0NoYXQnXG4vKiBlc2xpbnQtZW5hYmxlIGltcG9ydC9uby1jeWNsZSAqL1xuXG5leHBvcnQgY29uc3QgQVNTSVNUQU5UX1VTRVI6IENoYXRNZXNzYWdlVXNlciA9IHtcbiAgaWQ6ICdhc3Npc3RhbnQnLFxuICBuYW1lOiAnTWFpYScsXG4gIGF2YXRhckljb246IChcbiAgICA8ZGl2IHN0eWxlPXt7IGRpc3BsYXk6ICdmbGV4JywgYWxpZ25JdGVtczogJ2NlbnRlcicsIGp1c3RpZnlDb250ZW50OiAnY2VudGVyJywgcG9zaXRpb246ICdzdGlja3knLCB0b3A6IDAgfX0+XG4gICAgICA8Q29yTG9nbyAvPlxuICAgIDwvZGl2PlxuICApLFxufVxuXG5jb25zdCBnZXRNZXNzYWdlQXR0YWNobWVudHNCeVJvbGUgPSAoXG4gIGF0dGFjaG1lbnRzOiBDaGF0TWVzc2FnZUl0ZW1SZXNwb25zZVsnYXR0YWNobWVudHMnXSxcbiAgcm9sZTogJ3VzZXInIHwgJ2Fzc2lzdGFudCdcbikgPT4ge1xuICBpZiAoIUFycmF5LmlzQXJyYXkoYXR0YWNobWVudHMpKSByZXR1cm4gW11cblxuICByZXR1cm4gYXR0YWNobWVudHMuZmlsdGVyKGF0dGFjaG1lbnQgPT4ge1xuICAgIGNvbnN0IGF0dGFjaG1lbnRSb2xlID0gYXR0YWNobWVudD8ucm9sZSB8fCAndXNlcidcbiAgICByZXR1cm4gcm9sZSA9PT0gJ2Fzc2lzdGFudCcgPyBhdHRhY2htZW50Um9sZSA9PT0gJ2Fzc2lzdGFudCcgOiBhdHRhY2htZW50Um9sZSAhPT0gJ2Fzc2lzdGFudCdcbiAgfSlcbn1cblxuLyoqXG4gKiBSZXNvbHZlIHRoZSBmcm9udGVuZCBhcHByb3ZhbFN0YXR1cyBmcm9tIHRoZSBiYWNrZW5kIE1lbW9yeVNlc3Npb24gc3RhdHVzLlxuICovXG5mdW5jdGlvbiByZXNvbHZlQXBwcm92YWxTdGF0dXMoc3RhdHVzPzogc3RyaW5nKTogJ3BlbmRpbmcnIHwgJ2FwcHJvdmVkJyB8ICdyZWplY3RlZCcge1xuICBpZiAoc3RhdHVzID09PSAnY29tcGxldGVkJyB8fCBzdGF0dXMgPT09ICdhcHByb3ZlZCcpIHJldHVybiAnYXBwcm92ZWQnXG4gIGlmIChzdGF0dXMgPT09ICdyZWplY3RlZCcpIHJldHVybiAncmVqZWN0ZWQnXG4gIHJldHVybiAncGVuZGluZydcbn1cblxuZXhwb3J0IGNvbnN0IG1hcENoYXRNZXNzYWdlcyA9IChcbiAgaXRlbXM6IENoYXRNZXNzYWdlSXRlbVJlc3BvbnNlW10sXG4gIGN1cnJlbnRVc2VyOiBDaGF0TWVzc2FnZVVzZXIsXG4gIGNhbmNlbGxlZFRleHQ/OiBzdHJpbmdcbik6IENoYXRNZXNzYWdlW10gPT4ge1xuICAvLyDilIDilIAgMS4gR3JvdXAgSElUTCBpdGVtcyB0aGF0IHNoYXJlIHRoZSBzYW1lIG9yaWdpbmFsX3RocmVhZF9pZCDilIDilIBcbiAgLy8gU28gbXVsdGlwbGUgTWVtb3J5U2Vzc2lvbnMgZnJvbSBhIHNpbmdsZSBISVRMIGJhdGNoIHJlbmRlciBpbiBvbmUgQXBwcm92YWxCb3guXG4gIGNvbnN0IGhpdGxHcm91cHMgPSBuZXcgTWFwPHN0cmluZywgeyBpdGVtczogQ2hhdE1lc3NhZ2VJdGVtUmVzcG9uc2VbXTsgZmlyc3RJbmRleDogbnVtYmVyIH0+KClcbiAgaXRlbXMuZm9yRWFjaCgoaXRlbSwgaW5kZXgpID0+IHtcbiAgICBpZiAoIWl0ZW0ucGVuZGluZ19hcHByb3ZhbCkgcmV0dXJuXG4gICAgY29uc3Qgb3RpZCA9IGl0ZW0ucGVuZGluZ19hcHByb3ZhbC5vcmlnaW5hbF90aHJlYWRfaWQgfHwgaXRlbS50aHJlYWRfaWQgfHwgaXRlbS5tZXNzYWdlX2lkXG4gICAgaWYgKCFvdGlkKSByZXR1cm5cblxuICAgIGNvbnN0IGV4aXN0aW5nID0gaGl0bEdyb3Vwcy5nZXQob3RpZClcbiAgICBpZiAoZXhpc3RpbmcpIHtcbiAgICAgIGV4aXN0aW5nLml0ZW1zLnB1c2goaXRlbSlcbiAgICB9IGVsc2Uge1xuICAgICAgaGl0bEdyb3Vwcy5zZXQob3RpZCwgeyBpdGVtczogW2l0ZW1dLCBmaXJzdEluZGV4OiBpbmRleCB9KVxuICAgIH1cbiAgfSlcblxuICAvLyBUcmFjayB3aGljaCBvcmlnaW5hbF90aHJlYWRfaWRzIGhhdmUgYWxyZWFkeSBiZWVuIGVtaXR0ZWRcbiAgY29uc3QgZW1pdHRlZEdyb3VwcyA9IG5ldyBTZXQ8c3RyaW5nPigpXG5cbiAgY29uc3QgbWFwcGVkSXRlbXM6IENoYXRNZXNzYWdlW10gPSBbXVxuXG4gIGl0ZW1zLmZvckVhY2goaXRlbSA9PiB7XG4gICAgY29uc3QgaXNIaXRsSXRlbSA9ICEhaXRlbS5wZW5kaW5nX2FwcHJvdmFsXG4gICAgY29uc3Qgb3RpZCA9IGl0ZW0ucGVuZGluZ19hcHByb3ZhbD8ub3JpZ2luYWxfdGhyZWFkX2lkIHx8IGl0ZW0udGhyZWFkX2lkIHx8IGl0ZW0ubWVzc2FnZV9pZCB8fCAnJ1xuXG4gICAgLy8g4pSA4pSAIEhJVEwgaXRlbXM6IGVtaXQgb25jZSBwZXIgZ3JvdXAgKG9uIHRoZSBmaXJzdCBpdGVtIG9mIHRoZSBncm91cCkg4pSA4pSAXG4gICAgaWYgKGlzSGl0bEl0ZW0gJiYgb3RpZCkge1xuICAgICAgaWYgKGVtaXR0ZWRHcm91cHMuaGFzKG90aWQpKSByZXR1cm4gLy8gQWxyZWFkeSBlbWl0dGVkIHRoaXMgZ3JvdXBcbiAgICAgIGVtaXR0ZWRHcm91cHMuYWRkKG90aWQpXG5cbiAgICAgIGNvbnN0IGdyb3VwID0gaGl0bEdyb3Vwcy5nZXQob3RpZCkhXG4gICAgICBjb25zdCBmaXJzdEl0ZW0gPSBncm91cC5pdGVtc1swXVxuICAgICAgY29uc3QgaXNNYW51YWxBcHByb3ZhbCA9IGdyb3VwLml0ZW1zLnNvbWUoZ2kgPT4gZ2kucGVuZGluZ19hcHByb3ZhbD8ubWFudWFsX2FwcHJvdmFsX2RldGVjdGVkKVxuXG4gICAgICAvLyBPbmx5IGVtaXQgcXVlc3Rpb24gaWYgaXQgaGFzIGNvbnRlbnQgKGF2b2lkIGR1cGxpY2F0ZSBlbXB0eSBxdWVzdGlvbnMpXG4gICAgICBpZiAoZmlyc3RJdGVtLnF1ZXN0aW9uKSB7XG4gICAgICAgIG1hcHBlZEl0ZW1zLnB1c2goe1xuICAgICAgICAgIGlkOiBgJHtmaXJzdEl0ZW0ubWVzc2FnZV9pZCB8fCBmaXJzdEl0ZW0ubWVtb3J5X3Nlc3Npb25faWR9LXF1ZXN0aW9uYCxcbiAgICAgICAgICBhZ2VudElkOiBmaXJzdEl0ZW0uYWdlbnRfaWQsXG4gICAgICAgICAgbWVzc2FnZTogZmlyc3RJdGVtLnF1ZXN0aW9uLFxuICAgICAgICAgIGRhdGU6IG5ldyBEYXRlKGZpcnN0SXRlbS50aW1lc3RhbXApLFxuICAgICAgICAgIHVzZXI6IGN1cnJlbnRVc2VyLFxuICAgICAgICAgIHByb2plY3RJZDogZmlyc3RJdGVtLnByb2plY3RfbWV0YWRhdGE/LmlkLFxuICAgICAgICAgIHByb2plY3ROYW1lOiBmaXJzdEl0ZW0ucHJvamVjdF9tZXRhZGF0YT8ubmFtZSxcbiAgICAgICAgICBjbGllbnRJZDogZmlyc3RJdGVtLmNsaWVudF9tZXRhZGF0YT8uaWQsXG4gICAgICAgICAgY2xpZW50TmFtZTogZmlyc3RJdGVtLmNsaWVudF9tZXRhZGF0YT8ubmFtZSxcbiAgICAgICAgICBhdHRhY2htZW50czogZ2V0TWVzc2FnZUF0dGFjaG1lbnRzQnlSb2xlKGZpcnN0SXRlbS5hdHRhY2htZW50cywgJ3VzZXInKSxcbiAgICAgICAgICBzb3VyY2VzOiBudWxsLFxuICAgICAgICAgIC4uLihmaXJzdEl0ZW0ucHJvamVjdF9tZXRhZGF0YSAmJiB7IHByb2plY3RNZXRhZGF0YTogeyBpc19kZWxldGVkOiBmaXJzdEl0ZW0ucHJvamVjdF9tZXRhZGF0YS5pc19kZWxldGVkIH0gfSksXG4gICAgICAgICAgLi4uKGZpcnN0SXRlbS5jb250ZXh0X21lc3NhZ2UgPyB7IGNvbnRleHRNZXNzYWdlOiBmaXJzdEl0ZW0uY29udGV4dF9tZXNzYWdlIH0gOiB7fSksXG4gICAgICAgIH0pXG4gICAgICB9XG5cbiAgICAgIC8vIE9taXRpciBlbCBtZW5zYWplIGNvbiBBcHByb3ZhbEJveCBwYXJhIGFwcm9iYWNpb25lcyBtYW51YWxlczogZGVqYSB2aXNpYmxlIHNvbG8gbGEgcHJlZ3VudGEgZGVsIHVzdWFyaW9cbiAgICAgIGlmIChpc01hbnVhbEFwcHJvdmFsKSByZXR1cm5cblxuICAgICAgLy8gQnVpbGQgbWVyZ2VkIHBlbmRpbmdfYWN0aW9ucyBmcm9tIGFsbCBpdGVtcyBpbiB0aGUgZ3JvdXBcbiAgICAgIGNvbnN0IHBlbmRpbmdBY3Rpb25zID0gZ3JvdXAuaXRlbXMubWFwKGdpID0+ICh7XG4gICAgICAgIHRocmVhZF9pZDogZ2kudGhyZWFkX2lkIHx8ICcnLFxuICAgICAgICB0b29sX2NhbGxfaWQ6IGdpLnBlbmRpbmdfYXBwcm92YWwhLnRvb2xfY2FsbF9pZCB8fCAnJyxcbiAgICAgICAgdG9vbF9uYW1lOiBnaS5wZW5kaW5nX2FwcHJvdmFsIS50b29sX25hbWUgfHwgJ3Vua25vd24nLFxuICAgICAgICB0b29sX2FyZ3M6IGdpLnBlbmRpbmdfYXBwcm92YWwhLnRvb2xfYXJncyB8fCB7fSxcbiAgICAgIH0pKVxuXG4gICAgICAvLyBSZXNvbHZlIHN0YXR1czogaWYgQU5ZIGlzIHBlbmRpbmcg4oaSIHBlbmRpbmc7IGlmIEFMTCBhcHByb3ZlZCDihpIgYXBwcm92ZWQ7IGVsc2UgcmVqZWN0ZWRcbiAgICAgIGNvbnN0IHN0YXR1c2VzID0gZ3JvdXAuaXRlbXMubWFwKGdpID0+IHJlc29sdmVBcHByb3ZhbFN0YXR1cyhnaS5zdGF0dXMpKVxuICAgICAgbGV0IGdyb3VwU3RhdHVzOiAncGVuZGluZycgfCAnYXBwcm92ZWQnIHwgJ3JlamVjdGVkJyA9ICdhcHByb3ZlZCdcbiAgICAgIGlmIChzdGF0dXNlcy5zb21lKHMgPT4gcyA9PT0gJ3BlbmRpbmcnKSkge1xuICAgICAgICBncm91cFN0YXR1cyA9ICdwZW5kaW5nJ1xuICAgICAgfSBlbHNlIGlmIChzdGF0dXNlcy5zb21lKHMgPT4gcyA9PT0gJ3JlamVjdGVkJykpIHtcbiAgICAgICAgZ3JvdXBTdGF0dXMgPSAncmVqZWN0ZWQnXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGFuc3dlck1lc3NhZ2U6IENoYXRNZXNzYWdlID0ge1xuICAgICAgICBpZDogYGFwcHJvdmFsLSR7b3RpZH1gLFxuICAgICAgICBhZ2VudElkOiBmaXJzdEl0ZW0uYWdlbnRfaWQsXG4gICAgICAgIG1lc3NhZ2U6ICcnLFxuICAgICAgICBkYXRlOiBuZXcgRGF0ZShmaXJzdEl0ZW0udGltZXN0YW1wKSxcbiAgICAgICAgdXNlcjogQVNTSVNUQU5UX1VTRVIsXG4gICAgICAgIHByb2plY3RJZDogZmlyc3RJdGVtLnByb2plY3RfbWV0YWRhdGE/LmlkLFxuICAgICAgICBwcm9qZWN0TmFtZTogZmlyc3RJdGVtLnByb2plY3RfbWV0YWRhdGE/Lm5hbWUsXG4gICAgICAgIGNsaWVudElkOiBmaXJzdEl0ZW0uY2xpZW50X21ldGFkYXRhPy5pZCxcbiAgICAgICAgY2xpZW50TmFtZTogZmlyc3RJdGVtLmNsaWVudF9tZXRhZGF0YT8ubmFtZSxcbiAgICAgICAgd2FzSGVscGZ1bDogZmlyc3RJdGVtLndhc19oZWxwZnVsLFxuICAgICAgICBhdHRhY2htZW50czogZ2V0TWVzc2FnZUF0dGFjaG1lbnRzQnlSb2xlKGZpcnN0SXRlbS5hdHRhY2htZW50cywgJ2Fzc2lzdGFudCcpLFxuICAgICAgICBzb3VyY2VzOiBbXSxcbiAgICAgICAgLi4uKGZpcnN0SXRlbS5wcm9qZWN0X21ldGFkYXRhICYmIHsgcHJvamVjdE1ldGFkYXRhOiB7IGlzX2RlbGV0ZWQ6IGZpcnN0SXRlbS5wcm9qZWN0X21ldGFkYXRhLmlzX2RlbGV0ZWQgfSB9KSxcbiAgICAgICAgYXBwcm92YWw6IHtcbiAgICAgICAgICB0eXBlOiAnYXBwcm92YWxfcmVxdWlyZWQnLFxuICAgICAgICAgIHBlbmRpbmdfYWN0aW9uczogcGVuZGluZ0FjdGlvbnMsXG4gICAgICAgICAgdG90YWxfYWN0aW9uczogcGVuZGluZ0FjdGlvbnMubGVuZ3RoLFxuICAgICAgICAgIG9yaWdpbmFsX3RocmVhZF9pZDogb3RpZCxcbiAgICAgICAgICBzZXNzaW9uX2lkOiBmaXJzdEl0ZW0ucGVuZGluZ19hcHByb3ZhbCEuc2Vzc2lvbl9pZCB8fCAnJyxcbiAgICAgICAgICBtZXRhZGF0YTogZmlyc3RJdGVtLnBlbmRpbmdfYXBwcm92YWwhLm1ldGFkYXRhIHx8IHt9LFxuICAgICAgICAgIG1hbnVhbF9hcHByb3ZhbF9kZXRlY3RlZDogZ3JvdXAuaXRlbXMuc29tZShnaSA9PiBnaS5wZW5kaW5nX2FwcHJvdmFsPy5tYW51YWxfYXBwcm92YWxfZGV0ZWN0ZWQpLFxuICAgICAgICAgIHdhcm5pbmdfbWVzc2FnZTpcbiAgICAgICAgICAgIGdyb3VwLml0ZW1zLmZpbmQoZ2kgPT4gZ2kucGVuZGluZ19hcHByb3ZhbD8ud2FybmluZ19tZXNzYWdlKT8ucGVuZGluZ19hcHByb3ZhbD8ud2FybmluZ19tZXNzYWdlIHx8XG4gICAgICAgICAgICB1bmRlZmluZWQsXG4gICAgICAgIH0sXG4gICAgICAgIGFwcHJvdmFsU3RhdHVzOiBncm91cFN0YXR1cyxcbiAgICAgIH1cblxuICAgICAgbWFwcGVkSXRlbXMucHVzaChhbnN3ZXJNZXNzYWdlKVxuXG4gICAgICAvLyBJZiByZWplY3RlZCwgYWRkIHRoZSByZWplY3Rpb24gbWVzc2FnZVxuICAgICAgaWYgKGdyb3VwU3RhdHVzID09PSAncmVqZWN0ZWQnKSB7XG4gICAgICAgIGNvbnN0IHJlamVjdGVkSXRlbSA9IGdyb3VwLml0ZW1zLmZpbmQoXG4gICAgICAgICAgZ2kgPT4gZ2kuc3RhdHVzID09PSAncmVqZWN0ZWQnICYmIGdpLmFuc3dlciAmJiAhZ2kuYW5zd2VyLnN0YXJ0c1dpdGgoJ1tQZW5kaWVudGUnKVxuICAgICAgICApXG4gICAgICAgIGlmIChyZWplY3RlZEl0ZW0pIHtcbiAgICAgICAgICBtYXBwZWRJdGVtcy5wdXNoKHtcbiAgICAgICAgICAgIGlkOiBgJHtyZWplY3RlZEl0ZW0ubWVzc2FnZV9pZCB8fCByZWplY3RlZEl0ZW0ubWVtb3J5X3Nlc3Npb25faWR9LXJlamVjdGlvbmAsXG4gICAgICAgICAgICBhZ2VudElkOiByZWplY3RlZEl0ZW0uYWdlbnRfaWQsXG4gICAgICAgICAgICBtZXNzYWdlOiByZWplY3RlZEl0ZW0uYW5zd2VyLFxuICAgICAgICAgICAgZGF0ZTogbmV3IERhdGUocmVqZWN0ZWRJdGVtLnRpbWVzdGFtcCksXG4gICAgICAgICAgICB1c2VyOiBBU1NJU1RBTlRfVVNFUixcbiAgICAgICAgICAgIHByb2plY3RJZDogcmVqZWN0ZWRJdGVtLnByb2plY3RfbWV0YWRhdGE/LmlkLFxuICAgICAgICAgICAgcHJvamVjdE5hbWU6IHJlamVjdGVkSXRlbS5wcm9qZWN0X21ldGFkYXRhPy5uYW1lLFxuICAgICAgICAgICAgY2xpZW50SWQ6IHJlamVjdGVkSXRlbS5jbGllbnRfbWV0YWRhdGE/LmlkLFxuICAgICAgICAgICAgY2xpZW50TmFtZTogcmVqZWN0ZWRJdGVtLmNsaWVudF9tZXRhZGF0YT8ubmFtZSxcbiAgICAgICAgICAgIGF0dGFjaG1lbnRzOiBbXSxcbiAgICAgICAgICAgIHNvdXJjZXM6IFtdLFxuICAgICAgICAgICAgLi4uKHJlamVjdGVkSXRlbS5wcm9qZWN0X21ldGFkYXRhICYmIHtcbiAgICAgICAgICAgICAgcHJvamVjdE1ldGFkYXRhOiB7IGlzX2RlbGV0ZWQ6IHJlamVjdGVkSXRlbS5wcm9qZWN0X21ldGFkYXRhLmlzX2RlbGV0ZWQgfSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgIH0pXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgLy8g4pSA4pSAIE5vcm1hbCAobm9uLUhJVEwpIGl0ZW1zIOKUgOKUgFxuICAgIG1hcHBlZEl0ZW1zLnB1c2goe1xuICAgICAgaWQ6IGAke2l0ZW0ubWVzc2FnZV9pZCB8fCBpdGVtLm1lbW9yeV9zZXNzaW9uX2lkfS1xdWVzdGlvbmAsXG4gICAgICBhZ2VudElkOiBpdGVtLmFnZW50X2lkLFxuICAgICAgbWVzc2FnZTogaXRlbS5xdWVzdGlvbixcbiAgICAgIGRhdGU6IG5ldyBEYXRlKGl0ZW0udGltZXN0YW1wKSxcbiAgICAgIHVzZXI6IGN1cnJlbnRVc2VyLFxuICAgICAgcHJvamVjdElkOiBpdGVtLnByb2plY3RfbWV0YWRhdGE/LmlkLFxuICAgICAgcHJvamVjdE5hbWU6IGl0ZW0ucHJvamVjdF9tZXRhZGF0YT8ubmFtZSxcbiAgICAgIGNsaWVudElkOiBpdGVtLmNsaWVudF9tZXRhZGF0YT8uaWQsXG4gICAgICBjbGllbnROYW1lOiBpdGVtLmNsaWVudF9tZXRhZGF0YT8ubmFtZSxcbiAgICAgIGF0dGFjaG1lbnRzOiBnZXRNZXNzYWdlQXR0YWNobWVudHNCeVJvbGUoaXRlbS5hdHRhY2htZW50cywgJ3VzZXInKSxcbiAgICAgIHNvdXJjZXM6IG51bGwsXG4gICAgICAuLi4oaXRlbS5wcm9qZWN0X21ldGFkYXRhICYmIHsgcHJvamVjdE1ldGFkYXRhOiB7IGlzX2RlbGV0ZWQ6IGl0ZW0ucHJvamVjdF9tZXRhZGF0YS5pc19kZWxldGVkIH0gfSksXG4gICAgICAuLi4oaXRlbS5jb250ZXh0X21lc3NhZ2UgPyB7IGNvbnRleHRNZXNzYWdlOiBpdGVtLmNvbnRleHRfbWVzc2FnZSB9IDoge30pLFxuICAgIH0pXG5cbiAgICBjb25zdCBhbnN3ZXJNZXNzYWdlOiBDaGF0TWVzc2FnZSA9IHtcbiAgICAgIGlkOiBgJHtpdGVtLm1lc3NhZ2VfaWQgfHwgaXRlbS5tZW1vcnlfc2Vzc2lvbl9pZH0tYW5zd2VyYCxcbiAgICAgIGFnZW50SWQ6IGl0ZW0uYWdlbnRfaWQsXG4gICAgICBtZXNzYWdlOiBpdGVtLmFuc3dlcixcbiAgICAgIGRhdGU6IG5ldyBEYXRlKGl0ZW0udGltZXN0YW1wKSxcbiAgICAgIHVzZXI6IEFTU0lTVEFOVF9VU0VSLFxuICAgICAgcHJvamVjdElkOiBpdGVtLnByb2plY3RfbWV0YWRhdGE/LmlkLFxuICAgICAgcHJvamVjdE5hbWU6IGl0ZW0ucHJvamVjdF9tZXRhZGF0YT8ubmFtZSxcbiAgICAgIGNsaWVudElkOiBpdGVtLmNsaWVudF9tZXRhZGF0YT8uaWQsXG4gICAgICBjbGllbnROYW1lOiBpdGVtLmNsaWVudF9tZXRhZGF0YT8ubmFtZSxcbiAgICAgIHdhc0hlbHBmdWw6IGl0ZW0ud2FzX2hlbHBmdWwsXG4gICAgICBhdHRhY2htZW50czogZ2V0TWVzc2FnZUF0dGFjaG1lbnRzQnlSb2xlKGl0ZW0uYXR0YWNobWVudHMsICdhc3Npc3RhbnQnKSxcbiAgICAgIHNvdXJjZXM6IGl0ZW0uc291cmNlcyB8fCBbXSxcbiAgICAgIHN1Z2dlc3Rpb25zOiBpdGVtLnN1Z2dlc3RfcmVwbHkgfHwgaXRlbS5zdWdnZXN0aW9ucyB8fCBbXSxcbiAgICAgIGlzX2NhbmNlbGxlZDogaXRlbS5pc19jYW5jZWxsZWQsXG4gICAgICAuLi4oaXRlbS5wcm9qZWN0X21ldGFkYXRhICYmIHsgcHJvamVjdE1ldGFkYXRhOiB7IGlzX2RlbGV0ZWQ6IGl0ZW0ucHJvamVjdF9tZXRhZGF0YS5pc19kZWxldGVkIH0gfSksXG4gICAgfVxuXG4gICAgbWFwcGVkSXRlbXMucHVzaChhbnN3ZXJNZXNzYWdlKVxuXG4gICAgaWYgKGl0ZW0uc3RhdHVzID09PSAncmVqZWN0ZWQnICYmIGl0ZW0uYW5zd2VyICYmICFpdGVtLmFuc3dlci5zdGFydHNXaXRoKCdbUGVuZGllbnRlJykpIHtcbiAgICAgIG1hcHBlZEl0ZW1zLnB1c2goe1xuICAgICAgICBpZDogYCR7aXRlbS5tZXNzYWdlX2lkIHx8IGl0ZW0ubWVtb3J5X3Nlc3Npb25faWR9LXJlamVjdGlvbmAsXG4gICAgICAgIGFnZW50SWQ6IGl0ZW0uYWdlbnRfaWQsXG4gICAgICAgIG1lc3NhZ2U6IGl0ZW0uYW5zd2VyLFxuICAgICAgICBkYXRlOiBuZXcgRGF0ZShpdGVtLnRpbWVzdGFtcCksXG4gICAgICAgIHVzZXI6IEFTU0lTVEFOVF9VU0VSLFxuICAgICAgICBwcm9qZWN0SWQ6IGl0ZW0ucHJvamVjdF9tZXRhZGF0YT8uaWQsXG4gICAgICAgIHByb2plY3ROYW1lOiBpdGVtLnByb2plY3RfbWV0YWRhdGE/Lm5hbWUsXG4gICAgICAgIGNsaWVudElkOiBpdGVtLmNsaWVudF9tZXRhZGF0YT8uaWQsXG4gICAgICAgIGNsaWVudE5hbWU6IGl0ZW0uY2xpZW50X21ldGFkYXRhPy5uYW1lLFxuICAgICAgICBhdHRhY2htZW50czogW10sXG4gICAgICAgIHNvdXJjZXM6IFtdLFxuICAgICAgICAuLi4oaXRlbS5wcm9qZWN0X21ldGFkYXRhICYmIHsgcHJvamVjdE1ldGFkYXRhOiB7IGlzX2RlbGV0ZWQ6IGl0ZW0ucHJvamVjdF9tZXRhZGF0YS5pc19kZWxldGVkIH0gfSksXG4gICAgICB9KVxuICAgIH1cblxuICAgIGlmIChpdGVtLmlzX2NhbmNlbGxlZCkge1xuICAgICAgbWFwcGVkSXRlbXMucHVzaCh7XG4gICAgICAgIGlkOiBgJHtpdGVtLm1lc3NhZ2VfaWQgfHwgaXRlbS5tZW1vcnlfc2Vzc2lvbl9pZH0tY2FuY2VsbGVkYCxcbiAgICAgICAgYWdlbnRJZDogaXRlbS5hZ2VudF9pZCxcbiAgICAgICAgbWVzc2FnZTogY2FuY2VsbGVkVGV4dCB8fCAnU2UgaGEgY2FuY2VsYWRvIGxhIGLDunNxdWVkYS4nLFxuICAgICAgICBkYXRlOiBuZXcgRGF0ZShpdGVtLnRpbWVzdGFtcCksXG4gICAgICAgIHVzZXI6IEFTU0lTVEFOVF9VU0VSLFxuICAgICAgICBwcm9qZWN0SWQ6IGl0ZW0ucHJvamVjdF9tZXRhZGF0YT8uaWQsXG4gICAgICAgIHByb2plY3ROYW1lOiBpdGVtLnByb2plY3RfbWV0YWRhdGE/Lm5hbWUsXG4gICAgICAgIGNsaWVudElkOiBpdGVtLmNsaWVudF9tZXRhZGF0YT8uaWQsXG4gICAgICAgIGNsaWVudE5hbWU6IGl0ZW0uY2xpZW50X21ldGFkYXRhPy5uYW1lLFxuICAgICAgICBpc0Zyb250ZW5kQ2FuY2VsbGVkOiB0cnVlLFxuICAgICAgICAuLi4oaXRlbS5wcm9qZWN0X21ldGFkYXRhICYmIHsgcHJvamVjdE1ldGFkYXRhOiB7IGlzX2RlbGV0ZWQ6IGl0ZW0ucHJvamVjdF9tZXRhZGF0YS5pc19kZWxldGVkIH0gfSksXG4gICAgICB9KVxuICAgIH1cbiAgfSlcblxuICByZXR1cm4gbWFwcGVkSXRlbXNcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7O0FBQUE7QUFDQSxTQUFTQSxPQUFPLFFBQVEsOEJBQThCO0FBQUEsU0FBQUMsR0FBQSxJQUFBQyxJQUFBO0FBRXREOztBQUVBLE9BQU8sSUFBTUMsY0FBK0IsR0FBRztFQUM3Q0MsRUFBRSxFQUFFLFdBQVc7RUFDZkMsSUFBSSxFQUFFLE1BQU07RUFDWkMsVUFBVSxlQUNSSixJQUFBO0lBQUtLLEtBQUssRUFBRTtNQUFFQyxPQUFPLEVBQUUsTUFBTTtNQUFFQyxVQUFVLEVBQUUsUUFBUTtNQUFFQyxjQUFjLEVBQUUsUUFBUTtNQUFFQyxRQUFRLEVBQUUsUUFBUTtNQUFFQyxHQUFHLEVBQUU7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
|
package/lib/types/Chat.js
CHANGED
|
@@ -7,4 +7,4 @@ export var ChatHistoryRole = /*#__PURE__*/function (ChatHistoryRole) {
|
|
|
7
7
|
}({});
|
|
8
8
|
|
|
9
9
|
// Backend pending_approval format (before transformation)
|
|
10
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
10
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJDaGF0SGlzdG9yeVJvbGUiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvdHlwZXMvQ2hhdC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXG5pbXBvcnQgeyBSZWFjdE5vZGUgfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IFByb2plY3QgfSBmcm9tICcuL1Byb2plY3QnXG5pbXBvcnQgeyBBdHRhY2htZW50RmlsZSB9IGZyb20gJy4uL2NvbXBvbmVudHMvbW9sZWN1bGVzL0NoYXRGb290ZXIvQ2hhdEZvb3RlcidcbmltcG9ydCB7IENvbnRleHRNZXNzYWdlIH0gZnJvbSAnLi9jb250ZXh0TWVudGlvbidcblxuZXhwb3J0IHR5cGUgQ2hhdEl0ZW0gPSB7XG4gIGNoYXRfaWQ6IHN0cmluZ1xuICBjaGF0X3N0YXR1czogc3RyaW5nXG4gIGxhc3RfcXVlc3Rpb246IHN0cmluZ1xuICBsYXN0X3F1ZXN0aW9uX2RhdGU6IHN0cmluZ1xuICBtZXNzYWdlX2lkOiBzdHJpbmdcbiAgcV9hbnN3ZXJzOiBudW1iZXJcbiAgZ2VuZXJhbF9yYXRpbmc6IG51bWJlclxuICB1c2VyX2lkOiBzdHJpbmdcbn1cblxuZXhwb3J0IHR5cGUgQ2hhdFJlc3BvbnNlID0ge1xuICBpdGVtczogQ2hhdEl0ZW1bXVxuICBsYXN0X2V2YWx1YXRlZF9rZXk6IHN0cmluZ1xufVxuXG5leHBvcnQgdHlwZSBDaGF0ID0ge1xuICBpZDogc3RyaW5nXG4gIHRpdGxlOiBzdHJpbmdcbiAgZGF0ZTogRGF0ZVxuICBhZ2VudF90eXBlPzogc3RyaW5nXG59XG5cbmV4cG9ydCB0eXBlIENoYXRNZXNzYWdlVXNlciA9IHtcbiAgaWQ6IHN0cmluZ1xuICBuYW1lOiBzdHJpbmdcbiAgYXZhdGFyPzogc3RyaW5nXG4gIGF2YXRhckljb24/OiBSZWFjdE5vZGVcbn1cblxuZXhwb3J0IGVudW0gQ2hhdEhpc3RvcnlSb2xlIHtcbiAgVVNFUiA9ICd1c2VyJyxcbiAgQVNTSVNUQU5UID0gJ2Fzc2lzdGFudCcsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGVuZGluZ0FjdGlvbiB7XG4gIHRvb2xfbmFtZTogc3RyaW5nXG4gIHRvb2xfY2FsbF9pZDogc3RyaW5nXG4gIHRvb2xfYXJnczogUmVjb3JkPHN0cmluZywgYW55PiB8IGFueVtdXG4gIHRocmVhZF9pZDogc3RyaW5nIC8vIEVhY2ggYWN0aW9uIGhhcyBpdHMgb3duIHVuaXF1ZSB0aHJlYWRfaWRcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBcHByb3ZhbFJlcXVlc3Qge1xuICB0eXBlOiAnYXBwcm92YWxfcmVxdWlyZWQnXG4gIHBlbmRpbmdfYWN0aW9uczogUGVuZGluZ0FjdGlvbltdXG4gIHRvdGFsX2FjdGlvbnM6IG51bWJlclxuICBvcmlnaW5hbF90aHJlYWRfaWQ6IHN0cmluZyAvLyBPcmlnaW5hbCBjaGVja3BvaW50IHRocmVhZF9pZFxuICBzZXNzaW9uX2lkOiBzdHJpbmdcbiAgbWV0YWRhdGE6IFJlY29yZDxzdHJpbmcsIGFueT5cbiAgbWFudWFsX2FwcHJvdmFsX2RldGVjdGVkPzogYm9vbGVhblxuICB3YXJuaW5nX21lc3NhZ2U/OiBzdHJpbmdcbn1cblxuLy8gQmFja2VuZCBwZW5kaW5nX2FwcHJvdmFsIGZvcm1hdCAoYmVmb3JlIHRyYW5zZm9ybWF0aW9uKVxuZXhwb3J0IGludGVyZmFjZSBCYWNrZW5kUGVuZGluZ0FwcHJvdmFsIHtcbiAgdHlwZTogJ2FwcHJvdmFsX3JlcXVpcmVkJ1xuICB0b29sX2NhbGxfaWQ6IHN0cmluZ1xuICB0b29sX25hbWU/OiBzdHJpbmdcbiAgdG9vbF9hcmdzPzogUmVjb3JkPHN0cmluZywgYW55PiB8IGFueVtdXG4gIG9yaWdpbmFsX3RocmVhZF9pZDogc3RyaW5nXG4gIHNlc3Npb25faWQ6IHN0cmluZ1xuICBtZXRhZGF0YTogUmVjb3JkPHN0cmluZywgYW55PlxuICBtYW51YWxfYXBwcm92YWxfZGV0ZWN0ZWQ/OiBib29sZWFuXG4gIHdhcm5pbmdfbWVzc2FnZT86IHN0cmluZ1xufVxuXG5leHBvcnQgdHlwZSBDaGF0TWVzc2FnZSA9IHtcbiAgaWQ6IHN0cmluZ1xuICBtZXNzYWdlOiBzdHJpbmdcbiAgZGF0ZTogRGF0ZVxuICBpc0Vycm9yPzogYm9vbGVhblxuICBpc19jYW5jZWxsZWQ/OiBib29sZWFuXG4gIGlzRnJvbnRlbmRDYW5jZWxsZWQ/OiBib29sZWFuXG4gIHVzZXI6IENoYXRNZXNzYWdlVXNlclxuICBwcm9qZWN0SWQ/OiBudW1iZXIgfCBzdHJpbmdcbiAgcHJvamVjdE5hbWU/OiBzdHJpbmdcbiAgY2xpZW50SWQ/OiBudW1iZXIgfCBzdHJpbmdcbiAgY2xpZW50TmFtZT86IHN0cmluZ1xuICBpc0NoYW5nZVByb2plY3Q/OiBib29sZWFuXG4gIHByb2plY3Q/OiBQcm9qZWN0XG4gIGFnZW50SWQ/OiBzdHJpbmdcbiAgb3B0aW9ucz86IHtcbiAgICBpZDogbnVtYmVyIHwgc3RyaW5nXG4gICAgbmFtZT86IHN0cmluZ1xuICB9W11cbiAgcm9sZT86IENoYXRIaXN0b3J5Um9sZVxuICBzb3VyY2VzPzogYW55XG4gIGF0dGFjaG1lbnRzPzogQXR0YWNobWVudEZpbGVbXVxuICB3YXNIZWxwZnVsPzogYm9vbGVhbiB8IG51bGxcbiAgbWVtb3J5U2Vzc2lvbklkPzogc3RyaW5nXG4gIHN1Z2dlc3Rpb25zPzogc3RyaW5nW10gfCBudWxsXG4gIC8qKiBUcmFzIGFwcm9iYXIgY3JlYXRlX2FnZW50OiBhY2Npb25lcyByw6FwaWRhcyBlbiBlbCBtZW5zYWplIGZpbmFsOyByZXF1aWVyZSBhZ2VudElkIGRldGVjdGFkbyBlbiBlbCB0ZXh0byAqL1xuICBjcmVhdGVBZ2VudEZvbGxvd1VwPzogeyBhZ2VudElkOiBzdHJpbmcgfSB8IG51bGxcbiAgYXBwcm92YWw/OiBBcHByb3ZhbFJlcXVlc3RcbiAgYXBwcm92YWxTdGF0dXM/OiAncGVuZGluZycgfCAnYXBwcm92ZWQnIHwgJ3JlamVjdGVkJ1xuICBwcm9qZWN0TWV0YWRhdGE/OiB7XG4gICAgaXNfZGVsZXRlZD86IGJvb2xlYW4gfCBudWxsXG4gIH1cbiAgLyoqXG4gICAqIEVudGlkYWRlcyBtZW5jaW9uYWRhcyBjb24gYEBgIGVuIEVTRSBtZW5zYWplIHB1bnR1YWwuIE5vIHNlIHByb3BhZ2EgYWxcbiAgICogY29udGV4dG8gZ2xvYmFsIG5pIGEgb3Ryb3MgdHVybm9zOyBzw7NsbyB2aXZlIGFjw6EgcGFyYSBxdWUgZWwgcmVuZGVyZXJcbiAgICogcHVlZGEgcGludGFyIGNoaXBzIHkgcGFyYSBtYW5kYXJsbyBhbCBvcmNoZXN0cmF0b3IgdsOtYSBtZXRhZGF0YS5cbiAgICovXG4gIGNvbnRleHRNZXNzYWdlPzogQ29udGV4dE1lc3NhZ2Vcbn1cblxuZXhwb3J0IHR5cGUgQ2hhdE1lc3NhZ2VJdGVtID0ge1xuICBjaGF0SWQ6IHN0cmluZ1xuICBjaGF0U3RhdHVzOiBzdHJpbmdcbiAgbGFzdFF1ZXN0aW9uOiBzdHJpbmdcbiAgbGFzdFF1ZXN0aW9uRGF0ZTogc3RyaW5nXG4gIG1lc3NhZ2VJZDogc3RyaW5nXG4gIHFBbnN3ZXJzOiBudW1iZXJcbiAgZ2VuZXJhbFJhdGluZzogbnVtYmVyXG4gIHVzZXJJZDogc3RyaW5nXG59XG5cbmV4cG9ydCB0eXBlIENoYXRNZXNzYWdlSXRlbVJlc3BvbnNlID0ge1xuICBhZ2VudF9pZDogc3RyaW5nXG4gIHVzZXJfaWQ6IHN0cmluZ1xuICBhbnN3ZXI6IHN0cmluZ1xuICBkYXRlOiBzdHJpbmdcbiAgdGltZXN0YW1wOiBzdHJpbmdcbiAgcXVlc3Rpb246IHN0cmluZ1xuICB3YXNfaGVscGZ1bDogYm9vbGVhbiB8IG51bGxcbiAgbWVzc2FnZV9pZDogc3RyaW5nXG4gIG1lbW9yeV9zZXNzaW9uX2lkOiBzdHJpbmdcbiAgc3VnZ2VzdGlvbnM/OiBzdHJpbmdbXSB8IG51bGxcbiAgc3VnZ2VzdF9yZXBseT86IHN0cmluZ1tdIHwgbnVsbFxuICBpc19jYW5jZWxsZWQ/OiBib29sZWFuXG4gIHByb2plY3RfbWV0YWRhdGE/OiB7XG4gICAgaWQ6IG51bWJlciB8IHN0cmluZ1xuICAgIG5hbWU6IHN0cmluZ1xuICAgIGlzX2RlbGV0ZWQ/OiBib29sZWFuIHwgbnVsbFxuICB9XG4gIGNsaWVudF9tZXRhZGF0YT86IHtcbiAgICBpZDogbnVtYmVyIHwgc3RyaW5nXG4gICAgbmFtZTogc3RyaW5nXG4gIH1cbiAgcHJvamVjdF9pZD86IG51bWJlclxuICBhdHRhY2htZW50cz86IEF0dGFjaG1lbnRGaWxlW11cbiAgc291cmNlcz86IHsgc291cmNlOiBzdHJpbmc7IHJlZmVyZW5jZTogc3RyaW5nIH1bXVxuICBzdGF0dXM/OiBzdHJpbmdcbiAgcGVuZGluZ19hcHByb3ZhbD86IEJhY2tlbmRQZW5kaW5nQXBwcm92YWxcbiAgdGhyZWFkX2lkPzogc3RyaW5nXG4gIC8qKiBTZXQgZGUgZW50aWRhZGVzIG1lbmNpb25hZGFzIGNvbiBgQGAgcXVlIGVsIHVzdWFyaW8gZW52acOzIGVuIGVzZSBtZW5zYWplICovXG4gIGNvbnRleHRfbWVzc2FnZT86IENvbnRleHRNZXNzYWdlXG59XG5cbmV4cG9ydCB0eXBlIENoYXRNZXNzYWdlc1Jlc3BvbnNlU2NoZW1hID0ge1xuICBpdGVtczogQ2hhdE1lc3NhZ2VJdGVtUmVzcG9uc2VbXVxuICBsYXN0X2V2YWx1YXRlZF9rZXk6IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENoYXRIaXN0b3J5IHtcbiAgY29udGVudDogc3RyaW5nXG4gIHJvbGU6IENoYXRIaXN0b3J5Um9sZVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIENoYXRJdGVtUmVzcG9uc2Uge1xuICBhZ2VudF9uYW1lOiBzdHJpbmdcbiAgYWdlbnRfaWQ6IG51bWJlclxuICBhZ2VudF90eXBlPzogc3RyaW5nXG4gIGVtb2ppOiBzdHJpbmcgfCBudWxsXG4gIGlkOiBudW1iZXJcbiAgbGFzdF9xdWVzdGlvbjogc3RyaW5nXG4gIGxhc3RfcXVlc3Rpb25fZGF0ZTogc3RyaW5nXG4gIHNlc3Npb25fZXh0ZXJuYWxfaWQ6IHN0cmluZ1xuICB0aXRsZTogc3RyaW5nIHwgbnVsbFxuICBhdHRhY2htZW50czogQXR0YWNobWVudEZpbGVbXVxuICBwcm9qZWN0X21ldGFkYXRhPzoge1xuICAgIGlkOiBudW1iZXIgfCBzdHJpbmdcbiAgICBuYW1lOiBzdHJpbmdcbiAgfVxuICBjbGllbnRfbWV0YWRhdGE/OiB7XG4gICAgaWQ6IG51bWJlclxuICAgIG5hbWU6IHN0cmluZ1xuICB9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2hhdHNSZXNwb25zZVNjaGVtYSB7XG4gIGRhdGE6IENoYXRJdGVtUmVzcG9uc2VbXVxuICBoYXNfbW9yZTogYm9vbGVhblxuICBuZXh0X29mZnNldDogc3RyaW5nIHwgbnVsbFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRhc2tJbmZvIHtcbiAgaWQ6IHN0cmluZ1xuICB0aXRsZTogc3RyaW5nXG4gIHVybDogc3RyaW5nXG4gIHByb2plY3ROYW1lPzogc3RyaW5nXG59XG4iXSwibWFwcGluZ3MiOiJBQUFBOztBQW9DQSxXQUFZQSxlQUFlLDBCQUFmQSxlQUFlO0VBQWZBLGVBQWU7RUFBZkEsZUFBZTtFQUFBLE9BQWZBLGVBQWU7QUFBQTs7QUF1QjNCIiwiaWdub3JlTGlzdCI6W119
|
package/lib/types/agent.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3R5cGVzL2FnZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIEtub3dsZWRnZUFnZW50ID0ge1xuICBpZDogbnVtYmVyXG4gIGZpbGVuYW1lOiBzdHJpbmdcbiAgb3JpZ2luYWxfZmlsZV90eXBlOiBzdHJpbmdcbiAgc3RhdHVzOiBzdHJpbmdcbiAgZXJyb3JfbWVzc2FnZTogc3RyaW5nXG4gIGZpbGVfc2l6ZV9ieXRlczogbnVtYmVyXG4gIGNyZWF0ZWRfYXQ6IHN0cmluZ1xuICBwcm9jZXNzaW5nX2NvbXBsZXRlZF9hdDogc3RyaW5nXG4gIGZpbGU6IEZpbGVcbn1cblxuZXhwb3J0IHR5cGUgQWdlbnRNb2RlbCA9IHtcbiAgaWQ6IG51bWJlclxuICBkaXNwbGF5X25hbWU6IHN0cmluZ1xuICBkZXNjcmlwdGlvbjogc3RyaW5nXG4gIG1vZGVsX25hbWU/
|
|
2
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3R5cGVzL2FnZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIEtub3dsZWRnZUFnZW50ID0ge1xuICBpZDogbnVtYmVyXG4gIGZpbGVuYW1lOiBzdHJpbmdcbiAgb3JpZ2luYWxfZmlsZV90eXBlOiBzdHJpbmdcbiAgc3RhdHVzOiBzdHJpbmdcbiAgZXJyb3JfbWVzc2FnZTogc3RyaW5nXG4gIGZpbGVfc2l6ZV9ieXRlczogbnVtYmVyXG4gIGNyZWF0ZWRfYXQ6IHN0cmluZ1xuICBwcm9jZXNzaW5nX2NvbXBsZXRlZF9hdDogc3RyaW5nXG4gIGZpbGU6IEZpbGVcbn1cblxuZXhwb3J0IHR5cGUgQWdlbnRNb2RlbCA9IHtcbiAgaWQ6IG51bWJlclxuICBkaXNwbGF5X25hbWU6IHN0cmluZ1xuICBkZXNjcmlwdGlvbjogc3RyaW5nXG4gIG1vZGVsX25hbWU/OiBzdHJpbmdcbiAgaXNfZGVwcmVjYXRlZD86IGJvb2xlYW5cbn1cblxuZXhwb3J0IHR5cGUgQWdlbnRNb2RlbHNSZXNwb25zZSA9IHtcbiAgZGF0YTogQWdlbnRNb2RlbFtdXG4gIHRvdGFsOiBudW1iZXJcbn1cblxuZXhwb3J0IHR5cGUgQWdlbnRFbnRpdHkgPSAncHJvamVjdCcgfCAnY2xpZW50JyB8ICdnbG9iYWwnIHwgbnVsbFxuXG5leHBvcnQgdHlwZSBBZ2VudENvbm5lY3RvciA9IHtcbiAgZ3JvdXA6IHN0cmluZ1xuICBzbHVnczogc3RyaW5nW11cbn1cblxuZXhwb3J0IHR5cGUgQWdlbnQgPSB7XG4gIGlkOiBzdHJpbmdcbiAgbmFtZTogc3RyaW5nXG4gIGNyZWF0ZWRfYnk/OiB7XG4gICAgbmFtZTogc3RyaW5nXG4gICAgaXNfZGVsZXRlZDogYm9vbGVhblxuICB9XG4gIGNvbXBhbnlfaWQ/OiBzdHJpbmdcbiAgZW1vamk6IHN0cmluZ1xuICBpbnRyb2R1Y3Rpb24/OiBzdHJpbmcgfCBzdHJpbmdbXSB8IG51bGxcbiAgd2VsY29tZV9tZXNzYWdlPzogc3RyaW5nIHwgbnVsbFxuICB0eXBlOiAncG0nIHwgJ2N1c3RvbScgfCAnY2xvbmUnXG4gIGVudGl0eT86IEFnZW50RW50aXR5XG4gIGFpX21vZGVsX2lkPzogbnVtYmVyXG4gIG1vZGVsX2Rpc3BsYXlfbmFtZT86IHN0cmluZ1xuICBtb2RlbF9kZXByZWNhdGVkPzogYm9vbGVhblxuICBwcm92aWRlcl9zdGF0dXM/OiBzdHJpbmcgfCBudWxsXG4gIGlzX2ludGVybmFsPzogYm9vbGVhblxuICBrbm93bGVkZ2U/OiBLbm93bGVkZ2VBZ2VudFtdXG4gIGlucHV0X3BsYWNlaG9sZGVyPzogc3RyaW5nXG4gIGlzX2RlbGV0ZWQ/OiBib29sZWFuXG4gIGRlbGV0ZWRfYXQ/OiBzdHJpbmcgfCBudWxsXG4gIGlzX2Zhdm9yaXRlPzogYm9vbGVhblxuICBoYXNfY29ycnVwdGVkX2FjY2Vzcz86IGJvb2xlYW4gfCBudWxsXG4gIGhhc19ub3RfcGVybWlzc2lvbnM/OiBib29sZWFuXG4gIGhhc19ub3RfYWNjZXNzPzogYm9vbGVhblxuICBpc19mcm9tX2NvbnZlcnNhdGlvbj86IGJvb2xlYW5cbiAgcHJvamVjdF9kZWxldGVkPzogeyBuYW1lOiBzdHJpbmcgfVxuICBjb25uZWN0b3JzPzogQWdlbnRDb25uZWN0b3JbXVxufVxuXG5leHBvcnQgdHlwZSBBZ2VudHNSZXNwb25zZSA9IHtcbiAgZGF0YTogQWdlbnRbXVxuICB0b3RhbDogbnVtYmVyXG59XG5cbmV4cG9ydCB0eXBlIFVzZUFnZW50TW9kZWxzUmV0dXJuID0ge1xuICBhZ2VudE1vZGVsczogQWdlbnRNb2RlbFtdXG4gIGxvYWRpbmc6IGJvb2xlYW5cbiAgZXJyb3I6IHN0cmluZyB8IG51bGxcbiAgaGFuZGxlR2V0QWdlbnRNb2RlbHM6ICgpID0+IFByb21pc2U8dm9pZD5cbn1cblxuZXhwb3J0IHR5cGUgVXNlQWdlbnRNb2RlbFJldHVybiA9IHtcbiAgYWdlbnRNb2RlbHM6IEFnZW50TW9kZWxbXVxuICBsb2FkaW5nOiBib29sZWFuXG4gIGVycm9yOiBzdHJpbmcgfCBudWxsXG4gIGdldEFsbEFnZW50TW9kZWxzOiAoKSA9PiBQcm9taXNlPEFnZW50TW9kZWxbXT5cbiAgZ2V0QWdlbnRNb2RlbEJ5SWQ6IChpZDogbnVtYmVyKSA9PiBBZ2VudE1vZGVsIHwgdW5kZWZpbmVkXG4gIGdldERlZmF1bHRBZ2VudE1vZGVsOiAoKSA9PiBBZ2VudE1vZGVsIHwgdW5kZWZpbmVkXG4gIHJlZnJlc2hBZ2VudE1vZGVsczogKCkgPT4gUHJvbWlzZTx2b2lkPlxufVxuIl0sIm1hcHBpbmdzIjoiIiwiaWdub3JlTGlzdCI6W119
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/** Entidad contextual mencionada (forma mínima que viaja en metadata) */
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Bloque `context_message` que viaja en la metadata del orchestrator y
|
|
5
|
+
* se persiste por-mensaje. Solo vive en el mensaje donde se agregó la
|
|
6
|
+
* mención: no "pisa" el contexto global ni se propaga a otros turnos.
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Agrupa las mentions del editor por tipo y deja el shape mínimo (id + name)
|
|
11
|
+
* que espera el backend. Devuelve `undefined` cuando no hay mentions así el
|
|
12
|
+
* caller puede decidir si incluir o no la key en el payload.
|
|
13
|
+
*/
|
|
14
|
+
export var buildContextMessage = function buildContextMessage(mentions) {
|
|
15
|
+
if (!mentions || mentions.length === 0) return undefined;
|
|
16
|
+
var result = {};
|
|
17
|
+
mentions.forEach(function (m) {
|
|
18
|
+
var entity = {
|
|
19
|
+
id: m.id,
|
|
20
|
+
name: m.label
|
|
21
|
+
};
|
|
22
|
+
if (!result[m.type]) result[m.type] = [];
|
|
23
|
+
var bucket = result[m.type];
|
|
24
|
+
if (!bucket.some(function (e) {
|
|
25
|
+
return String(e.id) === String(entity.id);
|
|
26
|
+
})) bucket.push(entity);
|
|
27
|
+
});
|
|
28
|
+
return result;
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* Clase CSS/key de estilos compartida entre el chip del editor y el chip
|
|
33
|
+
* rendereado en los mensajes (chat actual + historial). Sirve como punto
|
|
34
|
+
* único para que el visual se mantenga consistente en cualquier lugar.
|
|
35
|
+
*/
|
|
36
|
+
export var CONTEXT_MENTION_CHIP_CLASS = 'maia-context-mention-chip';
|
|
37
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJidWlsZENvbnRleHRNZXNzYWdlIiwibWVudGlvbnMiLCJsZW5ndGgiLCJ1bmRlZmluZWQiLCJyZXN1bHQiLCJmb3JFYWNoIiwibSIsImVudGl0eSIsImlkIiwibmFtZSIsImxhYmVsIiwidHlwZSIsImJ1Y2tldCIsInNvbWUiLCJlIiwiU3RyaW5nIiwicHVzaCIsIkNPTlRFWFRfTUVOVElPTl9DSElQX0NMQVNTIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3R5cGVzL2NvbnRleHRNZW50aW9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIENvbnRleHRFbnRpdHlUeXBlID0gJ2NsaWVudCcgfCAncHJvamVjdCcgfCAndGFzaycgfCAndXNlcicgfCAnbWNwJ1xuXG5leHBvcnQgdHlwZSBDb250ZXh0TWVudGlvbiA9IHtcbiAgaWQ6IHN0cmluZyB8IG51bWJlclxuICB0eXBlOiBDb250ZXh0RW50aXR5VHlwZVxuICBsYWJlbDogc3RyaW5nXG4gIG1ldGFkYXRhPzoge1xuICAgIGNsaWVudElkPzogc3RyaW5nIHwgbnVtYmVyIHwgbnVsbFxuICAgIGNsaWVudE5hbWU/OiBzdHJpbmcgfCBudWxsXG4gICAgcHJvamVjdElkPzogc3RyaW5nIHwgbnVtYmVyIHwgbnVsbFxuICAgIHByb2plY3ROYW1lPzogc3RyaW5nIHwgbnVsbFxuICAgIGZlZUlkPzogc3RyaW5nIHwgbnVtYmVyIHwgbnVsbFxuICAgIC8qKiBUYXJlYSBwYWRyZSAoc3VidGFyZWFzIGVuIHJlc3VsdGFkb3MgZGUgYHNlYXJjaGApICovXG4gICAgZmF0aGVySWQ/OiBzdHJpbmcgfCBudW1iZXIgfCBudWxsXG4gICAgZmF0aGVyVGl0bGU/OiBzdHJpbmcgfCBudWxsXG4gICAgdG90YWxQcm95ZWN0b3M/OiBudW1iZXIgfCBudWxsXG4gICAgLyoqXG4gICAgICogTm9tYnJlIGNvbXBsZXRvIGRlc2RlIGxhIHF1ZXJ5IChwLiBlai4gZGlyZWN0b3JpbykuIEVsIGBsYWJlbGAgZGVsIGNoaXAgcHVlZGUgc2VyXG4gICAgICogZGlzdGludG8gKGVqLiBcIllvXCIpOyBwYXJhIGF2YXRhci9pbmljaWFsZXMgdXNhciBlc3RlIGNhbXBvLCBpZ3VhbCBxdWUgZW4gbGEgZmlsYSBkZWwgbW9kYWwuXG4gICAgICovXG4gICAgbmFtZT86IHN0cmluZyB8IG51bGxcbiAgICAvKiogRGlyZWN0b3JpbyBkZSB1c3VhcmlvcyAodXNlcnNEaXJlY3RvcnkpICovXG4gICAgcGljdHVyZT86IHN0cmluZyB8IG51bGxcbiAgICBwb3NpdGlvbk5hbWU/OiBzdHJpbmcgfCBudWxsXG4gICAgZW1haWw/OiBzdHJpbmcgfCBudWxsXG4gIH1cbn1cblxuZXhwb3J0IHR5cGUgQ29udGV4dE1lbnRpb25CcmVhZGNydW1iID0ge1xuICAvKiogQ2FudGlkYWQgZGUgaXRlbXMgcmVsYWNpb25hZG9zIChwLmVqLiBcIjEzIHByb3llY3Rvc1wiIGVuIHVuIGNsaWVudCkgKi9cbiAgY291bnQ/OiBudW1iZXJcbiAgLyoqIEV0aXF1ZXRhIGRlbCBjb250ZW8geWEgdHJhZHVjaWRhIChwLmVqLiBcInByb3llY3Rvc1wiKSAqL1xuICBjb3VudExhYmVsPzogc3RyaW5nXG4gIC8qKiBFbnRpZGFkIHBhZHJlIChwLmVqLiBub21icmUgZGVsIGNsaWVudCBkZWwgcHJvamVjdCkgKi9cbiAgcGFyZW50Pzogc3RyaW5nXG59XG5cbmV4cG9ydCB0eXBlIENvbnRleHRNZW50aW9uSXRlbSA9IHtcbiAgaWQ6IHN0cmluZyB8IG51bWJlclxuICB0eXBlOiBDb250ZXh0RW50aXR5VHlwZVxuICAvKiogVGV4dG8gcHJpbmNpcGFsIG1vc3RyYWRvIGVuIGxhIGZpbGEgKi9cbiAgcHJpbWFyeTogc3RyaW5nXG4gIC8qKiBSYW5nbyBkZWwgcXVlcnkgYnVzY2FkbyBkZW50cm8gZGUgYHByaW1hcnlgIHBhcmEgcmVzYWx0YXIgKi9cbiAgcHJpbWFyeUhpZ2hsaWdodD86IHsgc3RhcnQ6IG51bWJlcjsgbGVuZ3RoOiBudW1iZXIgfVxuICAvKiogRGF0b3Mgc2VjdW5kYXJpb3Mgb3BjaW9uYWxlcyBwYXJhIGVsIGJyZWFkY3J1bWIgKi9cbiAgYnJlYWRjcnVtYj86IENvbnRleHRNZW50aW9uQnJlYWRjcnVtYlxuICAvKiogTWV0YWRhdGEgb3JpZ2luYWwgcGFyYSByZWNvbnN0cnVpciBsYSBtZW50aW9uIGFsIHNlbGVjY2lvbmFyICovXG4gIHJhdzogQ29udGV4dE1lbnRpb25bJ21ldGFkYXRhJ10gJiB7IGlkOiBzdHJpbmcgfCBudW1iZXI7IG5hbWU6IHN0cmluZyB9XG59XG5cbi8qKiBFbnRpZGFkIGNvbnRleHR1YWwgbWVuY2lvbmFkYSAoZm9ybWEgbcOtbmltYSBxdWUgdmlhamEgZW4gbWV0YWRhdGEpICovXG5leHBvcnQgdHlwZSBDb250ZXh0TWVzc2FnZUVudGl0eSA9IHtcbiAgaWQ6IHN0cmluZyB8IG51bWJlclxuICBuYW1lOiBzdHJpbmdcbn1cblxuLyoqXG4gKiBCbG9xdWUgYGNvbnRleHRfbWVzc2FnZWAgcXVlIHZpYWphIGVuIGxhIG1ldGFkYXRhIGRlbCBvcmNoZXN0cmF0b3IgeVxuICogc2UgcGVyc2lzdGUgcG9yLW1lbnNhamUuIFNvbG8gdml2ZSBlbiBlbCBtZW5zYWplIGRvbmRlIHNlIGFncmVnw7MgbGFcbiAqIG1lbmNpw7NuOiBubyBcInBpc2FcIiBlbCBjb250ZXh0byBnbG9iYWwgbmkgc2UgcHJvcGFnYSBhIG90cm9zIHR1cm5vcy5cbiAqL1xuZXhwb3J0IHR5cGUgQ29udGV4dE1lc3NhZ2UgPSB7XG4gIGNsaWVudD86IENvbnRleHRNZXNzYWdlRW50aXR5W11cbiAgcHJvamVjdD86IENvbnRleHRNZXNzYWdlRW50aXR5W11cbiAgdGFzaz86IENvbnRleHRNZXNzYWdlRW50aXR5W11cbiAgdXNlcj86IENvbnRleHRNZXNzYWdlRW50aXR5W11cbiAgbWNwPzogQ29udGV4dE1lc3NhZ2VFbnRpdHlbXVxufVxuXG4vKipcbiAqIEFncnVwYSBsYXMgbWVudGlvbnMgZGVsIGVkaXRvciBwb3IgdGlwbyB5IGRlamEgZWwgc2hhcGUgbcOtbmltbyAoaWQgKyBuYW1lKVxuICogcXVlIGVzcGVyYSBlbCBiYWNrZW5kLiBEZXZ1ZWx2ZSBgdW5kZWZpbmVkYCBjdWFuZG8gbm8gaGF5IG1lbnRpb25zIGFzw60gZWxcbiAqIGNhbGxlciBwdWVkZSBkZWNpZGlyIHNpIGluY2x1aXIgbyBubyBsYSBrZXkgZW4gZWwgcGF5bG9hZC5cbiAqL1xuZXhwb3J0IGNvbnN0IGJ1aWxkQ29udGV4dE1lc3NhZ2UgPSAobWVudGlvbnM/OiBDb250ZXh0TWVudGlvbltdIHwgbnVsbCk6IENvbnRleHRNZXNzYWdlIHwgdW5kZWZpbmVkID0+IHtcbiAgaWYgKCFtZW50aW9ucyB8fCBtZW50aW9ucy5sZW5ndGggPT09IDApIHJldHVybiB1bmRlZmluZWRcbiAgY29uc3QgcmVzdWx0OiBDb250ZXh0TWVzc2FnZSA9IHt9XG4gIG1lbnRpb25zLmZvckVhY2gobSA9PiB7XG4gICAgY29uc3QgZW50aXR5OiBDb250ZXh0TWVzc2FnZUVudGl0eSA9IHsgaWQ6IG0uaWQsIG5hbWU6IG0ubGFiZWwgfVxuICAgIGlmICghcmVzdWx0W20udHlwZV0pIHJlc3VsdFttLnR5cGVdID0gW11cbiAgICBjb25zdCBidWNrZXQgPSByZXN1bHRbbS50eXBlXSFcbiAgICBpZiAoIWJ1Y2tldC5zb21lKGUgPT4gU3RyaW5nKGUuaWQpID09PSBTdHJpbmcoZW50aXR5LmlkKSkpIGJ1Y2tldC5wdXNoKGVudGl0eSlcbiAgfSlcbiAgcmV0dXJuIHJlc3VsdFxufVxuXG4vKipcbiAqIENsYXNlIENTUy9rZXkgZGUgZXN0aWxvcyBjb21wYXJ0aWRhIGVudHJlIGVsIGNoaXAgZGVsIGVkaXRvciB5IGVsIGNoaXBcbiAqIHJlbmRlcmVhZG8gZW4gbG9zIG1lbnNhamVzIChjaGF0IGFjdHVhbCArIGhpc3RvcmlhbCkuIFNpcnZlIGNvbW8gcHVudG9cbiAqIMO6bmljbyBwYXJhIHF1ZSBlbCB2aXN1YWwgc2UgbWFudGVuZ2EgY29uc2lzdGVudGUgZW4gY3VhbHF1aWVyIGx1Z2FyLlxuICovXG5leHBvcnQgY29uc3QgQ09OVEVYVF9NRU5USU9OX0NISVBfQ0xBU1MgPSAnbWFpYS1jb250ZXh0LW1lbnRpb24tY2hpcCdcbiJdLCJtYXBwaW5ncyI6IkFBa0RBOztBQU1BO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBU0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU8sSUFBTUEsbUJBQW1CLEdBQUcsU0FBdEJBLG1CQUFtQkEsQ0FBSUMsUUFBa0MsRUFBaUM7RUFDckcsSUFBSSxDQUFDQSxRQUFRLElBQUlBLFFBQVEsQ0FBQ0MsTUFBTSxLQUFLLENBQUMsRUFBRSxPQUFPQyxTQUFTO0VBQ3hELElBQU1DLE1BQXNCLEdBQUcsQ0FBQyxDQUFDO0VBQ2pDSCxRQUFRLENBQUNJLE9BQU8sQ0FBQyxVQUFBQyxDQUFDLEVBQUk7SUFDcEIsSUFBTUMsTUFBNEIsR0FBRztNQUFFQyxFQUFFLEVBQUVGLENBQUMsQ0FBQ0UsRUFBRTtNQUFFQyxJQUFJLEVBQUVILENBQUMsQ0FBQ0k7SUFBTSxDQUFDO0lBQ2hFLElBQUksQ0FBQ04sTUFBTSxDQUFDRSxDQUFDLENBQUNLLElBQUksQ0FBQyxFQUFFUCxNQUFNLENBQUNFLENBQUMsQ0FBQ0ssSUFBSSxDQUFDLEdBQUcsRUFBRTtJQUN4QyxJQUFNQyxNQUFNLEdBQUdSLE1BQU0sQ0FBQ0UsQ0FBQyxDQUFDSyxJQUFJLENBQUU7SUFDOUIsSUFBSSxDQUFDQyxNQUFNLENBQUNDLElBQUksQ0FBQyxVQUFBQyxDQUFDO01BQUEsT0FBSUMsTUFBTSxDQUFDRCxDQUFDLENBQUNOLEVBQUUsQ0FBQyxLQUFLTyxNQUFNLENBQUNSLE1BQU0sQ0FBQ0MsRUFBRSxDQUFDO0lBQUEsRUFBQyxFQUFFSSxNQUFNLENBQUNJLElBQUksQ0FBQ1QsTUFBTSxDQUFDO0VBQ2hGLENBQUMsQ0FBQztFQUNGLE9BQU9ILE1BQU07QUFDZixDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPLElBQU1hLDBCQUEwQixHQUFHLDJCQUEyQiIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
3
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
4
|
+
import { Contact } from '@projectcor/icons/lib/components/Contact';
|
|
5
|
+
import { FileProject } from '@projectcor/icons/lib/components/FileProject';
|
|
6
|
+
import { Globe } from '@projectcor/icons/lib/components/Globe';
|
|
7
|
+
import { User } from '@projectcor/icons/lib/components/User';
|
|
8
|
+
import { NotionIcon, NOTION_BRAND_PATH_BLACK, NOTION_BRAND_PATH_WHITE } from '../components/atoms/icons/NotionIcon';
|
|
9
|
+
import { TASK_LINK_ICON_DATA_URL } from '../constants/taskLinkIcon';
|
|
10
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
11
|
+
var SVG_NS = 'http://www.w3.org/2000/svg';
|
|
12
|
+
var DEFAULT_ICON_SIZE = 14;
|
|
13
|
+
|
|
14
|
+
/** Slug MCP del conector Notion (alineado con NOTION_CONNECTOR_SLUG en catalog). */
|
|
15
|
+
export var NOTION_MCP_SLUG = 'notion';
|
|
16
|
+
export var isNotionMcpSlug = function isNotionMcpSlug(id) {
|
|
17
|
+
return String(id !== null && id !== void 0 ? id : '').toLowerCase() === NOTION_MCP_SLUG;
|
|
18
|
+
};
|
|
19
|
+
var MENTION_ICON_PATHS = {
|
|
20
|
+
client: 'M3.375 7C3.1875 7 3 6.84375 3 6.625V5.375C3 5.1875 3.1875 5 3.375 5H4V3.5C4 2.6875 4.6875 2 5.5 2H15.5C16.3438 2 17 2.6875 17 3.5V16.5C17 17.3438 16.3438 18 15.5 18H5.5C4.6875 18 4 17.3438 4 16.5V15H3.375C3.1875 15 3 14.8438 3 14.625V13.375C3 13.1875 3.1875 13 3.375 13H4V11H3.375C3.1875 11 3 10.8438 3 10.625V9.375C3 9.1875 3.1875 9 3.375 9H4V7H3.375ZM5.5 16.5H15.5V3.5H5.5V16.5ZM10.5 10C9.40625 10 8.5 9.125 8.5 8C8.5 6.90625 9.40625 6 10.5 6C11.625 6 12.5 6.90625 12.5 8C12.5 9.125 11.625 10 10.5 10ZM13.3125 14H7.71875C7.3125 14 7 13.75 7 13.4062V12.8125C7 11.8125 7.96875 11 9.125 11C9.4375 11 9.6875 11.25 10.5 11.25C11.3438 11.25 11.5625 11 11.9062 11C13.0625 11 14 11.8125 14 12.8125V13.4062C14 13.75 13.6875 14 13.3125 14Z',
|
|
21
|
+
project: 'M12.9375 2.4375L15.5312 5.0625C15.8125 5.34375 16 5.75 16 6.125V16.5C16 17.3438 15.3125 18 14.5 18H5.5C4.65625 18 4 17.3438 4 16.5V3.5C4 2.6875 4.65625 2 5.5 2H11.875C12.25 2 12.6562 2.15625 12.9375 2.4375ZM12 6H14.375L12 3.625V6ZM5.5 3.5V16.5H14.5V7.5H11.25C10.8125 7.5 10.5 7.1875 10.5 6.75V3.5H5.5ZM13.25 14.75H9.75C9.59375 14.75 9.5 14.6562 9.5 14.5V13.5C9.5 13.375 9.59375 13.25 9.75 13.25H13.25C13.375 13.25 13.5 13.375 13.5 13.5V14.5C13.5 14.6562 13.375 14.75 13.25 14.75ZM8 15H7C6.71875 15 6.5 14.7812 6.5 14.5V13.5C6.5 13.25 6.71875 13 7 13H8C8.25 13 8.5 13.25 8.5 13.5V14.5C8.5 14.7812 8.25 15 8 15ZM8 11H7C6.71875 11 6.5 10.7812 6.5 10.5V9.5C6.5 9.25 6.71875 9 7 9H8C8.25 9 8.5 9.25 8.5 9.5V10.5C8.5 10.7812 8.25 11 8 11ZM13.25 10.75H9.75C9.59375 10.75 9.5 10.6562 9.5 10.5V9.5C9.5 9.375 9.59375 9.25 9.75 9.25H13.25C13.375 9.25 13.5 9.375 13.5 9.5V10.5C13.5 10.6562 13.375 10.75 13.25 10.75ZM8 7H7C6.71875 7 6.5 6.78125 6.5 6.5V5.5C6.5 5.25 6.71875 5 7 5H8C8.25 5 8.5 5.25 8.5 5.5V6.5C8.5 6.78125 8.25 7 8 7Z',
|
|
22
|
+
user: 'M12.3839 11.3125C11.6071 11.3125 11.2589 11.75 10 11.75C8.71429 11.75 8.36607 11.3125 7.58929 11.3125C5.60714 11.3125 4 12.9805 4 15.0039V15.6875C4 16.4258 4.5625 17 5.28571 17H14.7143C15.4107 17 16 16.4258 16 15.6875V15.0039C16 12.9805 14.3661 11.3125 12.3839 11.3125ZM14.7143 15.6875H5.28571V15.0039C5.28571 13.6914 6.30357 12.625 7.58929 12.625C7.99107 12.625 8.60714 13.0625 10 13.0625C11.3661 13.0625 11.9821 12.625 12.3839 12.625C13.6696 12.625 14.7143 13.6914 14.7143 15.0039V15.6875ZM10 10.875C12.1161 10.875 13.8571 9.125 13.8571 6.9375C13.8571 4.77734 12.1161 3 10 3C7.85714 3 6.14286 4.77734 6.14286 6.9375C6.14286 9.125 7.85714 10.875 10 10.875ZM10 4.3125C11.3929 4.3125 12.5714 5.51562 12.5714 6.9375C12.5714 8.38672 11.3929 9.5625 10 9.5625C8.58036 9.5625 7.42857 8.38672 7.42857 6.9375C7.42857 5.51562 8.58036 4.3125 10 4.3125Z',
|
|
23
|
+
mcp: 'M10 3C6.13306 3 3 6.13306 3 10C3 13.8669 6.13306 17 10 17C13.8669 17 17 13.8669 17 10C17 6.13306 13.8669 3 10 3ZM15.0524 7.51613H13.1613C12.9637 6.5 12.6532 5.59677 12.2581 4.8629C13.4718 5.39919 14.4597 6.33065 15.0524 7.51613ZM10 4.35484C10.5081 4.35484 11.3548 5.54032 11.7782 7.51613H8.19355C8.61694 5.54032 9.46371 4.35484 10 4.35484ZM4.35484 10C4.35484 9.63306 4.38306 9.2379 4.46774 8.87097H6.64113C6.6129 9.26613 6.6129 9.63306 6.6129 10C6.6129 10.3952 6.6129 10.7621 6.64113 11.129H4.46774C4.38306 10.7903 4.35484 10.3952 4.35484 10ZM4.91935 12.4839H6.81048C7.00806 13.5282 7.31855 14.4315 7.71371 15.1653C6.5 14.629 5.5121 13.6694 4.91935 12.4839ZM6.81048 7.51613H4.91935C5.5121 6.33065 6.5 5.39919 7.71371 4.8629C7.31855 5.59677 7.00806 6.5 6.81048 7.51613ZM10 15.6452C9.46371 15.6452 8.61694 14.4879 8.19355 12.4839H11.7782C11.3548 14.4879 10.5081 15.6452 10 15.6452ZM11.9758 11.129H7.99597C7.96774 10.7903 7.96774 10.3952 7.96774 10C7.96774 9.60484 7.96774 9.2379 7.99597 8.87097H11.9758C12.004 9.2379 12.0323 9.60484 12.0323 10C12.0323 10.3952 12.004 10.7903 11.9758 11.129ZM12.2581 15.1653C12.6532 14.4315 12.9637 13.5282 13.1613 12.4839H15.0524C14.4597 13.6694 13.4718 14.629 12.2581 15.1653ZM13.3306 11.129C13.3589 10.7621 13.3871 10.3952 13.3871 10C13.3871 9.63306 13.3589 9.26613 13.3306 8.87097H15.5323C15.5887 9.2379 15.6452 9.63306 15.6452 10C15.6452 10.3952 15.5887 10.7903 15.5323 11.129H13.3306Z'
|
|
24
|
+
};
|
|
25
|
+
var createSvgIcon = function createSvgIcon(pathData, color, size) {
|
|
26
|
+
var svg = document.createElementNS(SVG_NS, 'svg');
|
|
27
|
+
svg.setAttribute('viewBox', '0 0 20 20');
|
|
28
|
+
svg.setAttribute('width', String(size));
|
|
29
|
+
svg.setAttribute('height', String(size));
|
|
30
|
+
svg.setAttribute('aria-hidden', 'true');
|
|
31
|
+
svg.style.display = 'block';
|
|
32
|
+
var path = document.createElementNS(SVG_NS, 'path');
|
|
33
|
+
path.setAttribute('d', pathData);
|
|
34
|
+
path.setAttribute('fill', color);
|
|
35
|
+
path.setAttribute('fill-rule', 'nonzero');
|
|
36
|
+
svg.appendChild(path);
|
|
37
|
+
return svg;
|
|
38
|
+
};
|
|
39
|
+
var createNotionIconSvgElement = function createNotionIconSvgElement(size) {
|
|
40
|
+
var svg = document.createElementNS(SVG_NS, 'svg');
|
|
41
|
+
svg.setAttribute('viewBox', '0 0 100 100');
|
|
42
|
+
svg.setAttribute('width', String(size));
|
|
43
|
+
svg.setAttribute('height', String(size));
|
|
44
|
+
svg.setAttribute('aria-hidden', 'true');
|
|
45
|
+
svg.style.display = 'block';
|
|
46
|
+
var p1 = document.createElementNS(SVG_NS, 'path');
|
|
47
|
+
p1.setAttribute('fill', '#fff');
|
|
48
|
+
p1.setAttribute('d', NOTION_BRAND_PATH_WHITE);
|
|
49
|
+
var p2 = document.createElementNS(SVG_NS, 'path');
|
|
50
|
+
p2.setAttribute('fill', '#000');
|
|
51
|
+
p2.setAttribute('fill-rule', 'evenodd');
|
|
52
|
+
p2.setAttribute('clip-rule', 'evenodd');
|
|
53
|
+
p2.setAttribute('d', NOTION_BRAND_PATH_BLACK);
|
|
54
|
+
svg.appendChild(p1);
|
|
55
|
+
svg.appendChild(p2);
|
|
56
|
+
return svg;
|
|
57
|
+
};
|
|
58
|
+
export var getContextMentionIcon = function getContextMentionIcon(type, color, mentionId, size) {
|
|
59
|
+
var resolvedSize = size !== null && size !== void 0 ? size : DEFAULT_ICON_SIZE;
|
|
60
|
+
var iconProps = {
|
|
61
|
+
color: color,
|
|
62
|
+
width: "".concat(resolvedSize, "px"),
|
|
63
|
+
height: "".concat(resolvedSize, "px")
|
|
64
|
+
};
|
|
65
|
+
switch (type) {
|
|
66
|
+
case 'client':
|
|
67
|
+
return /*#__PURE__*/_jsx(Contact, _objectSpread({}, iconProps));
|
|
68
|
+
case 'project':
|
|
69
|
+
return /*#__PURE__*/_jsx(FileProject, _objectSpread({}, iconProps));
|
|
70
|
+
case 'task':
|
|
71
|
+
return /*#__PURE__*/_jsx("img", {
|
|
72
|
+
src: TASK_LINK_ICON_DATA_URL,
|
|
73
|
+
alt: "",
|
|
74
|
+
"aria-hidden": true,
|
|
75
|
+
width: resolvedSize,
|
|
76
|
+
height: resolvedSize
|
|
77
|
+
});
|
|
78
|
+
case 'user':
|
|
79
|
+
return /*#__PURE__*/_jsx(User, _objectSpread({}, iconProps));
|
|
80
|
+
case 'mcp':
|
|
81
|
+
if (isNotionMcpSlug(mentionId)) {
|
|
82
|
+
return /*#__PURE__*/_jsx(NotionIcon, {
|
|
83
|
+
width: resolvedSize,
|
|
84
|
+
height: resolvedSize
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
return /*#__PURE__*/_jsx(Globe, _objectSpread({}, iconProps));
|
|
88
|
+
default:
|
|
89
|
+
return /*#__PURE__*/_jsx(User, _objectSpread({}, iconProps));
|
|
90
|
+
}
|
|
91
|
+
};
|
|
92
|
+
export var createContextMentionIconElement = function createContextMentionIconElement(type, color, mentionId, size) {
|
|
93
|
+
var _MENTION_ICON_PATHS$t;
|
|
94
|
+
var resolvedSize = size !== null && size !== void 0 ? size : DEFAULT_ICON_SIZE;
|
|
95
|
+
if (type === 'task') {
|
|
96
|
+
var img = document.createElement('img');
|
|
97
|
+
img.src = TASK_LINK_ICON_DATA_URL;
|
|
98
|
+
img.width = resolvedSize;
|
|
99
|
+
img.height = resolvedSize;
|
|
100
|
+
img.alt = '';
|
|
101
|
+
img.setAttribute('aria-hidden', 'true');
|
|
102
|
+
img.draggable = false;
|
|
103
|
+
img.style.display = 'block';
|
|
104
|
+
return img;
|
|
105
|
+
}
|
|
106
|
+
if (type === 'mcp' && isNotionMcpSlug(mentionId)) {
|
|
107
|
+
return createNotionIconSvgElement(resolvedSize);
|
|
108
|
+
}
|
|
109
|
+
if (type === 'mcp') {
|
|
110
|
+
return createSvgIcon(MENTION_ICON_PATHS.mcp, color, resolvedSize);
|
|
111
|
+
}
|
|
112
|
+
var pathData = (_MENTION_ICON_PATHS$t = MENTION_ICON_PATHS[type]) !== null && _MENTION_ICON_PATHS$t !== void 0 ? _MENTION_ICON_PATHS$t : MENTION_ICON_PATHS.user;
|
|
113
|
+
return createSvgIcon(pathData, color, resolvedSize);
|
|
114
|
+
};
|
|
115
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJDb250YWN0IiwiRmlsZVByb2plY3QiLCJHbG9iZSIsIlVzZXIiLCJOb3Rpb25JY29uIiwiTk9USU9OX0JSQU5EX1BBVEhfQkxBQ0siLCJOT1RJT05fQlJBTkRfUEFUSF9XSElURSIsIlRBU0tfTElOS19JQ09OX0RBVEFfVVJMIiwianN4IiwiX2pzeCIsIlNWR19OUyIsIkRFRkFVTFRfSUNPTl9TSVpFIiwiTk9USU9OX01DUF9TTFVHIiwiaXNOb3Rpb25NY3BTbHVnIiwiaWQiLCJTdHJpbmciLCJ0b0xvd2VyQ2FzZSIsIk1FTlRJT05fSUNPTl9QQVRIUyIsImNsaWVudCIsInByb2plY3QiLCJ1c2VyIiwibWNwIiwiY3JlYXRlU3ZnSWNvbiIsInBhdGhEYXRhIiwiY29sb3IiLCJzaXplIiwic3ZnIiwiZG9jdW1lbnQiLCJjcmVhdGVFbGVtZW50TlMiLCJzZXRBdHRyaWJ1dGUiLCJzdHlsZSIsImRpc3BsYXkiLCJwYXRoIiwiYXBwZW5kQ2hpbGQiLCJjcmVhdGVOb3Rpb25JY29uU3ZnRWxlbWVudCIsInAxIiwicDIiLCJnZXRDb250ZXh0TWVudGlvbkljb24iLCJ0eXBlIiwibWVudGlvbklkIiwicmVzb2x2ZWRTaXplIiwiaWNvblByb3BzIiwid2lkdGgiLCJjb25jYXQiLCJoZWlnaHQiLCJfb2JqZWN0U3ByZWFkIiwic3JjIiwiYWx0IiwiY3JlYXRlQ29udGV4dE1lbnRpb25JY29uRWxlbWVudCIsIl9NRU5USU9OX0lDT05fUEFUSFMkdCIsImltZyIsImNyZWF0ZUVsZW1lbnQiLCJkcmFnZ2FibGUiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvY29udGV4dE1lbnRpb25JY29ucy50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVhY3ROb2RlIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBDb250YWN0IH0gZnJvbSAnQHByb2plY3Rjb3IvaWNvbnMvbGliL2NvbXBvbmVudHMvQ29udGFjdCdcbmltcG9ydCB7IEZpbGVQcm9qZWN0IH0gZnJvbSAnQHByb2plY3Rjb3IvaWNvbnMvbGliL2NvbXBvbmVudHMvRmlsZVByb2plY3QnXG5pbXBvcnQgeyBHbG9iZSB9IGZyb20gJ0Bwcm9qZWN0Y29yL2ljb25zL2xpYi9jb21wb25lbnRzL0dsb2JlJ1xuaW1wb3J0IHsgVXNlciB9IGZyb20gJ0Bwcm9qZWN0Y29yL2ljb25zL2xpYi9jb21wb25lbnRzL1VzZXInXG5pbXBvcnQgeyBOb3Rpb25JY29uLCBOT1RJT05fQlJBTkRfUEFUSF9CTEFDSywgTk9USU9OX0JSQU5EX1BBVEhfV0hJVEUgfSBmcm9tICcuLi9jb21wb25lbnRzL2F0b21zL2ljb25zL05vdGlvbkljb24nXG5pbXBvcnQgeyBDb250ZXh0RW50aXR5VHlwZSB9IGZyb20gJy4uL3R5cGVzL2NvbnRleHRNZW50aW9uJ1xuaW1wb3J0IHsgVEFTS19MSU5LX0lDT05fREFUQV9VUkwgfSBmcm9tICcuLi9jb25zdGFudHMvdGFza0xpbmtJY29uJ1xuXG5jb25zdCBTVkdfTlMgPSAnaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnXG5jb25zdCBERUZBVUxUX0lDT05fU0laRSA9IDE0XG5cbi8qKiBTbHVnIE1DUCBkZWwgY29uZWN0b3IgTm90aW9uIChhbGluZWFkbyBjb24gTk9USU9OX0NPTk5FQ1RPUl9TTFVHIGVuIGNhdGFsb2cpLiAqL1xuZXhwb3J0IGNvbnN0IE5PVElPTl9NQ1BfU0xVRyA9ICdub3Rpb24nXG5cbmV4cG9ydCBjb25zdCBpc05vdGlvbk1jcFNsdWcgPSAoaWQ6IHN0cmluZyB8IG51bWJlciB8IHVuZGVmaW5lZCk6IGJvb2xlYW4gPT5cbiAgU3RyaW5nKGlkID8/ICcnKS50b0xvd2VyQ2FzZSgpID09PSBOT1RJT05fTUNQX1NMVUdcblxuY29uc3QgTUVOVElPTl9JQ09OX1BBVEhTOiBSZWNvcmQ8RXhjbHVkZTxDb250ZXh0RW50aXR5VHlwZSwgJ3Rhc2snPiwgc3RyaW5nPiA9IHtcbiAgY2xpZW50OlxuICAgICdNMy4zNzUgN0MzLjE4NzUgNyAzIDYuODQzNzUgMyA2LjYyNVY1LjM3NUMzIDUuMTg3NSAzLjE4NzUgNSAzLjM3NSA1SDRWMy41QzQgMi42ODc1IDQuNjg3NSAyIDUuNSAySDE1LjVDMTYuMzQzOCAyIDE3IDIuNjg3NSAxNyAzLjVWMTYuNUMxNyAxNy4zNDM4IDE2LjM0MzggMTggMTUuNSAxOEg1LjVDNC42ODc1IDE4IDQgMTcuMzQzOCA0IDE2LjVWMTVIMy4zNzVDMy4xODc1IDE1IDMgMTQuODQzOCAzIDE0LjYyNVYxMy4zNzVDMyAxMy4xODc1IDMuMTg3NSAxMyAzLjM3NSAxM0g0VjExSDMuMzc1QzMuMTg3NSAxMSAzIDEwLjg0MzggMyAxMC42MjVWOS4zNzVDMyA5LjE4NzUgMy4xODc1IDkgMy4zNzUgOUg0VjdIMy4zNzVaTTUuNSAxNi41SDE1LjVWMy41SDUuNVYxNi41Wk0xMC41IDEwQzkuNDA2MjUgMTAgOC41IDkuMTI1IDguNSA4QzguNSA2LjkwNjI1IDkuNDA2MjUgNiAxMC41IDZDMTEuNjI1IDYgMTIuNSA2LjkwNjI1IDEyLjUgOEMxMi41IDkuMTI1IDExLjYyNSAxMCAxMC41IDEwWk0xMy4zMTI1IDE0SDcuNzE4NzVDNy4zMTI1IDE0IDcgMTMuNzUgNyAxMy40MDYyVjEyLjgxMjVDNyAxMS44MTI1IDcuOTY4NzUgMTEgOS4xMjUgMTFDOS40Mzc1IDExIDkuNjg3NSAxMS4yNSAxMC41IDExLjI1QzExLjM0MzggMTEuMjUgMTEuNTYyNSAxMSAxMS45MDYyIDExQzEzLjA2MjUgMTEgMTQgMTEuODEyNSAxNCAxMi44MTI1VjEzLjQwNjJDMTQgMTMuNzUgMTMuNjg3NSAxNCAxMy4zMTI1IDE0WicsXG4gIHByb2plY3Q6XG4gICAgJ00xMi45Mzc1IDIuNDM3NUwxNS41MzEyIDUuMDYyNUMxNS44MTI1IDUuMzQzNzUgMTYgNS43NSAxNiA2LjEyNVYxNi41QzE2IDE3LjM0MzggMTUuMzEyNSAxOCAxNC41IDE4SDUuNUM0LjY1NjI1IDE4IDQgMTcuMzQzOCA0IDE2LjVWMy41QzQgMi42ODc1IDQuNjU2MjUgMiA1LjUgMkgxMS44NzVDMTIuMjUgMiAxMi42NTYyIDIuMTU2MjUgMTIuOTM3NSAyLjQzNzVaTTEyIDZIMTQuMzc1TDEyIDMuNjI1VjZaTTUuNSAzLjVWMTYuNUgxNC41VjcuNUgxMS4yNUMxMC44MTI1IDcuNSAxMC41IDcuMTg3NSAxMC41IDYuNzVWMy41SDUuNVpNMTMuMjUgMTQuNzVIOS43NUM5LjU5Mzc1IDE0Ljc1IDkuNSAxNC42NTYyIDkuNSAxNC41VjEzLjVDOS41IDEzLjM3NSA5LjU5Mzc1IDEzLjI1IDkuNzUgMTMuMjVIMTMuMjVDMTMuMzc1IDEzLjI1IDEzLjUgMTMuMzc1IDEzLjUgMTMuNVYxNC41QzEzLjUgMTQuNjU2MiAxMy4zNzUgMTQuNzUgMTMuMjUgMTQuNzVaTTggMTVIN0M2LjcxODc1IDE1IDYuNSAxNC43ODEyIDYuNSAxNC41VjEzLjVDNi41IDEzLjI1IDYuNzE4NzUgMTMgNyAxM0g4QzguMjUgMTMgOC41IDEzLjI1IDguNSAxMy41VjE0LjVDOC41IDE0Ljc4MTIgOC4yNSAxNSA4IDE1Wk04IDExSDdDNi43MTg3NSAxMSA2LjUgMTAuNzgxMiA2LjUgMTAuNVY5LjVDNi41IDkuMjUgNi43MTg3NSA5IDcgOUg4QzguMjUgOSA4LjUgOS4yNSA4LjUgOS41VjEwLjVDOC41IDEwLjc4MTIgOC4yNSAxMSA4IDExWk0xMy4yNSAxMC43NUg5Ljc1QzkuNTkzNzUgMTAuNzUgOS41IDEwLjY1NjIgOS41IDEwLjVWOS41QzkuNSA5LjM3NSA5LjU5Mzc1IDkuMjUgOS43NSA5LjI1SDEzLjI1QzEzLjM3NSA5LjI1IDEzLjUgOS4zNzUgMTMuNSA5LjVWMTAuNUMxMy41IDEwLjY1NjIgMTMuMzc1IDEwLjc1IDEzLjI1IDEwLjc1Wk04IDdIN0M2LjcxODc1IDcgNi41IDYuNzgxMjUgNi41IDYuNVY1LjVDNi41IDUuMjUgNi43MTg3NSA1IDcgNUg4QzguMjUgNSA4LjUgNS4yNSA4LjUgNS41VjYuNUM4LjUgNi43ODEyNSA4LjI1IDcgOCA3WicsXG4gIHVzZXI6ICdNMTIuMzgzOSAxMS4zMTI1QzExLjYwNzEgMTEuMzEyNSAxMS4yNTg5IDExLjc1IDEwIDExLjc1QzguNzE0MjkgMTEuNzUgOC4zNjYwNyAxMS4zMTI1IDcuNTg5MjkgMTEuMzEyNUM1LjYwNzE0IDExLjMxMjUgNCAxMi45ODA1IDQgMTUuMDAzOVYxNS42ODc1QzQgMTYuNDI1OCA0LjU2MjUgMTcgNS4yODU3MSAxN0gxNC43MTQzQzE1LjQxMDcgMTcgMTYgMTYuNDI1OCAxNiAxNS42ODc1VjE1LjAwMzlDMTYgMTIuOTgwNSAxNC4zNjYxIDExLjMxMjUgMTIuMzgzOSAxMS4zMTI1Wk0xNC43MTQzIDE1LjY4NzVINS4yODU3MVYxNS4wMDM5QzUuMjg1NzEgMTMuNjkxNCA2LjMwMzU3IDEyLjYyNSA3LjU4OTI5IDEyLjYyNUM3Ljk5MTA3IDEyLjYyNSA4LjYwNzE0IDEzLjA2MjUgMTAgMTMuMDYyNUMxMS4zNjYxIDEzLjA2MjUgMTEuOTgyMSAxMi42MjUgMTIuMzgzOSAxMi42MjVDMTMuNjY5NiAxMi42MjUgMTQuNzE0MyAxMy42OTE0IDE0LjcxNDMgMTUuMDAzOVYxNS42ODc1Wk0xMCAxMC44NzVDMTIuMTE2MSAxMC44NzUgMTMuODU3MSA5LjEyNSAxMy44NTcxIDYuOTM3NUMxMy44NTcxIDQuNzc3MzQgMTIuMTE2MSAzIDEwIDNDNy44NTcxNCAzIDYuMTQyODYgNC43NzczNCA2LjE0Mjg2IDYuOTM3NUM2LjE0Mjg2IDkuMTI1IDcuODU3MTQgMTAuODc1IDEwIDEwLjg3NVpNMTAgNC4zMTI1QzExLjM5MjkgNC4zMTI1IDEyLjU3MTQgNS41MTU2MiAxMi41NzE0IDYuOTM3NUMxMi41NzE0IDguMzg2NzIgMTEuMzkyOSA5LjU2MjUgMTAgOS41NjI1QzguNTgwMzYgOS41NjI1IDcuNDI4NTcgOC4zODY3MiA3LjQyODU3IDYuOTM3NUM3LjQyODU3IDUuNTE1NjIgOC41ODAzNiA0LjMxMjUgMTAgNC4zMTI1WicsXG4gIG1jcDogJ00xMCAzQzYuMTMzMDYgMyAzIDYuMTMzMDYgMyAxMEMzIDEzLjg2NjkgNi4xMzMwNiAxNyAxMCAxN0MxMy44NjY5IDE3IDE3IDEzLjg2NjkgMTcgMTBDMTcgNi4xMzMwNiAxMy44NjY5IDMgMTAgM1pNMTUuMDUyNCA3LjUxNjEzSDEzLjE2MTNDMTIuOTYzNyA2LjUgMTIuNjUzMiA1LjU5Njc3IDEyLjI1ODEgNC44NjI5QzEzLjQ3MTggNS4zOTkxOSAxNC40NTk3IDYuMzMwNjUgMTUuMDUyNCA3LjUxNjEzWk0xMCA0LjM1NDg0QzEwLjUwODEgNC4zNTQ4NCAxMS4zNTQ4IDUuNTQwMzIgMTEuNzc4MiA3LjUxNjEzSDguMTkzNTVDOC42MTY5NCA1LjU0MDMyIDkuNDYzNzEgNC4zNTQ4NCAxMCA0LjM1NDg0Wk00LjM1NDg0IDEwQzQuMzU0ODQgOS42MzMwNiA0LjM4MzA2IDkuMjM3OSA0LjQ2Nzc0IDguODcwOTdINi42NDExM0M2LjYxMjkgOS4yNjYxMyA2LjYxMjkgOS42MzMwNiA2LjYxMjkgMTBDNi42MTI5IDEwLjM5NTIgNi42MTI5IDEwLjc2MjEgNi42NDExMyAxMS4xMjlINC40Njc3NEM0LjM4MzA2IDEwLjc5MDMgNC4zNTQ4NCAxMC4zOTUyIDQuMzU0ODQgMTBaTTQuOTE5MzUgMTIuNDgzOUg2LjgxMDQ4QzcuMDA4MDYgMTMuNTI4MiA3LjMxODU1IDE0LjQzMTUgNy43MTM3MSAxNS4xNjUzQzYuNSAxNC42MjkgNS41MTIxIDEzLjY2OTQgNC45MTkzNSAxMi40ODM5Wk02LjgxMDQ4IDcuNTE2MTNINC45MTkzNUM1LjUxMjEgNi4zMzA2NSA2LjUgNS4zOTkxOSA3LjcxMzcxIDQuODYyOUM3LjMxODU1IDUuNTk2NzcgNy4wMDgwNiA2LjUgNi44MTA0OCA3LjUxNjEzWk0xMCAxNS42NDUyQzkuNDYzNzEgMTUuNjQ1MiA4LjYxNjk0IDE0LjQ4NzkgOC4xOTM1NSAxMi40ODM5SDExLjc3ODJDMTEuMzU0OCAxNC40ODc5IDEwLjUwODEgMTUuNjQ1MiAxMCAxNS42NDUyWk0xMS45NzU4IDExLjEyOUg3Ljk5NTk3QzcuOTY3NzQgMTAuNzkwMyA3Ljk2Nzc0IDEwLjM5NTIgNy45Njc3NCAxMEM3Ljk2Nzc0IDkuNjA0ODQgNy45Njc3NCA5LjIzNzkgNy45OTU5NyA4Ljg3MDk3SDExLjk3NThDMTIuMDA0IDkuMjM3OSAxMi4wMzIzIDkuNjA0ODQgMTIuMDMyMyAxMEMxMi4wMzIzIDEwLjM5NTIgMTIuMDA0IDEwLjc5MDMgMTEuOTc1OCAxMS4xMjlaTTEyLjI1ODEgMTUuMTY1M0MxMi42NTMyIDE0LjQzMTUgMTIuOTYzNyAxMy41MjgyIDEzLjE2MTMgMTIuNDgzOUgxNS4wNTI0QzE0LjQ1OTcgMTMuNjY5NCAxMy40NzE4IDE0LjYyOSAxMi4yNTgxIDE1LjE2NTNaTTEzLjMzMDYgMTEuMTI5QzEzLjM1ODkgMTAuNzYyMSAxMy4zODcxIDEwLjM5NTIgMTMuMzg3MSAxMEMxMy4zODcxIDkuNjMzMDYgMTMuMzU4OSA5LjI2NjEzIDEzLjMzMDYgOC44NzA5N0gxNS41MzIzQzE1LjU4ODcgOS4yMzc5IDE1LjY0NTIgOS42MzMwNiAxNS42NDUyIDEwQzE1LjY0NTIgMTAuMzk1MiAxNS41ODg3IDEwLjc5MDMgMTUuNTMyMyAxMS4xMjlIMTMuMzMwNlonLFxufVxuXG5jb25zdCBjcmVhdGVTdmdJY29uID0gKHBhdGhEYXRhOiBzdHJpbmcsIGNvbG9yOiBzdHJpbmcsIHNpemU6IG51bWJlcik6IFNWR1NWR0VsZW1lbnQgPT4ge1xuICBjb25zdCBzdmcgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50TlMoU1ZHX05TLCAnc3ZnJylcbiAgc3ZnLnNldEF0dHJpYnV0ZSgndmlld0JveCcsICcwIDAgMjAgMjAnKVxuICBzdmcuc2V0QXR0cmlidXRlKCd3aWR0aCcsIFN0cmluZyhzaXplKSlcbiAgc3ZnLnNldEF0dHJpYnV0ZSgnaGVpZ2h0JywgU3RyaW5nKHNpemUpKVxuICBzdmcuc2V0QXR0cmlidXRlKCdhcmlhLWhpZGRlbicsICd0cnVlJylcbiAgc3ZnLnN0eWxlLmRpc3BsYXkgPSAnYmxvY2snXG5cbiAgY29uc3QgcGF0aCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUyhTVkdfTlMsICdwYXRoJylcbiAgcGF0aC5zZXRBdHRyaWJ1dGUoJ2QnLCBwYXRoRGF0YSlcbiAgcGF0aC5zZXRBdHRyaWJ1dGUoJ2ZpbGwnLCBjb2xvcilcbiAgcGF0aC5zZXRBdHRyaWJ1dGUoJ2ZpbGwtcnVsZScsICdub256ZXJvJylcbiAgc3ZnLmFwcGVuZENoaWxkKHBhdGgpXG5cbiAgcmV0dXJuIHN2Z1xufVxuXG5jb25zdCBjcmVhdGVOb3Rpb25JY29uU3ZnRWxlbWVudCA9IChzaXplOiBudW1iZXIpOiBTVkdTVkdFbGVtZW50ID0+IHtcbiAgY29uc3Qgc3ZnID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudE5TKFNWR19OUywgJ3N2ZycpXG4gIHN2Zy5zZXRBdHRyaWJ1dGUoJ3ZpZXdCb3gnLCAnMCAwIDEwMCAxMDAnKVxuICBzdmcuc2V0QXR0cmlidXRlKCd3aWR0aCcsIFN0cmluZyhzaXplKSlcbiAgc3ZnLnNldEF0dHJpYnV0ZSgnaGVpZ2h0JywgU3RyaW5nKHNpemUpKVxuICBzdmcuc2V0QXR0cmlidXRlKCdhcmlhLWhpZGRlbicsICd0cnVlJylcbiAgc3ZnLnN0eWxlLmRpc3BsYXkgPSAnYmxvY2snXG5cbiAgY29uc3QgcDEgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50TlMoU1ZHX05TLCAncGF0aCcpXG4gIHAxLnNldEF0dHJpYnV0ZSgnZmlsbCcsICcjZmZmJylcbiAgcDEuc2V0QXR0cmlidXRlKCdkJywgTk9USU9OX0JSQU5EX1BBVEhfV0hJVEUpXG5cbiAgY29uc3QgcDIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50TlMoU1ZHX05TLCAncGF0aCcpXG4gIHAyLnNldEF0dHJpYnV0ZSgnZmlsbCcsICcjMDAwJylcbiAgcDIuc2V0QXR0cmlidXRlKCdmaWxsLXJ1bGUnLCAnZXZlbm9kZCcpXG4gIHAyLnNldEF0dHJpYnV0ZSgnY2xpcC1ydWxlJywgJ2V2ZW5vZGQnKVxuICBwMi5zZXRBdHRyaWJ1dGUoJ2QnLCBOT1RJT05fQlJBTkRfUEFUSF9CTEFDSylcblxuICBzdmcuYXBwZW5kQ2hpbGQocDEpXG4gIHN2Zy5hcHBlbmRDaGlsZChwMilcbiAgcmV0dXJuIHN2Z1xufVxuXG5leHBvcnQgY29uc3QgZ2V0Q29udGV4dE1lbnRpb25JY29uID0gKFxuICB0eXBlOiBDb250ZXh0RW50aXR5VHlwZSxcbiAgY29sb3I6IHN0cmluZyxcbiAgbWVudGlvbklkOiBzdHJpbmcgfCBudW1iZXIgfCB1bmRlZmluZWQsXG4gIHNpemU/OiBudW1iZXJcbik6IFJlYWN0Tm9kZSA9PiB7XG4gIGNvbnN0IHJlc29sdmVkU2l6ZSA9IHNpemUgPz8gREVGQVVMVF9JQ09OX1NJWkVcbiAgY29uc3QgaWNvblByb3BzID0geyBjb2xvciwgd2lkdGg6IGAke3Jlc29sdmVkU2l6ZX1weGAsIGhlaWdodDogYCR7cmVzb2x2ZWRTaXplfXB4YCB9XG4gIHN3aXRjaCAodHlwZSkge1xuICAgIGNhc2UgJ2NsaWVudCc6XG4gICAgICByZXR1cm4gPENvbnRhY3Qgey4uLmljb25Qcm9wc30gLz5cbiAgICBjYXNlICdwcm9qZWN0JzpcbiAgICAgIHJldHVybiA8RmlsZVByb2plY3Qgey4uLmljb25Qcm9wc30gLz5cbiAgICBjYXNlICd0YXNrJzpcbiAgICAgIHJldHVybiA8aW1nIHNyYz17VEFTS19MSU5LX0lDT05fREFUQV9VUkx9IGFsdD1cIlwiIGFyaWEtaGlkZGVuIHdpZHRoPXtyZXNvbHZlZFNpemV9IGhlaWdodD17cmVzb2x2ZWRTaXplfSAvPlxuICAgIGNhc2UgJ3VzZXInOlxuICAgICAgcmV0dXJuIDxVc2VyIHsuLi5pY29uUHJvcHN9IC8+XG4gICAgY2FzZSAnbWNwJzpcbiAgICAgIGlmIChpc05vdGlvbk1jcFNsdWcobWVudGlvbklkKSkge1xuICAgICAgICByZXR1cm4gPE5vdGlvbkljb24gd2lkdGg9e3Jlc29sdmVkU2l6ZX0gaGVpZ2h0PXtyZXNvbHZlZFNpemV9IC8+XG4gICAgICB9XG4gICAgICByZXR1cm4gPEdsb2JlIHsuLi5pY29uUHJvcHN9IC8+XG4gICAgZGVmYXVsdDpcbiAgICAgIHJldHVybiA8VXNlciB7Li4uaWNvblByb3BzfSAvPlxuICB9XG59XG5cbmV4cG9ydCBjb25zdCBjcmVhdGVDb250ZXh0TWVudGlvbkljb25FbGVtZW50ID0gKFxuICB0eXBlOiBDb250ZXh0RW50aXR5VHlwZSxcbiAgY29sb3I6IHN0cmluZyxcbiAgbWVudGlvbklkOiBzdHJpbmcgfCBudW1iZXIgfCB1bmRlZmluZWQsXG4gIHNpemU/OiBudW1iZXJcbik6IEhUTUxFbGVtZW50IHwgU1ZHU1ZHRWxlbWVudCA9PiB7XG4gIGNvbnN0IHJlc29sdmVkU2l6ZSA9IHNpemUgPz8gREVGQVVMVF9JQ09OX1NJWkVcbiAgaWYgKHR5cGUgPT09ICd0YXNrJykge1xuICAgIGNvbnN0IGltZyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2ltZycpXG4gICAgaW1nLnNyYyA9IFRBU0tfTElOS19JQ09OX0RBVEFfVVJMXG4gICAgaW1nLndpZHRoID0gcmVzb2x2ZWRTaXplXG4gICAgaW1nLmhlaWdodCA9IHJlc29sdmVkU2l6ZVxuICAgIGltZy5hbHQgPSAnJ1xuICAgIGltZy5zZXRBdHRyaWJ1dGUoJ2FyaWEtaGlkZGVuJywgJ3RydWUnKVxuICAgIGltZy5kcmFnZ2FibGUgPSBmYWxzZVxuICAgIGltZy5zdHlsZS5kaXNwbGF5ID0gJ2Jsb2NrJ1xuICAgIHJldHVybiBpbWdcbiAgfVxuXG4gIGlmICh0eXBlID09PSAnbWNwJyAmJiBpc05vdGlvbk1jcFNsdWcobWVudGlvbklkKSkge1xuICAgIHJldHVybiBjcmVhdGVOb3Rpb25JY29uU3ZnRWxlbWVudChyZXNvbHZlZFNpemUpXG4gIH1cblxuICBpZiAodHlwZSA9PT0gJ21jcCcpIHtcbiAgICByZXR1cm4gY3JlYXRlU3ZnSWNvbihNRU5USU9OX0lDT05fUEFUSFMubWNwLCBjb2xvciwgcmVzb2x2ZWRTaXplKVxuICB9XG5cbiAgY29uc3QgcGF0aERhdGEgPSBNRU5USU9OX0lDT05fUEFUSFNbdHlwZV0gPz8gTUVOVElPTl9JQ09OX1BBVEhTLnVzZXJcbiAgcmV0dXJuIGNyZWF0ZVN2Z0ljb24ocGF0aERhdGEsIGNvbG9yLCByZXNvbHZlZFNpemUpXG59XG4iXSwibWFwcGluZ3MiOiI7OztBQUNBLFNBQVNBLE9BQU8sUUFB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
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export var normalizeContextMentionLabel = function normalizeContextMentionLabel(label) {
|
|
2
|
+
return label.replace(/^@+/, '');
|
|
3
|
+
};
|
|
4
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJub3JtYWxpemVDb250ZXh0TWVudGlvbkxhYmVsIiwibGFiZWwiLCJyZXBsYWNlIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL2NvbnRleHRNZW50aW9uTGFiZWwudHMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IG5vcm1hbGl6ZUNvbnRleHRNZW50aW9uTGFiZWwgPSAobGFiZWw6IHN0cmluZyk6IHN0cmluZyA9PiBsYWJlbC5yZXBsYWNlKC9eQCsvLCAnJylcbiJdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxJQUFNQSw0QkFBNEIsR0FBRyxTQUEvQkEsNEJBQTRCQSxDQUFJQyxLQUFhO0VBQUEsT0FBYUEsS0FBSyxDQUFDQyxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQztBQUFBIiwiaWdub3JlTGlzdCI6W119
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export var getContextMentionTypeLabel = function getContextMentionTypeLabel(type) {
|
|
2
|
+
switch (type) {
|
|
3
|
+
case 'client':
|
|
4
|
+
return 'Cliente';
|
|
5
|
+
case 'project':
|
|
6
|
+
return 'Proyecto';
|
|
7
|
+
case 'task':
|
|
8
|
+
return 'Tarea';
|
|
9
|
+
case 'user':
|
|
10
|
+
return 'Usuario';
|
|
11
|
+
case 'mcp':
|
|
12
|
+
return 'MCP';
|
|
13
|
+
default:
|
|
14
|
+
return 'Mencion';
|
|
15
|
+
}
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJnZXRDb250ZXh0TWVudGlvblR5cGVMYWJlbCIsInR5cGUiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvY29udGV4dE1lbnRpb25UeXBlTGFiZWwudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29udGV4dEVudGl0eVR5cGUgfSBmcm9tICcuLi90eXBlcy9jb250ZXh0TWVudGlvbidcblxuZXhwb3J0IGNvbnN0IGdldENvbnRleHRNZW50aW9uVHlwZUxhYmVsID0gKHR5cGU6IENvbnRleHRFbnRpdHlUeXBlKTogc3RyaW5nID0+IHtcbiAgc3dpdGNoICh0eXBlKSB7XG4gICAgY2FzZSAnY2xpZW50JzpcbiAgICAgIHJldHVybiAnQ2xpZW50ZSdcbiAgICBjYXNlICdwcm9qZWN0JzpcbiAgICAgIHJldHVybiAnUHJveWVjdG8nXG4gICAgY2FzZSAndGFzayc6XG4gICAgICByZXR1cm4gJ1RhcmVhJ1xuICAgIGNhc2UgJ3VzZXInOlxuICAgICAgcmV0dXJuICdVc3VhcmlvJ1xuICAgIGNhc2UgJ21jcCc6XG4gICAgICByZXR1cm4gJ01DUCdcbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuICdNZW5jaW9uJ1xuICB9XG59XG4iXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sSUFBTUEsMEJBQTBCLEdBQUcsU0FBN0JBLDBCQUEwQkEsQ0FBSUMsSUFBdUIsRUFBYTtFQUM3RSxRQUFRQSxJQUFJO0lBQ1YsS0FBSyxRQUFRO01BQ1gsT0FBTyxTQUFTO0lBQ2xCLEtBQUssU0FBUztNQUNaLE9BQU8sVUFBVTtJQUNuQixLQUFLLE1BQU07TUFDVCxPQUFPLE9BQU87SUFDaEIsS0FBSyxNQUFNO01BQ1QsT0FBTyxTQUFTO0lBQ2xCLEtBQUssS0FBSztNQUNSLE9BQU8sS0FBSztJQUNkO01BQ0UsT0FBTyxTQUFTO0VBQ3BCO0FBQ0YsQ0FBQyIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
|
|
2
|
+
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
3
|
+
var _defaultSchema$protoc, _defaultSchema$protoc2, _defaultSchema$attrib, _defaultSchema$attrib2;
|
|
4
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
5
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
6
|
+
import rehypeSanitize, { defaultSchema } from 'rehype-sanitize';
|
|
7
|
+
import { defaultRehypePlugins } from 'streamdown';
|
|
8
|
+
/**
|
|
9
|
+
* Streamdown usa `rehype-sanitize` con el default + `tel` y `metastring` en code.
|
|
10
|
+
* Sin `maia-mention` en `protocols.href`, los links `[label](maia-mention://...)`
|
|
11
|
+
* pierden el href y el chat no puede abrir la tarea al hacer clic.
|
|
12
|
+
*/
|
|
13
|
+
var maiaStreamdownSanitizeSchema = _objectSpread(_objectSpread({}, defaultSchema), {}, {
|
|
14
|
+
protocols: _objectSpread(_objectSpread({}, defaultSchema.protocols), {}, {
|
|
15
|
+
href: [].concat(_toConsumableArray((_defaultSchema$protoc = (_defaultSchema$protoc2 = defaultSchema.protocols) === null || _defaultSchema$protoc2 === void 0 ? void 0 : _defaultSchema$protoc2.href) !== null && _defaultSchema$protoc !== void 0 ? _defaultSchema$protoc : []), ['tel', 'maia-mention'])
|
|
16
|
+
}),
|
|
17
|
+
attributes: _objectSpread(_objectSpread({}, defaultSchema.attributes), {}, {
|
|
18
|
+
code: [].concat(_toConsumableArray((_defaultSchema$attrib = (_defaultSchema$attrib2 = defaultSchema.attributes) === null || _defaultSchema$attrib2 === void 0 ? void 0 : _defaultSchema$attrib2.code) !== null && _defaultSchema$attrib !== void 0 ? _defaultSchema$attrib : []), ['metastring'])
|
|
19
|
+
})
|
|
20
|
+
});
|
|
21
|
+
export var MAIA_STREAMDOWN_REHYPE_PLUGINS = Object.values(defaultRehypePlugins).map(function (entry) {
|
|
22
|
+
if (Array.isArray(entry) && entry[0] === rehypeSanitize) {
|
|
23
|
+
return [rehypeSanitize, maiaStreamdownSanitizeSchema];
|
|
24
|
+
}
|
|
25
|
+
return entry;
|
|
26
|
+
});
|
|
27
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJyZWh5cGVTYW5pdGl6ZSIsImRlZmF1bHRTY2hlbWEiLCJkZWZhdWx0UmVoeXBlUGx1Z2lucyIsIm1haWFTdHJlYW1kb3duU2FuaXRpemVTY2hlbWEiLCJfb2JqZWN0U3ByZWFkIiwicHJvdG9jb2xzIiwiaHJlZiIsImNvbmNhdCIsIl90b0NvbnN1bWFibGVBcnJheSIsIl9kZWZhdWx0U2NoZW1hJHByb3RvYyIsIl9kZWZhdWx0U2NoZW1hJHByb3RvYzIiLCJhdHRyaWJ1dGVzIiwiY29kZSIsIl9kZWZhdWx0U2NoZW1hJGF0dHJpYiIsIl9kZWZhdWx0U2NoZW1hJGF0dHJpYjIiLCJNQUlBX1NUUkVBTURPV05fUkVIWVBFX1BMVUdJTlMiLCJPYmplY3QiLCJ2YWx1ZXMiLCJtYXAiLCJlbnRyeSIsIkFycmF5IiwiaXNBcnJheSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9tYWlhU3RyZWFtZG93blJlaHlwZVBsdWdpbnMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHJlaHlwZVNhbml0aXplLCB7IGRlZmF1bHRTY2hlbWEgfSBmcm9tICdyZWh5cGUtc2FuaXRpemUnXG5pbXBvcnQgeyBkZWZhdWx0UmVoeXBlUGx1Z2lucyB9IGZyb20gJ3N0cmVhbWRvd24nXG5pbXBvcnQgdHlwZSB7IFBsdWdnYWJsZUxpc3QgfSBmcm9tICd1bmlmaWVkJ1xuXG4vKipcbiAqIFN0cmVhbWRvd24gdXNhIGByZWh5cGUtc2FuaXRpemVgIGNvbiBlbCBkZWZhdWx0ICsgYHRlbGAgeSBgbWV0YXN0cmluZ2AgZW4gY29kZS5cbiAqIFNpbiBgbWFpYS1tZW50aW9uYCBlbiBgcHJvdG9jb2xzLmhyZWZgLCBsb3MgbGlua3MgYFtsYWJlbF0obWFpYS1tZW50aW9uOi8vLi4uKWBcbiAqIHBpZXJkZW4gZWwgaHJlZiB5IGVsIGNoYXQgbm8gcHVlZGUgYWJyaXIgbGEgdGFyZWEgYWwgaGFjZXIgY2xpYy5cbiAqL1xuY29uc3QgbWFpYVN0cmVhbWRvd25TYW5pdGl6ZVNjaGVtYSA9IHtcbiAgLi4uZGVmYXVsdFNjaGVtYSxcbiAgcHJvdG9jb2xzOiB7XG4gICAgLi4uZGVmYXVsdFNjaGVtYS5wcm90b2NvbHMsXG4gICAgaHJlZjogWy4uLihkZWZhdWx0U2NoZW1hLnByb3RvY29scz8uaHJlZiA/PyBbXSksICd0ZWwnLCAnbWFpYS1tZW50aW9uJ10sXG4gIH0sXG4gIGF0dHJpYnV0ZXM6IHtcbiAgICAuLi5kZWZhdWx0U2NoZW1hLmF0dHJpYnV0ZXMsXG4gICAgY29kZTogWy4uLihkZWZhdWx0U2NoZW1hLmF0dHJpYnV0ZXM/LmNvZGUgPz8gW10pLCAnbWV0YXN0cmluZyddLFxuICB9LFxufVxuXG5leHBvcnQgY29uc3QgTUFJQV9TVFJFQU1ET1dOX1JFSFlQRV9QTFVHSU5TOiBQbHVnZ2FibGVMaXN0ID0gT2JqZWN0LnZhbHVlcyhkZWZhdWx0UmVoeXBlUGx1Z2lucykubWFwKGVudHJ5ID0+IHtcbiAgaWYgKEFycmF5LmlzQXJyYXkoZW50cnkpICYmIGVudHJ5WzBdID09PSByZWh5cGVTYW5pdGl6ZSkge1xuICAgIHJldHVybiBbcmVoeXBlU2FuaXRpemUsIG1haWFTdHJlYW1kb3duU2FuaXRpemVTY2hlbWFdXG4gIH1cbiAgcmV0dXJuIGVudHJ5XG59KSBhcyBQbHVnZ2FibGVMaXN0XG4iXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBT0EsY0FBYyxJQUFJQyxhQUFhLFFBQVEsaUJBQWlCO0FBQy9ELFNBQVNDLG9CQUFvQixRQUFRLFlBQVk7QUFHakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQU1DLDRCQUE0QixHQUFBQyxhQUFBLENBQUFBLGFBQUEsS0FDN0JILGFBQWE7RUFDaEJJLFNBQVMsRUFBQUQsYUFBQSxDQUFBQSxhQUFBLEtBQ0pILGFBQWEsQ0FBQ0ksU0FBUztJQUMxQkMsSUFBSSxLQUFBQyxNQUFBLENBQUFDLGtCQUFBLEVBQUFDLHFCQUFBLElBQUFDLHNCQUFBLEdBQU9ULGFBQWEsQ0FBQ0ksU0FBUyxjQUFBSyxzQkFBQSx1QkFBdkJBLHNCQUFBLENBQXlCSixJQUFJLGNBQUFHLHFCQUFBLGNBQUFBLHFCQUFBLEdBQUksRUFBRSxJQUFHLEtBQUssRUFBRSxjQUFjO0VBQUMsRUFDeEU7RUFDREUsVUFBVSxFQUFBUCxhQUFBLENBQUFBLGFBQUEsS0FDTEgsYUFBYSxDQUFDVSxVQUFVO0lBQzNCQyxJQUFJLEtBQUFMLE1BQUEsQ0FBQUMsa0JBQUEsRUFBQUsscUJBQUEsSUFBQUMsc0JBQUEsR0FBT2IsYUFBYSxDQUFDVSxVQUFVLGNBQUFHLHNCQUFBLHVCQUF4QkEsc0JBQUEsQ0FBMEJGLElBQUksY0FBQUMscUJBQUEsY0FBQUEscUJBQUEsR0FBSSxFQUFFLElBQUcsWUFBWTtFQUFDO0FBQ2hFLEVBQ0Y7QUFFRCxPQUFPLElBQU1FLDhCQUE2QyxHQUFHQyxNQUFNLENBQUNDLE1BQU0sQ0FBQ2Ysb0JBQW9CLENBQUMsQ0FBQ2dCLEdBQUcsQ0FBQyxVQUFBQyxLQUFLLEVBQUk7RUFDNUcsSUFBSUMsS0FBSyxDQUFDQyxPQUFPLENBQUNGLEtBQUssQ0FBQyxJQUFJQSxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUtuQixjQUFjLEVBQUU7SUFDdkQsT0FBTyxDQUFDQSxjQUFjLEVBQUVHLDRCQUE0QixDQUFDO0VBQ3ZEO0VBQ0EsT0FBT2dCLEtBQUs7QUFDZCxDQUFDLENBQWtCIiwiaWdub3JlTGlzdCI6W119
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/* eslint-disable no-restricted-globals */
|
|
2
|
+
import { SECTIONS } from '../constants/config';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Abre la tarea en el panel/modal de COR (mismo flujo que `useTaskPanel` / enlaces de tarea en chat).
|
|
6
|
+
* Si `window.openPanel` no existe, cae a nueva pestaña.
|
|
7
|
+
*/
|
|
8
|
+
export var openTaskInCorPanel = function openTaskInCorPanel(taskId) {
|
|
9
|
+
var tabSegment = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'detail';
|
|
10
|
+
var newPathname = "/tasks/".concat(taskId, "/").concat(tabSegment);
|
|
11
|
+
if ('openPanel' in window && typeof window.openPanel === 'function') {
|
|
12
|
+
history.replaceState('', '', "".concat(newPathname).concat(window.location.search));
|
|
13
|
+
window.openPanel(taskId, SECTIONS.chatAI);
|
|
14
|
+
} else {
|
|
15
|
+
window.open("".concat(window.location.origin).concat(newPathname), '_blank');
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJTRUNUSU9OUyIsIm9wZW5UYXNrSW5Db3JQYW5lbCIsInRhc2tJZCIsInRhYlNlZ21lbnQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJ1bmRlZmluZWQiLCJuZXdQYXRobmFtZSIsImNvbmNhdCIsIndpbmRvdyIsIm9wZW5QYW5lbCIsImhpc3RvcnkiLCJyZXBsYWNlU3RhdGUiLCJsb2NhdGlvbiIsInNlYXJjaCIsImNoYXRBSSIsIm9wZW4iLCJvcmlnaW4iXSwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvb3BlblRhc2tJbkNvclBhbmVsLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIG5vLXJlc3RyaWN0ZWQtZ2xvYmFscyAqL1xuaW1wb3J0IHsgU0VDVElPTlMgfSBmcm9tICcuLi9jb25zdGFudHMvY29uZmlnJ1xuXG4vKipcbiAqIEFicmUgbGEgdGFyZWEgZW4gZWwgcGFuZWwvbW9kYWwgZGUgQ09SIChtaXNtbyBmbHVqbyBxdWUgYHVzZVRhc2tQYW5lbGAgLyBlbmxhY2VzIGRlIHRhcmVhIGVuIGNoYXQpLlxuICogU2kgYHdpbmRvdy5vcGVuUGFuZWxgIG5vIGV4aXN0ZSwgY2FlIGEgbnVldmEgcGVzdGHDsWEuXG4gKi9cbmV4cG9ydCBjb25zdCBvcGVuVGFza0luQ29yUGFuZWwgPSAodGFza0lkOiBzdHJpbmcgfCBudW1iZXIsIHRhYlNlZ21lbnQ6IHN0cmluZyA9ICdkZXRhaWwnKTogdm9pZCA9PiB7XG4gIGNvbnN0IG5ld1BhdGhuYW1lID0gYC90YXNrcy8ke3Rhc2tJZH0vJHt0YWJTZWdtZW50fWBcblxuICBpZiAoJ29wZW5QYW5lbCcgaW4gd2luZG93ICYmIHR5cGVvZiB3aW5kb3cub3BlblBhbmVsID09PSAnZnVuY3Rpb24nKSB7XG4gICAgaGlzdG9yeS5yZXBsYWNlU3RhdGUoJycsICcnLCBgJHtuZXdQYXRobmFtZX0ke3dpbmRvdy5sb2NhdGlvbi5zZWFyY2h9YClcbiAgICB3aW5kb3cub3BlblBhbmVsKHRhc2tJZCwgU0VDVElPTlMuY2hhdEFJKVxuICB9IGVsc2Uge1xuICAgIHdpbmRvdy5vcGVuKGAke3dpbmRvdy5sb2NhdGlvbi5vcmlnaW59JHtuZXdQYXRobmFtZX1gLCAnX2JsYW5rJylcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBLFNBQVNBLFFBQVEsUUFBUSxxQkFBcUI7O0FBRTlDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTyxJQUFNQyxrQkFBa0IsR0FBRyxTQUFyQkEsa0JBQWtCQSxDQUFJQyxNQUF1QixFQUEwQztFQUFBLElBQXhDQyxVQUFrQixHQUFBQyxTQUFBLENBQUFDLE1BQUEsUUFBQUQsU0FBQSxRQUFBRSxTQUFBLEdBQUFGLFNBQUEsTUFBRyxRQUFRO0VBQ3ZGLElBQU1HLFdBQVcsYUFBQUMsTUFBQSxDQUFhTixNQUFNLE9BQUFNLE1BQUEsQ0FBSUwsVUFBVSxDQUFFO0VBRXBELElBQUksV0FBVyxJQUFJTSxNQUFNLElBQUksT0FBT0EsTUFBTSxDQUFDQyxTQUFTLEtBQUssVUFBVSxFQUFFO0lBQ25FQyxPQUFPLENBQUNDLFlBQVksQ0FBQyxFQUFFLEVBQUUsRUFBRSxLQUFBSixNQUFBLENBQUtELFdBQVcsRUFBQUMsTUFBQSxDQUFHQyxNQUFNLENBQUNJLFFBQVEsQ0FBQ0MsTUFBTSxDQUFFLENBQUM7SUFDdkVMLE1BQU0sQ0FBQ0MsU0FBUyxDQUFDUixNQUFNLEVBQUVGLFFBQVEsQ0FBQ2UsTUFBTSxDQUFDO0VBQzNDLENBQUMsTUFBTTtJQUNMTixNQUFNLENBQUNPLElBQUksSUFBQVIsTUFBQSxDQUFJQyxNQUFNLENBQUNJLFFBQVEsQ0FBQ0ksTUFBTSxFQUFBVCxNQUFBLENBQUdELFdBQVcsR0FBSSxRQUFRLENBQUM7RUFDbEU7QUFDRixDQUFDIiwiaWdub3JlTGlzdCI6W119
|