@epam/ai-dial-chat-shared 1.2.0-dev.170 → 1.2.0-dev.173
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/components/TextRefinementField/TextRefinementField.js +54 -52
- package/constants/resizable-fields.js +2 -2
- package/file-manager/DialFileManagerShell/DialFileManagerShell.js +229 -231
- package/file-manager/upload-batch.js +2 -2
- package/file-manager/upload-queue.js +17 -0
- package/file-manager.d.ts +15 -10
- package/file-manager.js +4 -3
- package/index.css +1 -1
- package/index.d.ts +16 -27
- package/index.js +39 -40
- package/package.json +2 -2
- package/file-manager/UploadProgressModal/UploadProgressModal.js +0 -47
|
@@ -1,84 +1,86 @@
|
|
|
1
1
|
import { mergeClasses as e } from "../../utils/merge-class.js";
|
|
2
2
|
import { TextRefinementState as t } from "../../hooks/useTextRefinement.js";
|
|
3
|
-
import {
|
|
4
|
-
import { useRef as
|
|
5
|
-
import { Fragment as
|
|
6
|
-
import { IconSparkles as
|
|
3
|
+
import { CaptionText as n, DIAL_ICON_SIZE as r, DIAL_KIT_ICON_STROKE as i, ElementSize as a, ErrorText as o, GhostButton as s, Label as c, Spinner as l } from "@epam/ai-dial-ui-kit";
|
|
4
|
+
import { useRef as u } from "react";
|
|
5
|
+
import { Fragment as d, jsx as f, jsxs as p } from "react/jsx-runtime";
|
|
6
|
+
import { IconSparkles as m } from "@tabler/icons-react";
|
|
7
7
|
//#region src/components/TextRefinementField/TextRefinementField.tsx
|
|
8
|
-
var
|
|
9
|
-
let
|
|
10
|
-
if (!
|
|
11
|
-
let
|
|
8
|
+
var h = ({ isEnabled: h, fieldId: g, label: _, labelClassName: v, required: y, labels: b, refinement: x, disabled: S, feedbackClassName: C, errorClassName: w, children: T }) => {
|
|
9
|
+
let E = u(null);
|
|
10
|
+
if (!h) return /* @__PURE__ */ f(d, { children: T });
|
|
11
|
+
let D = x.state === t.Error, O = {
|
|
12
12
|
[t.Idle]: "",
|
|
13
|
-
[t.Pending]:
|
|
14
|
-
[t.Success]:
|
|
15
|
-
[t.Restored]:
|
|
16
|
-
[t.Unchanged]:
|
|
13
|
+
[t.Pending]: b?.refinePendingAriaLabel ?? "Refining text",
|
|
14
|
+
[t.Success]: b?.refineSuccessAriaLabel ?? "Text refined. Undo is available.",
|
|
15
|
+
[t.Restored]: b?.refineUndoAriaLabel ?? "Original text restored.",
|
|
16
|
+
[t.Unchanged]: b?.refineUnchangedAriaLabel ?? "No changes were needed.",
|
|
17
17
|
[t.Error]: ""
|
|
18
|
-
}[
|
|
19
|
-
return /* @__PURE__ */
|
|
18
|
+
}[x.state];
|
|
19
|
+
return /* @__PURE__ */ p("div", {
|
|
20
20
|
className: "flex min-w-0 flex-col gap-1",
|
|
21
21
|
role: "group",
|
|
22
|
-
"aria-labelledby":
|
|
23
|
-
"aria-describedby":
|
|
22
|
+
"aria-labelledby": g + "-label",
|
|
23
|
+
"aria-describedby": D ? g + "-refinement-error" : void 0,
|
|
24
24
|
children: [
|
|
25
|
-
/* @__PURE__ */
|
|
25
|
+
/* @__PURE__ */ p("div", {
|
|
26
26
|
className: "flex min-w-0 flex-wrap items-center gap-x-3",
|
|
27
|
-
children: [/* @__PURE__ */
|
|
28
|
-
id:
|
|
29
|
-
htmlFor:
|
|
30
|
-
className:
|
|
31
|
-
label:
|
|
32
|
-
required:
|
|
33
|
-
}), /* @__PURE__ */
|
|
34
|
-
ref:
|
|
27
|
+
children: [/* @__PURE__ */ f(c, {
|
|
28
|
+
id: g + "-label",
|
|
29
|
+
htmlFor: g,
|
|
30
|
+
className: v,
|
|
31
|
+
label: _,
|
|
32
|
+
required: y
|
|
33
|
+
}), /* @__PURE__ */ p("div", {
|
|
34
|
+
ref: E,
|
|
35
35
|
className: "ms-auto flex min-w-0 flex-wrap items-center",
|
|
36
|
-
children: [/* @__PURE__ */
|
|
37
|
-
size:
|
|
38
|
-
label:
|
|
39
|
-
disabled:
|
|
36
|
+
children: [/* @__PURE__ */ f(s, {
|
|
37
|
+
size: a.Small,
|
|
38
|
+
label: b?.refineWithAiLabel ?? "Refine with AI",
|
|
39
|
+
disabled: S || !x.canRefine,
|
|
40
40
|
onClick: () => {
|
|
41
|
-
|
|
41
|
+
x.refine();
|
|
42
42
|
},
|
|
43
|
-
iconBefore:
|
|
43
|
+
iconBefore: x.isPending ? /* @__PURE__ */ f("span", {
|
|
44
44
|
"aria-hidden": !0,
|
|
45
|
-
children: /* @__PURE__ */
|
|
46
|
-
size:
|
|
45
|
+
children: /* @__PURE__ */ f(l, {
|
|
46
|
+
size: r.SM,
|
|
47
47
|
ariaLabel: ""
|
|
48
48
|
})
|
|
49
|
-
}) : /* @__PURE__ */
|
|
50
|
-
size:
|
|
51
|
-
stroke:
|
|
49
|
+
}) : /* @__PURE__ */ f(m, {
|
|
50
|
+
size: r.SM,
|
|
51
|
+
stroke: i,
|
|
52
52
|
"aria-hidden": !0
|
|
53
53
|
})
|
|
54
|
-
}),
|
|
55
|
-
size:
|
|
56
|
-
label:
|
|
57
|
-
disabled:
|
|
54
|
+
}), x.canUndo && /* @__PURE__ */ f(s, {
|
|
55
|
+
size: a.Small,
|
|
56
|
+
label: b?.refineUndoLabel ?? "Undo",
|
|
57
|
+
disabled: S,
|
|
58
58
|
onClick: () => {
|
|
59
|
-
|
|
59
|
+
x.undo(), E.current?.querySelector("button")?.focus();
|
|
60
60
|
}
|
|
61
61
|
})]
|
|
62
62
|
})]
|
|
63
63
|
}),
|
|
64
|
-
/* @__PURE__ */
|
|
65
|
-
"aria-busy":
|
|
66
|
-
children:
|
|
64
|
+
/* @__PURE__ */ f("div", {
|
|
65
|
+
"aria-busy": x.isPending,
|
|
66
|
+
children: T
|
|
67
67
|
}),
|
|
68
|
-
/* @__PURE__ */
|
|
68
|
+
/* @__PURE__ */ f("div", {
|
|
69
69
|
role: "status",
|
|
70
70
|
"aria-live": "polite",
|
|
71
|
-
|
|
72
|
-
|
|
71
|
+
children: /* @__PURE__ */ f(n, {
|
|
72
|
+
text: O,
|
|
73
|
+
className: C
|
|
74
|
+
})
|
|
73
75
|
}),
|
|
74
|
-
|
|
76
|
+
D && /* @__PURE__ */ f(o, {
|
|
75
77
|
role: "alert",
|
|
76
|
-
id:
|
|
77
|
-
className: e(
|
|
78
|
-
text:
|
|
78
|
+
id: g + "-refinement-error",
|
|
79
|
+
className: e(C, w),
|
|
80
|
+
text: b?.refineErrorLabel ?? "Could not refine this text. Please try again."
|
|
79
81
|
})
|
|
80
82
|
]
|
|
81
83
|
});
|
|
82
84
|
};
|
|
83
85
|
//#endregion
|
|
84
|
-
export {
|
|
86
|
+
export { h as TextRefinementField };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
//#region src/constants/resizable-fields.ts
|
|
2
|
-
var e = "max-h-[50vh]", t = "--resizable-field-max-height", n = "[&_.w-md-editor:not(.w-md-editor-fullscreen)]:max-h-[var(--resizable-field-max-height,70vh)]";
|
|
2
|
+
var e = "max-h-[50vh]", t = "--resizable-field-max-height", n = "[&_.w-md-editor:not(.w-md-editor-fullscreen)]:max-h-[var(--resizable-field-max-height,70vh)]", r = "[&_.w-md-editor:not(.w-md-editor-fullscreen)]:!h-[var(--resizable-field-max-height,70vh)] [&_.w-md-editor-bar]:hidden";
|
|
3
3
|
//#endregion
|
|
4
|
-
export { n as MARKDOWN_EDITOR_MAX_HEIGHT_CLASS_NAME, t as RESIZABLE_FIELD_MAX_HEIGHT_CSS_VARIABLE, e as RESIZABLE_TEXTAREA_CLASS_NAME };
|
|
4
|
+
export { r as MARKDOWN_EDITOR_FILL_HEIGHT_CLASS_NAME, n as MARKDOWN_EDITOR_MAX_HEIGHT_CLASS_NAME, t as RESIZABLE_FIELD_MAX_HEIGHT_CSS_VARIABLE, e as RESIZABLE_TEXTAREA_CLASS_NAME };
|
|
@@ -1,309 +1,307 @@
|
|
|
1
1
|
import { DialFileManagerActionProfile as e, DialFileManagerVariant as t } from "../file-manager-variant.js";
|
|
2
2
|
import { getParentFolderPath as ee } from "../path.js";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import { DialFileManager as le, DialFileManagerActions as c, DialFileManagerTabs as ue, GridSelectionMode as de } from "@epam/ai-dial-react-file-manager";
|
|
3
|
+
import { useGridEditingScroll as n } from "../useGridEditingScroll/useGridEditingScroll.js";
|
|
4
|
+
import { OperationLoaderModal as te } from "../OperationLoaderModal/OperationLoaderModal.js";
|
|
5
|
+
import { toUploadQueueItems as ne } from "../upload-queue.js";
|
|
6
|
+
import { NOT_ALLOWED_SYMBOLS_REGEXP as re, PrimaryButton as ie, Spinner as ae, TransferQueue as oe } from "@epam/ai-dial-ui-kit";
|
|
7
|
+
import { memo as r, useCallback as se, useEffect as ce, useMemo as i, useState as le } from "react";
|
|
8
|
+
import { Fragment as ue, jsx as a, jsxs as o } from "react/jsx-runtime";
|
|
9
|
+
import { DialFileManager as de, DialFileManagerActions as s, DialFileManagerTabs as fe, GridSelectionMode as pe } from "@epam/ai-dial-react-file-manager";
|
|
11
10
|
//#region src/file-manager/DialFileManagerShell/DialFileManagerShell.tsx
|
|
12
|
-
var
|
|
11
|
+
var c = (e, t) => {
|
|
13
12
|
if (e.isDownloading) return t.downloadingLabel;
|
|
14
13
|
if (e.isDeleting) return t.deletingLabel;
|
|
15
14
|
if (e.isRenaming && !e.isMoving) return t.renamingLabel;
|
|
16
15
|
if (e.isUnsharing) return t.unsharingLabel;
|
|
17
16
|
if (e.isRemovingAccess) return t.removingAccessLabel;
|
|
18
|
-
},
|
|
19
|
-
let { items:
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
}, [
|
|
23
|
-
let
|
|
17
|
+
}, l = ({ controller: r, labels: l, activeTab: u, tabs: d, onTabChange: f, selectedPaths: p, onSelectedPathsChange: me, variant: he, actionProfile: ge, autoSelectUploadedItems: _e = !1, allowedFileTypes: ve, maxSelectableFileSize: m, oversizedUploadMessage: h, isRowSelectable: g, getDisabledTooltip: ye, unsupportedFileTypeTooltip: be }) => {
|
|
18
|
+
let { items: xe, isLoading: Se, error: Ce, path: _, onPathChange: we, retry: Te, onSearchFiles: Ee, isSearching: v, searchResults: y, clearSearchResults: De, expandedPaths: b, loadedPaths: x, onExpandedPathsChange: S, onFolderPopupPathChange: Oe, folderPopupLoadingPaths: C, onUploadFiles: w, onUploadArchive: T, onValidateUpload: ke, uploadBatchState: E, cancelUpload: D, cancelUploadFile: Ae, clearUploadBatch: O, onCreateFolder: je, onCreateFolderValidate: Me, onDownloadFiles: Ne, isDownloading: k, onDeleteFiles: Pe, isDeleting: Fe, onMoveToFiles: Ie, onRenameValidate: Le, isRenaming: Re, onCopyFiles: ze, isCopying: Be, isMoving: A, cancelCopyMove: Ve, uploadEnabled: j, isNewButtonDisabled: M, disabledNewButtonTooltip: N, visibleColumns: P, dateLocale: F, dateOptions: I, actionLabels: L, sharedWithMeIds: He, sharedByMePaths: R, onUnshareFiles: Ue, isUnsharing: We, onRemoveFilesAccess: Ge, isRemovingAccess: Ke, fileMetadata: z, isFileMetadataLoading: B, onGetInfo: qe, clearMetadata: V } = r, [H, Je] = le(void 0), { handleGridApiChange: Ye, reset: U } = n();
|
|
19
|
+
ce(() => {
|
|
20
|
+
U();
|
|
21
|
+
}, [u, U]);
|
|
22
|
+
let W = i(() => {
|
|
24
23
|
let e = {};
|
|
25
|
-
return
|
|
24
|
+
return s.Download in L && (e[s.Download] = l.downloadLabel), s.Delete in L && (e[s.Delete] = l.deleteLabel), s.Rename in L && (e[s.Rename] = l.renameLabel), s.Copy in L && (e[s.Copy] = l.copyLabel), s.Move in L && (e[s.Move] = l.moveLabel), s.Duplicate in L && (e[s.Duplicate] = l.duplicateLabel), s.Unshare in L && (e[s.Unshare] = l.unshareLabel), s.RemoveAccess in L && (e[s.RemoveAccess] = l.removeAccessLabel), e;
|
|
26
25
|
}, [
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
]),
|
|
37
|
-
...
|
|
38
|
-
[
|
|
39
|
-
} :
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
]),
|
|
44
|
-
if (
|
|
45
|
-
for (let e of
|
|
26
|
+
L,
|
|
27
|
+
l.downloadLabel,
|
|
28
|
+
l.deleteLabel,
|
|
29
|
+
l.renameLabel,
|
|
30
|
+
l.copyLabel,
|
|
31
|
+
l.moveLabel,
|
|
32
|
+
l.duplicateLabel,
|
|
33
|
+
l.unshareLabel,
|
|
34
|
+
l.removeAccessLabel
|
|
35
|
+
]), G = i(() => s.Info in L ? {
|
|
36
|
+
...W,
|
|
37
|
+
[s.Info]: l.infoLabel
|
|
38
|
+
} : W, [
|
|
39
|
+
W,
|
|
40
|
+
L,
|
|
41
|
+
l.infoLabel
|
|
42
|
+
]), K = i(() => {
|
|
43
|
+
if (p.size === 0) return !1;
|
|
44
|
+
for (let e of p) if (!R.has(e)) return !1;
|
|
46
45
|
return !0;
|
|
47
|
-
}, [
|
|
48
|
-
if (
|
|
49
|
-
let { [
|
|
46
|
+
}, [p, R]), q = i(() => {
|
|
47
|
+
if (K) return W;
|
|
48
|
+
let { [s.RemoveAccess]: e, ...t } = W;
|
|
50
49
|
return t;
|
|
51
|
-
}, [
|
|
52
|
-
selectionMode:
|
|
53
|
-
visibleColumns:
|
|
54
|
-
dateLocale:
|
|
55
|
-
dateOptions:
|
|
50
|
+
}, [W, K]), Xe = i(() => ({
|
|
51
|
+
selectionMode: pe.MULTIPLE,
|
|
52
|
+
visibleColumns: P,
|
|
53
|
+
dateLocale: F,
|
|
54
|
+
dateOptions: I,
|
|
56
55
|
additionalGridOptions: {
|
|
57
56
|
domLayout: "normal",
|
|
58
57
|
rowSelection: {
|
|
59
58
|
mode: "multiRow",
|
|
60
|
-
isRowSelectable:
|
|
59
|
+
isRowSelectable: g ?? (() => !0)
|
|
61
60
|
}
|
|
62
61
|
},
|
|
63
|
-
actionLabels:
|
|
62
|
+
actionLabels: G
|
|
64
63
|
}), [
|
|
64
|
+
P,
|
|
65
65
|
F,
|
|
66
66
|
I,
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
actionLabels: G
|
|
67
|
+
G,
|
|
68
|
+
g
|
|
69
|
+
]), Ze = i(() => ({
|
|
70
|
+
header: l.treeHeaderByTab[u],
|
|
71
|
+
tabs: d,
|
|
72
|
+
activeTab: u,
|
|
73
|
+
onTabChange: f,
|
|
74
|
+
expandedPaths: b,
|
|
75
|
+
loadedPaths: x,
|
|
76
|
+
loadingPaths: C,
|
|
77
|
+
onExpandedPathsChange: S,
|
|
78
|
+
actionLabels: W
|
|
80
79
|
}), [
|
|
81
|
-
|
|
82
|
-
f,
|
|
80
|
+
l.treeHeaderByTab,
|
|
83
81
|
d,
|
|
84
|
-
|
|
82
|
+
u,
|
|
83
|
+
f,
|
|
84
|
+
b,
|
|
85
85
|
x,
|
|
86
|
-
S,
|
|
87
|
-
T,
|
|
88
86
|
C,
|
|
89
|
-
|
|
90
|
-
|
|
87
|
+
S,
|
|
88
|
+
W
|
|
89
|
+
]), J = he === t.Standalone && ge === e.Full && u === fe.MyFiles && j, Qe = i(() => ({
|
|
91
90
|
showHiddenFilesToggle: !0,
|
|
92
|
-
hiddenFilesSwitcherLabel:
|
|
93
|
-
showHiddenFilesLabel:
|
|
94
|
-
hideHiddenFilesLabel:
|
|
95
|
-
isNewButtonDisabled:
|
|
96
|
-
disabledNewButtonTooltip:
|
|
91
|
+
hiddenFilesSwitcherLabel: l.hiddenFilesLabel,
|
|
92
|
+
showHiddenFilesLabel: l.showHiddenFilesLabel,
|
|
93
|
+
hideHiddenFilesLabel: l.hideHiddenFilesLabel,
|
|
94
|
+
isNewButtonDisabled: M,
|
|
95
|
+
disabledNewButtonTooltip: N,
|
|
97
96
|
newActions: {
|
|
98
97
|
uploadFiles: {
|
|
99
|
-
label:
|
|
98
|
+
label: l.uploadFilesLabel,
|
|
100
99
|
icon: null
|
|
101
100
|
},
|
|
102
101
|
newFolder: {
|
|
103
|
-
label:
|
|
102
|
+
label: l.newFolderLabel,
|
|
104
103
|
icon: null
|
|
105
104
|
},
|
|
106
|
-
...
|
|
107
|
-
label:
|
|
105
|
+
...J ? { uploadArchive: {
|
|
106
|
+
label: l.uploadArchiveAction,
|
|
108
107
|
icon: null
|
|
109
108
|
} } : {}
|
|
110
109
|
}
|
|
111
110
|
}), [
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
111
|
+
l.hiddenFilesLabel,
|
|
112
|
+
l.showHiddenFilesLabel,
|
|
113
|
+
l.hideHiddenFilesLabel,
|
|
114
|
+
M,
|
|
115
115
|
N,
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
contentRenderer: u.deleteConfirmBody
|
|
116
|
+
l.uploadFilesLabel,
|
|
117
|
+
l.newFolderLabel,
|
|
118
|
+
J,
|
|
119
|
+
l.uploadArchiveAction
|
|
120
|
+
]), $e = i(() => ({
|
|
121
|
+
getSelectionLabel: l.getSelectionLabel,
|
|
122
|
+
actionLabels: q
|
|
123
|
+
}), [l.getSelectionLabel, q]), et = i(() => ({
|
|
124
|
+
cancelLabel: l.deleteCancelLabel,
|
|
125
|
+
confirmLabel: l.deleteConfirmLabel,
|
|
126
|
+
titleRenderer: l.deleteConfirmTitle,
|
|
127
|
+
contentRenderer: l.deleteConfirmBody
|
|
129
128
|
}), [
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
]),
|
|
129
|
+
l.deleteCancelLabel,
|
|
130
|
+
l.deleteConfirmLabel,
|
|
131
|
+
l.deleteConfirmTitle,
|
|
132
|
+
l.deleteConfirmBody
|
|
133
|
+
]), tt = i(() => {
|
|
135
134
|
let e;
|
|
136
|
-
for (let t of
|
|
135
|
+
for (let t of p) {
|
|
137
136
|
let n = ee(t);
|
|
138
137
|
if (e === void 0) e = n;
|
|
139
138
|
else if (e !== n) return;
|
|
140
139
|
}
|
|
141
140
|
return e;
|
|
142
|
-
}, [
|
|
143
|
-
copyLabel:
|
|
144
|
-
moveLabel:
|
|
145
|
-
addFolderLabel:
|
|
146
|
-
hiddenFilesSwitcherLabel:
|
|
147
|
-
getCopyHeader:
|
|
148
|
-
getMoveHeader:
|
|
149
|
-
disabledPathTooltip:
|
|
150
|
-
emptyStateTitle:
|
|
151
|
-
emptyStateDescription:
|
|
152
|
-
sourceFolder:
|
|
153
|
-
destinationFolderPath:
|
|
154
|
-
setDestinationFolderPath:
|
|
155
|
-
filesLoading:
|
|
141
|
+
}, [p]), Y = H != null && C.has(H), X = Y ? H : tt, nt = i(() => ({
|
|
142
|
+
copyLabel: l.copyLabel,
|
|
143
|
+
moveLabel: l.moveLabel,
|
|
144
|
+
addFolderLabel: l.addFolderLabel,
|
|
145
|
+
hiddenFilesSwitcherLabel: l.hiddenFilesSwitcherLabel,
|
|
146
|
+
getCopyHeader: l.getCopyHeader,
|
|
147
|
+
getMoveHeader: l.getMoveHeader,
|
|
148
|
+
disabledPathTooltip: Y ? l.folderPickerLoadingTooltip : l.moveSourceDisabledTooltip,
|
|
149
|
+
emptyStateTitle: l.folderPickerEmptyStateTitle,
|
|
150
|
+
emptyStateDescription: l.folderPickerEmptyStateDescription,
|
|
151
|
+
sourceFolder: X,
|
|
152
|
+
destinationFolderPath: H,
|
|
153
|
+
setDestinationFolderPath: Je,
|
|
154
|
+
filesLoading: Y
|
|
156
155
|
}), [
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
156
|
+
l.copyLabel,
|
|
157
|
+
l.moveLabel,
|
|
158
|
+
l.addFolderLabel,
|
|
159
|
+
l.hiddenFilesSwitcherLabel,
|
|
160
|
+
l.getCopyHeader,
|
|
161
|
+
l.getMoveHeader,
|
|
162
|
+
l.folderPickerLoadingTooltip,
|
|
163
|
+
l.moveSourceDisabledTooltip,
|
|
164
|
+
l.folderPickerEmptyStateTitle,
|
|
165
|
+
l.folderPickerEmptyStateDescription,
|
|
166
|
+
Y,
|
|
167
167
|
X,
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
authorLabel: u.metadataAuthorLabel
|
|
168
|
+
H
|
|
169
|
+
]), rt = se(() => {
|
|
170
|
+
D(), O();
|
|
171
|
+
}, [D, O]), Z = i(() => ne(E?.files ?? []), [E]), it = i(() => ({
|
|
172
|
+
fileMetadata: z,
|
|
173
|
+
loading: B,
|
|
174
|
+
clearMetadata: V,
|
|
175
|
+
header: l.metadataHeader,
|
|
176
|
+
nameLabel: l.metadataNameLabel,
|
|
177
|
+
pathLabel: l.metadataPathLabel,
|
|
178
|
+
modifiedDateLabel: l.metadataModifiedDateLabel,
|
|
179
|
+
sizeLabel: l.metadataSizeLabel,
|
|
180
|
+
authorLabel: l.metadataAuthorLabel
|
|
182
181
|
}), [
|
|
182
|
+
z,
|
|
183
183
|
B,
|
|
184
184
|
V,
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
if (k == null) return "";
|
|
201
|
-
let e = k.files.filter((e) => e.status !== n.Uploading).length;
|
|
202
|
-
return u.getUploadProgressText(e, k.files.length);
|
|
203
|
-
}, [k, u]), $ = a(() => b != null && !y ? {
|
|
204
|
-
title: u.searchEmptyStateTitle,
|
|
185
|
+
l.metadataHeader,
|
|
186
|
+
l.metadataNameLabel,
|
|
187
|
+
l.metadataPathLabel,
|
|
188
|
+
l.metadataModifiedDateLabel,
|
|
189
|
+
l.metadataSizeLabel,
|
|
190
|
+
l.metadataAuthorLabel
|
|
191
|
+
]), Q = c({
|
|
192
|
+
isDownloading: k,
|
|
193
|
+
isDeleting: Fe,
|
|
194
|
+
isRenaming: Re,
|
|
195
|
+
isMoving: A,
|
|
196
|
+
isUnsharing: We,
|
|
197
|
+
isRemovingAccess: Ke
|
|
198
|
+
}, l), $ = i(() => y != null && !v ? {
|
|
199
|
+
title: l.searchEmptyStateTitle,
|
|
205
200
|
description: ""
|
|
206
|
-
} :
|
|
207
|
-
title:
|
|
201
|
+
} : _.split("/").filter(Boolean).length > 1 ? {
|
|
202
|
+
title: l.folderEmptyStateTitle,
|
|
208
203
|
description: ""
|
|
209
|
-
} :
|
|
210
|
-
b,
|
|
204
|
+
} : l.emptyStateByTab[u], [
|
|
211
205
|
y,
|
|
212
206
|
v,
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
207
|
+
_,
|
|
208
|
+
l.searchEmptyStateTitle,
|
|
209
|
+
l.folderEmptyStateTitle,
|
|
210
|
+
l.emptyStateByTab,
|
|
211
|
+
u
|
|
217
212
|
]);
|
|
218
|
-
return /* @__PURE__ */
|
|
219
|
-
|
|
213
|
+
return /* @__PURE__ */ o(ue, { children: [
|
|
214
|
+
Ce == null ? /* @__PURE__ */ o("div", {
|
|
220
215
|
className: "relative flex min-h-0 w-full grow overflow-auto bg-layer-sunken",
|
|
221
|
-
children: [/* @__PURE__ */
|
|
216
|
+
children: [/* @__PURE__ */ a(de, {
|
|
222
217
|
className: "min-h-0 w-full grow bg-layer-sunken",
|
|
223
218
|
gridClassName: "size-full",
|
|
224
|
-
items:
|
|
225
|
-
path:
|
|
226
|
-
onPathChange:
|
|
227
|
-
onGridApiChange:
|
|
228
|
-
filesLoading:
|
|
229
|
-
allowedFileTypes:
|
|
230
|
-
maxSelectableFileSize:
|
|
231
|
-
maxFileSize:
|
|
232
|
-
uploadValidationMessages:
|
|
233
|
-
selectedPaths:
|
|
234
|
-
onSelectedPathsChange:
|
|
219
|
+
items: xe,
|
|
220
|
+
path: _,
|
|
221
|
+
onPathChange: we,
|
|
222
|
+
onGridApiChange: Ye,
|
|
223
|
+
filesLoading: Se,
|
|
224
|
+
allowedFileTypes: ve,
|
|
225
|
+
maxSelectableFileSize: m,
|
|
226
|
+
maxFileSize: m,
|
|
227
|
+
uploadValidationMessages: h == null ? void 0 : { oversizedFiles: h },
|
|
228
|
+
selectedPaths: p,
|
|
229
|
+
onSelectedPathsChange: me,
|
|
235
230
|
navigationPanelOptions: { searchable: !0 },
|
|
236
231
|
hideSearchPathItemName: !0,
|
|
237
|
-
onSearchFiles:
|
|
238
|
-
searchInProgress:
|
|
239
|
-
searchResults:
|
|
240
|
-
clearSearchResults:
|
|
241
|
-
gridOptions:
|
|
242
|
-
treeOptions:
|
|
243
|
-
onFolderPopupPathChange:
|
|
244
|
-
toolbarOptions:
|
|
245
|
-
bulkActionsToolbarOptions:
|
|
246
|
-
autoSelectUploadedItems:
|
|
232
|
+
onSearchFiles: Ee,
|
|
233
|
+
searchInProgress: v,
|
|
234
|
+
searchResults: y ?? [],
|
|
235
|
+
clearSearchResults: De,
|
|
236
|
+
gridOptions: Xe,
|
|
237
|
+
treeOptions: Ze,
|
|
238
|
+
onFolderPopupPathChange: Oe,
|
|
239
|
+
toolbarOptions: Qe,
|
|
240
|
+
bulkActionsToolbarOptions: $e,
|
|
241
|
+
autoSelectUploadedItems: _e,
|
|
247
242
|
emptyStateTitle: $.title,
|
|
248
243
|
emptyStateDescription: $.description,
|
|
249
|
-
uploadEnabled:
|
|
250
|
-
sharedWithMeIds:
|
|
251
|
-
sharedByMePaths:
|
|
252
|
-
onUnshareFiles:
|
|
253
|
-
onRemoveFilesAccess:
|
|
254
|
-
fileMetadataPopupOptions:
|
|
255
|
-
onGetInfo:
|
|
256
|
-
onUploadFiles:
|
|
257
|
-
onUploadArchive:
|
|
258
|
-
onValidateUpload:
|
|
259
|
-
onCreateFolder:
|
|
260
|
-
onCreateFolderValidate:
|
|
261
|
-
onDownloadFiles:
|
|
262
|
-
onDeleteFiles:
|
|
263
|
-
onMoveToFiles:
|
|
264
|
-
onCopyFiles:
|
|
265
|
-
onRenameValidate:
|
|
266
|
-
renameValidationMessages:
|
|
267
|
-
isRenameFileAvailable:
|
|
268
|
-
deleteConfirmationOptions:
|
|
269
|
-
conflictResolutionPopupOptions:
|
|
270
|
-
destinationFolderPopupOptions:
|
|
271
|
-
forbiddenSymbolsRegExp:
|
|
272
|
-
forbiddenSymbolsTooltip:
|
|
273
|
-
getDisabledTooltip:
|
|
274
|
-
unsupportedFileTypeTooltip:
|
|
275
|
-
}), Q != null && /* @__PURE__ */
|
|
244
|
+
uploadEnabled: j,
|
|
245
|
+
sharedWithMeIds: He,
|
|
246
|
+
sharedByMePaths: R,
|
|
247
|
+
onUnshareFiles: Ue,
|
|
248
|
+
onRemoveFilesAccess: Ge,
|
|
249
|
+
fileMetadataPopupOptions: it,
|
|
250
|
+
onGetInfo: qe,
|
|
251
|
+
onUploadFiles: w,
|
|
252
|
+
onUploadArchive: T,
|
|
253
|
+
onValidateUpload: ke,
|
|
254
|
+
onCreateFolder: je,
|
|
255
|
+
onCreateFolderValidate: Me,
|
|
256
|
+
onDownloadFiles: Ne,
|
|
257
|
+
onDeleteFiles: Pe,
|
|
258
|
+
onMoveToFiles: Ie,
|
|
259
|
+
onCopyFiles: ze,
|
|
260
|
+
onRenameValidate: Le,
|
|
261
|
+
renameValidationMessages: l.renameValidationMessages,
|
|
262
|
+
isRenameFileAvailable: j,
|
|
263
|
+
deleteConfirmationOptions: et,
|
|
264
|
+
conflictResolutionPopupOptions: l.conflictResolutionPopupOptions,
|
|
265
|
+
destinationFolderPopupOptions: nt,
|
|
266
|
+
forbiddenSymbolsRegExp: re,
|
|
267
|
+
forbiddenSymbolsTooltip: l.forbiddenSymbolsTooltip,
|
|
268
|
+
getDisabledTooltip: ye,
|
|
269
|
+
unsupportedFileTypeTooltip: be
|
|
270
|
+
}), Q != null && /* @__PURE__ */ a("div", {
|
|
276
271
|
"aria-live": "polite",
|
|
277
272
|
className: "absolute inset-0 z-[52] flex items-center justify-center bg-backdrop desktop:p-4",
|
|
278
|
-
children: /* @__PURE__ */
|
|
273
|
+
children: /* @__PURE__ */ a(ae, {
|
|
279
274
|
size: 32,
|
|
280
275
|
fullWidth: !1,
|
|
281
276
|
ariaLabel: Q
|
|
282
277
|
})
|
|
283
278
|
})]
|
|
284
|
-
}) : /* @__PURE__ */
|
|
279
|
+
}) : /* @__PURE__ */ o("div", {
|
|
285
280
|
role: "alert",
|
|
286
281
|
className: "flex flex-col items-center gap-4 p-6",
|
|
287
|
-
children: [/* @__PURE__ */
|
|
288
|
-
label:
|
|
289
|
-
onClick:
|
|
282
|
+
children: [/* @__PURE__ */ a("p", { children: l.errorMessage }), /* @__PURE__ */ a(ie, {
|
|
283
|
+
label: l.retryLabel,
|
|
284
|
+
onClick: Te
|
|
290
285
|
})]
|
|
291
286
|
}),
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
287
|
+
/* @__PURE__ */ a("div", {
|
|
288
|
+
className: "fixed bottom-4 end-4 z-[70]",
|
|
289
|
+
children: /* @__PURE__ */ a(oe, {
|
|
290
|
+
title: l.getUploadQueueTitle(Z.length),
|
|
291
|
+
items: Z,
|
|
292
|
+
onClose: rt,
|
|
293
|
+
onCancelItem: Ae,
|
|
294
|
+
labels: l.uploadQueueLabels
|
|
295
|
+
})
|
|
298
296
|
}),
|
|
299
|
-
(
|
|
300
|
-
title:
|
|
301
|
-
text:
|
|
302
|
-
cancelLabel:
|
|
303
|
-
onCancel:
|
|
297
|
+
(Be || A) && /* @__PURE__ */ a(te, {
|
|
298
|
+
title: A ? l.operationLoaderMoveTitle : l.operationLoaderCopyTitle,
|
|
299
|
+
text: A ? l.movingLabel : l.copyingLabel,
|
|
300
|
+
cancelLabel: l.operationLoaderCancelLabel,
|
|
301
|
+
onCancel: Ve
|
|
304
302
|
})
|
|
305
303
|
] });
|
|
306
304
|
};
|
|
307
|
-
|
|
305
|
+
r(l);
|
|
308
306
|
//#endregion
|
|
309
|
-
export {
|
|
307
|
+
export { l as DialFileManagerShell };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
//#region src/file-manager/upload-batch.ts
|
|
2
2
|
var e = /* @__PURE__ */ function(e) {
|
|
3
3
|
return e.Queued = "queued", e.Uploading = "uploading", e.Completed = "completed", e.Failed = "failed", e.Cancelled = "cancelled", e;
|
|
4
|
-
}({});
|
|
4
|
+
}({}), t = (e) => e?.files.some((e) => e.status === "queued" || e.status === "uploading") ?? !1;
|
|
5
5
|
//#endregion
|
|
6
|
-
export { e as FileUploadStatus };
|
|
6
|
+
export { e as FileUploadStatus, t as isUploadInProgress };
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { FileUploadStatus as e } from "./upload-batch.js";
|
|
2
|
+
import { TransferQueueItemStatus as t } from "@epam/ai-dial-ui-kit";
|
|
3
|
+
//#region src/file-manager/upload-queue.ts
|
|
4
|
+
var n = {
|
|
5
|
+
[e.Queued]: t.InProgress,
|
|
6
|
+
[e.Uploading]: t.InProgress,
|
|
7
|
+
[e.Completed]: t.Success,
|
|
8
|
+
[e.Failed]: t.Failed,
|
|
9
|
+
[e.Cancelled]: t.Canceled
|
|
10
|
+
}, r = (e) => e.map((e) => ({
|
|
11
|
+
id: e.id,
|
|
12
|
+
name: e.name,
|
|
13
|
+
status: n[e.status],
|
|
14
|
+
percent: e.percent
|
|
15
|
+
}));
|
|
16
|
+
//#endregion
|
|
17
|
+
export { r as toUploadQueueItems };
|
package/file-manager.d.ts
CHANGED
|
@@ -13,6 +13,8 @@ import { FileManagerColumnKey } from '@epam/ai-dial-react-file-manager';
|
|
|
13
13
|
import { FileManagerGridRow } from '@epam/ai-dial-react-file-manager';
|
|
14
14
|
import { FileTreeOptions } from '@epam/ai-dial-react-file-manager';
|
|
15
15
|
import { ReactNode } from 'react';
|
|
16
|
+
import { TransferQueueItem } from '@epam/ai-dial-ui-kit';
|
|
17
|
+
import { TransferQueueLabels } from '@epam/ai-dial-ui-kit';
|
|
16
18
|
|
|
17
19
|
/** Result returned by the file-manager attach modal when the user confirms a selection. */
|
|
18
20
|
declare interface AttachResult {
|
|
@@ -122,12 +124,10 @@ declare interface DialFileManagerShellLabels {
|
|
|
122
124
|
deleteConfirmLabel: string;
|
|
123
125
|
/** Cancel-button label in the delete confirmation dialog. */
|
|
124
126
|
deleteCancelLabel: string;
|
|
125
|
-
/**
|
|
126
|
-
|
|
127
|
-
/**
|
|
128
|
-
|
|
129
|
-
/** Returns upload progress text (e.g. "3 of 5 uploaded"). */
|
|
130
|
-
getUploadProgressText: (done: number, total: number) => string;
|
|
127
|
+
/** Returns the upload queue heading for the number of files in it (e.g. "Uploading 5 files"). */
|
|
128
|
+
getUploadQueueTitle: (count: number) => string;
|
|
129
|
+
/** Translated strings for the upload `TransferQueue`; unset ones fall back to the kit's English defaults. */
|
|
130
|
+
uploadQueueLabels?: Partial<TransferQueueLabels>;
|
|
131
131
|
/** Empty-state title when a search yields no results. */
|
|
132
132
|
searchEmptyStateTitle: string;
|
|
133
133
|
/** Empty-state title for an empty subfolder. */
|
|
@@ -372,7 +372,9 @@ declare interface FileManagerController {
|
|
|
372
372
|
uploadBatchState: FileUploadBatchState | null;
|
|
373
373
|
/** Upload: abort all in-flight and queued uploads. */
|
|
374
374
|
cancelUpload: () => void;
|
|
375
|
-
/** Upload:
|
|
375
|
+
/** Upload: abort one queued or in-flight upload by its entry id. */
|
|
376
|
+
cancelUploadFile: (id: string) => void;
|
|
377
|
+
/** Upload: empty the upload queue. */
|
|
376
378
|
clearUploadBatch: () => void;
|
|
377
379
|
/** Folder creation: called when user confirms a new folder name. */
|
|
378
380
|
onCreateFolder: (file: DialUploadFileItem, folderPath: string, fileId: string) => Promise<void>;
|
|
@@ -452,11 +454,11 @@ declare interface FileManagerSelectableNode {
|
|
|
452
454
|
contentLength?: number;
|
|
453
455
|
}
|
|
454
456
|
|
|
455
|
-
/** State of
|
|
457
|
+
/** State of the upload queue, as returned by `useDialFileUploadBatch`. */
|
|
456
458
|
declare interface FileUploadBatchState {
|
|
457
|
-
/**
|
|
459
|
+
/** Every file uploaded since the queue was last cleared, settled ones included. */
|
|
458
460
|
files: FileUploadEntry[];
|
|
459
|
-
/** Whether the upload
|
|
461
|
+
/** Whether the upload queue should be visible. */
|
|
460
462
|
isOpen: boolean;
|
|
461
463
|
}
|
|
462
464
|
|
|
@@ -492,4 +494,7 @@ declare interface FileUploadValidationResult {
|
|
|
492
494
|
/** Validation messages shown during inline rename editing. */
|
|
493
495
|
declare type RenameValidationMessages = NonNullable<DialFileManagerComponentProps['renameValidationMessages']>;
|
|
494
496
|
|
|
497
|
+
/** Maps upload entries onto the UI kit's `TransferQueue` rows. */
|
|
498
|
+
export declare const toUploadQueueItems: (files: FileUploadEntry[]) => TransferQueueItem[];
|
|
499
|
+
|
|
495
500
|
export { }
|
package/file-manager.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
|
|
1
|
+
import { toUploadQueueItems as e } from "./file-manager/upload-queue.js";
|
|
2
|
+
import { DialFileManagerShell as t } from "./file-manager/DialFileManagerShell/DialFileManagerShell.js";
|
|
3
|
+
import { FileManagerAttachModal as n } from "./file-manager/FileManagerAttachModal/FileManagerAttachModal.js";
|
|
4
|
+
export { t as DialFileManagerShell, n as FileManagerAttachModal, e as toUploadQueueItems };
|
package/index.css
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
._agentIconBadge_1ger8_1{background:var(--di-icon-bg,var(--bg-layer-sunken,#eef1f7))}._badge_1ko75_1{background:var(--ia-bg,var(--bg-visual-green-1,#cde8e5))}._initials_1ko75_5{color:var(--ia-fg,var(--text-visual-green-2,#0d6e72))}._title_11w3i_1{color:var(--ih-title-color,var(--text-primary,#161b2d))}._count_11w3i_5{color:var(--ih-count-color,var(--text-secondary,#57647a))}._container_sqe5k_1{background:var(--cm-code-block-bg,var(--bg-layer-raised,#fcfcfc));border-color:var(--cm-code-block-border,var(--stroke-secondary,#d1dbea))}._containerLight_sqe5k_6{background:var(--cm-code-block-bg,var(--bg-layer-raised,#fcfcfc))}._header_sqe5k_10{background:var(--cm-code-block-header-bg,var(--bg-layer-raised,#fcfcfc));border-color:var(--cm-code-block-border,var(--stroke-secondary,#d1dbea))}._languageLabel_sqe5k_15{color:var(--cm-code-block-language,var(--text-secondary,#57647a))}._copiedIcon_sqe5k_19{color:var(--cm-code-block-copied,var(--text-success,#007274))}._scrollContainer_sqe5k_23 .token.table,._scrollContainer_sqe5k_23 .token.table-header-row,._scrollContainer_sqe5k_23 .token.table-line,._scrollContainer_sqe5k_23 .token.table-data-rows{display:inline}._scrollContainer_sqe5k_23{scrollbar-width:thin;scrollbar-color:var(--cm-code-block-scrollbar,var(--stroke-primary,#57647a)) transparent}._scrollContainer_sqe5k_23::-webkit-scrollbar{width:4px;height:4px}._scrollContainer_sqe5k_23::-webkit-scrollbar-track{background-color:#0000}._scrollContainer_sqe5k_23::-webkit-scrollbar-thumb{background-color:var(--cm-code-block-scrollbar,var(--stroke-primary,#57647a));border-radius:4px}@keyframes _cm-shimmer_1g29w_1{0%{background-position:200%}to{background-position:-200%}}._thinking_1g29w_9{background:linear-gradient(270deg, var(--cm-thinking-inverted,var(--text-primary,#161b2d)) 0%, var(--cm-thinking-secondary,var(--text-secondary,#57647a)) 40%, var(--cm-thinking-inverted,var(--text-primary,#161b2d)) 80%);color:#0000;background-size:200%;-webkit-background-clip:text;background-clip:text;animation:2s linear infinite _cm-shimmer_1g29w_1}._h6_1g29w_18{color:var(--cm-h6-text,var(--text-secondary,#57647a))}._codeInline_1g29w_22{background:var(--cm-code-inline-bg,var(--bg-layer-raised,#fcfcfc));color:var(--cm-code-inline-text,var(--text-primary,#161b2d))}._secondaryBorder_1g29w_27{border-color:var(--cm-markdown-border,var(--stroke-secondary,#d1dbea))}._blockquote_1g29w_31{border-color:var(--cm-blockquote-border,var(--stroke-primary,#57647a));color:var(--cm-blockquote-text,var(--text-secondary,#57647a))}._link_1g29w_36{color:var(--cm-link-text,var(--text-accent,#1d4ed8))}._link_1g29w_36:focus-visible{outline-color:var(--cm-link-focus,var(--stroke-focus-black,#161b2d))}._scrollContainer_1f433_1{scrollbar-width:thin;scrollbar-color:var(--cm-math-scrollbar,var(--stroke-primary,#57647a)) transparent}._scrollContainer_1f433_1::-webkit-scrollbar{height:4px}._scrollContainer_1f433_1::-webkit-scrollbar-track{background-color:#0000}._scrollContainer_1f433_1::-webkit-scrollbar-thumb{background-color:var(--cm-math-scrollbar,var(--stroke-primary,#57647a));border-radius:4px}._scrollContainer_1f433_1:focus-visible{outline:1px solid var(--cm-math-focus,var(--stroke-focus-black,#161b2d));outline-offset:2px}._mathContent_1f433_24{width:max-content;min-width:100%;display:block}._tableContainer_1fwnj_1{background:var(--cm-code-block-bg,var(--bg-layer-raised,#fcfcfc));border-color:var(--cm-markdown-border,var(--cm-code-block-border,var(--stroke-secondary,#d1dbea)))}._tableContainerLight_1fwnj_6{background:var(--cm-code-block-bg,var(--bg-layer-base,#f5f7fa))}._copiedIcon_1fwnj_10{color:var(--cm-code-block-copied,var(--text-success,#007274))}._scrollContainer_1fwnj_14{scrollbar-width:thin;scrollbar-color:var(--cm-table-scrollbar,var(--stroke-primary,#57647a)) transparent}._scrollContainer_1fwnj_14::-webkit-scrollbar{width:4px;height:4px}._scrollContainer_1fwnj_14::-webkit-scrollbar-track{background-color:#0000}._scrollContainer_1fwnj_14::-webkit-scrollbar-thumb{background-color:var(--cm-table-scrollbar,var(--stroke-primary,#57647a));border-radius:4px}._tableHeaderCell_1fwnj_30{background:var(--cm-code-block-header-bg,var(--bg-layer-raised,#fcfcfc));height:3rem;color:var(--cm-table-header-text,var(--text-secondary,#57647a))}._sectionRow_1fwnj_37 td{background:var(--cm-code-block-header-bg,var(--bg-layer-raised,#fcfcfc))}._rowDivider_1fwnj_41{border-block-end:.5px solid var(--cm-table-row-divider,var(--stroke-tertiary,#e0e6f0))}tbody ._row_1fwnj_41:hover td{background:var(--cm-table-row-hover-bg,var(--bg-control-accent-alpha-hover,#2764d924))}._tableScrollFadeEnd_1fwnj_51{-webkit-mask-image:linear-gradient(to right, var(--cm-table-fade,var(--stroke-focus-black,#161b2d)) 0, var(--cm-table-fade,var(--stroke-focus-black,#161b2d)) calc(100% - 1rem), transparent 100%);-webkit-mask-image:linear-gradient(to right, var(--cm-table-fade,var(--stroke-focus-black,#161b2d)) 0, var(--cm-table-fade,var(--stroke-focus-black,#161b2d)) calc(100% - 1rem), transparent 100%);mask-image:linear-gradient(to right, var(--cm-table-fade,var(--stroke-focus-black,#161b2d)) 0, var(--cm-table-fade,var(--stroke-focus-black,#161b2d)) calc(100% - 1rem), transparent 100%)}[dir=rtl] ._tableScrollFadeEnd_1fwnj_51{-webkit-mask-image:linear-gradient(to left, var(--cm-table-fade,var(--stroke-focus-black,#161b2d)) 0, var(--cm-table-fade,var(--stroke-focus-black,#161b2d)) calc(100% - 1rem), transparent 100%);-webkit-mask-image:linear-gradient(to left, var(--cm-table-fade,var(--stroke-focus-black,#161b2d)) 0, var(--cm-table-fade,var(--stroke-focus-black,#161b2d)) calc(100% - 1rem), transparent 100%);mask-image:linear-gradient(to left, var(--cm-table-fade,var(--stroke-focus-black,#161b2d)) 0, var(--cm-table-fade,var(--stroke-focus-black,#161b2d)) calc(100% - 1rem), transparent 100%)}._tableScrollFadeStart_1fwnj_59{-webkit-mask-image:linear-gradient(to right, transparent 0, var(--cm-table-fade,var(--stroke-focus-black,#161b2d)) 1rem, var(--cm-table-fade,var(--stroke-focus-black,#161b2d)) 100%);-webkit-mask-image:linear-gradient(to right, transparent 0, var(--cm-table-fade,var(--stroke-focus-black,#161b2d)) 1rem, var(--cm-table-fade,var(--stroke-focus-black,#161b2d)) 100%);mask-image:linear-gradient(to right, transparent 0, var(--cm-table-fade,var(--stroke-focus-black,#161b2d)) 1rem, var(--cm-table-fade,var(--stroke-focus-black,#161b2d)) 100%)}[dir=rtl] ._tableScrollFadeStart_1fwnj_59{-webkit-mask-image:linear-gradient(to left, transparent 0, var(--cm-table-fade,var(--stroke-focus-black,#161b2d)) 1rem, var(--cm-table-fade,var(--stroke-focus-black,#161b2d)) 100%);-webkit-mask-image:linear-gradient(to left, transparent 0, var(--cm-table-fade,var(--stroke-focus-black,#161b2d)) 1rem, var(--cm-table-fade,var(--stroke-focus-black,#161b2d)) 100%);mask-image:linear-gradient(to left, transparent 0, var(--cm-table-fade,var(--stroke-focus-black,#161b2d)) 1rem, var(--cm-table-fade,var(--stroke-focus-black,#161b2d)) 100%)}._tableScrollFadeBoth_1fwnj_67{-webkit-mask-image:linear-gradient(to right, transparent 0, var(--cm-table-fade,var(--stroke-focus-black,#161b2d)) 1rem, var(--cm-table-fade,var(--stroke-focus-black,#161b2d)) calc(100% - 1rem), transparent 100%);-webkit-mask-image:linear-gradient(to right, transparent 0, var(--cm-table-fade,var(--stroke-focus-black,#161b2d)) 1rem, var(--cm-table-fade,var(--stroke-focus-black,#161b2d)) calc(100% - 1rem), transparent 100%);mask-image:linear-gradient(to right, transparent 0, var(--cm-table-fade,var(--stroke-focus-black,#161b2d)) 1rem, var(--cm-table-fade,var(--stroke-focus-black,#161b2d)) calc(100% - 1rem), transparent 100%)}._tableHeader_1qvg8_1{background:var(--cm-code-block-header-bg,var(--bg-layer-raised,#fcfcfc));border-color:var(--cm-markdown-border,var(--cm-code-block-border,var(--stroke-secondary,#d1dbea)))}._label_12p89_1{color:var(--pes-label-color,var(--text-primary,#161b2d))}._row_1csuq_1{border-color:var(--rs-border,var(--stroke-tertiary,#e0e6f0));background:var(--rs-bg,var(--bg-layer-sunken,#eef1f7))}._versionTag_1csuq_7{border-color:var(--rs-version-tag-border,var(--stroke-tertiary,#e0e6f0))!important;background:var(--rs-version-tag-bg,var(--bg-control-accent-alpha,#2764d90f))!important;color:var(--rs-version-tag-text,var(--text-accent,#1d4ed8))!important}
|
|
2
|
-
/*$vite$:1*/.sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border-width:0;white-space:nowrap}.visible{visibility:visible}.invisible{visibility:hidden}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.end-0{inset-inline-end:0}.end-2{inset-inline-end:.5rem}.top-0{top:0}.top-2{top:.5rem}.top-\[-6px\]{top:-6px}.z-10{z-index:10}.z-\[2\]{z-index:2}.z-\[52\]{z-index:52}.mx-0{margin-left:0;margin-right:0}.mx-0\.5{margin-left:.125rem;margin-right:.125rem}.my-4{margin-bottom:1rem;margin-top:1rem}.my-5{margin-bottom:1.25rem;margin-top:1.25rem}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.me-1{margin-inline-end:.25rem}.me-1\.5{margin-inline-end:.375rem}.ms-auto{margin-inline-start:auto}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-auto{margin-top:auto}.block{display:block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.size-full{height:100%;width:100%}.\!h-\[min\(800px\2c 100dvh\)\]{height:min(800px,100dvh)!important}.\!h-fit{height:-moz-fit-content!important;height:fit-content!important}.h-0{height:0}.h-\[24px\]{height:24px}.h-full{height:100%}.\!max-h-full{max-height:100%!important}.max-h-\[344px\]{max-height:344px}.max-h-\[50vh\]{max-height:50vh}.max-h-\[60vh\]{max-height:60vh}.
|
|
2
|
+
/*$vite$:1*/.sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border-width:0;white-space:nowrap}.visible{visibility:visible}.invisible{visibility:hidden}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.bottom-4{bottom:1rem}.end-0{inset-inline-end:0}.end-2{inset-inline-end:.5rem}.end-4{inset-inline-end:1rem}.top-0{top:0}.top-2{top:.5rem}.top-\[-6px\]{top:-6px}.z-10{z-index:10}.z-\[2\]{z-index:2}.z-\[52\]{z-index:52}.z-\[70\]{z-index:70}.mx-0{margin-left:0;margin-right:0}.mx-0\.5{margin-left:.125rem;margin-right:.125rem}.my-4{margin-bottom:1rem;margin-top:1rem}.my-5{margin-bottom:1.25rem;margin-top:1.25rem}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.me-1{margin-inline-end:.25rem}.me-1\.5{margin-inline-end:.375rem}.ms-auto{margin-inline-start:auto}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-auto{margin-top:auto}.block{display:block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.size-full{height:100%;width:100%}.\!h-\[min\(800px\2c 100dvh\)\]{height:min(800px,100dvh)!important}.\!h-fit{height:-moz-fit-content!important;height:fit-content!important}.h-0{height:0}.h-\[24px\]{height:24px}.h-full{height:100%}.\!max-h-full{max-height:100%!important}.max-h-\[344px\]{max-height:344px}.max-h-\[50vh\]{max-height:50vh}.max-h-\[60vh\]{max-height:60vh}.min-h-0{min-height:0}.min-h-10{min-height:2.5rem}.\!w-\[400px\]{width:400px!important}.w-full{width:100%}.w-max{width:-moz-max-content;width:max-content}.min-w-0{min-width:0}.min-w-full{min-width:100%}.max-w-96{max-width:24rem}.max-w-\[30\%\]{max-width:30%}.max-w-\[45\%\]{max-width:45%}.max-w-full{max-width:100%}.flex-1{flex:1 1 0%}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize{resize:both}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.25rem*var(--tw-space-y-reverse));margin-top:calc(.25rem*(1 - var(--tw-space-y-reverse)))}.self-stretch{align-self:stretch}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-hidden{overflow-y:hidden}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-wrap{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.rounded{border-radius:4px}.rounded-2xl{border-radius:1rem}.rounded-\[14px\]{border-radius:14px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-s-2{border-inline-start-width:2px}.border-t{border-top-width:1px}.border-none{border-style:none}.border-tertiary{border-color:var(--stroke-tertiary,#e0e6f0)}.\!bg-layer-sunken{background-color:var(--bg-layer-sunken,#eef1f7)!important}.bg-backdrop{background-color:var(--bg-backdrop,#161b2d4d)}.bg-layer-raised{background-color:var(--bg-layer-raised,#fcfcfc)}.bg-layer-sunken{background-color:var(--bg-layer-sunken,#eef1f7)}.object-contain{-o-object-fit:contain;object-fit:contain}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0{padding-bottom:0;padding-top:0}.py-0\.5{padding-bottom:.125rem;padding-top:.125rem}.py-1{padding-bottom:.25rem;padding-top:.25rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.py-2\.5{padding-bottom:.625rem;padding-top:.625rem}.py-4{padding-bottom:1rem;padding-top:1rem}.py-\[7px\]{padding-bottom:7px;padding-top:7px}.ps-4{padding-inline-start:1rem}.ps-\[2em\]{padding-inline-start:2em}.pt-1{padding-top:.25rem}.text-center{text-align:center}.text-start{text-align:start}.text-end{text-align:end}.align-top{vertical-align:top}.align-middle{vertical-align:middle}.uppercase{text-transform:uppercase}.italic{font-style:italic}.text-primary{color:var(--text-primary,#161b2d)}.text-secondary{color:var(--text-secondary,#57647a)}.underline{text-decoration-line:underline}.underline-offset-2{text-underline-offset:2px}.opacity-0{opacity:0}.opacity-75{opacity:.75}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-chat-button{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-chat-button{--tw-shadow:0 2px 12px 0 var(--shadow-xs-1,#2764d933),0 2px 6px 0 var(--shadow-xs-2,#161b2d08);--tw-shadow-colored:0 2px 12px 0 var(--tw-shadow-color),0 2px 6px 0 var(--tw-shadow-color)}.shadow-xs{--tw-shadow:0 1px 4px 0 var(--shadow-xs-1,#2764d933),0 1px 2px 0 var(--shadow-xs-2,#161b2d08);--tw-shadow-colored:0 1px 4px 0 var(--tw-shadow-color),0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid;outline-width:1px}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-opacity{transition-duration:.15s;transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1)}.\[overflow-wrap\:anywhere\]{overflow-wrap:anywhere}.\[overflow\:clip\]{overflow:clip}.\[text-wrap\:balance\]{text-wrap:balance}.\[text-wrap\:pretty\]{text-wrap:pretty}.first\:mt-0:first-child{margin-top:0}.last\:mb-0:last-child{margin-bottom:0}.focus-within\:opacity-100:focus-within{opacity:1}.hover\:decoration-current:hover{text-decoration-color:currentColor}.focus-visible\:outline:focus-visible{outline-style:solid;outline-width:1px}.focus-visible\:outline-1:focus-visible{outline-width:1px}.focus-visible\:outline-offset-2:focus-visible{outline-offset:2px}.group\/table:hover .group-hover\/table\:opacity-100{opacity:1}@media (min-width:1280px){.desktop\:p-4{padding:1rem}}.\[\&_\.w-md-editor-bar\]\:hidden .w-md-editor-bar{display:none}.\[\&_\.w-md-editor\:not\(\.w-md-editor-fullscreen\)\]\:\!h-\[var\(--resizable-field-max-height\2c 70vh\)\] .w-md-editor:not(.w-md-editor-fullscreen){height:var(--resizable-field-max-height,70vh)!important}.\[\&_\.w-md-editor\:not\(\.w-md-editor-fullscreen\)\]\:max-h-\[var\(--resizable-field-max-height\2c 70vh\)\] .w-md-editor:not(.w-md-editor-fullscreen){max-height:var(--resizable-field-max-height,70vh)}.\[\&_\.wmde-markdown\>ol\]\:list-decimal .wmde-markdown>ol{list-style-type:decimal}.\[\&_\.wmde-markdown_ul\]\:list-disc .wmde-markdown ul{list-style-type:disc}.\[\&_\.wmde-markdown_ul_ul\]\:list-\[circle\] .wmde-markdown ul ul{list-style-type:circle}.\[\&_\.wmde-markdown_ul_ul_ul\]\:list-\[square\] .wmde-markdown ul ul ul{list-style-type:square}
|
package/index.d.ts
CHANGED
|
@@ -20,6 +20,7 @@ import { IRowNode } from 'ag-grid-community';
|
|
|
20
20
|
import { Options } from 'react-markdown';
|
|
21
21
|
import { ReactNode } from 'react';
|
|
22
22
|
import { RefObject } from 'react';
|
|
23
|
+
import { TransferQueueLabels } from '@epam/ai-dial-ui-kit';
|
|
23
24
|
|
|
24
25
|
/** A single annotation attached to an assistant message, optionally citing a source document. */
|
|
25
26
|
export declare interface Annotation {
|
|
@@ -741,12 +742,10 @@ export declare interface DialFileManagerShellLabels {
|
|
|
741
742
|
deleteConfirmLabel: string;
|
|
742
743
|
/** Cancel-button label in the delete confirmation dialog. */
|
|
743
744
|
deleteCancelLabel: string;
|
|
744
|
-
/**
|
|
745
|
-
|
|
746
|
-
/**
|
|
747
|
-
|
|
748
|
-
/** Returns upload progress text (e.g. "3 of 5 uploaded"). */
|
|
749
|
-
getUploadProgressText: (done: number, total: number) => string;
|
|
745
|
+
/** Returns the upload queue heading for the number of files in it (e.g. "Uploading 5 files"). */
|
|
746
|
+
getUploadQueueTitle: (count: number) => string;
|
|
747
|
+
/** Translated strings for the upload `TransferQueue`; unset ones fall back to the kit's English defaults. */
|
|
748
|
+
uploadQueueLabels?: Partial<TransferQueueLabels>;
|
|
750
749
|
/** Empty-state title when a search yields no results. */
|
|
751
750
|
searchEmptyStateTitle: string;
|
|
752
751
|
/** Empty-state title for an empty subfolder. */
|
|
@@ -1111,7 +1110,9 @@ export declare interface FileManagerController {
|
|
|
1111
1110
|
uploadBatchState: FileUploadBatchState | null;
|
|
1112
1111
|
/** Upload: abort all in-flight and queued uploads. */
|
|
1113
1112
|
cancelUpload: () => void;
|
|
1114
|
-
/** Upload:
|
|
1113
|
+
/** Upload: abort one queued or in-flight upload by its entry id. */
|
|
1114
|
+
cancelUploadFile: (id: string) => void;
|
|
1115
|
+
/** Upload: empty the upload queue. */
|
|
1115
1116
|
clearUploadBatch: () => void;
|
|
1116
1117
|
/** Folder creation: called when user confirms a new folder name. */
|
|
1117
1118
|
onCreateFolder: (file: DialUploadFileItem, folderPath: string, fileId: string) => Promise<void>;
|
|
@@ -1191,11 +1192,11 @@ export declare interface FileManagerSelectableNode {
|
|
|
1191
1192
|
contentLength?: number;
|
|
1192
1193
|
}
|
|
1193
1194
|
|
|
1194
|
-
/** State of
|
|
1195
|
+
/** State of the upload queue, as returned by `useDialFileUploadBatch`. */
|
|
1195
1196
|
export declare interface FileUploadBatchState {
|
|
1196
|
-
/**
|
|
1197
|
+
/** Every file uploaded since the queue was last cleared, settled ones included. */
|
|
1197
1198
|
files: FileUploadEntry[];
|
|
1198
|
-
/** Whether the upload
|
|
1199
|
+
/** Whether the upload queue should be visible. */
|
|
1199
1200
|
isOpen: boolean;
|
|
1200
1201
|
}
|
|
1201
1202
|
|
|
@@ -1357,6 +1358,9 @@ export declare const isSkillSelectionUnsupported: (skillUrl: string | null | und
|
|
|
1357
1358
|
/** Returns `true` when `msg` is a `StatusMessage`. */
|
|
1358
1359
|
export declare const isStatusMessage: (msg: Message | StatusMessage) => msg is StatusMessage;
|
|
1359
1360
|
|
|
1361
|
+
/** Returns whether any file in the batch is still queued or uploading. */
|
|
1362
|
+
export declare const isUploadInProgress: (batchState: FileUploadBatchState | null) => boolean;
|
|
1363
|
+
|
|
1360
1364
|
/** Item title header with optional numeric or string postfix and trailing slot. */
|
|
1361
1365
|
export declare const ItemHeader: FC<ItemHeaderProps>;
|
|
1362
1366
|
|
|
@@ -1394,6 +1398,8 @@ export declare interface ItemHeaderProps {
|
|
|
1394
1398
|
shouldTruncateTitle?: boolean;
|
|
1395
1399
|
}
|
|
1396
1400
|
|
|
1401
|
+
export declare const MARKDOWN_EDITOR_FILL_HEIGHT_CLASS_NAME = "[&_.w-md-editor:not(.w-md-editor-fullscreen)]:!h-[var(--resizable-field-max-height,70vh)] [&_.w-md-editor-bar]:hidden";
|
|
1402
|
+
|
|
1397
1403
|
export declare const MARKDOWN_EDITOR_MAX_HEIGHT_CLASS_NAME = "[&_.w-md-editor:not(.w-md-editor-fullscreen)]:max-h-[var(--resizable-field-max-height,70vh)]";
|
|
1398
1404
|
|
|
1399
1405
|
export declare const MARKDOWN_EDITOR_PREVIEW_LIST_CLASS_NAME = "[&_.wmde-markdown>ol]:list-decimal [&_.wmde-markdown_ul]:list-disc [&_.wmde-markdown_ul_ul]:list-[circle] [&_.wmde-markdown_ul_ul_ul]:list-[square]";
|
|
@@ -2624,23 +2630,6 @@ export declare interface UploadedAttachmentResult {
|
|
|
2624
2630
|
name: string;
|
|
2625
2631
|
}
|
|
2626
2632
|
|
|
2627
|
-
/** Modal showing per-file upload progress with a cancel action. */
|
|
2628
|
-
export declare const UploadProgressModal: FC<UploadProgressModalProps>;
|
|
2629
|
-
|
|
2630
|
-
/** Props for the upload-progress modal. */
|
|
2631
|
-
export declare interface UploadProgressModalProps {
|
|
2632
|
-
/** Current batch state with per-file entries and open flag. */
|
|
2633
|
-
batchState: FileUploadBatchState;
|
|
2634
|
-
/** Title shown in the modal header (e.g. "Uploading files"). */
|
|
2635
|
-
uploadProgressTitle: string;
|
|
2636
|
-
/** Summary text below the title (e.g. "3 of 5 uploaded"). */
|
|
2637
|
-
uploadProgressText: string;
|
|
2638
|
-
/** Label for the cancel button. */
|
|
2639
|
-
cancelLabel: string;
|
|
2640
|
-
/** Called when the user clicks Cancel. */
|
|
2641
|
-
onCancel: () => void;
|
|
2642
|
-
}
|
|
2643
|
-
|
|
2644
2633
|
/**
|
|
2645
2634
|
* Writes the height still available below an element into a CSS custom
|
|
2646
2635
|
* property, so a user-resizable control inside it can be capped at the space
|
package/index.js
CHANGED
|
@@ -27,43 +27,42 @@ import { generateUUID as ge } from "./utils/generate-uuid.js";
|
|
|
27
27
|
import { BASE_LG_ICON_PROPS as _e, BASE_MD_ICON_PROPS as ve } from "./constants/icon.js";
|
|
28
28
|
import { HIDDEN_FILE as ye, PUBLIC_BUCKET as be } from "./constants/dial.js";
|
|
29
29
|
import { TAG_INPUT_TAG_CLASS_NAME as xe } from "./constants/tag-input.js";
|
|
30
|
-
import {
|
|
31
|
-
import { MARKDOWN_EDITOR_PREVIEW_LIST_CLASS_NAME as
|
|
32
|
-
import { SELECT_LIST_MAX_HEIGHT_CLASS_NAME as
|
|
33
|
-
import { DESKTOP_BREAKPOINT_PX as
|
|
34
|
-
import { pickAvatarColor as
|
|
35
|
-
import { extractInitials as
|
|
36
|
-
import { InitialsAvatar as
|
|
37
|
-
import { DeploymentIcon as
|
|
38
|
-
import { CopyButton as
|
|
39
|
-
import { PanelEmptyState as
|
|
40
|
-
import { ItemHeader as
|
|
41
|
-
import { EntityTypeLabel as
|
|
42
|
-
import { FeaturedChip as
|
|
43
|
-
import { EntityHeader as
|
|
44
|
-
import { ResourceSummary as
|
|
45
|
-
import { TableHeader as
|
|
46
|
-
import { TextRefinementState as
|
|
47
|
-
import { TextRefinementField as
|
|
48
|
-
import { CHAT_SHARED_CLASS as
|
|
49
|
-
import { useCodeCopy as
|
|
50
|
-
import { restrainedSyntaxTheme as
|
|
51
|
-
import { MarkdownCodeBlock as
|
|
52
|
-
import { DEFAULT_MARKDOWN_TABLE_DOWNLOAD_FILENAME as
|
|
53
|
-
import { MarkdownTable as
|
|
54
|
-
import { MarkdownRenderer as
|
|
55
|
-
import { COMPACT_MARKDOWN_CLASS_NAMES as
|
|
56
|
-
import { PlainTextRenderer as
|
|
57
|
-
import { MDMessageViewer as
|
|
58
|
-
import { MarkdownWithPlaceholders as
|
|
59
|
-
import { useCollapsedText as
|
|
60
|
-
import { useAvailableHeightCap as
|
|
61
|
-
import { useIsMobile as
|
|
62
|
-
import { DialFileManagerActionProfile as
|
|
63
|
-
import { getParentFolderPath as
|
|
64
|
-
import { FileUploadStatus as
|
|
65
|
-
import { useGridEditingScroll as
|
|
66
|
-
import { OperationLoaderModal as
|
|
67
|
-
import {
|
|
68
|
-
|
|
69
|
-
export { f as AttachmentErrorReason, p as AttachmentType, _e as BASE_LG_ICON_PROPS, ve as BASE_MD_ICON_PROPS, Je as CHAT_SHARED_CLASS, at as COMPACT_MARKDOWN_CLASS_NAMES, m as CatalogEntityType, _ as CodeBlockTheme, e as ConversationTransferErrorCode, t as ConversationTransferJobStatus, n as ConversationTransferSubjectKind, r as ConversationTransferUnitKind, i as ConversationTransferWarningCode, Ie as CopyButton, Le as CopyIconButton, ot as DEFAULT_MARKDOWN_CLASS_NAMES, Qe as DEFAULT_MARKDOWN_TABLE_DOWNLOAD_FILENAME, Oe as DESKTOP_BREAKPOINT_PX, ke as DESKTOP_MEDIA_QUERY, Fe as DeploymentIcon, pt as DialFileManagerActionProfile, mt as DialFileManagerVariant, F as ENTITY_DESCRIPTION_MAX_LENGTH, I as ENTITY_INSTRUCTIONS_MAX_LENGTH, L as ENTITY_NAME_MAX_LENGTH, se as ENTITY_TYPE_BG_COLOR, ce as ENTITY_TYPE_COLOR, He as EntityHeader, Be as EntityTypeLabel, Ve as FeaturedChip, h as FileExtension, _t as FileUploadStatus, a as FilterTab, ye as HIDDEN_FILE, Pe as InitialsAvatar, ze as ItemHeader, Se as MARKDOWN_EDITOR_MAX_HEIGHT_CLASS_NAME, Te as MARKDOWN_EDITOR_PREVIEW_LIST_CLASS_NAME, $e as MARKDOWN_TABLE_CSV_MIME_TYPE, ct as MDMessageViewer, g as MIMEType, v as MIME_TYPE_ALIASES, y as MIME_TYPE_AUDIO_PREFIX, b as MIME_TYPE_EXT_MAP, x as MIME_TYPE_WILDCARD, Ae as MOBILE_MAX_WIDTH_PX, je as MOBILE_MEDIA_QUERY, Ze as MarkdownCodeBlock, rt as MarkdownRenderer, nt as MarkdownTable, et as MarkdownTableCopyFormat, lt as MarkdownWithPlaceholders, o as MessageRating, s as MessageRole, yt as OperationLoaderModal, A as PROHIBITED_CONVERSATION_NAME_CHARS_RE, le as PROMPT_PARAM_DEFAULT_SEPARATOR, ue as PROMPT_PARAM_PATTERN, de as PROMPT_VARIABLE_CLASS_NAME, be as PUBLIC_BUCKET, Re as PanelEmptyState, st as PlainTextRenderer, Ce as RESIZABLE_FIELD_MAX_HEIGHT_CSS_VARIABLE, we as RESIZABLE_TEXTAREA_CLASS_NAME, c as RequestStatus, Ue as ResourceSummary, d as ResponseFormat, Ee as SELECT_LIST_MAX_HEIGHT_CLASS_NAME, De as SELECT_LIST_MAX_HEIGHT_PX, l as StageStatus, u as StatusEvent, xe as TAG_INPUT_TAG_CLASS_NAME, We as TableHeader, qe as TextRefinementField, Ge as TextRefinementState, bt as UploadProgressModal, ee as base64ToBlob, V as buildCssVars, fe as buildPromptParamDefaults, K as copyMarkdownAsRichText, q as copyToClipboard, it as defaultMarkdownComponents, te as downloadTextFile, ne as ensureDownloadFilename, R as exceedsMaxLength, Ne as extractInitials, pe as extractPromptParams, Z as formatCost, X as formatFileSize, Y as formatLastUsed, Q as formatPrice, $ as formatUnitPrice, ge as generateUUID, S as getAttachmentTypeFromMime, C as getBaseMimeType, re as getFileExtensionForLanguage, ht as getParentFolderPath, j as getUtf8ByteLength, z as hasControlCharacters, w as inferMimeTypeFromPath, D as isAnnotationSelector, G as isAudioTranscriptionSupported, gt as isHiddenPath, xt as isSkillSelectionUnsupported, H as isStatusMessage, J as markdownToRichTextHtml, B as mergeClasses, U as messageAttachmentToDisplayAttachment, W as messageAttachmentsToDisplayAttachments, T as normalizeMimeType, O as normalizePersistedHtmlTagAttachmentType, k as normalizeRawAnnotations, Me as pickAvatarColor, me as rehypePromptVariables, he as resolvePromptParams, Xe as restrainedSyntaxTheme, M as sanitizeConversationName, tt as serializeMarkdownTableRows, N as stripTrailingDots, E as stripUrlQueryAndFragment, ie as triggerAnchorDownload, ae as triggerBlobDownload, P as truncateToUtf8Bytes, oe as tryBase64ToBytes, dt as useAvailableHeightCap, Ye as useCodeCopy, ut as useCollapsedText, vt as useGridEditingScroll, ft as useIsMobile, Ke as useTextRefinement };
|
|
30
|
+
import { MARKDOWN_EDITOR_FILL_HEIGHT_CLASS_NAME as Se, MARKDOWN_EDITOR_MAX_HEIGHT_CLASS_NAME as Ce, RESIZABLE_FIELD_MAX_HEIGHT_CSS_VARIABLE as we, RESIZABLE_TEXTAREA_CLASS_NAME as Te } from "./constants/resizable-fields.js";
|
|
31
|
+
import { MARKDOWN_EDITOR_PREVIEW_LIST_CLASS_NAME as Ee } from "./constants/markdown-editor.js";
|
|
32
|
+
import { SELECT_LIST_MAX_HEIGHT_CLASS_NAME as De, SELECT_LIST_MAX_HEIGHT_PX as Oe } from "./constants/select-list.js";
|
|
33
|
+
import { DESKTOP_BREAKPOINT_PX as ke, DESKTOP_MEDIA_QUERY as Ae, MOBILE_MAX_WIDTH_PX as je, MOBILE_MEDIA_QUERY as Me } from "./constants/breakpoint.js";
|
|
34
|
+
import { pickAvatarColor as Ne } from "./utils/avatar-color.js";
|
|
35
|
+
import { extractInitials as Pe } from "./utils/initials.js";
|
|
36
|
+
import { InitialsAvatar as Fe } from "./components/InitialsAvatar/InitialsAvatar.js";
|
|
37
|
+
import { DeploymentIcon as Ie } from "./components/DeploymentIcon/DeploymentIcon.js";
|
|
38
|
+
import { CopyButton as Le, CopyIconButton as Re } from "./components/CopyButton/CopyButton.js";
|
|
39
|
+
import { PanelEmptyState as ze } from "./components/PanelEmptyState/PanelEmptyState.js";
|
|
40
|
+
import { ItemHeader as Be } from "./components/ItemHeader/ItemHeader.js";
|
|
41
|
+
import { EntityTypeLabel as Ve } from "./components/EntityTypeLabel/EntityTypeLabel.js";
|
|
42
|
+
import { FeaturedChip as He } from "./components/FeaturedChip/FeaturedChip.js";
|
|
43
|
+
import { EntityHeader as Ue } from "./components/EntityHeader/EntityHeader.js";
|
|
44
|
+
import { ResourceSummary as We } from "./components/ResourceSummary/ResourceSummary.js";
|
|
45
|
+
import { TableHeader as Ge } from "./components/MarkdownRenderer/Table/TableHeader.js";
|
|
46
|
+
import { TextRefinementState as Ke, useTextRefinement as qe } from "./hooks/useTextRefinement.js";
|
|
47
|
+
import { TextRefinementField as Je } from "./components/TextRefinementField/TextRefinementField.js";
|
|
48
|
+
import { CHAT_SHARED_CLASS as Ye } from "./constants/public-class-names.js";
|
|
49
|
+
import { useCodeCopy as Xe } from "./hooks/useCodeCopy.js";
|
|
50
|
+
import { restrainedSyntaxTheme as Ze } from "./components/MarkdownRenderer/CodeBlock/syntax-theme.js";
|
|
51
|
+
import { MarkdownCodeBlock as Qe } from "./components/MarkdownRenderer/CodeBlock/CodeBlock.js";
|
|
52
|
+
import { DEFAULT_MARKDOWN_TABLE_DOWNLOAD_FILENAME as $e, MARKDOWN_TABLE_CSV_MIME_TYPE as et, MarkdownTableCopyFormat as tt, serializeMarkdownTableRows as nt } from "./components/MarkdownRenderer/Table/table-serialization.js";
|
|
53
|
+
import { MarkdownTable as rt } from "./components/MarkdownRenderer/Table/MarkdownTable.js";
|
|
54
|
+
import { MarkdownRenderer as it, defaultMarkdownComponents as at } from "./components/MarkdownRenderer/MarkdownRenderer.js";
|
|
55
|
+
import { COMPACT_MARKDOWN_CLASS_NAMES as ot, DEFAULT_MARKDOWN_CLASS_NAMES as st } from "./components/MarkdownRenderer/markdown-class-names.js";
|
|
56
|
+
import { PlainTextRenderer as ct } from "./components/MarkdownRenderer/PlainTextRenderer.js";
|
|
57
|
+
import { MDMessageViewer as lt } from "./components/MarkdownRenderer/MDMessageViewer.js";
|
|
58
|
+
import { MarkdownWithPlaceholders as ut } from "./components/MarkdownWithPlaceholders/MarkdownWithPlaceholders.js";
|
|
59
|
+
import { useCollapsedText as dt } from "./hooks/useCollapsedText.js";
|
|
60
|
+
import { useAvailableHeightCap as ft } from "./hooks/useAvailableHeightCap.js";
|
|
61
|
+
import { useIsMobile as pt } from "./hooks/useIsMobile.js";
|
|
62
|
+
import { DialFileManagerActionProfile as mt, DialFileManagerVariant as ht } from "./file-manager/file-manager-variant.js";
|
|
63
|
+
import { getParentFolderPath as gt, isHiddenPath as _t } from "./file-manager/path.js";
|
|
64
|
+
import { FileUploadStatus as vt, isUploadInProgress as yt } from "./file-manager/upload-batch.js";
|
|
65
|
+
import { useGridEditingScroll as bt } from "./file-manager/useGridEditingScroll/useGridEditingScroll.js";
|
|
66
|
+
import { OperationLoaderModal as xt } from "./file-manager/OperationLoaderModal/OperationLoaderModal.js";
|
|
67
|
+
import { isSkillSelectionUnsupported as St } from "./utils/is-skill-selection-unsupported.js";
|
|
68
|
+
export { f as AttachmentErrorReason, p as AttachmentType, _e as BASE_LG_ICON_PROPS, ve as BASE_MD_ICON_PROPS, Ye as CHAT_SHARED_CLASS, ot as COMPACT_MARKDOWN_CLASS_NAMES, m as CatalogEntityType, _ as CodeBlockTheme, e as ConversationTransferErrorCode, t as ConversationTransferJobStatus, n as ConversationTransferSubjectKind, r as ConversationTransferUnitKind, i as ConversationTransferWarningCode, Le as CopyButton, Re as CopyIconButton, st as DEFAULT_MARKDOWN_CLASS_NAMES, $e as DEFAULT_MARKDOWN_TABLE_DOWNLOAD_FILENAME, ke as DESKTOP_BREAKPOINT_PX, Ae as DESKTOP_MEDIA_QUERY, Ie as DeploymentIcon, mt as DialFileManagerActionProfile, ht as DialFileManagerVariant, F as ENTITY_DESCRIPTION_MAX_LENGTH, I as ENTITY_INSTRUCTIONS_MAX_LENGTH, L as ENTITY_NAME_MAX_LENGTH, se as ENTITY_TYPE_BG_COLOR, ce as ENTITY_TYPE_COLOR, Ue as EntityHeader, Ve as EntityTypeLabel, He as FeaturedChip, h as FileExtension, vt as FileUploadStatus, a as FilterTab, ye as HIDDEN_FILE, Fe as InitialsAvatar, Be as ItemHeader, Se as MARKDOWN_EDITOR_FILL_HEIGHT_CLASS_NAME, Ce as MARKDOWN_EDITOR_MAX_HEIGHT_CLASS_NAME, Ee as MARKDOWN_EDITOR_PREVIEW_LIST_CLASS_NAME, et as MARKDOWN_TABLE_CSV_MIME_TYPE, lt as MDMessageViewer, g as MIMEType, v as MIME_TYPE_ALIASES, y as MIME_TYPE_AUDIO_PREFIX, b as MIME_TYPE_EXT_MAP, x as MIME_TYPE_WILDCARD, je as MOBILE_MAX_WIDTH_PX, Me as MOBILE_MEDIA_QUERY, Qe as MarkdownCodeBlock, it as MarkdownRenderer, rt as MarkdownTable, tt as MarkdownTableCopyFormat, ut as MarkdownWithPlaceholders, o as MessageRating, s as MessageRole, xt as OperationLoaderModal, A as PROHIBITED_CONVERSATION_NAME_CHARS_RE, le as PROMPT_PARAM_DEFAULT_SEPARATOR, ue as PROMPT_PARAM_PATTERN, de as PROMPT_VARIABLE_CLASS_NAME, be as PUBLIC_BUCKET, ze as PanelEmptyState, ct as PlainTextRenderer, we as RESIZABLE_FIELD_MAX_HEIGHT_CSS_VARIABLE, Te as RESIZABLE_TEXTAREA_CLASS_NAME, c as RequestStatus, We as ResourceSummary, d as ResponseFormat, De as SELECT_LIST_MAX_HEIGHT_CLASS_NAME, Oe as SELECT_LIST_MAX_HEIGHT_PX, l as StageStatus, u as StatusEvent, xe as TAG_INPUT_TAG_CLASS_NAME, Ge as TableHeader, Je as TextRefinementField, Ke as TextRefinementState, ee as base64ToBlob, V as buildCssVars, fe as buildPromptParamDefaults, K as copyMarkdownAsRichText, q as copyToClipboard, at as defaultMarkdownComponents, te as downloadTextFile, ne as ensureDownloadFilename, R as exceedsMaxLength, Pe as extractInitials, pe as extractPromptParams, Z as formatCost, X as formatFileSize, Y as formatLastUsed, Q as formatPrice, $ as formatUnitPrice, ge as generateUUID, S as getAttachmentTypeFromMime, C as getBaseMimeType, re as getFileExtensionForLanguage, gt as getParentFolderPath, j as getUtf8ByteLength, z as hasControlCharacters, w as inferMimeTypeFromPath, D as isAnnotationSelector, G as isAudioTranscriptionSupported, _t as isHiddenPath, St as isSkillSelectionUnsupported, H as isStatusMessage, yt as isUploadInProgress, J as markdownToRichTextHtml, B as mergeClasses, U as messageAttachmentToDisplayAttachment, W as messageAttachmentsToDisplayAttachments, T as normalizeMimeType, O as normalizePersistedHtmlTagAttachmentType, k as normalizeRawAnnotations, Ne as pickAvatarColor, me as rehypePromptVariables, he as resolvePromptParams, Ze as restrainedSyntaxTheme, M as sanitizeConversationName, nt as serializeMarkdownTableRows, N as stripTrailingDots, E as stripUrlQueryAndFragment, ie as triggerAnchorDownload, ae as triggerBlobDownload, P as truncateToUtf8Bytes, oe as tryBase64ToBytes, ft as useAvailableHeightCap, Xe as useCodeCopy, dt as useCollapsedText, bt as useGridEditingScroll, pt as useIsMobile, qe as useTextRefinement };
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@epam/ai-dial-chat-shared",
|
|
3
3
|
"description": "Shared domain models, utilities, and UI components for AI DIAL Chat libraries",
|
|
4
|
-
"version": "1.2.0-dev.
|
|
4
|
+
"version": "1.2.0-dev.173",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"sideEffects": [
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
},
|
|
33
33
|
"peerDependencies": {
|
|
34
34
|
"react": "^19.2.8",
|
|
35
|
-
"@epam/ai-dial-ui-kit": "^0.15.0-dev.
|
|
35
|
+
"@epam/ai-dial-ui-kit": "^0.15.0-dev.21",
|
|
36
36
|
"@epam/ai-dial-react-file-manager": "^0.3.0-dev.13",
|
|
37
37
|
"ag-grid-community": "^35.3.0"
|
|
38
38
|
},
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { DialFileName as e, ElementSize as t, Popup as n, ProgressBar as r } from "@epam/ai-dial-ui-kit";
|
|
2
|
-
import { memo as i, useCallback as a } from "react";
|
|
3
|
-
import { jsx as o, jsxs as s } from "react/jsx-runtime";
|
|
4
|
-
//#region src/file-manager/UploadProgressModal/UploadProgressModal.tsx
|
|
5
|
-
var c = ({ batchState: i, uploadProgressTitle: c, uploadProgressText: l, cancelLabel: u, onCancel: d }) => {
|
|
6
|
-
let { files: f } = i, p = a((e, n) => n === void 0 ? null : /* @__PURE__ */ o(r, {
|
|
7
|
-
value: n,
|
|
8
|
-
size: t.Small,
|
|
9
|
-
"aria-label": e,
|
|
10
|
-
"data-qa": "uploading-indicator"
|
|
11
|
-
}), []);
|
|
12
|
-
return /* @__PURE__ */ o(n, {
|
|
13
|
-
className: "!h-fit !max-h-full !w-[400px] mobile:!w-full desktop:!max-h-[693px]",
|
|
14
|
-
open: i.isOpen,
|
|
15
|
-
closeOnOutsideClick: !1,
|
|
16
|
-
hideClose: !0,
|
|
17
|
-
onClose: d,
|
|
18
|
-
mainButtons: [{
|
|
19
|
-
label: u,
|
|
20
|
-
onClick: d
|
|
21
|
-
}],
|
|
22
|
-
header: /* @__PURE__ */ s("div", {
|
|
23
|
-
className: "flex flex-col gap-2",
|
|
24
|
-
children: [/* @__PURE__ */ o("div", { children: c }), /* @__PURE__ */ o("div", {
|
|
25
|
-
className: "dial-small-text text-secondary",
|
|
26
|
-
"data-qa": "uploading-items-count",
|
|
27
|
-
children: l
|
|
28
|
-
})]
|
|
29
|
-
}),
|
|
30
|
-
children: /* @__PURE__ */ o("div", {
|
|
31
|
-
className: "flex h-full max-h-full flex-col gap-4 px-6",
|
|
32
|
-
children: /* @__PURE__ */ o("div", {
|
|
33
|
-
className: "flex min-h-0 flex-1 flex-col gap-2 overflow-y-auto",
|
|
34
|
-
children: f.map((t) => /* @__PURE__ */ o("div", {
|
|
35
|
-
className: "rounded bg-layer-sunken px-3 py-2",
|
|
36
|
-
children: /* @__PURE__ */ o(e, {
|
|
37
|
-
name: t.name,
|
|
38
|
-
details: p(t.name, t.percent)
|
|
39
|
-
})
|
|
40
|
-
}, t.id))
|
|
41
|
-
})
|
|
42
|
-
})
|
|
43
|
-
});
|
|
44
|
-
};
|
|
45
|
-
i(c);
|
|
46
|
-
//#endregion
|
|
47
|
-
export { c as UploadProgressModal };
|