@webiny/project-aws 6.3.0-beta.4 → 6.4.0-beta.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/_templates/appTemplates/admin/src/index.tsx +0 -3
- package/abstractions/ApiGqlClient.js +2 -1
- package/abstractions/ApiGqlClient.js.map +1 -1
- package/abstractions/InvokeLambdaFunction.js +2 -1
- package/abstractions/InvokeLambdaFunction.js.map +1 -1
- package/abstractions/features/pulumi/AdminPulumi.js +2 -1
- package/abstractions/features/pulumi/AdminPulumi.js.map +1 -1
- package/abstractions/features/pulumi/ApiPulumi.js +2 -1
- package/abstractions/features/pulumi/ApiPulumi.js.map +1 -1
- package/abstractions/features/pulumi/CorePulumi.js +2 -1
- package/abstractions/features/pulumi/CorePulumi.js.map +1 -1
- package/abstractions/features/pulumi/index.js +0 -2
- package/abstractions/index.js +0 -2
- package/abstractions/services/AdminStackOutputService.js +2 -1
- package/abstractions/services/AdminStackOutputService.js.map +1 -1
- package/abstractions/services/ApiStackOutputService.js +2 -1
- package/abstractions/services/ApiStackOutputService.js.map +1 -1
- package/abstractions/services/CoreStackOutputService.js +2 -1
- package/abstractions/services/CoreStackOutputService.js.map +1 -1
- package/admin.js +5 -4
- package/admin.js.map +1 -1
- package/api.js +13 -12
- package/api.js.map +1 -1
- package/apps/createAdminApp.js +11 -12
- package/apps/createAdminApp.js.map +1 -1
- package/apps/createAdminAppConfig.js +12 -18
- package/apps/createAdminAppConfig.js.map +1 -1
- package/apps/createApiApp.js +17 -22
- package/apps/createApiApp.js.map +1 -1
- package/apps/createBlueGreenApp.js +13 -16
- package/apps/createBlueGreenApp.js.map +1 -1
- package/apps/createCoreApp.js +12 -13
- package/apps/createCoreApp.js.map +1 -1
- package/apps/createReactAppConfig.d.ts +0 -7
- package/apps/createReactAppConfig.js +56 -69
- package/apps/createReactAppConfig.js.map +1 -1
- package/apps/createSyncSystemApp.js +8 -7
- package/apps/createSyncSystemApp.js.map +1 -1
- package/apps/index.js +0 -2
- package/cli.js +3 -2
- package/cli.js.map +1 -1
- package/exports/extensions.js +0 -2
- package/exports/infra/admin.js +0 -2
- package/exports/infra/api.js +0 -2
- package/exports/infra/core.js +0 -2
- package/exports/infra.js +1 -3
- package/extensions/ApiLambdaFunction.js +45 -56
- package/extensions/ApiLambdaFunction.js.map +1 -1
- package/extensions/ApiRoute.js +90 -104
- package/extensions/ApiRoute.js.map +1 -1
- package/extensions/AwsDefaultRegion.js +17 -16
- package/extensions/AwsDefaultRegion.js.map +1 -1
- package/extensions/Cms/ModelFieldCompression.js +16 -15
- package/extensions/Cms/ModelFieldCompression.js.map +1 -1
- package/extensions/Encryption.js +30 -29
- package/extensions/Encryption.js.map +1 -1
- package/extensions/Mailer/Smtp.js +15 -14
- package/extensions/Mailer/Smtp.js.map +1 -1
- package/extensions/Mailer/Smtp.test.js +117 -131
- package/extensions/Mailer/Smtp.test.js.map +1 -1
- package/extensions/Mailer/SmtpParamsSchema.js +11 -14
- package/extensions/Mailer/SmtpParamsSchema.js.map +1 -1
- package/extensions/OpenSearch/EnsureOsServiceRoleBeforeCoreDeploy.js +25 -30
- package/extensions/OpenSearch/EnsureOsServiceRoleBeforeCoreDeploy.js.map +1 -1
- package/extensions/OpenSearch/EnsureOsWasDeployed.js +14 -24
- package/extensions/OpenSearch/EnsureOsWasDeployed.js.map +1 -1
- package/extensions/OpenSearch/InjectDdbEsLambdaFnHandler.js +25 -21
- package/extensions/OpenSearch/InjectDdbEsLambdaFnHandler.js.map +1 -1
- package/extensions/OpenSearch/ReplaceApiLambdaFnHandlers.js +26 -22
- package/extensions/OpenSearch/ReplaceApiLambdaFnHandlers.js.map +1 -1
- package/extensions/OpenSearch.js +30 -31
- package/extensions/OpenSearch.js.map +1 -1
- package/extensions/ProjectAws/AdminStackOutputService.js +0 -2
- package/extensions/ProjectAws/ApiStackOutputService.js +0 -2
- package/extensions/ProjectAws/AutoInstall/AutoInstallAfterApiDeploy.js +65 -74
- package/extensions/ProjectAws/AutoInstall/AutoInstallAfterApiDeploy.js.map +1 -1
- package/extensions/ProjectAws/AutoInstall.js +15 -14
- package/extensions/ProjectAws/AutoInstall.js.map +1 -1
- package/extensions/ProjectAws/BlueGreenDeployments/EnsureVariantBeforeDeploy.js +15 -19
- package/extensions/ProjectAws/BlueGreenDeployments/EnsureVariantBeforeDeploy.js.map +1 -1
- package/extensions/ProjectAws/BlueGreenDeployments/PrintDeploymentInfoAfterDeploy.js +56 -45
- package/extensions/ProjectAws/BlueGreenDeployments/PrintDeploymentInfoAfterDeploy.js.map +1 -1
- package/extensions/ProjectAws/BlueGreenDeployments/SetPrimaryVariantCliCommand.js +57 -55
- package/extensions/ProjectAws/BlueGreenDeployments/SetPrimaryVariantCliCommand.js.map +1 -1
- package/extensions/ProjectAws/BuildAppWorkspace.js +49 -54
- package/extensions/ProjectAws/BuildAppWorkspace.js.map +1 -1
- package/extensions/ProjectAws/CoreStackOutputService.js +0 -2
- package/extensions/ProjectAws/EnsureAwsCredentialsBeforeDeploy.js +26 -30
- package/extensions/ProjectAws/EnsureAwsCredentialsBeforeDeploy.js.map +1 -1
- package/extensions/ProjectAws/SetAdminEnvVars/SetAdminEnvVars.js +25 -38
- package/extensions/ProjectAws/SetAdminEnvVars/SetAdminEnvVars.js.map +1 -1
- package/extensions/ProjectAws/SetAdminEnvVars/SetAdminEnvVarsBeforeBuild.js +22 -17
- package/extensions/ProjectAws/SetAdminEnvVars/SetAdminEnvVarsBeforeBuild.js.map +1 -1
- package/extensions/ProjectAws/SetAdminEnvVars/SetAdminEnvVarsBeforeWatch.js +22 -17
- package/extensions/ProjectAws/SetAdminEnvVars/SetAdminEnvVarsBeforeWatch.js.map +1 -1
- package/extensions/ProjectAws/SetDatabaseSetupOutput.js +20 -21
- package/extensions/ProjectAws/SetDatabaseSetupOutput.js.map +1 -1
- package/extensions/ProjectAws/UploadAdminAppToS3.js +53 -58
- package/extensions/ProjectAws/UploadAdminAppToS3.js.map +1 -1
- package/extensions/ProjectAws/definitions.js +13 -6
- package/extensions/ProjectAws/definitions.js.map +1 -1
- package/extensions/ProjectAws.js +44 -45
- package/extensions/ProjectAws.js.map +1 -1
- package/extensions/RegisterRoutesPulumi.js +24 -29
- package/extensions/RegisterRoutesPulumi.js.map +1 -1
- package/extensions/definitions.js +10 -3
- package/extensions/definitions.js.map +1 -1
- package/extensions/index.js +0 -2
- package/features/ApiGqlClient.js +46 -51
- package/features/ApiGqlClient.js.map +1 -1
- package/features/InvokeLambdaFunction.js +30 -32
- package/features/InvokeLambdaFunction.js.map +1 -1
- package/features/index.js +0 -2
- package/index.js +0 -2
- package/infra.js +57 -59
- package/infra.js.map +1 -1
- package/package.json +14 -14
- package/project.js +7 -6
- package/project.js.map +1 -1
- package/pulumi/apps/admin/createAdminPulumiApp.js +36 -44
- package/pulumi/apps/admin/createAdminPulumiApp.js.map +1 -1
- package/pulumi/apps/admin/index.js +0 -2
- package/pulumi/apps/api/ApiBackgroundTask.js +153 -137
- package/pulumi/apps/api/ApiBackgroundTask.js.map +1 -1
- package/pulumi/apps/api/ApiCloudfront.js +188 -130
- package/pulumi/apps/api/ApiCloudfront.js.map +1 -1
- package/pulumi/apps/api/ApiFileManager.js +34 -33
- package/pulumi/apps/api/ApiFileManager.js.map +1 -1
- package/pulumi/apps/api/ApiGateway.js +67 -74
- package/pulumi/apps/api/ApiGateway.js.map +1 -1
- package/pulumi/apps/api/ApiGraphql.js +223 -152
- package/pulumi/apps/api/ApiGraphql.js.map +1 -1
- package/pulumi/apps/api/ApiOutput.js +29 -30
- package/pulumi/apps/api/ApiOutput.js.map +1 -1
- package/pulumi/apps/api/ApiScheduler.js +94 -92
- package/pulumi/apps/api/ApiScheduler.js.map +1 -1
- package/pulumi/apps/api/ApiWebsocket.js +141 -133
- package/pulumi/apps/api/ApiWebsocket.js.map +1 -1
- package/pulumi/apps/api/backgroundTask/definition.js +122 -144
- package/pulumi/apps/api/backgroundTask/definition.js.map +1 -1
- package/pulumi/apps/api/backgroundTask/policy.js +37 -23
- package/pulumi/apps/api/backgroundTask/policy.js.map +1 -1
- package/pulumi/apps/api/backgroundTask/role.js +29 -29
- package/pulumi/apps/api/backgroundTask/role.js.map +1 -1
- package/pulumi/apps/api/backgroundTask/types.js +9 -11
- package/pulumi/apps/api/backgroundTask/types.js.map +1 -1
- package/pulumi/apps/api/createApiPulumiApp.js +206 -274
- package/pulumi/apps/api/createApiPulumiApp.js.map +1 -1
- package/pulumi/apps/api/handleGuardDutyEvents.js +54 -51
- package/pulumi/apps/api/handleGuardDutyEvents.js.map +1 -1
- package/pulumi/apps/api/index.js +0 -2
- package/pulumi/apps/awsUtils.js +21 -24
- package/pulumi/apps/awsUtils.js.map +1 -1
- package/pulumi/apps/blueGreen/BlueGreenRouterApiGateway.js +37 -40
- package/pulumi/apps/blueGreen/BlueGreenRouterApiGateway.js.map +1 -1
- package/pulumi/apps/blueGreen/BlueGreenRouterCloudFront.js +83 -91
- package/pulumi/apps/blueGreen/BlueGreenRouterCloudFront.js.map +1 -1
- package/pulumi/apps/blueGreen/BlueGreenRouterCloudFrontStore.js +17 -16
- package/pulumi/apps/blueGreen/BlueGreenRouterCloudFrontStore.js.map +1 -1
- package/pulumi/apps/blueGreen/cloudfront/createCloudFrontDefaultCacheBehaviorPolicies.js +13 -12
- package/pulumi/apps/blueGreen/cloudfront/createCloudFrontDefaultCacheBehaviorPolicies.js.map +1 -1
- package/pulumi/apps/blueGreen/cloudfront/createCloudFrontFunctionDomainMap.js +9 -14
- package/pulumi/apps/blueGreen/cloudfront/createCloudFrontFunctionDomainMap.js.map +1 -1
- package/pulumi/apps/blueGreen/cloudfront/createOriginId.js +5 -7
- package/pulumi/apps/blueGreen/cloudfront/createOriginId.js.map +1 -1
- package/pulumi/apps/blueGreen/constants.js +15 -3
- package/pulumi/apps/blueGreen/constants.js.map +1 -1
- package/pulumi/apps/blueGreen/createBlueGreenPulumiApp.js +77 -103
- package/pulumi/apps/blueGreen/createBlueGreenPulumiApp.js.map +1 -1
- package/pulumi/apps/blueGreen/domains/attachDomainsToOutput.js +20 -26
- package/pulumi/apps/blueGreen/domains/attachDomainsToOutput.js.map +1 -1
- package/pulumi/apps/blueGreen/domains/convertApplicationDomains.js +17 -20
- package/pulumi/apps/blueGreen/domains/convertApplicationDomains.js.map +1 -1
- package/pulumi/apps/blueGreen/domains/getApplicationDomains.js +51 -61
- package/pulumi/apps/blueGreen/domains/getApplicationDomains.js.map +1 -1
- package/pulumi/apps/blueGreen/domains/resolveDomains.js +24 -38
- package/pulumi/apps/blueGreen/domains/resolveDomains.js.map +1 -1
- package/pulumi/apps/blueGreen/functions/buildHandlerFunction.js +7 -14
- package/pulumi/apps/blueGreen/functions/buildHandlerFunction.js.map +1 -1
- package/pulumi/apps/blueGreen/functions/handler.js +1 -57
- package/pulumi/apps/blueGreen/functions/handler.js.map +1 -1
- package/pulumi/apps/blueGreen/types.js +0 -3
- package/pulumi/apps/blueGreen/validation/validateDeployments.js +19 -24
- package/pulumi/apps/blueGreen/validation/validateDeployments.js.map +1 -1
- package/pulumi/apps/common/CoreOutput.js +34 -37
- package/pulumi/apps/common/CoreOutput.js.map +1 -1
- package/pulumi/apps/common/VpcConfig.js +20 -20
- package/pulumi/apps/common/VpcConfig.js.map +1 -1
- package/pulumi/apps/common/index.js +0 -2
- package/pulumi/apps/core/CoreAuditLogsDynamo.js +245 -182
- package/pulumi/apps/core/CoreAuditLogsDynamo.js.map +1 -1
- package/pulumi/apps/core/CoreCognito.js +117 -106
- package/pulumi/apps/core/CoreCognito.js.map +1 -1
- package/pulumi/apps/core/CoreDynamo.js +91 -70
- package/pulumi/apps/core/CoreDynamo.js.map +1 -1
- package/pulumi/apps/core/CoreEventBus.js +10 -9
- package/pulumi/apps/core/CoreEventBus.js.map +1 -1
- package/pulumi/apps/core/CoreFileManager.js +76 -68
- package/pulumi/apps/core/CoreFileManager.js.map +1 -1
- package/pulumi/apps/core/CoreOpenSearch.js +281 -305
- package/pulumi/apps/core/CoreOpenSearch.js.map +1 -1
- package/pulumi/apps/core/CoreVpc.js +155 -156
- package/pulumi/apps/core/CoreVpc.js.map +1 -1
- package/pulumi/apps/core/WatchCommand.js +94 -96
- package/pulumi/apps/core/WatchCommand.js.map +1 -1
- package/pulumi/apps/core/cognitoIdentityProviders/amazon.js +16 -22
- package/pulumi/apps/core/cognitoIdentityProviders/amazon.js.map +1 -1
- package/pulumi/apps/core/cognitoIdentityProviders/apple.js +16 -17
- package/pulumi/apps/core/cognitoIdentityProviders/apple.js.map +1 -1
- package/pulumi/apps/core/cognitoIdentityProviders/configure.js +44 -50
- package/pulumi/apps/core/cognitoIdentityProviders/configure.js.map +1 -1
- package/pulumi/apps/core/cognitoIdentityProviders/facebook.js +16 -17
- package/pulumi/apps/core/cognitoIdentityProviders/facebook.js.map +1 -1
- package/pulumi/apps/core/cognitoIdentityProviders/getIdpConfig.js +7 -8
- package/pulumi/apps/core/cognitoIdentityProviders/getIdpConfig.js.map +1 -1
- package/pulumi/apps/core/cognitoIdentityProviders/google.js +16 -17
- package/pulumi/apps/core/cognitoIdentityProviders/google.js.map +1 -1
- package/pulumi/apps/core/cognitoIdentityProviders/index.js +0 -2
- package/pulumi/apps/core/cognitoIdentityProviders/oidc.js +17 -18
- package/pulumi/apps/core/cognitoIdentityProviders/oidc.js.map +1 -1
- package/pulumi/apps/core/configureS3BucketMalwareProtection.js +251 -188
- package/pulumi/apps/core/configureS3BucketMalwareProtection.js.map +1 -1
- package/pulumi/apps/core/createCorePulumiApp.js +212 -280
- package/pulumi/apps/core/createCorePulumiApp.js.map +1 -1
- package/pulumi/apps/core/index.js +0 -2
- package/pulumi/apps/core/webinyWatchCommand/handler.js +45 -32
- package/pulumi/apps/core/webinyWatchCommand/handler.js.map +1 -1
- package/pulumi/apps/createAppBucket.js +157 -146
- package/pulumi/apps/createAppBucket.js.map +1 -1
- package/pulumi/apps/customDomain.js +7 -6
- package/pulumi/apps/customDomain.js.map +1 -1
- package/pulumi/apps/extensions/getAwsTagsFromExtension.js +8 -7
- package/pulumi/apps/extensions/getAwsTagsFromExtension.js.map +1 -1
- package/pulumi/apps/extensions/getBgDeploymentsConfigFromExtension.js +6 -7
- package/pulumi/apps/extensions/getBgDeploymentsConfigFromExtension.js.map +1 -1
- package/pulumi/apps/extensions/getOsConfigFromExtension.js +17 -41
- package/pulumi/apps/extensions/getOsConfigFromExtension.js.map +1 -1
- package/pulumi/apps/extensions/getVpcConfigFromExtension.js +13 -25
- package/pulumi/apps/extensions/getVpcConfigFromExtension.js.map +1 -1
- package/pulumi/apps/index.js +0 -3
- package/pulumi/apps/lambdaUtils.js +57 -61
- package/pulumi/apps/lambdaUtils.js.map +1 -1
- package/pulumi/apps/react/createReactPulumiApp.js +108 -129
- package/pulumi/apps/react/createReactPulumiApp.js.map +1 -1
- package/pulumi/apps/react/index.js +0 -2
- package/pulumi/apps/syncSystem/SyncSystemDynamo.js +77 -62
- package/pulumi/apps/syncSystem/SyncSystemDynamo.js.map +1 -1
- package/pulumi/apps/syncSystem/SyncSystemDynamoDb.js +74 -57
- package/pulumi/apps/syncSystem/SyncSystemDynamoDb.js.map +1 -1
- package/pulumi/apps/syncSystem/SyncSystemEventBus.js +77 -71
- package/pulumi/apps/syncSystem/SyncSystemEventBus.js.map +1 -1
- package/pulumi/apps/syncSystem/SyncSystemLambda.js +154 -86
- package/pulumi/apps/syncSystem/SyncSystemLambda.js.map +1 -1
- package/pulumi/apps/syncSystem/SyncSystemOutput.js +14 -13
- package/pulumi/apps/syncSystem/SyncSystemOutput.js.map +1 -1
- package/pulumi/apps/syncSystem/SyncSystemResolverLambda.js +56 -60
- package/pulumi/apps/syncSystem/SyncSystemResolverLambda.js.map +1 -1
- package/pulumi/apps/syncSystem/SyncSystemSQS.js +25 -49
- package/pulumi/apps/syncSystem/SyncSystemSQS.js.map +1 -1
- package/pulumi/apps/syncSystem/SyncSystemWorkerLambda.js +44 -43
- package/pulumi/apps/syncSystem/SyncSystemWorkerLambda.js.map +1 -1
- package/pulumi/apps/syncSystem/addTableItems.js +35 -45
- package/pulumi/apps/syncSystem/addTableItems.js.map +1 -1
- package/pulumi/apps/syncSystem/api/addServiceManifest.js +12 -14
- package/pulumi/apps/syncSystem/api/addServiceManifest.js.map +1 -1
- package/pulumi/apps/syncSystem/api/attachCognitoPermissions.js +49 -55
- package/pulumi/apps/syncSystem/api/attachCognitoPermissions.js.map +1 -1
- package/pulumi/apps/syncSystem/api/attachDynamoDbPermissions.js +88 -40
- package/pulumi/apps/syncSystem/api/attachDynamoDbPermissions.js.map +1 -1
- package/pulumi/apps/syncSystem/api/attachEventBusPermissions.js +37 -43
- package/pulumi/apps/syncSystem/api/attachEventBusPermissions.js.map +1 -1
- package/pulumi/apps/syncSystem/api/attachS3Permissions.js +51 -47
- package/pulumi/apps/syncSystem/api/attachS3Permissions.js.map +1 -1
- package/pulumi/apps/syncSystem/api/index.js +28 -46
- package/pulumi/apps/syncSystem/api/index.js.map +1 -1
- package/pulumi/apps/syncSystem/constants.js +2 -1
- package/pulumi/apps/syncSystem/constants.js.map +1 -1
- package/pulumi/apps/syncSystem/createSyncResourceName.js +2 -7
- package/pulumi/apps/syncSystem/createSyncResourceName.js.map +1 -1
- package/pulumi/apps/syncSystem/createSyncSystemPulumiApp.js +101 -166
- package/pulumi/apps/syncSystem/createSyncSystemPulumiApp.js.map +1 -1
- package/pulumi/apps/syncSystem/customApp.js +12 -16
- package/pulumi/apps/syncSystem/customApp.js.map +1 -1
- package/pulumi/apps/syncSystem/getSyncSystemOutput.js +5 -6
- package/pulumi/apps/syncSystem/getSyncSystemOutput.js.map +1 -1
- package/pulumi/apps/syncSystem/lambda/createSyncSystemResolverLambdaPolicy.js +108 -42
- package/pulumi/apps/syncSystem/lambda/createSyncSystemResolverLambdaPolicy.js.map +1 -1
- package/pulumi/apps/syncSystem/types.js +0 -3
- package/pulumi/constants.js +2 -1
- package/pulumi/constants.js.map +1 -1
- package/pulumi/env/awsRegion.js +3 -2
- package/pulumi/env/awsRegion.js.map +1 -1
- package/pulumi/env/base.js +11 -27
- package/pulumi/env/base.js.map +1 -1
- package/pulumi/env/env.js +3 -2
- package/pulumi/env/env.js.map +1 -1
- package/pulumi/env/projectName.js +3 -2
- package/pulumi/env/projectName.js.map +1 -1
- package/pulumi/env/variant.js +4 -3
- package/pulumi/env/variant.js.map +1 -1
- package/pulumi/extensions/AdminCustomDomains.js +15 -11
- package/pulumi/extensions/AdminCustomDomains.js.map +1 -1
- package/pulumi/extensions/AdminPulumi.js +16 -19
- package/pulumi/extensions/AdminPulumi.js.map +1 -1
- package/pulumi/extensions/ApiCustomDomains.js +15 -11
- package/pulumi/extensions/ApiCustomDomains.js.map +1 -1
- package/pulumi/extensions/ApiPulumi.js +16 -19
- package/pulumi/extensions/ApiPulumi.js.map +1 -1
- package/pulumi/extensions/AwsTags.js +11 -10
- package/pulumi/extensions/AwsTags.js.map +1 -1
- package/pulumi/extensions/BlueGreenDeployments.js +29 -26
- package/pulumi/extensions/BlueGreenDeployments.js.map +1 -1
- package/pulumi/extensions/CorePulumi.js +16 -19
- package/pulumi/extensions/CorePulumi.js.map +1 -1
- package/pulumi/extensions/OpenSearch.js +16 -15
- package/pulumi/extensions/OpenSearch.js.map +1 -1
- package/pulumi/extensions/Vpc.js +21 -20
- package/pulumi/extensions/Vpc.js.map +1 -1
- package/pulumi/extensions/index.js +12 -10
- package/pulumi/extensions/index.js.map +1 -1
- package/pulumi/features/AdminPulumi/AdminPulumi.js +18 -14
- package/pulumi/features/AdminPulumi/AdminPulumi.js.map +1 -1
- package/pulumi/features/AdminPulumi/index.js +0 -2
- package/pulumi/features/ApiPulumi/ApiPulumi.js +18 -14
- package/pulumi/features/ApiPulumi/ApiPulumi.js.map +1 -1
- package/pulumi/features/ApiPulumi/index.js +0 -2
- package/pulumi/features/CorePulumi/CorePulumi.js +18 -14
- package/pulumi/features/CorePulumi/CorePulumi.js.map +1 -1
- package/pulumi/features/CorePulumi/index.js +0 -2
- package/pulumi/features/index.js +0 -2
- package/pulumi/index.js +0 -2
- package/pulumi/types.js +0 -3
- package/pulumi/utils/addDomainsUrlsOutputs.js +20 -37
- package/pulumi/utils/addDomainsUrlsOutputs.js.map +1 -1
- package/pulumi/utils/addServiceManifestTableItem.js +12 -15
- package/pulumi/utils/addServiceManifestTableItem.js.map +1 -1
- package/pulumi/utils/crawlDirectory.js +10 -15
- package/pulumi/utils/crawlDirectory.js.map +1 -1
- package/pulumi/utils/createAssetArchive.js +5 -6
- package/pulumi/utils/createAssetArchive.js.map +1 -1
- package/pulumi/utils/dynamodb.js +26 -27
- package/pulumi/utils/dynamodb.js.map +1 -1
- package/pulumi/utils/getPresignedPost.js +27 -30
- package/pulumi/utils/getPresignedPost.js.map +1 -1
- package/pulumi/utils/index.js +1 -3
- package/pulumi/utils/lambdaEnvVariables.js +42 -54
- package/pulumi/utils/lambdaEnvVariables.js.map +1 -1
- package/pulumi/utils/tagResources.js +248 -28
- package/pulumi/utils/tagResources.js.map +1 -1
- package/pulumi/utils/uploadFolderToS3.js +101 -131
- package/pulumi/utils/uploadFolderToS3.js.map +1 -1
- package/pulumi/utils/withServiceManifest.js +28 -37
- package/pulumi/utils/withServiceManifest.js.map +1 -1
- package/services/AdminStackOutputService.js +14 -11
- package/services/AdminStackOutputService.js.map +1 -1
- package/services/ApiStackOutputService.js +14 -11
- package/services/ApiStackOutputService.js.map +1 -1
- package/services/CoreStackOutputService.js +14 -11
- package/services/CoreStackOutputService.js.map +1 -1
- package/utils/getTemplatesFolderPath.js +8 -10
- package/utils/getTemplatesFolderPath.js.map +1 -1
- package/utils/index.js +0 -2
- package/abstractions/features/pulumi/index.js.map +0 -1
- package/abstractions/index.js.map +0 -1
- package/apps/index.js.map +0 -1
- package/exports/extensions.js.map +0 -1
- package/exports/infra/admin.js.map +0 -1
- package/exports/infra/api.js.map +0 -1
- package/exports/infra/core.js.map +0 -1
- package/exports/infra.js.map +0 -1
- package/extensions/ProjectAws/AdminStackOutputService.js.map +0 -1
- package/extensions/ProjectAws/ApiStackOutputService.js.map +0 -1
- package/extensions/ProjectAws/CoreStackOutputService.js.map +0 -1
- package/extensions/index.js.map +0 -1
- package/features/index.js.map +0 -1
- package/index.js.map +0 -1
- package/pulumi/apps/admin/index.js.map +0 -1
- package/pulumi/apps/api/index.js.map +0 -1
- package/pulumi/apps/blueGreen/types.js.map +0 -1
- package/pulumi/apps/common/index.js.map +0 -1
- package/pulumi/apps/core/cognitoIdentityProviders/index.js.map +0 -1
- package/pulumi/apps/core/index.js.map +0 -1
- package/pulumi/apps/index.js.map +0 -1
- package/pulumi/apps/react/index.js.map +0 -1
- package/pulumi/apps/syncSystem/types.js.map +0 -1
- package/pulumi/features/AdminPulumi/index.js.map +0 -1
- package/pulumi/features/ApiPulumi/index.js.map +0 -1
- package/pulumi/features/CorePulumi/index.js.map +0 -1
- package/pulumi/features/index.js.map +0 -1
- package/pulumi/index.js.map +0 -1
- package/pulumi/types.js.map +0 -1
- package/pulumi/utils/index.js.map +0 -1
- package/utils/index.js.map +0 -1
|
@@ -1,9 +1,16 @@
|
|
|
1
|
-
import { definitions
|
|
2
|
-
import { definitions as
|
|
3
|
-
import { definitions as
|
|
4
|
-
import { definitions as
|
|
1
|
+
import { definitions } from "@webiny/project/extensions/index.js";
|
|
2
|
+
import { definitions as index_js_definitions } from "@webiny/cli-core/extensions/index.js";
|
|
3
|
+
import { definitions as extensions_index_js_definitions } from "@webiny/api-headless-cms/extensions/index.js";
|
|
4
|
+
import { definitions as external_pulumi_extensions_index_js_definitions } from "../../pulumi/extensions/index.js";
|
|
5
5
|
import { AutoInstall } from "./AutoInstall.js";
|
|
6
|
-
const
|
|
7
|
-
|
|
6
|
+
const definitions_definitions = [
|
|
7
|
+
...index_js_definitions,
|
|
8
|
+
...definitions,
|
|
9
|
+
...extensions_index_js_definitions,
|
|
10
|
+
...external_pulumi_extensions_index_js_definitions,
|
|
11
|
+
AutoInstall.def
|
|
12
|
+
];
|
|
13
|
+
const ProjectAws_definitions = definitions_definitions;
|
|
14
|
+
export default ProjectAws_definitions;
|
|
8
15
|
|
|
9
16
|
//# sourceMappingURL=definitions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"extensions/ProjectAws/definitions.js","sources":["../../../src/extensions/ProjectAws/definitions.ts"],"sourcesContent":["import {\n definitions as projectDefinitions,\n type ExtensionDefinitionModel\n} from \"@webiny/project/extensions/index.js\";\nimport { definitions as cliDefinitions } from \"@webiny/cli-core/extensions/index.js\";\nimport { definitions as cmsDefinitions } from \"@webiny/api-headless-cms/extensions/index.js\";\nimport { definitions as projectAws } from \"~/pulumi/extensions/index.js\";\nimport { AutoInstall } from \"./AutoInstall.js\";\n\nconst definitions = [\n ...cliDefinitions,\n ...projectDefinitions,\n ...cmsDefinitions,\n ...projectAws,\n AutoInstall.def\n] as unknown as ExtensionDefinitionModel<any>[];\n\nexport default definitions;\n"],"names":["definitions","cliDefinitions","projectDefinitions","cmsDefinitions","projectAws","AutoInstall"],"mappings":";;;;;AASA,MAAMA,0BAAc;OACbC;OACAC;OACAC;OACAC;IACHC,YAAY,GAAG;CAClB;AAED,+BAAeL"}
|
package/extensions/ProjectAws.js
CHANGED
|
@@ -1,52 +1,51 @@
|
|
|
1
|
-
import
|
|
1
|
+
import react from "react";
|
|
2
2
|
import { AdminAfterDeploy, AdminBeforeBuild, AdminBeforeWatch, AfterDeploy, ApiAfterDeploy, BeforeDeploy, DatabaseSetup, ExtensionDefinitions, Project, ProjectDecorator, ProjectImplementation } from "@webiny/project/extensions/index.js";
|
|
3
3
|
import { createPathResolver } from "@webiny/project";
|
|
4
4
|
import { CliCommand } from "@webiny/cli-core/extensions/index.js";
|
|
5
5
|
import { CorePulumi } from "../pulumi/extensions/CorePulumi.js";
|
|
6
6
|
const p = createPathResolver(import.meta.dirname);
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
};
|
|
7
|
+
const ProjectAws = ()=>/*#__PURE__*/ react.createElement(react.Fragment, null, /*#__PURE__*/ react.createElement(Project, null), /*#__PURE__*/ react.createElement(ProjectDecorator, {
|
|
8
|
+
src: p("ProjectAws/BuildAppWorkspace.js")
|
|
9
|
+
}), /*#__PURE__*/ react.createElement(DatabaseSetup, {
|
|
10
|
+
setupName: "ddb"
|
|
11
|
+
}), /*#__PURE__*/ react.createElement(CorePulumi, {
|
|
12
|
+
src: p("ProjectAws/SetDatabaseSetupOutput.js")
|
|
13
|
+
}), /*#__PURE__*/ react.createElement(ProjectImplementation, {
|
|
14
|
+
src: p("ProjectAws/CoreStackOutputService.js"),
|
|
15
|
+
singleton: true
|
|
16
|
+
}), /*#__PURE__*/ react.createElement(ProjectImplementation, {
|
|
17
|
+
src: p("ProjectAws/ApiStackOutputService.js"),
|
|
18
|
+
singleton: true
|
|
19
|
+
}), /*#__PURE__*/ react.createElement(ProjectImplementation, {
|
|
20
|
+
src: p("ProjectAws/AdminStackOutputService.js"),
|
|
21
|
+
singleton: true
|
|
22
|
+
}), /*#__PURE__*/ react.createElement(ProjectImplementation, {
|
|
23
|
+
src: p("../features/InvokeLambdaFunction.js"),
|
|
24
|
+
singleton: true
|
|
25
|
+
}), /*#__PURE__*/ react.createElement(ProjectImplementation, {
|
|
26
|
+
src: p("../features/ApiGqlClient.js"),
|
|
27
|
+
singleton: true
|
|
28
|
+
}), /*#__PURE__*/ react.createElement(AdminAfterDeploy, {
|
|
29
|
+
src: p("ProjectAws/UploadAdminAppToS3.js")
|
|
30
|
+
}), /*#__PURE__*/ react.createElement(ApiAfterDeploy, {
|
|
31
|
+
src: p("ProjectAws/AutoInstall/AutoInstallAfterApiDeploy.js")
|
|
32
|
+
}), /*#__PURE__*/ react.createElement(ExtensionDefinitions, {
|
|
33
|
+
src: p("definitions.js")
|
|
34
|
+
}), /*#__PURE__*/ react.createElement(ExtensionDefinitions, {
|
|
35
|
+
src: p("ProjectAws/definitions.js")
|
|
36
|
+
}), /*#__PURE__*/ react.createElement(AdminBeforeBuild, {
|
|
37
|
+
src: p("ProjectAws/SetAdminEnvVars/SetAdminEnvVarsBeforeBuild.js")
|
|
38
|
+
}), /*#__PURE__*/ react.createElement(AdminBeforeWatch, {
|
|
39
|
+
src: p("ProjectAws/SetAdminEnvVars/SetAdminEnvVarsBeforeWatch.js")
|
|
40
|
+
}), /*#__PURE__*/ react.createElement(BeforeDeploy, {
|
|
41
|
+
src: p("ProjectAws/EnsureAwsCredentialsBeforeDeploy.js")
|
|
42
|
+
}), /*#__PURE__*/ react.createElement(CliCommand, {
|
|
43
|
+
src: p("ProjectAws/BlueGreenDeployments/SetPrimaryVariantCliCommand.js")
|
|
44
|
+
}), /*#__PURE__*/ react.createElement(BeforeDeploy, {
|
|
45
|
+
src: p("ProjectAws/BlueGreenDeployments/EnsureVariantBeforeDeploy.js")
|
|
46
|
+
}), /*#__PURE__*/ react.createElement(AfterDeploy, {
|
|
47
|
+
src: p("ProjectAws/BlueGreenDeployments/PrintDeploymentInfoAfterDeploy.js")
|
|
48
|
+
}));
|
|
49
|
+
export { ProjectAws };
|
|
51
50
|
|
|
52
51
|
//# sourceMappingURL=ProjectAws.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"extensions/ProjectAws.js","sources":["../../src/extensions/ProjectAws.tsx"],"sourcesContent":["import React from \"react\";\nimport {\n AdminAfterDeploy,\n AdminBeforeBuild,\n AdminBeforeWatch,\n AfterDeploy,\n ApiAfterDeploy,\n BeforeDeploy,\n DatabaseSetup,\n ExtensionDefinitions,\n Project,\n ProjectDecorator,\n ProjectImplementation\n} from \"@webiny/project/extensions/index.js\";\nimport { createPathResolver } from \"@webiny/project\";\nimport { CliCommand } from \"@webiny/cli-core/extensions/index.js\";\nimport { CorePulumi } from \"~/pulumi/extensions/CorePulumi.js\";\n\nconst p = createPathResolver(import.meta.dirname);\n\nexport const ProjectAws = () => {\n return (\n <>\n <Project />\n <ProjectDecorator src={p(\"ProjectAws/BuildAppWorkspace.js\")} />\n\n {/* Database Setup - default to DynamoDB only */}\n <DatabaseSetup setupName=\"ddb\" />\n\n {/* Set database setup output value in Core stack */}\n <CorePulumi src={p(\"ProjectAws/SetDatabaseSetupOutput.js\")} />\n\n {/* Stack Output Services */}\n <ProjectImplementation src={p(\"ProjectAws/CoreStackOutputService.js\")} singleton />\n <ProjectImplementation src={p(\"ProjectAws/ApiStackOutputService.js\")} singleton />\n <ProjectImplementation src={p(\"ProjectAws/AdminStackOutputService.js\")} singleton />\n\n <ProjectImplementation src={p(\"../features/InvokeLambdaFunction.js\")} singleton />\n <ProjectImplementation src={p(\"../features/ApiGqlClient.js\")} singleton />\n\n <AdminAfterDeploy src={p(\"ProjectAws/UploadAdminAppToS3.js\")} />\n\n <ApiAfterDeploy src={p(\"ProjectAws/AutoInstall/AutoInstallAfterApiDeploy.js\")} />\n <ExtensionDefinitions src={p(\"definitions.js\")} />\n <ExtensionDefinitions src={p(\"ProjectAws/definitions.js\")} />\n\n {/* Admin env vars */}\n <AdminBeforeBuild src={p(\"ProjectAws/SetAdminEnvVars/SetAdminEnvVarsBeforeBuild.js\")} />\n <AdminBeforeWatch src={p(\"ProjectAws/SetAdminEnvVars/SetAdminEnvVarsBeforeWatch.js\")} />\n\n {/* AWS credentials check */}\n <BeforeDeploy src={p(\"ProjectAws/EnsureAwsCredentialsBeforeDeploy.js\")} />\n\n {/* Blue-green */}\n <CliCommand src={p(\"ProjectAws/BlueGreenDeployments/SetPrimaryVariantCliCommand.js\")} />\n <BeforeDeploy src={p(\"ProjectAws/BlueGreenDeployments/EnsureVariantBeforeDeploy.js\")} />\n <AfterDeploy\n src={p(\"ProjectAws/BlueGreenDeployments/PrintDeploymentInfoAfterDeploy.js\")}\n />\n </>\n );\n};\n"],"names":["p","createPathResolver","ProjectAws","Project","ProjectDecorator","DatabaseSetup","CorePulumi","ProjectImplementation","AdminAfterDeploy","ApiAfterDeploy","ExtensionDefinitions","AdminBeforeBuild","AdminBeforeWatch","BeforeDeploy","CliCommand","AfterDeploy"],"mappings":";;;;;AAkBA,MAAMA,IAAIC,mBAAmB,YAAY,OAAO;AAEzC,MAAMC,aAAa,IACf,WAAP,GACI,wDACI,oBAACC,SAAOA,OAAAA,WAAAA,GACR,oBAACC,kBAAgBA;QAAC,KAAKJ,EAAE;sBAGzB,oBAACK,eAAaA;QAAC,WAAU;sBAGzB,oBAACC,YAAUA;QAAC,KAAKN,EAAE;sBAGnB,oBAACO,uBAAqBA;QAAC,KAAKP,EAAE;QAAyC;sBACvE,oBAACO,uBAAqBA;QAAC,KAAKP,EAAE;QAAwC;sBACtE,oBAACO,uBAAqBA;QAAC,KAAKP,EAAE;QAA0C;sBAExE,oBAACO,uBAAqBA;QAAC,KAAKP,EAAE;QAAwC;sBACtE,oBAACO,uBAAqBA;QAAC,KAAKP,EAAE;QAAgC;sBAE9D,oBAACQ,kBAAgBA;QAAC,KAAKR,EAAE;sBAEzB,oBAACS,gBAAcA;QAAC,KAAKT,EAAE;sBACvB,oBAACU,sBAAoBA;QAAC,KAAKV,EAAE;sBAC7B,oBAACU,sBAAoBA;QAAC,KAAKV,EAAE;sBAG7B,oBAACW,kBAAgBA;QAAC,KAAKX,EAAE;sBACzB,oBAACY,kBAAgBA;QAAC,KAAKZ,EAAE;sBAGzB,oBAACa,cAAYA;QAAC,KAAKb,EAAE;sBAGrB,oBAACc,YAAUA;QAAC,KAAKd,EAAE;sBACnB,oBAACa,cAAYA;QAAC,KAAKb,EAAE;sBACrB,oBAACe,aAAWA;QACR,KAAKf,EAAE"}
|
|
@@ -3,40 +3,35 @@ import { ApiPulumi } from "../abstractions/features/pulumi/index.js";
|
|
|
3
3
|
import { ApiRoute } from "./ApiRoute.js";
|
|
4
4
|
import { ApiGraphql } from "../pulumi/apps/api/ApiGraphql.js";
|
|
5
5
|
function deriveRouteName(routePath, method) {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
return `${pathPart}-${method.toLowerCase()}`;
|
|
6
|
+
const pathPart = routePath.replace(/^\//, "").replace(/\{[^}]*\}/g, "").replace(/\/+/g, "-").replace(/^-+|-+$/g, "").toLowerCase();
|
|
7
|
+
return `${pathPart}-${method.toLowerCase()}`;
|
|
9
8
|
}
|
|
10
9
|
class RegisterRoutesPulumiImpl {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
}
|
|
14
|
-
async execute(app) {
|
|
15
|
-
// No tags filter — finds ApiRestRoute extensions regardless of their runtimeContext.
|
|
16
|
-
const projectConfig = await this.getProjectConfigService.execute();
|
|
17
|
-
const routeExtensions = projectConfig.extensionsByType(ApiRoute);
|
|
18
|
-
if (!routeExtensions.length) {
|
|
19
|
-
return;
|
|
10
|
+
constructor(getProjectConfigService){
|
|
11
|
+
this.getProjectConfigService = getProjectConfigService;
|
|
20
12
|
}
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
13
|
+
async execute(app) {
|
|
14
|
+
const projectConfig = await this.getProjectConfigService.execute();
|
|
15
|
+
const routeExtensions = projectConfig.extensionsByType(ApiRoute);
|
|
16
|
+
if (!routeExtensions.length) return;
|
|
17
|
+
const graphqlModule = app.getModule(ApiGraphql);
|
|
18
|
+
for (const ext of routeExtensions){
|
|
19
|
+
const { path: routePath, method, routeName } = ext.params;
|
|
20
|
+
const name = routeName ?? deriveRouteName(routePath, method);
|
|
21
|
+
graphqlModule.addRoute({
|
|
22
|
+
name,
|
|
23
|
+
path: routePath,
|
|
24
|
+
method
|
|
25
|
+
});
|
|
26
|
+
}
|
|
34
27
|
}
|
|
35
|
-
}
|
|
36
28
|
}
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
29
|
+
const RegisterRoutesPulumi = ApiPulumi.createImplementation({
|
|
30
|
+
implementation: RegisterRoutesPulumiImpl,
|
|
31
|
+
dependencies: [
|
|
32
|
+
GetProjectConfigService
|
|
33
|
+
]
|
|
40
34
|
});
|
|
35
|
+
export { RegisterRoutesPulumi };
|
|
41
36
|
|
|
42
37
|
//# sourceMappingURL=RegisterRoutesPulumi.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"extensions/RegisterRoutesPulumi.js","sources":["../../src/extensions/RegisterRoutesPulumi.ts"],"sourcesContent":["import { GetProjectConfigService } from \"@webiny/project/abstractions/index.js\";\nimport { ApiPulumi } from \"~/abstractions/features/pulumi/index.js\";\nimport type { ApiPulumiApp } from \"~/pulumi/apps/api/createApiPulumiApp.js\";\nimport { ApiRoute } from \"./ApiRoute.js\";\nimport { ApiGraphql } from \"~/pulumi/apps/api/ApiGraphql.js\";\n\nfunction deriveRouteName(routePath: string, method: string): string {\n // /asd/{id}/xs + POST → asd-xs-post\n const pathPart = routePath\n .replace(/^\\//, \"\")\n .replace(/\\{[^}]*\\}/g, \"\")\n .replace(/\\/+/g, \"-\")\n .replace(/^-+|-+$/g, \"\")\n .toLowerCase();\n\n return `${pathPart}-${method.toLowerCase()}`;\n}\n\nclass RegisterRoutesPulumiImpl implements ApiPulumi.Interface {\n constructor(private getProjectConfigService: GetProjectConfigService.Interface) {}\n\n async execute(app: ApiPulumiApp): Promise<void> {\n // No tags filter — finds ApiRestRoute extensions regardless of their runtimeContext.\n const projectConfig = await this.getProjectConfigService.execute();\n const routeExtensions = projectConfig.extensionsByType(ApiRoute);\n\n if (!routeExtensions.length) {\n return;\n }\n\n const graphqlModule = app.getModule(ApiGraphql);\n\n for (const ext of routeExtensions) {\n const { path: routePath, method, routeName } = ext.params;\n const name = routeName ?? deriveRouteName(routePath, method);\n graphqlModule.addRoute({\n name,\n path: routePath as `/${string}`,\n method\n });\n }\n }\n}\n\nexport const RegisterRoutesPulumi = ApiPulumi.createImplementation({\n implementation: RegisterRoutesPulumiImpl,\n dependencies: [GetProjectConfigService]\n});\n"],"names":["deriveRouteName","routePath","method","pathPart","RegisterRoutesPulumiImpl","getProjectConfigService","app","projectConfig","routeExtensions","ApiRoute","graphqlModule","ApiGraphql","ext","routeName","name","RegisterRoutesPulumi","ApiPulumi","GetProjectConfigService"],"mappings":";;;;AAMA,SAASA,gBAAgBC,SAAiB,EAAEC,MAAc;IAEtD,MAAMC,WAAWF,UACZ,OAAO,CAAC,OAAO,IACf,OAAO,CAAC,cAAc,IACtB,OAAO,CAAC,QAAQ,KAChB,OAAO,CAAC,YAAY,IACpB,WAAW;IAEhB,OAAO,GAAGE,SAAS,CAAC,EAAED,OAAO,WAAW,IAAI;AAChD;AAEA,MAAME;IACF,YAAoBC,uBAA0D,CAAE;aAA5DA,uBAAuB,GAAvBA;IAA6D;IAEjF,MAAM,QAAQC,GAAiB,EAAiB;QAE5C,MAAMC,gBAAgB,MAAM,IAAI,CAAC,uBAAuB,CAAC,OAAO;QAChE,MAAMC,kBAAkBD,cAAc,gBAAgB,CAACE;QAEvD,IAAI,CAACD,gBAAgB,MAAM,EACvB;QAGJ,MAAME,gBAAgBJ,IAAI,SAAS,CAACK;QAEpC,KAAK,MAAMC,OAAOJ,gBAAiB;YAC/B,MAAM,EAAE,MAAMP,SAAS,EAAEC,MAAM,EAAEW,SAAS,EAAE,GAAGD,IAAI,MAAM;YACzD,MAAME,OAAOD,aAAab,gBAAgBC,WAAWC;YACrDQ,cAAc,QAAQ,CAAC;gBACnBI;gBACA,MAAMb;gBACNC;YACJ;QACJ;IACJ;AACJ;AAEO,MAAMa,uBAAuBC,UAAU,oBAAoB,CAAC;IAC/D,gBAAgBZ;IAChB,cAAc;QAACa;KAAwB;AAC3C"}
|
|
@@ -2,8 +2,15 @@ import { ApiLambdaFunction } from "./ApiLambdaFunction.js";
|
|
|
2
2
|
import { ApiRoute } from "./ApiRoute.js";
|
|
3
3
|
import { OpenSearch } from "./OpenSearch.js";
|
|
4
4
|
import { Encryption } from "./Encryption.js";
|
|
5
|
-
import { Smtp
|
|
6
|
-
const definitions = [
|
|
7
|
-
|
|
5
|
+
import { Smtp } from "./Mailer/Smtp.js";
|
|
6
|
+
const definitions = [
|
|
7
|
+
ApiLambdaFunction.def,
|
|
8
|
+
ApiRoute.def,
|
|
9
|
+
OpenSearch.def,
|
|
10
|
+
Encryption.def,
|
|
11
|
+
Smtp.def
|
|
12
|
+
];
|
|
13
|
+
const extensions_definitions = definitions;
|
|
14
|
+
export default extensions_definitions;
|
|
8
15
|
|
|
9
16
|
//# sourceMappingURL=definitions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"extensions/definitions.js","sources":["../../src/extensions/definitions.ts"],"sourcesContent":["import { ApiLambdaFunction } from \"./ApiLambdaFunction.js\";\nimport { ApiRoute } from \"./ApiRoute.js\";\nimport { OpenSearch } from \"./OpenSearch.js\";\nimport { Encryption } from \"./Encryption.js\";\nimport { Smtp as MailerSmtp } from \"./Mailer/Smtp.js\";\nimport { type ExtensionDefinitionModel } from \"@webiny/project/defineExtension\";\n\nconst definitions = [\n ApiLambdaFunction.def,\n ApiRoute.def,\n OpenSearch.def,\n Encryption.def,\n MailerSmtp.def\n] as unknown as ExtensionDefinitionModel<any>[];\n\nexport default definitions;\n"],"names":["definitions","ApiLambdaFunction","ApiRoute","OpenSearch","Encryption","MailerSmtp"],"mappings":";;;;;AAOA,MAAMA,cAAc;IAChBC,kBAAkB,GAAG;IACrBC,SAAS,GAAG;IACZC,WAAW,GAAG;IACdC,WAAW,GAAG;IACdC,KAAAA,GAAc;CACjB;AAED,+BAAeL"}
|
package/extensions/index.js
CHANGED
package/features/ApiGqlClient.js
CHANGED
|
@@ -1,59 +1,54 @@
|
|
|
1
|
-
import { ApiGqlClient
|
|
1
|
+
import { ApiGqlClient } from "../abstractions/ApiGqlClient.js";
|
|
2
2
|
import { ApiStackOutputService } from "../abstractions/index.js";
|
|
3
3
|
import { InvokeLambdaFunction } from "../abstractions/InvokeLambdaFunction.js";
|
|
4
4
|
class ApiGqlClientImpl {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
5
|
+
constructor(apiStackOutputService, invokeLambdaFunction){
|
|
6
|
+
this.apiStackOutputService = apiStackOutputService;
|
|
7
|
+
this.invokeLambdaFunction = invokeLambdaFunction;
|
|
8
|
+
}
|
|
9
|
+
async query(params) {
|
|
10
|
+
return this.executeGraphQL({
|
|
11
|
+
query: params.query,
|
|
12
|
+
variables: params.variables
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
async mutation(params) {
|
|
16
|
+
return this.executeGraphQL({
|
|
17
|
+
query: params.mutation,
|
|
18
|
+
variables: params.variables
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
async executeGraphQL(params) {
|
|
22
|
+
const stackOutput = await this.apiStackOutputService.execute();
|
|
23
|
+
if (!stackOutput) throw new Error("Could not retrieve API stack output for GraphQL client.");
|
|
24
|
+
const { graphqlLambdaName } = stackOutput;
|
|
25
|
+
const result = await this.invokeLambdaFunction.execute({
|
|
26
|
+
functionName: graphqlLambdaName,
|
|
27
|
+
payload: {
|
|
28
|
+
path: "/graphql",
|
|
29
|
+
httpMethod: "POST",
|
|
30
|
+
headers: {
|
|
31
|
+
"x-tenant": "root",
|
|
32
|
+
"Content-Type": "application/json"
|
|
33
|
+
},
|
|
34
|
+
body: JSON.stringify({
|
|
35
|
+
query: params.query,
|
|
36
|
+
variables: params.variables
|
|
37
|
+
})
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
const lambdaResponse = result.payload;
|
|
41
|
+
const graphqlResponse = JSON.parse(lambdaResponse.body);
|
|
42
|
+
return graphqlResponse;
|
|
26
43
|
}
|
|
27
|
-
const {
|
|
28
|
-
graphqlLambdaName
|
|
29
|
-
} = stackOutput;
|
|
30
|
-
|
|
31
|
-
// Invoke Lambda with API Gateway event format
|
|
32
|
-
const result = await this.invokeLambdaFunction.execute({
|
|
33
|
-
functionName: graphqlLambdaName,
|
|
34
|
-
payload: {
|
|
35
|
-
path: "/graphql",
|
|
36
|
-
httpMethod: "POST",
|
|
37
|
-
headers: {
|
|
38
|
-
"x-tenant": "root",
|
|
39
|
-
"Content-Type": "application/json"
|
|
40
|
-
},
|
|
41
|
-
body: JSON.stringify({
|
|
42
|
-
query: params.query,
|
|
43
|
-
variables: params.variables
|
|
44
|
-
})
|
|
45
|
-
}
|
|
46
|
-
});
|
|
47
|
-
|
|
48
|
-
// Parse Lambda response (API Gateway format)
|
|
49
|
-
const lambdaResponse = result.payload;
|
|
50
|
-
const graphqlResponse = JSON.parse(lambdaResponse.body);
|
|
51
|
-
return graphqlResponse;
|
|
52
|
-
}
|
|
53
44
|
}
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
45
|
+
const ApiGqlClient_ApiGqlClient = ApiGqlClient.createImplementation({
|
|
46
|
+
implementation: ApiGqlClientImpl,
|
|
47
|
+
dependencies: [
|
|
48
|
+
ApiStackOutputService,
|
|
49
|
+
InvokeLambdaFunction
|
|
50
|
+
]
|
|
57
51
|
});
|
|
52
|
+
export { ApiGqlClient_ApiGqlClient as ApiGqlClient };
|
|
58
53
|
|
|
59
54
|
//# sourceMappingURL=ApiGqlClient.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/ApiGqlClient.js","sources":["../../src/features/ApiGqlClient.ts"],"sourcesContent":["import { ApiGqlClient as ApiGqlClientAbstraction } from \"~/abstractions/ApiGqlClient.js\";\nimport { ApiStackOutputService } from \"~/abstractions/index.js\";\nimport { InvokeLambdaFunction } from \"~/abstractions/InvokeLambdaFunction.js\";\n\nclass ApiGqlClientImpl implements ApiGqlClientAbstraction.Interface {\n constructor(\n private apiStackOutputService: ApiStackOutputService.Interface,\n private invokeLambdaFunction: InvokeLambdaFunction.Interface\n ) {}\n\n async query<T = any>(params: {\n query: string;\n variables?: Record<string, any>;\n }): Promise<ApiGqlClientAbstraction.Response<T>> {\n return this.executeGraphQL({\n query: params.query,\n variables: params.variables\n });\n }\n\n async mutation<T = any>(params: {\n mutation: string;\n variables?: Record<string, any>;\n }): Promise<ApiGqlClientAbstraction.Response<T>> {\n return this.executeGraphQL({\n query: params.mutation,\n variables: params.variables\n });\n }\n\n private async executeGraphQL(params: {\n query: string;\n variables?: Record<string, any>;\n }): Promise<ApiGqlClientAbstraction.Response> {\n // Get GraphQL Lambda function name from API stack output\n const stackOutput = await this.apiStackOutputService.execute<{\n graphqlLambdaName: string;\n }>();\n\n if (!stackOutput) {\n throw new Error(\"Could not retrieve API stack output for GraphQL client.\");\n }\n\n const { graphqlLambdaName } = stackOutput;\n\n // Invoke Lambda with API Gateway event format\n const result = await this.invokeLambdaFunction.execute({\n functionName: graphqlLambdaName,\n payload: {\n path: \"/graphql\",\n httpMethod: \"POST\",\n headers: {\n \"x-tenant\": \"root\",\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n query: params.query,\n variables: params.variables\n })\n }\n });\n\n // Parse Lambda response (API Gateway format)\n const lambdaResponse = result.payload;\n const graphqlResponse = JSON.parse(lambdaResponse.body);\n\n return graphqlResponse;\n }\n}\n\nexport const ApiGqlClient = ApiGqlClientAbstraction.createImplementation({\n implementation: ApiGqlClientImpl,\n dependencies: [ApiStackOutputService, InvokeLambdaFunction]\n});\n"],"names":["ApiGqlClientImpl","apiStackOutputService","invokeLambdaFunction","params","stackOutput","Error","graphqlLambdaName","result","JSON","lambdaResponse","graphqlResponse","ApiGqlClient","ApiGqlClientAbstraction","ApiStackOutputService","InvokeLambdaFunction"],"mappings":";;;AAIA,MAAMA;IACF,YACYC,qBAAsD,EACtDC,oBAAoD,CAC9D;aAFUD,qBAAqB,GAArBA;aACAC,oBAAoB,GAApBA;IACT;IAEH,MAAM,MAAeC,MAGpB,EAAgD;QAC7C,OAAO,IAAI,CAAC,cAAc,CAAC;YACvB,OAAOA,OAAO,KAAK;YACnB,WAAWA,OAAO,SAAS;QAC/B;IACJ;IAEA,MAAM,SAAkBA,MAGvB,EAAgD;QAC7C,OAAO,IAAI,CAAC,cAAc,CAAC;YACvB,OAAOA,OAAO,QAAQ;YACtB,WAAWA,OAAO,SAAS;QAC/B;IACJ;IAEA,MAAc,eAAeA,MAG5B,EAA6C;QAE1C,MAAMC,cAAc,MAAM,IAAI,CAAC,qBAAqB,CAAC,OAAO;QAI5D,IAAI,CAACA,aACD,MAAM,IAAIC,MAAM;QAGpB,MAAM,EAAEC,iBAAiB,EAAE,GAAGF;QAG9B,MAAMG,SAAS,MAAM,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC;YACnD,cAAcD;YACd,SAAS;gBACL,MAAM;gBACN,YAAY;gBACZ,SAAS;oBACL,YAAY;oBACZ,gBAAgB;gBACpB;gBACA,MAAME,KAAK,SAAS,CAAC;oBACjB,OAAOL,OAAO,KAAK;oBACnB,WAAWA,OAAO,SAAS;gBAC/B;YACJ;QACJ;QAGA,MAAMM,iBAAiBF,OAAO,OAAO;QACrC,MAAMG,kBAAkBF,KAAK,KAAK,CAACC,eAAe,IAAI;QAEtD,OAAOC;IACX;AACJ;AAEO,MAAMC,4BAAeC,aAAAA,oBAA4C,CAAC;IACrE,gBAAgBZ;IAChB,cAAc;QAACa;QAAuBC;KAAqB;AAC/D"}
|
|
@@ -1,38 +1,36 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { InvokeCommand, LambdaClient } from "@webiny/aws-sdk/client-lambda/index.js";
|
|
2
2
|
import { GetAppStackOutput } from "@webiny/project/abstractions/index.js";
|
|
3
|
-
import { InvokeLambdaFunction
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
3
|
+
import { InvokeLambdaFunction } from "../abstractions/InvokeLambdaFunction.js";
|
|
4
|
+
class InvokeLambdaFunctionImpl {
|
|
5
|
+
constructor(getAppStackOutput){
|
|
6
|
+
this.getAppStackOutput = getAppStackOutput;
|
|
7
|
+
}
|
|
8
|
+
async execute(params) {
|
|
9
|
+
const stackOutput = await this.getAppStackOutput.execute("api");
|
|
10
|
+
if (!stackOutput) throw new Error("Could not retrieve API stack output for Lambda invocation.");
|
|
11
|
+
const { region } = stackOutput;
|
|
12
|
+
const lambdaClient = new LambdaClient({
|
|
13
|
+
region
|
|
14
|
+
});
|
|
15
|
+
const response = await lambdaClient.send(new InvokeCommand({
|
|
16
|
+
FunctionName: params.functionName,
|
|
17
|
+
InvocationType: params.invocationType || "RequestResponse",
|
|
18
|
+
Payload: JSON.stringify(params.payload)
|
|
19
|
+
}));
|
|
20
|
+
const decoder = new TextDecoder("utf-8");
|
|
21
|
+
const payload = JSON.parse(decoder.decode(response.Payload));
|
|
22
|
+
return {
|
|
23
|
+
statusCode: response.StatusCode,
|
|
24
|
+
payload
|
|
25
|
+
};
|
|
13
26
|
}
|
|
14
|
-
const {
|
|
15
|
-
region
|
|
16
|
-
} = stackOutput;
|
|
17
|
-
const lambdaClient = new LambdaClient({
|
|
18
|
-
region
|
|
19
|
-
});
|
|
20
|
-
const response = await lambdaClient.send(new InvokeCommand({
|
|
21
|
-
FunctionName: params.functionName,
|
|
22
|
-
InvocationType: params.invocationType || "RequestResponse",
|
|
23
|
-
Payload: JSON.stringify(params.payload)
|
|
24
|
-
}));
|
|
25
|
-
const decoder = new TextDecoder("utf-8");
|
|
26
|
-
const payload = JSON.parse(decoder.decode(response.Payload));
|
|
27
|
-
return {
|
|
28
|
-
statusCode: response.StatusCode,
|
|
29
|
-
payload
|
|
30
|
-
};
|
|
31
|
-
}
|
|
32
27
|
}
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
28
|
+
const InvokeLambdaFunction_InvokeLambdaFunction = InvokeLambdaFunction.createImplementation({
|
|
29
|
+
implementation: InvokeLambdaFunctionImpl,
|
|
30
|
+
dependencies: [
|
|
31
|
+
GetAppStackOutput
|
|
32
|
+
]
|
|
36
33
|
});
|
|
34
|
+
export { InvokeLambdaFunctionImpl, InvokeLambdaFunction_InvokeLambdaFunction as InvokeLambdaFunction };
|
|
37
35
|
|
|
38
36
|
//# sourceMappingURL=InvokeLambdaFunction.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/InvokeLambdaFunction.js","sources":["../../src/features/InvokeLambdaFunction.ts"],"sourcesContent":["import { LambdaClient, InvokeCommand } from \"@webiny/aws-sdk/client-lambda/index.js\";\nimport { GetAppStackOutput } from \"@webiny/project/abstractions/index.js\";\nimport { InvokeLambdaFunction as InvokeLambdaFunctionAbstraction } from \"~/abstractions/InvokeLambdaFunction.js\";\nimport { IDefaultStackOutput } from \"~/pulumi/types.js\";\n\nexport class InvokeLambdaFunctionImpl implements InvokeLambdaFunctionAbstraction.Interface {\n constructor(private getAppStackOutput: GetAppStackOutput.Interface) {}\n\n async execute<T = any>(\n params: InvokeLambdaFunctionAbstraction.Params\n ): Promise<InvokeLambdaFunctionAbstraction.Result<T>> {\n // Get region from stack output\n const stackOutput = await this.getAppStackOutput.execute<IDefaultStackOutput>(\"api\");\n\n if (!stackOutput) {\n throw new Error(\"Could not retrieve API stack output for Lambda invocation.\");\n }\n\n const { region } = stackOutput;\n const lambdaClient = new LambdaClient({ region });\n\n const response = await lambdaClient.send(\n new InvokeCommand({\n FunctionName: params.functionName,\n InvocationType: params.invocationType || \"RequestResponse\",\n Payload: JSON.stringify(params.payload)\n })\n );\n\n const decoder = new TextDecoder(\"utf-8\");\n const payload = JSON.parse(decoder.decode(response.Payload));\n\n return {\n statusCode: response.StatusCode,\n payload\n };\n }\n}\n\nexport const InvokeLambdaFunction = InvokeLambdaFunctionAbstraction.createImplementation({\n implementation: InvokeLambdaFunctionImpl,\n dependencies: [GetAppStackOutput]\n});\n"],"names":["InvokeLambdaFunctionImpl","getAppStackOutput","params","stackOutput","Error","region","lambdaClient","LambdaClient","response","InvokeCommand","JSON","decoder","TextDecoder","payload","InvokeLambdaFunction","InvokeLambdaFunctionAbstraction","GetAppStackOutput"],"mappings":";;;AAKO,MAAMA;IACT,YAAoBC,iBAA8C,CAAE;aAAhDA,iBAAiB,GAAjBA;IAAiD;IAErE,MAAM,QACFC,MAA8C,EACI;QAElD,MAAMC,cAAc,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAsB;QAE9E,IAAI,CAACA,aACD,MAAM,IAAIC,MAAM;QAGpB,MAAM,EAAEC,MAAM,EAAE,GAAGF;QACnB,MAAMG,eAAe,IAAIC,aAAa;YAAEF;QAAO;QAE/C,MAAMG,WAAW,MAAMF,aAAa,IAAI,CACpC,IAAIG,cAAc;YACd,cAAcP,OAAO,YAAY;YACjC,gBAAgBA,OAAO,cAAc,IAAI;YACzC,SAASQ,KAAK,SAAS,CAACR,OAAO,OAAO;QAC1C;QAGJ,MAAMS,UAAU,IAAIC,YAAY;QAChC,MAAMC,UAAUH,KAAK,KAAK,CAACC,QAAQ,MAAM,CAACH,SAAS,OAAO;QAE1D,OAAO;YACH,YAAYA,SAAS,UAAU;YAC/BK;QACJ;IACJ;AACJ;AAEO,MAAMC,4CAAuBC,qBAAAA,oBAAoD,CAAC;IACrF,gBAAgBf;IAChB,cAAc;QAACgB;KAAkB;AACrC"}
|
package/features/index.js
CHANGED