@projectcor/maia-components 2.11.60-3 → 2.11.60

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 (34) hide show
  1. package/lib/components/atoms/Chip/Chip.js +15 -49
  2. package/lib/components/atoms/Chip/styles.js +3 -7
  3. package/lib/components/atoms/ContextMentionPopover/ContextMentionPopover.js +6 -38
  4. package/lib/components/atoms/ContextMentionPopover/ContextMentionPopover.styles.js +13 -21
  5. package/lib/components/atoms/MAIAInput/MAIAInput.js +3 -5
  6. package/lib/components/molecules/AbmSection/AbmGeneralSection.js +11 -6
  7. package/lib/components/molecules/AbmSection/AbmGeneralSection.styles.js +28 -17
  8. package/lib/components/molecules/ChatAIMessages/ChatAIMessages.js +28 -40
  9. package/lib/components/molecules/ChatAIModal/ChatAIModal.js +6 -6
  10. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.js +12 -13
  11. package/lib/components/molecules/ChatFooter/ChatFooter.js +21 -105
  12. package/lib/components/molecules/ChatFooter/styles.js +2 -11
  13. package/lib/components/molecules/Sidebar/Sidebar.js +5 -9
  14. package/lib/components/organisms/EditQuestionModal/EditQuestionModal.js +2 -2
  15. package/lib/context/global-context.js +1 -8
  16. package/lib/hooks/useChatManager/useChatManager.js +20 -145
  17. package/lib/hooks/useChatMessages/useChatMessages.js +1 -1
  18. package/lib/hooks/useOrchestratorStream/useOrchestratorStream.interface.js +1 -1
  19. package/lib/hooks/useOrchestratorStream/useOrchestratorStream.js +8 -26
  20. package/lib/hooks/useProjectSummaryConfig.js +3 -47
  21. package/lib/lang/br/index.js +1 -8
  22. package/lib/lang/en/index.js +1 -8
  23. package/lib/lang/es/index.js +1 -8
  24. package/lib/lang/fr/index.js +1 -8
  25. package/lib/services/maia/Agents/getAgentModels.js +8 -3
  26. package/lib/services/maia/Agents/getAgents.js +91 -68
  27. package/lib/services/maia/Chats/getChatsByUserId.js +9 -13
  28. package/lib/services/maia/Orchestrator/orchestrator.js +5 -15
  29. package/lib/services/utils/validateIsMaia.js +2 -2
  30. package/lib/types/Chat.js +1 -1
  31. package/lib/types/agent.js +1 -1
  32. package/lib/utils/hitlAnalytics.js +3 -3
  33. package/package.json +1 -1
  34. package/lib/hooks/useContextPinPopover.js +0 -228
@@ -2,11 +2,14 @@ import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
2
2
  import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
3
3
  import _regeneratorRuntime from "@babel/runtime/regenerator";
4
4
  import { useState, useCallback, useRef, useEffect } from 'react';
5
+ import { useTranslation } from 'react-i18next';
5
6
  import { fetchMaia } from '../client';
7
+ import { mapCORLang } from '../../../lang/utils';
6
8
  /**
7
9
  * Hook to get the agent models
8
10
  * @returns {Object} - Object with the agent models, loading state, error, and handler function
9
11
  */
12
+
10
13
  export var useGetAgentModels = function useGetAgentModels() {
11
14
  var _useState = useState([]),
12
15
  _useState2 = _slicedToArray(_useState, 2),
@@ -21,6 +24,8 @@ export var useGetAgentModels = function useGetAgentModels() {
21
24
  error = _useState6[0],
22
25
  setError = _useState6[1];
23
26
  var abortControllerRef = useRef(null);
27
+ var _useTranslation = useTranslation(),
28
+ i18n = _useTranslation.i18n;
24
29
  var handleGetAgentModels = useCallback(/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
25
30
  var signal, response, data, errorMessage, _t;
26
31
  return _regeneratorRuntime.wrap(function (_context) {
@@ -42,7 +47,7 @@ export var useGetAgentModels = function useGetAgentModels() {
42
47
  _context.prev = 2;
43
48
  _context.next = 3;
44
49
  return fetchMaia({
45
- path: 'ai-models',
50
+ path: "ai-models?lang=".concat(mapCORLang(i18n.language)),
46
51
  method: 'GET',
47
52
  signal: signal
48
53
  });
@@ -89,7 +94,7 @@ export var useGetAgentModels = function useGetAgentModels() {
89
94
  return _context.stop();
90
95
  }
91
96
  }, _callee, null, [[2, 7, 9, 10]]);
92
- })), []);
97
+ })), [i18n.language]);
93
98
  useEffect(function () {
94
99
  return function () {
95
100
  if (abortControllerRef.current) {
@@ -104,4 +109,4 @@ export var useGetAgentModels = function useGetAgentModels() {
104
109
  handleGetAgentModels: handleGetAgentModels
105
110
  };
106
111
  };
107
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VTdGF0ZSIsInVzZUNhbGxiYWNrIiwidXNlUmVmIiwidXNlRWZmZWN0IiwiZmV0Y2hNYWlhIiwidXNlR2V0QWdlbnRNb2RlbHMiLCJfdXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkiLCJhZ2VudE1vZGVscyIsInNldEFnZW50TW9kZWxzIiwiX3VzZVN0YXRlMyIsIl91c2VTdGF0ZTQiLCJsb2FkaW5nIiwic2V0TG9hZGluZyIsIl91c2VTdGF0ZTUiLCJfdXNlU3RhdGU2IiwiZXJyb3IiLCJzZXRFcnJvciIsImFib3J0Q29udHJvbGxlclJlZiIsImhhbmRsZUdldEFnZW50TW9kZWxzIiwiX2FzeW5jVG9HZW5lcmF0b3IiLCJfcmVnZW5lcmF0b3JSdW50aW1lIiwibWFyayIsIl9jYWxsZWUiLCJzaWduYWwiLCJyZXNwb25zZSIsImRhdGEiLCJlcnJvck1lc3NhZ2UiLCJfdCIsIndyYXAiLCJfY29udGV4dCIsInByZXYiLCJuZXh0IiwiY3VycmVudCIsImFib3J0IiwiQWJvcnRDb250cm9sbGVyIiwiRXJyb3IiLCJwYXRoIiwibWV0aG9kIiwic2VudCIsIm9rIiwiY29uY2F0Iiwic3RhdHVzIiwianNvbiIsIkFycmF5IiwiaXNBcnJheSIsIm5hbWUiLCJhYnJ1cHQiLCJtZXNzYWdlIiwiY29uc29sZSIsImZpbmlzaCIsInN0b3AiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvc2VydmljZXMvbWFpYS9BZ2VudHMvZ2V0QWdlbnRNb2RlbHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlU3RhdGUsIHVzZUNhbGxiYWNrLCB1c2VSZWYsIHVzZUVmZmVjdCB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgZmV0Y2hNYWlhIH0gZnJvbSAnLi4vY2xpZW50J1xuaW1wb3J0IHR5cGUgeyBBZ2VudE1vZGVsLCBBZ2VudE1vZGVsc1Jlc3BvbnNlIH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMvYWdlbnQnXG5cbi8qKlxuICogSG9vayB0byBnZXQgdGhlIGFnZW50IG1vZGVsc1xuICogQHJldHVybnMge09iamVjdH0gLSBPYmplY3Qgd2l0aCB0aGUgYWdlbnQgbW9kZWxzLCBsb2FkaW5nIHN0YXRlLCBlcnJvciwgYW5kIGhhbmRsZXIgZnVuY3Rpb25cbiAqL1xuZXhwb3J0IGNvbnN0IHVzZUdldEFnZW50TW9kZWxzID0gKCkgPT4ge1xuICBjb25zdCBbYWdlbnRNb2RlbHMsIHNldEFnZW50TW9kZWxzXSA9IHVzZVN0YXRlPEFnZW50TW9kZWxbXT4oW10pXG4gIGNvbnN0IFtsb2FkaW5nLCBzZXRMb2FkaW5nXSA9IHVzZVN0YXRlKGZhbHNlKVxuICBjb25zdCBbZXJyb3IsIHNldEVycm9yXSA9IHVzZVN0YXRlPHN0cmluZyB8IG51bGw+KG51bGwpXG4gIGNvbnN0IGFib3J0Q29udHJvbGxlclJlZiA9IHVzZVJlZjxBYm9ydENvbnRyb2xsZXIgfCBudWxsPihudWxsKVxuXG4gIGNvbnN0IGhhbmRsZUdldEFnZW50TW9kZWxzID0gdXNlQ2FsbGJhY2soYXN5bmMgKCkgPT4ge1xuICAgIGlmIChhYm9ydENvbnRyb2xsZXJSZWYuY3VycmVudCkge1xuICAgICAgYWJvcnRDb250cm9sbGVyUmVmLmN1cnJlbnQuYWJvcnQoKVxuICAgIH1cblxuICAgIGFib3J0Q29udHJvbGxlclJlZi5jdXJyZW50ID0gbmV3IEFib3J0Q29udHJvbGxlcigpXG4gICAgaWYgKCFhYm9ydENvbnRyb2xsZXJSZWYuY3VycmVudCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gY3JlYXRlIEFib3J0Q29udHJvbGxlcicpXG4gICAgfVxuICAgIGNvbnN0IHsgc2lnbmFsIH0gPSBhYm9ydENvbnRyb2xsZXJSZWYuY3VycmVudFxuXG4gICAgc2V0TG9hZGluZyh0cnVlKVxuICAgIHNldEVycm9yKG51bGwpXG5cbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaE1haWEoe1xuICAgICAgICBwYXRoOiAnYWktbW9kZWxzJyxcbiAgICAgICAgbWV0aG9kOiAnR0VUJyxcbiAgICAgICAgc2lnbmFsLFxuICAgICAgfSlcblxuICAgICAgaWYgKCFyZXNwb25zZS5vaykge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEhUVFAgZXJyb3IhIHN0YXR1czogJHtyZXNwb25zZS5zdGF0dXN9YClcbiAgICAgIH1cblxuICAgICAgY29uc3QgZGF0YTogQWdlbnRNb2RlbHNSZXNwb25zZSA9IGF3YWl0IHJlc3BvbnNlLmpzb24oKVxuXG4gICAgICBpZiAoIWRhdGEgfHwgIUFycmF5LmlzQXJyYXkoZGF0YS5kYXRhKSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgcmVzcG9uc2UgZm9ybWF0IGZyb20gc2VydmVyJylcbiAgICAgIH1cblxuICAgICAgc2V0QWdlbnRNb2RlbHMoZGF0YS5kYXRhKVxuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgaWYgKGVyciBpbnN0YW5jZW9mIEVycm9yICYmIGVyci5uYW1lID09PSAnQWJvcnRFcnJvcicpIHtcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGVycm9yTWVzc2FnZSA9IGVyciBpbnN0YW5jZW9mIEVycm9yID8gZXJyLm1lc3NhZ2UgOiAnQW4gdW5rbm93biBlcnJvciBvY2N1cnJlZCdcbiAgICAgIHNldEVycm9yKGVycm9yTWVzc2FnZSlcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGZldGNoaW5nIGFnZW50IG1vZGVsczonLCBlcnIpXG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHNldExvYWRpbmcoZmFsc2UpXG4gICAgICBhYm9ydENvbnRyb2xsZXJSZWYuY3VycmVudCA9IG51bGxcbiAgICB9XG4gIH0sIFtdKVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIGlmIChhYm9ydENvbnRyb2xsZXJSZWYuY3VycmVudCkge1xuICAgICAgICBhYm9ydENvbnRyb2xsZXJSZWYuY3VycmVudC5hYm9ydCgpXG4gICAgICB9XG4gICAgfVxuICB9LCBbXSlcblxuICByZXR1cm4ge1xuICAgIGFnZW50TW9kZWxzLFxuICAgIGxvYWRpbmcsXG4gICAgZXJyb3IsXG4gICAgaGFuZGxlR2V0QWdlbnRNb2RlbHMsXG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsU0FBU0EsUUFBUSxFQUFFQyxXQUFXLEVBQUVDLE1BQU0sRUFBRUMsU0FBUyxRQUFRLE9BQU87QUFDaEUsU0FBU0MsU0FBUyxRQUFRLFdBQVc7QUFHckM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPLElBQU1DLGlCQUFpQixHQUFHLFNBQXBCQSxpQkFBaUJBLENBQUEsRUFBUztFQUNyQyxJQUFBQyxTQUFBLEdBQXNDTixRQUFRLENBQWUsRUFBRSxDQUFDO0lBQUFPLFVBQUEsR0FBQUMsY0FBQSxDQUFBRixTQUFBO0lBQXpERyxXQUFXLEdBQUFGLFVBQUE7SUFBRUcsY0FBYyxHQUFBSCxVQUFBO0VBQ2xDLElBQUFJLFVBQUEsR0FBOEJYLFFBQVEsQ0FBQyxLQUFLLENBQUM7SUFBQVksVUFBQSxHQUFBSixjQUFBLENBQUFHLFVBQUE7SUFBdENFLE9BQU8sR0FBQUQsVUFBQTtJQUFFRSxVQUFVLEdBQUFGLFVBQUE7RUFDMUIsSUFBQUcsVUFBQSxHQUEwQmYsUUFBUSxDQUFnQixJQUFJLENBQUM7SUFBQWdCLFVBQUEsR0FBQVIsY0FBQSxDQUFBTyxVQUFBO0lBQWhERSxLQUFLLEdBQUFELFVBQUE7SUFBRUUsUUFBUSxHQUFBRixVQUFBO0VBQ3RCLElBQU1HLGtCQUFrQixHQUFHakIsTUFBTSxDQUF5QixJQUFJLENBQUM7RUFFL0QsSUFBTWtCLG9CQUFvQixHQUFHbkIsV0FBVyxjQUFBb0IsaUJBQUEsY0FBQUMsbUJBQUEsQ0FBQUMsSUFBQSxDQUFDLFNBQUFDLFFBQUE7SUFBQSxJQUFBQyxNQUFBLEVBQUFDLFFBQUEsRUFBQUMsSUFBQSxFQUFBQyxZQUFBLEVBQUFDLEVBQUE7SUFBQSxPQUFBUCxtQkFBQSxDQUFBUSxJQUFBLFdBQUFDLFFBQUE7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
112
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VTdGF0ZSIsInVzZUNhbGxiYWNrIiwidXNlUmVmIiwidXNlRWZmZWN0IiwidXNlVHJhbnNsYXRpb24iLCJmZXRjaE1haWEiLCJtYXBDT1JMYW5nIiwidXNlR2V0QWdlbnRNb2RlbHMiLCJfdXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkiLCJhZ2VudE1vZGVscyIsInNldEFnZW50TW9kZWxzIiwiX3VzZVN0YXRlMyIsIl91c2VTdGF0ZTQiLCJsb2FkaW5nIiwic2V0TG9hZGluZyIsIl91c2VTdGF0ZTUiLCJfdXNlU3RhdGU2IiwiZXJyb3IiLCJzZXRFcnJvciIsImFib3J0Q29udHJvbGxlclJlZiIsIl91c2VUcmFuc2xhdGlvbiIsImkxOG4iLCJoYW5kbGVHZXRBZ2VudE1vZGVscyIsIl9hc3luY1RvR2VuZXJhdG9yIiwiX3JlZ2VuZXJhdG9yUnVudGltZSIsIm1hcmsiLCJfY2FsbGVlIiwic2lnbmFsIiwicmVzcG9uc2UiLCJkYXRhIiwiZXJyb3JNZXNzYWdlIiwiX3QiLCJ3cmFwIiwiX2NvbnRleHQiLCJwcmV2IiwibmV4dCIsImN1cnJlbnQiLCJhYm9ydCIsIkFib3J0Q29udHJvbGxlciIsIkVycm9yIiwicGF0aCIsImNvbmNhdCIsImxhbmd1YWdlIiwibWV0aG9kIiwic2VudCIsIm9rIiwic3RhdHVzIiwianNvbiIsIkFycmF5IiwiaXNBcnJheSIsIm5hbWUiLCJhYnJ1cHQiLCJtZXNzYWdlIiwiY29uc29sZSIsImZpbmlzaCIsInN0b3AiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvc2VydmljZXMvbWFpYS9BZ2VudHMvZ2V0QWdlbnRNb2RlbHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlU3RhdGUsIHVzZUNhbGxiYWNrLCB1c2VSZWYsIHVzZUVmZmVjdCB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgdXNlVHJhbnNsYXRpb24gfSBmcm9tICdyZWFjdC1pMThuZXh0J1xuaW1wb3J0IHsgZmV0Y2hNYWlhIH0gZnJvbSAnLi4vY2xpZW50J1xuaW1wb3J0IHsgbWFwQ09STGFuZyB9IGZyb20gJy4uLy4uLy4uL2xhbmcvdXRpbHMnXG5pbXBvcnQgdHlwZSB7IEFnZW50TW9kZWwsIEFnZW50TW9kZWxzUmVzcG9uc2UgfSBmcm9tICcuLi8uLi8uLi90eXBlcy9hZ2VudCdcblxuLyoqXG4gKiBIb29rIHRvIGdldCB0aGUgYWdlbnQgbW9kZWxzXG4gKiBAcmV0dXJucyB7T2JqZWN0fSAtIE9iamVjdCB3aXRoIHRoZSBhZ2VudCBtb2RlbHMsIGxvYWRpbmcgc3RhdGUsIGVycm9yLCBhbmQgaGFuZGxlciBmdW5jdGlvblxuICovXG5cbmV4cG9ydCBjb25zdCB1c2VHZXRBZ2VudE1vZGVscyA9ICgpID0+IHtcbiAgY29uc3QgW2FnZW50TW9kZWxzLCBzZXRBZ2VudE1vZGVsc10gPSB1c2VTdGF0ZTxBZ2VudE1vZGVsW10+KFtdKVxuICBjb25zdCBbbG9hZGluZywgc2V0TG9hZGluZ10gPSB1c2VTdGF0ZShmYWxzZSlcbiAgY29uc3QgW2Vycm9yLCBzZXRFcnJvcl0gPSB1c2VTdGF0ZTxzdHJpbmcgfCBudWxsPihudWxsKVxuICBjb25zdCBhYm9ydENvbnRyb2xsZXJSZWYgPSB1c2VSZWY8QWJvcnRDb250cm9sbGVyIHwgbnVsbD4obnVsbClcbiAgY29uc3QgeyBpMThuIH0gPSB1c2VUcmFuc2xhdGlvbigpXG5cbiAgY29uc3QgaGFuZGxlR2V0QWdlbnRNb2RlbHMgPSB1c2VDYWxsYmFjayhhc3luYyAoKSA9PiB7XG4gICAgaWYgKGFib3J0Q29udHJvbGxlclJlZi5jdXJyZW50KSB7XG4gICAgICBhYm9ydENvbnRyb2xsZXJSZWYuY3VycmVudC5hYm9ydCgpXG4gICAgfVxuXG4gICAgYWJvcnRDb250cm9sbGVyUmVmLmN1cnJlbnQgPSBuZXcgQWJvcnRDb250cm9sbGVyKClcbiAgICBpZiAoIWFib3J0Q29udHJvbGxlclJlZi5jdXJyZW50KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ZhaWxlZCB0byBjcmVhdGUgQWJvcnRDb250cm9sbGVyJylcbiAgICB9XG4gICAgY29uc3QgeyBzaWduYWwgfSA9IGFib3J0Q29udHJvbGxlclJlZi5jdXJyZW50XG5cbiAgICBzZXRMb2FkaW5nKHRydWUpXG4gICAgc2V0RXJyb3IobnVsbClcblxuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoTWFpYSh7XG4gICAgICAgIHBhdGg6IGBhaS1tb2RlbHM/bGFuZz0ke21hcENPUkxhbmcoaTE4bi5sYW5ndWFnZSl9YCxcbiAgICAgICAgbWV0aG9kOiAnR0VUJyxcbiAgICAgICAgc2lnbmFsLFxuICAgICAgfSlcblxuICAgICAgaWYgKCFyZXNwb25zZS5vaykge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEhUVFAgZXJyb3IhIHN0YXR1czogJHtyZXNwb25zZS5zdGF0dXN9YClcbiAgICAgIH1cblxuICAgICAgY29uc3QgZGF0YTogQWdlbnRNb2RlbHNSZXNwb25zZSA9IGF3YWl0IHJlc3BvbnNlLmpzb24oKVxuXG4gICAgICBpZiAoIWRhdGEgfHwgIUFycmF5LmlzQXJyYXkoZGF0YS5kYXRhKSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgcmVzcG9uc2UgZm9ybWF0IGZyb20gc2VydmVyJylcbiAgICAgIH1cblxuICAgICAgc2V0QWdlbnRNb2RlbHMoZGF0YS5kYXRhKVxuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgaWYgKGVyciBpbnN0YW5jZW9mIEVycm9yICYmIGVyci5uYW1lID09PSAnQWJvcnRFcnJvcicpIHtcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGVycm9yTWVzc2FnZSA9IGVyciBpbnN0YW5jZW9mIEVycm9yID8gZXJyLm1lc3NhZ2UgOiAnQW4gdW5rbm93biBlcnJvciBvY2N1cnJlZCdcbiAgICAgIHNldEVycm9yKGVycm9yTWVzc2FnZSlcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGZldGNoaW5nIGFnZW50IG1vZGVsczonLCBlcnIpXG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHNldExvYWRpbmcoZmFsc2UpXG4gICAgICBhYm9ydENvbnRyb2xsZXJSZWYuY3VycmVudCA9IG51bGxcbiAgICB9XG4gIH0sIFtpMThuLmxhbmd1YWdlXSlcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBpZiAoYWJvcnRDb250cm9sbGVyUmVmLmN1cnJlbnQpIHtcbiAgICAgICAgYWJvcnRDb250cm9sbGVyUmVmLmN1cnJlbnQuYWJvcnQoKVxuICAgICAgfVxuICAgIH1cbiAgfSwgW10pXG5cbiAgcmV0dXJuIHtcbiAgICBhZ2VudE1vZGVscyxcbiAgICBsb2FkaW5nLFxuICAgIGVycm9yLFxuICAgIGhhbmRsZUdldEFnZW50TW9kZWxzLFxuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7OztBQUFBLFNBQVNBLFFBQVEsRUFBRUMsV0FBVyxFQUFFQyxNQUFNLEVBQUVDLFNBQVMsUUFBUSxPQUFPO0FBQ2hFLFNBQVNDLGNBQWMsUUFBUSxlQUFlO0FBQzlDLFNBQVNDLFNBQVMsUUFBUSxXQUFXO0FBQ3JDLFNBQVNDLFVBQVUsUUFBUSxxQkFBcUI7QUFHaEQ7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsT0FBTyxJQUFNQyxpQkFBaUIsR0FBRyxTQUFwQkEsaUJBQWlCQSxDQUFBLEVBQVM7RUFDckMsSUFBQUMsU0FBQSxHQUFzQ1IsUUFBUSxDQUFlLEVBQUUsQ0FBQztJQUFBUyxVQUFBLEdBQUFDLGNBQUEsQ0FBQUYsU0FBQTtJQUF6REcsV0FBVyxHQUFBRixVQUFBO0lBQUVHLGNBQWMsR0FBQUgsVUFBQTtFQUNsQyxJQUFBSSxVQUFBLEdBQThCYixRQUFRLENBQUMsS0FBSyxDQUFDO0lBQUFjLFVBQUEsR0FBQUosY0FBQSxDQUFBRyxVQUFBO0lBQXRDRSxPQUFPLEdBQUFELFVBQUE7SUFBRUUsVUFBVSxHQUFBRixVQUFBO0VBQzFCLElBQUFHLFVBQUEsR0FBMEJqQixRQUFRLENBQWdCLElBQUksQ0FBQztJ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