quidproquo-actionprocessor-awslambda 0.0.199 → 0.0.200
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/lib/commonjs/getActionProcessor/core/event/utils/parseMultipartFormData.js +5 -3
- package/lib/esm/awsLambdaUtils.d.ts +9 -0
- package/lib/esm/awsLambdaUtils.js +35 -0
- package/lib/esm/awsNamingUtils.d.ts +25 -0
- package/lib/esm/awsNamingUtils.js +173 -0
- package/lib/esm/getActionProcessor/core/config/getConfigGetGlobalActionProcessor.d.ts +5 -0
- package/lib/esm/getActionProcessor/core/config/getConfigGetGlobalActionProcessor.js +12 -0
- package/lib/esm/getActionProcessor/core/config/getConfigGetParameterActionProcessor.d.ts +5 -0
- package/lib/esm/getActionProcessor/core/config/getConfigGetParameterActionProcessor.js +15 -0
- package/lib/esm/getActionProcessor/core/config/getConfigGetParametersActionProcessor.d.ts +5 -0
- package/lib/esm/getActionProcessor/core/config/getConfigGetParametersActionProcessor.js +15 -0
- package/lib/esm/getActionProcessor/core/config/getConfigGetSecretActionProcessor.d.ts +5 -0
- package/lib/esm/getActionProcessor/core/config/getConfigGetSecretActionProcessor.js +15 -0
- package/lib/esm/getActionProcessor/core/config/getConfigSetParameterActionProcessor.d.ts +5 -0
- package/lib/esm/getActionProcessor/core/config/getConfigSetParameterActionProcessor.js +15 -0
- package/lib/esm/getActionProcessor/core/config/index.d.ts +9 -0
- package/lib/esm/getActionProcessor/core/config/index.js +12 -0
- package/lib/esm/getActionProcessor/core/config/utils/index.d.ts +1 -0
- package/lib/esm/getActionProcessor/core/config/utils/index.js +1 -0
- package/lib/esm/getActionProcessor/core/config/utils/resolveSecretResourceName.d.ts +2 -0
- package/lib/esm/getActionProcessor/core/config/utils/resolveSecretResourceName.js +6 -0
- package/lib/esm/getActionProcessor/core/event/apiGatwayEvent/api/autoRespond.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/apiGatwayEvent/api/autoRespond.js +35 -0
- package/lib/esm/getActionProcessor/core/event/apiGatwayEvent/api/getRecords.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/apiGatwayEvent/api/getRecords.js +39 -0
- package/lib/esm/getActionProcessor/core/event/apiGatwayEvent/api/getStorySession.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/apiGatwayEvent/api/getStorySession.js +11 -0
- package/lib/esm/getActionProcessor/core/event/apiGatwayEvent/api/index.d.ts +8 -0
- package/lib/esm/getActionProcessor/core/event/apiGatwayEvent/api/index.js +12 -0
- package/lib/esm/getActionProcessor/core/event/apiGatwayEvent/api/matchStory.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/apiGatwayEvent/api/matchStory.js +34 -0
- package/lib/esm/getActionProcessor/core/event/apiGatwayEvent/api/transformResponseResult.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/apiGatwayEvent/api/transformResponseResult.js +56 -0
- package/lib/esm/getActionProcessor/core/event/apiGatwayEvent/api/types.d.ts +10 -0
- package/lib/esm/getActionProcessor/core/event/apiGatwayEvent/api/types.js +1 -0
- package/lib/esm/getActionProcessor/core/event/apiGatwayEvent/index.d.ts +2 -0
- package/lib/esm/getActionProcessor/core/event/apiGatwayEvent/index.js +2 -0
- package/lib/esm/getActionProcessor/core/event/apiGatwayEvent/websocket/autoRespond.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/apiGatwayEvent/websocket/autoRespond.js +11 -0
- package/lib/esm/getActionProcessor/core/event/apiGatwayEvent/websocket/getRecords.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/apiGatwayEvent/websocket/getRecords.js +27 -0
- package/lib/esm/getActionProcessor/core/event/apiGatwayEvent/websocket/getStorySession.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/apiGatwayEvent/websocket/getStorySession.js +11 -0
- package/lib/esm/getActionProcessor/core/event/apiGatwayEvent/websocket/index.d.ts +8 -0
- package/lib/esm/getActionProcessor/core/event/apiGatwayEvent/websocket/index.js +12 -0
- package/lib/esm/getActionProcessor/core/event/apiGatwayEvent/websocket/matchStory.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/apiGatwayEvent/websocket/matchStory.js +32 -0
- package/lib/esm/getActionProcessor/core/event/apiGatwayEvent/websocket/transformResponseResult.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/apiGatwayEvent/websocket/transformResponseResult.js +18 -0
- package/lib/esm/getActionProcessor/core/event/apiGatwayEvent/websocket/types.d.ts +16 -0
- package/lib/esm/getActionProcessor/core/event/apiGatwayEvent/websocket/types.js +2 -0
- package/lib/esm/getActionProcessor/core/event/cloudFrontOriginRequest/autoRespond.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/cloudFrontOriginRequest/autoRespond.js +11 -0
- package/lib/esm/getActionProcessor/core/event/cloudFrontOriginRequest/getRecords.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/cloudFrontOriginRequest/getRecords.js +28 -0
- package/lib/esm/getActionProcessor/core/event/cloudFrontOriginRequest/getStorySession.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/cloudFrontOriginRequest/getStorySession.js +11 -0
- package/lib/esm/getActionProcessor/core/event/cloudFrontOriginRequest/index.d.ts +8 -0
- package/lib/esm/getActionProcessor/core/event/cloudFrontOriginRequest/index.js +12 -0
- package/lib/esm/getActionProcessor/core/event/cloudFrontOriginRequest/matchStory.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/cloudFrontOriginRequest/matchStory.js +32 -0
- package/lib/esm/getActionProcessor/core/event/cloudFrontOriginRequest/transformResponseResult.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/cloudFrontOriginRequest/transformResponseResult.js +60 -0
- package/lib/esm/getActionProcessor/core/event/cloudFrontOriginRequest/types.d.ts +8 -0
- package/lib/esm/getActionProcessor/core/event/cloudFrontOriginRequest/types.js +1 -0
- package/lib/esm/getActionProcessor/core/event/cognitoCustomMessage/autoRespond.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/cognitoCustomMessage/autoRespond.js +34 -0
- package/lib/esm/getActionProcessor/core/event/cognitoCustomMessage/getRecords.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/cognitoCustomMessage/getRecords.js +33 -0
- package/lib/esm/getActionProcessor/core/event/cognitoCustomMessage/getStorySession.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/cognitoCustomMessage/getStorySession.js +11 -0
- package/lib/esm/getActionProcessor/core/event/cognitoCustomMessage/index.d.ts +8 -0
- package/lib/esm/getActionProcessor/core/event/cognitoCustomMessage/index.js +12 -0
- package/lib/esm/getActionProcessor/core/event/cognitoCustomMessage/matchStory.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/cognitoCustomMessage/matchStory.js +33 -0
- package/lib/esm/getActionProcessor/core/event/cognitoCustomMessage/transformResponseResult.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/cognitoCustomMessage/transformResponseResult.js +26 -0
- package/lib/esm/getActionProcessor/core/event/cognitoCustomMessage/types.d.ts +9 -0
- package/lib/esm/getActionProcessor/core/event/cognitoCustomMessage/types.js +1 -0
- package/lib/esm/getActionProcessor/core/event/eventBridgeEvent/deployStack/autoRespond.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/eventBridgeEvent/deployStack/autoRespond.js +15 -0
- package/lib/esm/getActionProcessor/core/event/eventBridgeEvent/deployStack/getRecords.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/eventBridgeEvent/deployStack/getRecords.js +33 -0
- package/lib/esm/getActionProcessor/core/event/eventBridgeEvent/deployStack/getStorySession.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/eventBridgeEvent/deployStack/getStorySession.js +11 -0
- package/lib/esm/getActionProcessor/core/event/eventBridgeEvent/deployStack/index.d.ts +8 -0
- package/lib/esm/getActionProcessor/core/event/eventBridgeEvent/deployStack/index.js +12 -0
- package/lib/esm/getActionProcessor/core/event/eventBridgeEvent/deployStack/matchStory.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/eventBridgeEvent/deployStack/matchStory.js +20 -0
- package/lib/esm/getActionProcessor/core/event/eventBridgeEvent/deployStack/transformResponseResult.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/eventBridgeEvent/deployStack/transformResponseResult.js +17 -0
- package/lib/esm/getActionProcessor/core/event/eventBridgeEvent/deployStack/types.d.ts +15 -0
- package/lib/esm/getActionProcessor/core/event/eventBridgeEvent/deployStack/types.js +1 -0
- package/lib/esm/getActionProcessor/core/event/eventBridgeEvent/index.d.ts +2 -0
- package/lib/esm/getActionProcessor/core/event/eventBridgeEvent/index.js +2 -0
- package/lib/esm/getActionProcessor/core/event/eventBridgeEvent/recurringSchedule/autoRespond.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/eventBridgeEvent/recurringSchedule/autoRespond.js +11 -0
- package/lib/esm/getActionProcessor/core/event/eventBridgeEvent/recurringSchedule/getRecords.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/eventBridgeEvent/recurringSchedule/getRecords.js +16 -0
- package/lib/esm/getActionProcessor/core/event/eventBridgeEvent/recurringSchedule/getStorySession.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/eventBridgeEvent/recurringSchedule/getStorySession.js +11 -0
- package/lib/esm/getActionProcessor/core/event/eventBridgeEvent/recurringSchedule/index.d.ts +8 -0
- package/lib/esm/getActionProcessor/core/event/eventBridgeEvent/recurringSchedule/index.js +12 -0
- package/lib/esm/getActionProcessor/core/event/eventBridgeEvent/recurringSchedule/matchStory.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/eventBridgeEvent/recurringSchedule/matchStory.js +17 -0
- package/lib/esm/getActionProcessor/core/event/eventBridgeEvent/recurringSchedule/transformResponseResult.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/eventBridgeEvent/recurringSchedule/transformResponseResult.js +17 -0
- package/lib/esm/getActionProcessor/core/event/eventBridgeEvent/recurringSchedule/types.d.ts +7 -0
- package/lib/esm/getActionProcessor/core/event/eventBridgeEvent/recurringSchedule/types.js +1 -0
- package/lib/esm/getActionProcessor/core/event/index.d.ts +7 -0
- package/lib/esm/getActionProcessor/core/event/index.js +7 -0
- package/lib/esm/getActionProcessor/core/event/lambda/index.d.ts +1 -0
- package/lib/esm/getActionProcessor/core/event/lambda/index.js +1 -0
- package/lib/esm/getActionProcessor/core/event/lambda/serviceFunction/autoRespond.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/lambda/serviceFunction/autoRespond.js +11 -0
- package/lib/esm/getActionProcessor/core/event/lambda/serviceFunction/getRecords.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/lambda/serviceFunction/getRecords.js +15 -0
- package/lib/esm/getActionProcessor/core/event/lambda/serviceFunction/getStorySession.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/lambda/serviceFunction/getStorySession.js +11 -0
- package/lib/esm/getActionProcessor/core/event/lambda/serviceFunction/index.d.ts +8 -0
- package/lib/esm/getActionProcessor/core/event/lambda/serviceFunction/index.js +12 -0
- package/lib/esm/getActionProcessor/core/event/lambda/serviceFunction/matchStory.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/lambda/serviceFunction/matchStory.js +21 -0
- package/lib/esm/getActionProcessor/core/event/lambda/serviceFunction/transformResponseResult.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/lambda/serviceFunction/transformResponseResult.js +14 -0
- package/lib/esm/getActionProcessor/core/event/lambda/serviceFunction/types.d.ts +11 -0
- package/lib/esm/getActionProcessor/core/event/lambda/serviceFunction/types.js +1 -0
- package/lib/esm/getActionProcessor/core/event/s3/fileEvent/autoRespond.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/s3/fileEvent/autoRespond.js +11 -0
- package/lib/esm/getActionProcessor/core/event/s3/fileEvent/getRecords.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/s3/fileEvent/getRecords.js +22 -0
- package/lib/esm/getActionProcessor/core/event/s3/fileEvent/getStorySession.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/s3/fileEvent/getStorySession.js +11 -0
- package/lib/esm/getActionProcessor/core/event/s3/fileEvent/index.d.ts +8 -0
- package/lib/esm/getActionProcessor/core/event/s3/fileEvent/index.js +12 -0
- package/lib/esm/getActionProcessor/core/event/s3/fileEvent/matchStory.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/s3/fileEvent/matchStory.js +12 -0
- package/lib/esm/getActionProcessor/core/event/s3/fileEvent/transformResponseResult.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/s3/fileEvent/transformResponseResult.js +17 -0
- package/lib/esm/getActionProcessor/core/event/s3/fileEvent/types.d.ts +10 -0
- package/lib/esm/getActionProcessor/core/event/s3/fileEvent/types.js +3 -0
- package/lib/esm/getActionProcessor/core/event/s3/index.d.ts +1 -0
- package/lib/esm/getActionProcessor/core/event/s3/index.js +1 -0
- package/lib/esm/getActionProcessor/core/event/sqs/index.d.ts +1 -0
- package/lib/esm/getActionProcessor/core/event/sqs/index.js +1 -0
- package/lib/esm/getActionProcessor/core/event/sqs/queue/autoRespond.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/sqs/queue/autoRespond.js +11 -0
- package/lib/esm/getActionProcessor/core/event/sqs/queue/getRecords.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/sqs/queue/getRecords.js +24 -0
- package/lib/esm/getActionProcessor/core/event/sqs/queue/getStorySession.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/sqs/queue/getStorySession.js +17 -0
- package/lib/esm/getActionProcessor/core/event/sqs/queue/index.d.ts +8 -0
- package/lib/esm/getActionProcessor/core/event/sqs/queue/index.js +12 -0
- package/lib/esm/getActionProcessor/core/event/sqs/queue/matchStory.d.ts +7 -0
- package/lib/esm/getActionProcessor/core/event/sqs/queue/matchStory.js +42 -0
- package/lib/esm/getActionProcessor/core/event/sqs/queue/transformResponseResult.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/event/sqs/queue/transformResponseResult.js +24 -0
- package/lib/esm/getActionProcessor/core/event/sqs/queue/types.d.ts +12 -0
- package/lib/esm/getActionProcessor/core/event/sqs/queue/types.js +1 -0
- package/lib/esm/getActionProcessor/core/event/utils/isAuthValid.d.ts +3 -0
- package/lib/esm/getActionProcessor/core/event/utils/isAuthValid.js +54 -0
- package/lib/esm/getActionProcessor/core/event/utils/parseMultipartFormData.d.ts +2 -0
- package/lib/esm/getActionProcessor/core/event/utils/parseMultipartFormData.js +45 -0
- package/lib/esm/getActionProcessor/core/eventBus/getQueueSendMessageActionProcessor.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/eventBus/getQueueSendMessageActionProcessor.js +28 -0
- package/lib/esm/getActionProcessor/core/eventBus/index.d.ts +5 -0
- package/lib/esm/getActionProcessor/core/eventBus/index.js +4 -0
- package/lib/esm/getActionProcessor/core/file/getFileDeleteActionProcessor.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/file/getFileDeleteActionProcessor.js +21 -0
- package/lib/esm/getActionProcessor/core/file/getFileExistsActionProcessor.d.ts +5 -0
- package/lib/esm/getActionProcessor/core/file/getFileExistsActionProcessor.js +12 -0
- package/lib/esm/getActionProcessor/core/file/getFileGenerateTemporarySecureUrlActionProcessor.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/file/getFileGenerateTemporarySecureUrlActionProcessor.js +19 -0
- package/lib/esm/getActionProcessor/core/file/getFileListDirectoryActionProcessor.d.ts +5 -0
- package/lib/esm/getActionProcessor/core/file/getFileListDirectoryActionProcessor.js +21 -0
- package/lib/esm/getActionProcessor/core/file/getFileReadBinaryContentsActionProcessor.d.ts +5 -0
- package/lib/esm/getActionProcessor/core/file/getFileReadBinaryContentsActionProcessor.js +12 -0
- package/lib/esm/getActionProcessor/core/file/getFileReadTextContentsActionProcessor.d.ts +5 -0
- package/lib/esm/getActionProcessor/core/file/getFileReadTextContentsActionProcessor.js +12 -0
- package/lib/esm/getActionProcessor/core/file/getFileWriteBinaryContentsActionProcessor.d.ts +5 -0
- package/lib/esm/getActionProcessor/core/file/getFileWriteBinaryContentsActionProcessor.js +14 -0
- package/lib/esm/getActionProcessor/core/file/getFileWriteTextContentsActionProcessor.d.ts +5 -0
- package/lib/esm/getActionProcessor/core/file/getFileWriteTextContentsActionProcessor.js +14 -0
- package/lib/esm/getActionProcessor/core/file/index.d.ts +12 -0
- package/lib/esm/getActionProcessor/core/file/index.js +18 -0
- package/lib/esm/getActionProcessor/core/file/utils/index.d.ts +1 -0
- package/lib/esm/getActionProcessor/core/file/utils/index.js +1 -0
- package/lib/esm/getActionProcessor/core/file/utils/resolveStorageDriveBucketName.d.ts +2 -0
- package/lib/esm/getActionProcessor/core/file/utils/resolveStorageDriveBucketName.js +9 -0
- package/lib/esm/getActionProcessor/core/index.d.ts +12 -0
- package/lib/esm/getActionProcessor/core/index.js +12 -0
- package/lib/esm/getActionProcessor/core/keyValueStore/getKeyValueStoreDeleteActionProcessor.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/keyValueStore/getKeyValueStoreDeleteActionProcessor.js +16 -0
- package/lib/esm/getActionProcessor/core/keyValueStore/getKeyValueStoreGetActionProcessor.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/keyValueStore/getKeyValueStoreGetActionProcessor.js +15 -0
- package/lib/esm/getActionProcessor/core/keyValueStore/getKeyValueStoreGetAllActionProcessor.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/keyValueStore/getKeyValueStoreGetAllActionProcessor.js +15 -0
- package/lib/esm/getActionProcessor/core/keyValueStore/getKeyValueStoreQueryActionProcessor.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/keyValueStore/getKeyValueStoreQueryActionProcessor.js +20 -0
- package/lib/esm/getActionProcessor/core/keyValueStore/getKeyValueStoreScanActionProcessor.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/keyValueStore/getKeyValueStoreScanActionProcessor.js +15 -0
- package/lib/esm/getActionProcessor/core/keyValueStore/getKeyValueStoreUpdateActionProcessor.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/keyValueStore/getKeyValueStoreUpdateActionProcessor.js +16 -0
- package/lib/esm/getActionProcessor/core/keyValueStore/getKeyValueStoreUpsertActionProcessor.d.ts +5 -0
- package/lib/esm/getActionProcessor/core/keyValueStore/getKeyValueStoreUpsertActionProcessor.js +26 -0
- package/lib/esm/getActionProcessor/core/keyValueStore/index.d.ts +10 -0
- package/lib/esm/getActionProcessor/core/keyValueStore/index.js +14 -0
- package/lib/esm/getActionProcessor/core/queue/getQueueSendMessageActionProcessor.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/queue/getQueueSendMessageActionProcessor.js +25 -0
- package/lib/esm/getActionProcessor/core/queue/index.d.ts +5 -0
- package/lib/esm/getActionProcessor/core/queue/index.js +4 -0
- package/lib/esm/getActionProcessor/core/system/getExecuteStoryActionProcessor.d.ts +7 -0
- package/lib/esm/getActionProcessor/core/system/getExecuteStoryActionProcessor.js +35 -0
- package/lib/esm/getActionProcessor/core/system/index.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/system/index.js +4 -0
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryAuthenticateUserActionProcessor.d.ts +5 -0
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryAuthenticateUserActionProcessor.js +25 -0
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryChangePasswordActionProcessor.d.ts +5 -0
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryChangePasswordActionProcessor.js +14 -0
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryConfirmEmailVerificationActionProcessor.d.ts +5 -0
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryConfirmEmailVerificationActionProcessor.js +14 -0
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryConfirmForgetPasswordActionProcessor.d.ts +5 -0
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryConfirmForgetPasswordActionProcessor.js +18 -0
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryCreateUserActionProcessor.d.ts +5 -0
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryCreateUserActionProcessor.js +18 -0
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryDecodeAccessTokenActionProcessor.d.ts +5 -0
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryDecodeAccessTokenActionProcessor.js +23 -0
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryForgetPasswordActionProcessor.d.ts +5 -0
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryForgetPasswordActionProcessor.js +18 -0
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryGetUserAttributesActionProcessor.d.ts +5 -0
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryGetUserAttributesActionProcessor.js +24 -0
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryGetUserAttributesByUserIdActionProcessor.d.ts +5 -0
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryGetUserAttributesByUserIdActionProcessor.js +17 -0
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryGetUsersActionProcessor.d.ts +5 -0
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryGetUsersActionProcessor.js +17 -0
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryReadAccessTokenActionProcessor.d.ts +5 -0
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryReadAccessTokenActionProcessor.js +23 -0
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryRefreshTokenActionProcessor.d.ts +5 -0
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryRefreshTokenActionProcessor.js +23 -0
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryRequestEmailVerificationActionProcessor.d.ts +5 -0
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryRequestEmailVerificationActionProcessor.js +14 -0
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryRespondToAuthChallengeActionProcessor.d.ts +5 -0
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryRespondToAuthChallengeActionProcessor.js +28 -0
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectorySetAccessTokenActionProcessor.d.ts +5 -0
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectorySetAccessTokenActionProcessor.js +14 -0
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectorySetPasswordActionProcessor.d.ts +5 -0
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectorySetPasswordActionProcessor.js +17 -0
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectorySetUserAttributesActionProcessor.d.ts +5 -0
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectorySetUserAttributesActionProcessor.js +17 -0
- package/lib/esm/getActionProcessor/core/userDirectory/index.d.ts +21 -0
- package/lib/esm/getActionProcessor/core/userDirectory/index.js +36 -0
- package/lib/esm/getActionProcessor/index.d.ts +2 -0
- package/lib/esm/getActionProcessor/index.js +2 -0
- package/lib/esm/getActionProcessor/webserver/admin/getAdminActionProcessor.d.ts +9 -0
- package/lib/esm/getActionProcessor/webserver/admin/getAdminActionProcessor.js +50 -0
- package/lib/esm/getActionProcessor/webserver/admin/index.d.ts +8 -0
- package/lib/esm/getActionProcessor/webserver/admin/index.js +4 -0
- package/lib/esm/getActionProcessor/webserver/index.d.ts +4 -0
- package/lib/esm/getActionProcessor/webserver/index.js +4 -0
- package/lib/esm/getActionProcessor/webserver/serviceFunction/getServiceFunctionActionProcessor.d.ts +6 -0
- package/lib/esm/getActionProcessor/webserver/serviceFunction/getServiceFunctionActionProcessor.js +34 -0
- package/lib/esm/getActionProcessor/webserver/serviceFunction/index.d.ts +5 -0
- package/lib/esm/getActionProcessor/webserver/serviceFunction/index.js +4 -0
- package/lib/esm/getActionProcessor/webserver/webEntry/getWebEntryInvalidateCacheActionProcessor.d.ts +6 -0
- package/lib/esm/getActionProcessor/webserver/webEntry/getWebEntryInvalidateCacheActionProcessor.js +18 -0
- package/lib/esm/getActionProcessor/webserver/webEntry/index.d.ts +5 -0
- package/lib/esm/getActionProcessor/webserver/webEntry/index.js +4 -0
- package/lib/esm/getActionProcessor/webserver/websocket/getWebsocketSendMessageActionProcessor.d.ts +6 -0
- package/lib/esm/getActionProcessor/webserver/websocket/getWebsocketSendMessageActionProcessor.js +26 -0
- package/lib/esm/getActionProcessor/webserver/websocket/index.d.ts +5 -0
- package/lib/esm/getActionProcessor/webserver/websocket/index.js +4 -0
- package/lib/esm/index.d.ts +8 -0
- package/lib/esm/index.js +8 -0
- package/lib/esm/logic/acm/findMatchingCertificates.d.ts +1 -0
- package/lib/esm/logic/acm/findMatchingCertificates.js +39 -0
- package/lib/esm/logic/acm/getDomainValidationOptions.d.ts +2 -0
- package/lib/esm/logic/acm/getDomainValidationOptions.js +26 -0
- package/lib/esm/logic/apiGateway/getApiKeys.d.ts +2 -0
- package/lib/esm/logic/apiGateway/getApiKeys.js +13 -0
- package/lib/esm/logic/apiGateway/websocketSendMessage.d.ts +1 -0
- package/lib/esm/logic/apiGateway/websocketSendMessage.js +16 -0
- package/lib/esm/logic/cache/memoFunc.d.ts +7 -0
- package/lib/esm/logic/cache/memoFunc.js +28 -0
- package/lib/esm/logic/cache/memoFuncAsync.d.ts +7 -0
- package/lib/esm/logic/cache/memoFuncAsync.js +29 -0
- package/lib/esm/logic/cloudFront/invalidateCache.d.ts +2 -0
- package/lib/esm/logic/cloudFront/invalidateCache.js +24 -0
- package/lib/esm/logic/cloudformation/getExportedValue.d.ts +1 -0
- package/lib/esm/logic/cloudformation/getExportedValue.js +17 -0
- package/lib/esm/logic/cognito/authenticateUser.d.ts +2 -0
- package/lib/esm/logic/cognito/authenticateUser.js +25 -0
- package/lib/esm/logic/cognito/changePassword.d.ts +1 -0
- package/lib/esm/logic/cognito/changePassword.js +11 -0
- package/lib/esm/logic/cognito/cognitoAttributeMap.d.ts +10 -0
- package/lib/esm/logic/cognito/cognitoAttributeMap.js +45 -0
- package/lib/esm/logic/cognito/confirmForgotPassword.d.ts +2 -0
- package/lib/esm/logic/cognito/confirmForgotPassword.js +21 -0
- package/lib/esm/logic/cognito/createUser.d.ts +2 -0
- package/lib/esm/logic/cognito/createUser.js +26 -0
- package/lib/esm/logic/cognito/decodeValidJwt.d.ts +5 -0
- package/lib/esm/logic/cognito/decodeValidJwt.js +30 -0
- package/lib/esm/logic/cognito/forgotPassword.d.ts +2 -0
- package/lib/esm/logic/cognito/forgotPassword.js +24 -0
- package/lib/esm/logic/cognito/getUser.d.ts +10 -0
- package/lib/esm/logic/cognito/getUser.js +23 -0
- package/lib/esm/logic/cognito/getUserAttributes.d.ts +2 -0
- package/lib/esm/logic/cognito/getUserAttributes.js +14 -0
- package/lib/esm/logic/cognito/getUserAttributesBySub.d.ts +2 -0
- package/lib/esm/logic/cognito/getUserAttributesBySub.js +16 -0
- package/lib/esm/logic/cognito/getUserPoolClientSecret.d.ts +1 -0
- package/lib/esm/logic/cognito/getUserPoolClientSecret.js +14 -0
- package/lib/esm/logic/cognito/listPagedUsers.d.ts +2 -0
- package/lib/esm/logic/cognito/listPagedUsers.js +19 -0
- package/lib/esm/logic/cognito/refreshToken.d.ts +2 -0
- package/lib/esm/logic/cognito/refreshToken.js +23 -0
- package/lib/esm/logic/cognito/requestEmailVerificationCode.d.ts +1 -0
- package/lib/esm/logic/cognito/requestEmailVerificationCode.js +10 -0
- package/lib/esm/logic/cognito/respondToAuthChallengeChallenge.d.ts +2 -0
- package/lib/esm/logic/cognito/respondToAuthChallengeChallenge.js +24 -0
- package/lib/esm/logic/cognito/setUserAttributes.d.ts +2 -0
- package/lib/esm/logic/cognito/setUserAttributes.js +13 -0
- package/lib/esm/logic/cognito/setUserPassword.d.ts +1 -0
- package/lib/esm/logic/cognito/setUserPassword.js +13 -0
- package/lib/esm/logic/cognito/utils/calculateSecretHash.d.ts +1 -0
- package/lib/esm/logic/cognito/utils/calculateSecretHash.js +10 -0
- package/lib/esm/logic/cognito/utils/index.d.ts +4 -0
- package/lib/esm/logic/cognito/utils/index.js +4 -0
- package/lib/esm/logic/cognito/utils/pageKeyToPaginationToken.d.ts +1 -0
- package/lib/esm/logic/cognito/utils/pageKeyToPaginationToken.js +6 -0
- package/lib/esm/logic/cognito/utils/paginationTokenToPageKey.d.ts +1 -0
- package/lib/esm/logic/cognito/utils/paginationTokenToPageKey.js +6 -0
- package/lib/esm/logic/cognito/utils/transformCognitoResponse.d.ts +5 -0
- package/lib/esm/logic/cognito/utils/transformCognitoResponse.js +37 -0
- package/lib/esm/logic/cognito/verifyJwt.d.ts +1 -0
- package/lib/esm/logic/cognito/verifyJwt.js +6 -0
- package/lib/esm/logic/cognito/verifyUserEmail.d.ts +1 -0
- package/lib/esm/logic/cognito/verifyUserEmail.js +11 -0
- package/lib/esm/logic/createAwsClient.d.ts +3 -0
- package/lib/esm/logic/createAwsClient.js +32 -0
- package/lib/esm/logic/dynamo/convertObjectToDynamoMap.d.ts +1 -0
- package/lib/esm/logic/dynamo/convertObjectToDynamoMap.js +63 -0
- package/lib/esm/logic/dynamo/deleteItem.d.ts +2 -0
- package/lib/esm/logic/dynamo/deleteItem.js +16 -0
- package/lib/esm/logic/dynamo/getAllItems.d.ts +1 -0
- package/lib/esm/logic/dynamo/getAllItems.js +23 -0
- package/lib/esm/logic/dynamo/getItem.d.ts +1 -0
- package/lib/esm/logic/dynamo/getItem.js +21 -0
- package/lib/esm/logic/dynamo/getLogByCorrelation.d.ts +2 -0
- package/lib/esm/logic/dynamo/getLogByCorrelation.js +39 -0
- package/lib/esm/logic/dynamo/getLogChildrenByFromCorrelation.d.ts +2 -0
- package/lib/esm/logic/dynamo/getLogChildrenByFromCorrelation.js +49 -0
- package/lib/esm/logic/dynamo/getPagedItemsOverRange.d.ts +2 -0
- package/lib/esm/logic/dynamo/getPagedItemsOverRange.js +48 -0
- package/lib/esm/logic/dynamo/index.d.ts +6 -0
- package/lib/esm/logic/dynamo/index.js +6 -0
- package/lib/esm/logic/dynamo/logs/index.d.ts +1 -0
- package/lib/esm/logic/dynamo/logs/index.js +1 -0
- package/lib/esm/logic/dynamo/logs/utils/index.d.ts +2 -0
- package/lib/esm/logic/dynamo/logs/utils/index.js +2 -0
- package/lib/esm/logic/dynamo/logs/utils/lastEvaluatedKeyToString.d.ts +1 -0
- package/lib/esm/logic/dynamo/logs/utils/lastEvaluatedKeyToString.js +3 -0
- package/lib/esm/logic/dynamo/logs/utils/stringToLastEvaluatedKey.d.ts +2 -0
- package/lib/esm/logic/dynamo/logs/utils/stringToLastEvaluatedKey.js +3 -0
- package/lib/esm/logic/dynamo/putItem.d.ts +5 -0
- package/lib/esm/logic/dynamo/putItem.js +33 -0
- package/lib/esm/logic/dynamo/qpqDynamoOrm/buildDynamoQuery.d.ts +10 -0
- package/lib/esm/logic/dynamo/qpqDynamoOrm/buildDynamoQuery.js +187 -0
- package/lib/esm/logic/dynamo/qpqDynamoOrm/buildDynamoUpdate.d.ts +12 -0
- package/lib/esm/logic/dynamo/qpqDynamoOrm/buildDynamoUpdate.js +125 -0
- package/lib/esm/logic/dynamo/qpqDynamoOrm/getDynamoTableIndexByConfigAndQuery.d.ts +2 -0
- package/lib/esm/logic/dynamo/qpqDynamoOrm/getDynamoTableIndexByConfigAndQuery.js +22 -0
- package/lib/esm/logic/dynamo/qpqDynamoOrm/index.d.ts +3 -0
- package/lib/esm/logic/dynamo/qpqDynamoOrm/index.js +3 -0
- package/lib/esm/logic/dynamo/query.d.ts +2 -0
- package/lib/esm/logic/dynamo/query.js +28 -0
- package/lib/esm/logic/dynamo/scan.d.ts +2 -0
- package/lib/esm/logic/dynamo/scan.js +24 -0
- package/lib/esm/logic/dynamo/updateItem.d.ts +2 -0
- package/lib/esm/logic/dynamo/updateItem.js +22 -0
- package/lib/esm/logic/dynamo/utils/itemsToQpqPagedData.d.ts +2 -0
- package/lib/esm/logic/dynamo/utils/itemsToQpqPagedData.js +5 -0
- package/lib/esm/logic/dynamo/utils/qpqPagedDataToItems.d.ts +4 -0
- package/lib/esm/logic/dynamo/utils/qpqPagedDataToItems.js +5 -0
- package/lib/esm/logic/lambda/executeLambdaByName.d.ts +1 -0
- package/lib/esm/logic/lambda/executeLambdaByName.js +25 -0
- package/lib/esm/logic/parametersManager/getParameter.d.ts +1 -0
- package/lib/esm/logic/parametersManager/getParameter.js +10 -0
- package/lib/esm/logic/parametersManager/getParameters.d.ts +1 -0
- package/lib/esm/logic/parametersManager/getParameters.js +11 -0
- package/lib/esm/logic/parametersManager/setParameter.d.ts +1 -0
- package/lib/esm/logic/parametersManager/setParameter.js +11 -0
- package/lib/esm/logic/s3/deleteFiles.d.ts +1 -0
- package/lib/esm/logic/s3/deleteFiles.js +14 -0
- package/lib/esm/logic/s3/generatePresignedUrl.d.ts +1 -0
- package/lib/esm/logic/s3/generatePresignedUrl.js +19 -0
- package/lib/esm/logic/s3/listFiles.d.ts +10 -0
- package/lib/esm/logic/s3/listFiles.js +42 -0
- package/lib/esm/logic/s3/objectExists.d.ts +1 -0
- package/lib/esm/logic/s3/objectExists.js +16 -0
- package/lib/esm/logic/s3/readBinaryFile.d.ts +2 -0
- package/lib/esm/logic/s3/readBinaryFile.js +15 -0
- package/lib/esm/logic/s3/readTextFile.d.ts +1 -0
- package/lib/esm/logic/s3/readTextFile.js +10 -0
- package/lib/esm/logic/s3/s3Utils.d.ts +7 -0
- package/lib/esm/logic/s3/s3Utils.js +7 -0
- package/lib/esm/logic/s3/writeBinaryFile.d.ts +3 -0
- package/lib/esm/logic/s3/writeBinaryFile.js +13 -0
- package/lib/esm/logic/s3/writeTextFile.d.ts +2 -0
- package/lib/esm/logic/s3/writeTextFile.js +11 -0
- package/lib/esm/logic/secretsManager/getSecret.d.ts +1 -0
- package/lib/esm/logic/secretsManager/getSecret.js +14 -0
- package/lib/esm/logic/sns/publishMessage.d.ts +1 -0
- package/lib/esm/logic/sns/publishMessage.js +28 -0
- package/lib/esm/logic/sqs/getQueueUrl.d.ts +2 -0
- package/lib/esm/logic/sqs/getQueueUrl.js +7 -0
- package/lib/esm/logic/sqs/sendMessages.d.ts +1 -0
- package/lib/esm/logic/sqs/sendMessages.js +23 -0
- package/lib/esm/runtimeConfig/QPQAWSResourceMap.d.ts +4 -0
- package/lib/esm/runtimeConfig/QPQAWSResourceMap.js +1 -0
- package/lib/esm/runtimeConfig/qpqAwsLambdaRuntimeConfigUtils.d.ts +4 -0
- package/lib/esm/runtimeConfig/qpqAwsLambdaRuntimeConfigUtils.js +12 -0
- package/lib/esm/types/DynamicLoader.d.ts +1 -0
- package/lib/esm/types/DynamicLoader.js +1 -0
- package/lib/esm/types/index.d.ts +1 -0
- package/lib/esm/types/index.js +1 -0
- package/package.json +12 -8
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { CognitoIdentityProviderClient, AdminGetUserCommand, } from '@aws-sdk/client-cognito-identity-provider';
|
|
2
|
+
import { getQpqAttributesFromCognitoUserAttributes } from './cognitoAttributeMap';
|
|
3
|
+
import { createAwsClient } from '../createAwsClient';
|
|
4
|
+
export const getUserAttributes = async (userPoolId, region, username) => {
|
|
5
|
+
const cognitoClient = createAwsClient(CognitoIdentityProviderClient, { region });
|
|
6
|
+
const params = {
|
|
7
|
+
UserPoolId: userPoolId,
|
|
8
|
+
Username: username,
|
|
9
|
+
};
|
|
10
|
+
const response = await cognitoClient.send(new AdminGetUserCommand(params));
|
|
11
|
+
const validAttributes = (response.UserAttributes || []).filter((attr) => attr.Name && attr.Value);
|
|
12
|
+
const attributes = getQpqAttributesFromCognitoUserAttributes(validAttributes);
|
|
13
|
+
return attributes;
|
|
14
|
+
};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { CognitoIdentityProviderClient, ListUsersCommand, } from '@aws-sdk/client-cognito-identity-provider';
|
|
2
|
+
import { getQpqAttributesFromCognitoUserAttributes } from './cognitoAttributeMap';
|
|
3
|
+
import { createAwsClient } from '../createAwsClient';
|
|
4
|
+
export const getUserAttributesBySub = async (userPoolId, region, sub) => {
|
|
5
|
+
const cognitoClient = createAwsClient(CognitoIdentityProviderClient, { region });
|
|
6
|
+
const response = await cognitoClient.send(new ListUsersCommand({
|
|
7
|
+
UserPoolId: userPoolId,
|
|
8
|
+
Filter: `sub = "${sub}"`,
|
|
9
|
+
}));
|
|
10
|
+
const [user] = response?.Users || [];
|
|
11
|
+
if (!user) {
|
|
12
|
+
throw new Error('User not found');
|
|
13
|
+
}
|
|
14
|
+
const validAttributes = (user.Attributes || []).filter((attr) => attr.Name && attr.Value);
|
|
15
|
+
return getQpqAttributesFromCognitoUserAttributes(validAttributes);
|
|
16
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const getUserPoolClientSecret: (userPoolId: string, clientId: string, region: string) => Promise<string>;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { CognitoIdentityProviderClient, DescribeUserPoolClientCommand, } from '@aws-sdk/client-cognito-identity-provider';
|
|
2
|
+
import { createAwsClient } from '../createAwsClient';
|
|
3
|
+
export const getUserPoolClientSecret = async (userPoolId, clientId, region) => {
|
|
4
|
+
const cognitoClient = createAwsClient(CognitoIdentityProviderClient, { region });
|
|
5
|
+
const params = {
|
|
6
|
+
ClientId: clientId,
|
|
7
|
+
UserPoolId: userPoolId,
|
|
8
|
+
};
|
|
9
|
+
const response = await cognitoClient.send(new DescribeUserPoolClientCommand(params));
|
|
10
|
+
if (!response.UserPoolClient?.ClientSecret) {
|
|
11
|
+
throw new Error('Can not find client secret for Cognito user pool client');
|
|
12
|
+
}
|
|
13
|
+
return response.UserPoolClient?.ClientSecret;
|
|
14
|
+
};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { CognitoIdentityProviderClient, ListUsersCommand, } from '@aws-sdk/client-cognito-identity-provider';
|
|
2
|
+
import { getQpqAttributesFromCognitoUserAttributes } from './cognitoAttributeMap';
|
|
3
|
+
import { pageKeyToPaginationToken, paginationTokenToPageKey } from './utils';
|
|
4
|
+
import { createAwsClient } from '../createAwsClient';
|
|
5
|
+
export const listPagedUsers = async (userPoolId, region, pageKey) => {
|
|
6
|
+
const cognitoClient = createAwsClient(CognitoIdentityProviderClient, { region });
|
|
7
|
+
const response = await cognitoClient.send(new ListUsersCommand({
|
|
8
|
+
UserPoolId: userPoolId,
|
|
9
|
+
PaginationToken: pageKeyToPaginationToken(pageKey),
|
|
10
|
+
}));
|
|
11
|
+
const users = (response.Users || []).map((user) => {
|
|
12
|
+
const validAttributes = (user.Attributes || []).filter((attr) => attr.Name && attr.Value);
|
|
13
|
+
return getQpqAttributesFromCognitoUserAttributes(validAttributes);
|
|
14
|
+
});
|
|
15
|
+
return {
|
|
16
|
+
nextPageKey: paginationTokenToPageKey(response.PaginationToken),
|
|
17
|
+
items: users,
|
|
18
|
+
};
|
|
19
|
+
};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { CognitoIdentityProviderClient, AdminInitiateAuthCommand, AuthFlowType, } from '@aws-sdk/client-cognito-identity-provider';
|
|
2
|
+
import { calculateSecretHash } from './utils/calculateSecretHash';
|
|
3
|
+
import { getUserPoolClientSecret } from './getUserPoolClientSecret';
|
|
4
|
+
import { cognitoAdminInitiateAuthResponseToQpqAuthenticationInfo } from './utils/transformCognitoResponse';
|
|
5
|
+
import { createAwsClient } from '../createAwsClient';
|
|
6
|
+
export const refreshToken = async (userPoolId, clientId, region, username, refreshToken) => {
|
|
7
|
+
const cognitoClient = createAwsClient(CognitoIdentityProviderClient, { region });
|
|
8
|
+
const clientSecret = await getUserPoolClientSecret(userPoolId, clientId, region);
|
|
9
|
+
const secretHash = calculateSecretHash(username, clientId, clientSecret);
|
|
10
|
+
const params = {
|
|
11
|
+
AuthFlow: AuthFlowType.REFRESH_TOKEN_AUTH,
|
|
12
|
+
UserPoolId: userPoolId,
|
|
13
|
+
ClientId: clientId,
|
|
14
|
+
AuthParameters: {
|
|
15
|
+
REFRESH_TOKEN: refreshToken,
|
|
16
|
+
SECRET_HASH: secretHash,
|
|
17
|
+
},
|
|
18
|
+
};
|
|
19
|
+
// Time we issued the request
|
|
20
|
+
const issueDateTime = new Date().toISOString();
|
|
21
|
+
const response = await cognitoClient.send(new AdminInitiateAuthCommand(params));
|
|
22
|
+
return cognitoAdminInitiateAuthResponseToQpqAuthenticationInfo(response, issueDateTime);
|
|
23
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const requestEmailVerificationCode: (region: string, accessToken: string) => Promise<void>;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { CognitoIdentityProviderClient, GetUserAttributeVerificationCodeCommand, } from '@aws-sdk/client-cognito-identity-provider';
|
|
2
|
+
import { createAwsClient } from '../createAwsClient';
|
|
3
|
+
export const requestEmailVerificationCode = async (region, accessToken) => {
|
|
4
|
+
const cognitoClient = createAwsClient(CognitoIdentityProviderClient, { region });
|
|
5
|
+
const params = {
|
|
6
|
+
AccessToken: accessToken,
|
|
7
|
+
AttributeName: 'email', // Request verification for the email attribute
|
|
8
|
+
};
|
|
9
|
+
const requestEmailVerificationCodeResponse = await cognitoClient.send(new GetUserAttributeVerificationCodeCommand(params));
|
|
10
|
+
};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import { AuthenticateUserResponse } from 'quidproquo-core';
|
|
2
|
+
export declare const respondToAuthChallengeChallenge: (userPoolId: string, clientId: string, region: string, username: string, session: string, attributes: Record<string, string>) => Promise<AuthenticateUserResponse>;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { CognitoIdentityProviderClient, RespondToAuthChallengeCommand, ChallengeNameType, } from '@aws-sdk/client-cognito-identity-provider';
|
|
2
|
+
import { calculateSecretHash } from './utils/calculateSecretHash';
|
|
3
|
+
import { getUserPoolClientSecret } from './getUserPoolClientSecret';
|
|
4
|
+
import { cognitoAdminInitiateAuthResponseToQpqAuthenticationInfo } from './utils/transformCognitoResponse';
|
|
5
|
+
import { createAwsClient } from '../createAwsClient';
|
|
6
|
+
export const respondToAuthChallengeChallenge = async (userPoolId, clientId, region, username, session, attributes) => {
|
|
7
|
+
const cognitoClient = createAwsClient(CognitoIdentityProviderClient, { region });
|
|
8
|
+
const clientSecret = await getUserPoolClientSecret(userPoolId, clientId, region);
|
|
9
|
+
const secretHash = calculateSecretHash(username, clientId, clientSecret);
|
|
10
|
+
const params = {
|
|
11
|
+
ChallengeName: ChallengeNameType.NEW_PASSWORD_REQUIRED,
|
|
12
|
+
ClientId: clientId,
|
|
13
|
+
Session: session,
|
|
14
|
+
ChallengeResponses: {
|
|
15
|
+
USERNAME: username,
|
|
16
|
+
SECRET_HASH: secretHash,
|
|
17
|
+
...attributes,
|
|
18
|
+
},
|
|
19
|
+
};
|
|
20
|
+
const issueDateTime = new Date().toISOString();
|
|
21
|
+
const response = await cognitoClient.send(new RespondToAuthChallengeCommand(params));
|
|
22
|
+
// transform the response into your custom format, similar to your refreshToken function
|
|
23
|
+
return cognitoAdminInitiateAuthResponseToQpqAuthenticationInfo(response, issueDateTime);
|
|
24
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { CognitoIdentityProviderClient, AdminUpdateUserAttributesCommand, } from '@aws-sdk/client-cognito-identity-provider';
|
|
2
|
+
import { getCognitoUserAttributesFromQpqUserAttributes } from './cognitoAttributeMap';
|
|
3
|
+
import { createAwsClient } from '../createAwsClient';
|
|
4
|
+
export const setUserAttributes = async (userPoolId, region, username, userAttributes) => {
|
|
5
|
+
const cognitoClient = createAwsClient(CognitoIdentityProviderClient, { region });
|
|
6
|
+
const { userId, ...writeableUserAttributes } = userAttributes;
|
|
7
|
+
const params = {
|
|
8
|
+
UserPoolId: userPoolId,
|
|
9
|
+
Username: username,
|
|
10
|
+
UserAttributes: getCognitoUserAttributesFromQpqUserAttributes(writeableUserAttributes),
|
|
11
|
+
};
|
|
12
|
+
await cognitoClient.send(new AdminUpdateUserAttributesCommand(params));
|
|
13
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const setUserPassword: (region: string, userPoolId: string, username: string, password: string) => Promise<void>;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { CognitoIdentityProviderClient, AdminSetUserPasswordCommand, } from '@aws-sdk/client-cognito-identity-provider';
|
|
2
|
+
import { createAwsClient } from '../createAwsClient';
|
|
3
|
+
export const setUserPassword = async (region, userPoolId, username, password) => {
|
|
4
|
+
const cognitoClient = createAwsClient(CognitoIdentityProviderClient, { region });
|
|
5
|
+
// There has to be a better way than this?
|
|
6
|
+
const passwordParams = {
|
|
7
|
+
Password: password,
|
|
8
|
+
Username: username,
|
|
9
|
+
UserPoolId: userPoolId,
|
|
10
|
+
Permanent: true,
|
|
11
|
+
};
|
|
12
|
+
await cognitoClient.send(new AdminSetUserPasswordCommand(passwordParams));
|
|
13
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const calculateSecretHash: (username: string, clientId: string, clientSecret: string) => string;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { createHmac } from 'crypto';
|
|
2
|
+
import { memoFunc } from '../../cache/memoFunc';
|
|
3
|
+
export const calculateSecretHash = memoFunc((username, clientId, clientSecret) => {
|
|
4
|
+
// create the hmac with the sha256 algorithm and a secret key
|
|
5
|
+
const hasher = createHmac('sha256', clientSecret);
|
|
6
|
+
// add the value we want to hash
|
|
7
|
+
hasher.update(`${username}${clientId}`);
|
|
8
|
+
// get the hashed value as base64
|
|
9
|
+
return hasher.digest('base64');
|
|
10
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function pageKeyToPaginationToken(pageKey?: string): string | undefined;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function paginationTokenToPageKey(paginationToken?: string): string | undefined;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { AuthenticateUserResponse, AuthenticationInfo, AuthenticateUserChallenge } from 'quidproquo-core';
|
|
2
|
+
import { AuthenticationResultType, AdminInitiateAuthResponse, ChallengeNameType } from '@aws-sdk/client-cognito-identity-provider';
|
|
3
|
+
export declare const cognitoAuthenticationResultTypeToQpqAuthenticationInfo: (authResult: AuthenticationResultType, issueDateTime: string) => AuthenticationInfo;
|
|
4
|
+
export declare const cognitoChallengeNameTypeToQpqAuthenticateUserChallenge: (cognitoChallengeName: ChallengeNameType | string | undefined) => AuthenticateUserChallenge;
|
|
5
|
+
export declare const cognitoAdminInitiateAuthResponseToQpqAuthenticationInfo: (authResponse: AdminInitiateAuthResponse, issueDateTime: string) => AuthenticateUserResponse;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { AuthenticateUserChallenge, } from 'quidproquo-core';
|
|
2
|
+
import { ChallengeNameType, } from '@aws-sdk/client-cognito-identity-provider';
|
|
3
|
+
export const cognitoAuthenticationResultTypeToQpqAuthenticationInfo = (authResult, issueDateTime) => {
|
|
4
|
+
// Parse the issueDateTime and add the expiresIn to get the expiration date
|
|
5
|
+
let issueDate = new Date(issueDateTime);
|
|
6
|
+
issueDate.setSeconds(issueDate.getSeconds() + (authResult.ExpiresIn || 0));
|
|
7
|
+
const expiresAt = issueDate.toISOString();
|
|
8
|
+
return {
|
|
9
|
+
accessToken: authResult.AccessToken,
|
|
10
|
+
idToken: authResult.IdToken,
|
|
11
|
+
refreshToken: authResult.RefreshToken,
|
|
12
|
+
tokenType: authResult.TokenType,
|
|
13
|
+
expirationDurationInSeconds: authResult.ExpiresIn,
|
|
14
|
+
expiresAt,
|
|
15
|
+
};
|
|
16
|
+
};
|
|
17
|
+
export const cognitoChallengeNameTypeToQpqAuthenticateUserChallenge = (cognitoChallengeName) => {
|
|
18
|
+
if (!cognitoChallengeName) {
|
|
19
|
+
return AuthenticateUserChallenge.NONE;
|
|
20
|
+
}
|
|
21
|
+
const map = {
|
|
22
|
+
[ChallengeNameType.NEW_PASSWORD_REQUIRED]: AuthenticateUserChallenge.NEW_PASSWORD_REQUIRED,
|
|
23
|
+
};
|
|
24
|
+
// TODO: handle the NOT-IMP cases
|
|
25
|
+
const challenge = map[cognitoChallengeName] || `NOT-IMP-${cognitoChallengeName}`;
|
|
26
|
+
return challenge;
|
|
27
|
+
};
|
|
28
|
+
export const cognitoAdminInitiateAuthResponseToQpqAuthenticationInfo = (authResponse, issueDateTime) => {
|
|
29
|
+
const res = {
|
|
30
|
+
session: authResponse.Session,
|
|
31
|
+
challenge: cognitoChallengeNameTypeToQpqAuthenticateUserChallenge(authResponse.ChallengeName),
|
|
32
|
+
};
|
|
33
|
+
if (authResponse.AuthenticationResult) {
|
|
34
|
+
res.authenticationInfo = cognitoAuthenticationResultTypeToQpqAuthenticationInfo(authResponse.AuthenticationResult, issueDateTime);
|
|
35
|
+
}
|
|
36
|
+
return res;
|
|
37
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const verifyJwt: (accessToken: string, userPoolId: string, region: string, ignoreExpiration?: boolean) => Promise<boolean>;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { decodeValidJwt } from './decodeValidJwt';
|
|
2
|
+
export const verifyJwt = async (accessToken, userPoolId, region, ignoreExpiration = false) => {
|
|
3
|
+
const info = await decodeValidJwt(userPoolId, region, ignoreExpiration, accessToken);
|
|
4
|
+
// if we hav info, its valid
|
|
5
|
+
return !!info;
|
|
6
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const verifyUserEmail: (region: string, accessToken: string, verificationCode: string) => Promise<void>;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { CognitoIdentityProviderClient, VerifyUserAttributeCommand, } from '@aws-sdk/client-cognito-identity-provider';
|
|
2
|
+
import { createAwsClient } from '../createAwsClient';
|
|
3
|
+
export const verifyUserEmail = async (region, accessToken, verificationCode) => {
|
|
4
|
+
const cognitoClient = createAwsClient(CognitoIdentityProviderClient, { region });
|
|
5
|
+
const params = {
|
|
6
|
+
AccessToken: accessToken,
|
|
7
|
+
AttributeName: 'email',
|
|
8
|
+
Code: verificationCode,
|
|
9
|
+
};
|
|
10
|
+
await cognitoClient.send(new VerifyUserAttributeCommand(params));
|
|
11
|
+
};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
const cache = new WeakMap();
|
|
2
|
+
export function createAwsClient(ClientClass, args) {
|
|
3
|
+
// Get or create the Map for the ClientClass
|
|
4
|
+
let argsCache = cache.get(ClientClass);
|
|
5
|
+
if (!argsCache) {
|
|
6
|
+
argsCache = new Map();
|
|
7
|
+
cache.set(ClientClass, argsCache);
|
|
8
|
+
}
|
|
9
|
+
// Generate a key for the arguments
|
|
10
|
+
const argsKey = JSON.stringify(args);
|
|
11
|
+
// Check if the instance already exists in the cache
|
|
12
|
+
if (!argsCache.has(argsKey)) {
|
|
13
|
+
const newClient = new ClientClass(args);
|
|
14
|
+
// If the send method exists, wrap it with error handling so we can see it in the logs
|
|
15
|
+
if (typeof newClient.send === 'function') {
|
|
16
|
+
const originalSend = newClient.send;
|
|
17
|
+
newClient.send = async function (...sendArgs) {
|
|
18
|
+
try {
|
|
19
|
+
return await originalSend.apply(this, sendArgs);
|
|
20
|
+
}
|
|
21
|
+
catch (error) {
|
|
22
|
+
console.log(ClientClass.name || 'aws client', args, 'send args', sendArgs, 'error', error.message);
|
|
23
|
+
throw error;
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
// Create a new instance and store it in the cache
|
|
28
|
+
argsCache.set(argsKey, newClient);
|
|
29
|
+
}
|
|
30
|
+
// Return the cached instance
|
|
31
|
+
return argsCache.get(argsKey);
|
|
32
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function convertDynamoMapToObject(dynamoMap: any): any;
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
// Deprecated: 2021-06-01
|
|
2
|
+
// export function convertObjectToDynamoMap(obj: any) {
|
|
3
|
+
// const map: any = {};
|
|
4
|
+
// for (const property in obj) {
|
|
5
|
+
// const value = obj[property];
|
|
6
|
+
// const valueType = typeof value;
|
|
7
|
+
// switch (valueType) {
|
|
8
|
+
// case 'string':
|
|
9
|
+
// map[property] = { S: value };
|
|
10
|
+
// break;
|
|
11
|
+
// case 'number':
|
|
12
|
+
// map[property] = { N: value.toString() };
|
|
13
|
+
// break;
|
|
14
|
+
// case 'boolean':
|
|
15
|
+
// map[property] = { BOOL: value };
|
|
16
|
+
// break;
|
|
17
|
+
// case 'object':
|
|
18
|
+
// if (Array.isArray(value)) {
|
|
19
|
+
// map[property] = {
|
|
20
|
+
// L: value.map((item) => convertObjectToDynamoMap({ temp: item }).temp),
|
|
21
|
+
// };
|
|
22
|
+
// } else if (value !== null) {
|
|
23
|
+
// map[property] = { M: convertObjectToDynamoMap(value) };
|
|
24
|
+
// } else {
|
|
25
|
+
// map[property] = { NULL: true };
|
|
26
|
+
// }
|
|
27
|
+
// break;
|
|
28
|
+
// default:
|
|
29
|
+
// throw new Error(`Unsupported data type: ${valueType}`);
|
|
30
|
+
// }
|
|
31
|
+
// }
|
|
32
|
+
// return map;
|
|
33
|
+
// }
|
|
34
|
+
export function convertDynamoMapToObject(dynamoMap) {
|
|
35
|
+
const obj = {};
|
|
36
|
+
for (const property in dynamoMap) {
|
|
37
|
+
const value = dynamoMap[property];
|
|
38
|
+
const valueType = Object.keys(value)[0];
|
|
39
|
+
switch (valueType) {
|
|
40
|
+
case 'S':
|
|
41
|
+
obj[property] = value.S;
|
|
42
|
+
break;
|
|
43
|
+
case 'N':
|
|
44
|
+
obj[property] = parseFloat(value.N);
|
|
45
|
+
break;
|
|
46
|
+
case 'BOOL':
|
|
47
|
+
obj[property] = value.BOOL;
|
|
48
|
+
break;
|
|
49
|
+
case 'NULL':
|
|
50
|
+
obj[property] = null;
|
|
51
|
+
break;
|
|
52
|
+
case 'L':
|
|
53
|
+
obj[property] = value.L.map((item) => convertDynamoMapToObject({ temp: item }).temp);
|
|
54
|
+
break;
|
|
55
|
+
case 'M':
|
|
56
|
+
obj[property] = convertDynamoMapToObject(value.M);
|
|
57
|
+
break;
|
|
58
|
+
default:
|
|
59
|
+
throw new Error(`Unsupported DynamoDB data type: ${valueType}`);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
return obj;
|
|
63
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { DynamoDBClient, DeleteItemCommand, } from '@aws-sdk/client-dynamodb';
|
|
2
|
+
import { buildAttributeValue } from './qpqDynamoOrm';
|
|
3
|
+
import { createAwsClient } from '../createAwsClient';
|
|
4
|
+
export async function deleteItem(tableName, region, key, keyName, sortKey, sortKeyName) {
|
|
5
|
+
const dynamoDBClient = createAwsClient(DynamoDBClient, { region });
|
|
6
|
+
const deleteItemParams = {
|
|
7
|
+
TableName: tableName,
|
|
8
|
+
Key: {
|
|
9
|
+
[keyName]: buildAttributeValue(key),
|
|
10
|
+
},
|
|
11
|
+
};
|
|
12
|
+
if (sortKey && sortKeyName) {
|
|
13
|
+
deleteItemParams.Key[sortKeyName] = buildAttributeValue(sortKey);
|
|
14
|
+
}
|
|
15
|
+
await dynamoDBClient.send(new DeleteItemCommand(deleteItemParams));
|
|
16
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function getAllItems(tableName: string, region: string): Promise<any[]>;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { DynamoDBClient, ScanCommand } from '@aws-sdk/client-dynamodb';
|
|
2
|
+
import { createAwsClient } from '../createAwsClient';
|
|
3
|
+
export async function getAllItems(tableName, region) {
|
|
4
|
+
const dynamoDBClient = createAwsClient(DynamoDBClient, { region });
|
|
5
|
+
let records = [];
|
|
6
|
+
let lastEvaluatedKey;
|
|
7
|
+
do {
|
|
8
|
+
const scanParams = {
|
|
9
|
+
TableName: tableName,
|
|
10
|
+
ExclusiveStartKey: lastEvaluatedKey,
|
|
11
|
+
};
|
|
12
|
+
try {
|
|
13
|
+
const result = await dynamoDBClient.send(new ScanCommand(scanParams));
|
|
14
|
+
records = records.concat(result.Items);
|
|
15
|
+
lastEvaluatedKey = result.LastEvaluatedKey;
|
|
16
|
+
}
|
|
17
|
+
catch (error) {
|
|
18
|
+
console.error('Error scanning DynamoDB table:', error);
|
|
19
|
+
throw error;
|
|
20
|
+
}
|
|
21
|
+
} while (lastEvaluatedKey);
|
|
22
|
+
return records;
|
|
23
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function getItem(tableName: string, key: string, region: string): Promise<any | null>;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { DynamoDBClient, GetItemCommand } from '@aws-sdk/client-dynamodb';
|
|
2
|
+
import { createAwsClient } from '../createAwsClient';
|
|
3
|
+
export async function getItem(tableName, key, region) {
|
|
4
|
+
const dynamoDBClient = createAwsClient(DynamoDBClient, { region });
|
|
5
|
+
const getItemParams = {
|
|
6
|
+
TableName: tableName,
|
|
7
|
+
Key: {
|
|
8
|
+
key: {
|
|
9
|
+
S: key,
|
|
10
|
+
},
|
|
11
|
+
},
|
|
12
|
+
};
|
|
13
|
+
try {
|
|
14
|
+
const result = await dynamoDBClient.send(new GetItemCommand(getItemParams));
|
|
15
|
+
return result.Item ? JSON.parse(result.Item.value.S) : null;
|
|
16
|
+
}
|
|
17
|
+
catch (error) {
|
|
18
|
+
console.error('Error getting item from DynamoDB:', error);
|
|
19
|
+
throw error;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { DynamoDBClient, QueryCommand } from '@aws-sdk/client-dynamodb';
|
|
2
|
+
import { createAwsClient } from '../createAwsClient';
|
|
3
|
+
export async function getLogByCorrelation(tableName, region, correlation) {
|
|
4
|
+
const dynamoDBClient = createAwsClient(DynamoDBClient, { region });
|
|
5
|
+
const queryParams = {
|
|
6
|
+
TableName: tableName,
|
|
7
|
+
IndexName: 'CorrelationIndex',
|
|
8
|
+
KeyConditionExpression: 'correlation = :correlation',
|
|
9
|
+
ExpressionAttributeValues: {
|
|
10
|
+
':correlation': { S: correlation },
|
|
11
|
+
},
|
|
12
|
+
};
|
|
13
|
+
try {
|
|
14
|
+
const queryResult = await dynamoDBClient.send(new QueryCommand(queryParams));
|
|
15
|
+
const items = (queryResult.Items || []).map((i) => {
|
|
16
|
+
const [startedAt, correlation] = i.startedAtWithCorrelation.S?.split('#') || [];
|
|
17
|
+
const metaData = {
|
|
18
|
+
generic: i.generic.S || '',
|
|
19
|
+
runtimeType: i.runtimeType.S,
|
|
20
|
+
error: i.error?.S,
|
|
21
|
+
startedAt: startedAt,
|
|
22
|
+
correlation,
|
|
23
|
+
moduleName: i.moduleName.S || '',
|
|
24
|
+
fromCorrelation: i.fromCorrelation?.S,
|
|
25
|
+
executionTimeMs: i.executionTimeMs?.N ? parseInt(i.executionTimeMs.N) : 0,
|
|
26
|
+
};
|
|
27
|
+
return metaData;
|
|
28
|
+
});
|
|
29
|
+
const [result] = items;
|
|
30
|
+
if (!result) {
|
|
31
|
+
throw new Error(`Failed to find log with correlation: ${correlation}`);
|
|
32
|
+
}
|
|
33
|
+
return result;
|
|
34
|
+
}
|
|
35
|
+
catch (err) {
|
|
36
|
+
console.error(`Failed to find log: ${err}`);
|
|
37
|
+
throw err;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { DynamoDBClient, QueryCommand } from '@aws-sdk/client-dynamodb';
|
|
2
|
+
import { lastEvaluatedKeyToString, stringToLastEvaluatedKey } from './logs';
|
|
3
|
+
import { createAwsClient } from '../createAwsClient';
|
|
4
|
+
export async function getLogChildrenByFromCorrelation(tableName, region, fromCorrelation, pageKey) {
|
|
5
|
+
const dynamoDBClient = createAwsClient(DynamoDBClient, { region });
|
|
6
|
+
const queryParams = {
|
|
7
|
+
TableName: tableName,
|
|
8
|
+
// removed IndexName
|
|
9
|
+
KeyConditionExpression: '#fromCorrelation = :fromCorrelation',
|
|
10
|
+
ExpressionAttributeNames: {
|
|
11
|
+
'#fromCorrelation': 'fromCorrelation', // define attribute name
|
|
12
|
+
},
|
|
13
|
+
ExpressionAttributeValues: {
|
|
14
|
+
':fromCorrelation': { S: fromCorrelation },
|
|
15
|
+
},
|
|
16
|
+
};
|
|
17
|
+
if (pageKey) {
|
|
18
|
+
queryParams.ExclusiveStartKey = stringToLastEvaluatedKey(pageKey);
|
|
19
|
+
}
|
|
20
|
+
try {
|
|
21
|
+
const queryResult = await dynamoDBClient.send(new QueryCommand(queryParams));
|
|
22
|
+
const items = (queryResult.Items || []).map((i) => {
|
|
23
|
+
const [startedAt, correlation] = i.startedAtWithCorrelation.S?.split('#') || [];
|
|
24
|
+
const metaData = {
|
|
25
|
+
generic: i.generic.S || '',
|
|
26
|
+
runtimeType: i.runtimeType.S,
|
|
27
|
+
error: i.error?.S,
|
|
28
|
+
startedAt: startedAt,
|
|
29
|
+
correlation,
|
|
30
|
+
moduleName: i.moduleName.S || '',
|
|
31
|
+
fromCorrelation: i.fromCorrelation?.S,
|
|
32
|
+
executionTimeMs: i.executionTimeMs?.N ? parseInt(i.executionTimeMs.N) : 0,
|
|
33
|
+
};
|
|
34
|
+
return metaData;
|
|
35
|
+
});
|
|
36
|
+
if (queryResult.LastEvaluatedKey) {
|
|
37
|
+
const nextPageKey = lastEvaluatedKeyToString(queryResult.LastEvaluatedKey);
|
|
38
|
+
// You can return the nextPageKey along with the items, so it can be used for the next query.
|
|
39
|
+
return { items, nextPageKey };
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
return { items };
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
catch (err) {
|
|
46
|
+
console.error(`Failed to query items with the specified fromCorrelation: ${err}`);
|
|
47
|
+
throw err;
|
|
48
|
+
}
|
|
49
|
+
}
|