@webiny/api-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 (414) hide show
  1. package/README.md +7 -13
  2. package/contants.d.ts +1 -0
  3. package/contants.js +4 -0
  4. package/contants.js.map +1 -0
  5. package/delivery/AssetDelivery/Asset.d.ts +28 -0
  6. package/delivery/AssetDelivery/Asset.js +53 -0
  7. package/delivery/AssetDelivery/Asset.js.map +1 -0
  8. package/delivery/AssetDelivery/AssetRequest.d.ts +25 -0
  9. package/delivery/AssetDelivery/AssetRequest.js +23 -0
  10. package/delivery/AssetDelivery/AssetRequest.js.map +1 -0
  11. package/delivery/AssetDelivery/abstractions/AssetReply.d.ts +25 -0
  12. package/delivery/AssetDelivery/abstractions/AssetReply.js +32 -0
  13. package/delivery/AssetDelivery/abstractions/AssetReply.js.map +1 -0
  14. package/delivery/AssetDelivery/createAssetDeliveryPluginLoader.d.ts +2 -0
  15. package/delivery/AssetDelivery/createAssetDeliveryPluginLoader.js +7 -0
  16. package/delivery/AssetDelivery/createAssetDeliveryPluginLoader.js.map +1 -0
  17. package/delivery/index.d.ts +7 -0
  18. package/delivery/index.js +6 -0
  19. package/delivery/setupAssetDelivery.d.ts +1 -0
  20. package/delivery/setupAssetDelivery.js +69 -0
  21. package/delivery/setupAssetDelivery.js.map +1 -0
  22. package/domain/file/abstractions.d.ts +9 -0
  23. package/domain/file/abstractions.js +5 -0
  24. package/domain/file/abstractions.js.map +1 -0
  25. package/domain/file/errors.d.ts +59 -0
  26. package/domain/file/errors.js +80 -0
  27. package/domain/file/errors.js.map +1 -0
  28. package/domain/file/file.model.d.ts +12 -0
  29. package/domain/file/file.model.js +65 -0
  30. package/domain/file/file.model.js.map +1 -0
  31. package/domain/file/types.d.ts +53 -0
  32. package/domain/file/types.js +0 -0
  33. package/domain/identity/Identity.d.ts +9 -0
  34. package/domain/identity/Identity.js +12 -0
  35. package/domain/identity/Identity.js.map +1 -0
  36. package/domain/permissionsSchema.d.ts +16 -0
  37. package/domain/permissionsSchema.js +30 -0
  38. package/domain/permissionsSchema.js.map +1 -0
  39. package/domain/settings/constants.d.ts +1 -0
  40. package/domain/settings/constants.js +4 -0
  41. package/domain/settings/constants.js.map +1 -0
  42. package/domain/settings/errors.d.ts +18 -0
  43. package/domain/settings/errors.js +28 -0
  44. package/domain/settings/errors.js.map +1 -0
  45. package/domain/settings/types.d.ts +10 -0
  46. package/domain/settings/types.js +0 -0
  47. package/domain/settings/validation.d.ts +6 -0
  48. package/domain/settings/validation.js +27 -0
  49. package/domain/settings/validation.js.map +1 -0
  50. package/exports/api/file-manager/file.d.ts +12 -0
  51. package/exports/api/file-manager/file.js +12 -0
  52. package/exports/api/file-manager/permissions.d.ts +1 -0
  53. package/exports/api/file-manager/permissions.js +1 -0
  54. package/exports/api/file-manager/settings.d.ts +3 -0
  55. package/exports/api/file-manager/settings.js +3 -0
  56. package/features/FileManagerFeature.d.ts +4 -0
  57. package/features/FileManagerFeature.js +31 -0
  58. package/features/FileManagerFeature.js.map +1 -0
  59. package/features/assetDelivery/FilesAssetRequestResolver.d.ts +9 -0
  60. package/features/assetDelivery/FilesAssetRequestResolver.js +29 -0
  61. package/features/assetDelivery/FilesAssetRequestResolver.js.map +1 -0
  62. package/features/assetDelivery/NullAssetOutputStrategy.d.ts +8 -0
  63. package/features/assetDelivery/NullAssetOutputStrategy.js +14 -0
  64. package/features/assetDelivery/NullAssetOutputStrategy.js.map +1 -0
  65. package/features/assetDelivery/NullAssetReply.d.ts +4 -0
  66. package/features/assetDelivery/NullAssetReply.js +14 -0
  67. package/features/assetDelivery/NullAssetReply.js.map +1 -0
  68. package/features/assetDelivery/NullAssetResolver.d.ts +8 -0
  69. package/features/assetDelivery/NullAssetResolver.js +13 -0
  70. package/features/assetDelivery/NullAssetResolver.js.map +1 -0
  71. package/features/assetDelivery/abstractions.d.ts +54 -0
  72. package/features/assetDelivery/abstractions.js +11 -0
  73. package/features/assetDelivery/abstractions.js.map +1 -0
  74. package/features/assetDelivery/feature.d.ts +4 -0
  75. package/features/assetDelivery/feature.js +29 -0
  76. package/features/assetDelivery/feature.js.map +1 -0
  77. package/features/assetDelivery/privateFiles/NotAuthorizedAssetReply.d.ts +4 -0
  78. package/features/assetDelivery/privateFiles/NotAuthorizedAssetReply.js +20 -0
  79. package/features/assetDelivery/privateFiles/NotAuthorizedAssetReply.js.map +1 -0
  80. package/features/assetDelivery/privateFiles/NotAuthorizedOutputStrategy.d.ts +5 -0
  81. package/features/assetDelivery/privateFiles/NotAuthorizedOutputStrategy.js +9 -0
  82. package/features/assetDelivery/privateFiles/NotAuthorizedOutputStrategy.js.map +1 -0
  83. package/features/assetDelivery/privateFiles/PrivateAuthenticatedAuthorizer.d.ts +11 -0
  84. package/features/assetDelivery/privateFiles/PrivateAuthenticatedAuthorizer.js +26 -0
  85. package/features/assetDelivery/privateFiles/PrivateAuthenticatedAuthorizer.js.map +1 -0
  86. package/features/assetDelivery/privateFiles/PrivateCache.d.ts +8 -0
  87. package/features/assetDelivery/privateFiles/PrivateCache.js +22 -0
  88. package/features/assetDelivery/privateFiles/PrivateCache.js.map +1 -0
  89. package/features/assetDelivery/privateFiles/PrivateFileAssetRequestResolver.d.ts +11 -0
  90. package/features/assetDelivery/privateFiles/PrivateFileAssetRequestResolver.js +31 -0
  91. package/features/assetDelivery/privateFiles/PrivateFileAssetRequestResolver.js.map +1 -0
  92. package/features/assetDelivery/privateFiles/PrivateFilesAssetProcessor.d.ts +19 -0
  93. package/features/assetDelivery/privateFiles/PrivateFilesAssetProcessor.js +65 -0
  94. package/features/assetDelivery/privateFiles/PrivateFilesAssetProcessor.js.map +1 -0
  95. package/features/assetDelivery/privateFiles/PublicCache.d.ts +8 -0
  96. package/features/assetDelivery/privateFiles/PublicCache.js +22 -0
  97. package/features/assetDelivery/privateFiles/PublicCache.js.map +1 -0
  98. package/features/assetDelivery/privateFiles/RedirectToPrivateUrlOutputStrategy.d.ts +9 -0
  99. package/features/assetDelivery/privateFiles/RedirectToPrivateUrlOutputStrategy.js +21 -0
  100. package/features/assetDelivery/privateFiles/RedirectToPrivateUrlOutputStrategy.js.map +1 -0
  101. package/features/assetDelivery/privateFiles/RedirectToPublicUrlOutputStrategy.d.ts +9 -0
  102. package/features/assetDelivery/privateFiles/RedirectToPublicUrlOutputStrategy.js +21 -0
  103. package/features/assetDelivery/privateFiles/RedirectToPublicUrlOutputStrategy.js.map +1 -0
  104. package/features/assetDelivery/transformation/PassthroughAssetTransformationStrategy.d.ts +9 -0
  105. package/features/assetDelivery/transformation/PassthroughAssetTransformationStrategy.js +13 -0
  106. package/features/assetDelivery/transformation/PassthroughAssetTransformationStrategy.js.map +1 -0
  107. package/features/assetDelivery/transformation/TransformationAssetProcessor.d.ts +11 -0
  108. package/features/assetDelivery/transformation/TransformationAssetProcessor.js +23 -0
  109. package/features/assetDelivery/transformation/TransformationAssetProcessor.js.map +1 -0
  110. package/features/file/CreateFile/CreateFileRepository.d.ts +15 -0
  111. package/features/file/CreateFile/CreateFileRepository.js +32 -0
  112. package/features/file/CreateFile/CreateFileRepository.js.map +1 -0
  113. package/features/file/CreateFile/CreateFileUseCase.d.ts +21 -0
  114. package/features/file/CreateFile/CreateFileUseCase.js +83 -0
  115. package/features/file/CreateFile/CreateFileUseCase.js.map +1 -0
  116. package/features/file/CreateFile/abstractions.d.ts +60 -0
  117. package/features/file/CreateFile/abstractions.js +6 -0
  118. package/features/file/CreateFile/abstractions.js.map +1 -0
  119. package/features/file/CreateFile/events.d.ts +31 -0
  120. package/features/file/CreateFile/events.js +23 -0
  121. package/features/file/CreateFile/events.js.map +1 -0
  122. package/features/file/CreateFile/feature.d.ts +4 -0
  123. package/features/file/CreateFile/feature.js +13 -0
  124. package/features/file/CreateFile/feature.js.map +1 -0
  125. package/features/file/CreateFile/index.d.ts +2 -0
  126. package/features/file/CreateFile/index.js +2 -0
  127. package/features/file/CreateFilesInBatch/CreateFilesInBatchRepository.d.ts +13 -0
  128. package/features/file/CreateFilesInBatch/CreateFilesInBatchRepository.js +22 -0
  129. package/features/file/CreateFilesInBatch/CreateFilesInBatchRepository.js.map +1 -0
  130. package/features/file/CreateFilesInBatch/CreateFilesInBatchUseCase.d.ts +19 -0
  131. package/features/file/CreateFilesInBatch/CreateFilesInBatchUseCase.js +73 -0
  132. package/features/file/CreateFilesInBatch/CreateFilesInBatchUseCase.js.map +1 -0
  133. package/features/file/CreateFilesInBatch/abstractions.d.ts +42 -0
  134. package/features/file/CreateFilesInBatch/abstractions.js +6 -0
  135. package/features/file/CreateFilesInBatch/abstractions.js.map +1 -0
  136. package/features/file/CreateFilesInBatch/events.d.ts +31 -0
  137. package/features/file/CreateFilesInBatch/events.js +23 -0
  138. package/features/file/CreateFilesInBatch/events.js.map +1 -0
  139. package/features/file/CreateFilesInBatch/feature.d.ts +4 -0
  140. package/features/file/CreateFilesInBatch/feature.js +13 -0
  141. package/features/file/CreateFilesInBatch/feature.js.map +1 -0
  142. package/features/file/CreateFilesInBatch/index.d.ts +1 -0
  143. package/features/file/CreateFilesInBatch/index.js +1 -0
  144. package/features/file/DeleteFile/DeleteFileRepository.d.ts +15 -0
  145. package/features/file/DeleteFile/DeleteFileRepository.js +31 -0
  146. package/features/file/DeleteFile/DeleteFileRepository.js.map +1 -0
  147. package/features/file/DeleteFile/DeleteFileUseCase.d.ts +17 -0
  148. package/features/file/DeleteFile/DeleteFileUseCase.js +43 -0
  149. package/features/file/DeleteFile/DeleteFileUseCase.js.map +1 -0
  150. package/features/file/DeleteFile/abstractions.d.ts +39 -0
  151. package/features/file/DeleteFile/abstractions.js +6 -0
  152. package/features/file/DeleteFile/abstractions.js.map +1 -0
  153. package/features/file/DeleteFile/events.d.ts +29 -0
  154. package/features/file/DeleteFile/events.js +23 -0
  155. package/features/file/DeleteFile/events.js.map +1 -0
  156. package/features/file/DeleteFile/feature.d.ts +4 -0
  157. package/features/file/DeleteFile/feature.js +13 -0
  158. package/features/file/DeleteFile/feature.js.map +1 -0
  159. package/features/file/DeleteFile/index.d.ts +2 -0
  160. package/features/file/DeleteFile/index.js +2 -0
  161. package/features/file/FileUrlGenerator/abstractions.d.ts +9 -0
  162. package/features/file/FileUrlGenerator/abstractions.js +5 -0
  163. package/features/file/FileUrlGenerator/abstractions.js.map +1 -0
  164. package/features/file/GetFile/GetFileRepository.d.ts +15 -0
  165. package/features/file/GetFile/GetFileRepository.js +33 -0
  166. package/features/file/GetFile/GetFileRepository.js.map +1 -0
  167. package/features/file/GetFile/GetFileUseCase.d.ts +14 -0
  168. package/features/file/GetFile/GetFileUseCase.js +29 -0
  169. package/features/file/GetFile/GetFileUseCase.js.map +1 -0
  170. package/features/file/GetFile/abstractions.d.ts +40 -0
  171. package/features/file/GetFile/abstractions.js +6 -0
  172. package/features/file/GetFile/abstractions.js.map +1 -0
  173. package/features/file/GetFile/feature.d.ts +4 -0
  174. package/features/file/GetFile/feature.js +13 -0
  175. package/features/file/GetFile/feature.js.map +1 -0
  176. package/features/file/GetFile/index.d.ts +1 -0
  177. package/features/file/GetFile/index.js +1 -0
  178. package/features/file/GetFileContentsById/abstractions.d.ts +20 -0
  179. package/features/file/GetFileContentsById/abstractions.js +5 -0
  180. package/features/file/GetFileContentsById/abstractions.js.map +1 -0
  181. package/features/file/GetFileContentsById/index.d.ts +1 -0
  182. package/features/file/GetFileContentsById/index.js +1 -0
  183. package/features/file/GetFileContentsByKey/abstractions.d.ts +17 -0
  184. package/features/file/GetFileContentsByKey/abstractions.js +5 -0
  185. package/features/file/GetFileContentsByKey/abstractions.js.map +1 -0
  186. package/features/file/GetFileContentsByKey/index.d.ts +1 -0
  187. package/features/file/GetFileContentsByKey/index.js +1 -0
  188. package/features/file/ListFiles/ListFilesRepository.d.ts +18 -0
  189. package/features/file/ListFiles/ListFilesRepository.js +53 -0
  190. package/features/file/ListFiles/ListFilesRepository.js.map +1 -0
  191. package/features/file/ListFiles/ListFilesUseCase.d.ts +15 -0
  192. package/features/file/ListFiles/ListFilesUseCase.js +44 -0
  193. package/features/file/ListFiles/ListFilesUseCase.js.map +1 -0
  194. package/features/file/ListFiles/abstractions.d.ts +49 -0
  195. package/features/file/ListFiles/abstractions.js +6 -0
  196. package/features/file/ListFiles/abstractions.js.map +1 -0
  197. package/features/file/ListFiles/feature.d.ts +4 -0
  198. package/features/file/ListFiles/feature.js +13 -0
  199. package/features/file/ListFiles/feature.js.map +1 -0
  200. package/features/file/ListFiles/index.d.ts +1 -0
  201. package/features/file/ListFiles/index.js +1 -0
  202. package/features/file/ListImagesByTagTool/ListImagesByTagTool.d.ts +27 -0
  203. package/features/file/ListImagesByTagTool/ListImagesByTagTool.js +42 -0
  204. package/features/file/ListImagesByTagTool/ListImagesByTagTool.js.map +1 -0
  205. package/features/file/ListImagesByTagTool/feature.d.ts +4 -0
  206. package/features/file/ListImagesByTagTool/feature.js +11 -0
  207. package/features/file/ListImagesByTagTool/feature.js.map +1 -0
  208. package/features/file/ListTags/ListTagsRepository.d.ts +16 -0
  209. package/features/file/ListTags/ListTagsRepository.js +42 -0
  210. package/features/file/ListTags/ListTagsRepository.js.map +1 -0
  211. package/features/file/ListTags/ListTagsUseCase.d.ts +13 -0
  212. package/features/file/ListTags/ListTagsUseCase.js +31 -0
  213. package/features/file/ListTags/ListTagsUseCase.js.map +1 -0
  214. package/features/file/ListTags/abstractions.d.ts +45 -0
  215. package/features/file/ListTags/abstractions.js +6 -0
  216. package/features/file/ListTags/abstractions.js.map +1 -0
  217. package/features/file/ListTags/feature.d.ts +4 -0
  218. package/features/file/ListTags/feature.js +13 -0
  219. package/features/file/ListTags/feature.js.map +1 -0
  220. package/features/file/ListTags/index.d.ts +1 -0
  221. package/features/file/ListTags/index.js +1 -0
  222. package/features/file/UpdateFile/UpdateFileRepository.d.ts +15 -0
  223. package/features/file/UpdateFile/UpdateFileRepository.js +37 -0
  224. package/features/file/UpdateFile/UpdateFileRepository.js.map +1 -0
  225. package/features/file/UpdateFile/UpdateFileUseCase.d.ts +20 -0
  226. package/features/file/UpdateFile/UpdateFileUseCase.js +71 -0
  227. package/features/file/UpdateFile/UpdateFileUseCase.js.map +1 -0
  228. package/features/file/UpdateFile/abstractions.d.ts +56 -0
  229. package/features/file/UpdateFile/abstractions.js +6 -0
  230. package/features/file/UpdateFile/abstractions.js.map +1 -0
  231. package/features/file/UpdateFile/events.d.ts +34 -0
  232. package/features/file/UpdateFile/events.js +23 -0
  233. package/features/file/UpdateFile/events.js.map +1 -0
  234. package/features/file/UpdateFile/feature.d.ts +4 -0
  235. package/features/file/UpdateFile/feature.js +13 -0
  236. package/features/file/UpdateFile/feature.js.map +1 -0
  237. package/features/file/UpdateFile/index.d.ts +2 -0
  238. package/features/file/UpdateFile/index.js +2 -0
  239. package/features/file/shared/EntryToFileMapper.d.ts +5 -0
  240. package/features/file/shared/EntryToFileMapper.js +28 -0
  241. package/features/file/shared/EntryToFileMapper.js.map +1 -0
  242. package/features/file/shared/FileInputToEntryInputMapper.d.ts +5 -0
  243. package/features/file/shared/FileInputToEntryInputMapper.js +32 -0
  244. package/features/file/shared/FileInputToEntryInputMapper.js.map +1 -0
  245. package/features/file/shared/FileToEntryMapper.d.ts +5 -0
  246. package/features/file/shared/FileToEntryMapper.js +31 -0
  247. package/features/file/shared/FileToEntryMapper.js.map +1 -0
  248. package/features/permissions/abstractions.d.ts +21 -0
  249. package/features/permissions/abstractions.js +6 -0
  250. package/features/permissions/abstractions.js.map +1 -0
  251. package/features/permissions/feature.d.ts +4 -0
  252. package/features/permissions/feature.js +7 -0
  253. package/features/permissions/feature.js.map +1 -0
  254. package/features/settings/GetSettings/GetSettingsUseCase.d.ts +13 -0
  255. package/features/settings/GetSettings/GetSettingsUseCase.js +28 -0
  256. package/features/settings/GetSettings/GetSettingsUseCase.js.map +1 -0
  257. package/features/settings/GetSettings/abstractions.d.ts +18 -0
  258. package/features/settings/GetSettings/abstractions.js +5 -0
  259. package/features/settings/GetSettings/abstractions.js.map +1 -0
  260. package/features/settings/GetSettings/feature.d.ts +4 -0
  261. package/features/settings/GetSettings/feature.js +11 -0
  262. package/features/settings/GetSettings/feature.js.map +1 -0
  263. package/features/settings/SettingsInstaller/SettingsInstaller.d.ts +15 -0
  264. package/features/settings/SettingsInstaller/SettingsInstaller.js +36 -0
  265. package/features/settings/SettingsInstaller/SettingsInstaller.js.map +1 -0
  266. package/features/settings/SettingsInstaller/feature.d.ts +4 -0
  267. package/features/settings/SettingsInstaller/feature.js +11 -0
  268. package/features/settings/SettingsInstaller/feature.js.map +1 -0
  269. package/features/settings/UpdateSettings/UpdateSettingsUseCase.d.ts +18 -0
  270. package/features/settings/UpdateSettings/UpdateSettingsUseCase.js +55 -0
  271. package/features/settings/UpdateSettings/UpdateSettingsUseCase.js.map +1 -0
  272. package/features/settings/UpdateSettings/abstractions.d.ts +23 -0
  273. package/features/settings/UpdateSettings/abstractions.js +5 -0
  274. package/features/settings/UpdateSettings/abstractions.js.map +1 -0
  275. package/features/settings/UpdateSettings/events.d.ts +34 -0
  276. package/features/settings/UpdateSettings/events.js +23 -0
  277. package/features/settings/UpdateSettings/events.js.map +1 -0
  278. package/features/settings/UpdateSettings/feature.d.ts +4 -0
  279. package/features/settings/UpdateSettings/feature.js +11 -0
  280. package/features/settings/UpdateSettings/feature.js.map +1 -0
  281. package/features/settings/UpdateSettings/index.d.ts +2 -0
  282. package/features/settings/UpdateSettings/index.js +2 -0
  283. package/features/shared/abstractions.d.ts +1 -0
  284. package/features/shared/abstractions.js +1 -0
  285. package/graphql/baseSchema.d.ts +3 -0
  286. package/graphql/baseSchema.js +100 -0
  287. package/graphql/baseSchema.js.map +1 -0
  288. package/graphql/createFilesTypeDefs.d.ts +8 -0
  289. package/graphql/createFilesTypeDefs.js +191 -0
  290. package/graphql/createFilesTypeDefs.js.map +1 -0
  291. package/graphql/filesSchema.d.ts +4 -0
  292. package/graphql/filesSchema.js +96 -0
  293. package/graphql/filesSchema.js.map +1 -0
  294. package/graphql/getFileByUrl.d.ts +3 -0
  295. package/graphql/getFileByUrl.js +61 -0
  296. package/graphql/getFileByUrl.js.map +1 -0
  297. package/graphql/index.d.ts +4 -0
  298. package/graphql/index.js +47 -0
  299. package/graphql/index.js.map +1 -0
  300. package/graphql/utils.d.ts +11 -0
  301. package/graphql/utils.js +12 -0
  302. package/graphql/utils.js.map +1 -0
  303. package/index.d.ts +7 -0
  304. package/index.js +44 -0
  305. package/index.js.map +1 -0
  306. package/modelModifier/CmsModelModifier.d.ts +26 -0
  307. package/modelModifier/CmsModelModifier.js +51 -0
  308. package/modelModifier/CmsModelModifier.js.map +1 -0
  309. package/package.json +34 -42
  310. package/types.d.ts +2 -356
  311. package/types.js +1 -5
  312. package/handlers/download/index.d.ts +0 -3
  313. package/handlers/download/index.js +0 -132
  314. package/handlers/download/index.js.map +0 -1
  315. package/handlers/manage/index.d.ts +0 -5
  316. package/handlers/manage/index.js +0 -71
  317. package/handlers/manage/index.js.map +0 -1
  318. package/handlers/transform/index.d.ts +0 -2
  319. package/handlers/transform/index.js +0 -91
  320. package/handlers/transform/index.js.map +0 -1
  321. package/handlers/transform/loaders/imageLoader.d.ts +0 -30
  322. package/handlers/transform/loaders/imageLoader.js +0 -105
  323. package/handlers/transform/loaders/imageLoader.js.map +0 -1
  324. package/handlers/transform/loaders/index.d.ts +0 -8
  325. package/handlers/transform/loaders/index.js +0 -13
  326. package/handlers/transform/loaders/index.js.map +0 -1
  327. package/handlers/transform/loaders/sanitizeImageTransformations.d.ts +0 -11
  328. package/handlers/transform/loaders/sanitizeImageTransformations.js +0 -58
  329. package/handlers/transform/loaders/sanitizeImageTransformations.js.map +0 -1
  330. package/handlers/transform/managers/imageManager.d.ts +0 -15
  331. package/handlers/transform/managers/imageManager.js +0 -63
  332. package/handlers/transform/managers/imageManager.js.map +0 -1
  333. package/handlers/transform/managers/index.d.ts +0 -5
  334. package/handlers/transform/managers/index.js +0 -13
  335. package/handlers/transform/managers/index.js.map +0 -1
  336. package/handlers/transform/optimizeImage.d.ts +0 -3
  337. package/handlers/transform/optimizeImage.js +0 -48
  338. package/handlers/transform/optimizeImage.js.map +0 -1
  339. package/handlers/transform/transformImage.d.ts +0 -10
  340. package/handlers/transform/transformImage.js +0 -30
  341. package/handlers/transform/transformImage.js.map +0 -1
  342. package/handlers/transform/utils.d.ts +0 -12
  343. package/handlers/transform/utils.js +0 -46
  344. package/handlers/transform/utils.js.map +0 -1
  345. package/handlers/types.d.ts +0 -8
  346. package/handlers/types.js +0 -5
  347. package/handlers/types.js.map +0 -1
  348. package/handlers/utils/getEnvironment.d.ts +0 -5
  349. package/handlers/utils/getEnvironment.js +0 -13
  350. package/handlers/utils/getEnvironment.js.map +0 -1
  351. package/handlers/utils/getObjectParams.d.ts +0 -9
  352. package/handlers/utils/getObjectParams.js +0 -25
  353. package/handlers/utils/getObjectParams.js.map +0 -1
  354. package/handlers/utils/index.d.ts +0 -2
  355. package/handlers/utils/index.js +0 -23
  356. package/handlers/utils/index.js.map +0 -1
  357. package/plugins/crud/files/validation.d.ts +0 -3
  358. package/plugins/crud/files/validation.js +0 -41
  359. package/plugins/crud/files/validation.js.map +0 -1
  360. package/plugins/crud/files.crud.d.ts +0 -4
  361. package/plugins/crud/files.crud.js +0 -431
  362. package/plugins/crud/files.crud.js.map +0 -1
  363. package/plugins/crud/settings.crud.d.ts +0 -5
  364. package/plugins/crud/settings.crud.js +0 -116
  365. package/plugins/crud/settings.crud.js.map +0 -1
  366. package/plugins/crud/system.crud.d.ts +0 -4
  367. package/plugins/crud/system.crud.js +0 -153
  368. package/plugins/crud/system.crud.js.map +0 -1
  369. package/plugins/crud/utils/checkBasePermissions.d.ts +0 -5
  370. package/plugins/crud/utils/checkBasePermissions.js +0 -33
  371. package/plugins/crud/utils/checkBasePermissions.js.map +0 -1
  372. package/plugins/crud/utils/createFileModel.d.ts +0 -5
  373. package/plugins/crud/utils/createFileModel.js +0 -77
  374. package/plugins/crud/utils/createFileModel.js.map +0 -1
  375. package/plugins/crud/utils/lifecycleEvents.d.ts +0 -6
  376. package/plugins/crud/utils/lifecycleEvents.js +0 -38
  377. package/plugins/crud/utils/lifecycleEvents.js.map +0 -1
  378. package/plugins/definitions/FilePhysicalStoragePlugin.d.ts +0 -21
  379. package/plugins/definitions/FilePhysicalStoragePlugin.js +0 -42
  380. package/plugins/definitions/FilePhysicalStoragePlugin.js.map +0 -1
  381. package/plugins/definitions/FilePlugin.d.ts +0 -136
  382. package/plugins/definitions/FilePlugin.js +0 -70
  383. package/plugins/definitions/FilePlugin.js.map +0 -1
  384. package/plugins/definitions/FileStorageTransformPlugin.d.ts +0 -34
  385. package/plugins/definitions/FileStorageTransformPlugin.js +0 -51
  386. package/plugins/definitions/FileStorageTransformPlugin.js.map +0 -1
  387. package/plugins/definitions/FilesStorageOperationsProviderPlugin.d.ts +0 -9
  388. package/plugins/definitions/FilesStorageOperationsProviderPlugin.js +0 -17
  389. package/plugins/definitions/FilesStorageOperationsProviderPlugin.js.map +0 -1
  390. package/plugins/definitions/InstallationPlugin.d.ts +0 -19
  391. package/plugins/definitions/InstallationPlugin.js +0 -42
  392. package/plugins/definitions/InstallationPlugin.js.map +0 -1
  393. package/plugins/definitions/SettingsStorageOperationsProviderPlugin.d.ts +0 -9
  394. package/plugins/definitions/SettingsStorageOperationsProviderPlugin.js +0 -17
  395. package/plugins/definitions/SettingsStorageOperationsProviderPlugin.js.map +0 -1
  396. package/plugins/definitions/SystemStorageOperationsProviderPlugin.d.ts +0 -9
  397. package/plugins/definitions/SystemStorageOperationsProviderPlugin.js +0 -17
  398. package/plugins/definitions/SystemStorageOperationsProviderPlugin.js.map +0 -1
  399. package/plugins/graphql.d.ts +0 -4
  400. package/plugins/graphql.js +0 -290
  401. package/plugins/graphql.js.map +0 -1
  402. package/plugins/index.d.ts +0 -2
  403. package/plugins/index.js +0 -24
  404. package/plugins/index.js.map +0 -1
  405. package/plugins/storage/FileStorage.d.ts +0 -30
  406. package/plugins/storage/FileStorage.js +0 -103
  407. package/plugins/storage/FileStorage.js.map +0 -1
  408. package/plugins/storage/index.d.ts +0 -4
  409. package/plugins/storage/index.js +0 -26
  410. package/plugins/storage/index.js.map +0 -1
  411. package/types.js.map +0 -1
  412. package/utils.d.ts +0 -4
  413. package/utils.js +0 -16
  414. package/utils.js.map +0 -1
package/types.d.ts CHANGED
@@ -1,361 +1,7 @@
1
- import { I18NContext } from "@webiny/api-i18n/types";
2
- import { FileStorage } from "./plugins/storage/FileStorage";
3
- import { TenancyContext } from "@webiny/api-tenancy/types";
4
- import { SecurityContext, SecurityPermission } from "@webiny/api-security/types";
5
- import { Context } from "@webiny/api/types";
6
- export interface FileManagerContext extends Context, SecurityContext, TenancyContext, I18NContext {
7
- fileManager: {
8
- files: FilesCRUD;
9
- settings: SettingsCRUD;
10
- storage: FileStorage;
11
- system: SystemCRUD;
12
- };
13
- }
1
+ import "@webiny/tasks/features/TaskController/augmentation.js";
2
+ import type { SecurityPermission } from "@webiny/api-core/types/security.js";
14
3
  export interface FilePermission extends SecurityPermission {
15
4
  name: "fm.file";
16
5
  rwd?: string;
17
6
  own?: boolean;
18
7
  }
19
- export interface File {
20
- id: string;
21
- key: string;
22
- size: number;
23
- type: string;
24
- name: string;
25
- meta: Record<string, any>;
26
- tags: string[];
27
- createdOn: string;
28
- createdBy: CreatedBy;
29
- /**
30
- * Added with new storage operations refactoring.
31
- */
32
- tenant: string;
33
- locale: string;
34
- webinyVersion: string;
35
- /**
36
- * User can add new fields to the File object so we must allow it in the types.
37
- */
38
- [key: string]: any;
39
- }
40
- export interface CreatedBy {
41
- id: string;
42
- displayName: string | null;
43
- type: string;
44
- }
45
- export interface FileInput {
46
- key: string;
47
- name: string;
48
- size: number;
49
- type: string;
50
- meta: Record<string, any>;
51
- tags: string[];
52
- }
53
- export interface FileListWhereParams {
54
- search?: string;
55
- type?: string;
56
- type_in?: string[];
57
- tag?: string;
58
- tag_in?: string[];
59
- tag_and_in?: string[];
60
- id_in?: string[];
61
- id?: string;
62
- }
63
- export interface FilesListOpts {
64
- search?: string;
65
- types?: string[];
66
- tags?: string[];
67
- ids?: string[];
68
- limit?: number;
69
- after?: string;
70
- where?: FileListWhereParams;
71
- sort?: string[];
72
- }
73
- export interface FileListMeta {
74
- cursor: string | null;
75
- totalCount: number;
76
- hasMoreItems: boolean;
77
- }
78
- interface FilesCrudListTagsWhere {
79
- tag?: string;
80
- tag_contains?: string;
81
- tag_in?: string[];
82
- tag_not_startsWith?: string;
83
- tag_startsWith?: string;
84
- }
85
- interface FilesCrudListTagsParams {
86
- where?: FilesCrudListTagsWhere;
87
- limit?: number;
88
- after?: string;
89
- }
90
- export interface FilesCRUD {
91
- getFile(id: string): Promise<File>;
92
- listFiles(opts?: FilesListOpts): Promise<[File[], FileListMeta]>;
93
- listTags(params: FilesCrudListTagsParams): Promise<string[]>;
94
- createFile(data: FileInput): Promise<File>;
95
- updateFile(id: string, data: Partial<FileInput>): Promise<File>;
96
- deleteFile(id: string): Promise<boolean>;
97
- createFilesInBatch(data: FileInput[]): Promise<File[]>;
98
- }
99
- export interface SystemCRUD {
100
- getVersion(): Promise<string | null>;
101
- setVersion(version: string): Promise<void>;
102
- install(args: {
103
- srcPrefix: string;
104
- }): Promise<boolean>;
105
- upgrade(version: string, data?: Record<string, any>): Promise<boolean>;
106
- }
107
- export interface FileManagerSettings {
108
- key: string;
109
- uploadMinFileSize: number;
110
- uploadMaxFileSize: number;
111
- srcPrefix: string;
112
- }
113
- export interface FileManagerSystem {
114
- version: string;
115
- tenant: string;
116
- }
117
- export declare type SettingsCRUD = {
118
- getSettings(): Promise<FileManagerSettings | null>;
119
- createSettings(data?: Partial<FileManagerSettings>): Promise<FileManagerSettings>;
120
- updateSettings(data: Partial<FileManagerSettings>): Promise<FileManagerSettings>;
121
- deleteSettings(): Promise<boolean>;
122
- };
123
- /********
124
- * Storage operations
125
- *******/
126
- /**
127
- * @category StorageOperations
128
- * @category SystemStorageOperations
129
- * @category SystemStorageOperationsParams
130
- */
131
- export interface FileManagerSystemStorageOperationsUpdateParams {
132
- /**
133
- * The system data to be updated.
134
- */
135
- original: FileManagerSystem;
136
- /**
137
- * The system data with the updated fields.
138
- */
139
- data: FileManagerSystem;
140
- }
141
- /**
142
- * @category StorageOperations
143
- * @category SystemStorageOperations
144
- * @category SystemStorageOperationsParams
145
- */
146
- export interface FileManagerSystemStorageOperationsCreateParams {
147
- /**
148
- * The system fields.
149
- */
150
- data: FileManagerSystem;
151
- }
152
- /**
153
- * @category StorageOperations
154
- * @category SystemStorageOperations
155
- */
156
- export interface FileManagerSystemStorageOperations {
157
- /**
158
- * Get the FileManager system data.
159
- */
160
- get: () => Promise<FileManagerSystem | null>;
161
- /**
162
- * Update the FileManager system data..
163
- */
164
- update: (params: FileManagerSystemStorageOperationsUpdateParams) => Promise<FileManagerSystem>;
165
- /**
166
- * Create the FileManagerSystemData
167
- */
168
- create: (params: FileManagerSystemStorageOperationsCreateParams) => Promise<FileManagerSystem>;
169
- }
170
- /**
171
- * @category StorageOperations
172
- * @category SettingsStorageOperations
173
- * @category SettingsStorageOperationsParams
174
- */
175
- export interface FileManagerSettingsStorageOperationsUpdateParams {
176
- /**
177
- * Original settings to be updated.
178
- */
179
- original: FileManagerSettings;
180
- /**
181
- * The settings with the updated fields.
182
- */
183
- data: FileManagerSettings;
184
- }
185
- /**
186
- * @category StorageOperations
187
- * @category SettingsStorageOperations
188
- * @category SettingsStorageOperationsParams
189
- */
190
- export interface FileManagerSettingsStorageOperationsCreateParams {
191
- /**
192
- * The settings fields.
193
- */
194
- data: FileManagerSettings;
195
- }
196
- /**
197
- * @category StorageOperations
198
- * @category SettingsStorageOperations
199
- */
200
- export interface FileManagerSettingsStorageOperations {
201
- /**
202
- * Get the FileManager system data.
203
- */
204
- get: () => Promise<FileManagerSettings | null>;
205
- /**
206
- * Create the FileManagerSettingsData
207
- */
208
- create: (params: FileManagerSettingsStorageOperationsCreateParams) => Promise<FileManagerSettings>;
209
- /**
210
- * Update the FileManager system data..
211
- */
212
- update: (params: FileManagerSettingsStorageOperationsUpdateParams) => Promise<FileManagerSettings>;
213
- /**
214
- * Delete the existing settings.
215
- */
216
- delete: () => Promise<void>;
217
- }
218
- /**
219
- * @category StorageOperations
220
- * @category FilesStorageOperations
221
- * @category FilesStorageOperationsParams
222
- */
223
- export interface FileManagerFilesStorageOperationsGetParams {
224
- where: {
225
- id: string;
226
- tenant: string;
227
- locale: string;
228
- };
229
- }
230
- /**
231
- * @category StorageOperations
232
- * @category FilesStorageOperations
233
- * @category FilesStorageOperationsParams
234
- */
235
- export interface FileManagerFilesStorageOperationsCreateParams {
236
- file: File;
237
- }
238
- /**
239
- * @category StorageOperations
240
- * @category FilesStorageOperations
241
- * @category FilesStorageOperationsParams
242
- */
243
- export interface FileManagerFilesStorageOperationsUpdateParams {
244
- original: File;
245
- file: File;
246
- }
247
- /**
248
- * @category StorageOperations
249
- * @category FilesStorageOperations
250
- * @category FilesStorageOperationsParams
251
- */
252
- export interface FileManagerFilesStorageOperationsDeleteParams {
253
- file: File;
254
- }
255
- /**
256
- * @category StorageOperations
257
- * @category FilesStorageOperations
258
- * @category FilesStorageOperationsParams
259
- */
260
- export interface FileManagerFilesStorageOperationsCreateBatchParams {
261
- files: File[];
262
- }
263
- /**
264
- * @category StorageOperations
265
- * @category FilesStorageOperations
266
- * @category FilesStorageOperationsParams
267
- */
268
- export interface FileManagerFilesStorageOperationsListParamsWhere {
269
- id?: string;
270
- id_in?: string[];
271
- name?: string;
272
- name_contains?: string;
273
- tag?: string;
274
- tag_contains?: string;
275
- tag_in?: string[];
276
- createdBy?: string;
277
- locale: string;
278
- tenant: string;
279
- private?: boolean;
280
- type?: string;
281
- type_in?: string[];
282
- search?: string;
283
- }
284
- /**
285
- * @category StorageOperations
286
- * @category FilesStorageOperations
287
- * @category FilesStorageOperationsParams
288
- */
289
- export interface FileManagerFilesStorageOperationsListParams {
290
- where: FileManagerFilesStorageOperationsListParamsWhere;
291
- sort: string[];
292
- limit: number;
293
- after: string | null;
294
- }
295
- /**
296
- * @category StorageOperations
297
- * @category FilesStorageOperations
298
- * @category FilesStorageOperationsParams
299
- */
300
- export interface FileManagerFilesStorageOperationsListResponseMeta {
301
- hasMoreItems: boolean;
302
- totalCount: number;
303
- cursor: string | null;
304
- }
305
- export declare type FileManagerFilesStorageOperationsListResponse = [
306
- File[],
307
- FileManagerFilesStorageOperationsListResponseMeta
308
- ];
309
- export declare type FileManagerFilesStorageOperationsTagsResponse = [
310
- string[],
311
- FileManagerFilesStorageOperationsListResponseMeta
312
- ];
313
- export interface FileManagerFilesStorageOperationsTagsParamsWhere extends FilesCrudListTagsWhere {
314
- locale: string;
315
- tenant: string;
316
- }
317
- /**
318
- * @category StorageOperations
319
- * @category FilesStorageOperations
320
- * @category FilesStorageOperationsParams
321
- */
322
- export interface FileManagerFilesStorageOperationsTagsParams {
323
- where: FileManagerFilesStorageOperationsTagsParamsWhere;
324
- limit: number;
325
- after?: string;
326
- }
327
- /**
328
- * @category StorageOperations
329
- * @category FilesStorageOperations
330
- */
331
- export interface FileManagerFilesStorageOperations {
332
- /**
333
- * Get a single file with given ID from the storage.
334
- */
335
- get: (params: FileManagerFilesStorageOperationsGetParams) => Promise<File | null>;
336
- /**
337
- * Insert the file data into the database.
338
- */
339
- create: (params: FileManagerFilesStorageOperationsCreateParams) => Promise<File>;
340
- /**
341
- * Update the file data in the database.
342
- */
343
- update: (params: FileManagerFilesStorageOperationsUpdateParams) => Promise<File>;
344
- /**
345
- * Delete the file from the database.
346
- */
347
- delete: (params: FileManagerFilesStorageOperationsDeleteParams) => Promise<void>;
348
- /**
349
- * Store multiple files at once to the database.
350
- */
351
- createBatch: (params: FileManagerFilesStorageOperationsCreateBatchParams) => Promise<File[]>;
352
- /**
353
- * Get a list of files filtered by given parameters.
354
- */
355
- list: (params: FileManagerFilesStorageOperationsListParams) => Promise<FileManagerFilesStorageOperationsListResponse>;
356
- /**
357
- * Get a list of all file tags filtered by given parameters.
358
- */
359
- tags: (params: FileManagerFilesStorageOperationsTagsParams) => Promise<FileManagerFilesStorageOperationsTagsResponse>;
360
- }
361
- export {};
package/types.js CHANGED
@@ -1,5 +1 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
1
+ import "@webiny/tasks/features/TaskController/augmentation.js";
@@ -1,3 +0,0 @@
1
- import { RoutePlugin } from "@webiny/handler-aws/gateway";
2
- import { Context } from "@webiny/handler/types";
3
- export declare const createDownloadFilePlugins: () => RoutePlugin<Context>[];
@@ -1,132 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.createDownloadFilePlugins = void 0;
9
-
10
- var _s = _interopRequireDefault(require("aws-sdk/clients/s3"));
11
-
12
- var _sanitizeFilename = _interopRequireDefault(require("sanitize-filename"));
13
-
14
- var _path = _interopRequireDefault(require("path"));
15
-
16
- var _utils = require("../utils");
17
-
18
- var _loaders = _interopRequireDefault(require("../transform/loaders"));
19
-
20
- var _gateway = require("@webiny/handler-aws/gateway");
21
-
22
- const MAX_RETURN_CONTENT_LENGTH = 5000000; // ~4.77MB
23
-
24
- const DEFAULT_CACHE_MAX_AGE = 30758400; // 1 year
25
-
26
- const PRESIGNED_URL_EXPIRATION = 900; // 15 minutes
27
-
28
- /**
29
- * Based on given path, extracts file key and additional options sent via query params.
30
- */
31
-
32
- const extractFilenameOptions = request => {
33
- const path = (0, _sanitizeFilename.default)(request.params.path);
34
- return {
35
- filename: decodeURI(path),
36
- options: request.query,
37
- extension: _path.default.extname(path)
38
- };
39
- };
40
-
41
- const getS3Object = async (request, s3, context) => {
42
- const {
43
- options,
44
- filename,
45
- extension
46
- } = extractFilenameOptions(request);
47
- const params = (0, _utils.getObjectParams)(filename);
48
- const objectHead = await s3.headObject(params).promise();
49
- const contentLength = objectHead.ContentLength ? objectHead.ContentLength : 0;
50
-
51
- for (const loader of _loaders.default) {
52
- const canProcess = loader.canProcess({
53
- context,
54
- s3,
55
- options,
56
- file: {
57
- name: filename,
58
- extension,
59
- contentLength
60
- }
61
- });
62
-
63
- if (!canProcess) {
64
- continue;
65
- }
66
-
67
- return loader.process({
68
- context,
69
- s3,
70
- options,
71
- file: {
72
- name: filename,
73
- extension,
74
- contentLength
75
- }
76
- });
77
- } // If no processors handled the file request, just return the S3 object taking its size into consideration.
78
-
79
-
80
- let object;
81
-
82
- if (contentLength < MAX_RETURN_CONTENT_LENGTH) {
83
- object = await s3.getObject(params).promise();
84
- }
85
-
86
- return {
87
- object,
88
- params
89
- };
90
- };
91
-
92
- const createDownloadFilePlugins = () => {
93
- return [new _gateway.RoutePlugin(({
94
- onGet,
95
- context
96
- }) => {
97
- onGet("/files/:path", async (request, reply) => {
98
- const {
99
- region
100
- } = (0, _utils.getEnvironment)();
101
- const s3 = new _s.default({
102
- region
103
- });
104
- const {
105
- params,
106
- object
107
- } = await getS3Object(request, s3, context); // If there's an "object", it means we can return its body directly.
108
-
109
- if (object) {
110
- return reply.headers({
111
- "Content-Type": object.ContentType,
112
- "Cache-Control": `public, max-age=${DEFAULT_CACHE_MAX_AGE}`,
113
- "x-webiny-base64-encoded": true
114
- }).send(object.Body || "");
115
- }
116
-
117
- const presignedUrl = s3.getSignedUrl("getObject", {
118
- Bucket: params.Bucket,
119
- Key: params.Key,
120
- Expires: PRESIGNED_URL_EXPIRATION
121
- }); // Lambda can return max 6MB of content, so if our object's size is larger, we are sending
122
- // a 301 Redirect, redirecting the user to the public URL of the object in S3.
123
-
124
- return reply.code(301).headers({
125
- Location: presignedUrl,
126
- "Cache-Control": "public, max-age=" + PRESIGNED_URL_EXPIRATION
127
- }).send("");
128
- });
129
- })];
130
- };
131
-
132
- exports.createDownloadFilePlugins = createDownloadFilePlugins;
@@ -1 +0,0 @@
1
- {"version":3,"names":["MAX_RETURN_CONTENT_LENGTH","DEFAULT_CACHE_MAX_AGE","PRESIGNED_URL_EXPIRATION","extractFilenameOptions","request","path","sanitizeFilename","params","filename","decodeURI","options","query","extension","pathLib","extname","getS3Object","s3","context","getObjectParams","objectHead","headObject","promise","contentLength","ContentLength","loader","loaders","canProcess","file","name","process","object","getObject","createDownloadFilePlugins","RoutePlugin","onGet","reply","region","getEnvironment","S3","headers","ContentType","send","Body","presignedUrl","getSignedUrl","Bucket","Key","Expires","code","Location"],"sources":["index.ts"],"sourcesContent":["import S3 from \"aws-sdk/clients/s3\";\nimport sanitizeFilename from \"sanitize-filename\";\nimport pathLib from \"path\";\nimport { getEnvironment, getObjectParams } from \"../utils\";\nimport loaders from \"../transform/loaders\";\nimport { RoutePlugin } from \"@webiny/handler-aws/gateway\";\nimport { Context, Request } from \"@webiny/handler/types\";\nimport { ObjectParamsResponse } from \"~/handlers/utils/getObjectParams\";\n\nconst MAX_RETURN_CONTENT_LENGTH = 5000000; // ~4.77MB\nconst DEFAULT_CACHE_MAX_AGE = 30758400; // 1 year\nconst PRESIGNED_URL_EXPIRATION = 900; // 15 minutes\n/**\n * Based on given path, extracts file key and additional options sent via query params.\n */\nconst extractFilenameOptions = (request: Request) => {\n const path = sanitizeFilename((request.params as any).path);\n return {\n filename: decodeURI(path),\n options: request.query as any,\n extension: pathLib.extname(path)\n };\n};\n\ninterface S3Object {\n object?: S3.Types.GetObjectOutput;\n params: ObjectParamsResponse;\n}\n\nconst getS3Object = async (request: Request, s3: S3, context: Context): Promise<S3Object> => {\n const { options, filename, extension } = extractFilenameOptions(request);\n const params = getObjectParams(filename);\n const objectHead = await s3.headObject(params).promise();\n const contentLength = objectHead.ContentLength ? objectHead.ContentLength : 0;\n\n for (const loader of loaders) {\n const canProcess = loader.canProcess({\n context,\n s3,\n options,\n file: {\n name: filename,\n extension,\n contentLength\n }\n });\n\n if (!canProcess) {\n continue;\n }\n return loader.process({\n context,\n s3,\n options,\n file: {\n name: filename,\n extension,\n contentLength\n }\n });\n }\n\n // If no processors handled the file request, just return the S3 object taking its size into consideration.\n let object;\n if (contentLength < MAX_RETURN_CONTENT_LENGTH) {\n object = await s3.getObject(params).promise();\n }\n\n return { object, params };\n};\n\nexport const createDownloadFilePlugins = () => {\n return [\n new RoutePlugin(({ onGet, context }) => {\n onGet(\"/files/:path\", async (request, reply) => {\n const { region } = getEnvironment();\n const s3 = new S3({ region });\n\n const { params, object } = await getS3Object(request, s3, context);\n\n // If there's an \"object\", it means we can return its body directly.\n if (object) {\n return reply\n .headers({\n \"Content-Type\": object.ContentType,\n \"Cache-Control\": `public, max-age=${DEFAULT_CACHE_MAX_AGE}`,\n \"x-webiny-base64-encoded\": true\n })\n .send(object.Body || \"\");\n }\n\n const presignedUrl = s3.getSignedUrl(\"getObject\", {\n Bucket: params.Bucket,\n Key: params.Key,\n Expires: PRESIGNED_URL_EXPIRATION\n });\n\n // Lambda can return max 6MB of content, so if our object's size is larger, we are sending\n // a 301 Redirect, redirecting the user to the public URL of the object in S3.\n return reply\n .code(301)\n .headers({\n Location: presignedUrl,\n \"Cache-Control\": \"public, max-age=\" + PRESIGNED_URL_EXPIRATION\n })\n .send(\"\");\n });\n })\n ];\n};\n"],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- import { S3EventHandler } from "@webiny/handler-aws";
2
- /**
3
- * This handler must be run through @webiny/handler-aws/s3
4
- */
5
- export declare const createManageFilePlugins: () => S3EventHandler<void>[];
@@ -1,71 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.createManageFilePlugins = void 0;
9
-
10
- var _path = _interopRequireDefault(require("path"));
11
-
12
- var _s = _interopRequireDefault(require("aws-sdk/clients/s3"));
13
-
14
- var _utils = require("../utils");
15
-
16
- var _managers = _interopRequireDefault(require("../transform/managers"));
17
-
18
- var _handlerAws = require("@webiny/handler-aws");
19
-
20
- /**
21
- * This handler must be run through @webiny/handler-aws/s3
22
- */
23
- const createManageFilePlugins = () => {
24
- return [new _handlerAws.S3EventHandler(async ({
25
- event
26
- }) => {
27
- const keys = [];
28
-
29
- for (let i = 0; i < event.Records.length; i++) {
30
- const record = event.Records[i];
31
-
32
- if (typeof record.s3.object.key === "string") {
33
- keys.push(record.s3.object.key);
34
- }
35
- }
36
-
37
- if (keys.length === 0) {
38
- return;
39
- }
40
-
41
- const {
42
- region
43
- } = (0, _utils.getEnvironment)();
44
- const s3 = new _s.default({
45
- region
46
- });
47
-
48
- for (const key of keys) {
49
- const extension = _path.default.extname(key);
50
-
51
- for (const manager of _managers.default) {
52
- const canProcess = manager.canProcess({
53
- key,
54
- extension
55
- });
56
-
57
- if (!canProcess) {
58
- continue;
59
- }
60
-
61
- await manager.process({
62
- s3,
63
- key,
64
- extension
65
- });
66
- }
67
- }
68
- })];
69
- };
70
-
71
- exports.createManageFilePlugins = createManageFilePlugins;
@@ -1 +0,0 @@
1
- {"version":3,"names":["createManageFilePlugins","S3EventHandler","event","keys","i","Records","length","record","s3","object","key","push","region","getEnvironment","S3","extension","path","extname","manager","managers","canProcess","process"],"sources":["index.ts"],"sourcesContent":["import path from \"path\";\nimport S3 from \"aws-sdk/clients/s3\";\nimport { getEnvironment } from \"../utils\";\nimport managers from \"../transform/managers\";\nimport { S3EventHandler } from \"@webiny/handler-aws\";\n\n/**\n * This handler must be run through @webiny/handler-aws/s3\n */\nexport const createManageFilePlugins = () => {\n return [\n new S3EventHandler(async ({ event }) => {\n const keys: string[] = [];\n for (let i = 0; i < event.Records.length; i++) {\n const record = event.Records[i];\n if (typeof record.s3.object.key === \"string\") {\n keys.push(record.s3.object.key);\n }\n }\n\n if (keys.length === 0) {\n return;\n }\n\n const { region } = getEnvironment();\n const s3 = new S3({ region });\n\n for (const key of keys) {\n const extension = path.extname(key);\n\n for (const manager of managers) {\n const canProcess = manager.canProcess({\n key,\n extension\n });\n\n if (!canProcess) {\n continue;\n }\n await manager.process({\n s3,\n key,\n extension\n });\n }\n }\n })\n ];\n};\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AAEA;AACA;AACA;AACO,MAAMA,uBAAuB,GAAG,MAAM;EACzC,OAAO,CACH,IAAIC,0BAAJ,CAAmB,OAAO;IAAEC;EAAF,CAAP,KAAqB;IACpC,MAAMC,IAAc,GAAG,EAAvB;;IACA,KAAK,IAAIC,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGF,KAAK,CAACG,OAAN,CAAcC,MAAlC,EAA0CF,CAAC,EAA3C,EAA+C;MAC3C,MAAMG,MAAM,GAAGL,KAAK,CAACG,OAAN,CAAcD,CAAd,CAAf;;MACA,IAAI,OAAOG,MAAM,CAACC,EAAP,CAAUC,MAAV,CAAiBC,GAAxB,KAAgC,QAApC,EAA8C;QAC1CP,IAAI,CAACQ,IAAL,CAAUJ,MAAM,CAACC,EAAP,CAAUC,MAAV,CAAiBC,GAA3B;MACH;IACJ;;IAED,IAAIP,IAAI,CAACG,MAAL,KAAgB,CAApB,EAAuB;MACnB;IACH;;IAED,MAAM;MAAEM;IAAF,IAAa,IAAAC,qBAAA,GAAnB;IACA,MAAML,EAAE,GAAG,IAAIM,UAAJ,CAAO;MAAEF;IAAF,CAAP,CAAX;;IAEA,KAAK,MAAMF,GAAX,IAAkBP,IAAlB,EAAwB;MACpB,MAAMY,SAAS,GAAGC,aAAA,CAAKC,OAAL,CAAaP,GAAb,CAAlB;;MAEA,KAAK,MAAMQ,OAAX,IAAsBC,iBAAtB,EAAgC;QAC5B,MAAMC,UAAU,GAAGF,OAAO,CAACE,UAAR,CAAmB;UAClCV,GADkC;UAElCK;QAFkC,CAAnB,CAAnB;;QAKA,IAAI,CAACK,UAAL,EAAiB;UACb;QACH;;QACD,MAAMF,OAAO,CAACG,OAAR,CAAgB;UAClBb,EADkB;UAElBE,GAFkB;UAGlBK;QAHkB,CAAhB,CAAN;MAKH;IACJ;EACJ,CAnCD,CADG,CAAP;AAsCH,CAvCM"}
@@ -1,2 +0,0 @@
1
- import { TransformHandlerEventPayload } from "../types";
2
- export declare const createTransformFilePlugins: () => import("@webiny/handler").EventPlugin<TransformHandlerEventPayload, import("@webiny/handler/types").Context, any>[];