@epam/ai-dial-chat-shared 1.3.0-dev.7 → 1.3.0-dev.70

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (248) hide show
  1. package/components/ConfirmationDialog/ConfirmationDialog.d.ts +41 -0
  2. package/components/ConfirmationDialog/ConfirmationDialog.d.ts.map +1 -0
  3. package/components/ConfirmationIdentityCard/ConfirmationIdentityCard.d.ts +33 -0
  4. package/components/ConfirmationIdentityCard/ConfirmationIdentityCard.d.ts.map +1 -0
  5. package/components/ConfirmationIdentityRow/ConfirmationIdentityRow.d.ts +33 -0
  6. package/components/ConfirmationIdentityRow/ConfirmationIdentityRow.d.ts.map +1 -0
  7. package/components/ConfirmationView/ConfirmationFooter.d.ts +41 -0
  8. package/components/ConfirmationView/ConfirmationFooter.d.ts.map +1 -0
  9. package/components/ConfirmationView/ConfirmationFooter.js +3 -1
  10. package/components/ConfirmationView/ConfirmationView.d.ts +57 -0
  11. package/components/ConfirmationView/ConfirmationView.d.ts.map +1 -0
  12. package/components/ConfirmationView/ConfirmationView.js +15 -14
  13. package/components/CopyButton/CopyButton.d.ts +19 -0
  14. package/components/CopyButton/CopyButton.d.ts.map +1 -0
  15. package/components/DeleteConfirmationDialog/DeleteConfirmationDialog.d.ts +41 -0
  16. package/components/DeleteConfirmationDialog/DeleteConfirmationDialog.d.ts.map +1 -0
  17. package/components/DeleteConfirmationDialog/DeleteConfirmationDialog.js +34 -0
  18. package/components/DeleteConfirmationView/DeleteConfirmationView.d.ts +49 -0
  19. package/components/DeleteConfirmationView/DeleteConfirmationView.d.ts.map +1 -0
  20. package/components/DeleteConfirmationView/DeleteConfirmationView.js +37 -0
  21. package/components/DeleteConfirmationView/DeleteConfirmationView.module.scss.js +6 -0
  22. package/components/DeploymentIcon/DeploymentIcon.d.ts +36 -0
  23. package/components/DeploymentIcon/DeploymentIcon.d.ts.map +1 -0
  24. package/components/EntityHeader/EntityHeader.d.ts +38 -0
  25. package/components/EntityHeader/EntityHeader.d.ts.map +1 -0
  26. package/components/EntityTypeLabel/EntityTypeLabel.d.ts +18 -0
  27. package/components/EntityTypeLabel/EntityTypeLabel.d.ts.map +1 -0
  28. package/components/FeaturedChip/FeaturedChip.d.ts +16 -0
  29. package/components/FeaturedChip/FeaturedChip.d.ts.map +1 -0
  30. package/components/InitialsAvatar/InitialsAvatar.d.ts +15 -0
  31. package/components/InitialsAvatar/InitialsAvatar.d.ts.map +1 -0
  32. package/components/ItemHeader/ItemHeader.d.ts +36 -0
  33. package/components/ItemHeader/ItemHeader.d.ts.map +1 -0
  34. package/components/MarkdownRenderer/CodeBlock/CodeBlock.d.ts +53 -0
  35. package/components/MarkdownRenderer/CodeBlock/CodeBlock.d.ts.map +1 -0
  36. package/components/MarkdownRenderer/CodeBlock/CodeBlock.js +1 -1
  37. package/components/MarkdownRenderer/CodeBlock/syntax-theme.d.ts +7 -0
  38. package/components/MarkdownRenderer/CodeBlock/syntax-theme.d.ts.map +1 -0
  39. package/components/MarkdownRenderer/MDMessageViewer.d.ts +66 -0
  40. package/components/MarkdownRenderer/MDMessageViewer.d.ts.map +1 -0
  41. package/components/MarkdownRenderer/MDMessageViewer.js +14 -12
  42. package/components/MarkdownRenderer/MarkdownRenderer.d.ts +139 -0
  43. package/components/MarkdownRenderer/MarkdownRenderer.d.ts.map +1 -0
  44. package/components/MarkdownRenderer/MarkdownRenderer.js +136 -129
  45. package/components/MarkdownRenderer/Math/MarkdownMathBlock.d.ts +18 -0
  46. package/components/MarkdownRenderer/Math/MarkdownMathBlock.d.ts.map +1 -0
  47. package/components/MarkdownRenderer/Math/MarkdownMathBlock.js +1 -1
  48. package/components/MarkdownRenderer/PlainTextRenderer.d.ts +39 -0
  49. package/components/MarkdownRenderer/PlainTextRenderer.d.ts.map +1 -0
  50. package/components/MarkdownRenderer/PlainTextRenderer.js +1 -1
  51. package/components/MarkdownRenderer/Table/MarkdownTable.d.ts +47 -0
  52. package/components/MarkdownRenderer/Table/MarkdownTable.d.ts.map +1 -0
  53. package/components/MarkdownRenderer/Table/MarkdownTable.js +3 -3
  54. package/components/MarkdownRenderer/Table/TableHeader.d.ts +22 -0
  55. package/components/MarkdownRenderer/Table/TableHeader.d.ts.map +1 -0
  56. package/components/MarkdownRenderer/Table/table-serialization.d.ts +16 -0
  57. package/components/MarkdownRenderer/Table/table-serialization.d.ts.map +1 -0
  58. package/components/MarkdownRenderer/Table/useMarkdownTableActions/useMarkdownTableActions.d.ts +27 -0
  59. package/components/MarkdownRenderer/Table/useMarkdownTableActions/useMarkdownTableActions.d.ts.map +1 -0
  60. package/components/MarkdownRenderer/TaskCheckbox/MarkdownTaskCheckbox.d.ts +9 -0
  61. package/components/MarkdownRenderer/TaskCheckbox/MarkdownTaskCheckbox.d.ts.map +1 -0
  62. package/components/MarkdownRenderer/ThinkingShimmer.d.ts +17 -0
  63. package/components/MarkdownRenderer/ThinkingShimmer.d.ts.map +1 -0
  64. package/components/MarkdownRenderer/markdown-class-names.d.ts +10 -0
  65. package/components/MarkdownRenderer/markdown-class-names.d.ts.map +1 -0
  66. package/components/MarkdownRenderer/markdown-whitespace.d.ts +15 -0
  67. package/components/MarkdownRenderer/markdown-whitespace.d.ts.map +1 -0
  68. package/components/MarkdownRenderer/markdown-whitespace.js +18 -0
  69. package/components/MarkdownWithPlaceholders/MarkdownWithPlaceholders.d.ts +25 -0
  70. package/components/MarkdownWithPlaceholders/MarkdownWithPlaceholders.d.ts.map +1 -0
  71. package/components/PanelEmptyState/PanelEmptyState.d.ts +22 -0
  72. package/components/PanelEmptyState/PanelEmptyState.d.ts.map +1 -0
  73. package/components/ResourceSummary/ResourceSummary.d.ts +49 -0
  74. package/components/ResourceSummary/ResourceSummary.d.ts.map +1 -0
  75. package/components/TextRefinementField/TextRefinementField.d.ts +31 -0
  76. package/components/TextRefinementField/TextRefinementField.d.ts.map +1 -0
  77. package/constants/breakpoint.d.ts +9 -0
  78. package/constants/breakpoint.d.ts.map +1 -0
  79. package/constants/dial.d.ts +5 -0
  80. package/constants/dial.d.ts.map +1 -0
  81. package/constants/entity-colors.d.ts +6 -0
  82. package/constants/entity-colors.d.ts.map +1 -0
  83. package/constants/icon.d.ts +14 -0
  84. package/constants/icon.d.ts.map +1 -0
  85. package/constants/markdown-editor.d.ts +2 -0
  86. package/constants/markdown-editor.d.ts.map +1 -0
  87. package/constants/mime-types.d.ts +27 -0
  88. package/constants/mime-types.d.ts.map +1 -0
  89. package/constants/public-class-names.d.ts +13 -0
  90. package/constants/public-class-names.d.ts.map +1 -0
  91. package/constants/resizable-fields.d.ts +5 -0
  92. package/constants/resizable-fields.d.ts.map +1 -0
  93. package/constants/select-list.d.ts +4 -0
  94. package/constants/select-list.d.ts.map +1 -0
  95. package/constants/tag-input.d.ts +2 -0
  96. package/constants/tag-input.d.ts.map +1 -0
  97. package/entry-points/file-manager.d.ts +5 -0
  98. package/entry-points/file-manager.d.ts.map +1 -0
  99. package/entry-points/markdown.d.ts +19 -0
  100. package/entry-points/markdown.d.ts.map +1 -0
  101. package/file-manager/DialFileManagerShell/DialFileManagerShell.d.ts +58 -0
  102. package/file-manager/DialFileManagerShell/DialFileManagerShell.d.ts.map +1 -0
  103. package/file-manager/DialFileManagerShell/DialFileManagerShell.js +190 -189
  104. package/file-manager/FileManagerAttachModal/FileManagerAttachModal.d.ts +89 -0
  105. package/file-manager/FileManagerAttachModal/FileManagerAttachModal.d.ts.map +1 -0
  106. package/file-manager/FileManagerAttachModal/FileManagerAttachModal.js +2 -1
  107. package/file-manager/OperationLoaderModal/OperationLoaderModal.d.ts +17 -0
  108. package/file-manager/OperationLoaderModal/OperationLoaderModal.d.ts.map +1 -0
  109. package/file-manager/attach-result.d.ts +9 -0
  110. package/file-manager/attach-result.d.ts.map +1 -0
  111. package/file-manager/file-manager-controller.d.ts +121 -0
  112. package/file-manager/file-manager-controller.d.ts.map +1 -0
  113. package/file-manager/file-manager-variant.d.ts +21 -0
  114. package/file-manager/file-manager-variant.d.ts.map +1 -0
  115. package/file-manager/file-upload-validation.d.ts +8 -0
  116. package/file-manager/file-upload-validation.d.ts.map +1 -0
  117. package/file-manager/index.d.ts +10 -0
  118. package/file-manager/index.d.ts.map +1 -0
  119. package/file-manager/labels.d.ts +156 -0
  120. package/file-manager/labels.d.ts.map +1 -0
  121. package/file-manager/path.d.ts +12 -0
  122. package/file-manager/path.d.ts.map +1 -0
  123. package/file-manager/upload-batch.d.ts +29 -0
  124. package/file-manager/upload-batch.d.ts.map +1 -0
  125. package/file-manager/upload-queue.d.ts +5 -0
  126. package/file-manager/upload-queue.d.ts.map +1 -0
  127. package/file-manager/useGridEditingScroll/useGridEditingScroll.d.ts +27 -0
  128. package/file-manager/useGridEditingScroll/useGridEditingScroll.d.ts.map +1 -0
  129. package/file-manager.d.ts +2 -506
  130. package/hooks/useAvailableHeightCap.d.ts +30 -0
  131. package/hooks/useAvailableHeightCap.d.ts.map +1 -0
  132. package/hooks/useCodeCopy.d.ts +6 -0
  133. package/hooks/useCodeCopy.d.ts.map +1 -0
  134. package/hooks/useCollapsedText.d.ts +27 -0
  135. package/hooks/useCollapsedText.d.ts.map +1 -0
  136. package/hooks/useHorizontalOverflow.d.ts +21 -0
  137. package/hooks/useHorizontalOverflow.d.ts.map +1 -0
  138. package/hooks/useIsMobile.d.ts +3 -0
  139. package/hooks/useIsMobile.d.ts.map +1 -0
  140. package/hooks/useStreamedMarkdownContent.d.ts +3 -0
  141. package/hooks/useStreamedMarkdownContent.d.ts.map +1 -0
  142. package/hooks/useTextRefinement.d.ts +44 -0
  143. package/hooks/useTextRefinement.d.ts.map +1 -0
  144. package/hooks/useUnsavedChangesGuard.d.ts +14 -0
  145. package/hooks/useUnsavedChangesGuard.d.ts.map +1 -0
  146. package/index.css +3 -2
  147. package/index.d.ts +78 -3072
  148. package/index.d.ts.map +1 -0
  149. package/index.js +28 -25
  150. package/markdown.d.ts +2 -465
  151. package/markdown.js +3 -2
  152. package/models/annotation.d.ts +143 -0
  153. package/models/annotation.d.ts.map +1 -0
  154. package/models/application-visualizer.d.ts +67 -0
  155. package/models/application-visualizer.d.ts.map +1 -0
  156. package/models/auth.d.ts +26 -0
  157. package/models/auth.d.ts.map +1 -0
  158. package/models/chat.d.ts +407 -0
  159. package/models/chat.d.ts.map +1 -0
  160. package/models/conversation-classification.d.ts +9 -0
  161. package/models/conversation-classification.d.ts.map +1 -0
  162. package/models/conversation-transfer.d.ts +96 -0
  163. package/models/conversation-transfer.d.ts.map +1 -0
  164. package/models/custom-visualizer.d.ts +61 -0
  165. package/models/custom-visualizer.d.ts.map +1 -0
  166. package/models/deployment-configuration.d.ts +55 -0
  167. package/models/deployment-configuration.d.ts.map +1 -0
  168. package/models/deployment-features.d.ts +17 -0
  169. package/models/deployment-features.d.ts.map +1 -0
  170. package/models/deployment.d.ts +31 -0
  171. package/models/deployment.d.ts.map +1 -0
  172. package/models/dial-model.d.ts +19 -0
  173. package/models/dial-model.d.ts.map +1 -0
  174. package/models/entity.d.ts +15 -0
  175. package/models/entity.d.ts.map +1 -0
  176. package/models/import-export.d.ts +23 -0
  177. package/models/import-export.d.ts.map +1 -0
  178. package/models/inline-segment.d.ts +11 -0
  179. package/models/inline-segment.d.ts.map +1 -0
  180. package/models/locale.d.ts +19 -0
  181. package/models/locale.d.ts.map +1 -0
  182. package/models/text-refinement.d.ts +18 -0
  183. package/models/text-refinement.d.ts.map +1 -0
  184. package/models/theme.d.ts +36 -0
  185. package/models/theme.d.ts.map +1 -0
  186. package/models/tool-menu-item.d.ts +13 -0
  187. package/models/tool-menu-item.d.ts.map +1 -0
  188. package/package.json +3 -3
  189. package/types/attachment.d.ts +25 -0
  190. package/types/attachment.d.ts.map +1 -0
  191. package/types/code-editor.d.ts +8 -0
  192. package/types/code-editor.d.ts.map +1 -0
  193. package/types/entity-type.d.ts +10 -0
  194. package/types/entity-type.d.ts.map +1 -0
  195. package/types/file-manager-node.d.ts +17 -0
  196. package/types/file-manager-node.d.ts.map +1 -0
  197. package/types/mime-type.d.ts +59 -0
  198. package/types/mime-type.d.ts.map +1 -0
  199. package/utils/annotation.d.ts +29 -0
  200. package/utils/annotation.d.ts.map +1 -0
  201. package/utils/avatar-color.d.ts +10 -0
  202. package/utils/avatar-color.d.ts.map +1 -0
  203. package/utils/build-css-vars.d.ts +4 -0
  204. package/utils/build-css-vars.d.ts.map +1 -0
  205. package/utils/copy-to-clipboard.d.ts +18 -0
  206. package/utils/copy-to-clipboard.d.ts.map +1 -0
  207. package/utils/entity-field-limits.d.ts +11 -0
  208. package/utils/entity-field-limits.d.ts.map +1 -0
  209. package/utils/entity-type.d.ts +5 -0
  210. package/utils/entity-type.d.ts.map +1 -0
  211. package/utils/file-download.d.ts +21 -0
  212. package/utils/file-download.d.ts.map +1 -0
  213. package/utils/format-file-size.d.ts +3 -0
  214. package/utils/format-file-size.d.ts.map +1 -0
  215. package/utils/format-last-used.d.ts +3 -0
  216. package/utils/format-last-used.d.ts.map +1 -0
  217. package/utils/format-price.d.ts +7 -0
  218. package/utils/format-price.d.ts.map +1 -0
  219. package/utils/generate-uuid.d.ts +3 -0
  220. package/utils/generate-uuid.d.ts.map +1 -0
  221. package/utils/initials.d.ts +3 -0
  222. package/utils/initials.d.ts.map +1 -0
  223. package/utils/inline-segments.d.ts +38 -0
  224. package/utils/inline-segments.d.ts.map +1 -0
  225. package/utils/inline-segments.js +53 -0
  226. package/utils/is-audio-transcription-supported.d.ts +3 -0
  227. package/utils/is-audio-transcription-supported.d.ts.map +1 -0
  228. package/utils/is-skill-selection-unsupported.d.ts +3 -0
  229. package/utils/is-skill-selection-unsupported.d.ts.map +1 -0
  230. package/utils/latex.d.ts +21 -0
  231. package/utils/latex.d.ts.map +1 -0
  232. package/utils/markdown-html.d.ts +14 -0
  233. package/utils/markdown-html.d.ts.map +1 -0
  234. package/utils/markdown-html.js +11 -0
  235. package/utils/merge-class.d.ts +4 -0
  236. package/utils/merge-class.d.ts.map +1 -0
  237. package/utils/message-attachment-to-display.d.ts +22 -0
  238. package/utils/message-attachment-to-display.d.ts.map +1 -0
  239. package/utils/message.d.ts +4 -0
  240. package/utils/message.d.ts.map +1 -0
  241. package/utils/mime-type.d.ts +22 -0
  242. package/utils/mime-type.d.ts.map +1 -0
  243. package/utils/prompt-variables.d.ts +62 -0
  244. package/utils/prompt-variables.d.ts.map +1 -0
  245. package/utils/string-utils.d.ts +11 -0
  246. package/utils/string-utils.d.ts.map +1 -0
  247. package/utils/syntax-highlighting.d.ts +8 -0
  248. package/utils/syntax-highlighting.d.ts.map +1 -0
@@ -4,52 +4,52 @@ import { getParentFolderPath as ee } from "../path.js";
4
4
  import { useGridEditingScroll as te } from "../useGridEditingScroll/useGridEditingScroll.js";
5
5
  import { OperationLoaderModal as ne } from "../OperationLoaderModal/OperationLoaderModal.js";
6
6
  import { toUploadQueueItems as re } from "../upload-queue.js";
7
- import { ButtonVariant as r, NOT_ALLOWED_SYMBOLS_REGEXP as ie, PrimaryButton as ae, Spinner as oe, TransferQueue as se } from "@epam/ai-dial-ui-kit";
8
- import { memo as i, useCallback as ce, useEffect as le, useMemo as a, useState as ue } from "react";
9
- import { Fragment as de, jsx as o, jsxs as s } from "react/jsx-runtime";
10
- import { DialFileManager as fe, DialFileManagerActions as c, DialFileManagerTabs as pe, GridSelectionMode as me } from "@epam/ai-dial-react-file-manager";
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";
11
11
  //#region src/file-manager/DialFileManagerShell/DialFileManagerShell.tsx
12
- var he = (e, t) => {
12
+ var ge = (e, t) => {
13
13
  if (e.isDownloading) return t.downloadingLabel;
14
14
  if (e.isDeleting) return t.deletingLabel;
15
15
  if (e.isRenaming && !e.isMoving) return t.renamingLabel;
16
16
  if (e.isUnsharing) return t.unsharingLabel;
17
17
  if (e.isRemovingAccess) return t.removingAccessLabel;
18
- }, l = ({ controller: i, labels: l, activeTab: u, tabs: d, onTabChange: f, selectedPaths: p, onSelectedPathsChange: ge, variant: m, actionProfile: _e, autoSelectUploadedItems: ve = !1, allowedFileTypes: ye, maxSelectableFileSize: h, oversizedUploadMessage: g, isRowSelectable: _, getDisabledTooltip: be, unsupportedFileTypeTooltip: xe }) => {
19
- let { items: Se, isLoading: Ce, error: we, path: v, onPathChange: Te, retry: Ee, onSearchFiles: De, isSearching: Oe, searchResults: ke, clearSearchResults: Ae, expandedPaths: y, loadedPaths: b, onExpandedPathsChange: x, onFolderPopupPathChange: je, folderPopupLoadingPaths: S, onUploadFiles: Me, onUploadArchive: Ne, onValidateUpload: Pe, uploadBatchState: C, cancelUpload: w, cancelUploadFile: T, clearUploadBatch: E, onCreateFolder: Fe, onCreateFolderValidate: Ie, onDownloadFiles: Le, isDownloading: Re, onDeleteFiles: ze, isDeleting: Be, onMoveToFiles: Ve, onRenameValidate: He, isRenaming: Ue, onCopyFiles: We, isCopying: Ge, isMoving: D, cancelCopyMove: Ke, uploadEnabled: O, isNewButtonDisabled: k, disabledNewButtonTooltip: A, visibleColumns: j, dateLocale: M, dateOptions: N, actionLabels: P, sharedWithMeIds: qe, sharedByMePaths: F, onUnshareFiles: Je, isUnsharing: Ye, onRemoveFilesAccess: Xe, isRemovingAccess: Ze, fileMetadata: I, isFileMetadataLoading: L, onGetInfo: Qe, clearMetadata: R, sectionTab: $e } = i, z = $e ?? u, [B, et] = ue(void 0), { handleGridApiChange: tt, reset: V } = te();
20
- le(() => {
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
21
  V();
22
22
  }, [z, V]);
23
- let H = a(() => {
23
+ let H = i(() => {
24
24
  let e = {};
25
- return c.Download in P && (e[c.Download] = l.downloadLabel), c.Delete in P && (e[c.Delete] = l.deleteLabel), c.Rename in P && (e[c.Rename] = l.renameLabel), c.Copy in P && (e[c.Copy] = l.copyLabel), c.Move in P && (e[c.Move] = l.moveLabel), c.Duplicate in P && (e[c.Duplicate] = l.duplicateLabel), c.Unshare in P && (e[c.Unshare] = l.unshareLabel), c.RemoveAccess in P && (e[c.RemoveAccess] = l.removeAccessLabel), 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
26
  }, [
27
27
  P,
28
- l.downloadLabel,
29
- l.deleteLabel,
30
- l.renameLabel,
31
- l.copyLabel,
32
- l.moveLabel,
33
- l.duplicateLabel,
34
- l.unshareLabel,
35
- l.removeAccessLabel
36
- ]), U = a(() => c.Info in 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
37
  ...H,
38
- [c.Info]: l.infoLabel
38
+ [s.Info]: c.infoLabel
39
39
  } : H, [
40
40
  H,
41
41
  P,
42
- l.infoLabel
43
- ]), W = a(() => {
44
- if (p.size === 0) return !1;
45
- for (let e of p) if (!F.has(e)) return !1;
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;
46
46
  return !0;
47
- }, [p, F]), G = a(() => {
47
+ }, [f, F]), G = i(() => {
48
48
  if (W) return H;
49
- let { [c.RemoveAccess]: e, ...t } = H;
49
+ let { [s.RemoveAccess]: e, ...t } = H;
50
50
  return t;
51
- }, [H, W]), K = m === n.Attach, nt = a(() => ({
52
- selectionMode: me.MULTIPLE,
51
+ }, [H, W]), K = p === n.Attach, rt = i(() => ({
52
+ selectionMode: he.MULTIPLE,
53
53
  ...K ? { filterable: !1 } : {},
54
54
  visibleColumns: j,
55
55
  dateLocale: M,
@@ -58,7 +58,7 @@ var he = (e, t) => {
58
58
  domLayout: "normal",
59
59
  rowSelection: {
60
60
  mode: "multiRow",
61
- isRowSelectable: _ ?? (() => !0)
61
+ isRowSelectable: g ?? (() => !0)
62
62
  }
63
63
  },
64
64
  actionLabels: U
@@ -68,253 +68,254 @@ var he = (e, t) => {
68
68
  M,
69
69
  N,
70
70
  U,
71
- _
72
- ]), rt = a(() => ({
73
- header: m === n.Attach ? null : l.treeHeaderByTab[u],
74
- containerClassName: m === n.Attach ? "min-h-0 h-full w-[360px] shrink-0 rounded-xl bg-layer-raised shadow-sm" : void 0,
75
- tabsAriaLabel: l.treeHeaderByTab[u],
76
- tabs: d,
77
- activeTab: u,
78
- onTabChange: f,
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
79
  expandedPaths: y,
80
80
  loadedPaths: b,
81
81
  loadingPaths: S,
82
82
  onExpandedPathsChange: x,
83
83
  actionLabels: H
84
84
  }), [
85
- l.treeHeaderByTab,
86
- m,
87
- d,
85
+ c.treeHeaderByTab,
86
+ _,
87
+ p,
88
88
  u,
89
- f,
89
+ l,
90
+ d,
90
91
  y,
91
92
  b,
92
93
  S,
93
94
  x,
94
95
  H
95
- ]), q = m === n.Standalone && _e === t.Full && z === pe.MyFiles && O, it = a(() => ({
96
+ ]), q = p === n.Standalone && ve === t.Full && z === me.MyFiles && O, at = i(() => ({
96
97
  showHiddenFilesToggle: !0,
97
- ...K ? { newButtonVariant: r.Neutral } : {},
98
- hiddenFilesSwitcherLabel: l.hiddenFilesLabel,
99
- showHiddenFilesLabel: l.showHiddenFilesLabel,
100
- hideHiddenFilesLabel: l.hideHiddenFilesLabel,
98
+ ...K ? { newButtonVariant: ie.Neutral } : {},
99
+ hiddenFilesSwitcherLabel: c.hiddenFilesLabel,
100
+ showHiddenFilesLabel: c.showHiddenFilesLabel,
101
+ hideHiddenFilesLabel: c.hideHiddenFilesLabel,
101
102
  isNewButtonDisabled: k,
102
103
  disabledNewButtonTooltip: A,
103
104
  newActions: {
104
105
  uploadFiles: {
105
- label: l.uploadFilesLabel,
106
+ label: c.uploadFilesLabel,
106
107
  icon: null
107
108
  },
108
109
  newFolder: {
109
- label: l.newFolderLabel,
110
+ label: c.newFolderLabel,
110
111
  icon: null
111
112
  },
112
113
  ...q ? { uploadArchive: {
113
- label: l.uploadArchiveAction,
114
+ label: c.uploadArchiveAction,
114
115
  icon: null
115
116
  } } : {}
116
117
  }
117
118
  }), [
118
119
  K,
119
- l.hiddenFilesLabel,
120
- l.showHiddenFilesLabel,
121
- l.hideHiddenFilesLabel,
120
+ c.hiddenFilesLabel,
121
+ c.showHiddenFilesLabel,
122
+ c.hideHiddenFilesLabel,
122
123
  k,
123
124
  A,
124
- l.uploadFilesLabel,
125
- l.newFolderLabel,
125
+ c.uploadFilesLabel,
126
+ c.newFolderLabel,
126
127
  q,
127
- l.uploadArchiveAction
128
- ]), at = a(() => K ? void 0 : {
129
- getSelectionLabel: l.getSelectionLabel,
128
+ c.uploadArchiveAction
129
+ ]), ot = i(() => K ? void 0 : {
130
+ getSelectionLabel: c.getSelectionLabel,
130
131
  actionLabels: G
131
132
  }, [
132
133
  K,
133
- l.getSelectionLabel,
134
+ c.getSelectionLabel,
134
135
  G
135
- ]), ot = a(() => ({
136
- cancelLabel: l.deleteCancelLabel,
137
- confirmLabel: l.deleteConfirmLabel,
138
- closeLabel: l.deleteCloseLabel,
139
- titleRenderer: l.deleteConfirmTitle,
140
- contentRenderer: l.deleteConfirmBody
136
+ ]), st = i(() => ({
137
+ cancelLabel: c.deleteCancelLabel,
138
+ confirmLabel: c.deleteConfirmLabel,
139
+ closeLabel: c.deleteCloseLabel,
140
+ titleRenderer: c.deleteConfirmTitle,
141
+ contentRenderer: c.deleteConfirmBody
141
142
  }), [
142
- l.deleteCancelLabel,
143
- l.deleteConfirmLabel,
144
- l.deleteCloseLabel,
145
- l.deleteConfirmTitle,
146
- l.deleteConfirmBody
147
- ]), st = a(() => {
143
+ c.deleteCancelLabel,
144
+ c.deleteConfirmLabel,
145
+ c.deleteCloseLabel,
146
+ c.deleteConfirmTitle,
147
+ c.deleteConfirmBody
148
+ ]), ct = i(() => {
148
149
  let e;
149
- for (let t of p) {
150
+ for (let t of f) {
150
151
  let n = ee(t);
151
152
  if (e === void 0) e = n;
152
153
  else if (e !== n) return;
153
154
  }
154
155
  return e;
155
- }, [p]), J = B != null && S.has(B), Y = J ? B : st, ct = a(() => ({
156
- copyLabel: l.copyLabel,
157
- moveLabel: l.moveLabel,
158
- addFolderLabel: l.addFolderLabel,
159
- hiddenFilesSwitcherLabel: l.hiddenFilesSwitcherLabel,
160
- getCopyHeader: l.getCopyHeader,
161
- getMoveHeader: l.getMoveHeader,
162
- disabledPathTooltip: J ? l.folderPickerLoadingTooltip : l.moveSourceDisabledTooltip,
163
- emptyStateTitle: l.folderPickerEmptyStateTitle,
164
- emptyStateDescription: l.folderPickerEmptyStateDescription,
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
+ emptyStateTitle: c.folderPickerEmptyStateTitle,
165
+ emptyStateDescription: c.folderPickerEmptyStateDescription,
165
166
  sourceFolder: Y,
166
167
  destinationFolderPath: B,
167
- setDestinationFolderPath: et,
168
+ setDestinationFolderPath: tt,
168
169
  filesLoading: J
169
170
  }), [
170
- l.copyLabel,
171
- l.moveLabel,
172
- l.addFolderLabel,
173
- l.hiddenFilesSwitcherLabel,
174
- l.getCopyHeader,
175
- l.getMoveHeader,
176
- l.folderPickerLoadingTooltip,
177
- l.moveSourceDisabledTooltip,
178
- l.folderPickerEmptyStateTitle,
179
- l.folderPickerEmptyStateDescription,
171
+ c.copyLabel,
172
+ c.moveLabel,
173
+ c.addFolderLabel,
174
+ c.hiddenFilesSwitcherLabel,
175
+ c.getCopyHeader,
176
+ c.getMoveHeader,
177
+ c.folderPickerLoadingTooltip,
178
+ c.moveSourceDisabledTooltip,
179
+ c.folderPickerEmptyStateTitle,
180
+ c.folderPickerEmptyStateDescription,
180
181
  J,
181
182
  Y,
182
183
  B
183
- ]), lt = ce(() => {
184
- w(), E();
185
- }, [w, E]), X = a(() => re(C?.files ?? []), [C]), ut = a(() => ({
184
+ ]), ut = le(() => {
185
+ w(), T();
186
+ }, [w, T]), X = i(() => re(C?.files ?? []), [C]), dt = i(() => ({
186
187
  fileMetadata: I,
187
188
  loading: L,
188
189
  clearMetadata: R,
189
- header: l.metadataHeader,
190
- nameLabel: l.metadataNameLabel,
191
- pathLabel: l.metadataPathLabel,
192
- modifiedDateLabel: l.metadataModifiedDateLabel,
193
- sizeLabel: l.metadataSizeLabel,
194
- authorLabel: l.metadataAuthorLabel
190
+ header: c.metadataHeader,
191
+ nameLabel: c.metadataNameLabel,
192
+ pathLabel: c.metadataPathLabel,
193
+ modifiedDateLabel: c.metadataModifiedDateLabel,
194
+ sizeLabel: c.metadataSizeLabel,
195
+ authorLabel: c.metadataAuthorLabel
195
196
  }), [
196
197
  I,
197
198
  L,
198
199
  R,
199
- l.metadataHeader,
200
- l.metadataNameLabel,
201
- l.metadataPathLabel,
202
- l.metadataModifiedDateLabel,
203
- l.metadataSizeLabel,
204
- l.metadataAuthorLabel
205
- ]), Z = he({
206
- isDownloading: Re,
207
- isDeleting: Be,
208
- isRenaming: Ue,
200
+ c.metadataHeader,
201
+ c.metadataNameLabel,
202
+ c.metadataPathLabel,
203
+ c.metadataModifiedDateLabel,
204
+ c.metadataSizeLabel,
205
+ c.metadataAuthorLabel
206
+ ]), Z = ge({
207
+ isDownloading: Be,
208
+ isDeleting: Ve,
209
+ isRenaming: We,
209
210
  isMoving: D,
210
- isUnsharing: Ye,
211
- isRemovingAccess: Ze
212
- }, l), Q = "bg-layer-base", $ = a(() => v.split("/").filter(Boolean).length > 1 ? {
213
- title: l.folderEmptyStateTitle,
211
+ isUnsharing: Xe,
212
+ isRemovingAccess: Qe
213
+ }, c), Q = "bg-layer-base", $ = i(() => v.split("/").filter(Boolean).length > 1 ? {
214
+ title: c.folderEmptyStateTitle,
214
215
  description: ""
215
- } : l.emptyStateByTab[z], [
216
+ } : c.emptyStateByTab[z], [
216
217
  v,
217
- l.folderEmptyStateTitle,
218
- l.emptyStateByTab,
218
+ c.folderEmptyStateTitle,
219
+ c.emptyStateByTab,
219
220
  z
220
221
  ]);
221
- return /* @__PURE__ */ s(de, { children: [
222
- we == null ? /* @__PURE__ */ s("div", {
222
+ return /* @__PURE__ */ o(fe, { children: [
223
+ Te == null ? /* @__PURE__ */ o("div", {
223
224
  className: e("relative flex min-h-0 w-full grow overflow-auto", Q),
224
- children: [/* @__PURE__ */ o(fe, {
225
- className: e("min-h-0 w-full grow", Q),
226
- contentClassName: m === n.Attach ? "px-0 pb-0" : void 0,
227
- gridClassName: m === n.Attach ? "size-full gap-6 px-6 py-4" : "size-full",
228
- items: Se,
225
+ children: [/* @__PURE__ */ a(pe, {
226
+ className: e("min-h-0 w-full grow", Q, K && "p-0"),
227
+ contentClassName: p === n.Attach ? "px-0 pb-0" : void 0,
228
+ gridClassName: p === n.Attach ? "size-full gap-6 px-6 py-4" : "size-full",
229
+ items: Ce,
229
230
  path: v,
230
- onPathChange: Te,
231
- onGridApiChange: tt,
232
- filesLoading: Ce,
233
- allowedFileTypes: ye,
234
- maxSelectableFileSize: h,
235
- maxFileSize: h,
236
- uploadValidationMessages: g == null ? void 0 : { oversizedFiles: g },
237
- selectedPaths: p,
238
- onSelectedPathsChange: ge,
231
+ onPathChange: Ee,
232
+ onGridApiChange: nt,
233
+ filesLoading: we,
234
+ allowedFileTypes: be,
235
+ maxSelectableFileSize: m,
236
+ maxFileSize: m,
237
+ uploadValidationMessages: h == null ? void 0 : { oversizedFiles: h },
238
+ selectedPaths: f,
239
+ onSelectedPathsChange: _e,
239
240
  navigationPanelOptions: {
240
241
  searchable: !0,
241
- placeholder: l.searchPlaceholderByTab?.[z]
242
+ placeholder: c.searchPlaceholderByTab?.[z]
242
243
  },
243
244
  hideSearchPathItemName: !0,
244
- onSearchFiles: De,
245
- searchInProgress: Oe,
246
- searchResults: ke ?? [],
247
- clearSearchResults: Ae,
248
- gridOptions: nt,
249
- treeOptions: rt,
250
- onFolderPopupPathChange: je,
251
- toolbarOptions: it,
252
- bulkActionsToolbarOptions: at,
253
- autoSelectUploadedItems: ve,
245
+ onSearchFiles: Oe,
246
+ searchInProgress: ke,
247
+ searchResults: Ae ?? [],
248
+ clearSearchResults: je,
249
+ gridOptions: rt,
250
+ treeOptions: it,
251
+ onFolderPopupPathChange: Me,
252
+ toolbarOptions: at,
253
+ bulkActionsToolbarOptions: ot,
254
+ autoSelectUploadedItems: ye,
254
255
  emptyStateTitle: $.title,
255
256
  emptyStateDescription: $.description,
256
- searchEmptyStateTitle: l.searchEmptyStateTitle,
257
+ searchEmptyStateTitle: c.searchEmptyStateTitle,
257
258
  uploadEnabled: O,
258
- sharedWithMeIds: qe,
259
+ sharedWithMeIds: Je,
259
260
  sharedByMePaths: F,
260
- onUnshareFiles: Je,
261
- onRemoveFilesAccess: Xe,
262
- fileMetadataPopupOptions: ut,
263
- onGetInfo: Qe,
264
- onUploadFiles: Me,
265
- onUploadArchive: Ne,
266
- onValidateUpload: Pe,
267
- onCreateFolder: Fe,
268
- onCreateFolderValidate: Ie,
269
- onDownloadFiles: Le,
270
- onDeleteFiles: ze,
271
- onMoveToFiles: Ve,
272
- onCopyFiles: We,
273
- onRenameValidate: He,
274
- renameValidationMessages: l.renameValidationMessages,
261
+ onUnshareFiles: Ye,
262
+ onRemoveFilesAccess: Ze,
263
+ fileMetadataPopupOptions: dt,
264
+ onGetInfo: $e,
265
+ onUploadFiles: Ne,
266
+ onUploadArchive: Pe,
267
+ onValidateUpload: Fe,
268
+ onCreateFolder: Le,
269
+ onCreateFolderValidate: Re,
270
+ onDownloadFiles: ze,
271
+ onDeleteFiles: E,
272
+ onMoveToFiles: He,
273
+ onCopyFiles: Ge,
274
+ onRenameValidate: Ue,
275
+ renameValidationMessages: c.renameValidationMessages,
275
276
  isRenameFileAvailable: O,
276
- deleteConfirmationOptions: ot,
277
- conflictResolutionPopupOptions: l.conflictResolutionPopupOptions,
278
- destinationFolderPopupOptions: ct,
279
- forbiddenSymbolsRegExp: ie,
280
- forbiddenSymbolsTooltip: l.forbiddenSymbolsTooltip,
281
- getDisabledTooltip: be,
282
- unsupportedFileTypeTooltip: xe
283
- }), Z != null && /* @__PURE__ */ o("div", {
277
+ deleteConfirmationOptions: st,
278
+ conflictResolutionPopupOptions: c.conflictResolutionPopupOptions,
279
+ destinationFolderPopupOptions: lt,
280
+ forbiddenSymbolsRegExp: ae,
281
+ forbiddenSymbolsTooltip: c.forbiddenSymbolsTooltip,
282
+ getDisabledTooltip: xe,
283
+ unsupportedFileTypeTooltip: Se
284
+ }), Z != null && /* @__PURE__ */ a("div", {
284
285
  "aria-live": "polite",
285
286
  className: "absolute inset-0 z-[52] flex items-center justify-center bg-backdrop desktop:p-4",
286
- children: /* @__PURE__ */ o(oe, {
287
+ children: /* @__PURE__ */ a(se, {
287
288
  size: 32,
288
289
  fullWidth: !1,
289
290
  ariaLabel: Z
290
291
  })
291
292
  })]
292
- }) : /* @__PURE__ */ s("div", {
293
+ }) : /* @__PURE__ */ o("div", {
293
294
  role: "alert",
294
295
  className: "flex flex-col items-center gap-4 p-6",
295
- children: [/* @__PURE__ */ o("p", { children: l.errorMessage }), /* @__PURE__ */ o(ae, {
296
- label: l.retryLabel,
297
- onClick: Ee
296
+ children: [/* @__PURE__ */ a("p", { children: c.errorMessage }), /* @__PURE__ */ a(oe, {
297
+ label: c.retryLabel,
298
+ onClick: De
298
299
  })]
299
300
  }),
300
- /* @__PURE__ */ o("div", {
301
- className: "fixed bottom-4 end-4 z-[70]",
302
- children: /* @__PURE__ */ o(se, {
303
- title: l.getUploadQueueTitle(X.length),
301
+ /* @__PURE__ */ a("div", {
302
+ className: "fixed end-4 bottom-4 z-[70]",
303
+ children: /* @__PURE__ */ a(ce, {
304
+ title: c.getUploadQueueTitle(X.length),
304
305
  items: X,
305
- onClose: lt,
306
- onCancelItem: T,
307
- labels: l.uploadQueueLabels
306
+ onClose: ut,
307
+ onCancelItem: Ie,
308
+ labels: c.uploadQueueLabels
308
309
  })
309
310
  }),
310
- (Ge || D) && /* @__PURE__ */ o(ne, {
311
- title: D ? l.operationLoaderMoveTitle : l.operationLoaderCopyTitle,
312
- text: D ? l.movingLabel : l.copyingLabel,
313
- cancelLabel: l.operationLoaderCancelLabel,
314
- onCancel: Ke
311
+ (Ke || D) && /* @__PURE__ */ a(ne, {
312
+ title: D ? c.operationLoaderMoveTitle : c.operationLoaderCopyTitle,
313
+ text: D ? c.movingLabel : c.copyingLabel,
314
+ cancelLabel: c.operationLoaderCancelLabel,
315
+ onCancel: qe
315
316
  })
316
317
  ] });
317
318
  };
318
- i(l);
319
+ r(c);
319
320
  //#endregion
320
- export { l as DialFileManagerShell };
321
+ export { c as DialFileManagerShell };
@@ -0,0 +1,89 @@
1
+ import { DialFileManagerTabs, DialFile, DialFileAcceptType, FileManagerGridRow, FileTreeOptions } from '@epam/ai-dial-react-file-manager';
2
+ import { FC } from 'react';
3
+ import { FileManagerSelectableNode } from '../../types/file-manager-node';
4
+ import { AttachResult } from '../attach-result';
5
+ import { FileManagerController } from '../file-manager-controller';
6
+ import { DialFileManagerActionProfile, DialFileManagerVariant } from '../file-manager-variant';
7
+ import { FileManagerAttachModalLabels } from '../labels';
8
+ /** Props accepted by `FileManagerAttachModal`. */
9
+ export interface FileManagerAttachModalProps {
10
+ /** Whether the modal is open. */
11
+ isOpen: boolean;
12
+ /** Called when the modal requests to be closed. */
13
+ onClose: () => void;
14
+ /** Called with the confirmed selection when the user presses Attach. */
15
+ onAttach: (result: AttachResult) => void;
16
+ /** Called when one or more selected files were filtered out due to an unsupported type. */
17
+ onSkippedUnsupportedFiles?: () => void;
18
+ /** Called when the total attachment count would exceed the limit. */
19
+ onCountLimitExceeded?: (totalCount: number, limit: number) => void;
20
+ /** Live file-manager state driving the grid. */
21
+ controller: FileManagerController;
22
+ /**
23
+ * True while any mutating operation is in progress (upload, delete, rename, etc.).
24
+ * Disables the Attach button alongside `isLoading`.
25
+ */
26
+ isAnyOperationInProgress: boolean;
27
+ /** Currently active tab. */
28
+ activeTab: DialFileManagerTabs;
29
+ /** Filter chips scoping the tree and the grid, rendered above the folder tree. */
30
+ tabs: FileTreeOptions['tabs'];
31
+ /**
32
+ * Called when the user switches tabs.
33
+ * The host is responsible for resetting `selectedPaths` to an empty set.
34
+ */
35
+ onTabChange: (tab: DialFileManagerTabs) => void;
36
+ /** All user-visible strings. */
37
+ labels: FileManagerAttachModalLabels;
38
+ /** File-manager variant (controls which toolbar entries are shown). */
39
+ variant: DialFileManagerVariant;
40
+ /** Action profile controlling toolbar entry visibility. */
41
+ actionProfile: DialFileManagerActionProfile;
42
+ /**
43
+ * Current set of selected virtual paths, managed by the host.
44
+ * The host must reset this to an empty set when the active tab changes.
45
+ */
46
+ selectedPaths: Set<string>;
47
+ /** Called when the user changes the grid selection. */
48
+ onSelectedPathsChange: (paths: Set<string>) => void;
49
+ /**
50
+ * Resolves a folder `DialFile` to its DIAL Core path string for inclusion in
51
+ * `AttachResult.folderPaths`. Return `null` to skip the folder.
52
+ * Path normalization and bucket resolution are the host's responsibility.
53
+ */
54
+ resolveFolderPath: (file: DialFile) => string | null;
55
+ /**
56
+ * Returns `false` for file content-types that must be filtered out on attach.
57
+ * When absent, all content types are accepted.
58
+ */
59
+ isFileTypeAllowed?: (contentType: string) => boolean;
60
+ /** Maximum size in bytes a selectable file may have. */
61
+ maxSelectableFileSize?: number;
62
+ /** Maximum total attachments (already-attached plus newly selected). */
63
+ maximumAttachmentsAmount?: number;
64
+ /** Count of attachments already present before this modal opens. Defaults to `0`. */
65
+ existingAttachmentsAmount?: number;
66
+ /**
67
+ * Row selectability predicate forwarded to the grid and re-applied to every
68
+ * selection change, so items that were not clicked manually (e.g. the file
69
+ * manager's auto-select of newly created items) cannot enter selection
70
+ * unless manually selectable. Paths resolving to no listed node are dropped.
71
+ * When absent, selection changes are forwarded unfiltered.
72
+ */
73
+ isRowSelectable?: (node: {
74
+ data?: FileManagerSelectableNode | null;
75
+ }) => boolean;
76
+ /** Returns a tooltip for disabled rows; forwarded to the grid. */
77
+ getDisabledTooltip?: (row: FileManagerGridRow) => string | undefined;
78
+ /** Tooltip shown on files with an unsupported type; forwarded to the grid. */
79
+ unsupportedFileTypeTooltip?: string;
80
+ /** Accepted file types for the upload file input. */
81
+ allowedFileTypes?: DialFileAcceptType[];
82
+ /** Whether to auto-select items immediately after upload. Defaults to `false`. */
83
+ autoSelectUploadedItems?: boolean;
84
+ /** Pre-translated message shown by the ui-kit when a newly-selected file exceeds `maxSelectableFileSize`. Omit to leave upload-size validation unrestricted regardless of `maxSelectableFileSize`. */
85
+ oversizedUploadMessage?: string;
86
+ }
87
+ /** File-manager modal with Popup chrome and an Attach footer. Selection and tab state are controlled by the host. */
88
+ export declare const FileManagerAttachModal: FC<FileManagerAttachModalProps>;
89
+ //# sourceMappingURL=FileManagerAttachModal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FileManagerAttachModal.d.ts","sourceRoot":"","sources":["../../../src/file-manager/FileManagerAttachModal/FileManagerAttachModal.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EAEnB,KAAK,QAAQ,EACb,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,eAAe,EACrB,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EAA8B,KAAK,EAAE,EAAE,MAAM,OAAO,CAAC;AAC5D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAC/E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,EACL,KAAK,4BAA4B,EACjC,KAAK,sBAAsB,EAC5B,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,WAAW,CAAC;AAG9D,kDAAkD;AAClD,MAAM,WAAW,2BAA2B;IAC1C,iCAAiC;IACjC,MAAM,EAAE,OAAO,CAAC;IAChB,mDAAmD;IACnD,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,wEAAwE;IACxE,QAAQ,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI,CAAC;IACzC,2FAA2F;IAC3F,yBAAyB,CAAC,EAAE,MAAM,IAAI,CAAC;IACvC,qEAAqE;IACrE,oBAAoB,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAEnE,gDAAgD;IAChD,UAAU,EAAE,qBAAqB,CAAC;IAClC;;;OAGG;IACH,wBAAwB,EAAE,OAAO,CAAC;IAClC,4BAA4B;IAC5B,SAAS,EAAE,mBAAmB,CAAC;IAC/B,kFAAkF;IAClF,IAAI,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC;IAC9B;;;OAGG;IACH,WAAW,EAAE,CAAC,GAAG,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAEhD,gCAAgC;IAChC,MAAM,EAAE,4BAA4B,CAAC;IAErC,uEAAuE;IACvE,OAAO,EAAE,sBAAsB,CAAC;IAChC,2DAA2D;IAC3D,aAAa,EAAE,4BAA4B,CAAC;IAE5C;;;OAGG;IACH,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,uDAAuD;IACvD,qBAAqB,EAAE,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC;IAEpD;;;;OAIG;IACH,iBAAiB,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,MAAM,GAAG,IAAI,CAAC;IAErD;;;OAGG;IACH,iBAAiB,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC;IACrD,wDAAwD;IACxD,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,wEAAwE;IACxE,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,qFAAqF;IACrF,yBAAyB,CAAC,EAAE,MAAM,CAAC;IAEnC;;;;;;OAMG;IACH,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE;QACvB,IAAI,CAAC,EAAE,yBAAyB,GAAG,IAAI,CAAC;KACzC,KAAK,OAAO,CAAC;IACd,kEAAkE;IAClE,kBAAkB,CAAC,EAAE,CAAC,GAAG,EAAE,kBAAkB,KAAK,MAAM,GAAG,SAAS,CAAC;IACrE,8EAA8E;IAC9E,0BAA0B,CAAC,EAAE,MAAM,CAAC;IAEpC,qDAAqD;IACrD,gBAAgB,CAAC,EAAE,kBAAkB,EAAE,CAAC;IACxC,kFAAkF;IAClF,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,sMAAsM;IACtM,sBAAsB,CAAC,EAAE,MAAM,CAAC;CACjC;AAED,qHAAqH;AACrH,eAAO,MAAM,sBAAsB,EAAE,EAAE,CAAC,2BAA2B,CAkOlE,CAAC"}
@@ -74,7 +74,8 @@ var d = a(({ isOpen: a, onClose: d, onAttach: f, onSkippedUnsupportedFiles: p, o
74
74
  }),
75
75
  ariaLabel: U,
76
76
  size: i.Lg,
77
- className: "flex !h-[min(900px,100dvh)] w-full flex-col !bg-layer-base md:!max-w-[1600px]",
77
+ className: "flex !h-[min(900px,100dvh)] w-full !max-w-[1600px] flex-col !bg-layer-base mobile:!h-full mobile:!max-w-full mobile:rounded-none",
78
+ overlayClassName: "mobile:p-0",
78
79
  headerClassName: "pb-0",
79
80
  footerClassName: "pt-0",
80
81
  onClose: d,
@@ -0,0 +1,17 @@
1
+ import { FC } from 'react';
2
+ /** Props for the operation-in-progress overlay modal (copy/move spinner). */
3
+ export interface OperationLoaderModalProps {
4
+ /** Title shown above the spinner (e.g. "Copying files"). */
5
+ title: string;
6
+ /** Secondary text below the title (e.g. "Copying 2 items"). */
7
+ text: string;
8
+ /** Label for the cancel button. */
9
+ cancelLabel: string;
10
+ /** Called when the user clicks Cancel. */
11
+ onCancel: () => void;
12
+ }
13
+ /** Modal overlay with a spinner and cancel button for long-running file operations. */
14
+ export declare const OperationLoaderModal: FC<OperationLoaderModalProps>;
15
+ declare const _default: import('react').NamedExoticComponent<OperationLoaderModalProps>;
16
+ export default _default;
17
+ //# sourceMappingURL=OperationLoaderModal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OperationLoaderModal.d.ts","sourceRoot":"","sources":["../../../src/file-manager/OperationLoaderModal/OperationLoaderModal.tsx"],"names":[],"mappings":"AACA,OAAO,EAAQ,KAAK,EAAE,EAAE,MAAM,OAAO,CAAC;AAEtC,6EAA6E;AAC7E,MAAM,WAAW,yBAAyB;IACxC,4DAA4D;IAC5D,KAAK,EAAE,MAAM,CAAC;IACd,+DAA+D;IAC/D,IAAI,EAAE,MAAM,CAAC;IACb,mCAAmC;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,0CAA0C;IAC1C,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,uFAAuF;AACvF,eAAO,MAAM,oBAAoB,EAAE,EAAE,CAAC,yBAAyB,CAyB9D,CAAC;;AAEF,wBAA0C"}
@@ -0,0 +1,9 @@
1
+ import { DialFile } from '@epam/ai-dial-react-file-manager';
2
+ /** Result returned by the file-manager attach modal when the user confirms a selection. */
3
+ export interface AttachResult {
4
+ /** Selected files (individual items, not folders). */
5
+ files: DialFile[];
6
+ /** Virtual paths of selected folders. */
7
+ folderPaths: string[];
8
+ }
9
+ //# sourceMappingURL=attach-result.d.ts.map