@webiny/app-file-manager 0.0.0-unstable.78f581c1d2 → 0.0.0-unstable.7be00a75a9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +7 -28
- package/app.d.ts +2 -0
- package/app.js +57 -0
- package/app.js.map +1 -0
- package/domain/constants.d.ts +4 -0
- package/domain/constants.js +7 -0
- package/domain/constants.js.map +1 -0
- package/domain/permissionsSchema.d.ts +18 -0
- package/domain/permissionsSchema.js +32 -0
- package/domain/permissionsSchema.js.map +1 -0
- package/domain/tagsHelpers.d.ts +16 -0
- package/domain/tagsHelpers.js +25 -0
- package/domain/tagsHelpers.js.map +1 -0
- package/domain/types.d.ts +34 -0
- package/domain/types.js +0 -0
- package/exports/admin/ui/file-manager.d.ts +2 -0
- package/exports/admin/ui/file-manager.js +1 -0
- package/features/deleteFile/DeleteFile.test.d.ts +1 -0
- package/features/deleteFile/DeleteFile.test.js +150 -0
- package/features/deleteFile/DeleteFile.test.js.map +1 -0
- package/features/deleteFile/DeleteFileGateway.d.ts +11 -0
- package/features/deleteFile/DeleteFileGateway.js +23 -0
- package/features/deleteFile/DeleteFileGateway.js.map +1 -0
- package/features/deleteFile/DeleteFileRepository.d.ts +12 -0
- package/features/deleteFile/DeleteFileRepository.js +26 -0
- package/features/deleteFile/DeleteFileRepository.js.map +1 -0
- package/features/deleteFile/DeleteFileUseCase.d.ts +10 -0
- package/features/deleteFile/DeleteFileUseCase.js +34 -0
- package/features/deleteFile/DeleteFileUseCase.js.map +1 -0
- package/features/deleteFile/abstractions.d.ts +36 -0
- package/features/deleteFile/abstractions.js +7 -0
- package/features/deleteFile/abstractions.js.map +1 -0
- package/features/deleteFile/feature.d.ts +3 -0
- package/features/deleteFile/feature.js +21 -0
- package/features/deleteFile/feature.js.map +1 -0
- package/features/deleteFile/index.d.ts +3 -0
- package/features/deleteFile/index.js +2 -0
- package/features/fileModel/FileModelProvider.d.ts +12 -0
- package/features/fileModel/FileModelProvider.js +21 -0
- package/features/fileModel/FileModelProvider.js.map +1 -0
- package/features/fileModel/GetFileModelGqlGateway.d.ts +12 -0
- package/features/fileModel/GetFileModelGqlGateway.js +38 -0
- package/features/fileModel/GetFileModelGqlGateway.js.map +1 -0
- package/features/fileModel/GetFileModelRepository.d.ts +14 -0
- package/features/fileModel/GetFileModelRepository.js +32 -0
- package/features/fileModel/GetFileModelRepository.js.map +1 -0
- package/features/fileModel/abstractions.d.ts +24 -0
- package/features/fileModel/abstractions.js +7 -0
- package/features/fileModel/abstractions.js.map +1 -0
- package/features/fileModel/feature.d.ts +1 -0
- package/features/fileModel/feature.js +15 -0
- package/features/fileModel/feature.js.map +1 -0
- package/features/fileModel/index.d.ts +2 -0
- package/features/fileModel/index.js +2 -0
- package/features/fileUploader/FileUploader.d.ts +23 -0
- package/features/fileUploader/FileUploader.js +243 -0
- package/features/fileUploader/FileUploader.js.map +1 -0
- package/features/fileUploader/FileUploader.test.d.ts +1 -0
- package/features/fileUploader/FileUploader.test.js +427 -0
- package/features/fileUploader/FileUploader.test.js.map +1 -0
- package/features/fileUploader/abstractions.d.ts +51 -0
- package/features/fileUploader/abstractions.js +5 -0
- package/features/fileUploader/abstractions.js.map +1 -0
- package/features/fileUploader/feature.d.ts +3 -0
- package/features/fileUploader/feature.js +17 -0
- package/features/fileUploader/feature.js.map +1 -0
- package/features/fileUploader/index.d.ts +3 -0
- package/features/fileUploader/index.js +2 -0
- package/features/fileUrlFormatter/FileUrlFormatter.d.ts +8 -0
- package/features/fileUrlFormatter/FileUrlFormatter.js +13 -0
- package/features/fileUrlFormatter/FileUrlFormatter.js.map +1 -0
- package/features/fileUrlFormatter/abstractions.d.ts +1 -0
- package/features/fileUrlFormatter/abstractions.js +1 -0
- package/features/fileUrlFormatter/feature.d.ts +1 -0
- package/features/fileUrlFormatter/feature.js +11 -0
- package/features/fileUrlFormatter/feature.js.map +1 -0
- package/features/getFile/GetFileGateway.d.ts +14 -0
- package/features/getFile/GetFileGateway.js +28 -0
- package/features/getFile/GetFileGateway.js.map +1 -0
- package/features/getFile/GetFileRepository.d.ts +11 -0
- package/features/getFile/GetFileRepository.js +18 -0
- package/features/getFile/GetFileRepository.js.map +1 -0
- package/features/getFile/GetFileUseCase.d.ts +10 -0
- package/features/getFile/GetFileUseCase.js +35 -0
- package/features/getFile/GetFileUseCase.js.map +1 -0
- package/features/getFile/abstractions.d.ts +38 -0
- package/features/getFile/abstractions.js +7 -0
- package/features/getFile/abstractions.js.map +1 -0
- package/features/getFile/feature.d.ts +3 -0
- package/features/getFile/feature.js +21 -0
- package/features/getFile/feature.js.map +1 -0
- package/features/getFile/index.d.ts +3 -0
- package/features/getFile/index.js +2 -0
- package/features/listFiles/ListFiles.test.d.ts +1 -0
- package/features/listFiles/ListFiles.test.js +192 -0
- package/features/listFiles/ListFiles.test.js.map +1 -0
- package/features/listFiles/ListFilesGateway.d.ts +13 -0
- package/features/listFiles/ListFilesGateway.js +35 -0
- package/features/listFiles/ListFilesGateway.js.map +1 -0
- package/features/listFiles/ListFilesRepository.d.ts +12 -0
- package/features/listFiles/ListFilesRepository.js +26 -0
- package/features/listFiles/ListFilesRepository.js.map +1 -0
- package/features/listFiles/ListFilesUseCase.d.ts +10 -0
- package/features/listFiles/ListFilesUseCase.js +28 -0
- package/features/listFiles/ListFilesUseCase.js.map +1 -0
- package/features/listFiles/abstractions.d.ts +45 -0
- package/features/listFiles/abstractions.js +7 -0
- package/features/listFiles/abstractions.js.map +1 -0
- package/features/listFiles/feature.d.ts +3 -0
- package/features/listFiles/feature.js +21 -0
- package/features/listFiles/feature.js.map +1 -0
- package/features/listFiles/index.d.ts +3 -0
- package/features/listFiles/index.js +2 -0
- package/features/permissions/abstractions.d.ts +17 -0
- package/features/permissions/abstractions.js +6 -0
- package/features/permissions/abstractions.js.map +1 -0
- package/features/permissions/feature.d.ts +14 -0
- package/features/permissions/feature.js +7 -0
- package/features/permissions/feature.js.map +1 -0
- package/features/resolveImageTool/ResolveImageTool.d.ts +40 -0
- package/features/resolveImageTool/ResolveImageTool.js +49 -0
- package/features/resolveImageTool/ResolveImageTool.js.map +1 -0
- package/features/resolveImageTool/feature.d.ts +1 -0
- package/features/resolveImageTool/feature.js +11 -0
- package/features/resolveImageTool/feature.js.map +1 -0
- package/features/settings/GetSettings.test.d.ts +1 -0
- package/features/settings/GetSettings.test.js +92 -0
- package/features/settings/GetSettings.test.js.map +1 -0
- package/features/settings/GetSettingsGateway.d.ts +12 -0
- package/features/settings/GetSettingsGateway.js +43 -0
- package/features/settings/GetSettingsGateway.js.map +1 -0
- package/features/settings/GetSettingsRepository.d.ts +14 -0
- package/features/settings/GetSettingsRepository.js +34 -0
- package/features/settings/GetSettingsRepository.js.map +1 -0
- package/features/settings/GetSettingsUseCase.d.ts +11 -0
- package/features/settings/GetSettingsUseCase.js +18 -0
- package/features/settings/GetSettingsUseCase.js.map +1 -0
- package/features/settings/SaveSettingsGateway.d.ts +12 -0
- package/features/settings/SaveSettingsGateway.js +50 -0
- package/features/settings/SaveSettingsGateway.js.map +1 -0
- package/features/settings/abstractions.d.ts +31 -0
- package/features/settings/abstractions.js +8 -0
- package/features/settings/abstractions.js.map +1 -0
- package/features/settings/feature.d.ts +3 -0
- package/features/settings/feature.js +23 -0
- package/features/settings/feature.js.map +1 -0
- package/features/settings/index.d.ts +3 -0
- package/features/settings/index.js +2 -0
- package/features/shared/FILE_FIELDS.d.ts +1 -0
- package/features/shared/FILE_FIELDS.js +32 -0
- package/features/shared/FILE_FIELDS.js.map +1 -0
- package/features/shared/FileFieldsProvider.d.ts +8 -0
- package/features/shared/FileFieldsProvider.js +14 -0
- package/features/shared/FileFieldsProvider.js.map +1 -0
- package/features/shared/FileFieldsProviderWithWcp.d.ts +12 -0
- package/features/shared/FileFieldsProviderWithWcp.js +25 -0
- package/features/shared/FileFieldsProviderWithWcp.js.map +1 -0
- package/features/shared/FilesListCache.d.ts +1 -0
- package/features/shared/FilesListCache.js +1 -0
- package/features/shared/abstractions.d.ts +13 -0
- package/features/shared/abstractions.js +6 -0
- package/features/shared/abstractions.js.map +1 -0
- package/features/shared/feature.d.ts +5 -0
- package/features/shared/feature.js +22 -0
- package/features/shared/feature.js.map +1 -0
- package/features/shared/index.d.ts +4 -0
- package/features/shared/index.js +3 -0
- package/features/shared/types.d.ts +16 -0
- package/features/shared/types.js +0 -0
- package/features/tags/ListTags.test.d.ts +1 -0
- package/features/tags/ListTags.test.js +126 -0
- package/features/tags/ListTags.test.js.map +1 -0
- package/features/tags/ListTagsGateway.d.ts +11 -0
- package/features/tags/ListTagsGateway.js +23 -0
- package/features/tags/ListTagsGateway.js.map +1 -0
- package/features/tags/ListTagsRepository.d.ts +12 -0
- package/features/tags/ListTagsRepository.js +25 -0
- package/features/tags/ListTagsRepository.js.map +1 -0
- package/features/tags/ListTagsUseCase.d.ts +10 -0
- package/features/tags/ListTagsUseCase.js +20 -0
- package/features/tags/ListTagsUseCase.js.map +1 -0
- package/features/tags/abstractions.d.ts +32 -0
- package/features/tags/abstractions.js +7 -0
- package/features/tags/abstractions.js.map +1 -0
- package/features/tags/feature.d.ts +3 -0
- package/features/tags/feature.js +21 -0
- package/features/tags/feature.js.map +1 -0
- package/features/tags/index.d.ts +3 -0
- package/features/tags/index.js +2 -0
- package/features/updateFile/UpdateFile.test.d.ts +1 -0
- package/features/updateFile/UpdateFile.test.js +260 -0
- package/features/updateFile/UpdateFile.test.js.map +1 -0
- package/features/updateFile/UpdateFileGateway.d.ts +12 -0
- package/features/updateFile/UpdateFileGateway.js +25 -0
- package/features/updateFile/UpdateFileGateway.js.map +1 -0
- package/features/updateFile/UpdateFileRepository.d.ts +14 -0
- package/features/updateFile/UpdateFileRepository.js +32 -0
- package/features/updateFile/UpdateFileRepository.js.map +1 -0
- package/features/updateFile/UpdateFileUseCase.d.ts +12 -0
- package/features/updateFile/UpdateFileUseCase.js +41 -0
- package/features/updateFile/UpdateFileUseCase.js.map +1 -0
- package/features/updateFile/abstractions.d.ts +53 -0
- package/features/updateFile/abstractions.js +7 -0
- package/features/updateFile/abstractions.js.map +1 -0
- package/features/updateFile/feature.d.ts +3 -0
- package/features/updateFile/feature.js +21 -0
- package/features/updateFile/feature.js.map +1 -0
- package/features/updateFile/index.d.ts +3 -0
- package/features/updateFile/index.js +2 -0
- package/index.d.ts +3 -2
- package/index.js +3 -37
- package/modules/Enterprise/HandleWebsocketMessages.d.ts +1 -0
- package/modules/Enterprise/HandleWebsocketMessages.js +53 -0
- package/modules/Enterprise/HandleWebsocketMessages.js.map +1 -0
- package/modules/Enterprise/components/ThreatScanInProgressFileBody.d.ts +2 -0
- package/modules/Enterprise/components/ThreatScanInProgressFileBody.js +22 -0
- package/modules/Enterprise/components/ThreatScanInProgressFileBody.js.map +1 -0
- package/modules/Enterprise/components/ThreatScanInProgressTableCell.d.ts +6 -0
- package/modules/Enterprise/components/ThreatScanInProgressTableCell.js +20 -0
- package/modules/Enterprise/components/ThreatScanInProgressTableCell.js.map +1 -0
- package/modules/Enterprise/constants.d.ts +3 -0
- package/modules/Enterprise/constants.js +6 -0
- package/modules/Enterprise/constants.js.map +1 -0
- package/modules/Enterprise/index.d.ts +2 -0
- package/modules/Enterprise/index.js +30 -0
- package/modules/Enterprise/index.js.map +1 -0
- package/modules/FileManagerRoutes.d.ts +2 -0
- package/modules/FileManagerRoutes.js +31 -0
- package/modules/FileManagerRoutes.js.map +1 -0
- package/modules/FileModelModule.d.ts +2 -0
- package/modules/FileModelModule.js +18 -0
- package/modules/FileModelModule.js.map +1 -0
- package/modules/FileUrlFormatter.d.ts +2 -0
- package/modules/FileUrlFormatter.js +9 -0
- package/modules/FileUrlFormatter.js.map +1 -0
- package/modules/HeadlessCms/fileField.d.ts +2 -0
- package/modules/HeadlessCms/fileField.js +44 -0
- package/modules/HeadlessCms/fileField.js.map +1 -0
- package/modules/HeadlessCms/fileRenderer/fileField.d.ts +2 -0
- package/modules/HeadlessCms/fileRenderer/fileField.js +53 -0
- package/modules/HeadlessCms/fileRenderer/fileField.js.map +1 -0
- package/modules/HeadlessCms/fileRenderer/fileFields.d.ts +2 -0
- package/modules/HeadlessCms/fileRenderer/fileFields.js +73 -0
- package/modules/HeadlessCms/fileRenderer/fileFields.js.map +1 -0
- package/modules/HeadlessCms/fileRenderer/utils.d.ts +2 -0
- package/modules/HeadlessCms/fileRenderer/utils.js +15 -0
- package/modules/HeadlessCms/fileRenderer/utils.js.map +1 -0
- package/modules/HeadlessCms/index.d.ts +1 -0
- package/modules/HeadlessCms/index.js +14 -0
- package/modules/HeadlessCms/index.js.map +1 -0
- package/modules/SecurityPermissions.d.ts +2 -0
- package/modules/SecurityPermissions.js +15 -0
- package/modules/SecurityPermissions.js.map +1 -0
- package/modules/Settings/assets/icons/folder-open.js +19 -0
- package/modules/Settings/assets/icons/folder-open.js.map +1 -0
- package/{admin → modules/Settings}/graphql.d.ts +7 -0
- package/modules/Settings/graphql.js +36 -0
- package/modules/Settings/graphql.js.map +1 -0
- package/modules/Settings/index.d.ts +2 -0
- package/modules/Settings/index.js +27 -0
- package/modules/Settings/index.js.map +1 -0
- package/modules/Settings/views/FileManagerSettings.d.ts +2 -0
- package/modules/Settings/views/FileManagerSettings.js +134 -0
- package/modules/Settings/views/FileManagerSettings.js.map +1 -0
- package/package.json +46 -37
- package/presentation/FileActions/FileDetails/CopyUrl.d.ts +2 -0
- package/presentation/FileActions/FileDetails/CopyUrl.js +19 -0
- package/presentation/FileActions/FileDetails/CopyUrl.js.map +1 -0
- package/presentation/FileActions/FileDetails/DeleteImage.d.ts +2 -0
- package/presentation/FileActions/FileDetails/DeleteImage.js +24 -0
- package/presentation/FileActions/FileDetails/DeleteImage.js.map +1 -0
- package/presentation/FileActions/FileDetails/Download.d.ts +2 -0
- package/presentation/FileActions/FileDetails/Download.js +19 -0
- package/presentation/FileActions/FileDetails/Download.js.map +1 -0
- package/presentation/FileActions/FileDetails/MoveToFolder.d.ts +2 -0
- package/presentation/FileActions/FileDetails/MoveToFolder.js +16 -0
- package/presentation/FileActions/FileDetails/MoveToFolder.js.map +1 -0
- package/presentation/FileActions/Grid/Delete.d.ts +2 -0
- package/presentation/FileActions/Grid/Delete.js +23 -0
- package/presentation/FileActions/Grid/Delete.js.map +1 -0
- package/presentation/FileActions/Grid/Download.d.ts +2 -0
- package/presentation/FileActions/Grid/Download.js +19 -0
- package/presentation/FileActions/Grid/Download.js.map +1 -0
- package/presentation/FileActions/Grid/MoveToFolder.d.ts +2 -0
- package/presentation/FileActions/Grid/MoveToFolder.js +16 -0
- package/presentation/FileActions/Grid/MoveToFolder.js.map +1 -0
- package/presentation/FileActions/Grid/Settings.d.ts +2 -0
- package/presentation/FileActions/Grid/Settings.js +23 -0
- package/presentation/FileActions/Grid/Settings.js.map +1 -0
- package/presentation/FileActions/index.d.ts +2 -0
- package/presentation/FileActions/index.js +39 -0
- package/presentation/FileActions/index.js.map +1 -0
- package/presentation/FileDetails/FileDetailsPresenter.d.ts +28 -0
- package/presentation/FileDetails/FileDetailsPresenter.js +138 -0
- package/presentation/FileDetails/FileDetailsPresenter.js.map +1 -0
- package/presentation/FileDetails/FileDetailsPresenter.test.d.ts +1 -0
- package/presentation/FileDetails/FileDetailsPresenter.test.js +280 -0
- package/presentation/FileDetails/FileDetailsPresenter.test.js.map +1 -0
- package/presentation/FileDetails/abstractions.d.ts +22 -0
- package/presentation/FileDetails/abstractions.js +5 -0
- package/presentation/FileDetails/abstractions.js.map +1 -0
- package/presentation/FileDetails/components/ActionButton.d.ts +10 -0
- package/presentation/FileDetails/components/ActionButton.js +15 -0
- package/presentation/FileDetails/components/ActionButton.js.map +1 -0
- package/presentation/FileDetails/components/Actions.d.ts +2 -0
- package/presentation/FileDetails/components/Actions.js +13 -0
- package/presentation/FileDetails/components/Actions.js.map +1 -0
- package/presentation/FileDetails/components/Content.d.ts +14 -0
- package/presentation/FileDetails/components/Content.js +20 -0
- package/presentation/FileDetails/components/Content.js.map +1 -0
- package/presentation/FileDetails/components/CreatedOn.d.ts +2 -0
- package/presentation/FileDetails/components/CreatedOn.js +21 -0
- package/presentation/FileDetails/components/CreatedOn.js.map +1 -0
- package/presentation/FileDetails/components/Description.d.ts +2 -0
- package/presentation/FileDetails/components/Description.js +16 -0
- package/presentation/FileDetails/components/Description.js.map +1 -0
- package/presentation/FileDetails/components/FileDetailsDrawer.d.ts +4 -0
- package/presentation/FileDetails/components/FileDetailsDrawer.js +73 -0
- package/presentation/FileDetails/components/FileDetailsDrawer.js.map +1 -0
- package/presentation/FileDetails/components/Preview.d.ts +2 -0
- package/presentation/FileDetails/components/Preview.js +15 -0
- package/presentation/FileDetails/components/Preview.js.map +1 -0
- package/presentation/FileDetails/components/Thumbnail.d.ts +2 -0
- package/presentation/FileDetails/components/Thumbnail.js +12 -0
- package/presentation/FileDetails/components/Thumbnail.js.map +1 -0
- package/presentation/FileDetails/feature.d.ts +3 -0
- package/presentation/FileDetails/feature.js +17 -0
- package/presentation/FileDetails/feature.js.map +1 -0
- package/presentation/FileDetails/index.d.ts +3 -0
- package/presentation/FileDetails/index.js +2 -0
- package/presentation/FileList/FileListDataSource.d.ts +20 -0
- package/presentation/FileList/FileListDataSource.js +122 -0
- package/presentation/FileList/FileListDataSource.js.map +1 -0
- package/presentation/FileList/FileListPresenter.test.d.ts +1 -0
- package/presentation/FileList/FileListPresenter.test.js +424 -0
- package/presentation/FileList/FileListPresenter.test.js.map +1 -0
- package/presentation/FileList/FileManagerPresenter.d.ts +43 -0
- package/presentation/FileList/FileManagerPresenter.js +213 -0
- package/presentation/FileList/FileManagerPresenter.js.map +1 -0
- package/presentation/FileList/FileManagerPresenterProvider.d.ts +9 -0
- package/presentation/FileList/FileManagerPresenterProvider.js +13 -0
- package/presentation/FileList/FileManagerPresenterProvider.js.map +1 -0
- package/presentation/FileList/abstractions.d.ts +76 -0
- package/presentation/FileList/abstractions.js +5 -0
- package/presentation/FileList/abstractions.js.map +1 -0
- package/presentation/FileList/components/BottomInfoBar/BottomInfoBar.d.ts +6 -0
- package/presentation/FileList/components/BottomInfoBar/BottomInfoBar.js +12 -0
- package/presentation/FileList/components/BottomInfoBar/BottomInfoBar.js.map +1 -0
- package/presentation/FileList/components/BottomInfoBar/ListStatus.d.ts +6 -0
- package/presentation/FileList/components/BottomInfoBar/ListStatus.js +20 -0
- package/presentation/FileList/components/BottomInfoBar/ListStatus.js.map +1 -0
- package/presentation/FileList/components/BottomInfoBar/SupportedFileTypes.d.ts +8 -0
- package/presentation/FileList/components/BottomInfoBar/SupportedFileTypes.js +56 -0
- package/presentation/FileList/components/BottomInfoBar/SupportedFileTypes.js.map +1 -0
- package/presentation/FileList/components/BottomInfoBar/index.d.ts +1 -0
- package/presentation/FileList/components/BottomInfoBar/index.js +1 -0
- package/presentation/FileList/components/BulkActions/ActionEdit.types.d.ts +2 -0
- package/presentation/FileList/components/BulkActions/ActionEdit.types.js +0 -0
- package/presentation/FileList/components/BulkActions/ActionEditPresenter.d.ts +35 -0
- package/presentation/FileList/components/BulkActions/ActionEditPresenter.js +55 -0
- package/presentation/FileList/components/BulkActions/ActionEditPresenter.js.map +1 -0
- package/presentation/FileList/components/BulkActions/ActionEditPresenter.test.d.ts +1 -0
- package/presentation/FileList/components/BulkActions/ActionEditPresenter.test.js +170 -0
- package/presentation/FileList/components/BulkActions/ActionEditPresenter.test.js.map +1 -0
- package/presentation/FileList/components/BulkActions/BatchEditorDialog/AddOperation.d.ts +7 -0
- package/presentation/FileList/components/BulkActions/BatchEditorDialog/AddOperation.js +15 -0
- package/presentation/FileList/components/BulkActions/BatchEditorDialog/AddOperation.js.map +1 -0
- package/presentation/FileList/components/BulkActions/BatchEditorDialog/BatchEditor.d.ts +15 -0
- package/presentation/FileList/components/BulkActions/BatchEditorDialog/BatchEditor.js +44 -0
- package/presentation/FileList/components/BulkActions/BatchEditorDialog/BatchEditor.js.map +1 -0
- package/presentation/FileList/components/BulkActions/BatchEditorDialog/BatchEditorDialog.d.ts +15 -0
- package/presentation/FileList/components/BulkActions/BatchEditorDialog/BatchEditorDialog.js +52 -0
- package/presentation/FileList/components/BulkActions/BatchEditorDialog/BatchEditorDialog.js.map +1 -0
- package/presentation/FileList/components/BulkActions/BatchEditorDialog/BatchEditorDialogPresenter.d.ts +61 -0
- package/presentation/FileList/components/BulkActions/BatchEditorDialog/BatchEditorDialogPresenter.js +111 -0
- package/presentation/FileList/components/BulkActions/BatchEditorDialog/BatchEditorDialogPresenter.js.map +1 -0
- package/presentation/FileList/components/BulkActions/BatchEditorDialog/BatchEditorDialogPresenter.test.d.ts +1 -0
- package/presentation/FileList/components/BulkActions/BatchEditorDialog/BatchEditorDialogPresenter.test.js +372 -0
- package/presentation/FileList/components/BulkActions/BatchEditorDialog/BatchEditorDialogPresenter.test.js.map +1 -0
- package/presentation/FileList/components/BulkActions/BatchEditorDialog/FieldRenderer.d.ts +8 -0
- package/presentation/FileList/components/BulkActions/BatchEditorDialog/FieldRenderer.js +31 -0
- package/presentation/FileList/components/BulkActions/BatchEditorDialog/FieldRenderer.js.map +1 -0
- package/presentation/FileList/components/BulkActions/BatchEditorDialog/Operation.d.ts +11 -0
- package/presentation/FileList/components/BulkActions/BatchEditorDialog/Operation.js +33 -0
- package/presentation/FileList/components/BulkActions/BatchEditorDialog/Operation.js.map +1 -0
- package/presentation/FileList/components/BulkActions/BatchEditorDialog/index.d.ts +1 -0
- package/presentation/FileList/components/BulkActions/BatchEditorDialog/index.js +1 -0
- package/presentation/FileList/components/BulkActions/BulkActionBar.d.ts +5 -0
- package/presentation/FileList/components/BulkActions/BulkActionBar.js +42 -0
- package/presentation/FileList/components/BulkActions/BulkActionBar.js.map +1 -0
- package/presentation/FileList/components/BulkActions/BulkActionDelete.d.ts +4 -0
- package/presentation/FileList/components/BulkActions/BulkActionDelete.js +65 -0
- package/presentation/FileList/components/BulkActions/BulkActionDelete.js.map +1 -0
- package/presentation/FileList/components/BulkActions/BulkActionEdit.d.ts +4 -0
- package/presentation/FileList/components/BulkActions/BulkActionEdit.js +105 -0
- package/presentation/FileList/components/BulkActions/BulkActionEdit.js.map +1 -0
- package/presentation/FileList/components/BulkActions/BulkActionMove.d.ts +4 -0
- package/presentation/FileList/components/BulkActions/BulkActionMove.js +87 -0
- package/presentation/FileList/components/BulkActions/BulkActionMove.js.map +1 -0
- package/presentation/FileList/components/BulkActions/GraphQLInputMapper.d.ts +23 -0
- package/presentation/FileList/components/BulkActions/GraphQLInputMapper.js +40 -0
- package/presentation/FileList/components/BulkActions/GraphQLInputMapper.js.map +1 -0
- package/presentation/FileList/components/BulkActions/GraphQLInputMapper.test.d.ts +1 -0
- package/presentation/FileList/components/BulkActions/GraphQLInputMapper.test.js +319 -0
- package/presentation/FileList/components/BulkActions/GraphQLInputMapper.test.js.map +1 -0
- package/presentation/FileList/components/BulkActions/domain/Batch.d.ts +32 -0
- package/presentation/FileList/components/BulkActions/domain/Batch.js +32 -0
- package/presentation/FileList/components/BulkActions/domain/Batch.js.map +1 -0
- package/presentation/FileList/components/BulkActions/domain/BatchMapper.d.ts +4 -0
- package/presentation/FileList/components/BulkActions/domain/BatchMapper.js +14 -0
- package/presentation/FileList/components/BulkActions/domain/BatchMapper.js.map +1 -0
- package/presentation/FileList/components/BulkActions/domain/Field.d.ts +32 -0
- package/presentation/FileList/components/BulkActions/domain/Field.js +49 -0
- package/presentation/FileList/components/BulkActions/domain/Field.js.map +1 -0
- package/presentation/FileList/components/BulkActions/domain/FieldMapper.d.ts +7 -0
- package/presentation/FileList/components/BulkActions/domain/FieldMapper.js +21 -0
- package/presentation/FileList/components/BulkActions/domain/FieldMapper.js.map +1 -0
- package/presentation/FileList/components/BulkActions/domain/index.d.ts +4 -0
- package/presentation/FileList/components/BulkActions/domain/index.js +4 -0
- package/presentation/FileList/components/BulkActions/index.d.ts +5 -0
- package/presentation/FileList/components/BulkActions/index.js +5 -0
- package/presentation/FileList/components/BulkActions/useBulkActionWorker.d.ts +16 -0
- package/presentation/FileList/components/BulkActions/useBulkActionWorker.js +43 -0
- package/presentation/FileList/components/BulkActions/useBulkActionWorker.js.map +1 -0
- package/presentation/FileList/components/Empty/Empty.d.ts +8 -0
- package/presentation/FileList/components/Empty/Empty.js +20 -0
- package/presentation/FileList/components/Empty/Empty.js.map +1 -0
- package/presentation/FileList/components/Empty/index.d.ts +1 -0
- package/presentation/FileList/components/Empty/index.js +1 -0
- package/presentation/FileList/components/FileDropArea/FileDropArea.d.ts +9 -0
- package/presentation/FileList/components/FileDropArea/FileDropArea.js +62 -0
- package/presentation/FileList/components/FileDropArea/FileDropArea.js.map +1 -0
- package/presentation/FileList/components/FileDropArea/index.d.ts +1 -0
- package/presentation/FileList/components/FileDropArea/index.js +1 -0
- package/presentation/FileList/components/FileDropPlaceholder/FileDropPlaceholder.d.ts +2 -0
- package/presentation/FileList/components/FileDropPlaceholder/FileDropPlaceholder.js +11 -0
- package/presentation/FileList/components/FileDropPlaceholder/FileDropPlaceholder.js.map +1 -0
- package/presentation/FileList/components/FileDropPlaceholder/index.d.ts +1 -0
- package/presentation/FileList/components/FileDropPlaceholder/index.js +1 -0
- package/presentation/FileList/components/FilePicker/FilePicker.d.ts +11 -0
- package/presentation/FileList/components/FilePicker/FilePicker.js +28 -0
- package/presentation/FileList/components/FilePicker/FilePicker.js.map +1 -0
- package/presentation/FileList/components/Filters/FilterByType.d.ts +2 -0
- package/presentation/FileList/components/Filters/FilterByType.js +39 -0
- package/presentation/FileList/components/Filters/FilterByType.js.map +1 -0
- package/presentation/FileList/components/Filters/SubFoldersToggle.d.ts +9 -0
- package/presentation/FileList/components/Filters/SubFoldersToggle.js +25 -0
- package/presentation/FileList/components/Filters/SubFoldersToggle.js.map +1 -0
- package/presentation/FileList/components/Filters/TagsFilter.d.ts +9 -0
- package/presentation/FileList/components/Filters/TagsFilter.js +86 -0
- package/presentation/FileList/components/Filters/TagsFilter.js.map +1 -0
- package/presentation/FileList/components/Filters/TypeFilter.d.ts +8 -0
- package/presentation/FileList/components/Filters/TypeFilter.js +46 -0
- package/presentation/FileList/components/Filters/TypeFilter.js.map +1 -0
- package/presentation/FileList/components/Filters/index.d.ts +3 -0
- package/presentation/FileList/components/Filters/index.js +3 -0
- package/presentation/FileList/components/Grid/ActionButton.d.ts +9 -0
- package/presentation/FileList/components/Grid/ActionButton.js +24 -0
- package/presentation/FileList/components/Grid/ActionButton.js.map +1 -0
- package/presentation/FileList/components/Grid/File.d.ts +32 -0
- package/presentation/FileList/components/Grid/File.js +84 -0
- package/presentation/FileList/components/Grid/File.js.map +1 -0
- package/presentation/FileList/components/Grid/FileGrid.d.ts +9 -0
- package/presentation/FileList/components/Grid/FileGrid.js +162 -0
- package/presentation/FileList/components/Grid/FileGrid.js.map +1 -0
- package/presentation/FileList/components/Grid/FileGrid.test.d.ts +1 -0
- package/presentation/FileList/components/Grid/FileGrid.test.js +387 -0
- package/presentation/FileList/components/Grid/FileGrid.test.js.map +1 -0
- package/presentation/FileList/components/Grid/index.d.ts +1 -0
- package/presentation/FileList/components/Grid/index.js +1 -0
- package/presentation/FileList/components/Header/FileManagerHeader.d.ts +7 -0
- package/presentation/FileList/components/Header/FileManagerHeader.js +114 -0
- package/presentation/FileList/components/Header/FileManagerHeader.js.map +1 -0
- package/presentation/FileList/components/LayoutSwitch/LayoutSwitch.d.ts +2 -0
- package/presentation/FileList/components/LayoutSwitch/LayoutSwitch.js +24 -0
- package/presentation/FileList/components/LayoutSwitch/LayoutSwitch.js.map +1 -0
- package/presentation/FileList/components/LayoutSwitch/index.d.ts +1 -0
- package/presentation/FileList/components/LayoutSwitch/index.js +1 -0
- package/presentation/FileList/components/NoPermissions/NoPermissions.d.ts +2 -0
- package/presentation/FileList/components/NoPermissions/NoPermissions.js +27 -0
- package/presentation/FileList/components/NoPermissions/NoPermissions.js.map +1 -0
- package/presentation/FileList/components/NoPermissions/index.d.ts +1 -0
- package/presentation/FileList/components/NoPermissions/index.js +1 -0
- package/presentation/FileList/components/NoResults/NoResults.d.ts +2 -0
- package/presentation/FileList/components/NoResults/NoResults.js +21 -0
- package/presentation/FileList/components/NoResults/NoResults.js.map +1 -0
- package/presentation/FileList/components/NoResults/index.d.ts +1 -0
- package/presentation/FileList/components/NoResults/index.js +1 -0
- package/presentation/FileList/components/Search/SearchBar.d.ts +9 -0
- package/presentation/FileList/components/Search/SearchBar.js +33 -0
- package/presentation/FileList/components/Search/SearchBar.js.map +1 -0
- package/presentation/FileList/components/Search/index.d.ts +1 -0
- package/presentation/FileList/components/Search/index.js +1 -0
- package/presentation/FileList/components/Table/Actions/CopyFile.d.ts +2 -0
- package/presentation/FileList/components/Table/Actions/CopyFile.js +21 -0
- package/presentation/FileList/components/Table/Actions/CopyFile.js.map +1 -0
- package/presentation/FileList/components/Table/Actions/DeleteFile.d.ts +2 -0
- package/presentation/FileList/components/Table/Actions/DeleteFile.js +24 -0
- package/presentation/FileList/components/Table/Actions/DeleteFile.js.map +1 -0
- package/presentation/FileList/components/Table/Actions/EditFile.d.ts +2 -0
- package/presentation/FileList/components/Table/Actions/EditFile.js +19 -0
- package/presentation/FileList/components/Table/Actions/EditFile.js.map +1 -0
- package/presentation/FileList/components/Table/Actions/MoveFile.d.ts +2 -0
- package/presentation/FileList/components/Table/Actions/MoveFile.js +19 -0
- package/presentation/FileList/components/Table/Actions/MoveFile.js.map +1 -0
- package/presentation/FileList/components/Table/Actions/index.d.ts +4 -0
- package/presentation/FileList/components/Table/Actions/index.js +4 -0
- package/presentation/FileList/components/Table/Cells/CellActions.d.ts +2 -0
- package/presentation/FileList/components/Table/Cells/CellActions.js +28 -0
- package/presentation/FileList/components/Table/Cells/CellActions.js.map +1 -0
- package/presentation/FileList/components/Table/Cells/CellAuthor.d.ts +2 -0
- package/presentation/FileList/components/Table/Cells/CellAuthor.js +10 -0
- package/presentation/FileList/components/Table/Cells/CellAuthor.js.map +1 -0
- package/presentation/FileList/components/Table/Cells/CellCreated.d.ts +2 -0
- package/presentation/FileList/components/Table/Cells/CellCreated.js +13 -0
- package/presentation/FileList/components/Table/Cells/CellCreated.js.map +1 -0
- package/presentation/FileList/components/Table/Cells/CellModified.d.ts +2 -0
- package/presentation/FileList/components/Table/Cells/CellModified.js +13 -0
- package/presentation/FileList/components/Table/Cells/CellModified.js.map +1 -0
- package/presentation/FileList/components/Table/Cells/CellName.d.ts +16 -0
- package/presentation/FileList/components/Table/Cells/CellName.js +59 -0
- package/presentation/FileList/components/Table/Cells/CellName.js.map +1 -0
- package/presentation/FileList/components/Table/Cells/CellSize.d.ts +2 -0
- package/presentation/FileList/components/Table/Cells/CellSize.js +14 -0
- package/presentation/FileList/components/Table/Cells/CellSize.js.map +1 -0
- package/presentation/FileList/components/Table/Cells/CellThumbnail.d.ts +2 -0
- package/presentation/FileList/components/Table/Cells/CellThumbnail.js +12 -0
- package/presentation/FileList/components/Table/Cells/CellThumbnail.js.map +1 -0
- package/presentation/FileList/components/Table/Cells/CellType.d.ts +2 -0
- package/presentation/FileList/components/Table/Cells/CellType.js +11 -0
- package/presentation/FileList/components/Table/Cells/CellType.js.map +1 -0
- package/presentation/FileList/components/Table/Cells/index.d.ts +7 -0
- package/presentation/FileList/components/Table/Cells/index.js +7 -0
- package/presentation/FileList/components/Table/FileTable.d.ts +12 -0
- package/presentation/FileList/components/Table/FileTable.js +79 -0
- package/presentation/FileList/components/Table/FileTable.js.map +1 -0
- package/presentation/FileList/components/Table/FileTable.test.d.ts +1 -0
- package/presentation/FileList/components/Table/FileTable.test.js +365 -0
- package/presentation/FileList/components/Table/FileTable.test.js.map +1 -0
- package/presentation/FileList/components/Table/index.d.ts +4 -0
- package/presentation/FileList/components/Table/index.js +3 -0
- package/presentation/FileList/components/TagsList/Empty.d.ts +6 -0
- package/presentation/FileList/components/TagsList/Empty.js +8 -0
- package/presentation/FileList/components/TagsList/Empty.js.map +1 -0
- package/presentation/FileList/components/TagsList/FilterSelect.d.ts +2 -0
- package/presentation/FileList/components/TagsList/FilterSelect.js +38 -0
- package/presentation/FileList/components/TagsList/FilterSelect.js.map +1 -0
- package/presentation/FileList/components/TagsList/FilterStatus.d.ts +7 -0
- package/presentation/FileList/components/TagsList/FilterStatus.js +25 -0
- package/presentation/FileList/components/TagsList/FilterStatus.js.map +1 -0
- package/presentation/FileList/components/TagsList/Tag.d.ts +9 -0
- package/presentation/FileList/components/TagsList/Tag.js +11 -0
- package/presentation/FileList/components/TagsList/Tag.js.map +1 -0
- package/presentation/FileList/components/TagsList/Tags.d.ts +8 -0
- package/presentation/FileList/components/TagsList/Tags.js +30 -0
- package/presentation/FileList/components/TagsList/Tags.js.map +1 -0
- package/presentation/FileList/components/TagsList/TagsList.d.ts +11 -0
- package/presentation/FileList/components/TagsList/TagsList.js +24 -0
- package/presentation/FileList/components/TagsList/TagsList.js.map +1 -0
- package/presentation/FileList/components/TagsList/index.d.ts +1 -0
- package/presentation/FileList/components/TagsList/index.js +1 -0
- package/presentation/FileList/components/Thumbnail/Thumbnail.d.ts +2 -0
- package/presentation/FileList/components/Thumbnail/Thumbnail.js +12 -0
- package/presentation/FileList/components/Thumbnail/Thumbnail.js.map +1 -0
- package/presentation/FileList/components/Thumbnail/index.d.ts +1 -0
- package/presentation/FileList/components/Thumbnail/index.js +1 -0
- package/presentation/FileList/components/Upload/UploadProgress.d.ts +9 -0
- package/presentation/FileList/components/Upload/UploadProgress.js +45 -0
- package/presentation/FileList/components/Upload/UploadProgress.js.map +1 -0
- package/presentation/FileList/components/Upload/index.d.ts +1 -0
- package/presentation/FileList/components/Upload/index.js +1 -0
- package/presentation/FileList/feature.d.ts +3 -0
- package/presentation/FileList/feature.js +17 -0
- package/presentation/FileList/feature.js.map +1 -0
- package/presentation/FileList/index.d.ts +5 -0
- package/presentation/FileList/index.js +3 -0
- package/presentation/FileManager/FileManagerRenderer.d.ts +2 -0
- package/presentation/FileManager/FileManagerRenderer.js +33 -0
- package/presentation/FileManager/FileManagerRenderer.js.map +1 -0
- package/presentation/FileManager/FileManagerView.d.ts +12 -0
- package/presentation/FileManager/FileManagerView.js +246 -0
- package/presentation/FileManager/FileManagerView.js.map +1 -0
- package/presentation/FileManager/OverlayContext.d.ts +14 -0
- package/presentation/FileManager/OverlayContext.js +11 -0
- package/presentation/FileManager/OverlayContext.js.map +1 -0
- package/presentation/FileManager/outputFileSelectionError.d.ts +2 -0
- package/presentation/FileManager/outputFileSelectionError.js +27 -0
- package/presentation/FileManager/outputFileSelectionError.js.map +1 -0
- package/presentation/Settings/SettingsPresenter.d.ts +14 -0
- package/presentation/Settings/SettingsPresenter.js +78 -0
- package/presentation/Settings/SettingsPresenter.js.map +1 -0
- package/presentation/Settings/components/SettingsView.d.ts +4 -0
- package/presentation/Settings/components/SettingsView.js +45 -0
- package/presentation/Settings/components/SettingsView.js.map +1 -0
- package/presentation/config/DefaultFileManagerConfig.d.ts +2 -0
- package/presentation/config/DefaultFileManagerConfig.js +118 -0
- package/presentation/config/DefaultFileManagerConfig.js.map +1 -0
- package/presentation/config/FileManagerViewConfig.d.ts +248 -0
- package/presentation/config/FileManagerViewConfig.js +74 -0
- package/presentation/config/FileManagerViewConfig.js.map +1 -0
- package/presentation/config/configComponents/Browser/BulkAction.d.ts +26 -0
- package/presentation/config/configComponents/Browser/BulkAction.js +57 -0
- package/presentation/config/configComponents/Browser/BulkAction.js.map +1 -0
- package/presentation/config/configComponents/Browser/BulkEditField.d.ts +10 -0
- package/presentation/config/configComponents/Browser/BulkEditField.js +24 -0
- package/presentation/config/configComponents/Browser/BulkEditField.js.map +1 -0
- package/presentation/config/configComponents/Browser/FileAction.d.ts +8 -0
- package/presentation/config/configComponents/Browser/FileAction.js +11 -0
- package/presentation/config/configComponents/Browser/FileAction.js.map +1 -0
- package/presentation/config/configComponents/Browser/Filter.d.ts +39 -0
- package/presentation/config/configComponents/Browser/Filter.js +37 -0
- package/presentation/config/configComponents/Browser/Filter.js.map +1 -0
- package/presentation/config/configComponents/Browser/FilterByTags.d.ts +5 -0
- package/presentation/config/configComponents/Browser/FilterByTags.js +14 -0
- package/presentation/config/configComponents/Browser/FilterByTags.js.map +1 -0
- package/presentation/config/configComponents/Browser/FiltersToWhere.d.ts +7 -0
- package/presentation/config/configComponents/Browser/FiltersToWhere.js +13 -0
- package/presentation/config/configComponents/Browser/FiltersToWhere.js.map +1 -0
- package/presentation/config/configComponents/Browser/FolderAction.d.ts +7 -0
- package/presentation/config/configComponents/Browser/FolderAction.js +10 -0
- package/presentation/config/configComponents/Browser/FolderAction.js.map +1 -0
- package/presentation/config/configComponents/Browser/FolderDropConfirmation.d.ts +5 -0
- package/presentation/config/configComponents/Browser/FolderDropConfirmation.js +7 -0
- package/presentation/config/configComponents/Browser/FolderDropConfirmation.js.map +1 -0
- package/presentation/config/configComponents/Browser/FolderFieldDecorator.d.ts +7 -0
- package/presentation/config/configComponents/Browser/FolderFieldDecorator.js +11 -0
- package/presentation/config/configComponents/Browser/FolderFieldDecorator.js.map +1 -0
- package/presentation/config/configComponents/Browser/Grid/Action.d.ts +31 -0
- package/presentation/config/configComponents/Browser/Grid/Action.js +33 -0
- package/presentation/config/configComponents/Browser/Grid/Action.js.map +1 -0
- package/presentation/config/configComponents/Browser/Grid/Thumbnail.d.ts +28 -0
- package/presentation/config/configComponents/Browser/Grid/Thumbnail.js +28 -0
- package/presentation/config/configComponents/Browser/Grid/Thumbnail.js.map +1 -0
- package/presentation/config/configComponents/Browser/Grid/index.d.ts +6 -0
- package/presentation/config/configComponents/Browser/Grid/index.js +0 -0
- package/presentation/config/configComponents/Browser/Table/Column.d.ts +32 -0
- package/presentation/config/configComponents/Browser/Table/Column.js +13 -0
- package/presentation/config/configComponents/Browser/Table/Column.js.map +1 -0
- package/presentation/config/configComponents/Browser/Table/Thumbnail.d.ts +28 -0
- package/presentation/config/configComponents/Browser/Table/Thumbnail.js +28 -0
- package/presentation/config/configComponents/Browser/Table/Thumbnail.js.map +1 -0
- package/presentation/config/configComponents/Browser/Table/index.d.ts +56 -0
- package/presentation/config/configComponents/Browser/Table/index.js +11 -0
- package/presentation/config/configComponents/Browser/Table/index.js.map +1 -0
- package/presentation/config/configComponents/Browser/index.d.ts +189 -0
- package/presentation/config/configComponents/Browser/index.js +47 -0
- package/presentation/config/configComponents/Browser/index.js.map +1 -0
- package/presentation/config/configComponents/FileDetails/Action.d.ts +31 -0
- package/presentation/config/configComponents/FileDetails/Action.js +30 -0
- package/presentation/config/configComponents/FileDetails/Action.js.map +1 -0
- package/presentation/config/configComponents/FileDetails/Thumbnail.d.ts +28 -0
- package/presentation/config/configComponents/FileDetails/Thumbnail.js +25 -0
- package/presentation/config/configComponents/FileDetails/Thumbnail.js.map +1 -0
- package/presentation/config/configComponents/FileDetails/Width.d.ts +5 -0
- package/presentation/config/configComponents/FileDetails/Width.js +13 -0
- package/presentation/config/configComponents/FileDetails/Width.js.map +1 -0
- package/presentation/config/configComponents/FileDetails/index.d.ts +52 -0
- package/presentation/config/configComponents/FileDetails/index.js +16 -0
- package/presentation/config/configComponents/FileDetails/index.js.map +1 -0
- package/presentation/config/fields/AccessControl.d.ts +7 -0
- package/presentation/config/fields/AccessControl.js +38 -0
- package/presentation/config/fields/AccessControl.js.map +1 -0
- package/presentation/config/fields/Tags.d.ts +2 -0
- package/presentation/config/fields/Tags.js +32 -0
- package/presentation/config/fields/Tags.js.map +1 -0
- package/presentation/config/fields/index.d.ts +2 -0
- package/presentation/config/fields/index.js +2 -0
- package/presentation/config/fields/useAccessControlField.d.ts +6 -0
- package/presentation/config/fields/useAccessControlField.js +21 -0
- package/presentation/config/fields/useAccessControlField.js.map +1 -0
- package/presentation/config/fields/useFileOrUndefined.d.ts +3 -0
- package/presentation/config/fields/useFileOrUndefined.js +13 -0
- package/presentation/config/fields/useFileOrUndefined.js.map +1 -0
- package/presentation/config/getThumbnailRenderer.d.ts +4 -0
- package/presentation/config/getThumbnailRenderer.js +16 -0
- package/presentation/config/getThumbnailRenderer.js.map +1 -0
- package/presentation/config/thumbnailRenderers/FilePreviewDefaultRenderer.d.ts +2 -0
- package/presentation/config/thumbnailRenderers/FilePreviewDefaultRenderer.js +11 -0
- package/presentation/config/thumbnailRenderers/FilePreviewDefaultRenderer.js.map +1 -0
- package/presentation/config/thumbnailRenderers/FilePreviewImageRenderer.d.ts +2 -0
- package/presentation/config/thumbnailRenderers/FilePreviewImageRenderer.js +18 -0
- package/presentation/config/thumbnailRenderers/FilePreviewImageRenderer.js.map +1 -0
- package/presentation/config/thumbnailRenderers/GridItemDefaultRenderer.d.ts +2 -0
- package/presentation/config/thumbnailRenderers/GridItemDefaultRenderer.js +11 -0
- package/presentation/config/thumbnailRenderers/GridItemDefaultRenderer.js.map +1 -0
- package/presentation/config/thumbnailRenderers/GridItemImageRenderer.d.ts +2 -0
- package/presentation/config/thumbnailRenderers/GridItemImageRenderer.js +18 -0
- package/presentation/config/thumbnailRenderers/GridItemImageRenderer.js.map +1 -0
- package/presentation/config/thumbnailRenderers/TableItemDefaultRenderer.d.ts +2 -0
- package/presentation/config/thumbnailRenderers/TableItemDefaultRenderer.js +18 -0
- package/presentation/config/thumbnailRenderers/TableItemDefaultRenderer.js.map +1 -0
- package/presentation/config/thumbnailRenderers/TableItemImageRenderer.d.ts +2 -0
- package/presentation/config/thumbnailRenderers/TableItemImageRenderer.js +18 -0
- package/presentation/config/thumbnailRenderers/TableItemImageRenderer.js.map +1 -0
- package/presentation/contexts/FileProvider.d.ts +12 -0
- package/presentation/contexts/FileProvider.js +13 -0
- package/presentation/contexts/FileProvider.js.map +1 -0
- package/presentation/hooks/useCopyFile.d.ts +11 -0
- package/presentation/hooks/useCopyFile.js +24 -0
- package/presentation/hooks/useCopyFile.js.map +1 -0
- package/presentation/hooks/useDeleteFile.d.ts +9 -0
- package/presentation/hooks/useDeleteFile.js +35 -0
- package/presentation/hooks/useDeleteFile.js.map +1 -0
- package/presentation/hooks/useFile.d.ts +2 -0
- package/presentation/hooks/useFile.js +10 -0
- package/presentation/hooks/useFile.js.map +1 -0
- package/presentation/hooks/useMoveFileToFolder.d.ts +2 -0
- package/presentation/hooks/useMoveFileToFolder.js +36 -0
- package/presentation/hooks/useMoveFileToFolder.js.map +1 -0
- package/routes.d.ts +7 -0
- package/routes.js +17 -0
- package/routes.js.map +1 -0
- package/static/svg/folder-open.ae8d0fac.svg +1 -0
- package/admin/graphql.js +0 -24
- package/admin/graphql.js.map +0 -1
- package/admin/index.d.ts +0 -2
- package/admin/index.js +0 -16
- package/admin/index.js.map +0 -1
- package/admin/plugins/index.d.ts +0 -2
- package/admin/plugins/index.js +0 -18
- package/admin/plugins/index.js.map +0 -1
- package/admin/plugins/installation.d.ts +0 -3
- package/admin/plugins/installation.js +0 -134
- package/admin/plugins/installation.js.map +0 -1
- package/admin/plugins/permissionRenderer/FileManagerPermissions.d.ts +0 -14
- package/admin/plugins/permissionRenderer/FileManagerPermissions.js +0 -249
- package/admin/plugins/permissionRenderer/FileManagerPermissions.js.map +0 -1
- package/admin/plugins/permissionRenderer/index.d.ts +0 -3
- package/admin/plugins/permissionRenderer/index.js +0 -38
- package/admin/plugins/permissionRenderer/index.js.map +0 -1
- package/admin/views/FileManagerSettings.d.ts +0 -3
- package/admin/views/FileManagerSettings.js +0 -162
- package/admin/views/FileManagerSettings.js.map +0 -1
- package/index.js.map +0 -1
- package/types.d.ts +0 -26
- package/types.js +0 -5
- package/types.js.map +0 -1
- /package/{admin → modules/Settings}/assets/icons/folder-open.svg +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"presentation/FileList/components/BulkActions/useBulkActionWorker.js","sources":["../../../../../src/presentation/FileList/components/BulkActions/useBulkActionWorker.ts"],"sourcesContent":["import { useCallback, useEffect, useMemo, useRef } from \"react\";\nimport type { CallbackParams } from \"@webiny/app-admin\";\nimport { useButtons, useDialogWithReport, Worker } from \"@webiny/app-admin\";\nimport { useFileManagerPresenter } from \"../../FileManagerPresenterProvider.js\";\nimport type { FmFile } from \"~/features/shared/types.js\";\nimport { getFilesLabel } from \"./BulkActionBar.js\";\n\n// Hook that bridges the new presenter-based selection with the Worker pattern.\nconst useWorker = () => {\n const { vm, actions } = useFileManagerPresenter();\n const { current: worker } = useRef(new Worker<FmFile>());\n\n // Derive selected file objects from the presenter's selection IDs and rows.\n const selectedFiles = useMemo(() => {\n const { selectedIds } = vm.list.selection;\n return vm.list.rows.filter(row => selectedIds.has(row.id));\n }, [vm.list.selection.selectedIds, vm.list.rows]);\n\n useEffect(() => {\n worker.items = selectedFiles;\n }, [selectedFiles.length]);\n\n // Reset selected items in both the presenter and the Worker.\n const resetItems = useCallback(() => {\n worker.items = [];\n actions.selection.deselectAll();\n }, []);\n\n // Reset results in Worker.\n const resetResults = useCallback(async () => {\n worker.resetResults();\n }, []);\n\n return {\n items: selectedFiles,\n process: (callback: (items: FmFile[]) => void) => worker.process(callback),\n processInSeries: async (\n callback: ({ item, allItems, report }: CallbackParams<FmFile>) => Promise<void>,\n chunkSize?: number\n ) => worker.processInSeries(callback, chunkSize),\n resetItems,\n results: worker.results,\n resetResults\n };\n};\n\n// Compose the BulkAction utilities for the new v2 architecture.\nexport const BulkAction = {\n useButtons,\n useWorker,\n useDialog: useDialogWithReport\n};\n\nexport { getFilesLabel };\n"],"names":["useWorker","vm","actions","useFileManagerPresenter","worker","useRef","Worker","selectedFiles","useMemo","selectedIds","row","useEffect","resetItems","useCallback","resetResults","callback","chunkSize","BulkAction","useButtons","useDialogWithReport"],"mappings":";;;AAQA,MAAMA,YAAY;IACd,MAAM,EAAEC,EAAE,EAAEC,OAAO,EAAE,GAAGC;IACxB,MAAM,EAAE,SAASC,MAAM,EAAE,GAAGC,OAAO,IAAIC;IAGvC,MAAMC,gBAAgBC,QAAQ;QAC1B,MAAM,EAAEC,WAAW,EAAE,GAAGR,GAAG,IAAI,CAAC,SAAS;QACzC,OAAOA,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAACS,CAAAA,MAAOD,YAAY,GAAG,CAACC,IAAI,EAAE;IAC5D,GAAG;QAACT,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW;QAAEA,GAAG,IAAI,CAAC,IAAI;KAAC;IAEhDU,UAAU;QACNP,OAAO,KAAK,GAAGG;IACnB,GAAG;QAACA,cAAc,MAAM;KAAC;IAGzB,MAAMK,aAAaC,YAAY;QAC3BT,OAAO,KAAK,GAAG,EAAE;QACjBF,QAAQ,SAAS,CAAC,WAAW;IACjC,GAAG,EAAE;IAGL,MAAMY,eAAeD,YAAY;QAC7BT,OAAO,YAAY;IACvB,GAAG,EAAE;IAEL,OAAO;QACH,OAAOG;QACP,SAAS,CAACQ,WAAwCX,OAAO,OAAO,CAACW;QACjE,iBAAiB,OACbA,UACAC,YACCZ,OAAO,eAAe,CAACW,UAAUC;QACtCJ;QACA,SAASR,OAAO,OAAO;QACvBU;IACJ;AACJ;AAGO,MAAMG,aAAa;IACtBC,YAAUA;IACVlB,WAAAA;IACA,WAAWmB;AACf"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import type { BrowserFilePickerRenderProps } from "@webiny/app-admin/presentation/browserFilePicker/index.js";
|
|
3
|
+
interface EmptyViewProps {
|
|
4
|
+
browseFiles: BrowserFilePickerRenderProps["browseFiles"];
|
|
5
|
+
isSearchResult?: boolean;
|
|
6
|
+
}
|
|
7
|
+
export declare const Empty: ({ browseFiles, isSearchResult }: EmptyViewProps) => React.JSX.Element;
|
|
8
|
+
export {};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import react from "react";
|
|
2
|
+
import { NoPermissions } from "../NoPermissions/index.js";
|
|
3
|
+
import { useFileManagerPresenter } from "../../FileManagerPresenterProvider.js";
|
|
4
|
+
import { NoResults } from "../NoResults/index.js";
|
|
5
|
+
import { FileDropArea } from "../FileDropArea/index.js";
|
|
6
|
+
const Empty = ({ browseFiles, isSearchResult })=>{
|
|
7
|
+
const { vm } = useFileManagerPresenter();
|
|
8
|
+
const { canRead } = vm.permissions;
|
|
9
|
+
if (!canRead) return /*#__PURE__*/ react.createElement(NoPermissions, null);
|
|
10
|
+
if (isSearchResult) return /*#__PURE__*/ react.createElement(NoResults, null);
|
|
11
|
+
return /*#__PURE__*/ react.createElement(FileDropArea, {
|
|
12
|
+
empty: true,
|
|
13
|
+
onClick: ()=>browseFiles(),
|
|
14
|
+
title: "Drag & Drop files here",
|
|
15
|
+
description: "You can also upload files from your computer by clicking the button below"
|
|
16
|
+
});
|
|
17
|
+
};
|
|
18
|
+
export { Empty };
|
|
19
|
+
|
|
20
|
+
//# sourceMappingURL=Empty.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"presentation/FileList/components/Empty/Empty.js","sources":["../../../../../src/presentation/FileList/components/Empty/Empty.tsx"],"sourcesContent":["import React from \"react\";\nimport type { BrowserFilePickerRenderProps } from \"@webiny/app-admin/presentation/browserFilePicker/index.js\";\n\nimport { NoPermissions } from \"~/presentation/FileList/components/NoPermissions/index.js\";\nimport { useFileManagerPresenter } from \"../../FileManagerPresenterProvider.js\";\nimport { NoResults } from \"~/presentation/FileList/components/NoResults/index.js\";\nimport { FileDropArea } from \"~/presentation/FileList/components/FileDropArea/index.js\";\n\ninterface EmptyViewProps {\n browseFiles: BrowserFilePickerRenderProps[\"browseFiles\"];\n isSearchResult?: boolean;\n}\n\nexport const Empty = ({ browseFiles, isSearchResult }: EmptyViewProps) => {\n const { vm } = useFileManagerPresenter();\n const { canRead } = vm.permissions;\n\n if (!canRead) {\n return <NoPermissions />;\n }\n\n if (isSearchResult) {\n return <NoResults />;\n }\n\n return (\n <FileDropArea\n empty\n onClick={() => browseFiles()}\n title={\"Drag & Drop files here\"}\n description={\n \"You can also upload files from your computer by clicking the button below\"\n }\n />\n );\n};\n"],"names":["Empty","browseFiles","isSearchResult","vm","useFileManagerPresenter","canRead","NoPermissions","NoResults","FileDropArea"],"mappings":";;;;;AAaO,MAAMA,QAAQ,CAAC,EAAEC,WAAW,EAAEC,cAAc,EAAkB;IACjE,MAAM,EAAEC,EAAE,EAAE,GAAGC;IACf,MAAM,EAAEC,OAAO,EAAE,GAAGF,GAAG,WAAW;IAElC,IAAI,CAACE,SACD,OAAO,WAAP,GAAO,oBAACC,eAAaA;IAGzB,IAAIJ,gBACA,OAAO,WAAP,GAAO,oBAACK,WAASA;IAGrB,OAAO,WAAP,GACI,oBAACC,cAAYA;QACT;QACA,SAAS,IAAMP;QACf,OAAO;QACP,aACI;;AAIhB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./Empty.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./Empty.js";
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
export interface FileDropAreaProps {
|
|
3
|
+
empty?: boolean;
|
|
4
|
+
onClick?: (event?: React.MouseEvent<HTMLElement>) => void;
|
|
5
|
+
title?: string;
|
|
6
|
+
description?: string;
|
|
7
|
+
icon?: React.ReactElement;
|
|
8
|
+
}
|
|
9
|
+
export declare const FileDropArea: ({ title, description, empty, onClick }: FileDropAreaProps) => React.JSX.Element;
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import react from "react";
|
|
2
|
+
import { Button, Heading, Text, cn } from "@webiny/admin-ui";
|
|
3
|
+
import { ReactComponent } from "@webiny/icons/file_upload.svg";
|
|
4
|
+
import { ReactComponent as cloud_upload_svg_ReactComponent } from "@webiny/icons/cloud_upload.svg";
|
|
5
|
+
const DropAreaContainer = ({ empty, children })=>/*#__PURE__*/ react.createElement("div", {
|
|
6
|
+
className: cn([
|
|
7
|
+
"w-full h-full p-lg flex items-center justify-center",
|
|
8
|
+
empty ? "bg-neutral-base" : "pt-xxl bg-neutral-xstrong/20"
|
|
9
|
+
])
|
|
10
|
+
}, children);
|
|
11
|
+
const DropAreaBox = ({ children, empty })=>/*#__PURE__*/ react.createElement("div", {
|
|
12
|
+
style: {
|
|
13
|
+
width: "650px",
|
|
14
|
+
height: "400px",
|
|
15
|
+
...empty ? {
|
|
16
|
+
backgroundImage: "url(\"data:image/svg+xml,%3csvg width='100%25' height='100%25' xmlns='http://www.w3.org/2000/svg'%3e%3crect width='100%25' height='100%25' fill='none' rx='24' ry='24' stroke='%23E7E7E7FF' stroke-width='4' stroke-dasharray='12' stroke-dashoffset='35' stroke-linecap='square'/%3e%3c/svg%3e\")"
|
|
17
|
+
} : {}
|
|
18
|
+
},
|
|
19
|
+
className: cn([
|
|
20
|
+
"flex flex-col items-center justify-center gap-lg",
|
|
21
|
+
"p-lg rounded-3xl",
|
|
22
|
+
"bg-neutral-base",
|
|
23
|
+
!empty && "shadow-md"
|
|
24
|
+
])
|
|
25
|
+
}, children);
|
|
26
|
+
const DropAreaContent = ({ title, description })=>/*#__PURE__*/ react.createElement("div", {
|
|
27
|
+
className: "flex flex-col items-center justify-center gap-sm"
|
|
28
|
+
}, /*#__PURE__*/ react.createElement("div", {
|
|
29
|
+
className: "fill-neutral-strong"
|
|
30
|
+
}, /*#__PURE__*/ react.createElement(cloud_upload_svg_ReactComponent, {
|
|
31
|
+
width: 75,
|
|
32
|
+
height: 75
|
|
33
|
+
})), /*#__PURE__*/ react.createElement("div", {
|
|
34
|
+
className: "text-center"
|
|
35
|
+
}, title && /*#__PURE__*/ react.createElement(Heading, {
|
|
36
|
+
level: 4,
|
|
37
|
+
className: "text-neutral-strong"
|
|
38
|
+
}, title), description && /*#__PURE__*/ react.createElement(Text, {
|
|
39
|
+
as: "div",
|
|
40
|
+
style: {
|
|
41
|
+
width: "300px"
|
|
42
|
+
},
|
|
43
|
+
className: "text-neutral-strong"
|
|
44
|
+
}, description)));
|
|
45
|
+
const DropAreaButton = ({ onClick })=>/*#__PURE__*/ react.createElement("div", null, /*#__PURE__*/ react.createElement(Button, {
|
|
46
|
+
onClick: onClick,
|
|
47
|
+
text: "Upload files",
|
|
48
|
+
icon: /*#__PURE__*/ react.createElement(ReactComponent, null)
|
|
49
|
+
}));
|
|
50
|
+
const FileDropArea = ({ title, description, empty, onClick })=>/*#__PURE__*/ react.createElement(DropAreaContainer, {
|
|
51
|
+
empty: empty
|
|
52
|
+
}, /*#__PURE__*/ react.createElement(DropAreaBox, {
|
|
53
|
+
empty: empty
|
|
54
|
+
}, /*#__PURE__*/ react.createElement(DropAreaContent, {
|
|
55
|
+
title: title,
|
|
56
|
+
description: description
|
|
57
|
+
}), empty && /*#__PURE__*/ react.createElement(DropAreaButton, {
|
|
58
|
+
onClick: onClick
|
|
59
|
+
})));
|
|
60
|
+
export { FileDropArea };
|
|
61
|
+
|
|
62
|
+
//# sourceMappingURL=FileDropArea.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"presentation/FileList/components/FileDropArea/FileDropArea.js","sources":["../../../../../src/presentation/FileList/components/FileDropArea/FileDropArea.tsx"],"sourcesContent":["import React from \"react\";\nimport { Button, cn, Heading, Text } from \"@webiny/admin-ui\";\nimport { ReactComponent as UploadFileIcon } from \"@webiny/icons/file_upload.svg\";\nimport { ReactComponent as UploadIcon } from \"@webiny/icons/cloud_upload.svg\";\n\ninterface DropAreaContainerProps {\n empty?: boolean;\n children: React.ReactNode;\n}\n\nconst DropAreaContainer = ({ empty, children }: DropAreaContainerProps) => (\n <div\n className={cn([\n \"w-full h-full p-lg flex items-center justify-center\",\n empty ? \"bg-neutral-base\" : \"pt-xxl bg-neutral-xstrong/20\"\n ])}\n >\n {children}\n </div>\n);\n\ninterface DropAreaBoxProps {\n empty?: boolean;\n children: React.ReactNode;\n}\n\nconst DropAreaBox = ({ children, empty }: DropAreaBoxProps) => (\n <div\n style={{\n width: \"650px\",\n height: \"400px\",\n ...(empty\n ? {\n backgroundImage: `url(\"data:image/svg+xml,%3csvg width='100%25' height='100%25' xmlns='http://www.w3.org/2000/svg'%3e%3crect width='100%25' height='100%25' fill='none' rx='24' ry='24' stroke='%23E7E7E7FF' stroke-width='4' stroke-dasharray='12' stroke-dashoffset='35' stroke-linecap='square'/%3e%3c/svg%3e\")`\n }\n : {})\n }}\n className={cn([\n \"flex flex-col items-center justify-center gap-lg\",\n \"p-lg rounded-3xl\",\n \"bg-neutral-base\",\n !empty && \"shadow-md\"\n ])}\n >\n {children}\n </div>\n);\n\ninterface DropAreaContentProps {\n empty?: boolean;\n title?: string;\n description?: string;\n}\n\nconst DropAreaContent = ({ title, description }: DropAreaContentProps) => (\n <div className={\"flex flex-col items-center justify-center gap-sm\"}>\n <div className={\"fill-neutral-strong\"}>\n <UploadIcon width={75} height={75} />\n </div>\n <div className={\"text-center\"}>\n {title && (\n <Heading level={4} className={\"text-neutral-strong\"}>\n {title}\n </Heading>\n )}\n {description && (\n <Text as={\"div\"} style={{ width: \"300px\" }} className={\"text-neutral-strong\"}>\n {description}\n </Text>\n )}\n </div>\n </div>\n);\n\ninterface DropAreaButtonProps {\n onClick?: (event?: React.MouseEvent<HTMLElement>) => void;\n}\n\nconst DropAreaButton = ({ onClick }: DropAreaButtonProps) => (\n <div>\n <Button onClick={onClick} text={\"Upload files\"} icon={<UploadFileIcon />} />\n </div>\n);\n\nexport interface FileDropAreaProps {\n empty?: boolean;\n onClick?: (event?: React.MouseEvent<HTMLElement>) => void;\n title?: string;\n description?: string;\n icon?: React.ReactElement;\n}\n\nexport const FileDropArea = ({ title, description, empty, onClick }: FileDropAreaProps) => (\n <DropAreaContainer empty={empty}>\n <DropAreaBox empty={empty}>\n <DropAreaContent title={title} description={description} />\n {empty && <DropAreaButton onClick={onClick} />}\n </DropAreaBox>\n </DropAreaContainer>\n);\n"],"names":["DropAreaContainer","empty","children","cn","DropAreaBox","DropAreaContent","title","description","UploadIcon","Heading","Text","DropAreaButton","onClick","Button","UploadFileIcon","FileDropArea"],"mappings":";;;;AAUA,MAAMA,oBAAoB,CAAC,EAAEC,KAAK,EAAEC,QAAQ,EAA0B,iBAClE,oBAAC;QACG,WAAWC,GAAG;YACV;YACAF,QAAQ,oBAAoB;SAC/B;OAEAC;AAST,MAAME,cAAc,CAAC,EAAEF,QAAQ,EAAED,KAAK,EAAoB,iBACtD,oBAAC;QACG,OAAO;YACH,OAAO;YACP,QAAQ;YACR,GAAIA,QACE;gBACI,iBAAiB;YACrB,IACA,CAAC,CAAC;QACZ;QACA,WAAWE,GAAG;YACV;YACA;YACA;YACA,CAACF,SAAS;SACb;OAEAC;AAUT,MAAMG,kBAAkB,CAAC,EAAEC,KAAK,EAAEC,WAAW,EAAwB,iBACjE,oBAAC;QAAI,WAAW;qBACZ,oBAAC;QAAI,WAAW;qBACZ,oBAACC,iCAAUA;QAAC,OAAO;QAAI,QAAQ;uBAEnC,oBAAC;QAAI,WAAW;OACXF,SAAS,WAATA,GACG,oBAACG,SAAOA;QAAC,OAAO;QAAG,WAAW;OACzBH,QAGRC,eAAe,WAAfA,GACG,oBAACG,MAAIA;QAAC,IAAI;QAAO,OAAO;YAAE,OAAO;QAAQ;QAAG,WAAW;OAClDH;AAWrB,MAAMI,iBAAiB,CAAC,EAAEC,OAAO,EAAuB,iBACpD,oBAAC,2BACG,oBAACC,QAAMA;QAAC,SAASD;QAAS,MAAM;QAAgB,oBAAM,oBAACE,gBAAcA;;AAYtE,MAAMC,eAAe,CAAC,EAAET,KAAK,EAAEC,WAAW,EAAEN,KAAK,EAAEW,OAAO,EAAqB,iBAClF,oBAACZ,mBAAiBA;QAAC,OAAOC;qBACtB,oBAACG,aAAWA;QAAC,OAAOH;qBAChB,oBAACI,iBAAeA;QAAC,OAAOC;QAAO,aAAaC;QAC3CN,SAAS,WAATA,GAAS,oBAACU,gBAAcA;QAAC,SAASC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./FileDropArea.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./FileDropArea.js";
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import react from "react";
|
|
2
|
+
import { FileDropArea } from "../FileDropArea/index.js";
|
|
3
|
+
const FileDropPlaceholder = ()=>/*#__PURE__*/ react.createElement("div", {
|
|
4
|
+
className: "absolute inset-0 z-50 animate-in fade-in duration-300"
|
|
5
|
+
}, /*#__PURE__*/ react.createElement(FileDropArea, {
|
|
6
|
+
title: "Drop files here",
|
|
7
|
+
description: "Upload files from your computer by dropping them here"
|
|
8
|
+
}));
|
|
9
|
+
export { FileDropPlaceholder };
|
|
10
|
+
|
|
11
|
+
//# sourceMappingURL=FileDropPlaceholder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"presentation/FileList/components/FileDropPlaceholder/FileDropPlaceholder.js","sources":["../../../../../src/presentation/FileList/components/FileDropPlaceholder/FileDropPlaceholder.tsx"],"sourcesContent":["import React from \"react\";\nimport { FileDropArea } from \"../FileDropArea/index.js\";\n\nexport const FileDropPlaceholder = () => {\n return (\n <div className={\"absolute inset-0 z-50 animate-in fade-in duration-300\"}>\n <FileDropArea\n title={\"Drop files here\"}\n description={\"Upload files from your computer by dropping them here\"}\n />\n </div>\n );\n};\n"],"names":["FileDropPlaceholder","FileDropArea"],"mappings":";;AAGO,MAAMA,sBAAsB,IACxB,WAAP,GACI,oBAAC;QAAI,WAAW;qBACZ,oBAACC,cAAYA;QACT,OAAO;QACP,aAAa"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./FileDropPlaceholder.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./FileDropPlaceholder.js";
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import type { FmFile } from "../../../../features/shared/types.js";
|
|
3
|
+
export interface FilePickerProps {
|
|
4
|
+
onChange: (files: FmFile[]) => void;
|
|
5
|
+
onClose: () => void;
|
|
6
|
+
multiple?: boolean;
|
|
7
|
+
accept?: string[];
|
|
8
|
+
scope?: string;
|
|
9
|
+
children: React.ReactNode;
|
|
10
|
+
}
|
|
11
|
+
export declare const FilePicker: ({ onChange, onClose, multiple, accept, scope, children }: FilePickerProps) => React.JSX.Element;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import react, { useCallback } from "react";
|
|
2
|
+
import { OverlayLayout, useHotkeys } from "@webiny/app-admin";
|
|
3
|
+
import { FileManagerView } from "../../../FileManager/FileManagerView.js";
|
|
4
|
+
const FilePicker = ({ onChange, onClose, multiple, accept, scope, children })=>{
|
|
5
|
+
const handleClose = useCallback(()=>{
|
|
6
|
+
onClose();
|
|
7
|
+
}, [
|
|
8
|
+
onClose
|
|
9
|
+
]);
|
|
10
|
+
useHotkeys({
|
|
11
|
+
zIndex: 20,
|
|
12
|
+
keys: {
|
|
13
|
+
esc: handleClose
|
|
14
|
+
}
|
|
15
|
+
});
|
|
16
|
+
return /*#__PURE__*/ react.createElement(OverlayLayout, {
|
|
17
|
+
onExited: handleClose
|
|
18
|
+
}, /*#__PURE__*/ react.createElement(FileManagerView, {
|
|
19
|
+
onChange: onChange,
|
|
20
|
+
onClose: handleClose,
|
|
21
|
+
multiple: multiple,
|
|
22
|
+
accept: accept,
|
|
23
|
+
scope: scope
|
|
24
|
+
}, children));
|
|
25
|
+
};
|
|
26
|
+
export { FilePicker };
|
|
27
|
+
|
|
28
|
+
//# sourceMappingURL=FilePicker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"presentation/FileList/components/FilePicker/FilePicker.js","sources":["../../../../../src/presentation/FileList/components/FilePicker/FilePicker.tsx"],"sourcesContent":["import React from \"react\";\nimport { useCallback } from \"react\";\nimport { OverlayLayout } from \"@webiny/app-admin\";\nimport { useHotkeys } from \"@webiny/app-admin\";\nimport { FileManagerView } from \"~/presentation/FileManager/FileManagerView.js\";\nimport type { FmFile } from \"~/features/shared/types.js\";\n\nexport interface FilePickerProps {\n onChange: (files: FmFile[]) => void;\n onClose: () => void;\n multiple?: boolean;\n accept?: string[];\n scope?: string;\n children: React.ReactNode;\n}\n\n// Thin overlay wrapper that renders the FileManagerView with overlay config.\nexport const FilePicker = ({\n onChange,\n onClose,\n multiple,\n accept,\n scope,\n children\n}: FilePickerProps) => {\n const handleClose = useCallback(() => {\n onClose();\n }, [onClose]);\n\n useHotkeys({\n zIndex: 20,\n keys: {\n esc: handleClose\n }\n });\n\n return (\n <OverlayLayout onExited={handleClose}>\n <FileManagerView\n onChange={onChange}\n onClose={handleClose}\n multiple={multiple}\n accept={accept}\n scope={scope}\n >\n {children}\n </FileManagerView>\n </OverlayLayout>\n );\n};\n"],"names":["FilePicker","onChange","onClose","multiple","accept","scope","children","handleClose","useCallback","useHotkeys","OverlayLayout","FileManagerView"],"mappings":";;;AAiBO,MAAMA,aAAa,CAAC,EACvBC,QAAQ,EACRC,OAAO,EACPC,QAAQ,EACRC,MAAM,EACNC,KAAK,EACLC,QAAQ,EACM;IACd,MAAMC,cAAcC,YAAY;QAC5BN;IACJ,GAAG;QAACA;KAAQ;IAEZO,WAAW;QACP,QAAQ;QACR,MAAM;YACF,KAAKF;QACT;IACJ;IAEA,OAAO,WAAP,GACI,oBAACG,eAAaA;QAAC,UAAUH;qBACrB,oBAACI,iBAAeA;QACZ,UAAUV;QACV,SAASM;QACT,UAAUJ;QACV,QAAQC;QACR,OAAOC;OAENC;AAIjB"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import react from "react";
|
|
2
|
+
import { Select } from "@webiny/admin-ui";
|
|
3
|
+
import { useBind } from "@webiny/form";
|
|
4
|
+
const FilterByType = ()=>{
|
|
5
|
+
const bind = useBind({
|
|
6
|
+
name: "type_startsWith",
|
|
7
|
+
defaultValue: "",
|
|
8
|
+
beforeChange (value, cb) {
|
|
9
|
+
cb("all" === value ? void 0 : value);
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
const options = [
|
|
13
|
+
{
|
|
14
|
+
label: "All",
|
|
15
|
+
value: "all"
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
label: "Images",
|
|
19
|
+
value: "image/"
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
label: "Videos",
|
|
23
|
+
value: "video/"
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
label: "Documents",
|
|
27
|
+
value: "application/"
|
|
28
|
+
}
|
|
29
|
+
];
|
|
30
|
+
return /*#__PURE__*/ react.createElement(Select, {
|
|
31
|
+
...bind,
|
|
32
|
+
placeholder: "Filter by type",
|
|
33
|
+
options: options,
|
|
34
|
+
size: "md"
|
|
35
|
+
});
|
|
36
|
+
};
|
|
37
|
+
export { FilterByType };
|
|
38
|
+
|
|
39
|
+
//# sourceMappingURL=FilterByType.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"presentation/FileList/components/Filters/FilterByType.js","sources":["../../../../../src/presentation/FileList/components/Filters/FilterByType.tsx"],"sourcesContent":["import React from \"react\";\nimport { Select } from \"@webiny/admin-ui\";\nimport { useBind } from \"@webiny/form\";\n\nexport const FilterByType = () => {\n const bind = useBind({\n name: \"type_startsWith\",\n defaultValue: \"\",\n beforeChange(value, cb) {\n cb(value === \"all\" ? undefined : value);\n }\n });\n\n const options = [\n { label: \"All\", value: \"all\" },\n { label: \"Images\", value: \"image/\" },\n { label: \"Videos\", value: \"video/\" },\n { label: \"Documents\", value: \"application/\" }\n ];\n\n return <Select {...bind} placeholder={\"Filter by type\"} options={options} size={\"md\"} />;\n};\n"],"names":["FilterByType","bind","useBind","value","cb","undefined","options","Select"],"mappings":";;;AAIO,MAAMA,eAAe;IACxB,MAAMC,OAAOC,QAAQ;QACjB,MAAM;QACN,cAAc;QACd,cAAaC,KAAK,EAAEC,EAAE;YAClBA,GAAGD,AAAU,UAAVA,QAAkBE,SAAYF;QACrC;IACJ;IAEA,MAAMG,UAAU;QACZ;YAAE,OAAO;YAAO,OAAO;QAAM;QAC7B;YAAE,OAAO;YAAU,OAAO;QAAS;QACnC;YAAE,OAAO;YAAU,OAAO;QAAS;QACnC;YAAE,OAAO;YAAa,OAAO;QAAe;KAC/C;IAED,OAAO,WAAP,GAAO,oBAACC,QAAMA;QAAE,GAAGN,IAAI;QAAE,aAAa;QAAkB,SAASK;QAAS,MAAM;;AACpF"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
/**
|
|
3
|
+
* Toggle component for including files from descendant folders in the list.
|
|
4
|
+
* Sets the "includeSubFolders" filter which the FileListDataSource uses
|
|
5
|
+
* to expand the folder scope via GetDescendantFoldersUseCase.
|
|
6
|
+
*/
|
|
7
|
+
export declare const SubFoldersToggle: (() => React.JSX.Element) & {
|
|
8
|
+
displayName: string;
|
|
9
|
+
};
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import react, { useCallback } from "react";
|
|
2
|
+
import { observer } from "mobx-react-lite";
|
|
3
|
+
import { Switch } from "@webiny/admin-ui";
|
|
4
|
+
import { i18n } from "@webiny/app/i18n/index.js";
|
|
5
|
+
import { useFileManagerPresenter } from "../../FileManagerPresenterProvider.js";
|
|
6
|
+
const t = i18n.ns("app-file-manager/presentation/sub-folders-toggle");
|
|
7
|
+
const SubFoldersToggle_SubFoldersToggle = observer(function() {
|
|
8
|
+
const { vm, actions } = useFileManagerPresenter();
|
|
9
|
+
const checked = true === vm.list.filters["includeSubFolders"];
|
|
10
|
+
const handleChange = useCallback((value)=>{
|
|
11
|
+
if (value) actions.filter.set("includeSubFolders", true);
|
|
12
|
+
else actions.filter.clear("includeSubFolders");
|
|
13
|
+
}, [
|
|
14
|
+
actions.filter
|
|
15
|
+
]);
|
|
16
|
+
return /*#__PURE__*/ react.createElement(Switch, {
|
|
17
|
+
label: t`Display sub-folders`,
|
|
18
|
+
checked: checked,
|
|
19
|
+
onChange: handleChange,
|
|
20
|
+
"data-testid": "fm-sub-folders-toggle"
|
|
21
|
+
});
|
|
22
|
+
});
|
|
23
|
+
export { SubFoldersToggle_SubFoldersToggle as SubFoldersToggle };
|
|
24
|
+
|
|
25
|
+
//# sourceMappingURL=SubFoldersToggle.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"presentation/FileList/components/Filters/SubFoldersToggle.js","sources":["../../../../../src/presentation/FileList/components/Filters/SubFoldersToggle.tsx"],"sourcesContent":["import React, { useCallback } from \"react\";\nimport { observer } from \"mobx-react-lite\";\nimport { Switch } from \"@webiny/admin-ui\";\nimport { i18n } from \"@webiny/app/i18n/index.js\";\nimport { useFileManagerPresenter } from \"../../FileManagerPresenterProvider.js\";\n\nconst t = i18n.ns(\"app-file-manager/presentation/sub-folders-toggle\");\n\n/**\n * Toggle component for including files from descendant folders in the list.\n * Sets the \"includeSubFolders\" filter which the FileListDataSource uses\n * to expand the folder scope via GetDescendantFoldersUseCase.\n */\nexport const SubFoldersToggle = observer(function SubFoldersToggle() {\n const { vm, actions } = useFileManagerPresenter();\n\n const checked = vm.list.filters[\"includeSubFolders\"] === true;\n\n const handleChange = useCallback(\n (value: boolean) => {\n if (value) {\n actions.filter.set(\"includeSubFolders\", true);\n } else {\n actions.filter.clear(\"includeSubFolders\");\n }\n },\n [actions.filter]\n );\n\n return (\n <Switch\n label={t`Display sub-folders`}\n checked={checked}\n onChange={handleChange}\n data-testid={\"fm-sub-folders-toggle\"}\n />\n );\n});\n"],"names":["t","i18n","SubFoldersToggle","observer","vm","actions","useFileManagerPresenter","checked","handleChange","useCallback","value","Switch"],"mappings":";;;;;AAMA,MAAMA,IAAIC,KAAK,EAAE,CAAC;AAOX,MAAMC,oCAAmBC,SAAS;IACrC,MAAM,EAAEC,EAAE,EAAEC,OAAO,EAAE,GAAGC;IAExB,MAAMC,UAAUH,AAAyC,SAAzCA,GAAG,IAAI,CAAC,OAAO,CAAC,oBAAoB;IAEpD,MAAMI,eAAeC,YACjB,CAACC;QACG,IAAIA,OACAL,QAAQ,MAAM,CAAC,GAAG,CAAC,qBAAqB;aAExCA,QAAQ,MAAM,CAAC,KAAK,CAAC;IAE7B,GACA;QAACA,QAAQ,MAAM;KAAC;IAGpB,OAAO,WAAP,GACI,oBAACM,QAAMA;QACH,OAAOX,CAAC,CAAC,mBAAmB,CAAC;QAC7B,SAASO;QACT,UAAUC;QACV,eAAa;;AAGzB"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
/**
|
|
3
|
+
* Tags filter component wired to the FileListPresenter.
|
|
4
|
+
* Reads available tags from vm.tags, supports AND/OR filter modes,
|
|
5
|
+
* and dispatches changes via presenter.actions.filter.set("tags", ...).
|
|
6
|
+
*/
|
|
7
|
+
export declare const TagsFilter: (() => React.JSX.Element) & {
|
|
8
|
+
displayName: string;
|
|
9
|
+
};
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import react, { useCallback, useState } from "react";
|
|
2
|
+
import { observer } from "mobx-react-lite";
|
|
3
|
+
import { Select, Tag, Text } from "@webiny/admin-ui";
|
|
4
|
+
import { i18n } from "@webiny/app/i18n/index.js";
|
|
5
|
+
import { useFileManagerPresenter } from "../../FileManagerPresenterProvider.js";
|
|
6
|
+
const TagsFilter_t = i18n.ns("app-file-manager/presentation/tags-filter");
|
|
7
|
+
const FILTER_MODE_OPTIONS = [
|
|
8
|
+
{
|
|
9
|
+
value: "OR",
|
|
10
|
+
label: "match any"
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
value: "AND",
|
|
14
|
+
label: "match all"
|
|
15
|
+
}
|
|
16
|
+
];
|
|
17
|
+
const TagsFilter_TagsFilter = observer(function() {
|
|
18
|
+
const { vm, actions } = useFileManagerPresenter();
|
|
19
|
+
const [filterMode, setFilterMode] = useState("OR");
|
|
20
|
+
const activeTags = vm.list.filters["tags"] ?? [];
|
|
21
|
+
const toggleTag = useCallback((tag)=>{
|
|
22
|
+
const updated = activeTags.includes(tag) ? activeTags.filter((t)=>t !== tag) : [
|
|
23
|
+
...activeTags,
|
|
24
|
+
tag
|
|
25
|
+
];
|
|
26
|
+
if (updated.length > 0) {
|
|
27
|
+
actions.filter.set("tags", updated);
|
|
28
|
+
actions.filter.set("tags_rule", filterMode);
|
|
29
|
+
} else {
|
|
30
|
+
actions.filter.clear("tags");
|
|
31
|
+
actions.filter.clear("tags_rule");
|
|
32
|
+
}
|
|
33
|
+
}, [
|
|
34
|
+
activeTags,
|
|
35
|
+
actions.filter,
|
|
36
|
+
filterMode
|
|
37
|
+
]);
|
|
38
|
+
const handleModeChange = useCallback((mode)=>{
|
|
39
|
+
const typedMode = mode;
|
|
40
|
+
setFilterMode(typedMode);
|
|
41
|
+
if (activeTags.length > 0) actions.filter.set("tags_rule", typedMode);
|
|
42
|
+
}, [
|
|
43
|
+
activeTags,
|
|
44
|
+
actions.filter
|
|
45
|
+
]);
|
|
46
|
+
if (0 === vm.tags.length) return /*#__PURE__*/ react.createElement("div", {
|
|
47
|
+
className: "flex flex-col gap-sm"
|
|
48
|
+
}, /*#__PURE__*/ react.createElement(Text, {
|
|
49
|
+
size: "sm",
|
|
50
|
+
className: "text-neutral-dimmed"
|
|
51
|
+
}, TagsFilter_t`No tags found.`));
|
|
52
|
+
return /*#__PURE__*/ react.createElement("div", {
|
|
53
|
+
className: "flex flex-col gap-sm"
|
|
54
|
+
}, /*#__PURE__*/ react.createElement(Text, {
|
|
55
|
+
className: "font-semibold"
|
|
56
|
+
}, TagsFilter_t`Filter by tag`), vm.tags.length > 1 && /*#__PURE__*/ react.createElement(Select, {
|
|
57
|
+
disabled: activeTags.length < 2,
|
|
58
|
+
size: "md",
|
|
59
|
+
variant: "secondary",
|
|
60
|
+
value: filterMode,
|
|
61
|
+
onChange: handleModeChange,
|
|
62
|
+
options: FILTER_MODE_OPTIONS,
|
|
63
|
+
displayResetAction: false,
|
|
64
|
+
"data-testid": "fm-tags-filter-mode"
|
|
65
|
+
}), activeTags.length > 0 && /*#__PURE__*/ react.createElement("div", {
|
|
66
|
+
className: "flex flex-wrap gap-xs",
|
|
67
|
+
"data-testid": "fm-tags-filter-active"
|
|
68
|
+
}, activeTags.map((tag)=>/*#__PURE__*/ react.createElement(Tag, {
|
|
69
|
+
key: tag,
|
|
70
|
+
variant: "accent",
|
|
71
|
+
content: tag,
|
|
72
|
+
onDismiss: ()=>toggleTag(tag)
|
|
73
|
+
}))), /*#__PURE__*/ react.createElement("div", {
|
|
74
|
+
className: "flex flex-col gap-sm",
|
|
75
|
+
"data-testid": "fm-tags-filter-list"
|
|
76
|
+
}, vm.tags.map((tagItem)=>/*#__PURE__*/ react.createElement(Tag, {
|
|
77
|
+
key: tagItem.tag,
|
|
78
|
+
variant: activeTags.includes(tagItem.tag) ? "accent" : "neutral-muted",
|
|
79
|
+
content: tagItem.tag,
|
|
80
|
+
onClick: ()=>toggleTag(tagItem.tag),
|
|
81
|
+
onDismiss: activeTags.includes(tagItem.tag) ? ()=>toggleTag(tagItem.tag) : void 0
|
|
82
|
+
}))));
|
|
83
|
+
});
|
|
84
|
+
export { TagsFilter_TagsFilter as TagsFilter };
|
|
85
|
+
|
|
86
|
+
//# sourceMappingURL=TagsFilter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"presentation/FileList/components/Filters/TagsFilter.js","sources":["../../../../../src/presentation/FileList/components/Filters/TagsFilter.tsx"],"sourcesContent":["import React, { useCallback, useState } from \"react\";\nimport { observer } from \"mobx-react-lite\";\nimport { Select, Tag as AdminTag, Text } from \"@webiny/admin-ui\";\nimport { i18n } from \"@webiny/app/i18n/index.js\";\nimport { useFileManagerPresenter } from \"../../FileManagerPresenterProvider.js\";\n\nconst t = i18n.ns(\"app-file-manager/presentation/tags-filter\");\n\nconst FILTER_MODE_OPTIONS = [\n { value: \"OR\", label: \"match any\" },\n { value: \"AND\", label: \"match all\" }\n];\n\n/**\n * Tags filter component wired to the FileListPresenter.\n * Reads available tags from vm.tags, supports AND/OR filter modes,\n * and dispatches changes via presenter.actions.filter.set(\"tags\", ...).\n */\nexport const TagsFilter = observer(function TagsFilter() {\n const { vm, actions } = useFileManagerPresenter();\n const [filterMode, setFilterMode] = useState<\"AND\" | \"OR\">(\"OR\");\n\n // Read the current active tags from the filter state.\n const activeTags = (vm.list.filters[\"tags\"] as string[] | undefined) ?? [];\n\n // Toggle a tag in the active tags list.\n const toggleTag = useCallback(\n (tag: string) => {\n const updated = activeTags.includes(tag)\n ? activeTags.filter(t => t !== tag)\n : [...activeTags, tag];\n\n if (updated.length > 0) {\n actions.filter.set(\"tags\", updated);\n // Store the filter mode alongside the tags.\n actions.filter.set(\"tags_rule\", filterMode);\n } else {\n actions.filter.clear(\"tags\");\n actions.filter.clear(\"tags_rule\");\n }\n },\n [activeTags, actions.filter, filterMode]\n );\n\n // Handle filter mode change.\n const handleModeChange = useCallback(\n (mode: string) => {\n const typedMode = mode as \"AND\" | \"OR\";\n setFilterMode(typedMode);\n // Re-apply the filter with the new mode if tags are active.\n if (activeTags.length > 0) {\n actions.filter.set(\"tags_rule\", typedMode);\n }\n },\n [activeTags, actions.filter]\n );\n\n if (vm.tags.length === 0) {\n return (\n <div className={\"flex flex-col gap-sm\"}>\n <Text size={\"sm\"} className={\"text-neutral-dimmed\"}>\n {t`No tags found.`}\n </Text>\n </div>\n );\n }\n\n return (\n <div className={\"flex flex-col gap-sm\"}>\n <Text className={\"font-semibold\"}>{t`Filter by tag`}</Text>\n {vm.tags.length > 1 && (\n <Select\n disabled={activeTags.length < 2}\n size={\"md\"}\n variant={\"secondary\"}\n value={filterMode}\n onChange={handleModeChange}\n options={FILTER_MODE_OPTIONS}\n displayResetAction={false}\n data-testid={\"fm-tags-filter-mode\"}\n />\n )}\n {activeTags.length > 0 && (\n <div className={\"flex flex-wrap gap-xs\"} data-testid={\"fm-tags-filter-active\"}>\n {activeTags.map(tag => (\n <AdminTag\n key={tag}\n variant={\"accent\"}\n content={tag}\n onDismiss={() => toggleTag(tag)}\n />\n ))}\n </div>\n )}\n <div className={\"flex flex-col gap-sm\"} data-testid={\"fm-tags-filter-list\"}>\n {vm.tags.map(tagItem => (\n <AdminTag\n key={tagItem.tag}\n variant={activeTags.includes(tagItem.tag) ? \"accent\" : \"neutral-muted\"}\n content={tagItem.tag}\n onClick={() => toggleTag(tagItem.tag)}\n onDismiss={\n activeTags.includes(tagItem.tag)\n ? () => toggleTag(tagItem.tag)\n : undefined\n }\n />\n ))}\n </div>\n </div>\n );\n});\n"],"names":["t","i18n","FILTER_MODE_OPTIONS","TagsFilter","observer","vm","actions","useFileManagerPresenter","filterMode","setFilterMode","useState","activeTags","toggleTag","useCallback","tag","updated","handleModeChange","mode","typedMode","Text","Select","AdminTag","tagItem","undefined"],"mappings":";;;;;AAMA,MAAMA,eAAIC,KAAK,EAAE,CAAC;AAElB,MAAMC,sBAAsB;IACxB;QAAE,OAAO;QAAM,OAAO;IAAY;IAClC;QAAE,OAAO;QAAO,OAAO;IAAY;CACtC;AAOM,MAAMC,wBAAaC,SAAS;IAC/B,MAAM,EAAEC,EAAE,EAAEC,OAAO,EAAE,GAAGC;IACxB,MAAM,CAACC,YAAYC,cAAc,GAAGC,SAAuB;IAG3D,MAAMC,aAAcN,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,IAA6B,EAAE;IAG1E,MAAMO,YAAYC,YACd,CAACC;QACG,MAAMC,UAAUJ,WAAW,QAAQ,CAACG,OAC9BH,WAAW,MAAM,CAACX,CAAAA,IAAKA,MAAMc,OAC7B;eAAIH;YAAYG;SAAI;QAE1B,IAAIC,QAAQ,MAAM,GAAG,GAAG;YACpBT,QAAQ,MAAM,CAAC,GAAG,CAAC,QAAQS;YAE3BT,QAAQ,MAAM,CAAC,GAAG,CAAC,aAAaE;QACpC,OAAO;YACHF,QAAQ,MAAM,CAAC,KAAK,CAAC;YACrBA,QAAQ,MAAM,CAAC,KAAK,CAAC;QACzB;IACJ,GACA;QAACK;QAAYL,QAAQ,MAAM;QAAEE;KAAW;IAI5C,MAAMQ,mBAAmBH,YACrB,CAACI;QACG,MAAMC,YAAYD;QAClBR,cAAcS;QAEd,IAAIP,WAAW,MAAM,GAAG,GACpBL,QAAQ,MAAM,CAAC,GAAG,CAAC,aAAaY;IAExC,GACA;QAACP;QAAYL,QAAQ,MAAM;KAAC;IAGhC,IAAID,AAAmB,MAAnBA,GAAG,IAAI,CAAC,MAAM,EACd,OAAO,WAAP,GACI,oBAAC;QAAI,WAAW;qBACZ,oBAACc,MAAIA;QAAC,MAAM;QAAM,WAAW;OACxBnB,YAAC,CAAC,cAAc,CAAC;IAMlC,OAAO,WAAP,GACI,oBAAC;QAAI,WAAW;qBACZ,oBAACmB,MAAIA;QAAC,WAAW;OAAkBnB,YAAC,CAAC,aAAa,CAAC,GAClDK,GAAG,IAAI,CAAC,MAAM,GAAG,KAAK,WAAL,GACd,oBAACe,QAAMA;QACH,UAAUT,WAAW,MAAM,GAAG;QAC9B,MAAM;QACN,SAAS;QACT,OAAOH;QACP,UAAUQ;QACV,SAASd;QACT,oBAAoB;QACpB,eAAa;QAGpBS,WAAW,MAAM,GAAG,KAAK,WAAL,GACjB,oBAAC;QAAI,WAAW;QAAyB,eAAa;OACjDA,WAAW,GAAG,CAACG,CAAAA,MAAAA,WAAAA,GACZ,oBAACO,KAAQA;YACL,KAAKP;YACL,SAAS;YACT,SAASA;YACT,WAAW,IAAMF,UAAUE;4BAK3C,oBAAC;QAAI,WAAW;QAAwB,eAAa;OAChDT,GAAG,IAAI,CAAC,GAAG,CAACiB,CAAAA,UAAAA,WAAAA,GACT,oBAACD,KAAQA;YACL,KAAKC,QAAQ,GAAG;YAChB,SAASX,WAAW,QAAQ,CAACW,QAAQ,GAAG,IAAI,WAAW;YACvD,SAASA,QAAQ,GAAG;YACpB,SAAS,IAAMV,UAAUU,QAAQ,GAAG;YACpC,WACIX,WAAW,QAAQ,CAACW,QAAQ,GAAG,IACzB,IAAMV,UAAUU,QAAQ,GAAG,IAC3BC;;AAOlC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import react, { useCallback } from "react";
|
|
2
|
+
import { observer } from "mobx-react-lite";
|
|
3
|
+
import { Select } from "@webiny/admin-ui";
|
|
4
|
+
import { i18n } from "@webiny/app/i18n/index.js";
|
|
5
|
+
import { useFileManagerPresenter } from "../../FileManagerPresenterProvider.js";
|
|
6
|
+
const t = i18n.ns("app-file-manager/presentation/type-filter");
|
|
7
|
+
const TYPE_OPTIONS = [
|
|
8
|
+
{
|
|
9
|
+
label: t`All`,
|
|
10
|
+
value: ""
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
label: t`Images`,
|
|
14
|
+
value: "image/"
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
label: t`Videos`,
|
|
18
|
+
value: "video/"
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
label: t`Documents`,
|
|
22
|
+
value: "application/"
|
|
23
|
+
}
|
|
24
|
+
];
|
|
25
|
+
const TypeFilter_TypeFilter = observer(function() {
|
|
26
|
+
const { vm, actions } = useFileManagerPresenter();
|
|
27
|
+
const currentValue = vm.list.filters["type"] ?? "";
|
|
28
|
+
const handleChange = useCallback((value)=>{
|
|
29
|
+
if (value) actions.filter.set("type", value);
|
|
30
|
+
else actions.filter.clear("type");
|
|
31
|
+
}, [
|
|
32
|
+
actions.filter
|
|
33
|
+
]);
|
|
34
|
+
return /*#__PURE__*/ react.createElement(Select, {
|
|
35
|
+
value: currentValue,
|
|
36
|
+
onChange: handleChange,
|
|
37
|
+
options: TYPE_OPTIONS,
|
|
38
|
+
placeholder: t`Filter by type`,
|
|
39
|
+
size: "md",
|
|
40
|
+
"data-testid": "fm-type-filter",
|
|
41
|
+
displayResetAction: false
|
|
42
|
+
});
|
|
43
|
+
});
|
|
44
|
+
export { TypeFilter_TypeFilter as TypeFilter };
|
|
45
|
+
|
|
46
|
+
//# sourceMappingURL=TypeFilter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"presentation/FileList/components/Filters/TypeFilter.js","sources":["../../../../../src/presentation/FileList/components/Filters/TypeFilter.tsx"],"sourcesContent":["import React, { useCallback } from \"react\";\nimport { observer } from \"mobx-react-lite\";\nimport { Select } from \"@webiny/admin-ui\";\nimport { i18n } from \"@webiny/app/i18n/index.js\";\nimport { useFileManagerPresenter } from \"../../FileManagerPresenterProvider.js\";\n\nconst t = i18n.ns(\"app-file-manager/presentation/type-filter\");\n\nconst TYPE_OPTIONS = [\n { label: t`All`, value: \"\" },\n { label: t`Images`, value: \"image/\" },\n { label: t`Videos`, value: \"video/\" },\n { label: t`Documents`, value: \"application/\" }\n];\n\n/**\n * File type filter component wired to the FileListPresenter.\n * Sets the \"type\" filter via presenter.actions.filter.set/clear.\n */\nexport const TypeFilter = observer(function TypeFilter() {\n const { vm, actions } = useFileManagerPresenter();\n\n // Read the current type filter value.\n const currentValue = (vm.list.filters[\"type\"] as string) ?? \"\";\n\n const handleChange = useCallback(\n (value: string) => {\n if (value) {\n actions.filter.set(\"type\", value);\n } else {\n actions.filter.clear(\"type\");\n }\n },\n [actions.filter]\n );\n\n return (\n <Select\n value={currentValue}\n onChange={handleChange}\n options={TYPE_OPTIONS}\n placeholder={t`Filter by type`}\n size={\"md\"}\n data-testid={\"fm-type-filter\"}\n displayResetAction={false}\n />\n );\n});\n"],"names":["t","i18n","TYPE_OPTIONS","TypeFilter","observer","vm","actions","useFileManagerPresenter","currentValue","handleChange","useCallback","value","Select"],"mappings":";;;;;AAMA,MAAMA,IAAIC,KAAK,EAAE,CAAC;AAElB,MAAMC,eAAe;IACjB;QAAE,OAAOF,CAAC,CAAC,GAAG,CAAC;QAAE,OAAO;IAAG;IAC3B;QAAE,OAAOA,CAAC,CAAC,MAAM,CAAC;QAAE,OAAO;IAAS;IACpC;QAAE,OAAOA,CAAC,CAAC,MAAM,CAAC;QAAE,OAAO;IAAS;IACpC;QAAE,OAAOA,CAAC,CAAC,SAAS,CAAC;QAAE,OAAO;IAAe;CAChD;AAMM,MAAMG,wBAAaC,SAAS;IAC/B,MAAM,EAAEC,EAAE,EAAEC,OAAO,EAAE,GAAGC;IAGxB,MAAMC,eAAgBH,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,IAAe;IAE5D,MAAMI,eAAeC,YACjB,CAACC;QACG,IAAIA,OACAL,QAAQ,MAAM,CAAC,GAAG,CAAC,QAAQK;aAE3BL,QAAQ,MAAM,CAAC,KAAK,CAAC;IAE7B,GACA;QAACA,QAAQ,MAAM;KAAC;IAGpB,OAAO,WAAP,GACI,oBAACM,QAAMA;QACH,OAAOJ;QACP,UAAUC;QACV,SAASP;QACT,aAAaF,CAAC,CAAC,cAAc,CAAC;QAC9B,MAAM;QACN,eAAa;QACb,oBAAoB;;AAGhC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
export interface ActionButtonProps {
|
|
3
|
+
icon: JSX.Element;
|
|
4
|
+
label?: string;
|
|
5
|
+
onAction: () => void;
|
|
6
|
+
"data-testid"?: string;
|
|
7
|
+
disabled?: boolean;
|
|
8
|
+
}
|
|
9
|
+
export declare const ActionButton: ({ icon, label, onAction, disabled, ...props }: ActionButtonProps) => React.JSX.Element;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import react, { useCallback } from "react";
|
|
2
|
+
import { IconButton, Tooltip } from "@webiny/admin-ui";
|
|
3
|
+
const ActionButton = ({ icon, label, onAction, disabled, ...props })=>{
|
|
4
|
+
const onClick = useCallback((event)=>{
|
|
5
|
+
event.stopPropagation();
|
|
6
|
+
onAction && onAction();
|
|
7
|
+
}, [
|
|
8
|
+
onAction
|
|
9
|
+
]);
|
|
10
|
+
return /*#__PURE__*/ react.createElement(Tooltip, {
|
|
11
|
+
content: label ?? "Custom action",
|
|
12
|
+
trigger: /*#__PURE__*/ react.createElement(IconButton, {
|
|
13
|
+
variant: "tertiary",
|
|
14
|
+
size: "sm",
|
|
15
|
+
icon: icon,
|
|
16
|
+
onClick: onClick,
|
|
17
|
+
disabled: disabled,
|
|
18
|
+
"data-testid": props["data-testid"]
|
|
19
|
+
})
|
|
20
|
+
});
|
|
21
|
+
};
|
|
22
|
+
export { ActionButton };
|
|
23
|
+
|
|
24
|
+
//# sourceMappingURL=ActionButton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"presentation/FileList/components/Grid/ActionButton.js","sources":["../../../../../src/presentation/FileList/components/Grid/ActionButton.tsx"],"sourcesContent":["import React, { useCallback } from \"react\";\nimport { IconButton, Tooltip } from \"@webiny/admin-ui\";\n\nexport interface ActionButtonProps {\n icon: JSX.Element;\n label?: string;\n onAction: () => void;\n \"data-testid\"?: string;\n disabled?: boolean;\n}\n\nexport const ActionButton = ({ icon, label, onAction, disabled, ...props }: ActionButtonProps) => {\n const onClick = useCallback(\n (event: React.MouseEvent<HTMLButtonElement>) => {\n // Prevent the click event from propagating to the grid item component.\n event.stopPropagation();\n onAction && onAction();\n },\n [onAction]\n );\n\n return (\n <Tooltip\n content={label ?? \"Custom action\"}\n trigger={\n <IconButton\n variant={\"tertiary\"}\n size={\"sm\"}\n icon={icon}\n onClick={onClick}\n disabled={disabled}\n data-testid={props[\"data-testid\"]}\n />\n }\n />\n );\n};\n"],"names":["ActionButton","icon","label","onAction","disabled","props","onClick","useCallback","event","Tooltip","IconButton"],"mappings":";;AAWO,MAAMA,eAAe,CAAC,EAAEC,IAAI,EAAEC,KAAK,EAAEC,QAAQ,EAAEC,QAAQ,EAAE,GAAGC,OAA0B;IACzF,MAAMC,UAAUC,YACZ,CAACC;QAEGA,MAAM,eAAe;QACrBL,YAAYA;IAChB,GACA;QAACA;KAAS;IAGd,OAAO,WAAP,GACI,oBAACM,SAAOA;QACJ,SAASP,SAAS;QAClB,uBACI,oBAACQ,YAAUA;YACP,SAAS;YACT,MAAM;YACN,MAAMT;YACN,SAASK;YACT,UAAUF;YACV,eAAaC,KAAK,CAAC,cAAc;;;AAKrD"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import type { FileItem } from "../../../../domain/types.js";
|
|
3
|
+
export interface FileProps {
|
|
4
|
+
file: FileItem;
|
|
5
|
+
selected: boolean;
|
|
6
|
+
fileBody?: JSX.Element;
|
|
7
|
+
onSelect?: (event?: React.MouseEvent) => void;
|
|
8
|
+
onClick?: (event?: React.MouseEvent) => void;
|
|
9
|
+
multiple?: boolean;
|
|
10
|
+
children: React.ReactNode;
|
|
11
|
+
}
|
|
12
|
+
export type DefaultFileControlsProps = Pick<FileProps, "selected" | "onSelect">;
|
|
13
|
+
export type DefaultFileBodyProps = Pick<FileProps, "selected" | "onSelect" | "children">;
|
|
14
|
+
export declare const File: (({ file, fileBody, selected, onSelect, children }: FileProps) => React.JSX.Element) & {
|
|
15
|
+
original: ({ file, fileBody, selected, onSelect, children }: FileProps) => React.JSX.Element;
|
|
16
|
+
originalName: string;
|
|
17
|
+
displayName: string;
|
|
18
|
+
} & {
|
|
19
|
+
original: (({ file, fileBody, selected, onSelect, children }: FileProps) => React.JSX.Element) & {
|
|
20
|
+
original: ({ file, fileBody, selected, onSelect, children }: FileProps) => React.JSX.Element;
|
|
21
|
+
originalName: string;
|
|
22
|
+
displayName: string;
|
|
23
|
+
};
|
|
24
|
+
originalName: string;
|
|
25
|
+
displayName: string;
|
|
26
|
+
} & {
|
|
27
|
+
createDecorator: (decorator: import("@webiny/app-admin").ComponentDecorator<(({ file, fileBody, selected, onSelect, children }: FileProps) => React.JSX.Element) & {
|
|
28
|
+
original: ({ file, fileBody, selected, onSelect, children }: FileProps) => React.JSX.Element;
|
|
29
|
+
originalName: string;
|
|
30
|
+
displayName: string;
|
|
31
|
+
}>) => (props: unknown) => React.JSX.Element;
|
|
32
|
+
};
|