@burdenoff/microfe-files 2026.626.2 → 2026.715.1

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 (168) hide show
  1. package/dist/config/index.d.ts +33 -0
  2. package/dist/config/index.d.ts.map +1 -0
  3. package/dist/dev/main.d.ts +1 -0
  4. package/dist/dev/main.d.ts.map +1 -0
  5. package/dist/files/FilesRoot.d.ts +31 -0
  6. package/dist/files/FilesRoot.d.ts.map +1 -0
  7. package/dist/files/FilesRoutes.d.ts +12 -0
  8. package/dist/files/FilesRoutes.d.ts.map +1 -0
  9. package/dist/files/components/ActionMenu.d.ts +19 -0
  10. package/dist/files/components/ActionMenu.d.ts.map +1 -0
  11. package/dist/files/components/ConfirmDialog.d.ts +22 -0
  12. package/dist/files/components/ConfirmDialog.d.ts.map +1 -0
  13. package/dist/files/components/ContextMenu.d.ts +15 -0
  14. package/dist/files/components/ContextMenu.d.ts.map +1 -0
  15. package/dist/files/components/CopyDialog.d.ts +12 -0
  16. package/dist/files/components/CopyDialog.d.ts.map +1 -0
  17. package/dist/files/components/EmptyState.d.ts +15 -0
  18. package/dist/files/components/EmptyState.d.ts.map +1 -0
  19. package/dist/files/components/FileBrowser.d.ts +37 -0
  20. package/dist/files/components/FileBrowser.d.ts.map +1 -0
  21. package/dist/files/components/FileCard.d.ts +30 -0
  22. package/dist/files/components/FileCard.d.ts.map +1 -0
  23. package/dist/files/components/FileInfoPanel.d.ts +9 -0
  24. package/dist/files/components/FileInfoPanel.d.ts.map +1 -0
  25. package/dist/files/components/FileListItem.d.ts +29 -0
  26. package/dist/files/components/FileListItem.d.ts.map +1 -0
  27. package/dist/files/components/FilePreviewModal.d.ts +17 -0
  28. package/dist/files/components/FilePreviewModal.d.ts.map +1 -0
  29. package/dist/files/components/FileVersionPanel.d.ts +9 -0
  30. package/dist/files/components/FileVersionPanel.d.ts.map +1 -0
  31. package/dist/files/components/FolderCard.d.ts +34 -0
  32. package/dist/files/components/FolderCard.d.ts.map +1 -0
  33. package/dist/files/components/MoveDialog.d.ts +12 -0
  34. package/dist/files/components/MoveDialog.d.ts.map +1 -0
  35. package/dist/files/components/SearchBar.d.ts +13 -0
  36. package/dist/files/components/SearchBar.d.ts.map +1 -0
  37. package/dist/files/components/ShareDialog.d.ts +24 -0
  38. package/dist/files/components/ShareDialog.d.ts.map +1 -0
  39. package/dist/files/components/StorageBanner.d.ts +12 -0
  40. package/dist/files/components/StorageBanner.d.ts.map +1 -0
  41. package/dist/files/components/StorageBanner.js +43 -24
  42. package/dist/files/components/StorageBanner.js.map +1 -1
  43. package/dist/files/components/TabBar.d.ts +16 -0
  44. package/dist/files/components/TabBar.d.ts.map +1 -0
  45. package/dist/files/components/Toast.d.ts +14 -0
  46. package/dist/files/components/Toast.d.ts.map +1 -0
  47. package/dist/files/components/UploadQueue.d.ts +13 -0
  48. package/dist/files/components/UploadQueue.d.ts.map +1 -0
  49. package/dist/files/components/contextMenuItems.d.ts +45 -0
  50. package/dist/files/components/contextMenuItems.d.ts.map +1 -0
  51. package/dist/files/components/viewers/AudioPlayer.d.ts +8 -0
  52. package/dist/files/components/viewers/AudioPlayer.d.ts.map +1 -0
  53. package/dist/files/components/viewers/CodeViewer.d.ts +16 -0
  54. package/dist/files/components/viewers/CodeViewer.d.ts.map +1 -0
  55. package/dist/files/components/viewers/ImageViewer.d.ts +8 -0
  56. package/dist/files/components/viewers/ImageViewer.d.ts.map +1 -0
  57. package/dist/files/components/viewers/PDFViewer.d.ts +15 -0
  58. package/dist/files/components/viewers/PDFViewer.d.ts.map +1 -0
  59. package/dist/files/components/viewers/TextViewer.d.ts +8 -0
  60. package/dist/files/components/viewers/TextViewer.d.ts.map +1 -0
  61. package/dist/files/components/viewers/VideoPlayer.d.ts +8 -0
  62. package/dist/files/components/viewers/VideoPlayer.d.ts.map +1 -0
  63. package/dist/files/graphql-types.d.ts +277 -0
  64. package/dist/files/graphql-types.d.ts.map +1 -0
  65. package/dist/files/hooks/useBatchOperations.d.ts +6 -0
  66. package/dist/files/hooks/useBatchOperations.d.ts.map +1 -0
  67. package/dist/files/hooks/useBinItems.d.ts +11 -0
  68. package/dist/files/hooks/useBinItems.d.ts.map +1 -0
  69. package/dist/files/hooks/useBrowsePage.d.ts +21 -0
  70. package/dist/files/hooks/useBrowsePage.d.ts.map +1 -0
  71. package/dist/files/hooks/useCopyFile.d.ts +14 -0
  72. package/dist/files/hooks/useCopyFile.d.ts.map +1 -0
  73. package/dist/files/hooks/useCreateFolder.d.ts +17 -0
  74. package/dist/files/hooks/useCreateFolder.d.ts.map +1 -0
  75. package/dist/files/hooks/useCreateFolderShare.d.ts +16 -0
  76. package/dist/files/hooks/useCreateFolderShare.d.ts.map +1 -0
  77. package/dist/files/hooks/useCreateShare.d.ts +16 -0
  78. package/dist/files/hooks/useCreateShare.d.ts.map +1 -0
  79. package/dist/files/hooks/useDeleteFile.d.ts +9 -0
  80. package/dist/files/hooks/useDeleteFile.d.ts.map +1 -0
  81. package/dist/files/hooks/useDeleteFolder.d.ts +10 -0
  82. package/dist/files/hooks/useDeleteFolder.d.ts.map +1 -0
  83. package/dist/files/hooks/useDragDrop.d.ts +31 -0
  84. package/dist/files/hooks/useDragDrop.d.ts.map +1 -0
  85. package/dist/files/hooks/useFileVersions.d.ts +39 -0
  86. package/dist/files/hooks/useFileVersions.d.ts.map +1 -0
  87. package/dist/files/hooks/useFoldersQuery.d.ts +7 -0
  88. package/dist/files/hooks/useFoldersQuery.d.ts.map +1 -0
  89. package/dist/files/hooks/useKeyboardNavigation.d.ts +17 -0
  90. package/dist/files/hooks/useKeyboardNavigation.d.ts.map +1 -0
  91. package/dist/files/hooks/useMoveFile.d.ts +10 -0
  92. package/dist/files/hooks/useMoveFile.d.ts.map +1 -0
  93. package/dist/files/hooks/useMoveFolder.d.ts +10 -0
  94. package/dist/files/hooks/useMoveFolder.d.ts.map +1 -0
  95. package/dist/files/hooks/usePermanentlyDeleteFile.d.ts +9 -0
  96. package/dist/files/hooks/usePermanentlyDeleteFile.d.ts.map +1 -0
  97. package/dist/files/hooks/usePermanentlyDeleteFolder.d.ts +9 -0
  98. package/dist/files/hooks/usePermanentlyDeleteFolder.d.ts.map +1 -0
  99. package/dist/files/hooks/useRecentFiles.d.ts +10 -0
  100. package/dist/files/hooks/useRecentFiles.d.ts.map +1 -0
  101. package/dist/files/hooks/useRenameFile.d.ts +10 -0
  102. package/dist/files/hooks/useRenameFile.d.ts.map +1 -0
  103. package/dist/files/hooks/useRenameFolder.d.ts +10 -0
  104. package/dist/files/hooks/useRenameFolder.d.ts.map +1 -0
  105. package/dist/files/hooks/useRestoreFile.d.ts +9 -0
  106. package/dist/files/hooks/useRestoreFile.d.ts.map +1 -0
  107. package/dist/files/hooks/useRestoreFolder.d.ts +9 -0
  108. package/dist/files/hooks/useRestoreFolder.d.ts.map +1 -0
  109. package/dist/files/hooks/useSearch.d.ts +15 -0
  110. package/dist/files/hooks/useSearch.d.ts.map +1 -0
  111. package/dist/files/hooks/useStarredItems.d.ts +10 -0
  112. package/dist/files/hooks/useStarredItems.d.ts.map +1 -0
  113. package/dist/files/hooks/useStorageQuota.d.ts +11 -0
  114. package/dist/files/hooks/useStorageQuota.d.ts.map +1 -0
  115. package/dist/files/hooks/useStorageQuota.js +1 -1
  116. package/dist/files/hooks/useStorageQuota.js.map +1 -1
  117. package/dist/files/hooks/useToast.d.ts +11 -0
  118. package/dist/files/hooks/useToast.d.ts.map +1 -0
  119. package/dist/files/hooks/useToggleStar.d.ts +10 -0
  120. package/dist/files/hooks/useToggleStar.d.ts.map +1 -0
  121. package/dist/files/hooks/useUploadFile.d.ts +26 -0
  122. package/dist/files/hooks/useUploadFile.d.ts.map +1 -0
  123. package/dist/files/hooks/useUploadFile.js +43 -44
  124. package/dist/files/hooks/useUploadFile.js.map +1 -1
  125. package/dist/files/index.d.ts +29 -0
  126. package/dist/files/index.d.ts.map +1 -0
  127. package/dist/files/pages/BrowserPage.d.ts +5 -0
  128. package/dist/files/pages/BrowserPage.d.ts.map +1 -0
  129. package/dist/files/pages/BrowserPage.js +361 -351
  130. package/dist/files/pages/BrowserPage.js.map +1 -1
  131. package/dist/files/pages/ShareAccessPage.d.ts +2 -0
  132. package/dist/files/pages/ShareAccessPage.d.ts.map +1 -0
  133. package/dist/files/providers/FilesProvider.d.ts +25 -0
  134. package/dist/files/providers/FilesProvider.d.ts.map +1 -0
  135. package/dist/files/store/filesStore.d.ts +99 -0
  136. package/dist/files/store/filesStore.d.ts.map +1 -0
  137. package/dist/files/types.d.ts +266 -0
  138. package/dist/files/types.d.ts.map +1 -0
  139. package/dist/files/utils/events.d.ts +6 -0
  140. package/dist/files/utils/events.d.ts.map +1 -0
  141. package/dist/files/utils/i18n.d.ts +5 -0
  142. package/dist/files/utils/i18n.d.ts.map +1 -0
  143. package/dist/files/utils/index.d.ts +12 -0
  144. package/dist/files/utils/index.d.ts.map +1 -0
  145. package/dist/files/utils/quotaUtils.d.ts +2 -0
  146. package/dist/files/utils/quotaUtils.d.ts.map +1 -0
  147. package/dist/files/utils/quotaUtils.js +2 -14
  148. package/dist/files/utils/thumbnail.d.ts +3 -0
  149. package/dist/files/utils/thumbnail.d.ts.map +1 -0
  150. package/dist/files.d.ts +2 -0
  151. package/dist/generated/global-operations.d.ts +2 -0
  152. package/dist/generated/global-operations.d.ts.map +1 -0
  153. package/dist/generated/global-types.d.ts +22995 -0
  154. package/dist/generated/global-types.d.ts.map +1 -0
  155. package/dist/generated/wspace-operations.d.ts +2789 -0
  156. package/dist/generated/wspace-operations.d.ts.map +1 -0
  157. package/dist/generated/wspace-types.d.ts +50215 -0
  158. package/dist/generated/wspace-types.d.ts.map +1 -0
  159. package/dist/index.d.ts +31 -0
  160. package/dist/index.d.ts.map +1 -0
  161. package/dist/shared/types/index.d.ts +109 -0
  162. package/dist/shared/types/index.d.ts.map +1 -0
  163. package/dist/translations/en.d.ts +315 -0
  164. package/dist/translations/en.d.ts.map +1 -0
  165. package/dist/utils/nativeBridge.d.ts +3 -0
  166. package/dist/utils/nativeBridge.d.ts.map +1 -0
  167. package/package.json +2 -2
  168. package/dist/files/utils/quotaUtils.js.map +0 -1
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Configuration module for files microfrontend
3
+ * This config is typically injected by the shell application at runtime
4
+ */
5
+ export interface FilesConfig {
6
+ /** Full GraphQL endpoint URL (e.g., http://localhost:4003/workspaces/graphql) */
7
+ apiGatewayUrl: string;
8
+ /** Base URL for gateway (optional, used to construct full endpoint) */
9
+ apiGatewayBaseUrl?: string;
10
+ /** Auth token for API requests */
11
+ authToken?: string;
12
+ }
13
+ /**
14
+ * Get current configuration
15
+ */
16
+ export declare const config: FilesConfig;
17
+ /**
18
+ * Set runtime configuration (called by shell app)
19
+ * @param newConfig - Configuration object
20
+ */
21
+ export declare function setFilesConfig(newConfig: Partial<FilesConfig>): void;
22
+ /**
23
+ * Build full GraphQL endpoint URL from base URL
24
+ * @param baseUrl - Base gateway URL (e.g., http://localhost:4003)
25
+ * @param supergraph - Supergraph name (workspaces or global)
26
+ * @returns Full GraphQL endpoint URL
27
+ */
28
+ export declare function buildGraphQLEndpoint(baseUrl: string, supergraph?: "workspaces" | "global"): string;
29
+ /**
30
+ * Reset configuration to defaults
31
+ */
32
+ export declare function resetFilesConfig(): void;
33
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,WAAW;IAC1B,iFAAiF;IACjF,aAAa,EAAE,MAAM,CAAC;IACtB,uEAAuE;IACvE,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,kCAAkC;IAClC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAYD;;GAEG;AACH,eAAO,MAAM,MAAM,aAIjB,CAAC;AAEH;;;GAGG;AACH,wBAAgB,cAAc,CAAC,SAAS,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,IAAI,CAEpE;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,MAAM,EACf,UAAU,GAAE,YAAY,GAAG,QAAuB,GACjD,MAAM,CAKR;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,IAAI,CAMvC"}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=main.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../src/dev/main.tsx"],"names":[],"mappings":"AAQA,OAAO,uBAAuB,CAAC"}
@@ -0,0 +1,31 @@
1
+ import { FC } from 'react';
2
+ import { FilesRootProps } from './types';
3
+ /**
4
+ * Root component for the Files microfrontend.
5
+ *
6
+ * This is the main entry point that host applications import and render.
7
+ * It sets up the necessary providers and renders the internal routing.
8
+ * Automatically registers navigation items with the shell if registration functions are provided.
9
+ *
10
+ * @example
11
+ * ```tsx
12
+ * import { FilesRoot } from '@burdenoff/micro-fe/files';
13
+ *
14
+ * function App() {
15
+ * return (
16
+ * <Route path="/files/*" element={
17
+ * <FilesRoot
18
+ * basePath="/files"
19
+ * navigate={navigate}
20
+ * currentUser={user}
21
+ * workspaceId="ws-123"
22
+ * apiGatewayUrl="https://api.example.com"
23
+ * authToken="token"
24
+ * />
25
+ * } />
26
+ * );
27
+ * }
28
+ * ```
29
+ */
30
+ export declare const FilesRoot: FC<FilesRootProps>;
31
+ //# sourceMappingURL=FilesRoot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FilesRoot.d.ts","sourceRoot":"","sources":["../../src/files/FilesRoot.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAOhC,OAAO,KAAK,EAAW,cAAc,EAAE,MAAM,SAAS,CAAC;AAwBvD;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,eAAO,MAAM,SAAS,EAAE,EAAE,CAAC,cAAc,CA6FxC,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Internal router for the Files microfrontend.
3
+ * This component handles routing within the microfrontend using React Router v7.
4
+ *
5
+ * Routes:
6
+ * - / → Redirect to browse
7
+ * - /browse → File browser page (root folder) - eager loaded
8
+ * - /browse/:folderId → File browser page (specific folder) - eager loaded
9
+ * - /* → Catch-all redirects to browse
10
+ */
11
+ export declare function FilesRoutes(): import("react").JSX.Element;
12
+ //# sourceMappingURL=FilesRoutes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FilesRoutes.d.ts","sourceRoot":"","sources":["../../src/files/FilesRoutes.tsx"],"names":[],"mappings":"AAKA;;;;;;;;;GASG;AACH,wBAAgB,WAAW,gCAgC1B"}
@@ -0,0 +1,19 @@
1
+ import { FC } from 'react';
2
+ export interface ActionMenuItem {
3
+ label: string;
4
+ icon?: React.ReactNode;
5
+ onClick: () => void;
6
+ variant?: "default" | "danger";
7
+ divider?: boolean;
8
+ }
9
+ interface ActionMenuProps {
10
+ items: ActionMenuItem[];
11
+ triggerClassName?: string;
12
+ menuClassName?: string;
13
+ align?: "left" | "right";
14
+ isOpen?: boolean;
15
+ onToggle?: (open: boolean) => void;
16
+ }
17
+ export declare const ActionMenu: FC<ActionMenuProps>;
18
+ export {};
19
+ //# sourceMappingURL=ActionMenu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ActionMenu.d.ts","sourceRoot":"","sources":["../../../src/files/components/ActionMenu.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EAAE,EAMR,MAAM,OAAO,CAAC;AAMf,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC;IAC/B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,UAAU,eAAe;IACvB,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACzB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CACpC;AAED,eAAO,MAAM,UAAU,EAAE,EAAE,CAAC,eAAe,CA+J1C,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { ReactNode } from 'react';
2
+ interface ConfirmDialogProps {
3
+ title: string;
4
+ description: ReactNode;
5
+ confirmLabel: string;
6
+ cancelLabel: string;
7
+ variant?: "danger" | "default";
8
+ loading?: boolean;
9
+ onConfirm: () => void;
10
+ onCancel: () => void;
11
+ }
12
+ /**
13
+ * Confirm/alert dialog. Delegates layout + dismissal to
14
+ * `<ResponsiveDialog>` from `@burdenoff/fe-libs/ui` (bottom-sheet on
15
+ * mobile, centred modal on tablet/desktop). Existing call sites that
16
+ * mount this conditionally (`{open && <ConfirmDialog ... />}`) continue
17
+ * to work because we drive `open={true}` and forward dismissal via
18
+ * `onOpenChange` → `onCancel`.
19
+ */
20
+ export declare function ConfirmDialog({ title, description, confirmLabel, cancelLabel, variant, loading, onConfirm, onCancel, }: ConfirmDialogProps): import("react").JSX.Element;
21
+ export {};
22
+ //# sourceMappingURL=ConfirmDialog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConfirmDialog.d.ts","sourceRoot":"","sources":["../../../src/files/components/ConfirmDialog.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAYvC,UAAU,kBAAkB;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,SAAS,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;IAC/B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,EAC5B,KAAK,EACL,WAAW,EACX,YAAY,EACZ,WAAW,EACX,OAAmB,EACnB,OAAe,EACf,SAAS,EACT,QAAQ,GACT,EAAE,kBAAkB,+BAmDpB"}
@@ -0,0 +1,15 @@
1
+ interface ContextMenuProps {
2
+ x: number;
3
+ y: number;
4
+ onClose: () => void;
5
+ items: {
6
+ label: string;
7
+ icon: React.ReactNode;
8
+ onClick: () => void;
9
+ variant?: "default" | "danger";
10
+ disabled?: boolean;
11
+ }[];
12
+ }
13
+ export declare function ContextMenu({ x, y, onClose, items }: ContextMenuProps): import("react").JSX.Element;
14
+ export {};
15
+ //# sourceMappingURL=ContextMenu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContextMenu.d.ts","sourceRoot":"","sources":["../../../src/files/components/ContextMenu.tsx"],"names":[],"mappings":"AAEA,UAAU,gBAAgB;IACxB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,KAAK,EAAE;QACL,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC;QACtB,OAAO,EAAE,MAAM,IAAI,CAAC;QACpB,OAAO,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC;QAC/B,QAAQ,CAAC,EAAE,OAAO,CAAC;KACpB,EAAE,CAAC;CACL;AAED,wBAAgB,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,gBAAgB,+BA2DrE"}
@@ -0,0 +1,12 @@
1
+ import { FC } from 'react';
2
+ import { FileItem, FolderItem } from '../types';
3
+ interface CopyDialogProps {
4
+ item: FileItem | FolderItem;
5
+ type: "file" | "folder";
6
+ onClose: () => void;
7
+ onCopy: (destinationFolderId: string | null, newName?: string) => Promise<void>;
8
+ isLoading?: boolean;
9
+ }
10
+ export declare const CopyDialog: FC<CopyDialogProps>;
11
+ export {};
12
+ //# sourceMappingURL=CopyDialog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CopyDialog.d.ts","sourceRoot":"","sources":["../../../src/files/components/CopyDialog.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,EAAY,MAAM,OAAO,CAAC;AAY1C,OAAO,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAIrD,UAAU,eAAe;IACvB,IAAI,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC5B,IAAI,EAAE,MAAM,GAAG,QAAQ,CAAC;IACxB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,MAAM,EAAE,CACN,mBAAmB,EAAE,MAAM,GAAG,IAAI,EAClC,OAAO,CAAC,EAAE,MAAM,KACb,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,eAAO,MAAM,UAAU,EAAE,EAAE,CAAC,eAAe,CAqN1C,CAAC"}
@@ -0,0 +1,15 @@
1
+ interface EmptyStateProps {
2
+ type: "all" | "recent" | "starred" | "bin";
3
+ onUpload?: () => void;
4
+ onNewFolder?: () => void;
5
+ }
6
+ /**
7
+ * Local wrapper that delegates to the on-brand `<IllustratedEmptyState>` from
8
+ * `@burdenoff/fe-libs/ui`. Keeps the microfe-files-specific `type`-keyed config
9
+ * (illustration + i18n keys + per-type action visibility) at the call site. The
10
+ * `empty-files` illustration is served by the host shell at
11
+ * `/illustrations/empty-files.webp`.
12
+ */
13
+ export declare function EmptyState({ type, onUpload, onNewFolder }: EmptyStateProps): import("react").JSX.Element;
14
+ export {};
15
+ //# sourceMappingURL=EmptyState.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EmptyState.d.ts","sourceRoot":"","sources":["../../../src/files/components/EmptyState.tsx"],"names":[],"mappings":"AAIA,UAAU,eAAe;IACvB,IAAI,EAAE,KAAK,GAAG,QAAQ,GAAG,SAAS,GAAG,KAAK,CAAC;IAC3C,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;CAC1B;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,EAAE,eAAe,+BAqE1E"}
@@ -0,0 +1,37 @@
1
+ import { FC } from 'react';
2
+ import { FileItem, FolderItem } from '../types';
3
+ interface FileBrowserProps {
4
+ files: FileItem[];
5
+ folders: FolderItem[];
6
+ loading?: boolean;
7
+ error?: Error | null;
8
+ preserveSortOrder?: boolean;
9
+ onFilePreview?: (file: FileItem) => void;
10
+ onFileShare?: (file: FileItem) => void;
11
+ onFileDelete?: (file: FileItem) => void;
12
+ onFileRestore?: (file: FileItem) => void;
13
+ onFileFavorite?: (file: FileItem) => void;
14
+ onFileRename?: (file: FileItem) => void;
15
+ onFileDownload?: (file: FileItem) => void;
16
+ onFileCopy?: (file: FileItem) => void;
17
+ onFileMove?: (file: FileItem) => void;
18
+ onFileInfo?: (file: FileItem) => void;
19
+ onFileActivity?: (file: FileItem) => void;
20
+ onFolderOpen?: (folder: FolderItem) => void;
21
+ onFolderShare?: (folder: FolderItem) => void;
22
+ onFolderDelete?: (folder: FolderItem) => void;
23
+ onFolderRestore?: (folder: FolderItem) => void;
24
+ onFolderRename?: (folder: FolderItem) => void;
25
+ onFolderFavorite?: (folder: FolderItem) => void;
26
+ onFolderCopy?: (folder: FolderItem) => void;
27
+ onFolderMove?: (folder: FolderItem) => void;
28
+ onFolderInfo?: (folder: FolderItem) => void;
29
+ onFolderActivity?: (folder: FolderItem) => void;
30
+ onMoveFile?: (fileId: string, targetFolderId: string) => Promise<void>;
31
+ onCopyFile?: (fileId: string, targetFolderId: string) => Promise<void>;
32
+ onMoveFolder?: (folderId: string, targetFolderId: string) => Promise<void>;
33
+ onCopyFolder?: (folderId: string, targetFolderId: string) => Promise<void>;
34
+ }
35
+ export declare const FileBrowser: FC<FileBrowserProps>;
36
+ export {};
37
+ //# sourceMappingURL=FileBrowser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FileBrowser.d.ts","sourceRoot":"","sources":["../../../src/files/components/FileBrowser.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,EAAY,MAAM,OAAO,CAAC;AAG1C,OAAO,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAgBrD,UAAU,gBAAgB;IACxB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;IACrB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACzC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACvC,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACxC,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACzC,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IAC1C,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACxC,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IAC1C,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACtC,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACtC,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACtC,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IAC1C,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAC;IAC5C,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAC;IAC7C,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAC;IAC9C,eAAe,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAC;IAC/C,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAC;IAC9C,gBAAgB,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAC;IAChD,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAC;IAC5C,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAC;IAC5C,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAC;IAC5C,gBAAgB,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAC;IAChD,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACvE,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACvE,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3E,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5E;AAED,eAAO,MAAM,WAAW,EAAE,EAAE,CAAC,gBAAgB,CA2qB5C,CAAC"}
@@ -0,0 +1,30 @@
1
+ import { FC } from 'react';
2
+ import { FileItem } from '../types';
3
+ interface FileCardProps {
4
+ file: FileItem;
5
+ isSelected?: boolean;
6
+ isDragging?: boolean;
7
+ onSelect?: (fileId: string) => void;
8
+ onPreview?: (file: FileItem) => void;
9
+ onShare?: (file: FileItem) => void;
10
+ onDelete?: (file: FileItem) => void;
11
+ onRestore?: (file: FileItem) => void;
12
+ onFavorite?: (file: FileItem) => void;
13
+ onRename?: (file: FileItem) => void;
14
+ onDownload?: (file: FileItem) => void;
15
+ onCopy?: (file: FileItem) => void;
16
+ onMove?: (file: FileItem) => void;
17
+ onInfo?: (file: FileItem) => void;
18
+ onActivity?: (file: FileItem) => void;
19
+ onDragStart?: (file: FileItem, operation: "move" | "copy") => void;
20
+ onDragEnd?: () => void;
21
+ onContextMenu?: (file: FileItem, x: number, y: number) => void;
22
+ }
23
+ interface DraggableFileCardProps extends Omit<FileCardProps, "onDragStart" | "onDragEnd"> {
24
+ onDragStart?: (file: FileItem, operation: "move" | "copy") => void;
25
+ onDragEnd?: () => void;
26
+ onContextMenu?: (file: FileItem, x: number, y: number) => void;
27
+ }
28
+ export declare const FileCard: FC<DraggableFileCardProps>;
29
+ export {};
30
+ //# sourceMappingURL=FileCard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FileCard.d.ts","sourceRoot":"","sources":["../../../src/files/components/FileCard.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,EAAqB,MAAM,OAAO,CAAC;AAenD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAOzC,UAAU,aAAa;IACrB,IAAI,EAAE,QAAQ,CAAC;IACf,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACrC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACnC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACpC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACrC,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACtC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACpC,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACtC,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IAClC,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IAClC,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IAClC,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACtC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;IACnE,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;CAChE;AAED,UAAU,sBAAuB,SAAQ,IAAI,CAC3C,aAAa,EACb,aAAa,GAAG,WAAW,CAC5B;IACC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;IACnE,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;CAChE;AAED,eAAO,MAAM,QAAQ,EAAE,EAAE,CAAC,sBAAsB,CAgY/C,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { FileItem, FolderItem } from '../types';
2
+ interface FileInfoPanelProps {
3
+ item: FileItem | FolderItem;
4
+ type: "file" | "folder";
5
+ onClose: () => void;
6
+ }
7
+ export declare function FileInfoPanel({ item, type, onClose }: FileInfoPanelProps): import("react").JSX.Element;
8
+ export {};
9
+ //# sourceMappingURL=FileInfoPanel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FileInfoPanel.d.ts","sourceRoot":"","sources":["../../../src/files/components/FileInfoPanel.tsx"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAQrD,UAAU,kBAAkB;IAC1B,IAAI,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC5B,IAAI,EAAE,MAAM,GAAG,QAAQ,CAAC;IACxB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,wBAAgB,aAAa,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,kBAAkB,+BAwSxE"}
@@ -0,0 +1,29 @@
1
+ import { FC } from 'react';
2
+ import { FileItem } from '../types';
3
+ interface FileListItemProps {
4
+ file: FileItem;
5
+ isSelected?: boolean;
6
+ isDragging?: boolean;
7
+ onSelect?: (fileId: string) => void;
8
+ onPreview?: (file: FileItem) => void;
9
+ onShare?: (file: FileItem) => void;
10
+ onDelete?: (file: FileItem) => void;
11
+ onRestore?: (file: FileItem) => void;
12
+ onFavorite?: (file: FileItem) => void;
13
+ onRename?: (file: FileItem) => void;
14
+ onDownload?: (file: FileItem) => void;
15
+ onCopy?: (file: FileItem) => void;
16
+ onMove?: (file: FileItem) => void;
17
+ onInfo?: (file: FileItem) => void;
18
+ onActivity?: (file: FileItem) => void;
19
+ onDragStart?: (file: FileItem, operation: "move" | "copy") => void;
20
+ onDragEnd?: () => void;
21
+ onContextMenu?: (file: FileItem, x: number, y: number) => void;
22
+ }
23
+ interface DraggableFileListItemProps extends Omit<FileListItemProps, "onDragStart" | "onDragEnd"> {
24
+ onDragStart?: (file: FileItem, operation: "move" | "copy") => void;
25
+ onDragEnd?: () => void;
26
+ }
27
+ export declare const FileListItem: FC<DraggableFileListItemProps>;
28
+ export {};
29
+ //# sourceMappingURL=FileListItem.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FileListItem.d.ts","sourceRoot":"","sources":["../../../src/files/components/FileListItem.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,EAAqB,MAAM,OAAO,CAAC;AAcnD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAOzC,UAAU,iBAAiB;IACzB,IAAI,EAAE,QAAQ,CAAC;IACf,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACrC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACnC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACpC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACrC,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACtC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACpC,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACtC,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IAClC,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IAClC,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IAClC,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACtC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;IACnE,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;CAChE;AAED,UAAU,0BAA2B,SAAQ,IAAI,CAC/C,iBAAiB,EACjB,aAAa,GAAG,WAAW,CAC5B;IACC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;IACnE,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;CACxB;AAED,eAAO,MAAM,YAAY,EAAE,EAAE,CAAC,0BAA0B,CAsYvD,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { FileItem } from '../types';
2
+ interface FilePreviewModalProps {
3
+ file: FileItem;
4
+ onClose: () => void;
5
+ onDownload: () => void;
6
+ onShare?: () => void;
7
+ onStar?: () => void;
8
+ onDelete?: () => void;
9
+ customActions?: Array<{
10
+ label: string;
11
+ icon: React.ReactNode;
12
+ onClick: () => void;
13
+ }>;
14
+ }
15
+ export declare function FilePreviewModal({ file, onClose, onDownload, onShare, onStar, onDelete, customActions, }: FilePreviewModalProps): import("react").JSX.Element;
16
+ export {};
17
+ //# sourceMappingURL=FilePreviewModal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FilePreviewModal.d.ts","sourceRoot":"","sources":["../../../src/files/components/FilePreviewModal.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AASzC,UAAU,qBAAqB;IAC7B,IAAI,EAAE,QAAQ,CAAC;IACf,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,aAAa,CAAC,EAAE,KAAK,CAAC;QACpB,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC;QACtB,OAAO,EAAE,MAAM,IAAI,CAAC;KACrB,CAAC,CAAC;CACJ;AA8GD,wBAAgB,gBAAgB,CAAC,EAC/B,IAAI,EACJ,OAAO,EACP,UAAU,EACV,OAAO,EACP,MAAM,EACN,QAAQ,EACR,aAAa,GACd,EAAE,qBAAqB,+BA+LvB"}
@@ -0,0 +1,9 @@
1
+ import { FC } from 'react';
2
+ import { FileItem } from '../types';
3
+ interface FileVersionPanelProps {
4
+ file: FileItem;
5
+ onClose: () => void;
6
+ }
7
+ export declare const FileVersionPanel: FC<FileVersionPanelProps>;
8
+ export {};
9
+ //# sourceMappingURL=FileVersionPanel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FileVersionPanel.d.ts","sourceRoot":"","sources":["../../../src/files/components/FileVersionPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,EAAY,MAAM,OAAO,CAAC;AAc1C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAYzC,UAAU,qBAAqB;IAC7B,IAAI,EAAE,QAAQ,CAAC;IACf,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,eAAO,MAAM,gBAAgB,EAAE,EAAE,CAAC,qBAAqB,CAuYtD,CAAC"}
@@ -0,0 +1,34 @@
1
+ import { FC } from 'react';
2
+ import { FolderItem } from '../types';
3
+ import { DragData } from '../hooks/useDragDrop';
4
+ interface FolderCardProps {
5
+ folder: FolderItem;
6
+ isSelected?: boolean;
7
+ isDragging?: boolean;
8
+ isDropTarget?: boolean;
9
+ draggedItem?: DragData | null;
10
+ onSelect?: (folderId: string) => void;
11
+ onOpen?: (folder: FolderItem) => void;
12
+ onShare?: (folder: FolderItem) => void;
13
+ onDelete?: (folder: FolderItem) => void;
14
+ onRestore?: (folder: FolderItem) => void;
15
+ onRename?: (folder: FolderItem) => void;
16
+ onFavorite?: (folder: FolderItem) => void;
17
+ onCopy?: (folder: FolderItem) => void;
18
+ onMove?: (folder: FolderItem) => void;
19
+ onInfo?: (folder: FolderItem) => void;
20
+ onActivity?: (folder: FolderItem) => void;
21
+ onDragStart?: (folder: FolderItem, operation: "move" | "copy") => void;
22
+ onDragEnd?: () => void;
23
+ onDrop?: (folder: FolderItem) => void;
24
+ onContextMenu?: (folder: FolderItem, x: number, y: number) => void;
25
+ }
26
+ interface DraggableFolderCardProps extends Omit<FolderCardProps, "onDragStart" | "onDragEnd" | "onDrop"> {
27
+ onDragStart?: (folder: FolderItem, operation: "move" | "copy") => void;
28
+ onDragEnd?: () => void;
29
+ onDrop?: (folder: FolderItem) => void;
30
+ onContextMenu?: (folder: FolderItem, x: number, y: number) => void;
31
+ }
32
+ export declare const FolderCard: FC<DraggableFolderCardProps>;
33
+ export {};
34
+ //# sourceMappingURL=FolderCard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FolderCard.d.ts","sourceRoot":"","sources":["../../../src/files/components/FolderCard.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,EAAqB,MAAM,OAAO,CAAC;AAgBnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAM3C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAErD,UAAU,eAAe;IACvB,MAAM,EAAE,UAAU,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,WAAW,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC;IAC9B,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAC;IACtC,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAC;IACvC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAC;IACxC,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAC;IACzC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAC;IACxC,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAC;IAC1C,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAC;IACtC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAC;IACtC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAC;IACtC,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAC;IAC1C,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;IACvE,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAC;IACtC,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;CACpE;AAED,UAAU,wBAAyB,SAAQ,IAAI,CAC7C,eAAe,EACf,aAAa,GAAG,WAAW,GAAG,QAAQ,CACvC;IACC,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;IACvE,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAC;IACtC,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;CACpE;AAED,eAAO,MAAM,UAAU,EAAE,EAAE,CAAC,wBAAwB,CAqWnD,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { FC } from 'react';
2
+ import { FileItem, FolderItem } from '../types';
3
+ interface MoveDialogProps {
4
+ item: FileItem | FolderItem;
5
+ type: "file" | "folder";
6
+ onClose: () => void;
7
+ onMove: (destinationFolderId: string | null) => Promise<void>;
8
+ isLoading?: boolean;
9
+ }
10
+ export declare const MoveDialog: FC<MoveDialogProps>;
11
+ export {};
12
+ //# sourceMappingURL=MoveDialog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MoveDialog.d.ts","sourceRoot":"","sources":["../../../src/files/components/MoveDialog.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,EAAY,MAAM,OAAO,CAAC;AAW1C,OAAO,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAIrD,UAAU,eAAe;IACvB,IAAI,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC5B,IAAI,EAAE,MAAM,GAAG,QAAQ,CAAC;IACxB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,MAAM,EAAE,CAAC,mBAAmB,EAAE,MAAM,GAAG,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9D,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,eAAO,MAAM,UAAU,EAAE,EAAE,CAAC,eAAe,CA6N1C,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { FileFilterInput, FolderFilterInput } from '../graphql-types';
2
+ interface SearchBarProps {
3
+ onSearch: (query: string, filters?: {
4
+ fileFilter?: FileFilterInput;
5
+ folderFilter?: FolderFilterInput;
6
+ }) => void;
7
+ placeholder?: string;
8
+ initialQuery?: string;
9
+ showFilters?: boolean;
10
+ }
11
+ export declare function SearchBar({ onSearch, placeholder, initialQuery, showFilters, }: SearchBarProps): import("react").JSX.Element;
12
+ export {};
13
+ //# sourceMappingURL=SearchBar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SearchBar.d.ts","sourceRoot":"","sources":["../../../src/files/components/SearchBar.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAG3E,UAAU,cAAc;IACtB,QAAQ,EAAE,CACR,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE;QACR,UAAU,CAAC,EAAE,eAAe,CAAC;QAC7B,YAAY,CAAC,EAAE,iBAAiB,CAAC;KAClC,KACE,IAAI,CAAC;IACV,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAgCD,wBAAgB,SAAS,CAAC,EACxB,QAAQ,EACR,WAA2C,EAC3C,YAAiB,EACjB,WAAkB,GACnB,EAAE,cAAc,+BAoYhB"}
@@ -0,0 +1,24 @@
1
+ import { FileItem, FolderItem } from '../types';
2
+ export interface ShareDialogInput {
3
+ fileId?: string;
4
+ folderId?: string;
5
+ shareType: "PUBLIC_LINK" | "EMAIL_INVITE";
6
+ accessLevel: "VIEW" | "DOWNLOAD" | "EDIT";
7
+ expiresAt?: string;
8
+ maxDownloads?: number;
9
+ password?: string;
10
+ invitedEmail?: string;
11
+ }
12
+ interface ShareDialogProps {
13
+ item: FileItem | FolderItem;
14
+ itemType: "file" | "folder";
15
+ onClose: () => void;
16
+ onCreateShare: (input: ShareDialogInput) => Promise<{
17
+ publicUrl: string;
18
+ token: string;
19
+ }>;
20
+ isLoading?: boolean;
21
+ }
22
+ export declare function ShareDialog({ item, itemType, onClose, onCreateShare, isLoading, }: ShareDialogProps): import("react").JSX.Element;
23
+ export {};
24
+ //# sourceMappingURL=ShareDialog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ShareDialog.d.ts","sourceRoot":"","sources":["../../../src/files/components/ShareDialog.tsx"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAGrD,MAAM,WAAW,gBAAgB;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,aAAa,GAAG,cAAc,CAAC;IAC1C,WAAW,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM,CAAC;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,UAAU,gBAAgB;IACxB,IAAI,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC5B,QAAQ,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC5B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,aAAa,EAAE,CACb,KAAK,EAAE,gBAAgB,KACpB,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACnD,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,wBAAgB,WAAW,CAAC,EAC1B,IAAI,EACJ,QAAQ,EACR,OAAO,EACP,aAAa,EACb,SAAS,GACV,EAAE,gBAAgB,+BA+YlB"}
@@ -0,0 +1,12 @@
1
+ import { FC } from 'react';
2
+ import { StorageQuotaState } from '../hooks/useStorageQuota';
3
+ interface StorageBannerProps {
4
+ quota: StorageQuotaState;
5
+ }
6
+ export declare const StorageBanner: FC<StorageBannerProps>;
7
+ interface StorageIndicatorProps {
8
+ quota: StorageQuotaState;
9
+ }
10
+ export declare const StorageIndicator: FC<StorageIndicatorProps>;
11
+ export {};
12
+ //# sourceMappingURL=StorageBanner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StorageBanner.d.ts","sourceRoot":"","sources":["../../../src/files/components/StorageBanner.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAGhC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AASlE,UAAU,kBAAkB;IAC1B,KAAK,EAAE,iBAAiB,CAAC;CAC1B;AAED,eAAO,MAAM,aAAa,EAAE,EAAE,CAAC,kBAAkB,CAsEhD,CAAC;AAEF,UAAU,qBAAqB;IAC7B,KAAK,EAAE,iBAAiB,CAAC;CAC1B;AAED,eAAO,MAAM,gBAAgB,EAAE,EAAE,CAAC,qBAAqB,CAyBtD,CAAC"}
@@ -1,64 +1,83 @@
1
- import { AlertCircle as e, AlertTriangle as t } from "lucide-react";
2
- import { jsx as n, jsxs as r } from "react/jsx-runtime";
1
+ import { QuotaMeter as e } from "@burdenoff/fe-libs/shared/components";
2
+ import { AlertCircle as t, AlertTriangle as n } from "lucide-react";
3
+ import { jsx as r, jsxs as i } from "react/jsx-runtime";
3
4
  //#region src/files/components/StorageBanner.tsx
4
- function i(e) {
5
+ function a(e) {
5
6
  return e >= 1073741824 ? `${(e / 1073741824).toFixed(1)} GB` : e >= 1048576 ? `${(e / 1048576).toFixed(1)} MB` : e >= 1024 ? `${(e / 1024).toFixed(1)} KB` : `${e} B`;
6
7
  }
7
- var a = ({ quota: a }) => {
8
- if (a.loading || a.noLimit || !a.isExhausted && !a.isNearLimit) return null;
9
- let o = i(a.usedBytes), s = a.limitBytes ? i(a.limitBytes) : null;
10
- return a.isExhausted ? /* @__PURE__ */ r("div", {
8
+ var o = ({ quota: o }) => {
9
+ if (o.loading || o.noLimit || !o.isExhausted && !o.isNearLimit) return null;
10
+ let s = a(o.usedBytes), c = o.limitBytes ? a(o.limitBytes) : null, l = Math.round(o.usedBytes / 1048576), u = o.limitBytes ? Math.round(o.limitBytes / 1048576) : l;
11
+ return o.isExhausted ? /* @__PURE__ */ i("div", {
11
12
  className: "flex items-center gap-3 rounded-lg border border-status-error-bg/30 bg-status-error-bg/10 px-4 py-3 text-sm",
12
13
  children: [
13
- /* @__PURE__ */ n(e, { className: "size-4 shrink-0 text-status-error-bg" }),
14
- /* @__PURE__ */ r("div", {
14
+ /* @__PURE__ */ r(t, { className: "size-4 shrink-0 text-status-error-bg" }),
15
+ /* @__PURE__ */ i("div", {
15
16
  className: "flex flex-1 items-center gap-1 text-text-primary",
16
- children: [/* @__PURE__ */ n("span", {
17
+ children: [/* @__PURE__ */ r("span", {
17
18
  className: "font-medium",
18
19
  children: "Storage full."
19
- }), /* @__PURE__ */ r("span", {
20
+ }), /* @__PURE__ */ i("span", {
20
21
  className: "text-text-secondary",
21
22
  children: [
22
- s ? `${o} of ${s} used — no space left.` : `${o} used — no space left.`,
23
+ c ? `${s} of ${c} used — no space left.` : `${s} used — no space left.`,
23
24
  " ",
24
25
  "Delete files to free up space or upgrade your plan."
25
26
  ]
26
27
  })]
27
28
  }),
28
- /* @__PURE__ */ n("div", {
29
+ /* @__PURE__ */ r("div", {
30
+ className: "min-w-[180px] shrink-0",
31
+ children: /* @__PURE__ */ r(e, {
32
+ label: "Storage",
33
+ used: l,
34
+ limit: u,
35
+ unit: "MB"
36
+ })
37
+ }),
38
+ /* @__PURE__ */ r("div", {
29
39
  className: "h-1.5 w-24 shrink-0 overflow-hidden rounded-full bg-surface-tertiary",
30
- children: /* @__PURE__ */ n("div", { className: "h-full w-full rounded-full bg-status-error-bg" })
40
+ children: /* @__PURE__ */ r("div", { className: "h-full w-full rounded-full bg-status-error-bg" })
31
41
  })
32
42
  ]
33
- }) : /* @__PURE__ */ r("div", {
43
+ }) : /* @__PURE__ */ i("div", {
34
44
  className: "flex items-center gap-3 rounded-lg border border-status-warning-bg/30 bg-status-warning-bg/10 px-4 py-3 text-sm",
35
45
  children: [
36
- /* @__PURE__ */ n(t, { className: "size-4 shrink-0 text-status-warning-bg" }),
37
- /* @__PURE__ */ r("div", {
46
+ /* @__PURE__ */ r(n, { className: "size-4 shrink-0 text-status-warning-bg" }),
47
+ /* @__PURE__ */ i("div", {
38
48
  className: "flex flex-1 items-center gap-1 text-text-primary",
39
- children: [/* @__PURE__ */ n("span", {
49
+ children: [/* @__PURE__ */ r("span", {
40
50
  className: "font-medium",
41
51
  children: "Storage almost full."
42
- }), /* @__PURE__ */ r("span", {
52
+ }), /* @__PURE__ */ i("span", {
43
53
  className: "text-text-secondary",
44
54
  children: [
45
- s ? `${o} of ${s} used (${Math.round(a.usedPercent)}%).` : `${o} used.`,
55
+ c ? `${s} of ${c} used (${Math.round(o.usedPercent)}%).` : `${s} used.`,
46
56
  " ",
47
57
  "Consider deleting files or upgrading your plan."
48
58
  ]
49
59
  })]
50
60
  }),
51
- /* @__PURE__ */ n("div", {
61
+ /* @__PURE__ */ r("div", {
62
+ className: "min-w-[180px] shrink-0",
63
+ children: /* @__PURE__ */ r(e, {
64
+ label: "Storage",
65
+ used: l,
66
+ limit: u,
67
+ unit: "MB"
68
+ })
69
+ }),
70
+ /* @__PURE__ */ r("div", {
52
71
  className: "h-1.5 w-24 shrink-0 overflow-hidden rounded-full bg-surface-tertiary",
53
- children: /* @__PURE__ */ n("div", {
72
+ children: /* @__PURE__ */ r("div", {
54
73
  className: "h-full rounded-full bg-status-warning-bg transition-all",
55
- style: { width: `${a.usedPercent}%` }
74
+ style: { width: `${o.usedPercent}%` }
56
75
  })
57
76
  })
58
77
  ]
59
78
  });
60
79
  };
61
80
  //#endregion
62
- export { a as StorageBanner };
81
+ export { o as StorageBanner };
63
82
 
64
83
  //# sourceMappingURL=StorageBanner.js.map