@projectcor/maia-components 2.49.1-0 → 2.49.1-1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/lib/components/atoms/AttachmentCard/AttachmentCardAudio.helpers.js +3 -1
  2. package/lib/components/atoms/AttachmentCard/AttachmentCardImage.js +3 -1
  3. package/lib/components/atoms/AttachmentPreviewModal/AttachmentPreviewModal.js +24 -14
  4. package/lib/components/atoms/AttachmentPreviewModal/ExcelPreview.js +28 -10
  5. package/lib/components/atoms/AttachmentPreviewModal/PptPreview.js +19 -15
  6. package/lib/components/atoms/AttachmentPreviewModal/PptPreview.spec.js +33 -1
  7. package/lib/components/atoms/AttachmentPreviewModal/WordPreview.js +8 -4
  8. package/lib/components/atoms/ClientSelector/ClientSelector.js +15 -13
  9. package/lib/components/atoms/Fade/Fade.js +10 -6
  10. package/lib/components/atoms/Fade/Fade.spec.js +36 -1
  11. package/lib/components/atoms/MAIAInput/MAIAInput.attachments.helpers.js +3 -2
  12. package/lib/components/atoms/MAIAInput/MAIAInput.helpers.js +3 -2
  13. package/lib/components/atoms/MAIAInput/MAIAInput.js +10 -5
  14. package/lib/components/atoms/MaiaWrapper/MaiaWrapperBase.js +9 -4
  15. package/lib/components/atoms/OptionAccessibility/OptionAccessibility.js +4 -5
  16. package/lib/components/atoms/OptionAccessibility/OptionAccessibility.spec.js +3 -3
  17. package/lib/components/molecules/AbmSection/AbmAccessibilitySection/AbmAccessibilitySection.js +3 -2
  18. package/lib/components/molecules/AbmSection/AbmKnowledgeSection.helpers.js +6 -4
  19. package/lib/components/molecules/AbmSection/AbmKnowledgeSection.js +25 -16
  20. package/lib/components/molecules/ChatAIHome/ChatAIHome.js +3 -1
  21. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.js +51 -359
  22. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.utils.js +69 -0
  23. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.utils.spec.js +144 -0
  24. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeaderAgentDropdown.js +95 -0
  25. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeaderAgentSelector.js +174 -0
  26. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeaderLayoutMenu.js +99 -0
  27. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeaderLayoutMenu.spec.js +65 -0
  28. package/lib/components/molecules/ChatFooter/ChatFooterFaqs.js +5 -2
  29. package/lib/components/organisms/ChatAIPage/ChatAIPageHome.js +24 -15
  30. package/lib/components/organisms/ChatAIPage/ChatAIPageHome.styles.js +8 -7
  31. package/lib/components/organisms/ProjectSummary/ProjectSummary.js +11 -7
  32. package/lib/components/organisms/SourcesInformation/SourcesInformationModal.js +4 -1
  33. package/lib/hooks/useAgentModel/useUpdateAgent.js +7 -6
  34. package/lib/hooks/useEntitySearch.js +3 -1
  35. package/lib/hooks/useKnowledge/downloadKnowledge.js +4 -4
  36. package/lib/hooks/useKnowledge/useKnowledgeOperations.js +16 -15
  37. package/lib/hooks/useProjectSummaryConfig.js +10 -5
  38. package/lib/services/maia/Agents/connectors.js +3 -1
  39. package/lib/store/useChatsStore.js +4 -3
  40. package/lib/utils/imagePreprocessor.js +14 -3
  41. package/lib/utils/navigateContextEntity.js +2 -2
  42. package/lib/utils/navigateContextEntity.spec.js +3 -3
  43. package/lib/utils/openTaskInCorPanel.js +2 -2
  44. package/lib/utils/openTaskInCorPanel.spec.js +2 -2
  45. package/lib/utils/streamActivityMessages.helpers.js +3 -3
  46. package/package.json +1 -1
@@ -160,6 +160,8 @@ export var openConnectorAuthorizationWindows = function openConnectorAuthorizati
160
160
  opened = window.open(firstAuthorization.auth_url, '_blank', 'popup=yes,width=560,height=760');
161
161
  }
162
162
  remainingAuthorizations.forEach(function (authorization) {
163
+ // Mismo comportamiento que el popup principal: el callback OAuth del proveedor puede depender de window.opener
164
+ // react-doctor-disable-next-line react-doctor/window-open-without-noopener
163
165
  window.open(authorization.auth_url, '_blank', 'popup=yes,width=560,height=760');
164
166
  });
165
167
  return opened;
@@ -297,4 +299,4 @@ export var connectorAuthErrorMessage = function connectorAuthErrorMessage(error)
297
299
  }
298
300
  return "".concat(error.name, ": ").concat(error.message);
299
301
  };
300
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJmZXRjaE1haWEiLCJnZXRBdmFpbGFibGVDb25uZWN0b3JzIiwiX3JlZiIsIl9hc3luY1RvR2VuZXJhdG9yIiwiX3JlZ2VuZXJhdG9yUnVudGltZSIsIm1hcmsiLCJfY2FsbGVlIiwicmVzcG9uc2UiLCJ3cmFwIiwiX2NvbnRleHQiLCJwcmV2IiwibmV4dCIsInBhdGgiLCJtZXRob2QiLCJzZW50Iiwib2siLCJFcnJvciIsImFicnVwdCIsImpzb24iLCJzdG9wIiwiYXBwbHkiLCJhcmd1bWVudHMiLCJnZXRBZ2VudENvbm5lY3RvcnMiLCJfcmVmMiIsIl9jYWxsZWUyIiwiYWdlbnRJZCIsIl9jb250ZXh0MiIsImNvbmNhdCIsIl94IiwiYXV0aG9yaXplQ29ubmVjdG9yIiwiX3JlZjMiLCJfY2FsbGVlMyIsInNsdWciLCJwYXlsb2FkIiwiX2NvbnRleHQzIiwiZW5jb2RlVVJJQ29tcG9uZW50IiwiYXV0aF91cmwiLCJfeDIiLCJzYXZlQWdlbnRDb25uZWN0b3JzIiwiX3JlZjQiLCJfY2FsbGVlNCIsImNvbm5lY3RvclNsdWdzIiwiX2NvbnRleHQ0IiwiYm9keSIsImNvbm5lY3Rvcl9zbHVncyIsIl94MyIsIl94NCIsIm9wZW5Db25uZWN0b3JBdXRob3JpemF0aW9uV2luZG93cyIsImF1dGhvcml6YXRpb25zIiwicG9wdXBXaW5kb3ciLCJsZW5ndGgiLCJjbG9zZWQiLCJjbG9zZSIsIl9hdXRob3JpemF0aW9ucyIsIl90b0FycmF5IiwiZmlyc3RBdXRob3JpemF0aW9uIiwicmVtYWluaW5nQXV0aG9yaXphdGlvbnMiLCJfYXJyYXlMaWtlVG9BcnJheSIsInNsaWNlIiwib3BlbmVkIiwibG9jYXRpb24iLCJocmVmIiwid2luZG93Iiwib3BlbiIsImZvckVhY2giLCJhdXRob3JpemF0aW9uIiwiaXNDb25uZWN0b3JPQXV0aE1lc3NhZ2UiLCJkYXRhIiwiX3R5cGVvZiIsInR5cGUiLCJ3YWl0Rm9yQ29ubmVjdG9yQXV0aG9yaXphdGlvbiIsIl9yZWY2IiwiX2NhbGxlZTciLCJfcmVmNSIsInNsdWdzIiwicG9wdXAiLCJfcmVmNSR0aW1lb3V0TXMiLCJ0aW1lb3V0TXMiLCJwZW5kaW5nIiwib2F1dGhFcnJvciIsImF1dGhvcml6ZWRTbHVncyIsIl9jb250ZXh0NyIsImF1dGhvcml6ZWQiLCJTZXQiLCJfcmVmNyIsIl9jYWxsZWU1IiwiY29ubmVjdG9ycyIsIl9jb250ZXh0NSIsImZpbHRlciIsImNvbm5lY3RvciIsImhhcyIsInVzZXJfYXV0aG9yaXplZCIsIm1hcCIsIlByb21pc2UiLCJyZXNvbHZlIiwiZmluaXNoZWQiLCJvbk1lc3NhZ2UiLCJwb2xsIiwidGltZXIiLCJmaW5pc2giLCJfcmVmOCIsIl9jYWxsZWU2IiwiX3QiLCJfY29udGV4dDYiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwiY2xlYXJJbnRlcnZhbCIsImNsZWFyVGltZW91dCIsImVycm9yIiwidW5kZWZpbmVkIiwiZXZlbnQiLCJzdGF0dXMiLCJtZXNzYWdlIiwiYWRkRXZlbnRMaXN0ZW5lciIsInNldEludGVydmFsIiwic2V0VGltZW91dCIsIl94NSIsImNvbm5lY3RvckF1dGhFcnJvck1lc3NhZ2UiLCJuYW1lIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3NlcnZpY2VzL21haWEvQWdlbnRzL2Nvbm5lY3RvcnMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZmV0Y2hNYWlhIH0gZnJvbSAnLi4vY2xpZW50J1xuXG5leHBvcnQgdHlwZSBDYXRhbG9nQ29ubmVjdG9yID0ge1xuICBpZDogbnVtYmVyXG4gIHNsdWc6IHN0cmluZ1xuICBuYW1lOiBzdHJpbmdcbiAgZGVzY3JpcHRpb24/OiBzdHJpbmdcbiAgaWNvbl91cmw/OiBzdHJpbmdcbiAgcmVxdWlyZXNfYXV0aDogYm9vbGVhblxuICBpc19hY3RpdmU6IGJvb2xlYW5cbn1cblxuZXhwb3J0IHR5cGUgQ29ubmVjdG9yQ29ubmVjdGlvblN0YXR1cyA9ICdvaycgfCAnbmVlZHNfYXR0ZW50aW9uJyB8ICdlcnJvcidcblxuZXhwb3J0IHR5cGUgQWdlbnRDb25uZWN0b3IgPSBDYXRhbG9nQ29ubmVjdG9yICYge1xuICBlbmFibGVkX2Zvcl9hZ2VudDogYm9vbGVhblxuICB1c2VyX2F1dGhvcml6ZWQ6IGJvb2xlYW5cbiAgY29ubmVjdGlvbl9zdGF0dXM/OiBDb25uZWN0b3JDb25uZWN0aW9uU3RhdHVzXG59XG5cbmV4cG9ydCB0eXBlIFBlbmRpbmdDb25uZWN0b3JBdXRob3JpemF0aW9uID0ge1xuICBzbHVnOiBzdHJpbmdcbiAgbmFtZTogc3RyaW5nXG4gIGF1dGhfdXJsOiBzdHJpbmdcbn1cblxuZXhwb3J0IHR5cGUgQ29ubmVjdG9yQXV0aEVycm9yID0ge1xuICBzbHVnOiBzdHJpbmdcbiAgbmFtZTogc3RyaW5nXG4gIG1lc3NhZ2U6IHN0cmluZ1xufVxuXG5leHBvcnQgdHlwZSBTYXZlQWdlbnRDb25uZWN0b3JzUmVzcG9uc2UgPSB7XG4gIGFnZW50X2lkOiBzdHJpbmdcbiAgY29ubmVjdG9yX3NsdWdzOiBzdHJpbmdbXVxuICByZXF1aXJlc19hdXRoPzogUGVuZGluZ0Nvbm5lY3RvckF1dGhvcml6YXRpb25bXVxuICBhdXRoX2Vycm9ycz86IENvbm5lY3RvckF1dGhFcnJvcltdXG59XG5cbmV4cG9ydCBjb25zdCBnZXRBdmFpbGFibGVDb25uZWN0b3JzID0gYXN5bmMgKCk6IFByb21pc2U8Q2F0YWxvZ0Nvbm5lY3RvcltdPiA9PiB7XG4gIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2hNYWlhKHtcbiAgICBwYXRoOiAnY29ubmVjdG9ycycsXG4gICAgbWV0aG9kOiAnR0VUJyxcbiAgfSlcblxuICBpZiAoIXJlc3BvbnNlLm9rKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gZmV0Y2ggY29ubmVjdG9ycycpXG4gIH1cblxuICByZXR1cm4gcmVzcG9uc2UuanNvbigpXG59XG5cbmV4cG9ydCBjb25zdCBnZXRBZ2VudENvbm5lY3RvcnMgPSBhc3luYyAoYWdlbnRJZDogc3RyaW5nKTogUHJvbWlzZTxBZ2VudENvbm5lY3RvcltdPiA9PiB7XG4gIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2hNYWlhKHtcbiAgICBwYXRoOiBgYWdlbnRzLyR7YWdlbnRJZH0vY29ubmVjdG9yc2AsXG4gICAgbWV0aG9kOiAnR0VUJyxcbiAgfSlcblxuICBpZiAoIXJlc3BvbnNlLm9rKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gZmV0Y2ggYWdlbnQgY29ubmVjdG9ycycpXG4gIH1cblxuICByZXR1cm4gcmVzcG9uc2UuanNvbigpXG59XG5cbi8qKiBGZXRjaCBhIGZyZXNoIE9BdXRoIFVSTCBvbiBjbGljazogaXRzIHN0YXRlIGV4cGlyZXMgYWZ0ZXIgdGVuIG1pbnV0ZXMuICovXG5leHBvcnQgY29uc3QgYXV0aG9yaXplQ29ubmVjdG9yID0gYXN5bmMgKHNsdWc6IHN0cmluZyk6IFByb21pc2U8c3RyaW5nPiA9PiB7XG4gIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2hNYWlhKHtcbiAgICBwYXRoOiBgY29ubmVjdG9ycy8ke2VuY29kZVVSSUNvbXBvbmVudChzbHVnKX0vYXV0aG9yaXplYCxcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgfSlcblxuICBpZiAoIXJlc3BvbnNlLm9rKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gc3RhcnQgY29ubmVjdG9yIGF1dGhvcml6YXRpb24nKVxuICB9XG5cbiAgY29uc3QgcGF5bG9hZDogeyBhdXRoX3VybDogc3RyaW5nIH0gPSBhd2FpdCByZXNwb25zZS5qc29uKClcbiAgaWYgKCFwYXlsb2FkLmF1dGhfdXJsKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdDb25uZWN0b3IgYXV0aG9yaXphdGlvbiBVUkwgaXMgbWlzc2luZycpXG4gIH1cbiAgcmV0dXJuIHBheWxvYWQuYXV0aF91cmxcbn1cblxuZXhwb3J0IGNvbnN0IHNhdmVBZ2VudENvbm5lY3RvcnMgPSBhc3luYyAoXG4gIGFnZW50SWQ6IHN0cmluZyxcbiAgY29ubmVjdG9yU2x1Z3M6IHN0cmluZ1tdXG4pOiBQcm9taXNlPFNhdmVBZ2VudENvbm5lY3RvcnNSZXNwb25zZT4gPT4ge1xuICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoTWFpYSh7XG4gICAgcGF0aDogYGFnZW50cy8ke2FnZW50SWR9L2Nvbm5lY3RvcnNgLFxuICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgIGJvZHk6IHtcbiAgICAgIGNvbm5lY3Rvcl9zbHVnczogY29ubmVjdG9yU2x1Z3MsXG4gICAgfSxcbiAgfSlcblxuICBpZiAoIXJlc3BvbnNlLm9rKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gc2F2ZSBhZ2VudCBjb25uZWN0b3JzJylcbiAgfVxuXG4gIHJldHVybiByZXNwb25zZS5qc29uKClcbn1cblxuZXhwb3J0IGNvbnN0IG9wZW5Db25uZWN0b3JBdXRob3JpemF0aW9uV2luZG93cyA9IChcbiAgYXV0aG9yaXphdGlvbnM6IFBlbmRpbmdDb25uZWN0b3JBdXRob3JpemF0aW9uW10sXG4gIHBvcHVwV2luZG93PzogV2luZG93IHwgbnVsbFxuKTogV2luZG93IHwgbnVsbCA9PiB7XG4gIGlmICghYXV0aG9yaXphdGlvbnMubGVuZ3RoKSB7XG4gICAgaWYgKHBvcHVwV2luZG93ICYmICFwb3B1cFdpbmRvdy5jbG9zZWQpIHtcbiAgICAgIHBvcHVwV2luZG93LmNsb3NlKClcbiAgICB9XG4gICAgcmV0dXJuIG51bGxcbiAgfVxuXG4gIGNvbnN0IFtmaXJzdEF1dGhvcml6YXRpb24sIC4uLnJlbWFpbmluZ0F1dGhvcml6YXRpb25zXSA9IGF1dGhvcml6YXRpb25zXG5cbiAgbGV0IG9wZW5lZDogV2luZG93IHwgbnVsbCA9IG51bGxcbiAgaWYgKHBvcHVwV2luZG93ICYmICFwb3B1cFdpbmRvdy5jbG9zZWQpIHtcbiAgICAvLyBOYXZlZ2FyIGVsIHBvcHVwIHF1ZSB5YSBhYnJpbW9zIGVuIGVsIGNsaWNrIGRlbCB1c3VhcmlvOiBzaSBsbyBhYnJpw6lyYW1vc1xuICAgIC8vIGFjw6EsIGVsIGJyb3dzZXIgbG8gYmxvcXVlYXLDrWEgcG9yIG5vIHZlbmlyIGRlIHVuIGdlc3RvLlxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1wYXJhbS1yZWFzc2lnblxuICAgIHBvcHVwV2luZG93LmxvY2F0aW9uLmhyZWYgPSBmaXJzdEF1dGhvcml6YXRpb24uYXV0aF91cmxcbiAgICBvcGVuZWQgPSBwb3B1cFdpbmRvd1xuICB9IGVsc2Uge1xuICAgIG9wZW5lZCA9IHdpbmRvdy5vcGVuKGZpcnN0QXV0aG9yaXphdGlvbi5hdXRoX3VybCwgJ19ibGFuaycsICdwb3B1cD15ZXMsd2lkdGg9NTYwLGhlaWdodD03NjAnKVxuICB9XG5cbiAgcmVtYWluaW5nQXV0aG9yaXphdGlvbnMuZm9yRWFjaChhdXRob3JpemF0aW9uID0+IHtcbiAgICB3aW5kb3cub3BlbihhdXRob3JpemF0aW9uLmF1dGhfdXJsLCAnX2JsYW5rJywgJ3BvcHVwPXllcyx3aWR0aD01NjAsaGVpZ2h0PTc2MCcpXG4gIH0pXG5cbiAgcmV0dXJuIG9wZW5lZFxufVxuXG5jb25zdCBpc0Nvbm5lY3Rvck9BdXRoTWVzc2FnZSA9IChcbiAgZGF0YTogdW5rbm93blxuKTogZGF0YSBpcyB7IHR5cGU6IHN0cmluZzsgc3RhdHVzOiBzdHJpbmc7IHNsdWc/OiBzdHJpbmc7IG1lc3NhZ2U/OiBzdHJpbmcgfSA9PlxuICAhIWRhdGEgJiYgdHlwZW9mIGRhdGEgPT09ICdvYmplY3QnICYmICd0eXBlJyBpbiBkYXRhICYmIChkYXRhIGFzIHsgdHlwZTogc3RyaW5nIH0pLnR5cGUgPT09ICdjb25uZWN0b3Itb2F1dGgnXG5cbi8qKiBXYWl0cyB1bnRpbCB0aGUgT0F1dGggcG9wdXAgZmluaXNoZXMsIHRoZW4gY29uZmlybXMgdGhlIGNvbXBhbnkgdG9rZW4gdmlhIEdFVC4gKi9cbmV4cG9ydCBjb25zdCB3YWl0Rm9yQ29ubmVjdG9yQXV0aG9yaXphdGlvbiA9IGFzeW5jICh7XG4gIGFnZW50SWQsXG4gIHNsdWdzLFxuICBwb3B1cCxcbiAgdGltZW91dE1zID0gMTgwXzAwMCxcbn06IHtcbiAgYWdlbnRJZDogc3RyaW5nXG4gIHNsdWdzOiBzdHJpbmdbXVxuICBwb3B1cD86IFdpbmRvdyB8IG51bGxcbiAgdGltZW91dE1zPzogbnVtYmVyXG59KTogUHJvbWlzZTx7IGF1dGhvcml6ZWQ6IHN0cmluZ1tdOyBlcnJvcj86IHN0cmluZyB9PiA9PiB7XG4gIGlmICghc2x1Z3MubGVuZ3RoKSB7XG4gICAgcmV0dXJuIHsgYXV0aG9yaXplZDogW10gfVxuICB9XG5cbiAgY29uc3QgcGVuZGluZyA9IG5ldyBTZXQoc2x1Z3MpXG4gIGxldCBvYXV0aEVycm9yOiBzdHJpbmcgfCB1bmRlZmluZWRcblxuICBjb25zdCBhdXRob3JpemVkU2x1Z3MgPSBhc3luYyAoKSA9PiB7XG4gICAgY29uc3QgY29ubmVjdG9ycyA9IGF3YWl0IGdldEFnZW50Q29ubmVjdG9ycyhhZ2VudElkKVxuICAgIHJldHVybiBjb25uZWN0b3JzXG4gICAgICAuZmlsdGVyKGNvbm5lY3RvciA9PiBwZW5kaW5nLmhhcyhjb25uZWN0b3Iuc2x1ZykgJiYgY29ubmVjdG9yLnVzZXJfYXV0aG9yaXplZClcbiAgICAgIC5tYXAoY29ubmVjdG9yID0+IGNvbm5lY3Rvci5zbHVnKVxuICB9XG5cbiAgcmV0dXJuIG5ldyBQcm9taXNlKHJlc29sdmUgPT4ge1xuICAgIGxldCBmaW5pc2hlZCA9IGZhbHNlXG4gICAgLy8gRGVjbGFyYWRvcyBhbnRlcyBwb3JxdWUgYGZpbmlzaGAgbG9zIGxpbXBpYSB5IGEgc3UgdmV6IGxvcyB0cmVzIGxvIGludm9jYW4uXG4gICAgLy8gUGFyYSBjdWFuZG8gYWxndW5vIHB1ZWRlIGRpc3BhcmFyLCBlbCBibG9xdWUgZGUgYWJham8geWEgbG9zIGFzaWduw7MuXG4gICAgbGV0IG9uTWVzc2FnZTogKGV2ZW50OiBNZXNzYWdlRXZlbnQpID0+IHZvaWRcbiAgICBsZXQgcG9sbDogbnVtYmVyXG4gICAgbGV0IHRpbWVyOiBudW1iZXJcblxuICAgIGNvbnN0IGZpbmlzaCA9IGFzeW5jICgpID0+IHtcbiAgICAgIGlmIChmaW5pc2hlZCkge1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cbiAgICAgIGZpbmlzaGVkID0gdHJ1ZVxuICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21lc3NhZ2UnLCBvbk1lc3NhZ2UpXG4gICAgICB3aW5kb3cuY2xlYXJJbnRlcnZhbChwb2xsKVxuICAgICAgd2luZG93LmNsZWFyVGltZW91dCh0aW1lcilcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IGF1dGhvcml6ZWQgPSBhd2FpdCBhdXRob3JpemVkU2x1Z3MoKVxuICAgICAgICByZXNvbHZlKHsgYXV0aG9yaXplZCwgZXJyb3I6IGF1dGhvcml6ZWQubGVuZ3RoID8gdW5kZWZpbmVkIDogb2F1dGhFcnJvciB9KVxuICAgICAgfSBjYXRjaCB7XG4gICAgICAgIHJlc29sdmUoeyBhdXRob3JpemVkOiBbXSwgZXJyb3I6IG9hdXRoRXJyb3IgfSlcbiAgICAgIH1cbiAgICB9XG5cbiAgICBvbk1lc3NhZ2UgPSAoZXZlbnQ6IE1lc3NhZ2VFdmVudCkgPT4ge1xuICAgICAgaWYgKCFpc0Nvbm5lY3Rvck9BdXRoTWVzc2FnZShldmVudC5kYXRhKSkge1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cbiAgICAgIGlmIChldmVudC5kYXRhLnN0YXR1cyA9PT0gJ2Vycm9yJykge1xuICAgICAgICBvYXV0aEVycm9yID0gZXZlbnQuZGF0YS5tZXNzYWdlXG4gICAgICB9XG4gICAgICBmaW5pc2goKVxuICAgIH1cblxuICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdtZXNzYWdlJywgb25NZXNzYWdlKVxuXG4gICAgcG9sbCA9IHdpbmRvdy5zZXRJbnRlcnZhbCgoKSA9PiB7XG4gICAgICBpZiAocG9wdXAgJiYgcG9wdXAuY2xvc2VkKSB7XG4gICAgICAgIGZpbmlzaCgpXG4gICAgICB9XG4gICAgfSwgNDAwKVxuXG4gICAgdGltZXIgPSB3aW5kb3cuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBvYXV0aEVycm9yID0gb2F1dGhFcnJvciB8fCAndGltZW91dCdcbiAgICAgIGZpbmlzaCgpXG4gICAgfSwgdGltZW91dE1zKVxuICB9KVxufVxuXG5leHBvcnQgY29uc3QgY29ubmVjdG9yQXV0aEVycm9yTWVzc2FnZSA9IChlcnJvcjogQ29ubmVjdG9yQXV0aEVycm9yKTogc3RyaW5nID0+IHtcbiAgaWYgKGVycm9yLnNsdWcgPT09ICduZXRzdWl0ZScpIHtcbiAgICByZXR1cm4gZXJyb3IubWVzc2FnZVxuICB9XG4gIHJldHVybiBgJHtlcnJvci5uYW1lfTogJHtlcnJvci5tZXNzYWdlfWBcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxTQUFTQSxTQUFTLFFBQVEsV0FBVztBQXVDckMsT0FBTyxJQUFNQyxzQkFBc0I7RUFBQSxJQUFBQyxJQUFBLEdBQUFDLGlCQUFBLGNBQUFDLG1CQUFBLENBQUFDLElBQUEsQ0FBRyxTQUFBQyxRQUFBO0lBQUEsSUFBQUMsUUFBQTtJQUFBLE9BQUFILG1CQUFBLENBQUFJLElBQUEsV0FBQUMsUUFBQTtNQUFBLGtCQUFBQSxRQUFBLENBQUFDLElBQUEsR0FBQUQsUUFBQSxDQUFBRSxJQUFBO1FBQUE7VUFBQUYsUUFBQSxDQUFBRSxJQUFBO1VBQUEsT0FDYlgsU0FBUyxDQUFDO1lBQy9CWSxJQUFJLEVBQUUsWUFBWTtZQUNsQkMsTUFBTSxFQUFFO1VBQ1YsQ0FBQyxDQUFDO1FBQUE7VUFISU4sUUFBUSxHQUFBRSxRQUFBLENBQUFLLElBQUE7VUFBQSxJQUtUUCxRQUFRLENBQUNRLEVBQUU7WUFBQU4sUUFBQSxDQUFBRSxJQUFBO1lBQUE7VUFBQTtVQUFBLE1BQ1IsSUFBSUssS0FBSyxDQUFDLDRCQUE0QixDQUFDO1FBQUE7VUFBQSxPQUFBUCxRQUFBLENBQUFRLE1BQUEsV0FHeENWLFFBQVEsQ0FBQ1csSUFBSSxDQUFDLENBQUM7UUFBQTtRQUFBO1VBQUEsT0FBQVQsUUFBQSxDQUFBVSxJQUFBO01BQUE7SUFBQSxHQUFBYixPQUFBO0VBQUEsQ0FDdkI7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
302
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJmZXRjaE1haWEiLCJnZXRBdmFpbGFibGVDb25uZWN0b3JzIiwiX3JlZiIsIl9hc3luY1RvR2VuZXJhdG9yIiwiX3JlZ2VuZXJhdG9yUnVudGltZSIsIm1hcmsiLCJfY2FsbGVlIiwicmVzcG9uc2UiLCJ3cmFwIiwiX2NvbnRleHQiLCJwcmV2IiwibmV4dCIsInBhdGgiLCJtZXRob2QiLCJzZW50Iiwib2siLCJFcnJvciIsImFicnVwdCIsImpzb24iLCJzdG9wIiwiYXBwbHkiLCJhcmd1bWVudHMiLCJnZXRBZ2VudENvbm5lY3RvcnMiLCJfcmVmMiIsIl9jYWxsZWUyIiwiYWdlbnRJZCIsIl9jb250ZXh0MiIsImNvbmNhdCIsIl94IiwiYXV0aG9yaXplQ29ubmVjdG9yIiwiX3JlZjMiLCJfY2FsbGVlMyIsInNsdWciLCJwYXlsb2FkIiwiX2NvbnRleHQzIiwiZW5jb2RlVVJJQ29tcG9uZW50IiwiYXV0aF91cmwiLCJfeDIiLCJzYXZlQWdlbnRDb25uZWN0b3JzIiwiX3JlZjQiLCJfY2FsbGVlNCIsImNvbm5lY3RvclNsdWdzIiwiX2NvbnRleHQ0IiwiYm9keSIsImNvbm5lY3Rvcl9zbHVncyIsIl94MyIsIl94NCIsIm9wZW5Db25uZWN0b3JBdXRob3JpemF0aW9uV2luZG93cyIsImF1dGhvcml6YXRpb25zIiwicG9wdXBXaW5kb3ciLCJsZW5ndGgiLCJjbG9zZWQiLCJjbG9zZSIsIl9hdXRob3JpemF0aW9ucyIsIl90b0FycmF5IiwiZmlyc3RBdXRob3JpemF0aW9uIiwicmVtYWluaW5nQXV0aG9yaXphdGlvbnMiLCJfYXJyYXlMaWtlVG9BcnJheSIsInNsaWNlIiwib3BlbmVkIiwibG9jYXRpb24iLCJocmVmIiwid2luZG93Iiwib3BlbiIsImZvckVhY2giLCJhdXRob3JpemF0aW9uIiwiaXNDb25uZWN0b3JPQXV0aE1lc3NhZ2UiLCJkYXRhIiwiX3R5cGVvZiIsInR5cGUiLCJ3YWl0Rm9yQ29ubmVjdG9yQXV0aG9yaXphdGlvbiIsIl9yZWY2IiwiX2NhbGxlZTciLCJfcmVmNSIsInNsdWdzIiwicG9wdXAiLCJfcmVmNSR0aW1lb3V0TXMiLCJ0aW1lb3V0TXMiLCJwZW5kaW5nIiwib2F1dGhFcnJvciIsImF1dGhvcml6ZWRTbHVncyIsIl9jb250ZXh0NyIsImF1dGhvcml6ZWQiLCJTZXQiLCJfcmVmNyIsIl9jYWxsZWU1IiwiY29ubmVjdG9ycyIsIl9jb250ZXh0NSIsImZpbHRlciIsImNvbm5lY3RvciIsImhhcyIsInVzZXJfYXV0aG9yaXplZCIsIm1hcCIsIlByb21pc2UiLCJyZXNvbHZlIiwiZmluaXNoZWQiLCJvbk1lc3NhZ2UiLCJwb2xsIiwidGltZXIiLCJmaW5pc2giLCJfcmVmOCIsIl9jYWxsZWU2IiwiX3QiLCJfY29udGV4dDYiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwiY2xlYXJJbnRlcnZhbCIsImNsZWFyVGltZW91dCIsImVycm9yIiwidW5kZWZpbmVkIiwiZXZlbnQiLCJzdGF0dXMiLCJtZXNzYWdlIiwiYWRkRXZlbnRMaXN0ZW5lciIsInNldEludGVydmFsIiwic2V0VGltZW91dCIsIl94NSIsImNvbm5lY3RvckF1dGhFcnJvck1lc3NhZ2UiLCJuYW1lIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3NlcnZpY2VzL21haWEvQWdlbnRzL2Nvbm5lY3RvcnMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZmV0Y2hNYWlhIH0gZnJvbSAnLi4vY2xpZW50J1xuXG5leHBvcnQgdHlwZSBDYXRhbG9nQ29ubmVjdG9yID0ge1xuICBpZDogbnVtYmVyXG4gIHNsdWc6IHN0cmluZ1xuICBuYW1lOiBzdHJpbmdcbiAgZGVzY3JpcHRpb24/OiBzdHJpbmdcbiAgaWNvbl91cmw/OiBzdHJpbmdcbiAgcmVxdWlyZXNfYXV0aDogYm9vbGVhblxuICBpc19hY3RpdmU6IGJvb2xlYW5cbn1cblxuZXhwb3J0IHR5cGUgQ29ubmVjdG9yQ29ubmVjdGlvblN0YXR1cyA9ICdvaycgfCAnbmVlZHNfYXR0ZW50aW9uJyB8ICdlcnJvcidcblxuZXhwb3J0IHR5cGUgQWdlbnRDb25uZWN0b3IgPSBDYXRhbG9nQ29ubmVjdG9yICYge1xuICBlbmFibGVkX2Zvcl9hZ2VudDogYm9vbGVhblxuICB1c2VyX2F1dGhvcml6ZWQ6IGJvb2xlYW5cbiAgY29ubmVjdGlvbl9zdGF0dXM/OiBDb25uZWN0b3JDb25uZWN0aW9uU3RhdHVzXG59XG5cbmV4cG9ydCB0eXBlIFBlbmRpbmdDb25uZWN0b3JBdXRob3JpemF0aW9uID0ge1xuICBzbHVnOiBzdHJpbmdcbiAgbmFtZTogc3RyaW5nXG4gIGF1dGhfdXJsOiBzdHJpbmdcbn1cblxuZXhwb3J0IHR5cGUgQ29ubmVjdG9yQXV0aEVycm9yID0ge1xuICBzbHVnOiBzdHJpbmdcbiAgbmFtZTogc3RyaW5nXG4gIG1lc3NhZ2U6IHN0cmluZ1xufVxuXG5leHBvcnQgdHlwZSBTYXZlQWdlbnRDb25uZWN0b3JzUmVzcG9uc2UgPSB7XG4gIGFnZW50X2lkOiBzdHJpbmdcbiAgY29ubmVjdG9yX3NsdWdzOiBzdHJpbmdbXVxuICByZXF1aXJlc19hdXRoPzogUGVuZGluZ0Nvbm5lY3RvckF1dGhvcml6YXRpb25bXVxuICBhdXRoX2Vycm9ycz86IENvbm5lY3RvckF1dGhFcnJvcltdXG59XG5cbmV4cG9ydCBjb25zdCBnZXRBdmFpbGFibGVDb25uZWN0b3JzID0gYXN5bmMgKCk6IFByb21pc2U8Q2F0YWxvZ0Nvbm5lY3RvcltdPiA9PiB7XG4gIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2hNYWlhKHtcbiAgICBwYXRoOiAnY29ubmVjdG9ycycsXG4gICAgbWV0aG9kOiAnR0VUJyxcbiAgfSlcblxuICBpZiAoIXJlc3BvbnNlLm9rKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gZmV0Y2ggY29ubmVjdG9ycycpXG4gIH1cblxuICByZXR1cm4gcmVzcG9uc2UuanNvbigpXG59XG5cbmV4cG9ydCBjb25zdCBnZXRBZ2VudENvbm5lY3RvcnMgPSBhc3luYyAoYWdlbnRJZDogc3RyaW5nKTogUHJvbWlzZTxBZ2VudENvbm5lY3RvcltdPiA9PiB7XG4gIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2hNYWlhKHtcbiAgICBwYXRoOiBgYWdlbnRzLyR7YWdlbnRJZH0vY29ubmVjdG9yc2AsXG4gICAgbWV0aG9kOiAnR0VUJyxcbiAgfSlcblxuICBpZiAoIXJlc3BvbnNlLm9rKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gZmV0Y2ggYWdlbnQgY29ubmVjdG9ycycpXG4gIH1cblxuICByZXR1cm4gcmVzcG9uc2UuanNvbigpXG59XG5cbi8qKiBGZXRjaCBhIGZyZXNoIE9BdXRoIFVSTCBvbiBjbGljazogaXRzIHN0YXRlIGV4cGlyZXMgYWZ0ZXIgdGVuIG1pbnV0ZXMuICovXG5leHBvcnQgY29uc3QgYXV0aG9yaXplQ29ubmVjdG9yID0gYXN5bmMgKHNsdWc6IHN0cmluZyk6IFByb21pc2U8c3RyaW5nPiA9PiB7XG4gIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2hNYWlhKHtcbiAgICBwYXRoOiBgY29ubmVjdG9ycy8ke2VuY29kZVVSSUNvbXBvbmVudChzbHVnKX0vYXV0aG9yaXplYCxcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgfSlcblxuICBpZiAoIXJlc3BvbnNlLm9rKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gc3RhcnQgY29ubmVjdG9yIGF1dGhvcml6YXRpb24nKVxuICB9XG5cbiAgY29uc3QgcGF5bG9hZDogeyBhdXRoX3VybDogc3RyaW5nIH0gPSBhd2FpdCByZXNwb25zZS5qc29uKClcbiAgaWYgKCFwYXlsb2FkLmF1dGhfdXJsKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdDb25uZWN0b3IgYXV0aG9yaXphdGlvbiBVUkwgaXMgbWlzc2luZycpXG4gIH1cbiAgcmV0dXJuIHBheWxvYWQuYXV0aF91cmxcbn1cblxuZXhwb3J0IGNvbnN0IHNhdmVBZ2VudENvbm5lY3RvcnMgPSBhc3luYyAoXG4gIGFnZW50SWQ6IHN0cmluZyxcbiAgY29ubmVjdG9yU2x1Z3M6IHN0cmluZ1tdXG4pOiBQcm9taXNlPFNhdmVBZ2VudENvbm5lY3RvcnNSZXNwb25zZT4gPT4ge1xuICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoTWFpYSh7XG4gICAgcGF0aDogYGFnZW50cy8ke2FnZW50SWR9L2Nvbm5lY3RvcnNgLFxuICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgIGJvZHk6IHtcbiAgICAgIGNvbm5lY3Rvcl9zbHVnczogY29ubmVjdG9yU2x1Z3MsXG4gICAgfSxcbiAgfSlcblxuICBpZiAoIXJlc3BvbnNlLm9rKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gc2F2ZSBhZ2VudCBjb25uZWN0b3JzJylcbiAgfVxuXG4gIHJldHVybiByZXNwb25zZS5qc29uKClcbn1cblxuZXhwb3J0IGNvbnN0IG9wZW5Db25uZWN0b3JBdXRob3JpemF0aW9uV2luZG93cyA9IChcbiAgYXV0aG9yaXphdGlvbnM6IFBlbmRpbmdDb25uZWN0b3JBdXRob3JpemF0aW9uW10sXG4gIHBvcHVwV2luZG93PzogV2luZG93IHwgbnVsbFxuKTogV2luZG93IHwgbnVsbCA9PiB7XG4gIGlmICghYXV0aG9yaXphdGlvbnMubGVuZ3RoKSB7XG4gICAgaWYgKHBvcHVwV2luZG93ICYmICFwb3B1cFdpbmRvdy5jbG9zZWQpIHtcbiAgICAgIHBvcHVwV2luZG93LmNsb3NlKClcbiAgICB9XG4gICAgcmV0dXJuIG51bGxcbiAgfVxuXG4gIGNvbnN0IFtmaXJzdEF1dGhvcml6YXRpb24sIC4uLnJlbWFpbmluZ0F1dGhvcml6YXRpb25zXSA9IGF1dGhvcml6YXRpb25zXG5cbiAgbGV0IG9wZW5lZDogV2luZG93IHwgbnVsbCA9IG51bGxcbiAgaWYgKHBvcHVwV2luZG93ICYmICFwb3B1cFdpbmRvdy5jbG9zZWQpIHtcbiAgICAvLyBOYXZlZ2FyIGVsIHBvcHVwIHF1ZSB5YSBhYnJpbW9zIGVuIGVsIGNsaWNrIGRlbCB1c3VhcmlvOiBzaSBsbyBhYnJpw6lyYW1vc1xuICAgIC8vIGFjw6EsIGVsIGJyb3dzZXIgbG8gYmxvcXVlYXLDrWEgcG9yIG5vIHZlbmlyIGRlIHVuIGdlc3RvLlxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1wYXJhbS1yZWFzc2lnblxuICAgIHBvcHVwV2luZG93LmxvY2F0aW9uLmhyZWYgPSBmaXJzdEF1dGhvcml6YXRpb24uYXV0aF91cmxcbiAgICBvcGVuZWQgPSBwb3B1cFdpbmRvd1xuICB9IGVsc2Uge1xuICAgIG9wZW5lZCA9IHdpbmRvdy5vcGVuKGZpcnN0QXV0aG9yaXphdGlvbi5hdXRoX3VybCwgJ19ibGFuaycsICdwb3B1cD15ZXMsd2lkdGg9NTYwLGhlaWdodD03NjAnKVxuICB9XG5cbiAgcmVtYWluaW5nQXV0aG9yaXphdGlvbnMuZm9yRWFjaChhdXRob3JpemF0aW9uID0+IHtcbiAgICAvLyBNaXNtbyBjb21wb3J0YW1pZW50byBxdWUgZWwgcG9wdXAgcHJpbmNpcGFsOiBlbCBjYWxsYmFjayBPQXV0aCBkZWwgcHJvdmVlZG9yIHB1ZWRlIGRlcGVuZGVyIGRlIHdpbmRvdy5vcGVuZXJcbiAgICAvLyByZWFjdC1kb2N0b3ItZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QtZG9jdG9yL3dpbmRvdy1vcGVuLXdpdGhvdXQtbm9vcGVuZXJcbiAgICB3aW5kb3cub3BlbihhdXRob3JpemF0aW9uLmF1dGhfdXJsLCAnX2JsYW5rJywgJ3BvcHVwPXllcyx3aWR0aD01NjAsaGVpZ2h0PTc2MCcpXG4gIH0pXG5cbiAgcmV0dXJuIG9wZW5lZFxufVxuXG5jb25zdCBpc0Nvbm5lY3Rvck9BdXRoTWVzc2FnZSA9IChcbiAgZGF0YTogdW5rbm93blxuKTogZGF0YSBpcyB7IHR5cGU6IHN0cmluZzsgc3RhdHVzOiBzdHJpbmc7IHNsdWc/OiBzdHJpbmc7IG1lc3NhZ2U/OiBzdHJpbmcgfSA9PlxuICAhIWRhdGEgJiYgdHlwZW9mIGRhdGEgPT09ICdvYmplY3QnICYmICd0eXBlJyBpbiBkYXRhICYmIChkYXRhIGFzIHsgdHlwZTogc3RyaW5nIH0pLnR5cGUgPT09ICdjb25uZWN0b3Itb2F1dGgnXG5cbi8qKiBXYWl0cyB1bnRpbCB0aGUgT0F1dGggcG9wdXAgZmluaXNoZXMsIHRoZW4gY29uZmlybXMgdGhlIGNvbXBhbnkgdG9rZW4gdmlhIEdFVC4gKi9cbmV4cG9ydCBjb25zdCB3YWl0Rm9yQ29ubmVjdG9yQXV0aG9yaXphdGlvbiA9IGFzeW5jICh7XG4gIGFnZW50SWQsXG4gIHNsdWdzLFxuICBwb3B1cCxcbiAgdGltZW91dE1zID0gMTgwXzAwMCxcbn06IHtcbiAgYWdlbnRJZDogc3RyaW5nXG4gIHNsdWdzOiBzdHJpbmdbXVxuICBwb3B1cD86IFdpbmRvdyB8IG51bGxcbiAgdGltZW91dE1zPzogbnVtYmVyXG59KTogUHJvbWlzZTx7IGF1dGhvcml6ZWQ6IHN0cmluZ1tdOyBlcnJvcj86IHN0cmluZyB9PiA9PiB7XG4gIGlmICghc2x1Z3MubGVuZ3RoKSB7XG4gICAgcmV0dXJuIHsgYXV0aG9yaXplZDogW10gfVxuICB9XG5cbiAgY29uc3QgcGVuZGluZyA9IG5ldyBTZXQoc2x1Z3MpXG4gIGxldCBvYXV0aEVycm9yOiBzdHJpbmcgfCB1bmRlZmluZWRcblxuICBjb25zdCBhdXRob3JpemVkU2x1Z3MgPSBhc3luYyAoKSA9PiB7XG4gICAgY29uc3QgY29ubmVjdG9ycyA9IGF3YWl0IGdldEFnZW50Q29ubmVjdG9ycyhhZ2VudElkKVxuICAgIHJldHVybiBjb25uZWN0b3JzXG4gICAgICAuZmlsdGVyKGNvbm5lY3RvciA9PiBwZW5kaW5nLmhhcyhjb25uZWN0b3Iuc2x1ZykgJiYgY29ubmVjdG9yLnVzZXJfYXV0aG9yaXplZClcbiAgICAgIC5tYXAoY29ubmVjdG9yID0+IGNvbm5lY3Rvci5zbHVnKVxuICB9XG5cbiAgcmV0dXJuIG5ldyBQcm9taXNlKHJlc29sdmUgPT4ge1xuICAgIGxldCBmaW5pc2hlZCA9IGZhbHNlXG4gICAgLy8gRGVjbGFyYWRvcyBhbnRlcyBwb3JxdWUgYGZpbmlzaGAgbG9zIGxpbXBpYSB5IGEgc3UgdmV6IGxvcyB0cmVzIGxvIGludm9jYW4uXG4gICAgLy8gUGFyYSBjdWFuZG8gYWxndW5vIHB1ZWRlIGRpc3BhcmFyLCBlbCBibG9xdWUgZGUgYWJham8geWEgbG9zIGFzaWduw7MuXG4gICAgbGV0IG9uTWVzc2FnZTogKGV2ZW50OiBNZXNzYWdlRXZlbnQpID0+IHZvaWRcbiAgICBsZXQgcG9sbDogbnVtYmVyXG4gICAgbGV0IHRpbWVyOiBudW1iZXJcblxuICAgIGNvbnN0IGZpbmlzaCA9IGFzeW5jICgpID0+IHtcbiAgICAgIGlmIChmaW5pc2hlZCkge1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cbiAgICAgIGZpbmlzaGVkID0gdHJ1ZVxuICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21lc3NhZ2UnLCBvbk1lc3NhZ2UpXG4gICAgICB3aW5kb3cuY2xlYXJJbnRlcnZhbChwb2xsKVxuICAgICAgd2luZG93LmNsZWFyVGltZW91dCh0aW1lcilcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IGF1dGhvcml6ZWQgPSBhd2FpdCBhdXRob3JpemVkU2x1Z3MoKVxuICAgICAgICByZXNvbHZlKHsgYXV0aG9yaXplZCwgZXJyb3I6IGF1dGhvcml6ZWQubGVuZ3RoID8gdW5kZWZpbmVkIDogb2F1dGhFcnJvciB9KVxuICAgICAgfSBjYXRjaCB7XG4gICAgICAgIHJlc29sdmUoeyBhdXRob3JpemVkOiBbXSwgZXJyb3I6IG9hdXRoRXJyb3IgfSlcbiAgICAgIH1cbiAgICB9XG5cbiAgICBvbk1lc3NhZ2UgPSAoZXZlbnQ6IE1lc3NhZ2VFdmVudCkgPT4ge1xuICAgICAgaWYgKCFpc0Nvbm5lY3Rvck9BdXRoTWVzc2FnZShldmVudC5kYXRhKSkge1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cbiAgICAgIGlmIChldmVudC5kYXRhLnN0YXR1cyA9PT0gJ2Vycm9yJykge1xuICAgICAgICBvYXV0aEVycm9yID0gZXZlbnQuZGF0YS5tZXNzYWdlXG4gICAgICB9XG4gICAgICBmaW5pc2goKVxuICAgIH1cblxuICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdtZXNzYWdlJywgb25NZXNzYWdlKVxuXG4gICAgcG9sbCA9IHdpbmRvdy5zZXRJbnRlcnZhbCgoKSA9PiB7XG4gICAgICBpZiAocG9wdXAgJiYgcG9wdXAuY2xvc2VkKSB7XG4gICAgICAgIGZpbmlzaCgpXG4gICAgICB9XG4gICAgfSwgNDAwKVxuXG4gICAgdGltZXIgPSB3aW5kb3cuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBvYXV0aEVycm9yID0gb2F1dGhFcnJvciB8fCAndGltZW91dCdcbiAgICAgIGZpbmlzaCgpXG4gICAgfSwgdGltZW91dE1zKVxuICB9KVxufVxuXG5leHBvcnQgY29uc3QgY29ubmVjdG9yQXV0aEVycm9yTWVzc2FnZSA9IChlcnJvcjogQ29ubmVjdG9yQXV0aEVycm9yKTogc3RyaW5nID0+IHtcbiAgaWYgKGVycm9yLnNsdWcgPT09ICduZXRzdWl0ZScpIHtcbiAgICByZXR1cm4gZXJyb3IubWVzc2FnZVxuICB9XG4gIHJldHVybiBgJHtlcnJvci5uYW1lfTogJHtlcnJvci5tZXNzYWdlfWBcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxTQUFTQSxTQUFTLFFBQVEsV0FBVztBQXVDckMsT0FBTyxJQUFNQyxzQkFBc0I7RUFBQSxJQUFBQyxJQUFBLEdBQUFDLGlCQUFBLGNBQUFDLG1CQUFBLENBQUFDLElBQUEsQ0FBRyxTQUFBQyxRQUFBO0lBQUEsSUFBQUMsUUFBQTtJQUFBLE9BQUFILG1CQUFBLENBQUFJLElBQUEsV0FBQUMsUUFBQTtNQUFBLGtCQUFBQSxRQUFBLENBQUFDLElBQUEsR0FBQUQsUUFBQSxDQUFBRSxJQUFBO1FBQUE7VUFBQUYsUUFBQSxDQUFBRSxJQUFBO1VBQUEsT0FDYlgsU0FBUyxDQUFDO1lBQy9CWSxJQUFJLEVBQUUsWUFBWTtZQUNsQkMsTUFBTSxFQUFFO1VBQ1YsQ0FBQyxDQUFDO1FBQUE7VUFISU4sUUFBUSxHQUFBRSxRQUFBLENBQUFLLElBQUE7VUFBQSxJQUtUUCxRQUFRLENBQUNRLEVBQUU7WUFBQU4s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
@@ -26,7 +26,7 @@ export var useChatsStore = create(function (set, get) {
26
26
  return _objectSpread(_objectSpread({}, initialState), {}, {
27
27
  fetchChats: function () {
28
28
  var _fetchChats = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(_ref) {
29
- var agent, section, _ref$limit, limit, _ref$offset, offset, onError, lang, _ref$background, background, hasExistingChats, _yield$maia$Chats$get, items, nextItem, hasMore, unreadCount, nextOffset, apiItems, apiIds, _get, currentChats, optimisticSessionIds, stillOptimistic, _t;
29
+ var agent, section, _ref$limit, limit, _ref$offset, offset, onError, lang, _ref$background, background, hasExistingChats, _yield$maia$Chats$get, items, nextItem, hasMore, unreadCount, nextOffset, apiItems, apiIds, _get, currentChats, optimisticSessionIds, optimisticIdSet, stillOptimistic, _t;
30
30
  return _regeneratorRuntime.wrap(function (_context) {
31
31
  while (1) switch (_context.prev = _context.next) {
32
32
  case 0:
@@ -58,8 +58,9 @@ export var useChatsStore = create(function (set, get) {
58
58
  return item.sessionExternalId;
59
59
  }));
60
60
  _get = get(), currentChats = _get.chats, optimisticSessionIds = _get.optimisticSessionIds;
61
+ optimisticIdSet = new Set(optimisticSessionIds);
61
62
  stillOptimistic = currentChats.filter(function (chat) {
62
- return optimisticSessionIds.includes(chat.sessionExternalId) && !apiIds.has(chat.sessionExternalId);
63
+ return optimisticIdSet.has(chat.sessionExternalId) && !apiIds.has(chat.sessionExternalId);
63
64
  });
64
65
  set({
65
66
  chats: [].concat(_toConsumableArray(stillOptimistic), _toConsumableArray(apiItems)),
@@ -384,4 +385,4 @@ export var useChatsStore = create(function (set, get) {
384
385
  export var getChatsStoreState = function getChatsStoreState() {
385
386
  return useChatsStore.getState();
386
387
  };
387
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjcmVhdGUiLCJtYWlhIiwiREVGQVVMVF9MSU1JVCIsImluaXRpYWxTdGF0ZSIsImNoYXRzIiwib3B0aW1pc3RpY1Nlc3Npb25JZHMiLCJsb2FkaW5nQ2hhdHMiLCJpc0xvYWRpbmdNb3JlQ2hhdHMiLCJuZXh0T2Zmc2V0IiwibGltaXQiLCJvZmZzZXQiLCJtb3VudENvdW50IiwidW5yZWFkQ291bnQiLCJhY3RpdmVDaGF0SWQiLCJpc0NoYXRWaWV3VmlzaWJsZSIsInVzZUNoYXRzU3RvcmUiLCJzZXQiLCJnZXQiLCJfb2JqZWN0U3ByZWFkIiwiZmV0Y2hDaGF0cyIsIl9mZXRjaENoYXRzIiwiX2FzeW5jVG9HZW5lcmF0b3IiLCJfcmVnZW5lcmF0b3JSdW50aW1lIiwibWFyayIsIl9jYWxsZWUiLCJfcmVmIiwiYWdlbnQiLCJzZWN0aW9uIiwiX3JlZiRsaW1pdCIsIl9yZWYkb2Zmc2V0Iiwib25FcnJvciIsImxhbmciLCJfcmVmJGJhY2tncm91bmQiLCJiYWNrZ3JvdW5kIiwiaGFzRXhpc3RpbmdDaGF0cyIsIl95aWVsZCRtYWlhJENoYXRzJGdldCIsIml0ZW1zIiwibmV4dEl0ZW0iLCJoYXNNb3JlIiwiYXBpSXRlbXMiLCJhcGlJZHMiLCJfZ2V0IiwiY3VycmVudENoYXRzIiwic3RpbGxPcHRpbWlzdGljIiwiX3QiLCJ3cmFwIiwiX2NvbnRleHQiLCJwcmV2IiwibmV4dCIsImxlbmd0aCIsIkNoYXRzIiwiZ2V0Q2hhdHNCeVVzZXJJZCIsInNlbnQiLCJOdW1iZXIiLCJTZXQiLCJtYXAiLCJpdGVtIiwic2Vzc2lvbkV4dGVybmFsSWQiLCJmaWx0ZXIiLCJjaGF0IiwiaW5jbHVkZXMiLCJoYXMiLCJjb25jYXQiLCJfdG9Db25zdW1hYmxlQXJyYXkiLCJpZCIsImNvbnNvbGUiLCJlcnJvciIsInN0b3AiLCJfeCIsImFwcGx5IiwiYXJndW1lbnRzIiwibG9hZE1vcmVDaGF0cyIsIl9sb2FkTW9yZUNoYXRzIiwiX2NhbGxlZTIiLCJfcmVmMiIsIl9nZXQyIiwiX3lpZWxkJG1haWEkQ2hhdHMkZ2V0MiIsIm5ld05leHRPZmZzZXQiLCJfdDIiLCJfY29udGV4dDIiLCJhYnJ1cHQiLCJzdGF0ZSIsIl94MiIsInByZXBlbmRDaGF0IiwiZmlsdGVyZWQiLCJleGlzdGluZyIsImFscmVhZHlPcHRpbWlzdGljIiwiZGVsZXRlQ2hhdCIsIl9kZWxldGVDaGF0IiwiX2NhbGxlZTMiLCJfcmVmMyIsImNoYXRJZCIsInVzZXJJZCIsIl90MyIsIl9jb250ZXh0MyIsIl94MyIsInVwZGF0ZUNoYXQiLCJfdXBkYXRlQ2hhdCIsIl9jYWxsZWU0IiwiX3JlZjQiLCJfY3VycmVudCR0aXRsZSIsImN1cnJlbnQiLCJsYXN0UXVlc3Rpb24iLCJfdDQiLCJfY29udGV4dDQiLCJmaW5kIiwiYyIsInRpdGxlIiwicGF0Y2hDaGF0IiwiX3g0IiwibWFya0NoYXRBc1JlYWQiLCJfbWFya0NoYXRBc1JlYWQiLCJfY2FsbGVlNSIsIm9wdGlvbnMiLCJfdDUiLCJfY29udGV4dDUiLCJmb3JjZSIsImlzUmVhZCIsIk1hdGgiLCJtYXgiLCJtYXJrU2Vzc2lvbkFzUmVhZCIsIl94NSIsIl94NiIsIm1hcmtDaGF0QXNVbnJlYWQiLCJzZXRDaGF0UmVhZFN0YXRlIiwic2V0QWN0aXZlQ2hhdElkIiwic2V0Q2hhdFZpZXdWaXNpYmxlIiwidmlzaWJsZSIsInNldFVucmVhZENvdW50IiwiY291bnQiLCJyZXNldCIsImFjcXVpcmUiLCJyZWxlYXNlIiwibmV3Q291bnQiLCJnZXRDaGF0c1N0b3JlU3RhdGUiLCJnZXRTdGF0ZSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdG9yZS91c2VDaGF0c1N0b3JlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIGltcG9ydC9uby1leHRyYW5lb3VzLWRlcGVuZGVuY2llcyAqL1xuLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAqL1xuaW1wb3J0IHsgY3JlYXRlIH0gZnJvbSAnenVzdGFuZCdcbmltcG9ydCBtYWlhIGZyb20gJy4uL3NlcnZpY2VzL21haWEnXG5pbXBvcnQgdHlwZSB7IENoYXRMaXN0SXRlbSwgRmV0Y2hDaGF0c1BhcmFtcywgTG9hZE1vcmVDaGF0c1BhcmFtcywgRGVsZXRlQ2hhdFBhcmFtcyB9IGZyb20gJy4vY2hhdHNTdG9yZS50eXBlcydcblxuY29uc3QgREVGQVVMVF9MSU1JVCA9IDIwXG5cbnR5cGUgQ2hhdHNTdGF0ZSA9IHtcbiAgY2hhdHM6IENoYXRMaXN0SXRlbVtdXG4gIC8qKiBTZXNpb25lcyBhZ3JlZ2FkYXMgb3B0aW1pc3RhbWVudGUgaGFzdGEgcXVlIGVsIGJhY2tlbmQgbGFzIGRldnVlbHZhIGVuIEdFVCBzZXNzaW9ucy4gKi9cbiAgb3B0aW1pc3RpY1Nlc3Npb25JZHM6IHN0cmluZ1tdXG4gIGxvYWRpbmdDaGF0czogYm9vbGVhblxuICBpc0xvYWRpbmdNb3JlQ2hhdHM6IGJvb2xlYW5cbiAgbmV4dE9mZnNldDogbnVtYmVyIHwgbnVsbFxuICBsaW1pdDogbnVtYmVyXG4gIG9mZnNldDogbnVtYmVyXG4gIG1vdW50Q291bnQ6IG51bWJlclxuICB1bnJlYWRDb3VudDogbnVtYmVyXG4gIGFjdGl2ZUNoYXRJZDogc3RyaW5nIHwgbnVsbFxuICBpc0NoYXRWaWV3VmlzaWJsZTogYm9vbGVhblxufVxuXG50eXBlIENoYXRzQWN0aW9ucyA9IHtcbiAgZmV0Y2hDaGF0czogKHBhcmFtczogRmV0Y2hDaGF0c1BhcmFtcykgPT4gUHJvbWlzZTx2b2lkPlxuICBsb2FkTW9yZUNoYXRzOiAocGFyYW1zOiBMb2FkTW9yZUNoYXRzUGFyYW1zKSA9PiBQcm9taXNlPHZvaWQ+XG4gIHByZXBlbmRDaGF0OiAoY2hhdDogQ2hhdExpc3RJdGVtKSA9PiB2b2lkXG4gIGRlbGV0ZUNoYXQ6IChwYXJhbXM6IERlbGV0ZUNoYXRQYXJhbXMpID0+IFByb21pc2U8Ym9vbGVhbj5cbiAgdXBkYXRlQ2hhdDogKGNoYXQ6IFBhcnRpYWw8Q2hhdExpc3RJdGVtPiAmIHsgc2Vzc2lvbkV4dGVybmFsSWQ6IHN0cmluZzsgaWQ6IHN0cmluZyB9KSA9PiBQcm9taXNlPGJvb2xlYW4+XG4gIG1hcmtDaGF0QXNSZWFkOiAoY2hhdElkPzogc3RyaW5nIHwgbnVsbCwgb3B0aW9ucz86IHsgZm9yY2U/OiBib29sZWFuIH0pID0+IFByb21pc2U8dm9pZD5cbiAgbWFya0NoYXRBc1VucmVhZDogKGNoYXRJZD86IHN0cmluZyB8IG51bGwpID0+IHZvaWRcbiAgc2V0Q2hhdFJlYWRTdGF0ZTogKGNoYXRJZDogc3RyaW5nLCBpc1JlYWQ6IGJvb2xlYW4pID0+IHZvaWRcbiAgc2V0QWN0aXZlQ2hhdElkOiAoY2hhdElkOiBzdHJpbmcgfCBudWxsKSA9PiB2b2lkXG4gIHNldENoYXRWaWV3VmlzaWJsZTogKHZpc2libGU6IGJvb2xlYW4pID0+IHZvaWRcbiAgc2V0VW5yZWFkQ291bnQ6IChjb3VudDogbnVtYmVyKSA9PiB2b2lkXG4gIHJlc2V0OiAoKSA9PiB2b2lkXG4gIGFjcXVpcmU6ICgpID0+IHZvaWRcbiAgcmVsZWFzZTogKCkgPT4gdm9pZFxufVxuXG5jb25zdCBpbml0aWFsU3RhdGU6IENoYXRzU3RhdGUgPSB7XG4gIGNoYXRzOiBbXSxcbiAgb3B0aW1pc3RpY1Nlc3Npb25JZHM6IFtdLFxuICBsb2FkaW5nQ2hhdHM6IHRydWUsXG4gIGlzTG9hZGluZ01vcmVDaGF0czogZmFsc2UsXG4gIG5leHRPZmZzZXQ6IG51bGwsXG4gIGxpbWl0OiBERUZBVUxUX0xJTUlULFxuICBvZmZzZXQ6IDAsXG4gIG1vdW50Q291bnQ6IDAsXG4gIHVucmVhZENvdW50OiAwLFxuICBhY3RpdmVDaGF0SWQ6IG51bGwsXG4gIGlzQ2hhdFZpZXdWaXNpYmxlOiB0cnVlLFxufVxuXG5leHBvcnQgY29uc3QgdXNlQ2hhdHNTdG9yZSA9IGNyZWF0ZTxDaGF0c1N0YXRlICYgQ2hhdHNBY3Rpb25zPigoc2V0LCBnZXQpID0+ICh7XG4gIC4uLmluaXRpYWxTdGF0ZSxcblxuICBmZXRjaENoYXRzOiBhc3luYyAoeyBhZ2VudCwgc2VjdGlvbiwgbGltaXQgPSBERUZBVUxUX0xJTUlULCBvZmZzZXQgPSAwLCBvbkVycm9yLCBsYW5nLCBiYWNrZ3JvdW5kID0gZmFsc2UgfSkgPT4ge1xuICAgIGNvbnN0IGhhc0V4aXN0aW5nQ2hhdHMgPSBnZXQoKS5jaGF0cy5sZW5ndGggPiAwXG4gICAgaWYgKCFiYWNrZ3JvdW5kIHx8ICFoYXNFeGlzdGluZ0NoYXRzKSB7XG4gICAgICBzZXQoeyBsb2FkaW5nQ2hhdHM6IHRydWUgfSlcbiAgICB9XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHsgaXRlbXMsIG5leHRJdGVtLCBoYXNNb3JlLCB1bnJlYWRDb3VudCB9ID0gYXdhaXQgbWFpYS5DaGF0cy5nZXRDaGF0c0J5VXNlcklkKHtcbiAgICAgICAgYWdlbnQsXG4gICAgICAgIHNlY3Rpb24sXG4gICAgICAgIGxpbWl0LFxuICAgICAgICBvZmZzZXQsXG4gICAgICAgIGxhbmcsXG4gICAgICB9KVxuICAgICAgY29uc3QgbmV4dE9mZnNldCA9IGhhc01vcmUgJiYgbmV4dEl0ZW0gIT0gbnVsbCA/IE51bWJlcihuZXh0SXRlbSkgOiBudWxsXG4gICAgICBjb25zdCBhcGlJdGVtcyA9IGl0ZW1zIGFzIENoYXRMaXN0SXRlbVtdXG4gICAgICBjb25zdCBhcGlJZHMgPSBuZXcgU2V0KGFwaUl0ZW1zLm1hcChpdGVtID0+IGl0ZW0uc2Vzc2lvbkV4dGVybmFsSWQpKVxuICAgICAgY29uc3QgeyBjaGF0czogY3VycmVudENoYXRzLCBvcHRpbWlzdGljU2Vzc2lvbklkcyB9ID0gZ2V0KClcbiAgICAgIGNvbnN0IHN0aWxsT3B0aW1pc3RpYyA9IGN1cnJlbnRDaGF0cy5maWx0ZXIoXG4gICAgICAgIGNoYXQgPT4gb3B0aW1pc3RpY1Nlc3Npb25JZHMuaW5jbHVkZXMoY2hhdC5zZXNzaW9uRXh0ZXJuYWxJZCkgJiYgIWFwaUlkcy5oYXMoY2hhdC5zZXNzaW9uRXh0ZXJuYWxJZClcbiAgICAgIClcbiAgICAgIHNldCh7XG4gICAgICAgIGNoYXRzOiBbLi4uc3RpbGxPcHRpbWlzdGljLCAuLi5hcGlJdGVtc10sXG4gICAgICAgIG9wdGltaXN0aWNTZXNzaW9uSWRzOiBvcHRpbWlzdGljU2Vzc2lvbklkcy5maWx0ZXIoaWQgPT4gIWFwaUlkcy5oYXMoaWQpKSxcbiAgICAgICAgbG9hZGluZ0NoYXRzOiBmYWxzZSxcbiAgICAgICAgbmV4dE9mZnNldCxcbiAgICAgICAgbGltaXQsXG4gICAgICAgIG9mZnNldDogbmV4dE9mZnNldCA/PyAwLFxuICAgICAgICB1bnJlYWRDb3VudCxcbiAgICAgIH0pXG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGZldGNoaW5nIGNoYXRzOicsIGVycm9yKVxuICAgICAgc2V0KHsgbG9hZGluZ0NoYXRzOiBmYWxzZSB9KVxuICAgICAgb25FcnJvcj8uKClcbiAgICB9XG4gIH0sXG5cbiAgbG9hZE1vcmVDaGF0czogYXN5bmMgKHsgYWdlbnQsIHNlY3Rpb24sIG9uRXJyb3IsIGxhbmcgfSkgPT4ge1xuICAgIGNvbnN0IHsgbmV4dE9mZnNldCwgbGltaXQsIGlzTG9hZGluZ01vcmVDaGF0cyB9ID0gZ2V0KClcbiAgICBpZiAobmV4dE9mZnNldCA9PT0gbnVsbCB8fCBpc0xvYWRpbmdNb3JlQ2hhdHMpIHJldHVyblxuICAgIHNldCh7IGlzTG9hZGluZ01vcmVDaGF0czogdHJ1ZSB9KVxuICAgIHRyeSB7XG4gICAgICBjb25zdCB7IGl0ZW1zLCBuZXh0SXRlbSwgaGFzTW9yZSwgdW5yZWFkQ291bnQgfSA9IGF3YWl0IG1haWEuQ2hhdHMuZ2V0Q2hhdHNCeVVzZXJJZCh7XG4gICAgICAgIGFnZW50LFxuICAgICAgICBzZWN0aW9uLFxuICAgICAgICBsaW1pdCxcbiAgICAgICAgb2Zmc2V0OiBuZXh0T2Zmc2V0LFxuICAgICAgICBsYW5nLFxuICAgICAgfSlcbiAgICAgIGNvbnN0IG5ld05leHRPZmZzZXQgPSBoYXNNb3JlICYmIG5leHRJdGVtICE9IG51bGwgPyBOdW1iZXIobmV4dEl0ZW0pIDogbnVsbFxuICAgICAgc2V0KHN0YXRlID0+ICh7XG4gICAgICAgIGNoYXRzOiBbLi4uc3RhdGUuY2hhdHMsIC4uLihpdGVtcyBhcyBDaGF0TGlzdEl0ZW1bXSldLFxuICAgICAgICBpc0xvYWRpbmdNb3JlQ2hhdHM6IGZhbHNlLFxuICAgICAgICBuZXh0T2Zmc2V0OiBuZXdOZXh0T2Zmc2V0LFxuICAgICAgICBvZmZzZXQ6IG5ld05leHRPZmZzZXQgPz8gMCxcbiAgICAgICAgdW5yZWFkQ291bnQsXG4gICAgICB9KSlcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgbG9hZGluZyBtb3JlIGNoYXRzOicsIGVycm9yKVxuICAgICAgc2V0KHsgaXNMb2FkaW5nTW9yZUNoYXRzOiBmYWxzZSB9KVxuICAgICAgb25FcnJvcj8uKClcbiAgICB9XG4gIH0sXG5cbiAgcHJlcGVuZENoYXQ6IGNoYXQgPT5cbiAgICBzZXQoc3RhdGUgPT4ge1xuICAgICAgY29uc3QgZmlsdGVyZWQgPSBzdGF0ZS5jaGF0cy5maWx0ZXIoZXhpc3RpbmcgPT4gZXhpc3Rpbmcuc2Vzc2lvbkV4dGVybmFsSWQgIT09IGNoYXQuc2Vzc2lvbkV4dGVybmFsSWQpXG4gICAgICBjb25zdCBhbHJlYWR5T3B0aW1pc3RpYyA9IHN0YXRlLm9wdGltaXN0aWNTZXNzaW9uSWRzLmluY2x1ZGVzKGNoYXQuc2Vzc2lvbkV4dGVybmFsSWQpXG4gICAgICByZXR1cm4ge1xuICAgICAgICBjaGF0czogW2NoYXQsIC4uLmZpbHRlcmVkXSxcbiAgICAgICAgb3B0aW1pc3RpY1Nlc3Npb25JZHM6IGFscmVhZHlPcHRpbWlzdGljXG4gICAgICAgICAgPyBzdGF0ZS5vcHRpbWlzdGljU2Vzc2lvbklkc1xuICAgICAgICAgIDogWy4uLnN0YXRlLm9wdGltaXN0aWNTZXNzaW9uSWRzLCBjaGF0LnNlc3Npb25FeHRlcm5hbElkXSxcbiAgICAgIH1cbiAgICB9KSxcblxuICBkZWxldGVDaGF0OiBhc3luYyAoeyBjaGF0SWQsIHVzZXJJZCB9KSA9PiB7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IG1haWEuQ2hhdHMuZGVsZXRlQ2hhdCh7IGNoYXRJZCwgdXNlcklkIH0pXG4gICAgICBzZXQoc3RhdGUgPT4gKHtcbiAgICAgICAgY2hhdHM6IHN0YXRlLmNoYXRzLmZpbHRlcihjaGF0ID0+IGNoYXQuc2Vzc2lvbkV4dGVybmFsSWQgIT09IGNoYXRJZCksXG4gICAgICAgIG9wdGltaXN0aWNTZXNzaW9uSWRzOiBzdGF0ZS5vcHRpbWlzdGljU2Vzc2lvbklkcy5maWx0ZXIoaWQgPT4gaWQgIT09IGNoYXRJZCksXG4gICAgICB9KSlcbiAgICAgIHJldHVybiB0cnVlXG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGRlbGV0aW5nIGNoYXQ6JywgZXJyb3IpXG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG4gIH0sXG5cbiAgdXBkYXRlQ2hhdDogYXN5bmMgY2hhdCA9PiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IGN1cnJlbnQgPSBnZXQoKS5jaGF0cy5maW5kKGMgPT4gYy5pZCA9PT0gY2hhdC5pZClcbiAgICAgIGNvbnN0IGxhc3RRdWVzdGlvbiA9IGN1cnJlbnQ/LnRpdGxlID8/IGNoYXQudGl0bGUgPz8gJydcbiAgICAgIGF3YWl0IG1haWEuQ2hhdHMucGF0Y2hDaGF0KHtcbiAgICAgICAgY2hhdElkOiBjaGF0LnNlc3Npb25FeHRlcm5hbElkLFxuICAgICAgICBsYXN0UXVlc3Rpb24sXG4gICAgICAgIC4uLihjaGF0LnRpdGxlICE9IG51bGwgJiYgeyB0aXRsZTogY2hhdC50aXRsZSB9KSxcbiAgICAgIH0pXG4gICAgICBzZXQoc3RhdGUgPT4gKHtcbiAgICAgICAgY2hhdHM6IHN0YXRlLmNoYXRzLm1hcChjID0+IChjLmlkID09PSBjaGF0LmlkID8geyAuLi5jLCAuLi5jaGF0IH0gOiBjKSksXG4gICAgICB9KSlcbiAgICAgIHJldHVybiB0cnVlXG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIHVwZGF0aW5nIGNoYXQ6JywgZXJyb3IpXG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG4gIH0sXG5cbiAgbWFya0NoYXRBc1JlYWQ6IGFzeW5jIChjaGF0SWQsIG9wdGlvbnMpID0+IHtcbiAgICBjb25zdCBpZCA9IGNoYXRJZCB8fCBnZXQoKS5hY3RpdmVDaGF0SWRcbiAgICBpZiAoIWlkKSByZXR1cm5cblxuICAgIGNvbnN0IGNoYXQgPSBnZXQoKS5jaGF0cy5maW5kKGMgPT4gYy5zZXNzaW9uRXh0ZXJuYWxJZCA9PT0gaWQpXG4gICAgaWYgKCFvcHRpb25zPy5mb3JjZSAmJiBjaGF0Py5pc1JlYWQpIHJldHVyblxuXG4gICAgaWYgKGNoYXQ/LmlzUmVhZCA9PT0gZmFsc2UpIHtcbiAgICAgIHNldChzdGF0ZSA9PiAoe1xuICAgICAgICBjaGF0czogc3RhdGUuY2hhdHMubWFwKGMgPT4gKGMuc2Vzc2lvbkV4dGVybmFsSWQgPT09IGlkID8geyAuLi5jLCBpc1JlYWQ6IHRydWUgfSA6IGMpKSxcbiAgICAgICAgdW5yZWFkQ291bnQ6IE1hdGgubWF4KDAsIHN0YXRlLnVucmVhZENvdW50IC0gMSksXG4gICAgICB9KSlcbiAgICB9XG5cbiAgICB0cnkge1xuICAgICAgYXdhaXQgbWFpYS5DaGF0cy5tYXJrU2Vzc2lvbkFzUmVhZCh7IGNoYXRJZDogaWQgfSlcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgbWFya2luZyBjaGF0IGFzIHJlYWQ6JywgZXJyb3IpXG4gICAgfVxuICB9LFxuXG4gIG1hcmtDaGF0QXNVbnJlYWQ6IGNoYXRJZCA9PiB7XG4gICAgaWYgKCFjaGF0SWQpIHJldHVyblxuICAgIGNvbnN0IGNoYXQgPSBnZXQoKS5jaGF0cy5maW5kKGMgPT4gYy5zZXNzaW9uRXh0ZXJuYWxJZCA9PT0gY2hhdElkKVxuICAgIGlmIChjaGF0Py5pc1JlYWQgPT09IGZhbHNlKSByZXR1cm5cblxuICAgIHNldChzdGF0ZSA9PiAoe1xuICAgICAgY2hhdHM6IHN0YXRlLmNoYXRzLm1hcChjID0+IChjLnNlc3Npb25FeHRlcm5hbElkID09PSBjaGF0SWQgPyB7IC4uLmMsIGlzUmVhZDogZmFsc2UgfSA6IGMpKSxcbiAgICAgIHVucmVhZENvdW50OiBzdGF0ZS51bnJlYWRDb3VudCArIDEsXG4gICAgfSkpXG4gIH0sXG5cbiAgc2V0Q2hhdFJlYWRTdGF0ZTogKGNoYXRJZCwgaXNSZWFkKSA9PlxuICAgIHNldChzdGF0ZSA9PiAoe1xuICAgICAgY2hhdHM6IHN0YXRlLmNoYXRzLm1hcChjID0+IChjLnNlc3Npb25FeHRlcm5hbElkID09PSBjaGF0SWQgPyB7IC4uLmMsIGlzUmVhZCB9IDogYykpLFxuICAgIH0pKSxcblxuICBzZXRBY3RpdmVDaGF0SWQ6IGNoYXRJZCA9PiBzZXQoeyBhY3RpdmVDaGF0SWQ6IGNoYXRJZCB9KSxcblxuICBzZXRDaGF0Vmlld1Zpc2libGU6IHZpc2libGUgPT4gc2V0KHsgaXNDaGF0Vmlld1Zpc2libGU6IHZpc2libGUgfSksXG5cbiAgc2V0VW5yZWFkQ291bnQ6IGNvdW50ID0+IHNldCh7IHVucmVhZENvdW50OiBNYXRoLm1heCgwLCBjb3VudCkgfSksXG5cbiAgcmVzZXQ6ICgpID0+IHNldChzdGF0ZSA9PiAoeyAuLi5pbml0aWFsU3RhdGUsIG1vdW50Q291bnQ6IHN0YXRlLm1vdW50Q291bnQgfSkpLFxuXG4gIGFjcXVpcmU6ICgpID0+IHNldChzdGF0ZSA9PiAoeyBtb3VudENvdW50OiBzdGF0ZS5tb3VudENvdW50ICsgMSB9KSksXG5cbiAgcmVsZWFzZTogKCkgPT4ge1xuICAgIHNldChzdGF0ZSA9PiB7XG4gICAgICBjb25zdCBuZXdDb3VudCA9IE1hdGgubWF4KDAsIHN0YXRlLm1vdW50Q291bnQgLSAxKVxuICAgICAgaWYgKG5ld0NvdW50ID09PSAwKSB7XG4gICAgICAgIHJldHVybiB7IC4uLmluaXRpYWxTdGF0ZSwgbW91bnRDb3VudDogMCB9XG4gICAgICB9XG4gICAgICByZXR1cm4geyBtb3VudENvdW50OiBuZXdDb3VudCB9XG4gICAgfSlcbiAgfSxcbn0pKVxuXG5leHBvcnQgY29uc3QgZ2V0Q2hhdHNTdG9yZVN0YXRlID0gKCkgPT4gdXNlQ2hhdHNTdG9yZS5nZXRTdGF0ZSgpXG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBO0FBQ0E7QUFDQSxTQUFTQSxNQUFNLFFBQVEsU0FBUztBQUNoQyxPQUFPQyxJQUFJLE1BQU0sa0JBQWtCO0FBR25DLElBQU1DLGFBQWEsR0FBRyxFQUFFO0FBa0N4QixJQUFNQyxZQUF3QixHQUFHO0VBQy9CQyxLQUFLLEVBQUUsRUFBRTtFQUNUQyxvQkFBb0IsRUFBRSxFQUFFO0VBQ3hCQyxZQUFZLEVBQUUsSUFBSTtFQUNsQkMsa0JBQWtCLEVBQUUsS0FBSztFQUN6QkMsVUFBVSxFQUFFLElBQUk7RUFDaEJDLEtBQUssRUFBRVAsYUFBYTtFQUNwQlEsTUFBTSxFQUFFLENBQUM7RUFDVEMsVUFBVSxFQUFFLENBQUM7RUFDYkMsV0FBVyxFQUFFLENBQUM7RUFDZEMsWUFBWSxFQUFFLElBQUk7RUFDbEJDLGlCQUFpQixFQUFFO0FBQ3JCLENBQUM7QUFFRCxPQUFPLElBQU1DLGFBQWEsR0FBR2YsTUFBTSxDQUE0QixVQUFDZ0IsR0FBRyxFQUFFQyxHQUFHO0VBQUEsT0FBQUMsYUFBQSxDQUFBQSxhQUFBLEtBQ25FZixZQUFZO0lBRWZnQixVQUFVO01BQUEsSUFBQUMsV0FBQSxHQUFBQyxpQkFBQSxjQUFBQyxtQkFBQSxDQUFBQyxJQUFBLENBQUUsU0FBQUMsUUFBQUMsSUFBQTtRQUFBLElBQUFDLEtBQUEsRUFBQUMsT0FBQSxFQUFBQyxVQUFBLEVBQUFuQixLQUFBLEVBQUFvQixXQUFBLEVBQUFuQixNQUFBLEVBQUFvQixPQUFBLEVBQUFDLElBQUEsRUFBQUMsZUFBQSxFQUFBQyxVQUFBLEVBQUFDLGdCQUFBLEVBQUFDLHFCQUFBLEVBQUFDLEtBQUEsRUFBQUMsUUFBQSxFQUFBQyxPQUFBLEVBQUExQixXQUFBLEVBQUFKLFVBQUEsRUFBQStCLFFB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LFNBQWpCQSxlQUFlQSxDQUFFbEMsTUFBTTtNQUFBLE9BQUkzRSxHQUFHLENBQUM7UUFBRUgsWUFBWSxFQUFFOEU7TUFBTyxDQUFDLENBQUM7SUFBQTtJQUV4RG1DLGtCQUFrQixFQUFFLFNBQXBCQSxrQkFBa0JBLENBQUVDLE9BQU87TUFBQSxPQUFJL0csR0FBRyxDQUFDO1FBQUVGLGlCQUFpQixFQUFFaUg7TUFBUSxDQUFDLENBQUM7SUFBQTtJQUVsRUMsY0FBYyxFQUFFLFNBQWhCQSxjQUFjQSxDQUFFQyxLQUFLO01BQUEsT0FBSWpILEdBQUcsQ0FBQztRQUFFSixXQUFXLEVBQUUwRyxJQUFJLENBQUNDLEdBQUcsQ0FBQyxDQUFDLEVBQUVVLEtBQUs7TUFBRSxDQUFDLENBQUM7SUFBQTtJQUVqRUMsS0FBSyxFQUFFLFNBQVBBLEtBQUtBLENBQUE7TUFBQSxPQUFRbEgsR0FBRyxDQUFDLFVBQUFpRSxLQUFLO1FBQUEsT0FBQS9ELGFBQUEsQ0FBQUEsYUFBQSxLQUFVZixZQUFZO1VBQUVRLFVBQVUsRUFBRXNFLEtBQUssQ0FBQ3RFO1FBQVU7TUFBQSxDQUFHLENBQUM7SUFBQTtJQUU5RXdILE9BQU8sRUFBRSxTQUFUQSxPQUFPQSxDQUFBO01BQUEsT0FBUW5ILEdBQUcsQ0FBQyxVQUFBaUUsS0FBSztRQUFBLE9BQUs7VUFBRXRFLFVBQVUsRUFBRXNFLEtBQUssQ0FBQ3RFLFVBQVUsR0FBRztRQUFFLENBQUM7TUFBQSxDQUFDLENBQUM7SUFBQTtJQUVuRXlILE9BQU8sRUFBRSxTQUFUQSxPQUFPQSxDQUFBLEVBQVE7TUFDYnBILEdBQUcsQ0FBQyxVQUFBaUUsS0FBSyxFQUFJO1FBQ1gsSUFBTW9ELFFBQVEsR0FBR2YsSUFBSSxDQUFDQyxHQUFHLENBQUMsQ0FBQyxFQUFFdEMsS0FBSyxDQUFDdEUsVUFBVSxHQUFHLENBQUMsQ0FBQztRQUNsRCxJQUFJMEgsUUFBUSxLQUFLLENBQUMsRUFBRTtVQUNsQixPQUFBbkgsYUFBQSxDQUFBQSxhQUFBLEtBQVlmLFlBQVk7WUFBRVEsVUFBVSxFQUFFO1VBQUM7UUFDekM7UUFDQSxPQUFPO1VBQUVBLFVBQVUsRUFBRTBIO1FBQVMsQ0FBQztNQUNqQyxDQUFDLENBQUM7SUFDSjtFQUFDO0FBQUEsQ0FDRCxDQUFDO0FBRUgsT0FBTyxJQUFNQyxrQkFBa0IsR0FBRyxTQUFyQkEsa0JBQWtCQSxDQUFBO0VBQUEsT0FBU3ZILGFBQWEsQ0FBQ3dILFFBQVEsQ0FBQyxDQUFDO0FBQUEiLCJpZ25vcmVMaXN0IjpbXX0=
388
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjcmVhdGUiLCJtYWlhIiwiREVGQVVMVF9MSU1JVCIsImluaXRpYWxTdGF0ZSIsImNoYXRzIiwib3B0aW1pc3RpY1Nlc3Npb25JZHMiLCJsb2FkaW5nQ2hhdHMiLCJpc0xvYWRpbmdNb3JlQ2hhdHMiLCJuZXh0T2Zmc2V0IiwibGltaXQiLCJvZmZzZXQiLCJtb3VudENvdW50IiwidW5yZWFkQ291bnQiLCJhY3RpdmVDaGF0SWQiLCJpc0NoYXRWaWV3VmlzaWJsZSIsInVzZUNoYXRzU3RvcmUiLCJzZXQiLCJnZXQiLCJfb2JqZWN0U3ByZWFkIiwiZmV0Y2hDaGF0cyIsIl9mZXRjaENoYXRzIiwiX2FzeW5jVG9HZW5lcmF0b3IiLCJfcmVnZW5lcmF0b3JSdW50aW1lIiwibWFyayIsIl9jYWxsZWUiLCJfcmVmIiwiYWdlbnQiLCJzZWN0aW9uIiwiX3JlZiRsaW1pdCIsIl9yZWYkb2Zmc2V0Iiwib25FcnJvciIsImxhbmciLCJfcmVmJGJhY2tncm91bmQiLCJiYWNrZ3JvdW5kIiwiaGFzRXhpc3RpbmdDaGF0cyIsIl95aWVsZCRtYWlhJENoYXRzJGdldCIsIml0ZW1zIiwibmV4dEl0ZW0iLCJoYXNNb3JlIiwiYXBpSXRlbXMiLCJhcGlJZHMiLCJfZ2V0IiwiY3VycmVudENoYXRzIiwib3B0aW1pc3RpY0lkU2V0Iiwic3RpbGxPcHRpbWlzdGljIiwiX3QiLCJ3cmFwIiwiX2NvbnRleHQiLCJwcmV2IiwibmV4dCIsImxlbmd0aCIsIkNoYXRzIiwiZ2V0Q2hhdHNCeVVzZXJJZCIsInNlbnQiLCJOdW1iZXIiLCJTZXQiLCJtYXAiLCJpdGVtIiwic2Vzc2lvbkV4dGVybmFsSWQiLCJmaWx0ZXIiLCJjaGF0IiwiaGFzIiwiY29uY2F0IiwiX3RvQ29uc3VtYWJsZUFycmF5IiwiaWQiLCJjb25zb2xlIiwiZXJyb3IiLCJzdG9wIiwiX3giLCJhcHBseSIsImFyZ3VtZW50cyIsImxvYWRNb3JlQ2hhdHMiLCJfbG9hZE1vcmVDaGF0cyIsIl9jYWxsZWUyIiwiX3JlZjIiLCJfZ2V0MiIsIl95aWVsZCRtYWlhJENoYXRzJGdldDIiLCJuZXdOZXh0T2Zmc2V0IiwiX3QyIiwiX2NvbnRleHQyIiwiYWJydXB0Iiwic3RhdGUiLCJfeDIiLCJwcmVwZW5kQ2hhdCIsImZpbHRlcmVkIiwiZXhpc3RpbmciLCJhbHJlYWR5T3B0aW1pc3RpYyIsImluY2x1ZGVzIiwiZGVsZXRlQ2hhdCIsIl9kZWxldGVDaGF0IiwiX2NhbGxlZTMiLCJfcmVmMyIsImNoYXRJZCIsInVzZXJJZCIsIl90MyIsIl9jb250ZXh0MyIsIl94MyIsInVwZGF0ZUNoYXQiLCJfdXBkYXRlQ2hhdCIsIl9jYWxsZWU0IiwiX3JlZjQiLCJfY3VycmVudCR0aXRsZSIsImN1cnJlbnQiLCJsYXN0UXVlc3Rpb24iLCJfdDQiLCJfY29udGV4dDQiLCJmaW5kIiwiYyIsInRpdGxlIiwicGF0Y2hDaGF0IiwiX3g0IiwibWFya0NoYXRBc1JlYWQiLCJfbWFya0NoYXRBc1JlYWQiLCJfY2FsbGVlNSIsIm9wdGlvbnMiLCJfdDUiLCJfY29udGV4dDUiLCJmb3JjZSIsImlzUmVhZCIsIk1hdGgiLCJtYXgiLCJtYXJrU2Vzc2lvbkFzUmVhZCIsIl94NSIsIl94NiIsIm1hcmtDaGF0QXNVbnJlYWQiLCJzZXRDaGF0UmVhZFN0YXRlIiwic2V0QWN0aXZlQ2hhdElkIiwic2V0Q2hhdFZpZXdWaXNpYmxlIiwidmlzaWJsZSIsInNldFVucmVhZENvdW50IiwiY291bnQiLCJyZXNldCIsImFjcXVpcmUiLCJyZWxlYXNlIiwibmV3Q291bnQiLCJnZXRDaGF0c1N0b3JlU3RhdGUiLCJnZXRTdGF0ZSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdG9yZS91c2VDaGF0c1N0b3JlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIGltcG9ydC9uby1leHRyYW5lb3VzLWRlcGVuZGVuY2llcyAqL1xuLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAqL1xuaW1wb3J0IHsgY3JlYXRlIH0gZnJvbSAnenVzdGFuZCdcbmltcG9ydCBtYWlhIGZyb20gJy4uL3NlcnZpY2VzL21haWEnXG5pbXBvcnQgdHlwZSB7IENoYXRMaXN0SXRlbSwgRmV0Y2hDaGF0c1BhcmFtcywgTG9hZE1vcmVDaGF0c1BhcmFtcywgRGVsZXRlQ2hhdFBhcmFtcyB9IGZyb20gJy4vY2hhdHNTdG9yZS50eXBlcydcblxuY29uc3QgREVGQVVMVF9MSU1JVCA9IDIwXG5cbnR5cGUgQ2hhdHNTdGF0ZSA9IHtcbiAgY2hhdHM6IENoYXRMaXN0SXRlbVtdXG4gIC8qKiBTZXNpb25lcyBhZ3JlZ2FkYXMgb3B0aW1pc3RhbWVudGUgaGFzdGEgcXVlIGVsIGJhY2tlbmQgbGFzIGRldnVlbHZhIGVuIEdFVCBzZXNzaW9ucy4gKi9cbiAgb3B0aW1pc3RpY1Nlc3Npb25JZHM6IHN0cmluZ1tdXG4gIGxvYWRpbmdDaGF0czogYm9vbGVhblxuICBpc0xvYWRpbmdNb3JlQ2hhdHM6IGJvb2xlYW5cbiAgbmV4dE9mZnNldDogbnVtYmVyIHwgbnVsbFxuICBsaW1pdDogbnVtYmVyXG4gIG9mZnNldDogbnVtYmVyXG4gIG1vdW50Q291bnQ6IG51bWJlclxuICB1bnJlYWRDb3VudDogbnVtYmVyXG4gIGFjdGl2ZUNoYXRJZDogc3RyaW5nIHwgbnVsbFxuICBpc0NoYXRWaWV3VmlzaWJsZTogYm9vbGVhblxufVxuXG50eXBlIENoYXRzQWN0aW9ucyA9IHtcbiAgZmV0Y2hDaGF0czogKHBhcmFtczogRmV0Y2hDaGF0c1BhcmFtcykgPT4gUHJvbWlzZTx2b2lkPlxuICBsb2FkTW9yZUNoYXRzOiAocGFyYW1zOiBMb2FkTW9yZUNoYXRzUGFyYW1zKSA9PiBQcm9taXNlPHZvaWQ+XG4gIHByZXBlbmRDaGF0OiAoY2hhdDogQ2hhdExpc3RJdGVtKSA9PiB2b2lkXG4gIGRlbGV0ZUNoYXQ6IChwYXJhbXM6IERlbGV0ZUNoYXRQYXJhbXMpID0+IFByb21pc2U8Ym9vbGVhbj5cbiAgdXBkYXRlQ2hhdDogKGNoYXQ6IFBhcnRpYWw8Q2hhdExpc3RJdGVtPiAmIHsgc2Vzc2lvbkV4dGVybmFsSWQ6IHN0cmluZzsgaWQ6IHN0cmluZyB9KSA9PiBQcm9taXNlPGJvb2xlYW4+XG4gIG1hcmtDaGF0QXNSZWFkOiAoY2hhdElkPzogc3RyaW5nIHwgbnVsbCwgb3B0aW9ucz86IHsgZm9yY2U/OiBib29sZWFuIH0pID0+IFByb21pc2U8dm9pZD5cbiAgbWFya0NoYXRBc1VucmVhZDogKGNoYXRJZD86IHN0cmluZyB8IG51bGwpID0+IHZvaWRcbiAgc2V0Q2hhdFJlYWRTdGF0ZTogKGNoYXRJZDogc3RyaW5nLCBpc1JlYWQ6IGJvb2xlYW4pID0+IHZvaWRcbiAgc2V0QWN0aXZlQ2hhdElkOiAoY2hhdElkOiBzdHJpbmcgfCBudWxsKSA9PiB2b2lkXG4gIHNldENoYXRWaWV3VmlzaWJsZTogKHZpc2libGU6IGJvb2xlYW4pID0+IHZvaWRcbiAgc2V0VW5yZWFkQ291bnQ6IChjb3VudDogbnVtYmVyKSA9PiB2b2lkXG4gIHJlc2V0OiAoKSA9PiB2b2lkXG4gIGFjcXVpcmU6ICgpID0+IHZvaWRcbiAgcmVsZWFzZTogKCkgPT4gdm9pZFxufVxuXG5jb25zdCBpbml0aWFsU3RhdGU6IENoYXRzU3RhdGUgPSB7XG4gIGNoYXRzOiBbXSxcbiAgb3B0aW1pc3RpY1Nlc3Npb25JZHM6IFtdLFxuICBsb2FkaW5nQ2hhdHM6IHRydWUsXG4gIGlzTG9hZGluZ01vcmVDaGF0czogZmFsc2UsXG4gIG5leHRPZmZzZXQ6IG51bGwsXG4gIGxpbWl0OiBERUZBVUxUX0xJTUlULFxuICBvZmZzZXQ6IDAsXG4gIG1vdW50Q291bnQ6IDAsXG4gIHVucmVhZENvdW50OiAwLFxuICBhY3RpdmVDaGF0SWQ6IG51bGwsXG4gIGlzQ2hhdFZpZXdWaXNpYmxlOiB0cnVlLFxufVxuXG5leHBvcnQgY29uc3QgdXNlQ2hhdHNTdG9yZSA9IGNyZWF0ZTxDaGF0c1N0YXRlICYgQ2hhdHNBY3Rpb25zPigoc2V0LCBnZXQpID0+ICh7XG4gIC4uLmluaXRpYWxTdGF0ZSxcblxuICBmZXRjaENoYXRzOiBhc3luYyAoeyBhZ2VudCwgc2VjdGlvbiwgbGltaXQgPSBERUZBVUxUX0xJTUlULCBvZmZzZXQgPSAwLCBvbkVycm9yLCBsYW5nLCBiYWNrZ3JvdW5kID0gZmFsc2UgfSkgPT4ge1xuICAgIGNvbnN0IGhhc0V4aXN0aW5nQ2hhdHMgPSBnZXQoKS5jaGF0cy5sZW5ndGggPiAwXG4gICAgaWYgKCFiYWNrZ3JvdW5kIHx8ICFoYXNFeGlzdGluZ0NoYXRzKSB7XG4gICAgICBzZXQoeyBsb2FkaW5nQ2hhdHM6IHRydWUgfSlcbiAgICB9XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHsgaXRlbXMsIG5leHRJdGVtLCBoYXNNb3JlLCB1bnJlYWRDb3VudCB9ID0gYXdhaXQgbWFpYS5DaGF0cy5nZXRDaGF0c0J5VXNlcklkKHtcbiAgICAgICAgYWdlbnQsXG4gICAgICAgIHNlY3Rpb24sXG4gICAgICAgIGxpbWl0LFxuICAgICAgICBvZmZzZXQsXG4gICAgICAgIGxhbmcsXG4gICAgICB9KVxuICAgICAgY29uc3QgbmV4dE9mZnNldCA9IGhhc01vcmUgJiYgbmV4dEl0ZW0gIT0gbnVsbCA/IE51bWJlcihuZXh0SXRlbSkgOiBudWxsXG4gICAgICBjb25zdCBhcGlJdGVtcyA9IGl0ZW1zIGFzIENoYXRMaXN0SXRlbVtdXG4gICAgICBjb25zdCBhcGlJZHMgPSBuZXcgU2V0KGFwaUl0ZW1zLm1hcChpdGVtID0+IGl0ZW0uc2Vzc2lvbkV4dGVybmFsSWQpKVxuICAgICAgY29uc3QgeyBjaGF0czogY3VycmVudENoYXRzLCBvcHRpbWlzdGljU2Vzc2lvbklkcyB9ID0gZ2V0KClcbiAgICAgIGNvbnN0IG9wdGltaXN0aWNJZFNldCA9IG5ldyBTZXQob3B0aW1pc3RpY1Nlc3Npb25JZHMpXG4gICAgICBjb25zdCBzdGlsbE9wdGltaXN0aWMgPSBjdXJyZW50Q2hhdHMuZmlsdGVyKFxuICAgICAgICBjaGF0ID0+IG9wdGltaXN0aWNJZFNldC5oYXMoY2hhdC5zZXNzaW9uRXh0ZXJuYWxJZCkgJiYgIWFwaUlkcy5oYXMoY2hhdC5zZXNzaW9uRXh0ZXJuYWxJZClcbiAgICAgIClcbiAgICAgIHNldCh7XG4gICAgICAgIGNoYXRzOiBbLi4uc3RpbGxPcHRpbWlzdGljLCAuLi5hcGlJdGVtc10sXG4gICAgICAgIG9wdGltaXN0aWNTZXNzaW9uSWRzOiBvcHRpbWlzdGljU2Vzc2lvbklkcy5maWx0ZXIoaWQgPT4gIWFwaUlkcy5oYXMoaWQpKSxcbiAgICAgICAgbG9hZGluZ0NoYXRzOiBmYWxzZSxcbiAgICAgICAgbmV4dE9mZnNldCxcbiAgICAgICAgbGltaXQsXG4gICAgICAgIG9mZnNldDogbmV4dE9mZnNldCA/PyAwLFxuICAgICAgICB1bnJlYWRDb3VudCxcbiAgICAgIH0pXG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGZldGNoaW5nIGNoYXRzOicsIGVycm9yKVxuICAgICAgc2V0KHsgbG9hZGluZ0NoYXRzOiBmYWxzZSB9KVxuICAgICAgb25FcnJvcj8uKClcbiAgICB9XG4gIH0sXG5cbiAgbG9hZE1vcmVDaGF0czogYXN5bmMgKHsgYWdlbnQsIHNlY3Rpb24sIG9uRXJyb3IsIGxhbmcgfSkgPT4ge1xuICAgIGNvbnN0IHsgbmV4dE9mZnNldCwgbGltaXQsIGlzTG9hZGluZ01vcmVDaGF0cyB9ID0gZ2V0KClcbiAgICBpZiAobmV4dE9mZnNldCA9PT0gbnVsbCB8fCBpc0xvYWRpbmdNb3JlQ2hhdHMpIHJldHVyblxuICAgIHNldCh7IGlzTG9hZGluZ01vcmVDaGF0czogdHJ1ZSB9KVxuICAgIHRyeSB7XG4gICAgICBjb25zdCB7IGl0ZW1zLCBuZXh0SXRlbSwgaGFzTW9yZSwgdW5yZWFkQ291bnQgfSA9IGF3YWl0IG1haWEuQ2hhdHMuZ2V0Q2hhdHNCeVVzZXJJZCh7XG4gICAgICAgIGFnZW50LFxuICAgICAgICBzZWN0aW9uLFxuICAgICAgICBsaW1pdCxcbiAgICAgICAgb2Zmc2V0OiBuZXh0T2Zmc2V0LFxuICAgICAgICBsYW5nLFxuICAgICAgfSlcbiAgICAgIGNvbnN0IG5ld05leHRPZmZzZXQgPSBoYXNNb3JlICYmIG5leHRJdGVtICE9IG51bGwgPyBOdW1iZXIobmV4dEl0ZW0pIDogbnVsbFxuICAgICAgc2V0KHN0YXRlID0+ICh7XG4gICAgICAgIGNoYXRzOiBbLi4uc3RhdGUuY2hhdHMsIC4uLihpdGVtcyBhcyBDaGF0TGlzdEl0ZW1bXSldLFxuICAgICAgICBpc0xvYWRpbmdNb3JlQ2hhdHM6IGZhbHNlLFxuICAgICAgICBuZXh0T2Zmc2V0OiBuZXdOZXh0T2Zmc2V0LFxuICAgICAgICBvZmZzZXQ6IG5ld05leHRPZmZzZXQgPz8gMCxcbiAgICAgICAgdW5yZWFkQ291bnQsXG4gICAgICB9KSlcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgbG9hZGluZyBtb3JlIGNoYXRzOicsIGVycm9yKVxuICAgICAgc2V0KHsgaXNMb2FkaW5nTW9yZUNoYXRzOiBmYWxzZSB9KVxuICAgICAgb25FcnJvcj8uKClcbiAgICB9XG4gIH0sXG5cbiAgcHJlcGVuZENoYXQ6IGNoYXQgPT5cbiAgICBzZXQoc3RhdGUgPT4ge1xuICAgICAgY29uc3QgZmlsdGVyZWQgPSBzdGF0ZS5jaGF0cy5maWx0ZXIoZXhpc3RpbmcgPT4gZXhpc3Rpbmcuc2Vzc2lvbkV4dGVybmFsSWQgIT09IGNoYXQuc2Vzc2lvbkV4dGVybmFsSWQpXG4gICAgICBjb25zdCBhbHJlYWR5T3B0aW1pc3RpYyA9IHN0YXRlLm9wdGltaXN0aWNTZXNzaW9uSWRzLmluY2x1ZGVzKGNoYXQuc2Vzc2lvbkV4dGVybmFsSWQpXG4gICAgICByZXR1cm4ge1xuICAgICAgICBjaGF0czogW2NoYXQsIC4uLmZpbHRlcmVkXSxcbiAgICAgICAgb3B0aW1pc3RpY1Nlc3Npb25JZHM6IGFscmVhZHlPcHRpbWlzdGljXG4gICAgICAgICAgPyBzdGF0ZS5vcHRpbWlzdGljU2Vzc2lvbklkc1xuICAgICAgICAgIDogWy4uLnN0YXRlLm9wdGltaXN0aWNTZXNzaW9uSWRzLCBjaGF0LnNlc3Npb25FeHRlcm5hbElkXSxcbiAgICAgIH1cbiAgICB9KSxcblxuICBkZWxldGVDaGF0OiBhc3luYyAoeyBjaGF0SWQsIHVzZXJJZCB9KSA9PiB7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IG1haWEuQ2hhdHMuZGVsZXRlQ2hhdCh7IGNoYXRJZCwgdXNlcklkIH0pXG4gICAgICBzZXQoc3RhdGUgPT4gKHtcbiAgICAgICAgY2hhdHM6IHN0YXRlLmNoYXRzLmZpbHRlcihjaGF0ID0+IGNoYXQuc2Vzc2lvbkV4dGVybmFsSWQgIT09IGNoYXRJZCksXG4gICAgICAgIG9wdGltaXN0aWNTZXNzaW9uSWRzOiBzdGF0ZS5vcHRpbWlzdGljU2Vzc2lvbklkcy5maWx0ZXIoaWQgPT4gaWQgIT09IGNoYXRJZCksXG4gICAgICB9KSlcbiAgICAgIHJldHVybiB0cnVlXG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGRlbGV0aW5nIGNoYXQ6JywgZXJyb3IpXG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG4gIH0sXG5cbiAgdXBkYXRlQ2hhdDogYXN5bmMgY2hhdCA9PiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IGN1cnJlbnQgPSBnZXQoKS5jaGF0cy5maW5kKGMgPT4gYy5pZCA9PT0gY2hhdC5pZClcbiAgICAgIGNvbnN0IGxhc3RRdWVzdGlvbiA9IGN1cnJlbnQ/LnRpdGxlID8/IGNoYXQudGl0bGUgPz8gJydcbiAgICAgIGF3YWl0IG1haWEuQ2hhdHMucGF0Y2hDaGF0KHtcbiAgICAgICAgY2hhdElkOiBjaGF0LnNlc3Npb25FeHRlcm5hbElkLFxuICAgICAgICBsYXN0UXVlc3Rpb24sXG4gICAgICAgIC4uLihjaGF0LnRpdGxlICE9IG51bGwgJiYgeyB0aXRsZTogY2hhdC50aXRsZSB9KSxcbiAgICAgIH0pXG4gICAgICBzZXQoc3RhdGUgPT4gKHtcbiAgICAgICAgY2hhdHM6IHN0YXRlLmNoYXRzLm1hcChjID0+IChjLmlkID09PSBjaGF0LmlkID8geyAuLi5jLCAuLi5jaGF0IH0gOiBjKSksXG4gICAgICB9KSlcbiAgICAgIHJldHVybiB0cnVlXG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIHVwZGF0aW5nIGNoYXQ6JywgZXJyb3IpXG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG4gIH0sXG5cbiAgbWFya0NoYXRBc1JlYWQ6IGFzeW5jIChjaGF0SWQsIG9wdGlvbnMpID0+IHtcbiAgICBjb25zdCBpZCA9IGNoYXRJZCB8fCBnZXQoKS5hY3RpdmVDaGF0SWRcbiAgICBpZiAoIWlkKSByZXR1cm5cblxuICAgIGNvbnN0IGNoYXQgPSBnZXQoKS5jaGF0cy5maW5kKGMgPT4gYy5zZXNzaW9uRXh0ZXJuYWxJZCA9PT0gaWQpXG4gICAgaWYgKCFvcHRpb25zPy5mb3JjZSAmJiBjaGF0Py5pc1JlYWQpIHJldHVyblxuXG4gICAgaWYgKGNoYXQ/LmlzUmVhZCA9PT0gZmFsc2UpIHtcbiAgICAgIHNldChzdGF0ZSA9PiAoe1xuICAgICAgICBjaGF0czogc3RhdGUuY2hhdHMubWFwKGMgPT4gKGMuc2Vzc2lvbkV4dGVybmFsSWQgPT09IGlkID8geyAuLi5jLCBpc1JlYWQ6IHRydWUgfSA6IGMpKSxcbiAgICAgICAgdW5yZWFkQ291bnQ6IE1hdGgubWF4KDAsIHN0YXRlLnVucmVhZENvdW50IC0gMSksXG4gICAgICB9KSlcbiAgICB9XG5cbiAgICB0cnkge1xuICAgICAgYXdhaXQgbWFpYS5DaGF0cy5tYXJrU2Vzc2lvbkFzUmVhZCh7IGNoYXRJZDogaWQgfSlcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgbWFya2luZyBjaGF0IGFzIHJlYWQ6JywgZXJyb3IpXG4gICAgfVxuICB9LFxuXG4gIG1hcmtDaGF0QXNVbnJlYWQ6IGNoYXRJZCA9PiB7XG4gICAgaWYgKCFjaGF0SWQpIHJldHVyblxuICAgIGNvbnN0IGNoYXQgPSBnZXQoKS5jaGF0cy5maW5kKGMgPT4gYy5zZXNzaW9uRXh0ZXJuYWxJZCA9PT0gY2hhdElkKVxuICAgIGlmIChjaGF0Py5pc1JlYWQgPT09IGZhbHNlKSByZXR1cm5cblxuICAgIHNldChzdGF0ZSA9PiAoe1xuICAgICAgY2hhdHM6IHN0YXRlLmNoYXRzLm1hcChjID0+IChjLnNlc3Npb25FeHRlcm5hbElkID09PSBjaGF0SWQgPyB7IC4uLmMsIGlzUmVhZDogZmFsc2UgfSA6IGMpKSxcbiAgICAgIHVucmVhZENvdW50OiBzdGF0ZS51bnJlYWRDb3VudCArIDEsXG4gICAgfSkpXG4gIH0sXG5cbiAgc2V0Q2hhdFJlYWRTdGF0ZTogKGNoYXRJZCwgaXNSZWFkKSA9PlxuICAgIHNldChzdGF0ZSA9PiAoe1xuICAgICAgY2hhdHM6IHN0YXRlLmNoYXRzLm1hcChjID0+IChjLnNlc3Npb25FeHRlcm5hbElkID09PSBjaGF0SWQgPyB7IC4uLmMsIGlzUmVhZCB9IDogYykpLFxuICAgIH0pKSxcblxuICBzZXRBY3RpdmVDaGF0SWQ6IGNoYXRJZCA9PiBzZXQoeyBhY3RpdmVDaGF0SWQ6IGNoYXRJZCB9KSxcblxuICBzZXRDaGF0Vmlld1Zpc2libGU6IHZpc2libGUgPT4gc2V0KHsgaXNDaGF0Vmlld1Zpc2libGU6IHZpc2libGUgfSksXG5cbiAgc2V0VW5yZWFkQ291bnQ6IGNvdW50ID0+IHNldCh7IHVucmVhZENvdW50OiBNYXRoLm1heCgwLCBjb3VudCkgfSksXG5cbiAgcmVzZXQ6ICgpID0+IHNldChzdGF0ZSA9PiAoeyAuLi5pbml0aWFsU3RhdGUsIG1vdW50Q291bnQ6IHN0YXRlLm1vdW50Q291bnQgfSkpLFxuXG4gIGFjcXVpcmU6ICgpID0+IHNldChzdGF0ZSA9PiAoeyBtb3VudENvdW50OiBzdGF0ZS5tb3VudENvdW50ICsgMSB9KSksXG5cbiAgcmVsZWFzZTogKCkgPT4ge1xuICAgIHNldChzdGF0ZSA9PiB7XG4gICAgICBjb25zdCBuZXdDb3VudCA9IE1hdGgubWF4KDAsIHN0YXRlLm1vdW50Q291bnQgLSAxKVxuICAgICAgaWYgKG5ld0NvdW50ID09PSAwKSB7XG4gICAgICAgIHJldHVybiB7IC4uLmluaXRpYWxTdGF0ZSwgbW91bnRDb3VudDogMCB9XG4gICAgICB9XG4gICAgICByZXR1cm4geyBtb3VudENvdW50OiBuZXdDb3VudCB9XG4gICAgfSlcbiAgfSxcbn0pKVxuXG5leHBvcnQgY29uc3QgZ2V0Q2hhdHNTdG9yZVN0YXRlID0gKCkgPT4gdXNlQ2hhdHNTdG9yZS5nZXRTdGF0ZSgpXG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBO0FBQ0E7QUFDQSxTQUFTQSxNQUFNLFFBQVEsU0FBUztBQUNoQyxPQUFPQyxJQUFJLE1BQU0sa0JBQWtCO0FBR25DLElBQU1DLGFBQWEsR0FBRyxFQUFFO0FBa0N4QixJQUFNQyxZQUF3QixHQUFHO0VBQy9CQyxLQUFLLEVBQUUsRUFBRTtFQUNUQyxvQkFBb0IsRUFBRSxFQUFFO0VBQ3hCQyxZQUFZLEVBQUUsSUFBSTtFQUNsQkMsa0JBQWtCLEVBQUUsS0FBSztFQUN6QkMsVUFBVSxFQUFFLElBQUk7RUFDaEJDLEtBQUssRUFBRVAsYUFBYTtFQUNwQlEsTUFBTSxFQUFFLENBQUM7RUFDVEMsVUFBVSxFQUFFLENBQUM7RUFDYkMsV0FBVyxFQUFFLENBQUM7RUFDZEMsWUFBWSxFQUFFLElBQUk7RUFDbEJDLGlCQUFpQixFQUFFO0FBQ3JCLENBQUM7QUFFRCxPQUFPLElBQU1DLGFBQWEsR0FBR2YsTUFBTSxDQUE0QixVQUFDZ0IsR0FBRyxFQUFFQyxHQUFHO0VBQUEsT0FBQUMsYUFBQSxDQUFBQSxhQUFBLEtBQ25FZixZQUFZO0lBRWZnQixVQUFVO01BQUEsSUFBQUMsV0FBQSxHQUFBQyxpQkFBQSxjQUFBQyxtQkFBQSxDQUFBQyxJQUFBLENBQUUsU0FBQUMsUUFBQUMsSUFBQTtRQUFBLElBQUFDLEtBQUEsRUFBQUMsT0FBQSxFQUFBQyxVQUFBLEVBQUFuQixLQUFBLEVBQUFvQixXQUFBLEVBQUFuQixNQUFBLEVBQUFvQixPQUFBLEVBQUFDLElBQUEsRUFBQUMsZUFBQSxFQUFBQyxVQUFBLEVBQUFDLGdCQUFBLEVBQUFDLHFC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
@@ -14,7 +14,12 @@ export var preprocessImageForBackend = function preprocessImageForBackend(file)
14
14
  reject(new Error('No se pudo obtener el contexto del canvas'));
15
15
  return;
16
16
  }
17
+
18
+ // Falso positivo: se revoca en onload/onerror
19
+ // react-doctor-disable-next-line react-doctor/no-create-object-url-without-revoke
20
+ var objectUrl = URL.createObjectURL(file);
17
21
  img.onload = function () {
22
+ URL.revokeObjectURL(objectUrl);
18
23
  var originalWidth = img.width,
19
24
  originalHeight = img.height;
20
25
  var aspectRatio = getImageAspectRatio(originalWidth, originalHeight);
@@ -50,9 +55,10 @@ export var preprocessImageForBackend = function preprocessImageForBackend(file)
50
55
  }, file.type, 0.9); // Calidad del 90%
51
56
  };
52
57
  img.onerror = function () {
58
+ URL.revokeObjectURL(objectUrl);
53
59
  reject(new Error('Error al cargar la imagen'));
54
60
  };
55
- img.src = URL.createObjectURL(file);
61
+ img.src = objectUrl;
56
62
  });
57
63
  };
58
64
 
@@ -63,7 +69,11 @@ export var preprocessImageForBackend = function preprocessImageForBackend(file)
63
69
  export var shouldPreprocessImage = function shouldPreprocessImage(file) {
64
70
  return new Promise(function (resolve) {
65
71
  var img = new Image();
72
+ // Falso positivo: se revoca en onload/onerror
73
+ // react-doctor-disable-next-line react-doctor/no-create-object-url-without-revoke
74
+ var objectUrl = URL.createObjectURL(file);
66
75
  img.onload = function () {
76
+ URL.revokeObjectURL(objectUrl);
67
77
  try {
68
78
  var width = img.width,
69
79
  height = img.height;
@@ -74,10 +84,11 @@ export var shouldPreprocessImage = function shouldPreprocessImage(file) {
74
84
  }
75
85
  };
76
86
  img.onerror = function () {
87
+ URL.revokeObjectURL(objectUrl);
77
88
  // Error cargando imagen para análisis
78
89
  resolve(false);
79
90
  };
80
- img.src = URL.createObjectURL(file);
91
+ img.src = objectUrl;
81
92
  });
82
93
  };
83
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjb21wdXRlQ29udGFpbkRyYXdSZWN0IiwiZ2V0SW1hZ2VBc3BlY3RSYXRpbyIsIklNQUdFX0JBQ0tFTkRfVEFSR0VUX1NJWkUiLCJpc05lYXJTcXVhcmVBc3BlY3RSYXRpbyIsInByZXByb2Nlc3NJbWFnZUZvckJhY2tlbmQiLCJmaWxlIiwiUHJvbWlzZSIsInJlc29sdmUiLCJyZWplY3QiLCJpbWciLCJJbWFnZSIsImNhbnZhcyIsImRvY3VtZW50IiwiY3JlYXRlRWxlbWVudCIsImN0eCIsImdldENvbnRleHQiLCJFcnJvciIsIm9ubG9hZCIsIm9yaWdpbmFsV2lkdGgiLCJ3aWR0aCIsIm9yaWdpbmFsSGVpZ2h0IiwiaGVpZ2h0IiwiYXNwZWN0UmF0aW8iLCJ0YXJnZXRTaXplIiwiZHJhd0ltYWdlIiwiX2NvbXB1dGVDb250YWluRHJhd1JlIiwiZHJhd1dpZHRoIiwiZHJhd0hlaWdodCIsImRyYXdYIiwiZHJhd1kiLCJmaWxsU3R5bGUiLCJmaWxsUmVjdCIsInRvQmxvYiIsImJsb2IiLCJwcm9jZXNzZWRGaWxlIiwiRmlsZSIsIm5hbWUiLCJ0eXBlIiwibGFzdE1vZGlmaWVkIiwib25lcnJvciIsInNyYyIsIlVSTCIsImNyZWF0ZU9iamVjdFVSTCIsInNob3VsZFByZXByb2Nlc3NJbWFnZSIsImVycm9yIiwiY29uc29sZSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9pbWFnZVByZXByb2Nlc3Nvci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBjb21wdXRlQ29udGFpbkRyYXdSZWN0LFxuICBnZXRJbWFnZUFzcGVjdFJhdGlvLFxuICBJTUFHRV9CQUNLRU5EX1RBUkdFVF9TSVpFLFxuICBpc05lYXJTcXVhcmVBc3BlY3RSYXRpbyxcbn0gZnJvbSAnLi9pbWFnZVByZXByb2Nlc3Nvci5oZWxwZXJzJ1xuXG4vKipcbiAqIFByZS1wcm9jZXNhIGltw6FnZW5lcyBwYXJhIGVsIGJhY2tlbmRcbiAqIC0gSW3DoWdlbmVzIGN1YWRyYWRhczogdXNhIG9iamVjdC1maXQ6IGNvdmVyIChzaW4gcGFkZGluZylcbiAqIC0gSW3DoWdlbmVzIHJlY3Rhbmd1bGFyZXM6IHVzYSBvYmplY3QtZml0OiBjb250YWluIChjb24gcGFkZGluZylcbiAqL1xuZXhwb3J0IGNvbnN0IHByZXByb2Nlc3NJbWFnZUZvckJhY2tlbmQgPSAoZmlsZTogRmlsZSk6IFByb21pc2U8RmlsZT4gPT4ge1xuICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgIGNvbnN0IGltZyA9IG5ldyBJbWFnZSgpXG4gICAgY29uc3QgY2FudmFzID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJylcbiAgICBjb25zdCBjdHggPSBjYW52YXMuZ2V0Q29udGV4dCgnMmQnKVxuXG4gICAgaWYgKCFjdHgpIHtcbiAgICAgIHJlamVjdChuZXcgRXJyb3IoJ05vIHNlIHB1ZG8gb2J0ZW5lciBlbCBjb250ZXh0byBkZWwgY2FudmFzJykpXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBpbWcub25sb2FkID0gKCkgPT4ge1xuICAgICAgY29uc3QgeyB3aWR0aDogb3JpZ2luYWxXaWR0aCwgaGVpZ2h0OiBvcmlnaW5hbEhlaWdodCB9ID0gaW1nXG4gICAgICBjb25zdCBhc3BlY3RSYXRpbyA9IGdldEltYWdlQXNwZWN0UmF0aW8ob3JpZ2luYWxXaWR0aCwgb3JpZ2luYWxIZWlnaHQpXG4gICAgICBjb25zdCB0YXJnZXRTaXplID0gSU1BR0VfQkFDS0VORF9UQVJHRVRfU0laRVxuICAgICAgY2FudmFzLndpZHRoID0gdGFyZ2V0U2l6ZVxuICAgICAgY2FudmFzLmhlaWdodCA9IHRhcmdldFNpemVcblxuICAgICAgaWYgKGlzTmVhclNxdWFyZUFzcGVjdFJhdGlvKG9yaWdpbmFsV2lkdGgsIG9yaWdpbmFsSGVpZ2h0KSkge1xuICAgICAgICBjdHguZHJhd0ltYWdlKGltZywgMCwgMCwgdGFyZ2V0U2l6ZSwgdGFyZ2V0U2l6ZSlcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IHsgZHJhd1dpZHRoLCBkcmF3SGVpZ2h0LCBkcmF3WCwgZHJhd1kgfSA9IGNvbXB1dGVDb250YWluRHJhd1JlY3QoYXNwZWN0UmF0aW8sIHRhcmdldFNpemUpXG5cbiAgICAgICAgY3R4LmZpbGxTdHlsZSA9ICcjZjJmMmYyJ1xuICAgICAgICBjdHguZmlsbFJlY3QoMCwgMCwgdGFyZ2V0U2l6ZSwgdGFyZ2V0U2l6ZSlcbiAgICAgICAgY3R4LmRyYXdJbWFnZShpbWcsIGRyYXdYLCBkcmF3WSwgZHJhd1dpZHRoLCBkcmF3SGVpZ2h0KVxuICAgICAgfVxuXG4gICAgICAvLyBDb252ZXJ0aXIgY2FudmFzIGEgYmxvYiB5IGx1ZWdvIGEgRmlsZVxuICAgICAgY2FudmFzLnRvQmxvYihcbiAgICAgICAgYmxvYiA9PiB7XG4gICAgICAgICAgaWYgKCFibG9iKSB7XG4gICAgICAgICAgICByZWplY3QobmV3IEVycm9yKCdFcnJvciBhbCBwcm9jZXNhciBsYSBpbWFnZW4nKSlcbiAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIENyZWFyIG51ZXZvIEZpbGUgY29uIGVsIG1pc21vIG5vbWJyZSB5IHRpcG9cbiAgICAgICAgICBjb25zdCBwcm9jZXNzZWRGaWxlID0gbmV3IEZpbGUoW2Jsb2JdLCBmaWxlLm5hbWUsIHtcbiAgICAgICAgICAgIHR5cGU6IGZpbGUudHlwZSxcbiAgICAgICAgICAgIGxhc3RNb2RpZmllZDogZmlsZS5sYXN0TW9kaWZpZWQsXG4gICAgICAgICAgfSlcblxuICAgICAgICAgIHJlc29sdmUocHJvY2Vzc2VkRmlsZSlcbiAgICAgICAgfSxcbiAgICAgICAgZmlsZS50eXBlLFxuICAgICAgICAwLjlcbiAgICAgICkgLy8gQ2FsaWRhZCBkZWwgOTAlXG4gICAgfVxuXG4gICAgaW1nLm9uZXJyb3IgPSAoKSA9PiB7XG4gICAgICByZWplY3QobmV3IEVycm9yKCdFcnJvciBhbCBjYXJnYXIgbGEgaW1hZ2VuJykpXG4gICAgfVxuXG4gICAgaW1nLnNyYyA9IFVSTC5jcmVhdGVPYmplY3RVUkwoZmlsZSlcbiAgfSlcbn1cblxuLyoqXG4gKiBEZXRlcm1pbmEgc2kgdW5hIGltYWdlbiBuZWNlc2l0YSBwcmUtcHJvY2VzYW1pZW50b1xuICogU29sbyBwcm9jZXNhbW9zIGltw6FnZW5lcyBxdWUgbm8gc2VhbiBjdWFkcmFkYXMgKHF1ZSBuZWNlc2l0ZW4gb2JqZWN0LWZpdDogY29udGFpbilcbiAqL1xuZXhwb3J0IGNvbnN0IHNob3VsZFByZXByb2Nlc3NJbWFnZSA9IChmaWxlOiBGaWxlKTogUHJvbWlzZTxib29sZWFuPiA9PiB7XG4gIHJldHVybiBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHtcbiAgICBjb25zdCBpbWcgPSBuZXcgSW1hZ2UoKVxuXG4gICAgaW1nLm9ubG9hZCA9ICgpID0+IHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IHsgd2lkdGgsIGhlaWdodCB9ID0gaW1nXG4gICAgICAgIHJlc29sdmUoIWlzTmVhclNxdWFyZUFzcGVjdFJhdGlvKHdpZHRoLCBoZWlnaHQpKVxuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgYW5hbGl6YW5kbyBpbWFnZW46JywgZXJyb3IpXG4gICAgICAgIHJlc29sdmUoZmFsc2UpXG4gICAgICB9XG4gICAgfVxuXG4gICAgaW1nLm9uZXJyb3IgPSAoKSA9PiB7XG4gICAgICAvLyBFcnJvciBjYXJnYW5kbyBpbWFnZW4gcGFyYSBhbsOhbGlzaXNcbiAgICAgIHJlc29sdmUoZmFsc2UpXG4gICAgfVxuXG4gICAgaW1nLnNyYyA9IFVSTC5jcmVhdGVPYmplY3RVUkwoZmlsZSlcbiAgfSlcbn1cbiJdLCJtYXBwaW5ncyI6IkFBQUEsU0FDRUEsc0JBQXNCLEVBQ3RCQyxtQkFBbUIsRUFDbkJDLHlCQUF5QixFQUN6QkMsdUJBQXVCLFFBQ2xCLDZCQUE2Qjs7QUFFcEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU8sSUFBTUMseUJBQXlCLEdBQUcsU0FBNUJBLHlCQUF5QkEsQ0FBSUMsSUFBVSxFQUFvQjtFQUN0RSxPQUFPLElBQUlDLE9BQU8sQ0FBQyxVQUFDQyxPQUFPLEVBQUVDLE1BQU0sRUFBSztJQUN0QyxJQUFNQyxHQUFHLEdBQUcsSUFBSUMsS0FBSyxDQUFDLENBQUM7SUFDdkIsSUFBTUMsTUFBTSxHQUFHQyxRQUFRLENBQUNDLGFBQWEsQ0FBQyxRQUFRLENBQUM7SUFDL0MsSUFBTUMsR0FBRyxHQUFHSCxNQUFNLENBQUNJLFVBQVUsQ0FBQyxJQUFJLENBQUM7SUFFbkMsSUFBSSxDQUFDRCxHQUFHLEVBQUU7TUFDUk4sTUFBTSxDQUFDLElBQUlRLEtBQUssQ0FBQywyQ0FBMkMsQ0FBQyxDQUFDO01BQzlEO0lBQ0Y7SUFFQVAsR0FBRyxDQUFDUSxNQUFNLEdBQUcsWUFBTTtNQUNqQixJQUFlQyxhQUFhLEdBQTZCVCxHQUFHLENBQXBEVSxLQUFLO1FBQXlCQyxjQUFjLEdBQUtYLEdBQUcsQ0FBOUJZLE1BQU07TUFDcEMsSUFBTUMsV0FBVyxHQUFHckIsbUJBQW1CLENBQUNpQixhQUFhLEVBQUVFLGNBQWMsQ0FBQztNQUN0RSxJQUFNRyxVQUFVLEdBQUdyQix5QkFBeUI7TUFDNUNTLE1BQU0sQ0FBQ1EsS0FBSyxHQUFHSSxVQUFVO01BQ3pCWixNQUFNLENBQUNVLE1BQU0sR0FBR0UsVUFBVTtNQUUxQixJQUFJcEIsdUJBQXVCLENBQUNlLGFBQWEsRUFBRUUsY0FBYyxDQUFDLEVBQUU7UUFDMUROLEdBQUcsQ0FBQ1UsU0FBUyxDQUFDZixHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRWMsVUFBVSxFQUFFQSxVQUFVLENBQUM7TUFDbEQsQ0FBQyxNQUFNO1FBQ0wsSUFBQUUscUJBQUEsR0FBZ0R6QixzQkFBc0IsQ0FBQ3NCLFdBQVcsRUFBRUMsVUFBVSxDQUFDO1VBQXZGRyxTQUFTLEdBQUFELHFCQUFBLENBQVRDLFNBQVM7VUFBRUMsVUFBVSxHQUFBRixxQkFBQSxDQUFWRSxVQUFVO1VBQUVDLEtBQUssR0FBQUgscUJBQUEsQ0FBTEcsS0FBSztVQUFFQyxLQUFLLEdBQUFKLHFCQUFBLENBQUxJLEtBQUs7UUFFM0NmLEdBQUcsQ0FBQ2dCLFNBQVMsR0FBRyxTQUFTO1FBQ3pCaEIsR0FBRyxDQUFDaUIsUUFBUSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUVSLFVBQVUsRUFBRUEsVUFBVSxDQUFDO1FBQzFDVCxHQUFHLENBQUNVLFNBQVMsQ0FBQ2YsR0FBRyxFQUFFbUIsS0FBSyxFQUFFQyxLQUFLLEVBQUVILFNBQVMsRUFBRUMsVUFBVSxDQUFDO01BQ3pEOztNQUVBO01BQ0FoQixNQUFNLENBQUNxQixNQUFNLENBQ1gsVUFBQUMsSUFBSSxFQUFJO1FBQ04sSUFBSSxDQUFDQSxJQUFJLEVBQUU7VUFDVHpCLE1BQU0sQ0FBQyxJQUFJUSxLQUFLLENBQUMsNkJBQTZCLENBQUMsQ0FBQztVQUNoRDtRQUNGOztRQUVBO1FBQ0EsSUFBTWtCLGFBQWEsR0FBRyxJQUFJQyxJQUFJLENBQUMsQ0FBQ0YsSUFBSSxDQUFDLEVBQUU1QixJQUFJLENBQUMrQixJQUFJLEVBQUU7VUFDaERDLElBQUksRUFBRWhDLElBQUksQ0FBQ2dDLElBQUk7VUFDZkMsWUFBWSxFQUFFakMsSUFBSSxDQUFDaUM7UUFDckIsQ0FBQyxDQUFDO1FBRUYvQixPQUFPLENBQUMyQixhQUFhLENBQUM7TUFDeEIsQ0FBQyxFQUNEN0IsSUFBSSxDQUFDZ0MsSUFBSSxFQUNULEdBQ0YsQ0FBQyxFQUFDO0lBQ0osQ0FBQztJQUVENUIsR0FBRyxDQUFDOEIsT0FBTyxHQUFHLFlBQU07TUFDbEIvQixNQUFNLENBQUMsSUFBSVEsS0FBSyxDQUFDLDJCQUEyQixDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVEUCxHQUFHLENBQUMrQixHQUFHLEdBQUdDLEdBQUcsQ0FBQ0MsZUFBZSxDQUFDckMsSUFBSSxDQUFDO0VBQ3JDLENBQUMsQ0FBQztBQUNKLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPLElBQU1zQyxxQkFBcUIsR0FBRyxTQUF4QkEscUJBQXFCQSxDQUFJdEMsSUFBVSxFQUF1QjtFQUNyRSxPQUFPLElBQUlDLE9BQU8sQ0FBQyxVQUFBQyxPQUFPLEVBQUk7SUFDNUIsSUFBTUUsR0FBRyxHQUFHLElBQUlDLEtBQUssQ0FBQyxDQUFDO0lBRXZCRCxHQUFHLENBQUNRLE1BQU0sR0FBRyxZQUFNO01BQ2pCLElBQUk7UUFDRixJQUFRRSxLQUFLLEdBQWFWLEdBQUcsQ0FBckJVLEtBQUs7VUFBRUUsTUFBTSxHQUFLWixHQUFHLENBQWRZLE1BQU07UUFDckJkLE9BQU8sQ0FBQyxDQUFDSix1QkFBdUIsQ0FBQ2dCLEtBQUssRUFBRUUsTUFBTSxDQUFDLENBQUM7TUFDbEQsQ0FBQyxDQUFDLE9BQU91QixLQUFLLEVBQUU7UUFDZEMsT0FBTyxDQUFDRCxLQUFLLENBQUMsMEJBQTBCLEVBQUVBLEtBQUssQ0FBQztRQUNoRHJDLE9BQU8sQ0FBQyxLQUFLLENBQUM7TUFDaEI7SUFDRixDQUFDO0lBRURFLEdBQUcsQ0FBQzhCLE9BQU8sR0FBRyxZQUFNO01BQ2xCO01BQ0FoQyxPQUFPLENBQUMsS0FBSyxDQUFDO0lBQ2hCLENBQUM7SUFFREUsR0FBRyxDQUFDK0IsR0FBRyxHQUFHQyxHQUFHLENBQUNDLGVBQWUsQ0FBQ3JDLElBQUksQ0FBQztFQUNyQyxDQUFDLENBQUM7QUFDSixDQUFDIiwiaWdub3JlTGlzdCI6W119
94
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjb21wdXRlQ29udGFpbkRyYXdSZWN0IiwiZ2V0SW1hZ2VBc3BlY3RSYXRpbyIsIklNQUdFX0JBQ0tFTkRfVEFSR0VUX1NJWkUiLCJpc05lYXJTcXVhcmVBc3BlY3RSYXRpbyIsInByZXByb2Nlc3NJbWFnZUZvckJhY2tlbmQiLCJmaWxlIiwiUHJvbWlzZSIsInJlc29sdmUiLCJyZWplY3QiLCJpbWciLCJJbWFnZSIsImNhbnZhcyIsImRvY3VtZW50IiwiY3JlYXRlRWxlbWVudCIsImN0eCIsImdldENvbnRleHQiLCJFcnJvciIsIm9iamVjdFVybCIsIlVSTCIsImNyZWF0ZU9iamVjdFVSTCIsIm9ubG9hZCIsInJldm9rZU9iamVjdFVSTCIsIm9yaWdpbmFsV2lkdGgiLCJ3aWR0aCIsIm9yaWdpbmFsSGVpZ2h0IiwiaGVpZ2h0IiwiYXNwZWN0UmF0aW8iLCJ0YXJnZXRTaXplIiwiZHJhd0ltYWdlIiwiX2NvbXB1dGVDb250YWluRHJhd1JlIiwiZHJhd1dpZHRoIiwiZHJhd0hlaWdodCIsImRyYXdYIiwiZHJhd1kiLCJmaWxsU3R5bGUiLCJmaWxsUmVjdCIsInRvQmxvYiIsImJsb2IiLCJwcm9jZXNzZWRGaWxlIiwiRmlsZSIsIm5hbWUiLCJ0eXBlIiwibGFzdE1vZGlmaWVkIiwib25lcnJvciIsInNyYyIsInNob3VsZFByZXByb2Nlc3NJbWFnZSIsImVycm9yIiwiY29uc29sZSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9pbWFnZVByZXByb2Nlc3Nvci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBjb21wdXRlQ29udGFpbkRyYXdSZWN0LFxuICBnZXRJbWFnZUFzcGVjdFJhdGlvLFxuICBJTUFHRV9CQUNLRU5EX1RBUkdFVF9TSVpFLFxuICBpc05lYXJTcXVhcmVBc3BlY3RSYXRpbyxcbn0gZnJvbSAnLi9pbWFnZVByZXByb2Nlc3Nvci5oZWxwZXJzJ1xuXG4vKipcbiAqIFByZS1wcm9jZXNhIGltw6FnZW5lcyBwYXJhIGVsIGJhY2tlbmRcbiAqIC0gSW3DoWdlbmVzIGN1YWRyYWRhczogdXNhIG9iamVjdC1maXQ6IGNvdmVyIChzaW4gcGFkZGluZylcbiAqIC0gSW3DoWdlbmVzIHJlY3Rhbmd1bGFyZXM6IHVzYSBvYmplY3QtZml0OiBjb250YWluIChjb24gcGFkZGluZylcbiAqL1xuZXhwb3J0IGNvbnN0IHByZXByb2Nlc3NJbWFnZUZvckJhY2tlbmQgPSAoZmlsZTogRmlsZSk6IFByb21pc2U8RmlsZT4gPT4ge1xuICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgIGNvbnN0IGltZyA9IG5ldyBJbWFnZSgpXG4gICAgY29uc3QgY2FudmFzID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJylcbiAgICBjb25zdCBjdHggPSBjYW52YXMuZ2V0Q29udGV4dCgnMmQnKVxuXG4gICAgaWYgKCFjdHgpIHtcbiAgICAgIHJlamVjdChuZXcgRXJyb3IoJ05vIHNlIHB1ZG8gb2J0ZW5lciBlbCBjb250ZXh0byBkZWwgY2FudmFzJykpXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICAvLyBGYWxzbyBwb3NpdGl2bzogc2UgcmV2b2NhIGVuIG9ubG9hZC9vbmVycm9yXG4gICAgLy8gcmVhY3QtZG9jdG9yLWRpc2FibGUtbmV4dC1saW5lIHJlYWN0LWRvY3Rvci9uby1jcmVhdGUtb2JqZWN0LXVybC13aXRob3V0LXJldm9rZVxuICAgIGNvbnN0IG9iamVjdFVybCA9IFVSTC5jcmVhdGVPYmplY3RVUkwoZmlsZSlcblxuICAgIGltZy5vbmxvYWQgPSAoKSA9PiB7XG4gICAgICBVUkwucmV2b2tlT2JqZWN0VVJMKG9iamVjdFVybClcbiAgICAgIGNvbnN0IHsgd2lkdGg6IG9yaWdpbmFsV2lkdGgsIGhlaWdodDogb3JpZ2luYWxIZWlnaHQgfSA9IGltZ1xuICAgICAgY29uc3QgYXNwZWN0UmF0aW8gPSBnZXRJbWFnZUFzcGVjdFJhdGlvKG9yaWdpbmFsV2lkdGgsIG9yaWdpbmFsSGVpZ2h0KVxuICAgICAgY29uc3QgdGFyZ2V0U2l6ZSA9IElNQUdFX0JBQ0tFTkRfVEFSR0VUX1NJWkVcbiAgICAgIGNhbnZhcy53aWR0aCA9IHRhcmdldFNpemVcbiAgICAgIGNhbnZhcy5oZWlnaHQgPSB0YXJnZXRTaXplXG5cbiAgICAgIGlmIChpc05lYXJTcXVhcmVBc3BlY3RSYXRpbyhvcmlnaW5hbFdpZHRoLCBvcmlnaW5hbEhlaWdodCkpIHtcbiAgICAgICAgY3R4LmRyYXdJbWFnZShpbWcsIDAsIDAsIHRhcmdldFNpemUsIHRhcmdldFNpemUpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCB7IGRyYXdXaWR0aCwgZHJhd0hlaWdodCwgZHJhd1gsIGRyYXdZIH0gPSBjb21wdXRlQ29udGFpbkRyYXdSZWN0KGFzcGVjdFJhdGlvLCB0YXJnZXRTaXplKVxuXG4gICAgICAgIGN0eC5maWxsU3R5bGUgPSAnI2YyZjJmMidcbiAgICAgICAgY3R4LmZpbGxSZWN0KDAsIDAsIHRhcmdldFNpemUsIHRhcmdldFNpemUpXG4gICAgICAgIGN0eC5kcmF3SW1hZ2UoaW1nLCBkcmF3WCwgZHJhd1ksIGRyYXdXaWR0aCwgZHJhd0hlaWdodClcbiAgICAgIH1cblxuICAgICAgLy8gQ29udmVydGlyIGNhbnZhcyBhIGJsb2IgeSBsdWVnbyBhIEZpbGVcbiAgICAgIGNhbnZhcy50b0Jsb2IoXG4gICAgICAgIGJsb2IgPT4ge1xuICAgICAgICAgIGlmICghYmxvYikge1xuICAgICAgICAgICAgcmVqZWN0KG5ldyBFcnJvcignRXJyb3IgYWwgcHJvY2VzYXIgbGEgaW1hZ2VuJykpXG4gICAgICAgICAgICByZXR1cm5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBDcmVhciBudWV2byBGaWxlIGNvbiBlbCBtaXNtbyBub21icmUgeSB0aXBvXG4gICAgICAgICAgY29uc3QgcHJvY2Vzc2VkRmlsZSA9IG5ldyBGaWxlKFtibG9iXSwgZmlsZS5uYW1lLCB7XG4gICAgICAgICAgICB0eXBlOiBmaWxlLnR5cGUsXG4gICAgICAgICAgICBsYXN0TW9kaWZpZWQ6IGZpbGUubGFzdE1vZGlmaWVkLFxuICAgICAgICAgIH0pXG5cbiAgICAgICAgICByZXNvbHZlKHByb2Nlc3NlZEZpbGUpXG4gICAgICAgIH0sXG4gICAgICAgIGZpbGUudHlwZSxcbiAgICAgICAgMC45XG4gICAgICApIC8vIENhbGlkYWQgZGVsIDkwJVxuICAgIH1cblxuICAgIGltZy5vbmVycm9yID0gKCkgPT4ge1xuICAgICAgVVJMLnJldm9rZU9iamVjdFVSTChvYmplY3RVcmwpXG4gICAgICByZWplY3QobmV3IEVycm9yKCdFcnJvciBhbCBjYXJnYXIgbGEgaW1hZ2VuJykpXG4gICAgfVxuXG4gICAgaW1nLnNyYyA9IG9iamVjdFVybFxuICB9KVxufVxuXG4vKipcbiAqIERldGVybWluYSBzaSB1bmEgaW1hZ2VuIG5lY2VzaXRhIHByZS1wcm9jZXNhbWllbnRvXG4gKiBTb2xvIHByb2Nlc2Ftb3MgaW3DoWdlbmVzIHF1ZSBubyBzZWFuIGN1YWRyYWRhcyAocXVlIG5lY2VzaXRlbiBvYmplY3QtZml0OiBjb250YWluKVxuICovXG5leHBvcnQgY29uc3Qgc2hvdWxkUHJlcHJvY2Vzc0ltYWdlID0gKGZpbGU6IEZpbGUpOiBQcm9taXNlPGJvb2xlYW4+ID0+IHtcbiAgcmV0dXJuIG5ldyBQcm9taXNlKHJlc29sdmUgPT4ge1xuICAgIGNvbnN0IGltZyA9IG5ldyBJbWFnZSgpXG4gICAgLy8gRmFsc28gcG9zaXRpdm86IHNlIHJldm9jYSBlbiBvbmxvYWQvb25lcnJvclxuICAgIC8vIHJlYWN0LWRvY3Rvci1kaXNhYmxlLW5leHQtbGluZSByZWFjdC1kb2N0b3Ivbm8tY3JlYXRlLW9iamVjdC11cmwtd2l0aG91dC1yZXZva2VcbiAgICBjb25zdCBvYmplY3RVcmwgPSBVUkwuY3JlYXRlT2JqZWN0VVJMKGZpbGUpXG5cbiAgICBpbWcub25sb2FkID0gKCkgPT4ge1xuICAgICAgVVJMLnJldm9rZU9iamVjdFVSTChvYmplY3RVcmwpXG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCB7IHdpZHRoLCBoZWlnaHQgfSA9IGltZ1xuICAgICAgICByZXNvbHZlKCFpc05lYXJTcXVhcmVBc3BlY3RSYXRpbyh3aWR0aCwgaGVpZ2h0KSlcbiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGFuYWxpemFuZG8gaW1hZ2VuOicsIGVycm9yKVxuICAgICAgICByZXNvbHZlKGZhbHNlKVxuICAgICAgfVxuICAgIH1cblxuICAgIGltZy5vbmVycm9yID0gKCkgPT4ge1xuICAgICAgVVJMLnJldm9rZU9iamVjdFVSTChvYmplY3RVcmwpXG4gICAgICAvLyBFcnJvciBjYXJnYW5kbyBpbWFnZW4gcGFyYSBhbsOhbGlzaXNcbiAgICAgIHJlc29sdmUoZmFsc2UpXG4gICAgfVxuXG4gICAgaW1nLnNyYyA9IG9iamVjdFVybFxuICB9KVxufVxuIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUNFQSxzQkFBc0IsRUFDdEJDLG1CQUFtQixFQUNuQkMseUJBQXlCLEVBQ3pCQyx1QkFBdUIsUUFDbEIsNkJBQTZCOztBQUVwQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTyxJQUFNQyx5QkFBeUIsR0FBRyxTQUE1QkEseUJBQXlCQSxDQUFJQyxJQUFVLEVBQW9CO0VBQ3RFLE9BQU8sSUFBSUMsT0FBTyxDQUFDLFVBQUNDLE9BQU8sRUFBRUMsTUFBTSxFQUFLO0lBQ3RDLElBQU1DLEdBQUcsR0FBRyxJQUFJQyxLQUFLLENBQUMsQ0FBQztJQUN2QixJQUFNQyxNQUFNLEdBQUdDLFFBQVEsQ0FBQ0MsYUFBYSxDQUFDLFFBQVEsQ0FBQztJQUMvQyxJQUFNQyxHQUFHLEdBQUdILE1BQU0sQ0FBQ0ksVUFBVSxDQUFDLElBQUksQ0FBQztJQUVuQyxJQUFJLENBQUNELEdBQUcsRUFBRTtNQUNSTixNQUFNLENBQUMsSUFBSVEsS0FBSyxDQUFDLDJDQUEyQyxDQUFDLENBQUM7TUFDOUQ7SUFDRjs7SUFFQTtJQUNBO0lBQ0EsSUFBTUMsU0FBUyxHQUFHQyxHQUFH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
@@ -13,9 +13,9 @@ export var navigateContextEntity = function navigateContextEntity(type, id) {
13
13
  return;
14
14
  }
15
15
  var path = type === 'project' ? "/projects/".concat(id, "/dashboard") : "/clients/".concat(id);
16
- window.open("".concat(window.location.origin).concat(path), '_blank');
16
+ window.open("".concat(window.location.origin).concat(path), '_blank', 'noopener');
17
17
  };
18
18
  export var canNavigateContextEntity = function canNavigateContextEntity(type, id) {
19
19
  return Boolean(type && id != null && isNavigableContextType(type));
20
20
  };
21
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJvcGVuVGFza0luQ29yUGFuZWwiLCJpc05hdmlnYWJsZUNvbnRleHRUeXBlIiwidHlwZSIsIm5hdmlnYXRlQ29udGV4dEVudGl0eSIsImlkIiwicGF0aCIsImNvbmNhdCIsIndpbmRvdyIsIm9wZW4iLCJsb2NhdGlvbiIsIm9yaWdpbiIsImNhbk5hdmlnYXRlQ29udGV4dEVudGl0eSIsIkJvb2xlYW4iXSwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvbmF2aWdhdGVDb250ZXh0RW50aXR5LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ29udGV4dEVudGl0eVR5cGUgfSBmcm9tICcuLi90eXBlcy9jb250ZXh0TWVudGlvbidcbmltcG9ydCB7IG9wZW5UYXNrSW5Db3JQYW5lbCB9IGZyb20gJy4vb3BlblRhc2tJbkNvclBhbmVsJ1xuXG5jb25zdCBpc05hdmlnYWJsZUNvbnRleHRUeXBlID0gKHR5cGU6IENvbnRleHRFbnRpdHlUeXBlKTogdHlwZSBpcyAndGFzaycgfCAncHJvamVjdCcgfCAnY2xpZW50JyA9PlxuICB0eXBlID09PSAndGFzaycgfHwgdHlwZSA9PT0gJ3Byb2plY3QnIHx8IHR5cGUgPT09ICdjbGllbnQnXG5cbi8qKiBNaXNtYSBuYXZlZ2FjacOzbiBxdWUgbG9zIGNoaXBzIGRlIG1lbnRpb24gZW4gbWVuc2FqZXMgZW52aWFkb3MuICovXG5leHBvcnQgY29uc3QgbmF2aWdhdGVDb250ZXh0RW50aXR5ID0gKHR5cGU6IENvbnRleHRFbnRpdHlUeXBlLCBpZDogc3RyaW5nIHwgbnVtYmVyKTogdm9pZCA9PiB7XG4gIGlmICghaXNOYXZpZ2FibGVDb250ZXh0VHlwZSh0eXBlKSkge1xuICAgIHJldHVyblxuICB9XG5cbiAgaWYgKHR5cGUgPT09ICd0YXNrJykge1xuICAgIG9wZW5UYXNrSW5Db3JQYW5lbChpZCwgJ2RldGFpbCcpXG4gICAgcmV0dXJuXG4gIH1cblxuICBjb25zdCBwYXRoID0gdHlwZSA9PT0gJ3Byb2plY3QnID8gYC9wcm9qZWN0cy8ke2lkfS9kYXNoYm9hcmRgIDogYC9jbGllbnRzLyR7aWR9YFxuICB3aW5kb3cub3BlbihgJHt3aW5kb3cubG9jYXRpb24ub3JpZ2lufSR7cGF0aH1gLCAnX2JsYW5rJylcbn1cblxuZXhwb3J0IGNvbnN0IGNhbk5hdmlnYXRlQ29udGV4dEVudGl0eSA9IChcbiAgdHlwZTogQ29udGV4dEVudGl0eVR5cGUgfCB1bmRlZmluZWQsXG4gIGlkOiBzdHJpbmcgfCBudW1iZXIgfCB1bmRlZmluZWQgfCBudWxsXG4pOiBpZCBpcyBzdHJpbmcgfCBudW1iZXIgPT4gQm9vbGVhbih0eXBlICYmIGlkICE9IG51bGwgJiYgaXNOYXZpZ2FibGVDb250ZXh0VHlwZSh0eXBlKSlcbiJdLCJtYXBwaW5ncyI6IkFBQ0EsU0FBU0Esa0JBQWtCLFFBQVEsc0JBQXNCO0FBRXpELElBQU1DLHNCQUFzQixHQUFHLFNBQXpCQSxzQkFBc0JBLENBQUlDLElBQXVCO0VBQUEsT0FDckRBLElBQUksS0FBSyxNQUFNLElBQUlBLElBQUksS0FBSyxTQUFTLElBQUlBLElBQUksS0FBSyxRQUFRO0FBQUE7O0FBRTVEO0FBQ0EsT0FBTyxJQUFNQyxxQkFBcUIsR0FBRyxTQUF4QkEscUJBQXFCQSxDQUFJRCxJQUF1QixFQUFFRSxFQUFtQixFQUFXO0VBQzNGLElBQUksQ0FBQ0gsc0JBQXNCLENBQUNDLElBQUksQ0FBQyxFQUFFO0lBQ2pDO0VBQ0Y7RUFFQSxJQUFJQSxJQUFJLEtBQUssTUFBTSxFQUFFO0lBQ25CRixrQkFBa0IsQ0FBQ0ksRUFBRSxFQUFFLFFBQVEsQ0FBQztJQUNoQztFQUNGO0VBRUEsSUFBTUMsSUFBSSxHQUFHSCxJQUFJLEtBQUssU0FBUyxnQkFBQUksTUFBQSxDQUFnQkYsRUFBRSw4QkFBQUUsTUFBQSxDQUEyQkYsRUFBRSxDQUFFO0VBQ2hGRyxNQUFNLENBQUNDLElBQUksSUFBQUYsTUFBQSxDQUFJQyxNQUFNLENBQUNFLFFBQVEsQ0FBQ0MsTUFBTSxFQUFBSixNQUFBLENBQUdELElBQUksR0FBSSxRQUFRLENBQUM7QUFDM0QsQ0FBQztBQUVELE9BQU8sSUFBTU0sd0JBQXdCLEdBQUcsU0FBM0JBLHdCQUF3QkEsQ0FDbkNULElBQW1DLEVBQ25DRSxFQUFzQztFQUFBLE9BQ1pRLE9BQU8sQ0FBQ1YsSUFBSSxJQUFJRSxFQUFFLElBQUksSUFBSSxJQUFJSCxzQkFBc0IsQ0FBQ0MsSUFBSSxDQUFDLENBQUM7QUFBQSIsImlnbm9yZUxpc3QiOltdfQ==
21
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJvcGVuVGFza0luQ29yUGFuZWwiLCJpc05hdmlnYWJsZUNvbnRleHRUeXBlIiwidHlwZSIsIm5hdmlnYXRlQ29udGV4dEVudGl0eSIsImlkIiwicGF0aCIsImNvbmNhdCIsIndpbmRvdyIsIm9wZW4iLCJsb2NhdGlvbiIsIm9yaWdpbiIsImNhbk5hdmlnYXRlQ29udGV4dEVudGl0eSIsIkJvb2xlYW4iXSwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvbmF2aWdhdGVDb250ZXh0RW50aXR5LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ29udGV4dEVudGl0eVR5cGUgfSBmcm9tICcuLi90eXBlcy9jb250ZXh0TWVudGlvbidcbmltcG9ydCB7IG9wZW5UYXNrSW5Db3JQYW5lbCB9IGZyb20gJy4vb3BlblRhc2tJbkNvclBhbmVsJ1xuXG5jb25zdCBpc05hdmlnYWJsZUNvbnRleHRUeXBlID0gKHR5cGU6IENvbnRleHRFbnRpdHlUeXBlKTogdHlwZSBpcyAndGFzaycgfCAncHJvamVjdCcgfCAnY2xpZW50JyA9PlxuICB0eXBlID09PSAndGFzaycgfHwgdHlwZSA9PT0gJ3Byb2plY3QnIHx8IHR5cGUgPT09ICdjbGllbnQnXG5cbi8qKiBNaXNtYSBuYXZlZ2FjacOzbiBxdWUgbG9zIGNoaXBzIGRlIG1lbnRpb24gZW4gbWVuc2FqZXMgZW52aWFkb3MuICovXG5leHBvcnQgY29uc3QgbmF2aWdhdGVDb250ZXh0RW50aXR5ID0gKHR5cGU6IENvbnRleHRFbnRpdHlUeXBlLCBpZDogc3RyaW5nIHwgbnVtYmVyKTogdm9pZCA9PiB7XG4gIGlmICghaXNOYXZpZ2FibGVDb250ZXh0VHlwZSh0eXBlKSkge1xuICAgIHJldHVyblxuICB9XG5cbiAgaWYgKHR5cGUgPT09ICd0YXNrJykge1xuICAgIG9wZW5UYXNrSW5Db3JQYW5lbChpZCwgJ2RldGFpbCcpXG4gICAgcmV0dXJuXG4gIH1cblxuICBjb25zdCBwYXRoID0gdHlwZSA9PT0gJ3Byb2plY3QnID8gYC9wcm9qZWN0cy8ke2lkfS9kYXNoYm9hcmRgIDogYC9jbGllbnRzLyR7aWR9YFxuICB3aW5kb3cub3BlbihgJHt3aW5kb3cubG9jYXRpb24ub3JpZ2lufSR7cGF0aH1gLCAnX2JsYW5rJywgJ25vb3BlbmVyJylcbn1cblxuZXhwb3J0IGNvbnN0IGNhbk5hdmlnYXRlQ29udGV4dEVudGl0eSA9IChcbiAgdHlwZTogQ29udGV4dEVudGl0eVR5cGUgfCB1bmRlZmluZWQsXG4gIGlkOiBzdHJpbmcgfCBudW1iZXIgfCB1bmRlZmluZWQgfCBudWxsXG4pOiBpZCBpcyBzdHJpbmcgfCBudW1iZXIgPT4gQm9vbGVhbih0eXBlICYmIGlkICE9IG51bGwgJiYgaXNOYXZpZ2FibGVDb250ZXh0VHlwZSh0eXBlKSlcbiJdLCJtYXBwaW5ncyI6IkFBQ0EsU0FBU0Esa0JBQWtCLFFBQVEsc0JBQXNCO0FBRXpELElBQU1DLHNCQUFzQixHQUFHLFNBQXpCQSxzQkFBc0JBLENBQUlDLElBQXVCO0VBQUEsT0FDckRBLElBQUksS0FBSyxNQUFNLElBQUlBLElBQUksS0FBSyxTQUFTLElBQUlBLElBQUksS0FBSyxRQUFRO0FBQUE7O0FBRTVEO0FBQ0EsT0FBTyxJQUFNQyxxQkFBcUIsR0FBRyxTQUF4QkEscUJBQXFCQSxDQUFJRCxJQUF1QixFQUFFRSxFQUFtQixFQUFXO0VBQzNGLElBQUksQ0FBQ0gsc0JBQXNCLENBQUNDLElBQUksQ0FBQyxFQUFFO0lBQ2pDO0VBQ0Y7RUFFQSxJQUFJQSxJQUFJLEtBQUssTUFBTSxFQUFFO0lBQ25CRixrQkFBa0IsQ0FBQ0ksRUFBRSxFQUFFLFFBQVEsQ0FBQztJQUNoQztFQUNGO0VBRUEsSUFBTUMsSUFBSSxHQUFHSCxJQUFJLEtBQUssU0FBUyxnQkFBQUksTUFBQSxDQUFnQkYsRUFBRSw4QkFBQUUsTUFBQSxDQUEyQkYsRUFBRSxDQUFFO0VBQ2hGRyxNQUFNLENBQUNDLElBQUksSUFBQUYsTUFBQSxDQUFJQyxNQUFNLENBQUNFLFFBQVEsQ0FBQ0MsTUFBTSxFQUFBSixNQUFBLENBQUdELElBQUksR0FBSSxRQUFRLEVBQUUsVUFBVSxDQUFDO0FBQ3ZFLENBQUM7QUFFRCxPQUFPLElBQU1NLHdCQUF3QixHQUFHLFNBQTNCQSx3QkFBd0JBLENBQ25DVCxJQUFtQyxFQUNuQ0UsRUFBc0M7RUFBQSxPQUNaUSxPQUFPLENBQUNWLElBQUksSUFBSUUsRUFBRSxJQUFJLElBQUksSUFBSUgsc0JBQXNCLENBQUNDLElBQUksQ0FBQyxDQUFDO0FBQUEiLCJpZ25vcmVMaXN0IjpbXX0=
@@ -35,11 +35,11 @@ describe('navigateContextEntity', function () {
35
35
  });
36
36
  it('opens project dashboard in a new tab', function () {
37
37
  navigateContextEntity('project', 'p-1');
38
- expect(openMock).toHaveBeenCalledWith('https://app.cor.test/projects/p-1/dashboard', '_blank');
38
+ expect(openMock).toHaveBeenCalledWith('https://app.cor.test/projects/p-1/dashboard', '_blank', 'noopener');
39
39
  });
40
40
  it('opens client page in a new tab', function () {
41
41
  navigateContextEntity('client', 99);
42
- expect(openMock).toHaveBeenCalledWith('https://app.cor.test/clients/99', '_blank');
42
+ expect(openMock).toHaveBeenCalledWith('https://app.cor.test/clients/99', '_blank', 'noopener');
43
43
  });
44
44
  it('ignores non-navigable entity types', function () {
45
45
  navigateContextEntity('user', 1);
@@ -47,4 +47,4 @@ describe('navigateContextEntity', function () {
47
47
  expect(openMock).not.toHaveBeenCalled();
48
48
  });
49
49
  });
50
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJuYXZpZ2F0ZUNvbnRleHRFbnRpdHkiLCJvcGVuVGFza0luQ29yUGFuZWwiLCJqZXN0IiwibW9jayIsImZuIiwiZGVzY3JpYmUiLCJvcGVuTW9jayIsIm9yaWdpbmFsT3BlbiIsIndpbmRvdyIsIm9wZW4iLCJvcmlnaW5hbE9yaWdpbiIsImxvY2F0aW9uIiwib3JpZ2luIiwiYmVmb3JlRWFjaCIsImNsZWFyQWxsTW9ja3MiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsInZhbHVlIiwid3JpdGFibGUiLCJhZnRlckVhY2giLCJpdCIsImV4cGVjdCIsInRvSGF2ZUJlZW5DYWxsZWRXaXRoIiwibm90IiwidG9IYXZlQmVlbkNhbGxlZCJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9uYXZpZ2F0ZUNvbnRleHRFbnRpdHkuc3BlYy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBuYXZpZ2F0ZUNvbnRleHRFbnRpdHkgfSBmcm9tICcuL25hdmlnYXRlQ29udGV4dEVudGl0eSdcbmltcG9ydCB7IG9wZW5UYXNrSW5Db3JQYW5lbCB9IGZyb20gJy4vb3BlblRhc2tJbkNvclBhbmVsJ1xuXG5qZXN0Lm1vY2soJy4vb3BlblRhc2tJbkNvclBhbmVsJywgKCkgPT4gKHtcbiAgb3BlblRhc2tJbkNvclBhbmVsOiBqZXN0LmZuKCksXG59KSlcblxuZGVzY3JpYmUoJ25hdmlnYXRlQ29udGV4dEVudGl0eScsICgpID0+IHtcbiAgY29uc3Qgb3Blbk1vY2sgPSBqZXN0LmZuKClcbiAgY29uc3Qgb3JpZ2luYWxPcGVuID0gd2luZG93Lm9wZW5cbiAgY29uc3Qgb3JpZ2luYWxPcmlnaW4gPSB3aW5kb3cubG9jYXRpb24ub3JpZ2luXG5cbiAgYmVmb3JlRWFjaCgoKSA9PiB7XG4gICAgamVzdC5jbGVhckFsbE1vY2tzKClcbiAgICB3aW5kb3cub3BlbiA9IG9wZW5Nb2NrXG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHdpbmRvdywgJ2xvY2F0aW9uJywge1xuICAgICAgdmFsdWU6IHsgb3JpZ2luOiAnaHR0cHM6Ly9hcHAuY29yLnRlc3QnIH0sXG4gICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICB9KVxuICB9KVxuXG4gIGFmdGVyRWFjaCgoKSA9PiB7XG4gICAgd2luZG93Lm9wZW4gPSBvcmlnaW5hbE9wZW5cbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkod2luZG93LCAnbG9jYXRpb24nLCB7XG4gICAgICB2YWx1ZTogeyBvcmlnaW46IG9yaWdpbmFsT3JpZ2luIH0sXG4gICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICB9KVxuICB9KVxuXG4gIGl0KCdvcGVucyB0aGUgdGFzayBwYW5lbCBmb3IgdGFzayBjb250ZXh0JywgKCkgPT4ge1xuICAgIG5hdmlnYXRlQ29udGV4dEVudGl0eSgndGFzaycsIDQyKVxuXG4gICAgZXhwZWN0KG9wZW5UYXNrSW5Db3JQYW5lbCkudG9IYXZlQmVlbkNhbGxlZFdpdGgoNDIsICdkZXRhaWwnKVxuICAgIGV4cGVjdChvcGVuTW9jaykubm90LnRvSGF2ZUJlZW5DYWxsZWQoKVxuICB9KVxuXG4gIGl0KCdvcGVucyBwcm9qZWN0IGRhc2hib2FyZCBpbiBhIG5ldyB0YWInLCAoKSA9PiB7XG4gICAgbmF2aWdhdGVDb250ZXh0RW50aXR5KCdwcm9qZWN0JywgJ3AtMScpXG5cbiAgICBleHBlY3Qob3Blbk1vY2spLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKCdodHRwczovL2FwcC5jb3IudGVzdC9wcm9qZWN0cy9wLTEvZGFzaGJvYXJkJywgJ19ibGFuaycpXG4gIH0pXG5cbiAgaXQoJ29wZW5zIGNsaWVudCBwYWdlIGluIGEgbmV3IHRhYicsICgpID0+IHtcbiAgICBuYXZpZ2F0ZUNvbnRleHRFbnRpdHkoJ2NsaWVudCcsIDk5KVxuXG4gICAgZXhwZWN0KG9wZW5Nb2NrKS50b0hhdmVCZWVuQ2FsbGVkV2l0aCgnaHR0cHM6Ly9hcHAuY29yLnRlc3QvY2xpZW50cy85OScsICdfYmxhbmsnKVxuICB9KVxuXG4gIGl0KCdpZ25vcmVzIG5vbi1uYXZpZ2FibGUgZW50aXR5IHR5cGVzJywgKCkgPT4ge1xuICAgIG5hdmlnYXRlQ29udGV4dEVudGl0eSgndXNlcicsIDEpXG5cbiAgICBleHBlY3Qob3BlblRhc2tJbkNvclBhbmVsKS5ub3QudG9IYXZlQmVlbkNhbGxlZCgpXG4gICAgZXhwZWN0KG9wZW5Nb2NrKS5ub3QudG9IYXZlQmVlbkNhbGxlZCgpXG4gIH0pXG59KVxuIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUFTQSxxQkFBcUIsUUFBUSx5QkFBeUI7QUFDL0QsU0FBU0Msa0JBQWtCLFFBQVEsc0JBQXNCO0FBRXpEQyxJQUFJLENBQUNDLElBQUksQ0FBQyxzQkFBc0IsRUFBRTtFQUFBLE9BQU87SUFDdkNGLGtCQUFrQixFQUFFQyxJQUFJLENBQUNFLEVBQUUsQ0FBQztFQUM5QixDQUFDO0FBQUEsQ0FBQyxDQUFDO0FBRUhDLFFBQVEsQ0FBQyx1QkFBdUIsRUFBRSxZQUFNO0VBQ3RDLElBQU1DLFFBQVEsR0FBR0osSUFBSSxDQUFDRSxFQUFFLENBQUMsQ0FBQztFQUMxQixJQUFNRyxZQUFZLEdBQUdDLE1BQU0sQ0FBQ0MsSUFBSTtFQUNoQyxJQUFNQyxjQUFjLEdBQUdGLE1BQU0sQ0FBQ0csUUFBUSxDQUFDQyxNQUFNO0VBRTdDQyxVQUFVLENBQUMsWUFBTTtJQUNmWCxJQUFJLENBQUNZLGFBQWEsQ0FBQyxDQUFDO0lBQ3BCTixNQUFNLENBQUNDLElBQUksR0FBR0gsUUFBUTtJQUN0QlMsTUFBTSxDQUFDQyxjQUFjLENBQUNSLE1BQU0sRUFBRSxVQUFVLEVBQUU7TUFDeENTLEtBQUssRUFBRTtRQUFFTCxNQUFNLEVBQUU7TUFBdUIsQ0FBQztNQUN6Q00sUUFBUSxFQUFFO0lBQ1osQ0FBQyxDQUFDO0VBQ0osQ0FBQyxDQUFDO0VBRUZDLFNBQVMsQ0FBQyxZQUFNO0lBQ2RYLE1BQU0sQ0FBQ0MsSUFBSSxHQUFHRixZQUFZO0lBQzFCUSxNQUFNLENBQUNDLGNBQWMsQ0FBQ1IsTUFBTSxFQUFFLFVBQVUsRUFBRTtNQUN4Q1MsS0FBSyxFQUFFO1FBQUVMLE1BQU0sRUFBRUY7TUFBZSxDQUFDO01BQ2pDUSxRQUFRLEVBQUU7SUFDWixDQUFDLENBQUM7RUFDSixDQUFDLENBQUM7RUFFRkUsRUFBRSxDQUFDLHVDQUF1QyxFQUFFLFlBQU07SUFDaERwQixxQkFBcUIsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDO0lBRWpDcUIsTUFBTSxDQUFDcEIsa0JBQWtCLENBQUMsQ0FBQ3FCLG9CQUFvQixDQUFDLEVBQUUsRUFBRSxRQUFRLENBQUM7SUFDN0RELE1BQU0sQ0FBQ2YsUUFBUSxDQUFDLENBQUNpQixHQUFHLENBQUNDLGdCQUFnQixDQUFDLENBQUM7RUFDekMsQ0FBQyxDQUFDO0VBRUZKLEVBQUUsQ0FBQyxzQ0FBc0MsRUFBRSxZQUFNO0lBQy9DcEIscUJBQXFCLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQztJQUV2Q3FCLE1BQU0sQ0FBQ2YsUUFBUSxDQUFDLENBQUNnQixvQkFBb0IsQ0FBQyw2Q0FBNkMsRUFBRSxRQUFRLENBQUM7RUFDaEcsQ0FBQyxDQUFDO0VBRUZGLEVBQUUsQ0FBQyxnQ0FBZ0MsRUFBRSxZQUFNO0lBQ3pDcEIscUJBQXFCLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQztJQUVuQ3FCLE1BQU0sQ0FBQ2YsUUFBUSxDQUFDLENBQUNnQixvQkFBb0IsQ0FBQyxpQ0FBaUMsRUFBRSxRQUFRLENBQUM7RUFDcEYsQ0FBQyxDQUFDO0VBRUZGLEVBQUUsQ0FBQyxvQ0FBb0MsRUFBRSxZQUFNO0lBQzdDcEIscUJBQXFCLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUVoQ3FCLE1BQU0sQ0FBQ3BCLGtCQUFrQixDQUFDLENBQUNzQixHQUFHLENBQUNDLGdCQUFnQixDQUFDLENBQUM7SUFDakRILE1BQU0sQ0FBQ2YsUUFBUSxDQUFDLENBQUNpQixHQUFHLENBQUNDLGdCQUFnQixDQUFDLENBQUM7RUFDekMsQ0FBQyxDQUFDO0FBQ0osQ0FBQyxDQUFDIiwiaWdub3JlTGlzdCI6W119
50
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJuYXZpZ2F0ZUNvbnRleHRFbnRpdHkiLCJvcGVuVGFza0luQ29yUGFuZWwiLCJqZXN0IiwibW9jayIsImZuIiwiZGVzY3JpYmUiLCJvcGVuTW9jayIsIm9yaWdpbmFsT3BlbiIsIndpbmRvdyIsIm9wZW4iLCJvcmlnaW5hbE9yaWdpbiIsImxvY2F0aW9uIiwib3JpZ2luIiwiYmVmb3JlRWFjaCIsImNsZWFyQWxsTW9ja3MiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsInZhbHVlIiwid3JpdGFibGUiLCJhZnRlckVhY2giLCJpdCIsImV4cGVjdCIsInRvSGF2ZUJlZW5DYWxsZWRXaXRoIiwibm90IiwidG9IYXZlQmVlbkNhbGxlZCJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9uYXZpZ2F0ZUNvbnRleHRFbnRpdHkuc3BlYy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBuYXZpZ2F0ZUNvbnRleHRFbnRpdHkgfSBmcm9tICcuL25hdmlnYXRlQ29udGV4dEVudGl0eSdcbmltcG9ydCB7IG9wZW5UYXNrSW5Db3JQYW5lbCB9IGZyb20gJy4vb3BlblRhc2tJbkNvclBhbmVsJ1xuXG5qZXN0Lm1vY2soJy4vb3BlblRhc2tJbkNvclBhbmVsJywgKCkgPT4gKHtcbiAgb3BlblRhc2tJbkNvclBhbmVsOiBqZXN0LmZuKCksXG59KSlcblxuZGVzY3JpYmUoJ25hdmlnYXRlQ29udGV4dEVudGl0eScsICgpID0+IHtcbiAgY29uc3Qgb3Blbk1vY2sgPSBqZXN0LmZuKClcbiAgY29uc3Qgb3JpZ2luYWxPcGVuID0gd2luZG93Lm9wZW5cbiAgY29uc3Qgb3JpZ2luYWxPcmlnaW4gPSB3aW5kb3cubG9jYXRpb24ub3JpZ2luXG5cbiAgYmVmb3JlRWFjaCgoKSA9PiB7XG4gICAgamVzdC5jbGVhckFsbE1vY2tzKClcbiAgICB3aW5kb3cub3BlbiA9IG9wZW5Nb2NrXG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHdpbmRvdywgJ2xvY2F0aW9uJywge1xuICAgICAgdmFsdWU6IHsgb3JpZ2luOiAnaHR0cHM6Ly9hcHAuY29yLnRlc3QnIH0sXG4gICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICB9KVxuICB9KVxuXG4gIGFmdGVyRWFjaCgoKSA9PiB7XG4gICAgd2luZG93Lm9wZW4gPSBvcmlnaW5hbE9wZW5cbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkod2luZG93LCAnbG9jYXRpb24nLCB7XG4gICAgICB2YWx1ZTogeyBvcmlnaW46IG9yaWdpbmFsT3JpZ2luIH0sXG4gICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICB9KVxuICB9KVxuXG4gIGl0KCdvcGVucyB0aGUgdGFzayBwYW5lbCBmb3IgdGFzayBjb250ZXh0JywgKCkgPT4ge1xuICAgIG5hdmlnYXRlQ29udGV4dEVudGl0eSgndGFzaycsIDQyKVxuXG4gICAgZXhwZWN0KG9wZW5UYXNrSW5Db3JQYW5lbCkudG9IYXZlQmVlbkNhbGxlZFdpdGgoNDIsICdkZXRhaWwnKVxuICAgIGV4cGVjdChvcGVuTW9jaykubm90LnRvSGF2ZUJlZW5DYWxsZWQoKVxuICB9KVxuXG4gIGl0KCdvcGVucyBwcm9qZWN0IGRhc2hib2FyZCBpbiBhIG5ldyB0YWInLCAoKSA9PiB7XG4gICAgbmF2aWdhdGVDb250ZXh0RW50aXR5KCdwcm9qZWN0JywgJ3AtMScpXG5cbiAgICBleHBlY3Qob3Blbk1vY2spLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKCdodHRwczovL2FwcC5jb3IudGVzdC9wcm9qZWN0cy9wLTEvZGFzaGJvYXJkJywgJ19ibGFuaycsICdub29wZW5lcicpXG4gIH0pXG5cbiAgaXQoJ29wZW5zIGNsaWVudCBwYWdlIGluIGEgbmV3IHRhYicsICgpID0+IHtcbiAgICBuYXZpZ2F0ZUNvbnRleHRFbnRpdHkoJ2NsaWVudCcsIDk5KVxuXG4gICAgZXhwZWN0KG9wZW5Nb2NrKS50b0hhdmVCZWVuQ2FsbGVkV2l0aCgnaHR0cHM6Ly9hcHAuY29yLnRlc3QvY2xpZW50cy85OScsICdfYmxhbmsnLCAnbm9vcGVuZXInKVxuICB9KVxuXG4gIGl0KCdpZ25vcmVzIG5vbi1uYXZpZ2FibGUgZW50aXR5IHR5cGVzJywgKCkgPT4ge1xuICAgIG5hdmlnYXRlQ29udGV4dEVudGl0eSgndXNlcicsIDEpXG5cbiAgICBleHBlY3Qob3BlblRhc2tJbkNvclBhbmVsKS5ub3QudG9IYXZlQmVlbkNhbGxlZCgpXG4gICAgZXhwZWN0KG9wZW5Nb2NrKS5ub3QudG9IYXZlQmVlbkNhbGxlZCgpXG4gIH0pXG59KVxuIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUFTQSxxQkFBcUIsUUFBUSx5QkFBeUI7QUFDL0QsU0FBU0Msa0JBQWtCLFFBQVEsc0JBQXNCO0FBRXpEQyxJQUFJLENBQUNDLElBQUksQ0FBQyxzQkFBc0IsRUFBRTtFQUFBLE9BQU87SUFDdkNGLGtCQUFrQixFQUFFQyxJQUFJLENBQUNFLEVBQUUsQ0FBQztFQUM5QixDQUFDO0FBQUEsQ0FBQyxDQUFDO0FBRUhDLFFBQVEsQ0FBQyx1QkFBdUIsRUFBRSxZQUFNO0VBQ3RDLElBQU1DLFFBQVEsR0FBR0osSUFBSSxDQUFDRSxFQUFFLENBQUMsQ0FBQztFQUMxQixJQUFNRyxZQUFZLEdBQUdDLE1BQU0sQ0FBQ0MsSUFBSTtFQUNoQyxJQUFNQyxjQUFjLEdBQUdGLE1BQU0sQ0FBQ0csUUFBUSxDQUFDQyxNQUFNO0VBRTdDQyxVQUFVLENBQUMsWUFBTTtJQUNmWCxJQUFJLENBQUNZLGFBQWEsQ0FBQyxDQUFDO0lBQ3BCTixNQUFNLENBQUNDLElBQUksR0FBR0gsUUFBUTtJQUN0QlMsTUFBTSxDQUFDQyxjQUFjLENBQUNSLE1BQU0sRUFBRSxVQUFVLEVBQUU7TUFDeENTLEtBQUssRUFBRTtRQUFFTCxNQUFNLEVBQUU7TUFBdUIsQ0FBQztNQUN6Q00sUUFBUSxFQUFFO0lBQ1osQ0FBQyxDQUFDO0VBQ0osQ0FBQyxDQUFDO0VBRUZDLFNBQVMsQ0FBQyxZQUFNO0lBQ2RYLE1BQU0sQ0FBQ0MsSUFBSSxHQUFHRixZQUFZO0lBQzFCUSxNQUFNLENBQUNDLGNBQWMsQ0FBQ1IsTUFBTSxFQUFFLFVBQVUsRUFBRTtNQUN4Q1MsS0FBSyxFQUFFO1FBQUVMLE1BQU0sRUFBRUY7TUFBZSxDQUFDO01BQ2pDUSxRQUFRLEVBQUU7SUFDWixDQUFDLENBQUM7RUFDSixDQUFDLENBQUM7RUFFRkUsRUFBRSxDQUFDLHVDQUF1QyxFQUFFLFlBQU07SUFDaERwQixxQkFBcUIsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDO0lBRWpDcUIsTUFBTSxDQUFDcEIsa0JBQWtCLENBQUMsQ0FBQ3FCLG9CQUFvQixDQUFDLEVBQUUsRUFBRSxRQUFRLENBQUM7SUFDN0RELE1BQU0sQ0FBQ2YsUUFBUSxDQUFDLENBQUNpQixHQUFHLENBQUNDLGdCQUFnQixDQUFDLENBQUM7RUFDekMsQ0FBQyxDQUFDO0VBRUZKLEVBQUUsQ0FBQyxzQ0FBc0MsRUFBRSxZQUFNO0lBQy9DcEIscUJBQXFCLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQztJQUV2Q3FCLE1BQU0sQ0FBQ2YsUUFBUSxDQUFDLENBQUNnQixvQkFBb0IsQ0FBQyw2Q0FBNkMsRUFBRSxRQUFRLEVBQUUsVUFBVSxDQUFDO0VBQzVHLENBQUMsQ0FBQztFQUVGRixFQUFFLENBQUMsZ0NBQWdDLEVBQUUsWUFBTTtJQUN6Q3BCLHFCQUFxQixDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUM7SUFFbkNxQixNQUFNLENBQUNmLFFBQVEsQ0FBQyxDQUFDZ0Isb0JBQW9CLENBQUMsaUNBQWlDLEVBQUUsUUFBUSxFQUFFLFVBQVUsQ0FBQztFQUNoRyxDQUFDLENBQUM7RUFFRkYsRUFBRSxDQUFDLG9DQUFvQyxFQUFFLFlBQU07SUFDN0NwQixxQkFBcUIsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBRWhDcUIsTUFBTSxDQUFDcEIsa0JBQWtCLENBQUMsQ0FBQ3NCLEdBQUcsQ0FBQ0MsZ0JBQWdCLENBQUMsQ0FBQztJQUNqREgsTUFBTSxDQUFDZixRQUFRLENBQUMsQ0FBQ2lCLEdBQUcsQ0FBQ0MsZ0JBQWdCLENBQUMsQ0FBQztFQUN6QyxDQUFDLENBQUM7QUFDSixDQUFDLENBQUMiLCJpZ25vcmVMaXN0IjpbXX0=
@@ -16,7 +16,7 @@ export var openTaskInCorPanel = function openTaskInCorPanel(taskId) {
16
16
  window.dispatchEvent(new PopStateEvent('popstate'));
17
17
  }
18
18
  } else {
19
- window.open("".concat(window.location.origin).concat(newPathname), '_blank');
19
+ window.open("".concat(window.location.origin).concat(newPathname), '_blank', 'noopener');
20
20
  }
21
21
  };
22
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJTRUNUSU9OUyIsIm9wZW5UYXNrSW5Db3JQYW5lbCIsInRhc2tJZCIsInRhYlNlZ21lbnQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJ1bmRlZmluZWQiLCJuZXdQYXRobmFtZSIsImNvbmNhdCIsIndpbmRvdyIsIm9wZW5QYW5lbCIsInBhbmVsQWxyZWFkeU9wZW4iLCJCb29sZWFuIiwidGFza1BhbmVsIiwiaGlzdG9yeSIsInJlcGxhY2VTdGF0ZSIsImxvY2F0aW9uIiwic2VhcmNoIiwiY2hhdEFJIiwiZGlzcGF0Y2hFdmVudCIsIlBvcFN0YXRlRXZlbnQiLCJvcGVuIiwib3JpZ2luIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL29wZW5UYXNrSW5Db3JQYW5lbC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBuby1yZXN0cmljdGVkLWdsb2JhbHMgKi9cbmltcG9ydCB7IFNFQ1RJT05TIH0gZnJvbSAnLi4vY29uc3RhbnRzL2NvbmZpZydcblxuLyoqXG4gKiBBYnJlIGxhIHRhcmVhIGVuIGVsIHBhbmVsL21vZGFsIGRlIENPUiAobWlzbW8gZmx1am8gcXVlIGB1c2VUYXNrUGFuZWxgIC8gZW5sYWNlcyBkZSB0YXJlYSBlbiBjaGF0KS5cbiAqIFNpIGB3aW5kb3cub3BlblBhbmVsYCBubyBleGlzdGUsIGNhZSBhIG51ZXZhIHBlc3Rhw7FhLlxuICovXG5leHBvcnQgY29uc3Qgb3BlblRhc2tJbkNvclBhbmVsID0gKHRhc2tJZDogc3RyaW5nIHwgbnVtYmVyLCB0YWJTZWdtZW50OiBzdHJpbmcgPSAnZGV0YWlsJyk6IHZvaWQgPT4ge1xuICBjb25zdCBuZXdQYXRobmFtZSA9IGAvdGFza3MvJHt0YXNrSWR9LyR7dGFiU2VnbWVudH1gXG5cbiAgaWYgKCdvcGVuUGFuZWwnIGluIHdpbmRvdyAmJiB0eXBlb2Ygd2luZG93Lm9wZW5QYW5lbCA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIGNvbnN0IHBhbmVsQWxyZWFkeU9wZW4gPSBCb29sZWFuKHdpbmRvdy50YXNrUGFuZWwpXG4gICAgaGlzdG9yeS5yZXBsYWNlU3RhdGUoJycsICcnLCBgJHtuZXdQYXRobmFtZX0ke3dpbmRvdy5sb2NhdGlvbi5zZWFyY2h9YClcbiAgICB3aW5kb3cub3BlblBhbmVsKHRhc2tJZCwgU0VDVElPTlMuY2hhdEFJKVxuICAgIGlmIChwYW5lbEFscmVhZHlPcGVuKSB7XG4gICAgICB3aW5kb3cuZGlzcGF0Y2hFdmVudChuZXcgUG9wU3RhdGVFdmVudCgncG9wc3RhdGUnKSlcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgd2luZG93Lm9wZW4oYCR7d2luZG93LmxvY2F0aW9uLm9yaWdpbn0ke25ld1BhdGhuYW1lfWAsICdfYmxhbmsnKVxuICB9XG59XG4iXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0EsU0FBU0EsUUFBUSxRQUFRLHFCQUFxQjs7QUFFOUM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPLElBQU1DLGtCQUFrQixHQUFHLFNBQXJCQSxrQkFBa0JBLENBQUlDLE1BQXVCLEVBQTBDO0VBQUEsSUFBeENDLFVBQWtCLEdBQUFDLFNBQUEsQ0FBQUMsTUFBQSxRQUFBRCxTQUFBLFFBQUFFLFNBQUEsR0FBQUYsU0FBQSxNQUFHLFFBQVE7RUFDdkYsSUFBTUcsV0FBVyxhQUFBQyxNQUFBLENBQWFOLE1BQU0sT0FBQU0sTUFBQSxDQUFJTCxVQUFVLENBQUU7RUFFcEQsSUFBSSxXQUFXLElBQUlNLE1BQU0sSUFBSSxPQUFPQSxNQUFNLENBQUNDLFNBQVMsS0FBSyxVQUFVLEVBQUU7SUFDbkUsSUFBTUMsZ0JBQWdCLEdBQUdDLE9BQU8sQ0FBQ0gsTUFBTSxDQUFDSSxTQUFTLENBQUM7SUFDbERDLE9BQU8sQ0FBQ0MsWUFBWSxDQUFDLEVBQUUsRUFBRSxFQUFFLEtBQUFQLE1BQUEsQ0FBS0QsV0FBVyxFQUFBQyxNQUFBLENBQUdDLE1BQU0sQ0FBQ08sUUFBUSxDQUFDQyxNQUFNLENBQUUsQ0FBQztJQUN2RVIsTUFBTSxDQUFDQyxTQUFTLENBQUNSLE1BQU0sRUFBRUYsUUFBUSxDQUFDa0IsTUFBTSxDQUFDO0lBQ3pDLElBQUlQLGdCQUFnQixFQUFFO01BQ3BCRixNQUFNLENBQUNVLGFBQWEsQ0FBQyxJQUFJQyxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDckQ7RUFDRixDQUFDLE1BQU07SUFDTFgsTUFBTSxDQUFDWSxJQUFJLElBQUFiLE1BQUEsQ0FBSUMsTUFBTSxDQUFDTyxRQUFRLENBQUNNLE1BQU0sRUFBQWQsTUFBQSxDQUFHRCxXQUFXLEdBQUksUUFBUSxDQUFDO0VBQ2xFO0FBQ0YsQ0FBQyIsImlnbm9yZUxpc3QiOltdfQ==
22
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJTRUNUSU9OUyIsIm9wZW5UYXNrSW5Db3JQYW5lbCIsInRhc2tJZCIsInRhYlNlZ21lbnQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJ1bmRlZmluZWQiLCJuZXdQYXRobmFtZSIsImNvbmNhdCIsIndpbmRvdyIsIm9wZW5QYW5lbCIsInBhbmVsQWxyZWFkeU9wZW4iLCJCb29sZWFuIiwidGFza1BhbmVsIiwiaGlzdG9yeSIsInJlcGxhY2VTdGF0ZSIsImxvY2F0aW9uIiwic2VhcmNoIiwiY2hhdEFJIiwiZGlzcGF0Y2hFdmVudCIsIlBvcFN0YXRlRXZlbnQiLCJvcGVuIiwib3JpZ2luIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL29wZW5UYXNrSW5Db3JQYW5lbC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBuby1yZXN0cmljdGVkLWdsb2JhbHMgKi9cbmltcG9ydCB7IFNFQ1RJT05TIH0gZnJvbSAnLi4vY29uc3RhbnRzL2NvbmZpZydcblxuLyoqXG4gKiBBYnJlIGxhIHRhcmVhIGVuIGVsIHBhbmVsL21vZGFsIGRlIENPUiAobWlzbW8gZmx1am8gcXVlIGB1c2VUYXNrUGFuZWxgIC8gZW5sYWNlcyBkZSB0YXJlYSBlbiBjaGF0KS5cbiAqIFNpIGB3aW5kb3cub3BlblBhbmVsYCBubyBleGlzdGUsIGNhZSBhIG51ZXZhIHBlc3Rhw7FhLlxuICovXG5leHBvcnQgY29uc3Qgb3BlblRhc2tJbkNvclBhbmVsID0gKHRhc2tJZDogc3RyaW5nIHwgbnVtYmVyLCB0YWJTZWdtZW50OiBzdHJpbmcgPSAnZGV0YWlsJyk6IHZvaWQgPT4ge1xuICBjb25zdCBuZXdQYXRobmFtZSA9IGAvdGFza3MvJHt0YXNrSWR9LyR7dGFiU2VnbWVudH1gXG5cbiAgaWYgKCdvcGVuUGFuZWwnIGluIHdpbmRvdyAmJiB0eXBlb2Ygd2luZG93Lm9wZW5QYW5lbCA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIGNvbnN0IHBhbmVsQWxyZWFkeU9wZW4gPSBCb29sZWFuKHdpbmRvdy50YXNrUGFuZWwpXG4gICAgaGlzdG9yeS5yZXBsYWNlU3RhdGUoJycsICcnLCBgJHtuZXdQYXRobmFtZX0ke3dpbmRvdy5sb2NhdGlvbi5zZWFyY2h9YClcbiAgICB3aW5kb3cub3BlblBhbmVsKHRhc2tJZCwgU0VDVElPTlMuY2hhdEFJKVxuICAgIGlmIChwYW5lbEFscmVhZHlPcGVuKSB7XG4gICAgICB3aW5kb3cuZGlzcGF0Y2hFdmVudChuZXcgUG9wU3RhdGVFdmVudCgncG9wc3RhdGUnKSlcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgd2luZG93Lm9wZW4oYCR7d2luZG93LmxvY2F0aW9uLm9yaWdpbn0ke25ld1BhdGhuYW1lfWAsICdfYmxhbmsnLCAnbm9vcGVuZXInKVxuICB9XG59XG4iXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0EsU0FBU0EsUUFBUSxRQUFRLHFCQUFxQjs7QUFFOUM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPLElBQU1DLGtCQUFrQixHQUFHLFNBQXJCQSxrQkFBa0JBLENBQUlDLE1BQXVCLEVBQTBDO0VBQUEsSUFBeENDLFVBQWtCLEdBQUFDLFNBQUEsQ0FBQUMsTUFBQSxRQUFBRCxTQUFBLFFBQUFFLFNBQUEsR0FBQUYsU0FBQSxNQUFHLFFBQVE7RUFDdkYsSUFBTUcsV0FBVyxhQUFBQyxNQUFBLENBQWFOLE1BQU0sT0FBQU0sTUFBQSxDQUFJTCxVQUFVLENBQUU7RUFFcEQsSUFBSSxXQUFXLElBQUlNLE1BQU0sSUFBSSxPQUFPQSxNQUFNLENBQUNDLFNBQVMsS0FBSyxVQUFVLEVBQUU7SUFDbkUsSUFBTUMsZ0JBQWdCLEdBQUdDLE9BQU8sQ0FBQ0gsTUFBTSxDQUFDSSxTQUFTLENBQUM7SUFDbERDLE9BQU8sQ0FBQ0MsWUFBWSxDQUFDLEVBQUUsRUFBRSxFQUFFLEtBQUFQLE1BQUEsQ0FBS0QsV0FBVyxFQUFBQyxNQUFBLENBQUdDLE1BQU0sQ0FBQ08sUUFBUSxDQUFDQyxNQUFNLENBQUUsQ0FBQztJQUN2RVIsTUFBTSxDQUFDQyxTQUFTLENBQUNSLE1BQU0sRUFBRUYsUUFBUSxDQUFDa0IsTUFBTSxDQUFDO0lBQ3pDLElBQUlQLGdCQUFnQixFQUFFO01BQ3BCRixNQUFNLENBQUNVLGFBQWEsQ0FBQyxJQUFJQyxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDckQ7RUFDRixDQUFDLE1BQU07SUFDTFgsTUFBTSxDQUFDWSxJQUFJLElBQUFiLE1BQUEsQ0FBSUMsTUFBTSxDQUFDTyxRQUFRLENBQUNNLE1BQU0sRUFBQWQsTUFBQSxDQUFHRCxXQUFXLEdBQUksUUFBUSxFQUFFLFVBQVUsQ0FBQztFQUM5RTtBQUNGLENBQUMiLCJpZ25vcmVMaXN0IjpbXX0=
@@ -37,7 +37,7 @@ describe('openTaskInCorPanel', function () {
37
37
  delete window.openPanel;
38
38
  window.open = jest.fn();
39
39
  openTaskInCorPanel(99, 'detail');
40
- expect(window.open).toHaveBeenCalledWith("".concat(window.location.origin, "/tasks/99/detail"), '_blank');
40
+ expect(window.open).toHaveBeenCalledWith("".concat(window.location.origin, "/tasks/99/detail"), '_blank', 'noopener');
41
41
  });
42
42
  });
43
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJTRUNUSU9OUyIsIm9wZW5UYXNrSW5Db3JQYW5lbCIsImRlc2NyaWJlIiwib3JpZ2luYWxPcGVuIiwid2luZG93Iiwib3BlbiIsIm9yaWdpbmFsT3BlblBhbmVsIiwib3BlblBhbmVsIiwib3JpZ2luYWxUYXNrUGFuZWwiLCJ0YXNrUGFuZWwiLCJyZXBsYWNlU3RhdGVTcHkiLCJqZXN0Iiwic3B5T24iLCJoaXN0b3J5IiwiYmVmb3JlRWFjaCIsIm1vY2tDbGVhciIsImFmdGVyRWFjaCIsIml0IiwiZm4iLCJ1bmRlZmluZWQiLCJleHBlY3QiLCJ0b0hhdmVCZWVuQ2FsbGVkV2l0aCIsInN0cmluZ0NvbnRhaW5pbmciLCJjaGF0QUkiLCJwb3BzdGF0ZUxpc3RlbmVyIiwiaWQiLCJhZGRFdmVudExpc3RlbmVyIiwidG9IYXZlQmVlbkNhbGxlZCIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJjb25jYXQiLCJsb2NhdGlvbiIsIm9yaWdpbiJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9vcGVuVGFza0luQ29yUGFuZWwuc3BlYy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTRUNUSU9OUyB9IGZyb20gJy4uL2NvbnN0YW50cy9jb25maWcnXG5pbXBvcnQgeyBvcGVuVGFza0luQ29yUGFuZWwgfSBmcm9tICcuL29wZW5UYXNrSW5Db3JQYW5lbCdcblxuZGVzY3JpYmUoJ29wZW5UYXNrSW5Db3JQYW5lbCcsICgpID0+IHtcbiAgY29uc3Qgb3JpZ2luYWxPcGVuID0gd2luZG93Lm9wZW5cbiAgY29uc3Qgb3JpZ2luYWxPcGVuUGFuZWwgPSB3aW5kb3cub3BlblBhbmVsXG4gIGNvbnN0IG9yaWdpbmFsVGFza1BhbmVsID0gd2luZG93LnRhc2tQYW5lbFxuICBjb25zdCByZXBsYWNlU3RhdGVTcHkgPSBqZXN0LnNweU9uKHdpbmRvdy5oaXN0b3J5LCAncmVwbGFjZVN0YXRlJylcblxuICBiZWZvcmVFYWNoKCgpID0+IHtcbiAgICByZXBsYWNlU3RhdGVTcHkubW9ja0NsZWFyKClcbiAgfSlcblxuICBhZnRlckVhY2goKCkgPT4ge1xuICAgIHdpbmRvdy5vcGVuID0gb3JpZ2luYWxPcGVuXG4gICAgd2luZG93Lm9wZW5QYW5lbCA9IG9yaWdpbmFsT3BlblBhbmVsXG4gICAgd2luZG93LnRhc2tQYW5lbCA9IG9yaWdpbmFsVGFza1BhbmVsXG4gIH0pXG5cbiAgaXQoJ29wZW5zIHRoZSBDT1IgdGFzayBwYW5lbCB3aGVuIG9wZW5QYW5lbCBpcyBhdmFpbGFibGUnLCAoKSA9PiB7XG4gICAgY29uc3Qgb3BlblBhbmVsID0gamVzdC5mbigpXG4gICAgd2luZG93Lm9wZW5QYW5lbCA9IG9wZW5QYW5lbFxuICAgIHdpbmRvdy50YXNrUGFuZWwgPSB1bmRlZmluZWRcblxuICAgIG9wZW5UYXNrSW5Db3JQYW5lbCg0MiwgJ2hvdXJzJylcblxuICAgIGV4cGVjdChyZXBsYWNlU3RhdGVTcHkpLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKCcnLCAnJywgZXhwZWN0LnN0cmluZ0NvbnRhaW5pbmcoJy90YXNrcy80Mi9ob3VycycpKVxuICAgIGV4cGVjdChvcGVuUGFuZWwpLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKDQyLCBTRUNUSU9OUy5jaGF0QUkpXG4gIH0pXG5cbiAgaXQoJ2Rpc3BhdGNoZXMgcG9wc3RhdGUgd2hlbiB0aGUgcGFuZWwgd2FzIGFscmVhZHkgb3BlbicsICgpID0+IHtcbiAgICBjb25zdCBvcGVuUGFuZWwgPSBqZXN0LmZuKClcbiAgICBjb25zdCBwb3BzdGF0ZUxpc3RlbmVyID0gamVzdC5mbigpXG4gICAgd2luZG93Lm9wZW5QYW5lbCA9IG9wZW5QYW5lbFxuICAgIHdpbmRvdy50YXNrUGFuZWwgPSB7IGlkOiA0MiB9IGFzIG5ldmVyXG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3BvcHN0YXRlJywgcG9wc3RhdGVMaXN0ZW5lcilcblxuICAgIG9wZW5UYXNrSW5Db3JQYW5lbCg0MilcblxuICAgIGV4cGVjdChwb3BzdGF0ZUxpc3RlbmVyKS50b0hhdmVCZWVuQ2FsbGVkKClcbiAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigncG9wc3RhdGUnLCBwb3BzdGF0ZUxpc3RlbmVyKVxuICB9KVxuXG4gIGl0KCdmYWxscyBiYWNrIHRvIGEgbmV3IHRhYiB3aGVuIG9wZW5QYW5lbCBpcyBtaXNzaW5nJywgKCkgPT4ge1xuICAgIGRlbGV0ZSAod2luZG93IGFzIHsgb3BlblBhbmVsPzogdW5rbm93biB9KS5vcGVuUGFuZWxcbiAgICB3aW5kb3cub3BlbiA9IGplc3QuZm4oKVxuXG4gICAgb3BlblRhc2tJbkNvclBhbmVsKDk5LCAnZGV0YWlsJylcblxuICAgIGV4cGVjdCh3aW5kb3cub3BlbikudG9IYXZlQmVlbkNhbGxlZFdpdGgoYCR7d2luZG93LmxvY2F0aW9uLm9yaWdpbn0vdGFza3MvOTkvZGV0YWlsYCwgJ19ibGFuaycpXG4gIH0pXG59KVxuIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUFTQSxRQUFRLFFBQVEscUJBQXFCO0FBQzlDLFNBQVNDLGtCQUFrQixRQUFRLHNCQUFzQjtBQUV6REMsUUFBUSxDQUFDLG9CQUFvQixFQUFFLFlBQU07RUFDbkMsSUFBTUMsWUFBWSxHQUFHQyxNQUFNLENBQUNDLElBQUk7RUFDaEMsSUFBTUMsaUJBQWlCLEdBQUdGLE1BQU0sQ0FBQ0csU0FBUztFQUMxQyxJQUFNQyxpQkFBaUIsR0FBR0osTUFBTSxDQUFDSyxTQUFTO0VBQzFDLElBQU1DLGVBQWUsR0FBR0MsSUFBSSxDQUFDQyxLQUFLLENBQUNSLE1BQU0sQ0FBQ1MsT0FBTyxFQUFFLGNBQWMsQ0FBQztFQUVsRUMsVUFBVSxDQUFDLFlBQU07SUFDZkosZUFBZSxDQUFDSyxTQUFTLENBQUMsQ0FBQztFQUM3QixDQUFDLENBQUM7RUFFRkMsU0FBUyxDQUFDLFlBQU07SUFDZFosTUFBTSxDQUFDQyxJQUFJLEdBQUdGLFlBQVk7SUFDMUJDLE1BQU0sQ0FBQ0csU0FBUyxHQUFHRCxpQkFBaUI7SUFDcENGLE1BQU0sQ0FBQ0ssU0FBUyxHQUFHRCxpQkFBaUI7RUFDdEMsQ0FBQyxDQUFDO0VBRUZTLEVBQUUsQ0FBQyxzREFBc0QsRUFBRSxZQUFNO0lBQy9ELElBQU1WLFNBQVMsR0FBR0ksSUFBSSxDQUFDTyxFQUFFLENBQUMsQ0FBQztJQUMzQmQsTUFBTSxDQUFDRyxTQUFTLEdBQUdBLFNBQVM7SUFDNUJILE1BQU0sQ0FBQ0ssU0FBUyxHQUFHVSxTQUFTO0lBRTVCbEIsa0JBQWtCLENBQUMsRUFBRSxFQUFFLE9BQU8sQ0FBQztJQUUvQm1CLE1BQU0sQ0FBQ1YsZUFBZSxDQUFDLENBQUNXLG9CQUFvQixDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUVELE1BQU0sQ0FBQ0UsZ0JBQWdCLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUNoR0YsTUFBTSxDQUFDYixTQUFTLENBQUMsQ0FBQ2Msb0JBQW9CLENBQUMsRUFBRSxFQUFFckIsUUFBUSxDQUFDdUIsTUFBTSxDQUFDO0VBQzdELENBQUMsQ0FBQztFQUVGTixFQUFFLENBQUMscURBQXFELEVBQUUsWUFBTTtJQUM5RCxJQUFNVixTQUFTLEdBQUdJLElBQUksQ0FBQ08sRUFBRSxDQUFDLENBQUM7SUFDM0IsSUFBTU0sZ0JBQWdCLEdBQUdiLElBQUksQ0FBQ08sRUFBRSxDQUFDLENBQUM7SUFDbENkLE1BQU0sQ0FBQ0csU0FBUyxHQUFHQSxTQUFTO0lBQzVCSCxNQUFNLENBQUNLLFNBQVMsR0FBRztNQUFFZ0IsRUFBRSxFQUFFO0lBQUcsQ0FBVTtJQUN0Q3JCLE1BQU0sQ0FBQ3NCLGdCQUFnQixDQUFDLFVBQVUsRUFBRUYsZ0JBQWdCLENBQUM7SUFFckR2QixrQkFBa0IsQ0FBQyxFQUFFLENBQUM7SUFFdEJtQixNQUFNLENBQUNJLGdCQUFnQixDQUFDLENBQUNHLGdCQUFnQixDQUFDLENBQUM7SUFDM0N2QixNQUFNLENBQUN3QixtQkFBbUIsQ0FBQyxVQUFVLEVBQUVKLGdCQUFnQixDQUFDO0VBQzFELENBQUMsQ0FBQztFQUVGUCxFQUFFLENBQUMsbURBQW1ELEVBQUUsWUFBTTtJQUM1RCxPQUFRYixNQUFNLENBQTZCRyxTQUFTO0lBQ3BESCxNQUFNLENBQUNDLElBQUksR0FBR00sSUFBSSxDQUFDTyxFQUFFLENBQUMsQ0FBQztJQUV2QmpCLGtCQUFrQixDQUFDLEVBQUUsRUFBRSxRQUFRLENBQUM7SUFFaENtQixNQUFNLENBQUNoQixNQUFNLENBQUNDLElBQUksQ0FBQyxDQUFDZ0Isb0JBQW9CLElBQUFRLE1BQUEsQ0FBSXpCLE1BQU0sQ0FBQzBCLFFBQVEsQ0FBQ0MsTUFBTSx1QkFBb0IsUUFBUSxDQUFDO0VBQ2pHLENBQUMsQ0FBQztBQUNKLENBQUMsQ0FBQyIsImlnbm9yZUxpc3QiOltdfQ==
43
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJTRUNUSU9OUyIsIm9wZW5UYXNrSW5Db3JQYW5lbCIsImRlc2NyaWJlIiwib3JpZ2luYWxPcGVuIiwid2luZG93Iiwib3BlbiIsIm9yaWdpbmFsT3BlblBhbmVsIiwib3BlblBhbmVsIiwib3JpZ2luYWxUYXNrUGFuZWwiLCJ0YXNrUGFuZWwiLCJyZXBsYWNlU3RhdGVTcHkiLCJqZXN0Iiwic3B5T24iLCJoaXN0b3J5IiwiYmVmb3JlRWFjaCIsIm1vY2tDbGVhciIsImFmdGVyRWFjaCIsIml0IiwiZm4iLCJ1bmRlZmluZWQiLCJleHBlY3QiLCJ0b0hhdmVCZWVuQ2FsbGVkV2l0aCIsInN0cmluZ0NvbnRhaW5pbmciLCJjaGF0QUkiLCJwb3BzdGF0ZUxpc3RlbmVyIiwiaWQiLCJhZGRFdmVudExpc3RlbmVyIiwidG9IYXZlQmVlbkNhbGxlZCIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJjb25jYXQiLCJsb2NhdGlvbiIsIm9yaWdpbiJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9vcGVuVGFza0luQ29yUGFuZWwuc3BlYy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTRUNUSU9OUyB9IGZyb20gJy4uL2NvbnN0YW50cy9jb25maWcnXG5pbXBvcnQgeyBvcGVuVGFza0luQ29yUGFuZWwgfSBmcm9tICcuL29wZW5UYXNrSW5Db3JQYW5lbCdcblxuZGVzY3JpYmUoJ29wZW5UYXNrSW5Db3JQYW5lbCcsICgpID0+IHtcbiAgY29uc3Qgb3JpZ2luYWxPcGVuID0gd2luZG93Lm9wZW5cbiAgY29uc3Qgb3JpZ2luYWxPcGVuUGFuZWwgPSB3aW5kb3cub3BlblBhbmVsXG4gIGNvbnN0IG9yaWdpbmFsVGFza1BhbmVsID0gd2luZG93LnRhc2tQYW5lbFxuICBjb25zdCByZXBsYWNlU3RhdGVTcHkgPSBqZXN0LnNweU9uKHdpbmRvdy5oaXN0b3J5LCAncmVwbGFjZVN0YXRlJylcblxuICBiZWZvcmVFYWNoKCgpID0+IHtcbiAgICByZXBsYWNlU3RhdGVTcHkubW9ja0NsZWFyKClcbiAgfSlcblxuICBhZnRlckVhY2goKCkgPT4ge1xuICAgIHdpbmRvdy5vcGVuID0gb3JpZ2luYWxPcGVuXG4gICAgd2luZG93Lm9wZW5QYW5lbCA9IG9yaWdpbmFsT3BlblBhbmVsXG4gICAgd2luZG93LnRhc2tQYW5lbCA9IG9yaWdpbmFsVGFza1BhbmVsXG4gIH0pXG5cbiAgaXQoJ29wZW5zIHRoZSBDT1IgdGFzayBwYW5lbCB3aGVuIG9wZW5QYW5lbCBpcyBhdmFpbGFibGUnLCAoKSA9PiB7XG4gICAgY29uc3Qgb3BlblBhbmVsID0gamVzdC5mbigpXG4gICAgd2luZG93Lm9wZW5QYW5lbCA9IG9wZW5QYW5lbFxuICAgIHdpbmRvdy50YXNrUGFuZWwgPSB1bmRlZmluZWRcblxuICAgIG9wZW5UYXNrSW5Db3JQYW5lbCg0MiwgJ2hvdXJzJylcblxuICAgIGV4cGVjdChyZXBsYWNlU3RhdGVTcHkpLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKCcnLCAnJywgZXhwZWN0LnN0cmluZ0NvbnRhaW5pbmcoJy90YXNrcy80Mi9ob3VycycpKVxuICAgIGV4cGVjdChvcGVuUGFuZWwpLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKDQyLCBTRUNUSU9OUy5jaGF0QUkpXG4gIH0pXG5cbiAgaXQoJ2Rpc3BhdGNoZXMgcG9wc3RhdGUgd2hlbiB0aGUgcGFuZWwgd2FzIGFscmVhZHkgb3BlbicsICgpID0+IHtcbiAgICBjb25zdCBvcGVuUGFuZWwgPSBqZXN0LmZuKClcbiAgICBjb25zdCBwb3BzdGF0ZUxpc3RlbmVyID0gamVzdC5mbigpXG4gICAgd2luZG93Lm9wZW5QYW5lbCA9IG9wZW5QYW5lbFxuICAgIHdpbmRvdy50YXNrUGFuZWwgPSB7IGlkOiA0MiB9IGFzIG5ldmVyXG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3BvcHN0YXRlJywgcG9wc3RhdGVMaXN0ZW5lcilcblxuICAgIG9wZW5UYXNrSW5Db3JQYW5lbCg0MilcblxuICAgIGV4cGVjdChwb3BzdGF0ZUxpc3RlbmVyKS50b0hhdmVCZWVuQ2FsbGVkKClcbiAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigncG9wc3RhdGUnLCBwb3BzdGF0ZUxpc3RlbmVyKVxuICB9KVxuXG4gIGl0KCdmYWxscyBiYWNrIHRvIGEgbmV3IHRhYiB3aGVuIG9wZW5QYW5lbCBpcyBtaXNzaW5nJywgKCkgPT4ge1xuICAgIGRlbGV0ZSAod2luZG93IGFzIHsgb3BlblBhbmVsPzogdW5rbm93biB9KS5vcGVuUGFuZWxcbiAgICB3aW5kb3cub3BlbiA9IGplc3QuZm4oKVxuXG4gICAgb3BlblRhc2tJbkNvclBhbmVsKDk5LCAnZGV0YWlsJylcblxuICAgIGV4cGVjdCh3aW5kb3cub3BlbikudG9IYXZlQmVlbkNhbGxlZFdpdGgoYCR7d2luZG93LmxvY2F0aW9uLm9yaWdpbn0vdGFza3MvOTkvZGV0YWlsYCwgJ19ibGFuaycsICdub29wZW5lcicpXG4gIH0pXG59KVxuIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUFTQSxRQUFRLFFBQVEscUJBQXFCO0FBQzlDLFNBQVNDLGtCQUFrQixRQUFRLHNCQUFzQjtBQUV6REMsUUFBUSxDQUFDLG9CQUFvQixFQUFFLFlBQU07RUFDbkMsSUFBTUMsWUFBWSxHQUFHQyxNQUFNLENBQUNDLElBQUk7RUFDaEMsSUFBTUMsaUJBQWlCLEdBQUdGLE1BQU0sQ0FBQ0csU0FBUztFQUMxQyxJQUFNQyxpQkFBaUIsR0FBR0osTUFBTSxDQUFDSyxTQUFTO0VBQzFDLElBQU1DLGVBQWUsR0FBR0MsSUFBSSxDQUFDQyxLQUFLLENBQUNSLE1BQU0sQ0FBQ1MsT0FBTyxFQUFFLGNBQWMsQ0FBQztFQUVsRUMsVUFBVSxDQUFDLFlBQU07SUFDZkosZUFBZSxDQUFDSyxTQUFTLENBQUMsQ0FBQztFQUM3QixDQUFDLENBQUM7RUFFRkMsU0FBUyxDQUFDLFlBQU07SUFDZFosTUFBTSxDQUFDQyxJQUFJLEdBQUdGLFlBQVk7SUFDMUJDLE1BQU0sQ0FBQ0csU0FBUyxHQUFHRCxpQkFBaUI7SUFDcENGLE1BQU0sQ0FBQ0ssU0FBUyxHQUFHRCxpQkFBaUI7RUFDdEMsQ0FBQyxDQUFDO0VBRUZTLEVBQUUsQ0FBQyxzREFBc0QsRUFBRSxZQUFNO0lBQy9ELElBQU1WLFNBQVMsR0FBR0ksSUFBSSxDQUFDTyxFQUFFLENBQUMsQ0FBQztJQUMzQmQsTUFBTSxDQUFDRyxTQUFTLEdBQUdBLFNBQVM7SUFDNUJILE1BQU0sQ0FBQ0ssU0FBUyxHQUFHVSxTQUFTO0lBRTVCbEIsa0JBQWtCLENBQUMsRUFBRSxFQUFFLE9BQU8sQ0FBQztJQUUvQm1CLE1BQU0sQ0FBQ1YsZUFBZSxDQUFDLENBQUNXLG9CQUFvQixDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUVELE1BQU0sQ0FBQ0UsZ0JBQWdCLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUNoR0YsTUFBTSxDQUFDYixTQUFTLENBQUMsQ0FBQ2Msb0JBQW9CLENBQUMsRUFBRSxFQUFFckIsUUFBUSxDQUFDdUIsTUFBTSxDQUFDO0VBQzdELENBQUMsQ0FBQztFQUVGTixFQUFFLENBQUMscURBQXFELEVBQUUsWUFBTTtJQUM5RCxJQUFNVixTQUFTLEdBQUdJLElBQUksQ0FBQ08sRUFBRSxDQUFDLENBQUM7SUFDM0IsSUFBTU0sZ0JBQWdCLEdBQUdiLElBQUksQ0FBQ08sRUFBRSxDQUFDLENBQUM7SUFDbENkLE1BQU0sQ0FBQ0csU0FBUyxHQUFHQSxTQUFTO0lBQzVCSCxNQUFNLENBQUNLLFNBQVMsR0FBRztNQUFFZ0IsRUFBRSxFQUFFO0lBQUcsQ0FBVTtJQUN0Q3JCLE1BQU0sQ0FBQ3NCLGdCQUFnQixDQUFDLFVBQVUsRUFBRUYsZ0JBQWdCLENBQUM7SUFFckR2QixrQkFBa0IsQ0FBQyxFQUFFLENBQUM7SUFFdEJtQixNQUFNLENBQUNJLGdCQUFnQixDQUFDLENBQUNHLGdCQUFnQixDQUFDLENBQUM7SUFDM0N2QixNQUFNLENBQUN3QixtQkFBbUIsQ0FBQyxVQUFVLEVBQUVKLGdCQUFnQixDQUFDO0VBQzFELENBQUMsQ0FBQztFQUVGUCxFQUFFLENBQUMsbURBQW1ELEVBQUUsWUFBTTtJQUM1RCxPQUFRYixNQUFNLENBQTZCRyxTQUFTO0lBQ3BESCxNQUFNLENBQUNDLElBQUksR0FBR00sSUFBSSxDQUFDTyxFQUFFLENBQUMsQ0FBQztJQUV2QmpCLGtCQUFrQixDQUFDLEVBQUUsRUFBRSxRQUFRLENBQUM7SUFFaENtQixNQUFNLENBQUNoQixNQUFNLENBQUNDLElBQUksQ0FBQyxDQUFDZ0Isb0JBQW9CLElBQUFRLE1BQUEsQ0FBSXpCLE1BQU0sQ0FBQzBCLFFBQVEsQ0FBQ0MsTUFBTSx1QkFBb0IsUUFBUSxFQUFFLFVBQVUsQ0FBQztFQUM3RyxDQUFDLENBQUM7QUFDSixDQUFDLENBQUMiLCJpZ25vcmVMaXN0IjpbXX0=