@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,28 @@
1
+ import { WebinySdk } from "@webiny/app-admin/features/webinySdk/abstractions.js";
2
+ import { FileFieldsProvider } from "../shared/abstractions.js";
3
+ import { GetFileGateway } from "./abstractions.js";
4
+ class GetFileGatewayImpl {
5
+ constructor(sdk, fileFieldsProvider){
6
+ this.sdk = sdk;
7
+ this.fileFieldsProvider = fileFieldsProvider;
8
+ }
9
+ async execute(params) {
10
+ const fields = await this.fileFieldsProvider.execute();
11
+ const result = await this.sdk.fileManager.getFile({
12
+ id: params.id,
13
+ fields
14
+ });
15
+ if (result.isFail()) throw new Error(result.error.message);
16
+ return result.value;
17
+ }
18
+ }
19
+ const GetFileGateway_GetFileGateway = GetFileGateway.createImplementation({
20
+ implementation: GetFileGatewayImpl,
21
+ dependencies: [
22
+ WebinySdk,
23
+ FileFieldsProvider
24
+ ]
25
+ });
26
+ export { GetFileGateway_GetFileGateway as GetFileGateway };
27
+
28
+ //# sourceMappingURL=GetFileGateway.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/getFile/GetFileGateway.js","sources":["../../../src/features/getFile/GetFileGateway.ts"],"sourcesContent":["import { WebinySdk } from \"@webiny/app-admin/features/webinySdk/abstractions.js\";\nimport type { FmFile } from \"../shared/types.js\";\nimport { FileFieldsProvider } from \"../shared/abstractions.js\";\nimport { GetFileGateway as GatewayAbstraction, type GetFileGatewayParams } from \"./abstractions.js\";\n\nclass GetFileGatewayImpl implements GatewayAbstraction.Interface {\n constructor(\n private sdk: WebinySdk.Interface,\n private fileFieldsProvider: FileFieldsProvider.Interface\n ) {}\n\n async execute(params: GetFileGatewayParams): Promise<FmFile> {\n const fields = await this.fileFieldsProvider.execute();\n const result = await this.sdk.fileManager.getFile({\n id: params.id,\n fields\n });\n\n if (result.isFail()) {\n throw new Error(result.error.message);\n }\n\n return result.value;\n }\n}\n\nexport const GetFileGateway = GatewayAbstraction.createImplementation({\n implementation: GetFileGatewayImpl,\n dependencies: [WebinySdk, FileFieldsProvider]\n});\n"],"names":["GetFileGatewayImpl","sdk","fileFieldsProvider","params","fields","result","Error","GetFileGateway","GatewayAbstraction","WebinySdk","FileFieldsProvider"],"mappings":";;;AAKA,MAAMA;IACF,YACYC,GAAwB,EACxBC,kBAAgD,CAC1D;aAFUD,GAAG,GAAHA;aACAC,kBAAkB,GAAlBA;IACT;IAEH,MAAM,QAAQC,MAA4B,EAAmB;QACzD,MAAMC,SAAS,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO;QACpD,MAAMC,SAAS,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,OAAO,CAAC;YAC9C,IAAIF,OAAO,EAAE;YACbC;QACJ;QAEA,IAAIC,OAAO,MAAM,IACb,MAAM,IAAIC,MAAMD,OAAO,KAAK,CAAC,OAAO;QAGxC,OAAOA,OAAO,KAAK;IACvB;AACJ;AAEO,MAAME,gCAAiBC,eAAAA,oBAAuC,CAAC;IAClE,gBAAgBR;IAChB,cAAc;QAACS;QAAWC;KAAmB;AACjD"}
@@ -0,0 +1,11 @@
1
+ import type { FmFile } from "../shared/types.js";
2
+ import { GetFileRepository as RepositoryAbstraction, GetFileGateway, type GetFileGatewayParams } from "./abstractions.js";
3
+ declare class GetFileRepositoryImpl implements RepositoryAbstraction.Interface {
4
+ private gateway;
5
+ constructor(gateway: GetFileGateway.Interface);
6
+ execute(params: GetFileGatewayParams): Promise<FmFile>;
7
+ }
8
+ export declare const GetFileRepository: typeof GetFileRepositoryImpl & {
9
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IGetFileRepository>;
10
+ };
11
+ export {};
@@ -0,0 +1,18 @@
1
+ import { GetFileGateway, GetFileRepository } from "./abstractions.js";
2
+ class GetFileRepositoryImpl {
3
+ constructor(gateway){
4
+ this.gateway = gateway;
5
+ }
6
+ async execute(params) {
7
+ return this.gateway.execute(params);
8
+ }
9
+ }
10
+ const GetFileRepository_GetFileRepository = GetFileRepository.createImplementation({
11
+ implementation: GetFileRepositoryImpl,
12
+ dependencies: [
13
+ GetFileGateway
14
+ ]
15
+ });
16
+ export { GetFileRepository_GetFileRepository as GetFileRepository };
17
+
18
+ //# sourceMappingURL=GetFileRepository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/getFile/GetFileRepository.js","sources":["../../../src/features/getFile/GetFileRepository.ts"],"sourcesContent":["import type { FmFile } from \"../shared/types.js\";\nimport {\n GetFileRepository as RepositoryAbstraction,\n GetFileGateway,\n type GetFileGatewayParams\n} from \"./abstractions.js\";\n\nclass GetFileRepositoryImpl implements RepositoryAbstraction.Interface {\n constructor(private gateway: GetFileGateway.Interface) {}\n\n async execute(params: GetFileGatewayParams): Promise<FmFile> {\n return this.gateway.execute(params);\n }\n}\n\nexport const GetFileRepository = RepositoryAbstraction.createImplementation({\n implementation: GetFileRepositoryImpl,\n dependencies: [GetFileGateway]\n});\n"],"names":["GetFileRepositoryImpl","gateway","params","GetFileRepository","RepositoryAbstraction","GetFileGateway"],"mappings":";AAOA,MAAMA;IACF,YAAoBC,OAAiC,CAAE;aAAnCA,OAAO,GAAPA;IAAoC;IAExD,MAAM,QAAQC,MAA4B,EAAmB;QACzD,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAACA;IAChC;AACJ;AAEO,MAAMC,sCAAoBC,kBAAAA,oBAA0C,CAAC;IACxE,gBAAgBJ;IAChB,cAAc;QAACK;KAAe;AAClC"}
@@ -0,0 +1,10 @@
1
+ import { GetFileUseCase as UseCaseAbstraction, GetFileRepository, type GetFileUseCaseParams, type GetFileUseCaseResult } from "./abstractions.js";
2
+ declare class GetFileUseCaseImpl implements UseCaseAbstraction.Interface {
3
+ private repository;
4
+ constructor(repository: GetFileRepository.Interface);
5
+ execute(params: GetFileUseCaseParams): Promise<GetFileUseCaseResult>;
6
+ }
7
+ export declare const GetFileUseCase: typeof GetFileUseCaseImpl & {
8
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IGetFileUseCase>;
9
+ };
10
+ export {};
@@ -0,0 +1,35 @@
1
+ import { GetFileRepository, GetFileUseCase } from "./abstractions.js";
2
+ class GetFileUseCaseImpl {
3
+ constructor(repository){
4
+ this.repository = repository;
5
+ }
6
+ async execute(params) {
7
+ try {
8
+ const file = await this.repository.execute({
9
+ id: params.id
10
+ });
11
+ return {
12
+ success: true,
13
+ file
14
+ };
15
+ } catch (error) {
16
+ const message = error instanceof Error ? error.message : "Unknown error";
17
+ return {
18
+ success: false,
19
+ error: {
20
+ code: "GET_FILE_ERROR",
21
+ message
22
+ }
23
+ };
24
+ }
25
+ }
26
+ }
27
+ const GetFileUseCase_GetFileUseCase = GetFileUseCase.createImplementation({
28
+ implementation: GetFileUseCaseImpl,
29
+ dependencies: [
30
+ GetFileRepository
31
+ ]
32
+ });
33
+ export { GetFileUseCase_GetFileUseCase as GetFileUseCase };
34
+
35
+ //# sourceMappingURL=GetFileUseCase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/getFile/GetFileUseCase.js","sources":["../../../src/features/getFile/GetFileUseCase.ts"],"sourcesContent":["import {\n GetFileUseCase as UseCaseAbstraction,\n GetFileRepository,\n type GetFileUseCaseParams,\n type GetFileUseCaseResult\n} from \"./abstractions.js\";\n\nclass GetFileUseCaseImpl implements UseCaseAbstraction.Interface {\n constructor(private repository: GetFileRepository.Interface) {}\n\n async execute(params: GetFileUseCaseParams): Promise<GetFileUseCaseResult> {\n try {\n const file = await this.repository.execute({ id: params.id });\n return { success: true, file };\n } catch (error) {\n const message = error instanceof Error ? error.message : \"Unknown error\";\n return { success: false, error: { code: \"GET_FILE_ERROR\", message } };\n }\n }\n}\n\nexport const GetFileUseCase = UseCaseAbstraction.createImplementation({\n implementation: GetFileUseCaseImpl,\n dependencies: [GetFileRepository]\n});\n"],"names":["GetFileUseCaseImpl","repository","params","file","error","message","Error","GetFileUseCase","UseCaseAbstraction","GetFileRepository"],"mappings":";AAOA,MAAMA;IACF,YAAoBC,UAAuC,CAAE;aAAzCA,UAAU,GAAVA;IAA0C;IAE9D,MAAM,QAAQC,MAA4B,EAAiC;QACvE,IAAI;YACA,MAAMC,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;gBAAE,IAAID,OAAO,EAAE;YAAC;YAC3D,OAAO;gBAAE,SAAS;gBAAMC;YAAK;QACjC,EAAE,OAAOC,OAAO;YACZ,MAAMC,UAAUD,iBAAiBE,QAAQF,MAAM,OAAO,GAAG;YACzD,OAAO;gBAAE,SAAS;gBAAO,OAAO;oBAAE,MAAM;oBAAkBC;gBAAQ;YAAE;QACxE;IACJ;AACJ;AAEO,MAAME,gCAAiBC,eAAAA,oBAAuC,CAAC;IAClE,gBAAgBR;IAChB,cAAc;QAACS;KAAkB;AACrC"}
@@ -0,0 +1,38 @@
1
+ import type { FmFile } from "../shared/types.js";
2
+ export interface IGetFileGateway {
3
+ execute(params: GetFileGatewayParams): Promise<FmFile>;
4
+ }
5
+ export interface GetFileGatewayParams {
6
+ id: string;
7
+ }
8
+ export declare const GetFileGateway: import("@webiny/di").Abstraction<IGetFileGateway>;
9
+ export declare namespace GetFileGateway {
10
+ type Interface = IGetFileGateway;
11
+ }
12
+ export interface IGetFileRepository {
13
+ execute(params: GetFileGatewayParams): Promise<FmFile>;
14
+ }
15
+ export declare const GetFileRepository: import("@webiny/di").Abstraction<IGetFileRepository>;
16
+ export declare namespace GetFileRepository {
17
+ type Interface = IGetFileRepository;
18
+ }
19
+ export interface GetFileUseCaseParams {
20
+ id: string;
21
+ }
22
+ export type GetFileUseCaseResult = {
23
+ success: true;
24
+ file: FmFile;
25
+ } | {
26
+ success: false;
27
+ error: {
28
+ code: string;
29
+ message: string;
30
+ };
31
+ };
32
+ export interface IGetFileUseCase {
33
+ execute(params: GetFileUseCaseParams): Promise<GetFileUseCaseResult>;
34
+ }
35
+ export declare const GetFileUseCase: import("@webiny/di").Abstraction<IGetFileUseCase>;
36
+ export declare namespace GetFileUseCase {
37
+ type Interface = IGetFileUseCase;
38
+ }
@@ -0,0 +1,7 @@
1
+ import { createAbstraction } from "@webiny/feature/admin";
2
+ const GetFileGateway = createAbstraction("GetFileGateway");
3
+ const GetFileRepository = createAbstraction("GetFileRepository");
4
+ const GetFileUseCase = createAbstraction("GetFileUseCase");
5
+ export { GetFileGateway, GetFileRepository, GetFileUseCase };
6
+
7
+ //# sourceMappingURL=abstractions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/getFile/abstractions.js","sources":["../../../src/features/getFile/abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/admin\";\nimport type { FmFile } from \"../shared/types.js\";\n\n// Gateway — performs the API call via @webiny/sdk.\nexport interface IGetFileGateway {\n execute(params: GetFileGatewayParams): Promise<FmFile>;\n}\n\nexport interface GetFileGatewayParams {\n id: string;\n}\n\nexport const GetFileGateway = createAbstraction<IGetFileGateway>(\"GetFileGateway\");\n\nexport namespace GetFileGateway {\n export type Interface = IGetFileGateway;\n}\n\n// Repository — delegates I/O to the gateway and updates the shared cache.\nexport interface IGetFileRepository {\n execute(params: GetFileGatewayParams): Promise<FmFile>;\n}\n\nexport const GetFileRepository = createAbstraction<IGetFileRepository>(\"GetFileRepository\");\n\nexport namespace GetFileRepository {\n export type Interface = IGetFileRepository;\n}\n\n// UseCase — orchestrates a single get-file operation.\nexport interface GetFileUseCaseParams {\n id: string;\n}\n\nexport type GetFileUseCaseResult =\n | { success: true; file: FmFile }\n | { success: false; error: { code: string; message: string } };\n\nexport interface IGetFileUseCase {\n execute(params: GetFileUseCaseParams): Promise<GetFileUseCaseResult>;\n}\n\nexport const GetFileUseCase = createAbstraction<IGetFileUseCase>(\"GetFileUseCase\");\n\nexport namespace GetFileUseCase {\n export type Interface = IGetFileUseCase;\n}\n"],"names":["GetFileGateway","createAbstraction","GetFileRepository","GetFileUseCase"],"mappings":";AAYO,MAAMA,iBAAiBC,kBAAmC;AAW1D,MAAMC,oBAAoBD,kBAAsC;AAmBhE,MAAME,iBAAiBF,kBAAmC"}
@@ -0,0 +1,3 @@
1
+ export declare const GetFileFeature: import("@webiny/feature/admin").FeatureDefinition<{
2
+ useCase: import("./abstractions.js").IGetFileUseCase;
3
+ }, []>;
@@ -0,0 +1,21 @@
1
+ import { createFeature } from "@webiny/feature/admin";
2
+ import { GetFileUseCase } from "./abstractions.js";
3
+ import { GetFileUseCase as external_GetFileUseCase_js_GetFileUseCase } from "./GetFileUseCase.js";
4
+ import { GetFileRepository } from "./GetFileRepository.js";
5
+ import { GetFileGateway } from "./GetFileGateway.js";
6
+ const GetFileFeature = createFeature({
7
+ name: "FileManager/GetFile",
8
+ register (container) {
9
+ container.register(external_GetFileUseCase_js_GetFileUseCase);
10
+ container.register(GetFileRepository).inSingletonScope();
11
+ container.register(GetFileGateway).inSingletonScope();
12
+ },
13
+ resolve (container) {
14
+ return {
15
+ useCase: container.resolve(GetFileUseCase)
16
+ };
17
+ }
18
+ });
19
+ export { GetFileFeature };
20
+
21
+ //# sourceMappingURL=feature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/getFile/feature.js","sources":["../../../src/features/getFile/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/admin\";\nimport { GetFileUseCase as UseCaseAbstraction } from \"./abstractions.js\";\nimport { GetFileUseCase } from \"./GetFileUseCase.js\";\nimport { GetFileRepository } from \"./GetFileRepository.js\";\nimport { GetFileGateway } from \"./GetFileGateway.js\";\n\nexport const GetFileFeature = createFeature({\n name: \"FileManager/GetFile\",\n register(container) {\n container.register(GetFileUseCase);\n container.register(GetFileRepository).inSingletonScope();\n container.register(GetFileGateway).inSingletonScope();\n },\n resolve(container) {\n return {\n useCase: container.resolve(UseCaseAbstraction)\n };\n }\n});\n"],"names":["GetFileFeature","createFeature","container","GetFileUseCase","GetFileRepository","GetFileGateway","UseCaseAbstraction"],"mappings":";;;;;AAMO,MAAMA,iBAAiBC,cAAc;IACxC,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC;QACnBD,UAAU,QAAQ,CAACE,mBAAmB,gBAAgB;QACtDF,UAAU,QAAQ,CAACG,gBAAgB,gBAAgB;IACvD;IACA,SAAQH,SAAS;QACb,OAAO;YACH,SAASA,UAAU,OAAO,CAACI;QAC/B;IACJ;AACJ"}
@@ -0,0 +1,3 @@
1
+ export { GetFileFeature } from "./feature.js";
2
+ export { GetFileUseCase, GetFileRepository, GetFileGateway } from "./abstractions.js";
3
+ export type { IGetFileUseCase, IGetFileRepository, IGetFileGateway, GetFileUseCaseParams, GetFileUseCaseResult, GetFileGatewayParams } from "./abstractions.js";
@@ -0,0 +1,2 @@
1
+ export { GetFileFeature } from "./feature.js";
2
+ export { GetFileGateway, GetFileRepository, GetFileUseCase } from "./abstractions.js";
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,192 @@
1
+ import { beforeEach, describe, expect, it, vi } from "vitest";
2
+ import { Container } from "@webiny/di";
3
+ import { ListCache } from "@webiny/app-admin/features/listCache/index.js";
4
+ import { FilesListCache } from "../shared/abstractions.js";
5
+ import { ListFilesGateway, ListFilesUseCase } from "./abstractions.js";
6
+ import { ListFilesUseCase as external_ListFilesUseCase_js_ListFilesUseCase } from "./ListFilesUseCase.js";
7
+ import { ListFilesRepository } from "./ListFilesRepository.js";
8
+ function createFile(index) {
9
+ return {
10
+ id: `file-${index}`,
11
+ name: `File ${index}`,
12
+ key: `files/file-${index}.txt`,
13
+ src: `https://cdn.example.com/files/file-${index}.txt`,
14
+ type: "text/plain",
15
+ size: 100 * index,
16
+ metadata: {},
17
+ tags: [],
18
+ createdOn: "2025-01-01T00:00:00Z",
19
+ savedOn: "2025-01-01T00:00:00Z",
20
+ createdBy: {
21
+ id: "user-1",
22
+ displayName: "Test User",
23
+ type: "admin"
24
+ },
25
+ savedBy: {
26
+ id: "user-1",
27
+ displayName: "Test User",
28
+ type: "admin"
29
+ },
30
+ location: {
31
+ folderId: "root"
32
+ }
33
+ };
34
+ }
35
+ function createFiles(count) {
36
+ return Array.from({
37
+ length: count
38
+ }, (_, i)=>createFile(i));
39
+ }
40
+ function createMockGateway(files = createFiles(3), meta = {
41
+ cursor: null,
42
+ hasMoreItems: false,
43
+ totalCount: files.length
44
+ }) {
45
+ const execute = vi.fn();
46
+ execute.mockResolvedValue({
47
+ data: files,
48
+ meta
49
+ });
50
+ return {
51
+ execute
52
+ };
53
+ }
54
+ function createContainer(mockGateway) {
55
+ const container = new Container();
56
+ const cache = new ListCache();
57
+ container.registerInstance(ListFilesGateway, mockGateway);
58
+ container.registerInstance(FilesListCache, cache);
59
+ container.register(ListFilesRepository).inSingletonScope();
60
+ container.register(external_ListFilesUseCase_js_ListFilesUseCase);
61
+ return {
62
+ container,
63
+ cache
64
+ };
65
+ }
66
+ describe("ListFiles Feature", ()=>{
67
+ let mockGateway;
68
+ let cache;
69
+ let container;
70
+ beforeEach(()=>{
71
+ mockGateway = createMockGateway();
72
+ const result = createContainer(mockGateway);
73
+ container = result.container;
74
+ cache = result.cache;
75
+ });
76
+ it("should call gateway with the provided params", async ()=>{
77
+ const useCase = container.resolve(ListFilesUseCase);
78
+ await useCase.execute({
79
+ search: "hello",
80
+ where: {
81
+ type_in: [
82
+ "image/png"
83
+ ]
84
+ },
85
+ sort: [
86
+ "name_ASC"
87
+ ],
88
+ limit: 10,
89
+ after: "cursor-abc"
90
+ });
91
+ expect(mockGateway.execute).toHaveBeenCalledWith({
92
+ search: "hello",
93
+ where: {
94
+ type_in: [
95
+ "image/png"
96
+ ]
97
+ },
98
+ sort: [
99
+ "name_ASC"
100
+ ],
101
+ limit: 10,
102
+ after: "cursor-abc"
103
+ });
104
+ });
105
+ it("should call gateway with undefined optional params when not provided", async ()=>{
106
+ const useCase = container.resolve(ListFilesUseCase);
107
+ await useCase.execute({});
108
+ expect(mockGateway.execute).toHaveBeenCalledWith({
109
+ search: void 0,
110
+ where: void 0,
111
+ sort: void 0,
112
+ limit: void 0,
113
+ after: void 0
114
+ });
115
+ });
116
+ it("should return files and meta from the gateway", async ()=>{
117
+ const files = createFiles(5);
118
+ const meta = {
119
+ cursor: "next-cursor",
120
+ hasMoreItems: true,
121
+ totalCount: 10
122
+ };
123
+ mockGateway.execute.mockResolvedValue({
124
+ data: files,
125
+ meta
126
+ });
127
+ const useCase = container.resolve(ListFilesUseCase);
128
+ const result = await useCase.execute({});
129
+ expect(result.data).toEqual(files);
130
+ expect(result.meta).toEqual(meta);
131
+ });
132
+ it("should populate FilesListCache after fetch", async ()=>{
133
+ const files = createFiles(3);
134
+ mockGateway.execute.mockResolvedValue({
135
+ data: files,
136
+ meta: {
137
+ cursor: null,
138
+ hasMoreItems: false,
139
+ totalCount: 3
140
+ }
141
+ });
142
+ expect(cache.hasItems()).toBe(false);
143
+ const useCase = container.resolve(ListFilesUseCase);
144
+ await useCase.execute({});
145
+ expect(cache.hasItems()).toBe(true);
146
+ expect(cache.getItems()).toEqual(files);
147
+ });
148
+ it("should support cursor-based pagination", async ()=>{
149
+ const page1 = createFiles(3);
150
+ const page2 = [
151
+ createFile(3),
152
+ createFile(4)
153
+ ];
154
+ mockGateway.execute.mockResolvedValueOnce({
155
+ data: page1,
156
+ meta: {
157
+ cursor: "page2-cursor",
158
+ hasMoreItems: true,
159
+ totalCount: 5
160
+ }
161
+ }).mockResolvedValueOnce({
162
+ data: page2,
163
+ meta: {
164
+ cursor: null,
165
+ hasMoreItems: false,
166
+ totalCount: 5
167
+ }
168
+ });
169
+ const useCase = container.resolve(ListFilesUseCase);
170
+ const result1 = await useCase.execute({
171
+ limit: 3
172
+ });
173
+ expect(result1.data).toEqual(page1);
174
+ expect(result1.meta.cursor).toBe("page2-cursor");
175
+ expect(result1.meta.hasMoreItems).toBe(true);
176
+ const result2 = await useCase.execute({
177
+ limit: 3,
178
+ after: "page2-cursor"
179
+ });
180
+ expect(result2.data).toEqual(page2);
181
+ expect(result2.meta.cursor).toBeNull();
182
+ expect(result2.meta.hasMoreItems).toBe(false);
183
+ expect(cache.count()).toBe(5);
184
+ });
185
+ it("should propagate gateway errors", async ()=>{
186
+ mockGateway.execute.mockRejectedValue(new Error("Network error"));
187
+ const useCase = container.resolve(ListFilesUseCase);
188
+ await expect(useCase.execute({})).rejects.toThrow("Network error");
189
+ });
190
+ });
191
+
192
+ //# sourceMappingURL=ListFiles.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/listFiles/ListFiles.test.js","sources":["../../../src/features/listFiles/ListFiles.test.ts"],"sourcesContent":["import { describe, it, expect, vi, beforeEach } from \"vitest\";\nimport { Container } from \"@webiny/di\";\nimport { ListCache } from \"@webiny/app-admin/features/listCache/index.js\";\nimport { FilesListCache } from \"../shared/abstractions.js\";\nimport {\n ListFilesUseCase as UseCaseAbstraction,\n ListFilesGateway as GatewayAbstraction,\n type IListFilesGateway,\n type ListFilesGatewayParams,\n type ListFilesGatewayResult\n} from \"./abstractions.js\";\nimport { ListFilesUseCase } from \"./ListFilesUseCase.js\";\nimport { ListFilesRepository } from \"./ListFilesRepository.js\";\nimport type { FmFile } from \"../shared/types.js\";\n\n// ---------------------------------------------------------------------------\n// Helpers\n// ---------------------------------------------------------------------------\n\nfunction createFile(index: number): FmFile {\n return {\n id: `file-${index}`,\n name: `File ${index}`,\n key: `files/file-${index}.txt`,\n src: `https://cdn.example.com/files/file-${index}.txt`,\n type: \"text/plain\",\n size: index * 100,\n metadata: {},\n tags: [],\n createdOn: \"2025-01-01T00:00:00Z\",\n savedOn: \"2025-01-01T00:00:00Z\",\n createdBy: { id: \"user-1\", displayName: \"Test User\", type: \"admin\" },\n savedBy: { id: \"user-1\", displayName: \"Test User\", type: \"admin\" },\n location: { folderId: \"root\" }\n };\n}\n\nfunction createFiles(count: number): FmFile[] {\n return Array.from({ length: count }, (_, i) => createFile(i));\n}\n\ntype MockGateway = IListFilesGateway & { execute: ReturnType<typeof vi.fn> };\n\nfunction createMockGateway(\n files: FmFile[] = createFiles(3),\n meta = { cursor: null as string | null, hasMoreItems: false, totalCount: files.length }\n): MockGateway {\n const execute = vi.fn<(params: ListFilesGatewayParams) => Promise<ListFilesGatewayResult>>();\n execute.mockResolvedValue({ data: files, meta });\n return { execute };\n}\n\nfunction createContainer(mockGateway: MockGateway) {\n const container = new Container();\n const cache = new ListCache<FmFile>();\n\n // Register the mock gateway instance.\n container.registerInstance(GatewayAbstraction, mockGateway);\n\n // Register the shared cache instance.\n container.registerInstance(FilesListCache, cache);\n\n // Register the real repository and use case.\n container.register(ListFilesRepository).inSingletonScope();\n container.register(ListFilesUseCase);\n\n return { container, cache };\n}\n\n// ---------------------------------------------------------------------------\n// Tests\n// ---------------------------------------------------------------------------\n\ndescribe(\"ListFiles Feature\", () => {\n let mockGateway: MockGateway;\n let cache: ListCache<FmFile>;\n let container: Container;\n\n beforeEach(() => {\n mockGateway = createMockGateway();\n const result = createContainer(mockGateway);\n container = result.container;\n cache = result.cache as ListCache<FmFile>;\n });\n\n // -----------------------------------------------------------------------\n // UseCase invokes gateway with correct params.\n // -----------------------------------------------------------------------\n\n it(\"should call gateway with the provided params\", async () => {\n const useCase = container.resolve(UseCaseAbstraction);\n\n await useCase.execute({\n search: \"hello\",\n where: { type_in: [\"image/png\"] },\n sort: [\"name_ASC\"],\n limit: 10,\n after: \"cursor-abc\"\n });\n\n expect(mockGateway.execute).toHaveBeenCalledWith({\n search: \"hello\",\n where: { type_in: [\"image/png\"] },\n sort: [\"name_ASC\"],\n limit: 10,\n after: \"cursor-abc\"\n });\n });\n\n it(\"should call gateway with undefined optional params when not provided\", async () => {\n const useCase = container.resolve(UseCaseAbstraction);\n\n await useCase.execute({});\n\n expect(mockGateway.execute).toHaveBeenCalledWith({\n search: undefined,\n where: undefined,\n sort: undefined,\n limit: undefined,\n after: undefined\n });\n });\n\n // -----------------------------------------------------------------------\n // UseCase returns files and meta.\n // -----------------------------------------------------------------------\n\n it(\"should return files and meta from the gateway\", async () => {\n const files = createFiles(5);\n const meta = { cursor: \"next-cursor\", hasMoreItems: true, totalCount: 10 };\n mockGateway.execute.mockResolvedValue({ data: files, meta });\n\n const useCase = container.resolve(UseCaseAbstraction);\n const result = await useCase.execute({});\n\n expect(result.data).toEqual(files);\n expect(result.meta).toEqual(meta);\n });\n\n // -----------------------------------------------------------------------\n // Repository updates FilesListCache after fetch.\n // -----------------------------------------------------------------------\n\n it(\"should populate FilesListCache after fetch\", async () => {\n const files = createFiles(3);\n mockGateway.execute.mockResolvedValue({\n data: files,\n meta: { cursor: null, hasMoreItems: false, totalCount: 3 }\n });\n\n expect(cache.hasItems()).toBe(false);\n\n const useCase = container.resolve(UseCaseAbstraction);\n await useCase.execute({});\n\n expect(cache.hasItems()).toBe(true);\n expect(cache.getItems()).toEqual(files);\n });\n\n // -----------------------------------------------------------------------\n // Cursor-based pagination.\n // -----------------------------------------------------------------------\n\n it(\"should support cursor-based pagination\", async () => {\n const page1 = createFiles(3);\n const page2 = [createFile(3), createFile(4)];\n\n mockGateway.execute\n .mockResolvedValueOnce({\n data: page1,\n meta: { cursor: \"page2-cursor\", hasMoreItems: true, totalCount: 5 }\n })\n .mockResolvedValueOnce({\n data: page2,\n meta: { cursor: null, hasMoreItems: false, totalCount: 5 }\n });\n\n const useCase = container.resolve(UseCaseAbstraction);\n\n // First page.\n const result1 = await useCase.execute({ limit: 3 });\n expect(result1.data).toEqual(page1);\n expect(result1.meta.cursor).toBe(\"page2-cursor\");\n expect(result1.meta.hasMoreItems).toBe(true);\n\n // Second page using cursor.\n const result2 = await useCase.execute({ limit: 3, after: \"page2-cursor\" });\n expect(result2.data).toEqual(page2);\n expect(result2.meta.cursor).toBeNull();\n expect(result2.meta.hasMoreItems).toBe(false);\n\n // Cache should contain all files from both pages.\n expect(cache.count()).toBe(5);\n });\n\n // -----------------------------------------------------------------------\n // Gateway error propagation.\n // -----------------------------------------------------------------------\n\n it(\"should propagate gateway errors\", async () => {\n mockGateway.execute.mockRejectedValue(new Error(\"Network error\"));\n\n const useCase = container.resolve(UseCaseAbstraction);\n\n await expect(useCase.execute({})).rejects.toThrow(\"Network error\");\n });\n});\n"],"names":["createFile","index","createFiles","count","Array","_","i","createMockGateway","files","meta","execute","vi","createContainer","mockGateway","container","Container","cache","ListCache","GatewayAbstraction","FilesListCache","ListFilesRepository","ListFilesUseCase","describe","beforeEach","result","it","useCase","UseCaseAbstraction","expect","undefined","page1","page2","result1","result2","Error"],"mappings":";;;;;;;AAmBA,SAASA,WAAWC,KAAa;IAC7B,OAAO;QACH,IAAI,CAAC,KAAK,EAAEA,OAAO;QACnB,MAAM,CAAC,KAAK,EAAEA,OAAO;QACrB,KAAK,CAAC,WAAW,EAAEA,MAAM,IAAI,CAAC;QAC9B,KAAK,CAAC,mCAAmC,EAAEA,MAAM,IAAI,CAAC;QACtD,MAAM;QACN,MAAMA,AAAQ,MAARA;QACN,UAAU,CAAC;QACX,MAAM,EAAE;QACR,WAAW;QACX,SAAS;QACT,WAAW;YAAE,IAAI;YAAU,aAAa;YAAa,MAAM;QAAQ;QACnE,SAAS;YAAE,IAAI;YAAU,aAAa;YAAa,MAAM;QAAQ;QACjE,UAAU;YAAE,UAAU;QAAO;IACjC;AACJ;AAEA,SAASC,YAAYC,KAAa;IAC9B,OAAOC,MAAM,IAAI,CAAC;QAAE,QAAQD;IAAM,GAAG,CAACE,GAAGC,IAAMN,WAAWM;AAC9D;AAIA,SAASC,kBACLC,QAAkBN,YAAY,EAAE,EAChCO,OAAO;IAAE,QAAQ;IAAuB,cAAc;IAAO,YAAYD,MAAM,MAAM;AAAC,CAAC;IAEvF,MAAME,UAAUC,GAAG,EAAE;IACrBD,QAAQ,iBAAiB,CAAC;QAAE,MAAMF;QAAOC;IAAK;IAC9C,OAAO;QAAEC;IAAQ;AACrB;AAEA,SAASE,gBAAgBC,WAAwB;IAC7C,MAAMC,YAAY,IAAIC;IACtB,MAAMC,QAAQ,IAAIC;IAGlBH,UAAU,gBAAgB,CAACI,kBAAoBL;IAG/CC,UAAU,gBAAgB,CAACK,gBAAgBH;IAG3CF,UAAU,QAAQ,CAACM,qBAAqB,gBAAgB;IACxDN,UAAU,QAAQ,CAACO;IAEnB,OAAO;QAAEP;QAAWE;IAAM;AAC9B;AAMAM,SAAS,qBAAqB;IAC1B,IAAIT;IACJ,IAAIG;IACJ,IAAIF;IAEJS,WAAW;QACPV,cAAcN;QACd,MAAMiB,SAASZ,gBAAgBC;QAC/BC,YAAYU,OAAO,SAAS;QAC5BR,QAAQQ,OAAO,KAAK;IACxB;IAMAC,GAAG,gDAAgD;QAC/C,MAAMC,UAAUZ,UAAU,OAAO,CAACa;QAElC,MAAMD,QAAQ,OAAO,CAAC;YAClB,QAAQ;YACR,OAAO;gBAAE,SAAS;oBAAC;iBAAY;YAAC;YAChC,MAAM;gBAAC;aAAW;YAClB,OAAO;YACP,OAAO;QACX;QAEAE,OAAOf,YAAY,OAAO,EAAE,oBAAoB,CAAC;YAC7C,QAAQ;YACR,OAAO;gBAAE,SAAS;oBAAC;iBAAY;YAAC;YAChC,MAAM;gBAAC;aAAW;YAClB,OAAO;YACP,OAAO;QACX;IACJ;IAEAY,GAAG,wEAAwE;QACvE,MAAMC,UAAUZ,UAAU,OAAO,CAACa;QAElC,MAAMD,QAAQ,OAAO,CAAC,CAAC;QAEvBE,OAAOf,YAAY,OAAO,EAAE,oBAAoB,CAAC;YAC7C,QAAQgB;YACR,OAAOA;YACP,MAAMA;YACN,OAAOA;YACP,OAAOA;QACX;IACJ;IAMAJ,GAAG,iDAAiD;QAChD,MAAMjB,QAAQN,YAAY;QAC1B,MAAMO,OAAO;YAAE,QAAQ;YAAe,cAAc;YAAM,YAAY;QAAG;QACzEI,YAAY,OAAO,CAAC,iBAAiB,CAAC;YAAE,MAAML;YAAOC;QAAK;QAE1D,MAAMiB,UAAUZ,UAAU,OAAO,CAACa;QAClC,MAAMH,SAAS,MAAME,QAAQ,OAAO,CAAC,CAAC;QAEtCE,OAAOJ,OAAO,IAAI,EAAE,OAAO,CAAChB;QAC5BoB,OAAOJ,OAAO,IAAI,EAAE,OAAO,CAACf;IAChC;IAMAgB,GAAG,8CAA8C;QAC7C,MAAMjB,QAAQN,YAAY;QAC1BW,YAAY,OAAO,CAAC,iBAAiB,CAAC;YAClC,MAAML;YACN,MAAM;gBAAE,QAAQ;gBAAM,cAAc;gBAAO,YAAY;YAAE;QAC7D;QAEAoB,OAAOZ,MAAM,QAAQ,IAAI,IAAI,CAAC;QAE9B,MAAMU,UAAUZ,UAAU,OAAO,CAACa;QAClC,MAAMD,QAAQ,OAAO,CAAC,CAAC;QAEvBE,OAAOZ,MAAM,QAAQ,IAAI,IAAI,CAAC;QAC9BY,OAAOZ,MAAM,QAAQ,IAAI,OAAO,CAACR;IACrC;IAMAiB,GAAG,0CAA0C;QACzC,MAAMK,QAAQ5B,YAAY;QAC1B,MAAM6B,QAAQ;YAAC/B,WAAW;YAAIA,WAAW;SAAG;QAE5Ca,YAAY,OAAO,CACd,qBAAqB,CAAC;YACnB,MAAMiB;YACN,MAAM;gBAAE,QAAQ;gBAAgB,cAAc;gBAAM,YAAY;YAAE;QACtE,GACC,qBAAqB,CAAC;YACnB,MAAMC;YACN,MAAM;gBAAE,QAAQ;gBAAM,cAAc;gBAAO,YAAY;YAAE;QAC7D;QAEJ,MAAML,UAAUZ,UAAU,OAAO,CAACa;QAGlC,MAAMK,UAAU,MAAMN,QAAQ,OAAO,CAAC;YAAE,OAAO;QAAE;QACjDE,OAAOI,QAAQ,IAAI,EAAE,OAAO,CAACF;QAC7BF,OAAOI,QAAQ,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC;QACjCJ,OAAOI,QAAQ,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC;QAGvC,MAAMC,UAAU,MAAMP,QAAQ,OAAO,CAAC;YAAE,OAAO;YAAG,OAAO;QAAe;QACxEE,OAAOK,QAAQ,IAAI,EAAE,OAAO,CAACF;QAC7BH,OAAOK,QAAQ,IAAI,CAAC,MAAM,EAAE,QAAQ;QACpCL,OAAOK,QAAQ,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC;QAGvCL,OAAOZ,MAAM,KAAK,IAAI,IAAI,CAAC;IAC/B;IAMAS,GAAG,mCAAmC;QAClCZ,YAAY,OAAO,CAAC,iBAAiB,CAAC,IAAIqB,MAAM;QAEhD,MAAMR,UAAUZ,UAAU,OAAO,CAACa;QAElC,MAAMC,OAAOF,QAAQ,OAAO,CAAC,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC;IACtD;AACJ"}
@@ -0,0 +1,13 @@
1
+ import { WebinySdk } from "@webiny/app-admin/features/webinySdk/abstractions.js";
2
+ import { FileFieldsProvider } from "../shared/abstractions.js";
3
+ import { ListFilesGateway as GatewayAbstraction, type ListFilesGatewayParams, type ListFilesGatewayResult } from "./abstractions.js";
4
+ declare class ListFilesGatewayImpl implements GatewayAbstraction.Interface {
5
+ private sdk;
6
+ private fileFieldsProvider;
7
+ constructor(sdk: WebinySdk.Interface, fileFieldsProvider: FileFieldsProvider.Interface);
8
+ execute(params: ListFilesGatewayParams): Promise<ListFilesGatewayResult>;
9
+ }
10
+ export declare const ListFilesGateway: typeof ListFilesGatewayImpl & {
11
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IListFilesGateway>;
12
+ };
13
+ export {};
@@ -0,0 +1,35 @@
1
+ import { WebinySdk } from "@webiny/app-admin/features/webinySdk/abstractions.js";
2
+ import { FileFieldsProvider } from "../shared/abstractions.js";
3
+ import { ListFilesGateway } from "./abstractions.js";
4
+ class ListFilesGatewayImpl {
5
+ constructor(sdk, fileFieldsProvider){
6
+ this.sdk = sdk;
7
+ this.fileFieldsProvider = fileFieldsProvider;
8
+ }
9
+ async execute(params) {
10
+ const fields = await this.fileFieldsProvider.execute();
11
+ const result = await this.sdk.fileManager.listFiles({
12
+ search: params.search,
13
+ where: params.where,
14
+ sort: params.sort,
15
+ limit: params.limit,
16
+ after: params.after,
17
+ fields
18
+ });
19
+ if (result.isFail()) throw new Error(result.error.message);
20
+ return {
21
+ data: result.value.data,
22
+ meta: result.value.meta
23
+ };
24
+ }
25
+ }
26
+ const ListFilesGateway_ListFilesGateway = ListFilesGateway.createImplementation({
27
+ implementation: ListFilesGatewayImpl,
28
+ dependencies: [
29
+ WebinySdk,
30
+ FileFieldsProvider
31
+ ]
32
+ });
33
+ export { ListFilesGateway_ListFilesGateway as ListFilesGateway };
34
+
35
+ //# sourceMappingURL=ListFilesGateway.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/listFiles/ListFilesGateway.js","sources":["../../../src/features/listFiles/ListFilesGateway.ts"],"sourcesContent":["import { WebinySdk } from \"@webiny/app-admin/features/webinySdk/abstractions.js\";\nimport type { FmFileListWhereInput } from \"@webiny/sdk\";\nimport { FmFileListSorter } from \"@webiny/sdk\";\nimport { FileFieldsProvider } from \"../shared/abstractions.js\";\nimport {\n ListFilesGateway as GatewayAbstraction,\n type ListFilesGatewayParams,\n type ListFilesGatewayResult\n} from \"./abstractions.js\";\n\nclass ListFilesGatewayImpl implements GatewayAbstraction.Interface {\n constructor(\n private sdk: WebinySdk.Interface,\n private fileFieldsProvider: FileFieldsProvider.Interface\n ) {}\n\n async execute(params: ListFilesGatewayParams): Promise<ListFilesGatewayResult> {\n const fields = await this.fileFieldsProvider.execute();\n const result = await this.sdk.fileManager.listFiles({\n search: params.search,\n where: params.where as FmFileListWhereInput | undefined,\n sort: params.sort as FmFileListSorter[] | undefined,\n limit: params.limit,\n after: params.after,\n fields\n });\n\n if (result.isFail()) {\n throw new Error(result.error.message);\n }\n\n return {\n data: result.value.data,\n meta: result.value.meta\n };\n }\n}\n\nexport const ListFilesGateway = GatewayAbstraction.createImplementation({\n implementation: ListFilesGatewayImpl,\n dependencies: [WebinySdk, FileFieldsProvider]\n});\n"],"names":["ListFilesGatewayImpl","sdk","fileFieldsProvider","params","fields","result","Error","ListFilesGateway","GatewayAbstraction","WebinySdk","FileFieldsProvider"],"mappings":";;;AAUA,MAAMA;IACF,YACYC,GAAwB,EACxBC,kBAAgD,CAC1D;aAFUD,GAAG,GAAHA;aACAC,kBAAkB,GAAlBA;IACT;IAEH,MAAM,QAAQC,MAA8B,EAAmC;QAC3E,MAAMC,SAAS,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO;QACpD,MAAMC,SAAS,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,SAAS,CAAC;YAChD,QAAQF,OAAO,MAAM;YACrB,OAAOA,OAAO,KAAK;YACnB,MAAMA,OAAO,IAAI;YACjB,OAAOA,OAAO,KAAK;YACnB,OAAOA,OAAO,KAAK;YACnBC;QACJ;QAEA,IAAIC,OAAO,MAAM,IACb,MAAM,IAAIC,MAAMD,OAAO,KAAK,CAAC,OAAO;QAGxC,OAAO;YACH,MAAMA,OAAO,KAAK,CAAC,IAAI;YACvB,MAAMA,OAAO,KAAK,CAAC,IAAI;QAC3B;IACJ;AACJ;AAEO,MAAME,oCAAmBC,iBAAAA,oBAAuC,CAAC;IACpE,gBAAgBR;IAChB,cAAc;QAACS;QAAWC;KAAmB;AACjD"}
@@ -0,0 +1,12 @@
1
+ import { FilesListCache } from "../shared/abstractions.js";
2
+ import { ListFilesRepository as RepositoryAbstraction, ListFilesGateway, type ListFilesGatewayParams, type ListFilesGatewayResult } from "./abstractions.js";
3
+ declare class ListFilesRepositoryImpl implements RepositoryAbstraction.Interface {
4
+ private gateway;
5
+ private cache;
6
+ constructor(gateway: ListFilesGateway.Interface, cache: FilesListCache.Interface);
7
+ execute(params: ListFilesGatewayParams): Promise<ListFilesGatewayResult>;
8
+ }
9
+ export declare const ListFilesRepository: typeof ListFilesRepositoryImpl & {
10
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IListFilesRepository>;
11
+ };
12
+ export {};
@@ -0,0 +1,26 @@
1
+ import { runInAction } from "mobx";
2
+ import { FilesListCache } from "../shared/abstractions.js";
3
+ import { ListFilesGateway, ListFilesRepository } from "./abstractions.js";
4
+ class ListFilesRepositoryImpl {
5
+ constructor(gateway, cache){
6
+ this.gateway = gateway;
7
+ this.cache = cache;
8
+ }
9
+ async execute(params) {
10
+ const result = await this.gateway.execute(params);
11
+ runInAction(()=>{
12
+ this.cache.addItems(result.data);
13
+ });
14
+ return result;
15
+ }
16
+ }
17
+ const ListFilesRepository_ListFilesRepository = ListFilesRepository.createImplementation({
18
+ implementation: ListFilesRepositoryImpl,
19
+ dependencies: [
20
+ ListFilesGateway,
21
+ FilesListCache
22
+ ]
23
+ });
24
+ export { ListFilesRepository_ListFilesRepository as ListFilesRepository };
25
+
26
+ //# sourceMappingURL=ListFilesRepository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/listFiles/ListFilesRepository.js","sources":["../../../src/features/listFiles/ListFilesRepository.ts"],"sourcesContent":["import { runInAction } from \"mobx\";\nimport { FilesListCache } from \"../shared/abstractions.js\";\nimport {\n ListFilesRepository as RepositoryAbstraction,\n ListFilesGateway,\n type ListFilesGatewayParams,\n type ListFilesGatewayResult\n} from \"./abstractions.js\";\n\nclass ListFilesRepositoryImpl implements RepositoryAbstraction.Interface {\n constructor(\n private gateway: ListFilesGateway.Interface,\n private cache: FilesListCache.Interface\n ) {}\n\n async execute(params: ListFilesGatewayParams): Promise<ListFilesGatewayResult> {\n const result = await this.gateway.execute(params);\n\n runInAction(() => {\n this.cache.addItems(result.data);\n });\n\n return result;\n }\n}\n\nexport const ListFilesRepository = RepositoryAbstraction.createImplementation({\n implementation: ListFilesRepositoryImpl,\n dependencies: [ListFilesGateway, FilesListCache]\n});\n"],"names":["ListFilesRepositoryImpl","gateway","cache","params","result","runInAction","ListFilesRepository","RepositoryAbstraction","ListFilesGateway","FilesListCache"],"mappings":";;;AASA,MAAMA;IACF,YACYC,OAAmC,EACnCC,KAA+B,CACzC;aAFUD,OAAO,GAAPA;aACAC,KAAK,GAALA;IACT;IAEH,MAAM,QAAQC,MAA8B,EAAmC;QAC3E,MAAMC,SAAS,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAACD;QAE1CE,YAAY;YACR,IAAI,CAAC,KAAK,CAAC,QAAQ,CAACD,OAAO,IAAI;QACnC;QAEA,OAAOA;IACX;AACJ;AAEO,MAAME,0CAAsBC,oBAAAA,oBAA0C,CAAC;IAC1E,gBAAgBP;IAChB,cAAc;QAACQ;QAAkBC;KAAe;AACpD"}
@@ -0,0 +1,10 @@
1
+ import { ListFilesUseCase as UseCaseAbstraction, ListFilesRepository, type ListFilesUseCaseParams, type ListFilesUseCaseResult } from "./abstractions.js";
2
+ declare class ListFilesUseCaseImpl implements UseCaseAbstraction.Interface {
3
+ private repository;
4
+ constructor(repository: ListFilesRepository.Interface);
5
+ execute(params: ListFilesUseCaseParams): Promise<ListFilesUseCaseResult>;
6
+ }
7
+ export declare const ListFilesUseCase: typeof ListFilesUseCaseImpl & {
8
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IListFilesUseCase>;
9
+ };
10
+ export {};
@@ -0,0 +1,28 @@
1
+ import { ListFilesRepository, ListFilesUseCase } from "./abstractions.js";
2
+ class ListFilesUseCaseImpl {
3
+ constructor(repository){
4
+ this.repository = repository;
5
+ }
6
+ async execute(params) {
7
+ const result = await this.repository.execute({
8
+ search: params.search,
9
+ where: params.where,
10
+ sort: params.sort,
11
+ limit: params.limit,
12
+ after: params.after
13
+ });
14
+ return {
15
+ data: result.data,
16
+ meta: result.meta
17
+ };
18
+ }
19
+ }
20
+ const ListFilesUseCase_ListFilesUseCase = ListFilesUseCase.createImplementation({
21
+ implementation: ListFilesUseCaseImpl,
22
+ dependencies: [
23
+ ListFilesRepository
24
+ ]
25
+ });
26
+ export { ListFilesUseCase_ListFilesUseCase as ListFilesUseCase };
27
+
28
+ //# sourceMappingURL=ListFilesUseCase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/listFiles/ListFilesUseCase.js","sources":["../../../src/features/listFiles/ListFilesUseCase.ts"],"sourcesContent":["import {\n ListFilesUseCase as UseCaseAbstraction,\n ListFilesRepository,\n type ListFilesUseCaseParams,\n type ListFilesUseCaseResult\n} from \"./abstractions.js\";\n\nclass ListFilesUseCaseImpl implements UseCaseAbstraction.Interface {\n constructor(private repository: ListFilesRepository.Interface) {}\n\n async execute(params: ListFilesUseCaseParams): Promise<ListFilesUseCaseResult> {\n const result = await this.repository.execute({\n search: params.search,\n where: params.where,\n sort: params.sort,\n limit: params.limit,\n after: params.after\n });\n\n return {\n data: result.data,\n meta: result.meta\n };\n }\n}\n\nexport const ListFilesUseCase = UseCaseAbstraction.createImplementation({\n implementation: ListFilesUseCaseImpl,\n dependencies: [ListFilesRepository]\n});\n"],"names":["ListFilesUseCaseImpl","repository","params","result","ListFilesUseCase","UseCaseAbstraction","ListFilesRepository"],"mappings":";AAOA,MAAMA;IACF,YAAoBC,UAAyC,CAAE;aAA3CA,UAAU,GAAVA;IAA4C;IAEhE,MAAM,QAAQC,MAA8B,EAAmC;QAC3E,MAAMC,SAAS,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;YACzC,QAAQD,OAAO,MAAM;YACrB,OAAOA,OAAO,KAAK;YACnB,MAAMA,OAAO,IAAI;YACjB,OAAOA,OAAO,KAAK;YACnB,OAAOA,OAAO,KAAK;QACvB;QAEA,OAAO;YACH,MAAMC,OAAO,IAAI;YACjB,MAAMA,OAAO,IAAI;QACrB;IACJ;AACJ;AAEO,MAAMC,oCAAmBC,iBAAAA,oBAAuC,CAAC;IACpE,gBAAgBL;IAChB,cAAc;QAACM;KAAoB;AACvC"}
@@ -0,0 +1,45 @@
1
+ import type { FmFile } from "../shared/types.js";
2
+ import type { FmListMeta } from "@webiny/sdk";
3
+ export interface IListFilesGateway {
4
+ execute(params: ListFilesGatewayParams): Promise<ListFilesGatewayResult>;
5
+ }
6
+ export interface ListFilesGatewayParams {
7
+ search?: string;
8
+ where?: Record<string, unknown>;
9
+ sort?: string[];
10
+ limit?: number;
11
+ after?: string;
12
+ }
13
+ export interface ListFilesGatewayResult {
14
+ data: FmFile[];
15
+ meta: FmListMeta;
16
+ }
17
+ export declare const ListFilesGateway: import("@webiny/di").Abstraction<IListFilesGateway>;
18
+ export declare namespace ListFilesGateway {
19
+ type Interface = IListFilesGateway;
20
+ }
21
+ export interface IListFilesRepository {
22
+ execute(params: ListFilesGatewayParams): Promise<ListFilesGatewayResult>;
23
+ }
24
+ export declare const ListFilesRepository: import("@webiny/di").Abstraction<IListFilesRepository>;
25
+ export declare namespace ListFilesRepository {
26
+ type Interface = IListFilesRepository;
27
+ }
28
+ export interface ListFilesUseCaseParams {
29
+ search?: string;
30
+ where?: Record<string, unknown>;
31
+ sort?: string[];
32
+ limit?: number;
33
+ after?: string;
34
+ }
35
+ export interface ListFilesUseCaseResult {
36
+ data: FmFile[];
37
+ meta: FmListMeta;
38
+ }
39
+ export interface IListFilesUseCase {
40
+ execute(params: ListFilesUseCaseParams): Promise<ListFilesUseCaseResult>;
41
+ }
42
+ export declare const ListFilesUseCase: import("@webiny/di").Abstraction<IListFilesUseCase>;
43
+ export declare namespace ListFilesUseCase {
44
+ type Interface = IListFilesUseCase;
45
+ }