@webiny/api-file-manager 0.0.0-unstable.8feaff8c32 → 0.0.0-unstable.9609e4e0c9

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 (597) hide show
  1. package/FileManagerAppFeature.d.ts +5 -0
  2. package/FileManagerAppFeature.js +21 -0
  3. package/FileManagerAppFeature.js.map +1 -0
  4. package/README.md +7 -13
  5. package/contants.js +3 -7
  6. package/contants.js.map +1 -1
  7. package/delivery/AssetDelivery/Asset.d.ts +28 -0
  8. package/delivery/AssetDelivery/Asset.js +53 -0
  9. package/delivery/AssetDelivery/Asset.js.map +1 -0
  10. package/delivery/AssetDelivery/AssetRequest.d.ts +25 -0
  11. package/delivery/AssetDelivery/AssetRequest.js +23 -0
  12. package/delivery/AssetDelivery/AssetRequest.js.map +1 -0
  13. package/delivery/AssetDelivery/abstractions/AssetReply.d.ts +25 -0
  14. package/delivery/AssetDelivery/abstractions/AssetReply.js +32 -0
  15. package/delivery/AssetDelivery/abstractions/AssetReply.js.map +1 -0
  16. package/delivery/AssetDelivery/createAssetDeliveryPluginLoader.d.ts +2 -0
  17. package/delivery/AssetDelivery/createAssetDeliveryPluginLoader.js +7 -0
  18. package/delivery/AssetDelivery/createAssetDeliveryPluginLoader.js.map +1 -0
  19. package/delivery/AssetDeliveryRoute.d.ts +24 -0
  20. package/delivery/AssetDeliveryRoute.js +69 -0
  21. package/delivery/AssetDeliveryRoute.js.map +1 -0
  22. package/delivery/index.d.ts +7 -0
  23. package/delivery/index.js +6 -0
  24. package/delivery/setupAssetDelivery.d.ts +1 -0
  25. package/delivery/setupAssetDelivery.js +4 -0
  26. package/delivery/setupAssetDelivery.js.map +1 -0
  27. package/domain/file/abstractions.d.ts +17 -0
  28. package/domain/file/abstractions.js +5 -0
  29. package/domain/file/abstractions.js.map +1 -0
  30. package/domain/file/errors.d.ts +59 -0
  31. package/domain/file/errors.js +80 -0
  32. package/domain/file/errors.js.map +1 -0
  33. package/domain/file/file.model.d.ts +12 -0
  34. package/domain/file/file.model.js +70 -0
  35. package/domain/file/file.model.js.map +1 -0
  36. package/domain/file/types.d.ts +53 -0
  37. package/domain/identity/Identity.d.ts +9 -0
  38. package/domain/identity/Identity.js +12 -0
  39. package/domain/identity/Identity.js.map +1 -0
  40. package/domain/permissionsSchema.d.ts +16 -0
  41. package/domain/permissionsSchema.js +30 -0
  42. package/domain/permissionsSchema.js.map +1 -0
  43. package/domain/settings/constants.d.ts +1 -0
  44. package/domain/settings/constants.js +4 -0
  45. package/domain/settings/constants.js.map +1 -0
  46. package/domain/settings/errors.d.ts +18 -0
  47. package/domain/settings/errors.js +28 -0
  48. package/domain/settings/errors.js.map +1 -0
  49. package/domain/settings/types.d.ts +10 -0
  50. package/domain/settings/types.js +0 -0
  51. package/domain/settings/validation.d.ts +6 -0
  52. package/domain/settings/validation.js +20 -0
  53. package/domain/settings/validation.js.map +1 -0
  54. package/exports/api/file-manager/assetDelivery.d.ts +10 -0
  55. package/exports/api/file-manager/assetDelivery.js +8 -0
  56. package/exports/api/file-manager/file.d.ts +13 -0
  57. package/exports/api/file-manager/file.js +13 -0
  58. package/exports/api/file-manager/permissions.d.ts +1 -0
  59. package/exports/api/file-manager/permissions.js +1 -0
  60. package/exports/api/file-manager/settings.d.ts +3 -0
  61. package/exports/api/file-manager/settings.js +3 -0
  62. package/features/FileManagerFeature.d.ts +4 -0
  63. package/features/FileManagerFeature.js +37 -0
  64. package/features/FileManagerFeature.js.map +1 -0
  65. package/features/assetDelivery/Asset/Asset.d.ts +8 -0
  66. package/features/assetDelivery/Asset/Asset.js +14 -0
  67. package/features/assetDelivery/Asset/Asset.js.map +1 -0
  68. package/features/assetDelivery/Asset/abstractions.d.ts +10 -0
  69. package/features/assetDelivery/Asset/abstractions.js +5 -0
  70. package/features/assetDelivery/Asset/abstractions.js.map +1 -0
  71. package/features/assetDelivery/Asset/index.d.ts +1 -0
  72. package/features/assetDelivery/Asset/index.js +1 -0
  73. package/features/assetDelivery/FilesAssetRequestResolver.d.ts +9 -0
  74. package/features/assetDelivery/FilesAssetRequestResolver.js +29 -0
  75. package/features/assetDelivery/FilesAssetRequestResolver.js.map +1 -0
  76. package/features/assetDelivery/NullAssetOutputStrategy.d.ts +8 -0
  77. package/features/assetDelivery/NullAssetOutputStrategy.js +14 -0
  78. package/features/assetDelivery/NullAssetOutputStrategy.js.map +1 -0
  79. package/features/assetDelivery/NullAssetReply.d.ts +4 -0
  80. package/features/assetDelivery/NullAssetReply.js +14 -0
  81. package/features/assetDelivery/NullAssetReply.js.map +1 -0
  82. package/features/assetDelivery/NullAssetResolver.d.ts +8 -0
  83. package/features/assetDelivery/NullAssetResolver.js +13 -0
  84. package/features/assetDelivery/NullAssetResolver.js.map +1 -0
  85. package/features/assetDelivery/ObjectKey/ObjectKey.d.ts +8 -0
  86. package/features/assetDelivery/ObjectKey/ObjectKey.js +28 -0
  87. package/features/assetDelivery/ObjectKey/ObjectKey.js.map +1 -0
  88. package/features/assetDelivery/ObjectKey/abstractions.d.ts +12 -0
  89. package/features/assetDelivery/ObjectKey/abstractions.js +5 -0
  90. package/features/assetDelivery/ObjectKey/abstractions.js.map +1 -0
  91. package/features/assetDelivery/ObjectKey/index.d.ts +1 -0
  92. package/features/assetDelivery/ObjectKey/index.js +1 -0
  93. package/features/assetDelivery/StreamAssetReply/StreamAssetReply.d.ts +8 -0
  94. package/features/assetDelivery/StreamAssetReply/StreamAssetReply.js +22 -0
  95. package/features/assetDelivery/StreamAssetReply/StreamAssetReply.js.map +1 -0
  96. package/features/assetDelivery/StreamAssetReply/abstractions.d.ts +11 -0
  97. package/features/assetDelivery/StreamAssetReply/abstractions.js +5 -0
  98. package/features/assetDelivery/StreamAssetReply/abstractions.js.map +1 -0
  99. package/features/assetDelivery/StreamAssetReply/index.d.ts +1 -0
  100. package/features/assetDelivery/StreamAssetReply/index.js +1 -0
  101. package/features/assetDelivery/abstractions/AssetType.d.ts +17 -0
  102. package/features/assetDelivery/abstractions/AssetType.js +5 -0
  103. package/features/assetDelivery/abstractions/AssetType.js.map +1 -0
  104. package/features/assetDelivery/abstractions.d.ts +65 -0
  105. package/features/assetDelivery/abstractions.js +11 -0
  106. package/features/assetDelivery/abstractions.js.map +1 -0
  107. package/features/assetDelivery/assetTypes/image/AssetKeyGenerator.d.ts +12 -0
  108. package/features/assetDelivery/assetTypes/image/AssetKeyGenerator.js +30 -0
  109. package/features/assetDelivery/assetTypes/image/AssetKeyGenerator.js.map +1 -0
  110. package/features/assetDelivery/assetTypes/image/ImageAssetType.d.ts +9 -0
  111. package/features/assetDelivery/assetTypes/image/ImageAssetType.js +18 -0
  112. package/features/assetDelivery/assetTypes/image/ImageAssetType.js.map +1 -0
  113. package/features/assetDelivery/assetTypes/image/ImageAssetTypeHandler.d.ts +5 -0
  114. package/features/assetDelivery/assetTypes/image/ImageAssetTypeHandler.js +5 -0
  115. package/features/assetDelivery/assetTypes/image/ImageAssetTypeHandler.js.map +1 -0
  116. package/features/assetDelivery/assetTypes/image/SharpTransformer.d.ts +18 -0
  117. package/features/assetDelivery/assetTypes/image/SharpTransformer.js +47 -0
  118. package/features/assetDelivery/assetTypes/image/SharpTransformer.js.map +1 -0
  119. package/features/assetDelivery/assetTypes/image/WidthCollection.d.ts +8 -0
  120. package/features/assetDelivery/assetTypes/image/WidthCollection.js +22 -0
  121. package/features/assetDelivery/assetTypes/image/WidthCollection.js.map +1 -0
  122. package/features/assetDelivery/assetTypes/image/imageFormat.d.ts +26 -0
  123. package/features/assetDelivery/assetTypes/image/imageFormat.js +51 -0
  124. package/features/assetDelivery/assetTypes/image/imageFormat.js.map +1 -0
  125. package/features/assetDelivery/assetTypes/image/imageTypes.d.ts +39 -0
  126. package/features/assetDelivery/assetTypes/image/imageTypes.js +0 -0
  127. package/features/assetDelivery/assetTypes/image/index.d.ts +5 -0
  128. package/features/assetDelivery/assetTypes/image/index.js +4 -0
  129. package/features/assetDelivery/assetTypes/image/normalizeImageOptions.d.ts +6 -0
  130. package/features/assetDelivery/assetTypes/image/normalizeImageOptions.js +56 -0
  131. package/features/assetDelivery/assetTypes/image/normalizeImageOptions.js.map +1 -0
  132. package/features/assetDelivery/assetTypes/image/transformImage.d.ts +59 -0
  133. package/features/assetDelivery/assetTypes/image/transformImage.js +146 -0
  134. package/features/assetDelivery/assetTypes/image/transformImage.js.map +1 -0
  135. package/features/assetDelivery/assetTypes/image/utils.d.ts +26 -0
  136. package/features/assetDelivery/assetTypes/image/utils.js +47 -0
  137. package/features/assetDelivery/assetTypes/image/utils.js.map +1 -0
  138. package/features/assetDelivery/feature.d.ts +4 -0
  139. package/features/assetDelivery/feature.js +35 -0
  140. package/features/assetDelivery/feature.js.map +1 -0
  141. package/features/assetDelivery/privateFiles/NotAuthorizedAssetReply.d.ts +4 -0
  142. package/features/assetDelivery/privateFiles/NotAuthorizedAssetReply.js +20 -0
  143. package/features/assetDelivery/privateFiles/NotAuthorizedAssetReply.js.map +1 -0
  144. package/features/assetDelivery/privateFiles/NotAuthorizedOutputStrategy.d.ts +5 -0
  145. package/features/assetDelivery/privateFiles/NotAuthorizedOutputStrategy.js +9 -0
  146. package/features/assetDelivery/privateFiles/NotAuthorizedOutputStrategy.js.map +1 -0
  147. package/features/assetDelivery/privateFiles/PrivateAuthenticatedAuthorizer.d.ts +11 -0
  148. package/features/assetDelivery/privateFiles/PrivateAuthenticatedAuthorizer.js +26 -0
  149. package/features/assetDelivery/privateFiles/PrivateAuthenticatedAuthorizer.js.map +1 -0
  150. package/features/assetDelivery/privateFiles/PrivateCache.d.ts +8 -0
  151. package/features/assetDelivery/privateFiles/PrivateCache.js +22 -0
  152. package/features/assetDelivery/privateFiles/PrivateCache.js.map +1 -0
  153. package/features/assetDelivery/privateFiles/PrivateFileAssetRequestResolver.d.ts +11 -0
  154. package/features/assetDelivery/privateFiles/PrivateFileAssetRequestResolver.js +31 -0
  155. package/features/assetDelivery/privateFiles/PrivateFileAssetRequestResolver.js.map +1 -0
  156. package/features/assetDelivery/privateFiles/PrivateFilesAssetProcessor.d.ts +19 -0
  157. package/features/assetDelivery/privateFiles/PrivateFilesAssetProcessor.js +65 -0
  158. package/features/assetDelivery/privateFiles/PrivateFilesAssetProcessor.js.map +1 -0
  159. package/features/assetDelivery/privateFiles/PublicCache.d.ts +8 -0
  160. package/features/assetDelivery/privateFiles/PublicCache.js +22 -0
  161. package/features/assetDelivery/privateFiles/PublicCache.js.map +1 -0
  162. package/features/assetDelivery/privateFiles/RedirectToPrivateUrlOutputStrategy.d.ts +9 -0
  163. package/features/assetDelivery/privateFiles/RedirectToPrivateUrlOutputStrategy.js +21 -0
  164. package/features/assetDelivery/privateFiles/RedirectToPrivateUrlOutputStrategy.js.map +1 -0
  165. package/features/assetDelivery/privateFiles/RedirectToPublicUrlOutputStrategy.d.ts +9 -0
  166. package/features/assetDelivery/privateFiles/RedirectToPublicUrlOutputStrategy.js +21 -0
  167. package/features/assetDelivery/privateFiles/RedirectToPublicUrlOutputStrategy.js.map +1 -0
  168. package/features/assetDelivery/transformation/CallableContentsReader.d.ts +11 -0
  169. package/features/assetDelivery/transformation/CallableContentsReader.js +14 -0
  170. package/features/assetDelivery/transformation/CallableContentsReader.js.map +1 -0
  171. package/features/assetDelivery/transformation/TransformationAssetProcessor.d.ts +9 -0
  172. package/features/assetDelivery/transformation/TransformationAssetProcessor.js +25 -0
  173. package/features/assetDelivery/transformation/TransformationAssetProcessor.js.map +1 -0
  174. package/features/assetDelivery/transformation/index.d.ts +5 -0
  175. package/features/assetDelivery/transformation/index.js +4 -0
  176. package/features/extractMetadata/ExtractMetadataHandler.d.ts +11 -0
  177. package/features/extractMetadata/ExtractMetadataHandler.js +25 -0
  178. package/features/extractMetadata/ExtractMetadataHandler.js.map +1 -0
  179. package/features/extractMetadata/ExtractMetadataInput.d.ts +3 -0
  180. package/features/extractMetadata/ExtractMetadataInput.js +0 -0
  181. package/features/file/CreateFile/CreateFileRepository.d.ts +15 -0
  182. package/features/file/CreateFile/CreateFileRepository.js +33 -0
  183. package/features/file/CreateFile/CreateFileRepository.js.map +1 -0
  184. package/features/file/CreateFile/CreateFileUseCase.d.ts +21 -0
  185. package/features/file/CreateFile/CreateFileUseCase.js +83 -0
  186. package/features/file/CreateFile/CreateFileUseCase.js.map +1 -0
  187. package/features/file/CreateFile/abstractions.d.ts +60 -0
  188. package/features/file/CreateFile/abstractions.js +6 -0
  189. package/features/file/CreateFile/abstractions.js.map +1 -0
  190. package/features/file/CreateFile/events.d.ts +31 -0
  191. package/features/file/CreateFile/events.js +23 -0
  192. package/features/file/CreateFile/events.js.map +1 -0
  193. package/features/file/CreateFile/feature.d.ts +4 -0
  194. package/features/file/CreateFile/feature.js +13 -0
  195. package/features/file/CreateFile/feature.js.map +1 -0
  196. package/features/file/CreateFile/index.d.ts +2 -0
  197. package/features/file/CreateFile/index.js +2 -0
  198. package/features/file/CreateFilesInBatch/CreateFilesInBatchRepository.d.ts +13 -0
  199. package/features/file/CreateFilesInBatch/CreateFilesInBatchRepository.js +22 -0
  200. package/features/file/CreateFilesInBatch/CreateFilesInBatchRepository.js.map +1 -0
  201. package/features/file/CreateFilesInBatch/CreateFilesInBatchUseCase.d.ts +19 -0
  202. package/features/file/CreateFilesInBatch/CreateFilesInBatchUseCase.js +73 -0
  203. package/features/file/CreateFilesInBatch/CreateFilesInBatchUseCase.js.map +1 -0
  204. package/features/file/CreateFilesInBatch/abstractions.d.ts +42 -0
  205. package/features/file/CreateFilesInBatch/abstractions.js +6 -0
  206. package/features/file/CreateFilesInBatch/abstractions.js.map +1 -0
  207. package/features/file/CreateFilesInBatch/events.d.ts +31 -0
  208. package/features/file/CreateFilesInBatch/events.js +23 -0
  209. package/features/file/CreateFilesInBatch/events.js.map +1 -0
  210. package/features/file/CreateFilesInBatch/feature.d.ts +4 -0
  211. package/features/file/CreateFilesInBatch/feature.js +13 -0
  212. package/features/file/CreateFilesInBatch/feature.js.map +1 -0
  213. package/features/file/CreateFilesInBatch/index.d.ts +1 -0
  214. package/features/file/CreateFilesInBatch/index.js +1 -0
  215. package/features/file/DeleteFile/DeleteFileRepository.d.ts +15 -0
  216. package/features/file/DeleteFile/DeleteFileRepository.js +32 -0
  217. package/features/file/DeleteFile/DeleteFileRepository.js.map +1 -0
  218. package/features/file/DeleteFile/DeleteFileUseCase.d.ts +17 -0
  219. package/features/file/DeleteFile/DeleteFileUseCase.js +43 -0
  220. package/features/file/DeleteFile/DeleteFileUseCase.js.map +1 -0
  221. package/features/file/DeleteFile/abstractions.d.ts +39 -0
  222. package/features/file/DeleteFile/abstractions.js +6 -0
  223. package/features/file/DeleteFile/abstractions.js.map +1 -0
  224. package/features/file/DeleteFile/events.d.ts +29 -0
  225. package/features/file/DeleteFile/events.js +23 -0
  226. package/features/file/DeleteFile/events.js.map +1 -0
  227. package/features/file/DeleteFile/feature.d.ts +4 -0
  228. package/features/file/DeleteFile/feature.js +13 -0
  229. package/features/file/DeleteFile/feature.js.map +1 -0
  230. package/features/file/DeleteFile/index.d.ts +2 -0
  231. package/features/file/DeleteFile/index.js +2 -0
  232. package/features/file/FileModelProvider.d.ts +31 -0
  233. package/features/file/FileModelProvider.js +22 -0
  234. package/features/file/FileModelProvider.js.map +1 -0
  235. package/features/file/FileUrlGenerator/FileUrlGenerator.d.ts +12 -0
  236. package/features/file/FileUrlGenerator/FileUrlGenerator.js +19 -0
  237. package/features/file/FileUrlGenerator/FileUrlGenerator.js.map +1 -0
  238. package/features/file/FileUrlGenerator/SettingsFileUrlPrefixProvider.d.ts +13 -0
  239. package/features/file/FileUrlGenerator/SettingsFileUrlPrefixProvider.js +29 -0
  240. package/features/file/FileUrlGenerator/SettingsFileUrlPrefixProvider.js.map +1 -0
  241. package/features/file/FileUrlGenerator/abstractions.d.ts +20 -0
  242. package/features/file/FileUrlGenerator/abstractions.js +6 -0
  243. package/features/file/FileUrlGenerator/abstractions.js.map +1 -0
  244. package/features/file/FileUrlGenerator/feature.d.ts +4 -0
  245. package/features/file/FileUrlGenerator/feature.js +13 -0
  246. package/features/file/FileUrlGenerator/feature.js.map +1 -0
  247. package/features/file/FileUrlGenerator/index.d.ts +2 -0
  248. package/features/file/FileUrlGenerator/index.js +1 -0
  249. package/features/file/GetFile/GetFileRepository.d.ts +15 -0
  250. package/features/file/GetFile/GetFileRepository.js +34 -0
  251. package/features/file/GetFile/GetFileRepository.js.map +1 -0
  252. package/features/file/GetFile/GetFileUseCase.d.ts +14 -0
  253. package/features/file/GetFile/GetFileUseCase.js +29 -0
  254. package/features/file/GetFile/GetFileUseCase.js.map +1 -0
  255. package/features/file/GetFile/abstractions.d.ts +40 -0
  256. package/features/file/GetFile/abstractions.js +6 -0
  257. package/features/file/GetFile/abstractions.js.map +1 -0
  258. package/features/file/GetFile/feature.d.ts +4 -0
  259. package/features/file/GetFile/feature.js +13 -0
  260. package/features/file/GetFile/feature.js.map +1 -0
  261. package/features/file/GetFile/index.d.ts +1 -0
  262. package/features/file/GetFile/index.js +1 -0
  263. package/features/file/GetFileByUrl/GetFileByUrlUseCase.d.ts +15 -0
  264. package/features/file/GetFileByUrl/GetFileByUrlUseCase.js +37 -0
  265. package/features/file/GetFileByUrl/GetFileByUrlUseCase.js.map +1 -0
  266. package/features/file/GetFileByUrl/abstractions.d.ts +18 -0
  267. package/features/file/GetFileByUrl/abstractions.js +5 -0
  268. package/features/file/GetFileByUrl/abstractions.js.map +1 -0
  269. package/features/file/GetFileByUrl/feature.d.ts +4 -0
  270. package/features/file/GetFileByUrl/feature.js +11 -0
  271. package/features/file/GetFileByUrl/feature.js.map +1 -0
  272. package/features/file/GetFileByUrl/index.d.ts +1 -0
  273. package/features/file/GetFileByUrl/index.js +1 -0
  274. package/features/file/GetFileContentsById/abstractions.d.ts +20 -0
  275. package/features/file/GetFileContentsById/abstractions.js +5 -0
  276. package/features/file/GetFileContentsById/abstractions.js.map +1 -0
  277. package/features/file/GetFileContentsById/index.d.ts +1 -0
  278. package/features/file/GetFileContentsById/index.js +1 -0
  279. package/features/file/GetFileContentsByKey/abstractions.d.ts +17 -0
  280. package/features/file/GetFileContentsByKey/abstractions.js +5 -0
  281. package/features/file/GetFileContentsByKey/abstractions.js.map +1 -0
  282. package/features/file/GetFileContentsByKey/index.d.ts +1 -0
  283. package/features/file/GetFileContentsByKey/index.js +1 -0
  284. package/features/file/ListFiles/ListFilesRepository.d.ts +18 -0
  285. package/features/file/ListFiles/ListFilesRepository.js +54 -0
  286. package/features/file/ListFiles/ListFilesRepository.js.map +1 -0
  287. package/features/file/ListFiles/ListFilesUseCase.d.ts +15 -0
  288. package/features/file/ListFiles/ListFilesUseCase.js +44 -0
  289. package/features/file/ListFiles/ListFilesUseCase.js.map +1 -0
  290. package/features/file/ListFiles/abstractions.d.ts +49 -0
  291. package/features/file/ListFiles/abstractions.js +6 -0
  292. package/features/file/ListFiles/abstractions.js.map +1 -0
  293. package/features/file/ListFiles/feature.d.ts +4 -0
  294. package/features/file/ListFiles/feature.js +13 -0
  295. package/features/file/ListFiles/feature.js.map +1 -0
  296. package/features/file/ListFiles/index.d.ts +1 -0
  297. package/features/file/ListFiles/index.js +1 -0
  298. package/features/file/ListImagesByTagTool/ListImagesByTagTool.d.ts +37 -0
  299. package/features/file/ListImagesByTagTool/ListImagesByTagTool.js +56 -0
  300. package/features/file/ListImagesByTagTool/ListImagesByTagTool.js.map +1 -0
  301. package/features/file/ListImagesByTagTool/feature.d.ts +4 -0
  302. package/features/file/ListImagesByTagTool/feature.js +11 -0
  303. package/features/file/ListImagesByTagTool/feature.js.map +1 -0
  304. package/features/file/ListTags/ListTagsRepository.d.ts +16 -0
  305. package/features/file/ListTags/ListTagsRepository.js +43 -0
  306. package/features/file/ListTags/ListTagsRepository.js.map +1 -0
  307. package/features/file/ListTags/ListTagsUseCase.d.ts +13 -0
  308. package/features/file/ListTags/ListTagsUseCase.js +31 -0
  309. package/features/file/ListTags/ListTagsUseCase.js.map +1 -0
  310. package/features/file/ListTags/abstractions.d.ts +45 -0
  311. package/features/file/ListTags/abstractions.js +6 -0
  312. package/features/file/ListTags/abstractions.js.map +1 -0
  313. package/features/file/ListTags/feature.d.ts +4 -0
  314. package/features/file/ListTags/feature.js +13 -0
  315. package/features/file/ListTags/feature.js.map +1 -0
  316. package/features/file/ListTags/index.d.ts +1 -0
  317. package/features/file/ListTags/index.js +1 -0
  318. package/features/file/UpdateFile/UpdateFileRepository.d.ts +15 -0
  319. package/features/file/UpdateFile/UpdateFileRepository.js +38 -0
  320. package/features/file/UpdateFile/UpdateFileRepository.js.map +1 -0
  321. package/features/file/UpdateFile/UpdateFileUseCase.d.ts +20 -0
  322. package/features/file/UpdateFile/UpdateFileUseCase.js +71 -0
  323. package/features/file/UpdateFile/UpdateFileUseCase.js.map +1 -0
  324. package/features/file/UpdateFile/abstractions.d.ts +56 -0
  325. package/features/file/UpdateFile/abstractions.js +6 -0
  326. package/features/file/UpdateFile/abstractions.js.map +1 -0
  327. package/features/file/UpdateFile/events.d.ts +34 -0
  328. package/features/file/UpdateFile/events.js +23 -0
  329. package/features/file/UpdateFile/events.js.map +1 -0
  330. package/features/file/UpdateFile/feature.d.ts +4 -0
  331. package/features/file/UpdateFile/feature.js +13 -0
  332. package/features/file/UpdateFile/feature.js.map +1 -0
  333. package/features/file/UpdateFile/index.d.ts +2 -0
  334. package/features/file/UpdateFile/index.js +2 -0
  335. package/features/file/shared/EntryToFileMapper.d.ts +5 -0
  336. package/features/file/shared/EntryToFileMapper.js +28 -0
  337. package/features/file/shared/EntryToFileMapper.js.map +1 -0
  338. package/features/file/shared/FileInputToEntryInputMapper.d.ts +5 -0
  339. package/features/file/shared/FileInputToEntryInputMapper.js +32 -0
  340. package/features/file/shared/FileInputToEntryInputMapper.js.map +1 -0
  341. package/features/file/shared/FileToEntryMapper.d.ts +5 -0
  342. package/features/file/shared/FileToEntryMapper.js +31 -0
  343. package/features/file/shared/FileToEntryMapper.js.map +1 -0
  344. package/features/permissions/abstractions.d.ts +21 -0
  345. package/features/permissions/abstractions.js +6 -0
  346. package/features/permissions/abstractions.js.map +1 -0
  347. package/features/permissions/feature.d.ts +4 -0
  348. package/features/permissions/feature.js +7 -0
  349. package/features/permissions/feature.js.map +1 -0
  350. package/features/settings/GetSettings/GetSettingsUseCase.d.ts +13 -0
  351. package/features/settings/GetSettings/GetSettingsUseCase.js +28 -0
  352. package/features/settings/GetSettings/GetSettingsUseCase.js.map +1 -0
  353. package/features/settings/GetSettings/abstractions.d.ts +18 -0
  354. package/features/settings/GetSettings/abstractions.js +5 -0
  355. package/features/settings/GetSettings/abstractions.js.map +1 -0
  356. package/features/settings/GetSettings/feature.d.ts +4 -0
  357. package/features/settings/GetSettings/feature.js +11 -0
  358. package/features/settings/GetSettings/feature.js.map +1 -0
  359. package/features/settings/SettingsInstaller/SettingsInstaller.d.ts +15 -0
  360. package/features/settings/SettingsInstaller/SettingsInstaller.js +33 -0
  361. package/features/settings/SettingsInstaller/SettingsInstaller.js.map +1 -0
  362. package/features/settings/SettingsInstaller/feature.d.ts +4 -0
  363. package/features/settings/SettingsInstaller/feature.js +11 -0
  364. package/features/settings/SettingsInstaller/feature.js.map +1 -0
  365. package/features/settings/UpdateSettings/UpdateSettingsUseCase.d.ts +20 -0
  366. package/features/settings/UpdateSettings/UpdateSettingsUseCase.js +63 -0
  367. package/features/settings/UpdateSettings/UpdateSettingsUseCase.js.map +1 -0
  368. package/features/settings/UpdateSettings/abstractions.d.ts +23 -0
  369. package/features/settings/UpdateSettings/abstractions.js +5 -0
  370. package/features/settings/UpdateSettings/abstractions.js.map +1 -0
  371. package/features/settings/UpdateSettings/events.d.ts +34 -0
  372. package/features/settings/UpdateSettings/events.js +23 -0
  373. package/features/settings/UpdateSettings/events.js.map +1 -0
  374. package/features/settings/UpdateSettings/feature.d.ts +4 -0
  375. package/features/settings/UpdateSettings/feature.js +11 -0
  376. package/features/settings/UpdateSettings/feature.js.map +1 -0
  377. package/features/settings/UpdateSettings/index.d.ts +2 -0
  378. package/features/settings/UpdateSettings/index.js +2 -0
  379. package/features/shared/abstractions.d.ts +1 -0
  380. package/features/shared/abstractions.js +1 -0
  381. package/features/upload/CompleteMultiPartUpload/abstractions.d.ts +12 -0
  382. package/features/upload/CompleteMultiPartUpload/abstractions.js +5 -0
  383. package/features/upload/CompleteMultiPartUpload/abstractions.js.map +1 -0
  384. package/features/upload/CompleteMultiPartUpload/index.d.ts +1 -0
  385. package/features/upload/CompleteMultiPartUpload/index.js +1 -0
  386. package/features/upload/CreateMultiPartUpload/abstractions.d.ts +14 -0
  387. package/features/upload/CreateMultiPartUpload/abstractions.js +5 -0
  388. package/features/upload/CreateMultiPartUpload/abstractions.js.map +1 -0
  389. package/features/upload/CreateMultiPartUpload/index.d.ts +1 -0
  390. package/features/upload/CreateMultiPartUpload/index.js +1 -0
  391. package/features/upload/GetUploadPayload/abstractions.d.ts +10 -0
  392. package/features/upload/GetUploadPayload/abstractions.js +5 -0
  393. package/features/upload/GetUploadPayload/abstractions.js.map +1 -0
  394. package/features/upload/GetUploadPayload/index.d.ts +1 -0
  395. package/features/upload/GetUploadPayload/index.js +1 -0
  396. package/features/upload/ReadFileMetadata/MetadataReader.d.ts +11 -0
  397. package/features/upload/ReadFileMetadata/MetadataReader.js +21 -0
  398. package/features/upload/ReadFileMetadata/MetadataReader.js.map +1 -0
  399. package/features/upload/ReadFileMetadata/abstractions.d.ts +15 -0
  400. package/features/upload/ReadFileMetadata/abstractions.js +5 -0
  401. package/features/upload/ReadFileMetadata/abstractions.js.map +1 -0
  402. package/features/upload/ReadFileMetadata/feature.d.ts +4 -0
  403. package/features/upload/ReadFileMetadata/feature.js +11 -0
  404. package/features/upload/ReadFileMetadata/feature.js.map +1 -0
  405. package/features/upload/ReadFileMetadata/index.d.ts +1 -0
  406. package/features/upload/ReadFileMetadata/index.js +1 -0
  407. package/features/upload/WriteFileMetadata/MetadataWriter.d.ts +14 -0
  408. package/features/upload/WriteFileMetadata/MetadataWriter.js +36 -0
  409. package/features/upload/WriteFileMetadata/MetadataWriter.js.map +1 -0
  410. package/features/upload/WriteFileMetadata/WriteMetadataAfterBatchCreateHandler.d.ts +11 -0
  411. package/features/upload/WriteFileMetadata/WriteMetadataAfterBatchCreateHandler.js +20 -0
  412. package/features/upload/WriteFileMetadata/WriteMetadataAfterBatchCreateHandler.js.map +1 -0
  413. package/features/upload/WriteFileMetadata/WriteMetadataAfterCreateHandler.d.ts +11 -0
  414. package/features/upload/WriteFileMetadata/WriteMetadataAfterCreateHandler.js +22 -0
  415. package/features/upload/WriteFileMetadata/WriteMetadataAfterCreateHandler.js.map +1 -0
  416. package/features/upload/WriteFileMetadata/WriteMetadataAfterUpdateHandler.d.ts +11 -0
  417. package/features/upload/WriteFileMetadata/WriteMetadataAfterUpdateHandler.js +22 -0
  418. package/features/upload/WriteFileMetadata/WriteMetadataAfterUpdateHandler.js.map +1 -0
  419. package/features/upload/WriteFileMetadata/abstractions.d.ts +9 -0
  420. package/features/upload/WriteFileMetadata/abstractions.js +5 -0
  421. package/features/upload/WriteFileMetadata/abstractions.js.map +1 -0
  422. package/features/upload/WriteFileMetadata/feature.d.ts +4 -0
  423. package/features/upload/WriteFileMetadata/feature.js +17 -0
  424. package/features/upload/WriteFileMetadata/feature.js.map +1 -0
  425. package/features/upload/index.d.ts +17 -0
  426. package/features/upload/index.js +10 -0
  427. package/features/upload/types.d.ts +28 -0
  428. package/features/upload/types.js +0 -0
  429. package/features/upload/utils/FileExtension.d.ts +6 -0
  430. package/features/upload/utils/FileExtension.js +16 -0
  431. package/features/upload/utils/FileExtension.js.map +1 -0
  432. package/features/upload/utils/FileKey.d.ts +11 -0
  433. package/features/upload/utils/FileKey.js +33 -0
  434. package/features/upload/utils/FileKey.js.map +1 -0
  435. package/features/upload/utils/FileNormalizer.d.ts +13 -0
  436. package/features/upload/utils/FileNormalizer.js +41 -0
  437. package/features/upload/utils/FileNormalizer.js.map +1 -0
  438. package/features/upload/utils/FileUploadModifier.d.ts +30 -0
  439. package/features/upload/utils/FileUploadModifier.js +39 -0
  440. package/features/upload/utils/FileUploadModifier.js.map +1 -0
  441. package/features/upload/utils/checkPermissions.d.ts +5 -0
  442. package/features/upload/utils/checkPermissions.js +22 -0
  443. package/features/upload/utils/checkPermissions.js.map +1 -0
  444. package/features/upload/utils/createFileNormalizerFromContext.d.ts +3 -0
  445. package/features/upload/utils/createFileNormalizerFromContext.js +9 -0
  446. package/features/upload/utils/createFileNormalizerFromContext.js.map +1 -0
  447. package/features/upload/utils/mimeTypes.d.ts +1 -0
  448. package/features/upload/utils/mimeTypes.js +9 -0
  449. package/features/upload/utils/mimeTypes.js.map +1 -0
  450. package/graphql/FmGraphQLSchema.d.ts +24 -0
  451. package/graphql/FmGraphQLSchema.js +459 -0
  452. package/graphql/FmGraphQLSchema.js.map +1 -0
  453. package/index.d.ts +4 -7
  454. package/index.js +14 -51
  455. package/index.js.map +1 -1
  456. package/package.json +40 -41
  457. package/types.d.ts +2 -345
  458. package/types.js +1 -27
  459. package/FileManagerContextSetup.d.ts +0 -13
  460. package/FileManagerContextSetup.js +0 -113
  461. package/FileManagerContextSetup.js.map +0 -1
  462. package/cmsFileStorage/CmsFilesStorage.d.ts +0 -27
  463. package/cmsFileStorage/CmsFilesStorage.js +0 -173
  464. package/cmsFileStorage/CmsFilesStorage.js.map +0 -1
  465. package/cmsFileStorage/ListFilesWhereProcessor.d.ts +0 -7
  466. package/cmsFileStorage/ListFilesWhereProcessor.js +0 -35
  467. package/cmsFileStorage/ListFilesWhereProcessor.js.map +0 -1
  468. package/cmsFileStorage/ListTagsWhereProcessor.d.ts +0 -7
  469. package/cmsFileStorage/ListTagsWhereProcessor.js +0 -35
  470. package/cmsFileStorage/ListTagsWhereProcessor.js.map +0 -1
  471. package/cmsFileStorage/createFileManagerPlugins.d.ts +0 -5
  472. package/cmsFileStorage/createFileManagerPlugins.js +0 -34
  473. package/cmsFileStorage/createFileManagerPlugins.js.map +0 -1
  474. package/cmsFileStorage/createModelField.d.ts +0 -5
  475. package/cmsFileStorage/createModelField.js +0 -37
  476. package/cmsFileStorage/createModelField.js.map +0 -1
  477. package/cmsFileStorage/file.model.d.ts +0 -4
  478. package/cmsFileStorage/file.model.js +0 -124
  479. package/cmsFileStorage/file.model.js.map +0 -1
  480. package/cmsFileStorage/isInstallationPending.d.ts +0 -4
  481. package/cmsFileStorage/isInstallationPending.js +0 -21
  482. package/cmsFileStorage/isInstallationPending.js.map +0 -1
  483. package/createFileManager/files.crud.d.ts +0 -3
  484. package/createFileManager/files.crud.js +0 -300
  485. package/createFileManager/files.crud.js.map +0 -1
  486. package/createFileManager/filevalidation.disabled.js +0 -55
  487. package/createFileManager/filevalidation.disabled.js.map +0 -1
  488. package/createFileManager/index.d.ts +0 -15
  489. package/createFileManager/index.js +0 -20
  490. package/createFileManager/index.js.map +0 -1
  491. package/createFileManager/permissions/FilesPermissions.d.ts +0 -4
  492. package/createFileManager/permissions/FilesPermissions.js +0 -9
  493. package/createFileManager/permissions/FilesPermissions.js.map +0 -1
  494. package/createFileManager/settings.crud.d.ts +0 -3
  495. package/createFileManager/settings.crud.js +0 -91
  496. package/createFileManager/settings.crud.js.map +0 -1
  497. package/createFileManager/system.crud.d.ts +0 -3
  498. package/createFileManager/system.crud.js +0 -86
  499. package/createFileManager/system.crud.js.map +0 -1
  500. package/graphql/baseSchema.d.ts +0 -3
  501. package/graphql/baseSchema.js +0 -117
  502. package/graphql/baseSchema.js.map +0 -1
  503. package/graphql/createFilesTypeDefs.d.ts +0 -7
  504. package/graphql/createFilesTypeDefs.js +0 -162
  505. package/graphql/createFilesTypeDefs.js.map +0 -1
  506. package/graphql/filesSchema.d.ts +0 -4
  507. package/graphql/filesSchema.js +0 -83
  508. package/graphql/filesSchema.js.map +0 -1
  509. package/graphql/index.d.ts +0 -3
  510. package/graphql/index.js +0 -33
  511. package/graphql/index.js.map +0 -1
  512. package/graphql/utils.d.ts +0 -11
  513. package/graphql/utils.js +0 -22
  514. package/graphql/utils.js.map +0 -1
  515. package/handlers/download/byAlias.d.ts +0 -6
  516. package/handlers/download/byAlias.js +0 -89
  517. package/handlers/download/byAlias.js.map +0 -1
  518. package/handlers/download/byExactKey.d.ts +0 -2
  519. package/handlers/download/byExactKey.js +0 -57
  520. package/handlers/download/byExactKey.js.map +0 -1
  521. package/handlers/download/extractFileInformation.d.ts +0 -9
  522. package/handlers/download/extractFileInformation.js +0 -20
  523. package/handlers/download/extractFileInformation.js.map +0 -1
  524. package/handlers/download/getS3Object.d.ts +0 -12
  525. package/handlers/download/getS3Object.js +0 -72
  526. package/handlers/download/getS3Object.js.map +0 -1
  527. package/handlers/download/index.d.ts +0 -2
  528. package/handlers/download/index.js +0 -27
  529. package/handlers/download/index.js.map +0 -1
  530. package/handlers/manage/index.d.ts +0 -5
  531. package/handlers/manage/index.js +0 -55
  532. package/handlers/manage/index.js.map +0 -1
  533. package/handlers/transform/index.d.ts +0 -2
  534. package/handlers/transform/index.js +0 -92
  535. package/handlers/transform/index.js.map +0 -1
  536. package/handlers/transform/legacyUtils.d.ts +0 -17
  537. package/handlers/transform/legacyUtils.js +0 -42
  538. package/handlers/transform/legacyUtils.js.map +0 -1
  539. package/handlers/transform/loaders/imageLoader.d.ts +0 -30
  540. package/handlers/transform/loaders/imageLoader.js +0 -94
  541. package/handlers/transform/loaders/imageLoader.js.map +0 -1
  542. package/handlers/transform/loaders/index.d.ts +0 -8
  543. package/handlers/transform/loaders/index.js +0 -10
  544. package/handlers/transform/loaders/index.js.map +0 -1
  545. package/handlers/transform/loaders/sanitizeImageTransformations.d.ts +0 -11
  546. package/handlers/transform/loaders/sanitizeImageTransformations.js +0 -45
  547. package/handlers/transform/loaders/sanitizeImageTransformations.js.map +0 -1
  548. package/handlers/transform/managers/imageManager.d.ts +0 -15
  549. package/handlers/transform/managers/imageManager.js +0 -74
  550. package/handlers/transform/managers/imageManager.js.map +0 -1
  551. package/handlers/transform/managers/index.d.ts +0 -5
  552. package/handlers/transform/managers/index.js +0 -10
  553. package/handlers/transform/managers/index.js.map +0 -1
  554. package/handlers/transform/optimizeImage.d.ts +0 -3
  555. package/handlers/transform/optimizeImage.js +0 -42
  556. package/handlers/transform/optimizeImage.js.map +0 -1
  557. package/handlers/transform/transformImage.d.ts +0 -13
  558. package/handlers/transform/transformImage.js +0 -28
  559. package/handlers/transform/transformImage.js.map +0 -1
  560. package/handlers/transform/utils.d.ts +0 -12
  561. package/handlers/transform/utils.js +0 -36
  562. package/handlers/transform/utils.js.map +0 -1
  563. package/handlers/types.d.ts +0 -8
  564. package/handlers/types.js +0 -5
  565. package/handlers/types.js.map +0 -1
  566. package/handlers/utils/getEnvironment.d.ts +0 -5
  567. package/handlers/utils/getEnvironment.js +0 -11
  568. package/handlers/utils/getEnvironment.js.map +0 -1
  569. package/handlers/utils/getObjectParams.d.ts +0 -9
  570. package/handlers/utils/getObjectParams.js +0 -21
  571. package/handlers/utils/getObjectParams.js.map +0 -1
  572. package/handlers/utils/index.d.ts +0 -2
  573. package/handlers/utils/index.js +0 -20
  574. package/handlers/utils/index.js.map +0 -1
  575. package/modelModifier/CmsModelModifier.d.ts +0 -24
  576. package/modelModifier/CmsModelModifier.js +0 -59
  577. package/modelModifier/CmsModelModifier.js.map +0 -1
  578. package/plugins/FilePhysicalStoragePlugin.d.ts +0 -21
  579. package/plugins/FilePhysicalStoragePlugin.js +0 -31
  580. package/plugins/FilePhysicalStoragePlugin.js.map +0 -1
  581. package/plugins/FileStorageTransformPlugin.d.ts +0 -34
  582. package/plugins/FileStorageTransformPlugin.js +0 -40
  583. package/plugins/FileStorageTransformPlugin.js.map +0 -1
  584. package/plugins/index.d.ts +0 -2
  585. package/plugins/index.js +0 -27
  586. package/plugins/index.js.map +0 -1
  587. package/storage/FileStorage.d.ts +0 -33
  588. package/storage/FileStorage.js +0 -87
  589. package/storage/FileStorage.js.map +0 -1
  590. package/types/file.d.ts +0 -37
  591. package/types/file.js +0 -5
  592. package/types/file.js.map +0 -1
  593. package/types/file.lifecycle.d.ts +0 -44
  594. package/types/file.lifecycle.js +0 -5
  595. package/types/file.lifecycle.js.map +0 -1
  596. package/types.js.map +0 -1
  597. /package/{createFileManager/filevalidation.disabled.d.ts → domain/file/types.js} +0 -0
@@ -0,0 +1,5 @@
1
+ import { type Container } from "@webiny/feature/api";
2
+ export declare const FileManagerAppFeature: {
3
+ name: string;
4
+ register(container: Container): void;
5
+ };
@@ -0,0 +1,21 @@
1
+ import { createFeature } from "@webiny/feature/api";
2
+ import { AssetDeliveryFeature } from "./features/assetDelivery/feature.js";
3
+ import { AssetDeliveryRouteDefinition } from "./delivery/AssetDeliveryRoute.js";
4
+ import { FileModel } from "./domain/file/file.model.js";
5
+ import { FmPermissionsFeature } from "./features/permissions/feature.js";
6
+ import { FileManagerFeature } from "./features/FileManagerFeature.js";
7
+ import { FileModelProvider } from "./features/file/FileModelProvider.js";
8
+ const FileManagerAppFeature = createFeature({
9
+ name: "FileManagerApp",
10
+ register (container) {
11
+ AssetDeliveryFeature.register(container);
12
+ container.register(AssetDeliveryRouteDefinition);
13
+ container.register(FileModel);
14
+ FmPermissionsFeature.register(container);
15
+ FileManagerFeature.register(container);
16
+ container.register(FileModelProvider);
17
+ }
18
+ });
19
+ export { FileManagerAppFeature };
20
+
21
+ //# sourceMappingURL=FileManagerAppFeature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FileManagerAppFeature.js","sources":["../src/FileManagerAppFeature.ts"],"sourcesContent":["import { type Container, createFeature } from \"@webiny/feature/api\";\nimport { AssetDeliveryFeature } from \"~/features/assetDelivery/feature.js\";\nimport { AssetDeliveryRouteDefinition } from \"./delivery/AssetDeliveryRoute.js\";\nimport { FileModel } from \"~/domain/file/file.model.js\";\nimport { FmPermissionsFeature } from \"~/features/permissions/feature.js\";\nimport { FileManagerFeature } from \"~/features/FileManagerFeature.js\";\nimport { FileModelProvider } from \"~/features/file/FileModelProvider.js\";\n\nexport const FileManagerAppFeature = createFeature({\n name: \"FileManagerApp\",\n register(container: Container) {\n AssetDeliveryFeature.register(container);\n container.register(AssetDeliveryRouteDefinition);\n container.register(FileModel);\n FmPermissionsFeature.register(container);\n FileManagerFeature.register(container);\n\n // Stateless — the model list is already cached per request by the CMS (`ModelCache`), so the\n // provider holds nothing and needs no lifetime of its own.\n container.register(FileModelProvider);\n }\n});\n"],"names":["FileManagerAppFeature","createFeature","container","AssetDeliveryFeature","AssetDeliveryRouteDefinition","FileModel","FmPermissionsFeature","FileManagerFeature","FileModelProvider"],"mappings":";;;;;;;AAQO,MAAMA,wBAAwBC,cAAc;IAC/C,MAAM;IACN,UAASC,SAAoB;QACzBC,qBAAqB,QAAQ,CAACD;QAC9BA,UAAU,QAAQ,CAACE;QACnBF,UAAU,QAAQ,CAACG;QACnBC,qBAAqB,QAAQ,CAACJ;QAC9BK,mBAAmB,QAAQ,CAACL;QAI5BA,UAAU,QAAQ,CAACM;IACvB;AACJ"}
package/README.md CHANGED
@@ -1,17 +1,11 @@
1
1
  # @webiny/api-file-manager
2
- [![](https://img.shields.io/npm/dw/@webiny/api-file-manager.svg)](https://www.npmjs.com/package/@webiny/api-file-manager)
3
- [![](https://img.shields.io/npm/v/@webiny/api-file-manager.svg)](https://www.npmjs.com/package/@webiny/api-file-manager)
4
- [![code style: prettier](https://img.shields.io/badge/code_style-prettier-ff69b4.svg?style=flat-square)](https://github.com/prettier/prettier)
5
- [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com)
6
2
 
7
- The API for Webiny Admin's ([@webiny/admin](../app-admin)) File Manager.
3
+ > [!NOTE]
4
+ > This package is part of the [Webiny](https://www.webiny.com) monorepo.
5
+ > It’s **included in every Webiny project by default** and is not meant to be used as a standalone package.
8
6
 
9
- ## Install
10
- ```
11
- npm install --save @webiny/api-file-manager
12
- ```
7
+ 📘 **Documentation:** [https://www.webiny.com/docs](https://www.webiny.com/docs)
13
8
 
14
- Or if you prefer yarn:
15
- ```
16
- yarn add @webiny/api-file-manager
17
- ```
9
+ ---
10
+
11
+ _This README file is automatically generated during the publish process._
package/contants.js CHANGED
@@ -1,8 +1,4 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.ROOT_FOLDER = void 0;
7
1
  const ROOT_FOLDER = "root";
8
- exports.ROOT_FOLDER = ROOT_FOLDER;
2
+ export { ROOT_FOLDER };
3
+
4
+ //# sourceMappingURL=contants.js.map
package/contants.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":["ROOT_FOLDER","exports"],"sources":["contants.ts"],"sourcesContent":["export const ROOT_FOLDER = \"root\";\n"],"mappings":";;;;;;AAAO,MAAMA,WAAW,GAAG,MAAM;AAACC,OAAA,CAAAD,WAAA,GAAAA,WAAA"}
1
+ {"version":3,"file":"contants.js","sources":["../src/contants.ts"],"sourcesContent":["export const ROOT_FOLDER = \"root\";\n"],"names":["ROOT_FOLDER"],"mappings":"AAAO,MAAMA,cAAc"}
@@ -0,0 +1,28 @@
1
+ import type { AssetContentsReader, AssetOutputStrategy } from "../../delivery/index.js";
2
+ type Setter<T> = (arg: T | undefined) => T;
3
+ export interface AssetData {
4
+ id: string;
5
+ tenant: string;
6
+ key: string;
7
+ size: number;
8
+ contentType: string;
9
+ }
10
+ export declare class Asset {
11
+ protected readonly props: AssetData;
12
+ private outputStrategy;
13
+ private contentsReader;
14
+ constructor(props: AssetData);
15
+ clone(): Asset;
16
+ withProps(props: Partial<AssetData>): Asset;
17
+ getId(): string;
18
+ getTenant(): string;
19
+ getKey(): string;
20
+ getSize(): number;
21
+ getContentType(): string;
22
+ getExtension(): string;
23
+ getContents(): Promise<Buffer<ArrayBufferLike>>;
24
+ setContentsReader(reader: AssetContentsReader): void;
25
+ output(): Promise<import("~/delivery/index.js").AssetReply>;
26
+ setOutputStrategy(setter: Setter<AssetOutputStrategy> | AssetOutputStrategy): void;
27
+ }
28
+ export {};
@@ -0,0 +1,53 @@
1
+ class Asset {
2
+ constructor(props){
3
+ this.props = props;
4
+ }
5
+ clone() {
6
+ return this.withProps(structuredClone(this.props));
7
+ }
8
+ withProps(props) {
9
+ const newAsset = new Asset({
10
+ ...this.props,
11
+ ...props
12
+ });
13
+ newAsset.contentsReader = this.contentsReader;
14
+ newAsset.outputStrategy = this.outputStrategy;
15
+ return newAsset;
16
+ }
17
+ getId() {
18
+ return this.props.id;
19
+ }
20
+ getTenant() {
21
+ return this.props.tenant;
22
+ }
23
+ getKey() {
24
+ return this.props.key;
25
+ }
26
+ getSize() {
27
+ return this.props.size;
28
+ }
29
+ getContentType() {
30
+ return this.props.contentType;
31
+ }
32
+ getExtension() {
33
+ return this.getKey().split(".").pop() ?? "";
34
+ }
35
+ getContents() {
36
+ if (!this.contentsReader) throw Error("Asset contents reader was not configured!");
37
+ return this.contentsReader.read(this);
38
+ }
39
+ setContentsReader(reader) {
40
+ this.contentsReader = reader;
41
+ }
42
+ output() {
43
+ if (!this.outputStrategy) throw Error("Asset output strategy was not configured!");
44
+ return this.outputStrategy.output(this);
45
+ }
46
+ setOutputStrategy(setter) {
47
+ if ("function" == typeof setter) this.outputStrategy = setter(this.outputStrategy);
48
+ else this.outputStrategy = setter;
49
+ }
50
+ }
51
+ export { Asset };
52
+
53
+ //# sourceMappingURL=Asset.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delivery/AssetDelivery/Asset.js","sources":["../../../src/delivery/AssetDelivery/Asset.ts"],"sourcesContent":["import type { AssetContentsReader, AssetOutputStrategy } from \"~/delivery/index.js\";\n\ntype Setter<T> = (arg: T | undefined) => T;\n\nexport interface AssetData {\n id: string;\n tenant: string;\n key: string;\n size: number;\n contentType: string;\n}\n\nexport class Asset {\n protected readonly props: AssetData;\n private outputStrategy: AssetOutputStrategy | undefined;\n private contentsReader: AssetContentsReader | undefined;\n\n constructor(props: AssetData) {\n this.props = props;\n }\n\n clone() {\n return this.withProps(structuredClone(this.props));\n }\n\n withProps(props: Partial<AssetData>) {\n const newAsset = new Asset({ ...this.props, ...props });\n newAsset.contentsReader = this.contentsReader;\n newAsset.outputStrategy = this.outputStrategy;\n return newAsset;\n }\n\n getId() {\n return this.props.id;\n }\n getTenant() {\n return this.props.tenant;\n }\n getKey() {\n return this.props.key;\n }\n getSize() {\n return this.props.size;\n }\n getContentType() {\n return this.props.contentType;\n }\n getExtension() {\n return this.getKey().split(\".\").pop() ?? \"\";\n }\n\n getContents() {\n if (!this.contentsReader) {\n throw Error(`Asset contents reader was not configured!`);\n }\n return this.contentsReader.read(this);\n }\n\n setContentsReader(reader: AssetContentsReader) {\n this.contentsReader = reader;\n }\n\n output() {\n if (!this.outputStrategy) {\n throw Error(`Asset output strategy was not configured!`);\n }\n\n return this.outputStrategy.output(this);\n }\n\n setOutputStrategy(setter: Setter<AssetOutputStrategy> | AssetOutputStrategy) {\n if (typeof setter === \"function\") {\n this.outputStrategy = setter(this.outputStrategy);\n } else {\n this.outputStrategy = setter;\n }\n }\n}\n"],"names":["Asset","props","structuredClone","newAsset","Error","reader","setter"],"mappings":"AAYO,MAAMA;IAKT,YAAYC,KAAgB,CAAE;QAC1B,IAAI,CAAC,KAAK,GAAGA;IACjB;IAEA,QAAQ;QACJ,OAAO,IAAI,CAAC,SAAS,CAACC,gBAAgB,IAAI,CAAC,KAAK;IACpD;IAEA,UAAUD,KAAyB,EAAE;QACjC,MAAME,WAAW,IAAIH,MAAM;YAAE,GAAG,IAAI,CAAC,KAAK;YAAE,GAAGC,KAAK;QAAC;QACrDE,SAAS,cAAc,GAAG,IAAI,CAAC,cAAc;QAC7CA,SAAS,cAAc,GAAG,IAAI,CAAC,cAAc;QAC7C,OAAOA;IACX;IAEA,QAAQ;QACJ,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE;IACxB;IACA,YAAY;QACR,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM;IAC5B;IACA,SAAS;QACL,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG;IACzB;IACA,UAAU;QACN,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI;IAC1B;IACA,iBAAiB;QACb,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW;IACjC;IACA,eAAe;QACX,OAAO,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,KAAK,GAAG,MAAM;IAC7C;IAEA,cAAc;QACV,IAAI,CAAC,IAAI,CAAC,cAAc,EACpB,MAAMC,MAAM;QAEhB,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI;IACxC;IAEA,kBAAkBC,MAA2B,EAAE;QAC3C,IAAI,CAAC,cAAc,GAAGA;IAC1B;IAEA,SAAS;QACL,IAAI,CAAC,IAAI,CAAC,cAAc,EACpB,MAAMD,MAAM;QAGhB,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI;IAC1C;IAEA,kBAAkBE,MAAyD,EAAE;QACzE,IAAI,AAAkB,cAAlB,OAAOA,QACP,IAAI,CAAC,cAAc,GAAGA,OAAO,IAAI,CAAC,cAAc;aAEhD,IAAI,CAAC,cAAc,GAAGA;IAE9B;AACJ"}
@@ -0,0 +1,25 @@
1
+ import type { GenericRecord } from "@webiny/api/types.js";
2
+ export interface AssetRequestOptions {
3
+ original?: boolean;
4
+ [key: string]: unknown;
5
+ }
6
+ export type AssetRequestContext<T extends GenericRecord = GenericRecord> = T & {
7
+ /**
8
+ * Asset request URL.
9
+ */
10
+ url: string;
11
+ };
12
+ export interface AssetRequestData<TOptions> {
13
+ key: string;
14
+ context: AssetRequestContext;
15
+ options: TOptions;
16
+ }
17
+ export declare class AssetRequest<TOptions extends AssetRequestOptions = AssetRequestOptions> {
18
+ private data;
19
+ constructor(data: AssetRequestData<TOptions>);
20
+ getKey(): string;
21
+ getOptions(): TOptions;
22
+ setOptions(options: TOptions): void;
23
+ getContext<T extends GenericRecord = GenericRecord>(): AssetRequestContext<T>;
24
+ getExtension(): string | undefined;
25
+ }
@@ -0,0 +1,23 @@
1
+ class AssetRequest {
2
+ constructor(data){
3
+ this.data = data;
4
+ }
5
+ getKey() {
6
+ return this.data.key;
7
+ }
8
+ getOptions() {
9
+ return this.data.options;
10
+ }
11
+ setOptions(options) {
12
+ this.data.options = options;
13
+ }
14
+ getContext() {
15
+ return this.data.context;
16
+ }
17
+ getExtension() {
18
+ return this.data.key.split(".").pop();
19
+ }
20
+ }
21
+ export { AssetRequest };
22
+
23
+ //# sourceMappingURL=AssetRequest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delivery/AssetDelivery/AssetRequest.js","sources":["../../../src/delivery/AssetDelivery/AssetRequest.ts"],"sourcesContent":["import type { GenericRecord } from \"@webiny/api/types.js\";\n\nexport interface AssetRequestOptions {\n original?: boolean;\n [key: string]: unknown;\n}\n\nexport type AssetRequestContext<T extends GenericRecord = GenericRecord> = T & {\n /**\n * Asset request URL.\n */\n url: string;\n};\n\nexport interface AssetRequestData<TOptions> {\n key: string;\n context: AssetRequestContext;\n options: TOptions;\n}\n\nexport class AssetRequest<TOptions extends AssetRequestOptions = AssetRequestOptions> {\n private data: AssetRequestData<TOptions>;\n\n constructor(data: AssetRequestData<TOptions>) {\n this.data = data;\n }\n\n getKey() {\n return this.data.key;\n }\n\n getOptions(): TOptions {\n return this.data.options;\n }\n\n setOptions(options: TOptions) {\n this.data.options = options;\n }\n\n getContext<T extends GenericRecord = GenericRecord>() {\n return this.data.context as AssetRequestContext<T>;\n }\n\n getExtension() {\n return this.data.key.split(\".\").pop();\n }\n}\n"],"names":["AssetRequest","data","options"],"mappings":"AAoBO,MAAMA;IAGT,YAAYC,IAAgC,CAAE;QAC1C,IAAI,CAAC,IAAI,GAAGA;IAChB;IAEA,SAAS;QACL,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG;IACxB;IAEA,aAAuB;QACnB,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO;IAC5B;IAEA,WAAWC,OAAiB,EAAE;QAC1B,IAAI,CAAC,IAAI,CAAC,OAAO,GAAGA;IACxB;IAEA,aAAsD;QAClD,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO;IAC5B;IAEA,eAAe;QACX,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,GAAG;IACvC;AACJ"}
@@ -0,0 +1,25 @@
1
+ import { ResponseHeaders } from "@webiny/handler";
2
+ interface HeadersSetter {
3
+ (headers: ResponseHeaders): ResponseHeaders;
4
+ }
5
+ interface AssetReplyParams {
6
+ code: number;
7
+ headers?: ResponseHeaders;
8
+ body?: AssetReplyBody;
9
+ }
10
+ interface AssetReplyBody {
11
+ (): Promise<unknown> | unknown;
12
+ }
13
+ export declare class AssetReply {
14
+ private headers;
15
+ private code;
16
+ private body;
17
+ constructor(params?: AssetReplyParams);
18
+ setHeaders(cb: HeadersSetter): void;
19
+ getHeaders(): ResponseHeaders;
20
+ setCode(code: number): void;
21
+ getCode(): number;
22
+ setBody(body: AssetReplyBody): void;
23
+ getBody(): unknown;
24
+ }
25
+ export {};
@@ -0,0 +1,32 @@
1
+ import { ResponseHeaders } from "@webiny/handler";
2
+ const defaultBody = ()=>"";
3
+ class AssetReply {
4
+ constructor(params = {
5
+ code: 200
6
+ }){
7
+ this.code = params.code;
8
+ this.headers = params.headers || ResponseHeaders.create();
9
+ this.body = params.body || defaultBody;
10
+ }
11
+ setHeaders(cb) {
12
+ this.headers = cb(this.headers);
13
+ }
14
+ getHeaders() {
15
+ return this.headers;
16
+ }
17
+ setCode(code) {
18
+ this.code = code;
19
+ }
20
+ getCode() {
21
+ return this.code;
22
+ }
23
+ setBody(body) {
24
+ this.body = body;
25
+ }
26
+ getBody() {
27
+ return this.body();
28
+ }
29
+ }
30
+ export { AssetReply };
31
+
32
+ //# sourceMappingURL=AssetReply.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delivery/AssetDelivery/abstractions/AssetReply.js","sources":["../../../../src/delivery/AssetDelivery/abstractions/AssetReply.ts"],"sourcesContent":["import { ResponseHeaders } from \"@webiny/handler\";\n\ninterface HeadersSetter {\n (headers: ResponseHeaders): ResponseHeaders;\n}\n\ninterface AssetReplyParams {\n code: number;\n headers?: ResponseHeaders;\n body?: AssetReplyBody;\n}\n\ninterface AssetReplyBody {\n (): Promise<unknown> | unknown;\n}\n\nconst defaultBody = () => \"\";\n\nexport class AssetReply {\n private headers: ResponseHeaders;\n private code: number;\n private body: AssetReplyBody;\n\n constructor(params: AssetReplyParams = { code: 200 }) {\n this.code = params.code;\n this.headers = params.headers || ResponseHeaders.create();\n this.body = params.body || defaultBody;\n }\n\n setHeaders(cb: HeadersSetter) {\n this.headers = cb(this.headers);\n }\n\n getHeaders() {\n return this.headers;\n }\n\n setCode(code: number) {\n this.code = code;\n }\n\n getCode() {\n return this.code;\n }\n\n setBody(body: AssetReplyBody) {\n this.body = body;\n }\n\n getBody() {\n return this.body();\n }\n}\n"],"names":["defaultBody","AssetReply","params","ResponseHeaders","cb","code","body"],"mappings":";AAgBA,MAAMA,cAAc,IAAM;AAEnB,MAAMC;IAKT,YAAYC,SAA2B;QAAE,MAAM;IAAI,CAAC,CAAE;QAClD,IAAI,CAAC,IAAI,GAAGA,OAAO,IAAI;QACvB,IAAI,CAAC,OAAO,GAAGA,OAAO,OAAO,IAAIC,gBAAgB,MAAM;QACvD,IAAI,CAAC,IAAI,GAAGD,OAAO,IAAI,IAAIF;IAC/B;IAEA,WAAWI,EAAiB,EAAE;QAC1B,IAAI,CAAC,OAAO,GAAGA,GAAG,IAAI,CAAC,OAAO;IAClC;IAEA,aAAa;QACT,OAAO,IAAI,CAAC,OAAO;IACvB;IAEA,QAAQC,IAAY,EAAE;QAClB,IAAI,CAAC,IAAI,GAAGA;IAChB;IAEA,UAAU;QACN,OAAO,IAAI,CAAC,IAAI;IACpB;IAEA,QAAQC,IAAoB,EAAE;QAC1B,IAAI,CAAC,IAAI,GAAGA;IAChB;IAEA,UAAU;QACN,OAAO,IAAI,CAAC,IAAI;IACpB;AACJ"}
@@ -0,0 +1,2 @@
1
+ import type { PluginFactory } from "@webiny/plugins/types.js";
2
+ export declare const createAssetDeliveryPluginLoader: (cb: PluginFactory) => PluginFactory;
@@ -0,0 +1,7 @@
1
+ const createAssetDeliveryPluginLoader = (cb)=>{
2
+ if ("asset-delivery" === process.env.WEBINY_FUNCTION_TYPE) return ()=>cb();
3
+ return ()=>Promise.resolve([]);
4
+ };
5
+ export { createAssetDeliveryPluginLoader };
6
+
7
+ //# sourceMappingURL=createAssetDeliveryPluginLoader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delivery/AssetDelivery/createAssetDeliveryPluginLoader.js","sources":["../../../src/delivery/AssetDelivery/createAssetDeliveryPluginLoader.ts"],"sourcesContent":["import type { PluginFactory } from \"@webiny/plugins/types.js\";\n\nexport const createAssetDeliveryPluginLoader = (cb: PluginFactory): PluginFactory => {\n if (process.env.WEBINY_FUNCTION_TYPE === \"asset-delivery\") {\n return () => cb();\n }\n\n return () => Promise.resolve([]);\n};\n"],"names":["createAssetDeliveryPluginLoader","cb","process","Promise"],"mappings":"AAEO,MAAMA,kCAAkC,CAACC;IAC5C,IAAIC,AAAqC,qBAArCA,QAAQ,GAAG,CAAC,oBAAoB,EAChC,OAAO,IAAMD;IAGjB,OAAO,IAAME,QAAQ,OAAO,CAAC,EAAE;AACnC"}
@@ -0,0 +1,24 @@
1
+ import { HttpRouteDefinition, HttpRouteHandler } from "@webiny/event-handler-core";
2
+ import type { Container } from "@webiny/di";
3
+ declare class AssetDeliveryRouteImpl implements HttpRouteHandler.Interface {
4
+ private container;
5
+ constructor(container: Container);
6
+ handle(request: HttpRouteHandler.Request, response: HttpRouteHandler.Response): Promise<import("@webiny/event-handler-core").IHttpResponseBuilder>;
7
+ private deliver;
8
+ }
9
+ export declare const AssetDeliveryRoute: typeof AssetDeliveryRouteImpl & {
10
+ __abstraction: import("@webiny/di").Abstraction<import("@webiny/event-handler-core").IHttpRoute>;
11
+ };
12
+ declare class AssetDeliveryRouteDefinitionImpl implements HttpRouteDefinition.Interface {
13
+ readonly name = "asset-delivery";
14
+ readonly method = "GET";
15
+ readonly path = "/files/*";
16
+ readonly handler: typeof AssetDeliveryRouteImpl & {
17
+ __abstraction: import("@webiny/di").Abstraction<import("@webiny/event-handler-core").IHttpRoute>;
18
+ };
19
+ }
20
+ /** What the router matches on. Zero dependencies, so building it costs nothing. */
21
+ export declare const AssetDeliveryRouteDefinition: typeof AssetDeliveryRouteDefinitionImpl & {
22
+ __abstraction: import("@webiny/di").Abstraction<import("@webiny/event-handler-core").IHttpRouteDefinition>;
23
+ };
24
+ export {};
@@ -0,0 +1,69 @@
1
+ import { HttpRouteDefinition, HttpRouteHandler, RequestContainer } from "@webiny/event-handler-core";
2
+ import { TenantContext } from "@webiny/api-core/features/tenancy/TenantContext/index.js";
3
+ import { GetTenantByIdUseCase } from "@webiny/api-core/features/tenancy/GetTenantById/index.js";
4
+ import { AssetOutputStrategy, AssetProcessor, AssetRequestResolver, AssetResolver } from "../features/assetDelivery/abstractions.js";
5
+ const NO_CACHE = "no-cache, no-store, must-revalidate";
6
+ class AssetDeliveryRouteImpl {
7
+ constructor(container){
8
+ this.container = container;
9
+ }
10
+ async handle(request, response) {
11
+ const requestResolver = this.container.resolve(AssetRequestResolver);
12
+ const assetResolver = this.container.resolve(AssetResolver);
13
+ const tenantContext = this.container.resolve(TenantContext);
14
+ const getTenantById = this.container.resolve(GetTenantByIdUseCase);
15
+ const fakeRequest = {
16
+ url: request.path,
17
+ params: {
18
+ "*": request.path.replace("/files/", "")
19
+ },
20
+ query: request.query ?? {},
21
+ headers: request.headers ?? {}
22
+ };
23
+ const resolvedRequest = await requestResolver.resolve(fakeRequest);
24
+ if (!resolvedRequest) return response.status(404).header("cache-control", NO_CACHE).json({
25
+ error: "Unable to resolve the request!"
26
+ });
27
+ const resolvedAsset = await assetResolver.resolve(resolvedRequest);
28
+ if (!resolvedAsset) return response.status(404).header("cache-control", NO_CACHE).json({
29
+ error: "Asset not found!"
30
+ });
31
+ const tenantResult = await getTenantById.execute(resolvedAsset.getTenant());
32
+ if (tenantResult.isFail()) return response.status(404).header("cache-control", NO_CACHE).json({
33
+ error: "Asset not found!"
34
+ });
35
+ return tenantContext.withTenant(tenantResult.value, ()=>this.deliver(resolvedRequest, resolvedAsset, response));
36
+ }
37
+ async deliver(resolvedRequest, resolvedAsset, response) {
38
+ const assetProcessor = this.container.resolve(AssetProcessor);
39
+ const outputStrategy = this.container.resolve(AssetOutputStrategy);
40
+ resolvedAsset.setOutputStrategy(outputStrategy);
41
+ const processedAsset = await assetProcessor.process(resolvedRequest, resolvedAsset);
42
+ const assetReply = await processedAsset.output();
43
+ const rawHeaders = assetReply.getHeaders().getHeaders();
44
+ for (const [k, v] of Object.entries(rawHeaders))if (void 0 !== v) response.header(k, String(v));
45
+ const body = await assetReply.getBody();
46
+ return response.status(assetReply.getCode()).end(body ?? "");
47
+ }
48
+ }
49
+ const AssetDeliveryRoute = HttpRouteHandler.createImplementation({
50
+ implementation: AssetDeliveryRouteImpl,
51
+ dependencies: [
52
+ RequestContainer
53
+ ]
54
+ });
55
+ class AssetDeliveryRouteDefinitionImpl {
56
+ constructor(){
57
+ this.name = "asset-delivery";
58
+ this.method = "GET";
59
+ this.path = "/files/*";
60
+ this.handler = AssetDeliveryRoute;
61
+ }
62
+ }
63
+ const AssetDeliveryRouteDefinition = HttpRouteDefinition.createImplementation({
64
+ implementation: AssetDeliveryRouteDefinitionImpl,
65
+ dependencies: []
66
+ });
67
+ export { AssetDeliveryRoute, AssetDeliveryRouteDefinition };
68
+
69
+ //# sourceMappingURL=AssetDeliveryRoute.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delivery/AssetDeliveryRoute.js","sources":["../../src/delivery/AssetDeliveryRoute.ts"],"sourcesContent":["import {\n HttpRouteDefinition,\n HttpRouteHandler,\n RequestContainer\n} from \"@webiny/event-handler-core\";\nimport type { Container } from \"@webiny/di\";\nimport { TenantContext } from \"@webiny/api-core/features/tenancy/TenantContext/index.js\";\nimport { GetTenantByIdUseCase } from \"@webiny/api-core/features/tenancy/GetTenantById/index.js\";\nimport {\n AssetRequestResolver,\n AssetResolver,\n AssetProcessor,\n AssetOutputStrategy\n} from \"~/features/assetDelivery/abstractions.js\";\nimport type { Asset } from \"~/delivery/AssetDelivery/Asset.js\";\nimport type { AssetRequest } from \"~/delivery/AssetDelivery/AssetRequest.js\";\n\nconst NO_CACHE = \"no-cache, no-store, must-revalidate\";\n\nclass AssetDeliveryRouteImpl implements HttpRouteHandler.Interface {\n constructor(private container: Container) {}\n\n async handle(request: HttpRouteHandler.Request, response: HttpRouteHandler.Response) {\n // Resolve asset-delivery collaborators lazily (request time), not as constructor deps.\n // HttpRouter eagerly constructs every route to match paths, and AssetProcessor's\n // PrivateFilesAssetProcessor decorator pulls in GetFileUseCase -> CMS entry repositories\n // that depend on EntryFromStorageTransform, which is only registered while a CMS GraphQL\n // request is in flight. Resolving here keeps route construction cheap so non-asset\n // requests (e.g. /graphql) don't trigger that chain before it is registered.\n const requestResolver = this.container.resolve(AssetRequestResolver);\n const assetResolver = this.container.resolve(AssetResolver);\n const tenantContext = this.container.resolve(TenantContext);\n const getTenantById = this.container.resolve(GetTenantByIdUseCase);\n\n // Reconstruct a minimal request object compatible with IAssetRequestResolver\n const fakeRequest = {\n url: request.path,\n params: { \"*\": request.path.replace(\"/files/\", \"\") },\n query: request.query ?? {},\n headers: request.headers ?? {}\n };\n\n const resolvedRequest = await requestResolver.resolve(fakeRequest as any);\n if (!resolvedRequest) {\n return response\n .status(404)\n .header(\"cache-control\", NO_CACHE)\n .json({ error: \"Unable to resolve the request!\" });\n }\n\n const resolvedAsset = await assetResolver.resolve(resolvedRequest);\n if (!resolvedAsset) {\n return response\n .status(404)\n .header(\"cache-control\", NO_CACHE)\n .json({ error: \"Asset not found!\" });\n }\n\n // Delivery requests carry no tenant header, so up to this point the request runs in the\n // root tenant. Now that we know which tenant owns the asset, switch to it for the rest of\n // the request, so processors, authorizers and output strategies (e.g. the private files\n // check, which loads the tenant-scoped file entry) all run in the asset's tenant.\n const tenantResult = await getTenantById.execute(resolvedAsset.getTenant());\n if (tenantResult.isFail()) {\n return response\n .status(404)\n .header(\"cache-control\", NO_CACHE)\n .json({ error: \"Asset not found!\" });\n }\n\n return tenantContext.withTenant(tenantResult.value, () =>\n this.deliver(resolvedRequest, resolvedAsset, response)\n );\n }\n\n private async deliver(\n resolvedRequest: AssetRequest,\n resolvedAsset: Asset,\n response: HttpRouteHandler.Response\n ) {\n const assetProcessor = this.container.resolve(AssetProcessor);\n const outputStrategy = this.container.resolve(AssetOutputStrategy);\n\n resolvedAsset.setOutputStrategy(outputStrategy);\n\n const processedAsset = await assetProcessor.process(resolvedRequest, resolvedAsset);\n const assetReply = await processedAsset.output();\n\n const rawHeaders = assetReply.getHeaders().getHeaders();\n for (const [k, v] of Object.entries(rawHeaders)) {\n if (v !== undefined) {\n response.header(k, String(v));\n }\n }\n\n const body = await assetReply.getBody();\n\n // `end()` (not `send()`) so the raw body passes through untouched and the asset's OWN\n // Content-Type — set from `rawHeaders` above — is preserved. The transport translator\n // (e.g. httpResponseToApiGatewayResult) base64-encodes Buffers and sets isBase64Encoded so\n // API Gateway returns proper binary. Pre-encoding to a base64 STRING here defeated that —\n // the string passed through undecoded and browsers received base64 text, not an image.\n return response.status(assetReply.getCode()).end(body ?? \"\");\n }\n}\n\nexport const AssetDeliveryRoute = HttpRouteHandler.createImplementation({\n implementation: AssetDeliveryRouteImpl,\n dependencies: [RequestContainer]\n});\n\nclass AssetDeliveryRouteDefinitionImpl implements HttpRouteDefinition.Interface {\n readonly name = \"asset-delivery\";\n readonly method = \"GET\";\n readonly path = \"/files/*\";\n readonly handler = AssetDeliveryRoute;\n}\n\n/** What the router matches on. Zero dependencies, so building it costs nothing. */\nexport const AssetDeliveryRouteDefinition = HttpRouteDefinition.createImplementation({\n implementation: AssetDeliveryRouteDefinitionImpl,\n dependencies: []\n});\n"],"names":["NO_CACHE","AssetDeliveryRouteImpl","container","request","response","requestResolver","AssetRequestResolver","assetResolver","AssetResolver","tenantContext","TenantContext","getTenantById","GetTenantByIdUseCase","fakeRequest","resolvedRequest","resolvedAsset","tenantResult","assetProcessor","AssetProcessor","outputStrategy","AssetOutputStrategy","processedAsset","assetReply","rawHeaders","k","v","Object","undefined","String","body","AssetDeliveryRoute","HttpRouteHandler","RequestContainer","AssetDeliveryRouteDefinitionImpl","AssetDeliveryRouteDefinition","HttpRouteDefinition"],"mappings":";;;;AAiBA,MAAMA,WAAW;AAEjB,MAAMC;IACF,YAAoBC,SAAoB,CAAE;aAAtBA,SAAS,GAATA;IAAuB;IAE3C,MAAM,OAAOC,OAAiC,EAAEC,QAAmC,EAAE;QAOjF,MAAMC,kBAAkB,IAAI,CAAC,SAAS,CAAC,OAAO,CAACC;QAC/C,MAAMC,gBAAgB,IAAI,CAAC,SAAS,CAAC,OAAO,CAACC;QAC7C,MAAMC,gBAAgB,IAAI,CAAC,SAAS,CAAC,OAAO,CAACC;QAC7C,MAAMC,gBAAgB,IAAI,CAAC,SAAS,CAAC,OAAO,CAACC;QAG7C,MAAMC,cAAc;YAChB,KAAKV,QAAQ,IAAI;YACjB,QAAQ;gBAAE,KAAKA,QAAQ,IAAI,CAAC,OAAO,CAAC,WAAW;YAAI;YACnD,OAAOA,QAAQ,KAAK,IAAI,CAAC;YACzB,SAASA,QAAQ,OAAO,IAAI,CAAC;QACjC;QAEA,MAAMW,kBAAkB,MAAMT,gBAAgB,OAAO,CAACQ;QACtD,IAAI,CAACC,iBACD,OAAOV,SACF,MAAM,CAAC,KACP,MAAM,CAAC,iBAAiBJ,UACxB,IAAI,CAAC;YAAE,OAAO;QAAiC;QAGxD,MAAMe,gBAAgB,MAAMR,cAAc,OAAO,CAACO;QAClD,IAAI,CAACC,eACD,OAAOX,SACF,MAAM,CAAC,KACP,MAAM,CAAC,iBAAiBJ,UACxB,IAAI,CAAC;YAAE,OAAO;QAAmB;QAO1C,MAAMgB,eAAe,MAAML,cAAc,OAAO,CAACI,cAAc,SAAS;QACxE,IAAIC,aAAa,MAAM,IACnB,OAAOZ,SACF,MAAM,CAAC,KACP,MAAM,CAAC,iBAAiBJ,UACxB,IAAI,CAAC;YAAE,OAAO;QAAmB;QAG1C,OAAOS,cAAc,UAAU,CAACO,aAAa,KAAK,EAAE,IAChD,IAAI,CAAC,OAAO,CAACF,iBAAiBC,eAAeX;IAErD;IAEA,MAAc,QACVU,eAA6B,EAC7BC,aAAoB,EACpBX,QAAmC,EACrC;QACE,MAAMa,iBAAiB,IAAI,CAAC,SAAS,CAAC,OAAO,CAACC;QAC9C,MAAMC,iBAAiB,IAAI,CAAC,SAAS,CAAC,OAAO,CAACC;QAE9CL,cAAc,iBAAiB,CAACI;QAEhC,MAAME,iBAAiB,MAAMJ,eAAe,OAAO,CAACH,iBAAiBC;QACrE,MAAMO,aAAa,MAAMD,eAAe,MAAM;QAE9C,MAAME,aAAaD,WAAW,UAAU,GAAG,UAAU;QACrD,KAAK,MAAM,CAACE,GAAGC,EAAE,IAAIC,OAAO,OAAO,CAACH,YAChC,IAAIE,AAAME,WAANF,GACArB,SAAS,MAAM,CAACoB,GAAGI,OAAOH;QAIlC,MAAMI,OAAO,MAAMP,WAAW,OAAO;QAOrC,OAAOlB,SAAS,MAAM,CAACkB,WAAW,OAAO,IAAI,GAAG,CAACO,QAAQ;IAC7D;AACJ;AAEO,MAAMC,qBAAqBC,iBAAiB,oBAAoB,CAAC;IACpE,gBAAgB9B;IAChB,cAAc;QAAC+B;KAAiB;AACpC;AAEA,MAAMC;;aACO,IAAI,GAAG;aACP,MAAM,GAAG;aACT,IAAI,GAAG;aACP,OAAO,GAAGH;;AACvB;AAGO,MAAMI,+BAA+BC,oBAAoB,oBAAoB,CAAC;IACjF,gBAAgBF;IAChB,cAAc,EAAE;AACpB"}
@@ -0,0 +1,7 @@
1
+ export * from "./AssetDelivery/Asset.js";
2
+ export * from "./AssetDelivery/AssetRequest.js";
3
+ export * from "./AssetDelivery/abstractions/AssetReply.js";
4
+ export * from "./AssetDelivery/createAssetDeliveryPluginLoader.js";
5
+ export type { IAssetRequestResolver as AssetRequestResolver, IAssetResolver as AssetResolver, IAssetProcessor as AssetProcessor, IAssetOutputStrategy as AssetOutputStrategy, IAssetTransformationStrategy as AssetTransformationStrategy, IAssetContentsReader as AssetContentsReader } from "../features/assetDelivery/abstractions.js";
6
+ export { PublicCache } from "../features/assetDelivery/privateFiles/PublicCache.js";
7
+ export { PrivateCache } from "../features/assetDelivery/privateFiles/PrivateCache.js";
@@ -0,0 +1,6 @@
1
+ export * from "./AssetDelivery/Asset.js";
2
+ export * from "./AssetDelivery/AssetRequest.js";
3
+ export * from "./AssetDelivery/abstractions/AssetReply.js";
4
+ export * from "./AssetDelivery/createAssetDeliveryPluginLoader.js";
5
+ export { PublicCache } from "../features/assetDelivery/privateFiles/PublicCache.js";
6
+ export { PrivateCache } from "../features/assetDelivery/privateFiles/PrivateCache.js";
@@ -0,0 +1 @@
1
+ export declare const setupAssetDelivery: () => never[];
@@ -0,0 +1,4 @@
1
+ const setupAssetDelivery = ()=>[];
2
+ export { setupAssetDelivery };
3
+
4
+ //# sourceMappingURL=setupAssetDelivery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delivery/setupAssetDelivery.js","sources":["../../src/delivery/setupAssetDelivery.ts"],"sourcesContent":["// Legacy Fastify-based asset delivery setup — replaced by AssetDeliveryRoute in DI-native handlers.\nexport const setupAssetDelivery = (): never[] => [];\n"],"names":["setupAssetDelivery"],"mappings":"AACO,MAAMA,qBAAqB,IAAe,EAAE"}
@@ -0,0 +1,17 @@
1
+ import type { CmsModel } from "@webiny/api-headless-cms/types";
2
+ /**
3
+ * Provides the `fmFile` CMS model for the current request's tenant.
4
+ *
5
+ * Fetching a model is asynchronous and tenant-dependent, which is why this is a provider rather
6
+ * than the model itself: DI resolution is synchronous, so an already-resolved `CmsModel` could only
7
+ * be supplied by a per-request hook running before any consumer (what `FileModelContextualSchema`
8
+ * used to do). Consumers instead `await get()` at the point of use — by which time the tenant is
9
+ * established — and the provider memoizes for the rest of the request.
10
+ */
11
+ export interface IFileModelProvider {
12
+ get(): Promise<CmsModel>;
13
+ }
14
+ export declare const FileModelProvider: import("@webiny/di").Abstraction<IFileModelProvider>;
15
+ export declare namespace FileModelProvider {
16
+ type Interface = IFileModelProvider;
17
+ }
@@ -0,0 +1,5 @@
1
+ import { createAbstraction } from "@webiny/feature/api";
2
+ const FileModelProvider = createAbstraction("FileModelProvider");
3
+ export { FileModelProvider };
4
+
5
+ //# sourceMappingURL=abstractions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"domain/file/abstractions.js","sources":["../../../src/domain/file/abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { CmsModel } from \"@webiny/api-headless-cms/types\";\n\n/**\n * Provides the `fmFile` CMS model for the current request's tenant.\n *\n * Fetching a model is asynchronous and tenant-dependent, which is why this is a provider rather\n * than the model itself: DI resolution is synchronous, so an already-resolved `CmsModel` could only\n * be supplied by a per-request hook running before any consumer (what `FileModelContextualSchema`\n * used to do). Consumers instead `await get()` at the point of use — by which time the tenant is\n * established — and the provider memoizes for the rest of the request.\n */\nexport interface IFileModelProvider {\n get(): Promise<CmsModel>;\n}\n\nexport const FileModelProvider = createAbstraction<IFileModelProvider>(\"FileModelProvider\");\n\nexport namespace FileModelProvider {\n export type Interface = IFileModelProvider;\n}\n"],"names":["FileModelProvider","createAbstraction"],"mappings":";AAgBO,MAAMA,oBAAoBC,kBAAsC"}
@@ -0,0 +1,59 @@
1
+ import { BaseError } from "@webiny/feature/api";
2
+ export declare class FilePersistenceError extends BaseError {
3
+ readonly code: "FileManager/File/PersistenceError";
4
+ constructor(error: Error);
5
+ }
6
+ export declare class FileNotFoundError extends BaseError<{
7
+ id: string;
8
+ }> {
9
+ readonly code: "FileManager/File/NotFoundError";
10
+ constructor(id: string);
11
+ }
12
+ export declare class FileNotAuthorizedError extends BaseError {
13
+ readonly code: "FileManager/File/NotAuthorizedError";
14
+ constructor();
15
+ }
16
+ export declare class FileListError extends BaseError {
17
+ readonly code: "FileManager/File/ListError";
18
+ constructor(error: Error);
19
+ }
20
+ export declare class FileCreateError extends BaseError {
21
+ readonly code: "FileManager/File/CreateError";
22
+ constructor(error: Error);
23
+ }
24
+ export declare class FileUpdateError extends BaseError {
25
+ readonly code: "FileManager/File/UpdateError";
26
+ constructor(error: Error);
27
+ }
28
+ export declare class FileDeleteError extends BaseError {
29
+ readonly code: "FileManager/File/DeleteError";
30
+ constructor(error: Error);
31
+ }
32
+ export declare class FileAlreadyExistsError extends BaseError<{
33
+ key: string;
34
+ }> {
35
+ readonly code: "FileManager/File/AlreadyExistsError";
36
+ constructor(data: {
37
+ key: string;
38
+ });
39
+ }
40
+ export declare class InvalidFileSizeError extends BaseError<{
41
+ size: number;
42
+ minSize: number;
43
+ maxSize: number;
44
+ }> {
45
+ readonly code: "FileManager/File/InvalidFileSizeError";
46
+ constructor(data: {
47
+ size: number;
48
+ minSize: number;
49
+ maxSize: number;
50
+ });
51
+ }
52
+ export declare class InvalidFileTypeError extends BaseError<{
53
+ type: string;
54
+ }> {
55
+ readonly code: "FileManager/File/InvalidFileTypeError";
56
+ constructor(data: {
57
+ type: string;
58
+ });
59
+ }
@@ -0,0 +1,80 @@
1
+ import { BaseError } from "@webiny/feature/api";
2
+ class FilePersistenceError extends BaseError {
3
+ constructor(error){
4
+ super({
5
+ message: error.message
6
+ }), this.code = "FileManager/File/PersistenceError";
7
+ }
8
+ }
9
+ class FileNotFoundError extends BaseError {
10
+ constructor(id){
11
+ super({
12
+ message: `File with ID "${id}" not found.`,
13
+ data: {
14
+ id
15
+ }
16
+ }), this.code = "FileManager/File/NotFoundError";
17
+ }
18
+ }
19
+ class FileNotAuthorizedError extends BaseError {
20
+ constructor(){
21
+ super({
22
+ message: "Not authorized."
23
+ }), this.code = "FileManager/File/NotAuthorizedError";
24
+ }
25
+ }
26
+ class FileListError extends BaseError {
27
+ constructor(error){
28
+ super({
29
+ message: `Error listing files: ${error.message}`
30
+ }), this.code = "FileManager/File/ListError";
31
+ }
32
+ }
33
+ class FileCreateError extends BaseError {
34
+ constructor(error){
35
+ super({
36
+ message: `Error creating file: ${error.message}`
37
+ }), this.code = "FileManager/File/CreateError";
38
+ }
39
+ }
40
+ class FileUpdateError extends BaseError {
41
+ constructor(error){
42
+ super({
43
+ message: `Error updating file: ${error.message}`
44
+ }), this.code = "FileManager/File/UpdateError";
45
+ }
46
+ }
47
+ class FileDeleteError extends BaseError {
48
+ constructor(error){
49
+ super({
50
+ message: `Error deleting file: ${error.message}`
51
+ }), this.code = "FileManager/File/DeleteError";
52
+ }
53
+ }
54
+ class FileAlreadyExistsError extends BaseError {
55
+ constructor(data){
56
+ super({
57
+ message: `File with key "${data.key}" already exists.`,
58
+ data
59
+ }), this.code = "FileManager/File/AlreadyExistsError";
60
+ }
61
+ }
62
+ class InvalidFileSizeError extends BaseError {
63
+ constructor(data){
64
+ super({
65
+ message: `File size ${data.size} bytes is outside allowed range (${data.minSize}-${data.maxSize} bytes).`,
66
+ data
67
+ }), this.code = "FileManager/File/InvalidFileSizeError";
68
+ }
69
+ }
70
+ class InvalidFileTypeError extends BaseError {
71
+ constructor(data){
72
+ super({
73
+ message: `File type "${data.type}" is not allowed.`,
74
+ data
75
+ }), this.code = "FileManager/File/InvalidFileTypeError";
76
+ }
77
+ }
78
+ export { FileAlreadyExistsError, FileCreateError, FileDeleteError, FileListError, FileNotAuthorizedError, FileNotFoundError, FilePersistenceError, FileUpdateError, InvalidFileSizeError, InvalidFileTypeError };
79
+
80
+ //# sourceMappingURL=errors.js.map