quidproquo-actionprocessor-awslambda 0.0.262 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/commonjs/awsNamingUtils.d.ts +1 -0
- package/lib/commonjs/awsNamingUtils.js +12 -1
- package/lib/commonjs/getActionProcessor/core/ai/aiModelMap.d.ts +2 -0
- package/lib/commonjs/getActionProcessor/core/ai/aiModelMap.js +15 -0
- package/lib/commonjs/getActionProcessor/core/ai/getAiPromptActionProcessor.d.ts +2 -0
- package/lib/commonjs/getActionProcessor/core/ai/getAiPromptActionProcessor.js +42 -0
- package/lib/commonjs/getActionProcessor/core/ai/getAiPromptStreamActionProcessor.d.ts +2 -0
- package/lib/commonjs/getActionProcessor/core/ai/getAiPromptStreamActionProcessor.js +90 -0
- package/lib/commonjs/getActionProcessor/core/ai/index.d.ts +2 -0
- package/lib/commonjs/getActionProcessor/core/{config/getConfigGetGlobalActionProcessor.js → ai/index.js} +6 -13
- package/lib/commonjs/getActionProcessor/core/ai/logic/aiStreamPartMappers.d.ts +6 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/aiStreamPartMappers.js +57 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/index.d.ts +32 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/index.js +48 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamAbort.d.ts +3 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamAbort.js +9 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamCustom.d.ts +3 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamCustom.js +9 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamError.d.ts +3 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamError.js +10 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamFilePart.d.ts +3 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamFilePart.js +12 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamFinish.d.ts +3 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamFinish.js +11 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamFinishStep.d.ts +3 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamFinishStep.js +11 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamPart.d.ts +3 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamPart.js +9 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamRaw.d.ts +2 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamRaw.js +8 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamReasoningDelta.d.ts +3 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamReasoningDelta.js +10 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamReasoningEnd.d.ts +3 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamReasoningEnd.js +9 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamReasoningFilePart.d.ts +3 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamReasoningFilePart.js +12 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamReasoningStart.d.ts +3 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamReasoningStart.js +9 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamSourcePart.d.ts +3 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamSourcePart.js +16 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamStart.d.ts +2 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamStart.js +8 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamStartStep.d.ts +2 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamStartStep.js +8 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamTextDelta.d.ts +3 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamTextDelta.js +10 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamTextEnd.d.ts +3 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamTextEnd.js +9 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamTextStart.d.ts +3 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamTextStart.js +9 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamToolApprovalRequest.d.ts +3 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamToolApprovalRequest.js +12 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamToolApprovalResponse.d.ts +3 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamToolApprovalResponse.js +13 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamToolCall.d.ts +3 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamToolCall.js +11 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamToolError.d.ts +3 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamToolError.js +13 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamToolInputDelta.d.ts +3 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamToolInputDelta.js +10 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamToolInputEnd.d.ts +3 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamToolInputEnd.js +9 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamToolInputStart.d.ts +3 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamToolInputStart.js +10 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamToolOutputDenied.d.ts +3 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamToolOutputDenied.js +10 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamToolResult.d.ts +3 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/mapAiStreamToolResult.js +12 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/prepareAiPromptCall.d.ts +19 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/prepareAiPromptCall.js +53 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/toAiStreamUsage.d.ts +6 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/toAiStreamUsage.js +9 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/toErrorMessage.d.ts +1 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/toErrorMessage.js +11 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/toSdkMessages.d.ts +3 -0
- package/lib/commonjs/getActionProcessor/core/ai/logic/toSdkMessages.js +82 -0
- package/lib/commonjs/getActionProcessor/core/ai/types/aiSdkStreamPart.d.ts +5 -0
- package/lib/commonjs/getActionProcessor/core/ai/types/aiSdkStreamPart.js +2 -0
- package/lib/commonjs/getActionProcessor/core/ai/types/index.d.ts +1 -0
- package/lib/commonjs/getActionProcessor/core/ai/types/index.js +17 -0
- package/lib/commonjs/getActionProcessor/core/apiKeyValidation/getApiKeyValidationValidateActionProcessor.d.ts +2 -0
- package/lib/commonjs/getActionProcessor/core/apiKeyValidation/getApiKeyValidationValidateActionProcessor.js +50 -0
- package/lib/commonjs/getActionProcessor/core/apiKeyValidation/index.d.ts +2 -0
- package/lib/commonjs/getActionProcessor/core/apiKeyValidation/index.js +17 -0
- package/lib/commonjs/getActionProcessor/core/config/getConfigGetSecretActionProcessor.js +10 -2
- package/lib/commonjs/getActionProcessor/core/config/getConfigSetParameterActionProcessor.js +10 -2
- package/lib/commonjs/getActionProcessor/core/config/index.js +1 -2
- package/lib/commonjs/getActionProcessor/core/event/apiGatwayEvent/api/getEventAutoRespondActionProcessor.js +2 -34
- package/lib/commonjs/getActionProcessor/core/event/apiGatwayEvent/api/getEventGetStorySessionActionProcessor.js +2 -31
- package/lib/commonjs/getActionProcessor/core/event/apiGatwayEvent/websocket/getEventTransformResponseResultActionProcessor.js +2 -2
- package/lib/commonjs/getActionProcessor/core/eventBus/getEventBusSendMessagesActionProcessor.js +16 -6
- package/lib/commonjs/getActionProcessor/core/file/getFileDeleteActionProcessor.js +17 -9
- package/lib/commonjs/getActionProcessor/core/file/getFileExistsActionProcessor.js +9 -1
- package/lib/commonjs/getActionProcessor/core/file/getFileGenerateTemporarySecureUrlActionProcessor.js +5 -0
- package/lib/commonjs/getActionProcessor/core/file/getFileGenerateTemporaryUploadSecureUrlActionProcessor.js +5 -0
- package/lib/commonjs/getActionProcessor/core/file/getFileIsColdStorageActionProcessor.js +13 -2
- package/lib/commonjs/getActionProcessor/core/file/getFileListDirectoryActionProcessor.js +16 -7
- package/lib/commonjs/getActionProcessor/core/file/getFileReadBinaryContentsActionProcessor.js +11 -2
- package/lib/commonjs/getActionProcessor/core/file/getFileStreamOpenActionProcessor.d.ts +2 -0
- package/lib/commonjs/getActionProcessor/core/file/getFileStreamOpenActionProcessor.js +105 -0
- package/lib/commonjs/getActionProcessor/core/file/getFileWriteBinaryContentsActionProcessor.js +11 -2
- package/lib/commonjs/getActionProcessor/core/file/getFileWriteObjectJsonActionProcessor.js +11 -2
- package/lib/commonjs/getActionProcessor/core/file/getFileWriteTextContentsActionProcessor.js +11 -2
- package/lib/commonjs/getActionProcessor/core/file/index.js +2 -1
- package/lib/commonjs/getActionProcessor/core/index.d.ts +2 -0
- package/lib/commonjs/getActionProcessor/core/index.js +6 -1
- package/lib/commonjs/getActionProcessor/core/keyValueStore/getKeyValueStoreDeleteActionProcessor.js +10 -2
- package/lib/commonjs/getActionProcessor/core/keyValueStore/getKeyValueStoreGetActionProcessor.js +10 -2
- package/lib/commonjs/getActionProcessor/core/keyValueStore/getKeyValueStoreGetAllActionProcessor.js +10 -2
- package/lib/commonjs/getActionProcessor/core/keyValueStore/getKeyValueStoreQueryActionProcessor.js +10 -2
- package/lib/commonjs/getActionProcessor/core/keyValueStore/getKeyValueStoreScanActionProcessor.js +12 -3
- package/lib/commonjs/getActionProcessor/core/keyValueStore/getKeyValueStoreUpdateActionProcessor.js +10 -2
- package/lib/commonjs/getActionProcessor/core/queue/getQueueSendMessageActionProcessor.js +17 -7
- package/lib/commonjs/getActionProcessor/core/system/getSystemExecuteStoryActionProcessor.js +5 -4
- package/lib/commonjs/getActionProcessor/core/userDirectory/getUserDirectoryAssociateSoftwareTokenActionProcessor.d.ts +2 -0
- package/lib/commonjs/getActionProcessor/core/userDirectory/getUserDirectoryAssociateSoftwareTokenActionProcessor.js +28 -0
- package/lib/commonjs/getActionProcessor/core/userDirectory/getUserDirectoryChangePasswordActionProcessor.js +11 -2
- package/lib/commonjs/getActionProcessor/core/userDirectory/getUserDirectoryConfirmEmailVerificationActionProcessor.js +11 -2
- package/lib/commonjs/getActionProcessor/core/userDirectory/getUserDirectoryConfirmForgotPasswordActionProcessor.js +12 -2
- package/lib/commonjs/getActionProcessor/core/userDirectory/getUserDirectoryCreateUserActionProcessor.js +12 -3
- package/lib/commonjs/getActionProcessor/core/userDirectory/getUserDirectoryDecodeAccessTokenActionProcessor.js +1 -1
- package/lib/commonjs/getActionProcessor/core/userDirectory/getUserDirectoryForgotPasswordActionProcessor.js +10 -2
- package/lib/commonjs/getActionProcessor/core/userDirectory/getUserDirectoryGetUserAttributesByUserIdActionProcessor.js +9 -2
- package/lib/commonjs/getActionProcessor/core/userDirectory/getUserDirectoryGetUsersActionProcessor.js +10 -2
- package/lib/commonjs/getActionProcessor/core/userDirectory/getUserDirectoryGetUsersByAttributeActionProcessor.js +10 -2
- package/lib/commonjs/getActionProcessor/core/userDirectory/getUserDirectoryRefreshTokenActionProcessor.js +17 -3
- package/lib/commonjs/getActionProcessor/core/userDirectory/getUserDirectoryRequestEmailVerificationActionProcessor.js +11 -2
- package/lib/commonjs/getActionProcessor/core/userDirectory/getUserDirectoryRespondToAuthChallengeActionProcessor.js +34 -2
- package/lib/commonjs/getActionProcessor/core/userDirectory/getUserDirectorySetPasswordActionProcessor.js +12 -2
- package/lib/commonjs/getActionProcessor/core/userDirectory/getUserDirectorySetUserAttributesActionProcessor.js +13 -2
- package/lib/commonjs/getActionProcessor/core/userDirectory/index.js +2 -1
- package/lib/commonjs/getActionProcessor/webserver/serviceFunction/getServiceFunctionExecuteActionProcessor.js +2 -2
- package/lib/commonjs/index.d.ts +1 -0
- package/lib/commonjs/index.js +3 -0
- package/lib/commonjs/lambdaExtensions/getLogExtensionLayerPath.d.ts +10 -0
- package/lib/commonjs/lambdaExtensions/getLogExtensionLayerPath.js +20 -0
- package/lib/commonjs/lambdaExtensions/logExtensionPort.d.ts +1 -0
- package/lib/commonjs/lambdaExtensions/logExtensionPort.js +7 -0
- package/lib/commonjs/lambdaHandlers/getApiGatewayEventHandler.js +4 -8
- package/lib/commonjs/lambdaHandlers/getApiGatewayEventHandler_redirect.js +0 -2
- package/lib/commonjs/lambdaHandlers/helpers/getQpqLambdaRuntimeForEvent.js +2 -2
- package/lib/commonjs/lambdaHandlers/helpers/logger.d.ts +4 -1
- package/lib/commonjs/lambdaHandlers/helpers/logger.js +94 -36
- package/lib/commonjs/logic/cognito/associateSoftwareToken.d.ts +2 -0
- package/lib/commonjs/logic/cognito/associateSoftwareToken.js +28 -0
- package/lib/commonjs/logic/cognito/decodeValidJwt.js +2 -1
- package/lib/commonjs/logic/cognito/getUserAttributesBySub.d.ts +4 -0
- package/lib/commonjs/logic/cognito/getUserAttributesBySub.js +12 -2
- package/lib/commonjs/logic/cognito/utils/transformCognitoResponse.js +2 -0
- package/lib/commonjs/logic/cognito/verifySoftwareToken.d.ts +1 -0
- package/lib/commonjs/logic/cognito/verifySoftwareToken.js +28 -0
- package/lib/commonjs/logic/dynamo/qpqDynamoOrm/getDynamoTableIndexByConfigAndQuery.js +8 -2
- package/lib/commonjs/logic/s3/generatePresignedUploadUrl.js +8 -1
- package/lib/commonjs/logic/s3/objectExists.js +9 -3
- package/lib/esm/awsNamingUtils.d.ts +1 -0
- package/lib/esm/awsNamingUtils.js +10 -0
- package/lib/esm/getActionProcessor/core/ai/aiModelMap.d.ts +2 -0
- package/lib/esm/getActionProcessor/core/ai/aiModelMap.js +12 -0
- package/lib/esm/getActionProcessor/core/ai/getAiPromptActionProcessor.d.ts +2 -0
- package/lib/esm/getActionProcessor/core/ai/getAiPromptActionProcessor.js +33 -0
- package/lib/esm/getActionProcessor/core/ai/getAiPromptStreamActionProcessor.d.ts +2 -0
- package/lib/esm/getActionProcessor/core/ai/getAiPromptStreamActionProcessor.js +46 -0
- package/lib/esm/getActionProcessor/core/ai/index.d.ts +2 -0
- package/lib/esm/getActionProcessor/core/ai/index.js +6 -0
- package/lib/esm/getActionProcessor/core/ai/logic/aiStreamPartMappers.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/ai/logic/aiStreamPartMappers.js +54 -0
- package/lib/esm/getActionProcessor/core/ai/logic/index.d.ts +32 -0
- package/lib/esm/getActionProcessor/core/ai/logic/index.js +32 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamAbort.d.ts +3 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamAbort.js +5 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamCustom.d.ts +3 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamCustom.js +5 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamError.d.ts +3 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamError.js +6 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamFilePart.d.ts +3 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamFilePart.js +8 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamFinish.d.ts +3 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamFinish.js +7 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamFinishStep.d.ts +3 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamFinishStep.js +7 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamPart.d.ts +3 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamPart.js +5 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamRaw.d.ts +2 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamRaw.js +4 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamReasoningDelta.d.ts +3 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamReasoningDelta.js +6 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamReasoningEnd.d.ts +3 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamReasoningEnd.js +5 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamReasoningFilePart.d.ts +3 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamReasoningFilePart.js +8 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamReasoningStart.d.ts +3 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamReasoningStart.js +5 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamSourcePart.d.ts +3 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamSourcePart.js +12 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamStart.d.ts +2 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamStart.js +4 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamStartStep.d.ts +2 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamStartStep.js +4 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamTextDelta.d.ts +3 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamTextDelta.js +6 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamTextEnd.d.ts +3 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamTextEnd.js +5 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamTextStart.d.ts +3 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamTextStart.js +5 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamToolApprovalRequest.d.ts +3 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamToolApprovalRequest.js +8 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamToolApprovalResponse.d.ts +3 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamToolApprovalResponse.js +9 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamToolCall.d.ts +3 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamToolCall.js +7 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamToolError.d.ts +3 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamToolError.js +9 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamToolInputDelta.d.ts +3 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamToolInputDelta.js +6 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamToolInputEnd.d.ts +3 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamToolInputEnd.js +5 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamToolInputStart.d.ts +3 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamToolInputStart.js +6 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamToolOutputDenied.d.ts +3 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamToolOutputDenied.js +6 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamToolResult.d.ts +3 -0
- package/lib/esm/getActionProcessor/core/ai/logic/mapAiStreamToolResult.js +8 -0
- package/lib/esm/getActionProcessor/core/ai/logic/prepareAiPromptCall.d.ts +19 -0
- package/lib/esm/getActionProcessor/core/ai/logic/prepareAiPromptCall.js +40 -0
- package/lib/esm/getActionProcessor/core/ai/logic/toAiStreamUsage.d.ts +6 -0
- package/lib/esm/getActionProcessor/core/ai/logic/toAiStreamUsage.js +5 -0
- package/lib/esm/getActionProcessor/core/ai/logic/toErrorMessage.d.ts +1 -0
- package/lib/esm/getActionProcessor/core/ai/logic/toErrorMessage.js +7 -0
- package/lib/esm/getActionProcessor/core/ai/logic/toSdkMessages.d.ts +3 -0
- package/lib/esm/getActionProcessor/core/ai/logic/toSdkMessages.js +78 -0
- package/lib/esm/getActionProcessor/core/ai/types/aiSdkStreamPart.d.ts +5 -0
- package/lib/esm/getActionProcessor/core/ai/types/aiSdkStreamPart.js +1 -0
- package/lib/esm/getActionProcessor/core/ai/types/index.d.ts +1 -0
- package/lib/esm/getActionProcessor/core/ai/types/index.js +1 -0
- package/lib/esm/getActionProcessor/core/apiKeyValidation/getApiKeyValidationValidateActionProcessor.d.ts +2 -0
- package/lib/esm/getActionProcessor/core/apiKeyValidation/getApiKeyValidationValidateActionProcessor.js +35 -0
- package/lib/esm/getActionProcessor/core/apiKeyValidation/index.d.ts +2 -0
- package/lib/esm/getActionProcessor/core/apiKeyValidation/index.js +4 -0
- package/lib/esm/getActionProcessor/core/config/getConfigGetSecretActionProcessor.js +11 -3
- package/lib/esm/getActionProcessor/core/config/getConfigSetParameterActionProcessor.js +11 -3
- package/lib/esm/getActionProcessor/core/config/index.js +0 -2
- package/lib/esm/getActionProcessor/core/event/apiGatwayEvent/api/getEventAutoRespondActionProcessor.js +3 -32
- package/lib/esm/getActionProcessor/core/event/apiGatwayEvent/api/getEventGetStorySessionActionProcessor.js +3 -35
- package/lib/esm/getActionProcessor/core/event/apiGatwayEvent/websocket/getEventTransformResponseResultActionProcessor.js +2 -2
- package/lib/esm/getActionProcessor/core/eventBus/getEventBusSendMessagesActionProcessor.js +20 -13
- package/lib/esm/getActionProcessor/core/file/getFileDeleteActionProcessor.js +18 -10
- package/lib/esm/getActionProcessor/core/file/getFileExistsActionProcessor.js +10 -2
- package/lib/esm/getActionProcessor/core/file/getFileGenerateTemporarySecureUrlActionProcessor.js +6 -1
- package/lib/esm/getActionProcessor/core/file/getFileGenerateTemporaryUploadSecureUrlActionProcessor.js +6 -1
- package/lib/esm/getActionProcessor/core/file/getFileIsColdStorageActionProcessor.js +14 -3
- package/lib/esm/getActionProcessor/core/file/getFileListDirectoryActionProcessor.js +20 -11
- package/lib/esm/getActionProcessor/core/file/getFileReadBinaryContentsActionProcessor.js +12 -3
- package/lib/esm/getActionProcessor/core/file/getFileStreamOpenActionProcessor.d.ts +2 -0
- package/lib/esm/getActionProcessor/core/file/getFileStreamOpenActionProcessor.js +55 -0
- package/lib/esm/getActionProcessor/core/file/getFileWriteBinaryContentsActionProcessor.js +12 -3
- package/lib/esm/getActionProcessor/core/file/getFileWriteObjectJsonActionProcessor.js +12 -3
- package/lib/esm/getActionProcessor/core/file/getFileWriteTextContentsActionProcessor.js +12 -3
- package/lib/esm/getActionProcessor/core/file/index.js +2 -0
- package/lib/esm/getActionProcessor/core/index.d.ts +2 -0
- package/lib/esm/getActionProcessor/core/index.js +8 -0
- package/lib/esm/getActionProcessor/core/keyValueStore/getKeyValueStoreDeleteActionProcessor.js +11 -3
- package/lib/esm/getActionProcessor/core/keyValueStore/getKeyValueStoreGetActionProcessor.js +11 -3
- package/lib/esm/getActionProcessor/core/keyValueStore/getKeyValueStoreGetAllActionProcessor.js +11 -3
- package/lib/esm/getActionProcessor/core/keyValueStore/getKeyValueStoreQueryActionProcessor.js +12 -4
- package/lib/esm/getActionProcessor/core/keyValueStore/getKeyValueStoreScanActionProcessor.js +12 -3
- package/lib/esm/getActionProcessor/core/keyValueStore/getKeyValueStoreUpdateActionProcessor.js +11 -3
- package/lib/esm/getActionProcessor/core/queue/getQueueSendMessageActionProcessor.js +21 -14
- package/lib/esm/getActionProcessor/core/system/getSystemExecuteStoryActionProcessor.js +1 -0
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryAssociateSoftwareTokenActionProcessor.d.ts +2 -0
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryAssociateSoftwareTokenActionProcessor.js +13 -0
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryChangePasswordActionProcessor.js +12 -3
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryConfirmEmailVerificationActionProcessor.js +12 -3
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryConfirmForgotPasswordActionProcessor.js +13 -3
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryCreateUserActionProcessor.js +13 -4
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryDecodeAccessTokenActionProcessor.js +2 -2
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryForgotPasswordActionProcessor.js +11 -3
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryGetUserAttributesByUserIdActionProcessor.js +10 -3
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryGetUsersActionProcessor.js +11 -3
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryGetUsersByAttributeActionProcessor.js +11 -3
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryRefreshTokenActionProcessor.js +18 -4
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryRequestEmailVerificationActionProcessor.js +12 -3
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectoryRespondToAuthChallengeActionProcessor.js +35 -3
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectorySetPasswordActionProcessor.js +13 -3
- package/lib/esm/getActionProcessor/core/userDirectory/getUserDirectorySetUserAttributesActionProcessor.js +14 -3
- package/lib/esm/getActionProcessor/core/userDirectory/index.js +2 -0
- package/lib/esm/getActionProcessor/webserver/serviceFunction/getServiceFunctionExecuteActionProcessor.js +3 -6
- package/lib/esm/index.d.ts +1 -0
- package/lib/esm/index.js +3 -0
- package/lib/esm/lambdaExtensions/getLogExtensionLayerPath.d.ts +10 -0
- package/lib/esm/lambdaExtensions/getLogExtensionLayerPath.js +13 -0
- package/lib/esm/lambdaExtensions/logExtensionPort.d.ts +1 -0
- package/lib/esm/lambdaExtensions/logExtensionPort.js +4 -0
- package/lib/esm/lambdaHandlers/getApiGatewayEventHandler.js +4 -8
- package/lib/esm/lambdaHandlers/getApiGatewayEventHandler_redirect.js +0 -2
- package/lib/esm/lambdaHandlers/helpers/getQpqLambdaRuntimeForEvent.js +1 -1
- package/lib/esm/lambdaHandlers/helpers/logger.d.ts +4 -1
- package/lib/esm/lambdaHandlers/helpers/logger.js +94 -38
- package/lib/esm/logic/cognito/associateSoftwareToken.d.ts +2 -0
- package/lib/esm/logic/cognito/associateSoftwareToken.js +15 -0
- package/lib/esm/logic/cognito/decodeValidJwt.js +2 -1
- package/lib/esm/logic/cognito/getUserAttributesBySub.d.ts +4 -0
- package/lib/esm/logic/cognito/getUserAttributesBySub.js +10 -1
- package/lib/esm/logic/cognito/utils/transformCognitoResponse.js +2 -0
- package/lib/esm/logic/cognito/verifySoftwareToken.d.ts +1 -0
- package/lib/esm/logic/cognito/verifySoftwareToken.js +15 -0
- package/lib/esm/logic/dynamo/qpqDynamoOrm/getDynamoTableIndexByConfigAndQuery.js +7 -2
- package/lib/esm/logic/s3/generatePresignedUploadUrl.js +8 -1
- package/lib/esm/logic/s3/objectExists.js +8 -3
- package/lib/extension-layer/extensions/qpq-log-extension +2 -0
- package/lib/extension-layer/qpq-log-extension/index.js +58 -0
- package/package.json +11 -6
- package/lib/commonjs/getActionProcessor/core/config/getConfigGetGlobalActionProcessor.d.ts +0 -2
- package/lib/commonjs/getActionProcessor/core/event/utils/isAuthValid.d.ts +0 -3
- package/lib/commonjs/getActionProcessor/core/event/utils/isAuthValid.js +0 -68
- package/lib/esm/getActionProcessor/core/config/getConfigGetGlobalActionProcessor.d.ts +0 -2
- package/lib/esm/getActionProcessor/core/config/getConfigGetGlobalActionProcessor.js +0 -10
- package/lib/esm/getActionProcessor/core/event/utils/isAuthValid.d.ts +0 -3
- package/lib/esm/getActionProcessor/core/event/utils/isAuthValid.js +0 -55
|
@@ -10,40 +10,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.getEventAutoRespondActionProcessor = void 0;
|
|
13
|
-
const quidproquo_core_1 = require("quidproquo-core");
|
|
14
13
|
const quidproquo_webserver_1 = require("quidproquo-webserver");
|
|
15
|
-
const
|
|
16
|
-
|
|
17
|
-
return (_a) => __awaiter(void 0, [_a], void 0, function* ({ qpqEventRecord, matchResult }) {
|
|
18
|
-
var _b;
|
|
19
|
-
// Just auto respond for options requests
|
|
20
|
-
if (qpqEventRecord.method === 'OPTIONS') {
|
|
21
|
-
return (0, quidproquo_core_1.actionResult)({
|
|
22
|
-
status: 200,
|
|
23
|
-
isBase64Encoded: false,
|
|
24
|
-
body: '',
|
|
25
|
-
headers: quidproquo_webserver_1.qpqWebServerUtils.getCorsHeaders(qpqConfig, matchResult.config || {}, qpqEventRecord.headers),
|
|
26
|
-
});
|
|
27
|
-
}
|
|
28
|
-
// TODO: We can pull out the jwt from the session if thats a better way?
|
|
29
|
-
// Think about that when you dont have covid.
|
|
30
|
-
const authValid = yield (0, isAuthValid_1.isAuthValid)(qpqConfig, quidproquo_webserver_1.qpqWebServerUtils.getHeaderValue('Authorization', qpqEventRecord.headers), quidproquo_webserver_1.qpqWebServerUtils.getHeaderValue('x-api-key', qpqEventRecord.headers), (_b = matchResult.config) === null || _b === void 0 ? void 0 : _b.routeAuthSettings);
|
|
31
|
-
if (!authValid) {
|
|
32
|
-
return (0, quidproquo_core_1.actionResult)({
|
|
33
|
-
status: 401,
|
|
34
|
-
isBase64Encoded: false,
|
|
35
|
-
body: JSON.stringify({
|
|
36
|
-
message: 'You are unauthorized to access this resource',
|
|
37
|
-
}),
|
|
38
|
-
headers: quidproquo_webserver_1.qpqWebServerUtils.getCorsHeaders(qpqConfig, matchResult.config || {}, qpqEventRecord.headers),
|
|
39
|
-
});
|
|
40
|
-
}
|
|
41
|
-
return (0, quidproquo_core_1.actionResult)(null);
|
|
42
|
-
});
|
|
43
|
-
};
|
|
44
|
-
const getEventAutoRespondActionProcessor = (qpqConfig) => __awaiter(void 0, void 0, void 0, function* () {
|
|
45
|
-
return ({
|
|
46
|
-
[quidproquo_core_1.EventActionType.AutoRespond]: getProcessAutoRespond(qpqConfig),
|
|
47
|
-
});
|
|
14
|
+
const getEventAutoRespondActionProcessor = (qpqConfig, dynamicModuleLoader) => __awaiter(void 0, void 0, void 0, function* () {
|
|
15
|
+
return (Object.assign({}, (yield (0, quidproquo_webserver_1.getHttpApiEventAutoRespondActionProcessor)(qpqConfig, dynamicModuleLoader))));
|
|
48
16
|
});
|
|
49
17
|
exports.getEventAutoRespondActionProcessor = getEventAutoRespondActionProcessor;
|
|
@@ -10,37 +10,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.getEventGetStorySessionActionProcessor = void 0;
|
|
13
|
-
const quidproquo_core_1 = require("quidproquo-core");
|
|
14
13
|
const quidproquo_webserver_1 = require("quidproquo-webserver");
|
|
15
|
-
const
|
|
16
|
-
|
|
17
|
-
return (_a, session_1) => __awaiter(void 0, [_a, session_1], void 0, function* ({ matchStoryResult, qpqEventRecord }, session) {
|
|
18
|
-
var _b, _c;
|
|
19
|
-
const accessToken = quidproquo_webserver_1.qpqWebServerUtils.getAccessTokenFromHeaders(qpqEventRecord.headers);
|
|
20
|
-
if (!accessToken) {
|
|
21
|
-
return (0, quidproquo_core_1.actionResult)(void 0);
|
|
22
|
-
}
|
|
23
|
-
// if this endpoint has no auth settings, BUT we do have an access token
|
|
24
|
-
// then we want to just attempt to extract info for logs, but we will say that its
|
|
25
|
-
// wasValid = false
|
|
26
|
-
if (!((_c = (_b = matchStoryResult.config) === null || _b === void 0 ? void 0 : _b.routeAuthSettings) === null || _c === void 0 ? void 0 : _c.userDirectoryName)) {
|
|
27
|
-
// If this endpoint is unauthenticated, then we will just decode it, and say it wasnt valid, for logs
|
|
28
|
-
const info = quidproquo_webserver_1.qpqWebServerUtils.decodeJWT(accessToken);
|
|
29
|
-
return (0, quidproquo_core_1.actionResult)(Object.assign(Object.assign({}, session), { decodedAccessToken: {
|
|
30
|
-
exp: (info === null || info === void 0 ? void 0 : info.exp) || 0,
|
|
31
|
-
userDirectory: '',
|
|
32
|
-
userId: (info === null || info === void 0 ? void 0 : info.sub) || (info === null || info === void 0 ? void 0 : info.id) || (info === null || info === void 0 ? void 0 : info.userId) || (info === null || info === void 0 ? void 0 : info.username) || '',
|
|
33
|
-
username: (info === null || info === void 0 ? void 0 : info.username) || (info === null || info === void 0 ? void 0 : info.userId) || (info === null || info === void 0 ? void 0 : info.sub) || (info === null || info === void 0 ? void 0 : info.id) || '',
|
|
34
|
-
wasValid: false,
|
|
35
|
-
} }));
|
|
36
|
-
}
|
|
37
|
-
const decodedAccessToken = yield (0, cognito_1.decodeAccessToken)(matchStoryResult.config.routeAuthSettings.userDirectoryName, qpqConfig, accessToken, true);
|
|
38
|
-
return (0, quidproquo_core_1.actionResult)(Object.assign(Object.assign({}, session), { decodedAccessToken }));
|
|
39
|
-
});
|
|
40
|
-
};
|
|
41
|
-
const getEventGetStorySessionActionProcessor = (qpqConfig) => __awaiter(void 0, void 0, void 0, function* () {
|
|
42
|
-
return ({
|
|
43
|
-
[quidproquo_core_1.EventActionType.GetStorySession]: getProcessGetStorySession(qpqConfig),
|
|
44
|
-
});
|
|
14
|
+
const getEventGetStorySessionActionProcessor = (qpqConfig, dynamicModuleLoader) => __awaiter(void 0, void 0, void 0, function* () {
|
|
15
|
+
return (Object.assign({}, (yield (0, quidproquo_webserver_1.getHttpApiEventGetStorySessionActionProcessor)(qpqConfig, dynamicModuleLoader))));
|
|
45
16
|
});
|
|
46
17
|
exports.getEventGetStorySessionActionProcessor = getEventGetStorySessionActionProcessor;
|
|
@@ -24,10 +24,10 @@ function* askTransformResponseStory({ eventParams, qpqEventRecordResponses: [rec
|
|
|
24
24
|
const getProcessTransformResponseResult = (qpqConfig) => {
|
|
25
25
|
// Create a custom runtime for errored responses so we can log them out
|
|
26
26
|
const errorCustomImplementation = (0, quidproquo_core_1.getProcessCustomImplementation)(qpqConfig, askTransformResponseStory, 'Transform Errored Websocket Response', null, () => new Date().toISOString(), awsLambdaUtils_1.randomGuid);
|
|
27
|
-
return (payload, session, actionProcessors, logger, updateSession, dynamicModuleLoader) => __awaiter(void 0, void 0, void 0, function* () {
|
|
27
|
+
return (payload, session, actionProcessors, logger, updateSession, dynamicModuleLoader, streamRegistry) => __awaiter(void 0, void 0, void 0, function* () {
|
|
28
28
|
if (payload.qpqEventRecordResponses.some((r) => !r.success)) {
|
|
29
29
|
// We only wan't to run this for errors, because a custom imp is slower then a regular imp
|
|
30
|
-
return yield errorCustomImplementation(payload, session, actionProcessors, logger, updateSession, dynamicModuleLoader);
|
|
30
|
+
return yield errorCustomImplementation(payload, session, actionProcessors, logger, updateSession, dynamicModuleLoader, streamRegistry);
|
|
31
31
|
}
|
|
32
32
|
return (0, quidproquo_core_1.actionResult)({
|
|
33
33
|
statusCode: 200,
|
package/lib/commonjs/getActionProcessor/core/eventBus/getEventBusSendMessagesActionProcessor.js
CHANGED
|
@@ -15,7 +15,7 @@ const quidproquo_core_1 = require("quidproquo-core");
|
|
|
15
15
|
const awsNamingUtils_1 = require("../../../awsNamingUtils");
|
|
16
16
|
const publishMessage_1 = require("../../../logic/sns/publishMessage");
|
|
17
17
|
const getProcessEventBusSendMessage = (qpqConfig) => {
|
|
18
|
-
return (_a, session_1) => __awaiter(void 0, [_a, session_1], void 0, function* ({ eventBusName, eventBusMessages,
|
|
18
|
+
return (_a, session_1) => __awaiter(void 0, [_a, session_1], void 0, function* ({ eventBusName, eventBusMessages, }, session) {
|
|
19
19
|
var _b, _c, _d, _e, _f;
|
|
20
20
|
const region = quidproquo_config_aws_1.qpqConfigAwsUtils.getApplicationModuleDeployRegion(qpqConfig);
|
|
21
21
|
const eventBusConfig = quidproquo_core_1.qpqCoreUtils.getEventBusConfigByName(eventBusName, qpqConfig);
|
|
@@ -23,11 +23,21 @@ const getProcessEventBusSendMessage = (qpqConfig) => {
|
|
|
23
23
|
return (0, quidproquo_core_1.actionResultError)(quidproquo_core_1.ErrorTypeEnum.NotFound, `Event bus ${eventBusName} not found`);
|
|
24
24
|
}
|
|
25
25
|
const topicArn = (0, awsNamingUtils_1.getEventBusSnsTopicArn)(((_b = eventBusConfig.owner) === null || _b === void 0 ? void 0 : _b.resourceNameOverride) || eventBusName, qpqConfig, ((_c = eventBusConfig.owner) === null || _c === void 0 ? void 0 : _c.module) || quidproquo_core_1.qpqCoreUtils.getApplicationModuleName(qpqConfig), ((_d = eventBusConfig.owner) === null || _d === void 0 ? void 0 : _d.environment) || quidproquo_core_1.qpqCoreUtils.getApplicationModuleEnvironment(qpqConfig), ((_e = eventBusConfig.owner) === null || _e === void 0 ? void 0 : _e.application) || quidproquo_core_1.qpqCoreUtils.getApplicationName(qpqConfig), ((_f = eventBusConfig.owner) === null || _f === void 0 ? void 0 : _f.feature) || quidproquo_core_1.qpqCoreUtils.getApplicationModuleFeature(qpqConfig));
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
26
|
+
try {
|
|
27
|
+
yield (0, publishMessage_1.publishMessage)(topicArn, region, eventBusMessages.map((message) => {
|
|
28
|
+
const eventBusMessageWithSession = Object.assign(Object.assign({}, message), { storySession: (0, quidproquo_core_1.toCrossServiceSession)(session) });
|
|
29
|
+
return JSON.stringify(eventBusMessageWithSession);
|
|
30
|
+
}));
|
|
31
|
+
return (0, quidproquo_core_1.actionResult)(void 0);
|
|
32
|
+
}
|
|
33
|
+
catch (error) {
|
|
34
|
+
return (0, quidproquo_core_1.actionResultErrorFromCaughtError)(error, {
|
|
35
|
+
AuthorizationErrorException: () => (0, quidproquo_core_1.actionResultError)(quidproquo_core_1.EventBusSendMessagesErrorTypeEnum.AccessDenied, 'Access denied publishing to event bus'),
|
|
36
|
+
NotFoundException: () => (0, quidproquo_core_1.actionResultError)(quidproquo_core_1.EventBusSendMessagesErrorTypeEnum.TopicNotFound, `Event bus topic not found: ${eventBusName}`),
|
|
37
|
+
InternalErrorException: () => (0, quidproquo_core_1.actionResultError)(quidproquo_core_1.EventBusSendMessagesErrorTypeEnum.ServiceUnavailable, 'Event bus service unavailable'),
|
|
38
|
+
ThrottledException: () => (0, quidproquo_core_1.actionResultError)(quidproquo_core_1.EventBusSendMessagesErrorTypeEnum.ServiceUnavailable, 'Event bus throttled'),
|
|
39
|
+
});
|
|
40
|
+
}
|
|
31
41
|
});
|
|
32
42
|
};
|
|
33
43
|
const getEventBusSendMessagesActionProcessor = (qpqConfig) => __awaiter(void 0, void 0, void 0, function* () {
|
|
@@ -17,15 +17,23 @@ const utils_1 = require("./utils");
|
|
|
17
17
|
const getProcessFileDelete = (qpqConfig) => {
|
|
18
18
|
return (_a) => __awaiter(void 0, [_a], void 0, function* ({ drive, filepaths }) {
|
|
19
19
|
const s3BucketName = (0, utils_1.resolveStorageDriveBucketName)(drive, qpqConfig);
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
20
|
+
try {
|
|
21
|
+
const errored = yield (0, s3Utils_1.deleteFiles)(s3BucketName, filepaths, quidproquo_config_aws_1.qpqConfigAwsUtils.getApplicationModuleDeployRegion(qpqConfig));
|
|
22
|
+
// errored deletes are a graceful success ~ Retry
|
|
23
|
+
// if (errored.length > 0) {
|
|
24
|
+
// return actionResultError(
|
|
25
|
+
// ErrorTypeEnum.GenericError,
|
|
26
|
+
// `Could not delete files ${errored.length}`,
|
|
27
|
+
// );
|
|
28
|
+
// }
|
|
29
|
+
return (0, quidproquo_core_1.actionResult)(errored);
|
|
30
|
+
}
|
|
31
|
+
catch (error) {
|
|
32
|
+
return (0, quidproquo_core_1.actionResultErrorFromCaughtError)(error, {
|
|
33
|
+
AccessDenied: () => (0, quidproquo_core_1.actionResultError)(quidproquo_core_1.FileDeleteErrorTypeEnum.AccessDenied, 'Access denied deleting files'),
|
|
34
|
+
NoSuchBucket: () => (0, quidproquo_core_1.actionResultError)(quidproquo_core_1.FileDeleteErrorTypeEnum.DriveNotFound, `Storage drive not found: ${drive}`),
|
|
35
|
+
});
|
|
36
|
+
}
|
|
29
37
|
});
|
|
30
38
|
};
|
|
31
39
|
const getFileDeleteActionProcessor = (qpqConfig) => __awaiter(void 0, void 0, void 0, function* () {
|
|
@@ -17,7 +17,15 @@ const utils_1 = require("./utils");
|
|
|
17
17
|
const getProcessFileExists = (qpqConfig) => {
|
|
18
18
|
return (_a) => __awaiter(void 0, [_a], void 0, function* ({ drive, filepath }) {
|
|
19
19
|
const s3BucketName = (0, utils_1.resolveStorageDriveBucketName)(drive, qpqConfig);
|
|
20
|
-
|
|
20
|
+
try {
|
|
21
|
+
return (0, quidproquo_core_1.actionResult)(yield (0, s3Utils_1.objectExists)(s3BucketName, filepath, quidproquo_config_aws_1.qpqConfigAwsUtils.getApplicationModuleDeployRegion(qpqConfig)));
|
|
22
|
+
}
|
|
23
|
+
catch (error) {
|
|
24
|
+
return (0, quidproquo_core_1.actionResultErrorFromCaughtError)(error, {
|
|
25
|
+
AccessDenied: () => (0, quidproquo_core_1.actionResultError)(quidproquo_core_1.FileExistsErrorTypeEnum.AccessDenied, 'Access denied checking file existence'),
|
|
26
|
+
Forbidden: () => (0, quidproquo_core_1.actionResultError)(quidproquo_core_1.FileExistsErrorTypeEnum.AccessDenied, 'Access denied checking file existence'),
|
|
27
|
+
});
|
|
28
|
+
}
|
|
21
29
|
});
|
|
22
30
|
};
|
|
23
31
|
const getFileExistsActionProcessor = (qpqConfig) => __awaiter(void 0, void 0, void 0, function* () {
|
|
@@ -15,8 +15,13 @@ const quidproquo_core_1 = require("quidproquo-core");
|
|
|
15
15
|
const quidproquo_core_2 = require("quidproquo-core");
|
|
16
16
|
const generatePresignedUrl_1 = require("../../../logic/s3/generatePresignedUrl");
|
|
17
17
|
const utils_1 = require("./utils");
|
|
18
|
+
// SigV4 presigned URLs cannot expire more than 7 days in the future
|
|
19
|
+
const maxExpirationMs = 7 * 24 * 60 * 60 * 1000;
|
|
18
20
|
const getProcessFileGenerateTemporarySecureUrl = (qpqConfig) => {
|
|
19
21
|
return (_a) => __awaiter(void 0, [_a], void 0, function* ({ drive, filepath, expirationMs }) {
|
|
22
|
+
if (expirationMs > maxExpirationMs) {
|
|
23
|
+
return (0, quidproquo_core_1.actionResultError)(quidproquo_core_2.FileGenerateTemporarySecureUrlErrorTypeEnum.ExpirationTooLong, 'Expiration exceeds the 7 day maximum for presigned URLs');
|
|
24
|
+
}
|
|
20
25
|
try {
|
|
21
26
|
const s3BucketName = (0, utils_1.resolveStorageDriveBucketName)(drive, qpqConfig);
|
|
22
27
|
const url = yield (0, generatePresignedUrl_1.generatePresignedUrl)(s3BucketName, filepath, quidproquo_config_aws_1.qpqConfigAwsUtils.getApplicationModuleDeployRegion(qpqConfig), expirationMs);
|
|
@@ -15,8 +15,13 @@ const quidproquo_core_1 = require("quidproquo-core");
|
|
|
15
15
|
const quidproquo_core_2 = require("quidproquo-core");
|
|
16
16
|
const generatePresignedUploadUrl_1 = require("../../../logic/s3/generatePresignedUploadUrl");
|
|
17
17
|
const utils_1 = require("./utils");
|
|
18
|
+
// SigV4 presigned URLs cannot expire more than 7 days in the future
|
|
19
|
+
const maxExpirationMs = 7 * 24 * 60 * 60 * 1000;
|
|
18
20
|
const getProcessFileGenerateTemporaryUploadSecureUrl = (qpqConfig) => {
|
|
19
21
|
return (_a, session_1) => __awaiter(void 0, [_a, session_1], void 0, function* ({ drive, filepath, expirationMs, contentType }, session) {
|
|
22
|
+
if (expirationMs > maxExpirationMs) {
|
|
23
|
+
return (0, quidproquo_core_1.actionResultError)(quidproquo_core_2.FileGenerateTemporaryUploadSecureUrlErrorTypeEnum.ExpirationTooLong, 'Expiration exceeds the 7 day maximum for presigned URLs');
|
|
24
|
+
}
|
|
20
25
|
try {
|
|
21
26
|
const s3BucketName = (0, utils_1.resolveStorageDriveBucketName)(drive, qpqConfig);
|
|
22
27
|
const url = yield (0, generatePresignedUploadUrl_1.generatePresignedUploadUrl)(s3BucketName, filepath, quidproquo_config_aws_1.qpqConfigAwsUtils.getApplicationModuleDeployRegion(qpqConfig), expirationMs, session.correlation, contentType);
|
|
@@ -17,8 +17,19 @@ const utils_1 = require("./utils");
|
|
|
17
17
|
const getProcessFileIsColdStorage = (qpqConfig) => {
|
|
18
18
|
return (_a) => __awaiter(void 0, [_a], void 0, function* ({ drive, filepath }) {
|
|
19
19
|
const s3BucketName = (0, utils_1.resolveStorageDriveBucketName)(drive, qpqConfig);
|
|
20
|
-
|
|
21
|
-
|
|
20
|
+
try {
|
|
21
|
+
const isColdStorage = (yield (0, getObjectStorageClass_1.getObjectStorageClass)(s3BucketName, filepath, quidproquo_config_aws_1.qpqConfigAwsUtils.getApplicationModuleDeployRegion(qpqConfig))) === 'cold_storage';
|
|
22
|
+
return (0, quidproquo_core_1.actionResult)(isColdStorage);
|
|
23
|
+
}
|
|
24
|
+
catch (error) {
|
|
25
|
+
return (0, quidproquo_core_1.actionResultErrorFromCaughtError)(error, {
|
|
26
|
+
AccessDenied: () => (0, quidproquo_core_1.actionResultError)(quidproquo_core_1.FileIsColdStorageErrorTypeEnum.AccessDenied, 'Access denied reading file storage class'),
|
|
27
|
+
Forbidden: () => (0, quidproquo_core_1.actionResultError)(quidproquo_core_1.FileIsColdStorageErrorTypeEnum.AccessDenied, 'Access denied reading file storage class'),
|
|
28
|
+
NotFound: () => (0, quidproquo_core_1.actionResultError)(quidproquo_core_1.FileIsColdStorageErrorTypeEnum.FileNotFound, `File not found: ${filepath}`),
|
|
29
|
+
NoSuchKey: () => (0, quidproquo_core_1.actionResultError)(quidproquo_core_1.FileIsColdStorageErrorTypeEnum.FileNotFound, `File not found: ${filepath}`),
|
|
30
|
+
NoSuchBucket: () => (0, quidproquo_core_1.actionResultError)(quidproquo_core_1.FileIsColdStorageErrorTypeEnum.DriveNotFound, `Storage drive not found: ${drive}`),
|
|
31
|
+
});
|
|
32
|
+
}
|
|
22
33
|
});
|
|
23
34
|
};
|
|
24
35
|
const getFileIsColdStorageActionProcessor = (qpqConfig) => __awaiter(void 0, void 0, void 0, function* () {
|
|
@@ -17,13 +17,22 @@ const utils_1 = require("./utils");
|
|
|
17
17
|
const getProcessFileListDirectory = (qpqConfig) => {
|
|
18
18
|
return (_a) => __awaiter(void 0, [_a], void 0, function* ({ drive, folderPath, maxFiles, pageToken }) {
|
|
19
19
|
const s3BucketName = (0, utils_1.resolveStorageDriveBucketName)(drive, qpqConfig);
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
20
|
+
try {
|
|
21
|
+
const s3FileList = yield (0, s3Utils_1.listFiles)(s3BucketName, quidproquo_config_aws_1.qpqConfigAwsUtils.getApplicationModuleDeployRegion(qpqConfig), folderPath, maxFiles, pageToken);
|
|
22
|
+
// Add the drive onto the list
|
|
23
|
+
const fileInfos = s3FileList.fileInfos.map((s3fi) => (Object.assign(Object.assign({}, s3fi), { drive })));
|
|
24
|
+
return (0, quidproquo_core_1.actionResult)({
|
|
25
|
+
fileInfos,
|
|
26
|
+
pageToken: s3FileList.pageToken,
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
catch (error) {
|
|
30
|
+
return (0, quidproquo_core_1.actionResultErrorFromCaughtError)(error, {
|
|
31
|
+
AccessDenied: () => (0, quidproquo_core_1.actionResultError)(quidproquo_core_1.FileListDirectoryErrorTypeEnum.AccessDenied, 'Access denied listing directory'),
|
|
32
|
+
Forbidden: () => (0, quidproquo_core_1.actionResultError)(quidproquo_core_1.FileListDirectoryErrorTypeEnum.AccessDenied, 'Access denied listing directory'),
|
|
33
|
+
NoSuchBucket: () => (0, quidproquo_core_1.actionResultError)(quidproquo_core_1.FileListDirectoryErrorTypeEnum.DriveNotFound, `Storage drive not found: ${drive}`),
|
|
34
|
+
});
|
|
35
|
+
}
|
|
27
36
|
});
|
|
28
37
|
};
|
|
29
38
|
const getFileListDirectoryActionProcessor = (qpqConfig) => __awaiter(void 0, void 0, void 0, function* () {
|
package/lib/commonjs/getActionProcessor/core/file/getFileReadBinaryContentsActionProcessor.js
CHANGED
|
@@ -16,8 +16,17 @@ const s3Utils_1 = require("../../../logic/s3/s3Utils");
|
|
|
16
16
|
const utils_1 = require("./utils");
|
|
17
17
|
const getProcessFileReadBinaryContents = (qpqConfig) => {
|
|
18
18
|
return (_a) => __awaiter(void 0, [_a], void 0, function* ({ drive, filepath }) {
|
|
19
|
-
|
|
20
|
-
|
|
19
|
+
try {
|
|
20
|
+
const s3BucketName = (0, utils_1.resolveStorageDriveBucketName)(drive, qpqConfig);
|
|
21
|
+
return (0, quidproquo_core_1.actionResult)(yield (0, s3Utils_1.readBinaryFile)(s3BucketName, filepath, quidproquo_config_aws_1.qpqConfigAwsUtils.getApplicationModuleDeployRegion(qpqConfig)));
|
|
22
|
+
}
|
|
23
|
+
catch (error) {
|
|
24
|
+
return (0, quidproquo_core_1.actionResultErrorFromCaughtError)(error, {
|
|
25
|
+
InvalidObjectState: () => (0, quidproquo_core_1.actionResultError)(quidproquo_core_1.FileReadBinaryContentsErrorTypeEnum.InvalidStorageClass, 'File is in the wrong storage class'),
|
|
26
|
+
NoSuchKey: () => (0, quidproquo_core_1.actionResultError)(quidproquo_core_1.FileReadBinaryContentsErrorTypeEnum.FileNotFound, `File not found: ${filepath}`),
|
|
27
|
+
NotFound: () => (0, quidproquo_core_1.actionResultError)(quidproquo_core_1.FileReadBinaryContentsErrorTypeEnum.FileNotFound, `File not found: ${filepath}`),
|
|
28
|
+
});
|
|
29
|
+
}
|
|
21
30
|
});
|
|
22
31
|
};
|
|
23
32
|
const getFileReadBinaryContentsActionProcessor = (qpqConfig) => __awaiter(void 0, void 0, void 0, function* () {
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __asyncValues = (this && this.__asyncValues) || function (o) {
|
|
12
|
+
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
|
|
13
|
+
var m = o[Symbol.asyncIterator], i;
|
|
14
|
+
return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
|
|
15
|
+
function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
|
|
16
|
+
function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
|
|
17
|
+
};
|
|
18
|
+
var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }
|
|
19
|
+
var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) {
|
|
20
|
+
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
|
|
21
|
+
var g = generator.apply(thisArg, _arguments || []), i, q = [];
|
|
22
|
+
return i = Object.create((typeof AsyncIterator === "function" ? AsyncIterator : Object).prototype), verb("next"), verb("throw"), verb("return", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;
|
|
23
|
+
function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }
|
|
24
|
+
function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }
|
|
25
|
+
function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
|
|
26
|
+
function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
|
|
27
|
+
function fulfill(value) { resume("next", value); }
|
|
28
|
+
function reject(value) { resume("throw", value); }
|
|
29
|
+
function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
|
|
30
|
+
};
|
|
31
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
32
|
+
exports.getFileStreamOpenActionProcessor = void 0;
|
|
33
|
+
const quidproquo_config_aws_1 = require("quidproquo-config-aws");
|
|
34
|
+
const quidproquo_core_1 = require("quidproquo-core");
|
|
35
|
+
const client_s3_1 = require("@aws-sdk/client-s3");
|
|
36
|
+
const awsLambdaUtils_1 = require("../../../awsLambdaUtils");
|
|
37
|
+
const createAwsClient_1 = require("../../../logic/createAwsClient");
|
|
38
|
+
const utils_1 = require("./utils");
|
|
39
|
+
function chunkedReadableIterator(stream, chunkSize, transform) {
|
|
40
|
+
return __asyncGenerator(this, arguments, function* chunkedReadableIterator_1() {
|
|
41
|
+
var _a, e_1, _b, _c;
|
|
42
|
+
let buffer = Buffer.alloc(0);
|
|
43
|
+
try {
|
|
44
|
+
for (var _d = true, stream_1 = __asyncValues(stream), stream_1_1; stream_1_1 = yield __await(stream_1.next()), _a = stream_1_1.done, !_a; _d = true) {
|
|
45
|
+
_c = stream_1_1.value;
|
|
46
|
+
_d = false;
|
|
47
|
+
const chunk = _c;
|
|
48
|
+
const incoming = typeof chunk === 'string' ? Buffer.from(chunk, 'utf8') : chunk;
|
|
49
|
+
buffer = Buffer.concat([buffer, incoming]);
|
|
50
|
+
while (buffer.length >= chunkSize) {
|
|
51
|
+
yield yield __await(transform(buffer.subarray(0, chunkSize)));
|
|
52
|
+
buffer = buffer.subarray(chunkSize);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
57
|
+
finally {
|
|
58
|
+
try {
|
|
59
|
+
if (!_d && !_a && (_b = stream_1.return)) yield __await(_b.call(stream_1));
|
|
60
|
+
}
|
|
61
|
+
finally { if (e_1) throw e_1.error; }
|
|
62
|
+
}
|
|
63
|
+
if (buffer.length > 0) {
|
|
64
|
+
yield yield __await(transform(buffer));
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
const getProcessFileStreamOpen = (qpqConfig) => {
|
|
69
|
+
return (_a, session_1, actionProcessors_1, logger_1, updateSession_1, dynamicModuleLoader_1, streamRegistry_1) => __awaiter(void 0, [_a, session_1, actionProcessors_1, logger_1, updateSession_1, dynamicModuleLoader_1, streamRegistry_1], void 0, function* ({ drive, filepath, encoding, chunkSize }, session, actionProcessors, logger, updateSession, dynamicModuleLoader, streamRegistry) {
|
|
70
|
+
try {
|
|
71
|
+
const s3BucketName = (0, utils_1.resolveStorageDriveBucketName)(drive, qpqConfig);
|
|
72
|
+
const region = quidproquo_config_aws_1.qpqConfigAwsUtils.getApplicationModuleDeployRegion(qpqConfig);
|
|
73
|
+
const s3Client = (0, createAwsClient_1.createAwsClient)(client_s3_1.S3Client, { region });
|
|
74
|
+
const response = yield s3Client.send(new client_s3_1.GetObjectCommand({
|
|
75
|
+
Key: filepath,
|
|
76
|
+
Bucket: s3BucketName,
|
|
77
|
+
}));
|
|
78
|
+
if (!response.Body) {
|
|
79
|
+
return (0, quidproquo_core_1.actionResultError)(quidproquo_core_1.ErrorTypeEnum.GenericError, `Empty response body for: ${filepath}`);
|
|
80
|
+
}
|
|
81
|
+
const streamId = `s3-${(0, awsLambdaUtils_1.randomGuid)()}`;
|
|
82
|
+
const isText = encoding === 'text';
|
|
83
|
+
const size = chunkSize !== null && chunkSize !== void 0 ? chunkSize : 65536;
|
|
84
|
+
const transform = isText
|
|
85
|
+
? (buf) => buf.toString('utf8')
|
|
86
|
+
: (buf) => buf.toString('base64');
|
|
87
|
+
const iterator = chunkedReadableIterator(response.Body, size, transform);
|
|
88
|
+
streamRegistry.register(streamId, iterator);
|
|
89
|
+
return (0, quidproquo_core_1.actionResult)({ id: streamId, encoding });
|
|
90
|
+
}
|
|
91
|
+
catch (error) {
|
|
92
|
+
return (0, quidproquo_core_1.actionResultErrorFromCaughtError)(error, {
|
|
93
|
+
InvalidObjectState: () => (0, quidproquo_core_1.actionResultError)(quidproquo_core_1.FileStreamOpenErrorTypeEnum.InvalidStorageClass, 'File is in the wrong storage class'),
|
|
94
|
+
NoSuchKey: () => (0, quidproquo_core_1.actionResultError)(quidproquo_core_1.FileStreamOpenErrorTypeEnum.FileNotFound, `File not found: ${filepath}`),
|
|
95
|
+
NotFound: () => (0, quidproquo_core_1.actionResultError)(quidproquo_core_1.FileStreamOpenErrorTypeEnum.FileNotFound, `File not found: ${filepath}`),
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
});
|
|
99
|
+
};
|
|
100
|
+
const getFileStreamOpenActionProcessor = (qpqConfig) => __awaiter(void 0, void 0, void 0, function* () {
|
|
101
|
+
return ({
|
|
102
|
+
[quidproquo_core_1.FileActionType.StreamOpen]: getProcessFileStreamOpen(qpqConfig),
|
|
103
|
+
});
|
|
104
|
+
});
|
|
105
|
+
exports.getFileStreamOpenActionProcessor = getFileStreamOpenActionProcessor;
|
package/lib/commonjs/getActionProcessor/core/file/getFileWriteBinaryContentsActionProcessor.js
CHANGED
|
@@ -18,8 +18,17 @@ const utils_1 = require("./utils");
|
|
|
18
18
|
const getProcessFileWriteBinaryContents = (qpqConfig) => {
|
|
19
19
|
return (_a) => __awaiter(void 0, [_a], void 0, function* ({ drive, filepath, data, storageDriveAdvancedWriteOptions }) {
|
|
20
20
|
const s3BucketName = (0, utils_1.resolveStorageDriveBucketName)(drive, qpqConfig);
|
|
21
|
-
|
|
22
|
-
|
|
21
|
+
try {
|
|
22
|
+
yield (0, s3Utils_1.writeBinaryFile)(s3BucketName, filepath, data, quidproquo_config_aws_1.qpqConfigAwsUtils.getApplicationModuleDeployRegion(qpqConfig), (0, awsLambdaUtils_1.getS3BucketStorageClassFromStorageDriveTier)(storageDriveAdvancedWriteOptions === null || storageDriveAdvancedWriteOptions === void 0 ? void 0 : storageDriveAdvancedWriteOptions.storageDriveTier));
|
|
23
|
+
return (0, quidproquo_core_1.actionResult)(void 0);
|
|
24
|
+
}
|
|
25
|
+
catch (error) {
|
|
26
|
+
return (0, quidproquo_core_1.actionResultErrorFromCaughtError)(error, {
|
|
27
|
+
AccessDenied: () => (0, quidproquo_core_1.actionResultError)(quidproquo_core_1.FileWriteBinaryContentsErrorTypeEnum.AccessDenied, 'Access denied writing file'),
|
|
28
|
+
Forbidden: () => (0, quidproquo_core_1.actionResultError)(quidproquo_core_1.FileWriteBinaryContentsErrorTypeEnum.AccessDenied, 'Access denied writing file'),
|
|
29
|
+
NoSuchBucket: () => (0, quidproquo_core_1.actionResultError)(quidproquo_core_1.FileWriteBinaryContentsErrorTypeEnum.DriveNotFound, `Storage drive not found: ${drive}`),
|
|
30
|
+
});
|
|
31
|
+
}
|
|
23
32
|
});
|
|
24
33
|
};
|
|
25
34
|
const getFileWriteBinaryContentsActionProcessor = (qpqConfig) => __awaiter(void 0, void 0, void 0, function* () {
|
|
@@ -19,8 +19,17 @@ const getProcessFileWriteObjectJson = (qpqConfig) => {
|
|
|
19
19
|
return (_a) => __awaiter(void 0, [_a], void 0, function* ({ drive, filepath, data, storageDriveAdvancedWriteOptions }) {
|
|
20
20
|
const s3BucketName = (0, utils_1.resolveStorageDriveBucketName)(drive, qpqConfig);
|
|
21
21
|
const dataJson = JSON.stringify(data);
|
|
22
|
-
|
|
23
|
-
|
|
22
|
+
try {
|
|
23
|
+
yield (0, s3Utils_1.writeTextFile)(s3BucketName, filepath, dataJson, quidproquo_config_aws_1.qpqConfigAwsUtils.getApplicationModuleDeployRegion(qpqConfig), (0, awsLambdaUtils_1.getS3BucketStorageClassFromStorageDriveTier)(storageDriveAdvancedWriteOptions === null || storageDriveAdvancedWriteOptions === void 0 ? void 0 : storageDriveAdvancedWriteOptions.storageDriveTier));
|
|
24
|
+
return (0, quidproquo_core_1.actionResult)(void 0);
|
|
25
|
+
}
|
|
26
|
+
catch (error) {
|
|
27
|
+
return (0, quidproquo_core_1.actionResultErrorFromCaughtError)(error, {
|
|
28
|
+
AccessDenied: () => (0, quidproquo_core_1.actionResultError)(quidproquo_core_1.FileWriteObjectJsonErrorTypeEnum.AccessDenied, 'Access denied writing file'),
|
|
29
|
+
Forbidden: () => (0, quidproquo_core_1.actionResultError)(quidproquo_core_1.FileWriteObjectJsonErrorTypeEnum.AccessDenied, 'Access denied writing file'),
|
|
30
|
+
NoSuchBucket: () => (0, quidproquo_core_1.actionResultError)(quidproquo_core_1.FileWriteObjectJsonErrorTypeEnum.DriveNotFound, `Storage drive not found: ${drive}`),
|
|
31
|
+
});
|
|
32
|
+
}
|
|
24
33
|
});
|
|
25
34
|
};
|
|
26
35
|
const getFileWriteObjectJsonActionProcessor = (qpqConfig) => __awaiter(void 0, void 0, void 0, function* () {
|
package/lib/commonjs/getActionProcessor/core/file/getFileWriteTextContentsActionProcessor.js
CHANGED
|
@@ -18,8 +18,17 @@ const utils_1 = require("./utils");
|
|
|
18
18
|
const getProcessFileWriteTextContents = (qpqConfig) => {
|
|
19
19
|
return (_a) => __awaiter(void 0, [_a], void 0, function* ({ drive, filepath, data, storageDriveAdvancedWriteOptions }) {
|
|
20
20
|
const s3BucketName = (0, utils_1.resolveStorageDriveBucketName)(drive, qpqConfig);
|
|
21
|
-
|
|
22
|
-
|
|
21
|
+
try {
|
|
22
|
+
yield (0, s3Utils_1.writeTextFile)(s3BucketName, filepath, data, quidproquo_config_aws_1.qpqConfigAwsUtils.getApplicationModuleDeployRegion(qpqConfig), (0, awsLambdaUtils_1.getS3BucketStorageClassFromStorageDriveTier)(storageDriveAdvancedWriteOptions === null || storageDriveAdvancedWriteOptions === void 0 ? void 0 : storageDriveAdvancedWriteOptions.storageDriveTier));
|
|
23
|
+
return (0, quidproquo_core_1.actionResult)(void 0);
|
|
24
|
+
}
|
|
25
|
+
catch (error) {
|
|
26
|
+
return (0, quidproquo_core_1.actionResultErrorFromCaughtError)(error, {
|
|
27
|
+
AccessDenied: () => (0, quidproquo_core_1.actionResultError)(quidproquo_core_1.FileWriteTextContentsErrorTypeEnum.AccessDenied, 'Access denied writing file'),
|
|
28
|
+
Forbidden: () => (0, quidproquo_core_1.actionResultError)(quidproquo_core_1.FileWriteTextContentsErrorTypeEnum.AccessDenied, 'Access denied writing file'),
|
|
29
|
+
NoSuchBucket: () => (0, quidproquo_core_1.actionResultError)(quidproquo_core_1.FileWriteTextContentsErrorTypeEnum.DriveNotFound, `Storage drive not found: ${drive}`),
|
|
30
|
+
});
|
|
31
|
+
}
|
|
23
32
|
});
|
|
24
33
|
};
|
|
25
34
|
const getFileWriteTextContentsActionProcessor = (qpqConfig) => __awaiter(void 0, void 0, void 0, function* () {
|
|
@@ -19,10 +19,11 @@ const getFileListDirectoryActionProcessor_1 = require("./getFileListDirectoryAct
|
|
|
19
19
|
const getFileReadBinaryContentsActionProcessor_1 = require("./getFileReadBinaryContentsActionProcessor");
|
|
20
20
|
const getFileReadObjectJsonActionProcessor_1 = require("./getFileReadObjectJsonActionProcessor");
|
|
21
21
|
const getFileReadTextContentsActionProcessor_1 = require("./getFileReadTextContentsActionProcessor");
|
|
22
|
+
const getFileStreamOpenActionProcessor_1 = require("./getFileStreamOpenActionProcessor");
|
|
22
23
|
const getFileWriteBinaryContentsActionProcessor_1 = require("./getFileWriteBinaryContentsActionProcessor");
|
|
23
24
|
const getFileWriteObjectJsonActionProcessor_1 = require("./getFileWriteObjectJsonActionProcessor");
|
|
24
25
|
const getFileWriteTextContentsActionProcessor_1 = require("./getFileWriteTextContentsActionProcessor");
|
|
25
26
|
const getFileActionProcessor = (qpqConfig, dynamicModuleLoader) => __awaiter(void 0, void 0, void 0, function* () {
|
|
26
|
-
return (Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, (yield (0, getFileDeleteActionProcessor_1.getFileDeleteActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, getFileExistsActionProcessor_1.getFileExistsActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, getFileGenerateTemporarySecureUrlActionProcessor_1.getFileGenerateTemporarySecureUrlActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, getFileGenerateTemporaryUploadSecureUrlActionProcessor_1.getFileGenerateTemporaryUploadSecureUrlActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, getFileIsColdStorageActionProcessor_1.getFileIsColdStorageActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, getFileListDirectoryActionProcessor_1.getFileListDirectoryActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, getFileReadTextContentsActionProcessor_1.getFileReadTextContentsActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, getFileReadObjectJsonActionProcessor_1.getFileReadObjectJsonActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, getFileWriteTextContentsActionProcessor_1.getFileWriteTextContentsActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, getFileReadBinaryContentsActionProcessor_1.getFileReadBinaryContentsActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, getFileWriteObjectJsonActionProcessor_1.getFileWriteObjectJsonActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, getFileWriteBinaryContentsActionProcessor_1.getFileWriteBinaryContentsActionProcessor)(qpqConfig, dynamicModuleLoader))));
|
|
27
|
+
return (Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, (yield (0, getFileDeleteActionProcessor_1.getFileDeleteActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, getFileExistsActionProcessor_1.getFileExistsActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, getFileGenerateTemporarySecureUrlActionProcessor_1.getFileGenerateTemporarySecureUrlActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, getFileGenerateTemporaryUploadSecureUrlActionProcessor_1.getFileGenerateTemporaryUploadSecureUrlActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, getFileIsColdStorageActionProcessor_1.getFileIsColdStorageActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, getFileListDirectoryActionProcessor_1.getFileListDirectoryActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, getFileReadTextContentsActionProcessor_1.getFileReadTextContentsActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, getFileReadObjectJsonActionProcessor_1.getFileReadObjectJsonActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, getFileWriteTextContentsActionProcessor_1.getFileWriteTextContentsActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, getFileReadBinaryContentsActionProcessor_1.getFileReadBinaryContentsActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, getFileWriteObjectJsonActionProcessor_1.getFileWriteObjectJsonActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, getFileWriteBinaryContentsActionProcessor_1.getFileWriteBinaryContentsActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, getFileStreamOpenActionProcessor_1.getFileStreamOpenActionProcessor)(qpqConfig, dynamicModuleLoader))));
|
|
27
28
|
});
|
|
28
29
|
exports.getFileActionProcessor = getFileActionProcessor;
|
|
@@ -24,6 +24,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
24
24
|
};
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
26
|
exports.getCoreActionProcessor = void 0;
|
|
27
|
+
__exportStar(require("./ai"), exports);
|
|
28
|
+
__exportStar(require("./apiKeyValidation"), exports);
|
|
27
29
|
__exportStar(require("./config"), exports);
|
|
28
30
|
__exportStar(require("./event"), exports);
|
|
29
31
|
__exportStar(require("./eventBus"), exports);
|
|
@@ -33,6 +35,9 @@ __exportStar(require("./keyValueStore"), exports);
|
|
|
33
35
|
__exportStar(require("./queue"), exports);
|
|
34
36
|
__exportStar(require("./system"), exports);
|
|
35
37
|
__exportStar(require("./userDirectory"), exports);
|
|
38
|
+
const quidproquo_webserver_1 = require("quidproquo-webserver");
|
|
39
|
+
const ai_1 = require("./ai");
|
|
40
|
+
const apiKeyValidation_1 = require("./apiKeyValidation");
|
|
36
41
|
const config_1 = require("./config");
|
|
37
42
|
const event_1 = require("./event");
|
|
38
43
|
const eventBus_1 = require("./eventBus");
|
|
@@ -43,6 +48,6 @@ const queue_1 = require("./queue");
|
|
|
43
48
|
const system_1 = require("./system");
|
|
44
49
|
const userDirectory_1 = require("./userDirectory");
|
|
45
50
|
const getCoreActionProcessor = (qpqConfig, dynamicModuleLoader) => __awaiter(void 0, void 0, void 0, function* () {
|
|
46
|
-
return (Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, (yield (0, file_1.getFileActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, keyValueStore_1.getKeyValueStoreActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, queue_1.getQueueActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, userDirectory_1.getUserDirectoryActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, eventBus_1.getEventBusActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, system_1.getSystemActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, config_1.getConfigActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, event_1.getApiGatewayApiEventEventProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, graphDatabase_1.getGraphDatabaseActionProcessor)(qpqConfig, dynamicModuleLoader))));
|
|
51
|
+
return (Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, (yield (0, ai_1.getAiActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, apiKeyValidation_1.getApiKeyValidationActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, file_1.getFileActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, keyValueStore_1.getKeyValueStoreActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, queue_1.getQueueActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, userDirectory_1.getUserDirectoryActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, eventBus_1.getEventBusActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, system_1.getSystemActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, config_1.getConfigActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, event_1.getApiGatewayApiEventEventProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, graphDatabase_1.getGraphDatabaseActionProcessor)(qpqConfig, dynamicModuleLoader))), (yield (0, quidproquo_webserver_1.getRouteAuthValidationActionProcessor)(qpqConfig, dynamicModuleLoader))));
|
|
47
52
|
});
|
|
48
53
|
exports.getCoreActionProcessor = getCoreActionProcessor;
|
package/lib/commonjs/getActionProcessor/core/keyValueStore/getKeyValueStoreDeleteActionProcessor.js
CHANGED
|
@@ -21,8 +21,16 @@ const getProcessKeyValueStoreDelete = (qpqConfig) => {
|
|
|
21
21
|
const dynamoTableName = (0, awsNamingUtils_1.getKvsDynamoTableNameFromConfig)(keyValueStoreName, qpqConfig, 'kvs');
|
|
22
22
|
const region = quidproquo_config_aws_1.qpqConfigAwsUtils.getApplicationModuleDeployRegion(qpqConfig);
|
|
23
23
|
const storeConfig = quidproquo_core_1.qpqCoreUtils.getKeyValueStoreByName(qpqConfig, keyValueStoreName);
|
|
24
|
-
|
|
25
|
-
|
|
24
|
+
try {
|
|
25
|
+
yield (0, dynamo_1.deleteItem)(dynamoTableName, region, key, storeConfig.partitionKey.key, sortKey, (_b = storeConfig.sortKeys[0]) === null || _b === void 0 ? void 0 : _b.key);
|
|
26
|
+
return (0, quidproquo_core_2.actionResult)(void 0);
|
|
27
|
+
}
|
|
28
|
+
catch (error) {
|
|
29
|
+
return (0, quidproquo_core_2.actionResultErrorFromCaughtError)(error, {
|
|
30
|
+
InternalServerError: () => (0, quidproquo_core_2.actionResultError)(quidproquo_core_2.KeyValueStoreDeleteErrorTypeEnum.ServiceUnavailable, 'KVS Service Unavailable'),
|
|
31
|
+
ResourceNotFoundException: () => (0, quidproquo_core_2.actionResultError)(quidproquo_core_2.KeyValueStoreDeleteErrorTypeEnum.ResourceNotFound, 'KVS Resource Not Found'),
|
|
32
|
+
});
|
|
33
|
+
}
|
|
26
34
|
});
|
|
27
35
|
};
|
|
28
36
|
const getKeyValueStoreDeleteActionProcessor = (qpqConfig) => __awaiter(void 0, void 0, void 0, function* () {
|
package/lib/commonjs/getActionProcessor/core/keyValueStore/getKeyValueStoreGetActionProcessor.js
CHANGED
|
@@ -18,8 +18,16 @@ const getProcessKeyValueStoreGet = (qpqConfig) => {
|
|
|
18
18
|
return (_a) => __awaiter(void 0, [_a], void 0, function* ({ keyValueStoreName, key }) {
|
|
19
19
|
const dynamoTableName = (0, awsNamingUtils_1.getKvsDynamoTableNameFromConfig)(keyValueStoreName, qpqConfig, 'kvs');
|
|
20
20
|
const region = quidproquo_config_aws_1.qpqConfigAwsUtils.getApplicationModuleDeployRegion(qpqConfig);
|
|
21
|
-
|
|
22
|
-
|
|
21
|
+
try {
|
|
22
|
+
const result = yield (0, dynamo_1.getItem)(dynamoTableName, key, region);
|
|
23
|
+
return (0, quidproquo_core_1.actionResult)(result);
|
|
24
|
+
}
|
|
25
|
+
catch (error) {
|
|
26
|
+
return (0, quidproquo_core_1.actionResultErrorFromCaughtError)(error, {
|
|
27
|
+
InternalServerError: () => (0, quidproquo_core_1.actionResultError)(quidproquo_core_1.KeyValueStoreGetErrorTypeEnum.ServiceUnavailable, 'KVS Service Unavailable'),
|
|
28
|
+
ResourceNotFoundException: () => (0, quidproquo_core_1.actionResultError)(quidproquo_core_1.KeyValueStoreGetErrorTypeEnum.ResourceNotFound, 'KVS Resource Not Found'),
|
|
29
|
+
});
|
|
30
|
+
}
|
|
23
31
|
});
|
|
24
32
|
};
|
|
25
33
|
const getKeyValueStoreGetActionProcessor = (qpqConfig) => __awaiter(void 0, void 0, void 0, function* () {
|
package/lib/commonjs/getActionProcessor/core/keyValueStore/getKeyValueStoreGetAllActionProcessor.js
CHANGED
|
@@ -18,8 +18,16 @@ const getProcessKeyValueStoreGetAll = (qpqConfig) => {
|
|
|
18
18
|
return (_a) => __awaiter(void 0, [_a], void 0, function* ({ keyValueStoreName }) {
|
|
19
19
|
const dynamoTableName = (0, awsNamingUtils_1.getKvsDynamoTableNameFromConfig)(keyValueStoreName, qpqConfig, 'kvs');
|
|
20
20
|
const region = quidproquo_config_aws_1.qpqConfigAwsUtils.getApplicationModuleDeployRegion(qpqConfig);
|
|
21
|
-
|
|
22
|
-
|
|
21
|
+
try {
|
|
22
|
+
const result = yield (0, dynamo_1.getAllItems)(dynamoTableName, region);
|
|
23
|
+
return (0, quidproquo_core_1.actionResult)(result);
|
|
24
|
+
}
|
|
25
|
+
catch (error) {
|
|
26
|
+
return (0, quidproquo_core_1.actionResultErrorFromCaughtError)(error, {
|
|
27
|
+
InternalServerError: () => (0, quidproquo_core_1.actionResultError)(quidproquo_core_1.KeyValueStoreGetAllErrorTypeEnum.ServiceUnavailable, 'KVS Service Unavailable'),
|
|
28
|
+
ResourceNotFoundException: () => (0, quidproquo_core_1.actionResultError)(quidproquo_core_1.KeyValueStoreGetAllErrorTypeEnum.ResourceNotFound, 'KVS Resource Not Found'),
|
|
29
|
+
});
|
|
30
|
+
}
|
|
23
31
|
});
|
|
24
32
|
};
|
|
25
33
|
const getKeyValueStoreGetAllActionProcessor = (qpqConfig) => __awaiter(void 0, void 0, void 0, function* () {
|