@projectcor/maia-components 2.11.109-4 → 2.11.110-1
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/components/atoms/ContextMentionChip/buildChipElement.js +12 -1
- package/lib/components/atoms/ContextMentionEditor/ContextMentionEditor.js +127 -5
- package/lib/components/atoms/ContextMentionItem/ContextMentionItem.js +2 -29
- package/lib/components/atoms/ContextMentionItem/ContextMentionItem.styles.js +24 -33
- package/lib/components/atoms/ContextMentionPopover/ContextMentionPopover.js +2 -19
- package/lib/components/atoms/IconButton.js +2 -2
- package/lib/components/atoms/MAIAInput/MAIAInput.js +204 -88
- package/lib/components/atoms/MAIAInput/styles.js +15 -11
- package/lib/components/atoms/SkillsDropdown/SkillsDropdown.js +208 -0
- package/lib/components/atoms/SkillsDropdown/SkillsDropdown.styles.js +77 -0
- package/lib/components/atoms/SkillsDropdown/index.js +2 -0
- package/lib/components/atoms/icons/PlusIcon.js +29 -0
- package/lib/components/atoms/icons/RetryIcon.js +34 -0
- package/lib/components/atoms/icons/SkillCreatedByIcon.js +20 -0
- package/lib/components/atoms/icons/SkillVisibilityEveryoneIcon.js +23 -0
- package/lib/components/atoms/icons/SkillVisibilityOnlyMeIcon.js +23 -0
- package/lib/components/atoms/icons/SkillsNavIcon.js +4 -7
- package/lib/components/atoms/icons/index.js +5 -1
- package/lib/components/molecules/ChatAIContent/ChatAIContent.js +5 -3
- package/lib/components/molecules/ChatAIMessages/ChatAIMessages.js +135 -380
- package/lib/components/molecules/ChatAIMessages/newStyles.js +18 -50
- package/lib/components/molecules/ChatAIModal/ChatAIModal.js +202 -198
- package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.js +11 -16
- package/lib/components/molecules/ChatAIModal/components/MaiaMinimizedPill/MaiaMinimizedPill.js +8 -26
- package/lib/components/molecules/ChatAIModal/components/MaiaMinimizedPill/MaiaMinimizedPill.styles.js +7 -24
- package/lib/components/molecules/ChatAIMySkills/ChatAIMySkills.js +312 -239
- package/lib/components/molecules/ChatAIMySkills/ChatAIMySkills.styles.js +128 -104
- package/lib/components/molecules/ContextMentionInput/ContextMentionInput.js +1 -3
- package/lib/components/molecules/MessageFeedback/MessageFeedback.js +14 -2
- package/lib/components/molecules/MessageFeedback/styles.js +2 -6
- package/lib/components/molecules/Sidebar/Sidebar.js +5 -4
- package/lib/components/molecules/Sidebar/Sidebar.layout.styles.js +2 -2
- package/lib/components/organisms/AbmSkillGenerateModal/AbmSkillGenerateModal.js +8 -1
- package/lib/components/organisms/AbmSkillModal/AbmSkillModal.js +338 -185
- package/lib/components/organisms/AbmSkillModal/AbmSkillModal.styles.js +122 -66
- package/lib/components/organisms/ChatAI/ChatAI.js +3 -22
- package/lib/components/organisms/ClientAIButton/ClientAIButton.js +1 -4
- package/lib/components/organisms/ProjectAIButton/ProjectAIButton.js +1 -4
- package/lib/constants/config.js +1 -4
- package/lib/constants/permissions/utils.js +3 -3
- package/lib/context/global-context.js +1 -1
- package/lib/dev/DevChatAI.js +1 -4
- package/lib/hooks/useChatManager/useChatManager.js +401 -146
- package/lib/hooks/useChatMessages/useChatMessages.js +27 -25
- package/lib/hooks/useContextMentions.js +93 -56
- package/lib/hooks/useEntitySearch.js +92 -278
- package/lib/hooks/useMentionAllowedTypes.js +9 -25
- package/lib/hooks/useMentionPopover.js +9 -33
- package/lib/hooks/useOrchestratorStream/useOrchestratorStream.interface.js +1 -1
- package/lib/hooks/useOrchestratorStream/useOrchestratorStream.js +80 -6
- package/lib/hooks/useProjectSummaryConfig.js +17 -36
- package/lib/hooks/useSkillsCatalog.js +66 -0
- package/lib/lang/br/index.js +63 -251
- package/lib/lang/en/index.js +63 -251
- package/lib/lang/es/index.js +64 -252
- package/lib/lang/fr/index.js +63 -251
- package/lib/services/maia/Orchestrator/index.js +4 -3
- package/lib/services/maia/Orchestrator/orchestrator.js +84 -23
- package/lib/services/maia/Skills/createSkill.js +1 -1
- package/lib/services/maia/Skills/getSkills.js +70 -40
- package/lib/services/maia/Skills/updateSkill.js +1 -1
- package/lib/services/utils/mapChatMessages.js +26 -25
- package/lib/store/maiaLastChatPersistence.js +35 -0
- package/lib/store/sessions/sessionStreamManager.js +191 -99
- package/lib/store/sessions/sessions.types.js +1 -1
- package/lib/types/Chat.js +1 -1
- package/lib/types/skill.js +1 -1
- package/lib/utils/contextMentionTriggers.js +2 -5
- package/lib/utils/hitlAnalytics.js +3 -4
- package/lib/utils/maiaHostOpen.js +1 -10
- package/lib/utils/renderContextMentions.js +39 -18
- package/lib/utils/retryCompletion.js +85 -0
- package/lib/utils/streamActivityMessages.js +41 -106
- package/package.json +1 -1
- package/lib/components/atoms/ReasoningBlock/ReasoningBlock.js +0 -136
- package/lib/components/atoms/ReasoningBlock/ReasoningBlock.styles.js +0 -73
- package/lib/components/atoms/ReasoningBlock/index.js +0 -2
- package/lib/components/organisms/CloseWhileGeneratingModal/CloseWhileGeneratingModal.js +0 -56
- package/lib/components/organisms/CloseWhileGeneratingModal/CloseWhileGeneratingModal.styles.js +0 -35
- package/lib/components/organisms/CloseWhileGeneratingModal/index.js +0 -2
- package/lib/hooks/useReasoningTrace/index.js +0 -3
- package/lib/hooks/useReasoningTrace/reasoningStore.js +0 -142
- package/lib/hooks/useReasoningTrace/useReasoningTrace.js +0 -14
- package/lib/store/maiaMinimizedPersistence.js +0 -49
- package/lib/types/reasoning.js +0 -2
- package/lib/utils/autoApproveStorage.js +0 -26
- package/lib/utils/reasoningMappers.js +0 -62
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { orchestrator, continueThread } from './orchestrator';
|
|
1
|
+
import { orchestrator, continueThread, retryCompletion } from './orchestrator';
|
|
2
2
|
export default {
|
|
3
3
|
orchestrator: orchestrator,
|
|
4
|
-
continueThread: continueThread
|
|
4
|
+
continueThread: continueThread,
|
|
5
|
+
retryCompletion: retryCompletion
|
|
5
6
|
};
|
|
6
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
7
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJvcmNoZXN0cmF0b3IiLCJjb250aW51ZVRocmVhZCIsInJldHJ5Q29tcGxldGlvbiJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9tYWlhL09yY2hlc3RyYXRvci9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBvcmNoZXN0cmF0b3IsIGNvbnRpbnVlVGhyZWFkLCByZXRyeUNvbXBsZXRpb24gfSBmcm9tICcuL29yY2hlc3RyYXRvcidcblxuZXhwb3J0IGRlZmF1bHQge1xuICBvcmNoZXN0cmF0b3IsXG4gIGNvbnRpbnVlVGhyZWFkLFxuICByZXRyeUNvbXBsZXRpb24sXG59XG4iXSwibWFwcGluZ3MiOiJBQUFBLFNBQVNBLFlBQVksRUFBRUMsY0FBYyxFQUFFQyxlQUFlLFFBQVEsZ0JBQWdCO0FBRTlFLGVBQWU7RUFDYkYsWUFBWSxFQUFaQSxZQUFZO0VBQ1pDLGNBQWMsRUFBZEEsY0FBYztFQUNkQyxlQUFlLEVBQWZBO0FBQ0YsQ0FBQyIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -43,13 +43,76 @@ var validateAttachments = function validateAttachments(attachments) {
|
|
|
43
43
|
}
|
|
44
44
|
});
|
|
45
45
|
};
|
|
46
|
-
|
|
46
|
+
var toRetryLocale = function toRetryLocale(lang) {
|
|
47
|
+
if (lang === 'br') return 'pt-BR';
|
|
48
|
+
if (lang === 'es') return 'es-AR';
|
|
49
|
+
if (lang === 'fr') return 'fr-FR';
|
|
50
|
+
return 'en-US';
|
|
51
|
+
};
|
|
52
|
+
export var retryCompletion = /*#__PURE__*/function () {
|
|
47
53
|
var _ref = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(body, signal) {
|
|
48
|
-
var
|
|
54
|
+
var sessionId, memorySessionId, agentId, lang, isWebSearchActive, isDeepSearchActive, projectId, clientId, taskId, agentType, contextData, path, headers, contextId, timezone;
|
|
49
55
|
return _regeneratorRuntime.wrap(function (_context) {
|
|
50
56
|
while (1) switch (_context.prev = _context.next) {
|
|
51
57
|
case 0:
|
|
52
|
-
|
|
58
|
+
sessionId = body.sessionId, memorySessionId = body.memorySessionId, agentId = body.agentId, lang = body.lang, isWebSearchActive = body.isWebSearchActive, isDeepSearchActive = body.isDeepSearchActive, projectId = body.projectId, clientId = body.clientId, taskId = body.taskId, agentType = body.agentType, contextData = body.contextData;
|
|
59
|
+
path = 'orchestrator/retry_completion?mode=stream';
|
|
60
|
+
if (isWebSearchActive === true) {
|
|
61
|
+
path += '&search_web=true';
|
|
62
|
+
}
|
|
63
|
+
if (isDeepSearchActive === true) {
|
|
64
|
+
path += '&search_web=true&depth=true';
|
|
65
|
+
}
|
|
66
|
+
headers = {
|
|
67
|
+
'X-Agent-Id': agentId.toString(),
|
|
68
|
+
'Accept-Language': mapCORLang(lang)
|
|
69
|
+
};
|
|
70
|
+
if (agentType === 'orchestrator') {
|
|
71
|
+
contextId = '';
|
|
72
|
+
if (taskId != null) contextId = "task:".concat(taskId);else if (projectId != null) contextId = "project:".concat(projectId);else if (clientId != null) contextId = "client:".concat(clientId);
|
|
73
|
+
if (contextId) {
|
|
74
|
+
headers['X-Context-Id'] = contextId;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
if (contextData && Object.keys(contextData).length > 0) {
|
|
78
|
+
headers['X-Context-Data'] = encodeContextDataHeader(contextData);
|
|
79
|
+
}
|
|
80
|
+
timezone = typeof Intl !== 'undefined' ? Intl.DateTimeFormat().resolvedOptions().timeZone : 'America/Buenos_Aires';
|
|
81
|
+
return _context.abrupt("return", fetchMaia({
|
|
82
|
+
path: path,
|
|
83
|
+
method: 'POST',
|
|
84
|
+
headers: headers,
|
|
85
|
+
body: {
|
|
86
|
+
session_id: sessionId,
|
|
87
|
+
parent_message_uuid: memorySessionId,
|
|
88
|
+
turn_message_uuids: {
|
|
89
|
+
assistant_message_uuid: memorySessionId
|
|
90
|
+
},
|
|
91
|
+
memory_session_id: memorySessionId,
|
|
92
|
+
prompt: '',
|
|
93
|
+
locale: toRetryLocale(lang),
|
|
94
|
+
timezone: timezone,
|
|
95
|
+
metadata: {}
|
|
96
|
+
},
|
|
97
|
+
signal: signal
|
|
98
|
+
}));
|
|
99
|
+
case 1:
|
|
100
|
+
case "end":
|
|
101
|
+
return _context.stop();
|
|
102
|
+
}
|
|
103
|
+
}, _callee);
|
|
104
|
+
}));
|
|
105
|
+
return function retryCompletion(_x, _x2) {
|
|
106
|
+
return _ref.apply(this, arguments);
|
|
107
|
+
};
|
|
108
|
+
}();
|
|
109
|
+
export var continueThread = /*#__PURE__*/function () {
|
|
110
|
+
var _ref2 = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee2(body, signal) {
|
|
111
|
+
var threadIds, sessionId, decision, editedActions, agentId, lang, requestBody;
|
|
112
|
+
return _regeneratorRuntime.wrap(function (_context2) {
|
|
113
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
114
|
+
case 0:
|
|
115
|
+
threadIds = body.threadIds, sessionId = body.sessionId, decision = body.decision, editedActions = body.editedActions, agentId = body.agentId, lang = body.lang;
|
|
53
116
|
requestBody = {
|
|
54
117
|
thread_ids: threadIds,
|
|
55
118
|
session_id: sessionId,
|
|
@@ -58,34 +121,33 @@ export var continueThread = /*#__PURE__*/function () {
|
|
|
58
121
|
if (decision === 'edit' && editedActions) {
|
|
59
122
|
requestBody.edited_actions = editedActions;
|
|
60
123
|
}
|
|
61
|
-
return
|
|
124
|
+
return _context2.abrupt("return", fetchMaia({
|
|
62
125
|
path: 'orchestrator/continue-thread?mode=stream',
|
|
63
126
|
method: 'POST',
|
|
64
127
|
headers: {
|
|
65
128
|
'X-Agent-Id': agentId.toString(),
|
|
66
|
-
'Accept-Language': mapCORLang(lang)
|
|
67
|
-
'X-HITL-Approval-Mode': isAutoApproveActive ? 'full_access' : 'approve_each'
|
|
129
|
+
'Accept-Language': mapCORLang(lang)
|
|
68
130
|
},
|
|
69
131
|
body: requestBody,
|
|
70
132
|
signal: signal
|
|
71
133
|
}));
|
|
72
134
|
case 1:
|
|
73
135
|
case "end":
|
|
74
|
-
return
|
|
136
|
+
return _context2.stop();
|
|
75
137
|
}
|
|
76
|
-
},
|
|
138
|
+
}, _callee2);
|
|
77
139
|
}));
|
|
78
|
-
return function continueThread(
|
|
79
|
-
return
|
|
140
|
+
return function continueThread(_x3, _x4) {
|
|
141
|
+
return _ref2.apply(this, arguments);
|
|
80
142
|
};
|
|
81
143
|
}();
|
|
82
144
|
export var orchestrator = /*#__PURE__*/function () {
|
|
83
|
-
var
|
|
84
|
-
var input, projectId, lang, userId, firstName, lastName, chatId, clientId, clientName, feeId, agentId, isWebSearchActive, isDeepSearchActive,
|
|
85
|
-
return _regeneratorRuntime.wrap(function (
|
|
86
|
-
while (1) switch (
|
|
145
|
+
var _ref3 = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee3(body, signal) {
|
|
146
|
+
var input, projectId, lang, userId, firstName, lastName, chatId, clientId, clientName, feeId, agentId, isWebSearchActive, isDeepSearchActive, attachments, projectName, taskId, taskName, faqId, agentSuggestionId, fuaId, scId, agentEntity, agentType, contextMessage, contextData, formData, metadata, path, headers, contextId;
|
|
147
|
+
return _regeneratorRuntime.wrap(function (_context3) {
|
|
148
|
+
while (1) switch (_context3.prev = _context3.next) {
|
|
87
149
|
case 0:
|
|
88
|
-
input = body.input, projectId = body.projectId, lang = body.lang, userId = body.userId, firstName = body.firstName, lastName = body.lastName, chatId = body.chatId, clientId = body.clientId, clientName = body.clientName, feeId = body.feeId, agentId = body.agentId, isWebSearchActive = body.isWebSearchActive, isDeepSearchActive = body.isDeepSearchActive,
|
|
150
|
+
input = body.input, projectId = body.projectId, lang = body.lang, userId = body.userId, firstName = body.firstName, lastName = body.lastName, chatId = body.chatId, clientId = body.clientId, clientName = body.clientName, feeId = body.feeId, agentId = body.agentId, isWebSearchActive = body.isWebSearchActive, isDeepSearchActive = body.isDeepSearchActive, attachments = body.attachments, projectName = body.projectName, taskId = body.taskId, taskName = body.taskName, faqId = body.faqId, agentSuggestionId = body.agentSuggestionId, fuaId = body.fuaId, scId = body.scId, agentEntity = body.agentEntity, agentType = body.agentType, contextMessage = body.contextMessage, contextData = body.contextData;
|
|
89
151
|
formData = new FormData();
|
|
90
152
|
formData.append('input', input);
|
|
91
153
|
formData.append('session_id', chatId);
|
|
@@ -137,8 +199,7 @@ export var orchestrator = /*#__PURE__*/function () {
|
|
|
137
199
|
path += '&search_web=true&depth=true';
|
|
138
200
|
}
|
|
139
201
|
headers = {
|
|
140
|
-
'X-Agent-Id': agentId.toString()
|
|
141
|
-
'X-HITL-Approval-Mode': isAutoApproveActive ? 'full_access' : 'approve_each'
|
|
202
|
+
'X-Agent-Id': agentId.toString()
|
|
142
203
|
}; // Pin de contexto (RFC §9.1): el header le dice al router a quién derivar antes de parsear el body.
|
|
143
204
|
// Mono-entidad con prioridad por jerarquía (tarea > proyecto > cliente).
|
|
144
205
|
// Solo aplica al orquestador (MAIA): es el único agente sin scope propio, donde el pin define la derivación.
|
|
@@ -165,7 +226,7 @@ export var orchestrator = /*#__PURE__*/function () {
|
|
|
165
226
|
if (contextData && Object.keys(contextData).length > 0) {
|
|
166
227
|
headers['X-Context-Data'] = encodeContextDataHeader(contextData);
|
|
167
228
|
}
|
|
168
|
-
return
|
|
229
|
+
return _context3.abrupt("return", fetchMaia({
|
|
169
230
|
path: path,
|
|
170
231
|
method: 'POST',
|
|
171
232
|
headers: headers,
|
|
@@ -174,12 +235,12 @@ export var orchestrator = /*#__PURE__*/function () {
|
|
|
174
235
|
}));
|
|
175
236
|
case 1:
|
|
176
237
|
case "end":
|
|
177
|
-
return
|
|
238
|
+
return _context3.stop();
|
|
178
239
|
}
|
|
179
|
-
},
|
|
240
|
+
}, _callee3);
|
|
180
241
|
}));
|
|
181
|
-
return function orchestrator(
|
|
182
|
-
return
|
|
242
|
+
return function orchestrator(_x5, _x6) {
|
|
243
|
+
return _ref3.apply(this, arguments);
|
|
183
244
|
};
|
|
184
245
|
}();
|
|
185
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJtYXBDT1JMYW5nIiwiZmV0Y2hNYWlhIiwiRklMRV9GT1JNQVRfRVhURU5TSU9OUyIsIkZJTEVfUFJFU0VOVEFUSU9OX0ZPUk1BVF9FWFRFTlNJT05TIiwiRklMRV9NQUlBX1ZJU0lPTl9GT1JNQVRfRVhURU5TSU9OUyIsIkZJTEVfQVVESU9fRk9STUFUX0VYVEVOU0lPTlMiLCJnZXRNYXhBdHRhY2htZW50U2l6ZU1iIiwiZW5jb2RlQ29udGV4dERhdGFIZWFkZXIiLCJjb250ZXh0RGF0YSIsImpzb24iLCJKU09OIiwic3RyaW5naWZ5IiwiYnl0ZXMiLCJUZXh0RW5jb2RlciIsImVuY29kZSIsImJpbmFyeSIsImkiLCJsZW5ndGgiLCJTdHJpbmciLCJmcm9tQ2hhckNvZGUiLCJidG9hIiwiTUFYX0ZJTEVTIiwiQUxMT1dFRF9GSUxFX0VYVEVOU0lPTlMiLCJ2YWxpZGF0ZUF0dGFjaG1lbnRzIiwiYXR0YWNobWVudHMiLCJFcnJvciIsImNvbmNhdCIsImZvckVhY2giLCJhdHRhY2htZW50IiwiZmlsZUV4dGVuc2lvbiIsIm5hbWUiLCJ0b0xvd2VyQ2FzZSIsInN1YnN0cmluZyIsImxhc3RJbmRleE9mIiwiaW5jbHVkZXMiLCJqb2luIiwiZmlsZVNpemUiLCJzaXplIiwiTnVtYmVyIiwibWF4U2l6ZU1iIiwibWF4U2l6ZUJ5dGVzIiwiY29udGludWVUaHJlYWQiLCJfcmVmIiwiX2FzeW5jVG9HZW5lcmF0b3IiLCJfcmVnZW5lcmF0b3JSdW50aW1lIiwibWFyayIsIl9jYWxsZWUiLCJib2R5Iiwic2lnbmFsIiwidGhyZWFkSWRzIiwic2Vzc2lvbklkIiwiZGVjaXNpb24iLCJlZGl0ZWRBY3Rpb25zIiwiYWdlbnRJZCIsImxhbmciLCJpc0F1dG9BcHByb3ZlQWN0aXZlIiwicmVxdWVzdEJvZHkiLCJ3cmFwIiwiX2NvbnRleHQiLCJwcmV2IiwibmV4dCIsInRocmVhZF9pZHMiLCJzZXNzaW9uX2lkIiwiZWRpdGVkX2FjdGlvbnMiLCJhYnJ1cHQiLCJwYXRoIiwibWV0aG9kIiwiaGVhZGVycyIsInRvU3RyaW5nIiwic3RvcCIsIl94IiwiX3gyIiwiYXBwbHkiLCJhcmd1bWVudHMiLCJvcmNoZXN0cmF0b3IiLCJfcmVmMiIsIl9jYWxsZWUyIiwiaW5wdXQiLCJwcm9qZWN0SWQiLCJ1c2VySWQiLCJmaXJzdE5hbWUiLCJsYXN0TmFtZSIsImNoYXRJZCIsImNsaWVudElkIiwiY2xpZW50TmFtZSIsImZlZUlkIiwiaXNXZWJTZWFyY2hBY3RpdmUiLCJpc0RlZXBTZWFyY2hBY3RpdmUiLCJwcm9qZWN0TmFtZSIsInRhc2tJZCIsInRhc2tOYW1lIiwiZmFxSWQiLCJhZ2VudFN1Z2dlc3Rpb25JZCIsImZ1YUlkIiwic2NJZCIsImFnZW50RW50aXR5IiwiYWdlbnRUeXBlIiwiY29udGV4dE1lc3NhZ2UiLCJmb3JtRGF0YSIsIm1ldGFkYXRhIiwiY29udGV4dElkIiwiX2NvbnRleHQyIiwiRm9ybURhdGEiLCJhcHBlbmQiLCJmaWxlVG9TZW5kIiwib3JpZ2luYWxGaWxlIiwiZmlsZSIsIl9vYmplY3RTcHJlYWQiLCJ1c2VyX2lkIiwiZmlyc3RfbmFtZSIsImxhc3RfbmFtZSIsImZlZV9pZCIsImNsaWVudF9pZCIsImNsaWVudF9uYW1lIiwicHJvamVjdF9pZCIsInByb2plY3RfbmFtZSIsInRhc2tfaWQiLCJ0YXNrX25hbWUiLCJzdWJkb21haW4iLCJ3aW5kb3ciLCJsb2NhdGlvbiIsImhvc3RuYW1lIiwic3BsaXQiLCJPYmplY3QiLCJrZXlzIiwiY29udGV4dF9tZXNzYWdlIiwiX3gzIiwiX3g0Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3NlcnZpY2VzL21haWEvT3JjaGVzdHJhdG9yL29yY2hlc3RyYXRvci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXG4vKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnMgKi9cbi8qIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBpbXBvcnQvbm8tY3ljbGUgKi9cbmltcG9ydCB7IEF0dGFjaG1lbnRGaWxlIH0gZnJvbSAnLi4vLi4vLi4vY29tcG9uZW50cy9tb2xlY3VsZXMvQ2hhdEZvb3Rlci9DaGF0Rm9vdGVyJ1xuaW1wb3J0IHsgbWFwQ09STGFuZyB9IGZyb20gJy4uLy4uLy4uL2xhbmcvdXRpbHMnXG5pbXBvcnQgeyBDaGF0SGlzdG9yeSB9IGZyb20gJy4uLy4uLy4uL3R5cGVzL0NoYXQnXG5pbXBvcnQgeyBBZ2VudEVudGl0eSwgQWdlbnRUeXBlIH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMvYWdlbnQnXG5pbXBvcnQgeyBDb250ZXh0TWVzc2FnZSB9IGZyb20gJy4uLy4uLy4uL3R5cGVzL2NvbnRleHRNZW50aW9uJ1xuaW1wb3J0IHsgZmV0Y2hNYWlhIH0gZnJvbSAnLi4vY2xpZW50J1xuaW1wb3J0IHtcbiAgRklMRV9GT1JNQVRfRVhURU5TSU9OUyxcbiAgRklMRV9QUkVTRU5UQVRJT05fRk9STUFUX0VYVEVOU0lPTlMsXG4gIEZJTEVfTUFJQV9WSVNJT05fRk9STUFUX0VYVEVOU0lPTlMsXG4gIEZJTEVfQVVESU9fRk9STUFUX0VYVEVOU0lPTlMsXG4gIGdldE1heEF0dGFjaG1lbnRTaXplTWIsXG59IGZyb20gJy4uLy4uLy4uL2NvbnN0YW50cy9mb3JtYXRFeHRlbnNpb25zJ1xuXG4vKiogQ29kaWZpY2EgSlNPTiBVVEYtOCBlbiBiYXNlNjQgcGFyYSBoZWFkZXJzIEhUVFAgKGV2aXRhIHByb2JsZW1hcyBjb24gY2FyYWN0ZXJlcyBlc3BlY2lhbGVzKS4gKi9cbmNvbnN0IGVuY29kZUNvbnRleHREYXRhSGVhZGVyID0gKGNvbnRleHREYXRhOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPik6IHN0cmluZyA9PiB7XG4gIGNvbnN0IGpzb24gPSBKU09OLnN0cmluZ2lmeShjb250ZXh0RGF0YSlcbiAgY29uc3QgYnl0ZXMgPSBuZXcgVGV4dEVuY29kZXIoKS5lbmNvZGUoanNvbilcbiAgbGV0IGJpbmFyeSA9ICcnXG4gIGZvciAobGV0IGkgPSAwOyBpIDwgYnl0ZXMubGVuZ3RoOyBpICs9IDEpIHtcbiAgICBiaW5hcnkgKz0gU3RyaW5nLmZyb21DaGFyQ29kZShieXRlc1tpXSEpXG4gIH1cbiAgcmV0dXJuIGJ0b2EoYmluYXJ5KVxufVxuXG50eXBlIE9yY2hlc3RyYXRvclJlcXVlc3QgPSB7XG4gIGlucHV0OiBzdHJpbmdcbiAgcHJvamVjdElkPzogbnVtYmVyXG4gIGxhbmc6IHN0cmluZ1xuICB1c2VySWQ6IHN0cmluZ1xuICBmaXJzdE5hbWU/OiBzdHJpbmdcbiAgbGFzdE5hbWU/OiBzdHJpbmdcbiAgY29tcGFueUlkOiBzdHJpbmdcbiAgY2hhdElkOiBzdHJpbmdcbiAgaGlzdG9yeTogQ2hhdEhpc3RvcnlbXVxuICBtZXNzYWdlSWQ6IHN0cmluZ1xuICBjbGllbnRJZD86IG51bWJlclxuICBjbGllbnROYW1lPzogc3RyaW5nXG4gIGZlZUlkPzogbnVtYmVyXG4gIGFnZW50TmFtZTogc3RyaW5nXG4gIGFnZW50SWQ6IG51bWJlciB8IHN0cmluZ1xuICBpc1dlYlNlYXJjaEFjdGl2ZT86IGJvb2xlYW5cbiAgaXNEZWVwU2VhcmNoQWN0aXZlPzogYm9vbGVhblxuICBpc0F1dG9BcHByb3ZlQWN0aXZlPzogYm9vbGVhblxuICBhdHRhY2htZW50cz86IEF0dGFjaG1lbnRGaWxlW11cbiAgcHJvamVjdE5hbWU/OiBzdHJpbmdcbiAgdGFza0lkPzogbnVtYmVyXG4gIHRhc2tOYW1lPzogc3RyaW5nXG4gIGZhcUlkPzogc3RyaW5nXG4gIGFnZW50U3VnZ2VzdGlvbklkPzogc3RyaW5nXG4gIGZ1YUlkPzogc3RyaW5nXG4gIHNjSWQ/OiBzdHJpbmdcbiAgYWdlbnRFbnRpdHk/OiBBZ2VudEVudGl0eVxuICBhZ2VudFR5cGU/OiBBZ2VudFR5cGVcbiAgLyoqXG4gICAqIEVudGlkYWRlcyBtZW5jaW9uYWRhcyBjb24gYEBgIGVuIEVTRSBtZW5zYWplLiBTZSBpbnllY3RhIGNvbW9cbiAgICogYGNvbnRleHRfbWVzc2FnZWAgZGVudHJvIGRlIGxhIG1ldGFkYXRhIGRlbCBvcmNoZXN0cmF0b3IgeSBzb2xvIHZpdmUgZW5cbiAgICogZXNlIHR1cm5vIChubyBwcm9wYWdhIGFsIGNvbnRleHRvIGdsb2JhbCBuaSBhIGZ1dHVyb3MgbWVuc2FqZXMpLlxuICAgKi9cbiAgY29udGV4dE1lc3NhZ2U/OiBDb250ZXh0TWVzc2FnZVxuICAvKiogUGF5bG9hZCBkZWwgYmFubmVyIChob3N0IENPUikgZW52aWFkbyBjb21vIGhlYWRlciBgWC1Db250ZXh0LURhdGFgIChKU09OIGVuIGJhc2U2NCkuICovXG4gIGNvbnRleHREYXRhPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbn1cblxuY29uc3QgTUFYX0ZJTEVTID0gNVxuY29uc3QgQUxMT1dFRF9GSUxFX0VYVEVOU0lPTlMgPSBbXG4gICcudHh0JyxcbiAgJy5tZCcsXG4gICcuY3N2JyxcbiAgJy5kb2MnLFxuICAnLmRvY3gnLFxuICAnLnBwdCcsXG4gICcucHB0eCcsXG4gICcucG5nJyxcbiAgJy5qcGcnLFxuICAnLmpwZWcnLFxuICAnLnBkZicsXG4gICcueGxzeCcsXG4gICcueGxzJyxcbiAgJy5mbGFjJyxcbiAgJy5tNGEnLFxuICAnLm1wMycsXG4gICcubXA0JyxcbiAgJy5vZ2EnLFxuICAnLm9nZycsXG4gICcud2F2JyxcbiAgJy53ZWJtJyxcbl1cblxuY29uc3QgdmFsaWRhdGVBdHRhY2htZW50cyA9IChhdHRhY2htZW50czogQXR0YWNobWVudEZpbGVbXSk6IHZvaWQgPT4ge1xuICBpZiAoYXR0YWNobWVudHMubGVuZ3RoID4gTUFYX0ZJTEVTKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBNw6F4aW1vICR7TUFYX0ZJTEVTfSBhcmNoaXZvcyBwZXJtaXRpZG9zYClcbiAgfVxuXG4gIGF0dGFjaG1lbnRzLmZvckVhY2goYXR0YWNobWVudCA9PiB7XG4gICAgLy8gVmFsaWRhciBleHRlbnNpw7NuIGRlbCBhcmNoaXZvXG4gICAgY29uc3QgZmlsZUV4dGVuc2lvbiA9IGF0dGFjaG1lbnQubmFtZS50b0xvd2VyQ2FzZSgpLnN1YnN0cmluZyhhdHRhY2htZW50Lm5hbWUubGFzdEluZGV4T2YoJy4nKSlcbiAgICBpZiAoIUFMTE9XRURfRklMRV9FWFRFTlNJT05TLmluY2x1ZGVzKGZpbGVFeHRlbnNpb24pKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBFbCBhcmNoaXZvIFwiJHthdHRhY2htZW50Lm5hbWV9XCIgbm8gdGllbmUgdW4gZm9ybWF0byBzb3BvcnRhZG8uIEZvcm1hdG9zIHBlcm1pdGlkb3M6ICR7QUxMT1dFRF9GSUxFX0VYVEVOU0lPTlMuam9pbignLCAnKX1gXG4gICAgICApXG4gICAgfVxuXG4gICAgLy8gVmFsaWRhciB0YW1hw7FvIGRlbCBhcmNoaXZvIHNlZ8O6biBlbCB0aXBvXG4gICAgY29uc3QgZmlsZVNpemUgPSB0eXBlb2YgYXR0YWNobWVudC5zaXplID09PSAnbnVtYmVyJyA/IGF0dGFjaG1lbnQuc2l6ZSA6IE51bWJlcihhdHRhY2htZW50LnNpemUpXG4gICAgY29uc3QgbWF4U2l6ZU1iID0gZ2V0TWF4QXR0YWNobWVudFNpemVNYihmaWxlRXh0ZW5zaW9uKVxuICAgIGNvbnN0IG1heFNpemVCeXRlcyA9IG1heFNpemVNYiAqIDEwMjQgKiAxMDI0XG5cbiAgICBpZiAoXG4gICAgICAoRklMRV9GT1JNQVRfRVhURU5TSU9OUy5pbmNsdWRlcyhmaWxlRXh0ZW5zaW9uKSB8fFxuICAgICAgICBGSUxFX1BSRVNFTlRBVElPTl9GT1JNQVRfRVhURU5TSU9OUy5pbmNsdWRlcyhmaWxlRXh0ZW5zaW9uKSB8fFxuICAgICAgICBGSUxFX01BSUFfVklTSU9OX0ZPUk1BVF9FWFRFTlNJT05TLmluY2x1ZGVzKGZpbGVFeHRlbnNpb24pIHx8XG4gICAgICAgIEZJTEVfQVVESU9fRk9STUFUX0VYVEVOU0lPTlMuaW5jbHVkZXMoZmlsZUV4dGVuc2lvbikpICYmXG4gICAgICBmaWxlU2l6ZSA+IG1heFNpemVCeXRlc1xuICAgICkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBFbCBhcmNoaXZvIFwiJHthdHRhY2htZW50Lm5hbWV9XCIgZXhjZWRlIGVsIHRhbWHDsW8gbcOheGltbyBkZSAke21heFNpemVNYn1NQmApXG4gICAgfVxuICB9KVxufVxuXG50eXBlIENvbnRpbnVlVGhyZWFkUmVxdWVzdCA9IHtcbiAgdGhyZWFkSWRzOiBzdHJpbmdbXVxuICBzZXNzaW9uSWQ6IHN0cmluZ1xuICBkZWNpc2lvbjogJ2FwcHJvdmUnIHwgJ2VkaXQnIHwgJ3JlamVjdCdcbiAgZWRpdGVkQWN0aW9ucz86IEFycmF5PHsgdG9vbF9uYW1lOiBzdHJpbmc7IGFyZ3M6IFJlY29yZDxzdHJpbmcsIHVua25vd24+IH0+XG4gIGFnZW50SWQ6IG51bWJlciB8IHN0cmluZ1xuICBsYW5nOiBzdHJpbmdcbiAgaXNBdXRvQXBwcm92ZUFjdGl2ZT86IGJvb2xlYW5cbn1cblxuZXhwb3J0IGNvbnN0IGNvbnRpbnVlVGhyZWFkID0gYXN5bmMgKGJvZHk6IENvbnRpbnVlVGhyZWFkUmVxdWVzdCwgc2lnbmFsPzogQWJvcnRTaWduYWwpOiBQcm9taXNlPFJlc3BvbnNlPiA9PiB7XG4gIGNvbnN0IHsgdGhyZWFkSWRzLCBzZXNzaW9uSWQsIGRlY2lzaW9uLCBlZGl0ZWRBY3Rpb25zLCBhZ2VudElkLCBsYW5nLCBpc0F1dG9BcHByb3ZlQWN0aXZlIH0gPSBib2R5XG5cbiAgY29uc3QgcmVxdWVzdEJvZHk6IFJlY29yZDxzdHJpbmcsIHVua25vd24+ID0ge1xuICAgIHRocmVhZF9pZHM6IHRocmVhZElkcyxcbiAgICBzZXNzaW9uX2lkOiBzZXNzaW9uSWQsXG4gICAgZGVjaXNpb24sXG4gIH1cblxuICBpZiAoZGVjaXNpb24gPT09ICdlZGl0JyAmJiBlZGl0ZWRBY3Rpb25zKSB7XG4gICAgcmVxdWVzdEJvZHkuZWRpdGVkX2FjdGlvbnMgPSBlZGl0ZWRBY3Rpb25zXG4gIH1cblxuICByZXR1cm4gZmV0Y2hNYWlhKHtcbiAgICBwYXRoOiAnb3JjaGVzdHJhdG9yL2NvbnRpbnVlLXRocmVhZD9tb2RlPXN0cmVhbScsXG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczoge1xuICAgICAgJ1gtQWdlbnQtSWQnOiBhZ2VudElkLnRvU3RyaW5nKCksXG4gICAgICAnQWNjZXB0LUxhbmd1YWdlJzogbWFwQ09STGFuZyhsYW5nKSxcbiAgICAgICdYLUhJVEwtQXBwcm92YWwtTW9kZSc6IGlzQXV0b0FwcHJvdmVBY3RpdmUgPyAnZnVsbF9hY2Nlc3MnIDogJ2FwcHJvdmVfZWFjaCcsXG4gICAgfSxcbiAgICBib2R5OiByZXF1ZXN0Qm9keSxcbiAgICBzaWduYWwsXG4gIH0pXG59XG5cbmV4cG9ydCBjb25zdCBvcmNoZXN0cmF0b3IgPSBhc3luYyAoYm9keTogT3JjaGVzdHJhdG9yUmVxdWVzdCwgc2lnbmFsPzogQWJvcnRTaWduYWwpOiBQcm9taXNlPFJlc3BvbnNlPiA9PiB7XG4gIGNvbnN0IHtcbiAgICBpbnB1dCxcbiAgICBwcm9qZWN0SWQsXG4gICAgbGFuZyxcbiAgICB1c2VySWQsXG4gICAgZmlyc3ROYW1lLFxuICAgIGxhc3ROYW1lLFxuICAgIGNoYXRJZCxcbiAgICBjbGllbnRJZCxcbiAgICBjbGllbnROYW1lLFxuICAgIGZlZUlkLFxuICAgIGFnZW50SWQsXG4gICAgaXNXZWJTZWFyY2hBY3RpdmUsXG4gICAgaXNEZWVwU2VhcmNoQWN0aXZlLFxuICAgIGlzQXV0b0FwcHJvdmVBY3RpdmUsXG4gICAgYXR0YWNobWVudHMsXG4gICAgcHJvamVjdE5hbWUsXG4gICAgdGFza0lkLFxuICAgIHRhc2tOYW1lLFxuICAgIGZhcUlkLFxuICAgIGFnZW50U3VnZ2VzdGlvbklkLFxuICAgIGZ1YUlkLFxuICAgIHNjSWQsXG4gICAgYWdlbnRFbnRpdHksXG4gICAgYWdlbnRUeXBlLFxuICAgIGNvbnRleHRNZXNzYWdlLFxuICAgIGNvbnRleHREYXRhLFxuICB9ID0gYm9keVxuXG4gIGNvbnN0IGZvcm1EYXRhID0gbmV3IEZvcm1EYXRhKClcbiAgZm9ybURhdGEuYXBwZW5kKCdpbnB1dCcsIGlucHV0KVxuICBmb3JtRGF0YS5hcHBlbmQoJ3Nlc3Npb25faWQnLCBjaGF0SWQpXG5cbiAgaWYgKGF0dGFjaG1lbnRzPy5sZW5ndGgpIHtcbiAgICB2YWxpZGF0ZUF0dGFjaG1lbnRzKGF0dGFjaG1lbnRzKVxuXG4gICAgYXR0YWNobWVudHMuZm9yRWFjaChhdHRhY2htZW50ID0+IHtcbiAgICAgIC8vIFVzYXIgZWwgYXJjaGl2byBvcmlnaW5hbCBzaSBleGlzdGUgKHBhcmEgaW3DoWdlbmVzIHByb2Nlc2FkYXMpLCBzaW5vIHVzYXIgZWwgYXJjaGl2byBub3JtYWxcbiAgICAgIGNvbnN0IGZpbGVUb1NlbmQgPSBhdHRhY2htZW50Lm9yaWdpbmFsRmlsZSB8fCBhdHRhY2htZW50LmZpbGVcbiAgICAgIGZvcm1EYXRhLmFwcGVuZCgnZmlsZXMnLCBmaWxlVG9TZW5kKVxuICAgIH0pXG4gIH1cblxuICBsZXQgbWV0YWRhdGE6IFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4gIGlmIChhZ2VudEVudGl0eSA9PT0gJ2dsb2JhbCcgJiYgYWdlbnRUeXBlICE9PSAnb3JjaGVzdHJhdG9yJykge1xuICAgIG1ldGFkYXRhID0ge31cbiAgfSBlbHNlIHtcbiAgICBtZXRhZGF0YSA9IHtcbiAgICAgIGxhbmc6IG1hcENPUkxhbmcobGFuZyksXG4gICAgICAuLi4odXNlcklkID8geyB1c2VyX2lkOiB1c2VySWQgfSA6IHt9KSxcbiAgICAgIC4uLihmaXJzdE5hbWUgPyB7IGZpcnN0X25hbWU6IGZpcnN0TmFtZSB9IDoge30pLFxuICAgICAgLi4uKGxhc3ROYW1lID8geyBsYXN0X25hbWU6IGxhc3ROYW1lIH0gOiB7fSksXG4gICAgICAuLi4oZmVlSWQgIT0gbnVsbCA/IHsgZmVlX2lkOiBmZWVJZCB9IDoge30pLFxuICAgICAgLi4uKGNsaWVudElkICE9IG51bGwgPyB7IGNsaWVudF9pZDogY2xpZW50SWQgfSA6IHt9KSxcbiAgICAgIC4uLihjbGllbnROYW1lID8geyBjbGllbnRfbmFtZTogY2xpZW50TmFtZSB9IDoge30pLFxuICAgICAgLi4uKHByb2plY3RJZCA/IHsgcHJvamVjdF9pZDogcHJvamVjdElkIH0gOiB7fSksXG4gICAgICAuLi4ocHJvamVjdE5hbWUgPyB7IHByb2plY3RfbmFtZTogcHJvamVjdE5hbWUgfSA6IHt9KSxcbiAgICAgIC4uLih0YXNrSWQgIT0gbnVsbCA/IHsgdGFza19pZDogdGFza0lkIH0gOiB7fSksXG4gICAgICAuLi4odGFza05hbWUgPyB7IHRhc2tfbmFtZTogdGFza05hbWUgfSA6IHt9KSxcbiAgICAgIHN1YmRvbWFpbjogd2luZG93LmxvY2F0aW9uLmhvc3RuYW1lLnNwbGl0KCcuJylbMF0sXG4gICAgICAuLi4oY29udGV4dE1lc3NhZ2UgJiYgT2JqZWN0LmtleXMoY29udGV4dE1lc3NhZ2UpLmxlbmd0aCA+IDAgPyB7IGNvbnRleHRfbWVzc2FnZTogY29udGV4dE1lc3NhZ2UgfSA6IHt9KSxcbiAgICB9XG4gIH1cbiAgZm9ybURhdGEuYXBwZW5kKCdtZXRhZGF0YScsIEpTT04uc3RyaW5naWZ5KG1ldGFkYXRhKSlcblxuICBsZXQgcGF0aCA9ICdvcmNoZXN0cmF0b3I/bW9kZT1zdHJlYW0nXG4gIGlmIChpc1dlYlNlYXJjaEFjdGl2ZSA9PT0gdHJ1ZSkge1xuICAgIHBhdGggKz0gJyZzZWFyY2hfd2ViPXRydWUnXG4gIH1cbiAgaWYgKGlzRGVlcFNlYXJjaEFjdGl2ZSA9PT0gdHJ1ZSkge1xuICAgIHBhdGggKz0gJyZzZWFyY2hfd2ViPXRydWUmZGVwdGg9dHJ1ZSdcbiAgfVxuXG4gIGNvbnN0IGhlYWRlcnM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gICAgJ1gtQWdlbnQtSWQnOiBhZ2VudElkLnRvU3RyaW5nKCksXG4gICAgJ1gtSElUTC1BcHByb3ZhbC1Nb2RlJzogaXNBdXRvQXBwcm92ZUFjdGl2ZSA/ICdmdWxsX2FjY2VzcycgOiAnYXBwcm92ZV9lYWNoJyxcbiAgfVxuXG4gIC8vIFBpbiBkZSBjb250ZXh0byAoUkZDIMKnOS4xKTogZWwgaGVhZGVyIGxlIGRpY2UgYWwgcm91dGVyIGEgcXVpw6luIGRlcml2YXIgYW50ZXMgZGUgcGFyc2VhciBlbCBib2R5LlxuICAvLyBNb25vLWVudGlkYWQgY29uIHByaW9yaWRhZCBwb3IgamVyYXJxdcOtYSAodGFyZWEgPiBwcm95ZWN0byA+IGNsaWVudGUpLlxuICAvLyBTb2xvIGFwbGljYSBhbCBvcnF1ZXN0YWRvciAoTUFJQSk6IGVzIGVsIMO6bmljbyBhZ2VudGUgc2luIHNjb3BlIHByb3BpbywgZG9uZGUgZWwgcGluIGRlZmluZSBsYSBkZXJpdmFjacOzbi5cbiAgLy8gRWwgc2NvcGUgcGVyc2lzdGVudGUgZW4gYG1ldGFkYXRhYCAocHJvamVjdF9pZC9jbGllbnRfaWQvdGFza19pZCkgZXMgbGEgXCJjb2xlY2Npw7NuIGRlIHVub1wiIGFycmF5LXJlYWR5LlxuICBpZiAoYWdlbnRUeXBlID09PSAnb3JjaGVzdHJhdG9yJykge1xuICAgIGxldCBjb250ZXh0SWQgPSAnJ1xuICAgIGlmICh0YXNrSWQgIT0gbnVsbCkgY29udGV4dElkID0gYHRhc2s6JHt0YXNrSWR9YFxuICAgIGVsc2UgaWYgKHByb2plY3RJZCAhPSBudWxsKSBjb250ZXh0SWQgPSBgcHJvamVjdDoke3Byb2plY3RJZH1gXG4gICAgZWxzZSBpZiAoY2xpZW50SWQgIT0gbnVsbCkgY29udGV4dElkID0gYGNsaWVudDoke2NsaWVudElkfWBcbiAgICBpZiAoY29udGV4dElkKSB7XG4gICAgICBoZWFkZXJzWydYLUNvbnRleHQtSWQnXSA9IGNvbnRleHRJZFxuICAgIH1cbiAgfVxuXG4gIGlmIChmYXFJZCkge1xuICAgIGhlYWRlcnNbJ1gtRmFxLUlkJ10gPSBmYXFJZFxuICB9XG5cbiAgaWYgKGFnZW50U3VnZ2VzdGlvbklkICYmIGFnZW50RW50aXR5ID09PSAnZ2xvYmFsJykge1xuICAgIGhlYWRlcnNbJ1gtQWdlbnQtU3VnZ2VzdGlvbiddID0gYWdlbnRTdWdnZXN0aW9uSWRcbiAgfVxuXG4gIGlmIChmdWFJZCkge1xuICAgIGhlYWRlcnNbJ1gtRnVhLUlkJ10gPSBmdWFJZFxuICB9XG5cbiAgaWYgKHNjSWQpIHtcbiAgICBoZWFkZXJzWydYLVNDLUlkJ10gPSBzY0lkXG4gIH1cblxuICBpZiAoY29udGV4dERhdGEgJiYgT2JqZWN0LmtleXMoY29udGV4dERhdGEpLmxlbmd0aCA+IDApIHtcbiAgICBoZWFkZXJzWydYLUNvbnRleHQtRGF0YSddID0gZW5jb2RlQ29udGV4dERhdGFIZWFkZXIoY29udGV4dERhdGEpXG4gIH1cblxuICByZXR1cm4gZmV0Y2hNYWlhKHtcbiAgICBwYXRoLFxuICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgIGhlYWRlcnMsXG4gICAgYm9keTogZm9ybURhdGEsXG4gICAgc2lnbmFsLFxuICB9KVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7OztBQUFBO0FBQ0E7QUFDQTs7QUFFQSxTQUFTQSxVQUFVLFFBQVEscUJBQXFCO0FBSWhELFNBQVNDLFNBQVMsUUFBUSxXQUFXO0FBQ3JDLFNBQ0VDLHNCQUFzQixFQUN0QkMsbUNBQW1DLEVBQ25DQyxrQ0FBa0MsRUFDbENDLDRCQUE0QixFQUM1QkMsc0JBQXNCLFFBQ2pCLHFDQUFxQzs7QUFFNUM7QUFDQSxJQUFNQyx1QkFBdUIsR0FBRyxTQUExQkEsdUJBQXVCQSxDQUFJQyxXQUFvQyxFQUFhO0VBQ2hGLElBQU1DLElBQUksR0FBR0MsSUFBSSxDQUFDQyxTQUFTLENBQUNILFdBQVcsQ0FBQztFQUN4QyxJQUFNSSxLQUFLLEdBQUcsSUFBSUMsV0FBVyxDQUFDLENBQUMsQ0FBQ0MsTUFBTSxDQUFDTCxJQUFJLENBQUM7RUFDNUMsSUFBSU0sTUFBTSxHQUFHLEVBQUU7RUFDZixLQUFLLElBQUlDLENBQUMsR0FBRyxDQUFDLEVBQUVBLENBQUMsR0FBR0osS0FBSyxDQUFDSyxNQUFNLEVBQUVELENBQUMsSUFBSSxDQUFDLEVBQUU7SUFDeENELE1BQU0sSUFBSUcsTUFBTSxDQUFDQyxZQUFZLENBQUNQLEtBQUssQ0FBQ0ksQ0FBQyxDQUFFLENBQUM7RUFDMUM7RUFDQSxP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
|
|
246
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJtYXBDT1JMYW5nIiwiZmV0Y2hNYWlhIiwiRklMRV9GT1JNQVRfRVhURU5TSU9OUyIsIkZJTEVfUFJFU0VOVEFUSU9OX0ZPUk1BVF9FWFRFTlNJT05TIiwiRklMRV9NQUlBX1ZJU0lPTl9GT1JNQVRfRVhURU5TSU9OUyIsIkZJTEVfQVVESU9fRk9STUFUX0VYVEVOU0lPTlMiLCJnZXRNYXhBdHRhY2htZW50U2l6ZU1iIiwiZW5jb2RlQ29udGV4dERhdGFIZWFkZXIiLCJjb250ZXh0RGF0YSIsImpzb24iLCJKU09OIiwic3RyaW5naWZ5IiwiYnl0ZXMiLCJUZXh0RW5jb2RlciIsImVuY29kZSIsImJpbmFyeSIsImkiLCJsZW5ndGgiLCJTdHJpbmciLCJmcm9tQ2hhckNvZGUiLCJidG9hIiwiTUFYX0ZJTEVTIiwiQUxMT1dFRF9GSUxFX0VYVEVOU0lPTlMiLCJ2YWxpZGF0ZUF0dGFjaG1lbnRzIiwiYXR0YWNobWVudHMiLCJFcnJvciIsImNvbmNhdCIsImZvckVhY2giLCJhdHRhY2htZW50IiwiZmlsZUV4dGVuc2lvbiIsIm5hbWUiLCJ0b0xvd2VyQ2FzZSIsInN1YnN0cmluZyIsImxhc3RJbmRleE9mIiwiaW5jbHVkZXMiLCJqb2luIiwiZmlsZVNpemUiLCJzaXplIiwiTnVtYmVyIiwibWF4U2l6ZU1iIiwibWF4U2l6ZUJ5dGVzIiwidG9SZXRyeUxvY2FsZSIsImxhbmciLCJyZXRyeUNvbXBsZXRpb24iLCJfcmVmIiwiX2FzeW5jVG9HZW5lcmF0b3IiLCJfcmVnZW5lcmF0b3JSdW50aW1lIiwibWFyayIsIl9jYWxsZWUiLCJib2R5Iiwic2lnbmFsIiwic2Vzc2lvbklkIiwibWVtb3J5U2Vzc2lvbklkIiwiYWdlbnRJZCIsImlzV2ViU2VhcmNoQWN0aXZlIiwiaXNEZWVwU2VhcmNoQWN0aXZlIiwicHJvamVjdElkIiwiY2xpZW50SWQiLCJ0YXNrSWQiLCJhZ2VudFR5cGUiLCJwYXRoIiwiaGVhZGVycyIsImNvbnRleHRJZCIsInRpbWV6b25lIiwid3JhcCIsIl9jb250ZXh0IiwicHJldiIsIm5leHQiLCJ0b1N0cmluZyIsIk9iamVjdCIsImtleXMiLCJJbnRsIiwiRGF0ZVRpbWVGb3JtYXQiLCJyZXNvbHZlZE9wdGlvbnMiLCJ0aW1lWm9uZSIsImFicnVwdCIsIm1ldGhvZCIsInNlc3Npb25faWQiLCJwYXJlbnRfbWVzc2FnZV91dWlkIiwidHVybl9tZXNzYWdlX3V1aWRzIiwiYXNzaXN0YW50X21lc3NhZ2VfdXVpZCIsIm1lbW9yeV9zZXNzaW9uX2lkIiwicHJvbXB0IiwibG9jYWxlIiwibWV0YWRhdGEiLCJzdG9wIiwiX3giLCJfeDIiLCJhcHBseSIsImFyZ3VtZW50cyIsImNvbnRpbnVlVGhyZWFkIiwiX3JlZjIiLCJfY2FsbGVlMiIsInRocmVhZElkcyIsImRlY2lzaW9uIiwiZWRpdGVkQWN0aW9ucyIsInJlcXVlc3RCb2R5IiwiX2NvbnRleHQyIiwidGhyZWFkX2lkcyIsImVkaXRlZF9hY3Rpb25zIiwiX3gzIiwiX3g0Iiwib3JjaGVzdHJhdG9yIiwiX3JlZjMiLCJfY2FsbGVlMyIsImlucHV0IiwidXNlcklkIiwiZmlyc3ROYW1lIiwibGFzdE5hbWUiLCJjaGF0SWQiLCJjbGllbnROYW1lIiwiZmVlSWQiLCJwcm9qZWN0TmFtZSIsInRhc2tOYW1lIiwiZmFxSWQiLCJhZ2VudFN1Z2dlc3Rpb25JZCIsImZ1YUlkIiwic2NJZCIsImFnZW50RW50aXR5IiwiY29udGV4dE1lc3NhZ2UiLCJmb3JtRGF0YSIsIl9jb250ZXh0MyIsIkZvcm1EYXRhIiwiYXBwZW5kIiwiZmlsZVRvU2VuZCIsIm9yaWdpbmFsRmlsZSIsImZpbGUiLCJfb2JqZWN0U3ByZWFkIiwidXNlcl9pZCIsImZpcnN0X25hbWUiLCJsYXN0X25hbWUiLCJmZWVfaWQiLCJjbGllbnRfaWQiLCJjbGllbnRfbmFtZSIsInByb2plY3RfaWQiLCJwcm9qZWN0X25hbWUiLCJ0YXNrX2lkIiwidGFza19uYW1lIiwic3ViZG9tYWluIiwid2luZG93IiwibG9jYXRpb24iLCJob3N0bmFtZSIsInNwbGl0IiwiY29udGV4dF9tZXNzYWdlIiwiX3g1IiwiX3g2Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3NlcnZpY2VzL21haWEvT3JjaGVzdHJhdG9yL29yY2hlc3RyYXRvci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXG4vKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnMgKi9cbi8qIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBpbXBvcnQvbm8tY3ljbGUgKi9cbmltcG9ydCB7IEF0dGFjaG1lbnRGaWxlIH0gZnJvbSAnLi4vLi4vLi4vY29tcG9uZW50cy9tb2xlY3VsZXMvQ2hhdEZvb3Rlci9DaGF0Rm9vdGVyJ1xuaW1wb3J0IHsgbWFwQ09STGFuZyB9IGZyb20gJy4uLy4uLy4uL2xhbmcvdXRpbHMnXG5pbXBvcnQgeyBDaGF0SGlzdG9yeSB9IGZyb20gJy4uLy4uLy4uL3R5cGVzL0NoYXQnXG5pbXBvcnQgeyBBZ2VudEVudGl0eSwgQWdlbnRUeXBlIH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMvYWdlbnQnXG5pbXBvcnQgeyBDb250ZXh0TWVzc2FnZSB9IGZyb20gJy4uLy4uLy4uL3R5cGVzL2NvbnRleHRNZW50aW9uJ1xuaW1wb3J0IHsgZmV0Y2hNYWlhIH0gZnJvbSAnLi4vY2xpZW50J1xuaW1wb3J0IHtcbiAgRklMRV9GT1JNQVRfRVhURU5TSU9OUyxcbiAgRklMRV9QUkVTRU5UQVRJT05fRk9STUFUX0VYVEVOU0lPTlMsXG4gIEZJTEVfTUFJQV9WSVNJT05fRk9STUFUX0VYVEVOU0lPTlMsXG4gIEZJTEVfQVVESU9fRk9STUFUX0VYVEVOU0lPTlMsXG4gIGdldE1heEF0dGFjaG1lbnRTaXplTWIsXG59IGZyb20gJy4uLy4uLy4uL2NvbnN0YW50cy9mb3JtYXRFeHRlbnNpb25zJ1xuXG4vKiogQ29kaWZpY2EgSlNPTiBVVEYtOCBlbiBiYXNlNjQgcGFyYSBoZWFkZXJzIEhUVFAgKGV2aXRhIHByb2JsZW1hcyBjb24gY2FyYWN0ZXJlcyBlc3BlY2lhbGVzKS4gKi9cbmNvbnN0IGVuY29kZUNvbnRleHREYXRhSGVhZGVyID0gKGNvbnRleHREYXRhOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPik6IHN0cmluZyA9PiB7XG4gIGNvbnN0IGpzb24gPSBKU09OLnN0cmluZ2lmeShjb250ZXh0RGF0YSlcbiAgY29uc3QgYnl0ZXMgPSBuZXcgVGV4dEVuY29kZXIoKS5lbmNvZGUoanNvbilcbiAgbGV0IGJpbmFyeSA9ICcnXG4gIGZvciAobGV0IGkgPSAwOyBpIDwgYnl0ZXMubGVuZ3RoOyBpICs9IDEpIHtcbiAgICBiaW5hcnkgKz0gU3RyaW5nLmZyb21DaGFyQ29kZShieXRlc1tpXSEpXG4gIH1cbiAgcmV0dXJuIGJ0b2EoYmluYXJ5KVxufVxuXG50eXBlIE9yY2hlc3RyYXRvclJlcXVlc3QgPSB7XG4gIGlucHV0OiBzdHJpbmdcbiAgcHJvamVjdElkPzogbnVtYmVyXG4gIGxhbmc6IHN0cmluZ1xuICB1c2VySWQ6IHN0cmluZ1xuICBmaXJzdE5hbWU/OiBzdHJpbmdcbiAgbGFzdE5hbWU/OiBzdHJpbmdcbiAgY29tcGFueUlkOiBzdHJpbmdcbiAgY2hhdElkOiBzdHJpbmdcbiAgaGlzdG9yeTogQ2hhdEhpc3RvcnlbXVxuICBtZXNzYWdlSWQ6IHN0cmluZ1xuICBjbGllbnRJZD86IG51bWJlclxuICBjbGllbnROYW1lPzogc3RyaW5nXG4gIGZlZUlkPzogbnVtYmVyXG4gIGFnZW50TmFtZTogc3RyaW5nXG4gIGFnZW50SWQ6IG51bWJlciB8IHN0cmluZ1xuICBpc1dlYlNlYXJjaEFjdGl2ZT86IGJvb2xlYW5cbiAgaXNEZWVwU2VhcmNoQWN0aXZlPzogYm9vbGVhblxuICBhdHRhY2htZW50cz86IEF0dGFjaG1lbnRGaWxlW11cbiAgcHJvamVjdE5hbWU/OiBzdHJpbmdcbiAgdGFza0lkPzogbnVtYmVyXG4gIHRhc2tOYW1lPzogc3RyaW5nXG4gIGZhcUlkPzogc3RyaW5nXG4gIGFnZW50U3VnZ2VzdGlvbklkPzogc3RyaW5nXG4gIGZ1YUlkPzogc3RyaW5nXG4gIHNjSWQ/OiBzdHJpbmdcbiAgYWdlbnRFbnRpdHk/OiBBZ2VudEVudGl0eVxuICBhZ2VudFR5cGU/OiBBZ2VudFR5cGVcbiAgLyoqXG4gICAqIEVudGlkYWRlcyBtZW5jaW9uYWRhcyBjb24gYEBgIGVuIEVTRSBtZW5zYWplLiBTZSBpbnllY3RhIGNvbW9cbiAgICogYGNvbnRleHRfbWVzc2FnZWAgZGVudHJvIGRlIGxhIG1ldGFkYXRhIGRlbCBvcmNoZXN0cmF0b3IgeSBzb2xvIHZpdmUgZW5cbiAgICogZXNlIHR1cm5vIChubyBwcm9wYWdhIGFsIGNvbnRleHRvIGdsb2JhbCBuaSBhIGZ1dHVyb3MgbWVuc2FqZXMpLlxuICAgKi9cbiAgY29udGV4dE1lc3NhZ2U/OiBDb250ZXh0TWVzc2FnZVxuICAvKiogUGF5bG9hZCBkZWwgYmFubmVyIChob3N0IENPUikgZW52aWFkbyBjb21vIGhlYWRlciBgWC1Db250ZXh0LURhdGFgIChKU09OIGVuIGJhc2U2NCkuICovXG4gIGNvbnRleHREYXRhPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbn1cblxuY29uc3QgTUFYX0ZJTEVTID0gNVxuY29uc3QgQUxMT1dFRF9GSUxFX0VYVEVOU0lPTlMgPSBbXG4gICcudHh0JyxcbiAgJy5tZCcsXG4gICcuY3N2JyxcbiAgJy5kb2MnLFxuICAnLmRvY3gnLFxuICAnLnBwdCcsXG4gICcucHB0eCcsXG4gICcucG5nJyxcbiAgJy5qcGcnLFxuICAnLmpwZWcnLFxuICAnLnBkZicsXG4gICcueGxzeCcsXG4gICcueGxzJyxcbiAgJy5mbGFjJyxcbiAgJy5tNGEnLFxuICAnLm1wMycsXG4gICcubXA0JyxcbiAgJy5vZ2EnLFxuICAnLm9nZycsXG4gICcud2F2JyxcbiAgJy53ZWJtJyxcbl1cblxuY29uc3QgdmFsaWRhdGVBdHRhY2htZW50cyA9IChhdHRhY2htZW50czogQXR0YWNobWVudEZpbGVbXSk6IHZvaWQgPT4ge1xuICBpZiAoYXR0YWNobWVudHMubGVuZ3RoID4gTUFYX0ZJTEVTKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBNw6F4aW1vICR7TUFYX0ZJTEVTfSBhcmNoaXZvcyBwZXJtaXRpZG9zYClcbiAgfVxuXG4gIGF0dGFjaG1lbnRzLmZvckVhY2goYXR0YWNobWVudCA9PiB7XG4gICAgLy8gVmFsaWRhciBleHRlbnNpw7NuIGRlbCBhcmNoaXZvXG4gICAgY29uc3QgZmlsZUV4dGVuc2lvbiA9IGF0dGFjaG1lbnQubmFtZS50b0xvd2VyQ2FzZSgpLnN1YnN0cmluZyhhdHRhY2htZW50Lm5hbWUubGFzdEluZGV4T2YoJy4nKSlcbiAgICBpZiAoIUFMTE9XRURfRklMRV9FWFRFTlNJT05TLmluY2x1ZGVzKGZpbGVFeHRlbnNpb24pKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBFbCBhcmNoaXZvIFwiJHthdHRhY2htZW50Lm5hbWV9XCIgbm8gdGllbmUgdW4gZm9ybWF0byBzb3BvcnRhZG8uIEZvcm1hdG9zIHBlcm1pdGlkb3M6ICR7QUxMT1dFRF9GSUxFX0VYVEVOU0lPTlMuam9pbignLCAnKX1gXG4gICAgICApXG4gICAgfVxuXG4gICAgLy8gVmFsaWRhciB0YW1hw7FvIGRlbCBhcmNoaXZvIHNlZ8O6biBlbCB0aXBvXG4gICAgY29uc3QgZmlsZVNpemUgPSB0eXBlb2YgYXR0YWNobWVudC5zaXplID09PSAnbnVtYmVyJyA/IGF0dGFjaG1lbnQuc2l6ZSA6IE51bWJlcihhdHRhY2htZW50LnNpemUpXG4gICAgY29uc3QgbWF4U2l6ZU1iID0gZ2V0TWF4QXR0YWNobWVudFNpemVNYihmaWxlRXh0ZW5zaW9uKVxuICAgIGNvbnN0IG1heFNpemVCeXRlcyA9IG1heFNpemVNYiAqIDEwMjQgKiAxMDI0XG5cbiAgICBpZiAoXG4gICAgICAoRklMRV9GT1JNQVRfRVhURU5TSU9OUy5pbmNsdWRlcyhmaWxlRXh0ZW5zaW9uKSB8fFxuICAgICAgICBGSUxFX1BSRVNFTlRBVElPTl9GT1JNQVRfRVhURU5TSU9OUy5pbmNsdWRlcyhmaWxlRXh0ZW5zaW9uKSB8fFxuICAgICAgICBGSUxFX01BSUFfVklTSU9OX0ZPUk1BVF9FWFRFTlNJT05TLmluY2x1ZGVzKGZpbGVFeHRlbnNpb24pIHx8XG4gICAgICAgIEZJTEVfQVVESU9fRk9STUFUX0VYVEVOU0lPTlMuaW5jbHVkZXMoZmlsZUV4dGVuc2lvbikpICYmXG4gICAgICBmaWxlU2l6ZSA+IG1heFNpemVCeXRlc1xuICAgICkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBFbCBhcmNoaXZvIFwiJHthdHRhY2htZW50Lm5hbWV9XCIgZXhjZWRlIGVsIHRhbWHDsW8gbcOheGltbyBkZSAke21heFNpemVNYn1NQmApXG4gICAgfVxuICB9KVxufVxuXG50eXBlIENvbnRpbnVlVGhyZWFkUmVxdWVzdCA9IHtcbiAgdGhyZWFkSWRzOiBzdHJpbmdbXVxuICBzZXNzaW9uSWQ6IHN0cmluZ1xuICBkZWNpc2lvbjogJ2FwcHJvdmUnIHwgJ2VkaXQnIHwgJ3JlamVjdCdcbiAgZWRpdGVkQWN0aW9ucz86IEFycmF5PHsgdG9vbF9uYW1lOiBzdHJpbmc7IGFyZ3M6IFJlY29yZDxzdHJpbmcsIHVua25vd24+IH0+XG4gIGFnZW50SWQ6IG51bWJlciB8IHN0cmluZ1xuICBsYW5nOiBzdHJpbmdcbn1cblxuY29uc3QgdG9SZXRyeUxvY2FsZSA9IChsYW5nOiBzdHJpbmcpOiBzdHJpbmcgPT4ge1xuICBpZiAobGFuZyA9PT0gJ2JyJykgcmV0dXJuICdwdC1CUidcbiAgaWYgKGxhbmcgPT09ICdlcycpIHJldHVybiAnZXMtQVInXG4gIGlmIChsYW5nID09PSAnZnInKSByZXR1cm4gJ2ZyLUZSJ1xuICByZXR1cm4gJ2VuLVVTJ1xufVxuXG5leHBvcnQgdHlwZSBSZXRyeUNvbXBsZXRpb25SZXF1ZXN0ID0ge1xuICBzZXNzaW9uSWQ6IHN0cmluZ1xuICBtZW1vcnlTZXNzaW9uSWQ6IHN0cmluZ1xuICBhZ2VudElkOiBudW1iZXIgfCBzdHJpbmdcbiAgbGFuZzogc3RyaW5nXG4gIGlzV2ViU2VhcmNoQWN0aXZlPzogYm9vbGVhblxuICBpc0RlZXBTZWFyY2hBY3RpdmU/OiBib29sZWFuXG4gIHByb2plY3RJZD86IG51bWJlclxuICBjbGllbnRJZD86IG51bWJlclxuICB0YXNrSWQ/OiBudW1iZXJcbiAgYWdlbnRUeXBlPzogQWdlbnRUeXBlXG4gIGNvbnRleHREYXRhPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbn1cblxuZXhwb3J0IGNvbnN0IHJldHJ5Q29tcGxldGlvbiA9IGFzeW5jIChib2R5OiBSZXRyeUNvbXBsZXRpb25SZXF1ZXN0LCBzaWduYWw/OiBBYm9ydFNpZ25hbCk6IFByb21pc2U8UmVzcG9uc2U+ID0+IHtcbiAgY29uc3Qge1xuICAgIHNlc3Npb25JZCxcbiAgICBtZW1vcnlTZXNzaW9uSWQsXG4gICAgYWdlbnRJZCxcbiAgICBsYW5nLFxuICAgIGlzV2ViU2VhcmNoQWN0aXZlLFxuICAgIGlzRGVlcFNlYXJjaEFjdGl2ZSxcbiAgICBwcm9qZWN0SWQsXG4gICAgY2xpZW50SWQsXG4gICAgdGFza0lkLFxuICAgIGFnZW50VHlwZSxcbiAgICBjb250ZXh0RGF0YSxcbiAgfSA9IGJvZHlcblxuICBsZXQgcGF0aCA9ICdvcmNoZXN0cmF0b3IvcmV0cnlfY29tcGxldGlvbj9tb2RlPXN0cmVhbSdcbiAgaWYgKGlzV2ViU2VhcmNoQWN0aXZlID09PSB0cnVlKSB7XG4gICAgcGF0aCArPSAnJnNlYXJjaF93ZWI9dHJ1ZSdcbiAgfVxuICBpZiAoaXNEZWVwU2VhcmNoQWN0aXZlID09PSB0cnVlKSB7XG4gICAgcGF0aCArPSAnJnNlYXJjaF93ZWI9dHJ1ZSZkZXB0aD10cnVlJ1xuICB9XG5cbiAgY29uc3QgaGVhZGVyczogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgICAnWC1BZ2VudC1JZCc6IGFnZW50SWQudG9TdHJpbmcoKSxcbiAgICAnQWNjZXB0LUxhbmd1YWdlJzogbWFwQ09STGFuZyhsYW5nKSxcbiAgfVxuXG4gIGlmIChhZ2VudFR5cGUgPT09ICdvcmNoZXN0cmF0b3InKSB7XG4gICAgbGV0IGNvbnRleHRJZCA9ICcnXG4gICAgaWYgKHRhc2tJZCAhPSBudWxsKSBjb250ZXh0SWQgPSBgdGFzazoke3Rhc2tJZH1gXG4gICAgZWxzZSBpZiAocHJvamVjdElkICE9IG51bGwpIGNvbnRleHRJZCA9IGBwcm9qZWN0OiR7cHJvamVjdElkfWBcbiAgICBlbHNlIGlmIChjbGllbnRJZCAhPSBudWxsKSBjb250ZXh0SWQgPSBgY2xpZW50OiR7Y2xpZW50SWR9YFxuICAgIGlmIChjb250ZXh0SWQpIHtcbiAgICAgIGhlYWRlcnNbJ1gtQ29udGV4dC1JZCddID0gY29udGV4dElkXG4gICAgfVxuICB9XG5cbiAgaWYgKGNvbnRleHREYXRhICYmIE9iamVjdC5rZXlzKGNvbnRleHREYXRhKS5sZW5ndGggPiAwKSB7XG4gICAgaGVhZGVyc1snWC1Db250ZXh0LURhdGEnXSA9IGVuY29kZUNvbnRleHREYXRhSGVhZGVyKGNvbnRleHREYXRhKVxuICB9XG5cbiAgY29uc3QgdGltZXpvbmUgPVxuICAgIHR5cGVvZiBJbnRsICE9PSAndW5kZWZpbmVkJyA/IEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSA6ICdBbWVyaWNhL0J1ZW5vc19BaXJlcydcblxuICByZXR1cm4gZmV0Y2hNYWlhKHtcbiAgICBwYXRoLFxuICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgIGhlYWRlcnMsXG4gICAgYm9keToge1xuICAgICAgc2Vzc2lvbl9pZDogc2Vzc2lvbklkLFxuICAgICAgcGFyZW50X21lc3NhZ2VfdXVpZDogbWVtb3J5U2Vzc2lvbklkLFxuICAgICAgdHVybl9tZXNzYWdlX3V1aWRzOiB7IGFzc2lzdGFudF9tZXNzYWdlX3V1aWQ6IG1lbW9yeVNlc3Npb25JZCB9LFxuICAgICAgbWVtb3J5X3Nlc3Npb25faWQ6IG1lbW9yeVNlc3Npb25JZCxcbiAgICAgIHByb21wdDogJycsXG4gICAgICBsb2NhbGU6IHRvUmV0cnlMb2NhbGUobGFuZyksXG4gICAgICB0aW1lem9uZSxcbiAgICAgIG1ldGFkYXRhOiB7fSxcbiAgICB9LFxuICAgIHNpZ25hbCxcbiAgfSlcbn1cblxuZXhwb3J0IGNvbnN0IGNvbnRpbnVlVGhyZWFkID0gYXN5bmMgKGJvZHk6IENvbnRpbnVlVGhyZWFkUmVxdWVzdCwgc2lnbmFsPzogQWJvcnRTaWduYWwpOiBQcm9taXNlPFJlc3BvbnNlPiA9PiB7XG4gIGNvbnN0IHsgdGhyZWFkSWRzLCBzZXNzaW9uSWQsIGRlY2lzaW9uLCBlZGl0ZWRBY3Rpb25zLCBhZ2VudElkLCBsYW5nIH0gPSBib2R5XG5cbiAgY29uc3QgcmVxdWVzdEJvZHk6IFJlY29yZDxzdHJpbmcsIHVua25vd24+ID0ge1xuICAgIHRocmVhZF9pZHM6IHRocmVhZElkcyxcbiAgICBzZXNzaW9uX2lkOiBzZXNzaW9uSWQsXG4gICAgZGVjaXNpb24sXG4gIH1cblxuICBpZiAoZGVjaXNpb24gPT09ICdlZGl0JyAmJiBlZGl0ZWRBY3Rpb25zKSB7XG4gICAgcmVxdWVzdEJvZHkuZWRpdGVkX2FjdGlvbnMgPSBlZGl0ZWRBY3Rpb25zXG4gIH1cblxuICByZXR1cm4gZmV0Y2hNYWlhKHtcbiAgICBwYXRoOiAnb3JjaGVzdHJhdG9yL2NvbnRpbnVlLXRocmVhZD9tb2RlPXN0cmVhbScsXG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczoge1xuICAgICAgJ1gtQWdlbnQtSWQnOiBhZ2VudElkLnRvU3RyaW5nKCksXG4gICAgICAnQWNjZXB0LUxhbmd1YWdlJzogbWFwQ09STGFuZyhsYW5nKSxcbiAgICB9LFxuICAgIGJvZHk6IHJlcXVlc3RCb2R5LFxuICAgIHNpZ25hbCxcbiAgfSlcbn1cblxuZXhwb3J0IGNvbnN0IG9yY2hlc3RyYXRvciA9IGFzeW5jIChib2R5OiBPcmNoZXN0cmF0b3JSZXF1ZXN0LCBzaWduYWw/OiBBYm9ydFNpZ25hbCk6IFByb21pc2U8UmVzcG9uc2U+ID0+IHtcbiAgY29uc3Qge1xuICAgIGlucHV0LFxuICAgIHByb2plY3RJZCxcbiAgICBsYW5nLFxuICAgIHVzZXJJZCxcbiAgICBmaXJzdE5hbWUsXG4gICAgbGFzdE5hbWUsXG4gICAgY2hhdElkLFxuICAgIGNsaWVudElkLFxuICAgIGNsaWVudE5hbWUsXG4gICAgZmVlSWQsXG4gICAgYWdlbnRJZCxcbiAgICBpc1dlYlNlYXJjaEFjdGl2ZSxcbiAgICBpc0RlZXBTZWFyY2hBY3RpdmUsXG4gICAgYXR0YWNobWVudHMsXG4gICAgcHJvamVjdE5hbWUsXG4gICAgdGFza0lkLFxuICAgIHRhc2tOYW1lLFxuICAgIGZhcUlkLFxuICAgIGFnZW50U3VnZ2VzdGlvbklkLFxuICAgIGZ1YUlkLFxuICAgIHNjSWQsXG4gICAgYWdlbnRFbnRpdHksXG4gICAgYWdlbnRUeXBlLFxuICAgIGNvbnRleHRNZXNzYWdlLFxuICAgIGNvbnRleHREYXRhLFxuICB9ID0gYm9keVxuXG4gIGNvbnN0IGZvcm1EYXRhID0gbmV3IEZvcm1EYXRhKClcbiAgZm9ybURhdGEuYXBwZW5kKCdpbnB1dCcsIGlucHV0KVxuICBmb3JtRGF0YS5hcHBlbmQoJ3Nlc3Npb25faWQnLCBjaGF0SWQpXG5cbiAgaWYgKGF0dGFjaG1lbnRzPy5sZW5ndGgpIHtcbiAgICB2YWxpZGF0ZUF0dGFjaG1lbnRzKGF0dGFjaG1lbnRzKVxuXG4gICAgYXR0YWNobWVudHMuZm9yRWFjaChhdHRhY2htZW50ID0+IHtcbiAgICAgIC8vIFVzYXIgZWwgYXJjaGl2byBvcmlnaW5hbCBzaSBleGlzdGUgKHBhcmEgaW3DoWdlbmVzIHByb2Nlc2FkYXMpLCBzaW5vIHVzYXIgZWwgYXJjaGl2byBub3JtYWxcbiAgICAgIGNvbnN0IGZpbGVUb1NlbmQgPSBhdHRhY2htZW50Lm9yaWdpbmFsRmlsZSB8fCBhdHRhY2htZW50LmZpbGVcbiAgICAgIGZvcm1EYXRhLmFwcGVuZCgnZmlsZXMnLCBmaWxlVG9TZW5kKVxuICAgIH0pXG4gIH1cblxuICBsZXQgbWV0YWRhdGE6IFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4gIGlmIChhZ2VudEVudGl0eSA9PT0gJ2dsb2JhbCcgJiYgYWdlbnRUeXBlICE9PSAnb3JjaGVzdHJhdG9yJykge1xuICAgIG1ldGFkYXRhID0ge31cbiAgfSBlbHNlIHtcbiAgICBtZXRhZGF0YSA9IHtcbiAgICAgIGxhbmc6IG1hcENPUkxhbmcobGFuZyksXG4gICAgICAuLi4odXNlcklkID8geyB1c2VyX2lkOiB1c2VySWQgfSA6IHt9KSxcbiAgICAgIC4uLihmaXJzdE5hbWUgPyB7IGZpcnN0X25hbWU6IGZpcnN0TmFtZSB9IDoge30pLFxuICAgICAgLi4uKGxhc3ROYW1lID8geyBsYXN0X25hbWU6IGxhc3ROYW1lIH0gOiB7fSksXG4gICAgICAuLi4oZmVlSWQgIT0gbnVsbCA/IHsgZmVlX2lkOiBmZWVJZCB9IDoge30pLFxuICAgICAgLi4uKGNsaWVudElkICE9IG51bGwgPyB7IGNsaWVudF9pZDogY2xpZW50SWQgfSA6IHt9KSxcbiAgICAgIC4uLihjbGllbnROYW1lID8geyBjbGllbnRfbmFtZTogY2xpZW50TmFtZSB9IDoge30pLFxuICAgICAgLi4uKHByb2plY3RJZCA/IHsgcHJvamVjdF9pZDogcHJvamVjdElkIH0gOiB7fSksXG4gICAgICAuLi4ocHJvamVjdE5hbWUgPyB7IHByb2plY3RfbmFtZTogcHJvamVjdE5hbWUgfSA6IHt9KSxcbiAgICAgIC4uLih0YXNrSWQgIT0gbnVsbCA/IHsgdGFza19pZDogdGFza0lkIH0gOiB7fSksXG4gICAgICAuLi4odGFza05hbWUgPyB7IHRhc2tfbmFtZTogdGFza05hbWUgfSA6IHt9KSxcbiAgICAgIHN1YmRvbWFpbjogd2luZG93LmxvY2F0aW9uLmhvc3RuYW1lLnNwbGl0KCcuJylbMF0sXG4gICAgICAuLi4oY29udGV4dE1lc3NhZ2UgJiYgT2JqZWN0LmtleXMoY29udGV4dE1lc3NhZ2UpLmxlbmd0aCA+IDAgPyB7IGNvbnRleHRfbWVzc2FnZTogY29udGV4dE1lc3NhZ2UgfSA6IHt9KSxcbiAgICB9XG4gIH1cbiAgZm9ybURhdGEuYXBwZW5kKCdtZXRhZGF0YScsIEpTT04uc3RyaW5naWZ5KG1ldGFkYXRhKSlcblxuICBsZXQgcGF0aCA9ICdvcmNoZXN0cmF0b3I/bW9kZT1zdHJlYW0nXG4gIGlmIChpc1dlYlNlYXJjaEFjdGl2ZSA9PT0gdHJ1ZSkge1xuICAgIHBhdGggKz0gJyZzZWFyY2hfd2ViPXRydWUnXG4gIH1cbiAgaWYgKGlzRGVlcFNlYXJjaEFjdGl2ZSA9PT0gdHJ1ZSkge1xuICAgIHBhdGggKz0gJyZzZWFyY2hfd2ViPXRydWUmZGVwdGg9dHJ1ZSdcbiAgfVxuXG4gIGNvbnN0IGhlYWRlcnM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gICAgJ1gtQWdlbnQtSWQnOiBhZ2VudElkLnRvU3RyaW5nKCksXG4gIH1cblxuICAvLyBQaW4gZGUgY29udGV4dG8gKFJGQyDCpzkuMSk6IGVsIGhlYWRlciBsZSBkaWNlIGFsIHJvdXRlciBhIHF1acOpbiBkZXJpdmFyIGFudGVzIGRlIHBhcnNlYXIgZWwgYm9keS5cbiAgLy8gTW9uby1lbnRpZGFkIGNvbiBwcmlvcmlkYWQgcG9yIGplcmFycXXDrWEgKHRhcmVhID4gcHJveWVjdG8gPiBjbGllbnRlKS5cbiAgLy8gU29sbyBhcGxpY2EgYWwgb3JxdWVzdGFkb3IgKE1BSUEpOiBlcyBlbCDDum5pY28gYWdlbnRlIHNpbiBzY29wZSBwcm9waW8sIGRvbmRlIGVsIHBpbiBkZWZpbmUgbGEgZGVyaXZhY2nDs24uXG4gIC8vIEVsIHNjb3BlIHBlcnNpc3RlbnRlIGVuIGBtZXRhZGF0YWAgKHByb2plY3RfaWQvY2xpZW50X2lkL3Rhc2tfaWQpIGVzIGxhIFwiY29sZWNjacOzbiBkZSB1bm9cIiBhcnJheS1yZWFkeS5cbiAgaWYgKGFnZW50VHlwZSA9PT0gJ29yY2hlc3RyYXRvcicpIHtcbiAgICBsZXQgY29udGV4dElkID0gJydcbiAgICBpZiAodGFza0lkICE9IG51bGwpIGNvbnRleHRJZCA9IGB0YXNrOiR7dGFza0lkfWBcbiAgICBlbHNlIGlmIChwcm9qZWN0SWQgIT0gbnVsbCkgY29udGV4dElkID0gYHByb2plY3Q6JHtwcm9qZWN0SWR9YFxuICAgIGVsc2UgaWYgKGNsaWVudElkICE9IG51bGwpIGNvbnRleHRJZCA9IGBjbGllbnQ6JHtjbGllbnRJZH1gXG4gICAgaWYgKGNvbnRleHRJZCkge1xuICAgICAgaGVhZGVyc1snWC1Db250ZXh0LUlkJ10gPSBjb250ZXh0SWRcbiAgICB9XG4gIH1cblxuICBpZiAoZmFxSWQpIHtcbiAgICBoZWFkZXJzWydYLUZhcS1JZCddID0gZmFxSWRcbiAgfVxuXG4gIGlmIChhZ2VudFN1Z2dlc3Rpb25JZCAmJiBhZ2VudEVudGl0eSA9PT0gJ2dsb2JhbCcpIHtcbiAgICBoZWFkZXJzWydYLUFnZW50LVN1Z2dlc3Rpb24nXSA9IGFnZW50U3VnZ2VzdGlvbklkXG4gIH1cblxuICBpZiAoZnVhSWQpIHtcbiAgICBoZWFkZXJzWydYLUZ1YS1JZCddID0gZnVhSWRcbiAgfVxuXG4gIGlmIChzY0lkKSB7XG4gICAgaGVhZGVyc1snWC1TQy1JZCddID0gc2NJZFxuICB9XG5cbiAgaWYgKGNvbnRleHREYXRhICYmIE9iamVjdC5rZXlzKGNvbnRleHREYXRhKS5sZW5ndGggPiAwKSB7XG4gICAgaGVhZGVyc1snWC1Db250ZXh0LURhdGEnXSA9IGVuY29kZUNvbnRleHREYXRhSGVhZGVyKGNvbnRleHREYXRhKVxuICB9XG5cbiAgcmV0dXJuIGZldGNoTWFpYSh7XG4gICAgcGF0aCxcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBoZWFkZXJzLFxuICAgIGJvZHk6IGZvcm1EYXRhLFxuICAgIHNpZ25hbCxcbiAgfSlcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQTtBQUNBO0FBQ0E7O0FBRUEsU0FBU0EsVUFBVSxRQUFRLHFCQUFxQjtBQUloRCxTQUFTQyxTQUFTLFFBQVEsV0FBVztBQUNyQyxTQUNFQyxzQkFBc0IsRUFDdEJDLG1DQUFtQyxFQUNuQ0Msa0NBQWtDLEVBQ2xDQyw0QkFBNEIsRUFDNUJDLHNCQUFzQixRQUNqQixxQ0FBcUM7O0FBRTVDO0FBQ0EsSUFBTUMsdUJBQXVCLEdBQUcs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
|
|
@@ -36,4 +36,4 @@ export var createSkill = /*#__PURE__*/function () {
|
|
|
36
36
|
return _ref.apply(this, arguments);
|
|
37
37
|
};
|
|
38
38
|
}();
|
|
39
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
39
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJmZXRjaE1haWEiLCJjcmVhdGVTa2lsbCIsIl9yZWYiLCJfYXN5bmNUb0dlbmVyYXRvciIsIl9yZWdlbmVyYXRvclJ1bnRpbWUiLCJtYXJrIiwiX2NhbGxlZSIsInNraWxsIiwicmVzcG9uc2UiLCJkYXRhIiwid3JhcCIsIl9jb250ZXh0IiwicHJldiIsIm5leHQiLCJwYXRoIiwibWV0aG9kIiwiYm9keSIsInNlbnQiLCJvayIsIkVycm9yIiwianNvbiIsImFicnVwdCIsInN0b3AiLCJfeCIsImFwcGx5IiwiYXJndW1lbnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3NlcnZpY2VzL21haWEvU2tpbGxzL2NyZWF0ZVNraWxsLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZldGNoTWFpYSB9IGZyb20gJy4uL2NsaWVudCdcbmltcG9ydCB7IFNraWxsLCBTa2lsbEFjY2Vzc1R5cGUgfSBmcm9tICcuLi8uLi8uLi90eXBlcy9za2lsbCdcblxuZXhwb3J0IHR5cGUgU2tpbGxDcmVhdGVSZXF1ZXN0ID0ge1xuICBuYW1lOiBzdHJpbmdcbiAgZGVzY3JpcHRpb246IHN0cmluZ1xuICBjb250ZW50OiBzdHJpbmdcbiAgYWNjZXNzX3R5cGU/OiBTa2lsbEFjY2Vzc1R5cGVcbn1cblxuZXhwb3J0IGNvbnN0IGNyZWF0ZVNraWxsID0gYXN5bmMgKHNraWxsOiBTa2lsbENyZWF0ZVJlcXVlc3QpOiBQcm9taXNlPFNraWxsPiA9PiB7XG4gIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2hNYWlhKHtcbiAgICBwYXRoOiAnc2tpbGxzJyxcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBib2R5OiBza2lsbCxcbiAgfSlcblxuICBpZiAoIXJlc3BvbnNlLm9rKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gY3JlYXRlIHNraWxsJylcbiAgfVxuXG4gIGNvbnN0IGRhdGEgPSBhd2FpdCByZXNwb25zZS5qc29uKClcblxuICByZXR1cm4gZGF0YVxufVxuIl0sIm1hcHBpbmdzIjoiOztBQUFBLFNBQVNBLFNBQVMsUUFBUSxXQUFXO0FBVXJDLE9BQU8sSUFBTUMsV0FBVztFQUFBLElBQUFDLElBQUEsR0FBQUMsaUJBQUEsY0FBQUMsbUJBQUEsQ0FBQUMsSUFBQSxDQUFHLFNBQUFDLFFBQU9DLEtBQXlCO0lBQUEsSUFBQUMsUUFBQSxFQUFBQyxJQUFBO0lBQUEsT0FBQUwsbUJBQUEsQ0FBQU0sSUFBQSxXQUFBQyxRQUFBO01BQUEsa0JBQUFBLFFBQUEsQ0FBQUMsSUFBQSxHQUFBRCxRQUFBLENBQUFFLElBQUE7UUFBQTtVQUFBRixRQUFBLENBQUFFLElBQUE7VUFBQSxPQUNsQ2IsU0FBUyxDQUFDO1lBQy9CYyxJQUFJLEVBQUUsUUFBUTtZQUNkQyxNQUFNLEVBQUUsTUFBTTtZQUNkQyxJQUFJLEVBQUVUO1VBQ1IsQ0FBQyxDQUFDO1FBQUE7VUFKSUMsUUFBUSxHQUFBRyxRQUFBLENBQUFNLElBQUE7VUFBQSxJQU1UVCxRQUFRLENBQUNVLEVBQUU7WUFBQVAsUUFBQSxDQUFBRSxJQUFBO1lBQUE7VUFBQTtVQUFBLE1BQ1IsSUFBSU0sS0FBSyxDQUFDLHdCQUF3QixDQUFDO1FBQUE7VUFBQVIsUUFBQSxDQUFBRSxJQUFBO1VBQUEsT0FHeEJMLFFBQVEsQ0FBQ1ksSUFBSSxDQUFDLENBQUM7UUFBQTtVQUE1QlgsSUFBSSxHQUFBRSxRQUFBLENBQUFNLElBQUE7VUFBQSxPQUFBTixRQUFBLENBQUFVLE1BQUEsV0FFSFosSUFBSTtRQUFBO1FBQUE7VUFBQSxPQUFBRSxRQUFBLENBQUFXLElBQUE7TUFBQTtJQUFBLEdBQUFoQixPQUFBO0VBQUEsQ0FDWjtFQUFBLGdCQWRZTCxXQUFXQSxDQUFBc0IsRUFBQTtJQUFBLE9BQUFyQixJQUFBLENBQUFzQixLQUFBLE9BQUFDLFNBQUE7RUFBQTtBQUFBLEdBY3ZCIiwiaWdub3JlTGlzdCI6W119
|
|
@@ -1,84 +1,114 @@
|
|
|
1
1
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
2
|
import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
|
|
3
|
-
import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
|
|
4
3
|
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
4
|
+
import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
|
|
5
5
|
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; }
|
|
6
6
|
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; }
|
|
7
7
|
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
8
8
|
import { useState, useCallback } from 'react';
|
|
9
9
|
import { fetchMaia } from '../client';
|
|
10
|
-
|
|
11
|
-
var
|
|
12
|
-
|
|
13
|
-
skills = _useState2[0],
|
|
14
|
-
setSkills = _useState2[1];
|
|
15
|
-
var _useState3 = useState(false),
|
|
16
|
-
_useState4 = _slicedToArray(_useState3, 2),
|
|
17
|
-
loading = _useState4[0],
|
|
18
|
-
setLoading = _useState4[1];
|
|
19
|
-
var _useState5 = useState(null),
|
|
20
|
-
_useState6 = _slicedToArray(_useState5, 2),
|
|
21
|
-
error = _useState6[0],
|
|
22
|
-
setError = _useState6[1];
|
|
23
|
-
var handleGetSkills = useCallback(/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
|
|
24
|
-
var response, data, _t;
|
|
10
|
+
var fetchSkillsByScope = /*#__PURE__*/function () {
|
|
11
|
+
var _ref = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(scope) {
|
|
12
|
+
var response, data;
|
|
25
13
|
return _regeneratorRuntime.wrap(function (_context) {
|
|
26
14
|
while (1) switch (_context.prev = _context.next) {
|
|
27
15
|
case 0:
|
|
28
|
-
|
|
29
|
-
setError(null);
|
|
30
|
-
_context.prev = 1;
|
|
31
|
-
_context.next = 2;
|
|
16
|
+
_context.next = 1;
|
|
32
17
|
return fetchMaia({
|
|
33
|
-
path:
|
|
18
|
+
path: "skills?limit=100&offset=0&scope=".concat(scope),
|
|
34
19
|
method: 'GET'
|
|
35
20
|
});
|
|
36
|
-
case
|
|
21
|
+
case 1:
|
|
37
22
|
response = _context.sent;
|
|
38
|
-
_context.next =
|
|
23
|
+
_context.next = 2;
|
|
39
24
|
return response.json();
|
|
40
|
-
case
|
|
25
|
+
case 2:
|
|
41
26
|
data = _context.sent;
|
|
42
|
-
|
|
43
|
-
|
|
27
|
+
return _context.abrupt("return", data.data || []);
|
|
28
|
+
case 3:
|
|
29
|
+
case "end":
|
|
30
|
+
return _context.stop();
|
|
31
|
+
}
|
|
32
|
+
}, _callee);
|
|
33
|
+
}));
|
|
34
|
+
return function fetchSkillsByScope(_x) {
|
|
35
|
+
return _ref.apply(this, arguments);
|
|
36
|
+
};
|
|
37
|
+
}();
|
|
38
|
+
export var useGetSkills = function useGetSkills() {
|
|
39
|
+
var _useState = useState([]),
|
|
40
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
41
|
+
mySkills = _useState2[0],
|
|
42
|
+
setMySkills = _useState2[1];
|
|
43
|
+
var _useState3 = useState([]),
|
|
44
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
45
|
+
sharedSkills = _useState4[0],
|
|
46
|
+
setSharedSkills = _useState4[1];
|
|
47
|
+
var _useState5 = useState(false),
|
|
48
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
49
|
+
loading = _useState6[0],
|
|
50
|
+
setLoading = _useState6[1];
|
|
51
|
+
var _useState7 = useState(null),
|
|
52
|
+
_useState8 = _slicedToArray(_useState7, 2),
|
|
53
|
+
error = _useState8[0],
|
|
54
|
+
setError = _useState8[1];
|
|
55
|
+
var handleGetSkills = useCallback(/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
|
|
56
|
+
var _yield$Promise$all, _yield$Promise$all2, mine, shared, _t;
|
|
57
|
+
return _regeneratorRuntime.wrap(function (_context2) {
|
|
58
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
59
|
+
case 0:
|
|
60
|
+
setLoading(true);
|
|
61
|
+
setError(null);
|
|
62
|
+
_context2.prev = 1;
|
|
63
|
+
_context2.next = 2;
|
|
64
|
+
return Promise.all([fetchSkillsByScope('mine'), fetchSkillsByScope('company')]);
|
|
65
|
+
case 2:
|
|
66
|
+
_yield$Promise$all = _context2.sent;
|
|
67
|
+
_yield$Promise$all2 = _slicedToArray(_yield$Promise$all, 2);
|
|
68
|
+
mine = _yield$Promise$all2[0];
|
|
69
|
+
shared = _yield$Promise$all2[1];
|
|
70
|
+
setMySkills(mine);
|
|
71
|
+
setSharedSkills(shared);
|
|
72
|
+
_context2.next = 4;
|
|
44
73
|
break;
|
|
45
|
-
case
|
|
46
|
-
|
|
47
|
-
_t =
|
|
74
|
+
case 3:
|
|
75
|
+
_context2.prev = 3;
|
|
76
|
+
_t = _context2["catch"](1);
|
|
48
77
|
setError(_t instanceof Error ? _t.message : 'An unknown error occurred');
|
|
49
|
-
case
|
|
50
|
-
|
|
78
|
+
case 4:
|
|
79
|
+
_context2.prev = 4;
|
|
51
80
|
setLoading(false);
|
|
52
|
-
return
|
|
53
|
-
case
|
|
81
|
+
return _context2.finish(4);
|
|
82
|
+
case 5:
|
|
54
83
|
case "end":
|
|
55
|
-
return
|
|
84
|
+
return _context2.stop();
|
|
56
85
|
}
|
|
57
|
-
},
|
|
86
|
+
}, _callee2, null, [[1, 3, 4, 5]]);
|
|
58
87
|
})), []);
|
|
59
88
|
var addSkill = useCallback(function (newSkill) {
|
|
60
|
-
|
|
89
|
+
setMySkills(function (prev) {
|
|
61
90
|
return prev.some(function (skill) {
|
|
62
91
|
return skill.id === newSkill.id;
|
|
63
92
|
}) ? prev : [newSkill].concat(_toConsumableArray(prev));
|
|
64
93
|
});
|
|
65
94
|
}, []);
|
|
66
95
|
var updateSkillInList = useCallback(function (updatedSkill) {
|
|
67
|
-
|
|
96
|
+
setMySkills(function (prev) {
|
|
68
97
|
return prev.map(function (skill) {
|
|
69
98
|
return skill.id === updatedSkill.id ? _objectSpread(_objectSpread({}, skill), updatedSkill) : skill;
|
|
70
99
|
});
|
|
71
100
|
});
|
|
72
101
|
}, []);
|
|
73
102
|
var removeSkill = useCallback(function (skillId) {
|
|
74
|
-
|
|
103
|
+
setMySkills(function (prev) {
|
|
75
104
|
return prev.filter(function (skill) {
|
|
76
105
|
return skill.id !== skillId;
|
|
77
106
|
});
|
|
78
107
|
});
|
|
79
108
|
}, []);
|
|
80
109
|
return {
|
|
81
|
-
|
|
110
|
+
mySkills: mySkills,
|
|
111
|
+
sharedSkills: sharedSkills,
|
|
82
112
|
loading: loading,
|
|
83
113
|
error: error,
|
|
84
114
|
handleGetSkills: handleGetSkills,
|
|
@@ -87,4 +117,4 @@ export var useGetSkills = function useGetSkills() {
|
|
|
87
117
|
removeSkill: removeSkill
|
|
88
118
|
};
|
|
89
119
|
};
|
|
90
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
120
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VTdGF0ZSIsInVzZUNhbGxiYWNrIiwiZmV0Y2hNYWlhIiwiZmV0Y2hTa2lsbHNCeVNjb3BlIiwiX3JlZiIsIl9hc3luY1RvR2VuZXJhdG9yIiwiX3JlZ2VuZXJhdG9yUnVudGltZSIsIm1hcmsiLCJfY2FsbGVlIiwic2NvcGUiLCJyZXNwb25zZSIsImRhdGEiLCJ3cmFwIiwiX2NvbnRleHQiLCJwcmV2IiwibmV4dCIsInBhdGgiLCJjb25jYXQiLCJtZXRob2QiLCJzZW50IiwianNvbiIsImFicnVwdCIsInN0b3AiLCJfeCIsImFwcGx5IiwiYXJndW1lbnRzIiwidXNlR2V0U2tpbGxzIiwiX3VzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5IiwibXlTa2lsbHMiLCJzZXRNeVNraWxscyIsIl91c2VTdGF0ZTMiLCJfdXNlU3RhdGU0Iiwic2hhcmVkU2tpbGxzIiwic2V0U2hhcmVkU2tpbGxzIiwiX3VzZVN0YXRlNSIsIl91c2VTdGF0ZTYiLCJsb2FkaW5nIiwic2V0TG9hZGluZyIsIl91c2VTdGF0ZTciLCJfdXNlU3RhdGU4IiwiZXJyb3IiLCJzZXRFcnJvciIsImhhbmRsZUdldFNraWxscyIsIl9jYWxsZWUyIiwiX3lpZWxkJFByb21pc2UkYWxsIiwiX3lpZWxkJFByb21pc2UkYWxsMiIsIm1pbmUiLCJzaGFyZWQiLCJfdCIsIl9jb250ZXh0MiIsIlByb21pc2UiLCJhbGwiLCJFcnJvciIsIm1lc3NhZ2UiLCJmaW5pc2giLCJhZGRTa2lsbCIsIm5ld1NraWxsIiwic29tZSIsInNraWxsIiwiaWQiLCJfdG9Db25zdW1hYmxlQXJyYXkiLCJ1cGRhdGVTa2lsbEluTGlzdCIsInVwZGF0ZWRTa2lsbCIsIm1hcCIsIl9vYmplY3RTcHJlYWQiLCJyZW1vdmVTa2lsbCIsInNraWxsSWQiLCJmaWx0ZXIiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvc2VydmljZXMvbWFpYS9Ta2lsbHMvZ2V0U2tpbGxzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHVzZVN0YXRlLCB1c2VDYWxsYmFjayB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgZmV0Y2hNYWlhIH0gZnJvbSAnLi4vY2xpZW50J1xuaW1wb3J0IHsgU2tpbGwgfSBmcm9tICcuLi8uLi8uLi90eXBlcy9za2lsbCdcblxuY29uc3QgZmV0Y2hTa2lsbHNCeVNjb3BlID0gYXN5bmMgKHNjb3BlOiAnbWluZScgfCAnY29tcGFueScpOiBQcm9taXNlPFNraWxsW10+ID0+IHtcbiAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaE1haWEoe1xuICAgIHBhdGg6IGBza2lsbHM/bGltaXQ9MTAwJm9mZnNldD0wJnNjb3BlPSR7c2NvcGV9YCxcbiAgICBtZXRob2Q6ICdHRVQnLFxuICB9KVxuICBjb25zdCBkYXRhID0gYXdhaXQgcmVzcG9uc2UuanNvbigpXG4gIHJldHVybiBkYXRhLmRhdGEgfHwgW11cbn1cblxuZXhwb3J0IGNvbnN0IHVzZUdldFNraWxscyA9ICgpID0+IHtcbiAgY29uc3QgW215U2tpbGxzLCBzZXRNeVNraWxsc10gPSB1c2VTdGF0ZTxTa2lsbFtdPihbXSlcbiAgY29uc3QgW3NoYXJlZFNraWxscywgc2V0U2hhcmVkU2tpbGxzXSA9IHVzZVN0YXRlPFNraWxsW10+KFtdKVxuICBjb25zdCBbbG9hZGluZywgc2V0TG9hZGluZ10gPSB1c2VTdGF0ZShmYWxzZSlcbiAgY29uc3QgW2Vycm9yLCBzZXRFcnJvcl0gPSB1c2VTdGF0ZTxzdHJpbmcgfCBudWxsPihudWxsKVxuXG4gIGNvbnN0IGhhbmRsZUdldFNraWxscyA9IHVzZUNhbGxiYWNrKGFzeW5jICgpID0+IHtcbiAgICBzZXRMb2FkaW5nKHRydWUpXG4gICAgc2V0RXJyb3IobnVsbClcblxuICAgIHRyeSB7XG4gICAgICBjb25zdCBbbWluZSwgc2hhcmVkXSA9IGF3YWl0IFByb21pc2UuYWxsKFtmZXRjaFNraWxsc0J5U2NvcGUoJ21pbmUnKSwgZmV0Y2hTa2lsbHNCeVNjb3BlKCdjb21wYW55JyldKVxuICAgICAgc2V0TXlTa2lsbHMobWluZSlcbiAgICAgIHNldFNoYXJlZFNraWxscyhzaGFyZWQpXG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICBzZXRFcnJvcihlcnIgaW5zdGFuY2VvZiBFcnJvciA/IGVyci5tZXNzYWdlIDogJ0FuIHVua25vd24gZXJyb3Igb2NjdXJyZWQnKVxuICAgIH0gZmluYWxseSB7XG4gICAgICBzZXRMb2FkaW5nKGZhbHNlKVxuICAgIH1cbiAgfSwgW10pXG5cbiAgY29uc3QgYWRkU2tpbGwgPSB1c2VDYWxsYmFjaygobmV3U2tpbGw6IFNraWxsKSA9PiB7XG4gICAgc2V0TXlTa2lsbHMocHJldiA9PiAocHJldi5zb21lKHNraWxsID0+IHNraWxsLmlkID09PSBuZXdTa2lsbC5pZCkgPyBwcmV2IDogW25ld1NraWxsLCAuLi5wcmV2XSkpXG4gIH0sIFtdKVxuXG4gIGNvbnN0IHVwZGF0ZVNraWxsSW5MaXN0ID0gdXNlQ2FsbGJhY2soKHVwZGF0ZWRTa2lsbDogU2tpbGwpID0+IHtcbiAgICBzZXRNeVNraWxscyhwcmV2ID0+IHByZXYubWFwKHNraWxsID0+IChza2lsbC5pZCA9PT0gdXBkYXRlZFNraWxsLmlkID8geyAuLi5za2lsbCwgLi4udXBkYXRlZFNraWxsIH0gOiBza2lsbCkpKVxuICB9LCBbXSlcblxuICBjb25zdCByZW1vdmVTa2lsbCA9IHVzZUNhbGxiYWNrKChza2lsbElkOiBzdHJpbmcpID0+IHtcbiAgICBzZXRNeVNraWxscyhwcmV2ID0+IHByZXYuZmlsdGVyKHNraWxsID0+IHNraWxsLmlkICE9PSBza2lsbElkKSlcbiAgfSwgW10pXG5cbiAgcmV0dXJuIHtcbiAgICBteVNraWxscyxcbiAgICBzaGFyZWRTa2lsbHMsXG4gICAgbG9hZGluZyxcbiAgICBlcnJvcixcbiAgICBoYW5kbGVHZXRTa2lsbHMsXG4gICAgYWRkU2tpbGwsXG4gICAgdXBkYXRlU2tpbGxJbkxpc3QsXG4gICAgcmVtb3ZlU2tpbGwsXG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7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
|
|
@@ -36,4 +36,4 @@ export var updateSkill = /*#__PURE__*/function () {
|
|
|
36
36
|
return _ref.apply(this, arguments);
|
|
37
37
|
};
|
|
38
38
|
}();
|
|
39
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
39
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJmZXRjaE1haWEiLCJ1cGRhdGVTa2lsbCIsIl9yZWYiLCJfYXN5bmNUb0dlbmVyYXRvciIsIl9yZWdlbmVyYXRvclJ1bnRpbWUiLCJtYXJrIiwiX2NhbGxlZSIsInNraWxsSWQiLCJza2lsbCIsInJlc3BvbnNlIiwiZGF0YSIsIndyYXAiLCJfY29udGV4dCIsInByZXYiLCJuZXh0IiwicGF0aCIsImNvbmNhdCIsIm1ldGhvZCIsImJvZHkiLCJzZW50Iiwib2siLCJFcnJvciIsImpzb24iLCJhYnJ1cHQiLCJzdG9wIiwiX3giLCJfeDIiLCJhcHBseSIsImFyZ3VtZW50cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9tYWlhL1NraWxscy91cGRhdGVTa2lsbC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmZXRjaE1haWEgfSBmcm9tICcuLi9jbGllbnQnXG5pbXBvcnQgeyBTa2lsbCwgU2tpbGxBY2Nlc3NUeXBlIH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMvc2tpbGwnXG5cbmV4cG9ydCB0eXBlIFNraWxsVXBkYXRlUmVxdWVzdCA9IHtcbiAgbmFtZTogc3RyaW5nXG4gIGRlc2NyaXB0aW9uOiBzdHJpbmdcbiAgY29udGVudDogc3RyaW5nXG4gIGFjY2Vzc190eXBlPzogU2tpbGxBY2Nlc3NUeXBlXG59XG5cbmV4cG9ydCBjb25zdCB1cGRhdGVTa2lsbCA9IGFzeW5jIChza2lsbElkOiBzdHJpbmcsIHNraWxsOiBTa2lsbFVwZGF0ZVJlcXVlc3QpOiBQcm9taXNlPFNraWxsPiA9PiB7XG4gIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2hNYWlhKHtcbiAgICBwYXRoOiBgc2tpbGxzLyR7c2tpbGxJZH1gLFxuICAgIG1ldGhvZDogJ1BVVCcsXG4gICAgYm9keTogc2tpbGwsXG4gIH0pXG5cbiAgaWYgKCFyZXNwb25zZS5vaykge1xuICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIHVwZGF0ZSBza2lsbCcpXG4gIH1cblxuICBjb25zdCBkYXRhID0gYXdhaXQgcmVzcG9uc2UuanNvbigpXG5cbiAgcmV0dXJuIGRhdGFcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7QUFBQSxTQUFTQSxTQUFTLFFBQVEsV0FBVztBQVVyQyxPQUFPLElBQU1DLFdBQVc7RUFBQSxJQUFBQyxJQUFBLEdBQUFDLGlCQUFBLGNBQUFDLG1CQUFBLENBQUFDLElBQUEsQ0FBRyxTQUFBQyxRQUFPQyxPQUFlLEVBQUVDLEtBQXlCO0lBQUEsSUFBQUMsUUFBQSxFQUFBQyxJQUFBO0lBQUEsT0FBQU4sbUJBQUEsQ0FBQU8sSUFBQSxXQUFBQyxRQUFBO01BQUEsa0JBQUFBLFFBQUEsQ0FBQUMsSUFBQSxHQUFBRCxRQUFBLENBQUFFLElBQUE7UUFBQTtVQUFBRixRQUFBLENBQUFFLElBQUE7VUFBQSxPQUNuRGQsU0FBUyxDQUFDO1lBQy9CZSxJQUFJLFlBQUFDLE1BQUEsQ0FBWVQsT0FBTyxDQUFFO1lBQ3pCVSxNQUFNLEVBQUUsS0FBSztZQUNiQyxJQUFJLEVBQUVWO1VBQ1IsQ0FBQyxDQUFDO1FBQUE7VUFKSUMsUUFBUSxHQUFBRyxRQUFBLENBQUFPLElBQUE7VUFBQSxJQU1UVixRQUFRLENBQUNXLEVBQUU7WUFBQVIsUUFBQSxDQUFBRSxJQUFBO1lBQUE7VUFBQTtVQUFBLE1BQ1IsSUFBSU8sS0FBSyxDQUFDLHdCQUF3QixDQUFDO1FBQUE7VUFBQVQsUUFBQSxDQUFBRSxJQUFBO1VBQUEsT0FHeEJMLFFBQVEsQ0FBQ2EsSUFBSSxDQUFDLENBQUM7UUFBQTtVQUE1QlosSUFBSSxHQUFBRSxRQUFBLENBQUFPLElBQUE7VUFBQSxPQUFBUCxRQUFBLENBQUFXLE1BQUEsV0FFSGIsSUFBSTtRQUFBO1FBQUE7VUFBQSxPQUFBRSxRQUFBLENBQUFZLElBQUE7TUFBQTtJQUFBLEdBQUFsQixPQUFBO0VBQUEsQ0FDWjtFQUFBLGdCQWRZTCxXQUFXQSxDQUFBd0IsRUFBQSxFQUFBQyxHQUFBO0lBQUEsT0FBQXhCLElBQUEsQ0FBQXlCLEtBQUEsT0FBQUMsU0FBQTtFQUFBO0FBQUEsR0FjdkIiLCJpZ25vcmVMaXN0IjpbXX0=
|