truemark-cdk-lib 0.0.36 → 0.0.37
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 +12 -4
- package/aws-lambda/lib/function-alarms.d.ts +4 -0
- package/aws-lambda/lib/function-alarms.js +2 -1
- package/aws-lambda/lib/index.d.ts +2 -2
- package/aws-lambda/lib/index.js +3 -3
- package/aws-lambda/lib/{bundled-function.d.ts → standard-function.d.ts} +3 -3
- package/aws-lambda/lib/standard-function.js +52 -0
- package/aws-lambda/lib/{bundled-python-function.d.ts → standard-python-function.d.ts} +3 -3
- package/aws-lambda/lib/standard-python-function.js +51 -0
- package/aws-sqs/lib/{observed-queue.d.ts → extended-queue.d.ts} +3 -3
- package/aws-sqs/lib/{observed-queue.js → extended-queue.js} +5 -5
- package/aws-sqs/lib/index.d.ts +1 -1
- package/aws-sqs/lib/index.js +2 -2
- package/aws-sqs/lib/queue-alarms.d.ts +13 -66
- package/aws-sqs/lib/queue-alarms.js +36 -125
- package/aws-sqs/lib/standard-queue.d.ts +3 -3
- package/aws-sqs/lib/standard-queue.js +12 -11
- package/package.json +2 -2
- package/test/aws-lambda/{bundled-python-function.test.d.ts → standard-python-function.test.d.ts} +0 -0
- package/test/aws-lambda/standard-python-function.test.js +17 -0
- package/test/aws-sqs/standard-queue.test.js +6 -6
- package/aws-lambda/lib/bundled-function.js +0 -52
- package/aws-lambda/lib/bundled-python-function.js +0 -51
- package/test/aws-lambda/bundled-python-function.test.js +0 -17
package/README.md
CHANGED
|
@@ -4,10 +4,18 @@ This library provides common constructs and functionality to ease CDK developmen
|
|
|
4
4
|
|
|
5
5
|
The main objectives of this project is to
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
7
|
+
- Provide extended constructs that add additional functionality to existing CDK constructs
|
|
8
|
+
- Provide standard constructs that are simple to use and adhere to best practices
|
|
9
|
+
- Provide constructs for commonly used patterns
|
|
10
|
+
- Reduce the amount of boilerplate coding required to work with CDK
|
|
11
|
+
|
|
12
|
+
## Conventions
|
|
13
|
+
|
|
14
|
+
- **Standard** Constructs are simplified constructs meant for general use. They follow general best practices and have been given sane optimized defaults.
|
|
15
|
+
- **Extended** Constructs are extensions of Constructs in the standard CDK library which add functionality such as logging and monitoring.
|
|
16
|
+
- Other Constructs found in this library are crafted CDK constructs for specific common use cases which follow CDK's principle of composition over inheritance.
|
|
17
|
+
|
|
18
|
+
In general, you should use **Standard** over **Extended** constructs unless they do not fit your use case.
|
|
11
19
|
|
|
12
20
|
## Versioning
|
|
13
21
|
|
|
@@ -122,6 +122,10 @@ export interface FunctionAlarmsOptions extends AlarmsOptions<FunctionAlarmsCateg
|
|
|
122
122
|
* @default true
|
|
123
123
|
*/
|
|
124
124
|
readonly createAlarms?: boolean;
|
|
125
|
+
/**
|
|
126
|
+
* Name to use for alarm, default is construct ID.
|
|
127
|
+
*/
|
|
128
|
+
readonly alarmFriendlyName?: string;
|
|
125
129
|
/**
|
|
126
130
|
* Generate dashboard charts for Lambda insights metrics.
|
|
127
131
|
*
|
|
@@ -20,6 +20,7 @@ class FunctionAlarms extends aws_monitoring_1.AlarmsBase {
|
|
|
20
20
|
addFunctionMonitoring() {
|
|
21
21
|
var _a, _b, _c;
|
|
22
22
|
this.monitoringFacade.monitorLambdaFunction({
|
|
23
|
+
alarmFriendlyName: this.props.alarmNamePrefix,
|
|
23
24
|
lambdaFunction: this.props.function,
|
|
24
25
|
addToAlarmDashboard: (_a = this.props.addToAlarmDashboard) !== null && _a !== void 0 ? _a : true,
|
|
25
26
|
addToDetailDashboard: (_b = this.props.addToDetailDashboard) !== null && _b !== void 0 ? _b : true,
|
|
@@ -113,4 +114,4 @@ FunctionAlarms.BRACKET_WARNING_LOG_METRIC_PATTERN = '"[WARNING]"';
|
|
|
113
114
|
*/
|
|
114
115
|
FunctionAlarms.DEFAULT_LOG_INSIGHTS_PATTERN = "ERROR|WARNING";
|
|
115
116
|
FunctionAlarms.BRACKET_LOG_INSIGHTS_PATTERN = '\\\[ERROR\\\]|\\\[WARNING\\\]';
|
|
116
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVuY3Rpb24tYWxhcm1zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiZnVuY3Rpb24tYWxhcm1zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQVlBLHlEQUFxRztBQUlyRyx5REFBb0Q7QUEwS3BEOztHQUVHO0FBQ0gsTUFBYSxjQUFlLFNBQVEsMkJBQThEO0lBZ0doRyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQTBCOztRQUNsRSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUN4QixVQUFJLEtBQUssQ0FBQyxZQUFZLG1DQUFJLElBQUksRUFBRTtZQUM5QixJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztZQUM3QixJQUFJLENBQUMsMkJBQTJCLEVBQUUsQ0FBQztZQUNuQyxJQUFJLENBQUMsV0FBVyxDQUFDLDhCQUFhLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQzVDLElBQUksQ0FBQyxXQUFXLENBQUMsOEJBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQztTQUN6QztJQUNILENBQUM7SUFwRk8scUJBQXFCOztRQUMzQixJQUFJLENBQUMsZ0JBQWdCLENBQUMscUJBQXFCLENBQUM7WUFDMUMsY0FBYyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUTtZQUNuQyxtQkFBbUIsUUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLG1CQUFtQixtQ0FBRSxJQUFJO1lBQ3pELG9CQUFvQixRQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsb0JBQW9CLG1DQUFFLElBQUk7WUFDM0QscUJBQXFCLFFBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxxQkFBcUIsbUNBQUUsSUFBSTtZQUM3RCxrQkFBa0IsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFtQixZQUFZLEVBQUUsWUFBWSxDQUFDO1lBQy9FLGtCQUFrQixFQUFFLElBQUksQ0FBQyxRQUFRLENBQW1CLFlBQVksRUFBRSxZQUFZLENBQUM7WUFDL0Usa0JB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QUMsUUFBUSxDQUFDLENBQUM7UUFDekMsTUFBTSxRQUFRLEdBQUcsUUFBUSxLQUFLLDhCQUFhLENBQUMsUUFBUSxDQUFDLENBQUMsT0FBQyxJQUFJLENBQUMsZ0JBQWdCLDBDQUFFLEtBQUssQ0FBQyxDQUFDLE9BQUMsSUFBSSxDQUFDLGVBQWUsMENBQUUsS0FBSyxDQUFDO1FBQ2xILElBQUksUUFBUSxLQUFLLFNBQVMsRUFBRTtZQUMxQixNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1NBQ3ZCO1FBQ0QsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQzs7QUFqSEgsd0NBa0hDO0FBaEhDOztHQUVHO0FBQ2Esa0RBQW1DLEdBQUcsT0FBTyxDQUFDO0FBQzlDLCtDQUFnQyxHQUFHLFdBQVcsQ0FBQztBQUUvRDs7R0FFRztBQUNhLGlEQUFrQyxHQUFHLFNBQVMsQ0FBQztBQUMvQyxpREFBa0MsR0FBRyxhQUFhLENBQUM7QUFFbkU7O0dBRUc7QUFDYSwyQ0FBNEIsR0FBRyxlQUFlLENBQUM7QUFDL0MsMkNBQTRCLEdBQUcsK0JBQStCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0R1cmF0aW9ufSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7XG4gIER1cmF0aW9uVGhyZXNob2xkLFxuICBFcnJvckNvdW50VGhyZXNob2xkLFxuICBFcnJvclJhdGVUaHJlc2hvbGQsXG4gIEhpZ2hUcHNUaHJlc2hvbGQsXG4gIExhdGVuY3lUaHJlc2hvbGQsXG4gIExvd1Rwc1RocmVzaG9sZCxcbiAgTWF4QWdlVGhyZXNob2xkLFxuICBSdW5uaW5nVGFza0NvdW50VGhyZXNob2xkLFxuICBVc2FnZVRocmVzaG9sZFxufSBmcm9tIFwiY2RrLW1vbml0b3JpbmctY29uc3RydWN0c1wiO1xuaW1wb3J0IHtBbGFybUNhdGVnb3J5LCBBbGFybXNCYXNlLCBBbGFybXNDYXRlZ29yeU9wdGlvbnMsIEFsYXJtc09wdGlvbnN9IGZyb20gXCIuLi8uLi9hd3MtbW9uaXRvcmluZ1wiO1xuaW1wb3J0IHtJRnVuY3Rpb259IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtbGFtYmRhXCI7XG5pbXBvcnQge0lMb2dHcm91cH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1sb2dzXCI7XG5pbXBvcnQge0NvbnN0cnVjdH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7TG9nTWV0cmljQWxhcm19IGZyb20gXCIuLi8uLi9hd3MtY2xvdWR3YXRjaFwiO1xuaW1wb3J0IHtBbGFybX0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1jbG91ZHdhdGNoXCI7XG5cbi8qKlxuICogQ2F0ZWdvcnkgb3B0aW9ucyBmb3IgQ2xvdWRXYXRjaCBhbGFybXMgZm9yIExhbWJkYSBGdW5jdGlvbnMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRnVuY3Rpb25BbGFybXNDYXRlZ29yeU9wdGlvbnMgZXh0ZW5kcyBBbGFybXNDYXRlZ29yeU9wdGlvbnMge1xuXG4gIC8qKlxuICAgKiBNYXhpbXVtIDUwdGggcGVyY2VudGlsZSBsYXRlbmN5XG4gICAqL1xuICByZWFkb25seSBwNTBMYXRlbmN5PzogRHVyYXRpb247XG5cbiAgLyoqXG4gICAqIE1heGltdW0gOTB0aCBwZXJjZW50aWxlIGxhdGVuY3lcbiAgICovXG4gIHJlYWRvbmx5IHA5MExhdGVuY3k/OiBEdXJhdGlvbjtcblxuICAvKipcbiAgICogTWF4aW11bSA5OXRoIHBlcmNlbnRpbGUgbGF0ZW5jeVxuICAgKi9cbiAgcmVhZG9ubHkgcDk5TGF0ZW5jeT86IER1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBNYXhpbXVtIG51bWJlciBvZiBmYXVsdHNcbiAgICpcbiAgICogQGRlZmF1bHQgMFxuICAgKi9cbiAgcmVhZG9ubHkgbWF4RmF1bHRzPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBBdmVyYWdlIG51bWJlciBvZiBmYXVsdHNcbiAgICovXG4gIHJlYWRvbmx5IGF2Z0ZhdWx0cz86IG51bWJlcjtcblxuICAvKipcbiAgICogTWluaW11bSB0cmFuc2FjdGlvbnNcbiAgICovXG4gIHJlYWRvbmx5IG1pblRwcz86IG51bWJlcjtcblxuICAvKipcbiAgICogTWF4aW11bSB0cmFuc2FjdGlvbnNcbiAgICovXG4gIHJlYWRvbmx5IG1heFRwcz86IG51bWJlcjtcblxuICAvKipcbiAgICogTWF4aW11bSBudW1iZXIgb2YgdGhyb3R0bGVzXG4gICAqXG4gICAqIEBkZWZhdWx0IDBcbiAgICovXG4gIHJlYWRvbmx5IG1heFRocm90dGxlcz86IG51bWJlcjtcblxuICAvKipcbiAgICogQXZlcmFnZSBudW1iZXIgb2YgdGhyb3R0bGVzXG4gICAqL1xuICByZWFkb25seSBhdmdUaHJvdHRsZXM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIE1heGltdW0gY29uY3VycmVudCBleGVjdXRpb25zXG4gICAqL1xuICByZWFkb25seSBtYXhDb25jdXJyZW50RXhlY3V0aW9ucz86IG51bWJlcjtcblxuICAvKipcbiAgICogQW1vdW50IG9mIHRpbWUgZGF0YSB3YWl0cyBiZWZvcmUgYmVpbmcgcHJvY2Vzc2VkIGJ5IHRoZSBmdW5jdGlvbi5cbiAgICogU2VlIGh0dHBzOi8vYXdzLmFtYXpvbi5jb20vcHJlbWl1bXN1cHBvcnQva25vd2xlZGdlLWNlbnRlci9sYW1iZGEtaXRlcmF0b3ItYWdlL1xuICAgKi9cbiAgcmVhZG9ubHkgbWF4SXRlcmF0b3JBZ2U/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIE1heGltdW0gYW1vdW50IG9mIENQVSB0aW1lXG4gICAqL1xuICByZWFkb25seSBtYXhDcHVUaW1lPzogRHVyYXRpb247XG5cbiAgLyoqXG4gICAqIDkwdGggcGVyY2VudGlsZSBDUFUgdGltZVxuICAgKi9cbiAgcmVhZG9ubHkgcDkwQ3B1VGltZT86IER1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBBdmVyYWdlIENQVSB0aW1lXG4gICAqL1xuICByZWFkb25seSBhdmdDcHVUaW1lPzogRHVyYXRpb247XG5cbiAgLyoqXG4gICAqIE1heGltdW0gYW1vdW50IG9mIG1lbW9yeVxuICAgKi9cbiAgcmVhZG9ubHkgbWF4TWVtb3J5PzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiA5MHRoIHBlcmNlbnRpbGUgbWVtb3J5XG4gICAqL1xuICByZWFkb25seSBwOTBNZW1vcnk/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEF2ZXJhZ2UgbWVtb3J5XG4gICAqL1xuICByZWFkb25seSBhdmdNZW1vcnk/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIExvZyBwYXR0ZXJuIHRvIG1hdGNoIGZvciBtZXRyaWNzLlxuICAgKlxuICAgKiBAZGVmYXVsdCAnXFxcXFxcW0VSUk9SXFxcXFxcXSdcbiAgICovXG4gIHJlYWRvbmx5IG1ldHJpY0xvZ1BhdHRlcm4/OiBzdHJpbmdcblxuICAvKipcbiAgICogTWF4aW11bSBudW1iZXIgb2YgbG9nIGV2ZW50cyBtYXRjaGluZyB0aGUgbWV0cmljTG9nUGF0dGVybi5cbiAgICpcbiAgICogQGRlZmF1bHQgMCBmb3IgQ3JpdGljYWwgQWxhcm1cbiAgICovXG4gIHJlYWRvbmx5IG1heExvZ0NvdW50PzogbnVtYmVyXG5cbiAgLyoqXG4gICAqIE51bWJlciBvZiBldmFsdWF0aW9uIHBlcmlvZHMgb3ZlciB3aGljaCBkYXRhIGlzIGNvbXBhcmVkIGZvciBsb2cgZXZlbnRzLlxuICAgKlxuICAgKiBAZGVmYXVsdCAyXG4gICAqL1xuICByZWFkb25seSBsb2dFdmFsdWF0aW9uUGVyaW9kcz86IG51bWJlclxuXG4gIC8qKlxuICAgKiBOdW1iZXIgb2YgZGF0YSBwb2ludHMgdGhhdCBtdXN0IGJlIGJyZWFjaGluZyB0byB0cmlnZ2VyIHRoZSBhbGFybSBmb3IgbG9nIGV2ZW50cy5cbiAgICpcbiAgICogQGRlZmF1bHQgMVxuICAgKi9cbiAgcmVhZG9ubHkgbG9nRGF0YVBvaW50c1RvQWxhcm0/OiBudW1iZXJcblxuICAvKipcbiAgICogTG9nIHBhdHRlcm4gdG8gbWF0Y2ggZm9yIHRoZSBkYXNoYm9hcmRcbiAgICpcbiAgICogQGRlZmF1bHQgJ1wiW0VSUk9SXVwiJ1xuICAgKi9cbiAgcmVhZG9ubHkgZGFzaGJvYXJkTG9nUGF0dGVybj86IHN0cmluZ1xufVxuXG4vKipcbiAqIE9wdGlvbnMgZm9yIENsb3VkV2F0Y2ggYWxhcm1zIGZvciBMYW1iZGEgRnVuY3Rpb25zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRnVuY3Rpb25BbGFybXNPcHRpb25zIGV4dGVuZHMgQWxhcm1zT3B0aW9uczxGdW5jdGlvbkFsYXJtc0NhdGVnb3J5T3B0aW9ucz4ge1xuXG4gIC8qKlxuICAgKiBGbGFnIHRvIGNyZWF0ZSBhbGFybXMuXG4gICAqXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZUFsYXJtcz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEdlbmVyYXRlIGRhc2hib2FyZCBjaGFydHMgZm9yIExhbWJkYSBpbnNpZ2h0cyBtZXRyaWNzLlxuICAgKlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBsYW1iZGFJbnNpZ2h0c0VuYWJsZWQ/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIEZ1bmN0aW9uQWxhcm1zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRnVuY3Rpb25BbGFybXNQcm9wcyBleHRlbmRzIEZ1bmN0aW9uQWxhcm1zT3B0aW9ucyB7XG5cbiAgLyoqXG4gICAqIFRoZSBmdW5jdGlvbiB0byBvYnNlcnZlLlxuICAgKi9cbiAgcmVhZG9ubHkgZnVuY3Rpb246IElGdW5jdGlvblxuXG4gIC8qKlxuICAgKiBUaGUgbG9nIGdyb3VwIGF0dGFjaGVkIHRvIHRoZSBmdW5jdGlvbiB0byBiZSBvYnNlcnZlZC5cbiAgICovXG4gIHJlYWRvbmx5IGxvZ0dyb3VwOiBJTG9nR3JvdXBcbn1cblxuLyoqXG4gKiBDcmVhdGVzIENsb3VkV2F0Y2ggYWxhcm1zIGZvciBhIExhbWJkYSBGdW5jdGlvbi5cbiAqL1xuZXhwb3J0IGNsYXNzIEZ1bmN0aW9uQWxhcm1zIGV4dGVuZHMgQWxhcm1zQmFzZTxGdW5jdGlvbkFsYXJtc0NhdGVnb3J5T3B0aW9ucywgRnVuY3Rpb25BbGFybXNQcm9wcz4ge1xuXG4gIC8qKlxuICAgKiBEZWZhdWx0IHBhdHRlcm4gdXNlZCBmb3IgdGhlIGNyaXRpY2FsIGxvZyBtZXRyaWMuXG4gICAqL1xuICBzdGF0aWMgcmVhZG9ubHkgREVGQVVMVF9DUklUSUNBTF9MT0dfTUVUUklDX1BBVFRFUk4gPSBcIkVSUk9SXCI7XG4gIHN0YXRpYyByZWFkb25seSBCUkFDS0VUX0VSUk9SX0xPR19NRVRSSUNfUEFUVEVSTiA9ICdcIltFUlJPUl1cIic7XG5cbiAgLyoqXG4gICAqIERlZmF1bHQgcGF0dGVybiB1c2VkIGZvciB0aGUgd2FybmluZyBsb2cgbWV0cmljLlxuICAgKi9cbiAgc3RhdGljIHJlYWRvbmx5IERFRkFVTFRfV0FSTklOR19MT0dfTUVUUklDX1BBVFRFUk4gPSBcIldBUk5JTkdcIjtcbiAgc3RhdGljIHJlYWRvbmx5IEJSQUNLRVRfV0FSTklOR19MT0dfTUVUUklDX1BBVFRFUk4gPSAnXCJbV0FSTklOR11cIic7XG5cbiAgLyoqXG4gICAqIERlZmF1bHQgcGF0dGVybiB1c2VkIHRvIHNob3cgbG9ncyBvbiB0aGUgQ2xvdWRXYXRjaCBkYXNoYm9hcmQuXG4gICAqL1xuICBzdGF0aWMgcmVhZG9ubHkgREVGQVVMVF9MT0dfSU5TSUdIVFNfUEFUVEVSTiA9IFwiRVJST1J8V0FSTklOR1wiO1xuICBzdGF0aWMgcmVhZG9ubHkgQlJBQ0tFVF9MT0dfSU5TSUdIVFNfUEFUVEVSTiA9ICdcXFxcXFxbRVJST1JcXFxcXFxdfFxcXFxcXFtXQVJOSU5HXFxcXFxcXSc7XG5cbiAgcHJpdmF0ZSBhZGRGdW5jdGlvbk1vbml0b3JpbmcoKSB7XG4gICAgdGhpcy5tb25pdG9yaW5nRmFjYWRlLm1vbml0b3JMYW1iZGFGdW5jdGlvbih7XG4gICAgICBsYW1iZGFGdW5jdGlvbjogdGhpcy5wcm9wcy5mdW5jdGlvbixcbiAgICAgIGFkZFRvQWxhcm1EYXNoYm9hcmQ6IHRoaXMucHJvcHMuYWRkVG9BbGFybURhc2hib2FyZD8/dHJ1ZSxcbiAgICAgIGFkZFRvRGV0YWlsRGFzaGJvYXJkOiB0aGlzLnByb3BzLmFkZFRvRGV0YWlsRGFzaGJvYXJkPz90cnVlLFxuICAgICAgYWRkVG9TdW1tYXJ5RGFzaGJvYXJkOiB0aGlzLnByb3BzLmFkZFRvU3VtbWFyeURhc2hib2FyZD8/dHJ1ZSxcbiAgICAgIGFkZExhdGVuY3lQNTBBbGFybTogdGhpcy50b1JlY29yZDxMYXRlbmN5VGhyZXNob2xkPihcInA1MExhdGVuY3lcIiwgXCJtYXhMYXRlbmN5XCIpLFxuICAgICAgYWRkTGF0ZW5jeVA5MEFsYXJtOiB0aGlzLnRvUmVjb3JkPExhdGVuY3lUaHJlc2hvbGQ+KFwicDkwTGF0ZW5jeVwiLCBcIm1heExhdGVuY3lcIiksXG4gICAgICBhZGRMYXRlbmN5UDk5QWxhcm06IHRoaXMudG9SZWNvcmQ8TGF0ZW5jeVRocmVzaG9sZD4oXCJwOTlMYXRlbmN5XCIsIFwibWF4TGF0ZW5jeVwiKSxcbiAgICAgIGFkZEZhdWx0Q291bnRBbGFybTogdGhpcy50b1JlY29yZDxFcnJvckNvdW50VGhyZXNob2xkPihcIm1heEZhdWx0c1wiLCBcIm1heEVycm9yQ291bnRcIiwgMCksXG4gICAgICBhZGRGYXVsdFJhdGVBbGFybTogdGhpcy50b1JlY29yZDxFcnJvclJhdGVUaHJlc2hvbGQ+KFwiYXZnRmF1bHRzXCIsIFwibWF4RXJyb3JSYXRlXCIpLFxuICAgICAgYWRkTG93VHBzQWxhcm06IHRoaXMudG9SZWNvcmQ8TG93VHBzVGhyZXNob2xkPihcIm1pblRwc1wiLCBcIm1pblRwc1wiKSxcbiAgICAgIGFkZEhpZ2hUcHNBbGFybTogdGhpcy50b1JlY29yZDxIaWdoVHBzVGhyZXNob2xkPihcIm1heFRwc1wiLCBcIm1heFRwc1wiKSxcbiAgICAgIGFkZFRocm90dGxlc0NvdW50QWxhcm06IHRoaXMudG9SZWNvcmQ8RXJyb3JDb3VudFRocmVzaG9sZD4oXCJtYXhUaHJvdHRsZXNcIiwgXCJtYXhFcnJvckNvdW50XCIsIDApLFxuICAgICAgYWRkVGhyb3R0bGVzUmF0ZUFsYXJtOiB0aGlzLnRvUmVjb3JkPEVycm9yUmF0ZVRocmVzaG9sZD4oXCJhdmdUaHJvdHRsZXNcIiwgXCJtYXhFcnJvclJhdGVcIiksXG4gICAgICBhZGRDb25jdXJyZW50RXhlY3V0aW9uc0NvdW50QWxhcm06IHRoaXMudG9SZWNvcmQ8UnVubmluZ1Rhc2tDb3VudFRocmVzaG9sZD4oXCJtYXhDb25jdXJyZW50RXhlY3V0aW9uc1wiLCBcIm1heFJ1bm5pbmdUYXNrc1wiKSxcbiAgICAgIGFkZE1heEl0ZXJhdG9yQWdlQWxhcm06IHRoaXMudG9SZWNvcmQ8TWF4QWdlVGhyZXNob2xkPihcIm1heEl0ZXJhdG9yQWdlXCIsIFwibWF4QWdlSW5NaWxsaXNcIiksXG4gICAgICBhZGRFbmhhbmNlZE1vbml0b3JpbmdNYXhDcHVUb3RhbFRpbWVBbGFybTogdGhpcy50b1JlY29yZDxEdXJhdGlvblRocmVzaG9sZD4oXCJtYXhDcHVUaW1lXCIsIFwibWF4RHVyYXRpb25cIiksXG4gICAgICBhZGRFbmhhbmNlZE1vbml0b3JpbmdQOTBDcHVUb3RhbFRpbWVBbGFybTogdGhpcy50b1JlY29yZDxEdXJhdGlvblRocmVzaG9sZD4oXCJwOTBDcHVUaW1lXCIsIFwibWF4RHVyYXRpb25cIiksXG4gICAgICBhZGRFbmhhbmNlZE1vbml0b3JpbmdBdmdDcHVUb3RhbFRpbWVBbGFybTogdGhpcy50b1JlY29yZDxEdXJhdGlvblRocmVzaG9sZD4oXCJhdmdDcHVUaW1lXCIsIFwibWF4RHVyYXRpb25cIiksXG4gICAgICBhZGRFbmhhbmNlZE1vbml0b3JpbmdNYXhNZW1vcnlVdGlsaXphdGlvbkFsYXJtOiB0aGlzLnRvUmVjb3JkPFVzYWdlVGhyZXNob2xkPihcIm1heE1lbW9yeVwiLCBcIm1heFVzYWdlUGVyY2VudFwiKSxcbiAgICAgIGFkZEVuaGFuY2VkTW9uaXRvcmluZ1A5ME1lbW9yeVV0aWxpemF0aW9uQWxhcm06IHRoaXMudG9SZWNvcmQ8VXNhZ2VUaHJlc2hvbGQ+KFwicDkwTWVtb3J5XCIsIFwibWF4VXNhZ2VQZXJjZW50XCIpLFxuICAgICAgYWRkRW5oYW5jZWRNb25pdG9yaW5nQXZnTWVtb3J5VXRpbGl6YXRpb25BbGFybTogdGhpcy50b1JlY29yZDxVc2FnZVRocmVzaG9sZD4oXCJhdmdNZW1vcnlcIiwgXCJtYXhVc2FnZVBlcmNlbnRcIilcbiAgICB9KTtcbiAgfVxuXG4gIC8vIFRPRE8gV2UgbmVlZCB0byBmaWd1cmUgb3V0IGEgd2F5IHRvIGV4dGVuZCBtb25pdG9yaW5nRmFjYWRlIHRvIHN1cHBvcnQgY3JlYXRpbmcgdGhlc2UgYWxhcm1zLiBNYXliZSBleHRlbmQgTW9ub3RvcmluZ0ZhY2FkZS5tb25pdG9yTG9nKClcblxuICBwcml2YXRlIGNyaXRpY2FsTG9nQWxhcm06IExvZ01ldHJpY0FsYXJtIHwgdW5kZWZpbmVkO1xuICBwcml2YXRlIHdhcm5pbmdMb2dBbGFybTogTG9nTWV0cmljQWxhcm0gfCB1bmRlZmluZWQ7XG5cbiAgcHJpdmF0ZSBhZGRMb2dBbGFybShjYXRlZ29yeTogQWxhcm1DYXRlZ29yeSwgZGVmYXVsdFRocmVzaG9sZD86IG51bWJlcikge1xuICAgIGNvbnN0IGZwcm9wcyA9IGNhdGVnb3J5ID09PSBBbGFybUNhdGVnb3J5LkNyaXRpY2FsID8gdGhpcy5wcm9wcy5jcml0aWNhbEFsYXJtT3B0aW9ucyA6IHRoaXMucHJvcHMud2FybmluZ0FsYXJtT3B0aW9ucztcbiAgICBjb25zdCB0aHJlc2hvbGQgPSBmcHJvcHM/Lm1heExvZ0NvdW50Pz9kZWZhdWx0VGhyZXNob2xkXG4gICAgY29uc3QgcGF0dGVybiA9IGZwcm9wcz8ubWV0cmljTG9nUGF0dGVybj8/XG4gICAgY2F0ZWdvcnkgPT09IEFsYXJtQ2F0ZWdvcnkuQ3JpdGljYWxcbiAgICAgID8gRnVuY3Rpb25BbGFybXMuREVGQVVMVF9DUklUSUNBTF9MT0dfTUVUUklDX1BBVFRFUk5cbiAgICAgIDogRnVuY3Rpb25BbGFybXMuREVGQVVMVF9XQVJOSU5HX0xPR19NRVRSSUNfUEFUVEVSTjtcbiAgICBjb25zdCBldmFsdWF0aW9uUGVyaW9kcyA9IGZwcm9wcz8ubG9nRXZhbHVhdGlvblBlcmlvZHM/PzJcbiAgICBjb25zdCBkYXRhcG9pbnRzVG9BbGFybSA9IGZwcm9wcz8ubG9nRGF0YVBvaW50c1RvQWxhcm0/PzFcbiAgICBpZiAodGhyZXNob2xkICE9PSB1bmRlZmluZWQgJiYgdGhyZXNob2xkID4gMCkge1xuICAgICAgY29uc3QgbG9nQWxhcm0gPSBuZXcgTG9nTWV0cmljQWxhcm0odGhpcywgY2F0ZWdvcnkgKyBcIkxvZ0NvdW50XCIsIHtcbiAgICAgICAgbG9nR3JvdXA6IHRoaXMucHJvcHMubG9nR3JvdXAsXG4gICAgICAgIHBhdHRlcm4sXG4gICAgICAgIHRocmVzaG9sZCxcbiAgICAgICAgZXZhbHVhdGlvblBlcmlvZHMsXG4gICAgICAgIGRhdGFwb2ludHNUb0FsYXJtLFxuICAgICAgICBtZXRyaWNOYW1lOiBjYXRlZ29yeSArIFwiTG9nQ291bnRcIixcbiAgICAgIH0pO1xuICAgICAgaWYgKGNhdGVnb3J5ID09PSBBbGFybUNhdGVnb3J5LkNyaXRpY2FsKSB7XG4gICAgICAgIHRoaXMuY3JpdGljYWxMb2dBbGFybSA9IGxvZ0FsYXJtO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy53YXJuaW5nTG9nQWxhcm0gPSBsb2dBbGFybTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFkZExvZ01vbml0b3JpbmdUb0Rhc2hib2FyZCgpIHtcbiAgICBsZXQgcGF0dGVybiA9IEZ1bmN0aW9uQWxhcm1zLkRFRkFVTFRfTE9HX0lOU0lHSFRTX1BBVFRFUk47XG4gICAgaWYgKHRoaXMucHJvcHMuY3JpdGljYWxBbGFybU9wdGlvbnM/LmRhc2hib2FyZExvZ1BhdHRlcm4gIT09IHVuZGVmaW5lZCB8fCB0aGlzLnByb3BzLndhcm5pbmdBbGFybU9wdGlvbnM/LmRhc2hib2FyZExvZ1BhdHRlcm4gIT09IHVuZGVmaW5lZCkge1xuICAgICAgcGF0dGVybiA9IFwiXCJcbiAgICAgIGlmICh0aGlzLnByb3BzLmNyaXRpY2FsQWxhcm1PcHRpb25zPy5kYXNoYm9hcmRMb2dQYXR0ZXJuICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgcGF0dGVybiA9IHRoaXMucHJvcHMuY3JpdGljYWxBbGFybU9wdGlvbnMuZGFzaGJvYXJkTG9nUGF0dGVyblxuICAgICAgfVxuICAgICAgaWYgKHRoaXMucHJvcHMud2FybmluZ0FsYXJtT3B0aW9ucz8uZGFzaGJvYXJkTG9nUGF0dGVybiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHBhdHRlcm4gPSBwYXR0ZXJuICsgKHBhdHRlcm4gIT09IFwiXCIgPyBcInxcIiA6IFwiXCIpICsgdGhpcy5wcm9wcy53YXJuaW5nQWxhcm1PcHRpb25zLmRhc2hib2FyZExvZ1BhdHRlcm47XG4gICAgICB9XG4gICAgfVxuICAgIGlmIChwYXR0ZXJuICE9PSBcIlwiKSB7XG4gICAgICB0aGlzLm1vbml0b3JpbmdGYWNhZGUubW9uaXRvckxvZyh7XG4gICAgICAgIGxvZ0dyb3VwTmFtZTogdGhpcy5wcm9wcy5sb2dHcm91cC5sb2dHcm91cE5hbWUsXG4gICAgICAgIHBhdHRlcm4sXG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogRnVuY3Rpb25BbGFybXNQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwgcHJvcHMpO1xuICAgIGlmIChwcm9wcy5jcmVhdGVBbGFybXMgPz8gdHJ1ZSkge1xuICAgICAgdGhpcy5hZGRGdW5jdGlvbk1vbml0b3JpbmcoKTtcbiAgICAgIHRoaXMuYWRkTG9nTW9uaXRvcmluZ1RvRGFzaGJvYXJkKCk7XG4gICAgICB0aGlzLmFkZExvZ0FsYXJtKEFsYXJtQ2F0ZWdvcnkuQ3JpdGljYWwsIDEpO1xuICAgICAgdGhpcy5hZGRMb2dBbGFybShBbGFybUNhdGVnb3J5Lldhcm5pbmcpO1xuICAgIH1cbiAgfVxuXG4gIGdldEFsYXJtcyhjYXRlZ29yeTogQWxhcm1DYXRlZ29yeSk6IEFsYXJtW10ge1xuICAgIGNvbnN0IGFsYXJtcyA9IHN1cGVyLmdldEFsYXJtcyhjYXRlZ29yeSk7XG4gICAgY29uc3QgbG9nQWxhcm0gPSBjYXRlZ29yeSA9PT0gQWxhcm1DYXRlZ29yeS5Dcml0aWNhbCA/IHRoaXMuY3JpdGljYWxMb2dBbGFybT8uYWxhcm0gOiB0aGlzLndhcm5pbmdMb2dBbGFybT8uYWxhcm07XG4gICAgaWYgKGxvZ0FsYXJtICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGFsYXJtcy5wdXNoKGxvZ0FsYXJtKTtcbiAgICB9XG4gICAgcmV0dXJuIGFsYXJtcztcbiAgfVxufVxuIl19
|
|
117
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVuY3Rpb24tYWxhcm1zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiZnVuY3Rpb24tYWxhcm1zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQVlBLHlEQUFxRztBQUlyRyx5REFBb0Q7QUErS3BEOztHQUVHO0FBQ0gsTUFBYSxjQUFlLFNBQVEsMkJBQThEO0lBaUdoRyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQTBCOztRQUNsRSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUN4QixVQUFJLEtBQUssQ0FBQyxZQUFZLG1DQUFJLElBQUksRUFBRTtZQUM5QixJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztZQUM3QixJQUFJLENBQUMsMkJBQTJCLEVBQUUsQ0FBQztZQUNuQyxJQUFJLENBQUMsV0FBVyxDQUFDLDhCQUFhLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQzVDLElBQUksQ0FBQyxXQUFXLENBQUMsOEJBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQztTQUN6QztJQUNILENBQUM7SUFyRk8scUJBQXFCOztRQUMzQixJQUFJLENBQUMsZ0JBQWdCLENBQUMscUJBQXFCLENBQUM7WUFDMUMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlO1lBQzdDLGNBQWMsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVE7WUFDbkMsbUJBQW1CLFFBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxtQkFBbUIsbUNBQUUsSUFBSTtZQUN6RCxvQkFBb0IsUUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLG9CQUFvQixtQ0FBRSxJQUFJO1lBQzNELHFCQUFxQixRQUFFLElBQUksQ0FBQyxLQUFLLENBQUMscUJBQXFCLG1DQUFFLElBQUk7WUFDN0Qsa0JBQWtCLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBbUIsWUFBWSxFQUFFLFlBQVksQ0FBQztZQUMvRSxrQkFBa0IsRUFBRSxJQUFJLENB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QXVCOztRQUMvQixNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3pDLE1BQU0sUUFBUSxHQUFHLFFBQVEsS0FBSyw4QkFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDLE9BQUMsSUFBSSxDQUFDLGdCQUFnQiwwQ0FBRSxLQUFLLENBQUMsQ0FBQyxPQUFDLElBQUksQ0FBQyxlQUFlLDBDQUFFLEtBQUssQ0FBQztRQUNsSCxJQUFJLFFBQVEsS0FBSyxTQUFTLEVBQUU7WUFDMUIsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztTQUN2QjtRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7O0FBbEhILHdDQW1IQztBQWpIQzs7R0FFRztBQUNhLGtEQUFtQyxHQUFHLE9BQU8sQ0FBQztBQUM5QywrQ0FBZ0MsR0FBRyxXQUFXLENBQUM7QUFFL0Q7O0dBRUc7QUFDYSxpREFBa0MsR0FBRyxTQUFTLENBQUM7QUFDL0MsaURBQWtDLEdBQUcsYUFBYSxDQUFDO0FBRW5FOztHQUVHO0FBQ2EsMkNBQTRCLEdBQUcsZUFBZSxDQUFDO0FBQy9DLDJDQUE0QixHQUFHLCtCQUErQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEdXJhdGlvbn0gZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQge1xuICBEdXJhdGlvblRocmVzaG9sZCxcbiAgRXJyb3JDb3VudFRocmVzaG9sZCxcbiAgRXJyb3JSYXRlVGhyZXNob2xkLFxuICBIaWdoVHBzVGhyZXNob2xkLFxuICBMYXRlbmN5VGhyZXNob2xkLFxuICBMb3dUcHNUaHJlc2hvbGQsXG4gIE1heEFnZVRocmVzaG9sZCxcbiAgUnVubmluZ1Rhc2tDb3VudFRocmVzaG9sZCxcbiAgVXNhZ2VUaHJlc2hvbGRcbn0gZnJvbSBcImNkay1tb25pdG9yaW5nLWNvbnN0cnVjdHNcIjtcbmltcG9ydCB7QWxhcm1DYXRlZ29yeSwgQWxhcm1zQmFzZSwgQWxhcm1zQ2F0ZWdvcnlPcHRpb25zLCBBbGFybXNPcHRpb25zfSBmcm9tIFwiLi4vLi4vYXdzLW1vbml0b3JpbmdcIjtcbmltcG9ydCB7SUZ1bmN0aW9ufSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWxhbWJkYVwiO1xuaW1wb3J0IHtJTG9nR3JvdXB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtbG9nc1wiO1xuaW1wb3J0IHtDb25zdHJ1Y3R9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQge0xvZ01ldHJpY0FsYXJtfSBmcm9tIFwiLi4vLi4vYXdzLWNsb3Vkd2F0Y2hcIjtcbmltcG9ydCB7QWxhcm19IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtY2xvdWR3YXRjaFwiO1xuXG4vKipcbiAqIENhdGVnb3J5IG9wdGlvbnMgZm9yIENsb3VkV2F0Y2ggYWxhcm1zIGZvciBMYW1iZGEgRnVuY3Rpb25zLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEZ1bmN0aW9uQWxhcm1zQ2F0ZWdvcnlPcHRpb25zIGV4dGVuZHMgQWxhcm1zQ2F0ZWdvcnlPcHRpb25zIHtcblxuICAvKipcbiAgICogTWF4aW11bSA1MHRoIHBlcmNlbnRpbGUgbGF0ZW5jeVxuICAgKi9cbiAgcmVhZG9ubHkgcDUwTGF0ZW5jeT86IER1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBNYXhpbXVtIDkwdGggcGVyY2VudGlsZSBsYXRlbmN5XG4gICAqL1xuICByZWFkb25seSBwOTBMYXRlbmN5PzogRHVyYXRpb247XG5cbiAgLyoqXG4gICAqIE1heGltdW0gOTl0aCBwZXJjZW50aWxlIGxhdGVuY3lcbiAgICovXG4gIHJlYWRvbmx5IHA5OUxhdGVuY3k/OiBEdXJhdGlvbjtcblxuICAvKipcbiAgICogTWF4aW11bSBudW1iZXIgb2YgZmF1bHRzXG4gICAqXG4gICAqIEBkZWZhdWx0IDBcbiAgICovXG4gIHJlYWRvbmx5IG1heEZhdWx0cz86IG51bWJlcjtcblxuICAvKipcbiAgICogQXZlcmFnZSBudW1iZXIgb2YgZmF1bHRzXG4gICAqL1xuICByZWFkb25seSBhdmdGYXVsdHM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIE1pbmltdW0gdHJhbnNhY3Rpb25zXG4gICAqL1xuICByZWFkb25seSBtaW5UcHM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIE1heGltdW0gdHJhbnNhY3Rpb25zXG4gICAqL1xuICByZWFkb25seSBtYXhUcHM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIE1heGltdW0gbnVtYmVyIG9mIHRocm90dGxlc1xuICAgKlxuICAgKiBAZGVmYXVsdCAwXG4gICAqL1xuICByZWFkb25seSBtYXhUaHJvdHRsZXM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEF2ZXJhZ2UgbnVtYmVyIG9mIHRocm90dGxlc1xuICAgKi9cbiAgcmVhZG9ubHkgYXZnVGhyb3R0bGVzPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBNYXhpbXVtIGNvbmN1cnJlbnQgZXhlY3V0aW9uc1xuICAgKi9cbiAgcmVhZG9ubHkgbWF4Q29uY3VycmVudEV4ZWN1dGlvbnM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEFtb3VudCBvZiB0aW1lIGRhdGEgd2FpdHMgYmVmb3JlIGJlaW5nIHByb2Nlc3NlZCBieSB0aGUgZnVuY3Rpb24uXG4gICAqIFNlZSBodHRwczovL2F3cy5hbWF6b24uY29tL3ByZW1pdW1zdXBwb3J0L2tub3dsZWRnZS1jZW50ZXIvbGFtYmRhLWl0ZXJhdG9yLWFnZS9cbiAgICovXG4gIHJlYWRvbmx5IG1heEl0ZXJhdG9yQWdlPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBNYXhpbXVtIGFtb3VudCBvZiBDUFUgdGltZVxuICAgKi9cbiAgcmVhZG9ubHkgbWF4Q3B1VGltZT86IER1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiA5MHRoIHBlcmNlbnRpbGUgQ1BVIHRpbWVcbiAgICovXG4gIHJlYWRvbmx5IHA5MENwdVRpbWU/OiBEdXJhdGlvbjtcblxuICAvKipcbiAgICogQXZlcmFnZSBDUFUgdGltZVxuICAgKi9cbiAgcmVhZG9ubHkgYXZnQ3B1VGltZT86IER1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBNYXhpbXVtIGFtb3VudCBvZiBtZW1vcnlcbiAgICovXG4gIHJlYWRvbmx5IG1heE1lbW9yeT86IG51bWJlcjtcblxuICAvKipcbiAgICogOTB0aCBwZXJjZW50aWxlIG1lbW9yeVxuICAgKi9cbiAgcmVhZG9ubHkgcDkwTWVtb3J5PzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBBdmVyYWdlIG1lbW9yeVxuICAgKi9cbiAgcmVhZG9ubHkgYXZnTWVtb3J5PzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBMb2cgcGF0dGVybiB0byBtYXRjaCBmb3IgbWV0cmljcy5cbiAgICpcbiAgICogQGRlZmF1bHQgJ1xcXFxcXFtFUlJPUlxcXFxcXF0nXG4gICAqL1xuICByZWFkb25seSBtZXRyaWNMb2dQYXR0ZXJuPzogc3RyaW5nXG5cbiAgLyoqXG4gICAqIE1heGltdW0gbnVtYmVyIG9mIGxvZyBldmVudHMgbWF0Y2hpbmcgdGhlIG1ldHJpY0xvZ1BhdHRlcm4uXG4gICAqXG4gICAqIEBkZWZhdWx0IDAgZm9yIENyaXRpY2FsIEFsYXJtXG4gICAqL1xuICByZWFkb25seSBtYXhMb2dDb3VudD86IG51bWJlclxuXG4gIC8qKlxuICAgKiBOdW1iZXIgb2YgZXZhbHVhdGlvbiBwZXJpb2RzIG92ZXIgd2hpY2ggZGF0YSBpcyBjb21wYXJlZCBmb3IgbG9nIGV2ZW50cy5cbiAgICpcbiAgICogQGRlZmF1bHQgMlxuICAgKi9cbiAgcmVhZG9ubHkgbG9nRXZhbHVhdGlvblBlcmlvZHM/OiBudW1iZXJcblxuICAvKipcbiAgICogTnVtYmVyIG9mIGRhdGEgcG9pbnRzIHRoYXQgbXVzdCBiZSBicmVhY2hpbmcgdG8gdHJpZ2dlciB0aGUgYWxhcm0gZm9yIGxvZyBldmVudHMuXG4gICAqXG4gICAqIEBkZWZhdWx0IDFcbiAgICovXG4gIHJlYWRvbmx5IGxvZ0RhdGFQb2ludHNUb0FsYXJtPzogbnVtYmVyXG5cbiAgLyoqXG4gICAqIExvZyBwYXR0ZXJuIHRvIG1hdGNoIGZvciB0aGUgZGFzaGJvYXJkXG4gICAqXG4gICAqIEBkZWZhdWx0ICdcIltFUlJPUl1cIidcbiAgICovXG4gIHJlYWRvbmx5IGRhc2hib2FyZExvZ1BhdHRlcm4/OiBzdHJpbmdcbn1cblxuLyoqXG4gKiBPcHRpb25zIGZvciBDbG91ZFdhdGNoIGFsYXJtcyBmb3IgTGFtYmRhIEZ1bmN0aW9uc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIEZ1bmN0aW9uQWxhcm1zT3B0aW9ucyBleHRlbmRzIEFsYXJtc09wdGlvbnM8RnVuY3Rpb25BbGFybXNDYXRlZ29yeU9wdGlvbnM+IHtcblxuICAvKipcbiAgICogRmxhZyB0byBjcmVhdGUgYWxhcm1zLlxuICAgKlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBjcmVhdGVBbGFybXM/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBOYW1lIHRvIHVzZSBmb3IgYWxhcm0sIGRlZmF1bHQgaXMgY29uc3RydWN0IElELlxuICAgKi9cbiAgcmVhZG9ubHkgYWxhcm1GcmllbmRseU5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEdlbmVyYXRlIGRhc2hib2FyZCBjaGFydHMgZm9yIExhbWJkYSBpbnNpZ2h0cyBtZXRyaWNzLlxuICAgKlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBsYW1iZGFJbnNpZ2h0c0VuYWJsZWQ/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIEZ1bmN0aW9uQWxhcm1zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRnVuY3Rpb25BbGFybXNQcm9wcyBleHRlbmRzIEZ1bmN0aW9uQWxhcm1zT3B0aW9ucyB7XG5cbiAgLyoqXG4gICAqIFRoZSBmdW5jdGlvbiB0byBvYnNlcnZlLlxuICAgKi9cbiAgcmVhZG9ubHkgZnVuY3Rpb246IElGdW5jdGlvblxuXG4gIC8qKlxuICAgKiBUaGUgbG9nIGdyb3VwIGF0dGFjaGVkIHRvIHRoZSBmdW5jdGlvbiB0byBiZSBvYnNlcnZlZC5cbiAgICovXG4gIHJlYWRvbmx5IGxvZ0dyb3VwOiBJTG9nR3JvdXBcbn1cblxuLyoqXG4gKiBDcmVhdGVzIENsb3VkV2F0Y2ggYWxhcm1zIGZvciBhIExhbWJkYSBGdW5jdGlvbi5cbiAqL1xuZXhwb3J0IGNsYXNzIEZ1bmN0aW9uQWxhcm1zIGV4dGVuZHMgQWxhcm1zQmFzZTxGdW5jdGlvbkFsYXJtc0NhdGVnb3J5T3B0aW9ucywgRnVuY3Rpb25BbGFybXNQcm9wcz4ge1xuXG4gIC8qKlxuICAgKiBEZWZhdWx0IHBhdHRlcm4gdXNlZCBmb3IgdGhlIGNyaXRpY2FsIGxvZyBtZXRyaWMuXG4gICAqL1xuICBzdGF0aWMgcmVhZG9ubHkgREVGQVVMVF9DUklUSUNBTF9MT0dfTUVUUklDX1BBVFRFUk4gPSBcIkVSUk9SXCI7XG4gIHN0YXRpYyByZWFkb25seSBCUkFDS0VUX0VSUk9SX0xPR19NRVRSSUNfUEFUVEVSTiA9ICdcIltFUlJPUl1cIic7XG5cbiAgLyoqXG4gICAqIERlZmF1bHQgcGF0dGVybiB1c2VkIGZvciB0aGUgd2FybmluZyBsb2cgbWV0cmljLlxuICAgKi9cbiAgc3RhdGljIHJlYWRvbmx5IERFRkFVTFRfV0FSTklOR19MT0dfTUVUUklDX1BBVFRFUk4gPSBcIldBUk5JTkdcIjtcbiAgc3RhdGljIHJlYWRvbmx5IEJSQUNLRVRfV0FSTklOR19MT0dfTUVUUklDX1BBVFRFUk4gPSAnXCJbV0FSTklOR11cIic7XG5cbiAgLyoqXG4gICAqIERlZmF1bHQgcGF0dGVybiB1c2VkIHRvIHNob3cgbG9ncyBvbiB0aGUgQ2xvdWRXYXRjaCBkYXNoYm9hcmQuXG4gICAqL1xuICBzdGF0aWMgcmVhZG9ubHkgREVGQVVMVF9MT0dfSU5TSUdIVFNfUEFUVEVSTiA9IFwiRVJST1J8V0FSTklOR1wiO1xuICBzdGF0aWMgcmVhZG9ubHkgQlJBQ0tFVF9MT0dfSU5TSUdIVFNfUEFUVEVSTiA9ICdcXFxcXFxbRVJST1JcXFxcXFxdfFxcXFxcXFtXQVJOSU5HXFxcXFxcXSc7XG5cbiAgcHJpdmF0ZSBhZGRGdW5jdGlvbk1vbml0b3JpbmcoKSB7XG4gICAgdGhpcy5tb25pdG9yaW5nRmFjYWRlLm1vbml0b3JMYW1iZGFGdW5jdGlvbih7XG4gICAgICBhbGFybUZyaWVuZGx5TmFtZTogdGhpcy5wcm9wcy5hbGFybU5hbWVQcmVmaXgsXG4gICAgICBsYW1iZGFGdW5jdGlvbjogdGhpcy5wcm9wcy5mdW5jdGlvbixcbiAgICAgIGFkZFRvQWxhcm1EYXNoYm9hcmQ6IHRoaXMucHJvcHMuYWRkVG9BbGFybURhc2hib2FyZD8/dHJ1ZSxcbiAgICAgIGFkZFRvRGV0YWlsRGFzaGJvYXJkOiB0aGlzLnByb3BzLmFkZFRvRGV0YWlsRGFzaGJvYXJkPz90cnVlLFxuICAgICAgYWRkVG9TdW1tYXJ5RGFzaGJvYXJkOiB0aGlzLnByb3BzLmFkZFRvU3VtbWFyeURhc2hib2FyZD8/dHJ1ZSxcbiAgICAgIGFkZExhdGVuY3lQNTBBbGFybTogdGhpcy50b1JlY29yZDxMYXRlbmN5VGhyZXNob2xkPihcInA1MExhdGVuY3lcIiwgXCJtYXhMYXRlbmN5XCIpLFxuICAgICAgYWRkTGF0ZW5jeVA5MEFsYXJtOiB0aGlzLnRvUmVjb3JkPExhdGVuY3lUaHJlc2hvbGQ+KFwicDkwTGF0ZW5jeVwiLCBcIm1heExhdGVuY3lcIiksXG4gICAgICBhZGRMYXRlbmN5UDk5QWxhcm06IHRoaXMudG9SZWNvcmQ8TGF0ZW5jeVRocmVzaG9sZD4oXCJwOTlMYXRlbmN5XCIsIFwibWF4TGF0ZW5jeVwiKSxcbiAgICAgIGFkZEZhdWx0Q291bnRBbGFybTogdGhpcy50b1JlY29yZDxFcnJvckNvdW50VGhyZXNob2xkPihcIm1heEZhdWx0c1wiLCBcIm1heEVycm9yQ291bnRcIiwgMCksXG4gICAgICBhZGRGYXVsdFJhdGVBbGFybTogdGhpcy50b1JlY29yZDxFcnJvclJhdGVUaHJlc2hvbGQ+KFwiYXZnRmF1bHRzXCIsIFwibWF4RXJyb3JSYXRlXCIpLFxuICAgICAgYWRkTG93VHBzQWxhcm06IHRoaXMudG9SZWNvcmQ8TG93VHBzVGhyZXNob2xkPihcIm1pblRwc1wiLCBcIm1pblRwc1wiKSxcbiAgICAgIGFkZEhpZ2hUcHNBbGFybTogdGhpcy50b1JlY29yZDxIaWdoVHBzVGhyZXNob2xkPihcIm1heFRwc1wiLCBcIm1heFRwc1wiKSxcbiAgICAgIGFkZFRocm90dGxlc0NvdW50QWxhcm06IHRoaXMudG9SZWNvcmQ8RXJyb3JDb3VudFRocmVzaG9sZD4oXCJtYXhUaHJvdHRsZXNcIiwgXCJtYXhFcnJvckNvdW50XCIsIDApLFxuICAgICAgYWRkVGhyb3R0bGVzUmF0ZUFsYXJtOiB0aGlzLnRvUmVjb3JkPEVycm9yUmF0ZVRocmVzaG9sZD4oXCJhdmdUaHJvdHRsZXNcIiwgXCJtYXhFcnJvclJhdGVcIiksXG4gICAgICBhZGRDb25jdXJyZW50RXhlY3V0aW9uc0NvdW50QWxhcm06IHRoaXMudG9SZWNvcmQ8UnVubmluZ1Rhc2tDb3VudFRocmVzaG9sZD4oXCJtYXhDb25jdXJyZW50RXhlY3V0aW9uc1wiLCBcIm1heFJ1bm5pbmdUYXNrc1wiKSxcbiAgICAgIGFkZE1heEl0ZXJhdG9yQWdlQWxhcm06IHRoaXMudG9SZWNvcmQ8TWF4QWdlVGhyZXNob2xkPihcIm1heEl0ZXJhdG9yQWdlXCIsIFwibWF4QWdlSW5NaWxsaXNcIiksXG4gICAgICBhZGRFbmhhbmNlZE1vbml0b3JpbmdNYXhDcHVUb3RhbFRpbWVBbGFybTogdGhpcy50b1JlY29yZDxEdXJhdGlvblRocmVzaG9sZD4oXCJtYXhDcHVUaW1lXCIsIFwibWF4RHVyYXRpb25cIiksXG4gICAgICBhZGRFbmhhbmNlZE1vbml0b3JpbmdQOTBDcHVUb3RhbFRpbWVBbGFybTogdGhpcy50b1JlY29yZDxEdXJhdGlvblRocmVzaG9sZD4oXCJwOTBDcHVUaW1lXCIsIFwibWF4RHVyYXRpb25cIiksXG4gICAgICBhZGRFbmhhbmNlZE1vbml0b3JpbmdBdmdDcHVUb3RhbFRpbWVBbGFybTogdGhpcy50b1JlY29yZDxEdXJhdGlvblRocmVzaG9sZD4oXCJhdmdDcHVUaW1lXCIsIFwibWF4RHVyYXRpb25cIiksXG4gICAgICBhZGRFbmhhbmNlZE1vbml0b3JpbmdNYXhNZW1vcnlVdGlsaXphdGlvbkFsYXJtOiB0aGlzLnRvUmVjb3JkPFVzYWdlVGhyZXNob2xkPihcIm1heE1lbW9yeVwiLCBcIm1heFVzYWdlUGVyY2VudFwiKSxcbiAgICAgIGFkZEVuaGFuY2VkTW9uaXRvcmluZ1A5ME1lbW9yeVV0aWxpemF0aW9uQWxhcm06IHRoaXMudG9SZWNvcmQ8VXNhZ2VUaHJlc2hvbGQ+KFwicDkwTWVtb3J5XCIsIFwibWF4VXNhZ2VQZXJjZW50XCIpLFxuICAgICAgYWRkRW5oYW5jZWRNb25pdG9yaW5nQXZnTWVtb3J5VXRpbGl6YXRpb25BbGFybTogdGhpcy50b1JlY29yZDxVc2FnZVRocmVzaG9sZD4oXCJhdmdNZW1vcnlcIiwgXCJtYXhVc2FnZVBlcmNlbnRcIilcbiAgICB9KTtcbiAgfVxuXG4gIC8vIFRPRE8gV2UgbmVlZCB0byBmaWd1cmUgb3V0IGEgd2F5IHRvIGV4dGVuZCBtb25pdG9yaW5nRmFjYWRlIHRvIHN1cHBvcnQgY3JlYXRpbmcgdGhlc2UgYWxhcm1zLiBNYXliZSBleHRlbmQgTW9ub3RvcmluZ0ZhY2FkZS5tb25pdG9yTG9nKClcblxuICBwcml2YXRlIGNyaXRpY2FsTG9nQWxhcm06IExvZ01ldHJpY0FsYXJtIHwgdW5kZWZpbmVkO1xuICBwcml2YXRlIHdhcm5pbmdMb2dBbGFybTogTG9nTWV0cmljQWxhcm0gfCB1bmRlZmluZWQ7XG5cbiAgcHJpdmF0ZSBhZGRMb2dBbGFybShjYXRlZ29yeTogQWxhcm1DYXRlZ29yeSwgZGVmYXVsdFRocmVzaG9sZD86IG51bWJlcikge1xuICAgIGNvbnN0IGZwcm9wcyA9IGNhdGVnb3J5ID09PSBBbGFybUNhdGVnb3J5LkNyaXRpY2FsID8gdGhpcy5wcm9wcy5jcml0aWNhbEFsYXJtT3B0aW9ucyA6IHRoaXMucHJvcHMud2FybmluZ0FsYXJtT3B0aW9ucztcbiAgICBjb25zdCB0aHJlc2hvbGQgPSBmcHJvcHM/Lm1heExvZ0NvdW50Pz9kZWZhdWx0VGhyZXNob2xkXG4gICAgY29uc3QgcGF0dGVybiA9IGZwcm9wcz8ubWV0cmljTG9nUGF0dGVybj8/XG4gICAgY2F0ZWdvcnkgPT09IEFsYXJtQ2F0ZWdvcnkuQ3JpdGljYWxcbiAgICAgID8gRnVuY3Rpb25BbGFybXMuREVGQVVMVF9DUklUSUNBTF9MT0dfTUVUUklDX1BBVFRFUk5cbiAgICAgIDogRnVuY3Rpb25BbGFybXMuREVGQVVMVF9XQVJOSU5HX0xPR19NRVRSSUNfUEFUVEVSTjtcbiAgICBjb25zdCBldmFsdWF0aW9uUGVyaW9kcyA9IGZwcm9wcz8ubG9nRXZhbHVhdGlvblBlcmlvZHM/PzJcbiAgICBjb25zdCBkYXRhcG9pbnRzVG9BbGFybSA9IGZwcm9wcz8ubG9nRGF0YVBvaW50c1RvQWxhcm0/PzFcbiAgICBpZiAodGhyZXNob2xkICE9PSB1bmRlZmluZWQgJiYgdGhyZXNob2xkID4gMCkge1xuICAgICAgY29uc3QgbG9nQWxhcm0gPSBuZXcgTG9nTWV0cmljQWxhcm0odGhpcywgY2F0ZWdvcnkgKyBcIkxvZ0NvdW50XCIsIHtcbiAgICAgICAgbG9nR3JvdXA6IHRoaXMucHJvcHMubG9nR3JvdXAsXG4gICAgICAgIHBhdHRlcm4sXG4gICAgICAgIHRocmVzaG9sZCxcbiAgICAgICAgZXZhbHVhdGlvblBlcmlvZHMsXG4gICAgICAgIGRhdGFwb2ludHNUb0FsYXJtLFxuICAgICAgICBtZXRyaWNOYW1lOiBjYXRlZ29yeSArIFwiTG9nQ291bnRcIixcbiAgICAgIH0pO1xuICAgICAgaWYgKGNhdGVnb3J5ID09PSBBbGFybUNhdGVnb3J5LkNyaXRpY2FsKSB7XG4gICAgICAgIHRoaXMuY3JpdGljYWxMb2dBbGFybSA9IGxvZ0FsYXJtO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy53YXJuaW5nTG9nQWxhcm0gPSBsb2dBbGFybTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFkZExvZ01vbml0b3JpbmdUb0Rhc2hib2FyZCgpIHtcbiAgICBsZXQgcGF0dGVybiA9IEZ1bmN0aW9uQWxhcm1zLkRFRkFVTFRfTE9HX0lOU0lHSFRTX1BBVFRFUk47XG4gICAgaWYgKHRoaXMucHJvcHMuY3JpdGljYWxBbGFybU9wdGlvbnM/LmRhc2hib2FyZExvZ1BhdHRlcm4gIT09IHVuZGVmaW5lZCB8fCB0aGlzLnByb3BzLndhcm5pbmdBbGFybU9wdGlvbnM/LmRhc2hib2FyZExvZ1BhdHRlcm4gIT09IHVuZGVmaW5lZCkge1xuICAgICAgcGF0dGVybiA9IFwiXCJcbiAgICAgIGlmICh0aGlzLnByb3BzLmNyaXRpY2FsQWxhcm1PcHRpb25zPy5kYXNoYm9hcmRMb2dQYXR0ZXJuICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgcGF0dGVybiA9IHRoaXMucHJvcHMuY3JpdGljYWxBbGFybU9wdGlvbnMuZGFzaGJvYXJkTG9nUGF0dGVyblxuICAgICAgfVxuICAgICAgaWYgKHRoaXMucHJvcHMud2FybmluZ0FsYXJtT3B0aW9ucz8uZGFzaGJvYXJkTG9nUGF0dGVybiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHBhdHRlcm4gPSBwYXR0ZXJuICsgKHBhdHRlcm4gIT09IFwiXCIgPyBcInxcIiA6IFwiXCIpICsgdGhpcy5wcm9wcy53YXJuaW5nQWxhcm1PcHRpb25zLmRhc2hib2FyZExvZ1BhdHRlcm47XG4gICAgICB9XG4gICAgfVxuICAgIGlmIChwYXR0ZXJuICE9PSBcIlwiKSB7XG4gICAgICB0aGlzLm1vbml0b3JpbmdGYWNhZGUubW9uaXRvckxvZyh7XG4gICAgICAgIGxvZ0dyb3VwTmFtZTogdGhpcy5wcm9wcy5sb2dHcm91cC5sb2dHcm91cE5hbWUsXG4gICAgICAgIHBhdHRlcm4sXG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogRnVuY3Rpb25BbGFybXNQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwgcHJvcHMpO1xuICAgIGlmIChwcm9wcy5jcmVhdGVBbGFybXMgPz8gdHJ1ZSkge1xuICAgICAgdGhpcy5hZGRGdW5jdGlvbk1vbml0b3JpbmcoKTtcbiAgICAgIHRoaXMuYWRkTG9nTW9uaXRvcmluZ1RvRGFzaGJvYXJkKCk7XG4gICAgICB0aGlzLmFkZExvZ0FsYXJtKEFsYXJtQ2F0ZWdvcnkuQ3JpdGljYWwsIDEpO1xuICAgICAgdGhpcy5hZGRMb2dBbGFybShBbGFybUNhdGVnb3J5Lldhcm5pbmcpO1xuICAgIH1cbiAgfVxuXG4gIGdldEFsYXJtcyhjYXRlZ29yeTogQWxhcm1DYXRlZ29yeSk6IEFsYXJtW10ge1xuICAgIGNvbnN0IGFsYXJtcyA9IHN1cGVyLmdldEFsYXJtcyhjYXRlZ29yeSk7XG4gICAgY29uc3QgbG9nQWxhcm0gPSBjYXRlZ29yeSA9PT0gQWxhcm1DYXRlZ29yeS5Dcml0aWNhbCA/IHRoaXMuY3JpdGljYWxMb2dBbGFybT8uYWxhcm0gOiB0aGlzLndhcm5pbmdMb2dBbGFybT8uYWxhcm07XG4gICAgaWYgKGxvZ0FsYXJtICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGFsYXJtcy5wdXNoKGxvZ0FsYXJtKTtcbiAgICB9XG4gICAgcmV0dXJuIGFsYXJtcztcbiAgfVxufVxuIl19
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
export * from "./
|
|
1
|
+
export * from "./standard-function";
|
|
2
2
|
export * from "./extended-function";
|
|
3
3
|
export * from "./extended-go-function";
|
|
4
4
|
export * from "./extended-nodejs-function";
|
|
5
5
|
export * from "./extended-python-function";
|
|
6
6
|
export * from "./function-alarms";
|
|
7
7
|
export * from "./function-deployment";
|
|
8
|
-
export * from "./
|
|
8
|
+
export * from "./standard-python-function";
|
package/aws-lambda/lib/index.js
CHANGED
|
@@ -10,12 +10,12 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
10
10
|
for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
|
|
11
11
|
};
|
|
12
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
-
__exportStar(require("./
|
|
13
|
+
__exportStar(require("./standard-function"), exports);
|
|
14
14
|
__exportStar(require("./extended-function"), exports);
|
|
15
15
|
__exportStar(require("./extended-go-function"), exports);
|
|
16
16
|
__exportStar(require("./extended-nodejs-function"), exports);
|
|
17
17
|
__exportStar(require("./extended-python-function"), exports);
|
|
18
18
|
__exportStar(require("./function-alarms"), exports);
|
|
19
19
|
__exportStar(require("./function-deployment"), exports);
|
|
20
|
-
__exportStar(require("./
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
20
|
+
__exportStar(require("./standard-python-function"), exports);
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBQSxzREFBb0M7QUFDcEMsc0RBQW9DO0FBQ3BDLHlEQUF1QztBQUN2Qyw2REFBMkM7QUFDM0MsNkRBQTJDO0FBQzNDLG9EQUFrQztBQUNsQyx3REFBc0M7QUFDdEMsNkRBQTJDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSBcIi4vc3RhbmRhcmQtZnVuY3Rpb25cIjtcbmV4cG9ydCAqIGZyb20gXCIuL2V4dGVuZGVkLWZ1bmN0aW9uXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9leHRlbmRlZC1nby1mdW5jdGlvblwiO1xuZXhwb3J0ICogZnJvbSBcIi4vZXh0ZW5kZWQtbm9kZWpzLWZ1bmN0aW9uXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9leHRlbmRlZC1weXRob24tZnVuY3Rpb25cIjtcbmV4cG9ydCAqIGZyb20gXCIuL2Z1bmN0aW9uLWFsYXJtc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vZnVuY3Rpb24tZGVwbG95bWVudFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3RhbmRhcmQtcHl0aG9uLWZ1bmN0aW9uXCI7XG4iXX0=
|
|
@@ -7,7 +7,7 @@ import { DeployedFunctionOptions, ExtendedFunction } from "./extended-function";
|
|
|
7
7
|
/**
|
|
8
8
|
* Options for BundledFunction.
|
|
9
9
|
*/
|
|
10
|
-
export interface
|
|
10
|
+
export interface StandardFunctionOptions {
|
|
11
11
|
/**
|
|
12
12
|
* Turns off local bundling.
|
|
13
13
|
*
|
|
@@ -47,7 +47,7 @@ export interface BundledFunctionOptions {
|
|
|
47
47
|
/**
|
|
48
48
|
* Properties for BundledFunction
|
|
49
49
|
*/
|
|
50
|
-
export interface BundledFunctionProps extends FunctionOptions, FunctionAlarmsOptions, DeployedFunctionOptions,
|
|
50
|
+
export interface BundledFunctionProps extends FunctionOptions, FunctionAlarmsOptions, DeployedFunctionOptions, StandardFunctionOptions {
|
|
51
51
|
/**
|
|
52
52
|
* Callback function to check if local bundling is supported.
|
|
53
53
|
*/
|
|
@@ -69,6 +69,6 @@ export interface BundledFunctionProps extends FunctionOptions, FunctionAlarmsOpt
|
|
|
69
69
|
*/
|
|
70
70
|
readonly handler: string;
|
|
71
71
|
}
|
|
72
|
-
export declare class
|
|
72
|
+
export declare class StandardFunction extends ExtendedFunction {
|
|
73
73
|
constructor(scope: Construct, id: string, props: BundledFunctionProps);
|
|
74
74
|
}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.StandardFunction = void 0;
|
|
4
|
+
const aws_cdk_lib_1 = require("aws-cdk-lib");
|
|
5
|
+
const helpers_1 = require("../../helpers");
|
|
6
|
+
const aws_lambda_1 = require("aws-cdk-lib/aws-lambda");
|
|
7
|
+
const extended_function_1 = require("./extended-function");
|
|
8
|
+
class StandardFunction extends extended_function_1.ExtendedFunction {
|
|
9
|
+
constructor(scope, id, props) {
|
|
10
|
+
var _a;
|
|
11
|
+
const local = props.disableLocalBundling ? undefined : {
|
|
12
|
+
tryBundle(outputDir, options) {
|
|
13
|
+
var _a;
|
|
14
|
+
try {
|
|
15
|
+
if (!props.isLocalBundlingSupported()) {
|
|
16
|
+
return false;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
catch (_b) {
|
|
20
|
+
return false;
|
|
21
|
+
}
|
|
22
|
+
return helpers_1.ShellHelper.executeBash({
|
|
23
|
+
script: (_a = props.bundlingScript) !== null && _a !== void 0 ? _a : props.defaultBundlingScript,
|
|
24
|
+
workingDirectory: props.entry,
|
|
25
|
+
environment: {
|
|
26
|
+
...options.environment,
|
|
27
|
+
CDK_BUNDLING_OUTPUT_DIR: outputDir,
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
const command = props.disableDockerBundling ? undefined : ['bash', '-c', (_a = props.bundlingScript) !== null && _a !== void 0 ? _a : props.defaultBundlingScript];
|
|
33
|
+
super(scope, id, {
|
|
34
|
+
...props,
|
|
35
|
+
code: aws_lambda_1.Code.fromAsset(props.entry, {
|
|
36
|
+
bundling: {
|
|
37
|
+
image: props.defaultBundlingImage,
|
|
38
|
+
local,
|
|
39
|
+
command,
|
|
40
|
+
environment: {
|
|
41
|
+
CDK_BUNDLING_OUTPUT_DIR: '/asset-output/',
|
|
42
|
+
...props.bundlingEnvironment
|
|
43
|
+
},
|
|
44
|
+
outputType: aws_cdk_lib_1.BundlingOutput.NOT_ARCHIVED,
|
|
45
|
+
...props.bundling,
|
|
46
|
+
}
|
|
47
|
+
})
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
exports.StandardFunction = StandardFunction;
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhbmRhcmQtZnVuY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJzdGFuZGFyZC1mdW5jdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFFQSw2Q0FBNEQ7QUFDNUQsMkNBQTBDO0FBQzFDLHVEQUFzRTtBQUV0RSwyREFBOEU7QUFnRjlFLE1BQWEsZ0JBQWlCLFNBQVEsb0NBQWdCO0lBRXBELFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBMkI7O1FBRW5FLE1BQU0sS0FBSyxHQUErQixLQUFLLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7WUFDakYsU0FBUyxDQUFDLFNBQWlCLEVBQUUsT0FBd0I7O2dCQUNuRCxJQUFJO29CQUNGLElBQUksQ0FBQyxLQUFLLENBQUMsd0JBQXdCLEVBQUUsRUFBQzt3QkFDcEMsT0FBTyxLQUFLLENBQUM7cUJBQ2Q7aUJBQ0Y7Z0JBQUMsV0FBTTtvQkFDTixPQUFPLEtBQUssQ0FBQztpQkFDZDtnQkFDRCxPQUFPLHFCQUFXLENBQUMsV0FBVyxDQUFDO29CQUM3QixNQUFNLFFBQUUsS0FBSyxDQUFDLGNBQWMsbUNBQUUsS0FBSyxDQUFDLHFCQUFxQjtvQkFDekQsZ0JBQWdCLEVBQUUsS0FBSyxDQUFDLEtBQUs7b0JBQzdCLFdBQVcsRUFBRTt3QkFDWCxHQUFHLE9BQU8sQ0FBQyxXQUFXO3dCQUN0Qix1QkFBdUIsRUFBRSxTQUFTO3FCQUNuQztpQkFDRixDQUFDLENBQUM7WUFDTCxDQUFDO1NBQ0YsQ0FBQTtRQUVELE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxJQUFJLFFBQUUsS0FBSyxDQUFDLGNBQWMsbUNBQUUsS0FBSyxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFFNUgsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUU7WUFDZixHQUFHLEtBQUs7WUFDUixJQUFJLEVBQUUsaUJBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRTtnQkFDaEMsUUFBUSxFQUFFO29CQUNSLEtBQUssRUFBRSxLQUFLLENBQUMsb0JBQW9CO29CQUNqQyxLQUFLO29CQUNMLE9BQU87b0JBQ1AsV0FBVyxFQUFFO3dCQUNYLHVCQUF1QixFQUFFLGdCQUFnQjt3QkFDekMsR0FBRyxLQUFLLENBQUMsbUJBQW1CO3FCQUM3QjtvQkFDRCxVQUFVLEVBQUUsNEJBQWMsQ0FBQyxZQUFZO29CQUN2QyxHQUFHLEtBQUssQ0FBQyxRQUFRO2lCQUNsQjthQUNGLENBQUM7U0FDSCxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0Y7QUEzQ0QsNENBMkNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb25zdHJ1Y3R9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQge0RvY2tlckltYWdlLCBJTG9jYWxCdW5kbGluZ30gZnJvbSBcImF3cy1jZGstbGliL2NvcmUvbGliL2J1bmRsaW5nXCI7XG5pbXBvcnQge0J1bmRsaW5nT3B0aW9ucywgQnVuZGxpbmdPdXRwdXR9IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0IHtTaGVsbEhlbHBlcn0gZnJvbSBcIi4uLy4uL2hlbHBlcnNcIjtcbmltcG9ydCB7Q29kZSwgRnVuY3Rpb25PcHRpb25zLCBSdW50aW1lfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWxhbWJkYVwiO1xuaW1wb3J0IHtGdW5jdGlvbkFsYXJtc09wdGlvbnN9IGZyb20gXCIuL2Z1bmN0aW9uLWFsYXJtc1wiO1xuaW1wb3J0IHtEZXBsb3llZEZ1bmN0aW9uT3B0aW9ucywgRXh0ZW5kZWRGdW5jdGlvbn0gZnJvbSBcIi4vZXh0ZW5kZWQtZnVuY3Rpb25cIjtcblxuLyoqXG4gKiBPcHRpb25zIGZvciBCdW5kbGVkRnVuY3Rpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3RhbmRhcmRGdW5jdGlvbk9wdGlvbnMge1xuXG4gIC8qKlxuICAgKiBUdXJucyBvZmYgbG9jYWwgYnVuZGxpbmcuXG4gICAqXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBkaXNhYmxlTG9jYWxCdW5kbGluZz86IGJvb2xlYW5cblxuICAvKipcbiAgICogVHVybnMgb2ZmIGRvY2tlciBidW5kbGluZy5cbiAgICpcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGRpc2FibGVEb2NrZXJCdW5kbGluZz86IGJvb2xlYW5cblxuICAvKipcbiAgICogT3ZlcnJpZGVzIHRoZSBkZWZhdWx0IGJ1bmRsaW5nIHNjcmlwdC5cbiAgICovXG4gIHJlYWRvbmx5IGJ1bmRsaW5nU2NyaXB0Pzogc3RyaW5nXG5cbiAgLyoqXG4gICAqIEFkZGl0aW9uYWwgZW52aXJvbm1lbnQgdmFyaWFibGUgdG8gYmUgcGFzc2VkIHRvIHRoZSBidW5kbGluZyBzY3JpcHQuXG4gICAqL1xuICByZWFkb25seSBidW5kbGluZ0Vudmlyb25tZW50Pzoge1xuICAgIFtrZXk6IHN0cmluZ106IHN0cmluZztcbiAgfTtcblxuICAvKipcbiAgICogQnVuZGxpbmcgb3B0aW9ucyB0byB1c2UgZm9yIHRoaXMgZnVuY3Rpb24uIFVzZSB0aGlzIHRvIHNwZWNpZnkgY3VzdG9tIGJ1bmRsaW5nIG9wdGlvbnMgbGlrZVxuICAgKiB0aGUgYnVuZGxpbmcgRG9ja2VyIGltYWdlLCBhc3NldCBoYXNoIHR5cGUsIGN1c3RvbSBoYXNoLCBhcmNoaXRlY3R1cmUsIGV0Yy5cbiAgICpcbiAgICogQGRlZmF1bHRcbiAgICovXG4gIHJlYWRvbmx5IGJ1bmRsaW5nPzogQnVuZGxpbmdPcHRpb25zO1xuXG4gIC8qKlxuICAgKiBQYXRoIHRvIHRoZSBzb3VyY2Ugb2YgdGhlIGZ1bmN0aW9uLlxuICAgKlxuICAgKiBFeGFtcGxlOiBwYXRoLmpvaW4oX19kaXJuYW1lLCAnLi4nLCAnbXlsYW1iZGEnKVxuICAgKi9cbiAgcmVhZG9ubHkgZW50cnk6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBCdW5kbGVkRnVuY3Rpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCdW5kbGVkRnVuY3Rpb25Qcm9wcyBleHRlbmRzIEZ1bmN0aW9uT3B0aW9ucywgRnVuY3Rpb25BbGFybXNPcHRpb25zLCBEZXBsb3llZEZ1bmN0aW9uT3B0aW9ucywgU3RhbmRhcmRGdW5jdGlvbk9wdGlvbnMge1xuXG4gIC8qKlxuICAgKiBDYWxsYmFjayBmdW5jdGlvbiB0byBjaGVjayBpZiBsb2NhbCBidW5kbGluZyBpcyBzdXBwb3J0ZWQuXG4gICAqL1xuICByZWFkb25seSBpc0xvY2FsQnVuZGxpbmdTdXBwb3J0ZWQ6ICgpID0+IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFRoZSBkZWZhdWx0IGJ1bmRsaW5nIHNjcmlwdCB0byB1c2UuXG4gICAqL1xuICByZWFkb25seSBkZWZhdWx0QnVuZGxpbmdTY3JpcHQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGRlZmF1bHQgYnVuZGxpbmcgaW1hZ2UgdG8gdXNlLlxuICAgKi9cbiAgcmVhZG9ubHkgZGVmYXVsdEJ1bmRsaW5nSW1hZ2U6IERvY2tlckltYWdlO1xuXG4gIC8qKlxuICAgKiBUaGUgcnVudGltZSBlbnZpcm9ubWVudCBmb3IgdGhlIExhbWJkYSBmdW5jdGlvbi5cbiAgICovXG4gIHJlYWRvbmx5IHJ1bnRpbWU6IFJ1bnRpbWU7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBtZXRob2QgdG8gZXhlY3V0ZSB0aGUgTGFtYmRhIGZ1bmN0aW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgaGFuZGxlcjogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgU3RhbmRhcmRGdW5jdGlvbiBleHRlbmRzIEV4dGVuZGVkRnVuY3Rpb24ge1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBCdW5kbGVkRnVuY3Rpb25Qcm9wcykge1xuXG4gICAgY29uc3QgbG9jYWw6IElMb2NhbEJ1bmRsaW5nIHwgdW5kZWZpbmVkID0gcHJvcHMuZGlzYWJsZUxvY2FsQnVuZGxpbmcgPyB1bmRlZmluZWQgOiB7XG4gICAgICB0cnlCdW5kbGUob3V0cHV0RGlyOiBzdHJpbmcsIG9wdGlvbnM6IEJ1bmRsaW5nT3B0aW9ucyk6IGJvb2xlYW4ge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIGlmICghcHJvcHMuaXNMb2NhbEJ1bmRsaW5nU3VwcG9ydGVkKCkpe1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBjYXRjaCB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBTaGVsbEhlbHBlci5leGVjdXRlQmFzaCh7XG4gICAgICAgICAgc2NyaXB0OiBwcm9wcy5idW5kbGluZ1NjcmlwdD8/cHJvcHMuZGVmYXVsdEJ1bmRsaW5nU2NyaXB0LFxuICAgICAgICAgIHdvcmtpbmdEaXJlY3Rvcnk6IHByb3BzLmVudHJ5LFxuICAgICAgICAgIGVudmlyb25tZW50OiB7XG4gICAgICAgICAgICAuLi5vcHRpb25zLmVudmlyb25tZW50LFxuICAgICAgICAgICAgQ0RLX0JVTkRMSU5HX09VVFBVVF9ESVI6IG91dHB1dERpcixcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IGNvbW1hbmQgPSBwcm9wcy5kaXNhYmxlRG9ja2VyQnVuZGxpbmcgPyB1bmRlZmluZWQgOiBbJ2Jhc2gnLCAnLWMnLCBwcm9wcy5idW5kbGluZ1NjcmlwdD8/cHJvcHMuZGVmYXVsdEJ1bmRsaW5nU2NyaXB0XTtcblxuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgLi4ucHJvcHMsXG4gICAgICBjb2RlOiBDb2RlLmZyb21Bc3NldChwcm9wcy5lbnRyeSwge1xuICAgICAgICBidW5kbGluZzoge1xuICAgICAgICAgIGltYWdlOiBwcm9wcy5kZWZhdWx0QnVuZGxpbmdJbWFnZSxcbiAgICAgICAgICBsb2NhbCxcbiAgICAgICAgICBjb21tYW5kLFxuICAgICAgICAgIGVudmlyb25tZW50OiB7XG4gICAgICAgICAgICBDREtfQlVORExJTkdfT1VUUFVUX0RJUjogJy9hc3NldC1vdXRwdXQvJyxcbiAgICAgICAgICAgIC4uLnByb3BzLmJ1bmRsaW5nRW52aXJvbm1lbnRcbiAgICAgICAgICB9LFxuICAgICAgICAgIG91dHB1dFR5cGU6IEJ1bmRsaW5nT3V0cHV0Lk5PVF9BUkNISVZFRCxcbiAgICAgICAgICAuLi5wcm9wcy5idW5kbGluZyxcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { FunctionOptions, Runtime } from 'aws-cdk-lib/aws-lambda';
|
|
2
2
|
import { Construct } from "constructs";
|
|
3
|
-
import {
|
|
3
|
+
import { StandardFunction, StandardFunctionOptions } from "./standard-function";
|
|
4
4
|
import { DeployedFunctionOptions } from "./extended-function";
|
|
5
5
|
import { FunctionAlarmsOptions } from "./function-alarms";
|
|
6
6
|
/**
|
|
7
7
|
* Properties for BundledPythonFunction.
|
|
8
8
|
*/
|
|
9
|
-
export interface BundledPythonFunctionProps extends FunctionOptions, FunctionAlarmsOptions, DeployedFunctionOptions,
|
|
9
|
+
export interface BundledPythonFunctionProps extends FunctionOptions, FunctionAlarmsOptions, DeployedFunctionOptions, StandardFunctionOptions {
|
|
10
10
|
/**
|
|
11
11
|
* The path (relative to entry) to the index file containing the exported handler.
|
|
12
12
|
*
|
|
@@ -29,7 +29,7 @@ export interface BundledPythonFunctionProps extends FunctionOptions, FunctionAla
|
|
|
29
29
|
/**
|
|
30
30
|
* Python based Lambda Function
|
|
31
31
|
*/
|
|
32
|
-
export declare class
|
|
32
|
+
export declare class StandardPythonFunction extends StandardFunction {
|
|
33
33
|
static isLocalBundlingSupported(): boolean;
|
|
34
34
|
/**
|
|
35
35
|
* Creates a new Lambda Function
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.StandardPythonFunction = void 0;
|
|
4
|
+
const aws_lambda_1 = require("aws-cdk-lib/aws-lambda");
|
|
5
|
+
const aws_cdk_lib_1 = require("aws-cdk-lib");
|
|
6
|
+
const aws_logs_1 = require("aws-cdk-lib/aws-logs");
|
|
7
|
+
const helpers_1 = require("../../helpers");
|
|
8
|
+
const standard_function_1 = require("./standard-function");
|
|
9
|
+
const path = require("path");
|
|
10
|
+
const fs = require("fs");
|
|
11
|
+
/**
|
|
12
|
+
* Python based Lambda Function
|
|
13
|
+
*/
|
|
14
|
+
class StandardPythonFunction extends standard_function_1.StandardFunction {
|
|
15
|
+
static isLocalBundlingSupported() {
|
|
16
|
+
return helpers_1.ShellHelper.pythonVersion() !== null;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Creates a new Lambda Function
|
|
20
|
+
*/
|
|
21
|
+
constructor(scope, id, props) {
|
|
22
|
+
var _a, _b, _c;
|
|
23
|
+
const runtime = (_a = props.runtime) !== null && _a !== void 0 ? _a : aws_lambda_1.Runtime.PYTHON_3_9;
|
|
24
|
+
if (runtime.family !== aws_lambda_1.RuntimeFamily.PYTHON) {
|
|
25
|
+
throw new Error('Runtime must be a Python runtime');
|
|
26
|
+
}
|
|
27
|
+
const handler = ((_b = props.index) !== null && _b !== void 0 ? _b : 'index.py').replace('.py', '') + '.' + ((_c = props.handler) !== null && _c !== void 0 ? _c : 'handler');
|
|
28
|
+
const defaultBundlingScript = fs.readFileSync(path.join(path.dirname(fs.realpathSync(__filename)), 'bundle-python.sh'), 'utf-8');
|
|
29
|
+
super(scope, id, {
|
|
30
|
+
// defaults which may be overridden by ...props
|
|
31
|
+
tracing: aws_lambda_1.Tracing.PASS_THROUGH,
|
|
32
|
+
logRetention: aws_logs_1.RetentionDays.THREE_DAYS,
|
|
33
|
+
architecture: aws_lambda_1.Architecture.ARM_64,
|
|
34
|
+
memorySize: 768,
|
|
35
|
+
timeout: aws_cdk_lib_1.Duration.seconds(30),
|
|
36
|
+
...props,
|
|
37
|
+
bundlingEnvironment: {
|
|
38
|
+
PIP_PROGRESS_BAR: 'off',
|
|
39
|
+
PIP_DISABLE_PIP_VERSION_CHECK: '1',
|
|
40
|
+
...props.bundlingEnvironment
|
|
41
|
+
},
|
|
42
|
+
runtime,
|
|
43
|
+
handler,
|
|
44
|
+
defaultBundlingScript,
|
|
45
|
+
defaultBundlingImage: runtime.bundlingImage,
|
|
46
|
+
isLocalBundlingSupported: StandardPythonFunction.isLocalBundlingSupported
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
exports.StandardPythonFunction = StandardPythonFunction;
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhbmRhcmQtcHl0aG9uLWZ1bmN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsic3RhbmRhcmQtcHl0aG9uLWZ1bmN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHVEQUFzRztBQUV0Ryw2Q0FBcUM7QUFDckMsbURBQW1EO0FBQ25ELDJDQUEwQztBQUMxQywyREFBOEU7QUFHOUUsNkJBQTZCO0FBQzdCLHlCQUF5QjtBQTZCekI7O0dBRUc7QUFDSCxNQUFhLHNCQUF1QixTQUFRLG9DQUFnQjtJQUUxRCxNQUFNLENBQUMsd0JBQXdCO1FBQzdCLE9BQU8scUJBQVcsQ0FBQyxhQUFhLEVBQUUsS0FBSyxJQUFJLENBQUM7SUFDOUMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFpQzs7UUFFekUsTUFBTSxPQUFPLFNBQUcsS0FBSyxDQUFDLE9BQU8sbUNBQUUsb0JBQU8sQ0FBQyxVQUFVLENBQUE7UUFDakQsSUFBSSxPQUFPLENBQUMsTUFBTSxLQUFLLDBCQUFhLENBQUMsTUFBTSxFQUFFO1lBQzNDLE1BQU0sSUFBSSxLQUFLLENBQUMsa0NBQWtDLENBQUMsQ0FBQztTQUNyRDtRQUVELE1BQU0sT0FBTyxHQUFHLE9BQUMsS0FBSyxDQUFDLEtBQUssbUNBQUUsVUFBVSxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsR0FBRyxHQUFHLEdBQUcsT0FBQyxLQUFLLENBQUMsT0FBTyxtQ0FBRSxTQUFTLENBQUMsQ0FBQztRQUNoRyxNQUFNLHFCQUFxQixHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLENBQUMsRUFBRSxrQkFBa0IsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBRWpJLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ2YsK0NBQStDO1lBQy9DLE9BQU8sRUFBRSxvQkFBTyxDQUFDLFlBQVk7WUFDN0IsWUFBWSxFQUFFLHdCQUFhLENBQUMsVUFBVTtZQUN0QyxZQUFZLEVBQUUseUJBQVksQ0FBQyxNQUFNO1lBQ2pDLFVBQVUsRUFBRSxHQUFHO1lBQ2YsT0FBTyxFQUFFLHNCQUFRLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUM3QixHQUFHLEtBQUs7WUFDUixtQkFBbUIsRUFBRTtnQkFDbkIsZ0JBQWdCLEVBQUUsS0FBSztnQkFDdkIsNkJBQTZCLEVBQUUsR0FBRztnQkFDbEMsR0FBRyxLQUFLLENBQUMsbUJBQW1CO2FBQzdCO1lBQ0QsT0FBTztZQUNQLE9BQU87WUFDUCxxQkFBcUI7WUFDckIsb0JBQW9CLEVBQUUsT0FBTyxDQUFDLGFBQWE7WUFDM0Msd0JBQXdCLEVBQUUsc0JBQXNCLENBQUMsd0JBQXdCO1NBQzFFLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQXZDRCx3REF1Q0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FyY2hpdGVjdHVyZSwgRnVuY3Rpb25PcHRpb25zLCBSdW50aW1lLCBSdW50aW1lRmFtaWx5LCBUcmFjaW5nfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtbGFtYmRhJztcbmltcG9ydCB7Q29uc3RydWN0fSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHtEdXJhdGlvbn0gZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQge1JldGVudGlvbkRheXN9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtbG9nc1wiO1xuaW1wb3J0IHtTaGVsbEhlbHBlcn0gZnJvbSBcIi4uLy4uL2hlbHBlcnNcIjtcbmltcG9ydCB7U3RhbmRhcmRGdW5jdGlvbiwgU3RhbmRhcmRGdW5jdGlvbk9wdGlvbnN9IGZyb20gXCIuL3N0YW5kYXJkLWZ1bmN0aW9uXCI7XG5pbXBvcnQge0RlcGxveWVkRnVuY3Rpb25PcHRpb25zfSBmcm9tIFwiLi9leHRlbmRlZC1mdW5jdGlvblwiO1xuaW1wb3J0IHtGdW5jdGlvbkFsYXJtc09wdGlvbnN9IGZyb20gXCIuL2Z1bmN0aW9uLWFsYXJtc1wiO1xuaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCAqIGFzIGZzIGZyb20gJ2ZzJztcblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBCdW5kbGVkUHl0aG9uRnVuY3Rpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQnVuZGxlZFB5dGhvbkZ1bmN0aW9uUHJvcHMgZXh0ZW5kcyBGdW5jdGlvbk9wdGlvbnMsIEZ1bmN0aW9uQWxhcm1zT3B0aW9ucywgRGVwbG95ZWRGdW5jdGlvbk9wdGlvbnMsIFN0YW5kYXJkRnVuY3Rpb25PcHRpb25zIHtcblxuICAvKipcbiAgICogVGhlIHBhdGggKHJlbGF0aXZlIHRvIGVudHJ5KSB0byB0aGUgaW5kZXggZmlsZSBjb250YWluaW5nIHRoZSBleHBvcnRlZCBoYW5kbGVyLlxuICAgKlxuICAgKiBAZGVmYXVsdCAnaW5kZXgucHknXG4gICAqL1xuICByZWFkb25seSBpbmRleD86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIGV4cG9ydGVkIGhhbmRsZXIgaW4gdGhlIGluZGV4IGZpbGUuXG4gICAqXG4gICAqIEBkZWZhdWx0ICdoYW5kbGVyJ1xuICAgKi9cbiAgcmVhZG9ubHkgaGFuZGxlcj86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHJ1bnRpbWUgZW52aXJvbm1lbnQuIE9ubHkgcnVudGltZXMgb2YgdGhlIFB5dGhvbiBmYW1pbHkgYXJlIHN1cHBvcnRlZC5cbiAgICpcbiAgICogQGRlZmF1bHQgUnVudGltZS5QWVRIT05fM185XG4gICAqL1xuICByZWFkb25seSBydW50aW1lPzogUnVudGltZTtcbn1cblxuLyoqXG4gKiBQeXRob24gYmFzZWQgTGFtYmRhIEZ1bmN0aW9uXG4gKi9cbmV4cG9ydCBjbGFzcyBTdGFuZGFyZFB5dGhvbkZ1bmN0aW9uIGV4dGVuZHMgU3RhbmRhcmRGdW5jdGlvbiB7XG5cbiAgc3RhdGljIGlzTG9jYWxCdW5kbGluZ1N1cHBvcnRlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gU2hlbGxIZWxwZXIucHl0aG9uVmVyc2lvbigpICE9PSBudWxsO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgTGFtYmRhIEZ1bmN0aW9uXG4gICAqL1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogQnVuZGxlZFB5dGhvbkZ1bmN0aW9uUHJvcHMpIHtcblxuICAgIGNvbnN0IHJ1bnRpbWUgPSBwcm9wcy5ydW50aW1lPz9SdW50aW1lLlBZVEhPTl8zXzlcbiAgICBpZiAocnVudGltZS5mYW1pbHkgIT09IFJ1bnRpbWVGYW1pbHkuUFlUSE9OKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1J1bnRpbWUgbXVzdCBiZSBhIFB5dGhvbiBydW50aW1lJyk7XG4gICAgfVxuXG4gICAgY29uc3QgaGFuZGxlciA9IChwcm9wcy5pbmRleD8/J2luZGV4LnB5JykucmVwbGFjZSgnLnB5JywgJycpICsgJy4nICsgKHByb3BzLmhhbmRsZXI/PydoYW5kbGVyJyk7XG4gICAgY29uc3QgZGVmYXVsdEJ1bmRsaW5nU2NyaXB0ID0gZnMucmVhZEZpbGVTeW5jKHBhdGguam9pbihwYXRoLmRpcm5hbWUoZnMucmVhbHBhdGhTeW5jKF9fZmlsZW5hbWUpKSwgJ2J1bmRsZS1weXRob24uc2gnKSwgJ3V0Zi04Jyk7XG5cbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIC8vIGRlZmF1bHRzIHdoaWNoIG1heSBiZSBvdmVycmlkZGVuIGJ5IC4uLnByb3BzXG4gICAgICB0cmFjaW5nOiBUcmFjaW5nLlBBU1NfVEhST1VHSCxcbiAgICAgIGxvZ1JldGVudGlvbjogUmV0ZW50aW9uRGF5cy5USFJFRV9EQVlTLFxuICAgICAgYXJjaGl0ZWN0dXJlOiBBcmNoaXRlY3R1cmUuQVJNXzY0LFxuICAgICAgbWVtb3J5U2l6ZTogNzY4LFxuICAgICAgdGltZW91dDogRHVyYXRpb24uc2Vjb25kcygzMCksXG4gICAgICAuLi5wcm9wcyxcbiAgICAgIGJ1bmRsaW5nRW52aXJvbm1lbnQ6IHtcbiAgICAgICAgUElQX1BST0dSRVNTX0JBUjogJ29mZicsXG4gICAgICAgIFBJUF9ESVNBQkxFX1BJUF9WRVJTSU9OX0NIRUNLOiAnMScsXG4gICAgICAgIC4uLnByb3BzLmJ1bmRsaW5nRW52aXJvbm1lbnRcbiAgICAgIH0sXG4gICAgICBydW50aW1lLFxuICAgICAgaGFuZGxlcixcbiAgICAgIGRlZmF1bHRCdW5kbGluZ1NjcmlwdCxcbiAgICAgIGRlZmF1bHRCdW5kbGluZ0ltYWdlOiBydW50aW1lLmJ1bmRsaW5nSW1hZ2UsXG4gICAgICBpc0xvY2FsQnVuZGxpbmdTdXBwb3J0ZWQ6IFN0YW5kYXJkUHl0aG9uRnVuY3Rpb24uaXNMb2NhbEJ1bmRsaW5nU3VwcG9ydGVkXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -4,12 +4,12 @@ import { QueueAlarms, QueueAlarmsOptions } from "./queue-alarms";
|
|
|
4
4
|
/**
|
|
5
5
|
* Properties for ObservedQueue.
|
|
6
6
|
*/
|
|
7
|
-
export interface
|
|
7
|
+
export interface ExtendedQueueProps extends QueueProps, QueueAlarmsOptions {
|
|
8
8
|
}
|
|
9
9
|
/**
|
|
10
10
|
* Queue with CloudWatch alarms.
|
|
11
11
|
*/
|
|
12
|
-
export declare class
|
|
12
|
+
export declare class ExtendedQueue extends Queue {
|
|
13
13
|
readonly queueAlarms: QueueAlarms;
|
|
14
|
-
constructor(scope: Construct, id: string, props:
|
|
14
|
+
constructor(scope: Construct, id: string, props: ExtendedQueueProps);
|
|
15
15
|
}
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.ExtendedQueue = void 0;
|
|
4
4
|
const aws_sqs_1 = require("aws-cdk-lib/aws-sqs");
|
|
5
5
|
const queue_alarms_1 = require("./queue-alarms");
|
|
6
6
|
/**
|
|
7
7
|
* Queue with CloudWatch alarms.
|
|
8
8
|
*/
|
|
9
|
-
class
|
|
9
|
+
class ExtendedQueue extends aws_sqs_1.Queue {
|
|
10
10
|
constructor(scope, id, props) {
|
|
11
11
|
super(scope, id, props);
|
|
12
|
-
this.queueAlarms = new queue_alarms_1.QueueAlarms(this,
|
|
12
|
+
this.queueAlarms = new queue_alarms_1.QueueAlarms(this, "Alarms", {
|
|
13
13
|
queue: this,
|
|
14
14
|
...props
|
|
15
15
|
});
|
|
16
16
|
}
|
|
17
17
|
}
|
|
18
|
-
exports.
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
18
|
+
exports.ExtendedQueue = ExtendedQueue;
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZW5kZWQtcXVldWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJleHRlbmRlZC1xdWV1ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxpREFBc0Q7QUFFdEQsaURBQStEO0FBTy9EOztHQUVHO0FBQ0gsTUFBYSxhQUFjLFNBQVEsZUFBSztJQUl0QyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQXlCO1FBQ2pFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBRXhCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSwwQkFBVyxDQUFDLElBQUksRUFBRSxRQUFRLEVBQUU7WUFDakQsS0FBSyxFQUFFLElBQUk7WUFDWCxHQUFHLEtBQUs7U0FDVCxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0Y7QUFaRCxzQ0FZQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7UXVldWUsIFF1ZXVlUHJvcHN9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3Mtc3FzXCI7XG5pbXBvcnQge0NvbnN0cnVjdH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7UXVldWVBbGFybXMsIFF1ZXVlQWxhcm1zT3B0aW9uc30gZnJvbSBcIi4vcXVldWUtYWxhcm1zXCI7XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgT2JzZXJ2ZWRRdWV1ZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFeHRlbmRlZFF1ZXVlUHJvcHMgZXh0ZW5kcyBRdWV1ZVByb3BzLCBRdWV1ZUFsYXJtc09wdGlvbnMge31cblxuLyoqXG4gKiBRdWV1ZSB3aXRoIENsb3VkV2F0Y2ggYWxhcm1zLlxuICovXG5leHBvcnQgY2xhc3MgRXh0ZW5kZWRRdWV1ZSBleHRlbmRzIFF1ZXVlIHtcblxuICByZWFkb25seSBxdWV1ZUFsYXJtczogUXVldWVBbGFybXM7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IEV4dGVuZGVkUXVldWVQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwgcHJvcHMpO1xuXG4gICAgdGhpcy5xdWV1ZUFsYXJtcyA9IG5ldyBRdWV1ZUFsYXJtcyh0aGlzLCBcIkFsYXJtc1wiLCB7XG4gICAgICBxdWV1ZTogdGhpcyxcbiAgICAgIC4uLnByb3BzXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
package/aws-sqs/lib/index.d.ts
CHANGED
package/aws-sqs/lib/index.js
CHANGED
|
@@ -11,6 +11,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
11
11
|
};
|
|
12
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
13
|
__exportStar(require("./queue-alarms"), exports);
|
|
14
|
-
__exportStar(require("./
|
|
14
|
+
__exportStar(require("./extended-queue"), exports);
|
|
15
15
|
__exportStar(require("./standard-queue"), exports);
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBQSxpREFBK0I7QUFDL0IsbURBQWlDO0FBQ2pDLG1EQUFpQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcXVldWUtYWxhcm1zJztcbmV4cG9ydCAqIGZyb20gJy4vZXh0ZW5kZWQtcXVldWUnO1xuZXhwb3J0ICogZnJvbSAnLi9zdGFuZGFyZC1xdWV1ZSc7XG4iXX0=
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { Duration } from "aws-cdk-lib";
|
|
2
|
-
import { ITopic } from "aws-cdk-lib/aws-sns";
|
|
3
|
-
import { Alarm, IAlarmAction } from "aws-cdk-lib/aws-cloudwatch";
|
|
4
|
-
import { MonitoringFacade } from "cdk-monitoring-constructs";
|
|
5
|
-
import { IDashboardFactory } from "cdk-monitoring-constructs";
|
|
6
2
|
import { Queue } from "aws-cdk-lib/aws-sqs";
|
|
7
3
|
import { Construct } from "constructs";
|
|
8
|
-
|
|
4
|
+
import { AlarmsBase, AlarmsCategoryOptions, AlarmsOptions } from "../../aws-monitoring";
|
|
5
|
+
/**
|
|
6
|
+
* Category options for CloudWatch alarms for Queues.
|
|
7
|
+
*/
|
|
8
|
+
export interface QueueAlarmsCategoryOptions extends AlarmsCategoryOptions {
|
|
9
9
|
/**
|
|
10
10
|
* Minimum number of messages visible.
|
|
11
11
|
*/
|
|
@@ -46,16 +46,11 @@ export interface QueueAlarmsCategoryProps {
|
|
|
46
46
|
* Maximum number of incoming messages in the dead-letter queue
|
|
47
47
|
*/
|
|
48
48
|
readonly deadLetterQueueMaxIncoming?: number;
|
|
49
|
-
/**
|
|
50
|
-
* Topics to send alarm notifications
|
|
51
|
-
*/
|
|
52
|
-
readonly notifyTopics?: [ITopic];
|
|
53
|
-
/**
|
|
54
|
-
* Actions to send alarm notifications
|
|
55
|
-
*/
|
|
56
|
-
readonly notifyActions?: [IAlarmAction];
|
|
57
49
|
}
|
|
58
|
-
|
|
50
|
+
/**
|
|
51
|
+
* Options for CloudWatch alarms for Queues.
|
|
52
|
+
*/
|
|
53
|
+
export interface QueueAlarmsOptions extends AlarmsOptions<QueueAlarmsCategoryOptions> {
|
|
59
54
|
/**
|
|
60
55
|
* Flag to create alarms.
|
|
61
56
|
*
|
|
@@ -63,42 +58,9 @@ export interface QueueAlarmsOptions {
|
|
|
63
58
|
*/
|
|
64
59
|
readonly createAlarms?: boolean;
|
|
65
60
|
/**
|
|
66
|
-
*
|
|
67
|
-
*
|
|
68
|
-
* If no properties are provided, a set of default alarms are created.
|
|
69
|
-
*/
|
|
70
|
-
readonly criticalAlarmProps?: QueueAlarmsCategoryProps;
|
|
71
|
-
/**
|
|
72
|
-
* Alarm threshold for warning alarms.
|
|
73
|
-
*
|
|
74
|
-
* If no properties are provided, a set of default alarms are created.
|
|
75
|
-
*/
|
|
76
|
-
readonly warningAlarmProps?: QueueAlarmsCategoryProps;
|
|
77
|
-
/**
|
|
78
|
-
* Main entry point for monitoring.
|
|
79
|
-
*
|
|
80
|
-
* If no value is provided, a default facade will be created.
|
|
81
|
-
*/
|
|
82
|
-
readonly monitoringFacade?: MonitoringFacade;
|
|
83
|
-
/**
|
|
84
|
-
* The DashboardFactory to use when generating CloudWatch dashboards.
|
|
85
|
-
*
|
|
86
|
-
* If not defined, dashboards are not generated.
|
|
87
|
-
*/
|
|
88
|
-
readonly dashboardFactory?: IDashboardFactory;
|
|
89
|
-
/**
|
|
90
|
-
* Prefix used for generated alarms.
|
|
91
|
-
*
|
|
92
|
-
* @default Stack.of(this).stackName;
|
|
61
|
+
* Name to use for alarm, default is construct ID.
|
|
93
62
|
*/
|
|
94
|
-
readonly
|
|
95
|
-
}
|
|
96
|
-
/**
|
|
97
|
-
* Used to disambiguate warning and critical alarms.
|
|
98
|
-
*/
|
|
99
|
-
export declare enum QueueAlarmCategory {
|
|
100
|
-
Critical = "Critical",
|
|
101
|
-
Warning = "Warning"
|
|
63
|
+
readonly alarmFriendlyName?: string;
|
|
102
64
|
}
|
|
103
65
|
/**
|
|
104
66
|
* Properties for QueueAlarms
|
|
@@ -112,22 +74,7 @@ export interface QueueAlarmsProps extends QueueAlarmsOptions {
|
|
|
112
74
|
/**
|
|
113
75
|
* Creates CloudWatch alarms for Queues.
|
|
114
76
|
*/
|
|
115
|
-
export declare class QueueAlarms extends
|
|
116
|
-
|
|
117
|
-
* The MonitoringFacade instance either passed in or generated.
|
|
118
|
-
*/
|
|
119
|
-
readonly monitoringFacade: MonitoringFacade;
|
|
120
|
-
/**
|
|
121
|
-
* Generated critical alarms.
|
|
122
|
-
*/
|
|
123
|
-
readonly criticalAlarms: Alarm[];
|
|
124
|
-
/**
|
|
125
|
-
* Generated warning alarms.
|
|
126
|
-
*/
|
|
127
|
-
readonly warningAlarms: Alarm[];
|
|
128
|
-
private readonly props;
|
|
129
|
-
private addRecordValue;
|
|
130
|
-
private toRecord;
|
|
131
|
-
private addAlarm;
|
|
77
|
+
export declare class QueueAlarms extends AlarmsBase<QueueAlarmsCategoryOptions, QueueAlarmsProps> {
|
|
78
|
+
private addQueueMonitoring;
|
|
132
79
|
constructor(scope: Construct, id: string, props: QueueAlarmsProps);
|
|
133
80
|
}
|
|
@@ -1,138 +1,49 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.QueueAlarms =
|
|
4
|
-
const aws_cdk_lib_1 = require("aws-cdk-lib");
|
|
5
|
-
const cdk_monitoring_constructs_1 = require("cdk-monitoring-constructs");
|
|
6
|
-
const constructs_1 = require("constructs");
|
|
7
|
-
const aws_cloudwatch_actions_1 = require("aws-cdk-lib/aws-cloudwatch-actions");
|
|
3
|
+
exports.QueueAlarms = void 0;
|
|
8
4
|
const aws_monitoring_1 = require("../../aws-monitoring");
|
|
9
5
|
/**
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
* @param props the properties holding the values
|
|
13
|
-
* @param category the alarm category
|
|
14
|
-
*/
|
|
15
|
-
function getQueueAlarmCategoryProps(props, category) {
|
|
16
|
-
const fprop = category === 'Critical' ? 'criticalAlarmProps' : 'warningAlarmProps';
|
|
17
|
-
return props[fprop];
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* Helper function to combine an array if IAlarmAction and ITopic objects into a single IAlarmAction array.
|
|
21
|
-
*
|
|
22
|
-
* @param actions the actions
|
|
23
|
-
* @param topics the topics
|
|
24
|
-
*/
|
|
25
|
-
function combineActions(actions, topics) {
|
|
26
|
-
const combined = [];
|
|
27
|
-
actions === null || actions === void 0 ? void 0 : actions.forEach((action) => combined.push(action));
|
|
28
|
-
topics === null || topics === void 0 ? void 0 : topics.forEach((topic) => combined.push(new aws_cloudwatch_actions_1.SnsAction(topic)));
|
|
29
|
-
return combined;
|
|
30
|
-
}
|
|
31
|
-
/**
|
|
32
|
-
* Used to disambiguate warning and critical alarms.
|
|
33
|
-
*/
|
|
34
|
-
var QueueAlarmCategory;
|
|
35
|
-
(function (QueueAlarmCategory) {
|
|
36
|
-
QueueAlarmCategory["Critical"] = "Critical";
|
|
37
|
-
QueueAlarmCategory["Warning"] = "Warning";
|
|
38
|
-
})(QueueAlarmCategory = exports.QueueAlarmCategory || (exports.QueueAlarmCategory = {}));
|
|
39
|
-
/**
|
|
40
|
-
* Internal class to assist in generating CustomeAlarmThreshold instances.
|
|
6
|
+
* Creates CloudWatch alarms for Queues.
|
|
41
7
|
*/
|
|
42
|
-
class
|
|
43
|
-
|
|
44
|
-
this.props
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
};
|
|
8
|
+
class QueueAlarms extends aws_monitoring_1.AlarmsBase {
|
|
9
|
+
addQueueMonitoring() {
|
|
10
|
+
if (this.props.queue.deadLetterQueue === undefined) {
|
|
11
|
+
this.monitoringFacade.monitorSqsQueue({
|
|
12
|
+
alarmFriendlyName: this.props.alarmFriendlyName,
|
|
13
|
+
queue: this.props.queue,
|
|
14
|
+
addQueueMinSizeAlarm: this.toRecord('minSize', 'minMessageCount'),
|
|
15
|
+
addQueueMaxSizeAlarm: this.toRecord('maxSize', 'maxMessageCount'),
|
|
16
|
+
addQueueMaxMessageAgeAlarm: this.toRecord('maxAgeInSeconds', 'maxAgeInSeconds', 15),
|
|
17
|
+
addQueueMaxTimeToDrainMessagesAlarm: this.toRecord('maxTimeToDrain', 'maxTimeToDrain'),
|
|
18
|
+
addQueueMinIncomingMessagesAlarm: this.toRecord('minIncoming', 'minIncomingMessagesCount'),
|
|
19
|
+
addQueueMaxIncomingMessagesAlarm: this.toRecord('maxIncoming', 'maxIncomingMessagesCount')
|
|
20
|
+
});
|
|
55
21
|
}
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
22
|
+
else {
|
|
23
|
+
this.monitoringFacade.monitorSqsQueueWithDlq({
|
|
24
|
+
alarmFriendlyName: this.props.alarmFriendlyName,
|
|
25
|
+
queue: this.props.queue,
|
|
26
|
+
deadLetterQueue: this.props.queue.deadLetterQueue.queue,
|
|
27
|
+
addQueueMinSizeAlarm: this.toRecord('minSize', 'minMessageCount'),
|
|
28
|
+
addQueueMaxSizeAlarm: this.toRecord('maxSize', 'maxMessageCount'),
|
|
29
|
+
addQueueMaxMessageAgeAlarm: this.toRecord('maxAgeInSeconds', 'maxAgeInSeconds', 15),
|
|
30
|
+
addQueueMaxTimeToDrainMessagesAlarm: this.toRecord('maxTimeToDrain', 'maxTimeToDrain'),
|
|
31
|
+
addQueueMinIncomingMessagesAlarm: this.toRecord('minIncoming', 'minIncomingMessagesCount'),
|
|
32
|
+
addQueueMaxIncomingMessagesAlarm: this.toRecord('maxIncoming', 'maxIncomingMessagesCount'),
|
|
33
|
+
addDeadLetterQueueMaxSizeAlarm: this.toRecord('deadLetterQueueMaxSize', 'maxMessageCount', 0),
|
|
34
|
+
addDeadLetterQueueMaxMessageAgeAlarm: this.toRecord('deadLetterQueueMaxAgeInSeconds', 'maxAgeInSeconds'),
|
|
35
|
+
addDeadLetterQueueMaxIncomingMessagesAlarm: this.toRecord('deadLetterQueueMaxIncoming', 'maxIncomingMessagesCount'),
|
|
36
|
+
addDeadLetterQueueToSummaryDashboard: true
|
|
37
|
+
});
|
|
62
38
|
}
|
|
63
39
|
}
|
|
64
|
-
}
|
|
65
|
-
// TODO Need to convert to using AlarmsBase
|
|
66
|
-
/**
|
|
67
|
-
* Creates CloudWatch alarms for Queues.
|
|
68
|
-
*/
|
|
69
|
-
class QueueAlarms extends constructs_1.Construct {
|
|
70
40
|
constructor(scope, id, props) {
|
|
71
|
-
var _a
|
|
72
|
-
super(scope, id);
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
this.warningAlarms = [];
|
|
76
|
-
this.monitoringFacade = (_a = props.monitoringFacade) !== null && _a !== void 0 ? _a : new cdk_monitoring_constructs_1.MonitoringFacade(this, 'MonitoringFacade', {
|
|
77
|
-
metricFactoryDefaults: {},
|
|
78
|
-
alarmFactoryDefaults: {
|
|
79
|
-
actionsEnabled: true,
|
|
80
|
-
alarmNamePrefix: (_b = props.alarmNamePrefix) !== null && _b !== void 0 ? _b : `${aws_cdk_lib_1.Stack.of(this).stackName}`
|
|
81
|
-
},
|
|
82
|
-
dashboardFactory: props.dashboardFactory
|
|
83
|
-
});
|
|
84
|
-
if ((_c = props.createAlarms) !== null && _c !== void 0 ? _c : true) {
|
|
85
|
-
if (props.queue.deadLetterQueue === undefined) {
|
|
86
|
-
this.monitoringFacade.monitorSqsQueue({
|
|
87
|
-
queue: props.queue,
|
|
88
|
-
addQueueMinSizeAlarm: this.toRecord('minSize', 'minMessageCount'),
|
|
89
|
-
addQueueMaxSizeAlarm: this.toRecord('maxSize', 'maxMessageCount'),
|
|
90
|
-
addQueueMaxMessageAgeAlarm: this.toRecord('maxAgeInSeconds', 'maxAgeInSeconds', 15),
|
|
91
|
-
addQueueMaxTimeToDrainMessagesAlarm: this.toRecord('maxTimeToDrain', 'maxTimeToDrain'),
|
|
92
|
-
addQueueMinIncomingMessagesAlarm: this.toRecord('minIncoming', 'minIncomingMessagesCount'),
|
|
93
|
-
addQueueMaxIncomingMessagesAlarm: this.toRecord('maxIncoming', 'maxIncomingMessagesCount')
|
|
94
|
-
});
|
|
95
|
-
}
|
|
96
|
-
else {
|
|
97
|
-
this.monitoringFacade.monitorSqsQueueWithDlq({
|
|
98
|
-
queue: props.queue,
|
|
99
|
-
deadLetterQueue: props.queue.deadLetterQueue.queue,
|
|
100
|
-
addQueueMinSizeAlarm: this.toRecord('minSize', 'minMessageCount'),
|
|
101
|
-
addQueueMaxSizeAlarm: this.toRecord('maxSize', 'maxMessageCount'),
|
|
102
|
-
addQueueMaxMessageAgeAlarm: this.toRecord('maxAgeInSeconds', 'maxAgeInSeconds', 15),
|
|
103
|
-
addQueueMaxTimeToDrainMessagesAlarm: this.toRecord('maxTimeToDrain', 'maxTimeToDrain'),
|
|
104
|
-
addQueueMinIncomingMessagesAlarm: this.toRecord('minIncoming', 'minIncomingMessagesCount'),
|
|
105
|
-
addQueueMaxIncomingMessagesAlarm: this.toRecord('maxIncoming', 'maxIncomingMessagesCount'),
|
|
106
|
-
addDeadLetterQueueMaxSizeAlarm: this.toRecord('deadLetterQueueMaxSize', 'maxMessageCount', 0),
|
|
107
|
-
addDeadLetterQueueMaxMessageAgeAlarm: this.toRecord('deadLetterQueueMaxAgeInSeconds', 'maxAgeInSeconds'),
|
|
108
|
-
addDeadLetterQueueMaxIncomingMessagesAlarm: this.toRecord('deadLetterQueueMaxIncoming', 'maxIncomingMessagesCount'),
|
|
109
|
-
addDeadLetterQueueToSummaryDashboard: true
|
|
110
|
-
});
|
|
111
|
-
this.addAlarm(QueueAlarmCategory.Critical, ...this.monitoringFacade.createdAlarmsWithDisambiguator(QueueAlarmCategory.Critical).map((awa) => awa.alarm));
|
|
112
|
-
this.addAlarm(QueueAlarmCategory.Warning, ...this.monitoringFacade.createdAlarmsWithDisambiguator(QueueAlarmCategory.Warning).map((awa) => awa.alarm));
|
|
113
|
-
}
|
|
41
|
+
var _a;
|
|
42
|
+
super(scope, id, props);
|
|
43
|
+
if ((_a = props.createAlarms) !== null && _a !== void 0 ? _a : true) {
|
|
44
|
+
this.addQueueMonitoring();
|
|
114
45
|
}
|
|
115
46
|
}
|
|
116
|
-
addRecordValue(record, category, sprop, tprop, defaultThreshold) {
|
|
117
|
-
const fprops = getQueueAlarmCategoryProps(this.props, category);
|
|
118
|
-
new QueueAlarmFacade({
|
|
119
|
-
prop: tprop,
|
|
120
|
-
threshold: fprops === null || fprops === void 0 ? void 0 : fprops[sprop],
|
|
121
|
-
defaultThreshold,
|
|
122
|
-
topics: fprops === null || fprops === void 0 ? void 0 : fprops.notifyTopics,
|
|
123
|
-
actions: fprops === null || fprops === void 0 ? void 0 : fprops.notifyActions,
|
|
124
|
-
}).addCustomAlarmThreshold(category, record);
|
|
125
|
-
}
|
|
126
|
-
toRecord(sprop, tprop, defaultThreshold) {
|
|
127
|
-
const record = {};
|
|
128
|
-
this.addRecordValue(record, QueueAlarmCategory.Critical, sprop, tprop, defaultThreshold);
|
|
129
|
-
this.addRecordValue(record, QueueAlarmCategory.Warning, sprop, tprop, defaultThreshold);
|
|
130
|
-
return Object.keys(record).length > 0 ? record : undefined;
|
|
131
|
-
}
|
|
132
|
-
addAlarm(category, ...alarm) {
|
|
133
|
-
const arr = category === QueueAlarmCategory.Critical ? this.criticalAlarms : this.warningAlarms;
|
|
134
|
-
arr.push(...alarm);
|
|
135
|
-
}
|
|
136
47
|
}
|
|
137
48
|
exports.QueueAlarms = QueueAlarms;
|
|
138
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVldWUtYWxhcm1zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsicXVldWUtYWxhcm1zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDZDQUE0QztBQUc1Qyx5RUFBMkQ7QUFTM0QsMkNBQXFDO0FBQ3JDLCtFQUE2RDtBQUM3RCx5REFBa0U7QUE2R2xFOzs7OztHQUtHO0FBQ0gsU0FBUywwQkFBMEIsQ0FBQyxLQUF5QixFQUFFLFFBQTRCO0lBQ3pGLE1BQU0sS0FBSyxHQUE2QixRQUFRLEtBQUssVUFBVSxDQUFDLENBQUMsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLENBQUMsbUJBQW1CLENBQUM7SUFDN0csT0FBTyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDdEIsQ0FBQztBQUVEOzs7OztHQUtHO0FBQ0gsU0FBUyxjQUFjLENBQUMsT0FBd0IsRUFBRSxNQUFpQjtJQUNqRSxNQUFNLFFBQVEsR0FBbUIsRUFBRSxDQUFBO0lBQ25DLE9BQU8sYUFBUCxPQUFPLHVCQUFQLE9BQU8sQ0FBRSxPQUFPLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUU7SUFDcEQsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLGtDQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRTtJQUNoRSxPQUFPLFFBQVEsQ0FBQztBQUNsQixDQUFDO0FBRUQ7O0dBRUc7QUFDSCxJQUFZLGtCQUdYO0FBSEQsV0FBWSxrQkFBa0I7SUFDNUIsMkNBQXFCLENBQUE7SUFDckIseUNBQW1CLENBQUE7QUFDckIsQ0FBQyxFQUhXLGtCQUFrQixHQUFsQiwwQkFBa0IsS0FBbEIsMEJBQWtCLFFBRzdCO0FBYUQ7O0dBRUc7QUFDSCxNQUFNLGdCQUFnQjtJQU1wQixZQUFZLEtBQTRCO1FBQ3RDLElB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LE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDN0QsQ0FBQztJQUVPLFFBQVEsQ0FBQyxRQUE0QixFQUFFLEdBQUcsS0FBYztRQUM5RCxNQUFNLEdBQUcsR0FBRyxRQUFRLEtBQUssa0JBQWtCLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDO1FBQ2hHLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQztJQUNyQixDQUFDO0NBaURGO0FBN0ZELGtDQTZGQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RHVyYXRpb24sIFN0YWNrfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7SVRvcGljfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLXNuc1wiO1xuaW1wb3J0IHtBbGFybSwgSUFsYXJtQWN0aW9ufSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWNsb3Vkd2F0Y2hcIjtcbmltcG9ydCB7TW9uaXRvcmluZ0ZhY2FkZX0gZnJvbSBcImNkay1tb25pdG9yaW5nLWNvbnN0cnVjdHNcIjtcbmltcG9ydCB7XG4gIEN1c3RvbUFsYXJtVGhyZXNob2xkLFxuICBJRGFzaGJvYXJkRmFjdG9yeSwgTWF4SW5jb21pbmdNZXNzYWdlc0NvdW50VGhyZXNob2xkLFxuICBNYXhNZXNzYWdlQWdlVGhyZXNob2xkLFxuICBNYXhNZXNzYWdlQ291bnRUaHJlc2hvbGQsIE1heFRpbWVUb0RyYWluVGhyZXNob2xkLCBNaW5JbmNvbWluZ01lc3NhZ2VzQ291bnRUaHJlc2hvbGQsXG4gIE1pbk1lc3NhZ2VDb3VudFRocmVzaG9sZFxufSBmcm9tIFwiY2RrLW1vbml0b3JpbmctY29uc3RydWN0c1wiO1xuaW1wb3J0IHtRdWV1ZX0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1zcXNcIjtcbmltcG9ydCB7Q29uc3RydWN0fSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHtTbnNBY3Rpb259IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtY2xvdWR3YXRjaC1hY3Rpb25zXCI7XG5pbXBvcnQge1N0YW5kYXJkQWxhcm1BY3Rpb25zU3RyYXRlZ3l9IGZyb20gXCIuLi8uLi9hd3MtbW9uaXRvcmluZ1wiO1xuXG5leHBvcnQgaW50ZXJmYWNlIFF1ZXVlQWxhcm1zQ2F0ZWdvcnlQcm9wcyB7XG5cbiAgLyoqXG4gICAqIE1pbmltdW0gbnVtYmVyIG9mIG1lc3NhZ2VzIHZpc2libGUuXG4gICAqL1xuICByZWFkb25seSBtaW5TaXplPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBNYXhpbXVtIG51bWJlciBvZiBtZXNzYWdlcyB2aXNpYmxlLlxuICAgKi9cbiAgcmVhZG9ubHkgbWF4U2l6ZT86IG51bWJlcjtcblxuICAvKipcbiAgICogTWF4aW11bSBhcHByb3hpbWF0ZSBhZ2Ugb2YgdGhlIG9sZGVzdCBtZXNzYWdlIGluIHRoZSBxdWV1ZS5cbiAgICpcbiAgICogQGRlZmF1bHQgMTUgZm9yIGNyaXRpY2FsIGFsYXJtXG4gICAqL1xuICByZWFkb25seSBtYXhBZ2VJblNlY29uZHM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIE1heGltdW0gdGltZSB0byBkcmFpbiB0aGUgcXVldWUuXG4gICAqL1xuICByZWFkb25seSBtYXhUaW1lVG9EcmFpbj86IER1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBNaW5pbXVtIG51bWJlciBvZiBpbmNvbWluZyBtZXNzYWdlcy5cbiAgICovXG4gIHJlYWRvbmx5IG1pbkluY29taW5nPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBNYXhpbXVtIG51bWJlciBvZiBpbmNvbWluZyBtZXNzYWdlcy5cbiAgICovXG4gIHJlYWRvbmx5IG1heEluY29taW5nPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBNYXhpbXVtIG51bWJlciBvZiB2aXNpYmxlIG1lc3NhZ2VzIGluIHRoZSBkZWFkLWxldHRlciBxdWV1ZVxuICAgKlxuICAgKiBAZGVmYXVsdCAwIGZvciBjcml0aWNhbCBhbGFybVxuICAgKi9cbiAgcmVhZG9ubHkgZGVhZExldHRlclF1ZXVlTWF4U2l6ZT86IG51bWJlcjtcblxuICAvKipcbiAgICogTWF4aW11bSBhZ2Ugb2YgdGhlIG9sZGVzdCBtZXNzYWdlcyBpbiB0aGUgZGVhZC1sZXR0ZXIgcXVldWVcbiAgICovXG4gIHJlYWRvbmx5IGRlYWRMZXR0ZXJRdWV1ZU1heEFnZUluU2Vjb25kcz86IG51bWJlcjtcblxuICAvKipcbiAgICogTWF4aW11bSBudW1iZXIgb2YgaW5jb21pbmcgbWVzc2FnZXMgaW4gdGhlIGRlYWQtbGV0dGVyIHF1ZXVlXG4gICAqL1xuICByZWFkb25seSBkZWFkTGV0dGVyUXVldWVNYXhJbmNvbWluZz86IG51bWJlcjtcblxuICAvKipcbiAgICogVG9waWNzIHRvIHNlbmQgYWxhcm0gbm90aWZpY2F0aW9uc1xuICAgKi9cbiAgcmVhZG9ubHkgbm90aWZ5VG9waWNzPzogW0lUb3BpY107XG5cbiAgLyoqXG4gICAqIEFjdGlvbnMgdG8gc2VuZCBhbGFybSBub3RpZmljYXRpb25zXG4gICAqL1xuICByZWFkb25seSBub3RpZnlBY3Rpb25zPzogW0lBbGFybUFjdGlvbl07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUXVldWVBbGFybXNPcHRpb25zIHtcblxuICAvKipcbiAgICogRmxhZyB0byBjcmVhdGUgYWxhcm1zLlxuICAgKlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBjcmVhdGVBbGFybXM/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBBbGFybSB0aHJlc2hvbGRzIGZvciBjcml0aWNhbCBhbGFybXMuXG4gICAqXG4gICAqIElmIG5vIHByb3BlcnRpZXMgYXJlIHByb3ZpZGVkLCBhIHNldCBvZiBkZWZhdWx0IGFsYXJtcyBhcmUgY3JlYXRlZC5cbiAgICovXG4gIHJlYWRvbmx5IGNyaXRpY2FsQWxhcm1Qcm9wcz86IFF1ZXVlQWxhcm1zQ2F0ZWdvcnlQcm9wcztcblxuICAvKipcbiAgICogQWxhcm0gdGhyZXNob2xkIGZvciB3YXJuaW5nIGFsYXJtcy5cbiAgICpcbiAgICogSWYgbm8gcHJvcGVydGllcyBhcmUgcHJvdmlkZWQsIGEgc2V0IG9mIGRlZmF1bHQgYWxhcm1zIGFyZSBjcmVhdGVkLlxuICAgKi9cbiAgcmVhZG9ubHkgd2FybmluZ0FsYXJtUHJvcHM/OiBRdWV1ZUFsYXJtc0NhdGVnb3J5UHJvcHM7XG5cbiAgLyoqXG4gICAqIE1haW4gZW50cnkgcG9pbnQgZm9yIG1vbml0b3JpbmcuXG4gICAqXG4gICAqIElmIG5vIHZhbHVlIGlzIHByb3ZpZGVkLCBhIGRlZmF1bHQgZmFjYWRlIHdpbGwgYmUgY3JlYXRlZC5cbiAgICovXG4gIHJlYWRvbmx5IG1vbml0b3JpbmdGYWNhZGU/OiBNb25pdG9yaW5nRmFjYWRlXG5cbiAgLyoqXG4gICAqIFRoZSBEYXNoYm9hcmRGYWN0b3J5IHRvIHVzZSB3aGVuIGdlbmVyYXRpbmcgQ2xvdWRXYXRjaCBkYXNoYm9hcmRzLlxuICAgKlxuICAgKiBJZiBub3QgZGVmaW5lZCwgZGFzaGJvYXJkcyBhcmUgbm90IGdlbmVyYXRlZC5cbiAgICovXG4gIHJlYWRvbmx5IGRhc2hib2FyZEZhY3Rvcnk/OiBJRGFzaGJvYXJkRmFjdG9yeTtcblxuICAvKipcbiAgICogUHJlZml4IHVzZWQgZm9yIGdlbmVyYXRlZCBhbGFybXMuXG4gICAqXG4gICAqIEBkZWZhdWx0IFN0YWNrLm9mKHRoaXMpLnN0YWNrTmFtZTtcbiAgICovXG4gIHJlYWRvbmx5IGFsYXJtTmFtZVByZWZpeD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBIZWxwZXIgZnVuY3Rpb24gdG8gZ2V0IHRoZSBjb3JyZWN0IGNyaXRpY2FsIG9yIHdhcm5pbmcgcHJvcGVydGllcyBmcm9tIFF1ZXVlQWxhcm1Qcm9wcyBkeW5hbWljYWxseS5cbiAqXG4gKiBAcGFyYW0gcHJvcHMgdGhlIHByb3BlcnRpZXMgaG9sZGluZyB0aGUgdmFsdWVzXG4gKiBAcGFyYW0gY2F0ZWdvcnkgdGhlIGFsYXJtIGNhdGVnb3J5XG4gKi9cbmZ1bmN0aW9uIGdldFF1ZXVlQWxhcm1DYXRlZ29yeVByb3BzKHByb3BzOiBRdWV1ZUFsYXJtc09wdGlvbnMsIGNhdGVnb3J5OiBRdWV1ZUFsYXJtQ2F0ZWdvcnkpOiBRdWV1ZUFsYXJtc0NhdGVnb3J5UHJvcHMgfCB1bmRlZmluZWQge1xuICBjb25zdCBmcHJvcDoga2V5b2YgUXVldWVBbGFybXNPcHRpb25zID0gY2F0ZWdvcnkgPT09ICdDcml0aWNhbCcgPyAnY3JpdGljYWxBbGFybVByb3BzJyA6ICd3YXJuaW5nQWxhcm1Qcm9wcyc7XG4gIHJldHVybiBwcm9wc1tmcHJvcF07XG59XG5cbi8qKlxuICogSGVscGVyIGZ1bmN0aW9uIHRvIGNvbWJpbmUgYW4gYXJyYXkgaWYgSUFsYXJtQWN0aW9uIGFuZCBJVG9waWMgb2JqZWN0cyBpbnRvIGEgc2luZ2xlIElBbGFybUFjdGlvbiBhcnJheS5cbiAqXG4gKiBAcGFyYW0gYWN0aW9ucyB0aGUgYWN0aW9uc1xuICogQHBhcmFtIHRvcGljcyB0aGUgdG9waWNzXG4gKi9cbmZ1bmN0aW9uIGNvbWJpbmVBY3Rpb25zKGFjdGlvbnM/OiBJQWxhcm1BY3Rpb25bXSwgdG9waWNzPzogSVRvcGljW10pOiBJQWxhcm1BY3Rpb25bXSB7XG4gIGNvbnN0IGNvbWJpbmVkOiBJQWxhcm1BY3Rpb25bXSA9IFtdXG4gIGFjdGlvbnM/LmZvckVhY2goKGFjdGlvbikgPT4gY29tYmluZWQucHVzaChhY3Rpb24pKTtcbiAgdG9waWNzPy5mb3JFYWNoKCh0b3BpYykgPT4gY29tYmluZWQucHVzaChuZXcgU25zQWN0aW9uKHRvcGljKSkpO1xuICByZXR1cm4gY29tYmluZWQ7XG59XG5cbi8qKlxuICogVXNlZCB0byBkaXNhbWJpZ3VhdGUgd2FybmluZyBhbmQgY3JpdGljYWwgYWxhcm1zLlxuICovXG5leHBvcnQgZW51bSBRdWV1ZUFsYXJtQ2F0ZWdvcnkge1xuICBDcml0aWNhbCA9ICdDcml0aWNhbCcsXG4gIFdhcm5pbmcgPSAnV2FybmluZydcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBRdWV1ZUFsYXJtRmFjYWRlLlxuICovXG5pbnRlcmZhY2UgUXVldWVBbGFybUZhY2FkZVByb3BzIHtcbiAgcHJvcDogc3RyaW5nO1xuICB0aHJlc2hvbGQ/OiBudW1iZXIgfCBEdXJhdGlvbjtcbiAgZGVmYXVsdFRocmVzaG9sZD86IG51bWJlciB8IER1cmF0aW9uO1xuICB0b3BpY3M/OiBJVG9waWNbXTtcbiAgYWN0aW9ucz86IElBbGFybUFjdGlvbltdO1xufVxuXG4vKipcbiAqIEludGVybmFsIGNsYXNzIHRvIGFzc2lzdCBpbiBnZW5lcmF0aW5nIEN1c3RvbWVBbGFybVRocmVzaG9sZCBpbnN0YW5jZXMuXG4gKi9cbmNsYXNzIFF1ZXVlQWxhcm1GYWNhZGUge1xuXG4gIHJlYWRvbmx5IGFjdGlvbnM6IElBbGFybUFjdGlvbltdO1xuXG4gIHByaXZhdGUgcHJvcHM6IFF1ZXVlQWxhcm1GYWNhZGVQcm9wcztcblxuICBjb25zdHJ1Y3Rvcihwcm9wczogUXVldWVBbGFybUZhY2FkZVByb3BzKSB7XG4gICAgdGhpcy5wcm9wcyA9IHByb3BzO1xuICAgIHRoaXMuYWN0aW9ucyA9IGNvbWJpbmVBY3Rpb25zKHByb3BzLmFjdGlvbnMsIHByb3BzLnRvcGljcyk7XG4gIH1cblxuICB0b0N1c3RvbUFsYXJtVGhyZXNob2xkKCk6IEN1c3RvbUFsYXJtVGhyZXNob2xkIHwgdW5kZWZpbmVkIHtcbiAgICBpZiAodGhpcy5wcm9wcy50aHJlc2hvbGQgIT09IHVuZGVmaW5lZCB8fCB0aGlzLnByb3BzLmRlZmF1bHRUaHJlc2hvbGQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgW3RoaXMucHJvcHMucHJvcF06IHRoaXMucHJvcHMudGhyZXNob2xkPz90aGlzLnByb3BzLmRlZmF1bHRUaHJlc2hvbGQsXG4gICAgICAgIGFjdGlvbnNFbmFibGVkOiB0cnVlLFxuICAgICAgICBhY3Rpb25PdmVycmlkZTogbmV3IFN0YW5kYXJkQWxhcm1BY3Rpb25zU3RyYXRlZ3koe2FjdGlvbnM6IHRoaXMuYWN0aW9uc30pLFxuICAgICAgfTtcbiAgICB9XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuXG4gIGFkZEN1c3RvbUFsYXJtVGhyZXNob2xkKGNhdGVnb3J5OiBRdWV1ZUFsYXJtQ2F0ZWdvcnksIHJlY29yZDogUmVjb3JkPHN0cmluZyxDdXN0b21BbGFybVRocmVzaG9sZD4pIHtcbiAgICBjb25zdCBjID0gdGhpcy50b0N1c3RvbUFsYXJtVGhyZXNob2xkKCk7XG4gICAgaWYgKGMgIT09IHVuZGVmaW5lZCkge1xuICAgICAgcmVjb3JkW2NhdGVnb3J5XSA9IGM7XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgUXVldWVBbGFybXNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBRdWV1ZUFsYXJtc1Byb3BzIGV4dGVuZHMgUXVldWVBbGFybXNPcHRpb25zIHtcblxuICAvKipcbiAgICogVGhlIHF1ZXVlIHRvIG9ic2VydmUuXG4gICAqL1xuICByZWFkb25seSBxdWV1ZTogUXVldWU7XG59XG5cbi8vIFRPRE8gTmVlZCB0byBjb252ZXJ0IHRvIHVzaW5nIEFsYXJtc0Jhc2VcblxuLyoqXG4gKiBDcmVhdGVzIENsb3VkV2F0Y2ggYWxhcm1zIGZvciBRdWV1ZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBRdWV1ZUFsYXJtcyBleHRlbmRzIENvbnN0cnVjdCB7XG5cbiAgLyoqXG4gICAqIFRoZSBNb25pdG9yaW5nRmFjYWRlIGluc3RhbmNlIGVpdGhlciBwYXNzZWQgaW4gb3IgZ2VuZXJhdGVkLlxuICAgKi9cbiAgcmVhZG9ubHkgbW9uaXRvcmluZ0ZhY2FkZTogTW9uaXRvcmluZ0ZhY2FkZTtcblxuICAvKipcbiAgICogR2VuZXJhdGVkIGNyaXRpY2FsIGFsYXJtcy5cbiAgICovXG4gIHJlYWRvbmx5IGNyaXRpY2FsQWxhcm1zOiBBbGFybVtdO1xuXG4gIC8qKlxuICAgKiBHZW5lcmF0ZWQgd2FybmluZyBhbGFybXMuXG4gICAqL1xuICByZWFkb25seSB3YXJuaW5nQWxhcm1zOiBBbGFybVtdO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgcHJvcHM6IFF1ZXVlQWxhcm1zUHJvcHM7XG5cbiAgcHJpdmF0ZSBhZGRSZWNvcmRWYWx1ZShyZWNvcmQ6IFJlY29yZDxzdHJpbmcsIEN1c3RvbUFsYXJtVGhyZXNob2xkPixcbiAgICAgICAgICAgICAgICAgICAgICAgICBjYXRlZ29yeTogUXVldWVBbGFybUNhdGVnb3J5LFxuICAgICAgICAgICAgICAgICAgICAgICAgIHNwcm9wOiBrZXlvZiBRdWV1ZUFsYXJtc0NhdGVnb3J5UHJvcHMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgdHByb3A6IHN0cmluZyxcbiAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0VGhyZXNob2xkPzogbnVtYmVyfER1cmF0aW9uKSB7XG4gICAgY29uc3QgZnByb3BzID0gZ2V0UXVldWVBbGFybUNhdGVnb3J5UHJvcHModGhpcy5wcm9wcywgY2F0ZWdvcnkpO1xuICAgIG5ldyBRdWV1ZUFsYXJtRmFjYWRlKHtcbiAgICAgIHByb3A6IHRwcm9wLFxuICAgICAgdGhyZXNob2xkOiBmcHJvcHM/LltzcHJvcF0gYXMgbnVtYmVyIHwgRHVyYXRpb24sXG4gICAgICBkZWZhdWx0VGhyZXNob2xkLFxuICAgICAgdG9waWNzOiBmcHJvcHM/Lm5vdGlmeVRvcGljcyxcbiAgICAgIGFjdGlvbnM6IGZwcm9wcz8ubm90aWZ5QWN0aW9ucyxcbiAgICB9KS5hZGRDdXN0b21BbGFybVRocmVzaG9sZChjYXRlZ29yeSwgcmVjb3JkKTtcbiAgfVxuXG4gIHByaXZhdGUgdG9SZWNvcmQoc3Byb3A6IGtleW9mIFF1ZXVlQWxhcm1zQ2F0ZWdvcnlQcm9wcywgdHByb3A6IHN0cmluZywgZGVmYXVsdFRocmVzaG9sZD86IG51bWJlcnxEdXJhdGlvbik6IFJlY29yZDxzdHJpbmcsIEN1c3RvbUFsYXJtVGhyZXNob2xkPiB8IHVuZGVmaW5lZCB7XG4gICAgY29uc3QgcmVjb3JkOiBSZWNvcmQ8c3RyaW5nLCBDdXN0b21BbGFybVRocmVzaG9sZD4gPSB7fTtcbiAgICB0aGlzLmFkZFJlY29yZFZhbHVlKHJlY29yZCwgUXVldWVBbGFybUNhdGVnb3J5LkNyaXRpY2FsLCBzcHJvcCwgdHByb3AsIGRlZmF1bHRUaHJlc2hvbGQpO1xuICAgIHRoaXMuYWRkUmVjb3JkVmFsdWUocmVjb3JkLCBRdWV1ZUFsYXJtQ2F0ZWdvcnkuV2FybmluZywgc3Byb3AsIHRwcm9wLCBkZWZhdWx0VGhyZXNob2xkKTtcbiAgICByZXR1cm4gT2JqZWN0LmtleXMocmVjb3JkKS5sZW5ndGggPiAwID8gcmVjb3JkIDogdW5kZWZpbmVkO1xuICB9XG5cbiAgcHJpdmF0ZSBhZGRBbGFybShjYXRlZ29yeTogUXVldWVBbGFybUNhdGVnb3J5LCAuLi5hbGFybTogQWxhcm1bXSkge1xuICAgIGNvbnN0IGFyciA9IGNhdGVnb3J5ID09PSBRdWV1ZUFsYXJtQ2F0ZWdvcnkuQ3JpdGljYWwgPyB0aGlzLmNyaXRpY2FsQWxhcm1zIDogdGhpcy53YXJuaW5nQWxhcm1zO1xuICAgIGFyci5wdXNoKC4uLmFsYXJtKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBRdWV1ZUFsYXJtc1Byb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcbiAgICB0aGlzLnByb3BzID0gcHJvcHM7XG4gICAgdGhpcy5jcml0aWNhbEFsYXJtcyA9IFtdO1xuICAgIHRoaXMud2FybmluZ0FsYXJtcyA9IFtdO1xuXG4gICAgdGhpcy5tb25pdG9yaW5nRmFjYWRlID0gcHJvcHMubW9uaXRvcmluZ0ZhY2FkZT8/bmV3IE1vbml0b3JpbmdGYWNhZGUodGhpcywgJ01vbml0b3JpbmdGYWNhZGUnLCB7XG4gICAgICBtZXRyaWNGYWN0b3J5RGVmYXVsdHM6IHt9LFxuICAgICAgYWxhcm1GYWN0b3J5RGVmYXVsdHM6IHtcbiAgICAgICAgYWN0aW9uc0VuYWJsZWQ6IHRydWUsXG4gICAgICAgIGFsYXJtTmFtZVByZWZpeDogcHJvcHMuYWxhcm1OYW1lUHJlZml4Pz9gJHtTdGFjay5vZih0aGlzKS5zdGFja05hbWV9YFxuICAgICAgfSxcbiAgICAgIGRhc2hib2FyZEZhY3Rvcnk6IHByb3BzLmRhc2hib2FyZEZhY3RvcnlcbiAgICB9KTtcblxuICAgIGlmIChwcm9wcy5jcmVhdGVBbGFybXMgPz8gdHJ1ZSkge1xuICAgICAgaWYgKHByb3BzLnF1ZXVlLmRlYWRMZXR0ZXJRdWV1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMubW9uaXRvcmluZ0ZhY2FkZS5tb25pdG9yU3FzUXVldWUoe1xuICAgICAgICAgIHF1ZXVlOiBwcm9wcy5xdWV1ZSxcbiAgICAgICAgICBhZGRRdWV1ZU1pblNpemVBbGFybTogdGhpcy50b1JlY29yZCgnbWluU2l6ZScsICdtaW5NZXNzYWdlQ291bnQnKSBhcyBSZWNvcmQ8c3RyaW5nLCBNaW5NZXNzYWdlQ291bnRUaHJlc2hvbGQ+LFxuICAgICAgICAgIGFkZFF1ZXVlTWF4U2l6ZUFsYXJtOiB0aGlzLnRvUmVjb3JkKCdtYXhTaXplJywgJ21heE1lc3NhZ2VDb3VudCcpIGFzIFJlY29yZDxzdHJpbmcsIE1heE1lc3NhZ2VDb3VudFRocmVzaG9sZD4sXG4gICAgICAgICAgYWRkUXVldWVNYXhNZXNzYWdlQWdlQWxhcm06IHRoaXMudG9SZWNvcmQoJ21heEFnZUluU2Vjb25kcycsICdtYXhBZ2VJblNlY29uZHMnLCAxNSkgYXMgUmVjb3JkPHN0cmluZywgTWF4TWVzc2FnZUFnZVRocmVzaG9sZD4sXG4gICAgICAgICAgYWRkUXVldWVNYXhUaW1lVG9EcmFpbk1lc3NhZ2VzQWxhcm06IHRoaXMudG9SZWNvcmQoJ21heFRpbWVUb0RyYWluJywgJ21heFRpbWVUb0RyYWluJykgYXMgUmVjb3JkPHN0cmluZywgTWF4VGltZVRvRHJhaW5UaHJlc2hvbGQ+LFxuICAgICAgICAgIGFkZFF1ZXVlTWluSW5jb21pbmdNZXNzYWdlc0FsYXJtOiB0aGlzLnRvUmVjb3JkKCdtaW5JbmNvbWluZycsICdtaW5JbmNvbWluZ01lc3NhZ2VzQ291bnQnKSBhcyBSZWNvcmQ8c3RyaW5nLCBNaW5JbmNvbWluZ01lc3NhZ2VzQ291bnRUaHJlc2hvbGQ+LFxuICAgICAgICAgIGFkZFF1ZXVlTWF4SW5jb21pbmdNZXNzYWdlc0FsYXJtOiB0aGlzLnRvUmVjb3JkKCdtYXhJbmNvbWluZycsICdtYXhJbmNvbWluZ01lc3NhZ2VzQ291bnQnKSAgYXMgUmVjb3JkPHN0cmluZywgTWF4SW5jb21pbmdNZXNzYWdlc0NvdW50VGhyZXNob2xkPlxuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMubW9uaXRvcmluZ0ZhY2FkZS5tb25pdG9yU3FzUXVldWVXaXRoRGxxKHtcbiAgICAgICAgICBxdWV1ZTogcHJvcHMucXVldWUsXG4gICAgICAgICAgZGVhZExldHRlclF1ZXVlOiBwcm9wcy5xdWV1ZS5kZWFkTGV0dGVyUXVldWUucXVldWUsXG4gICAgICAgICAgYWRkUXVldWVNaW5TaXplQWxhcm06IHRoaXMudG9SZWNvcmQoJ21pblNpemUnLCAnbWluTWVzc2FnZUNvdW50JykgYXMgUmVjb3JkPHN0cmluZywgTWluTWVzc2FnZUNvdW50VGhyZXNob2xkPixcbiAgICAgICAgICBhZGRRdWV1ZU1heFNpemVBbGFybTogdGhpcy50b1JlY29yZCgnbWF4U2l6ZScsICdtYXhNZXNzYWdlQ291bnQnKSBhcyBSZWNvcmQ8c3RyaW5nLCBNYXhNZXNzYWdlQ291bnRUaHJlc2hvbGQ+LFxuICAgICAgICAgIGFkZFF1ZXVlTWF4TWVzc2FnZUFnZUFsYXJtOiB0aGlzLnRvUmVjb3JkKCdtYXhBZ2VJblNlY29uZHMnLCAnbWF4QWdlSW5TZWNvbmRzJywgMTUpIGFzIFJlY29yZDxzdHJpbmcsIE1heE1lc3NhZ2VBZ2VUaHJlc2hvbGQ+LFxuICAgICAgICAgIGFkZFF1ZXVlTWF4VGltZVRvRHJhaW5NZXNzYWdlc0FsYXJtOiB0aGlzLnRvUmVjb3JkKCdtYXhUaW1lVG9EcmFpbicsICdtYXhUaW1lVG9EcmFpbicpIGFzIFJlY29yZDxzdHJpbmcsIE1heFRpbWVUb0RyYWluVGhyZXNob2xkPixcbiAgICAgICAgICBhZGRRdWV1ZU1pbkluY29taW5nTWVzc2FnZXNBbGFybTogdGhpcy50b1JlY29yZCgnbWluSW5jb21pbmcnLCAnbWluSW5jb21pbmdNZXNzYWdlc0NvdW50JykgYXMgUmVjb3JkPHN0cmluZywgTWluSW5jb21pbmdNZXNzYWdlc0NvdW50VGhyZXNob2xkPixcbiAgICAgICAgICBhZGRRdWV1ZU1heEluY29taW5nTWVzc2FnZXNBbGFybTogdGhpcy50b1JlY29yZCgnbWF4SW5jb21pbmcnLCAnbWF4SW5jb21pbmdNZXNzYWdlc0NvdW50JykgYXMgUmVjb3JkPHN0cmluZywgTWF4SW5jb21pbmdNZXNzYWdlc0NvdW50VGhyZXNob2xkPixcbiAgICAgICAgICBhZGREZWFkTGV0dGVyUXVldWVNYXhTaXplQWxhcm06IHRoaXMudG9SZWNvcmQoJ2RlYWRMZXR0ZXJRdWV1ZU1heFNpemUnLCAnbWF4TWVzc2FnZUNvdW50JywgMCkgYXMgUmVjb3JkPHN0cmluZywgTWF4TWVzc2FnZUNvdW50VGhyZXNob2xkPixcbiAgICAgICAgICBhZGREZWFkTGV0dGVyUXVldWVNYXhNZXNzYWdlQWdlQWxhcm06IHRoaXMudG9SZWNvcmQoJ2RlYWRMZXR0ZXJRdWV1ZU1heEFnZUluU2Vjb25kcycsICdtYXhBZ2VJblNlY29uZHMnKSBhcyBSZWNvcmQ8c3RyaW5nLCBNYXhNZXNzYWdlQWdlVGhyZXNob2xkPixcbiAgICAgICAgICBhZGREZWFkTGV0dGVyUXVldWVNYXhJbmNvbWluZ01lc3NhZ2VzQWxhcm06IHRoaXMudG9SZWNvcmQoJ2RlYWRMZXR0ZXJRdWV1ZU1heEluY29taW5nJywgJ21heEluY29taW5nTWVzc2FnZXNDb3VudCcpIGFzIFJlY29yZDxzdHJpbmcsIE1heEluY29taW5nTWVzc2FnZXNDb3VudFRocmVzaG9sZD4sXG4gICAgICAgICAgYWRkRGVhZExldHRlclF1ZXVlVG9TdW1tYXJ5RGFzaGJvYXJkOiB0cnVlXG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuYWRkQWxhcm0oUXVldWVBbGFybUNhdGVnb3J5LkNyaXRpY2FsLCAuLi50aGlzLm1vbml0b3JpbmdGYWNhZGUuY3JlYXRlZEFsYXJtc1dpdGhEaXNhbWJpZ3VhdG9yKFF1ZXVlQWxhcm1DYXRlZ29yeS5Dcml0aWNhbCkubWFwKChhd2EpID0+IGF3YS5hbGFybSkpO1xuICAgICAgICB0aGlzLmFkZEFsYXJtKFF1ZXVlQWxhcm1DYXRlZ29yeS5XYXJuaW5nLCAuLi50aGlzLm1vbml0b3JpbmdGYWNhZGUuY3JlYXRlZEFsYXJtc1dpdGhEaXNhbWJpZ3VhdG9yKFF1ZXVlQWxhcm1DYXRlZ29yeS5XYXJuaW5nKS5tYXAoKGF3YSkgPT4gYXdhLmFsYXJtKSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVldWUtYWxhcm1zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsicXVldWUtYWxhcm1zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQVNBLHlEQUFzRjtBQW9GdEY7O0dBRUc7QUFDSCxNQUFhLFdBQVksU0FBUSwyQkFBd0Q7SUFFL0Usa0JBQWtCO1FBQ3hCLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsZUFBZSxLQUFLLFNBQVMsRUFBRTtZQUNsRCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsZUFBZSxDQUFDO2dCQUNwQyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLGlCQUFpQjtnQkFDL0MsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSztnQkFDdkIsb0JBQW9CLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsaUJBQWlCLENBQUM7Z0JBQ2pFLG9CQUFvQixFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLGlCQUFpQixDQUFDO2dCQUNqRSwwQkFBMEIsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLGlCQUFpQixFQUFFLGlCQUFpQixFQUFFLEVBQUUsQ0FBQztnQkFDbkYsbUNBQW1DLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsRUFBRSxnQkFBZ0IsQ0FBQztnQkFDdEYsZ0NBQWdDLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQUUsMEJBQTBCLENBQUM7Z0JBQzFGLGdDQUFnQyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxFQUFFLDBCQUEwQixDQUFDO2FBQzNGLENBQUMsQ0FBQztTQUNKO2FBQU07WUFDTCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsc0JBQXNCLENBQUM7Z0JBQzNDLGlCQUFpQixFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQWlCO2dCQUMvQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLO2dCQUN2QixlQUFlLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsZUFBZSxDQUFDLEtBQUs7Z0JBQ3ZELG9CQUFvQixFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLGlCQUFpQixDQUFDO2dCQUNqRSxvQkFBb0IsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxpQkFBaUIsQ0FBQztnQkFDakUsMEJBQTBCLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsRUFBRSxpQkFBaUIsRUFBRSxFQUFFLENBQUM7Z0JBQ25GLG1DQUFtQyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLEVBQUUsZ0JBQWdCLENBQUM7Z0JBQ3RGLGdDQUFnQyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxFQUFFLDBCQUEwQixDQUFDO2dCQUMxRixnQ0FBZ0MsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsRUFBRSwwQkFBMEIsQ0FBQztnQkFDMUYsOEJBQThCLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyx3QkFBd0IsRUFBRSxpQkFBaUIsRUFBRSxDQUFDLENBQUM7Z0JBQzdGLG9DQUFvQyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsZ0NBQWdDLEVBQUUsaUJBQWlCLENBQUM7Z0JBQ3hHLDBDQUEwQyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsNEJBQTRCLEVBQUUsMEJBQTBCLENBQUM7Z0JBQ25ILG9DQUFvQyxFQUFFLElBQUk7YUFDM0MsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDO0lBRUQsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUF1Qjs7UUFDL0QsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDeEIsVUFBSSxLQUFLLENBQUMsWUFBWSxtQ0FBSSxJQUFJLEVBQUU7WUFDOUIsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7U0FDM0I7SUFDSCxDQUFDO0NBQ0Y7QUF2Q0Qsa0NBdUNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEdXJhdGlvbn0gZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQge1xuICBNYXhJbmNvbWluZ01lc3NhZ2VzQ291bnRUaHJlc2hvbGQsXG4gIE1heE1lc3NhZ2VBZ2VUaHJlc2hvbGQsXG4gIE1heE1lc3NhZ2VDb3VudFRocmVzaG9sZCwgTWF4VGltZVRvRHJhaW5UaHJlc2hvbGQsIE1pbkluY29taW5nTWVzc2FnZXNDb3VudFRocmVzaG9sZCxcbiAgTWluTWVzc2FnZUNvdW50VGhyZXNob2xkXG59IGZyb20gXCJjZGstbW9uaXRvcmluZy1jb25zdHJ1Y3RzXCI7XG5pbXBvcnQge1F1ZXVlfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLXNxc1wiO1xuaW1wb3J0IHtDb25zdHJ1Y3R9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQge0FsYXJtc0Jhc2UsIEFsYXJtc0NhdGVnb3J5T3B0aW9ucywgQWxhcm1zT3B0aW9uc30gZnJvbSBcIi4uLy4uL2F3cy1tb25pdG9yaW5nXCI7XG5cbi8qKlxuICogQ2F0ZWdvcnkgb3B0aW9ucyBmb3IgQ2xvdWRXYXRjaCBhbGFybXMgZm9yIFF1ZXVlcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBRdWV1ZUFsYXJtc0NhdGVnb3J5T3B0aW9ucyBleHRlbmRzIEFsYXJtc0NhdGVnb3J5T3B0aW9ucyB7XG4gIC8qKlxuICAgKiBNaW5pbXVtIG51bWJlciBvZiBtZXNzYWdlcyB2aXNpYmxlLlxuICAgKi9cbiAgcmVhZG9ubHkgbWluU2l6ZT86IG51bWJlcjtcblxuICAvKipcbiAgICogTWF4aW11bSBudW1iZXIgb2YgbWVzc2FnZXMgdmlzaWJsZS5cbiAgICovXG4gIHJlYWRvbmx5IG1heFNpemU/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIE1heGltdW0gYXBwcm94aW1hdGUgYWdlIG9mIHRoZSBvbGRlc3QgbWVzc2FnZSBpbiB0aGUgcXVldWUuXG4gICAqXG4gICAqIEBkZWZhdWx0IDE1IGZvciBjcml0aWNhbCBhbGFybVxuICAgKi9cbiAgcmVhZG9ubHkgbWF4QWdlSW5TZWNvbmRzPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBNYXhpbXVtIHRpbWUgdG8gZHJhaW4gdGhlIHF1ZXVlLlxuICAgKi9cbiAgcmVhZG9ubHkgbWF4VGltZVRvRHJhaW4/OiBEdXJhdGlvbjtcblxuICAvKipcbiAgICogTWluaW11bSBudW1iZXIgb2YgaW5jb21pbmcgbWVzc2FnZXMuXG4gICAqL1xuICByZWFkb25seSBtaW5JbmNvbWluZz86IG51bWJlcjtcblxuICAvKipcbiAgICogTWF4aW11bSBudW1iZXIgb2YgaW5jb21pbmcgbWVzc2FnZXMuXG4gICAqL1xuICByZWFkb25seSBtYXhJbmNvbWluZz86IG51bWJlcjtcblxuICAvKipcbiAgICogTWF4aW11bSBudW1iZXIgb2YgdmlzaWJsZSBtZXNzYWdlcyBpbiB0aGUgZGVhZC1sZXR0ZXIgcXVldWVcbiAgICpcbiAgICogQGRlZmF1bHQgMCBmb3IgY3JpdGljYWwgYWxhcm1cbiAgICovXG4gIHJlYWRvbmx5IGRlYWRMZXR0ZXJRdWV1ZU1heFNpemU/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIE1heGltdW0gYWdlIG9mIHRoZSBvbGRlc3QgbWVzc2FnZXMgaW4gdGhlIGRlYWQtbGV0dGVyIHF1ZXVlXG4gICAqL1xuICByZWFkb25seSBkZWFkTGV0dGVyUXVldWVNYXhBZ2VJblNlY29uZHM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIE1heGltdW0gbnVtYmVyIG9mIGluY29taW5nIG1lc3NhZ2VzIGluIHRoZSBkZWFkLWxldHRlciBxdWV1ZVxuICAgKi9cbiAgcmVhZG9ubHkgZGVhZExldHRlclF1ZXVlTWF4SW5jb21pbmc/OiBudW1iZXI7XG59XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgQ2xvdWRXYXRjaCBhbGFybXMgZm9yIFF1ZXVlcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBRdWV1ZUFsYXJtc09wdGlvbnMgZXh0ZW5kcyBBbGFybXNPcHRpb25zPFF1ZXVlQWxhcm1zQ2F0ZWdvcnlPcHRpb25zPiB7XG5cbiAgLyoqXG4gICAqIEZsYWcgdG8gY3JlYXRlIGFsYXJtcy5cbiAgICpcbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgY3JlYXRlQWxhcm1zPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogTmFtZSB0byB1c2UgZm9yIGFsYXJtLCBkZWZhdWx0IGlzIGNvbnN0cnVjdCBJRC5cbiAgICovXG4gIHJlYWRvbmx5IGFsYXJtRnJpZW5kbHlOYW1lPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIFF1ZXVlQWxhcm1zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUXVldWVBbGFybXNQcm9wcyBleHRlbmRzIFF1ZXVlQWxhcm1zT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgcXVldWUgdG8gb2JzZXJ2ZS5cbiAgICovXG4gIHJlYWRvbmx5IHF1ZXVlOiBRdWV1ZTtcbn1cblxuLyoqXG4gKiBDcmVhdGVzIENsb3VkV2F0Y2ggYWxhcm1zIGZvciBRdWV1ZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBRdWV1ZUFsYXJtcyBleHRlbmRzIEFsYXJtc0Jhc2U8UXVldWVBbGFybXNDYXRlZ29yeU9wdGlvbnMsIFF1ZXVlQWxhcm1zUHJvcHM+IHtcblxuICBwcml2YXRlIGFkZFF1ZXVlTW9uaXRvcmluZygpIHtcbiAgICBpZiAodGhpcy5wcm9wcy5xdWV1ZS5kZWFkTGV0dGVyUXVldWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5tb25pdG9yaW5nRmFjYWRlLm1vbml0b3JTcXNRdWV1ZSh7XG4gICAgICAgIGFsYXJtRnJpZW5kbHlOYW1lOiB0aGlzLnByb3BzLmFsYXJtRnJpZW5kbHlOYW1lLFxuICAgICAgICBxdWV1ZTogdGhpcy5wcm9wcy5xdWV1ZSxcbiAgICAgICAgYWRkUXVldWVNaW5TaXplQWxhcm06IHRoaXMudG9SZWNvcmQoJ21pblNpemUnLCAnbWluTWVzc2FnZUNvdW50JyksXG4gICAgICAgIGFkZFF1ZXVlTWF4U2l6ZUFsYXJtOiB0aGlzLnRvUmVjb3JkKCdtYXhTaXplJywgJ21heE1lc3NhZ2VDb3VudCcpLFxuICAgICAgICBhZGRRdWV1ZU1heE1lc3NhZ2VBZ2VBbGFybTogdGhpcy50b1JlY29yZCgnbWF4QWdlSW5TZWNvbmRzJywgJ21heEFnZUluU2Vjb25kcycsIDE1KSxcbiAgICAgICAgYWRkUXVldWVNYXhUaW1lVG9EcmFpbk1lc3NhZ2VzQWxhcm06IHRoaXMudG9SZWNvcmQoJ21heFRpbWVUb0RyYWluJywgJ21heFRpbWVUb0RyYWluJyksXG4gICAgICAgIGFkZFF1ZXVlTWluSW5jb21pbmdNZXNzYWdlc0FsYXJtOiB0aGlzLnRvUmVjb3JkKCdtaW5JbmNvbWluZycsICdtaW5JbmNvbWluZ01lc3NhZ2VzQ291bnQnKSxcbiAgICAgICAgYWRkUXVldWVNYXhJbmNvbWluZ01lc3NhZ2VzQWxhcm06IHRoaXMudG9SZWNvcmQoJ21heEluY29taW5nJywgJ21heEluY29taW5nTWVzc2FnZXNDb3VudCcpXG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5tb25pdG9yaW5nRmFjYWRlLm1vbml0b3JTcXNRdWV1ZVdpdGhEbHEoe1xuICAgICAgICBhbGFybUZyaWVuZGx5TmFtZTogdGhpcy5wcm9wcy5hbGFybUZyaWVuZGx5TmFtZSxcbiAgICAgICAgcXVldWU6IHRoaXMucHJvcHMucXVldWUsXG4gICAgICAgIGRlYWRMZXR0ZXJRdWV1ZTogdGhpcy5wcm9wcy5xdWV1ZS5kZWFkTGV0dGVyUXVldWUucXVldWUsXG4gICAgICAgIGFkZFF1ZXVlTWluU2l6ZUFsYXJtOiB0aGlzLnRvUmVjb3JkKCdtaW5TaXplJywgJ21pbk1lc3NhZ2VDb3VudCcpLFxuICAgICAgICBhZGRRdWV1ZU1heFNpemVBbGFybTogdGhpcy50b1JlY29yZCgnbWF4U2l6ZScsICdtYXhNZXNzYWdlQ291bnQnKSxcbiAgICAgICAgYWRkUXVldWVNYXhNZXNzYWdlQWdlQWxhcm06IHRoaXMudG9SZWNvcmQoJ21heEFnZUluU2Vjb25kcycsICdtYXhBZ2VJblNlY29uZHMnLCAxNSksXG4gICAgICAgIGFkZFF1ZXVlTWF4VGltZVRvRHJhaW5NZXNzYWdlc0FsYXJtOiB0aGlzLnRvUmVjb3JkKCdtYXhUaW1lVG9EcmFpbicsICdtYXhUaW1lVG9EcmFpbicpLFxuICAgICAgICBhZGRRdWV1ZU1pbkluY29taW5nTWVzc2FnZXNBbGFybTogdGhpcy50b1JlY29yZCgnbWluSW5jb21pbmcnLCAnbWluSW5jb21pbmdNZXNzYWdlc0NvdW50JyksXG4gICAgICAgIGFkZFF1ZXVlTWF4SW5jb21pbmdNZXNzYWdlc0FsYXJtOiB0aGlzLnRvUmVjb3JkKCdtYXhJbmNvbWluZycsICdtYXhJbmNvbWluZ01lc3NhZ2VzQ291bnQnKSxcbiAgICAgICAgYWRkRGVhZExldHRlclF1ZXVlTWF4U2l6ZUFsYXJtOiB0aGlzLnRvUmVjb3JkKCdkZWFkTGV0dGVyUXVldWVNYXhTaXplJywgJ21heE1lc3NhZ2VDb3VudCcsIDApLFxuICAgICAgICBhZGREZWFkTGV0dGVyUXVldWVNYXhNZXNzYWdlQWdlQWxhcm06IHRoaXMudG9SZWNvcmQoJ2RlYWRMZXR0ZXJRdWV1ZU1heEFnZUluU2Vjb25kcycsICdtYXhBZ2VJblNlY29uZHMnKSxcbiAgICAgICAgYWRkRGVhZExldHRlclF1ZXVlTWF4SW5jb21pbmdNZXNzYWdlc0FsYXJtOiB0aGlzLnRvUmVjb3JkKCdkZWFkTGV0dGVyUXVldWVNYXhJbmNvbWluZycsICdtYXhJbmNvbWluZ01lc3NhZ2VzQ291bnQnKSxcbiAgICAgICAgYWRkRGVhZExldHRlclF1ZXVlVG9TdW1tYXJ5RGFzaGJvYXJkOiB0cnVlXG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogUXVldWVBbGFybXNQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwgcHJvcHMpO1xuICAgIGlmIChwcm9wcy5jcmVhdGVBbGFybXMgPz8gdHJ1ZSkge1xuICAgICAgdGhpcy5hZGRRdWV1ZU1vbml0b3JpbmcoKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -3,7 +3,7 @@ import { Duration, RemovalPolicy, ResourceEnvironment, Stack } from "aws-cdk-lib
|
|
|
3
3
|
import { IQueue } from "aws-cdk-lib/aws-sqs";
|
|
4
4
|
import * as kms from 'aws-cdk-lib/aws-kms';
|
|
5
5
|
import { QueueAlarmsOptions } from "./queue-alarms";
|
|
6
|
-
import {
|
|
6
|
+
import { ExtendedQueue } from "./extended-queue";
|
|
7
7
|
import { MetricOptions, Metric } from "aws-cdk-lib/aws-cloudwatch";
|
|
8
8
|
import { PolicyStatement, AddToResourcePolicyResult, IGrantable, Grant } from "aws-cdk-lib/aws-iam";
|
|
9
9
|
/**
|
|
@@ -50,7 +50,7 @@ export interface StandardQueueProps extends QueueAlarmsOptions {
|
|
|
50
50
|
export declare class StandardQueue extends Construct implements IQueue {
|
|
51
51
|
static readonly DEFAULT_MAX_RECEIVE_COUNT = 3;
|
|
52
52
|
static readonly DEFAULT_RETENTION_PERIOD: Duration;
|
|
53
|
-
readonly queue:
|
|
53
|
+
readonly queue: ExtendedQueue;
|
|
54
54
|
readonly queueArn: string;
|
|
55
55
|
readonly queueUrl: string;
|
|
56
56
|
readonly queueName: string;
|
|
@@ -58,7 +58,7 @@ export declare class StandardQueue extends Construct implements IQueue {
|
|
|
58
58
|
readonly fifo: boolean;
|
|
59
59
|
readonly stack: Stack;
|
|
60
60
|
readonly env: ResourceEnvironment;
|
|
61
|
-
constructor(scope: Construct, id: string, props
|
|
61
|
+
constructor(scope: Construct, id: string, props?: StandardQueueProps);
|
|
62
62
|
addToResourcePolicy(statement: PolicyStatement): AddToResourcePolicyResult;
|
|
63
63
|
grantConsumeMessages(grantee: IGrantable): Grant;
|
|
64
64
|
grantSendMessages(grantee: IGrantable): Grant;
|
|
@@ -4,15 +4,15 @@ exports.StandardQueue = void 0;
|
|
|
4
4
|
const constructs_1 = require("constructs");
|
|
5
5
|
const aws_cdk_lib_1 = require("aws-cdk-lib");
|
|
6
6
|
const aws_sqs_1 = require("aws-cdk-lib/aws-sqs");
|
|
7
|
-
const
|
|
7
|
+
const extended_queue_1 = require("./extended-queue");
|
|
8
8
|
class StandardQueue extends constructs_1.Construct {
|
|
9
9
|
constructor(scope, id, props) {
|
|
10
|
-
var _a, _b, _c, _d, _e;
|
|
10
|
+
var _a, _b, _c, _d, _e, _f;
|
|
11
11
|
super(scope, id);
|
|
12
|
-
const maxReceiveCount = (_a = props.maxReceiveCount) !== null && _a !== void 0 ? _a : StandardQueue.DEFAULT_MAX_RECEIVE_COUNT;
|
|
13
|
-
const encryption = props.encryptionMasterKey === undefined ? aws_sqs_1.QueueEncryption.KMS_MANAGED : aws_sqs_1.QueueEncryption.KMS;
|
|
14
|
-
const encryptionMasterKey = props.encryptionMasterKey;
|
|
15
|
-
const dataKeyReuse = (_b = props.dataKeyReuse) !== null && _b !== void 0 ? _b : aws_cdk_lib_1.Duration.minutes(15);
|
|
12
|
+
const maxReceiveCount = (_a = props === null || props === void 0 ? void 0 : props.maxReceiveCount) !== null && _a !== void 0 ? _a : StandardQueue.DEFAULT_MAX_RECEIVE_COUNT;
|
|
13
|
+
const encryption = (props === null || props === void 0 ? void 0 : props.encryptionMasterKey) === undefined ? aws_sqs_1.QueueEncryption.KMS_MANAGED : aws_sqs_1.QueueEncryption.KMS;
|
|
14
|
+
const encryptionMasterKey = props === null || props === void 0 ? void 0 : props.encryptionMasterKey;
|
|
15
|
+
const dataKeyReuse = (_b = props === null || props === void 0 ? void 0 : props.dataKeyReuse) !== null && _b !== void 0 ? _b : aws_cdk_lib_1.Duration.minutes(15);
|
|
16
16
|
const deadLetterQueue = maxReceiveCount <= 0 ? undefined : {
|
|
17
17
|
queue: new aws_sqs_1.Queue(this, 'DeadLetterQueue', {
|
|
18
18
|
encryption,
|
|
@@ -22,15 +22,16 @@ class StandardQueue extends constructs_1.Construct {
|
|
|
22
22
|
}),
|
|
23
23
|
maxReceiveCount
|
|
24
24
|
};
|
|
25
|
-
this.queue = new
|
|
25
|
+
this.queue = new extended_queue_1.ExtendedQueue(this, 'Queue', {
|
|
26
26
|
...props,
|
|
27
27
|
deadLetterQueue,
|
|
28
28
|
encryption,
|
|
29
29
|
encryptionMasterKey,
|
|
30
30
|
dataKeyReuse,
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
31
|
+
alarmFriendlyName: (_c = props === null || props === void 0 ? void 0 : props.alarmFriendlyName) !== null && _c !== void 0 ? _c : id,
|
|
32
|
+
retentionPeriod: (_d = props === null || props === void 0 ? void 0 : props.retentionPeriod) !== null && _d !== void 0 ? _d : StandardQueue.DEFAULT_RETENTION_PERIOD,
|
|
33
|
+
visibilityTimeout: (_e = props === null || props === void 0 ? void 0 : props.visibilityTimeout) !== null && _e !== void 0 ? _e : aws_cdk_lib_1.Duration.seconds(30),
|
|
34
|
+
alarmNamePrefix: (_f = props === null || props === void 0 ? void 0 : props.alarmNamePrefix) !== null && _f !== void 0 ? _f : aws_cdk_lib_1.Stack.of(this).stackName + "-" + id
|
|
34
35
|
});
|
|
35
36
|
this.queueArn = this.queue.queueArn;
|
|
36
37
|
this.queueUrl = this.queue.queueUrl;
|
|
@@ -93,4 +94,4 @@ class StandardQueue extends constructs_1.Construct {
|
|
|
93
94
|
exports.StandardQueue = StandardQueue;
|
|
94
95
|
StandardQueue.DEFAULT_MAX_RECEIVE_COUNT = 3;
|
|
95
96
|
StandardQueue.DEFAULT_RETENTION_PERIOD = aws_cdk_lib_1.Duration.seconds(1209600);
|
|
96
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhbmRhcmQtcXVldWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJzdGFuZGFyZC1xdWV1ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwyQ0FBcUM7QUFDckMsNkNBQWdGO0FBQ2hGLGlEQUFvRjtBQUdwRixxREFBK0M7QUFtRC9DLE1BQWEsYUFBYyxTQUFRLHNCQUFTO0lBZ0IxQyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQXlCOztRQUNqRSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLE1BQU0sZUFBZSxTQUFHLEtBQUssQ0FBQyxlQUFlLG1DQUFJLGFBQWEsQ0FBQyx5QkFBeUIsQ0FBQztRQUN6RixNQUFNLFVBQVUsR0FBRyxLQUFLLENBQUMsbUJBQW1CLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyx5QkFBZSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMseUJBQWUsQ0FBQyxHQUFHLENBQUM7UUFDL0csTUFBTSxtQkFBbUIsR0FBRyxLQUFLLENBQUMsbUJBQW1CLENBQUM7UUFDdEQsTUFBTSxZQUFZLFNBQUcsS0FBSyxDQUFDLFlBQVksbUNBQUksc0JBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7UUFFaEUsTUFBTSxlQUFlLEdBQWdDLGVBQWUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7WUFDdEYsS0FBSyxFQUFFLElBQUksZUFBSyxDQUFDLElBQUksRUFBRSxpQkFBaUIsRUFBRTtnQkFDeEMsVUFBVTtnQkFDVixtQkFBbUI7Z0JBQ25CLFlBQVk7Z0JBQ1osZUFBZSxFQUFFLGFBQWEsQ0FBQyx3QkFBd0I7YUFDeEQsQ0FBQztZQUNGLGVBQWU7U0FDaEIsQ0FBQztRQUVGLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSw4QkFBYSxDQUFDLElBQUksRUFBRSxPQUFPLEVBQUU7WUFDNUMsR0FBRyxLQUFLO1lBQ1IsZUFBZTtZQUNmLFVBQVU7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LENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRUQsOEJBQThCLENBQUMsS0FBcUI7UUFDbEQsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLDhCQUE4QixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFFRCwwQkFBMEIsQ0FBQyxLQUFxQjtRQUM5QyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsMEJBQTBCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELHFCQUFxQixDQUFDLEtBQXFCO1FBQ3pDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQsa0JBQWtCLENBQUMsTUFBcUI7UUFDdEMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQy9DLENBQUM7O0FBdEhILHNDQXVIQztBQXJIaUIsdUNBQXlCLEdBQUcsQ0FBQyxDQUFDO0FBQzlCLHNDQUF3QixHQUFHLHNCQUFRLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb25zdHJ1Y3R9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQge0R1cmF0aW9uLCBSZW1vdmFsUG9saWN5LCBSZXNvdXJjZUVudmlyb25tZW50LCBTdGFja30gZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQge0RlYWRMZXR0ZXJRdWV1ZSwgSVF1ZXVlLCBRdWV1ZSwgUXVldWVFbmNyeXB0aW9ufSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLXNxc1wiO1xuaW1wb3J0ICogYXMga21zIGZyb20gJ2F3cy1jZGstbGliL2F3cy1rbXMnO1xuaW1wb3J0IHtRdWV1ZUFsYXJtc09wdGlvbnN9IGZyb20gXCIuL3F1ZXVlLWFsYXJtc1wiO1xuaW1wb3J0IHtPYnNlcnZlZFF1ZXVlfSBmcm9tIFwiLi9vYnNlcnZlZC1xdWV1ZVwiO1xuaW1wb3J0IHtNZXRyaWNPcHRpb25zLCBNZXRyaWN9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtY2xvdWR3YXRjaFwiO1xuaW1wb3J0IHtQb2xpY3lTdGF0ZW1lbnQsIEFkZFRvUmVzb3VyY2VQb2xpY3lSZXN1bHQsIElHcmFudGFibGUsIEdyYW50fSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWlhbVwiO1xuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGEgU3RhbmRhcmRRdWV1ZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN0YW5kYXJkUXVldWVQcm9wcyBleHRlbmRzIFF1ZXVlQWxhcm1zT3B0aW9ucyB7XG5cbiAgLyoqXG4gICAqIFRoZSBudW1iZXIgb2Ygc2Vjb25kcyBBbWF6b24gU1FTIHJldGFpbnMgYSBtZXNzYWdlLiBWYWx1ZSBtdXN0IGJlIGJldHdlZW5cbiAgICogNjAgYW5kIDEyMDk2MDAgc2Vjb25kcyAoMTQgZGF5cykuXG4gICAqXG4gICAqIEBkZWZhdWx0IER1cmF0aW9uLnNlY29uZHMoMTIwOTYwMClcbiAgICpcbiAgICovXG4gIHJlYWRvbmx5IHJldGVudGlvblBlcmlvZD86IER1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBUaGUgbnVtYmVyIG9mIHNlY29uZHMgYSBjb25zdW1lciBoYXMgdG8gaGFuZGxlIHRoZSBtZXNzYWdlIGFuZCBkZWxldGUgaXRcbiAgICogZnJvbSB0aGUgcXVldWUgYmVmb3JlIGl0IGJlY29tZXMgdmlzaWJsZSBhZ2FpbiBmb3IgYW5vdGhlciBjb25zdW1lci4gVmFsdWVcbiAgICogbXVzdCBiZSBiZXR3ZWVuIDAgYW5kIDQzMjAwIHNlY29uZHMgKDEyIGhvdXJzKS5cbiAgICpcbiAgICogQGRlZmF1bHQgRHVyYXRpb24uc2Vjb25kcygzMClcbiAgICovXG4gIHJlYWRvbmx5IHZpc2liaWxpdHlUaW1lb3V0PzogRHVyYXRpb247XG5cbiAgLyoqXG4gICAqIFRoZSBLTVMga2V5IHRvIHVzZSBmb3IgZW5jcnlwdGlvbi4gSWYgbm90IHNldCwgdGhlIEFXUyBtYXN0ZXIga2V5IGZvciBTUVNcbiAgICogd2lsbCBiZSB1c2VkLlxuICAgKi9cbiAgcmVhZG9ubHkgZW5jcnlwdGlvbk1hc3RlcktleT86IGttcy5JS2V5O1xuXG4gIC8qKlxuICAgKiBUaGUgbGVuZ3RoIG9mIHRpbWUgdGhhdCBBbWF6b24gU1FTIHJldXNlcyBhIGRhdGEga2V5IGJlZm9yZSBjYWxsaW5nIEtNUyBhZ2Fpbi5cbiAgICogVGhpcyB2YWx1ZSBhZmZlY3RzIHByaWNpbmcgYXMgeW91IGFyZSBjaGFyZ2VkIGZvciBLTVMgdXNhZ2UuIFZhbHVlIG11c3QgYmVcbiAgICogYmV0d2VlbiA2MCBhbmQgODYsNDAwIHNlY29uZHMgKDI0IGhvdXJzKS5cbiAgICpcbiAgICogQGRlZmF1bHQgRHVyYXRpb24ubWludXRlcygxNSlcbiAgICovXG4gIHJlYWRvbmx5IGRhdGFLZXlSZXVzZT86IER1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBUaGUgbWF4aW11bSBudW1iZXIgb2YgdGltZXMgYSBtZXNzYWdlIGNhbiBiZSB1bnN1Y2Nlc3NmdWwgYmVmb3JlIGJlaW5nIG1vdmVkXG4gICAqIHRvIHRoZSBkZWFkLWxldHRlciBxdWV1ZS4gU2V0IHRoaXMgdmFsdWUgdG8gLTEgdG8gZGlzYWJsZSB0aGUgZGVhZC1sZXR0ZXIgcXVldWUuXG4gICAqXG4gICAqIEBkZWZhdWx0IDNcbiAgICovXG4gIHJlYWRvbmx5IG1heFJlY2VpdmVDb3VudD86IG51bWJlcjtcbn1cblxuZXhwb3J0IGNsYXNzIFN0YW5kYXJkUXVldWUgZXh0ZW5kcyBDb25zdHJ1Y3QgaW1wbGVtZW50cyBJUXVldWUge1xuXG4gIHN0YXRpYyByZWFkb25seSBERUZBVUxUX01BWF9SRUNFSVZFX0NPVU5UID0gMztcbiAgc3RhdGljIHJlYWRvbmx5IERFRkFVTFRfUkVURU5USU9OX1BFUklPRCA9IER1cmF0aW9uLnNlY29uZHMoMTIwOTYwMCk7XG5cbiAgcmVhZG9ubHkgcXVldWU6IE9ic2VydmVkUXVldWU7XG5cbiAgLy8gRnJvbSBJUXVldWVcbiAgcmVhZG9ubHkgcXVldWVBcm46IHN0cmluZztcbiAgcmVhZG9ubHkgcXVldWVVcmw6IHN0cmluZztcbiAgcmVhZG9ubHkgcXVldWVOYW1lOiBzdHJpbmc7XG4gIHJlYWRvbmx5IGVuY3J5cHRpb25NYXN0ZXJLZXk/OiBrbXMuSUtleSB8IHVuZGVmaW5lZDtcbiAgcmVhZG9ubHkgZmlmbzogYm9vbGVhbjtcbiAgcmVhZG9ubHkgc3RhY2s6IFN0YWNrO1xuICByZWFkb25seSBlbnY6IFJlc291cmNlRW52aXJvbm1lbnQ7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IFN0YW5kYXJkUXVldWVQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICBjb25zdCBtYXhSZWNlaXZlQ291bnQgPSBwcm9wcy5tYXhSZWNlaXZlQ291bnQgPz8gU3RhbmRhcmRRdWV1ZS5ERUZBVUxUX01BWF9SRUNFSVZFX0NPVU5UO1xuICAgIGNvbnN0IGVuY3J5cHRpb24gPSBwcm9wcy5lbmNyeXB0aW9uTWFzdGVyS2V5ID09PSB1bmRlZmluZWQgPyBRdWV1ZUVuY3J5cHRpb24uS01TX01BTkFHRUQgOiBRdWV1ZUVuY3J5cHRpb24uS01TO1xuICAgIGNvbnN0IGVuY3J5cHRpb25NYXN0ZXJLZXkgPSBwcm9wcy5lbmNyeXB0aW9uTWFzdGVyS2V5O1xuICAgIGNvbnN0IGRhdGFLZXlSZXVzZSA9IHByb3BzLmRhdGFLZXlSZXVzZSA/PyBEdXJhdGlvbi5taW51dGVzKDE1KTtcblxuICAgIGNvbnN0IGRlYWRMZXR0ZXJRdWV1ZTogRGVhZExldHRlclF1ZXVlIHwgdW5kZWZpbmVkID0gbWF4UmVjZWl2ZUNvdW50IDw9IDAgPyB1bmRlZmluZWQgOiB7XG4gICAgICBxdWV1ZTogbmV3IFF1ZXVlKHRoaXMsICdEZWFkTGV0dGVyUXVldWUnLCB7XG4gICAgICAgIGVuY3J5cHRpb24sXG4gICAgICAgIGVuY3J5cHRpb25NYXN0ZXJLZXksXG4gICAgICAgIGRhdGFLZXlSZXVzZSxcbiAgICAgICAgcmV0ZW50aW9uUGVyaW9kOiBTdGFuZGFyZFF1ZXVlLkRFRkFVTFRfUkVURU5USU9OX1BFUklPRFxuICAgICAgfSksXG4gICAgICBtYXhSZWNlaXZlQ291bnRcbiAgICB9O1xuXG4gICAgdGhpcy5xdWV1ZSA9IG5ldyBPYnNlcnZlZFF1ZXVlKHRoaXMsICdRdWV1ZScsIHtcbiAgICAgIC4uLnByb3BzLFxuICAgICAgZGVhZExldHRlclF1ZXVlLFxuICAgICAgZW5jcnlwdGlvbixcbiAgICAgIGVuY3J5cHRpb25NYXN0ZXJLZXksXG4gICAgICBkYXRhS2V5UmV1c2UsXG4gICAgICByZXRlbnRpb25QZXJpb2Q6IHByb3BzLnJldGVudGlvblBlcmlvZCA/PyBTdGFuZGFyZFF1ZXVlLkRFRkFVTFRfUkVURU5USU9OX1BFUklPRCxcbiAgICAgIHZpc2liaWxpdHlUaW1lb3V0OiBwcm9wcy52aXNpYmlsaXR5VGltZW91dCA/PyBEdXJhdGlvbi5zZWNvbmRzKDMwKSxcbiAgICAgIGFsYXJtTmFtZVByZWZpeDogcHJvcHMuYWxhcm1OYW1lUHJlZml4Pz9TdGFjay5vZih0aGlzKS5zdGFja05hbWUgKyBcIi1cIiArIGlkXG4gICAgfSk7XG5cbiAgICB0aGlzLnF1ZXVlQXJuID0gdGhpcy5xdWV1ZS5xdWV1ZUFybjtcbiAgICB0aGlzLnF1ZXVlVXJsID0gdGhpcy5xdWV1ZS5xdWV1ZVVybDtcbiAgICB0aGlzLnF1ZXVlTmFtZSA9IHRoaXMucXVldWUucXVldWVOYW1lO1xuICAgIHRoaXMuZW5jcnlwdGlvbk1hc3RlcktleSA9IHRoaXMucXVldWUuZW5jcnlwdGlvbk1hc3RlcktleTtcbiAgICB0aGlzLmZpZm8gPSB0aGlzLnF1ZXVlLmZpZm87XG4gICAgdGhpcy5zdGFjayA9IHRoaXMucXVldWUuc3RhY2s7XG4gICAgdGhpcy5lbnYgPSB0aGlzLnF1ZXVlLmVudjtcbiAgfVxuXG4gIC8vIEZyb20gSVF1ZXVlXG5cbiAgYWRkVG9SZXNvdXJjZVBvbGljeShzdGF0ZW1lbnQ6IFBvbGljeVN0YXRlbWVudCk6IEFkZFRvUmVzb3VyY2VQb2xpY3lSZXN1bHQge1xuICAgIHJldHVybiB0aGlzLnF1ZXVlLmFkZFRvUmVzb3VyY2VQb2xpY3koc3RhdGVtZW50KTtcbiAgfVxuXG4gIGdyYW50Q29uc3VtZU1lc3NhZ2VzKGdyYW50ZWU6IElHcmFudGFibGUpOiBHcmFudCB7XG4gICAgcmV0dXJuIHRoaXMucXVldWUuZ3JhbnRDb25zdW1lTWVzc2FnZXMoZ3JhbnRlZSk7XG4gIH1cblxuICBncmFudFNlbmRNZXNzYWdlcyhncmFudGVlOiBJR3JhbnRhYmxlKTogR3JhbnQge1xuICAgIHJldHVybiB0aGlzLnF1ZXVlLmdyYW50U2VuZE1lc3NhZ2VzKGdyYW50ZWUpO1xuICB9XG5cbiAgZ3JhbnRQdXJnZShncmFudGVlOiBJR3JhbnRhYmxlKTogR3JhbnQge1xuICAgIHJldHVybiB0aGlzLnF1ZXVlLmdyYW50UHVyZ2UoZ3JhbnRlZSk7XG4gIH1cblxuICBncmFudChncmFudGVlOiBJR3JhbnRhYmxlLCAuLi5xdWV1ZUFjdGlvbnM6IHN0cmluZ1tdKTogR3JhbnQge1xuICAgIHJldHVybiB0aGlzLnF1ZXVlLmdyYW50KGdyYW50ZWUsIC4uLnF1ZXVlQWN0aW9ucyk7XG4gIH1cblxuICBtZXRyaWMobWV0cmljTmFtZTogc3RyaW5nLCBwcm9wcz86IE1ldHJpY09wdGlvbnMpOiBNZXRyaWMge1xuICAgIHJldHVybiB0aGlzLnF1ZXVlLm1ldHJpYyhtZXRyaWNOYW1lLCBwcm9wcyk7XG4gIH1cblxuICBtZXRyaWNBcHByb3hpbWF0ZUFnZU9mT2xkZXN0TWVzc2FnZShwcm9wcz86IE1ldHJpY09wdGlvbnMpOiBNZXRyaWMge1xuICAgIHJldHVybiB0aGlzLnF1ZXVlLm1ldHJpY0FwcHJveGltYXRlQWdlT2ZPbGRlc3RNZXNzYWdlKHByb3BzKTtcbiAgfVxuXG4gIG1ldHJpY0FwcHJveGltYXRlTnVtYmVyT2ZNZXNzYWdlc0RlbGF5ZWQocHJvcHM/OiBNZXRyaWNPcHRpb25zKTogTWV0cmljIHtcbiAgICByZXR1cm4gdGhpcy5xdWV1ZS5tZXRyaWNBcHByb3hpbWF0ZU51bWJlck9mTWVzc2FnZXNEZWxheWVkKHByb3BzKTtcbiAgfVxuXG4gIG1ldHJpY0FwcHJveGltYXRlTnVtYmVyT2ZNZXNzYWdlc05vdFZpc2libGUocHJvcHM/OiBNZXRyaWNPcHRpb25zKTogTWV0cmljIHtcbiAgICByZXR1cm4gdGhpcy5xdWV1ZS5tZXRyaWNBcHByb3hpbWF0ZU51bWJlck9mTWVzc2FnZXNOb3RWaXNpYmxlKHByb3BzKTtcbiAgfVxuXG4gIG1ldHJpY0FwcHJveGltYXRlTnVtYmVyT2ZNZXNzYWdlc1Zpc2libGUocHJvcHM/OiBNZXRyaWNPcHRpb25zKTogTWV0cmljIHtcbiAgICByZXR1cm4gdGhpcy5xdWV1ZS5tZXRyaWNBcHByb3hpbWF0ZU51bWJlck9mTWVzc2FnZXNWaXNpYmxlKHByb3BzKTtcbiAgfVxuXG4gIG1ldHJpY051bWJlck9mRW1wdHlSZWNlaXZlcyhwcm9wcz86IE1ldHJpY09wdGlvbnMpOiBNZXRyaWMge1xuICAgIHJldHVybiB0aGlzLnF1ZXVlLm1ldHJpY051bWJlck9mRW1wdHlSZWNlaXZlcyhwcm9wcyk7XG4gIH1cblxuICBtZXRyaWNOdW1iZXJPZk1lc3NhZ2VzRGVsZXRlZChwcm9wcz86IE1ldHJpY09wdGlvbnMpOiBNZXRyaWMge1xuICAgIHJldHVybiB0aGlzLnF1ZXVlLm1ldHJpY051bWJlck9mTWVzc2FnZXNEZWxldGVkKHByb3BzKTtcbiAgfVxuXG4gIG1ldHJpY051bWJlck9mTWVzc2FnZXNSZWNlaXZlZChwcm9wcz86IE1ldHJpY09wdGlvbnMpOiBNZXRyaWMge1xuICAgIHJldHVybiB0aGlzLnF1ZXVlLm1ldHJpY051bWJlck9mTWVzc2FnZXNSZWNlaXZlZChwcm9wcyk7XG4gIH1cblxuICBtZXRyaWNOdW1iZXJPZk1lc3NhZ2VzU2VudChwcm9wcz86IE1ldHJpY09wdGlvbnMpOiBNZXRyaWMge1xuICAgIHJldHVybiB0aGlzLnF1ZXVlLm1ldHJpY051bWJlck9mTWVzc2FnZXNTZW50KHByb3BzKTtcbiAgfVxuXG4gIG1ldHJpY1NlbnRNZXNzYWdlU2l6ZShwcm9wcz86IE1ldHJpY09wdGlvbnMpOiBNZXRyaWMge1xuICAgIHJldHVybiB0aGlzLnF1ZXVlLm1ldHJpY1NlbnRNZXNzYWdlU2l6ZShwcm9wcyk7XG4gIH1cblxuICBhcHBseVJlbW92YWxQb2xpY3kocG9saWN5OiBSZW1vdmFsUG9saWN5KTogdm9pZCB7XG4gICAgcmV0dXJuIHRoaXMucXVldWUuYXBwbHlSZW1vdmFsUG9saWN5KHBvbGljeSk7XG4gIH1cbn1cbiJdfQ==
|
|
97
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhbmRhcmQtcXVldWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJzdGFuZGFyZC1xdWV1ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwyQ0FBcUM7QUFDckMsNkNBQWdGO0FBQ2hGLGlEQUFvRjtBQUdwRixxREFBK0M7QUFtRC9DLE1BQWEsYUFBYyxTQUFRLHNCQUFTO0lBZ0IxQyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQTBCOztRQUNsRSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLE1BQU0sZUFBZSxTQUFHLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxlQUFlLG1DQUFJLGFBQWEsQ0FBQyx5QkFBeUIsQ0FBQztRQUMxRixNQUFNLFVBQVUsR0FBRyxDQUFBLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxtQkFBbUIsTUFBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLHlCQUFlLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyx5QkFBZSxDQUFDLEdBQUcsQ0FBQztRQUNoSCxNQUFNLG1CQUFtQixHQUFHLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxtQkFBbUIsQ0FBQztRQUN2RCxNQUFNLFlBQVksU0FBRyxLQUFLLGFBQUwsS0FBSyx1QkFBTCxLQUFLLENBQUUsWUFBWSxtQ0FBSSxzQkFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUVqRSxNQUFNLGVBQWUsR0FBZ0MsZUFBZSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztZQUN0RixLQUFLLEVBQUUsSUFBSSxlQUFLLENBQUMsSUFBSSxFQUFFLGlCQUFpQixFQUFFO2dCQUN4QyxVQUFVO2dCQUNWLG1CQUFtQjtnQkFDbkIsWUFBWTtnQkFDWixlQUFlLEVBQUUsYUFBYSxDQUFDLHdCQUF3QjthQUN4RCxDQUFDO1lBQ0YsZUFBZTtTQUNoQixDQUFDO1FBRUYsSUFB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QUFJLENBQUMsS0FBSyxDQUFDLHdDQUF3QyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFRCwyQkFBMkIsQ0FBQyxLQUFxQjtRQUMvQyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsMkJBQTJCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVELDZCQUE2QixDQUFDLEtBQXFCO1FBQ2pELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyw2QkFBNkIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRUQsOEJBQThCLENBQUMsS0FBcUI7UUFDbEQsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLDhCQUE4QixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFFRCwwQkFBMEIsQ0FBQyxLQUFxQjtRQUM5QyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsMEJBQTBCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELHFCQUFxQixDQUFDLEtBQXFCO1FBQ3pDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQsa0JBQWtCLENBQUMsTUFBcUI7UUFDdEMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQy9DLENBQUM7O0FBdkhILHNDQXdIQztBQXRIaUIsdUNBQXlCLEdBQUcsQ0FBQyxDQUFDO0FBQzlCLHNDQUF3QixHQUFHLHNCQUFRLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb25zdHJ1Y3R9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQge0R1cmF0aW9uLCBSZW1vdmFsUG9saWN5LCBSZXNvdXJjZUVudmlyb25tZW50LCBTdGFja30gZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQge0RlYWRMZXR0ZXJRdWV1ZSwgSVF1ZXVlLCBRdWV1ZSwgUXVldWVFbmNyeXB0aW9ufSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLXNxc1wiO1xuaW1wb3J0ICogYXMga21zIGZyb20gJ2F3cy1jZGstbGliL2F3cy1rbXMnO1xuaW1wb3J0IHtRdWV1ZUFsYXJtc09wdGlvbnN9IGZyb20gXCIuL3F1ZXVlLWFsYXJtc1wiO1xuaW1wb3J0IHtFeHRlbmRlZFF1ZXVlfSBmcm9tIFwiLi9leHRlbmRlZC1xdWV1ZVwiO1xuaW1wb3J0IHtNZXRyaWNPcHRpb25zLCBNZXRyaWN9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtY2xvdWR3YXRjaFwiO1xuaW1wb3J0IHtQb2xpY3lTdGF0ZW1lbnQsIEFkZFRvUmVzb3VyY2VQb2xpY3lSZXN1bHQsIElHcmFudGFibGUsIEdyYW50fSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWlhbVwiO1xuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGEgU3RhbmRhcmRRdWV1ZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN0YW5kYXJkUXVldWVQcm9wcyBleHRlbmRzIFF1ZXVlQWxhcm1zT3B0aW9ucyB7XG5cbiAgLyoqXG4gICAqIFRoZSBudW1iZXIgb2Ygc2Vjb25kcyBBbWF6b24gU1FTIHJldGFpbnMgYSBtZXNzYWdlLiBWYWx1ZSBtdXN0IGJlIGJldHdlZW5cbiAgICogNjAgYW5kIDEyMDk2MDAgc2Vjb25kcyAoMTQgZGF5cykuXG4gICAqXG4gICAqIEBkZWZhdWx0IER1cmF0aW9uLnNlY29uZHMoMTIwOTYwMClcbiAgICpcbiAgICovXG4gIHJlYWRvbmx5IHJldGVudGlvblBlcmlvZD86IER1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBUaGUgbnVtYmVyIG9mIHNlY29uZHMgYSBjb25zdW1lciBoYXMgdG8gaGFuZGxlIHRoZSBtZXNzYWdlIGFuZCBkZWxldGUgaXRcbiAgICogZnJvbSB0aGUgcXVldWUgYmVmb3JlIGl0IGJlY29tZXMgdmlzaWJsZSBhZ2FpbiBmb3IgYW5vdGhlciBjb25zdW1lci4gVmFsdWVcbiAgICogbXVzdCBiZSBiZXR3ZWVuIDAgYW5kIDQzMjAwIHNlY29uZHMgKDEyIGhvdXJzKS5cbiAgICpcbiAgICogQGRlZmF1bHQgRHVyYXRpb24uc2Vjb25kcygzMClcbiAgICovXG4gIHJlYWRvbmx5IHZpc2liaWxpdHlUaW1lb3V0PzogRHVyYXRpb247XG5cbiAgLyoqXG4gICAqIFRoZSBLTVMga2V5IHRvIHVzZSBmb3IgZW5jcnlwdGlvbi4gSWYgbm90IHNldCwgdGhlIEFXUyBtYXN0ZXIga2V5IGZvciBTUVNcbiAgICogd2lsbCBiZSB1c2VkLlxuICAgKi9cbiAgcmVhZG9ubHkgZW5jcnlwdGlvbk1hc3RlcktleT86IGttcy5JS2V5O1xuXG4gIC8qKlxuICAgKiBUaGUgbGVuZ3RoIG9mIHRpbWUgdGhhdCBBbWF6b24gU1FTIHJldXNlcyBhIGRhdGEga2V5IGJlZm9yZSBjYWxsaW5nIEtNUyBhZ2Fpbi5cbiAgICogVGhpcyB2YWx1ZSBhZmZlY3RzIHByaWNpbmcgYXMgeW91IGFyZSBjaGFyZ2VkIGZvciBLTVMgdXNhZ2UuIFZhbHVlIG11c3QgYmVcbiAgICogYmV0d2VlbiA2MCBhbmQgODYsNDAwIHNlY29uZHMgKDI0IGhvdXJzKS5cbiAgICpcbiAgICogQGRlZmF1bHQgRHVyYXRpb24ubWludXRlcygxNSlcbiAgICovXG4gIHJlYWRvbmx5IGRhdGFLZXlSZXVzZT86IER1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBUaGUgbWF4aW11bSBudW1iZXIgb2YgdGltZXMgYSBtZXNzYWdlIGNhbiBiZSB1bnN1Y2Nlc3NmdWwgYmVmb3JlIGJlaW5nIG1vdmVkXG4gICAqIHRvIHRoZSBkZWFkLWxldHRlciBxdWV1ZS4gU2V0IHRoaXMgdmFsdWUgdG8gLTEgdG8gZGlzYWJsZSB0aGUgZGVhZC1sZXR0ZXIgcXVldWUuXG4gICAqXG4gICAqIEBkZWZhdWx0IDNcbiAgICovXG4gIHJlYWRvbmx5IG1heFJlY2VpdmVDb3VudD86IG51bWJlcjtcbn1cblxuZXhwb3J0IGNsYXNzIFN0YW5kYXJkUXVldWUgZXh0ZW5kcyBDb25zdHJ1Y3QgaW1wbGVtZW50cyBJUXVldWUge1xuXG4gIHN0YXRpYyByZWFkb25seSBERUZBVUxUX01BWF9SRUNFSVZFX0NPVU5UID0gMztcbiAgc3RhdGljIHJlYWRvbmx5IERFRkFVTFRfUkVURU5USU9OX1BFUklPRCA9IER1cmF0aW9uLnNlY29uZHMoMTIwOTYwMCk7XG5cbiAgcmVhZG9ubHkgcXVldWU6IEV4dGVuZGVkUXVldWU7XG5cbiAgLy8gRnJvbSBJUXVldWVcbiAgcmVhZG9ubHkgcXVldWVBcm46IHN0cmluZztcbiAgcmVhZG9ubHkgcXVldWVVcmw6IHN0cmluZztcbiAgcmVhZG9ubHkgcXVldWVOYW1lOiBzdHJpbmc7XG4gIHJlYWRvbmx5IGVuY3J5cHRpb25NYXN0ZXJLZXk/OiBrbXMuSUtleSB8IHVuZGVmaW5lZDtcbiAgcmVhZG9ubHkgZmlmbzogYm9vbGVhbjtcbiAgcmVhZG9ubHkgc3RhY2s6IFN0YWNrO1xuICByZWFkb25seSBlbnY6IFJlc291cmNlRW52aXJvbm1lbnQ7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM/OiBTdGFuZGFyZFF1ZXVlUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgY29uc3QgbWF4UmVjZWl2ZUNvdW50ID0gcHJvcHM/Lm1heFJlY2VpdmVDb3VudCA/PyBTdGFuZGFyZFF1ZXVlLkRFRkFVTFRfTUFYX1JFQ0VJVkVfQ09VTlQ7XG4gICAgY29uc3QgZW5jcnlwdGlvbiA9IHByb3BzPy5lbmNyeXB0aW9uTWFzdGVyS2V5ID09PSB1bmRlZmluZWQgPyBRdWV1ZUVuY3J5cHRpb24uS01TX01BTkFHRUQgOiBRdWV1ZUVuY3J5cHRpb24uS01TO1xuICAgIGNvbnN0IGVuY3J5cHRpb25NYXN0ZXJLZXkgPSBwcm9wcz8uZW5jcnlwdGlvbk1hc3RlcktleTtcbiAgICBjb25zdCBkYXRhS2V5UmV1c2UgPSBwcm9wcz8uZGF0YUtleVJldXNlID8/IER1cmF0aW9uLm1pbnV0ZXMoMTUpO1xuXG4gICAgY29uc3QgZGVhZExldHRlclF1ZXVlOiBEZWFkTGV0dGVyUXVldWUgfCB1bmRlZmluZWQgPSBtYXhSZWNlaXZlQ291bnQgPD0gMCA/IHVuZGVmaW5lZCA6IHtcbiAgICAgIHF1ZXVlOiBuZXcgUXVldWUodGhpcywgJ0RlYWRMZXR0ZXJRdWV1ZScsIHtcbiAgICAgICAgZW5jcnlwdGlvbixcbiAgICAgICAgZW5jcnlwdGlvbk1hc3RlcktleSxcbiAgICAgICAgZGF0YUtleVJldXNlLFxuICAgICAgICByZXRlbnRpb25QZXJpb2Q6IFN0YW5kYXJkUXVldWUuREVGQVVMVF9SRVRFTlRJT05fUEVSSU9EXG4gICAgICB9KSxcbiAgICAgIG1heFJlY2VpdmVDb3VudFxuICAgIH07XG5cbiAgICB0aGlzLnF1ZXVlID0gbmV3IEV4dGVuZGVkUXVldWUodGhpcywgJ1F1ZXVlJywge1xuICAgICAgLi4ucHJvcHMsXG4gICAgICBkZWFkTGV0dGVyUXVldWUsXG4gICAgICBlbmNyeXB0aW9uLFxuICAgICAgZW5jcnlwdGlvbk1hc3RlcktleSxcbiAgICAgIGRhdGFLZXlSZXVzZSxcbiAgICAgIGFsYXJtRnJpZW5kbHlOYW1lOiBwcm9wcz8uYWxhcm1GcmllbmRseU5hbWUgPz8gaWQsXG4gICAgICByZXRlbnRpb25QZXJpb2Q6IHByb3BzPy5yZXRlbnRpb25QZXJpb2QgPz8gU3RhbmRhcmRRdWV1ZS5ERUZBVUxUX1JFVEVOVElPTl9QRVJJT0QsXG4gICAgICB2aXNpYmlsaXR5VGltZW91dDogcHJvcHM/LnZpc2liaWxpdHlUaW1lb3V0ID8/IER1cmF0aW9uLnNlY29uZHMoMzApLFxuICAgICAgYWxhcm1OYW1lUHJlZml4OiBwcm9wcz8uYWxhcm1OYW1lUHJlZml4Pz9TdGFjay5vZih0aGlzKS5zdGFja05hbWUgKyBcIi1cIiArIGlkXG4gICAgfSk7XG5cbiAgICB0aGlzLnF1ZXVlQXJuID0gdGhpcy5xdWV1ZS5xdWV1ZUFybjtcbiAgICB0aGlzLnF1ZXVlVXJsID0gdGhpcy5xdWV1ZS5xdWV1ZVVybDtcbiAgICB0aGlzLnF1ZXVlTmFtZSA9IHRoaXMucXVldWUucXVldWVOYW1lO1xuICAgIHRoaXMuZW5jcnlwdGlvbk1hc3RlcktleSA9IHRoaXMucXVldWUuZW5jcnlwdGlvbk1hc3RlcktleTtcbiAgICB0aGlzLmZpZm8gPSB0aGlzLnF1ZXVlLmZpZm87XG4gICAgdGhpcy5zdGFjayA9IHRoaXMucXVldWUuc3RhY2s7XG4gICAgdGhpcy5lbnYgPSB0aGlzLnF1ZXVlLmVudjtcbiAgfVxuXG4gIC8vIEZyb20gSVF1ZXVlXG5cbiAgYWRkVG9SZXNvdXJjZVBvbGljeShzdGF0ZW1lbnQ6IFBvbGljeVN0YXRlbWVudCk6IEFkZFRvUmVzb3VyY2VQb2xpY3lSZXN1bHQge1xuICAgIHJldHVybiB0aGlzLnF1ZXVlLmFkZFRvUmVzb3VyY2VQb2xpY3koc3RhdGVtZW50KTtcbiAgfVxuXG4gIGdyYW50Q29uc3VtZU1lc3NhZ2VzKGdyYW50ZWU6IElHcmFudGFibGUpOiBHcmFudCB7XG4gICAgcmV0dXJuIHRoaXMucXVldWUuZ3JhbnRDb25zdW1lTWVzc2FnZXMoZ3JhbnRlZSk7XG4gIH1cblxuICBncmFudFNlbmRNZXNzYWdlcyhncmFudGVlOiBJR3JhbnRhYmxlKTogR3JhbnQge1xuICAgIHJldHVybiB0aGlzLnF1ZXVlLmdyYW50U2VuZE1lc3NhZ2VzKGdyYW50ZWUpO1xuICB9XG5cbiAgZ3JhbnRQdXJnZShncmFudGVlOiBJR3JhbnRhYmxlKTogR3JhbnQge1xuICAgIHJldHVybiB0aGlzLnF1ZXVlLmdyYW50UHVyZ2UoZ3JhbnRlZSk7XG4gIH1cblxuICBncmFudChncmFudGVlOiBJR3JhbnRhYmxlLCAuLi5xdWV1ZUFjdGlvbnM6IHN0cmluZ1tdKTogR3JhbnQge1xuICAgIHJldHVybiB0aGlzLnF1ZXVlLmdyYW50KGdyYW50ZWUsIC4uLnF1ZXVlQWN0aW9ucyk7XG4gIH1cblxuICBtZXRyaWMobWV0cmljTmFtZTogc3RyaW5nLCBwcm9wcz86IE1ldHJpY09wdGlvbnMpOiBNZXRyaWMge1xuICAgIHJldHVybiB0aGlzLnF1ZXVlLm1ldHJpYyhtZXRyaWNOYW1lLCBwcm9wcyk7XG4gIH1cblxuICBtZXRyaWNBcHByb3hpbWF0ZUFnZU9mT2xkZXN0TWVzc2FnZShwcm9wcz86IE1ldHJpY09wdGlvbnMpOiBNZXRyaWMge1xuICAgIHJldHVybiB0aGlzLnF1ZXVlLm1ldHJpY0FwcHJveGltYXRlQWdlT2ZPbGRlc3RNZXNzYWdlKHByb3BzKTtcbiAgfVxuXG4gIG1ldHJpY0FwcHJveGltYXRlTnVtYmVyT2ZNZXNzYWdlc0RlbGF5ZWQocHJvcHM/OiBNZXRyaWNPcHRpb25zKTogTWV0cmljIHtcbiAgICByZXR1cm4gdGhpcy5xdWV1ZS5tZXRyaWNBcHByb3hpbWF0ZU51bWJlck9mTWVzc2FnZXNEZWxheWVkKHByb3BzKTtcbiAgfVxuXG4gIG1ldHJpY0FwcHJveGltYXRlTnVtYmVyT2ZNZXNzYWdlc05vdFZpc2libGUocHJvcHM/OiBNZXRyaWNPcHRpb25zKTogTWV0cmljIHtcbiAgICByZXR1cm4gdGhpcy5xdWV1ZS5tZXRyaWNBcHByb3hpbWF0ZU51bWJlck9mTWVzc2FnZXNOb3RWaXNpYmxlKHByb3BzKTtcbiAgfVxuXG4gIG1ldHJpY0FwcHJveGltYXRlTnVtYmVyT2ZNZXNzYWdlc1Zpc2libGUocHJvcHM/OiBNZXRyaWNPcHRpb25zKTogTWV0cmljIHtcbiAgICByZXR1cm4gdGhpcy5xdWV1ZS5tZXRyaWNBcHByb3hpbWF0ZU51bWJlck9mTWVzc2FnZXNWaXNpYmxlKHByb3BzKTtcbiAgfVxuXG4gIG1ldHJpY051bWJlck9mRW1wdHlSZWNlaXZlcyhwcm9wcz86IE1ldHJpY09wdGlvbnMpOiBNZXRyaWMge1xuICAgIHJldHVybiB0aGlzLnF1ZXVlLm1ldHJpY051bWJlck9mRW1wdHlSZWNlaXZlcyhwcm9wcyk7XG4gIH1cblxuICBtZXRyaWNOdW1iZXJPZk1lc3NhZ2VzRGVsZXRlZChwcm9wcz86IE1ldHJpY09wdGlvbnMpOiBNZXRyaWMge1xuICAgIHJldHVybiB0aGlzLnF1ZXVlLm1ldHJpY051bWJlck9mTWVzc2FnZXNEZWxldGVkKHByb3BzKTtcbiAgfVxuXG4gIG1ldHJpY051bWJlck9mTWVzc2FnZXNSZWNlaXZlZChwcm9wcz86IE1ldHJpY09wdGlvbnMpOiBNZXRyaWMge1xuICAgIHJldHVybiB0aGlzLnF1ZXVlLm1ldHJpY051bWJlck9mTWVzc2FnZXNSZWNlaXZlZChwcm9wcyk7XG4gIH1cblxuICBtZXRyaWNOdW1iZXJPZk1lc3NhZ2VzU2VudChwcm9wcz86IE1ldHJpY09wdGlvbnMpOiBNZXRyaWMge1xuICAgIHJldHVybiB0aGlzLnF1ZXVlLm1ldHJpY051bWJlck9mTWVzc2FnZXNTZW50KHByb3BzKTtcbiAgfVxuXG4gIG1ldHJpY1NlbnRNZXNzYWdlU2l6ZShwcm9wcz86IE1ldHJpY09wdGlvbnMpOiBNZXRyaWMge1xuICAgIHJldHVybiB0aGlzLnF1ZXVlLm1ldHJpY1NlbnRNZXNzYWdlU2l6ZShwcm9wcyk7XG4gIH1cblxuICBhcHBseVJlbW92YWxQb2xpY3kocG9saWN5OiBSZW1vdmFsUG9saWN5KTogdm9pZCB7XG4gICAgcmV0dXJuIHRoaXMucXVldWUuYXBwbHlSZW1vdmFsUG9saWN5KHBvbGljeSk7XG4gIH1cbn1cbiJdfQ==
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "truemark-cdk-lib",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.37",
|
|
4
4
|
"main": "index.js",
|
|
5
5
|
"types": "index.d.ts",
|
|
6
6
|
"scripts": {
|
|
@@ -49,5 +49,5 @@
|
|
|
49
49
|
"@aws-cdk/aws-synthetics-alpha": "^2.18.0-alpha.0",
|
|
50
50
|
"cdk-monitoring-constructs": "^1.10.0"
|
|
51
51
|
},
|
|
52
|
-
"gitHead": "
|
|
52
|
+
"gitHead": "f2ef6f417c0e3125a4f812f2478cdaaaba47cf2e"
|
|
53
53
|
}
|
package/test/aws-lambda/{bundled-python-function.test.d.ts → standard-python-function.test.d.ts}
RENAMED
|
File without changes
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const assertions_1 = require("aws-cdk-lib/assertions");
|
|
4
|
+
const aws_lambda_1 = require("../../aws-lambda");
|
|
5
|
+
const test_helper_1 = require("../test-helper");
|
|
6
|
+
test("Test PythonFunction", () => {
|
|
7
|
+
const stack = test_helper_1.TestHelper.stack();
|
|
8
|
+
new aws_lambda_1.StandardPythonFunction(stack, "TestFunction", {
|
|
9
|
+
entry: test_helper_1.TestHelper.resolveTestFiles("python-lambda")
|
|
10
|
+
});
|
|
11
|
+
const template = assertions_1.Template.fromStack(stack);
|
|
12
|
+
template.hasResourceProperties(test_helper_1.ResourceType.LAMBDA_FUNCTION, {
|
|
13
|
+
Runtime: "python3.9"
|
|
14
|
+
});
|
|
15
|
+
template.resourceCountIs(test_helper_1.ResourceType.CLOUDWATCH_ALARM, 3);
|
|
16
|
+
});
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhbmRhcmQtcHl0aG9uLWZ1bmN0aW9uLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJzdGFuZGFyZC1weXRob24tZnVuY3Rpb24udGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHVEQUFnRDtBQUNoRCxpREFBd0Q7QUFDeEQsZ0RBQXdEO0FBRXhELElBQUksQ0FBQyxxQkFBcUIsRUFBRSxHQUFHLEVBQUU7SUFDL0IsTUFBTSxLQUFLLEdBQUcsd0JBQVUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNqQyxJQUFJLG1DQUFzQixDQUFDLEtBQUssRUFBRSxjQUFjLEVBQUU7UUFDaEQsS0FBSyxFQUFFLHdCQUFVLENBQUMsZ0JBQWdCLENBQUMsZUFBZSxDQUFDO0tBQ3BELENBQUMsQ0FBQztJQUNILE1BQU0sUUFBUSxHQUFHLHFCQUFRLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNDLFFBQVEsQ0FBQyxxQkFBcUIsQ0FBQywwQkFBWSxDQUFDLGVBQWUsRUFBRTtRQUMzRCxPQUFPLEVBQUUsV0FBVztLQUNyQixDQUFDLENBQUM7SUFDSCxRQUFRLENBQUMsZUFBZSxDQUFDLDBCQUFZLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDLENBQUM7QUFDN0QsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1RlbXBsYXRlfSBmcm9tIFwiYXdzLWNkay1saWIvYXNzZXJ0aW9uc1wiO1xuaW1wb3J0IHtTdGFuZGFyZFB5dGhvbkZ1bmN0aW9ufSBmcm9tIFwiLi4vLi4vYXdzLWxhbWJkYVwiO1xuaW1wb3J0IHtSZXNvdXJjZVR5cGUsIFRlc3RIZWxwZXJ9IGZyb20gXCIuLi90ZXN0LWhlbHBlclwiO1xuXG50ZXN0KFwiVGVzdCBQeXRob25GdW5jdGlvblwiLCAoKSA9PiB7XG4gIGNvbnN0IHN0YWNrID0gVGVzdEhlbHBlci5zdGFjaygpO1xuICBuZXcgU3RhbmRhcmRQeXRob25GdW5jdGlvbihzdGFjaywgXCJUZXN0RnVuY3Rpb25cIiwge1xuICAgIGVudHJ5OiBUZXN0SGVscGVyLnJlc29sdmVUZXN0RmlsZXMoXCJweXRob24tbGFtYmRhXCIpXG4gIH0pO1xuICBjb25zdCB0ZW1wbGF0ZSA9IFRlbXBsYXRlLmZyb21TdGFjayhzdGFjayk7XG4gIHRlbXBsYXRlLmhhc1Jlc291cmNlUHJvcGVydGllcyhSZXNvdXJjZVR5cGUuTEFNQkRBX0ZVTkNUSU9OLCB7XG4gICAgUnVudGltZTogXCJweXRob24zLjlcIlxuICB9KTtcbiAgdGVtcGxhdGUucmVzb3VyY2VDb3VudElzKFJlc291cmNlVHlwZS5DTE9VRFdBVENIX0FMQVJNLCAzKTtcbn0pO1xuIl19
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const cdk = require("aws-cdk-lib");
|
|
4
3
|
const aws_sqs_1 = require("../../aws-sqs");
|
|
5
4
|
const assertions_1 = require("aws-cdk-lib/assertions");
|
|
5
|
+
const test_helper_1 = require("../test-helper");
|
|
6
6
|
test("Standard Queue Test", () => {
|
|
7
|
-
const
|
|
8
|
-
|
|
9
|
-
new aws_sqs_1.StandardQueue(stack,
|
|
10
|
-
new aws_sqs_1.StandardQueue(stack, 'Test2', {});
|
|
7
|
+
const stack = test_helper_1.TestHelper.stack();
|
|
8
|
+
new aws_sqs_1.StandardQueue(stack, "Test1");
|
|
9
|
+
new aws_sqs_1.StandardQueue(stack, "Test2");
|
|
11
10
|
const template = assertions_1.Template.fromStack(stack);
|
|
12
11
|
template.hasResourceProperties("AWS::SQS::Queue", {});
|
|
12
|
+
test_helper_1.TestHelper.logResources(template, "AWS::CloudWatch::Alarm");
|
|
13
13
|
// console.log(template.findResources("AWS::CloudWatch::Alarm"));
|
|
14
14
|
// console.log(template.findResources("AWS::SQS::Queue"));
|
|
15
15
|
});
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhbmRhcmQtcXVldWUudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInN0YW5kYXJkLXF1ZXVlLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSwyQ0FBNEM7QUFDNUMsdURBQWdEO0FBQ2hELGdEQUEwQztBQUUxQyxJQUFJLENBQUMscUJBQXFCLEVBQUUsR0FBRyxFQUFFO0lBQy9CLE1BQU0sS0FBSyxHQUFHLHdCQUFVLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDakMsSUFBSSx1QkFBYSxDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNsQyxJQUFJLHVCQUFhLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ2xDLE1BQU0sUUFBUSxHQUFHLHFCQUFRLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNDLFFBQVEsQ0FBQyxxQkFBcUIsQ0FBQyxpQkFBaUIsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN0RCx3QkFBVSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsd0JBQXdCLENBQUMsQ0FBQztJQUM1RCxpRUFBaUU7SUFDakUsMERBQTBEO0FBQzVELENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtTdGFuZGFyZFF1ZXVlfSBmcm9tIFwiLi4vLi4vYXdzLXNxc1wiO1xuaW1wb3J0IHtUZW1wbGF0ZX0gZnJvbSBcImF3cy1jZGstbGliL2Fzc2VydGlvbnNcIjtcbmltcG9ydCB7VGVzdEhlbHBlcn0gZnJvbSBcIi4uL3Rlc3QtaGVscGVyXCI7XG5cbnRlc3QoXCJTdGFuZGFyZCBRdWV1ZSBUZXN0XCIsICgpID0+IHtcbiAgY29uc3Qgc3RhY2sgPSBUZXN0SGVscGVyLnN0YWNrKCk7XG4gIG5ldyBTdGFuZGFyZFF1ZXVlKHN0YWNrLCBcIlRlc3QxXCIpO1xuICBuZXcgU3RhbmRhcmRRdWV1ZShzdGFjaywgXCJUZXN0MlwiKTtcbiAgY29uc3QgdGVtcGxhdGUgPSBUZW1wbGF0ZS5mcm9tU3RhY2soc3RhY2spO1xuICB0ZW1wbGF0ZS5oYXNSZXNvdXJjZVByb3BlcnRpZXMoXCJBV1M6OlNRUzo6UXVldWVcIiwge30pO1xuICBUZXN0SGVscGVyLmxvZ1Jlc291cmNlcyh0ZW1wbGF0ZSwgXCJBV1M6OkNsb3VkV2F0Y2g6OkFsYXJtXCIpO1xuICAvLyBjb25zb2xlLmxvZyh0ZW1wbGF0ZS5maW5kUmVzb3VyY2VzKFwiQVdTOjpDbG91ZFdhdGNoOjpBbGFybVwiKSk7XG4gIC8vIGNvbnNvbGUubG9nKHRlbXBsYXRlLmZpbmRSZXNvdXJjZXMoXCJBV1M6OlNRUzo6UXVldWVcIikpO1xufSk7XG4iXX0=
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.BundledFunction = void 0;
|
|
4
|
-
const aws_cdk_lib_1 = require("aws-cdk-lib");
|
|
5
|
-
const helpers_1 = require("../../helpers");
|
|
6
|
-
const aws_lambda_1 = require("aws-cdk-lib/aws-lambda");
|
|
7
|
-
const extended_function_1 = require("./extended-function");
|
|
8
|
-
class BundledFunction extends extended_function_1.ExtendedFunction {
|
|
9
|
-
constructor(scope, id, props) {
|
|
10
|
-
var _a;
|
|
11
|
-
const local = props.disableLocalBundling ? undefined : {
|
|
12
|
-
tryBundle(outputDir, options) {
|
|
13
|
-
var _a;
|
|
14
|
-
try {
|
|
15
|
-
if (!props.isLocalBundlingSupported()) {
|
|
16
|
-
return false;
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
catch (_b) {
|
|
20
|
-
return false;
|
|
21
|
-
}
|
|
22
|
-
return helpers_1.ShellHelper.executeBash({
|
|
23
|
-
script: (_a = props.bundlingScript) !== null && _a !== void 0 ? _a : props.defaultBundlingScript,
|
|
24
|
-
workingDirectory: props.entry,
|
|
25
|
-
environment: {
|
|
26
|
-
...options.environment,
|
|
27
|
-
CDK_BUNDLING_OUTPUT_DIR: outputDir,
|
|
28
|
-
}
|
|
29
|
-
});
|
|
30
|
-
}
|
|
31
|
-
};
|
|
32
|
-
const command = props.disableDockerBundling ? undefined : ['bash', '-c', (_a = props.bundlingScript) !== null && _a !== void 0 ? _a : props.defaultBundlingScript];
|
|
33
|
-
super(scope, id, {
|
|
34
|
-
...props,
|
|
35
|
-
code: aws_lambda_1.Code.fromAsset(props.entry, {
|
|
36
|
-
bundling: {
|
|
37
|
-
image: props.defaultBundlingImage,
|
|
38
|
-
local,
|
|
39
|
-
command,
|
|
40
|
-
environment: {
|
|
41
|
-
CDK_BUNDLING_OUTPUT_DIR: '/asset-output/',
|
|
42
|
-
...props.bundlingEnvironment
|
|
43
|
-
},
|
|
44
|
-
outputType: aws_cdk_lib_1.BundlingOutput.NOT_ARCHIVED,
|
|
45
|
-
...props.bundling,
|
|
46
|
-
}
|
|
47
|
-
})
|
|
48
|
-
});
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
exports.BundledFunction = BundledFunction;
|
|
52
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVuZGxlZC1mdW5jdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImJ1bmRsZWQtZnVuY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRUEsNkNBQTREO0FBQzVELDJDQUEwQztBQUMxQyx1REFBc0U7QUFFdEUsMkRBQThFO0FBZ0Y5RSxNQUFhLGVBQWdCLFNBQVEsb0NBQWdCO0lBRW5ELFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBMkI7O1FBRW5FLE1BQU0sS0FBSyxHQUErQixLQUFLLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7WUFDakYsU0FBUyxDQUFDLFNBQWlCLEVBQUUsT0FBd0I7O2dCQUNuRCxJQUFJO29CQUNGLElBQUksQ0FBQyxLQUFLLENBQUMsd0JBQXdCLEVBQUUsRUFBQzt3QkFDcEMsT0FBTyxLQUFLLENBQUM7cUJBQ2Q7aUJBQ0Y7Z0JBQUMsV0FBTTtvQkFDTixPQUFPLEtBQUssQ0FBQztpQkFDZDtnQkFDRCxPQUFPLHFCQUFXLENBQUMsV0FBVyxDQUFDO29CQUM3QixNQUFNLFFBQUUsS0FBSyxDQUFDLGNBQWMsbUNBQUUsS0FBSyxDQUFDLHFCQUFxQjtvQkFDekQsZ0JBQWdCLEVBQUUsS0FBSyxDQUFDLEtBQUs7b0JBQzdCLFdBQVcsRUFBRTt3QkFDWCxHQUFHLE9BQU8sQ0FBQyxXQUFXO3dCQUN0Qix1QkFBdUIsRUFBRSxTQUFTO3FCQUNuQztpQkFDRixDQUFDLENBQUM7WUFDTCxDQUFDO1NBQ0YsQ0FBQTtRQUVELE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxJQUFJLFFBQUUsS0FBSyxDQUFDLGNBQWMsbUNBQUUsS0FBSyxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFFNUgsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUU7WUFDZixHQUFHLEtBQUs7WUFDUixJQUFJLEVBQUUsaUJBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRTtnQkFDaEMsUUFBUSxFQUFFO29CQUNSLEtBQUssRUFBRSxLQUFLLENBQUMsb0JBQW9CO29CQUNqQyxLQUFLO29CQUNMLE9BQU87b0JBQ1AsV0FBVyxFQUFFO3dCQUNYLHVCQUF1QixFQUFFLGdCQUFnQjt3QkFDekMsR0FBRyxLQUFLLENBQUMsbUJBQW1CO3FCQUM3QjtvQkFDRCxVQUFVLEVBQUUsNEJBQWMsQ0FBQyxZQUFZO29CQUN2QyxHQUFHLEtBQUssQ0FBQyxRQUFRO2lCQUNsQjthQUNGLENBQUM7U0FDSCxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0Y7QUEzQ0QsMENBMkNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb25zdHJ1Y3R9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQge0RvY2tlckltYWdlLCBJTG9jYWxCdW5kbGluZ30gZnJvbSBcImF3cy1jZGstbGliL2NvcmUvbGliL2J1bmRsaW5nXCI7XG5pbXBvcnQge0J1bmRsaW5nT3B0aW9ucywgQnVuZGxpbmdPdXRwdXR9IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0IHtTaGVsbEhlbHBlcn0gZnJvbSBcIi4uLy4uL2hlbHBlcnNcIjtcbmltcG9ydCB7Q29kZSwgRnVuY3Rpb25PcHRpb25zLCBSdW50aW1lfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWxhbWJkYVwiO1xuaW1wb3J0IHtGdW5jdGlvbkFsYXJtc09wdGlvbnN9IGZyb20gXCIuL2Z1bmN0aW9uLWFsYXJtc1wiO1xuaW1wb3J0IHtEZXBsb3llZEZ1bmN0aW9uT3B0aW9ucywgRXh0ZW5kZWRGdW5jdGlvbn0gZnJvbSBcIi4vZXh0ZW5kZWQtZnVuY3Rpb25cIjtcblxuLyoqXG4gKiBPcHRpb25zIGZvciBCdW5kbGVkRnVuY3Rpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQnVuZGxlZEZ1bmN0aW9uT3B0aW9ucyB7XG5cbiAgLyoqXG4gICAqIFR1cm5zIG9mZiBsb2NhbCBidW5kbGluZy5cbiAgICpcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGRpc2FibGVMb2NhbEJ1bmRsaW5nPzogYm9vbGVhblxuXG4gIC8qKlxuICAgKiBUdXJucyBvZmYgZG9ja2VyIGJ1bmRsaW5nLlxuICAgKlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgZGlzYWJsZURvY2tlckJ1bmRsaW5nPzogYm9vbGVhblxuXG4gIC8qKlxuICAgKiBPdmVycmlkZXMgdGhlIGRlZmF1bHQgYnVuZGxpbmcgc2NyaXB0LlxuICAgKi9cbiAgcmVhZG9ubHkgYnVuZGxpbmdTY3JpcHQ/OiBzdHJpbmdcblxuICAvKipcbiAgICogQWRkaXRpb25hbCBlbnZpcm9ubWVudCB2YXJpYWJsZSB0byBiZSBwYXNzZWQgdG8gdGhlIGJ1bmRsaW5nIHNjcmlwdC5cbiAgICovXG4gIHJlYWRvbmx5IGJ1bmRsaW5nRW52aXJvbm1lbnQ/OiB7XG4gICAgW2tleTogc3RyaW5nXTogc3RyaW5nO1xuICB9O1xuXG4gIC8qKlxuICAgKiBCdW5kbGluZyBvcHRpb25zIHRvIHVzZSBmb3IgdGhpcyBmdW5jdGlvbi4gVXNlIHRoaXMgdG8gc3BlY2lmeSBjdXN0b20gYnVuZGxpbmcgb3B0aW9ucyBsaWtlXG4gICAqIHRoZSBidW5kbGluZyBEb2NrZXIgaW1hZ2UsIGFzc2V0IGhhc2ggdHlwZSwgY3VzdG9tIGhhc2gsIGFyY2hpdGVjdHVyZSwgZXRjLlxuICAgKlxuICAgKiBAZGVmYXVsdFxuICAgKi9cbiAgcmVhZG9ubHkgYnVuZGxpbmc/OiBCdW5kbGluZ09wdGlvbnM7XG5cbiAgLyoqXG4gICAqIFBhdGggdG8gdGhlIHNvdXJjZSBvZiB0aGUgZnVuY3Rpb24uXG4gICAqXG4gICAqIEV4YW1wbGU6IHBhdGguam9pbihfX2Rpcm5hbWUsICcuLicsICdteWxhbWJkYScpXG4gICAqL1xuICByZWFkb25seSBlbnRyeTogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIEJ1bmRsZWRGdW5jdGlvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJ1bmRsZWRGdW5jdGlvblByb3BzIGV4dGVuZHMgRnVuY3Rpb25PcHRpb25zLCBGdW5jdGlvbkFsYXJtc09wdGlvbnMsIERlcGxveWVkRnVuY3Rpb25PcHRpb25zLCBCdW5kbGVkRnVuY3Rpb25PcHRpb25zIHtcblxuICAvKipcbiAgICogQ2FsbGJhY2sgZnVuY3Rpb24gdG8gY2hlY2sgaWYgbG9jYWwgYnVuZGxpbmcgaXMgc3VwcG9ydGVkLlxuICAgKi9cbiAgcmVhZG9ubHkgaXNMb2NhbEJ1bmRsaW5nU3VwcG9ydGVkOiAoKSA9PiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBUaGUgZGVmYXVsdCBidW5kbGluZyBzY3JpcHQgdG8gdXNlLlxuICAgKi9cbiAgcmVhZG9ubHkgZGVmYXVsdEJ1bmRsaW5nU2NyaXB0OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBkZWZhdWx0IGJ1bmRsaW5nIGltYWdlIHRvIHVzZS5cbiAgICovXG4gIHJlYWRvbmx5IGRlZmF1bHRCdW5kbGluZ0ltYWdlOiBEb2NrZXJJbWFnZTtcblxuICAvKipcbiAgICogVGhlIHJ1bnRpbWUgZW52aXJvbm1lbnQgZm9yIHRoZSBMYW1iZGEgZnVuY3Rpb24uXG4gICAqL1xuICByZWFkb25seSBydW50aW1lOiBSdW50aW1lO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgbWV0aG9kIHRvIGV4ZWN1dGUgdGhlIExhbWJkYSBmdW5jdGlvbi5cbiAgICovXG4gIHJlYWRvbmx5IGhhbmRsZXI6IHN0cmluZztcbn1cblxuZXhwb3J0IGNsYXNzIEJ1bmRsZWRGdW5jdGlvbiBleHRlbmRzIEV4dGVuZGVkRnVuY3Rpb24ge1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBCdW5kbGVkRnVuY3Rpb25Qcm9wcykge1xuXG4gICAgY29uc3QgbG9jYWw6IElMb2NhbEJ1bmRsaW5nIHwgdW5kZWZpbmVkID0gcHJvcHMuZGlzYWJsZUxvY2FsQnVuZGxpbmcgPyB1bmRlZmluZWQgOiB7XG4gICAgICB0cnlCdW5kbGUob3V0cHV0RGlyOiBzdHJpbmcsIG9wdGlvbnM6IEJ1bmRsaW5nT3B0aW9ucyk6IGJvb2xlYW4ge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIGlmICghcHJvcHMuaXNMb2NhbEJ1bmRsaW5nU3VwcG9ydGVkKCkpe1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBjYXRjaCB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBTaGVsbEhlbHBlci5leGVjdXRlQmFzaCh7XG4gICAgICAgICAgc2NyaXB0OiBwcm9wcy5idW5kbGluZ1NjcmlwdD8/cHJvcHMuZGVmYXVsdEJ1bmRsaW5nU2NyaXB0LFxuICAgICAgICAgIHdvcmtpbmdEaXJlY3Rvcnk6IHByb3BzLmVudHJ5LFxuICAgICAgICAgIGVudmlyb25tZW50OiB7XG4gICAgICAgICAgICAuLi5vcHRpb25zLmVudmlyb25tZW50LFxuICAgICAgICAgICAgQ0RLX0JVTkRMSU5HX09VVFBVVF9ESVI6IG91dHB1dERpcixcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IGNvbW1hbmQgPSBwcm9wcy5kaXNhYmxlRG9ja2VyQnVuZGxpbmcgPyB1bmRlZmluZWQgOiBbJ2Jhc2gnLCAnLWMnLCBwcm9wcy5idW5kbGluZ1NjcmlwdD8/cHJvcHMuZGVmYXVsdEJ1bmRsaW5nU2NyaXB0XTtcblxuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgLi4ucHJvcHMsXG4gICAgICBjb2RlOiBDb2RlLmZyb21Bc3NldChwcm9wcy5lbnRyeSwge1xuICAgICAgICBidW5kbGluZzoge1xuICAgICAgICAgIGltYWdlOiBwcm9wcy5kZWZhdWx0QnVuZGxpbmdJbWFnZSxcbiAgICAgICAgICBsb2NhbCxcbiAgICAgICAgICBjb21tYW5kLFxuICAgICAgICAgIGVudmlyb25tZW50OiB7XG4gICAgICAgICAgICBDREtfQlVORExJTkdfT1VUUFVUX0RJUjogJy9hc3NldC1vdXRwdXQvJyxcbiAgICAgICAgICAgIC4uLnByb3BzLmJ1bmRsaW5nRW52aXJvbm1lbnRcbiAgICAgICAgICB9LFxuICAgICAgICAgIG91dHB1dFR5cGU6IEJ1bmRsaW5nT3V0cHV0Lk5PVF9BUkNISVZFRCxcbiAgICAgICAgICAuLi5wcm9wcy5idW5kbGluZyxcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.BundledPythonFunction = void 0;
|
|
4
|
-
const aws_lambda_1 = require("aws-cdk-lib/aws-lambda");
|
|
5
|
-
const aws_cdk_lib_1 = require("aws-cdk-lib");
|
|
6
|
-
const aws_logs_1 = require("aws-cdk-lib/aws-logs");
|
|
7
|
-
const helpers_1 = require("../../helpers");
|
|
8
|
-
const bundled_function_1 = require("./bundled-function");
|
|
9
|
-
const path = require("path");
|
|
10
|
-
const fs = require("fs");
|
|
11
|
-
/**
|
|
12
|
-
* Python based Lambda Function
|
|
13
|
-
*/
|
|
14
|
-
class BundledPythonFunction extends bundled_function_1.BundledFunction {
|
|
15
|
-
static isLocalBundlingSupported() {
|
|
16
|
-
return helpers_1.ShellHelper.pythonVersion() !== null;
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* Creates a new Lambda Function
|
|
20
|
-
*/
|
|
21
|
-
constructor(scope, id, props) {
|
|
22
|
-
var _a, _b, _c;
|
|
23
|
-
const runtime = (_a = props.runtime) !== null && _a !== void 0 ? _a : aws_lambda_1.Runtime.PYTHON_3_9;
|
|
24
|
-
if (runtime.family !== aws_lambda_1.RuntimeFamily.PYTHON) {
|
|
25
|
-
throw new Error('Runtime must be a Python runtime');
|
|
26
|
-
}
|
|
27
|
-
const handler = ((_b = props.index) !== null && _b !== void 0 ? _b : 'index.py').replace('.py', '') + '.' + ((_c = props.handler) !== null && _c !== void 0 ? _c : 'handler');
|
|
28
|
-
const defaultBundlingScript = fs.readFileSync(path.join(path.dirname(fs.realpathSync(__filename)), 'bundle-python.sh'), 'utf-8');
|
|
29
|
-
super(scope, id, {
|
|
30
|
-
// defaults which may be overridden by ...props
|
|
31
|
-
tracing: aws_lambda_1.Tracing.PASS_THROUGH,
|
|
32
|
-
logRetention: aws_logs_1.RetentionDays.THREE_DAYS,
|
|
33
|
-
architecture: aws_lambda_1.Architecture.ARM_64,
|
|
34
|
-
memorySize: 768,
|
|
35
|
-
timeout: aws_cdk_lib_1.Duration.seconds(30),
|
|
36
|
-
...props,
|
|
37
|
-
bundlingEnvironment: {
|
|
38
|
-
PIP_PROGRESS_BAR: 'off',
|
|
39
|
-
PIP_DISABLE_PIP_VERSION_CHECK: '1',
|
|
40
|
-
...props.bundlingEnvironment
|
|
41
|
-
},
|
|
42
|
-
runtime,
|
|
43
|
-
handler,
|
|
44
|
-
defaultBundlingScript,
|
|
45
|
-
defaultBundlingImage: runtime.bundlingImage,
|
|
46
|
-
isLocalBundlingSupported: BundledPythonFunction.isLocalBundlingSupported
|
|
47
|
-
});
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
exports.BundledPythonFunction = BundledPythonFunction;
|
|
51
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVuZGxlZC1weXRob24tZnVuY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJidW5kbGVkLXB5dGhvbi1mdW5jdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx1REFBc0c7QUFFdEcsNkNBQXFDO0FBQ3JDLG1EQUFtRDtBQUNuRCwyQ0FBMEM7QUFDMUMseURBQTJFO0FBRzNFLDZCQUE2QjtBQUM3Qix5QkFBeUI7QUE2QnpCOztHQUVHO0FBQ0gsTUFBYSxxQkFBc0IsU0FBUSxrQ0FBZTtJQUV4RCxNQUFNLENBQUMsd0JBQXdCO1FBQzdCLE9BQU8scUJBQVcsQ0FBQyxhQUFhLEVBQUUsS0FBSyxJQUFJLENBQUM7SUFDOUMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFpQzs7UUFFekUsTUFBTSxPQUFPLFNBQUcsS0FBSyxDQUFDLE9BQU8sbUNBQUUsb0JBQU8sQ0FBQyxVQUFVLENBQUE7UUFDakQsSUFBSSxPQUFPLENBQUMsTUFBTSxLQUFLLDBCQUFhLENBQUMsTUFBTSxFQUFFO1lBQzNDLE1BQU0sSUFBSSxLQUFLLENBQUMsa0NBQWtDLENBQUMsQ0FBQztTQUNyRDtRQUVELE1BQU0sT0FBTyxHQUFHLE9BQUMsS0FBSyxDQUFDLEtBQUssbUNBQUUsVUFBVSxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsR0FBRyxHQUFHLEdBQUcsT0FBQyxLQUFLLENBQUMsT0FBTyxtQ0FBRSxTQUFTLENBQUMsQ0FBQztRQUNoRyxNQUFNLHFCQUFxQixHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLENBQUMsRUFBRSxrQkFBa0IsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBRWpJLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ2YsK0NBQStDO1lBQy9DLE9BQU8sRUFBRSxvQkFBTyxDQUFDLFlBQVk7WUFDN0IsWUFBWSxFQUFFLHdCQUFhLENBQUMsVUFBVTtZQUN0QyxZQUFZLEVBQUUseUJBQVksQ0FBQyxNQUFNO1lBQ2pDLFVBQVUsRUFBRSxHQUFHO1lBQ2YsT0FBTyxFQUFFLHNCQUFRLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUM3QixHQUFHLEtBQUs7WUFDUixtQkFBbUIsRUFBRTtnQkFDbkIsZ0JBQWdCLEVBQUUsS0FBSztnQkFDdkIsNkJBQTZCLEVBQUUsR0FBRztnQkFDbEMsR0FBRyxLQUFLLENBQUMsbUJBQW1CO2FBQzdCO1lBQ0QsT0FBTztZQUNQLE9BQU87WUFDUCxxQkFBcUI7WUFDckIsb0JBQW9CLEVBQUUsT0FBTyxDQUFDLGFBQWE7WUFDM0Msd0JBQXdCLEVBQUUscUJBQXFCLENBQUMsd0JBQXdCO1NBQ3pFLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQXZDRCxzREF1Q0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FyY2hpdGVjdHVyZSwgRnVuY3Rpb25PcHRpb25zLCBSdW50aW1lLCBSdW50aW1lRmFtaWx5LCBUcmFjaW5nfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtbGFtYmRhJztcbmltcG9ydCB7Q29uc3RydWN0fSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHtEdXJhdGlvbn0gZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQge1JldGVudGlvbkRheXN9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtbG9nc1wiO1xuaW1wb3J0IHtTaGVsbEhlbHBlcn0gZnJvbSBcIi4uLy4uL2hlbHBlcnNcIjtcbmltcG9ydCB7QnVuZGxlZEZ1bmN0aW9uLCBCdW5kbGVkRnVuY3Rpb25PcHRpb25zfSBmcm9tIFwiLi9idW5kbGVkLWZ1bmN0aW9uXCI7XG5pbXBvcnQge0RlcGxveWVkRnVuY3Rpb25PcHRpb25zfSBmcm9tIFwiLi9leHRlbmRlZC1mdW5jdGlvblwiO1xuaW1wb3J0IHtGdW5jdGlvbkFsYXJtc09wdGlvbnN9IGZyb20gXCIuL2Z1bmN0aW9uLWFsYXJtc1wiO1xuaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCAqIGFzIGZzIGZyb20gJ2ZzJztcblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBCdW5kbGVkUHl0aG9uRnVuY3Rpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQnVuZGxlZFB5dGhvbkZ1bmN0aW9uUHJvcHMgZXh0ZW5kcyBGdW5jdGlvbk9wdGlvbnMsIEZ1bmN0aW9uQWxhcm1zT3B0aW9ucywgRGVwbG95ZWRGdW5jdGlvbk9wdGlvbnMsIEJ1bmRsZWRGdW5jdGlvbk9wdGlvbnMge1xuXG4gIC8qKlxuICAgKiBUaGUgcGF0aCAocmVsYXRpdmUgdG8gZW50cnkpIHRvIHRoZSBpbmRleCBmaWxlIGNvbnRhaW5pbmcgdGhlIGV4cG9ydGVkIGhhbmRsZXIuXG4gICAqXG4gICAqIEBkZWZhdWx0ICdpbmRleC5weSdcbiAgICovXG4gIHJlYWRvbmx5IGluZGV4Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgZXhwb3J0ZWQgaGFuZGxlciBpbiB0aGUgaW5kZXggZmlsZS5cbiAgICpcbiAgICogQGRlZmF1bHQgJ2hhbmRsZXInXG4gICAqL1xuICByZWFkb25seSBoYW5kbGVyPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgcnVudGltZSBlbnZpcm9ubWVudC4gT25seSBydW50aW1lcyBvZiB0aGUgUHl0aG9uIGZhbWlseSBhcmUgc3VwcG9ydGVkLlxuICAgKlxuICAgKiBAZGVmYXVsdCBSdW50aW1lLlBZVEhPTl8zXzlcbiAgICovXG4gIHJlYWRvbmx5IHJ1bnRpbWU/OiBSdW50aW1lO1xufVxuXG4vKipcbiAqIFB5dGhvbiBiYXNlZCBMYW1iZGEgRnVuY3Rpb25cbiAqL1xuZXhwb3J0IGNsYXNzIEJ1bmRsZWRQeXRob25GdW5jdGlvbiBleHRlbmRzIEJ1bmRsZWRGdW5jdGlvbiB7XG5cbiAgc3RhdGljIGlzTG9jYWxCdW5kbGluZ1N1cHBvcnRlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gU2hlbGxIZWxwZXIucHl0aG9uVmVyc2lvbigpICE9PSBudWxsO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgTGFtYmRhIEZ1bmN0aW9uXG4gICAqL1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogQnVuZGxlZFB5dGhvbkZ1bmN0aW9uUHJvcHMpIHtcblxuICAgIGNvbnN0IHJ1bnRpbWUgPSBwcm9wcy5ydW50aW1lPz9SdW50aW1lLlBZVEhPTl8zXzlcbiAgICBpZiAocnVudGltZS5mYW1pbHkgIT09IFJ1bnRpbWVGYW1pbHkuUFlUSE9OKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1J1bnRpbWUgbXVzdCBiZSBhIFB5dGhvbiBydW50aW1lJyk7XG4gICAgfVxuXG4gICAgY29uc3QgaGFuZGxlciA9IChwcm9wcy5pbmRleD8/J2luZGV4LnB5JykucmVwbGFjZSgnLnB5JywgJycpICsgJy4nICsgKHByb3BzLmhhbmRsZXI/PydoYW5kbGVyJyk7XG4gICAgY29uc3QgZGVmYXVsdEJ1bmRsaW5nU2NyaXB0ID0gZnMucmVhZEZpbGVTeW5jKHBhdGguam9pbihwYXRoLmRpcm5hbWUoZnMucmVhbHBhdGhTeW5jKF9fZmlsZW5hbWUpKSwgJ2J1bmRsZS1weXRob24uc2gnKSwgJ3V0Zi04Jyk7XG5cbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIC8vIGRlZmF1bHRzIHdoaWNoIG1heSBiZSBvdmVycmlkZGVuIGJ5IC4uLnByb3BzXG4gICAgICB0cmFjaW5nOiBUcmFjaW5nLlBBU1NfVEhST1VHSCxcbiAgICAgIGxvZ1JldGVudGlvbjogUmV0ZW50aW9uRGF5cy5USFJFRV9EQVlTLFxuICAgICAgYXJjaGl0ZWN0dXJlOiBBcmNoaXRlY3R1cmUuQVJNXzY0LFxuICAgICAgbWVtb3J5U2l6ZTogNzY4LFxuICAgICAgdGltZW91dDogRHVyYXRpb24uc2Vjb25kcygzMCksXG4gICAgICAuLi5wcm9wcyxcbiAgICAgIGJ1bmRsaW5nRW52aXJvbm1lbnQ6IHtcbiAgICAgICAgUElQX1BST0dSRVNTX0JBUjogJ29mZicsXG4gICAgICAgIFBJUF9ESVNBQkxFX1BJUF9WRVJTSU9OX0NIRUNLOiAnMScsXG4gICAgICAgIC4uLnByb3BzLmJ1bmRsaW5nRW52aXJvbm1lbnRcbiAgICAgIH0sXG4gICAgICBydW50aW1lLFxuICAgICAgaGFuZGxlcixcbiAgICAgIGRlZmF1bHRCdW5kbGluZ1NjcmlwdCxcbiAgICAgIGRlZmF1bHRCdW5kbGluZ0ltYWdlOiBydW50aW1lLmJ1bmRsaW5nSW1hZ2UsXG4gICAgICBpc0xvY2FsQnVuZGxpbmdTdXBwb3J0ZWQ6IEJ1bmRsZWRQeXRob25GdW5jdGlvbi5pc0xvY2FsQnVuZGxpbmdTdXBwb3J0ZWRcbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const assertions_1 = require("aws-cdk-lib/assertions");
|
|
4
|
-
const aws_lambda_1 = require("../../aws-lambda");
|
|
5
|
-
const test_helper_1 = require("../test-helper");
|
|
6
|
-
test("Test PythonFunction", () => {
|
|
7
|
-
const stack = test_helper_1.TestHelper.stack();
|
|
8
|
-
new aws_lambda_1.BundledPythonFunction(stack, "TestFunction", {
|
|
9
|
-
entry: test_helper_1.TestHelper.resolveTestFiles("python-lambda")
|
|
10
|
-
});
|
|
11
|
-
const template = assertions_1.Template.fromStack(stack);
|
|
12
|
-
template.hasResourceProperties(test_helper_1.ResourceType.LAMBDA_FUNCTION, {
|
|
13
|
-
Runtime: "python3.9"
|
|
14
|
-
});
|
|
15
|
-
template.resourceCountIs(test_helper_1.ResourceType.CLOUDWATCH_ALARM, 3);
|
|
16
|
-
});
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVuZGxlZC1weXRob24tZnVuY3Rpb24udGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImJ1bmRsZWQtcHl0aG9uLWZ1bmN0aW9uLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSx1REFBZ0Q7QUFDaEQsaURBQXVEO0FBQ3ZELGdEQUF3RDtBQUV4RCxJQUFJLENBQUMscUJBQXFCLEVBQUUsR0FBRyxFQUFFO0lBQy9CLE1BQU0sS0FBSyxHQUFHLHdCQUFVLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDakMsSUFBSSxrQ0FBcUIsQ0FBQyxLQUFLLEVBQUUsY0FBYyxFQUFFO1FBQy9DLEtBQUssRUFBRSx3QkFBVSxDQUFDLGdCQUFnQixDQUFDLGVBQWUsQ0FBQztLQUNwRCxDQUFDLENBQUM7SUFDSCxNQUFNLFFBQVEsR0FBRyxxQkFBUSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQyxRQUFRLENBQUMscUJBQXFCLENBQUMsMEJBQVksQ0FBQyxlQUFlLEVBQUU7UUFDM0QsT0FBTyxFQUFFLFdBQVc7S0FDckIsQ0FBQyxDQUFDO0lBQ0gsUUFBUSxDQUFDLGVBQWUsQ0FBQywwQkFBWSxDQUFDLGdCQUFnQixFQUFFLENBQUMsQ0FBQyxDQUFDO0FBQzdELENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtUZW1wbGF0ZX0gZnJvbSBcImF3cy1jZGstbGliL2Fzc2VydGlvbnNcIjtcbmltcG9ydCB7QnVuZGxlZFB5dGhvbkZ1bmN0aW9ufSBmcm9tIFwiLi4vLi4vYXdzLWxhbWJkYVwiO1xuaW1wb3J0IHtSZXNvdXJjZVR5cGUsIFRlc3RIZWxwZXJ9IGZyb20gXCIuLi90ZXN0LWhlbHBlclwiO1xuXG50ZXN0KFwiVGVzdCBQeXRob25GdW5jdGlvblwiLCAoKSA9PiB7XG4gIGNvbnN0IHN0YWNrID0gVGVzdEhlbHBlci5zdGFjaygpO1xuICBuZXcgQnVuZGxlZFB5dGhvbkZ1bmN0aW9uKHN0YWNrLCBcIlRlc3RGdW5jdGlvblwiLCB7XG4gICAgZW50cnk6IFRlc3RIZWxwZXIucmVzb2x2ZVRlc3RGaWxlcyhcInB5dGhvbi1sYW1iZGFcIilcbiAgfSk7XG4gIGNvbnN0IHRlbXBsYXRlID0gVGVtcGxhdGUuZnJvbVN0YWNrKHN0YWNrKTtcbiAgdGVtcGxhdGUuaGFzUmVzb3VyY2VQcm9wZXJ0aWVzKFJlc291cmNlVHlwZS5MQU1CREFfRlVOQ1RJT04sIHtcbiAgICBSdW50aW1lOiBcInB5dGhvbjMuOVwiXG4gIH0pO1xuICB0ZW1wbGF0ZS5yZXNvdXJjZUNvdW50SXMoUmVzb3VyY2VUeXBlLkNMT1VEV0FUQ0hfQUxBUk0sIDMpO1xufSk7XG4iXX0=
|