@webiny/api-sync-system 6.0.0-alpha.5 → 6.0.0-rc.0

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 (299) hide show
  1. package/README.md +6 -108
  2. package/constants.js +1 -7
  3. package/constants.js.map +1 -1
  4. package/index.js +3 -38
  5. package/index.js.map +1 -1
  6. package/package.json +20 -23
  7. package/resolver/app/RecordHandler.d.ts +6 -6
  8. package/resolver/app/RecordHandler.js +7 -15
  9. package/resolver/app/RecordHandler.js.map +1 -1
  10. package/resolver/app/RecordsValidation.js +6 -14
  11. package/resolver/app/RecordsValidation.js.map +1 -1
  12. package/resolver/app/ResolverApplication.d.ts +1 -1
  13. package/resolver/app/ResolverApplication.js +10 -18
  14. package/resolver/app/ResolverApplication.js.map +1 -1
  15. package/resolver/app/abstractions/RecordHandler.d.ts +1 -1
  16. package/resolver/app/abstractions/RecordHandler.js +1 -5
  17. package/resolver/app/abstractions/RecordsValidation.d.ts +2 -2
  18. package/resolver/app/abstractions/RecordsValidation.js +1 -5
  19. package/resolver/app/abstractions/RecordsValidation.js.map +1 -1
  20. package/resolver/app/abstractions/ResolverApplication.js +1 -5
  21. package/resolver/app/abstractions/ResolverRecord.d.ts +1 -1
  22. package/resolver/app/abstractions/ResolverRecord.js +1 -5
  23. package/resolver/app/abstractions/ResolverRecord.js.map +1 -1
  24. package/resolver/app/bundler/BaseBundle.d.ts +6 -6
  25. package/resolver/app/bundler/BaseBundle.js +1 -8
  26. package/resolver/app/bundler/BaseBundle.js.map +1 -1
  27. package/resolver/app/bundler/Bundler.d.ts +1 -1
  28. package/resolver/app/bundler/Bundler.js +2 -10
  29. package/resolver/app/bundler/Bundler.js.map +1 -1
  30. package/resolver/app/bundler/Bundles.d.ts +2 -2
  31. package/resolver/app/bundler/Bundles.js +2 -10
  32. package/resolver/app/bundler/Bundles.js.map +1 -1
  33. package/resolver/app/bundler/CommandBundle.d.ts +1 -1
  34. package/resolver/app/bundler/CommandBundle.js +3 -11
  35. package/resolver/app/bundler/CommandBundle.js.map +1 -1
  36. package/resolver/app/bundler/TableBundle.d.ts +1 -1
  37. package/resolver/app/bundler/TableBundle.js +3 -11
  38. package/resolver/app/bundler/TableBundle.js.map +1 -1
  39. package/resolver/app/bundler/types.d.ts +2 -2
  40. package/resolver/app/bundler/types.js +1 -5
  41. package/resolver/app/commandHandler/DeleteCommandHandler.d.ts +3 -3
  42. package/resolver/app/commandHandler/DeleteCommandHandler.js +1 -8
  43. package/resolver/app/commandHandler/DeleteCommandHandler.js.map +1 -1
  44. package/resolver/app/commandHandler/PutCommandHandler.d.ts +4 -4
  45. package/resolver/app/commandHandler/PutCommandHandler.js +1 -8
  46. package/resolver/app/commandHandler/PutCommandHandler.js.map +1 -1
  47. package/resolver/app/commandHandler/delete.d.ts +1 -1
  48. package/resolver/app/commandHandler/delete.js +6 -13
  49. package/resolver/app/commandHandler/delete.js.map +1 -1
  50. package/resolver/app/commandHandler/put.d.ts +1 -1
  51. package/resolver/app/commandHandler/put.js +6 -13
  52. package/resolver/app/commandHandler/put.js.map +1 -1
  53. package/resolver/app/data/SourceDataContainer.d.ts +3 -3
  54. package/resolver/app/data/SourceDataContainer.js +1 -8
  55. package/resolver/app/data/SourceDataContainer.js.map +1 -1
  56. package/resolver/app/data/types.d.ts +2 -2
  57. package/resolver/app/data/types.js +1 -5
  58. package/resolver/app/fetcher/Fetcher.d.ts +3 -3
  59. package/resolver/app/fetcher/Fetcher.js +13 -22
  60. package/resolver/app/fetcher/Fetcher.js.map +1 -1
  61. package/resolver/app/fetcher/types.d.ts +2 -2
  62. package/resolver/app/fetcher/types.js +1 -5
  63. package/resolver/app/ingestor/Ingestor.d.ts +1 -1
  64. package/resolver/app/ingestor/Ingestor.js +2 -10
  65. package/resolver/app/ingestor/Ingestor.js.map +1 -1
  66. package/resolver/app/ingestor/IngestorResult.js +3 -11
  67. package/resolver/app/ingestor/IngestorResult.js.map +1 -1
  68. package/resolver/app/ingestor/types.d.ts +2 -2
  69. package/resolver/app/ingestor/types.js +1 -5
  70. package/resolver/app/storer/Storer.d.ts +3 -3
  71. package/resolver/app/storer/Storer.js +12 -20
  72. package/resolver/app/storer/Storer.js.map +1 -1
  73. package/resolver/app/storer/types.d.ts +2 -2
  74. package/resolver/app/storer/types.js +1 -5
  75. package/resolver/app/storer/types.js.map +1 -1
  76. package/resolver/app/transform/TransformHandler.d.ts +4 -4
  77. package/resolver/app/transform/TransformHandler.js +5 -12
  78. package/resolver/app/transform/TransformHandler.js.map +1 -1
  79. package/resolver/app/transform/middleware.d.ts +1 -1
  80. package/resolver/app/transform/middleware.js +1 -7
  81. package/resolver/app/transform/middleware.js.map +1 -1
  82. package/resolver/app/utils/Retry.js +4 -12
  83. package/resolver/app/utils/Retry.js.map +1 -1
  84. package/resolver/app/utils/sleep.js +1 -8
  85. package/resolver/app/utils/sleep.js.map +1 -1
  86. package/resolver/app/validation/body.d.ts +6 -6
  87. package/resolver/app/validation/body.js +22 -30
  88. package/resolver/app/validation/body.js.map +1 -1
  89. package/resolver/app/validation/createJsonTransform.js +6 -14
  90. package/resolver/app/validation/createJsonTransform.js.map +1 -1
  91. package/resolver/app/validation/detail.d.ts +6 -6
  92. package/resolver/app/validation/detail.js +16 -24
  93. package/resolver/app/validation/detail.js.map +1 -1
  94. package/resolver/app/validation/event.d.ts +6 -6
  95. package/resolver/app/validation/event.js +19 -27
  96. package/resolver/app/validation/event.js.map +1 -1
  97. package/resolver/app/validation/numericString.js +5 -13
  98. package/resolver/app/validation/numericString.js.map +1 -1
  99. package/resolver/app/validation/system.js +8 -16
  100. package/resolver/app/validation/system.js.map +1 -1
  101. package/resolver/createEventHandlerPlugin.d.ts +2 -1
  102. package/resolver/createEventHandlerPlugin.js +35 -42
  103. package/resolver/createEventHandlerPlugin.js.map +1 -1
  104. package/resolver/createResolverHandler.d.ts +1 -1
  105. package/resolver/createResolverHandler.js +24 -31
  106. package/resolver/createResolverHandler.js.map +1 -1
  107. package/resolver/deployment/Deployment.d.ts +2 -3
  108. package/resolver/deployment/Deployment.js +6 -14
  109. package/resolver/deployment/Deployment.js.map +1 -1
  110. package/resolver/deployment/Deployments.js +2 -10
  111. package/resolver/deployment/Deployments.js.map +1 -1
  112. package/resolver/deployment/DeploymentsFetcher.js +33 -42
  113. package/resolver/deployment/DeploymentsFetcher.js.map +1 -1
  114. package/resolver/deployment/types.d.ts +4 -4
  115. package/resolver/deployment/types.js +1 -5
  116. package/resolver/deployment/types.js.map +1 -1
  117. package/resolver/lambda/LambdaTrigger.js +5 -12
  118. package/resolver/lambda/LambdaTrigger.js.map +1 -1
  119. package/resolver/plugins/CommandHandlerPlugin.d.ts +3 -3
  120. package/resolver/plugins/CommandHandlerPlugin.js +3 -11
  121. package/resolver/plugins/CommandHandlerPlugin.js.map +1 -1
  122. package/resolver/plugins/StorerAfterEachPlugin.d.ts +2 -2
  123. package/resolver/plugins/StorerAfterEachPlugin.js +4 -13
  124. package/resolver/plugins/StorerAfterEachPlugin.js.map +1 -1
  125. package/resolver/plugins/TransformRecordPlugin.d.ts +3 -3
  126. package/resolver/plugins/TransformRecordPlugin.js +3 -11
  127. package/resolver/plugins/TransformRecordPlugin.js.map +1 -1
  128. package/resolver/recordTypes/fileManager/CopyFile.js +4 -11
  129. package/resolver/recordTypes/fileManager/CopyFile.js.map +1 -1
  130. package/resolver/recordTypes/fileManager/DeleteFile.d.ts +1 -1
  131. package/resolver/recordTypes/fileManager/DeleteFile.js +3 -10
  132. package/resolver/recordTypes/fileManager/DeleteFile.js.map +1 -1
  133. package/resolver/recordTypes/fileManager/fileManager.d.ts +1 -1
  134. package/resolver/recordTypes/fileManager/fileManager.js +4 -11
  135. package/resolver/recordTypes/fileManager/fileManager.js.map +1 -1
  136. package/resolver/recordTypes/fileManager/fileManagerOnDelete.d.ts +1 -1
  137. package/resolver/recordTypes/fileManager/fileManagerOnDelete.js +7 -14
  138. package/resolver/recordTypes/fileManager/fileManagerOnDelete.js.map +1 -1
  139. package/resolver/recordTypes/fileManager/fileManagerOnPut.d.ts +1 -1
  140. package/resolver/recordTypes/fileManager/fileManagerOnPut.js +7 -14
  141. package/resolver/recordTypes/fileManager/fileManagerOnPut.js.map +1 -1
  142. package/resolver/recordTypes/fileManager/shouldBeHandled.d.ts +1 -1
  143. package/resolver/recordTypes/fileManager/shouldBeHandled.js +1 -8
  144. package/resolver/recordTypes/fileManager/shouldBeHandled.js.map +1 -1
  145. package/resolver/recordTypes/fileManager/types.d.ts +2 -2
  146. package/resolver/recordTypes/fileManager/types.js +1 -5
  147. package/resolver/recordTypes/users/CopyUser.d.ts +2 -2
  148. package/resolver/recordTypes/users/CopyUser.js +3 -10
  149. package/resolver/recordTypes/users/CopyUser.js.map +1 -1
  150. package/resolver/recordTypes/users/DeleteUser.d.ts +2 -2
  151. package/resolver/recordTypes/users/DeleteUser.js +3 -10
  152. package/resolver/recordTypes/users/DeleteUser.js.map +1 -1
  153. package/resolver/recordTypes/users/shouldBeHandled.d.ts +1 -1
  154. package/resolver/recordTypes/users/shouldBeHandled.js +1 -8
  155. package/resolver/recordTypes/users/shouldBeHandled.js.map +1 -1
  156. package/resolver/recordTypes/users/types.d.ts +1 -1
  157. package/resolver/recordTypes/users/types.js +1 -5
  158. package/resolver/recordTypes/users/types.js.map +1 -1
  159. package/resolver/recordTypes/users/users.js +4 -11
  160. package/resolver/recordTypes/users/users.js.map +1 -1
  161. package/resolver/recordTypes/users/usersOnDelete.d.ts +2 -2
  162. package/resolver/recordTypes/users/usersOnDelete.js +7 -14
  163. package/resolver/recordTypes/users/usersOnDelete.js.map +1 -1
  164. package/resolver/recordTypes/users/usersOnPut.d.ts +2 -2
  165. package/resolver/recordTypes/users/usersOnPut.js +7 -14
  166. package/resolver/recordTypes/users/usersOnPut.js.map +1 -1
  167. package/sync/FilterOutRecord.d.ts +2 -2
  168. package/sync/FilterOutRecord.js +2 -10
  169. package/sync/FilterOutRecord.js.map +1 -1
  170. package/sync/attachToDynamoDbDocument.d.ts +1 -1
  171. package/sync/attachToDynamoDbDocument.js +9 -17
  172. package/sync/attachToDynamoDbDocument.js.map +1 -1
  173. package/sync/createHandler.js +27 -34
  174. package/sync/createHandler.js.map +1 -1
  175. package/sync/createSendDataToEventBridgeOnRequestEnd.js +6 -13
  176. package/sync/createSendDataToEventBridgeOnRequestEnd.js.map +1 -1
  177. package/sync/createSyncSystem.d.ts +1 -1
  178. package/sync/createSyncSystem.js +6 -13
  179. package/sync/createSyncSystem.js.map +1 -1
  180. package/sync/filter/createDefaultFilterOutRecordPlugins.d.ts +1 -1
  181. package/sync/filter/createDefaultFilterOutRecordPlugins.js +9 -19
  182. package/sync/filter/createDefaultFilterOutRecordPlugins.js.map +1 -1
  183. package/sync/handler/Handler.d.ts +2 -2
  184. package/sync/handler/Handler.js +9 -17
  185. package/sync/handler/Handler.js.map +1 -1
  186. package/sync/handler/HandlerConverter.js +2 -10
  187. package/sync/handler/HandlerConverter.js.map +1 -1
  188. package/sync/handler/converter/BatchGetCommandConverter.js +6 -14
  189. package/sync/handler/converter/BatchGetCommandConverter.js.map +1 -1
  190. package/sync/handler/converter/BatchWriteCommandConverter.js +6 -14
  191. package/sync/handler/converter/BatchWriteCommandConverter.js.map +1 -1
  192. package/sync/handler/converter/DeleteCommandConverter.js +6 -14
  193. package/sync/handler/converter/DeleteCommandConverter.js.map +1 -1
  194. package/sync/handler/converter/GetCommandConverter.js +6 -14
  195. package/sync/handler/converter/GetCommandConverter.js.map +1 -1
  196. package/sync/handler/converter/PutCommandConverter.js +6 -14
  197. package/sync/handler/converter/PutCommandConverter.js.map +1 -1
  198. package/sync/handler/converter/QueryCommandConverter.js +6 -14
  199. package/sync/handler/converter/QueryCommandConverter.js.map +1 -1
  200. package/sync/handler/converter/ScanCommandConverter.js +6 -14
  201. package/sync/handler/converter/ScanCommandConverter.js.map +1 -1
  202. package/sync/handler/converter/UpdateCommandConverter.js +6 -14
  203. package/sync/handler/converter/UpdateCommandConverter.js.map +1 -1
  204. package/sync/handler/converter/commands/BatchWriteCommandValue.d.ts +2 -2
  205. package/sync/handler/converter/commands/BatchWriteCommandValue.js +4 -11
  206. package/sync/handler/converter/commands/BatchWriteCommandValue.js.map +1 -1
  207. package/sync/handler/converter/commands/DeleteCommandValue.d.ts +2 -2
  208. package/sync/handler/converter/commands/DeleteCommandValue.js +3 -10
  209. package/sync/handler/converter/commands/DeleteCommandValue.js.map +1 -1
  210. package/sync/handler/converter/commands/NullCommandValue.d.ts +1 -1
  211. package/sync/handler/converter/commands/NullCommandValue.js +1 -8
  212. package/sync/handler/converter/commands/NullCommandValue.js.map +1 -1
  213. package/sync/handler/converter/commands/PutCommandValue.d.ts +2 -2
  214. package/sync/handler/converter/commands/PutCommandValue.js +3 -10
  215. package/sync/handler/converter/commands/PutCommandValue.js.map +1 -1
  216. package/sync/handler/converter/commands/UpdateCommandValue.d.ts +2 -2
  217. package/sync/handler/converter/commands/UpdateCommandValue.js +3 -10
  218. package/sync/handler/converter/commands/UpdateCommandValue.js.map +1 -1
  219. package/sync/handler/types.d.ts +3 -3
  220. package/sync/handler/types.js +1 -5
  221. package/sync/handler/types.js.map +1 -1
  222. package/sync/plugins/FilterOutRecordPlugin.d.ts +1 -1
  223. package/sync/plugins/FilterOutRecordPlugin.js +3 -11
  224. package/sync/plugins/FilterOutRecordPlugin.js.map +1 -1
  225. package/sync/requestPlugin.d.ts +1 -1
  226. package/sync/requestPlugin.js +19 -20
  227. package/sync/requestPlugin.js.map +1 -1
  228. package/sync/types.js +1 -5
  229. package/sync/utils/getTableType.js +7 -14
  230. package/sync/utils/getTableType.js.map +1 -1
  231. package/sync/utils/manifest.d.ts +1 -1
  232. package/sync/utils/manifest.js +12 -20
  233. package/sync/utils/manifest.js.map +1 -1
  234. package/sync/utils/validateSystemInput.d.ts +1 -1
  235. package/sync/utils/validateSystemInput.js +3 -10
  236. package/sync/utils/validateSystemInput.js.map +1 -1
  237. package/types.d.ts +3 -4
  238. package/types.js +2 -8
  239. package/types.js.map +1 -1
  240. package/utils/createSystemName.js +1 -8
  241. package/utils/createSystemName.js.map +1 -1
  242. package/worker/actions/copyFile/CopyFile.js +13 -21
  243. package/worker/actions/copyFile/CopyFile.js.map +1 -1
  244. package/worker/actions/copyFile/copyFileAction.d.ts +1 -1
  245. package/worker/actions/copyFile/copyFileAction.js +9 -16
  246. package/worker/actions/copyFile/copyFileAction.js.map +1 -1
  247. package/worker/actions/copyFile/copyFileSchema.js +8 -16
  248. package/worker/actions/copyFile/copyFileSchema.js.map +1 -1
  249. package/worker/actions/copyFile/types.js +1 -5
  250. package/worker/actions/createUser/CreateUser.d.ts +1 -1
  251. package/worker/actions/createUser/CreateUser.js +9 -16
  252. package/worker/actions/createUser/CreateUser.js.map +1 -1
  253. package/worker/actions/createUser/createUserAction.d.ts +2 -2
  254. package/worker/actions/createUser/createUserAction.js +9 -16
  255. package/worker/actions/createUser/createUserAction.js.map +1 -1
  256. package/worker/actions/createUser/createUserSchema.js +8 -16
  257. package/worker/actions/createUser/createUserSchema.js.map +1 -1
  258. package/worker/actions/createUser/types.js +1 -5
  259. package/worker/actions/deleteFile/DeleteFile.js +4 -11
  260. package/worker/actions/deleteFile/DeleteFile.js.map +1 -1
  261. package/worker/actions/deleteFile/deleteFileAction.d.ts +1 -1
  262. package/worker/actions/deleteFile/deleteFileAction.js +9 -16
  263. package/worker/actions/deleteFile/deleteFileAction.js.map +1 -1
  264. package/worker/actions/deleteFile/deleteFileSchema.js +8 -16
  265. package/worker/actions/deleteFile/deleteFileSchema.js.map +1 -1
  266. package/worker/actions/deleteFile/types.js +1 -5
  267. package/worker/actions/deleteUser/DeleteUser.d.ts +2 -2
  268. package/worker/actions/deleteUser/DeleteUser.js +7 -14
  269. package/worker/actions/deleteUser/DeleteUser.js.map +1 -1
  270. package/worker/actions/deleteUser/deleteUserAction.d.ts +1 -1
  271. package/worker/actions/deleteUser/deleteUserAction.js +9 -16
  272. package/worker/actions/deleteUser/deleteUserAction.js.map +1 -1
  273. package/worker/actions/deleteUser/deleteUserSchema.js +8 -16
  274. package/worker/actions/deleteUser/deleteUserSchema.js.map +1 -1
  275. package/worker/actions/deleteUser/types.js +1 -5
  276. package/worker/actions/logValidationError.js +4 -11
  277. package/worker/actions/logValidationError.js.map +1 -1
  278. package/worker/actions/removeCognitoUserAttributes.js +1 -8
  279. package/worker/actions/removeCognitoUserAttributes.js.map +1 -1
  280. package/worker/actions/updateUser/UpdateUser.d.ts +1 -1
  281. package/worker/actions/updateUser/UpdateUser.js +9 -16
  282. package/worker/actions/updateUser/UpdateUser.js.map +1 -1
  283. package/worker/actions/updateUser/types.js +1 -5
  284. package/worker/actions/updateUser/updateUserAction.d.ts +2 -2
  285. package/worker/actions/updateUser/updateUserAction.js +9 -16
  286. package/worker/actions/updateUser/updateUserAction.js.map +1 -1
  287. package/worker/actions/updateUser/updateUserSchema.js +8 -16
  288. package/worker/actions/updateUser/updateUserSchema.js.map +1 -1
  289. package/worker/createWorkerHandler.js +17 -24
  290. package/worker/createWorkerHandler.js.map +1 -1
  291. package/worker/handler/WorkerActionHandler.d.ts +2 -2
  292. package/worker/handler/WorkerActionHandler.js +3 -10
  293. package/worker/handler/WorkerActionHandler.js.map +1 -1
  294. package/worker/handler/eventHandler.js +9 -16
  295. package/worker/handler/eventHandler.js.map +1 -1
  296. package/worker/plugins/WorkerActionPlugin.d.ts +1 -1
  297. package/worker/plugins/WorkerActionPlugin.js +3 -11
  298. package/worker/plugins/WorkerActionPlugin.js.map +1 -1
  299. package/worker/types.js +1 -5
@@ -1 +1 @@
1
- {"version":3,"names":["_index","require","_error","_Deployments","_zod","_interopRequireDefault","_createZodError","_Deployment","_semver","deploymentsValidation","zod","array","object","name","string","env","variant","optional","region","version","s3Id","s3Arn","cognitoUserPoolId","transform","input","primaryDynamoDbArn","primaryDynamoDbName","primaryDynamoDbHashKey","primaryDynamoDbRangeKey","elasticsearchDynamodbTableArn","elasticsearchDynamodbTableName","DeploymentsFetcher","constructor","params","client","table","fetch","deployments","createDeployments","load","cmd","QueryCommand","TableName","IndexName","KeyConditionExpression","ExpressionAttributeValues","S","result","send","ex","console","error","output","items","Items","map","item","unmarshall","length","WebinyError","message","code","data","safeParse","success","createZodError","createDeployment","SemVer","services","logDynamodbTableName","logDynamodbTableArn","exports","createDeploymentsFetcher"],"sources":["DeploymentsFetcher.ts"],"sourcesContent":["import type { IDeployment, IDeployments, IDeploymentsFetcher } from \"./types.js\";\nimport type {\n DynamoDBDocument,\n QueryCommandOutput\n} from \"@webiny/aws-sdk/client-dynamodb/index.js\";\nimport { QueryCommand, unmarshall } from \"@webiny/aws-sdk/client-dynamodb/index.js\";\nimport { WebinyError } from \"@webiny/error\";\nimport { createDeployments } from \"./Deployments.js\";\nimport zod from \"zod\";\nimport { createZodError } from \"@webiny/utils/createZodError.js\";\nimport { createDeployment } from \"~/resolver/deployment/Deployment.js\";\nimport { SemVer } from \"semver\";\n\nconst deploymentsValidation = zod.array(\n zod.object({\n name: zod.string(),\n env: zod.string(),\n variant: zod.string().optional(),\n region: zod.string(),\n version: zod.string(),\n s3Id: zod.string(),\n s3Arn: zod.string(),\n cognitoUserPoolId: zod\n .string()\n .optional()\n .transform(input => input || \"\"),\n primaryDynamoDbArn: zod.string(),\n primaryDynamoDbName: zod.string(),\n primaryDynamoDbHashKey: zod.string(),\n primaryDynamoDbRangeKey: zod.string(),\n elasticsearchDynamodbTableArn: zod.string().optional(),\n elasticsearchDynamodbTableName: zod.string().optional()\n })\n);\n\nexport interface IDeploymentsFetcherParams {\n client: Pick<DynamoDBDocument, \"send\">;\n table: string;\n}\n\nexport class DeploymentsFetcher implements IDeploymentsFetcher {\n private readonly client: Pick<DynamoDBDocument, \"send\">;\n private deployments: IDeployments | undefined;\n private readonly table: string;\n\n public constructor(params: IDeploymentsFetcherParams) {\n this.client = params.client;\n this.table = params.table;\n }\n\n public async fetch(): Promise<IDeployments> {\n if (!this.deployments) {\n this.deployments = createDeployments({\n deployments: await this.load()\n });\n }\n return this.deployments;\n }\n\n private async load(): Promise<IDeployment[]> {\n const cmd = new QueryCommand({\n TableName: this.table,\n IndexName: \"GSI1\",\n KeyConditionExpression: `GSI1_PK = :pk`,\n ExpressionAttributeValues: {\n \":pk\": {\n S: \"DEPLOYMENTS\"\n }\n }\n });\n\n let result: QueryCommandOutput;\n try {\n result = await this.client.send(cmd);\n } catch (ex) {\n console.error(\"Error while fetching all deployments to be synced.\");\n throw ex;\n }\n return this.output(result);\n }\n\n private output(output: QueryCommandOutput): IDeployment[] {\n const items = (output.Items || []).map(item => {\n const result = unmarshall(item);\n return result.item;\n });\n if (items.length === 0) {\n throw new WebinyError({\n message: \"No deployments found which need to be synced.\",\n code: \"NO_DEPLOYMENTS\",\n data: {\n table: this.table\n }\n });\n }\n\n const result = deploymentsValidation.safeParse(items);\n if (!result.success) {\n throw createZodError(result.error);\n }\n return result.data.map(item => {\n return createDeployment({\n name: item.name,\n env: item.env,\n variant: item.variant,\n region: item.region,\n version: new SemVer(item.version),\n services: {\n s3Id: item.s3Id,\n s3Arn: item.s3Arn,\n cognitoUserPoolId: item.cognitoUserPoolId,\n primaryDynamoDbArn: item.primaryDynamoDbArn,\n primaryDynamoDbName: item.primaryDynamoDbName,\n primaryDynamoDbHashKey: item.primaryDynamoDbHashKey,\n primaryDynamoDbRangeKey: item.primaryDynamoDbRangeKey,\n elasticsearchDynamodbTableArn: item.elasticsearchDynamodbTableArn,\n elasticsearchDynamodbTableName: item.elasticsearchDynamodbTableName,\n logDynamodbTableName: item.primaryDynamoDbName,\n logDynamodbTableArn: item.primaryDynamoDbArn\n }\n });\n });\n }\n}\n\nexport const createDeploymentsFetcher = (\n params: IDeploymentsFetcherParams\n): IDeploymentsFetcher => {\n return new DeploymentsFetcher(params);\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["QueryCommand","unmarshall","WebinyError","createDeployments","zod","createZodError","createDeployment","SemVer","deploymentsValidation","array","object","name","string","env","variant","optional","region","version","s3Id","s3Arn","cognitoUserPoolId","transform","input","primaryDynamoDbArn","primaryDynamoDbName","primaryDynamoDbHashKey","primaryDynamoDbRangeKey","opensearchDynamodbTableArn","opensearchDynamodbTableName","DeploymentsFetcher","constructor","params","client","table","fetch","deployments","load","cmd","TableName","IndexName","KeyConditionExpression","ExpressionAttributeValues","S","result","send","ex","console","error","output","items","Items","map","item","length","message","code","data","safeParse","success","services","logDynamodbTableName","logDynamodbTableArn","createDeploymentsFetcher"],"sources":["DeploymentsFetcher.ts"],"sourcesContent":["import type { IDeployment, IDeployments, IDeploymentsFetcher } from \"./types.js\";\nimport type {\n DynamoDBDocument,\n QueryCommandOutput\n} from \"@webiny/aws-sdk/client-dynamodb/index.js\";\nimport { QueryCommand, unmarshall } from \"@webiny/aws-sdk/client-dynamodb/index.js\";\nimport { WebinyError } from \"@webiny/error\";\nimport { createDeployments } from \"./Deployments.js\";\nimport zod from \"zod\";\nimport { createZodError } from \"@webiny/utils/createZodError.js\";\nimport { createDeployment } from \"~/resolver/deployment/Deployment.js\";\nimport { SemVer } from \"semver\";\n\nconst deploymentsValidation = zod.array(\n zod.object({\n name: zod.string(),\n env: zod.string(),\n variant: zod.string().optional(),\n region: zod.string(),\n version: zod.string(),\n s3Id: zod.string(),\n s3Arn: zod.string(),\n cognitoUserPoolId: zod\n .string()\n .optional()\n .transform(input => input || \"\"),\n primaryDynamoDbArn: zod.string(),\n primaryDynamoDbName: zod.string(),\n primaryDynamoDbHashKey: zod.string(),\n primaryDynamoDbRangeKey: zod.string(),\n opensearchDynamodbTableArn: zod.string().optional(),\n opensearchDynamodbTableName: zod.string().optional()\n })\n);\n\nexport interface IDeploymentsFetcherParams {\n client: Pick<DynamoDBDocument, \"send\">;\n table: string;\n}\n\nexport class DeploymentsFetcher implements IDeploymentsFetcher {\n private readonly client: Pick<DynamoDBDocument, \"send\">;\n private deployments: IDeployments | undefined;\n private readonly table: string;\n\n public constructor(params: IDeploymentsFetcherParams) {\n this.client = params.client;\n this.table = params.table;\n }\n\n public async fetch(): Promise<IDeployments> {\n if (!this.deployments) {\n this.deployments = createDeployments({\n deployments: await this.load()\n });\n }\n return this.deployments;\n }\n\n private async load(): Promise<IDeployment[]> {\n const cmd = new QueryCommand({\n TableName: this.table,\n IndexName: \"GSI1\",\n KeyConditionExpression: `GSI1_PK = :pk`,\n ExpressionAttributeValues: {\n \":pk\": {\n S: \"DEPLOYMENTS\"\n }\n }\n });\n\n let result: QueryCommandOutput;\n try {\n result = await this.client.send(cmd);\n } catch (ex) {\n console.error(\"Error while fetching all deployments to be synced.\");\n throw ex;\n }\n return this.output(result);\n }\n\n private output(output: QueryCommandOutput): IDeployment[] {\n const items = (output.Items || []).map(item => {\n const result = unmarshall(item);\n return result.item;\n });\n if (items.length === 0) {\n throw new WebinyError({\n message: \"No deployments found which need to be synced.\",\n code: \"NO_DEPLOYMENTS\",\n data: {\n table: this.table\n }\n });\n }\n\n const result = deploymentsValidation.safeParse(items);\n if (!result.success) {\n throw createZodError(result.error);\n }\n return result.data.map(item => {\n return createDeployment({\n name: item.name,\n env: item.env,\n variant: item.variant,\n region: item.region,\n version: new SemVer(item.version),\n services: {\n s3Id: item.s3Id,\n s3Arn: item.s3Arn,\n cognitoUserPoolId: item.cognitoUserPoolId,\n primaryDynamoDbArn: item.primaryDynamoDbArn,\n primaryDynamoDbName: item.primaryDynamoDbName,\n primaryDynamoDbHashKey: item.primaryDynamoDbHashKey,\n primaryDynamoDbRangeKey: item.primaryDynamoDbRangeKey,\n opensearchDynamodbTableArn: item.opensearchDynamodbTableArn,\n opensearchDynamodbTableName: item.opensearchDynamodbTableName,\n logDynamodbTableName: item.primaryDynamoDbName,\n logDynamodbTableArn: item.primaryDynamoDbArn\n }\n });\n });\n }\n}\n\nexport const createDeploymentsFetcher = (\n params: IDeploymentsFetcherParams\n): IDeploymentsFetcher => {\n return new DeploymentsFetcher(params);\n};\n"],"mappings":"AAKA,SAASA,YAAY,EAAEC,UAAU,QAAQ,0CAA0C;AACnF,SAASC,WAAW,QAAQ,eAAe;AAC3C,SAASC,iBAAiB;AAC1B,OAAOC,GAAG,MAAM,KAAK;AACrB,SAASC,cAAc,QAAQ,iCAAiC;AAChE,SAASC,gBAAgB;AACzB,SAASC,MAAM,QAAQ,QAAQ;AAE/B,MAAMC,qBAAqB,GAAGJ,GAAG,CAACK,KAAK,CACnCL,GAAG,CAACM,MAAM,CAAC;EACPC,IAAI,EAAEP,GAAG,CAACQ,MAAM,CAAC,CAAC;EAClBC,GAAG,EAAET,GAAG,CAACQ,MAAM,CAAC,CAAC;EACjBE,OAAO,EAAEV,GAAG,CAACQ,MAAM,CAAC,CAAC,CAACG,QAAQ,CAAC,CAAC;EAChCC,MAAM,EAAEZ,GAAG,CAACQ,MAAM,CAAC,CAAC;EACpBK,OAAO,EAAEb,GAAG,CAACQ,MAAM,CAAC,CAAC;EACrBM,IAAI,EAAEd,GAAG,CAACQ,MAAM,CAAC,CAAC;EAClBO,KAAK,EAAEf,GAAG,CAACQ,MAAM,CAAC,CAAC;EACnBQ,iBAAiB,EAAEhB,GAAG,CACjBQ,MAAM,CAAC,CAAC,CACRG,QAAQ,CAAC,CAAC,CACVM,SAAS,CAACC,KAAK,IAAIA,KAAK,IAAI,EAAE,CAAC;EACpCC,kBAAkB,EAAEnB,GAAG,CAACQ,MAAM,CAAC,CAAC;EAChCY,mBAAmB,EAAEpB,GAAG,CAACQ,MAAM,CAAC,CAAC;EACjCa,sBAAsB,EAAErB,GAAG,CAACQ,MAAM,CAAC,CAAC;EACpCc,uBAAuB,EAAEtB,GAAG,CAACQ,MAAM,CAAC,CAAC;EACrCe,0BAA0B,EAAEvB,GAAG,CAACQ,MAAM,CAAC,CAAC,CAACG,QAAQ,CAAC,CAAC;EACnDa,2BAA2B,EAAExB,GAAG,CAACQ,MAAM,CAAC,CAAC,CAACG,QAAQ,CAAC;AACvD,CAAC,CACL,CAAC;AAOD,OAAO,MAAMc,kBAAkB,CAAgC;EAKpDC,WAAWA,CAACC,MAAiC,EAAE;IAClD,IAAI,CAACC,MAAM,GAAGD,MAAM,CAACC,MAAM;IAC3B,IAAI,CAACC,KAAK,GAAGF,MAAM,CAACE,KAAK;EAC7B;EAEA,MAAaC,KAAKA,CAAA,EAA0B;IACxC,IAAI,CAAC,IAAI,CAACC,WAAW,EAAE;MACnB,IAAI,CAACA,WAAW,GAAGhC,iBAAiB,CAAC;QACjCgC,WAAW,EAAE,MAAM,IAAI,CAACC,IAAI,CAAC;MACjC,CAAC,CAAC;IACN;IACA,OAAO,IAAI,CAACD,WAAW;EAC3B;EAEA,MAAcC,IAAIA,CAAA,EAA2B;IACzC,MAAMC,GAAG,GAAG,IAAIrC,YAAY,CAAC;MACzBsC,SAAS,EAAE,IAAI,CAACL,KAAK;MACrBM,SAAS,EAAE,MAAM;MACjBC,sBAAsB,EAAE,eAAe;MACvCC,yBAAyB,EAAE;QACvB,KAAK,EAAE;UACHC,CAAC,EAAE;QACP;MACJ;IACJ,CAAC,CAAC;IAEF,IAAIC,MAA0B;IAC9B,IAAI;MACAA,MAAM,GAAG,MAAM,IAAI,CAACX,MAAM,CAACY,IAAI,CAACP,GAAG,CAAC;IACxC,CAAC,CAAC,OAAOQ,EAAE,EAAE;MACTC,OAAO,CAACC,KAAK,CAAC,oDAAoD,CAAC;MACnE,MAAMF,EAAE;IACZ;IACA,OAAO,IAAI,CAACG,MAAM,CAACL,MAAM,CAAC;EAC9B;EAEQK,MAAMA,CAACA,MAA0B,EAAiB;IACtD,MAAMC,KAAK,GAAG,CAACD,MAAM,CAACE,KAAK,IAAI,EAAE,EAAEC,GAAG,CAACC,IAAI,IAAI;MAC3C,MAAMT,MAAM,GAAG1C,UAAU,CAACmD,IAAI,CAAC;MAC/B,OAAOT,MAAM,CAACS,IAAI;IACtB,CAAC,CAAC;IACF,IAAIH,KAAK,CAACI,MAAM,KAAK,CAAC,EAAE;MACpB,MAAM,IAAInD,WAAW,CAAC;QAClBoD,OAAO,EAAE,+CAA+C;QACxDC,IAAI,EAAE,gBAAgB;QACtBC,IAAI,EAAE;UACFvB,KAAK,EAAE,IAAI,CAACA;QAChB;MACJ,CAAC,CAAC;IACN;IAEA,MAAMU,MAAM,GAAGnC,qBAAqB,CAACiD,SAAS,CAACR,KAAK,CAAC;IACrD,IAAI,CAACN,MAAM,CAACe,OAAO,EAAE;MACjB,MAAMrD,cAAc,CAACsC,MAAM,CAACI,KAAK,CAAC;IACtC;IACA,OAAOJ,MAAM,CAACa,IAAI,CAACL,GAAG,CAACC,IAAI,IAAI;MAC3B,OAAO9C,gBAAgB,CAAC;QACpBK,IAAI,EAAEyC,IAAI,CAACzC,IAAI;QACfE,GAAG,EAAEuC,IAAI,CAACvC,GAAG;QACbC,OAAO,EAAEsC,IAAI,CAACtC,OAAO;QACrBE,MAAM,EAAEoC,IAAI,CAACpC,MAAM;QACnBC,OAAO,EAAE,IAAIV,MAAM,CAAC6C,IAAI,CAACnC,OAAO,CAAC;QACjC0C,QAAQ,EAAE;UACNzC,IAAI,EAAEkC,IAAI,CAAClC,IAAI;UACfC,KAAK,EAAEiC,IAAI,CAACjC,KAAK;UACjBC,iBAAiB,EAAEgC,IAAI,CAAChC,iBAAiB;UACzCG,kBAAkB,EAAE6B,IAAI,CAAC7B,kBAAkB;UAC3CC,mBAAmB,EAAE4B,IAAI,CAAC5B,mBAAmB;UAC7CC,sBAAsB,EAAE2B,IAAI,CAAC3B,sBAAsB;UACnDC,uBAAuB,EAAE0B,IAAI,CAAC1B,uBAAuB;UACrDC,0BAA0B,EAAEyB,IAAI,CAACzB,0BAA0B;UAC3DC,2BAA2B,EAAEwB,IAAI,CAACxB,2BAA2B;UAC7DgC,oBAAoB,EAAER,IAAI,CAAC5B,mBAAmB;UAC9CqC,mBAAmB,EAAET,IAAI,CAAC7B;QAC9B;MACJ,CAAC,CAAC;IACN,CAAC,CAAC;EACN;AACJ;AAEA,OAAO,MAAMuC,wBAAwB,GACjC/B,MAAiC,IACX;EACtB,OAAO,IAAIF,kBAAkB,CAACE,MAAM,CAAC;AACzC,CAAC","ignoreList":[]}
@@ -1,6 +1,6 @@
1
- import type { DynamoDBTableType } from "../../types";
1
+ import type { DynamoDBTableType } from "../../types.js";
2
2
  import type { SemVer } from "semver";
3
- import type { ITable } from "../../sync/types";
3
+ import type { ITable } from "../../sync/types.js";
4
4
  export interface IDeploymentServices {
5
5
  s3Id: string;
6
6
  s3Arn: string;
@@ -8,8 +8,8 @@ export interface IDeploymentServices {
8
8
  primaryDynamoDbName: string;
9
9
  primaryDynamoDbHashKey: string;
10
10
  primaryDynamoDbRangeKey: string;
11
- elasticsearchDynamodbTableArn?: string;
12
- elasticsearchDynamodbTableName?: string;
11
+ opensearchDynamodbTableArn?: string;
12
+ opensearchDynamodbTableName?: string;
13
13
  logDynamodbTableArn: string;
14
14
  logDynamodbTableName: string;
15
15
  cognitoUserPoolId: string;
@@ -1,7 +1,3 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
1
+ export {};
6
2
 
7
3
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["types.ts"],"sourcesContent":["import type { DynamoDBTableType } from \"~/types\";\nimport type { SemVer } from \"semver\";\nimport type { ITable } from \"~/sync/types\";\n\nexport interface IDeploymentServices {\n s3Id: string;\n s3Arn: string;\n primaryDynamoDbArn: string;\n primaryDynamoDbName: string;\n primaryDynamoDbHashKey: string;\n primaryDynamoDbRangeKey: string;\n elasticsearchDynamodbTableArn?: string;\n elasticsearchDynamodbTableName?: string;\n logDynamodbTableArn: string;\n logDynamodbTableName: string;\n cognitoUserPoolId: string;\n}\n\nexport interface IDeployment<S = IDeploymentServices> {\n name: string;\n env: string;\n variant: string | undefined;\n region: string;\n services: S;\n version: SemVer;\n getTable(type: DynamoDBTableType): ITable;\n}\n\nexport interface IDeployments {\n hasAny(): boolean;\n all(): IDeployment[];\n get(name: string): IDeployment | null;\n without(deployment: Pick<IDeployment, \"name\">): IDeployments;\n}\n\nexport interface IDeploymentsFetcher {\n fetch(): Promise<IDeployments>;\n}\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["types.ts"],"sourcesContent":["import type { DynamoDBTableType } from \"~/types.js\";\nimport type { SemVer } from \"semver\";\nimport type { ITable } from \"~/sync/types.js\";\n\nexport interface IDeploymentServices {\n s3Id: string;\n s3Arn: string;\n primaryDynamoDbArn: string;\n primaryDynamoDbName: string;\n primaryDynamoDbHashKey: string;\n primaryDynamoDbRangeKey: string;\n opensearchDynamodbTableArn?: string;\n opensearchDynamodbTableName?: string;\n logDynamodbTableArn: string;\n logDynamodbTableName: string;\n cognitoUserPoolId: string;\n}\n\nexport interface IDeployment<S = IDeploymentServices> {\n name: string;\n env: string;\n variant: string | undefined;\n region: string;\n services: S;\n version: SemVer;\n getTable(type: DynamoDBTableType): ITable;\n}\n\nexport interface IDeployments {\n hasAny(): boolean;\n all(): IDeployment[];\n get(name: string): IDeployment | null;\n without(deployment: Pick<IDeployment, \"name\">): IDeployments;\n}\n\nexport interface IDeploymentsFetcher {\n fetch(): Promise<IDeployments>;\n}\n"],"mappings":"","ignoreList":[]}
@@ -1,12 +1,6 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.LambdaTrigger = void 0;
7
- var _index = require("@webiny/aws-sdk/client-lambda/index.js");
8
- var _exception = require("@webiny/utils/exception.js");
9
- class LambdaTrigger {
1
+ import { InvokeCommand } from "@webiny/aws-sdk/client-lambda/index.js";
2
+ import { convertException } from "@webiny/utils/exception.js";
3
+ export class LambdaTrigger {
10
4
  constructor(params) {
11
5
  this.createLambdaClient = params.createLambdaClient;
12
6
  this.arn = params.arn;
@@ -24,16 +18,15 @@ class LambdaTrigger {
24
18
  InvocationType: invocationType,
25
19
  Payload: Buffer.from(JSON.stringify(payload))
26
20
  };
27
- const cmd = new _index.InvokeCommand(input);
21
+ const cmd = new InvokeCommand(input);
28
22
  try {
29
23
  return await lambdaClient.send(cmd);
30
24
  } catch (ex) {
31
25
  console.error(`Error while invoking Lambda function: ${this.arn}.`);
32
- console.log((0, _exception.convertException)(ex));
26
+ console.log(convertException(ex));
33
27
  throw ex;
34
28
  }
35
29
  }
36
30
  }
37
- exports.LambdaTrigger = LambdaTrigger;
38
31
 
39
32
  //# sourceMappingURL=LambdaTrigger.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_index","require","_exception","LambdaTrigger","constructor","params","createLambdaClient","arn","handle","lambdaClient","region","process","env","AWS_REGION","payload","invocationType","input","FunctionName","InvocationType","Payload","Buffer","from","JSON","stringify","cmd","InvokeCommand","send","ex","console","error","log","convertException","exports"],"sources":["LambdaTrigger.ts"],"sourcesContent":["import type {\n InvocationType,\n InvokeCommandInput,\n InvokeCommandOutput,\n LambdaClient,\n LambdaClientConfig\n} from \"@webiny/aws-sdk/client-lambda/index.js\";\nimport { InvokeCommand } from \"@webiny/aws-sdk/client-lambda/index.js\";\nimport { convertException } from \"@webiny/utils/exception.js\";\n\nexport interface IInvokeLambdaTriggerParamsCreateLambdaClientCb {\n (config: LambdaClientConfig): Pick<LambdaClient, \"send\">;\n}\n\nexport interface IInvokeLambdaTriggerParams {\n createLambdaClient: IInvokeLambdaTriggerParamsCreateLambdaClientCb;\n arn: string;\n}\n\nexport interface IInvokeLambdaHandleParams<TPayload> {\n payload: TPayload;\n invocationType: InvocationType;\n}\n\nexport class LambdaTrigger<TPayload> {\n private readonly createLambdaClient: IInvokeLambdaTriggerParamsCreateLambdaClientCb;\n private readonly arn: string;\n\n public constructor(params: IInvokeLambdaTriggerParams) {\n this.createLambdaClient = params.createLambdaClient;\n this.arn = params.arn;\n }\n\n public async handle(params: IInvokeLambdaHandleParams<TPayload>): Promise<InvokeCommandOutput> {\n const lambdaClient = this.createLambdaClient({\n region: process.env.AWS_REGION\n });\n const { payload, invocationType } = params;\n\n const input: InvokeCommandInput = {\n FunctionName: this.arn,\n InvocationType: invocationType,\n Payload: Buffer.from(JSON.stringify(payload))\n };\n\n const cmd = new InvokeCommand(input);\n try {\n return await lambdaClient.send(cmd);\n } catch (ex) {\n console.error(`Error while invoking Lambda function: ${this.arn}.`);\n console.log(convertException(ex));\n throw ex;\n }\n }\n}\n"],"mappings":";;;;;;AAOA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AAgBO,MAAME,aAAa,CAAW;EAI1BC,WAAWA,CAACC,MAAkC,EAAE;IACnD,IAAI,CAACC,kBAAkB,GAAGD,MAAM,CAACC,kBAAkB;IACnD,IAAI,CAACC,GAAG,GAAGF,MAAM,CAACE,GAAG;EACzB;EAEA,MAAaC,MAAMA,CAACH,MAA2C,EAAgC;IAC3F,MAAMI,YAAY,GAAG,IAAI,CAACH,kBAAkB,CAAC;MACzCI,MAAM,EAAEC,OAAO,CAACC,GAAG,CAACC;IACxB,CAAC,CAAC;IACF,MAAM;MAAEC,OAAO;MAAEC;IAAe,CAAC,GAAGV,MAAM;IAE1C,MAAMW,KAAyB,GAAG;MAC9BC,YAAY,EAAE,IAAI,CAACV,GAAG;MACtBW,cAAc,EAAEH,cAAc;MAC9BI,OAAO,EAAEC,MAAM,CAACC,IAAI,CAACC,IAAI,CAACC,SAAS,CAACT,OAAO,CAAC;IAChD,CAAC;IAED,MAAMU,GAAG,GAAG,IAAIC,oBAAa,CAACT,KAAK,CAAC;IACpC,IAAI;MACA,OAAO,MAAMP,YAAY,CAACiB,IAAI,CAACF,GAAG,CAAC;IACvC,CAAC,CAAC,OAAOG,EAAE,EAAE;MACTC,OAAO,CAACC,KAAK,CAAC,yCAAyC,IAAI,CAACtB,GAAG,GAAG,CAAC;MACnEqB,OAAO,CAACE,GAAG,CAAC,IAAAC,2BAAgB,EAACJ,EAAE,CAAC,CAAC;MACjC,MAAMA,EAAE;IACZ;EACJ;AACJ;AAACK,OAAA,CAAA7B,aAAA,GAAAA,aAAA","ignoreList":[]}
1
+ {"version":3,"names":["InvokeCommand","convertException","LambdaTrigger","constructor","params","createLambdaClient","arn","handle","lambdaClient","region","process","env","AWS_REGION","payload","invocationType","input","FunctionName","InvocationType","Payload","Buffer","from","JSON","stringify","cmd","send","ex","console","error","log"],"sources":["LambdaTrigger.ts"],"sourcesContent":["import type {\n InvocationType,\n InvokeCommandInput,\n InvokeCommandOutput,\n LambdaClient,\n LambdaClientConfig\n} from \"@webiny/aws-sdk/client-lambda/index.js\";\nimport { InvokeCommand } from \"@webiny/aws-sdk/client-lambda/index.js\";\nimport { convertException } from \"@webiny/utils/exception.js\";\n\nexport interface IInvokeLambdaTriggerParamsCreateLambdaClientCb {\n (config: LambdaClientConfig): Pick<LambdaClient, \"send\">;\n}\n\nexport interface IInvokeLambdaTriggerParams {\n createLambdaClient: IInvokeLambdaTriggerParamsCreateLambdaClientCb;\n arn: string;\n}\n\nexport interface IInvokeLambdaHandleParams<TPayload> {\n payload: TPayload;\n invocationType: InvocationType;\n}\n\nexport class LambdaTrigger<TPayload> {\n private readonly createLambdaClient: IInvokeLambdaTriggerParamsCreateLambdaClientCb;\n private readonly arn: string;\n\n public constructor(params: IInvokeLambdaTriggerParams) {\n this.createLambdaClient = params.createLambdaClient;\n this.arn = params.arn;\n }\n\n public async handle(params: IInvokeLambdaHandleParams<TPayload>): Promise<InvokeCommandOutput> {\n const lambdaClient = this.createLambdaClient({\n region: process.env.AWS_REGION\n });\n const { payload, invocationType } = params;\n\n const input: InvokeCommandInput = {\n FunctionName: this.arn,\n InvocationType: invocationType,\n Payload: Buffer.from(JSON.stringify(payload))\n };\n\n const cmd = new InvokeCommand(input);\n try {\n return await lambdaClient.send(cmd);\n } catch (ex) {\n console.error(`Error while invoking Lambda function: ${this.arn}.`);\n console.log(convertException(ex));\n throw ex;\n }\n }\n}\n"],"mappings":"AAOA,SAASA,aAAa,QAAQ,wCAAwC;AACtE,SAASC,gBAAgB,QAAQ,4BAA4B;AAgB7D,OAAO,MAAMC,aAAa,CAAW;EAI1BC,WAAWA,CAACC,MAAkC,EAAE;IACnD,IAAI,CAACC,kBAAkB,GAAGD,MAAM,CAACC,kBAAkB;IACnD,IAAI,CAACC,GAAG,GAAGF,MAAM,CAACE,GAAG;EACzB;EAEA,MAAaC,MAAMA,CAACH,MAA2C,EAAgC;IAC3F,MAAMI,YAAY,GAAG,IAAI,CAACH,kBAAkB,CAAC;MACzCI,MAAM,EAAEC,OAAO,CAACC,GAAG,CAACC;IACxB,CAAC,CAAC;IACF,MAAM;MAAEC,OAAO;MAAEC;IAAe,CAAC,GAAGV,MAAM;IAE1C,MAAMW,KAAyB,GAAG;MAC9BC,YAAY,EAAE,IAAI,CAACV,GAAG;MACtBW,cAAc,EAAEH,cAAc;MAC9BI,OAAO,EAAEC,MAAM,CAACC,IAAI,CAACC,IAAI,CAACC,SAAS,CAACT,OAAO,CAAC;IAChD,CAAC;IAED,MAAMU,GAAG,GAAG,IAAIvB,aAAa,CAACe,KAAK,CAAC;IACpC,IAAI;MACA,OAAO,MAAMP,YAAY,CAACgB,IAAI,CAACD,GAAG,CAAC;IACvC,CAAC,CAAC,OAAOE,EAAE,EAAE;MACTC,OAAO,CAACC,KAAK,CAAC,yCAAyC,IAAI,CAACrB,GAAG,GAAG,CAAC;MACnEoB,OAAO,CAACE,GAAG,CAAC3B,gBAAgB,CAACwB,EAAE,CAAC,CAAC;MACjC,MAAMA,EAAE;IACZ;EACJ;AACJ","ignoreList":[]}
@@ -1,9 +1,9 @@
1
1
  import { Plugin } from "@webiny/plugins";
2
2
  import type { CommandType } from "../../types.js";
3
- import type { IStoreItem, IStorer } from "../app/storer/types.js";
4
- import type { IDeployment } from "../deployment/types.js";
3
+ import type { IStoreItem, IStorer } from "../../resolver/app/storer/types.js";
4
+ import type { IDeployment } from "../../resolver/deployment/types.js";
5
5
  import type { ITable } from "../../sync/types.js";
6
- import type { IBundle } from "../app/bundler/types.js";
6
+ import type { IBundle } from "../../resolver/app/bundler/types.js";
7
7
  export interface ICommandHandlerPluginCallable {
8
8
  (params: ICommandHandlerPluginHandleParams): Promise<void>;
9
9
  }
@@ -1,11 +1,5 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.createCommandHandlerPlugin = exports.CommandHandlerPlugin = void 0;
7
- var _plugins = require("@webiny/plugins");
8
- class CommandHandlerPlugin extends _plugins.Plugin {
1
+ import { Plugin } from "@webiny/plugins";
2
+ export class CommandHandlerPlugin extends Plugin {
9
3
  static type = "syncSystem.commandHandlerPlugin";
10
4
  constructor(params) {
11
5
  super();
@@ -18,10 +12,8 @@ class CommandHandlerPlugin extends _plugins.Plugin {
18
12
  return await this.config.handle(params);
19
13
  }
20
14
  }
21
- exports.CommandHandlerPlugin = CommandHandlerPlugin;
22
- const createCommandHandlerPlugin = params => {
15
+ export const createCommandHandlerPlugin = params => {
23
16
  return new CommandHandlerPlugin(params);
24
17
  };
25
- exports.createCommandHandlerPlugin = createCommandHandlerPlugin;
26
18
 
27
19
  //# sourceMappingURL=CommandHandlerPlugin.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_plugins","require","CommandHandlerPlugin","Plugin","type","constructor","params","config","canHandle","command","handle","exports","createCommandHandlerPlugin"],"sources":["CommandHandlerPlugin.ts"],"sourcesContent":["import { Plugin } from \"@webiny/plugins\";\nimport type { CommandType } from \"~/types.js\";\nimport type { IStoreItem, IStorer } from \"~/resolver/app/storer/types.js\";\nimport type { IDeployment } from \"~/resolver/deployment/types.js\";\nimport type { ITable } from \"~/sync/types.js\";\nimport type { IBundle } from \"~/resolver/app/bundler/types.js\";\n\nexport interface ICommandHandlerPluginCallable {\n (params: ICommandHandlerPluginHandleParams): Promise<void>;\n}\n\nexport interface ICommandHandlerPluginCanHandleCallable {\n (command: CommandType): boolean;\n}\n\nexport interface ICommandHandlerPluginHandleParams {\n storer: IStorer;\n items: IStoreItem[];\n bundle: IBundle;\n targetDeployment: IDeployment;\n targetTable: ITable;\n}\n\nexport interface ICommandHandlerPluginParams {\n handle: ICommandHandlerPluginCallable;\n canHandle: ICommandHandlerPluginCanHandleCallable;\n}\n\nexport class CommandHandlerPlugin extends Plugin {\n public static override type: string = \"syncSystem.commandHandlerPlugin\";\n\n private readonly config: ICommandHandlerPluginParams;\n\n public constructor(params: ICommandHandlerPluginParams) {\n super();\n this.config = params;\n }\n\n public canHandle(command: CommandType): boolean {\n return this.config.canHandle(command);\n }\n\n public async handle(params: ICommandHandlerPluginHandleParams): Promise<void> {\n return await this.config.handle(params);\n }\n}\n\nexport const createCommandHandlerPlugin = (\n params: ICommandHandlerPluginParams\n): CommandHandlerPlugin => {\n return new CommandHandlerPlugin(params);\n};\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AA4BO,MAAMC,oBAAoB,SAASC,eAAM,CAAC;EAC7C,OAAuBC,IAAI,GAAW,iCAAiC;EAIhEC,WAAWA,CAACC,MAAmC,EAAE;IACpD,KAAK,CAAC,CAAC;IACP,IAAI,CAACC,MAAM,GAAGD,MAAM;EACxB;EAEOE,SAASA,CAACC,OAAoB,EAAW;IAC5C,OAAO,IAAI,CAACF,MAAM,CAACC,SAAS,CAACC,OAAO,CAAC;EACzC;EAEA,MAAaC,MAAMA,CAACJ,MAAyC,EAAiB;IAC1E,OAAO,MAAM,IAAI,CAACC,MAAM,CAACG,MAAM,CAACJ,MAAM,CAAC;EAC3C;AACJ;AAACK,OAAA,CAAAT,oBAAA,GAAAA,oBAAA;AAEM,MAAMU,0BAA0B,GACnCN,MAAmC,IACZ;EACvB,OAAO,IAAIJ,oBAAoB,CAACI,MAAM,CAAC;AAC3C,CAAC;AAACK,OAAA,CAAAC,0BAAA,GAAAA,0BAAA","ignoreList":[]}
1
+ {"version":3,"names":["Plugin","CommandHandlerPlugin","type","constructor","params","config","canHandle","command","handle","createCommandHandlerPlugin"],"sources":["CommandHandlerPlugin.ts"],"sourcesContent":["import { Plugin } from \"@webiny/plugins\";\nimport type { CommandType } from \"~/types.js\";\nimport type { IStoreItem, IStorer } from \"~/resolver/app/storer/types.js\";\nimport type { IDeployment } from \"~/resolver/deployment/types.js\";\nimport type { ITable } from \"~/sync/types.js\";\nimport type { IBundle } from \"~/resolver/app/bundler/types.js\";\n\nexport interface ICommandHandlerPluginCallable {\n (params: ICommandHandlerPluginHandleParams): Promise<void>;\n}\n\nexport interface ICommandHandlerPluginCanHandleCallable {\n (command: CommandType): boolean;\n}\n\nexport interface ICommandHandlerPluginHandleParams {\n storer: IStorer;\n items: IStoreItem[];\n bundle: IBundle;\n targetDeployment: IDeployment;\n targetTable: ITable;\n}\n\nexport interface ICommandHandlerPluginParams {\n handle: ICommandHandlerPluginCallable;\n canHandle: ICommandHandlerPluginCanHandleCallable;\n}\n\nexport class CommandHandlerPlugin extends Plugin {\n public static override type: string = \"syncSystem.commandHandlerPlugin\";\n\n private readonly config: ICommandHandlerPluginParams;\n\n public constructor(params: ICommandHandlerPluginParams) {\n super();\n this.config = params;\n }\n\n public canHandle(command: CommandType): boolean {\n return this.config.canHandle(command);\n }\n\n public async handle(params: ICommandHandlerPluginHandleParams): Promise<void> {\n return await this.config.handle(params);\n }\n}\n\nexport const createCommandHandlerPlugin = (\n params: ICommandHandlerPluginParams\n): CommandHandlerPlugin => {\n return new CommandHandlerPlugin(params);\n};\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,iBAAiB;AA4BxC,OAAO,MAAMC,oBAAoB,SAASD,MAAM,CAAC;EAC7C,OAAuBE,IAAI,GAAW,iCAAiC;EAIhEC,WAAWA,CAACC,MAAmC,EAAE;IACpD,KAAK,CAAC,CAAC;IACP,IAAI,CAACC,MAAM,GAAGD,MAAM;EACxB;EAEOE,SAASA,CAACC,OAAoB,EAAW;IAC5C,OAAO,IAAI,CAACF,MAAM,CAACC,SAAS,CAACC,OAAO,CAAC;EACzC;EAEA,MAAaC,MAAMA,CAACJ,MAAyC,EAAiB;IAC1E,OAAO,MAAM,IAAI,CAACC,MAAM,CAACG,MAAM,CAACJ,MAAM,CAAC;EAC3C;AACJ;AAEA,OAAO,MAAMK,0BAA0B,GACnCL,MAAmC,IACZ;EACvB,OAAO,IAAIH,oBAAoB,CAACG,MAAM,CAAC;AAC3C,CAAC","ignoreList":[]}
@@ -1,8 +1,8 @@
1
1
  import { Plugin } from "@webiny/plugins/Plugin.js";
2
2
  import type { CommandType } from "../../types.js";
3
- import type { IStoreItem } from "../app/storer/types.js";
3
+ import type { IStoreItem } from "../../resolver/app/storer/types.js";
4
4
  import type { ITable } from "../../sync/types.js";
5
- import type { IDeployment } from "../deployment/types.js";
5
+ import type { IDeployment } from "../../resolver/deployment/types.js";
6
6
  export interface IStorerAfterEachPluginCanHandleParams {
7
7
  command: CommandType;
8
8
  target: IDeployment;
@@ -1,11 +1,5 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.createStorerAfterEachPluginWithName = exports.createStorerAfterEachPlugin = exports.StorerAfterEachPlugin = void 0;
7
- var _Plugin = require("@webiny/plugins/Plugin.js");
8
- class StorerAfterEachPlugin extends _Plugin.Plugin {
1
+ import { Plugin } from "@webiny/plugins/Plugin.js";
2
+ export class StorerAfterEachPlugin extends Plugin {
9
3
  static type = "syncSystem.storerAfterEachPlugin";
10
4
  constructor(config) {
11
5
  super();
@@ -18,16 +12,13 @@ class StorerAfterEachPlugin extends _Plugin.Plugin {
18
12
  return this.config.handle(params);
19
13
  }
20
14
  }
21
- exports.StorerAfterEachPlugin = StorerAfterEachPlugin;
22
- const createStorerAfterEachPlugin = params => {
15
+ export const createStorerAfterEachPlugin = params => {
23
16
  return new StorerAfterEachPlugin(params);
24
17
  };
25
- exports.createStorerAfterEachPlugin = createStorerAfterEachPlugin;
26
- const createStorerAfterEachPluginWithName = (name, params) => {
18
+ export const createStorerAfterEachPluginWithName = (name, params) => {
27
19
  const plugin = createStorerAfterEachPlugin(params);
28
20
  plugin.name = `${StorerAfterEachPlugin.type}.${name}`;
29
21
  return plugin;
30
22
  };
31
- exports.createStorerAfterEachPluginWithName = createStorerAfterEachPluginWithName;
32
23
 
33
24
  //# sourceMappingURL=StorerAfterEachPlugin.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_Plugin","require","StorerAfterEachPlugin","Plugin","type","constructor","config","canHandle","params","handle","exports","createStorerAfterEachPlugin","createStorerAfterEachPluginWithName","name","plugin"],"sources":["StorerAfterEachPlugin.ts"],"sourcesContent":["import { Plugin } from \"@webiny/plugins/Plugin.js\";\nimport type { CommandType } from \"~/types.js\";\nimport type { IStoreItem } from \"~/resolver/app/storer/types.js\";\nimport type { ITable } from \"~/sync/types.js\";\nimport type { IDeployment } from \"~/resolver/deployment/types.js\";\n\nexport interface IStorerAfterEachPluginCanHandleParams {\n command: CommandType;\n target: IDeployment;\n source: IDeployment;\n table: ITable;\n item: IStoreItem;\n}\n\nexport interface IStorerAfterEachPluginHandleParams {\n target: IDeployment;\n source: IDeployment;\n table: ITable;\n item: IStoreItem;\n}\n\nexport interface IStorerAfterEachPluginParams {\n canHandle: (params: IStorerAfterEachPluginCanHandleParams) => boolean;\n handle: (params: IStorerAfterEachPluginHandleParams) => Promise<void>;\n}\n\nexport class StorerAfterEachPlugin extends Plugin {\n public static override readonly type: string = \"syncSystem.storerAfterEachPlugin\";\n\n private readonly config: IStorerAfterEachPluginParams;\n\n public constructor(config: IStorerAfterEachPluginParams) {\n super();\n this.config = config;\n }\n\n public canHandle(params: IStorerAfterEachPluginCanHandleParams): boolean {\n return this.config.canHandle(params);\n }\n\n public handle(params: IStorerAfterEachPluginHandleParams): Promise<void> {\n return this.config.handle(params);\n }\n}\n\nexport const createStorerAfterEachPlugin = (params: IStorerAfterEachPluginParams) => {\n return new StorerAfterEachPlugin(params);\n};\n\nexport const createStorerAfterEachPluginWithName = (\n name: string,\n params: IStorerAfterEachPluginParams\n) => {\n const plugin = createStorerAfterEachPlugin(params);\n plugin.name = `${StorerAfterEachPlugin.type}.${name}`;\n return plugin;\n};\n"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AA0BO,MAAMC,qBAAqB,SAASC,cAAM,CAAC;EAC9C,OAAgCC,IAAI,GAAW,kCAAkC;EAI1EC,WAAWA,CAACC,MAAoC,EAAE;IACrD,KAAK,CAAC,CAAC;IACP,IAAI,CAACA,MAAM,GAAGA,MAAM;EACxB;EAEOC,SAASA,CAACC,MAA6C,EAAW;IACrE,OAAO,IAAI,CAACF,MAAM,CAACC,SAAS,CAACC,MAAM,CAAC;EACxC;EAEOC,MAAMA,CAACD,MAA0C,EAAiB;IACrE,OAAO,IAAI,CAACF,MAAM,CAACG,MAAM,CAACD,MAAM,CAAC;EACrC;AACJ;AAACE,OAAA,CAAAR,qBAAA,GAAAA,qBAAA;AAEM,MAAMS,2BAA2B,GAAIH,MAAoC,IAAK;EACjF,OAAO,IAAIN,qBAAqB,CAACM,MAAM,CAAC;AAC5C,CAAC;AAACE,OAAA,CAAAC,2BAAA,GAAAA,2BAAA;AAEK,MAAMC,mCAAmC,GAAGA,CAC/CC,IAAY,EACZL,MAAoC,KACnC;EACD,MAAMM,MAAM,GAAGH,2BAA2B,CAACH,MAAM,CAAC;EAClDM,MAAM,CAACD,IAAI,GAAG,GAAGX,qBAAqB,CAACE,IAAI,IAAIS,IAAI,EAAE;EACrD,OAAOC,MAAM;AACjB,CAAC;AAACJ,OAAA,CAAAE,mCAAA,GAAAA,mCAAA","ignoreList":[]}
1
+ {"version":3,"names":["Plugin","StorerAfterEachPlugin","type","constructor","config","canHandle","params","handle","createStorerAfterEachPlugin","createStorerAfterEachPluginWithName","name","plugin"],"sources":["StorerAfterEachPlugin.ts"],"sourcesContent":["import { Plugin } from \"@webiny/plugins/Plugin.js\";\nimport type { CommandType } from \"~/types.js\";\nimport type { IStoreItem } from \"~/resolver/app/storer/types.js\";\nimport type { ITable } from \"~/sync/types.js\";\nimport type { IDeployment } from \"~/resolver/deployment/types.js\";\n\nexport interface IStorerAfterEachPluginCanHandleParams {\n command: CommandType;\n target: IDeployment;\n source: IDeployment;\n table: ITable;\n item: IStoreItem;\n}\n\nexport interface IStorerAfterEachPluginHandleParams {\n target: IDeployment;\n source: IDeployment;\n table: ITable;\n item: IStoreItem;\n}\n\nexport interface IStorerAfterEachPluginParams {\n canHandle: (params: IStorerAfterEachPluginCanHandleParams) => boolean;\n handle: (params: IStorerAfterEachPluginHandleParams) => Promise<void>;\n}\n\nexport class StorerAfterEachPlugin extends Plugin {\n public static override readonly type: string = \"syncSystem.storerAfterEachPlugin\";\n\n private readonly config: IStorerAfterEachPluginParams;\n\n public constructor(config: IStorerAfterEachPluginParams) {\n super();\n this.config = config;\n }\n\n public canHandle(params: IStorerAfterEachPluginCanHandleParams): boolean {\n return this.config.canHandle(params);\n }\n\n public handle(params: IStorerAfterEachPluginHandleParams): Promise<void> {\n return this.config.handle(params);\n }\n}\n\nexport const createStorerAfterEachPlugin = (params: IStorerAfterEachPluginParams) => {\n return new StorerAfterEachPlugin(params);\n};\n\nexport const createStorerAfterEachPluginWithName = (\n name: string,\n params: IStorerAfterEachPluginParams\n) => {\n const plugin = createStorerAfterEachPlugin(params);\n plugin.name = `${StorerAfterEachPlugin.type}.${name}`;\n return plugin;\n};\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,2BAA2B;AA0BlD,OAAO,MAAMC,qBAAqB,SAASD,MAAM,CAAC;EAC9C,OAAgCE,IAAI,GAAW,kCAAkC;EAI1EC,WAAWA,CAACC,MAAoC,EAAE;IACrD,KAAK,CAAC,CAAC;IACP,IAAI,CAACA,MAAM,GAAGA,MAAM;EACxB;EAEOC,SAASA,CAACC,MAA6C,EAAW;IACrE,OAAO,IAAI,CAACF,MAAM,CAACC,SAAS,CAACC,MAAM,CAAC;EACxC;EAEOC,MAAMA,CAACD,MAA0C,EAAiB;IACrE,OAAO,IAAI,CAACF,MAAM,CAACG,MAAM,CAACD,MAAM,CAAC;EACrC;AACJ;AAEA,OAAO,MAAME,2BAA2B,GAAIF,MAAoC,IAAK;EACjF,OAAO,IAAIL,qBAAqB,CAACK,MAAM,CAAC;AAC5C,CAAC;AAED,OAAO,MAAMG,mCAAmC,GAAGA,CAC/CC,IAAY,EACZJ,MAAoC,KACnC;EACD,MAAMK,MAAM,GAAGH,2BAA2B,CAACF,MAAM,CAAC;EAClDK,MAAM,CAACD,IAAI,GAAG,GAAGT,qBAAqB,CAACC,IAAI,IAAIQ,IAAI,EAAE;EACrD,OAAOC,MAAM;AACjB,CAAC","ignoreList":[]}
@@ -1,7 +1,7 @@
1
1
  import { Plugin } from "@webiny/plugins";
2
2
  import type { ITable } from "../../sync/types.js";
3
- import type { IDeployment } from "../deployment/types.js";
4
- import type { IStoreItem } from "../app/storer/types.js";
3
+ import type { IDeployment } from "../../resolver/deployment/types.js";
4
+ import type { IStoreItem } from "../../resolver/app/storer/types.js";
5
5
  import type { DynamoDBTableType } from "../../types.js";
6
6
  import type { PluginsContainer } from "@webiny/plugins/PluginsContainer.js";
7
7
  export interface ITransformRecordPluginConfigTransformCallableParams {
@@ -23,7 +23,7 @@ export interface ITransformRecordPluginConfigTransformCallable {
23
23
  (params: ITransformRecordPluginConfigTransformCallableParams, next: () => Promise<Readonly<IStoreItem>>): Promise<Readonly<IStoreItem>>;
24
24
  }
25
25
  export interface ITransformRecordPluginConfig {
26
- tableType: DynamoDBTableType.REGULAR | DynamoDBTableType.ELASTICSEARCH;
26
+ tableType: DynamoDBTableType.REGULAR | DynamoDBTableType.OPENSEARCH;
27
27
  canTransform: ITransformRecordPluginConfigCanTransformCallable;
28
28
  transform: ITransformRecordPluginConfigTransformCallable;
29
29
  }
@@ -1,11 +1,5 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.createTransformRecordPlugin = exports.TransformRecordPlugin = void 0;
7
- var _plugins = require("@webiny/plugins");
8
- class TransformRecordPlugin extends _plugins.Plugin {
1
+ import { Plugin } from "@webiny/plugins";
2
+ export class TransformRecordPlugin extends Plugin {
9
3
  static type = "syncSystem.transformRecordPlugin";
10
4
  constructor(config) {
11
5
  super();
@@ -21,10 +15,8 @@ class TransformRecordPlugin extends _plugins.Plugin {
21
15
  return this.config.transform(params, next);
22
16
  }
23
17
  }
24
- exports.TransformRecordPlugin = TransformRecordPlugin;
25
- const createTransformRecordPlugin = config => {
18
+ export const createTransformRecordPlugin = config => {
26
19
  return new TransformRecordPlugin(config);
27
20
  };
28
- exports.createTransformRecordPlugin = createTransformRecordPlugin;
29
21
 
30
22
  //# sourceMappingURL=TransformRecordPlugin.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_plugins","require","TransformRecordPlugin","Plugin","type","constructor","config","isForTableType","tableType","canTransform","params","transform","next","exports","createTransformRecordPlugin"],"sources":["TransformRecordPlugin.ts"],"sourcesContent":["import { Plugin } from \"@webiny/plugins\";\nimport type { ITable } from \"~/sync/types.js\";\nimport type { IDeployment } from \"~/resolver/deployment/types.js\";\nimport type { IStoreItem } from \"~/resolver/app/storer/types.js\";\nimport type { DynamoDBTableType } from \"~/types.js\";\nimport type { PluginsContainer } from \"@webiny/plugins/PluginsContainer.js\";\n\nexport interface ITransformRecordPluginConfigTransformCallableParams {\n readonly plugins: PluginsContainer;\n readonly record: IStoreItem;\n sourceDeployment: IDeployment;\n targetDeployment: IDeployment;\n sourceTable: ITable;\n targetTable: ITable;\n}\n\nexport interface ITransformRecordPluginConfigCanTransformCallableParams {\n from: Omit<IDeployment, \"getTable\">;\n to: Omit<IDeployment, \"getTable\">;\n}\n\nexport interface ITransformRecordPluginConfigCanTransformCallable {\n (params: ITransformRecordPluginConfigCanTransformCallableParams): boolean;\n}\n\nexport interface ITransformRecordPluginConfigTransformCallable {\n (\n params: ITransformRecordPluginConfigTransformCallableParams,\n next: () => Promise<Readonly<IStoreItem>>\n ): Promise<Readonly<IStoreItem>>;\n}\n\nexport interface ITransformRecordPluginConfig {\n tableType: DynamoDBTableType.REGULAR | DynamoDBTableType.ELASTICSEARCH;\n canTransform: ITransformRecordPluginConfigCanTransformCallable;\n transform: ITransformRecordPluginConfigTransformCallable;\n}\n\nexport class TransformRecordPlugin extends Plugin {\n public static override type: string = \"syncSystem.transformRecordPlugin\";\n\n private readonly config: ITransformRecordPluginConfig;\n\n public constructor(config: ITransformRecordPluginConfig) {\n super();\n this.config = config;\n }\n\n public isForTableType(tableType: DynamoDBTableType): boolean {\n return this.config.tableType === tableType;\n }\n\n public canTransform(params: ITransformRecordPluginConfigCanTransformCallableParams): boolean {\n return this.config.canTransform(params);\n }\n\n public transform(\n params: ITransformRecordPluginConfigTransformCallableParams,\n next: () => Promise<Readonly<IStoreItem>>\n ): Promise<Readonly<IStoreItem>> {\n return this.config.transform(params, next);\n }\n}\n\nexport const createTransformRecordPlugin = (config: ITransformRecordPluginConfig) => {\n return new TransformRecordPlugin(config);\n};\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAsCO,MAAMC,qBAAqB,SAASC,eAAM,CAAC;EAC9C,OAAuBC,IAAI,GAAW,kCAAkC;EAIjEC,WAAWA,CAACC,MAAoC,EAAE;IACrD,KAAK,CAAC,CAAC;IACP,IAAI,CAACA,MAAM,GAAGA,MAAM;EACxB;EAEOC,cAAcA,CAACC,SAA4B,EAAW;IACzD,OAAO,IAAI,CAACF,MAAM,CAACE,SAAS,KAAKA,SAAS;EAC9C;EAEOC,YAAYA,CAACC,MAA8D,EAAW;IACzF,OAAO,IAAI,CAACJ,MAAM,CAACG,YAAY,CAACC,MAAM,CAAC;EAC3C;EAEOC,SAASA,CACZD,MAA2D,EAC3DE,IAAyC,EACZ;IAC7B,OAAO,IAAI,CAACN,MAAM,CAACK,SAAS,CAACD,MAAM,EAAEE,IAAI,CAAC;EAC9C;AACJ;AAACC,OAAA,CAAAX,qBAAA,GAAAA,qBAAA;AAEM,MAAMY,2BAA2B,GAAIR,MAAoC,IAAK;EACjF,OAAO,IAAIJ,qBAAqB,CAACI,MAAM,CAAC;AAC5C,CAAC;AAACO,OAAA,CAAAC,2BAAA,GAAAA,2BAAA","ignoreList":[]}
1
+ {"version":3,"names":["Plugin","TransformRecordPlugin","type","constructor","config","isForTableType","tableType","canTransform","params","transform","next","createTransformRecordPlugin"],"sources":["TransformRecordPlugin.ts"],"sourcesContent":["import { Plugin } from \"@webiny/plugins\";\nimport type { ITable } from \"~/sync/types.js\";\nimport type { IDeployment } from \"~/resolver/deployment/types.js\";\nimport type { IStoreItem } from \"~/resolver/app/storer/types.js\";\nimport type { DynamoDBTableType } from \"~/types.js\";\nimport type { PluginsContainer } from \"@webiny/plugins/PluginsContainer.js\";\n\nexport interface ITransformRecordPluginConfigTransformCallableParams {\n readonly plugins: PluginsContainer;\n readonly record: IStoreItem;\n sourceDeployment: IDeployment;\n targetDeployment: IDeployment;\n sourceTable: ITable;\n targetTable: ITable;\n}\n\nexport interface ITransformRecordPluginConfigCanTransformCallableParams {\n from: Omit<IDeployment, \"getTable\">;\n to: Omit<IDeployment, \"getTable\">;\n}\n\nexport interface ITransformRecordPluginConfigCanTransformCallable {\n (params: ITransformRecordPluginConfigCanTransformCallableParams): boolean;\n}\n\nexport interface ITransformRecordPluginConfigTransformCallable {\n (\n params: ITransformRecordPluginConfigTransformCallableParams,\n next: () => Promise<Readonly<IStoreItem>>\n ): Promise<Readonly<IStoreItem>>;\n}\n\nexport interface ITransformRecordPluginConfig {\n tableType: DynamoDBTableType.REGULAR | DynamoDBTableType.OPENSEARCH;\n canTransform: ITransformRecordPluginConfigCanTransformCallable;\n transform: ITransformRecordPluginConfigTransformCallable;\n}\n\nexport class TransformRecordPlugin extends Plugin {\n public static override type: string = \"syncSystem.transformRecordPlugin\";\n\n private readonly config: ITransformRecordPluginConfig;\n\n public constructor(config: ITransformRecordPluginConfig) {\n super();\n this.config = config;\n }\n\n public isForTableType(tableType: DynamoDBTableType): boolean {\n return this.config.tableType === tableType;\n }\n\n public canTransform(params: ITransformRecordPluginConfigCanTransformCallableParams): boolean {\n return this.config.canTransform(params);\n }\n\n public transform(\n params: ITransformRecordPluginConfigTransformCallableParams,\n next: () => Promise<Readonly<IStoreItem>>\n ): Promise<Readonly<IStoreItem>> {\n return this.config.transform(params, next);\n }\n}\n\nexport const createTransformRecordPlugin = (config: ITransformRecordPluginConfig) => {\n return new TransformRecordPlugin(config);\n};\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,iBAAiB;AAsCxC,OAAO,MAAMC,qBAAqB,SAASD,MAAM,CAAC;EAC9C,OAAuBE,IAAI,GAAW,kCAAkC;EAIjEC,WAAWA,CAACC,MAAoC,EAAE;IACrD,KAAK,CAAC,CAAC;IACP,IAAI,CAACA,MAAM,GAAGA,MAAM;EACxB;EAEOC,cAAcA,CAACC,SAA4B,EAAW;IACzD,OAAO,IAAI,CAACF,MAAM,CAACE,SAAS,KAAKA,SAAS;EAC9C;EAEOC,YAAYA,CAACC,MAA8D,EAAW;IACzF,OAAO,IAAI,CAACJ,MAAM,CAACG,YAAY,CAACC,MAAM,CAAC;EAC3C;EAEOC,SAASA,CACZD,MAA2D,EAC3DE,IAAyC,EACZ;IAC7B,OAAO,IAAI,CAACN,MAAM,CAACK,SAAS,CAACD,MAAM,EAAEE,IAAI,CAAC;EAC9C;AACJ;AAEA,OAAO,MAAMC,2BAA2B,GAAIP,MAAoC,IAAK;EACjF,OAAO,IAAIH,qBAAqB,CAACG,MAAM,CAAC;AAC5C,CAAC","ignoreList":[]}
@@ -1,11 +1,5 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.CopyFile = void 0;
7
- var _index = require("@webiny/aws-sdk/client-s3/index.js");
8
- class CopyFile {
1
+ import { HeadObjectCommand } from "@webiny/aws-sdk/client-s3/index.js";
2
+ export class CopyFile {
9
3
  constructor(params) {
10
4
  this.createS3Client = params.createS3Client;
11
5
  this.getLambdaTrigger = params.getLambdaTrigger;
@@ -62,11 +56,11 @@ class CopyFile {
62
56
  Bucket: bucket,
63
57
  Key: key
64
58
  };
65
- const cmd = new _index.HeadObjectCommand(input);
59
+ const cmd = new HeadObjectCommand(input);
66
60
  try {
67
61
  const result = await client.send(cmd);
68
62
  return result.$metadata?.httpStatusCode === 200 && !!result.ETag;
69
- } catch (ex) {
63
+ } catch {
70
64
  /**
71
65
  * TODO What happens if this fails? To we continue with the copy or end the process?
72
66
  * Do we log the error?
@@ -76,6 +70,5 @@ class CopyFile {
76
70
  }
77
71
  }
78
72
  }
79
- exports.CopyFile = CopyFile;
80
73
 
81
74
  //# sourceMappingURL=CopyFile.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_index","require","CopyFile","constructor","params","createS3Client","getLambdaTrigger","handle","key","source","target","targetClient","region","exists","client","bucket","services","s3Id","invocationType","payload","action","input","Bucket","Key","cmd","HeadObjectCommand","result","send","$metadata","httpStatusCode","ETag","ex","exports"],"sources":["CopyFile.ts"],"sourcesContent":["import type { HeadObjectCommandInput, S3Client } from \"@webiny/aws-sdk/client-s3/index.js\";\nimport { HeadObjectCommand } from \"@webiny/aws-sdk/client-s3/index.js\";\nimport type {\n ICopyFile,\n ICopyFileHandleParams,\n ICreateS3ClientCb,\n IGetLambdaTriggerCb\n} from \"./types.js\";\nimport type { InvokeCommandOutput } from \"@webiny/aws-sdk/client-lambda/index.js\";\nimport type { ICopyFileLambdaPayload } from \"~/types.js\";\n\ninterface IExistsParams {\n client: Pick<S3Client, \"send\">;\n bucket: string;\n key: string;\n}\n\nexport interface ICopyFileParams {\n createS3Client: ICreateS3ClientCb;\n getLambdaTrigger: IGetLambdaTriggerCb<ICopyFileLambdaPayload>;\n}\n\nexport class CopyFile implements ICopyFile {\n private readonly createS3Client: ICreateS3ClientCb;\n private readonly getLambdaTrigger: IGetLambdaTriggerCb<ICopyFileLambdaPayload>;\n\n public constructor(params: ICopyFileParams) {\n this.createS3Client = params.createS3Client;\n this.getLambdaTrigger = params.getLambdaTrigger;\n }\n\n public async handle(params: ICopyFileHandleParams): Promise<InvokeCommandOutput | null> {\n const { key, source, target } = params;\n /**\n * We need to check on the target if the file already exists.\n */\n const targetClient = this.createS3Client({\n region: target.region\n });\n\n const exists = await this.exists({\n client: targetClient,\n bucket: target.services.s3Id,\n key\n });\n\n if (exists) {\n // If the file already exists, we can skip copying it.\n return null;\n }\n\n /**\n * Then we can safely trigger a Lambda function that will copy the file.\n */\n\n return await this.getLambdaTrigger().handle({\n invocationType: \"Event\",\n payload: {\n action: \"copyFile\",\n key,\n source: {\n region: source.region,\n bucket: source.services.s3Id\n },\n target: {\n region: target.region,\n bucket: target.services.s3Id\n }\n }\n });\n }\n\n private async exists(params: IExistsParams): Promise<boolean> {\n const { client, bucket, key } = params;\n const input: HeadObjectCommandInput = {\n Bucket: bucket,\n Key: key\n };\n const cmd = new HeadObjectCommand(input);\n try {\n const result = await client.send(cmd);\n return result.$metadata?.httpStatusCode === 200 && !!result.ETag;\n } catch (ex) {\n /**\n * TODO What happens if this fails? To we continue with the copy or end the process?\n * Do we log the error?\n * For now, we will assume that file does not exist.\n */\n return false;\n }\n }\n}\n"],"mappings":";;;;;;AACA,IAAAA,MAAA,GAAAC,OAAA;AAqBO,MAAMC,QAAQ,CAAsB;EAIhCC,WAAWA,CAACC,MAAuB,EAAE;IACxC,IAAI,CAACC,cAAc,GAAGD,MAAM,CAACC,cAAc;IAC3C,IAAI,CAACC,gBAAgB,GAAGF,MAAM,CAACE,gBAAgB;EACnD;EAEA,MAAaC,MAAMA,CAACH,MAA6B,EAAuC;IACpF,MAAM;MAAEI,GAAG;MAAEC,MAAM;MAAEC;IAAO,CAAC,GAAGN,MAAM;IACtC;AACR;AACA;IACQ,MAAMO,YAAY,GAAG,IAAI,CAACN,cAAc,CAAC;MACrCO,MAAM,EAAEF,MAAM,CAACE;IACnB,CAAC,CAAC;IAEF,MAAMC,MAAM,GAAG,MAAM,IAAI,CAACA,MAAM,CAAC;MAC7BC,MAAM,EAAEH,YAAY;MACpBI,MAAM,EAAEL,MAAM,CAACM,QAAQ,CAACC,IAAI;MAC5BT;IACJ,CAAC,CAAC;IAEF,IAAIK,MAAM,EAAE;MACR;MACA,OAAO,IAAI;IACf;;IAEA;AACR;AACA;;IAEQ,OAAO,MAAM,IAAI,CAACP,gBAAgB,CAAC,CAAC,CAACC,MAAM,CAAC;MACxCW,cAAc,EAAE,OAAO;MACvBC,OAAO,EAAE;QACLC,MAAM,EAAE,UAAU;QAClBZ,GAAG;QACHC,MAAM,EAAE;UACJG,MAAM,EAAEH,MAAM,CAACG,MAAM;UACrBG,MAAM,EAAEN,MAAM,CAACO,QAAQ,CAACC;QAC5B,CAAC;QACDP,MAAM,EAAE;UACJE,MAAM,EAAEF,MAAM,CAACE,MAAM;UACrBG,MAAM,EAAEL,MAAM,CAACM,QAAQ,CAACC;QAC5B;MACJ;IACJ,CAAC,CAAC;EACN;EAEA,MAAcJ,MAAMA,CAACT,MAAqB,EAAoB;IAC1D,MAAM;MAAEU,MAAM;MAAEC,MAAM;MAAEP;IAAI,CAAC,GAAGJ,MAAM;IACtC,MAAMiB,KAA6B,GAAG;MAClCC,MAAM,EAAEP,MAAM;MACdQ,GAAG,EAAEf;IACT,CAAC;IACD,MAAMgB,GAAG,GAAG,IAAIC,wBAAiB,CAACJ,KAAK,CAAC;IACxC,IAAI;MACA,MAAMK,MAAM,GAAG,MAAMZ,MAAM,CAACa,IAAI,CAACH,GAAG,CAAC;MACrC,OAAOE,MAAM,CAACE,SAAS,EAAEC,cAAc,KAAK,GAAG,IAAI,CAAC,CAACH,MAAM,CAACI,IAAI;IACpE,CAAC,CAAC,OAAOC,EAAE,EAAE;MACT;AACZ;AACA;AACA;AACA;MACY,OAAO,KAAK;IAChB;EACJ;AACJ;AAACC,OAAA,CAAA9B,QAAA,GAAAA,QAAA","ignoreList":[]}
1
+ {"version":3,"names":["HeadObjectCommand","CopyFile","constructor","params","createS3Client","getLambdaTrigger","handle","key","source","target","targetClient","region","exists","client","bucket","services","s3Id","invocationType","payload","action","input","Bucket","Key","cmd","result","send","$metadata","httpStatusCode","ETag"],"sources":["CopyFile.ts"],"sourcesContent":["import type { HeadObjectCommandInput, S3Client } from \"@webiny/aws-sdk/client-s3/index.js\";\nimport { HeadObjectCommand } from \"@webiny/aws-sdk/client-s3/index.js\";\nimport type {\n ICopyFile,\n ICopyFileHandleParams,\n ICreateS3ClientCb,\n IGetLambdaTriggerCb\n} from \"./types.js\";\nimport type { InvokeCommandOutput } from \"@webiny/aws-sdk/client-lambda/index.js\";\nimport type { ICopyFileLambdaPayload } from \"~/types.js\";\n\ninterface IExistsParams {\n client: Pick<S3Client, \"send\">;\n bucket: string;\n key: string;\n}\n\nexport interface ICopyFileParams {\n createS3Client: ICreateS3ClientCb;\n getLambdaTrigger: IGetLambdaTriggerCb<ICopyFileLambdaPayload>;\n}\n\nexport class CopyFile implements ICopyFile {\n private readonly createS3Client: ICreateS3ClientCb;\n private readonly getLambdaTrigger: IGetLambdaTriggerCb<ICopyFileLambdaPayload>;\n\n public constructor(params: ICopyFileParams) {\n this.createS3Client = params.createS3Client;\n this.getLambdaTrigger = params.getLambdaTrigger;\n }\n\n public async handle(params: ICopyFileHandleParams): Promise<InvokeCommandOutput | null> {\n const { key, source, target } = params;\n /**\n * We need to check on the target if the file already exists.\n */\n const targetClient = this.createS3Client({\n region: target.region\n });\n\n const exists = await this.exists({\n client: targetClient,\n bucket: target.services.s3Id,\n key\n });\n\n if (exists) {\n // If the file already exists, we can skip copying it.\n return null;\n }\n\n /**\n * Then we can safely trigger a Lambda function that will copy the file.\n */\n\n return await this.getLambdaTrigger().handle({\n invocationType: \"Event\",\n payload: {\n action: \"copyFile\",\n key,\n source: {\n region: source.region,\n bucket: source.services.s3Id\n },\n target: {\n region: target.region,\n bucket: target.services.s3Id\n }\n }\n });\n }\n\n private async exists(params: IExistsParams): Promise<boolean> {\n const { client, bucket, key } = params;\n const input: HeadObjectCommandInput = {\n Bucket: bucket,\n Key: key\n };\n const cmd = new HeadObjectCommand(input);\n try {\n const result = await client.send(cmd);\n return result.$metadata?.httpStatusCode === 200 && !!result.ETag;\n } catch {\n /**\n * TODO What happens if this fails? To we continue with the copy or end the process?\n * Do we log the error?\n * For now, we will assume that file does not exist.\n */\n return false;\n }\n }\n}\n"],"mappings":"AACA,SAASA,iBAAiB,QAAQ,oCAAoC;AAqBtE,OAAO,MAAMC,QAAQ,CAAsB;EAIhCC,WAAWA,CAACC,MAAuB,EAAE;IACxC,IAAI,CAACC,cAAc,GAAGD,MAAM,CAACC,cAAc;IAC3C,IAAI,CAACC,gBAAgB,GAAGF,MAAM,CAACE,gBAAgB;EACnD;EAEA,MAAaC,MAAMA,CAACH,MAA6B,EAAuC;IACpF,MAAM;MAAEI,GAAG;MAAEC,MAAM;MAAEC;IAAO,CAAC,GAAGN,MAAM;IACtC;AACR;AACA;IACQ,MAAMO,YAAY,GAAG,IAAI,CAACN,cAAc,CAAC;MACrCO,MAAM,EAAEF,MAAM,CAACE;IACnB,CAAC,CAAC;IAEF,MAAMC,MAAM,GAAG,MAAM,IAAI,CAACA,MAAM,CAAC;MAC7BC,MAAM,EAAEH,YAAY;MACpBI,MAAM,EAAEL,MAAM,CAACM,QAAQ,CAACC,IAAI;MAC5BT;IACJ,CAAC,CAAC;IAEF,IAAIK,MAAM,EAAE;MACR;MACA,OAAO,IAAI;IACf;;IAEA;AACR;AACA;;IAEQ,OAAO,MAAM,IAAI,CAACP,gBAAgB,CAAC,CAAC,CAACC,MAAM,CAAC;MACxCW,cAAc,EAAE,OAAO;MACvBC,OAAO,EAAE;QACLC,MAAM,EAAE,UAAU;QAClBZ,GAAG;QACHC,MAAM,EAAE;UACJG,MAAM,EAAEH,MAAM,CAACG,MAAM;UACrBG,MAAM,EAAEN,MAAM,CAACO,QAAQ,CAACC;QAC5B,CAAC;QACDP,MAAM,EAAE;UACJE,MAAM,EAAEF,MAAM,CAACE,MAAM;UACrBG,MAAM,EAAEL,MAAM,CAACM,QAAQ,CAACC;QAC5B;MACJ;IACJ,CAAC,CAAC;EACN;EAEA,MAAcJ,MAAMA,CAACT,MAAqB,EAAoB;IAC1D,MAAM;MAAEU,MAAM;MAAEC,MAAM;MAAEP;IAAI,CAAC,GAAGJ,MAAM;IACtC,MAAMiB,KAA6B,GAAG;MAClCC,MAAM,EAAEP,MAAM;MACdQ,GAAG,EAAEf;IACT,CAAC;IACD,MAAMgB,GAAG,GAAG,IAAIvB,iBAAiB,CAACoB,KAAK,CAAC;IACxC,IAAI;MACA,MAAMI,MAAM,GAAG,MAAMX,MAAM,CAACY,IAAI,CAACF,GAAG,CAAC;MACrC,OAAOC,MAAM,CAACE,SAAS,EAAEC,cAAc,KAAK,GAAG,IAAI,CAAC,CAACH,MAAM,CAACI,IAAI;IACpE,CAAC,CAAC,MAAM;MACJ;AACZ;AACA;AACA;AACA;MACY,OAAO,KAAK;IAChB;EACJ;AACJ","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- import type { ICreateS3ClientCb, IDeleteFile, IDeleteFileHandleParams, IGetLambdaTriggerCb } from "./types.js";
1
+ import type { ICreateS3ClientCb, IDeleteFile, IDeleteFileHandleParams, IGetLambdaTriggerCb } from "../../../resolver/recordTypes/fileManager/types.js";
2
2
  import type { InvokeCommandOutput } from "@webiny/aws-sdk/client-lambda/index.js";
3
3
  import type { IDeleteFileLambdaPayload } from "../../../types.js";
4
4
  export interface IDeleteFileParams {
@@ -1,11 +1,5 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.DeleteFile = void 0;
7
- var _index = require("@webiny/aws-sdk/client-s3/index.js");
8
- class DeleteFile {
1
+ import { HeadObjectCommand } from "@webiny/aws-sdk/client-s3/index.js";
2
+ export class DeleteFile {
9
3
  constructor(params) {
10
4
  this.createS3Client = params.createS3Client;
11
5
  this.getLambdaTrigger = params.getLambdaTrigger;
@@ -58,7 +52,7 @@ class DeleteFile {
58
52
  Bucket: bucket,
59
53
  Key: key
60
54
  };
61
- const cmd = new _index.HeadObjectCommand(input);
55
+ const cmd = new HeadObjectCommand(input);
62
56
  try {
63
57
  const result = await client.send(cmd);
64
58
  return result.$metadata?.httpStatusCode === 200;
@@ -67,6 +61,5 @@ class DeleteFile {
67
61
  }
68
62
  }
69
63
  }
70
- exports.DeleteFile = DeleteFile;
71
64
 
72
65
  //# sourceMappingURL=DeleteFile.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_index","require","DeleteFile","constructor","params","createS3Client","getLambdaTrigger","handle","key","target","targetClient","region","exists","client","bucket","services","s3Id","invocationType","payload","action","input","Bucket","Key","cmd","HeadObjectCommand","result","send","$metadata","httpStatusCode","exports"],"sources":["DeleteFile.ts"],"sourcesContent":["import type {\n ICreateS3ClientCb,\n IDeleteFile,\n IDeleteFileHandleParams,\n IGetLambdaTriggerCb\n} from \"~/resolver/recordTypes/fileManager/types.js\";\nimport type { HeadObjectCommandInput, S3Client } from \"@webiny/aws-sdk/client-s3/index.js\";\nimport { HeadObjectCommand } from \"@webiny/aws-sdk/client-s3/index.js\";\nimport type { InvokeCommandOutput } from \"@webiny/aws-sdk/client-lambda/index.js\";\nimport type { IDeleteFileLambdaPayload } from \"~/types.js\";\n\ninterface IExistsParams {\n client: Pick<S3Client, \"send\">;\n bucket: string;\n key: string;\n}\n\nexport interface IDeleteFileParams {\n createS3Client: ICreateS3ClientCb;\n getLambdaTrigger: IGetLambdaTriggerCb<IDeleteFileLambdaPayload>;\n}\n\nexport class DeleteFile implements IDeleteFile {\n private readonly createS3Client: ICreateS3ClientCb;\n private readonly getLambdaTrigger: IGetLambdaTriggerCb<IDeleteFileLambdaPayload>;\n\n public constructor(params: IDeleteFileParams) {\n this.createS3Client = params.createS3Client;\n this.getLambdaTrigger = params.getLambdaTrigger;\n }\n\n public async handle(params: IDeleteFileHandleParams): Promise<InvokeCommandOutput | null> {\n const { key, target } = params;\n\n /**\n * We need to check on the target if the file already exists.\n */\n\n const targetClient = this.createS3Client({\n region: target.region\n });\n\n const exists = await this.exists({\n client: targetClient,\n bucket: target.services.s3Id,\n key\n });\n if (!exists) {\n // If the file does not exist, we can skip the deletion.\n return null;\n }\n\n /**\n * Then we can safely trigger a Lambda function that will delete the file.\n */\n return await this.getLambdaTrigger().handle({\n invocationType: \"Event\",\n payload: {\n action: \"deleteFile\",\n key,\n target: {\n region: target.region,\n bucket: target.services.s3Id\n }\n }\n });\n }\n\n private async exists(params: IExistsParams): Promise<boolean> {\n const { client, bucket, key } = params;\n const input: HeadObjectCommandInput = {\n Bucket: bucket,\n Key: key\n };\n const cmd = new HeadObjectCommand(input);\n try {\n const result = await client.send(cmd);\n return result.$metadata?.httpStatusCode === 200;\n } catch {\n return false;\n }\n }\n}\n"],"mappings":";;;;;;AAOA,IAAAA,MAAA,GAAAC,OAAA;AAeO,MAAMC,UAAU,CAAwB;EAIpCC,WAAWA,CAACC,MAAyB,EAAE;IAC1C,IAAI,CAACC,cAAc,GAAGD,MAAM,CAACC,cAAc;IAC3C,IAAI,CAACC,gBAAgB,GAAGF,MAAM,CAACE,gBAAgB;EACnD;EAEA,MAAaC,MAAMA,CAACH,MAA+B,EAAuC;IACtF,MAAM;MAAEI,GAAG;MAAEC;IAAO,CAAC,GAAGL,MAAM;;IAE9B;AACR;AACA;;IAEQ,MAAMM,YAAY,GAAG,IAAI,CAACL,cAAc,CAAC;MACrCM,MAAM,EAAEF,MAAM,CAACE;IACnB,CAAC,CAAC;IAEF,MAAMC,MAAM,GAAG,MAAM,IAAI,CAACA,MAAM,CAAC;MAC7BC,MAAM,EAAEH,YAAY;MACpBI,MAAM,EAAEL,MAAM,CAACM,QAAQ,CAACC,IAAI;MAC5BR;IACJ,CAAC,CAAC;IACF,IAAI,CAACI,MAAM,EAAE;MACT;MACA,OAAO,IAAI;IACf;;IAEA;AACR;AACA;IACQ,OAAO,MAAM,IAAI,CAACN,gBAAgB,CAAC,CAAC,CAACC,MAAM,CAAC;MACxCU,cAAc,EAAE,OAAO;MACvBC,OAAO,EAAE;QACLC,MAAM,EAAE,YAAY;QACpBX,GAAG;QACHC,MAAM,EAAE;UACJE,MAAM,EAAEF,MAAM,CAACE,MAAM;UACrBG,MAAM,EAAEL,MAAM,CAACM,QAAQ,CAACC;QAC5B;MACJ;IACJ,CAAC,CAAC;EACN;EAEA,MAAcJ,MAAMA,CAACR,MAAqB,EAAoB;IAC1D,MAAM;MAAES,MAAM;MAAEC,MAAM;MAAEN;IAAI,CAAC,GAAGJ,MAAM;IACtC,MAAMgB,KAA6B,GAAG;MAClCC,MAAM,EAAEP,MAAM;MACdQ,GAAG,EAAEd;IACT,CAAC;IACD,MAAMe,GAAG,GAAG,IAAIC,wBAAiB,CAACJ,KAAK,CAAC;IACxC,IAAI;MACA,MAAMK,MAAM,GAAG,MAAMZ,MAAM,CAACa,IAAI,CAACH,GAAG,CAAC;MACrC,OAAOE,MAAM,CAACE,SAAS,EAAEC,cAAc,KAAK,GAAG;IACnD,CAAC,CAAC,MAAM;MACJ,OAAO,KAAK;IAChB;EACJ;AACJ;AAACC,OAAA,CAAA3B,UAAA,GAAAA,UAAA","ignoreList":[]}
1
+ {"version":3,"names":["HeadObjectCommand","DeleteFile","constructor","params","createS3Client","getLambdaTrigger","handle","key","target","targetClient","region","exists","client","bucket","services","s3Id","invocationType","payload","action","input","Bucket","Key","cmd","result","send","$metadata","httpStatusCode"],"sources":["DeleteFile.ts"],"sourcesContent":["import type {\n ICreateS3ClientCb,\n IDeleteFile,\n IDeleteFileHandleParams,\n IGetLambdaTriggerCb\n} from \"~/resolver/recordTypes/fileManager/types.js\";\nimport type { HeadObjectCommandInput, S3Client } from \"@webiny/aws-sdk/client-s3/index.js\";\nimport { HeadObjectCommand } from \"@webiny/aws-sdk/client-s3/index.js\";\nimport type { InvokeCommandOutput } from \"@webiny/aws-sdk/client-lambda/index.js\";\nimport type { IDeleteFileLambdaPayload } from \"~/types.js\";\n\ninterface IExistsParams {\n client: Pick<S3Client, \"send\">;\n bucket: string;\n key: string;\n}\n\nexport interface IDeleteFileParams {\n createS3Client: ICreateS3ClientCb;\n getLambdaTrigger: IGetLambdaTriggerCb<IDeleteFileLambdaPayload>;\n}\n\nexport class DeleteFile implements IDeleteFile {\n private readonly createS3Client: ICreateS3ClientCb;\n private readonly getLambdaTrigger: IGetLambdaTriggerCb<IDeleteFileLambdaPayload>;\n\n public constructor(params: IDeleteFileParams) {\n this.createS3Client = params.createS3Client;\n this.getLambdaTrigger = params.getLambdaTrigger;\n }\n\n public async handle(params: IDeleteFileHandleParams): Promise<InvokeCommandOutput | null> {\n const { key, target } = params;\n\n /**\n * We need to check on the target if the file already exists.\n */\n\n const targetClient = this.createS3Client({\n region: target.region\n });\n\n const exists = await this.exists({\n client: targetClient,\n bucket: target.services.s3Id,\n key\n });\n if (!exists) {\n // If the file does not exist, we can skip the deletion.\n return null;\n }\n\n /**\n * Then we can safely trigger a Lambda function that will delete the file.\n */\n return await this.getLambdaTrigger().handle({\n invocationType: \"Event\",\n payload: {\n action: \"deleteFile\",\n key,\n target: {\n region: target.region,\n bucket: target.services.s3Id\n }\n }\n });\n }\n\n private async exists(params: IExistsParams): Promise<boolean> {\n const { client, bucket, key } = params;\n const input: HeadObjectCommandInput = {\n Bucket: bucket,\n Key: key\n };\n const cmd = new HeadObjectCommand(input);\n try {\n const result = await client.send(cmd);\n return result.$metadata?.httpStatusCode === 200;\n } catch {\n return false;\n }\n }\n}\n"],"mappings":"AAOA,SAASA,iBAAiB,QAAQ,oCAAoC;AAetE,OAAO,MAAMC,UAAU,CAAwB;EAIpCC,WAAWA,CAACC,MAAyB,EAAE;IAC1C,IAAI,CAACC,cAAc,GAAGD,MAAM,CAACC,cAAc;IAC3C,IAAI,CAACC,gBAAgB,GAAGF,MAAM,CAACE,gBAAgB;EACnD;EAEA,MAAaC,MAAMA,CAACH,MAA+B,EAAuC;IACtF,MAAM;MAAEI,GAAG;MAAEC;IAAO,CAAC,GAAGL,MAAM;;IAE9B;AACR;AACA;;IAEQ,MAAMM,YAAY,GAAG,IAAI,CAACL,cAAc,CAAC;MACrCM,MAAM,EAAEF,MAAM,CAACE;IACnB,CAAC,CAAC;IAEF,MAAMC,MAAM,GAAG,MAAM,IAAI,CAACA,MAAM,CAAC;MAC7BC,MAAM,EAAEH,YAAY;MACpBI,MAAM,EAAEL,MAAM,CAACM,QAAQ,CAACC,IAAI;MAC5BR;IACJ,CAAC,CAAC;IACF,IAAI,CAACI,MAAM,EAAE;MACT;MACA,OAAO,IAAI;IACf;;IAEA;AACR;AACA;IACQ,OAAO,MAAM,IAAI,CAACN,gBAAgB,CAAC,CAAC,CAACC,MAAM,CAAC;MACxCU,cAAc,EAAE,OAAO;MACvBC,OAAO,EAAE;QACLC,MAAM,EAAE,YAAY;QACpBX,GAAG;QACHC,MAAM,EAAE;UACJE,MAAM,EAAEF,MAAM,CAACE,MAAM;UACrBG,MAAM,EAAEL,MAAM,CAACM,QAAQ,CAACC;QAC5B;MACJ;IACJ,CAAC,CAAC;EACN;EAEA,MAAcJ,MAAMA,CAACR,MAAqB,EAAoB;IAC1D,MAAM;MAAES,MAAM;MAAEC,MAAM;MAAEN;IAAI,CAAC,GAAGJ,MAAM;IACtC,MAAMgB,KAA6B,GAAG;MAClCC,MAAM,EAAEP,MAAM;MACdQ,GAAG,EAAEd;IACT,CAAC;IACD,MAAMe,GAAG,GAAG,IAAItB,iBAAiB,CAACmB,KAAK,CAAC;IACxC,IAAI;MACA,MAAMI,MAAM,GAAG,MAAMX,MAAM,CAACY,IAAI,CAACF,GAAG,CAAC;MACrC,OAAOC,MAAM,CAACE,SAAS,EAAEC,cAAc,KAAK,GAAG;IACnD,CAAC,CAAC,MAAM;MACJ,OAAO,KAAK;IAChB;EACJ;AACJ","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- import type { ICopyFile, IDeleteFile } from "./types.js";
1
+ import type { ICopyFile, IDeleteFile } from "../../../resolver/recordTypes/fileManager/types.js";
2
2
  export interface ICreateFileManagerPluginsParams {
3
3
  copyFile: ICopyFile;
4
4
  deleteFile: IDeleteFile;
@@ -1,14 +1,7 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.createFileManagerPlugins = void 0;
7
- var _fileManagerOnPut = require("./fileManagerOnPut.js");
8
- var _fileManagerOnDelete = require("./fileManagerOnDelete.js");
9
- const createFileManagerPlugins = params => {
10
- return [(0, _fileManagerOnPut.createFileManagerOnPutPlugin)(params), (0, _fileManagerOnDelete.createFileManagerOnDeletePlugin)(params)];
1
+ import { createFileManagerOnPutPlugin } from "./fileManagerOnPut.js";
2
+ import { createFileManagerOnDeletePlugin } from "./fileManagerOnDelete.js";
3
+ export const createFileManagerPlugins = params => {
4
+ return [createFileManagerOnPutPlugin(params), createFileManagerOnDeletePlugin(params)];
11
5
  };
12
- exports.createFileManagerPlugins = createFileManagerPlugins;
13
6
 
14
7
  //# sourceMappingURL=fileManager.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_fileManagerOnPut","require","_fileManagerOnDelete","createFileManagerPlugins","params","createFileManagerOnPutPlugin","createFileManagerOnDeletePlugin","exports"],"sources":["fileManager.ts"],"sourcesContent":["import { createFileManagerOnPutPlugin } from \"./fileManagerOnPut.js\";\nimport { createFileManagerOnDeletePlugin } from \"./fileManagerOnDelete.js\";\nimport type { ICopyFile, IDeleteFile } from \"~/resolver/recordTypes/fileManager/types.js\";\n\nexport interface ICreateFileManagerPluginsParams {\n copyFile: ICopyFile;\n deleteFile: IDeleteFile;\n}\n\nexport const createFileManagerPlugins = (params: ICreateFileManagerPluginsParams) => {\n return [createFileManagerOnPutPlugin(params), createFileManagerOnDeletePlugin(params)];\n};\n"],"mappings":";;;;;;AAAA,IAAAA,iBAAA,GAAAC,OAAA;AACA,IAAAC,oBAAA,GAAAD,OAAA;AAQO,MAAME,wBAAwB,GAAIC,MAAuC,IAAK;EACjF,OAAO,CAAC,IAAAC,8CAA4B,EAACD,MAAM,CAAC,EAAE,IAAAE,oDAA+B,EAACF,MAAM,CAAC,CAAC;AAC1F,CAAC;AAACG,OAAA,CAAAJ,wBAAA,GAAAA,wBAAA","ignoreList":[]}
1
+ {"version":3,"names":["createFileManagerOnPutPlugin","createFileManagerOnDeletePlugin","createFileManagerPlugins","params"],"sources":["fileManager.ts"],"sourcesContent":["import { createFileManagerOnPutPlugin } from \"./fileManagerOnPut.js\";\nimport { createFileManagerOnDeletePlugin } from \"./fileManagerOnDelete.js\";\nimport type { ICopyFile, IDeleteFile } from \"~/resolver/recordTypes/fileManager/types.js\";\n\nexport interface ICreateFileManagerPluginsParams {\n copyFile: ICopyFile;\n deleteFile: IDeleteFile;\n}\n\nexport const createFileManagerPlugins = (params: ICreateFileManagerPluginsParams) => {\n return [createFileManagerOnPutPlugin(params), createFileManagerOnDeletePlugin(params)];\n};\n"],"mappings":"AAAA,SAASA,4BAA4B;AACrC,SAASC,+BAA+B;AAQxC,OAAO,MAAMC,wBAAwB,GAAIC,MAAuC,IAAK;EACjF,OAAO,CAACH,4BAA4B,CAACG,MAAM,CAAC,EAAEF,+BAA+B,CAACE,MAAM,CAAC,CAAC;AAC1F,CAAC","ignoreList":[]}
@@ -2,4 +2,4 @@ import type { IDeleteFile } from "./types.js";
2
2
  export interface ICreateFileManagerOnDeletePluginParams {
3
3
  deleteFile: IDeleteFile;
4
4
  }
5
- export declare const createFileManagerOnDeletePlugin: (params: ICreateFileManagerOnDeletePluginParams) => import("../../plugins/StorerAfterEachPlugin.js").StorerAfterEachPlugin;
5
+ export declare const createFileManagerOnDeletePlugin: (params: ICreateFileManagerOnDeletePluginParams) => import("~/resolver/plugins/StorerAfterEachPlugin.js").StorerAfterEachPlugin;
@@ -1,17 +1,11 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.createFileManagerOnDeletePlugin = void 0;
7
- var _StorerAfterEachPlugin = require("../../plugins/StorerAfterEachPlugin.js");
8
- var _shouldBeHandled = require("./shouldBeHandled.js");
9
- var _utils = require("@webiny/utils");
10
- const createFileManagerOnDeletePlugin = params => {
1
+ import { createStorerAfterEachPluginWithName } from "../../plugins/StorerAfterEachPlugin.js";
2
+ import { shouldBeHandled } from "./shouldBeHandled.js";
3
+ import { convertException } from "@webiny/utils";
4
+ export const createFileManagerOnDeletePlugin = params => {
11
5
  const {
12
6
  deleteFile
13
7
  } = params;
14
- return (0, _StorerAfterEachPlugin.createStorerAfterEachPluginWithName)("fileManager.onDelete", {
8
+ return createStorerAfterEachPluginWithName("fileManager.onDelete", {
15
9
  canHandle: params => {
16
10
  const {
17
11
  command
@@ -19,7 +13,7 @@ const createFileManagerOnDeletePlugin = params => {
19
13
  if (command !== "delete") {
20
14
  return false;
21
15
  }
22
- return (0, _shouldBeHandled.shouldBeHandled)(params);
16
+ return shouldBeHandled(params);
23
17
  },
24
18
  handle: async params => {
25
19
  const {
@@ -38,11 +32,10 @@ const createFileManagerOnDeletePlugin = params => {
38
32
  });
39
33
  } catch (ex) {
40
34
  console.error("Error while handling file manager onDelete plugin.");
41
- console.log((0, _utils.convertException)(ex));
35
+ console.log(convertException(ex));
42
36
  }
43
37
  }
44
38
  });
45
39
  };
46
- exports.createFileManagerOnDeletePlugin = createFileManagerOnDeletePlugin;
47
40
 
48
41
  //# sourceMappingURL=fileManagerOnDelete.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_StorerAfterEachPlugin","require","_shouldBeHandled","_utils","createFileManagerOnDeletePlugin","params","deleteFile","createStorerAfterEachPluginWithName","canHandle","command","shouldBeHandled","handle","item","key","values","target","source","ex","console","error","log","convertException","exports"],"sources":["fileManagerOnDelete.ts"],"sourcesContent":["import { createStorerAfterEachPluginWithName } from \"~/resolver/plugins/StorerAfterEachPlugin.js\";\nimport { shouldBeHandled } from \"./shouldBeHandled.js\";\nimport { convertException } from \"@webiny/utils\";\nimport type { IDeleteFile } from \"./types.js\";\n\nexport interface ICreateFileManagerOnDeletePluginParams {\n deleteFile: IDeleteFile;\n}\n\nexport const createFileManagerOnDeletePlugin = (params: ICreateFileManagerOnDeletePluginParams) => {\n const { deleteFile } = params;\n\n return createStorerAfterEachPluginWithName(\"fileManager.onDelete\", {\n canHandle: params => {\n const { command } = params;\n if (command !== \"delete\") {\n return false;\n }\n return shouldBeHandled(params);\n },\n handle: async params => {\n const { item } = params;\n /**\n * We are 100% positive that the key exists here because canHandle would not allow for handle to be called.\n */\n // @ts-expect-error\n const key = (item.values[\"text@key\"] || item.values[\"key\"]) as string;\n try {\n await deleteFile.handle({\n target: params.target,\n source: params.source,\n key\n });\n } catch (ex) {\n console.error(\"Error while handling file manager onDelete plugin.\");\n console.log(convertException(ex));\n }\n }\n });\n};\n"],"mappings":";;;;;;AAAA,IAAAA,sBAAA,GAAAC,OAAA;AACA,IAAAC,gBAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AAOO,MAAMG,+BAA+B,GAAIC,MAA8C,IAAK;EAC/F,MAAM;IAAEC;EAAW,CAAC,GAAGD,MAAM;EAE7B,OAAO,IAAAE,0DAAmC,EAAC,sBAAsB,EAAE;IAC/DC,SAAS,EAAEH,MAAM,IAAI;MACjB,MAAM;QAAEI;MAAQ,CAAC,GAAGJ,MAAM;MAC1B,IAAII,OAAO,KAAK,QAAQ,EAAE;QACtB,OAAO,KAAK;MAChB;MACA,OAAO,IAAAC,gCAAe,EAACL,MAAM,CAAC;IAClC,CAAC;IACDM,MAAM,EAAE,MAAMN,MAAM,IAAI;MACpB,MAAM;QAAEO;MAAK,CAAC,GAAGP,MAAM;MACvB;AACZ;AACA;MACY;MACA,MAAMQ,GAAG,GAAID,IAAI,CAACE,MAAM,CAAC,UAAU,CAAC,IAAIF,IAAI,CAACE,MAAM,CAAC,KAAK,CAAY;MACrE,IAAI;QACA,MAAMR,UAAU,CAACK,MAAM,CAAC;UACpBI,MAAM,EAAEV,MAAM,CAACU,MAAM;UACrBC,MAAM,EAAEX,MAAM,CAACW,MAAM;UACrBH;QACJ,CAAC,CAAC;MACN,CAAC,CAAC,OAAOI,EAAE,EAAE;QACTC,OAAO,CAACC,KAAK,CAAC,oDAAoD,CAAC;QACnED,OAAO,CAACE,GAAG,CAAC,IAAAC,uBAAgB,EAACJ,EAAE,CAAC,CAAC;MACrC;IACJ;EACJ,CAAC,CAAC;AACN,CAAC;AAACK,OAAA,CAAAlB,+BAAA,GAAAA,+BAAA","ignoreList":[]}
1
+ {"version":3,"names":["createStorerAfterEachPluginWithName","shouldBeHandled","convertException","createFileManagerOnDeletePlugin","params","deleteFile","canHandle","command","handle","item","key","values","target","source","ex","console","error","log"],"sources":["fileManagerOnDelete.ts"],"sourcesContent":["import { createStorerAfterEachPluginWithName } from \"~/resolver/plugins/StorerAfterEachPlugin.js\";\nimport { shouldBeHandled } from \"./shouldBeHandled.js\";\nimport { convertException } from \"@webiny/utils\";\nimport type { IDeleteFile } from \"./types.js\";\n\nexport interface ICreateFileManagerOnDeletePluginParams {\n deleteFile: IDeleteFile;\n}\n\nexport const createFileManagerOnDeletePlugin = (params: ICreateFileManagerOnDeletePluginParams) => {\n const { deleteFile } = params;\n\n return createStorerAfterEachPluginWithName(\"fileManager.onDelete\", {\n canHandle: params => {\n const { command } = params;\n if (command !== \"delete\") {\n return false;\n }\n return shouldBeHandled(params);\n },\n handle: async params => {\n const { item } = params;\n /**\n * We are 100% positive that the key exists here because canHandle would not allow for handle to be called.\n */\n // @ts-expect-error\n const key = (item.values[\"text@key\"] || item.values[\"key\"]) as string;\n try {\n await deleteFile.handle({\n target: params.target,\n source: params.source,\n key\n });\n } catch (ex) {\n console.error(\"Error while handling file manager onDelete plugin.\");\n console.log(convertException(ex));\n }\n }\n });\n};\n"],"mappings":"AAAA,SAASA,mCAAmC;AAC5C,SAASC,eAAe;AACxB,SAASC,gBAAgB,QAAQ,eAAe;AAOhD,OAAO,MAAMC,+BAA+B,GAAIC,MAA8C,IAAK;EAC/F,MAAM;IAAEC;EAAW,CAAC,GAAGD,MAAM;EAE7B,OAAOJ,mCAAmC,CAAC,sBAAsB,EAAE;IAC/DM,SAAS,EAAEF,MAAM,IAAI;MACjB,MAAM;QAAEG;MAAQ,CAAC,GAAGH,MAAM;MAC1B,IAAIG,OAAO,KAAK,QAAQ,EAAE;QACtB,OAAO,KAAK;MAChB;MACA,OAAON,eAAe,CAACG,MAAM,CAAC;IAClC,CAAC;IACDI,MAAM,EAAE,MAAMJ,MAAM,IAAI;MACpB,MAAM;QAAEK;MAAK,CAAC,GAAGL,MAAM;MACvB;AACZ;AACA;MACY;MACA,MAAMM,GAAG,GAAID,IAAI,CAACE,MAAM,CAAC,UAAU,CAAC,IAAIF,IAAI,CAACE,MAAM,CAAC,KAAK,CAAY;MACrE,IAAI;QACA,MAAMN,UAAU,CAACG,MAAM,CAAC;UACpBI,MAAM,EAAER,MAAM,CAACQ,MAAM;UACrBC,MAAM,EAAET,MAAM,CAACS,MAAM;UACrBH;QACJ,CAAC,CAAC;MACN,CAAC,CAAC,OAAOI,EAAE,EAAE;QACTC,OAAO,CAACC,KAAK,CAAC,oDAAoD,CAAC;QACnED,OAAO,CAACE,GAAG,CAACf,gBAAgB,CAACY,EAAE,CAAC,CAAC;MACrC;IACJ;EACJ,CAAC,CAAC;AACN,CAAC","ignoreList":[]}
@@ -2,4 +2,4 @@ import type { ICopyFile } from "./types.js";
2
2
  export interface ICreateFileManagerOnPutPluginParams {
3
3
  copyFile: ICopyFile;
4
4
  }
5
- export declare const createFileManagerOnPutPlugin: (params: ICreateFileManagerOnPutPluginParams) => import("../../plugins/StorerAfterEachPlugin.js").StorerAfterEachPlugin;
5
+ export declare const createFileManagerOnPutPlugin: (params: ICreateFileManagerOnPutPluginParams) => import("~/resolver/plugins/StorerAfterEachPlugin.js").StorerAfterEachPlugin;