@projectcor/maia-components 2.11.78-16 → 2.11.78-2

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 (43) hide show
  1. package/CHANGELOG.md +0 -15
  2. package/lib/components/atoms/SessionGeneratingDot/SessionGeneratingDot.js +17 -0
  3. package/lib/components/atoms/SessionGeneratingDot/SessionGeneratingDot.styles.js +15 -0
  4. package/lib/components/atoms/SessionGeneratingDot/index.js +2 -0
  5. package/lib/components/atoms/SessionUnreadDot/SessionUnreadDot.js +12 -0
  6. package/lib/components/atoms/SessionUnreadDot/SessionUnreadDot.styles.js +8 -0
  7. package/lib/components/atoms/SessionUnreadDot/index.js +2 -0
  8. package/lib/components/molecules/ChatAIMessages/ChatAIMessages.js +46 -7
  9. package/lib/components/molecules/ChatAIModal/ChatAIModal.js +4 -5
  10. package/lib/components/molecules/Sidebar/Sidebar.js +51 -42
  11. package/lib/components/molecules/Sidebar/Sidebar.styles.js +10 -6
  12. package/lib/components/organisms/ChatAI/ChatAI.js +10 -2
  13. package/lib/hooks/useChatManager/useChatManager.js +456 -428
  14. package/lib/hooks/useChatMessages/useChatMessages.js +411 -249
  15. package/lib/hooks/useChats/useChats.js +8 -3
  16. package/lib/hooks/useOrchestratorStream/useOrchestratorStream.interface.js +1 -1
  17. package/lib/hooks/useOrchestratorStream/useOrchestratorStream.js +140 -496
  18. package/lib/hooks/useStreamingMessage/index.js +2 -3
  19. package/lib/hooks/useStreamingMessage/useStreamingMessage.js +13 -17
  20. package/lib/lang/br/index.js +7 -4
  21. package/lib/lang/en/index.js +7 -4
  22. package/lib/lang/es/index.js +7 -4
  23. package/lib/lang/fr/index.js +9 -5
  24. package/lib/store/chatsSidebarOptimistic.js +87 -0
  25. package/lib/store/chatsStore.types.js +1 -1
  26. package/lib/store/sessions/activeView.js +22 -0
  27. package/lib/store/sessions/index.js +10 -0
  28. package/lib/store/sessions/sessionHitlContext.js +15 -0
  29. package/lib/store/sessions/sessionNotificationSound.js +57 -0
  30. package/lib/store/sessions/sessionNotifications.js +111 -0
  31. package/lib/store/sessions/sessionNotifications.types.js +2 -0
  32. package/lib/store/sessions/sessionStreamManager.js +585 -0
  33. package/lib/store/sessions/sessionStreamingText.js +80 -0
  34. package/lib/store/sessions/sessionUnreadPersistence.js +49 -0
  35. package/lib/store/sessions/sessions.types.js +35 -0
  36. package/lib/store/sessions/useSessionMeta.js +39 -0
  37. package/lib/store/sessions/useSessionStreamingText.js +18 -0
  38. package/lib/store/sessions/useSessionsStore.js +234 -0
  39. package/lib/store/useChatsStore.js +41 -9
  40. package/lib/types/streamActivity.js +1 -1
  41. package/lib/types/userType.d.js +1 -1
  42. package/package.json +31 -70
  43. package/lib/hooks/useStreamingMessage/streamingStore.js +0 -69
@@ -8,9 +8,11 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
8
8
  /* eslint-disable @typescript-eslint/no-explicit-any */
9
9
  import { create } from 'zustand';
10
10
  import maia from '../services/maia';
11
+ import { removePersistedSessionUnread } from './sessions/sessionUnreadPersistence';
11
12
  var DEFAULT_LIMIT = 20;
12
13
  var initialState = {
13
14
  chats: [],
15
+ optimisticSessionIds: [],
14
16
  loadingChats: true,
15
17
  isLoadingMoreChats: false,
16
18
  nextOffset: null,
@@ -22,14 +24,17 @@ export var useChatsStore = create(function (set, get) {
22
24
  return _objectSpread(_objectSpread({}, initialState), {}, {
23
25
  fetchChats: function () {
24
26
  var _fetchChats = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(_ref) {
25
- var agent, section, _ref$limit, limit, _ref$offset, offset, onError, lang, _yield$maia$Chats$get, items, nextItem, hasMore, nextOffset, _t;
27
+ var agent, section, _ref$limit, limit, _ref$offset, offset, onError, lang, _ref$background, background, hasExistingChats, _yield$maia$Chats$get, items, nextItem, hasMore, nextOffset, apiItems, apiIds, _get, currentChats, optimisticSessionIds, stillOptimistic, _t;
26
28
  return _regeneratorRuntime.wrap(function (_context) {
27
29
  while (1) switch (_context.prev = _context.next) {
28
30
  case 0:
29
- agent = _ref.agent, section = _ref.section, _ref$limit = _ref.limit, limit = _ref$limit === void 0 ? DEFAULT_LIMIT : _ref$limit, _ref$offset = _ref.offset, offset = _ref$offset === void 0 ? 0 : _ref$offset, onError = _ref.onError, lang = _ref.lang;
30
- set({
31
- loadingChats: true
32
- });
31
+ agent = _ref.agent, section = _ref.section, _ref$limit = _ref.limit, limit = _ref$limit === void 0 ? DEFAULT_LIMIT : _ref$limit, _ref$offset = _ref.offset, offset = _ref$offset === void 0 ? 0 : _ref$offset, onError = _ref.onError, lang = _ref.lang, _ref$background = _ref.background, background = _ref$background === void 0 ? false : _ref$background;
32
+ hasExistingChats = get().chats.length > 0;
33
+ if (!background || !hasExistingChats) {
34
+ set({
35
+ loadingChats: true
36
+ });
37
+ }
33
38
  _context.prev = 1;
34
39
  _context.next = 2;
35
40
  return maia.Chats.getChatsByUserId({
@@ -45,8 +50,19 @@ export var useChatsStore = create(function (set, get) {
45
50
  nextItem = _yield$maia$Chats$get.nextItem;
46
51
  hasMore = _yield$maia$Chats$get.hasMore;
47
52
  nextOffset = hasMore && nextItem ? Number(nextItem) : null;
53
+ apiItems = items;
54
+ apiIds = new Set(apiItems.map(function (item) {
55
+ return item.sessionExternalId;
56
+ }));
57
+ _get = get(), currentChats = _get.chats, optimisticSessionIds = _get.optimisticSessionIds;
58
+ stillOptimistic = currentChats.filter(function (chat) {
59
+ return optimisticSessionIds.includes(chat.sessionExternalId) && !apiIds.has(chat.sessionExternalId);
60
+ });
48
61
  set({
49
- chats: items,
62
+ chats: [].concat(_toConsumableArray(stillOptimistic), _toConsumableArray(apiItems)),
63
+ optimisticSessionIds: optimisticSessionIds.filter(function (id) {
64
+ return !apiIds.has(id);
65
+ }),
50
66
  loadingChats: false,
51
67
  nextOffset: nextOffset,
52
68
  limit: limit,
@@ -75,12 +91,12 @@ export var useChatsStore = create(function (set, get) {
75
91
  }(),
76
92
  loadMoreChats: function () {
77
93
  var _loadMoreChats = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee2(_ref2) {
78
- var agent, section, onError, lang, _get, nextOffset, limit, isLoadingMoreChats, _yield$maia$Chats$get2, items, nextItem, hasMore, newNextOffset, _t2;
94
+ var agent, section, onError, lang, _get2, nextOffset, limit, isLoadingMoreChats, _yield$maia$Chats$get2, items, nextItem, hasMore, newNextOffset, _t2;
79
95
  return _regeneratorRuntime.wrap(function (_context2) {
80
96
  while (1) switch (_context2.prev = _context2.next) {
81
97
  case 0:
82
98
  agent = _ref2.agent, section = _ref2.section, onError = _ref2.onError, lang = _ref2.lang;
83
- _get = get(), nextOffset = _get.nextOffset, limit = _get.limit, isLoadingMoreChats = _get.isLoadingMoreChats;
99
+ _get2 = get(), nextOffset = _get2.nextOffset, limit = _get2.limit, isLoadingMoreChats = _get2.isLoadingMoreChats;
84
100
  if (!(nextOffset === null || isLoadingMoreChats)) {
85
101
  _context2.next = 1;
86
102
  break;
@@ -134,6 +150,18 @@ export var useChatsStore = create(function (set, get) {
134
150
  }
135
151
  return loadMoreChats;
136
152
  }(),
153
+ prependChat: function prependChat(chat) {
154
+ return set(function (state) {
155
+ var filtered = state.chats.filter(function (existing) {
156
+ return existing.sessionExternalId !== chat.sessionExternalId;
157
+ });
158
+ var alreadyOptimistic = state.optimisticSessionIds.includes(chat.sessionExternalId);
159
+ return {
160
+ chats: [chat].concat(_toConsumableArray(filtered)),
161
+ optimisticSessionIds: alreadyOptimistic ? state.optimisticSessionIds : [].concat(_toConsumableArray(state.optimisticSessionIds), [chat.sessionExternalId])
162
+ };
163
+ });
164
+ },
137
165
  deleteChat: function () {
138
166
  var _deleteChat = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee3(_ref3) {
139
167
  var chatId, userId, _t3;
@@ -148,10 +176,14 @@ export var useChatsStore = create(function (set, get) {
148
176
  userId: userId
149
177
  });
150
178
  case 2:
179
+ removePersistedSessionUnread(chatId);
151
180
  set(function (state) {
152
181
  return {
153
182
  chats: state.chats.filter(function (chat) {
154
183
  return chat.sessionExternalId !== chatId;
184
+ }),
185
+ optimisticSessionIds: state.optimisticSessionIds.filter(function (id) {
186
+ return id !== chatId;
155
187
  })
156
188
  };
157
189
  });
@@ -247,4 +279,4 @@ export var useChatsStore = create(function (set, get) {
247
279
  export var getChatsStoreState = function getChatsStoreState() {
248
280
  return useChatsStore.getState();
249
281
  };
250
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjcmVhdGUiLCJtYWlhIiwiREVGQVVMVF9MSU1JVCIsImluaXRpYWxTdGF0ZSIsImNoYXRzIiwibG9hZGluZ0NoYXRzIiwiaXNMb2FkaW5nTW9yZUNoYXRzIiwibmV4dE9mZnNldCIsImxpbWl0Iiwib2Zmc2V0IiwibW91bnRDb3VudCIsInVzZUNoYXRzU3RvcmUiLCJzZXQiLCJnZXQiLCJfb2JqZWN0U3ByZWFkIiwiZmV0Y2hDaGF0cyIsIl9mZXRjaENoYXRzIiwiX2FzeW5jVG9HZW5lcmF0b3IiLCJfcmVnZW5lcmF0b3JSdW50aW1lIiwibWFyayIsIl9jYWxsZWUiLCJfcmVmIiwiYWdlbnQiLCJzZWN0aW9uIiwiX3JlZiRsaW1pdCIsIl9yZWYkb2Zmc2V0Iiwib25FcnJvciIsImxhbmciLCJfeWllbGQkbWFpYSRDaGF0cyRnZXQiLCJpdGVtcyIsIm5leHRJdGVtIiwiaGFzTW9yZSIsIl90Iiwid3JhcCIsIl9jb250ZXh0IiwicHJldiIsIm5leHQiLCJDaGF0cyIsImdldENoYXRzQnlVc2VySWQiLCJzZW50IiwiTnVtYmVyIiwiY29uc29sZSIsImVycm9yIiwic3RvcCIsIl94IiwiYXBwbHkiLCJhcmd1bWVudHMiLCJsb2FkTW9yZUNoYXRzIiwiX2xvYWRNb3JlQ2hhdHMiLCJfY2FsbGVlMiIsIl9yZWYyIiwiX2dldCIsIl95aWVsZCRtYWlhJENoYXRzJGdldDIiLCJuZXdOZXh0T2Zmc2V0IiwiX3QyIiwiX2NvbnRleHQyIiwiYWJydXB0Iiwic3RhdGUiLCJjb25jYXQiLCJfdG9Db25zdW1hYmxlQXJyYXkiLCJfeDIiLCJkZWxldGVDaGF0IiwiX2RlbGV0ZUNoYXQiLCJfY2FsbGVlMyIsIl9yZWYzIiwiY2hhdElkIiwidXNlcklkIiwiX3QzIiwiX2NvbnRleHQzIiwiZmlsdGVyIiwiY2hhdCIsInNlc3Npb25FeHRlcm5hbElkIiwiX3gzIiwidXBkYXRlQ2hhdCIsIl91cGRhdGVDaGF0IiwiX2NhbGxlZTQiLCJfcmVmNCIsIl9jdXJyZW50JHRpdGxlIiwiY3VycmVudCIsImxhc3RRdWVzdGlvbiIsIl90NCIsIl9jb250ZXh0NCIsImZpbmQiLCJjIiwiaWQiLCJ0aXRsZSIsInBhdGNoQ2hhdCIsIm1hcCIsIl94NCIsInJlc2V0IiwiYWNxdWlyZSIsInJlbGVhc2UiLCJuZXdDb3VudCIsIk1hdGgiLCJtYXgiLCJnZXRDaGF0c1N0b3JlU3RhdGUiLCJnZXRTdGF0ZSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdG9yZS91c2VDaGF0c1N0b3JlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIGltcG9ydC9uby1leHRyYW5lb3VzLWRlcGVuZGVuY2llcyAqL1xuLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAqL1xuaW1wb3J0IHsgY3JlYXRlIH0gZnJvbSAnenVzdGFuZCdcbmltcG9ydCBtYWlhIGZyb20gJy4uL3NlcnZpY2VzL21haWEnXG5pbXBvcnQgdHlwZSB7IENoYXRMaXN0SXRlbSwgRmV0Y2hDaGF0c1BhcmFtcywgTG9hZE1vcmVDaGF0c1BhcmFtcywgRGVsZXRlQ2hhdFBhcmFtcyB9IGZyb20gJy4vY2hhdHNTdG9yZS50eXBlcydcblxuY29uc3QgREVGQVVMVF9MSU1JVCA9IDIwXG5cbnR5cGUgQ2hhdHNTdGF0ZSA9IHtcbiAgY2hhdHM6IENoYXRMaXN0SXRlbVtdXG4gIGxvYWRpbmdDaGF0czogYm9vbGVhblxuICBpc0xvYWRpbmdNb3JlQ2hhdHM6IGJvb2xlYW5cbiAgbmV4dE9mZnNldDogbnVtYmVyIHwgbnVsbFxuICBsaW1pdDogbnVtYmVyXG4gIG9mZnNldDogbnVtYmVyXG4gIG1vdW50Q291bnQ6IG51bWJlclxufVxuXG50eXBlIENoYXRzQWN0aW9ucyA9IHtcbiAgZmV0Y2hDaGF0czogKHBhcmFtczogRmV0Y2hDaGF0c1BhcmFtcykgPT4gUHJvbWlzZTx2b2lkPlxuICBsb2FkTW9yZUNoYXRzOiAocGFyYW1zOiBMb2FkTW9yZUNoYXRzUGFyYW1zKSA9PiBQcm9taXNlPHZvaWQ+XG4gIGRlbGV0ZUNoYXQ6IChwYXJhbXM6IERlbGV0ZUNoYXRQYXJhbXMpID0+IFByb21pc2U8Ym9vbGVhbj5cbiAgdXBkYXRlQ2hhdDogKGNoYXQ6IFBhcnRpYWw8Q2hhdExpc3RJdGVtPiAmIHsgc2Vzc2lvbkV4dGVybmFsSWQ6IHN0cmluZzsgaWQ6IHN0cmluZyB9KSA9PiBQcm9taXNlPGJvb2xlYW4+XG4gIHJlc2V0OiAoKSA9PiB2b2lkXG4gIGFjcXVpcmU6ICgpID0+IHZvaWRcbiAgcmVsZWFzZTogKCkgPT4gdm9pZFxufVxuXG5jb25zdCBpbml0aWFsU3RhdGU6IENoYXRzU3RhdGUgPSB7XG4gIGNoYXRzOiBbXSxcbiAgbG9hZGluZ0NoYXRzOiB0cnVlLFxuICBpc0xvYWRpbmdNb3JlQ2hhdHM6IGZhbHNlLFxuICBuZXh0T2Zmc2V0OiBudWxsLFxuICBsaW1pdDogREVGQVVMVF9MSU1JVCxcbiAgb2Zmc2V0OiAwLFxuICBtb3VudENvdW50OiAwLFxufVxuXG5leHBvcnQgY29uc3QgdXNlQ2hhdHNTdG9yZSA9IGNyZWF0ZTxDaGF0c1N0YXRlICYgQ2hhdHNBY3Rpb25zPigoc2V0LCBnZXQpID0+ICh7XG4gIC4uLmluaXRpYWxTdGF0ZSxcblxuICBmZXRjaENoYXRzOiBhc3luYyAoeyBhZ2VudCwgc2VjdGlvbiwgbGltaXQgPSBERUZBVUxUX0xJTUlULCBvZmZzZXQgPSAwLCBvbkVycm9yLCBsYW5nIH0pID0+IHtcbiAgICBzZXQoeyBsb2FkaW5nQ2hhdHM6IHRydWUgfSlcbiAgICB0cnkge1xuICAgICAgY29uc3QgeyBpdGVtcywgbmV4dEl0ZW0sIGhhc01vcmUgfSA9IGF3YWl0IG1haWEuQ2hhdHMuZ2V0Q2hhdHNCeVVzZXJJZCh7XG4gICAgICAgIGFnZW50LFxuICAgICAgICBzZWN0aW9uLFxuICAgICAgICBsaW1pdCxcbiAgICAgICAgb2Zmc2V0LFxuICAgICAgICBsYW5nLFxuICAgICAgfSlcbiAgICAgIGNvbnN0IG5leHRPZmZzZXQgPSBoYXNNb3JlICYmIG5leHRJdGVtID8gTnVtYmVyKG5leHRJdGVtKSA6IG51bGxcbiAgICAgIHNldCh7XG4gICAgICAgIGNoYXRzOiBpdGVtcyBhcyBDaGF0TGlzdEl0ZW1bXSxcbiAgICAgICAgbG9hZGluZ0NoYXRzOiBmYWxzZSxcbiAgICAgICAgbmV4dE9mZnNldCxcbiAgICAgICAgbGltaXQsXG4gICAgICAgIG9mZnNldDogbmV4dE9mZnNldCA/PyAwLFxuICAgICAgfSlcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgZmV0Y2hpbmcgY2hhdHM6JywgZXJyb3IpXG4gICAgICBzZXQoeyBsb2FkaW5nQ2hhdHM6IGZhbHNlIH0pXG4gICAgICBvbkVycm9yPy4oKVxuICAgIH1cbiAgfSxcblxuICBsb2FkTW9yZUNoYXRzOiBhc3luYyAoeyBhZ2VudCwgc2VjdGlvbiwgb25FcnJvciwgbGFuZyB9KSA9PiB7XG4gICAgY29uc3QgeyBuZXh0T2Zmc2V0LCBsaW1pdCwgaXNMb2FkaW5nTW9yZUNoYXRzIH0gPSBnZXQoKVxuICAgIGlmIChuZXh0T2Zmc2V0ID09PSBudWxsIHx8IGlzTG9hZGluZ01vcmVDaGF0cykgcmV0dXJuXG4gICAgc2V0KHsgaXNMb2FkaW5nTW9yZUNoYXRzOiB0cnVlIH0pXG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHsgaXRlbXMsIG5leHRJdGVtLCBoYXNNb3JlIH0gPSBhd2FpdCBtYWlhLkNoYXRzLmdldENoYXRzQnlVc2VySWQoe1xuICAgICAgICBhZ2VudCxcbiAgICAgICAgc2VjdGlvbixcbiAgICAgICAgbGltaXQsXG4gICAgICAgIG9mZnNldDogbmV4dE9mZnNldCxcbiAgICAgICAgbGFuZyxcbiAgICAgIH0pXG4gICAgICBjb25zdCBuZXdOZXh0T2Zmc2V0ID0gaGFzTW9yZSAmJiBuZXh0SXRlbSA/IE51bWJlcihuZXh0SXRlbSkgOiBudWxsXG4gICAgICBzZXQoc3RhdGUgPT4gKHtcbiAgICAgICAgY2hhdHM6IFsuLi5zdGF0ZS5jaGF0cywgLi4uKGl0ZW1zIGFzIENoYXRMaXN0SXRlbVtdKV0sXG4gICAgICAgIGlzTG9hZGluZ01vcmVDaGF0czogZmFsc2UsXG4gICAgICAgIG5leHRPZmZzZXQ6IG5ld05leHRPZmZzZXQsXG4gICAgICAgIG9mZnNldDogbmV3TmV4dE9mZnNldCA/PyAwLFxuICAgICAgfSkpXG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGxvYWRpbmcgbW9yZSBjaGF0czonLCBlcnJvcilcbiAgICAgIHNldCh7IGlzTG9hZGluZ01vcmVDaGF0czogZmFsc2UgfSlcbiAgICAgIG9uRXJyb3I/LigpXG4gICAgfVxuICB9LFxuXG4gIGRlbGV0ZUNoYXQ6IGFzeW5jICh7IGNoYXRJZCwgdXNlcklkIH0pID0+IHtcbiAgICB0cnkge1xuICAgICAgYXdhaXQgbWFpYS5DaGF0cy5kZWxldGVDaGF0KHsgY2hhdElkLCB1c2VySWQgfSlcbiAgICAgIHNldChzdGF0ZSA9PiAoe1xuICAgICAgICBjaGF0czogc3RhdGUuY2hhdHMuZmlsdGVyKGNoYXQgPT4gY2hhdC5zZXNzaW9uRXh0ZXJuYWxJZCAhPT0gY2hhdElkKSxcbiAgICAgIH0pKVxuICAgICAgcmV0dXJuIHRydWVcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgZGVsZXRpbmcgY2hhdDonLCBlcnJvcilcbiAgICAgIHJldHVybiBmYWxzZVxuICAgIH1cbiAgfSxcblxuICB1cGRhdGVDaGF0OiBhc3luYyBjaGF0ID0+IHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgY3VycmVudCA9IGdldCgpLmNoYXRzLmZpbmQoYyA9PiBjLmlkID09PSBjaGF0LmlkKVxuICAgICAgY29uc3QgbGFzdFF1ZXN0aW9uID0gY3VycmVudD8udGl0bGUgPz8gY2hhdC50aXRsZSA/PyAnJ1xuICAgICAgYXdhaXQgbWFpYS5DaGF0cy5wYXRjaENoYXQoe1xuICAgICAgICBjaGF0SWQ6IGNoYXQuc2Vzc2lvbkV4dGVybmFsSWQsXG4gICAgICAgIGxhc3RRdWVzdGlvbixcbiAgICAgICAgLi4uKGNoYXQudGl0bGUgIT0gbnVsbCAmJiB7IHRpdGxlOiBjaGF0LnRpdGxlIH0pLFxuICAgICAgfSlcbiAgICAgIHNldChzdGF0ZSA9PiAoe1xuICAgICAgICBjaGF0czogc3RhdGUuY2hhdHMubWFwKGMgPT4gKGMuaWQgPT09IGNoYXQuaWQgPyB7IC4uLmMsIC4uLmNoYXQgfSA6IGMpKSxcbiAgICAgIH0pKVxuICAgICAgcmV0dXJuIHRydWVcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgdXBkYXRpbmcgY2hhdDonLCBlcnJvcilcbiAgICAgIHJldHVybiBmYWxzZVxuICAgIH1cbiAgfSxcblxuICByZXNldDogKCkgPT4gc2V0KHN0YXRlID0+ICh7IC4uLmluaXRpYWxTdGF0ZSwgbW91bnRDb3VudDogc3RhdGUubW91bnRDb3VudCB9KSksXG5cbiAgYWNxdWlyZTogKCkgPT4gc2V0KHN0YXRlID0+ICh7IG1vdW50Q291bnQ6IHN0YXRlLm1vdW50Q291bnQgKyAxIH0pKSxcblxuICByZWxlYXNlOiAoKSA9PiB7XG4gICAgc2V0KHN0YXRlID0+IHtcbiAgICAgIGNvbnN0IG5ld0NvdW50ID0gTWF0aC5tYXgoMCwgc3RhdGUubW91bnRDb3VudCAtIDEpXG4gICAgICBpZiAobmV3Q291bnQgPT09IDApIHtcbiAgICAgICAgcmV0dXJuIHsgLi4uaW5pdGlhbFN0YXRlLCBtb3VudENvdW50OiAwIH1cbiAgICAgIH1cbiAgICAgIHJldHVybiB7IG1vdW50Q291bnQ6IG5ld0NvdW50IH1cbiAgICB9KVxuICB9LFxufSkpXG5cbmV4cG9ydCBjb25zdCBnZXRDaGF0c1N0b3JlU3RhdGUgPSAoKSA9PiB1c2VDaGF0c1N0b3JlLmdldFN0YXRlKClcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUE7QUFDQTtBQUNBLFNBQVNBLE1BQU0sUUFBUSxTQUFTO0FBQ2hDLE9BQU9DLElBQUksTUFBTSxrQkFBa0I7QUFHbkMsSUFBTUMsYUFB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
282
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjcmVhdGUiLCJtYWlhIiwicmVtb3ZlUGVyc2lzdGVkU2Vzc2lvblVucmVhZCIsIkRFRkFVTFRfTElNSVQiLCJpbml0aWFsU3RhdGUiLCJjaGF0cyIsIm9wdGltaXN0aWNTZXNzaW9uSWRzIiwibG9hZGluZ0NoYXRzIiwiaXNMb2FkaW5nTW9yZUNoYXRzIiwibmV4dE9mZnNldCIsImxpbWl0Iiwib2Zmc2V0IiwibW91bnRDb3VudCIsInVzZUNoYXRzU3RvcmUiLCJzZXQiLCJnZXQiLCJfb2JqZWN0U3ByZWFkIiwiZmV0Y2hDaGF0cyIsIl9mZXRjaENoYXRzIiwiX2FzeW5jVG9HZW5lcmF0b3IiLCJfcmVnZW5lcmF0b3JSdW50aW1lIiwibWFyayIsIl9jYWxsZWUiLCJfcmVmIiwiYWdlbnQiLCJzZWN0aW9uIiwiX3JlZiRsaW1pdCIsIl9yZWYkb2Zmc2V0Iiwib25FcnJvciIsImxhbmciLCJfcmVmJGJhY2tncm91bmQiLCJiYWNrZ3JvdW5kIiwiaGFzRXhpc3RpbmdDaGF0cyIsIl95aWVsZCRtYWlhJENoYXRzJGdldCIsIml0ZW1zIiwibmV4dEl0ZW0iLCJoYXNNb3JlIiwiYXBpSXRlbXMiLCJhcGlJZHMiLCJfZ2V0IiwiY3VycmVudENoYXRzIiwic3RpbGxPcHRpbWlzdGljIiwiX3QiLCJ3cmFwIiwiX2NvbnRleHQiLCJwcmV2IiwibmV4dCIsImxlbmd0aCIsIkNoYXRzIiwiZ2V0Q2hhdHNCeVVzZXJJZCIsInNlbnQiLCJOdW1iZXIiLCJTZXQiLCJtYXAiLCJpdGVtIiwic2Vzc2lvbkV4dGVybmFsSWQiLCJmaWx0ZXIiLCJjaGF0IiwiaW5jbHVkZXMiLCJoYXMiLCJjb25jYXQiLCJfdG9Db25zdW1hYmxlQXJyYXkiLCJpZCIsImNvbnNvbGUiLCJlcnJvciIsInN0b3AiLCJfeCIsImFwcGx5IiwiYXJndW1lbnRzIiwibG9hZE1vcmVDaGF0cyIsIl9sb2FkTW9yZUNoYXRzIiwiX2NhbGxlZTIiLCJfcmVmMiIsIl9nZXQyIiwiX3lpZWxkJG1haWEkQ2hhdHMkZ2V0MiIsIm5ld05leHRPZmZzZXQiLCJfdDIiLCJfY29udGV4dDIiLCJhYnJ1cHQiLCJzdGF0ZSIsIl94MiIsInByZXBlbmRDaGF0IiwiZmlsdGVyZWQiLCJleGlzdGluZyIsImFscmVhZHlPcHRpbWlzdGljIiwiZGVsZXRlQ2hhdCIsIl9kZWxldGVDaGF0IiwiX2NhbGxlZTMiLCJfcmVmMyIsImNoYXRJZCIsInVzZXJJZCIsIl90MyIsIl9jb250ZXh0MyIsIl94MyIsInVwZGF0ZUNoYXQiLCJfdXBkYXRlQ2hhdCIsIl9jYWxsZWU0IiwiX3JlZjQiLCJfY3VycmVudCR0aXRsZSIsImN1cnJlbnQiLCJsYXN0UXVlc3Rpb24iLCJfdDQiLCJfY29udGV4dDQiLCJmaW5kIiwiYyIsInRpdGxlIiwicGF0Y2hDaGF0IiwiX3g0IiwicmVzZXQiLCJhY3F1aXJlIiwicmVsZWFzZSIsIm5ld0NvdW50IiwiTWF0aCIsIm1heCIsImdldENoYXRzU3RvcmVTdGF0ZSIsImdldFN0YXRlIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3N0b3JlL3VzZUNoYXRzU3RvcmUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgaW1wb3J0L25vLWV4dHJhbmVvdXMtZGVwZW5kZW5jaWVzICovXG4vKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXG5pbXBvcnQgeyBjcmVhdGUgfSBmcm9tICd6dXN0YW5kJ1xuaW1wb3J0IG1haWEgZnJvbSAnLi4vc2VydmljZXMvbWFpYSdcbmltcG9ydCB0eXBlIHsgQ2hhdExpc3RJdGVtLCBGZXRjaENoYXRzUGFyYW1zLCBMb2FkTW9yZUNoYXRzUGFyYW1zLCBEZWxldGVDaGF0UGFyYW1zIH0gZnJvbSAnLi9jaGF0c1N0b3JlLnR5cGVzJ1xuaW1wb3J0IHsgcmVtb3ZlUGVyc2lzdGVkU2Vzc2lvblVucmVhZCB9IGZyb20gJy4vc2Vzc2lvbnMvc2Vzc2lvblVucmVhZFBlcnNpc3RlbmNlJ1xuXG5jb25zdCBERUZBVUxUX0xJTUlUID0gMjBcblxudHlwZSBDaGF0c1N0YXRlID0ge1xuICBjaGF0czogQ2hhdExpc3RJdGVtW11cbiAgLyoqIFNlc2lvbmVzIGFncmVnYWRhcyBvcHRpbWlzdGFtZW50ZSBoYXN0YSBxdWUgZWwgYmFja2VuZCBsYXMgZGV2dWVsdmEgZW4gR0VUIHNlc3Npb25zLiAqL1xuICBvcHRpbWlzdGljU2Vzc2lvbklkczogc3RyaW5nW11cbiAgbG9hZGluZ0NoYXRzOiBib29sZWFuXG4gIGlzTG9hZGluZ01vcmVDaGF0czogYm9vbGVhblxuICBuZXh0T2Zmc2V0OiBudW1iZXIgfCBudWxsXG4gIGxpbWl0OiBudW1iZXJcbiAgb2Zmc2V0OiBudW1iZXJcbiAgbW91bnRDb3VudDogbnVtYmVyXG59XG5cbnR5cGUgQ2hhdHNBY3Rpb25zID0ge1xuICBmZXRjaENoYXRzOiAocGFyYW1zOiBGZXRjaENoYXRzUGFyYW1zKSA9PiBQcm9taXNlPHZvaWQ+XG4gIGxvYWRNb3JlQ2hhdHM6IChwYXJhbXM6IExvYWRNb3JlQ2hhdHNQYXJhbXMpID0+IFByb21pc2U8dm9pZD5cbiAgcHJlcGVuZENoYXQ6IChjaGF0OiBDaGF0TGlzdEl0ZW0pID0+IHZvaWRcbiAgZGVsZXRlQ2hhdDogKHBhcmFtczogRGVsZXRlQ2hhdFBhcmFtcykgPT4gUHJvbWlzZTxib29sZWFuPlxuICB1cGRhdGVDaGF0OiAoY2hhdDogUGFydGlhbDxDaGF0TGlzdEl0ZW0+ICYgeyBzZXNzaW9uRXh0ZXJuYWxJZDogc3RyaW5nOyBpZDogc3RyaW5nIH0pID0+IFByb21pc2U8Ym9vbGVhbj5cbiAgcmVzZXQ6ICgpID0+IHZvaWRcbiAgYWNxdWlyZTogKCkgPT4gdm9pZFxuICByZWxlYXNlOiAoKSA9PiB2b2lkXG59XG5cbmNvbnN0IGluaXRpYWxTdGF0ZTogQ2hhdHNTdGF0ZSA9IHtcbiAgY2hhdHM6IFtdLFxuICBvcHRpbWlzdGljU2Vzc2lvbklkczogW10sXG4gIGxvYWRpbmdDaGF0czogdHJ1ZSxcbiAgaXNMb2FkaW5nTW9yZUNoYXRzOiBmYWxzZSxcbiAgbmV4dE9mZnNldDogbnVsbCxcbiAgbGltaXQ6IERFRkFVTFRfTElNSVQsXG4gIG9mZnNldDogMCxcbiAgbW91bnRDb3VudDogMCxcbn1cblxuZXhwb3J0IGNvbnN0IHVzZUNoYXRzU3RvcmUgPSBjcmVhdGU8Q2hhdHNTdGF0ZSAmIENoYXRzQWN0aW9ucz4oKHNldCwgZ2V0KSA9PiAoe1xuICAuLi5pbml0aWFsU3RhdGUsXG5cbiAgZmV0Y2hDaGF0czogYXN5bmMgKHsgYWdlbnQsIHNlY3Rpb24sIGxpbWl0ID0gREVGQVVMVF9MSU1JVCwgb2Zmc2V0ID0gMCwgb25FcnJvciwgbGFuZywgYmFja2dyb3VuZCA9IGZhbHNlIH0pID0+IHtcbiAgICBjb25zdCBoYXNFeGlzdGluZ0NoYXRzID0gZ2V0KCkuY2hhdHMubGVuZ3RoID4gMFxuICAgIGlmICghYmFja2dyb3VuZCB8fCAhaGFzRXhpc3RpbmdDaGF0cykge1xuICAgICAgc2V0KHsgbG9hZGluZ0NoYXRzOiB0cnVlIH0pXG4gICAgfVxuICAgIHRyeSB7XG4gICAgICBjb25zdCB7IGl0ZW1zLCBuZXh0SXRlbSwgaGFzTW9yZSB9ID0gYXdhaXQgbWFpYS5DaGF0cy5nZXRDaGF0c0J5VXNlcklkKHtcbiAgICAgICAgYWdlbnQsXG4gICAgICAgIHNlY3Rpb24sXG4gICAgICAgIGxpbWl0LFxuICAgICAgICBvZmZzZXQsXG4gICAgICAgIGxhbmcsXG4gICAgICB9KVxuICAgICAgY29uc3QgbmV4dE9mZnNldCA9IGhhc01vcmUgJiYgbmV4dEl0ZW0gPyBOdW1iZXIobmV4dEl0ZW0pIDogbnVsbFxuICAgICAgY29uc3QgYXBpSXRlbXMgPSBpdGVtcyBhcyBDaGF0TGlzdEl0ZW1bXVxuICAgICAgY29uc3QgYXBpSWRzID0gbmV3IFNldChhcGlJdGVtcy5tYXAoaXRlbSA9PiBpdGVtLnNlc3Npb25FeHRlcm5hbElkKSlcbiAgICAgIGNvbnN0IHsgY2hhdHM6IGN1cnJlbnRDaGF0cywgb3B0aW1pc3RpY1Nlc3Npb25JZHMgfSA9IGdldCgpXG4gICAgICBjb25zdCBzdGlsbE9wdGltaXN0aWMgPSBjdXJyZW50Q2hhdHMuZmlsdGVyKFxuICAgICAgICBjaGF0ID0+IG9wdGltaXN0aWNTZXNzaW9uSWRzLmluY2x1ZGVzKGNoYXQuc2Vzc2lvbkV4dGVybmFsSWQpICYmICFhcGlJZHMuaGFzKGNoYXQuc2Vzc2lvbkV4dGVybmFsSWQpXG4gICAgICApXG4gICAgICBzZXQoe1xuICAgICAgICBjaGF0czogWy4uLnN0aWxsT3B0aW1pc3RpYywgLi4uYXBpSXRlbXNdLFxuICAgICAgICBvcHRpbWlzdGljU2Vzc2lvbklkczogb3B0aW1pc3RpY1Nlc3Npb25JZHMuZmlsdGVyKGlkID0+ICFhcGlJZHMuaGFzKGlkKSksXG4gICAgICAgIGxvYWRpbmdDaGF0czogZmFsc2UsXG4gICAgICAgIG5leHRPZmZzZXQsXG4gICAgICAgIGxpbWl0LFxuICAgICAgICBvZmZzZXQ6IG5leHRPZmZzZXQgPz8gMCxcbiAgICAgIH0pXG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGZldGNoaW5nIGNoYXRzOicsIGVycm9yKVxuICAgICAgc2V0KHsgbG9hZGluZ0NoYXRzOiBmYWxzZSB9KVxuICAgICAgb25FcnJvcj8uKClcbiAgICB9XG4gIH0sXG5cbiAgbG9hZE1vcmVDaGF0czogYXN5bmMgKHsgYWdlbnQsIHNlY3Rpb24sIG9uRXJyb3IsIGxhbmcgfSkgPT4ge1xuICAgIGNvbnN0IHsgbmV4dE9mZnNldCwgbGltaXQsIGlzTG9hZGluZ01vcmVDaGF0cyB9ID0gZ2V0KClcbiAgICBpZiAobmV4dE9mZnNldCA9PT0gbnVsbCB8fCBpc0xvYWRpbmdNb3JlQ2hhdHMpIHJldHVyblxuICAgIHNldCh7IGlzTG9hZGluZ01vcmVDaGF0czogdHJ1ZSB9KVxuICAgIHRyeSB7XG4gICAgICBjb25zdCB7IGl0ZW1zLCBuZXh0SXRlbSwgaGFzTW9yZSB9ID0gYXdhaXQgbWFpYS5DaGF0cy5nZXRDaGF0c0J5VXNlcklkKHtcbiAgICAgICAgYWdlbnQsXG4gICAgICAgIHNlY3Rpb24sXG4gICAgICAgIGxpbWl0LFxuICAgICAgICBvZmZzZXQ6IG5leHRPZmZzZXQsXG4gICAgICAgIGxhbmcsXG4gICAgICB9KVxuICAgICAgY29uc3QgbmV3TmV4dE9mZnNldCA9IGhhc01vcmUgJiYgbmV4dEl0ZW0gPyBOdW1iZXIobmV4dEl0ZW0pIDogbnVsbFxuICAgICAgc2V0KHN0YXRlID0+ICh7XG4gICAgICAgIGNoYXRzOiBbLi4uc3RhdGUuY2hhdHMsIC4uLihpdGVtcyBhcyBDaGF0TGlzdEl0ZW1bXSldLFxuICAgICAgICBpc0xvYWRpbmdNb3JlQ2hhdHM6IGZhbHNlLFxuICAgICAgICBuZXh0T2Zmc2V0OiBuZXdOZXh0T2Zmc2V0LFxuICAgICAgICBvZmZzZXQ6IG5ld05leHRPZmZzZXQgPz8gMCxcbiAgICAgIH0pKVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBsb2FkaW5nIG1vcmUgY2hhdHM6JywgZXJyb3IpXG4gICAgICBzZXQoeyBpc0xvYWRpbmdNb3JlQ2hhdHM6IGZhbHNlIH0pXG4gICAgICBvbkVycm9yPy4oKVxuICAgIH1cbiAgfSxcblxuICBwcmVwZW5kQ2hhdDogY2hhdCA9PlxuICAgIHNldChzdGF0ZSA9PiB7XG4gICAgICBjb25zdCBmaWx0ZXJlZCA9IHN0YXRlLmNoYXRzLmZpbHRlcihleGlzdGluZyA9PiBleGlzdGluZy5zZXNzaW9uRXh0ZXJuYWxJZCAhPT0gY2hhdC5zZXNzaW9uRXh0ZXJuYWxJZClcbiAgICAgIGNvbnN0IGFscmVhZHlPcHRpbWlzdGljID0gc3RhdGUub3B0aW1pc3RpY1Nlc3Npb25JZHMuaW5jbHVkZXMoY2hhdC5zZXNzaW9uRXh0ZXJuYWxJZClcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGNoYXRzOiBbY2hhdCwgLi4uZmlsdGVyZWRdLFxuICAgICAgICBvcHRpbWlzdGljU2Vzc2lvbklkczogYWxyZWFkeU9wdGltaXN0aWNcbiAgICAgICAgICA/IHN0YXRlLm9wdGltaXN0aWNTZXNzaW9uSWRzXG4gICAgICAgICAgOiBbLi4uc3RhdGUub3B0aW1pc3RpY1Nlc3Npb25JZHMsIGNoYXQuc2Vzc2lvbkV4dGVybmFsSWRdLFxuICAgICAgfVxuICAgIH0pLFxuXG4gIGRlbGV0ZUNoYXQ6IGFzeW5jICh7IGNoYXRJZCwgdXNlcklkIH0pID0+IHtcbiAgICB0cnkge1xuICAgICAgYXdhaXQgbWFpYS5DaGF0cy5kZWxldGVDaGF0KHsgY2hhdElkLCB1c2VySWQgfSlcbiAgICAgIHJlbW92ZVBlcnNpc3RlZFNlc3Npb25VbnJlYWQoY2hhdElkKVxuICAgICAgc2V0KHN0YXRlID0+ICh7XG4gICAgICAgIGNoYXRzOiBzdGF0ZS5jaGF0cy5maWx0ZXIoY2hhdCA9PiBjaGF0LnNlc3Npb25FeHRlcm5hbElkICE9PSBjaGF0SWQpLFxuICAgICAgICBvcHRpbWlzdGljU2Vzc2lvbklkczogc3RhdGUub3B0aW1pc3RpY1Nlc3Npb25JZHMuZmlsdGVyKGlkID0+IGlkICE9PSBjaGF0SWQpLFxuICAgICAgfSkpXG4gICAgICByZXR1cm4gdHJ1ZVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBkZWxldGluZyBjaGF0OicsIGVycm9yKVxuICAgICAgcmV0dXJuIGZhbHNlXG4gICAgfVxuICB9LFxuXG4gIHVwZGF0ZUNoYXQ6IGFzeW5jIGNoYXQgPT4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBjdXJyZW50ID0gZ2V0KCkuY2hhdHMuZmluZChjID0+IGMuaWQgPT09IGNoYXQuaWQpXG4gICAgICBjb25zdCBsYXN0UXVlc3Rpb24gPSBjdXJyZW50Py50aXRsZSA/PyBjaGF0LnRpdGxlID8/ICcnXG4gICAgICBhd2FpdCBtYWlhLkNoYXRzLnBhdGNoQ2hhdCh7XG4gICAgICAgIGNoYXRJZDogY2hhdC5zZXNzaW9uRXh0ZXJuYWxJZCxcbiAgICAgICAgbGFzdFF1ZXN0aW9uLFxuICAgICAgICAuLi4oY2hhdC50aXRsZSAhPSBudWxsICYmIHsgdGl0bGU6IGNoYXQudGl0bGUgfSksXG4gICAgICB9KVxuICAgICAgc2V0KHN0YXRlID0+ICh7XG4gICAgICAgIGNoYXRzOiBzdGF0ZS5jaGF0cy5tYXAoYyA9PiAoYy5pZCA9PT0gY2hhdC5pZCA/IHsgLi4uYywgLi4uY2hhdCB9IDogYykpLFxuICAgICAgfSkpXG4gICAgICByZXR1cm4gdHJ1ZVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdFcnJvciB1cGRhdGluZyBjaGF0OicsIGVycm9yKVxuICAgICAgcmV0dXJuIGZhbHNlXG4gICAgfVxuICB9LFxuXG4gIHJlc2V0OiAoKSA9PiBzZXQoc3RhdGUgPT4gKHsgLi4uaW5pdGlhbFN0YXRlLCBtb3VudENvdW50OiBzdGF0ZS5tb3VudENvdW50IH0pKSxcblxuICBhY3F1aXJlOiAoKSA9PiBzZXQoc3RhdGUgPT4gKHsgbW91bnRDb3VudDogc3RhdGUubW91bnRDb3VudCArIDEgfSkpLFxuXG4gIHJlbGVhc2U6ICgpID0+IHtcbiAgICBzZXQoc3RhdGUgPT4ge1xuICAgICAgY29uc3QgbmV3Q291bnQgPSBNYXRoLm1heCgwLCBzdGF0ZS5tb3VudENvdW50IC0gMSlcbiAgICAgIGlmIChuZXdDb3VudCA9PT0gMCkge1xuICAgICAgICByZXR1cm4geyAuLi5pbml0aWFsU3RhdGUsIG1vdW50Q291bnQ6IDAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIHsgbW91bnRDb3VudDogbmV3Q291bnQgfVxuICAgIH0pXG4gIH0sXG59KSlcblxuZXhwb3J0IGNvbnN0IGdldENoYXRzU3RvcmVTdGF0ZSA9ICgpID0+IHVzZUNoYXRzU3RvcmUuZ2V0U3RhdGUoKVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQTtBQUNBO0FBQ0EsU0FBU0EsTUFBTSxRQUFRLFNBQVM7QUFDaEMsT0FBT0MsSUFBSSxNQUFNLGtCQUFrQjtBQUVuQyxTQUFTQyw0QkFBNEIsUUFBUSxxQ0FBcUM7QUFFbEYsSUFBTUMsYUFBYSxHQUFHLEVBQUU7QUF5QnhCLElBQU1DLFlBQXdC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
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3R5cGVzL3N0cmVhbUFjdGl2aXR5LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIFN0cmVhbUFjdGl2aXR5UGhhc2UgPVxuICAnZ2VuZXJhdGluZycgfCAndGhpbmtpbmcnIHwgJ2FjdGlvbicgfCAnd3JpdGluZycgfCAnc2VhcmNoJyB8ICdkZWVwX3NlYXJjaCcgfCAnYXR0YWNobWVudCcgfCAncHJvY2Vzc2luZydcblxuZXhwb3J0IHR5cGUgU3RyZWFtQWN0aXZpdHkgPSB7XG4gIHBoYXNlOiBTdHJlYW1BY3Rpdml0eVBoYXNlXG4gIG1lc3NhZ2U6IHN0cmluZ1xuICBhdHRhY2htZW50c0NvdW50PzogbnVtYmVyXG59XG4iXSwibWFwcGluZ3MiOiIiLCJpZ25vcmVMaXN0IjpbXX0=
2
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3R5cGVzL3N0cmVhbUFjdGl2aXR5LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIFN0cmVhbUFjdGl2aXR5UGhhc2UgPVxuICB8ICdnZW5lcmF0aW5nJ1xuICB8ICd0aGlua2luZydcbiAgfCAnYWN0aW9uJ1xuICB8ICd3cml0aW5nJ1xuICB8ICdzZWFyY2gnXG4gIHwgJ2RlZXBfc2VhcmNoJ1xuICB8ICdhdHRhY2htZW50J1xuICB8ICdwcm9jZXNzaW5nJ1xuXG5leHBvcnQgdHlwZSBTdHJlYW1BY3Rpdml0eSA9IHtcbiAgcGhhc2U6IFN0cmVhbUFjdGl2aXR5UGhhc2VcbiAgbWVzc2FnZTogc3RyaW5nXG4gIGF0dGFjaG1lbnRzQ291bnQ/OiBudW1iZXJcbn1cbiJdLCJtYXBwaW5ncyI6IiIsImlnbm9yZUxpc3QiOltdfQ==
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3R5cGVzL3VzZXJUeXBlLmQudHMiXSwic291cmNlc0NvbnRlbnQiOlsidHlwZSBQZXJtaXNzaW9uVHlwZXMgPVxuICB8ICdwcm95ZWN0b3MnXG4gIHwgJ3Rhc2tzJ1xuICB8ICd0YXNrc19kZWFkbGluZSdcbiAgfCAnbm90aWZpY2F0aW9ucydcbiAgfCAnaG91cnMnXG4gIHwgJ2dhbnR0J1xuICB8ICdxdW90YXRpb25zJ1xuICB8ICdjbGllbnRzJ1xuICB8ICd1c2VycydcbiAgfCAnbGVhdmVzJ1xuICB8ICdwcm9qZWN0X2dhbnR0J1xuICB8ICdzZXR0aW5ncydcbiAgfCAncGFzc3dvcmRzJ1xuICB8ICdwcm9qZWN0X3RlbXBsYXRlcydcbiAgfCAnbWV0cmljcydcbiAgfCAnZGFzaGJvYXJkcydcbiAgfCAnc2FsYXJ5J1xuICB8ICdhaV9hZ2VudHMnXG5cbnR5cGUgUGVybWlzc2lvbkFjdGlvbnMgPVxuICAnYXJjaGl2ZScgfCAndmlldycgfCAnZWRpdCcgfCAnY3JlYXRlJyB8ICdkZWxldGUnIHwgJ2RlbGV0ZUZpbGUnIHwgJ3ZpZXdVc2VyQ2FwYWNpdHknIHwgJ3ZpZXdIb3VycydcblxudHlwZSBDb21wYW55SW5mbyA9IHtcbiAgaWQ6IG51bWJlclxuICBuYW1lOiBzdHJpbmdcbiAgc3ViZG9tYWluOiBzdHJpbmdcbiAgdXNlcl9pZDogbnVtYmVyXG4gIHBpY3R1cmU6IHN0cmluZ1xuICB1c2Vyc19xOiBudW1iZXJcbn1cblxudHlwZSBVc2VySW50ZXJuYWxQcm9wcyA9IHtcbiAgaWQ6IG51bWJlclxuICBmaXJzdF9uYW1lOiBzdHJpbmdcbiAgbGFzdF9uYW1lOiBzdHJpbmdcbiAgcGljdHVyZTogc3RyaW5nIHwgbnVsbFxuICBsYW5nOiBzdHJpbmdcbiAgY29tcGFueV9pZDogbnVtYmVyXG4gIGNvbXBhbnk6IHN0cmluZ1xuICByZW1haW5pbmdfaG91cnM6IG51bWJlclxuICBlbWFpbDogc3RyaW5nXG4gIHR5cGU6IHN0cmluZ1xuICB1c2VyX3R5cGU6IHN0cmluZ1xuICByb2xlOiBzdHJpbmdcbiAgcm9sZV9pZDogbnVtYmVyXG4gIGNvbXBhbmllczogQ29tcGFueUluZm9bXVxuICBjb21wYW55X3NlZ21lbnQ6IG51bGwgfCBzdHJpbmdcbiAgZGFpbHlfaG91cnM6IG51bWJlclxuICBtb250aGx5X2hvdXJzOiBudW1iZXJcbiAgZmlyc3RfdXNlcjogYm9vbGVhblxuICBsZWF2ZXM6IG51bGwgfCBzdHJpbmdcbiAgdXNlcl9jcmVhdGVkX2F0OiBzdHJpbmdcbiAgY29tcGFueV9jcmVhdGVkX2F0OiBzdHJpbmdcbiAgZ210OiBzdHJpbmdcbiAgdGltZXpvbmU6IHN0cmluZ1xuICBpbXBsZW1lbnRlcjogYm9vbGVhblxuICBjb21wYW55X3VzZXJzX3FfcGFpZDogbnVtYmVyXG4gIGNvbXBhbnlfdXNlcnNfcV9hdmFpbGFibGU6IG51bWJlclxuICBoYXNfbWV0cmljc192aWV3OiBib29sZWFuXG4gIGhhc19xdW90YXRpb25zX3ZpZXc6IGJvb2xlYW5cbiAgaGFzX3F1b3RhdGlvbnNfY3JlYXRlOiBib29sZWFuXG59XG5cbmV4cG9ydCBkZWNsYXJlIHR5cGUgVXNlclByb3BzID0ge1xuICBwZXJtaXNzaW9uczoge1xuICAgIFt4IGluIFBlcm1pc3Npb25UeXBlc106IHtcbiAgICAgIFt5IGluIFBlcm1pc3Npb25BY3Rpb25zXT86IGJvb2xlYW5cbiAgICB9XG4gIH1cbiAgaW5mbzogVXNlckludGVybmFsUHJvcHNcbiAgc2V0dGluZ3M6IHtcbiAgICBhbGxvd19pbl9kZXNpZ25fc3RhdHVzOiBib29sZWFuXG4gICAgYWxsb3dfaW5fcmV2aWV3X3N0YXR1czogYm9vbGVhblxuICB9XG59XG5cbi8qIE5vdGVzOlxuICBUaGVyZSBhcmUgbW9yZSBzZXR0aW5ncyBhbmQgdXNlciBpbmZvIGtleXMsIHRoaXMgZGlzcGxheXMgdGhlIG1vc3QgdXNlZCBvbmVzXG5cbiAgVXNlciBwb3NzaWJsZSBwaWN0dXJlIGRhdGEgKHBuZy9qcGcvanBlZy9qZmlmL2pwZWcpXG4gICAgLSAndXNlcl9pbWFnZScsICd1c2VyJywgJ25vX3VzZXInLCAnbnVsbCdcbiAgICAtIG51bGxcbiAgICAtIFtudW1iZXJdLVtudW1iZXJdXG4gICAgLSBjLVtjb21wYW55SWRdLVtoYXNoXVxuKi9cbiJdLCJtYXBwaW5ncyI6IiIsImlnbm9yZUxpc3QiOltdfQ==
2
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3R5cGVzL3VzZXJUeXBlLmQudHMiXSwic291cmNlc0NvbnRlbnQiOlsidHlwZSBQZXJtaXNzaW9uVHlwZXMgPVxuICB8ICdwcm95ZWN0b3MnXG4gIHwgJ3Rhc2tzJ1xuICB8ICd0YXNrc19kZWFkbGluZSdcbiAgfCAnbm90aWZpY2F0aW9ucydcbiAgfCAnaG91cnMnXG4gIHwgJ2dhbnR0J1xuICB8ICdxdW90YXRpb25zJ1xuICB8ICdjbGllbnRzJ1xuICB8ICd1c2VycydcbiAgfCAnbGVhdmVzJ1xuICB8ICdwcm9qZWN0X2dhbnR0J1xuICB8ICdzZXR0aW5ncydcbiAgfCAncGFzc3dvcmRzJ1xuICB8ICdwcm9qZWN0X3RlbXBsYXRlcydcbiAgfCAnbWV0cmljcydcbiAgfCAnZGFzaGJvYXJkcydcbiAgfCAnc2FsYXJ5J1xuICB8ICdhaV9hZ2VudHMnXG5cbnR5cGUgUGVybWlzc2lvbkFjdGlvbnMgPVxuICB8ICdhcmNoaXZlJ1xuICB8ICd2aWV3J1xuICB8ICdlZGl0J1xuICB8ICdjcmVhdGUnXG4gIHwgJ2RlbGV0ZSdcbiAgfCAnZGVsZXRlRmlsZSdcbiAgfCAndmlld1VzZXJDYXBhY2l0eSdcbiAgfCAndmlld0hvdXJzJ1xuXG50eXBlIENvbXBhbnlJbmZvID0ge1xuICBpZDogbnVtYmVyXG4gIG5hbWU6IHN0cmluZ1xuICBzdWJkb21haW46IHN0cmluZ1xuICB1c2VyX2lkOiBudW1iZXJcbiAgcGljdHVyZTogc3RyaW5nXG4gIHVzZXJzX3E6IG51bWJlclxufVxuXG50eXBlIFVzZXJJbnRlcm5hbFByb3BzID0ge1xuICBpZDogbnVtYmVyXG4gIGZpcnN0X25hbWU6IHN0cmluZ1xuICBsYXN0X25hbWU6IHN0cmluZ1xuICBwaWN0dXJlOiBzdHJpbmcgfCBudWxsXG4gIGxhbmc6IHN0cmluZ1xuICBjb21wYW55X2lkOiBudW1iZXJcbiAgY29tcGFueTogc3RyaW5nXG4gIHJlbWFpbmluZ19ob3VyczogbnVtYmVyXG4gIGVtYWlsOiBzdHJpbmdcbiAgdHlwZTogc3RyaW5nXG4gIHVzZXJfdHlwZTogc3RyaW5nXG4gIHJvbGU6IHN0cmluZ1xuICByb2xlX2lkOiBudW1iZXJcbiAgY29tcGFuaWVzOiBDb21wYW55SW5mb1tdXG4gIGNvbXBhbnlfc2VnbWVudDogbnVsbCB8IHN0cmluZ1xuICBkYWlseV9ob3VyczogbnVtYmVyXG4gIG1vbnRobHlfaG91cnM6IG51bWJlclxuICBmaXJzdF91c2VyOiBib29sZWFuXG4gIGxlYXZlczogbnVsbCB8IHN0cmluZ1xuICB1c2VyX2NyZWF0ZWRfYXQ6IHN0cmluZ1xuICBjb21wYW55X2NyZWF0ZWRfYXQ6IHN0cmluZ1xuICBnbXQ6IHN0cmluZ1xuICB0aW1lem9uZTogc3RyaW5nXG4gIGltcGxlbWVudGVyOiBib29sZWFuXG4gIGNvbXBhbnlfdXNlcnNfcV9wYWlkOiBudW1iZXJcbiAgY29tcGFueV91c2Vyc19xX2F2YWlsYWJsZTogbnVtYmVyXG4gIGhhc19tZXRyaWNzX3ZpZXc6IGJvb2xlYW5cbiAgaGFzX3F1b3RhdGlvbnNfdmlldzogYm9vbGVhblxuICBoYXNfcXVvdGF0aW9uc19jcmVhdGU6IGJvb2xlYW5cbn1cblxuZXhwb3J0IGRlY2xhcmUgdHlwZSBVc2VyUHJvcHMgPSB7XG4gIHBlcm1pc3Npb25zOiB7XG4gICAgW3ggaW4gUGVybWlzc2lvblR5cGVzXToge1xuICAgICAgW3kgaW4gUGVybWlzc2lvbkFjdGlvbnNdPzogYm9vbGVhblxuICAgIH1cbiAgfVxuICBpbmZvOiBVc2VySW50ZXJuYWxQcm9wc1xuICBzZXR0aW5nczoge1xuICAgIGFsbG93X2luX2Rlc2lnbl9zdGF0dXM6IGJvb2xlYW5cbiAgICBhbGxvd19pbl9yZXZpZXdfc3RhdHVzOiBib29sZWFuXG4gIH1cbn1cblxuLyogTm90ZXM6XG4gIFRoZXJlIGFyZSBtb3JlIHNldHRpbmdzIGFuZCB1c2VyIGluZm8ga2V5cywgdGhpcyBkaXNwbGF5cyB0aGUgbW9zdCB1c2VkIG9uZXNcblxuICBVc2VyIHBvc3NpYmxlIHBpY3R1cmUgZGF0YSAocG5nL2pwZy9qcGVnL2pmaWYvanBlZylcbiAgICAtICd1c2VyX2ltYWdlJywgJ3VzZXInLCAnbm9fdXNlcicsICdudWxsJ1xuICAgIC0gbnVsbFxuICAgIC0gW251bWJlcl0tW251bWJlcl1cbiAgICAtIGMtW2NvbXBhbnlJZF0tW2hhc2hdXG4qL1xuIl0sIm1hcHBpbmdzIjoiIiwiaWdub3JlTGlzdCI6W119
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@projectcor/maia-components",
3
- "version": "2.11.78-16",
3
+ "version": "2.11.78-2",
4
4
  "description": "",
5
5
  "keywords": [],
6
6
  "repository": {
@@ -21,7 +21,7 @@
21
21
  "clean:web": "rm -Rf ~/cor/dockerEnviroment/web/node_modules/@projectcor/[REPLACE_WITH_YOUR_LIBRARY_NAME]/lib",
22
22
  "copy:web": "cp -R ./lib ~/cor/dockerEnviroment/web/node_modules/@projectcor/[REPLACE_WITH_YOUR_LIBRARY_NAME]/lib",
23
23
  "eslint": "eslint \"src/**/*.{ts,tsx,js}\"",
24
- "prepare": "husky install || true",
24
+ "prepare": "husky",
25
25
  "start": "node scripts/auth-and-start.js",
26
26
  "start:no-auth": "NODE_ENV=development webpack-dev-server --mode development",
27
27
  "test:coverage": "npm test -- --coverage",
@@ -37,55 +37,17 @@
37
37
  },
38
38
  "dependencies": {
39
39
  "@streamdown/code": "^1.0.1",
40
- "react-file-viewer": "^1.2.1",
41
40
  "rehype-sanitize": "^6.0.0",
41
+ "react-file-viewer": "^1.2.1",
42
42
  "streamdown": "^2.1.0",
43
- "xlsx": "https://cdn.sheetjs.com/xlsx-0.20.3/xlsx-0.20.3.tgz",
43
+ "xlsx": "^0.18.5",
44
44
  "zustand": "^4.* || ^5.*"
45
45
  },
46
- "overrides": {
47
- "brace-expansion@1": "1.1.16",
48
- "brace-expansion@2": "2.1.2",
49
- "brace-expansion@5": "5.0.8",
50
- "body-parser": "^1.20.6",
51
- "@babel/plugin-transform-modules-systemjs": "^7.29.7",
52
- "@tootallnate/once": "^3.0.1",
53
- "fast-uri": "^3.1.4",
54
- "flatted": "^3.4.2",
55
- "follow-redirects": "^1.16.0",
56
- "form-data": "^4.0.6",
57
- "got": "^11.8.6",
58
- "handlebars": "^4.7.9",
59
- "http-proxy-middleware": "^2.0.10",
60
- "js-yaml@3": "3.15.0",
61
- "js-yaml@4": "4.3.0",
62
- "jszip": "^3.10.1",
63
- "lodash": "^4.18.1",
64
- "lodash@3": "4.18.1",
65
- "mammoth": "^1.11.0",
66
- "node-forge": "^1.4.0",
67
- "path-to-regexp@0.1": "0.1.13",
68
- "pdfjs-dist": "4.10.38",
69
- "picomatch@2": "2.3.2",
70
- "picomatch@4": "4.0.4",
71
- "postcss": "^8.5.10",
72
- "qs": "^6.15.2",
73
- "shell-quote": "^1.9.0",
74
- "tar": "^7.5.22",
75
- "three": "0.125.0",
76
- "tmp": "^0.2.6",
77
- "underscore": "^1.13.8",
78
- "websocket-driver": "^0.7.5",
79
- "ajv@6": "6.14.0",
80
- "ws@7": "7.5.11",
81
- "ws@8": "8.21.0",
82
- "xlsx": "https://cdn.sheetjs.com/xlsx-0.20.3/xlsx-0.20.3.tgz",
83
- "yaml": "^1.10.3"
84
- },
85
46
  "devDependencies": {
86
- "@apollo/client": "4.2.8",
87
- "@babel/cli": "^7.29.7",
88
- "@babel/core": "^7.29.7",
47
+ "postcss-loader": "^8.2.0",
48
+ "@apollo/client": "3.8.0",
49
+ "@babel/cli": "^7.25.6",
50
+ "@babel/core": "^7.25.2",
89
51
  "@babel/eslint-parser": "^7.25.1",
90
52
  "@babel/plugin-proposal-class-properties": "^7.18.6",
91
53
  "@babel/plugin-proposal-export-default-from": "^7.24.7",
@@ -115,12 +77,12 @@
115
77
  "@projectcor/tooltipv2": "^2.0.1",
116
78
  "@projectcor/user-avatar": "2.0.2",
117
79
  "@testing-library/jest-dom": "^5.17.0",
118
- "@testing-library/react": "^16.3.2",
80
+ "@testing-library/react": "^14.3.1",
119
81
  "@testing-library/user-event": "^12.8.3",
120
82
  "@types/jest": "^27.5.2",
121
- "@types/node": "^26.1.1",
83
+ "@types/node": "^16.18.126",
122
84
  "@types/react": "^18.3.5",
123
- "@types/react-dom": "^19.2.3",
85
+ "@types/react-dom": "^18.3.0",
124
86
  "@types/styled-components": "^5.1.34",
125
87
  "@typescript-eslint/eslint-plugin": "^6.21.0",
126
88
  "@typescript-eslint/parser": "^6.21.0",
@@ -137,20 +99,20 @@
137
99
  "dotenv-webpack": "^8.1.0",
138
100
  "emoji-mart": "^5.6.0",
139
101
  "eslint": "^8.57.0",
102
+ "framer-motion": "^12.0.0",
140
103
  "eslint-config-airbnb": "^19.0.4",
141
104
  "eslint-config-prettier": "^9.1.0",
142
- "eslint-import-resolver-typescript": "^4.4.5",
105
+ "eslint-import-resolver-typescript": "^3.6.3",
143
106
  "eslint-plugin-import": "^2.29.1",
144
107
  "eslint-plugin-jsx-a11y": "^6.9.0",
145
108
  "eslint-plugin-node": "^11.1.0",
146
109
  "eslint-plugin-prettier": "^5.2.1",
147
110
  "eslint-plugin-react": "^7.35.0",
148
111
  "eslint-plugin-react-hooks": "^4.6.2",
149
- "framer-motion": "^12.0.0",
150
- "graphql": "^17.0.2",
112
+ "graphql": "^15.9.0",
151
113
  "html-webpack-plugin": "^5.6.0",
152
114
  "husky": "^8.0.3",
153
- "i18next": "26.3.6",
115
+ "i18next": "19.9.2",
154
116
  "intersection-observer": "^0.12.0",
155
117
  "jest": "^29.7.0",
156
118
  "jest-canvas-mock": "^2.5.2",
@@ -158,19 +120,18 @@
158
120
  "jest-styled-components": "^7.2.0",
159
121
  "lottie-react": "^2.4.0",
160
122
  "mini-css-extract-plugin": "^2.9.1",
161
- "moment": "2.30.1",
162
- "np": "7.7.0",
123
+ "moment": "2.29.1",
124
+ "np": "^6.5.0",
163
125
  "path-browserify": "^1.0.1",
164
- "postcss": "^8.5.10",
165
- "postcss-loader": "^8.2.0",
126
+ "postcss": "^8.5.6",
166
127
  "prettier": "^3.3.3",
167
128
  "process": "0.11.10",
168
129
  "react": "18.2.0",
169
- "react-dom": "19.2.8",
130
+ "react-dom": "18.2.0",
170
131
  "react-i18next": "11.18.6",
171
- "react-router-dom": "6.30.4",
172
- "react-tooltip": "^6.0.8",
173
- "react-tracked": "^2.0.1",
132
+ "react-router-dom": "6.8.0",
133
+ "react-tooltip": "^5.29.1",
134
+ "react-tracked": "^1.7.14",
174
135
  "stream-browserify": "^3.0.0",
175
136
  "style-loader": "^3.3.4",
176
137
  "styled-components": "^5.3.11",
@@ -180,11 +141,11 @@
180
141
  "ts-jest": "^29.2.5",
181
142
  "ts-loader": "^9.5.1",
182
143
  "typescript": "5.5.4",
183
- "uuid": "11.1.1",
144
+ "uuid": "8.3.2",
184
145
  "webpack": "^5.94.0",
185
- "webpack-bundle-analyzer": "^5.3.1",
146
+ "webpack-bundle-analyzer": "^4.10.2",
186
147
  "webpack-cli": "^5.1.4",
187
- "webpack-dev-server": "^6.0.0"
148
+ "webpack-dev-server": "^4.15.2"
188
149
  },
189
150
  "peerDependencies": {
190
151
  "@apollo/client": "^3.*",
@@ -200,20 +161,20 @@
200
161
  "@projectcor/theme": "^2.*",
201
162
  "@projectcor/tooltipv2": "^2.*",
202
163
  "@projectcor/user-avatar": "^2.*",
203
- "framer-motion": "^2.* || ^12.*",
204
164
  "graphql": "^15.*",
205
165
  "i18next": "^19.*",
206
166
  "moment": "^2.*",
207
167
  "react": "18.2.0",
208
- "react-dom": "19.2.8",
168
+ "react-dom": "18.2.0",
209
169
  "react-i18next": "^11.*",
210
- "react-router-dom": "^6.8.0",
170
+ "react-router-dom": "6.8.0",
211
171
  "react-tracked": "^1.*",
212
172
  "styled-components": "^5.*",
213
- "uuid": "^8.3.0 || ^11.1.1"
173
+ "framer-motion": "^2.* || ^12.*",
174
+ "uuid": "^8.*"
214
175
  },
215
176
  "engines": {
216
- "node": ">=14",
217
- "npm": ">=6"
177
+ "node": "16",
178
+ "npm": "6"
218
179
  }
219
180
  }
@@ -1,69 +0,0 @@
1
- /**
2
- * Store externo (module-level) para el mensaje actualmente en streaming.
3
- *
4
- * Desacopla el texto del stream del array de `messages` de React: durante
5
- * el streaming, el texto se mantiene acá y solo los componentes suscritos
6
- * (vía `useStreamingMessage` / `useSyncExternalStore`) re-renderizan cuando
7
- * cambia. El array `messages` no se muta en cada token, evitando ráfagas
8
- * de re-renders del padre y ejecuciones innecesarias de useEffects.
9
- */
10
-
11
- var snapshot = {
12
- id: null,
13
- text: ''
14
- };
15
- var listeners = new Set();
16
- var emitChange = function emitChange() {
17
- listeners.forEach(function (listener) {
18
- listener();
19
- });
20
- };
21
- export var streamingStore = {
22
- /** Inicia una nueva sesión de streaming para el mensaje con este id. */start: function start(id) {
23
- snapshot = {
24
- id: id,
25
- text: ''
26
- };
27
- emitChange();
28
- },
29
- /** Setea el texto del mensaje en streaming. Solo aplica si el id coincide. */setText: function setText(id, text) {
30
- if (snapshot.id !== id) {
31
- snapshot = {
32
- id: id,
33
- text: text
34
- };
35
- } else if (snapshot.text !== text) {
36
- snapshot = {
37
- id: id,
38
- text: text
39
- };
40
- } else {
41
- return;
42
- }
43
- emitChange();
44
- },
45
- /** Limpia el estado de streaming (fin de stream, error o aprobación). */clear: function clear() {
46
- if (snapshot.id == null && snapshot.text === '') return;
47
- snapshot = {
48
- id: null,
49
- text: ''
50
- };
51
- emitChange();
52
- },
53
- /** API para useSyncExternalStore. */subscribe: function subscribe(listener) {
54
- listeners.add(listener);
55
- return function () {
56
- listeners["delete"](listener);
57
- };
58
- },
59
- /** Snapshot referencialmente estable mientras no haya cambios. */getSnapshot: function getSnapshot() {
60
- return snapshot;
61
- },
62
- /** Server snapshot (SSR): siempre vacío. */getServerSnapshot: function getServerSnapshot() {
63
- return {
64
- id: null,
65
- text: ''
66
- };
67
- }
68
- };
69
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJzbmFwc2hvdCIsImlkIiwidGV4dCIsImxpc3RlbmVycyIsIlNldCIsImVtaXRDaGFuZ2UiLCJmb3JFYWNoIiwibGlzdGVuZXIiLCJzdHJlYW1pbmdTdG9yZSIsInN0YXJ0Iiwic2V0VGV4dCIsImNsZWFyIiwic3Vic2NyaWJlIiwiYWRkIiwiZ2V0U25hcHNob3QiLCJnZXRTZXJ2ZXJTbmFwc2hvdCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ob29rcy91c2VTdHJlYW1pbmdNZXNzYWdlL3N0cmVhbWluZ1N0b3JlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogU3RvcmUgZXh0ZXJubyAobW9kdWxlLWxldmVsKSBwYXJhIGVsIG1lbnNhamUgYWN0dWFsbWVudGUgZW4gc3RyZWFtaW5nLlxuICpcbiAqIERlc2Fjb3BsYSBlbCB0ZXh0byBkZWwgc3RyZWFtIGRlbCBhcnJheSBkZSBgbWVzc2FnZXNgIGRlIFJlYWN0OiBkdXJhbnRlXG4gKiBlbCBzdHJlYW1pbmcsIGVsIHRleHRvIHNlIG1hbnRpZW5lIGFjw6EgeSBzb2xvIGxvcyBjb21wb25lbnRlcyBzdXNjcml0b3NcbiAqICh2w61hIGB1c2VTdHJlYW1pbmdNZXNzYWdlYCAvIGB1c2VTeW5jRXh0ZXJuYWxTdG9yZWApIHJlLXJlbmRlcml6YW4gY3VhbmRvXG4gKiBjYW1iaWEuIEVsIGFycmF5IGBtZXNzYWdlc2Agbm8gc2UgbXV0YSBlbiBjYWRhIHRva2VuLCBldml0YW5kbyByw6FmYWdhc1xuICogZGUgcmUtcmVuZGVycyBkZWwgcGFkcmUgeSBlamVjdWNpb25lcyBpbm5lY2VzYXJpYXMgZGUgdXNlRWZmZWN0cy5cbiAqL1xuXG50eXBlIFN0cmVhbWluZ1NuYXBzaG90ID0ge1xuICBpZDogc3RyaW5nIHwgbnVsbFxuICB0ZXh0OiBzdHJpbmdcbn1cblxubGV0IHNuYXBzaG90OiBTdHJlYW1pbmdTbmFwc2hvdCA9IHsgaWQ6IG51bGwsIHRleHQ6ICcnIH1cbmNvbnN0IGxpc3RlbmVycyA9IG5ldyBTZXQ8KCkgPT4gdm9pZD4oKVxuXG5jb25zdCBlbWl0Q2hhbmdlID0gKCkgPT4ge1xuICBsaXN0ZW5lcnMuZm9yRWFjaChsaXN0ZW5lciA9PiB7XG4gICAgbGlzdGVuZXIoKVxuICB9KVxufVxuXG5leHBvcnQgY29uc3Qgc3RyZWFtaW5nU3RvcmUgPSB7XG4gIC8qKiBJbmljaWEgdW5hIG51ZXZhIHNlc2nDs24gZGUgc3RyZWFtaW5nIHBhcmEgZWwgbWVuc2FqZSBjb24gZXN0ZSBpZC4gKi9cbiAgc3RhcnQoaWQ6IHN0cmluZykge1xuICAgIHNuYXBzaG90ID0geyBpZCwgdGV4dDogJycgfVxuICAgIGVtaXRDaGFuZ2UoKVxuICB9LFxuICAvKiogU2V0ZWEgZWwgdGV4dG8gZGVsIG1lbnNhamUgZW4gc3RyZWFtaW5nLiBTb2xvIGFwbGljYSBzaSBlbCBpZCBjb2luY2lkZS4gKi9cbiAgc2V0VGV4dChpZDogc3RyaW5nLCB0ZXh0OiBzdHJpbmcpIHtcbiAgICBpZiAoc25hcHNob3QuaWQgIT09IGlkKSB7XG4gICAgICBzbmFwc2hvdCA9IHsgaWQsIHRleHQgfVxuICAgIH0gZWxzZSBpZiAoc25hcHNob3QudGV4dCAhPT0gdGV4dCkge1xuICAgICAgc25hcHNob3QgPSB7IGlkLCB0ZXh0IH1cbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuXG4gICAgfVxuICAgIGVtaXRDaGFuZ2UoKVxuICB9LFxuICAvKiogTGltcGlhIGVsIGVzdGFkbyBkZSBzdHJlYW1pbmcgKGZpbiBkZSBzdHJlYW0sIGVycm9yIG8gYXByb2JhY2nDs24pLiAqL1xuICBjbGVhcigpIHtcbiAgICBpZiAoc25hcHNob3QuaWQgPT0gbnVsbCAmJiBzbmFwc2hvdC50ZXh0ID09PSAnJykgcmV0dXJuXG4gICAgc25hcHNob3QgPSB7IGlkOiBudWxsLCB0ZXh0OiAnJyB9XG4gICAgZW1pdENoYW5nZSgpXG4gIH0sXG4gIC8qKiBBUEkgcGFyYSB1c2VTeW5jRXh0ZXJuYWxTdG9yZS4gKi9cbiAgc3Vic2NyaWJlKGxpc3RlbmVyOiAoKSA9PiB2b2lkKSB7XG4gICAgbGlzdGVuZXJzLmFkZChsaXN0ZW5lcilcbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgbGlzdGVuZXJzLmRlbGV0ZShsaXN0ZW5lcilcbiAgICB9XG4gIH0sXG4gIC8qKiBTbmFwc2hvdCByZWZlcmVuY2lhbG1lbnRlIGVzdGFibGUgbWllbnRyYXMgbm8gaGF5YSBjYW1iaW9zLiAqL1xuICBnZXRTbmFwc2hvdCgpOiBTdHJlYW1pbmdTbmFwc2hvdCB7XG4gICAgcmV0dXJuIHNuYXBzaG90XG4gIH0sXG4gIC8qKiBTZXJ2ZXIgc25hcHNob3QgKFNTUik6IHNpZW1wcmUgdmFjw61vLiAqL1xuICBnZXRTZXJ2ZXJTbmFwc2hvdCgpOiBTdHJlYW1pbmdTbmFwc2hvdCB7XG4gICAgcmV0dXJuIHsgaWQ6IG51bGwsIHRleHQ6ICcnIH1cbiAgfSxcbn1cblxuZXhwb3J0IHR5cGUgeyBTdHJlYW1pbmdTbmFwc2hvdCB9XG4iXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFPQSxJQUFJQSxRQUEyQixHQUFHO0VBQUVDLEVBQUUsRUFBRSxJQUFJO0VBQUVDLElBQUksRUFBRTtBQUFHLENBQUM7QUFDeEQsSUFBTUMsU0FBUyxHQUFHLElBQUlDLEdBQUcsQ0FBYSxDQUFDO0FBRXZDLElBQU1DLFVBQVUsR0FBRyxTQUFiQSxVQUFVQSxDQUFBLEVBQVM7RUFDdkJGLFNBQVMsQ0FBQ0csT0FBTyxDQUFDLFVBQUFDLFFBQVEsRUFBSTtJQUM1QkEsUUFBUSxDQUFDLENBQUM7RUFDWixDQUFDLENBQUM7QUFDSixDQUFDO0FBRUQsT0FBTyxJQUFNQyxjQUFjLEdBQUc7RUFDNUIsd0VBQ0FDLEtBQUssV0FBTEEsS0FBS0EsQ0FBQ1IsRUFBVSxFQUFFO0lBQ2hCRCxRQUFRLEdBQUc7TUFBRUMsRUFBRSxFQUFGQSxFQUFFO01BQUVDLElBQUksRUFBRTtJQUFHLENBQUM7SUFDM0JHLFVBQVUsQ0FBQyxDQUFDO0VBQ2QsQ0FBQztFQUNELDhFQUNBSyxPQUFPLFdBQVBBLE9BQU9BLENBQUNULEVBQVUsRUFBRUMsSUFBWSxFQUFFO0lBQ2hDLElBQUlGLFFBQVEsQ0FBQ0MsRUFBRSxLQUFLQSxFQUFFLEVBQUU7TUFDdEJELFFBQVEsR0FBRztRQUFFQyxFQUFFLEVBQUZBLEVBQUU7UUFBRUMsSUFBSSxFQUFKQTtNQUFLLENBQUM7SUFDekIsQ0FBQyxNQUFNLElBQUlGLFFBQVEsQ0FBQ0UsSUFBSSxLQUFLQSxJQUFJLEVBQUU7TUFDakNGLFFBQVEsR0FBRztRQUFFQyxFQUFFLEVBQUZBLEVBQUU7UUFBRUMsSUFBSSxFQUFKQTtNQUFLLENBQUM7SUFDekIsQ0FBQyxNQUFNO01BQ0w7SUFDRjtJQUNBRyxVQUFVLENBQUMsQ0FBQztFQUNkLENBQUM7RUFDRCx5RUFDQU0sS0FBSyxXQUFMQSxLQUFLQSxDQUFBLEVBQUc7SUFDTixJQUFJWCxRQUFRLENBQUNDLEVBQUUsSUFBSSxJQUFJLElBQUlELFFBQVEsQ0FBQ0UsSUFBSSxLQUFLLEVBQUUsRUFBRTtJQUNqREYsUUFBUSxHQUFHO01BQUVDLEVBQUUsRUFBRSxJQUFJO01BQUVDLElBQUksRUFBRTtJQUFHLENBQUM7SUFDakNHLFVBQVUsQ0FBQyxDQUFDO0VBQ2QsQ0FBQztFQUNELHFDQUNBTyxTQUFTLFdBQVRBLFNBQVNBLENBQUNMLFFBQW9CLEVBQUU7SUFDOUJKLFNBQVMsQ0FBQ1UsR0FBRyxDQUFDTixRQUFRLENBQUM7SUFDdkIsT0FBTyxZQUFNO01BQ1hKLFNBQVMsVUFBTyxDQUFDSSxRQUFRLENBQUM7SUFDNUIsQ0FBQztFQUNILENBQUM7RUFDRCxrRUFDQU8sV0FBVyxXQUFYQSxXQUFXQSxDQUFBLEVBQXNCO0lBQy9CLE9BQU9kLFFBQVE7RUFDakIsQ0FBQztFQUNELDRDQUNBZSxpQkFBaUIsV0FBakJBLGlCQUFpQkEsQ0FBQSxFQUFzQjtJQUNyQyxPQUFPO01BQUVkLEVBQUUsRUFBRSxJQUFJO01BQUVDLElBQUksRUFBRTtJQUFHLENBQUM7RUFDL0I7QUFDRixDQUFDIiwiaWdub3JlTGlzdCI6W119