@projectcor/maia-components 2.49.0-beta.1 → 2.49.0
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/ApprovalBox/ApprovalBox.helpers.js +37 -0
- package/lib/components/atoms/ApprovalBox/ApprovalBox.js +3 -37
- package/lib/components/atoms/AttachmentCard/AttachmentCardAudio.helpers.js +117 -0
- package/lib/components/atoms/AttachmentCard/AttachmentCardAudio.js +31 -101
- package/lib/components/atoms/AttachmentPreviewModal/AttachmentPreviewModal.helpers.js +91 -0
- package/lib/components/atoms/AttachmentPreviewModal/AttachmentPreviewModal.js +49 -140
- package/lib/components/atoms/AttachmentPreviewModal/PptPreview.helpers.js +257 -0
- package/lib/components/atoms/AttachmentPreviewModal/PptPreview.js +53 -205
- package/lib/components/atoms/AttachmentPreviewModal/WordPreview.helpers.js +4 -0
- package/lib/components/atoms/AttachmentPreviewModal/WordPreview.js +2 -4
- package/lib/components/atoms/ClientSelector/ClientSelector.helpers.js +26 -0
- package/lib/components/atoms/ClientSelector/ClientSelector.js +12 -21
- package/lib/components/atoms/ContextMentionChip/buildChipElement.helpers.js +227 -0
- package/lib/components/atoms/ContextMentionChip/buildChipElement.js +15 -255
- package/lib/components/atoms/ContextMentionEditor/ContextMentionEditor.helpers.js +59 -0
- package/lib/components/atoms/ContextMentionEditor/ContextMentionEditor.js +12 -57
- package/lib/components/atoms/MAIAInput/MAIAInput.attachments.helpers.js +74 -0
- package/lib/components/atoms/MAIAInput/MAIAInput.helpers.js +184 -0
- package/lib/components/atoms/MAIAInput/MAIAInput.js +127 -176
- package/lib/components/atoms/MAIAInput/MAIAInputEditor.helpers.js +96 -0
- package/lib/components/atoms/MAIAInput/MAIAInputEditor.js +40 -113
- package/lib/components/atoms/OnboardingModalButton/OnboardingModalButton.helpers.js +17 -0
- package/lib/components/atoms/OnboardingModalButton/OnboardingModalButton.js +3 -15
- package/lib/components/atoms/ReasoningBlock/ReasoningSteps.js +3 -4
- package/lib/components/atoms/ReasoningBlock/ReasoningTimeline.js +3 -11
- package/lib/components/atoms/ReasoningBlock/reasoningLeading.js +6 -1
- package/lib/components/atoms/ReasoningBlock/reasoningLiveNarration.js +2 -3
- package/lib/components/atoms/ReasoningBlock/reasoningTimeline.helpers.js +10 -0
- package/lib/components/atoms/SlashCommandDropdown/SlashCommandDropdown.helpers.js +101 -0
- package/lib/components/atoms/SlashCommandDropdown/SlashCommandDropdown.js +21 -77
- package/lib/components/atoms/TextArea/TextArea.helpers.js +23 -0
- package/lib/components/atoms/TextArea/TextArea.js +11 -20
- package/lib/components/molecules/AbmSection/AbmAccessibilitySection/AbmAccessibilitySection.helpers.js +37 -0
- package/lib/components/molecules/AbmSection/AbmAccessibilitySection/AbmAccessibilitySection.js +6 -29
- package/lib/components/molecules/AbmSection/AbmGeneralSection.helpers.js +68 -0
- package/lib/components/molecules/AbmSection/AbmGeneralSection.js +17 -56
- package/lib/components/molecules/AbmSection/AbmKnowledgeSection.helpers.js +133 -0
- package/lib/components/molecules/AbmSection/AbmKnowledgeSection.js +31 -112
- package/lib/components/molecules/AbmSection/AbmLoaderFiles.helpers.js +17 -0
- package/lib/components/molecules/AbmSection/AbmLoaderFiles.js +5 -15
- package/lib/components/molecules/ChatAIHome/ChatAIHome.helpers.js +370 -0
- package/lib/components/molecules/ChatAIHome/ChatAIHome.js +197 -233
- package/lib/components/molecules/ChatAIMessages/ChatAIMessages.helpers.js +398 -0
- package/lib/components/molecules/ChatAIMessages/ChatAIMessages.js +209 -235
- package/lib/components/molecules/ChatAIModal/ChatAIModal.helpers.js +515 -4
- package/lib/components/molecules/ChatAIModal/ChatAIModal.js +228 -344
- package/lib/components/molecules/ChatAIModal/components/ChatAiAgentOptions/ChatAiAgentOptions.helpers.js +5 -0
- package/lib/components/molecules/ChatAIModal/components/ChatAiAgentOptions/ChatAiAgentOptions.js +3 -2
- package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.helpers.js +49 -0
- package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.js +36 -33
- package/lib/components/molecules/ChatAIMyAgents/ChatAIMyAgents.helpers.js +39 -0
- package/lib/components/molecules/ChatAIMyAgents/ChatAIMyAgents.js +30 -33
- package/lib/components/molecules/ChatAIMySkills/ChatAIMySkills.helpers.js +41 -0
- package/lib/components/molecules/ChatAIMySkills/ChatAIMySkills.js +9 -35
- package/lib/components/molecules/ChatFooter/ChatFooterFaqs.helpers.js +48 -0
- package/lib/components/molecules/ChatFooter/ChatFooterFaqs.js +9 -44
- package/lib/components/molecules/Sidebar/Sidebar.helpers.js +43 -0
- package/lib/components/molecules/Sidebar/Sidebar.js +25 -22
- package/lib/components/organisms/AbmAgentModal/AbmAgentModal.helpers.js +512 -0
- package/lib/components/organisms/AbmAgentModal/AbmAgentModal.js +309 -643
- package/lib/components/organisms/AbmSkillModal/AbmSkillModal.helpers.js +37 -0
- package/lib/components/organisms/AbmSkillModal/AbmSkillModal.js +13 -25
- package/lib/constants/formatExtensions.js +7 -8
- package/lib/dev/DevReasoningTimeline.js +8 -50
- package/lib/hooks/useAgentModel/useCreateAgent.helpers.js +144 -0
- package/lib/hooks/useAgentModel/useCreateAgent.js +38 -102
- package/lib/hooks/useChatManager/useChatManager.helpers.js +902 -0
- package/lib/hooks/useChatManager/useChatManager.js +267 -741
- package/lib/hooks/useChatMessages/useChatMessages.helpers.js +365 -0
- package/lib/hooks/useChatMessages/useChatMessages.js +59 -285
- package/lib/hooks/useClientSearch.helpers.js +36 -0
- package/lib/hooks/useClientSearch.js +4 -32
- package/lib/hooks/useContextMentions.helpers.js +212 -0
- package/lib/hooks/useContextMentions.js +5 -223
- package/lib/hooks/useContextMentions.types.js +2 -0
- package/lib/hooks/useContextPinPopover.helpers.js +95 -0
- package/lib/hooks/useContextPinPopover.js +16 -75
- package/lib/hooks/useEntitySearch.helpers.js +407 -0
- package/lib/hooks/useEntitySearch.js +52 -436
- package/lib/hooks/useMentionPopover.helpers.js +41 -0
- package/lib/hooks/useMentionPopover.js +9 -35
- package/lib/hooks/useMinimizedPillBottomOffset.helpers.js +47 -0
- package/lib/hooks/useMinimizedPillBottomOffset.js +15 -45
- package/lib/hooks/useOrchestratorStream/useOrchestratorStream.helpers.js +86 -0
- package/lib/hooks/useOrchestratorStream/useOrchestratorStream.js +8 -82
- package/lib/hooks/useProjectSearch.helpers.js +61 -0
- package/lib/hooks/useProjectSearch.js +4 -58
- package/lib/hooks/useProjectSummaryConfig.helpers.js +62 -0
- package/lib/hooks/useProjectSummaryConfig.js +14 -52
- package/lib/hooks/useReasoningTrace/reasoningStore.js +8 -39
- package/lib/hooks/useRecentClientsSearch.helpers.js +33 -0
- package/lib/hooks/useRecentClientsSearch.js +4 -32
- package/lib/lang/br/index.js +1 -7
- package/lib/lang/en/index.js +1 -7
- package/lib/lang/es/index.js +1 -7
- package/lib/lang/fr/index.js +1 -7
- package/lib/services/maia/Agents/getAgents.helpers.js +241 -0
- package/lib/services/maia/Agents/getAgents.js +90 -282
- package/lib/services/maia/Orchestrator/orchestrator.helpers.js +130 -0
- package/lib/services/maia/Orchestrator/orchestrator.js +38 -121
- package/lib/services/utils/mapChatMessages.helpers.js +223 -0
- package/lib/services/utils/mapChatMessages.js +25 -254
- package/lib/store/sessions/sessionNotifications.helpers.js +45 -0
- package/lib/store/sessions/sessionNotifications.js +35 -41
- package/lib/store/sessions/sessionStreamManager.helpers.js +134 -0
- package/lib/store/sessions/sessionStreamManager.js +172 -236
- package/lib/test/mockSseStream.js +121 -0
- package/lib/test/streamdownCodeMock.js +6 -0
- package/lib/test/streamdownMock.js +12 -0
- package/lib/types/Chat.js +1 -1
- package/lib/types/agentModal.js +1 -1
- package/lib/types/reasoning.js +1 -1
- package/lib/utils/imagePreprocessor.helpers.js +28 -0
- package/lib/utils/imagePreprocessor.js +12 -37
- package/lib/utils/renderContextMentions.helpers.js +110 -0
- package/lib/utils/renderContextMentions.js +4 -110
- package/lib/utils/streamActivityMessages.helpers.js +222 -0
- package/lib/utils/streamActivityMessages.js +4 -221
- package/package.json +2 -2
- package/lib/components/atoms/ContextCompactedNotice/ContextCompactedNotice.js +0 -53
- package/lib/components/atoms/ContextCompactedNotice/ContextCompactedNotice.styles.js +0 -8
- package/lib/components/atoms/ContextCompactedNotice/index.js +0 -2
- package/lib/types/contextCompaction.js +0 -48
- package/lib/types/jest-dom.d.js +0 -2
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
export var mapperClientsSearch = function mapperClientsSearch(values) {
|
|
2
|
+
return values === null || values === void 0 ? void 0 : values.map(function (value) {
|
|
3
|
+
return {
|
|
4
|
+
id: value.id,
|
|
5
|
+
name: value.name
|
|
6
|
+
};
|
|
7
|
+
});
|
|
8
|
+
};
|
|
9
|
+
export var buildClientSearchFilter = function buildClientSearchFilter(value) {
|
|
10
|
+
var clientStatusId = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
|
|
11
|
+
return value ? {
|
|
12
|
+
name: value,
|
|
13
|
+
clientStatusId: [clientStatusId]
|
|
14
|
+
} : {};
|
|
15
|
+
};
|
|
16
|
+
export var buildClientHighlightTitle = function buildClientHighlightTitle(clientName, searchValue) {
|
|
17
|
+
if (!searchValue || !clientName.toLocaleLowerCase().includes(searchValue.toLocaleLowerCase())) {
|
|
18
|
+
return clientName;
|
|
19
|
+
}
|
|
20
|
+
var textIndex = clientName.toLowerCase().indexOf(searchValue.toLowerCase());
|
|
21
|
+
var valueToChange = clientName.slice(textIndex, textIndex + searchValue.length);
|
|
22
|
+
var escapedSearchValue = searchValue.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
|
|
23
|
+
return clientName.replace(new RegExp(escapedSearchValue, 'i'), "<span style=\"color: #0088cc; font-weight: bold;\">".concat(valueToChange, "</span>"));
|
|
24
|
+
};
|
|
25
|
+
export var mapGraphqlClientsToSetters = function mapGraphqlClientsToSetters(clients, searchValue) {
|
|
26
|
+
return clients.map(function (client) {
|
|
27
|
+
var clientName = client.name || '';
|
|
28
|
+
var highlightedValue = buildClientHighlightTitle(clientName, searchValue);
|
|
29
|
+
return {
|
|
30
|
+
id: client.id,
|
|
31
|
+
name: client.name,
|
|
32
|
+
title: searchValue && highlightedValue !== clientName ? highlightedValue : clientName
|
|
33
|
+
};
|
|
34
|
+
});
|
|
35
|
+
};
|
|
36
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJtYXBwZXJDbGllbnRzU2VhcmNoIiwidmFsdWVzIiwibWFwIiwidmFsdWUiLCJpZCIsIm5hbWUiLCJidWlsZENsaWVudFNlYXJjaEZpbHRlciIsImNsaWVudFN0YXR1c0lkIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwidW5kZWZpbmVkIiwiYnVpbGRDbGllbnRIaWdobGlnaHRUaXRsZSIsImNsaWVudE5hbWUiLCJzZWFyY2hWYWx1ZSIsInRvTG9jYWxlTG93ZXJDYXNlIiwiaW5jbHVkZXMiLCJ0ZXh0SW5kZXgiLCJ0b0xvd2VyQ2FzZSIsImluZGV4T2YiLCJ2YWx1ZVRvQ2hhbmdlIiwic2xpY2UiLCJlc2NhcGVkU2VhcmNoVmFsdWUiLCJyZXBsYWNlIiwiUmVnRXhwIiwiY29uY2F0IiwibWFwR3JhcGhxbENsaWVudHNUb1NldHRlcnMiLCJjbGllbnRzIiwiY2xpZW50IiwiaGlnaGxpZ2h0ZWRWYWx1ZSIsInRpdGxlIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hvb2tzL3VzZUNsaWVudFNlYXJjaC5oZWxwZXJzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ2xpZW50R3JhcGhRTCwgQ2xpZW50U2V0dGVyIH0gZnJvbSAnLi91c2VDbGllbnRTZWFyY2gnXG5cbmV4cG9ydCBjb25zdCBtYXBwZXJDbGllbnRzU2VhcmNoID0gKHZhbHVlczogQ2xpZW50R3JhcGhRTFtdKTogQ2xpZW50R3JhcGhRTFtdID0+XG4gIHZhbHVlcz8ubWFwKHZhbHVlID0+ICh7XG4gICAgaWQ6IHZhbHVlLmlkLFxuICAgIG5hbWU6IHZhbHVlLm5hbWUsXG4gIH0pKVxuXG5leHBvcnQgY29uc3QgYnVpbGRDbGllbnRTZWFyY2hGaWx0ZXIgPSAodmFsdWU6IHN0cmluZywgY2xpZW50U3RhdHVzSWQgPSAxKTogUmVjb3JkPHN0cmluZywgdW5rbm93bj4gPT5cbiAgdmFsdWUgPyB7IG5hbWU6IHZhbHVlLCBjbGllbnRTdGF0dXNJZDogW2NsaWVudFN0YXR1c0lkXSB9IDoge31cblxuZXhwb3J0IGNvbnN0IGJ1aWxkQ2xpZW50SGlnaGxpZ2h0VGl0bGUgPSAoY2xpZW50TmFtZTogc3RyaW5nLCBzZWFyY2hWYWx1ZT86IHN0cmluZyk6IHN0cmluZyA9PiB7XG4gIGlmICghc2VhcmNoVmFsdWUgfHwgIWNsaWVudE5hbWUudG9Mb2NhbGVMb3dlckNhc2UoKS5pbmNsdWRlcyhzZWFyY2hWYWx1ZS50b0xvY2FsZUxvd2VyQ2FzZSgpKSkge1xuICAgIHJldHVybiBjbGllbnROYW1lXG4gIH1cblxuICBjb25zdCB0ZXh0SW5kZXggPSBjbGllbnROYW1lLnRvTG93ZXJDYXNlKCkuaW5kZXhPZihzZWFyY2hWYWx1ZS50b0xvd2VyQ2FzZSgpKVxuICBjb25zdCB2YWx1ZVRvQ2hhbmdlID0gY2xpZW50TmFtZS5zbGljZSh0ZXh0SW5kZXgsIHRleHRJbmRleCArIHNlYXJjaFZhbHVlLmxlbmd0aClcbiAgY29uc3QgZXNjYXBlZFNlYXJjaFZhbHVlID0gc2VhcmNoVmFsdWUucmVwbGFjZSgvWy4qKz9eJHt9KCl8W1xcXVxcXFxdL2csICdcXFxcJCYnKVxuXG4gIHJldHVybiBjbGllbnROYW1lLnJlcGxhY2UoXG4gICAgbmV3IFJlZ0V4cChlc2NhcGVkU2VhcmNoVmFsdWUsICdpJyksXG4gICAgYDxzcGFuIHN0eWxlPVwiY29sb3I6ICMwMDg4Y2M7IGZvbnQtd2VpZ2h0OiBib2xkO1wiPiR7dmFsdWVUb0NoYW5nZX08L3NwYW4+YFxuICApXG59XG5cbmV4cG9ydCBjb25zdCBtYXBHcmFwaHFsQ2xpZW50c1RvU2V0dGVycyA9IChjbGllbnRzOiBDbGllbnRHcmFwaFFMW10sIHNlYXJjaFZhbHVlPzogc3RyaW5nKTogQ2xpZW50U2V0dGVyW10gPT5cbiAgY2xpZW50cy5tYXAoY2xpZW50ID0+IHtcbiAgICBjb25zdCBjbGllbnROYW1lID0gY2xpZW50Lm5hbWUgfHwgJydcbiAgICBjb25zdCBoaWdobGlnaHRlZFZhbHVlID0gYnVpbGRDbGllbnRIaWdobGlnaHRUaXRsZShjbGllbnROYW1lLCBzZWFyY2hWYWx1ZSlcblxuICAgIHJldHVybiB7XG4gICAgICBpZDogY2xpZW50LmlkLFxuICAgICAgbmFtZTogY2xpZW50Lm5hbWUsXG4gICAgICB0aXRsZTogc2VhcmNoVmFsdWUgJiYgaGlnaGxpZ2h0ZWRWYWx1ZSAhPT0gY2xpZW50TmFtZSA/IGhpZ2hsaWdodGVkVmFsdWUgOiBjbGllbnROYW1lLFxuICAgIH1cbiAgfSlcbiJdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxJQUFNQSxtQkFBbUIsR0FBRyxTQUF0QkEsbUJBQW1CQSxDQUFJQyxNQUF1QjtFQUFBLE9BQ3pEQSxNQUFNLGFBQU5BLE1BQU0sdUJBQU5BLE1BQU0sQ0FBRUMsR0FBRyxDQUFDLFVBQUFDLEtBQUs7SUFBQSxPQUFLO01BQ3BCQyxFQUFFLEVBQUVELEtBQUssQ0FBQ0MsRUFBRTtNQUNaQyxJQUFJLEVBQUVGLEtBQUssQ0FBQ0U7SUFDZCxDQUFDO0VBQUEsQ0FBQyxDQUFDO0FBQUE7QUFFTCxPQUFPLElBQU1DLHVCQUF1QixHQUFHLFNBQTFCQSx1QkFBdUJBLENBQUlILEtBQWE7RUFBQSxJQUFFSSxjQUFjLEdBQUFDLFNBQUEsQ0FBQUMsTUFBQSxRQUFBRCxTQUFBLFFBQUFFLFNBQUEsR0FBQUYsU0FBQSxNQUFHLENBQUM7RUFBQSxPQUN2RUwsS0FBSyxHQUFHO0lBQUVFLElBQUksRUFBRUYsS0FBSztJQUFFSSxjQUFjLEVBQUUsQ0FBQ0EsY0FBYztFQUFFLENBQUMsR0FBRyxDQUFDLENBQUM7QUFBQTtBQUVoRSxPQUFPLElBQU1JLHlCQUF5QixHQUFHLFNBQTVCQSx5QkFBeUJBLENBQUlDLFVBQWtCLEVBQUVDLFdBQW9CLEVBQWE7RUFDN0YsSUFBSSxDQUFDQSxXQUFXLElBQUksQ0FBQ0QsVUFBVSxDQUFDRSxpQkFBaUIsQ0FBQyxDQUFDLENBQUNDLFFBQVEsQ0FBQ0YsV0FBVyxDQUFDQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsRUFBRTtJQUM3RixPQUFPRixVQUFVO0VBQ25CO0VBRUEsSUFBTUksU0FBUyxHQUFHSixVQUFVLENBQUNLLFdBQVcsQ0FBQyxDQUFDLENBQUNDLE9BQU8sQ0FBQ0wsV0FBVyxDQUFDSSxXQUFXLENBQUMsQ0FBQyxDQUFDO0VBQzdFLElBQU1FLGFBQWEsR0FBR1AsVUFBVSxDQUFDUSxLQUFLLENBQUNKLFNBQVMsRUFBRUEsU0FBUyxHQUFHSCxXQUFXLENBQUNKLE1BQU0sQ0FBQztFQUNqRixJQUFNWSxrQkFBa0IsR0FBR1IsV0FBVyxDQUFDUyxPQUFPLENBQUMscUJBQXFCLEVBQUUsTUFBTSxDQUFDO0VBRTdFLE9BQU9WLFVBQVUsQ0FBQ1UsT0FBTyxDQUN2QixJQUFJQyxNQUFNLENBQUNGLGtCQUFrQixFQUFFLEdBQUcsQ0FBQyx3REFBQUcsTUFBQSxDQUNpQkwsYUFBYSxZQUNuRSxDQUFDO0FBQ0gsQ0FBQztBQUVELE9BQU8sSUFBTU0sMEJBQTBCLEdBQUcsU0FBN0JBLDBCQUEwQkEsQ0FBSUMsT0FBd0IsRUFBRWIsV0FBb0I7RUFBQSxPQUN2RmEsT0FBTyxDQUFDeEIsR0FBRyxDQUFDLFVBQUF5QixNQUFNLEVBQUk7SUFDcEIsSUFBTWYsVUFBVSxHQUFHZSxNQUFNLENBQUN0QixJQUFJLElBQUksRUFBRTtJQUNwQyxJQUFNdUIsZ0JBQWdCLEdBQUdqQix5QkFBeUIsQ0FBQ0MsVUFBVSxFQUFFQyxXQUFXLENBQUM7SUFFM0UsT0FBTztNQUNMVCxFQUFFLEVBQUV1QixNQUFNLENBQUN2QixFQUFFO01BQ2JDLElBQUksRUFBRXNCLE1BQU0sQ0FBQ3RCLElBQUk7TUFDakJ3QixLQUFLLEVBQUVoQixXQUFXLElBQUllLGdCQUFnQixLQUFLaEIsVUFBVSxHQUFHZ0IsZ0JBQWdCLEdBQUdoQjtJQUM3RSxDQUFDO0VBQ0gsQ0FBQyxDQUFDO0FBQUEiLCJpZ25vcmVMaXN0IjpbXX0=
|
|
@@ -4,39 +4,14 @@ import { useEffect, useState } from 'react';
|
|
|
4
4
|
import { SEARCH_CLIENTS } from '../services/query';
|
|
5
5
|
import { SEARCH_QUERY_DEBOUNCE_MS } from '../constants/config';
|
|
6
6
|
import { useDebounce } from './useDebounce';
|
|
7
|
-
|
|
8
|
-
return values === null || values === void 0 ? void 0 : values.map(function (value) {
|
|
9
|
-
return {
|
|
10
|
-
id: value.id,
|
|
11
|
-
name: value.name
|
|
12
|
-
};
|
|
13
|
-
});
|
|
14
|
-
};
|
|
7
|
+
import { buildClientSearchFilter, mapGraphqlClientsToSetters, mapperClientsSearch } from './useClientSearch.helpers';
|
|
15
8
|
export var DataParsedToClients = function DataParsedToClients() {
|
|
16
9
|
var _useState = useState([]),
|
|
17
10
|
_useState2 = _slicedToArray(_useState, 2),
|
|
18
11
|
clients = _useState2[0],
|
|
19
12
|
setClients = _useState2[1];
|
|
20
13
|
var setterData = function setterData(args, searchValue) {
|
|
21
|
-
|
|
22
|
-
setClients([]);
|
|
23
|
-
} else {
|
|
24
|
-
setClients(args.map(function (arg) {
|
|
25
|
-
var clientName = arg.name || '';
|
|
26
|
-
var highlightedValue = '';
|
|
27
|
-
if (searchValue && clientName.toLocaleLowerCase().includes(searchValue.toLocaleLowerCase())) {
|
|
28
|
-
var textIndex = clientName.toLowerCase().indexOf(searchValue.toLowerCase());
|
|
29
|
-
var valueToChange = clientName.slice(textIndex, textIndex + searchValue.length);
|
|
30
|
-
var escapedSearchValue = searchValue.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
|
|
31
|
-
highlightedValue = clientName.replace(new RegExp(escapedSearchValue, 'i'), "<span style=\"color: #0088cc; font-weight: bold;\">".concat(valueToChange, "</span>"));
|
|
32
|
-
}
|
|
33
|
-
return {
|
|
34
|
-
id: arg.id,
|
|
35
|
-
name: arg.name,
|
|
36
|
-
title: searchValue && highlightedValue ? highlightedValue : clientName
|
|
37
|
-
};
|
|
38
|
-
}));
|
|
39
|
-
}
|
|
14
|
+
setClients(args.length ? mapGraphqlClientsToSetters(args, searchValue) : []);
|
|
40
15
|
};
|
|
41
16
|
return {
|
|
42
17
|
clients: clients,
|
|
@@ -86,10 +61,7 @@ export var useClientSearch = function useClientSearch() {
|
|
|
86
61
|
var page = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
|
|
87
62
|
var perPage = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 20;
|
|
88
63
|
var clientStatusId = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 1;
|
|
89
|
-
var filter = value
|
|
90
|
-
name: value,
|
|
91
|
-
clientStatusId: [clientStatusId]
|
|
92
|
-
} : {};
|
|
64
|
+
var filter = buildClientSearchFilter(value, clientStatusId);
|
|
93
65
|
fetchClients({
|
|
94
66
|
variables: {
|
|
95
67
|
page: page,
|
|
@@ -160,4 +132,4 @@ export var useClientSearch = function useClientSearch() {
|
|
|
160
132
|
loadPage: loadPage
|
|
161
133
|
};
|
|
162
134
|
};
|
|
163
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VMYXp5UXVlcnkiLCJ1c2VFZmZlY3QiLCJ1c2VTdGF0ZSIsIlNFQVJDSF9DTElFTlRTIiwiU0VBUkNIX1FVRVJZX0RFQk9VTkNFX01TIiwidXNlRGVib3VuY2UiLCJtYXBwZXJDbGllbnRzU2VhcmNoIiwidmFsdWVzIiwibWFwIiwidmFsdWUiLCJpZCIsIm5hbWUiLCJEYXRhUGFyc2VkVG9DbGllbnRzIiwiX3VzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5IiwiY2xpZW50cyIsInNldENsaWVudHMiLCJzZXR0ZXJEYXRhIiwiYXJncyIsInNlYXJjaFZhbHVlIiwibGVuZ3RoIiwiYXJnIiwiY2xpZW50TmFtZSIsImhpZ2hsaWdodGVkVmFsdWUiLCJ0b0xvY2FsZUxvd2VyQ2FzZSIsImluY2x1ZGVzIiwidGV4dEluZGV4IiwidG9Mb3dlckNhc2UiLCJpbmRleE9mIiwidmFsdWVUb0NoYW5nZSIsInNsaWNlIiwiZXNjYXBlZFNlYXJjaFZhbHVlIiwicmVwbGFjZSIsIlJlZ0V4cCIsImNvbmNhdCIsInRpdGxlIiwidXNlQ2xpZW50U2VhcmNoIiwiX0RhdGFQYXJzZWRUb0NsaWVudHMiLCJfdXNlU3RhdGUzIiwiX3VzZVN0YXRlNCIsImxvYWRpbmciLCJzZXRMb2FkaW5nIiwiX3VzZVN0YXRlNSIsIl91c2VTdGF0ZTYiLCJlcnJvciIsInNldEVycm9yIiwiX3VzZVN0YXRlNyIsIl91c2VTdGF0ZTgiLCJzZXRTZWFyY2hWYWx1ZSIsIl91c2VTdGF0ZTkiLCJwYWdlIiwicGVyUGFnZSIsInRvdGFsIiwibGFzdFBhZ2UiLCJfdXNlU3RhdGUwIiwicGFnaW5hdGlvbiIsInNldFBhZ2luYXRpb24iLCJkZWJvdW5jZWRTZWFyY2hWYWx1ZSIsIl91c2VMYXp5UXVlcnkiLCJ2YXJpYWJsZXMiLCJmaWx0ZXIiLCJfdXNlTGF6eVF1ZXJ5MiIsImZldGNoQ2xpZW50cyIsIl91c2VMYXp5UXVlcnkyJCIsImNsaWVudERhdGEiLCJkYXRhIiwibG9hZGluZ0NsaWVudHMiLCJjbGllbnRFcnJvciIsImhhbmRsZUZldGNoQ2xpZW50cyIsImFyZ3VtZW50cyIsInVuZGVmaW5lZCIsImNsaWVudFN0YXR1c0lkIiwiX2NsaWVudERhdGEkY2xpZW50cyIsIm1hcHBlZENsaWVudHMiLCJ0cmltIiwidXBkYXRlU2VhcmNoVmFsdWUiLCJuZXdTZWFyY2hWYWx1ZSIsImNsZWFyQ2xpZW50cyIsImxvYWRQYWdlIiwiY2xpZW50c0xvYWRpbmciLCJjbGllbnRzRXJyb3IiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvaG9va3MvdXNlQ2xpZW50U2VhcmNoLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHVzZUxhenlRdWVyeSB9IGZyb20gJ0BhcG9sbG8vY2xpZW50J1xuaW1wb3J0IHsgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgU0VBUkNIX0NMSUVOVFMgfSBmcm9tICcuLi9zZXJ2aWNlcy9xdWVyeSdcbmltcG9ydCB7IFNFQVJDSF9RVUVSWV9ERUJPVU5DRV9NUyB9IGZyb20gJy4uL2NvbnN0YW50cy9jb25maWcnXG5pbXBvcnQgeyB1c2VEZWJvdW5jZSB9IGZyb20gJy4vdXNlRGVib3VuY2UnXG5cbmV4cG9ydCB0eXBlIENsaWVudEdyYXBoUUwgPSB7XG4gIGlkOiBzdHJpbmdcbiAgbmFtZTogc3RyaW5nXG4gIGNsaWVudFN0YXR1c0lkPzogbnVtYmVyW11cbn1cblxuZXhwb3J0IHR5cGUgQ2xpZW50U2V0dGVyID0ge1xuICBpZDogc3RyaW5nXG4gIG5hbWU6IHN0cmluZ1xuICB0aXRsZTogc3RyaW5nXG4gIGNsaWVudFN0YXR1c0lkPzogbnVtYmVyW11cbn1cblxudHlwZSBRdWVyeUNsaWVudERhdGEgPSB7XG4gIGNsaWVudHM6IHtcbiAgICB0b3RhbDogbnVtYmVyXG4gICAgcGVyUGFnZTogbnVtYmVyXG4gICAgcGFnZTogbnVtYmVyIHwgbnVsbFxuICAgIGxhc3RQYWdlOiBudW1iZXJcbiAgICBkYXRhOiBDbGllbnRHcmFwaFFMW11cbiAgfVxufVxuXG5jb25zdCBtYXBwZXJDbGllbnRzU2VhcmNoID0gKHZhbHVlczogQ2xpZW50R3JhcGhRTFtdKTogQ2xpZW50R3JhcGhRTFtdID0+IHtcbiAgcmV0dXJuIHZhbHVlcz8ubWFwKHZhbHVlID0+ICh7XG4gICAgaWQ6IHZhbHVlLmlkLFxuICAgIG5hbWU6IHZhbHVlLm5hbWUsXG4gIH0pKVxufVxuXG5leHBvcnQgY29uc3QgRGF0YVBhcnNlZFRvQ2xpZW50cyA9ICgpID0+IHtcbiAgY29uc3QgW2NsaWVudHMsIHNldENsaWVudHNdID0gdXNlU3RhdGU8Q2xpZW50U2V0dGVyW10+KFtdKVxuXG4gIGNvbnN0IHNldHRlckRhdGEgPSAoYXJnczogQ2xpZW50R3JhcGhRTFtdLCBzZWFyY2hWYWx1ZT86IHN0cmluZykgPT4ge1xuICAgIGlmICghYXJncy5sZW5ndGgpIHtcbiAgICAgIHNldENsaWVudHMoW10pXG4gICAgfSBlbHNlIHtcbiAgICAgIHNldENsaWVudHMoXG4gICAgICAgIGFyZ3MubWFwKGFyZyA9PiB7XG4gICAgICAgICAgY29uc3QgY2xpZW50TmFtZSA9IGFyZy5uYW1lIHx8ICcnXG4gICAgICAgICAgbGV0IGhpZ2hsaWdodGVkVmFsdWUgPSAnJ1xuICAgICAgICAgIGlmIChzZWFyY2hWYWx1ZSAmJiBjbGllbnROYW1lLnRvTG9jYWxlTG93ZXJDYXNlKCkuaW5jbHVkZXMoc2VhcmNoVmFsdWUudG9Mb2NhbGVMb3dlckNhc2UoKSkpIHtcbiAgICAgICAgICAgIGNvbnN0IHRleHRJbmRleCA9IGNsaWVudE5hbWUudG9Mb3dlckNhc2UoKS5pbmRleE9mKHNlYXJjaFZhbHVlLnRvTG93ZXJDYXNlKCkpXG4gICAgICAgICAgICBjb25zdCB2YWx1ZVRvQ2hhbmdlID0gY2xpZW50TmFtZS5zbGljZSh0ZXh0SW5kZXgsIHRleHRJbmRleCArIHNlYXJjaFZhbHVlLmxlbmd0aClcbiAgICAgICAgICAgIGNvbnN0IGVzY2FwZWRTZWFyY2hWYWx1ZSA9IHNlYXJjaFZhbHVlLnJlcGxhY2UoL1suKis/XiR7fSgpfFtcXF1cXFxcXS9nLCAnXFxcXCQmJylcbiAgICAgICAgICAgIGhpZ2hsaWdodGVkVmFsdWUgPSBjbGllbnROYW1lLnJlcGxhY2UoXG4gICAgICAgICAgICAgIG5ldyBSZWdFeHAoZXNjYXBlZFNlYXJjaFZhbHVlLCAnaScpLFxuICAgICAgICAgICAgICBgPHNwYW4gc3R5bGU9XCJjb2xvcjogIzAwODhjYzsgZm9udC13ZWlnaHQ6IGJvbGQ7XCI+JHt2YWx1ZVRvQ2hhbmdlfTwvc3Bhbj5gXG4gICAgICAgICAgICApXG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBpZDogYXJnLmlkLFxuICAgICAgICAgICAgbmFtZTogYXJnLm5hbWUsXG4gICAgICAgICAgICB0aXRsZTogc2VhcmNoVmFsdWUgJiYgaGlnaGxpZ2h0ZWRWYWx1ZSA/IGhpZ2hsaWdodGVkVmFsdWUgOiBjbGllbnROYW1lLFxuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgIClcbiAgICB9XG4gIH1cbiAgcmV0dXJuIHsgY2xpZW50cywgc2V0dGVyRGF0YSB9XG59XG5cbmV4cG9ydCBjb25zdCB1c2VDbGllbnRTZWFyY2ggPSAoKSA9PiB7XG4gIGNvbnN0IHsgY2xpZW50cywgc2V0dGVyRGF0YSB9ID0gRGF0YVBhcnNlZFRvQ2xpZW50cygpXG4gIGNvbnN0IFtsb2FkaW5nLCBzZXRMb2FkaW5nXSA9IHVzZVN0YXRlKGZhbHNlKVxuICBjb25zdCBbZXJyb3IsIHNldEVycm9yXSA9IHVzZVN0YXRlKGZhbHNlKVxuICBjb25zdCBbc2VhcmNoVmFsdWUsIHNldFNlYXJjaFZhbHVlXSA9IHVzZVN0YXRlKCcnKVxuICBjb25zdCBbcGFnaW5hdGlvbiwgc2V0UGFnaW5hdGlvbl0gPSB1c2VTdGF0ZSh7XG4gICAgcGFnZTogMSxcbiAgICBwZXJQYWdlOiAyMCxcbiAgICB0b3RhbDogMCxcbiAgICBsYXN0UGFnZTogMCxcbiAgfSlcblxuICBjb25zdCBkZWJvdW5jZWRTZWFyY2hWYWx1ZSA9IHVzZURlYm91bmNlKHNlYXJjaFZhbHVlLCBTRUFSQ0hfUVVFUllfREVCT1VOQ0VfTVMpXG5cbiAgY29uc3QgW2ZldGNoQ2xpZW50cywgeyBkYXRhOiBjbGllbnREYXRhLCBsb2FkaW5nOiBsb2FkaW5nQ2xpZW50cywgZXJyb3I6IGNsaWVudEVycm9yIH1dID1cbiAgICB1c2VMYXp5UXVlcnk8UXVlcnlDbGllbnREYXRhPihTRUFSQ0hfQ0xJRU5UUywge1xuICAgICAgdmFyaWFibGVzOiB7XG4gICAgICAgIHBhZ2U6IDEsXG4gICAgICAgIHBlclBhZ2U6IDIwLFxuICAgICAgICBmaWx0ZXI6IHt9LFxuICAgICAgfSxcbiAgICB9KVxuXG4gIGNvbnN0IGhhbmRsZUZldGNoQ2xpZW50cyA9ICh2YWx1ZTogc3RyaW5nLCBwYWdlOiBudW1iZXIgPSAxLCBwZXJQYWdlOiBudW1iZXIgPSAyMCwgY2xpZW50U3RhdHVzSWQ6IG51bWJlciA9IDEpID0+IHtcbiAgICBjb25zdCBmaWx0ZXIgPSB2YWx1ZSA/IHsgbmFtZTogdmFsdWUsIGNsaWVudFN0YXR1c0lkOiBbY2xpZW50U3RhdHVzSWRdIH0gOiB7fVxuICAgIGZldGNoQ2xpZW50cyh7XG4gICAgICB2YXJpYWJsZXM6IHtcbiAgICAgICAgcGFnZSxcbiAgICAgICAgcGVyUGFnZSxcbiAgICAgICAgZmlsdGVyLFxuICAgICAgfSxcbiAgICB9KVxuICB9XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAobG9hZGluZ0NsaWVudHMpIHtcbiAgICAgIHNldExvYWRpbmcodHJ1ZSlcbiAgICAgIHNldEVycm9yKGZhbHNlKVxuICAgIH1cbiAgICBpZiAoY2xpZW50RXJyb3IpIHtcbiAgICAgIHNldEVycm9yKHRydWUpXG4gICAgICBzZXRMb2FkaW5nKGZhbHNlKVxuICAgIH1cbiAgfSwgW2NsaWVudEVycm9yLCBsb2FkaW5nQ2xpZW50c10pXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoY2xpZW50RGF0YT8uY2xpZW50cykge1xuICAgICAgY29uc3QgeyBkYXRhLCB0b3RhbCwgcGVyUGFnZSwgcGFnZSwgbGFzdFBhZ2UgfSA9IGNsaWVudERhdGEuY2xpZW50c1xuICAgICAgY29uc3QgbWFwcGVkQ2xpZW50cyA9IG1hcHBlckNsaWVudHNTZWFyY2goZGF0YSlcbiAgICAgIHNldHRlckRhdGEobWFwcGVkQ2xpZW50cywgZGVib3VuY2VkU2VhcmNoVmFsdWUpXG4gICAgICBzZXRQYWdpbmF0aW9uKHtcbiAgICAgICAgcGFnZTogcGFnZSB8fCAxLFxuICAgICAgICBwZXJQYWdlLFxuICAgICAgICB0b3RhbCxcbiAgICAgICAgbGFzdFBhZ2UsXG4gICAgICB9KVxuICAgICAgc2V0TG9hZGluZyhmYWxzZSlcbiAgICAgIHNldEVycm9yKGZhbHNlKVxuICAgIH1cbiAgfSwgW2NsaWVudERhdGEsIGRlYm91bmNlZFNlYXJjaFZhbHVlXSlcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChkZWJvdW5jZWRTZWFyY2hWYWx1ZS50cmltKCkpIHtcbiAgICAgIGhhbmRsZUZldGNoQ2xpZW50cyhkZWJvdW5jZWRTZWFyY2hWYWx1ZSlcbiAgICB9IGVsc2Uge1xuICAgICAgc2V0dGVyRGF0YShbXSwgJycpXG4gICAgICBzZXRMb2FkaW5nKGZhbHNlKVxuICAgICAgc2V0RXJyb3IoZmFsc2UpXG4gICAgfVxuICB9LCBbZGVib3VuY2VkU2VhcmNoVmFsdWVdKVxuXG4gIGNvbnN0IHVwZGF0ZVNlYXJjaFZhbHVlID0gKG5ld1NlYXJjaFZhbHVlOiBzdHJpbmcpID0+IHtcbiAgICBzZXRTZWFyY2hWYWx1ZShuZXdTZWFyY2hWYWx1ZSlcbiAgfVxuXG4gIGNvbnN0IGNsZWFyQ2xpZW50cyA9ICgpID0+IHtcbiAgICBzZXR0ZXJEYXRhKFtdLCAnJylcbiAgICBzZXRTZWFyY2hWYWx1ZSgnJylcbiAgICBzZXRMb2FkaW5nKGZhbHNlKVxuICAgIHNldEVycm9yKGZhbHNlKVxuICB9XG5cbiAgY29uc3QgbG9hZFBhZ2UgPSAocGFnZTogbnVtYmVyKSA9PiB7XG4gICAgaGFuZGxlRmV0Y2hDbGllbnRzKGRlYm91bmNlZFNlYXJjaFZhbHVlLCBwYWdlLCBwYWdpbmF0aW9uLnBlclBhZ2UpXG4gIH1cblxuICByZXR1cm4ge1xuICAgIGZldGNoQ2xpZW50cyxcbiAgICBjbGllbnRzTG9hZGluZzogbG9hZGluZyxcbiAgICBjbGllbnRzRXJyb3I6IGVycm9yLFxuICAgIGNsaWVudHMsXG4gICAgdXBkYXRlU2VhcmNoVmFsdWUsXG4gICAgY2xlYXJDbGllbnRzLFxuICAgIHBhZ2luYXRpb24sXG4gICAgbG9hZFBhZ2UsXG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6IjtBQUFBLFNBQVNBLFlBQVksUUFBUSxnQkFBZ0I7QUFDN0MsU0FBU0MsU0FBUyxFQUFFQyxRQUFRLFFBQVEsT0FBTztBQUMzQyxTQUFTQyxjQUFjLFFBQVEsbUJBQW1CO0FBQ2xELFNBQVNDLHdCQUF3QixRQUFRLHFCQUFxQjtBQUM5RCxTQUFTQyxXQUFXLFFBQVEsZUFBZTtBQXlCM0MsSUFBTUMsbUJBQW1CLEdBQUcsU0FBdEJBLG1CQUFtQkEsQ0FBSUMsTUFBdUIsRUFBc0I7RUFDeEUsT0FBT0EsTUFBTSxhQUFOQSxNQUFNLHVCQUFOQSxNQUFNLENBQUVDLEdBQUcsQ0FBQyxVQUFBQyxLQUFLO0lBQUEsT0FBSztNQUMzQkMsRUFBRSxFQUFFRCxLQUFLLENBQUNDLEVBQUU7TUFDWkMsSUFBSSxFQUFFRixLQUFLLENBQUNFO0lBQ2QsQ0FBQztFQUFBLENBQUMsQ0FBQztBQUNMLENBQUM7QUFFRCxPQUFPLElBQU1DLG1CQUFtQixHQUFHLFNBQXRCQSxtQkFBbUJBLENBQUEsRUFBUztFQUN2QyxJQUFBQyxTQUFBLEdBQThCWCxRQUFRLENBQWlCLEVBQUUsQ0FBQztJQUFBWSxVQUFBLEdBQUFDLGNBQUEsQ0FBQUYsU0FBQTtJQUFuREcsT0FBTyxHQUFBRixVQUFBO0lBQUVHLFVBQVUsR0FBQUgsVUFBQTtFQUUxQixJQUFNSSxVQUFVLEdBQUcsU0FBYkEsVUFBVUEsQ0FBSUMsSUFBcUIsRUFBRUMsV0FBb0Is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
|
|
135
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VMYXp5UXVlcnkiLCJ1c2VFZmZlY3QiLCJ1c2VTdGF0ZSIsIlNFQVJDSF9DTElFTlRTIiwiU0VBUkNIX1FVRVJZX0RFQk9VTkNFX01TIiwidXNlRGVib3VuY2UiLCJidWlsZENsaWVudFNlYXJjaEZpbHRlciIsIm1hcEdyYXBocWxDbGllbnRzVG9TZXR0ZXJzIiwibWFwcGVyQ2xpZW50c1NlYXJjaCIsIkRhdGFQYXJzZWRUb0NsaWVudHMiLCJfdXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkiLCJjbGllbnRzIiwic2V0Q2xpZW50cyIsInNldHRlckRhdGEiLCJhcmdzIiwic2VhcmNoVmFsdWUiLCJsZW5ndGgiLCJ1c2VDbGllbnRTZWFyY2giLCJfRGF0YVBhcnNlZFRvQ2xpZW50cyIsIl91c2VTdGF0ZTMiLCJfdXNlU3RhdGU0IiwibG9hZGluZyIsInNldExvYWRpbmciLCJfdXNlU3RhdGU1IiwiX3VzZVN0YXRlNiIsImVycm9yIiwic2V0RXJyb3IiLCJfdXNlU3RhdGU3IiwiX3VzZVN0YXRlOCIsInNldFNlYXJjaFZhbHVlIiwiX3VzZVN0YXRlOSIsInBhZ2UiLCJwZXJQYWdlIiwidG90YWwiLCJsYXN0UGFnZSIsIl91c2VTdGF0ZTAiLCJwYWdpbmF0aW9uIiwic2V0UGFnaW5hdGlvbiIsImRlYm91bmNlZFNlYXJjaFZhbHVlIiwiX3VzZUxhenlRdWVyeSIsInZhcmlhYmxlcyIsImZpbHRlciIsIl91c2VMYXp5UXVlcnkyIiwiZmV0Y2hDbGllbnRzIiwiX3VzZUxhenlRdWVyeTIkIiwiY2xpZW50RGF0YSIsImRhdGEiLCJsb2FkaW5nQ2xpZW50cyIsImNsaWVudEVycm9yIiwiaGFuZGxlRmV0Y2hDbGllbnRzIiwidmFsdWUiLCJhcmd1bWVudHMiLCJ1bmRlZmluZWQiLCJjbGllbnRTdGF0dXNJZCIsIl9jbGllbnREYXRhJGNsaWVudHMiLCJtYXBwZWRDbGllbnRzIiwidHJpbSIsInVwZGF0ZVNlYXJjaFZhbHVlIiwibmV3U2VhcmNoVmFsdWUiLCJjbGVhckNsaWVudHMiLCJsb2FkUGFnZSIsImNsaWVudHNMb2FkaW5nIiwiY2xpZW50c0Vycm9yIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hvb2tzL3VzZUNsaWVudFNlYXJjaC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1c2VMYXp5UXVlcnkgfSBmcm9tICdAYXBvbGxvL2NsaWVudCdcbmltcG9ydCB7IHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IFNFQVJDSF9DTElFTlRTIH0gZnJvbSAnLi4vc2VydmljZXMvcXVlcnknXG5pbXBvcnQgeyBTRUFSQ0hfUVVFUllfREVCT1VOQ0VfTVMgfSBmcm9tICcuLi9jb25zdGFudHMvY29uZmlnJ1xuaW1wb3J0IHsgdXNlRGVib3VuY2UgfSBmcm9tICcuL3VzZURlYm91bmNlJ1xuaW1wb3J0IHsgYnVpbGRDbGllbnRTZWFyY2hGaWx0ZXIsIG1hcEdyYXBocWxDbGllbnRzVG9TZXR0ZXJzLCBtYXBwZXJDbGllbnRzU2VhcmNoIH0gZnJvbSAnLi91c2VDbGllbnRTZWFyY2guaGVscGVycydcblxuZXhwb3J0IHR5cGUgQ2xpZW50R3JhcGhRTCA9IHtcbiAgaWQ6IHN0cmluZ1xuICBuYW1lOiBzdHJpbmdcbiAgY2xpZW50U3RhdHVzSWQ/OiBudW1iZXJbXVxufVxuXG5leHBvcnQgdHlwZSBDbGllbnRTZXR0ZXIgPSB7XG4gIGlkOiBzdHJpbmdcbiAgbmFtZTogc3RyaW5nXG4gIHRpdGxlOiBzdHJpbmdcbiAgY2xpZW50U3RhdHVzSWQ/OiBudW1iZXJbXVxufVxuXG50eXBlIFF1ZXJ5Q2xpZW50RGF0YSA9IHtcbiAgY2xpZW50czoge1xuICAgIHRvdGFsOiBudW1iZXJcbiAgICBwZXJQYWdlOiBudW1iZXJcbiAgICBwYWdlOiBudW1iZXIgfCBudWxsXG4gICAgbGFzdFBhZ2U6IG51bWJlclxuICAgIGRhdGE6IENsaWVudEdyYXBoUUxbXVxuICB9XG59XG5cbmV4cG9ydCBjb25zdCBEYXRhUGFyc2VkVG9DbGllbnRzID0gKCkgPT4ge1xuICBjb25zdCBbY2xpZW50cywgc2V0Q2xpZW50c10gPSB1c2VTdGF0ZTxDbGllbnRTZXR0ZXJbXT4oW10pXG5cbiAgY29uc3Qgc2V0dGVyRGF0YSA9IChhcmdzOiBDbGllbnRHcmFwaFFMW10sIHNlYXJjaFZhbHVlPzogc3RyaW5nKSA9PiB7XG4gICAgc2V0Q2xpZW50cyhhcmdzLmxlbmd0aCA/IG1hcEdyYXBocWxDbGllbnRzVG9TZXR0ZXJzKGFyZ3MsIHNlYXJjaFZhbHVlKSA6IFtdKVxuICB9XG4gIHJldHVybiB7IGNsaWVudHMsIHNldHRlckRhdGEgfVxufVxuXG5leHBvcnQgY29uc3QgdXNlQ2xpZW50U2VhcmNoID0gKCkgPT4ge1xuICBjb25zdCB7IGNsaWVudHMsIHNldHRlckRhdGEgfSA9IERhdGFQYXJzZWRUb0NsaWVudHMoKVxuICBjb25zdCBbbG9hZGluZywgc2V0TG9hZGluZ10gPSB1c2VTdGF0ZShmYWxzZSlcbiAgY29uc3QgW2Vycm9yLCBzZXRFcnJvcl0gPSB1c2VTdGF0ZShmYWxzZSlcbiAgY29uc3QgW3NlYXJjaFZhbHVlLCBzZXRTZWFyY2hWYWx1ZV0gPSB1c2VTdGF0ZSgnJylcbiAgY29uc3QgW3BhZ2luYXRpb24sIHNldFBhZ2luYXRpb25dID0gdXNlU3RhdGUoe1xuICAgIHBhZ2U6IDEsXG4gICAgcGVyUGFnZTogMjAsXG4gICAgdG90YWw6IDAsXG4gICAgbGFzdFBhZ2U6IDAsXG4gIH0pXG5cbiAgY29uc3QgZGVib3VuY2VkU2VhcmNoVmFsdWUgPSB1c2VEZWJvdW5jZShzZWFyY2hWYWx1ZSwgU0VBUkNIX1FVRVJZX0RFQk9VTkNFX01TKVxuXG4gIGNvbnN0IFtmZXRjaENsaWVudHMsIHsgZGF0YTogY2xpZW50RGF0YSwgbG9hZGluZzogbG9hZGluZ0NsaWVudHMsIGVycm9yOiBjbGllbnRFcnJvciB9XSA9XG4gICAgdXNlTGF6eVF1ZXJ5PFF1ZXJ5Q2xpZW50RGF0YT4oU0VBUkNIX0NMSUVOVFMsIHtcbiAgICAgIHZhcmlhYmxlczoge1xuICAgICAgICBwYWdlOiAxLFxuICAgICAgICBwZXJQYWdlOiAyMCxcbiAgICAgICAgZmlsdGVyOiB7fSxcbiAgICAgIH0sXG4gICAgfSlcblxuICBjb25zdCBoYW5kbGVGZXRjaENsaWVudHMgPSAodmFsdWU6IHN0cmluZywgcGFnZTogbnVtYmVyID0gMSwgcGVyUGFnZTogbnVtYmVyID0gMjAsIGNsaWVudFN0YXR1c0lkOiBudW1iZXIgPSAxKSA9PiB7XG4gICAgY29uc3QgZmlsdGVyID0gYnVpbGRDbGllbnRTZWFyY2hGaWx0ZXIodmFsdWUsIGNsaWVudFN0YXR1c0lkKVxuICAgIGZldGNoQ2xpZW50cyh7XG4gICAgICB2YXJpYWJsZXM6IHtcbiAgICAgICAgcGFnZSxcbiAgICAgICAgcGVyUGFnZSxcbiAgICAgICAgZmlsdGVyLFxuICAgICAgfSxcbiAgICB9KVxuICB9XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAobG9hZGluZ0NsaWVudHMpIHtcbiAgICAgIHNldExvYWRpbmcodHJ1ZSlcbiAgICAgIHNldEVycm9yKGZhbHNlKVxuICAgIH1cbiAgICBpZiAoY2xpZW50RXJyb3IpIHtcbiAgICAgIHNldEVycm9yKHRydWUpXG4gICAgICBzZXRMb2FkaW5nKGZhbHNlKVxuICAgIH1cbiAgfSwgW2NsaWVudEVycm9yLCBsb2FkaW5nQ2xpZW50c10pXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoY2xpZW50RGF0YT8uY2xpZW50cykge1xuICAgICAgY29uc3QgeyBkYXRhLCB0b3RhbCwgcGVyUGFnZSwgcGFnZSwgbGFzdFBhZ2UgfSA9IGNsaWVudERhdGEuY2xpZW50c1xuICAgICAgY29uc3QgbWFwcGVkQ2xpZW50cyA9IG1hcHBlckNsaWVudHNTZWFyY2goZGF0YSlcbiAgICAgIHNldHRlckRhdGEobWFwcGVkQ2xpZW50cywgZGVib3VuY2VkU2VhcmNoVmFsdWUpXG4gICAgICBzZXRQYWdpbmF0aW9uKHtcbiAgICAgICAgcGFnZTogcGFnZSB8fCAxLFxuICAgICAgICBwZXJQYWdlLFxuICAgICAgICB0b3RhbCxcbiAgICAgICAgbGFzdFBhZ2UsXG4gICAgICB9KVxuICAgICAgc2V0TG9hZGluZyhmYWxzZSlcbiAgICAgIHNldEVycm9yKGZhbHNlKVxuICAgIH1cbiAgfSwgW2NsaWVudERhdGEsIGRlYm91bmNlZFNlYXJjaFZhbHVlXSlcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChkZWJvdW5jZWRTZWFyY2hWYWx1ZS50cmltKCkpIHtcbiAgICAgIGhhbmRsZUZldGNoQ2xpZW50cyhkZWJvdW5jZWRTZWFyY2hWYWx1ZSlcbiAgICB9IGVsc2Uge1xuICAgICAgc2V0dGVyRGF0YShbXSwgJycpXG4gICAgICBzZXRMb2FkaW5nKGZhbHNlKVxuICAgICAgc2V0RXJyb3IoZmFsc2UpXG4gICAgfVxuICB9LCBbZGVib3VuY2VkU2VhcmNoVmFsdWVdKVxuXG4gIGNvbnN0IHVwZGF0ZVNlYXJjaFZhbHVlID0gKG5ld1NlYXJjaFZhbHVlOiBzdHJpbmcpID0+IHtcbiAgICBzZXRTZWFyY2hWYWx1ZShuZXdTZWFyY2hWYWx1ZSlcbiAgfVxuXG4gIGNvbnN0IGNsZWFyQ2xpZW50cyA9ICgpID0+IHtcbiAgICBzZXR0ZXJEYXRhKFtdLCAnJylcbiAgICBzZXRTZWFyY2hWYWx1ZSgnJylcbiAgICBzZXRMb2FkaW5nKGZhbHNlKVxuICAgIHNldEVycm9yKGZhbHNlKVxuICB9XG5cbiAgY29uc3QgbG9hZFBhZ2UgPSAocGFnZTogbnVtYmVyKSA9PiB7XG4gICAgaGFuZGxlRmV0Y2hDbGllbnRzKGRlYm91bmNlZFNlYXJjaFZhbHVlLCBwYWdlLCBwYWdpbmF0aW9uLnBlclBhZ2UpXG4gIH1cblxuICByZXR1cm4ge1xuICAgIGZldGNoQ2xpZW50cyxcbiAgICBjbGllbnRzTG9hZGluZzogbG9hZGluZyxcbiAgICBjbGllbnRzRXJyb3I6IGVycm9yLFxuICAgIGNsaWVudHMsXG4gICAgdXBkYXRlU2VhcmNoVmFsdWUsXG4gICAgY2xlYXJDbGllbnRzLFxuICAgIHBhZ2luYXRpb24s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
|
|
@@ -0,0 +1,212 @@
|
|
|
1
|
+
import { serializeMention } from '../utils/renderContextMentions';
|
|
2
|
+
import { serializeSlashCommand } from '../utils/slashCommandMarker';
|
|
3
|
+
export var computeActiveTriggerQueryLength = function computeActiveTriggerQueryLength(atRunLength, queryLength) {
|
|
4
|
+
var currentRunLen = Math.abs(atRunLength);
|
|
5
|
+
var currentHasSlash = atRunLength < 0;
|
|
6
|
+
return currentRunLen + (currentHasSlash ? 1 : 0) + queryLength;
|
|
7
|
+
};
|
|
8
|
+
export var serializeEditorContent = function serializeEditorContent(el) {
|
|
9
|
+
if (!el) return {
|
|
10
|
+
text: '',
|
|
11
|
+
mentions: [],
|
|
12
|
+
slashCommands: []
|
|
13
|
+
};
|
|
14
|
+
var mentions = [];
|
|
15
|
+
var slashCommands = [];
|
|
16
|
+
var text = '';
|
|
17
|
+
var _walk = function walk(node) {
|
|
18
|
+
if (node.nodeType === Node.TEXT_NODE) {
|
|
19
|
+
text += node.data;
|
|
20
|
+
return;
|
|
21
|
+
}
|
|
22
|
+
if (node.nodeType === Node.ELEMENT_NODE) {
|
|
23
|
+
var _elNode$dataset, _elNode$dataset2;
|
|
24
|
+
var elNode = node;
|
|
25
|
+
if (((_elNode$dataset = elNode.dataset) === null || _elNode$dataset === void 0 ? void 0 : _elNode$dataset.mention) === 'true') {
|
|
26
|
+
var _elNode$dataset$menti, _ref, _ref2, _elNode$dataset$menti2;
|
|
27
|
+
var mention = {
|
|
28
|
+
id: (_elNode$dataset$menti = elNode.dataset.mentionId) !== null && _elNode$dataset$menti !== void 0 ? _elNode$dataset$menti : '',
|
|
29
|
+
type: (_ref = elNode.dataset.mentionType) !== null && _ref !== void 0 ? _ref : 'user',
|
|
30
|
+
label: (_ref2 = (_elNode$dataset$menti2 = elNode.dataset.mentionLabel) !== null && _elNode$dataset$menti2 !== void 0 ? _elNode$dataset$menti2 : elNode.textContent) !== null && _ref2 !== void 0 ? _ref2 : ''
|
|
31
|
+
};
|
|
32
|
+
mentions.push(mention);
|
|
33
|
+
text += serializeMention(mention);
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
if (((_elNode$dataset2 = elNode.dataset) === null || _elNode$dataset2 === void 0 ? void 0 : _elNode$dataset2.slashCommand) === 'true') {
|
|
37
|
+
var _elNode$dataset$slash, _ref3, _elNode$dataset$slash2, _elNode$textContent;
|
|
38
|
+
var slash = {
|
|
39
|
+
id: (_elNode$dataset$slash = elNode.dataset.slashId) !== null && _elNode$dataset$slash !== void 0 ? _elNode$dataset$slash : '',
|
|
40
|
+
label: (_ref3 = (_elNode$dataset$slash2 = elNode.dataset.slashLabel) !== null && _elNode$dataset$slash2 !== void 0 ? _elNode$dataset$slash2 : (_elNode$textContent = elNode.textContent) === null || _elNode$textContent === void 0 ? void 0 : _elNode$textContent.replace(/^\//, '')) !== null && _ref3 !== void 0 ? _ref3 : ''
|
|
41
|
+
};
|
|
42
|
+
slashCommands.push(slash);
|
|
43
|
+
text += serializeSlashCommand(slash);
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
if (elNode.tagName === 'BR') {
|
|
47
|
+
text += '\n';
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
elNode.childNodes.forEach(_walk);
|
|
51
|
+
if (elNode.tagName === 'DIV' || elNode.tagName === 'P') text += '\n';
|
|
52
|
+
}
|
|
53
|
+
};
|
|
54
|
+
el.childNodes.forEach(_walk);
|
|
55
|
+
return {
|
|
56
|
+
text: text.replace(/\n+$/, ''),
|
|
57
|
+
mentions: mentions,
|
|
58
|
+
slashCommands: slashCommands
|
|
59
|
+
};
|
|
60
|
+
};
|
|
61
|
+
export var detectMentionTrigger = function detectMentionTrigger(editorEl, range) {
|
|
62
|
+
if (!editorEl || !editorEl.contains(range.startContainer)) {
|
|
63
|
+
return {
|
|
64
|
+
active: false,
|
|
65
|
+
query: '',
|
|
66
|
+
atRunLength: 0,
|
|
67
|
+
anchor: null
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
var node = range.startContainer;
|
|
71
|
+
if (node.nodeType !== Node.TEXT_NODE) {
|
|
72
|
+
return {
|
|
73
|
+
active: false,
|
|
74
|
+
query: '',
|
|
75
|
+
atRunLength: 0,
|
|
76
|
+
anchor: null
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
var text = node.data;
|
|
80
|
+
var caret = range.startOffset;
|
|
81
|
+
var i = caret - 1;
|
|
82
|
+
if (i < 0) {
|
|
83
|
+
return {
|
|
84
|
+
active: false,
|
|
85
|
+
query: '',
|
|
86
|
+
atRunLength: 0,
|
|
87
|
+
anchor: null
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
while (i >= 0 && text[i] !== '@') i -= 1;
|
|
91
|
+
if (i < 0 || text[i] !== '@') {
|
|
92
|
+
return {
|
|
93
|
+
active: false,
|
|
94
|
+
query: '',
|
|
95
|
+
atRunLength: 0,
|
|
96
|
+
anchor: null
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
var runEnd = i;
|
|
100
|
+
while (i >= 0 && text[i] === '@') {
|
|
101
|
+
i -= 1;
|
|
102
|
+
}
|
|
103
|
+
var runStart = i + 1;
|
|
104
|
+
var atRunLength = runEnd - runStart + 1;
|
|
105
|
+
var prev = runStart > 0 ? text.charAt(runStart - 1) : '';
|
|
106
|
+
var isBoundary = !prev || /[\s([{]/.test(prev);
|
|
107
|
+
if (!isBoundary) {
|
|
108
|
+
return {
|
|
109
|
+
active: false,
|
|
110
|
+
query: '',
|
|
111
|
+
atRunLength: 0,
|
|
112
|
+
anchor: null
|
|
113
|
+
};
|
|
114
|
+
}
|
|
115
|
+
var hasSlashSuffix = text[runEnd + 1] === '/';
|
|
116
|
+
var queryStart = hasSlashSuffix ? runEnd + 2 : runEnd + 1;
|
|
117
|
+
var query = text.slice(queryStart, caret);
|
|
118
|
+
if (/\n|\r/.test(query)) {
|
|
119
|
+
return {
|
|
120
|
+
active: false,
|
|
121
|
+
query: '',
|
|
122
|
+
atRunLength: 0,
|
|
123
|
+
anchor: null
|
|
124
|
+
};
|
|
125
|
+
}
|
|
126
|
+
if (query.includes(' ')) {
|
|
127
|
+
return {
|
|
128
|
+
active: false,
|
|
129
|
+
query: '',
|
|
130
|
+
atRunLength: 0,
|
|
131
|
+
anchor: null
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
return {
|
|
135
|
+
active: true,
|
|
136
|
+
query: query,
|
|
137
|
+
atRunLength: hasSlashSuffix ? -atRunLength : atRunLength,
|
|
138
|
+
anchor: {
|
|
139
|
+
node: node,
|
|
140
|
+
offset: runStart
|
|
141
|
+
}
|
|
142
|
+
};
|
|
143
|
+
};
|
|
144
|
+
export var detectCharTrigger = function detectCharTrigger(editorEl, range, _char) {
|
|
145
|
+
if (!editorEl || !editorEl.contains(range.startContainer)) {
|
|
146
|
+
return {
|
|
147
|
+
active: false,
|
|
148
|
+
query: '',
|
|
149
|
+
anchor: null
|
|
150
|
+
};
|
|
151
|
+
}
|
|
152
|
+
var node = range.startContainer;
|
|
153
|
+
if (node.nodeType !== Node.TEXT_NODE) {
|
|
154
|
+
return {
|
|
155
|
+
active: false,
|
|
156
|
+
query: '',
|
|
157
|
+
anchor: null
|
|
158
|
+
};
|
|
159
|
+
}
|
|
160
|
+
var text = node.data;
|
|
161
|
+
var caret = range.startOffset;
|
|
162
|
+
var i = caret - 1;
|
|
163
|
+
if (i < 0) {
|
|
164
|
+
return {
|
|
165
|
+
active: false,
|
|
166
|
+
query: '',
|
|
167
|
+
anchor: null
|
|
168
|
+
};
|
|
169
|
+
}
|
|
170
|
+
while (i >= 0 && text[i] !== _char) i -= 1;
|
|
171
|
+
if (i < 0 || text[i] !== _char) {
|
|
172
|
+
return {
|
|
173
|
+
active: false,
|
|
174
|
+
query: '',
|
|
175
|
+
anchor: null
|
|
176
|
+
};
|
|
177
|
+
}
|
|
178
|
+
var triggerIndex = i;
|
|
179
|
+
var prev = triggerIndex > 0 ? text.charAt(triggerIndex - 1) : '';
|
|
180
|
+
var isBoundary = !prev || /[\s([{]/.test(prev);
|
|
181
|
+
if (!isBoundary) {
|
|
182
|
+
return {
|
|
183
|
+
active: false,
|
|
184
|
+
query: '',
|
|
185
|
+
anchor: null
|
|
186
|
+
};
|
|
187
|
+
}
|
|
188
|
+
var query = text.slice(triggerIndex + 1, caret);
|
|
189
|
+
if (/\n|\r/.test(query)) {
|
|
190
|
+
return {
|
|
191
|
+
active: false,
|
|
192
|
+
query: '',
|
|
193
|
+
anchor: null
|
|
194
|
+
};
|
|
195
|
+
}
|
|
196
|
+
if (query.includes(' ')) {
|
|
197
|
+
return {
|
|
198
|
+
active: false,
|
|
199
|
+
query: '',
|
|
200
|
+
anchor: null
|
|
201
|
+
};
|
|
202
|
+
}
|
|
203
|
+
return {
|
|
204
|
+
active: true,
|
|
205
|
+
query: query,
|
|
206
|
+
anchor: {
|
|
207
|
+
node: node,
|
|
208
|
+
offset: triggerIndex
|
|
209
|
+
}
|
|
210
|
+
};
|
|
211
|
+
};
|
|
212
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJzZXJpYWxpemVNZW50aW9uIiwic2VyaWFsaXplU2xhc2hDb21tYW5kIiwiY29tcHV0ZUFjdGl2ZVRyaWdnZXJRdWVyeUxlbmd0aCIsImF0UnVuTGVuZ3RoIiwicXVlcnlMZW5ndGgiLCJjdXJyZW50UnVuTGVuIiwiTWF0aCIsImFicyIsImN1cnJlbnRIYXNTbGFzaCIsInNlcmlhbGl6ZUVkaXRvckNvbnRlbnQiLCJlbCIsInRleHQiLCJtZW50aW9ucyIsInNsYXNoQ29tbWFuZHMiLCJ3YWxrIiwibm9kZSIsIm5vZGVUeXBlIiwiTm9kZSIsIlRFWFRfTk9ERSIsImRhdGEiLCJFTEVNRU5UX05PREUiLCJfZWxOb2RlJGRhdGFzZXQiLCJfZWxOb2RlJGRhdGFzZXQyIiwiZWxOb2RlIiwiZGF0YXNldCIsIm1lbnRpb24iLCJfZWxOb2RlJGRhdGFzZXQkbWVudGkiLCJfcmVmIiwiX3JlZjIiLCJfZWxOb2RlJGRhdGFzZXQkbWVudGkyIiwiaWQiLCJtZW50aW9uSWQiLCJ0eXBlIiwibWVudGlvblR5cGUiLCJsYWJlbCIsIm1lbnRpb25MYWJlbCIsInRleHRDb250ZW50IiwicHVzaCIsInNsYXNoQ29tbWFuZCIsIl9lbE5vZGUkZGF0YXNldCRzbGFzaCIsIl9yZWYzIiwiX2VsTm9kZSRkYXRhc2V0JHNsYXNoMiIsIl9lbE5vZGUkdGV4dENvbnRlbnQiLCJzbGFzaCIsInNsYXNoSWQiLCJzbGFzaExhYmVsIiwicmVwbGFjZSIsInRhZ05hbWUiLCJjaGlsZE5vZGVzIiwiZm9yRWFjaCIsImRldGVjdE1lbnRpb25UcmlnZ2VyIiwiZWRpdG9yRWwiLCJyYW5nZSIsImNvbnRhaW5zIiwic3RhcnRDb250YWluZXIiLCJhY3RpdmUiLCJxdWVyeSIsImFuY2hvciIsImNhcmV0Iiwic3RhcnRPZmZzZXQiLCJpIiwicnVuRW5kIiwicnVuU3RhcnQiLCJwcmV2IiwiY2hhckF0IiwiaXNCb3VuZGFyeSIsInRlc3QiLCJoYXNTbGFzaFN1ZmZpeCIsInF1ZXJ5U3RhcnQiLCJzbGljZSIsImluY2x1ZGVzIiwib2Zmc2V0IiwiZGV0ZWN0Q2hhclRyaWdnZXIiLCJjaGFyIiwidHJpZ2dlckluZGV4Il0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hvb2tzL3VzZUNvbnRleHRNZW50aW9ucy5oZWxwZXJzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgU2xhc2hDb21tYW5kQ2hpcERhdGEgfSBmcm9tICcuLi9jb21wb25lbnRzL2F0b21zL1NsYXNoQ29tbWFuZENoaXAvYnVpbGRTbGFzaENoaXBFbGVtZW50J1xuaW1wb3J0IHsgQ29udGV4dE1lbnRpb24gfSBmcm9tICcuLi90eXBlcy9jb250ZXh0TWVudGlvbidcbmltcG9ydCB7IHNlcmlhbGl6ZU1lbnRpb24gfSBmcm9tICcuLi91dGlscy9yZW5kZXJDb250ZXh0TWVudGlvbnMnXG5pbXBvcnQgeyBzZXJpYWxpemVTbGFzaENvbW1hbmQgfSBmcm9tICcuLi91dGlscy9zbGFzaENvbW1hbmRNYXJrZXInXG5pbXBvcnQgdHlwZSB7IE1lbnRpb25UcmlnZ2VyU3RhdGUsIFNsYXNoVHJpZ2dlclN0YXRlIH0gZnJvbSAnLi91c2VDb250ZXh0TWVudGlvbnMudHlwZXMnXG5cbmV4cG9ydCBjb25zdCBjb21wdXRlQWN0aXZlVHJpZ2dlclF1ZXJ5TGVuZ3RoID0gKGF0UnVuTGVuZ3RoOiBudW1iZXIsIHF1ZXJ5TGVuZ3RoOiBudW1iZXIpOiBudW1iZXIgPT4ge1xuICBjb25zdCBjdXJyZW50UnVuTGVuID0gTWF0aC5hYnMoYXRSdW5MZW5ndGgpXG4gIGNvbnN0IGN1cnJlbnRIYXNTbGFzaCA9IGF0UnVuTGVuZ3RoIDwgMFxuICByZXR1cm4gY3VycmVudFJ1bkxlbiArIChjdXJyZW50SGFzU2xhc2ggPyAxIDogMCkgKyBxdWVyeUxlbmd0aFxufVxuXG5leHBvcnQgdHlwZSBTZXJpYWxpemVkRWRpdG9yQ29udGVudCA9IHtcbiAgdGV4dDogc3RyaW5nXG4gIG1lbnRpb25zOiBDb250ZXh0TWVudGlvbltdXG4gIHNsYXNoQ29tbWFuZHM6IFNsYXNoQ29tbWFuZENoaXBEYXRhW11cbn1cblxuZXhwb3J0IGNvbnN0IHNlcmlhbGl6ZUVkaXRvckNvbnRlbnQgPSAoZWw6IEhUTUxFbGVtZW50IHwgbnVsbCk6IFNlcmlhbGl6ZWRFZGl0b3JDb250ZW50ID0+IHtcbiAgaWYgKCFlbCkgcmV0dXJuIHsgdGV4dDogJycsIG1lbnRpb25zOiBbXSwgc2xhc2hDb21tYW5kczogW10gfVxuICBjb25zdCBtZW50aW9uczogQ29udGV4dE1lbnRpb25bXSA9IFtdXG4gIGNvbnN0IHNsYXNoQ29tbWFuZHM6IFNsYXNoQ29tbWFuZENoaXBEYXRhW10gPSBbXVxuICBsZXQgdGV4dCA9ICcnXG5cbiAgY29uc3Qgd2FsayA9IChub2RlOiBOb2RlKSA9PiB7XG4gICAgaWYgKG5vZGUubm9kZVR5cGUgPT09IE5vZGUuVEVYVF9OT0RFKSB7XG4gICAgICB0ZXh0ICs9IChub2RlIGFzIFRleHQpLmRhdGFcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICBpZiAobm9kZS5ub2RlVHlwZSA9PT0gTm9kZS5FTEVNRU5UX05PREUpIHtcbiAgICAgIGNvbnN0IGVsTm9kZSA9IG5vZGUgYXMgSFRNTEVsZW1lbnRcbiAgICAgIGlmIChlbE5vZGUuZGF0YXNldD8ubWVudGlvbiA9PT0gJ3RydWUnKSB7XG4gICAgICAgIGNvbnN0IG1lbnRpb246IENvbnRleHRNZW50aW9uID0ge1xuICAgICAgICAgIGlkOiBlbE5vZGUuZGF0YXNldC5tZW50aW9uSWQgPz8gJycsXG4gICAgICAgICAgdHlwZTogKGVsTm9kZS5kYXRhc2V0Lm1lbnRpb25UeXBlIGFzIENvbnRleHRNZW50aW9uWyd0eXBlJ10pID8/ICd1c2VyJyxcbiAgICAgICAgICBsYWJlbDogZWxOb2RlLmRhdGFzZXQubWVudGlvbkxhYmVsID8/IGVsTm9kZS50ZXh0Q29udGVudCA/PyAnJyxcbiAgICAgICAgfVxuICAgICAgICBtZW50aW9ucy5wdXNoKG1lbnRpb24pXG4gICAgICAgIHRleHQgKz0gc2VyaWFsaXplTWVudGlvbihtZW50aW9uKVxuICAgICAgICByZXR1cm5cbiAgICAgIH1cbiAgICAgIGlmIChlbE5vZGUuZGF0YXNldD8uc2xhc2hDb21tYW5kID09PSAndHJ1ZScpIHtcbiAgICAgICAgY29uc3Qgc2xhc2g6IFNsYXNoQ29tbWFuZENoaXBEYXRhID0ge1xuICAgICAgICAgIGlkOiBlbE5vZGUuZGF0YXNldC5zbGFzaElkID8/ICcnLFxuICAgICAgICAgIGxhYmVsOiBlbE5vZGUuZGF0YXNldC5zbGFzaExhYmVsID8/IGVsTm9kZS50ZXh0Q29udGVudD8ucmVwbGFjZSgvXlxcLy8sICcnKSA/PyAnJyxcbiAgICAgICAgfVxuICAgICAgICBzbGFzaENvbW1hbmRzLnB1c2goc2xhc2gpXG4gICAgICAgIHRleHQgKz0gc2VyaWFsaXplU2xhc2hDb21tYW5kKHNsYXNoKVxuICAgICAgICByZXR1cm5cbiAgICAgIH1cbiAgICAgIGlmIChlbE5vZGUudGFnTmFtZSA9PT0gJ0JSJykge1xuICAgICAgICB0ZXh0ICs9ICdcXG4nXG4gICAgICAgIHJldHVyblxuICAgICAgfVxuICAgICAgZWxOb2RlLmNoaWxkTm9kZXMuZm9yRWFjaCh3YWxrKVxuICAgICAgaWYgKGVsTm9kZS50YWdOYW1lID09PSAnRElWJyB8fCBlbE5vZGUudGFnTmFtZSA9PT0gJ1AnKSB0ZXh0ICs9ICdcXG4nXG4gICAgfVxuICB9XG5cbiAgZWwuY2hpbGROb2Rlcy5mb3JFYWNoKHdhbGspXG4gIHJldHVybiB7IHRleHQ6IHRleHQucmVwbGFjZSgvXFxuKyQvLCAnJyksIG1lbnRpb25zLCBzbGFzaENvbW1hbmRzIH1cbn1cblxuZXhwb3J0IGNvbnN0IGRldGVjdE1lbnRpb25UcmlnZ2VyID0gKGVkaXRvckVsOiBIVE1MRWxlbWVudCB8IG51bGwsIHJhbmdlOiBSYW5nZSk6IE1lbnRpb25UcmlnZ2VyU3RhdGUgPT4ge1xuICBpZiAoIWVkaXRvckVsIHx8ICFlZGl0b3JFbC5jb250YWlucyhyYW5nZS5zdGFydENvbnRhaW5lcikpIHtcbiAgICByZXR1cm4geyBhY3RpdmU6IGZhbHNlLCBxdWVyeTogJycsIGF0UnVuTGVuZ3RoOiAwLCBhbmNob3I6IG51bGwgfVxuICB9XG4gIGNvbnN0IG5vZGUgPSByYW5nZS5zdGFydENvbnRhaW5lclxuICBpZiAobm9kZS5ub2RlVHlwZSAhPT0gTm9kZS5URVhUX05PREUpIHtcbiAgICByZXR1cm4geyBhY3RpdmU6IGZhbHNlLCBxdWVyeTogJycsIGF0UnVuTGVuZ3RoOiAwLCBhbmNob3I6IG51bGwgfVxuICB9XG4gIGNvbnN0IHRleHQgPSAobm9kZSBhcyBUZXh0KS5kYXRhXG4gIGNvbnN0IGNhcmV0ID0gcmFuZ2Uuc3RhcnRPZmZzZXRcbiAgbGV0IGkgPSBjYXJldCAtIDFcbiAgaWYgKGkgPCAwKSB7XG4gICAgcmV0dXJuIHsgYWN0aXZlOiBmYWxzZSwgcXVlcnk6ICcnLCBhdFJ1bkxlbmd0aDogMCwgYW5jaG9yOiBudWxsIH1cbiAgfVxuXG4gIHdoaWxlIChpID49IDAgJiYgdGV4dFtpXSAhPT0gJ0AnKSBpIC09IDFcbiAgaWYgKGkgPCAwIHx8IHRleHRbaV0gIT09ICdAJykge1xuICAgIHJldHVybiB7IGFjdGl2ZTogZmFsc2UsIHF1ZXJ5OiAnJywgYXRSdW5MZW5ndGg6IDAsIGFuY2hvcjogbnVsbCB9XG4gIH1cblxuICBjb25zdCBydW5FbmQgPSBpXG4gIHdoaWxlIChpID49IDAgJiYgdGV4dFtpXSA9PT0gJ0AnKSB7XG4gICAgaSAtPSAxXG4gIH1cbiAgY29uc3QgcnVuU3RhcnQgPSBpICsgMVxuICBjb25zdCBhdFJ1bkxlbmd0aCA9IHJ1bkVuZCAtIHJ1blN0YXJ0ICsgMVxuICBjb25zdCBwcmV2ID0gcnVuU3RhcnQgPiAwID8gdGV4dC5jaGFyQXQocnVuU3RhcnQgLSAxKSA6ICcnXG4gIGNvbnN0IGlzQm91bmRhcnkgPSAhcHJldiB8fCAvW1xccyhbe10vLnRlc3QocHJldilcbiAgaWYgKCFpc0JvdW5kYXJ5KSB7XG4gICAgcmV0dXJuIHsgYWN0aXZlOiBmYWxzZSwgcXVlcnk6ICcnLCBhdFJ1bkxlbmd0aDogMCwgYW5jaG9yOiBudWxsIH1cbiAgfVxuXG4gIGNvbnN0IGhhc1NsYXNoU3VmZml4ID0gdGV4dFtydW5FbmQgKyAxXSA9PT0gJy8nXG4gIGNvbnN0IHF1ZXJ5U3RhcnQgPSBoYXNTbGFzaFN1ZmZpeCA/IHJ1bkVuZCArIDIgOiBydW5FbmQgKyAxXG4gIGNvbnN0IHF1ZXJ5ID0gdGV4dC5zbGljZShxdWVyeVN0YXJ0LCBjYXJldClcbiAgaWYgKC9cXG58XFxyLy50ZXN0KHF1ZXJ5KSkge1xuICAgIHJldHVybiB7IGFjdGl2ZTogZmFsc2UsIHF1ZXJ5OiAnJywgYXRSdW5MZW5ndGg6IDAsIGFuY2hvcjogbnVsbCB9XG4gIH1cbiAgaWYgKHF1ZXJ5LmluY2x1ZGVzKCcgICcpKSB7XG4gICAgcmV0dXJuIHsgYWN0aXZlOiBmYWxzZSwgcXVlcnk6ICcnLCBhdFJ1bkxlbmd0aDogMCwgYW5jaG9yOiBudWxsIH1cbiAgfVxuXG4gIHJldHVybiB7XG4gICAgYWN0aXZlOiB0cnVlLFxuICAgIHF1ZXJ5LFxuICAgIGF0UnVuTGVuZ3RoOiBoYXNTbGFzaFN1ZmZpeCA/IC1hdFJ1bkxlbmd0aCA6IGF0UnVuTGVuZ3RoLFxuICAgIGFuY2hvcjogeyBub2RlLCBvZmZzZXQ6IHJ1blN0YXJ0IH0sXG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IGRldGVjdENoYXJUcmlnZ2VyID0gKGVkaXRvckVsOiBIVE1MRWxlbWVudCB8IG51bGwsIHJhbmdlOiBSYW5nZSwgY2hhcjogc3RyaW5nKTogU2xhc2hUcmlnZ2VyU3RhdGUgPT4ge1xuICBpZiAoIWVkaXRvckVsIHx8ICFlZGl0b3JFbC5jb250YWlucyhyYW5nZS5zdGFydENvbnRhaW5lcikpIHtcbiAgICByZXR1cm4geyBhY3RpdmU6IGZhbHNlLCBxdWVyeTogJycsIGFuY2hvcjogbnVsbCB9XG4gIH1cbiAgY29uc3Qgbm9kZSA9IHJhbmdlLnN0YXJ0Q29udGFpbmVyXG4gIGlmIChub2RlLm5vZGVUeXBlICE9PSBOb2RlLlRFWFRfTk9ERSkge1xuICAgIHJldHVybiB7IGFjdGl2ZTogZmFsc2UsIHF1ZXJ5OiAnJywgYW5jaG9yOiBudWxsIH1cbiAgfVxuICBjb25zdCB0ZXh0ID0gKG5vZGUgYXMgVGV4dCkuZGF0YVxuICBjb25zdCBjYXJldCA9IHJhbmdlLnN0YXJ0T2Zmc2V0XG4gIGxldCBpID0gY2FyZXQgLSAxXG4gIGlmIChpIDwgMCkge1xuICAgIHJldHVybiB7IGFjdGl2ZTogZmFsc2UsIHF1ZXJ5OiAnJywgYW5jaG9yOiBudWxsIH1cbiAgfVxuXG4gIHdoaWxlIChpID49IDAgJiYgdGV4dFtpXSAhPT0gY2hhcikgaSAtPSAxXG4gIGlmIChpIDwgMCB8fCB0ZXh0W2ldICE9PSBjaGFyKSB7XG4gICAgcmV0dXJuIHsgYWN0aXZlOiBmYWxzZSwgcXVlcnk6ICcnLCBhbmNob3I6IG51bGwgfVxuICB9XG5cbiAgY29uc3QgdHJpZ2dlckluZGV4ID0gaVxuICBjb25zdCBwcmV2ID0gdHJpZ2dlckluZGV4ID4gMCA/IHRleHQuY2hhckF0KHRyaWdnZXJJbmRleCAtIDEpIDogJydcbiAgY29uc3QgaXNCb3VuZGFyeSA9ICFwcmV2IHx8IC9bXFxzKFt7XS8udGVzdChwcmV2KVxuICBpZiAoIWlzQm91bmRhcnkpIHtcbiAgICByZXR1cm4geyBhY3RpdmU6IGZhbHNlLCBxdWVyeTogJycsIGFuY2hvcjogbnVsbCB9XG4gIH1cblxuICBjb25zdCBxdWVyeSA9IHRleHQuc2xpY2UodHJpZ2dlckluZGV4ICsgMSwgY2FyZXQpXG4gIGlmICgvXFxufFxcci8udGVzdChxdWVyeSkpIHtcbiAgICByZXR1cm4geyBhY3RpdmU6IGZhbHNlLCBxdWVyeTogJycsIGFuY2hvcjogbnVsbCB9XG4gIH1cbiAgaWYgKHF1ZXJ5LmluY2x1ZGVzKCcgICcpKSB7XG4gICAgcmV0dXJuIHsgYWN0aXZlOiBmYWxzZSwgcXVlcnk6ICcnLCBhbmNob3I6IG51bGwgfVxuICB9XG5cbiAgcmV0dXJuIHsgYWN0aXZlOiB0cnVlLCBxdWVyeSwgYW5jaG9yOiB7IG5vZGUsIG9mZnNldDogdHJpZ2dlckluZGV4IH0gfVxufVxu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
|