@webiny/api-sync-system 0.0.0-unstable.a4637c5ce6 → 0.0.0-unstable.a4f3e4ea8b
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.
- package/README.md +6 -108
- package/constants.js +2 -7
- package/constants.js.map +1 -1
- package/index.js +3 -40
- package/package.json +29 -26
- package/resolver/app/RecordHandler.d.ts +6 -6
- package/resolver/app/RecordHandler.js +84 -114
- package/resolver/app/RecordHandler.js.map +1 -1
- package/resolver/app/RecordsValidation.js +13 -24
- package/resolver/app/RecordsValidation.js.map +1 -1
- package/resolver/app/ResolverApplication.d.ts +1 -1
- package/resolver/app/ResolverApplication.js +27 -42
- package/resolver/app/ResolverApplication.js.map +1 -1
- package/resolver/app/abstractions/RecordHandler.d.ts +1 -1
- package/resolver/app/abstractions/RecordHandler.js +0 -7
- package/resolver/app/abstractions/RecordsValidation.d.ts +2 -2
- package/resolver/app/abstractions/RecordsValidation.js +0 -7
- package/resolver/app/abstractions/ResolverApplication.js +0 -7
- package/resolver/app/abstractions/ResolverRecord.d.ts +1 -1
- package/resolver/app/abstractions/ResolverRecord.js +0 -7
- package/resolver/app/bundler/BaseBundle.d.ts +6 -6
- package/resolver/app/bundler/BaseBundle.js +16 -22
- package/resolver/app/bundler/BaseBundle.js.map +1 -1
- package/resolver/app/bundler/Bundler.d.ts +1 -1
- package/resolver/app/bundler/Bundler.js +12 -25
- package/resolver/app/bundler/Bundler.js.map +1 -1
- package/resolver/app/bundler/Bundles.d.ts +2 -2
- package/resolver/app/bundler/Bundles.js +20 -33
- package/resolver/app/bundler/Bundles.js.map +1 -1
- package/resolver/app/bundler/CommandBundle.d.ts +1 -1
- package/resolver/app/bundler/CommandBundle.js +8 -25
- package/resolver/app/bundler/CommandBundle.js.map +1 -1
- package/resolver/app/bundler/TableBundle.d.ts +1 -1
- package/resolver/app/bundler/TableBundle.js +7 -22
- package/resolver/app/bundler/TableBundle.js.map +1 -1
- package/resolver/app/bundler/types.d.ts +2 -2
- package/resolver/app/bundler/types.js +0 -7
- package/resolver/app/commandHandler/DeleteCommandHandler.d.ts +3 -3
- package/resolver/app/commandHandler/DeleteCommandHandler.js +21 -35
- package/resolver/app/commandHandler/DeleteCommandHandler.js.map +1 -1
- package/resolver/app/commandHandler/PutCommandHandler.d.ts +4 -4
- package/resolver/app/commandHandler/PutCommandHandler.js +15 -28
- package/resolver/app/commandHandler/PutCommandHandler.js.map +1 -1
- package/resolver/app/commandHandler/delete.d.ts +1 -1
- package/resolver/app/commandHandler/delete.js +13 -21
- package/resolver/app/commandHandler/delete.js.map +1 -1
- package/resolver/app/commandHandler/put.d.ts +1 -1
- package/resolver/app/commandHandler/put.js +13 -21
- package/resolver/app/commandHandler/put.js.map +1 -1
- package/resolver/app/data/SourceDataContainer.d.ts +3 -3
- package/resolver/app/data/SourceDataContainer.js +27 -36
- package/resolver/app/data/SourceDataContainer.js.map +1 -1
- package/resolver/app/data/types.d.ts +2 -2
- package/resolver/app/data/types.js +0 -7
- package/resolver/app/fetcher/Fetcher.d.ts +3 -3
- package/resolver/app/fetcher/Fetcher.js +87 -121
- package/resolver/app/fetcher/Fetcher.js.map +1 -1
- package/resolver/app/fetcher/types.d.ts +2 -2
- package/resolver/app/fetcher/types.js +0 -7
- package/resolver/app/ingestor/Ingestor.d.ts +1 -1
- package/resolver/app/ingestor/Ingestor.js +26 -39
- package/resolver/app/ingestor/Ingestor.js.map +1 -1
- package/resolver/app/ingestor/IngestorResult.js +27 -39
- package/resolver/app/ingestor/IngestorResult.js.map +1 -1
- package/resolver/app/ingestor/types.d.ts +2 -2
- package/resolver/app/ingestor/types.js +0 -7
- package/resolver/app/storer/Storer.d.ts +3 -3
- package/resolver/app/storer/Storer.js +73 -95
- package/resolver/app/storer/Storer.js.map +1 -1
- package/resolver/app/storer/types.d.ts +2 -2
- package/resolver/app/storer/types.js +0 -7
- package/resolver/app/transform/TransformHandler.d.ts +4 -4
- package/resolver/app/transform/TransformHandler.js +46 -64
- package/resolver/app/transform/TransformHandler.js.map +1 -1
- package/resolver/app/transform/middleware.d.ts +1 -1
- package/resolver/app/transform/middleware.js +12 -25
- package/resolver/app/transform/middleware.js.map +1 -1
- package/resolver/app/utils/Retry.js +21 -32
- package/resolver/app/utils/Retry.js.map +1 -1
- package/resolver/app/utils/sleep.js +4 -12
- package/resolver/app/utils/sleep.js.map +1 -1
- package/resolver/app/validation/body.d.ts +25 -124
- package/resolver/app/validation/body.js +31 -44
- package/resolver/app/validation/body.js.map +1 -1
- package/resolver/app/validation/createJsonTransform.d.ts +1 -1
- package/resolver/app/validation/createJsonTransform.js +13 -22
- package/resolver/app/validation/createJsonTransform.js.map +1 -1
- package/resolver/app/validation/detail.d.ts +19 -72
- package/resolver/app/validation/detail.js +33 -46
- package/resolver/app/validation/detail.js.map +1 -1
- package/resolver/app/validation/event.d.ts +29 -188
- package/resolver/app/validation/event.js +21 -30
- package/resolver/app/validation/event.js.map +1 -1
- package/resolver/app/validation/numericString.d.ts +1 -1
- package/resolver/app/validation/numericString.js +9 -20
- package/resolver/app/validation/numericString.js.map +1 -1
- package/resolver/app/validation/system.d.ts +2 -14
- package/resolver/app/validation/system.js +9 -18
- package/resolver/app/validation/system.js.map +1 -1
- package/resolver/createEventHandlerPlugin.d.ts +2 -1
- package/resolver/createEventHandlerPlugin.js +85 -121
- package/resolver/createEventHandlerPlugin.js.map +1 -1
- package/resolver/createResolverHandler.d.ts +1 -1
- package/resolver/createResolverHandler.js +60 -75
- package/resolver/createResolverHandler.js.map +1 -1
- package/resolver/deployment/Deployment.d.ts +2 -3
- package/resolver/deployment/Deployment.js +27 -44
- package/resolver/deployment/Deployment.js.map +1 -1
- package/resolver/deployment/Deployments.js +19 -30
- package/resolver/deployment/Deployments.js.map +1 -1
- package/resolver/deployment/DeploymentsFetcher.js +82 -102
- package/resolver/deployment/DeploymentsFetcher.js.map +1 -1
- package/resolver/deployment/types.d.ts +4 -6
- package/resolver/deployment/types.js +0 -7
- package/resolver/lambda/LambdaTrigger.js +25 -34
- package/resolver/lambda/LambdaTrigger.js.map +1 -1
- package/resolver/plugins/CommandHandlerPlugin.d.ts +3 -3
- package/resolver/plugins/CommandHandlerPlugin.js +17 -24
- package/resolver/plugins/CommandHandlerPlugin.js.map +1 -1
- package/resolver/plugins/StorerAfterEachPlugin.d.ts +2 -2
- package/resolver/plugins/StorerAfterEachPlugin.js +21 -29
- package/resolver/plugins/StorerAfterEachPlugin.js.map +1 -1
- package/resolver/plugins/TransformRecordPlugin.d.ts +3 -3
- package/resolver/plugins/TransformRecordPlugin.js +20 -27
- package/resolver/plugins/TransformRecordPlugin.js.map +1 -1
- package/resolver/recordTypes/fileManager/CopyFile.js +44 -74
- package/resolver/recordTypes/fileManager/CopyFile.js.map +1 -1
- package/resolver/recordTypes/fileManager/DeleteFile.d.ts +1 -1
- package/resolver/recordTypes/fileManager/DeleteFile.js +40 -65
- package/resolver/recordTypes/fileManager/DeleteFile.js.map +1 -1
- package/resolver/recordTypes/fileManager/fileManager.d.ts +1 -1
- package/resolver/recordTypes/fileManager/fileManager.js +7 -12
- package/resolver/recordTypes/fileManager/fileManager.js.map +1 -1
- package/resolver/recordTypes/fileManager/fileManagerOnDelete.d.ts +1 -1
- package/resolver/recordTypes/fileManager/fileManagerOnDelete.js +27 -45
- package/resolver/recordTypes/fileManager/fileManagerOnDelete.js.map +1 -1
- package/resolver/recordTypes/fileManager/fileManagerOnPut.d.ts +1 -1
- package/resolver/recordTypes/fileManager/fileManagerOnPut.js +27 -45
- package/resolver/recordTypes/fileManager/fileManagerOnPut.js.map +1 -1
- package/resolver/recordTypes/fileManager/shouldBeHandled.d.ts +1 -1
- package/resolver/recordTypes/fileManager/shouldBeHandled.js +10 -34
- package/resolver/recordTypes/fileManager/shouldBeHandled.js.map +1 -1
- package/resolver/recordTypes/fileManager/types.d.ts +2 -2
- package/resolver/recordTypes/fileManager/types.js +0 -7
- package/resolver/recordTypes/users/CopyUser.d.ts +2 -2
- package/resolver/recordTypes/users/CopyUser.js +44 -61
- package/resolver/recordTypes/users/CopyUser.js.map +1 -1
- package/resolver/recordTypes/users/DeleteUser.d.ts +2 -2
- package/resolver/recordTypes/users/DeleteUser.js +40 -58
- package/resolver/recordTypes/users/DeleteUser.js.map +1 -1
- package/resolver/recordTypes/users/shouldBeHandled.d.ts +1 -1
- package/resolver/recordTypes/users/shouldBeHandled.js +10 -33
- package/resolver/recordTypes/users/shouldBeHandled.js.map +1 -1
- package/resolver/recordTypes/users/types.d.ts +1 -1
- package/resolver/recordTypes/users/types.js +0 -7
- package/resolver/recordTypes/users/users.js +7 -12
- package/resolver/recordTypes/users/users.js.map +1 -1
- package/resolver/recordTypes/users/usersOnDelete.d.ts +2 -2
- package/resolver/recordTypes/users/usersOnDelete.js +26 -44
- package/resolver/recordTypes/users/usersOnDelete.js.map +1 -1
- package/resolver/recordTypes/users/usersOnPut.d.ts +2 -2
- package/resolver/recordTypes/users/usersOnPut.js +27 -45
- package/resolver/recordTypes/users/usersOnPut.js.map +1 -1
- package/sync/FilterOutRecord.d.ts +2 -2
- package/sync/FilterOutRecord.js +8 -24
- package/sync/FilterOutRecord.js.map +1 -1
- package/sync/attachToDynamoDbDocument.d.ts +1 -1
- package/sync/attachToDynamoDbDocument.js +48 -75
- package/sync/attachToDynamoDbDocument.js.map +1 -1
- package/sync/createHandler.js +44 -60
- package/sync/createHandler.js.map +1 -1
- package/sync/createSendDataToEventBridgeOnRequestEnd.js +34 -46
- package/sync/createSendDataToEventBridgeOnRequestEnd.js.map +1 -1
- package/sync/createSyncSystem.d.ts +1 -1
- package/sync/createSyncSystem.js +27 -36
- package/sync/createSyncSystem.js.map +1 -1
- package/sync/filter/createDefaultFilterOutRecordPlugins.d.ts +1 -1
- package/sync/filter/createDefaultFilterOutRecordPlugins.js +37 -86
- package/sync/filter/createDefaultFilterOutRecordPlugins.js.map +1 -1
- package/sync/handler/Handler.d.ts +2 -2
- package/sync/handler/Handler.js +66 -86
- package/sync/handler/Handler.js.map +1 -1
- package/sync/handler/HandlerConverter.js +20 -36
- package/sync/handler/HandlerConverter.js.map +1 -1
- package/sync/handler/converter/BatchGetCommandConverter.js +13 -20
- package/sync/handler/converter/BatchGetCommandConverter.js.map +1 -1
- package/sync/handler/converter/BatchWriteCommandConverter.js +13 -20
- package/sync/handler/converter/BatchWriteCommandConverter.js.map +1 -1
- package/sync/handler/converter/DeleteCommandConverter.js +13 -20
- package/sync/handler/converter/DeleteCommandConverter.js.map +1 -1
- package/sync/handler/converter/GetCommandConverter.js +13 -20
- package/sync/handler/converter/GetCommandConverter.js.map +1 -1
- package/sync/handler/converter/PutCommandConverter.js +13 -20
- package/sync/handler/converter/PutCommandConverter.js.map +1 -1
- package/sync/handler/converter/QueryCommandConverter.js +13 -20
- package/sync/handler/converter/QueryCommandConverter.js.map +1 -1
- package/sync/handler/converter/ScanCommandConverter.js +13 -20
- package/sync/handler/converter/ScanCommandConverter.js.map +1 -1
- package/sync/handler/converter/UpdateCommandConverter.js +13 -20
- package/sync/handler/converter/UpdateCommandConverter.js.map +1 -1
- package/sync/handler/converter/commands/BatchWriteCommandValue.d.ts +2 -2
- package/sync/handler/converter/commands/BatchWriteCommandValue.js +34 -44
- package/sync/handler/converter/commands/BatchWriteCommandValue.js.map +1 -1
- package/sync/handler/converter/commands/DeleteCommandValue.d.ts +2 -2
- package/sync/handler/converter/commands/DeleteCommandValue.js +19 -23
- package/sync/handler/converter/commands/DeleteCommandValue.js.map +1 -1
- package/sync/handler/converter/commands/NullCommandValue.d.ts +1 -1
- package/sync/handler/converter/commands/NullCommandValue.js +7 -14
- package/sync/handler/converter/commands/NullCommandValue.js.map +1 -1
- package/sync/handler/converter/commands/PutCommandValue.d.ts +2 -2
- package/sync/handler/converter/commands/PutCommandValue.js +19 -23
- package/sync/handler/converter/commands/PutCommandValue.js.map +1 -1
- package/sync/handler/converter/commands/UpdateCommandValue.d.ts +2 -2
- package/sync/handler/converter/commands/UpdateCommandValue.js +19 -23
- package/sync/handler/converter/commands/UpdateCommandValue.js.map +1 -1
- package/sync/handler/types.d.ts +3 -3
- package/sync/handler/types.js +0 -7
- package/sync/plugins/FilterOutRecordPlugin.d.ts +1 -1
- package/sync/plugins/FilterOutRecordPlugin.js +18 -28
- package/sync/plugins/FilterOutRecordPlugin.js.map +1 -1
- package/sync/requestPlugin.d.ts +1 -1
- package/sync/requestPlugin.js +39 -55
- package/sync/requestPlugin.js.map +1 -1
- package/sync/types.js +0 -7
- package/sync/utils/getTableType.js +11 -19
- package/sync/utils/getTableType.js.map +1 -1
- package/sync/utils/manifest.d.ts +3 -7
- package/sync/utils/manifest.js +30 -47
- package/sync/utils/manifest.js.map +1 -1
- package/sync/utils/validateSystemInput.d.ts +1 -1
- package/sync/utils/validateSystemInput.js +22 -37
- package/sync/utils/validateSystemInput.js.map +1 -1
- package/types.d.ts +3 -5
- package/types.js +6 -12
- package/types.js.map +1 -1
- package/utils/createSystemName.js +5 -10
- package/utils/createSystemName.js.map +1 -1
- package/worker/actions/copyFile/CopyFile.js +185 -268
- package/worker/actions/copyFile/CopyFile.js.map +1 -1
- package/worker/actions/copyFile/copyFileAction.d.ts +1 -1
- package/worker/actions/copyFile/copyFileAction.js +30 -45
- package/worker/actions/copyFile/copyFileAction.js.map +1 -1
- package/worker/actions/copyFile/copyFileSchema.d.ts +6 -38
- package/worker/actions/copyFile/copyFileSchema.js +14 -23
- package/worker/actions/copyFile/copyFileSchema.js.map +1 -1
- package/worker/actions/copyFile/types.js +0 -7
- package/worker/actions/createUser/CreateUser.d.ts +1 -1
- package/worker/actions/createUser/CreateUser.js +53 -83
- package/worker/actions/createUser/CreateUser.js.map +1 -1
- package/worker/actions/createUser/createUserAction.d.ts +2 -2
- package/worker/actions/createUser/createUserAction.js +28 -39
- package/worker/actions/createUser/createUserAction.js.map +1 -1
- package/worker/actions/createUser/createUserSchema.d.ts +6 -38
- package/worker/actions/createUser/createUserSchema.js +14 -23
- package/worker/actions/createUser/createUserSchema.js.map +1 -1
- package/worker/actions/createUser/types.js +0 -7
- package/worker/actions/deleteFile/DeleteFile.js +52 -74
- package/worker/actions/deleteFile/DeleteFile.js.map +1 -1
- package/worker/actions/deleteFile/deleteFileAction.d.ts +1 -1
- package/worker/actions/deleteFile/deleteFileAction.js +25 -40
- package/worker/actions/deleteFile/deleteFileAction.js.map +1 -1
- package/worker/actions/deleteFile/deleteFileSchema.d.ts +6 -38
- package/worker/actions/deleteFile/deleteFileSchema.js +14 -23
- package/worker/actions/deleteFile/deleteFileSchema.js.map +1 -1
- package/worker/actions/deleteFile/types.js +0 -7
- package/worker/actions/deleteUser/DeleteUser.d.ts +2 -2
- package/worker/actions/deleteUser/DeleteUser.js +39 -60
- package/worker/actions/deleteUser/DeleteUser.js.map +1 -1
- package/worker/actions/deleteUser/deleteUserAction.d.ts +1 -1
- package/worker/actions/deleteUser/deleteUserAction.js +26 -37
- package/worker/actions/deleteUser/deleteUserAction.js.map +1 -1
- package/worker/actions/deleteUser/deleteUserSchema.d.ts +5 -23
- package/worker/actions/deleteUser/deleteUserSchema.js +13 -22
- package/worker/actions/deleteUser/deleteUserSchema.js.map +1 -1
- package/worker/actions/deleteUser/types.js +0 -7
- package/worker/actions/logValidationError.js +6 -14
- package/worker/actions/logValidationError.js.map +1 -1
- package/worker/actions/removeCognitoUserAttributes.js +9 -22
- package/worker/actions/removeCognitoUserAttributes.js.map +1 -1
- package/worker/actions/updateUser/UpdateUser.d.ts +1 -1
- package/worker/actions/updateUser/UpdateUser.js +50 -74
- package/worker/actions/updateUser/UpdateUser.js.map +1 -1
- package/worker/actions/updateUser/types.js +0 -7
- package/worker/actions/updateUser/updateUserAction.d.ts +2 -2
- package/worker/actions/updateUser/updateUserAction.js +28 -39
- package/worker/actions/updateUser/updateUserAction.js.map +1 -1
- package/worker/actions/updateUser/updateUserSchema.d.ts +6 -38
- package/worker/actions/updateUser/updateUserSchema.js +14 -23
- package/worker/actions/updateUser/updateUserSchema.js.map +1 -1
- package/worker/createWorkerHandler.js +32 -45
- package/worker/createWorkerHandler.js.map +1 -1
- package/worker/handler/WorkerActionHandler.d.ts +2 -2
- package/worker/handler/WorkerActionHandler.js +19 -28
- package/worker/handler/WorkerActionHandler.js.map +1 -1
- package/worker/handler/eventHandler.js +18 -27
- package/worker/handler/eventHandler.js.map +1 -1
- package/worker/plugins/WorkerActionPlugin.d.ts +1 -1
- package/worker/plugins/WorkerActionPlugin.js +18 -25
- package/worker/plugins/WorkerActionPlugin.js.map +1 -1
- package/worker/types.js +0 -7
- package/index.js.map +0 -1
- package/resolver/app/abstractions/RecordHandler.js.map +0 -1
- package/resolver/app/abstractions/RecordsValidation.js.map +0 -1
- package/resolver/app/abstractions/ResolverApplication.js.map +0 -1
- package/resolver/app/abstractions/ResolverRecord.js.map +0 -1
- package/resolver/app/bundler/types.js.map +0 -1
- package/resolver/app/data/types.js.map +0 -1
- package/resolver/app/fetcher/types.js.map +0 -1
- package/resolver/app/ingestor/types.js.map +0 -1
- package/resolver/app/storer/types.js.map +0 -1
- package/resolver/deployment/types.js.map +0 -1
- package/resolver/recordTypes/fileManager/types.js.map +0 -1
- package/resolver/recordTypes/users/types.js.map +0 -1
- package/sync/handler/types.js.map +0 -1
- package/sync/types.js.map +0 -1
- package/worker/actions/copyFile/types.js.map +0 -1
- package/worker/actions/createUser/types.js.map +0 -1
- package/worker/actions/deleteFile/types.js.map +0 -1
- package/worker/actions/deleteUser/types.js.map +0 -1
- package/worker/actions/updateUser/types.js.map +0 -1
- package/worker/types.js.map +0 -1
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { DynamoDBClientConfig, DynamoDBDocument } from "@webiny/aws-sdk/client-dynamodb/index.js";
|
|
2
|
+
import type { Reply as FastifyReply } from "@webiny/handler/types.js";
|
|
2
3
|
import { SQSEventHandler } from "@webiny/handler-aws/sqs/plugins/SQSEventHandler.js";
|
|
3
4
|
export interface ICreateEventHandlerPluginParams {
|
|
4
5
|
tableName: string | undefined;
|
|
@@ -7,4 +8,4 @@ export interface ICreateEventHandlerPluginParams {
|
|
|
7
8
|
/**
|
|
8
9
|
* TODO maybe add logger?
|
|
9
10
|
*/
|
|
10
|
-
export declare const createEventHandlerPlugin: (params: ICreateEventHandlerPluginParams) => SQSEventHandler<
|
|
11
|
+
export declare const createEventHandlerPlugin: (params: ICreateEventHandlerPluginParams) => SQSEventHandler<FastifyReply>;
|
|
@@ -1,127 +1,91 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
}
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
const transformHandler = new _TransformHandler.TransformHandler({
|
|
78
|
-
plugins: context.plugins
|
|
79
|
-
});
|
|
80
|
-
const recordHandler = (0, _RecordHandler.createRecordHandler)({
|
|
81
|
-
plugins: context.plugins,
|
|
82
|
-
fetcher,
|
|
83
|
-
storer,
|
|
84
|
-
deployments,
|
|
85
|
-
transformHandler,
|
|
86
|
-
commandBundler: (0, _Bundler.createBundler)({
|
|
87
|
-
createBundles: () => {
|
|
88
|
-
return (0, _Bundles.createBundles)({
|
|
89
|
-
createBundle: _CommandBundle.createCommandBundle
|
|
1
|
+
import { createEventHandler } from "@webiny/handler-aws/sqs/index.js";
|
|
2
|
+
import { createResolverApp } from "./app/ResolverApplication.js";
|
|
3
|
+
import { convertException } from "@webiny/utils";
|
|
4
|
+
import { createRecordHandler } from "./app/RecordHandler.js";
|
|
5
|
+
import { createFetcher } from "./app/fetcher/Fetcher.js";
|
|
6
|
+
import { createDeploymentsFetcher } from "./deployment/DeploymentsFetcher.js";
|
|
7
|
+
import { WebinyError } from "@webiny/error";
|
|
8
|
+
import { createBundler } from "./app/bundler/Bundler.js";
|
|
9
|
+
import { createBundles } from "./app/bundler/Bundles.js";
|
|
10
|
+
import { createCommandBundle } from "./app/bundler/CommandBundle.js";
|
|
11
|
+
import { createTableBundle } from "./app/bundler/TableBundle.js";
|
|
12
|
+
import { TransformHandler } from "./app/transform/TransformHandler.js";
|
|
13
|
+
import { SQSEventHandler } from "@webiny/handler-aws/sqs/plugins/SQSEventHandler.js";
|
|
14
|
+
import { createStorer } from "./app/storer/Storer.js";
|
|
15
|
+
import { StorerAfterEachPlugin } from "./plugins/StorerAfterEachPlugin.js";
|
|
16
|
+
import { SourceDataContainer } from "./app/data/SourceDataContainer.js";
|
|
17
|
+
const createEventHandlerPlugin = (params)=>{
|
|
18
|
+
const { createDocumentClient, tableName } = params;
|
|
19
|
+
const plugin = createEventHandler(async ({ event, context, reply })=>{
|
|
20
|
+
if (!tableName) throw new WebinyError({
|
|
21
|
+
message: "Table name variable is not set."
|
|
22
|
+
});
|
|
23
|
+
try {
|
|
24
|
+
const fetcher = createFetcher({
|
|
25
|
+
maxRetries: 10,
|
|
26
|
+
retryDelay: 1000,
|
|
27
|
+
createDocumentClient: (deployment)=>createDocumentClient({
|
|
28
|
+
region: deployment.region
|
|
29
|
+
})
|
|
30
|
+
});
|
|
31
|
+
const deploymentsFetcher = createDeploymentsFetcher({
|
|
32
|
+
client: createDocumentClient({
|
|
33
|
+
region: process.env.AWS_REGION
|
|
34
|
+
}),
|
|
35
|
+
table: tableName
|
|
36
|
+
});
|
|
37
|
+
const deployments = await deploymentsFetcher.fetch();
|
|
38
|
+
const storerAfterEachPlugins = context.plugins.byType(StorerAfterEachPlugin.type);
|
|
39
|
+
const storer = createStorer({
|
|
40
|
+
createDocumentClient: (deployment)=>createDocumentClient({
|
|
41
|
+
region: deployment.region
|
|
42
|
+
}),
|
|
43
|
+
afterEach: async (params)=>{
|
|
44
|
+
for (const plugin of storerAfterEachPlugins)if (plugin.canHandle(params)) await plugin.handle(params);
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
const transformHandler = new TransformHandler({
|
|
48
|
+
plugins: context.plugins
|
|
49
|
+
});
|
|
50
|
+
const recordHandler = createRecordHandler({
|
|
51
|
+
plugins: context.plugins,
|
|
52
|
+
fetcher,
|
|
53
|
+
storer,
|
|
54
|
+
deployments,
|
|
55
|
+
transformHandler,
|
|
56
|
+
commandBundler: createBundler({
|
|
57
|
+
createBundles: ()=>createBundles({
|
|
58
|
+
createBundle: createCommandBundle
|
|
59
|
+
})
|
|
60
|
+
}),
|
|
61
|
+
tableBundler: createBundler({
|
|
62
|
+
createBundles: ()=>createBundles({
|
|
63
|
+
createBundle: createTableBundle
|
|
64
|
+
})
|
|
65
|
+
}),
|
|
66
|
+
createSourceDataContainer: ()=>SourceDataContainer.create()
|
|
67
|
+
});
|
|
68
|
+
const app = createResolverApp({
|
|
69
|
+
recordHandler,
|
|
70
|
+
deployments
|
|
71
|
+
});
|
|
72
|
+
await app.resolve({
|
|
73
|
+
records: event.Records
|
|
74
|
+
});
|
|
75
|
+
return reply.send({
|
|
76
|
+
ok: true
|
|
90
77
|
});
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
createBundle: _TableBundle.createTableBundle
|
|
78
|
+
} catch (ex) {
|
|
79
|
+
const error = convertException(ex);
|
|
80
|
+
console.error(error);
|
|
81
|
+
return reply.send({
|
|
82
|
+
error
|
|
97
83
|
});
|
|
98
|
-
}
|
|
99
|
-
}),
|
|
100
|
-
createSourceDataContainer: () => {
|
|
101
|
-
return _SourceDataContainer.SourceDataContainer.create();
|
|
102
84
|
}
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
deployments
|
|
107
|
-
});
|
|
108
|
-
await app.resolve({
|
|
109
|
-
records: event.Records
|
|
110
|
-
});
|
|
111
|
-
return reply.send({
|
|
112
|
-
ok: true
|
|
113
|
-
});
|
|
114
|
-
} catch (ex) {
|
|
115
|
-
const error = (0, _utils.convertException)(ex);
|
|
116
|
-
console.error(error);
|
|
117
|
-
return reply.send({
|
|
118
|
-
error
|
|
119
|
-
});
|
|
120
|
-
}
|
|
121
|
-
});
|
|
122
|
-
plugin.name = `${_SQSEventHandler.SQSEventHandler.type}.syncResolver`;
|
|
123
|
-
return plugin;
|
|
85
|
+
});
|
|
86
|
+
plugin.name = `${SQSEventHandler.type}.syncResolver`;
|
|
87
|
+
return plugin;
|
|
124
88
|
};
|
|
125
|
-
|
|
89
|
+
export { createEventHandlerPlugin };
|
|
126
90
|
|
|
127
91
|
//# sourceMappingURL=createEventHandlerPlugin.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"resolver/createEventHandlerPlugin.js","sources":["../../src/resolver/createEventHandlerPlugin.ts"],"sourcesContent":["import { createEventHandler as createSQSEventHandler } from \"@webiny/handler-aws/sqs/index.js\";\nimport { createResolverApp } from \"./app/ResolverApplication.js\";\nimport { convertException } from \"@webiny/utils\";\nimport { createRecordHandler } from \"./app/RecordHandler.js\";\nimport { createFetcher } from \"~/resolver/app/fetcher/Fetcher.js\";\nimport { createDeploymentsFetcher } from \"~/resolver/deployment/DeploymentsFetcher.js\";\nimport { WebinyError } from \"@webiny/error\";\nimport type {\n DynamoDBClientConfig,\n DynamoDBDocument\n} from \"@webiny/aws-sdk/client-dynamodb/index.js\";\nimport { createBundler } from \"~/resolver/app/bundler/Bundler.js\";\nimport { createBundles } from \"~/resolver/app/bundler/Bundles.js\";\nimport { createCommandBundle } from \"~/resolver/app/bundler/CommandBundle.js\";\nimport { createTableBundle } from \"~/resolver/app/bundler/TableBundle.js\";\nimport { TransformHandler } from \"~/resolver/app/transform/TransformHandler.js\";\nimport type { Reply as FastifyReply } from \"@webiny/handler/types.js\";\nimport { SQSEventHandler } from \"@webiny/handler-aws/sqs/plugins/SQSEventHandler.js\";\nimport { createStorer } from \"./app/storer/Storer.js\";\nimport { StorerAfterEachPlugin } from \"./plugins/StorerAfterEachPlugin.js\";\nimport { SourceDataContainer } from \"~/resolver/app/data/SourceDataContainer.js\";\n\nexport interface ICreateEventHandlerPluginParams {\n tableName: string | undefined;\n createDocumentClient: (params: DynamoDBClientConfig) => Pick<DynamoDBDocument, \"send\">;\n}\n/**\n * TODO maybe add logger?\n */\nexport const createEventHandlerPlugin = (params: ICreateEventHandlerPluginParams) => {\n const { createDocumentClient, tableName } = params;\n\n const plugin = createSQSEventHandler(\n async ({ event, context, reply }): Promise<FastifyReply> => {\n if (!tableName) {\n throw new WebinyError({\n message: \"Table name variable is not set.\"\n });\n }\n try {\n const fetcher = createFetcher({\n maxRetries: 10,\n retryDelay: 1000,\n createDocumentClient: deployment => {\n return createDocumentClient({\n region: deployment.region\n });\n }\n });\n\n const deploymentsFetcher = createDeploymentsFetcher({\n client: createDocumentClient({\n region: process.env.AWS_REGION\n }),\n table: tableName\n });\n /**\n * Fetch all possible deployments, out of which we will filter out the deployment that the records came from.\n */\n const deployments = await deploymentsFetcher.fetch();\n\n const storerAfterEachPlugins = context.plugins.byType<StorerAfterEachPlugin>(\n StorerAfterEachPlugin.type\n );\n\n const storer = createStorer({\n createDocumentClient: deployment => {\n return createDocumentClient({\n region: deployment.region\n });\n },\n afterEach: async params => {\n for (const plugin of storerAfterEachPlugins) {\n if (!plugin.canHandle(params)) {\n continue;\n }\n await plugin.handle(params);\n }\n }\n });\n\n const transformHandler = new TransformHandler({\n plugins: context.plugins\n });\n\n const recordHandler = createRecordHandler({\n plugins: context.plugins,\n fetcher,\n storer,\n deployments,\n transformHandler,\n commandBundler: createBundler({\n createBundles: () => {\n return createBundles({\n createBundle: createCommandBundle\n });\n }\n }),\n tableBundler: createBundler({\n createBundles: () => {\n return createBundles({\n createBundle: createTableBundle\n });\n }\n }),\n createSourceDataContainer: () => {\n return SourceDataContainer.create();\n }\n });\n const app = createResolverApp({\n recordHandler,\n deployments\n });\n\n await app.resolve({\n records: event.Records\n });\n return reply.send({\n ok: true\n });\n } catch (ex) {\n const error = convertException(ex);\n console.error(error);\n return reply.send({\n error\n });\n }\n }\n );\n\n plugin.name = `${SQSEventHandler.type}.syncResolver`;\n\n return plugin;\n};\n"],"names":["createEventHandlerPlugin","params","createDocumentClient","tableName","plugin","createSQSEventHandler","event","context","reply","WebinyError","fetcher","createFetcher","deployment","deploymentsFetcher","createDeploymentsFetcher","process","deployments","storerAfterEachPlugins","StorerAfterEachPlugin","storer","createStorer","transformHandler","TransformHandler","recordHandler","createRecordHandler","createBundler","createBundles","createCommandBundle","createTableBundle","SourceDataContainer","app","createResolverApp","ex","error","convertException","console","SQSEventHandler"],"mappings":";;;;;;;;;;;;;;;;AA6BO,MAAMA,2BAA2B,CAACC;IACrC,MAAM,EAAEC,oBAAoB,EAAEC,SAAS,EAAE,GAAGF;IAE5C,MAAMG,SAASC,mBACX,OAAO,EAAEC,KAAK,EAAEC,OAAO,EAAEC,KAAK,EAAE;QAC5B,IAAI,CAACL,WACD,MAAM,IAAIM,YAAY;YAClB,SAAS;QACb;QAEJ,IAAI;YACA,MAAMC,UAAUC,cAAc;gBAC1B,YAAY;gBACZ,YAAY;gBACZ,sBAAsBC,CAAAA,aACXV,qBAAqB;wBACxB,QAAQU,WAAW,MAAM;oBAC7B;YAER;YAEA,MAAMC,qBAAqBC,yBAAyB;gBAChD,QAAQZ,qBAAqB;oBACzB,QAAQa,QAAQ,GAAG,CAAC,UAAU;gBAClC;gBACA,OAAOZ;YACX;YAIA,MAAMa,cAAc,MAAMH,mBAAmB,KAAK;YAElD,MAAMI,yBAAyBV,QAAQ,OAAO,CAAC,MAAM,CACjDW,sBAAsB,IAAI;YAG9B,MAAMC,SAASC,aAAa;gBACxB,sBAAsBR,CAAAA,aACXV,qBAAqB;wBACxB,QAAQU,WAAW,MAAM;oBAC7B;gBAEJ,WAAW,OAAMX;oBACb,KAAK,MAAMG,UAAUa,uBACjB,IAAKb,OAAO,SAAS,CAACH,SAGtB,MAAMG,OAAO,MAAM,CAACH;gBAE5B;YACJ;YAEA,MAAMoB,mBAAmB,IAAIC,iBAAiB;gBAC1C,SAASf,QAAQ,OAAO;YAC5B;YAEA,MAAMgB,gBAAgBC,oBAAoB;gBACtC,SAASjB,QAAQ,OAAO;gBACxBG;gBACAS;gBACAH;gBACAK;gBACA,gBAAgBI,cAAc;oBAC1B,eAAe,IACJC,cAAc;4BACjB,cAAcC;wBAClB;gBAER;gBACA,cAAcF,cAAc;oBACxB,eAAe,IACJC,cAAc;4BACjB,cAAcE;wBAClB;gBAER;gBACA,2BAA2B,IAChBC,oBAAoB,MAAM;YAEzC;YACA,MAAMC,MAAMC,kBAAkB;gBAC1BR;gBACAP;YACJ;YAEA,MAAMc,IAAI,OAAO,CAAC;gBACd,SAASxB,MAAM,OAAO;YAC1B;YACA,OAAOE,MAAM,IAAI,CAAC;gBACd,IAAI;YACR;QACJ,EAAE,OAAOwB,IAAI;YACT,MAAMC,QAAQC,iBAAiBF;YAC/BG,QAAQ,KAAK,CAACF;YACd,OAAOzB,MAAM,IAAI,CAAC;gBACdyB;YACJ;QACJ;IACJ;IAGJ7B,OAAO,IAAI,GAAG,GAAGgC,gBAAgB,IAAI,CAAC,aAAa,CAAC;IAEpD,OAAOhC;AACX"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { HandlerCallable, HandlerParams } from "@webiny/handler-aws/sqs";
|
|
1
|
+
import type { HandlerCallable, HandlerParams } from "@webiny/handler-aws/sqs/index.js";
|
|
2
2
|
import type { TransformRecordPlugin } from "./plugins/TransformRecordPlugin.js";
|
|
3
3
|
import type { CommandHandlerPlugin } from "./plugins/CommandHandlerPlugin.js";
|
|
4
4
|
import type { DynamoDBClientConfig, DynamoDBDocument } from "@webiny/aws-sdk/client-dynamodb/index.js";
|
|
@@ -1,79 +1,64 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
}
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
/**
|
|
20
|
-
* Handler for the Sync System Resolver - based on SQS handler.
|
|
21
|
-
*/
|
|
22
|
-
const createResolverHandler = params => {
|
|
23
|
-
const awsWorkerLambdaArn = params.awsWorkerLambdaArn || process.env.AWS_SYNC_WORKER_LAMBDA_ARN;
|
|
24
|
-
if (!awsWorkerLambdaArn) {
|
|
25
|
-
const message = `Missing "process.env.AWS_SYNC_WORKER_LAMBDA_ARN".`;
|
|
26
|
-
console.error(message);
|
|
27
|
-
throw new Error(message);
|
|
28
|
-
}
|
|
29
|
-
const lambdaTrigger = new _LambdaTrigger.LambdaTrigger({
|
|
30
|
-
arn: awsWorkerLambdaArn,
|
|
31
|
-
createLambdaClient: params.createLambdaClient
|
|
32
|
-
});
|
|
33
|
-
const copyFile = new _CopyFile.CopyFile({
|
|
34
|
-
createS3Client: params.createS3Client,
|
|
35
|
-
getLambdaTrigger: () => {
|
|
36
|
-
return lambdaTrigger;
|
|
37
|
-
}
|
|
38
|
-
});
|
|
39
|
-
const deleteFile = new _DeleteFile.DeleteFile({
|
|
40
|
-
createS3Client: params.createS3Client,
|
|
41
|
-
getLambdaTrigger: () => {
|
|
42
|
-
return lambdaTrigger;
|
|
43
|
-
}
|
|
44
|
-
});
|
|
45
|
-
const copyUser = new _CopyUser.CopyUser({
|
|
46
|
-
createCognitoIdentityProviderClient: params.createCognitoIdentityProviderClient,
|
|
47
|
-
getLambdaTrigger: () => {
|
|
48
|
-
return lambdaTrigger;
|
|
49
|
-
}
|
|
50
|
-
});
|
|
51
|
-
const deleteUser = new _DeleteUser.DeleteUser({
|
|
52
|
-
createCognitoIdentityProviderClient: params.createCognitoIdentityProviderClient,
|
|
53
|
-
getLambdaTrigger: () => {
|
|
54
|
-
return lambdaTrigger;
|
|
1
|
+
import { createHandler } from "@webiny/handler-aws/sqs/index.js";
|
|
2
|
+
import { PluginsContainer } from "@webiny/plugins";
|
|
3
|
+
import { createEventHandlerPlugin } from "./createEventHandlerPlugin.js";
|
|
4
|
+
import { createPutCommandHandlerPlugin } from "./app/commandHandler/put.js";
|
|
5
|
+
import { createDeleteCommandHandlerPlugin } from "./app/commandHandler/delete.js";
|
|
6
|
+
import { createFileManagerPlugins } from "./recordTypes/fileManager/fileManager.js";
|
|
7
|
+
import { LambdaTrigger } from "./lambda/LambdaTrigger.js";
|
|
8
|
+
import { CopyFile } from "./recordTypes/fileManager/CopyFile.js";
|
|
9
|
+
import { DeleteFile } from "./recordTypes/fileManager/DeleteFile.js";
|
|
10
|
+
import { createUsersPlugins } from "./recordTypes/users/users.js";
|
|
11
|
+
import { CopyUser } from "./recordTypes/users/CopyUser.js";
|
|
12
|
+
import { DeleteUser } from "./recordTypes/users/DeleteUser.js";
|
|
13
|
+
const createResolverHandler = (params)=>{
|
|
14
|
+
const awsWorkerLambdaArn = params.awsWorkerLambdaArn || process.env.AWS_SYNC_WORKER_LAMBDA_ARN;
|
|
15
|
+
if (!awsWorkerLambdaArn) {
|
|
16
|
+
const message = 'Missing "process.env.AWS_SYNC_WORKER_LAMBDA_ARN".';
|
|
17
|
+
console.error(message);
|
|
18
|
+
throw new Error(message);
|
|
55
19
|
}
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
copyFile
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
20
|
+
const lambdaTrigger = new LambdaTrigger({
|
|
21
|
+
arn: awsWorkerLambdaArn,
|
|
22
|
+
createLambdaClient: params.createLambdaClient
|
|
23
|
+
});
|
|
24
|
+
const copyFile = new CopyFile({
|
|
25
|
+
createS3Client: params.createS3Client,
|
|
26
|
+
getLambdaTrigger: ()=>lambdaTrigger
|
|
27
|
+
});
|
|
28
|
+
const deleteFile = new DeleteFile({
|
|
29
|
+
createS3Client: params.createS3Client,
|
|
30
|
+
getLambdaTrigger: ()=>lambdaTrigger
|
|
31
|
+
});
|
|
32
|
+
const copyUser = new CopyUser({
|
|
33
|
+
createCognitoIdentityProviderClient: params.createCognitoIdentityProviderClient,
|
|
34
|
+
getLambdaTrigger: ()=>lambdaTrigger
|
|
35
|
+
});
|
|
36
|
+
const deleteUser = new DeleteUser({
|
|
37
|
+
createCognitoIdentityProviderClient: params.createCognitoIdentityProviderClient,
|
|
38
|
+
getLambdaTrigger: ()=>lambdaTrigger
|
|
39
|
+
});
|
|
40
|
+
const plugins = new PluginsContainer([
|
|
41
|
+
createFileManagerPlugins({
|
|
42
|
+
copyFile,
|
|
43
|
+
deleteFile
|
|
44
|
+
}),
|
|
45
|
+
createUsersPlugins({
|
|
46
|
+
copyUser,
|
|
47
|
+
deleteUser
|
|
48
|
+
}),
|
|
49
|
+
createEventHandlerPlugin({
|
|
50
|
+
createDocumentClient: params.createDocumentClient,
|
|
51
|
+
tableName: params.tableName || process.env.DB_TABLE
|
|
52
|
+
}),
|
|
53
|
+
createPutCommandHandlerPlugin(),
|
|
54
|
+
createDeleteCommandHandlerPlugin()
|
|
55
|
+
]);
|
|
56
|
+
plugins.register(params.plugins);
|
|
57
|
+
return createHandler({
|
|
58
|
+
...params,
|
|
59
|
+
plugins
|
|
60
|
+
});
|
|
76
61
|
};
|
|
77
|
-
|
|
62
|
+
export { createResolverHandler };
|
|
78
63
|
|
|
79
64
|
//# sourceMappingURL=createResolverHandler.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"resolver/createResolverHandler.js","sources":["../../src/resolver/createResolverHandler.ts"],"sourcesContent":["import type { HandlerCallable, HandlerParams } from \"@webiny/handler-aws/sqs/index.js\";\nimport { createHandler as createSQSHandler } from \"@webiny/handler-aws/sqs/index.js\";\nimport { PluginsContainer } from \"@webiny/plugins\";\nimport { createEventHandlerPlugin } from \"./createEventHandlerPlugin.js\";\nimport type { TransformRecordPlugin } from \"./plugins/TransformRecordPlugin.js\";\nimport type { CommandHandlerPlugin } from \"./plugins/CommandHandlerPlugin.js\";\nimport { createPutCommandHandlerPlugin } from \"./app/commandHandler/put.js\";\nimport { createDeleteCommandHandlerPlugin } from \"./app/commandHandler/delete.js\";\nimport type {\n DynamoDBClientConfig,\n DynamoDBDocument\n} from \"@webiny/aws-sdk/client-dynamodb/index.js\";\nimport { createFileManagerPlugins } from \"./recordTypes/fileManager/fileManager.js\";\nimport { LambdaTrigger } from \"./lambda/LambdaTrigger.js\";\nimport type { LambdaClient, LambdaClientConfig } from \"@webiny/aws-sdk/client-lambda/index.js\";\nimport type { S3Client, S3ClientConfig } from \"@webiny/aws-sdk/client-s3/index.js\";\nimport { CopyFile } from \"~/resolver/recordTypes/fileManager/CopyFile.js\";\nimport { DeleteFile } from \"./recordTypes/fileManager/DeleteFile.js\";\nimport { createUsersPlugins } from \"~/resolver/recordTypes/users/users.js\";\nimport { CopyUser } from \"./recordTypes/users/CopyUser.js\";\nimport type {\n CognitoIdentityProviderClient,\n CognitoIdentityProviderClientConfig\n} from \"@webiny/aws-sdk/client-cognito-identity-provider/index.js\";\nimport { DeleteUser } from \"./recordTypes/users/DeleteUser.js\";\n\nexport type AllowedResolverPlugins = TransformRecordPlugin | CommandHandlerPlugin;\n\nexport interface ICreateResolverHandlerParams extends HandlerParams {\n plugins: AllowedResolverPlugins[];\n createS3Client: (params: S3ClientConfig) => Pick<S3Client, \"send\">;\n createLambdaClient: (config: Partial<LambdaClientConfig>) => Pick<LambdaClient, \"send\">;\n createDocumentClient: (params: Partial<DynamoDBClientConfig>) => Pick<DynamoDBDocument, \"send\">;\n createCognitoIdentityProviderClient: (\n config: Partial<CognitoIdentityProviderClientConfig>\n ) => Pick<CognitoIdentityProviderClient, \"send\">;\n tableName?: string;\n awsWorkerLambdaArn?: string;\n}\n/**\n * Handler for the Sync System Resolver - based on SQS handler.\n */\nexport const createResolverHandler = (params: ICreateResolverHandlerParams): HandlerCallable => {\n const awsWorkerLambdaArn = params.awsWorkerLambdaArn || process.env.AWS_SYNC_WORKER_LAMBDA_ARN;\n if (!awsWorkerLambdaArn) {\n const message = `Missing \"process.env.AWS_SYNC_WORKER_LAMBDA_ARN\".`;\n console.error(message);\n throw new Error(message);\n }\n\n const lambdaTrigger = new LambdaTrigger({\n arn: awsWorkerLambdaArn,\n createLambdaClient: params.createLambdaClient\n });\n\n const copyFile = new CopyFile({\n createS3Client: params.createS3Client,\n getLambdaTrigger: () => {\n return lambdaTrigger;\n }\n });\n const deleteFile = new DeleteFile({\n createS3Client: params.createS3Client,\n getLambdaTrigger: () => {\n return lambdaTrigger;\n }\n });\n\n const copyUser = new CopyUser({\n createCognitoIdentityProviderClient: params.createCognitoIdentityProviderClient,\n getLambdaTrigger: () => {\n return lambdaTrigger;\n }\n });\n const deleteUser = new DeleteUser({\n createCognitoIdentityProviderClient: params.createCognitoIdentityProviderClient,\n getLambdaTrigger: () => {\n return lambdaTrigger;\n }\n });\n\n const plugins = new PluginsContainer([\n // TODO move into related packages\n createFileManagerPlugins({\n copyFile,\n deleteFile\n }),\n createUsersPlugins({\n copyUser,\n deleteUser\n }),\n // leave here\n createEventHandlerPlugin({\n createDocumentClient: params.createDocumentClient,\n tableName: params.tableName || process.env.DB_TABLE\n }),\n createPutCommandHandlerPlugin(),\n createDeleteCommandHandlerPlugin()\n ]);\n\n plugins.register(params.plugins);\n\n return createSQSHandler({\n ...params,\n plugins\n });\n};\n"],"names":["createResolverHandler","params","awsWorkerLambdaArn","process","message","console","Error","lambdaTrigger","LambdaTrigger","copyFile","CopyFile","deleteFile","DeleteFile","copyUser","CopyUser","deleteUser","DeleteUser","plugins","PluginsContainer","createFileManagerPlugins","createUsersPlugins","createEventHandlerPlugin","createPutCommandHandlerPlugin","createDeleteCommandHandlerPlugin","createSQSHandler"],"mappings":";;;;;;;;;;;;AA0CO,MAAMA,wBAAwB,CAACC;IAClC,MAAMC,qBAAqBD,OAAO,kBAAkB,IAAIE,QAAQ,GAAG,CAAC,0BAA0B;IAC9F,IAAI,CAACD,oBAAoB;QACrB,MAAME,UAAU;QAChBC,QAAQ,KAAK,CAACD;QACd,MAAM,IAAIE,MAAMF;IACpB;IAEA,MAAMG,gBAAgB,IAAIC,cAAc;QACpC,KAAKN;QACL,oBAAoBD,OAAO,kBAAkB;IACjD;IAEA,MAAMQ,WAAW,IAAIC,SAAS;QAC1B,gBAAgBT,OAAO,cAAc;QACrC,kBAAkB,IACPM;IAEf;IACA,MAAMI,aAAa,IAAIC,WAAW;QAC9B,gBAAgBX,OAAO,cAAc;QACrC,kBAAkB,IACPM;IAEf;IAEA,MAAMM,WAAW,IAAIC,SAAS;QAC1B,qCAAqCb,OAAO,mCAAmC;QAC/E,kBAAkB,IACPM;IAEf;IACA,MAAMQ,aAAa,IAAIC,WAAW;QAC9B,qCAAqCf,OAAO,mCAAmC;QAC/E,kBAAkB,IACPM;IAEf;IAEA,MAAMU,UAAU,IAAIC,iBAAiB;QAEjCC,yBAAyB;YACrBV;YACAE;QACJ;QACAS,mBAAmB;YACfP;YACAE;QACJ;QAEAM,yBAAyB;YACrB,sBAAsBpB,OAAO,oBAAoB;YACjD,WAAWA,OAAO,SAAS,IAAIE,QAAQ,GAAG,CAAC,QAAQ;QACvD;QACAmB;QACAC;KACH;IAEDN,QAAQ,QAAQ,CAAChB,OAAO,OAAO;IAE/B,OAAOuB,cAAiB;QACpB,GAAGvB,MAAM;QACTgB;IACJ;AACJ"}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import type { SemVer } from "semver";
|
|
2
|
-
import type { IDeployment, IDeploymentServices } from "./types";
|
|
2
|
+
import type { IDeployment, IDeploymentServices } from "./types.js";
|
|
3
3
|
import type { DynamoDBTableType } from "../../types.js";
|
|
4
4
|
import type { ITable } from "../../sync/types.js";
|
|
5
|
-
export
|
|
6
|
-
}
|
|
5
|
+
export type IDeploymentParams = Omit<IDeployment, "getTable">;
|
|
7
6
|
export declare class Deployment implements IDeployment {
|
|
8
7
|
readonly name: string;
|
|
9
8
|
readonly env: string;
|
|
@@ -1,50 +1,33 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.createDeployment = exports.Deployment = void 0;
|
|
7
1
|
class Deployment {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
2
|
+
constructor(params){
|
|
3
|
+
this.name = params.name;
|
|
4
|
+
this.env = params.env;
|
|
5
|
+
this.variant = params.variant;
|
|
6
|
+
this.region = params.region;
|
|
7
|
+
this.services = params.services;
|
|
8
|
+
this.version = params.version;
|
|
9
|
+
}
|
|
10
|
+
getTable(type) {
|
|
11
|
+
switch(type){
|
|
12
|
+
case "regular":
|
|
13
|
+
return {
|
|
14
|
+
name: this.services.primaryDynamoDbName,
|
|
15
|
+
arn: this.services.primaryDynamoDbArn,
|
|
16
|
+
type
|
|
17
|
+
};
|
|
18
|
+
case "opensearch":
|
|
19
|
+
if (!this.services.opensearchDynamodbTableName || !this.services.opensearchDynamodbTableArn) throw new Error(`Unknown table type "${type}" - no data.`);
|
|
20
|
+
return {
|
|
21
|
+
name: this.services.opensearchDynamodbTableName,
|
|
22
|
+
arn: this.services.opensearchDynamodbTableArn,
|
|
23
|
+
type
|
|
24
|
+
};
|
|
25
|
+
default:
|
|
26
|
+
throw new Error(`Unknown table type "${type}".`);
|
|
27
27
|
}
|
|
28
|
-
return {
|
|
29
|
-
name: this.services.elasticsearchDynamodbTableName,
|
|
30
|
-
arn: this.services.elasticsearchDynamodbTableArn,
|
|
31
|
-
type
|
|
32
|
-
};
|
|
33
|
-
case "log":
|
|
34
|
-
return {
|
|
35
|
-
name: this.services.logDynamodbTableName,
|
|
36
|
-
arn: this.services.logDynamodbTableArn,
|
|
37
|
-
type
|
|
38
|
-
};
|
|
39
|
-
default:
|
|
40
|
-
throw new Error(`Unknown table type "${type}".`);
|
|
41
28
|
}
|
|
42
|
-
}
|
|
43
29
|
}
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
return new Deployment(params);
|
|
47
|
-
};
|
|
48
|
-
exports.createDeployment = createDeployment;
|
|
30
|
+
const createDeployment = (params)=>new Deployment(params);
|
|
31
|
+
export { Deployment, createDeployment };
|
|
49
32
|
|
|
50
33
|
//# sourceMappingURL=Deployment.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"resolver/deployment/Deployment.js","sources":["../../../src/resolver/deployment/Deployment.ts"],"sourcesContent":["import type { SemVer } from \"semver\";\nimport type { IDeployment, IDeploymentServices } from \"./types.js\";\nimport type { DynamoDBTableType } from \"~/types.js\";\nimport type { ITable } from \"~/sync/types.js\";\n\nexport type IDeploymentParams = Omit<IDeployment, \"getTable\">;\n\nexport class Deployment implements IDeployment {\n public readonly name: string;\n public readonly env: string;\n public readonly variant: string | undefined;\n public readonly region: string;\n public readonly services: IDeploymentServices;\n public readonly version: SemVer;\n\n public constructor(params: IDeploymentParams) {\n this.name = params.name;\n this.env = params.env;\n this.variant = params.variant;\n this.region = params.region;\n this.services = params.services;\n this.version = params.version;\n }\n\n public getTable(type: DynamoDBTableType): ITable {\n switch (type) {\n case \"regular\":\n return {\n name: this.services.primaryDynamoDbName,\n arn: this.services.primaryDynamoDbArn,\n type\n };\n case \"opensearch\":\n if (\n !this.services.opensearchDynamodbTableName ||\n !this.services.opensearchDynamodbTableArn\n ) {\n throw new Error(`Unknown table type \"${type}\" - no data.`);\n }\n return {\n name: this.services.opensearchDynamodbTableName,\n arn: this.services.opensearchDynamodbTableArn,\n type\n };\n default:\n throw new Error(`Unknown table type \"${type}\".`);\n }\n }\n}\n\nexport const createDeployment = (params: IDeploymentParams): IDeployment => {\n return new Deployment(params);\n};\n"],"names":["Deployment","params","type","Error","createDeployment"],"mappings":"AAOO,MAAMA;IAQT,YAAmBC,MAAyB,CAAE;QAC1C,IAAI,CAAC,IAAI,GAAGA,OAAO,IAAI;QACvB,IAAI,CAAC,GAAG,GAAGA,OAAO,GAAG;QACrB,IAAI,CAAC,OAAO,GAAGA,OAAO,OAAO;QAC7B,IAAI,CAAC,MAAM,GAAGA,OAAO,MAAM;QAC3B,IAAI,CAAC,QAAQ,GAAGA,OAAO,QAAQ;QAC/B,IAAI,CAAC,OAAO,GAAGA,OAAO,OAAO;IACjC;IAEO,SAASC,IAAuB,EAAU;QAC7C,OAAQA;YACJ,KAAK;gBACD,OAAO;oBACH,MAAM,IAAI,CAAC,QAAQ,CAAC,mBAAmB;oBACvC,KAAK,IAAI,CAAC,QAAQ,CAAC,kBAAkB;oBACrCA;gBACJ;YACJ,KAAK;gBACD,IACI,CAAC,IAAI,CAAC,QAAQ,CAAC,2BAA2B,IAC1C,CAAC,IAAI,CAAC,QAAQ,CAAC,0BAA0B,EAEzC,MAAM,IAAIC,MAAM,CAAC,oBAAoB,EAAED,KAAK,YAAY,CAAC;gBAE7D,OAAO;oBACH,MAAM,IAAI,CAAC,QAAQ,CAAC,2BAA2B;oBAC/C,KAAK,IAAI,CAAC,QAAQ,CAAC,0BAA0B;oBAC7CA;gBACJ;YACJ;gBACI,MAAM,IAAIC,MAAM,CAAC,oBAAoB,EAAED,KAAK,EAAE,CAAC;QACvD;IACJ;AACJ;AAEO,MAAME,mBAAmB,CAACH,SACtB,IAAID,WAAWC"}
|