@webiny/api-sync-system 6.3.0 → 6.4.0-beta.1

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 (239) hide show
  1. package/constants.js +2 -1
  2. package/constants.js.map +1 -1
  3. package/index.js +0 -2
  4. package/package.json +14 -14
  5. package/resolver/app/RecordHandler.js +83 -105
  6. package/resolver/app/RecordHandler.js.map +1 -1
  7. package/resolver/app/RecordsValidation.js +11 -14
  8. package/resolver/app/RecordsValidation.js.map +1 -1
  9. package/resolver/app/ResolverApplication.js +24 -31
  10. package/resolver/app/ResolverApplication.js.map +1 -1
  11. package/resolver/app/abstractions/RecordHandler.js +0 -3
  12. package/resolver/app/abstractions/RecordsValidation.js +0 -3
  13. package/resolver/app/abstractions/ResolverApplication.js +0 -3
  14. package/resolver/app/abstractions/ResolverRecord.js +0 -3
  15. package/resolver/app/bundler/BaseBundle.js +17 -16
  16. package/resolver/app/bundler/BaseBundle.js.map +1 -1
  17. package/resolver/app/bundler/Bundler.js +13 -18
  18. package/resolver/app/bundler/Bundler.js.map +1 -1
  19. package/resolver/app/bundler/Bundles.js +21 -26
  20. package/resolver/app/bundler/Bundles.js.map +1 -1
  21. package/resolver/app/bundler/CommandBundle.js +7 -16
  22. package/resolver/app/bundler/CommandBundle.js.map +1 -1
  23. package/resolver/app/bundler/TableBundle.js +6 -13
  24. package/resolver/app/bundler/TableBundle.js.map +1 -1
  25. package/resolver/app/bundler/types.js +0 -3
  26. package/resolver/app/commandHandler/DeleteCommandHandler.js +22 -29
  27. package/resolver/app/commandHandler/DeleteCommandHandler.js.map +1 -1
  28. package/resolver/app/commandHandler/PutCommandHandler.js +16 -22
  29. package/resolver/app/commandHandler/PutCommandHandler.js.map +1 -1
  30. package/resolver/app/commandHandler/delete.js +11 -12
  31. package/resolver/app/commandHandler/delete.js.map +1 -1
  32. package/resolver/app/commandHandler/put.js +11 -12
  33. package/resolver/app/commandHandler/put.js.map +1 -1
  34. package/resolver/app/data/SourceDataContainer.js +28 -30
  35. package/resolver/app/data/SourceDataContainer.js.map +1 -1
  36. package/resolver/app/data/types.js +0 -3
  37. package/resolver/app/fetcher/Fetcher.js +84 -109
  38. package/resolver/app/fetcher/Fetcher.js.map +1 -1
  39. package/resolver/app/fetcher/types.js +0 -3
  40. package/resolver/app/ingestor/Ingestor.js +27 -32
  41. package/resolver/app/ingestor/Ingestor.js.map +1 -1
  42. package/resolver/app/ingestor/IngestorResult.js +28 -32
  43. package/resolver/app/ingestor/IngestorResult.js.map +1 -1
  44. package/resolver/app/ingestor/types.js +0 -3
  45. package/resolver/app/storer/Storer.js +71 -85
  46. package/resolver/app/storer/Storer.js.map +1 -1
  47. package/resolver/app/storer/types.js +0 -3
  48. package/resolver/app/transform/TransformHandler.js +45 -56
  49. package/resolver/app/transform/TransformHandler.js.map +1 -1
  50. package/resolver/app/transform/middleware.js +13 -20
  51. package/resolver/app/transform/middleware.js.map +1 -1
  52. package/resolver/app/utils/Retry.js +21 -24
  53. package/resolver/app/utils/Retry.js.map +1 -1
  54. package/resolver/app/utils/sleep.js +4 -5
  55. package/resolver/app/utils/sleep.js.map +1 -1
  56. package/resolver/app/validation/body.js +26 -31
  57. package/resolver/app/validation/body.js.map +1 -1
  58. package/resolver/app/validation/createJsonTransform.js +12 -13
  59. package/resolver/app/validation/createJsonTransform.js.map +1 -1
  60. package/resolver/app/validation/detail.js +30 -35
  61. package/resolver/app/validation/detail.js.map +1 -1
  62. package/resolver/app/validation/event.js +17 -18
  63. package/resolver/app/validation/event.js.map +1 -1
  64. package/resolver/app/validation/numericString.js +8 -11
  65. package/resolver/app/validation/numericString.js.map +1 -1
  66. package/resolver/app/validation/system.js +8 -9
  67. package/resolver/app/validation/system.js.map +1 -1
  68. package/resolver/createEventHandlerPlugin.js +70 -99
  69. package/resolver/createEventHandlerPlugin.js.map +1 -1
  70. package/resolver/createResolverHandler.js +49 -57
  71. package/resolver/createResolverHandler.js.map +1 -1
  72. package/resolver/deployment/Deployment.js +28 -31
  73. package/resolver/deployment/Deployment.js.map +1 -1
  74. package/resolver/deployment/Deployments.js +20 -23
  75. package/resolver/deployment/Deployments.js.map +1 -1
  76. package/resolver/deployment/DeploymentsFetcher.js +75 -84
  77. package/resolver/deployment/DeploymentsFetcher.js.map +1 -1
  78. package/resolver/deployment/types.js +0 -3
  79. package/resolver/lambda/LambdaTrigger.js +24 -26
  80. package/resolver/lambda/LambdaTrigger.js.map +1 -1
  81. package/resolver/plugins/CommandHandlerPlugin.js +16 -15
  82. package/resolver/plugins/CommandHandlerPlugin.js.map +1 -1
  83. package/resolver/plugins/StorerAfterEachPlugin.js +20 -19
  84. package/resolver/plugins/StorerAfterEachPlugin.js.map +1 -1
  85. package/resolver/plugins/TransformRecordPlugin.js +19 -18
  86. package/resolver/plugins/TransformRecordPlugin.js.map +1 -1
  87. package/resolver/recordTypes/fileManager/CopyFile.js +44 -67
  88. package/resolver/recordTypes/fileManager/CopyFile.js.map +1 -1
  89. package/resolver/recordTypes/fileManager/DeleteFile.js +40 -58
  90. package/resolver/recordTypes/fileManager/DeleteFile.js.map +1 -1
  91. package/resolver/recordTypes/fileManager/fileManager.js +5 -3
  92. package/resolver/recordTypes/fileManager/fileManager.js.map +1 -1
  93. package/resolver/recordTypes/fileManager/fileManagerOnDelete.js +24 -35
  94. package/resolver/recordTypes/fileManager/fileManagerOnDelete.js.map +1 -1
  95. package/resolver/recordTypes/fileManager/fileManagerOnPut.js +24 -35
  96. package/resolver/recordTypes/fileManager/fileManagerOnPut.js.map +1 -1
  97. package/resolver/recordTypes/fileManager/shouldBeHandled.js +10 -27
  98. package/resolver/recordTypes/fileManager/shouldBeHandled.js.map +1 -1
  99. package/resolver/recordTypes/fileManager/types.js +0 -3
  100. package/resolver/recordTypes/users/CopyUser.js +44 -54
  101. package/resolver/recordTypes/users/CopyUser.js.map +1 -1
  102. package/resolver/recordTypes/users/DeleteUser.js +40 -51
  103. package/resolver/recordTypes/users/DeleteUser.js.map +1 -1
  104. package/resolver/recordTypes/users/shouldBeHandled.js +10 -26
  105. package/resolver/recordTypes/users/shouldBeHandled.js.map +1 -1
  106. package/resolver/recordTypes/users/types.js +0 -3
  107. package/resolver/recordTypes/users/users.js +5 -3
  108. package/resolver/recordTypes/users/users.js.map +1 -1
  109. package/resolver/recordTypes/users/usersOnDelete.js +23 -34
  110. package/resolver/recordTypes/users/usersOnDelete.js.map +1 -1
  111. package/resolver/recordTypes/users/usersOnPut.js +24 -35
  112. package/resolver/recordTypes/users/usersOnPut.js.map +1 -1
  113. package/sync/FilterOutRecord.js +9 -17
  114. package/sync/FilterOutRecord.js.map +1 -1
  115. package/sync/attachToDynamoDbDocument.js +46 -65
  116. package/sync/attachToDynamoDbDocument.js.map +1 -1
  117. package/sync/createHandler.js +31 -40
  118. package/sync/createHandler.js.map +1 -1
  119. package/sync/createSendDataToEventBridgeOnRequestEnd.js +32 -37
  120. package/sync/createSendDataToEventBridgeOnRequestEnd.js.map +1 -1
  121. package/sync/createSyncSystem.js +24 -26
  122. package/sync/createSyncSystem.js.map +1 -1
  123. package/sync/filter/createDefaultFilterOutRecordPlugins.js +37 -76
  124. package/sync/filter/createDefaultFilterOutRecordPlugins.js.map +1 -1
  125. package/sync/handler/Handler.js +64 -76
  126. package/sync/handler/Handler.js.map +1 -1
  127. package/sync/handler/HandlerConverter.js +21 -29
  128. package/sync/handler/HandlerConverter.js.map +1 -1
  129. package/sync/handler/converter/BatchGetCommandConverter.js +12 -11
  130. package/sync/handler/converter/BatchGetCommandConverter.js.map +1 -1
  131. package/sync/handler/converter/BatchWriteCommandConverter.js +12 -11
  132. package/sync/handler/converter/BatchWriteCommandConverter.js.map +1 -1
  133. package/sync/handler/converter/DeleteCommandConverter.js +12 -11
  134. package/sync/handler/converter/DeleteCommandConverter.js.map +1 -1
  135. package/sync/handler/converter/GetCommandConverter.js +12 -11
  136. package/sync/handler/converter/GetCommandConverter.js.map +1 -1
  137. package/sync/handler/converter/PutCommandConverter.js +12 -11
  138. package/sync/handler/converter/PutCommandConverter.js.map +1 -1
  139. package/sync/handler/converter/QueryCommandConverter.js +12 -11
  140. package/sync/handler/converter/QueryCommandConverter.js.map +1 -1
  141. package/sync/handler/converter/ScanCommandConverter.js +12 -11
  142. package/sync/handler/converter/ScanCommandConverter.js.map +1 -1
  143. package/sync/handler/converter/UpdateCommandConverter.js +12 -11
  144. package/sync/handler/converter/UpdateCommandConverter.js.map +1 -1
  145. package/sync/handler/converter/commands/BatchWriteCommandValue.js +34 -37
  146. package/sync/handler/converter/commands/BatchWriteCommandValue.js.map +1 -1
  147. package/sync/handler/converter/commands/DeleteCommandValue.js +19 -16
  148. package/sync/handler/converter/commands/DeleteCommandValue.js.map +1 -1
  149. package/sync/handler/converter/commands/NullCommandValue.js +8 -8
  150. package/sync/handler/converter/commands/NullCommandValue.js.map +1 -1
  151. package/sync/handler/converter/commands/PutCommandValue.js +19 -16
  152. package/sync/handler/converter/commands/PutCommandValue.js.map +1 -1
  153. package/sync/handler/converter/commands/UpdateCommandValue.js +19 -16
  154. package/sync/handler/converter/commands/UpdateCommandValue.js.map +1 -1
  155. package/sync/handler/types.js +0 -3
  156. package/sync/plugins/FilterOutRecordPlugin.js +17 -19
  157. package/sync/plugins/FilterOutRecordPlugin.js.map +1 -1
  158. package/sync/requestPlugin.js +33 -48
  159. package/sync/requestPlugin.js.map +1 -1
  160. package/sync/types.js +0 -3
  161. package/sync/utils/getTableType.js +10 -9
  162. package/sync/utils/getTableType.js.map +1 -1
  163. package/sync/utils/manifest.js +28 -35
  164. package/sync/utils/manifest.js.map +1 -1
  165. package/sync/utils/validateSystemInput.js +21 -29
  166. package/sync/utils/validateSystemInput.js.map +1 -1
  167. package/types.js +6 -5
  168. package/types.js.map +1 -1
  169. package/utils/createSystemName.js +5 -3
  170. package/utils/createSystemName.js.map +1 -1
  171. package/worker/actions/copyFile/CopyFile.js +183 -258
  172. package/worker/actions/copyFile/CopyFile.js.map +1 -1
  173. package/worker/actions/copyFile/copyFileAction.js +26 -34
  174. package/worker/actions/copyFile/copyFileAction.js.map +1 -1
  175. package/worker/actions/copyFile/copyFileSchema.js +13 -14
  176. package/worker/actions/copyFile/copyFileSchema.js.map +1 -1
  177. package/worker/actions/copyFile/types.js +0 -3
  178. package/worker/actions/createUser/CreateUser.js +51 -74
  179. package/worker/actions/createUser/CreateUser.js.map +1 -1
  180. package/worker/actions/createUser/createUserAction.js +24 -28
  181. package/worker/actions/createUser/createUserAction.js.map +1 -1
  182. package/worker/actions/createUser/createUserSchema.js +13 -14
  183. package/worker/actions/createUser/createUserSchema.js.map +1 -1
  184. package/worker/actions/createUser/types.js +0 -3
  185. package/worker/actions/deleteFile/DeleteFile.js +52 -67
  186. package/worker/actions/deleteFile/DeleteFile.js.map +1 -1
  187. package/worker/actions/deleteFile/deleteFileAction.js +21 -29
  188. package/worker/actions/deleteFile/deleteFileAction.js.map +1 -1
  189. package/worker/actions/deleteFile/deleteFileSchema.js +13 -14
  190. package/worker/actions/deleteFile/deleteFileSchema.js.map +1 -1
  191. package/worker/actions/deleteFile/types.js +0 -3
  192. package/worker/actions/deleteUser/DeleteUser.js +38 -52
  193. package/worker/actions/deleteUser/DeleteUser.js.map +1 -1
  194. package/worker/actions/deleteUser/deleteUserAction.js +22 -26
  195. package/worker/actions/deleteUser/deleteUserAction.js.map +1 -1
  196. package/worker/actions/deleteUser/deleteUserSchema.js +12 -13
  197. package/worker/actions/deleteUser/deleteUserSchema.js.map +1 -1
  198. package/worker/actions/deleteUser/types.js +0 -3
  199. package/worker/actions/logValidationError.js +5 -6
  200. package/worker/actions/logValidationError.js.map +1 -1
  201. package/worker/actions/removeCognitoUserAttributes.js +9 -15
  202. package/worker/actions/removeCognitoUserAttributes.js.map +1 -1
  203. package/worker/actions/updateUser/UpdateUser.js +48 -65
  204. package/worker/actions/updateUser/UpdateUser.js.map +1 -1
  205. package/worker/actions/updateUser/types.js +0 -3
  206. package/worker/actions/updateUser/updateUserAction.js +24 -28
  207. package/worker/actions/updateUser/updateUserAction.js.map +1 -1
  208. package/worker/actions/updateUser/updateUserSchema.js +13 -14
  209. package/worker/actions/updateUser/updateUserSchema.js.map +1 -1
  210. package/worker/createWorkerHandler.js +24 -30
  211. package/worker/createWorkerHandler.js.map +1 -1
  212. package/worker/handler/WorkerActionHandler.js +19 -21
  213. package/worker/handler/WorkerActionHandler.js.map +1 -1
  214. package/worker/handler/eventHandler.js +14 -16
  215. package/worker/handler/eventHandler.js.map +1 -1
  216. package/worker/plugins/WorkerActionPlugin.js +17 -16
  217. package/worker/plugins/WorkerActionPlugin.js.map +1 -1
  218. package/worker/types.js +0 -3
  219. package/index.js.map +0 -1
  220. package/resolver/app/abstractions/RecordHandler.js.map +0 -1
  221. package/resolver/app/abstractions/RecordsValidation.js.map +0 -1
  222. package/resolver/app/abstractions/ResolverApplication.js.map +0 -1
  223. package/resolver/app/abstractions/ResolverRecord.js.map +0 -1
  224. package/resolver/app/bundler/types.js.map +0 -1
  225. package/resolver/app/data/types.js.map +0 -1
  226. package/resolver/app/fetcher/types.js.map +0 -1
  227. package/resolver/app/ingestor/types.js.map +0 -1
  228. package/resolver/app/storer/types.js.map +0 -1
  229. package/resolver/deployment/types.js.map +0 -1
  230. package/resolver/recordTypes/fileManager/types.js.map +0 -1
  231. package/resolver/recordTypes/users/types.js.map +0 -1
  232. package/sync/handler/types.js.map +0 -1
  233. package/sync/types.js.map +0 -1
  234. package/worker/actions/copyFile/types.js.map +0 -1
  235. package/worker/actions/createUser/types.js.map +0 -1
  236. package/worker/actions/deleteFile/types.js.map +0 -1
  237. package/worker/actions/deleteUser/types.js.map +0 -1
  238. package/worker/actions/updateUser/types.js.map +0 -1
  239. package/worker/types.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"names":["PutEventsCommand","convertException","generateAlphaNumericId","Handler","id","commands","constructor","params","getEventBridgeClient","system","converter","eventBus","filterOutRecord","add","input","cmd","convert","push","flush","items","createEventBusEvent","length","detail","source","Entries","DetailType","Detail","JSON","stringify","Source","name","EventBusName","command","eventBridgeClient","send","ex","console","log","error","message","event","Array","from","everything","reduce","commandItems","getItems","item","filterOut","tableName","tableType","PK","SK","createSyncHandler"],"sources":["Handler.ts"],"sourcesContent":["import type {\n ICommandValue,\n ICommandValueItem,\n ICommandValueItemExtended,\n IDynamoDbCommand,\n IHandler,\n IHandlerConverter,\n ISystem\n} from \"../types.js\";\nimport type {\n EventBridgeClient,\n PutEventsCommandInput,\n PutEventsCommandOutput\n} from \"@webiny/aws-sdk/client-eventbridge/index.js\";\nimport { PutEventsCommand } from \"@webiny/aws-sdk/client-eventbridge/index.js\";\nimport { convertException } from \"@webiny/utils\";\nimport { generateAlphaNumericId } from \"@webiny/utils/generateId.js\";\nimport type { IDetail } from \"~/sync/handler/types.js\";\nimport type { NonEmptyArray } from \"@webiny/api/types.js\";\nimport type { FilterOutRecord } from \"~/sync/FilterOutRecord.js\";\n\nexport interface IHandlerEventBus {\n name: string;\n arn: string;\n}\n\nexport interface IHandlerParams {\n getEventBridgeClient(): Pick<EventBridgeClient, \"send\">;\n converter: IHandlerConverter;\n eventBus: IHandlerEventBus;\n system: ISystem;\n filterOutRecord: FilterOutRecord;\n}\n\nexport class Handler implements IHandler {\n public readonly id = generateAlphaNumericId();\n private readonly system: ISystem;\n private readonly getEventBridgeClient: () => Pick<EventBridgeClient, \"send\">;\n private commands: ICommandValue[] = [];\n private readonly converter: IHandlerConverter;\n private readonly eventBus: IHandlerEventBus;\n private readonly filterOutRecord: FilterOutRecord;\n\n public constructor(params: IHandlerParams) {\n this.getEventBridgeClient = params.getEventBridgeClient;\n this.system = params.system;\n this.converter = params.converter;\n this.eventBus = params.eventBus;\n this.filterOutRecord = params.filterOutRecord;\n }\n\n public add(input: IDynamoDbCommand): void {\n const cmd = this.converter.convert(input);\n this.commands.push(cmd);\n }\n\n public async flush(): Promise<PutEventsCommandOutput | null> {\n const items = this.createEventBusEvent();\n\n if (!items?.length) {\n return null;\n }\n\n const detail: IDetail = {\n /**\n * We need a random ID because there can be multiple commands with same items sent - but that does not mean they are duplicates.\n */\n id: generateAlphaNumericId(),\n items,\n source: this.system\n };\n\n const input: PutEventsCommandInput = {\n Entries: [\n {\n DetailType: \"synchronization-input\",\n Detail: JSON.stringify(detail),\n Source: `webiny:${this.system.name}`,\n EventBusName: this.eventBus.name\n }\n ]\n };\n const command = new PutEventsCommand(input);\n\n try {\n const eventBridgeClient = this.getEventBridgeClient();\n return await eventBridgeClient.send(command);\n } catch (ex) {\n console.log(\"Could not send events to Sync System EventBridge.\");\n console.error(ex.message);\n console.error(convertException(ex, [\"message\"]));\n console.log(\n JSON.stringify({\n event: items\n })\n );\n throw ex;\n }\n }\n\n private createEventBusEvent(): NonEmptyArray<ICommandValueItem> | null {\n const commands = Array.from(this.commands);\n /**\n * Remove all existing commands so we can start fresh.\n */\n this.commands = [];\n const everything = commands.reduce<ICommandValueItem[]>((items, cmd) => {\n const commandItems = cmd.getItems();\n if (!commandItems?.length) {\n return items;\n }\n\n for (const item of commandItems) {\n if (this.filterOutRecord.filterOut(item)) {\n continue;\n }\n items.push({\n tableName: item.tableName,\n command: item.command,\n tableType: item.tableType,\n PK: item.PK,\n SK: item.SK\n });\n }\n\n return items;\n }, []);\n\n return everything.length === 0\n ? null\n : (everything as NonEmptyArray<ICommandValueItemExtended>);\n }\n}\n\nexport const createSyncHandler = (params: IHandlerParams): IHandler => {\n return new Handler(params);\n};\n"],"mappings":"AAcA,SAASA,gBAAgB,QAAQ,6CAA6C;AAC9E,SAASC,gBAAgB,QAAQ,eAAe;AAChD,SAASC,sBAAsB,QAAQ,6BAA6B;AAkBpE,OAAO,MAAMC,OAAO,CAAqB;EACrBC,EAAE,GAAGF,sBAAsB,CAAC,CAAC;EAGrCG,QAAQ,GAAoB,EAAE;EAK/BC,WAAWA,CAACC,MAAsB,EAAE;IACvC,IAAI,CAACC,oBAAoB,GAAGD,MAAM,CAACC,oBAAoB;IACvD,IAAI,CAACC,MAAM,GAAGF,MAAM,CAACE,MAAM;IAC3B,IAAI,CAACC,SAAS,GAAGH,MAAM,CAACG,SAAS;IACjC,IAAI,CAACC,QAAQ,GAAGJ,MAAM,CAACI,QAAQ;IAC/B,IAAI,CAACC,eAAe,GAAGL,MAAM,CAACK,eAAe;EACjD;EAEOC,GAAGA,CAACC,KAAuB,EAAQ;IACtC,MAAMC,GAAG,GAAG,IAAI,CAACL,SAAS,CAACM,OAAO,CAACF,KAAK,CAAC;IACzC,IAAI,CAACT,QAAQ,CAACY,IAAI,CAACF,GAAG,CAAC;EAC3B;EAEA,MAAaG,KAAKA,CAAA,EAA2C;IACzD,MAAMC,KAAK,GAAG,IAAI,CAACC,mBAAmB,CAAC,CAAC;IAExC,IAAI,CAACD,KAAK,EAAEE,MAAM,EAAE;MAChB,OAAO,IAAI;IACf;IAEA,MAAMC,MAAe,GAAG;MACpB;AACZ;AACA;MACYlB,EAAE,EAAEF,sBAAsB,CAAC,CAAC;MAC5BiB,KAAK;MACLI,MAAM,EAAE,IAAI,CAACd;IACjB,CAAC;IAED,MAAMK,KAA4B,GAAG;MACjCU,OAAO,EAAE,CACL;QACIC,UAAU,EAAE,uBAAuB;QACnCC,MAAM,EAAEC,IAAI,CAACC,SAAS,CAACN,MAAM,CAAC;QAC9BO,MAAM,EAAE,UAAU,IAAI,CAACpB,MAAM,CAACqB,IAAI,EAAE;QACpCC,YAAY,EAAE,IAAI,CAACpB,QAAQ,CAACmB;MAChC,CAAC;IAET,CAAC;IACD,MAAME,OAAO,GAAG,IAAIhC,gBAAgB,CAACc,KAAK,CAAC;IAE3C,IAAI;MACA,MAAMmB,iBAAiB,GAAG,IAAI,CAACzB,oBAAoB,CAAC,CAAC;MACrD,OAAO,MAAMyB,iBAAiB,CAACC,IAAI,CAACF,OAAO,CAAC;IAChD,CAAC,CAAC,OAAOG,EAAE,EAAE;MACTC,OAAO,CAACC,GAAG,CAAC,mDAAmD,CAAC;MAChED,OAAO,CAACE,KAAK,CAACH,EAAE,CAACI,OAAO,CAAC;MACzBH,OAAO,CAACE,KAAK,CAACrC,gBAAgB,CAACkC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;MAChDC,OAAO,CAACC,GAAG,CACPV,IAAI,CAACC,SAAS,CAAC;QACXY,KAAK,EAAErB;MACX,CAAC,CACL,CAAC;MACD,MAAMgB,EAAE;IACZ;EACJ;EAEQf,mBAAmBA,CAAA,EAA4C;IACnE,MAAMf,QAAQ,GAAGoC,KAAK,CAACC,IAAI,CAAC,IAAI,CAACrC,QAAQ,CAAC;IAC1C;AACR;AACA;IACQ,IAAI,CAACA,QAAQ,GAAG,EAAE;IAClB,MAAMsC,UAAU,GAAGtC,QAAQ,CAACuC,MAAM,CAAsB,CAACzB,KAAK,EAAEJ,GAAG,KAAK;MACpE,MAAM8B,YAAY,GAAG9B,GAAG,CAAC+B,QAAQ,CAAC,CAAC;MACnC,IAAI,CAACD,YAAY,EAAExB,MAAM,EAAE;QACvB,OAAOF,KAAK;MAChB;MAEA,KAAK,MAAM4B,IAAI,IAAIF,YAAY,EAAE;QAC7B,IAAI,IAAI,CAACjC,eAAe,CAACoC,SAAS,CAACD,IAAI,CAAC,EAAE;UACtC;QACJ;QACA5B,KAAK,CAACF,IAAI,CAAC;UACPgC,SAAS,EAAEF,IAAI,CAACE,SAAS;UACzBjB,OAAO,EAAEe,IAAI,CAACf,OAAO;UACrBkB,SAAS,EAAEH,IAAI,CAACG,SAAS;UACzBC,EAAE,EAAEJ,IAAI,CAACI,EAAE;UACXC,EAAE,EAAEL,IAAI,CAACK;QACb,CAAC,CAAC;MACN;MAEA,OAAOjC,KAAK;IAChB,CAAC,EAAE,EAAE,CAAC;IAEN,OAAOwB,UAAU,CAACtB,MAAM,KAAK,CAAC,GACxB,IAAI,GACHsB,UAAuD;EAClE;AACJ;AAEA,OAAO,MAAMU,iBAAiB,GAAI9C,MAAsB,IAAe;EACnE,OAAO,IAAIJ,OAAO,CAACI,MAAM,CAAC;AAC9B,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"sync/handler/Handler.js","sources":["../../../src/sync/handler/Handler.ts"],"sourcesContent":["import type {\n ICommandValue,\n ICommandValueItem,\n ICommandValueItemExtended,\n IDynamoDbCommand,\n IHandler,\n IHandlerConverter,\n ISystem\n} from \"../types.js\";\nimport type {\n EventBridgeClient,\n PutEventsCommandInput,\n PutEventsCommandOutput\n} from \"@webiny/aws-sdk/client-eventbridge/index.js\";\nimport { PutEventsCommand } from \"@webiny/aws-sdk/client-eventbridge/index.js\";\nimport { convertException } from \"@webiny/utils\";\nimport { generateAlphaNumericId } from \"@webiny/utils/generateId.js\";\nimport type { IDetail } from \"~/sync/handler/types.js\";\nimport type { NonEmptyArray } from \"@webiny/api/types.js\";\nimport type { FilterOutRecord } from \"~/sync/FilterOutRecord.js\";\n\nexport interface IHandlerEventBus {\n name: string;\n arn: string;\n}\n\nexport interface IHandlerParams {\n getEventBridgeClient(): Pick<EventBridgeClient, \"send\">;\n converter: IHandlerConverter;\n eventBus: IHandlerEventBus;\n system: ISystem;\n filterOutRecord: FilterOutRecord;\n}\n\nexport class Handler implements IHandler {\n public readonly id = generateAlphaNumericId();\n private readonly system: ISystem;\n private readonly getEventBridgeClient: () => Pick<EventBridgeClient, \"send\">;\n private commands: ICommandValue[] = [];\n private readonly converter: IHandlerConverter;\n private readonly eventBus: IHandlerEventBus;\n private readonly filterOutRecord: FilterOutRecord;\n\n public constructor(params: IHandlerParams) {\n this.getEventBridgeClient = params.getEventBridgeClient;\n this.system = params.system;\n this.converter = params.converter;\n this.eventBus = params.eventBus;\n this.filterOutRecord = params.filterOutRecord;\n }\n\n public add(input: IDynamoDbCommand): void {\n const cmd = this.converter.convert(input);\n this.commands.push(cmd);\n }\n\n public async flush(): Promise<PutEventsCommandOutput | null> {\n const items = this.createEventBusEvent();\n\n if (!items?.length) {\n return null;\n }\n\n const detail: IDetail = {\n /**\n * We need a random ID because there can be multiple commands with same items sent - but that does not mean they are duplicates.\n */\n id: generateAlphaNumericId(),\n items,\n source: this.system\n };\n\n const input: PutEventsCommandInput = {\n Entries: [\n {\n DetailType: \"synchronization-input\",\n Detail: JSON.stringify(detail),\n Source: `webiny:${this.system.name}`,\n EventBusName: this.eventBus.name\n }\n ]\n };\n const command = new PutEventsCommand(input);\n\n try {\n const eventBridgeClient = this.getEventBridgeClient();\n return await eventBridgeClient.send(command);\n } catch (ex) {\n console.log(\"Could not send events to Sync System EventBridge.\");\n console.error(ex.message);\n console.error(convertException(ex, [\"message\"]));\n console.log(\n JSON.stringify({\n event: items\n })\n );\n throw ex;\n }\n }\n\n private createEventBusEvent(): NonEmptyArray<ICommandValueItem> | null {\n const commands = Array.from(this.commands);\n /**\n * Remove all existing commands so we can start fresh.\n */\n this.commands = [];\n const everything = commands.reduce<ICommandValueItem[]>((items, cmd) => {\n const commandItems = cmd.getItems();\n if (!commandItems?.length) {\n return items;\n }\n\n for (const item of commandItems) {\n if (this.filterOutRecord.filterOut(item)) {\n continue;\n }\n items.push({\n tableName: item.tableName,\n command: item.command,\n tableType: item.tableType,\n PK: item.PK,\n SK: item.SK\n });\n }\n\n return items;\n }, []);\n\n return everything.length === 0\n ? null\n : (everything as NonEmptyArray<ICommandValueItemExtended>);\n }\n}\n\nexport const createSyncHandler = (params: IHandlerParams): IHandler => {\n return new Handler(params);\n};\n"],"names":["Handler","params","generateAlphaNumericId","input","cmd","items","detail","JSON","command","PutEventsCommand","eventBridgeClient","ex","console","convertException","commands","Array","everything","commandItems","item","createSyncHandler"],"mappings":";;;AAkCO,MAAMA;IAST,YAAmBC,MAAsB,CAAE;aAR3B,EAAE,GAAGC;aAGb,QAAQ,GAAoB,EAAE;QAMlC,IAAI,CAAC,oBAAoB,GAAGD,OAAO,oBAAoB;QACvD,IAAI,CAAC,MAAM,GAAGA,OAAO,MAAM;QAC3B,IAAI,CAAC,SAAS,GAAGA,OAAO,SAAS;QACjC,IAAI,CAAC,QAAQ,GAAGA,OAAO,QAAQ;QAC/B,IAAI,CAAC,eAAe,GAAGA,OAAO,eAAe;IACjD;IAEO,IAAIE,KAAuB,EAAQ;QACtC,MAAMC,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAACD;QACnC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAACC;IACvB;IAEA,MAAa,QAAgD;QACzD,MAAMC,QAAQ,IAAI,CAAC,mBAAmB;QAEtC,IAAI,CAACA,OAAO,QACR,OAAO;QAGX,MAAMC,SAAkB;YAIpB,IAAIJ;YACJG;YACA,QAAQ,IAAI,CAAC,MAAM;QACvB;QAEA,MAAMF,QAA+B;YACjC,SAAS;gBACL;oBACI,YAAY;oBACZ,QAAQI,KAAK,SAAS,CAACD;oBACvB,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;oBACpC,cAAc,IAAI,CAAC,QAAQ,CAAC,IAAI;gBACpC;aACH;QACL;QACA,MAAME,UAAU,IAAIC,iBAAiBN;QAErC,IAAI;YACA,MAAMO,oBAAoB,IAAI,CAAC,oBAAoB;YACnD,OAAO,MAAMA,kBAAkB,IAAI,CAACF;QACxC,EAAE,OAAOG,IAAI;YACTC,QAAQ,GAAG,CAAC;YACZA,QAAQ,KAAK,CAACD,GAAG,OAAO;YACxBC,QAAQ,KAAK,CAACC,iBAAiBF,IAAI;gBAAC;aAAU;YAC9CC,QAAQ,GAAG,CACPL,KAAK,SAAS,CAAC;gBACX,OAAOF;YACX;YAEJ,MAAMM;QACV;IACJ;IAEQ,sBAA+D;QACnE,MAAMG,WAAWC,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ;QAIzC,IAAI,CAAC,QAAQ,GAAG,EAAE;QAClB,MAAMC,aAAaF,SAAS,MAAM,CAAsB,CAACT,OAAOD;YAC5D,MAAMa,eAAeb,IAAI,QAAQ;YACjC,IAAI,CAACa,cAAc,QACf,OAAOZ;YAGX,KAAK,MAAMa,QAAQD,aACf,KAAI,IAAI,CAAC,eAAe,CAAC,SAAS,CAACC,OAGnCb,MAAM,IAAI,CAAC;gBACP,WAAWa,KAAK,SAAS;gBACzB,SAASA,KAAK,OAAO;gBACrB,WAAWA,KAAK,SAAS;gBACzB,IAAIA,KAAK,EAAE;gBACX,IAAIA,KAAK,EAAE;YACf;YAGJ,OAAOb;QACX,GAAG,EAAE;QAEL,OAAOW,AAAsB,MAAtBA,WAAW,MAAM,GAClB,OACCA;IACX;AACJ;AAEO,MAAMG,oBAAoB,CAAClB,SACvB,IAAID,QAAQC"}
@@ -1,35 +1,27 @@
1
- export class HandlerConverter {
2
- converters = [];
3
- constructor(params) {
4
- this.defaultValue = params.defaultValue;
5
- }
6
- register(input) {
7
- if (Array.isArray(input)) {
8
- this.converters.push(...input);
9
- return;
1
+ class HandlerConverter {
2
+ constructor(params){
3
+ this.converters = [];
4
+ this.defaultValue = params.defaultValue;
10
5
  }
11
- this.converters.push(input);
12
- }
13
- convert(command) {
14
- for (const converter of this.converters) {
15
- if (converter.can(command)) {
16
- return converter.convert(command);
17
- }
6
+ register(input) {
7
+ if (Array.isArray(input)) return void this.converters.push(...input);
8
+ this.converters.push(input);
18
9
  }
19
- if (process.env.DEBUG === "true") {
20
- console.error(`Unknown command: ${command.constructor?.name || "unknown"}`);
21
- if (!command.constructor?.name) {
22
- console.error("Command is not an instance of a class, it might be a plain object. Stringified command is in next line.");
23
- console.log(JSON.stringify({
24
- command
25
- }));
26
- }
10
+ convert(command) {
11
+ for (const converter of this.converters)if (converter.can(command)) return converter.convert(command);
12
+ if ("true" === process.env.DEBUG) {
13
+ console.error(`Unknown command: ${command.constructor?.name || "unknown"}`);
14
+ if (!command.constructor?.name) {
15
+ console.error("Command is not an instance of a class, it might be a plain object. Stringified command is in next line.");
16
+ console.log(JSON.stringify({
17
+ command
18
+ }));
19
+ }
20
+ }
21
+ return this.defaultValue;
27
22
  }
28
- return this.defaultValue;
29
- }
30
23
  }
31
- export const createHandlerConverter = params => {
32
- return new HandlerConverter(params);
33
- };
24
+ const createHandlerConverter = (params)=>new HandlerConverter(params);
25
+ export { HandlerConverter, createHandlerConverter };
34
26
 
35
27
  //# sourceMappingURL=HandlerConverter.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["HandlerConverter","converters","constructor","params","defaultValue","register","input","Array","isArray","push","convert","command","converter","can","process","env","DEBUG","console","error","name","log","JSON","stringify","createHandlerConverter"],"sources":["HandlerConverter.ts"],"sourcesContent":["import type {\n ICommandConverter,\n ICommandValue,\n IDynamoDbCommand,\n IHandlerConverter\n} from \"../types.js\";\n\nexport interface IHandlerConverterParams {\n defaultValue: ICommandValue;\n}\n\nexport class HandlerConverter implements IHandlerConverter {\n private readonly defaultValue: ICommandValue;\n private readonly converters: ICommandConverter[] = [];\n\n public constructor(params: IHandlerConverterParams) {\n this.defaultValue = params.defaultValue;\n }\n\n public register(input: ICommandConverter | ICommandConverter[]): void {\n if (Array.isArray(input)) {\n this.converters.push(...input);\n return;\n }\n\n this.converters.push(input);\n }\n\n public convert(command: IDynamoDbCommand): ICommandValue {\n for (const converter of this.converters) {\n if (converter.can(command)) {\n return converter.convert(command);\n }\n }\n if (process.env.DEBUG === \"true\") {\n console.error(`Unknown command: ${command.constructor?.name || \"unknown\"}`);\n if (!command.constructor?.name) {\n console.error(\n \"Command is not an instance of a class, it might be a plain object. Stringified command is in next line.\"\n );\n console.log(\n JSON.stringify({\n command\n })\n );\n }\n }\n\n return this.defaultValue;\n }\n}\n\nexport const createHandlerConverter = (params: IHandlerConverterParams): IHandlerConverter => {\n return new HandlerConverter(params);\n};\n"],"mappings":"AAWA,OAAO,MAAMA,gBAAgB,CAA8B;EAEtCC,UAAU,GAAwB,EAAE;EAE9CC,WAAWA,CAACC,MAA+B,EAAE;IAChD,IAAI,CAACC,YAAY,GAAGD,MAAM,CAACC,YAAY;EAC3C;EAEOC,QAAQA,CAACC,KAA8C,EAAQ;IAClE,IAAIC,KAAK,CAACC,OAAO,CAACF,KAAK,CAAC,EAAE;MACtB,IAAI,CAACL,UAAU,CAACQ,IAAI,CAAC,GAAGH,KAAK,CAAC;MAC9B;IACJ;IAEA,IAAI,CAACL,UAAU,CAACQ,IAAI,CAACH,KAAK,CAAC;EAC/B;EAEOI,OAAOA,CAACC,OAAyB,EAAiB;IACrD,KAAK,MAAMC,SAAS,IAAI,IAAI,CAACX,UAAU,EAAE;MACrC,IAAIW,SAAS,CAACC,GAAG,CAACF,OAAO,CAAC,EAAE;QACxB,OAAOC,SAAS,CAACF,OAAO,CAACC,OAAO,CAAC;MACrC;IACJ;IACA,IAAIG,OAAO,CAACC,GAAG,CAACC,KAAK,KAAK,MAAM,EAAE;MAC9BC,OAAO,CAACC,KAAK,CAAC,oBAAoBP,OAAO,CAACT,WAAW,EAAEiB,IAAI,IAAI,SAAS,EAAE,CAAC;MAC3E,IAAI,CAACR,OAAO,CAACT,WAAW,EAAEiB,IAAI,EAAE;QAC5BF,OAAO,CAACC,KAAK,CACT,yGACJ,CAAC;QACDD,OAAO,CAACG,GAAG,CACPC,IAAI,CAACC,SAAS,CAAC;UACXX;QACJ,CAAC,CACL,CAAC;MACL;IACJ;IAEA,OAAO,IAAI,CAACP,YAAY;EAC5B;AACJ;AAEA,OAAO,MAAMmB,sBAAsB,GAAIpB,MAA+B,IAAwB;EAC1F,OAAO,IAAIH,gBAAgB,CAACG,MAAM,CAAC;AACvC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"sync/handler/HandlerConverter.js","sources":["../../../src/sync/handler/HandlerConverter.ts"],"sourcesContent":["import type {\n ICommandConverter,\n ICommandValue,\n IDynamoDbCommand,\n IHandlerConverter\n} from \"../types.js\";\n\nexport interface IHandlerConverterParams {\n defaultValue: ICommandValue;\n}\n\nexport class HandlerConverter implements IHandlerConverter {\n private readonly defaultValue: ICommandValue;\n private readonly converters: ICommandConverter[] = [];\n\n public constructor(params: IHandlerConverterParams) {\n this.defaultValue = params.defaultValue;\n }\n\n public register(input: ICommandConverter | ICommandConverter[]): void {\n if (Array.isArray(input)) {\n this.converters.push(...input);\n return;\n }\n\n this.converters.push(input);\n }\n\n public convert(command: IDynamoDbCommand): ICommandValue {\n for (const converter of this.converters) {\n if (converter.can(command)) {\n return converter.convert(command);\n }\n }\n if (process.env.DEBUG === \"true\") {\n console.error(`Unknown command: ${command.constructor?.name || \"unknown\"}`);\n if (!command.constructor?.name) {\n console.error(\n \"Command is not an instance of a class, it might be a plain object. Stringified command is in next line.\"\n );\n console.log(\n JSON.stringify({\n command\n })\n );\n }\n }\n\n return this.defaultValue;\n }\n}\n\nexport const createHandlerConverter = (params: IHandlerConverterParams): IHandlerConverter => {\n return new HandlerConverter(params);\n};\n"],"names":["HandlerConverter","params","input","Array","command","converter","process","console","JSON","createHandlerConverter"],"mappings":"AAWO,MAAMA;IAIT,YAAmBC,MAA+B,CAAE;aAFnC,UAAU,GAAwB,EAAE;QAGjD,IAAI,CAAC,YAAY,GAAGA,OAAO,YAAY;IAC3C;IAEO,SAASC,KAA8C,EAAQ;QAClE,IAAIC,MAAM,OAAO,CAACD,QAAQ,YACtB,IAAI,CAAC,UAAU,CAAC,IAAI,IAAIA;QAI5B,IAAI,CAAC,UAAU,CAAC,IAAI,CAACA;IACzB;IAEO,QAAQE,OAAyB,EAAiB;QACrD,KAAK,MAAMC,aAAa,IAAI,CAAC,UAAU,CACnC,IAAIA,UAAU,GAAG,CAACD,UACd,OAAOC,UAAU,OAAO,CAACD;QAGjC,IAAIE,AAAsB,WAAtBA,QAAQ,GAAG,CAAC,KAAK,EAAa;YAC9BC,QAAQ,KAAK,CAAC,CAAC,iBAAiB,EAAEH,QAAQ,WAAW,EAAE,QAAQ,WAAW;YAC1E,IAAI,CAACA,QAAQ,WAAW,EAAE,MAAM;gBAC5BG,QAAQ,KAAK,CACT;gBAEJA,QAAQ,GAAG,CACPC,KAAK,SAAS,CAAC;oBACXJ;gBACJ;YAER;QACJ;QAEA,OAAO,IAAI,CAAC,YAAY;IAC5B;AACJ;AAEO,MAAMK,yBAAyB,CAACR,SAC5B,IAAID,iBAAiBC"}
@@ -1,16 +1,17 @@
1
1
  import { BatchGetCommand } from "@webiny/aws-sdk/client-dynamodb/index.js";
2
2
  import { NullCommandValue } from "./commands/NullCommandValue.js";
3
- export class BatchGetCommandConverter {
4
- name = "batchGet";
5
- can(input) {
6
- return input instanceof BatchGetCommand;
7
- }
8
- convert() {
9
- return new NullCommandValue();
10
- }
3
+ class BatchGetCommandConverter {
4
+ can(input) {
5
+ return input instanceof BatchGetCommand;
6
+ }
7
+ convert() {
8
+ return new NullCommandValue();
9
+ }
10
+ constructor(){
11
+ this.name = "batchGet";
12
+ }
11
13
  }
12
- export const createBatchGetCommandConverter = () => {
13
- return new BatchGetCommandConverter();
14
- };
14
+ const createBatchGetCommandConverter = ()=>new BatchGetCommandConverter();
15
+ export { BatchGetCommandConverter, createBatchGetCommandConverter };
15
16
 
16
17
  //# sourceMappingURL=BatchGetCommandConverter.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["BatchGetCommand","NullCommandValue","BatchGetCommandConverter","name","can","input","convert","createBatchGetCommandConverter"],"sources":["BatchGetCommandConverter.ts"],"sourcesContent":["import { BatchGetCommand } from \"@webiny/aws-sdk/client-dynamodb/index.js\";\nimport type { ICommandConverter, IDynamoDbCommand } from \"../../types.js\";\nimport { NullCommandValue } from \"./commands/NullCommandValue.js\";\n\nexport class BatchGetCommandConverter implements ICommandConverter {\n public readonly name: string = \"batchGet\";\n\n public can(input: IDynamoDbCommand): boolean {\n return input instanceof BatchGetCommand;\n }\n\n public convert() {\n return new NullCommandValue();\n }\n}\n\nexport const createBatchGetCommandConverter = (): ICommandConverter => {\n return new BatchGetCommandConverter();\n};\n"],"mappings":"AAAA,SAASA,eAAe,QAAQ,0CAA0C;AAE1E,SAASC,gBAAgB;AAEzB,OAAO,MAAMC,wBAAwB,CAA8B;EAC/CC,IAAI,GAAW,UAAU;EAElCC,GAAGA,CAACC,KAAuB,EAAW;IACzC,OAAOA,KAAK,YAAYL,eAAe;EAC3C;EAEOM,OAAOA,CAAA,EAAG;IACb,OAAO,IAAIL,gBAAgB,CAAC,CAAC;EACjC;AACJ;AAEA,OAAO,MAAMM,8BAA8B,GAAGA,CAAA,KAAyB;EACnE,OAAO,IAAIL,wBAAwB,CAAC,CAAC;AACzC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"sync/handler/converter/BatchGetCommandConverter.js","sources":["../../../../src/sync/handler/converter/BatchGetCommandConverter.ts"],"sourcesContent":["import { BatchGetCommand } from \"@webiny/aws-sdk/client-dynamodb/index.js\";\nimport type { ICommandConverter, IDynamoDbCommand } from \"../../types.js\";\nimport { NullCommandValue } from \"./commands/NullCommandValue.js\";\n\nexport class BatchGetCommandConverter implements ICommandConverter {\n public readonly name: string = \"batchGet\";\n\n public can(input: IDynamoDbCommand): boolean {\n return input instanceof BatchGetCommand;\n }\n\n public convert() {\n return new NullCommandValue();\n }\n}\n\nexport const createBatchGetCommandConverter = (): ICommandConverter => {\n return new BatchGetCommandConverter();\n};\n"],"names":["BatchGetCommandConverter","input","BatchGetCommand","NullCommandValue","createBatchGetCommandConverter"],"mappings":";;AAIO,MAAMA;IAGF,IAAIC,KAAuB,EAAW;QACzC,OAAOA,iBAAiBC;IAC5B;IAEO,UAAU;QACb,OAAO,IAAIC;IACf;;aARgB,IAAI,GAAW;;AASnC;AAEO,MAAMC,iCAAiC,IACnC,IAAIJ"}
@@ -1,16 +1,17 @@
1
1
  import { BatchWriteCommand } from "@webiny/aws-sdk/client-dynamodb/index.js";
2
2
  import { BatchWriteCommandValue } from "./commands/BatchWriteCommandValue.js";
3
- export class BatchWriteCommandConverter {
4
- name = "put";
5
- can(input) {
6
- return input instanceof BatchWriteCommand;
7
- }
8
- convert(input) {
9
- return new BatchWriteCommandValue(input);
10
- }
3
+ class BatchWriteCommandConverter {
4
+ can(input) {
5
+ return input instanceof BatchWriteCommand;
6
+ }
7
+ convert(input) {
8
+ return new BatchWriteCommandValue(input);
9
+ }
10
+ constructor(){
11
+ this.name = "put";
12
+ }
11
13
  }
12
- export const createBatchWriteCommandConverter = () => {
13
- return new BatchWriteCommandConverter();
14
- };
14
+ const createBatchWriteCommandConverter = ()=>new BatchWriteCommandConverter();
15
+ export { BatchWriteCommandConverter, createBatchWriteCommandConverter };
15
16
 
16
17
  //# sourceMappingURL=BatchWriteCommandConverter.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["BatchWriteCommand","BatchWriteCommandValue","BatchWriteCommandConverter","name","can","input","convert","createBatchWriteCommandConverter"],"sources":["BatchWriteCommandConverter.ts"],"sourcesContent":["import { BatchWriteCommand } from \"@webiny/aws-sdk/client-dynamodb/index.js\";\nimport type { ICommandConverter, IDynamoDbCommand } from \"../../types.js\";\nimport { BatchWriteCommandValue } from \"./commands/BatchWriteCommandValue.js\";\n\nexport class BatchWriteCommandConverter implements ICommandConverter {\n public readonly name: string = \"put\";\n\n public can(input: IDynamoDbCommand): boolean {\n return input instanceof BatchWriteCommand;\n }\n public convert(input: BatchWriteCommand) {\n return new BatchWriteCommandValue(input);\n }\n}\n\nexport const createBatchWriteCommandConverter = (): ICommandConverter => {\n return new BatchWriteCommandConverter();\n};\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,0CAA0C;AAE5E,SAASC,sBAAsB;AAE/B,OAAO,MAAMC,0BAA0B,CAA8B;EACjDC,IAAI,GAAW,KAAK;EAE7BC,GAAGA,CAACC,KAAuB,EAAW;IACzC,OAAOA,KAAK,YAAYL,iBAAiB;EAC7C;EACOM,OAAOA,CAACD,KAAwB,EAAE;IACrC,OAAO,IAAIJ,sBAAsB,CAACI,KAAK,CAAC;EAC5C;AACJ;AAEA,OAAO,MAAME,gCAAgC,GAAGA,CAAA,KAAyB;EACrE,OAAO,IAAIL,0BAA0B,CAAC,CAAC;AAC3C,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"sync/handler/converter/BatchWriteCommandConverter.js","sources":["../../../../src/sync/handler/converter/BatchWriteCommandConverter.ts"],"sourcesContent":["import { BatchWriteCommand } from \"@webiny/aws-sdk/client-dynamodb/index.js\";\nimport type { ICommandConverter, IDynamoDbCommand } from \"../../types.js\";\nimport { BatchWriteCommandValue } from \"./commands/BatchWriteCommandValue.js\";\n\nexport class BatchWriteCommandConverter implements ICommandConverter {\n public readonly name: string = \"put\";\n\n public can(input: IDynamoDbCommand): boolean {\n return input instanceof BatchWriteCommand;\n }\n public convert(input: BatchWriteCommand) {\n return new BatchWriteCommandValue(input);\n }\n}\n\nexport const createBatchWriteCommandConverter = (): ICommandConverter => {\n return new BatchWriteCommandConverter();\n};\n"],"names":["BatchWriteCommandConverter","input","BatchWriteCommand","BatchWriteCommandValue","createBatchWriteCommandConverter"],"mappings":";;AAIO,MAAMA;IAGF,IAAIC,KAAuB,EAAW;QACzC,OAAOA,iBAAiBC;IAC5B;IACO,QAAQD,KAAwB,EAAE;QACrC,OAAO,IAAIE,uBAAuBF;IACtC;;aAPgB,IAAI,GAAW;;AAQnC;AAEO,MAAMG,mCAAmC,IACrC,IAAIJ"}
@@ -1,16 +1,17 @@
1
1
  import { DeleteCommand } from "@webiny/aws-sdk/client-dynamodb/index.js";
2
2
  import { DeleteCommandValue } from "./commands/DeleteCommandValue.js";
3
- export class DeleteCommandConverter {
4
- name = "delete";
5
- can(input) {
6
- return input instanceof DeleteCommand;
7
- }
8
- convert(input) {
9
- return new DeleteCommandValue(input);
10
- }
3
+ class DeleteCommandConverter {
4
+ can(input) {
5
+ return input instanceof DeleteCommand;
6
+ }
7
+ convert(input) {
8
+ return new DeleteCommandValue(input);
9
+ }
10
+ constructor(){
11
+ this.name = "delete";
12
+ }
11
13
  }
12
- export const createDeleteCommandConverter = () => {
13
- return new DeleteCommandConverter();
14
- };
14
+ const createDeleteCommandConverter = ()=>new DeleteCommandConverter();
15
+ export { DeleteCommandConverter, createDeleteCommandConverter };
15
16
 
16
17
  //# sourceMappingURL=DeleteCommandConverter.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["DeleteCommand","DeleteCommandValue","DeleteCommandConverter","name","can","input","convert","createDeleteCommandConverter"],"sources":["DeleteCommandConverter.ts"],"sourcesContent":["import { DeleteCommand } from \"@webiny/aws-sdk/client-dynamodb/index.js\";\nimport type { ICommandConverter, IDynamoDbCommand } from \"../../types.js\";\nimport { DeleteCommandValue } from \"./commands/DeleteCommandValue.js\";\n\nexport class DeleteCommandConverter implements ICommandConverter {\n public readonly name: string = \"delete\";\n\n public can(input: IDynamoDbCommand): boolean {\n return input instanceof DeleteCommand;\n }\n public convert(input: DeleteCommand) {\n return new DeleteCommandValue(input);\n }\n}\n\nexport const createDeleteCommandConverter = (): ICommandConverter => {\n return new DeleteCommandConverter();\n};\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,0CAA0C;AAExE,SAASC,kBAAkB;AAE3B,OAAO,MAAMC,sBAAsB,CAA8B;EAC7CC,IAAI,GAAW,QAAQ;EAEhCC,GAAGA,CAACC,KAAuB,EAAW;IACzC,OAAOA,KAAK,YAAYL,aAAa;EACzC;EACOM,OAAOA,CAACD,KAAoB,EAAE;IACjC,OAAO,IAAIJ,kBAAkB,CAACI,KAAK,CAAC;EACxC;AACJ;AAEA,OAAO,MAAME,4BAA4B,GAAGA,CAAA,KAAyB;EACjE,OAAO,IAAIL,sBAAsB,CAAC,CAAC;AACvC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"sync/handler/converter/DeleteCommandConverter.js","sources":["../../../../src/sync/handler/converter/DeleteCommandConverter.ts"],"sourcesContent":["import { DeleteCommand } from \"@webiny/aws-sdk/client-dynamodb/index.js\";\nimport type { ICommandConverter, IDynamoDbCommand } from \"../../types.js\";\nimport { DeleteCommandValue } from \"./commands/DeleteCommandValue.js\";\n\nexport class DeleteCommandConverter implements ICommandConverter {\n public readonly name: string = \"delete\";\n\n public can(input: IDynamoDbCommand): boolean {\n return input instanceof DeleteCommand;\n }\n public convert(input: DeleteCommand) {\n return new DeleteCommandValue(input);\n }\n}\n\nexport const createDeleteCommandConverter = (): ICommandConverter => {\n return new DeleteCommandConverter();\n};\n"],"names":["DeleteCommandConverter","input","DeleteCommand","DeleteCommandValue","createDeleteCommandConverter"],"mappings":";;AAIO,MAAMA;IAGF,IAAIC,KAAuB,EAAW;QACzC,OAAOA,iBAAiBC;IAC5B;IACO,QAAQD,KAAoB,EAAE;QACjC,OAAO,IAAIE,mBAAmBF;IAClC;;aAPgB,IAAI,GAAW;;AAQnC;AAEO,MAAMG,+BAA+B,IACjC,IAAIJ"}
@@ -1,16 +1,17 @@
1
1
  import { GetCommand } from "@webiny/aws-sdk/client-dynamodb/index.js";
2
2
  import { NullCommandValue } from "./commands/NullCommandValue.js";
3
- export class GetCommandConverter {
4
- name = "get";
5
- can(input) {
6
- return input instanceof GetCommand;
7
- }
8
- convert() {
9
- return new NullCommandValue();
10
- }
3
+ class GetCommandConverter {
4
+ can(input) {
5
+ return input instanceof GetCommand;
6
+ }
7
+ convert() {
8
+ return new NullCommandValue();
9
+ }
10
+ constructor(){
11
+ this.name = "get";
12
+ }
11
13
  }
12
- export const createGetCommandConverter = () => {
13
- return new GetCommandConverter();
14
- };
14
+ const createGetCommandConverter = ()=>new GetCommandConverter();
15
+ export { GetCommandConverter, createGetCommandConverter };
15
16
 
16
17
  //# sourceMappingURL=GetCommandConverter.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["GetCommand","NullCommandValue","GetCommandConverter","name","can","input","convert","createGetCommandConverter"],"sources":["GetCommandConverter.ts"],"sourcesContent":["import { GetCommand } from \"@webiny/aws-sdk/client-dynamodb/index.js\";\nimport type { ICommandConverter, IDynamoDbCommand } from \"../../types.js\";\nimport { NullCommandValue } from \"./commands/NullCommandValue.js\";\n\nexport class GetCommandConverter implements ICommandConverter {\n public readonly name: string = \"get\";\n\n public can(input: IDynamoDbCommand): boolean {\n return input instanceof GetCommand;\n }\n\n public convert() {\n return new NullCommandValue();\n }\n}\n\nexport const createGetCommandConverter = (): ICommandConverter => {\n return new GetCommandConverter();\n};\n"],"mappings":"AAAA,SAASA,UAAU,QAAQ,0CAA0C;AAErE,SAASC,gBAAgB;AAEzB,OAAO,MAAMC,mBAAmB,CAA8B;EAC1CC,IAAI,GAAW,KAAK;EAE7BC,GAAGA,CAACC,KAAuB,EAAW;IACzC,OAAOA,KAAK,YAAYL,UAAU;EACtC;EAEOM,OAAOA,CAAA,EAAG;IACb,OAAO,IAAIL,gBAAgB,CAAC,CAAC;EACjC;AACJ;AAEA,OAAO,MAAMM,yBAAyB,GAAGA,CAAA,KAAyB;EAC9D,OAAO,IAAIL,mBAAmB,CAAC,CAAC;AACpC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"sync/handler/converter/GetCommandConverter.js","sources":["../../../../src/sync/handler/converter/GetCommandConverter.ts"],"sourcesContent":["import { GetCommand } from \"@webiny/aws-sdk/client-dynamodb/index.js\";\nimport type { ICommandConverter, IDynamoDbCommand } from \"../../types.js\";\nimport { NullCommandValue } from \"./commands/NullCommandValue.js\";\n\nexport class GetCommandConverter implements ICommandConverter {\n public readonly name: string = \"get\";\n\n public can(input: IDynamoDbCommand): boolean {\n return input instanceof GetCommand;\n }\n\n public convert() {\n return new NullCommandValue();\n }\n}\n\nexport const createGetCommandConverter = (): ICommandConverter => {\n return new GetCommandConverter();\n};\n"],"names":["GetCommandConverter","input","GetCommand","NullCommandValue","createGetCommandConverter"],"mappings":";;AAIO,MAAMA;IAGF,IAAIC,KAAuB,EAAW;QACzC,OAAOA,iBAAiBC;IAC5B;IAEO,UAAU;QACb,OAAO,IAAIC;IACf;;aARgB,IAAI,GAAW;;AASnC;AAEO,MAAMC,4BAA4B,IAC9B,IAAIJ"}
@@ -1,16 +1,17 @@
1
1
  import { PutCommand } from "@webiny/aws-sdk/client-dynamodb/index.js";
2
2
  import { PutCommandValue } from "./commands/PutCommandValue.js";
3
- export class PutCommandConverter {
4
- name = "put";
5
- can(input) {
6
- return input instanceof PutCommand;
7
- }
8
- convert(input) {
9
- return new PutCommandValue(input);
10
- }
3
+ class PutCommandConverter {
4
+ can(input) {
5
+ return input instanceof PutCommand;
6
+ }
7
+ convert(input) {
8
+ return new PutCommandValue(input);
9
+ }
10
+ constructor(){
11
+ this.name = "put";
12
+ }
11
13
  }
12
- export const createPutCommandConverter = () => {
13
- return new PutCommandConverter();
14
- };
14
+ const createPutCommandConverter = ()=>new PutCommandConverter();
15
+ export { PutCommandConverter, createPutCommandConverter };
15
16
 
16
17
  //# sourceMappingURL=PutCommandConverter.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["PutCommand","PutCommandValue","PutCommandConverter","name","can","input","convert","createPutCommandConverter"],"sources":["PutCommandConverter.ts"],"sourcesContent":["import { PutCommand } from \"@webiny/aws-sdk/client-dynamodb/index.js\";\nimport type { ICommandConverter, IDynamoDbCommand } from \"../../types.js\";\nimport { PutCommandValue } from \"./commands/PutCommandValue.js\";\n\nexport class PutCommandConverter implements ICommandConverter {\n public readonly name: string = \"put\";\n\n public can(input: IDynamoDbCommand): boolean {\n return input instanceof PutCommand;\n }\n public convert(input: PutCommand) {\n return new PutCommandValue(input);\n }\n}\n\nexport const createPutCommandConverter = (): ICommandConverter => {\n return new PutCommandConverter();\n};\n"],"mappings":"AAAA,SAASA,UAAU,QAAQ,0CAA0C;AAErE,SAASC,eAAe;AAExB,OAAO,MAAMC,mBAAmB,CAA8B;EAC1CC,IAAI,GAAW,KAAK;EAE7BC,GAAGA,CAACC,KAAuB,EAAW;IACzC,OAAOA,KAAK,YAAYL,UAAU;EACtC;EACOM,OAAOA,CAACD,KAAiB,EAAE;IAC9B,OAAO,IAAIJ,eAAe,CAACI,KAAK,CAAC;EACrC;AACJ;AAEA,OAAO,MAAME,yBAAyB,GAAGA,CAAA,KAAyB;EAC9D,OAAO,IAAIL,mBAAmB,CAAC,CAAC;AACpC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"sync/handler/converter/PutCommandConverter.js","sources":["../../../../src/sync/handler/converter/PutCommandConverter.ts"],"sourcesContent":["import { PutCommand } from \"@webiny/aws-sdk/client-dynamodb/index.js\";\nimport type { ICommandConverter, IDynamoDbCommand } from \"../../types.js\";\nimport { PutCommandValue } from \"./commands/PutCommandValue.js\";\n\nexport class PutCommandConverter implements ICommandConverter {\n public readonly name: string = \"put\";\n\n public can(input: IDynamoDbCommand): boolean {\n return input instanceof PutCommand;\n }\n public convert(input: PutCommand) {\n return new PutCommandValue(input);\n }\n}\n\nexport const createPutCommandConverter = (): ICommandConverter => {\n return new PutCommandConverter();\n};\n"],"names":["PutCommandConverter","input","PutCommand","PutCommandValue","createPutCommandConverter"],"mappings":";;AAIO,MAAMA;IAGF,IAAIC,KAAuB,EAAW;QACzC,OAAOA,iBAAiBC;IAC5B;IACO,QAAQD,KAAiB,EAAE;QAC9B,OAAO,IAAIE,gBAAgBF;IAC/B;;aAPgB,IAAI,GAAW;;AAQnC;AAEO,MAAMG,4BAA4B,IAC9B,IAAIJ"}
@@ -1,16 +1,17 @@
1
1
  import { QueryCommand } from "@webiny/aws-sdk/client-dynamodb/index.js";
2
2
  import { NullCommandValue } from "./commands/NullCommandValue.js";
3
- export class QueryCommandConverter {
4
- name = "query";
5
- can(input) {
6
- return input instanceof QueryCommand || input.constructor?.name === "QueryCommand";
7
- }
8
- convert() {
9
- return new NullCommandValue();
10
- }
3
+ class QueryCommandConverter {
4
+ can(input) {
5
+ return input instanceof QueryCommand || input.constructor?.name === "QueryCommand";
6
+ }
7
+ convert() {
8
+ return new NullCommandValue();
9
+ }
10
+ constructor(){
11
+ this.name = "query";
12
+ }
11
13
  }
12
- export const createQueryCommandConverter = () => {
13
- return new QueryCommandConverter();
14
- };
14
+ const createQueryCommandConverter = ()=>new QueryCommandConverter();
15
+ export { QueryCommandConverter, createQueryCommandConverter };
15
16
 
16
17
  //# sourceMappingURL=QueryCommandConverter.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["QueryCommand","NullCommandValue","QueryCommandConverter","name","can","input","constructor","convert","createQueryCommandConverter"],"sources":["QueryCommandConverter.ts"],"sourcesContent":["import { QueryCommand } from \"@webiny/aws-sdk/client-dynamodb/index.js\";\nimport type { ICommandConverter, IDynamoDbCommand } from \"../../types.js\";\nimport { NullCommandValue } from \"./commands/NullCommandValue.js\";\n\nexport class QueryCommandConverter implements ICommandConverter {\n public readonly name: string = \"query\";\n\n public can(input: IDynamoDbCommand): boolean {\n return input instanceof QueryCommand || input.constructor?.name === \"QueryCommand\";\n }\n\n public convert() {\n return new NullCommandValue();\n }\n}\n\nexport const createQueryCommandConverter = (): ICommandConverter => {\n return new QueryCommandConverter();\n};\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,0CAA0C;AAEvE,SAASC,gBAAgB;AAEzB,OAAO,MAAMC,qBAAqB,CAA8B;EAC5CC,IAAI,GAAW,OAAO;EAE/BC,GAAGA,CAACC,KAAuB,EAAW;IACzC,OAAOA,KAAK,YAAYL,YAAY,IAAIK,KAAK,CAACC,WAAW,EAAEH,IAAI,KAAK,cAAc;EACtF;EAEOI,OAAOA,CAAA,EAAG;IACb,OAAO,IAAIN,gBAAgB,CAAC,CAAC;EACjC;AACJ;AAEA,OAAO,MAAMO,2BAA2B,GAAGA,CAAA,KAAyB;EAChE,OAAO,IAAIN,qBAAqB,CAAC,CAAC;AACtC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"sync/handler/converter/QueryCommandConverter.js","sources":["../../../../src/sync/handler/converter/QueryCommandConverter.ts"],"sourcesContent":["import { QueryCommand } from \"@webiny/aws-sdk/client-dynamodb/index.js\";\nimport type { ICommandConverter, IDynamoDbCommand } from \"../../types.js\";\nimport { NullCommandValue } from \"./commands/NullCommandValue.js\";\n\nexport class QueryCommandConverter implements ICommandConverter {\n public readonly name: string = \"query\";\n\n public can(input: IDynamoDbCommand): boolean {\n return input instanceof QueryCommand || input.constructor?.name === \"QueryCommand\";\n }\n\n public convert() {\n return new NullCommandValue();\n }\n}\n\nexport const createQueryCommandConverter = (): ICommandConverter => {\n return new QueryCommandConverter();\n};\n"],"names":["QueryCommandConverter","input","QueryCommand","NullCommandValue","createQueryCommandConverter"],"mappings":";;AAIO,MAAMA;IAGF,IAAIC,KAAuB,EAAW;QACzC,OAAOA,iBAAiBC,gBAAgBD,MAAM,WAAW,EAAE,SAAS;IACxE;IAEO,UAAU;QACb,OAAO,IAAIE;IACf;;aARgB,IAAI,GAAW;;AASnC;AAEO,MAAMC,8BAA8B,IAChC,IAAIJ"}
@@ -1,16 +1,17 @@
1
1
  import { ScanCommand } from "@webiny/aws-sdk/client-dynamodb/index.js";
2
2
  import { NullCommandValue } from "./commands/NullCommandValue.js";
3
- export class ScanCommandConverter {
4
- name = "query";
5
- can(input) {
6
- return input instanceof ScanCommand;
7
- }
8
- convert() {
9
- return new NullCommandValue();
10
- }
3
+ class ScanCommandConverter {
4
+ can(input) {
5
+ return input instanceof ScanCommand;
6
+ }
7
+ convert() {
8
+ return new NullCommandValue();
9
+ }
10
+ constructor(){
11
+ this.name = "query";
12
+ }
11
13
  }
12
- export const createScanCommandConverter = () => {
13
- return new ScanCommandConverter();
14
- };
14
+ const createScanCommandConverter = ()=>new ScanCommandConverter();
15
+ export { ScanCommandConverter, createScanCommandConverter };
15
16
 
16
17
  //# sourceMappingURL=ScanCommandConverter.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["ScanCommand","NullCommandValue","ScanCommandConverter","name","can","input","convert","createScanCommandConverter"],"sources":["ScanCommandConverter.ts"],"sourcesContent":["import { ScanCommand } from \"@webiny/aws-sdk/client-dynamodb/index.js\";\nimport type { ICommandConverter, IDynamoDbCommand } from \"../../types.js\";\nimport { NullCommandValue } from \"./commands/NullCommandValue.js\";\n\nexport class ScanCommandConverter implements ICommandConverter {\n public readonly name: string = \"query\";\n\n public can(input: IDynamoDbCommand): boolean {\n return input instanceof ScanCommand;\n }\n\n public convert() {\n return new NullCommandValue();\n }\n}\n\nexport const createScanCommandConverter = (): ICommandConverter => {\n return new ScanCommandConverter();\n};\n"],"mappings":"AAAA,SAASA,WAAW,QAAQ,0CAA0C;AAEtE,SAASC,gBAAgB;AAEzB,OAAO,MAAMC,oBAAoB,CAA8B;EAC3CC,IAAI,GAAW,OAAO;EAE/BC,GAAGA,CAACC,KAAuB,EAAW;IACzC,OAAOA,KAAK,YAAYL,WAAW;EACvC;EAEOM,OAAOA,CAAA,EAAG;IACb,OAAO,IAAIL,gBAAgB,CAAC,CAAC;EACjC;AACJ;AAEA,OAAO,MAAMM,0BAA0B,GAAGA,CAAA,KAAyB;EAC/D,OAAO,IAAIL,oBAAoB,CAAC,CAAC;AACrC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"sync/handler/converter/ScanCommandConverter.js","sources":["../../../../src/sync/handler/converter/ScanCommandConverter.ts"],"sourcesContent":["import { ScanCommand } from \"@webiny/aws-sdk/client-dynamodb/index.js\";\nimport type { ICommandConverter, IDynamoDbCommand } from \"../../types.js\";\nimport { NullCommandValue } from \"./commands/NullCommandValue.js\";\n\nexport class ScanCommandConverter implements ICommandConverter {\n public readonly name: string = \"query\";\n\n public can(input: IDynamoDbCommand): boolean {\n return input instanceof ScanCommand;\n }\n\n public convert() {\n return new NullCommandValue();\n }\n}\n\nexport const createScanCommandConverter = (): ICommandConverter => {\n return new ScanCommandConverter();\n};\n"],"names":["ScanCommandConverter","input","ScanCommand","NullCommandValue","createScanCommandConverter"],"mappings":";;AAIO,MAAMA;IAGF,IAAIC,KAAuB,EAAW;QACzC,OAAOA,iBAAiBC;IAC5B;IAEO,UAAU;QACb,OAAO,IAAIC;IACf;;aARgB,IAAI,GAAW;;AASnC;AAEO,MAAMC,6BAA6B,IAC/B,IAAIJ"}
@@ -1,16 +1,17 @@
1
1
  import { UpdateCommand } from "@webiny/aws-sdk/client-dynamodb/index.js";
2
2
  import { UpdateCommandValue } from "./commands/UpdateCommandValue.js";
3
- export class UpdateCommandConverter {
4
- name = "update";
5
- can(input) {
6
- return input instanceof UpdateCommand;
7
- }
8
- convert(input) {
9
- return new UpdateCommandValue(input);
10
- }
3
+ class UpdateCommandConverter {
4
+ can(input) {
5
+ return input instanceof UpdateCommand;
6
+ }
7
+ convert(input) {
8
+ return new UpdateCommandValue(input);
9
+ }
10
+ constructor(){
11
+ this.name = "update";
12
+ }
11
13
  }
12
- export const createUpdateCommandConverter = () => {
13
- return new UpdateCommandConverter();
14
- };
14
+ const createUpdateCommandConverter = ()=>new UpdateCommandConverter();
15
+ export { UpdateCommandConverter, createUpdateCommandConverter };
15
16
 
16
17
  //# sourceMappingURL=UpdateCommandConverter.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["UpdateCommand","UpdateCommandValue","UpdateCommandConverter","name","can","input","convert","createUpdateCommandConverter"],"sources":["UpdateCommandConverter.ts"],"sourcesContent":["import { UpdateCommand } from \"@webiny/aws-sdk/client-dynamodb/index.js\";\nimport type { ICommandConverter, IDynamoDbCommand } from \"../../types.js\";\nimport { UpdateCommandValue } from \"./commands/UpdateCommandValue.js\";\n\nexport class UpdateCommandConverter implements ICommandConverter {\n public readonly name: string = \"update\";\n\n public can(input: IDynamoDbCommand): boolean {\n return input instanceof UpdateCommand;\n }\n public convert(input: UpdateCommand) {\n return new UpdateCommandValue(input);\n }\n}\n\nexport const createUpdateCommandConverter = (): ICommandConverter => {\n return new UpdateCommandConverter();\n};\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,0CAA0C;AAExE,SAASC,kBAAkB;AAE3B,OAAO,MAAMC,sBAAsB,CAA8B;EAC7CC,IAAI,GAAW,QAAQ;EAEhCC,GAAGA,CAACC,KAAuB,EAAW;IACzC,OAAOA,KAAK,YAAYL,aAAa;EACzC;EACOM,OAAOA,CAACD,KAAoB,EAAE;IACjC,OAAO,IAAIJ,kBAAkB,CAACI,KAAK,CAAC;EACxC;AACJ;AAEA,OAAO,MAAME,4BAA4B,GAAGA,CAAA,KAAyB;EACjE,OAAO,IAAIL,sBAAsB,CAAC,CAAC;AACvC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"sync/handler/converter/UpdateCommandConverter.js","sources":["../../../../src/sync/handler/converter/UpdateCommandConverter.ts"],"sourcesContent":["import { UpdateCommand } from \"@webiny/aws-sdk/client-dynamodb/index.js\";\nimport type { ICommandConverter, IDynamoDbCommand } from \"../../types.js\";\nimport { UpdateCommandValue } from \"./commands/UpdateCommandValue.js\";\n\nexport class UpdateCommandConverter implements ICommandConverter {\n public readonly name: string = \"update\";\n\n public can(input: IDynamoDbCommand): boolean {\n return input instanceof UpdateCommand;\n }\n public convert(input: UpdateCommand) {\n return new UpdateCommandValue(input);\n }\n}\n\nexport const createUpdateCommandConverter = (): ICommandConverter => {\n return new UpdateCommandConverter();\n};\n"],"names":["UpdateCommandConverter","input","UpdateCommand","UpdateCommandValue","createUpdateCommandConverter"],"mappings":";;AAIO,MAAMA;IAGF,IAAIC,KAAuB,EAAW;QACzC,OAAOA,iBAAiBC;IAC5B;IACO,QAAQD,KAAoB,EAAE;QACjC,OAAO,IAAIE,mBAAmBF;IAClC;;aAPgB,IAAI,GAAW;;AAQnC;AAEO,MAAMG,+BAA+B,IACjC,IAAIJ"}
@@ -1,44 +1,41 @@
1
1
  import { getTableType } from "../../../utils/getTableType.js";
2
- const convert = items => {
3
- if (items.length === 0) {
4
- return null;
5
- }
6
- return items;
2
+ const convert = (items)=>{
3
+ if (0 === items.length) return null;
4
+ return items;
7
5
  };
8
- export class BatchWriteCommandValue {
9
- command = "batchWrite";
10
- items = [];
11
- constructor(input) {
12
- for (const tableName in input.input.RequestItems) {
13
- const values = input.input.RequestItems[tableName];
14
- for (const value of values) {
15
- if (value.PutRequest?.Item) {
16
- const item = value.PutRequest.Item;
17
- this.items.push({
18
- command: "put",
19
- PK: item.PK,
20
- SK: item.SK,
21
- tableName,
22
- tableType: getTableType(tableName),
23
- input
24
- });
25
- } else if (value.DeleteRequest?.Key) {
26
- const item = value.DeleteRequest.Key;
27
- this.items.push({
28
- command: "delete",
29
- PK: item.PK,
30
- SK: item.SK,
31
- tableName,
32
- tableType: getTableType(tableName),
33
- input
34
- });
6
+ class BatchWriteCommandValue {
7
+ constructor(input){
8
+ this.command = "batchWrite";
9
+ this.items = [];
10
+ for(const tableName in input.input.RequestItems){
11
+ const values = input.input.RequestItems[tableName];
12
+ for (const value of values)if (value.PutRequest?.Item) {
13
+ const item = value.PutRequest.Item;
14
+ this.items.push({
15
+ command: "put",
16
+ PK: item.PK,
17
+ SK: item.SK,
18
+ tableName,
19
+ tableType: getTableType(tableName),
20
+ input
21
+ });
22
+ } else if (value.DeleteRequest?.Key) {
23
+ const item = value.DeleteRequest.Key;
24
+ this.items.push({
25
+ command: "delete",
26
+ PK: item.PK,
27
+ SK: item.SK,
28
+ tableName,
29
+ tableType: getTableType(tableName),
30
+ input
31
+ });
32
+ }
35
33
  }
36
- }
37
34
  }
38
- }
39
- getItems() {
40
- return convert(this.items);
41
- }
35
+ getItems() {
36
+ return convert(this.items);
37
+ }
42
38
  }
39
+ export { BatchWriteCommandValue };
43
40
 
44
41
  //# sourceMappingURL=BatchWriteCommandValue.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["getTableType","convert","items","length","BatchWriteCommandValue","command","constructor","input","tableName","RequestItems","values","value","PutRequest","Item","item","push","PK","SK","tableType","DeleteRequest","Key","getItems"],"sources":["BatchWriteCommandValue.ts"],"sourcesContent":["import type { BatchWriteCommand } from \"@webiny/aws-sdk/client-dynamodb/index.js\";\nimport type { ICommandValue, ICommandValueItemExtended } from \"~/sync/types.js\";\nimport type { NonEmptyArray } from \"@webiny/api/types.js\";\nimport { getTableType } from \"~/sync/utils/getTableType.js\";\n\nconst convert = (\n items: ICommandValueItemExtended[]\n): NonEmptyArray<ICommandValueItemExtended> | null => {\n if (items.length === 0) {\n return null;\n }\n return items as NonEmptyArray<ICommandValueItemExtended>;\n};\n\nexport class BatchWriteCommandValue implements ICommandValue {\n public readonly command = \"batchWrite\";\n public readonly items: ICommandValueItemExtended[] = [];\n\n public constructor(input: BatchWriteCommand) {\n for (const tableName in input.input.RequestItems) {\n const values = input.input.RequestItems[tableName];\n for (const value of values) {\n if (value.PutRequest?.Item) {\n const item = value.PutRequest.Item;\n\n this.items.push({\n command: \"put\",\n PK: item.PK,\n SK: item.SK,\n tableName,\n tableType: getTableType(tableName),\n input\n });\n } else if (value.DeleteRequest?.Key) {\n const item = value.DeleteRequest.Key;\n\n this.items.push({\n command: \"delete\",\n PK: item.PK,\n SK: item.SK,\n tableName,\n tableType: getTableType(tableName),\n input\n });\n }\n }\n }\n }\n\n public getItems(): NonEmptyArray<ICommandValueItemExtended> | null {\n return convert(this.items);\n }\n}\n"],"mappings":"AAGA,SAASA,YAAY;AAErB,MAAMC,OAAO,GACTC,KAAkC,IACgB;EAClD,IAAIA,KAAK,CAACC,MAAM,KAAK,CAAC,EAAE;IACpB,OAAO,IAAI;EACf;EACA,OAAOD,KAAK;AAChB,CAAC;AAED,OAAO,MAAME,sBAAsB,CAA0B;EACzCC,OAAO,GAAG,YAAY;EACtBH,KAAK,GAAgC,EAAE;EAEhDI,WAAWA,CAACC,KAAwB,EAAE;IACzC,KAAK,MAAMC,SAAS,IAAID,KAAK,CAACA,KAAK,CAACE,YAAY,EAAE;MAC9C,MAAMC,MAAM,GAAGH,KAAK,CAACA,KAAK,CAACE,YAAY,CAACD,SAAS,CAAC;MAClD,KAAK,MAAMG,KAAK,IAAID,MAAM,EAAE;QACxB,IAAIC,KAAK,CAACC,UAAU,EAAEC,IAAI,EAAE;UACxB,MAAMC,IAAI,GAAGH,KAAK,CAACC,UAAU,CAACC,IAAI;UAElC,IAAI,CAACX,KAAK,CAACa,IAAI,CAAC;YACZV,OAAO,EAAE,KAAK;YACdW,EAAE,EAAEF,IAAI,CAACE,EAAE;YACXC,EAAE,EAAEH,IAAI,CAACG,EAAE;YACXT,SAAS;YACTU,SAAS,EAAElB,YAAY,CAACQ,SAAS,CAAC;YAClCD;UACJ,CAAC,CAAC;QACN,CAAC,MAAM,IAAII,KAAK,CAACQ,aAAa,EAAEC,GAAG,EAAE;UACjC,MAAMN,IAAI,GAAGH,KAAK,CAACQ,aAAa,CAACC,GAAG;UAEpC,IAAI,CAAClB,KAAK,CAACa,IAAI,CAAC;YACZV,OAAO,EAAE,QAAQ;YACjBW,EAAE,EAAEF,IAAI,CAACE,EAAE;YACXC,EAAE,EAAEH,IAAI,CAACG,EAAE;YACXT,SAAS;YACTU,SAAS,EAAElB,YAAY,CAACQ,SAAS,CAAC;YAClCD;UACJ,CAAC,CAAC;QACN;MACJ;IACJ;EACJ;EAEOc,QAAQA,CAAA,EAAoD;IAC/D,OAAOpB,OAAO,CAAC,IAAI,CAACC,KAAK,CAAC;EAC9B;AACJ","ignoreList":[]}
1
+ {"version":3,"file":"sync/handler/converter/commands/BatchWriteCommandValue.js","sources":["../../../../../src/sync/handler/converter/commands/BatchWriteCommandValue.ts"],"sourcesContent":["import type { BatchWriteCommand } from \"@webiny/aws-sdk/client-dynamodb/index.js\";\nimport type { ICommandValue, ICommandValueItemExtended } from \"~/sync/types.js\";\nimport type { NonEmptyArray } from \"@webiny/api/types.js\";\nimport { getTableType } from \"~/sync/utils/getTableType.js\";\n\nconst convert = (\n items: ICommandValueItemExtended[]\n): NonEmptyArray<ICommandValueItemExtended> | null => {\n if (items.length === 0) {\n return null;\n }\n return items as NonEmptyArray<ICommandValueItemExtended>;\n};\n\nexport class BatchWriteCommandValue implements ICommandValue {\n public readonly command = \"batchWrite\";\n public readonly items: ICommandValueItemExtended[] = [];\n\n public constructor(input: BatchWriteCommand) {\n for (const tableName in input.input.RequestItems) {\n const values = input.input.RequestItems[tableName];\n for (const value of values) {\n if (value.PutRequest?.Item) {\n const item = value.PutRequest.Item;\n\n this.items.push({\n command: \"put\",\n PK: item.PK,\n SK: item.SK,\n tableName,\n tableType: getTableType(tableName),\n input\n });\n } else if (value.DeleteRequest?.Key) {\n const item = value.DeleteRequest.Key;\n\n this.items.push({\n command: \"delete\",\n PK: item.PK,\n SK: item.SK,\n tableName,\n tableType: getTableType(tableName),\n input\n });\n }\n }\n }\n }\n\n public getItems(): NonEmptyArray<ICommandValueItemExtended> | null {\n return convert(this.items);\n }\n}\n"],"names":["convert","items","BatchWriteCommandValue","input","tableName","values","value","item","getTableType"],"mappings":";AAKA,MAAMA,UAAU,CACZC;IAEA,IAAIA,AAAiB,MAAjBA,MAAM,MAAM,EACZ,OAAO;IAEX,OAAOA;AACX;AAEO,MAAMC;IAIT,YAAmBC,KAAwB,CAAE;aAH7B,OAAO,GAAG;aACV,KAAK,GAAgC,EAAE;QAGnD,IAAK,MAAMC,aAAaD,MAAM,KAAK,CAAC,YAAY,CAAE;YAC9C,MAAME,SAASF,MAAM,KAAK,CAAC,YAAY,CAACC,UAAU;YAClD,KAAK,MAAME,SAASD,OAChB,IAAIC,MAAM,UAAU,EAAE,MAAM;gBACxB,MAAMC,OAAOD,MAAM,UAAU,CAAC,IAAI;gBAElC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;oBACZ,SAAS;oBACT,IAAIC,KAAK,EAAE;oBACX,IAAIA,KAAK,EAAE;oBACXH;oBACA,WAAWI,aAAaJ;oBACxBD;gBACJ;YACJ,OAAO,IAAIG,MAAM,aAAa,EAAE,KAAK;gBACjC,MAAMC,OAAOD,MAAM,aAAa,CAAC,GAAG;gBAEpC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;oBACZ,SAAS;oBACT,IAAIC,KAAK,EAAE;oBACX,IAAIA,KAAK,EAAE;oBACXH;oBACA,WAAWI,aAAaJ;oBACxBD;gBACJ;YACJ;QAER;IACJ;IAEO,WAA4D;QAC/D,OAAOH,QAAQ,IAAI,CAAC,KAAK;IAC7B;AACJ"}
@@ -1,20 +1,23 @@
1
1
  import { getTableType } from "../../../utils/getTableType.js";
2
- export class DeleteCommandValue {
3
- command = "delete";
4
- constructor(input) {
5
- const tableName = input.input.TableName;
6
- this.item = {
7
- command: this.command,
8
- PK: input.input.Key.PK,
9
- SK: input.input.Key.SK,
10
- tableName,
11
- tableType: getTableType(tableName),
12
- input
13
- };
14
- }
15
- getItems() {
16
- return [this.item];
17
- }
2
+ class DeleteCommandValue {
3
+ constructor(input){
4
+ this.command = "delete";
5
+ const tableName = input.input.TableName;
6
+ this.item = {
7
+ command: this.command,
8
+ PK: input.input.Key.PK,
9
+ SK: input.input.Key.SK,
10
+ tableName,
11
+ tableType: getTableType(tableName),
12
+ input
13
+ };
14
+ }
15
+ getItems() {
16
+ return [
17
+ this.item
18
+ ];
19
+ }
18
20
  }
21
+ export { DeleteCommandValue };
19
22
 
20
23
  //# sourceMappingURL=DeleteCommandValue.js.map