@webiny/project-aws 6.3.0-beta.2 → 6.3.0-beta.4
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/webiny.application.ts +1 -1
- package/_templates/appTemplates/api/graphql/src/extensions.ts +1 -1
- package/_templates/appTemplates/api/graphql/src/index.ts +2 -2
- package/_templates/appTemplates/api/webiny.application.ts +1 -1
- package/_templates/appTemplates/blueGreen/webiny.application.ts +1 -1
- package/_templates/appTemplates/core/webiny.application.ts +1 -1
- package/_templates/appTemplates/syncSystem/webiny.application.ts +1 -1
- package/_templates/extensions/OpenSearch/api/graphql/src/index.ts +3 -3
- package/abstractions/features/pulumi/AdminPulumi.d.ts +9 -0
- package/abstractions/features/pulumi/AdminPulumi.js +4 -0
- package/abstractions/features/pulumi/AdminPulumi.js.map +1 -0
- package/abstractions/features/pulumi/ApiPulumi.d.ts +9 -0
- package/abstractions/features/pulumi/ApiPulumi.js +4 -0
- package/abstractions/features/pulumi/ApiPulumi.js.map +1 -0
- package/abstractions/features/pulumi/CorePulumi.d.ts +9 -0
- package/abstractions/features/pulumi/CorePulumi.js +4 -0
- package/abstractions/features/pulumi/CorePulumi.js.map +1 -0
- package/abstractions/features/pulumi/index.d.ts +3 -0
- package/abstractions/features/pulumi/index.js +5 -0
- package/abstractions/features/pulumi/index.js.map +1 -0
- package/abstractions/index.d.ts +1 -0
- package/abstractions/index.js +1 -0
- package/abstractions/index.js.map +1 -1
- package/api.d.ts +19 -4
- package/api.js +8 -0
- package/api.js.map +1 -1
- package/exports/infra/admin.d.ts +1 -0
- package/exports/infra/admin.js +1 -0
- package/exports/infra/admin.js.map +1 -1
- package/exports/infra/api.d.ts +1 -0
- package/exports/infra/api.js +1 -0
- package/exports/infra/api.js.map +1 -1
- package/exports/infra/core.d.ts +1 -0
- package/exports/infra/core.js +1 -0
- package/exports/infra/core.js.map +1 -1
- package/extensions/ApiLambdaFunction.d.ts +1 -1
- package/extensions/ApiLambdaFunction.js +2 -2
- package/extensions/ApiLambdaFunction.js.map +1 -1
- package/extensions/ApiRoute.d.ts +5 -5
- package/extensions/ApiRoute.js +2 -2
- package/extensions/ApiRoute.js.map +1 -1
- package/extensions/Cms/ModelFieldCompression.d.ts +4 -0
- package/extensions/Cms/ModelFieldCompression.js +23 -0
- package/extensions/Cms/ModelFieldCompression.js.map +1 -0
- package/extensions/Mailer/Smtp.d.ts +8 -0
- package/extensions/Mailer/Smtp.js +20 -0
- package/extensions/Mailer/Smtp.js.map +1 -0
- package/extensions/Mailer/Smtp.test.d.ts +1 -0
- package/extensions/Mailer/Smtp.test.js +141 -0
- package/extensions/Mailer/Smtp.test.js.map +1 -0
- package/extensions/Mailer/SmtpParamsSchema.d.ts +9 -0
- package/extensions/Mailer/SmtpParamsSchema.js +20 -0
- package/extensions/Mailer/SmtpParamsSchema.js.map +1 -0
- package/extensions/ProjectAws/SetDatabaseSetupOutput.d.ts +5 -3
- package/extensions/ProjectAws/SetDatabaseSetupOutput.js +2 -1
- package/extensions/ProjectAws/SetDatabaseSetupOutput.js.map +1 -1
- package/extensions/ProjectAws.js +1 -1
- package/extensions/ProjectAws.js.map +1 -1
- package/extensions/RegisterRoutesPulumi.d.ts +5 -3
- package/extensions/RegisterRoutesPulumi.js +2 -1
- package/extensions/RegisterRoutesPulumi.js.map +1 -1
- package/extensions/definitions.js +2 -1
- package/extensions/definitions.js.map +1 -1
- package/extensions/index.d.ts +1 -0
- package/extensions/index.js +1 -0
- package/extensions/index.js.map +1 -1
- package/infra.d.ts +9 -0
- package/infra.js +8 -3
- package/infra.js.map +1 -1
- package/package.json +20 -19
- package/pulumi/apps/admin/createAdminPulumiApp.js +3 -1
- package/pulumi/apps/admin/createAdminPulumiApp.js.map +1 -1
- package/pulumi/apps/api/ApiGateway.js +3 -0
- package/pulumi/apps/api/ApiGateway.js.map +1 -1
- package/pulumi/apps/api/createApiPulumiApp.js +3 -1
- package/pulumi/apps/api/createApiPulumiApp.js.map +1 -1
- package/pulumi/apps/blueGreen/functions/handler.js +1 -0
- package/pulumi/apps/blueGreen/functions/handler.js.map +1 -1
- package/pulumi/apps/core/CoreOpenSearch.d.ts +2 -0
- package/pulumi/apps/core/CoreOpenSearch.js +18 -4
- package/pulumi/apps/core/CoreOpenSearch.js.map +1 -1
- package/pulumi/apps/core/createCorePulumiApp.js +16 -2
- package/pulumi/apps/core/createCorePulumiApp.js.map +1 -1
- package/pulumi/apps/syncSystem/SyncSystemLambda.js +0 -1
- package/pulumi/apps/syncSystem/SyncSystemLambda.js.map +1 -1
- package/pulumi/extensions/AdminPulumi.d.ts +4 -0
- package/pulumi/extensions/AdminPulumi.js +25 -0
- package/pulumi/extensions/AdminPulumi.js.map +1 -0
- package/pulumi/extensions/ApiPulumi.d.ts +4 -0
- package/pulumi/extensions/ApiPulumi.js +25 -0
- package/pulumi/extensions/ApiPulumi.js.map +1 -0
- package/pulumi/extensions/CorePulumi.d.ts +4 -0
- package/pulumi/extensions/CorePulumi.js +25 -0
- package/pulumi/extensions/CorePulumi.js.map +1 -0
- package/pulumi/extensions/index.d.ts +8 -0
- package/pulumi/extensions/index.js +7 -1
- package/pulumi/extensions/index.js.map +1 -1
- package/pulumi/features/AdminPulumi/AdminPulumi.d.ts +7 -0
- package/pulumi/features/AdminPulumi/AdminPulumi.js +21 -0
- package/pulumi/features/AdminPulumi/AdminPulumi.js.map +1 -0
- package/pulumi/features/AdminPulumi/index.d.ts +1 -0
- package/pulumi/features/AdminPulumi/index.js +3 -0
- package/pulumi/features/AdminPulumi/index.js.map +1 -0
- package/pulumi/features/ApiPulumi/ApiPulumi.d.ts +7 -0
- package/pulumi/features/ApiPulumi/ApiPulumi.js +21 -0
- package/pulumi/features/ApiPulumi/ApiPulumi.js.map +1 -0
- package/pulumi/features/ApiPulumi/index.d.ts +1 -0
- package/pulumi/features/ApiPulumi/index.js +3 -0
- package/pulumi/features/ApiPulumi/index.js.map +1 -0
- package/pulumi/features/CorePulumi/CorePulumi.d.ts +7 -0
- package/pulumi/features/CorePulumi/CorePulumi.js +21 -0
- package/pulumi/features/CorePulumi/CorePulumi.js.map +1 -0
- package/pulumi/features/CorePulumi/index.d.ts +1 -0
- package/pulumi/features/CorePulumi/index.js +3 -0
- package/pulumi/features/CorePulumi/index.js.map +1 -0
- package/pulumi/features/index.d.ts +3 -0
- package/pulumi/features/index.js +5 -0
- package/pulumi/features/index.js.map +1 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["path","pulumi","aws","createAppModule","createLambdaRole","getCommonLambdaEnvVariables","VpcConfig","getAwsAccountId","getAwsRegion","LAMBDA_RUNTIME","SyncSystemDynamo","SyncSystemLambda","name","config","app","_","policy","createSyncSystemLambdaPolicy","primary","fileManagerBucketId","dynamoDbTableArn","secondary","role","output","syncSystemLambda","addResource","lambda","Function","runtime","handler","arn","timeout","memorySize","code","asset","AssetArchive","FileArchive","join","paths","workspace","environment","variables","apply","value","AWS_NODEJS_CONNECTION_REUSE_ENABLED","vpcConfig","getModule","functionVpcConfig","loggingConfig","logFormat","functions","syncSystem","params","dynamoDbTable","awsAccountId","awsRegion","Version","Statement","Sid","Effect","Action","Resource","interpolate","iam","Policy","description"],"sources":["SyncSystemLambda.ts"],"sourcesContent":["import path from \"path\";\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\nimport type { PulumiApp } from \"@webiny/pulumi\";\nimport { createAppModule } from \"@webiny/pulumi\";\nimport { createLambdaRole, getCommonLambdaEnvVariables } from \"../lambdaUtils.js\";\nimport { VpcConfig } from \"~/pulumi/apps/index.js\";\nimport { getAwsAccountId, getAwsRegion } from \"../awsUtils.js\";\nimport { LAMBDA_RUNTIME } from \"~/pulumi/constants.js\";\nimport { SyncSystemDynamo } from \"./SyncSystemDynamo.js\";\n\nexport interface SyncSystemLambdaParams {\n protect: boolean;\n config: Record<string, string>;\n}\n\nexport const SyncSystemLambda = createAppModule({\n name: \"SyncSystemLambda\",\n // eslint-disable-next-line\n config(app: PulumiApp, _: SyncSystemLambdaParams) {\n const policy = createSyncSystemLambdaPolicy({\n app,\n // TODO - get bucket ids and dynamodb tables from the FileManager app\n primary: {\n fileManagerBucketId: \"primaryFileManagerBucketId\",\n dynamoDbTableArn: \"\"\n },\n secondary: {\n fileManagerBucketId: \"secondaryFileManagerBucketId\",\n dynamoDbTableArn: \"\"\n }\n });\n const role = createLambdaRole(app, {\n name: \"sync-system-lambda-role\",\n policy: policy.output\n });\n\n const syncSystemLambda = app.addResource(aws.lambda.Function, {\n name: \"sync-system-lambda\",\n config: {\n runtime: LAMBDA_RUNTIME,\n handler: \"handler.handler\",\n role: role.output.arn,\n timeout: 900,\n memorySize: 1024,\n code: new pulumi.asset.AssetArchive({\n \".\": new pulumi.asset.FileArchive(\n path.join(app.paths.workspace, \"transfer/build\")\n )\n }),\n environment: {\n variables: getCommonLambdaEnvVariables().apply(value => ({\n ...value,\n AWS_NODEJS_CONNECTION_REUSE_ENABLED: \"1\"\n }))\n },\n vpcConfig: app.getModule(VpcConfig).functionVpcConfig,\n loggingConfig: {\n logFormat: \"JSON\"\n }\n }\n });\n\n return {\n role,\n policy,\n functions: {\n syncSystem: syncSystemLambda\n }\n };\n }\n});\n\ninterface ICreateSyncSystemLambdaPolicyParamsType {\n fileManagerBucketId: string;\n dynamoDbTableArn: string;\n}\n\ninterface ICreateSyncSystemLambdaPolicyParams {\n app: PulumiApp;\n primary: ICreateSyncSystemLambdaPolicyParamsType;\n secondary: ICreateSyncSystemLambdaPolicyParamsType;\n}\n\nfunction createSyncSystemLambdaPolicy(params: ICreateSyncSystemLambdaPolicyParams) {\n const { app, primary, secondary } = params;\n const dynamoDbTable = app.getModule(SyncSystemDynamo);\n const awsAccountId = getAwsAccountId(app);\n const awsRegion = getAwsRegion(app);\n\n const policy: aws.iam.PolicyDocument = {\n Version: \"2012-10-17\",\n Statement: [\n {\n Sid: \"PermissionForDynamodb\",\n Effect: \"Allow\",\n Action: [\n \"dynamodb:BatchGetItem\",\n \"dynamodb:BatchWriteItem\",\n \"dynamodb:ConditionCheckItem\",\n \"dynamodb:CreateBackup\",\n \"dynamodb:CreateTable\",\n \"dynamodb:CreateTableReplica\",\n \"dynamodb:DeleteBackup\",\n \"dynamodb:DeleteItem\",\n \"dynamodb:DeleteTable\",\n \"dynamodb:DeleteTableReplica\",\n \"dynamodb:DescribeBackup\",\n \"dynamodb:DescribeContinuousBackups\",\n \"dynamodb:DescribeContributorInsights\",\n \"dynamodb:DescribeExport\",\n \"dynamodb:DescribeKinesisStreamingDestination\",\n \"dynamodb:DescribeLimits\",\n \"dynamodb:DescribeReservedCapacity\",\n \"dynamodb:DescribeReservedCapacityOfferings\",\n \"dynamodb:DescribeStream\",\n \"dynamodb:DescribeTable\",\n \"dynamodb:DescribeTableReplicaAutoScaling\",\n \"dynamodb:DescribeTimeToLive\",\n \"dynamodb:DisableKinesisStreamingDestination\",\n \"dynamodb:EnableKinesisStreamingDestination\",\n \"dynamodb:ExportTableToPointInTime\",\n \"dynamodb:GetItem\",\n \"dynamodb:GetRecords\",\n \"dynamodb:GetShardIterator\",\n \"dynamodb:ListBackups\",\n \"dynamodb:ListContributorInsights\",\n \"dynamodb:ListExports\",\n \"dynamodb:ListStreams\",\n \"dynamodb:ListTables\",\n \"dynamodb:ListTagsOfResource\",\n \"dynamodb:PartiQLDelete\",\n \"dynamodb:PartiQLInsert\",\n \"dynamodb:PartiQLSelect\",\n \"dynamodb:PartiQLUpdate\",\n \"dynamodb:PurchaseReservedCapacityOfferings\",\n \"dynamodb:PutItem\",\n \"dynamodb:Query\",\n \"dynamodb:RestoreTableFromBackup\",\n \"dynamodb:RestoreTableToPointInTime\",\n \"dynamodb:Scan\",\n \"dynamodb:UpdateContinuousBackups\",\n \"dynamodb:UpdateContributorInsights\",\n \"dynamodb:UpdateItem\",\n \"dynamodb:UpdateTable\",\n \"dynamodb:UpdateTableReplicaAutoScaling\",\n \"dynamodb:UpdateTimeToLive\"\n ],\n Resource: [`${dynamoDbTable.output.arn}`, `${dynamoDbTable.output.arn}/*`]\n },\n {\n Sid: \"PermissionForS3\",\n Effect: \"Allow\",\n Action: [\n \"s3:ListBucket\",\n \"s3:GetObjectAcl\",\n \"s3:DeleteObject\",\n \"s3:PutObjectAcl\",\n \"s3:PutObject\",\n \"s3:GetObject\"\n ],\n Resource: [\n pulumi.interpolate`arn:aws:s3:::${primary.fileManagerBucketId}`,\n pulumi.interpolate`arn:aws:s3:::${primary.fileManagerBucketId}/*`,\n pulumi.interpolate`arn:aws:s3:::${secondary.fileManagerBucketId}`,\n pulumi.interpolate`arn:aws:s3:::${secondary.fileManagerBucketId}/*`\n ]\n },\n {\n Sid: \"PermissionForLambda\",\n Effect: \"Allow\",\n Action: [\"lambda:InvokeFunction\"],\n Resource: pulumi.interpolate`arn:aws:lambda:${awsRegion}:${awsAccountId}:function:*`\n }\n ]\n };\n\n return app.addResource(aws.iam.Policy, {\n name: \"SyncSystemLambdaPolicy\",\n config: {\n description: \"This policy enables access to Dynamodb, S3 and Lambda.\",\n policy\n }\n });\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["path","pulumi","aws","createAppModule","createLambdaRole","getCommonLambdaEnvVariables","VpcConfig","getAwsAccountId","getAwsRegion","LAMBDA_RUNTIME","SyncSystemDynamo","SyncSystemLambda","name","config","app","_","policy","createSyncSystemLambdaPolicy","primary","fileManagerBucketId","dynamoDbTableArn","secondary","role","output","syncSystemLambda","addResource","lambda","Function","runtime","handler","arn","timeout","memorySize","code","asset","AssetArchive","FileArchive","join","paths","workspace","environment","variables","apply","value","AWS_NODEJS_CONNECTION_REUSE_ENABLED","vpcConfig","getModule","functionVpcConfig","loggingConfig","logFormat","functions","syncSystem","params","dynamoDbTable","awsAccountId","awsRegion","Version","Statement","Sid","Effect","Action","Resource","interpolate","iam","Policy","description"],"sources":["SyncSystemLambda.ts"],"sourcesContent":["import path from \"path\";\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\nimport type { PulumiApp } from \"@webiny/pulumi\";\nimport { createAppModule } from \"@webiny/pulumi\";\nimport { createLambdaRole, getCommonLambdaEnvVariables } from \"../lambdaUtils.js\";\nimport { VpcConfig } from \"~/pulumi/apps/index.js\";\nimport { getAwsAccountId, getAwsRegion } from \"../awsUtils.js\";\nimport { LAMBDA_RUNTIME } from \"~/pulumi/constants.js\";\nimport { SyncSystemDynamo } from \"./SyncSystemDynamo.js\";\n\nexport interface SyncSystemLambdaParams {\n protect: boolean;\n config: Record<string, string>;\n}\n\nexport const SyncSystemLambda = createAppModule({\n name: \"SyncSystemLambda\",\n config(app: PulumiApp, _: SyncSystemLambdaParams) {\n const policy = createSyncSystemLambdaPolicy({\n app,\n // TODO - get bucket ids and dynamodb tables from the FileManager app\n primary: {\n fileManagerBucketId: \"primaryFileManagerBucketId\",\n dynamoDbTableArn: \"\"\n },\n secondary: {\n fileManagerBucketId: \"secondaryFileManagerBucketId\",\n dynamoDbTableArn: \"\"\n }\n });\n const role = createLambdaRole(app, {\n name: \"sync-system-lambda-role\",\n policy: policy.output\n });\n\n const syncSystemLambda = app.addResource(aws.lambda.Function, {\n name: \"sync-system-lambda\",\n config: {\n runtime: LAMBDA_RUNTIME,\n handler: \"handler.handler\",\n role: role.output.arn,\n timeout: 900,\n memorySize: 1024,\n code: new pulumi.asset.AssetArchive({\n \".\": new pulumi.asset.FileArchive(\n path.join(app.paths.workspace, \"transfer/build\")\n )\n }),\n environment: {\n variables: getCommonLambdaEnvVariables().apply(value => ({\n ...value,\n AWS_NODEJS_CONNECTION_REUSE_ENABLED: \"1\"\n }))\n },\n vpcConfig: app.getModule(VpcConfig).functionVpcConfig,\n loggingConfig: {\n logFormat: \"JSON\"\n }\n }\n });\n\n return {\n role,\n policy,\n functions: {\n syncSystem: syncSystemLambda\n }\n };\n }\n});\n\ninterface ICreateSyncSystemLambdaPolicyParamsType {\n fileManagerBucketId: string;\n dynamoDbTableArn: string;\n}\n\ninterface ICreateSyncSystemLambdaPolicyParams {\n app: PulumiApp;\n primary: ICreateSyncSystemLambdaPolicyParamsType;\n secondary: ICreateSyncSystemLambdaPolicyParamsType;\n}\n\nfunction createSyncSystemLambdaPolicy(params: ICreateSyncSystemLambdaPolicyParams) {\n const { app, primary, secondary } = params;\n const dynamoDbTable = app.getModule(SyncSystemDynamo);\n const awsAccountId = getAwsAccountId(app);\n const awsRegion = getAwsRegion(app);\n\n const policy: aws.iam.PolicyDocument = {\n Version: \"2012-10-17\",\n Statement: [\n {\n Sid: \"PermissionForDynamodb\",\n Effect: \"Allow\",\n Action: [\n \"dynamodb:BatchGetItem\",\n \"dynamodb:BatchWriteItem\",\n \"dynamodb:ConditionCheckItem\",\n \"dynamodb:CreateBackup\",\n \"dynamodb:CreateTable\",\n \"dynamodb:CreateTableReplica\",\n \"dynamodb:DeleteBackup\",\n \"dynamodb:DeleteItem\",\n \"dynamodb:DeleteTable\",\n \"dynamodb:DeleteTableReplica\",\n \"dynamodb:DescribeBackup\",\n \"dynamodb:DescribeContinuousBackups\",\n \"dynamodb:DescribeContributorInsights\",\n \"dynamodb:DescribeExport\",\n \"dynamodb:DescribeKinesisStreamingDestination\",\n \"dynamodb:DescribeLimits\",\n \"dynamodb:DescribeReservedCapacity\",\n \"dynamodb:DescribeReservedCapacityOfferings\",\n \"dynamodb:DescribeStream\",\n \"dynamodb:DescribeTable\",\n \"dynamodb:DescribeTableReplicaAutoScaling\",\n \"dynamodb:DescribeTimeToLive\",\n \"dynamodb:DisableKinesisStreamingDestination\",\n \"dynamodb:EnableKinesisStreamingDestination\",\n \"dynamodb:ExportTableToPointInTime\",\n \"dynamodb:GetItem\",\n \"dynamodb:GetRecords\",\n \"dynamodb:GetShardIterator\",\n \"dynamodb:ListBackups\",\n \"dynamodb:ListContributorInsights\",\n \"dynamodb:ListExports\",\n \"dynamodb:ListStreams\",\n \"dynamodb:ListTables\",\n \"dynamodb:ListTagsOfResource\",\n \"dynamodb:PartiQLDelete\",\n \"dynamodb:PartiQLInsert\",\n \"dynamodb:PartiQLSelect\",\n \"dynamodb:PartiQLUpdate\",\n \"dynamodb:PurchaseReservedCapacityOfferings\",\n \"dynamodb:PutItem\",\n \"dynamodb:Query\",\n \"dynamodb:RestoreTableFromBackup\",\n \"dynamodb:RestoreTableToPointInTime\",\n \"dynamodb:Scan\",\n \"dynamodb:UpdateContinuousBackups\",\n \"dynamodb:UpdateContributorInsights\",\n \"dynamodb:UpdateItem\",\n \"dynamodb:UpdateTable\",\n \"dynamodb:UpdateTableReplicaAutoScaling\",\n \"dynamodb:UpdateTimeToLive\"\n ],\n Resource: [`${dynamoDbTable.output.arn}`, `${dynamoDbTable.output.arn}/*`]\n },\n {\n Sid: \"PermissionForS3\",\n Effect: \"Allow\",\n Action: [\n \"s3:ListBucket\",\n \"s3:GetObjectAcl\",\n \"s3:DeleteObject\",\n \"s3:PutObjectAcl\",\n \"s3:PutObject\",\n \"s3:GetObject\"\n ],\n Resource: [\n pulumi.interpolate`arn:aws:s3:::${primary.fileManagerBucketId}`,\n pulumi.interpolate`arn:aws:s3:::${primary.fileManagerBucketId}/*`,\n pulumi.interpolate`arn:aws:s3:::${secondary.fileManagerBucketId}`,\n pulumi.interpolate`arn:aws:s3:::${secondary.fileManagerBucketId}/*`\n ]\n },\n {\n Sid: \"PermissionForLambda\",\n Effect: \"Allow\",\n Action: [\"lambda:InvokeFunction\"],\n Resource: pulumi.interpolate`arn:aws:lambda:${awsRegion}:${awsAccountId}:function:*`\n }\n ]\n };\n\n return app.addResource(aws.iam.Policy, {\n name: \"SyncSystemLambdaPolicy\",\n config: {\n description: \"This policy enables access to Dynamodb, S3 and Lambda.\",\n policy\n }\n });\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { defineExtension } from "@webiny/project/defineExtension/index.js";
|
|
3
|
+
import { zodSrcPath } from "@webiny/project/defineExtension/zodTypes/zodSrcPath.js";
|
|
4
|
+
import { AdminPulumi as AdminPulumiAbstraction } from "../../abstractions/features/pulumi/index.js";
|
|
5
|
+
export const AdminPulumi = defineExtension({
|
|
6
|
+
type: "Admin/Pulumi",
|
|
7
|
+
tags: {
|
|
8
|
+
runtimeContext: "project",
|
|
9
|
+
appName: "admin"
|
|
10
|
+
},
|
|
11
|
+
description: "Modify Admin app's cloud infrastructure using Pulumi.",
|
|
12
|
+
multiple: true,
|
|
13
|
+
paramsSchema: ({
|
|
14
|
+
project
|
|
15
|
+
}) => {
|
|
16
|
+
return z.object({
|
|
17
|
+
src: zodSrcPath({
|
|
18
|
+
project,
|
|
19
|
+
abstraction: AdminPulumiAbstraction
|
|
20
|
+
})
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
//# sourceMappingURL=AdminPulumi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["z","defineExtension","zodSrcPath","AdminPulumi","AdminPulumiAbstraction","type","tags","runtimeContext","appName","description","multiple","paramsSchema","project","object","src","abstraction"],"sources":["AdminPulumi.ts"],"sourcesContent":["import { z } from \"zod\";\nimport { defineExtension } from \"@webiny/project/defineExtension/index.js\";\nimport { zodSrcPath } from \"@webiny/project/defineExtension/zodTypes/zodSrcPath.js\";\nimport { AdminPulumi as AdminPulumiAbstraction } from \"~/abstractions/features/pulumi/index.js\";\n\nexport const AdminPulumi = defineExtension({\n type: \"Admin/Pulumi\",\n tags: { runtimeContext: \"project\", appName: \"admin\" },\n description: \"Modify Admin app's cloud infrastructure using Pulumi.\",\n multiple: true,\n paramsSchema: ({ project }) => {\n return z.object({\n src: zodSrcPath({ project, abstraction: AdminPulumiAbstraction })\n });\n }\n});\n"],"mappings":"AAAA,SAASA,CAAC,QAAQ,KAAK;AACvB,SAASC,eAAe,QAAQ,0CAA0C;AAC1E,SAASC,UAAU,QAAQ,wDAAwD;AACnF,SAASC,WAAW,IAAIC,sBAAsB;AAE9C,OAAO,MAAMD,WAAW,GAAGF,eAAe,CAAC;EACvCI,IAAI,EAAE,cAAc;EACpBC,IAAI,EAAE;IAAEC,cAAc,EAAE,SAAS;IAAEC,OAAO,EAAE;EAAQ,CAAC;EACrDC,WAAW,EAAE,uDAAuD;EACpEC,QAAQ,EAAE,IAAI;EACdC,YAAY,EAAEA,CAAC;IAAEC;EAAQ,CAAC,KAAK;IAC3B,OAAOZ,CAAC,CAACa,MAAM,CAAC;MACZC,GAAG,EAAEZ,UAAU,CAAC;QAAEU,OAAO;QAAEG,WAAW,EAAEX;MAAuB,CAAC;IACpE,CAAC,CAAC;EACN;AACJ,CAAC,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { defineExtension } from "@webiny/project/defineExtension/index.js";
|
|
3
|
+
import { zodSrcPath } from "@webiny/project/defineExtension/zodTypes/zodSrcPath.js";
|
|
4
|
+
import { ApiPulumi as ApiPulumiAbstraction } from "../../abstractions/features/pulumi/index.js";
|
|
5
|
+
export const ApiPulumi = defineExtension({
|
|
6
|
+
type: "Api/Pulumi",
|
|
7
|
+
tags: {
|
|
8
|
+
runtimeContext: "project",
|
|
9
|
+
appName: "api"
|
|
10
|
+
},
|
|
11
|
+
description: "Modify Api app's cloud infrastructure using Pulumi.",
|
|
12
|
+
multiple: true,
|
|
13
|
+
paramsSchema: ({
|
|
14
|
+
project
|
|
15
|
+
}) => {
|
|
16
|
+
return z.object({
|
|
17
|
+
src: zodSrcPath({
|
|
18
|
+
project,
|
|
19
|
+
abstraction: ApiPulumiAbstraction
|
|
20
|
+
})
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
//# sourceMappingURL=ApiPulumi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["z","defineExtension","zodSrcPath","ApiPulumi","ApiPulumiAbstraction","type","tags","runtimeContext","appName","description","multiple","paramsSchema","project","object","src","abstraction"],"sources":["ApiPulumi.ts"],"sourcesContent":["import { z } from \"zod\";\nimport { defineExtension } from \"@webiny/project/defineExtension/index.js\";\nimport { zodSrcPath } from \"@webiny/project/defineExtension/zodTypes/zodSrcPath.js\";\nimport { ApiPulumi as ApiPulumiAbstraction } from \"~/abstractions/features/pulumi/index.js\";\n\nexport const ApiPulumi = defineExtension({\n type: \"Api/Pulumi\",\n tags: { runtimeContext: \"project\", appName: \"api\" },\n description: \"Modify Api app's cloud infrastructure using Pulumi.\",\n multiple: true,\n paramsSchema: ({ project }) => {\n return z.object({\n src: zodSrcPath({ project, abstraction: ApiPulumiAbstraction })\n });\n }\n});\n"],"mappings":"AAAA,SAASA,CAAC,QAAQ,KAAK;AACvB,SAASC,eAAe,QAAQ,0CAA0C;AAC1E,SAASC,UAAU,QAAQ,wDAAwD;AACnF,SAASC,SAAS,IAAIC,oBAAoB;AAE1C,OAAO,MAAMD,SAAS,GAAGF,eAAe,CAAC;EACrCI,IAAI,EAAE,YAAY;EAClBC,IAAI,EAAE;IAAEC,cAAc,EAAE,SAAS;IAAEC,OAAO,EAAE;EAAM,CAAC;EACnDC,WAAW,EAAE,qDAAqD;EAClEC,QAAQ,EAAE,IAAI;EACdC,YAAY,EAAEA,CAAC;IAAEC;EAAQ,CAAC,KAAK;IAC3B,OAAOZ,CAAC,CAACa,MAAM,CAAC;MACZC,GAAG,EAAEZ,UAAU,CAAC;QAAEU,OAAO;QAAEG,WAAW,EAAEX;MAAqB,CAAC;IAClE,CAAC,CAAC;EACN;AACJ,CAAC,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { defineExtension } from "@webiny/project/defineExtension/index.js";
|
|
3
|
+
import { zodSrcPath } from "@webiny/project/defineExtension/zodTypes/zodSrcPath.js";
|
|
4
|
+
import { CorePulumi as CorePulumiAbstraction } from "../../abstractions/features/pulumi/index.js";
|
|
5
|
+
export const CorePulumi = defineExtension({
|
|
6
|
+
type: "Core/Pulumi",
|
|
7
|
+
tags: {
|
|
8
|
+
runtimeContext: "project",
|
|
9
|
+
appName: "core"
|
|
10
|
+
},
|
|
11
|
+
description: "Modify Core app's cloud infrastructure using Pulumi.",
|
|
12
|
+
multiple: true,
|
|
13
|
+
paramsSchema: ({
|
|
14
|
+
project
|
|
15
|
+
}) => {
|
|
16
|
+
return z.object({
|
|
17
|
+
src: zodSrcPath({
|
|
18
|
+
project,
|
|
19
|
+
abstraction: CorePulumiAbstraction
|
|
20
|
+
})
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
//# sourceMappingURL=CorePulumi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["z","defineExtension","zodSrcPath","CorePulumi","CorePulumiAbstraction","type","tags","runtimeContext","appName","description","multiple","paramsSchema","project","object","src","abstraction"],"sources":["CorePulumi.ts"],"sourcesContent":["import { z } from \"zod\";\nimport { defineExtension } from \"@webiny/project/defineExtension/index.js\";\nimport { zodSrcPath } from \"@webiny/project/defineExtension/zodTypes/zodSrcPath.js\";\nimport { CorePulumi as CorePulumiAbstraction } from \"~/abstractions/features/pulumi/index.js\";\n\nexport const CorePulumi = defineExtension({\n type: \"Core/Pulumi\",\n tags: { runtimeContext: \"project\", appName: \"core\" },\n description: \"Modify Core app's cloud infrastructure using Pulumi.\",\n multiple: true,\n paramsSchema: ({ project }) => {\n return z.object({\n src: zodSrcPath({ project, abstraction: CorePulumiAbstraction })\n });\n }\n});\n"],"mappings":"AAAA,SAASA,CAAC,QAAQ,KAAK;AACvB,SAASC,eAAe,QAAQ,0CAA0C;AAC1E,SAASC,UAAU,QAAQ,wDAAwD;AACnF,SAASC,UAAU,IAAIC,qBAAqB;AAE5C,OAAO,MAAMD,UAAU,GAAGF,eAAe,CAAC;EACtCI,IAAI,EAAE,aAAa;EACnBC,IAAI,EAAE;IAAEC,cAAc,EAAE,SAAS;IAAEC,OAAO,EAAE;EAAO,CAAC;EACpDC,WAAW,EAAE,sDAAsD;EACnEC,QAAQ,EAAE,IAAI;EACdC,YAAY,EAAEA,CAAC;IAAEC;EAAQ,CAAC,KAAK;IAC3B,OAAOZ,CAAC,CAACa,MAAM,CAAC;MACZC,GAAG,EAAEZ,UAAU,CAAC;QAAEU,OAAO;QAAEG,WAAW,EAAEX;MAAsB,CAAC;IACnE,CAAC,CAAC;EACN;AACJ,CAAC,CAAC","ignoreList":[]}
|
|
@@ -4,12 +4,18 @@ import { Vpc } from "./Vpc.js";
|
|
|
4
4
|
import { AdminCustomDomains } from "./AdminCustomDomains.js";
|
|
5
5
|
import { ApiCustomDomains } from "./ApiCustomDomains.js";
|
|
6
6
|
import { BlueGreenDeployments } from "../../pulumi/extensions/BlueGreenDeployments.js";
|
|
7
|
+
import { CorePulumi } from "./CorePulumi.js";
|
|
8
|
+
import { ApiPulumi } from "./ApiPulumi.js";
|
|
9
|
+
import { AdminPulumi } from "./AdminPulumi.js";
|
|
7
10
|
export { AwsTags };
|
|
8
11
|
export { Vpc };
|
|
9
12
|
export { OpenSearch };
|
|
10
13
|
export { AdminCustomDomains };
|
|
11
14
|
export { ApiCustomDomains };
|
|
12
15
|
export { BlueGreenDeployments };
|
|
16
|
+
export { CorePulumi };
|
|
17
|
+
export { ApiPulumi };
|
|
18
|
+
export { AdminPulumi };
|
|
13
19
|
export declare const definitions: (import("@webiny/project/defineExtension/index.js").ExtensionDefinitionModel<import("zod").ZodObject<{
|
|
14
20
|
tags: import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodString>;
|
|
15
21
|
}, import("zod/v4/core").$strip>> | import("@webiny/project/defineExtension/index.js").ExtensionDefinitionModel<import("zod").ZodObject<{
|
|
@@ -62,4 +68,6 @@ export declare const definitions: (import("@webiny/project/defineExtension/index
|
|
|
62
68
|
env: import("zod").ZodString;
|
|
63
69
|
variant: import("zod").ZodString;
|
|
64
70
|
}, import("zod/v4/core").$strip>], null>;
|
|
71
|
+
}, import("zod/v4/core").$strip>> | import("@webiny/project/defineExtension/index.js").ExtensionDefinitionModel<import("zod").ZodObject<{
|
|
72
|
+
src: import("zod").ZodPipe<import("zod").ZodString, import("zod").ZodTransform<string, string>>;
|
|
65
73
|
}, import("zod/v4/core").$strip>>)[];
|
|
@@ -4,12 +4,18 @@ import { Vpc } from "./Vpc.js";
|
|
|
4
4
|
import { AdminCustomDomains } from "./AdminCustomDomains.js";
|
|
5
5
|
import { ApiCustomDomains } from "./ApiCustomDomains.js";
|
|
6
6
|
import { BlueGreenDeployments } from "./BlueGreenDeployments.js";
|
|
7
|
+
import { CorePulumi } from "./CorePulumi.js";
|
|
8
|
+
import { ApiPulumi } from "./ApiPulumi.js";
|
|
9
|
+
import { AdminPulumi } from "./AdminPulumi.js";
|
|
7
10
|
export { AwsTags };
|
|
8
11
|
export { Vpc };
|
|
9
12
|
export { OpenSearch };
|
|
10
13
|
export { AdminCustomDomains };
|
|
11
14
|
export { ApiCustomDomains };
|
|
12
15
|
export { BlueGreenDeployments };
|
|
13
|
-
export
|
|
16
|
+
export { CorePulumi };
|
|
17
|
+
export { ApiPulumi };
|
|
18
|
+
export { AdminPulumi };
|
|
19
|
+
export const definitions = [AwsTags.def, Vpc.def, OpenSearch.def, AdminCustomDomains.def, ApiCustomDomains.def, BlueGreenDeployments.def, CorePulumi.def, ApiPulumi.def, AdminPulumi.def];
|
|
14
20
|
|
|
15
21
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["AwsTags","OpenSearch","Vpc","AdminCustomDomains","ApiCustomDomains","BlueGreenDeployments","definitions","def"],"sources":["index.ts"],"sourcesContent":["import { AwsTags } from \"./AwsTags.js\";\nimport { OpenSearch } from \"./OpenSearch.js\";\nimport { Vpc } from \"./Vpc.js\";\nimport { AdminCustomDomains } from \"./AdminCustomDomains.js\";\nimport { ApiCustomDomains } from \"./ApiCustomDomains.js\";\nimport { BlueGreenDeployments } from \"~/pulumi/extensions/BlueGreenDeployments.js\";\n\nexport { AwsTags };\nexport { Vpc };\nexport { OpenSearch };\nexport { AdminCustomDomains };\nexport { ApiCustomDomains };\nexport { BlueGreenDeployments };\n\nexport const definitions = [\n AwsTags.def,\n Vpc.def,\n OpenSearch.def,\n AdminCustomDomains.def,\n ApiCustomDomains.def,\n BlueGreenDeployments.def\n];\n"],"mappings":"AAAA,SAASA,OAAO;AAChB,SAASC,UAAU;AACnB,SAASC,GAAG;AACZ,SAASC,kBAAkB;AAC3B,SAASC,gBAAgB;AACzB,SAASC,oBAAoB;
|
|
1
|
+
{"version":3,"names":["AwsTags","OpenSearch","Vpc","AdminCustomDomains","ApiCustomDomains","BlueGreenDeployments","CorePulumi","ApiPulumi","AdminPulumi","definitions","def"],"sources":["index.ts"],"sourcesContent":["import { AwsTags } from \"./AwsTags.js\";\nimport { OpenSearch } from \"./OpenSearch.js\";\nimport { Vpc } from \"./Vpc.js\";\nimport { AdminCustomDomains } from \"./AdminCustomDomains.js\";\nimport { ApiCustomDomains } from \"./ApiCustomDomains.js\";\nimport { BlueGreenDeployments } from \"~/pulumi/extensions/BlueGreenDeployments.js\";\nimport { CorePulumi } from \"./CorePulumi.js\";\nimport { ApiPulumi } from \"./ApiPulumi.js\";\nimport { AdminPulumi } from \"./AdminPulumi.js\";\n\nexport { AwsTags };\nexport { Vpc };\nexport { OpenSearch };\nexport { AdminCustomDomains };\nexport { ApiCustomDomains };\nexport { BlueGreenDeployments };\nexport { CorePulumi };\nexport { ApiPulumi };\nexport { AdminPulumi };\n\nexport const definitions = [\n AwsTags.def,\n Vpc.def,\n OpenSearch.def,\n AdminCustomDomains.def,\n ApiCustomDomains.def,\n BlueGreenDeployments.def,\n CorePulumi.def,\n ApiPulumi.def,\n AdminPulumi.def\n];\n"],"mappings":"AAAA,SAASA,OAAO;AAChB,SAASC,UAAU;AACnB,SAASC,GAAG;AACZ,SAASC,kBAAkB;AAC3B,SAASC,gBAAgB;AACzB,SAASC,oBAAoB;AAC7B,SAASC,UAAU;AACnB,SAASC,SAAS;AAClB,SAASC,WAAW;AAEpB,SAASR,OAAO;AAChB,SAASE,GAAG;AACZ,SAASD,UAAU;AACnB,SAASE,kBAAkB;AAC3B,SAASC,gBAAgB;AACzB,SAASC,oBAAoB;AAC7B,SAASC,UAAU;AACnB,SAASC,SAAS;AAClB,SAASC,WAAW;AAEpB,OAAO,MAAMC,WAAW,GAAG,CACvBT,OAAO,CAACU,GAAG,EACXR,GAAG,CAACQ,GAAG,EACPT,UAAU,CAACS,GAAG,EACdP,kBAAkB,CAACO,GAAG,EACtBN,gBAAgB,CAACM,GAAG,EACpBL,oBAAoB,CAACK,GAAG,EACxBJ,UAAU,CAACI,GAAG,EACdH,SAAS,CAACG,GAAG,EACbF,WAAW,CAACE,GAAG,CAClB","ignoreList":[]}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { AdminPulumi } from "../../../abstractions/features/pulumi/index.js";
|
|
2
|
+
export declare class CompositeAdminPulumi implements AdminPulumi.Interface {
|
|
3
|
+
private adminPulumi;
|
|
4
|
+
constructor(adminPulumi: AdminPulumi.Interface[]);
|
|
5
|
+
execute(params: AdminPulumi.Params): Promise<void>;
|
|
6
|
+
}
|
|
7
|
+
export declare const adminPulumi: import("@webiny/di").Implementation<typeof CompositeAdminPulumi>;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { createComposite } from "@webiny/di";
|
|
2
|
+
import { AdminPulumi } from "../../../abstractions/features/pulumi/index.js";
|
|
3
|
+
export class CompositeAdminPulumi {
|
|
4
|
+
constructor(adminPulumi) {
|
|
5
|
+
this.adminPulumi = adminPulumi;
|
|
6
|
+
}
|
|
7
|
+
async execute(params) {
|
|
8
|
+
for (const handler of this.adminPulumi) {
|
|
9
|
+
await handler.execute(params);
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
export const adminPulumi = createComposite({
|
|
14
|
+
abstraction: AdminPulumi,
|
|
15
|
+
implementation: CompositeAdminPulumi,
|
|
16
|
+
dependencies: [[AdminPulumi, {
|
|
17
|
+
multiple: true
|
|
18
|
+
}]]
|
|
19
|
+
});
|
|
20
|
+
|
|
21
|
+
//# sourceMappingURL=AdminPulumi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createComposite","AdminPulumi","CompositeAdminPulumi","constructor","adminPulumi","execute","params","handler","abstraction","implementation","dependencies","multiple"],"sources":["AdminPulumi.ts"],"sourcesContent":["import { createComposite } from \"@webiny/di\";\nimport { AdminPulumi } from \"~/abstractions/features/pulumi/index.js\";\n\nexport class CompositeAdminPulumi implements AdminPulumi.Interface {\n constructor(private adminPulumi: AdminPulumi.Interface[]) {}\n\n async execute(params: AdminPulumi.Params) {\n for (const handler of this.adminPulumi) {\n await handler.execute(params);\n }\n }\n}\n\nexport const adminPulumi = createComposite({\n abstraction: AdminPulumi,\n implementation: CompositeAdminPulumi,\n dependencies: [[AdminPulumi, { multiple: true }]]\n});\n"],"mappings":"AAAA,SAASA,eAAe,QAAQ,YAAY;AAC5C,SAASC,WAAW;AAEpB,OAAO,MAAMC,oBAAoB,CAAkC;EAC/DC,WAAWA,CAASC,WAAoC,EAAE;IAAA,KAAtCA,WAAoC,GAApCA,WAAoC;EAAG;EAE3D,MAAMC,OAAOA,CAACC,MAA0B,EAAE;IACtC,KAAK,MAAMC,OAAO,IAAI,IAAI,CAACH,WAAW,EAAE;MACpC,MAAMG,OAAO,CAACF,OAAO,CAACC,MAAM,CAAC;IACjC;EACJ;AACJ;AAEA,OAAO,MAAMF,WAAW,GAAGJ,eAAe,CAAC;EACvCQ,WAAW,EAAEP,WAAW;EACxBQ,cAAc,EAAEP,oBAAoB;EACpCQ,YAAY,EAAE,CAAC,CAACT,WAAW,EAAE;IAAEU,QAAQ,EAAE;EAAK,CAAC,CAAC;AACpD,CAAC,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./AdminPulumi.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export * from \"./AdminPulumi.js\";\n"],"mappings":"AAAA","ignoreList":[]}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { ApiPulumi } from "../../../abstractions/features/pulumi/index.js";
|
|
2
|
+
export declare class CompositeApiPulumi implements ApiPulumi.Interface {
|
|
3
|
+
private apiPulumi;
|
|
4
|
+
constructor(apiPulumi: ApiPulumi.Interface[]);
|
|
5
|
+
execute(params: ApiPulumi.Params): Promise<void>;
|
|
6
|
+
}
|
|
7
|
+
export declare const apiPulumi: import("@webiny/di").Implementation<typeof CompositeApiPulumi>;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { createComposite } from "@webiny/di";
|
|
2
|
+
import { ApiPulumi } from "../../../abstractions/features/pulumi/index.js";
|
|
3
|
+
export class CompositeApiPulumi {
|
|
4
|
+
constructor(apiPulumi) {
|
|
5
|
+
this.apiPulumi = apiPulumi;
|
|
6
|
+
}
|
|
7
|
+
async execute(params) {
|
|
8
|
+
for (const handler of this.apiPulumi) {
|
|
9
|
+
await handler.execute(params);
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
export const apiPulumi = createComposite({
|
|
14
|
+
abstraction: ApiPulumi,
|
|
15
|
+
implementation: CompositeApiPulumi,
|
|
16
|
+
dependencies: [[ApiPulumi, {
|
|
17
|
+
multiple: true
|
|
18
|
+
}]]
|
|
19
|
+
});
|
|
20
|
+
|
|
21
|
+
//# sourceMappingURL=ApiPulumi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createComposite","ApiPulumi","CompositeApiPulumi","constructor","apiPulumi","execute","params","handler","abstraction","implementation","dependencies","multiple"],"sources":["ApiPulumi.ts"],"sourcesContent":["import { createComposite } from \"@webiny/di\";\nimport { ApiPulumi } from \"~/abstractions/features/pulumi/index.js\";\n\nexport class CompositeApiPulumi implements ApiPulumi.Interface {\n constructor(private apiPulumi: ApiPulumi.Interface[]) {}\n\n async execute(params: ApiPulumi.Params) {\n for (const handler of this.apiPulumi) {\n await handler.execute(params);\n }\n }\n}\n\nexport const apiPulumi = createComposite({\n abstraction: ApiPulumi,\n implementation: CompositeApiPulumi,\n dependencies: [[ApiPulumi, { multiple: true }]]\n});\n"],"mappings":"AAAA,SAASA,eAAe,QAAQ,YAAY;AAC5C,SAASC,SAAS;AAElB,OAAO,MAAMC,kBAAkB,CAAgC;EAC3DC,WAAWA,CAASC,SAAgC,EAAE;IAAA,KAAlCA,SAAgC,GAAhCA,SAAgC;EAAG;EAEvD,MAAMC,OAAOA,CAACC,MAAwB,EAAE;IACpC,KAAK,MAAMC,OAAO,IAAI,IAAI,CAACH,SAAS,EAAE;MAClC,MAAMG,OAAO,CAACF,OAAO,CAACC,MAAM,CAAC;IACjC;EACJ;AACJ;AAEA,OAAO,MAAMF,SAAS,GAAGJ,eAAe,CAAC;EACrCQ,WAAW,EAAEP,SAAS;EACtBQ,cAAc,EAAEP,kBAAkB;EAClCQ,YAAY,EAAE,CAAC,CAACT,SAAS,EAAE;IAAEU,QAAQ,EAAE;EAAK,CAAC,CAAC;AAClD,CAAC,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./ApiPulumi.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export * from \"./ApiPulumi.js\";\n"],"mappings":"AAAA","ignoreList":[]}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { CorePulumi } from "../../../abstractions/features/pulumi/index.js";
|
|
2
|
+
export declare class CompositeCorePulumi implements CorePulumi.Interface {
|
|
3
|
+
private corePulumi;
|
|
4
|
+
constructor(corePulumi: CorePulumi.Interface[]);
|
|
5
|
+
execute(params: CorePulumi.Params): Promise<void>;
|
|
6
|
+
}
|
|
7
|
+
export declare const corePulumi: import("@webiny/di").Implementation<typeof CompositeCorePulumi>;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { createComposite } from "@webiny/di";
|
|
2
|
+
import { CorePulumi } from "../../../abstractions/features/pulumi/index.js";
|
|
3
|
+
export class CompositeCorePulumi {
|
|
4
|
+
constructor(corePulumi) {
|
|
5
|
+
this.corePulumi = corePulumi;
|
|
6
|
+
}
|
|
7
|
+
async execute(params) {
|
|
8
|
+
for (const handler of this.corePulumi) {
|
|
9
|
+
await handler.execute(params);
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
export const corePulumi = createComposite({
|
|
14
|
+
abstraction: CorePulumi,
|
|
15
|
+
implementation: CompositeCorePulumi,
|
|
16
|
+
dependencies: [[CorePulumi, {
|
|
17
|
+
multiple: true
|
|
18
|
+
}]]
|
|
19
|
+
});
|
|
20
|
+
|
|
21
|
+
//# sourceMappingURL=CorePulumi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createComposite","CorePulumi","CompositeCorePulumi","constructor","corePulumi","execute","params","handler","abstraction","implementation","dependencies","multiple"],"sources":["CorePulumi.ts"],"sourcesContent":["import { createComposite } from \"@webiny/di\";\nimport { CorePulumi } from \"~/abstractions/features/pulumi/index.js\";\n\nexport class CompositeCorePulumi implements CorePulumi.Interface {\n constructor(private corePulumi: CorePulumi.Interface[]) {}\n\n async execute(params: CorePulumi.Params) {\n for (const handler of this.corePulumi) {\n await handler.execute(params);\n }\n }\n}\n\nexport const corePulumi = createComposite({\n abstraction: CorePulumi,\n implementation: CompositeCorePulumi,\n dependencies: [[CorePulumi, { multiple: true }]]\n});\n"],"mappings":"AAAA,SAASA,eAAe,QAAQ,YAAY;AAC5C,SAASC,UAAU;AAEnB,OAAO,MAAMC,mBAAmB,CAAiC;EAC7DC,WAAWA,CAASC,UAAkC,EAAE;IAAA,KAApCA,UAAkC,GAAlCA,UAAkC;EAAG;EAEzD,MAAMC,OAAOA,CAACC,MAAyB,EAAE;IACrC,KAAK,MAAMC,OAAO,IAAI,IAAI,CAACH,UAAU,EAAE;MACnC,MAAMG,OAAO,CAACF,OAAO,CAACC,MAAM,CAAC;IACjC;EACJ;AACJ;AAEA,OAAO,MAAMF,UAAU,GAAGJ,eAAe,CAAC;EACtCQ,WAAW,EAAEP,UAAU;EACvBQ,cAAc,EAAEP,mBAAmB;EACnCQ,YAAY,EAAE,CAAC,CAACT,UAAU,EAAE;IAAEU,QAAQ,EAAE;EAAK,CAAC,CAAC;AACnD,CAAC,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./CorePulumi.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export * from \"./CorePulumi.js\";\n"],"mappings":"AAAA","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export * from \"./CorePulumi/index.js\";\nexport * from \"./ApiPulumi/index.js\";\nexport * from \"./AdminPulumi/index.js\";\n"],"mappings":"AAAA;AACA;AACA","ignoreList":[]}
|