@webiny/api-file-manager 0.0.0-unstable.e3f4727c56 → 0.0.0-unstable.eb196ccd2f

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 (291) hide show
  1. package/FileManagerContextSetup.d.ts +13 -0
  2. package/FileManagerContextSetup.js +115 -0
  3. package/FileManagerContextSetup.js.map +1 -0
  4. package/README.md +1 -1
  5. package/cmsFileStorage/CmsFilesStorage.d.ts +27 -0
  6. package/cmsFileStorage/CmsFilesStorage.js +164 -0
  7. package/cmsFileStorage/CmsFilesStorage.js.map +1 -0
  8. package/cmsFileStorage/ListFilesWhereProcessor.d.ts +7 -0
  9. package/cmsFileStorage/ListFilesWhereProcessor.js +33 -0
  10. package/cmsFileStorage/ListFilesWhereProcessor.js.map +1 -0
  11. package/cmsFileStorage/ListTagsWhereProcessor.d.ts +7 -0
  12. package/cmsFileStorage/ListTagsWhereProcessor.js +33 -0
  13. package/cmsFileStorage/ListTagsWhereProcessor.js.map +1 -0
  14. package/cmsFileStorage/file.model.d.ts +6 -0
  15. package/cmsFileStorage/file.model.js +158 -0
  16. package/cmsFileStorage/file.model.js.map +1 -0
  17. package/contants.d.ts +1 -0
  18. package/contants.js +9 -0
  19. package/contants.js.map +1 -0
  20. package/createFileManager/files.crud.d.ts +3 -0
  21. package/createFileManager/files.crud.js +328 -0
  22. package/createFileManager/files.crud.js.map +1 -0
  23. package/createFileManager/index.d.ts +3 -0
  24. package/createFileManager/index.js +23 -0
  25. package/createFileManager/index.js.map +1 -0
  26. package/createFileManager/permissions/FilesPermissions.d.ts +4 -0
  27. package/createFileManager/permissions/FilesPermissions.js +11 -0
  28. package/createFileManager/permissions/FilesPermissions.js.map +1 -0
  29. package/createFileManager/permissions/SettingsPermissions.d.ts +4 -0
  30. package/createFileManager/permissions/SettingsPermissions.js +11 -0
  31. package/createFileManager/permissions/SettingsPermissions.js.map +1 -0
  32. package/createFileManager/settings.crud.d.ts +3 -0
  33. package/createFileManager/settings.crud.js +117 -0
  34. package/createFileManager/settings.crud.js.map +1 -0
  35. package/createFileManager/system.crud.d.ts +3 -0
  36. package/createFileManager/system.crud.js +88 -0
  37. package/createFileManager/system.crud.js.map +1 -0
  38. package/createFileManager/types.d.ts +16 -0
  39. package/createFileManager/types.js +7 -0
  40. package/createFileManager/types.js.map +1 -0
  41. package/delivery/AssetDelivery/AliasAssetRequestResolver.d.ts +11 -0
  42. package/delivery/AssetDelivery/AliasAssetRequestResolver.js +74 -0
  43. package/delivery/AssetDelivery/AliasAssetRequestResolver.js.map +1 -0
  44. package/delivery/AssetDelivery/Asset.d.ts +32 -0
  45. package/delivery/AssetDelivery/Asset.js +69 -0
  46. package/delivery/AssetDelivery/Asset.js.map +1 -0
  47. package/delivery/AssetDelivery/AssetDeliveryConfig.d.ts +63 -0
  48. package/delivery/AssetDelivery/AssetDeliveryConfig.js +102 -0
  49. package/delivery/AssetDelivery/AssetDeliveryConfig.js.map +1 -0
  50. package/delivery/AssetDelivery/AssetRequest.d.ts +25 -0
  51. package/delivery/AssetDelivery/AssetRequest.js +29 -0
  52. package/delivery/AssetDelivery/AssetRequest.js.map +1 -0
  53. package/delivery/AssetDelivery/FilesAssetRequestResolver.d.ts +6 -0
  54. package/delivery/AssetDelivery/FilesAssetRequestResolver.js +37 -0
  55. package/delivery/AssetDelivery/FilesAssetRequestResolver.js.map +1 -0
  56. package/delivery/AssetDelivery/NullAssetOutputStrategy.d.ts +4 -0
  57. package/delivery/AssetDelivery/NullAssetOutputStrategy.js +15 -0
  58. package/delivery/AssetDelivery/NullAssetOutputStrategy.js.map +1 -0
  59. package/delivery/AssetDelivery/NullAssetReply.d.ts +4 -0
  60. package/delivery/AssetDelivery/NullAssetReply.js +20 -0
  61. package/delivery/AssetDelivery/NullAssetReply.js.map +1 -0
  62. package/delivery/AssetDelivery/NullAssetResolver.d.ts +5 -0
  63. package/delivery/AssetDelivery/NullAssetResolver.js +14 -0
  64. package/delivery/AssetDelivery/NullAssetResolver.js.map +1 -0
  65. package/delivery/AssetDelivery/NullRequestResolver.d.ts +4 -0
  66. package/delivery/AssetDelivery/NullRequestResolver.js +14 -0
  67. package/delivery/AssetDelivery/NullRequestResolver.js.map +1 -0
  68. package/delivery/AssetDelivery/SetCacheControlHeaders.d.ts +8 -0
  69. package/delivery/AssetDelivery/SetCacheControlHeaders.js +25 -0
  70. package/delivery/AssetDelivery/SetCacheControlHeaders.js.map +1 -0
  71. package/delivery/AssetDelivery/SetResponseHeaders.d.ts +18 -0
  72. package/delivery/AssetDelivery/SetResponseHeaders.js +25 -0
  73. package/delivery/AssetDelivery/SetResponseHeaders.js.map +1 -0
  74. package/delivery/AssetDelivery/abstractions/AssetContentsReader.d.ts +6 -0
  75. package/delivery/AssetDelivery/abstractions/AssetContentsReader.js +7 -0
  76. package/delivery/AssetDelivery/abstractions/AssetContentsReader.js.map +1 -0
  77. package/delivery/AssetDelivery/abstractions/AssetOutputStrategy.d.ts +4 -0
  78. package/delivery/AssetDelivery/abstractions/AssetOutputStrategy.js +7 -0
  79. package/delivery/AssetDelivery/abstractions/AssetOutputStrategy.js.map +1 -0
  80. package/delivery/AssetDelivery/abstractions/AssetProcessor.d.ts +4 -0
  81. package/delivery/AssetDelivery/abstractions/AssetProcessor.js +7 -0
  82. package/delivery/AssetDelivery/abstractions/AssetProcessor.js.map +1 -0
  83. package/delivery/AssetDelivery/abstractions/AssetReply.d.ts +25 -0
  84. package/delivery/AssetDelivery/abstractions/AssetReply.js +38 -0
  85. package/delivery/AssetDelivery/abstractions/AssetReply.js.map +1 -0
  86. package/delivery/AssetDelivery/abstractions/AssetRequestResolver.d.ts +5 -0
  87. package/delivery/AssetDelivery/abstractions/AssetRequestResolver.js +7 -0
  88. package/delivery/AssetDelivery/abstractions/AssetRequestResolver.js.map +1 -0
  89. package/delivery/AssetDelivery/abstractions/AssetResolver.d.ts +4 -0
  90. package/delivery/AssetDelivery/abstractions/AssetResolver.js +7 -0
  91. package/delivery/AssetDelivery/abstractions/AssetResolver.js.map +1 -0
  92. package/delivery/AssetDelivery/abstractions/AssetTransformationStrategy.d.ts +4 -0
  93. package/delivery/AssetDelivery/abstractions/AssetTransformationStrategy.js +7 -0
  94. package/delivery/AssetDelivery/abstractions/AssetTransformationStrategy.js.map +1 -0
  95. package/delivery/AssetDelivery/createAssetDeliveryPluginLoader.d.ts +2 -0
  96. package/delivery/AssetDelivery/createAssetDeliveryPluginLoader.js +15 -0
  97. package/delivery/AssetDelivery/createAssetDeliveryPluginLoader.js.map +1 -0
  98. package/delivery/AssetDelivery/privateFiles/AssetAuthorizer.d.ts +4 -0
  99. package/delivery/AssetDelivery/privateFiles/AssetAuthorizer.js +7 -0
  100. package/delivery/AssetDelivery/privateFiles/AssetAuthorizer.js.map +1 -0
  101. package/delivery/AssetDelivery/privateFiles/NotAuthorizedAssetReply.d.ts +4 -0
  102. package/delivery/AssetDelivery/privateFiles/NotAuthorizedAssetReply.js +26 -0
  103. package/delivery/AssetDelivery/privateFiles/NotAuthorizedAssetReply.js.map +1 -0
  104. package/delivery/AssetDelivery/privateFiles/NotAuthorizedOutputStrategy.d.ts +4 -0
  105. package/delivery/AssetDelivery/privateFiles/NotAuthorizedOutputStrategy.js +15 -0
  106. package/delivery/AssetDelivery/privateFiles/NotAuthorizedOutputStrategy.js.map +1 -0
  107. package/delivery/AssetDelivery/privateFiles/PrivateAuthenticatedAuthorizer.d.ts +7 -0
  108. package/delivery/AssetDelivery/privateFiles/PrivateAuthenticatedAuthorizer.js +28 -0
  109. package/delivery/AssetDelivery/privateFiles/PrivateAuthenticatedAuthorizer.js.map +1 -0
  110. package/delivery/AssetDelivery/privateFiles/PrivateCache.d.ts +6 -0
  111. package/delivery/AssetDelivery/privateFiles/PrivateCache.js +28 -0
  112. package/delivery/AssetDelivery/privateFiles/PrivateCache.js.map +1 -0
  113. package/delivery/AssetDelivery/privateFiles/PrivateFileAssetRequestResolver.d.ts +8 -0
  114. package/delivery/AssetDelivery/privateFiles/PrivateFileAssetRequestResolver.js +37 -0
  115. package/delivery/AssetDelivery/privateFiles/PrivateFileAssetRequestResolver.js.map +1 -0
  116. package/delivery/AssetDelivery/privateFiles/PrivateFilesAssetProcessor.d.ts +13 -0
  117. package/delivery/AssetDelivery/privateFiles/PrivateFilesAssetProcessor.js +63 -0
  118. package/delivery/AssetDelivery/privateFiles/PrivateFilesAssetProcessor.js.map +1 -0
  119. package/delivery/AssetDelivery/privateFiles/PublicCache.d.ts +6 -0
  120. package/delivery/AssetDelivery/privateFiles/PublicCache.js +28 -0
  121. package/delivery/AssetDelivery/privateFiles/PublicCache.js.map +1 -0
  122. package/delivery/AssetDelivery/privateFiles/RedirectToPrivateUrlOutputStrategy.d.ts +7 -0
  123. package/delivery/AssetDelivery/privateFiles/RedirectToPrivateUrlOutputStrategy.js +27 -0
  124. package/delivery/AssetDelivery/privateFiles/RedirectToPrivateUrlOutputStrategy.js.map +1 -0
  125. package/delivery/AssetDelivery/privateFiles/RedirectToPublicUrlOutputStrategy.d.ts +7 -0
  126. package/delivery/AssetDelivery/privateFiles/RedirectToPublicUrlOutputStrategy.js +27 -0
  127. package/delivery/AssetDelivery/privateFiles/RedirectToPublicUrlOutputStrategy.js.map +1 -0
  128. package/delivery/AssetDelivery/privateFiles/internalIdentity.d.ts +7 -0
  129. package/delivery/AssetDelivery/privateFiles/internalIdentity.js +18 -0
  130. package/delivery/AssetDelivery/privateFiles/internalIdentity.js.map +1 -0
  131. package/delivery/AssetDelivery/transformation/PassthroughAssetProcessor.d.ts +4 -0
  132. package/delivery/AssetDelivery/transformation/PassthroughAssetProcessor.js +14 -0
  133. package/delivery/AssetDelivery/transformation/PassthroughAssetProcessor.js.map +1 -0
  134. package/delivery/AssetDelivery/transformation/PassthroughAssetTransformationStrategy.d.ts +4 -0
  135. package/delivery/AssetDelivery/transformation/PassthroughAssetTransformationStrategy.js +14 -0
  136. package/delivery/AssetDelivery/transformation/PassthroughAssetTransformationStrategy.js.map +1 -0
  137. package/delivery/AssetDelivery/transformation/TransformationAssetProcessor.d.ts +6 -0
  138. package/delivery/AssetDelivery/transformation/TransformationAssetProcessor.js +26 -0
  139. package/delivery/AssetDelivery/transformation/TransformationAssetProcessor.js.map +1 -0
  140. package/delivery/index.d.ts +17 -0
  141. package/delivery/index.js +194 -0
  142. package/delivery/index.js.map +1 -0
  143. package/delivery/setupAssetDelivery.d.ts +6 -0
  144. package/delivery/setupAssetDelivery.js +128 -0
  145. package/delivery/setupAssetDelivery.js.map +1 -0
  146. package/enterprise/applyThreatScanning.d.ts +2 -0
  147. package/enterprise/applyThreatScanning.js +20 -0
  148. package/enterprise/applyThreatScanning.js.map +1 -0
  149. package/graphql/baseSchema.d.ts +3 -0
  150. package/graphql/baseSchema.js +121 -0
  151. package/graphql/baseSchema.js.map +1 -0
  152. package/graphql/createFilesTypeDefs.d.ts +7 -0
  153. package/graphql/createFilesTypeDefs.js +184 -0
  154. package/graphql/createFilesTypeDefs.js.map +1 -0
  155. package/graphql/filesSchema.d.ts +4 -0
  156. package/graphql/filesSchema.js +89 -0
  157. package/graphql/filesSchema.js.map +1 -0
  158. package/graphql/getFileByUrl.d.ts +3 -0
  159. package/graphql/getFileByUrl.js +78 -0
  160. package/graphql/getFileByUrl.js.map +1 -0
  161. package/graphql/index.d.ts +4 -0
  162. package/graphql/index.js +55 -0
  163. package/graphql/index.js.map +1 -0
  164. package/graphql/utils.d.ts +11 -0
  165. package/graphql/utils.js +24 -0
  166. package/graphql/utils.js.map +1 -0
  167. package/handlers/{transform/managers → manage}/imageManager.d.ts +2 -3
  168. package/handlers/manage/imageManager.js +75 -0
  169. package/handlers/manage/imageManager.js.map +1 -0
  170. package/handlers/manage/index.d.ts +1 -1
  171. package/handlers/manage/index.js +9 -5
  172. package/handlers/manage/index.js.map +1 -1
  173. package/handlers/{transform/utils.js → manage/legacyUtils.js} +7 -9
  174. package/handlers/manage/legacyUtils.js.map +1 -0
  175. package/handlers/manage/utils.d.ts +12 -0
  176. package/handlers/manage/utils.js +34 -0
  177. package/handlers/manage/utils.js.map +1 -0
  178. package/handlers/types.d.ts +1 -1
  179. package/handlers/types.js +3 -1
  180. package/handlers/types.js.map +1 -1
  181. package/handlers/utils/getEnvironment.js +3 -1
  182. package/handlers/utils/getEnvironment.js.map +1 -1
  183. package/handlers/utils/getObjectParams.js +3 -1
  184. package/handlers/utils/getObjectParams.js.map +1 -1
  185. package/handlers/utils/index.js +3 -1
  186. package/handlers/utils/index.js.map +1 -1
  187. package/index.d.ts +10 -0
  188. package/index.js +76 -0
  189. package/index.js.map +1 -0
  190. package/modelModifier/CmsModelModifier.d.ts +26 -0
  191. package/modelModifier/CmsModelModifier.js +62 -0
  192. package/modelModifier/CmsModelModifier.js.map +1 -0
  193. package/package.json +26 -36
  194. package/plugins/{definitions/FilePhysicalStoragePlugin.d.ts → FilePhysicalStoragePlugin.d.ts} +2 -1
  195. package/plugins/{definitions/FilePhysicalStoragePlugin.js → FilePhysicalStoragePlugin.js} +3 -3
  196. package/plugins/FilePhysicalStoragePlugin.js.map +1 -0
  197. package/plugins/{definitions/FileStorageTransformPlugin.d.ts → FileStorageTransformPlugin.d.ts} +1 -1
  198. package/plugins/{definitions/FileStorageTransformPlugin.js → FileStorageTransformPlugin.js} +3 -4
  199. package/plugins/FileStorageTransformPlugin.js.map +1 -0
  200. package/plugins/index.d.ts +2 -2
  201. package/plugins/index.js +24 -10
  202. package/plugins/index.js.map +1 -1
  203. package/{plugins/storage → storage}/FileStorage.d.ts +10 -6
  204. package/storage/FileStorage.js +90 -0
  205. package/storage/FileStorage.js.map +1 -0
  206. package/types/file.d.ts +49 -0
  207. package/types/file.js +7 -0
  208. package/types/file.js.map +1 -0
  209. package/types/file.lifecycle.d.ts +44 -0
  210. package/types/file.lifecycle.js +7 -0
  211. package/types/file.lifecycle.js.map +1 -0
  212. package/types.d.ts +92 -80
  213. package/types.js +25 -1
  214. package/types.js.map +1 -1
  215. package/handlers/download/index.d.ts +0 -3
  216. package/handlers/download/index.js +0 -113
  217. package/handlers/download/index.js.map +0 -1
  218. package/handlers/transform/index.d.ts +0 -2
  219. package/handlers/transform/index.js +0 -81
  220. package/handlers/transform/index.js.map +0 -1
  221. package/handlers/transform/loaders/imageLoader.d.ts +0 -30
  222. package/handlers/transform/loaders/imageLoader.js +0 -88
  223. package/handlers/transform/loaders/imageLoader.js.map +0 -1
  224. package/handlers/transform/loaders/index.d.ts +0 -8
  225. package/handlers/transform/loaders/index.js +0 -10
  226. package/handlers/transform/loaders/index.js.map +0 -1
  227. package/handlers/transform/loaders/sanitizeImageTransformations.d.ts +0 -11
  228. package/handlers/transform/loaders/sanitizeImageTransformations.js +0 -45
  229. package/handlers/transform/loaders/sanitizeImageTransformations.js.map +0 -1
  230. package/handlers/transform/managers/imageManager.js +0 -55
  231. package/handlers/transform/managers/imageManager.js.map +0 -1
  232. package/handlers/transform/managers/index.d.ts +0 -5
  233. package/handlers/transform/managers/index.js +0 -10
  234. package/handlers/transform/managers/index.js.map +0 -1
  235. package/handlers/transform/optimizeImage.d.ts +0 -3
  236. package/handlers/transform/optimizeImage.js +0 -42
  237. package/handlers/transform/optimizeImage.js.map +0 -1
  238. package/handlers/transform/transformImage.d.ts +0 -10
  239. package/handlers/transform/transformImage.js +0 -25
  240. package/handlers/transform/transformImage.js.map +0 -1
  241. package/handlers/transform/utils.js.map +0 -1
  242. package/plugins/crud/files/validation.d.ts +0 -3
  243. package/plugins/crud/files/validation.js +0 -35
  244. package/plugins/crud/files/validation.js.map +0 -1
  245. package/plugins/crud/files.crud.d.ts +0 -4
  246. package/plugins/crud/files.crud.js +0 -372
  247. package/plugins/crud/files.crud.js.map +0 -1
  248. package/plugins/crud/settings.crud.d.ts +0 -5
  249. package/plugins/crud/settings.crud.js +0 -99
  250. package/plugins/crud/settings.crud.js.map +0 -1
  251. package/plugins/crud/system.crud.d.ts +0 -4
  252. package/plugins/crud/system.crud.js +0 -104
  253. package/plugins/crud/system.crud.js.map +0 -1
  254. package/plugins/crud/utils/checkBasePermissions.d.ts +0 -5
  255. package/plugins/crud/utils/checkBasePermissions.js +0 -25
  256. package/plugins/crud/utils/checkBasePermissions.js.map +0 -1
  257. package/plugins/crud/utils/createFileModel.d.ts +0 -5
  258. package/plugins/crud/utils/createFileModel.js +0 -65
  259. package/plugins/crud/utils/createFileModel.js.map +0 -1
  260. package/plugins/crud/utils/lifecycleEvents.d.ts +0 -6
  261. package/plugins/crud/utils/lifecycleEvents.js +0 -30
  262. package/plugins/crud/utils/lifecycleEvents.js.map +0 -1
  263. package/plugins/definitions/FilePhysicalStoragePlugin.js.map +0 -1
  264. package/plugins/definitions/FilePlugin.d.ts +0 -136
  265. package/plugins/definitions/FilePlugin.js +0 -52
  266. package/plugins/definitions/FilePlugin.js.map +0 -1
  267. package/plugins/definitions/FileStorageTransformPlugin.js.map +0 -1
  268. package/plugins/definitions/FilesStorageOperationsProviderPlugin.d.ts +0 -9
  269. package/plugins/definitions/FilesStorageOperationsProviderPlugin.js +0 -12
  270. package/plugins/definitions/FilesStorageOperationsProviderPlugin.js.map +0 -1
  271. package/plugins/definitions/InstallationPlugin.d.ts +0 -19
  272. package/plugins/definitions/InstallationPlugin.js +0 -31
  273. package/plugins/definitions/InstallationPlugin.js.map +0 -1
  274. package/plugins/definitions/SettingsStorageOperationsProviderPlugin.d.ts +0 -9
  275. package/plugins/definitions/SettingsStorageOperationsProviderPlugin.js +0 -12
  276. package/plugins/definitions/SettingsStorageOperationsProviderPlugin.js.map +0 -1
  277. package/plugins/definitions/SystemStorageOperationsProviderPlugin.d.ts +0 -9
  278. package/plugins/definitions/SystemStorageOperationsProviderPlugin.js +0 -12
  279. package/plugins/definitions/SystemStorageOperationsProviderPlugin.js.map +0 -1
  280. package/plugins/graphql.d.ts +0 -4
  281. package/plugins/graphql.js +0 -262
  282. package/plugins/graphql.js.map +0 -1
  283. package/plugins/storage/FileStorage.js +0 -85
  284. package/plugins/storage/FileStorage.js.map +0 -1
  285. package/plugins/storage/index.d.ts +0 -4
  286. package/plugins/storage/index.js +0 -22
  287. package/plugins/storage/index.js.map +0 -1
  288. package/utils.d.ts +0 -4
  289. package/utils.js +0 -14
  290. package/utils.js.map +0 -1
  291. /package/handlers/{transform/utils.d.ts → manage/legacyUtils.d.ts} +0 -0
@@ -1,262 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- var _handlerGraphql = require("@webiny/handler-graphql");
8
- const emptyResolver = () => ({});
9
-
10
- /**
11
- * Use any because it really can be any.
12
- * TODO @ts-refactor maybe use generics at some point?
13
- */
14
-
15
- const resolve = async fn => {
16
- try {
17
- return new _handlerGraphql.Response(await fn());
18
- } catch (e) {
19
- return new _handlerGraphql.ErrorResponse(e);
20
- }
21
- };
22
- const plugin = {
23
- type: "graphql-schema",
24
- schema: {
25
- typeDefs: /* GraphQL */`
26
- type FmCreatedBy {
27
- id: ID
28
- displayName: String
29
- }
30
-
31
- input FileInput {
32
- key: String
33
- name: String
34
- size: Int
35
- type: String
36
- tags: [String]
37
- meta: JSON
38
- }
39
-
40
- type UploadFileResponseDataFile {
41
- name: String
42
- type: String
43
- size: Int
44
- key: String
45
- }
46
-
47
- type UploadFileResponseData {
48
- # Contains data that is necessary for initiating a file upload.
49
- data: JSON
50
- file: UploadFileResponseDataFile
51
- }
52
-
53
- type FileListMeta {
54
- cursor: String
55
- totalCount: Int
56
- hasMoreItems: Boolean
57
- }
58
-
59
- type FileError {
60
- code: String
61
- message: String
62
- data: JSON
63
- stack: String
64
- }
65
-
66
- type FileListResponse {
67
- data: [File]
68
- meta: FileListMeta
69
- error: FileError
70
- }
71
-
72
- type FileResponse {
73
- data: File
74
- error: FileError
75
- }
76
-
77
- type CreateFilesResponse {
78
- data: [File]!
79
- error: FileError
80
- }
81
-
82
- type File {
83
- id: ID
84
- key: String
85
- name: String
86
- size: Int
87
- type: String
88
- src: String
89
- tags: [String]
90
- meta: JSON
91
- createdOn: DateTime
92
- createdBy: FmCreatedBy
93
- }
94
-
95
- type FileManagerBooleanResponse {
96
- data: Boolean
97
- error: FileError
98
- }
99
-
100
- type FileManagerSettings {
101
- uploadMinFileSize: Number
102
- uploadMaxFileSize: Number
103
- srcPrefix: String
104
- }
105
-
106
- input FileManagerSettingsInput {
107
- uploadMinFileSize: Number
108
- uploadMaxFileSize: Number
109
- srcPrefix: String
110
- }
111
-
112
- type FileManagerSettingsResponse {
113
- data: FileManagerSettings
114
- error: FileError
115
- }
116
-
117
- input FileWhereInput {
118
- search: String
119
- type: String
120
- type_in: [String!]
121
- tag: String
122
- tag_in: [String!]
123
- tag_and_in: [String!]
124
- tag_startsWith: String
125
- tag_not_startsWith: String
126
- id_in: [ID!]
127
- id: ID
128
- createdBy: ID
129
- }
130
-
131
- input TagWhereInput {
132
- tag_startsWith: String
133
- tag_not_startsWith: String
134
- }
135
-
136
- type FmQuery {
137
- getFile(id: ID, where: JSON, sort: String): FileResponse
138
-
139
- listFiles(
140
- limit: Int
141
- after: String
142
- types: [String]
143
- tags: [String]
144
- ids: [ID]
145
- search: String
146
- where: FileWhereInput
147
- ): FileListResponse
148
-
149
- listTags(where: TagWhereInput): [String]
150
-
151
- # Get installed version
152
- version: String
153
-
154
- getSettings: FileManagerSettingsResponse
155
- }
156
-
157
- type FilesDeleteResponse {
158
- data: Boolean
159
- error: FileError
160
- }
161
-
162
- type FmMutation {
163
- createFile(data: FileInput!): FileResponse
164
- createFiles(data: [FileInput]!): CreateFilesResponse
165
- updateFile(id: ID!, data: FileInput!): FileResponse
166
- deleteFile(id: ID!): FilesDeleteResponse
167
- install(srcPrefix: String): FileManagerBooleanResponse
168
- updateSettings(data: FileManagerSettingsInput): FileManagerSettingsResponse
169
- }
170
-
171
- input FilesInstallInput {
172
- srcPrefix: String!
173
- }
174
-
175
- extend type Query {
176
- fileManager: FmQuery
177
- }
178
-
179
- extend type Mutation {
180
- fileManager: FmMutation
181
- }
182
- `,
183
- resolvers: {
184
- File: {
185
- async src(file, _, context) {
186
- const settings = await context.fileManager.settings.getSettings();
187
- return ((settings === null || settings === void 0 ? void 0 : settings.srcPrefix) || "") + file.key;
188
- }
189
- },
190
- Query: {
191
- fileManager: emptyResolver
192
- },
193
- Mutation: {
194
- fileManager: emptyResolver
195
- },
196
- FmQuery: {
197
- getFile(_, args, context) {
198
- return resolve(() => context.fileManager.files.getFile(args.id));
199
- },
200
- async listFiles(_, args, context) {
201
- try {
202
- const [data, meta] = await context.fileManager.files.listFiles(args);
203
- return new _handlerGraphql.ListResponse(data, meta);
204
- } catch (e) {
205
- return new _handlerGraphql.ErrorResponse(e);
206
- }
207
- },
208
- async listTags(_, args, context) {
209
- try {
210
- return await context.fileManager.files.listTags(args || {});
211
- } catch (error) {
212
- return new _handlerGraphql.ErrorResponse(error);
213
- }
214
- },
215
- async version(_, __, context) {
216
- const {
217
- i18n,
218
- tenancy,
219
- fileManager
220
- } = context;
221
- if (!tenancy.getCurrentTenant() || !i18n.getContentLocale()) {
222
- return null;
223
- }
224
- return await fileManager.system.getVersion();
225
- },
226
- async getSettings(_, __, context) {
227
- return resolve(() => context.fileManager.settings.getSettings());
228
- }
229
- },
230
- FmMutation: {
231
- async createFile(_, args, context) {
232
- return resolve(() => context.fileManager.files.createFile(args.data));
233
- },
234
- async updateFile(_, args, context) {
235
- return resolve(() => context.fileManager.files.updateFile(args.id, args.data));
236
- },
237
- async createFiles(_, args, context) {
238
- return resolve(() => context.fileManager.files.createFilesInBatch(args.data));
239
- },
240
- async deleteFile(_, args, context) {
241
- return resolve(async () => {
242
- const file = await context.fileManager.files.getFile(args.id);
243
- return await context.fileManager.storage.delete({
244
- id: file.id,
245
- key: file.key
246
- });
247
- });
248
- },
249
- async install(_, args, context) {
250
- return resolve(() => context.fileManager.system.install({
251
- srcPrefix: args.srcPrefix
252
- }));
253
- },
254
- async updateSettings(_, args, context) {
255
- return resolve(() => context.fileManager.settings.updateSettings(args.data));
256
- }
257
- }
258
- }
259
- }
260
- };
261
- var _default = plugin;
262
- exports.default = _default;
@@ -1 +0,0 @@
1
- {"version":3,"names":["emptyResolver","resolve","fn","Response","e","ErrorResponse","plugin","type","schema","typeDefs","resolvers","File","src","file","_","context","settings","fileManager","getSettings","srcPrefix","key","Query","Mutation","FmQuery","getFile","args","files","id","listFiles","data","meta","ListResponse","listTags","error","version","__","i18n","tenancy","getCurrentTenant","getContentLocale","system","getVersion","FmMutation","createFile","updateFile","createFiles","createFilesInBatch","deleteFile","storage","delete","install","updateSettings"],"sources":["graphql.ts"],"sourcesContent":["import { Response, ErrorResponse, ListResponse } from \"@webiny/handler-graphql\";\nimport { FileManagerContext, FilesListOpts } from \"~/types\";\nimport { GraphQLSchemaPlugin } from \"@webiny/handler-graphql/types\";\n\nconst emptyResolver = () => ({});\n\n/**\n * Use any because it really can be any.\n * TODO @ts-refactor maybe use generics at some point?\n */\ninterface ResolveCallable {\n (): Promise<any>;\n}\n\nconst resolve = async (fn: ResolveCallable) => {\n try {\n return new Response(await fn());\n } catch (e) {\n return new ErrorResponse(e);\n }\n};\n\nconst plugin: GraphQLSchemaPlugin<FileManagerContext> = {\n type: \"graphql-schema\",\n schema: {\n typeDefs: /* GraphQL */ `\n type FmCreatedBy {\n id: ID\n displayName: String\n }\n\n input FileInput {\n key: String\n name: String\n size: Int\n type: String\n tags: [String]\n meta: JSON\n }\n\n type UploadFileResponseDataFile {\n name: String\n type: String\n size: Int\n key: String\n }\n\n type UploadFileResponseData {\n # Contains data that is necessary for initiating a file upload.\n data: JSON\n file: UploadFileResponseDataFile\n }\n\n type FileListMeta {\n cursor: String\n totalCount: Int\n hasMoreItems: Boolean\n }\n\n type FileError {\n code: String\n message: String\n data: JSON\n stack: String\n }\n\n type FileListResponse {\n data: [File]\n meta: FileListMeta\n error: FileError\n }\n\n type FileResponse {\n data: File\n error: FileError\n }\n\n type CreateFilesResponse {\n data: [File]!\n error: FileError\n }\n\n type File {\n id: ID\n key: String\n name: String\n size: Int\n type: String\n src: String\n tags: [String]\n meta: JSON\n createdOn: DateTime\n createdBy: FmCreatedBy\n }\n\n type FileManagerBooleanResponse {\n data: Boolean\n error: FileError\n }\n\n type FileManagerSettings {\n uploadMinFileSize: Number\n uploadMaxFileSize: Number\n srcPrefix: String\n }\n\n input FileManagerSettingsInput {\n uploadMinFileSize: Number\n uploadMaxFileSize: Number\n srcPrefix: String\n }\n\n type FileManagerSettingsResponse {\n data: FileManagerSettings\n error: FileError\n }\n\n input FileWhereInput {\n search: String\n type: String\n type_in: [String!]\n tag: String\n tag_in: [String!]\n tag_and_in: [String!]\n tag_startsWith: String\n tag_not_startsWith: String\n id_in: [ID!]\n id: ID\n createdBy: ID\n }\n\n input TagWhereInput {\n tag_startsWith: String\n tag_not_startsWith: String\n }\n\n type FmQuery {\n getFile(id: ID, where: JSON, sort: String): FileResponse\n\n listFiles(\n limit: Int\n after: String\n types: [String]\n tags: [String]\n ids: [ID]\n search: String\n where: FileWhereInput\n ): FileListResponse\n\n listTags(where: TagWhereInput): [String]\n\n # Get installed version\n version: String\n\n getSettings: FileManagerSettingsResponse\n }\n\n type FilesDeleteResponse {\n data: Boolean\n error: FileError\n }\n\n type FmMutation {\n createFile(data: FileInput!): FileResponse\n createFiles(data: [FileInput]!): CreateFilesResponse\n updateFile(id: ID!, data: FileInput!): FileResponse\n deleteFile(id: ID!): FilesDeleteResponse\n install(srcPrefix: String): FileManagerBooleanResponse\n updateSettings(data: FileManagerSettingsInput): FileManagerSettingsResponse\n }\n\n input FilesInstallInput {\n srcPrefix: String!\n }\n\n extend type Query {\n fileManager: FmQuery\n }\n\n extend type Mutation {\n fileManager: FmMutation\n }\n `,\n resolvers: {\n File: {\n async src(file, _, context: FileManagerContext) {\n const settings = await context.fileManager.settings.getSettings();\n return (settings?.srcPrefix || \"\") + file.key;\n }\n },\n Query: {\n fileManager: emptyResolver\n },\n Mutation: {\n fileManager: emptyResolver\n },\n FmQuery: {\n getFile(_, args: any, context) {\n return resolve(() => context.fileManager.files.getFile(args.id));\n },\n async listFiles(_, args: FilesListOpts, context) {\n try {\n const [data, meta] = await context.fileManager.files.listFiles(args);\n return new ListResponse(data, meta);\n } catch (e) {\n return new ErrorResponse(e);\n }\n },\n async listTags(_, args: any, context) {\n try {\n return await context.fileManager.files.listTags(args || {});\n } catch (error) {\n return new ErrorResponse(error);\n }\n },\n async version(_, __, context) {\n const { i18n, tenancy, fileManager } = context;\n if (!tenancy.getCurrentTenant() || !i18n.getContentLocale()) {\n return null;\n }\n\n return await fileManager.system.getVersion();\n },\n async getSettings(_, __, context) {\n return resolve(() => context.fileManager.settings.getSettings());\n }\n },\n FmMutation: {\n async createFile(_, args: any, context) {\n return resolve(() => context.fileManager.files.createFile(args.data));\n },\n async updateFile(_, args: any, context) {\n return resolve(() => context.fileManager.files.updateFile(args.id, args.data));\n },\n async createFiles(_, args: any, context) {\n return resolve(() => context.fileManager.files.createFilesInBatch(args.data));\n },\n async deleteFile(_, args: any, context) {\n return resolve(async () => {\n const file = await context.fileManager.files.getFile(args.id);\n return await context.fileManager.storage.delete({\n id: file.id,\n key: file.key\n });\n });\n },\n async install(_, args: any, context) {\n return resolve(() =>\n context.fileManager.system.install({ srcPrefix: args.srcPrefix })\n );\n },\n async updateSettings(_, args: any, context) {\n return resolve(() => context.fileManager.settings.updateSettings(args.data));\n }\n }\n }\n }\n};\n\nexport default plugin;\n"],"mappings":";;;;;;AAAA;AAIA,MAAMA,aAAa,GAAG,OAAO,CAAC,CAAC,CAAC;;AAEhC;AACA;AACA;AACA;;AAKA,MAAMC,OAAO,GAAG,MAAOC,EAAmB,IAAK;EAC3C,IAAI;IACA,OAAO,IAAIC,wBAAQ,CAAC,MAAMD,EAAE,EAAE,CAAC;EACnC,CAAC,CAAC,OAAOE,CAAC,EAAE;IACR,OAAO,IAAIC,6BAAa,CAACD,CAAC,CAAC;EAC/B;AACJ,CAAC;AAED,MAAME,MAA+C,GAAG;EACpDC,IAAI,EAAE,gBAAgB;EACtBC,MAAM,EAAE;IACJC,QAAQ,EAAE,aAAe;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;IACDC,SAAS,EAAE;MACPC,IAAI,EAAE;QACF,MAAMC,GAAG,CAACC,IAAI,EAAEC,CA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"}
@@ -1,85 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.FileStorage = void 0;
8
- var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
9
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
- var _error = _interopRequireDefault(require("@webiny/error"));
11
- const storagePluginType = "api-file-manager-storage";
12
- class FileStorage {
13
- constructor({
14
- context
15
- }) {
16
- (0, _defineProperty2.default)(this, "storagePlugin", void 0);
17
- (0, _defineProperty2.default)(this, "context", void 0);
18
- const storagePlugin = context.plugins.byType(storagePluginType).pop();
19
- if (!storagePlugin) {
20
- throw new _error.default(`Missing plugin of type "${storagePluginType}".`, "STORAGE_PLUGIN_ERROR");
21
- }
22
- this.storagePlugin = storagePlugin;
23
- this.context = context;
24
- }
25
- async upload(params) {
26
- const settings = await this.context.fileManager.settings.getSettings();
27
- if (!settings) {
28
- throw new _error.default("Missing File Manager Settings.", "FILE_MANAGER_ERROR");
29
- }
30
- // Add file to cloud storage.
31
- const {
32
- file: fileData
33
- } = await this.storagePlugin.upload((0, _objectSpread2.default)((0, _objectSpread2.default)({}, params), {}, {
34
- settings
35
- }));
36
- const {
37
- fileManager
38
- } = this.context;
39
-
40
- // Save file in DB.
41
- return await fileManager.files.createFile((0, _objectSpread2.default)((0, _objectSpread2.default)({}, fileData), {}, {
42
- meta: {
43
- private: Boolean(params.hideInFileManager)
44
- },
45
- tags: Array.isArray(params.tags) ? params.tags : []
46
- }));
47
- }
48
- async uploadFiles(params) {
49
- const settings = await this.context.fileManager.settings.getSettings();
50
- if (!settings) {
51
- throw new _error.default("Missing File Manager Settings.", "FILE_MANAGER_ERROR");
52
- }
53
- // Upload files to cloud storage.
54
- const promises = [];
55
- for (const item of params.files) {
56
- promises.push(this.storagePlugin.upload((0, _objectSpread2.default)((0, _objectSpread2.default)({}, item), {}, {
57
- settings
58
- })));
59
- }
60
- // Wait for all to resolve.
61
- const uploadFileResponses = await Promise.all(promises);
62
- const filesData = uploadFileResponses.map(response => response.file);
63
- const {
64
- fileManager
65
- } = this.context;
66
- // Save files in DB.
67
- return fileManager.files.createFilesInBatch(filesData);
68
- }
69
- async delete(params) {
70
- const {
71
- id,
72
- key
73
- } = params;
74
- const {
75
- fileManager
76
- } = this.context;
77
- // Delete file from cloud storage.
78
- await this.storagePlugin.delete({
79
- key
80
- });
81
- // Delete file from the DB.
82
- return await fileManager.files.deleteFile(id);
83
- }
84
- }
85
- exports.FileStorage = FileStorage;
@@ -1 +0,0 @@
1
- {"version":3,"names":["storagePluginType","FileStorage","constructor","context","storagePlugin","plugins","byType","pop","WebinyError","upload","params","settings","fileManager","getSettings","file","fileData","files","createFile","meta","private","Boolean","hideInFileManager","tags","Array","isArray","uploadFiles","promises","item","push","uploadFileResponses","Promise","all","filesData","map","response","createFilesInBatch","delete","id","key","deleteFile"],"sources":["FileStorage.ts"],"sourcesContent":["import { FileManagerContext } from \"~/types\";\nimport WebinyError from \"@webiny/error\";\nimport { FilePhysicalStoragePlugin } from \"~/plugins/definitions/FilePhysicalStoragePlugin\";\n\nexport type Result = Record<string, any>;\n\nconst storagePluginType = \"api-file-manager-storage\";\n\nexport interface FileStorageUploadParams {\n buffer: Buffer;\n hideInFileManager: boolean | string;\n tags?: string[];\n size: number;\n name: string;\n keyPrefix: string;\n type: string;\n}\nexport interface FileStorageDeleteParams {\n id: string;\n key: string;\n}\n\nexport interface FileStorageUploadMultipleParams {\n files: FileStorageUploadParams[];\n}\n\nexport interface FileStorageParams {\n context: FileManagerContext;\n}\nexport class FileStorage {\n private readonly storagePlugin: FilePhysicalStoragePlugin;\n private readonly context: FileManagerContext;\n\n constructor({ context }: FileStorageParams) {\n const storagePlugin = context.plugins\n .byType<FilePhysicalStoragePlugin>(storagePluginType)\n .pop();\n if (!storagePlugin) {\n throw new WebinyError(\n `Missing plugin of type \"${storagePluginType}\".`,\n \"STORAGE_PLUGIN_ERROR\"\n );\n }\n this.storagePlugin = storagePlugin;\n this.context = context;\n }\n\n async upload(params: FileStorageUploadParams): Promise<Result> {\n const settings = await this.context.fileManager.settings.getSettings();\n if (!settings) {\n throw new WebinyError(\"Missing File Manager Settings.\", \"FILE_MANAGER_ERROR\");\n }\n // Add file to cloud storage.\n const { file: fileData } = await this.storagePlugin.upload({\n ...params,\n settings\n });\n\n const { fileManager } = this.context;\n\n // Save file in DB.\n return await fileManager.files.createFile({\n ...(fileData as any),\n meta: {\n private: Boolean(params.hideInFileManager)\n },\n tags: Array.isArray(params.tags) ? params.tags : []\n });\n }\n\n async uploadFiles(params: FileStorageUploadMultipleParams) {\n const settings = await this.context.fileManager.settings.getSettings();\n if (!settings) {\n throw new WebinyError(\"Missing File Manager Settings.\", \"FILE_MANAGER_ERROR\");\n }\n // Upload files to cloud storage.\n const promises = [];\n for (const item of params.files) {\n promises.push(\n this.storagePlugin.upload({\n ...item,\n settings\n })\n );\n }\n // Wait for all to resolve.\n const uploadFileResponses = await Promise.all(promises);\n\n const filesData = uploadFileResponses.map(response => response.file);\n\n const { fileManager } = this.context;\n // Save files in DB.\n return fileManager.files.createFilesInBatch(filesData);\n }\n\n async delete(params: FileStorageDeleteParams) {\n const { id, key } = params;\n const { fileManager } = this.context;\n // Delete file from cloud storage.\n await this.storagePlugin.delete({\n key\n });\n // Delete file from the DB.\n return await fileManager.files.deleteFile(id);\n }\n}\n"],"mappings":";;;;;;;;;AACA;AAKA,MAAMA,iBAAiB,GAAG,0BAA0B;AAuB7C,MAAMC,WAAW,CAAC;EAIrBC,WAAW,CAAC;IAAEC;EAA2B,CAAC,EAAE;IAAA;IAAA;IACxC,MAAMC,aAAa,GAAGD,OAAO,CAACE,OAAO,CAChCC,MAAM,CAA4BN,iBAAiB,CAAC,CACpDO,GAAG,EAAE;IACV,IAAI,CAACH,aAAa,EAAE;MAChB,MAAM,IAAII,cAAW,CAChB,2BAA0BR,iBAAkB,IAAG,EAChD,sBAAsB,CACzB;IACL;IACA,IAAI,CAACI,aAAa,GAAGA,aAAa;IAClC,IAAI,CAACD,OAAO,GAAGA,OAAO;EAC1B;EAEA,MAAMM,MAAM,CAACC,MAA+B,EAAmB;IAC3D,MAAMC,QAAQ,GAAG,MAAM,IAAI,CAACR,OAAO,CAACS,WAAW,CAACD,QAAQ,CAACE,WAAW,EAAE;IACtE,IAAI,CAACF,QAAQ,EAAE;MACX,MAAM,IAAIH,cAAW,CAAC,gCAAgC,EAAE,oBAAoB,CAAC;IACjF;IACA;IACA,MAAM;MAAEM,IAAI,EAAEC;IAAS,CAAC,GAAG,MAAM,IAAI,CAACX,aAAa,CAACK,MAAM,6DACnDC,MAAM;MACTC;IAAQ,GACV;IAEF,MAAM;MAAEC;IAAY,CAAC,GAAG,IAAI,CAACT,OAAO;;IAEpC;IACA,OAAO,MAAMS,WAAW,CAACI,KAAK,CAACC,UAAU,6DACjCF,QAAQ;MACZG,IAAI,EAAE;QACFC,OAAO,EAAEC,OAAO,CAACV,MAAM,CAACW,iBAAiB;MAC7C,CAAC;MACDC,IAAI,EAAEC,KAAK,CAACC,OAAO,CAACd,MAAM,CAACY,IAAI,CAAC,GAAGZ,MAAM,CAACY,IAAI,GAAG;IAAE,GACrD;EACN;EAEA,MAAMG,WAAW,CAACf,MAAuC,EAAE;IACvD,MAAMC,QAAQ,GAAG,MAAM,IAAI,CAACR,OAAO,CAACS,WAAW,CAACD,QAAQ,CAACE,WAAW,EAAE;IACtE,IAAI,CAACF,QAAQ,EAAE;MACX,MAAM,IAAIH,cAAW,CAAC,gCAAgC,EAAE,oBAAoB,CAAC;IACjF;IACA;IACA,MAAMkB,QAAQ,GAAG,EAAE;IACnB,KAAK,MAAMC,IAAI,IAAIjB,MAAM,CAACM,KAAK,EAAE;MAC7BU,QAAQ,CAACE,IAAI,CACT,IAAI,CAACxB,aAAa,CAACK,MAAM,6DAClBkB,IAAI;QACPhB;MAAQ,GACV,CACL;IACL;IACA;IACA,MAAMkB,mBAAmB,GAAG,MAAMC,OAAO,CAACC,GAAG,CAACL,QAAQ,CAAC;IAEvD,MAAMM,SAAS,GAAGH,mBAAmB,CAACI,GAAG,CAACC,QAAQ,IAAIA,QAAQ,CAACpB,IAAI,CAAC;IAEpE,MAAM;MAAEF;IAAY,CAAC,GAAG,IAAI,CAACT,OAAO;IACpC;IACA,OAAOS,WAAW,CAACI,KAAK,CAACmB,kBAAkB,CAACH,SAAS,CAAC;EAC1D;EAEA,MAAMI,MAAM,CAAC1B,MAA+B,EAAE;IAC1C,MAAM;MAAE2B,EAAE;MAAEC;IAAI,CAAC,GAAG5B,MAAM;IAC1B,MAAM;MAAEE;IAAY,CAAC,GAAG,IAAI,CAACT,OAAO;IACpC;IACA,MAAM,IAAI,CAACC,aAAa,CAACgC,MAAM,CAAC;MAC5BE;IACJ,CAAC,CAAC;IACF;IACA,OAAO,MAAM1B,WAAW,CAACI,KAAK,CAACuB,UAAU,CAACF,EAAE,CAAC;EACjD;AACJ;AAAC"}
@@ -1,4 +0,0 @@
1
- import { FileManagerContext } from "../../types";
2
- import { ContextPlugin } from "@webiny/api";
3
- declare const fileStorageContextPlugin: ContextPlugin<FileManagerContext>;
4
- export default fileStorageContextPlugin;
@@ -1,22 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- var _api = require("@webiny/api");
8
- var _FileStorage = require("./FileStorage");
9
- const fileStorageContextPlugin = new _api.ContextPlugin(async context => {
10
- if (!context.fileManager) {
11
- /**
12
- * We need to define the fileManager initial property as empty object.
13
- * When casting as FileManagerContext, typescript is complaining.
14
- */
15
- context.fileManager = {};
16
- }
17
- context.fileManager.storage = new _FileStorage.FileStorage({
18
- context
19
- });
20
- });
21
- var _default = fileStorageContextPlugin;
22
- exports.default = _default;
@@ -1 +0,0 @@
1
- {"version":3,"names":["fileStorageContextPlugin","ContextPlugin","context","fileManager","storage","FileStorage"],"sources":["index.ts"],"sourcesContent":["import { FileManagerContext } from \"~/types\";\nimport { ContextPlugin } from \"@webiny/api\";\nimport { FileStorage } from \"./FileStorage\";\n\nconst fileStorageContextPlugin = new ContextPlugin<FileManagerContext>(async context => {\n if (!context.fileManager) {\n /**\n * We need to define the fileManager initial property as empty object.\n * When casting as FileManagerContext, typescript is complaining.\n */\n context.fileManager = {} as any;\n }\n context.fileManager.storage = new FileStorage({\n context\n });\n});\n\nexport default fileStorageContextPlugin;\n"],"mappings":";;;;;;AACA;AACA;AAEA,MAAMA,wBAAwB,GAAG,IAAIC,kBAAa,CAAqB,MAAMC,OAAO,IAAI;EACpF,IAAI,CAACA,OAAO,CAACC,WAAW,EAAE;IACtB;AACR;AACA;AACA;IACQD,OAAO,CAACC,WAAW,GAAG,CAAC,CAAQ;EACnC;EACAD,OAAO,CAACC,WAAW,CAACC,OAAO,GAAG,IAAIC,wBAAW,CAAC;IAC1CH;EACJ,CAAC,CAAC;AACN,CAAC,CAAC;AAAC,eAEYF,wBAAwB;AAAA"}
package/utils.d.ts DELETED
@@ -1,4 +0,0 @@
1
- import { Plugin } from "@webiny/plugins/types";
2
- declare type CallbackFallback = (args: any) => void | Promise<void>;
3
- export declare const executeCallbacks: <TCallbackFunction extends CallbackFallback = CallbackFallback>(plugins: Plugin[], hook: string, args: Parameters<TCallbackFunction>[0]) => Promise<void>;
4
- export {};
package/utils.js DELETED
@@ -1,14 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.executeCallbacks = void 0;
7
- const executeCallbacks = async (plugins, hook, args) => {
8
- for (const plugin of plugins) {
9
- if (typeof plugin[hook] === "function") {
10
- await plugin[hook](args);
11
- }
12
- }
13
- };
14
- exports.executeCallbacks = executeCallbacks;
package/utils.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"names":["executeCallbacks","plugins","hook","args","plugin"],"sources":["utils.ts"],"sourcesContent":["import { Plugin } from \"@webiny/plugins/types\";\n\ntype CallbackFallback = (args: any) => void | Promise<void>;\n\nexport const executeCallbacks = async <\n TCallbackFunction extends CallbackFallback = CallbackFallback\n>(\n plugins: Plugin[],\n hook: string,\n args: Parameters<TCallbackFunction>[0]\n) => {\n for (const plugin of plugins) {\n if (typeof plugin[hook] === \"function\") {\n await plugin[hook](args);\n }\n }\n};\n"],"mappings":";;;;;;AAIO,MAAMA,gBAAgB,GAAG,OAG5BC,OAAiB,EACjBC,IAAY,EACZC,IAAsC,KACrC;EACD,KAAK,MAAMC,MAAM,IAAIH,OAAO,EAAE;IAC1B,IAAI,OAAOG,MAAM,CAACF,IAAI,CAAC,KAAK,UAAU,EAAE;MACpC,MAAME,MAAM,CAACF,IAAI,CAAC,CAACC,IAAI,CAAC;IAC5B;EACJ;AACJ,CAAC;AAAC"}