@epam/ai-dial-chat-shared 1.3.0-dev.106 → 1.3.0-dev.110

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.
@@ -4,6 +4,7 @@ import { FileManagerSelectableNode } from '../../types/file-manager-node';
4
4
  import { FileManagerController } from '../file-manager-controller';
5
5
  import { DialFileManagerActionProfile, DialFileManagerVariant } from '../file-manager-variant';
6
6
  import { DialFileManagerShellLabels } from '../labels';
7
+ import { DialFileManagerShellStyles } from '../shell-styles';
7
8
  /** Props for the shared file-manager shell component. */
8
9
  export interface DialFileManagerShellProps {
9
10
  /** Structural view contract containing all controller state and callbacks. */
@@ -46,6 +47,8 @@ export interface DialFileManagerShellProps {
46
47
  * Omit to keep the variant's default.
47
48
  */
48
49
  treeContainerClassName?: string;
50
+ /** Color overrides, e.g. a different surface background. */
51
+ styles?: DialFileManagerShellStyles;
49
52
  }
50
53
  /**
51
54
  * Renders the DialFileManager grid/tree/toolbar and its operation overlays
@@ -1 +1 @@
1
- {"version":3,"file":"DialFileManagerShell.d.ts","sourceRoot":"","sources":["../../../src/file-manager/DialFileManagerShell/DialFileManagerShell.tsx"],"names":[],"mappings":"AAAA,OAAO,EAGL,mBAAmB,EAEnB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,eAAe,EACrB,MAAM,kCAAkC,CAAC;AAQ1C,OAAO,EAML,KAAK,EAAE,EACR,MAAM,OAAO,CAAC;AACf,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAE/E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,EACL,4BAA4B,EAC5B,sBAAsB,EACvB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAEV,0BAA0B,EAE3B,MAAM,WAAW,CAAC;AAkDnB,yDAAyD;AACzD,MAAM,WAAW,yBAAyB;IACxC,8EAA8E;IAC9E,UAAU,EAAE,qBAAqB,CAAC;IAClC,qDAAqD;IACrD,MAAM,EAAE,0BAA0B,CAAC;IACnC,4BAA4B;IAC5B,SAAS,EAAE,mBAAmB,CAAC;IAC/B,kFAAkF;IAClF,IAAI,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC;IAC9B,0CAA0C;IAC1C,WAAW,EAAE,CAAC,GAAG,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAChD,2DAA2D;IAC3D,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,yCAAyC;IACzC,qBAAqB,EAAE,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC;IACpD,mGAAmG;IACnG,OAAO,EAAE,sBAAsB,CAAC;IAChC,wEAAwE;IACxE,aAAa,EAAE,4BAA4B,CAAC;IAC5C,gFAAgF;IAChF,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,8CAA8C;IAC9C,gBAAgB,CAAC,EAAE,kBAAkB,EAAE,CAAC;IACxC,6JAA6J;IAC7J,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,sMAAsM;IACtM,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,iFAAiF;IACjF,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE;QACvB,IAAI,CAAC,EAAE,yBAAyB,GAAG,IAAI,CAAC;KACzC,KAAK,OAAO,CAAC;IACd,0EAA0E;IAC1E,kBAAkB,CAAC,EAAE,CAAC,GAAG,EAAE,kBAAkB,KAAK,MAAM,GAAG,SAAS,CAAC;IACrE,uDAAuD;IACvD,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC;;;;OAIG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAC;CACjC;AAED;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,EAAE,EAAE,CAAC,yBAAyB,CAohB9D,CAAC;;AAEF,wBAA0C"}
1
+ {"version":3,"file":"DialFileManagerShell.d.ts","sourceRoot":"","sources":["../../../src/file-manager/DialFileManagerShell/DialFileManagerShell.tsx"],"names":[],"mappings":"AAAA,OAAO,EAGL,mBAAmB,EAEnB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,eAAe,EACrB,MAAM,kCAAkC,CAAC;AAQ1C,OAAO,EAML,KAAK,EAAE,EACR,MAAM,OAAO,CAAC;AACf,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAG/E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,EACL,4BAA4B,EAC5B,sBAAsB,EACvB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAEV,0BAA0B,EAE3B,MAAM,WAAW,CAAC;AAGnB,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAgDlE,yDAAyD;AACzD,MAAM,WAAW,yBAAyB;IACxC,8EAA8E;IAC9E,UAAU,EAAE,qBAAqB,CAAC;IAClC,qDAAqD;IACrD,MAAM,EAAE,0BAA0B,CAAC;IACnC,4BAA4B;IAC5B,SAAS,EAAE,mBAAmB,CAAC;IAC/B,kFAAkF;IAClF,IAAI,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC;IAC9B,0CAA0C;IAC1C,WAAW,EAAE,CAAC,GAAG,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAChD,2DAA2D;IAC3D,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,yCAAyC;IACzC,qBAAqB,EAAE,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC;IACpD,mGAAmG;IACnG,OAAO,EAAE,sBAAsB,CAAC;IAChC,wEAAwE;IACxE,aAAa,EAAE,4BAA4B,CAAC;IAC5C,gFAAgF;IAChF,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,8CAA8C;IAC9C,gBAAgB,CAAC,EAAE,kBAAkB,EAAE,CAAC;IACxC,6JAA6J;IAC7J,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,sMAAsM;IACtM,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,iFAAiF;IACjF,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE;QACvB,IAAI,CAAC,EAAE,yBAAyB,GAAG,IAAI,CAAC;KACzC,KAAK,OAAO,CAAC;IACd,0EAA0E;IAC1E,kBAAkB,CAAC,EAAE,CAAC,GAAG,EAAE,kBAAkB,KAAK,MAAM,GAAG,SAAS,CAAC;IACrE,uDAAuD;IACvD,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC;;;;OAIG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,4DAA4D;IAC5D,MAAM,CAAC,EAAE,0BAA0B,CAAC;CACrC;AAED;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,EAAE,EAAE,CAAC,yBAAyB,CA6kB9D,CAAC;;AAEF,wBAA0C"}
@@ -1,323 +1,351 @@
1
1
  import { mergeClasses as e } from "../../utils/merge-class.js";
2
- import { DialFileManagerActionProfile as t, DialFileManagerVariant as n } from "../file-manager-variant.js";
2
+ import { buildCssVars as t } from "../../utils/build-css-vars.js";
3
+ import { DialFileManagerActionProfile as n, DialFileManagerVariant as r } from "../file-manager-variant.js";
3
4
  import { getParentFolderPath as ee } from "../path.js";
4
5
  import { useGridEditingScroll as te } from "../useGridEditingScroll/useGridEditingScroll.js";
5
6
  import { OperationLoaderModal as ne } from "../OperationLoaderModal/OperationLoaderModal.js";
6
- import { toUploadQueueItems as re } from "../upload-queue.js";
7
- import { ButtonVariant as ie, NOT_ALLOWED_SYMBOLS_REGEXP as ae, PrimaryButton as oe, Spinner as se, TransferQueue as ce } from "@epam/ai-dial-ui-kit";
8
- import { memo as r, useCallback as le, useEffect as ue, useMemo as i, useState as de } from "react";
9
- import { Fragment as fe, jsx as a, jsxs as o } from "react/jsx-runtime";
10
- import { DialFileManager as pe, DialFileManagerActions as s, DialFileManagerTabs as me, GridSelectionMode as he } from "@epam/ai-dial-react-file-manager";
7
+ import { TransferQueueRowKind as i, buildTransferQueueLabels as re, parseTransferQueueRowId as ie, toTransferQueueItems as ae } from "../upload-queue.js";
8
+ import oe from "./DialFileManagerShell.module.scss.js";
9
+ import { ButtonVariant as se, NOT_ALLOWED_SYMBOLS_REGEXP as ce, PrimaryButton as le, Spinner as ue, TransferQueue as de } from "@epam/ai-dial-ui-kit";
10
+ import { memo as a, useCallback as o, useEffect as fe, useMemo as s, useState as pe } from "react";
11
+ import { Fragment as me, jsx as c, jsxs as l } from "react/jsx-runtime";
12
+ import { DialFileManager as he, DialFileManagerActions as u, DialFileManagerTabs as ge, GridSelectionMode as _e } from "@epam/ai-dial-react-file-manager";
11
13
  //#region src/file-manager/DialFileManagerShell/DialFileManagerShell.tsx
12
- var ge = (e, t) => {
13
- if (e.isDownloading) return t.downloadingLabel;
14
+ var ve = (e, t) => {
14
15
  if (e.isDeleting) return t.deletingLabel;
15
16
  if (e.isRenaming && !e.isMoving) return t.renamingLabel;
16
17
  if (e.isUnsharing) return t.unsharingLabel;
17
18
  if (e.isRemovingAccess) return t.removingAccessLabel;
18
- }, c = ({ controller: r, labels: c, activeTab: l, tabs: u, onTabChange: d, selectedPaths: f, onSelectedPathsChange: _e, variant: p, actionProfile: ve, autoSelectUploadedItems: ye = !1, allowedFileTypes: be, maxSelectableFileSize: m, oversizedUploadMessage: h, isRowSelectable: g, getDisabledTooltip: xe, unsupportedFileTypeTooltip: Se, treeContainerClassName: _ }) => {
19
- let { items: Ce, isLoading: we, error: Te, path: v, onPathChange: Ee, retry: De, onSearchFiles: Oe, isSearching: ke, searchResults: Ae, clearSearchResults: je, expandedPaths: y, loadedPaths: b, onExpandedPathsChange: x, onFolderPopupPathChange: Me, folderPopupLoadingPaths: S, onUploadFiles: Ne, onUploadArchive: Pe, onValidateUpload: Fe, uploadBatchState: C, cancelUpload: w, cancelUploadFile: Ie, clearUploadBatch: T, onCreateFolder: Le, onCreateFolderValidate: Re, onDownloadFiles: ze, isDownloading: Be, onDeleteFiles: E, isDeleting: Ve, onMoveToFiles: He, onRenameValidate: Ue, isRenaming: We, onCopyFiles: Ge, isCopying: Ke, isMoving: D, cancelCopyMove: qe, uploadEnabled: O, isNewButtonDisabled: k, disabledNewButtonTooltip: A, visibleColumns: j, dateLocale: M, dateOptions: N, actionLabels: P, sharedWithMeIds: Je, sharedByMePaths: F, onUnshareFiles: Ye, isUnsharing: Xe, onRemoveFilesAccess: Ze, isRemovingAccess: Qe, fileMetadata: I, isFileMetadataLoading: L, onGetInfo: $e, clearMetadata: R, sectionTab: et } = r, z = et ?? l, [B, tt] = de(void 0), { handleGridApiChange: nt, reset: V } = te();
20
- ue(() => {
21
- V();
22
- }, [z, V]);
23
- let H = i(() => {
19
+ }, d = ({ controller: a, labels: d, activeTab: f, tabs: p, onTabChange: m, selectedPaths: h, onSelectedPathsChange: ye, variant: g, actionProfile: be, autoSelectUploadedItems: xe = !1, allowedFileTypes: Se, maxSelectableFileSize: _, oversizedUploadMessage: Ce, isRowSelectable: v, getDisabledTooltip: we, unsupportedFileTypeTooltip: Te, treeContainerClassName: y, styles: Ee }) => {
20
+ let { items: De, isLoading: Oe, error: ke, path: b, onPathChange: Ae, retry: je, onSearchFiles: Me, isSearching: Ne, searchResults: Pe, clearSearchResults: Fe, expandedPaths: x, loadedPaths: S, onExpandedPathsChange: C, onFolderPopupPathChange: Ie, folderPopupLoadingPaths: w, onUploadFiles: Le, onUploadArchive: Re, onValidateUpload: ze, uploadBatchState: T, cancelUpload: E, cancelUploadFile: D, clearUploadBatch: O, downloadBatchState: k, cancelDownloadFile: A, cancelAllDownloads: j, clearDownloadBatch: M, onCreateFolder: Be, onCreateFolderValidate: Ve, onDownloadFiles: He, onDeleteFiles: Ue, isDeleting: We, onMoveToFiles: Ge, onRenameValidate: Ke, isRenaming: qe, onCopyFiles: Je, isCopying: Ye, isMoving: N, cancelCopyMove: Xe, uploadEnabled: P, isNewButtonDisabled: F, disabledNewButtonTooltip: I, visibleColumns: L, dateLocale: R, dateOptions: z, actionLabels: B, sharedWithMeIds: Ze, sharedByMePaths: V, onUnshareFiles: Qe, isUnsharing: $e, onRemoveFilesAccess: et, isRemovingAccess: tt, fileMetadata: H, isFileMetadataLoading: U, onGetInfo: nt, clearMetadata: W, sectionTab: rt } = a, G = rt ?? f, [K, it] = pe(void 0), { handleGridApiChange: at, reset: q } = te();
21
+ fe(() => {
22
+ q();
23
+ }, [G, q]);
24
+ let J = s(() => {
24
25
  let e = {};
25
- return s.Download in P && (e[s.Download] = c.downloadLabel), s.Delete in P && (e[s.Delete] = c.deleteLabel), s.Rename in P && (e[s.Rename] = c.renameLabel), s.Copy in P && (e[s.Copy] = c.copyLabel), s.Move in P && (e[s.Move] = c.moveLabel), s.Duplicate in P && (e[s.Duplicate] = c.duplicateLabel), s.Unshare in P && (e[s.Unshare] = c.unshareLabel), s.RemoveAccess in P && (e[s.RemoveAccess] = c.removeAccessLabel), e;
26
+ return u.Download in B && (e[u.Download] = d.downloadLabel), u.Delete in B && (e[u.Delete] = d.deleteLabel), u.Rename in B && (e[u.Rename] = d.renameLabel), u.Copy in B && (e[u.Copy] = d.copyLabel), u.Move in B && (e[u.Move] = d.moveLabel), u.Duplicate in B && (e[u.Duplicate] = d.duplicateLabel), u.Unshare in B && (e[u.Unshare] = d.unshareLabel), u.RemoveAccess in B && (e[u.RemoveAccess] = d.removeAccessLabel), e;
26
27
  }, [
27
- P,
28
- c.downloadLabel,
29
- c.deleteLabel,
30
- c.renameLabel,
31
- c.copyLabel,
32
- c.moveLabel,
33
- c.duplicateLabel,
34
- c.unshareLabel,
35
- c.removeAccessLabel
36
- ]), U = i(() => s.Info in P ? {
37
- ...H,
38
- [s.Info]: c.infoLabel
39
- } : H, [
40
- H,
41
- P,
42
- c.infoLabel
43
- ]), W = i(() => {
44
- if (f.size === 0) return !1;
45
- for (let e of f) if (!F.has(e)) return !1;
28
+ B,
29
+ d.downloadLabel,
30
+ d.deleteLabel,
31
+ d.renameLabel,
32
+ d.copyLabel,
33
+ d.moveLabel,
34
+ d.duplicateLabel,
35
+ d.unshareLabel,
36
+ d.removeAccessLabel
37
+ ]), Y = s(() => u.Info in B ? {
38
+ ...J,
39
+ [u.Info]: d.infoLabel
40
+ } : J, [
41
+ J,
42
+ B,
43
+ d.infoLabel
44
+ ]), X = s(() => {
45
+ if (h.size === 0) return !1;
46
+ for (let e of h) if (!V.has(e)) return !1;
46
47
  return !0;
47
- }, [f, F]), G = i(() => {
48
- if (W) return H;
49
- let { [s.RemoveAccess]: e, ...t } = H;
48
+ }, [h, V]), Z = s(() => {
49
+ if (X) return J;
50
+ let { [u.RemoveAccess]: e, ...t } = J;
50
51
  return t;
51
- }, [H, W]), K = p === n.Attach, rt = i(() => ({
52
- selectionMode: he.MULTIPLE,
53
- ...K ? { filterable: !1 } : {},
54
- visibleColumns: j,
55
- dateLocale: M,
56
- dateOptions: N,
52
+ }, [J, X]), Q = g === r.Attach, ot = s(() => ({
53
+ selectionMode: _e.MULTIPLE,
54
+ ...Q ? { filterable: !1 } : {},
55
+ visibleColumns: L,
56
+ dateLocale: R,
57
+ dateOptions: z,
57
58
  additionalGridOptions: {
58
59
  domLayout: "normal",
59
60
  rowSelection: {
60
61
  mode: "multiRow",
61
- isRowSelectable: g ?? (() => !0)
62
+ isRowSelectable: v ?? (() => !0)
62
63
  }
63
64
  },
64
- actionLabels: U
65
+ actionLabels: Y
65
66
  }), [
66
- K,
67
- j,
68
- M,
69
- N,
70
- U,
71
- g
72
- ]), it = i(() => ({
73
- header: p === n.Attach ? null : c.treeHeaderByTab[l],
74
- containerClassName: _ ?? (p === n.Attach ? "min-h-0 h-full w-[360px] shrink-0 rounded-xl bg-layer-raised shadow-sm" : void 0),
75
- tabsAriaLabel: c.treeHeaderByTab[l],
76
- tabs: u,
77
- activeTab: l,
78
- onTabChange: d,
79
- expandedPaths: y,
80
- loadedPaths: b,
81
- loadingPaths: S,
82
- onExpandedPathsChange: x,
83
- actionLabels: H
67
+ Q,
68
+ L,
69
+ R,
70
+ z,
71
+ Y,
72
+ v
73
+ ]), st = s(() => ({
74
+ header: g === r.Attach ? null : d.treeHeaderByTab[f],
75
+ containerClassName: y ?? (g === r.Attach ? "min-h-0 h-full w-[360px] shrink-0 rounded-xl bg-layer-raised shadow-sm" : void 0),
76
+ tabsAriaLabel: d.treeHeaderByTab[f],
77
+ tabs: p,
78
+ activeTab: f,
79
+ onTabChange: m,
80
+ expandedPaths: x,
81
+ loadedPaths: S,
82
+ loadingPaths: w,
83
+ onExpandedPathsChange: C,
84
+ actionLabels: J
84
85
  }), [
85
- c.treeHeaderByTab,
86
- _,
87
- p,
88
- u,
89
- l,
90
- d,
86
+ d.treeHeaderByTab,
91
87
  y,
92
- b,
93
- S,
88
+ g,
89
+ p,
90
+ f,
91
+ m,
94
92
  x,
95
- H
96
- ]), q = p === n.Standalone && ve === t.Full && z === me.MyFiles && O, at = i(() => ({
93
+ S,
94
+ w,
95
+ C,
96
+ J
97
+ ]), ct = g === r.Standalone && be === n.Full && G === ge.MyFiles && P, lt = s(() => ({
97
98
  showHiddenFilesToggle: !0,
98
- ...K ? { newButtonVariant: ie.Neutral } : {},
99
- hiddenFilesSwitcherLabel: c.hiddenFilesLabel,
100
- showHiddenFilesLabel: c.showHiddenFilesLabel,
101
- hideHiddenFilesLabel: c.hideHiddenFilesLabel,
102
- isNewButtonDisabled: k,
103
- disabledNewButtonTooltip: A,
99
+ ...Q ? { newButtonVariant: se.Neutral } : {},
100
+ hiddenFilesSwitcherLabel: d.hiddenFilesLabel,
101
+ showHiddenFilesLabel: d.showHiddenFilesLabel,
102
+ hideHiddenFilesLabel: d.hideHiddenFilesLabel,
103
+ isNewButtonDisabled: F,
104
+ disabledNewButtonTooltip: I,
104
105
  newActions: {
105
106
  uploadFiles: {
106
- label: c.uploadFilesLabel,
107
+ label: d.uploadFilesLabel,
107
108
  icon: null
108
109
  },
109
110
  newFolder: {
110
- label: c.newFolderLabel,
111
+ label: d.newFolderLabel,
111
112
  icon: null
112
113
  },
113
- ...q ? { uploadArchive: {
114
- label: c.uploadArchiveAction,
114
+ ...ct ? { uploadArchive: {
115
+ label: d.uploadArchiveAction,
115
116
  icon: null
116
117
  } } : {}
117
118
  }
118
119
  }), [
119
- K,
120
- c.hiddenFilesLabel,
121
- c.showHiddenFilesLabel,
122
- c.hideHiddenFilesLabel,
123
- k,
124
- A,
125
- c.uploadFilesLabel,
126
- c.newFolderLabel,
127
- q,
128
- c.uploadArchiveAction
129
- ]), ot = i(() => K ? void 0 : {
130
- getSelectionLabel: c.getSelectionLabel,
131
- actionLabels: G
120
+ Q,
121
+ d.hiddenFilesLabel,
122
+ d.showHiddenFilesLabel,
123
+ d.hideHiddenFilesLabel,
124
+ F,
125
+ I,
126
+ d.uploadFilesLabel,
127
+ d.newFolderLabel,
128
+ ct,
129
+ d.uploadArchiveAction
130
+ ]), ut = s(() => Q ? void 0 : {
131
+ getSelectionLabel: d.getSelectionLabel,
132
+ actionLabels: Z
132
133
  }, [
133
- K,
134
- c.getSelectionLabel,
135
- G
136
- ]), st = i(() => ({
137
- cancelLabel: c.deleteCancelLabel,
138
- confirmLabel: c.deleteConfirmLabel,
139
- closeLabel: c.deleteCloseLabel,
140
- titleRenderer: c.deleteConfirmTitle,
141
- contentRenderer: c.deleteConfirmBody
134
+ Q,
135
+ d.getSelectionLabel,
136
+ Z
137
+ ]), dt = s(() => ({
138
+ cancelLabel: d.deleteCancelLabel,
139
+ confirmLabel: d.deleteConfirmLabel,
140
+ closeLabel: d.deleteCloseLabel,
141
+ titleRenderer: d.deleteConfirmTitle,
142
+ contentRenderer: d.deleteConfirmBody
142
143
  }), [
143
- c.deleteCancelLabel,
144
- c.deleteConfirmLabel,
145
- c.deleteCloseLabel,
146
- c.deleteConfirmTitle,
147
- c.deleteConfirmBody
148
- ]), ct = i(() => {
144
+ d.deleteCancelLabel,
145
+ d.deleteConfirmLabel,
146
+ d.deleteCloseLabel,
147
+ d.deleteConfirmTitle,
148
+ d.deleteConfirmBody
149
+ ]), ft = s(() => {
149
150
  let e;
150
- for (let t of f) {
151
+ for (let t of h) {
151
152
  let n = ee(t);
152
153
  if (e === void 0) e = n;
153
154
  else if (e !== n) return;
154
155
  }
155
156
  return e;
156
- }, [f]), J = B != null && S.has(B), Y = J ? B : ct, lt = i(() => ({
157
- copyLabel: c.copyLabel,
158
- moveLabel: c.moveLabel,
159
- addFolderLabel: c.addFolderLabel,
160
- hiddenFilesSwitcherLabel: c.hiddenFilesSwitcherLabel,
161
- getCopyHeader: c.getCopyHeader,
162
- getMoveHeader: c.getMoveHeader,
163
- disabledPathTooltip: J ? c.folderPickerLoadingTooltip : c.moveSourceDisabledTooltip,
164
- movedIntoItselfTooltip: c.movedIntoItselfTooltip,
165
- emptyStateTitle: c.folderPickerEmptyStateTitle,
166
- emptyStateDescription: c.folderPickerEmptyStateDescription,
167
- sourceFolder: Y,
168
- destinationFolderPath: B,
169
- setDestinationFolderPath: tt,
170
- filesLoading: J
157
+ }, [h]), $ = K != null && w.has(K), pt = $ ? K : ft, mt = s(() => ({
158
+ copyLabel: d.copyLabel,
159
+ moveLabel: d.moveLabel,
160
+ addFolderLabel: d.addFolderLabel,
161
+ hiddenFilesSwitcherLabel: d.hiddenFilesSwitcherLabel,
162
+ getCopyHeader: d.getCopyHeader,
163
+ getMoveHeader: d.getMoveHeader,
164
+ disabledPathTooltip: $ ? d.folderPickerLoadingTooltip : d.moveSourceDisabledTooltip,
165
+ movedIntoItselfTooltip: d.movedIntoItselfTooltip,
166
+ emptyStateTitle: d.folderPickerEmptyStateTitle,
167
+ emptyStateDescription: d.folderPickerEmptyStateDescription,
168
+ sourceFolder: pt,
169
+ destinationFolderPath: K,
170
+ setDestinationFolderPath: it,
171
+ filesLoading: $
171
172
  }), [
172
- c.copyLabel,
173
- c.moveLabel,
174
- c.addFolderLabel,
175
- c.hiddenFilesSwitcherLabel,
176
- c.getCopyHeader,
177
- c.getMoveHeader,
178
- c.folderPickerLoadingTooltip,
179
- c.moveSourceDisabledTooltip,
180
- c.movedIntoItselfTooltip,
181
- c.folderPickerEmptyStateTitle,
182
- c.folderPickerEmptyStateDescription,
183
- J,
184
- Y,
185
- B
186
- ]), ut = le(() => {
187
- w(), T();
188
- }, [w, T]), X = i(() => re(C?.files ?? []), [C]), dt = i(() => ({
189
- fileMetadata: I,
190
- loading: L,
191
- clearMetadata: R,
192
- header: c.metadataHeader,
193
- nameLabel: c.metadataNameLabel,
194
- pathLabel: c.metadataPathLabel,
195
- modifiedDateLabel: c.metadataModifiedDateLabel,
196
- sizeLabel: c.metadataSizeLabel,
197
- authorLabel: c.metadataAuthorLabel
173
+ d.copyLabel,
174
+ d.moveLabel,
175
+ d.addFolderLabel,
176
+ d.hiddenFilesSwitcherLabel,
177
+ d.getCopyHeader,
178
+ d.getMoveHeader,
179
+ d.folderPickerLoadingTooltip,
180
+ d.moveSourceDisabledTooltip,
181
+ d.movedIntoItselfTooltip,
182
+ d.folderPickerEmptyStateTitle,
183
+ d.folderPickerEmptyStateDescription,
184
+ $,
185
+ pt,
186
+ K
187
+ ]), ht = o(() => {
188
+ E(), j(), O(), M();
189
+ }, [
190
+ E,
191
+ j,
192
+ O,
193
+ M
194
+ ]), gt = o((e) => {
195
+ let t = ie(e);
196
+ t?.kind === i.Upload ? D(t.entryId) : t?.kind === i.Download && A(t.entryId);
197
+ }, [D, A]), _t = s(() => ae(T, k, d.uploadFailureMessages), [
198
+ T,
199
+ k,
200
+ d.uploadFailureMessages
201
+ ]), vt = T?.files.length ?? 0, yt = k?.files.length ?? 0, bt = d.getTransferQueueTitle?.({
202
+ uploads: vt,
203
+ downloads: yt
204
+ }) ?? d.getUploadQueueTitle(vt + yt), xt = s(() => re({
205
+ uploadLabels: d.uploadQueueLabels,
206
+ downloadLabels: d.downloadQueueLabels,
207
+ mixedProgressLabel: d.transferQueueProgressAriaLabel,
208
+ uploadNames: new Set(T?.files.map((e) => e.name)),
209
+ downloadNames: new Set(k?.files.map((e) => e.name))
198
210
  }), [
199
- I,
200
- L,
201
- R,
202
- c.metadataHeader,
203
- c.metadataNameLabel,
204
- c.metadataPathLabel,
205
- c.metadataModifiedDateLabel,
206
- c.metadataSizeLabel,
207
- c.metadataAuthorLabel
208
- ]), Z = ge({
209
- isDownloading: Be,
210
- isDeleting: Ve,
211
- isRenaming: We,
212
- isMoving: D,
213
- isUnsharing: Xe,
214
- isRemovingAccess: Qe
215
- }, c), Q = "bg-layer-base", $ = i(() => v.split("/").filter(Boolean).length > 1 ? {
216
- title: c.folderEmptyStateTitle,
211
+ d.uploadQueueLabels,
212
+ d.downloadQueueLabels,
213
+ d.transferQueueProgressAriaLabel,
214
+ T,
215
+ k
216
+ ]), St = s(() => ({
217
+ fileMetadata: H,
218
+ loading: U,
219
+ clearMetadata: W,
220
+ header: d.metadataHeader,
221
+ nameLabel: d.metadataNameLabel,
222
+ pathLabel: d.metadataPathLabel,
223
+ modifiedDateLabel: d.metadataModifiedDateLabel,
224
+ sizeLabel: d.metadataSizeLabel,
225
+ authorLabel: d.metadataAuthorLabel
226
+ }), [
227
+ H,
228
+ U,
229
+ W,
230
+ d.metadataHeader,
231
+ d.metadataNameLabel,
232
+ d.metadataPathLabel,
233
+ d.metadataModifiedDateLabel,
234
+ d.metadataSizeLabel,
235
+ d.metadataAuthorLabel
236
+ ]), Ct = ve({
237
+ isDeleting: We,
238
+ isRenaming: qe,
239
+ isMoving: N,
240
+ isUnsharing: $e,
241
+ isRemovingAccess: tt
242
+ }, d), wt = s(() => b.split("/").filter(Boolean).length > 1 ? {
243
+ title: d.folderEmptyStateTitle,
217
244
  description: ""
218
- } : c.emptyStateByTab[z], [
219
- v,
220
- c.folderEmptyStateTitle,
221
- c.emptyStateByTab,
222
- z
223
- ]);
224
- return /* @__PURE__ */ o(fe, { children: [
225
- Te == null ? /* @__PURE__ */ o("div", {
226
- className: e("relative flex min-h-0 w-full grow overflow-auto", Q),
227
- children: [/* @__PURE__ */ a(pe, {
228
- className: e("min-h-0 w-full grow", Q, K && "p-0"),
229
- contentClassName: p === n.Attach ? "px-0 pb-0" : void 0,
230
- gridClassName: p === n.Attach ? "size-full gap-6 px-6 py-4" : "size-full",
231
- items: Ce,
232
- path: v,
233
- onPathChange: Ee,
234
- onGridApiChange: nt,
235
- filesLoading: we,
236
- allowedFileTypes: be,
237
- maxSelectableFileSize: m,
238
- maxFileSize: m,
239
- uploadValidationMessages: h == null ? void 0 : { oversizedFiles: h },
240
- selectedPaths: f,
241
- onSelectedPathsChange: _e,
245
+ } : d.emptyStateByTab[G], [
246
+ b,
247
+ d.folderEmptyStateTitle,
248
+ d.emptyStateByTab,
249
+ G
250
+ ]), Tt = t({ "--dfms-surface": Ee?.colors?.surface });
251
+ return /* @__PURE__ */ l(me, { children: [
252
+ ke == null ? /* @__PURE__ */ l("div", {
253
+ style: Tt,
254
+ className: e("relative flex min-h-0 w-full grow overflow-auto", oe.surface),
255
+ children: [/* @__PURE__ */ c(he, {
256
+ className: e("min-h-0 w-full grow", oe.surface, Q && "p-0"),
257
+ contentClassName: g === r.Attach ? "px-0 pb-0" : void 0,
258
+ gridClassName: g === r.Attach ? "size-full gap-6 px-6 py-4" : "size-full",
259
+ items: De,
260
+ path: b,
261
+ onPathChange: Ae,
262
+ onGridApiChange: at,
263
+ filesLoading: Oe,
264
+ allowedFileTypes: Se,
265
+ maxSelectableFileSize: _,
266
+ maxFileSize: _,
267
+ uploadValidationMessages: Ce == null ? void 0 : { oversizedFiles: Ce },
268
+ selectedPaths: h,
269
+ onSelectedPathsChange: ye,
242
270
  navigationPanelOptions: {
243
271
  searchable: !0,
244
- placeholder: c.searchPlaceholderByTab?.[z]
272
+ placeholder: d.searchPlaceholderByTab?.[G]
245
273
  },
246
274
  hideSearchPathItemName: !0,
247
- onSearchFiles: Oe,
248
- searchInProgress: ke,
249
- searchResults: Ae ?? [],
250
- clearSearchResults: je,
251
- gridOptions: rt,
252
- treeOptions: it,
253
- onFolderPopupPathChange: Me,
254
- toolbarOptions: at,
255
- bulkActionsToolbarOptions: ot,
256
- autoSelectUploadedItems: ye,
257
- emptyStateTitle: $.title,
258
- emptyStateDescription: $.description,
259
- searchEmptyStateTitle: c.searchEmptyStateTitle,
260
- uploadEnabled: O,
261
- sharedWithMeIds: Je,
262
- sharedByMePaths: F,
263
- onUnshareFiles: Ye,
264
- onRemoveFilesAccess: Ze,
265
- fileMetadataPopupOptions: dt,
266
- onGetInfo: $e,
267
- onUploadFiles: Ne,
268
- onUploadArchive: Pe,
269
- onValidateUpload: Fe,
270
- onCreateFolder: Le,
271
- onCreateFolderValidate: Re,
272
- onDownloadFiles: ze,
273
- onDeleteFiles: E,
274
- onMoveToFiles: He,
275
- onCopyFiles: Ge,
276
- onRenameValidate: Ue,
277
- renameValidationMessages: c.renameValidationMessages,
278
- isRenameFileAvailable: O,
279
- deleteConfirmationOptions: st,
280
- conflictResolutionPopupOptions: c.conflictResolutionPopupOptions,
281
- destinationFolderPopupOptions: lt,
282
- forbiddenSymbolsRegExp: ae,
283
- forbiddenSymbolsTooltip: c.forbiddenSymbolsTooltip,
284
- getDisabledTooltip: xe,
285
- unsupportedFileTypeTooltip: Se
286
- }), Z != null && /* @__PURE__ */ a("div", {
275
+ onSearchFiles: Me,
276
+ searchInProgress: Ne,
277
+ searchResults: Pe ?? [],
278
+ clearSearchResults: Fe,
279
+ gridOptions: ot,
280
+ treeOptions: st,
281
+ onFolderPopupPathChange: Ie,
282
+ toolbarOptions: lt,
283
+ bulkActionsToolbarOptions: ut,
284
+ autoSelectUploadedItems: xe,
285
+ emptyStateTitle: wt.title,
286
+ emptyStateDescription: wt.description,
287
+ searchEmptyStateTitle: d.searchEmptyStateTitle,
288
+ uploadEnabled: P,
289
+ sharedWithMeIds: Ze,
290
+ sharedByMePaths: V,
291
+ onUnshareFiles: Qe,
292
+ onRemoveFilesAccess: et,
293
+ fileMetadataPopupOptions: St,
294
+ onGetInfo: nt,
295
+ onUploadFiles: Le,
296
+ onUploadArchive: Re,
297
+ onValidateUpload: ze,
298
+ onCreateFolder: Be,
299
+ onCreateFolderValidate: Ve,
300
+ onDownloadFiles: He,
301
+ onDeleteFiles: Ue,
302
+ onMoveToFiles: Ge,
303
+ onCopyFiles: Je,
304
+ onRenameValidate: Ke,
305
+ renameValidationMessages: d.renameValidationMessages,
306
+ isRenameFileAvailable: P,
307
+ deleteConfirmationOptions: dt,
308
+ conflictResolutionPopupOptions: d.conflictResolutionPopupOptions,
309
+ destinationFolderPopupOptions: mt,
310
+ forbiddenSymbolsRegExp: ce,
311
+ forbiddenSymbolsTooltip: d.forbiddenSymbolsTooltip,
312
+ getDisabledTooltip: we,
313
+ unsupportedFileTypeTooltip: Te
314
+ }), Ct != null && /* @__PURE__ */ c("div", {
287
315
  "aria-live": "polite",
288
316
  className: "absolute inset-0 z-52 flex items-center justify-center bg-backdrop desktop:p-4",
289
- children: /* @__PURE__ */ a(se, {
317
+ children: /* @__PURE__ */ c(ue, {
290
318
  size: 32,
291
319
  fullWidth: !1,
292
- ariaLabel: Z
320
+ ariaLabel: Ct
293
321
  })
294
322
  })]
295
- }) : /* @__PURE__ */ o("div", {
323
+ }) : /* @__PURE__ */ l("div", {
296
324
  role: "alert",
297
325
  className: "flex flex-col items-center gap-4 p-6",
298
- children: [/* @__PURE__ */ a("p", { children: c.errorMessage }), /* @__PURE__ */ a(oe, {
299
- label: c.retryLabel,
300
- onClick: De
326
+ children: [/* @__PURE__ */ c("p", { children: d.errorMessage }), /* @__PURE__ */ c(le, {
327
+ label: d.retryLabel,
328
+ onClick: je
301
329
  })]
302
330
  }),
303
- /* @__PURE__ */ a("div", {
304
- className: "fixed inset-e-4 bottom-4 z-70",
305
- children: /* @__PURE__ */ a(ce, {
306
- title: c.getUploadQueueTitle(X.length),
307
- items: X,
308
- onClose: ut,
309
- onCancelItem: Ie,
310
- labels: c.uploadQueueLabels
331
+ /* @__PURE__ */ c("div", {
332
+ className: "fixed inset-e-4 bottom-4 z-51",
333
+ children: /* @__PURE__ */ c(de, {
334
+ title: bt,
335
+ items: _t,
336
+ onClose: ht,
337
+ onCancelItem: gt,
338
+ labels: xt
311
339
  })
312
340
  }),
313
- (Ke || D) && /* @__PURE__ */ a(ne, {
314
- title: D ? c.operationLoaderMoveTitle : c.operationLoaderCopyTitle,
315
- text: D ? c.movingLabel : c.copyingLabel,
316
- cancelLabel: c.operationLoaderCancelLabel,
317
- onCancel: qe
341
+ (Ye || N) && /* @__PURE__ */ c(ne, {
342
+ title: N ? d.operationLoaderMoveTitle : d.operationLoaderCopyTitle,
343
+ text: N ? d.movingLabel : d.copyingLabel,
344
+ cancelLabel: d.operationLoaderCancelLabel,
345
+ onCancel: Xe
318
346
  })
319
347
  ] });
320
348
  };
321
- r(c);
349
+ a(d);
322
350
  //#endregion
323
- export { c as DialFileManagerShell };
351
+ export { d as DialFileManagerShell };
@@ -0,0 +1,3 @@
1
+ var e = { surface: "_surface_hmvxl_1" };
2
+ //#endregion
3
+ export { e as default };
@@ -1,6 +1,6 @@
1
1
  import { DialCopiedItem, DialDeletedItem, DialFile, DialFileManagerActions, DialFileManagerTabs, DialUploadFileItem, FileManagerColumnKey } from '@epam/ai-dial-react-file-manager';
2
2
  import { FileUploadValidationResult } from './file-upload-validation';
3
- import { FileUploadBatchState } from './upload-batch';
3
+ import { FileDownloadBatchState, FileUploadBatchState } from './upload-batch';
4
4
  /**
5
5
  * Structural view contract consumed by `DialFileManagerShell`. Contains exactly
6
6
  * the fields of `UseDialFileManagerResult` that the shell reads, with the same
@@ -59,10 +59,18 @@ export interface FileManagerController {
59
59
  onCreateFolder: (file: DialUploadFileItem, folderPath: string, fileId: string) => Promise<void>;
60
60
  /** Folder creation: inline synchronous validation (returns error message or null). */
61
61
  onCreateFolderValidate: (name: string, parentFolder: DialFile) => string | null;
62
- /** Download: called when user triggers download on one or more items. */
62
+ /** Download: called when user triggers download on one or more items; returns without waiting for the transfer. */
63
63
  onDownloadFiles: (dialFiles: DialFile[]) => void;
64
- /** True while a download is in progress. */
64
+ /** True while at least one download is in progress. Does not block other actions. */
65
65
  isDownloading: boolean;
66
+ /** Download: current batch state (null when idle). */
67
+ downloadBatchState: FileDownloadBatchState | null;
68
+ /** Download: abort one in-flight download by its entry id. */
69
+ cancelDownloadFile: (id: string) => void;
70
+ /** Download: abort every in-flight download. */
71
+ cancelAllDownloads: () => void;
72
+ /** Download: empty the download batch. */
73
+ clearDownloadBatch: () => void;
66
74
  /** Delete: called when user confirms deletion of one or more items. */
67
75
  onDeleteFiles: (items: DialDeletedItem[], sourceFolder: string) => void;
68
76
  /** True while a delete request is in flight. */
@@ -1 +1 @@
1
- {"version":3,"file":"file-manager-controller.d.ts","sourceRoot":"","sources":["../../src/file-manager/file-manager-controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"file-manager-controller.d.ts","sourceRoot":"","sources":["../../src/file-manager/file-manager-controller.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ export * from './file-manager-variant';
4
4
  export * from './file-upload-validation';
5
5
  export * from './labels';
6
6
  export * from './path';
7
+ export * from './shell-styles';
7
8
  export * from './upload-batch';
8
9
  export * from './useGridEditingScroll/useGridEditingScroll';
9
10
  export * from './OperationLoaderModal/OperationLoaderModal';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/file-manager/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,6CAA6C,CAAC;AAC5D,cAAc,6CAA6C,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/file-manager/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,6CAA6C,CAAC;AAC5D,cAAc,6CAA6C,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import { DialFile, DialFileManager, DialFileManagerTabs } from '@epam/ai-dial-react-file-manager';
2
2
  import { TransferQueueLabels } from '@epam/ai-dial-ui-kit';
3
3
  import { ComponentProps, ReactNode } from 'react';
4
+ import { FileUploadFailureReason } from './upload-batch';
4
5
  type DialFileManagerComponentProps = ComponentProps<typeof DialFileManager>;
5
6
  /** Options for the conflict-resolution popup shown during copy/move operations. */
6
7
  export type ConflictResolutionPopupOptions = NonNullable<DialFileManagerComponentProps['conflictResolutionPopupOptions']>;
@@ -41,8 +42,11 @@ export interface DialFileManagerShellLabels {
41
42
  newFolderLabel: string;
42
43
  /** Label for the Download action. */
43
44
  downloadLabel: string;
44
- /** Overlay label shown while a download is in progress. */
45
- downloadingLabel: string;
45
+ /**
46
+ * Overlay label shown while a download was in progress.
47
+ * @deprecated Not read: downloads run as transfer-queue rows with no overlay.
48
+ */
49
+ downloadingLabel?: string;
46
50
  /** Label for the Delete action. */
47
51
  deleteLabel: string;
48
52
  /** Overlay label shown while a delete operation is in progress. */
@@ -99,6 +103,17 @@ export interface DialFileManagerShellLabels {
99
103
  getUploadQueueTitle: (count: number) => string;
100
104
  /** Translated strings for the upload `TransferQueue`; unset ones fall back to the kit's English defaults. */
101
105
  uploadQueueLabels?: Partial<TransferQueueLabels>;
106
+ /** Tooltip and accessible name of a failed upload or download row, per failure reason; a reason without one shows `uploadQueueLabels.failedMessage`. */
107
+ uploadFailureMessages?: Partial<Record<FileUploadFailureReason, string>>;
108
+ /** Returns the transfer queue heading from the number of upload and download rows; unset falls back to `getUploadQueueTitle` with the total. */
109
+ getTransferQueueTitle?: (counts: {
110
+ uploads: number;
111
+ downloads: number;
112
+ }) => string;
113
+ /** Download-row wording of the transfer queue (cancel and progress names, and the aggregate bar's name when only downloads run); unset ones use `uploadQueueLabels`. */
114
+ downloadQueueLabels?: Partial<Pick<TransferQueueLabels, 'cancelItemAriaLabel' | 'itemProgressAriaLabel' | 'queueProgressAriaLabel'>>;
115
+ /** Accessible name of the queue's aggregate progress bar while uploads and downloads both run; unset uses `uploadQueueLabels.queueProgressAriaLabel`. */
116
+ transferQueueProgressAriaLabel?: string;
102
117
  /** Empty-state title when a search yields no results. */
103
118
  searchEmptyStateTitle: string;
104
119
  /** Empty-state title for an empty subfolder. */
@@ -1 +1 @@
1
- {"version":3,"file":"labels.d.ts","sourceRoot":"","sources":["../../src/file-manager/labels.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"labels.d.ts","sourceRoot":"","sources":["../../src/file-manager/labels.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,QAAQ,EACR,eAAe,EACf,mBAAmB,EACpB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAE9D,KAAK,6BAA6B,GAAG,cAAc,CAAC,OAAO,eAAe,CAAC,CAAC;AAE5E,mFAAmF;AACnF,MAAM,MAAM,8BAA8B,GAAG,WAAW,CACtD,6BAA6B,CAAC,gCAAgC,CAAC,CAChE,CAAC;AAEF,8DAA8D;AAC9D,MAAM,MAAM,wBAAwB,GAAG,WAAW,CAChD,6BAA6B,CAAC,0BAA0B,CAAC,CAC1D,CAAC;AAEF,6DAA6D;AAC7D,MAAM,MAAM,4CAA4C,GAAG,WAAW,CACpE,6BAA6B,CAAC,+BAA+B,CAAC,CAC/D,CAAC;AAEF,6DAA6D;AAC7D,MAAM,WAAW,cAAc;IAC7B,mCAAmC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,8CAA8C;IAC9C,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;GAIG;AACH,MAAM,WAAW,0BAA0B;IACzC,iEAAiE;IACjE,YAAY,EAAE,MAAM,CAAC;IACrB,oEAAoE;IACpE,UAAU,EAAE,MAAM,CAAC;IACnB,wDAAwD;IACxD,gBAAgB,EAAE,MAAM,CAAC;IACzB,2DAA2D;IAC3D,oBAAoB,EAAE,MAAM,CAAC;IAC7B,0DAA0D;IAC1D,oBAAoB,EAAE,MAAM,CAAC;IAC7B,6IAA6I;IAC7I,iBAAiB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;IAC7C,2DAA2D;IAC3D,gBAAgB,EAAE,MAAM,CAAC;IACzB,6DAA6D;IAC7D,mBAAmB,EAAE,MAAM,CAAC;IAC5B,yDAAyD;IACzD,cAAc,EAAE,MAAM,CAAC;IACvB,qCAAqC;IACrC,aAAa,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mCAAmC;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,mEAAmE;IACnE,aAAa,EAAE,MAAM,CAAC;IACtB,mCAAmC;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,mEAAmE;IACnE,aAAa,EAAE,MAAM,CAAC;IACtB,iCAAiC;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,iCAAiC;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,sCAAsC;IACtC,cAAc,EAAE,MAAM,CAAC;IACvB,mEAAmE;IACnE,cAAc,EAAE,MAAM,CAAC;IACvB,0EAA0E;IAC1E,wBAAwB,EAAE,MAAM,CAAC;IACjC,yDAAyD;IACzD,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;IACxD,yDAAyD;IACzD,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;IACxD,6EAA6E;IAC7E,yBAAyB,EAAE,MAAM,CAAC;IAClC,oFAAoF;IACpF,sBAAsB,EAAE,MAAM,CAAC;IAC/B,gEAAgE;IAChE,0BAA0B,EAAE,MAAM,CAAC;IACnC,0DAA0D;IAC1D,2BAA2B,EAAE,MAAM,CAAC;IACpC,gEAAgE;IAChE,iCAAiC,EAAE,MAAM,CAAC;IAC1C,kDAAkD;IAClD,YAAY,EAAE,MAAM,CAAC;IACrB,kDAAkD;IAClD,WAAW,EAAE,MAAM,CAAC;IACpB,iDAAiD;IACjD,wBAAwB,EAAE,MAAM,CAAC;IACjC,iDAAiD;IACjD,wBAAwB,EAAE,MAAM,CAAC;IACjC,yDAAyD;IACzD,0BAA0B,EAAE,MAAM,CAAC;IACnC,qKAAqK;IACrK,kBAAkB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,SAAS,CAAC;IACtE,4EAA4E;IAC5E,iBAAiB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,SAAS,CAAC;IAClD,8DAA8D;IAC9D,kBAAkB,EAAE,MAAM,CAAC;IAC3B,6DAA6D;IAC7D,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iIAAiI;IACjI,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iGAAiG;IACjG,mBAAmB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;IAC/C,6GAA6G;IAC7G,iBAAiB,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACjD,wJAAwJ;IACxJ,qBAAqB,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,uBAAuB,EAAE,MAAM,CAAC,CAAC,CAAC;IACzE,gJAAgJ;IAChJ,qBAAqB,CAAC,EAAE,CAAC,MAAM,EAAE;QAC/B,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;KACnB,KAAK,MAAM,CAAC;IACb,wKAAwK;IACxK,mBAAmB,CAAC,EAAE,OAAO,CAC3B,IAAI,CACF,mBAAmB,EACnB,qBAAqB,GAAG,uBAAuB,GAAG,wBAAwB,CAC3E,CACF,CAAC;IACF,yJAAyJ;IACzJ,8BAA8B,CAAC,EAAE,MAAM,CAAC;IACxC,yDAAyD;IACzD,qBAAqB,EAAE,MAAM,CAAC;IAC9B,gDAAgD;IAChD,qBAAqB,EAAE,MAAM,CAAC;IAC9B,oEAAoE;IACpE,uBAAuB,EAAE,MAAM,CAAC;IAChC,iDAAiD;IACjD,eAAe,EAAE,MAAM,CAAC,mBAAmB,EAAE,cAAc,CAAC,CAAC;IAC7D,iCAAiC;IACjC,eAAe,EAAE,MAAM,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;IACrD,8HAA8H;IAC9H,sBAAsB,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC,CAAC;IACtE,6CAA6C;IAC7C,wBAAwB,EAAE,wBAAwB,CAAC;IACnD,iDAAiD;IACjD,8BAA8B,EAAE,8BAA8B,CAAC;IAC/D,oCAAoC;IACpC,YAAY,EAAE,MAAM,CAAC;IACrB,qEAAqE;IACrE,cAAc,EAAE,MAAM,CAAC;IACvB,0CAA0C;IAC1C,iBAAiB,EAAE,MAAM,CAAC;IAC1B,0EAA0E;IAC1E,mBAAmB,EAAE,MAAM,CAAC;IAC5B,iCAAiC;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,qCAAqC;IACrC,cAAc,EAAE,MAAM,CAAC;IACvB,qDAAqD;IACrD,iBAAiB,EAAE,MAAM,CAAC;IAC1B,qDAAqD;IACrD,iBAAiB,EAAE,MAAM,CAAC;IAC1B,yDAAyD;IACzD,yBAAyB,EAAE,MAAM,CAAC;IAClC,qDAAqD;IACrD,iBAAiB,EAAE,MAAM,CAAC;IAC1B,kDAAkD;IAClD,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,4BAA6B,SAAQ,0BAA0B;IAC9E,2CAA2C;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,2CAA2C;IAC3C,WAAW,EAAE,MAAM,CAAC;IACpB,gGAAgG;IAChG,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACnC"}
@@ -0,0 +1,11 @@
1
+ /** CSS custom-property overrides for `DialFileManagerShell`. */
2
+ export interface DialFileManagerShellColors {
3
+ /** Background of the shell's surface. Defaults to `--bg-layer-base`. */
4
+ surface?: string;
5
+ }
6
+ /** Style overrides for `DialFileManagerShell`. */
7
+ export interface DialFileManagerShellStyles {
8
+ /** Color overrides applied as CSS custom properties. */
9
+ colors?: DialFileManagerShellColors;
10
+ }
11
+ //# sourceMappingURL=shell-styles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shell-styles.d.ts","sourceRoot":"","sources":["../../src/file-manager/shell-styles.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,MAAM,WAAW,0BAA0B;IACzC,wEAAwE;IACxE,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,kDAAkD;AAClD,MAAM,WAAW,0BAA0B;IACzC,wDAAwD;IACxD,MAAM,CAAC,EAAE,0BAA0B,CAAC;CACrC"}
@@ -6,6 +6,21 @@ export declare enum FileUploadStatus {
6
6
  Failed = "failed",
7
7
  Cancelled = "cancelled"
8
8
  }
9
+ /** Why a file in an upload batch failed, derived from the upload response. */
10
+ export declare enum FileUploadFailureReason {
11
+ /** A file with this name already exists at the destination (HTTP 409). */
12
+ Conflict = "conflict",
13
+ /** The file is larger than the server accepts (HTTP 413). */
14
+ TooLarge = "tooLarge",
15
+ /** The user may not write to the destination (HTTP 403). */
16
+ Forbidden = "forbidden",
17
+ /** The file service behind the API is unavailable (HTTP 502/503). */
18
+ Unavailable = "unavailable",
19
+ /** The request never got a response, e.g. the connection dropped. */
20
+ Network = "network",
21
+ /** Any other failure. */
22
+ Unknown = "unknown"
23
+ }
9
24
  /** Progress state for a single file within an upload batch. */
10
25
  export interface FileUploadEntry {
11
26
  /** Unique identifier of the file in the batch. */
@@ -16,6 +31,8 @@ export interface FileUploadEntry {
16
31
  status: FileUploadStatus;
17
32
  /** 0–100 while uploading when the transport reports byte progress. */
18
33
  percent?: number;
34
+ /** Why the upload failed; set only when `status` is `Failed`. */
35
+ failureReason?: FileUploadFailureReason;
19
36
  }
20
37
  /** State of the upload queue, as returned by `useDialFileUploadBatch`. */
21
38
  export interface FileUploadBatchState {
@@ -24,6 +41,35 @@ export interface FileUploadBatchState {
24
41
  /** Whether the upload queue should be visible. */
25
42
  isOpen: boolean;
26
43
  }
44
+ /** Lifecycle status of a single download in the download batch. */
45
+ export declare enum FileDownloadStatus {
46
+ Downloading = "downloading",
47
+ Completed = "completed",
48
+ Failed = "failed",
49
+ Cancelled = "cancelled"
50
+ }
51
+ /** Progress state for a single download: one file, or one archive of a selection. */
52
+ export interface FileDownloadEntry {
53
+ /** Unique identifier of the download in the batch. */
54
+ id: string;
55
+ /** Display name: the file name, or the archive name (`<folder>.zip` / `files.zip`). */
56
+ name: string;
57
+ /** Current download lifecycle status. */
58
+ status: FileDownloadStatus;
59
+ /** 0–100 while downloading when the total size is known or estimated; unset otherwise. */
60
+ percent?: number;
61
+ /** Why the download failed; set only when `status` is `Failed`. Shares the upload reasons. */
62
+ failureReason?: FileUploadFailureReason;
63
+ }
64
+ /** State of the download batch kept by `useDialFileMutations`. */
65
+ export interface FileDownloadBatchState {
66
+ /** Every download started since the batch was last cleared, settled ones included. */
67
+ files: FileDownloadEntry[];
68
+ /** Whether the download rows should be visible in the transfer queue. */
69
+ isOpen: boolean;
70
+ }
71
+ /** Returns whether any download in the batch is still in progress. */
72
+ export declare const isDownloadInProgress: (batchState: FileDownloadBatchState | null) => boolean;
27
73
  /** Returns whether any file in the batch is still queued or uploading. */
28
74
  export declare const isUploadInProgress: (batchState: FileUploadBatchState | null) => boolean;
29
75
  //# sourceMappingURL=upload-batch.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"upload-batch.d.ts","sourceRoot":"","sources":["../../src/file-manager/upload-batch.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,oBAAY,gBAAgB;IAC1B,MAAM,WAAW;IACjB,SAAS,cAAc;IACvB,SAAS,cAAc;IACvB,MAAM,WAAW;IACjB,SAAS,cAAc;CACxB;AAED,+DAA+D;AAC/D,MAAM,WAAW,eAAe;IAC9B,kDAAkD;IAClD,EAAE,EAAE,MAAM,CAAC;IACX,gCAAgC;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,uCAAuC;IACvC,MAAM,EAAE,gBAAgB,CAAC;IACzB,sEAAsE;IACtE,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,0EAA0E;AAC1E,MAAM,WAAW,oBAAoB;IACnC,mFAAmF;IACnF,KAAK,EAAE,eAAe,EAAE,CAAC;IACzB,kDAAkD;IAClD,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,0EAA0E;AAC1E,eAAO,MAAM,kBAAkB,GAC7B,YAAY,oBAAoB,GAAG,IAAI,KACtC,OAKS,CAAC"}
1
+ {"version":3,"file":"upload-batch.d.ts","sourceRoot":"","sources":["../../src/file-manager/upload-batch.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,oBAAY,gBAAgB;IAC1B,MAAM,WAAW;IACjB,SAAS,cAAc;IACvB,SAAS,cAAc;IACvB,MAAM,WAAW;IACjB,SAAS,cAAc;CACxB;AAED,8EAA8E;AAC9E,oBAAY,uBAAuB;IACjC,0EAA0E;IAC1E,QAAQ,aAAa;IACrB,6DAA6D;IAC7D,QAAQ,aAAa;IACrB,4DAA4D;IAC5D,SAAS,cAAc;IACvB,qEAAqE;IACrE,WAAW,gBAAgB;IAC3B,qEAAqE;IACrE,OAAO,YAAY;IACnB,yBAAyB;IACzB,OAAO,YAAY;CACpB;AAED,+DAA+D;AAC/D,MAAM,WAAW,eAAe;IAC9B,kDAAkD;IAClD,EAAE,EAAE,MAAM,CAAC;IACX,gCAAgC;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,uCAAuC;IACvC,MAAM,EAAE,gBAAgB,CAAC;IACzB,sEAAsE;IACtE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iEAAiE;IACjE,aAAa,CAAC,EAAE,uBAAuB,CAAC;CACzC;AAED,0EAA0E;AAC1E,MAAM,WAAW,oBAAoB;IACnC,mFAAmF;IACnF,KAAK,EAAE,eAAe,EAAE,CAAC;IACzB,kDAAkD;IAClD,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,mEAAmE;AACnE,oBAAY,kBAAkB;IAC5B,WAAW,gBAAgB;IAC3B,SAAS,cAAc;IACvB,MAAM,WAAW;IACjB,SAAS,cAAc;CACxB;AAED,qFAAqF;AACrF,MAAM,WAAW,iBAAiB;IAChC,sDAAsD;IACtD,EAAE,EAAE,MAAM,CAAC;IACX,uFAAuF;IACvF,IAAI,EAAE,MAAM,CAAC;IACb,yCAAyC;IACzC,MAAM,EAAE,kBAAkB,CAAC;IAC3B,0FAA0F;IAC1F,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8FAA8F;IAC9F,aAAa,CAAC,EAAE,uBAAuB,CAAC;CACzC;AAED,kEAAkE;AAClE,MAAM,WAAW,sBAAsB;IACrC,sFAAsF;IACtF,KAAK,EAAE,iBAAiB,EAAE,CAAC;IAC3B,yEAAyE;IACzE,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,sEAAsE;AACtE,eAAO,MAAM,oBAAoB,GAC/B,YAAY,sBAAsB,GAAG,IAAI,KACxC,OAGS,CAAC;AAEb,0EAA0E;AAC1E,eAAO,MAAM,kBAAkB,GAC7B,YAAY,oBAAoB,GAAG,IAAI,KACtC,OAKS,CAAC"}
@@ -1,6 +1,10 @@
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
- }({}), t = (e) => e?.files.some((e) => e.status === "queued" || e.status === "uploading") ?? !1;
4
+ }({}), t = /* @__PURE__ */ function(e) {
5
+ return e.Conflict = "conflict", e.TooLarge = "tooLarge", e.Forbidden = "forbidden", e.Unavailable = "unavailable", e.Network = "network", e.Unknown = "unknown", e;
6
+ }({}), n = /* @__PURE__ */ function(e) {
7
+ return e.Downloading = "downloading", e.Completed = "completed", e.Failed = "failed", e.Cancelled = "cancelled", e;
8
+ }({}), r = (e) => e?.files.some((e) => e.status === "downloading") ?? !1, i = (e) => e?.files.some((e) => e.status === "queued" || e.status === "uploading") ?? !1;
5
9
  //#endregion
6
- export { e as FileUploadStatus, t as isUploadInProgress };
10
+ export { n as FileDownloadStatus, t as FileUploadFailureReason, e as FileUploadStatus, r as isDownloadInProgress, i as isUploadInProgress };
@@ -1,5 +1,45 @@
1
- import { TransferQueueItem } from '@epam/ai-dial-ui-kit';
2
- import { FileUploadEntry } from './upload-batch';
3
- /** Maps upload entries onto the UI kit's `TransferQueue` rows. */
4
- export declare const toUploadQueueItems: (files: FileUploadEntry[]) => TransferQueueItem[];
1
+ import { TransferQueueItem, TransferQueueLabels } from '@epam/ai-dial-ui-kit';
2
+ import { FileDownloadBatchState, FileUploadBatchState, FileUploadEntry, FileUploadFailureReason } from './upload-batch';
3
+ /** Maps upload entries onto the UI kit's `TransferQueue` rows; a failed row's `message` is the host text for its reason, when there is one. */
4
+ export declare const toUploadQueueItems: (files: FileUploadEntry[], failureMessages?: Partial<Record<FileUploadFailureReason, string>>) => TransferQueueItem[];
5
+ /** Kind of a transfer-queue row, carried as its id prefix so cancel routes to the right batch. */
6
+ export declare enum TransferQueueRowKind {
7
+ Upload = "upload",
8
+ Download = "download"
9
+ }
10
+ /** Builds the id of a transfer-queue row from its kind and its batch entry id. */
11
+ export declare const toTransferQueueRowId: (kind: TransferQueueRowKind, entryId: string) => string;
12
+ /** Splits a transfer-queue row id back into its kind and batch entry id; `undefined` for an id of neither kind. */
13
+ export declare const parseTransferQueueRowId: (rowId: string) => {
14
+ kind: TransferQueueRowKind;
15
+ entryId: string;
16
+ } | undefined;
17
+ /**
18
+ * Maps the upload and download batches onto one UI kit `TransferQueue`:
19
+ * upload rows first, then download rows, each id prefixed by its kind.
20
+ */
21
+ export declare const toTransferQueueItems: (uploadBatch: FileUploadBatchState | null, downloadBatch: FileDownloadBatchState | null, failureMessages?: Partial<Record<FileUploadFailureReason, string>>) => TransferQueueItem[];
22
+ /** Row wording for a download row, as `DialFileManagerShellLabels.downloadQueueLabels` carries it. */
23
+ type DownloadRowLabels = Partial<Pick<TransferQueueLabels, 'cancelItemAriaLabel' | 'itemProgressAriaLabel' | 'queueProgressAriaLabel'>>;
24
+ /** Inputs of {@link buildTransferQueueLabels}. */
25
+ interface TransferQueueLabelSources {
26
+ /** The upload queue's labels, used for every upload row and as the base. */
27
+ uploadLabels?: Partial<TransferQueueLabels>;
28
+ /** Download-row wording; without it the queue keeps the upload labels. */
29
+ downloadLabels?: DownloadRowLabels;
30
+ /** Name of the aggregate bar while both kinds run. */
31
+ mixedProgressLabel?: string;
32
+ /** File names of the upload rows. */
33
+ uploadNames: ReadonlySet<string>;
34
+ /** File names of the download rows. */
35
+ downloadNames: ReadonlySet<string>;
36
+ }
37
+ /**
38
+ * The queue's labels with each row's cancel and progress names worded for its
39
+ * own kind (uploading / downloading), since the kit labels a whole queue
40
+ * rather than a row. A name present in both kinds keeps the upload wording.
41
+ * The aggregate bar is named for downloads, uploads, or both.
42
+ */
43
+ export declare const buildTransferQueueLabels: ({ uploadLabels, downloadLabels, mixedProgressLabel, uploadNames, downloadNames, }: TransferQueueLabelSources) => Partial<TransferQueueLabels> | undefined;
44
+ export {};
5
45
  //# sourceMappingURL=upload-queue.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"upload-queue.d.ts","sourceRoot":"","sources":["../../src/file-manager/upload-queue.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,iBAAiB,EAEvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,KAAK,eAAe,EAAoB,MAAM,gBAAgB,CAAC;AAexE,kEAAkE;AAClE,eAAO,MAAM,kBAAkB,GAC7B,OAAO,eAAe,EAAE,KACvB,iBAAiB,EAMf,CAAC"}
1
+ {"version":3,"file":"upload-queue.d.ts","sourceRoot":"","sources":["../../src/file-manager/upload-queue.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,iBAAiB,EAEtB,KAAK,mBAAmB,EACzB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,KAAK,sBAAsB,EAG3B,KAAK,oBAAoB,EACzB,KAAK,eAAe,EACpB,KAAK,uBAAuB,EAE7B,MAAM,gBAAgB,CAAC;AAexB,+IAA+I;AAC/I,eAAO,MAAM,kBAAkB,GAC7B,OAAO,eAAe,EAAE,EACxB,kBAAkB,OAAO,CAAC,MAAM,CAAC,uBAAuB,EAAE,MAAM,CAAC,CAAC,KACjE,iBAAiB,EAWf,CAAC;AAYN,kGAAkG;AAClG,oBAAY,oBAAoB;IAC9B,MAAM,WAAW;IACjB,QAAQ,aAAa;CACtB;AAED,kFAAkF;AAClF,eAAO,MAAM,oBAAoB,GAC/B,MAAM,oBAAoB,EAC1B,SAAS,MAAM,KACd,MAA8B,CAAC;AAElC,mHAAmH;AACnH,eAAO,MAAM,uBAAuB,GAClC,OAAO,MAAM,KACZ;IAAE,IAAI,EAAE,oBAAoB,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,SAUpD,CAAC;AAgBF;;;GAGG;AACH,eAAO,MAAM,oBAAoB,GAC/B,aAAa,oBAAoB,GAAG,IAAI,EACxC,eAAe,sBAAsB,GAAG,IAAI,EAC5C,kBAAkB,OAAO,CAAC,MAAM,CAAC,uBAAuB,EAAE,MAAM,CAAC,CAAC,KACjE,iBAAiB,EAUnB,CAAC;AAEF,sGAAsG;AACtG,KAAK,iBAAiB,GAAG,OAAO,CAC9B,IAAI,CACF,mBAAmB,EACnB,qBAAqB,GAAG,uBAAuB,GAAG,wBAAwB,CAC3E,CACF,CAAC;AAEF,kDAAkD;AAClD,UAAU,yBAAyB;IACjC,4EAA4E;IAC5E,YAAY,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAC5C,0EAA0E;IAC1E,cAAc,CAAC,EAAE,iBAAiB,CAAC;IACnC,sDAAsD;IACtD,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,qCAAqC;IACrC,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACjC,uCAAuC;IACvC,aAAa,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACpC;AAED;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,GAAI,mFAMtC,yBAAyB,KAAG,OAAO,CAAC,mBAAmB,CAAC,GAAG,SAoC7D,CAAC"}
@@ -1,17 +1,49 @@
1
- import { FileUploadStatus as e } from "./upload-batch.js";
2
- import { TransferQueueItemStatus as t } from "@epam/ai-dial-ui-kit";
1
+ import { FileDownloadStatus as e, FileUploadStatus as t } from "./upload-batch.js";
2
+ import { TransferQueueItemStatus as n } from "@epam/ai-dial-ui-kit";
3
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) => ({
4
+ var r = {
5
+ [t.Queued]: n.InProgress,
6
+ [t.Uploading]: n.InProgress,
7
+ [t.Completed]: n.Success,
8
+ [t.Failed]: n.Failed,
9
+ [t.Cancelled]: n.Canceled
10
+ }, i = (e, n) => e.map((e) => ({
11
11
  id: e.id,
12
12
  name: e.name,
13
- status: n[e.status],
14
- percent: e.percent
15
- }));
13
+ status: r[e.status],
14
+ percent: e.percent,
15
+ message: e.status === t.Failed && e.failureReason != null ? n?.[e.failureReason] : void 0
16
+ })), a = {
17
+ [e.Downloading]: n.InProgress,
18
+ [e.Completed]: n.Success,
19
+ [e.Failed]: n.Failed,
20
+ [e.Cancelled]: n.Canceled
21
+ }, o = /* @__PURE__ */ function(e) {
22
+ return e.Upload = "upload", e.Download = "download", e;
23
+ }({}), s = (e, t) => `${e}:${t}`, c = (e) => {
24
+ let t = e.indexOf(":"), n = e.slice(0, t);
25
+ if (!(n !== "upload" && n !== "download")) return {
26
+ kind: n,
27
+ entryId: e.slice(t + 1)
28
+ };
29
+ }, l = (t, n) => ({
30
+ id: s("download", t.id),
31
+ name: t.name,
32
+ status: a[t.status],
33
+ percent: t.percent,
34
+ message: t.status === e.Failed && t.failureReason != null ? n?.[t.failureReason] : void 0
35
+ }), u = (e, t, n) => [...i(e?.files ?? [], n).map((e) => ({
36
+ ...e,
37
+ id: s("upload", e.id)
38
+ })), ...(t?.files ?? []).map((e) => l(e, n))], d = ({ uploadLabels: e, downloadLabels: t, mixedProgressLabel: n, uploadNames: r, downloadNames: i }) => {
39
+ if (!t || i.size === 0) return e;
40
+ let a = (e) => i.has(e) && !r.has(e), o = (e, t) => e && t ? (n) => a(n) ? t(n) : e(n) : e ?? t, s = r.size === 0 ? t.queueProgressAriaLabel ?? e?.queueProgressAriaLabel : n ?? e?.queueProgressAriaLabel, c = o(e?.cancelItemAriaLabel, t.cancelItemAriaLabel), l = o(e?.itemProgressAriaLabel, t.itemProgressAriaLabel);
41
+ return {
42
+ ...e,
43
+ ...c ? { cancelItemAriaLabel: c } : {},
44
+ ...l ? { itemProgressAriaLabel: l } : {},
45
+ ...s ? { queueProgressAriaLabel: s } : {}
46
+ };
47
+ };
16
48
  //#endregion
17
- export { r as toUploadQueueItems };
49
+ export { o as TransferQueueRowKind, d as buildTransferQueueLabels, c as parseTransferQueueRowId, u as toTransferQueueItems, s as toTransferQueueRowId, i as toUploadQueueItems };
package/file-manager.js CHANGED
@@ -1,4 +1,4 @@
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 };
1
+ import { TransferQueueRowKind as e, buildTransferQueueLabels as t, parseTransferQueueRowId as n, toTransferQueueItems as r, toTransferQueueRowId as i, toUploadQueueItems as a } from "./file-manager/upload-queue.js";
2
+ import { DialFileManagerShell as o } from "./file-manager/DialFileManagerShell/DialFileManagerShell.js";
3
+ import { FileManagerAttachModal as s } from "./file-manager/FileManagerAttachModal/FileManagerAttachModal.js";
4
+ export { o as DialFileManagerShell, s as FileManagerAttachModal, e as TransferQueueRowKind, t as buildTransferQueueLabels, n as parseTransferQueueRowId, r as toTransferQueueItems, i as toTransferQueueRowId, a as toUploadQueueItems };
package/index.css CHANGED
@@ -1,3 +1,3 @@
1
- ._message_1iqfi_1{color:var(--cfm-message-text,var(--text-primary,#161b2d))}._consequences_1iqfi_5{color:var(--cfm-consequence-text,var(--text-secondary,#57647a))}._footer_1iqfi_9{border-block-start:1px solid var(--cfm-footer-border,var(--stroke-tertiary,#e0e6f0))}._info_pkxew_1{--rs-bg:var(--bg-info,#e1eaf9)}._danger_pkxew_5{--rs-bg:var(--bg-control-error-alpha-active,#f7646433);--rs-border:var(--stroke-error-alpha,#ae2f2f73)}._agentIconBadge_1ger8_1{background:var(--di-icon-bg,var(--bg-layer-sunken,#eef1f7))}._title_11w3i_1{color:var(--ih-title-color,var(--text-primary,#161b2d))}._count_11w3i_5{color:var(--ih-count-color,var(--text-secondary,#57647a))}._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}._typeLabel_17nhs_1{color:var(--cir-type-label-text,var(--text-secondary,#57647a))}._names_g31v4_1{color:var(--cfm-message-text,var(--text-primary,#161b2d))}._more_g31v4_5{color:var(--cfm-consequence-text,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_1ql91_1{0%{background-position:200%}to{background-position:-200%}}._thinking_1ql91_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_1ql91_1}._h6_1ql91_18{color:var(--cm-h6-text,var(--text-secondary,#57647a))}._codeInline_1ql91_22{background:var(--cm-code-inline-bg,var(--bg-layer-raised,#fcfcfc));color:var(--cm-code-inline-text,var(--text-primary,#161b2d))}._secondaryBorder_1ql91_27{border-color:var(--cm-markdown-border,var(--stroke-secondary,#d1dbea))}._blockquote_1ql91_31{border-color:var(--cm-blockquote-border,var(--stroke-primary,#57647a));color:var(--cm-blockquote-text,var(--text-secondary,#57647a))}._link_1ql91_36{color:var(--cm-link-text,var(--text-accent,#1d4ed8))}._link_1ql91_36:focus-visible{outline-color:var(--cm-link-focus,var(--stroke-focus,#161b2d))}._scrollContainer_n2oom_1{scrollbar-width:thin;scrollbar-color:var(--cm-math-scrollbar,var(--stroke-primary,#57647a)) transparent}._scrollContainer_n2oom_1::-webkit-scrollbar{height:4px}._scrollContainer_n2oom_1::-webkit-scrollbar-track{background-color:#0000}._scrollContainer_n2oom_1::-webkit-scrollbar-thumb{background-color:var(--cm-math-scrollbar,var(--stroke-primary,#57647a));border-radius:4px}._scrollContainer_n2oom_1:focus-visible{outline:1px solid var(--cm-math-focus,var(--stroke-focus,#161b2d));outline-offset:2px}._mathContent_n2oom_24{width:max-content;min-width:100%;display:block}._tableContainer_1qw2e_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_1qw2e_6{background:var(--cm-code-block-bg,var(--bg-layer-base,#f5f7fa))}._copiedIcon_1qw2e_10{color:var(--cm-code-block-copied,var(--text-success,#007274))}._scrollContainer_1qw2e_14{scrollbar-width:thin;scrollbar-color:var(--cm-table-scrollbar,var(--stroke-primary,#57647a)) transparent}._scrollContainer_1qw2e_14::-webkit-scrollbar{width:4px;height:4px}._scrollContainer_1qw2e_14::-webkit-scrollbar-track{background-color:#0000}._scrollContainer_1qw2e_14::-webkit-scrollbar-thumb{background-color:var(--cm-table-scrollbar,var(--stroke-primary,#57647a));border-radius:4px}._tableHeaderCell_1qw2e_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_1qw2e_37 td{background:var(--cm-code-block-header-bg,var(--bg-layer-raised,#fcfcfc))}._rowDivider_1qw2e_41{border-block-end:.5px solid var(--cm-table-row-divider,var(--stroke-tertiary,#e0e6f0))}tbody ._row_1qw2e_41:hover td{background:var(--cm-table-row-hover-bg,var(--bg-control-accent-alpha-hover,#2764d924))}._tableScrollFadeEnd_1qw2e_51{-webkit-mask-image:linear-gradient(to right, var(--cm-table-fade,var(--stroke-black,#161b2d)) 0, var(--cm-table-fade,var(--stroke-black,#161b2d)) calc(100% - 1rem), transparent 100%);mask-image:linear-gradient(to right, var(--cm-table-fade,var(--stroke-black,#161b2d)) 0, var(--cm-table-fade,var(--stroke-black,#161b2d)) calc(100% - 1rem), transparent 100%)}[dir=rtl] ._tableScrollFadeEnd_1qw2e_51{-webkit-mask-image:linear-gradient(to left, var(--cm-table-fade,var(--stroke-black,#161b2d)) 0, var(--cm-table-fade,var(--stroke-black,#161b2d)) calc(100% - 1rem), transparent 100%);mask-image:linear-gradient(to left, var(--cm-table-fade,var(--stroke-black,#161b2d)) 0, var(--cm-table-fade,var(--stroke-black,#161b2d)) calc(100% - 1rem), transparent 100%)}._tableScrollFadeStart_1qw2e_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%);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_1qw2e_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%);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_1qw2e_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%);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))}
1
+ ._surface_hmvxl_1{background:var(--dfms-surface,var(--bg-layer-base,#f5f7fa))}._message_1iqfi_1{color:var(--cfm-message-text,var(--text-primary,#161b2d))}._consequences_1iqfi_5{color:var(--cfm-consequence-text,var(--text-secondary,#57647a))}._footer_1iqfi_9{border-block-start:1px solid var(--cfm-footer-border,var(--stroke-tertiary,#e0e6f0))}._info_pkxew_1{--rs-bg:var(--bg-info,#e1eaf9)}._danger_pkxew_5{--rs-bg:var(--bg-control-error-alpha-active,#f7646433);--rs-border:var(--stroke-error-alpha,#ae2f2f73)}._agentIconBadge_1ger8_1{background:var(--di-icon-bg,var(--bg-layer-sunken,#eef1f7))}._title_11w3i_1{color:var(--ih-title-color,var(--text-primary,#161b2d))}._count_11w3i_5{color:var(--ih-count-color,var(--text-secondary,#57647a))}._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}._typeLabel_17nhs_1{color:var(--cir-type-label-text,var(--text-secondary,#57647a))}._names_g31v4_1{color:var(--cfm-message-text,var(--text-primary,#161b2d))}._more_g31v4_5{color:var(--cfm-consequence-text,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_1ql91_1{0%{background-position:200%}to{background-position:-200%}}._thinking_1ql91_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_1ql91_1}._h6_1ql91_18{color:var(--cm-h6-text,var(--text-secondary,#57647a))}._codeInline_1ql91_22{background:var(--cm-code-inline-bg,var(--bg-layer-raised,#fcfcfc));color:var(--cm-code-inline-text,var(--text-primary,#161b2d))}._secondaryBorder_1ql91_27{border-color:var(--cm-markdown-border,var(--stroke-secondary,#d1dbea))}._blockquote_1ql91_31{border-color:var(--cm-blockquote-border,var(--stroke-primary,#57647a));color:var(--cm-blockquote-text,var(--text-secondary,#57647a))}._link_1ql91_36{color:var(--cm-link-text,var(--text-accent,#1d4ed8))}._link_1ql91_36:focus-visible{outline-color:var(--cm-link-focus,var(--stroke-focus,#161b2d))}._scrollContainer_n2oom_1{scrollbar-width:thin;scrollbar-color:var(--cm-math-scrollbar,var(--stroke-primary,#57647a)) transparent}._scrollContainer_n2oom_1::-webkit-scrollbar{height:4px}._scrollContainer_n2oom_1::-webkit-scrollbar-track{background-color:#0000}._scrollContainer_n2oom_1::-webkit-scrollbar-thumb{background-color:var(--cm-math-scrollbar,var(--stroke-primary,#57647a));border-radius:4px}._scrollContainer_n2oom_1:focus-visible{outline:1px solid var(--cm-math-focus,var(--stroke-focus,#161b2d));outline-offset:2px}._mathContent_n2oom_24{width:max-content;min-width:100%;display:block}._tableContainer_1qw2e_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_1qw2e_6{background:var(--cm-code-block-bg,var(--bg-layer-base,#f5f7fa))}._copiedIcon_1qw2e_10{color:var(--cm-code-block-copied,var(--text-success,#007274))}._scrollContainer_1qw2e_14{scrollbar-width:thin;scrollbar-color:var(--cm-table-scrollbar,var(--stroke-primary,#57647a)) transparent}._scrollContainer_1qw2e_14::-webkit-scrollbar{width:4px;height:4px}._scrollContainer_1qw2e_14::-webkit-scrollbar-track{background-color:#0000}._scrollContainer_1qw2e_14::-webkit-scrollbar-thumb{background-color:var(--cm-table-scrollbar,var(--stroke-primary,#57647a));border-radius:4px}._tableHeaderCell_1qw2e_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_1qw2e_37 td{background:var(--cm-code-block-header-bg,var(--bg-layer-raised,#fcfcfc))}._rowDivider_1qw2e_41{border-block-end:.5px solid var(--cm-table-row-divider,var(--stroke-tertiary,#e0e6f0))}tbody ._row_1qw2e_41:hover td{background:var(--cm-table-row-hover-bg,var(--bg-control-accent-alpha-hover,#2764d924))}._tableScrollFadeEnd_1qw2e_51{-webkit-mask-image:linear-gradient(to right, var(--cm-table-fade,var(--stroke-black,#161b2d)) 0, var(--cm-table-fade,var(--stroke-black,#161b2d)) calc(100% - 1rem), transparent 100%);mask-image:linear-gradient(to right, var(--cm-table-fade,var(--stroke-black,#161b2d)) 0, var(--cm-table-fade,var(--stroke-black,#161b2d)) calc(100% - 1rem), transparent 100%)}[dir=rtl] ._tableScrollFadeEnd_1qw2e_51{-webkit-mask-image:linear-gradient(to left, var(--cm-table-fade,var(--stroke-black,#161b2d)) 0, var(--cm-table-fade,var(--stroke-black,#161b2d)) calc(100% - 1rem), transparent 100%);mask-image:linear-gradient(to left, var(--cm-table-fade,var(--stroke-black,#161b2d)) 0, var(--cm-table-fade,var(--stroke-black,#161b2d)) calc(100% - 1rem), transparent 100%)}._tableScrollFadeStart_1qw2e_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%);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_1qw2e_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%);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_1qw2e_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%);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))}
2
2
  /*$vite$:1*//*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
3
- @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-space-y-reverse:0;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid}}}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-e-0{inset-inline-end:0}.inset-e-2{inset-inline-end:.5rem}.inset-e-4{inset-inline-end:1rem}.top-0{top:0}.top-2{top:.5rem}.top-\[-6px\]{top:-6px}.bottom-4{bottom:1rem}.z-10{z-index:10}.z-52{z-index:52}.z-70{z-index:70}.z-\[2\]{z-index:2}.mx-0\.5{margin-inline:.125rem}.my-4{margin-block:1rem}.my-5{margin-block:1.25rem}.ms-auto{margin-inline-start:auto}.me-1\.5{margin-inline-end:.375rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-auto{margin-top:auto}.mb-1\.5{margin-bottom:.375rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.size-full{width:100%;height:100%}.h-0{height:0}.h-\[24px\]{height:24px}.h-\[min\(900px\,100dvh\)\]\!{height:min(900px,100dvh)!important}.h-fit\!{height:fit-content!important}.h-full{height:100%}.max-h-\[50vh\]{max-height:50vh}.max-h-\[60vh\]{max-height:60vh}.max-h-\[344px\]{max-height:344px}.max-h-full\!{max-height:100%!important}.min-h-0{min-height:0}.min-h-10{min-height:2.5rem}.w-\[360px\]{width:360px}.w-\[400px\]\!{width:400px!important}.w-full{width:100%}.w-max{width:max-content}.max-w-96{max-width:24rem}.max-w-\[30\%\]{max-width:30%}.max-w-\[45\%\]{max-width:45%}.max-w-\[1600px\]\!{max-width:1600px!important}.max-w-full{max-width:100%}.min-w-0{min-width:0}.min-w-full{min-width:100%}.flex-1{flex:1}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.resize{resize:both}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(.25rem * var(--tw-space-y-reverse));margin-block-end:calc(.25rem * calc(1 - var(--tw-space-y-reverse)))}.gap-x-3{column-gap:.75rem}.self-stretch{align-self:stretch}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.\[overflow\:clip\]{overflow:clip}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-hidden{overflow-y:hidden}.rounded{border-radius:4px}.rounded-\[14px\]{border-radius:14px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.border{border-style:var(--tw-border-style);border-width:1px}.border-s-2{border-inline-start-style:var(--tw-border-style);border-inline-start-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-tertiary{border-color:var(--stroke-tertiary,#e0e6f0)}.bg-backdrop{background-color:var(--bg-backdrop,#161b2d4d)}.bg-layer-base{background-color:var(--bg-layer-base,#f5f7fa)}.bg-layer-base\!{background-color:var(--bg-layer-base,#f5f7fa)!important}.bg-layer-raised{background-color:var(--bg-layer-raised,#fcfcfc)}.bg-layer-sunken{background-color:var(--bg-layer-sunken,#eef1f7)}.object-contain{object-fit:contain}.p-0{padding:0}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.px-0{padding-inline:0}.px-1{padding-inline:.25rem}.px-1\.5{padding-inline:.375rem}.px-2{padding-inline:.5rem}.px-3{padding-inline:.75rem}.px-4{padding-inline:1rem}.px-6{padding-inline:1.5rem}.py-0{padding-block:0}.py-0\.5{padding-block:.125rem}.py-1{padding-block:.25rem}.py-2{padding-block:.5rem}.py-2\.5{padding-block:.625rem}.py-4{padding-block:1rem}.py-\[7px\]{padding-block:7px}.ps-4{padding-inline-start:1rem}.ps-5{padding-inline-start:1.25rem}.ps-\[2em\]{padding-inline-start:2em}.pt-0{padding-top:0}.pt-1{padding-top:.25rem}.pb-0{padding-bottom:0}.pb-4{padding-bottom:1rem}.text-center{text-align:center}.text-end{text-align:end}.text-start{text-align:start}.align-middle{vertical-align:middle}.align-top{vertical-align:top}.\[text-wrap\:balance\]{text-wrap:balance}.\[text-wrap\:pretty\]{text-wrap:pretty}.\[overflow-wrap\:anywhere\]{overflow-wrap:anywhere}.break-words{overflow-wrap:break-word}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-wrap{white-space:pre-wrap}.text-primary{color:var(--text-primary,#161b2d)}.text-secondary{color:var(--text-secondary,#57647a)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.decoration-current\/60{text-decoration-color:currentColor}@supports (color:color-mix(in lab, red, red)){.decoration-current\/60{-webkit-text-decoration-color:color-mix(in oklab, currentcolor 60%, transparent);-webkit-text-decoration-color:color-mix(in oklab, currentcolor 60%, transparent);text-decoration-color:color-mix(in oklab, currentcolor 60%, transparent)}}.underline-offset-2{text-underline-offset:2px}.opacity-0{opacity:0}.opacity-75{opacity:.75}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-chat-button{--tw-shadow:0 2px 12px 0 var(--tw-shadow-color,var(--shadow-xs-1,#2764d933)), 0 2px 6px 0 var(--tw-shadow-color,var(--shadow-xs-2,#161b2d08));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 8px 10px 0 var(--tw-shadow-color,var(--shadow-sm,#2764d914));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-xs{--tw-shadow:0 1px 4px 0 var(--tw-shadow-color,var(--shadow-xs-1,#2764d933)), 0 1px 2px 0 var(--tw-shadow-color,var(--shadow-xs-2,#161b2d08));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,cubic-bezier(.4, 0, .2, 1));transition-duration:var(--tw-duration,.15s)}@media (hover:hover){.group-hover\/table\:opacity-100:is(:where(.group\/table):hover *){opacity:1}}.first\:mt-0:first-child{margin-top:0}.last\:mb-0:last-child{margin-bottom:0}.focus-within\:opacity-100:focus-within{opacity:1}@media (hover:hover){.hover\:decoration-current:hover{text-decoration-color:currentColor}}.focus-visible\:outline:focus-visible,.focus-visible\:outline-1:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\:outline-offset-2:focus-visible{outline-offset:2px}.rtl\:flex-row-reverse:where(:dir(rtl),[dir=rtl],[dir=rtl] *){flex-direction:row-reverse}.rtl\:justify-start:where(:dir(rtl),[dir=rtl],[dir=rtl] *){justify-content:flex-start}@media (max-width:1279px){.mobile\:h-full\!{height:100%!important}.mobile\:max-w-full\!{max-width:100%!important}.mobile\:flex-1{flex:1}.mobile\:rounded-none{border-radius:0}.mobile\:p-0{padding:0}}@media (min-width:1280px){.desktop\:p-4{padding:1rem}.desktop\:px-6{padding-inline:1.5rem}}.\[\&_\.w-md-editor\:not\(\.w-md-editor-fullscreen\)\]\:\!h-\[var\(--resizable-field-max-height\,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\,70vh\)\] .w-md-editor:not(.w-md-editor-fullscreen){max-height:var(--resizable-field-max-height,70vh)}.\[\&_\.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}.\[\&_\.wmde-markdown\>ol\]\:list-decimal .wmde-markdown>ol{list-style-type:decimal}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}
3
+ @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-space-y-reverse:0;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid}}}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-e-0{inset-inline-end:0}.inset-e-2{inset-inline-end:.5rem}.inset-e-4{inset-inline-end:1rem}.top-0{top:0}.top-2{top:.5rem}.top-\[-6px\]{top:-6px}.bottom-4{bottom:1rem}.z-10{z-index:10}.z-51{z-index:51}.z-52{z-index:52}.z-\[2\]{z-index:2}.mx-0\.5{margin-inline:.125rem}.my-4{margin-block:1rem}.my-5{margin-block:1.25rem}.ms-auto{margin-inline-start:auto}.me-1\.5{margin-inline-end:.375rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-auto{margin-top:auto}.mb-1\.5{margin-bottom:.375rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.size-full{width:100%;height:100%}.h-0{height:0}.h-\[24px\]{height:24px}.h-\[min\(900px\,100dvh\)\]\!{height:min(900px,100dvh)!important}.h-fit\!{height:fit-content!important}.h-full{height:100%}.max-h-\[50vh\]{max-height:50vh}.max-h-\[60vh\]{max-height:60vh}.max-h-\[344px\]{max-height:344px}.max-h-full\!{max-height:100%!important}.min-h-0{min-height:0}.min-h-10{min-height:2.5rem}.w-\[360px\]{width:360px}.w-\[400px\]\!{width:400px!important}.w-full{width:100%}.w-max{width:max-content}.max-w-96{max-width:24rem}.max-w-\[30\%\]{max-width:30%}.max-w-\[45\%\]{max-width:45%}.max-w-\[1600px\]\!{max-width:1600px!important}.max-w-full{max-width:100%}.min-w-0{min-width:0}.min-w-full{min-width:100%}.flex-1{flex:1}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.resize{resize:both}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(.25rem * var(--tw-space-y-reverse));margin-block-end:calc(.25rem * calc(1 - var(--tw-space-y-reverse)))}.gap-x-3{column-gap:.75rem}.self-stretch{align-self:stretch}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.\[overflow\:clip\]{overflow:clip}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-hidden{overflow-y:hidden}.rounded{border-radius:4px}.rounded-\[14px\]{border-radius:14px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.border{border-style:var(--tw-border-style);border-width:1px}.border-s-2{border-inline-start-style:var(--tw-border-style);border-inline-start-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-tertiary{border-color:var(--stroke-tertiary,#e0e6f0)}.bg-backdrop{background-color:var(--bg-backdrop,#161b2d4d)}.bg-layer-base\!{background-color:var(--bg-layer-base,#f5f7fa)!important}.bg-layer-raised{background-color:var(--bg-layer-raised,#fcfcfc)}.bg-layer-sunken{background-color:var(--bg-layer-sunken,#eef1f7)}.object-contain{object-fit:contain}.p-0{padding:0}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.px-0{padding-inline:0}.px-1{padding-inline:.25rem}.px-1\.5{padding-inline:.375rem}.px-2{padding-inline:.5rem}.px-3{padding-inline:.75rem}.px-4{padding-inline:1rem}.px-6{padding-inline:1.5rem}.py-0{padding-block:0}.py-0\.5{padding-block:.125rem}.py-1{padding-block:.25rem}.py-2{padding-block:.5rem}.py-2\.5{padding-block:.625rem}.py-4{padding-block:1rem}.py-\[7px\]{padding-block:7px}.ps-4{padding-inline-start:1rem}.ps-5{padding-inline-start:1.25rem}.ps-\[2em\]{padding-inline-start:2em}.pt-0{padding-top:0}.pt-1{padding-top:.25rem}.pb-0{padding-bottom:0}.pb-4{padding-bottom:1rem}.text-center{text-align:center}.text-end{text-align:end}.text-start{text-align:start}.align-middle{vertical-align:middle}.align-top{vertical-align:top}.\[text-wrap\:balance\]{text-wrap:balance}.\[text-wrap\:pretty\]{text-wrap:pretty}.\[overflow-wrap\:anywhere\]{overflow-wrap:anywhere}.break-words{overflow-wrap:break-word}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-wrap{white-space:pre-wrap}.text-primary{color:var(--text-primary,#161b2d)}.text-secondary{color:var(--text-secondary,#57647a)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.decoration-current\/60{text-decoration-color:currentColor}@supports (color:color-mix(in lab, red, red)){.decoration-current\/60{-webkit-text-decoration-color:color-mix(in oklab, currentcolor 60%, transparent);-webkit-text-decoration-color:color-mix(in oklab, currentcolor 60%, transparent);text-decoration-color:color-mix(in oklab, currentcolor 60%, transparent)}}.underline-offset-2{text-underline-offset:2px}.opacity-0{opacity:0}.opacity-75{opacity:.75}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-chat-button{--tw-shadow:0 2px 12px 0 var(--tw-shadow-color,var(--shadow-xs-1,#2764d933)), 0 2px 6px 0 var(--tw-shadow-color,var(--shadow-xs-2,#161b2d08));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:4px 9px 16px 1px var(--tw-shadow-color,var(--shadow-sm-2,var(--shadow-sm,#2764d90f))), 0 -2px 4px 2px var(--tw-shadow-color,var(--shadow-sm-1,#2764d90a));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-xs{--tw-shadow:0 1px 4px 0 var(--tw-shadow-color,var(--shadow-xs-1,#2764d933)), 0 1px 2px 0 var(--tw-shadow-color,var(--shadow-xs-2,#161b2d08));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,cubic-bezier(.4, 0, .2, 1));transition-duration:var(--tw-duration,.15s)}@media (hover:hover){.group-hover\/table\:opacity-100:is(:where(.group\/table):hover *){opacity:1}}.first\:mt-0:first-child{margin-top:0}.last\:mb-0:last-child{margin-bottom:0}.focus-within\:opacity-100:focus-within{opacity:1}@media (hover:hover){.hover\:decoration-current:hover{text-decoration-color:currentColor}}.focus-visible\:outline:focus-visible,.focus-visible\:outline-1:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\:outline-offset-2:focus-visible{outline-offset:2px}.rtl\:flex-row-reverse:where(:dir(rtl),[dir=rtl],[dir=rtl] *){flex-direction:row-reverse}.rtl\:justify-start:where(:dir(rtl),[dir=rtl],[dir=rtl] *){justify-content:flex-start}@media (max-width:1279px){.mobile\:h-full\!{height:100%!important}.mobile\:max-w-full\!{max-width:100%!important}.mobile\:flex-1{flex:1}.mobile\:rounded-none{border-radius:0}.mobile\:p-0{padding:0}}@media (min-width:1280px){.desktop\:p-4{padding:1rem}.desktop\:px-6{padding-inline:1.5rem}}.\[\&_\.w-md-editor\:not\(\.w-md-editor-fullscreen\)\]\:\!h-\[var\(--resizable-field-max-height\,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\,70vh\)\] .w-md-editor:not(.w-md-editor-fullscreen){max-height:var(--resizable-field-max-height,70vh)}.\[\&_\.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}.\[\&_\.wmde-markdown\>ol\]\:list-decimal .wmde-markdown>ol{list-style-type:decimal}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}
package/index.js CHANGED
@@ -72,8 +72,8 @@ import { useIsMobile as Ot } from "./hooks/useIsMobile.js";
72
72
  import { useUnsavedChangesGuard as kt } from "./hooks/useUnsavedChangesGuard.js";
73
73
  import { DialFileManagerActionProfile as At, DialFileManagerVariant as jt } from "./file-manager/file-manager-variant.js";
74
74
  import { getParentFolderPath as Mt, isHiddenPath as Nt } from "./file-manager/path.js";
75
- import { FileUploadStatus as Pt, isUploadInProgress as Ft } from "./file-manager/upload-batch.js";
76
- import { useGridEditingScroll as It } from "./file-manager/useGridEditingScroll/useGridEditingScroll.js";
77
- import { OperationLoaderModal as Lt } from "./file-manager/OperationLoaderModal/OperationLoaderModal.js";
78
- import { isSkillSelectionUnsupported as Rt } from "./utils/is-skill-selection-unsupported.js";
79
- export { p as AttachmentErrorReason, m as AttachmentType, xe as BASE_LG_ICON_PROPS, Se as BASE_MD_ICON_PROPS, o as BackgroundGenerationStatus, st as CHAT_SHARED_CLASS, vt as COMPACT_MARKDOWN_CLASS_NAMES, h as CatalogEntityType, v as CodeBlockTheme, $e as ConfirmationDialog, Qe as ConfirmationFooter, Ye as ConfirmationIdentityCard, Xe as ConfirmationIdentityRow, Ze as ConfirmationView, e as ConversationTransferErrorCode, t as ConversationTransferJobStatus, n as ConversationTransferSubjectKind, r as ConversationTransferUnitKind, i as ConversationTransferWarningCode, ze as CopyButton, Be as CopyIconButton, yt as DEFAULT_MARKDOWN_CLASS_NAMES, dt as DEFAULT_MARKDOWN_TABLE_DOWNLOAD_FILENAME, et as DELETE_CONFIRMATION_MAX_LISTED_NAMES, Ne as DESKTOP_BREAKPOINT_PX, Pe as DESKTOP_MEDIA_QUERY, nt as DeleteConfirmationDialog, tt as DeleteConfirmationView, Re as DeploymentIcon, At as DialFileManagerActionProfile, jt as DialFileManagerVariant, R as ENTITY_DESCRIPTION_MAX_LENGTH, z as ENTITY_INSTRUCTIONS_MAX_LENGTH, B as ENTITY_NAME_MAX_LENGTH, de as ENTITY_TYPE_BG_COLOR, fe as ENTITY_TYPE_COLOR, qe as EntityHeader, Ge as EntityTypeLabel, Ke as FeaturedChip, g as FileExtension, Pt as FileUploadStatus, a as FilterTab, Ce as HIDDEN_FILE, Le as InitialsAvatar, We as ItemHeader, Ee as MARKDOWN_EDITOR_FILL_HEIGHT_CLASS_NAME, De as MARKDOWN_EDITOR_MAX_HEIGHT_CLASS_NAME, Ae as MARKDOWN_EDITOR_PREVIEW_LIST_CLASS_NAME, ft as MARKDOWN_TABLE_CSV_MIME_TYPE, xt as MDMessageViewer, _ as MIMEType, y as MIME_TYPE_ALIASES, b as MIME_TYPE_AUDIO_PREFIX, x as MIME_TYPE_EXT_MAP, S as MIME_TYPE_WILDCARD, Fe as MOBILE_MAX_WIDTH_PX, Ie as MOBILE_MEDIA_QUERY, ut as MarkdownCodeBlock, gt as MarkdownRenderer, ht as MarkdownTable, pt as MarkdownTableCopyFormat, St as MarkdownWithPlaceholders, s as MessageRating, c as MessageRole, Lt as OperationLoaderModal, N as PROHIBITED_CONVERSATION_NAME_CHARS_RE, pe as PROMPT_PARAM_DEFAULT_SEPARATOR, me as PROMPT_PARAM_PATTERN, he as PROMPT_VARIABLE_CLASS_NAME, we as PUBLIC_BUCKET, Ue as PanelEmptyState, bt as PlainTextRenderer, Oe as RESIZABLE_FIELD_MAX_HEIGHT_CSS_VARIABLE, ke as RESIZABLE_TEXTAREA_CLASS_NAME, l as RequestStatus, Je as ResourceSummary, f as ResponseFormat, je as SELECT_LIST_MAX_HEIGHT_CLASS_NAME, Me as SELECT_LIST_MAX_HEIGHT_PX, u as StageStatus, d as StatusEvent, Te as TAG_INPUT_TAG_CLASS_NAME, rt as TableHeader, ot as TextRefinementField, it as TextRefinementState, re as base64ToBlob, W as buildCssVars, Ct as buildInlineSegmentSource, ge as buildPromptParamDefaults, Y as copyMarkdownAsRichText, X as copyToClipboard, wt as createInlineSegmentComponents, Tt as createRehypeInlineSegments, j as decodeJsonFromBase64, _t as defaultMarkdownComponents, ie as downloadTextFile, M as encodeJsonToBase64, ae as ensureDownloadFilename, V as exceedsMaxLength, Ve as extractInitials, _e as extractPromptParams, ee as formatCost, $ as formatFileSize, Q as formatLastUsed, te as formatPrice, ne as formatUnitPrice, be as generateUUID, C as getAttachmentTypeFromMime, w as getBaseMimeType, oe as getFileExtensionForLanguage, Mt as getParentFolderPath, P as getUtf8ByteLength, H as hasControlCharacters, T as inferMimeTypeFromPath, O as isAnnotationSelector, J as isAudioTranscriptionSupported, Nt as isHiddenPath, Rt as isSkillSelectionUnsupported, G as isStatusMessage, ue as isSyntaxHighlightingAllowed, Ft as isUploadInProgress, Z as markdownToRichTextHtml, U as mergeClasses, K as messageAttachmentToDisplayAttachment, q as messageAttachmentsToDisplayAttachments, E as normalizeMimeType, k as normalizePersistedHtmlTagAttachmentType, A as normalizeRawAnnotations, He as pickAvatarColor, ve as rehypePromptVariables, ye as resolvePromptParams, lt as restrainedSyntaxTheme, F as sanitizeConversationName, mt as serializeMarkdownTableRows, I as stripTrailingDots, D as stripUrlQueryAndFragment, se as triggerAnchorDownload, ce as triggerBlobDownload, L as truncateToUtf8Bytes, le as tryBase64ToBytes, Dt as useAvailableHeightCap, ct as useCodeCopy, Et as useCollapsedText, It as useGridEditingScroll, Ot as useIsMobile, at as useTextRefinement, kt as useUnsavedChangesGuard };
75
+ import { FileDownloadStatus as Pt, FileUploadFailureReason as Ft, FileUploadStatus as It, isDownloadInProgress as Lt, isUploadInProgress as Rt } from "./file-manager/upload-batch.js";
76
+ import { useGridEditingScroll as zt } from "./file-manager/useGridEditingScroll/useGridEditingScroll.js";
77
+ import { OperationLoaderModal as Bt } from "./file-manager/OperationLoaderModal/OperationLoaderModal.js";
78
+ import { isSkillSelectionUnsupported as Vt } from "./utils/is-skill-selection-unsupported.js";
79
+ export { p as AttachmentErrorReason, m as AttachmentType, xe as BASE_LG_ICON_PROPS, Se as BASE_MD_ICON_PROPS, o as BackgroundGenerationStatus, st as CHAT_SHARED_CLASS, vt as COMPACT_MARKDOWN_CLASS_NAMES, h as CatalogEntityType, v as CodeBlockTheme, $e as ConfirmationDialog, Qe as ConfirmationFooter, Ye as ConfirmationIdentityCard, Xe as ConfirmationIdentityRow, Ze as ConfirmationView, e as ConversationTransferErrorCode, t as ConversationTransferJobStatus, n as ConversationTransferSubjectKind, r as ConversationTransferUnitKind, i as ConversationTransferWarningCode, ze as CopyButton, Be as CopyIconButton, yt as DEFAULT_MARKDOWN_CLASS_NAMES, dt as DEFAULT_MARKDOWN_TABLE_DOWNLOAD_FILENAME, et as DELETE_CONFIRMATION_MAX_LISTED_NAMES, Ne as DESKTOP_BREAKPOINT_PX, Pe as DESKTOP_MEDIA_QUERY, nt as DeleteConfirmationDialog, tt as DeleteConfirmationView, Re as DeploymentIcon, At as DialFileManagerActionProfile, jt as DialFileManagerVariant, R as ENTITY_DESCRIPTION_MAX_LENGTH, z as ENTITY_INSTRUCTIONS_MAX_LENGTH, B as ENTITY_NAME_MAX_LENGTH, de as ENTITY_TYPE_BG_COLOR, fe as ENTITY_TYPE_COLOR, qe as EntityHeader, Ge as EntityTypeLabel, Ke as FeaturedChip, Pt as FileDownloadStatus, g as FileExtension, Ft as FileUploadFailureReason, It as FileUploadStatus, a as FilterTab, Ce as HIDDEN_FILE, Le as InitialsAvatar, We as ItemHeader, Ee as MARKDOWN_EDITOR_FILL_HEIGHT_CLASS_NAME, De as MARKDOWN_EDITOR_MAX_HEIGHT_CLASS_NAME, Ae as MARKDOWN_EDITOR_PREVIEW_LIST_CLASS_NAME, ft as MARKDOWN_TABLE_CSV_MIME_TYPE, xt as MDMessageViewer, _ as MIMEType, y as MIME_TYPE_ALIASES, b as MIME_TYPE_AUDIO_PREFIX, x as MIME_TYPE_EXT_MAP, S as MIME_TYPE_WILDCARD, Fe as MOBILE_MAX_WIDTH_PX, Ie as MOBILE_MEDIA_QUERY, ut as MarkdownCodeBlock, gt as MarkdownRenderer, ht as MarkdownTable, pt as MarkdownTableCopyFormat, St as MarkdownWithPlaceholders, s as MessageRating, c as MessageRole, Bt as OperationLoaderModal, N as PROHIBITED_CONVERSATION_NAME_CHARS_RE, pe as PROMPT_PARAM_DEFAULT_SEPARATOR, me as PROMPT_PARAM_PATTERN, he as PROMPT_VARIABLE_CLASS_NAME, we as PUBLIC_BUCKET, Ue as PanelEmptyState, bt as PlainTextRenderer, Oe as RESIZABLE_FIELD_MAX_HEIGHT_CSS_VARIABLE, ke as RESIZABLE_TEXTAREA_CLASS_NAME, l as RequestStatus, Je as ResourceSummary, f as ResponseFormat, je as SELECT_LIST_MAX_HEIGHT_CLASS_NAME, Me as SELECT_LIST_MAX_HEIGHT_PX, u as StageStatus, d as StatusEvent, Te as TAG_INPUT_TAG_CLASS_NAME, rt as TableHeader, ot as TextRefinementField, it as TextRefinementState, re as base64ToBlob, W as buildCssVars, Ct as buildInlineSegmentSource, ge as buildPromptParamDefaults, Y as copyMarkdownAsRichText, X as copyToClipboard, wt as createInlineSegmentComponents, Tt as createRehypeInlineSegments, j as decodeJsonFromBase64, _t as defaultMarkdownComponents, ie as downloadTextFile, M as encodeJsonToBase64, ae as ensureDownloadFilename, V as exceedsMaxLength, Ve as extractInitials, _e as extractPromptParams, ee as formatCost, $ as formatFileSize, Q as formatLastUsed, te as formatPrice, ne as formatUnitPrice, be as generateUUID, C as getAttachmentTypeFromMime, w as getBaseMimeType, oe as getFileExtensionForLanguage, Mt as getParentFolderPath, P as getUtf8ByteLength, H as hasControlCharacters, T as inferMimeTypeFromPath, O as isAnnotationSelector, J as isAudioTranscriptionSupported, Lt as isDownloadInProgress, Nt as isHiddenPath, Vt as isSkillSelectionUnsupported, G as isStatusMessage, ue as isSyntaxHighlightingAllowed, Rt as isUploadInProgress, Z as markdownToRichTextHtml, U as mergeClasses, K as messageAttachmentToDisplayAttachment, q as messageAttachmentsToDisplayAttachments, E as normalizeMimeType, k as normalizePersistedHtmlTagAttachmentType, A as normalizeRawAnnotations, He as pickAvatarColor, ve as rehypePromptVariables, ye as resolvePromptParams, lt as restrainedSyntaxTheme, F as sanitizeConversationName, mt as serializeMarkdownTableRows, I as stripTrailingDots, D as stripUrlQueryAndFragment, se as triggerAnchorDownload, ce as triggerBlobDownload, L as truncateToUtf8Bytes, le as tryBase64ToBytes, Dt as useAvailableHeightCap, ct as useCodeCopy, Et as useCollapsedText, zt as useGridEditingScroll, Ot as useIsMobile, at as useTextRefinement, kt as useUnsavedChangesGuard };
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.3.0-dev.106",
4
+ "version": "1.3.0-dev.110",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
7
7
  "sideEffects": [
@@ -32,8 +32,8 @@
32
32
  },
33
33
  "peerDependencies": {
34
34
  "react": "^19.2.8",
35
- "@epam/ai-dial-ui-kit": "^0.16.0-dev.16",
36
- "@epam/ai-dial-react-file-manager": "^0.4.0-dev.9",
35
+ "@epam/ai-dial-ui-kit": "^0.16.0-dev.20",
36
+ "@epam/ai-dial-react-file-manager": "^0.4.0-dev.11",
37
37
  "ag-grid-community": "^35.3.0"
38
38
  },
39
39
  "peerDependenciesMeta": {