@projectcor/maia-components 2.11.9-9 → 2.11.9

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 (67) hide show
  1. package/lib/components/atoms/ApprovalBox/ApprovalBox.js +5 -2
  2. package/lib/components/atoms/ApprovalBox/ApprovalBox.styles.js +15 -12
  3. package/lib/components/atoms/AttachmentPreviewModal/AttachmentPreviewModal.js +18 -5
  4. package/lib/components/atoms/Chip/Chip.js +3 -4
  5. package/lib/components/atoms/Chip/styles.js +2 -2
  6. package/lib/components/atoms/ErrorSearchProjects/ErrorSearchProjects.js +3 -5
  7. package/lib/components/atoms/FrequentlyAskedQuestions/FrequentlyAskedQuestions.js +3 -4
  8. package/lib/components/atoms/MAIAInput/MAIAInput.js +35 -12
  9. package/lib/components/atoms/MAIAInput/styles.js +38 -39
  10. package/lib/components/atoms/MAIAMessage/MAIAMessage.interfaces.js +1 -1
  11. package/lib/components/atoms/MAIAMessage/MAIAMessage.js +21 -6
  12. package/lib/components/atoms/ProjectSelector/ProjectSelector.js +193 -56
  13. package/lib/components/atoms/ProjectSelector/ProjectSelector.styles.js +2 -2
  14. package/lib/components/index.js +1 -2
  15. package/lib/components/molecules/ChatAIContent/ChatAIContent.js +23 -17
  16. package/lib/components/molecules/ChatAIHistory/ChatAIHistory.js +3 -2
  17. package/lib/components/molecules/ChatAIHome/ChatAIHome.js +3 -2
  18. package/lib/components/molecules/ChatAIHome/styles.js +6 -6
  19. package/lib/components/molecules/ChatAIMessages/ChatAIMessages.js +155 -238
  20. package/lib/components/molecules/ChatAIMessages/newStyles.js +118 -29
  21. package/lib/components/molecules/ChatAIModal/ChatAIModal.js +6 -18
  22. package/lib/components/molecules/ChatAIModal/ChatAIModal.styles.js +2 -2
  23. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.js +4 -6
  24. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.styles.js +4 -4
  25. package/lib/components/molecules/ChatAIModal/constants.js +2 -6
  26. package/lib/components/molecules/ChatFooter/ChatFooter.js +4 -7
  27. package/lib/components/molecules/ProjectSummaryChat/ProjectSummaryChat.js +3 -2
  28. package/lib/components/molecules/Sidebar/Sidebar.js +8 -11
  29. package/lib/components/organisms/ChatAI/ChatAI.js +5 -11
  30. package/lib/constants/config.js +2 -3
  31. package/lib/context/global-context.js +1 -1
  32. package/lib/hooks/useChatManager/useChatManager.js +19 -49
  33. package/lib/hooks/useChatMessages/useChatMessages.js +41 -79
  34. package/lib/hooks/useChats/useChats.js +6 -10
  35. package/lib/hooks/useOrchestratorStream/useOrchestratorStream.js +4 -6
  36. package/lib/hooks/useProjectSummaryConfig.js +7 -35
  37. package/lib/hooks/useStreamdownStyles.js +20 -0
  38. package/lib/index.css +297 -15
  39. package/lib/lang/br/index.js +2 -25
  40. package/lib/lang/en/index.js +2 -25
  41. package/lib/lang/es/index.js +2 -25
  42. package/lib/lang/fr/index.js +2 -21
  43. package/lib/services/maia/Agents/getAgents.js +7 -10
  44. package/lib/services/maia/Chats/getChatMessages.js +16 -30
  45. package/lib/services/maia/Chats/getChatsByUserId.js +3 -4
  46. package/lib/services/maia/Orchestrator/orchestrator.js +4 -6
  47. package/lib/services/maia/index.js +2 -4
  48. package/lib/services/utils/mapChatMessages.js +4 -12
  49. package/lib/store/chatsStore.types.js +1 -1
  50. package/lib/store/useChatsStore.js +7 -9
  51. package/lib/streamdownStyles.js +6 -0
  52. package/lib/types/Chat.js +1 -1
  53. package/lib/types/agent.js +1 -1
  54. package/package.json +22 -17
  55. package/lib/components/atoms/ChatClientSelector/ChatClientSelector.js +0 -69
  56. package/lib/components/atoms/ChatClientSelector/index.js +0 -2
  57. package/lib/components/atoms/EntitySelector/EntitySelector.js +0 -181
  58. package/lib/components/atoms/EntitySelector/EntitySelector.styles.js +0 -57
  59. package/lib/components/atoms/EntitySelector/index.js +0 -2
  60. package/lib/components/molecules/ChatAIClientSelector/ChatAIClientSelector.js +0 -56
  61. package/lib/components/molecules/ChatAIClientSelector/index.js +0 -2
  62. package/lib/components/organisms/ClientAIButton/ClientAIButton.js +0 -26
  63. package/lib/components/organisms/ClientAIButton/index.js +0 -2
  64. package/lib/hooks/useRecentClientsSearch.js +0 -176
  65. package/lib/services/maia/RecentClients/getRecentClients.js +0 -43
  66. package/lib/services/maia/RecentClients/index.js +0 -6
  67. package/lib/types/Client.js +0 -2
@@ -238,11 +238,11 @@ export var useOrchestratorStream = function useOrchestratorStream(_ref) {
238
238
  }(), [t]);
239
239
  var askMaia = /*#__PURE__*/function () {
240
240
  var _ref4 = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee2(_ref3) {
241
- var message, history, projectId, lang, userId, companyId, chatId, messageId, clientId, clientName, agentName, agentId, isWebSearchActive, isDeepSearchActive, attachments, projectName, faqId, _abortControllerRef$c, response, _t5;
241
+ var message, history, projectId, lang, userId, companyId, chatId, messageId, clientId, agentName, agentId, isWebSearchActive, isDeepSearchActive, attachments, projectName, faqId, _abortControllerRef$c, response, _t5;
242
242
  return _regeneratorRuntime.wrap(function (_context2) {
243
243
  while (1) switch (_context2.prev = _context2.next) {
244
244
  case 0:
245
- message = _ref3.message, history = _ref3.history, projectId = _ref3.projectId, lang = _ref3.lang, userId = _ref3.userId, companyId = _ref3.companyId, chatId = _ref3.chatId, messageId = _ref3.messageId, clientId = _ref3.clientId, clientName = _ref3.clientName, agentName = _ref3.agentName, agentId = _ref3.agentId, isWebSearchActive = _ref3.isWebSearchActive, isDeepSearchActive = _ref3.isDeepSearchActive, attachments = _ref3.attachments, projectName = _ref3.projectName, faqId = _ref3.faqId;
245
+ message = _ref3.message, history = _ref3.history, projectId = _ref3.projectId, lang = _ref3.lang, userId = _ref3.userId, companyId = _ref3.companyId, chatId = _ref3.chatId, messageId = _ref3.messageId, clientId = _ref3.clientId, agentName = _ref3.agentName, agentId = _ref3.agentId, isWebSearchActive = _ref3.isWebSearchActive, isDeepSearchActive = _ref3.isDeepSearchActive, attachments = _ref3.attachments, projectName = _ref3.projectName, faqId = _ref3.faqId;
246
246
  _context2.prev = 1;
247
247
  setLoading(true);
248
248
  setIsWriting(false);
@@ -252,7 +252,7 @@ export var useOrchestratorStream = function useOrchestratorStream(_ref) {
252
252
 
253
253
  abortControllerRef.current = new AbortController();
254
254
  _context2.next = 2;
255
- return maia.Orchestrator.orchestrator(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({
255
+ return maia.Orchestrator.orchestrator(_objectSpread(_objectSpread(_objectSpread(_objectSpread({
256
256
  input: message,
257
257
  history: history,
258
258
  lang: lang,
@@ -271,8 +271,6 @@ export var useOrchestratorStream = function useOrchestratorStream(_ref) {
271
271
  attachments: attachments
272
272
  } : {}), projectName ? {
273
273
  projectName: projectName
274
- } : {}), clientName ? {
275
- clientName: clientName
276
274
  } : {}), faqId ? {
277
275
  faqId: faqId
278
276
  } : {}), (_abortControllerRef$c = abortControllerRef.current) === null || _abortControllerRef$c === void 0 ? void 0 : _abortControllerRef$c.signal);
@@ -328,4 +326,4 @@ export var useOrchestratorStream = function useOrchestratorStream(_ref) {
328
326
  handleSSEStream: handleSSEStream // Exponer para poder usarlo en continue-thread
329
327
  };
330
328
  };
331
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VTdGF0ZSIsInVzZUNhbGxiYWNrIiwidXNlUmVmIiwidXNlVHJhbnNsYXRpb24iLCJtYWlhIiwiU0VDVElPTlMiLCJ1c2VPcmNoZXN0cmF0b3JTdHJlYW0iLCJfcmVmIiwib25TdHJlYW1VcGRhdGUiLCJvbkZpbmlzaFN0cmVhbSIsIm9uU3RhcnRXcml0aW5nIiwib25TdG9wIiwib25FcnJvciIsIm9uQXBwcm92YWxSZXF1aXJlZCIsIl91c2VUcmFuc2xhdGlvbiIsImNoYXRBSSIsInQiLCJfdXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkiLCJkYXRhIiwic2V0RGF0YSIsIl91c2VTdGF0ZTMiLCJfdXNlU3RhdGU0IiwiaXNMb2FkaW5nIiwic2V0TG9hZGluZyIsIl91c2VTdGF0ZTUiLCJfdXNlU3RhdGU2IiwiaXNXcml0aW5nIiwic2V0SXNXcml0aW5nIiwiX3VzZVN0YXRlNyIsIl91c2VTdGF0ZTgiLCJsb2FkaW5nTWVzc2FnZSIsInNldExvYWRpbmdNZXNzYWdlIiwiYWJvcnRDb250cm9sbGVyUmVmIiwiaXNTdG9wcGVkUmVmIiwib25TdHJlYW1VcGRhdGVSZWYiLCJvbkZpbmlzaFN0cmVhbVJlZiIsIm9uU3RhcnRXcml0aW5nUmVmIiwib25TdG9wUmVmIiwib25FcnJvclJlZiIsIm9uQXBwcm92YWxSZXF1aXJlZFJlZiIsImN1cnJlbnQiLCJoYW5kbGVTU0VTdHJlYW0iLCJfcmVmMiIsIl9hc3luY1RvR2VuZXJhdG9yIiwiX3JlZ2VuZXJhdG9yUnVudGltZSIsIm1hcmsiLCJfY2FsbGVlIiwicmVzcG9uc2UiLCJfb25TdHJlYW1VcGRhdGVSZWYkY3UiLCJfb25GaW5pc2hTdHJlYW1SZWYkY3UiLCJfb25BcHByb3ZhbFJlcXVpcmVkUmUiLCJfb25FcnJvclJlZiRjdXJyZW50IiwiX3Jlc3BvbnNlJGJvZHkiLCJyZWFkZXIiLCJkZWNvZGVyIiwiYnVmZmVyIiwiYWNjdW11bGF0ZWRDb250ZW50IiwiaGFzU3RhcnRlZFdyaXRpbmciLCJfeWllbGQkcmVhZGVyJHJlYWQiLCJkb25lIiwidmFsdWUiLCJsaW5lcyIsIl9pdGVyYXRvciIsIl9zdGVwIiwibGluZSIsIl9saW5lJHNwbGl0IiwiX2xpbmUkc3BsaXQyIiwiZXZlbnRMaW5lIiwiZGF0YUxpbmUiLCJldmVudFR5cGUiLCJkYXRhU3RyIiwiX2RhdGEiLCJfb25TdGFydFdyaXRpbmdSZWYkY3UiLCJmaW5hbENvbnRlbnQiLCJzb3VyY2VzIiwibWVtb3J5U2Vzc2lvbklkIiwiX29uRXJyb3JSZWYkY3VycmVudDIiLCJfdCIsIl90MiIsIl90MyIsIl90NCIsIndyYXAiLCJfY29udGV4dCIsInByZXYiLCJuZXh0IiwiYm9keSIsImdldFJlYWRlciIsIkVycm9yIiwiVGV4dERlY29kZXIiLCJjYW5jZWwiLCJhYnJ1cHQiLCJyZWFkIiwic2VudCIsImRlY29kZSIsInN0cmVhbSIsInNwbGl0IiwicG9wIiwiX2NyZWF0ZUZvck9mSXRlcmF0b3JIZWxwZXIiLCJzIiwibiIsInRyaW0iLCJyZXBsYWNlIiwiSlNPTiIsInBhcnNlIiwiY2FsbCIsImNvbnRlbnQiLCJtZXNzYWdlIiwibWVtb3J5X3Nlc3Npb25faWQiLCJjb25zb2xlIiwiZXJyb3IiLCJ3YXJuIiwiZSIsImYiLCJmaW5pc2giLCJzdG9wIiwiX3giLCJhcHBseSIsImFyZ3VtZW50cyIsImFza01haWEiLCJfcmVmNCIsIl9jYWxsZWUyIiwiX3JlZjMiLCJoaXN0b3J5IiwicHJvamVjdElkIiwibGFuZyIsInVzZXJJZCIsImNvbXBhbnlJZCIsImNoYXRJZCIsIm1lc3NhZ2VJZCIsImNsaWVudElkIiwiY2xpZW50TmFtZSIsImFnZW50TmFtZSIsImFnZW50SWQiLCJpc1dlYlNlYXJjaEFjdGl2ZSIsImlzRGVlcFNlYXJjaEFjdGl2ZSIsImF0dGFjaG1lbnRzIiwicHJvamVjdE5hbWUiLCJmYXFJZCIsIl9hYm9ydENvbnRyb2xsZXJSZWYkYyIsIl90NSIsIl9jb250ZXh0MiIsIkFib3J0Q29udHJvbGxlciIsIk9yY2hlc3RyYXRvciIsIm9yY2hlc3RyYXRvciIsIl9vYmplY3RTcHJlYWQiLCJpbnB1dCIsInNpZ25hbCIsIl94MiIsInN0b3BTdHJlYW1pbmciLCJfb25TdG9wUmVmJGN1cnJlbnQiLCJhYm9ydCIsInJlc2V0Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2hvb2tzL3VzZU9yY2hlc3RyYXRvclN0cmVhbS91c2VPcmNoZXN0cmF0b3JTdHJlYW0udHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgbm8tY29uc29sZSAqL1xuLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXNoYWRvdyAqL1xuLyogZXNsaW50LWRpc2FibGUgbm8tY29uc3RhbnQtY29uZGl0aW9uICovXG4vKiBlc2xpbnQtZGlzYWJsZSBuby1jb250aW51ZSAqL1xuLyogZXNsaW50LWRpc2FibGUgbm8tYXdhaXQtaW4tbG9vcCAqL1xuLyogZXNsaW50LWRpc2FibGUgbm8tY2FzZS1kZWNsYXJhdGlvbnMgKi9cbi8qIGVzbGludC1kaXNhYmxlIG5vLXJlc3RyaWN0ZWQtc3ludGF4ICovXG4vKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXG5pbXBvcnQgeyB1c2VTdGF0ZSwgdXNlQ2FsbGJhY2ssIHVzZVJlZiB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgdXNlVHJhbnNsYXRpb24gfSBmcm9tICdyZWFjdC1pMThuZXh0J1xuaW1wb3J0IHsgQXR0YWNobWVudEZpbGUgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL21vbGVjdWxlcy9DaGF0Rm9vdGVyL0NoYXRGb290ZXInXG5pbXBvcnQgbWFpYSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9tYWlhJ1xuaW1wb3J0IHsgQ2hhdEhpc3RvcnkgfSBmcm9tICcuLi8uLi90eXBlcy9DaGF0J1xuaW1wb3J0IHsgVXNlT3JjaGVzdHJhdG9yU3RyZWFtUHJvcHMgfSBmcm9tICcuL3VzZU9yY2hlc3RyYXRvclN0cmVhbS5pbnRlcmZhY2UnXG5pbXBvcnQgeyBTRUNUSU9OUyB9IGZyb20gJy4uLy4uL2NvbnN0YW50cy9jb25maWcnXG5cbmV4cG9ydCBjb25zdCB1c2VPcmNoZXN0cmF0b3JTdHJlYW0gPSAoe1xuICBvblN0cmVhbVVwZGF0ZSxcbiAgb25GaW5pc2hTdHJlYW0sXG4gIG9uU3RhcnRXcml0aW5nLFxuICBvblN0b3AsXG4gIG9uRXJyb3IsXG4gIG9uQXBwcm92YWxSZXF1aXJlZCxcbn06IFVzZU9yY2hlc3RyYXRvclN0cmVhbVByb3BzKSA9PiB7XG4gIGNvbnN0IHsgdCB9ID0gdXNlVHJhbnNsYXRpb24oW1NFQ1RJT05TLmNoYXRBSV0pXG4gIGNvbnN0IFtkYXRhLCBzZXREYXRhXSA9IHVzZVN0YXRlPHN0cmluZyB8IG51bGw+KG51bGwpXG4gIGNvbnN0IFtpc0xvYWRpbmcsIHNldExvYWRpbmddID0gdXNlU3RhdGUoZmFsc2UpXG4gIGNvbnN0IFtpc1dyaXRpbmcsIHNldElzV3JpdGluZ10gPSB1c2VTdGF0ZShmYWxzZSlcbiAgY29uc3QgW2xvYWRpbmdNZXNzYWdlLCBzZXRMb2FkaW5nTWVzc2FnZV0gPSB1c2VTdGF0ZTxzdHJpbmcgfCBudWxsPihudWxsKVxuICBjb25zdCBhYm9ydENvbnRyb2xsZXJSZWYgPSB1c2VSZWY8QWJvcnRDb250cm9sbGVyIHwgbnVsbD4obnVsbClcbiAgY29uc3QgaXNTdG9wcGVkUmVmID0gdXNlUmVmKGZhbHNlKVxuXG4gIGNvbnN0IG9uU3RyZWFtVXBkYXRlUmVmID0gdXNlUmVmKG9uU3RyZWFtVXBkYXRlKVxuICBjb25zdCBvbkZpbmlzaFN0cmVhbVJlZiA9IHVzZVJlZihvbkZpbmlzaFN0cmVhbSlcbiAgY29uc3Qgb25TdGFydFdyaXRpbmdSZWYgPSB1c2VSZWYob25TdGFydFdyaXRpbmcpXG4gIGNvbnN0IG9uU3RvcFJlZiA9IHVzZVJlZihvblN0b3ApXG4gIGNvbnN0IG9uRXJyb3JSZWYgPSB1c2VSZWYob25FcnJvcilcbiAgY29uc3Qgb25BcHByb3ZhbFJlcXVpcmVkUmVmID0gdXNlUmVmKG9uQXBwcm92YWxSZXF1aXJlZClcblxuICBvblN0cmVhbVVwZGF0ZVJlZi5jdXJyZW50ID0gb25TdHJlYW1VcGRhdGVcbiAgb25GaW5pc2hTdHJlYW1SZWYuY3VycmVudCA9IG9uRmluaXNoU3RyZWFtXG4gIG9uU3RhcnRXcml0aW5nUmVmLmN1cnJlbnQgPSBvblN0YXJ0V3JpdGluZ1xuICBvblN0b3BSZWYuY3VycmVudCA9IG9uU3RvcFxuICBvbkVycm9yUmVmLmN1cnJlbnQgPSBvbkVycm9yXG4gIG9uQXBwcm92YWxSZXF1aXJlZFJlZi5jdXJyZW50ID0gb25BcHByb3ZhbFJlcXVpcmVkXG5cbiAgY29uc3QgaGFuZGxlU1NFU3RyZWFtID0gdXNlQ2FsbGJhY2soXG4gICAgYXN5bmMgKHJlc3BvbnNlOiBSZXNwb25zZSkgPT4ge1xuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgcmVhZGVyID0gcmVzcG9uc2UuYm9keT8uZ2V0UmVhZGVyKClcbiAgICAgICAgaWYgKCFyZWFkZXIpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIHJlYWRlciBhdmFpbGFibGUnKVxuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZGVjb2RlciA9IG5ldyBUZXh0RGVjb2RlcigpXG4gICAgICAgIGxldCBidWZmZXIgPSAnJ1xuICAgICAgICBsZXQgYWNjdW11bGF0ZWRDb250ZW50ID0gJydcbiAgICAgICAgbGV0IGhhc1N0YXJ0ZWRXcml0aW5nID0gZmFsc2VcblxuICAgICAgICB3aGlsZSAodHJ1ZSkge1xuICAgICAgICAgIGlmIChpc1N0b3BwZWRSZWYuY3VycmVudCkge1xuICAgICAgICAgICAgcmVhZGVyLmNhbmNlbCgpXG4gICAgICAgICAgICBicmVha1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGNvbnN0IHsgZG9uZSwgdmFsdWUgfSA9IGF3YWl0IHJlYWRlci5yZWFkKClcbiAgICAgICAgICBpZiAoZG9uZSkge1xuICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAoaXNTdG9wcGVkUmVmLmN1cnJlbnQpIHtcbiAgICAgICAgICAgIHJlYWRlci5jYW5jZWwoKVxuICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBidWZmZXIgKz0gZGVjb2Rlci5kZWNvZGUodmFsdWUsIHsgc3RyZWFtOiB0cnVlIH0pXG4gICAgICAgICAgY29uc3QgbGluZXMgPSBidWZmZXIuc3BsaXQoJ1xcblxcbicpXG4gICAgICAgICAgYnVmZmVyID0gbGluZXMucG9wKCkgfHwgJydcblxuICAgICAgICAgIGZvciAoY29uc3QgbGluZSBvZiBsaW5lcykge1xuICAgICAgICAgICAgaWYgKGxpbmUudHJpbSgpID09PSAnJykgY29udGludWVcblxuICAgICAgICAgICAgY29uc3QgW2V2ZW50TGluZSwgZGF0YUxpbmVdID0gbGluZS5zcGxpdCgnXFxuJylcbiAgICAgICAgICAgIGlmICghZXZlbnRMaW5lIHx8ICFkYXRhTGluZSkgY29udGludWVcblxuICAgICAgICAgICAgY29uc3QgZXZlbnRUeXBlID0gZXZlbnRMaW5lLnJlcGxhY2UoJ2V2ZW50OiAnLCAnJykudHJpbSgpXG4gICAgICAgICAgICBjb25zdCBkYXRhU3RyID0gZGF0YUxpbmUucmVwbGFjZSgnZGF0YTogJywgJycpLnRyaW0oKVxuXG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICBjb25zdCBkYXRhID0gSlNPTi5wYXJzZShkYXRhU3RyKVxuXG4gICAgICAgICAgICAgIHN3aXRjaCAoZXZlbnRUeXBlKSB7XG4gICAgICAgICAgICAgICAgY2FzZSAndG9rZW4nOlxuICAgICAgICAgICAgICAgICAgaWYgKCFoYXNTdGFydGVkV3JpdGluZykge1xuICAgICAgICAgICAgICAgICAgICBoYXNTdGFydGVkV3JpdGluZyA9IHRydWVcbiAgICAgICAgICAgICAgICAgICAgc2V0SXNXcml0aW5nKHRydWUpXG4gICAgICAgICAgICAgICAgICAgIHNldExvYWRpbmdNZXNzYWdlKHQoJ2NoYXQud3JpdGluZycpKVxuICAgICAgICAgICAgICAgICAgICBvblN0YXJ0V3JpdGluZ1JlZi5jdXJyZW50Py4oKVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgYWNjdW11bGF0ZWRDb250ZW50ICs9IGRhdGEuY29udGVudFxuICAgICAgICAgICAgICAgICAgc2V0RGF0YShhY2N1bXVsYXRlZENvbnRlbnQpXG4gICAgICAgICAgICAgICAgICBvblN0cmVhbVVwZGF0ZVJlZi5jdXJyZW50Py4oYWNjdW11bGF0ZWRDb250ZW50LCBudWxsLCAnJylcbiAgICAgICAgICAgICAgICAgIGJyZWFrXG5cbiAgICAgICAgICAgICAgICBjYXNlICdub2RlJzpcbiAgICAgICAgICAgICAgICAgIC8vIFNpIGVsIGV2ZW50byBub2RlIHRpZW5lIHVuIG1lbnNhamUsIGFjdHVhbGl6YXJsbyBwYXJhIG1vc3RyYXJsbyBlbiBlbCBsb2FkZXJcbiAgICAgICAgICAgICAgICAgIGlmIChkYXRhLm1lc3NhZ2UgJiYgdHlwZW9mIGRhdGEubWVzc2FnZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gQXNlZ3VyYXIgcXVlIGlzTG9hZGluZyBlc3TDqSBlbiB0cnVlIHBhcmEgbW9zdHJhciBlbCBsb2FkZXJcbiAgICAgICAgICAgICAgICAgICAgc2V0TG9hZGluZyh0cnVlKVxuICAgICAgICAgICAgICAgICAgICBzZXRMb2FkaW5nTWVzc2FnZShkYXRhLm1lc3NhZ2UpXG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBicmVha1xuXG4gICAgICAgICAgICAgICAgY2FzZSAnY29tcGxldGUnOlxuICAgICAgICAgICAgICAgICAgY29uc3QgZmluYWxDb250ZW50ID0gZGF0YS5jb250ZW50IHx8IGFjY3VtdWxhdGVkQ29udGVudFxuICAgICAgICAgICAgICAgICAgY29uc3Qgc291cmNlcyA9IGRhdGEuc291cmNlcyB8fCBudWxsXG4gICAgICAgICAgICAgICAgICBjb25zdCBtZW1vcnlTZXNzaW9uSWQgPSBkYXRhLm1lbW9yeV9zZXNzaW9uX2lkIHx8ICcnXG4gICAgICAgICAgICAgICAgICBzZXREYXRhKGZpbmFsQ29udGVudClcbiAgICAgICAgICAgICAgICAgIHNldElzV3JpdGluZyhmYWxzZSlcbiAgICAgICAgICAgICAgICAgIHNldExvYWRpbmdNZXNzYWdlKG51bGwpIC8vIExpbXBpYXIgbWVuc2FqZSBjdWFuZG8gc2UgY29tcGxldGFcbiAgICAgICAgICAgICAgICAgIG9uRmluaXNoU3RyZWFtUmVmLmN1cnJlbnQ/LihmaW5hbENvbnRlbnQsIHNvdXJjZXMsIG1lbW9yeVNlc3Npb25JZClcbiAgICAgICAgICAgICAgICAgIGJyZWFrXG5cbiAgICAgICAgICAgICAgICBjYXNlICdhcHByb3ZhbF9yZXF1aXJlZCc6XG4gICAgICAgICAgICAgICAgICBzZXRJc1dyaXRpbmcoZmFsc2UpXG4gICAgICAgICAgICAgICAgICBzZXRMb2FkaW5nKGZhbHNlKVxuICAgICAgICAgICAgICAgICAgc2V0TG9hZGluZ01lc3NhZ2UobnVsbCkgLy8gTGltcGlhciBtZW5zYWplIGN1YW5kbyBzZSByZXF1aWVyZSBhcHJvYmFjacOzblxuICAgICAgICAgICAgICAgICAgb25BcHByb3ZhbFJlcXVpcmVkUmVmLmN1cnJlbnQ/LihkYXRhLCBhY2N1bXVsYXRlZENvbnRlbnQpXG4gICAgICAgICAgICAgICAgICBicmVha1xuXG4gICAgICAgICAgICAgICAgY2FzZSAnZXJyb3InOlxuICAgICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcignU1NFIEVycm9yOicsIGRhdGEuZXJyb3IpXG4gICAgICAgICAgICAgICAgICBzZXRJc1dyaXRpbmcoZmFsc2UpXG4gICAgICAgICAgICAgICAgICBzZXRMb2FkaW5nTWVzc2FnZShudWxsKSAvLyBMaW1waWFyIG1lbnNhamUgY3VhbmRvIGhheSBlcnJvclxuICAgICAgICAgICAgICAgICAgb25FcnJvclJlZi5jdXJyZW50Py4oKVxuICAgICAgICAgICAgICAgICAgYnJlYWtcblxuICAgICAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgICBjb25zb2xlLndhcm4oJ1Vua25vd24gU1NFIGV2ZW50IHR5cGU6JywgZXZlbnRUeXBlKVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGNhdGNoIChwYXJzZUVycm9yKSB7XG4gICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIHBhcnNpbmcgU1NFIGRhdGE6JywgcGFyc2VFcnJvciwgZGF0YVN0cilcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgIHNldElzV3JpdGluZyhmYWxzZSlcblxuICAgICAgICAvLyBTb2xvIGVqZWN1dGFyIG9uRXJyb3Igc2kgbm8gZnVlIHVuIHN0b3AgaW50ZW5jaW9uYWxcbiAgICAgICAgaWYgKCFpc1N0b3BwZWRSZWYuY3VycmVudCkge1xuICAgICAgICAgIG9uRXJyb3JSZWYuY3VycmVudD8uKClcbiAgICAgICAgfVxuICAgICAgfSBmaW5hbGx5IHtcbiAgICAgICAgc2V0TG9hZGluZyhmYWxzZSlcbiAgICAgICAgc2V0SXNXcml0aW5nKGZhbHNlKVxuICAgICAgICBzZXRMb2FkaW5nTWVzc2FnZShudWxsKVxuICAgICAgfVxuICAgIH0sXG4gICAgW3RdXG4gIClcblxuICBjb25zdCBhc2tNYWlhID0gYXN5bmMgKHtcbiAgICBtZXNzYWdlLFxuICAgIGhpc3RvcnksXG4gICAgcHJvamVjdElkLFxuICAgIGxhbmcsXG4gICAgdXNlcklkLFxuICAgIGNvbXBhbnlJZCxcbiAgICBjaGF0SWQsXG4gICAgbWVzc2FnZUlkLFxuICAgIGNsaWVudElkLFxuICAgIGNsaWVudE5hbWUsXG4gICAgYWdlbnROYW1lLFxuICAgIGFnZW50SWQsXG4gICAgaXNXZWJTZWFyY2hBY3RpdmUsXG4gICAgaXNEZWVwU2VhcmNoQWN0aXZlLFxuICAgIGF0dGFjaG1lbnRzLFxuICAgIHByb2plY3ROYW1lLFxuICAgIGZhcUlkLFxuICB9OiB7XG4gICAgbWVzc2FnZTogc3RyaW5nXG4gICAgaGlzdG9yeTogQ2hhdEhpc3RvcnlbXVxuICAgIHByb2plY3RJZDogbnVtYmVyIHwgbnVsbFxuICAgIGxhbmc6IHN0cmluZ1xuICAgIHVzZXJJZDogc3RyaW5nXG4gICAgY29tcGFueUlkOiBzdHJpbmdcbiAgICBjaGF0SWQ6IHN0cmluZ1xuICAgIG1lc3NhZ2VJZDogc3RyaW5nXG4gICAgY2xpZW50SWQ/OiBudW1iZXJcbiAgICBjbGllbnROYW1lPzogc3RyaW5nXG4gICAgYWdlbnROYW1lOiBzdHJpbmdcbiAgICBhZ2VudElkOiBzdHJpbmdcbiAgICBpc1dlYlNlYXJjaEFjdGl2ZT86IGJvb2xlYW5cbiAgICBpc0RlZXBTZWFyY2hBY3RpdmU/OiBib29sZWFuXG4gICAgYXR0YWNobWVudHM/OiBBdHRhY2htZW50RmlsZVtdXG4gICAgcHJvamVjdE5hbWU/OiBzdHJpbmdcbiAgICBmYXFJZD86IHN0cmluZ1xuICB9KSA9PiB7XG4gICAgdHJ5IHtcbiAgICAgIHNldExvYWRpbmcodHJ1ZSlcbiAgICAgIHNldElzV3JpdGluZyhmYWxzZSlcbiAgICAgIHNldERhdGEobnVsbClcbiAgICAgIHNldExvYWRpbmdNZXNzYWdlKG51bGwpXG4gICAgICBpc1N0b3BwZWRSZWYuY3VycmVudCA9IGZhbHNlIC8vIFJlc2V0ZWFyIGZsYWcgYWwgaW5pY2lhciBudWV2YSBwZXRpY2nDs25cblxuICAgICAgYWJvcnRDb250cm9sbGVyUmVmLmN1cnJlbnQgPSBuZXcgQWJvcnRDb250cm9sbGVyKClcblxuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBtYWlhLk9yY2hlc3RyYXRvci5vcmNoZXN0cmF0b3IoXG4gICAgICAgIHtcbiAgICAgICAgICBpbnB1dDogbWVzc2FnZSxcbiAgICAgICAgICBoaXN0b3J5LFxuICAgICAgICAgIGxhbmcsXG4gICAgICAgICAgdXNlcklkLFxuICAgICAgICAgIGNvbXBhbnlJZCxcbiAgICAgICAgICBjaGF0SWQsXG4gICAgICAgICAgbWVzc2FnZUlkLFxuICAgICAgICAgIGNsaWVudElkLFxuICAgICAgICAgIGFnZW50TmFtZSxcbiAgICAgICAgICBhZ2VudElkLFxuICAgICAgICAgIGlzV2ViU2VhcmNoQWN0aXZlLFxuICAgICAgICAgIGlzRGVlcFNlYXJjaEFjdGl2ZSxcbiAgICAgICAgICAuLi4ocHJvamVjdElkID8geyBwcm9qZWN0SWQgfSA6IHt9KSxcbiAgICAgICAgICAuLi4oYXR0YWNobWVudHMgPyB7IGF0dGFjaG1lbnRzIH0gOiB7fSksXG4gICAgICAgICAgLi4uKHByb2plY3ROYW1lID8geyBwcm9qZWN0TmFtZSB9IDoge30pLFxuICAgICAgICAgIC4uLihjbGllbnROYW1lID8geyBjbGllbnROYW1lIH0gOiB7fSksXG4gICAgICAgICAgLi4uKGZhcUlkID8geyBmYXFJZCB9IDoge30pLFxuICAgICAgICB9LFxuICAgICAgICBhYm9ydENvbnRyb2xsZXJSZWYuY3VycmVudD8uc2lnbmFsXG4gICAgICApXG5cbiAgICAgIGF3YWl0IGhhbmRsZVNTRVN0cmVhbShyZXNwb25zZSlcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgb25FcnJvcj8uKClcbiAgICAgIHNldExvYWRpbmcoZmFsc2UpXG4gICAgfVxuICB9XG5cbiAgY29uc3Qgc3RvcFN0cmVhbWluZyA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBpZiAoYWJvcnRDb250cm9sbGVyUmVmLmN1cnJlbnQpIHtcbiAgICAgIGlzU3RvcHBlZFJlZi5jdXJyZW50ID0gdHJ1ZVxuICAgICAgYWJvcnRDb250cm9sbGVyUmVmLmN1cnJlbnQuYWJvcnQoKVxuICAgICAgYWJvcnRDb250cm9sbGVyUmVmLmN1cnJlbnQgPSBudWxsXG4gICAgICBzZXRMb2FkaW5nKGZhbHNlKVxuICAgICAgc2V0SXNXcml0aW5nKGZhbHNlKVxuICAgICAgc2V0TG9hZGluZ01lc3NhZ2UobnVsbClcbiAgICAgIG9uU3RvcFJlZi5jdXJyZW50Py4oKVxuICAgIH1cbiAgfSwgW10pXG5cbiAgY29uc3QgcmVzZXQgPSAoKSA9PiB7XG4gICAgc2V0RGF0YShudWxsKVxuICAgIHNldExvYWRpbmcoZmFsc2UpXG4gICAgc2V0SXNXcml0aW5nKGZhbHNlKVxuICAgIHNldExvYWRpbmdNZXNzYWdlKG51bGwpXG4gICAgaXNTdG9wcGVkUmVmLmN1cnJlbnQgPSBmYWxzZVxuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBhc2tNYWlhLFxuICAgIHJlc3BvbnNlOiBkYXRhLFxuICAgIGlzTG9hZGluZyxcbiAgICBpc1dyaXRpbmcsXG4gICAgbG9hZGluZ01lc3NhZ2UsXG4gICAgcmVzZXQsXG4gICAgc3RvcFN0cmVhbWluZyxcbiAgICBoYW5kbGVTU0VTdHJlYW0sIC8vIEV4cG9uZXIgcGFyYSBwb2RlciB1c2FybG8gZW4gY29udGludWUtdGhyZWFkXG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVNBLFFBQVEsRUFBRUMsV0FBVyxFQUFFQyxNQUFNLFFBQVEsT0FBTztBQUNyRCxTQUFTQyxjQUFjLFFBQVEsZUFBZTtBQUU5QyxPQUFPQyxJQUFJLE1BQU0scUJBQXFCO0FBR3RDLFNBQVNDLFFBQVEsUUFBUSx3QkFBd0I7QUFFakQsT0FBTyxJQUFNQyxxQkFBcUIsR0FBRyxTQUF4QkEscUJBQXFCQSxDQUFBQyxJQUFBLEVBT0E7RUFBQSxJQU5oQ0MsY0FBYyxHQUFBRCxJQUFBLENBQWRDLGNBQWM7SUFDZEMsY0FBYyxHQUFBRixJQUFBLENBQWRFLGNBQWM7SUFDZEMsY0FBYyxHQUFBSCxJQUFBLENBQWRHLGNBQWM7SUFDZEMsTUFBTSxHQUFBSixJQUFBLENBQU5JLE1BQU07SUFDTkMsT0FBTyxHQUFBTCxJQUFBLENBQVBLLE9BQU87SUFDUEMsa0JBQWtCLEdBQUFOLElBQUEsQ0FBbEJNLGtCQUFrQjtFQUVsQixJQUFBQyxlQUFBLEdBQWNYLGNBQWMsQ0FBQyxDQUFDRSxRQUFRLENBQUNVLE1BQU0sQ0FBQyxDQUFDO0lBQXZDQyxDQUFDLEdBQUFGLGVBQUEsQ0FBREUsQ0FBQztFQUNULElBQUFDLFNBQUEsR0FBd0JqQixRQUFRLENBQWdCLElBQUksQ0FBQztJQUFBa0IsVUFBQSxHQUFBQyxjQUFBLENBQUFGLFNBQUE7SUFBOUNHLElBQUksR0FBQUYsVUFBQTtJQUFFRyxPQUFPLEdBQUFILFVBQUE7RUFDcEIsSUFBQUksVUFBQSxHQUFnQ3RCLFFBQVEsQ0FBQyxLQUFLLENBQUM7SUFBQXVCLFVBQUEsR0FBQUosY0FBQSxDQUFBRyxVQUFBO0lBQXhDRSxTQUFTLEdBQUFELFVBQUE7SUFBRUUsVUFBVSxHQUFBRixVQUFBO0VBQzVCLElBQUFHLFVBQUEsR0FBa0MxQixRQUFRLENBQUMsS0FBSyxDQUFDO0lBQUEyQixVQUFBLEdBQUFSLGNBQUEsQ0FBQU8sVUFBQTtJQUExQ0UsU0FBUyxHQUFBRCxVQUFBO0lBQUVFLFlBQVksR0FBQUYsVUFBQTtFQUM5QixJQUFBRyxVQUFBLEdBQTRDOUIsUUFBUSxDQUFnQixJQUFJLENBQUM7SUFBQStCLFVBQUEsR0FBQVosY0FBQSxDQUFBVyxVQUFBO0lBQWxFRSxjQUFjLEdBQUFELFVBQUE7SUFBRUUsaUJBQWlCLEdBQUFGLFVBQUE7RUFDeEMsSUFBTUcsa0JBQWtCLEdBQUdoQyxNQUFNLENBQXlCLElBQUksQ0FBQztFQUMvRCxJQUFNaUMsWUFBWSxHQUFHakMsTUFBTSxDQUFDLEtBQUssQ0FBQztFQUVsQyxJQUFNa0MsaUJBQWlCLEdBQUdsQyxNQUFNLENBQUNNLGNBQWMsQ0FBQztFQUNoRCxJQUFNNkIsaUJBQWlCLEdBQUduQyxNQUFNLENBQUNPLGNBQWMsQ0FBQztFQUNoRCxJQUFNNkIsaUJBQWlCLEdBQUdwQyxNQUFNLENBQUNRLGNBQWMsQ0FBQztFQUNoRCxJQUFNNkIsU0FBUyxHQUFHckMsTUFBTSxDQUFDUyxNQUFNLENBQUM7RUFDaEMsSUFBTTZCLFVBQVUsR0FBR3RDLE1BQU0sQ0FBQ1UsT0FBTyxDQUFDO0VBQ2xDLElBQU02QixxQkFBcUIsR0FBR3ZDLE1BQU0sQ0FBQ1csa0JBQWtCLENBQUM7RUFFeER1QixpQkFBaUIsQ0FBQ00sT0FBTyxHQUFHbEMsY0FBYztFQUMxQzZCLGlCQUFpQixDQUFDSyxPQUFPLEdBQUdqQyxjQUFjO0VBQzFDNkIsaUJBQWlCLENBQUNJLE9BQU8sR0FBR2hDLGNBQWM7RUFDMUM2QixTQUFTLENBQUNHLE9BQU8sR0FBRy9CLE1BQU07RUFDMUI2QixVQUFVLENBQUNFLE9BQU8sR0FBRzlCLE9BQU87RUFDNUI2QixxQkFBcUIsQ0FBQ0MsT0FBTyxHQUFHN0Isa0JBQWtCO0VBRWxELElBQU04QixlQUFlLEdBQUcxQyxXQUFXO0lBQUEsSUFBQTJDLEtBQUEsR0FBQUMsaUJBQUEsY0FBQUMsbUJBQUEsQ0FBQUMsSUFBQSxDQUNqQyxTQUFBQyxRQUFPQyxRQUFrQjtNQUFBLElBQUFDLHFCQUFBLEVBQUFDLHFCQUFBLEVBQUFDLHFCQUFBLEVBQUFDLG1CQUFBO01BQUEsSUFBQUMsY0FBQSxFQUFBQyxNQUFBLEVBQUFDLE9BQUEsRUFBQUMsTUFBQSxFQUFBQyxrQkFBQSxFQUFBQyxpQkFBQSxFQUFBQyxrQkFBQSxFQUFBQyxJQUFBLEVBQUFDLEtBQUEsRUFBQUMsS0FBQSxFQUFBQyxTQUFBLEVBQUFDLEtBQUEsRUFBQUMsSUFBQSxFQUFBQyxXQUFBLEVBQUFDLFlBQUEsRUFBQUMsU0FBQSxFQUFBQyxRQUFBLEVBQUFDLFNBQUEsRUFBQUMsT0FBQSxFQUFBQyxLQUFBLEVBQUFDLHFCQUFBLEVBQUFDLFlBQUEsRUFBQUMsT0FBQSxFQUFBQyxlQUFBLEVBQUFDLG9CQUFBLEVBQUFDLEVBQUEsRUFBQUMsR0FBQSxFQUFBQyxHQUFBLEVBQUFDLEdBQUE7TUFBQSxPQUFBcEMsbUJBQUEsQ0FBQXFDLElBQUEsV0FBQUMsUUFBQTtRQUFBLGtCQUFBQSxRQUFBLENBQUFDLElBQUEsR0FBQUQsUUFBQSxDQUFBRSxJQUFBO1VBQUE7WUFBQUYsUUFBQSxDQUFBQyxJQUFBO1lBRWY5QixNQUFNLElBQUFELGNBQUEsR0FBR0wsUUFBUSxDQUFDc0MsSUFBSSxjQUFBakMsY0FBQSx1QkFBYkEsY0FBQSxDQUFla0MsU0FBUyxDQUFDLENBQUM7WUFBQSxJQUNwQ2pDLE1BQU07Y0FBQTZCLFFBQUEsQ0FBQUUsSUFBQTtjQUFBO1lBQUE7WUFBQSxNQUNILElBQUlHLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQztVQUFBO1lBR2xDakMsT0FBTyxHQUFHLElBQUlrQyxXQUFXLENBQUMsQ0FBQztZQUM3QmpDLE1BQU0sR0FBRyxFQUFFO1lBQ1hDLGtCQUFrQixHQUFHLEVBQUU7WUFDdkJDLGlCQUFpQixHQUFHLEtBQUs7VUFBQTtZQUFBLEtBRXRCLElBQUk7Y0FBQXlCLFFBQUEsQ0FBQUUsSUFBQTtjQUFBO1lBQUE7WUFBQSxLQUNMbkQsWUFBWSxDQUFDTyxPQUFPO2NBQUEwQyxRQUFBLENBQUFFLElBQUE7Y0FBQTtZQUFBO1lBQ3RCL0IsTUFBTSxDQUFDb0MsTUFBTSxDQUFDLENBQUM7WUFBQSxPQUFBUCxRQUFBLENBQUFRLE1BQUE7VUFBQTtZQUFBUixRQUFBLENBQUFFLElBQUE7WUFBQSxPQUlhL0IsTUFBTSxDQUFDc0MsSUFBSSxDQUFDLENBQUM7VUFBQTtZQUFBakMsa0JBQUEsR0FBQXdCLFFBQUEsQ0FBQVUsSUFBQTtZQUFuQ2pDLElBQUksR0FBQUQsa0JBQUEsQ0FBSkMsSUFBSTtZQUFFQyxLQUFLLEdBQUFGLGtCQUFBLENBQUxFLEtBQUs7WUFBQSxLQUNmRCxJQUFJO2NBQUF1QixRQUFBLENBQUFFLElBQUE7Y0FBQTtZQUFBO1lBQUEsT0FBQUYsUUFBQSxDQUFBUSxNQUFBO1VBQUE7WUFBQSxLQUlKekQsWUFBWSxDQUFDTyxPQUFPO2NBQUEwQyxRQUFBLENBQUFFLElBQUE7Y0FBQTtZQUFBO1lBQ3RCL0IsTUFBTSxDQUFDb0MsTUFBTSxDQUFDLENBQUM7WUFBQSxPQUFBUCxRQUFBLENBQUFRLE1BQUE7VUFBQTtZQUlqQm5DLE1BQU0sSUFBSUQsT0FBTyxDQUFDdUMsTUFBTSxDQUFDakMsS0FBSyxFQUFFO2NBQUVrQyxNQUFNLEVBQUU7WUFBSyxDQUFDLENBQUM7WUFDM0NqQyxLQUFLLEdBQUdOLE1BQU0sQ0FBQ3dDLEtBQUssQ0FBQyxNQUFNLENBQUM7WUFDbEN4QyxNQUFNLEdBQUdNLEtBQUssQ0FBQ21DLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRTtZQUFBbEMsU0FBQSxHQUFBbUMsMEJBQUEsQ0FFUHBDLEtBQUs7WUFBQXFCLFFBQUEsQ0FBQUMsSUFBQTtZQUFBckIsU0FBQSxDQUFBb0MsQ0FBQTtVQUFBO1lBQUEsS0FBQW5DLEtBQUEsR0FBQUQsU0FBQSxDQUFBcUMsQ0FBQSxJQUFBeEMsSUFBQTtjQUFBdUIsUUFBQSxDQUFBRSxJQUFBO2NBQUE7WUFBQTtZQUFicEIsSUFBSSxHQUFBRCxLQUFBLENBQUFILEtBQUE7WUFBQSxNQUNUSSxJQUFJLENBQUNvQyxJQUFJLENBQUMsQ0FBQyxLQUFLLEVBQUU7Y0FBQWxCLFFBQUEsQ0FBQUUsSUFBQTtjQUFBO1lBQUE7WUFBQSxPQUFBRixRQUFBLENBQUFRLE1BQUE7VUFBQTtZQUFBekIsV0FBQSxHQUVRRCxJQUFJLENBQUMrQixLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUE3QixZQUFBLEdBQUFqRCxjQUFBLENBQUFnRCxXQUFBLE1BQXZDRSxTQUFTLEdBQUFELFlBQUEsS0FBRUUsUUFBUSxHQUFBRixZQUFBO1lBQUEsTUFDdEIsQ0FBQ0MsU0FBUyxJQUFJLENBQUNDLFFBQVE7Y0FBQWMsUUFBQSxDQUFBRSxJQUFBO2NBQUE7WUFBQTtZQUFBLE9BQUFGLFFBQUEsQ0FBQVEsTUFBQTtVQUFBO1lBRXJCckIsU0FBUyxHQUFHRixTQUFTLENBQUNrQyxPQUFPLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQyxDQUFDRCxJQUFJLENBQUMsQ0FBQztZQUNuRDlCLE9BQU8sR0FBR0YsUUFBUSxDQUFDaUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQ0QsSUFBSSxDQUFDLENBQUM7WUFBQWxCLFFBQUEsQ0FBQUMsSUFBQTtZQUc3Q2pFLEtBQUksR0FBR29GLElBQUksQ0FBQ0MsS0FBSyxDQUFDakMsT0FBTyxDQUFDO1lBQUFPLEVBQUEsR0FFeEJSLFNBQVM7WUFBQWEsUUFBQSxDQUFBRSxJQUFBLEdBQUFQLEVBQUEsS0FDVixPQUFPLFFBQUFBLEVBQUEsS0FZUCxNQUFNLFFBQUFBLEVBQUEsS0FTTixVQUFVLFFBQUFBLEVBQUEsS0FVVixtQkFBbUIsUUFBQUEsRUFBQSxLQU9uQixPQUFPO1lBQUE7VUFBQTtZQXJDVixJQUFJLENBQUNwQixpQkFBaUIsRUFBRTtjQUN0QkEsaUJBQWlCLEdBQUcsSUFBSTtjQUN4QjlCLFlBQVksQ0FBQyxJQUFJLENBQUM7Y0FDbEJJLGlCQUFpQixDQUFDakIsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxDQUFDO2NBQ3BDLENBQUEwRCxxQkFBQSxHQUFBcEMsaUJBQWlCLENBQUNJLE9BQU8sY0FBQWdDLHFCQUFBLGVBQXpCQSxxQkFBQSxDQUFBZ0MsSUFBQSxDQUFBcEUsaUJBQTRCLENBQUM7WUFDL0I7WUFDQW9CLGtCQUFrQixJQUFJdEMsS0FBSSxDQUFDdUYsT0FBTztZQUNsQ3RGLE9BQU8sQ0FBQ3FDLGtCQUFrQixDQUFDO1lBQzNCLENBQUFSLHFCQUFBLEdBQUFkLGlCQUFpQixDQUFDTSxPQUFPLGNBQUFRLHFCQUFBLGVBQXpCQSxxQkFBQSxDQUFBd0QsSUFBQSxDQUFBdEUsaUJBQWlCLEVBQVdzQixrQkFBa0IsRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDO1lBQUEsT0FBQTBCLFFBQUEsQ0FBQVEsTUFBQTtVQUFBO1lBSXpEO1lBQ0EsSUFBSXhFLEtBQUksQ0FBQ3dGLE9BQU8sSUFBSSxPQUFPeEYsS0FBSSxDQUFDd0YsT0FBTyxLQUFLLFFBQVEsRUFBRTtjQUNwRDtjQUNBbkYsVUFBVSxDQUFDLElBQUksQ0FBQztjQUNoQlEsaUJBQWlCLENBQUNiLEtBQUksQ0FBQ3dGLE9BQU8sQ0FBQztZQUNqQztZQUFDLE9BQUF4QixRQUFBLENBQUFRLE1BQUE7VUFBQTtZQUlLakIsWUFBWSxHQUFHdkQsS0FBSSxDQUFDdUYsT0FBTyxJQUFJakQsa0JBQWtCO1lBQ2pEa0IsT0FBTyxHQUFHeEQsS0FBSSxDQUFDd0QsT0FBTyxJQUFJLElBQUk7WUFDOUJDLGVBQWUsR0FBR3pELEtBQUksQ0FBQ3lGLGlCQUFpQixJQUFJLEVBQUU7WUFDcER4RixPQUFPLENBQUNzRCxZQUFZLENBQUM7WUFDckI5QyxZQUFZLENBQUMsS0FBSyxDQUFDO1lBQ25CSSxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsRUFBQztZQUN4QixDQUFBa0IscUJBQUEsR0FBQWQsaUJBQWlCLENBQUNLLE9BQU8sY0FBQVMscUJBQUEsZUFBekJBLHFCQUFBLENBQUF1RCxJQUFBLENBQUFyRSxpQkFBaUIsRUFBV3NDLFlBQVksRUFBRUMsT0FBTyxFQUFFQyxlQUFlLENBQUM7WUFBQSxPQUFBTyxRQUFBLENBQUFRLE1BQUE7VUFBQTtZQUluRS9ELFlBQVksQ0FBQyxLQUFLLENBQUM7WUFDbkJKLFVBQVUsQ0FBQyxLQUFLLENBQUM7WUFDakJRLGlCQUFpQixDQUFDLElBQUksQ0FBQyxFQUFDO1lBQ3hCLENBQUFtQixxQkFBQSxHQUFBWCxxQkFBcUIsQ0FBQ0MsT0FBTyxjQUFBVSxxQkFBQSxlQUE3QkEscUJBQUEsQ0FBQXNELElBQUEsQ0FBQWpFLHFCQUFxQixFQUFXckIsS0FBSSxFQUFFc0Msa0JBQWtCLENBQUM7WUFBQSxPQUFBMEIsUUFBQSxDQUFBUSxNQUFBO1VBQUE7WUFJekRrQixPQUFPLENBQUNDLEtBQUssQ0FBQyxZQUFZLEVBQUUzRixLQUFJLENBQUMyRixLQUFLLENBQUM7WUFDdkNsRixZQUFZLENBQUMsS0FBSyxDQUFDO1lBQ25CSSxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsRUFBQztZQUN4QixDQUFBb0IsbUJBQUEsR0FBQWIsVUFBVSxDQUFDRSxPQUFPLGNBQUFXLG1CQUFBLGVBQWxCQSxtQkFBQSxDQUFBcUQsSUFBQSxDQUFBbEUsVUFBcUIsQ0FBQztZQUFBLE9BQUE0QyxRQUFBLENBQUFRLE1BQUE7VUFBQTtZQUl0QmtCLE9BQU8sQ0FBQ0UsSUFBSSxDQUFDLHlCQUF5QixFQUFFekMsU0FBUyxDQUFDO1VBQUE7WUFBQWEsUUFBQSxDQUFBRSxJQUFBO1lBQUE7VUFBQTtZQUFBRixRQUFBLENBQUFDLElBQUE7WUFBQUwsR0FBQSxHQUFBSSxRQUFBO1lBR3REMEIsT0FBTyxDQUFDQyxLQUFLLENBQUMseUJBQXlCLEVBQUEvQixHQUFBLEVBQWNSLE9BQU8sQ0FBQztVQUFBO1lBQUFZLFFBQUEsQ0FBQUUsSUFBQTtZQUFBO1VBQUE7WUFBQUYsUUFBQSxDQUFBRSxJQUFBO1lBQUE7VUFBQTtZQUFBRixRQUFBLENBQUFDLElBQUE7WUFBQUosR0FBQSxHQUFBRyxRQUFBO1lBQUFwQixTQUFBLENBQUFpRCxDQUFBLENBQUFoQyxHQUFBO1VBQUE7WUFBQUcsUUFBQSxDQUFBQyxJQUFBO1lBQUFyQixTQUFBLENBQUFrRCxDQUFBO1lBQUEsT0FBQTlCLFFBQUEsQ0FBQStCLE1BQUE7VUFBQTtZQUFBL0IsUUFBQSxDQUFBRSxJQUFBO1lBQUE7VUFBQTtZQUFBRixRQUFBLENBQUFFLElBQUE7WUFBQTtVQUFBO1lBQUFGLFFBQUEsQ0FBQUMsSUFBQTtZQUFBSCxHQUFBLEdBQUFFLFFBQUE7WUFLbkV2RCxZQUFZLENBQUMsS0FBSyxDQUFDOztZQUVuQjtZQUNBLElBQUksQ0FBQ00sWUFBWSxDQUFDTyxPQUFPLEVBQUU7Y0FDekIsQ0FBQW9DLG9CQUFBLEdBQUF0QyxVQUFVLENBQUNFLE9BQU8sY0FBQW9DLG9CQUFBLGVBQWxCQSxvQkFBQSxDQUFBNEIsSUFBQSxDQUFBbEUsVUFBcUIsQ0FBQztZQUN4QjtVQUFDO1lBQUE0QyxRQUFBLENBQUFDLElBQUE7WUFFRDVELFVBQVUsQ0FBQyxLQUFLLENBQUM7WUFDakJJLFlBQVksQ0FBQyxLQUFLLENBQUM7WUFDbkJJLGlCQUFpQixDQUFDLElBQUksQ0FBQztZQUFBLE9BQUFtRCxRQUFBLENBQUErQixNQUFBO1VBQUE7VUFBQTtZQUFBLE9BQUEvQixRQUFBLENBQUFnQyxJQUFBO1FBQUE7TUFBQSxHQUFBcEUsT0FBQTtJQUFBLENBRTFCO0lBQUEsaUJBQUFxRSxFQUFBO01BQUEsT0FBQXpFLEtBQUEsQ0FBQTBFLEtBQUEsT0FBQUMsU0FBQTtJQUFBO0VBQUEsS0FDRCxDQUFDdkcsQ0FBQyxDQUNKLENBQUM7RUFFRCxJQUFNd0csT0FBTztJQUFBLElBQUFDLEtBQUEsR0FBQTVFLGlCQUFBLGNBQUFDLG1CQUFBLENBQUFDLElBQUEsQ0FBRyxTQUFBMkUsU0FBQUMsS0FBQTtNQUFBLElBQUFmLE9BQUEsRUFBQWdCLE9BQUEsRUFBQUMsU0FBQSxFQUFBQyxJQUFBLEVBQUFDLE1BQUEsRUFBQUMsU0FBQSxFQUFBQyxNQUFBLEVBQUFDLFNBQUEsRUFBQUMsUUFBQSxFQUFBQyxVQUFBLEVBQUFDLFNBQUEsRUFBQUMsT0FBQSxFQUFBQyxpQkFBQSxFQUFBQyxrQkFBQSxFQUFBQyxXQUFBLEVBQUFDLFdBQUEsRUFBQUMsS0FBQSxFQUFBQyxxQkFBQSxFQUFBM0YsUUFBQSxFQUFBNEYsR0FBQTtNQUFBLE9BQUEvRixtQkFBQSxDQUFBcUMsSUFBQSxXQUFBMkQsU0FBQTtRQUFBLGtCQUFBQSxTQUFBLENBQUF6RCxJQUFBLEdBQUF5RCxTQUFBLENBQUF4RCxJQUFBO1VBQUE7WUFDZHNCLE9BQU8sR0FBQWUsS0FBQSxDQUFQZixPQUFPLEVBQ1BnQixPQUFPLEdBQUFELEtBQUEsQ0FBUEMsT0FBTyxFQUNQQyxTQUFTLEdBQUFGLEtBQUEsQ0FBVEUsU0FBUyxFQUNUQyxJQUFJLEdBQUFILEtBQUEsQ0FBSkcsSUFBSSxFQUNKQyxNQUFNLEdBQUFKLEtBQUEsQ0FBTkksTUFBTSxFQUNOQyxTQUFTLEdBQUFMLEtBQUEsQ0FBVEssU0FBUyxFQUNUQyxNQUFNLEdBQUFOLEtBQUEsQ0FBTk0sTUFBTSxFQUNOQyxTQUFTLEdBQUFQLEtBQUEsQ0FBVE8sU0FBUyxFQUNUQyxRQUFRLEdBQUFSLEtBQUEsQ0FBUlEsUUFBUSxFQUNSQyxVQUFVLEdBQUFULEtBQUEsQ0FBVlMsVUFBVSxFQUNWQyxTQUFTLEdBQUFWLEtBQUEsQ0FBVFUsU0FBUyxFQUNUQyxPQUFPLEdBQUFYLEtBQUEsQ0FBUFcsT0FBTyxFQUNQQyxpQkFBaUIsR0FBQVosS0FBQSxDQUFqQlksaUJBQWlCLEVBQ2pCQyxrQkFBa0IsR0FBQWIsS0FBQSxDQUFsQmEsa0JBQWtCLEVBQ2xCQyxXQUFXLEdBQUFkLEtBQUEsQ0FBWGMsV0FBVyxFQUNYQyxXQUFXLEdBQUFmLEtBQUEsQ0FBWGUsV0FBVyxFQUNYQyxLQUFLLEdBQUFoQixLQUFBLENBQUxnQixLQUFLO1lBQUFHLFNBQUEsQ0FBQXpELElBQUE7WUFxQkg1RCxVQUFVLENBQUMsSUFBSSxDQUFDO1lBQ2hCSSxZQUFZLENBQUMsS0FBSyxDQUFDO1lBQ25CUixPQUFPLENBQUMsSUFBSSxDQUFDO1lBQ2JZLGlCQUFpQixDQUFDLElBQUksQ0FBQztZQUN2QkUsWUFBWSxDQUFDTyxPQUFPLEdBQUcsS0FBSyxFQUFDOztZQUU3QlIsa0JBQWtCLENBQUNRLE9BQU8sR0FBRyxJQUFJcUcsZUFBZSxDQUFDLENBQUM7WUFBQUQsU0FBQSxDQUFBeEQsSUFBQTtZQUFBLE9BRTNCbEYsSUFBSSxDQUFDNEksWUFBWSxDQUFDQyxZQUFZLENBQUFDLGFBQUEsQ0FBQUEsYUFBQSxDQUFBQSxhQUFBLENBQUFBLGFBQUEsQ0FBQUEsYUFBQTtjQUVqREMsS0FBSyxFQUFFdkMsT0FBTztjQUNkZ0IsT0FBTyxFQUFQQSxPQUFPO2NBQ1BFLElBQUksRUFBSkEsSUFBSTtjQUNKQyxNQUFNLEVBQU5BLE1BQU07Y0FDTkMsU0FBUyxFQUFUQSxTQUFTO2NBQ1RDLE1BQU0sRUFBTkEsTUFBTTtjQUNOQyxTQUFTLEVBQVRBLFNBQVM7Y0FDVEMsUUFBUSxFQUFSQSxRQUFRO2NBQ1JFLFNBQVMsRUFBVEEsU0FBUztjQUNUQyxPQUFPLEVBQVBBLE9BQU87Y0FDUEMsaUJBQWlCLEVBQWpCQSxpQkFBaUI7Y0FDakJDLGtCQUFrQixFQUFsQkE7WUFBa0IsR0FDZFgsU0FBUyxHQUFHO2NBQUVBLFNBQVMsRUFBVEE7WUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQzlCWSxXQUFXLEdBQUc7Y0FBRUEsV0FBVyxFQUFYQTtZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsR0FDbENDLFdBQVcsR0FBRztjQUFFQSxXQUFXLEVBQVhBO1lBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUNsQ04sVUFBVSxHQUFHO2NBQUVBLFVBQVUsRUFBVkE7WUFBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQ2hDTyxLQUFLLEdBQUc7Y0FBRUEsS0FBSyxFQUFMQTtZQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBQUMscUJBQUEsR0FFNUIxRyxrQkFBa0IsQ0FBQ1EsT0FBTyxjQUFBa0cscUJBQUEsdUJBQTFCQSxxQkFBQSxDQUE0QlEsTUFDOUIsQ0FBQztVQUFBO1lBckJLbkcsUUFBUSxHQUFBNkYsU0FBQSxDQUFBaEQsSUFBQTtZQUFBZ0QsU0FBQSxDQUFBeEQsSUFBQTtZQUFBLE9BdUJSM0MsZUFBZSxDQUFDTSxRQUFRLENBQUM7VUFBQTtZQUFBNkYsU0FBQSxDQUFBeEQsSUFBQTtZQUFBO1VBQUE7WUFBQXdELFNBQUEsQ0FBQXpELElBQUE7WUFBQXdELEdBQUEsR0FBQUMsU0FBQTtZQUUvQmxJLE9BQU8sYUFBUEEsT0FBTyxlQUFQQSxPQUFPLENBQUcsQ0FBQztZQUNYYSxVQUFVLENBQUMsS0FBSyxDQUFDO1VBQUE7VUFBQTtZQUFBLE9BQUFxSCxTQUFBLENBQUExQixJQUFBO1FBQUE7TUFBQSxHQUFBTSxRQUFBO0lBQUEsQ0FFcEI7SUFBQSxnQkExRUtGLE9BQU9BLENBQUE2QixHQUFBO01BQUEsT0FBQTVCLEtBQUEsQ0FBQUgsS0FBQSxPQUFBQyxTQUFBO0lBQUE7RUFBQSxHQTBFWjtFQUVELElBQU0rQixhQUFhLEdBQUdySixXQUFXLENBQUMsWUFBTTtJQUN0QyxJQUFJaUMsa0JBQWtCLENBQUNRLE9BQU8sRUFBRTtNQUFBLElBQUE2RyxrQkFBQTtNQUM5QnBILFlBQVksQ0FBQ08sT0FBTyxHQUFHLElBQUk7TUFDM0JSLGtCQUFrQixDQUFDUSxPQUFPLENBQUM4RyxLQUFLLENBQUMsQ0FBQztNQUNsQ3RILGtCQUFrQixDQUFDUSxPQUFPLEdBQUcsSUFBSTtNQUNqQ2pCLFVBQVUsQ0FBQyxLQUFLLENBQUM7TUFDakJJLFlBQVksQ0FBQyxLQUFLLENBQUM7TUFDbkJJLGlCQUFpQixDQUFDLElBQUksQ0FBQztNQUN2QixDQUFBc0gsa0JBQUEsR0FBQWhILFNBQVMsQ0FBQ0csT0FBTyxjQUFBNkcsa0JBQUEsZUFBakJBLGtCQUFBLENBQUE3QyxJQUFBLENBQUFuRSxTQUFvQixDQUFDO0lBQ3ZCO0VBQ0YsQ0FBQyxFQUFFLEVBQUUsQ0FBQztFQUVOLElBQU1rSCxLQUFLLEdBQUcsU0FBUkEsS0FBS0EsQ0FBQSxFQUFTO0lBQ2xCcEksT0FBTyxDQUFDLElBQUksQ0FBQztJQUNiSSxVQUFVLENBQUMsS0FBSyxDQUFDO0lBQ2pCSSxZQUFZLENBQUMsS0FBSyxDQUFDO0lBQ25CSSxpQkFBaUIsQ0FBQyxJQUFJLENBQUM7SUFDdkJFLFlBQVksQ0FBQ08sT0FBTyxHQUFHLEtBQUs7RUFDOUIsQ0FBQztFQUVELE9BQU87SUFDTDhFLE9BQU8sRUFBUEEsT0FBTztJQUNQdkUsUUFBUSxFQUFFN0IsSUFBSTtJQUNkSSxTQUFTLEVBQVRBLFNBQVM7SUFDVEksU0FBUyxFQUFUQSxTQUFTO0lBQ1RJLGNBQWMsRUFBZEEsY0FBYztJQUNkeUgsS0FBSyxFQUFMQSxLQUFLO0lBQ0xILGFBQWEsRUFBYkEsYUFBYTtJQUNiM0csZUFBZSxFQUFmQSxlQUFlLENBQUU7RUFDbkIsQ0FBQztBQUNILENBQUMiLCJpZ25vcmVMaXN0IjpbXX0=
329
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VTdGF0ZSIsInVzZUNhbGxiYWNrIiwidXNlUmVmIiwidXNlVHJhbnNsYXRpb24iLCJtYWlhIiwiU0VDVElPTlMiLCJ1c2VPcmNoZXN0cmF0b3JTdHJlYW0iLCJfcmVmIiwib25TdHJlYW1VcGRhdGUiLCJvbkZpbmlzaFN0cmVhbSIsIm9uU3RhcnRXcml0aW5nIiwib25TdG9wIiwib25FcnJvciIsIm9uQXBwcm92YWxSZXF1aXJlZCIsIl91c2VUcmFuc2xhdGlvbiIsImNoYXRBSSIsInQiLCJfdXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkiLCJkYXRhIiwic2V0RGF0YSIsIl91c2VTdGF0ZTMiLCJfdXNlU3RhdGU0IiwiaXNMb2FkaW5nIiwic2V0TG9hZGluZyIsIl91c2VTdGF0ZTUiLCJfdXNlU3RhdGU2IiwiaXNXcml0aW5nIiwic2V0SXNXcml0aW5nIiwiX3VzZVN0YXRlNyIsIl91c2VTdGF0ZTgiLCJsb2FkaW5nTWVzc2FnZSIsInNldExvYWRpbmdNZXNzYWdlIiwiYWJvcnRDb250cm9sbGVyUmVmIiwiaXNTdG9wcGVkUmVmIiwib25TdHJlYW1VcGRhdGVSZWYiLCJvbkZpbmlzaFN0cmVhbVJlZiIsIm9uU3RhcnRXcml0aW5nUmVmIiwib25TdG9wUmVmIiwib25FcnJvclJlZiIsIm9uQXBwcm92YWxSZXF1aXJlZFJlZiIsImN1cnJlbnQiLCJoYW5kbGVTU0VTdHJlYW0iLCJfcmVmMiIsIl9hc3luY1RvR2VuZXJhdG9yIiwiX3JlZ2VuZXJhdG9yUnVudGltZSIsIm1hcmsiLCJfY2FsbGVlIiwicmVzcG9uc2UiLCJfb25TdHJlYW1VcGRhdGVSZWYkY3UiLCJfb25GaW5pc2hTdHJlYW1SZWYkY3UiLCJfb25BcHByb3ZhbFJlcXVpcmVkUmUiLCJfb25FcnJvclJlZiRjdXJyZW50IiwiX3Jlc3BvbnNlJGJvZHkiLCJyZWFkZXIiLCJkZWNvZGVyIiwiYnVmZmVyIiwiYWNjdW11bGF0ZWRDb250ZW50IiwiaGFzU3RhcnRlZFdyaXRpbmciLCJfeWllbGQkcmVhZGVyJHJlYWQiLCJkb25lIiwidmFsdWUiLCJsaW5lcyIsIl9pdGVyYXRvciIsIl9zdGVwIiwibGluZSIsIl9saW5lJHNwbGl0IiwiX2xpbmUkc3BsaXQyIiwiZXZlbnRMaW5lIiwiZGF0YUxpbmUiLCJldmVudFR5cGUiLCJkYXRhU3RyIiwiX2RhdGEiLCJfb25TdGFydFdyaXRpbmdSZWYkY3UiLCJmaW5hbENvbnRlbnQiLCJzb3VyY2VzIiwibWVtb3J5U2Vzc2lvbklkIiwiX29uRXJyb3JSZWYkY3VycmVudDIiLCJfdCIsIl90MiIsIl90MyIsIl90NCIsIndyYXAiLCJfY29udGV4dCIsInByZXYiLCJuZXh0IiwiYm9keSIsImdldFJlYWRlciIsIkVycm9yIiwiVGV4dERlY29kZXIiLCJjYW5jZWwiLCJhYnJ1cHQiLCJyZWFkIiwic2VudCIsImRlY29kZSIsInN0cmVhbSIsInNwbGl0IiwicG9wIiwiX2NyZWF0ZUZvck9mSXRlcmF0b3JIZWxwZXIiLCJzIiwibiIsInRyaW0iLCJyZXBsYWNlIiwiSlNPTiIsInBhcnNlIiwiY2FsbCIsImNvbnRlbnQiLCJtZXNzYWdlIiwibWVtb3J5X3Nlc3Npb25faWQiLCJjb25zb2xlIiwiZXJyb3IiLCJ3YXJuIiwiZSIsImYiLCJmaW5pc2giLCJzdG9wIiwiX3giLCJhcHBseSIsImFyZ3VtZW50cyIsImFza01haWEiLCJfcmVmNCIsIl9jYWxsZWUyIiwiX3JlZjMiLCJoaXN0b3J5IiwicHJvamVjdElkIiwibGFuZyIsInVzZXJJZCIsImNvbXBhbnlJZCIsImNoYXRJZCIsIm1lc3NhZ2VJZCIsImNsaWVudElkIiwiYWdlbnROYW1lIiwiYWdlbnRJZCIsImlzV2ViU2VhcmNoQWN0aXZlIiwiaXNEZWVwU2VhcmNoQWN0aXZlIiwiYXR0YWNobWVudHMiLCJwcm9qZWN0TmFtZSIsImZhcUlkIiwiX2Fib3J0Q29udHJvbGxlclJlZiRjIiwiX3Q1IiwiX2NvbnRleHQyIiwiQWJvcnRDb250cm9sbGVyIiwiT3JjaGVzdHJhdG9yIiwib3JjaGVzdHJhdG9yIiwiX29iamVjdFNwcmVhZCIsImlucHV0Iiwic2lnbmFsIiwiX3gyIiwic3RvcFN0cmVhbWluZyIsIl9vblN0b3BSZWYkY3VycmVudCIsImFib3J0IiwicmVzZXQiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaG9va3MvdXNlT3JjaGVzdHJhdG9yU3RyZWFtL3VzZU9yY2hlc3RyYXRvclN0cmVhbS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBuby1jb25zb2xlICovXG4vKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tc2hhZG93ICovXG4vKiBlc2xpbnQtZGlzYWJsZSBuby1jb25zdGFudC1jb25kaXRpb24gKi9cbi8qIGVzbGludC1kaXNhYmxlIG5vLWNvbnRpbnVlICovXG4vKiBlc2xpbnQtZGlzYWJsZSBuby1hd2FpdC1pbi1sb29wICovXG4vKiBlc2xpbnQtZGlzYWJsZSBuby1jYXNlLWRlY2xhcmF0aW9ucyAqL1xuLyogZXNsaW50LWRpc2FibGUgbm8tcmVzdHJpY3RlZC1zeW50YXggKi9cbi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnkgKi9cbmltcG9ydCB7IHVzZVN0YXRlLCB1c2VDYWxsYmFjaywgdXNlUmVmIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyB1c2VUcmFuc2xhdGlvbiB9IGZyb20gJ3JlYWN0LWkxOG5leHQnXG5pbXBvcnQgeyBBdHRhY2htZW50RmlsZSB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvbW9sZWN1bGVzL0NoYXRGb290ZXIvQ2hhdEZvb3RlcidcbmltcG9ydCBtYWlhIGZyb20gJy4uLy4uL3NlcnZpY2VzL21haWEnXG5pbXBvcnQgeyBDaGF0SGlzdG9yeSB9IGZyb20gJy4uLy4uL3R5cGVzL0NoYXQnXG5pbXBvcnQgeyBVc2VPcmNoZXN0cmF0b3JTdHJlYW1Qcm9wcyB9IGZyb20gJy4vdXNlT3JjaGVzdHJhdG9yU3RyZWFtLmludGVyZmFjZSdcbmltcG9ydCB7IFNFQ1RJT05TIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzL2NvbmZpZydcblxuZXhwb3J0IGNvbnN0IHVzZU9yY2hlc3RyYXRvclN0cmVhbSA9ICh7XG4gIG9uU3RyZWFtVXBkYXRlLFxuICBvbkZpbmlzaFN0cmVhbSxcbiAgb25TdGFydFdyaXRpbmcsXG4gIG9uU3RvcCxcbiAgb25FcnJvcixcbiAgb25BcHByb3ZhbFJlcXVpcmVkLFxufTogVXNlT3JjaGVzdHJhdG9yU3RyZWFtUHJvcHMpID0+IHtcbiAgY29uc3QgeyB0IH0gPSB1c2VUcmFuc2xhdGlvbihbU0VDVElPTlMuY2hhdEFJXSlcbiAgY29uc3QgW2RhdGEsIHNldERhdGFdID0gdXNlU3RhdGU8c3RyaW5nIHwgbnVsbD4obnVsbClcbiAgY29uc3QgW2lzTG9hZGluZywgc2V0TG9hZGluZ10gPSB1c2VTdGF0ZShmYWxzZSlcbiAgY29uc3QgW2lzV3JpdGluZywgc2V0SXNXcml0aW5nXSA9IHVzZVN0YXRlKGZhbHNlKVxuICBjb25zdCBbbG9hZGluZ01lc3NhZ2UsIHNldExvYWRpbmdNZXNzYWdlXSA9IHVzZVN0YXRlPHN0cmluZyB8IG51bGw+KG51bGwpXG4gIGNvbnN0IGFib3J0Q29udHJvbGxlclJlZiA9IHVzZVJlZjxBYm9ydENvbnRyb2xsZXIgfCBudWxsPihudWxsKVxuICBjb25zdCBpc1N0b3BwZWRSZWYgPSB1c2VSZWYoZmFsc2UpXG5cbiAgY29uc3Qgb25TdHJlYW1VcGRhdGVSZWYgPSB1c2VSZWYob25TdHJlYW1VcGRhdGUpXG4gIGNvbnN0IG9uRmluaXNoU3RyZWFtUmVmID0gdXNlUmVmKG9uRmluaXNoU3RyZWFtKVxuICBjb25zdCBvblN0YXJ0V3JpdGluZ1JlZiA9IHVzZVJlZihvblN0YXJ0V3JpdGluZylcbiAgY29uc3Qgb25TdG9wUmVmID0gdXNlUmVmKG9uU3RvcClcbiAgY29uc3Qgb25FcnJvclJlZiA9IHVzZVJlZihvbkVycm9yKVxuICBjb25zdCBvbkFwcHJvdmFsUmVxdWlyZWRSZWYgPSB1c2VSZWYob25BcHByb3ZhbFJlcXVpcmVkKVxuXG4gIG9uU3RyZWFtVXBkYXRlUmVmLmN1cnJlbnQgPSBvblN0cmVhbVVwZGF0ZVxuICBvbkZpbmlzaFN0cmVhbVJlZi5jdXJyZW50ID0gb25GaW5pc2hTdHJlYW1cbiAgb25TdGFydFdyaXRpbmdSZWYuY3VycmVudCA9IG9uU3RhcnRXcml0aW5nXG4gIG9uU3RvcFJlZi5jdXJyZW50ID0gb25TdG9wXG4gIG9uRXJyb3JSZWYuY3VycmVudCA9IG9uRXJyb3JcbiAgb25BcHByb3ZhbFJlcXVpcmVkUmVmLmN1cnJlbnQgPSBvbkFwcHJvdmFsUmVxdWlyZWRcblxuICBjb25zdCBoYW5kbGVTU0VTdHJlYW0gPSB1c2VDYWxsYmFjayhcbiAgICBhc3luYyAocmVzcG9uc2U6IFJlc3BvbnNlKSA9PiB7XG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCByZWFkZXIgPSByZXNwb25zZS5ib2R5Py5nZXRSZWFkZXIoKVxuICAgICAgICBpZiAoIXJlYWRlcikge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcignTm8gcmVhZGVyIGF2YWlsYWJsZScpXG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBkZWNvZGVyID0gbmV3IFRleHREZWNvZGVyKClcbiAgICAgICAgbGV0IGJ1ZmZlciA9ICcnXG4gICAgICAgIGxldCBhY2N1bXVsYXRlZENvbnRlbnQgPSAnJ1xuICAgICAgICBsZXQgaGFzU3RhcnRlZFdyaXRpbmcgPSBmYWxzZVxuXG4gICAgICAgIHdoaWxlICh0cnVlKSB7XG4gICAgICAgICAgaWYgKGlzU3RvcHBlZFJlZi5jdXJyZW50KSB7XG4gICAgICAgICAgICByZWFkZXIuY2FuY2VsKClcbiAgICAgICAgICAgIGJyZWFrXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY29uc3QgeyBkb25lLCB2YWx1ZSB9ID0gYXdhaXQgcmVhZGVyLnJlYWQoKVxuICAgICAgICAgIGlmIChkb25lKSB7XG4gICAgICAgICAgICBicmVha1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChpc1N0b3BwZWRSZWYuY3VycmVudCkge1xuICAgICAgICAgICAgcmVhZGVyLmNhbmNlbCgpXG4gICAgICAgICAgICBicmVha1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGJ1ZmZlciArPSBkZWNvZGVyLmRlY29kZSh2YWx1ZSwgeyBzdHJlYW06IHRydWUgfSlcbiAgICAgICAgICBjb25zdCBsaW5lcyA9IGJ1ZmZlci5zcGxpdCgnXFxuXFxuJylcbiAgICAgICAgICBidWZmZXIgPSBsaW5lcy5wb3AoKSB8fCAnJ1xuXG4gICAgICAgICAgZm9yIChjb25zdCBsaW5lIG9mIGxpbmVzKSB7XG4gICAgICAgICAgICBpZiAobGluZS50cmltKCkgPT09ICcnKSBjb250aW51ZVxuXG4gICAgICAgICAgICBjb25zdCBbZXZlbnRMaW5lLCBkYXRhTGluZV0gPSBsaW5lLnNwbGl0KCdcXG4nKVxuICAgICAgICAgICAgaWYgKCFldmVudExpbmUgfHwgIWRhdGFMaW5lKSBjb250aW51ZVxuXG4gICAgICAgICAgICBjb25zdCBldmVudFR5cGUgPSBldmVudExpbmUucmVwbGFjZSgnZXZlbnQ6ICcsICcnKS50cmltKClcbiAgICAgICAgICAgIGNvbnN0IGRhdGFTdHIgPSBkYXRhTGluZS5yZXBsYWNlKCdkYXRhOiAnLCAnJykudHJpbSgpXG5cbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgIGNvbnN0IGRhdGEgPSBKU09OLnBhcnNlKGRhdGFTdHIpXG5cbiAgICAgICAgICAgICAgc3dpdGNoIChldmVudFR5cGUpIHtcbiAgICAgICAgICAgICAgICBjYXNlICd0b2tlbic6XG4gICAgICAgICAgICAgICAgICBpZiAoIWhhc1N0YXJ0ZWRXcml0aW5nKSB7XG4gICAgICAgICAgICAgICAgICAgIGhhc1N0YXJ0ZWRXcml0aW5nID0gdHJ1ZVxuICAgICAgICAgICAgICAgICAgICBzZXRJc1dyaXRpbmcodHJ1ZSlcbiAgICAgICAgICAgICAgICAgICAgc2V0TG9hZGluZ01lc3NhZ2UodCgnY2hhdC53cml0aW5nJykpXG4gICAgICAgICAgICAgICAgICAgIG9uU3RhcnRXcml0aW5nUmVmLmN1cnJlbnQ/LigpXG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBhY2N1bXVsYXRlZENvbnRlbnQgKz0gZGF0YS5jb250ZW50XG4gICAgICAgICAgICAgICAgICBzZXREYXRhKGFjY3VtdWxhdGVkQ29udGVudClcbiAgICAgICAgICAgICAgICAgIG9uU3RyZWFtVXBkYXRlUmVmLmN1cnJlbnQ/LihhY2N1bXVsYXRlZENvbnRlbnQsIG51bGwsICcnKVxuICAgICAgICAgICAgICAgICAgYnJlYWtcblxuICAgICAgICAgICAgICAgIGNhc2UgJ25vZGUnOlxuICAgICAgICAgICAgICAgICAgLy8gU2kgZWwgZXZlbnRvIG5vZGUgdGllbmUgdW4gbWVuc2FqZSwgYWN0dWFsaXphcmxvIHBhcmEgbW9zdHJhcmxvIGVuIGVsIGxvYWRlclxuICAgICAgICAgICAgICAgICAgaWYgKGRhdGEubWVzc2FnZSAmJiB0eXBlb2YgZGF0YS5tZXNzYWdlID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgICAgICAgICAvLyBBc2VndXJhciBxdWUgaXNMb2FkaW5nIGVzdMOpIGVuIHRydWUgcGFyYSBtb3N0cmFyIGVsIGxvYWRlclxuICAgICAgICAgICAgICAgICAgICBzZXRMb2FkaW5nKHRydWUpXG4gICAgICAgICAgICAgICAgICAgIHNldExvYWRpbmdNZXNzYWdlKGRhdGEubWVzc2FnZSlcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIGJyZWFrXG5cbiAgICAgICAgICAgICAgICBjYXNlICdjb21wbGV0ZSc6XG4gICAgICAgICAgICAgICAgICBjb25zdCBmaW5hbENvbnRlbnQgPSBkYXRhLmNvbnRlbnQgfHwgYWNjdW11bGF0ZWRDb250ZW50XG4gICAgICAgICAgICAgICAgICBjb25zdCBzb3VyY2VzID0gZGF0YS5zb3VyY2VzIHx8IG51bGxcbiAgICAgICAgICAgICAgICAgIGNvbnN0IG1lbW9yeVNlc3Npb25JZCA9IGRhdGEubWVtb3J5X3Nlc3Npb25faWQgfHwgJydcbiAgICAgICAgICAgICAgICAgIHNldERhdGEoZmluYWxDb250ZW50KVxuICAgICAgICAgICAgICAgICAgc2V0SXNXcml0aW5nKGZhbHNlKVxuICAgICAgICAgICAgICAgICAgc2V0TG9hZGluZ01lc3NhZ2UobnVsbCkgLy8gTGltcGlhciBtZW5zYWplIGN1YW5kbyBzZSBjb21wbGV0YVxuICAgICAgICAgICAgICAgICAgb25GaW5pc2hTdHJlYW1SZWYuY3VycmVudD8uKGZpbmFsQ29udGVudCwgc291cmNlcywgbWVtb3J5U2Vzc2lvbklkKVxuICAgICAgICAgICAgICAgICAgYnJlYWtcblxuICAgICAgICAgICAgICAgIGNhc2UgJ2FwcHJvdmFsX3JlcXVpcmVkJzpcbiAgICAgICAgICAgICAgICAgIHNldElzV3JpdGluZyhmYWxzZSlcbiAgICAgICAgICAgICAgICAgIHNldExvYWRpbmcoZmFsc2UpXG4gICAgICAgICAgICAgICAgICBzZXRMb2FkaW5nTWVzc2FnZShudWxsKSAvLyBMaW1waWFyIG1lbnNhamUgY3VhbmRvIHNlIHJlcXVpZXJlIGFwcm9iYWNpw7NuXG4gICAgICAgICAgICAgICAgICBvbkFwcHJvdmFsUmVxdWlyZWRSZWYuY3VycmVudD8uKGRhdGEsIGFjY3VtdWxhdGVkQ29udGVudClcbiAgICAgICAgICAgICAgICAgIGJyZWFrXG5cbiAgICAgICAgICAgICAgICBjYXNlICdlcnJvcic6XG4gICAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKCdTU0UgRXJyb3I6JywgZGF0YS5lcnJvcilcbiAgICAgICAgICAgICAgICAgIHNldElzV3JpdGluZyhmYWxzZSlcbiAgICAgICAgICAgICAgICAgIHNldExvYWRpbmdNZXNzYWdlKG51bGwpIC8vIExpbXBpYXIgbWVuc2FqZSBjdWFuZG8gaGF5IGVycm9yXG4gICAgICAgICAgICAgICAgICBvbkVycm9yUmVmLmN1cnJlbnQ/LigpXG4gICAgICAgICAgICAgICAgICBicmVha1xuXG4gICAgICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAgIGNvbnNvbGUud2FybignVW5rbm93biBTU0UgZXZlbnQgdHlwZTonLCBldmVudFR5cGUpXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gY2F0Y2ggKHBhcnNlRXJyb3IpIHtcbiAgICAgICAgICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgcGFyc2luZyBTU0UgZGF0YTonLCBwYXJzZUVycm9yLCBkYXRhU3RyKVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgc2V0SXNXcml0aW5nKGZhbHNlKVxuXG4gICAgICAgIC8vIFNvbG8gZWplY3V0YXIgb25FcnJvciBzaSBubyBmdWUgdW4gc3RvcCBpbnRlbmNpb25hbFxuICAgICAgICBpZiAoIWlzU3RvcHBlZFJlZi5jdXJyZW50KSB7XG4gICAgICAgICAgb25FcnJvclJlZi5jdXJyZW50Py4oKVxuICAgICAgICB9XG4gICAgICB9IGZpbmFsbHkge1xuICAgICAgICBzZXRMb2FkaW5nKGZhbHNlKVxuICAgICAgICBzZXRJc1dyaXRpbmcoZmFsc2UpXG4gICAgICAgIHNldExvYWRpbmdNZXNzYWdlKG51bGwpXG4gICAgICB9XG4gICAgfSxcbiAgICBbdF1cbiAgKVxuXG4gIGNvbnN0IGFza01haWEgPSBhc3luYyAoe1xuICAgIG1lc3NhZ2UsXG4gICAgaGlzdG9yeSxcbiAgICBwcm9qZWN0SWQsXG4gICAgbGFuZyxcbiAgICB1c2VySWQsXG4gICAgY29tcGFueUlkLFxuICAgIGNoYXRJZCxcbiAgICBtZXNzYWdlSWQsXG4gICAgY2xpZW50SWQsXG4gICAgYWdlbnROYW1lLFxuICAgIGFnZW50SWQsXG4gICAgaXNXZWJTZWFyY2hBY3RpdmUsXG4gICAgaXNEZWVwU2VhcmNoQWN0aXZlLFxuICAgIGF0dGFjaG1lbnRzLFxuICAgIHByb2plY3ROYW1lLFxuICAgIGZhcUlkLFxuICB9OiB7XG4gICAgbWVzc2FnZTogc3RyaW5nXG4gICAgaGlzdG9yeTogQ2hhdEhpc3RvcnlbXVxuICAgIHByb2plY3RJZDogbnVtYmVyIHwgbnVsbFxuICAgIGxhbmc6IHN0cmluZ1xuICAgIHVzZXJJZDogc3RyaW5nXG4gICAgY29tcGFueUlkOiBzdHJpbmdcbiAgICBjaGF0SWQ6IHN0cmluZ1xuICAgIG1lc3NhZ2VJZDogc3RyaW5nXG4gICAgY2xpZW50SWQ/OiBudW1iZXJcbiAgICBhZ2VudE5hbWU6IHN0cmluZ1xuICAgIGFnZW50SWQ6IHN0cmluZ1xuICAgIGlzV2ViU2VhcmNoQWN0aXZlPzogYm9vbGVhblxuICAgIGlzRGVlcFNlYXJjaEFjdGl2ZT86IGJvb2xlYW5cbiAgICBhdHRhY2htZW50cz86IEF0dGFjaG1lbnRGaWxlW11cbiAgICBwcm9qZWN0TmFtZT86IHN0cmluZ1xuICAgIGZhcUlkPzogc3RyaW5nXG4gIH0pID0+IHtcbiAgICB0cnkge1xuICAgICAgc2V0TG9hZGluZyh0cnVlKVxuICAgICAgc2V0SXNXcml0aW5nKGZhbHNlKVxuICAgICAgc2V0RGF0YShudWxsKVxuICAgICAgc2V0TG9hZGluZ01lc3NhZ2UobnVsbClcbiAgICAgIGlzU3RvcHBlZFJlZi5jdXJyZW50ID0gZmFsc2UgLy8gUmVzZXRlYXIgZmxhZyBhbCBpbmljaWFyIG51ZXZhIHBldGljacOzblxuXG4gICAgICBhYm9ydENvbnRyb2xsZXJSZWYuY3VycmVudCA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKVxuXG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IG1haWEuT3JjaGVzdHJhdG9yLm9yY2hlc3RyYXRvcihcbiAgICAgICAge1xuICAgICAgICAgIGlucHV0OiBtZXNzYWdlLFxuICAgICAgICAgIGhpc3RvcnksXG4gICAgICAgICAgbGFuZyxcbiAgICAgICAgICB1c2VySWQsXG4gICAgICAgICAgY29tcGFueUlkLFxuICAgICAgICAgIGNoYXRJZCxcbiAgICAgICAgICBtZXNzYWdlSWQsXG4gICAgICAgICAgY2xpZW50SWQsXG4gICAgICAgICAgYWdlbnROYW1lLFxuICAgICAgICAgIGFnZW50SWQsXG4gICAgICAgICAgaXNXZWJTZWFyY2hBY3RpdmUsXG4gICAgICAgICAgaXNEZWVwU2VhcmNoQWN0aXZlLFxuICAgICAgICAgIC4uLihwcm9qZWN0SWQgPyB7IHByb2plY3RJZCB9IDoge30pLFxuICAgICAgICAgIC4uLihhdHRhY2htZW50cyA/IHsgYXR0YWNobWVudHMgfSA6IHt9KSxcbiAgICAgICAgICAuLi4ocHJvamVjdE5hbWUgPyB7IHByb2plY3ROYW1lIH0gOiB7fSksXG4gICAgICAgICAgLi4uKGZhcUlkID8geyBmYXFJZCB9IDoge30pLFxuICAgICAgICB9LFxuICAgICAgICBhYm9ydENvbnRyb2xsZXJSZWYuY3VycmVudD8uc2lnbmFsXG4gICAgICApXG5cbiAgICAgIGF3YWl0IGhhbmRsZVNTRVN0cmVhbShyZXNwb25zZSlcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgb25FcnJvcj8uKClcbiAgICAgIHNldExvYWRpbmcoZmFsc2UpXG4gICAgfVxuICB9XG5cbiAgY29uc3Qgc3RvcFN0cmVhbWluZyA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBpZiAoYWJvcnRDb250cm9sbGVyUmVmLmN1cnJlbnQpIHtcbiAgICAgIGlzU3RvcHBlZFJlZi5jdXJyZW50ID0gdHJ1ZVxuICAgICAgYWJvcnRDb250cm9sbGVyUmVmLmN1cnJlbnQuYWJvcnQoKVxuICAgICAgYWJvcnRDb250cm9sbGVyUmVmLmN1cnJlbnQgPSBudWxsXG4gICAgICBzZXRMb2FkaW5nKGZhbHNlKVxuICAgICAgc2V0SXNXcml0aW5nKGZhbHNlKVxuICAgICAgc2V0TG9hZGluZ01lc3NhZ2UobnVsbClcbiAgICAgIG9uU3RvcFJlZi5jdXJyZW50Py4oKVxuICAgIH1cbiAgfSwgW10pXG5cbiAgY29uc3QgcmVzZXQgPSAoKSA9PiB7XG4gICAgc2V0RGF0YShudWxsKVxuICAgIHNldExvYWRpbmcoZmFsc2UpXG4gICAgc2V0SXNXcml0aW5nKGZhbHNlKVxuICAgIHNldExvYWRpbmdNZXNzYWdlKG51bGwpXG4gICAgaXNTdG9wcGVkUmVmLmN1cnJlbnQgPSBmYWxzZVxuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBhc2tNYWlhLFxuICAgIHJlc3BvbnNlOiBkYXRhLFxuICAgIGlzTG9hZGluZyxcbiAgICBpc1dyaXRpbmcsXG4gICAgbG9hZGluZ01lc3NhZ2UsXG4gICAgcmVzZXQsXG4gICAgc3RvcFN0cmVhbWluZyxcbiAgICBoYW5kbGVTU0VTdHJlYW0sIC8vIEV4cG9uZXIgcGFyYSBwb2RlciB1c2FybG8gZW4gY29udGludWUtdGhyZWFkXG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVNBLFFBQVEsRUFBRUMsV0FBVyxFQUFFQyxNQUFNLFFBQVEsT0FBTztBQUNyRCxTQUFTQyxjQUFjLFFBQVEsZUFBZTtBQUU5QyxPQUFPQyxJQUFJLE1BQU0scUJBQXFCO0FBR3RDLFNBQVNDLFFBQVEsUUFBUSx3QkFBd0I7QUFFakQsT0FBTyxJQUFNQyxxQkFBcUIsR0FBRyxTQUF4QkEscUJBQXFCQSxDQUFBQyxJQUFBLEVBT0E7RUFBQSxJQU5oQ0MsY0FBYyxHQUFBRCxJQUFBLENBQWRDLGNBQWM7SUFDZEMsY0FBYyxHQUFBRixJQUFBLENBQWRFLGNBQWM7SUFDZEMsY0FBYyxHQUFBSCxJQUFBLENBQWRHLGNBQWM7SUFDZEMsTUFBTSxHQUFBSixJQUFBLENBQU5JLE1BQU07SUFDTkMsT0FBTyxHQUFBTCxJQUFBLENBQVBLLE9BQU87SUFDUEMsa0JBQWtCLEdBQUFOLElBQUEsQ0FBbEJNLGtCQUFrQjtFQUVsQixJQUFBQyxlQUFBLEdBQWNYLGNBQWMsQ0FBQyxDQUFDRSxRQUFRLENBQUNVLE1BQU0sQ0FBQyxDQUFDO0lBQXZDQyxDQUFDLEdBQUFGLGVBQUEsQ0FBREUsQ0FBQztFQUNULElBQUFDLFNBQUEsR0FBd0JqQixRQUFRLENBQWdC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
@@ -12,9 +12,6 @@ export var useProjectSummaryConfig = function useProjectSummaryConfig(_ref) {
12
12
  entity = _ref.entity,
13
13
  project = _ref.project,
14
14
  setProject = _ref.setProject,
15
- _ref$client = _ref.client,
16
- initialClient = _ref$client === void 0 ? null : _ref$client,
17
- setClientProp = _ref.setClient,
18
15
  hasMultiAgents = _ref.hasMultiAgents;
19
16
  var user = useUser();
20
17
  var t = useTWithSection(SECTIONS.chatAI);
@@ -41,36 +38,13 @@ export var useProjectSummaryConfig = function useProjectSummaryConfig(_ref) {
41
38
  _useState0 = _slicedToArray(_useState9, 2),
42
39
  entityValues = _useState0[0],
43
40
  setEntityValues = _useState0[1];
44
- var _useState1 = useState(initialClient !== null && initialClient !== void 0 ? initialClient : null),
45
- _useState10 = _slicedToArray(_useState1, 2),
46
- client = _useState10[0],
47
- setClientState = _useState10[1];
48
- var setClient = setClientProp !== null && setClientProp !== void 0 ? setClientProp : setClientState;
49
41
  var configureSettingsItems = useRef(buildConfigureSettingsItems(user, t));
50
- var _useState11 = useState(null),
51
- _useState12 = _slicedToArray(_useState11, 2),
52
- chipsProject = _useState12[0],
53
- setChipsProjectState = _useState12[1];
54
-
55
- // Sincronizar client cuando la prop llegue después del primer render (ej. section client, datos async)
56
- useEffect(function () {
57
- if (section === 'client') {
58
- setClientState(initialClient !== null && initialClient !== void 0 ? initialClient : null);
59
- }
60
- }, [section, initialClient]);
61
-
62
- // Sincronizar entityValues cuando entity cambie (ej. llegue después del primer render)
63
- useEffect(function () {
64
- if (entity != null) {
65
- var _entity$projectId, _entity$clientId;
66
- setEntityValues({
67
- projectId: (_entity$projectId = entity.projectId) !== null && _entity$projectId !== void 0 ? _entity$projectId : null,
68
- clientId: (_entity$clientId = entity.clientId) !== null && _entity$clientId !== void 0 ? _entity$clientId : null
69
- });
70
- }
71
- }, [entity === null || entity === void 0 ? void 0 : entity.projectId, entity === null || entity === void 0 ? void 0 : entity.clientId]);
42
+ var _useState1 = useState(null),
43
+ _useState10 = _slicedToArray(_useState1, 2),
44
+ chipsProject = _useState10[0],
45
+ setChipsProjectState = _useState10[1];
72
46
  useEffect(function () {
73
- if (section === 'project') setOpenSection('project');else if (section === 'client') setOpenSection('client');else setOpenSection('header');
47
+ setOpenSection(section === 'project' ? 'project' : 'header');
74
48
  }, [section]);
75
49
  var restoreConfigureSettings = useCallback(function () {
76
50
  var _configureSettingsIte;
@@ -111,8 +85,6 @@ export var useProjectSummaryConfig = function useProjectSummaryConfig(_ref) {
111
85
  setEntityValues: setEntityValues,
112
86
  project: project,
113
87
  setProject: setProject,
114
- client: client,
115
- setClient: setClient,
116
88
  isWebSearchActive: isWebSearchActive,
117
89
  toggleWebSearch: toggleWebSearch,
118
90
  isDeepSearchActive: isDeepSearchActive,
@@ -121,10 +93,10 @@ export var useProjectSummaryConfig = function useProjectSummaryConfig(_ref) {
121
93
  chipsProject: chipsProject,
122
94
  setChipsProject: setChipsProject
123
95
  };
124
- }, [openSection, entityValues === null || entityValues === void 0 ? void 0 : entityValues.projectId, entityValues === null || entityValues === void 0 ? void 0 : entityValues.clientId, agent, selectAgent, clearAgent, setEntityValues, restoreConfigureSettings, project === null || project === void 0 ? void 0 : project.id, setProject, client === null || client === void 0 ? void 0 : client.id, setClient, isWebSearchActive, toggleWebSearch, isDeepSearchActive, toggleDeepSearch, hasMultiAgents, chipsProject, setChipsProject]);
96
+ }, [openSection, entityValues === null || entityValues === void 0 ? void 0 : entityValues.projectId, entityValues === null || entityValues === void 0 ? void 0 : entityValues.clientId, agent, selectAgent, clearAgent, setEntityValues, restoreConfigureSettings, project === null || project === void 0 ? void 0 : project.id, setProject, isWebSearchActive, toggleWebSearch, isDeepSearchActive, toggleDeepSearch, hasMultiAgents, chipsProject, setChipsProject]);
125
97
  return {
126
98
  context: context,
127
99
  restoreConfigureSettings: restoreConfigureSettings
128
100
  };
129
101
  };
130
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VDYWxsYmFjayIsInVzZVJlZiIsInVzZU1lbW8iLCJ1c2VTdGF0ZSIsInVzZUVmZmVjdCIsIlNFQ1RJT05TIiwiYnVpbGRDb25maWd1cmVTZXR0aW5nc0l0ZW1zIiwidXNlVXNlciIsInVzZVRXaXRoU2VjdGlvbiIsInVzZVByb2plY3RTdW1tYXJ5Q29uZmlnIiwiX3JlZiIsInNlY3Rpb24iLCJlbnRpdHkiLCJwcm9qZWN0Iiwic2V0UHJvamVjdCIsIl9yZWYkY2xpZW50IiwiY2xpZW50IiwiaW5pdGlhbENsaWVudCIsInNldENsaWVudFByb3AiLCJzZXRDbGllbnQiLCJoYXNNdWx0aUFnZW50cyIsInVzZXIiLCJ0IiwiY2hhdEFJIiwiX3VzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5IiwiYWdlbnQiLCJzZXRBZ2VudCIsIl91c2VTdGF0ZTMiLCJfdXNlU3RhdGU0Iiwib3BlblNlY3Rpb24iLCJzZXRPcGVuU2VjdGlvbiIsIl91c2VTdGF0ZTUiLCJfdXNlU3RhdGU2IiwiaXNXZWJTZWFyY2hBY3RpdmUiLCJzZXRJc1dlYlNlYXJjaEFjdGl2ZSIsIl91c2VTdGF0ZTciLCJfdXNlU3RhdGU4IiwiaXNEZWVwU2VhcmNoQWN0aXZlIiwic2V0SXNEZWVwU2VhcmNoQWN0aXZlIiwiX3VzZVN0YXRlOSIsInByb2plY3RJZCIsImNsaWVudElkIiwiX3VzZVN0YXRlMCIsImVudGl0eVZhbHVlcyIsInNldEVudGl0eVZhbHVlcyIsIl91c2VTdGF0ZTEiLCJfdXNlU3RhdGUxMCIsInNldENsaWVudFN0YXRlIiwiY29uZmlndXJlU2V0dGluZ3NJdGVtcyIsIl91c2VTdGF0ZTExIiwiX3VzZVN0YXRlMTIiLCJjaGlwc1Byb2plY3QiLCJzZXRDaGlwc1Byb2plY3RTdGF0ZSIsIl9lbnRpdHkkcHJvamVjdElkIiwiX2VudGl0eSRjbGllbnRJZCIsInJlc3RvcmVDb25maWd1cmVTZXR0aW5ncyIsIl9jb25maWd1cmVTZXR0aW5nc0l0ZSIsImN1cnJlbnQiLCJtYXAiLCJpdGVtIiwiX29iamVjdFNwcmVhZCIsImNoZWNrZWQiLCJoaWRkZW4iLCJzZWxlY3RBZ2VudCIsIm5ld0FnZW50IiwiY2xlYXJBZ2VudCIsInRvZ2dsZVdlYlNlYXJjaCIsInByZXYiLCJ0b2dnbGVEZWVwU2VhcmNoIiwic2V0Q2hpcHNQcm9qZWN0IiwibmV3Q2hpcHNQcm9qZWN0IiwiY29udGV4dCIsImlkIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hvb2tzL3VzZVByb2plY3RTdW1tYXJ5Q29uZmlnLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHVzZUNhbGxiYWNrLCB1c2VSZWYsIHVzZU1lbW8sIHVzZVN0YXRlLCB1c2VFZmZlY3QgfSBmcm9tICdyZWFjdCdcblxuaW1wb3J0IHsgQ2hpcHNQcm9qZWN0IH0gZnJvbSAnLi4vY29udGV4dC9nbG9iYWwtY29udGV4dCdcbmltcG9ydCB7IFNFQ1RJT05TIH0gZnJvbSAnLi4vY29uc3RhbnRzL2NvbmZpZydcbmltcG9ydCB7IGJ1aWxkQ29uZmlndXJlU2V0dGluZ3NJdGVtcyB9IGZyb20gJy4uL2NvbnN0YW50cy9wZXJtaXNzaW9ucydcbmltcG9ydCB7IHVzZVVzZXIgfSBmcm9tICcuLi9jb250ZXh0L2Nvci11c2VyJ1xuaW1wb3J0IHsgQWdlbnQgfSBmcm9tICcuLi90eXBlcy9hZ2VudCdcblxuaW1wb3J0IHsgdXNlVFdpdGhTZWN0aW9uIH0gZnJvbSAnLi91c2VUJ1xuaW1wb3J0IHsgUHJvamVjdCB9IGZyb20gJy4uL3R5cGVzL1Byb2plY3QnXG5pbXBvcnQgeyBDbGllbnQgfSBmcm9tICcuLi90eXBlcy9DbGllbnQnXG5cbnR5cGUgUHJvamVjdFN1bW1hcnlDb25maWdQcm9wcyA9IHtcbiAgc2VjdGlvbjogJ3Byb2plY3QnIHwgJ2hlYWRlcicgfCAnY2xpZW50J1xuICBlbnRpdHk/OiB7XG4gICAgcHJvamVjdElkOiBzdHJpbmcgfCBudWxsXG4gICAgY2xpZW50SWQ6IHN0cmluZyB8IG51bGxcbiAgfSB8IG51bGxcbiAgcHJvamVjdDogUHJvamVjdCB8IG51bGxcbiAgc2V0UHJvamVjdDogKHByb2plY3Q6IFByb2plY3QgfCBudWxsKSA9PiB2b2lkXG4gIGNsaWVudD86IENsaWVudCB8IG51bGxcbiAgc2V0Q2xpZW50PzogKGNsaWVudDogQ2xpZW50IHwgbnVsbCkgPT4gdm9pZFxuICBoYXNNdWx0aUFnZW50cz86IGJvb2xlYW5cbn1cblxuZXhwb3J0IGNvbnN0IHVzZVByb2plY3RTdW1tYXJ5Q29uZmlnID0gKHtcbiAgc2VjdGlvbixcbiAgZW50aXR5LFxuICBwcm9qZWN0LFxuICBzZXRQcm9qZWN0LFxuICBjbGllbnQ6IGluaXRpYWxDbGllbnQgPSBudWxsLFxuICBzZXRDbGllbnQ6IHNldENsaWVudFByb3AsXG4gIGhhc011bHRpQWdlbnRzLFxufTogUHJvamVjdFN1bW1hcnlDb25maWdQcm9wcykgPT4ge1xuICBjb25zdCB1c2VyID0gdXNlVXNlcigpXG4gIGNvbnN0IHQgPSB1c2VUV2l0aFNlY3Rpb24oU0VDVElPTlMuY2hhdEFJKVxuICBjb25zdCBbYWdlbnQsIHNldEFnZW50XSA9IHVzZVN0YXRlPEFnZW50IHwgbnVsbD4obnVsbClcbiAgY29uc3QgW29wZW5TZWN0aW9uLCBzZXRPcGVuU2VjdGlvbl0gPSB1c2VTdGF0ZTxzdHJpbmcgfCBudWxsPihudWxsKVxuICBjb25zdCBbaXNXZWJTZWFyY2hBY3RpdmUsIHNldElzV2ViU2VhcmNoQWN0aXZlXSA9IHVzZVN0YXRlPGJvb2xlYW4+KGZhbHNlKVxuICBjb25zdCBbaXNEZWVwU2VhcmNoQWN0aXZlLCBzZXRJc0RlZXBTZWFyY2hBY3RpdmVdID0gdXNlU3RhdGU8Ym9vbGVhbj4oZmFsc2UpXG4gIGNvbnN0IFtlbnRpdHlWYWx1ZXMsIHNldEVudGl0eVZhbHVlc10gPSB1c2VTdGF0ZTx7XG4gICAgcHJvamVjdElkOiBzdHJpbmcgfCBudWxsXG4gICAgY2xpZW50SWQ6IHN0cmluZyB8IG51bGxcbiAgfT4oZW50aXR5IHx8IHsgcHJvamVjdElkOiBudWxsLCBjbGllbnRJZDogbnVsbCB9KVxuICBjb25zdCBbY2xpZW50LCBzZXRDbGllbnRTdGF0ZV0gPSB1c2VTdGF0ZTxDbGllbnQgfCBudWxsPihpbml0aWFsQ2xpZW50ID8/IG51bGwpXG5cbiAgY29uc3Qgc2V0Q2xpZW50ID0gc2V0Q2xpZW50UHJvcCA/PyBzZXRDbGllbnRTdGF0ZVxuXG4gIGNvbnN0IGNvbmZpZ3VyZVNldHRpbmdzSXRlbXMgPSB1c2VSZWYoYnVpbGRDb25maWd1cmVTZXR0aW5nc0l0ZW1zKHVzZXIsIHQpKVxuICBjb25zdCBbY2hpcHNQcm9qZWN0LCBzZXRDaGlwc1Byb2plY3RTdGF0ZV0gPSB1c2VTdGF0ZTxDaGlwc1Byb2plY3QgfCBudWxsPihudWxsKVxuXG4gIC8vIFNpbmNyb25pemFyIGNsaWVudCBjdWFuZG8gbGEgcHJvcCBsbGVndWUgZGVzcHXDqXMgZGVsIHByaW1lciByZW5kZXIgKGVqLiBzZWN0aW9uIGNsaWVudCwgZGF0b3MgYXN5bmMpXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKHNlY3Rpb24gPT09ICdjbGllbnQnKSB7XG4gICAgICBzZXRDbGllbnRTdGF0ZShpbml0aWFsQ2xpZW50ID8/IG51bGwpXG4gICAgfVxuICB9LCBbc2VjdGlvbiwgaW5pdGlhbENsaWVudF0pXG5cbiAgLy8gU2luY3Jvbml6YXIgZW50aXR5VmFsdWVzIGN1YW5kbyBlbnRpdHkgY2FtYmllIChlai4gbGxlZ3VlIGRlc3B1w6lzIGRlbCBwcmltZXIgcmVuZGVyKVxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChlbnRpdHkgIT0gbnVsbCkge1xuICAgICAgc2V0RW50aXR5VmFsdWVzKHtcbiAgICAgICAgcHJvamVjdElkOiBlbnRpdHkucHJvamVjdElkID8/IG51bGwsXG4gICAgICAgIGNsaWVudElkOiBlbnRpdHkuY2xpZW50SWQgPz8gbnVsbCxcbiAgICAgIH0pXG4gICAgfVxuICB9LCBbZW50aXR5Py5wcm9qZWN0SWQsIGVudGl0eT8uY2xpZW50SWRdKVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKHNlY3Rpb24gPT09ICdwcm9qZWN0Jykgc2V0T3BlblNlY3Rpb24oJ3Byb2plY3QnKVxuICAgIGVsc2UgaWYgKHNlY3Rpb24gPT09ICdjbGllbnQnKSBzZXRPcGVuU2VjdGlvbignY2xpZW50JylcbiAgICBlbHNlIHNldE9wZW5TZWN0aW9uKCdoZWFkZXInKVxuICB9LCBbc2VjdGlvbl0pXG5cbiAgY29uc3QgcmVzdG9yZUNvbmZpZ3VyZVNldHRpbmdzID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIGNvbmZpZ3VyZVNldHRpbmdzSXRlbXMuY3VycmVudCA9IGNvbmZpZ3VyZVNldHRpbmdzSXRlbXMuY3VycmVudD8ubWFwKGl0ZW0gPT4gKHtcbiAgICAgIC4uLml0ZW0sXG4gICAgICBjaGVja2VkOiAhaXRlbS5oaWRkZW4sXG4gICAgfSkpXG4gIH0sIFtdKVxuXG4gIGNvbnN0IHNlbGVjdEFnZW50ID0gdXNlQ2FsbGJhY2soKG5ld0FnZW50OiBBZ2VudCkgPT4ge1xuICAgIHNldEFnZW50KG5ld0FnZW50KVxuICB9LCBbXSlcblxuICBjb25zdCBjbGVhckFnZW50ID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIHNldEFnZW50KG51bGwpXG4gIH0sIFtdKVxuXG4gIGNvbnN0IHRvZ2dsZVdlYlNlYXJjaCA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBzZXRJc1dlYlNlYXJjaEFjdGl2ZShwcmV2ID0+ICFwcmV2KVxuICB9LCBbXSlcblxuICBjb25zdCB0b2dnbGVEZWVwU2VhcmNoID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIHNldElzRGVlcFNlYXJjaEFjdGl2ZShwcmV2ID0+ICFwcmV2KVxuICB9LCBbXSlcblxuICBjb25zdCBzZXRDaGlwc1Byb2plY3QgPSB1c2VDYWxsYmFjaygobmV3Q2hpcHNQcm9qZWN0OiBDaGlwc1Byb2plY3QgfCBudWxsKSA9PiB7XG4gICAgc2V0Q2hpcHNQcm9qZWN0U3RhdGUobmV3Q2hpcHNQcm9qZWN0KVxuICB9LCBbXSlcblxuICBjb25zdCBjb250ZXh0ID0gdXNlTWVtbyhcbiAgICAoKSA9PiAoe1xuICAgICAgZW50aXR5VmFsdWVzLFxuICAgICAgc2VjdGlvbjogb3BlblNlY3Rpb24sXG4gICAgICBhZ2VudCxcbiAgICAgIHNlbGVjdEFnZW50LFxuICAgICAgY2xlYXJBZ2VudCxcbiAgICAgIGNvbmZpZ3VyZVNldHRpbmdzSXRlbXMsXG4gICAgICByZXN0b3JlQ29uZmlndXJlU2V0dGluZ3MsXG4gICAgICBzZXRFbnRpdHlWYWx1ZXMsXG4gICAgICBwcm9qZWN0LFxuICAgICAgc2V0UHJvamVjdCxcbiAgICAgIGNsaWVudCxcbiAgICAgIHNldENsaWVudCxcbiAgICAgIGlzV2ViU2VhcmNoQWN0aXZlLFxuICAgICAgdG9nZ2xlV2ViU2VhcmNoLFxuICAgICAgaXNEZWVwU2VhcmNoQWN0aXZlLFxuICAgICAgdG9nZ2xlRGVlcFNlYXJjaCxcbiAgICAgIGhhc011bHRpQWdlbnRzLFxuICAgICAgY2hpcHNQcm9qZWN0LFxuICAgICAgc2V0Q2hpcHNQcm9qZWN0LFxuICAgIH0pLFxuICAgIFtcbiAgICAgIG9wZW5TZWN0aW9uLFxuICAgICAgZW50aXR5VmFsdWVzPy5wcm9qZWN0SWQsXG4gICAgICBlbnRpdHlWYWx1ZXM/LmNsaWVudElkLFxuICAgICAgYWdlbnQsXG4gICAgICBzZWxlY3RBZ2VudCxcbiAgICAgIGNsZWFyQWdlbnQsXG4gICAgICBzZXRFbnRpdHlWYWx1ZXMsXG4gICAgICByZXN0b3JlQ29uZmlndXJlU2V0dGluZ3MsXG4gICAgICBwcm9qZWN0Py5pZCxcbiAgICAgIHNldFByb2plY3QsXG4gICAgICBjbGllbnQ/LmlkLFxuICAgICAgc2V0Q2xpZW50LFxuICAgICAgaXNXZWJTZWFyY2hBY3RpdmUsXG4gICAgICB0b2dnbGVXZWJTZWFyY2gsXG4gICAgICBpc0RlZXBTZWFyY2hBY3RpdmUsXG4gICAgICB0b2dnbGVEZWVwU2VhcmNoLFxuICAgICAgaGFzTXVsdGlBZ2VudHMsXG4gICAgICBjaGlwc1Byb2plY3QsXG4gICAgICBzZXRDaGlwc1Byb2plY3QsXG4gICAgXVxuICApXG5cbiAgcmV0dXJuIHtcbiAgICBjb250ZXh0LFxuICAgIHJlc3RvcmVDb25maWd1cmVTZXR0aW5ncyxcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7O0FBQUEsU0FBU0EsV0FBVyxFQUFFQyxNQUFNLEVBQUVDLE9BQU8sRUFBRUMsUUFBUSxFQUFFQyxTQUFTLFFBQVEsT0FBTztBQUd6RSxTQUFTQyxRQUFRLFFBQVEscUJBQXFCO0FBQzlDLFNBQVNDLDJCQUEyQixRQUFRLDBCQUEwQjtBQUN0RSxTQUFTQyxPQUFPLFFBQVEscUJBQXFCO0FBRzdDLFNBQVNDLGVBQWUsUUFBUSxRQUFRO0FBaUJ4QyxPQUFPLElBQU1DLHVCQUF1QixHQUFHLFNBQTFCQSx1QkFBdUJBLENBQUFDLElBQUEsRUFRSDtFQUFBLElBUC9CQyxPQUFPLEdBQUFELElBQUEsQ0FBUEMsT0FBTztJQUNQQyxNQUFNLEdBQUFGLElBQUEsQ0FBTkUsTUFBTTtJQUNOQyxPQUFPLEdBQUFILElBQUEsQ0FBUEcsT0FBTztJQUNQQyxVQUFVLEdBQUFKLElBQUEsQ0FBVkksVUFBVTtJQUFBQyxXQUFBLEdBQUFMLElBQUEsQ0FDVk0sTUFBTTtJQUFFQyxhQUFhLEdBQUFGLFdBQUEsY0FBRyxJQUFJLEdBQUFBLFdBQUE7SUFDakJHLGFBQWEsR0FBQVIsSUFBQSxDQUF4QlMsU0FBUztJQUNUQyxjQUFjLEdBQUFWLElBQUEsQ0FBZFUsY0FBYztFQUVkLElBQU1DLElBQUksR0FBR2QsT0FBTyxDQUFDLENBQUM7RUFDdEIsSUFBTWUsQ0FBQyxHQUFHZCxlQUFlLENBQUNILFFBQVEsQ0FBQ2tCLE1BQU0sQ0FBQztFQUMxQyxJQUFBQyxTQUFBLEdBQTBCckIsUUFBUSxDQUFlLElBQUksQ0FBQztJQUFBc0IsVUFBQSxHQUFBQyxjQUFBLENBQUFGLFNBQUE7SUFBL0NHLEtBQUssR0FBQUYsVUFBQTtJQUFFRyxRQUFRLEdBQUFILFVBQUE7RUFDdEIsSUFBQUksVUFBQSxHQUFzQzFCLFFBQVEsQ0FB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
102
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VDYWxsYmFjayIsInVzZVJlZiIsInVzZU1lbW8iLCJ1c2VTdGF0ZSIsInVzZUVmZmVjdCIsIlNFQ1RJT05TIiwiYnVpbGRDb25maWd1cmVTZXR0aW5nc0l0ZW1zIiwidXNlVXNlciIsInVzZVRXaXRoU2VjdGlvbiIsInVzZVByb2plY3RTdW1tYXJ5Q29uZmlnIiwiX3JlZiIsInNlY3Rpb24iLCJlbnRpdHkiLCJwcm9qZWN0Iiwic2V0UHJvamVjdCIsImhhc011bHRpQWdlbnRzIiwidXNlciIsInQiLCJjaGF0QUkiLCJfdXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkiLCJhZ2VudCIsInNldEFnZW50IiwiX3VzZVN0YXRlMyIsIl91c2VTdGF0ZTQiLCJvcGVuU2VjdGlvbiIsInNldE9wZW5TZWN0aW9uIiwiX3VzZVN0YXRlNSIsIl91c2VTdGF0ZTYiLCJpc1dlYlNlYXJjaEFjdGl2ZSIsInNldElzV2ViU2VhcmNoQWN0aXZlIiwiX3VzZVN0YXRlNyIsIl91c2VTdGF0ZTgiLCJpc0RlZXBTZWFyY2hBY3RpdmUiLCJzZXRJc0RlZXBTZWFyY2hBY3RpdmUiLCJfdXNlU3RhdGU5IiwicHJvamVjdElkIiwiY2xpZW50SWQiLCJfdXNlU3RhdGUwIiwiZW50aXR5VmFsdWVzIiwic2V0RW50aXR5VmFsdWVzIiwiY29uZmlndXJlU2V0dGluZ3NJdGVtcyIsIl91c2VTdGF0ZTEiLCJfdXNlU3RhdGUxMCIsImNoaXBzUHJvamVjdCIsInNldENoaXBzUHJvamVjdFN0YXRlIiwicmVzdG9yZUNvbmZpZ3VyZVNldHRpbmdzIiwiX2NvbmZpZ3VyZVNldHRpbmdzSXRlIiwiY3VycmVudCIsIm1hcCIsIml0ZW0iLCJfb2JqZWN0U3ByZWFkIiwiY2hlY2tlZCIsImhpZGRlbiIsInNlbGVjdEFnZW50IiwibmV3QWdlbnQiLCJjbGVhckFnZW50IiwidG9nZ2xlV2ViU2VhcmNoIiwicHJldiIsInRvZ2dsZURlZXBTZWFyY2giLCJzZXRDaGlwc1Byb2plY3QiLCJuZXdDaGlwc1Byb2plY3QiLCJjb250ZXh0IiwiaWQiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvaG9va3MvdXNlUHJvamVjdFN1bW1hcnlDb25maWcudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlQ2FsbGJhY2ssIHVzZVJlZiwgdXNlTWVtbywgdXNlU3RhdGUsIHVzZUVmZmVjdCB9IGZyb20gJ3JlYWN0J1xuXG5pbXBvcnQgeyBDaGlwc1Byb2plY3QgfSBmcm9tICcuLi9jb250ZXh0L2dsb2JhbC1jb250ZXh0J1xuaW1wb3J0IHsgU0VDVElPTlMgfSBmcm9tICcuLi9jb25zdGFudHMvY29uZmlnJ1xuaW1wb3J0IHsgYnVpbGRDb25maWd1cmVTZXR0aW5nc0l0ZW1zIH0gZnJvbSAnLi4vY29uc3RhbnRzL3Blcm1pc3Npb25zJ1xuaW1wb3J0IHsgdXNlVXNlciB9IGZyb20gJy4uL2NvbnRleHQvY29yLXVzZXInXG5pbXBvcnQgeyBBZ2VudCB9IGZyb20gJy4uL3R5cGVzL2FnZW50J1xuXG5pbXBvcnQgeyB1c2VUV2l0aFNlY3Rpb24gfSBmcm9tICcuL3VzZVQnXG5pbXBvcnQgeyBQcm9qZWN0IH0gZnJvbSAnLi4vdHlwZXMvUHJvamVjdCdcblxudHlwZSBQcm9qZWN0U3VtbWFyeUNvbmZpZ1Byb3BzID0ge1xuICBzZWN0aW9uOiAncHJvamVjdCcgfCAnaGVhZGVyJ1xuICBlbnRpdHk/OiB7XG4gICAgcHJvamVjdElkOiBzdHJpbmcgfCBudWxsXG4gICAgY2xpZW50SWQ6IHN0cmluZyB8IG51bGxcbiAgfSB8IG51bGxcbiAgcHJvamVjdDogUHJvamVjdCB8IG51bGxcbiAgc2V0UHJvamVjdDogKHByb2plY3Q6IFByb2plY3QgfCBudWxsKSA9PiB2b2lkXG4gIGhhc011bHRpQWdlbnRzPzogYm9vbGVhblxufVxuXG5leHBvcnQgY29uc3QgdXNlUHJvamVjdFN1bW1hcnlDb25maWcgPSAoe1xuICBzZWN0aW9uLFxuICBlbnRpdHksXG4gIHByb2plY3QsXG4gIHNldFByb2plY3QsXG4gIGhhc011bHRpQWdlbnRzLFxufTogUHJvamVjdFN1bW1hcnlDb25maWdQcm9wcykgPT4ge1xuICBjb25zdCB1c2VyID0gdXNlVXNlcigpXG4gIGNvbnN0IHQgPSB1c2VUV2l0aFNlY3Rpb24oU0VDVElPTlMuY2hhdEFJKVxuICBjb25zdCBbYWdlbnQsIHNldEFnZW50XSA9IHVzZVN0YXRlPEFnZW50IHwgbnVsbD4obnVsbClcbiAgY29uc3QgW29wZW5TZWN0aW9uLCBzZXRPcGVuU2VjdGlvbl0gPSB1c2VTdGF0ZTxzdHJpbmcgfCBudWxsPihudWxsKVxuICBjb25zdCBbaXNXZWJTZWFyY2hBY3RpdmUsIHNldElzV2ViU2VhcmNoQWN0aXZlXSA9IHVzZVN0YXRlPGJvb2xlYW4+KGZhbHNlKVxuICBjb25zdCBbaXNEZWVwU2VhcmNoQWN0aXZlLCBzZXRJc0RlZXBTZWFyY2hBY3RpdmVdID0gdXNlU3RhdGU8Ym9vbGVhbj4oZmFsc2UpXG4gIGNvbnN0IFtlbnRpdHlWYWx1ZXMsIHNldEVudGl0eVZhbHVlc10gPSB1c2VTdGF0ZTx7XG4gICAgcHJvamVjdElkOiBzdHJpbmcgfCBudWxsXG4gICAgY2xpZW50SWQ6IHN0cmluZyB8IG51bGxcbiAgfT4oZW50aXR5IHx8IHsgcHJvamVjdElkOiBudWxsLCBjbGllbnRJZDogbnVsbCB9KVxuXG4gIGNvbnN0IGNvbmZpZ3VyZVNldHRpbmdzSXRlbXMgPSB1c2VSZWYoYnVpbGRDb25maWd1cmVTZXR0aW5nc0l0ZW1zKHVzZXIsIHQpKVxuICBjb25zdCBbY2hpcHNQcm9qZWN0LCBzZXRDaGlwc1Byb2plY3RTdGF0ZV0gPSB1c2VTdGF0ZTxDaGlwc1Byb2plY3QgfCBudWxsPihudWxsKVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgc2V0T3BlblNlY3Rpb24oc2VjdGlvbiA9PT0gJ3Byb2plY3QnID8gJ3Byb2plY3QnIDogJ2hlYWRlcicpXG4gIH0sIFtzZWN0aW9uXSlcblxuICBjb25zdCByZXN0b3JlQ29uZmlndXJlU2V0dGluZ3MgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgY29uZmlndXJlU2V0dGluZ3NJdGVtcy5jdXJyZW50ID0gY29uZmlndXJlU2V0dGluZ3NJdGVtcy5jdXJyZW50Py5tYXAoaXRlbSA9PiAoe1xuICAgICAgLi4uaXRlbSxcbiAgICAgIGNoZWNrZWQ6ICFpdGVtLmhpZGRlbixcbiAgICB9KSlcbiAgfSwgW10pXG5cbiAgY29uc3Qgc2VsZWN0QWdlbnQgPSB1c2VDYWxsYmFjaygobmV3QWdlbnQ6IEFnZW50KSA9PiB7XG4gICAgc2V0QWdlbnQobmV3QWdlbnQpXG4gIH0sIFtdKVxuXG4gIGNvbnN0IGNsZWFyQWdlbnQgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgc2V0QWdlbnQobnVsbClcbiAgfSwgW10pXG5cbiAgY29uc3QgdG9nZ2xlV2ViU2VhcmNoID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIHNldElzV2ViU2VhcmNoQWN0aXZlKHByZXYgPT4gIXByZXYpXG4gIH0sIFtdKVxuXG4gIGNvbnN0IHRvZ2dsZURlZXBTZWFyY2ggPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgc2V0SXNEZWVwU2VhcmNoQWN0aXZlKHByZXYgPT4gIXByZXYpXG4gIH0sIFtdKVxuXG4gIGNvbnN0IHNldENoaXBzUHJvamVjdCA9IHVzZUNhbGxiYWNrKChuZXdDaGlwc1Byb2plY3Q6IENoaXBzUHJvamVjdCB8IG51bGwpID0+IHtcbiAgICBzZXRDaGlwc1Byb2plY3RTdGF0ZShuZXdDaGlwc1Byb2plY3QpXG4gIH0sIFtdKVxuXG4gIGNvbnN0IGNvbnRleHQgPSB1c2VNZW1vKFxuICAgICgpID0+ICh7XG4gICAgICBlbnRpdHlWYWx1ZXMsXG4gICAgICBzZWN0aW9uOiBvcGVuU2VjdGlvbixcbiAgICAgIGFnZW50LFxuICAgICAgc2VsZWN0QWdlbnQsXG4gICAgICBjbGVhckFnZW50LFxuICAgICAgY29uZmlndXJlU2V0dGluZ3NJdGVtcyxcbiAgICAgIHJlc3RvcmVDb25maWd1cmVTZXR0aW5ncyxcbiAgICAgIHNldEVudGl0eVZhbHVlcyxcbiAgICAgIHByb2plY3QsXG4gICAgICBzZXRQcm9qZWN0LFxuICAgICAgaXNXZWJTZWFyY2hBY3RpdmUsXG4gICAgICB0b2dnbGVXZWJTZWFyY2gsXG4gICAgICBpc0RlZXBTZWFyY2hBY3RpdmUsXG4gICAgICB0b2dnbGVEZWVwU2VhcmNoLFxuICAgICAgaGFzTXVsdGlBZ2VudHMsXG4gICAgICBjaGlwc1Byb2plY3QsXG4gICAgICBzZXRDaGlwc1Byb2plY3QsXG4gICAgfSksXG4gICAgW1xuICAgICAgb3BlblNlY3Rpb24sXG4gICAgICBlbnRpdHlWYWx1ZXM/LnByb2plY3RJZCxcbiAgICAgIGVudGl0eVZhbHVlcz8uY2xpZW50SWQsXG4gICAgICBhZ2VudCxcbiAgICAgIHNlbGVjdEFnZW50LFxuICAgICAgY2xlYXJBZ2VudCxcbiAgICAgIHNldEVudGl0eVZhbHVlcyxcbiAgICAgIHJlc3RvcmVDb25maWd1cmVTZXR0aW5ncyxcbiAgICAgIHByb2plY3Q/LmlkLFxuICAgICAgc2V0UHJvamVjdCxcbiAgICAgIGlzV2ViU2VhcmNoQWN0aXZlLFxuICAgICAgdG9nZ2xlV2ViU2VhcmNoLFxuICAgICAgaXNEZWVwU2VhcmNoQWN0aXZlLFxuICAgICAgdG9nZ2xlRGVlcFNlYXJjaCxcbiAgICAgIGhhc011bHRpQWdlbnRzLFxuICAgICAgY2hpcHNQcm9qZWN0LFxuICAgICAgc2V0Q2hpcHNQcm9qZWN0LFxuICAgIF1cbiAgKVxuXG4gIHJldHVybiB7XG4gICAgY29udGV4dCxcbiAgICByZXN0b3JlQ29uZmlndXJlU2V0dGluZ3MsXG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLFNBQVNBLFdBQVcsRUFBRUMsTUFBTSxFQUFFQyxPQUFPLEVBQUVDLFFBQVEsRUFBRUMsU0FBUyxRQUFRLE9BQU87QUFHekUsU0FBU0MsUUFBUSxRQUFRLHFCQUFxQjtBQUM5QyxTQUFTQywyQkFBMkIsUUFBUSwwQkFBMEI7QUFDdEUsU0FBU0MsT0FBTyxRQUFRLHFCQUFxQjtBQUc3QyxTQUFTQyxlQUFlLFFBQVEs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
@@ -0,0 +1,20 @@
1
+ import { useEffect } from 'react';
2
+ import { STREAMDOWN_STYLES } from '../streamdownStyles';
3
+ var STYLE_ID = 'maia-streamdown-styles';
4
+
5
+ /**
6
+ * Inyecta los estilos de Streamdown en el documento.
7
+ * Se ejecuta una sola vez para que funcionen tablas, code blocks, mermaid, etc.
8
+ * en cualquier app consumidora sin necesidad de importar CSS.
9
+ */
10
+ export var useStreamdownStyles = function useStreamdownStyles() {
11
+ useEffect(function () {
12
+ if (typeof document === 'undefined') return;
13
+ if (document.getElementById(STYLE_ID)) return;
14
+ var style = document.createElement('style');
15
+ style.id = STYLE_ID;
16
+ style.textContent = STREAMDOWN_STYLES;
17
+ document.head.appendChild(style);
18
+ }, []);
19
+ };
20
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VFZmZlY3QiLCJTVFJFQU1ET1dOX1NUWUxFUyIsIlNUWUxFX0lEIiwidXNlU3RyZWFtZG93blN0eWxlcyIsImRvY3VtZW50IiwiZ2V0RWxlbWVudEJ5SWQiLCJzdHlsZSIsImNyZWF0ZUVsZW1lbnQiLCJpZCIsInRleHRDb250ZW50IiwiaGVhZCIsImFwcGVuZENoaWxkIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hvb2tzL3VzZVN0cmVhbWRvd25TdHlsZXMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlRWZmZWN0IH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBTVFJFQU1ET1dOX1NUWUxFUyB9IGZyb20gJy4uL3N0cmVhbWRvd25TdHlsZXMnXG5cbmNvbnN0IFNUWUxFX0lEID0gJ21haWEtc3RyZWFtZG93bi1zdHlsZXMnXG5cbi8qKlxuICogSW55ZWN0YSBsb3MgZXN0aWxvcyBkZSBTdHJlYW1kb3duIGVuIGVsIGRvY3VtZW50by5cbiAqIFNlIGVqZWN1dGEgdW5hIHNvbGEgdmV6IHBhcmEgcXVlIGZ1bmNpb25lbiB0YWJsYXMsIGNvZGUgYmxvY2tzLCBtZXJtYWlkLCBldGMuXG4gKiBlbiBjdWFscXVpZXIgYXBwIGNvbnN1bWlkb3JhIHNpbiBuZWNlc2lkYWQgZGUgaW1wb3J0YXIgQ1NTLlxuICovXG5leHBvcnQgY29uc3QgdXNlU3RyZWFtZG93blN0eWxlcyA9ICgpID0+IHtcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAodHlwZW9mIGRvY3VtZW50ID09PSAndW5kZWZpbmVkJykgcmV0dXJuXG4gICAgaWYgKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFNUWUxFX0lEKSkgcmV0dXJuXG5cbiAgICBjb25zdCBzdHlsZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3N0eWxlJylcbiAgICBzdHlsZS5pZCA9IFNUWUxFX0lEXG4gICAgc3R5bGUudGV4dENvbnRlbnQgPSBTVFJFQU1ET1dOX1NUWUxFU1xuICAgIGRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQoc3R5bGUpXG4gIH0sIFtdKVxufVxuIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUFTQSxTQUFTLFFBQVEsT0FBTztBQUNqQyxTQUFTQyxpQkFBaUIsUUFBUSxxQkFBcUI7QUFFdkQsSUFBTUMsUUFBUSxHQUFHLHdCQUF3Qjs7QUFFekM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU8sSUFBTUMsbUJBQW1CLEdBQUcsU0FBdEJBLG1CQUFtQkEsQ0FBQSxFQUFTO0VBQ3ZDSCxTQUFTLENBQUMsWUFBTTtJQUNkLElBQUksT0FBT0ksUUFBUSxLQUFLLFdBQVcsRUFBRTtJQUNyQyxJQUFJQSxRQUFRLENBQUNDLGNBQWMsQ0FBQ0gsUUFBUSxDQUFDLEVBQUU7SUFFdkMsSUFBTUksS0FBSyxHQUFHRixRQUFRLENBQUNHLGFBQWEsQ0FBQyxPQUFPLENBQUM7SUFDN0NELEtBQUssQ0FBQ0UsRUFBRSxHQUFHTixRQUFRO0lBQ25CSSxLQUFLLENBQUNHLFdBQVcsR0FBR1IsaUJBQWlCO0lBQ3JDRyxRQUFRLENBQUNNLElBQUksQ0FBQ0MsV0FBVyxDQUFDTCxLQUFLLENBQUM7RUFDbEMsQ0FBQyxFQUFFLEVBQUUsQ0FBQztBQUNSLENBQUMiLCJpZ25vcmVMaXN0IjpbXX0=
package/lib/index.css CHANGED
@@ -1,27 +1,309 @@
1
+ @tailwind base;
2
+ @tailwind components;
3
+ @tailwind utilities;
4
+
5
+ /* Streamdown classes are included via tailwind.config.js content */
6
+
7
+ @layer base {
8
+ /* Prevent Tailwind from resetting link styles */
9
+ a {
10
+ color: revert;
11
+ text-decoration: revert;
12
+ }
13
+
14
+ :root {
15
+ --background: 0 0% 100%;
16
+ --foreground: 222.2 84% 4.9%;
17
+ --card: 0 0% 100%;
18
+ --card-foreground: 222.2 84% 4.9%;
19
+ --popover: 0 0% 100%;
20
+ --popover-foreground: 222.2 84% 4.9%;
21
+ --primary: 222.2 47.4% 11.2%;
22
+ --primary-foreground: 210 40% 98%;
23
+ --secondary: 210 40% 96.1%;
24
+ --secondary-foreground: 222.2 47.4% 11.2%;
25
+ --muted: 210 40% 96.1%;
26
+ --muted-foreground: 215.4 16.3% 46.9%;
27
+ --accent: 210 40% 96.1%;
28
+ --accent-foreground: 222.2 47.4% 11.2%;
29
+ --destructive: 0 84.2% 60.2%;
30
+ --destructive-foreground: 210 40% 98%;
31
+ --border: 214.3 31.8% 91.4%;
32
+ --input: 214.3 31.8% 91.4%;
33
+ --ring: 222.2 84% 4.9%;
34
+ --radius: 0.5rem;
35
+ }
36
+
37
+ .dark {
38
+ --background: 222.2 84% 4.9%;
39
+ --foreground: 210 40% 98%;
40
+ --card: 222.2 84% 4.9%;
41
+ --card-foreground: 210 40% 98%;
42
+ --popover: 222.2 84% 4.9%;
43
+ --popover-foreground: 210 40% 98%;
44
+ --primary: 210 40% 98%;
45
+ --primary-foreground: 222.2 47.4% 11.2%;
46
+ --secondary: 217.2 32.6% 17.5%;
47
+ --secondary-foreground: 210 40% 98%;
48
+ --muted: 217.2 32.6% 17.5%;
49
+ --muted-foreground: 215 20.2% 65.1%;
50
+ --accent: 217.2 32.6% 17.5%;
51
+ --accent-foreground: 210 40% 98%;
52
+ --destructive: 0 62.8% 30.6%;
53
+ --destructive-foreground: 210 40% 98%;
54
+ --border: 217.2 32.6% 17.5%;
55
+ --input: 217.2 32.6% 17.5%;
56
+ --ring: 212.7 26.8% 83.9%;
57
+ }
58
+ }
59
+
1
60
  body {
2
61
  font-family: 'Work-Sans', -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen",
3
62
  "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue",
4
63
  sans-serif;
5
64
  -webkit-font-smoothing: antialiased;
6
65
  -moz-osx-font-smoothing: grayscale;
66
+ }
67
+
68
+ /* Code blocks - github-light theme, fondo transparente */
69
+ [data-streamdown="code-block"] {
70
+ position: relative;
71
+ margin: 1rem 0;
72
+ background: transparent !important;
73
+ border: none !important;
74
+ border-radius: 0.75rem;
75
+ overflow: hidden;
76
+ }
77
+
78
+ [data-streamdown="code-block"] > div {
79
+ border: none !important;
80
+ background: transparent !important;
81
+ }
82
+
83
+ [data-streamdown="code-block"] pre,
84
+ [data-streamdown="code-block"] pre.shiki,
85
+ .shiki {
86
+ background-color: transparent !important;
87
+ border-radius: 0 !important;
88
+ padding: 1rem 1.25rem 1.25rem !important;
89
+ border: none !important;
90
+ margin: 0 !important;
91
+ }
92
+
93
+ /* Números de línea: 13px -> 12px */
94
+ [data-streamdown="code-block"] pre code > span::before,
95
+ [data-streamdown="code-block-body"] pre code > span::before {
96
+ font-size: 12px !important;
97
+ }
98
+
99
+ /* Language label inside the block */
100
+ [data-streamdown="code-block-language"] {
101
+ display: block !important;
102
+ color: #6e7681 !important;
103
+ font-size: 0.75rem;
104
+ font-weight: 500;
105
+ padding: 0.75rem 1.25rem 0;
106
+ text-transform: lowercase;
107
+ letter-spacing: 0.02em;
108
+ background: transparent !important;
109
+ border: none !important;
110
+ }
111
+
112
+ /* Tables - scroll container: solo la tabla hace scroll horizontal, no todo el contenedor */
113
+ [data-streamdown="table-wrapper"] {
114
+ width: 100%;
115
+ max-width: 100%;
116
+ margin: 1rem 0;
117
+ overflow-x: auto;
118
+ overflow-y: visible;
119
+ border-radius: 0.75rem;
120
+ border: none !important;
121
+ -webkit-overflow-scrolling: touch;
122
+ }
123
+
124
+ [data-streamdown="table-wrapper"] > div {
125
+ border: none !important;
126
+ }
127
+
128
+ /* Tables - estilos claros con líneas horizontales */
129
+ [data-streamdown="table"] {
130
+ width: max-content;
131
+ min-width: 100%;
132
+ margin: 0 0 0.75rem 0;
133
+ border-collapse: collapse;
134
+ border-spacing: 0;
135
+ background: transparent;
136
+ overflow: hidden;
137
+ border: none !important;
138
+ }
139
+
140
+ [data-streamdown="table"] thead {
141
+ background: transparent;
142
+ border-bottom: 1px solid #BFBFBF;
143
+ }
144
+
145
+ [data-streamdown="table"] th {
146
+ color: #000;
147
+ font-family: "Work Sans", sans-serif;
148
+ font-size: 16px;
149
+ font-style: normal;
150
+ font-weight: 500;
151
+ line-height: 26px;
152
+ text-align: left;
153
+ padding: 1rem 1.25rem;
154
+ }
155
+
156
+ [data-streamdown="table"] td {
157
+ color: #000;
158
+ font-family: "Work Sans", sans-serif;
159
+ font-size: 16px;
160
+ font-style: normal;
7
161
  font-weight: 400;
8
- font-size: 14px;
9
- line-height: 1.42857143;
10
- -webkit-text-size-adjust: 100%;
162
+ line-height: 26px;
163
+ padding: 1rem 1.25rem;
164
+ border-bottom: 1px solid #D9D9D9;
165
+ }
166
+
167
+ [data-streamdown="table"] tbody tr:last-child td {
168
+ border-bottom: none;
169
+ }
170
+
171
+ /* Mermaid diagrams */
172
+ [data-streamdown="mermaid"] {
173
+ margin: 1rem 0;
174
+ overflow: visible;
175
+ max-width: 100%;
176
+ min-height: 500px;
177
+ }
178
+
179
+ [data-streamdown="mermaid"] svg {
180
+ overflow: visible !important;
181
+ min-height: 500px;
182
+ max-width: 100%;
11
183
  }
12
184
 
13
- h1,
14
- h2,
15
- h3,
16
- h4,
17
- h5,
18
- h6,
19
- p,
20
- ul {
21
- margin: 0;
22
- padding: 0;
185
+ [data-streamdown="mermaid"] .node rect,
186
+ [data-streamdown="mermaid"] .node polygon {
187
+ rx: 8px;
188
+ ry: 8px;
23
189
  }
24
190
 
25
- ul {
26
- list-style: none;
191
+ /* Edge labels (text on arrows) - prevent clipping */
192
+ [data-streamdown="mermaid"] .edgeLabel {
193
+ background-color: transparent !important;
27
194
  }
195
+
196
+ [data-streamdown="mermaid"] .edgeLabel .label {
197
+ background-color: #fce7f3 !important;
198
+ padding: 2px 4px;
199
+ }
200
+
201
+
202
+ /* Dropdowns de copy/download (tablas, mermaid) - fondo blanco */
203
+ [data-streamdown="table-wrapper"] div[class*="absolute"][class*="top-full"],
204
+ [data-streamdown="mermaid-block"] div[class*="absolute"][class*="top-full"] {
205
+ background: #fff !important;
206
+ }
207
+
208
+ /* Barra de acciones (code-block, mermaid) - fondo blanco */
209
+ [data-streamdown="code-block-actions"],
210
+ [data-streamdown="mermaid-block-actions"] {
211
+ background: transparent !important;
212
+ border-color: transparent !important;
213
+ }
214
+
215
+ /* Link Safety Modal - dark theme */
216
+ /* Backdrop overlay */
217
+ [data-streamdown="link-safety-modal"] {
218
+ background: rgba(0, 0, 0, 0.7) !important;
219
+ }
220
+
221
+ /* Modal container */
222
+ [data-streamdown="link-safety-modal"] > div {
223
+ background: #1e1e2e !important;
224
+ border: 1px solid #3d3d4d !important;
225
+ border-radius: 0.75rem !important;
226
+ box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5) !important;
227
+ padding: 1.5rem !important;
228
+ position: relative !important;
229
+ }
230
+
231
+ /* Botón de cerrar (X) - posicionarlo correctamente */
232
+ [data-streamdown="link-safety-modal"] > div > button:first-child {
233
+ position: absolute !important;
234
+ top: 0.75rem !important;
235
+ right: 0.75rem !important;
236
+ color: #9ca3af !important;
237
+ background: transparent !important;
238
+ border: none !important;
239
+ padding: 0.25rem !important;
240
+ line-height: 1 !important;
241
+ }
242
+
243
+ [data-streamdown="link-safety-modal"] > div > button:first-child:hover {
244
+ color: #ffffff !important;
245
+ }
246
+ [data-streamdown="link-safety-modal"] h2,
247
+ [data-streamdown="link-safety-modal"] h3,
248
+ [data-streamdown="link-safety-modal"] p,
249
+ [data-streamdown="link-safety-modal"] span,
250
+ [data-streamdown="link-safety-modal"] label {
251
+ color: #e0e0e0 !important;
252
+ }
253
+
254
+ /* Título */
255
+ [data-streamdown="link-safety-modal"] h2,
256
+ [data-streamdown="link-safety-modal"] h3 {
257
+ color: #ffffff !important;
258
+ font-weight: 600 !important;
259
+ }
260
+
261
+ /* URL link */
262
+ [data-streamdown="link-safety-modal"] a {
263
+ color: #58a6ff !important;
264
+ word-break: break-all;
265
+ }
266
+
267
+ /* Botón de cerrar (X) */
268
+ [data-streamdown="link-safety-modal"] button[aria-label="Close"],
269
+ [data-streamdown="link-safety-modal"] > div > button:first-child {
270
+ color: #9ca3af !important;
271
+ }
272
+
273
+ [data-streamdown="link-safety-modal"] button[aria-label="Close"]:hover,
274
+ [data-streamdown="link-safety-modal"] > div > button:first-child:hover {
275
+ color: #ffffff !important;
276
+ }
277
+
278
+ /* Container de botones */
279
+ [data-streamdown="link-safety-modal"] > div > div:last-child {
280
+ display: flex;
281
+ gap: 0.75rem;
282
+ margin-top: 1rem;
283
+ }
284
+
285
+ /* Botón secundario (Copy link) */
286
+ [data-streamdown="link-safety-modal"] > div > div:last-child button:first-of-type {
287
+ background: #2d2d3d !important;
288
+ color: #e0e0e0 !important;
289
+ border: 1px solid #3d3d4d !important;
290
+ border-radius: 0.5rem !important;
291
+ padding: 0.5rem 1rem !important;
292
+ }
293
+
294
+ [data-streamdown="link-safety-modal"] > div > div:last-child button:first-of-type:hover {
295
+ background: #3d3d4d !important;
296
+ }
297
+
298
+ /* Botón primario (Open link) */
299
+ [data-streamdown="link-safety-modal"] > div > div:last-child button:last-of-type {
300
+ background: #2563eb !important;
301
+ color: #ffffff !important;
302
+ border: none !important;
303
+ border-radius: 0.5rem !important;
304
+ padding: 0.5rem 1rem !important;
305
+ }
306
+
307
+ [data-streamdown="link-safety-modal"] > div > div:last-child button:last-of-type:hover {
308
+ background: #1d4ed8 !important;
309
+ }