@projectcor/maia-components 2.49.0-beta.1 → 2.49.0

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 (124) hide show
  1. package/lib/components/atoms/ApprovalBox/ApprovalBox.helpers.js +37 -0
  2. package/lib/components/atoms/ApprovalBox/ApprovalBox.js +3 -37
  3. package/lib/components/atoms/AttachmentCard/AttachmentCardAudio.helpers.js +117 -0
  4. package/lib/components/atoms/AttachmentCard/AttachmentCardAudio.js +31 -101
  5. package/lib/components/atoms/AttachmentPreviewModal/AttachmentPreviewModal.helpers.js +91 -0
  6. package/lib/components/atoms/AttachmentPreviewModal/AttachmentPreviewModal.js +49 -140
  7. package/lib/components/atoms/AttachmentPreviewModal/PptPreview.helpers.js +257 -0
  8. package/lib/components/atoms/AttachmentPreviewModal/PptPreview.js +53 -205
  9. package/lib/components/atoms/AttachmentPreviewModal/WordPreview.helpers.js +4 -0
  10. package/lib/components/atoms/AttachmentPreviewModal/WordPreview.js +2 -4
  11. package/lib/components/atoms/ClientSelector/ClientSelector.helpers.js +26 -0
  12. package/lib/components/atoms/ClientSelector/ClientSelector.js +12 -21
  13. package/lib/components/atoms/ContextMentionChip/buildChipElement.helpers.js +227 -0
  14. package/lib/components/atoms/ContextMentionChip/buildChipElement.js +15 -255
  15. package/lib/components/atoms/ContextMentionEditor/ContextMentionEditor.helpers.js +59 -0
  16. package/lib/components/atoms/ContextMentionEditor/ContextMentionEditor.js +12 -57
  17. package/lib/components/atoms/MAIAInput/MAIAInput.attachments.helpers.js +74 -0
  18. package/lib/components/atoms/MAIAInput/MAIAInput.helpers.js +184 -0
  19. package/lib/components/atoms/MAIAInput/MAIAInput.js +127 -176
  20. package/lib/components/atoms/MAIAInput/MAIAInputEditor.helpers.js +96 -0
  21. package/lib/components/atoms/MAIAInput/MAIAInputEditor.js +40 -113
  22. package/lib/components/atoms/OnboardingModalButton/OnboardingModalButton.helpers.js +17 -0
  23. package/lib/components/atoms/OnboardingModalButton/OnboardingModalButton.js +3 -15
  24. package/lib/components/atoms/ReasoningBlock/ReasoningSteps.js +3 -4
  25. package/lib/components/atoms/ReasoningBlock/ReasoningTimeline.js +3 -11
  26. package/lib/components/atoms/ReasoningBlock/reasoningLeading.js +6 -1
  27. package/lib/components/atoms/ReasoningBlock/reasoningLiveNarration.js +2 -3
  28. package/lib/components/atoms/ReasoningBlock/reasoningTimeline.helpers.js +10 -0
  29. package/lib/components/atoms/SlashCommandDropdown/SlashCommandDropdown.helpers.js +101 -0
  30. package/lib/components/atoms/SlashCommandDropdown/SlashCommandDropdown.js +21 -77
  31. package/lib/components/atoms/TextArea/TextArea.helpers.js +23 -0
  32. package/lib/components/atoms/TextArea/TextArea.js +11 -20
  33. package/lib/components/molecules/AbmSection/AbmAccessibilitySection/AbmAccessibilitySection.helpers.js +37 -0
  34. package/lib/components/molecules/AbmSection/AbmAccessibilitySection/AbmAccessibilitySection.js +6 -29
  35. package/lib/components/molecules/AbmSection/AbmGeneralSection.helpers.js +68 -0
  36. package/lib/components/molecules/AbmSection/AbmGeneralSection.js +17 -56
  37. package/lib/components/molecules/AbmSection/AbmKnowledgeSection.helpers.js +133 -0
  38. package/lib/components/molecules/AbmSection/AbmKnowledgeSection.js +31 -112
  39. package/lib/components/molecules/AbmSection/AbmLoaderFiles.helpers.js +17 -0
  40. package/lib/components/molecules/AbmSection/AbmLoaderFiles.js +5 -15
  41. package/lib/components/molecules/ChatAIHome/ChatAIHome.helpers.js +370 -0
  42. package/lib/components/molecules/ChatAIHome/ChatAIHome.js +197 -233
  43. package/lib/components/molecules/ChatAIMessages/ChatAIMessages.helpers.js +398 -0
  44. package/lib/components/molecules/ChatAIMessages/ChatAIMessages.js +209 -235
  45. package/lib/components/molecules/ChatAIModal/ChatAIModal.helpers.js +515 -4
  46. package/lib/components/molecules/ChatAIModal/ChatAIModal.js +228 -344
  47. package/lib/components/molecules/ChatAIModal/components/ChatAiAgentOptions/ChatAiAgentOptions.helpers.js +5 -0
  48. package/lib/components/molecules/ChatAIModal/components/ChatAiAgentOptions/ChatAiAgentOptions.js +3 -2
  49. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.helpers.js +49 -0
  50. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.js +36 -33
  51. package/lib/components/molecules/ChatAIMyAgents/ChatAIMyAgents.helpers.js +39 -0
  52. package/lib/components/molecules/ChatAIMyAgents/ChatAIMyAgents.js +30 -33
  53. package/lib/components/molecules/ChatAIMySkills/ChatAIMySkills.helpers.js +41 -0
  54. package/lib/components/molecules/ChatAIMySkills/ChatAIMySkills.js +9 -35
  55. package/lib/components/molecules/ChatFooter/ChatFooterFaqs.helpers.js +48 -0
  56. package/lib/components/molecules/ChatFooter/ChatFooterFaqs.js +9 -44
  57. package/lib/components/molecules/Sidebar/Sidebar.helpers.js +43 -0
  58. package/lib/components/molecules/Sidebar/Sidebar.js +25 -22
  59. package/lib/components/organisms/AbmAgentModal/AbmAgentModal.helpers.js +512 -0
  60. package/lib/components/organisms/AbmAgentModal/AbmAgentModal.js +309 -643
  61. package/lib/components/organisms/AbmSkillModal/AbmSkillModal.helpers.js +37 -0
  62. package/lib/components/organisms/AbmSkillModal/AbmSkillModal.js +13 -25
  63. package/lib/constants/formatExtensions.js +7 -8
  64. package/lib/dev/DevReasoningTimeline.js +8 -50
  65. package/lib/hooks/useAgentModel/useCreateAgent.helpers.js +144 -0
  66. package/lib/hooks/useAgentModel/useCreateAgent.js +38 -102
  67. package/lib/hooks/useChatManager/useChatManager.helpers.js +902 -0
  68. package/lib/hooks/useChatManager/useChatManager.js +267 -741
  69. package/lib/hooks/useChatMessages/useChatMessages.helpers.js +365 -0
  70. package/lib/hooks/useChatMessages/useChatMessages.js +59 -285
  71. package/lib/hooks/useClientSearch.helpers.js +36 -0
  72. package/lib/hooks/useClientSearch.js +4 -32
  73. package/lib/hooks/useContextMentions.helpers.js +212 -0
  74. package/lib/hooks/useContextMentions.js +5 -223
  75. package/lib/hooks/useContextMentions.types.js +2 -0
  76. package/lib/hooks/useContextPinPopover.helpers.js +95 -0
  77. package/lib/hooks/useContextPinPopover.js +16 -75
  78. package/lib/hooks/useEntitySearch.helpers.js +407 -0
  79. package/lib/hooks/useEntitySearch.js +52 -436
  80. package/lib/hooks/useMentionPopover.helpers.js +41 -0
  81. package/lib/hooks/useMentionPopover.js +9 -35
  82. package/lib/hooks/useMinimizedPillBottomOffset.helpers.js +47 -0
  83. package/lib/hooks/useMinimizedPillBottomOffset.js +15 -45
  84. package/lib/hooks/useOrchestratorStream/useOrchestratorStream.helpers.js +86 -0
  85. package/lib/hooks/useOrchestratorStream/useOrchestratorStream.js +8 -82
  86. package/lib/hooks/useProjectSearch.helpers.js +61 -0
  87. package/lib/hooks/useProjectSearch.js +4 -58
  88. package/lib/hooks/useProjectSummaryConfig.helpers.js +62 -0
  89. package/lib/hooks/useProjectSummaryConfig.js +14 -52
  90. package/lib/hooks/useReasoningTrace/reasoningStore.js +8 -39
  91. package/lib/hooks/useRecentClientsSearch.helpers.js +33 -0
  92. package/lib/hooks/useRecentClientsSearch.js +4 -32
  93. package/lib/lang/br/index.js +1 -7
  94. package/lib/lang/en/index.js +1 -7
  95. package/lib/lang/es/index.js +1 -7
  96. package/lib/lang/fr/index.js +1 -7
  97. package/lib/services/maia/Agents/getAgents.helpers.js +241 -0
  98. package/lib/services/maia/Agents/getAgents.js +90 -282
  99. package/lib/services/maia/Orchestrator/orchestrator.helpers.js +130 -0
  100. package/lib/services/maia/Orchestrator/orchestrator.js +38 -121
  101. package/lib/services/utils/mapChatMessages.helpers.js +223 -0
  102. package/lib/services/utils/mapChatMessages.js +25 -254
  103. package/lib/store/sessions/sessionNotifications.helpers.js +45 -0
  104. package/lib/store/sessions/sessionNotifications.js +35 -41
  105. package/lib/store/sessions/sessionStreamManager.helpers.js +134 -0
  106. package/lib/store/sessions/sessionStreamManager.js +172 -236
  107. package/lib/test/mockSseStream.js +121 -0
  108. package/lib/test/streamdownCodeMock.js +6 -0
  109. package/lib/test/streamdownMock.js +12 -0
  110. package/lib/types/Chat.js +1 -1
  111. package/lib/types/agentModal.js +1 -1
  112. package/lib/types/reasoning.js +1 -1
  113. package/lib/utils/imagePreprocessor.helpers.js +28 -0
  114. package/lib/utils/imagePreprocessor.js +12 -37
  115. package/lib/utils/renderContextMentions.helpers.js +110 -0
  116. package/lib/utils/renderContextMentions.js +4 -110
  117. package/lib/utils/streamActivityMessages.helpers.js +222 -0
  118. package/lib/utils/streamActivityMessages.js +4 -221
  119. package/package.json +2 -2
  120. package/lib/components/atoms/ContextCompactedNotice/ContextCompactedNotice.js +0 -53
  121. package/lib/components/atoms/ContextCompactedNotice/ContextCompactedNotice.styles.js +0 -8
  122. package/lib/components/atoms/ContextCompactedNotice/index.js +0 -2
  123. package/lib/types/contextCompaction.js +0 -48
  124. package/lib/types/jest-dom.d.js +0 -2
@@ -0,0 +1,121 @@
1
+ import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
2
+ import _regeneratorRuntime from "@babel/runtime/regenerator";
3
+ var encodeSseBody = function encodeSseBody(events) {
4
+ var body = events.map(function (_ref) {
5
+ var event = _ref.event,
6
+ data = _ref.data;
7
+ return "event: ".concat(event, "\ndata: ").concat(JSON.stringify(data), "\n\n");
8
+ }).join('');
9
+ return new TextEncoder().encode(body);
10
+ };
11
+ var createStreamReader = function createStreamReader(chunks) {
12
+ var hang = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
13
+ var index = 0;
14
+ return {
15
+ read: function read() {
16
+ if (hang) {
17
+ return new Promise(function () {});
18
+ }
19
+ if (index >= chunks.length) {
20
+ return Promise.resolve({
21
+ done: true
22
+ });
23
+ }
24
+ var value = chunks[index];
25
+ index += 1;
26
+ return Promise.resolve({
27
+ done: false,
28
+ value: value
29
+ });
30
+ },
31
+ cancel: function cancel() {
32
+ return Promise.resolve();
33
+ },
34
+ releaseLock: function releaseLock() {}
35
+ };
36
+ };
37
+ var createStreamResponse = function createStreamResponse(reader) {
38
+ var _init$status, _init$status2, _init$status3, _init$statusText;
39
+ var init = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
40
+ return {
41
+ ok: ((_init$status = init.status) !== null && _init$status !== void 0 ? _init$status : 200) >= 200 && ((_init$status2 = init.status) !== null && _init$status2 !== void 0 ? _init$status2 : 200) < 300,
42
+ status: (_init$status3 = init.status) !== null && _init$status3 !== void 0 ? _init$status3 : 200,
43
+ statusText: (_init$statusText = init.statusText) !== null && _init$statusText !== void 0 ? _init$statusText : 'OK',
44
+ body: {
45
+ getReader: function getReader() {
46
+ return reader;
47
+ }
48
+ },
49
+ json: function () {
50
+ var _json = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
51
+ return _regeneratorRuntime.wrap(function (_context) {
52
+ while (1) switch (_context.prev = _context.next) {
53
+ case 0:
54
+ throw new Error('json() not implemented for stream response');
55
+ case 1:
56
+ case "end":
57
+ return _context.stop();
58
+ }
59
+ }, _callee);
60
+ }));
61
+ function json() {
62
+ return _json.apply(this, arguments);
63
+ }
64
+ return json;
65
+ }()
66
+ };
67
+ };
68
+
69
+ /** Response SSE que entrega todos los eventos y cierra el stream. */
70
+ export var createSseResponse = function createSseResponse(events) {
71
+ var init = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
72
+ return createStreamResponse(createStreamReader([encodeSseBody(events)]), init);
73
+ };
74
+
75
+ /** Response SSE que nunca cierra — útil para simular streams activos / límites de concurrencia. */
76
+ export var createHangingSseResponse = function createHangingSseResponse() {
77
+ return createStreamResponse(createStreamReader([], true));
78
+ };
79
+ export var createJsonResponse = function createJsonResponse(body) {
80
+ var status = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 200;
81
+ return {
82
+ ok: status >= 200 && status < 300,
83
+ status: status,
84
+ statusText: status >= 400 ? 'Error' : 'OK',
85
+ json: function () {
86
+ var _json2 = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
87
+ return _regeneratorRuntime.wrap(function (_context2) {
88
+ while (1) switch (_context2.prev = _context2.next) {
89
+ case 0:
90
+ return _context2.abrupt("return", body);
91
+ case 1:
92
+ case "end":
93
+ return _context2.stop();
94
+ }
95
+ }, _callee2);
96
+ }));
97
+ function json() {
98
+ return _json2.apply(this, arguments);
99
+ }
100
+ return json;
101
+ }(),
102
+ text: function () {
103
+ var _text = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee3() {
104
+ return _regeneratorRuntime.wrap(function (_context3) {
105
+ while (1) switch (_context3.prev = _context3.next) {
106
+ case 0:
107
+ return _context3.abrupt("return", JSON.stringify(body));
108
+ case 1:
109
+ case "end":
110
+ return _context3.stop();
111
+ }
112
+ }, _callee3);
113
+ }));
114
+ function text() {
115
+ return _text.apply(this, arguments);
116
+ }
117
+ return text;
118
+ }()
119
+ };
120
+ };
121
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJlbmNvZGVTc2VCb2R5IiwiZXZlbnRzIiwiYm9keSIsIm1hcCIsIl9yZWYiLCJldmVudCIsImRhdGEiLCJjb25jYXQiLCJKU09OIiwic3RyaW5naWZ5Iiwiam9pbiIsIlRleHRFbmNvZGVyIiwiZW5jb2RlIiwiY3JlYXRlU3RyZWFtUmVhZGVyIiwiY2h1bmtzIiwiaGFuZyIsImFyZ3VtZW50cyIsImxlbmd0aCIsInVuZGVmaW5lZCIsImluZGV4IiwicmVhZCIsIlByb21pc2UiLCJyZXNvbHZlIiwiZG9uZSIsInZhbHVlIiwiY2FuY2VsIiwicmVsZWFzZUxvY2siLCJjcmVhdGVTdHJlYW1SZXNwb25zZSIsInJlYWRlciIsIl9pbml0JHN0YXR1cyIsIl9pbml0JHN0YXR1czIiLCJfaW5pdCRzdGF0dXMzIiwiX2luaXQkc3RhdHVzVGV4dCIsImluaXQiLCJvayIsInN0YXR1cyIsInN0YXR1c1RleHQiLCJnZXRSZWFkZXIiLCJqc29uIiwiX2pzb24iLCJfYXN5bmNUb0dlbmVyYXRvciIsIl9yZWdlbmVyYXRvclJ1bnRpbWUiLCJtYXJrIiwiX2NhbGxlZSIsIndyYXAiLCJfY29udGV4dCIsInByZXYiLCJuZXh0IiwiRXJyb3IiLCJzdG9wIiwiYXBwbHkiLCJjcmVhdGVTc2VSZXNwb25zZSIsImNyZWF0ZUhhbmdpbmdTc2VSZXNwb25zZSIsImNyZWF0ZUpzb25SZXNwb25zZSIsIl9qc29uMiIsIl9jYWxsZWUyIiwiX2NvbnRleHQyIiwiYWJydXB0IiwidGV4dCIsIl90ZXh0IiwiX2NhbGxlZTMiLCJfY29udGV4dDMiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvdGVzdC9tb2NrU3NlU3RyZWFtLnRzIl0sInNvdXJjZXNDb250ZW50IjpbInR5cGUgU3NlRXZlbnQgPSB7XG4gIGV2ZW50OiBzdHJpbmdcbiAgZGF0YTogdW5rbm93blxufVxuXG50eXBlIFN0cmVhbVJlYWRlciA9IHtcbiAgcmVhZDogKCkgPT4gUHJvbWlzZTx7IGRvbmU6IGJvb2xlYW47IHZhbHVlPzogVWludDhBcnJheSB9PlxuICBjYW5jZWw6ICgpID0+IFByb21pc2U8dm9pZD5cbiAgcmVsZWFzZUxvY2s6ICgpID0+IHZvaWRcbn1cblxudHlwZSBNb2NrUmVzcG9uc2VJbml0ID0ge1xuICBzdGF0dXM/OiBudW1iZXJcbiAgc3RhdHVzVGV4dD86IHN0cmluZ1xufVxuXG5jb25zdCBlbmNvZGVTc2VCb2R5ID0gKGV2ZW50czogU3NlRXZlbnRbXSk6IFVpbnQ4QXJyYXkgPT4ge1xuICBjb25zdCBib2R5ID0gZXZlbnRzLm1hcCgoeyBldmVudCwgZGF0YSB9KSA9PiBgZXZlbnQ6ICR7ZXZlbnR9XFxuZGF0YTogJHtKU09OLnN0cmluZ2lmeShkYXRhKX1cXG5cXG5gKS5qb2luKCcnKVxuICByZXR1cm4gbmV3IFRleHRFbmNvZGVyKCkuZW5jb2RlKGJvZHkpXG59XG5cbmNvbnN0IGNyZWF0ZVN0cmVhbVJlYWRlciA9IChjaHVua3M6IFVpbnQ4QXJyYXlbXSwgaGFuZyA9IGZhbHNlKTogU3RyZWFtUmVhZGVyID0+IHtcbiAgbGV0IGluZGV4ID0gMFxuXG4gIHJldHVybiB7XG4gICAgcmVhZDogKCkgPT4ge1xuICAgICAgaWYgKGhhbmcpIHtcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKCgpID0+IHt9KVxuICAgICAgfVxuICAgICAgaWYgKGluZGV4ID49IGNodW5rcy5sZW5ndGgpIHtcbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh7IGRvbmU6IHRydWUgfSlcbiAgICAgIH1cbiAgICAgIGNvbnN0IHZhbHVlID0gY2h1bmtzW2luZGV4XVxuICAgICAgaW5kZXggKz0gMVxuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh7IGRvbmU6IGZhbHNlLCB2YWx1ZSB9KVxuICAgIH0sXG4gICAgY2FuY2VsOiAoKSA9PiBQcm9taXNlLnJlc29sdmUoKSxcbiAgICByZWxlYXNlTG9jazogKCkgPT4ge30sXG4gIH1cbn1cblxuY29uc3QgY3JlYXRlU3RyZWFtUmVzcG9uc2UgPSAocmVhZGVyOiBTdHJlYW1SZWFkZXIsIGluaXQ6IE1vY2tSZXNwb25zZUluaXQgPSB7fSk6IFJlc3BvbnNlID0+XG4gICh7XG4gICAgb2s6IChpbml0LnN0YXR1cyA/PyAyMDApID49IDIwMCAmJiAoaW5pdC5zdGF0dXMgPz8gMjAwKSA8IDMwMCxcbiAgICBzdGF0dXM6IGluaXQuc3RhdHVzID8/IDIwMCxcbiAgICBzdGF0dXNUZXh0OiBpbml0LnN0YXR1c1RleHQgPz8gJ09LJyxcbiAgICBib2R5OiB7IGdldFJlYWRlcjogKCkgPT4gcmVhZGVyIH0sXG4gICAganNvbjogYXN5bmMgKCkgPT4ge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdqc29uKCkgbm90IGltcGxlbWVudGVkIGZvciBzdHJlYW0gcmVzcG9uc2UnKVxuICAgIH0sXG4gIH0pIGFzIHVua25vd24gYXMgUmVzcG9uc2VcblxuLyoqIFJlc3BvbnNlIFNTRSBxdWUgZW50cmVnYSB0b2RvcyBsb3MgZXZlbnRvcyB5IGNpZXJyYSBlbCBzdHJlYW0uICovXG5leHBvcnQgY29uc3QgY3JlYXRlU3NlUmVzcG9uc2UgPSAoZXZlbnRzOiBTc2VFdmVudFtdLCBpbml0OiBNb2NrUmVzcG9uc2VJbml0ID0ge30pOiBSZXNwb25zZSA9PlxuICBjcmVhdGVTdHJlYW1SZXNwb25zZShjcmVhdGVTdHJlYW1SZWFkZXIoW2VuY29kZVNzZUJvZHkoZXZlbnRzKV0pLCBpbml0KVxuXG4vKiogUmVzcG9uc2UgU1NFIHF1ZSBudW5jYSBjaWVycmEg4oCUIMO6dGlsIHBhcmEgc2ltdWxhciBzdHJlYW1zIGFjdGl2b3MgLyBsw61taXRlcyBkZSBjb25jdXJyZW5jaWEuICovXG5leHBvcnQgY29uc3QgY3JlYXRlSGFuZ2luZ1NzZVJlc3BvbnNlID0gKCk6IFJlc3BvbnNlID0+IGNyZWF0ZVN0cmVhbVJlc3BvbnNlKGNyZWF0ZVN0cmVhbVJlYWRlcihbXSwgdHJ1ZSkpXG5cbmV4cG9ydCBjb25zdCBjcmVhdGVKc29uUmVzcG9uc2UgPSAoYm9keTogdW5rbm93biwgc3RhdHVzID0gMjAwKTogUmVzcG9uc2UgPT5cbiAgKHtcbiAgICBvazogc3RhdHVzID49IDIwMCAmJiBzdGF0dXMgPCAzMDAsXG4gICAgc3RhdHVzLFxuICAgIHN0YXR1c1RleHQ6IHN0YXR1cyA+PSA0MDAgPyAnRXJyb3InIDogJ09LJyxcbiAgICBqc29uOiBhc3luYyAoKSA9PiBib2R5LFxuICAgIHRleHQ6IGFzeW5jICgpID0+IEpTT04uc3RyaW5naWZ5KGJvZHkpLFxuICB9KSBhcyB1bmtub3duIGFzIFJlc3BvbnNlXG4iXSwibWFwcGluZ3MiOiI7O0FBZ0JBLElBQU1BLGFBQWEsR0FBRyxTQUFoQkEsYUFBYUEsQ0FBSUMsTUFBa0IsRUFBaUI7RUFDeEQsSUFBTUMsSUFBSSxHQUFHRCxNQUFNLENBQUNFLEdBQUcsQ0FBQyxVQUFBQyxJQUFBO0lBQUEsSUFBR0MsS0FBSyxHQUFBRCxJQUFBLENBQUxDLEtBQUs7TUFBRUMsSUFBSSxHQUFBRixJQUFBLENBQUpFLElBQUk7SUFBQSxpQkFBQUMsTUFBQSxDQUFpQkYsS0FBSyxjQUFBRSxNQUFBLENBQVdDLElBQUksQ0FBQ0MsU0FBUyxDQUFDSCxJQUFJLENBQUM7RUFBQSxDQUFNLENBQUMsQ0FBQ0ksSUFBSSxDQUFDLEVBQUUsQ0FBQztFQUMzRyxPQUFPLElBQUlDLFdBQVcsQ0FBQyxDQUFDLENBQUNDLE1BQU0sQ0FBQ1YsSUFBSSxDQUFDO0FBQ3ZDLENBQUM7QUFFRCxJQUFNVyxrQkFBa0IsR0FBRyxTQUFyQkEsa0JBQWtCQSxDQUFJQyxNQUFvQixFQUFpQztFQUFBLElBQS9CQyxJQUFJLEdBQUFDLFNBQUEsQ0FBQUMsTUFBQSxRQUFBRCxTQUFBLFFBQUFFLFNBQUEsR0FBQUYsU0FBQSxNQUFHLEtBQUs7RUFDNUQsSUFBSUcsS0FBSyxHQUFHLENBQUM7RUFFYixPQUFPO0lBQ0xDLElBQUksRUFBRSxTQUFOQSxJQUFJQSxDQUFBLEVBQVE7TUFDVixJQUFJTCxJQUFJLEVBQUU7UUFDUixPQUFPLElBQUlNLE9BQU8sQ0FBQyxZQUFNLENBQUMsQ0FBQyxDQUFDO01BQzlCO01BQ0EsSUFB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a0IsR0FBRyxTQUFyQkEsa0JBQWtCQSxDQUFJbkQsSUFBYTtFQUFBLElBQUVpQyxNQUFNLEdBQUFuQixTQUFBLENBQUFDLE1BQUEsUUFBQUQsU0FBQSxRQUFBRSxTQUFBLEdBQUFGLFNBQUEsTUFBRyxHQUFHO0VBQUEsT0FDM0Q7SUFDQ2tCLEVBQUUsRUFBRUMsTUFBTSxJQUFJLEdBQUcsSUFBSUEsTUFBTSxHQUFHLEdBQUc7SUFDakNBLE1BQU0sRUFBTkEsTUFBTTtJQUNOQyxVQUFVLEVBQUVELE1BQU0sSUFBSSxHQUFHLEdBQUcsT0FBTyxHQUFHLElBQUk7SUFDMUNHLElBQUk7TUFBQSxJQUFBZ0IsTUFBQSxHQUFBZCxpQkFBQSxjQUFBQyxtQkFBQSxDQUFBQyxJQUFBLENBQUUsU0FBQWEsU0FBQTtRQUFBLE9BQUFkLG1CQUFBLENBQUFHLElBQUEsV0FBQVksU0FBQTtVQUFBLGtCQUFBQSxTQUFBLENBQUFWLElBQUEsR0FBQVUsU0FBQSxDQUFBVCxJQUFBO1lBQUE7Y0FBQSxPQUFBUyxTQUFBLENBQUFDLE1BQUEsV0FBWXZELElBQUk7WUFBQTtZQUFBO2NBQUEsT0FBQXNELFNBQUEsQ0FBQVAsSUFBQTtVQUFBO1FBQUEsR0FBQU0sUUFBQTtNQUFBO01BQUEsU0FBdEJqQixJQUFJQSxDQUFBO1FBQUEsT0FBQWdCLE1BQUEsQ0FBQUosS0FBQSxPQUFBbEMsU0FBQTtNQUFBO01BQUEsT0FBSnNCLElBQUk7SUFBQSxHQUFrQjtJQUN0Qm9CLElBQUk7TUFBQSxJQUFBQyxLQUFBLEdBQUFuQixpQkFBQSxjQUFBQyxtQkFBQSxDQUFBQyxJQUFBLENBQUUsU0FBQWtCLFNBQUE7UUFBQSxPQUFBbkIsbUJBQUEsQ0FBQUcsSUFBQSxXQUFBaUIsU0FBQTtVQUFBLGtCQUFBQSxTQUFBLENBQUFmLElBQUEsR0FBQWUsU0FBQSxDQUFBZCxJQUFBO1lBQUE7Y0FBQSxPQUFBYyxTQUFBLENBQUFKLE1BQUEsV0FBWWpELElBQUksQ0FBQ0MsU0FBUyxDQUFDUCxJQUFJLENBQUM7WUFBQTtZQUFBO2NBQUEsT0FBQTJELFNBQUEsQ0FBQVosSUFBQTtVQUFBO1FBQUEsR0FBQVcsUUFBQTtNQUFBO01BQUEsU0FBdENGLElBQUlBLENBQUE7UUFBQSxPQUFBQyxLQUFBLENBQUFULEtBQUEsT0FBQWxDLFNBQUE7TUFBQTtNQUFBLE9BQUowQyxJQUFJO0lBQUE7RUFDTixDQUFDO0FBQUEsQ0FBd0IiLCJpZ25vcmVMaXN0IjpbXX0=
@@ -0,0 +1,6 @@
1
+ module.exports = {
2
+ createCodePlugin: function createCodePlugin() {
3
+ return {};
4
+ }
5
+ };
6
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJtb2R1bGUiLCJleHBvcnRzIiwiY3JlYXRlQ29kZVBsdWdpbiJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0L3N0cmVhbWRvd25Db2RlTW9jay5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJtb2R1bGUuZXhwb3J0cyA9IHtcbiAgY3JlYXRlQ29kZVBsdWdpbjogKCkgPT4gKHt9KSxcbn1cbiJdLCJtYXBwaW5ncyI6IkFBQUFBLE1BQU0sQ0FBQ0MsT0FBTyxHQUFHO0VBQ2ZDLGdCQUFnQixFQUFFLFNBQWxCQSxnQkFBZ0JBLENBQUE7SUFBQSxPQUFTLENBQUMsQ0FBQztFQUFBO0FBQzdCLENBQUMiLCJpZ25vcmVMaXN0IjpbXX0=
@@ -0,0 +1,12 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ export var Streamdown = function Streamdown(_ref) {
3
+ var children = _ref.children,
4
+ linkSafety = _ref.linkSafety;
5
+ return /*#__PURE__*/_jsx("div", {
6
+ "data-testid": "streamdown",
7
+ "data-link-enabled": String(linkSafety === null || linkSafety === void 0 ? void 0 : linkSafety.enabled),
8
+ children: children
9
+ });
10
+ };
11
+ export var defaultRehypePlugins = {};
12
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJTdHJlYW1kb3duIiwiX3JlZiIsImNoaWxkcmVuIiwibGlua1NhZmV0eSIsIl9qc3giLCJTdHJpbmciLCJlbmFibGVkIiwiZGVmYXVsdFJlaHlwZVBsdWdpbnMiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvdGVzdC9zdHJlYW1kb3duTW9jay50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBSZWFjdE5vZGUgfSBmcm9tICdyZWFjdCdcblxudHlwZSBTdHJlYW1kb3duUHJvcHMgPSB7XG4gIGNoaWxkcmVuPzogUmVhY3ROb2RlXG4gIGxpbmtTYWZldHk/OiB7IGVuYWJsZWQ6IGJvb2xlYW4gfVxufVxuXG5leHBvcnQgY29uc3QgU3RyZWFtZG93biA9ICh7IGNoaWxkcmVuLCBsaW5rU2FmZXR5IH06IFN0cmVhbWRvd25Qcm9wcykgPT4gKFxuICA8ZGl2IGRhdGEtdGVzdGlkPVwic3RyZWFtZG93blwiIGRhdGEtbGluay1lbmFibGVkPXtTdHJpbmcobGlua1NhZmV0eT8uZW5hYmxlZCl9PlxuICAgIHtjaGlsZHJlbn1cbiAgPC9kaXY+XG4pXG5cbmV4cG9ydCBjb25zdCBkZWZhdWx0UmVoeXBlUGx1Z2lucyA9IHt9XG4iXSwibWFwcGluZ3MiOiI7QUFPQSxPQUFPLElBQU1BLFVBQVUsR0FBRyxTQUFiQSxVQUFVQSxDQUFBQyxJQUFBO0VBQUEsSUFBTUMsUUFBUSxHQUFBRCxJQUFBLENBQVJDLFFBQVE7SUFBRUMsVUFBVSxHQUFBRixJQUFBLENBQVZFLFVBQVU7RUFBQSxvQkFDL0NDLElBQUE7SUFBSyxlQUFZLFlBQVk7SUFBQyxxQkFBbUJDLE1BQU0sQ0FBQ0YsVUFBVSxhQUFWQSxVQUFVLHVCQUFWQSxVQUFVLENBQUVHLE9BQU8sQ0FBRTtJQUFBSixRQUFBLEVBQzFFQTtFQUFRLENBQ04sQ0FBQztBQUFBLENBQ1A7QUFFRCxPQUFPLElBQU1LLG9CQUFvQixHQUFHLENBQUMsQ0FBQyIsImlnbm9yZUxpc3QiOltdfQ==
package/lib/types/Chat.js CHANGED
@@ -7,4 +7,4 @@ export var ChatHistoryRole = /*#__PURE__*/function (ChatHistoryRole) {
7
7
  }({});
8
8
 
9
9
  // Backend pending_approval format (before transformation)
10
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJDaGF0SGlzdG9yeVJvbGUiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvdHlwZXMvQ2hhdC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXG5pbXBvcnQgeyBSZWFjdE5vZGUgfSBmcm9tICdyZWFjdCdcbmltcG9ydCB0eXBlIHsgUmVhc29uaW5nVHJhY2UsIFJlYXNvbmluZ1RyYWNlUGF5bG9hZCB9IGZyb20gJy4vcmVhc29uaW5nJ1xuaW1wb3J0IHR5cGUgeyBDb250ZXh0Q29tcGFjdGlvbiB9IGZyb20gJy4vY29udGV4dENvbXBhY3Rpb24nXG5pbXBvcnQgeyBQcm9qZWN0IH0gZnJvbSAnLi9Qcm9qZWN0J1xuaW1wb3J0IHsgQXR0YWNobWVudEZpbGUgfSBmcm9tICcuLi9jb21wb25lbnRzL21vbGVjdWxlcy9DaGF0Rm9vdGVyL0NoYXRGb290ZXInXG5pbXBvcnQgeyBDb250ZXh0TWVzc2FnZSB9IGZyb20gJy4vY29udGV4dE1lbnRpb24nXG5cbmV4cG9ydCB0eXBlIENoYXRJdGVtID0ge1xuICBjaGF0X2lkOiBzdHJpbmdcbiAgY2hhdF9zdGF0dXM6IHN0cmluZ1xuICBsYXN0X3F1ZXN0aW9uOiBzdHJpbmdcbiAgbGFzdF9xdWVzdGlvbl9kYXRlOiBzdHJpbmdcbiAgbWVzc2FnZV9pZDogc3RyaW5nXG4gIHFfYW5zd2VyczogbnVtYmVyXG4gIGdlbmVyYWxfcmF0aW5nOiBudW1iZXJcbiAgdXNlcl9pZDogc3RyaW5nXG59XG5cbmV4cG9ydCB0eXBlIENoYXRSZXNwb25zZSA9IHtcbiAgaXRlbXM6IENoYXRJdGVtW11cbiAgbGFzdF9ldmFsdWF0ZWRfa2V5OiBzdHJpbmdcbn1cblxuZXhwb3J0IHR5cGUgQ2hhdCA9IHtcbiAgaWQ6IHN0cmluZ1xuICB0aXRsZTogc3RyaW5nXG4gIGRhdGU6IERhdGVcbiAgYWdlbnRfdHlwZT86IHN0cmluZ1xufVxuXG5leHBvcnQgdHlwZSBDaGF0TWVzc2FnZVVzZXIgPSB7XG4gIGlkOiBzdHJpbmdcbiAgbmFtZTogc3RyaW5nXG4gIGF2YXRhcj86IHN0cmluZ1xuICBhdmF0YXJJY29uPzogUmVhY3ROb2RlXG59XG5cbmV4cG9ydCBlbnVtIENoYXRIaXN0b3J5Um9sZSB7XG4gIFVTRVIgPSAndXNlcicsXG4gIEFTU0lTVEFOVCA9ICdhc3Npc3RhbnQnLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBlbmRpbmdBY3Rpb24ge1xuICB0b29sX25hbWU6IHN0cmluZ1xuICB0b29sX2NhbGxfaWQ6IHN0cmluZ1xuICB0b29sX2FyZ3M6IFJlY29yZDxzdHJpbmcsIGFueT4gfCBhbnlbXVxuICB0aHJlYWRfaWQ6IHN0cmluZyAvLyBFYWNoIGFjdGlvbiBoYXMgaXRzIG93biB1bmlxdWUgdGhyZWFkX2lkXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXBwcm92YWxSZXF1ZXN0IHtcbiAgdHlwZTogJ2FwcHJvdmFsX3JlcXVpcmVkJ1xuICBwZW5kaW5nX2FjdGlvbnM6IFBlbmRpbmdBY3Rpb25bXVxuICB0b3RhbF9hY3Rpb25zOiBudW1iZXJcbiAgb3JpZ2luYWxfdGhyZWFkX2lkOiBzdHJpbmcgLy8gT3JpZ2luYWwgY2hlY2twb2ludCB0aHJlYWRfaWRcbiAgc2Vzc2lvbl9pZDogc3RyaW5nXG4gIG1ldGFkYXRhOiBSZWNvcmQ8c3RyaW5nLCBhbnk+XG4gIG1hbnVhbF9hcHByb3ZhbF9kZXRlY3RlZD86IGJvb2xlYW5cbiAgd2FybmluZ19tZXNzYWdlPzogc3RyaW5nXG4gIGF1dG9fYXBwcm92ZWQ/OiBib29sZWFuXG4gIGFwcHJvdmFsX3N0YXR1cz86ICdwZW5kaW5nJyB8ICdhcHByb3ZlZCdcbiAgcmVhc29uaW5nPzogUmVhc29uaW5nVHJhY2VQYXlsb2FkIHwgbnVsbFxufVxuXG4vLyBCYWNrZW5kIHBlbmRpbmdfYXBwcm92YWwgZm9ybWF0IChiZWZvcmUgdHJhbnNmb3JtYXRpb24pXG5leHBvcnQgaW50ZXJmYWNlIEJhY2tlbmRQZW5kaW5nQXBwcm92YWwge1xuICB0eXBlOiAnYXBwcm92YWxfcmVxdWlyZWQnXG4gIHRvb2xfY2FsbF9pZDogc3RyaW5nXG4gIHRvb2xfbmFtZT86IHN0cmluZ1xuICB0b29sX2FyZ3M/OiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgYW55W11cbiAgb3JpZ2luYWxfdGhyZWFkX2lkOiBzdHJpbmdcbiAgc2Vzc2lvbl9pZDogc3RyaW5nXG4gIG1ldGFkYXRhOiBSZWNvcmQ8c3RyaW5nLCBhbnk+XG4gIG1hbnVhbF9hcHByb3ZhbF9kZXRlY3RlZD86IGJvb2xlYW5cbiAgd2FybmluZ19tZXNzYWdlPzogc3RyaW5nXG4gIGF1dG9fYXBwcm92ZWQ/OiBib29sZWFuXG59XG5cbmV4cG9ydCB0eXBlIENoYXRNZXNzYWdlID0ge1xuICBpZDogc3RyaW5nXG4gIG1lc3NhZ2U6IHN0cmluZ1xuICBkYXRlOiBEYXRlXG4gIGlzRXJyb3I/OiBib29sZWFuXG4gIGlzX2NhbmNlbGxlZD86IGJvb2xlYW5cbiAgaXNGcm9udGVuZENhbmNlbGxlZD86IGJvb2xlYW5cbiAgdXNlcjogQ2hhdE1lc3NhZ2VVc2VyXG4gIHByb2plY3RJZD86IG51bWJlciB8IHN0cmluZ1xuICBwcm9qZWN0TmFtZT86IHN0cmluZ1xuICBjbGllbnRJZD86IG51bWJlciB8IHN0cmluZ1xuICBjbGllbnROYW1lPzogc3RyaW5nXG4gIGlzQ2hhbmdlUHJvamVjdD86IGJvb2xlYW5cbiAgcHJvamVjdD86IFByb2plY3RcbiAgYWdlbnRJZD86IHN0cmluZ1xuICBvcHRpb25zPzoge1xuICAgIGlkOiBudW1iZXIgfCBzdHJpbmdcbiAgICBuYW1lPzogc3RyaW5nXG4gIH1bXVxuICByb2xlPzogQ2hhdEhpc3RvcnlSb2xlXG4gIHNvdXJjZXM/OiBhbnlcbiAgYXR0YWNobWVudHM/OiBBdHRhY2htZW50RmlsZVtdXG4gIHdhc0hlbHBmdWw/OiBib29sZWFuIHwgbnVsbFxuICBtZW1vcnlTZXNzaW9uSWQ/OiBzdHJpbmdcbiAgc3VnZ2VzdGlvbnM/OiBzdHJpbmdbXSB8IG51bGxcbiAgLyoqIFRyYXMgYXByb2JhciBjcmVhdGVfYWdlbnQ6IGFjY2lvbmVzIHLDoXBpZGFzIGVuIGVsIG1lbnNhamUgZmluYWw7IHJlcXVpZXJlIGFnZW50SWQgZGV0ZWN0YWRvIGVuIGVsIHRleHRvICovXG4gIGNyZWF0ZUFnZW50Rm9sbG93VXA/OiB7IGFnZW50SWQ6IHN0cmluZyB9IHwgbnVsbFxuICBhcHByb3ZhbD86IEFwcHJvdmFsUmVxdWVzdFxuICBhcHByb3ZhbFN0YXR1cz86ICdwZW5kaW5nJyB8ICdhcHByb3ZlZCcgfCAncmVqZWN0ZWQnXG4gIHByb2plY3RNZXRhZGF0YT86IHtcbiAgICBpc19kZWxldGVkPzogYm9vbGVhbiB8IG51bGxcbiAgfVxuICAvKipcbiAgICogRW50aWRhZGVzIG1lbmNpb25hZGFzIGNvbiBgQGAgZW4gRVNFIG1lbnNhamUgcHVudHVhbC4gTm8gc2UgcHJvcGFnYSBhbFxuICAgKiBjb250ZXh0byBnbG9iYWwgbmkgYSBvdHJvcyB0dXJub3M7IHPDs2xvIHZpdmUgYWPDoSBwYXJhIHF1ZSBlbCByZW5kZXJlclxuICAgKiBwdWVkYSBwaW50YXIgY2hpcHMgeSBwYXJhIG1hbmRhcmxvIGFsIG9yY2hlc3RyYXRvciB2w61hIG1ldGFkYXRhLlxuICAgKi9cbiAgY29udGV4dE1lc3NhZ2U/OiBDb250ZXh0TWVzc2FnZVxuICByZWFzb25pbmc/OiBSZWFzb25pbmdUcmFjZSB8IG51bGxcbiAgLyoqIENvbXBhY3RhY2nDs24gZGUgZXN0ZSB0dXJubywgcGVyc2lzdGlkYS4gRWwgc3RvcmUgZW4gdml2byBwaXNhIGVzdG8gbWllbnRyYXMgc3RyZW1lYS4gKi9cbiAgY29tcGFjdGlvbj86IENvbnRleHRDb21wYWN0aW9uIHwgbnVsbFxufVxuXG5leHBvcnQgdHlwZSBDaGF0TWVzc2FnZUl0ZW0gPSB7XG4gIGNoYXRJZDogc3RyaW5nXG4gIGNoYXRTdGF0dXM6IHN0cmluZ1xuICBsYXN0UXVlc3Rpb246IHN0cmluZ1xuICBsYXN0UXVlc3Rpb25EYXRlOiBzdHJpbmdcbiAgbWVzc2FnZUlkOiBzdHJpbmdcbiAgcUFuc3dlcnM6IG51bWJlclxuICBnZW5lcmFsUmF0aW5nOiBudW1iZXJcbiAgdXNlcklkOiBzdHJpbmdcbn1cblxuZXhwb3J0IHR5cGUgQ2hhdE1lc3NhZ2VJdGVtUmVzcG9uc2UgPSB7XG4gIGFnZW50X2lkOiBzdHJpbmdcbiAgdXNlcl9pZDogc3RyaW5nXG4gIGFuc3dlcjogc3RyaW5nXG4gIGRhdGU6IHN0cmluZ1xuICB0aW1lc3RhbXA6IHN0cmluZ1xuICBxdWVzdGlvbjogc3RyaW5nXG4gIHdhc19oZWxwZnVsOiBib29sZWFuIHwgbnVsbFxuICBtZXNzYWdlX2lkOiBzdHJpbmdcbiAgbWVtb3J5X3Nlc3Npb25faWQ6IHN0cmluZ1xuICBzdWdnZXN0aW9ucz86IHN0cmluZ1tdIHwgbnVsbFxuICBzdWdnZXN0X3JlcGx5Pzogc3RyaW5nW10gfCBudWxsXG4gIGlzX2NhbmNlbGxlZD86IGJvb2xlYW5cbiAgcmVhc29uaW5nPzogUmVhc29uaW5nVHJhY2VQYXlsb2FkIHwgbnVsbFxuICBwcm9qZWN0X21ldGFkYXRhPzoge1xuICAgIGlkOiBudW1iZXIgfCBzdHJpbmdcbiAgICBuYW1lOiBzdHJpbmdcbiAgICBpc19kZWxldGVkPzogYm9vbGVhbiB8IG51bGxcbiAgfVxuICBjbGllbnRfbWV0YWRhdGE/OiB7XG4gICAgaWQ6IG51bWJlciB8IHN0cmluZ1xuICAgIG5hbWU6IHN0cmluZ1xuICB9XG4gIHRhc2tfbWV0YWRhdGE/OiB7XG4gICAgaWQ6IG51bWJlciB8IHN0cmluZ1xuICAgIG5hbWU6IHN0cmluZ1xuICB9XG4gIHByb2plY3RfaWQ/OiBudW1iZXJcbiAgYXR0YWNobWVudHM/OiBBdHRhY2htZW50RmlsZVtdXG4gIHNvdXJjZXM/OiB7IHNvdXJjZTogc3RyaW5nOyByZWZlcmVuY2U6IHN0cmluZyB9W11cbiAgc3RhdHVzPzogc3RyaW5nXG4gIHBlbmRpbmdfYXBwcm92YWw/OiBCYWNrZW5kUGVuZGluZ0FwcHJvdmFsXG4gIHRocmVhZF9pZD86IHN0cmluZ1xuICAvKiogU2V0IGRlIGVudGlkYWRlcyBtZW5jaW9uYWRhcyBjb24gYEBgIHF1ZSBlbCB1c3VhcmlvIGVudmnDsyBlbiBlc2UgbWVuc2FqZSAqL1xuICBjb250ZXh0X21lc3NhZ2U/OiBDb250ZXh0TWVzc2FnZVxufVxuXG5leHBvcnQgdHlwZSBDaGF0TWVzc2FnZXNSZXNwb25zZVNjaGVtYSA9IHtcbiAgaXRlbXM6IENoYXRNZXNzYWdlSXRlbVJlc3BvbnNlW11cbiAgbGFzdF9ldmFsdWF0ZWRfa2V5OiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDaGF0SGlzdG9yeSB7XG4gIGNvbnRlbnQ6IHN0cmluZ1xuICByb2xlOiBDaGF0SGlzdG9yeVJvbGVcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDaGF0SXRlbVJlc3BvbnNlIHtcbiAgYWdlbnRfbmFtZTogc3RyaW5nXG4gIGFnZW50X2lkOiBudW1iZXJcbiAgYWdlbnRfdHlwZT86IHN0cmluZ1xuICBlbW9qaTogc3RyaW5nIHwgbnVsbFxuICBpZDogbnVtYmVyXG4gIGxhc3RfcXVlc3Rpb246IHN0cmluZ1xuICBsYXN0X3F1ZXN0aW9uX2RhdGU6IHN0cmluZ1xuICBzZXNzaW9uX2V4dGVybmFsX2lkOiBzdHJpbmdcbiAgdGl0bGU6IHN0cmluZyB8IG51bGxcbiAgaXNfcmVhZD86IGJvb2xlYW5cbiAgYXR0YWNobWVudHM6IEF0dGFjaG1lbnRGaWxlW11cbiAgcHJvamVjdF9tZXRhZGF0YT86IHtcbiAgICBpZDogbnVtYmVyIHwgc3RyaW5nXG4gICAgbmFtZTogc3RyaW5nXG4gIH1cbiAgY2xpZW50X21ldGFkYXRhPzoge1xuICAgIGlkOiBudW1iZXJcbiAgICBuYW1lOiBzdHJpbmdcbiAgfVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIENoYXRzUmVzcG9uc2VTY2hlbWEge1xuICBkYXRhOiBDaGF0SXRlbVJlc3BvbnNlW11cbiAgaGFzX21vcmU6IGJvb2xlYW5cbiAgbmV4dF9vZmZzZXQ6IG51bWJlciB8IG51bGxcbiAgdW5yZWFkX2NvdW50PzogbnVtYmVyXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGFza0luZm8ge1xuICBpZDogc3RyaW5nXG4gIHRpdGxlOiBzdHJpbmdcbiAgdXJsOiBzdHJpbmdcbiAgcHJvamVjdE5hbWU/OiBzdHJpbmdcbn1cbiJdLCJtYXBwaW5ncyI6IkFBQUE7O0FBc0NBLFdBQVlBLGVBQWUsMEJBQWZBLGVBQWU7RUFBZkEsZUFBZTtFQUFmQSxlQUFlO0VBQUEsT0FBZkEsZUFBZTtBQUFBOztBQTBCM0IiLCJpZ25vcmVMaXN0IjpbXX0=
10
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJDaGF0SGlzdG9yeVJvbGUiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvdHlwZXMvQ2hhdC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXG5pbXBvcnQgeyBSZWFjdE5vZGUgfSBmcm9tICdyZWFjdCdcbmltcG9ydCB0eXBlIHsgUmVhc29uaW5nVHJhY2UsIFJlYXNvbmluZ1RyYWNlUGF5bG9hZCB9IGZyb20gJy4vcmVhc29uaW5nJ1xuaW1wb3J0IHsgUHJvamVjdCB9IGZyb20gJy4vUHJvamVjdCdcbmltcG9ydCB7IEF0dGFjaG1lbnRGaWxlIH0gZnJvbSAnLi4vY29tcG9uZW50cy9tb2xlY3VsZXMvQ2hhdEZvb3Rlci9DaGF0Rm9vdGVyJ1xuaW1wb3J0IHsgQ29udGV4dE1lc3NhZ2UgfSBmcm9tICcuL2NvbnRleHRNZW50aW9uJ1xuXG5leHBvcnQgdHlwZSBDaGF0SXRlbSA9IHtcbiAgY2hhdF9pZDogc3RyaW5nXG4gIGNoYXRfc3RhdHVzOiBzdHJpbmdcbiAgbGFzdF9xdWVzdGlvbjogc3RyaW5nXG4gIGxhc3RfcXVlc3Rpb25fZGF0ZTogc3RyaW5nXG4gIG1lc3NhZ2VfaWQ6IHN0cmluZ1xuICBxX2Fuc3dlcnM6IG51bWJlclxuICBnZW5lcmFsX3JhdGluZzogbnVtYmVyXG4gIHVzZXJfaWQ6IHN0cmluZ1xufVxuXG5leHBvcnQgdHlwZSBDaGF0UmVzcG9uc2UgPSB7XG4gIGl0ZW1zOiBDaGF0SXRlbVtdXG4gIGxhc3RfZXZhbHVhdGVkX2tleTogc3RyaW5nXG59XG5cbmV4cG9ydCB0eXBlIENoYXQgPSB7XG4gIGlkOiBzdHJpbmdcbiAgdGl0bGU6IHN0cmluZ1xuICBkYXRlOiBEYXRlXG4gIGFnZW50X3R5cGU/OiBzdHJpbmdcbn1cblxuZXhwb3J0IHR5cGUgQ2hhdE1lc3NhZ2VVc2VyID0ge1xuICBpZDogc3RyaW5nXG4gIG5hbWU6IHN0cmluZ1xuICBhdmF0YXI/OiBzdHJpbmdcbiAgYXZhdGFySWNvbj86IFJlYWN0Tm9kZVxufVxuXG5leHBvcnQgZW51bSBDaGF0SGlzdG9yeVJvbGUge1xuICBVU0VSID0gJ3VzZXInLFxuICBBU1NJU1RBTlQgPSAnYXNzaXN0YW50Jyxcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQZW5kaW5nQWN0aW9uIHtcbiAgdG9vbF9uYW1lOiBzdHJpbmdcbiAgdG9vbF9jYWxsX2lkOiBzdHJpbmdcbiAgdG9vbF9hcmdzOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgYW55W11cbiAgdGhyZWFkX2lkOiBzdHJpbmcgLy8gRWFjaCBhY3Rpb24gaGFzIGl0cyBvd24gdW5pcXVlIHRocmVhZF9pZFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFwcHJvdmFsUmVxdWVzdCB7XG4gIHR5cGU6ICdhcHByb3ZhbF9yZXF1aXJlZCdcbiAgcGVuZGluZ19hY3Rpb25zOiBQZW5kaW5nQWN0aW9uW11cbiAgdG90YWxfYWN0aW9uczogbnVtYmVyXG4gIG9yaWdpbmFsX3RocmVhZF9pZDogc3RyaW5nIC8vIE9yaWdpbmFsIGNoZWNrcG9pbnQgdGhyZWFkX2lkXG4gIHNlc3Npb25faWQ6IHN0cmluZ1xuICBtZXRhZGF0YTogUmVjb3JkPHN0cmluZywgYW55PlxuICBtYW51YWxfYXBwcm92YWxfZGV0ZWN0ZWQ/OiBib29sZWFuXG4gIHdhcm5pbmdfbWVzc2FnZT86IHN0cmluZ1xuICBhdXRvX2FwcHJvdmVkPzogYm9vbGVhblxuICBhcHByb3ZhbF9zdGF0dXM/OiAncGVuZGluZycgfCAnYXBwcm92ZWQnXG4gIHJlYXNvbmluZz86IFJlYXNvbmluZ1RyYWNlUGF5bG9hZCB8IG51bGxcbn1cblxuLy8gQmFja2VuZCBwZW5kaW5nX2FwcHJvdmFsIGZvcm1hdCAoYmVmb3JlIHRyYW5zZm9ybWF0aW9uKVxuZXhwb3J0IGludGVyZmFjZSBCYWNrZW5kUGVuZGluZ0FwcHJvdmFsIHtcbiAgdHlwZTogJ2FwcHJvdmFsX3JlcXVpcmVkJ1xuICB0b29sX2NhbGxfaWQ6IHN0cmluZ1xuICB0b29sX25hbWU/OiBzdHJpbmdcbiAgdG9vbF9hcmdzPzogUmVjb3JkPHN0cmluZywgYW55PiB8IGFueVtdXG4gIG9yaWdpbmFsX3RocmVhZF9pZDogc3RyaW5nXG4gIHNlc3Npb25faWQ6IHN0cmluZ1xuICBtZXRhZGF0YTogUmVjb3JkPHN0cmluZywgYW55PlxuICBtYW51YWxfYXBwcm92YWxfZGV0ZWN0ZWQ/OiBib29sZWFuXG4gIHdhcm5pbmdfbWVzc2FnZT86IHN0cmluZ1xuICBhdXRvX2FwcHJvdmVkPzogYm9vbGVhblxufVxuXG5leHBvcnQgdHlwZSBDaGF0TWVzc2FnZSA9IHtcbiAgaWQ6IHN0cmluZ1xuICBtZXNzYWdlOiBzdHJpbmdcbiAgZGF0ZTogRGF0ZVxuICBpc0Vycm9yPzogYm9vbGVhblxuICBpc19jYW5jZWxsZWQ/OiBib29sZWFuXG4gIGlzRnJvbnRlbmRDYW5jZWxsZWQ/OiBib29sZWFuXG4gIHVzZXI6IENoYXRNZXNzYWdlVXNlclxuICBwcm9qZWN0SWQ/OiBudW1iZXIgfCBzdHJpbmdcbiAgcHJvamVjdE5hbWU/OiBzdHJpbmdcbiAgY2xpZW50SWQ/OiBudW1iZXIgfCBzdHJpbmdcbiAgY2xpZW50TmFtZT86IHN0cmluZ1xuICBpc0NoYW5nZVByb2plY3Q/OiBib29sZWFuXG4gIHByb2plY3Q/OiBQcm9qZWN0XG4gIGFnZW50SWQ/OiBzdHJpbmdcbiAgb3B0aW9ucz86IHtcbiAgICBpZDogbnVtYmVyIHwgc3RyaW5nXG4gICAgbmFtZT86IHN0cmluZ1xuICB9W11cbiAgcm9sZT86IENoYXRIaXN0b3J5Um9sZVxuICBzb3VyY2VzPzogYW55XG4gIGF0dGFjaG1lbnRzPzogQXR0YWNobWVudEZpbGVbXVxuICB3YXNIZWxwZnVsPzogYm9vbGVhbiB8IG51bGxcbiAgbWVtb3J5U2Vzc2lvbklkPzogc3RyaW5nXG4gIHN1Z2dlc3Rpb25zPzogc3RyaW5nW10gfCBudWxsXG4gIC8qKiBUcmFzIGFwcm9iYXIgY3JlYXRlX2FnZW50OiBhY2Npb25lcyByw6FwaWRhcyBlbiBlbCBtZW5zYWplIGZpbmFsOyByZXF1aWVyZSBhZ2VudElkIGRldGVjdGFkbyBlbiBlbCB0ZXh0byAqL1xuICBjcmVhdGVBZ2VudEZvbGxvd1VwPzogeyBhZ2VudElkOiBzdHJpbmcgfSB8IG51bGxcbiAgYXBwcm92YWw/OiBBcHByb3ZhbFJlcXVlc3RcbiAgYXBwcm92YWxTdGF0dXM/OiAncGVuZGluZycgfCAnYXBwcm92ZWQnIHwgJ3JlamVjdGVkJ1xuICBwcm9qZWN0TWV0YWRhdGE/OiB7XG4gICAgaXNfZGVsZXRlZD86IGJvb2xlYW4gfCBudWxsXG4gIH1cbiAgLyoqXG4gICAqIEVudGlkYWRlcyBtZW5jaW9uYWRhcyBjb24gYEBgIGVuIEVTRSBtZW5zYWplIHB1bnR1YWwuIE5vIHNlIHByb3BhZ2EgYWxcbiAgICogY29udGV4dG8gZ2xvYmFsIG5pIGEgb3Ryb3MgdHVybm9zOyBzw7NsbyB2aXZlIGFjw6EgcGFyYSBxdWUgZWwgcmVuZGVyZXJcbiAgICogcHVlZGEgcGludGFyIGNoaXBzIHkgcGFyYSBtYW5kYXJsbyBhbCBvcmNoZXN0cmF0b3IgdsOtYSBtZXRhZGF0YS5cbiAgICovXG4gIGNvbnRleHRNZXNzYWdlPzogQ29udGV4dE1lc3NhZ2VcbiAgcmVhc29uaW5nPzogUmVhc29uaW5nVHJhY2UgfCBudWxsXG59XG5cbmV4cG9ydCB0eXBlIENoYXRNZXNzYWdlSXRlbSA9IHtcbiAgY2hhdElkOiBzdHJpbmdcbiAgY2hhdFN0YXR1czogc3RyaW5nXG4gIGxhc3RRdWVzdGlvbjogc3RyaW5nXG4gIGxhc3RRdWVzdGlvbkRhdGU6IHN0cmluZ1xuICBtZXNzYWdlSWQ6IHN0cmluZ1xuICBxQW5zd2VyczogbnVtYmVyXG4gIGdlbmVyYWxSYXRpbmc6IG51bWJlclxuICB1c2VySWQ6IHN0cmluZ1xufVxuXG5leHBvcnQgdHlwZSBDaGF0TWVzc2FnZUl0ZW1SZXNwb25zZSA9IHtcbiAgYWdlbnRfaWQ6IHN0cmluZ1xuICB1c2VyX2lkOiBzdHJpbmdcbiAgYW5zd2VyOiBzdHJpbmdcbiAgZGF0ZTogc3RyaW5nXG4gIHRpbWVzdGFtcDogc3RyaW5nXG4gIHF1ZXN0aW9uOiBzdHJpbmdcbiAgd2FzX2hlbHBmdWw6IGJvb2xlYW4gfCBudWxsXG4gIG1lc3NhZ2VfaWQ6IHN0cmluZ1xuICBtZW1vcnlfc2Vzc2lvbl9pZDogc3RyaW5nXG4gIHN1Z2dlc3Rpb25zPzogc3RyaW5nW10gfCBudWxsXG4gIHN1Z2dlc3RfcmVwbHk/OiBzdHJpbmdbXSB8IG51bGxcbiAgaXNfY2FuY2VsbGVkPzogYm9vbGVhblxuICByZWFzb25pbmc/OiBSZWFzb25pbmdUcmFjZVBheWxvYWQgfCBudWxsXG4gIHByb2plY3RfbWV0YWRhdGE/OiB7XG4gICAgaWQ6IG51bWJlciB8IHN0cmluZ1xuICAgIG5hbWU6IHN0cmluZ1xuICAgIGlzX2RlbGV0ZWQ/OiBib29sZWFuIHwgbnVsbFxuICB9XG4gIGNsaWVudF9tZXRhZGF0YT86IHtcbiAgICBpZDogbnVtYmVyIHwgc3RyaW5nXG4gICAgbmFtZTogc3RyaW5nXG4gIH1cbiAgdGFza19tZXRhZGF0YT86IHtcbiAgICBpZDogbnVtYmVyIHwgc3RyaW5nXG4gICAgbmFtZTogc3RyaW5nXG4gIH1cbiAgcHJvamVjdF9pZD86IG51bWJlclxuICBhdHRhY2htZW50cz86IEF0dGFjaG1lbnRGaWxlW11cbiAgc291cmNlcz86IHsgc291cmNlOiBzdHJpbmc7IHJlZmVyZW5jZTogc3RyaW5nIH1bXVxuICBzdGF0dXM/OiBzdHJpbmdcbiAgcGVuZGluZ19hcHByb3ZhbD86IEJhY2tlbmRQZW5kaW5nQXBwcm92YWxcbiAgdGhyZWFkX2lkPzogc3RyaW5nXG4gIC8qKiBTZXQgZGUgZW50aWRhZGVzIG1lbmNpb25hZGFzIGNvbiBgQGAgcXVlIGVsIHVzdWFyaW8gZW52acOzIGVuIGVzZSBtZW5zYWplICovXG4gIGNvbnRleHRfbWVzc2FnZT86IENvbnRleHRNZXNzYWdlXG59XG5cbmV4cG9ydCB0eXBlIENoYXRNZXNzYWdlc1Jlc3BvbnNlU2NoZW1hID0ge1xuICBpdGVtczogQ2hhdE1lc3NhZ2VJdGVtUmVzcG9uc2VbXVxuICBsYXN0X2V2YWx1YXRlZF9rZXk6IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENoYXRIaXN0b3J5IHtcbiAgY29udGVudDogc3RyaW5nXG4gIHJvbGU6IENoYXRIaXN0b3J5Um9sZVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIENoYXRJdGVtUmVzcG9uc2Uge1xuICBhZ2VudF9uYW1lOiBzdHJpbmdcbiAgYWdlbnRfaWQ6IG51bWJlclxuICBhZ2VudF90eXBlPzogc3RyaW5nXG4gIGVtb2ppOiBzdHJpbmcgfCBudWxsXG4gIGlkOiBudW1iZXJcbiAgbGFzdF9xdWVzdGlvbjogc3RyaW5nXG4gIGxhc3RfcXVlc3Rpb25fZGF0ZTogc3RyaW5nXG4gIHNlc3Npb25fZXh0ZXJuYWxfaWQ6IHN0cmluZ1xuICB0aXRsZTogc3RyaW5nIHwgbnVsbFxuICBpc19yZWFkPzogYm9vbGVhblxuICBhdHRhY2htZW50czogQXR0YWNobWVudEZpbGVbXVxuICBwcm9qZWN0X21ldGFkYXRhPzoge1xuICAgIGlkOiBudW1iZXIgfCBzdHJpbmdcbiAgICBuYW1lOiBzdHJpbmdcbiAgfVxuICBjbGllbnRfbWV0YWRhdGE/OiB7XG4gICAgaWQ6IG51bWJlclxuICAgIG5hbWU6IHN0cmluZ1xuICB9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2hhdHNSZXNwb25zZVNjaGVtYSB7XG4gIGRhdGE6IENoYXRJdGVtUmVzcG9uc2VbXVxuICBoYXNfbW9yZTogYm9vbGVhblxuICBuZXh0X29mZnNldDogbnVtYmVyIHwgbnVsbFxuICB1bnJlYWRfY291bnQ/OiBudW1iZXJcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUYXNrSW5mbyB7XG4gIGlkOiBzdHJpbmdcbiAgdGl0bGU6IHN0cmluZ1xuICB1cmw6IHN0cmluZ1xuICBwcm9qZWN0TmFtZT86IHN0cmluZ1xufVxuIl0sIm1hcHBpbmdzIjoiQUFBQTs7QUFxQ0EsV0FBWUEsZUFBZSwwQkFBZkEsZUFBZTtFQUFmQSxlQUFlO0VBQWZBLGVBQWU7RUFBQSxPQUFmQSxlQUFlO0FBQUE7O0FBMEIzQiIsImlnbm9yZUxpc3QiOltdfQ==
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3R5cGVzL2FnZW50TW9kYWwudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2xpZW50Rm9ybURhdGEgfSBmcm9tICcuLi9jb21wb25lbnRzL21vbGVjdWxlcy9BYm1TZWN0aW9uL0FibUFjY2Vzc2liaWxpdHlTZWN0aW9uL0FibUFjY2Vzc2liaWxpdHlTZWN0aW9uLmludGVyZmFjZSdcbmltcG9ydCB7IEFnZW50TW9kZWwgfSBmcm9tICcuL2FnZW50J1xuaW1wb3J0IHsgQXR0YWNobWVudEZpbGUgfSBmcm9tICcuLi9jb21wb25lbnRzL21vbGVjdWxlcy9DaGF0Rm9vdGVyL0NoYXRGb290ZXInXG5pbXBvcnQgeyBDb3JBY2Nlc3MgfSBmcm9tICcuLi91dGlscy9ub3JtYWxpemVBZ2VudENvbm5lY3RvcnMnXG5pbXBvcnQgdHlwZSB7IENvbm5lY3RvckNvbm5lY3Rpb25TdGF0dXMgfSBmcm9tICcuLi9zZXJ2aWNlcy9tYWlhL0FnZW50cy9jb25uZWN0b3JzJ1xuXG5leHBvcnQgdHlwZSBNb2RhbFZhbHVlcyA9IHtcbiAgaXNFZGl0aW5nOiBib29sZWFuXG4gIGtub3dsZWRnZTogQXR0YWNobWVudEZpbGVbXVxuICBnZW5lcmFsOiB7XG4gICAgbmFtZTogc3RyaW5nXG4gICAgZW1vamk6IHN0cmluZ1xuICAgIGludHJvZHVjdGlvbjogc3RyaW5nXG4gICAgaW5wdXRQbGFjZWhvbGRlcjogc3RyaW5nXG4gICAgaXNBY3RpdmU6IGJvb2xlYW5cbiAgICBhaU1vZGVsOiBBZ2VudE1vZGVsIHwgbnVsbFxuICAgIGlkOiBudW1iZXIgfCBudWxsXG4gICAgdXNlclByb21wdDogc3RyaW5nIHwgbnVsbFxuICAgIGtub3dsZWRnZUJhc2VzOiBzdHJpbmdbXVxuICAgIGlzX2Zhdm9yaXRlPzogYm9vbGVhblxuICAgIGNyZWF0ZWRfYnk/OiB7XG4gICAgICBuYW1lOiBzdHJpbmdcbiAgICAgIGlzX2RlbGV0ZWQ6IGJvb2xlYW5cbiAgICB9XG4gIH1cbiAgYWNjZXNzaWJpbGl0eToge1xuICAgIGFjY2Vzc1R5cGU6ICdjb21wYW55JyB8ICdjbGllbnRzJyB8ICdvbmx5X21lJ1xuICAgIGNsaWVudHM/OiBDbGllbnRGb3JtRGF0YVtdIHwgbnVsbFxuICAgIC8qKiBQZXJtaXNvcyBkZSBsb3MgMyBjb25lY3RvcmVzIENPUjogY2xpZW50ZXMsIHByb3llY3RvcywgdGFyZWFzICovXG4gICAgY29yQWNjZXNzPzogQ29yQWNjZXNzXG4gICAgLyoqIFNsdWdzIGRlIGNvbmVjdG9yZXMgZXh0ZXJub3MgKE1DUCkgYWN0aXZhZG9zLCBwLmVqLiBgbmV0c3VpdGVgLiAqL1xuICAgIHNlbGVjdGVkQ29ubmVjdG9ycz86IHN0cmluZ1tdXG4gICAgY29ubmVjdG9yU3RhdHVzZXM/OiBSZWNvcmQ8c3RyaW5nLCBDb25uZWN0b3JDb25uZWN0aW9uU3RhdHVzPlxuICB9XG59XG4iXSwibWFwcGluZ3MiOiIiLCJpZ25vcmVMaXN0IjpbXX0=
2
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3R5cGVzL2FnZW50TW9kYWwudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2xpZW50Rm9ybURhdGEgfSBmcm9tICcuLi9jb21wb25lbnRzL21vbGVjdWxlcy9BYm1TZWN0aW9uL0FibUFjY2Vzc2liaWxpdHlTZWN0aW9uL0FibUFjY2Vzc2liaWxpdHlTZWN0aW9uLmludGVyZmFjZSdcbmltcG9ydCB7IEFnZW50TW9kZWwgfSBmcm9tICcuL2FnZW50J1xuaW1wb3J0IHsgQXR0YWNobWVudEZpbGUgfSBmcm9tICcuLi9jb21wb25lbnRzL21vbGVjdWxlcy9DaGF0Rm9vdGVyL0NoYXRGb290ZXInXG5pbXBvcnQgeyBDb3JBY2Nlc3MgfSBmcm9tICcuLi91dGlscy9ub3JtYWxpemVBZ2VudENvbm5lY3RvcnMnXG5pbXBvcnQgdHlwZSB7IENvbm5lY3RvckNvbm5lY3Rpb25TdGF0dXMgfSBmcm9tICcuLi9zZXJ2aWNlcy9tYWlhL0FnZW50cy9jb25uZWN0b3JzJ1xuXG5leHBvcnQgdHlwZSBNb2RhbFZhbHVlcyA9IHtcbiAgaXNFZGl0aW5nOiBib29sZWFuXG4gIGtub3dsZWRnZTogQXR0YWNobWVudEZpbGVbXVxuICBnZW5lcmFsOiB7XG4gICAgbmFtZTogc3RyaW5nXG4gICAgZW1vamk6IHN0cmluZ1xuICAgIGludHJvZHVjdGlvbjogc3RyaW5nXG4gICAgaW5wdXRQbGFjZWhvbGRlcjogc3RyaW5nXG4gICAgaXNBY3RpdmU6IGJvb2xlYW5cbiAgICBhaU1vZGVsOiBBZ2VudE1vZGVsIHwgbnVsbFxuICAgIGlkOiBudW1iZXIgfCBzdHJpbmcgfCBudWxsXG4gICAgdXNlclByb21wdDogc3RyaW5nIHwgbnVsbFxuICAgIGtub3dsZWRnZUJhc2VzOiBzdHJpbmdbXVxuICAgIGlzX2Zhdm9yaXRlPzogYm9vbGVhblxuICAgIGNyZWF0ZWRfYnk/OiB7XG4gICAgICBuYW1lOiBzdHJpbmdcbiAgICAgIGlzX2RlbGV0ZWQ6IGJvb2xlYW5cbiAgICB9XG4gIH1cbiAgYWNjZXNzaWJpbGl0eToge1xuICAgIGFjY2Vzc1R5cGU6ICdjb21wYW55JyB8ICdjbGllbnRzJyB8ICdvbmx5X21lJ1xuICAgIGNsaWVudHM/OiBDbGllbnRGb3JtRGF0YVtdIHwgbnVsbFxuICAgIC8qKiBQZXJtaXNvcyBkZSBsb3MgMyBjb25lY3RvcmVzIENPUjogY2xpZW50ZXMsIHByb3llY3RvcywgdGFyZWFzICovXG4gICAgY29yQWNjZXNzPzogQ29yQWNjZXNzXG4gICAgLyoqIFNsdWdzIGRlIGNvbmVjdG9yZXMgZXh0ZXJub3MgKE1DUCkgYWN0aXZhZG9zLCBwLmVqLiBgbmV0c3VpdGVgLiAqL1xuICAgIHNlbGVjdGVkQ29ubmVjdG9ycz86IHN0cmluZ1tdXG4gICAgY29ubmVjdG9yU3RhdHVzZXM/OiBSZWNvcmQ8c3RyaW5nLCBDb25uZWN0b3JDb25uZWN0aW9uU3RhdHVzPlxuICB9XG59XG4iXSwibWFwcGluZ3MiOiIiLCJpZ25vcmVMaXN0IjpbXX0=
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3R5cGVzL3JlYXNvbmluZy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IENvbnRleHRDb21wYWN0aW9uUGF5bG9hZCB9IGZyb20gJy4vY29udGV4dENvbXBhY3Rpb24nXG5cbmV4cG9ydCB0eXBlIFJlYXNvbmluZ1N0ZXBUeXBlID0gJ3RoaW5raW5nJyB8ICduYXJyYXRpb24nIHwgJ3Rvb2wnIHwgJ2hhbmRvZmYnXG5cbmV4cG9ydCB0eXBlIFJlYXNvbmluZ1N0ZXBTdGF0dXMgPSAncnVubmluZycgfCAncGVuZGluZycgfCAnb2snIHwgJ2Vycm9yJ1xuXG5leHBvcnQgdHlwZSBSZWFzb25pbmdTdGVwID0ge1xuICBpOiBudW1iZXJcbiAgdHlwZTogUmVhc29uaW5nU3RlcFR5cGVcbiAgdGV4dD86IHN0cmluZ1xuICByZWRhY3RlZD86IGJvb2xlYW5cbiAgdHJ1bmNhdGVkPzogYm9vbGVhblxuICB0b29sPzogc3RyaW5nXG4gIHRvPzogc3RyaW5nXG4gIGFyZ3M/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICBzdGF0dXM/OiBSZWFzb25pbmdTdGVwU3RhdHVzXG4gIHJlc3VsdFByZXZpZXc/OiBzdHJpbmdcbn1cblxuZXhwb3J0IHR5cGUgUmVhc29uaW5nU3VtbWFyeSA9IHtcbiAgc3RlcENvdW50OiBudW1iZXJcbiAgdG9vbENvdW50OiBudW1iZXJcbiAgZHVyYXRpb25Ncz86IG51bWJlclxuICB0cnVuY2F0ZWQ/OiBib29sZWFuXG59XG5cbmV4cG9ydCB0eXBlIFJlYXNvbmluZ1RyYWNlID0ge1xuICBzdGVwczogUmVhc29uaW5nU3RlcFtdXG4gIHN1bW1hcnk6IFJlYXNvbmluZ1N1bW1hcnlcbn1cblxuZXhwb3J0IHR5cGUgUmVhc29uaW5nU3RlcFBheWxvYWQgPSB7XG4gIGk6IG51bWJlclxuICB0eXBlPzogUmVhc29uaW5nU3RlcFR5cGVcbiAgdGV4dD86IHN0cmluZ1xuICBkZWx0YT86IHN0cmluZ1xuICByZWRhY3RlZD86IGJvb2xlYW5cbiAgdHJ1bmNhdGVkPzogYm9vbGVhblxuICB0b29sPzogc3RyaW5nXG4gIHRvPzogc3RyaW5nXG4gIGFyZ3M/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICBzdGF0dXM/OiBSZWFzb25pbmdTdGVwU3RhdHVzXG4gIHJlc3VsdF9wcmV2aWV3Pzogc3RyaW5nXG59XG5cbmV4cG9ydCB0eXBlIFJlYXNvbmluZ1N1bW1hcnlQYXlsb2FkID0ge1xuICBzdGVwX2NvdW50PzogbnVtYmVyXG4gIHRvb2xfY291bnQ/OiBudW1iZXJcbiAgZHVyYXRpb25fbXM/OiBudW1iZXJcbiAgdHJ1bmNhdGVkPzogYm9vbGVhblxufVxuXG5leHBvcnQgdHlwZSBSZWFzb25pbmdUcmFjZVBheWxvYWQgPSB7XG4gIHY/OiBudW1iZXJcbiAgc3RlcHM/OiBSZWFzb25pbmdTdGVwUGF5bG9hZFtdXG4gIHN1bW1hcnk/OiBSZWFzb25pbmdTdW1tYXJ5UGF5bG9hZFxuICBjb21wYWN0aW9uPzogQ29udGV4dENvbXBhY3Rpb25QYXlsb2FkXG59XG4iXSwibWFwcGluZ3MiOiIiLCJpZ25vcmVMaXN0IjpbXX0=
2
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3R5cGVzL3JlYXNvbmluZy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgdHlwZSBSZWFzb25pbmdTdGVwVHlwZSA9ICd0aGlua2luZycgfCAnbmFycmF0aW9uJyB8ICd0b29sJyB8ICdoYW5kb2ZmJ1xuXG5leHBvcnQgdHlwZSBSZWFzb25pbmdTdGVwU3RhdHVzID0gJ3J1bm5pbmcnIHwgJ3BlbmRpbmcnIHwgJ29rJyB8ICdlcnJvcidcblxuZXhwb3J0IHR5cGUgUmVhc29uaW5nU3RlcCA9IHtcbiAgaTogbnVtYmVyXG4gIHR5cGU6IFJlYXNvbmluZ1N0ZXBUeXBlXG4gIHRleHQ/OiBzdHJpbmdcbiAgcmVkYWN0ZWQ/OiBib29sZWFuXG4gIHRydW5jYXRlZD86IGJvb2xlYW5cbiAgdG9vbD86IHN0cmluZ1xuICB0bz86IHN0cmluZ1xuICBhcmdzPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgc3RhdHVzPzogUmVhc29uaW5nU3RlcFN0YXR1c1xuICByZXN1bHRQcmV2aWV3Pzogc3RyaW5nXG59XG5cbmV4cG9ydCB0eXBlIFJlYXNvbmluZ1N1bW1hcnkgPSB7XG4gIHN0ZXBDb3VudDogbnVtYmVyXG4gIHRvb2xDb3VudDogbnVtYmVyXG4gIGR1cmF0aW9uTXM/OiBudW1iZXJcbiAgdHJ1bmNhdGVkPzogYm9vbGVhblxufVxuXG5leHBvcnQgdHlwZSBSZWFzb25pbmdUcmFjZSA9IHtcbiAgc3RlcHM6IFJlYXNvbmluZ1N0ZXBbXVxuICBzdW1tYXJ5OiBSZWFzb25pbmdTdW1tYXJ5XG59XG5cbmV4cG9ydCB0eXBlIFJlYXNvbmluZ1N0ZXBQYXlsb2FkID0ge1xuICBpOiBudW1iZXJcbiAgdHlwZT86IFJlYXNvbmluZ1N0ZXBUeXBlXG4gIHRleHQ/OiBzdHJpbmdcbiAgZGVsdGE/OiBzdHJpbmdcbiAgcmVkYWN0ZWQ/OiBib29sZWFuXG4gIHRydW5jYXRlZD86IGJvb2xlYW5cbiAgdG9vbD86IHN0cmluZ1xuICB0bz86IHN0cmluZ1xuICBhcmdzPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgc3RhdHVzPzogUmVhc29uaW5nU3RlcFN0YXR1c1xuICByZXN1bHRfcHJldmlldz86IHN0cmluZ1xufVxuXG5leHBvcnQgdHlwZSBSZWFzb25pbmdTdW1tYXJ5UGF5bG9hZCA9IHtcbiAgc3RlcF9jb3VudD86IG51bWJlclxuICB0b29sX2NvdW50PzogbnVtYmVyXG4gIGR1cmF0aW9uX21zPzogbnVtYmVyXG4gIHRydW5jYXRlZD86IGJvb2xlYW5cbn1cblxuZXhwb3J0IHR5cGUgUmVhc29uaW5nVHJhY2VQYXlsb2FkID0ge1xuICB2PzogbnVtYmVyXG4gIHN0ZXBzPzogUmVhc29uaW5nU3RlcFBheWxvYWRbXVxuICBzdW1tYXJ5PzogUmVhc29uaW5nU3VtbWFyeVBheWxvYWRcbn1cbiJdLCJtYXBwaW5ncyI6IiIsImlnbm9yZUxpc3QiOltdfQ==
@@ -0,0 +1,28 @@
1
+ export var IMAGE_BACKEND_TARGET_SIZE = 160;
2
+ export var SQUARE_ASPECT_TOLERANCE = 0.1;
3
+ export var getImageAspectRatio = function getImageAspectRatio(width, height) {
4
+ return width / height;
5
+ };
6
+ export var isNearSquareAspectRatio = function isNearSquareAspectRatio(width, height) {
7
+ return Math.abs(getImageAspectRatio(width, height) - 1) <= SQUARE_ASPECT_TOLERANCE;
8
+ };
9
+ export var computeContainDrawRect = function computeContainDrawRect(aspectRatio, targetSize) {
10
+ var drawWidth = targetSize;
11
+ var drawHeight = targetSize;
12
+ var drawX = 0;
13
+ var drawY = 0;
14
+ if (aspectRatio > 1) {
15
+ drawHeight = targetSize / aspectRatio;
16
+ drawY = (targetSize - drawHeight) / 2;
17
+ } else if (aspectRatio < 1) {
18
+ drawWidth = targetSize * aspectRatio;
19
+ drawX = (targetSize - drawWidth) / 2;
20
+ }
21
+ return {
22
+ drawWidth: drawWidth,
23
+ drawHeight: drawHeight,
24
+ drawX: drawX,
25
+ drawY: drawY
26
+ };
27
+ };
28
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJJTUFHRV9CQUNLRU5EX1RBUkdFVF9TSVpFIiwiU1FVQVJFX0FTUEVDVF9UT0xFUkFOQ0UiLCJnZXRJbWFnZUFzcGVjdFJhdGlvIiwid2lkdGgiLCJoZWlnaHQiLCJpc05lYXJTcXVhcmVBc3BlY3RSYXRpbyIsIk1hdGgiLCJhYnMiLCJjb21wdXRlQ29udGFpbkRyYXdSZWN0IiwiYXNwZWN0UmF0aW8iLCJ0YXJnZXRTaXplIiwiZHJhd1dpZHRoIiwiZHJhd0hlaWdodCIsImRyYXdYIiwiZHJhd1kiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvaW1hZ2VQcmVwcm9jZXNzb3IuaGVscGVycy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgSU1BR0VfQkFDS0VORF9UQVJHRVRfU0laRSA9IDE2MFxuZXhwb3J0IGNvbnN0IFNRVUFSRV9BU1BFQ1RfVE9MRVJBTkNFID0gMC4xXG5cbmV4cG9ydCBjb25zdCBnZXRJbWFnZUFzcGVjdFJhdGlvID0gKHdpZHRoOiBudW1iZXIsIGhlaWdodDogbnVtYmVyKTogbnVtYmVyID0+IHdpZHRoIC8gaGVpZ2h0XG5cbmV4cG9ydCBjb25zdCBpc05lYXJTcXVhcmVBc3BlY3RSYXRpbyA9ICh3aWR0aDogbnVtYmVyLCBoZWlnaHQ6IG51bWJlcik6IGJvb2xlYW4gPT5cbiAgTWF0aC5hYnMoZ2V0SW1hZ2VBc3BlY3RSYXRpbyh3aWR0aCwgaGVpZ2h0KSAtIDEpIDw9IFNRVUFSRV9BU1BFQ1RfVE9MRVJBTkNFXG5cbmV4cG9ydCB0eXBlIENvbnRhaW5EcmF3UmVjdCA9IHtcbiAgZHJhd1dpZHRoOiBudW1iZXJcbiAgZHJhd0hlaWdodDogbnVtYmVyXG4gIGRyYXdYOiBudW1iZXJcbiAgZHJhd1k6IG51bWJlclxufVxuXG5leHBvcnQgY29uc3QgY29tcHV0ZUNvbnRhaW5EcmF3UmVjdCA9IChhc3BlY3RSYXRpbzogbnVtYmVyLCB0YXJnZXRTaXplOiBudW1iZXIpOiBDb250YWluRHJhd1JlY3QgPT4ge1xuICBsZXQgZHJhd1dpZHRoID0gdGFyZ2V0U2l6ZVxuICBsZXQgZHJhd0hlaWdodCA9IHRhcmdldFNpemVcbiAgbGV0IGRyYXdYID0gMFxuICBsZXQgZHJhd1kgPSAwXG5cbiAgaWYgKGFzcGVjdFJhdGlvID4gMSkge1xuICAgIGRyYXdIZWlnaHQgPSB0YXJnZXRTaXplIC8gYXNwZWN0UmF0aW9cbiAgICBkcmF3WSA9ICh0YXJnZXRTaXplIC0gZHJhd0hlaWdodCkgLyAyXG4gIH0gZWxzZSBpZiAoYXNwZWN0UmF0aW8gPCAxKSB7XG4gICAgZHJhd1dpZHRoID0gdGFyZ2V0U2l6ZSAqIGFzcGVjdFJhdGlvXG4gICAgZHJhd1ggPSAodGFyZ2V0U2l6ZSAtIGRyYXdXaWR0aCkgLyAyXG4gIH1cblxuICByZXR1cm4geyBkcmF3V2lkdGgsIGRyYXdIZWlnaHQsIGRyYXdYLCBkcmF3WSB9XG59XG4iXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sSUFBTUEseUJBQXlCLEdBQUcsR0FBRztBQUM1QyxPQUFPLElBQU1DLHVCQUF1QixHQUFHLEdBQUc7QUFFMUMsT0FBTyxJQUFNQyxtQkFBbUIsR0FBRyxTQUF0QkEsbUJBQW1CQSxDQUFJQyxLQUFhLEVBQUVDLE1BQWM7RUFBQSxPQUFhRCxLQUFLLEdBQUdDLE1BQU07QUFBQTtBQUU1RixPQUFPLElBQU1DLHVCQUF1QixHQUFHLFNBQTFCQSx1QkFBdUJBLENBQUlGLEtBQWEsRUFBRUMsTUFBYztFQUFBLE9BQ25FRSxJQUFJLENBQUNDLEdBQUcsQ0FBQ0wsbUJBQW1CLENBQUNDLEtBQUssRUFBRUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUlILHVCQUF1QjtBQUFBO0FBUzdFLE9BQU8sSUFBTU8sc0JBQXNCLEdBQUcsU0FBekJBLHNCQUFzQkEsQ0FBSUMsV0FBbUIsRUFBRUMsVUFBa0IsRUFBc0I7RUFDbEcsSUFBSUMsU0FBUyxHQUFHRCxVQUFVO0VBQzFCLElBQUlFLFVBQVUsR0FBR0YsVUFBVTtFQUMzQixJQUFJRyxLQUFLLEdBQUcsQ0FBQztFQUNiLElBQUlDLEtBQUssR0FBRyxDQUFDO0VBRWIsSUFBSUwsV0FBVyxHQUFHLENBQUMsRUFBRTtJQUNuQkcsVUFBVSxHQUFHRixVQUFVLEdBQUdELFdBQVc7SUFDckNLLEtBQUssR0FBRyxDQUFDSixVQUFVLEdBQUdFLFVBQVUsSUFBSSxDQUFDO0VBQ3ZDLENBQUMsTUFBTSxJQUFJSCxXQUFXLEdBQUcsQ0FBQyxFQUFFO0lBQzFCRSxTQUFTLEdBQUdELFVBQVUsR0FBR0QsV0FBVztJQUNwQ0ksS0FBSyxHQUFHLENBQUNILFVBQVUsR0FBR0MsU0FBUyxJQUFJLENBQUM7RUFDdEM7RUFFQSxPQUFPO0lBQUVBLFNBQVMsRUFBVEEsU0FBUztJQUFFQyxVQUFVLEVBQVZBLFVBQVU7SUFBRUMsS0FBSyxFQUFMQSxLQUFLO0lBQUVDLEtBQUssRUFBTEE7RUFBTSxDQUFDO0FBQ2hELENBQUMiLCJpZ25vcmVMaXN0IjpbXX0=
@@ -1,3 +1,5 @@
1
+ import { computeContainDrawRect, getImageAspectRatio, IMAGE_BACKEND_TARGET_SIZE, isNearSquareAspectRatio } from './imagePreprocessor.helpers';
2
+
1
3
  /**
2
4
  * Pre-procesa imágenes para el backend
3
5
  * - Imágenes cuadradas: usa object-fit: cover (sin padding)
@@ -15,40 +17,20 @@ export var preprocessImageForBackend = function preprocessImageForBackend(file)
15
17
  img.onload = function () {
16
18
  var originalWidth = img.width,
17
19
  originalHeight = img.height;
18
- var aspectRatio = originalWidth / originalHeight;
19
-
20
- // Tamaño objetivo del backend (160x160px)
21
- var targetSize = 160;
20
+ var aspectRatio = getImageAspectRatio(originalWidth, originalHeight);
21
+ var targetSize = IMAGE_BACKEND_TARGET_SIZE;
22
22
  canvas.width = targetSize;
23
23
  canvas.height = targetSize;
24
-
25
- // Determinar si es cuadrada (tolerancia del 10%)
26
- var isSquare = Math.abs(aspectRatio - 1) <= 0.1;
27
- if (isSquare) {
28
- // Para imágenes cuadradas: object-fit: cover (sin padding)
24
+ if (isNearSquareAspectRatio(originalWidth, originalHeight)) {
29
25
  ctx.drawImage(img, 0, 0, targetSize, targetSize);
30
26
  } else {
31
- // Para imágenes rectangulares: object-fit: contain (con padding)
32
-
33
- var drawWidth = targetSize;
34
- var drawHeight = targetSize;
35
- var drawX = 0;
36
- var drawY = 0;
37
- if (aspectRatio > 1) {
38
- // Imagen más ancha que alta - ajustar altura
39
- drawHeight = targetSize / aspectRatio;
40
- drawY = (targetSize - drawHeight) / 2;
41
- } else if (aspectRatio < 1) {
42
- // Imagen más alta que ancha - ajustar ancho
43
- drawWidth = targetSize * aspectRatio;
44
- drawX = (targetSize - drawWidth) / 2;
45
- }
46
-
47
- // Rellenar fondo con color gris claro
27
+ var _computeContainDrawRe = computeContainDrawRect(aspectRatio, targetSize),
28
+ drawWidth = _computeContainDrawRe.drawWidth,
29
+ drawHeight = _computeContainDrawRe.drawHeight,
30
+ drawX = _computeContainDrawRe.drawX,
31
+ drawY = _computeContainDrawRe.drawY;
48
32
  ctx.fillStyle = '#f2f2f2';
49
33
  ctx.fillRect(0, 0, targetSize, targetSize);
50
-
51
- // Dibujar la imagen completa centrada
52
34
  ctx.drawImage(img, drawX, drawY, drawWidth, drawHeight);
53
35
  }
54
36
 
@@ -85,14 +67,7 @@ export var shouldPreprocessImage = function shouldPreprocessImage(file) {
85
67
  try {
86
68
  var width = img.width,
87
69
  height = img.height;
88
- var aspectRatio = width / height;
89
-
90
- // Procesar solo si no es cuadrada (aspect ratio != 1)
91
- // Las imágenes cuadradas se ven igual con cover y contain
92
- var isNotSquare = Math.abs(aspectRatio - 1) > 0.1;
93
-
94
- // Debug: Imagen analizada
95
- resolve(isNotSquare);
70
+ resolve(!isNearSquareAspectRatio(width, height));
96
71
  } catch (error) {
97
72
  console.error('Error analizando imagen:', error);
98
73
  resolve(false);
@@ -105,4 +80,4 @@ export var shouldPreprocessImage = function shouldPreprocessImage(file) {
105
80
  img.src = URL.createObjectURL(file);
106
81
  });
107
82
  };
108
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJwcmVwcm9jZXNzSW1hZ2VGb3JCYWNrZW5kIiwiZmlsZSIsIlByb21pc2UiLCJyZXNvbHZlIiwicmVqZWN0IiwiaW1nIiwiSW1hZ2UiLCJjYW52YXMiLCJkb2N1bWVudCIsImNyZWF0ZUVsZW1lbnQiLCJjdHgiLCJnZXRDb250ZXh0IiwiRXJyb3IiLCJvbmxvYWQiLCJvcmlnaW5hbFdpZHRoIiwid2lkdGgiLCJvcmlnaW5hbEhlaWdodCIsImhlaWdodCIsImFzcGVjdFJhdGlvIiwidGFyZ2V0U2l6ZSIsImlzU3F1YXJlIiwiTWF0aCIsImFicyIsImRyYXdJbWFnZSIsImRyYXdXaWR0aCIsImRyYXdIZWlnaHQiLCJkcmF3WCIsImRyYXdZIiwiZmlsbFN0eWxlIiwiZmlsbFJlY3QiLCJ0b0Jsb2IiLCJibG9iIiwicHJvY2Vzc2VkRmlsZSIsIkZpbGUiLCJuYW1lIiwidHlwZSIsImxhc3RNb2RpZmllZCIsIm9uZXJyb3IiLCJzcmMiLCJVUkwiLCJjcmVhdGVPYmplY3RVUkwiLCJzaG91bGRQcmVwcm9jZXNzSW1hZ2UiLCJpc05vdFNxdWFyZSIsImVycm9yIiwiY29uc29sZSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9pbWFnZVByZXByb2Nlc3Nvci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFByZS1wcm9jZXNhIGltw6FnZW5lcyBwYXJhIGVsIGJhY2tlbmRcbiAqIC0gSW3DoWdlbmVzIGN1YWRyYWRhczogdXNhIG9iamVjdC1maXQ6IGNvdmVyIChzaW4gcGFkZGluZylcbiAqIC0gSW3DoWdlbmVzIHJlY3Rhbmd1bGFyZXM6IHVzYSBvYmplY3QtZml0OiBjb250YWluIChjb24gcGFkZGluZylcbiAqL1xuZXhwb3J0IGNvbnN0IHByZXByb2Nlc3NJbWFnZUZvckJhY2tlbmQgPSAoZmlsZTogRmlsZSk6IFByb21pc2U8RmlsZT4gPT4ge1xuICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgIGNvbnN0IGltZyA9IG5ldyBJbWFnZSgpXG4gICAgY29uc3QgY2FudmFzID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJylcbiAgICBjb25zdCBjdHggPSBjYW52YXMuZ2V0Q29udGV4dCgnMmQnKVxuXG4gICAgaWYgKCFjdHgpIHtcbiAgICAgIHJlamVjdChuZXcgRXJyb3IoJ05vIHNlIHB1ZG8gb2J0ZW5lciBlbCBjb250ZXh0byBkZWwgY2FudmFzJykpXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBpbWcub25sb2FkID0gKCkgPT4ge1xuICAgICAgY29uc3QgeyB3aWR0aDogb3JpZ2luYWxXaWR0aCwgaGVpZ2h0OiBvcmlnaW5hbEhlaWdodCB9ID0gaW1nXG4gICAgICBjb25zdCBhc3BlY3RSYXRpbyA9IG9yaWdpbmFsV2lkdGggLyBvcmlnaW5hbEhlaWdodFxuXG4gICAgICAvLyBUYW1hw7FvIG9iamV0aXZvIGRlbCBiYWNrZW5kICgxNjB4MTYwcHgpXG4gICAgICBjb25zdCB0YXJnZXRTaXplID0gMTYwXG4gICAgICBjYW52YXMud2lkdGggPSB0YXJnZXRTaXplXG4gICAgICBjYW52YXMuaGVpZ2h0ID0gdGFyZ2V0U2l6ZVxuXG4gICAgICAvLyBEZXRlcm1pbmFyIHNpIGVzIGN1YWRyYWRhICh0b2xlcmFuY2lhIGRlbCAxMCUpXG4gICAgICBjb25zdCBpc1NxdWFyZSA9IE1hdGguYWJzKGFzcGVjdFJhdGlvIC0gMSkgPD0gMC4xXG5cbiAgICAgIGlmIChpc1NxdWFyZSkge1xuICAgICAgICAvLyBQYXJhIGltw6FnZW5lcyBjdWFkcmFkYXM6IG9iamVjdC1maXQ6IGNvdmVyIChzaW4gcGFkZGluZylcbiAgICAgICAgY3R4LmRyYXdJbWFnZShpbWcsIDAsIDAsIHRhcmdldFNpemUsIHRhcmdldFNpemUpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBQYXJhIGltw6FnZW5lcyByZWN0YW5ndWxhcmVzOiBvYmplY3QtZml0OiBjb250YWluIChjb24gcGFkZGluZylcblxuICAgICAgICBsZXQgZHJhd1dpZHRoID0gdGFyZ2V0U2l6ZVxuICAgICAgICBsZXQgZHJhd0hlaWdodCA9IHRhcmdldFNpemVcbiAgICAgICAgbGV0IGRyYXdYID0gMFxuICAgICAgICBsZXQgZHJhd1kgPSAwXG5cbiAgICAgICAgaWYgKGFzcGVjdFJhdGlvID4gMSkge1xuICAgICAgICAgIC8vIEltYWdlbiBtw6FzIGFuY2hhIHF1ZSBhbHRhIC0gYWp1c3RhciBhbHR1cmFcbiAgICAgICAgICBkcmF3SGVpZ2h0ID0gdGFyZ2V0U2l6ZSAvIGFzcGVjdFJhdGlvXG4gICAgICAgICAgZHJhd1kgPSAodGFyZ2V0U2l6ZSAtIGRyYXdIZWlnaHQpIC8gMlxuICAgICAgICB9IGVsc2UgaWYgKGFzcGVjdFJhdGlvIDwgMSkge1xuICAgICAgICAgIC8vIEltYWdlbiBtw6FzIGFsdGEgcXVlIGFuY2hhIC0gYWp1c3RhciBhbmNob1xuICAgICAgICAgIGRyYXdXaWR0aCA9IHRhcmdldFNpemUgKiBhc3BlY3RSYXRpb1xuICAgICAgICAgIGRyYXdYID0gKHRhcmdldFNpemUgLSBkcmF3V2lkdGgpIC8gMlxuICAgICAgICB9XG5cbiAgICAgICAgLy8gUmVsbGVuYXIgZm9uZG8gY29uIGNvbG9yIGdyaXMgY2xhcm9cbiAgICAgICAgY3R4LmZpbGxTdHlsZSA9ICcjZjJmMmYyJ1xuICAgICAgICBjdHguZmlsbFJlY3QoMCwgMCwgdGFyZ2V0U2l6ZSwgdGFyZ2V0U2l6ZSlcblxuICAgICAgICAvLyBEaWJ1amFyIGxhIGltYWdlbiBjb21wbGV0YSBjZW50cmFkYVxuICAgICAgICBjdHguZHJhd0ltYWdlKGltZywgZHJhd1gsIGRyYXdZLCBkcmF3V2lkdGgsIGRyYXdIZWlnaHQpXG4gICAgICB9XG5cbiAgICAgIC8vIENvbnZlcnRpciBjYW52YXMgYSBibG9iIHkgbHVlZ28gYSBGaWxlXG4gICAgICBjYW52YXMudG9CbG9iKFxuICAgICAgICBibG9iID0+IHtcbiAgICAgICAgICBpZiAoIWJsb2IpIHtcbiAgICAgICAgICAgIHJlamVjdChuZXcgRXJyb3IoJ0Vycm9yIGFsIHByb2Nlc2FyIGxhIGltYWdlbicpKVxuICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gQ3JlYXIgbnVldm8gRmlsZSBjb24gZWwgbWlzbW8gbm9tYnJlIHkgdGlwb1xuICAgICAgICAgIGNvbnN0IHByb2Nlc3NlZEZpbGUgPSBuZXcgRmlsZShbYmxvYl0sIGZpbGUubmFtZSwge1xuICAgICAgICAgICAgdHlwZTogZmlsZS50eXBlLFxuICAgICAgICAgICAgbGFzdE1vZGlmaWVkOiBmaWxlLmxhc3RNb2RpZmllZCxcbiAgICAgICAgICB9KVxuXG4gICAgICAgICAgcmVzb2x2ZShwcm9jZXNzZWRGaWxlKVxuICAgICAgICB9LFxuICAgICAgICBmaWxlLnR5cGUsXG4gICAgICAgIDAuOVxuICAgICAgKSAvLyBDYWxpZGFkIGRlbCA5MCVcbiAgICB9XG5cbiAgICBpbWcub25lcnJvciA9ICgpID0+IHtcbiAgICAgIHJlamVjdChuZXcgRXJyb3IoJ0Vycm9yIGFsIGNhcmdhciBsYSBpbWFnZW4nKSlcbiAgICB9XG5cbiAgICBpbWcuc3JjID0gVVJMLmNyZWF0ZU9iamVjdFVSTChmaWxlKVxuICB9KVxufVxuXG4vKipcbiAqIERldGVybWluYSBzaSB1bmEgaW1hZ2VuIG5lY2VzaXRhIHByZS1wcm9jZXNhbWllbnRvXG4gKiBTb2xvIHByb2Nlc2Ftb3MgaW3DoWdlbmVzIHF1ZSBubyBzZWFuIGN1YWRyYWRhcyAocXVlIG5lY2VzaXRlbiBvYmplY3QtZml0OiBjb250YWluKVxuICovXG5leHBvcnQgY29uc3Qgc2hvdWxkUHJlcHJvY2Vzc0ltYWdlID0gKGZpbGU6IEZpbGUpOiBQcm9taXNlPGJvb2xlYW4+ID0+IHtcbiAgcmV0dXJuIG5ldyBQcm9taXNlKHJlc29sdmUgPT4ge1xuICAgIGNvbnN0IGltZyA9IG5ldyBJbWFnZSgpXG5cbiAgICBpbWcub25sb2FkID0gKCkgPT4ge1xuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgeyB3aWR0aCwgaGVpZ2h0IH0gPSBpbWdcbiAgICAgICAgY29uc3QgYXNwZWN0UmF0aW8gPSB3aWR0aCAvIGhlaWdodFxuXG4gICAgICAgIC8vIFByb2Nlc2FyIHNvbG8gc2kgbm8gZXMgY3VhZHJhZGEgKGFzcGVjdCByYXRpbyAhPSAxKVxuICAgICAgICAvLyBMYXMgaW3DoWdlbmVzIGN1YWRyYWRhcyBzZSB2ZW4gaWd1YWwgY29uIGNvdmVyIHkgY29udGFpblxuICAgICAgICBjb25zdCBpc05vdFNxdWFyZSA9IE1hdGguYWJzKGFzcGVjdFJhdGlvIC0gMSkgPiAwLjFcblxuICAgICAgICAvLyBEZWJ1ZzogSW1hZ2VuIGFuYWxpemFkYVxuICAgICAgICByZXNvbHZlKGlzTm90U3F1YXJlKVxuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgYW5hbGl6YW5kbyBpbWFnZW46JywgZXJyb3IpXG4gICAgICAgIHJlc29sdmUoZmFsc2UpXG4gICAgICB9XG4gICAgfVxuXG4gICAgaW1nLm9uZXJyb3IgPSAoKSA9PiB7XG4gICAgICAvLyBFcnJvciBjYXJnYW5kbyBpbWFnZW4gcGFyYSBhbsOhbGlzaXNcbiAgICAgIHJlc29sdmUoZmFsc2UpXG4gICAgfVxuXG4gICAgaW1nLnNyYyA9IFVSTC5jcmVhdGVPYmplY3RVUkwoZmlsZSlcbiAgfSlcbn1cbiJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU8sSUFBTUEseUJBQXlCLEdBQUcsU0FBNUJBLHlCQUF5QkEsQ0FBSUMsSUFBVSxFQUFvQjtFQUN0RSxPQUFPLElBQUlDLE9BQU8sQ0FBQyxVQUFDQyxPQUFPLEVBQUVDLE1BQU0sRUFBSztJQUN0QyxJQUFNQyxHQUFHLEdBQUcsSUFBSUMsS0FBSyxDQUFDLENBQUM7SUFDdkIsSUFBTUMsTUFBTSxHQUFHQyxRQUFRLENBQUNDLGFBQWEsQ0FBQyxRQUFRLENBQUM7SUFDL0MsSUFBTUMsR0FBRyxHQUFHSCxNQUFNLENBQUNJLFVBQVUsQ0FBQyxJ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
83
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjb21wdXRlQ29udGFpbkRyYXdSZWN0IiwiZ2V0SW1hZ2VBc3BlY3RSYXRpbyIsIklNQUdFX0JBQ0tFTkRfVEFSR0VUX1NJWkUiLCJpc05lYXJTcXVhcmVBc3BlY3RSYXRpbyIsInByZXByb2Nlc3NJbWFnZUZvckJhY2tlbmQiLCJmaWxlIiwiUHJvbWlzZSIsInJlc29sdmUiLCJyZWplY3QiLCJpbWciLCJJbWFnZSIsImNhbnZhcyIsImRvY3VtZW50IiwiY3JlYXRlRWxlbWVudCIsImN0eCIsImdldENvbnRleHQiLCJFcnJvciIsIm9ubG9hZCIsIm9yaWdpbmFsV2lkdGgiLCJ3aWR0aCIsIm9yaWdpbmFsSGVpZ2h0IiwiaGVpZ2h0IiwiYXNwZWN0UmF0aW8iLCJ0YXJnZXRTaXplIiwiZHJhd0ltYWdlIiwiX2NvbXB1dGVDb250YWluRHJhd1JlIiwiZHJhd1dpZHRoIiwiZHJhd0hlaWdodCIsImRyYXdYIiwiZHJhd1kiLCJmaWxsU3R5bGUiLCJmaWxsUmVjdCIsInRvQmxvYiIsImJsb2IiLCJwcm9jZXNzZWRGaWxlIiwiRmlsZSIsIm5hbWUiLCJ0eXBlIiwibGFzdE1vZGlmaWVkIiwib25lcnJvciIsInNyYyIsIlVSTCIsImNyZWF0ZU9iamVjdFVSTCIsInNob3VsZFByZXByb2Nlc3NJbWFnZSIsImVycm9yIiwiY29uc29sZSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9pbWFnZVByZXByb2Nlc3Nvci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBjb21wdXRlQ29udGFpbkRyYXdSZWN0LFxuICBnZXRJbWFnZUFzcGVjdFJhdGlvLFxuICBJTUFHRV9CQUNLRU5EX1RBUkdFVF9TSVpFLFxuICBpc05lYXJTcXVhcmVBc3BlY3RSYXRpbyxcbn0gZnJvbSAnLi9pbWFnZVByZXByb2Nlc3Nvci5oZWxwZXJzJ1xuXG4vKipcbiAqIFByZS1wcm9jZXNhIGltw6FnZW5lcyBwYXJhIGVsIGJhY2tlbmRcbiAqIC0gSW3DoWdlbmVzIGN1YWRyYWRhczogdXNhIG9iamVjdC1maXQ6IGNvdmVyIChzaW4gcGFkZGluZylcbiAqIC0gSW3DoWdlbmVzIHJlY3Rhbmd1bGFyZXM6IHVzYSBvYmplY3QtZml0OiBjb250YWluIChjb24gcGFkZGluZylcbiAqL1xuZXhwb3J0IGNvbnN0IHByZXByb2Nlc3NJbWFnZUZvckJhY2tlbmQgPSAoZmlsZTogRmlsZSk6IFByb21pc2U8RmlsZT4gPT4ge1xuICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgIGNvbnN0IGltZyA9IG5ldyBJbWFnZSgpXG4gICAgY29uc3QgY2FudmFzID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJylcbiAgICBjb25zdCBjdHggPSBjYW52YXMuZ2V0Q29udGV4dCgnMmQnKVxuXG4gICAgaWYgKCFjdHgpIHtcbiAgICAgIHJlamVjdChuZXcgRXJyb3IoJ05vIHNlIHB1ZG8gb2J0ZW5lciBlbCBjb250ZXh0byBkZWwgY2FudmFzJykpXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBpbWcub25sb2FkID0gKCkgPT4ge1xuICAgICAgY29uc3QgeyB3aWR0aDogb3JpZ2luYWxXaWR0aCwgaGVpZ2h0OiBvcmlnaW5hbEhlaWdodCB9ID0gaW1nXG4gICAgICBjb25zdCBhc3BlY3RSYXRpbyA9IGdldEltYWdlQXNwZWN0UmF0aW8ob3JpZ2luYWxXaWR0aCwgb3JpZ2luYWxIZWlnaHQpXG4gICAgICBjb25zdCB0YXJnZXRTaXplID0gSU1BR0VfQkFDS0VORF9UQVJHRVRfU0laRVxuICAgICAgY2FudmFzLndpZHRoID0gdGFyZ2V0U2l6ZVxuICAgICAgY2FudmFzLmhlaWdodCA9IHRhcmdldFNpemVcblxuICAgICAgaWYgKGlzTmVhclNxdWFyZUFzcGVjdFJhdGlvKG9yaWdpbmFsV2lkdGgsIG9yaWdpbmFsSGVpZ2h0KSkge1xuICAgICAgICBjdHguZHJhd0ltYWdlKGltZywgMCwgMCwgdGFyZ2V0U2l6ZSwgdGFyZ2V0U2l6ZSlcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IHsgZHJhd1dpZHRoLCBkcmF3SGVpZ2h0LCBkcmF3WCwgZHJhd1kgfSA9IGNvbXB1dGVDb250YWluRHJhd1JlY3QoYXNwZWN0UmF0aW8sIHRhcmdldFNpemUpXG5cbiAgICAgICAgY3R4LmZpbGxTdHlsZSA9ICcjZjJmMmYyJ1xuICAgICAgICBjdHguZmlsbFJlY3QoMCwgMCwgdGFyZ2V0U2l6ZSwgdGFyZ2V0U2l6ZSlcbiAgICAgICAgY3R4LmRyYXdJbWFnZShpbWcsIGRyYXdYLCBkcmF3WSwgZHJhd1dpZHRoLCBkcmF3SGVpZ2h0KVxuICAgICAgfVxuXG4gICAgICAvLyBDb252ZXJ0aXIgY2FudmFzIGEgYmxvYiB5IGx1ZWdvIGEgRmlsZVxuICAgICAgY2FudmFzLnRvQmxvYihcbiAgICAgICAgYmxvYiA9PiB7XG4gICAgICAgICAgaWYgKCFibG9iKSB7XG4gICAgICAgICAgICByZWplY3QobmV3IEVycm9yKCdFcnJvciBhbCBwcm9jZXNhciBsYSBpbWFnZW4nKSlcbiAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIENyZWFyIG51ZXZvIEZpbGUgY29uIGVsIG1pc21vIG5vbWJyZSB5IHRpcG9cbiAgICAgICAgICBjb25zdCBwcm9jZXNzZWRGaWxlID0gbmV3IEZpbGUoW2Jsb2JdLCBmaWxlLm5hbWUsIHtcbiAgICAgICAgICAgIHR5cGU6IGZpbGUudHlwZSxcbiAgICAgICAgICAgIGxhc3RNb2RpZmllZDogZmlsZS5sYXN0TW9kaWZpZWQsXG4gICAgICAgICAgfSlcblxuICAgICAgICAgIHJlc29sdmUocHJvY2Vzc2VkRmlsZSlcbiAgICAgICAgfSxcbiAgICAgICAgZmlsZS50eXBlLFxuICAgICAgICAwLjlcbiAgICAgICkgLy8gQ2FsaWRhZCBkZWwgOTAlXG4gICAgfVxuXG4gICAgaW1nLm9uZXJyb3IgPSAoKSA9PiB7XG4gICAgICByZWplY3QobmV3IEVycm9yKCdFcnJvciBhbCBjYXJnYXIgbGEgaW1hZ2VuJykpXG4gICAgfVxuXG4gICAgaW1nLnNyYyA9IFVSTC5jcmVhdGVPYmplY3RVUkwoZmlsZSlcbiAgfSlcbn1cblxuLyoqXG4gKiBEZXRlcm1pbmEgc2kgdW5hIGltYWdlbiBuZWNlc2l0YSBwcmUtcHJvY2VzYW1pZW50b1xuICogU29sbyBwcm9jZXNhbW9zIGltw6FnZW5lcyBxdWUgbm8gc2VhbiBjdWFkcmFkYXMgKHF1ZSBuZWNlc2l0ZW4gb2JqZWN0LWZpdDogY29udGFpbilcbiAqL1xuZXhwb3J0IGNvbnN0IHNob3VsZFByZXByb2Nlc3NJbWFnZSA9IChmaWxlOiBGaWxlKTogUHJvbWlzZTxib29sZWFuPiA9PiB7XG4gIHJldHVybiBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHtcbiAgICBjb25zdCBpbWcgPSBuZXcgSW1hZ2UoKVxuXG4gICAgaW1nLm9ubG9hZCA9ICgpID0+IHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IHsgd2lkdGgsIGhlaWdodCB9ID0gaW1nXG4gICAgICAgIHJlc29sdmUoIWlzTmVhclNxdWFyZUFzcGVjdFJhdGlvKHdpZHRoLCBoZWlnaHQpKVxuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgYW5hbGl6YW5kbyBpbWFnZW46JywgZXJyb3IpXG4gICAgICAgIHJlc29sdmUoZmFsc2UpXG4gICAgICB9XG4gICAgfVxuXG4gICAgaW1nLm9uZXJyb3IgPSAoKSA9PiB7XG4gICAgICAvLyBFcnJvciBjYXJnYW5kbyBpbWFnZW4gcGFyYSBhbsOhbGlzaXNcbiAgICAgIHJlc29sdmUoZmFsc2UpXG4gICAgfVxuXG4gICAgaW1nLnNyYyA9IFVSTC5jcmVhdGVPYmplY3RVUkwoZmlsZSlcbiAgfSlcbn1cbiJdLCJtYXBwaW5ncyI6IkFBQUEsU0FDRUEsc0JBQXNCLEVBQ3RCQyxtQkFBbUIsRUFDbkJDLHlCQUF5QixFQUN6QkMsdUJBQXVCLFFBQ2xCLDZCQUE2Qjs7QUFFcEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU8sSUFBTUMseUJB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
@@ -0,0 +1,110 @@
1
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
+ import { SLASH_COMMAND_MARKER_REGEX } from './slashCommandMarker';
3
+ import { normalizeContextMentionLabel } from './contextMentionLabel';
4
+ export var MAIA_MENTION_PROTOCOL = 'maia-mention://';
5
+ export var MENTION_MARKER_REGEX = /\[\[mention:(client|project|task|user|mcp|skill):([^|\]]+)\|([\s\S]*?)\]\]/g;
6
+ var ALLOWED_TYPES = ['client', 'project', 'task', 'user', 'mcp', 'skill'];
7
+ export var parseMentionProtocolHref = function parseMentionProtocolHref(href) {
8
+ var rest = href.slice(MAIA_MENTION_PROTOCOL.length);
9
+ var slashIdx = rest.indexOf('/');
10
+ var rawType = slashIdx >= 0 ? rest.slice(0, slashIdx) : rest;
11
+ var rawId = slashIdx >= 0 ? rest.slice(slashIdx + 1) : '';
12
+ var id = '';
13
+ try {
14
+ id = rawId ? decodeURIComponent(rawId) : '';
15
+ } catch (_unused) {
16
+ id = rawId;
17
+ }
18
+ var type = ALLOWED_TYPES.includes(rawType) ? rawType : 'user';
19
+ return {
20
+ type: type,
21
+ id: id
22
+ };
23
+ };
24
+ export var mentionChildrenToLabel = function mentionChildrenToLabel(children) {
25
+ if (typeof children === 'string') return normalizeContextMentionLabel(children);
26
+ if (children == null || children === false) return '';
27
+ if (Array.isArray(children)) {
28
+ return normalizeContextMentionLabel(children.map(function (c) {
29
+ return typeof c === 'string' ? c : '';
30
+ }).join(''));
31
+ }
32
+ return normalizeContextMentionLabel(String(children));
33
+ };
34
+ export var splitLabelFirstWord = function splitLabelFirstWord(label) {
35
+ var normalized = normalizeContextMentionLabel(label).trim();
36
+ if (!normalized) return {
37
+ firstWord: '',
38
+ rest: ''
39
+ };
40
+ var firstWhitespaceIdx = normalized.search(/\s/);
41
+ if (firstWhitespaceIdx < 0) return {
42
+ firstWord: normalized,
43
+ rest: ''
44
+ };
45
+ return {
46
+ firstWord: normalized.slice(0, firstWhitespaceIdx),
47
+ rest: normalized.slice(firstWhitespaceIdx)
48
+ };
49
+ };
50
+
51
+ /** Las skills se muestran como `#nombre`, con el mismo estilo que los slash commands. */
52
+ export var formatSkillLabel = function formatSkillLabel(label) {
53
+ return "#".concat(label.trim().replace(/^(@\/|#)/, ''));
54
+ };
55
+
56
+ /** Genera la URL de navegación para un mention según su tipo. */
57
+ export var getMentionUrl = function getMentionUrl(type, id) {
58
+ switch (type) {
59
+ case 'client':
60
+ return "/clients/".concat(id);
61
+ case 'project':
62
+ return "/projects/".concat(id, "/dashboard");
63
+ case 'task':
64
+ return "/tasks/".concat(id, "/detail");
65
+ case 'user':
66
+ return null;
67
+ case 'mcp':
68
+ return null;
69
+ default:
70
+ return null;
71
+ }
72
+ };
73
+ export var collectInlineMarkers = function collectInlineMarkers(text) {
74
+ var markers = [];
75
+ MENTION_MARKER_REGEX.lastIndex = 0;
76
+ var m = MENTION_MARKER_REGEX.exec(text);
77
+ while (m) {
78
+ var _m = m,
79
+ _m2 = _slicedToArray(_m, 4),
80
+ rawType = _m2[1],
81
+ id = _m2[2],
82
+ label = _m2[3];
83
+ var type = ALLOWED_TYPES.includes(rawType) ? rawType : 'user';
84
+ markers.push({
85
+ kind: 'mention',
86
+ index: m.index,
87
+ length: m[0].length,
88
+ type: type,
89
+ id: id,
90
+ label: label
91
+ });
92
+ m = MENTION_MARKER_REGEX.exec(text);
93
+ }
94
+ var slashRegex = new RegExp(SLASH_COMMAND_MARKER_REGEX.source, 'g');
95
+ var s = slashRegex.exec(text);
96
+ while (s) {
97
+ markers.push({
98
+ kind: 'slash',
99
+ index: s.index,
100
+ length: s[0].length,
101
+ id: s[1],
102
+ label: s[2]
103
+ });
104
+ s = slashRegex.exec(text);
105
+ }
106
+ return markers.sort(function (a, b) {
107
+ return a.index - b.index;
108
+ });
109
+ };
110
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJTTEFTSF9DT01NQU5EX01BUktFUl9SRUdFWCIsIm5vcm1hbGl6ZUNvbnRleHRNZW50aW9uTGFiZWwiLCJNQUlBX01FTlRJT05fUFJPVE9DT0wiLCJNRU5USU9OX01BUktFUl9SRUdFWCIsIkFMTE9XRURfVFlQRVMiLCJwYXJzZU1lbnRpb25Qcm90b2NvbEhyZWYiLCJocmVmIiwicmVzdCIsInNsaWNlIiwibGVuZ3RoIiwic2xhc2hJZHgiLCJpbmRleE9mIiwicmF3VHlwZSIsInJhd0lkIiwiaWQiLCJkZWNvZGVVUklDb21wb25lbnQiLCJfdW51c2VkIiwidHlwZSIsImluY2x1ZGVzIiwibWVudGlvbkNoaWxkcmVuVG9MYWJlbCIsImNoaWxkcmVuIiwiQXJyYXkiLCJpc0FycmF5IiwibWFwIiwiYyIsImpvaW4iLCJTdHJpbmciLCJzcGxpdExhYmVsRmlyc3RXb3JkIiwibGFiZWwiLCJub3JtYWxpemVkIiwidHJpbSIsImZpcnN0V29yZCIsImZpcnN0V2hpdGVzcGFjZUlkeCIsInNlYXJjaCIsImZvcm1hdFNraWxsTGFiZWwiLCJjb25jYXQiLCJyZXBsYWNlIiwiZ2V0TWVudGlvblVybCIsImNvbGxlY3RJbmxpbmVNYXJrZXJzIiwidGV4dCIsIm1hcmtlcnMiLCJsYXN0SW5kZXgiLCJtIiwiZXhlYyIsIl9tIiwiX20yIiwiX3NsaWNlZFRvQXJyYXkiLCJwdXNoIiwia2luZCIsImluZGV4Iiwic2xhc2hSZWdleCIsIlJlZ0V4cCIsInNvdXJjZSIsInMiLCJzb3J0IiwiYSIsImIiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvcmVuZGVyQ29udGV4dE1lbnRpb25zLmhlbHBlcnMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVhY3ROb2RlIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBDb250ZXh0RW50aXR5VHlwZSB9IGZyb20gJy4uL3R5cGVzL2NvbnRleHRNZW50aW9uJ1xuaW1wb3J0IHsgU0xBU0hfQ09NTUFORF9NQVJLRVJfUkVHRVggfSBmcm9tICcuL3NsYXNoQ29tbWFuZE1hcmtlcidcbmltcG9ydCB7IG5vcm1hbGl6ZUNvbnRleHRNZW50aW9uTGFiZWwgfSBmcm9tICcuL2NvbnRleHRNZW50aW9uTGFiZWwnXG5cbmV4cG9ydCBjb25zdCBNQUlBX01FTlRJT05fUFJPVE9DT0wgPSAnbWFpYS1tZW50aW9uOi8vJ1xuXG5leHBvcnQgY29uc3QgTUVOVElPTl9NQVJLRVJfUkVHRVggPSAvXFxbXFxbbWVudGlvbjooY2xpZW50fHByb2plY3R8dGFza3x1c2VyfG1jcHxza2lsbCk6KFtefFxcXV0rKVxcfChbXFxzXFxTXSo/KVxcXVxcXS9nXG5cbmNvbnN0IEFMTE9XRURfVFlQRVM6IENvbnRleHRFbnRpdHlUeXBlW10gPSBbJ2NsaWVudCcsICdwcm9qZWN0JywgJ3Rhc2snLCAndXNlcicsICdtY3AnLCAnc2tpbGwnXVxuXG5leHBvcnQgY29uc3QgcGFyc2VNZW50aW9uUHJvdG9jb2xIcmVmID0gKGhyZWY6IHN0cmluZyk6IHsgdHlwZTogQ29udGV4dEVudGl0eVR5cGU7IGlkOiBzdHJpbmcgfSA9PiB7XG4gIGNvbnN0IHJlc3QgPSBocmVmLnNsaWNlKE1BSUFfTUVOVElPTl9QUk9UT0NPTC5sZW5ndGgpXG4gIGNvbnN0IHNsYXNoSWR4ID0gcmVzdC5pbmRleE9mKCcvJylcbiAgY29uc3QgcmF3VHlwZSA9IHNsYXNoSWR4ID49IDAgPyByZXN0LnNsaWNlKDAsIHNsYXNoSWR4KSA6IHJlc3RcbiAgY29uc3QgcmF3SWQgPSBzbGFzaElkeCA+PSAwID8gcmVzdC5zbGljZShzbGFzaElkeCArIDEpIDogJydcbiAgbGV0IGlkID0gJydcbiAgdHJ5IHtcbiAgICBpZCA9IHJhd0lkID8gZGVjb2RlVVJJQ29tcG9uZW50KHJhd0lkKSA6ICcnXG4gIH0gY2F0Y2gge1xuICAgIGlkID0gcmF3SWRcbiAgfVxuICBjb25zdCB0eXBlID0gQUxMT1dFRF9UWVBFUy5pbmNsdWRlcyhyYXdUeXBlIGFzIENvbnRleHRFbnRpdHlUeXBlKSA/IChyYXdUeXBlIGFzIENvbnRleHRFbnRpdHlUeXBlKSA6ICd1c2VyJ1xuICByZXR1cm4geyB0eXBlLCBpZCB9XG59XG5cbmV4cG9ydCBjb25zdCBtZW50aW9uQ2hpbGRyZW5Ub0xhYmVsID0gKGNoaWxkcmVuOiBSZWFjdE5vZGUpOiBzdHJpbmcgPT4ge1xuICBpZiAodHlwZW9mIGNoaWxkcmVuID09PSAnc3RyaW5nJykgcmV0dXJuIG5vcm1hbGl6ZUNvbnRleHRNZW50aW9uTGFiZWwoY2hpbGRyZW4pXG4gIGlmIChjaGlsZHJlbiA9PSBudWxsIHx8IGNoaWxkcmVuID09PSBmYWxzZSkgcmV0dXJuICcnXG4gIGlmIChBcnJheS5pc0FycmF5KGNoaWxkcmVuKSkge1xuICAgIHJldHVybiBub3JtYWxpemVDb250ZXh0TWVudGlvbkxhYmVsKGNoaWxkcmVuLm1hcChjID0+ICh0eXBlb2YgYyA9PT0gJ3N0cmluZycgPyBjIDogJycpKS5qb2luKCcnKSlcbiAgfVxuICByZXR1cm4gbm9ybWFsaXplQ29udGV4dE1lbnRpb25MYWJlbChTdHJpbmcoY2hpbGRyZW4pKVxufVxuXG5leHBvcnQgY29uc3Qgc3BsaXRMYWJlbEZpcnN0V29yZCA9IChsYWJlbDogc3RyaW5nKTogeyBmaXJzdFdvcmQ6IHN0cmluZzsgcmVzdDogc3RyaW5nIH0gPT4ge1xuICBjb25zdCBub3JtYWxpemVkID0gbm9ybWFsaXplQ29udGV4dE1lbnRpb25MYWJlbChsYWJlbCkudHJpbSgpXG4gIGlmICghbm9ybWFsaXplZCkgcmV0dXJuIHsgZmlyc3RXb3JkOiAnJywgcmVzdDogJycgfVxuICBjb25zdCBmaXJzdFdoaXRlc3BhY2VJZHggPSBub3JtYWxpemVkLnNlYXJjaCgvXFxzLylcbiAgaWYgKGZpcnN0V2hpdGVzcGFjZUlkeCA8IDApIHJldHVybiB7IGZpcnN0V29yZDogbm9ybWFsaXplZCwgcmVzdDogJycgfVxuICByZXR1cm4ge1xuICAgIGZpcnN0V29yZDogbm9ybWFsaXplZC5zbGljZSgwLCBmaXJzdFdoaXRlc3BhY2VJZHgpLFxuICAgIHJlc3Q6IG5vcm1hbGl6ZWQuc2xpY2UoZmlyc3RXaGl0ZXNwYWNlSWR4KSxcbiAgfVxufVxuXG4vKiogTGFzIHNraWxscyBzZSBtdWVzdHJhbiBjb21vIGAjbm9tYnJlYCwgY29uIGVsIG1pc21vIGVzdGlsbyBxdWUgbG9zIHNsYXNoIGNvbW1hbmRzLiAqL1xuZXhwb3J0IGNvbnN0IGZvcm1hdFNraWxsTGFiZWwgPSAobGFiZWw6IHN0cmluZyk6IHN0cmluZyA9PiBgIyR7bGFiZWwudHJpbSgpLnJlcGxhY2UoL14oQFxcL3wjKS8sICcnKX1gXG5cbi8qKiBHZW5lcmEgbGEgVVJMIGRlIG5hdmVnYWNpw7NuIHBhcmEgdW4gbWVudGlvbiBzZWfDum4gc3UgdGlwby4gKi9cbmV4cG9ydCBjb25zdCBnZXRNZW50aW9uVXJsID0gKHR5cGU6IENvbnRleHRFbnRpdHlUeXBlLCBpZDogc3RyaW5nIHwgbnVtYmVyKTogc3RyaW5nIHwgbnVsbCA9PiB7XG4gIHN3aXRjaCAodHlwZSkge1xuICAgIGNhc2UgJ2NsaWVudCc6XG4gICAgICByZXR1cm4gYC9jbGllbnRzLyR7aWR9YFxuICAgIGNhc2UgJ3Byb2plY3QnOlxuICAgICAgcmV0dXJuIGAvcHJvamVjdHMvJHtpZH0vZGFzaGJvYXJkYFxuICAgIGNhc2UgJ3Rhc2snOlxuICAgICAgcmV0dXJuIGAvdGFza3MvJHtpZH0vZGV0YWlsYFxuICAgIGNhc2UgJ3VzZXInOlxuICAgICAgcmV0dXJuIG51bGxcbiAgICBjYXNlICdtY3AnOlxuICAgICAgcmV0dXJuIG51bGxcbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuIG51bGxcbiAgfVxufVxuXG5leHBvcnQgdHlwZSBJbmxpbmVNYXJrZXIgPVxuICB8IHsga2luZDogJ21lbnRpb24nOyBpbmRleDogbnVtYmVyOyBsZW5ndGg6IG51bWJlcjsgdHlwZTogQ29udGV4dEVudGl0eVR5cGU7IGlkOiBzdHJpbmc7IGxhYmVsOiBzdHJpbmcgfVxuICB8IHsga2luZDogJ3NsYXNoJzsgaW5kZXg6IG51bWJlcjsgbGVuZ3RoOiBudW1iZXI7IGlkOiBzdHJpbmc7IGxhYmVsOiBzdHJpbmcgfVxuXG5leHBvcnQgY29uc3QgY29sbGVjdElubGluZU1hcmtlcnMgPSAodGV4dDogc3RyaW5nKTogSW5saW5lTWFya2VyW10gPT4ge1xuICBjb25zdCBtYXJrZXJzOiBJbmxpbmVNYXJrZXJbXSA9IFtdXG5cbiAgTUVOVElPTl9NQVJLRVJfUkVHRVgubGFzdEluZGV4ID0gMFxuICBsZXQgbTogUmVnRXhwRXhlY0FycmF5IHwgbnVsbCA9IE1FTlRJT05fTUFSS0VSX1JFR0VYLmV4ZWModGV4dClcbiAgd2hpbGUgKG0pIHtcbiAgICBjb25zdCBbLCByYXdUeXBlLCBpZCwgbGFiZWxdID0gbVxuICAgIGNvbnN0IHR5cGUgPSBBTExPV0VEX1RZUEVTLmluY2x1ZGVzKHJhd1R5cGUgYXMgQ29udGV4dEVudGl0eVR5cGUpID8gKHJhd1R5cGUgYXMgQ29udGV4dEVudGl0eVR5cGUpIDogJ3VzZXInXG4gICAgbWFya2Vycy5wdXNoKHsga2luZDogJ21lbnRpb24nLCBpbmRleDogbS5pbmRleCwgbGVuZ3RoOiBtWzBdLmxlbmd0aCwgdHlwZSwgaWQsIGxhYmVsIH0pXG4gICAgbSA9IE1FTlRJT05fTUFSS0VSX1JFR0VYLmV4ZWModGV4dClcbiAgfVxuXG4gIGNvbnN0IHNsYXNoUmVnZXggPSBuZXcgUmVnRXhwKFNMQVNIX0NPTU1BTkRfTUFSS0VSX1JFR0VYLnNvdXJjZSwgJ2cnKVxuICBsZXQgczogUmVnRXhwRXhlY0FycmF5IHwgbnVsbCA9IHNsYXNoUmVnZXguZXhlYyh0ZXh0KVxuICB3aGlsZSAocykge1xuICAgIG1hcmtlcnMucHVzaCh7IGtpbmQ6ICdzbGFzaCcsIGluZGV4OiBzLmluZGV4LCBsZW5ndGg6IHNbMF0ubGVuZ3RoLCBpZDogc1sxXSwgbGFiZWw6IHNbMl0gfSlcbiAgICBzID0gc2xhc2hSZWdleC5leGVjKHRleHQpXG4gIH1cblxuICByZXR1cm4gbWFya2Vycy5zb3J0KChhLCBiKSA9PiBhLmluZGV4IC0gYi5pbmRleClcbn1cbiJdLCJtYXBw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