@restatedev/restate-cdk 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/dist/index.js +11 -1
- package/dist/lambda-service-registry.js +11 -1
- package/dist/register-service-handler/index.js +11 -1
- package/dist/restate-lambda-services.d.ts +33 -0
- package/dist/restate-lambda-services.js +74 -0
- package/dist/single-node-restate-instance.d.ts +17 -5
- package/dist/single-node-restate-instance.js +30 -3
- package/package.json +1 -1
- package/test/.keep +0 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2023 - Restate Software, Inc., Restate GmbH
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
/*
|
|
3
|
+
* Copyright (c) 2023 - Restate Software, Inc., Restate GmbH
|
|
4
|
+
*
|
|
5
|
+
* This file is part of the Restate SDK for Node.js/TypeScript,
|
|
6
|
+
* which is released under the MIT license.
|
|
7
|
+
*
|
|
8
|
+
* You can find a copy of the license in file LICENSE in the root
|
|
9
|
+
* directory of this repository or package, or at
|
|
10
|
+
* https://github.com/restatedev/sdk-typescript/blob/main/LICENSE
|
|
11
|
+
*/
|
|
2
12
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
13
|
if (k2 === undefined) k2 = k;
|
|
4
14
|
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
@@ -16,4 +26,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
16
26
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
27
|
__exportStar(require("./lambda-service-registry"), exports);
|
|
18
28
|
__exportStar(require("./single-node-restate-instance"), exports);
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9saWIvcmVzdGF0ZS1jb25zdHJ1Y3RzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7Ozs7O0dBU0c7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFSCw0REFBMEM7QUFDMUMsaUVBQStDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAyMyAtIFJlc3RhdGUgU29mdHdhcmUsIEluYy4sIFJlc3RhdGUgR21iSFxuICpcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBSZXN0YXRlIFNESyBmb3IgTm9kZS5qcy9UeXBlU2NyaXB0LFxuICogd2hpY2ggaXMgcmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICpcbiAqIFlvdSBjYW4gZmluZCBhIGNvcHkgb2YgdGhlIGxpY2Vuc2UgaW4gZmlsZSBMSUNFTlNFIGluIHRoZSByb290XG4gKiBkaXJlY3Rvcnkgb2YgdGhpcyByZXBvc2l0b3J5IG9yIHBhY2thZ2UsIG9yIGF0XG4gKiBodHRwczovL2dpdGh1Yi5jb20vcmVzdGF0ZWRldi9zZGstdHlwZXNjcmlwdC9ibG9iL21haW4vTElDRU5TRVxuICovXG5cbmV4cG9ydCAqIGZyb20gXCIuL2xhbWJkYS1zZXJ2aWNlLXJlZ2lzdHJ5XCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zaW5nbGUtbm9kZS1yZXN0YXRlLWluc3RhbmNlXCI7Il19
|
|
@@ -1,4 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
/*
|
|
3
|
+
* Copyright (c) 2023 - Restate Software, Inc., Restate GmbH
|
|
4
|
+
*
|
|
5
|
+
* This file is part of the Restate SDK for Node.js/TypeScript,
|
|
6
|
+
* which is released under the MIT license.
|
|
7
|
+
*
|
|
8
|
+
* You can find a copy of the license in file LICENSE in the root
|
|
9
|
+
* directory of this repository or package, or at
|
|
10
|
+
* https://github.com/restatedev/sdk-typescript/blob/main/LICENSE
|
|
11
|
+
*/
|
|
2
12
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
13
|
if (k2 === undefined) k2 = k;
|
|
4
14
|
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
@@ -82,4 +92,4 @@ class RestateServiceRegistrar extends constructs_1.Construct {
|
|
|
82
92
|
});
|
|
83
93
|
}
|
|
84
94
|
}
|
|
85
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
95
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFtYmRhLXNlcnZpY2UtcmVnaXN0cnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9saWIvcmVzdGF0ZS1jb25zdHJ1Y3RzL2xhbWJkYS1zZXJ2aWNlLXJlZ2lzdHJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7Ozs7O0dBU0c7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRUgsaURBQW1DO0FBQ25DLHlEQUEyQztBQUUzQywyQ0FBdUM7QUE0QnZDOzs7O0dBSUc7QUFDSCxNQUFhLHFCQUFzQixTQUFRLHNCQUFTO0lBSWxELFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBaUM7UUFDekUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixJQUFJLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQyxlQUFlLENBQUM7UUFDN0MsSUFBSSxDQUFDLHlCQUF5QixHQUFHLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQztJQUNuRSxDQUFDO0lBRU0sUUFBUSxDQUFDLE9BQTJCO1FBQ3pDLE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxHQUFHLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxxQkFBcUIsRUFBRTtZQUN0RSxVQUFVLEVBQUU7Z0JBQ1YsSUFBSSxHQUFHLENBQUMsZUFBZSxDQUFDO29CQUN0QixHQUFHLEVBQUUsK0JBQStCO29CQUNwQyxPQUFPLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQztvQkFDbEMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQzt5QkFDM0MsR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7aUJBQzlDLENBQUM7YUFDSDtTQUNGLENBQUMsQ0FBQztRQUVILE1BQU0sV0FBVyxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxhQUFhLEVBQUUsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3RGLFdBQVcsQ0FBQyxrQkFBa0IsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBRXBELEtBQUssTUFBTSxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsRUFBRTtZQUNsRSxJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sRUFBRSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsRUFBRSxtQkFBbUIsQ0FBQyxDQUFDO1NBQ3ZFO0lBQ0gsQ0FBQztJQUVPLGVBQWUsQ0FBQyxPQUEyQixFQUFFLE9BR3BELEVBQUUsbUJBQStCO1FBQ2hDLE1BQU0sU0FBUyxHQUFHLElBQUksdUJBQXVCLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxXQUFXLEVBQUU7WUFDekYsT0FBTztZQUNQLE9BQU87WUFDUCxZQUFZLEVBQUUsSUFBSSxDQUFDLHlCQUF5QjtTQUM3QyxDQUFDLENBQUM7UUFFSCw2R0FBNkc7UUFDN0csaUdBQWlHO1FBQ2pHLFNBQVMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLG1CQUFtQixDQUFDLENBQUM7SUFDcEQsQ0FBQztDQUNGO0FBN0NELHNEQTZDQztBQUVELE1BQU0sdUJBQXdCLFNBQVEsc0JBQVM7SUFDN0MsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFDNUIsS0FPQztRQUVYLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFakIsSUFBSSxHQUFHLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLFdBQVcsRUFBRTtZQUN4RSxZQUFZLEVBQUUsS0FBSyxDQUFDLFlBQVk7WUFDaEMsWUFBWSxFQUFFLGlDQUFpQztZQUMvQyxVQUFVLEVBQUU7Z0JBQ1YsV0FBVyxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSTtnQkFDL0IsWUFBWSxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsWUFBWTtnQkFDeEMsZ0JBQWdCLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLFdBQVc7Z0JBQ2xFLGFBQWEsRUFBRSxHQUFHLENBQUMsYUFBYSxDQUFDLE9BQU87YUFDUjtTQUNuQyxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDIzIC0gUmVzdGF0ZSBTb2Z0d2FyZSwgSW5jLiwgUmVzdGF0ZSBHbWJIXG4gKlxuICogVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIFJlc3RhdGUgU0RLIGZvciBOb2RlLmpzL1R5cGVTY3JpcHQsXG4gKiB3aGljaCBpcyByZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4gKlxuICogWW91IGNhbiBmaW5kIGEgY29weSBvZiB0aGUgbGljZW5zZSBpbiBmaWxlIExJQ0VOU0UgaW4gdGhlIHJvb3RcbiAqIGRpcmVjdG9yeSBvZiB0aGlzIHJlcG9zaXRvcnkgb3IgcGFja2FnZSwgb3IgYXRcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9yZXN0YXRlZGV2L3Nkay10eXBlc2NyaXB0L2Jsb2IvbWFpbi9MSUNFTlNFXG4gKi9cblxuaW1wb3J0ICogYXMgY2RrIGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0ICogYXMgaWFtIGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtaWFtXCI7XG5pbXBvcnQgKiBhcyBsYW1iZGEgZnJvbSBcImF3cy1jZGstbGliL2F3cy1sYW1iZGFcIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBSZWdpc3RyYXRpb25Qcm9wZXJ0aWVzIH0gZnJvbSBcIi4vcmVnaXN0ZXItc2VydmljZS1oYW5kbGVyXCI7XG5cbi8qKlxuICogQSBSZXN0YXRlIFJQQyBzZXJ2aWNlIHBhdGguIEV4YW1wbGU6IGBncmVldGVyYC5cbiAqL1xudHlwZSBSZXN0YXRlUGF0aCA9IHN0cmluZztcblxuZXhwb3J0IGludGVyZmFjZSBSZXN0YXRlSW5zdGFuY2VSZWYge1xuICByZWFkb25seSBtZXRhRW5kcG9pbnQ6IHN0cmluZztcbiAgcmVhZG9ubHkgaW52b2tlclJvbGVBcm46IHN0cmluZztcbn1cblxuLyoqXG4gKiBBIGNvbGxlY3Rpb24gb2YgTGFtYmRhIFJlc3RhdGUgUlBDIFNlcnZpY2UgaGFuZGxlcnMuXG4gKi9cbmV4cG9ydCB0eXBlIExhbWJkYVNlcnZpY2VSZWdpc3RyeVByb3BzID0ge1xuICAvKipcbiAgICogTWFwcGluZ3MgZnJvbSBzZXJ2aWNlIHBhdGggdG8gTGFtYmRhIGhhbmRsZXIuXG4gICAqL1xuICBzZXJ2aWNlSGFuZGxlcnM6IFJlY29yZDxSZXN0YXRlUGF0aCwgbGFtYmRhLkZ1bmN0aW9uPjtcblxuICAvKipcbiAgICogQ3VzdG9tIHJlc291cmNlIHByb3ZpZGVyIHRva2VuIHJlcXVpcmVkIGZvciBzZXJ2aWNlIGRpc2NvdmVyeS5cbiAgICovXG4gIHJlZ2lzdHJhdGlvblByb3ZpZGVyVG9rZW46IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgY29sbGVjdGlvbiBvZiBMYW1iZGEtYmFzZWQgUmVzdGF0ZSBSUEMgc2VydmljZXMuIFRoaXMgY29tcG9uZW50IGlzIHVzZWQgdG8gcmVnaXN0ZXJcbiAqIHRoZW0gd2l0aCBhIHNpbmdsZSBSZXN0YXRlIGluc3RhbmNlLiBUaGlzIGNyZWF0ZXMgYSBjdXN0b20gcmVzb3VyY2Ugd2hpY2ggd2lsbCB0cmlnZ2VyIHNlcnZpY2VcbiAqIGRpc2NvdmVyeSBvbiBhbnkgaGFuZGxlciBjaGFuZ2VzIGRlcGxveWVkIHRocm91Z2ggQ0RLL0Nsb3VkRm9ybWF0aW9uLlxuICovXG5leHBvcnQgY2xhc3MgTGFtYmRhU2VydmljZVJlZ2lzdHJ5IGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgcHJpdmF0ZSByZWFkb25seSBzZXJ2aWNlSGFuZGxlcnM6IFJlY29yZDxSZXN0YXRlUGF0aCwgbGFtYmRhLkZ1bmN0aW9uPjtcbiAgcHJpdmF0ZSByZWFkb25seSByZWdpc3RyYXRpb25Qcm92aWRlclRva2VuOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IExhbWJkYVNlcnZpY2VSZWdpc3RyeVByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIHRoaXMuc2VydmljZUhhbmRsZXJzID0gcHJvcHMuc2VydmljZUhhbmRsZXJzO1xuICAgIHRoaXMucmVnaXN0cmF0aW9uUHJvdmlkZXJUb2tlbiA9IHByb3BzLnJlZ2lzdHJhdGlvblByb3ZpZGVyVG9rZW47XG4gIH1cblxuICBwdWJsaWMgcmVnaXN0ZXIocmVzdGF0ZTogUmVzdGF0ZUluc3RhbmNlUmVmKSB7XG4gICAgY29uc3QgYWxsb3dJbnZva2VGdW5jdGlvbiA9IG5ldyBpYW0uUG9saWN5KHRoaXMsIFwiQWxsb3dJbnZva2VGdW5jdGlvblwiLCB7XG4gICAgICBzdGF0ZW1lbnRzOiBbXG4gICAgICAgIG5ldyBpYW0uUG9saWN5U3RhdGVtZW50KHtcbiAgICAgICAgICBzaWQ6IFwiQWxsb3dJbnZva2VBbnlGdW5jdGlvblZlcnNpb25cIixcbiAgICAgICAgICBhY3Rpb25zOiBbXCJsYW1iZGE6SW52b2tlRnVuY3Rpb25cIl0sXG4gICAgICAgICAgcmVzb3VyY2VzOiBPYmplY3QudmFsdWVzKHRoaXMuc2VydmljZUhhbmRsZXJzKVxuICAgICAgICAgICAgLm1hcChoYW5kbGVyID0+IGhhbmRsZXIuZnVuY3Rpb25Bcm4gKyBcIjoqXCIpLFxuICAgICAgICB9KSxcbiAgICAgIF0sXG4gICAgfSk7XG5cbiAgICBjb25zdCBpbnZva2VyUm9sZSA9IGlhbS5Sb2xlLmZyb21Sb2xlQXJuKHRoaXMsIFwiSW52b2tlclJvbGVcIiwgcmVzdGF0ZS5pbnZva2VyUm9sZUFybik7XG4gICAgaW52b2tlclJvbGUuYXR0YWNoSW5saW5lUG9saWN5KGFsbG93SW52b2tlRnVuY3Rpb24pO1xuXG4gICAgZm9yIChjb25zdCBbcGF0aCwgaGFuZGxlcl0gb2YgT2JqZWN0LmVudHJpZXModGhpcy5zZXJ2aWNlSGFuZGxlcnMpKSB7XG4gICAgICB0aGlzLnJlZ2lzdGVySGFuZGxlcihyZXN0YXRlLCB7IHBhdGgsIGhhbmRsZXIgfSwgYWxsb3dJbnZva2VGdW5jdGlvbik7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSByZWdpc3RlckhhbmRsZXIocmVzdGF0ZTogUmVzdGF0ZUluc3RhbmNlUmVmLCBzZXJ2aWNlOiB7XG4gICAgcGF0aDogUmVzdGF0ZVBhdGgsXG4gICAgaGFuZGxlcjogbGFtYmRhLkZ1bmN0aW9uXG4gIH0sIGFsbG93SW52b2tlRnVuY3Rpb246IGlhbS5Qb2xpY3kpIHtcbiAgICBjb25zdCByZWdpc3RyYXIgPSBuZXcgUmVzdGF0ZVNlcnZpY2VSZWdpc3RyYXIodGhpcywgc2VydmljZS5oYW5kbGVyLm5vZGUuaWQgKyBcIkRpc2NvdmVyeVwiLCB7XG4gICAgICByZXN0YXRlLFxuICAgICAgc2VydmljZSxcbiAgICAgIHNlcnZpY2VUb2tlbjogdGhpcy5yZWdpc3RyYXRpb25Qcm92aWRlclRva2VuLFxuICAgIH0pO1xuXG4gICAgLy8gQ2xvdWRGb3JtYXRpb24gZG9lc24ndCBrbm93IHRoYXQgUmVzdGF0ZSBkZXBlbmRzIG9uIHRoaXMgcm9sZSB0byBjYWxsIHNlcnZpY2VzOyB3ZSBtdXN0IGVuc3VyZSB0aGF0IExhbWJkYVxuICAgIC8vIHBlcm1pc3Npb24gY2hhbmdlcyBhcmUgYXBwbGllZCBiZWZvcmUgd2UgY2FuIHRyaWdnZXIgZGlzY292ZXJ5IChyZXByZXNlbnRlZCBieSB0aGUgcmVnaXN0cmFyKS5cbiAgICByZWdpc3RyYXIubm9kZS5hZGREZXBlbmRlbmN5KGFsbG93SW52b2tlRnVuY3Rpb24pO1xuICB9XG59XG5cbmNsYXNzIFJlc3RhdGVTZXJ2aWNlUmVnaXN0cmFyIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZyxcbiAgICAgICAgICAgICAgcHJvcHM6IHtcbiAgICAgICAgICAgICAgICByZXN0YXRlOiBSZXN0YXRlSW5zdGFuY2VSZWYsXG4gICAgICAgICAgICAgICAgc2VydmljZToge1xuICAgICAgICAgICAgICAgICAgcGF0aDogUmVzdGF0ZVBhdGgsXG4gICAgICAgICAgICAgICAgICBoYW5kbGVyOiBsYW1iZGEuRnVuY3Rpb25cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHNlcnZpY2VUb2tlbjogc3RyaW5nXG4gICAgICAgICAgICAgIH0sXG4gICkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICBuZXcgY2RrLkN1c3RvbVJlc291cmNlKHRoaXMsIHByb3BzLnNlcnZpY2UuaGFuZGxlci5ub2RlLmlkICsgXCJEaXNjb3ZlcnlcIiwge1xuICAgICAgc2VydmljZVRva2VuOiBwcm9wcy5zZXJ2aWNlVG9rZW4sXG4gICAgICByZXNvdXJjZVR5cGU6IFwiQ3VzdG9tOjpSZXN0YXRlU2VydmljZVJlZ2lzdHJhclwiLFxuICAgICAgcHJvcGVydGllczoge1xuICAgICAgICBzZXJ2aWNlUGF0aDogcHJvcHMuc2VydmljZS5wYXRoLFxuICAgICAgICBtZXRhRW5kcG9pbnQ6IHByb3BzLnJlc3RhdGUubWV0YUVuZHBvaW50LFxuICAgICAgICBzZXJ2aWNlTGFtYmRhQXJuOiBwcm9wcy5zZXJ2aWNlLmhhbmRsZXIuY3VycmVudFZlcnNpb24uZnVuY3Rpb25Bcm4sXG4gICAgICAgIHJlbW92YWxQb2xpY3k6IGNkay5SZW1vdmFsUG9saWN5LkRFU1RST1ksXG4gICAgICB9IHNhdGlzZmllcyBSZWdpc3RyYXRpb25Qcm9wZXJ0aWVzLFxuICAgIH0pO1xuICB9XG59Il19
|
|
@@ -1,4 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
/*
|
|
3
|
+
* Copyright (c) 2023 - Restate Software, Inc., Restate GmbH
|
|
4
|
+
*
|
|
5
|
+
* This file is part of the Restate SDK for Node.js/TypeScript,
|
|
6
|
+
* which is released under the MIT license.
|
|
7
|
+
*
|
|
8
|
+
* You can find a copy of the license in file LICENSE in the root
|
|
9
|
+
* directory of this repository or package, or at
|
|
10
|
+
* https://github.com/restatedev/sdk-typescript/blob/main/LICENSE
|
|
11
|
+
*/
|
|
2
12
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
13
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
14
|
};
|
|
@@ -96,4 +106,4 @@ const handler = async function (event) {
|
|
|
96
106
|
};
|
|
97
107
|
};
|
|
98
108
|
exports.handler = handler;
|
|
99
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9saWIvcmVzdGF0ZS1jb25zdHJ1Y3RzL3JlZ2lzdGVyLXNlcnZpY2UtaGFuZGxlci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFHQSw0REFBK0I7QUFnQi9COzs7R0FHRztBQUNJLE1BQU0sT0FBTyxHQUNsQixLQUFLLFdBQVUsS0FBSztJQUNsQixPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUV2QixJQUFJLEtBQUssQ0FBQyxXQUFXLEtBQUssUUFBUSxFQUFFO1FBQ2xDLGlIQUFpSDtRQUNqSCwyR0FBMkc7UUFDM0csK0dBQStHO1FBQy9HLHVCQUF1QjtRQUV2QixvRUFBb0U7UUFDcEUsMkRBQTJEO1FBQzNELDhDQUE4QztRQUM5QyxtR0FBbUc7UUFDbkcsMkZBQTJGO1FBQzNGLFFBQVE7UUFDUixtQ0FBbUM7UUFDbkMsMEJBQTBCO1FBQzFCLFNBQVM7UUFDVCx5REFBeUQ7UUFDekQsdUVBQXVFO1FBQ3ZFLElBQUk7UUFFSixPQUFPO1lBQ0wsTUFBTSxFQUFFLFNBQVM7U0FDc0MsQ0FBQztLQUMzRDtJQUVELE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxrQkFBNEMsQ0FBQztJQUVqRSxNQUFNLFVBQVUsR0FBRyxJQUFJLGVBQWUsRUFBRSxDQUFDO0lBQ3pDLE1BQU0sa0JBQWtCLEdBQUcsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLEVBQUUsSUFBSyxDQUFDLENBQUM7SUFDaEYsTUFBTSxjQUFjLEdBQUcsR0FBRyxLQUFLLENBQUMsWUFBWSxTQUFTLENBQUM7SUFDdEQsT0FBTyxDQUFDLEdBQUcsQ0FBQyxvQ0FBb0MsY0FBYyxFQUFFLENBQUMsQ0FBQztJQUNsRSxNQUFNLGNBQWMsR0FBRyxNQUFNLElBQUEsb0JBQUssRUFBQyxjQUFjLEVBQy9DO1FBQ0UsTUFB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QUFDLEVBQUU7WUFDaEIsT0FBTyxDQUFDLEtBQUssQ0FBQyxxQ0FBcUMsT0FBTyxZQUFZLENBQUMsQ0FBQztZQUN4RSxNQUFNO1NBQ1A7S0FDRjtJQUVELE9BQU87UUFDTCxNQUFNLEVBQUUsd0NBQXdDLGNBQWMsQ0FBQyxVQUFVLEtBQUssY0FBYyxDQUFDLE1BQU0sR0FBRztRQUN0RyxNQUFNLEVBQUUsUUFBUTtLQUNqQixDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBcEdTLFFBQUEsT0FBTyxXQW9HaEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDbG91ZEZvcm1hdGlvbkN1c3RvbVJlc291cmNlUmVzcG9uc2UgfSBmcm9tIFwiYXdzLWxhbWJkYVwiO1xuaW1wb3J0IHsgSGFuZGxlciB9IGZyb20gXCJhd3MtbGFtYmRhL2hhbmRsZXJcIjtcbmltcG9ydCB7IENsb3VkRm9ybWF0aW9uQ3VzdG9tUmVzb3VyY2VFdmVudCB9IGZyb20gXCJhd3MtbGFtYmRhL3RyaWdnZXIvY2xvdWRmb3JtYXRpb24tY3VzdG9tLXJlc291cmNlXCI7XG5pbXBvcnQgZmV0Y2ggZnJvbSBcIm5vZGUtZmV0Y2hcIjtcbmltcG9ydCAqIGFzIGNkayBmcm9tIFwiYXdzLWNkay1saWJcIjtcblxuZXhwb3J0IGludGVyZmFjZSBSZWdpc3RyYXRpb25Qcm9wZXJ0aWVzIHtcbiAgc2VydmljZVBhdGg/OiBzdHJpbmc7XG4gIG1ldGFFbmRwb2ludD86IHN0cmluZztcbiAgc2VydmljZUVuZHBvaW50Pzogc3RyaW5nO1xuICBzZXJ2aWNlTGFtYmRhQXJuPzogc3RyaW5nO1xuICByZW1vdmFsUG9saWN5PzogY2RrLlJlbW92YWxQb2xpY3k7XG59XG5cbnR5cGUgRW5kcG9pbnRSZXNwb25zZSA9IHtcbiAgaWQ/OiBzdHJpbmcsXG4gIHNlcnZpY2VzPzogeyBuYW1lPzogc3RyaW5nLCByZXZpc2lvbj86IG51bWJlciB9W11cbn1cblxuLyoqXG4gKiBDdXN0b20gUmVzb3VyY2UgZXZlbnQgaGFuZGxlciBmb3IgUmVzdGF0ZSBzZXJ2aWNlIHJlZ2lzdHJhdGlvbi4gVGhpcyBoYW5kbGVyIGJhY2tzIHRoZSBjdXN0b20gcmVzb3VyY2VzIGNyZWF0ZWQgYnlcbiAqIHtAbGluayBSZXN0YXRlTGFtYmRhU2VydmljZUNvbGxlY3Rpb259IHRvIGZhY2lsaXRhdGUgTGFtYmRhIHNlcnZpY2UgaGFuZGxlciBkaXNjb3ZlcnkuXG4gKi9cbmV4cG9ydCBjb25zdCBoYW5kbGVyOiBIYW5kbGVyPENsb3VkRm9ybWF0aW9uQ3VzdG9tUmVzb3VyY2VFdmVudCwgUGFydGlhbDxDbG91ZEZvcm1hdGlvbkN1c3RvbVJlc291cmNlUmVzcG9uc2U+PiA9XG4gIGFzeW5jIGZ1bmN0aW9uKGV2ZW50KSB7XG4gICAgY29uc29sZS5sb2coeyBldmVudCB9KTtcblxuICAgIGlmIChldmVudC5SZXF1ZXN0VHlwZSA9PT0gXCJEZWxldGVcIikge1xuICAgICAgLy8gU2luY2Ugd2UgcmV0YWluIG9sZGVyIExhbWJkYSBoYW5kbGVyIHZlcnNpb25zIG9uIHVwZGF0ZSwgd2UgYWxzbyBsZWF2ZSB0aGUgcmVnaXN0ZXJlZCBzZXJ2aWNlIGFsb25lLiBUaGVyZSBtYXlcbiAgICAgIC8vIGJlIHVuZmluaXNoZWQgaW52b2NhdGlvbnMgdGhhdCByZXF1aXJlIGl0OyBpbiB0aGUgZnV0dXJlIHdlIHdvdWxkIHdhbnQgdG8gaW5mb3JtIFJlc3RhdGUgdGhhdCB3ZSB3YW50IHRvXG4gICAgICAvLyBkZS1yZWdpc3RlciB0aGUgc2VydmljZSwgYW5kIHdhaXQgZm9yIFJlc3RhdGUgdG8gbGV0IHVzIGtub3cgdGhhdCBpdCBpcyBzYWZlIHRvIGRlbGV0ZSB0aGUgZGVwbG95ZWQgRnVuY3Rpb25cbiAgICAgIC8vIHZlcnNpb24gZnJvbSBMYW1iZGEuXG5cbiAgICAgIC8vIGNvbnN0IHByb3BzID0gZXZlbnQuUmVzb3VyY2VQcm9wZXJ0aWVzIGFzIFJlZ2lzdHJhdGlvblByb3BlcnRpZXM7XG4gICAgICAvLyBpZiAocHJvcHMucmVtb3ZhbFBvbGljeSA9PT0gY2RrLlJlbW92YWxQb2xpY3kuREVTVFJPWSkge1xuICAgICAgLy8gICBjb25zdCBjb250cm9sbGVyID0gbmV3IEFib3J0Q29udHJvbGxlcigpO1xuICAgICAgLy8gICBjb25zdCBpZCA9IGJ0b2EocHJvcHMuc2VydmljZUxhbWJkYUFybiEpOyAvLyBUT0RPOiB3ZSBzaG91bGQgYmUgdHJlYXRpbmcgc2VydmljZSBpZHMgYXMgb3BhcXVlXG4gICAgICAvLyAgIGNvbnN0IGRlbGV0ZVJlc3BvbnNlID0gYXdhaXQgZmV0Y2goYCR7cHJvcHMubWV0YUVuZHBvaW50fS9lbmRwb2ludHMvJHtpZH0/Zm9yY2U9dHJ1ZWAsXG4gICAgICAvLyAgICAge1xuICAgICAgLy8gICAgICAgc2lnbmFsOiBjb250cm9sbGVyLnNpZ25hbCxcbiAgICAgIC8vICAgICAgIG1ldGhvZDogXCJERUxFVEVcIixcbiAgICAgIC8vICAgICB9KVxuICAgICAgLy8gICAgIC5maW5hbGx5KCgpID0+IGNsZWFyVGltZW91dChyZWdpc3RlckNhbGxUaW1lb3V0KSk7XG4gICAgICAvLyAgIGNvbnNvbGUubG9nKGBHb3QgZGVsZXRlIHJlc3BvbnNlIGJhY2s6ICR7ZGVsZXRlUmVzcG9uc2Uuc3RhdHVzfWApO1xuICAgICAgLy8gfVxuXG4gICAgICByZXR1cm4ge1xuICAgICAgICBTdGF0dXM6IFwiU1VDQ0VTU1wiLFxuICAgICAgfSBzYXRpc2ZpZXMgUGFydGlhbDxDbG91ZEZvcm1hdGlvbkN1c3RvbVJlc291cmNlUmVzcG9uc2U+O1xuICAgIH1cblxuICAgIGNvbnN0IHByb3BzID0gZXZlbnQuUmVzb3VyY2VQcm9wZXJ0aWVzIGFzIFJlZ2lzdHJhdGlvblByb3BlcnRpZXM7XG5cbiAgICBjb25zdCBjb250cm9sbGVyID0gbmV3IEFib3J0Q29udHJvbGxlcigpO1xuICAgIGNvbnN0IGhlYWx0aENoZWNrVGltZW91dCA9IHNldFRpbWVvdXQoKCkgPT4gY29udHJvbGxlci5hYm9ydChcInRpbWVvdXRcIiksIDVfMDAwKTtcbiAgICBjb25zdCBoZWFsdGhDaGVja1VybCA9IGAke3Byb3BzLm1ldGFFbmRwb2ludH0vaGVhbHRoYDtcbiAgICBjb25zb2xlLmxvZyhgUGVyZm9ybWluZyBoZWFsdGggY2hlY2sgYWdhaW5zdDogJHtoZWFsdGhDaGVja1VybH1gKTtcbiAgICBjb25zdCBoZWFsdGhSZXNwb25zZSA9IGF3YWl0IGZldGNoKGhlYWx0aENoZWNrVXJsLFxuICAgICAge1xuICAgICAgICBzaWduYWw6IGNvbnRyb2xsZXIuc2lnbmFsLFxuICAgICAgfSlcbiAgICAgIC5maW5hbGx5KCgpID0+IGNsZWFyVGltZW91dChoZWFsdGhDaGVja1RpbWVvdXQpKTtcblxuICAgIGNvbnNvbGUubG9nKGBHb3QgaGVhbHRoIGNoZWNrIHJlc3BvbnNlIGJhY2s6ICR7aGVhbHRoUmVzcG9uc2Uuc3RhdHVzfWApO1xuICAgIGlmICghKGhlYWx0aFJlc3BvbnNlLnN0YXR1cyA+PSAyMDAgJiYgaGVhbHRoUmVzcG9uc2Uuc3RhdHVzIDwgMzAwKSkge1xuICAgICAgY29uc29sZS5lcnJvcihgUmVzdGF0ZSBoZWFsdGggY2hlY2sgZmFpbGVkOiAke2hlYWx0aFJlc3BvbnNlLnN0YXR1c1RleHR9ICgke2hlYWx0aFJlc3BvbnNlLnN0YXR1c30pYCk7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBSZWFzb246IGBSZXN0YXRlIGhlYWx0aCBjaGVjayBmYWlsZWQ6ICR7aGVhbHRoUmVzcG9uc2Uuc3RhdHVzVGV4dH0gKCR7aGVhbHRoUmVzcG9uc2Uuc3RhdHVzfSlgLFxuICAgICAgICBTdGF0dXM6IFwiRkFJTEVEXCIsXG4gICAgICB9O1xuICAgIH1cblxuICAgIGxldCBhdHRlbXB0ID0gMTtcbiAgICBjb25zdCByZWdpc3RlckNhbGxUaW1lb3V0ID0gc2V0VGltZW91dCgoKSA9PiBjb250cm9sbGVyLmFib3J0KFwidGltZW91dFwiKSwgMTBfMDAwKTtcbiAgICBjb25zdCBkaXNjb3ZlcnlFbmRwb2ludFVybCA9IGAke3Byb3BzLm1ldGFFbmRwb2ludH0vZW5kcG9pbnRzYDtcbiAgICBjb25zdCByZWdpc3RyYXRpb25SZXF1ZXN0ID0gSlNPTi5zdHJpbmdpZnkoeyBhcm46IHByb3BzLnNlcnZpY2VMYW1iZGFBcm4gfSk7XG4gICAgY29uc29sZS5sb2coYFRyaWdnZXJpbmcgcmVnaXN0cmF0aW9uIGF0ICR7ZGlzY292ZXJ5RW5kcG9pbnRVcmx9OiAke3JlZ2lzdHJhdGlvblJlcXVlc3R9IChhdHRlbXB0ICR7YXR0ZW1wdH0pYCk7XG4gICAgd2hpbGUgKHRydWUpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IGRpc2NvdmVyeVJlc3BvbnNlID0gYXdhaXQgZmV0Y2goZGlzY292ZXJ5RW5kcG9pbnRVcmwsXG4gICAgICAgICAge1xuICAgICAgICAgICAgc2lnbmFsOiBjb250cm9sbGVyLnNpZ25hbCxcbiAgICAgICAgICAgIG1ldGhvZDogXCJQT1NUXCIsXG4gICAgICAgICAgICBib2R5OiByZWdpc3RyYXRpb25SZXF1ZXN0LFxuICAgICAgICAgICAgaGVhZGVyczoge1xuICAgICAgICAgICAgICBcIkNvbnRlbnQtVHlwZVwiOiBcImFwcGxpY2F0aW9uL2pzb25cIixcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSlcbiAgICAgICAgICAuZmluYWxseSgoKSA9PiBjbGVhclRpbWVvdXQocmVnaXN0ZXJDYWxsVGltZW91dCkpO1xuXG4gICAgICAgIGNvbnNvbGUubG9nKGBHb3QgcmVnaXN0cmF0aW9uIHJlc3BvbnNlIGJhY2s6ICR7ZGlzY292ZXJ5UmVzcG9uc2Uuc3RhdHVzfWApO1xuXG4gICAgICAgIGlmIChkaXNjb3ZlcnlSZXNwb25zZS5zdGF0dXMgPj0gMjAwICYmIGRpc2NvdmVyeVJlc3BvbnNlLnN0YXR1cyA8IDMwMCkge1xuICAgICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZGlzY292ZXJ5UmVzcG9uc2UuanNvbigpIGFzIEVuZHBvaW50UmVzcG9uc2U7XG5cbiAgICAgICAgICBpZiAocmVzcG9uc2U/LnNlcnZpY2VzPy5bMF0/Lm5hbWUgIT09IHByb3BzLnNlcnZpY2VQYXRoKSB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKGBTZXJ2aWNlIHJlZ2lzdHJhdGlvbiBmYWlsZWQ6ICR7ZGlzY292ZXJ5UmVzcG9uc2Uuc3RhdHVzVGV4dH0gKCR7ZGlzY292ZXJ5UmVzcG9uc2Uuc3RhdHVzfSlgKTtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgIFJlYXNvbjogYFJlc3RhdGUgc2VydmljZSByZWdpc3RyYXRpb24gZmFpbGVkOiBuYW1lIHJldHVybmVkIGJ5IHNlcnZpY2UgKFwiJHtyZXNwb25zZT8uc2VydmljZXM/LlswXT8ubmFtZX0pKSBkb2VzIG5vdCBtYXRjaCBleHBlY3RlZCAoXCIke3Byb3BzLnNlcnZpY2VQYXRofVwiKWAsXG4gICAgICAgICAgICAgIFN0YXR1czogXCJGQUlMRURcIixcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIERhdGE6IHJlc3BvbnNlLFxuICAgICAgICAgICAgU3RhdHVzOiBcIlNVQ0NFU1NcIixcbiAgICAgICAgICB9IHNhdGlzZmllcyBQYXJ0aWFsPENsb3VkRm9ybWF0aW9uQ3VzdG9tUmVzb3VyY2VSZXNwb25zZT47XG4gICAgICAgIH1cbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgY29uc29sZS5sb2coYFNlcnZpY2UgcmVnaXN0cmF0aW9uIGNhbGwgZmFpbGVkOiAkeyhlIGFzIEVycm9yKT8ubWVzc2FnZX0gKGF0dGVtcHQgJHthdHRlbXB0fSlgKTtcbiAgICAgIH1cblxuICAgICAgYXR0ZW1wdCArPSAxO1xuICAgICAgaWYgKGF0dGVtcHQgPj0gMykge1xuICAgICAgICBjb25zb2xlLmVycm9yKGBTZXJ2aWNlIHJlZ2lzdHJhdGlvbiBmYWlsZWQgYWZ0ZXIgJHthdHRlbXB0fSBhdHRlbXB0cy5gKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIFJlYXNvbjogYFJlc3RhdGUgc2VydmljZSByZWdpc3RyYXRpb24gZmFpbGVkOiAke2hlYWx0aFJlc3BvbnNlLnN0YXR1c1RleHR9ICgke2hlYWx0aFJlc3BvbnNlLnN0YXR1c30pYCxcbiAgICAgIFN0YXR1czogXCJGQUlMRURcIixcbiAgICB9O1xuICB9OyJdfQ==
|
|
109
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9saWIvcmVzdGF0ZS1jb25zdHJ1Y3RzL3JlZ2lzdGVyLXNlcnZpY2UtaGFuZGxlci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7Ozs7OztHQVNHOzs7Ozs7QUFLSCw0REFBK0I7QUFnQi9COzs7R0FHRztBQUNJLE1BQU0sT0FBTyxHQUNsQixLQUFLLFdBQVUsS0FBSztJQUNsQixPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUV2QixJQUFJLEtBQUssQ0FBQyxXQUFXLEtBQUssUUFBUSxFQUFFO1FBQ2xDLGlIQUFpSDtRQUNqSCwyR0FBMkc7UUFDM0csK0dBQStHO1FBQy9HLHVCQUF1QjtRQUV2QixvRUFBb0U7UUFDcEUsMkRBQTJEO1FBQzNELDhDQUE4QztRQUM5QyxtR0FBbUc7UUFDbkcsMkZBQTJGO1FBQzNGLFFBQVE7UUFDUixtQ0FBbUM7UUFDbkMsMEJBQTBCO1FBQzFCLFNBQVM7UUFDVCx5REFBeUQ7UUFDekQsdUVBQXVFO1FBQ3ZFLElBQUk7UUFFSixPQUFPO1lBQ0wsTUFBTSxFQUFFLFNBQVM7U0FDc0MsQ0FBQztLQUMzRDtJQUVELE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxrQkFBNEMsQ0FBQztJQUVqRSxNQUFNLFVBQVUsR0FBRyxJQUFJLGVBQWUsRUFBRSxDQUFDO0lBQ3pDLE1BQU0sa0JBQWtCLEdBQUcsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLEVBQUUsSUFBSyxDQUFDLENBQUM7SUFDaEYsTUFBTSxjQUFjLEdBQUcsR0FBRyxLQUFLLENBQUMsWUFBWSxTQUFTLENBQUM7SUFDdEQsT0FBTyxDQUFDLEdBQUcsQ0FBQyxvQ0FBb0MsY0FBYyxFQUFFLENBQUMsQ0FBQztJQUNsRSxNQUFNLGNBQWMsR0FBRyxNQUFNLElBQUEsb0JBQUssRUFBQyxj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YixJQUFJLE9BQU8sSUFBSSxDQUFDLEVBQUU7WUFDaEIsT0FBTyxDQUFDLEtBQUssQ0FBQyxxQ0FBcUMsT0FBTyxZQUFZLENBQUMsQ0FBQztZQUN4RSxNQUFNO1NBQ1A7S0FDRjtJQUVELE9BQU87UUFDTCxNQUFNLEVBQUUsd0NBQXdDLGNBQWMsQ0FBQyxVQUFVLEtBQUssY0FBYyxDQUFDLE1BQU0sR0FBRztRQUN0RyxNQUFNLEVBQUUsUUFBUTtLQUNqQixDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBcEdTLFFBQUEsT0FBTyxXQW9HaEIiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDIzIC0gUmVzdGF0ZSBTb2Z0d2FyZSwgSW5jLiwgUmVzdGF0ZSBHbWJIXG4gKlxuICogVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIFJlc3RhdGUgU0RLIGZvciBOb2RlLmpzL1R5cGVTY3JpcHQsXG4gKiB3aGljaCBpcyByZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4gKlxuICogWW91IGNhbiBmaW5kIGEgY29weSBvZiB0aGUgbGljZW5zZSBpbiBmaWxlIExJQ0VOU0UgaW4gdGhlIHJvb3RcbiAqIGRpcmVjdG9yeSBvZiB0aGlzIHJlcG9zaXRvcnkgb3IgcGFja2FnZSwgb3IgYXRcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9yZXN0YXRlZGV2L3Nkay10eXBlc2NyaXB0L2Jsb2IvbWFpbi9MSUNFTlNFXG4gKi9cblxuaW1wb3J0IHsgQ2xvdWRGb3JtYXRpb25DdXN0b21SZXNvdXJjZVJlc3BvbnNlIH0gZnJvbSBcImF3cy1sYW1iZGFcIjtcbmltcG9ydCB7IEhhbmRsZXIgfSBmcm9tIFwiYXdzLWxhbWJkYS9oYW5kbGVyXCI7XG5pbXBvcnQgeyBDbG91ZEZvcm1hdGlvbkN1c3RvbVJlc291cmNlRXZlbnQgfSBmcm9tIFwiYXdzLWxhbWJkYS90cmlnZ2VyL2Nsb3VkZm9ybWF0aW9uLWN1c3RvbS1yZXNvdXJjZVwiO1xuaW1wb3J0IGZldGNoIGZyb20gXCJub2RlLWZldGNoXCI7XG5pbXBvcnQgKiBhcyBjZGsgZnJvbSBcImF3cy1jZGstbGliXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVnaXN0cmF0aW9uUHJvcGVydGllcyB7XG4gIHNlcnZpY2VQYXRoPzogc3RyaW5nO1xuICBtZXRhRW5kcG9pbnQ/OiBzdHJpbmc7XG4gIHNlcnZpY2VFbmRwb2ludD86IHN0cmluZztcbiAgc2VydmljZUxhbWJkYUFybj86IHN0cmluZztcbiAgcmVtb3ZhbFBvbGljeT86IGNkay5SZW1vdmFsUG9saWN5O1xufVxuXG50eXBlIEVuZHBvaW50UmVzcG9uc2UgPSB7XG4gIGlkPzogc3RyaW5nLFxuICBzZXJ2aWNlcz86IHsgbmFtZT86IHN0cmluZywgcmV2aXNpb24/OiBudW1iZXIgfVtdXG59XG5cbi8qKlxuICogQ3VzdG9tIFJlc291cmNlIGV2ZW50IGhhbmRsZXIgZm9yIFJlc3RhdGUgc2VydmljZSByZWdpc3RyYXRpb24uIFRoaXMgaGFuZGxlciBiYWNrcyB0aGUgY3VzdG9tIHJlc291cmNlcyBjcmVhdGVkIGJ5XG4gKiB7QGxpbmsgUmVzdGF0ZUxhbWJkYVNlcnZpY2VDb2xsZWN0aW9ufSB0byBmYWNpbGl0YXRlIExhbWJkYSBzZXJ2aWNlIGhhbmRsZXIgZGlzY292ZXJ5LlxuICovXG5leHBvcnQgY29uc3QgaGFuZGxlcjogSGFuZGxlcjxDbG91ZEZvcm1hdGlvbkN1c3RvbVJlc291cmNlRXZlbnQsIFBhcnRpYWw8Q2xvdWRGb3JtYXRpb25DdXN0b21SZXNvdXJjZVJlc3BvbnNlPj4gPVxuICBhc3luYyBmdW5jdGlvbihldmVudCkge1xuICAgIGNvbnNvbGUubG9nKHsgZXZlbnQgfSk7XG5cbiAgICBpZiAoZXZlbnQuUmVxdWVzdFR5cGUgPT09IFwiRGVsZXRlXCIpIHtcbiAgICAgIC8vIFNpbmNlIHdlIHJldGFpbiBvbGRlciBMYW1iZGEgaGFuZGxlciB2ZXJzaW9ucyBvbiB1cGRhdGUsIHdlIGFsc28gbGVhdmUgdGhlIHJlZ2lzdGVyZWQgc2VydmljZSBhbG9uZS4gVGhlcmUgbWF5XG4gICAgICAvLyBiZSB1bmZpbmlzaGVkIGludm9jYXRpb25zIHRoYXQgcmVxdWlyZSBpdDsgaW4gdGhlIGZ1dHVyZSB3ZSB3b3VsZCB3YW50IHRvIGluZm9ybSBSZXN0YXRlIHRoYXQgd2Ugd2FudCB0b1xuICAgICAgLy8gZGUtcmVnaXN0ZXIgdGhlIHNlcnZpY2UsIGFuZCB3YWl0IGZvciBSZXN0YXRlIHRvIGxldCB1cyBrbm93IHRoYXQgaXQgaXMgc2FmZSB0byBkZWxldGUgdGhlIGRlcGxveWVkIEZ1bmN0aW9uXG4gICAgICAvLyB2ZXJzaW9uIGZyb20gTGFtYmRhLlxuXG4gICAgICAvLyBjb25zdCBwcm9wcyA9IGV2ZW50LlJlc291cmNlUHJvcGVydGllcyBhcyBSZWdpc3RyYXRpb25Qcm9wZXJ0aWVzO1xuICAgICAgLy8gaWYgKHByb3BzLnJlbW92YWxQb2xpY3kgPT09IGNkay5SZW1vdmFsUG9saWN5LkRFU1RST1kpIHtcbiAgICAgIC8vICAgY29uc3QgY29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKTtcbiAgICAgIC8vICAgY29uc3QgaWQgPSBidG9hKHByb3BzLnNlcnZpY2VMYW1iZGFBcm4hKTsgLy8gVE9ETzogd2Ugc2hvdWxkIGJlIHRyZWF0aW5nIHNlcnZpY2UgaWRzIGFzIG9wYXF1ZVxuICAgICAgLy8gICBjb25zdCBkZWxldGVSZXNwb25zZSA9IGF3YWl0IGZldGNoKGAke3Byb3BzLm1ldGFFbmRwb2ludH0vZW5kcG9pbnRzLyR7aWR9P2ZvcmNlPXRydWVgLFxuICAgICAgLy8gICAgIHtcbiAgICAgIC8vICAgICAgIHNpZ25hbDogY29udHJvbGxlci5zaWduYWwsXG4gICAgICAvLyAgICAgICBtZXRob2Q6IFwiREVMRVRFXCIsXG4gICAgICAvLyAgICAgfSlcbiAgICAgIC8vICAgICAuZmluYWxseSgoKSA9PiBjbGVhclRpbWVvdXQocmVnaXN0ZXJDYWxsVGltZW91dCkpO1xuICAgICAgLy8gICBjb25zb2xlLmxvZyhgR290IGRlbGV0ZSByZXNwb25zZSBiYWNrOiAke2RlbGV0ZVJlc3BvbnNlLnN0YXR1c31gKTtcbiAgICAgIC8vIH1cblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgU3RhdHVzOiBcIlNVQ0NFU1NcIixcbiAgICAgIH0gc2F0aXNmaWVzIFBhcnRpYWw8Q2xvdWRGb3JtYXRpb25DdXN0b21SZXNvdXJjZVJlc3BvbnNlPjtcbiAgICB9XG5cbiAgICBjb25zdCBwcm9wcyA9IGV2ZW50LlJlc291cmNlUHJvcGVydGllcyBhcyBSZWdpc3RyYXRpb25Qcm9wZXJ0aWVzO1xuXG4gICAgY29uc3QgY29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKTtcbiAgICBjb25zdCBoZWFsdGhDaGVja1RpbWVvdXQgPSBzZXRUaW1lb3V0KCgpID0+IGNvbnRyb2xsZXIuYWJvcnQoXCJ0aW1lb3V0XCIpLCA1XzAwMCk7XG4gICAgY29uc3QgaGVhbHRoQ2hlY2tVcmwgPSBgJHtwcm9wcy5tZXRhRW5kcG9pbnR9L2hlYWx0aGA7XG4gICAgY29uc29sZS5sb2coYFBlcmZvcm1pbmcgaGVhbHRoIGNoZWNrIGFnYWluc3Q6ICR7aGVhbHRoQ2hlY2tVcmx9YCk7XG4gICAgY29uc3QgaGVhbHRoUmVzcG9uc2UgPSBhd2FpdCBmZXRjaChoZWFsdGhDaGVja1VybCxcbiAgICAgIHtcbiAgICAgICAgc2lnbmFsOiBjb250cm9sbGVyLnNpZ25hbCxcbiAgICAgIH0pXG4gICAgICAuZmluYWxseSgoKSA9PiBjbGVhclRpbWVvdXQoaGVhbHRoQ2hlY2tUaW1lb3V0KSk7XG5cbiAgICBjb25zb2xlLmxvZyhgR290IGhlYWx0aCBjaGVjayByZXNwb25zZSBiYWNrOiAke2hlYWx0aFJlc3BvbnNlLnN0YXR1c31gKTtcbiAgICBpZiAoIShoZWFsdGhSZXNwb25zZS5zdGF0dXMgPj0gMjAwICYmIGhlYWx0aFJlc3BvbnNlLnN0YXR1cyA8IDMwMCkpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYFJlc3RhdGUgaGVhbHRoIGNoZWNrIGZhaWxlZDogJHtoZWFsdGhSZXNwb25zZS5zdGF0dXNUZXh0fSAoJHtoZWFsdGhSZXNwb25zZS5zdGF0dXN9KWApO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgUmVhc29uOiBgUmVzdGF0ZSBoZWFsdGggY2hlY2sgZmFpbGVkOiAke2hlYWx0aFJlc3BvbnNlLnN0YXR1c1RleHR9ICgke2hlYWx0aFJlc3BvbnNlLnN0YXR1c30pYCxcbiAgICAgICAgU3RhdHVzOiBcIkZBSUxFRFwiLFxuICAgICAgfTtcbiAgICB9XG5cbiAgICBsZXQgYXR0ZW1wdCA9IDE7XG4gICAgY29uc3QgcmVnaXN0ZXJDYWxsVGltZW91dCA9IHNldFRpbWVvdXQoKCkgPT4gY29udHJvbGxlci5hYm9ydChcInRpbWVvdXRcIiksIDEwXzAwMCk7XG4gICAgY29uc3QgZGlzY292ZXJ5RW5kcG9pbnRVcmwgPSBgJHtwcm9wcy5tZXRhRW5kcG9pbnR9L2VuZHBvaW50c2A7XG4gICAgY29uc3QgcmVnaXN0cmF0aW9uUmVxdWVzdCA9IEpTT04uc3RyaW5naWZ5KHsgYXJuOiBwcm9wcy5zZXJ2aWNlTGFtYmRhQXJuIH0pO1xuICAgIGNvbnNvbGUubG9nKGBUcmlnZ2VyaW5nIHJlZ2lzdHJhdGlvbiBhdCAke2Rpc2NvdmVyeUVuZHBvaW50VXJsfTogJHtyZWdpc3RyYXRpb25SZXF1ZXN0fSAoYXR0ZW1wdCAke2F0dGVtcHR9KWApO1xuICAgIHdoaWxlICh0cnVlKSB7XG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCBkaXNjb3ZlcnlSZXNwb25zZSA9IGF3YWl0IGZldGNoKGRpc2NvdmVyeUVuZHBvaW50VXJsLFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIHNpZ25hbDogY29udHJvbGxlci5zaWduYWwsXG4gICAgICAgICAgICBtZXRob2Q6IFwiUE9TVFwiLFxuICAgICAgICAgICAgYm9keTogcmVnaXN0cmF0aW9uUmVxdWVzdCxcbiAgICAgICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICAgICAgXCJDb250ZW50LVR5cGVcIjogXCJhcHBsaWNhdGlvbi9qc29uXCIsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0pXG4gICAgICAgICAgLmZpbmFsbHkoKCkgPT4gY2xlYXJUaW1lb3V0KHJlZ2lzdGVyQ2FsbFRpbWVvdXQpKTtcblxuICAgICAgICBjb25zb2xlLmxvZyhgR290IHJlZ2lzdHJhdGlvbiByZXNwb25zZSBiYWNrOiAke2Rpc2NvdmVyeVJlc3BvbnNlLnN0YXR1c31gKTtcblxuICAgICAgICBpZiAoZGlzY292ZXJ5UmVzcG9uc2Uuc3RhdHVzID49IDIwMCAmJiBkaXNjb3ZlcnlSZXNwb25zZS5zdGF0dXMgPCAzMDApIHtcbiAgICAgICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGRpc2NvdmVyeVJlc3BvbnNlLmpzb24oKSBhcyBFbmRwb2ludFJlc3BvbnNlO1xuXG4gICAgICAgICAgaWYgKHJlc3BvbnNlPy5zZXJ2aWNlcz8uWzBdPy5uYW1lICE9PSBwcm9wcy5zZXJ2aWNlUGF0aCkge1xuICAgICAgICAgICAgY29uc29sZS5lcnJvcihgU2VydmljZSByZWdpc3RyYXRpb24gZmFpbGVkOiAke2Rpc2NvdmVyeVJlc3BvbnNlLnN0YXR1c1RleHR9ICgke2Rpc2NvdmVyeVJlc3BvbnNlLnN0YXR1c30pYCk7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICBSZWFzb246IGBSZXN0YXRlIHNlcnZpY2UgcmVnaXN0cmF0aW9uIGZhaWxlZDogbmFtZSByZXR1cm5lZCBieSBzZXJ2aWNlIChcIiR7cmVzcG9uc2U/LnNlcnZpY2VzPy5bMF0/Lm5hbWV9KSkgZG9lcyBub3QgbWF0Y2ggZXhwZWN0ZWQgKFwiJHtwcm9wcy5zZXJ2aWNlUGF0aH1cIilgLFxuICAgICAgICAgICAgICBTdGF0dXM6IFwiRkFJTEVEXCIsXG4gICAgICAgICAgICB9O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBEYXRhOiByZXNwb25zZSxcbiAgICAgICAgICAgIFN0YXR1czogXCJTVUNDRVNTXCIsXG4gICAgICAgICAgfSBzYXRpc2ZpZXMgUGFydGlhbDxDbG91ZEZvcm1hdGlvbkN1c3RvbVJlc291cmNlUmVzcG9uc2U+O1xuICAgICAgICB9XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIGNvbnNvbGUubG9nKGBTZXJ2aWNlIHJlZ2lzdHJhdGlvbiBjYWxsIGZhaWxlZDogJHsoZSBhcyBFcnJvcik/Lm1lc3NhZ2V9IChhdHRlbXB0ICR7YXR0ZW1wdH0pYCk7XG4gICAgICB9XG5cbiAgICAgIGF0dGVtcHQgKz0gMTtcbiAgICAgIGlmIChhdHRlbXB0ID49IDMpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcihgU2VydmljZSByZWdpc3RyYXRpb24gZmFpbGVkIGFmdGVyICR7YXR0ZW1wdH0gYXR0ZW1wdHMuYCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBSZWFzb246IGBSZXN0YXRlIHNlcnZpY2UgcmVnaXN0cmF0aW9uIGZhaWxlZDogJHtoZWFsdGhSZXNwb25zZS5zdGF0dXNUZXh0fSAoJHtoZWFsdGhSZXNwb25zZS5zdGF0dXN9KWAsXG4gICAgICBTdGF0dXM6IFwiRkFJTEVEXCIsXG4gICAgfTtcbiAgfTsiXX0=
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import * as lambda from "aws-cdk-lib/aws-lambda";
|
|
2
|
+
import { Construct } from "constructs";
|
|
3
|
+
/**
|
|
4
|
+
* A Restate RPC service path. Example: `greeter`.
|
|
5
|
+
*/
|
|
6
|
+
type RestatePath = string;
|
|
7
|
+
export interface RestateInstanceRef {
|
|
8
|
+
readonly metaEndpoint: string;
|
|
9
|
+
readonly invokerRoleArn: string;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* A collection of Lambda Restate RPC Service handlers.
|
|
13
|
+
*/
|
|
14
|
+
export type LambdaServiceRegistryProps = {
|
|
15
|
+
/**
|
|
16
|
+
* Mappings from service path to Lambda handler.
|
|
17
|
+
*/
|
|
18
|
+
serviceHandlers: Record<RestatePath, lambda.Function>;
|
|
19
|
+
registrationProviderToken?: string;
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Represents a collection of Lambda-based Restate RPC services. This component is used to register
|
|
23
|
+
* them with a single Restate instance. This creates a custom resource which will trigger service
|
|
24
|
+
* discovery on any handler changes deployed through CDK/CloudFormation.
|
|
25
|
+
*/
|
|
26
|
+
export declare class LambdaServiceRegistry extends Construct {
|
|
27
|
+
private readonly serviceHandlers;
|
|
28
|
+
private readonly registrationProviderToken?;
|
|
29
|
+
constructor(scope: Construct, id: string, props: LambdaServiceRegistryProps);
|
|
30
|
+
register(restate: RestateInstanceRef): void;
|
|
31
|
+
private registerHandler;
|
|
32
|
+
}
|
|
33
|
+
export {};
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.LambdaServiceRegistry = void 0;
|
|
27
|
+
const cdk = __importStar(require("aws-cdk-lib"));
|
|
28
|
+
const iam = __importStar(require("aws-cdk-lib/aws-iam"));
|
|
29
|
+
const constructs_1 = require("constructs");
|
|
30
|
+
/**
|
|
31
|
+
* Represents a collection of Lambda-based Restate RPC services. This component is used to register
|
|
32
|
+
* them with a single Restate instance. This creates a custom resource which will trigger service
|
|
33
|
+
* discovery on any handler changes deployed through CDK/CloudFormation.
|
|
34
|
+
*/
|
|
35
|
+
class LambdaServiceRegistry extends constructs_1.Construct {
|
|
36
|
+
constructor(scope, id, props) {
|
|
37
|
+
super(scope, id);
|
|
38
|
+
this.serviceHandlers = props.serviceHandlers;
|
|
39
|
+
this.registrationProviderToken = props.registrationProviderToken;
|
|
40
|
+
}
|
|
41
|
+
register(restate) {
|
|
42
|
+
for (const [path, handler] of Object.entries(this.serviceHandlers)) {
|
|
43
|
+
this.registerHandler(restate, { path, handler });
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
registerHandler(restate, service) {
|
|
47
|
+
const invokerRole = iam.Role.fromRoleArn(this, service.handler.node.id + "InvokerRole", restate.invokerRoleArn);
|
|
48
|
+
cdk.Annotations.of(service.handler).acknowledgeWarning("@aws-cdk/aws-register-service-handler:addPermissionsToVersionOrAlias", "We specifically want to grant invoke permissions on all handler versions, " +
|
|
49
|
+
"not just the currently deployed one, as there may be suspended invocations against older versions");
|
|
50
|
+
service.handler.currentVersion.grantInvoke(invokerRole); // CDK ack doesn't work, this silences the warning above
|
|
51
|
+
service.handler.grantInvoke(invokerRole); // Grants access to all handler versions for ongoing invocations
|
|
52
|
+
new RestateServiceRegistrar(this, service.handler.node.id + "Discovery", {
|
|
53
|
+
restate,
|
|
54
|
+
service,
|
|
55
|
+
serviceToken: this.registrationProviderToken,
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
exports.LambdaServiceRegistry = LambdaServiceRegistry;
|
|
60
|
+
class RestateServiceRegistrar extends constructs_1.Construct {
|
|
61
|
+
constructor(scope, id, props) {
|
|
62
|
+
super(scope, id);
|
|
63
|
+
new cdk.CustomResource(this, props.service.handler.node.id + "Discovery", {
|
|
64
|
+
serviceToken: props.serviceToken,
|
|
65
|
+
resourceType: "Custom::RestateServiceRegistrar",
|
|
66
|
+
properties: {
|
|
67
|
+
metaEndpoint: props.restate.metaEndpoint,
|
|
68
|
+
serviceLambdaArn: props.service.handler.currentVersion.functionArn,
|
|
69
|
+
},
|
|
70
|
+
});
|
|
71
|
+
// TODO: add a dependency on attaching Lambda invocation permissions to the Restate instance role
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdGF0ZS1sYW1iZGEtc2VydmljZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9saWIvcmVzdGF0ZS1jb25zdHJ1Y3RzL3Jlc3RhdGUtbGFtYmRhLXNlcnZpY2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsaURBQW1DO0FBQ25DLHlEQUEyQztBQUUzQywyQ0FBdUM7QUF5QnZDOzs7O0dBSUc7QUFDSCxNQUFhLHFCQUFzQixTQUFRLHNCQUFTO0lBSWxELFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBaUM7UUFDekUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixJQUFJLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQyxlQUFlLENBQUM7UUFDN0MsSUFBSSxDQUFDLHlCQUF5QixHQUFHLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQztJQUNuRSxDQUFDO0lBRU0sUUFBUSxDQUFDLE9BQTJCO1FBQ3pDLEtBQUssTUFBTSxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsRUFBRTtZQUNsRSxJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sRUFBRSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDO1NBQ2xEO0lBQ0gsQ0FBQztJQUVPLGVBQWUsQ0FBQyxPQUEyQixFQUFFLE9BR3BEO1FBQ0MsTUFBTSxXQUFXLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxhQUFhLEVBQUUsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ2hILEdBQUcsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxzRUFBc0UsRUFDM0gsNEVBQTRFO1lBQzVFLG1HQUFtRyxDQUFDLENBQUM7UUFDdkcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsd0RBQXdEO1FBQ2pILE9BQU8sQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsZ0VBQWdFO1FBRTFHLElBQUksdUJBQXVCLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxXQUFXLEVBQUU7WUFDdkUsT0FBTztZQUNQLE9BQU87WUFDUCxZQUFZLEVBQUUsSUFBSSxDQUFDLHlCQUEwQjtTQUM5QyxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0Y7QUFsQ0Qsc0RBa0NDO0FBRUQsTUFBTSx1QkFBd0IsU0FBUSxzQkFBUztJQUM3QyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUM1QixLQU9DO1FBRVgsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixJQUFJLEdBQUcsQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsV0FBVyxFQUFFO1lBQ3hFLFlBQVksRUFBRSxLQUFLLENBQUMsWUFBWTtZQUNoQyxZQUFZLEVBQUUsaUNBQWlDO1lBQy9DLFVBQVUsRUFBRTtnQkFDVixZQUFZLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxZQUFZO2dCQUN4QyxnQkFBZ0IsRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsV0FBVzthQUNsQztTQUNuQyxDQUFDLENBQUM7UUFDSCxpR0FBaUc7SUFDbkcsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgY2RrIGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0ICogYXMgaWFtIGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtaWFtXCI7XG5pbXBvcnQgKiBhcyBsYW1iZGEgZnJvbSBcImF3cy1jZGstbGliL2F3cy1sYW1iZGFcIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBSZWdpc3RyYXRpb25Qcm9wZXJ0aWVzIH0gZnJvbSBcIi4vcmVnaXN0ZXItc2VydmljZS1oYW5kbGVyXCI7XG5cbi8qKlxuICogQSBSZXN0YXRlIFJQQyBzZXJ2aWNlIHBhdGguIEV4YW1wbGU6IGBncmVldGVyYC5cbiAqL1xudHlwZSBSZXN0YXRlUGF0aCA9IHN0cmluZztcblxuZXhwb3J0IGludGVyZmFjZSBSZXN0YXRlSW5zdGFuY2VSZWYge1xuICByZWFkb25seSBtZXRhRW5kcG9pbnQ6IHN0cmluZztcbiAgcmVhZG9ubHkgaW52b2tlclJvbGVBcm46IHN0cmluZztcbn1cblxuLyoqXG4gKiBBIGNvbGxlY3Rpb24gb2YgTGFtYmRhIFJlc3RhdGUgUlBDIFNlcnZpY2UgaGFuZGxlcnMuXG4gKi9cbmV4cG9ydCB0eXBlIExhbWJkYVNlcnZpY2VSZWdpc3RyeVByb3BzID0ge1xuICAvKipcbiAgICogTWFwcGluZ3MgZnJvbSBzZXJ2aWNlIHBhdGggdG8gTGFtYmRhIGhhbmRsZXIuXG4gICAqL1xuICBzZXJ2aWNlSGFuZGxlcnM6IFJlY29yZDxSZXN0YXRlUGF0aCwgbGFtYmRhLkZ1bmN0aW9uPjtcblxuICByZWdpc3RyYXRpb25Qcm92aWRlclRva2VuPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBjb2xsZWN0aW9uIG9mIExhbWJkYS1iYXNlZCBSZXN0YXRlIFJQQyBzZXJ2aWNlcy4gVGhpcyBjb21wb25lbnQgaXMgdXNlZCB0byByZWdpc3RlclxuICogdGhlbSB3aXRoIGEgc2luZ2xlIFJlc3RhdGUgaW5zdGFuY2UuIFRoaXMgY3JlYXRlcyBhIGN1c3RvbSByZXNvdXJjZSB3aGljaCB3aWxsIHRyaWdnZXIgc2VydmljZVxuICogZGlzY292ZXJ5IG9uIGFueSBoYW5kbGVyIGNoYW5nZXMgZGVwbG95ZWQgdGhyb3VnaCBDREsvQ2xvdWRGb3JtYXRpb24uXG4gKi9cbmV4cG9ydCBjbGFzcyBMYW1iZGFTZXJ2aWNlUmVnaXN0cnkgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICBwcml2YXRlIHJlYWRvbmx5IHNlcnZpY2VIYW5kbGVyczogUmVjb3JkPFJlc3RhdGVQYXRoLCBsYW1iZGEuRnVuY3Rpb24+O1xuICBwcml2YXRlIHJlYWRvbmx5IHJlZ2lzdHJhdGlvblByb3ZpZGVyVG9rZW4/OiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IExhbWJkYVNlcnZpY2VSZWdpc3RyeVByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIHRoaXMuc2VydmljZUhhbmRsZXJzID0gcHJvcHMuc2VydmljZUhhbmRsZXJzO1xuICAgIHRoaXMucmVnaXN0cmF0aW9uUHJvdmlkZXJUb2tlbiA9IHByb3BzLnJlZ2lzdHJhdGlvblByb3ZpZGVyVG9rZW47XG4gIH1cblxuICBwdWJsaWMgcmVnaXN0ZXIocmVzdGF0ZTogUmVzdGF0ZUluc3RhbmNlUmVmKSB7XG4gICAgZm9yIChjb25zdCBbcGF0aCwgaGFuZGxlcl0gb2YgT2JqZWN0LmVudHJpZXModGhpcy5zZXJ2aWNlSGFuZGxlcnMpKSB7XG4gICAgICB0aGlzLnJlZ2lzdGVySGFuZGxlcihyZXN0YXRlLCB7IHBhdGgsIGhhbmRsZXIgfSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSByZWdpc3RlckhhbmRsZXIocmVzdGF0ZTogUmVzdGF0ZUluc3RhbmNlUmVmLCBzZXJ2aWNlOiB7XG4gICAgcGF0aDogUmVzdGF0ZVBhdGgsXG4gICAgaGFuZGxlcjogbGFtYmRhLkZ1bmN0aW9uXG4gIH0pIHtcbiAgICBjb25zdCBpbnZva2VyUm9sZSA9IGlhbS5Sb2xlLmZyb21Sb2xlQXJuKHRoaXMsIHNlcnZpY2UuaGFuZGxlci5ub2RlLmlkICsgXCJJbnZva2VyUm9sZVwiLCByZXN0YXRlLmludm9rZXJSb2xlQXJuKTtcbiAgICBjZGsuQW5ub3RhdGlvbnMub2Yoc2VydmljZS5oYW5kbGVyKS5hY2tub3dsZWRnZVdhcm5pbmcoXCJAYXdzLWNkay9hd3MtcmVnaXN0ZXItc2VydmljZS1oYW5kbGVyOmFkZFBlcm1pc3Npb25zVG9WZXJzaW9uT3JBbGlhc1wiLFxuICAgICAgXCJXZSBzcGVjaWZpY2FsbHkgd2FudCB0byBncmFudCBpbnZva2UgcGVybWlzc2lvbnMgb24gYWxsIGhhbmRsZXIgdmVyc2lvbnMsIFwiICtcbiAgICAgIFwibm90IGp1c3QgdGhlIGN1cnJlbnRseSBkZXBsb3llZCBvbmUsIGFzIHRoZXJlIG1heSBiZSBzdXNwZW5kZWQgaW52b2NhdGlvbnMgYWdhaW5zdCBvbGRlciB2ZXJzaW9uc1wiKTtcbiAgICBzZXJ2aWNlLmhhbmRsZXIuY3VycmVudFZlcnNpb24uZ3JhbnRJbnZva2UoaW52b2tlclJvbGUpOyAvLyBDREsgYWNrIGRvZXNuJ3Qgd29yaywgdGhpcyBzaWxlbmNlcyB0aGUgd2FybmluZyBhYm92ZVxuICAgIHNlcnZpY2UuaGFuZGxlci5ncmFudEludm9rZShpbnZva2VyUm9sZSk7IC8vIEdyYW50cyBhY2Nlc3MgdG8gYWxsIGhhbmRsZXIgdmVyc2lvbnMgZm9yIG9uZ29pbmcgaW52b2NhdGlvbnNcblxuICAgIG5ldyBSZXN0YXRlU2VydmljZVJlZ2lzdHJhcih0aGlzLCBzZXJ2aWNlLmhhbmRsZXIubm9kZS5pZCArIFwiRGlzY292ZXJ5XCIsIHtcbiAgICAgIHJlc3RhdGUsXG4gICAgICBzZXJ2aWNlLFxuICAgICAgc2VydmljZVRva2VuOiB0aGlzLnJlZ2lzdHJhdGlvblByb3ZpZGVyVG9rZW4hLFxuICAgIH0pO1xuICB9XG59XG5cbmNsYXNzIFJlc3RhdGVTZXJ2aWNlUmVnaXN0cmFyIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZyxcbiAgICAgICAgICAgICAgcHJvcHM6IHtcbiAgICAgICAgICAgICAgICByZXN0YXRlOiBSZXN0YXRlSW5zdGFuY2VSZWYsXG4gICAgICAgICAgICAgICAgc2VydmljZToge1xuICAgICAgICAgICAgICAgICAgcGF0aDogUmVzdGF0ZVBhdGgsXG4gICAgICAgICAgICAgICAgICBoYW5kbGVyOiBsYW1iZGEuRnVuY3Rpb25cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHNlcnZpY2VUb2tlbjogc3RyaW5nXG4gICAgICAgICAgICAgIH0sXG4gICkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICBuZXcgY2RrLkN1c3RvbVJlc291cmNlKHRoaXMsIHByb3BzLnNlcnZpY2UuaGFuZGxlci5ub2RlLmlkICsgXCJEaXNjb3ZlcnlcIiwge1xuICAgICAgc2VydmljZVRva2VuOiBwcm9wcy5zZXJ2aWNlVG9rZW4sXG4gICAgICByZXNvdXJjZVR5cGU6IFwiQ3VzdG9tOjpSZXN0YXRlU2VydmljZVJlZ2lzdHJhclwiLFxuICAgICAgcHJvcGVydGllczoge1xuICAgICAgICBtZXRhRW5kcG9pbnQ6IHByb3BzLnJlc3RhdGUubWV0YUVuZHBvaW50LFxuICAgICAgICBzZXJ2aWNlTGFtYmRhQXJuOiBwcm9wcy5zZXJ2aWNlLmhhbmRsZXIuY3VycmVudFZlcnNpb24uZnVuY3Rpb25Bcm4sXG4gICAgICB9IHNhdGlzZmllcyBSZWdpc3RyYXRpb25Qcm9wZXJ0aWVzLFxuICAgIH0pO1xuICAgIC8vIFRPRE86IGFkZCBhIGRlcGVuZGVuY3kgb24gYXR0YWNoaW5nIExhbWJkYSBpbnZvY2F0aW9uIHBlcm1pc3Npb25zIHRvIHRoZSBSZXN0YXRlIGluc3RhbmNlIHJvbGVcbiAgfVxufSJdfQ==
|
|
@@ -13,6 +13,22 @@ export interface RestateInstance {
|
|
|
13
13
|
readonly metaEndpoint: string;
|
|
14
14
|
readonly registrationProviderToken: cdk.CfnOutput;
|
|
15
15
|
}
|
|
16
|
+
export declare enum TracingMode {
|
|
17
|
+
DISABLED = "DISABLED",
|
|
18
|
+
AWS_XRAY = "AWS_XRAY"
|
|
19
|
+
}
|
|
20
|
+
export interface RestateInstanceProps {
|
|
21
|
+
/** Log group for Restate service logs. */
|
|
22
|
+
logGroup: logs.LogGroup;
|
|
23
|
+
/** Tracing mode for Restate services. Disabled by default. */
|
|
24
|
+
tracing?: TracingMode;
|
|
25
|
+
/** Prefix for resources created by this construct that require unique names. */
|
|
26
|
+
prefix?: string;
|
|
27
|
+
/** Restate Docker image tag. Defaults to `latest`. */
|
|
28
|
+
restateTag?: string;
|
|
29
|
+
/** Amazon Distro for Open Telemetry Docker image tag. Defaults to `latest`. */
|
|
30
|
+
adotTag?: string;
|
|
31
|
+
}
|
|
16
32
|
/**
|
|
17
33
|
* Creates a Restate service deployment backed by a single EC2 instance,
|
|
18
34
|
* suitable for development and testing purposes.
|
|
@@ -26,11 +42,7 @@ export declare class SingleNodeRestateInstance extends Construct implements Rest
|
|
|
26
42
|
readonly metaEndpoint: string;
|
|
27
43
|
readonly registrationProvider: cr.Provider;
|
|
28
44
|
readonly registrationProviderToken: cdk.CfnOutput;
|
|
29
|
-
constructor(scope: Construct, id: string, props:
|
|
30
|
-
prefix?: string;
|
|
31
|
-
restateTag?: string;
|
|
32
|
-
logGroup: logs.LogGroup;
|
|
33
|
-
});
|
|
45
|
+
constructor(scope: Construct, id: string, props: RestateInstanceProps);
|
|
34
46
|
/**
|
|
35
47
|
* Creates a custom resource provider to facilitate service discovery. Note that the custom resource event handler
|
|
36
48
|
* must be able to reach the Restate instance's meta endpoint - which is why it is deployed within the same VPC.
|
|
@@ -1,4 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
/*
|
|
3
|
+
* Copyright (c) 2023 - Restate Software, Inc., Restate GmbH
|
|
4
|
+
*
|
|
5
|
+
* This file is part of the Restate SDK for Node.js/TypeScript,
|
|
6
|
+
* which is released under the MIT license.
|
|
7
|
+
*
|
|
8
|
+
* You can find a copy of the license in file LICENSE in the root
|
|
9
|
+
* directory of this repository or package, or at
|
|
10
|
+
* https://github.com/restatedev/sdk-typescript/blob/main/LICENSE
|
|
11
|
+
*/
|
|
2
12
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
13
|
if (k2 === undefined) k2 = k;
|
|
4
14
|
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
@@ -26,7 +36,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
26
36
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
37
|
};
|
|
28
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
exports.SingleNodeRestateInstance = void 0;
|
|
39
|
+
exports.SingleNodeRestateInstance = exports.TracingMode = void 0;
|
|
30
40
|
const constructs_1 = require("constructs");
|
|
31
41
|
const ec2 = __importStar(require("aws-cdk-lib/aws-ec2"));
|
|
32
42
|
const iam = __importStar(require("aws-cdk-lib/aws-iam"));
|
|
@@ -40,6 +50,12 @@ const cr = __importStar(require("aws-cdk-lib/custom-resources"));
|
|
|
40
50
|
const RESTATE_INGRESS_PORT = 8080;
|
|
41
51
|
const RESTATE_META_PORT = 9070;
|
|
42
52
|
const RESTATE_DOCKER_DEFAULT_TAG = "latest";
|
|
53
|
+
const ADOT_DOCKER_DEFAULT_TAG = "latest";
|
|
54
|
+
var TracingMode;
|
|
55
|
+
(function (TracingMode) {
|
|
56
|
+
TracingMode["DISABLED"] = "DISABLED";
|
|
57
|
+
TracingMode["AWS_XRAY"] = "AWS_XRAY";
|
|
58
|
+
})(TracingMode || (exports.TracingMode = TracingMode = {}));
|
|
43
59
|
/**
|
|
44
60
|
* Creates a Restate service deployment backed by a single EC2 instance,
|
|
45
61
|
* suitable for development and testing purposes.
|
|
@@ -58,11 +74,17 @@ class SingleNodeRestateInstance extends constructs_1.Construct {
|
|
|
58
74
|
});
|
|
59
75
|
props.logGroup.grantWrite(this.invokerRole);
|
|
60
76
|
const restateTag = props.restateTag ?? RESTATE_DOCKER_DEFAULT_TAG;
|
|
77
|
+
const adotTag = props.adotTag ?? ADOT_DOCKER_DEFAULT_TAG;
|
|
61
78
|
const restateInitCommands = ec2.UserData.forLinux();
|
|
62
79
|
restateInitCommands.addCommands("sudo yum update -y", "sudo yum install -y docker", "sudo systemctl enable docker.service", "sudo systemctl start docker.service", [
|
|
63
|
-
"
|
|
80
|
+
"docker run --name adot --restart unless-stopped --detach",
|
|
81
|
+
" -p 4317:4317 -p 55680:55680 -p 8889:8888",
|
|
82
|
+
` public.ecr.aws/aws-observability/aws-otel-collector:${adotTag}`,
|
|
83
|
+
].join(""), [
|
|
84
|
+
"sudo docker run --name restate --restart unless-stopped --detach",
|
|
64
85
|
" --volume /var/restate:/target --network=host",
|
|
65
86
|
" -e RESTATE_OBSERVABILITY__LOG__FORMAT=Json -e RUST_LOG=info,restate_worker::partition=warn",
|
|
87
|
+
" -e RESTATE_OBSERVABILITY__TRACING__ENDPOINT=http://localhost:4317",
|
|
66
88
|
` --log-driver=awslogs --log-opt awslogs-group=${props.logGroup.logGroupName}`,
|
|
67
89
|
` ghcr.io/restatedev/restate-dist:${restateTag}`,
|
|
68
90
|
].join(""));
|
|
@@ -76,6 +98,11 @@ class SingleNodeRestateInstance extends constructs_1.Construct {
|
|
|
76
98
|
userData: restateInitCommands,
|
|
77
99
|
});
|
|
78
100
|
this.instance = restateInstance;
|
|
101
|
+
// We start the ADOT collector regardless, and only control whether they will be published to X-Ray via instance
|
|
102
|
+
// role permissions. This way historic traces will be buffered on the host, even if tracing is disabled initially.
|
|
103
|
+
if (props.tracing === TracingMode.AWS_XRAY) {
|
|
104
|
+
restateInstance.role.addManagedPolicy(iam.ManagedPolicy.fromAwsManagedPolicyName("AWSXrayWriteOnlyAccess"));
|
|
105
|
+
}
|
|
79
106
|
const restateInstanceSecurityGroup = new ec2.SecurityGroup(this, "RestateSecurityGroup", {
|
|
80
107
|
vpc: this.vpc,
|
|
81
108
|
securityGroupName: "RestateSecurityGroup",
|
|
@@ -153,4 +180,4 @@ class SingleNodeRestateInstance extends constructs_1.Construct {
|
|
|
153
180
|
}
|
|
154
181
|
}
|
|
155
182
|
exports.SingleNodeRestateInstance = SingleNodeRestateInstance;
|
|
156
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2luZ2xlLW5vZGUtcmVzdGF0ZS1pbnN0YW5jZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL2xpYi9yZXN0YXRlLWNvbnN0cnVjdHMvc2luZ2xlLW5vZGUtcmVzdGF0ZS1pbnN0YW5jZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDJDQUF1QztBQUV2Qyx5REFBMkM7QUFDM0MseURBQTJDO0FBQzNDLCtFQUFpRTtBQUNqRSx1R0FBZ0Y7QUFDaEYsMkVBQTZEO0FBQzdELDBEQUE2QjtBQUM3QiwrREFBaUQ7QUFDakQsaURBQW1DO0FBQ25DLGlFQUFtRDtBQUVuRCxNQUFNLG9CQUFvQixHQUFHLElBQUksQ0FBQztBQUNsQyxNQUFNLGlCQUFpQixHQUFHLElBQUksQ0FBQztBQUMvQixNQUFNLDBCQUEwQixHQUFHLFFBQVEsQ0FBQztBQVk1Qzs7O0dBR0c7QUFDSCxNQUFhLHlCQUEwQixTQUFRLHNCQUFTO0lBV3RELFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBd0U7UUFDaEgsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsWUFBWSxFQUFFO1lBQ3pDLE1BQU0sRUFBRSxDQUFDO1NBQ1YsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLGNBQWMsRUFBRTtZQUNwRCxTQUFTLEVBQUUsSUFBSSxHQUFHLENBQUMsZ0JBQWdCLENBQUMsbUJBQW1CLENBQUM7WUFDeEQsZUFBZSxFQUFFO2dCQUNmLEdBQUcsQ0FBQyxhQUFhLENBQUMsd0JBQXdCLENBQUMsOEJBQThCLENBQUM7YUFDM0U7U0FDRixDQUFDLENBQUM7UUFDSCxLQUFLLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxJQUFJ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bmltcG9ydCAqIGFzIGxvZ3MgZnJvbSBcImF3cy1jZGstbGliL2F3cy1sb2dzXCI7XG5pbXBvcnQgKiBhcyBlYzIgZnJvbSBcImF3cy1jZGstbGliL2F3cy1lYzJcIjtcbmltcG9ydCAqIGFzIGlhbSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWlhbVwiO1xuaW1wb3J0ICogYXMgZWxiX3YyIGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtZWxhc3RpY2xvYWRiYWxhbmNpbmd2MlwiO1xuaW1wb3J0IHsgSW5zdGFuY2VUYXJnZXQgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWVsYXN0aWNsb2FkYmFsYW5jaW5ndjItdGFyZ2V0c1wiO1xuaW1wb3J0ICogYXMgbGFtYmRhX25vZGUgZnJvbSBcImF3cy1jZGstbGliL2F3cy1sYW1iZGEtbm9kZWpzXCI7XG5pbXBvcnQgcGF0aCBmcm9tIFwibm9kZTpwYXRoXCI7XG5pbXBvcnQgKiBhcyBsYW1iZGEgZnJvbSBcImF3cy1jZGstbGliL2F3cy1sYW1iZGFcIjtcbmltcG9ydCAqIGFzIGNkayBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCAqIGFzIGNyIGZyb20gXCJhd3MtY2RrLWxpYi9jdXN0b20tcmVzb3VyY2VzXCI7XG5cbmNvbnN0IFJFU1RBVEVfSU5HUkVTU19QT1JUID0gODA4MDtcbmNvbnN0IFJFU1RBVEVfTUVUQV9QT1JUID0gOTA3MDtcbmNvbnN0IFJFU1RBVEVfRE9DS0VSX0RFRkFVTFRfVEFHID0gXCJsYXRlc3RcIjtcblxuLyoqXG4gKiBSZXByZXNlbnRzIGFuIGluc3RhbmNlIG9mIHRoZSBSZXN0YXRlIHNlcnZpY2UuIFRoaXMgY291bGQgcmVwcmVzZW50IGEgc2VsZi1ob3N0ZWQgYnJva2VyLCBvciBSZXN0YXRlJ3MgbWFuYWdlZFxuICogc2VydmljZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZXN0YXRlSW5zdGFuY2Uge1xuICByZWFkb25seSBpbnZva2VyUm9sZTogaWFtLlJvbGU7XG4gIHJlYWRvbmx5IG1ldGFFbmRwb2ludDogc3RyaW5nO1xuICByZWFkb25seSByZWdpc3RyYXRpb25Qcm92aWRlclRva2VuOiBjZGsuQ2ZuT3V0cHV0O1xufVxuXG4vKipcbiAqIENyZWF0ZXMgYSBSZXN0YXRlIHNlcnZpY2UgZGVwbG95bWVudCBiYWNrZWQgYnkgYSBzaW5nbGUgRUMyIGluc3RhbmNlLFxuICogc3VpdGFibGUgZm9yIGRldmVsb3BtZW50IGFuZCB0ZXN0aW5nIHB1cnBvc2VzLlxuICovXG5leHBvcnQgY2xhc3MgU2luZ2xlTm9kZVJlc3RhdGVJbnN0YW5jZSBleHRlbmRzIENvbnN0cnVjdCBpbXBsZW1lbnRzIFJlc3RhdGVJbnN0YW5jZSB7XG4gIHJlYWRvbmx5IGluc3RhbmNlOiBlYzIuSW5zdGFuY2U7XG4gIHJlYWRvbmx5IGludm9rZXJSb2xlOiBpYW0uUm9sZTtcbiAgcmVhZG9ubHkgdnBjOiBlYzIuVnBjO1xuXG4gIHJlYWRvbmx5IHB1YmxpY0luZ3Jlc3NFbmRwb2ludDogc3RyaW5nO1xuICByZWFkb25seSBwcml2YXRlSW5ncmVzc0VuZHBvaW50OiBzdHJpbmc7XG4gIHJlYWRvbmx5IG1ldGFFbmRwb2ludDogc3RyaW5nO1xuICByZWFkb25seSByZWdpc3RyYXRpb25Qcm92aWRlcjogY3IuUHJvdmlkZXI7XG4gIHJlYWRvbmx5IHJlZ2lzdHJhdGlvblByb3ZpZGVyVG9rZW46IGNkay5DZm5PdXRwdXQ7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IHsgcHJlZml4Pzogc3RyaW5nLCByZXN0YXRlVGFnPzogc3RyaW5nLCBsb2dHcm91cDogbG9ncy5Mb2dHcm91cCB9KSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIHRoaXMudnBjID0gbmV3IGVjMi5WcGModGhpcywgXCJSZXN0YXRlVnBjXCIsIHtcbiAgICAgIG1heEF6czogMyxcbiAgICB9KTtcblxuICAgIHRoaXMuaW52b2tlclJvbGUgPSBuZXcgaWFtLlJvbGUodGhpcywgXCJJbnN0YW5jZVJvbGVcIiwge1xuICAgICAgYXNzdW1lZEJ5OiBuZXcgaWFtLlNlcnZpY2VQcmluY2lwYWwoXCJlYzIuYW1hem9uYXdzLmNvbVwiKSxcbiAgICAgIG1hbmFnZWRQb2xpY2llczogW1xuICAgICAgICBpYW0uTWFuYWdlZFBvbGljeS5mcm9tQXdzTWFuYWdlZFBvbGljeU5hbWUoXCJBbWF6b25TU01NYW5hZ2VkSW5zdGFuY2VDb3JlXCIpLFxuICAgICAgXSxcbiAgICB9KTtcbiAgICBwcm9wcy5sb2dHcm91cC5ncmFudFdyaXRlKHRoaXMuaW52b2tlclJvbGUpO1xuXG4gICAgY29uc3QgcmVzdGF0ZVRhZyA9IHByb3BzLnJlc3RhdGVUYWcgPz8gUkVTVEFURV9ET0NLRVJfREVGQVVMVF9UQUc7XG4gICAgY29uc3QgcmVzdGF0ZUluaXRDb21tYW5kcyA9IGVjMi5Vc2VyRGF0YS5mb3JMaW51eCgpO1xuICAgIHJlc3RhdGVJbml0Q29tbWFuZHMuYWRkQ29tbWFuZHMoXG4gICAgICBcInN1ZG8geXVtIHVwZGF0ZSAteVwiLFxuICAgICAgXCJzdWRvIHl1bSBpbnN0YWxsIC15IGRvY2tlclwiLFxuICAgICAgXCJzdWRvIHN5c3RlbWN0bCBlbmFibGUgZG9ja2VyLnNlcnZpY2VcIixcbiAgICAgIFwic3VkbyBzeXN0ZW1jdGwgc3RhcnQgZG9ja2VyLnNlcnZpY2VcIixcbiAgICAgIFtcbiAgICAgICAgXCJzdWRvIGRvY2tlciBydW4gLS1uYW1lIHJlc3RhdGUgLS1yZXN0YXJ0IG9uLWZhaWx1cmU6MTAgLS1kZXRhY2hcIixcbiAgICAgICAgXCIgLS12b2x1bWUgL3Zhci9yZXN0YXRlOi90YXJnZXQgLS1uZXR3b3JrPWhvc3RcIixcbiAgICAgICAgXCIgLWUgUkVTVEFURV9PQlNFUlZBQklMSVRZX19MT0dfX0ZPUk1BVD1Kc29uIC1lIFJVU1RfTE9HPWluZm8scmVzdGF0ZV93b3JrZXI6OnBhcnRpdGlvbj13YXJuXCIsXG4gICAgICAgIGAgLS1sb2ctZHJpdmVyPWF3c2xvZ3MgLS1sb2ctb3B0IGF3c2xvZ3MtZ3JvdXA9JHtwcm9wcy5sb2dHcm91cC5sb2dHcm91cE5hbWV9YCxcbiAgICAgICAgYCBnaGNyLmlvL3Jlc3RhdGVkZXYvcmVzdGF0ZS1kaXN0OiR7cmVzdGF0ZVRhZ31gLFxuICAgICAgXS5qb2luKFwiXCIpLFxuICAgICk7XG5cbiAgICBjb25zdCByZXN0YXRlSW5zdGFuY2UgPSBuZXcgZWMyLkluc3RhbmNlKHRoaXMsIFwiSG9zdFwiLCB7XG4gICAgICB2cGM6IHRoaXMudnBjLFxuICAgICAgaW5zdGFuY2VUeXBlOiBuZXcgZWMyLkluc3RhbmNlVHlwZShcInQ0Zy5taWNyb1wiKSxcbiAgICAgIG1hY2hpbmVJbWFnZTogZWMyLk1hY2hpbmVJbWFnZS5sYXRlc3RBbWF6b25MaW51eDIwMjMoe1xuICAgICAgICBjcHVUeXBlOiBlYzIuQW1hem9uTGludXhDcHVUeXBlLkFSTV82NCxcbiAgICAgIH0pLFxuICAgICAgcm9sZTogdGhpcy5pbnZva2VyUm9sZSxcbiAgICAgIHVzZXJEYXRhOiByZXN0YXRlSW5pdENvbW1hbmRzLFxuICAgIH0pO1xuICAgIHRoaXMuaW5zdGFuY2UgPSByZXN0YXRlSW5zdGFuY2U7XG5cbiAgICBjb25zdCByZXN0YXRlSW5zdGFuY2VTZWN1cml0eUdyb3VwID0gbmV3IGVjMi5TZWN1cml0eUdyb3VwKHRoaXMsIFwiUmVzdGF0ZVNlY3VyaXR5R3JvdXBcIiwge1xuICAgICAgdnBjOiB0aGlzLnZwYyxcbiAgICAgIHNlY3VyaXR5R3JvdXBOYW1lOiBcIlJlc3RhdGVTZWN1cml0eUdyb3VwXCIsXG4gICAgICBkZXNjcmlwdGlvbjogXCJBbGxvdyBpbmJvdW5kIHRyYWZmaWMgdG8gUmVzdGF0ZVwiLFxuICAgIH0pO1xuXG4gICAgY29uc3QgaW5ncmVzc0xvYWRCYWxhbmNlciA9IG5ldyBlbGJfdjIuQXBwbGljYXRpb25Mb2FkQmFsYW5jZXIodGhpcywgXCJSZXN0YXRlQWxiXCIsIHtcbiAgICAgIHZwYzogdGhpcy52cGMsXG4gICAgICBpbnRlcm5ldEZhY2luZzogdHJ1ZSxcbiAgICB9KTtcbiAgICBjb25zdCB0YXJnZXRHcm91cCA9IG5ldyBlbGJfdjIuQXBwbGljYXRpb25UYXJnZXRHcm91cCh0aGlzLCBcIlRhcmdldEdyb3VwXCIsIHtcbiAgICAgIHZwYzogdGhpcy52cGMsXG4gICAgICBwb3J0OiBSRVNUQVRFX0lOR1JFU1NfUE9SVCxcbiAgICAgIHRhcmdldHM6IFtuZXcgSW5zdGFuY2VUYXJnZXQocmVzdGF0ZUluc3RhbmNlKV0sXG4gICAgICBoZWFsdGhDaGVjazoge1xuICAgICAgICBwYXRoOiBcIi9ncnBjLmhlYWx0aC52MS5IZWFsdGgvQ2hlY2tcIixcbiAgICAgICAgcHJvdG9jb2w6IGVsYl92Mi5Qcm90b2NvbC5IVFRQLFxuICAgICAgfSxcbiAgICB9KTtcbiAgICAvLyBUT0RPOiBNYWtlIHRoaXMgSFRUUFMgKGh0dHBzOi8vZ2l0aHViLmNvbS9yZXN0YXRlZGV2L3Jlc3RhdGUtY2RrLXN1cHBvcnQvaXNzdWVzLzIpXG4gICAgaW5ncmVzc0xvYWRCYWxhbmNlci5hZGRMaXN0ZW5lcihcIkxpc3RlbmVyXCIsIHtcbiAgICAgIHBvcnQ6IDgwLFxuICAgICAgZGVmYXVsdFRhcmdldEdyb3VwczogW3RhcmdldEdyb3VwXSxcbiAgICB9KTtcblxuICAgIGNvbnN0IGFsYlNlY3VyaXR5R3JvdXAgPSBuZXcgZWMyLlNlY3VyaXR5R3JvdXAodGhpcywgXCJBbGJTZWN1cml0eUdyb3VwXCIsIHtcbiAgICAgIHZwYzogdGhpcy52cGMsXG4gICAgICBkZXNjcmlwdGlvbjogXCJBTEIgc2VjdXJpdHkgZ3JvdXBcIixcbiAgICAgIGFsbG93QWxsT3V0Ym91bmQ6IGZhbHNlLFxuICAgIH0pO1xuICAgIGFsYlNlY3VyaXR5R3JvdXAuYWRkRWdyZXNzUnVsZShlYzIuUGVlci5hbnlJcHY0KCksIGVjMi5Qb3J0LnRjcChSRVNUQVRFX0lOR1JFU1NfUE9SVCksIFwiQWxsb3cgb3V0Ym91bmQgSFRUUCB0cmFmZmljIHRvIFJlc3RhdGUgaW5ncmVzc1wiKTtcbiAgICBpbmdyZXNzTG9hZEJhbGFuY2VyLmFkZFNlY3VyaXR5R3JvdXAoYWxiU2VjdXJpdHlHcm91cCk7XG5cbiAgICByZXN0YXRlSW5zdGFuY2VTZWN1cml0eUdyb3VwLmFkZEluZ3Jlc3NSdWxlKGFsYlNlY3VyaXR5R3JvdXAsIGVjMi5Qb3J0LnRjcChSRVNUQVRFX0lOR1JFU1NfUE9SVCksIFwiQWxsb3cgdHJhZmZpYyBmcm9tIEFMQiB0byBSZXN0YXRlIGluZ3Jlc3NcIik7XG5cbiAgICAvLyBUaGVzZSBydWxlcyBhbGxvdyB0aGUgc2VydmljZSByZWdpc3RyYXRpb24gY29tcG9uZW50IHRvIHRyaWdnZXIgc2VydmljZSBkaXNjb3ZlcnkgYXMgbmVlZGVkOyB0aGUgcmVxdWVzdHNcbiAgICAvLyBvcmlnaW5hdGUgZnJvbSBhIFZQQy1ib3VuZCBMYW1iZGEgZnVuY3Rpb24gdGhhdCBiYWNrcyB0aGUgY3VzdG9tIHJlc291cmNlLlxuICAgIHRoaXMudnBjLnByaXZhdGVTdWJuZXRzLmZvckVhY2goKHN1Ym5ldCkgPT4ge1xuICAgICAgcmVzdGF0ZUluc3RhbmNlU2VjdXJpdHlHcm91cC5hZGRJbmdyZXNzUnVsZShlYzIuUGVlci5pcHY0KHN1Ym5ldC5pcHY0Q2lkckJsb2NrKSwgZWMyLlBvcnQudGNwKFJFU1RBVEVfTUVUQV9QT1JUKSwgXCJBbGxvdyB0cmFmZmljIGZyb20gdGhlIFZQQyB0byBSZXN0YXRlIG1ldGFcIik7XG4gICAgfSk7XG4gICAgdGhpcy52cGMucHJpdmF0ZVN1Ym5ldHMuZm9yRWFjaCgoc3VibmV0KSA9PiB7XG4gICAgICByZXN0YXRlSW5zdGFuY2VTZWN1cml0eUdyb3VwLmFkZEluZ3Jlc3NSdWxlKGVjMi5QZWVyLmlwdjQoc3VibmV0LmlwdjRDaWRyQmxvY2spLCBlYzIuUG9ydC50Y3AoUkVTVEFURV9JTkdSRVNTX1BPUlQpLCBcIkFsbG93IHRyYWZmaWMgZnJvbSB0aGUgVlBDIHRvIFJlc3RhdGUgaW5ncmVzc1wiKTtcbiAgICB9KTtcbiAgICByZXN0YXRlSW5zdGFuY2UuYWRkU2VjdXJpdHlHcm91cChyZXN0YXRlSW5zdGFuY2VTZWN1cml0eUdyb3VwKTtcblxuICAgIGNvbnN0IHJlZ2lzdHJhdGlvblByb3ZpZGVyID0gdGhpcy5jcmVhdGVSZWdpc3RyYXRpb25Qcm92aWRlcigpO1xuICAgIHRoaXMucmVnaXN0cmF0aW9uUHJvdmlkZXIgPSByZWdpc3RyYXRpb25Qcm92aWRlcjtcbiAgICB0aGlzLnJlZ2lzdHJhdGlvblByb3ZpZGVyVG9rZW4gPSBuZXcgY2RrLkNmbk91dHB1dCh0aGlzLCBcIlJlZ2lzdHJhdGlvblByb3ZpZGVyVG9rZW5cIiwge1xuICAgICAgZGVzY3JpcHRpb246IFwiQ3VzdG9tIHJlc291cmNlIHByb3ZpZGVyIHNlcnZpY2UgdG9rZW4sIG5lZWRlZCBieSB0aGUgUmVzdGF0ZSBzZXJ2aWNlIHJlZ2lzdHJ5IGNvbXBvbmVudCB0byB0cmlnZ2VyIGRpc2NvdmVyeVwiLFxuICAgICAgZXhwb3J0TmFtZTogW3Byb3BzLnByZWZpeCwgXCJSZWdpc3RyYXRpb25Qcm92aWRlclRva2VuXCJdLmpvaW4oXCItXCIpLFxuICAgICAgdmFsdWU6IHJlZ2lzdHJhdGlvblByb3ZpZGVyLnNlcnZpY2VUb2tlbixcbiAgICB9KTtcblxuICAgIHRoaXMucHVibGljSW5ncmVzc0VuZHBvaW50ID0gYGh0dHA6Ly8ke2luZ3Jlc3NMb2FkQmFsYW5jZXIubG9hZEJhbGFuY2VyRG5zTmFtZX1gO1xuICAgIHRoaXMucHJpdmF0ZUluZ3Jlc3NFbmRwb2ludCA9IGBodHRwOi8vJHt0aGlzLmluc3RhbmNlLmluc3RhbmNlUHJpdmF0ZURuc05hbWV9OiR7UkVTVEFURV9JTkdSRVNTX1BPUlR9YDtcbiAgICB0aGlzLm1ldGFFbmRwb2ludCA9IGBodHRwOi8vJHt0aGlzLmluc3RhbmNlLmluc3RhbmNlUHJpdmF0ZURuc05hbWV9OiR7UkVTVEFURV9NRVRBX1BPUlR9YDtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgY3VzdG9tIHJlc291cmNlIHByb3ZpZGVyIHRvIGZhY2lsaXRhdGUgc2VydmljZSBkaXNjb3ZlcnkuIE5vdGUgdGhhdCB0aGUgY3VzdG9tIHJlc291cmNlIGV2ZW50IGhhbmRsZXJcbiAgICogbXVzdCBiZSBhYmxlIHRvIHJlYWNoIHRoZSBSZXN0YXRlIGluc3RhbmNlJ3MgbWV0YSBlbmRwb2ludCAtIHdoaWNoIGlzIHdoeSBpdCBpcyBkZXBsb3llZCB3aXRoaW4gdGhlIHNhbWUgVlBDLlxuICAgKi9cbiAgcHJpdmF0ZSBjcmVhdGVSZWdpc3RyYXRpb25Qcm92aWRlcigpIHtcbiAgICBjb25zdCByZWdpc3RyYXRpb25IYW5kbGVyID0gbmV3IGxhbWJkYV9ub2RlLk5vZGVqc0Z1bmN0aW9uKHRoaXMsIFwiUmVnaXN0cmF0aW9uSGFuZGxlclwiLCB7XG4gICAgICBkZXNjcmlwdGlvbjogXCJSZXN0YXRlIGN1c3RvbSByZWdpc3RyYXRpb24gaGFuZGxlclwiLFxuICAgICAgZW50cnk6IHBhdGguam9pbihfX2Rpcm5hbWUsIFwicmVnaXN0ZXItc2VydmljZS1oYW5kbGVyL2luZGV4LmpzXCIpLFxuICAgICAgYXJjaGl0ZWN0dXJlOiBsYW1iZGEuQXJjaGl0ZWN0dXJlLkFSTV82NCxcbiAgICAgIHJ1bnRpbWU6IGxhbWJkYS5SdW50aW1lLk5PREVKU19MQVRFU1QsXG4gICAgICBtZW1vcnlTaXplOiAxMjgsXG4gICAgICB0aW1lb3V0OiBjZGsuRHVyYXRpb24uc2Vjb25kcyg2MCksXG4gICAgICBlbnZpcm9ubWVudDoge1xuICAgICAgICBOT0RFX09QVElPTlM6IFwiLS1lbmFibGUtc291cmNlLW1hcHNcIixcbiAgICAgIH0sXG4gICAgICB2cGM6IHRoaXMudnBjLFxuICAgICAgdnBjU3VibmV0czoge1xuICAgICAgICBzdWJuZXRzOiB0aGlzLnZwYy5wcml2YXRlU3VibmV0cyxcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICByZXR1cm4gbmV3IGNyLlByb3ZpZGVyKHRoaXMsIFwiUmVnaXN0cmF0aW9uUHJvdmlkZXJcIiwge1xuICAgICAgb25FdmVudEhhbmRsZXI6IHJlZ2lzdHJhdGlvbkhhbmRsZXIsXG4gICAgfSk7XG4gIH1cbn0iXX0=
|
|
183
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2luZ2xlLW5vZGUtcmVzdGF0ZS1pbnN0YW5jZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL2xpYi9yZXN0YXRlLWNvbnN0cnVjdHMvc2luZ2xlLW5vZGUtcmVzdGF0ZS1pbnN0YW5jZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7Ozs7OztHQVNHOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVILDJDQUF1QztBQUV2Qyx5REFBMkM7QUFDM0MseURBQTJDO0FBQzNDLCtFQUFpRTtBQUNqRSx1R0FBZ0Y7QUFDaEYsMkVBQTZEO0FBQzdELDBEQUE2QjtBQUM3QiwrREFBaUQ7QUFDakQsaURBQW1DO0FBQ25DLGlFQUFtRDtBQUVuRCxNQUFNLG9CQUFvQixHQUFHLElBQUksQ0FBQztBQUNsQyxNQUFNLGlCQUFpQixHQUFHLElBQUksQ0FBQztBQUMvQixNQUFNLDBCQUEwQixHQUFHLFFBQVEsQ0FBQztBQUM1QyxNQUFNLHVCQUF1QixHQUFHLFFBQVEsQ0FBQztBQVl6QyxJQUFZLFdBR1g7QUFIRCxXQUFZLFdBQVc7SUFDckIsb0NBQXFCLENBQUE7SUFDckIsb0NBQXFCLENBQUE7QUFDdkIsQ0FBQyxFQUhXLFdBQVcsMkJBQVgsV0FBVyxRQUd0QjtBQW1CRDs7O0dBR0c7QUFDSCxNQUFhLHlCQUEwQixTQUFRLHNCQUFTO0lBV3RELFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBMkI7UUFDbkUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsWUFBWSxFQUFFO1lBQ3pDLE1BQU0sRUFBRSxDQUFDO1NBQ1YsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLGNBQWMsRUFBRTtZQUNwRCxTQUFTLEVBQUUsSUFBSSxHQUFH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TUFBTSxDQUFDLFlBQVksQ0FBQyxNQUFNO1lBQ3hDLE9BQU8sRUFBRSxNQUFNLENBQUMsT0FBTyxDQUFDLGFBQWE7WUFDckMsVUFBVSxFQUFFLEdBQUc7WUFDZixPQUFPLEVBQUUsR0FBRyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQ2pDLFdBQVcsRUFBRTtnQkFDWCxZQUFZLEVBQUUsc0JBQXNCO2FBQ3JDO1lBQ0QsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHO1lBQ2IsVUFBVSxFQUFFO2dCQUNWLE9BQU8sRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLGNBQWM7YUFDakM7U0FDRixDQUFDLENBQUM7UUFFSCxPQUFPLElBQUksRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsc0JBQXNCLEVBQUU7WUFDbkQsY0FBYyxFQUFFLG1CQUFtQjtTQUNwQyxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0Y7QUFySkQsOERBcUpDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAyMyAtIFJlc3RhdGUgU29mdHdhcmUsIEluYy4sIFJlc3RhdGUgR21iSFxuICpcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBSZXN0YXRlIFNESyBmb3IgTm9kZS5qcy9UeXBlU2NyaXB0LFxuICogd2hpY2ggaXMgcmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICpcbiAqIFlvdSBjYW4gZmluZCBhIGNvcHkgb2YgdGhlIGxpY2Vuc2UgaW4gZmlsZSBMSUNFTlNFIGluIHRoZSByb290XG4gKiBkaXJlY3Rvcnkgb2YgdGhpcyByZXBvc2l0b3J5IG9yIHBhY2thZ2UsIG9yIGF0XG4gKiBodHRwczovL2dpdGh1Yi5jb20vcmVzdGF0ZWRldi9zZGstdHlwZXNjcmlwdC9ibG9iL21haW4vTElDRU5TRVxuICovXG5cbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgKiBhcyBsb2dzIGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtbG9nc1wiO1xuaW1wb3J0ICogYXMgZWMyIGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtZWMyXCI7XG5pbXBvcnQgKiBhcyBpYW0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1pYW1cIjtcbmltcG9ydCAqIGFzIGVsYl92MiBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWVsYXN0aWNsb2FkYmFsYW5jaW5ndjJcIjtcbmltcG9ydCB7IEluc3RhbmNlVGFyZ2V0IH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1lbGFzdGljbG9hZGJhbGFuY2luZ3YyLXRhcmdldHNcIjtcbmltcG9ydCAqIGFzIGxhbWJkYV9ub2RlIGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtbGFtYmRhLW5vZGVqc1wiO1xuaW1wb3J0IHBhdGggZnJvbSBcIm5vZGU6cGF0aFwiO1xuaW1wb3J0ICogYXMgbGFtYmRhIGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtbGFtYmRhXCI7XG5pbXBvcnQgKiBhcyBjZGsgZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQgKiBhcyBjciBmcm9tIFwiYXdzLWNkay1saWIvY3VzdG9tLXJlc291cmNlc1wiO1xuXG5jb25zdCBSRVNUQVRFX0lOR1JFU1NfUE9SVCA9IDgwODA7XG5jb25zdCBSRVNUQVRFX01FVEFfUE9SVCA9IDkwNzA7XG5jb25zdCBSRVNUQVRFX0RPQ0tFUl9ERUZBVUxUX1RBRyA9IFwibGF0ZXN0XCI7XG5jb25zdCBBRE9UX0RPQ0tFUl9ERUZBVUxUX1RBRyA9IFwibGF0ZXN0XCI7XG5cbi8qKlxuICogUmVwcmVzZW50cyBhbiBpbnN0YW5jZSBvZiB0aGUgUmVzdGF0ZSBzZXJ2aWNlLiBUaGlzIGNvdWxkIHJlcHJlc2VudCBhIHNlbGYtaG9zdGVkIGJyb2tlciwgb3IgUmVzdGF0ZSdzIG1hbmFnZWRcbiAqIHNlcnZpY2UuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVzdGF0ZUluc3RhbmNlIHtcbiAgcmVhZG9ubHkgaW52b2tlclJvbGU6IGlhbS5Sb2xlO1xuICByZWFkb25seSBtZXRhRW5kcG9pbnQ6IHN0cmluZztcbiAgcmVhZG9ubHkgcmVnaXN0cmF0aW9uUHJvdmlkZXJUb2tlbjogY2RrLkNmbk91dHB1dDtcbn1cblxuZXhwb3J0IGVudW0gVHJhY2luZ01vZGUge1xuICBESVNBQkxFRCA9IFwiRElTQUJMRURcIixcbiAgQVdTX1hSQVkgPSBcIkFXU19YUkFZXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVzdGF0ZUluc3RhbmNlUHJvcHMge1xuICAvKiogTG9nIGdyb3VwIGZvciBSZXN0YXRlIHNlcnZpY2UgbG9ncy4gKi9cbiAgbG9nR3JvdXA6IGxvZ3MuTG9nR3JvdXA7XG5cbiAgLyoqIFRyYWNpbmcgbW9kZSBmb3IgUmVzdGF0ZSBzZXJ2aWNlcy4gRGlzYWJsZWQgYnkgZGVmYXVsdC4gKi9cbiAgdHJhY2luZz86IFRyYWNpbmdNb2RlO1xuXG4gIC8qKiBQcmVmaXggZm9yIHJlc291cmNlcyBjcmVhdGVkIGJ5IHRoaXMgY29uc3RydWN0IHRoYXQgcmVxdWlyZSB1bmlxdWUgbmFtZXMuICovXG4gIHByZWZpeD86IHN0cmluZztcblxuICAvKiogUmVzdGF0ZSBEb2NrZXIgaW1hZ2UgdGFnLiBEZWZhdWx0cyB0byBgbGF0ZXN0YC4gKi9cbiAgcmVzdGF0ZVRhZz86IHN0cmluZztcblxuICAvKiogQW1hem9uIERpc3RybyBmb3IgT3BlbiBUZWxlbWV0cnkgRG9ja2VyIGltYWdlIHRhZy4gRGVmYXVsdHMgdG8gYGxhdGVzdGAuICovXG4gIGFkb3RUYWc/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ3JlYXRlcyBhIFJlc3RhdGUgc2VydmljZSBkZXBsb3ltZW50IGJhY2tlZCBieSBhIHNpbmdsZSBFQzIgaW5zdGFuY2UsXG4gKiBzdWl0YWJsZSBmb3IgZGV2ZWxvcG1lbnQgYW5kIHRlc3RpbmcgcHVycG9zZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBTaW5nbGVOb2RlUmVzdGF0ZUluc3RhbmNlIGV4dGVuZHMgQ29uc3RydWN0IGltcGxlbWVudHMgUmVzdGF0ZUluc3RhbmNlIHtcbiAgcmVhZG9ubHkgaW5zdGFuY2U6IGVjMi5JbnN0YW5jZTtcbiAgcmVhZG9ubHkgaW52b2tlclJvbGU6IGlhbS5Sb2xlO1xuICByZWFkb25seSB2cGM6IGVjMi5WcGM7XG5cbiAgcmVhZG9ubHkgcHVibGljSW5ncmVzc0VuZHBvaW50OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHByaXZhdGVJbmdyZXNzRW5kcG9pbnQ6IHN0cmluZztcbiAgcmVhZG9ubHkgbWV0YUVuZHBvaW50OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHJlZ2lzdHJhdGlvblByb3ZpZGVyOiBjci5Qcm92aWRlcjtcbiAgcmVhZG9ubHkgcmVnaXN0cmF0aW9uUHJvdmlkZXJUb2tlbjogY2RrLkNmbk91dHB1dDtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogUmVzdGF0ZUluc3RhbmNlUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgdGhpcy52cGMgPSBuZXcgZWMyLlZwYyh0aGlzLCBcIlJlc3RhdGVWcGNcIiwge1xuICAgICAgbWF4QXpzOiAzLFxuICAgIH0pO1xuXG4gICAgdGhpcy5pbnZva2VyUm9sZSA9IG5ldyBpYW0uUm9sZSh0aGlzLCBcIkluc3RhbmNlUm9sZVwiLCB7XG4gICAgICBhc3N1bWVkQnk6IG5ldyBpYW0uU2VydmljZVByaW5jaXBhbChcImVjMi5hbWF6b25hd3MuY29tXCIpLFxuICAgICAgbWFuYWdlZFBvbGljaWVzOiBbXG4gICAgICAgIGlhbS5NYW5hZ2VkUG9saWN5LmZyb21Bd3NNYW5hZ2VkUG9saWN5TmFtZShcIkFtYXpvblNTTU1hbmFnZWRJbnN0YW5jZUNvcmVcIiksXG4gICAgICBdLFxuICAgIH0pO1xuICAgIHByb3BzLmxvZ0dyb3VwLmdyYW50V3JpdGUodGhpcy5pbnZva2VyUm9sZSk7XG5cbiAgICBjb25zdCByZXN0YXRlVGFnID0gcHJvcHMucmVzdGF0ZVRhZyA/PyBSRVNUQVRFX0RPQ0tFUl9ERUZBVUxUX1RBRztcbiAgICBjb25zdCBhZG90VGFnID0gcHJvcHMuYWRvdFRhZyA/PyBBRE9UX0RPQ0tFUl9ERUZBVUxUX1RBRztcbiAgICBjb25zdCByZXN0YXRlSW5pdENvbW1hbmRzID0gZWMyLlVzZXJEYXRhLmZvckxpbnV4KCk7XG4gICAgcmVzdGF0ZUluaXRDb21tYW5kcy5hZGRDb21tYW5kcyhcbiAgICAgIFwic3VkbyB5dW0gdXBkYXRlIC15XCIsXG4gICAgICBcInN1ZG8geXVtIGluc3RhbGwgLXkgZG9ja2VyXCIsXG4gICAgICBcInN1ZG8gc3lzdGVtY3RsIGVuYWJsZSBkb2NrZXIuc2VydmljZVwiLFxuICAgICAgXCJzdWRvIHN5c3RlbWN0bCBzdGFydCBkb2NrZXIuc2VydmljZVwiLFxuICAgICAgW1xuICAgICAgICBcImRvY2tlciBydW4gLS1uYW1lIGFkb3QgLS1yZXN0YXJ0IHVubGVzcy1zdG9wcGVkIC0tZGV0YWNoXCIsXG4gICAgICAgIFwiIC1wIDQzMTc6NDMxNyAtcCA1NTY4MDo1NTY4MCAtcCA4ODg5Ojg4ODhcIixcbiAgICAgICAgYCBwdWJsaWMuZWNyLmF3cy9hd3Mtb2JzZXJ2YWJpbGl0eS9hd3Mtb3RlbC1jb2xsZWN0b3I6JHthZG90VGFnfWAsXG4gICAgICBdLmpvaW4oXCJcIiksXG4gICAgICBbXG4gICAgICAgIFwic3VkbyBkb2NrZXIgcnVuIC0tbmFtZSByZXN0YXRlIC0tcmVzdGFydCB1bmxlc3Mtc3RvcHBlZCAtLWRldGFjaFwiLFxuICAgICAgICBcIiAtLXZvbHVtZSAvdmFyL3Jlc3RhdGU6L3RhcmdldCAtLW5ldHdvcms9aG9zdFwiLFxuICAgICAgICBcIiAtZSBSRVNUQVRFX09CU0VSVkFCSUxJVFlfX0xPR19fRk9STUFUPUpzb24gLWUgUlVTVF9MT0c9aW5mbyxyZXN0YXRlX3dvcmtlcjo6cGFydGl0aW9uPXdhcm5cIixcbiAgICAgICAgXCIgLWUgUkVTVEFURV9PQlNFUlZBQklMSVRZX19UUkFDSU5HX19FTkRQT0lOVD1odHRwOi8vbG9jYWxob3N0OjQzMTdcIixcbiAgICAgICAgYCAtLWxvZy1kcml2ZXI9YXdzbG9ncyAtLWxvZy1vcHQgYXdzbG9ncy1ncm91cD0ke3Byb3BzLmxvZ0dyb3VwLmxvZ0dyb3VwTmFtZX1gLFxuICAgICAgICBgIGdoY3IuaW8vcmVzdGF0ZWRldi9yZXN0YXRlLWRpc3Q6JHtyZXN0YXRlVGFnfWAsXG4gICAgICBdLmpvaW4oXCJcIiksXG4gICAgKTtcblxuICAgIGNvbnN0IHJlc3RhdGVJbnN0YW5jZSA9IG5ldyBlYzIuSW5zdGFuY2UodGhpcywgXCJIb3N0XCIsIHtcbiAgICAgIHZwYzogdGhpcy52cGMsXG4gICAgICBpbnN0YW5jZVR5cGU6IG5ldyBlYzIuSW5zdGFuY2VUeXBlKFwidDRnLm1pY3JvXCIpLFxuICAgICAgbWFjaGluZUltYWdlOiBlYzIuTWFjaGluZUltYWdlLmxhdGVzdEFtYXpvbkxpbnV4MjAyMyh7XG4gICAgICAgIGNwdVR5cGU6IGVjMi5BbWF6b25MaW51eENwdVR5cGUuQVJNXzY0LFxuICAgICAgfSksXG4gICAgICByb2xlOiB0aGlzLmludm9rZXJSb2xlLFxuICAgICAgdXNlckRhdGE6IHJlc3RhdGVJbml0Q29tbWFuZHMsXG4gICAgfSk7XG4gICAgdGhpcy5pbnN0YW5jZSA9IHJlc3RhdGVJbnN0YW5jZTtcblxuICAgIC8vIFdlIHN0YXJ0IHRoZSBBRE9UIGNvbGxlY3RvciByZWdhcmRsZXNzLCBhbmQgb25seSBjb250cm9sIHdoZXRoZXIgdGhleSB3aWxsIGJlIHB1Ymxpc2hlZCB0byBYLVJheSB2aWEgaW5zdGFuY2VcbiAgICAvLyByb2xlIHBlcm1pc3Npb25zLiBUaGlzIHdheSBoaXN0b3JpYyB0cmFjZXMgd2lsbCBiZSBidWZmZXJlZCBvbiB0aGUgaG9zdCwgZXZlbiBpZiB0cmFjaW5nIGlzIGRpc2FibGVkIGluaXRpYWxseS5cbiAgICBpZiAocHJvcHMudHJhY2luZyA9PT0gVHJhY2luZ01vZGUuQVdTX1hSQVkpIHtcbiAgICAgIHJlc3RhdGVJbnN0YW5jZS5yb2xlLmFkZE1hbmFnZWRQb2xpY3koaWFtLk1hbmFnZWRQb2xpY3kuZnJvbUF3c01hbmFnZWRQb2xpY3lOYW1lKFwiQVdTWHJheVdyaXRlT25seUFjY2Vzc1wiKSk7XG4gICAgfVxuXG4gICAgY29uc3QgcmVzdGF0ZUluc3RhbmNlU2VjdXJpdHlHcm91cCA9IG5ldyBlYzIuU2VjdXJpdHlHcm91cCh0aGlzLCBcIlJlc3RhdGVTZWN1cml0eUdyb3VwXCIsIHtcbiAgICAgIHZwYzogdGhpcy52cGMsXG4gICAgICBzZWN1cml0eUdyb3VwTmFtZTogXCJSZXN0YXRlU2VjdXJpdHlHcm91cFwiLFxuICAgICAgZGVzY3JpcHRpb246IFwiQWxsb3cgaW5ib3VuZCB0cmFmZmljIHRvIFJlc3RhdGVcIixcbiAgICB9KTtcblxuICAgIGNvbnN0IGluZ3Jlc3NMb2FkQmFsYW5jZXIgPSBuZXcgZWxiX3YyLkFwcGxpY2F0aW9uTG9hZEJhbGFuY2VyKHRoaXMsIFwiUmVzdGF0ZUFsYlwiLCB7XG4gICAgICB2cGM6IHRoaXMudnBjLFxuICAgICAgaW50ZXJuZXRGYWNpbmc6IHRydWUsXG4gICAgfSk7XG4gICAgY29uc3QgdGFyZ2V0R3JvdXAgPSBuZXcgZWxiX3YyLkFwcGxpY2F0aW9uVGFyZ2V0R3JvdXAodGhpcywgXCJUYXJnZXRHcm91cFwiLCB7XG4gICAgICB2cGM6IHRoaXMudnBjLFxuICAgICAgcG9ydDogUkVTVEFURV9JTkdSRVNTX1BPUlQsXG4gICAgICB0YXJnZXRzOiBbbmV3IEluc3RhbmNlVGFyZ2V0KHJlc3RhdGVJbnN0YW5jZSldLFxuICAgICAgaGVhbHRoQ2hlY2s6IHtcbiAgICAgICAgcGF0aDogXCIvZ3JwYy5oZWFsdGgudjEuSGVhbHRoL0NoZWNrXCIsXG4gICAgICAgIHByb3RvY29sOiBlbGJfdjIuUHJvdG9jb2wuSFRUUCxcbiAgICAgIH0sXG4gICAgfSk7XG4gICAgLy8gVE9ETzogTWFrZSB0aGlzIEhUVFBTIChodHRwczovL2dpdGh1Yi5jb20vcmVzdGF0ZWRldi9yZXN0YXRlLWNkay1zdXBwb3J0L2lzc3Vlcy8yKVxuICAgIGluZ3Jlc3NMb2FkQmFsYW5jZXIuYWRkTGlzdGVuZXIoXCJMaXN0ZW5lclwiLCB7XG4gICAgICBwb3J0OiA4MCxcbiAgICAgIGRlZmF1bHRUYXJnZXRHcm91cHM6IFt0YXJnZXRHcm91cF0sXG4gICAgfSk7XG5cbiAgICBjb25zdCBhbGJTZWN1cml0eUdyb3VwID0gbmV3IGVjMi5TZWN1cml0eUdyb3VwKHRoaXMsIFwiQWxiU2VjdXJpdHlHcm91cFwiLCB7XG4gICAgICB2cGM6IHRoaXMudnBjLFxuICAgICAgZGVzY3JpcHRpb246IFwiQUxCIHNlY3VyaXR5IGdyb3VwXCIsXG4gICAgICBhbGxvd0FsbE91dGJvdW5kOiBmYWxzZSxcbiAgICB9KTtcbiAgICBhbGJTZWN1cml0eUdyb3VwLmFkZEVncmVzc1J1bGUoZWMyLlBlZXIuYW55SXB2NCgpLCBlYzIuUG9ydC50Y3AoUkVTVEFURV9JTkdSRVNTX1BPUlQpLCBcIkFsbG93IG91dGJvdW5kIEhUVFAgdHJhZmZpYyB0byBSZXN0YXRlIGluZ3Jlc3NcIik7XG4gICAgaW5ncmVzc0xvYWRCYWxhbmNlci5hZGRTZWN1cml0eUdyb3VwKGFsYlNlY3VyaXR5R3JvdXApO1xuXG4gICAgcmVzdGF0ZUluc3RhbmNlU2VjdXJpdHlHcm91cC5hZGRJbmdyZXNzUnVsZShhbGJTZWN1cml0eUdyb3VwLCBlYzIuUG9ydC50Y3AoUkVTVEFURV9JTkdSRVNTX1BPUlQpLCBcIkFsbG93IHRyYWZmaWMgZnJvbSBBTEIgdG8gUmVzdGF0ZSBpbmdyZXNzXCIpO1xuXG4gICAgLy8gVGhlc2UgcnVsZXMgYWxsb3cgdGhlIHNlcnZpY2UgcmVnaXN0cmF0aW9uIGNvbXBvbmVudCB0byB0cmlnZ2VyIHNlcnZpY2UgZGlzY292ZXJ5IGFzIG5lZWRlZDsgdGhlIHJlcXVlc3RzXG4gICAgLy8gb3JpZ2luYXRlIGZyb20gYSBWUEMtYm91bmQgTGFtYmRhIGZ1bmN0aW9uIHRoYXQgYmFja3MgdGhlIGN1c3RvbSByZXNvdXJjZS5cbiAgICB0aGlzLnZwYy5wcml2YXRlU3VibmV0cy5mb3JFYWNoKChzdWJuZXQpID0+IHtcbiAgICAgIHJlc3RhdGVJbnN0YW5jZVNlY3VyaXR5R3JvdXAuYWRkSW5ncmVzc1J1bGUoZWMyLlBlZXIuaXB2NChzdWJuZXQuaXB2NENpZHJCbG9jayksIGVjMi5Qb3J0LnRjcChSRVNUQVRFX01FVEFfUE9SVCksIFwiQWxsb3cgdHJhZmZpYyBmcm9tIHRoZSBWUEMgdG8gUmVzdGF0ZSBtZXRhXCIpO1xuICAgIH0pO1xuICAgIHRoaXMudnBjLnByaXZhdGVTdWJuZXRzLmZvckVhY2goKHN1Ym5ldCkgPT4ge1xuICAgICAgcmVzdGF0ZUluc3RhbmNlU2VjdXJpdHlHcm91cC5hZGRJbmdyZXNzUnVsZShlYzIuUGVlci5pcHY0KHN1Ym5ldC5pcHY0Q2lkckJsb2NrKSwgZWMyLlBvcnQudGNwKFJFU1RBVEVfSU5HUkVTU19QT1JUKSwgXCJBbGxvdyB0cmFmZmljIGZyb20gdGhlIFZQQyB0byBSZXN0YXRlIGluZ3Jlc3NcIik7XG4gICAgfSk7XG4gICAgcmVzdGF0ZUluc3RhbmNlLmFkZFNlY3VyaXR5R3JvdXAocmVzdGF0ZUluc3RhbmNlU2VjdXJpdHlHcm91cCk7XG5cbiAgICBjb25zdCByZWdpc3RyYXRpb25Qcm92aWRlciA9IHRoaXMuY3JlYXRlUmVnaXN0cmF0aW9uUHJvdmlkZXIoKTtcbiAgICB0aGlzLnJlZ2lzdHJhdGlvblByb3ZpZGVyID0gcmVnaXN0cmF0aW9uUHJvdmlkZXI7XG4gICAgdGhpcy5yZWdpc3RyYXRpb25Qcm92aWRlclRva2VuID0gbmV3IGNkay5DZm5PdXRwdXQodGhpcywgXCJSZWdpc3RyYXRpb25Qcm92aWRlclRva2VuXCIsIHtcbiAgICAgIGRlc2NyaXB0aW9uOiBcIkN1c3RvbSByZXNvdXJjZSBwcm92aWRlciBzZXJ2aWNlIHRva2VuLCBuZWVkZWQgYnkgdGhlIFJlc3RhdGUgc2VydmljZSByZWdpc3RyeSBjb21wb25lbnQgdG8gdHJpZ2dlciBkaXNjb3ZlcnlcIixcbiAgICAgIGV4cG9ydE5hbWU6IFtwcm9wcy5wcmVmaXgsIFwiUmVnaXN0cmF0aW9uUHJvdmlkZXJUb2tlblwiXS5qb2luKFwiLVwiKSxcbiAgICAgIHZhbHVlOiByZWdpc3RyYXRpb25Qcm92aWRlci5zZXJ2aWNlVG9rZW4sXG4gICAgfSk7XG5cbiAgICB0aGlzLnB1YmxpY0luZ3Jlc3NFbmRwb2ludCA9IGBodHRwOi8vJHtpbmdyZXNzTG9hZEJhbGFuY2VyLmxvYWRCYWxhbmNlckRuc05hbWV9YDtcbiAgICB0aGlzLnByaXZhdGVJbmdyZXNzRW5kcG9pbnQgPSBgaHR0cDovLyR7dGhpcy5pbnN0YW5jZS5pbnN0YW5jZVByaXZhdGVEbnNOYW1lfToke1JFU1RBVEVfSU5HUkVTU19QT1JUfWA7XG4gICAgdGhpcy5tZXRhRW5kcG9pbnQgPSBgaHR0cDovLyR7dGhpcy5pbnN0YW5jZS5pbnN0YW5jZVByaXZhdGVEbnNOYW1lfToke1JFU1RBVEVfTUVUQV9QT1JUfWA7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhIGN1c3RvbSByZXNvdXJjZSBwcm92aWRlciB0byBmYWNpbGl0YXRlIHNlcnZpY2UgZGlzY292ZXJ5LiBOb3RlIHRoYXQgdGhlIGN1c3RvbSByZXNvdXJjZSBldmVudCBoYW5kbGVyXG4gICAqIG11c3QgYmUgYWJsZSB0byByZWFjaCB0aGUgUmVzdGF0ZSBpbnN0YW5jZSdzIG1ldGEgZW5kcG9pbnQgLSB3aGljaCBpcyB3aHkgaXQgaXMgZGVwbG95ZWQgd2l0aGluIHRoZSBzYW1lIFZQQy5cbiAgICovXG4gIHByaXZhdGUgY3JlYXRlUmVnaXN0cmF0aW9uUHJvdmlkZXIoKSB7XG4gICAgY29uc3QgcmVnaXN0cmF0aW9uSGFuZGxlciA9IG5ldyBsYW1iZGFfbm9kZS5Ob2RlanNGdW5jdGlvbih0aGlzLCBcIlJlZ2lzdHJhdGlvbkhhbmRsZXJcIiwge1xuICAgICAgZGVzY3JpcHRpb246IFwiUmVzdGF0ZSBjdXN0b20gcmVnaXN0cmF0aW9uIGhhbmRsZXJcIixcbiAgICAgIGVudHJ5OiBwYXRoLmpvaW4oX19kaXJuYW1lLCBcInJlZ2lzdGVyLXNlcnZpY2UtaGFuZGxlci9pbmRleC5qc1wiKSxcbiAgICAgIGFyY2hpdGVjdHVyZTogbGFtYmRhLkFyY2hpdGVjdHVyZS5BUk1fNjQsXG4gICAgICBydW50aW1lOiBsYW1iZGEuUnVudGltZS5OT0RFSlNfTEFURVNULFxuICAgICAgbWVtb3J5U2l6ZTogMTI4LFxuICAgICAgdGltZW91dDogY2RrLkR1cmF0aW9uLnNlY29uZHMoNjApLFxuICAgICAgZW52aXJvbm1lbnQ6IHtcbiAgICAgICAgTk9ERV9PUFRJT05TOiBcIi0tZW5hYmxlLXNvdXJjZS1tYXBzXCIsXG4gICAgICB9LFxuICAgICAgdnBjOiB0aGlzLnZwYyxcbiAgICAgIHZwY1N1Ym5ldHM6IHtcbiAgICAgICAgc3VibmV0czogdGhpcy52cGMucHJpdmF0ZVN1Ym5ldHMsXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgcmV0dXJuIG5ldyBjci5Qcm92aWRlcih0aGlzLCBcIlJlZ2lzdHJhdGlvblByb3ZpZGVyXCIsIHtcbiAgICAgIG9uRXZlbnRIYW5kbGVyOiByZWdpc3RyYXRpb25IYW5kbGVyLFxuICAgIH0pO1xuICB9XG59Il19
|
package/package.json
CHANGED
package/test/.keep
ADDED
|
File without changes
|