@projectcor/maia-components 2.11.11-6 → 2.11.11-7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (74) hide show
  1. package/lib/components/atoms/ChatClientSelector/ChatClientSelector.js +69 -0
  2. package/lib/components/atoms/ChatClientSelector/index.js +2 -0
  3. package/lib/components/atoms/Chip/Chip.js +4 -3
  4. package/lib/components/atoms/Chip/styles.js +2 -2
  5. package/lib/components/atoms/EntitySelector/EntitySelector.js +181 -0
  6. package/lib/components/atoms/EntitySelector/EntitySelector.styles.js +57 -0
  7. package/lib/components/atoms/EntitySelector/index.js +2 -0
  8. package/lib/components/atoms/ErrorSearchProjects/ErrorSearchProjects.js +5 -3
  9. package/lib/components/atoms/FrequentlyAskedQuestions/FrequentlyAskedQuestions.js +36 -33
  10. package/lib/components/atoms/FrequentlyAskedQuestions/FrequentlyAskedQuestions.styles.js +67 -7
  11. package/lib/components/atoms/MAIAInput/MAIAInput.js +122 -18
  12. package/lib/components/atoms/MAIAInput/styles.js +27 -11
  13. package/lib/components/atoms/ProjectSelector/ProjectSelector.js +56 -193
  14. package/lib/components/atoms/SlashCommandDropdown/CategoryStepRegistry.js +5 -0
  15. package/lib/components/atoms/SlashCommandDropdown/SlashCommandDropdown.js +56 -0
  16. package/lib/components/atoms/SlashCommandDropdown/SlashCommandList.js +26 -0
  17. package/lib/components/atoms/SlashCommandDropdown/index.js +2 -0
  18. package/lib/components/atoms/SlashCommandDropdown/steps/TaskStepSelector.js +208 -0
  19. package/lib/components/atoms/SlashCommandDropdown/steps/index.js +2 -0
  20. package/lib/components/atoms/SlashCommandDropdown/styles.js +50 -0
  21. package/lib/components/atoms/SlashCommandDropdown/types.js +2 -0
  22. package/lib/components/index.js +2 -1
  23. package/lib/components/molecules/ChatAIClientSelector/ChatAIClientSelector.js +56 -0
  24. package/lib/components/molecules/ChatAIClientSelector/index.js +2 -0
  25. package/lib/components/molecules/ChatAIContent/ChatAIContent.js +9 -1
  26. package/lib/components/molecules/ChatAIHome/ChatAIHome.js +2 -3
  27. package/lib/components/molecules/ChatAIMessages/ChatAIMessages.js +105 -213
  28. package/lib/components/molecules/ChatAIMessages/newStyles.js +3 -5
  29. package/lib/components/molecules/ChatAIModal/ChatAIModal.js +18 -6
  30. package/lib/components/molecules/ChatAIModal/components/ChatAiModalFooter/ChatAiModalFooter.js +72 -2
  31. package/lib/components/molecules/ChatAIModal/components/ChatAiModalFooter/ChatAiModalFooter.styles.js +10 -2
  32. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.js +5 -3
  33. package/lib/components/molecules/ChatAIModal/constants.js +6 -2
  34. package/lib/components/molecules/ChatFooter/ChatFooter.js +12 -10
  35. package/lib/components/molecules/ChatFooter/ChatFooterFaqs.js +4 -21
  36. package/lib/components/molecules/ChatFooter/ChatFooterFaqs.styles.js +2 -2
  37. package/lib/components/organisms/ChatAI/ChatAI.js +11 -3
  38. package/lib/components/organisms/ClientAIButton/ClientAIButton.js +26 -0
  39. package/lib/components/organisms/ClientAIButton/index.js +2 -0
  40. package/lib/constants/config.js +3 -2
  41. package/lib/context/global-context.js +1 -1
  42. package/lib/hooks/useChatManager/useChatManager.js +49 -19
  43. package/lib/hooks/useChatMessages/useChatMessages.js +72 -38
  44. package/lib/hooks/useFrequentlyAskedQuestions.js +1 -1
  45. package/lib/hooks/useFrequentlyUsedActions.js +73 -0
  46. package/lib/hooks/useOrchestratorStream/useOrchestratorStream.js +6 -4
  47. package/lib/hooks/useProjectSummaryConfig.js +35 -7
  48. package/lib/hooks/useRecentClientsSearch.js +176 -0
  49. package/lib/hooks/useSlashCommands.js +73 -0
  50. package/lib/lang/br/index.js +38 -5
  51. package/lib/lang/en/index.js +38 -5
  52. package/lib/lang/es/index.js +38 -5
  53. package/lib/lang/fr/index.js +21 -2
  54. package/lib/services/cor/getProjectTasks.js +71 -0
  55. package/lib/services/maia/Agents/getAgents.js +6 -4
  56. package/lib/services/maia/Chats/getChatMessages.js +27 -14
  57. package/lib/services/maia/Chats/getChatsByUserId.js +1 -1
  58. package/lib/services/maia/FrequentlyUsedActions/getFrequentlyUsedActions.js +48 -0
  59. package/lib/services/maia/FrequentlyUsedActions/index.js +5 -0
  60. package/lib/services/maia/Orchestrator/orchestrator.js +6 -4
  61. package/lib/services/maia/RecentClients/getRecentClients.js +43 -0
  62. package/lib/services/maia/RecentClients/index.js +6 -0
  63. package/lib/services/maia/SlashCommands/getSlashCommands.js +48 -0
  64. package/lib/services/maia/SlashCommands/index.js +5 -0
  65. package/lib/services/maia/index.js +4 -2
  66. package/lib/services/query/getTaskFamilyProjectsQuery.js +5 -0
  67. package/lib/services/utils/mapChatMessages.js +12 -4
  68. package/lib/store/chatsStore.types.js +1 -1
  69. package/lib/types/Chat.js +1 -1
  70. package/lib/types/Client.js +2 -0
  71. package/lib/types/FrequentlyUsedAction.js +2 -0
  72. package/lib/types/SlashCommand.js +2 -0
  73. package/lib/types/agent.js +1 -1
  74. package/package.json +1 -1
@@ -9,7 +9,7 @@ var customInputStyles = css(["outline:none;background:linear-gradient(white,whit
9
9
  export var StyledMAIAInputWrapper = styled.div.withConfig({
10
10
  displayName: "styles__StyledMAIAInputWrapper",
11
11
  componentId: "sc-cs6u9w-0"
12
- })(["box-sizing:border-box;width:100%;border-radius:8px;border:1px solid ", ";transition:border-color 0.2s ease;padding:12px;cursor:", ";display:flex;min-height:86px;gap:", ";flex-direction:column;&:focus-within{", "}", ""], colors.text.disabled, function (_ref) {
12
+ })(["position:relative;box-sizing:border-box;width:100%;border-radius:8px;border:1px solid ", ";transition:border-color 0.2s ease;padding:12px;cursor:", ";display:flex;min-height:86px;gap:", ";flex-direction:column;&:focus-within{", "}", ""], colors.text.disabled, function (_ref) {
13
13
  var disabled = _ref.disabled;
14
14
  return disabled ? 'not-allowed' : 'auto';
15
15
  }, function (_ref2) {
@@ -30,9 +30,25 @@ export var StyledMAIAInput = styled.textarea.withConfig({
30
30
  displayName: "styles__StyledMAIAInput",
31
31
  componentId: "sc-cs6u9w-2"
32
32
  })(["", " width:100%;font-size:14px;padding:0;resize:none;position:relative;background:transparent;border:none;outline:none;min-height:22.1px;max-height:122.1px;&:disabled{cursor:not-allowed;}&:focus{outline:none;}&::placeholder{color:", ";}"], scrollableStyles, colors.text.secondary);
33
+ export var SCMIInlineContextPreview = styled.div.withConfig({
34
+ displayName: "styles__SCMIInlineContextPreview",
35
+ componentId: "sc-cs6u9w-3"
36
+ })(["display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-height:24px;"]);
37
+ export var SCMIInlineContextText = styled.span.withConfig({
38
+ displayName: "styles__SCMIInlineContextText",
39
+ componentId: "sc-cs6u9w-4"
40
+ })(["color:#20201f;font-size:16px;font-weight:400;line-height:140%;letter-spacing:-0.16px;"]);
41
+ export var SCMIInlineTaskLink = styled.a.withConfig({
42
+ displayName: "styles__SCMIInlineTaskLink",
43
+ componentId: "sc-cs6u9w-5"
44
+ })(["text-decoration:none !important;color:#202020 !important;font-size:16px;font-weight:600 !important;position:relative;padding-left:24px;&:hover{text-decoration:underline !important;}&::before{content:'';position:absolute;left:0;top:0;width:20px;height:20px;background-image:url(\"data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10 18C11.125 18 12.125 17.4375 12.6875 16.5625C13.7188 16.7812 14.8438 16.4688 15.6562 15.6562C16.4375 14.875 16.75 13.75 16.5312 12.7188C17.4062 12.1562 18 11.1562 18 10C18 8.875 17.4062 7.875 16.5312 7.3125C16.75 6.28125 16.4375 5.15625 15.6562 4.34375C14.8438 3.5625 13.7188 3.25 12.6875 3.46875C12.125 2.59375 11.125 2 10 2C8.84375 2 7.84375 2.59375 7.28125 3.46875C6.25 3.25 5.125 3.5625 4.34375 4.34375C3.53125 5.15625 3.21875 6.28125 3.4375 7.3125C2.5625 7.875 2 8.875 2 10C2 11.1562 2.5625 12.1562 3.4375 12.7188C3.21875 13.75 3.53125 14.875 4.34375 15.6562C5.125 16.4688 6.25 16.7812 7.28125 16.5625C7.84375 17.4375 8.84375 18 10 18ZM8.0625 14.625C7.40625 14.9375 6.34375 15.5625 5.375 14.5938C4.375 13.5938 5.125 12.4688 5.375 11.9375C4.71875 11.6875 3.5 11.375 3.5 10C3.5 8.59375 4.8125 8.3125 5.375 8.09375C5.09375 7.46875 4.4375 6.375 5.40625 5.40625C6.40625 4.40625 7.53125 5.15625 8.0625 5.40625C8.3125 4.75 8.625 3.5 10 3.5C11.4062 3.5 11.6875 4.84375 11.9062 5.40625C12.5312 5.125 13.625 4.46875 14.5938 5.4375C15.5938 6.4375 14.8438 7.5625 14.5938 8.09375C15.25 8.34375 16.4688 8.65625 16.4688 10.0312C16.4688 11.4375 15.1562 11.7188 14.5938 11.9375C14.875 12.5625 15.5625 13.6562 14.5938 14.625C13.7188 15.5 12.8438 15.0625 11.9062 14.625C11.6562 15.2812 11.3438 16.5 10 16.5C8.5625 16.5 8.28125 15.1875 8.0625 14.625Z' fill='%238740BF'/%3E%3C/svg%3E\");background-size:contain;background-repeat:no-repeat;background-position:center;}"]);
45
+ export var SCMIInlineContextClear = styled.button.withConfig({
46
+ displayName: "styles__SCMIInlineContextClear",
47
+ componentId: "sc-cs6u9w-6"
48
+ })(["display:flex;align-items:center;justify-content:center;background:none;border:none;padding:2px 5px;cursor:pointer;color:#999;font-size:16px;line-height:1;border-radius:4px;flex-shrink:0;&:hover{color:#333;background:#f0f0f0;}"]);
33
49
  export var StyledMAIASendButton = styled(ClearButton).withConfig({
34
50
  displayName: "styles__StyledMAIASendButton",
35
- componentId: "sc-cs6u9w-3"
51
+ componentId: "sc-cs6u9w-7"
36
52
  })(["background-color:", ";height:30px;width:30px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:background-color 0.2s ease;svg{transition:transform 0.2s ease;", "}&:hover{svg{transform:scale(1.05);}}&:active{transform:scale(0.9);svg{transition:transform 0.2s ease;g *{fill:rgba(135,64,191,1) !important;}}}transition:transform 0.2s ease;&:disabled{cursor:not-allowed;background-color:#f2f2f2 !important;", " &:hover{svg{transform:none;}}&:active{transform:none;}}"], function (_ref5) {
37
53
  var hasValues = _ref5.hasValues;
38
54
  return hasValues ? '#F7F0FC' : '#f2f2f2';
@@ -45,15 +61,15 @@ export var StyledMAIASendButton = styled(ClearButton).withConfig({
45
61
  });
46
62
  export var SCMIWrapperAttachments = styled.div.withConfig({
47
63
  displayName: "styles__SCMIWrapperAttachments",
48
- componentId: "sc-cs6u9w-4"
64
+ componentId: "sc-cs6u9w-8"
49
65
  })(["display:flex;gap:12px;align-items:center;"]);
50
66
  export var SCMIAttachmentDeleteIcon = styled.div.withConfig({
51
67
  displayName: "styles__SCMIAttachmentDeleteIcon",
52
- componentId: "sc-cs6u9w-5"
68
+ componentId: "sc-cs6u9w-9"
53
69
  })(["position:absolute;display:none;justify-content:center;align-items:center;top:0;right:0;padding:2px;border-radius:50%;&:hover{background-color:#e6e6e6;svg *:not(.no-fill){fill:#666666 !important;}}"]);
54
70
  export var SCMIAttachment = styled.div.withConfig({
55
71
  displayName: "styles__SCMIAttachment",
56
- componentId: "sc-cs6u9w-6"
72
+ componentId: "sc-cs6u9w-10"
57
73
  })(["display:flex;justify-content:center;align-items:center;border:1px solid rgba(191,191,191,1);border-radius:6px;cursor:pointer;position:relative;padding:13px;", " &:hover{", "{display:flex;}}"], function (_ref8) {
58
74
  var isImage = _ref8.isImage;
59
75
  return isImage && css(["padding:0px !important;"]);
@@ -65,7 +81,7 @@ var getAttachmentBorderColor = function getAttachmentBorderColor(p) {
65
81
  };
66
82
  export var SCMIWrapperAttachmentButton = styled.div.withConfig({
67
83
  displayName: "styles__SCMIWrapperAttachmentButton",
68
- componentId: "sc-cs6u9w-7"
84
+ componentId: "sc-cs6u9w-11"
69
85
  })(["", " border:1px solid ", ";background-color:", ";cursor:", ";&:hover{background-color:rgba(247,240,252,1) !important;border:1px solid rgba(135,64,191,1) !important;svg *{fill:rgba(135,64,191,1) !important;}}"], baseButtonActionStyles, getAttachmentBorderColor, function (_ref9) {
70
86
  var hasAttachments = _ref9.hasAttachments,
71
87
  isMaximized = _ref9.isMaximized;
@@ -81,7 +97,7 @@ var getWebSearchBorderColor = function getWebSearchBorderColor(p) {
81
97
  };
82
98
  export var SCMIWrapperWebSearchButton = styled.div.withConfig({
83
99
  displayName: "styles__SCMIWrapperWebSearchButton",
84
- componentId: "sc-cs6u9w-8"
100
+ componentId: "sc-cs6u9w-12"
85
101
  })(["", " border:1px solid ", ";background-color:", ";cursor:pointer;", ""], baseButtonActionStyles, getWebSearchBorderColor, function (_ref1) {
86
102
  var isActive = _ref1.isActive;
87
103
  return !isActive ? '#ffffff' : 'rgba(247, 240, 252, 1)';
@@ -95,7 +111,7 @@ var getDeepSearchBorderColor = function getDeepSearchBorderColor(p) {
95
111
  };
96
112
  export var SCMIWrapperDeepSearchButton = styled.div.withConfig({
97
113
  displayName: "styles__SCMIWrapperDeepSearchButton",
98
- componentId: "sc-cs6u9w-9"
114
+ componentId: "sc-cs6u9w-13"
99
115
  })(["", " border:1px solid ", ";background-color:", ";cursor:pointer;", ""], baseButtonActionStyles, getDeepSearchBorderColor, function (_ref11) {
100
116
  var isActive = _ref11.isActive;
101
117
  return !isActive ? '#ffffff' : 'rgba(247, 240, 252, 1)';
@@ -105,10 +121,10 @@ export var SCMIWrapperDeepSearchButton = styled.div.withConfig({
105
121
  });
106
122
  export var StyledMAIAStopIcon = styled.div.withConfig({
107
123
  displayName: "styles__StyledMAIAStopIcon",
108
- componentId: "sc-cs6u9w-10"
124
+ componentId: "sc-cs6u9w-14"
109
125
  })(["width:13px;height:13px;background-color:#8c8c8c;border-radius:2px;"]);
110
126
  export var StyledMAIAStopButton = styled.button.withConfig({
111
127
  displayName: "styles__StyledMAIAStopButton",
112
- componentId: "sc-cs6u9w-11"
128
+ componentId: "sc-cs6u9w-15"
113
129
  })(["background:none;border:none;padding:0;font:inherit;background-color:#f2f2f2 !important;height:30px;width:30px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;&:hover{background-color:#f7f0fc !important;", "{background-color:#aa6ede;}}&:disabled{cursor:not-allowed;background-color:#f2f2f2 !important;opacity:0.6;}"], StyledMAIAStopIcon);
114
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJzdHlsZWQiLCJjc3MiLCJrZXlmcmFtZXMiLCJjb2xvcnMiLCJHTE9CQUxfQ09MT1JTIiwic2Nyb2xsYWJsZVN0eWxlcyIsIkNsZWFyQnV0dG9uIiwiZmxvdyIsImN1c3RvbUlucHV0U3R5bGVzIiwibGlnaHQiLCJwcmltYXJ5IiwiU3R5bGVkTUFJQUlucHV0V3JhcHBlciIsImRpdiIsIndpdGhDb25maWciLCJkaXNwbGF5TmFtZSIsImNvbXBvbmVudElkIiwidGV4dCIsImRpc2FibGVkIiwiX3JlZiIsIl9yZWYyIiwiYWxpZ25CdXR0b25zIiwiX3JlZjMiLCJoYXNBdHRhY2htZW50cyIsIlN0eWxlZE1BSUFJbnB1dEJ1dHRvbnMiLCJfcmVmNCIsImhhc0hlYWRlckJ1dHRvbnMiLCJTdHlsZWRNQUlBSW5wdXQiLCJ0ZXh0YXJlYSIsInNlY29uZGFyeSIsIlN0eWxlZE1BSUFTZW5kQnV0dG9uIiwiX3JlZjUiLCJoYXNWYWx1ZXMiLCJfcmVmNiIsIl9yZWY3IiwiU0NNSVdyYXBwZXJBdHRhY2htZW50cyIsIlNDTUlBdHRhY2htZW50RGVsZXRlSWNvbiIsIlNDTUlBdHRhY2htZW50IiwiX3JlZjgiLCJpc0ltYWdlIiwiYmFzZUJ1dHRvbkFjdGlvblN0eWxlcyIsImdldEF0dGFjaG1lbnRCb3JkZXJDb2xvciIsInAiLCJpc01heGltaXplZCIsIiRpc0ZvY3VzZWQiLCJTQ01JV3JhcHBlckF0dGFjaG1lbnRCdXR0b24iLCJfcmVmOSIsIl9yZWYwIiwiZ2V0V2ViU2VhcmNoQm9yZGVyQ29sb3IiLCJpc0FjdGl2ZSIsIlNDTUlXcmFwcGVyV2ViU2VhcmNoQnV0dG9uIiwiX3JlZjEiLCJfcmVmMTAiLCJnZXREZWVwU2VhcmNoQm9yZGVyQ29sb3IiLCJTQ01JV3JhcHBlckRlZXBTZWFyY2hCdXR0b24iLCJfcmVmMTEiLCJfcmVmMTIiLCJTdHlsZWRNQUlBU3RvcEljb24iLCJTdHlsZWRNQUlBU3RvcEJ1dHRvbiIsImJ1dHRvbiJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2F0b21zL01BSUFJbnB1dC9zdHlsZXMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L2luZGVudCAqL1xuaW1wb3J0IHN0eWxlZCwgeyBjc3MsIGtleWZyYW1lcyB9IGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJ1xuaW1wb3J0IGNvbG9ycyBmcm9tICdAcHJvamVjdGNvci90aGVtZS9saWIvYmFzZS9jb2xvcnMnXG5pbXBvcnQgeyBHTE9CQUxfQ09MT1JTIH0gZnJvbSAnLi4vLi4vLi4vc3R5bGVzL2NvbmZpZydcbmltcG9ydCB7IHNjcm9sbGFibGVTdHlsZXMgfSBmcm9tICcuLi8uLi8uLi9zdHlsZXMvc2hhcmVkL3Njcm9sbGFibGUnXG5pbXBvcnQgeyBDbGVhckJ1dHRvbiB9IGZyb20gJy4uL0NsZWFyQnV0dG9uJ1xuXG5leHBvcnQgY29uc3QgZmxvdyA9IGtleWZyYW1lc2BcbiAgMCUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAlIDUwJTtcbiAgfVxuICA1MCUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgNTAlO1xuICB9XG4gIDEwMCUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAlIDUwJTtcbiAgfVxuYFxuXG5jb25zdCBjdXN0b21JbnB1dFN0eWxlcyA9IGNzc2BcbiAgb3V0bGluZTogbm9uZTtcbiAgYmFja2dyb3VuZDpcbiAgICBsaW5lYXItZ3JhZGllbnQod2hpdGUsIHdoaXRlKSBwYWRkaW5nLWJveCxcbiAgICBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICNmZjQzY2EgMCUsICNiYTQzZmYgNTkuNjIlLCAjZTdjNGZmIDEwMCUpIGJvcmRlci1ib3g7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLXNpemU6IDIwMCUgMTAwJTtcbiAgYW5pbWF0aW9uOiAke2Zsb3d9IDNzIGVhc2UgaW5maW5pdGU7XG5cbiAgYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke0dMT0JBTF9DT0xPUlMubGlnaHR9O1xuICAgIHN2ZyAqIHtcbiAgICAgIGZpbGw6ICR7R0xPQkFMX0NPTE9SUy5wcmltYXJ5fTtcbiAgICB9XG4gIH1cbmBcblxuZXhwb3J0IGNvbnN0IFN0eWxlZE1BSUFJbnB1dFdyYXBwZXIgPSBzdHlsZWQuZGl2PHtcbiAgZGlzYWJsZWQ/OiBib29sZWFuXG4gIGFsaWduQnV0dG9ucz86ICdob3Jpem9udGFsJyB8ICd2ZXJ0aWNhbCdcbiAgaGFzQXR0YWNobWVudHM6IGJvb2xlYW5cbn0+YFxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAke2NvbG9ycy50ZXh0LmRpc2FibGVkfTtcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMnMgZWFzZTtcbiAgcGFkZGluZzogMTJweDtcbiAgY3Vyc29yOiAkeyh7IGRpc2FibGVkIH0pID0+IChkaXNhYmxlZCA/ICdub3QtYWxsb3dlZCcgOiAnYXV0bycpfTtcbiAgZGlzcGxheTogZmxleDtcbiAgbWluLWhlaWdodDogODZweDtcbiAgZ2FwOiAkeyh7IGFsaWduQnV0dG9ucyB9KSA9PiAoYWxpZ25CdXR0b25zID09PSAndmVydGljYWwnID8gJzhweCcgOiAnMCcpfTtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAmOmZvY3VzLXdpdGhpbiB7XG4gICAgJHtjdXN0b21JbnB1dFN0eWxlc31cbiAgfVxuXG4gICR7KHsgaGFzQXR0YWNobWVudHMgfSkgPT5cbiAgICBoYXNBdHRhY2htZW50cyAmJlxuICAgIGNzc2BcbiAgICAgICR7Y3VzdG9tSW5wdXRTdHlsZXN9XG4gICAgYH1cbmBcblxuZXhwb3J0IGNvbnN0IFN0eWxlZE1BSUFJbnB1dEJ1dHRvbnMgPSBzdHlsZWQuZGl2PHsgaGFzSGVhZGVyQnV0dG9uczogYm9vbGVhbiB9PmBcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICBoZWlnaHQ6IDMwcHg7XG4gIGp1c3RpZnktY29udGVudDogJHsoeyBoYXNIZWFkZXJCdXR0b25zIH0pID0+IChoYXNIZWFkZXJCdXR0b25zID8gJ3NwYWNlLWJldHdlZW4nIDogJ2ZsZXgtZW5kJyl9O1xuYFxuXG5leHBvcnQgY29uc3QgU3R5bGVkTUFJQUlucHV0ID0gc3R5bGVkLnRleHRhcmVhPHtcbiAgYWxpZ25CdXR0b25zPzogJ3ZlcnRpY2FsJyB8ICdob3Jpem9udGFsJ1xufT5gXG4gICR7c2Nyb2xsYWJsZVN0eWxlc31cbiAgd2lkdGg6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgcGFkZGluZzogMDtcbiAgcmVzaXplOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIG1pbi1oZWlnaHQ6IDIyLjFweDtcbiAgbWF4LWhlaWdodDogMTIyLjFweDtcblxuICAmOmRpc2FibGVkIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJHtjb2xvcnMudGV4dC5zZWNvbmRhcnl9O1xuICB9XG5gXG5cbmV4cG9ydCBjb25zdCBTdHlsZWRNQUlBU2VuZEJ1dHRvbiA9IHN0eWxlZChDbGVhckJ1dHRvbik8eyBoYXNWYWx1ZXM/OiBib29sZWFuIH0+YFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkeyh7IGhhc1ZhbHVlcyB9KSA9PiAoaGFzVmFsdWVzID8gJyNGN0YwRkMnIDogJyNmMmYyZjInKX07XG4gIGhlaWdodDogMzBweDtcbiAgd2lkdGg6IDMwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlO1xuXG4gIHN2ZyB7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZTtcbiAgICAkeyh7IGhhc1ZhbHVlcyB9KSA9PlxuICAgICAgaGFzVmFsdWVzICYmXG4gICAgICBjc3NgXG4gICAgICAgIGcgKiB7XG4gICAgICAgICAgZmlsbDogcmdiYSgxMzUsIDY0LCAxOTEsIDEpICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIGB9XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBzdmcge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgICB9XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xuICAgIHN2ZyB7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlO1xuICAgICAgZyAqIHtcbiAgICAgICAgZmlsbDogcmdiYSgxMzUsIDY0LCAxOTEsIDEpICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZTtcblxuICAmOmRpc2FibGVkIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjIgIWltcG9ydGFudDtcblxuICAgICR7KHsgaGFzVmFsdWVzIH0pID0+XG4gICAgICAhaGFzVmFsdWVzICYmXG4gICAgICBjc3NgXG4gICAgICAgIHN2ZyAqIHtcbiAgICAgICAgICBmaWxsOiAke2NvbG9ycy50ZXh0LmRpc2FibGVkfSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICBgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBzdmcge1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjphY3RpdmUge1xuICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgIH1cbiAgfVxuYFxuXG5leHBvcnQgY29uc3QgU0NNSVdyYXBwZXJBdHRhY2htZW50cyA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMTJweDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbmBcbmV4cG9ydCBjb25zdCBTQ01JQXR0YWNobWVudERlbGV0ZUljb24gPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBwYWRkaW5nOiAycHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgICBzdmcgKjpub3QoLm5vLWZpbGwpIHtcbiAgICAgIGZpbGw6ICM2NjY2NjYgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbmBcblxuZXhwb3J0IGNvbnN0IFNDTUlBdHRhY2htZW50ID0gc3R5bGVkLmRpdjx7IGlzSW1hZ2U/OiBib29sZWFuIH0+YFxuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxOTEsIDE5MSwgMTkxLCAxKTtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMTNweDtcbiAgJHsoeyBpc0ltYWdlIH0pID0+XG4gICAgaXNJbWFnZSAmJlxuICAgIGNzc2BcbiAgICAgIHBhZGRpbmc6IDBweCAhaW1wb3J0YW50O1xuICAgIGB9XG5cbiAgJjpob3ZlciB7XG4gICAgJHtTQ01JQXR0YWNobWVudERlbGV0ZUljb259IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuICB9XG5gXG5cbmNvbnN0IGJhc2VCdXR0b25BY3Rpb25TdHlsZXMgPSBjc3NgXG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG5gXG5jb25zdCBnZXRBdHRhY2htZW50Qm9yZGVyQ29sb3IgPSAocDogeyBoYXNBdHRhY2htZW50czogYm9vbGVhbjsgaXNNYXhpbWl6ZWQ/OiBib29sZWFuOyAkaXNGb2N1c2VkPzogYm9vbGVhbiB9KSA9PiB7XG4gIGlmIChwLmhhc0F0dGFjaG1lbnRzIHx8IHAuaXNNYXhpbWl6ZWQpIHJldHVybiAncmdiYSgxMzUsIDY0LCAxOTEsIDEpJ1xuICByZXR1cm4gcC4kaXNGb2N1c2VkICE9PSBmYWxzZSA/ICcjNjY2NjY2JyA6ICcjOTk5J1xufVxuXG5leHBvcnQgY29uc3QgU0NNSVdyYXBwZXJBdHRhY2htZW50QnV0dG9uID0gc3R5bGVkLmRpdjx7XG4gIGlzTWF4aW1pemVkPzogYm9vbGVhblxuICBoYXNBdHRhY2htZW50czogYm9vbGVhblxuICAkaXNGb2N1c2VkPzogYm9vbGVhblxufT5gXG4gICR7YmFzZUJ1dHRvbkFjdGlvblN0eWxlc31cbiAgYm9yZGVyOiAxcHggc29saWQgJHtnZXRBdHRhY2htZW50Qm9yZGVyQ29sb3J9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkeyh7IGhhc0F0dGFjaG1lbnRzLCBpc01heGltaXplZCB9KSA9PlxuICAgICFoYXNBdHRhY2htZW50cyAmJiAhaXNNYXhpbWl6ZWQgPyAnI2ZmZmZmZicgOiAncmdiYSgyNDcsIDI0MCwgMjUyLCAxKSd9O1xuICBjdXJzb3I6ICR7KHsgaGFzQXR0YWNobWVudHMsIGlzTWF4aW1pemVkIH0pID0+IChoYXNBdHRhY2htZW50cyB8fCBpc01heGltaXplZCA/ICdkZWZhdWx0JyA6ICdwb2ludGVyJyl9O1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjQ3LCAyNDAsIDI1MiwgMSkgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEzNSwgNjQsIDE5MSwgMSkgIWltcG9ydGFudDtcbiAgICBzdmcgKiB7XG4gICAgICBmaWxsOiByZ2JhKDEzNSwgNjQsIDE5MSwgMSkgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbmBcbmNvbnN0IGdldFdlYlNlYXJjaEJvcmRlckNvbG9yID0gKHA6IHsgaXNBY3RpdmU6IGJvb2xlYW47ICRpc0ZvY3VzZWQ/OiBib29sZWFuIH0pID0+IHtcbiAgaWYgKHAuaXNBY3RpdmUpIHJldHVybiAncmdiYSgxMzUsIDY0LCAxOTEsIDEpJ1xuICByZXR1cm4gcC4kaXNGb2N1c2VkICE9PSBmYWxzZSA/ICcjNjY2NjY2JyA6ICcjOTk5J1xufVxuXG5leHBvcnQgY29uc3QgU0NNSVdyYXBwZXJXZWJTZWFyY2hCdXR0b24gPSBzdHlsZWQuZGl2PHsgaXNBY3RpdmU6IGJvb2xlYW47ICRpc0ZvY3VzZWQ/OiBib29sZWFuIH0+YFxuICAke2Jhc2VCdXR0b25BY3Rpb25TdHlsZXN9XG4gIGJvcmRlcjogMXB4IHNvbGlkICR7Z2V0V2ViU2VhcmNoQm9yZGVyQ29sb3J9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkeyh7IGlzQWN0aXZlIH0pID0+ICghaXNBY3RpdmUgPyAnI2ZmZmZmZicgOiAncmdiYSgyNDcsIDI0MCwgMjUyLCAxKScpfTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAkeyh7IGlzQWN0aXZlIH0pID0+XG4gICAgIWlzQWN0aXZlICYmXG4gICAgY3NzYFxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjQ3LCAyNDAsIDI1MiwgMSkgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxMzUsIDY0LCAxOTEsIDEpICFpbXBvcnRhbnQ7XG4gICAgICAgIHN2ZyAqIHtcbiAgICAgICAgICBmaWxsOiByZ2JhKDEzNSwgNjQsIDE5MSwgMSkgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIGB9XG5gXG5cbmNvbnN0IGdldERlZXBTZWFyY2hCb3JkZXJDb2xvciA9IChwOiB7IGlzQWN0aXZlOiBib29sZWFuOyAkaXNGb2N1c2VkPzogYm9vbGVhbiB9KSA9PiB7XG4gIGlmIChwLmlzQWN0aXZlKSByZXR1cm4gJ3JnYmEoMTM1LCA2NCwgMTkxLCAxKSdcbiAgcmV0dXJuIHAuJGlzRm9jdXNlZCAhPT0gZmFsc2UgPyAnIzY2NjY2NicgOiAnIzk5OSdcbn1cblxuZXhwb3J0IGNvbnN0IFNDTUlXcmFwcGVyRGVlcFNlYXJjaEJ1dHRvbiA9IHN0eWxlZC5kaXY8eyBpc0FjdGl2ZTogYm9vbGVhbjsgJGlzRm9jdXNlZD86IGJvb2xlYW4gfT5gXG4gICR7YmFzZUJ1dHRvbkFjdGlvblN0eWxlc31cbiAgYm9yZGVyOiAxcHggc29saWQgJHtnZXREZWVwU2VhcmNoQm9yZGVyQ29sb3J9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkeyh7IGlzQWN0aXZlIH0pID0+ICghaXNBY3RpdmUgPyAnI2ZmZmZmZicgOiAncmdiYSgyNDcsIDI0MCwgMjUyLCAxKScpfTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAkeyh7IGlzQWN0aXZlIH0pID0+XG4gICAgIWlzQWN0aXZlICYmXG4gICAgY3NzYFxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjQ3LCAyNDAsIDI1MiwgMSkgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxMzUsIDY0LCAxOTEsIDEpICFpbXBvcnRhbnQ7XG4gICAgICAgIHN2ZyAqIHtcbiAgICAgICAgICBzdHJva2U6IHJnYmEoMTM1LCA2NCwgMTkxLCAxKSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgYH1cbmBcbmV4cG9ydCBjb25zdCBTdHlsZWRNQUlBU3RvcEljb24gPSBzdHlsZWQuZGl2YFxuICB3aWR0aDogMTNweDtcbiAgaGVpZ2h0OiAxM3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOGM4YzhjO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG5gXG5leHBvcnQgY29uc3QgU3R5bGVkTUFJQVN0b3BCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjIgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAzMHB4O1xuICB3aWR0aDogMzBweDtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmN2YwZmMgIWltcG9ydGFudDtcblxuICAgICR7U3R5bGVkTUFJQVN0b3BJY29ufSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWE2ZWRlO1xuICAgIH1cbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMiAhaW1wb3J0YW50O1xuICAgIG9wYWNpdHk6IDAuNjtcbiAgfVxuYFxuIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBLE9BQU9BLE1BQU0sSUFBSUMsR0FBRyxFQUFFQyxTQUFTLFFBQVEsbUJBQW1CO0FBQzFELE9BQU9DLE1BQU0sTUFBTSxtQ0FBbUM7QUFDdEQsU0FBU0MsYUFBYSxRQUFRLHdCQUF3QjtBQUN0RCxTQUFTQyxnQkFBZ0IsUUFBUSxtQ0FBbUM7QUFDcEUsU0FBU0MsV0FBVyxRQUFRLGdCQUFnQjtBQUU1QyxPQUFPLElBQU1DLElBQUksR0FBR0wsU0FBUyx3R0FV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
130
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJzdHlsZWQiLCJjc3MiLCJrZXlmcmFtZXMiLCJjb2xvcnMiLCJHTE9CQUxfQ09MT1JTIiwic2Nyb2xsYWJsZVN0eWxlcyIsIkNsZWFyQnV0dG9uIiwiZmxvdyIsImN1c3RvbUlucHV0U3R5bGVzIiwibGlnaHQiLCJwcmltYXJ5IiwiU3R5bGVkTUFJQUlucHV0V3JhcHBlciIsImRpdiIsIndpdGhDb25maWciLCJkaXNwbGF5TmFtZSIsImNvbXBvbmVudElkIiwidGV4dCIsImRpc2FibGVkIiwiX3JlZiIsIl9yZWYyIiwiYWxpZ25CdXR0b25zIiwiX3JlZjMiLCJoYXNBdHRhY2htZW50cyIsIlN0eWxlZE1BSUFJbnB1dEJ1dHRvbnMiLCJfcmVmNCIsImhhc0hlYWRlckJ1dHRvbnMiLCJTdHlsZWRNQUlBSW5wdXQiLCJ0ZXh0YXJlYSIsInNlY29uZGFyeSIsIlNDTUlJbmxpbmVDb250ZXh0UHJldmlldyIsIlNDTUlJbmxpbmVDb250ZXh0VGV4dCIsInNwYW4iLCJTQ01JSW5saW5lVGFza0xpbmsiLCJhIiwiU0NNSUlubGluZUNvbnRleHRDbGVhciIsImJ1dHRvbiIsIlN0eWxlZE1BSUFTZW5kQnV0dG9uIiwiX3JlZjUiLCJoYXNWYWx1ZXMiLCJfcmVmNiIsIl9yZWY3IiwiU0NNSVdyYXBwZXJBdHRhY2htZW50cyIsIlNDTUlBdHRhY2htZW50RGVsZXRlSWNvbiIsIlNDTUlBdHRhY2htZW50IiwiX3JlZjgiLCJpc0ltYWdlIiwiYmFzZUJ1dHRvbkFjdGlvblN0eWxlcyIsImdldEF0dGFjaG1lbnRCb3JkZXJDb2xvciIsInAiLCJpc01heGltaXplZCIsIiRpc0ZvY3VzZWQiLCJTQ01JV3JhcHBlckF0dGFjaG1lbnRCdXR0b24iLCJfcmVmOSIsIl9yZWYwIiwiZ2V0V2ViU2VhcmNoQm9yZGVyQ29sb3IiLCJpc0FjdGl2ZSIsIlNDTUlXcmFwcGVyV2ViU2VhcmNoQnV0dG9uIiwiX3JlZjEiLCJfcmVmMTAiLCJnZXREZWVwU2VhcmNoQm9yZGVyQ29sb3IiLCJTQ01JV3JhcHBlckRlZXBTZWFyY2hCdXR0b24iLCJfcmVmMTEiLCJfcmVmMTIiLCJTdHlsZWRNQUlBU3RvcEljb24iLCJTdHlsZWRNQUlBU3RvcEJ1dHRvbiJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2F0b21zL01BSUFJbnB1dC9zdHlsZXMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L2luZGVudCAqL1xuaW1wb3J0IHN0eWxlZCwgeyBjc3MsIGtleWZyYW1lcyB9IGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJ1xuaW1wb3J0IGNvbG9ycyBmcm9tICdAcHJvamVjdGNvci90aGVtZS9saWIvYmFzZS9jb2xvcnMnXG5pbXBvcnQgeyBHTE9CQUxfQ09MT1JTIH0gZnJvbSAnLi4vLi4vLi4vc3R5bGVzL2NvbmZpZydcbmltcG9ydCB7IHNjcm9sbGFibGVTdHlsZXMgfSBmcm9tICcuLi8uLi8uLi9zdHlsZXMvc2hhcmVkL3Njcm9sbGFibGUnXG5pbXBvcnQgeyBDbGVhckJ1dHRvbiB9IGZyb20gJy4uL0NsZWFyQnV0dG9uJ1xuXG5leHBvcnQgY29uc3QgZmxvdyA9IGtleWZyYW1lc2BcbiAgMCUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAlIDUwJTtcbiAgfVxuICA1MCUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgNTAlO1xuICB9XG4gIDEwMCUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAlIDUwJTtcbiAgfVxuYFxuXG5jb25zdCBjdXN0b21JbnB1dFN0eWxlcyA9IGNzc2BcbiAgb3V0bGluZTogbm9uZTtcbiAgYmFja2dyb3VuZDpcbiAgICBsaW5lYXItZ3JhZGllbnQod2hpdGUsIHdoaXRlKSBwYWRkaW5nLWJveCxcbiAgICBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICNmZjQzY2EgMCUsICNiYTQzZmYgNTkuNjIlLCAjZTdjNGZmIDEwMCUpIGJvcmRlci1ib3g7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLXNpemU6IDIwMCUgMTAwJTtcbiAgYW5pbWF0aW9uOiAke2Zsb3d9IDNzIGVhc2UgaW5maW5pdGU7XG5cbiAgYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke0dMT0JBTF9DT0xPUlMubGlnaHR9O1xuICAgIHN2ZyAqIHtcbiAgICAgIGZpbGw6ICR7R0xPQkFMX0NPTE9SUy5wcmltYXJ5fTtcbiAgICB9XG4gIH1cbmBcblxuZXhwb3J0IGNvbnN0IFN0eWxlZE1BSUFJbnB1dFdyYXBwZXIgPSBzdHlsZWQuZGl2PHtcbiAgZGlzYWJsZWQ/OiBib29sZWFuXG4gIGFsaWduQnV0dG9ucz86ICdob3Jpem9udGFsJyB8ICd2ZXJ0aWNhbCdcbiAgaGFzQXR0YWNobWVudHM6IGJvb2xlYW5cbn0+YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICR7Y29sb3JzLnRleHQuZGlzYWJsZWR9O1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4ycyBlYXNlO1xuICBwYWRkaW5nOiAxMnB4O1xuICBjdXJzb3I6ICR7KHsgZGlzYWJsZWQgfSkgPT4gKGRpc2FibGVkID8gJ25vdC1hbGxvd2VkJyA6ICdhdXRvJyl9O1xuICBkaXNwbGF5OiBmbGV4O1xuICBtaW4taGVpZ2h0OiA4NnB4O1xuICBnYXA6ICR7KHsgYWxpZ25CdXR0b25zIH0pID0+IChhbGlnbkJ1dHRvbnMgPT09ICd2ZXJ0aWNhbCcgPyAnOHB4JyA6ICcwJyl9O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICY6Zm9jdXMtd2l0aGluIHtcbiAgICAke2N1c3RvbUlucHV0U3R5bGVzfVxuICB9XG5cbiAgJHsoeyBoYXNBdHRhY2htZW50cyB9KSA9PlxuICAgIGhhc0F0dGFjaG1lbnRzICYmXG4gICAgY3NzYFxuICAgICAgJHtjdXN0b21JbnB1dFN0eWxlc31cbiAgICBgfVxuYFxuXG5leHBvcnQgY29uc3QgU3R5bGVkTUFJQUlucHV0QnV0dG9ucyA9IHN0eWxlZC5kaXY8eyBoYXNIZWFkZXJCdXR0b25zOiBib29sZWFuIH0+YFxuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gIGhlaWdodDogMzBweDtcbiAganVzdGlmeS1jb250ZW50OiAkeyh7IGhhc0hlYWRlckJ1dHRvbnMgfSkgPT4gKGhhc0hlYWRlckJ1dHRvbnMgPyAnc3BhY2UtYmV0d2VlbicgOiAnZmxleC1lbmQnKX07XG5gXG5cbmV4cG9ydCBjb25zdCBTdHlsZWRNQUlBSW5wdXQgPSBzdHlsZWQudGV4dGFyZWE8e1xuICBhbGlnbkJ1dHRvbnM/OiAndmVydGljYWwnIHwgJ2hvcml6b250YWwnXG59PmBcbiAgJHtzY3JvbGxhYmxlU3R5bGVzfVxuICB3aWR0aDogMTAwJTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBwYWRkaW5nOiAwO1xuICByZXNpemU6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3V0bGluZTogbm9uZTtcbiAgbWluLWhlaWdodDogMjIuMXB4O1xuICBtYXgtaGVpZ2h0OiAxMjIuMXB4O1xuXG4gICY6ZGlzYWJsZWQge1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG5cbiAgJjo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAke2NvbG9ycy50ZXh0LnNlY29uZGFyeX07XG4gIH1cbmBcblxuZXhwb3J0IGNvbnN0IFNDTUlJbmxpbmVDb250ZXh0UHJldmlldyA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZ2FwOiA4cHg7XG4gIG1pbi1oZWlnaHQ6IDI0cHg7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ01JSW5saW5lQ29udGV4dFRleHQgPSBzdHlsZWQuc3BhbmBcbiAgY29sb3I6ICMyMDIwMWY7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDE0MCU7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4xNnB4O1xuYFxuXG5leHBvcnQgY29uc3QgU0NNSUlubGluZVRhc2tMaW5rID0gc3R5bGVkLmFgXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICBjb2xvcjogIzIwMjAyMCAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDAgIWltcG9ydGFudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6IDI0cHg7XG5cbiAgJjpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHdpZHRoPScyMCcgaGVpZ2h0PScyMCcgdmlld0JveD0nMCAwIDIwIDIwJyBmaWxsPSdub25lJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBkPSdNMTAgMThDMTEuMTI1IDE4IDEyLjEyNSAxNy40Mzc1IDEyLjY4NzUgMTYuNTYyNUMxMy43MTg4IDE2Ljc4MTIgMTQuODQzOCAxNi40Njg4IDE1LjY1NjIgMTUuNjU2MkMxNi40Mzc1IDE0Ljg3NSAxNi43NSAxMy43NSAxNi41MzEyIDEyLjcxODhDMTcuNDA2MiAxMi4xNTYyIDE4IDExLjE1NjIgMTggMTBDMTggOC44NzUgMTcuNDA2MiA3Ljg3NSAxNi41MzEyIDcuMzEyNUMxNi43NSA2LjI4MTI1IDE2LjQzNzUgNS4xNTYyNSAxNS42NTYyIDQuMzQzNzVDMTQuODQzOCAzLjU2MjUgMTMuNzE4OCAzLjI1IDEyLjY4NzUgMy40Njg3NUMxMi4xMjUgMi41OTM3NSAxMS4xMjUgMiAxMCAyQzguODQzNzUgMiA3Ljg0Mzc1IDIuNTkzNzUgNy4yODEyNSAzLjQ2ODc1QzYuMjUgMy4yNSA1LjEyNSAzLjU2MjUgNC4zNDM3NSA0LjM0Mzc1QzMuNTMxMjUgNS4xNTYyNSAzLjIxODc1IDYuMjgxMjUgMy40Mzc1IDcuMzEyNUMyLjU2MjUgNy44NzUgMiA4Ljg3NSAyIDEwQzIgMTEuMTU2MiAyLjU2MjUgMTIuMTU2MiAzLjQzNzUgMTIuNzE4OEMzLjIxODc1IDEzLjc1IDMuNTMxMjUgMTQuODc1IDQuMzQzNzUgMTUuNjU2MkM1LjEyNSAxNi40Njg4IDYuMjUgMTYuNzgxMiA3LjI4MTI1IDE2LjU2MjVDNy44NDM3NSAxNy40Mzc1IDguODQzNzUgMTggMTAgMThaTTguMDYyNSAxNC42MjVDNy40MDYyNSAxNC45Mzc1IDYuMzQzNzUgMTUuNTYyNSA1LjM3NSAxNC41OTM4QzQuMzc1IDEzLjU5MzggNS4xMjUgMTIuNDY4OCA1LjM3NSAxMS45Mzc1QzQuNzE4NzUgMTEuNjg3NSAzLjUgMTEuMzc1IDMuNSAxMEMzLjUgOC41OTM3NSA0LjgxMjUgOC4zMTI1IDUuMzc1IDguMDkzNzVDNS4wOTM3NSA3LjQ2ODc1IDQuNDM3NSA2LjM3NSA1LjQwNjI1IDUuNDA2MjVDNi40MDYyNSA0LjQwNjI1IDcuNTMxMjUgNS4xNTYyNSA4LjA2MjUgNS40MDYyNUM4LjMxMjUgNC43NSA4LjYyNSAzLjUgMTAgMy41QzExLjQwNjIgMy41IDExLjY4NzUgNC44NDM3NSAxMS45MDYyIDUuNDA2MjVDMTIuNTMxMiA1LjEyNSAxMy42MjUgNC40Njg3NSAxNC41OTM4IDUuNDM3NUMxNS41OTM4IDYuNDM3NSAxNC44NDM4IDcuNTYyNSAxNC41OTM4IDguMDkzNzVDMTUuMjUgOC4zNDM3NSAxNi40Njg4IDguNjU2MjUgMTYuNDY4OCAxMC4wMzEyQzE2LjQ2ODggMTEuNDM3NSAxNS4xNTYyIDExLjcxODggMTQuNTkzOCAxMS45Mzc1QzE0Ljg3NSAxMi41NjI1IDE1LjU2MjUgMTMuNjU2MiAxNC41OTM4IDE0LjYyNUMxMy43MTg4IDE1LjUgMTIuODQzOCAxNS4wNjI1IDExLjkwNjIgMTQuNjI1QzExLjY1NjIgMTUuMjgxMiAxMS4zNDM4IDE2LjUgMTAgMTYuNUM4LjU2MjUgMTYuNSA4LjI4MTI1IDE1LjE4NzUgOC4wNjI1IDE0LjYyNVonIGZpbGw9JyUyMzg3NDBCRicvJTNFJTNDL3N2ZyUzRVwiKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIH1cbmBcblxuZXhwb3J0IGNvbnN0IFNDTUlJbmxpbmVDb250ZXh0Q2xlYXIgPSBzdHlsZWQuYnV0dG9uYFxuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nOiAycHggNXB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjOTk5O1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGZsZXgtc2hyaW5rOiAwO1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAjMzMzO1xuICAgIGJhY2tncm91bmQ6ICNmMGYwZjA7XG4gIH1cbmBcblxuZXhwb3J0IGNvbnN0IFN0eWxlZE1BSUFTZW5kQnV0dG9uID0gc3R5bGVkKENsZWFyQnV0dG9uKTx7IGhhc1ZhbHVlcz86IGJvb2xlYW4gfT5gXG4gIGJhY2tncm91bmQtY29sb3I6ICR7KHsgaGFzVmFsdWVzIH0pID0+IChoYXNWYWx1ZXMgPyAnI0Y3RjBGQycgOiAnI2YyZjJmMicpfTtcbiAgaGVpZ2h0OiAzMHB4O1xuICB3aWR0aDogMzBweDtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XG5cbiAgc3ZnIHtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlO1xuICAgICR7KHsgaGFzVmFsdWVzIH0pID0+XG4gICAgICBoYXNWYWx1ZXMgJiZcbiAgICAgIGNzc2BcbiAgICAgICAgZyAqIHtcbiAgICAgICAgICBmaWxsOiByZ2JhKDEzNSwgNjQsIDE5MSwgMSkgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgYH1cbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIHN2ZyB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgIH1cbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG4gICAgc3ZnIHtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2U7XG4gICAgICBnICoge1xuICAgICAgICBmaWxsOiByZ2JhKDEzNSwgNjQsIDE5MSwgMSkgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlO1xuXG4gICY6ZGlzYWJsZWQge1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMiAhaW1wb3J0YW50O1xuXG4gICAgJHsoeyBoYXNWYWx1ZXMgfSkgPT5cbiAgICAgICFoYXNWYWx1ZXMgJiZcbiAgICAgIGNzc2BcbiAgICAgICAgc3ZnICoge1xuICAgICAgICAgIGZpbGw6ICR7Y29sb3JzLnRleHQuZGlzYWJsZWR9ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIGB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIHN2ZyB7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxuICB9XG5gXG5cbmV4cG9ydCBjb25zdCBTQ01JV3JhcHBlckF0dGFjaG1lbnRzID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAxMnB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuYFxuZXhwb3J0IGNvbnN0IFNDTUlBdHRhY2htZW50RGVsZXRlSWNvbiA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHBhZGRpbmc6IDJweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICAgIHN2ZyAqOm5vdCgubm8tZmlsbCkge1xuICAgICAgZmlsbDogIzY2NjY2NiAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuYFxuXG5leHBvcnQgY29uc3QgU0NNSUF0dGFjaG1lbnQgPSBzdHlsZWQuZGl2PHsgaXNJbWFnZT86IGJvb2xlYW4gfT5gXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE5MSwgMTkxLCAxOTEsIDEpO1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAxM3B4O1xuICAkeyh7IGlzSW1hZ2UgfSkgPT5cbiAgICBpc0ltYWdlICYmXG4gICAgY3NzYFxuICAgICAgcGFkZGluZzogMHB4ICFpbXBvcnRhbnQ7XG4gICAgYH1cblxuICAmOmhvdmVyIHtcbiAgICAke1NDTUlBdHRhY2htZW50RGVsZXRlSWNvbn0ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG4gIH1cbmBcblxuY29uc3QgYmFzZUJ1dHRvbkFjdGlvblN0eWxlcyA9IGNzc2BcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMzBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbmBcbmNvbnN0IGdldEF0dGFjaG1lbnRCb3JkZXJDb2xvciA9IChwOiB7IGhhc0F0dGFjaG1lbnRzOiBib29sZWFuOyBpc01heGltaXplZD86IGJvb2xlYW47ICRpc0ZvY3VzZWQ/OiBib29sZWFuIH0pID0+IHtcbiAgaWYgKHAuaGFzQXR0YWNobWVudHMgfHwgcC5pc01heGltaXplZCkgcmV0dXJuICdyZ2JhKDEzNSwgNjQsIDE5MSwgMSknXG4gIHJldHVybiBwLiRpc0ZvY3VzZWQgIT09IGZhbHNlID8gJyM2NjY2NjYnIDogJyM5OTknXG59XG5cbmV4cG9ydCBjb25zdCBTQ01JV3JhcHBlckF0dGFjaG1lbnRCdXR0b24gPSBzdHlsZWQuZGl2PHtcbiAgaXNNYXhpbWl6ZWQ/OiBib29sZWFuXG4gIGhhc0F0dGFjaG1lbnRzOiBib29sZWFuXG4gICRpc0ZvY3VzZWQ/OiBib29sZWFuXG59PmBcbiAgJHtiYXNlQnV0dG9uQWN0aW9uU3R5bGVzfVxuICBib3JkZXI6IDFweCBzb2xpZCAke2dldEF0dGFjaG1lbnRCb3JkZXJDb2xvcn07XG4gIGJhY2tncm91bmQtY29sb3I6ICR7KHsgaGFzQXR0YWNobWVudHMsIGlzTWF4aW1pemVkIH0pID0+XG4gICAgIWhhc0F0dGFjaG1lbnRzICYmICFpc01heGltaXplZCA/ICcjZmZmZmZmJyA6ICdyZ2JhKDI0NywgMjQwLCAyNTIsIDEpJ307XG4gIGN1cnNvcjogJHsoeyBoYXNBdHRhY2htZW50cywgaXNNYXhpbWl6ZWQgfSkgPT4gKGhhc0F0dGFjaG1lbnRzIHx8IGlzTWF4aW1pemVkID8gJ2RlZmF1bHQnIDogJ3BvaW50ZXInKX07XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNDcsIDI0MCwgMjUyLCAxKSAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTM1LCA2NCwgMTkxLCAxKSAhaW1wb3J0YW50O1xuICAgIHN2ZyAqIHtcbiAgICAgIGZpbGw6IHJnYmEoMTM1LCA2NCwgMTkxLCAxKSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuYFxuY29uc3QgZ2V0V2ViU2VhcmNoQm9yZGVyQ29sb3IgPSAocDogeyBpc0FjdGl2ZTogYm9vbGVhbjsgJGlzRm9jdXNlZD86IGJvb2xlYW4gfSkgPT4ge1xuICBpZiAocC5pc0FjdGl2ZSkgcmV0dXJuICdyZ2JhKDEzNSwgNjQsIDE5MSwgMSknXG4gIHJldHVybiBwLiRpc0ZvY3VzZWQgIT09IGZhbHNlID8gJyM2NjY2NjYnIDogJyM5OTknXG59XG5cbmV4cG9ydCBjb25zdCBTQ01JV3JhcHBlcldlYlNlYXJjaEJ1dHRvbiA9IHN0eWxlZC5kaXY8eyBpc0FjdGl2ZTogYm9vbGVhbjsgJGlzRm9jdXNlZD86IGJvb2xlYW4gfT5gXG4gICR7YmFzZUJ1dHRvbkFjdGlvblN0eWxlc31cbiAgYm9yZGVyOiAxcHggc29saWQgJHtnZXRXZWJTZWFyY2hCb3JkZXJDb2xvcn07XG4gIGJhY2tncm91bmQtY29sb3I6ICR7KHsgaXNBY3RpdmUgfSkgPT4gKCFpc0FjdGl2ZSA/ICcjZmZmZmZmJyA6ICdyZ2JhKDI0NywgMjQwLCAyNTIsIDEpJyl9O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gICR7KHsgaXNBY3RpdmUgfSkgPT5cbiAgICAhaXNBY3RpdmUgJiZcbiAgICBjc3NgXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNDcsIDI0MCwgMjUyLCAxKSAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEzNSwgNjQsIDE5MSwgMSkgIWltcG9ydGFudDtcbiAgICAgICAgc3ZnICoge1xuICAgICAgICAgIGZpbGw6IHJnYmEoMTM1LCA2NCwgMTkxLCAxKSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgYH1cbmBcblxuY29uc3QgZ2V0RGVlcFNlYXJjaEJvcmRlckNvbG9yID0gKHA6IHsgaXNBY3RpdmU6IGJvb2xlYW47ICRpc0ZvY3VzZWQ/OiBib29sZWFuIH0pID0+IHtcbiAgaWYgKHAuaXNBY3RpdmUpIHJldHVybiAncmdiYSgxMzUsIDY0LCAxOTEsIDEpJ1xuICByZXR1cm4gcC4kaXNGb2N1c2VkICE9PSBmYWxzZSA/ICcjNjY2NjY2JyA6ICcjOTk5J1xufVxuXG5leHBvcnQgY29uc3QgU0NNSVdyYXBwZXJEZWVwU2VhcmNoQnV0dG9uID0gc3R5bGVkLmRpdjx7IGlzQWN0aXZlOiBib29sZWFuOyAkaXNGb2N1c2VkPzogYm9vbGVhbiB9PmBcbiAgJHtiYXNlQnV0dG9uQWN0aW9uU3R5bGVzfVxuICBib3JkZXI6IDFweCBzb2xpZCAke2dldERlZXBTZWFyY2hCb3JkZXJDb2xvcn07XG4gIGJhY2tncm91bmQtY29sb3I6ICR7KHsgaXNBY3RpdmUgfSkgPT4gKCFpc0FjdGl2ZSA/ICcjZmZmZmZmJyA6ICdyZ2JhKDI0NywgMjQwLCAyNTIsIDEpJyl9O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gICR7KHsgaXNBY3RpdmUgfSkgPT5cbiAgICAhaXNBY3RpdmUgJiZcbiAgICBjc3NgXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNDcsIDI0MCwgMjUyLCAxKSAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEzNSwgNjQsIDE5MSwgMSkgIWltcG9ydGFudDtcbiAgICAgICAgc3ZnICoge1xuICAgICAgICAgIHN0cm9rZTogcmdiYSgxMzUsIDY0LCAxOTEsIDEpICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICBgfVxuYFxuZXhwb3J0IGNvbnN0IFN0eWxlZE1BSUFTdG9wSWNvbiA9IHN0eWxlZC5kaXZgXG4gIHdpZHRoOiAxM3B4O1xuICBoZWlnaHQ6IDEzcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4YzhjOGM7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbmBcbmV4cG9ydCBjb25zdCBTdHlsZWRNQUlBU3RvcEJ1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgZm9udDogaW5oZXJpdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMiAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDMwcHg7XG4gIHdpZHRoOiAzMHB4O1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjBmYyAhaW1wb3J0YW50O1xuXG4gICAgJHtTdHlsZWRNQUlBU3RvcEljb259IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNhYTZlZGU7XG4gICAgfVxuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyICFpbXBvcnRhbnQ7XG4gICAgb3BhY2l0eTogMC42O1xuICB9XG5gXG4iXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0EsT0FBT0EsTUFBTSxJQUFJQyxHQUFHLEVBQUVDLFNBQVMsUUFBUSxtQkFBbUI7QUFDMUQsT0FBT0MsTUFBTSxNQUFNLG1DQUFtQztBQUN0RCxTQUFTQyxhQUFhLFFBQVEsd0JBQXdCO0FBQ3RELFNBQVNDLGdCQUFnQixRQUFRLG1DQUFtQztBQUNwRSxTQUFTQyxXQUFXLFFBQVEsZ0JBQWdCO0FBRTVDLE9BQU8sSUFBTUMsSUFBSSxHQUFHTCxTQUFTLHdHQVU1QjtBQUVELElBQU1NLGlCQUFpQixHQUFHUCxHQUFHLHVSQU9kTSxJQUFJLEVBR0tILGFBQWEsQ0FBQ0ssS0FBSyxFQUU3QkwsYUFBYSxDQUFDTSxPQUFPLENBR2xDO0FBRUQsT0FBTyxJQUFNQyxzQkFBc0IsR0FBR1gsTUFBTSxDQUFDWSxHQUFHLENBQUFDLFVBQUE7RUFBQUMsV0FBQTtFQUFBQyxXQUFBO0FBQUEsbVBBUzFCWixNQUFNLENBQUNhLElBQUksQ0FBQ0MsUUFBUSxFQUc5QixVQUFBQyxJQUFBO0VBQUEsSUFBR0QsUUFBUSxHQUFBQyxJQUFBLENBQVJELFFBQVE7RUFBQSxPQUFRQSxRQUFRLEdBQUcsYUFBYSxHQUFHLE1BQU07QUFBQSxDQUFDLEVBR3hELFVBQUFFLEtBQUE7RUFBQSxJQUFHQyxZQUFZLEdBQUFELEtBQUEsQ0FBWkMsWUFBWTtFQUFBLE9BQVFBLFlBQVksS0FBSyxVQUFVLEdBQUcsS0FBSyxHQUFHLEdBQUc7QUFBQSxDQUFDLEVBSXBFWixpQkFBaUIsRUFHbkIsVUFBQWEsS0FBQTtFQUFBLElBQUdDLGNBQWMsR0FBQUQsS0FBQSxDQUFkQyxjQUFjO0VBQUEsT0FDakJBLGNBQWMsSUFDZHJCLEdBQUcsV0FDQ08saUJBQWlCLENBQ3BCO0FBQUEsRUFDSjtBQUVELE9BQU8sSUFBTWUsc0JBQXNCLEdBQUd2QixNQUFNLENBQUNZLEdBQUcsQ0FBQUMsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSw0RUFJM0IsVUFBQVMsS0FBQTtFQUFBLElBQUdDLGdCQUFnQixHQUFBRCxLQUFBLENBQWhCQyxnQkFBZ0I7RUFBQSxPQUFRQSxnQkFBZ0IsR0FBRyxlQUFlLEdBQUcsVUFBVTtBQUFBLENBQUMsQ0FDL0Y7QUFFRCxPQUFPLElBQU1DLGVBQWUsR0FBRzFCLE1BQU0sQ0FBQzJCLFFBQVEsQ0FBQWQsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSxxUEFHMUNWLGdCQUFnQixFQXFCUEYsTUFBTSxDQUFDYSxJQUFJLENBQUNZLFNBQVMsQ0FFakM7QUFFRCxPQUFPLElBQU1DLHdCQUF3QixHQUFHN0IsTUFBTSxDQUFDWSxHQUFHLENBQUFDLFVBQUE7RUFBQUMsV0FBQTtFQUFBQyxXQUFBO0FBQUEsK0VBTWpEO0FBRUQsT0FBTyxJQUFNZSxxQkFBcUIsR0FBRzlCLE1BQU0sQ0FBQytCLElBQUksQ0FBQWxCLFVBQUE7RUFBQUMsV0FBQTtFQUFBQyxXQUFBO0FBQUEsNkZBTS9DO0FBRUQsT0FBTyxJQUFNaUIsa0JBQWtCLEdBQUdoQyxNQUFNLENBQUNpQyxDQUFDLENBQUFwQixVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLDgwREF3QnpDO0FBRUQsT0FBTyxJQUFNbUIsc0JBQXNCLEdBQUdsQyxNQUFNLENBQUNtQyxNQUFNLENBQUF0QixVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLHlPQWtCbEQ7QUFFRCxPQUFPLElBQU1xQixvQkFBb0IsR0FBR3BDLE1BQU0sQ0FBQ00sV0FBVyxDQUFDLENBQUFPLFVBQUE7RUFBQUMsV0FBQTtFQUFBQyxXQUFBO0FBQUEseWZBQ2pDLFVBQUFzQixLQUFBO0VBQUEsSUFBR0MsU0FBUyxHQUFBRCxLQUFBLENBQVRDLFNBQVM7RUFBQSxPQUFRQSxTQUFTLEdBQUcsU0FBUyxHQUFHLFNBQVM7QUFBQSxDQUFDLEVBV3RFLFVBQUFDLEtBQUE7RUFBQSxJQUFHRCxTQUFTLEdBQUFDLEtBQUEsQ0FBVEQsU0FBUztFQUFBLE9BQ1pBLFNBQVMsSUFDVHJDLEdBQUcsOENBSUY7QUFBQSxHQXlCRCxVQUFBdUMsS0FBQTtFQUFBLElBQUdGLFNBQVMsR0FBQUUsS0FBQSxDQUFURixTQUFTO0VBQUEsT0FDWixDQUFDQSxTQUFTLElBQ1ZyQyxHQUFHLG1DQUVTRSxNQUFNLENBQUNhLElBQUksQ0FBQ0MsUUFBUSxDQUUvQjtBQUFBLEVBWU47QUFFRCxPQUFPLElBQU13QixzQkFBc0IsR0FBR3pDLE1BQU0sQ0FBQ1ksR0FBRyxDQUFBQyxVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLGlEQUkvQztBQUNELE9BQU8sSUFBTTJCLHdCQUF3QixHQUFHMUMsTUFBTSxDQUFDWSxHQUFHLENBQUFDLFVBQUE7RUFBQUMsV0FBQTtFQUFBQyxXQUFBO0FBQUEsNE1BZWpEO0FBRUQsT0FBTyxJQUFNNEIsY0FBYyxHQUFHM0MsTUFBTSxDQUFDWSxHQUFHLENBQUFDLFVBQUE7RUFBQUMsV0FBQTtFQUFBQyxXQUFBO0FBQUEsc01BU3BDLFVBQUE2QixLQUFBO0VBQUEsSUFBR0MsT0FBTyxHQUFBRCxLQUFBLENBQVBDLE9BQU87RUFBQSxPQUNWQSxPQUFPLElBQ1A1QyxHQUFHLDZCQUVGO0FBQUEsR0FHQ3lDLHdCQUF3QixDQUk3QjtBQUVELElBQU1JLHNCQUFzQixHQUFHN0MsR0FBRywrSEFRakM7QUFDRCxJQUFNOEMsd0JBQXdCLEdBQUcsU0FBM0JBLHdCQUF3QkEsQ0FBSUMsQ0FBMkUsRUFBSztFQUNoSCxJQUFJQSxDQUFDLENBQUMxQixjQUFjLElBQUkwQixDQUFDLENBQUNDLFdBQVcsRUFBRSxPQUFPLHVCQUF1QjtFQUNyRSxPQUFPRCxDQUFDLENBQUNFLFVBQVUsS0FBSyxLQUFLLEdBQUcsU0FBUyxHQUFHLE1BQU07QUFDcEQsQ0FBQztBQUVELE9BQU8sSUFBTUMsMkJBQTJCLEdBQUduRCxNQUFNLENBQUNZLEdBQUcsQ0FBQUMsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSx3TkFLakQrQixzQkFBc0IsRUFDSkMsd0JBQXdCLEVBQ3hCLFVBQUFLLEtBQUE7RUFBQSxJQUFHOUIsY0FBYyxHQUFBOEIsS0FBQSxDQUFkOUIsY0FBYztJQUFFMkIsV0FBVyxHQUFBRyxLQUFBLENBQVhILFdBQVc7RUFBQSxPQUNoRCxDQUFDM0IsY0FBYyxJQUFJLENBQUMyQixXQUFXLEdBQUcsU0FBUyxHQUFHLHdCQUF3QjtBQUFBLEdBQzlELFVBQUFJLEtBQUE7RUFBQSxJQUFHL0IsY0FBYyxHQUFBK0IsS0FBQSxDQUFkL0IsY0FBYztJQUFFMkIsV0FBVyxHQUFBSSxLQUFBLENBQVhKLFdBQVc7RUFBQSxPQUFRM0IsY0FBYyxJQUFJMkIsV0FBVyxHQUFHLFNBQVMsR0FBRyxTQUFTO0FBQUEsQ0FBQyxDQVN2RztBQUNELElBQU1LLHVCQUF1QixHQUFHLFNBQTFCQSx1QkFBdUJBLENBQUlOLENBQThDLEVBQUs7RUFDbEYsSUFBSUEsQ0FBQyxDQUFDTyxRQUFRLEVBQUUsT0FBTyx1QkFBdUI7RUFDOUMsT0FBT1AsQ0FBQyxDQUFDRSxVQUFVLEtBQUssS0FBSyxHQUFHLFNBQVMsR0FBRyxNQUFNO0FBQ3BELENBQUM7QUFFRCxPQUFPLElBQU1NLDBCQUEwQixHQUFHeEQsTUFBTSxDQUFDWSxHQUFHLENBQUFDLFVBQUE7RUFBQUMsV0FBQTtFQUFBQyxXQUFBO0FBQUEsNkVBQ2hEK0Isc0JBQXNCLEVBQ0pRLHVCQUF1QixFQUN2QixVQUFBRyxLQUFBO0VBQUEsSUFBR0YsUUFBUSxHQUFBRSxLQUFBLENBQVJGLFFBQVE7RUFBQSxPQUFRLENBQUNBLFFBQVEsR0FBRyxTQUFTLEdBQUcsd0JBQXdCO0FBQUEsQ0FBQyxFQUV0RixVQUFBRyxNQUFBO0VBQUEsSUFBR0gsUUFBUSxHQUFBRyxNQUFBLENBQVJILFFBQVE7RUFBQSxPQUNYLENBQUNBLFFBQVEsSUFDVHRELEdBQUcsd0pBUUY7QUFBQSxFQUNKO0FBRUQsSUFBTTBELHdCQUF3QixHQUFHLFNBQTNCQSx3QkFBd0JBLENBQUlYLENBQThDLEVBQUs7RUFDbkYsSUFBSUEsQ0FBQyxDQUFDTyxRQUFRLEVBQUUsT0FBTyx1QkFBdUI7RUFDOUMsT0FBT1AsQ0FBQyxDQUFDRSxVQUFVLEtBQUssS0FBSyxHQUFHLFNBQVMsR0FBRyxNQUFNO0FBQ3BELENBQUM7QUFFRCxPQUFPLElBQU1VLDJCQUEyQixHQUFHNUQsTUFBTSxDQUFDWSxHQUFHLENBQUFDLFVBQUE7RUFBQUMsV0FBQTtFQUFBQyxXQUFBO0FBQUEsNkVBQ2pEK0Isc0JBQXNCLEVBQ0phLHdCQUF3QixFQUN4QixVQUFBRSxNQUFBO0VBQUEsSUFBR04sUUFBUSxHQUFBTSxNQUFBLENBQVJOLFFBQVE7RUFBQSxPQUFRLENBQUNBLFFBQVEsR0FBRyxTQUFTLEdBQUcsd0JBQXdCO0FBQUEsQ0FBQyxFQUV0RixVQUFBTyxNQUFBO0VBQUEsSUFBR1AsUUFBUSxHQUFBTyxNQUFBLENBQVJQLFFBQVE7RUFBQSxPQUNYLENBQUNBLFFBQVEsSUFDVHRELEdBQUcsMEpBUUY7QUFBQSxFQUNKO0FBQ0QsT0FBTyxJQUFNOEQsa0JBQWtCLEdBQUcvRCxNQUFNLENBQUNZLEdBQUcsQ0FBQUMsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSwwRUFLM0M7QUFDRCxPQUFPLElBQU1pRCxvQkFBb0IsR0FBR2hFLE1BQU0sQ0FBQ21DLE1BQU0sQ0FBQXRCLFVBQUE7RUFBQUMsV0FBQTtFQUFBQyxXQUFBO0FBQUEsMFdBaUIzQ2dELGtCQUFrQixDQVV2QiIsImlnbm9yZUxpc3QiOltdfQ==
@@ -1,214 +1,77 @@
1
1
  import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
- import { useRef, useState, useEffect } from 'react';
3
- import { ChevronRight } from '@projectcor/icons/lib/components/ChevronRight';
4
- import { Search } from '@projectcor/icons/lib/components/Search';
5
- import pallete from '@projectcor/theme/lib/base/colors';
2
+ import { useMemo, useState, useEffect } from 'react';
6
3
  import { useTranslation } from 'react-i18next';
7
- import { SCPSInput, SCPSWrapper, SCPSContainer, SCPSSelectContainer, SCPSResultContainer, SCPSRecentTitle, SCPSRecentList, SCPSRecentItem, SCPSRecentItemInfo, SCPSRecentItemClient, SCPSRecentItemTitle, SCPSRecentItemIcon, SCPSProjectsList } from './ProjectSelector.styles';
4
+ import { EntitySelector } from '../EntitySelector/EntitySelector';
8
5
  import { useProjectSearch } from '../../../hooks/useProjectSearch';
9
6
  import { EVENTS, useEvent } from '../../../hooks/useEvent';
10
- import { LoaderSearchProjects } from '../LoadingSearchProjects';
11
- import { ErrorSearchProjects } from '../ErrorSearchProjects';
12
- import { EmptySearchProjects } from '../EmptySearchProjects';
13
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
7
+ import { SECTIONS } from '../../../constants/config';
8
+ import { jsx as _jsx } from "react/jsx-runtime";
9
+ var mapProjectToEntityItem = function mapProjectToEntityItem(project, withoutClient, withoutTitle) {
10
+ var _project$client$name, _project$client;
11
+ return {
12
+ id: project.id,
13
+ primary: project.title || withoutTitle,
14
+ secondary: (_project$client$name = (_project$client = project.client) === null || _project$client === void 0 ? void 0 : _project$client.name) !== null && _project$client$name !== void 0 ? _project$client$name : withoutClient
15
+ };
16
+ };
14
17
  export var ProjectSelector = function ProjectSelector(_ref) {
15
18
  var onProjectSelected = _ref.onProjectSelected;
16
- var inputRef = useRef(null);
17
- var _useTranslation = useTranslation(['project_selector_section']),
19
+ var _useTranslation = useTranslation([SECTIONS.projectSelector]),
18
20
  t = _useTranslation.t;
19
21
  var eventAmplitude = useEvent();
22
+ var _useState = useState(''),
23
+ _useState2 = _slicedToArray(_useState, 2),
24
+ searchValue = _useState2[0],
25
+ setSearchValue = _useState2[1];
20
26
  var _useProjectSearch = useProjectSearch(),
21
27
  fetchRecentProjects = _useProjectSearch.fetchRecentProjects,
22
28
  recentProjectsLoading = _useProjectSearch.recentProjectsLoading,
23
29
  recentProjectsError = _useProjectSearch.recentProjectsError,
24
30
  recentProjects = _useProjectSearch.recentProjects,
25
31
  updateSearchValue = _useProjectSearch.updateSearchValue;
26
- var _useState = useState(''),
27
- _useState2 = _slicedToArray(_useState, 2),
28
- searchValue = _useState2[0],
29
- setSearchValue = _useState2[1];
30
- var _useState3 = useState(false),
31
- _useState4 = _slicedToArray(_useState3, 2),
32
- isProjectSelected = _useState4[0],
33
- setIsProjectSelected = _useState4[1];
34
- useEffect(function () {
35
- fetchRecentProjects();
36
- eventAmplitude(EVENTS.aiChatSearchContextOpen);
37
- }, [fetchRecentProjects, eventAmplitude]);
38
- var handleClickOutside = function handleClickOutside(e) {
39
- if (inputRef.current) {
40
- var target = e.target;
41
- var wrapper = inputRef.current.closest('#project_selector');
42
- if (wrapper && !wrapper.contains(target)) {
43
- // No cerramos, solo limpiamos si es necesario
44
- }
45
- }
32
+ var handleSearchChange = function handleSearchChange(value) {
33
+ setSearchValue(value);
34
+ updateSearchValue(value);
46
35
  };
47
- useEffect(function () {
48
- document.addEventListener('mousedown', handleClickOutside);
49
- return function () {
50
- document.removeEventListener('mousedown', handleClickOutside);
36
+ var entityItems = useMemo(function () {
37
+ return (recentProjects || []).map(function (p) {
38
+ return mapProjectToEntityItem(p, t('projectSelector.withoutClient'), t('projectSelector.withoutTitle'));
39
+ });
40
+ }, [recentProjects, t]);
41
+ var translations = useMemo(function () {
42
+ return {
43
+ placeholder: t('projectSelector.placeholder'),
44
+ recentTitle: t('projectSelector.recentProjects'),
45
+ searching: t('projectSelector.searchingProjects'),
46
+ empty: t('projectSelector.emptyState'),
47
+ error: t('projectSelector.errorMessage'),
48
+ withoutSecondary: t('projectSelector.withoutClient')
51
49
  };
52
- }, []);
53
- useEffect(function () {
54
- if (!isProjectSelected) {
55
- var timer = setTimeout(function () {
56
- var _inputRef$current;
57
- (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 || _inputRef$current.focus();
58
- }, 0);
59
- return function () {
60
- return clearTimeout(timer);
61
- };
62
- }
63
- return undefined;
64
- }, [isProjectSelected]);
65
- var handlers = {
66
- handleChangeInput: function handleChangeInput(e) {
67
- var searchInputValue = e.target.value;
68
- setSearchValue(searchInputValue);
69
- updateSearchValue(searchInputValue);
70
- },
71
- handleProjectSelected: function handleProjectSelected(project) {
72
- setIsProjectSelected(true);
73
- if (onProjectSelected) {
74
- onProjectSelected(project);
75
- }
76
- }
77
- };
78
- var filterProjects = recentProjects === null || recentProjects === void 0 ? void 0 : recentProjects.filter(function (project) {
79
- var _project$client;
80
- if (!searchValue.trim()) return true;
81
- var projectName = project.title || '';
82
- var clientName = ((_project$client = project.client) === null || _project$client === void 0 ? void 0 : _project$client.name) || '';
83
- return projectName.toLowerCase().includes(searchValue.toLowerCase()) || clientName.toLowerCase().includes(searchValue.toLowerCase());
84
- });
85
- var showRecentProjects = !searchValue.trim() && !isProjectSelected;
86
- var showSearchResults = searchValue.trim() && !isProjectSelected;
87
- var renderContent = function renderContent() {
88
- // Si hay búsqueda activa, mostrar resultados de búsqueda
89
- if (showSearchResults) {
90
- if (recentProjectsLoading) {
91
- return /*#__PURE__*/_jsx(LoaderSearchProjects, {
92
- text: t('projectSelector.searchingProjects')
93
- });
94
- }
95
- if (recentProjectsError) {
96
- return /*#__PURE__*/_jsx(ErrorSearchProjects, {});
97
- }
98
- if (filterProjects && filterProjects.length > 0) {
99
- return /*#__PURE__*/_jsx(SCPSProjectsList, {
100
- children: filterProjects.map(function (project) {
101
- var _project$client$name, _project$client2;
102
- return /*#__PURE__*/_jsxs(SCPSRecentItem, {
103
- onClick: function onClick() {
104
- var resultType = 'custom';
105
- eventAmplitude(EVENTS.aiChatSearchContextSelectResult, {
106
- result_type: resultType
107
- });
108
- handlers.handleProjectSelected(project);
109
- },
110
- children: [/*#__PURE__*/_jsxs(SCPSRecentItemInfo, {
111
- children: [/*#__PURE__*/_jsx(SCPSRecentItemClient, {
112
- children: (_project$client$name = (_project$client2 = project.client) === null || _project$client2 === void 0 ? void 0 : _project$client2.name) !== null && _project$client$name !== void 0 ? _project$client$name : t('projectSelector.withoutClient')
113
- }), /*#__PURE__*/_jsx(SCPSRecentItemTitle, {
114
- dangerouslySetInnerHTML: {
115
- __html: project.title || t('projectSelector.withoutTitle')
116
- }
117
- })]
118
- }), /*#__PURE__*/_jsx(SCPSRecentItemIcon, {
119
- children: /*#__PURE__*/_jsx(ChevronRight, {
120
- width: "16px",
121
- height: "16px",
122
- color: pallete.colors.secondary
123
- })
124
- })]
125
- }, project.id);
126
- })
127
- });
128
- }
129
- return /*#__PURE__*/_jsx(EmptySearchProjects, {
130
- message: t('projectSelector.emptyState'),
131
- searchValue: searchValue
50
+ }, [t]);
51
+ var handleItemSelected = function handleItemSelected(item) {
52
+ var project = recentProjects === null || recentProjects === void 0 ? void 0 : recentProjects.find(function (p) {
53
+ return String(p.id) === String(item.id);
54
+ });
55
+ if (project) {
56
+ eventAmplitude(EVENTS.aiChatSearchContextSelectResult, {
57
+ result_type: 'custom'
132
58
  });
59
+ onProjectSelected === null || onProjectSelected === void 0 || onProjectSelected(project);
133
60
  }
134
-
135
- // Si no hay búsqueda, mostrar proyectos recientes
136
- if (showRecentProjects) {
137
- if (recentProjectsLoading) {
138
- return /*#__PURE__*/_jsx(LoaderSearchProjects, {
139
- text: t('projectSelector.searchingProjects')
140
- });
141
- }
142
- if (recentProjectsError) {
143
- return /*#__PURE__*/_jsx(ErrorSearchProjects, {});
144
- }
145
- if (recentProjects && recentProjects.length > 0) {
146
- return /*#__PURE__*/_jsxs(_Fragment, {
147
- children: [/*#__PURE__*/_jsx(SCPSRecentTitle, {
148
- children: t('projectSelector.recentProjects')
149
- }), /*#__PURE__*/_jsx(SCPSRecentList, {
150
- $recentProjects: true,
151
- children: recentProjects.map(function (project) {
152
- var _project$client$name2, _project$client3;
153
- return /*#__PURE__*/_jsxs(SCPSRecentItem, {
154
- onClick: function onClick() {
155
- var resultType = 'recent';
156
- eventAmplitude(EVENTS.aiChatSearchContextSelectResult, {
157
- result_type: resultType
158
- });
159
- handlers.handleProjectSelected(project);
160
- },
161
- children: [/*#__PURE__*/_jsxs(SCPSRecentItemInfo, {
162
- children: [/*#__PURE__*/_jsx(SCPSRecentItemClient, {
163
- children: (_project$client$name2 = (_project$client3 = project.client) === null || _project$client3 === void 0 ? void 0 : _project$client3.name) !== null && _project$client$name2 !== void 0 ? _project$client$name2 : t('projectSelector.withoutClient')
164
- }), /*#__PURE__*/_jsx(SCPSRecentItemTitle, {
165
- dangerouslySetInnerHTML: {
166
- __html: project.title || t('projectSelector.withoutTitle')
167
- }
168
- })]
169
- }), /*#__PURE__*/_jsx(SCPSRecentItemIcon, {
170
- children: /*#__PURE__*/_jsx(ChevronRight, {
171
- width: "16px",
172
- height: "16px",
173
- color: pallete.colors.secondary
174
- })
175
- })]
176
- }, project.id);
177
- })
178
- })]
179
- });
180
- }
181
-
182
- // Si no hay proyectos recientes y no está cargando ni hay error
183
- return null;
184
- }
185
- return null;
186
61
  };
187
- return /*#__PURE__*/_jsx(SCPSContainer, {
188
- id: "project_selector",
189
- children: !isProjectSelected && /*#__PURE__*/_jsxs(_Fragment, {
190
- children: [/*#__PURE__*/_jsx(SCPSWrapper, {
191
- children: /*#__PURE__*/_jsx(SCPSSelectContainer, {
192
- children: /*#__PURE__*/_jsxs(SCPSResultContainer, {
193
- children: [/*#__PURE__*/_jsx(Search, {
194
- width: "16px",
195
- height: "16px",
196
- color: pallete.colors.secondary
197
- }), /*#__PURE__*/_jsx(SCPSInput, {
198
- value: searchValue,
199
- onChange: handlers.handleChangeInput,
200
- ref: inputRef,
201
- placeholder: t('projectSelector.placeholder')
202
- })]
203
- })
204
- })
205
- }), /*#__PURE__*/_jsx("div", {
206
- style: {
207
- width: '100%'
208
- },
209
- children: renderContent()
210
- })]
211
- })
62
+ useEffect(function () {
63
+ eventAmplitude(EVENTS.aiChatSearchContextOpen);
64
+ }, [eventAmplitude]);
65
+ return /*#__PURE__*/_jsx(EntitySelector, {
66
+ items: entityItems,
67
+ loading: recentProjectsLoading,
68
+ error: recentProjectsError,
69
+ searchValue: searchValue,
70
+ onSearchChange: handleSearchChange,
71
+ fetchRecent: fetchRecentProjects,
72
+ onItemSelected: handleItemSelected,
73
+ translations: translations,
74
+ containerId: "project_selector"
212
75
  });
213
76
  };
214
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VSZWYiLCJ1c2VTdGF0ZSIsInVzZUVmZmVjdCIsIkNoZXZyb25SaWdodCIsIlNlYXJjaCIsInBhbGxldGUiLCJ1c2VUcmFuc2xhdGlvbiIsIlNDUFNJbnB1dCIsIlNDUFNXcmFwcGVyIiwiU0NQU0NvbnRhaW5lciIsIlNDUFNTZWxlY3RDb250YWluZXIiLCJTQ1BTUmVzdWx0Q29udGFpbmVyIiwiU0NQU1JlY2VudFRpdGxlIiwiU0NQU1JlY2VudExpc3QiLCJTQ1BTUmVjZW50SXRlbSIsIlNDUFNSZWNlbnRJdGVtSW5mbyIsIlNDUFNSZWNlbnRJdGVtQ2xpZW50IiwiU0NQU1JlY2VudEl0ZW1UaXRsZSIsIlNDUFNSZWNlbnRJdGVtSWNvbiIsIlNDUFNQcm9qZWN0c0xpc3QiLCJ1c2VQcm9qZWN0U2VhcmNoIiwiRVZFTlRTIiwidXNlRXZlbnQiLCJMb2FkZXJTZWFyY2hQcm9qZWN0cyIsIkVycm9yU2VhcmNoUHJvamVjdHMiLCJFbXB0eVNlYXJjaFByb2plY3RzIiwianN4IiwiX2pzeCIsImpzeHMiLCJfanN4cyIsIkZyYWdtZW50IiwiX0ZyYWdtZW50IiwiUHJvamVjdFNlbGVjdG9yIiwiX3JlZiIsIm9uUHJvamVjdFNlbGVjdGVkIiwiaW5wdXRSZWYiLCJfdXNlVHJhbnNsYXRpb24iLCJ0IiwiZXZlbnRBbXBsaXR1ZGUiLCJfdXNlUHJvamVjdFNlYXJjaCIsImZldGNoUmVjZW50UHJvamVjdHMiLCJyZWNlbnRQcm9qZWN0c0xvYWRpbmciLCJyZWNlbnRQcm9qZWN0c0Vycm9yIiwicmVjZW50UHJvamVjdHMiLCJ1cGRhdGVTZWFyY2hWYWx1ZSIsIl91c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheSIsInNlYXJjaFZhbHVlIiwic2V0U2VhcmNoVmFsdWUiLCJfdXNlU3RhdGUzIiwiX3VzZVN0YXRlNCIsImlzUHJvamVjdFNlbGVjdGVkIiwic2V0SXNQcm9qZWN0U2VsZWN0ZWQiLCJhaUNoYXRTZWFyY2hDb250ZXh0T3BlbiIsImhhbmRsZUNsaWNrT3V0c2lkZSIsImUiLCJjdXJyZW50IiwidGFyZ2V0Iiwid3JhcHBlciIsImNsb3Nlc3QiLCJjb250YWlucyIsImRvY3VtZW50IiwiYWRkRXZlbnRMaXN0ZW5lciIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJ0aW1lciIsInNldFRpbWVvdXQiLCJfaW5wdXRSZWYkY3VycmVudCIsImZvY3VzIiwiY2xlYXJUaW1lb3V0IiwidW5kZWZpbmVkIiwiaGFuZGxlcnMiLCJoYW5kbGVDaGFuZ2VJbnB1dCIsInNlYXJjaElucHV0VmFsdWUiLCJ2YWx1ZSIsImhhbmRsZVByb2plY3RTZWxlY3RlZCIsInByb2plY3QiLCJmaWx0ZXJQcm9qZWN0cyIsImZpbHRlciIsIl9wcm9qZWN0JGNsaWVudCIsInRyaW0iLCJwcm9qZWN0TmFtZSIsInRpdGxlIiwiY2xpZW50TmFtZSIsImNsaWVudCIsIm5hbWUiLCJ0b0xvd2VyQ2FzZSIsImluY2x1ZGVzIiwic2hvd1JlY2VudFByb2plY3RzIiwic2hvd1NlYXJjaFJlc3VsdHMiLCJyZW5kZXJDb250ZW50IiwidGV4dCIsImxlbmd0aCIsImNoaWxkcmVuIiwibWFwIiwiX3Byb2plY3QkY2xpZW50JG5hbWUiLCJfcHJvamVjdCRjbGllbnQyIiwib25DbGljayIsInJlc3VsdFR5cGUiLCJhaUNoYXRTZWFyY2hDb250ZXh0U2VsZWN0UmVzdWx0IiwicmVzdWx0X3R5cGUiLCJkYW5nZXJvdXNseVNldElubmVySFRNTCIsIl9faHRtbCIsIndpZHRoIiwiaGVpZ2h0IiwiY29sb3IiLCJjb2xvcnMiLCJzZWNvbmRhcnkiLCJpZCIsIm1lc3NhZ2UiLCIkcmVjZW50UHJvamVjdHMiLCJfcHJvamVjdCRjbGllbnQkbmFtZTIiLCJfcHJvamVjdCRjbGllbnQzIiwib25DaGFuZ2UiLCJyZWYiLCJwbGFjZWhvbGRlciIsInN0eWxlIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvYXRvbXMvUHJvamVjdFNlbGVjdG9yL1Byb2plY3RTZWxlY3Rvci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRkMsIFJlZk9iamVjdCwgdXNlUmVmLCB1c2VTdGF0ZSwgdXNlRWZmZWN0LCBDaGFuZ2VFdmVudCB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgQ2hldnJvblJpZ2h0IH0gZnJvbSAnQHByb2plY3Rjb3IvaWNvbnMvbGliL2NvbXBvbmVudHMvQ2hldnJvblJpZ2h0J1xuaW1wb3J0IHsgU2VhcmNoIH0gZnJvbSAnQHByb2plY3Rjb3IvaWNvbnMvbGliL2NvbXBvbmVudHMvU2VhcmNoJ1xuaW1wb3J0IHBhbGxldGUgZnJvbSAnQHByb2plY3Rjb3IvdGhlbWUvbGliL2Jhc2UvY29sb3JzJ1xuaW1wb3J0IHsgdXNlVHJhbnNsYXRpb24gfSBmcm9tICdyZWFjdC1pMThuZXh0J1xuaW1wb3J0IHtcbiAgU0NQU0lucHV0LFxuICBTQ1BTV3JhcHBlcixcbiAgU0NQU0NvbnRhaW5lcixcbiAgU0NQU1NlbGVjdENvbnRhaW5lcixcbiAgU0NQU1Jlc3VsdENvbnRhaW5lcixcbiAgU0NQU1JlY2VudFRpdGxlLFxuICBTQ1BTUmVjZW50TGlzdCxcbiAgU0NQU1JlY2VudEl0ZW0sXG4gIFNDUFNSZWNlbnRJdGVtSW5mbyxcbiAgU0NQU1JlY2VudEl0ZW1DbGllbnQsXG4gIFNDUFNSZWNlbnRJdGVtVGl0bGUsXG4gIFNDUFNSZWNlbnRJdGVtSWNvbixcbiAgU0NQU1Byb2plY3RzTGlzdCxcbn0gZnJvbSAnLi9Qcm9qZWN0U2VsZWN0b3Iuc3R5bGVzJ1xuaW1wb3J0IHsgdXNlUHJvamVjdFNlYXJjaCwgUHJvamVjdFNldHRlciB9IGZyb20gJy4uLy4uLy4uL2hvb2tzL3VzZVByb2plY3RTZWFyY2gnXG5pbXBvcnQgeyBFVkVOVFMsIHVzZUV2ZW50IH0gZnJvbSAnLi4vLi4vLi4vaG9va3MvdXNlRXZlbnQnXG5pbXBvcnQgeyBMb2FkZXJTZWFyY2hQcm9qZWN0cyB9IGZyb20gJy4uL0xvYWRpbmdTZWFyY2hQcm9qZWN0cydcbmltcG9ydCB7IEVycm9yU2VhcmNoUHJvamVjdHMgfSBmcm9tICcuLi9FcnJvclNlYXJjaFByb2plY3RzJ1xuaW1wb3J0IHsgRW1wdHlTZWFyY2hQcm9qZWN0cyB9IGZyb20gJy4uL0VtcHR5U2VhcmNoUHJvamVjdHMnXG5cbnR5cGUgUHJvamVjdFNlbGVjdG9yUHJvcHMgPSB7XG4gIG9uUHJvamVjdFNlbGVjdGVkPzogKHByb2plY3Q6IFByb2plY3RTZXR0ZXIpID0+IHZvaWRcbn1cblxuZXhwb3J0IGNvbnN0IFByb2plY3RTZWxlY3RvcjogRkM8UHJvamVjdFNlbGVjdG9yUHJvcHM+ID0gKHsgb25Qcm9qZWN0U2VsZWN0ZWQgfSkgPT4ge1xuICBjb25zdCBpbnB1dFJlZjogUmVmT2JqZWN0PEhUTUxJbnB1dEVsZW1lbnQ+ID0gdXNlUmVmKG51bGwpXG4gIGNvbnN0IHsgdCB9ID0gdXNlVHJhbnNsYXRpb24oWydwcm9qZWN0X3NlbGVjdG9yX3NlY3Rpb24nXSlcbiAgY29uc3QgZXZlbnRBbXBsaXR1ZGUgPSB1c2VFdmVudCgpXG5cbiAgY29uc3QgeyBmZXRjaFJlY2VudFByb2plY3RzLCByZWNlbnRQcm9qZWN0c0xvYWRpbmcsIHJlY2VudFByb2plY3RzRXJyb3IsIHJlY2VudFByb2plY3RzLCB1cGRhdGVTZWFyY2hWYWx1ZSB9ID1cbiAgICB1c2VQcm9qZWN0U2VhcmNoKClcblxuICBjb25zdCBbc2VhcmNoVmFsdWUsIHNldFNlYXJjaFZhbHVlXSA9IHVzZVN0YXRlKCcnKVxuICBjb25zdCBbaXNQcm9qZWN0U2VsZWN0ZWQsIHNldElzUHJvamVjdFNlbGVjdGVkXSA9IHVzZVN0YXRlKGZhbHNlKVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgZmV0Y2hSZWNlbnRQcm9qZWN0cygpXG4gICAgZXZlbnRBbXBsaXR1ZGUoRVZFTlRTLmFpQ2hhdFNlYXJjaENvbnRleHRPcGVuKVxuICB9LCBbZmV0Y2hSZWNlbnRQcm9qZWN0cywgZXZlbnRBbXBsaXR1ZGVdKVxuXG4gIGNvbnN0IGhhbmRsZUNsaWNrT3V0c2lkZSA9IChlOiBNb3VzZUV2ZW50KSA9PiB7XG4gICAgaWYgKGlucHV0UmVmLmN1cnJlbnQpIHtcbiAgICAgIGNvbnN0IHRhcmdldCA9IGUudGFyZ2V0IGFzIE5vZGVcbiAgICAgIGNvbnN0IHdyYXBwZXIgPSBpbnB1dFJlZi5jdXJyZW50LmNsb3Nlc3QoJyNwcm9qZWN0X3NlbGVjdG9yJylcblxuICAgICAgaWYgKHdyYXBwZXIgJiYgIXdyYXBwZXIuY29udGFpbnModGFyZ2V0KSkge1xuICAgICAgICAvLyBObyBjZXJyYW1vcywgc29sbyBsaW1waWFtb3Mgc2kgZXMgbmVjZXNhcmlvXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZWRvd24nLCBoYW5kbGVDbGlja091dHNpZGUpXG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNlZG93bicsIGhhbmRsZUNsaWNrT3V0c2lkZSlcbiAgICB9XG4gIH0sIFtdKVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKCFpc1Byb2plY3RTZWxlY3RlZCkge1xuICAgICAgY29uc3QgdGltZXIgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgaW5wdXRSZWYuY3VycmVudD8uZm9jdXMoKVxuICAgICAgfSwgMClcbiAgICAgIHJldHVybiAoKSA9PiBjbGVhclRpbWVvdXQodGltZXIpXG4gICAgfVxuICAgIHJldHVybiB1bmRlZmluZWRcbiAgfSwgW2lzUHJvamVjdFNlbGVjdGVkXSlcblxuICBjb25zdCBoYW5kbGVycyA9IHtcbiAgICBoYW5kbGVDaGFuZ2VJbnB1dDogKGU6IENoYW5nZUV2ZW50PEhUTUxJbnB1dEVsZW1lbnQ+KSA9PiB7XG4gICAgICBjb25zdCBzZWFyY2hJbnB1dFZhbHVlID0gZS50YXJnZXQudmFsdWVcbiAgICAgIHNldFNlYXJjaFZhbHVlKHNlYXJjaElucHV0VmFsdWUpXG4gICAgICB1cGRhdGVTZWFyY2hWYWx1ZShzZWFyY2hJbnB1dFZhbHVlKVxuICAgIH0sXG4gICAgaGFuZGxlUHJvamVjdFNlbGVjdGVkOiAocHJvamVjdDogUHJvamVjdFNldHRlcikgPT4ge1xuICAgICAgc2V0SXNQcm9qZWN0U2VsZWN0ZWQodHJ1ZSlcbiAgICAgIGlmIChvblByb2plY3RTZWxlY3RlZCkge1xuICAgICAgICBvblByb2plY3RTZWxlY3RlZChwcm9qZWN0KVxuICAgICAgfVxuICAgIH0sXG4gIH1cblxuICBjb25zdCBmaWx0ZXJQcm9qZWN0cyA9IHJlY2VudFByb2plY3RzPy5maWx0ZXIocHJvamVjdCA9PiB7XG4gICAgaWYgKCFzZWFyY2hWYWx1ZS50cmltKCkpIHJldHVybiB0cnVlXG4gICAgY29uc3QgcHJvamVjdE5hbWUgPSBwcm9qZWN0LnRpdGxlIHx8ICcnXG4gICAgY29uc3QgY2xpZW50TmFtZSA9IHByb2plY3QuY2xpZW50Py5uYW1lIHx8ICcnXG4gICAgcmV0dXJuIChcbiAgICAgIHByb2plY3ROYW1lLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoc2VhcmNoVmFsdWUudG9Mb3dlckNhc2UoKSkgfHxcbiAgICAgIGNsaWVudE5hbWUudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhzZWFyY2hWYWx1ZS50b0xvd2VyQ2FzZSgpKVxuICAgIClcbiAgfSlcblxuICBjb25zdCBzaG93UmVjZW50UHJvamVjdHMgPSAhc2VhcmNoVmFsdWUudHJpbSgpICYmICFpc1Byb2plY3RTZWxlY3RlZFxuICBjb25zdCBzaG93U2VhcmNoUmVzdWx0cyA9IHNlYXJjaFZhbHVlLnRyaW0oKSAmJiAhaXNQcm9qZWN0U2VsZWN0ZWRcblxuICBjb25zdCByZW5kZXJDb250ZW50ID0gKCkgPT4ge1xuICAgIC8vIFNpIGhheSBiw7pzcXVlZGEgYWN0aXZhLCBtb3N0cmFyIHJlc3VsdGFkb3MgZGUgYsO6c3F1ZWRhXG4gICAgaWYgKHNob3dTZWFyY2hSZXN1bHRzKSB7XG4gICAgICBpZiAocmVjZW50UHJvamVjdHNMb2FkaW5nKSB7XG4gICAgICAgIHJldHVybiA8TG9hZGVyU2VhcmNoUHJvamVjdHMgdGV4dD17dCgncHJvamVjdFNlbGVjdG9yLnNlYXJjaGluZ1Byb2plY3RzJyl9IC8+XG4gICAgICB9XG5cbiAgICAgIGlmIChyZWNlbnRQcm9qZWN0c0Vycm9yKSB7XG4gICAgICAgIHJldHVybiA8RXJyb3JTZWFyY2hQcm9qZWN0cyAvPlxuICAgICAgfVxuXG4gICAgICBpZiAoZmlsdGVyUHJvamVjdHMgJiYgZmlsdGVyUHJvamVjdHMubGVuZ3RoID4gMCkge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIDxTQ1BTUHJvamVjdHNMaXN0PlxuICAgICAgICAgICAge2ZpbHRlclByb2plY3RzLm1hcChwcm9qZWN0ID0+IChcbiAgICAgICAgICAgICAgPFNDUFNSZWNlbnRJdGVtXG4gICAgICAgICAgICAgICAga2V5PXtwcm9qZWN0LmlkfVxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICAgICAgICAgIGNvbnN0IHJlc3VsdFR5cGUgPSAnY3VzdG9tJ1xuICAgICAgICAgICAgICAgICAgZXZlbnRBbXBsaXR1ZGUoRVZFTlRTLmFpQ2hhdFNlYXJjaENvbnRleHRTZWxlY3RSZXN1bHQsIHsgcmVzdWx0X3R5cGU6IHJlc3VsdFR5cGUgfSlcbiAgICAgICAgICAgICAgICAgIGhhbmRsZXJzLmhhbmRsZVByb2plY3RTZWxlY3RlZChwcm9qZWN0KVxuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8U0NQU1JlY2VudEl0ZW1JbmZvPlxuICAgICAgICAgICAgICAgICAgPFNDUFNSZWNlbnRJdGVtQ2xpZW50PlxuICAgICAgICAgICAgICAgICAgICB7cHJvamVjdC5jbGllbnQ/Lm5hbWUgPz8gdCgncHJvamVjdFNlbGVjdG9yLndpdGhvdXRDbGllbnQnKX1cbiAgICAgICAgICAgICAgICAgIDwvU0NQU1JlY2VudEl0ZW1DbGllbnQ+XG4gICAgICAgICAgICAgICAgICA8U0NQU1JlY2VudEl0ZW1UaXRsZVxuICAgICAgICAgICAgICAgICAgICBkYW5nZXJvdXNseVNldElubmVySFRNTD17eyBfX2h0bWw6IHByb2plY3QudGl0bGUgfHwgdCgncHJvamVjdFNlbGVjdG9yLndpdGhvdXRUaXRsZScpIH19XG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDwvU0NQU1JlY2VudEl0ZW1JbmZvPlxuICAgICAgICAgICAgICAgIDxTQ1BTUmVjZW50SXRlbUljb24+XG4gICAgICAgICAgICAgICAgICA8Q2hldnJvblJpZ2h0IHdpZHRoPVwiMTZweFwiIGhlaWdodD1cIjE2cHhcIiBjb2xvcj17cGFsbGV0ZS5jb2xvcnMuc2Vjb25kYXJ5fSAvPlxuICAgICAgICAgICAgICAgIDwvU0NQU1JlY2VudEl0ZW1JY29uPlxuICAgICAgICAgICAgICA8L1NDUFNSZWNlbnRJdGVtPlxuICAgICAgICAgICAgKSl9XG4gICAgICAgICAgPC9TQ1BTUHJvamVjdHNMaXN0PlxuICAgICAgICApXG4gICAgICB9XG5cbiAgICAgIHJldHVybiA8RW1wdHlTZWFyY2hQcm9qZWN0cyBtZXNzYWdlPXt0KCdwcm9qZWN0U2VsZWN0b3IuZW1wdHlTdGF0ZScpfSBzZWFyY2hWYWx1ZT17c2VhcmNoVmFsdWV9IC8+XG4gICAgfVxuXG4gICAgLy8gU2kgbm8gaGF5IGLDunNxdWVkYSwgbW9zdHJhciBwcm95ZWN0b3MgcmVjaWVudGVzXG4gICAgaWYgKHNob3dSZWNlbnRQcm9qZWN0cykge1xuICAgICAgaWYgKHJlY2VudFByb2plY3RzTG9hZGluZykge1xuICAgICAgICByZXR1cm4gPExvYWRlclNlYXJjaFByb2plY3RzIHRleHQ9e3QoJ3Byb2plY3RTZWxlY3Rvci5zZWFyY2hpbmdQcm9qZWN0cycpfSAvPlxuICAgICAgfVxuXG4gICAgICBpZiAocmVjZW50UHJvamVjdHNFcnJvcikge1xuICAgICAgICByZXR1cm4gPEVycm9yU2VhcmNoUHJvamVjdHMgLz5cbiAgICAgIH1cblxuICAgICAgaWYgKHJlY2VudFByb2plY3RzICYmIHJlY2VudFByb2plY3RzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICA8PlxuICAgICAgICAgICAgPFNDUFNSZWNlbnRUaXRsZT57dCgncHJvamVjdFNlbGVjdG9yLnJlY2VudFByb2plY3RzJyl9PC9TQ1BTUmVjZW50VGl0bGU+XG4gICAgICAgICAgICA8U0NQU1JlY2VudExpc3QgJHJlY2VudFByb2plY3RzPlxuICAgICAgICAgICAgICB7cmVjZW50UHJvamVjdHMubWFwKHByb2plY3QgPT4gKFxuICAgICAgICAgICAgICAgIDxTQ1BTUmVjZW50SXRlbVxuICAgICAgICAgICAgICAgICAga2V5PXtwcm9qZWN0LmlkfVxuICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCByZXN1bHRUeXBlID0gJ3JlY2VudCdcbiAgICAgICAgICAgICAgICAgICAgZXZlbnRBbXBsaXR1ZGUoRVZFTlRTLmFpQ2hhdFNlYXJjaENvbnRleHRTZWxlY3RSZXN1bHQsIHsgcmVzdWx0X3R5cGU6IHJlc3VsdFR5cGUgfSlcbiAgICAgICAgICAgICAgICAgICAgaGFuZGxlcnMuaGFuZGxlUHJvamVjdFNlbGVjdGVkKHByb2plY3QpXG4gICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDxTQ1BTUmVjZW50SXRlbUluZm8+XG4gICAgICAgICAgICAgICAgICAgIDxTQ1BTUmVjZW50SXRlbUNsaWVudD5cbiAgICAgICAgICAgICAgICAgICAgICB7cHJvamVjdC5jbGllbnQ/Lm5hbWUgPz8gdCgncHJvamVjdFNlbGVjdG9yLndpdGhvdXRDbGllbnQnKX1cbiAgICAgICAgICAgICAgICAgICAgPC9TQ1BTUmVjZW50SXRlbUNsaWVudD5cbiAgICAgICAgICAgICAgICAgICAgPFNDUFNSZWNlbnRJdGVtVGl0bGVcbiAgICAgICAgICAgICAgICAgICAgICBkYW5nZXJvdXNseVNldElubmVySFRNTD17eyBfX2h0bWw6IHByb2plY3QudGl0bGUgfHwgdCgncHJvamVjdFNlbGVjdG9yLndpdGhvdXRUaXRsZScpIH19XG4gICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICA8L1NDUFNSZWNlbnRJdGVtSW5mbz5cbiAgICAgICAgICAgICAgICAgIDxTQ1BTUmVjZW50SXRlbUljb24+XG4gICAgICAgICAgICAgICAgICAgIDxDaGV2cm9uUmlnaHQgd2lkdGg9XCIxNnB4XCIgaGVpZ2h0PVwiMTZweFwiIGNvbG9yPXtwYWxsZXRlLmNvbG9ycy5zZWNvbmRhcnl9IC8+XG4gICAgICAgICAgICAgICAgICA8L1NDUFNSZWNlbnRJdGVtSWNvbj5cbiAgICAgICAgICAgICAgICA8L1NDUFNSZWNlbnRJdGVtPlxuICAgICAgICAgICAgICApKX1cbiAgICAgICAgICAgIDwvU0NQU1JlY2VudExpc3Q+XG4gICAgICAgICAgPC8+XG4gICAgICAgIClcbiAgICAgIH1cblxuICAgICAgLy8gU2kgbm8gaGF5IHByb3llY3RvcyByZWNpZW50ZXMgeSBubyBlc3TDoSBjYXJnYW5kbyBuaSBoYXkgZXJyb3JcbiAgICAgIHJldHVybiBudWxsXG4gICAgfVxuXG4gICAgcmV0dXJuIG51bGxcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPFNDUFNDb250YWluZXIgaWQ9XCJwcm9qZWN0X3NlbGVjdG9yXCI+XG4gICAgICB7IWlzUHJvamVjdFNlbGVjdGVkICYmIChcbiAgICAgICAgPD5cbiAgICAgICAgICA8U0NQU1dyYXBwZXI+XG4gICAgICAgICAgICA8U0NQU1NlbGVjdENvbnRhaW5lcj5cbiAgICAgICAgICAgICAgPFNDUFNSZXN1bHRDb250YWluZXI+XG4gICAgICAgICAgICAgICAgPFNlYXJjaCB3aWR0aD1cIjE2cHhcIiBoZWlnaHQ9XCIxNnB4XCIgY29sb3I9e3BhbGxldGUuY29sb3JzLnNlY29uZGFyeX0gLz5cbiAgICAgICAgICAgICAgICA8U0NQU0lucHV0XG4gICAgICAgICAgICAgICAgICB2YWx1ZT17c2VhcmNoVmFsdWV9XG4gICAgICAgICAgICAgICAgICBvbkNoYW5nZT17aGFuZGxlcnMuaGFuZGxlQ2hhbmdlSW5wdXR9XG4gICAgICAgICAgICAgICAgICByZWY9e2lucHV0UmVmfVxuICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9e3QoJ3Byb2plY3RTZWxlY3Rvci5wbGFjZWhvbGRlcicpfVxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDwvU0NQU1Jlc3VsdENvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvU0NQU1NlbGVjdENvbnRhaW5lcj5cbiAgICAgICAgICA8L1NDUFNXcmFwcGVyPlxuICAgICAgICAgIDxkaXYgc3R5bGU9e3sgd2lkdGg6ICcxMDAlJyB9fT57cmVuZGVyQ29udGVudCgpfTwvZGl2PlxuICAgICAgICA8Lz5cbiAgICAgICl9XG4gICAgPC9TQ1BTQ29udGFpbmVyPlxuICApXG59XG4iXSwibWFwcGluZ3MiOiI7QUFBQSxTQUF3QkEsTUFBTSxFQUFFQyxRQUFRLEVBQUVDLFNBQVMsUUFBcUIsT0FBTztBQUMvRSxTQUFTQyxZQUFZLFFBQVEsK0NBQStDO0FBQzVFLFNBQVNDLE1BQU0sUUFBUSx5Q0FBeUM7QUFDaEUsT0FBT0MsT0FBTyxNQUFNLG1DQUFtQztBQUN2RCxTQUFTQyxjQUFjLFFBQVEsZUFBZTtBQUM5QyxTQUNFQyxTQUFTLEVBQ1RDLFdBQVcsRUFDWEMsYUFBYSxFQUNiQyxtQkFBbUIsRUFDbkJDLG1CQUFtQixFQUNuQkMsZUFBZSxFQUNmQyxjQUFjLEVBQ2RDLGNBQWMsRUFDZEMsa0JBQWtCLEVBQ2xCQyxvQkFBb0IsRUFDcEJDLG1CQUFtQixFQUNuQkMsa0JBQWtCLEVBQ2xCQyxnQkFBZ0IsUUFDWCwwQkFBMEI7QUFDakMsU0FBU0MsZ0JBQWdCLFFBQXVCLGlDQUFpQztBQUNqRixTQUFTQyxNQUFNLEVBQUVDLFFBQVEsUUFBUSx5QkFBeUI7QUFDMUQsU0FBU0Msb0JBQW9CLFFBQVEsMEJBQTBCO0FBQy9E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
77
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VNZW1vIiwidXNlU3RhdGUiLCJ1c2VFZmZlY3QiLCJ1c2VUcmFuc2xhdGlvbiIsIkVudGl0eVNlbGVjdG9yIiwidXNlUHJvamVjdFNlYXJjaCIsIkVWRU5UUyIsInVzZUV2ZW50IiwiU0VDVElPTlMiLCJqc3giLCJfanN4IiwibWFwUHJvamVjdFRvRW50aXR5SXRlbSIsInByb2plY3QiLCJ3aXRob3V0Q2xpZW50Iiwid2l0aG91dFRpdGxlIiwiX3Byb2plY3QkY2xpZW50JG5hbWUiLCJfcHJvamVjdCRjbGllbnQiLCJpZCIsInByaW1hcnkiLCJ0aXRsZSIsInNlY29uZGFyeSIsImNsaWVudCIsIm5hbWUiLCJQcm9qZWN0U2VsZWN0b3IiLCJfcmVmIiwib25Qcm9qZWN0U2VsZWN0ZWQiLCJfdXNlVHJhbnNsYXRpb24iLCJwcm9qZWN0U2VsZWN0b3IiLCJ0IiwiZXZlbnRBbXBsaXR1ZGUiLCJfdXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkiLCJzZWFyY2hWYWx1ZSIsInNldFNlYXJjaFZhbHVlIiwiX3VzZVByb2plY3RTZWFyY2giLCJmZXRjaFJlY2VudFByb2plY3RzIiwicmVjZW50UHJvamVjdHNMb2FkaW5nIiwicmVjZW50UHJvamVjdHNFcnJvciIsInJlY2VudFByb2plY3RzIiwidXBkYXRlU2VhcmNoVmFsdWUiLCJoYW5kbGVTZWFyY2hDaGFuZ2UiLCJ2YWx1ZSIsImVudGl0eUl0ZW1zIiwibWFwIiwicCIsInRyYW5zbGF0aW9ucyIsInBsYWNlaG9sZGVyIiwicmVjZW50VGl0bGUiLCJzZWFyY2hpbmciLCJlbXB0eSIsImVycm9yIiwid2l0aG91dFNlY29uZGFyeSIsImhhbmRsZUl0ZW1TZWxlY3RlZCIsIml0ZW0iLCJmaW5kIiwiU3RyaW5nIiwiYWlDaGF0U2VhcmNoQ29udGV4dFNlbGVjdFJlc3VsdCIsInJlc3VsdF90eXBlIiwiYWlDaGF0U2VhcmNoQ29udGV4dE9wZW4iLCJpdGVtcyIsImxvYWRpbmciLCJvblNlYXJjaENoYW5nZSIsImZldGNoUmVjZW50Iiwib25JdGVtU2VsZWN0ZWQiLCJjb250YWluZXJJZCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2F0b21zL1Byb2plY3RTZWxlY3Rvci9Qcm9qZWN0U2VsZWN0b3IudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZDLCB1c2VNZW1vLCB1c2VTdGF0ZSwgdXNlRWZmZWN0IH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyB1c2VUcmFuc2xhdGlvbiB9IGZyb20gJ3JlYWN0LWkxOG5leHQnXG5pbXBvcnQgeyBFbnRpdHlTZWxlY3RvciwgRW50aXR5U2VsZWN0b3JJdGVtIH0gZnJvbSAnLi4vRW50aXR5U2VsZWN0b3IvRW50aXR5U2VsZWN0b3InXG5pbXBvcnQgeyB1c2VQcm9qZWN0U2VhcmNoLCBQcm9qZWN0U2V0dGVyIH0gZnJvbSAnLi4vLi4vLi4vaG9va3MvdXNlUHJvamVjdFNlYXJjaCdcbmltcG9ydCB7IEVWRU5UUywgdXNlRXZlbnQgfSBmcm9tICcuLi8uLi8uLi9ob29rcy91c2VFdmVudCdcbmltcG9ydCB7IFNFQ1RJT05TIH0gZnJvbSAnLi4vLi4vLi4vY29uc3RhbnRzL2NvbmZpZydcblxudHlwZSBQcm9qZWN0U2VsZWN0b3JQcm9wcyA9IHtcbiAgb25Qcm9qZWN0U2VsZWN0ZWQ/OiAocHJvamVjdDogUHJvamVjdFNldHRlcikgPT4gdm9pZFxufVxuXG5jb25zdCBtYXBQcm9qZWN0VG9FbnRpdHlJdGVtID0gKFxuICBwcm9qZWN0OiBQcm9qZWN0U2V0dGVyLFxuICB3aXRob3V0Q2xpZW50OiBzdHJpbmcsXG4gIHdpdGhvdXRUaXRsZTogc3RyaW5nXG4pOiBFbnRpdHlTZWxlY3Rvckl0ZW0gPT4gKHtcbiAgaWQ6IHByb2plY3QuaWQsXG4gIHByaW1hcnk6IHByb2plY3QudGl0bGUgfHwgd2l0aG91dFRpdGxlLFxuICBzZWNvbmRhcnk6IHByb2plY3QuY2xpZW50Py5uYW1lID8/IHdpdGhvdXRDbGllbnQsXG59KVxuXG5leHBvcnQgY29uc3QgUHJvamVjdFNlbGVjdG9yOiBGQzxQcm9qZWN0U2VsZWN0b3JQcm9wcz4gPSAoeyBvblByb2plY3RTZWxlY3RlZCB9KSA9PiB7XG4gIGNvbnN0IHsgdCB9ID0gdXNlVHJhbnNsYXRpb24oW1NFQ1RJT05TLnByb2plY3RTZWxlY3Rvcl0pXG4gIGNvbnN0IGV2ZW50QW1wbGl0dWRlID0gdXNlRXZlbnQoKVxuICBjb25zdCBbc2VhcmNoVmFsdWUsIHNldFNlYXJjaFZhbHVlXSA9IHVzZVN0YXRlKCcnKVxuXG4gIGNvbnN0IHsgZmV0Y2hSZWNlbnRQcm9qZWN0cywgcmVjZW50UHJvamVjdHNMb2FkaW5nLCByZWNlbnRQcm9qZWN0c0Vycm9yLCByZWNlbnRQcm9qZWN0cywgdXBkYXRlU2VhcmNoVmFsdWUgfSA9XG4gICAgdXNlUHJvamVjdFNlYXJjaCgpXG5cbiAgY29uc3QgaGFuZGxlU2VhcmNoQ2hhbmdlID0gKHZhbHVlOiBzdHJpbmcpID0+IHtcbiAgICBzZXRTZWFyY2hWYWx1ZSh2YWx1ZSlcbiAgICB1cGRhdGVTZWFyY2hWYWx1ZSh2YWx1ZSlcbiAgfVxuXG4gIGNvbnN0IGVudGl0eUl0ZW1zID0gdXNlTWVtbyhcbiAgICAoKSA9PlxuICAgICAgKHJlY2VudFByb2plY3RzIHx8IFtdKS5tYXAocCA9PlxuICAgICAgICBtYXBQcm9qZWN0VG9FbnRpdHlJdGVtKHAsIHQoJ3Byb2plY3RTZWxlY3Rvci53aXRob3V0Q2xpZW50JyksIHQoJ3Byb2plY3RTZWxlY3Rvci53aXRob3V0VGl0bGUnKSlcbiAgICAgICksXG4gICAgW3JlY2VudFByb2plY3RzLCB0XVxuICApXG5cbiAgY29uc3QgdHJhbnNsYXRpb25zID0gdXNlTWVtbyhcbiAgICAoKSA9PiAoe1xuICAgICAgcGxhY2Vob2xkZXI6IHQoJ3Byb2plY3RTZWxlY3Rvci5wbGFjZWhvbGRlcicpLFxuICAgICAgcmVjZW50VGl0bGU6IHQoJ3Byb2plY3RTZWxlY3Rvci5yZWNlbnRQcm9qZWN0cycpLFxuICAgICAgc2VhcmNoaW5nOiB0KCdwcm9qZWN0U2VsZWN0b3Iuc2VhcmNoaW5nUHJvamVjdHMnKSxcbiAgICAgIGVtcHR5OiB0KCdwcm9qZWN0U2VsZWN0b3IuZW1wdHlTdGF0ZScpLFxuICAgICAgZXJyb3I6IHQoJ3Byb2plY3RTZWxlY3Rvci5lcnJvck1lc3NhZ2UnKSxcbiAgICAgIHdpdGhvdXRTZWNvbmRhcnk6IHQoJ3Byb2plY3RTZWxlY3Rvci53aXRob3V0Q2xpZW50JyksXG4gICAgfSksXG4gICAgW3RdXG4gIClcblxuICBjb25zdCBoYW5kbGVJdGVtU2VsZWN0ZWQgPSAoaXRlbTogRW50aXR5U2VsZWN0b3JJdGVtKSA9PiB7XG4gICAgY29uc3QgcHJvamVjdCA9IHJlY2VudFByb2plY3RzPy5maW5kKHAgPT4gU3RyaW5nKHAuaWQpID09PSBTdHJpbmcoaXRlbS5pZCkpXG4gICAgaWYgKHByb2plY3QpIHtcbiAgICAgIGV2ZW50QW1wbGl0dWRlKEVWRU5UUy5haUNoYXRTZWFyY2hDb250ZXh0U2VsZWN0UmVzdWx0LCB7IHJlc3VsdF90eXBlOiAnY3VzdG9tJyB9KVxuICAgICAgb25Qcm9qZWN0U2VsZWN0ZWQ/Lihwcm9qZWN0KVxuICAgIH1cbiAgfVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgZXZlbnRBbXBsaXR1ZGUoRVZFTlRTLmFpQ2hhdFNlYXJjaENvbnRleHRPcGVuKVxuICB9LCBbZXZlbnRBbXBsaXR1ZGVdKVxuXG4gIHJldHVybiAoXG4gICAgPEVudGl0eVNlbGVjdG9yXG4gICAgICBpdGVtcz17ZW50aXR5SXRlbXN9XG4gICAgICBsb2FkaW5nPXtyZWNlbnRQcm9qZWN0c0xvYWRpbmd9XG4gICAgICBlcnJvcj17cmVjZW50UHJvamVjdHNFcnJvcn1cbiAgICAgIHNlYXJjaFZhbHVlPXtzZWFyY2hWYWx1ZX1cbiAgICAgIG9uU2VhcmNoQ2hhbmdlPXtoYW5kbGVTZWFyY2hDaGFuZ2V9XG4gICAgICBmZXRjaFJlY2VudD17ZmV0Y2hSZWNlbnRQcm9qZWN0c31cbiAgICAgIG9uSXRlbVNlbGVjdGVkPXtoYW5kbGVJdGVtU2VsZWN0ZWR9XG4gICAgICB0cmFuc2xhdGlvbnM9e3RyYW5zbGF0aW9uc31cbiAgICAgIGNvbnRhaW5lcklkPVwicHJvamVjdF9zZWxlY3RvclwiXG4gICAgLz5cbiAgKVxufVxuIl0sIm1hcHBpbmdzIjoiO0FBQUEsU0FBYUEsT0FBTyxFQUFFQyxRQUFRLEVBQUVDLFNBQVMsUUFBUSxPQUFPO0FBQ3hELFNBQVNDLGNBQWMsUUFBUSxlQUFlO0FBQzlDLFNBQVNDLGNBQWMsUUFBNEIsa0NBQWtDO0FBQ3JGLFNBQVNDLGdCQUFnQixRQUF1QixpQ0FBaUM7QUFDakYsU0FBU0MsTUFBTSxFQUFFQyxRQUFRLFFBQVEseUJBQXlCO0FBQzFELFNBQVNDLFFBQVEsUUFBUSwyQkFBMkI7QUFBQSxTQUFBQyxHQUFBLElBQUFDLElBQUE7QUFNcEQsSUFBTUMsc0JBQXNCLEdBQUcsU0FBekJBLHNCQUFzQkEsQ0FDMUJDLE9BQXNCLEVBQ3RCQyxhQUFxQixFQUNyQkMsWUFBb0I7RUFBQSxJQUFBQyxvQkFBQSxFQUFBQyxlQUFBO0VBQUEsT0FDSTtJQUN4QkMsRUFBRSxFQUFFTCxPQUFPLENBQUNLLEVBQUU7SUFDZEMsT0FBTyxFQUFFTixPQUFPLENBQUNPLEtBQUssSUFBSUwsWUFBWTtJQUN0Q00sU0FBUyxHQUFBTCxvQkFBQSxJQUFBQyxlQUFBLEdBQUVKLE9BQU8sQ0FBQ1MsTUFBTSxjQUFBTCxlQUFBLHVCQUFkQSxlQUFBLENBQWdCTSxJQUFJLGNBQUFQLG9CQUFBLGNBQUFBLG9CQUFBLEdBQUlGO0VBQ3JDLENBQUM7QUFBQSxDQUFDO0FBRUYsT0FBTyxJQUFNVSxlQUF5QyxHQUFHLFNBQTVDQSxlQUF5Q0EsQ0FBQUMsSUFBQSxFQUE4QjtFQUFBLElBQXhCQyxpQkFBaUIsR0FBQUQsSUFBQSxDQUFqQkMsaUJBQWlCO0VBQzNFLElBQUFDLGVBQUEsR0FBY3ZCLGNBQWMsQ0FBQyxDQUFDSyxRQUFRLENBQUNtQixlQUFlLENBQUMsQ0FBQztJQUFoREMsQ0FBQyxHQUFBRixlQUFBLENBQURFLENBQUM7RUFD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
@@ -0,0 +1,5 @@
1
+ import { TaskStepSelector } from './steps';
2
+ export var categoryStepRegistry = {
3
+ tasks: TaskStepSelector
4
+ };
5
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJUYXNrU3RlcFNlbGVjdG9yIiwiY2F0ZWdvcnlTdGVwUmVnaXN0cnkiLCJ0YXNrcyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2F0b21zL1NsYXNoQ29tbWFuZERyb3Bkb3duL0NhdGVnb3J5U3RlcFJlZ2lzdHJ5LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRhc2tTdGVwU2VsZWN0b3IgfSBmcm9tICcuL3N0ZXBzJ1xuaW1wb3J0IHR5cGUgeyBDYXRlZ29yeVN0ZXBSZWdpc3RyeSB9IGZyb20gJy4vdHlwZXMnXG5cbmV4cG9ydCBjb25zdCBjYXRlZ29yeVN0ZXBSZWdpc3RyeTogQ2F0ZWdvcnlTdGVwUmVnaXN0cnkgPSB7XG4gIHRhc2tzOiBUYXNrU3RlcFNlbGVjdG9yLFxufVxuIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUFTQSxnQkFBZ0IsUUFBUSxTQUFTO0FBRzFDLE9BQU8sSUFBTUMsb0JBQTBDLEdBQUc7RUFDeERDLEtBQUssRUFBRUY7QUFDVCxDQUFDIiwiaWdub3JlTGlzdCI6W119
@@ -0,0 +1,56 @@
1
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
+ import { useState } from 'react';
3
+ import { SlashCommandList } from './SlashCommandList';
4
+ import { categoryStepRegistry } from './CategoryStepRegistry';
5
+ import { SCDropdownContainer } from './styles';
6
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
7
+ export var SlashCommandDropdown = function SlashCommandDropdown(_ref) {
8
+ var actions = _ref.actions,
9
+ projectId = _ref.projectId,
10
+ onCommandSelect = _ref.onCommandSelect,
11
+ onEntitySelect = _ref.onEntitySelect;
12
+ var _useState = useState('commands'),
13
+ _useState2 = _slicedToArray(_useState, 2),
14
+ step = _useState2[0],
15
+ setStep = _useState2[1];
16
+ var _useState3 = useState(null),
17
+ _useState4 = _slicedToArray(_useState3, 2),
18
+ selectedAction = _useState4[0],
19
+ setSelectedAction = _useState4[1];
20
+ var handleActionSelect = function handleActionSelect(action) {
21
+ var _action$context_filte, _action$context_filte2;
22
+ var filterKey = (_action$context_filte = (_action$context_filte2 = action.context_filters) === null || _action$context_filte2 === void 0 ? void 0 : _action$context_filte2[0]) !== null && _action$context_filte !== void 0 ? _action$context_filte : action.section;
23
+ if (filterKey) {
24
+ var _StepComponent = categoryStepRegistry[filterKey];
25
+ if (_StepComponent) {
26
+ setSelectedAction(action);
27
+ setStep(filterKey);
28
+ return;
29
+ }
30
+ }
31
+ onCommandSelect(action.prompt);
32
+ };
33
+ var handleBack = function handleBack() {
34
+ setStep('commands');
35
+ setSelectedAction(null);
36
+ };
37
+ var handleEntitySelected = function handleEntitySelected(entity) {
38
+ if (!selectedAction) return;
39
+ onEntitySelect(entity, selectedAction.prompt);
40
+ setStep('commands');
41
+ setSelectedAction(null);
42
+ };
43
+ var StepComponent = step !== 'commands' ? categoryStepRegistry[step] : null;
44
+ return /*#__PURE__*/_jsxs(SCDropdownContainer, {
45
+ children: [step === 'commands' && /*#__PURE__*/_jsx(SlashCommandList, {
46
+ actions: actions,
47
+ onSelect: handleActionSelect
48
+ }), StepComponent && selectedAction && /*#__PURE__*/_jsx(StepComponent, {
49
+ projectId: projectId,
50
+ onEntitySelected: handleEntitySelected,
51
+ onBack: handleBack,
52
+ title: selectedAction.title
53
+ })]
54
+ });
55
+ };
56
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VTdGF0ZSIsIlNsYXNoQ29tbWFuZExpc3QiLCJjYXRlZ29yeVN0ZXBSZWdpc3RyeSIsIlNDRHJvcGRvd25Db250YWluZXIiLCJqc3giLCJfanN4IiwianN4cyIsIl9qc3hzIiwiU2xhc2hDb21tYW5kRHJvcGRvd24iLCJfcmVmIiwiYWN0aW9ucyIsInByb2plY3RJZCIsIm9uQ29tbWFuZFNlbGVjdCIsIm9uRW50aXR5U2VsZWN0IiwiX3VzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5Iiwic3RlcCIsInNldFN0ZXAiLCJfdXNlU3RhdGUzIiwiX3VzZVN0YXRlNCIsInNlbGVjdGVkQWN0aW9uIiwic2V0U2VsZWN0ZWRBY3Rpb24iLCJoYW5kbGVBY3Rpb25TZWxlY3QiLCJhY3Rpb24iLCJfYWN0aW9uJGNvbnRleHRfZmlsdGUiLCJfYWN0aW9uJGNvbnRleHRfZmlsdGUyIiwiZmlsdGVyS2V5IiwiY29udGV4dF9maWx0ZXJzIiwic2VjdGlvbiIsIlN0ZXBDb21wb25lbnQiLCJwcm9tcHQiLCJoYW5kbGVCYWNrIiwiaGFuZGxlRW50aXR5U2VsZWN0ZWQiLCJlbnRpdHkiLCJjaGlsZHJlbiIsIm9uU2VsZWN0Iiwib25FbnRpdHlTZWxlY3RlZCIsIm9uQmFjayIsInRpdGxlIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvYXRvbXMvU2xhc2hDb21tYW5kRHJvcGRvd24vU2xhc2hDb21tYW5kRHJvcGRvd24udHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZDLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHR5cGUgeyBTbGFzaENvbW1hbmQgfSBmcm9tICcuLi8uLi8uLi90eXBlcy9TbGFzaENvbW1hbmQnXG5pbXBvcnQgeyBTbGFzaENvbW1hbmRMaXN0IH0gZnJvbSAnLi9TbGFzaENvbW1hbmRMaXN0J1xuaW1wb3J0IHsgY2F0ZWdvcnlTdGVwUmVnaXN0cnkgfSBmcm9tICcuL0NhdGVnb3J5U3RlcFJlZ2lzdHJ5J1xuaW1wb3J0IHsgU0NEcm9wZG93bkNvbnRhaW5lciB9IGZyb20gJy4vc3R5bGVzJ1xuXG50eXBlIFNsYXNoQ29tbWFuZERyb3Bkb3duUHJvcHMgPSB7XG4gIGFjdGlvbnM6IFNsYXNoQ29tbWFuZFtdXG4gIHByb2plY3RJZDogc3RyaW5nXG4gIG9uQ29tbWFuZFNlbGVjdDogKHByb21wdDogc3RyaW5nKSA9PiB2b2lkXG4gIG9uRW50aXR5U2VsZWN0OiAoZW50aXR5OiB7IGlkOiBzdHJpbmc7IHRpdGxlOiBzdHJpbmcgfSwgcHJvbXB0OiBzdHJpbmcpID0+IHZvaWRcbn1cblxuZXhwb3J0IGNvbnN0IFNsYXNoQ29tbWFuZERyb3Bkb3duOiBGQzxTbGFzaENvbW1hbmREcm9wZG93blByb3BzPiA9ICh7XG4gIGFjdGlvbnMsXG4gIHByb2plY3RJZCxcbiAgb25Db21tYW5kU2VsZWN0LFxuICBvbkVudGl0eVNlbGVjdCxcbn0pID0+IHtcbiAgY29uc3QgW3N0ZXAsIHNldFN0ZXBdID0gdXNlU3RhdGU8J2NvbW1hbmRzJyB8IHN0cmluZz4oJ2NvbW1hbmRzJylcbiAgY29uc3QgW3NlbGVjdGVkQWN0aW9uLCBzZXRTZWxlY3RlZEFjdGlvbl0gPSB1c2VTdGF0ZTxTbGFzaENvbW1hbmQgfCBudWxsPihudWxsKVxuXG4gIGNvbnN0IGhhbmRsZUFjdGlvblNlbGVjdCA9IChhY3Rpb246IFNsYXNoQ29tbWFuZCkgPT4ge1xuICAgIGNvbnN0IGZpbHRlcktleSA9IGFjdGlvbi5jb250ZXh0X2ZpbHRlcnM/LlswXSA/PyBhY3Rpb24uc2VjdGlvblxuICAgIGlmIChmaWx0ZXJLZXkpIHtcbiAgICAgIGNvbnN0IFN0ZXBDb21wb25lbnQgPSBjYXRlZ29yeVN0ZXBSZWdpc3RyeVtmaWx0ZXJLZXldXG4gICAgICBpZiAoU3RlcENvbXBvbmVudCkge1xuICAgICAgICBzZXRTZWxlY3RlZEFjdGlvbihhY3Rpb24pXG4gICAgICAgIHNldFN0ZXAoZmlsdGVyS2V5KVxuICAgICAgICByZXR1cm5cbiAgICAgIH1cbiAgICB9XG4gICAgb25Db21tYW5kU2VsZWN0KGFjdGlvbi5wcm9tcHQpXG4gIH1cblxuICBjb25zdCBoYW5kbGVCYWNrID0gKCkgPT4ge1xuICAgIHNldFN0ZXAoJ2NvbW1hbmRzJylcbiAgICBzZXRTZWxlY3RlZEFjdGlvbihudWxsKVxuICB9XG5cbiAgY29uc3QgaGFuZGxlRW50aXR5U2VsZWN0ZWQgPSAoZW50aXR5OiB7IGlkOiBzdHJpbmc7IHRpdGxlOiBzdHJpbmcgfSkgPT4ge1xuICAgIGlmICghc2VsZWN0ZWRBY3Rpb24pIHJldHVyblxuICAgIG9uRW50aXR5U2VsZWN0KGVudGl0eSwgc2VsZWN0ZWRBY3Rpb24ucHJvbXB0KVxuICAgIHNldFN0ZXAoJ2NvbW1hbmRzJylcbiAgICBzZXRTZWxlY3RlZEFjdGlvbihudWxsKVxuICB9XG5cbiAgY29uc3QgU3RlcENvbXBvbmVudCA9IHN0ZXAgIT09ICdjb21tYW5kcycgPyBjYXRlZ29yeVN0ZXBSZWdpc3RyeVtzdGVwXSA6IG51bGxcblxuICByZXR1cm4gKFxuICAgIDxTQ0Ryb3Bkb3duQ29udGFpbmVyPlxuICAgICAge3N0ZXAgPT09ICdjb21tYW5kcycgJiYgPFNsYXNoQ29tbWFuZExpc3QgYWN0aW9ucz17YWN0aW9uc30gb25TZWxlY3Q9e2hhbmRsZUFjdGlvblNlbGVjdH0gLz59XG4gICAgICB7U3RlcENvbXBvbmVudCAmJiBzZWxlY3RlZEFjdGlvbiAmJiAoXG4gICAgICAgIDxTdGVwQ29tcG9uZW50XG4gICAgICAgICAgcHJvamVjdElkPXtwcm9qZWN0SWR9XG4gICAgICAgICAgb25FbnRpdHlTZWxlY3RlZD17aGFuZGxlRW50aXR5U2VsZWN0ZWR9XG4gICAgICAgICAgb25CYWNrPXtoYW5kbGVCYWNrfVxuICAgICAgICAgIHRpdGxlPXtzZWxlY3RlZEFjdGlvbi50aXRsZX1cbiAgICAgICAgLz5cbiAgICAgICl9XG4gICAgPC9TQ0Ryb3Bkb3duQ29udGFpbmVyPlxuICApXG59XG4iXSwibWFwcGluZ3MiOiI7QUFBQSxTQUFh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
@@ -0,0 +1,26 @@
1
+ import { SCCommandList, SCOptionButton, SCOptionTitle, SCOptionSubtitle } from './styles';
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ export var SlashCommandList = function SlashCommandList(_ref) {
4
+ var actions = _ref.actions,
5
+ onSelect = _ref.onSelect;
6
+ return /*#__PURE__*/_jsx(SCCommandList, {
7
+ children: actions.map(function (action) {
8
+ return /*#__PURE__*/_jsxs(SCOptionButton, {
9
+ type: "button",
10
+ onMouseDown: function onMouseDown(e) {
11
+ return e.preventDefault();
12
+ },
13
+ onClick: function onClick() {
14
+ return onSelect(action);
15
+ },
16
+ disabled: !!action.disabled,
17
+ children: [/*#__PURE__*/_jsx(SCOptionTitle, {
18
+ children: action.title
19
+ }), /*#__PURE__*/_jsx(SCOptionSubtitle, {
20
+ children: action.subtitle || action.prompt
21
+ })]
22
+ }, action.id);
23
+ })
24
+ });
25
+ };
26
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJTQ0NvbW1hbmRMaXN0IiwiU0NPcHRpb25CdXR0b24iLCJTQ09wdGlvblRpdGxlIiwiU0NPcHRpb25TdWJ0aXRsZSIsImpzeCIsIl9qc3giLCJqc3hzIiwiX2pzeHMiLCJTbGFzaENvbW1hbmRMaXN0IiwiX3JlZiIsImFjdGlvbnMiLCJvblNlbGVjdCIsImNoaWxkcmVuIiwibWFwIiwiYWN0aW9uIiwidHlwZSIsIm9uTW91c2VEb3duIiwiZSIsInByZXZlbnREZWZhdWx0Iiwib25DbGljayIsImRpc2FibGVkIiwidGl0bGUiLCJzdWJ0aXRsZSIsInByb21wdCIsImlkIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvYXRvbXMvU2xhc2hDb21tYW5kRHJvcGRvd24vU2xhc2hDb21tYW5kTGlzdC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRkMgfSBmcm9tICdyZWFjdCdcbmltcG9ydCB0eXBlIHsgU2xhc2hDb21tYW5kIH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMvU2xhc2hDb21tYW5kJ1xuaW1wb3J0IHsgU0NDb21tYW5kTGlzdCwgU0NPcHRpb25CdXR0b24sIFNDT3B0aW9uVGl0bGUsIFNDT3B0aW9uU3VidGl0bGUgfSBmcm9tICcuL3N0eWxlcydcblxudHlwZSBTbGFzaENvbW1hbmRMaXN0UHJvcHMgPSB7XG4gIGFjdGlvbnM6IFNsYXNoQ29tbWFuZFtdXG4gIG9uU2VsZWN0OiAoYWN0aW9uOiBTbGFzaENvbW1hbmQpID0+IHZvaWRcbn1cblxuZXhwb3J0IGNvbnN0IFNsYXNoQ29tbWFuZExpc3Q6IEZDPFNsYXNoQ29tbWFuZExpc3RQcm9wcz4gPSAoeyBhY3Rpb25zLCBvblNlbGVjdCB9KSA9PiAoXG4gIDxTQ0NvbW1hbmRMaXN0PlxuICAgIHthY3Rpb25zLm1hcChhY3Rpb24gPT4gKFxuICAgICAgPFNDT3B0aW9uQnV0dG9uXG4gICAgICAgIGtleT17YWN0aW9uLmlkfVxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgb25Nb3VzZURvd249e2UgPT4gZS5wcmV2ZW50RGVmYXVsdCgpfVxuICAgICAgICBvbkNsaWNrPXsoKSA9PiBvblNlbGVjdChhY3Rpb24pfVxuICAgICAgICBkaXNhYmxlZD17ISFhY3Rpb24uZGlzYWJsZWR9XG4gICAgICA+XG4gICAgICAgIDxTQ09wdGlvblRpdGxlPnthY3Rpb24udGl0bGV9PC9TQ09wdGlvblRpdGxlPlxuICAgICAgICA8U0NPcHRpb25TdWJ0aXRsZT57YWN0aW9uLnN1YnRpdGxlIHx8IGFjdGlvbi5wcm9tcHR9PC9TQ09wdGlvblN1YnRpdGxlPlxuICAgICAgPC9TQ09wdGlvbkJ1dHRvbj5cbiAgICApKX1cbiAgPC9TQ0NvbW1hbmRMaXN0PlxuKVxuIl0sIm1hcHBpbmdzIjoiQUFFQSxTQUFTQSxhQUFhLEVBQUVDLGNBQWMsRUFBRUMsYUFBYSxFQUFFQyxnQkFBZ0IsUUFBUSxVQUFVO0FBQUEsU0FBQUMsR0FBQSxJQUFBQyxJQUFBLEVBQUFDLElBQUEsSUFBQUMsS0FBQTtBQU96RixPQUFPLElBQU1DLGdCQUEyQyxHQUFHLFNBQTlDQSxnQkFBMkNBLENBQUFDLElBQUE7RUFBQSxJQUFNQyxPQUFPLEdBQUFELElBQUEsQ0FBUEMsT0FBTztJQUFFQyxRQUFRLEdBQUFGLElBQUEsQ0FBUkUsUUFBUTtFQUFBLG9CQUM3RU4sSUFBQSxDQUFDTCxhQUFhO0lBQUFZLFFBQUEsRUFDWEYsT0FBTyxDQUFDRyxHQUFHLENBQUMsVUFBQUMsTUFBTTtNQUFBLG9CQUNqQlAsS0FBQSxDQUFDTixjQUFjO1FBRWJjLElBQUksRUFBQyxRQUFRO1FBQ2JDLFdBQVcsRUFBRSxTQUFiQSxXQUFXQSxDQUFFQyxDQUFDO1VBQUEsT0FBSUEsQ0FBQyxDQUFDQyxjQUFjLENBQUMsQ0FBQztRQUFBLENBQUM7UUFDckNDLE9BQU8sRUFBRSxTQUFUQSxPQUFPQSxDQUFBO1VBQUEsT0FBUVIsUUFBUSxDQUFDRyxNQUFNLENBQUM7UUFBQSxDQUFDO1FBQ2hDTSxRQUFRLEVBQUUsQ0FBQyxDQUFDTixNQUFNLENBQUNNLFFBQVM7UUFBQVIsUUFBQSxnQkFFNUJQLElBQUEsQ0FBQ0gsYUFBYTtVQUFBVSxRQUFBLEVBQUVFLE1BQU0sQ0FBQ087UUFBSyxDQUFnQixDQUFDLGVBQzdDaEIsSUFBQSxDQUFDRixnQkFBZ0I7VUFBQVMsUUFBQSxFQUFFRSxNQUFNLENBQUNRLFFBQVEsSUFBSVIsTUFBTSxDQUFDUztRQUFNLENBQW1CLENBQUM7TUFBQSxHQVBsRVQsTUFBTSxDQUFDVSxFQVFFLENBQUM7SUFBQSxDQUNsQjtFQUFDLENBQ1csQ0FBQztBQUFBLENBQ2pCIiwiaWdub3JlTGlzdCI6W119