@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.
Files changed (738) hide show
  1. package/README.md +7 -28
  2. package/app.d.ts +2 -0
  3. package/app.js +57 -0
  4. package/app.js.map +1 -0
  5. package/domain/constants.d.ts +4 -0
  6. package/domain/constants.js +7 -0
  7. package/domain/constants.js.map +1 -0
  8. package/domain/permissionsSchema.d.ts +18 -0
  9. package/domain/permissionsSchema.js +32 -0
  10. package/domain/permissionsSchema.js.map +1 -0
  11. package/domain/tagsHelpers.d.ts +16 -0
  12. package/domain/tagsHelpers.js +25 -0
  13. package/domain/tagsHelpers.js.map +1 -0
  14. package/domain/types.d.ts +34 -0
  15. package/domain/types.js +0 -0
  16. package/exports/admin/ui/file-manager.d.ts +2 -0
  17. package/exports/admin/ui/file-manager.js +1 -0
  18. package/features/deleteFile/DeleteFile.test.d.ts +1 -0
  19. package/features/deleteFile/DeleteFile.test.js +150 -0
  20. package/features/deleteFile/DeleteFile.test.js.map +1 -0
  21. package/features/deleteFile/DeleteFileGateway.d.ts +11 -0
  22. package/features/deleteFile/DeleteFileGateway.js +23 -0
  23. package/features/deleteFile/DeleteFileGateway.js.map +1 -0
  24. package/features/deleteFile/DeleteFileRepository.d.ts +12 -0
  25. package/features/deleteFile/DeleteFileRepository.js +26 -0
  26. package/features/deleteFile/DeleteFileRepository.js.map +1 -0
  27. package/features/deleteFile/DeleteFileUseCase.d.ts +10 -0
  28. package/features/deleteFile/DeleteFileUseCase.js +34 -0
  29. package/features/deleteFile/DeleteFileUseCase.js.map +1 -0
  30. package/features/deleteFile/abstractions.d.ts +36 -0
  31. package/features/deleteFile/abstractions.js +7 -0
  32. package/features/deleteFile/abstractions.js.map +1 -0
  33. package/features/deleteFile/feature.d.ts +3 -0
  34. package/features/deleteFile/feature.js +21 -0
  35. package/features/deleteFile/feature.js.map +1 -0
  36. package/features/deleteFile/index.d.ts +3 -0
  37. package/features/deleteFile/index.js +2 -0
  38. package/features/fileModel/FileModelProvider.d.ts +12 -0
  39. package/features/fileModel/FileModelProvider.js +21 -0
  40. package/features/fileModel/FileModelProvider.js.map +1 -0
  41. package/features/fileModel/GetFileModelGqlGateway.d.ts +12 -0
  42. package/features/fileModel/GetFileModelGqlGateway.js +38 -0
  43. package/features/fileModel/GetFileModelGqlGateway.js.map +1 -0
  44. package/features/fileModel/GetFileModelRepository.d.ts +14 -0
  45. package/features/fileModel/GetFileModelRepository.js +32 -0
  46. package/features/fileModel/GetFileModelRepository.js.map +1 -0
  47. package/features/fileModel/abstractions.d.ts +24 -0
  48. package/features/fileModel/abstractions.js +7 -0
  49. package/features/fileModel/abstractions.js.map +1 -0
  50. package/features/fileModel/feature.d.ts +1 -0
  51. package/features/fileModel/feature.js +15 -0
  52. package/features/fileModel/feature.js.map +1 -0
  53. package/features/fileModel/index.d.ts +2 -0
  54. package/features/fileModel/index.js +2 -0
  55. package/features/fileUploader/FileUploader.d.ts +23 -0
  56. package/features/fileUploader/FileUploader.js +243 -0
  57. package/features/fileUploader/FileUploader.js.map +1 -0
  58. package/features/fileUploader/FileUploader.test.d.ts +1 -0
  59. package/features/fileUploader/FileUploader.test.js +427 -0
  60. package/features/fileUploader/FileUploader.test.js.map +1 -0
  61. package/features/fileUploader/abstractions.d.ts +51 -0
  62. package/features/fileUploader/abstractions.js +5 -0
  63. package/features/fileUploader/abstractions.js.map +1 -0
  64. package/features/fileUploader/feature.d.ts +3 -0
  65. package/features/fileUploader/feature.js +17 -0
  66. package/features/fileUploader/feature.js.map +1 -0
  67. package/features/fileUploader/index.d.ts +3 -0
  68. package/features/fileUploader/index.js +2 -0
  69. package/features/fileUrlFormatter/FileUrlFormatter.d.ts +8 -0
  70. package/features/fileUrlFormatter/FileUrlFormatter.js +13 -0
  71. package/features/fileUrlFormatter/FileUrlFormatter.js.map +1 -0
  72. package/features/fileUrlFormatter/abstractions.d.ts +1 -0
  73. package/features/fileUrlFormatter/abstractions.js +1 -0
  74. package/features/fileUrlFormatter/feature.d.ts +1 -0
  75. package/features/fileUrlFormatter/feature.js +11 -0
  76. package/features/fileUrlFormatter/feature.js.map +1 -0
  77. package/features/getFile/GetFileGateway.d.ts +14 -0
  78. package/features/getFile/GetFileGateway.js +28 -0
  79. package/features/getFile/GetFileGateway.js.map +1 -0
  80. package/features/getFile/GetFileRepository.d.ts +11 -0
  81. package/features/getFile/GetFileRepository.js +18 -0
  82. package/features/getFile/GetFileRepository.js.map +1 -0
  83. package/features/getFile/GetFileUseCase.d.ts +10 -0
  84. package/features/getFile/GetFileUseCase.js +35 -0
  85. package/features/getFile/GetFileUseCase.js.map +1 -0
  86. package/features/getFile/abstractions.d.ts +38 -0
  87. package/features/getFile/abstractions.js +7 -0
  88. package/features/getFile/abstractions.js.map +1 -0
  89. package/features/getFile/feature.d.ts +3 -0
  90. package/features/getFile/feature.js +21 -0
  91. package/features/getFile/feature.js.map +1 -0
  92. package/features/getFile/index.d.ts +3 -0
  93. package/features/getFile/index.js +2 -0
  94. package/features/listFiles/ListFiles.test.d.ts +1 -0
  95. package/features/listFiles/ListFiles.test.js +192 -0
  96. package/features/listFiles/ListFiles.test.js.map +1 -0
  97. package/features/listFiles/ListFilesGateway.d.ts +13 -0
  98. package/features/listFiles/ListFilesGateway.js +35 -0
  99. package/features/listFiles/ListFilesGateway.js.map +1 -0
  100. package/features/listFiles/ListFilesRepository.d.ts +12 -0
  101. package/features/listFiles/ListFilesRepository.js +26 -0
  102. package/features/listFiles/ListFilesRepository.js.map +1 -0
  103. package/features/listFiles/ListFilesUseCase.d.ts +10 -0
  104. package/features/listFiles/ListFilesUseCase.js +28 -0
  105. package/features/listFiles/ListFilesUseCase.js.map +1 -0
  106. package/features/listFiles/abstractions.d.ts +45 -0
  107. package/features/listFiles/abstractions.js +7 -0
  108. package/features/listFiles/abstractions.js.map +1 -0
  109. package/features/listFiles/feature.d.ts +3 -0
  110. package/features/listFiles/feature.js +21 -0
  111. package/features/listFiles/feature.js.map +1 -0
  112. package/features/listFiles/index.d.ts +3 -0
  113. package/features/listFiles/index.js +2 -0
  114. package/features/permissions/abstractions.d.ts +17 -0
  115. package/features/permissions/abstractions.js +6 -0
  116. package/features/permissions/abstractions.js.map +1 -0
  117. package/features/permissions/feature.d.ts +14 -0
  118. package/features/permissions/feature.js +7 -0
  119. package/features/permissions/feature.js.map +1 -0
  120. package/features/resolveImageTool/ResolveImageTool.d.ts +40 -0
  121. package/features/resolveImageTool/ResolveImageTool.js +49 -0
  122. package/features/resolveImageTool/ResolveImageTool.js.map +1 -0
  123. package/features/resolveImageTool/feature.d.ts +1 -0
  124. package/features/resolveImageTool/feature.js +11 -0
  125. package/features/resolveImageTool/feature.js.map +1 -0
  126. package/features/settings/GetSettings.test.d.ts +1 -0
  127. package/features/settings/GetSettings.test.js +92 -0
  128. package/features/settings/GetSettings.test.js.map +1 -0
  129. package/features/settings/GetSettingsGateway.d.ts +12 -0
  130. package/features/settings/GetSettingsGateway.js +43 -0
  131. package/features/settings/GetSettingsGateway.js.map +1 -0
  132. package/features/settings/GetSettingsRepository.d.ts +14 -0
  133. package/features/settings/GetSettingsRepository.js +34 -0
  134. package/features/settings/GetSettingsRepository.js.map +1 -0
  135. package/features/settings/GetSettingsUseCase.d.ts +11 -0
  136. package/features/settings/GetSettingsUseCase.js +18 -0
  137. package/features/settings/GetSettingsUseCase.js.map +1 -0
  138. package/features/settings/SaveSettingsGateway.d.ts +12 -0
  139. package/features/settings/SaveSettingsGateway.js +50 -0
  140. package/features/settings/SaveSettingsGateway.js.map +1 -0
  141. package/features/settings/abstractions.d.ts +31 -0
  142. package/features/settings/abstractions.js +8 -0
  143. package/features/settings/abstractions.js.map +1 -0
  144. package/features/settings/feature.d.ts +3 -0
  145. package/features/settings/feature.js +23 -0
  146. package/features/settings/feature.js.map +1 -0
  147. package/features/settings/index.d.ts +3 -0
  148. package/features/settings/index.js +2 -0
  149. package/features/shared/FILE_FIELDS.d.ts +1 -0
  150. package/features/shared/FILE_FIELDS.js +32 -0
  151. package/features/shared/FILE_FIELDS.js.map +1 -0
  152. package/features/shared/FileFieldsProvider.d.ts +8 -0
  153. package/features/shared/FileFieldsProvider.js +14 -0
  154. package/features/shared/FileFieldsProvider.js.map +1 -0
  155. package/features/shared/FileFieldsProviderWithWcp.d.ts +12 -0
  156. package/features/shared/FileFieldsProviderWithWcp.js +25 -0
  157. package/features/shared/FileFieldsProviderWithWcp.js.map +1 -0
  158. package/features/shared/FilesListCache.d.ts +1 -0
  159. package/features/shared/FilesListCache.js +1 -0
  160. package/features/shared/abstractions.d.ts +13 -0
  161. package/features/shared/abstractions.js +6 -0
  162. package/features/shared/abstractions.js.map +1 -0
  163. package/features/shared/feature.d.ts +5 -0
  164. package/features/shared/feature.js +22 -0
  165. package/features/shared/feature.js.map +1 -0
  166. package/features/shared/index.d.ts +4 -0
  167. package/features/shared/index.js +3 -0
  168. package/features/shared/types.d.ts +16 -0
  169. package/features/shared/types.js +0 -0
  170. package/features/tags/ListTags.test.d.ts +1 -0
  171. package/features/tags/ListTags.test.js +126 -0
  172. package/features/tags/ListTags.test.js.map +1 -0
  173. package/features/tags/ListTagsGateway.d.ts +11 -0
  174. package/features/tags/ListTagsGateway.js +23 -0
  175. package/features/tags/ListTagsGateway.js.map +1 -0
  176. package/features/tags/ListTagsRepository.d.ts +12 -0
  177. package/features/tags/ListTagsRepository.js +25 -0
  178. package/features/tags/ListTagsRepository.js.map +1 -0
  179. package/features/tags/ListTagsUseCase.d.ts +10 -0
  180. package/features/tags/ListTagsUseCase.js +20 -0
  181. package/features/tags/ListTagsUseCase.js.map +1 -0
  182. package/features/tags/abstractions.d.ts +32 -0
  183. package/features/tags/abstractions.js +7 -0
  184. package/features/tags/abstractions.js.map +1 -0
  185. package/features/tags/feature.d.ts +3 -0
  186. package/features/tags/feature.js +21 -0
  187. package/features/tags/feature.js.map +1 -0
  188. package/features/tags/index.d.ts +3 -0
  189. package/features/tags/index.js +2 -0
  190. package/features/updateFile/UpdateFile.test.d.ts +1 -0
  191. package/features/updateFile/UpdateFile.test.js +260 -0
  192. package/features/updateFile/UpdateFile.test.js.map +1 -0
  193. package/features/updateFile/UpdateFileGateway.d.ts +12 -0
  194. package/features/updateFile/UpdateFileGateway.js +25 -0
  195. package/features/updateFile/UpdateFileGateway.js.map +1 -0
  196. package/features/updateFile/UpdateFileRepository.d.ts +14 -0
  197. package/features/updateFile/UpdateFileRepository.js +32 -0
  198. package/features/updateFile/UpdateFileRepository.js.map +1 -0
  199. package/features/updateFile/UpdateFileUseCase.d.ts +12 -0
  200. package/features/updateFile/UpdateFileUseCase.js +41 -0
  201. package/features/updateFile/UpdateFileUseCase.js.map +1 -0
  202. package/features/updateFile/abstractions.d.ts +53 -0
  203. package/features/updateFile/abstractions.js +7 -0
  204. package/features/updateFile/abstractions.js.map +1 -0
  205. package/features/updateFile/feature.d.ts +3 -0
  206. package/features/updateFile/feature.js +21 -0
  207. package/features/updateFile/feature.js.map +1 -0
  208. package/features/updateFile/index.d.ts +3 -0
  209. package/features/updateFile/index.js +2 -0
  210. package/index.d.ts +3 -2
  211. package/index.js +3 -37
  212. package/modules/Enterprise/HandleWebsocketMessages.d.ts +1 -0
  213. package/modules/Enterprise/HandleWebsocketMessages.js +53 -0
  214. package/modules/Enterprise/HandleWebsocketMessages.js.map +1 -0
  215. package/modules/Enterprise/components/ThreatScanInProgressFileBody.d.ts +2 -0
  216. package/modules/Enterprise/components/ThreatScanInProgressFileBody.js +22 -0
  217. package/modules/Enterprise/components/ThreatScanInProgressFileBody.js.map +1 -0
  218. package/modules/Enterprise/components/ThreatScanInProgressTableCell.d.ts +6 -0
  219. package/modules/Enterprise/components/ThreatScanInProgressTableCell.js +20 -0
  220. package/modules/Enterprise/components/ThreatScanInProgressTableCell.js.map +1 -0
  221. package/modules/Enterprise/constants.d.ts +3 -0
  222. package/modules/Enterprise/constants.js +6 -0
  223. package/modules/Enterprise/constants.js.map +1 -0
  224. package/modules/Enterprise/index.d.ts +2 -0
  225. package/modules/Enterprise/index.js +30 -0
  226. package/modules/Enterprise/index.js.map +1 -0
  227. package/modules/FileManagerRoutes.d.ts +2 -0
  228. package/modules/FileManagerRoutes.js +31 -0
  229. package/modules/FileManagerRoutes.js.map +1 -0
  230. package/modules/FileModelModule.d.ts +2 -0
  231. package/modules/FileModelModule.js +18 -0
  232. package/modules/FileModelModule.js.map +1 -0
  233. package/modules/FileUrlFormatter.d.ts +2 -0
  234. package/modules/FileUrlFormatter.js +9 -0
  235. package/modules/FileUrlFormatter.js.map +1 -0
  236. package/modules/HeadlessCms/fileField.d.ts +2 -0
  237. package/modules/HeadlessCms/fileField.js +44 -0
  238. package/modules/HeadlessCms/fileField.js.map +1 -0
  239. package/modules/HeadlessCms/fileRenderer/fileField.d.ts +2 -0
  240. package/modules/HeadlessCms/fileRenderer/fileField.js +53 -0
  241. package/modules/HeadlessCms/fileRenderer/fileField.js.map +1 -0
  242. package/modules/HeadlessCms/fileRenderer/fileFields.d.ts +2 -0
  243. package/modules/HeadlessCms/fileRenderer/fileFields.js +73 -0
  244. package/modules/HeadlessCms/fileRenderer/fileFields.js.map +1 -0
  245. package/modules/HeadlessCms/fileRenderer/utils.d.ts +2 -0
  246. package/modules/HeadlessCms/fileRenderer/utils.js +15 -0
  247. package/modules/HeadlessCms/fileRenderer/utils.js.map +1 -0
  248. package/modules/HeadlessCms/index.d.ts +1 -0
  249. package/modules/HeadlessCms/index.js +14 -0
  250. package/modules/HeadlessCms/index.js.map +1 -0
  251. package/modules/SecurityPermissions.d.ts +2 -0
  252. package/modules/SecurityPermissions.js +15 -0
  253. package/modules/SecurityPermissions.js.map +1 -0
  254. package/modules/Settings/assets/icons/folder-open.js +19 -0
  255. package/modules/Settings/assets/icons/folder-open.js.map +1 -0
  256. package/{admin → modules/Settings}/graphql.d.ts +7 -0
  257. package/modules/Settings/graphql.js +36 -0
  258. package/modules/Settings/graphql.js.map +1 -0
  259. package/modules/Settings/index.d.ts +2 -0
  260. package/modules/Settings/index.js +27 -0
  261. package/modules/Settings/index.js.map +1 -0
  262. package/modules/Settings/views/FileManagerSettings.d.ts +2 -0
  263. package/modules/Settings/views/FileManagerSettings.js +134 -0
  264. package/modules/Settings/views/FileManagerSettings.js.map +1 -0
  265. package/package.json +46 -37
  266. package/presentation/FileActions/FileDetails/CopyUrl.d.ts +2 -0
  267. package/presentation/FileActions/FileDetails/CopyUrl.js +19 -0
  268. package/presentation/FileActions/FileDetails/CopyUrl.js.map +1 -0
  269. package/presentation/FileActions/FileDetails/DeleteImage.d.ts +2 -0
  270. package/presentation/FileActions/FileDetails/DeleteImage.js +24 -0
  271. package/presentation/FileActions/FileDetails/DeleteImage.js.map +1 -0
  272. package/presentation/FileActions/FileDetails/Download.d.ts +2 -0
  273. package/presentation/FileActions/FileDetails/Download.js +19 -0
  274. package/presentation/FileActions/FileDetails/Download.js.map +1 -0
  275. package/presentation/FileActions/FileDetails/MoveToFolder.d.ts +2 -0
  276. package/presentation/FileActions/FileDetails/MoveToFolder.js +16 -0
  277. package/presentation/FileActions/FileDetails/MoveToFolder.js.map +1 -0
  278. package/presentation/FileActions/Grid/Delete.d.ts +2 -0
  279. package/presentation/FileActions/Grid/Delete.js +23 -0
  280. package/presentation/FileActions/Grid/Delete.js.map +1 -0
  281. package/presentation/FileActions/Grid/Download.d.ts +2 -0
  282. package/presentation/FileActions/Grid/Download.js +19 -0
  283. package/presentation/FileActions/Grid/Download.js.map +1 -0
  284. package/presentation/FileActions/Grid/MoveToFolder.d.ts +2 -0
  285. package/presentation/FileActions/Grid/MoveToFolder.js +16 -0
  286. package/presentation/FileActions/Grid/MoveToFolder.js.map +1 -0
  287. package/presentation/FileActions/Grid/Settings.d.ts +2 -0
  288. package/presentation/FileActions/Grid/Settings.js +23 -0
  289. package/presentation/FileActions/Grid/Settings.js.map +1 -0
  290. package/presentation/FileActions/index.d.ts +2 -0
  291. package/presentation/FileActions/index.js +39 -0
  292. package/presentation/FileActions/index.js.map +1 -0
  293. package/presentation/FileDetails/FileDetailsPresenter.d.ts +28 -0
  294. package/presentation/FileDetails/FileDetailsPresenter.js +138 -0
  295. package/presentation/FileDetails/FileDetailsPresenter.js.map +1 -0
  296. package/presentation/FileDetails/FileDetailsPresenter.test.d.ts +1 -0
  297. package/presentation/FileDetails/FileDetailsPresenter.test.js +280 -0
  298. package/presentation/FileDetails/FileDetailsPresenter.test.js.map +1 -0
  299. package/presentation/FileDetails/abstractions.d.ts +22 -0
  300. package/presentation/FileDetails/abstractions.js +5 -0
  301. package/presentation/FileDetails/abstractions.js.map +1 -0
  302. package/presentation/FileDetails/components/ActionButton.d.ts +10 -0
  303. package/presentation/FileDetails/components/ActionButton.js +15 -0
  304. package/presentation/FileDetails/components/ActionButton.js.map +1 -0
  305. package/presentation/FileDetails/components/Actions.d.ts +2 -0
  306. package/presentation/FileDetails/components/Actions.js +13 -0
  307. package/presentation/FileDetails/components/Actions.js.map +1 -0
  308. package/presentation/FileDetails/components/Content.d.ts +14 -0
  309. package/presentation/FileDetails/components/Content.js +20 -0
  310. package/presentation/FileDetails/components/Content.js.map +1 -0
  311. package/presentation/FileDetails/components/CreatedOn.d.ts +2 -0
  312. package/presentation/FileDetails/components/CreatedOn.js +21 -0
  313. package/presentation/FileDetails/components/CreatedOn.js.map +1 -0
  314. package/presentation/FileDetails/components/Description.d.ts +2 -0
  315. package/presentation/FileDetails/components/Description.js +16 -0
  316. package/presentation/FileDetails/components/Description.js.map +1 -0
  317. package/presentation/FileDetails/components/FileDetailsDrawer.d.ts +4 -0
  318. package/presentation/FileDetails/components/FileDetailsDrawer.js +73 -0
  319. package/presentation/FileDetails/components/FileDetailsDrawer.js.map +1 -0
  320. package/presentation/FileDetails/components/Preview.d.ts +2 -0
  321. package/presentation/FileDetails/components/Preview.js +15 -0
  322. package/presentation/FileDetails/components/Preview.js.map +1 -0
  323. package/presentation/FileDetails/components/Thumbnail.d.ts +2 -0
  324. package/presentation/FileDetails/components/Thumbnail.js +12 -0
  325. package/presentation/FileDetails/components/Thumbnail.js.map +1 -0
  326. package/presentation/FileDetails/feature.d.ts +3 -0
  327. package/presentation/FileDetails/feature.js +17 -0
  328. package/presentation/FileDetails/feature.js.map +1 -0
  329. package/presentation/FileDetails/index.d.ts +3 -0
  330. package/presentation/FileDetails/index.js +2 -0
  331. package/presentation/FileList/FileListDataSource.d.ts +20 -0
  332. package/presentation/FileList/FileListDataSource.js +122 -0
  333. package/presentation/FileList/FileListDataSource.js.map +1 -0
  334. package/presentation/FileList/FileListPresenter.test.d.ts +1 -0
  335. package/presentation/FileList/FileListPresenter.test.js +424 -0
  336. package/presentation/FileList/FileListPresenter.test.js.map +1 -0
  337. package/presentation/FileList/FileManagerPresenter.d.ts +43 -0
  338. package/presentation/FileList/FileManagerPresenter.js +213 -0
  339. package/presentation/FileList/FileManagerPresenter.js.map +1 -0
  340. package/presentation/FileList/FileManagerPresenterProvider.d.ts +9 -0
  341. package/presentation/FileList/FileManagerPresenterProvider.js +13 -0
  342. package/presentation/FileList/FileManagerPresenterProvider.js.map +1 -0
  343. package/presentation/FileList/abstractions.d.ts +76 -0
  344. package/presentation/FileList/abstractions.js +5 -0
  345. package/presentation/FileList/abstractions.js.map +1 -0
  346. package/presentation/FileList/components/BottomInfoBar/BottomInfoBar.d.ts +6 -0
  347. package/presentation/FileList/components/BottomInfoBar/BottomInfoBar.js +12 -0
  348. package/presentation/FileList/components/BottomInfoBar/BottomInfoBar.js.map +1 -0
  349. package/presentation/FileList/components/BottomInfoBar/ListStatus.d.ts +6 -0
  350. package/presentation/FileList/components/BottomInfoBar/ListStatus.js +20 -0
  351. package/presentation/FileList/components/BottomInfoBar/ListStatus.js.map +1 -0
  352. package/presentation/FileList/components/BottomInfoBar/SupportedFileTypes.d.ts +8 -0
  353. package/presentation/FileList/components/BottomInfoBar/SupportedFileTypes.js +56 -0
  354. package/presentation/FileList/components/BottomInfoBar/SupportedFileTypes.js.map +1 -0
  355. package/presentation/FileList/components/BottomInfoBar/index.d.ts +1 -0
  356. package/presentation/FileList/components/BottomInfoBar/index.js +1 -0
  357. package/presentation/FileList/components/BulkActions/ActionEdit.types.d.ts +2 -0
  358. package/presentation/FileList/components/BulkActions/ActionEdit.types.js +0 -0
  359. package/presentation/FileList/components/BulkActions/ActionEditPresenter.d.ts +35 -0
  360. package/presentation/FileList/components/BulkActions/ActionEditPresenter.js +55 -0
  361. package/presentation/FileList/components/BulkActions/ActionEditPresenter.js.map +1 -0
  362. package/presentation/FileList/components/BulkActions/ActionEditPresenter.test.d.ts +1 -0
  363. package/presentation/FileList/components/BulkActions/ActionEditPresenter.test.js +170 -0
  364. package/presentation/FileList/components/BulkActions/ActionEditPresenter.test.js.map +1 -0
  365. package/presentation/FileList/components/BulkActions/BatchEditorDialog/AddOperation.d.ts +7 -0
  366. package/presentation/FileList/components/BulkActions/BatchEditorDialog/AddOperation.js +15 -0
  367. package/presentation/FileList/components/BulkActions/BatchEditorDialog/AddOperation.js.map +1 -0
  368. package/presentation/FileList/components/BulkActions/BatchEditorDialog/BatchEditor.d.ts +15 -0
  369. package/presentation/FileList/components/BulkActions/BatchEditorDialog/BatchEditor.js +44 -0
  370. package/presentation/FileList/components/BulkActions/BatchEditorDialog/BatchEditor.js.map +1 -0
  371. package/presentation/FileList/components/BulkActions/BatchEditorDialog/BatchEditorDialog.d.ts +15 -0
  372. package/presentation/FileList/components/BulkActions/BatchEditorDialog/BatchEditorDialog.js +52 -0
  373. package/presentation/FileList/components/BulkActions/BatchEditorDialog/BatchEditorDialog.js.map +1 -0
  374. package/presentation/FileList/components/BulkActions/BatchEditorDialog/BatchEditorDialogPresenter.d.ts +61 -0
  375. package/presentation/FileList/components/BulkActions/BatchEditorDialog/BatchEditorDialogPresenter.js +111 -0
  376. package/presentation/FileList/components/BulkActions/BatchEditorDialog/BatchEditorDialogPresenter.js.map +1 -0
  377. package/presentation/FileList/components/BulkActions/BatchEditorDialog/BatchEditorDialogPresenter.test.d.ts +1 -0
  378. package/presentation/FileList/components/BulkActions/BatchEditorDialog/BatchEditorDialogPresenter.test.js +372 -0
  379. package/presentation/FileList/components/BulkActions/BatchEditorDialog/BatchEditorDialogPresenter.test.js.map +1 -0
  380. package/presentation/FileList/components/BulkActions/BatchEditorDialog/FieldRenderer.d.ts +8 -0
  381. package/presentation/FileList/components/BulkActions/BatchEditorDialog/FieldRenderer.js +31 -0
  382. package/presentation/FileList/components/BulkActions/BatchEditorDialog/FieldRenderer.js.map +1 -0
  383. package/presentation/FileList/components/BulkActions/BatchEditorDialog/Operation.d.ts +11 -0
  384. package/presentation/FileList/components/BulkActions/BatchEditorDialog/Operation.js +33 -0
  385. package/presentation/FileList/components/BulkActions/BatchEditorDialog/Operation.js.map +1 -0
  386. package/presentation/FileList/components/BulkActions/BatchEditorDialog/index.d.ts +1 -0
  387. package/presentation/FileList/components/BulkActions/BatchEditorDialog/index.js +1 -0
  388. package/presentation/FileList/components/BulkActions/BulkActionBar.d.ts +5 -0
  389. package/presentation/FileList/components/BulkActions/BulkActionBar.js +42 -0
  390. package/presentation/FileList/components/BulkActions/BulkActionBar.js.map +1 -0
  391. package/presentation/FileList/components/BulkActions/BulkActionDelete.d.ts +4 -0
  392. package/presentation/FileList/components/BulkActions/BulkActionDelete.js +65 -0
  393. package/presentation/FileList/components/BulkActions/BulkActionDelete.js.map +1 -0
  394. package/presentation/FileList/components/BulkActions/BulkActionEdit.d.ts +4 -0
  395. package/presentation/FileList/components/BulkActions/BulkActionEdit.js +105 -0
  396. package/presentation/FileList/components/BulkActions/BulkActionEdit.js.map +1 -0
  397. package/presentation/FileList/components/BulkActions/BulkActionMove.d.ts +4 -0
  398. package/presentation/FileList/components/BulkActions/BulkActionMove.js +87 -0
  399. package/presentation/FileList/components/BulkActions/BulkActionMove.js.map +1 -0
  400. package/presentation/FileList/components/BulkActions/GraphQLInputMapper.d.ts +23 -0
  401. package/presentation/FileList/components/BulkActions/GraphQLInputMapper.js +40 -0
  402. package/presentation/FileList/components/BulkActions/GraphQLInputMapper.js.map +1 -0
  403. package/presentation/FileList/components/BulkActions/GraphQLInputMapper.test.d.ts +1 -0
  404. package/presentation/FileList/components/BulkActions/GraphQLInputMapper.test.js +319 -0
  405. package/presentation/FileList/components/BulkActions/GraphQLInputMapper.test.js.map +1 -0
  406. package/presentation/FileList/components/BulkActions/domain/Batch.d.ts +32 -0
  407. package/presentation/FileList/components/BulkActions/domain/Batch.js +32 -0
  408. package/presentation/FileList/components/BulkActions/domain/Batch.js.map +1 -0
  409. package/presentation/FileList/components/BulkActions/domain/BatchMapper.d.ts +4 -0
  410. package/presentation/FileList/components/BulkActions/domain/BatchMapper.js +14 -0
  411. package/presentation/FileList/components/BulkActions/domain/BatchMapper.js.map +1 -0
  412. package/presentation/FileList/components/BulkActions/domain/Field.d.ts +32 -0
  413. package/presentation/FileList/components/BulkActions/domain/Field.js +49 -0
  414. package/presentation/FileList/components/BulkActions/domain/Field.js.map +1 -0
  415. package/presentation/FileList/components/BulkActions/domain/FieldMapper.d.ts +7 -0
  416. package/presentation/FileList/components/BulkActions/domain/FieldMapper.js +21 -0
  417. package/presentation/FileList/components/BulkActions/domain/FieldMapper.js.map +1 -0
  418. package/presentation/FileList/components/BulkActions/domain/index.d.ts +4 -0
  419. package/presentation/FileList/components/BulkActions/domain/index.js +4 -0
  420. package/presentation/FileList/components/BulkActions/index.d.ts +5 -0
  421. package/presentation/FileList/components/BulkActions/index.js +5 -0
  422. package/presentation/FileList/components/BulkActions/useBulkActionWorker.d.ts +16 -0
  423. package/presentation/FileList/components/BulkActions/useBulkActionWorker.js +43 -0
  424. package/presentation/FileList/components/BulkActions/useBulkActionWorker.js.map +1 -0
  425. package/presentation/FileList/components/Empty/Empty.d.ts +8 -0
  426. package/presentation/FileList/components/Empty/Empty.js +20 -0
  427. package/presentation/FileList/components/Empty/Empty.js.map +1 -0
  428. package/presentation/FileList/components/Empty/index.d.ts +1 -0
  429. package/presentation/FileList/components/Empty/index.js +1 -0
  430. package/presentation/FileList/components/FileDropArea/FileDropArea.d.ts +9 -0
  431. package/presentation/FileList/components/FileDropArea/FileDropArea.js +62 -0
  432. package/presentation/FileList/components/FileDropArea/FileDropArea.js.map +1 -0
  433. package/presentation/FileList/components/FileDropArea/index.d.ts +1 -0
  434. package/presentation/FileList/components/FileDropArea/index.js +1 -0
  435. package/presentation/FileList/components/FileDropPlaceholder/FileDropPlaceholder.d.ts +2 -0
  436. package/presentation/FileList/components/FileDropPlaceholder/FileDropPlaceholder.js +11 -0
  437. package/presentation/FileList/components/FileDropPlaceholder/FileDropPlaceholder.js.map +1 -0
  438. package/presentation/FileList/components/FileDropPlaceholder/index.d.ts +1 -0
  439. package/presentation/FileList/components/FileDropPlaceholder/index.js +1 -0
  440. package/presentation/FileList/components/FilePicker/FilePicker.d.ts +11 -0
  441. package/presentation/FileList/components/FilePicker/FilePicker.js +28 -0
  442. package/presentation/FileList/components/FilePicker/FilePicker.js.map +1 -0
  443. package/presentation/FileList/components/Filters/FilterByType.d.ts +2 -0
  444. package/presentation/FileList/components/Filters/FilterByType.js +39 -0
  445. package/presentation/FileList/components/Filters/FilterByType.js.map +1 -0
  446. package/presentation/FileList/components/Filters/SubFoldersToggle.d.ts +9 -0
  447. package/presentation/FileList/components/Filters/SubFoldersToggle.js +25 -0
  448. package/presentation/FileList/components/Filters/SubFoldersToggle.js.map +1 -0
  449. package/presentation/FileList/components/Filters/TagsFilter.d.ts +9 -0
  450. package/presentation/FileList/components/Filters/TagsFilter.js +86 -0
  451. package/presentation/FileList/components/Filters/TagsFilter.js.map +1 -0
  452. package/presentation/FileList/components/Filters/TypeFilter.d.ts +8 -0
  453. package/presentation/FileList/components/Filters/TypeFilter.js +46 -0
  454. package/presentation/FileList/components/Filters/TypeFilter.js.map +1 -0
  455. package/presentation/FileList/components/Filters/index.d.ts +3 -0
  456. package/presentation/FileList/components/Filters/index.js +3 -0
  457. package/presentation/FileList/components/Grid/ActionButton.d.ts +9 -0
  458. package/presentation/FileList/components/Grid/ActionButton.js +24 -0
  459. package/presentation/FileList/components/Grid/ActionButton.js.map +1 -0
  460. package/presentation/FileList/components/Grid/File.d.ts +32 -0
  461. package/presentation/FileList/components/Grid/File.js +84 -0
  462. package/presentation/FileList/components/Grid/File.js.map +1 -0
  463. package/presentation/FileList/components/Grid/FileGrid.d.ts +9 -0
  464. package/presentation/FileList/components/Grid/FileGrid.js +162 -0
  465. package/presentation/FileList/components/Grid/FileGrid.js.map +1 -0
  466. package/presentation/FileList/components/Grid/FileGrid.test.d.ts +1 -0
  467. package/presentation/FileList/components/Grid/FileGrid.test.js +387 -0
  468. package/presentation/FileList/components/Grid/FileGrid.test.js.map +1 -0
  469. package/presentation/FileList/components/Grid/index.d.ts +1 -0
  470. package/presentation/FileList/components/Grid/index.js +1 -0
  471. package/presentation/FileList/components/Header/FileManagerHeader.d.ts +7 -0
  472. package/presentation/FileList/components/Header/FileManagerHeader.js +114 -0
  473. package/presentation/FileList/components/Header/FileManagerHeader.js.map +1 -0
  474. package/presentation/FileList/components/LayoutSwitch/LayoutSwitch.d.ts +2 -0
  475. package/presentation/FileList/components/LayoutSwitch/LayoutSwitch.js +24 -0
  476. package/presentation/FileList/components/LayoutSwitch/LayoutSwitch.js.map +1 -0
  477. package/presentation/FileList/components/LayoutSwitch/index.d.ts +1 -0
  478. package/presentation/FileList/components/LayoutSwitch/index.js +1 -0
  479. package/presentation/FileList/components/NoPermissions/NoPermissions.d.ts +2 -0
  480. package/presentation/FileList/components/NoPermissions/NoPermissions.js +27 -0
  481. package/presentation/FileList/components/NoPermissions/NoPermissions.js.map +1 -0
  482. package/presentation/FileList/components/NoPermissions/index.d.ts +1 -0
  483. package/presentation/FileList/components/NoPermissions/index.js +1 -0
  484. package/presentation/FileList/components/NoResults/NoResults.d.ts +2 -0
  485. package/presentation/FileList/components/NoResults/NoResults.js +21 -0
  486. package/presentation/FileList/components/NoResults/NoResults.js.map +1 -0
  487. package/presentation/FileList/components/NoResults/index.d.ts +1 -0
  488. package/presentation/FileList/components/NoResults/index.js +1 -0
  489. package/presentation/FileList/components/Search/SearchBar.d.ts +9 -0
  490. package/presentation/FileList/components/Search/SearchBar.js +33 -0
  491. package/presentation/FileList/components/Search/SearchBar.js.map +1 -0
  492. package/presentation/FileList/components/Search/index.d.ts +1 -0
  493. package/presentation/FileList/components/Search/index.js +1 -0
  494. package/presentation/FileList/components/Table/Actions/CopyFile.d.ts +2 -0
  495. package/presentation/FileList/components/Table/Actions/CopyFile.js +21 -0
  496. package/presentation/FileList/components/Table/Actions/CopyFile.js.map +1 -0
  497. package/presentation/FileList/components/Table/Actions/DeleteFile.d.ts +2 -0
  498. package/presentation/FileList/components/Table/Actions/DeleteFile.js +24 -0
  499. package/presentation/FileList/components/Table/Actions/DeleteFile.js.map +1 -0
  500. package/presentation/FileList/components/Table/Actions/EditFile.d.ts +2 -0
  501. package/presentation/FileList/components/Table/Actions/EditFile.js +19 -0
  502. package/presentation/FileList/components/Table/Actions/EditFile.js.map +1 -0
  503. package/presentation/FileList/components/Table/Actions/MoveFile.d.ts +2 -0
  504. package/presentation/FileList/components/Table/Actions/MoveFile.js +19 -0
  505. package/presentation/FileList/components/Table/Actions/MoveFile.js.map +1 -0
  506. package/presentation/FileList/components/Table/Actions/index.d.ts +4 -0
  507. package/presentation/FileList/components/Table/Actions/index.js +4 -0
  508. package/presentation/FileList/components/Table/Cells/CellActions.d.ts +2 -0
  509. package/presentation/FileList/components/Table/Cells/CellActions.js +28 -0
  510. package/presentation/FileList/components/Table/Cells/CellActions.js.map +1 -0
  511. package/presentation/FileList/components/Table/Cells/CellAuthor.d.ts +2 -0
  512. package/presentation/FileList/components/Table/Cells/CellAuthor.js +10 -0
  513. package/presentation/FileList/components/Table/Cells/CellAuthor.js.map +1 -0
  514. package/presentation/FileList/components/Table/Cells/CellCreated.d.ts +2 -0
  515. package/presentation/FileList/components/Table/Cells/CellCreated.js +13 -0
  516. package/presentation/FileList/components/Table/Cells/CellCreated.js.map +1 -0
  517. package/presentation/FileList/components/Table/Cells/CellModified.d.ts +2 -0
  518. package/presentation/FileList/components/Table/Cells/CellModified.js +13 -0
  519. package/presentation/FileList/components/Table/Cells/CellModified.js.map +1 -0
  520. package/presentation/FileList/components/Table/Cells/CellName.d.ts +16 -0
  521. package/presentation/FileList/components/Table/Cells/CellName.js +59 -0
  522. package/presentation/FileList/components/Table/Cells/CellName.js.map +1 -0
  523. package/presentation/FileList/components/Table/Cells/CellSize.d.ts +2 -0
  524. package/presentation/FileList/components/Table/Cells/CellSize.js +14 -0
  525. package/presentation/FileList/components/Table/Cells/CellSize.js.map +1 -0
  526. package/presentation/FileList/components/Table/Cells/CellThumbnail.d.ts +2 -0
  527. package/presentation/FileList/components/Table/Cells/CellThumbnail.js +12 -0
  528. package/presentation/FileList/components/Table/Cells/CellThumbnail.js.map +1 -0
  529. package/presentation/FileList/components/Table/Cells/CellType.d.ts +2 -0
  530. package/presentation/FileList/components/Table/Cells/CellType.js +11 -0
  531. package/presentation/FileList/components/Table/Cells/CellType.js.map +1 -0
  532. package/presentation/FileList/components/Table/Cells/index.d.ts +7 -0
  533. package/presentation/FileList/components/Table/Cells/index.js +7 -0
  534. package/presentation/FileList/components/Table/FileTable.d.ts +12 -0
  535. package/presentation/FileList/components/Table/FileTable.js +79 -0
  536. package/presentation/FileList/components/Table/FileTable.js.map +1 -0
  537. package/presentation/FileList/components/Table/FileTable.test.d.ts +1 -0
  538. package/presentation/FileList/components/Table/FileTable.test.js +365 -0
  539. package/presentation/FileList/components/Table/FileTable.test.js.map +1 -0
  540. package/presentation/FileList/components/Table/index.d.ts +4 -0
  541. package/presentation/FileList/components/Table/index.js +3 -0
  542. package/presentation/FileList/components/TagsList/Empty.d.ts +6 -0
  543. package/presentation/FileList/components/TagsList/Empty.js +8 -0
  544. package/presentation/FileList/components/TagsList/Empty.js.map +1 -0
  545. package/presentation/FileList/components/TagsList/FilterSelect.d.ts +2 -0
  546. package/presentation/FileList/components/TagsList/FilterSelect.js +38 -0
  547. package/presentation/FileList/components/TagsList/FilterSelect.js.map +1 -0
  548. package/presentation/FileList/components/TagsList/FilterStatus.d.ts +7 -0
  549. package/presentation/FileList/components/TagsList/FilterStatus.js +25 -0
  550. package/presentation/FileList/components/TagsList/FilterStatus.js.map +1 -0
  551. package/presentation/FileList/components/TagsList/Tag.d.ts +9 -0
  552. package/presentation/FileList/components/TagsList/Tag.js +11 -0
  553. package/presentation/FileList/components/TagsList/Tag.js.map +1 -0
  554. package/presentation/FileList/components/TagsList/Tags.d.ts +8 -0
  555. package/presentation/FileList/components/TagsList/Tags.js +30 -0
  556. package/presentation/FileList/components/TagsList/Tags.js.map +1 -0
  557. package/presentation/FileList/components/TagsList/TagsList.d.ts +11 -0
  558. package/presentation/FileList/components/TagsList/TagsList.js +24 -0
  559. package/presentation/FileList/components/TagsList/TagsList.js.map +1 -0
  560. package/presentation/FileList/components/TagsList/index.d.ts +1 -0
  561. package/presentation/FileList/components/TagsList/index.js +1 -0
  562. package/presentation/FileList/components/Thumbnail/Thumbnail.d.ts +2 -0
  563. package/presentation/FileList/components/Thumbnail/Thumbnail.js +12 -0
  564. package/presentation/FileList/components/Thumbnail/Thumbnail.js.map +1 -0
  565. package/presentation/FileList/components/Thumbnail/index.d.ts +1 -0
  566. package/presentation/FileList/components/Thumbnail/index.js +1 -0
  567. package/presentation/FileList/components/Upload/UploadProgress.d.ts +9 -0
  568. package/presentation/FileList/components/Upload/UploadProgress.js +45 -0
  569. package/presentation/FileList/components/Upload/UploadProgress.js.map +1 -0
  570. package/presentation/FileList/components/Upload/index.d.ts +1 -0
  571. package/presentation/FileList/components/Upload/index.js +1 -0
  572. package/presentation/FileList/feature.d.ts +3 -0
  573. package/presentation/FileList/feature.js +17 -0
  574. package/presentation/FileList/feature.js.map +1 -0
  575. package/presentation/FileList/index.d.ts +5 -0
  576. package/presentation/FileList/index.js +3 -0
  577. package/presentation/FileManager/FileManagerRenderer.d.ts +2 -0
  578. package/presentation/FileManager/FileManagerRenderer.js +33 -0
  579. package/presentation/FileManager/FileManagerRenderer.js.map +1 -0
  580. package/presentation/FileManager/FileManagerView.d.ts +12 -0
  581. package/presentation/FileManager/FileManagerView.js +246 -0
  582. package/presentation/FileManager/FileManagerView.js.map +1 -0
  583. package/presentation/FileManager/OverlayContext.d.ts +14 -0
  584. package/presentation/FileManager/OverlayContext.js +11 -0
  585. package/presentation/FileManager/OverlayContext.js.map +1 -0
  586. package/presentation/FileManager/outputFileSelectionError.d.ts +2 -0
  587. package/presentation/FileManager/outputFileSelectionError.js +27 -0
  588. package/presentation/FileManager/outputFileSelectionError.js.map +1 -0
  589. package/presentation/Settings/SettingsPresenter.d.ts +14 -0
  590. package/presentation/Settings/SettingsPresenter.js +78 -0
  591. package/presentation/Settings/SettingsPresenter.js.map +1 -0
  592. package/presentation/Settings/components/SettingsView.d.ts +4 -0
  593. package/presentation/Settings/components/SettingsView.js +45 -0
  594. package/presentation/Settings/components/SettingsView.js.map +1 -0
  595. package/presentation/config/DefaultFileManagerConfig.d.ts +2 -0
  596. package/presentation/config/DefaultFileManagerConfig.js +118 -0
  597. package/presentation/config/DefaultFileManagerConfig.js.map +1 -0
  598. package/presentation/config/FileManagerViewConfig.d.ts +248 -0
  599. package/presentation/config/FileManagerViewConfig.js +74 -0
  600. package/presentation/config/FileManagerViewConfig.js.map +1 -0
  601. package/presentation/config/configComponents/Browser/BulkAction.d.ts +26 -0
  602. package/presentation/config/configComponents/Browser/BulkAction.js +57 -0
  603. package/presentation/config/configComponents/Browser/BulkAction.js.map +1 -0
  604. package/presentation/config/configComponents/Browser/BulkEditField.d.ts +10 -0
  605. package/presentation/config/configComponents/Browser/BulkEditField.js +24 -0
  606. package/presentation/config/configComponents/Browser/BulkEditField.js.map +1 -0
  607. package/presentation/config/configComponents/Browser/FileAction.d.ts +8 -0
  608. package/presentation/config/configComponents/Browser/FileAction.js +11 -0
  609. package/presentation/config/configComponents/Browser/FileAction.js.map +1 -0
  610. package/presentation/config/configComponents/Browser/Filter.d.ts +39 -0
  611. package/presentation/config/configComponents/Browser/Filter.js +37 -0
  612. package/presentation/config/configComponents/Browser/Filter.js.map +1 -0
  613. package/presentation/config/configComponents/Browser/FilterByTags.d.ts +5 -0
  614. package/presentation/config/configComponents/Browser/FilterByTags.js +14 -0
  615. package/presentation/config/configComponents/Browser/FilterByTags.js.map +1 -0
  616. package/presentation/config/configComponents/Browser/FiltersToWhere.d.ts +7 -0
  617. package/presentation/config/configComponents/Browser/FiltersToWhere.js +13 -0
  618. package/presentation/config/configComponents/Browser/FiltersToWhere.js.map +1 -0
  619. package/presentation/config/configComponents/Browser/FolderAction.d.ts +7 -0
  620. package/presentation/config/configComponents/Browser/FolderAction.js +10 -0
  621. package/presentation/config/configComponents/Browser/FolderAction.js.map +1 -0
  622. package/presentation/config/configComponents/Browser/FolderDropConfirmation.d.ts +5 -0
  623. package/presentation/config/configComponents/Browser/FolderDropConfirmation.js +7 -0
  624. package/presentation/config/configComponents/Browser/FolderDropConfirmation.js.map +1 -0
  625. package/presentation/config/configComponents/Browser/FolderFieldDecorator.d.ts +7 -0
  626. package/presentation/config/configComponents/Browser/FolderFieldDecorator.js +11 -0
  627. package/presentation/config/configComponents/Browser/FolderFieldDecorator.js.map +1 -0
  628. package/presentation/config/configComponents/Browser/Grid/Action.d.ts +31 -0
  629. package/presentation/config/configComponents/Browser/Grid/Action.js +33 -0
  630. package/presentation/config/configComponents/Browser/Grid/Action.js.map +1 -0
  631. package/presentation/config/configComponents/Browser/Grid/Thumbnail.d.ts +28 -0
  632. package/presentation/config/configComponents/Browser/Grid/Thumbnail.js +28 -0
  633. package/presentation/config/configComponents/Browser/Grid/Thumbnail.js.map +1 -0
  634. package/presentation/config/configComponents/Browser/Grid/index.d.ts +6 -0
  635. package/presentation/config/configComponents/Browser/Grid/index.js +0 -0
  636. package/presentation/config/configComponents/Browser/Table/Column.d.ts +32 -0
  637. package/presentation/config/configComponents/Browser/Table/Column.js +13 -0
  638. package/presentation/config/configComponents/Browser/Table/Column.js.map +1 -0
  639. package/presentation/config/configComponents/Browser/Table/Thumbnail.d.ts +28 -0
  640. package/presentation/config/configComponents/Browser/Table/Thumbnail.js +28 -0
  641. package/presentation/config/configComponents/Browser/Table/Thumbnail.js.map +1 -0
  642. package/presentation/config/configComponents/Browser/Table/index.d.ts +56 -0
  643. package/presentation/config/configComponents/Browser/Table/index.js +11 -0
  644. package/presentation/config/configComponents/Browser/Table/index.js.map +1 -0
  645. package/presentation/config/configComponents/Browser/index.d.ts +189 -0
  646. package/presentation/config/configComponents/Browser/index.js +47 -0
  647. package/presentation/config/configComponents/Browser/index.js.map +1 -0
  648. package/presentation/config/configComponents/FileDetails/Action.d.ts +31 -0
  649. package/presentation/config/configComponents/FileDetails/Action.js +30 -0
  650. package/presentation/config/configComponents/FileDetails/Action.js.map +1 -0
  651. package/presentation/config/configComponents/FileDetails/Thumbnail.d.ts +28 -0
  652. package/presentation/config/configComponents/FileDetails/Thumbnail.js +25 -0
  653. package/presentation/config/configComponents/FileDetails/Thumbnail.js.map +1 -0
  654. package/presentation/config/configComponents/FileDetails/Width.d.ts +5 -0
  655. package/presentation/config/configComponents/FileDetails/Width.js +13 -0
  656. package/presentation/config/configComponents/FileDetails/Width.js.map +1 -0
  657. package/presentation/config/configComponents/FileDetails/index.d.ts +52 -0
  658. package/presentation/config/configComponents/FileDetails/index.js +16 -0
  659. package/presentation/config/configComponents/FileDetails/index.js.map +1 -0
  660. package/presentation/config/fields/AccessControl.d.ts +7 -0
  661. package/presentation/config/fields/AccessControl.js +38 -0
  662. package/presentation/config/fields/AccessControl.js.map +1 -0
  663. package/presentation/config/fields/Tags.d.ts +2 -0
  664. package/presentation/config/fields/Tags.js +32 -0
  665. package/presentation/config/fields/Tags.js.map +1 -0
  666. package/presentation/config/fields/index.d.ts +2 -0
  667. package/presentation/config/fields/index.js +2 -0
  668. package/presentation/config/fields/useAccessControlField.d.ts +6 -0
  669. package/presentation/config/fields/useAccessControlField.js +21 -0
  670. package/presentation/config/fields/useAccessControlField.js.map +1 -0
  671. package/presentation/config/fields/useFileOrUndefined.d.ts +3 -0
  672. package/presentation/config/fields/useFileOrUndefined.js +13 -0
  673. package/presentation/config/fields/useFileOrUndefined.js.map +1 -0
  674. package/presentation/config/getThumbnailRenderer.d.ts +4 -0
  675. package/presentation/config/getThumbnailRenderer.js +16 -0
  676. package/presentation/config/getThumbnailRenderer.js.map +1 -0
  677. package/presentation/config/thumbnailRenderers/FilePreviewDefaultRenderer.d.ts +2 -0
  678. package/presentation/config/thumbnailRenderers/FilePreviewDefaultRenderer.js +11 -0
  679. package/presentation/config/thumbnailRenderers/FilePreviewDefaultRenderer.js.map +1 -0
  680. package/presentation/config/thumbnailRenderers/FilePreviewImageRenderer.d.ts +2 -0
  681. package/presentation/config/thumbnailRenderers/FilePreviewImageRenderer.js +18 -0
  682. package/presentation/config/thumbnailRenderers/FilePreviewImageRenderer.js.map +1 -0
  683. package/presentation/config/thumbnailRenderers/GridItemDefaultRenderer.d.ts +2 -0
  684. package/presentation/config/thumbnailRenderers/GridItemDefaultRenderer.js +11 -0
  685. package/presentation/config/thumbnailRenderers/GridItemDefaultRenderer.js.map +1 -0
  686. package/presentation/config/thumbnailRenderers/GridItemImageRenderer.d.ts +2 -0
  687. package/presentation/config/thumbnailRenderers/GridItemImageRenderer.js +18 -0
  688. package/presentation/config/thumbnailRenderers/GridItemImageRenderer.js.map +1 -0
  689. package/presentation/config/thumbnailRenderers/TableItemDefaultRenderer.d.ts +2 -0
  690. package/presentation/config/thumbnailRenderers/TableItemDefaultRenderer.js +18 -0
  691. package/presentation/config/thumbnailRenderers/TableItemDefaultRenderer.js.map +1 -0
  692. package/presentation/config/thumbnailRenderers/TableItemImageRenderer.d.ts +2 -0
  693. package/presentation/config/thumbnailRenderers/TableItemImageRenderer.js +18 -0
  694. package/presentation/config/thumbnailRenderers/TableItemImageRenderer.js.map +1 -0
  695. package/presentation/contexts/FileProvider.d.ts +12 -0
  696. package/presentation/contexts/FileProvider.js +13 -0
  697. package/presentation/contexts/FileProvider.js.map +1 -0
  698. package/presentation/hooks/useCopyFile.d.ts +11 -0
  699. package/presentation/hooks/useCopyFile.js +24 -0
  700. package/presentation/hooks/useCopyFile.js.map +1 -0
  701. package/presentation/hooks/useDeleteFile.d.ts +9 -0
  702. package/presentation/hooks/useDeleteFile.js +35 -0
  703. package/presentation/hooks/useDeleteFile.js.map +1 -0
  704. package/presentation/hooks/useFile.d.ts +2 -0
  705. package/presentation/hooks/useFile.js +10 -0
  706. package/presentation/hooks/useFile.js.map +1 -0
  707. package/presentation/hooks/useMoveFileToFolder.d.ts +2 -0
  708. package/presentation/hooks/useMoveFileToFolder.js +36 -0
  709. package/presentation/hooks/useMoveFileToFolder.js.map +1 -0
  710. package/routes.d.ts +7 -0
  711. package/routes.js +17 -0
  712. package/routes.js.map +1 -0
  713. package/static/svg/folder-open.ae8d0fac.svg +1 -0
  714. package/admin/graphql.js +0 -24
  715. package/admin/graphql.js.map +0 -1
  716. package/admin/index.d.ts +0 -2
  717. package/admin/index.js +0 -16
  718. package/admin/index.js.map +0 -1
  719. package/admin/plugins/index.d.ts +0 -2
  720. package/admin/plugins/index.js +0 -18
  721. package/admin/plugins/index.js.map +0 -1
  722. package/admin/plugins/installation.d.ts +0 -3
  723. package/admin/plugins/installation.js +0 -134
  724. package/admin/plugins/installation.js.map +0 -1
  725. package/admin/plugins/permissionRenderer/FileManagerPermissions.d.ts +0 -14
  726. package/admin/plugins/permissionRenderer/FileManagerPermissions.js +0 -249
  727. package/admin/plugins/permissionRenderer/FileManagerPermissions.js.map +0 -1
  728. package/admin/plugins/permissionRenderer/index.d.ts +0 -3
  729. package/admin/plugins/permissionRenderer/index.js +0 -38
  730. package/admin/plugins/permissionRenderer/index.js.map +0 -1
  731. package/admin/views/FileManagerSettings.d.ts +0 -3
  732. package/admin/views/FileManagerSettings.js +0 -162
  733. package/admin/views/FileManagerSettings.js.map +0 -1
  734. package/index.js.map +0 -1
  735. package/types.d.ts +0 -26
  736. package/types.js +0 -5
  737. package/types.js.map +0 -1
  738. /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,2 @@
1
+ import React from "react";
2
+ export declare const FileDropPlaceholder: () => React.JSX.Element;
@@ -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,2 @@
1
+ import React from "react";
2
+ export declare const FilterByType: () => React.JSX.Element;
@@ -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,8 @@
1
+ import React from "react";
2
+ /**
3
+ * File type filter component wired to the FileListPresenter.
4
+ * Sets the "type" filter via presenter.actions.filter.set/clear.
5
+ */
6
+ export declare const TypeFilter: (() => React.JSX.Element) & {
7
+ displayName: string;
8
+ };
@@ -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,3 @@
1
+ export { TypeFilter } from "./TypeFilter.js";
2
+ export { TagsFilter } from "./TagsFilter.js";
3
+ export { SubFoldersToggle } from "./SubFoldersToggle.js";
@@ -0,0 +1,3 @@
1
+ export { TypeFilter } from "./TypeFilter.js";
2
+ export { TagsFilter } from "./TagsFilter.js";
3
+ export { SubFoldersToggle } from "./SubFoldersToggle.js";
@@ -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
+ };