@orcabus/platform-cdk-constructs 0.0.31 → 0.0.32

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
@@ -4064,7 +4064,7 @@
4064
4064
  "line": 22
4065
4065
  },
4066
4066
  "readme": {
4067
- "markdown": "# MonitoredQueue\n\nA construct creating an SQS queue that has an attached dead-letter queue and an alarm that triggers when a message\narrives in the dead-letter queue. An SNS topic can also be notified when the alarm triggers.\n\nUsage example:\n\n```ts\nnew MonitoredQueue(this, \"MonitoredQueue\", {\n queueProps: {\n queueName: \"queue\",\n removalPolicy: RemovalPolicy.RETAIN,\n },\n dlqProps: {\n queueName: `$queue-dlq`,\n removalPolicy: RemovalPolicy.RETAIN,\n retentionPeriod: Duration.days(14),\n },\n snsTopicArn: SlackAlerts.formatArn(this),\n});\n```\n"
4067
+ "markdown": "# MonitoredQueue\n\nA construct creating an SQS queue that has an attached dead-letter queue and an alarm that triggers when a message\narrives in the dead-letter queue. An SNS topic can also be notified when the alarm triggers.\n\nUsage example:\n\n```ts\nnew MonitoredQueue(this, \"MonitoredQueue\", {\n queueProps: {\n queueName: \"queue\",\n removalPolicy: RemovalPolicy.RETAIN,\n },\n dlqProps: {\n queueName: \"queue-dlq\",\n removalPolicy: RemovalPolicy.RETAIN,\n retentionPeriod: Duration.days(14),\n },\n snsTopicArn: SlackAlerts.formatArn(this),\n});\n```\n"
4068
4068
  },
4069
4069
  "symbolId": "monitored-queue/index:"
4070
4070
  },
@@ -6077,34 +6077,6 @@
6077
6077
  "filename": "monitored-queue/index.ts",
6078
6078
  "line": 58
6079
6079
  },
6080
- "methods": [
6081
- {
6082
- "docs": {
6083
- "stability": "experimental",
6084
- "summary": "Create an alarm based on the oldest message in the queue."
6085
- },
6086
- "locationInModule": {
6087
- "filename": "monitored-queue/index.ts",
6088
- "line": 100
6089
- },
6090
- "name": "alarmOldestMessage",
6091
- "parameters": [
6092
- {
6093
- "name": "queue",
6094
- "type": {
6095
- "fqn": "aws-cdk-lib.aws_sqs.IQueue"
6096
- }
6097
- },
6098
- {
6099
- "name": "queueProps",
6100
- "optional": true,
6101
- "type": {
6102
- "fqn": "@orcabus/platform-cdk-constructs.monitoredQueue.QueueProps"
6103
- }
6104
- }
6105
- ]
6106
- }
6107
- ],
6108
6080
  "name": "MonitoredQueue",
6109
6081
  "namespace": "monitoredQueue",
6110
6082
  "properties": [
@@ -6158,7 +6130,7 @@
6158
6130
  "immutable": true,
6159
6131
  "locationInModule": {
6160
6132
  "filename": "monitored-queue/index.ts",
6161
- "line": 120
6133
+ "line": 125
6162
6134
  },
6163
6135
  "name": "queueArn",
6164
6136
  "type": {
@@ -6786,6 +6758,6 @@
6786
6758
  "symbolId": "shared-config/slack:SlackAlerts"
6787
6759
  }
6788
6760
  },
6789
- "version": "0.0.31",
6790
- "fingerprint": "aCIYm0L3iEOYjQiLW8vdliK7wu0CTi82ZuIeXc8j9P4="
6761
+ "version": "0.0.32",
6762
+ "fingerprint": "/y6PddeYVaB7SdoArjsIvlK6+mfMn92G8Pbz2ybjOaU="
6791
6763
  }
@@ -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.31" };
18
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.apigateway.OrcaBusApiGateway", version: "0.0.32" };
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.31" };
16
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.deploymentPipeline.CrossDeploymentArtifactBucket", version: "0.0.32" };
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.31" };
34
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.deploymentPipeline.DeploymentStackPipeline", version: "0.0.32" };
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.31" };
43
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.dynamodb.DynamoDbPartitionedConstruct", version: "0.0.32" };
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.31" };
78
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.dynamodb.DynamoDbNonPartitionedConstruct", version: "0.0.32" };
79
79
  table;
80
80
  constructor(scope, id, props) {
81
81
  super(scope, id);
package/ecs/index.js CHANGED
@@ -55,7 +55,7 @@ exports.LAMBDA_ARCHITECTURE_MAP = {
55
55
  ['ARM64']: lambda.Architecture.ARM_64
56
56
  };
57
57
  class EcsFargateTaskConstruct extends constructs_1.Construct {
58
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.ecs.EcsFargateTaskConstruct", version: "0.0.31" };
58
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.ecs.EcsFargateTaskConstruct", version: "0.0.32" };
59
59
  cluster;
60
60
  taskDefinition;
61
61
  taskExecutionRole;
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.31" };
59
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.lambda.PythonUvFunction", version: "0.0.32" };
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
@@ -12,7 +12,7 @@ new MonitoredQueue(this, "MonitoredQueue", {
12
12
  removalPolicy: RemovalPolicy.RETAIN,
13
13
  },
14
14
  dlqProps: {
15
- queueName: `$queue-dlq`,
15
+ queueName: "queue-dlq",
16
16
  removalPolicy: RemovalPolicy.RETAIN,
17
17
  retentionPeriod: Duration.days(14),
18
18
  },
@@ -1,5 +1,5 @@
1
1
  import { Construct } from "constructs";
2
- import { IQueue, Queue } from "aws-cdk-lib/aws-sqs";
2
+ import { Queue } from "aws-cdk-lib/aws-sqs";
3
3
  import { Alarm } from "aws-cdk-lib/aws-cloudwatch";
4
4
  import { Duration, RemovalPolicy } from "aws-cdk-lib";
5
5
  /**
@@ -58,7 +58,7 @@ export declare class MonitoredQueue extends Construct {
58
58
  /**
59
59
  * Create an alarm based on the oldest message in the queue.
60
60
  */
61
- alarmOldestMessage(queue: IQueue, queueProps?: QueueProps): void;
61
+ private alarmOldestMessage;
62
62
  /**
63
63
  * Get the SQS queue ARN.
64
64
  */
@@ -13,7 +13,7 @@ const aws_cloudwatch_actions_1 = require("aws-cdk-lib/aws-cloudwatch-actions");
13
13
  * SNS topic.
14
14
  */
15
15
  class MonitoredQueue extends constructs_1.Construct {
16
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.monitoredQueue.MonitoredQueue", version: "0.0.31" };
16
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.monitoredQueue.MonitoredQueue", version: "0.0.32" };
17
17
  queue;
18
18
  deadLetterQueue;
19
19
  alarm;
@@ -23,7 +23,7 @@ class MonitoredQueue extends constructs_1.Construct {
23
23
  enforceSSL: true,
24
24
  ...props.dlqProps,
25
25
  });
26
- this.alarmOldestMessage(this.deadLetterQueue, props.dlqProps);
26
+ const dlqAlarm = this.alarmOldestMessage(this.deadLetterQueue, props.dlqProps);
27
27
  this.queue = new aws_sqs_1.Queue(this, "Queue", {
28
28
  enforceSSL: true,
29
29
  deadLetterQueue: {
@@ -32,7 +32,7 @@ class MonitoredQueue extends constructs_1.Construct {
32
32
  },
33
33
  ...props.queueProps,
34
34
  });
35
- this.alarmOldestMessage(this.queue, props.queueProps);
35
+ const queueAlarm = this.alarmOldestMessage(this.queue, props.queueProps);
36
36
  this.alarm = new aws_cloudwatch_1.Alarm(this, "Alarm", {
37
37
  metric: this.deadLetterQueue.metricApproximateNumberOfMessagesVisible(),
38
38
  comparisonOperator: aws_cloudwatch_1.ComparisonOperator.GREATER_THAN_THRESHOLD,
@@ -44,6 +44,8 @@ class MonitoredQueue extends constructs_1.Construct {
44
44
  if (props.snsTopicArn !== undefined) {
45
45
  const topic = aws_sns_1.Topic.fromTopicArn(this, "Topic", props.snsTopicArn);
46
46
  this.alarm.addAlarmAction(new aws_cloudwatch_actions_1.SnsAction(topic));
47
+ dlqAlarm?.addAlarmAction(new aws_cloudwatch_actions_1.SnsAction(topic));
48
+ queueAlarm?.addAlarmAction(new aws_cloudwatch_actions_1.SnsAction(topic));
47
49
  }
48
50
  }
49
51
  /**
@@ -55,7 +57,7 @@ class MonitoredQueue extends constructs_1.Construct {
55
57
  const uniqueId = aws_cdk_lib_1.Names.uniqueResourceName(this, {
56
58
  maxLength: 6,
57
59
  });
58
- new aws_cloudwatch_1.Alarm(this, `AlarmOldestMessage-${queueProps?.queueName}-${uniqueId}`, {
60
+ return new aws_cloudwatch_1.Alarm(this, `AlarmOldestMessage-${queueProps?.queueName}-${uniqueId}`, {
59
61
  metric: queue.metricApproximateAgeOfOldestMessage(),
60
62
  comparisonOperator: aws_cloudwatch_1.ComparisonOperator.GREATER_THAN_THRESHOLD,
61
63
  threshold: seconds,
@@ -64,6 +66,7 @@ class MonitoredQueue extends constructs_1.Construct {
64
66
  alarmDescription: `The age of the oldest message has exceeded ${seconds} seconds.`,
65
67
  });
66
68
  }
69
+ return null;
67
70
  }
68
71
  /**
69
72
  * Get the SQS queue ARN.
@@ -73,4 +76,4 @@ class MonitoredQueue extends constructs_1.Construct {
73
76
  }
74
77
  }
75
78
  exports.MonitoredQueue = MonitoredQueue;
76
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsMkNBQXVDO0FBQ3ZDLGlEQUFrRDtBQUNsRCwrREFBdUU7QUFDdkUsNkNBQTJEO0FBQzNELGlEQUE0QztBQUM1QywrRUFBK0Q7QUFnRC9EOzs7R0FHRztBQUNILE1BQWEsY0FBZSxTQUFRLHNCQUFTOztJQUNsQyxLQUFLLENBQVE7SUFDYixlQUFlLENBQVE7SUFDdkIsS0FBSyxDQUFRO0lBRXRCLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBMEI7UUFDbEUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksZUFBSyxDQUFDLElBQUksRUFBRSxpQkFBaUIsRUFBRTtZQUN4RCxVQUFVLEVBQUUsSUFBSTtZQUNoQixHQUFHLEtBQUssQ0FBQyxRQUFRO1NBQ2xCLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUU5RCxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksZUFBSyxDQUFDLElBQUksRUFBRSxPQUFPLEVBQUU7WUFDcEMsVUFBVSxFQUFFLElBQUk7WUFDaEIsZUFBZSxFQUFFO2dCQUNmLGVBQWUsRUFBRSxLQUFLLENBQUMsZUFBZSxJQUFJLENBQUM7Z0JBQzNDLEtBQUssRUFBRSxJQUFJLENBQUMsZUFBZTthQUM1QjtZQUNELEdBQUcsS0FBSyxDQUFDLFVBQVU7U0FDcEIsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRXRELElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxzQkFBSyxDQUFDLElBQUksRUFBRSxPQUFPLEVBQUU7WUFDcEMsTUFBTSxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsd0NBQXdDLEVBQUU7WUFDdkUsa0JBQWtCLEVBQUUsbUNBQWtCLENBQUMsc0JBQXNCO1lBQzdELFNBQVMsRUFBRSxDQUFDO1lBQ1osaUJBQWlCLEVBQUUsQ0FBQztZQUNwQixTQUFTLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsUUFBUTtZQUMxQyxnQkFBZ0IsRUFBRSxzREFBc0Q7U0FDekUsQ0FBQyxDQUFDO1FBRUgsSUFBSSxLQUFLLENBQUMsV0FBVyxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQ3BDLE1BQU0sS0FBSyxHQUFHLGVBQUssQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDbkUsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsSUFBSSxrQ0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDbEQsQ0FBQztJQUNILENBQUM7SUFFRDs7T0FFRztJQUNILGtCQUFrQixDQUFDLEtBQWEsRUFBRSxVQUF1QjtRQUN2RCxNQUFNLE9BQU8sR0FBRyxVQUFVLEVBQUUseUJBQXlCLENBQUM7UUFDdEQsSUFBSSxPQUFPLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDMUIsTUFBTSxRQUFRLEdBQUcsbUJBQUssQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLEVBQUU7Z0JBQzlDLFNBQVMsRUFBRSxDQUFDO2FBQ2IsQ0FBQyxDQUFDO1lBQ0gsSUFBSSxzQkFBSyxDQUFDLElBQUksRUFBRSxzQkFBc0IsVUFBVSxFQUFFLFNBQVMsSUFBSSxRQUFRLEVBQUUsRUFBRTtnQkFDekUsTUFBTSxFQUFFLEtBQUssQ0FBQyxtQ0FBbUMsRUFBRTtnQkFDbkQsa0JBQWtCLEVBQUUsbUNBQWtCLENBQUMsc0JBQXNCO2dCQUM3RCxTQUFTLEVBQUUsT0FBTztnQkFDbEIsaUJBQWlCLEVBQUUsQ0FBQztnQkFDcEIsU0FBUyxFQUFFLEdBQUcsS0FBSyxDQUFDLFNBQVMsdUJBQXVCO2dCQUNwRCxnQkFBZ0IsRUFBRSw4Q0FBOEMsT0FBTyxXQUFXO2FBQ25GLENBQUMsQ0FBQztRQUNMLENBQUM7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDO0lBQzdCLENBQUM7O0FBaEVILHdDQWlFQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQge0lRdWV1ZSwgUXVldWV9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3Mtc3FzXCI7XG5pbXBvcnQgeyBBbGFybSwgQ29tcGFyaXNvbk9wZXJhdG9yIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1jbG91ZHdhdGNoXCI7XG5pbXBvcnQge0R1cmF0aW9uLCBOYW1lcywgUmVtb3ZhbFBvbGljeX0gZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQgeyBUb3BpYyB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3Mtc25zXCI7XG5pbXBvcnQgeyBTbnNBY3Rpb24gfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWNsb3Vkd2F0Y2gtYWN0aW9uc1wiO1xuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIHRoZSBtb25pdG9yZWQgcXVldWUuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTW9uaXRvcmVkUXVldWVQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgcHJvcHMgZm9yIHRoZSBtYWluIFNRUyBxdWV1ZS5cbiAgICovXG4gIHJlYWRvbmx5IHF1ZXVlUHJvcHM/OiBRdWV1ZVByb3BzO1xuICAvKipcbiAgICogVGhlIHByb3BzIGZvciB0aGUgZGVhZC1sZXR0ZXIgU1FTIHF1ZXVlIHdoZW4gYSBtZXNzYWdlIGZhaWxzLlxuICAgKi9cbiAgcmVhZG9ubHkgZGxxUHJvcHM/OiBRdWV1ZVByb3BzO1xuICAvKipcbiAgICogVGhlIG1heGltdW0gbnVtYmVyIG9mIHRpbWVzIGEgbWVzc2FnZSBjYW4gYmUgdW5zdWNjZXNzZnVsbHkgcmVjZWl2ZWQgYmVmb3JlXG4gICAqIHB1c2hpbmcgaXQgdG8gdGhlIERMUS4gRGVmYXVsdHMgdG8gMy5cbiAgICovXG4gIHJlYWRvbmx5IG1heFJlY2VpdmVDb3VudD86IG51bWJlcjtcbiAgLyoqXG4gICAqIFNlbmQgdGhlIGFsYXJtIG5vdGlmaWNhdGlvbiB0byB0aGUgU05TIHRvcGljIHdpdGggdGhlIEFSTi5cbiAgICovXG4gIHJlYWRvbmx5IHNuc1RvcGljQXJuPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGFuIFNRUyBxdWV1ZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBRdWV1ZVByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBxdWV1ZSB0byBjb25zdHJ1Y3QuIERlZmF1bHRzIHRvIHRoZSBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBuYW1lLlxuICAgKi9cbiAgcmVhZG9ubHkgcXVldWVOYW1lPzogc3RyaW5nO1xuICAvKipcbiAgICogSG93IGxvbmcgbWVzc2FnZXMgc3RheSBpbiB0aGUgcXVldWUuXG4gICAqL1xuICByZWFkb25seSByZXRlbnRpb25QZXJpb2Q/OiBEdXJhdGlvbjtcbiAgLyoqXG4gICAqIFRoZSByZW1vdmFsIHBvbGljeSBvZiB0aGUgcXVldWUuXG4gICAqL1xuICByZWFkb25seSByZW1vdmFsUG9saWN5PzogUmVtb3ZhbFBvbGljeTtcbiAgLyoqXG4gICAqIFNldCBhbiBhbGFybSB3aGVuIHRoZSBhZ2Ugb2YgdGhlIG9sZGVzdCBtZXNzYWdlIGluIHRoZSBxdWV1ZSBleGNlZWRzIHRoZSBudW1iZXIgb2Ygc2Vjb25kcyBzcGVjaWZpZWQuXG4gICAqIERlZmF1bHRzIHRvIG5vIGFsYXJtIGJhc2VkIG9uIHRoZSBvbGRlc3QgbWVzc2FnZS5cbiAgICovXG4gIHJlYWRvbmx5IGFsYXJtT2xkZXN0TWVzc2FnZVNlY29uZHM/OiBudW1iZXI7XG59XG5cbi8qKlxuICogQSBjb25zdHJ1Y3QgdGhhdCBkZWZpbmVzIGFuIFNRUyBxdWV1ZSwgYWxvbmcgd2l0aCBhIERMUSBhbmQgQ2xvdWRXYXRjaCBhbGFybXMgdGhhdCBjYW4gbm90aWZ5IGFuXG4gKiBTTlMgdG9waWMuXG4gKi9cbmV4cG9ydCBjbGFzcyBNb25pdG9yZWRRdWV1ZSBleHRlbmRzIENvbnN0cnVjdCB7XG4gIHJlYWRvbmx5IHF1ZXVlOiBRdWV1ZTtcbiAgcmVhZG9ubHkgZGVhZExldHRlclF1ZXVlOiBRdWV1ZTtcbiAgcmVhZG9ubHkgYWxhcm06IEFsYXJtO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBNb25pdG9yZWRRdWV1ZVByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIHRoaXMuZGVhZExldHRlclF1ZXVlID0gbmV3IFF1ZXVlKHRoaXMsIFwiRGVhZExldHRlclF1ZXVlXCIsIHtcbiAgICAgIGVuZm9yY2VTU0w6IHRydWUsXG4gICAgICAuLi5wcm9wcy5kbHFQcm9wcyxcbiAgICB9KTtcbiAgICB0aGlzLmFsYXJtT2xkZXN0TWVzc2FnZSh0aGlzLmRlYWRMZXR0ZXJRdWV1ZSwgcHJvcHMuZGxxUHJvcHMpO1xuXG4gICAgdGhpcy5xdWV1ZSA9IG5ldyBRdWV1ZSh0aGlzLCBcIlF1ZXVlXCIsIHtcbiAgICAgIGVuZm9yY2VTU0w6IHRydWUsXG4gICAgICBkZWFkTGV0dGVyUXVldWU6IHtcbiAgICAgICAgbWF4UmVjZWl2ZUNvdW50OiBwcm9wcy5tYXhSZWNlaXZlQ291bnQgPz8gMyxcbiAgICAgICAgcXVldWU6IHRoaXMuZGVhZExldHRlclF1ZXVlLFxuICAgICAgfSxcbiAgICAgIC4uLnByb3BzLnF1ZXVlUHJvcHMsXG4gICAgfSk7XG4gICAgdGhpcy5hbGFybU9sZGVzdE1lc3NhZ2UodGhpcy5xdWV1ZSwgcHJvcHMucXVldWVQcm9wcyk7XG5cbiAgICB0aGlzLmFsYXJtID0gbmV3IEFsYXJtKHRoaXMsIFwiQWxhcm1cIiwge1xuICAgICAgbWV0cmljOiB0aGlzLmRlYWRMZXR0ZXJRdWV1ZS5tZXRyaWNBcHByb3hpbWF0ZU51bWJlck9mTWVzc2FnZXNWaXNpYmxlKCksXG4gICAgICBjb21wYXJpc29uT3BlcmF0b3I6IENvbXBhcmlzb25PcGVyYXRvci5HUkVBVEVSX1RIQU5fVEhSRVNIT0xELFxuICAgICAgdGhyZXNob2xkOiAwLFxuICAgICAgZXZhbHVhdGlvblBlcmlvZHM6IDEsXG4gICAgICBhbGFybU5hbWU6IGAke3RoaXMucXVldWUucXVldWVOYW1lfS1hbGFybWAsXG4gICAgICBhbGFybURlc2NyaXB0aW9uOiBcIkFuIGV2ZW50IGhhcyBiZWVuIHJlY2VpdmVkIGluIHRoZSBkZWFkIGxldHRlciBxdWV1ZS5cIixcbiAgICB9KTtcblxuICAgIGlmIChwcm9wcy5zbnNUb3BpY0FybiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBjb25zdCB0b3BpYyA9IFRvcGljLmZyb21Ub3BpY0Fybih0aGlzLCBcIlRvcGljXCIsIHByb3BzLnNuc1RvcGljQXJuKTtcbiAgICAgIHRoaXMuYWxhcm0uYWRkQWxhcm1BY3Rpb24obmV3IFNuc0FjdGlvbih0b3BpYykpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYW4gYWxhcm0gYmFzZWQgb24gdGhlIG9sZGVzdCBtZXNzYWdlIGluIHRoZSBxdWV1ZS5cbiAgICovXG4gIGFsYXJtT2xkZXN0TWVzc2FnZShxdWV1ZTogSVF1ZXVlLCBxdWV1ZVByb3BzPzogUXVldWVQcm9wcykge1xuICAgIGNvbnN0IHNlY29uZHMgPSBxdWV1ZVByb3BzPy5hbGFybU9sZGVzdE1lc3NhZ2VTZWNvbmRzO1xuICAgIGlmIChzZWNvbmRzICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGNvbnN0IHVuaXF1ZUlkID0gTmFtZXMudW5pcXVlUmVzb3VyY2VOYW1lKHRoaXMsIHtcbiAgICAgICAgbWF4TGVuZ3RoOiA2LFxuICAgICAgfSk7XG4gICAgICBuZXcgQWxhcm0odGhpcywgYEFsYXJtT2xkZXN0TWVzc2FnZS0ke3F1ZXVlUHJvcHM/LnF1ZXVlTmFtZX0tJHt1bmlxdWVJZH1gLCB7XG4gICAgICAgIG1ldHJpYzogcXVldWUubWV0cmljQXBwcm94aW1hdGVBZ2VPZk9sZGVzdE1lc3NhZ2UoKSxcbiAgICAgICAgY29tcGFyaXNvbk9wZXJhdG9yOiBDb21wYXJpc29uT3BlcmF0b3IuR1JFQVRFUl9USEFOX1RIUkVTSE9MRCxcbiAgICAgICAgdGhyZXNob2xkOiBzZWNvbmRzLFxuICAgICAgICBldmFsdWF0aW9uUGVyaW9kczogMSxcbiAgICAgICAgYWxhcm1OYW1lOiBgJHtxdWV1ZS5xdWV1ZU5hbWV9LW9sZGVzdC1tZXNzYWdlLWFsYXJtYCxcbiAgICAgICAgYWxhcm1EZXNjcmlwdGlvbjogYFRoZSBhZ2Ugb2YgdGhlIG9sZGVzdCBtZXNzYWdlIGhhcyBleGNlZWRlZCAke3NlY29uZHN9IHNlY29uZHMuYCxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdGhlIFNRUyBxdWV1ZSBBUk4uXG4gICAqL1xuICBnZXQgcXVldWVBcm4oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5xdWV1ZS5xdWV1ZUFybjtcbiAgfVxufVxuIl19
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsMkNBQXVDO0FBQ3ZDLGlEQUFrRDtBQUNsRCwrREFBdUU7QUFDdkUsNkNBQTJEO0FBQzNELGlEQUE0QztBQUM1QywrRUFBK0Q7QUFnRC9EOzs7R0FHRztBQUNILE1BQWEsY0FBZSxTQUFRLHNCQUFTOztJQUNsQyxLQUFLLENBQVE7SUFDYixlQUFlLENBQVE7SUFDdkIsS0FBSyxDQUFRO0lBRXRCLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBMEI7UUFDbEUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksZUFBSyxDQUFDLElBQUksRUFBRSxpQkFBaUIsRUFBRTtZQUN4RCxVQUFVLEVBQUUsSUFBSTtZQUNoQixHQUFHLEtBQUssQ0FBQyxRQUFRO1NBQ2xCLENBQUMsQ0FBQztRQUNILE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUUvRSxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksZUFBSyxDQUFDLElBQUksRUFBRSxPQUFPLEVBQUU7WUFDcEMsVUFBVSxFQUFFLElBQUk7WUFDaEIsZUFBZSxFQUFFO2dCQUNmLGVBQWUsRUFBRSxLQUFLLENBQUMsZUFBZSxJQUFJLENBQUM7Z0JBQzNDLEtBQUssRUFBRSxJQUFJLENBQUMsZUFBZTthQUM1QjtZQUNELEdBQUcsS0FBSyxDQUFDLFVBQVU7U0FDcEIsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRXpFLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxzQkFBSyxDQUFDLElBQUksRUFBRSxPQUFPLEVBQUU7WUFDcEMsTUFBTSxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsd0NBQXdDLEVBQUU7WUFDdkUsa0JBQWtCLEVBQUUsbUNBQWtCLENBQUMsc0JBQXNCO1lBQzdELFNBQVMsRUFBRSxDQUFDO1lBQ1osaUJBQWlCLEVBQUUsQ0FBQztZQUNwQixTQUFTLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsUUFBUTtZQUMxQyxnQkFBZ0IsRUFBRSxzREFBc0Q7U0FDekUsQ0FBQyxDQUFDO1FBRUgsSUFBSSxLQUFLLENBQUMsV0FBVyxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQ3BDLE1BQU0sS0FBSyxHQUFHLGVBQUssQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDbkUsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsSUFBSSxrQ0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFDaEQsUUFBUSxFQUFFLGNBQWMsQ0FBQyxJQUFJLGtDQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztZQUMvQyxVQUFVLEVBQUUsY0FBYyxDQUFDLElBQUksa0NBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ25ELENBQUM7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSyxrQkFBa0IsQ0FBQyxLQUFhLEVBQUUsVUFBdUI7UUFDL0QsTUFBTSxPQUFPLEdBQUcsVUFBVSxFQUFFLHlCQUF5QixDQUFDO1FBRXRELElBQUksT0FBTyxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQzFCLE1BQU0sUUFBUSxHQUFHLG1CQUFLLENBQUMsa0JBQWtCLENBQUMsSUFBSSxFQUFFO2dCQUM5QyxTQUFTLEVBQUUsQ0FBQzthQUNiLENBQUMsQ0FBQztZQUNILE9BQU8sSUFBSSxzQkFBSyxDQUFDLElBQUksRUFBRSxzQkFBc0IsVUFBVSxFQUFFLFNBQVMsSUFBSSxRQUFRLEVBQUUsRUFBRTtnQkFDaEYsTUFBTSxFQUFFLEtBQUssQ0FBQyxtQ0FBbUMsRUFBRTtnQkFDbkQsa0JBQWtCLEVBQUUsbUNBQWtCLENBQUMsc0JBQXNCO2dCQUM3RCxTQUFTLEVBQUUsT0FBTztnQkFDbEIsaUJBQWlCLEVBQUUsQ0FBQztnQkFDcEIsU0FBUyxFQUFFLEdBQUcsS0FBSyxDQUFDLFNBQVMsdUJBQXVCO2dCQUNwRCxnQkFBZ0IsRUFBRSw4Q0FBOEMsT0FBTyxXQUFXO2FBQ25GLENBQUMsQ0FBQztRQUNMLENBQUM7UUFFRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7T0FFRztJQUNILElBQUksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUM7SUFDN0IsQ0FBQzs7QUFyRUgsd0NBc0VDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7SVF1ZXVlLCBRdWV1ZX0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1zcXNcIjtcbmltcG9ydCB7IEFsYXJtLCBDb21wYXJpc29uT3BlcmF0b3IgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWNsb3Vkd2F0Y2hcIjtcbmltcG9ydCB7RHVyYXRpb24sIE5hbWVzLCBSZW1vdmFsUG9saWN5fSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IFRvcGljIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1zbnNcIjtcbmltcG9ydCB7IFNuc0FjdGlvbiB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtY2xvdWR3YXRjaC1hY3Rpb25zXCI7XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgdGhlIG1vbml0b3JlZCBxdWV1ZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNb25pdG9yZWRRdWV1ZVByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBwcm9wcyBmb3IgdGhlIG1haW4gU1FTIHF1ZXVlLlxuICAgKi9cbiAgcmVhZG9ubHkgcXVldWVQcm9wcz86IFF1ZXVlUHJvcHM7XG4gIC8qKlxuICAgKiBUaGUgcHJvcHMgZm9yIHRoZSBkZWFkLWxldHRlciBTUVMgcXVldWUgd2hlbiBhIG1lc3NhZ2UgZmFpbHMuXG4gICAqL1xuICByZWFkb25seSBkbHFQcm9wcz86IFF1ZXVlUHJvcHM7XG4gIC8qKlxuICAgKiBUaGUgbWF4aW11bSBudW1iZXIgb2YgdGltZXMgYSBtZXNzYWdlIGNhbiBiZSB1bnN1Y2Nlc3NmdWxseSByZWNlaXZlZCBiZWZvcmVcbiAgICogcHVzaGluZyBpdCB0byB0aGUgRExRLiBEZWZhdWx0cyB0byAzLlxuICAgKi9cbiAgcmVhZG9ubHkgbWF4UmVjZWl2ZUNvdW50PzogbnVtYmVyO1xuICAvKipcbiAgICogU2VuZCB0aGUgYWxhcm0gbm90aWZpY2F0aW9uIHRvIHRoZSBTTlMgdG9waWMgd2l0aCB0aGUgQVJOLlxuICAgKi9cbiAgcmVhZG9ubHkgc25zVG9waWNBcm4/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYW4gU1FTIHF1ZXVlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFF1ZXVlUHJvcHMge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIHF1ZXVlIHRvIGNvbnN0cnVjdC4gRGVmYXVsdHMgdG8gdGhlIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIG5hbWUuXG4gICAqL1xuICByZWFkb25seSBxdWV1ZU5hbWU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBIb3cgbG9uZyBtZXNzYWdlcyBzdGF5IGluIHRoZSBxdWV1ZS5cbiAgICovXG4gIHJlYWRvbmx5IHJldGVudGlvblBlcmlvZD86IER1cmF0aW9uO1xuICAvKipcbiAgICogVGhlIHJlbW92YWwgcG9saWN5IG9mIHRoZSBxdWV1ZS5cbiAgICovXG4gIHJlYWRvbmx5IHJlbW92YWxQb2xpY3k/OiBSZW1vdmFsUG9saWN5O1xuICAvKipcbiAgICogU2V0IGFuIGFsYXJtIHdoZW4gdGhlIGFnZSBvZiB0aGUgb2xkZXN0IG1lc3NhZ2UgaW4gdGhlIHF1ZXVlIGV4Y2VlZHMgdGhlIG51bWJlciBvZiBzZWNvbmRzIHNwZWNpZmllZC5cbiAgICogRGVmYXVsdHMgdG8gbm8gYWxhcm0gYmFzZWQgb24gdGhlIG9sZGVzdCBtZXNzYWdlLlxuICAgKi9cbiAgcmVhZG9ubHkgYWxhcm1PbGRlc3RNZXNzYWdlU2Vjb25kcz86IG51bWJlcjtcbn1cblxuLyoqXG4gKiBBIGNvbnN0cnVjdCB0aGF0IGRlZmluZXMgYW4gU1FTIHF1ZXVlLCBhbG9uZyB3aXRoIGEgRExRIGFuZCBDbG91ZFdhdGNoIGFsYXJtcyB0aGF0IGNhbiBub3RpZnkgYW5cbiAqIFNOUyB0b3BpYy5cbiAqL1xuZXhwb3J0IGNsYXNzIE1vbml0b3JlZFF1ZXVlIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgcmVhZG9ubHkgcXVldWU6IFF1ZXVlO1xuICByZWFkb25seSBkZWFkTGV0dGVyUXVldWU6IFF1ZXVlO1xuICByZWFkb25seSBhbGFybTogQWxhcm07XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IE1vbml0b3JlZFF1ZXVlUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgdGhpcy5kZWFkTGV0dGVyUXVldWUgPSBuZXcgUXVldWUodGhpcywgXCJEZWFkTGV0dGVyUXVldWVcIiwge1xuICAgICAgZW5mb3JjZVNTTDogdHJ1ZSxcbiAgICAgIC4uLnByb3BzLmRscVByb3BzLFxuICAgIH0pO1xuICAgIGNvbnN0IGRscUFsYXJtID0gdGhpcy5hbGFybU9sZGVzdE1lc3NhZ2UodGhpcy5kZWFkTGV0dGVyUXVldWUsIHByb3BzLmRscVByb3BzKTtcblxuICAgIHRoaXMucXVldWUgPSBuZXcgUXVldWUodGhpcywgXCJRdWV1ZVwiLCB7XG4gICAgICBlbmZvcmNlU1NMOiB0cnVlLFxuICAgICAgZGVhZExldHRlclF1ZXVlOiB7XG4gICAgICAgIG1heFJlY2VpdmVDb3VudDogcHJvcHMubWF4UmVjZWl2ZUNvdW50ID8/IDMsXG4gICAgICAgIHF1ZXVlOiB0aGlzLmRlYWRMZXR0ZXJRdWV1ZSxcbiAgICAgIH0sXG4gICAgICAuLi5wcm9wcy5xdWV1ZVByb3BzLFxuICAgIH0pO1xuICAgIGNvbnN0IHF1ZXVlQWxhcm0gPSB0aGlzLmFsYXJtT2xkZXN0TWVzc2FnZSh0aGlzLnF1ZXVlLCBwcm9wcy5xdWV1ZVByb3BzKTtcblxuICAgIHRoaXMuYWxhcm0gPSBuZXcgQWxhcm0odGhpcywgXCJBbGFybVwiLCB7XG4gICAgICBtZXRyaWM6IHRoaXMuZGVhZExldHRlclF1ZXVlLm1ldHJpY0FwcHJveGltYXRlTnVtYmVyT2ZNZXNzYWdlc1Zpc2libGUoKSxcbiAgICAgIGNvbXBhcmlzb25PcGVyYXRvcjogQ29tcGFyaXNvbk9wZXJhdG9yLkdSRUFURVJfVEhBTl9USFJFU0hPTEQsXG4gICAgICB0aHJlc2hvbGQ6IDAsXG4gICAgICBldmFsdWF0aW9uUGVyaW9kczogMSxcbiAgICAgIGFsYXJtTmFtZTogYCR7dGhpcy5xdWV1ZS5xdWV1ZU5hbWV9LWFsYXJtYCxcbiAgICAgIGFsYXJtRGVzY3JpcHRpb246IFwiQW4gZXZlbnQgaGFzIGJlZW4gcmVjZWl2ZWQgaW4gdGhlIGRlYWQgbGV0dGVyIHF1ZXVlLlwiLFxuICAgIH0pO1xuXG4gICAgaWYgKHByb3BzLnNuc1RvcGljQXJuICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGNvbnN0IHRvcGljID0gVG9waWMuZnJvbVRvcGljQXJuKHRoaXMsIFwiVG9waWNcIiwgcHJvcHMuc25zVG9waWNBcm4pO1xuICAgICAgdGhpcy5hbGFybS5hZGRBbGFybUFjdGlvbihuZXcgU25zQWN0aW9uKHRvcGljKSk7XG4gICAgICBkbHFBbGFybT8uYWRkQWxhcm1BY3Rpb24obmV3IFNuc0FjdGlvbih0b3BpYykpO1xuICAgICAgcXVldWVBbGFybT8uYWRkQWxhcm1BY3Rpb24obmV3IFNuc0FjdGlvbih0b3BpYykpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYW4gYWxhcm0gYmFzZWQgb24gdGhlIG9sZGVzdCBtZXNzYWdlIGluIHRoZSBxdWV1ZS5cbiAgICovXG4gIHByaXZhdGUgYWxhcm1PbGRlc3RNZXNzYWdlKHF1ZXVlOiBJUXVldWUsIHF1ZXVlUHJvcHM/OiBRdWV1ZVByb3BzKTogQWxhcm0gfCBudWxsIHtcbiAgICBjb25zdCBzZWNvbmRzID0gcXVldWVQcm9wcz8uYWxhcm1PbGRlc3RNZXNzYWdlU2Vjb25kcztcblxuICAgIGlmIChzZWNvbmRzICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGNvbnN0IHVuaXF1ZUlkID0gTmFtZXMudW5pcXVlUmVzb3VyY2VOYW1lKHRoaXMsIHtcbiAgICAgICAgbWF4TGVuZ3RoOiA2LFxuICAgICAgfSk7XG4gICAgICByZXR1cm4gbmV3IEFsYXJtKHRoaXMsIGBBbGFybU9sZGVzdE1lc3NhZ2UtJHtxdWV1ZVByb3BzPy5xdWV1ZU5hbWV9LSR7dW5pcXVlSWR9YCwge1xuICAgICAgICBtZXRyaWM6IHF1ZXVlLm1ldHJpY0FwcHJveGltYXRlQWdlT2ZPbGRlc3RNZXNzYWdlKCksXG4gICAgICAgIGNvbXBhcmlzb25PcGVyYXRvcjogQ29tcGFyaXNvbk9wZXJhdG9yLkdSRUFURVJfVEhBTl9USFJFU0hPTEQsXG4gICAgICAgIHRocmVzaG9sZDogc2Vjb25kcyxcbiAgICAgICAgZXZhbHVhdGlvblBlcmlvZHM6IDEsXG4gICAgICAgIGFsYXJtTmFtZTogYCR7cXVldWUucXVldWVOYW1lfS1vbGRlc3QtbWVzc2FnZS1hbGFybWAsXG4gICAgICAgIGFsYXJtRGVzY3JpcHRpb246IGBUaGUgYWdlIG9mIHRoZSBvbGRlc3QgbWVzc2FnZSBoYXMgZXhjZWVkZWQgJHtzZWNvbmRzfSBzZWNvbmRzLmAsXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdGhlIFNRUyBxdWV1ZSBBUk4uXG4gICAqL1xuICBnZXQgcXVldWVBcm4oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5xdWV1ZS5xdWV1ZUFybjtcbiAgfVxufVxuIl19
@@ -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.31" };
10
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.namedLambdaRole.NamedLambdaRole", version: "0.0.32" };
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.31",
3
+ "version": "0.0.32",
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.31" };
18
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.provider.ProviderFunction", version: "0.0.32" };
19
19
  _function;
20
20
  _response;
21
21
  constructor(scope, id, props) {
@@ -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.31" };
26
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.sharedConfig.networking.OrcaBusVpc", version: "0.0.32" };
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.31" };
45
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.sharedConfig.networking.OrcaBusSharedComputeSecurityGroup", version: "0.0.32" };
46
46
  /**
47
47
  * The shared security group that is used by compute resources to access the database.
48
48
  * @param scope
@@ -11,7 +11,7 @@ exports.SLACK_ALERTS_SNS_TOPIC = "AwsChatBotTopic-alerts";
11
11
  * A helper class to construct the arn for the slack SNS topic.
12
12
  */
13
13
  class SlackAlerts {
14
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.sharedConfig.slack.SlackAlerts", version: "0.0.31" };
14
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.sharedConfig.slack.SlackAlerts", version: "0.0.32" };
15
15
  /**
16
16
  * Format the ARN for the slack alerts SNS topic for the current stack.
17
17
  * @param stack