@orcabus/platform-cdk-constructs 0.0.18 → 0.0.19

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/.jsii CHANGED
@@ -6394,6 +6394,6 @@
6394
6394
  "symbolId": "shared-config/networking:OrcaBusVpc"
6395
6395
  }
6396
6396
  },
6397
- "version": "0.0.18",
6398
- "fingerprint": "cZ5dhM2eEzkVS+NFFTOmxKFC6o07JLtQTE4AZipSYQQ="
6397
+ "version": "0.0.19",
6398
+ "fingerprint": "wSb5vhy6MLa4Mbsn3O30771EwitRsfjl634dNH0yEys="
6399
6399
  }
@@ -15,7 +15,7 @@ const aws_lambda_1 = require("aws-cdk-lib/aws-lambda");
15
15
  const aws_route53_targets_1 = require("aws-cdk-lib/aws-route53-targets");
16
16
  const config_1 = require("./config");
17
17
  class OrcaBusApiGateway extends constructs_1.Construct {
18
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.apigateway.OrcaBusApiGateway", version: "0.0.18" };
18
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.apigateway.OrcaBusApiGateway", version: "0.0.19" };
19
19
  /**
20
20
  * The AWS region where the API Gateway is deployed.
21
21
  */
@@ -13,7 +13,7 @@ exports.CROSS_DEPLOYMENT_ARTIFACT_BUCKET_NAME = "orcabus-cross-deployment-codepi
13
13
  exports.CROSS_DEPLOYMENT_ARTIFACT_KMS_ALIAS = "orcabus-cross-deployment-codepipeline-artifact";
14
14
  exports.CROSS_DEPLOYMENT_ARTIFACT_KMS_ARN_SSM_PARAMETER_NAME = "/orcabus/deployment-stack-pipeline/artifact-bucket/kms-key-arn";
15
15
  class CrossDeploymentArtifactBucket extends constructs_1.Construct {
16
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.deploymentPipeline.CrossDeploymentArtifactBucket", version: "0.0.18" };
16
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.deploymentPipeline.CrossDeploymentArtifactBucket", version: "0.0.19" };
17
17
  /**
18
18
  * The S3 bucket used to store artifacts for cross-deployment pipelines.
19
19
  */
@@ -31,7 +31,7 @@ exports.DEFAULT_SYNTH_STEP_PARTIAL_BUILD_SPEC = {
31
31
  * before using this construct.
32
32
  */
33
33
  class DeploymentStackPipeline extends constructs_1.Construct {
34
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.deploymentPipeline.DeploymentStackPipeline", version: "0.0.18" };
34
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.deploymentPipeline.DeploymentStackPipeline", version: "0.0.19" };
35
35
  /**
36
36
  * The code pipeline construct that is created.
37
37
  */
package/dynamodb/index.js CHANGED
@@ -40,7 +40,7 @@ const dynamodb = __importStar(require("aws-cdk-lib/aws-dynamodb"));
40
40
  const aws_cdk_lib_1 = require("aws-cdk-lib");
41
41
  const config_1 = require("./config");
42
42
  class DynamoDbPartitionedConstruct extends constructs_1.Construct {
43
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.dynamodb.DynamoDbPartitionedConstruct", version: "0.0.18" };
43
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.dynamodb.DynamoDbPartitionedConstruct", version: "0.0.19" };
44
44
  table;
45
45
  constructor(scope, id, props) {
46
46
  super(scope, id);
@@ -75,7 +75,7 @@ class DynamoDbPartitionedConstruct extends constructs_1.Construct {
75
75
  }
76
76
  exports.DynamoDbPartitionedConstruct = DynamoDbPartitionedConstruct;
77
77
  class DynamoDbNonPartitionedConstruct extends constructs_1.Construct {
78
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.dynamodb.DynamoDbNonPartitionedConstruct", version: "0.0.18" };
78
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.dynamodb.DynamoDbNonPartitionedConstruct", version: "0.0.19" };
79
79
  table;
80
80
  constructor(scope, id, props) {
81
81
  super(scope, id);
package/ecs/index.js CHANGED
@@ -52,7 +52,7 @@ exports.LAMBDA_ARCHITECTURE_MAP = {
52
52
  ['ARM64']: lambda.Architecture.ARM_64
53
53
  };
54
54
  class EcsFargateTaskConstruct extends constructs_1.Construct {
55
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.ecs.EcsFargateTaskConstruct", version: "0.0.18" };
55
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.ecs.EcsFargateTaskConstruct", version: "0.0.19" };
56
56
  cluster;
57
57
  taskDefinition;
58
58
  securityGroup;
package/lambda/index.js CHANGED
@@ -56,7 +56,7 @@ function getPythonUvDockerImage() {
56
56
  return aws_cdk_lib_1.DockerImage.fromBuild(path_1.default.join(__dirname, 'build_python'));
57
57
  }
58
58
  class PythonUvFunction extends aws_lambda_python_alpha_1.PythonFunction {
59
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.lambda.PythonUvFunction", version: "0.0.18" };
59
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.lambda.PythonUvFunction", version: "0.0.19" };
60
60
  // Class constructs, to be used for caching the layers
61
61
  // This means that if there are multiple lambdas throughout the stack
62
62
  // They will all use the same layer
@@ -7,7 +7,7 @@ const aws_iam_1 = require("aws-cdk-lib/aws-iam");
7
7
  * A construct which represents a named role that a Lambda function can assume.
8
8
  */
9
9
  class NamedLambdaRole extends aws_iam_1.Role {
10
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.namedLambdaRole.NamedLambdaRole", version: "0.0.18" };
10
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.namedLambdaRole.NamedLambdaRole", version: "0.0.19" };
11
11
  constructor(scope, id, props) {
12
12
  super(scope, id, {
13
13
  assumedBy: new aws_iam_1.ServicePrincipal("lambda.amazonaws.com"),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@orcabus/platform-cdk-constructs",
3
- "version": "0.0.18",
3
+ "version": "0.0.19",
4
4
  "description": "CDK Package for OrcaBus infrastructure.",
5
5
  "main": "index.ts",
6
6
  "types": "index.d.ts",
@@ -15,7 +15,7 @@ const aws_cdk_lib_1 = require("aws-cdk-lib");
15
15
  * to the provider framework.
16
16
  */
17
17
  class ProviderFunction extends constructs_1.Construct {
18
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.provider.ProviderFunction", version: "0.0.18" };
18
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.provider.ProviderFunction", version: "0.0.19" };
19
19
  _function;
20
20
  _response;
21
21
  constructor(scope, id, props) {
@@ -2,10 +2,10 @@
2
2
  * Shared config for the FileManager.
3
3
  */
4
4
  import { StageName } from "./accounts";
5
- export declare const fileManagerBuckets: Record<StageName, string[]>;
6
- export declare const fileManagerCacheBuckets: Record<StageName, string[]>;
7
- export declare const fileManagerPresignUserSecret = "orcabus/file-manager-presign-user";
8
- export declare const accessKeySecretArn: Record<StageName, string>;
9
- export declare const fileManagerIngestRoleName = "orcabus-file-manager-ingest-role";
10
- export declare const fileManagerPresignUser = "orcabus-file-manager-presign-user";
11
- export declare const fileManagerDomainPrefix = "file";
5
+ export declare const FILE_MANAGER_BUCKETS: Record<StageName, string[]>;
6
+ export declare const FILE_MANAGER_CACHE_BUCKETS: Record<StageName, string[]>;
7
+ export declare const FILE_MANAGER_PRESIGN_USER_SECRET = "orcabus/file-manager-presign-user";
8
+ export declare const FILE_MANAGER_ACCESS_KEY_ARNS: Record<StageName, string>;
9
+ export declare const FILE_MANAGER_INGEST_ROLE = "orcabus-file-manager-ingest-role";
10
+ export declare const FILE_MANAGER_PRESIGN_USER = "orcabus-file-manager-presign-user";
11
+ export declare const FILE_MANAGER_DOMAIN_PREFIX = "file";
@@ -3,10 +3,11 @@
3
3
  * Shared config for the FileManager.
4
4
  */
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.fileManagerDomainPrefix = exports.fileManagerPresignUser = exports.fileManagerIngestRoleName = exports.accessKeySecretArn = exports.fileManagerPresignUserSecret = exports.fileManagerCacheBuckets = exports.fileManagerBuckets = void 0;
7
- const utils_1 = require("../utils");
6
+ exports.FILE_MANAGER_DOMAIN_PREFIX = exports.FILE_MANAGER_PRESIGN_USER = exports.FILE_MANAGER_INGEST_ROLE = exports.FILE_MANAGER_ACCESS_KEY_ARNS = exports.FILE_MANAGER_PRESIGN_USER_SECRET = exports.FILE_MANAGER_CACHE_BUCKETS = exports.FILE_MANAGER_BUCKETS = void 0;
8
7
  const deployment_stack_pipeline_1 = require("../deployment-stack-pipeline");
9
- exports.fileManagerBuckets = {
8
+ const s3_1 = require("./s3");
9
+ const secrets_1 = require("./secrets");
10
+ exports.FILE_MANAGER_BUCKETS = {
10
11
  BETA: [
11
12
  "umccr-temp-dev",
12
13
  `ntsm-fingerprints-${deployment_stack_pipeline_1.BETA_ENVIRONMENT.account}-ap-southeast-2`,
@@ -27,19 +28,19 @@ exports.fileManagerBuckets = {
27
28
  "pipeline-montauk-977251586657-ap-southeast-2",
28
29
  ],
29
30
  };
30
- exports.fileManagerCacheBuckets = {
31
- BETA: ["pipeline-dev-cache-503977275616-ap-southeast-2"],
32
- GAMMA: ["pipeline-stg-cache-503977275616-ap-southeast-2"],
33
- PROD: ["pipeline-prod-cache-503977275616-ap-southeast-2"],
31
+ exports.FILE_MANAGER_CACHE_BUCKETS = {
32
+ BETA: [s3_1.pipelineCacheBucket.BETA],
33
+ GAMMA: [s3_1.pipelineCacheBucket.GAMMA],
34
+ PROD: [s3_1.pipelineCacheBucket.PROD],
34
35
  };
35
- exports.fileManagerPresignUserSecret = "orcabus/file-manager-presign-user"; // pragma: allowlist secret
36
- exports.accessKeySecretArn = {
37
- BETA: `arn:aws:secretsmanager:${deployment_stack_pipeline_1.BETA_ENVIRONMENT.region}:${deployment_stack_pipeline_1.BETA_ENVIRONMENT.account}:secret:${exports.fileManagerPresignUserSecret}`,
38
- GAMMA: `arn:aws:secretsmanager:${deployment_stack_pipeline_1.GAMMA_ENVIRONMENT.region}:${deployment_stack_pipeline_1.GAMMA_ENVIRONMENT.account}:secret:${exports.fileManagerPresignUserSecret}`,
39
- PROD: `arn:aws:secretsmanager:${deployment_stack_pipeline_1.PROD_ENVIRONMENT.region}:${deployment_stack_pipeline_1.PROD_ENVIRONMENT.account}:secret:${exports.fileManagerPresignUserSecret}`,
36
+ exports.FILE_MANAGER_PRESIGN_USER_SECRET = "orcabus/file-manager-presign-user"; // pragma: allowlist secret
37
+ (0, secrets_1.validateSecretName)(exports.FILE_MANAGER_PRESIGN_USER_SECRET);
38
+ exports.FILE_MANAGER_ACCESS_KEY_ARNS = {
39
+ BETA: `arn:aws:secretsmanager:${deployment_stack_pipeline_1.BETA_ENVIRONMENT.region}:${deployment_stack_pipeline_1.BETA_ENVIRONMENT.account}:secret:${exports.FILE_MANAGER_PRESIGN_USER_SECRET}`,
40
+ GAMMA: `arn:aws:secretsmanager:${deployment_stack_pipeline_1.GAMMA_ENVIRONMENT.region}:${deployment_stack_pipeline_1.GAMMA_ENVIRONMENT.account}:secret:${exports.FILE_MANAGER_PRESIGN_USER_SECRET}`,
41
+ PROD: `arn:aws:secretsmanager:${deployment_stack_pipeline_1.PROD_ENVIRONMENT.region}:${deployment_stack_pipeline_1.PROD_ENVIRONMENT.account}:secret:${exports.FILE_MANAGER_PRESIGN_USER_SECRET}`,
40
42
  };
41
- exports.fileManagerIngestRoleName = "orcabus-file-manager-ingest-role";
42
- (0, utils_1.validateSecretName)(exports.fileManagerPresignUserSecret);
43
- exports.fileManagerPresignUser = "orcabus-file-manager-presign-user"; // pragma: allowlist secret
44
- exports.fileManagerDomainPrefix = "file";
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1tYW5hZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiZmlsZS1tYW5hZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7R0FFRzs7O0FBRUgsb0NBQThDO0FBQzlDLDRFQUlzQztBQUd6QixRQUFBLGtCQUFrQixHQUFnQztJQUM3RCxJQUFJLEVBQUU7UUFDSixnQkFBZ0I7UUFDaEIscUJBQXFCLDRDQUFnQixDQUFDLE9BQU8saUJBQWlCO1FBQzlELDBCQUEwQiw0Q0FBZ0IsQ0FBQyxPQUFPLGlCQUFpQjtRQUNuRSw0QkFBNEI7S0FDN0I7SUFDRCxLQUFLLEVBQUU7UUFDTCxnQkFBZ0I7UUFDaEIscUJBQXFCLDZDQUFpQixDQUFDLE9BQU8saUJBQWlCO1FBQy9ELDBCQUEwQiw2Q0FBaUIsQ0FBQyxPQUFPLGlCQUFpQjtLQUNyRTtJQUNELElBQUksRUFBRTtRQUNKLDZCQUE2QjtRQUM3QixtREFBbUQ7UUFDbkQsZ0RBQWdEO1FBQ2hELHFCQUFxQiw0Q0FBZ0IsQ0FBQyxPQUFPLGlCQUFpQjtRQUM5RCwwQkFBMEIsNENBQWdCLENBQUMsT0FBTyxpQkFBaUI7UUFDbkUsOENBQThDO0tBQy9DO0NBQ0YsQ0FBQztBQUVXLFFBQUEsdUJBQXVCLEdBQWdDO0lBQ2xFLElBQUksRUFBRSxDQUFDLGdEQUFnRCxDQUFDO0lBQ3hELEtBQUssRUFBRSxDQUFDLGdEQUFnRCxDQUFDO0lBQ3pELElBQUksRUFBRSxDQUFDLGlEQUFpRCxDQUFDO0NBQzFELENBQUM7QUFFVyxRQUFBLDRCQUE0QixHQUFHLG1DQUFtQyxDQUFDLENBQUMsMkJBQTJCO0FBQy9GLFFBQUEsa0JBQWtCLEdBQThCO0lBQzNELElBQUksRUFBRSwwQkFBMEIsNENBQWdCLENBQUMsTUFBTSxJQUFJLDRDQUFnQixDQUFDLE9BQU8sV0FBVyxvQ0FBNEIsRUFBRTtJQUM1SCxLQUFLLEVBQUUsMEJBQTBCLDZDQUFpQixDQUFDLE1BQU0sSUFBSSw2Q0FBaUIsQ0FBQyxPQUFPLFdBQVcsb0NBQTRCLEVBQUU7SUFDL0gsSUFBSSxFQUFFLDBCQUEwQiw0Q0FBZ0IsQ0FBQyxNQUFNLElBQUksNENBQWdCLENBQUMsT0FBTyxXQUFXLG9DQUE0QixFQUFFO0NBQzdILENBQUM7QUFFVyxRQUFBLHlCQUF5QixHQUFHLGtDQUFrQyxDQUFDO0FBQzVFLElBQUEsMEJBQWtCLEVBQUMsb0NBQTRCLENBQUMsQ0FBQztBQUVwQyxRQUFBLHNCQUFzQixHQUFHLG1DQUFtQyxDQUFDLENBQUMsMkJBQTJCO0FBQ3pGLFFBQUEsdUJBQXVCLEdBQUcsTUFBTSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBTaGFyZWQgY29uZmlnIGZvciB0aGUgRmlsZU1hbmFnZXIuXG4gKi9cblxuaW1wb3J0IHsgdmFsaWRhdGVTZWNyZXROYW1lIH0gZnJvbSBcIi4uL3V0aWxzXCI7XG5pbXBvcnQge1xuICBCRVRBX0VOVklST05NRU5ULFxuICBHQU1NQV9FTlZJUk9OTUVOVCxcbiAgUFJPRF9FTlZJUk9OTUVOVCxcbn0gZnJvbSBcIi4uL2RlcGxveW1lbnQtc3RhY2stcGlwZWxpbmVcIjtcbmltcG9ydCB7U3RhZ2VOYW1lfSBmcm9tIFwiLi9hY2NvdW50c1wiO1xuXG5leHBvcnQgY29uc3QgZmlsZU1hbmFnZXJCdWNrZXRzOiBSZWNvcmQ8U3RhZ2VOYW1lLCBzdHJpbmdbXT4gPSB7XG4gIEJFVEE6IFtcbiAgICBcInVtY2NyLXRlbXAtZGV2XCIsXG4gICAgYG50c20tZmluZ2VycHJpbnRzLSR7QkVUQV9FTlZJUk9OTUVOVC5hY2NvdW50fS1hcC1zb3V0aGVhc3QtMmAsXG4gICAgYGRhdGEtc2hhcmluZy1hcnRpZmFjdHMtJHtCRVRBX0VOVklST05NRU5ULmFjY291bnR9LWFwLXNvdXRoZWFzdC0yYCxcbiAgICBcImZpbGVtYW5hZ2VyLWludmVudG9yeS10ZXN0XCIsXG4gIF0sXG4gIEdBTU1BOiBbXG4gICAgXCJ1bWNjci10ZW1wLXN0Z1wiLFxuICAgIGBudHNtLWZpbmdlcnByaW50cy0ke0dBTU1BX0VOVklST05NRU5ULmFjY291bnR9LWFwLXNvdXRoZWFzdC0yYCxcbiAgICBgZGF0YS1zaGFyaW5nLWFydGlmYWN0cy0ke0dBTU1BX0VOVklST05NRU5ULmFjY291bnR9LWFwLXNvdXRoZWFzdC0yYCxcbiAgXSxcbiAgUFJPRDogW1xuICAgIFwib3JnLnVtY2NyLmRhdGEub25jb2FuYWx5c2VyXCIsXG4gICAgXCJhcmNoaXZlLXByb2QtYW5hbHlzaXMtNTAzOTc3Mjc1NjE2LWFwLXNvdXRoZWFzdC0yXCIsXG4gICAgXCJhcmNoaXZlLXByb2QtZmFzdHEtNTAzOTc3Mjc1NjE2LWFwLXNvdXRoZWFzdC0yXCIsXG4gICAgYG50c20tZmluZ2VycHJpbnRzLSR7UFJPRF9FTlZJUk9OTUVOVC5hY2NvdW50fS1hcC1zb3V0aGVhc3QtMmAsXG4gICAgYGRhdGEtc2hhcmluZy1hcnRpZmFjdHMtJHtQUk9EX0VOVklST05NRU5ULmFjY291bnR9LWFwLXNvdXRoZWFzdC0yYCxcbiAgICBcInBpcGVsaW5lLW1vbnRhdWstOTc3MjUxNTg2NjU3LWFwLXNvdXRoZWFzdC0yXCIsXG4gIF0sXG59O1xuXG5leHBvcnQgY29uc3QgZmlsZU1hbmFnZXJDYWNoZUJ1Y2tldHM6IFJlY29yZDxTdGFnZU5hbWUsIHN0cmluZ1tdPiA9IHtcbiAgQkVUQTogW1wicGlwZWxpbmUtZGV2LWNhY2hlLTUwMzk3NzI3NTYxNi1hcC1zb3V0aGVhc3QtMlwiXSxcbiAgR0FNTUE6IFtcInBpcGVsaW5lLXN0Zy1jYWNoZS01MDM5NzcyNzU2MTYtYXAtc291dGhlYXN0LTJcIl0sXG4gIFBST0Q6IFtcInBpcGVsaW5lLXByb2QtY2FjaGUtNTAzOTc3Mjc1NjE2LWFwLXNvdXRoZWFzdC0yXCJdLFxufTtcblxuZXhwb3J0IGNvbnN0IGZpbGVNYW5hZ2VyUHJlc2lnblVzZXJTZWNyZXQgPSBcIm9yY2FidXMvZmlsZS1tYW5hZ2VyLXByZXNpZ24tdXNlclwiOyAvLyBwcmFnbWE6IGFsbG93bGlzdCBzZWNyZXRcbmV4cG9ydCBjb25zdCBhY2Nlc3NLZXlTZWNyZXRBcm46IFJlY29yZDxTdGFnZU5hbWUsIHN0cmluZz4gPSB7XG4gIEJFVEE6IGBhcm46YXdzOnNlY3JldHNtYW5hZ2VyOiR7QkVUQV9FTlZJUk9OTUVOVC5yZWdpb259OiR7QkVUQV9FTlZJUk9OTUVOVC5hY2NvdW50fTpzZWNyZXQ6JHtmaWxlTWFuYWdlclByZXNpZ25Vc2VyU2VjcmV0fWAsXG4gIEdBTU1BOiBgYXJuOmF3czpzZWNyZXRzbWFuYWdlcjoke0dBTU1BX0VOVklST05NRU5ULnJlZ2lvbn06JHtHQU1NQV9FTlZJUk9OTUVOVC5hY2NvdW50fTpzZWNyZXQ6JHtmaWxlTWFuYWdlclByZXNpZ25Vc2VyU2VjcmV0fWAsXG4gIFBST0Q6IGBhcm46YXdzOnNlY3JldHNtYW5hZ2VyOiR7UFJPRF9FTlZJUk9OTUVOVC5yZWdpb259OiR7UFJPRF9FTlZJUk9OTUVOVC5hY2NvdW50fTpzZWNyZXQ6JHtmaWxlTWFuYWdlclByZXNpZ25Vc2VyU2VjcmV0fWAsXG59O1xuXG5leHBvcnQgY29uc3QgZmlsZU1hbmFnZXJJbmdlc3RSb2xlTmFtZSA9IFwib3JjYWJ1cy1maWxlLW1hbmFnZXItaW5nZXN0LXJvbGVcIjtcbnZhbGlkYXRlU2VjcmV0TmFtZShmaWxlTWFuYWdlclByZXNpZ25Vc2VyU2VjcmV0KTtcblxuZXhwb3J0IGNvbnN0IGZpbGVNYW5hZ2VyUHJlc2lnblVzZXIgPSBcIm9yY2FidXMtZmlsZS1tYW5hZ2VyLXByZXNpZ24tdXNlclwiOyAvLyBwcmFnbWE6IGFsbG93bGlzdCBzZWNyZXRcbmV4cG9ydCBjb25zdCBmaWxlTWFuYWdlckRvbWFpblByZWZpeCA9IFwiZmlsZVwiO1xuIl19
43
+ exports.FILE_MANAGER_INGEST_ROLE = "orcabus-file-manager-ingest-role";
44
+ exports.FILE_MANAGER_PRESIGN_USER = "orcabus-file-manager-presign-user"; // pragma: allowlist secret
45
+ exports.FILE_MANAGER_DOMAIN_PREFIX = "file";
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1tYW5hZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiZmlsZS1tYW5hZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7R0FFRzs7O0FBRUgsNEVBSXNDO0FBRXRDLDZCQUEyQztBQUMzQyx1Q0FBK0M7QUFFbEMsUUFBQSxvQkFBb0IsR0FBZ0M7SUFDL0QsSUFBSSxFQUFFO1FBQ0osZ0JBQWdCO1FBQ2hCLHFCQUFxQiw0Q0FBZ0IsQ0FBQyxPQUFPLGlCQUFpQjtRQUM5RCwwQkFBMEIsNENBQWdCLENBQUMsT0FBTyxpQkFBaUI7UUFDbkUsNEJBQTRCO0tBQzdCO0lBQ0QsS0FBSyxFQUFFO1FBQ0wsZ0JBQWdCO1FBQ2hCLHFCQUFxQiw2Q0FBaUIsQ0FBQyxPQUFPLGlCQUFpQjtRQUMvRCwwQkFBMEIsNkNBQWlCLENBQUMsT0FBTyxpQkFBaUI7S0FDckU7SUFDRCxJQUFJLEVBQUU7UUFDSiw2QkFBNkI7UUFDN0IsbURBQW1EO1FBQ25ELGdEQUFnRDtRQUNoRCxxQkFBcUIsNENBQWdCLENBQUMsT0FBTyxpQkFBaUI7UUFDOUQsMEJBQTBCLDRDQUFnQixDQUFDLE9BQU8saUJBQWlCO1FBQ25FLDhDQUE4QztLQUMvQztDQUNGLENBQUM7QUFFVyxRQUFBLDBCQUEwQixHQUFnQztJQUNyRSxJQUFJLEVBQUUsQ0FBQyx3QkFBbUIsQ0FBQyxJQUFJLENBQUM7SUFDaEMsS0FBSyxFQUFFLENBQUMsd0JBQW1CLENBQUMsS0FBSyxDQUFDO0lBQ2xDLElBQUksRUFBRSxDQUFDLHdCQUFtQixDQUFDLElBQUksQ0FBQztDQUNqQyxDQUFDO0FBRVcsUUFBQSxnQ0FBZ0MsR0FDM0MsbUNBQW1DLENBQUMsQ0FBQywyQkFBMkI7QUFDbEUsSUFBQSw0QkFBa0IsRUFBQyx3Q0FBZ0MsQ0FBQyxDQUFDO0FBRXhDLFFBQUEsNEJBQTRCLEdBQThCO0lBQ3JFLElBQUksRUFBRSwwQkFBMEIsNENBQWdCLENBQUMsTUFBTSxJQUFJLDRDQUFnQixDQUFDLE9BQU8sV0FBVyx3Q0FBZ0MsRUFBRTtJQUNoSSxLQUFLLEVBQUUsMEJBQTBCLDZDQUFpQixDQUFDLE1BQU0sSUFBSSw2Q0FBaUIsQ0FBQyxPQUFPLFdBQVcsd0NBQWdDLEVBQUU7SUFDbkksSUFBSSxFQUFFLDBCQUEwQiw0Q0FBZ0IsQ0FBQyxNQUFNLElBQUksNENBQWdCLENBQUMsT0FBTyxXQUFXLHdDQUFnQyxFQUFFO0NBQ2pJLENBQUM7QUFFVyxRQUFBLHdCQUF3QixHQUFHLGtDQUFrQyxDQUFDO0FBQzlELFFBQUEseUJBQXlCLEdBQUcsbUNBQW1DLENBQUMsQ0FBQywyQkFBMkI7QUFDNUYsUUFBQSwwQkFBMEIsR0FBRyxNQUFNLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFNoYXJlZCBjb25maWcgZm9yIHRoZSBGaWxlTWFuYWdlci5cbiAqL1xuXG5pbXBvcnQge1xuICBCRVRBX0VOVklST05NRU5ULFxuICBHQU1NQV9FTlZJUk9OTUVOVCxcbiAgUFJPRF9FTlZJUk9OTUVOVCxcbn0gZnJvbSBcIi4uL2RlcGxveW1lbnQtc3RhY2stcGlwZWxpbmVcIjtcbmltcG9ydCB7IFN0YWdlTmFtZSB9IGZyb20gXCIuL2FjY291bnRzXCI7XG5pbXBvcnQgeyBwaXBlbGluZUNhY2hlQnVja2V0IH0gZnJvbSBcIi4vczNcIjtcbmltcG9ydCB7IHZhbGlkYXRlU2VjcmV0TmFtZSB9IGZyb20gXCIuL3NlY3JldHNcIjtcblxuZXhwb3J0IGNvbnN0IEZJTEVfTUFOQUdFUl9CVUNLRVRTOiBSZWNvcmQ8U3RhZ2VOYW1lLCBzdHJpbmdbXT4gPSB7XG4gIEJFVEE6IFtcbiAgICBcInVtY2NyLXRlbXAtZGV2XCIsXG4gICAgYG50c20tZmluZ2VycHJpbnRzLSR7QkVUQV9FTlZJUk9OTUVOVC5hY2NvdW50fS1hcC1zb3V0aGVhc3QtMmAsXG4gICAgYGRhdGEtc2hhcmluZy1hcnRpZmFjdHMtJHtCRVRBX0VOVklST05NRU5ULmFjY291bnR9LWFwLXNvdXRoZWFzdC0yYCxcbiAgICBcImZpbGVtYW5hZ2VyLWludmVudG9yeS10ZXN0XCIsXG4gIF0sXG4gIEdBTU1BOiBbXG4gICAgXCJ1bWNjci10ZW1wLXN0Z1wiLFxuICAgIGBudHNtLWZpbmdlcnByaW50cy0ke0dBTU1BX0VOVklST05NRU5ULmFjY291bnR9LWFwLXNvdXRoZWFzdC0yYCxcbiAgICBgZGF0YS1zaGFyaW5nLWFydGlmYWN0cy0ke0dBTU1BX0VOVklST05NRU5ULmFjY291bnR9LWFwLXNvdXRoZWFzdC0yYCxcbiAgXSxcbiAgUFJPRDogW1xuICAgIFwib3JnLnVtY2NyLmRhdGEub25jb2FuYWx5c2VyXCIsXG4gICAgXCJhcmNoaXZlLXByb2QtYW5hbHlzaXMtNTAzOTc3Mjc1NjE2LWFwLXNvdXRoZWFzdC0yXCIsXG4gICAgXCJhcmNoaXZlLXByb2QtZmFzdHEtNTAzOTc3Mjc1NjE2LWFwLXNvdXRoZWFzdC0yXCIsXG4gICAgYG50c20tZmluZ2VycHJpbnRzLSR7UFJPRF9FTlZJUk9OTUVOVC5hY2NvdW50fS1hcC1zb3V0aGVhc3QtMmAsXG4gICAgYGRhdGEtc2hhcmluZy1hcnRpZmFjdHMtJHtQUk9EX0VOVklST05NRU5ULmFjY291bnR9LWFwLXNvdXRoZWFzdC0yYCxcbiAgICBcInBpcGVsaW5lLW1vbnRhdWstOTc3MjUxNTg2NjU3LWFwLXNvdXRoZWFzdC0yXCIsXG4gIF0sXG59O1xuXG5leHBvcnQgY29uc3QgRklMRV9NQU5BR0VSX0NBQ0hFX0JVQ0tFVFM6IFJlY29yZDxTdGFnZU5hbWUsIHN0cmluZ1tdPiA9IHtcbiAgQkVUQTogW3BpcGVsaW5lQ2FjaGVCdWNrZXQuQkVUQV0sXG4gIEdBTU1BOiBbcGlwZWxpbmVDYWNoZUJ1Y2tldC5HQU1NQV0sXG4gIFBST0Q6IFtwaXBlbGluZUNhY2hlQnVja2V0LlBST0RdLFxufTtcblxuZXhwb3J0IGNvbnN0IEZJTEVfTUFOQUdFUl9QUkVTSUdOX1VTRVJfU0VDUkVUID1cbiAgXCJvcmNhYnVzL2ZpbGUtbWFuYWdlci1wcmVzaWduLXVzZXJcIjsgLy8gcHJhZ21hOiBhbGxvd2xpc3Qgc2VjcmV0XG52YWxpZGF0ZVNlY3JldE5hbWUoRklMRV9NQU5BR0VSX1BSRVNJR05fVVNFUl9TRUNSRVQpO1xuXG5leHBvcnQgY29uc3QgRklMRV9NQU5BR0VSX0FDQ0VTU19LRVlfQVJOUzogUmVjb3JkPFN0YWdlTmFtZSwgc3RyaW5nPiA9IHtcbiAgQkVUQTogYGFybjphd3M6c2VjcmV0c21hbmFnZXI6JHtCRVRBX0VOVklST05NRU5ULnJlZ2lvbn06JHtCRVRBX0VOVklST05NRU5ULmFjY291bnR9OnNlY3JldDoke0ZJTEVfTUFOQUdFUl9QUkVTSUdOX1VTRVJfU0VDUkVUfWAsXG4gIEdBTU1BOiBgYXJuOmF3czpzZWNyZXRzbWFuYWdlcjoke0dBTU1BX0VOVklST05NRU5ULnJlZ2lvbn06JHtHQU1NQV9FTlZJUk9OTUVOVC5hY2NvdW50fTpzZWNyZXQ6JHtGSUxFX01BTkFHRVJfUFJFU0lHTl9VU0VSX1NFQ1JFVH1gLFxuICBQUk9EOiBgYXJuOmF3czpzZWNyZXRzbWFuYWdlcjoke1BST0RfRU5WSVJPTk1FTlQucmVnaW9ufToke1BST0RfRU5WSVJPTk1FTlQuYWNjb3VudH06c2VjcmV0OiR7RklMRV9NQU5BR0VSX1BSRVNJR05fVVNFUl9TRUNSRVR9YCxcbn07XG5cbmV4cG9ydCBjb25zdCBGSUxFX01BTkFHRVJfSU5HRVNUX1JPTEUgPSBcIm9yY2FidXMtZmlsZS1tYW5hZ2VyLWluZ2VzdC1yb2xlXCI7XG5leHBvcnQgY29uc3QgRklMRV9NQU5BR0VSX1BSRVNJR05fVVNFUiA9IFwib3JjYWJ1cy1maWxlLW1hbmFnZXItcHJlc2lnbi11c2VyXCI7IC8vIHByYWdtYTogYWxsb3dsaXN0IHNlY3JldFxuZXhwb3J0IGNvbnN0IEZJTEVfTUFOQUdFUl9ET01BSU5fUFJFRklYID0gXCJmaWxlXCI7XG4iXX0=
@@ -23,7 +23,7 @@ exports.VPC_LOOKUP_PROPS = {
23
23
  * Helper for looking up the shared OrcaBus VPC.
24
24
  */
25
25
  class OrcaBusVpc {
26
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.sharedConfig.networking.OrcaBusVpc", version: "0.0.18" };
26
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.sharedConfig.networking.OrcaBusVpc", version: "0.0.19" };
27
27
  /**
28
28
  * The shared VPC that is used by OrcaBus.
29
29
  * @param scope
@@ -42,7 +42,7 @@ exports.SHARED_SECURITY_GROUP_NAME = "OrcaBusSharedComputeSecurityGroup";
42
42
  * Helper for looking up the shared compute security group by name.
43
43
  */
44
44
  class OrcaBusSharedComputeSecurityGroup {
45
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.sharedConfig.networking.OrcaBusSharedComputeSecurityGroup", version: "0.0.18" };
45
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.sharedConfig.networking.OrcaBusSharedComputeSecurityGroup", version: "0.0.19" };
46
46
  /**
47
47
  * The shared security group that is used by compute resources to access the database.
48
48
  * @param scope
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Validate the secret name so that it doesn't end with 6 characters and a hyphen.
3
+ */
4
+ export declare const validateSecretName: (secretName: string) => void;
5
+ export declare const JWT_SECRET_NAME = "orcabus/token-service-jwt";
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.JWT_SECRET_NAME = exports.validateSecretName = void 0;
4
+ /**
5
+ * Validate the secret name so that it doesn't end with 6 characters and a hyphen.
6
+ */
7
+ const validateSecretName = (secretName) => {
8
+ // Note, this should not end with a hyphen and 6 characters, otherwise secrets manager won't be
9
+ // able to find the secret using a partial ARN.
10
+ if (/-(.){6}$/.test(secretName)) {
11
+ throw new Error("the secret name should not end with a hyphen and 6 characters");
12
+ }
13
+ };
14
+ exports.validateSecretName = validateSecretName;
15
+ exports.JWT_SECRET_NAME = "orcabus/token-service-jwt"; // pragma: allowlist secret
16
+ (0, exports.validateSecretName)(exports.JWT_SECRET_NAME);
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjcmV0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInNlY3JldHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUE7O0dBRUc7QUFDSSxNQUFNLGtCQUFrQixHQUFHLENBQUMsVUFBa0IsRUFBRSxFQUFFO0lBQ3ZELCtGQUErRjtJQUMvRiwrQ0FBK0M7SUFDL0MsSUFBSSxVQUFVLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUM7UUFDaEMsTUFBTSxJQUFJLEtBQUssQ0FDYiwrREFBK0QsQ0FDaEUsQ0FBQztJQUNKLENBQUM7QUFDSCxDQUFDLENBQUM7QUFSVyxRQUFBLGtCQUFrQixzQkFRN0I7QUFFVyxRQUFBLGVBQWUsR0FBRywyQkFBMkIsQ0FBQyxDQUFDLDJCQUEyQjtBQUN2RixJQUFBLDBCQUFrQixFQUFDLHVCQUFlLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogVmFsaWRhdGUgdGhlIHNlY3JldCBuYW1lIHNvIHRoYXQgaXQgZG9lc24ndCBlbmQgd2l0aCA2IGNoYXJhY3RlcnMgYW5kIGEgaHlwaGVuLlxuICovXG5leHBvcnQgY29uc3QgdmFsaWRhdGVTZWNyZXROYW1lID0gKHNlY3JldE5hbWU6IHN0cmluZykgPT4ge1xuICAvLyBOb3RlLCB0aGlzIHNob3VsZCBub3QgZW5kIHdpdGggYSBoeXBoZW4gYW5kIDYgY2hhcmFjdGVycywgb3RoZXJ3aXNlIHNlY3JldHMgbWFuYWdlciB3b24ndCBiZVxuICAvLyBhYmxlIHRvIGZpbmQgdGhlIHNlY3JldCB1c2luZyBhIHBhcnRpYWwgQVJOLlxuICBpZiAoLy0oLil7Nn0kLy50ZXN0KHNlY3JldE5hbWUpKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgXCJ0aGUgc2VjcmV0IG5hbWUgc2hvdWxkIG5vdCBlbmQgd2l0aCBhIGh5cGhlbiBhbmQgNiBjaGFyYWN0ZXJzXCIsXG4gICAgKTtcbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IEpXVF9TRUNSRVRfTkFNRSA9IFwib3JjYWJ1cy90b2tlbi1zZXJ2aWNlLWp3dFwiOyAvLyBwcmFnbWE6IGFsbG93bGlzdCBzZWNyZXRcbnZhbGlkYXRlU2VjcmV0TmFtZShKV1RfU0VDUkVUX05BTUUpO1xuIl19
package/utils/index.d.ts CHANGED
@@ -11,7 +11,3 @@ export declare function resolveStageName(scope: Construct): StageName;
11
11
  * Stringify the message data.
12
12
  */
13
13
  export declare function synthesisMessageToString(sm: SynthesisMessage): string;
14
- /**
15
- * Validate the secret name so that it doesn't end with 6 characters and a hyphen.
16
- */
17
- export declare const validateSecretName: (secretName: string) => void;
package/utils/index.js CHANGED
@@ -5,7 +5,6 @@
5
5
  *
6
6
  */
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.validateSecretName = void 0;
9
8
  exports.resolveStageName = resolveStageName;
10
9
  exports.synthesisMessageToString = synthesisMessageToString;
11
10
  const aws_cdk_lib_1 = require("aws-cdk-lib");
@@ -21,12 +20,12 @@ function resolveStageName(scope) {
21
20
  // but the stage name is provided as a construct attribute.
22
21
  const stackObj = scope.node.scope;
23
22
  const propertyNames = Object.getOwnPropertyNames(stackObj);
24
- if (!propertyNames.includes('stageName')) {
23
+ if (!propertyNames.includes("stageName")) {
25
24
  throw new Error(`Account ID ${aws_cdk_lib_1.Stack.of(scope).account} not found in accountIdAlias.
26
25
  Please set 'stageName' as a construct attribute in your stack as a fallback`);
27
26
  }
28
27
  // If 'stageName' is present, return it as a StageName
29
- return Object(stackObj)['stageName'];
28
+ return Object(stackObj)["stageName"];
30
29
  }
31
30
  return match[0];
32
31
  }
@@ -36,15 +35,4 @@ function resolveStageName(scope) {
36
35
  function synthesisMessageToString(sm) {
37
36
  return `${JSON.stringify(sm.entry.data)} [${sm.id}]`;
38
37
  }
39
- /**
40
- * Validate the secret name so that it doesn't end with 6 characters and a hyphen.
41
- */
42
- const validateSecretName = (secretName) => {
43
- // Note, this should not end with a hyphen and 6 characters, otherwise secrets manager won't be
44
- // able to find the secret using a partial ARN.
45
- if (/-(.){6}$/.test(secretName)) {
46
- throw new Error("the secret name should not end with a hyphen and 6 characters");
47
- }
48
- };
49
- exports.validateSecretName = validateSecretName;
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7R0FJRzs7O0FBUUgsNENBeUJDO0FBS0QsNERBRUM7QUFyQ0QsNkNBQW9DO0FBRXBDLHdEQUFtRTtBQUduRSxTQUFnQixnQkFBZ0IsQ0FBQyxLQUFnQjtJQUMvQywrREFBK0Q7SUFDL0QsK0RBQStEO0lBQy9ELHFGQUFxRjtJQUNyRixNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLHlCQUFjLENBQUMsQ0FBQyxJQUFJLENBQy9DLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRSxDQUFDLEtBQUssS0FBSyxtQkFBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFPLENBQ2xELENBQUM7SUFFRixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDWCw2REFBNkQ7UUFDN0QsK0VBQStFO1FBQy9FLDJEQUEyRDtRQUMzRCxNQUFNLFFBQVEsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUNsQyxNQUFNLGFBQWEsR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDM0QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQztZQUN6QyxNQUFNLElBQUksS0FBSyxDQUNiLGNBQWMsbUJBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBTztvRkFDdUMsQ0FDN0UsQ0FBQztRQUNKLENBQUM7UUFDRCxzREFBc0Q7UUFDdEQsT0FBTyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsV0FBVyxDQUFjLENBQUM7SUFDcEQsQ0FBQztJQUVELE9BQU8sS0FBSyxDQUFDLENBQUMsQ0FBYyxDQUFDO0FBQy9CLENBQUM7QUFFRDs7R0FFRztBQUNILFNBQWdCLHdCQUF3QixDQUFDLEVBQW9CO0lBQzNELE9BQU8sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLEVBQUUsR0FBRyxDQUFDO0FBQ3ZELENBQUM7QUFFRDs7R0FFRztBQUNJLE1BQU0sa0JBQWtCLEdBQUcsQ0FBQyxVQUFrQixFQUFFLEVBQUU7SUFDdkQsK0ZBQStGO0lBQy9GLCtDQUErQztJQUMvQyxJQUFJLFVBQVUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztRQUNoQyxNQUFNLElBQUksS0FBSyxDQUNiLCtEQUErRCxDQUNoRSxDQUFDO0lBQ0osQ0FBQztBQUNILENBQUMsQ0FBQztBQVJXLFFBQUEsa0JBQWtCLHNCQVE3QiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICpcbiAqIFNoYXJlZCBjb25maWd1cmF0aW9uIHNob3VsZCBub3cgYmUgcGxhY2VkIGluIHRoZSBzaGFyZWQtY29uZmlnIHBhY2thZ2UuXG4gKlxuICovXG5cbmltcG9ydCB7Q29uc3RydWN0fSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHsgU3RhY2sgfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IFN5bnRoZXNpc01lc3NhZ2UgfSBmcm9tIFwiYXdzLWNkay1saWIvY3gtYXBpXCI7XG5pbXBvcnQge2FjY291bnRJZEFsaWFzLCBTdGFnZU5hbWV9IGZyb20gXCIuLi9zaGFyZWQtY29uZmlnL2FjY291bnRzXCJcblxuXG5leHBvcnQgZnVuY3Rpb24gcmVzb2x2ZVN0YWdlTmFtZShzY29wZTogQ29uc3RydWN0KTogU3RhZ2VOYW1lIHtcbiAgLy8gU2VlIGRpc2N1c3Npb24gaW4gaHR0cHM6Ly9naXRodWIuY29tL2F3cy9hd3MtY2RrL2lzc3Vlcy8xNzU0XG4gIC8vIFVzZSBTdGFjay5vZihzY29wZSkuYWNjb3VudCB0byBnZXQgdGhlIGFjY291bnQgSUQgaW5zdGVhZCBvZlxuICAvLyBjZGsuQXdzLkFDQ09VTlRfSUQsIHdoaWNoIG1heSBub3QgYmUgYXZhaWxhYmxlIGF0IHRoaXMgcG9pbnQgaW4gdGhlIENESyBsaWZlY3ljbGUuXG4gIGNvbnN0IG1hdGNoID0gT2JqZWN0LmVudHJpZXMoYWNjb3VudElkQWxpYXMpLmZpbmQoXG4gICAgKFtfLCB2YWx1ZV0pID0+IHZhbHVlID09PSBTdGFjay5vZihzY29wZSkuYWNjb3VudCxcbiAgKTtcblxuICBpZiAoIW1hdGNoKSB7XG4gICAgLy8gQ2hlY2sgaWYgJ3N0YWdlTmFtZScgaXMgYSBwcm9wZXJ0eSBpbiB0aGUgdmFyaWFibGUgJ3Njb3BlJ1xuICAgIC8vIFRoaXMgaXMgdXNlZnVsIGZvciBjYXNlcyB3aGVyZSB0aGUgYWNjb3VudCBJRCBpcyBub3QgZm91bmQgaW4gYWNjb3VudElkQWxpYXNcbiAgICAvLyBidXQgdGhlIHN0YWdlIG5hbWUgaXMgcHJvdmlkZWQgYXMgYSBjb25zdHJ1Y3QgYXR0cmlidXRlLlxuICAgIGNvbnN0IHN0YWNrT2JqID0gc2NvcGUubm9kZS5zY29wZTtcbiAgICBjb25zdCBwcm9wZXJ0eU5hbWVzID0gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMoc3RhY2tPYmopO1xuICAgIGlmICghcHJvcGVydHlOYW1lcy5pbmNsdWRlcygnc3RhZ2VOYW1lJykpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgYEFjY291bnQgSUQgJHtTdGFjay5vZihzY29wZSkuYWNjb3VudH0gbm90IGZvdW5kIGluIGFjY291bnRJZEFsaWFzLlxuICAgICAgICBQbGVhc2Ugc2V0ICdzdGFnZU5hbWUnIGFzIGEgY29uc3RydWN0IGF0dHJpYnV0ZSBpbiB5b3VyIHN0YWNrIGFzIGEgZmFsbGJhY2tgLFxuICAgICAgKTtcbiAgICB9XG4gICAgLy8gSWYgJ3N0YWdlTmFtZScgaXMgcHJlc2VudCwgcmV0dXJuIGl0IGFzIGEgU3RhZ2VOYW1lXG4gICAgcmV0dXJuIE9iamVjdChzdGFja09iailbJ3N0YWdlTmFtZSddIGFzIFN0YWdlTmFtZTtcbiAgfVxuXG4gIHJldHVybiBtYXRjaFswXSBhcyBTdGFnZU5hbWU7XG59XG5cbi8qKlxuICogU3RyaW5naWZ5IHRoZSBtZXNzYWdlIGRhdGEuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzeW50aGVzaXNNZXNzYWdlVG9TdHJpbmcoc206IFN5bnRoZXNpc01lc3NhZ2UpOiBzdHJpbmcge1xuICByZXR1cm4gYCR7SlNPTi5zdHJpbmdpZnkoc20uZW50cnkuZGF0YSl9IFske3NtLmlkfV1gO1xufVxuXG4vKipcbiAqIFZhbGlkYXRlIHRoZSBzZWNyZXQgbmFtZSBzbyB0aGF0IGl0IGRvZXNuJ3QgZW5kIHdpdGggNiBjaGFyYWN0ZXJzIGFuZCBhIGh5cGhlbi5cbiAqL1xuZXhwb3J0IGNvbnN0IHZhbGlkYXRlU2VjcmV0TmFtZSA9IChzZWNyZXROYW1lOiBzdHJpbmcpID0+IHtcbiAgLy8gTm90ZSwgdGhpcyBzaG91bGQgbm90IGVuZCB3aXRoIGEgaHlwaGVuIGFuZCA2IGNoYXJhY3RlcnMsIG90aGVyd2lzZSBzZWNyZXRzIG1hbmFnZXIgd29uJ3QgYmVcbiAgLy8gYWJsZSB0byBmaW5kIHRoZSBzZWNyZXQgdXNpbmcgYSBwYXJ0aWFsIEFSTi5cbiAgaWYgKC8tKC4pezZ9JC8udGVzdChzZWNyZXROYW1lKSkge1xuICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgIFwidGhlIHNlY3JldCBuYW1lIHNob3VsZCBub3QgZW5kIHdpdGggYSBoeXBoZW4gYW5kIDYgY2hhcmFjdGVyc1wiLFxuICAgICk7XG4gIH1cbn07XG4iXX0=
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7R0FJRzs7QUFPSCw0Q0F5QkM7QUFLRCw0REFFQztBQXBDRCw2Q0FBb0M7QUFFcEMsd0RBQXNFO0FBRXRFLFNBQWdCLGdCQUFnQixDQUFDLEtBQWdCO0lBQy9DLCtEQUErRDtJQUMvRCwrREFBK0Q7SUFDL0QscUZBQXFGO0lBQ3JGLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMseUJBQWMsQ0FBQyxDQUFDLElBQUksQ0FDL0MsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsS0FBSyxLQUFLLG1CQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQU8sQ0FDbEQsQ0FBQztJQUVGLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNYLDZEQUE2RDtRQUM3RCwrRUFBK0U7UUFDL0UsMkRBQTJEO1FBQzNELE1BQU0sUUFBUSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQ2xDLE1BQU0sYUFBYSxHQUFHLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUMzRCxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO1lBQ3pDLE1BQU0sSUFBSSxLQUFLLENBQ2IsY0FBYyxtQkFBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFPO29GQUN1QyxDQUM3RSxDQUFDO1FBQ0osQ0FBQztRQUNELHNEQUFzRDtRQUN0RCxPQUFPLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxXQUFXLENBQWMsQ0FBQztJQUNwRCxDQUFDO0lBRUQsT0FBTyxLQUFLLENBQUMsQ0FBQyxDQUFjLENBQUM7QUFDL0IsQ0FBQztBQUVEOztHQUVHO0FBQ0gsU0FBZ0Isd0JBQXdCLENBQUMsRUFBb0I7SUFDM0QsT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsRUFBRSxHQUFHLENBQUM7QUFDdkQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICpcbiAqIFNoYXJlZCBjb25maWd1cmF0aW9uIHNob3VsZCBub3cgYmUgcGxhY2VkIGluIHRoZSBzaGFyZWQtY29uZmlnIHBhY2thZ2UuXG4gKlxuICovXG5cbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBTdGFjayB9IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0IHsgU3ludGhlc2lzTWVzc2FnZSB9IGZyb20gXCJhd3MtY2RrLWxpYi9jeC1hcGlcIjtcbmltcG9ydCB7IGFjY291bnRJZEFsaWFzLCBTdGFnZU5hbWUgfSBmcm9tIFwiLi4vc2hhcmVkLWNvbmZpZy9hY2NvdW50c1wiO1xuXG5leHBvcnQgZnVuY3Rpb24gcmVzb2x2ZVN0YWdlTmFtZShzY29wZTogQ29uc3RydWN0KTogU3RhZ2VOYW1lIHtcbiAgLy8gU2VlIGRpc2N1c3Npb24gaW4gaHR0cHM6Ly9naXRodWIuY29tL2F3cy9hd3MtY2RrL2lzc3Vlcy8xNzU0XG4gIC8vIFVzZSBTdGFjay5vZihzY29wZSkuYWNjb3VudCB0byBnZXQgdGhlIGFjY291bnQgSUQgaW5zdGVhZCBvZlxuICAvLyBjZGsuQXdzLkFDQ09VTlRfSUQsIHdoaWNoIG1heSBub3QgYmUgYXZhaWxhYmxlIGF0IHRoaXMgcG9pbnQgaW4gdGhlIENESyBsaWZlY3ljbGUuXG4gIGNvbnN0IG1hdGNoID0gT2JqZWN0LmVudHJpZXMoYWNjb3VudElkQWxpYXMpLmZpbmQoXG4gICAgKFtfLCB2YWx1ZV0pID0+IHZhbHVlID09PSBTdGFjay5vZihzY29wZSkuYWNjb3VudCxcbiAgKTtcblxuICBpZiAoIW1hdGNoKSB7XG4gICAgLy8gQ2hlY2sgaWYgJ3N0YWdlTmFtZScgaXMgYSBwcm9wZXJ0eSBpbiB0aGUgdmFyaWFibGUgJ3Njb3BlJ1xuICAgIC8vIFRoaXMgaXMgdXNlZnVsIGZvciBjYXNlcyB3aGVyZSB0aGUgYWNjb3VudCBJRCBpcyBub3QgZm91bmQgaW4gYWNjb3VudElkQWxpYXNcbiAgICAvLyBidXQgdGhlIHN0YWdlIG5hbWUgaXMgcHJvdmlkZWQgYXMgYSBjb25zdHJ1Y3QgYXR0cmlidXRlLlxuICAgIGNvbnN0IHN0YWNrT2JqID0gc2NvcGUubm9kZS5zY29wZTtcbiAgICBjb25zdCBwcm9wZXJ0eU5hbWVzID0gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMoc3RhY2tPYmopO1xuICAgIGlmICghcHJvcGVydHlOYW1lcy5pbmNsdWRlcyhcInN0YWdlTmFtZVwiKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBgQWNjb3VudCBJRCAke1N0YWNrLm9mKHNjb3BlKS5hY2NvdW50fSBub3QgZm91bmQgaW4gYWNjb3VudElkQWxpYXMuXG4gICAgICAgIFBsZWFzZSBzZXQgJ3N0YWdlTmFtZScgYXMgYSBjb25zdHJ1Y3QgYXR0cmlidXRlIGluIHlvdXIgc3RhY2sgYXMgYSBmYWxsYmFja2AsXG4gICAgICApO1xuICAgIH1cbiAgICAvLyBJZiAnc3RhZ2VOYW1lJyBpcyBwcmVzZW50LCByZXR1cm4gaXQgYXMgYSBTdGFnZU5hbWVcbiAgICByZXR1cm4gT2JqZWN0KHN0YWNrT2JqKVtcInN0YWdlTmFtZVwiXSBhcyBTdGFnZU5hbWU7XG4gIH1cblxuICByZXR1cm4gbWF0Y2hbMF0gYXMgU3RhZ2VOYW1lO1xufVxuXG4vKipcbiAqIFN0cmluZ2lmeSB0aGUgbWVzc2FnZSBkYXRhLlxuICovXG5leHBvcnQgZnVuY3Rpb24gc3ludGhlc2lzTWVzc2FnZVRvU3RyaW5nKHNtOiBTeW50aGVzaXNNZXNzYWdlKTogc3RyaW5nIHtcbiAgcmV0dXJuIGAke0pTT04uc3RyaW5naWZ5KHNtLmVudHJ5LmRhdGEpfSBbJHtzbS5pZH1dYDtcbn1cbiJdfQ==