@epam/ai-dial-chat-hooks 1.3.0-dev.256 → 1.3.0-dev.259
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.
- package/conversation/useConversationStream/generation-resume.d.ts.map +1 -1
- package/conversation/useConversationStream/generation-resume.js +57 -85
- package/file-manager.js +22 -22
- package/files/create-upload-file-with-progress.d.ts +17 -0
- package/files/create-upload-file-with-progress.d.ts.map +1 -1
- package/files/create-upload-file-with-progress.js +34 -26
- package/index.js +64 -64
- package/package.json +17 -17
- package/project/project-events.d.ts +14 -0
- package/project/project-events.d.ts.map +1 -0
- package/project/project-events.js +24 -0
- package/project/projects-api-client.d.ts +8 -1
- package/project/projects-api-client.d.ts.map +1 -1
- package/project/projects-api-client.js +5 -0
- package/project/use-projects.d.ts +12 -4
- package/project/use-projects.d.ts.map +1 -1
- package/project/use-projects.js +92 -27
- package/shared/read-sse-events.d.ts +10 -0
- package/shared/read-sse-events.d.ts.map +1 -0
- package/shared/read-sse-events.js +33 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generation-resume.d.ts","sourceRoot":"","sources":["../../../src/conversation/useConversationStream/generation-resume.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,YAAY,EAEjB,KAAK,OAAO,EAEb,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,QAAQ,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"generation-resume.d.ts","sourceRoot":"","sources":["../../../src/conversation/useConversationStream/generation-resume.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,83 +1,55 @@
|
|
|
1
1
|
import { safeDecodeURI as e } from "../../shared/string-utils.js";
|
|
2
2
|
import { DEFAULT_GENERATION_PERSISTENCE_ERROR_MESSAGE as t, GenerationPersistenceError as n } from "../create-chat-stream-api.js";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
3
|
+
import { readSseEvents as r } from "../../shared/read-sse-events.js";
|
|
4
|
+
import { getConversationPath as i } from "./conversation-path.js";
|
|
5
|
+
import { applyChunkToMessages as a } from "./apply-chunk.js";
|
|
6
|
+
import { restoreBufferedMessage as o } from "./buffered-generation.js";
|
|
7
|
+
import { BackgroundGenerationStatus as s, MessageRole as c } from "@epam/ai-dial-chat-shared";
|
|
7
8
|
//#region src/conversation/useConversationStream/generation-resume.ts
|
|
8
|
-
var
|
|
9
|
+
var l = (e) => {
|
|
9
10
|
let t = e.custom_content;
|
|
10
11
|
return !!e.content || e.responseId != null || !!t?.attachments?.length || !!t?.stages?.length || !!t?.annotations?.length || !!t?.form_schema || t?.state != null;
|
|
11
|
-
},
|
|
12
|
-
if (
|
|
12
|
+
}, u = (e) => e.messages.findIndex((e) => e.backgroundGeneration?.status === s.Pending), d = (e) => {
|
|
13
|
+
if (u(e) !== -1) return !0;
|
|
13
14
|
let t = e.messages[e.messages.length - 1];
|
|
14
|
-
return !!t && t.role ===
|
|
15
|
-
},
|
|
15
|
+
return !!t && t.role === c.Assistant && !l(t) && t.streamErrorMessage == null && !t.wasStoppedByUser;
|
|
16
|
+
}, f = 3e5, p = "awaiting-resume", m = [
|
|
16
17
|
1e3,
|
|
17
18
|
2e3,
|
|
18
19
|
4e3,
|
|
19
20
|
8e3,
|
|
20
21
|
16e3
|
|
21
|
-
],
|
|
22
|
+
], h = (e) => new Promise((t) => {
|
|
22
23
|
let n = typeof window < "u", r = () => {
|
|
23
24
|
clearTimeout(i), n && window.removeEventListener("online", r), t();
|
|
24
25
|
}, i = setTimeout(r, e);
|
|
25
26
|
n && window.addEventListener("online", r);
|
|
26
|
-
}),
|
|
27
|
-
for (let r = 0; r <=
|
|
27
|
+
}), g = async (e, t, n) => {
|
|
28
|
+
for (let r = 0; r <= m.length; r++) {
|
|
28
29
|
if (t()) return null;
|
|
29
30
|
try {
|
|
30
31
|
let t = await e();
|
|
31
32
|
if (!n?.(t)) return t;
|
|
32
33
|
} catch {}
|
|
33
|
-
if (r ===
|
|
34
|
-
await m
|
|
34
|
+
if (r === m.length) return null;
|
|
35
|
+
await h(m[r]);
|
|
35
36
|
}
|
|
36
37
|
return null;
|
|
37
|
-
}, g =
|
|
38
|
-
|
|
39
|
-
try {
|
|
40
|
-
for (;;) {
|
|
41
|
-
let { done: e, value: a } = await n.read();
|
|
42
|
-
if (e) break;
|
|
43
|
-
i += r.decode(a, { stream: !0 });
|
|
44
|
-
let o = i.split("\n");
|
|
45
|
-
i = o.pop() ?? "";
|
|
46
|
-
let s = !1;
|
|
47
|
-
for (let e of o) {
|
|
48
|
-
let n = e.trim();
|
|
49
|
-
if (!n.startsWith("data:")) continue;
|
|
50
|
-
let r = n.slice(5).trim(), i;
|
|
51
|
-
try {
|
|
52
|
-
i = JSON.parse(r);
|
|
53
|
-
} catch {
|
|
54
|
-
continue;
|
|
55
|
-
}
|
|
56
|
-
if (await t(i)) {
|
|
57
|
-
s = !0;
|
|
58
|
-
break;
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
if (s) break;
|
|
62
|
-
}
|
|
63
|
-
} catch {} finally {
|
|
64
|
-
n.releaseLock();
|
|
65
|
-
}
|
|
66
|
-
}, _ = ({ transport: o, setConversation: s, conversationRef: p, resumingPathsRef: m, bufferedGenerationsRef: h, addStreamingPath: _, removeStreamingPath: v, isPathDisplayed: y, generationPersistenceErrorMessage: b = t, frameScheduler: x, stoppedGenerationIdsRef: S, rememberResumedGenerationId: C, forgetResumedGenerationId: w, onReloadError: T, onReloadSuccess: E }) => (t, D, O = {}) => {
|
|
67
|
-
if (!u(D)) {
|
|
38
|
+
}, _ = ({ transport: s, setConversation: c, conversationRef: m, resumingPathsRef: h, bufferedGenerationsRef: g, addStreamingPath: _, removeStreamingPath: v, isPathDisplayed: y, generationPersistenceErrorMessage: b = t, frameScheduler: x, stoppedGenerationIdsRef: S, rememberResumedGenerationId: C, forgetResumedGenerationId: w, onReloadError: T, onReloadSuccess: E }) => (t, D, O = {}) => {
|
|
39
|
+
if (!d(D)) {
|
|
68
40
|
O.onSettled?.();
|
|
69
41
|
return;
|
|
70
42
|
}
|
|
71
|
-
let k =
|
|
72
|
-
if (!O.skipDedupe &&
|
|
73
|
-
|
|
74
|
-
let A =
|
|
75
|
-
generationId:
|
|
43
|
+
let k = i(t);
|
|
44
|
+
if (!O.skipDedupe && h.current.has(k)) return;
|
|
45
|
+
h.current.add(k), _(k);
|
|
46
|
+
let A = u(D), j = A !== -1, M = j ? A : D.messages.length - 1, N = {
|
|
47
|
+
generationId: p,
|
|
76
48
|
messageIndex: M,
|
|
77
49
|
message: O.seedMessage ?? D.messages[M]
|
|
78
50
|
};
|
|
79
|
-
|
|
80
|
-
let P = () =>
|
|
51
|
+
g.current.set(k, N);
|
|
52
|
+
let P = () => g.current.get(k) === N, F = j ? D.messages[M].backgroundGeneration?.generationId : void 0, I, L = () => {
|
|
81
53
|
let e = F ?? I;
|
|
82
54
|
return e != null && (S?.current.has(e) ?? !1);
|
|
83
55
|
}, R = (e) => {
|
|
@@ -88,88 +60,88 @@ var c = (e) => {
|
|
|
88
60
|
I = void 0, S?.current.delete(e), w?.(k, e);
|
|
89
61
|
}, B = (e, t = !1) => {
|
|
90
62
|
if (x?.flush(k), F != null && S?.current.delete(F), z(), !P()) return;
|
|
91
|
-
|
|
92
|
-
let n = !j && e && e.messages.length - 1 === M &&
|
|
63
|
+
h.current.delete(k), v(k);
|
|
64
|
+
let n = !j && e && e.messages.length - 1 === M && d(e) && l(N.message);
|
|
93
65
|
t || n ? (N.message = {
|
|
94
66
|
...N.message,
|
|
95
67
|
streamErrorMessage: b
|
|
96
|
-
}, y(k) &&
|
|
68
|
+
}, y(k) && c((e) => {
|
|
97
69
|
if (!e || !P() || !y(k)) return e;
|
|
98
|
-
let t =
|
|
99
|
-
return
|
|
100
|
-
})) : (
|
|
70
|
+
let t = o(e, N);
|
|
71
|
+
return m.current = t, t;
|
|
72
|
+
})) : (g.current.delete(k), e && y(k) && (c(e), m.current = e));
|
|
101
73
|
}, V = async () => {
|
|
102
74
|
if (P()) try {
|
|
103
|
-
let n = await
|
|
75
|
+
let n = await s.getConversation(e(t));
|
|
104
76
|
if (!P()) return;
|
|
105
77
|
E?.(k), B(n);
|
|
106
78
|
} catch {
|
|
107
79
|
if (!P()) return;
|
|
108
|
-
x?.flush(k),
|
|
80
|
+
x?.flush(k), h.current.delete(k), v(k), F != null && S?.current.delete(F), z(), T?.(k, V, P);
|
|
109
81
|
}
|
|
110
82
|
}, H = (e) => {
|
|
111
|
-
x?.cancel(k), P() && (N.message = e, y(k) &&
|
|
83
|
+
x?.cancel(k), P() && (N.message = e, y(k) && c((e) => {
|
|
112
84
|
if (!e || !P() || !y(k)) return e;
|
|
113
|
-
let t =
|
|
114
|
-
return
|
|
85
|
+
let t = o(e, N);
|
|
86
|
+
return m.current = t, t;
|
|
115
87
|
}));
|
|
116
|
-
}, U = () =>
|
|
88
|
+
}, U = () => c((e) => {
|
|
117
89
|
if (!e || !P() || !y(k)) return e;
|
|
118
|
-
let t =
|
|
119
|
-
return
|
|
90
|
+
let t = o(e, N);
|
|
91
|
+
return m.current = t, t;
|
|
120
92
|
}), W = (e) => {
|
|
121
93
|
if (!P() || L()) return;
|
|
122
|
-
let t =
|
|
94
|
+
let t = a([N.message], 0, e);
|
|
123
95
|
t && (N.message = t[0]), y(k) && (x ? x.schedule(k, U) : U());
|
|
124
96
|
}, G = async () => {
|
|
125
|
-
let n = new AbortController(),
|
|
97
|
+
let n = new AbortController(), i;
|
|
126
98
|
try {
|
|
127
|
-
|
|
99
|
+
i = await s.watchConversation(k, n.signal);
|
|
128
100
|
} catch {
|
|
129
101
|
await V();
|
|
130
102
|
return;
|
|
131
103
|
}
|
|
132
104
|
try {
|
|
133
|
-
let
|
|
134
|
-
if (!
|
|
135
|
-
n.abort(),
|
|
105
|
+
let r = await s.getConversation(e(t));
|
|
106
|
+
if (!d(r)) {
|
|
107
|
+
n.abort(), i.cancel().catch(() => void 0), B(r);
|
|
136
108
|
return;
|
|
137
109
|
}
|
|
138
110
|
} catch {}
|
|
139
|
-
let
|
|
111
|
+
let a = !1, o = window.setTimeout(() => {
|
|
140
112
|
n.abort();
|
|
141
|
-
},
|
|
113
|
+
}, f);
|
|
142
114
|
try {
|
|
143
|
-
await
|
|
115
|
+
await r(i, async (n) => {
|
|
144
116
|
if (n?.action !== "UPDATE") return !1;
|
|
145
117
|
try {
|
|
146
|
-
let n = await
|
|
147
|
-
if (!
|
|
118
|
+
let n = await s.getConversation(e(t));
|
|
119
|
+
if (!d(n)) return B(n), a = !0, !0;
|
|
148
120
|
} catch {}
|
|
149
121
|
return !1;
|
|
150
122
|
});
|
|
151
123
|
} finally {
|
|
152
|
-
clearTimeout(
|
|
124
|
+
clearTimeout(o);
|
|
153
125
|
}
|
|
154
|
-
|
|
126
|
+
a || await V();
|
|
155
127
|
}, K = async () => {
|
|
156
128
|
let e = new AbortController(), t;
|
|
157
129
|
try {
|
|
158
|
-
t = await
|
|
130
|
+
t = await s.attachToGeneration(k, e.signal);
|
|
159
131
|
} catch {
|
|
160
132
|
return !1;
|
|
161
133
|
}
|
|
162
|
-
let
|
|
163
|
-
return await
|
|
134
|
+
let i = !1, a = !1;
|
|
135
|
+
return await r(t, (e) => {
|
|
164
136
|
if (!P()) return !0;
|
|
165
137
|
switch (e.type) {
|
|
166
138
|
case "snapshot": return R(e.generationId), H(e.message), !1;
|
|
167
139
|
case "chunk": return W(e.chunk), !1;
|
|
168
140
|
case "done":
|
|
169
141
|
case "error":
|
|
170
|
-
case "stopped": return
|
|
142
|
+
case "stopped": return a = e.type === "error" && e.errorType === n.type, i = !0, !0;
|
|
171
143
|
}
|
|
172
|
-
}),
|
|
144
|
+
}), i ? (a ? B(void 0, !0) : await V(), !0) : (z(), !P());
|
|
173
145
|
};
|
|
174
146
|
(async () => {
|
|
175
147
|
try {
|
|
@@ -180,4 +152,4 @@ var c = (e) => {
|
|
|
180
152
|
})();
|
|
181
153
|
};
|
|
182
154
|
//#endregion
|
|
183
|
-
export {
|
|
155
|
+
export { m as RECOVERY_REFETCH_DELAYS_MS, _ as createResumeIfAwaitingGeneration, g as fetchConversationForRecovery, u as findPendingBackgroundMessageIndex, l as hasGeneratedPayload, d as isAwaitingGenerationResume };
|
package/file-manager.js
CHANGED
|
@@ -7,25 +7,25 @@ import { COLUMNS_MY_FILES as h, COLUMNS_ORGANIZATION as g, COLUMNS_SHARED as _,
|
|
|
7
7
|
import { buildSharedItemVirtualPath as w, dialCorePathToRelative as T, findDialFileByPath as E, findFolderByVirtualPath as D, formatOperationFolderName as O, getVirtualPathName as k, hasDialFileWritePermission as A, hasForbiddenNameSymbols as j, hasSamePaths as M, isCopyMoveDuplicateAllowed as N, isShareActionsAllowed as P, normalizeVirtualPath as F, parseNewFolderVirtualPath as I, resolveOwnerCoords as L, resolveSectionByPath as R, unionPathSets as z, withRoutableRootLabels as B } from "./files/dial-file-manager-path.util.js";
|
|
8
8
|
import { resolveDialFileApiPath as V, virtualPathToApiPath as H } from "./files/resolve-dial-file-api-path.js";
|
|
9
9
|
import { prepareCopyItems as U, prepareMoveRenameItems as W } from "./files/dial-file-manager-copy-move.util.js";
|
|
10
|
-
import {
|
|
11
|
-
import { buildFromCache as
|
|
12
|
-
import { createFilesApiClient as
|
|
13
|
-
import { openAnnotationAttachment as
|
|
14
|
-
import { getUrlFileName as
|
|
15
|
-
import { annotationToDisplayAttachment as
|
|
16
|
-
import { dialFileToAttachment as
|
|
17
|
-
import { DownloadDestinationType as
|
|
18
|
-
import { prepareDownloadDestination as
|
|
19
|
-
import { deriveActionProfile as
|
|
20
|
-
import { useDialFileListing as
|
|
21
|
-
import { useDialFileMetadata as
|
|
22
|
-
import { useDialFileMutations as
|
|
23
|
-
import { useDialFileSharing as
|
|
24
|
-
import { useDialFileUploadBatch as
|
|
25
|
-
import { useDialFileManager as
|
|
26
|
-
import { useDialFileManagerSections as
|
|
27
|
-
import { useDialFileManagerTabConfig as
|
|
28
|
-
import { useFileAttachmentPicker as
|
|
29
|
-
import { useFileAttachmentModalState as
|
|
30
|
-
import { useGridEditingScroll as
|
|
31
|
-
export { h as COLUMNS_MY_FILES, g as COLUMNS_ORGANIZATION, _ as COLUMNS_SHARED, v as CORE_PERMISSION_MAP, y as DATE_OPTIONS, b as DIAL_FILE_MANAGER_SECTION_TABS, d as DialFilesApiUploadMode,
|
|
10
|
+
import { UploadBodyEncoding as G, UploadNetworkError as K, createUploadFileWithProgress as q } from "./files/create-upload-file-with-progress.js";
|
|
11
|
+
import { buildFromCache as J, buildSharedSearchScope as Y, fetchByTab as X, fetchForSearch as Z, findFirstSuccessfulCopyMoveItem as Q, mapCorePermissions as $, mapFileMetadataToDialFile as ee, mapSearchItem as te, mergeCreatedFolderIntoCache as ne, resolveTransferFailureReason as re, resolveUploadFailureReason as ie, updateEntry as ae } from "./files/dial-file-manager-mapping.util.js";
|
|
12
|
+
import { createFilesApiClient as oe } from "./files/create-files-api.js";
|
|
13
|
+
import { openAnnotationAttachment as se } from "./files/annotation.js";
|
|
14
|
+
import { getUrlFileName as ce, isExternalSourcePreviewable as le, resolveExternalSourceContentType as ue } from "./files/source-content.js";
|
|
15
|
+
import { annotationToDisplayAttachment as de, attachmentDtoToDisplayAttachment as fe, attachmentDtosToDisplayAttachments as pe } from "./files/attachment-dto-to-display.js";
|
|
16
|
+
import { dialFileToAttachment as me, dialFilesToAttachments as he, dialFolderPathToAttachment as ge } from "./files/dial-file-to-attachment.js";
|
|
17
|
+
import { DownloadDestinationType as _e } from "./files/download-destination.js";
|
|
18
|
+
import { prepareDownloadDestination as ve } from "./files/prepare-download-destination.js";
|
|
19
|
+
import { deriveActionProfile as ye } from "./files/file-manager-variant.js";
|
|
20
|
+
import { useDialFileListing as be } from "./files/useDialFileListing/useDialFileListing.js";
|
|
21
|
+
import { useDialFileMetadata as xe } from "./files/useDialFileMetadata/useDialFileMetadata.js";
|
|
22
|
+
import { useDialFileMutations as Se } from "./files/useDialFileMutations/useDialFileMutations.js";
|
|
23
|
+
import { useDialFileSharing as Ce } from "./files/useDialFileSharing/useDialFileSharing.js";
|
|
24
|
+
import { useDialFileUploadBatch as we } from "./files/useDialFileUploadBatch/useDialFileUploadBatch.js";
|
|
25
|
+
import { useDialFileManager as Te } from "./files/useDialFileManager/useDialFileManager.js";
|
|
26
|
+
import { useDialFileManagerSections as Ee } from "./files/useDialFileManagerSections/useDialFileManagerSections.js";
|
|
27
|
+
import { useDialFileManagerTabConfig as De } from "./files/useDialFileManagerTabConfig/useDialFileManagerTabConfig.js";
|
|
28
|
+
import { useFileAttachmentPicker as Oe } from "./files/useFileAttachmentPicker/useFileAttachmentPicker.js";
|
|
29
|
+
import { useFileAttachmentModalState as ke } from "./files/useFileAttachmentModalState/useFileAttachmentModalState.js";
|
|
30
|
+
import { useGridEditingScroll as Ae } from "@epam/ai-dial-chat-shared";
|
|
31
|
+
export { h as COLUMNS_MY_FILES, g as COLUMNS_ORGANIZATION, _ as COLUMNS_SHARED, v as CORE_PERMISSION_MAP, y as DATE_OPTIONS, b as DIAL_FILE_MANAGER_SECTION_TABS, d as DialFilesApiUploadMode, _e as DownloadDestinationType, f as FileManagerNotificationReason, p as FileNameValidationErrorReason, m as FileOperationKind, x as PATH_SEPARATOR_REGEXP, S as RESERVED_MARKER_NAME, C as UPLOAD_CONCURRENCY, G as UploadBodyEncoding, K as UploadNetworkError, de as annotationToDisplayAttachment, fe as attachmentDtoToDisplayAttachment, pe as attachmentDtosToDisplayAttachments, J as buildFromCache, w as buildSharedItemVirtualPath, Y as buildSharedSearchScope, oe as createFilesApiClient, q as createUploadFileWithProgress, ye as deriveActionProfile, T as dialCorePathToRelative, me as dialFileToAttachment, he as dialFilesToAttachments, ge as dialFolderPathToAttachment, X as fetchByTab, Z as fetchForSearch, E as findDialFileByPath, Q as findFirstSuccessfulCopyMoveItem, D as findFolderByVirtualPath, O as formatOperationFolderName, ce as getUrlFileName, k as getVirtualPathName, A as hasDialFileWritePermission, j as hasForbiddenNameSymbols, M as hasSamePaths, N as isCopyMoveDuplicateAllowed, i as isDialFileAcceptType, e as isDialFileId, t as isDialFolderId, le as isExternalSourcePreviewable, P as isShareActionsAllowed, $ as mapCorePermissions, ee as mapFileMetadataToDialFile, te as mapSearchItem, ne as mergeCreatedFolderIntoCache, a as mimeTypesToAttachmentExtensionLabels, o as mimeTypesToDialFileAcceptTypes, s as mimeTypesToFileAccept, F as normalizeVirtualPath, se as openAnnotationAttachment, I as parseNewFolderVirtualPath, U as prepareCopyItems, ve as prepareDownloadDestination, W as prepareMoveRenameItems, V as resolveDialFileApiPath, n as resolveDialFileBucketAndPath, ue as resolveExternalSourceContentType, L as resolveOwnerCoords, r as resolveRelativeDialFilePath, R as resolveSectionByPath, re as resolveTransferFailureReason, ie as resolveUploadFailureReason, c as sanitizeFileName, l as splitFileNameExtension, u as trimFileNameToByteLimit, z as unionPathSets, ae as updateEntry, be as useDialFileListing, Te as useDialFileManager, Ee as useDialFileManagerSections, De as useDialFileManagerTabConfig, xe as useDialFileMetadata, Se as useDialFileMutations, Ce as useDialFileSharing, we as useDialFileUploadBatch, ke as useFileAttachmentModalState, Oe as useFileAttachmentPicker, Ae as useGridEditingScroll, H as virtualPathToApiPath, B as withRoutableRootLabels };
|
|
@@ -3,6 +3,18 @@ import { UploadFileWithProgressFn } from './create-files-api';
|
|
|
3
3
|
export declare class UploadNetworkError extends Error {
|
|
4
4
|
constructor();
|
|
5
5
|
}
|
|
6
|
+
/** How {@link createUploadFileWithProgress} encodes the upload request. */
|
|
7
|
+
export declare enum UploadBodyEncoding {
|
|
8
|
+
/** `POST` with a `FormData` body carrying `file`, `bucket`, `path` and `uploadMode`. */
|
|
9
|
+
Multipart = "multipart",
|
|
10
|
+
/**
|
|
11
|
+
* `PUT` with the `File` itself as the body (`Content-Type:
|
|
12
|
+
* application/octet-stream`) and `bucket`, `path`, `uploadMode` and
|
|
13
|
+
* `contentType` in the query string, so the server can stream the body
|
|
14
|
+
* without parsing it.
|
|
15
|
+
*/
|
|
16
|
+
Raw = "raw"
|
|
17
|
+
}
|
|
6
18
|
export interface CreateUploadFileWithProgressDeps {
|
|
7
19
|
/** Returns the currently held CSRF token, or `null` when none is set. */
|
|
8
20
|
getCsrfToken: () => string | null;
|
|
@@ -14,6 +26,11 @@ export interface CreateUploadFileWithProgressDeps {
|
|
|
14
26
|
createUnauthorizedError: (url: string) => Error;
|
|
15
27
|
/** The upload endpoint's URL. */
|
|
16
28
|
uploadUrl: string;
|
|
29
|
+
/**
|
|
30
|
+
* How the request carries the file and its fields; must match what the
|
|
31
|
+
* endpoint at `uploadUrl` accepts. Defaults to {@link UploadBodyEncoding.Multipart}.
|
|
32
|
+
*/
|
|
33
|
+
bodyEncoding?: UploadBodyEncoding;
|
|
17
34
|
/** Builds the `XMLHttpRequest` instance to upload through. Defaults to `() => new XMLHttpRequest()`. */
|
|
18
35
|
xhrFactory?: () => XMLHttpRequest;
|
|
19
36
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-upload-file-with-progress.d.ts","sourceRoot":"","sources":["../../src/files/create-upload-file-with-progress.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,wBAAwB,EAEzB,MAAM,oBAAoB,CAAC;AA2B5B,mFAAmF;AACnF,qBAAa,kBAAmB,SAAQ,KAAK;;CAK5C;AAED,MAAM,WAAW,gCAAgC;IAC/C,yEAAyE;IACzE,YAAY,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;IAClC,oEAAoE;IACpE,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAC7C,kEAAkE;IAClE,kBAAkB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,oEAAoE;IACpE,uBAAuB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,KAAK,CAAC;IAChD,iCAAiC;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,wGAAwG;IACxG,UAAU,CAAC,EAAE,MAAM,cAAc,CAAC;CACnC;AAED;;;;;GAKG;AACH,eAAO,MAAM,4BAA4B,GACvC,MAAM,gCAAgC,KACrC,
|
|
1
|
+
{"version":3,"file":"create-upload-file-with-progress.d.ts","sourceRoot":"","sources":["../../src/files/create-upload-file-with-progress.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,wBAAwB,EAEzB,MAAM,oBAAoB,CAAC;AA2B5B,mFAAmF;AACnF,qBAAa,kBAAmB,SAAQ,KAAK;;CAK5C;AAED,2EAA2E;AAC3E,oBAAY,kBAAkB;IAC5B,wFAAwF;IACxF,SAAS,cAAc;IACvB;;;;;OAKG;IACH,GAAG,QAAQ;CACZ;AAED,MAAM,WAAW,gCAAgC;IAC/C,yEAAyE;IACzE,YAAY,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;IAClC,oEAAoE;IACpE,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAC7C,kEAAkE;IAClE,kBAAkB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,oEAAoE;IACpE,uBAAuB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,KAAK,CAAC;IAChD,iCAAiC;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAClC,wGAAwG;IACxG,UAAU,CAAC,EAAE,MAAM,cAAc,CAAC;CACnC;AAED;;;;;GAKG;AACH,eAAO,MAAM,4BAA4B,GACvC,MAAM,gCAAgC,KACrC,wBA+FF,CAAC"}
|
|
@@ -14,37 +14,45 @@ var e = class extends Error {
|
|
|
14
14
|
constructor() {
|
|
15
15
|
super("Upload failed"), this.name = "UploadNetworkError";
|
|
16
16
|
}
|
|
17
|
-
}, n = (
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
let m =
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
17
|
+
}, n = /* @__PURE__ */ function(e) {
|
|
18
|
+
return e.Multipart = "multipart", e.Raw = "raw", e;
|
|
19
|
+
}({}), r = (n) => {
|
|
20
|
+
let { uploadUrl: r, bodyEncoding: i = "multipart", xhrFactory: a = () => new XMLHttpRequest() } = n;
|
|
21
|
+
return (o, s, c, { signal: l, onProgress: u, uploadMode: d } = {}) => new Promise((f, p) => {
|
|
22
|
+
let m = a(), h = i === "raw", g = new URLSearchParams({
|
|
23
|
+
bucket: o,
|
|
24
|
+
path: s
|
|
25
|
+
});
|
|
26
|
+
d != null && g.append("uploadMode", d), h ? (c.type !== "" && g.append("contentType", c.type), m.open("PUT", `${r}?${g.toString()}`), m.setRequestHeader("Content-Type", "application/octet-stream")) : m.open("POST", r), m.withCredentials = !0;
|
|
27
|
+
let _ = n.getCsrfToken();
|
|
28
|
+
if (_ != null && m.setRequestHeader("X-CSRF-Token", _), m.upload.addEventListener("progress", (e) => {
|
|
29
|
+
!u || !e.lengthComputable || e.total <= 0 || u(Math.min(100, Math.round(e.loaded / e.total * 100)));
|
|
30
|
+
}), m.addEventListener("load", () => {
|
|
31
|
+
let t = m.getResponseHeader("x-csrf-token");
|
|
32
|
+
if (t && n.setCsrfToken(t), m.status >= 200 && m.status < 300) try {
|
|
33
|
+
f(JSON.parse(m.responseText));
|
|
31
34
|
} catch {
|
|
32
|
-
|
|
35
|
+
p(/* @__PURE__ */ Error("Upload response was not valid JSON"));
|
|
33
36
|
}
|
|
34
|
-
else
|
|
35
|
-
}),
|
|
36
|
-
|
|
37
|
-
}),
|
|
38
|
-
|
|
39
|
-
}),
|
|
40
|
-
if (
|
|
41
|
-
|
|
37
|
+
else m.status === 401 ? (n.notifyUnauthorized(r), p(n.createUnauthorizedError(r))) : p(new e(m));
|
|
38
|
+
}), m.addEventListener("error", () => {
|
|
39
|
+
p(new t());
|
|
40
|
+
}), m.addEventListener("abort", () => {
|
|
41
|
+
p(new DOMException("Upload aborted", "AbortError"));
|
|
42
|
+
}), l != null) {
|
|
43
|
+
if (l.aborted) {
|
|
44
|
+
m.abort();
|
|
42
45
|
return;
|
|
43
46
|
}
|
|
44
|
-
|
|
47
|
+
l.addEventListener("abort", () => m.abort(), { once: !0 });
|
|
45
48
|
}
|
|
46
|
-
|
|
49
|
+
if (h) {
|
|
50
|
+
m.send(c);
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
let v = new FormData();
|
|
54
|
+
v.append("file", c), g.forEach((e, t) => v.append(t, e)), m.send(v);
|
|
47
55
|
});
|
|
48
56
|
};
|
|
49
57
|
//#endregion
|
|
50
|
-
export { t as UploadNetworkError,
|
|
58
|
+
export { n as UploadBodyEncoding, t as UploadNetworkError, r as createUploadFileWithProgress };
|
package/index.js
CHANGED
|
@@ -125,67 +125,67 @@ import { COLUMNS_MY_FILES as Ji, COLUMNS_ORGANIZATION as Yi, COLUMNS_SHARED as X
|
|
|
125
125
|
import { buildSharedItemVirtualPath as ra, dialCorePathToRelative as ia, findDialFileByPath as aa, findFolderByVirtualPath as oa, formatOperationFolderName as sa, getVirtualPathName as ca, hasDialFileWritePermission as la, hasForbiddenNameSymbols as ua, hasSamePaths as da, isCopyMoveDuplicateAllowed as fa, isShareActionsAllowed as pa, normalizeVirtualPath as ma, parseNewFolderVirtualPath as ha, resolveOwnerCoords as ga, resolveSectionByPath as _a, unionPathSets as va, withRoutableRootLabels as ya } from "./files/dial-file-manager-path.util.js";
|
|
126
126
|
import { resolveDialFileApiPath as ba, virtualPathToApiPath as xa } from "./files/resolve-dial-file-api-path.js";
|
|
127
127
|
import { prepareCopyItems as Sa, prepareMoveRenameItems as Ca } from "./files/dial-file-manager-copy-move.util.js";
|
|
128
|
-
import {
|
|
129
|
-
import { buildFromCache as
|
|
130
|
-
import { createFilesApiClient as
|
|
131
|
-
import { openAnnotationAttachment as
|
|
132
|
-
import { annotationToOoxmlCanvasContent as
|
|
133
|
-
import { getUrlFileName as
|
|
134
|
-
import { annotationToDisplayAttachment as
|
|
135
|
-
import { dialFileToAttachment as
|
|
136
|
-
import { DownloadDestinationType as
|
|
137
|
-
import { prepareDownloadDestination as
|
|
138
|
-
import { deriveActionProfile as
|
|
139
|
-
import { useDialFileListing as
|
|
140
|
-
import { useDialFileMetadata as
|
|
141
|
-
import { useDialFileMutations as
|
|
142
|
-
import { useDialFileSharing as
|
|
143
|
-
import { useDialFileUploadBatch as
|
|
144
|
-
import { useDialFileManager as
|
|
145
|
-
import { useDialFileManagerSections as
|
|
146
|
-
import { useDialFileManagerTabConfig as
|
|
147
|
-
import { useFileAttachmentPicker as
|
|
148
|
-
import { getBrowserTimezone as
|
|
149
|
-
import { isValidAbsoluteUrl as
|
|
150
|
-
import { buildExternalServiceScopeId as
|
|
151
|
-
import { useChatSettingsFormConfig as
|
|
152
|
-
import { usePageFileDrag as
|
|
153
|
-
import { useViewportWidth as
|
|
154
|
-
import { usePanelMaxWidth as
|
|
155
|
-
import { useShareLink as
|
|
156
|
-
import { useToolsMenu as
|
|
157
|
-
import { USAGE_DATA_I18N_KEYS as
|
|
158
|
-
import { USAGE_MODEL_LIMITS_I18N_KEYS as
|
|
159
|
-
import { UsagePeriod as
|
|
160
|
-
import { isCappedStat as
|
|
161
|
-
import { USAGE_RESET_I18N_KEYS as
|
|
162
|
-
import { useDeploymentUsageLimits as
|
|
163
|
-
import { useRefreshUsageAfterGeneration as
|
|
164
|
-
import { resetUsageLimitBannerDismissals as
|
|
165
|
-
import { USAGE_BANNER_I18N_KEYS as
|
|
166
|
-
import { useUsageData as
|
|
167
|
-
import { McpAppResourceFetchError as
|
|
168
|
-
import { useMcpAppTools as
|
|
169
|
-
import { useMcpAppHostContext as
|
|
170
|
-
import { useMcpAppHostAdapter as
|
|
171
|
-
import { useOpenMcpAppCanvas as
|
|
172
|
-
import { triggerBrowserDownload as
|
|
173
|
-
import { applyActiveScheduledTaskRun as
|
|
174
|
-
import { useConversationDiscovery as
|
|
175
|
-
import { useScheduledTaskSkillDisplayNames as
|
|
176
|
-
import { useSkillFileSystemPicker as
|
|
177
|
-
import { useFileAttachmentModalState as
|
|
178
|
-
import { useDialFilePreview as
|
|
179
|
-
import { EntityPreselectionOutcome as
|
|
180
|
-
import { CanvasWidthMode as
|
|
181
|
-
import { usePersistedState as
|
|
182
|
-
import { ClientGenerationStatus as
|
|
183
|
-
import { ActiveScheduledTaskDetailState as
|
|
184
|
-
import { useActiveScheduledTaskDetails as
|
|
185
|
-
import { ConversationTitleRequestEnd as
|
|
186
|
-
import { SkillFilePreviewState as
|
|
187
|
-
import { ExternalServiceAuthType as
|
|
188
|
-
import { useDeploymentChangeTracking as
|
|
189
|
-
import { useGridEditingScroll as
|
|
190
|
-
import { SchedulerServiceConsentStatus as
|
|
191
|
-
export { ws as ActiveScheduledTaskDetailState, Ts as ActiveScheduledTaskStatus, S as AttachmentValidationErrorReason, yi as AudioTranscriptionError, bi as AudioTranscriptionErrorReason, H as AuthenticationType, Ji as COLUMNS_MY_FILES, Yi as COLUMNS_ORGANIZATION, Xi as COLUMNS_SHARED, Zi as CORE_PERMISSION_MAP, ys as CanvasWidthMode, Et as CatalogPrimaryActionType, Ss as ClientGenerationStatus, E as ConversationExportMode, Os as ConversationTitleRequestEnd, D as ConversationTransferErrorCode, O as ConversationTransferWarningCode, Qi as DATE_OPTIONS, _e as DEFAULT_ENTITY_DETAILS_LABELS, on as DEFAULT_GENERATION_CONFLICT_MESSAGE, sn as DEFAULT_GENERATION_PERSISTENCE_ERROR_MESSAGE, Ci as DEFAULT_MAX_ARCHIVE_BYTES, yr as DEFAULT_PROJECT_CONTEXT_ALLOWED_EXTENSIONS, br as DEFAULT_PROJECT_CONTEXT_FILE_MAX_BYTES, xr as DEFAULT_PROJECT_CONTEXT_TOTAL_MAX_BYTES, cn as DEFAULT_STREAM_IDLE_TIMEOUT_MS, $i as DIAL_FILE_MANAGER_SECTION_TABS, Wi as DialFilesApiUploadMode, uo as DownloadDestinationType, A as EXPORT_APP_NAME, gs as EntityPreselectionOutcome, _s as EntityPreselectionSource, k as ExportFileNameKind, Ms as ExternalServiceAuthType, Ns as ExternalServiceCredentialsLevel, Ps as ExternalServiceLoginOutcomeType, Yt as FavoriteEntityType, Gi as FileManagerNotificationReason, Ki as FileNameValidationErrorReason, qi as FileOperationKind, ln as GenerationConflictError, un as GenerationPersistenceError, ts as McpAppResourceFetchError, dt as McpResourceKind, K as OAuthResourceKind, Br as OfflineCredentialsGateStatus, Hr as OfflineCredentialsLoginOutcomeType, Wr as OfflineCredentialsLogoutOutcomeType, ea as PATH_SEPARATOR_REGEXP, Vn as PROMPT_CONTENT_MAX_LENGTH, Hn as PROMPT_COUNTER_ANNOUNCE_THRESHOLD, Un as PROMPT_DESCRIPTION_MAX_LENGTH, Wn as PROMPT_NAME_MAX_LENGTH, Ze as PUBLIC_SKILL_BUCKET, Ir as ProjectActionError, Tr as ProjectFormErrorField, Er as ProjectFormErrorReason, Gn as PromptFieldError, Ee as PromptSource, ta as RESERVED_MARKER_NAME, si as RecipientsCountStatus, je as SKILL_FILE_UPLOAD_MAX_BYTES, Me as SKILL_FOLDER_MARKER, Qe as SKILL_LISTING_MAX_PAGES, $e as SKILL_LISTING_PAGE_SIZE, Ne as SKILL_MANIFEST_FILE, et as SKILL_MANIFEST_MAX_BYTES, Pe as SKILL_TEXT_FIELD_MAX_LENGTHS, Fe as SKILL_UPLOAD_MAX_FILES, Ie as SKILL_UPLOAD_MAX_TOTAL_BYTES, $n as ScheduledTaskTriggerDescriptionKind, Rs as SchedulerServiceConsentStatus, ni as SkillArchiveImportErrorKind, ri as SkillArchiveImportStatus, ii as SkillArchiveSelectionRejectionReason, Yr as SkillEditorLoadState, As as SkillFilePreviewState, $r as SkillPreviewErrorKind, tt as SkillSource, dn as StopCompletionError, fn as StreamInterruptedError, pn as StreamUpstreamError, q as TOOLSET_REDIRECT_STATE_KEY, J as ToolsetAuthStatus, Y as ToolsetAuthTypes, X as ToolsetCredentialsLevel, Wt as ToolsetLoginOutcomeType, Z as ToolsetOAuthCallbackQuery, Q as ToolsetOAuthChannelControlType, $ as ToolsetOAuthFailureReason, ee as ToolsetOAuthInitiationResultType, te as ToolsetOAuthResultType, na as UPLOAD_CONCURRENCY, Qo as USAGE_BANNER_I18N_KEYS, Io as USAGE_DATA_I18N_KEYS, Ro as USAGE_MODEL_LIMITS_I18N_KEYS, Wo as USAGE_RESET_I18N_KEYS, Qn as UnsupportedTriggerReason, xi as UploadMimeTypePolicy, wa as UploadNetworkError, Vo as UsagePeriod, Go as UsageResetOffsetPolicy, ne as WithLogin, io as annotationToDisplayAttachment, Ba as annotationToOoxmlCanvasContent, Va as annotationToPdfCanvasContent, tr as apSchedulerDayToJsDay, le as appendLocaleCode, cs as applyActiveScheduledTaskRun, zi as applyChunkToMessages, ao as attachmentDtoToDisplayAttachment, oo as attachmentDtosToDisplayAttachments, Ti as attachmentToDto, Ei as attachmentsToDtos, ue as buildAdditionalLocaleOptions, Qt as buildAnnouncementSignature, ft as buildApplicationMcpUrl, P as buildChatCompletionsUrl, pt as buildConnectApi, fr as buildCreateConversationDto, F as buildDeploymentConnectApi, Do as buildExternalServiceScopeId, Ea as buildFromCache, Rn as buildPromptExportEnvelope, zn as buildPromptExportFileName, Oe as buildPromptOverview, Kn as buildPromptPath, U as buildResetFields, I as buildResponsesUrl, ra as buildSharedItemVirtualPath, Da as buildSharedSearchScope, rt as buildSkillContentTree, Le as buildSkillFilesPayload, Re as buildSkillManifest, ze as buildSkillManifestForSubmit, Be as buildSkillManifestFromFrontmatter, it as buildSkillOverview, zt as buildToolsetAuthorizeUrl, mt as buildToolsetMcpUrl, Kr as checkScheduledTaskAuthSessionError, ai as classifySkillArchiveImportError, Ha as clearAttachmentCache, ls as collapseScheduledTaskConversations, de as composeLocalePayload, mn as createChatStreamApi, i as createCsrfMiddleware, Sn as createDeploymentChangedMessage, L as createDeploymentLookup, Ra as createFilesApiClient, Cs as createGenerationRegistry, ns as createMcpAppsApiClient, rn as createMemoryConversationDraftStore, Di as createMessagePair, pr as createProjectsApiClient, M as createPublishApiClient, cr as createScheduledTasksApiClient, a as createUnauthorizedMiddleware, Ta as createUploadFileWithProgress, an as createWebStorageConversationDraftStore, R as decodeDeploymentId, re as decodeToolsetId, fe as decomposeLocalizedFields, po as deriveActionProfile, xt as deriveAvailableTabIds, li as deriveConversationRowActionState, St as deriveFavoriteItems, er as describeScheduledTaskTrigger, ia as dialCorePathToRelative, so as dialFileToAttachment, co as dialFilesToAttachments, lo as dialFolderPathToAttachment, h as downloadAttachment, Ft as emitToolsetLoginSuccess, z as encodeDeploymentId, ie as encodeToolsetId, Oa as fetchByTab, ka as fetchForSearch, Ct as filterCatalogItemsBySelector, wt as filterHiddenOwnedItems, B as findDeploymentByIdOrReference, vn as findDeploymentForConversationId, aa as findDialFileByPath, Aa as findFirstSuccessfulCopyMoveItem, oa as findFolderByVirtualPath, gn as formatAppVersion, he as formatCalendarDate, w as formatDateYM, T as formatDateYMD, sa as formatOperationFolderName, j as formatQuotedNameList, Ko as formatUsageResetShort, qo as formatUsageResetTime, e as getApiErrorDetails, t as getApiErrorMessage, n as getApiErrorStatus, Co as getBrowserTimezone, Fi as getConversationPath, mi as getConversationSource, Oo as getExternalServiceFallbackName, Cn as getFormSchemaToolSyncKey, wn as getLastDeploymentId, Tn as getLastUserMessageToolConfiguration, En as getLatestToolConfiguration, Sr as getMimeTypesForExtensions, yn as getModelIdCandidatesFromConversationId, bn as getModelIdFromConversationId, Dr as getProjectFormError, gt as getPublicCatalogEntityFolderPath, Mn as getQuickAppConversationStarters, qn as getRemainingCharacters, Ot as getRunnerSchemas, Ve as getSkillFieldLengthViolations, Mi as getStarterConversationText, Ni as getStarterDisplayText, Fn as getStarterPopulateText, Pi as getStarterSubmitText, In as getStartersFromSchema, xn as getTimeOfDayGreeting, Dn as getToolConfigurationFromFormSchema, Lt as getToolsetOAuthChannelName, Bt as getToolsetRedirectUri, to as getUrlFileName, ca as getVirtualPathName, us as groupScheduledTaskConversations, Oi as hasActiveToolConfig, $t as hasAnnouncementContent, Ua as hasAttachmentTextSource, la as hasDialFileWritePermission, ua as hasForbiddenNameSymbols, da as hasSamePaths, en as hasStructuredAnnouncement, o as includesIgnoreCase, Vt as initiateOAuthLogin, ki as isAnswerIncomplete, Vi as isAwaitingGenerationResume, Ho as isCappedStat, r as isConversationNotFoundError, fa as isCopyMoveDuplicateAllowed, kt as isCustomAppSchema, v as isDialFileAcceptType, d as isDialFileId, f as isDialFolderId, g as isDownloadableAttachment, no as isExternalSourcePreviewable, Ai as isMessageChanged, On as isMessageStreaming, ke as isOrganisationPromptItem, _t as isPublicCatalogEntityId, ae as isPublicToolsetId, At as isQuickAppSchema, pa as isShareActionsAllowed, He as isSkillFolderMarkerPath, wo as isValidAbsoluteUrl, To as isValidFeaturesData, Ue as isValidSkillRelativePath, nr as jsDayToApSchedulerDay, ja as mapCorePermissions, ve as mapDeploymentDetailsDtoToEntityDetails, G as mapDeploymentLimitsDtoToCatalogLimits, W as mapDeploymentLimitsToInput, xe as mapDeploymentToCatalogItem, Se as mapDeploymentToolsetCredentials, ye as mapEntityDetailsToCatalogDetails, Ma as mapFileMetadataToDialFile, rr as mapFormValuesToCreateBody, ir as mapFormValuesToUpdateBody, Rr as mapOfflineCredentialsResponse, zo as mapOverallCostLimitsToPeriodStatuses, hr as mapProjectDetailsToViewModel, gr as mapProjectDtoToItem, _r as mapProjectSource, Ae as mapPromptToCatalogItem, vt as mapPublishConversationResultDto, yt as mapPublishHistoryEntryDto, ar as mapScheduledTaskDtoToFormValues, Na as mapSearchItem, at as mapSkillToCatalogItem, Nn as mapStages, vr as mapStoredContextFiles, be as mapToolsetCredentials, Ce as mapToolsetToCatalogItem, Lo as mapUsageDataToDashboard, Bo as mapUserUsageToModelLimits, Pa as mergeCreatedFolderIntoCache, ur as mergeRunsById, Bi as mergeStages, kn as messageHasStages, y as mimeTypesToAttachmentExtensionLabels, b as mimeTypesToDialFileAcceptTypes, x as mimeTypesToFileAccept, We as nameFromPath, Ht as navigateToolsetOAuthPopup, V as normalizeDeploymentId, zr as normalizeOfflineCredentialsConnectSettings, An as normalizeResponseFormat, Ge as normalizeSkillName, oe as normalizeToolsetId, ma as normalizeVirtualPath, za as openAnnotationAttachment, Ut as openToolsetOAuthPopup, ge as padTwoDigits, ko as parseExternalServiceUrl, Eo as parseFeaturesData, ha as parseNewFolderVirtualPath, De as parsePromptResourceUrl, Ke as parseSkillManifest, Mt as parseSkillManifestDocument, nt as parseSkillResourceUrl, Sa as prepareCopyItems, fo as prepareDownloadDestination, Ca as prepareMoveRenameItems, or as prepareScheduledTaskCreateBody, sr as prepareScheduledTaskUpdateBody, ot as readSkillFileBytes, st as readSkillFilePreviewBytes, ct as readSkillManifest, Tt as reconcileFilterTopics, Wa as referenceAttachmentToPdfCanvasContent, Xo as resetUsageLimitBannerDismissals, Es as resolveActiveScheduledTask, Cr as resolveByteLimit, bs as resolveCanvasWidth, Dt as resolveCatalogPrimaryAction, Ga as resolveCodeCanvasContent, we as resolveDeploymentFolder, ba as resolveDialFileApiPath, p as resolveDialFileBucketAndPath, wr as resolveExtensionList, ro as resolveExternalSourceContentType, Ka as resolveGroupedVisualizerCanvasContent, qa as resolveHtmlCanvasContent, Ja as resolveImageCanvasContent, Ya as resolveJsonCanvasContent, pe as resolveLocalizedText, Xa as resolveMarkdownCanvasContent, ht as resolveMcpResourceKind, Za as resolveOoxmlCanvasContent, ga as resolveOwnerCoords, Qa as resolvePdfCanvasContent, m as resolveRelativeDialFilePath, _a as resolveSectionByPath, lt as resolveSkillFileDownloadPath, ut as resolveSkillManifestFileId, $a as resolveTextCanvasContent, se as resolveToolsetCredentialsLevel, Fa as resolveTransferFailureReason, Ia as resolveUploadFailureReason, eo as resolveVisualizerCanvasContent, s as safeDecodeURI, c as safeDecodeURIComponent, tn as sanitizeAnnouncementHtml, nn as sanitizeAnnouncementMessageHtml, Nr as sanitizeFileName, _n as sanitizeFooterHtml, ce as selectToolsetAuthStatus, Uo as selectUsageBannerSource, Bn as serializePromptExport, ji as shouldRerunGenerationOnEdit, hn as shouldWatchForDisplayNameUpdate, qe as skillFileBytesToBlob, Jr as skillFileToAttachment, Je as skillFolderMarkerParent, Pr as splitFileNameExtension, mr as splitProjectConversationId, Ye as startsWithFrontmatterBlock, l as stripSurroundingSlashes, u as stripTrailingSlashes, It as subscribeToolsetLoginSuccess, Te as supportsChatInterface, me as toBaseLocale, jn as toOverlayMessages, bt as toPublishEntityType, N as toPublishRuleDto, Pn as toStage, ss as triggerBrowserDownload, Fr as trimFileNameToByteLimit, va as unionPathSets, Xe as unpackSkillArchive, La as updateEntry, ui as useActiveConversationSync, Ds as useActiveScheduledTaskDetails, qt as useApplicationCredentials, di as useAsyncConfirmDialog, _ as useAttachmentAction, vi as useAttachmentUpload, C as useAttachmentValidation, jt as useCatalogEditNavigation, Pt as useCatalogItemDetails, Kt as useCatalogToolsetCredentials, Ao as useChatSettingsFormConfig, fi as useConversationComposerDraft, ds as useConversationDiscovery, wi as useConversationExport, Ii as useConversationHandlers, Li as useConversationImport, pi as useConversationLookupMaps, hi as useConversationPanelItems, Ri as useConversationScroll, Ui as useConversationSources, Hi as useConversationStream, ks as useConversationTitleEnrichmentController, Ar as useCreateProject, Is as useDeploymentChangeTracking, Jo as useDeploymentUsageLimits, mo as useDialFileListing, yo as useDialFileManager, bo as useDialFileManagerSections, xo as useDialFileManagerTabConfig, ho as useDialFileMetadata, go as useDialFileMutations, hs as useDialFilePreview, _o as useDialFileSharing, vo as useDialFileUploadBatch, vs as useEntityPreselection, Fs as useExternalServiceLogin, Xt as useFavoriteEntitiesState, ms as useFileAttachmentModalState, So as useFileAttachmentPicker, Ls as useGridEditingScroll, gi as useImportFilePicker, as as useMcpAppHostAdapter, is as useMcpAppHostContext, rs as useMcpAppTools, _i as useMessageSelectionReply, Ln as useOAuthCallbackCompletion, Gr as useOfflineCredentialsAuth, Vr as useOfflineCredentialsGate, Ur as useOfflineCredentialsLogin, os as useOpenMcpAppCanvas, jo as usePageFileDrag, No as usePanelMaxWidth, xs as usePersistedState, kr as useProject, Lr as useProjectActions, Mr as useProjectConversations, Or as useProjects, Zn as usePromptsState, Zt as usePublishFolders, Yo as useRefreshUsageAfterGeneration, jr as useSaveProject, dr as useScheduledTaskRuns, fs as useScheduledTaskSkillDisplayNames, lr as useScheduledTasks, Po as useShareLink, ci as useShareRecipientsCount, oi as useSkillArchiveImport, Jt as useSkillDetailsPanelData, Xr as useSkillEditorLoad, Zr as useSkillEditorSubmit, Qr as useSkillFileActions, ei as useSkillFilePreview, js as useSkillFilePreviewSyncController, ps as useSkillFileSystemPicker, Nt as useSkillItemDetails, ti as useSkillsState, Fo as useToolsMenu, Gt as useToolsetLogin, Si as useTranscribeAudio, es as useUsageData, $o as useUsageLimitBanner, Zo as useUsageLimitBannerDismissal, Mo as useViewportWidth, Jn as validatePromptContent, Yn as validatePromptDescription, Xn as validatePromptName, qr as validateSkillFileBatch, xa as virtualPathToApiPath, Rt as waitForToolsetOAuthResult, ya as withRoutableRootLabels };
|
|
128
|
+
import { UploadBodyEncoding as wa, UploadNetworkError as Ta, createUploadFileWithProgress as Ea } from "./files/create-upload-file-with-progress.js";
|
|
129
|
+
import { buildFromCache as Da, buildSharedSearchScope as Oa, fetchByTab as ka, fetchForSearch as Aa, findFirstSuccessfulCopyMoveItem as ja, mapCorePermissions as Ma, mapFileMetadataToDialFile as Na, mapSearchItem as Pa, mergeCreatedFolderIntoCache as Fa, resolveTransferFailureReason as Ia, resolveUploadFailureReason as La, updateEntry as Ra } from "./files/dial-file-manager-mapping.util.js";
|
|
130
|
+
import { createFilesApiClient as za } from "./files/create-files-api.js";
|
|
131
|
+
import { openAnnotationAttachment as Ba } from "./files/annotation.js";
|
|
132
|
+
import { annotationToOoxmlCanvasContent as Va, annotationToPdfCanvasContent as Ha, clearAttachmentCache as Ua, hasAttachmentTextSource as Wa, referenceAttachmentToPdfCanvasContent as Ga, resolveCodeCanvasContent as Ka, resolveGroupedVisualizerCanvasContent as qa, resolveHtmlCanvasContent as Ja, resolveImageCanvasContent as Ya, resolveJsonCanvasContent as Xa, resolveMarkdownCanvasContent as Za, resolveOoxmlCanvasContent as Qa, resolvePdfCanvasContent as $a, resolveTextCanvasContent as eo, resolveVisualizerCanvasContent as to } from "./files/attachment-canvas.js";
|
|
133
|
+
import { getUrlFileName as no, isExternalSourcePreviewable as ro, resolveExternalSourceContentType as io } from "./files/source-content.js";
|
|
134
|
+
import { annotationToDisplayAttachment as ao, attachmentDtoToDisplayAttachment as oo, attachmentDtosToDisplayAttachments as so } from "./files/attachment-dto-to-display.js";
|
|
135
|
+
import { dialFileToAttachment as co, dialFilesToAttachments as lo, dialFolderPathToAttachment as uo } from "./files/dial-file-to-attachment.js";
|
|
136
|
+
import { DownloadDestinationType as fo } from "./files/download-destination.js";
|
|
137
|
+
import { prepareDownloadDestination as po } from "./files/prepare-download-destination.js";
|
|
138
|
+
import { deriveActionProfile as mo } from "./files/file-manager-variant.js";
|
|
139
|
+
import { useDialFileListing as ho } from "./files/useDialFileListing/useDialFileListing.js";
|
|
140
|
+
import { useDialFileMetadata as go } from "./files/useDialFileMetadata/useDialFileMetadata.js";
|
|
141
|
+
import { useDialFileMutations as _o } from "./files/useDialFileMutations/useDialFileMutations.js";
|
|
142
|
+
import { useDialFileSharing as vo } from "./files/useDialFileSharing/useDialFileSharing.js";
|
|
143
|
+
import { useDialFileUploadBatch as yo } from "./files/useDialFileUploadBatch/useDialFileUploadBatch.js";
|
|
144
|
+
import { useDialFileManager as bo } from "./files/useDialFileManager/useDialFileManager.js";
|
|
145
|
+
import { useDialFileManagerSections as xo } from "./files/useDialFileManagerSections/useDialFileManagerSections.js";
|
|
146
|
+
import { useDialFileManagerTabConfig as So } from "./files/useDialFileManagerTabConfig/useDialFileManagerTabConfig.js";
|
|
147
|
+
import { useFileAttachmentPicker as Co } from "./files/useFileAttachmentPicker/useFileAttachmentPicker.js";
|
|
148
|
+
import { getBrowserTimezone as wo } from "./shared/browser-timezone.js";
|
|
149
|
+
import { isValidAbsoluteUrl as To, isValidFeaturesData as Eo, parseFeaturesData as Do } from "./shared/custom-apps.js";
|
|
150
|
+
import { buildExternalServiceScopeId as Oo, getExternalServiceFallbackName as ko, parseExternalServiceUrl as Ao } from "./shared/external-services.js";
|
|
151
|
+
import { useChatSettingsFormConfig as jo } from "./useChatSettingsFormConfig/useChatSettingsFormConfig.js";
|
|
152
|
+
import { usePageFileDrag as Mo } from "./usePageFileDrag/usePageFileDrag.js";
|
|
153
|
+
import { useViewportWidth as No } from "./useViewportWidth/useViewportWidth.js";
|
|
154
|
+
import { usePanelMaxWidth as Po } from "./usePanelMaxWidth/usePanelMaxWidth.js";
|
|
155
|
+
import { useShareLink as Fo } from "./useShareLink/useShareLink.js";
|
|
156
|
+
import { useToolsMenu as Io } from "./useToolsMenu/useToolsMenu.js";
|
|
157
|
+
import { USAGE_DATA_I18N_KEYS as Lo, mapUsageDataToDashboard as Ro } from "./usage/map-usage-data-to-dashboard.js";
|
|
158
|
+
import { USAGE_MODEL_LIMITS_I18N_KEYS as zo, mapOverallCostLimitsToPeriodStatuses as Bo, mapUserUsageToModelLimits as Vo } from "./usage/map-user-usage-to-model-limits.js";
|
|
159
|
+
import { UsagePeriod as Ho } from "./usage/usage-period.js";
|
|
160
|
+
import { isCappedStat as Uo, selectUsageBannerSource as Wo } from "./usage/usage-banner-source.js";
|
|
161
|
+
import { USAGE_RESET_I18N_KEYS as Go, UsageResetOffsetPolicy as Ko, formatUsageResetShort as qo, formatUsageResetTime as Jo } from "./usage/usage-reset-time.js";
|
|
162
|
+
import { useDeploymentUsageLimits as Yo } from "./usage/useDeploymentUsageLimits/useDeploymentUsageLimits.js";
|
|
163
|
+
import { useRefreshUsageAfterGeneration as Xo } from "./usage/useRefreshUsageAfterGeneration/useRefreshUsageAfterGeneration.js";
|
|
164
|
+
import { resetUsageLimitBannerDismissals as Zo, useUsageLimitBannerDismissal as Qo } from "./usage/useUsageLimitBannerDismissal/useUsageLimitBannerDismissal.js";
|
|
165
|
+
import { USAGE_BANNER_I18N_KEYS as $o, useUsageLimitBanner as es } from "./usage/useUsageLimitBanner/useUsageLimitBanner.js";
|
|
166
|
+
import { useUsageData as ts } from "./usage/useUsageData/useUsageData.js";
|
|
167
|
+
import { McpAppResourceFetchError as ns, createMcpAppsApiClient as rs } from "./mcp-apps/mcp-apps-api-client.js";
|
|
168
|
+
import { useMcpAppTools as is } from "./mcp-apps/useMcpAppTools/useMcpAppTools.js";
|
|
169
|
+
import { useMcpAppHostContext as as } from "./mcp-apps/useMcpAppHostContext/useMcpAppHostContext.js";
|
|
170
|
+
import { useMcpAppHostAdapter as os } from "./mcp-apps/useMcpAppHostAdapter/useMcpAppHostAdapter.js";
|
|
171
|
+
import { useOpenMcpAppCanvas as ss } from "./mcp-apps/useOpenMcpAppCanvas/useOpenMcpAppCanvas.js";
|
|
172
|
+
import { triggerBrowserDownload as cs } from "./files/browser-download.js";
|
|
173
|
+
import { applyActiveScheduledTaskRun as ls, collapseScheduledTaskConversations as us, groupScheduledTaskConversations as ds } from "./conversation/scheduled-task-grouping.js";
|
|
174
|
+
import { useConversationDiscovery as fs } from "./conversation/useConversationDiscovery/useConversationDiscovery.js";
|
|
175
|
+
import { useScheduledTaskSkillDisplayNames as ps } from "./scheduled-task/useScheduledTaskSkillDisplayNames/useScheduledTaskSkillDisplayNames.js";
|
|
176
|
+
import { useSkillFileSystemPicker as ms } from "./skill-editor/useSkillFileSystemPicker/useSkillFileSystemPicker.js";
|
|
177
|
+
import { useFileAttachmentModalState as hs } from "./files/useFileAttachmentModalState/useFileAttachmentModalState.js";
|
|
178
|
+
import { useDialFilePreview as gs } from "./files/useDialFilePreview/useDialFilePreview.js";
|
|
179
|
+
import { EntityPreselectionOutcome as _s, EntityPreselectionSource as vs, useEntityPreselection as ys } from "./conversation/useEntityPreselection/useEntityPreselection.js";
|
|
180
|
+
import { CanvasWidthMode as bs, resolveCanvasWidth as xs } from "./viewport-layout/canvas-width.js";
|
|
181
|
+
import { usePersistedState as Ss } from "./shared/usePersistedState/usePersistedState.js";
|
|
182
|
+
import { ClientGenerationStatus as Cs, createGenerationRegistry as ws } from "./conversation/generation-registry.js";
|
|
183
|
+
import { ActiveScheduledTaskDetailState as Ts, ActiveScheduledTaskStatus as Es, resolveActiveScheduledTask as Ds } from "./scheduled-task/active-scheduled-task.js";
|
|
184
|
+
import { useActiveScheduledTaskDetails as Os } from "./scheduled-task/useActiveScheduledTaskDetails.js";
|
|
185
|
+
import { ConversationTitleRequestEnd as ks, useConversationTitleEnrichmentController as As } from "./conversation/useConversationTitleEnrichmentController.js";
|
|
186
|
+
import { SkillFilePreviewState as js, useSkillFilePreviewSyncController as Ms } from "./skill-editor/useSkillFilePreviewSyncController.js";
|
|
187
|
+
import { ExternalServiceAuthType as Ns, ExternalServiceCredentialsLevel as Ps, ExternalServiceLoginOutcomeType as Fs, useExternalServiceLogin as Is } from "./external-services/useExternalServiceLogin.js";
|
|
188
|
+
import { useDeploymentChangeTracking as Ls } from "./conversation/useDeploymentChangeTracking.js";
|
|
189
|
+
import { useGridEditingScroll as Rs } from "@epam/ai-dial-chat-shared";
|
|
190
|
+
import { SchedulerServiceConsentStatus as zs } from "@epam/ai-dial-chat-api-client";
|
|
191
|
+
export { Ts as ActiveScheduledTaskDetailState, Es as ActiveScheduledTaskStatus, S as AttachmentValidationErrorReason, yi as AudioTranscriptionError, bi as AudioTranscriptionErrorReason, H as AuthenticationType, Ji as COLUMNS_MY_FILES, Yi as COLUMNS_ORGANIZATION, Xi as COLUMNS_SHARED, Zi as CORE_PERMISSION_MAP, bs as CanvasWidthMode, Et as CatalogPrimaryActionType, Cs as ClientGenerationStatus, E as ConversationExportMode, ks as ConversationTitleRequestEnd, D as ConversationTransferErrorCode, O as ConversationTransferWarningCode, Qi as DATE_OPTIONS, _e as DEFAULT_ENTITY_DETAILS_LABELS, on as DEFAULT_GENERATION_CONFLICT_MESSAGE, sn as DEFAULT_GENERATION_PERSISTENCE_ERROR_MESSAGE, Ci as DEFAULT_MAX_ARCHIVE_BYTES, yr as DEFAULT_PROJECT_CONTEXT_ALLOWED_EXTENSIONS, br as DEFAULT_PROJECT_CONTEXT_FILE_MAX_BYTES, xr as DEFAULT_PROJECT_CONTEXT_TOTAL_MAX_BYTES, cn as DEFAULT_STREAM_IDLE_TIMEOUT_MS, $i as DIAL_FILE_MANAGER_SECTION_TABS, Wi as DialFilesApiUploadMode, fo as DownloadDestinationType, A as EXPORT_APP_NAME, _s as EntityPreselectionOutcome, vs as EntityPreselectionSource, k as ExportFileNameKind, Ns as ExternalServiceAuthType, Ps as ExternalServiceCredentialsLevel, Fs as ExternalServiceLoginOutcomeType, Yt as FavoriteEntityType, Gi as FileManagerNotificationReason, Ki as FileNameValidationErrorReason, qi as FileOperationKind, ln as GenerationConflictError, un as GenerationPersistenceError, ns as McpAppResourceFetchError, dt as McpResourceKind, K as OAuthResourceKind, Br as OfflineCredentialsGateStatus, Hr as OfflineCredentialsLoginOutcomeType, Wr as OfflineCredentialsLogoutOutcomeType, ea as PATH_SEPARATOR_REGEXP, Vn as PROMPT_CONTENT_MAX_LENGTH, Hn as PROMPT_COUNTER_ANNOUNCE_THRESHOLD, Un as PROMPT_DESCRIPTION_MAX_LENGTH, Wn as PROMPT_NAME_MAX_LENGTH, Ze as PUBLIC_SKILL_BUCKET, Ir as ProjectActionError, Tr as ProjectFormErrorField, Er as ProjectFormErrorReason, Gn as PromptFieldError, Ee as PromptSource, ta as RESERVED_MARKER_NAME, si as RecipientsCountStatus, je as SKILL_FILE_UPLOAD_MAX_BYTES, Me as SKILL_FOLDER_MARKER, Qe as SKILL_LISTING_MAX_PAGES, $e as SKILL_LISTING_PAGE_SIZE, Ne as SKILL_MANIFEST_FILE, et as SKILL_MANIFEST_MAX_BYTES, Pe as SKILL_TEXT_FIELD_MAX_LENGTHS, Fe as SKILL_UPLOAD_MAX_FILES, Ie as SKILL_UPLOAD_MAX_TOTAL_BYTES, $n as ScheduledTaskTriggerDescriptionKind, zs as SchedulerServiceConsentStatus, ni as SkillArchiveImportErrorKind, ri as SkillArchiveImportStatus, ii as SkillArchiveSelectionRejectionReason, Yr as SkillEditorLoadState, js as SkillFilePreviewState, $r as SkillPreviewErrorKind, tt as SkillSource, dn as StopCompletionError, fn as StreamInterruptedError, pn as StreamUpstreamError, q as TOOLSET_REDIRECT_STATE_KEY, J as ToolsetAuthStatus, Y as ToolsetAuthTypes, X as ToolsetCredentialsLevel, Wt as ToolsetLoginOutcomeType, Z as ToolsetOAuthCallbackQuery, Q as ToolsetOAuthChannelControlType, $ as ToolsetOAuthFailureReason, ee as ToolsetOAuthInitiationResultType, te as ToolsetOAuthResultType, na as UPLOAD_CONCURRENCY, $o as USAGE_BANNER_I18N_KEYS, Lo as USAGE_DATA_I18N_KEYS, zo as USAGE_MODEL_LIMITS_I18N_KEYS, Go as USAGE_RESET_I18N_KEYS, Qn as UnsupportedTriggerReason, wa as UploadBodyEncoding, xi as UploadMimeTypePolicy, Ta as UploadNetworkError, Ho as UsagePeriod, Ko as UsageResetOffsetPolicy, ne as WithLogin, ao as annotationToDisplayAttachment, Va as annotationToOoxmlCanvasContent, Ha as annotationToPdfCanvasContent, tr as apSchedulerDayToJsDay, le as appendLocaleCode, ls as applyActiveScheduledTaskRun, zi as applyChunkToMessages, oo as attachmentDtoToDisplayAttachment, so as attachmentDtosToDisplayAttachments, Ti as attachmentToDto, Ei as attachmentsToDtos, ue as buildAdditionalLocaleOptions, Qt as buildAnnouncementSignature, ft as buildApplicationMcpUrl, P as buildChatCompletionsUrl, pt as buildConnectApi, fr as buildCreateConversationDto, F as buildDeploymentConnectApi, Oo as buildExternalServiceScopeId, Da as buildFromCache, Rn as buildPromptExportEnvelope, zn as buildPromptExportFileName, Oe as buildPromptOverview, Kn as buildPromptPath, U as buildResetFields, I as buildResponsesUrl, ra as buildSharedItemVirtualPath, Oa as buildSharedSearchScope, rt as buildSkillContentTree, Le as buildSkillFilesPayload, Re as buildSkillManifest, ze as buildSkillManifestForSubmit, Be as buildSkillManifestFromFrontmatter, it as buildSkillOverview, zt as buildToolsetAuthorizeUrl, mt as buildToolsetMcpUrl, Kr as checkScheduledTaskAuthSessionError, ai as classifySkillArchiveImportError, Ua as clearAttachmentCache, us as collapseScheduledTaskConversations, de as composeLocalePayload, mn as createChatStreamApi, i as createCsrfMiddleware, Sn as createDeploymentChangedMessage, L as createDeploymentLookup, za as createFilesApiClient, ws as createGenerationRegistry, rs as createMcpAppsApiClient, rn as createMemoryConversationDraftStore, Di as createMessagePair, pr as createProjectsApiClient, M as createPublishApiClient, cr as createScheduledTasksApiClient, a as createUnauthorizedMiddleware, Ea as createUploadFileWithProgress, an as createWebStorageConversationDraftStore, R as decodeDeploymentId, re as decodeToolsetId, fe as decomposeLocalizedFields, mo as deriveActionProfile, xt as deriveAvailableTabIds, li as deriveConversationRowActionState, St as deriveFavoriteItems, er as describeScheduledTaskTrigger, ia as dialCorePathToRelative, co as dialFileToAttachment, lo as dialFilesToAttachments, uo as dialFolderPathToAttachment, h as downloadAttachment, Ft as emitToolsetLoginSuccess, z as encodeDeploymentId, ie as encodeToolsetId, ka as fetchByTab, Aa as fetchForSearch, Ct as filterCatalogItemsBySelector, wt as filterHiddenOwnedItems, B as findDeploymentByIdOrReference, vn as findDeploymentForConversationId, aa as findDialFileByPath, ja as findFirstSuccessfulCopyMoveItem, oa as findFolderByVirtualPath, gn as formatAppVersion, he as formatCalendarDate, w as formatDateYM, T as formatDateYMD, sa as formatOperationFolderName, j as formatQuotedNameList, qo as formatUsageResetShort, Jo as formatUsageResetTime, e as getApiErrorDetails, t as getApiErrorMessage, n as getApiErrorStatus, wo as getBrowserTimezone, Fi as getConversationPath, mi as getConversationSource, ko as getExternalServiceFallbackName, Cn as getFormSchemaToolSyncKey, wn as getLastDeploymentId, Tn as getLastUserMessageToolConfiguration, En as getLatestToolConfiguration, Sr as getMimeTypesForExtensions, yn as getModelIdCandidatesFromConversationId, bn as getModelIdFromConversationId, Dr as getProjectFormError, gt as getPublicCatalogEntityFolderPath, Mn as getQuickAppConversationStarters, qn as getRemainingCharacters, Ot as getRunnerSchemas, Ve as getSkillFieldLengthViolations, Mi as getStarterConversationText, Ni as getStarterDisplayText, Fn as getStarterPopulateText, Pi as getStarterSubmitText, In as getStartersFromSchema, xn as getTimeOfDayGreeting, Dn as getToolConfigurationFromFormSchema, Lt as getToolsetOAuthChannelName, Bt as getToolsetRedirectUri, no as getUrlFileName, ca as getVirtualPathName, ds as groupScheduledTaskConversations, Oi as hasActiveToolConfig, $t as hasAnnouncementContent, Wa as hasAttachmentTextSource, la as hasDialFileWritePermission, ua as hasForbiddenNameSymbols, da as hasSamePaths, en as hasStructuredAnnouncement, o as includesIgnoreCase, Vt as initiateOAuthLogin, ki as isAnswerIncomplete, Vi as isAwaitingGenerationResume, Uo as isCappedStat, r as isConversationNotFoundError, fa as isCopyMoveDuplicateAllowed, kt as isCustomAppSchema, v as isDialFileAcceptType, d as isDialFileId, f as isDialFolderId, g as isDownloadableAttachment, ro as isExternalSourcePreviewable, Ai as isMessageChanged, On as isMessageStreaming, ke as isOrganisationPromptItem, _t as isPublicCatalogEntityId, ae as isPublicToolsetId, At as isQuickAppSchema, pa as isShareActionsAllowed, He as isSkillFolderMarkerPath, To as isValidAbsoluteUrl, Eo as isValidFeaturesData, Ue as isValidSkillRelativePath, nr as jsDayToApSchedulerDay, Ma as mapCorePermissions, ve as mapDeploymentDetailsDtoToEntityDetails, G as mapDeploymentLimitsDtoToCatalogLimits, W as mapDeploymentLimitsToInput, xe as mapDeploymentToCatalogItem, Se as mapDeploymentToolsetCredentials, ye as mapEntityDetailsToCatalogDetails, Na as mapFileMetadataToDialFile, rr as mapFormValuesToCreateBody, ir as mapFormValuesToUpdateBody, Rr as mapOfflineCredentialsResponse, Bo as mapOverallCostLimitsToPeriodStatuses, hr as mapProjectDetailsToViewModel, gr as mapProjectDtoToItem, _r as mapProjectSource, Ae as mapPromptToCatalogItem, vt as mapPublishConversationResultDto, yt as mapPublishHistoryEntryDto, ar as mapScheduledTaskDtoToFormValues, Pa as mapSearchItem, at as mapSkillToCatalogItem, Nn as mapStages, vr as mapStoredContextFiles, be as mapToolsetCredentials, Ce as mapToolsetToCatalogItem, Ro as mapUsageDataToDashboard, Vo as mapUserUsageToModelLimits, Fa as mergeCreatedFolderIntoCache, ur as mergeRunsById, Bi as mergeStages, kn as messageHasStages, y as mimeTypesToAttachmentExtensionLabels, b as mimeTypesToDialFileAcceptTypes, x as mimeTypesToFileAccept, We as nameFromPath, Ht as navigateToolsetOAuthPopup, V as normalizeDeploymentId, zr as normalizeOfflineCredentialsConnectSettings, An as normalizeResponseFormat, Ge as normalizeSkillName, oe as normalizeToolsetId, ma as normalizeVirtualPath, Ba as openAnnotationAttachment, Ut as openToolsetOAuthPopup, ge as padTwoDigits, Ao as parseExternalServiceUrl, Do as parseFeaturesData, ha as parseNewFolderVirtualPath, De as parsePromptResourceUrl, Ke as parseSkillManifest, Mt as parseSkillManifestDocument, nt as parseSkillResourceUrl, Sa as prepareCopyItems, po as prepareDownloadDestination, Ca as prepareMoveRenameItems, or as prepareScheduledTaskCreateBody, sr as prepareScheduledTaskUpdateBody, ot as readSkillFileBytes, st as readSkillFilePreviewBytes, ct as readSkillManifest, Tt as reconcileFilterTopics, Ga as referenceAttachmentToPdfCanvasContent, Zo as resetUsageLimitBannerDismissals, Ds as resolveActiveScheduledTask, Cr as resolveByteLimit, xs as resolveCanvasWidth, Dt as resolveCatalogPrimaryAction, Ka as resolveCodeCanvasContent, we as resolveDeploymentFolder, ba as resolveDialFileApiPath, p as resolveDialFileBucketAndPath, wr as resolveExtensionList, io as resolveExternalSourceContentType, qa as resolveGroupedVisualizerCanvasContent, Ja as resolveHtmlCanvasContent, Ya as resolveImageCanvasContent, Xa as resolveJsonCanvasContent, pe as resolveLocalizedText, Za as resolveMarkdownCanvasContent, ht as resolveMcpResourceKind, Qa as resolveOoxmlCanvasContent, ga as resolveOwnerCoords, $a as resolvePdfCanvasContent, m as resolveRelativeDialFilePath, _a as resolveSectionByPath, lt as resolveSkillFileDownloadPath, ut as resolveSkillManifestFileId, eo as resolveTextCanvasContent, se as resolveToolsetCredentialsLevel, Ia as resolveTransferFailureReason, La as resolveUploadFailureReason, to as resolveVisualizerCanvasContent, s as safeDecodeURI, c as safeDecodeURIComponent, tn as sanitizeAnnouncementHtml, nn as sanitizeAnnouncementMessageHtml, Nr as sanitizeFileName, _n as sanitizeFooterHtml, ce as selectToolsetAuthStatus, Wo as selectUsageBannerSource, Bn as serializePromptExport, ji as shouldRerunGenerationOnEdit, hn as shouldWatchForDisplayNameUpdate, qe as skillFileBytesToBlob, Jr as skillFileToAttachment, Je as skillFolderMarkerParent, Pr as splitFileNameExtension, mr as splitProjectConversationId, Ye as startsWithFrontmatterBlock, l as stripSurroundingSlashes, u as stripTrailingSlashes, It as subscribeToolsetLoginSuccess, Te as supportsChatInterface, me as toBaseLocale, jn as toOverlayMessages, bt as toPublishEntityType, N as toPublishRuleDto, Pn as toStage, cs as triggerBrowserDownload, Fr as trimFileNameToByteLimit, va as unionPathSets, Xe as unpackSkillArchive, Ra as updateEntry, ui as useActiveConversationSync, Os as useActiveScheduledTaskDetails, qt as useApplicationCredentials, di as useAsyncConfirmDialog, _ as useAttachmentAction, vi as useAttachmentUpload, C as useAttachmentValidation, jt as useCatalogEditNavigation, Pt as useCatalogItemDetails, Kt as useCatalogToolsetCredentials, jo as useChatSettingsFormConfig, fi as useConversationComposerDraft, fs as useConversationDiscovery, wi as useConversationExport, Ii as useConversationHandlers, Li as useConversationImport, pi as useConversationLookupMaps, hi as useConversationPanelItems, Ri as useConversationScroll, Ui as useConversationSources, Hi as useConversationStream, As as useConversationTitleEnrichmentController, Ar as useCreateProject, Ls as useDeploymentChangeTracking, Yo as useDeploymentUsageLimits, ho as useDialFileListing, bo as useDialFileManager, xo as useDialFileManagerSections, So as useDialFileManagerTabConfig, go as useDialFileMetadata, _o as useDialFileMutations, gs as useDialFilePreview, vo as useDialFileSharing, yo as useDialFileUploadBatch, ys as useEntityPreselection, Is as useExternalServiceLogin, Xt as useFavoriteEntitiesState, hs as useFileAttachmentModalState, Co as useFileAttachmentPicker, Rs as useGridEditingScroll, gi as useImportFilePicker, os as useMcpAppHostAdapter, as as useMcpAppHostContext, is as useMcpAppTools, _i as useMessageSelectionReply, Ln as useOAuthCallbackCompletion, Gr as useOfflineCredentialsAuth, Vr as useOfflineCredentialsGate, Ur as useOfflineCredentialsLogin, ss as useOpenMcpAppCanvas, Mo as usePageFileDrag, Po as usePanelMaxWidth, Ss as usePersistedState, kr as useProject, Lr as useProjectActions, Mr as useProjectConversations, Or as useProjects, Zn as usePromptsState, Zt as usePublishFolders, Xo as useRefreshUsageAfterGeneration, jr as useSaveProject, dr as useScheduledTaskRuns, ps as useScheduledTaskSkillDisplayNames, lr as useScheduledTasks, Fo as useShareLink, ci as useShareRecipientsCount, oi as useSkillArchiveImport, Jt as useSkillDetailsPanelData, Xr as useSkillEditorLoad, Zr as useSkillEditorSubmit, Qr as useSkillFileActions, ei as useSkillFilePreview, Ms as useSkillFilePreviewSyncController, ms as useSkillFileSystemPicker, Nt as useSkillItemDetails, ti as useSkillsState, Io as useToolsMenu, Gt as useToolsetLogin, Si as useTranscribeAudio, ts as useUsageData, es as useUsageLimitBanner, Qo as useUsageLimitBannerDismissal, No as useViewportWidth, Jn as validatePromptContent, Yn as validatePromptDescription, Xn as validatePromptName, qr as validateSkillFileBatch, xa as virtualPathToApiPath, Rt as waitForToolsetOAuthResult, ya as withRoutableRootLabels };
|
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.3.0-dev.
|
|
4
|
+
"version": "1.3.0-dev.259",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"main": "./index.js",
|
|
@@ -131,7 +131,7 @@
|
|
|
131
131
|
}
|
|
132
132
|
},
|
|
133
133
|
"dependencies": {
|
|
134
|
-
"@epam/ai-dial-chat-api-client": "1.3.0-dev.
|
|
134
|
+
"@epam/ai-dial-chat-api-client": "1.3.0-dev.259",
|
|
135
135
|
"dompurify": "3.4.17",
|
|
136
136
|
"fflate": "^0.8.3",
|
|
137
137
|
"lru-cache": "^10.4.3",
|
|
@@ -140,23 +140,23 @@
|
|
|
140
140
|
},
|
|
141
141
|
"peerDependencies": {
|
|
142
142
|
"react": "^19.2.8",
|
|
143
|
-
"@epam/ai-dial-attachment-canvas": "1.3.0-dev.
|
|
144
|
-
"@epam/ai-dial-attachment-input": "1.3.0-dev.
|
|
145
|
-
"@epam/ai-dial-catalog": "1.3.0-dev.
|
|
146
|
-
"@epam/ai-dial-chat-overlay": "1.3.0-dev.
|
|
147
|
-
"@epam/ai-dial-chat-shared": "1.3.0-dev.
|
|
148
|
-
"@epam/ai-dial-conversation-input": "1.3.0-dev.
|
|
149
|
-
"@epam/ai-dial-mcp-apps": "1.3.0-dev.
|
|
150
|
-
"@epam/ai-dial-projects": "1.3.0-dev.
|
|
151
|
-
"@epam/ai-dial-publish-panel": "1.3.0-dev.
|
|
152
|
-
"@epam/ai-dial-quotations": "1.3.0-dev.
|
|
143
|
+
"@epam/ai-dial-attachment-canvas": "1.3.0-dev.259",
|
|
144
|
+
"@epam/ai-dial-attachment-input": "1.3.0-dev.259",
|
|
145
|
+
"@epam/ai-dial-catalog": "1.3.0-dev.259",
|
|
146
|
+
"@epam/ai-dial-chat-overlay": "1.3.0-dev.259",
|
|
147
|
+
"@epam/ai-dial-chat-shared": "1.3.0-dev.259",
|
|
148
|
+
"@epam/ai-dial-conversation-input": "1.3.0-dev.259",
|
|
149
|
+
"@epam/ai-dial-mcp-apps": "1.3.0-dev.259",
|
|
150
|
+
"@epam/ai-dial-projects": "1.3.0-dev.259",
|
|
151
|
+
"@epam/ai-dial-publish-panel": "1.3.0-dev.259",
|
|
152
|
+
"@epam/ai-dial-quotations": "1.3.0-dev.259",
|
|
153
153
|
"@epam/ai-dial-react-file-manager": "^0.4.0-dev.19",
|
|
154
|
-
"@epam/ai-dial-scheduled-tasks": "1.3.0-dev.
|
|
155
|
-
"@epam/ai-dial-share": "1.3.0-dev.
|
|
156
|
-
"@epam/ai-dial-skill-editor": "1.3.0-dev.
|
|
157
|
-
"@epam/ai-dial-source-panel": "1.3.0-dev.
|
|
154
|
+
"@epam/ai-dial-scheduled-tasks": "1.3.0-dev.259",
|
|
155
|
+
"@epam/ai-dial-share": "1.3.0-dev.259",
|
|
156
|
+
"@epam/ai-dial-skill-editor": "1.3.0-dev.259",
|
|
157
|
+
"@epam/ai-dial-source-panel": "1.3.0-dev.259",
|
|
158
158
|
"@epam/ai-dial-ui-kit": "^0.16.0-dev.56",
|
|
159
|
-
"@epam/ai-dial-usage-dashboard": "1.3.0-dev.
|
|
159
|
+
"@epam/ai-dial-usage-dashboard": "1.3.0-dev.259",
|
|
160
160
|
"@modelcontextprotocol/sdk": "^1.32.1",
|
|
161
161
|
"@epam/pdf-highlighter-kit": "^0.0.19"
|
|
162
162
|
},
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { ProjectWatchEventDto } from '@epam/ai-dial-chat-api-client';
|
|
2
|
+
import { ProjectItem } from '@epam/ai-dial-projects';
|
|
3
|
+
/** The part of a projects watch event the list reacts to. */
|
|
4
|
+
export type ProjectWatchEvent = Pick<ProjectWatchEventDto, 'id' | 'action' | 'timestamp'>;
|
|
5
|
+
/** Returns the payload as a {@link ProjectWatchEvent}, or `undefined` when it is not one. */
|
|
6
|
+
export declare const parseProjectWatchEvent: (payload: unknown) => ProjectWatchEvent | undefined;
|
|
7
|
+
/**
|
|
8
|
+
* Returns the projects after one watch event: a create or update moves the
|
|
9
|
+
* project's `updatedAt` forward (never back), a delete removes it, and an
|
|
10
|
+
* event for an unlisted project is ignored. Returns `items` itself when
|
|
11
|
+
* nothing changed.
|
|
12
|
+
*/
|
|
13
|
+
export declare const applyProjectEvent: (items: ProjectItem[], event: ProjectWatchEvent) => ProjectItem[];
|
|
14
|
+
//# sourceMappingURL=project-events.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-events.d.ts","sourceRoot":"","sources":["../../src/project/project-events.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,oBAAoB,EAC1B,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAE1D,6DAA6D;AAC7D,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAClC,oBAAoB,EACpB,IAAI,GAAG,QAAQ,GAAG,WAAW,CAC9B,CAAC;AAMF,6FAA6F;AAC7F,eAAO,MAAM,sBAAsB,GACjC,SAAS,OAAO,KACf,iBAAiB,GAAG,SAYtB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,GAC5B,OAAO,WAAW,EAAE,EACpB,OAAO,iBAAiB,KACvB,WAAW,EAab,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { ProjectWatchAction as e } from "@epam/ai-dial-chat-api-client";
|
|
2
|
+
//#region src/project/project-events.ts
|
|
3
|
+
var t = new Set(Object.values(e)), n = (e) => {
|
|
4
|
+
if (typeof e != "object" || !e) return;
|
|
5
|
+
let { id: n, action: r, timestamp: i } = e;
|
|
6
|
+
if (typeof n == "string" && typeof r == "string" && t.has(r) && typeof i == "number") return {
|
|
7
|
+
id: n,
|
|
8
|
+
action: r,
|
|
9
|
+
timestamp: i
|
|
10
|
+
};
|
|
11
|
+
}, r = (t, n) => {
|
|
12
|
+
let r = t.findIndex((e) => e.id === n.id);
|
|
13
|
+
if (r < 0) return t;
|
|
14
|
+
if (n.action === e.Delete) return t.filter((e, t) => t !== r);
|
|
15
|
+
let i = t[r];
|
|
16
|
+
if ((i.updatedAt ?? 0) >= n.timestamp) return t;
|
|
17
|
+
let a = [...t];
|
|
18
|
+
return a[r] = {
|
|
19
|
+
...i,
|
|
20
|
+
updatedAt: n.timestamp
|
|
21
|
+
}, a;
|
|
22
|
+
};
|
|
23
|
+
//#endregion
|
|
24
|
+
export { r as applyProjectEvent, n as parseProjectWatchEvent };
|
|
@@ -75,6 +75,11 @@ export interface ProjectsConfiguredClient {
|
|
|
75
75
|
path: string;
|
|
76
76
|
};
|
|
77
77
|
}, options?: RequestInit) => Promise<RawApiResponse>;
|
|
78
|
+
watchProjectsRaw: (request: {
|
|
79
|
+
watchProjectsBodyDto: {
|
|
80
|
+
ids: string[];
|
|
81
|
+
};
|
|
82
|
+
}, options?: RequestInit) => Promise<RawApiResponse>;
|
|
78
83
|
}
|
|
79
84
|
/** Text fields of a project create or edit request. */
|
|
80
85
|
export interface ProjectFields {
|
|
@@ -136,6 +141,8 @@ export interface ProjectsApiClient {
|
|
|
136
141
|
renameProjectConversation: (conversationId: string, newTitle: string) => Promise<RenameConversationResponseDto>;
|
|
137
142
|
deleteProjectConversation: (conversationId: string) => Promise<void>;
|
|
138
143
|
attachToProjectGeneration: (projectId: string, path: string, signal?: AbortSignal) => Promise<ReadableStream<Uint8Array>>;
|
|
144
|
+
/** Opens the SSE stream of changes to the given projects; a host without it gets no live updates. */
|
|
145
|
+
watchProjects?: (ids: string[], signal?: AbortSignal) => Promise<ReadableStream<Uint8Array>>;
|
|
139
146
|
}
|
|
140
147
|
/**
|
|
141
148
|
* Splits a project conversation id `projects/{bucket}/{projectPath…}/conversations/{name}`
|
|
@@ -152,6 +159,6 @@ export declare const buildCreateConversationDto: ({ firstMessage, deploymentId,
|
|
|
152
159
|
* File names travel as JSON fields, positionally paired with `files`,
|
|
153
160
|
* because the BFF never trusts a multipart part's own filename.
|
|
154
161
|
*/
|
|
155
|
-
export declare const createProjectsApiClient: (client: ProjectsConfiguredClient) => ProjectsApiClient
|
|
162
|
+
export declare const createProjectsApiClient: (client: ProjectsConfiguredClient) => Required<ProjectsApiClient>;
|
|
156
163
|
export {};
|
|
157
164
|
//# sourceMappingURL=projects-api-client.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projects-api-client.d.ts","sourceRoot":"","sources":["../../src/project/projects-api-client.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"projects-api-client.d.ts","sourceRoot":"","sources":["../../src/project/projects-api-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -75,6 +75,11 @@ var e = (e) => {
|
|
|
75
75
|
}, ...n(i));
|
|
76
76
|
if (!a.body) throw Error("Attach endpoint returned no response body");
|
|
77
77
|
return a.body;
|
|
78
|
+
},
|
|
79
|
+
watchProjects: async (t, r) => {
|
|
80
|
+
let { raw: i } = await e.watchProjectsRaw({ watchProjectsBodyDto: { ids: t } }, ...n(r));
|
|
81
|
+
if (!i.body) throw Error("Watch endpoint returned no response body");
|
|
82
|
+
return i.body;
|
|
78
83
|
}
|
|
79
84
|
});
|
|
80
85
|
//#endregion
|
|
@@ -2,14 +2,22 @@ import { ProjectItem, ProjectSource } from '@epam/ai-dial-projects';
|
|
|
2
2
|
import { ProjectsApiClient } from './projects-api-client';
|
|
3
3
|
/**
|
|
4
4
|
* Loads the projects the session user can see, mapped to the Projects lib's
|
|
5
|
-
* cards
|
|
6
|
-
* token, so an enabled page is
|
|
7
|
-
* request is aborted on unmount or
|
|
5
|
+
* cards, and keeps them current while mounted. Loading is derived from
|
|
6
|
+
* whether a result answers the current reload token, so an enabled page is
|
|
7
|
+
* loading from its very first render. The request is aborted on unmount or
|
|
8
|
+
* when `enabled` turns false.
|
|
9
|
+
*
|
|
10
|
+
* When the client offers `watchProjects`, a successful load opens one watch
|
|
11
|
+
* stream for the listed projects: an update moves a card's `updatedAt`
|
|
12
|
+
* forward and a delete removes it. A stream that drops is reopened with a
|
|
13
|
+
* bounded backoff and followed by a silent reload, so changes made during
|
|
14
|
+
* the gap are not lost; a watch that cannot be opened at all is not retried
|
|
15
|
+
* for the rest of the visit.
|
|
8
16
|
*
|
|
9
17
|
* @param client - Configured project requests, from `createProjectsApiClient`; it must be referentially stable, because a new object reloads.
|
|
10
18
|
* @param enabled - Whether the page is enabled; no request is sent while `false`.
|
|
11
19
|
*/
|
|
12
|
-
export declare const useProjects: (client: Pick<ProjectsApiClient, "listProjects">, enabled: boolean) => {
|
|
20
|
+
export declare const useProjects: (client: Pick<ProjectsApiClient, "listProjects" | "watchProjects">, enabled: boolean) => {
|
|
13
21
|
projects: ProjectItem[];
|
|
14
22
|
incompleteSources: ProjectSource[];
|
|
15
23
|
isLoading: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-projects.d.ts","sourceRoot":"","sources":["../../src/project/use-projects.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"use-projects.d.ts","sourceRoot":"","sources":["../../src/project/use-projects.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAKzE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAuC/D;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,WAAW,GACtB,QAAQ,IAAI,CAAC,iBAAiB,EAAE,cAAc,GAAG,eAAe,CAAC,EACjE,SAAS,OAAO;;;;;;CAoIjB,CAAC"}
|
package/project/use-projects.js
CHANGED
|
@@ -1,46 +1,111 @@
|
|
|
1
1
|
import { mapProjectDtoToItem as e, mapProjectSource as t } from "./project-mapping.js";
|
|
2
|
-
import {
|
|
2
|
+
import { readSseEvents as n } from "../shared/read-sse-events.js";
|
|
3
|
+
import { applyProjectEvent as r, parseProjectWatchEvent as i } from "./project-events.js";
|
|
4
|
+
import { useCallback as a, useEffect as o, useRef as s, useState as c } from "react";
|
|
3
5
|
//#region src/project/use-projects.ts
|
|
4
|
-
var
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
var l = 1e3, u = [
|
|
7
|
+
1e3,
|
|
8
|
+
2e3,
|
|
9
|
+
4e3,
|
|
10
|
+
8e3,
|
|
11
|
+
16e3
|
|
12
|
+
], d = "\n", f = ({ items: n, incompleteSources: r }, i) => {
|
|
13
|
+
let a = n.map(e);
|
|
14
|
+
return {
|
|
15
|
+
reloadToken: i,
|
|
16
|
+
projects: a,
|
|
17
|
+
incompleteSources: r.map(t),
|
|
18
|
+
hasError: !1,
|
|
19
|
+
watchKey: a.slice(0, l).map(({ id: e }) => e).sort().join(d)
|
|
20
|
+
};
|
|
21
|
+
}, p = (e, t) => {
|
|
22
|
+
let [l, p] = c(0), [m, h] = c(), g = s(!1), _ = s(void 0);
|
|
23
|
+
o(() => {
|
|
24
|
+
if (!t) return;
|
|
8
25
|
let n = new AbortController();
|
|
9
26
|
return (async () => {
|
|
10
27
|
try {
|
|
11
|
-
let
|
|
28
|
+
let t = await e.listProjects(n.signal);
|
|
12
29
|
if (n.signal.aborted) return;
|
|
13
|
-
|
|
14
|
-
reloadToken: s,
|
|
15
|
-
projects: r.map(e),
|
|
16
|
-
incompleteSources: i.map(t),
|
|
17
|
-
hasError: !1
|
|
18
|
-
});
|
|
30
|
+
h(f(t, l));
|
|
19
31
|
} catch {
|
|
20
32
|
if (n.signal.aborted) return;
|
|
21
|
-
|
|
22
|
-
reloadToken:
|
|
33
|
+
h({
|
|
34
|
+
reloadToken: l,
|
|
23
35
|
projects: [],
|
|
24
36
|
incompleteSources: [],
|
|
25
|
-
hasError: !0
|
|
37
|
+
hasError: !0,
|
|
38
|
+
watchKey: ""
|
|
26
39
|
});
|
|
27
40
|
}
|
|
28
41
|
})(), () => n.abort();
|
|
29
42
|
}, [
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
43
|
+
e,
|
|
44
|
+
t,
|
|
45
|
+
l
|
|
46
|
+
]);
|
|
47
|
+
let v = a(async () => {
|
|
48
|
+
_.current?.abort();
|
|
49
|
+
let t = new AbortController();
|
|
50
|
+
_.current = t;
|
|
51
|
+
try {
|
|
52
|
+
let n = await e.listProjects(t.signal);
|
|
53
|
+
if (t.signal.aborted) return;
|
|
54
|
+
h((e) => e == null || e.hasError ? e : f(n, e.reloadToken));
|
|
55
|
+
} catch {}
|
|
56
|
+
}, [e]);
|
|
57
|
+
o(() => () => _.current?.abort(), []);
|
|
58
|
+
let y = m?.reloadToken === l ? m : void 0, b = t ? y?.watchKey ?? "" : "", { watchProjects: x } = e;
|
|
59
|
+
o(() => {
|
|
60
|
+
if (x == null || b === "" || g.current) return;
|
|
61
|
+
let e = b.split(d), t = new AbortController(), a, o = (e) => {
|
|
62
|
+
let n = i(e);
|
|
63
|
+
return n != null && h((e) => {
|
|
64
|
+
if (e == null) return e;
|
|
65
|
+
let t = r(e.projects, n);
|
|
66
|
+
return t === e.projects ? e : {
|
|
67
|
+
...e,
|
|
68
|
+
projects: t
|
|
69
|
+
};
|
|
70
|
+
}), t.signal.aborted;
|
|
71
|
+
}, s = async (r, i) => {
|
|
72
|
+
let a;
|
|
73
|
+
try {
|
|
74
|
+
a = await x(e, t.signal);
|
|
75
|
+
} catch {
|
|
76
|
+
if (t.signal.aborted) return;
|
|
77
|
+
if (!i) {
|
|
78
|
+
g.current = !0;
|
|
79
|
+
return;
|
|
80
|
+
}
|
|
81
|
+
c(r + 1);
|
|
82
|
+
return;
|
|
83
|
+
}
|
|
84
|
+
i && v(), await n(a, o), !t.signal.aborted && c(0);
|
|
85
|
+
}, c = (e) => {
|
|
86
|
+
let t = u[e];
|
|
87
|
+
t == null ? g.current = !0 : a = setTimeout(() => {
|
|
88
|
+
s(e, !0);
|
|
89
|
+
}, t);
|
|
90
|
+
};
|
|
91
|
+
return s(0, !1), () => {
|
|
92
|
+
t.abort(), clearTimeout(a);
|
|
93
|
+
};
|
|
94
|
+
}, [
|
|
95
|
+
x,
|
|
96
|
+
b,
|
|
97
|
+
v
|
|
33
98
|
]);
|
|
34
|
-
let
|
|
35
|
-
|
|
36
|
-
}, [])
|
|
99
|
+
let S = a(() => {
|
|
100
|
+
p((e) => e + 1);
|
|
101
|
+
}, []);
|
|
37
102
|
return {
|
|
38
|
-
projects:
|
|
39
|
-
incompleteSources:
|
|
40
|
-
isLoading:
|
|
41
|
-
hasError:
|
|
42
|
-
retry:
|
|
103
|
+
projects: y?.projects ?? [],
|
|
104
|
+
incompleteSources: y?.incompleteSources ?? [],
|
|
105
|
+
isLoading: t && y == null,
|
|
106
|
+
hasError: y?.hasError ?? !1,
|
|
107
|
+
retry: S
|
|
43
108
|
};
|
|
44
109
|
};
|
|
45
110
|
//#endregion
|
|
46
|
-
export {
|
|
111
|
+
export { p as useProjects };
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Reads a newline-delimited SSE stream, JSON-decoding each `data:` line and
|
|
3
|
+
* passing it to `onEvent`. Stops reading — and always releases the reader —
|
|
4
|
+
* as soon as `onEvent` returns `true`, when the stream ends, or when
|
|
5
|
+
* `reader.read()` rejects (a network error, or the caller aborting the
|
|
6
|
+
* stream's own `AbortSignal`, e.g. on timeout). Malformed lines and
|
|
7
|
+
* non-`data:` lines (comments, keepalives) are skipped silently.
|
|
8
|
+
*/
|
|
9
|
+
export declare const readSseEvents: <TEvent>(stream: ReadableStream<Uint8Array>, onEvent: (event: TEvent) => Promise<boolean> | boolean) => Promise<void>;
|
|
10
|
+
//# sourceMappingURL=read-sse-events.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"read-sse-events.d.ts","sourceRoot":"","sources":["../../src/shared/read-sse-events.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,eAAO,MAAM,aAAa,GAAU,MAAM,EACxC,QAAQ,cAAc,CAAC,UAAU,CAAC,EAClC,SAAS,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,KACrD,OAAO,CAAC,IAAI,CAyCd,CAAC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
//#region src/shared/read-sse-events.ts
|
|
2
|
+
var e = async (e, t) => {
|
|
3
|
+
let n = e.getReader(), r = new TextDecoder(), i = "";
|
|
4
|
+
try {
|
|
5
|
+
for (;;) {
|
|
6
|
+
let { done: e, value: a } = await n.read();
|
|
7
|
+
if (e) break;
|
|
8
|
+
i += r.decode(a, { stream: !0 });
|
|
9
|
+
let o = i.split("\n");
|
|
10
|
+
i = o.pop() ?? "";
|
|
11
|
+
let s = !1;
|
|
12
|
+
for (let e of o) {
|
|
13
|
+
let n = e.trim();
|
|
14
|
+
if (!n.startsWith("data:")) continue;
|
|
15
|
+
let r = n.slice(5).trim(), i;
|
|
16
|
+
try {
|
|
17
|
+
i = JSON.parse(r);
|
|
18
|
+
} catch {
|
|
19
|
+
continue;
|
|
20
|
+
}
|
|
21
|
+
if (await t(i)) {
|
|
22
|
+
s = !0;
|
|
23
|
+
break;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
if (s) break;
|
|
27
|
+
}
|
|
28
|
+
} catch {} finally {
|
|
29
|
+
n.releaseLock();
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
//#endregion
|
|
33
|
+
export { e as readSseEvents };
|