@restatedev/restate-cdk 0.7.0 → 0.8.1
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/README.md +15 -11
- package/dist/deployments-common.d.ts +4 -0
- package/dist/deployments-common.js +9 -0
- package/dist/fargate-restate-deployment.d.ts +77 -0
- package/dist/fargate-restate-deployment.js +239 -0
- package/dist/index.d.ts +3 -3
- package/dist/index.js +4 -4
- package/dist/register-service-handler/index.d.ts +4 -1
- package/dist/register-service-handler/index.js +67 -19
- package/dist/restate-environment.d.ts +27 -6
- package/dist/restate-environment.js +13 -1
- package/dist/service-deployer.d.ts +66 -0
- package/dist/service-deployer.js +143 -0
- package/dist/single-node-restate-deployment.d.ts +17 -15
- package/dist/single-node-restate-deployment.js +20 -27
- package/package.json +13 -12
- package/test/__snapshots__/restate-constructs.test.ts.snap +932 -0
- package/dist/lambda-service-registry.d.ts +0 -31
- package/dist/lambda-service-registry.js +0 -104
- package/dist/registration-provider.d.ts +0 -12
- package/dist/registration-provider.js +0 -77
- package/dist/restate-cloud-environment.d.ts +0 -27
- package/dist/restate-cloud-environment.js +0 -71
- package/test/.keep +0 -0
|
@@ -33,12 +33,14 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
33
33
|
return result;
|
|
34
34
|
};
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.SingleNodeRestateDeployment =
|
|
36
|
+
exports.SingleNodeRestateDeployment = void 0;
|
|
37
37
|
const constructs_1 = require("constructs");
|
|
38
|
+
const logs = __importStar(require("aws-cdk-lib/aws-logs"));
|
|
39
|
+
const aws_logs_1 = require("aws-cdk-lib/aws-logs");
|
|
38
40
|
const ec2 = __importStar(require("aws-cdk-lib/aws-ec2"));
|
|
39
41
|
const iam = __importStar(require("aws-cdk-lib/aws-iam"));
|
|
40
|
-
const
|
|
41
|
-
const
|
|
42
|
+
const deployments_common_1 = require("./deployments-common");
|
|
43
|
+
const aws_cdk_lib_1 = require("aws-cdk-lib");
|
|
42
44
|
const PUBLIC_INGRESS_PORT = 443;
|
|
43
45
|
const PUBLIC_ADMIN_PORT = 9073;
|
|
44
46
|
const RESTATE_INGRESS_PORT = 8080;
|
|
@@ -46,30 +48,27 @@ const RESTATE_ADMIN_PORT = 9070;
|
|
|
46
48
|
const RESTATE_IMAGE_DEFAULT = "docker.io/restatedev/restate";
|
|
47
49
|
const RESTATE_DOCKER_DEFAULT_TAG = "latest";
|
|
48
50
|
const ADOT_DOCKER_DEFAULT_TAG = "latest";
|
|
49
|
-
var TracingMode;
|
|
50
|
-
(function (TracingMode) {
|
|
51
|
-
TracingMode["DISABLED"] = "DISABLED";
|
|
52
|
-
TracingMode["AWS_XRAY"] = "AWS_XRAY";
|
|
53
|
-
})(TracingMode || (exports.TracingMode = TracingMode = {}));
|
|
54
51
|
/**
|
|
55
|
-
* Creates a Restate service deployment backed by a single EC2 instance,
|
|
56
|
-
*
|
|
57
|
-
*
|
|
58
|
-
* a public IP address.
|
|
52
|
+
* Creates a Restate service deployment backed by a single EC2 instance, and is suitable for
|
|
53
|
+
* development and testing purposes.
|
|
54
|
+
* The EC2 instance will be created in the default VPC unless otherwise specified.
|
|
55
|
+
* The instance will be assigned a public IP address.
|
|
59
56
|
*/
|
|
60
57
|
class SingleNodeRestateDeployment extends constructs_1.Construct {
|
|
61
58
|
constructor(scope, id, props) {
|
|
62
59
|
super(scope, id);
|
|
63
|
-
this.vpc =
|
|
64
|
-
maxAzs: 3,
|
|
65
|
-
createInternetGateway: true,
|
|
66
|
-
natGateways: 0,
|
|
67
|
-
});
|
|
60
|
+
this.vpc = props.vpc ?? ec2.Vpc.fromLookup(this, "Vpc", { isDefault: true });
|
|
68
61
|
this.invokerRole = new iam.Role(this, "InstanceRole", {
|
|
69
62
|
assumedBy: new iam.ServicePrincipal("ec2.amazonaws.com"),
|
|
70
63
|
managedPolicies: [iam.ManagedPolicy.fromAwsManagedPolicyName("AmazonSSMManagedInstanceCore")],
|
|
71
64
|
});
|
|
72
|
-
props.logGroup
|
|
65
|
+
const logGroup = props.logGroup ??
|
|
66
|
+
new logs.LogGroup(this, "Logs", {
|
|
67
|
+
logGroupName: `/restate/${id}`,
|
|
68
|
+
retention: aws_logs_1.RetentionDays.ONE_MONTH,
|
|
69
|
+
removalPolicy: props.removalPolicy ?? aws_cdk_lib_1.RemovalPolicy.DESTROY,
|
|
70
|
+
});
|
|
71
|
+
logGroup.grantWrite(this.invokerRole);
|
|
73
72
|
const restateImage = props.restateImage ?? RESTATE_IMAGE_DEFAULT;
|
|
74
73
|
const restateTag = props.restateTag ?? RESTATE_DOCKER_DEFAULT_TAG;
|
|
75
74
|
const adotTag = props.adotTag ?? ADOT_DOCKER_DEFAULT_TAG;
|
|
@@ -83,7 +82,7 @@ class SingleNodeRestateDeployment extends constructs_1.Construct {
|
|
|
83
82
|
" --volume /var/restate:/target --network=host",
|
|
84
83
|
" -e RESTATE_OBSERVABILITY__LOG__FORMAT=Json -e RUST_LOG=info,restate_worker::partition=warn",
|
|
85
84
|
" -e RESTATE_OBSERVABILITY__TRACING__ENDPOINT=http://localhost:4317",
|
|
86
|
-
` --log-driver=awslogs --log-opt awslogs-group=${
|
|
85
|
+
` --log-driver=awslogs --log-opt awslogs-group=${logGroup.logGroupName}`,
|
|
87
86
|
` ${restateImage}:${restateTag}`,
|
|
88
87
|
].join(""), "mkdir -p /etc/pki/private", [
|
|
89
88
|
"openssl req -new -x509 -nodes -sha256 -days 365 -extensions v3_ca",
|
|
@@ -103,7 +102,7 @@ class SingleNodeRestateDeployment extends constructs_1.Construct {
|
|
|
103
102
|
this.instance = restateInstance;
|
|
104
103
|
// We start the ADOT collector regardless, and only control whether they will be published to X-Ray via instance
|
|
105
104
|
// role permissions. This way historic traces will be buffered on the host, even if tracing is disabled initially.
|
|
106
|
-
if (props.tracing === TracingMode.AWS_XRAY) {
|
|
105
|
+
if (props.tracing === deployments_common_1.TracingMode.AWS_XRAY) {
|
|
107
106
|
restateInstance.role.addManagedPolicy(iam.ManagedPolicy.fromAwsManagedPolicyName("AWSXrayWriteOnlyAccess"));
|
|
108
107
|
}
|
|
109
108
|
const restateInstanceSecurityGroup = new ec2.SecurityGroup(this, "RestateSecurityGroup", {
|
|
@@ -114,12 +113,6 @@ class SingleNodeRestateDeployment extends constructs_1.Construct {
|
|
|
114
113
|
restateInstance.addSecurityGroup(restateInstanceSecurityGroup);
|
|
115
114
|
restateInstanceSecurityGroup.addIngressRule(ec2.Peer.anyIpv4(), ec2.Port.tcp(443), "Allow traffic from anywhere to Restate ingress port");
|
|
116
115
|
restateInstanceSecurityGroup.addIngressRule(ec2.Peer.anyIpv4(), ec2.Port.tcp(9073), "Allow traffic from anywhere to Restate admin port");
|
|
117
|
-
const registrationProvider = new registration_provider_1.RegistrationProvider(this, "RegistrationProvider", {});
|
|
118
|
-
this.registrationProviderToken = new cdk.CfnOutput(this, "RegistrationProviderToken", {
|
|
119
|
-
description: "Custom resource provider service token, needed by the Restate service registry component to trigger discovery",
|
|
120
|
-
exportName: [props.prefix, "RegistrationProviderToken"].join("-"),
|
|
121
|
-
value: registrationProvider.serviceToken,
|
|
122
|
-
});
|
|
123
116
|
this.ingressUrl = `https://${restateInstance.instancePublicDnsName}${PUBLIC_INGRESS_PORT == 443 ? "" : `:${PUBLIC_INGRESS_PORT}`}`;
|
|
124
117
|
this.adminUrl = `https://${restateInstance.instancePublicDnsName}:${PUBLIC_ADMIN_PORT}`;
|
|
125
118
|
}
|
|
@@ -162,4 +155,4 @@ const NGINX_REVERSE_PROXY_CONFIG = [
|
|
|
162
155
|
" }",
|
|
163
156
|
"}",
|
|
164
157
|
].join("\n");
|
|
165
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2luZ2xlLW5vZGUtcmVzdGF0ZS1kZXBsb3ltZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vbGliL3Jlc3RhdGUtY29uc3RydWN0cy9zaW5nbGUtbm9kZS1yZXN0YXRlLWRlcGxveW1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7Ozs7R0FTRzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFSCwyQ0FBdUM7QUFFdkMseURBQTJDO0FBQzNDLHlEQUEyQztBQUMzQyxpREFBbUM7QUFFbkMsbUVBQStEO0FBRS9ELE1BQU0sbUJBQW1CLEdBQUcsR0FBRyxDQUFDO0FBQ2hDLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDO0FBQy9CLE1BQU0sb0JBQW9CLEdBQUcsSUFBSSxDQUFDO0FBQ2xDLE1BQU0sa0JBQWtCLEdBQUcsSUFBSSxDQUFDO0FBQ2hDLE1BQU0scUJBQXFCLEdBQUcsOEJBQThCLENBQUM7QUFDN0QsTUFBTSwwQkFBMEIsR0FBRyxRQUFRLENBQUM7QUFDNUMsTUFBTSx1QkFBdUIsR0FBRyxRQUFRLENBQUM7QUFFekMsSUFBWSxXQUdYO0FBSEQsV0FBWSxXQUFXO0lBQ3JCLG9DQUFxQixDQUFBO0lBQ3JCLG9DQUFxQixDQUFBO0FBQ3ZCLENBQUMsRUFIVyxXQUFXLDJCQUFYLFdBQVcsUUFHdEI7QUFzQkQ7Ozs7O0dBS0c7QUFDSCxNQUFhLDJCQUE0QixTQUFRLHNCQUFTO0lBU3hELFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBMkI7UUFDbkUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFO1lBQ2xDLE1BQU0sRUFBRSxDQUFDO1lBQ1QscUJBQXFCLEVBQUUsSUFBSTtZQUMzQixXQUFXLEVBQUUsQ0FBQztTQUNmLENBQUMsQ0FBQztRQUVILElBQUksQ0FB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O0lBQ2xFLG9DQUFvQztJQUNwQyw0QkFBNEI7SUFDNUIsK0JBQStCO0lBQy9CLGlDQUFpQztJQUNqQyxFQUFFO0lBQ0YsZ0JBQWdCO0lBQ2hCLG1DQUFtQyxvQkFBb0IsR0FBRztJQUMxRCxLQUFLO0lBQ0wsR0FBRztJQUNILEVBQUU7SUFDRixVQUFVO0lBQ1YsMEJBQTBCO0lBQzFCLCtCQUErQjtJQUMvQixrQkFBa0I7SUFDbEIsK0JBQStCO0lBQy9CLEVBQUU7SUFDRiw4REFBOEQ7SUFDOUQsa0VBQWtFO0lBQ2xFLG9DQUFvQztJQUNwQyw0QkFBNEI7SUFDNUIsK0JBQStCO0lBQy9CLGlDQUFpQztJQUNqQyxFQUFFO0lBQ0YsZ0JBQWdCO0lBQ2hCLG1DQUFtQyxrQkFBa0IsR0FBRztJQUN4RCxLQUFLO0lBQ0wsR0FBRztDQUNKLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAyMyAtIFJlc3RhdGUgU29mdHdhcmUsIEluYy4sIFJlc3RhdGUgR21iSFxuICpcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBSZXN0YXRlIFNESyBmb3IgTm9kZS5qcy9UeXBlU2NyaXB0LFxuICogd2hpY2ggaXMgcmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICpcbiAqIFlvdSBjYW4gZmluZCBhIGNvcHkgb2YgdGhlIGxpY2Vuc2UgaW4gZmlsZSBMSUNFTlNFIGluIHRoZSByb290XG4gKiBkaXJlY3Rvcnkgb2YgdGhpcyByZXBvc2l0b3J5IG9yIHBhY2thZ2UsIG9yIGF0XG4gKiBodHRwczovL2dpdGh1Yi5jb20vcmVzdGF0ZWRldi9zZGstdHlwZXNjcmlwdC9ibG9iL21haW4vTElDRU5TRVxuICovXG5cbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgKiBhcyBsb2dzIGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtbG9nc1wiO1xuaW1wb3J0ICogYXMgZWMyIGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtZWMyXCI7XG5pbXBvcnQgKiBhcyBpYW0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1pYW1cIjtcbmltcG9ydCAqIGFzIGNkayBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IFJlc3RhdGVFbnZpcm9ubWVudCB9IGZyb20gXCIuL3Jlc3RhdGUtZW52aXJvbm1lbnRcIjtcbmltcG9ydCB7IFJlZ2lzdHJhdGlvblByb3ZpZGVyIH0gZnJvbSBcIi4vcmVnaXN0cmF0aW9uLXByb3ZpZGVyXCI7XG5cbmNvbnN0IFBVQkxJQ19JTkdSRVNTX1BPUlQgPSA0NDM7XG5jb25zdCBQVUJMSUNfQURNSU5fUE9SVCA9IDkwNzM7XG5jb25zdCBSRVNUQVRFX0lOR1JFU1NfUE9SVCA9IDgwODA7XG5jb25zdCBSRVNUQVRFX0FETUlOX1BPUlQgPSA5MDcwO1xuY29uc3QgUkVTVEFURV9JTUFHRV9ERUZBVUxUID0gXCJkb2NrZXIuaW8vcmVzdGF0ZWRldi9yZXN0YXRlXCI7XG5jb25zdCBSRVNUQVRFX0RPQ0tFUl9ERUZBVUxUX1RBRyA9IFwibGF0ZXN0XCI7XG5jb25zdCBBRE9UX0RPQ0tFUl9ERUZBVUxUX1RBRyA9IFwibGF0ZXN0XCI7XG5cbmV4cG9ydCBlbnVtIFRyYWNpbmdNb2RlIHtcbiAgRElTQUJMRUQgPSBcIkRJU0FCTEVEXCIsXG4gIEFXU19YUkFZID0gXCJBV1NfWFJBWVwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJlc3RhdGVJbnN0YW5jZVByb3BzIHtcbiAgLyoqIExvZyBncm91cCBmb3IgUmVzdGF0ZSBzZXJ2aWNlIGxvZ3MuICovXG4gIGxvZ0dyb3VwOiBsb2dzLkxvZ0dyb3VwO1xuXG4gIC8qKiBUcmFjaW5nIG1vZGUgZm9yIFJlc3RhdGUgc2VydmljZXMuIERlZmF1bHRzIHRvIHtAbGluayBUcmFjaW5nTW9kZS5ESVNBQkxFRH0uICovXG4gIHRyYWNpbmc/OiBUcmFjaW5nTW9kZTtcblxuICAvKiogUHJlZml4IGZvciByZXNvdXJjZXMgY3JlYXRlZCBieSB0aGlzIGNvbnN0cnVjdCB0aGF0IHJlcXVpcmUgdW5pcXVlIG5hbWVzLiAqL1xuICBwcmVmaXg/OiBzdHJpbmc7XG5cbiAgLyoqIFJlc3RhdGUgRG9ja2VyIGltYWdlIG5hbWUuIERlZmF1bHRzIHRvIGBsYXRlc3RgLiAqL1xuICByZXN0YXRlSW1hZ2U/OiBzdHJpbmc7XG5cbiAgLyoqIFJlc3RhdGUgRG9ja2VyIGltYWdlIHRhZy4gRGVmYXVsdHMgdG8gYGxhdGVzdGAuICovXG4gIHJlc3RhdGVUYWc/OiBzdHJpbmc7XG5cbiAgLyoqIEFtYXpvbiBEaXN0cm8gZm9yIE9wZW4gVGVsZW1ldHJ5IERvY2tlciBpbWFnZSB0YWcuIERlZmF1bHRzIHRvIGBsYXRlc3RgLiAqL1xuICBhZG90VGFnPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIENyZWF0ZXMgYSBSZXN0YXRlIHNlcnZpY2UgZGVwbG95bWVudCBiYWNrZWQgYnkgYSBzaW5nbGUgRUMyIGluc3RhbmNlLFxuICogc3VpdGFibGUgZm9yIGRldmVsb3BtZW50IGFuZCB0ZXN0aW5nIHB1cnBvc2VzLiBUaGUgaW5zdGFuY2Ugd2lsbCBiZSBjcmVhdGVkXG4gKiBpbiBhIGRlZGljYXRlZCBWUEMgKHVubGVzcyBvbmUgaXMgcHJvdmlkZWQpLiBFQzIgaW5zdGFuY2Ugd2lsbCBiZSBhbGxvY2F0ZWRcbiAqIGEgcHVibGljIElQIGFkZHJlc3MuXG4gKi9cbmV4cG9ydCBjbGFzcyBTaW5nbGVOb2RlUmVzdGF0ZURlcGxveW1lbnQgZXh0ZW5kcyBDb25zdHJ1Y3QgaW1wbGVtZW50cyBSZXN0YXRlRW52aXJvbm1lbnQge1xuICByZWFkb25seSBpbnN0YW5jZTogZWMyLkluc3RhbmNlO1xuICByZWFkb25seSBpbnZva2VyUm9sZTogaWFtLklSb2xlO1xuICByZWFkb25seSB2cGM6IGVjMi5WcGM7XG5cbiAgcmVhZG9ubHkgaW5ncmVzc1VybDogc3RyaW5nO1xuICByZWFkb25seSBhZG1pblVybDogc3RyaW5nO1xuICByZWFkb25seSByZWdpc3RyYXRpb25Qcm92aWRlclRva2VuOiBjZGsuQ2ZuT3V0cHV0O1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBSZXN0YXRlSW5zdGFuY2VQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICB0aGlzLnZwYyA9IG5ldyBlYzIuVnBjKHRoaXMsIFwiVnBjXCIsIHtcbiAgICAgIG1heEF6czogMyxcbiAgICAgIGNyZWF0ZUludGVybmV0R2F0ZXdheTogdHJ1ZSxcbiAgICAgIG5hdEdhdGV3YXlzOiAwLFxuICAgIH0pO1xuXG4gICAgdGhpcy5pbnZva2VyUm9sZSA9IG5ldyBpYW0uUm9sZSh0aGlzLCBcIkluc3RhbmNlUm9sZVwiLCB7XG4gICAgICBhc3N1bWVkQnk6IG5ldyBpYW0uU2VydmljZVByaW5jaXBhbChcImVjMi5hbWF6b25hd3MuY29tXCIpLFxuICAgICAgbWFuYWdlZFBvbGljaWVzOiBbaWFtLk1hbmFnZWRQb2xpY3kuZnJvbUF3c01hbmFnZWRQb2xpY3lOYW1lKFwiQW1hem9uU1NNTWFuYWdlZEluc3RhbmNlQ29yZVwiKV0sXG4gICAgfSk7XG4gICAgcHJvcHMubG9nR3JvdXAuZ3JhbnRXcml0ZSh0aGlzLmludm9rZXJSb2xlKTtcblxuICAgIGNvbnN0IHJlc3RhdGVJbWFnZSA9IHByb3BzLnJlc3RhdGVJbWFnZSA/PyBSRVNUQVRFX0lNQUdFX0RFRkFVTFQ7XG4gICAgY29uc3QgcmVzdGF0ZVRhZyA9IHByb3BzLnJlc3RhdGVUYWcgPz8gUkVTVEFURV9ET0NLRVJfREVGQVVMVF9UQUc7XG4gICAgY29uc3QgYWRvdFRhZyA9IHByb3BzLmFkb3RUYWcgPz8gQURPVF9ET0NLRVJfREVGQVVMVF9UQUc7XG4gICAgY29uc3QgcmVzdGF0ZUluaXRDb21tYW5kcyA9IGVjMi5Vc2VyRGF0YS5mb3JMaW51eCgpO1xuICAgIHJlc3RhdGVJbml0Q29tbWFuZHMuYWRkQ29tbWFuZHMoXG4gICAgICBcInl1bSB1cGRhdGUgLXlcIixcbiAgICAgIFwieXVtIGluc3RhbGwgLXkgZG9ja2VyIG5naW54XCIsXG5cbiAgICAgIFwic3lzdGVtY3RsIGVuYWJsZSBkb2NrZXIuc2VydmljZVwiLFxuICAgICAgXCJzeXN0ZW1jdGwgc3RhcnQgZG9ja2VyLnNlcnZpY2VcIixcbiAgICAgIFtcbiAgICAgICAgXCJkb2NrZXIgcnVuIC0tbmFtZSBhZG90IC0tcmVzdGFydCB1bmxlc3Mtc3RvcHBlZCAtLWRldGFjaFwiLFxuICAgICAgICBcIiAtcCA0MzE3OjQzMTcgLXAgNTU2ODA6NTU2ODAgLXAgODg4OTo4ODg4XCIsXG4gICAgICAgIGAgcHVibGljLmVjci5hd3MvYXdzLW9ic2VydmFiaWxpdHkvYXdzLW90ZWwtY29sbGVjdG9yOiR7YWRvdFRhZ31gLFxuICAgICAgXS5qb2luKFwiXCIpLFxuICAgICAgW1xuICAgICAgICBcImRvY2tlciBydW4gLS1uYW1lIHJlc3RhdGUgLS1yZXN0YXJ0IHVubGVzcy1zdG9wcGVkIC0tZGV0YWNoXCIsXG4gICAgICAgIFwiIC0tdm9sdW1lIC92YXIvcmVzdGF0ZTovdGFyZ2V0IC0tbmV0d29yaz1ob3N0XCIsXG4gICAgICAgIFwiIC1lIFJFU1RBVEVfT0JTRVJWQUJJTElUWV9fTE9HX19GT1JNQVQ9SnNvbiAtZSBSVVNUX0xPRz1pbmZvLHJlc3RhdGVfd29ya2VyOjpwYXJ0aXRpb249d2FyblwiLFxuICAgICAgICBcIiAtZSBSRVNUQVRFX09CU0VSVkFCSUxJVFlfX1RSQUNJTkdfX0VORFBPSU5UPWh0dHA6Ly9sb2NhbGhvc3Q6NDMxN1wiLFxuICAgICAgICBgIC0tbG9nLWRyaXZlcj1hd3Nsb2dzIC0tbG9nLW9wdCBhd3Nsb2dzLWdyb3VwPSR7cHJvcHMubG9nR3JvdXAubG9nR3JvdXBOYW1lfWAsXG4gICAgICAgIGAgJHtyZXN0YXRlSW1hZ2V9OiR7cmVzdGF0ZVRhZ31gLFxuICAgICAgXS5qb2luKFwiXCIpLFxuXG4gICAgICBcIm1rZGlyIC1wIC9ldGMvcGtpL3ByaXZhdGVcIixcbiAgICAgIFtcbiAgICAgICAgXCJvcGVuc3NsIHJlcSAtbmV3IC14NTA5IC1ub2RlcyAtc2hhMjU2IC1kYXlzIDM2NSAtZXh0ZW5zaW9ucyB2M19jYVwiLFxuICAgICAgICBcIiAtc3ViaiAnL0M9REUvU1Q9QmVybGluL0w9QmVybGluL089cmVzdGF0ZS5kZXYvT1U9ZGVtby9DTj1yZXN0YXRlLmV4YW1wbGUuY29tJ1wiLFxuICAgICAgICBcIiAtbmV3a2V5IHJzYToyMDQ4IC1rZXlvdXQgL2V0Yy9wa2kvcHJpdmF0ZS9yZXN0YXRlLXNlbGZzaWduZWQua2V5IC1vdXQgL2V0Yy9wa2kvcHJpdmF0ZS9yZXN0YXRlLXNlbGZzaWduZWQuY3J0XCIsXG4gICAgICBdLmpvaW4oXCJcIiksXG4gICAgICBbXCJjYXQgPDwgRU9GID4gL2V0Yy9uZ2lueC9jb25mLmQvcmVzdGF0ZS1pbmdyZXNzLmNvbmZcIiwgTkdJTlhfUkVWRVJTRV9QUk9YWV9DT05GSUcsIFwiRU9GXCJdLmpvaW4oXCJcXG5cIiksXG4gICAgICBcInN5c3RlbWN0bCBlbmFibGUgbmdpbnhcIixcbiAgICAgIFwic3lzdGVtY3RsIHN0YXJ0IG5naW54XCIsXG4gICAgKTtcblxuICAgIGNvbnN0IHJlc3RhdGVJbnN0YW5jZSA9IG5ldyBlYzIuSW5zdGFuY2UodGhpcywgXCJIb3N0XCIsIHtcbiAgICAgIHZwYzogdGhpcy52cGMsXG4gICAgICB2cGNTdWJuZXRzOiB7IHN1Ym5ldFR5cGU6IGVjMi5TdWJuZXRUeXBlLlBVQkxJQyB9LFxuICAgICAgaW5zdGFuY2VUeXBlOiBuZXcgZWMyLkluc3RhbmNlVHlwZShcInQ0Zy5taWNyb1wiKSxcbiAgICAgIG1hY2hpbmVJbWFnZTogZWMyLk1hY2hpbmVJbWFnZS5sYXRlc3RBbWF6b25MaW51eDIwMjMoe1xuICAgICAgICBjcHVUeXBlOiBlYzIuQW1hem9uTGludXhDcHVUeXBlLkFSTV82NCxcbiAgICAgIH0pLFxuICAgICAgcm9sZTogdGhpcy5pbnZva2VyUm9sZSxcbiAgICAgIHVzZXJEYXRhOiByZXN0YXRlSW5pdENvbW1hbmRzLFxuICAgIH0pO1xuICAgIHRoaXMuaW5zdGFuY2UgPSByZXN0YXRlSW5zdGFuY2U7XG5cbiAgICAvLyBXZSBzdGFydCB0aGUgQURPVCBjb2xsZWN0b3IgcmVnYXJkbGVzcywgYW5kIG9ubHkgY29udHJvbCB3aGV0aGVyIHRoZXkgd2lsbCBiZSBwdWJsaXNoZWQgdG8gWC1SYXkgdmlhIGluc3RhbmNlXG4gICAgLy8gcm9sZSBwZXJtaXNzaW9ucy4gVGhpcyB3YXkgaGlzdG9yaWMgdHJhY2VzIHdpbGwgYmUgYnVmZmVyZWQgb24gdGhlIGhvc3QsIGV2ZW4gaWYgdHJhY2luZyBpcyBkaXNhYmxlZCBpbml0aWFsbHkuXG4gICAgaWYgKHByb3BzLnRyYWNpbmcgPT09IFRyYWNpbmdNb2RlLkFXU19YUkFZKSB7XG4gICAgICByZXN0YXRlSW5zdGFuY2Uucm9sZS5hZGRNYW5hZ2VkUG9saWN5KGlhbS5NYW5hZ2VkUG9saWN5LmZyb21Bd3NNYW5hZ2VkUG9saWN5TmFtZShcIkFXU1hyYXlXcml0ZU9ubHlBY2Nlc3NcIikpO1xuICAgIH1cblxuICAgIGNvbnN0IHJlc3RhdGVJbnN0YW5jZVNlY3VyaXR5R3JvdXAgPSBuZXcgZWMyLlNlY3VyaXR5R3JvdXAodGhpcywgXCJSZXN0YXRlU2VjdXJpdHlHcm91cFwiLCB7XG4gICAgICB2cGM6IHRoaXMudnBjLFxuICAgICAgc2VjdXJpdHlHcm91cE5hbWU6IFwiUmVzdGF0ZVNlY3VyaXR5R3JvdXBcIixcbiAgICAgIGRlc2NyaXB0aW9uOiBcIlJlc3RhdGUgc2VydmljZSBBQ0xzXCIsXG4gICAgfSk7XG4gICAgcmVzdGF0ZUluc3RhbmNlLmFkZFNlY3VyaXR5R3JvdXAocmVzdGF0ZUluc3RhbmNlU2VjdXJpdHlHcm91cCk7XG5cbiAgICByZXN0YXRlSW5zdGFuY2VTZWN1cml0eUdyb3VwLmFkZEluZ3Jlc3NSdWxlKFxuICAgICAgZWMyLlBlZXIuYW55SXB2NCgpLFxuICAgICAgZWMyLlBvcnQudGNwKDQ0MyksXG4gICAgICBcIkFsbG93IHRyYWZmaWMgZnJvbSBhbnl3aGVyZSB0byBSZXN0YXRlIGluZ3Jlc3MgcG9ydFwiLFxuICAgICk7XG4gICAgcmVzdGF0ZUluc3RhbmNlU2VjdXJpdHlHcm91cC5hZGRJbmdyZXNzUnVsZShcbiAgICAgIGVjMi5QZWVyLmFueUlwdjQoKSxcbiAgICAgIGVjMi5Qb3J0LnRjcCg5MDczKSxcbiAgICAgIFwiQWxsb3cgdHJhZmZpYyBmcm9tIGFueXdoZXJlIHRvIFJlc3RhdGUgYWRtaW4gcG9ydFwiLFxuICAgICk7XG5cbiAgICBjb25zdCByZWdpc3RyYXRpb25Qcm92aWRlciA9IG5ldyBSZWdpc3RyYXRpb25Qcm92aWRlcih0aGlzLCBcIlJlZ2lzdHJhdGlvblByb3ZpZGVyXCIsIHt9KTtcbiAgICB0aGlzLnJlZ2lzdHJhdGlvblByb3ZpZGVyVG9rZW4gPSBuZXcgY2RrLkNmbk91dHB1dCh0aGlzLCBcIlJlZ2lzdHJhdGlvblByb3ZpZGVyVG9rZW5cIiwge1xuICAgICAgZGVzY3JpcHRpb246XG4gICAgICAgIFwiQ3VzdG9tIHJlc291cmNlIHByb3ZpZGVyIHNlcnZpY2UgdG9rZW4sIG5lZWRlZCBieSB0aGUgUmVzdGF0ZSBzZXJ2aWNlIHJlZ2lzdHJ5IGNvbXBvbmVudCB0byB0cmlnZ2VyIGRpc2NvdmVyeVwiLFxuICAgICAgZXhwb3J0TmFtZTogW3Byb3BzLnByZWZpeCwgXCJSZWdpc3RyYXRpb25Qcm92aWRlclRva2VuXCJdLmpvaW4oXCItXCIpLFxuICAgICAgdmFsdWU6IHJlZ2lzdHJhdGlvblByb3ZpZGVyLnNlcnZpY2VUb2tlbixcbiAgICB9KTtcblxuICAgIHRoaXMuaW5ncmVzc1VybCA9IGBodHRwczovLyR7cmVzdGF0ZUluc3RhbmNlLmluc3RhbmNlUHVibGljRG5zTmFtZX0ke1xuICAgICAgUFVCTElDX0lOR1JFU1NfUE9SVCA9PSA0NDMgPyBcIlwiIDogYDoke1BVQkxJQ19JTkdSRVNTX1BPUlR9YFxuICAgIH1gO1xuICAgIHRoaXMuYWRtaW5VcmwgPSBgaHR0cHM6Ly8ke3Jlc3RhdGVJbnN0YW5jZS5pbnN0YW5jZVB1YmxpY0Ruc05hbWV9OiR7UFVCTElDX0FETUlOX1BPUlR9YDtcbiAgfVxufVxuXG5jb25zdCBOR0lOWF9SRVZFUlNFX1BST1hZX0NPTkZJRyA9IFtcbiAgXCJzZXJ2ZXIge1wiLFxuICBcIiAgbGlzdGVuIDQ0MyBzc2wgaHR0cDI7XCIsXG4gIFwiICBsaXN0ZW4gWzo6XTo0NDMgc3NsIGh0dHAyO1wiLFxuICBcIiAgc2VydmVyX25hbWUgXztcIixcbiAgXCIgIHJvb3QgL3Vzci9zaGFyZS9uZ2lueC9odG1sO1wiLFxuICBcIlwiLFxuICAnICBzc2xfY2VydGlmaWNhdGUgXCIvZXRjL3BraS9wcml2YXRlL3Jlc3RhdGUtc2VsZnNpZ25lZC5jcnRcIjsnLFxuICAnICBzc2xfY2VydGlmaWNhdGVfa2V5IFwiL2V0Yy9wa2kvcHJpdmF0ZS9yZXN0YXRlLXNlbGZzaWduZWQua2V5XCI7JyxcbiAgXCIgIHNzbF9zZXNzaW9uX2NhY2hlIHNoYXJlZDpTU0w6MW07XCIsXG4gIFwiICBzc2xfc2Vzc2lvbl90aW1lb3V0IDEwbTtcIixcbiAgXCIgIHNzbF9jaXBoZXJzIFBST0ZJTEU9U1lTVEVNO1wiLFxuICBcIiAgc3NsX3ByZWZlcl9zZXJ2ZXJfY2lwaGVycyBvbjtcIixcbiAgXCJcIixcbiAgXCIgIGxvY2F0aW9uIC8ge1wiLFxuICBgICAgIHByb3h5X3Bhc3MgaHR0cDovL2xvY2FsaG9zdDoke1JFU1RBVEVfSU5HUkVTU19QT1JUfTtgLFxuICBcIiAgfVwiLFxuICBcIn1cIixcbiAgXCJcIixcbiAgXCJzZXJ2ZXIge1wiLFxuICBcIiAgbGlzdGVuIDkwNzMgc3NsIGh0dHAyO1wiLFxuICBcIiAgbGlzdGVuIFs6Ol06OTA3MyBzc2wgaHR0cDI7XCIsXG4gIFwiICBzZXJ2ZXJfbmFtZSBfO1wiLFxuICBcIiAgcm9vdCAvdXNyL3NoYXJlL25naW54L2h0bWw7XCIsXG4gIFwiXCIsXG4gICcgIHNzbF9jZXJ0aWZpY2F0ZSBcIi9ldGMvcGtpL3ByaXZhdGUvcmVzdGF0ZS1zZWxmc2lnbmVkLmNydFwiOycsXG4gICcgIHNzbF9jZXJ0aWZpY2F0ZV9rZXkgXCIvZXRjL3BraS9wcml2YXRlL3Jlc3RhdGUtc2VsZnNpZ25lZC5rZXlcIjsnLFxuICBcIiAgc3NsX3Nlc3Npb25fY2FjaGUgc2hhcmVkOlNTTDoxbTtcIixcbiAgXCIgIHNzbF9zZXNzaW9uX3RpbWVvdXQgMTBtO1wiLFxuICBcIiAgc3NsX2NpcGhlcnMgUFJPRklMRT1TWVNURU07XCIsXG4gIFwiICBzc2xfcHJlZmVyX3NlcnZlcl9jaXBoZXJzIG9uO1wiLFxuICBcIlwiLFxuICBcIiAgbG9jYXRpb24gLyB7XCIsXG4gIGAgICAgcHJveHlfcGFzcyBodHRwOi8vbG9jYWxob3N0OiR7UkVTVEFURV9BRE1JTl9QT1JUfTtgLFxuICBcIiAgfVwiLFxuICBcIn1cIixcbl0uam9pbihcIlxcblwiKTtcbiJdfQ==
|
|
158
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2luZ2xlLW5vZGUtcmVzdGF0ZS1kZXBsb3ltZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vbGliL3Jlc3RhdGUtY29uc3RydWN0cy9zaW5nbGUtbm9kZS1yZXN0YXRlLWRlcGxveW1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7Ozs7R0FTRzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFSCwyQ0FBdUM7QUFDdkMsMkRBQTZDO0FBQzdDLG1EQUFxRDtBQUNyRCx5REFBMkM7QUFDM0MseURBQTJDO0FBRTNDLDZEQUFtRDtBQUVuRCw2Q0FBNEM7QUFFNUMsTUFBTSxtQkFBbUIsR0FBRyxHQUFHLENBQUM7QUFDaEMsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLENBQUM7QUFDL0IsTUFBTSxvQkFBb0IsR0FBRyxJQUFJLENBQUM7QUFDbEMsTUFBTSxrQkFBa0IsR0FBRyxJQUFJLENBQUM7QUFDaEMsTUFBTSxxQkFBcUIsR0FBRyw4QkFBOEIsQ0FBQztBQUM3RCxNQUFNLDBCQUEwQixHQUFHLFFBQVEsQ0FBQztBQUM1QyxNQUFNLHVCQUF1QixHQUFHLFFBQVEsQ0FBQztBQThCekM7Ozs7O0dBS0c7QUFDSCxNQUFhLDJCQUE0QixTQUFRLHNCQUFTO0lBUXhELFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBNkI7UUFDckUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixJQUFJLENBQUMsR0FBRyxHQUFHLEtBQUssQ0FBQyxHQUFHLElBQUksR0FBRyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBRTdFLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxjQUFjLEVBQUU7WUFDcEQsU0FBUyxFQUFFLElBQUksR0FBRyxDQUFDLGdCQUFnQixD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QixFQUFFO0lBQ0YsOERBQThEO0lBQzlELGtFQUFrRTtJQUNsRSxvQ0FBb0M7SUFDcEMsNEJBQTRCO0lBQzVCLCtCQUErQjtJQUMvQixpQ0FBaUM7SUFDakMsRUFBRTtJQUNGLGdCQUFnQjtJQUNoQixtQ0FBbUMsa0JBQWtCLEdBQUc7SUFDeEQsS0FBSztJQUNMLEdBQUc7Q0FDSixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjMgLSBSZXN0YXRlIFNvZnR3YXJlLCBJbmMuLCBSZXN0YXRlIEdtYkhcbiAqXG4gKiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgUmVzdGF0ZSBTREsgZm9yIE5vZGUuanMvVHlwZVNjcmlwdCxcbiAqIHdoaWNoIGlzIHJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS5cbiAqXG4gKiBZb3UgY2FuIGZpbmQgYSBjb3B5IG9mIHRoZSBsaWNlbnNlIGluIGZpbGUgTElDRU5TRSBpbiB0aGUgcm9vdFxuICogZGlyZWN0b3J5IG9mIHRoaXMgcmVwb3NpdG9yeSBvciBwYWNrYWdlLCBvciBhdFxuICogaHR0cHM6Ly9naXRodWIuY29tL3Jlc3RhdGVkZXYvc2RrLXR5cGVzY3JpcHQvYmxvYi9tYWluL0xJQ0VOU0VcbiAqL1xuXG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0ICogYXMgbG9ncyBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWxvZ3NcIjtcbmltcG9ydCB7IFJldGVudGlvbkRheXMgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWxvZ3NcIjtcbmltcG9ydCAqIGFzIGVjMiBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWVjMlwiO1xuaW1wb3J0ICogYXMgaWFtIGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtaWFtXCI7XG5pbXBvcnQgeyBJUmVzdGF0ZUVudmlyb25tZW50IH0gZnJvbSBcIi4vcmVzdGF0ZS1lbnZpcm9ubWVudFwiO1xuaW1wb3J0IHsgVHJhY2luZ01vZGUgfSBmcm9tIFwiLi9kZXBsb3ltZW50cy1jb21tb25cIjtcbmltcG9ydCAqIGFzIGNkayBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IFJlbW92YWxQb2xpY3kgfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcblxuY29uc3QgUFVCTElDX0lOR1JFU1NfUE9SVCA9IDQ0MztcbmNvbnN0IFBVQkxJQ19BRE1JTl9QT1JUID0gOTA3MztcbmNvbnN0IFJFU1RBVEVfSU5HUkVTU19QT1JUID0gODA4MDtcbmNvbnN0IFJFU1RBVEVfQURNSU5fUE9SVCA9IDkwNzA7XG5jb25zdCBSRVNUQVRFX0lNQUdFX0RFRkFVTFQgPSBcImRvY2tlci5pby9yZXN0YXRlZGV2L3Jlc3RhdGVcIjtcbmNvbnN0IFJFU1RBVEVfRE9DS0VSX0RFRkFVTFRfVEFHID0gXCJsYXRlc3RcIjtcbmNvbnN0IEFET1RfRE9DS0VSX0RFRkFVTFRfVEFHID0gXCJsYXRlc3RcIjtcblxuZXhwb3J0IGludGVyZmFjZSBTaW5nbGVOb2RlUmVzdGF0ZVByb3BzIHtcbiAgLyoqIFRoZSBWUEMgaW4gd2hpY2ggdG8gbGF1bmNoIHRoZSBSZXN0YXRlIGhvc3QuICovXG4gIHZwYz86IGVjMi5JVnBjO1xuXG4gIC8qKiBMb2cgZ3JvdXAgZm9yIFJlc3RhdGUgc2VydmljZSBsb2dzLiAqL1xuICBsb2dHcm91cD86IGxvZ3MuTG9nR3JvdXA7XG5cbiAgLyoqIFRyYWNpbmcgbW9kZSBmb3IgUmVzdGF0ZSBzZXJ2aWNlcy4gRGVmYXVsdHMgdG8ge0BsaW5rIFRyYWNpbmdNb2RlLkRJU0FCTEVEfS4gKi9cbiAgdHJhY2luZz86IFRyYWNpbmdNb2RlO1xuXG4gIC8qKiBQcmVmaXggZm9yIHJlc291cmNlcyBjcmVhdGVkIGJ5IHRoaXMgY29uc3RydWN0IHRoYXQgcmVxdWlyZSB1bmlxdWUgbmFtZXMuICovXG4gIHByZWZpeD86IHN0cmluZztcblxuICAvKiogUmVzdGF0ZSBEb2NrZXIgaW1hZ2UgbmFtZS4gRGVmYXVsdHMgdG8gYGxhdGVzdGAuICovXG4gIHJlc3RhdGVJbWFnZT86IHN0cmluZztcblxuICAvKiogUmVzdGF0ZSBEb2NrZXIgaW1hZ2UgdGFnLiBEZWZhdWx0cyB0byBgbGF0ZXN0YC4gKi9cbiAgcmVzdGF0ZVRhZz86IHN0cmluZztcblxuICAvKiogQW1hem9uIERpc3RybyBmb3IgT3BlbiBUZWxlbWV0cnkgRG9ja2VyIGltYWdlIHRhZy4gRGVmYXVsdHMgdG8gYGxhdGVzdGAuICovXG4gIGFkb3RUYWc/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFJlbW92YWwgcG9saWN5IGZvciBsb25nLWxpdmVkIHJlc291cmNlcyAoc3RvcmFnZSwgbG9ncykuIERlZmF1bHQ6IGBjZGsuUmVtb3ZhbFBvbGljeS5ERVNUUk9ZYC5cbiAgICovXG4gIHJlbW92YWxQb2xpY3k/OiBjZGsuUmVtb3ZhbFBvbGljeTtcbn1cblxuLyoqXG4gKiBDcmVhdGVzIGEgUmVzdGF0ZSBzZXJ2aWNlIGRlcGxveW1lbnQgYmFja2VkIGJ5IGEgc2luZ2xlIEVDMiBpbnN0YW5jZSwgYW5kIGlzIHN1aXRhYmxlIGZvclxuICogZGV2ZWxvcG1lbnQgYW5kIHRlc3RpbmcgcHVycG9zZXMuXG4gKiBUaGUgRUMyIGluc3RhbmNlIHdpbGwgYmUgY3JlYXRlZCBpbiB0aGUgZGVmYXVsdCBWUEMgdW5sZXNzIG90aGVyd2lzZSBzcGVjaWZpZWQuXG4gKiBUaGUgaW5zdGFuY2Ugd2lsbCBiZSBhc3NpZ25lZCBhIHB1YmxpYyBJUCBhZGRyZXNzLlxuICovXG5leHBvcnQgY2xhc3MgU2luZ2xlTm9kZVJlc3RhdGVEZXBsb3ltZW50IGV4dGVuZHMgQ29uc3RydWN0IGltcGxlbWVudHMgSVJlc3RhdGVFbnZpcm9ubWVudCB7XG4gIHJlYWRvbmx5IGluc3RhbmNlOiBlYzIuSW5zdGFuY2U7XG4gIHJlYWRvbmx5IGludm9rZXJSb2xlOiBpYW0uSVJvbGU7XG4gIHJlYWRvbmx5IHZwYzogZWMyLklWcGM7XG5cbiAgcmVhZG9ubHkgaW5ncmVzc1VybDogc3RyaW5nO1xuICByZWFkb25seSBhZG1pblVybDogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBTaW5nbGVOb2RlUmVzdGF0ZVByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIHRoaXMudnBjID0gcHJvcHMudnBjID8/IGVjMi5WcGMuZnJvbUxvb2t1cCh0aGlzLCBcIlZwY1wiLCB7IGlzRGVmYXVsdDogdHJ1ZSB9KTtcblxuICAgIHRoaXMuaW52b2tlclJvbGUgPSBuZXcgaWFtLlJvbGUodGhpcywgXCJJbnN0YW5jZVJvbGVcIiwge1xuICAgICAgYXNzdW1lZEJ5OiBuZXcgaWFtLlNlcnZpY2VQcmluY2lwYWwoXCJlYzIuYW1hem9uYXdzLmNvbVwiKSxcbiAgICAgIG1hbmFnZWRQb2xpY2llczogW2lhbS5NYW5hZ2VkUG9saWN5LmZyb21Bd3NNYW5hZ2VkUG9saWN5TmFtZShcIkFtYXpvblNTTU1hbmFnZWRJbnN0YW5jZUNvcmVcIildLFxuICAgIH0pO1xuXG4gICAgY29uc3QgbG9nR3JvdXAgPVxuICAgICAgcHJvcHMubG9nR3JvdXAgPz9cbiAgICAgIG5ldyBsb2dzLkxvZ0dyb3VwKHRoaXMsIFwiTG9nc1wiLCB7XG4gICAgICAgIGxvZ0dyb3VwTmFtZTogYC9yZXN0YXRlLyR7aWR9YCxcbiAgICAgICAgcmV0ZW50aW9uOiBSZXRlbnRpb25EYXlzLk9ORV9NT05USCxcbiAgICAgICAgcmVtb3ZhbFBvbGljeTogcHJvcHMucmVtb3ZhbFBvbGljeSA/PyBSZW1vdmFsUG9saWN5LkRFU1RST1ksXG4gICAgICB9KTtcbiAgICBsb2dHcm91cC5ncmFudFdyaXRlKHRoaXMuaW52b2tlclJvbGUpO1xuXG4gICAgY29uc3QgcmVzdGF0ZUltYWdlID0gcHJvcHMucmVzdGF0ZUltYWdlID8/IFJFU1RBVEVfSU1BR0VfREVGQVVMVDtcbiAgICBjb25zdCByZXN0YXRlVGFnID0gcHJvcHMucmVzdGF0ZVRhZyA/PyBSRVNUQVRFX0RPQ0tFUl9ERUZBVUxUX1RBRztcbiAgICBjb25zdCBhZG90VGFnID0gcHJvcHMuYWRvdFRhZyA/PyBBRE9UX0RPQ0tFUl9ERUZBVUxUX1RBRztcbiAgICBjb25zdCByZXN0YXRlSW5pdENvbW1hbmRzID0gZWMyLlVzZXJEYXRhLmZvckxpbnV4KCk7XG4gICAgcmVzdGF0ZUluaXRDb21tYW5kcy5hZGRDb21tYW5kcyhcbiAgICAgIFwieXVtIHVwZGF0ZSAteVwiLFxuICAgICAgXCJ5dW0gaW5zdGFsbCAteSBkb2NrZXIgbmdpbnhcIixcblxuICAgICAgXCJzeXN0ZW1jdGwgZW5hYmxlIGRvY2tlci5zZXJ2aWNlXCIsXG4gICAgICBcInN5c3RlbWN0bCBzdGFydCBkb2NrZXIuc2VydmljZVwiLFxuICAgICAgW1xuICAgICAgICBcImRvY2tlciBydW4gLS1uYW1lIGFkb3QgLS1yZXN0YXJ0IHVubGVzcy1zdG9wcGVkIC0tZGV0YWNoXCIsXG4gICAgICAgIFwiIC1wIDQzMTc6NDMxNyAtcCA1NTY4MDo1NTY4MCAtcCA4ODg5Ojg4ODhcIixcbiAgICAgICAgYCBwdWJsaWMuZWNyLmF3cy9hd3Mtb2JzZXJ2YWJpbGl0eS9hd3Mtb3RlbC1jb2xsZWN0b3I6JHthZG90VGFnfWAsXG4gICAgICBdLmpvaW4oXCJcIiksXG4gICAgICBbXG4gICAgICAgIFwiZG9ja2VyIHJ1biAtLW5hbWUgcmVzdGF0ZSAtLXJlc3RhcnQgdW5sZXNzLXN0b3BwZWQgLS1kZXRhY2hcIixcbiAgICAgICAgXCIgLS12b2x1bWUgL3Zhci9yZXN0YXRlOi90YXJnZXQgLS1uZXR3b3JrPWhvc3RcIixcbiAgICAgICAgXCIgLWUgUkVTVEFURV9PQlNFUlZBQklMSVRZX19MT0dfX0ZPUk1BVD1Kc29uIC1lIFJVU1RfTE9HPWluZm8scmVzdGF0ZV93b3JrZXI6OnBhcnRpdGlvbj13YXJuXCIsXG4gICAgICAgIFwiIC1lIFJFU1RBVEVfT0JTRVJWQUJJTElUWV9fVFJBQ0lOR19fRU5EUE9JTlQ9aHR0cDovL2xvY2FsaG9zdDo0MzE3XCIsXG4gICAgICAgIGAgLS1sb2ctZHJpdmVyPWF3c2xvZ3MgLS1sb2ctb3B0IGF3c2xvZ3MtZ3JvdXA9JHtsb2dHcm91cC5sb2dHcm91cE5hbWV9YCxcbiAgICAgICAgYCAke3Jlc3RhdGVJbWFnZX06JHtyZXN0YXRlVGFnfWAsXG4gICAgICBdLmpvaW4oXCJcIiksXG5cbiAgICAgIFwibWtkaXIgLXAgL2V0Yy9wa2kvcHJpdmF0ZVwiLFxuICAgICAgW1xuICAgICAgICBcIm9wZW5zc2wgcmVxIC1uZXcgLXg1MDkgLW5vZGVzIC1zaGEyNTYgLWRheXMgMzY1IC1leHRlbnNpb25zIHYzX2NhXCIsXG4gICAgICAgIFwiIC1zdWJqICcvQz1ERS9TVD1CZXJsaW4vTD1CZXJsaW4vTz1yZXN0YXRlLmRldi9PVT1kZW1vL0NOPXJlc3RhdGUuZXhhbXBsZS5jb20nXCIsXG4gICAgICAgIFwiIC1uZXdrZXkgcnNhOjIwNDggLWtleW91dCAvZXRjL3BraS9wcml2YXRlL3Jlc3RhdGUtc2VsZnNpZ25lZC5rZXkgLW91dCAvZXRjL3BraS9wcml2YXRlL3Jlc3RhdGUtc2VsZnNpZ25lZC5jcnRcIixcbiAgICAgIF0uam9pbihcIlwiKSxcbiAgICAgIFtcImNhdCA8PCBFT0YgPiAvZXRjL25naW54L2NvbmYuZC9yZXN0YXRlLWluZ3Jlc3MuY29uZlwiLCBOR0lOWF9SRVZFUlNFX1BST1hZX0NPTkZJRywgXCJFT0ZcIl0uam9pbihcIlxcblwiKSxcbiAgICAgIFwic3lzdGVtY3RsIGVuYWJsZSBuZ2lueFwiLFxuICAgICAgXCJzeXN0ZW1jdGwgc3RhcnQgbmdpbnhcIixcbiAgICApO1xuXG4gICAgY29uc3QgcmVzdGF0ZUluc3RhbmNlID0gbmV3IGVjMi5JbnN0YW5jZSh0aGlzLCBcIkhvc3RcIiwge1xuICAgICAgdnBjOiB0aGlzLnZwYyxcbiAgICAgIHZwY1N1Ym5ldHM6IHsgc3VibmV0VHlwZTogZWMyLlN1Ym5ldFR5cGUuUFVCTElDIH0sXG4gICAgICBpbnN0YW5jZVR5cGU6IG5ldyBlYzIuSW5zdGFuY2VUeXBlKFwidDRnLm1pY3JvXCIpLFxuICAgICAgbWFjaGluZUltYWdlOiBlYzIuTWFjaGluZUltYWdlLmxhdGVzdEFtYXpvbkxpbnV4MjAyMyh7XG4gICAgICAgIGNwdVR5cGU6IGVjMi5BbWF6b25MaW51eENwdVR5cGUuQVJNXzY0LFxuICAgICAgfSksXG4gICAgICByb2xlOiB0aGlzLmludm9rZXJSb2xlLFxuICAgICAgdXNlckRhdGE6IHJlc3RhdGVJbml0Q29tbWFuZHMsXG4gICAgfSk7XG4gICAgdGhpcy5pbnN0YW5jZSA9IHJlc3RhdGVJbnN0YW5jZTtcblxuICAgIC8vIFdlIHN0YXJ0IHRoZSBBRE9UIGNvbGxlY3RvciByZWdhcmRsZXNzLCBhbmQgb25seSBjb250cm9sIHdoZXRoZXIgdGhleSB3aWxsIGJlIHB1Ymxpc2hlZCB0byBYLVJheSB2aWEgaW5zdGFuY2VcbiAgICAvLyByb2xlIHBlcm1pc3Npb25zLiBUaGlzIHdheSBoaXN0b3JpYyB0cmFjZXMgd2lsbCBiZSBidWZmZXJlZCBvbiB0aGUgaG9zdCwgZXZlbiBpZiB0cmFjaW5nIGlzIGRpc2FibGVkIGluaXRpYWxseS5cbiAgICBpZiAocHJvcHMudHJhY2luZyA9PT0gVHJhY2luZ01vZGUuQVdTX1hSQVkpIHtcbiAgICAgIHJlc3RhdGVJbnN0YW5jZS5yb2xlLmFkZE1hbmFnZWRQb2xpY3koaWFtLk1hbmFnZWRQb2xpY3kuZnJvbUF3c01hbmFnZWRQb2xpY3lOYW1lKFwiQVdTWHJheVdyaXRlT25seUFjY2Vzc1wiKSk7XG4gICAgfVxuXG4gICAgY29uc3QgcmVzdGF0ZUluc3RhbmNlU2VjdXJpdHlHcm91cCA9IG5ldyBlYzIuU2VjdXJpdHlHcm91cCh0aGlzLCBcIlJlc3RhdGVTZWN1cml0eUdyb3VwXCIsIHtcbiAgICAgIHZwYzogdGhpcy52cGMsXG4gICAgICBzZWN1cml0eUdyb3VwTmFtZTogXCJSZXN0YXRlU2VjdXJpdHlHcm91cFwiLFxuICAgICAgZGVzY3JpcHRpb246IFwiUmVzdGF0ZSBzZXJ2aWNlIEFDTHNcIixcbiAgICB9KTtcbiAgICByZXN0YXRlSW5zdGFuY2UuYWRkU2VjdXJpdHlHcm91cChyZXN0YXRlSW5zdGFuY2VTZWN1cml0eUdyb3VwKTtcblxuICAgIHJlc3RhdGVJbnN0YW5jZVNlY3VyaXR5R3JvdXAuYWRkSW5ncmVzc1J1bGUoXG4gICAgICBlYzIuUGVlci5hbnlJcHY0KCksXG4gICAgICBlYzIuUG9ydC50Y3AoNDQzKSxcbiAgICAgIFwiQWxsb3cgdHJhZmZpYyBmcm9tIGFueXdoZXJlIHRvIFJlc3RhdGUgaW5ncmVzcyBwb3J0XCIsXG4gICAgKTtcbiAgICByZXN0YXRlSW5zdGFuY2VTZWN1cml0eUdyb3VwLmFkZEluZ3Jlc3NSdWxlKFxuICAgICAgZWMyLlBlZXIuYW55SXB2NCgpLFxuICAgICAgZWMyLlBvcnQudGNwKDkwNzMpLFxuICAgICAgXCJBbGxvdyB0cmFmZmljIGZyb20gYW55d2hlcmUgdG8gUmVzdGF0ZSBhZG1pbiBwb3J0XCIsXG4gICAgKTtcblxuICAgIHRoaXMuaW5ncmVzc1VybCA9IGBodHRwczovLyR7cmVzdGF0ZUluc3RhbmNlLmluc3RhbmNlUHVibGljRG5zTmFtZX0ke1xuICAgICAgUFVCTElDX0lOR1JFU1NfUE9SVCA9PSA0NDMgPyBcIlwiIDogYDoke1BVQkxJQ19JTkdSRVNTX1BPUlR9YFxuICAgIH1gO1xuICAgIHRoaXMuYWRtaW5VcmwgPSBgaHR0cHM6Ly8ke3Jlc3RhdGVJbnN0YW5jZS5pbnN0YW5jZVB1YmxpY0Ruc05hbWV9OiR7UFVCTElDX0FETUlOX1BPUlR9YDtcbiAgfVxufVxuXG5jb25zdCBOR0lOWF9SRVZFUlNFX1BST1hZX0NPTkZJRyA9IFtcbiAgXCJzZXJ2ZXIge1wiLFxuICBcIiAgbGlzdGVuIDQ0MyBzc2wgaHR0cDI7XCIsXG4gIFwiICBsaXN0ZW4gWzo6XTo0NDMgc3NsIGh0dHAyO1wiLFxuICBcIiAgc2VydmVyX25hbWUgXztcIixcbiAgXCIgIHJvb3QgL3Vzci9zaGFyZS9uZ2lueC9odG1sO1wiLFxuICBcIlwiLFxuICAnICBzc2xfY2VydGlmaWNhdGUgXCIvZXRjL3BraS9wcml2YXRlL3Jlc3RhdGUtc2VsZnNpZ25lZC5jcnRcIjsnLFxuICAnICBzc2xfY2VydGlmaWNhdGVfa2V5IFwiL2V0Yy9wa2kvcHJpdmF0ZS9yZXN0YXRlLXNlbGZzaWduZWQua2V5XCI7JyxcbiAgXCIgIHNzbF9zZXNzaW9uX2NhY2hlIHNoYXJlZDpTU0w6MW07XCIsXG4gIFwiICBzc2xfc2Vzc2lvbl90aW1lb3V0IDEwbTtcIixcbiAgXCIgIHNzbF9jaXBoZXJzIFBST0ZJTEU9U1lTVEVNO1wiLFxuICBcIiAgc3NsX3ByZWZlcl9zZXJ2ZXJfY2lwaGVycyBvbjtcIixcbiAgXCJcIixcbiAgXCIgIGxvY2F0aW9uIC8ge1wiLFxuICBgICAgIHByb3h5X3Bhc3MgaHR0cDovL2xvY2FsaG9zdDoke1JFU1RBVEVfSU5HUkVTU19QT1JUfTtgLFxuICBcIiAgfVwiLFxuICBcIn1cIixcbiAgXCJcIixcbiAgXCJzZXJ2ZXIge1wiLFxuICBcIiAgbGlzdGVuIDkwNzMgc3NsIGh0dHAyO1wiLFxuICBcIiAgbGlzdGVuIFs6Ol06OTA3MyBzc2wgaHR0cDI7XCIsXG4gIFwiICBzZXJ2ZXJfbmFtZSBfO1wiLFxuICBcIiAgcm9vdCAvdXNyL3NoYXJlL25naW54L2h0bWw7XCIsXG4gIFwiXCIsXG4gICcgIHNzbF9jZXJ0aWZpY2F0ZSBcIi9ldGMvcGtpL3ByaXZhdGUvcmVzdGF0ZS1zZWxmc2lnbmVkLmNydFwiOycsXG4gICcgIHNzbF9jZXJ0aWZpY2F0ZV9rZXkgXCIvZXRjL3BraS9wcml2YXRlL3Jlc3RhdGUtc2VsZnNpZ25lZC5rZXlcIjsnLFxuICBcIiAgc3NsX3Nlc3Npb25fY2FjaGUgc2hhcmVkOlNTTDoxbTtcIixcbiAgXCIgIHNzbF9zZXNzaW9uX3RpbWVvdXQgMTBtO1wiLFxuICBcIiAgc3NsX2NpcGhlcnMgUFJPRklMRT1TWVNURU07XCIsXG4gIFwiICBzc2xfcHJlZmVyX3NlcnZlcl9jaXBoZXJzIG9uO1wiLFxuICBcIlwiLFxuICBcIiAgbG9jYXRpb24gLyB7XCIsXG4gIGAgICAgcHJveHlfcGFzcyBodHRwOi8vbG9jYWxob3N0OiR7UkVTVEFURV9BRE1JTl9QT1JUfTtgLFxuICBcIiAgfVwiLFxuICBcIn1cIixcbl0uam9pbihcIlxcblwiKTtcbiJdfQ==
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@restatedev/restate-cdk",
|
|
3
3
|
"description": "Restate.dev CDK constructs",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.8.1",
|
|
5
5
|
"author": "Restate Developers",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"email": "code@restate.dev",
|
|
@@ -19,28 +19,29 @@
|
|
|
19
19
|
"prebundle": "rm -rf dist",
|
|
20
20
|
"postbundle": "cd dist && zip -r index.zip index.js*",
|
|
21
21
|
"watch": "tsc -w",
|
|
22
|
-
"test": "jest
|
|
22
|
+
"test": "jest",
|
|
23
23
|
"cdk": "cdk"
|
|
24
24
|
},
|
|
25
25
|
"devDependencies": {
|
|
26
|
-
"@types/aws-lambda": "^8.10.
|
|
26
|
+
"@types/aws-lambda": "^8.10.133",
|
|
27
27
|
"@types/jest": "^29.5.11",
|
|
28
|
-
"@types/node": "^20.11.
|
|
28
|
+
"@types/node": "^20.11.11",
|
|
29
29
|
"@types/source-map-support": "^0.5.10",
|
|
30
|
-
"
|
|
31
|
-
"esbuild": "^0.19.11",
|
|
30
|
+
"esbuild": "^0.20.0",
|
|
32
31
|
"jest": "^29.7.0",
|
|
33
|
-
"
|
|
34
|
-
"
|
|
32
|
+
"jest-cdk-snapshot": "^2.1.1",
|
|
33
|
+
"prettier": "^3.2.4",
|
|
34
|
+
"source-map-support": "^0.5.21",
|
|
35
|
+
"ts-jest": "^29.1.2",
|
|
35
36
|
"ts-node": "^10.9.2",
|
|
36
37
|
"typescript": "^5.3.3"
|
|
37
38
|
},
|
|
38
39
|
"peerDependencies": {
|
|
39
|
-
"@aws-sdk/client-secrets-manager": "^3.
|
|
40
|
-
"aws-cdk
|
|
40
|
+
"@aws-sdk/client-secrets-manager": "^3.556.0",
|
|
41
|
+
"aws-cdk": "^2.138.0",
|
|
42
|
+
"aws-cdk-lib": "^2.138.0",
|
|
41
43
|
"constructs": "^10.0.0",
|
|
42
|
-
"node-fetch": "^3.3.2"
|
|
43
|
-
"source-map-support": "^0.5.21"
|
|
44
|
+
"node-fetch": "^3.3.2"
|
|
44
45
|
},
|
|
45
46
|
"directories": {
|
|
46
47
|
"lib": "lib",
|