@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 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"worker/actions/deleteUser/DeleteUser.js","sources":["../../../../src/worker/actions/deleteUser/DeleteUser.ts"],"sourcesContent":["import type { CognitoIdentityProviderClientConfig } from \"@webiny/aws-sdk/client-cognito-identity-provider/index.js\";\nimport {\n AdminDeleteUserCommand,\n type AdminDeleteUserCommandInput,\n AdminGetUserCommand,\n type AdminGetUserCommandInput,\n type AdminGetUserCommandOutput,\n type CognitoIdentityProvider\n} from \"@webiny/aws-sdk/client-cognito-identity-provider/index.js\";\nimport { convertException } from \"@webiny/utils/exception.js\";\n\nexport interface IDeleteUserParams {\n createCognitoProvider: (\n config: Partial<CognitoIdentityProviderClientConfig>\n ) => Pick<CognitoIdentityProvider, \"send\">;\n}\n\nexport interface IDeleteUserDeleteParams {\n username: string;\n region: string;\n userPoolId: string;\n}\n\ninterface IDeleteUserGetUserParams {\n userPoolId: string;\n username: string;\n provider: Pick<CognitoIdentityProvider, \"send\">;\n}\n\nexport class DeleteUser {\n private readonly createCognitoProvider: (\n config: Partial<CognitoIdentityProviderClientConfig>\n ) => Pick<CognitoIdentityProvider, \"send\">;\n\n public constructor(params: IDeleteUserParams) {\n this.createCognitoProvider = params.createCognitoProvider;\n }\n\n public async delete(params: IDeleteUserDeleteParams): Promise<void> {\n const { userPoolId, username, region } = params;\n\n const provider = this.createCognitoProvider({\n region\n });\n const user = await this.getUser({\n userPoolId,\n username,\n provider\n });\n if (!user) {\n console.log(`Target user \"${username}\" does not exist in pool \"${userPoolId}\".`);\n return;\n }\n\n const input: AdminDeleteUserCommandInput = {\n UserPoolId: userPoolId,\n Username: username\n };\n\n const cmd = new AdminDeleteUserCommand(input);\n try {\n await provider.send(cmd);\n } catch (ex) {\n console.error(\n `Failed to delete user \"${username}\" in pool \"${userPoolId}\". More info in next log line.`\n );\n console.log(convertException(ex));\n }\n }\n\n private async getUser(\n params: IDeleteUserGetUserParams\n ): Promise<AdminGetUserCommandOutput | null> {\n const { userPoolId, username, provider } = params;\n const input: AdminGetUserCommandInput = {\n UserPoolId: userPoolId,\n Username: username\n };\n\n const cmd = new AdminGetUserCommand(input);\n\n try {\n const result = await provider.send(cmd);\n if (result.$metadata?.httpStatusCode === 200) {\n return result;\n }\n } catch {\n //\n }\n return null;\n }\n}\n"],"names":["DeleteUser","params","userPoolId","username","region","provider","user","console","input","cmd","AdminDeleteUserCommand","ex","convertException","AdminGetUserCommand","result"],"mappings":";;AA6BO,MAAMA;IAKT,YAAmBC,MAAyB,CAAE;QAC1C,IAAI,CAAC,qBAAqB,GAAGA,OAAO,qBAAqB;IAC7D;IAEA,MAAa,OAAOA,MAA+B,EAAiB;QAChE,MAAM,EAAEC,UAAU,EAAEC,QAAQ,EAAEC,MAAM,EAAE,GAAGH;QAEzC,MAAMI,WAAW,IAAI,CAAC,qBAAqB,CAAC;YACxCD;QACJ;QACA,MAAME,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC;YAC5BJ;YACAC;YACAE;QACJ;QACA,IAAI,CAACC,MAAM,YACPC,QAAQ,GAAG,CAAC,CAAC,aAAa,EAAEJ,SAAS,0BAA0B,EAAED,WAAW,EAAE,CAAC;QAInF,MAAMM,QAAqC;YACvC,YAAYN;YACZ,UAAUC;QACd;QAEA,MAAMM,MAAM,IAAIC,uBAAuBF;QACvC,IAAI;YACA,MAAMH,SAAS,IAAI,CAACI;QACxB,EAAE,OAAOE,IAAI;YACTJ,QAAQ,KAAK,CACT,CAAC,uBAAuB,EAAEJ,SAAS,WAAW,EAAED,WAAW,8BAA8B,CAAC;YAE9FK,QAAQ,GAAG,CAACK,iBAAiBD;QACjC;IACJ;IAEA,MAAc,QACVV,MAAgC,EACS;QACzC,MAAM,EAAEC,UAAU,EAAEC,QAAQ,EAAEE,QAAQ,EAAE,GAAGJ;QAC3C,MAAMO,QAAkC;YACpC,YAAYN;YACZ,UAAUC;QACd;QAEA,MAAMM,MAAM,IAAII,oBAAoBL;QAEpC,IAAI;YACA,MAAMM,SAAS,MAAMT,SAAS,IAAI,CAACI;YACnC,IAAIK,OAAO,SAAS,EAAE,mBAAmB,KACrC,OAAOA;QAEf,EAAE,OAAM,CAER;QACA,OAAO;IACX;AACJ"}
|
|
@@ -3,4 +3,4 @@ import type { CognitoIdentityProvider, CognitoIdentityProviderClientConfig } fro
|
|
|
3
3
|
export interface ICreateDeleteUserActionParams {
|
|
4
4
|
createCognitoProvider(config: Partial<CognitoIdentityProviderClientConfig>): Pick<CognitoIdentityProvider, "send">;
|
|
5
5
|
}
|
|
6
|
-
export declare const createDeleteUserAction: (params: ICreateDeleteUserActionParams) => import("
|
|
6
|
+
export declare const createDeleteUserAction: (params: ICreateDeleteUserActionParams) => import("~/worker/plugins/WorkerActionPlugin.js").WorkerActionPlugin<IDeleteUserActionEvent>;
|
|
@@ -1,40 +1,29 @@
|
|
|
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
|
-
async handle(params) {
|
|
27
|
-
const {
|
|
28
|
-
data
|
|
29
|
-
} = params;
|
|
30
|
-
return deleteUser.delete({
|
|
31
|
-
username: data.username,
|
|
32
|
-
region: data.target.region,
|
|
33
|
-
userPoolId: data.target.userPoolId
|
|
34
|
-
});
|
|
35
|
-
}
|
|
36
|
-
});
|
|
1
|
+
import { createWorkerActionPlugin } from "../../plugins/WorkerActionPlugin.js";
|
|
2
|
+
import { createDeleteUserSchema } from "./deleteUserSchema.js";
|
|
3
|
+
import { DeleteUser } from "./DeleteUser.js";
|
|
4
|
+
import { logValidationError } from "../logValidationError.js";
|
|
5
|
+
const createDeleteUserAction = (params)=>{
|
|
6
|
+
const deleteUser = new DeleteUser({
|
|
7
|
+
createCognitoProvider: params.createCognitoProvider
|
|
8
|
+
});
|
|
9
|
+
return createWorkerActionPlugin({
|
|
10
|
+
name: "sync.worker.action.deleteUser",
|
|
11
|
+
parse: (input)=>{
|
|
12
|
+
const schema = createDeleteUserSchema();
|
|
13
|
+
const result = schema.safeParse(input);
|
|
14
|
+
if (!result.success || result.error) return void logValidationError(result.error);
|
|
15
|
+
return result.data;
|
|
16
|
+
},
|
|
17
|
+
async handle (params) {
|
|
18
|
+
const { data } = params;
|
|
19
|
+
return deleteUser.delete({
|
|
20
|
+
username: data.username,
|
|
21
|
+
region: data.target.region,
|
|
22
|
+
userPoolId: data.target.userPoolId
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
});
|
|
37
26
|
};
|
|
38
|
-
|
|
27
|
+
export { createDeleteUserAction };
|
|
39
28
|
|
|
40
29
|
//# sourceMappingURL=deleteUserAction.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"worker/actions/deleteUser/deleteUserAction.js","sources":["../../../../src/worker/actions/deleteUser/deleteUserAction.ts"],"sourcesContent":["import { createWorkerActionPlugin } from \"~/worker/plugins/WorkerActionPlugin.js\";\nimport type { IDeleteUserActionEvent } from \"./types.js\";\nimport { createDeleteUserSchema } from \"./deleteUserSchema.js\";\nimport type {\n CognitoIdentityProvider,\n CognitoIdentityProviderClientConfig\n} from \"@webiny/aws-sdk/client-cognito-identity-provider/index.js\";\nimport { DeleteUser } from \"./DeleteUser.js\";\nimport { logValidationError } from \"~/worker/actions/logValidationError.js\";\n\nexport interface ICreateDeleteUserActionParams {\n createCognitoProvider(\n config: Partial<CognitoIdentityProviderClientConfig>\n ): Pick<CognitoIdentityProvider, \"send\">;\n}\n\nexport const createDeleteUserAction = (params: ICreateDeleteUserActionParams) => {\n const deleteUser = new DeleteUser({\n createCognitoProvider: params.createCognitoProvider\n });\n return createWorkerActionPlugin<IDeleteUserActionEvent>({\n name: \"sync.worker.action.deleteUser\",\n parse: input => {\n const schema = createDeleteUserSchema();\n\n const result = schema.safeParse(input);\n if (!result.success || result.error) {\n logValidationError(result.error);\n return undefined;\n }\n return result.data;\n },\n async handle(params) {\n const { data } = params;\n return deleteUser.delete({\n username: data.username,\n region: data.target.region,\n userPoolId: data.target.userPoolId\n });\n }\n });\n};\n"],"names":["createDeleteUserAction","params","deleteUser","DeleteUser","createWorkerActionPlugin","input","schema","createDeleteUserSchema","result","logValidationError","data"],"mappings":";;;;AAgBO,MAAMA,yBAAyB,CAACC;IACnC,MAAMC,aAAa,IAAIC,WAAW;QAC9B,uBAAuBF,OAAO,qBAAqB;IACvD;IACA,OAAOG,yBAAiD;QACpD,MAAM;QACN,OAAOC,CAAAA;YACH,MAAMC,SAASC;YAEf,MAAMC,SAASF,OAAO,SAAS,CAACD;YAChC,IAAI,CAACG,OAAO,OAAO,IAAIA,OAAO,KAAK,EAAE,YACjCC,mBAAmBD,OAAO,KAAK;YAGnC,OAAOA,OAAO,IAAI;QACtB;QACA,MAAM,QAAOP,MAAM;YACf,MAAM,EAAES,IAAI,EAAE,GAAGT;YACjB,OAAOC,WAAW,MAAM,CAAC;gBACrB,UAAUQ,KAAK,QAAQ;gBACvB,QAAQA,KAAK,MAAM,CAAC,MAAM;gBAC1B,YAAYA,KAAK,MAAM,CAAC,UAAU;YACtC;QACJ;IACJ;AACJ"}
|
|
@@ -1,29 +1,11 @@
|
|
|
1
1
|
import zod from "zod";
|
|
2
2
|
export declare const createDeleteUserSchema: () => zod.ZodObject<{
|
|
3
|
-
action: zod.ZodEnum<
|
|
3
|
+
action: zod.ZodEnum<{
|
|
4
|
+
deleteUser: "deleteUser";
|
|
5
|
+
}>;
|
|
4
6
|
username: zod.ZodString;
|
|
5
7
|
target: zod.ZodObject<{
|
|
6
8
|
userPoolId: zod.ZodString;
|
|
7
9
|
region: zod.ZodString;
|
|
8
|
-
},
|
|
9
|
-
|
|
10
|
-
userPoolId: string;
|
|
11
|
-
}, {
|
|
12
|
-
region: string;
|
|
13
|
-
userPoolId: string;
|
|
14
|
-
}>;
|
|
15
|
-
}, "strip", zod.ZodTypeAny, {
|
|
16
|
-
action: "deleteUser";
|
|
17
|
-
target: {
|
|
18
|
-
region: string;
|
|
19
|
-
userPoolId: string;
|
|
20
|
-
};
|
|
21
|
-
username: string;
|
|
22
|
-
}, {
|
|
23
|
-
action: "deleteUser";
|
|
24
|
-
target: {
|
|
25
|
-
region: string;
|
|
26
|
-
userPoolId: string;
|
|
27
|
-
};
|
|
28
|
-
username: string;
|
|
29
|
-
}>;
|
|
10
|
+
}, zod.core.$strip>;
|
|
11
|
+
}, zod.core.$strip>;
|
|
@@ -1,24 +1,15 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
};
|
|
15
|
-
const createDeleteUserSchema = () => {
|
|
16
|
-
return _zod.default.object({
|
|
17
|
-
action: _zod.default.enum(["deleteUser"]),
|
|
18
|
-
username: _zod.default.string().min(1, "Username is required."),
|
|
19
|
-
target: createDataSchema("Target")
|
|
20
|
-
});
|
|
21
|
-
};
|
|
22
|
-
exports.createDeleteUserSchema = createDeleteUserSchema;
|
|
1
|
+
import zod from "zod";
|
|
2
|
+
const createDataSchema = (type)=>zod.object({
|
|
3
|
+
userPoolId: zod.string().min(1, `${type} UserPoolId is required.`),
|
|
4
|
+
region: zod.string().min(1, `${type} Region is required.`)
|
|
5
|
+
});
|
|
6
|
+
const createDeleteUserSchema = ()=>zod.object({
|
|
7
|
+
action: zod["enum"]([
|
|
8
|
+
"deleteUser"
|
|
9
|
+
]),
|
|
10
|
+
username: zod.string().min(1, "Username is required."),
|
|
11
|
+
target: createDataSchema("Target")
|
|
12
|
+
});
|
|
13
|
+
export { createDeleteUserSchema };
|
|
23
14
|
|
|
24
15
|
//# sourceMappingURL=deleteUserSchema.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"worker/actions/deleteUser/deleteUserSchema.js","sources":["../../../../src/worker/actions/deleteUser/deleteUserSchema.ts"],"sourcesContent":["import zod from \"zod\";\n\nconst createDataSchema = (type: string) => {\n return zod.object({\n userPoolId: zod.string().min(1, `${type} UserPoolId is required.`),\n region: zod.string().min(1, `${type} Region is required.`)\n });\n};\nexport const createDeleteUserSchema = () => {\n return zod.object({\n action: zod.enum([\"deleteUser\"]),\n username: zod.string().min(1, \"Username is required.\"),\n target: createDataSchema(\"Target\")\n });\n};\n"],"names":["createDataSchema","type","zod","createDeleteUserSchema"],"mappings":";AAEA,MAAMA,mBAAmB,CAACC,OACfC,IAAI,MAAM,CAAC;QACd,YAAYA,IAAI,MAAM,GAAG,GAAG,CAAC,GAAG,GAAGD,KAAK,wBAAwB,CAAC;QACjE,QAAQC,IAAI,MAAM,GAAG,GAAG,CAAC,GAAG,GAAGD,KAAK,oBAAoB,CAAC;IAC7D;AAEG,MAAME,yBAAyB,IAC3BD,IAAI,MAAM,CAAC;QACd,QAAQA,GAAG,CAAHA,OAAQ,CAAC;YAAC;SAAa;QAC/B,UAAUA,IAAI,MAAM,GAAG,GAAG,CAAC,GAAG;QAC9B,QAAQF,iBAAiB;IAC7B"}
|
|
@@ -1,17 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
exports.logValidationError = void 0;
|
|
7
|
-
var _utils = require("@webiny/utils");
|
|
8
|
-
const logValidationError = error => {
|
|
9
|
-
if (process.env.DEBUG !== "true" || !error) {
|
|
10
|
-
return;
|
|
11
|
-
}
|
|
12
|
-
const ex = (0, _utils.createZodError)(error);
|
|
13
|
-
console.log((0, _utils.convertException)(ex));
|
|
1
|
+
import { convertException, createZodError } from "@webiny/utils";
|
|
2
|
+
const logValidationError = (error)=>{
|
|
3
|
+
if ("true" !== process.env.DEBUG || !error) return;
|
|
4
|
+
const ex = createZodError(error);
|
|
5
|
+
console.log(convertException(ex));
|
|
14
6
|
};
|
|
15
|
-
|
|
7
|
+
export { logValidationError };
|
|
16
8
|
|
|
17
9
|
//# sourceMappingURL=logValidationError.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"worker/actions/logValidationError.js","sources":["../../../src/worker/actions/logValidationError.ts"],"sourcesContent":["import type { ZodError } from \"zod\";\nimport { convertException, createZodError } from \"@webiny/utils\";\n\nexport const logValidationError = (error?: ZodError): void => {\n if (process.env.DEBUG !== \"true\" || !error) {\n return;\n }\n const ex = createZodError(error);\n console.log(convertException(ex));\n};\n"],"names":["logValidationError","error","process","ex","createZodError","console","convertException"],"mappings":";AAGO,MAAMA,qBAAqB,CAACC;IAC/B,IAAIC,AAAsB,WAAtBA,QAAQ,GAAG,CAAC,KAAK,IAAe,CAACD,OACjC;IAEJ,MAAME,KAAKC,eAAeH;IAC1BI,QAAQ,GAAG,CAACC,iBAAiBH;AACjC"}
|
|
@@ -1,24 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
*/
|
|
11
|
-
|
|
12
|
-
const removeAttributes = ["sub"];
|
|
13
|
-
const removeCognitoUserAttributes = attributes => {
|
|
14
|
-
return attributes.filter(attr => {
|
|
15
|
-
const name = (attr.Name || "").toLowerCase();
|
|
16
|
-
if (removeAttributes.includes(name)) {
|
|
17
|
-
return false;
|
|
18
|
-
}
|
|
19
|
-
return true;
|
|
20
|
-
});
|
|
21
|
-
};
|
|
22
|
-
exports.removeCognitoUserAttributes = removeCognitoUserAttributes;
|
|
1
|
+
const removeAttributes = [
|
|
2
|
+
"sub"
|
|
3
|
+
];
|
|
4
|
+
const removeCognitoUserAttributes = (attributes)=>attributes.filter((attr)=>{
|
|
5
|
+
const name = (attr.Name || "").toLowerCase();
|
|
6
|
+
if (removeAttributes.includes(name)) return false;
|
|
7
|
+
return true;
|
|
8
|
+
});
|
|
9
|
+
export { removeCognitoUserAttributes };
|
|
23
10
|
|
|
24
11
|
//# sourceMappingURL=removeCognitoUserAttributes.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"worker/actions/removeCognitoUserAttributes.js","sources":["../../../src/worker/actions/removeCognitoUserAttributes.ts"],"sourcesContent":["/**\n * We need to remove some of the attributes from the Cognito user object before we store it via the Sync System.\n * sub - not allowed to be set by our code\n */\nimport type { AttributeType } from \"@webiny/aws-sdk/client-cognito-identity-provider/index.js\";\n\nconst removeAttributes: string[] = [\"sub\"];\n\nexport const removeCognitoUserAttributes = (attributes: AttributeType[]): AttributeType[] => {\n return attributes.filter(attr => {\n const name = (attr.Name || \"\").toLowerCase();\n if (removeAttributes.includes(name)) {\n return false;\n }\n return true;\n });\n};\n"],"names":["removeAttributes","removeCognitoUserAttributes","attributes","attr","name"],"mappings":"AAMA,MAAMA,mBAA6B;IAAC;CAAM;AAEnC,MAAMC,8BAA8B,CAACC,aACjCA,WAAW,MAAM,CAACC,CAAAA;QACrB,MAAMC,OAAQD,AAAAA,CAAAA,KAAK,IAAI,IAAI,EAAC,EAAG,WAAW;QAC1C,IAAIH,iBAAiB,QAAQ,CAACI,OAC1B,OAAO;QAEX,OAAO;IACX"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { CognitoIdentityProvider, CognitoIdentityProviderClientConfig } from "@webiny/aws-sdk/client-cognito-identity-provider";
|
|
1
|
+
import type { CognitoIdentityProvider, CognitoIdentityProviderClientConfig } from "@webiny/aws-sdk/client-cognito-identity-provider/index.js";
|
|
2
2
|
export interface IUpdateUserParams {
|
|
3
3
|
createCognitoProvider: (config: Partial<CognitoIdentityProviderClientConfig>) => Pick<CognitoIdentityProvider, "send">;
|
|
4
4
|
}
|
|
@@ -1,81 +1,57 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.UpdateUser = void 0;
|
|
7
|
-
var _clientCognitoIdentityProvider = require("@webiny/aws-sdk/client-cognito-identity-provider");
|
|
8
|
-
var _exception = require("@webiny/utils/exception.js");
|
|
9
|
-
var _removeCognitoUserAttributes = require("../removeCognitoUserAttributes.js");
|
|
1
|
+
import { AdminGetUserCommand, AdminUpdateUserAttributesCommand } from "@webiny/aws-sdk/client-cognito-identity-provider/index.js";
|
|
2
|
+
import { convertException } from "@webiny/utils/exception.js";
|
|
3
|
+
import { removeCognitoUserAttributes } from "../removeCognitoUserAttributes.js";
|
|
10
4
|
class UpdateUser {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
}
|
|
14
|
-
async update(params) {
|
|
15
|
-
const {
|
|
16
|
-
sourceUserPoolId,
|
|
17
|
-
targetUserPoolId,
|
|
18
|
-
username,
|
|
19
|
-
targetRegion,
|
|
20
|
-
sourceRegion
|
|
21
|
-
} = params;
|
|
22
|
-
const sourceProvider = this.createCognitoProvider({
|
|
23
|
-
region: sourceRegion
|
|
24
|
-
});
|
|
25
|
-
const sourceUser = await this.getUser({
|
|
26
|
-
userPoolId: sourceUserPoolId,
|
|
27
|
-
username,
|
|
28
|
-
provider: sourceProvider
|
|
29
|
-
});
|
|
30
|
-
if (!sourceUser) {
|
|
31
|
-
throw new Error(`Source user "${username}" not found in pool "${sourceUserPoolId}".`);
|
|
32
|
-
}
|
|
33
|
-
const targetProvider = this.createCognitoProvider({
|
|
34
|
-
region: targetRegion
|
|
35
|
-
});
|
|
36
|
-
const targetUser = await this.getUser({
|
|
37
|
-
userPoolId: targetUserPoolId,
|
|
38
|
-
username,
|
|
39
|
-
provider: targetProvider
|
|
40
|
-
});
|
|
41
|
-
if (!targetUser) {
|
|
42
|
-
throw new Error(`Target user "${username}" does not exist in pool "${targetUserPoolId}".`);
|
|
5
|
+
constructor(params){
|
|
6
|
+
this.createCognitoProvider = params.createCognitoProvider;
|
|
43
7
|
}
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
8
|
+
async update(params) {
|
|
9
|
+
const { sourceUserPoolId, targetUserPoolId, username, targetRegion, sourceRegion } = params;
|
|
10
|
+
const sourceProvider = this.createCognitoProvider({
|
|
11
|
+
region: sourceRegion
|
|
12
|
+
});
|
|
13
|
+
const sourceUser = await this.getUser({
|
|
14
|
+
userPoolId: sourceUserPoolId,
|
|
15
|
+
username,
|
|
16
|
+
provider: sourceProvider
|
|
17
|
+
});
|
|
18
|
+
if (!sourceUser) throw new Error(`Source user "${username}" not found in pool "${sourceUserPoolId}".`);
|
|
19
|
+
const targetProvider = this.createCognitoProvider({
|
|
20
|
+
region: targetRegion
|
|
21
|
+
});
|
|
22
|
+
const targetUser = await this.getUser({
|
|
23
|
+
userPoolId: targetUserPoolId,
|
|
24
|
+
username,
|
|
25
|
+
provider: targetProvider
|
|
26
|
+
});
|
|
27
|
+
if (!targetUser) throw new Error(`Target user "${username}" does not exist in pool "${targetUserPoolId}".`);
|
|
28
|
+
const input = {
|
|
29
|
+
UserAttributes: removeCognitoUserAttributes(sourceUser.UserAttributes || []),
|
|
30
|
+
UserPoolId: targetUserPoolId,
|
|
31
|
+
Username: username
|
|
32
|
+
};
|
|
33
|
+
const cmd = new AdminUpdateUserAttributesCommand(input);
|
|
34
|
+
try {
|
|
35
|
+
await targetProvider.send(cmd);
|
|
36
|
+
} catch (ex) {
|
|
37
|
+
console.error(`Failed to update user "${username}" in pool "${targetUserPoolId}". More info in next log line.`);
|
|
38
|
+
console.log(convertException(ex));
|
|
39
|
+
}
|
|
55
40
|
}
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
try {
|
|
69
|
-
const result = await provider.send(cmd);
|
|
70
|
-
if (result.$metadata?.httpStatusCode === 200) {
|
|
71
|
-
return result;
|
|
72
|
-
}
|
|
73
|
-
} catch (ex) {
|
|
74
|
-
//
|
|
41
|
+
async getUser(params) {
|
|
42
|
+
const { userPoolId, username, provider } = params;
|
|
43
|
+
const input = {
|
|
44
|
+
UserPoolId: userPoolId,
|
|
45
|
+
Username: username
|
|
46
|
+
};
|
|
47
|
+
const cmd = new AdminGetUserCommand(input);
|
|
48
|
+
try {
|
|
49
|
+
const result = await provider.send(cmd);
|
|
50
|
+
if (result.$metadata?.httpStatusCode === 200) return result;
|
|
51
|
+
} catch {}
|
|
52
|
+
return null;
|
|
75
53
|
}
|
|
76
|
-
return null;
|
|
77
|
-
}
|
|
78
54
|
}
|
|
79
|
-
|
|
55
|
+
export { UpdateUser };
|
|
80
56
|
|
|
81
57
|
//# sourceMappingURL=UpdateUser.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"worker/actions/updateUser/UpdateUser.js","sources":["../../../../src/worker/actions/updateUser/UpdateUser.ts"],"sourcesContent":["import type {\n AdminGetUserCommandInput,\n AdminGetUserCommandOutput,\n AdminUpdateUserAttributesCommandInput,\n CognitoIdentityProvider,\n CognitoIdentityProviderClientConfig\n} from \"@webiny/aws-sdk/client-cognito-identity-provider/index.js\";\nimport {\n AdminGetUserCommand,\n AdminUpdateUserAttributesCommand\n} from \"@webiny/aws-sdk/client-cognito-identity-provider/index.js\";\nimport { convertException } from \"@webiny/utils/exception.js\";\nimport { removeCognitoUserAttributes } from \"~/worker/actions/removeCognitoUserAttributes.js\";\n\nexport interface IUpdateUserParams {\n createCognitoProvider: (\n config: Partial<CognitoIdentityProviderClientConfig>\n ) => Pick<CognitoIdentityProvider, \"send\">;\n}\n\nexport interface IUpdateUserUpdateParams {\n username: string;\n sourceRegion: string;\n targetRegion: string;\n sourceUserPoolId: string;\n targetUserPoolId: string;\n}\n\ninterface IUpdateUserGetUserParams {\n userPoolId: string;\n username: string;\n provider: Pick<CognitoIdentityProvider, \"send\">;\n}\n\nexport class UpdateUser {\n private readonly createCognitoProvider: (\n config: Partial<CognitoIdentityProviderClientConfig>\n ) => Pick<CognitoIdentityProvider, \"send\">;\n\n public constructor(params: IUpdateUserParams) {\n this.createCognitoProvider = params.createCognitoProvider;\n }\n\n public async update(params: IUpdateUserUpdateParams): Promise<void> {\n const { sourceUserPoolId, targetUserPoolId, username, targetRegion, sourceRegion } = params;\n\n const sourceProvider = this.createCognitoProvider({\n region: sourceRegion\n });\n\n const sourceUser = await this.getUser({\n userPoolId: sourceUserPoolId,\n username,\n provider: sourceProvider\n });\n if (!sourceUser) {\n throw new Error(`Source user \"${username}\" not found in pool \"${sourceUserPoolId}\".`);\n }\n const targetProvider = this.createCognitoProvider({\n region: targetRegion\n });\n const targetUser = await this.getUser({\n userPoolId: targetUserPoolId,\n username,\n provider: targetProvider\n });\n if (!targetUser) {\n throw new Error(\n `Target user \"${username}\" does not exist in pool \"${targetUserPoolId}\".`\n );\n }\n\n const input: AdminUpdateUserAttributesCommandInput = {\n UserAttributes: removeCognitoUserAttributes(sourceUser.UserAttributes || []),\n UserPoolId: targetUserPoolId,\n Username: username\n };\n\n const cmd = new AdminUpdateUserAttributesCommand(input);\n\n try {\n await targetProvider.send(cmd);\n } catch (ex) {\n console.error(\n `Failed to update user \"${username}\" in pool \"${targetUserPoolId}\". More info in next log line.`\n );\n console.log(convertException(ex));\n }\n }\n\n private async getUser(\n params: IUpdateUserGetUserParams\n ): Promise<AdminGetUserCommandOutput | null> {\n const { userPoolId, username, provider } = params;\n const input: AdminGetUserCommandInput = {\n UserPoolId: userPoolId,\n Username: username\n };\n\n const cmd = new AdminGetUserCommand(input);\n try {\n const result = await provider.send(cmd);\n if (result.$metadata?.httpStatusCode === 200) {\n return result;\n }\n } catch {\n //\n }\n return null;\n }\n}\n"],"names":["UpdateUser","params","sourceUserPoolId","targetUserPoolId","username","targetRegion","sourceRegion","sourceProvider","sourceUser","Error","targetProvider","targetUser","input","removeCognitoUserAttributes","cmd","AdminUpdateUserAttributesCommand","ex","console","convertException","userPoolId","provider","AdminGetUserCommand","result"],"mappings":";;;AAkCO,MAAMA;IAKT,YAAmBC,MAAyB,CAAE;QAC1C,IAAI,CAAC,qBAAqB,GAAGA,OAAO,qBAAqB;IAC7D;IAEA,MAAa,OAAOA,MAA+B,EAAiB;QAChE,MAAM,EAAEC,gBAAgB,EAAEC,gBAAgB,EAAEC,QAAQ,EAAEC,YAAY,EAAEC,YAAY,EAAE,GAAGL;QAErF,MAAMM,iBAAiB,IAAI,CAAC,qBAAqB,CAAC;YAC9C,QAAQD;QACZ;QAEA,MAAME,aAAa,MAAM,IAAI,CAAC,OAAO,CAAC;YAClC,YAAYN;YACZE;YACA,UAAUG;QACd;QACA,IAAI,CAACC,YACD,MAAM,IAAIC,MAAM,CAAC,aAAa,EAAEL,SAAS,qBAAqB,EAAEF,iBAAiB,EAAE,CAAC;QAExF,MAAMQ,iBAAiB,IAAI,CAAC,qBAAqB,CAAC;YAC9C,QAAQL;QACZ;QACA,MAAMM,aAAa,MAAM,IAAI,CAAC,OAAO,CAAC;YAClC,YAAYR;YACZC;YACA,UAAUM;QACd;QACA,IAAI,CAACC,YACD,MAAM,IAAIF,MACN,CAAC,aAAa,EAAEL,SAAS,0BAA0B,EAAED,iBAAiB,EAAE,CAAC;QAIjF,MAAMS,QAA+C;YACjD,gBAAgBC,4BAA4BL,WAAW,cAAc,IAAI,EAAE;YAC3E,YAAYL;YACZ,UAAUC;QACd;QAEA,MAAMU,MAAM,IAAIC,iCAAiCH;QAEjD,IAAI;YACA,MAAMF,eAAe,IAAI,CAACI;QAC9B,EAAE,OAAOE,IAAI;YACTC,QAAQ,KAAK,CACT,CAAC,uBAAuB,EAAEb,SAAS,WAAW,EAAED,iBAAiB,8BAA8B,CAAC;YAEpGc,QAAQ,GAAG,CAACC,iBAAiBF;QACjC;IACJ;IAEA,MAAc,QACVf,MAAgC,EACS;QACzC,MAAM,EAAEkB,UAAU,EAAEf,QAAQ,EAAEgB,QAAQ,EAAE,GAAGnB;QAC3C,MAAMW,QAAkC;YACpC,YAAYO;YACZ,UAAUf;QACd;QAEA,MAAMU,MAAM,IAAIO,oBAAoBT;QACpC,IAAI;YACA,MAAMU,SAAS,MAAMF,SAAS,IAAI,CAACN;YACnC,IAAIQ,OAAO,SAAS,EAAE,mBAAmB,KACrC,OAAOA;QAEf,EAAE,OAAM,CAER;QACA,OAAO;IACX;AACJ"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { IUpdateUserActionEvent } from "
|
|
1
|
+
import type { IUpdateUserActionEvent } from "../../../worker/actions/updateUser/types.js";
|
|
2
2
|
import type { CognitoIdentityProvider, CognitoIdentityProviderClientConfig } from "@webiny/aws-sdk/client-cognito-identity-provider/index.js";
|
|
3
3
|
export interface ICreateUpdateUserActionParams {
|
|
4
4
|
createCognitoProvider(config: Partial<CognitoIdentityProviderClientConfig>): Pick<CognitoIdentityProvider, "send">;
|
|
5
5
|
}
|
|
6
|
-
export declare const createUpdateUserAction: (params: ICreateUpdateUserActionParams) => import("
|
|
6
|
+
export declare const createUpdateUserAction: (params: ICreateUpdateUserActionParams) => import("~/worker/plugins/WorkerActionPlugin.js").WorkerActionPlugin<IUpdateUserActionEvent>;
|
|
@@ -1,42 +1,31 @@
|
|
|
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
|
-
data
|
|
29
|
-
} = params;
|
|
30
|
-
return updateUser.update({
|
|
31
|
-
username: data.username,
|
|
32
|
-
sourceRegion: data.source.region,
|
|
33
|
-
sourceUserPoolId: data.source.userPoolId,
|
|
34
|
-
targetRegion: data.target.region,
|
|
35
|
-
targetUserPoolId: data.target.userPoolId
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
|
-
});
|
|
1
|
+
import { createWorkerActionPlugin } from "../../plugins/WorkerActionPlugin.js";
|
|
2
|
+
import { createUpdateUserSchema } from "./updateUserSchema.js";
|
|
3
|
+
import { UpdateUser } from "./UpdateUser.js";
|
|
4
|
+
import { logValidationError } from "../logValidationError.js";
|
|
5
|
+
const createUpdateUserAction = (params)=>{
|
|
6
|
+
const updateUser = new UpdateUser({
|
|
7
|
+
createCognitoProvider: params.createCognitoProvider
|
|
8
|
+
});
|
|
9
|
+
return createWorkerActionPlugin({
|
|
10
|
+
name: "sync.worker.action.updateUser",
|
|
11
|
+
parse: (input)=>{
|
|
12
|
+
const schema = createUpdateUserSchema();
|
|
13
|
+
const result = schema.safeParse(input);
|
|
14
|
+
if (!result.success || result.error) return void logValidationError(result.error);
|
|
15
|
+
return result.data;
|
|
16
|
+
},
|
|
17
|
+
async handle (params) {
|
|
18
|
+
const { data } = params;
|
|
19
|
+
return updateUser.update({
|
|
20
|
+
username: data.username,
|
|
21
|
+
sourceRegion: data.source.region,
|
|
22
|
+
sourceUserPoolId: data.source.userPoolId,
|
|
23
|
+
targetRegion: data.target.region,
|
|
24
|
+
targetUserPoolId: data.target.userPoolId
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
});
|
|
39
28
|
};
|
|
40
|
-
|
|
29
|
+
export { createUpdateUserAction };
|
|
41
30
|
|
|
42
31
|
//# sourceMappingURL=updateUserAction.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"worker/actions/updateUser/updateUserAction.js","sources":["../../../../src/worker/actions/updateUser/updateUserAction.ts"],"sourcesContent":["import { createWorkerActionPlugin } from \"~/worker/plugins/WorkerActionPlugin.js\";\nimport type { IUpdateUserActionEvent } from \"~/worker/actions/updateUser/types.js\";\nimport { createUpdateUserSchema } from \"./updateUserSchema.js\";\nimport type {\n CognitoIdentityProvider,\n CognitoIdentityProviderClientConfig\n} from \"@webiny/aws-sdk/client-cognito-identity-provider/index.js\";\nimport { UpdateUser } from \"~/worker/actions/updateUser/UpdateUser.js\";\nimport { logValidationError } from \"~/worker/actions/logValidationError.js\";\n\nexport interface ICreateUpdateUserActionParams {\n createCognitoProvider(\n config: Partial<CognitoIdentityProviderClientConfig>\n ): Pick<CognitoIdentityProvider, \"send\">;\n}\n\nexport const createUpdateUserAction = (params: ICreateUpdateUserActionParams) => {\n const updateUser = new UpdateUser({\n createCognitoProvider: params.createCognitoProvider\n });\n return createWorkerActionPlugin<IUpdateUserActionEvent>({\n name: \"sync.worker.action.updateUser\",\n parse: input => {\n const schema = createUpdateUserSchema();\n\n const result = schema.safeParse(input);\n if (!result.success || result.error) {\n logValidationError(result.error);\n return undefined;\n }\n return result.data;\n },\n async handle(params) {\n const { data } = params;\n return updateUser.update({\n username: data.username,\n sourceRegion: data.source.region,\n sourceUserPoolId: data.source.userPoolId,\n targetRegion: data.target.region,\n targetUserPoolId: data.target.userPoolId\n });\n }\n });\n};\n"],"names":["createUpdateUserAction","params","updateUser","UpdateUser","createWorkerActionPlugin","input","schema","createUpdateUserSchema","result","logValidationError","data"],"mappings":";;;;AAgBO,MAAMA,yBAAyB,CAACC;IACnC,MAAMC,aAAa,IAAIC,WAAW;QAC9B,uBAAuBF,OAAO,qBAAqB;IACvD;IACA,OAAOG,yBAAiD;QACpD,MAAM;QACN,OAAOC,CAAAA;YACH,MAAMC,SAASC;YAEf,MAAMC,SAASF,OAAO,SAAS,CAACD;YAChC,IAAI,CAACG,OAAO,OAAO,IAAIA,OAAO,KAAK,EAAE,YACjCC,mBAAmBD,OAAO,KAAK;YAGnC,OAAOA,OAAO,IAAI;QACtB;QACA,MAAM,QAAOP,MAAM;YACf,MAAM,EAAES,IAAI,EAAE,GAAGT;YACjB,OAAOC,WAAW,MAAM,CAAC;gBACrB,UAAUQ,KAAK,QAAQ;gBACvB,cAAcA,KAAK,MAAM,CAAC,MAAM;gBAChC,kBAAkBA,KAAK,MAAM,CAAC,UAAU;gBACxC,cAAcA,KAAK,MAAM,CAAC,MAAM;gBAChC,kBAAkBA,KAAK,MAAM,CAAC,UAAU;YAC5C;QACJ;IACJ;AACJ"}
|