@epam/ai-dial-chat-hooks 1.1.16 → 1.1.17

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 (154) hide show
  1. package/api-error/api-error.js +3 -4
  2. package/api-transport/create-csrf-middleware.js +1 -2
  3. package/api-transport/create-unauthorized-middleware.js +5 -3
  4. package/attachment/useAttachmentAction/useAttachmentAction.js +6 -10
  5. package/attachment/useAttachmentValidation/useAttachmentValidation.js +1 -2
  6. package/catalog/catalog-derivations.js +1 -2
  7. package/catalog/catalog-primary-action.js +1 -2
  8. package/catalog/create-publish-api.js +1 -2
  9. package/catalog/deployment-endpoint-url.js +1 -2
  10. package/catalog/deployment-id.js +1 -2
  11. package/catalog/entity-details.js +1 -2
  12. package/catalog/map-deployment-limits-to-catalog.js +1 -2
  13. package/catalog/map-deployment-limits-to-input.js +1 -2
  14. package/catalog/map-deployment-to-catalog-item.js +1 -2
  15. package/catalog/map-entity-details-to-catalog.js +2 -3
  16. package/catalog/map-prompt-to-catalog-item.js +1 -2
  17. package/catalog/map-skill-to-catalog-item.js +1 -2
  18. package/catalog/mcp-endpoint-url.js +1 -2
  19. package/catalog/publish.js +1 -2
  20. package/catalog/useCatalogEditNavigation/useCatalogEditNavigation.js +2 -7
  21. package/catalog/useCatalogItemDetails.js +1 -2
  22. package/catalog/useCatalogToolsetCredentials/useCatalogToolsetCredentials.js +1 -2
  23. package/catalog/useFavoriteEntitiesState/useFavoriteEntitiesState.js +2 -3
  24. package/catalog/usePublishFolders/usePublishFolders.js +2 -3
  25. package/catalog/useSkillDetailsPanelData/useSkillDetailsPanelData.js +1 -2
  26. package/catalog/useSkillItemDetails.js +4 -5
  27. package/conversation/announcement-message.js +1 -2
  28. package/conversation/conversation-transfer/async.js +1 -2
  29. package/conversation/conversation-transfer/attachment-refs.js +1 -2
  30. package/conversation/conversation-transfer/build-upload-path.js +1 -2
  31. package/conversation/conversation-transfer/date.js +1 -2
  32. package/conversation/conversation-transfer/dial-file-resolve.js +1 -2
  33. package/conversation/conversation-transfer/export-conversation.js +1 -2
  34. package/conversation/conversation-transfer/import-conversation.js +7 -9
  35. package/conversation/conversation-transfer/progress.js +2 -3
  36. package/conversation/conversation-transfer/queue.js +1 -2
  37. package/conversation/conversation-transfer/types.js +1 -2
  38. package/conversation/conversation-transfer/zip-export.js +2 -9
  39. package/conversation/conversation-transfer/zip-import.js +2 -3
  40. package/conversation/create-chat-stream-api.js +2 -7
  41. package/conversation/deriveConversationRowActionState/deriveConversationRowActionState.js +1 -2
  42. package/conversation/display-name-watch.js +1 -2
  43. package/conversation/footer-message.js +1 -2
  44. package/conversation/get-model-id-from-conversation-id.js +12 -13
  45. package/conversation/greeting.js +1 -2
  46. package/conversation/message-factory.js +1 -2
  47. package/conversation/message-utils.js +1 -2
  48. package/conversation/overlay-messages.js +1 -2
  49. package/conversation/quick-app-conversation-starters.js +1 -2
  50. package/conversation/starter-option.js +1 -2
  51. package/conversation/useActiveConversationSync/useActiveConversationSync.js +1 -2
  52. package/conversation/useAsyncConfirmDialog/useAsyncConfirmDialog.js +1 -2
  53. package/conversation/useAttachmentUpload/useAttachmentUpload.js +5 -3
  54. package/conversation/useConversationExport/useConversationExport.js +12 -14
  55. package/conversation/useConversationHandlers/attachment-to-dto.js +1 -2
  56. package/conversation/useConversationHandlers/message-factory.js +1 -2
  57. package/conversation/useConversationHandlers/message-utils.js +3 -4
  58. package/conversation/useConversationHandlers/starter-option.js +1 -2
  59. package/conversation/useConversationHandlers/useConversationHandlers.js +3 -4
  60. package/conversation/useConversationImport/useConversationImport.js +29 -30
  61. package/conversation/useConversationLookupMaps/useConversationLookupMaps.js +1 -2
  62. package/conversation/useConversationPanelItems/useConversationPanelItems.js +1 -2
  63. package/conversation/useConversationScroll/useConversationScroll.js +3 -8
  64. package/conversation/useConversationStream/apply-chunk.js +1 -2
  65. package/conversation/useConversationStream/buffered-generation.js +1 -2
  66. package/conversation/useConversationStream/conversation-path.js +3 -4
  67. package/conversation/useConversationStream/generation-resume.js +13 -17
  68. package/conversation/useConversationStream/useConversationStream.js +10 -22
  69. package/conversation/useImportFilePicker/useImportFilePicker.js +1 -2
  70. package/conversation/useTranscribeAudio/audio-transcription-error.js +1 -2
  71. package/conversation/useTranscribeAudio/transcription-retry.js +1 -2
  72. package/conversation/useTranscribeAudio/useTranscribeAudio.js +1 -2
  73. package/conversation-overlay.js +1 -2
  74. package/conversation-sources/useConversationSources/useConversationSources.js +1 -2
  75. package/conversation-sources.js +1 -2
  76. package/file-manager-canvas.js +1 -2
  77. package/files/annotation.js +1 -2
  78. package/files/attachment-canvas.js +1 -2
  79. package/files/attachment-dto-to-display.js +1 -2
  80. package/files/attachment-types.js +2 -3
  81. package/files/create-files-api.js +1 -2
  82. package/files/create-upload-file-with-progress.js +6 -14
  83. package/files/dial-file-manager-copy-move.util.js +1 -2
  84. package/files/dial-file-manager-mapping.util.js +4 -5
  85. package/files/dial-file-manager-path.util.js +1 -2
  86. package/files/dial-file-manager.model.js +1 -2
  87. package/files/dial-file-manager.types.js +1 -2
  88. package/files/dial-file-to-attachment.js +4 -5
  89. package/files/dial-file.js +1 -2
  90. package/files/dial-files-api.js +1 -2
  91. package/files/download-destination.js +1 -2
  92. package/files/file-manager-variant.js +1 -2
  93. package/files/file-name.js +1 -2
  94. package/files/prepare-download-destination.js +1 -2
  95. package/files/resolve-dial-file-api-path.js +1 -2
  96. package/files/source-content.js +2 -3
  97. package/files/useDialFileListing/useDialFileListing.js +38 -46
  98. package/files/useDialFileManager/useDialFileManager.js +1 -2
  99. package/files/useDialFileManagerTabConfig/useDialFileManagerTabConfig.js +1 -2
  100. package/files/useDialFileMetadata/useDialFileMetadata.js +4 -5
  101. package/files/useDialFileMutations/useDialFileMutations.js +1 -2
  102. package/files/useDialFileSharing/useDialFileSharing.js +1 -2
  103. package/files/useDialFileUploadBatch/useDialFileUploadBatch.js +17 -16
  104. package/mcp-apps/mcp-apps-api-client.js +1 -2
  105. package/mcp-apps/useMcpAppHostAdapter/useMcpAppHostAdapter.js +1 -2
  106. package/mcp-apps/useMcpAppHostContext/useMcpAppHostContext.js +1 -2
  107. package/mcp-apps/useMcpAppTools/useMcpAppTools.js +4 -8
  108. package/mcp-apps/useOpenMcpAppCanvas/useOpenMcpAppCanvas.js +1 -2
  109. package/oauth/authorize-url.js +2 -3
  110. package/oauth/handshake.js +4 -12
  111. package/oauth/popup.js +1 -2
  112. package/oauth/toolset-id.js +4 -5
  113. package/oauth/types.js +1 -2
  114. package/oauth/useOAuthCallbackCompletion/useOAuthCallbackCompletion.js +3 -7
  115. package/oauth/useToolsetLogin/useToolsetLogin.js +1 -2
  116. package/package.json +17 -17
  117. package/prompt/export-prompt.js +1 -2
  118. package/prompt/prompt-resource.js +1 -2
  119. package/prompt/prompt.js +1 -2
  120. package/prompt/usePromptsState/usePromptsState.js +1 -2
  121. package/scheduled-task/scheduled-task-mapping.js +1 -2
  122. package/scheduled-task/scheduled-task-trigger.js +2 -3
  123. package/scroll-anchoring.js +1 -2
  124. package/shared/application-schema.js +3 -4
  125. package/shared/browser-timezone.js +1 -2
  126. package/shared/cron-weekday.js +1 -2
  127. package/shared/custom-apps.js +1 -2
  128. package/shared/external-services.js +1 -2
  129. package/shared/formatting.js +1 -2
  130. package/shared/locale.js +3 -4
  131. package/shared/string-utils.js +1 -2
  132. package/shared/toolset-login-events.js +1 -2
  133. package/skill/skill-file-batch-validation.js +19 -19
  134. package/skill/skill-file-preview.js +1 -2
  135. package/skill/skill-manifest.js +1 -2
  136. package/skill/skill-types.js +2 -3
  137. package/skill/skill.js +11 -9
  138. package/skill/useSkillEditorLoad.js +1 -2
  139. package/skill/useSkillEditorSubmit.js +2 -7
  140. package/skill/useSkillFileActions.js +1 -2
  141. package/skill/useSkillFilePreview.js +1 -2
  142. package/skill/useSkillsState/useSkillsState.js +1 -2
  143. package/skills-state.js +1 -2
  144. package/source-content.js +1 -2
  145. package/usage/map-usage-data-to-dashboard.js +1 -2
  146. package/usage/map-user-usage-to-model-limits.js +1 -2
  147. package/usage/useUsageData/useUsageData.js +1 -2
  148. package/useChatSettingsFormConfig/useChatSettingsFormConfig.js +1 -2
  149. package/usePageFileDrag/usePageFileDrag.js +4 -5
  150. package/usePanelMaxWidth/usePanelMaxWidth.js +1 -2
  151. package/useShareLink/useShareLink.js +1 -2
  152. package/useShareRecipientsCount/useShareRecipientsCount.js +1 -2
  153. package/useToolsMenu/useToolsMenu.js +1 -2
  154. package/useViewportWidth/useViewportWidth.js +1 -2
@@ -7,7 +7,7 @@ import { useCallback as u, useEffect as d, useMemo as f, useRef as p, useState a
7
7
  import { ListFilesItemDtoNodeTypeEnum as h } from "@epam/ai-dial-chat-api-client";
8
8
  import { NotificationVariant as g } from "@epam/ai-dial-ui-kit";
9
9
  import { DialFileManagerTabs as _, DialFileNodeType as ie } from "@epam/ai-dial-react-file-manager";
10
- //#region src/files/useDialFileListing/useDialFileListing.ts
10
+ // src/files/useDialFileListing/useDialFileListing.ts
11
11
  var v = ({ filesApi: v, bucket: y, rootLabel: b, activeTab: x, onNotification: S }) => {
12
12
  let [C, w] = m(""), [T, E] = m(() => /* @__PURE__ */ new Map()), D = p(T);
13
13
  d(() => {
@@ -24,18 +24,15 @@ var v = ({ filesApi: v, bucket: y, rootLabel: b, activeTab: x, onNotification: S
24
24
  t || (E((t) => {
25
25
  let n = new Map(t);
26
26
  return n.set(C, e), n;
27
- }), k((e) => new Map(e).set(C, i)), x === _.Shared && C === "" && (F(e.map((e) => n(r(e.path, e.bucket ?? ""), b, e.nodeType === h.Folder))), L.current = new Map(e.map((e) => [e.name, {
27
+ }), k((e) => new Map(e).set(C, i)), x === _.Shared && C === "" && (F(e.map((e) => {
28
+ let t = r(e.path, e.bucket ?? "");
29
+ return n(t, b, e.nodeType === h.Folder);
30
+ })), L.current = new Map(e.map((e) => [e.name, {
28
31
  bucket: e.bucket ?? "",
29
32
  dialCorePath: e.path
30
33
  }]))));
31
34
  }).catch((n) => {
32
- if (!t) {
33
- if (C !== "" && e(n) === 404) {
34
- w(ee(C));
35
- return;
36
- }
37
- j("dialFileManager.error");
38
- }
35
+ t || (C !== "" && e(n) === 404 ? w(ee(C)) : j("dialFileManager.error"));
39
36
  }).finally(() => {
40
37
  t || A(!1);
41
38
  }), () => {
@@ -55,7 +52,10 @@ var v = ({ filesApi: v, bucket: y, rootLabel: b, activeTab: x, onNotification: S
55
52
  }
56
53
  let e = !1;
57
54
  return v.listSharedByMe(y).then((t) => {
58
- e || I(new Set(t.items.map((e) => n(r(e.path, y), b, e.nodeType === h.Folder))));
55
+ e || I(new Set(t.items.map((e) => {
56
+ let t = r(e.path, y);
57
+ return n(t, b, e.nodeType === h.Folder);
58
+ })));
59
59
  }).catch(() => {
60
60
  e || I(/* @__PURE__ */ new Set());
61
61
  }), () => {
@@ -136,38 +136,32 @@ var v = ({ filesApi: v, bucket: y, rootLabel: b, activeTab: x, onNotification: S
136
136
  E((r) => re(r, e, t, n));
137
137
  }, []), he = u((e) => {
138
138
  let n = e == null ? "" : o(e, b), r = e ?? `/${b}`;
139
- if (J((e) => {
139
+ J((e) => {
140
140
  if (e.has(r)) return e;
141
141
  let t = new Set(e);
142
142
  return t.add(r), t;
143
- }), !D.current.has(n)) {
144
- if (H.current.has(n)) {
145
- K((e) => {
143
+ }), !D.current.has(n) && (H.current.has(n) ? K((e) => {
144
+ let t = new Set(e);
145
+ return t.add(r), t;
146
+ }) : (H.current.add(n), K((e) => {
147
+ let t = new Set(e);
148
+ return t.add(r), t;
149
+ }), (async () => {
150
+ try {
151
+ let { items: e, permissions: t } = await s(v, x, y, n, L.current);
152
+ E((t) => new Map(t).set(n, e)), t != null && k((e) => new Map(e).set(n, t)), U.current.delete(n);
153
+ } catch {
154
+ S?.({
155
+ variant: g.Error,
156
+ reason: t.FolderLoadFailed
157
+ });
158
+ } finally {
159
+ H.current.delete(n), K((e) => {
146
160
  let t = new Set(e);
147
- return t.add(r), t;
161
+ return t.delete(r), t;
148
162
  });
149
- return;
150
163
  }
151
- H.current.add(n), K((e) => {
152
- let t = new Set(e);
153
- return t.add(r), t;
154
- }), (async () => {
155
- try {
156
- let { items: e, permissions: t } = await s(v, x, y, n, L.current);
157
- E((t) => new Map(t).set(n, e)), t != null && k((e) => new Map(e).set(n, t)), U.current.delete(n);
158
- } catch {
159
- S?.({
160
- variant: g.Error,
161
- reason: t.FolderLoadFailed
162
- });
163
- } finally {
164
- H.current.delete(n), K((e) => {
165
- let t = new Set(e);
166
- return t.delete(r), t;
167
- });
168
- }
169
- })();
170
- }
164
+ })()));
171
165
  }, [
172
166
  x,
173
167
  y,
@@ -175,7 +169,7 @@ var v = ({ filesApi: v, bucket: y, rootLabel: b, activeTab: x, onNotification: S
175
169
  S,
176
170
  b
177
171
  ]), ge = f(() => {
178
- let e = /* @__PURE__ */ new Set(), t = new Set([...W, ...q]);
172
+ let e = /* @__PURE__ */ new Set(), t = /* @__PURE__ */ new Set([...W, ...q]);
179
173
  for (let n of t) {
180
174
  let t = o(n, b);
181
175
  T.has(t) && e.add(n);
@@ -221,15 +215,13 @@ var v = ({ filesApi: v, bucket: y, rootLabel: b, activeTab: x, onNotification: S
221
215
  ]), Q = u(() => {
222
216
  B.current != null && (clearTimeout(B.current), B.current = null), V.current?.(), V.current = null, z(null), R(!1);
223
217
  }, []), ve = u((e, t) => {
224
- if (B.current != null && (clearTimeout(B.current), B.current = null), V.current?.(), V.current = null, !t.trim()) {
225
- z(null), R(!1);
226
- return;
227
- }
228
- B.current = setTimeout(() => {
218
+ B.current != null && (clearTimeout(B.current), B.current = null), V.current?.(), V.current = null, t.trim() ? B.current = setTimeout(() => {
229
219
  B.current = null;
230
220
  let e = t.toLowerCase();
231
221
  if (x === _.Shared && C === "") {
232
- V.current?.(), V.current = null, R(!0), z((T.get("") ?? []).filter((t) => t.name.toLowerCase().includes(e)).map((e) => l(e, e.bucket ?? y, b))), R(!1);
222
+ V.current?.(), V.current = null, R(!0);
223
+ let t = (T.get("") ?? []).filter((t) => t.name.toLowerCase().includes(e));
224
+ z(t.map((e) => l(e, e.bucket ?? y, b))), R(!1);
233
225
  return;
234
226
  }
235
227
  let n = !1;
@@ -239,14 +231,15 @@ var v = ({ filesApi: v, bucket: y, rootLabel: b, activeTab: x, onNotification: S
239
231
  try {
240
232
  let { items: t } = await c(v, x, y, C, L.current);
241
233
  if (n) return;
242
- z(t.filter((t) => t.name.toLowerCase().includes(e)).map((e) => l(e, e.bucket ?? y, b)));
234
+ let r = t.filter((t) => t.name.toLowerCase().includes(e));
235
+ z(r.map((e) => l(e, e.bucket ?? y, b)));
243
236
  } catch {
244
237
  n || z([]);
245
238
  } finally {
246
239
  n || R(!1);
247
240
  }
248
241
  })();
249
- }, 300);
242
+ }, 300) : (z(null), R(!1));
250
243
  }, [
251
244
  x,
252
245
  y,
@@ -291,5 +284,4 @@ var v = ({ filesApi: v, bucket: y, rootLabel: b, activeTab: x, onNotification: S
291
284
  bumpRetry: fe
292
285
  };
293
286
  };
294
- //#endregion
295
287
  export { v as useDialFileListing };
@@ -8,7 +8,7 @@ import { useDialFileSharing as f } from "../useDialFileSharing/useDialFileSharin
8
8
  import { useDialFileUploadBatch as p } from "../useDialFileUploadBatch/useDialFileUploadBatch.js";
9
9
  import { useCallback as m, useMemo as h } from "react";
10
10
  import { DialFileManagerActions as g, DialFileManagerTabs as _ } from "@epam/ai-dial-react-file-manager";
11
- //#region src/files/useDialFileManager/useDialFileManager.ts
11
+ // src/files/useDialFileManager/useDialFileManager.ts
12
12
  var v = ({ filesApi: v, bucket: y, rootLabel: b = "My files", activeTab: x = _.MyFiles, onNotification: S, onOperationSuccess: C, forbiddenSymbolsRegExp: w, variant: T = i.Attach, actionProfile: E, labels: D, locale: O, disabledNewButtonTooltip: k, downloadDestination: A, buildValidationErrorMessage: j }) => {
13
13
  let M = E ?? a(T), N = l({
14
14
  filesApi: v,
@@ -142,5 +142,4 @@ var v = ({ filesApi: v, bucket: y, rootLabel: b = "My files", activeTab: x = _.M
142
142
  isAnyOperationInProgress: H
143
143
  };
144
144
  };
145
- //#endregion
146
145
  export { v as useDialFileManager };
@@ -1,6 +1,6 @@
1
1
  import { useCallback as e, useEffect as t, useMemo as n } from "react";
2
2
  import { DialFileManagerTabs as r } from "@epam/ai-dial-react-file-manager";
3
- //#region src/files/useDialFileManagerTabConfig/useDialFileManagerTabConfig.ts
3
+ // src/files/useDialFileManagerTabConfig/useDialFileManagerTabConfig.ts
4
4
  var i = [
5
5
  r.MyFiles,
6
6
  r.Shared,
@@ -19,5 +19,4 @@ var i = [
19
19
  o
20
20
  ]), { tabs: u };
21
21
  };
22
- //#endregion
23
22
  export { a as useDialFileManagerTabConfig };
@@ -3,7 +3,7 @@ import { resolveDialFileApiPath as t } from "../resolve-dial-file-api-path.js";
3
3
  import { mapFileMetadataToDialFile as n } from "../dial-file-manager-mapping.util.js";
4
4
  import { useCallback as r, useState as i } from "react";
5
5
  import { NotificationVariant as a } from "@epam/ai-dial-ui-kit";
6
- //#region src/files/useDialFileMetadata/useDialFileMetadata.ts
6
+ // src/files/useDialFileMetadata/useDialFileMetadata.ts
7
7
  var o = ({ filesApi: o, bucket: s, rootLabel: c, onNotification: l }) => {
8
8
  let [u, d] = i(void 0), [f, p] = i(!1);
9
9
  return {
@@ -13,11 +13,11 @@ var o = ({ filesApi: o, bucket: s, rootLabel: c, onNotification: l }) => {
13
13
  (async () => {
14
14
  p(!0);
15
15
  try {
16
- let e = r.bucket ?? s, i = t(r, e, c);
17
- d(n(await o.getFileMetadata({
16
+ let e = r.bucket ?? s, i = t(r, e, c), a = await o.getFileMetadata({
18
17
  bucket: e,
19
18
  path: i
20
- }), r));
19
+ });
20
+ d(n(a, r));
21
21
  } catch {
22
22
  l?.({
23
23
  variant: a.Error,
@@ -38,5 +38,4 @@ var o = ({ filesApi: o, bucket: s, rootLabel: c, onNotification: l }) => {
38
38
  }, [])
39
39
  };
40
40
  };
41
- //#endregion
42
41
  export { o as useDialFileMetadata };
@@ -9,7 +9,7 @@ import { useCallback as g, useRef as _, useState as v } from "react";
9
9
  import { ArchiveItemDtoNodeTypeEnum as y, DeleteItemDtoNodeTypeEnum as b, RenameItemDtoNodeTypeEnum as x } from "@epam/ai-dial-chat-api-client";
10
10
  import { NOT_ALLOWED_SYMBOLS as S, NotificationVariant as C } from "@epam/ai-dial-ui-kit";
11
11
  import { DialFileManagerTabs as w, DialFileNodeType as T } from "@epam/ai-dial-react-file-manager";
12
- //#region src/files/useDialFileMutations/useDialFileMutations.ts
12
+ // src/files/useDialFileMutations/useDialFileMutations.ts
13
13
  var E = ({ filesApi: E, bucket: D, rootLabel: O, activeTab: k, folderPath: A, currentFolder: j, sharedRootMetaRef: M, listingPermissionsCache: N, invalidateFolders: P, bumpRetry: F, mergeCreatedFolder: I, setFolderPath: L, onNotification: R, onOperationSuccess: z, downloadDestination: B, forbiddenSymbolsRegExp: V }) => {
14
14
  let [ee, H] = v(!1), [te, U] = v(!1), [ne, W] = v(!1), [G, K] = v(!1), [q, J] = v(!1), [Y, X] = v(!1), Z = _(null), Q = _(null), $ = g((e, n) => {
15
15
  let i = null;
@@ -355,5 +355,4 @@ var E = ({ filesApi: E, bucket: D, rootLabel: O, activeTab: k, folderPath: A, cu
355
355
  cancelCopyMove: ce
356
356
  };
357
357
  };
358
- //#endregion
359
358
  export { E as useDialFileMutations };
@@ -2,7 +2,7 @@ import { FileManagerNotificationReason as e } from "../dial-file-manager.types.j
2
2
  import { resolveDialFileApiPath as t } from "../resolve-dial-file-api-path.js";
3
3
  import { useCallback as n, useState as r } from "react";
4
4
  import { NotificationVariant as i } from "@epam/ai-dial-ui-kit";
5
- //#region src/files/useDialFileSharing/useDialFileSharing.ts
5
+ // src/files/useDialFileSharing/useDialFileSharing.ts
6
6
  var a = ({ filesApi: a, bucket: o, rootLabel: s, bumpRetry: c, onNotification: l }) => {
7
7
  let [u, d] = r(!1), [f, p] = r(!1);
8
8
  return {
@@ -66,5 +66,4 @@ var a = ({ filesApi: a, bucket: o, rootLabel: s, bumpRetry: c, onNotification: l
66
66
  ])
67
67
  };
68
68
  };
69
- //#endregion
70
69
  export { a as useDialFileSharing };
@@ -9,7 +9,7 @@ import { FileUploadStatus as o } from "@epam/ai-dial-chat-shared";
9
9
  import { useCallback as s, useRef as c, useState as l } from "react";
10
10
  import { NotificationVariant as u } from "@epam/ai-dial-ui-kit";
11
11
  import { DialFileManagerTabs as d } from "@epam/ai-dial-react-file-manager";
12
- //#region src/files/useDialFileUploadBatch/useDialFileUploadBatch.ts
12
+ // src/files/useDialFileUploadBatch/useDialFileUploadBatch.ts
13
13
  var f = 5, p = (e) => e.error ? `${e.path} (${e.error})` : e.path, m = (e) => {
14
14
  let t = e.slice(0, f);
15
15
  return {
@@ -18,7 +18,7 @@ var f = 5, p = (e) => e.error ? `${e.path} (${e.error})` : e.path, m = (e) => {
18
18
  };
19
19
  }, h = (e, t) => `${e}${t}/`, g = (e) => /\.zip$/i.test(e), _ = (e) => {
20
20
  let [t] = e;
21
- if (!(e.length !== 1 || t == null)) return g(t.fileContent.name) && !g(t.name) ? t : void 0;
21
+ if (e.length === 1 && t != null) return g(t.fileContent.name) && !g(t.name) ? t : void 0;
22
22
  }, v = ({ filesApi: f, bucket: p, rootLabel: g, activeTab: v, cache: y, sharedRootMetaRef: b, invalidateFolders: x, bumpRetry: S, onNotification: C }) => {
23
23
  let [w, T] = l(null), E = c(null), D = s((e, t, r) => {
24
24
  let a = i(r, g);
@@ -70,18 +70,20 @@ var f = 5, p = (e) => e.error ? `${e.path} (${e.error})` : e.path, m = (e) => {
70
70
  return;
71
71
  }
72
72
  let l = new AbortController();
73
- E.current = l, T({
74
- files: e.map((e, t) => ({
75
- id: `${Date.now()}-${t}`,
76
- name: e.name,
77
- status: o.Queued
78
- })),
73
+ E.current = l;
74
+ let m = e.map((e, t) => ({
75
+ id: `${Date.now()}-${t}`,
76
+ name: e.name,
77
+ status: o.Queued
78
+ }));
79
+ T({
80
+ files: m,
79
81
  isOpen: !0
80
82
  });
81
- let m = i(s, g), { bucket: h, path: w } = v === d.Shared ? r(m, b.current, p) : {
83
+ let h = i(s, g), { bucket: w, path: O } = v === d.Shared ? r(h, b.current, p) : {
82
84
  bucket: p,
83
- path: m
84
- }, O = new Set((y.get(m) ?? []).map((e) => e.name.toLowerCase()));
85
+ path: h
86
+ }, k = new Set((y.get(h) ?? []).map((e) => e.name.toLowerCase()));
85
87
  (async () => {
86
88
  let r = 0, i = 0, s = 0, c = async () => {
87
89
  for (; r < e.length;) {
@@ -94,9 +96,9 @@ var f = 5, p = (e) => e.error ? `${e.path} (${e.error})` : e.path, m = (e) => {
94
96
  status: o.Uploading,
95
97
  percent: 0
96
98
  }));
97
- let u = O.has(c.name.toLowerCase()) ? t.Overwrite : t.CreateOnly;
99
+ let u = k.has(c.name.toLowerCase()) ? t.Overwrite : t.CreateOnly;
98
100
  try {
99
- await f.uploadFile(h, `${w}${c.name}`, c.fileContent, {
101
+ await f.uploadFile(w, `${O}${c.name}`, c.fileContent, {
100
102
  signal: l.signal,
101
103
  uploadMode: u,
102
104
  onProgress: (e) => {
@@ -121,8 +123,8 @@ var f = 5, p = (e) => e.error ? `${e.path} (${e.error})` : e.path, m = (e) => {
121
123
  }) : C?.({
122
124
  variant: u.Success,
123
125
  reason: n.UploadCompleted,
124
- folder: w || g
125
- })), x([m]), S(), E.current = null, T(null);
126
+ folder: O || g
127
+ })), x([h]), S(), E.current = null, T(null);
126
128
  })();
127
129
  }, [
128
130
  v,
@@ -152,5 +154,4 @@ var f = 5, p = (e) => e.error ? `${e.path} (${e.error})` : e.path, m = (e) => {
152
154
  }, [])
153
155
  };
154
156
  };
155
- //#endregion
156
157
  export { v as useDialFileUploadBatch };
@@ -1,6 +1,6 @@
1
1
  import { safeDecodeURIComponent as e } from "../shared/string-utils.js";
2
2
  import { ResponseError as t } from "@epam/ai-dial-chat-api-client";
3
- //#region src/mcp-apps/mcp-apps-api-client.ts
3
+ // src/mcp-apps/mcp-apps-api-client.ts
4
4
  var n = class extends Error {
5
5
  status;
6
6
  constructor(e) {
@@ -44,5 +44,4 @@ var n = class extends Error {
44
44
  return i;
45
45
  }
46
46
  });
47
- //#endregion
48
47
  export { n as McpAppResourceFetchError, r as createMcpAppsApiClient };
@@ -1,7 +1,7 @@
1
1
  import { getApiErrorMessage as e } from "../../api-error/api-error.js";
2
2
  import { useMcpAppHostContext as t } from "../useMcpAppHostContext/useMcpAppHostContext.js";
3
3
  import { useMemo as n } from "react";
4
- //#region src/mcp-apps/useMcpAppHostAdapter/useMcpAppHostAdapter.ts
4
+ // src/mcp-apps/useMcpAppHostAdapter/useMcpAppHostAdapter.ts
5
5
  var r = (r, i, a, o) => {
6
6
  let s = t(r, o), c = n(() => async (t, n, r, a) => {
7
7
  try {
@@ -22,5 +22,4 @@ var r = (r, i, a, o) => {
22
22
  c
23
23
  ]);
24
24
  };
25
- //#endregion
26
25
  export { r as useMcpAppHostAdapter };
@@ -1,5 +1,5 @@
1
1
  import { useMemo as e } from "react";
2
- //#region src/mcp-apps/useMcpAppHostContext/useMcpAppHostContext.ts
2
+ // src/mcp-apps/useMcpAppHostContext/useMcpAppHostContext.ts
3
3
  var t = /* @__PURE__ */ "--color-background-primary.--color-background-secondary.--color-background-tertiary.--color-background-inverse.--color-background-ghost.--color-background-info.--color-background-danger.--color-background-success.--color-background-warning.--color-background-disabled.--color-text-primary.--color-text-secondary.--color-text-tertiary.--color-text-inverse.--color-text-ghost.--color-text-info.--color-text-danger.--color-text-success.--color-text-warning.--color-text-disabled.--color-border-primary.--color-border-secondary.--color-border-tertiary.--color-border-inverse.--color-border-ghost.--color-border-info.--color-border-danger.--color-border-success.--color-border-warning.--color-border-disabled.--color-ring-primary.--color-ring-secondary.--color-ring-inverse.--color-ring-info.--color-ring-danger.--color-ring-success.--color-ring-warning.--font-sans.--font-mono.--font-weight-normal.--font-weight-medium.--font-weight-semibold.--font-weight-bold.--font-text-xs-size.--font-text-sm-size.--font-text-md-size.--font-text-lg-size.--font-heading-xs-size.--font-heading-sm-size.--font-heading-md-size.--font-heading-lg-size.--font-heading-xl-size.--font-heading-2xl-size.--font-heading-3xl-size.--font-text-xs-line-height.--font-text-sm-line-height.--font-text-md-line-height.--font-text-lg-line-height.--font-heading-xs-line-height.--font-heading-sm-line-height.--font-heading-md-line-height.--font-heading-lg-line-height.--font-heading-xl-line-height.--font-heading-2xl-line-height.--font-heading-3xl-line-height.--border-radius-xs.--border-radius-sm.--border-radius-md.--border-radius-lg.--border-radius-xl.--border-radius-full.--border-width-regular.--shadow-hairline.--shadow-sm.--shadow-md.--shadow-lg".split("."), n = () => {
4
4
  let e = getComputedStyle(document.documentElement), n = {};
5
5
  for (let r of t) {
@@ -24,5 +24,4 @@ var t = /* @__PURE__ */ "--color-background-primary.--color-background-secondary
24
24
  t,
25
25
  s
26
26
  ]);
27
- //#endregion
28
27
  export { r as useMcpAppHostContext };
@@ -1,21 +1,18 @@
1
1
  import { useEffect as e, useMemo as t, useRef as n, useState as r } from "react";
2
2
  import { collectToolCallNames as i } from "@epam/ai-dial-mcp-apps";
3
- //#region src/mcp-apps/useMcpAppTools/useMcpAppTools.ts
3
+ // src/mcp-apps/useMcpAppTools/useMcpAppTools.ts
4
4
  var a = (a, o, s, c) => {
5
5
  let [l, u] = r([]), [d, f] = r([]), p = n(/* @__PURE__ */ new Set());
6
6
  e(() => {
7
- if (p.current = /* @__PURE__ */ new Set(), f([]), o?.features?.mcp !== !0) {
8
- u([]);
9
- return;
10
- }
11
- if (o.type !== "toolset" && o.type !== "application") {
7
+ if (p.current = /* @__PURE__ */ new Set(), f([]), o?.features?.mcp !== !0 || o.type !== "toolset" && o.type !== "application") {
12
8
  u([]);
13
9
  return;
14
10
  }
15
11
  let e = o.id, t = o.type;
16
12
  (async () => {
17
13
  try {
18
- u((await a.listAppTools(e, t)).map(({ resourceUri: n, toolName: r }) => ({
14
+ let n = await a.listAppTools(e, t);
15
+ u(n.map(({ resourceUri: n, toolName: r }) => ({
19
16
  toolsetId: e,
20
17
  resourceUri: n,
21
18
  toolName: r,
@@ -67,5 +64,4 @@ var a = (a, o, s, c) => {
67
64
  a
68
65
  ]), [...l, ...d];
69
66
  };
70
- //#endregion
71
67
  export { a as useMcpAppTools };
@@ -2,7 +2,7 @@ import { McpAppResourceFetchError as e } from "../mcp-apps-api-client.js";
2
2
  import { AttachmentContentType as t, AttachmentErrorType as n, useAttachmentCanvas as r } from "@epam/ai-dial-attachment-canvas";
3
3
  import { useCallback as i, useEffect as a, useRef as o } from "react";
4
4
  import { computeMcpAppSeedKey as s, resolveMcpAppToolResult as c } from "@epam/ai-dial-mcp-apps";
5
- //#region src/mcp-apps/useOpenMcpAppCanvas/useOpenMcpAppCanvas.ts
5
+ // src/mcp-apps/useOpenMcpAppCanvas/useOpenMcpAppCanvas.ts
6
6
  var l = (l, u, d, f) => {
7
7
  let { openCanvas: p, openCanvasLoading: m, closeCanvas: h } = r(), { hostContext: g, sandboxUrl: _, fetchResourceHtml: v, callTool: y } = u, b = i((e) => e === "inline" ? (h(), "inline") : "fullscreen", [h]), x = o(null), S = i(async (r, i, a, o = !1) => {
8
8
  if (_ == null) return !1;
@@ -55,5 +55,4 @@ var l = (l, u, d, f) => {
55
55
  x.current = S;
56
56
  }, [S]), { openMcpAppCanvas: S };
57
57
  };
58
- //#endregion
59
58
  export { l as useOpenMcpAppCanvas };
@@ -1,5 +1,5 @@
1
- //#region src/oauth/authorize-url.ts
2
- var e = (e) => `${window.location.origin}${e}`, t = (e) => e === "localhost" || e === "[::1]" || /^127(?:\.\d{1,3}){3}$/.test(e), n = (e) => e.protocol === "https:" ? !0 : e.protocol === "http:" && t(e.hostname), r = (e, t, r) => {
1
+ // src/oauth/authorize-url.ts
2
+ var e = (e) => `${window.location.origin}${e}`, t = (e) => e === "localhost" || e === "[::1]" || /^127(?:\.\d{1,3}){3}$/.test(e), n = (e) => e.protocol === "https:" || e.protocol === "http:" && t(e.hostname), r = (e, t, r) => {
3
3
  if (!e.authorizationEndpoint?.trim() || !e.clientId?.trim()) return null;
4
4
  try {
5
5
  let i = new URL(e.authorizationEndpoint.trim());
@@ -8,5 +8,4 @@ var e = (e) => `${window.location.origin}${e}`, t = (e) => e === "localhost" ||
8
8
  return null;
9
9
  }
10
10
  };
11
- //#endregion
12
11
  export { r as buildToolsetAuthorizeUrl, e as getToolsetRedirectUri };
@@ -1,6 +1,6 @@
1
1
  import { ToolsetOAuthCallbackQuery as e, ToolsetOAuthChannelControlType as t, ToolsetOAuthFailureReason as n, ToolsetOAuthResultType as r } from "./types.js";
2
- //#region src/oauth/handshake.ts
3
- var i = "toolset-oauth-", a = (e) => `${i}${e}`, o = 300 * 1e3, s = 500, c = (e) => {
2
+ // src/oauth/handshake.ts
3
+ var i = "toolset-oauth-", a = (e) => `${i}${e}`, o = 3e5, s = 500, c = (e) => {
4
4
  switch (e) {
5
5
  case n.MissingCode:
6
6
  case n.MissingRedirectState:
@@ -38,11 +38,7 @@ var i = "toolset-oauth-", a = (e) => `${i}${e}`, o = 300 * 1e3, s = 500, c = (e)
38
38
  return null;
39
39
  }, b = () => {
40
40
  let e = y();
41
- if (e != null) {
42
- v(e);
43
- return;
44
- }
45
- n.closed && _({ type: r.Cancelled });
41
+ e == null ? n.closed && _({ type: r.Cancelled }) : v(e);
46
42
  };
47
43
  try {
48
44
  s = new BroadcastChannel(a(i)), s.onmessage = (e) => {
@@ -52,14 +48,10 @@ var i = "toolset-oauth-", a = (e) => `${i}${e}`, o = 300 * 1e3, s = 500, c = (e)
52
48
  window.addEventListener("focus", b);
53
49
  let x = setInterval(() => {
54
50
  let e = y();
55
- if (e != null) {
56
- v(e);
57
- return;
58
- }
51
+ e != null && v(e);
59
52
  }, m), S = setTimeout(() => {
60
53
  n.close(), _({ type: r.Cancelled });
61
54
  }, p), C = y();
62
55
  C != null && v(C);
63
56
  });
64
- //#endregion
65
57
  export { a as getToolsetOAuthChannelName, u as waitForToolsetOAuthResult };
package/oauth/popup.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { OAuthResourceKind as e, TOOLSET_REDIRECT_STATE_KEY as t, ToolsetCredentialsLevel as n, ToolsetOAuthInitiationResultType as r } from "./types.js";
2
2
  import { buildToolsetAuthorizeUrl as i, getToolsetRedirectUri as a } from "./authorize-url.js";
3
3
  import { generateUUID as o } from "@epam/ai-dial-chat-shared";
4
- //#region src/oauth/popup.ts
4
+ // src/oauth/popup.ts
5
5
  var s = (n, i, a, o, s, c, l = e.Toolset, u) => {
6
6
  let d = {
7
7
  toolsetId: o,
@@ -25,5 +25,4 @@ var s = (n, i, a, o, s, c, l = e.Toolset, u) => {
25
25
  let g = c();
26
26
  return g ? s(g, h, m, l, d, p, e.Toolset, f) : { type: r.Blocked };
27
27
  };
28
- //#endregion
29
28
  export { u as initiateOAuthLogin, l as navigateToolsetOAuthPopup, c as openToolsetOAuthPopup };
@@ -1,10 +1,9 @@
1
- //#region src/oauth/toolset-id.ts
2
- var e = "toolsets/", t = "public", n = (e) => e.split("/").map((e) => encodeURIComponent(e)).join("/"), r = (e) => e.split("/").map((e) => {
1
+ // src/oauth/toolset-id.ts
2
+ var e = (e) => e.split("/").map((e) => encodeURIComponent(e)).join("/"), t = (e) => e.split("/").map((e) => {
3
3
  try {
4
4
  return decodeURIComponent(e);
5
5
  } catch {
6
6
  return e;
7
7
  }
8
- }).join("/"), i = (n) => n.startsWith(e) ? n.slice(9).split("/")[0] === t : !1;
9
- //#endregion
10
- export { r as decodeToolsetId, n as encodeToolsetId, i as isPublicToolsetId };
8
+ }).join("/"), n = (e) => e.startsWith("toolsets/") ? e.slice(9).split("/")[0] === "public" : !1;
9
+ export { t as decodeToolsetId, e as encodeToolsetId, n as isPublicToolsetId };
package/oauth/types.js CHANGED
@@ -1,4 +1,4 @@
1
- //#region src/oauth/types.ts
1
+ // src/oauth/types.ts
2
2
  var e = /* @__PURE__ */ function(e) {
3
3
  return e.None = "NONE", e.ApiKey = "API_KEY", e.OAuth = "OAUTH", e;
4
4
  }({}), t = /* @__PURE__ */ function(e) {
@@ -20,5 +20,4 @@ var e = /* @__PURE__ */ function(e) {
20
20
  }({}), l = /* @__PURE__ */ function(e) {
21
21
  return e.Result = "toolsetOAuthResult", e.FailureReason = "toolsetOAuthFailureReason", e;
22
22
  }({}), u = "toolset-redirect-state";
23
- //#endregion
24
23
  export { i as OAuthResourceKind, u as TOOLSET_REDIRECT_STATE_KEY, t as ToolsetAuthStatus, e as ToolsetAuthTypes, n as ToolsetCredentialsLevel, l as ToolsetOAuthCallbackQuery, c as ToolsetOAuthChannelControlType, s as ToolsetOAuthFailureReason, a as ToolsetOAuthInitiationResultType, o as ToolsetOAuthResultType, r as WithLogin };
@@ -1,7 +1,7 @@
1
1
  import { TOOLSET_REDIRECT_STATE_KEY as e, ToolsetCredentialsLevel as t, ToolsetOAuthCallbackQuery as n, ToolsetOAuthChannelControlType as r, ToolsetOAuthFailureReason as i, ToolsetOAuthResultType as a } from "../types.js";
2
2
  import { getToolsetOAuthChannelName as o } from "../handshake.js";
3
3
  import { useEffect as s, useRef as c, useState as l } from "react";
4
- //#region src/oauth/useOAuthCallbackCompletion/useOAuthCallbackCompletion.ts
4
+ // src/oauth/useOAuthCallbackCompletion/useOAuthCallbackCompletion.ts
5
5
  var u = 500, d = (e) => typeof e == "object" && !!e && "type" in e && e.type === r.ResultAcknowledged, f = () => {
6
6
  let t = sessionStorage.getItem(e);
7
7
  if (!t) return null;
@@ -16,11 +16,8 @@ var u = 500, d = (e) => typeof e == "object" && !!e && "type" in e && e.type ===
16
16
  } catch {}
17
17
  }, m = (e, t) => {
18
18
  let r = new URL(window.location.pathname, window.location.origin);
19
- if (r.searchParams.set(n.Result, t.type), t.type === a.Failure && r.searchParams.set(n.FailureReason, t.reason), p(r), !e) {
20
- window.close();
21
- return;
22
- }
23
- try {
19
+ if (r.searchParams.set(n.Result, t.type), t.type === a.Failure && r.searchParams.set(n.FailureReason, t.reason), p(r), !e) window.close();
20
+ else try {
24
21
  let n = new BroadcastChannel(o(e));
25
22
  n.postMessage(t);
26
23
  let r = setInterval(() => {
@@ -90,5 +87,4 @@ var u = 500, d = (e) => typeof e == "object" && !!e && "type" in e && e.type ===
90
87
  failureReason: h
91
88
  };
92
89
  };
93
- //#endregion
94
90
  export { h as useOAuthCallbackCompletion };
@@ -3,7 +3,7 @@ import { emitToolsetLoginSuccess as o } from "../../shared/toolset-login-events.
3
3
  import { waitForToolsetOAuthResult as s } from "../handshake.js";
4
4
  import { initiateOAuthLogin as c, navigateToolsetOAuthPopup as l, openToolsetOAuthPopup as u } from "../popup.js";
5
5
  import { useCallback as d } from "react";
6
- //#region src/oauth/useToolsetLogin/useToolsetLogin.ts
6
+ // src/oauth/useToolsetLogin/useToolsetLogin.ts
7
7
  var f = /* @__PURE__ */ function(e) {
8
8
  return e.Success = "success", e.Failure = "failure", e.PopupBlocked = "popup-blocked", e.Cancelled = "cancelled", e;
9
9
  }({}), p = ({ callbackPath: f, loginToolset: p, logoutToolset: m, getToolset: h }) => {
@@ -69,5 +69,4 @@ var f = /* @__PURE__ */ function(e) {
69
69
  }, [p, g]);
70
70
  return { login: d((e) => e.authenticationType === n.OAuth ? _(e) : v(e), [_, v]) };
71
71
  };
72
- //#endregion
73
72
  export { f as ToolsetLoginOutcomeType, p as useToolsetLogin };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@epam/ai-dial-chat-hooks",
3
3
  "description": "Framework-level React hooks extracted from AI DIAL Chat for building custom chat interfaces",
4
- "version": "1.1.16",
4
+ "version": "1.1.17",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
7
7
  "main": "./index.js",
@@ -111,8 +111,8 @@
111
111
  }
112
112
  },
113
113
  "dependencies": {
114
- "@epam/ai-dial-chat-api-client": "1.1.16",
115
- "dompurify": "3.4.16",
114
+ "@epam/ai-dial-chat-api-client": "1.1.17",
115
+ "dompurify": "3.4.17",
116
116
  "fflate": "^0.8.3",
117
117
  "lru-cache": "^10.4.3",
118
118
  "mime-types": "^3.0.2",
@@ -120,22 +120,22 @@
120
120
  },
121
121
  "peerDependencies": {
122
122
  "react": "^19.2.8",
123
- "@epam/ai-dial-attachment-canvas": "1.1.16",
124
- "@epam/ai-dial-attachment-input": "1.1.16",
125
- "@epam/ai-dial-builder-form": "1.1.16",
126
- "@epam/ai-dial-catalog": "1.1.16",
127
- "@epam/ai-dial-chat-overlay": "1.1.16",
128
- "@epam/ai-dial-chat-shared": "1.1.16",
129
- "@epam/ai-dial-mcp-apps": "1.1.16",
130
- "@epam/ai-dial-publish-panel": "1.1.16",
131
- "@epam/ai-dial-quotations": "1.1.16",
123
+ "@epam/ai-dial-attachment-canvas": "1.1.17",
124
+ "@epam/ai-dial-attachment-input": "1.1.17",
125
+ "@epam/ai-dial-builder-form": "1.1.17",
126
+ "@epam/ai-dial-catalog": "1.1.17",
127
+ "@epam/ai-dial-chat-overlay": "1.1.17",
128
+ "@epam/ai-dial-chat-shared": "1.1.17",
129
+ "@epam/ai-dial-mcp-apps": "1.1.17",
130
+ "@epam/ai-dial-publish-panel": "1.1.17",
131
+ "@epam/ai-dial-quotations": "1.1.17",
132
132
  "@epam/ai-dial-react-file-manager": "^0.2.0",
133
- "@epam/ai-dial-scheduled-tasks": "1.1.16",
134
- "@epam/ai-dial-share": "1.1.16",
135
- "@epam/ai-dial-skill-editor": "1.1.16",
136
- "@epam/ai-dial-source-panel": "1.1.16",
133
+ "@epam/ai-dial-scheduled-tasks": "1.1.17",
134
+ "@epam/ai-dial-share": "1.1.17",
135
+ "@epam/ai-dial-skill-editor": "1.1.17",
136
+ "@epam/ai-dial-source-panel": "1.1.17",
137
137
  "@epam/ai-dial-ui-kit": "^0.14.2",
138
- "@epam/ai-dial-usage-dashboard": "1.1.16",
138
+ "@epam/ai-dial-usage-dashboard": "1.1.17",
139
139
  "@modelcontextprotocol/sdk": "^1.29.0",
140
140
  "@epam/pdf-highlighter-kit": "^0.0.19",
141
141
  "@mcp-ui/client": "^7.1.1"
@@ -1,5 +1,5 @@
1
1
  import { formatDateYMD as e } from "../conversation/conversation-transfer/date.js";
2
- //#region src/prompt/export-prompt.ts
2
+ // src/prompt/export-prompt.ts
3
3
  var t = (e) => {
4
4
  let t = e.split("/").filter(Boolean);
5
5
  return t.map((e, n) => {
@@ -24,5 +24,4 @@ var t = (e) => {
24
24
  let a = t.replace(i, "_");
25
25
  return `${e(r)}_${n}_prompt_${a}.json`;
26
26
  };
27
- //#endregion
28
27
  export { n as buildPromptExportEnvelope, a as buildPromptExportFileName, r as serializePromptExport };
@@ -1,4 +1,4 @@
1
- //#region src/prompt/prompt-resource.ts
1
+ // src/prompt/prompt-resource.ts
2
2
  var e = /* @__PURE__ */ function(e) {
3
3
  return e.Personal = "personal", e.SharedWithMe = "sharedWithMe", e.Public = "public", e;
4
4
  }({}), t = "prompts/", n = (e) => {
@@ -11,5 +11,4 @@ var e = /* @__PURE__ */ function(e) {
11
11
  path: a
12
12
  };
13
13
  };
14
- //#endregion
15
14
  export { e as PromptSource, n as parsePromptResourceUrl };