@robhan-cdk-lib/aws_aps 0.0.143 → 0.0.145
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.jsii +1613 -431
- package/API.md +1999 -277
- package/LICENSE +1 -1
- package/lib/anomaly-detector-base.d.ts +163 -0
- package/lib/anomaly-detector-base.js +12 -0
- package/lib/anomaly-detector.d.ts +95 -0
- package/lib/anomaly-detector.js +83 -0
- package/lib/index.d.ts +4 -0
- package/lib/index.js +7 -1
- package/lib/resource-policy-base.d.ts +22 -0
- package/lib/resource-policy-base.js +12 -0
- package/lib/resource-policy.d.ts +42 -0
- package/lib/resource-policy.js +56 -0
- package/lib/rule-groups-namespace-base.js +1 -1
- package/lib/rule-groups-namespace.js +1 -1
- package/lib/scraper-base.js +1 -1
- package/lib/scraper.js +1 -1
- package/lib/validation/anomaly-detector-base.d.ts +5 -0
- package/lib/validation/anomaly-detector-base.js +171 -0
- package/lib/workspace-base.js +1 -1
- package/lib/workspace.js +1 -1
- package/package.json +5 -5
package/LICENSE
CHANGED
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
import { IResource, Resource } from 'aws-cdk-lib';
|
|
2
|
+
import { IWorkspace } from './workspace-base';
|
|
3
|
+
/**
|
|
4
|
+
* Configuration for threshold settings that determine when values near expected values should be ignored during anomaly detection.
|
|
5
|
+
*/
|
|
6
|
+
export interface IgnoreNearExpected {
|
|
7
|
+
/**
|
|
8
|
+
* The absolute amount by which values can differ from expected values before being considered anomalous.
|
|
9
|
+
*/
|
|
10
|
+
readonly amount?: number;
|
|
11
|
+
/**
|
|
12
|
+
* The ratio by which values can differ from expected values before being considered anomalous.
|
|
13
|
+
*/
|
|
14
|
+
readonly ratio?: number;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Configuration for the Random Cut Forest algorithm used for anomaly detection in time-series data.
|
|
18
|
+
*/
|
|
19
|
+
export interface RandomCutForestConfiguration {
|
|
20
|
+
/**
|
|
21
|
+
* Configuration for ignoring values that are near expected values from above during anomaly detection.
|
|
22
|
+
*/
|
|
23
|
+
readonly ignoreNearExpectedFromAbove?: IgnoreNearExpected;
|
|
24
|
+
/**
|
|
25
|
+
* Configuration for ignoring values that are near expected values from below during anomaly detection.
|
|
26
|
+
*/
|
|
27
|
+
readonly ignoreNearExpectedFromBelow?: IgnoreNearExpected;
|
|
28
|
+
/**
|
|
29
|
+
* The Prometheus query used to retrieve the time-series data for anomaly detection. 1 to 8192 characters length.
|
|
30
|
+
*/
|
|
31
|
+
readonly query: string;
|
|
32
|
+
/**
|
|
33
|
+
* The number of data points sampled from the input stream for the Random Cut Forest algorithm. The default number is 256 consecutive data points.
|
|
34
|
+
*
|
|
35
|
+
* Minimum: 256
|
|
36
|
+
* Maximum: 1024
|
|
37
|
+
*/
|
|
38
|
+
readonly sampleSize?: number;
|
|
39
|
+
/**
|
|
40
|
+
* The number of consecutive data points used to create a shingle for the Random Cut Forest algorithm. The default number is 8 consecutive data points.
|
|
41
|
+
*
|
|
42
|
+
* Minimum: 2
|
|
43
|
+
* Maximum: 1024
|
|
44
|
+
*/
|
|
45
|
+
readonly shingleSize?: number;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* The configuration for the anomaly detection algorithm.
|
|
49
|
+
*/
|
|
50
|
+
export interface AnomalyDetectorConfiguration {
|
|
51
|
+
/**
|
|
52
|
+
* The Random Cut Forest algorithm configuration for anomaly detection.
|
|
53
|
+
*/
|
|
54
|
+
readonly randomCutForest: RandomCutForestConfiguration;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* The Amazon Managed Service for Prometheus metric labels associated with the anomaly detector.
|
|
58
|
+
*/
|
|
59
|
+
export interface Label {
|
|
60
|
+
/**
|
|
61
|
+
* The key of the label. 1 to 128 characters length.
|
|
62
|
+
*/
|
|
63
|
+
readonly key: string;
|
|
64
|
+
/**
|
|
65
|
+
* The value for this label. 0 to 256 characters length.
|
|
66
|
+
*/
|
|
67
|
+
readonly value: string;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Specifies the action to take when data is missing during anomaly detection evaluation.
|
|
71
|
+
*/
|
|
72
|
+
export interface MissingDataAction {
|
|
73
|
+
/**
|
|
74
|
+
* Marks missing data points as anomalies.
|
|
75
|
+
*/
|
|
76
|
+
readonly markAsAnomaly?: boolean;
|
|
77
|
+
/**
|
|
78
|
+
* Skips evaluation when data is missing.
|
|
79
|
+
*/
|
|
80
|
+
readonly skip?: boolean;
|
|
81
|
+
}
|
|
82
|
+
export interface IAnomalyDetector extends IResource {
|
|
83
|
+
/**
|
|
84
|
+
* The user-friendly name of the anomaly detector. 1 to 128 characters length.
|
|
85
|
+
*
|
|
86
|
+
* Minimum length of 1. Maximum length of 64.
|
|
87
|
+
* Pattern: [0-9A-Za-z][-.0-9A-Z_a-z]*
|
|
88
|
+
*/
|
|
89
|
+
readonly alias: string;
|
|
90
|
+
/**
|
|
91
|
+
* The algorithm configuration of the anomaly detector.
|
|
92
|
+
*/
|
|
93
|
+
readonly configuration: AnomalyDetectorConfiguration;
|
|
94
|
+
/**
|
|
95
|
+
* The frequency, in seconds, at which the anomaly detector evaluates metrics.
|
|
96
|
+
*
|
|
97
|
+
* Minimum value of 30. Maximum value of 86400.
|
|
98
|
+
*/
|
|
99
|
+
readonly evaluationIntervalInSeconds?: number;
|
|
100
|
+
/**
|
|
101
|
+
* The Amazon Managed Service for Prometheus metric labels associated with the anomaly detector.
|
|
102
|
+
*
|
|
103
|
+
* Map Entries: Minimum number of 0 items. Maximum number of 140 items.
|
|
104
|
+
* Key Length Constraints: Minimum length of 1. Maximum length of 7168.
|
|
105
|
+
* Key Pattern: (?!__)[a-zA-Z_][a-zA-Z0-9_]*
|
|
106
|
+
* Value Length Constraints: Minimum length of 1. Maximum length of 7168.
|
|
107
|
+
*/
|
|
108
|
+
readonly labels?: Label[];
|
|
109
|
+
/**
|
|
110
|
+
* The action taken when data is missing during evaluation.
|
|
111
|
+
*/
|
|
112
|
+
readonly missingDataAction?: MissingDataAction;
|
|
113
|
+
/**
|
|
114
|
+
* An Amazon Managed Service for Prometheus workspace is a logical and isolated Prometheus server dedicated to ingesting, storing, and querying your Prometheus-compatible metrics.
|
|
115
|
+
*/
|
|
116
|
+
readonly workspace: IWorkspace;
|
|
117
|
+
/**
|
|
118
|
+
* The Amazon Resource Name (ARN) of the anomaly detector.
|
|
119
|
+
* @attribute
|
|
120
|
+
*/
|
|
121
|
+
readonly anomalyDetectorArn: string;
|
|
122
|
+
}
|
|
123
|
+
export declare abstract class AnomalyDetectorBase extends Resource implements IAnomalyDetector {
|
|
124
|
+
/**
|
|
125
|
+
* The user-friendly name of the anomaly detector. 1 to 64 characters length.
|
|
126
|
+
*
|
|
127
|
+
* Minimum length of 1. Maximum length of 64.
|
|
128
|
+
* Pattern: [0-9A-Za-z][-.0-9A-Z_a-z]*
|
|
129
|
+
*/
|
|
130
|
+
abstract readonly alias: string;
|
|
131
|
+
/**
|
|
132
|
+
* The algorithm configuration of the anomaly detector.
|
|
133
|
+
*/
|
|
134
|
+
abstract readonly configuration: AnomalyDetectorConfiguration;
|
|
135
|
+
/**
|
|
136
|
+
* The frequency, in seconds, at which the anomaly detector evaluates metrics.
|
|
137
|
+
*
|
|
138
|
+
* Minimum value of 30. Maximum value of 86400.
|
|
139
|
+
*/
|
|
140
|
+
abstract readonly evaluationIntervalInSeconds?: number;
|
|
141
|
+
/**
|
|
142
|
+
* The Amazon Managed Service for Prometheus metric labels associated with the anomaly detector.
|
|
143
|
+
*
|
|
144
|
+
* Map Entries: Minimum number of 0 items. Maximum number of 140 items.
|
|
145
|
+
* Key Length Constraints: Minimum length of 1. Maximum length of 7168.
|
|
146
|
+
* Key Pattern: (?!__)[a-zA-Z_][a-zA-Z0-9_]*
|
|
147
|
+
* Value Length Constraints: Minimum length of 1. Maximum length of 7168.
|
|
148
|
+
*/
|
|
149
|
+
abstract readonly labels?: Label[];
|
|
150
|
+
/**
|
|
151
|
+
* The action taken when data is missing during evaluation.
|
|
152
|
+
*/
|
|
153
|
+
abstract readonly missingDataAction?: MissingDataAction;
|
|
154
|
+
/**
|
|
155
|
+
* An Amazon Managed Service for Prometheus workspace is a logical and isolated Prometheus server dedicated to ingesting, storing, and querying your Prometheus-compatible metrics.
|
|
156
|
+
*/
|
|
157
|
+
abstract readonly workspace: IWorkspace;
|
|
158
|
+
/**
|
|
159
|
+
* The Amazon Resource Name (ARN) of the anomaly detector.
|
|
160
|
+
* @attribute
|
|
161
|
+
*/
|
|
162
|
+
abstract readonly anomalyDetectorArn: string;
|
|
163
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var _a;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.AnomalyDetectorBase = void 0;
|
|
5
|
+
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
6
|
+
const aws_cdk_lib_1 = require("aws-cdk-lib");
|
|
7
|
+
class AnomalyDetectorBase extends aws_cdk_lib_1.Resource {
|
|
8
|
+
}
|
|
9
|
+
exports.AnomalyDetectorBase = AnomalyDetectorBase;
|
|
10
|
+
_a = JSII_RTTI_SYMBOL_1;
|
|
11
|
+
AnomalyDetectorBase[_a] = { fqn: "@robhan-cdk-lib/aws_aps.AnomalyDetectorBase", version: "0.0.145" };
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5vbWFseS1kZXRlY3Rvci1iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2Fub21hbHktZGV0ZWN0b3ItYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDZDQUFrRDtBQThJbEQsTUFBc0IsbUJBQW9CLFNBQVEsc0JBQVE7O0FBQTFELGtEQThDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElSZXNvdXJjZSwgUmVzb3VyY2UgfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgeyBJV29ya3NwYWNlIH0gZnJvbSAnLi93b3Jrc3BhY2UtYmFzZSc7XG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBmb3IgdGhyZXNob2xkIHNldHRpbmdzIHRoYXQgZGV0ZXJtaW5lIHdoZW4gdmFsdWVzIG5lYXIgZXhwZWN0ZWQgdmFsdWVzIHNob3VsZCBiZSBpZ25vcmVkIGR1cmluZyBhbm9tYWx5IGRldGVjdGlvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJZ25vcmVOZWFyRXhwZWN0ZWQge1xuICAvKipcbiAgICogVGhlIGFic29sdXRlIGFtb3VudCBieSB3aGljaCB2YWx1ZXMgY2FuIGRpZmZlciBmcm9tIGV4cGVjdGVkIHZhbHVlcyBiZWZvcmUgYmVpbmcgY29uc2lkZXJlZCBhbm9tYWxvdXMuXG4gICAqL1xuICByZWFkb25seSBhbW91bnQ/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRoZSByYXRpbyBieSB3aGljaCB2YWx1ZXMgY2FuIGRpZmZlciBmcm9tIGV4cGVjdGVkIHZhbHVlcyBiZWZvcmUgYmVpbmcgY29uc2lkZXJlZCBhbm9tYWxvdXMuXG4gICAqL1xuICByZWFkb25seSByYXRpbz86IG51bWJlcjtcbn1cblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIGZvciB0aGUgUmFuZG9tIEN1dCBGb3Jlc3QgYWxnb3JpdGhtIHVzZWQgZm9yIGFub21hbHkgZGV0ZWN0aW9uIGluIHRpbWUtc2VyaWVzIGRhdGEuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmFuZG9tQ3V0Rm9yZXN0Q29uZmlndXJhdGlvbiB7XG4gIC8qKlxuICAgKiBDb25maWd1cmF0aW9uIGZvciBpZ25vcmluZyB2YWx1ZXMgdGhhdCBhcmUgbmVhciBleHBlY3RlZCB2YWx1ZXMgZnJvbSBhYm92ZSBkdXJpbmcgYW5vbWFseSBkZXRlY3Rpb24uXG4gICAqL1xuICByZWFkb25seSBpZ25vcmVOZWFyRXhwZWN0ZWRGcm9tQWJvdmU/OiBJZ25vcmVOZWFyRXhwZWN0ZWQ7XG5cbiAgLyoqXG4gICAqIENvbmZpZ3VyYXRpb24gZm9yIGlnbm9yaW5nIHZhbHVlcyB0aGF0IGFyZSBuZWFyIGV4cGVjdGVkIHZhbHVlcyBmcm9tIGJlbG93IGR1cmluZyBhbm9tYWx5IGRldGVjdGlvbi5cbiAgICovXG4gIHJlYWRvbmx5IGlnbm9yZU5lYXJFeHBlY3RlZEZyb21CZWxvdz86IElnbm9yZU5lYXJFeHBlY3RlZDtcblxuICAvKipcbiAgICogVGhlIFByb21ldGhldXMgcXVlcnkgdXNlZCB0byByZXRyaWV2ZSB0aGUgdGltZS1zZXJpZXMgZGF0YSBmb3IgYW5vbWFseSBkZXRlY3Rpb24uIDEgdG8gODE5MiBjaGFyYWN0ZXJzIGxlbmd0aC5cbiAgICovXG4gIHJlYWRvbmx5IHF1ZXJ5OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBudW1iZXIgb2YgZGF0YSBwb2ludHMgc2FtcGxlZCBmcm9tIHRoZSBpbnB1dCBzdHJlYW0gZm9yIHRoZSBSYW5kb20gQ3V0IEZvcmVzdCBhbGdvcml0aG0uIFRoZSBkZWZhdWx0IG51bWJlciBpcyAyNTYgY29uc2VjdXRpdmUgZGF0YSBwb2ludHMuXG4gICAqXG4gICAqIE1pbmltdW06IDI1NlxuICAgKiBNYXhpbXVtOiAxMDI0XG4gICAqL1xuICByZWFkb25seSBzYW1wbGVTaXplPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUaGUgbnVtYmVyIG9mIGNvbnNlY3V0aXZlIGRhdGEgcG9pbnRzIHVzZWQgdG8gY3JlYXRlIGEgc2hpbmdsZSBmb3IgdGhlIFJhbmRvbSBDdXQgRm9yZXN0IGFsZ29yaXRobS4gVGhlIGRlZmF1bHQgbnVtYmVyIGlzIDggY29uc2VjdXRpdmUgZGF0YSBwb2ludHMuXG4gICAqXG4gICAqIE1pbmltdW06IDJcbiAgICogTWF4aW11bTogMTAyNFxuICAgKi9cbiAgcmVhZG9ubHkgc2hpbmdsZVNpemU/OiBudW1iZXI7XG59XG5cbi8qKlxuICogVGhlIGNvbmZpZ3VyYXRpb24gZm9yIHRoZSBhbm9tYWx5IGRldGVjdGlvbiBhbGdvcml0aG0uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQW5vbWFseURldGVjdG9yQ29uZmlndXJhdGlvbiB7XG4gIC8qKlxuICAgKiBUaGUgUmFuZG9tIEN1dCBGb3Jlc3QgYWxnb3JpdGhtIGNvbmZpZ3VyYXRpb24gZm9yIGFub21hbHkgZGV0ZWN0aW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgcmFuZG9tQ3V0Rm9yZXN0OiBSYW5kb21DdXRGb3Jlc3RDb25maWd1cmF0aW9uO1xufVxuXG4vKipcbiAqIFRoZSBBbWF6b24gTWFuYWdlZCBTZXJ2aWNlIGZvciBQcm9tZXRoZXVzIG1ldHJpYyBsYWJlbHMgYXNzb2NpYXRlZCB3aXRoIHRoZSBhbm9tYWx5IGRldGVjdG9yLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIExhYmVsIHtcbiAgLyoqXG4gICAqIFRoZSBrZXkgb2YgdGhlIGxhYmVsLiAxIHRvIDEyOCBjaGFyYWN0ZXJzIGxlbmd0aC5cbiAgICovXG4gIHJlYWRvbmx5IGtleTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgdmFsdWUgZm9yIHRoaXMgbGFiZWwuIDAgdG8gMjU2IGNoYXJhY3RlcnMgbGVuZ3RoLlxuICAgKi9cbiAgcmVhZG9ubHkgdmFsdWU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBTcGVjaWZpZXMgdGhlIGFjdGlvbiB0byB0YWtlIHdoZW4gZGF0YSBpcyBtaXNzaW5nIGR1cmluZyBhbm9tYWx5IGRldGVjdGlvbiBldmFsdWF0aW9uLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIE1pc3NpbmdEYXRhQWN0aW9uIHtcbiAgLyoqXG4gICAqIE1hcmtzIG1pc3NpbmcgZGF0YSBwb2ludHMgYXMgYW5vbWFsaWVzLlxuICAgKi9cbiAgcmVhZG9ubHkgbWFya0FzQW5vbWFseT86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFNraXBzIGV2YWx1YXRpb24gd2hlbiBkYXRhIGlzIG1pc3NpbmcuXG4gICAqL1xuICByZWFkb25seSBza2lwPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQW5vbWFseURldGVjdG9yIGV4dGVuZHMgSVJlc291cmNlIHtcbiAgLyoqXG4gICAqIFRoZSB1c2VyLWZyaWVuZGx5IG5hbWUgb2YgdGhlIGFub21hbHkgZGV0ZWN0b3IuIDEgdG8gMTI4IGNoYXJhY3RlcnMgbGVuZ3RoLlxuICAgKlxuICAgKiBNaW5pbXVtIGxlbmd0aCBvZiAxLiBNYXhpbXVtIGxlbmd0aCBvZiA2NC5cbiAgICogUGF0dGVybjogWzAtOUEtWmEtel1bLS4wLTlBLVpfYS16XSpcbiAgICovXG4gIHJlYWRvbmx5IGFsaWFzOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBhbGdvcml0aG0gY29uZmlndXJhdGlvbiBvZiB0aGUgYW5vbWFseSBkZXRlY3Rvci5cbiAgICovXG4gIHJlYWRvbmx5IGNvbmZpZ3VyYXRpb246IEFub21hbHlEZXRlY3RvckNvbmZpZ3VyYXRpb247XG5cbiAgLyoqXG4gICAqIFRoZSBmcmVxdWVuY3ksIGluIHNlY29uZHMsIGF0IHdoaWNoIHRoZSBhbm9tYWx5IGRldGVjdG9yIGV2YWx1YXRlcyBtZXRyaWNzLlxuICAgKlxuICAgKiBNaW5pbXVtIHZhbHVlIG9mIDMwLiBNYXhpbXVtIHZhbHVlIG9mIDg2NDAwLlxuICAgKi9cbiAgcmVhZG9ubHkgZXZhbHVhdGlvbkludGVydmFsSW5TZWNvbmRzPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUaGUgQW1hem9uIE1hbmFnZWQgU2VydmljZSBmb3IgUHJvbWV0aGV1cyBtZXRyaWMgbGFiZWxzIGFzc29jaWF0ZWQgd2l0aCB0aGUgYW5vbWFseSBkZXRlY3Rvci5cbiAgICpcbiAgICogTWFwIEVudHJpZXM6IE1pbmltdW0gbnVtYmVyIG9mIDAgaXRlbXMuIE1heGltdW0gbnVtYmVyIG9mIDE0MCBpdGVtcy5cbiAgICogS2V5IExlbmd0aCBDb25zdHJhaW50czogTWluaW11bSBsZW5ndGggb2YgMS4gTWF4aW11bSBsZW5ndGggb2YgNzE2OC5cbiAgICogS2V5IFBhdHRlcm46ICg/IV9fKVthLXpBLVpfXVthLXpBLVowLTlfXSpcbiAgICogVmFsdWUgTGVuZ3RoIENvbnN0cmFpbnRzOiBNaW5pbXVtIGxlbmd0aCBvZiAxLiBNYXhpbXVtIGxlbmd0aCBvZiA3MTY4LlxuICAgKi9cbiAgcmVhZG9ubHkgbGFiZWxzPzogTGFiZWxbXTtcblxuICAvKipcbiAgICogVGhlIGFjdGlvbiB0YWtlbiB3aGVuIGRhdGEgaXMgbWlzc2luZyBkdXJpbmcgZXZhbHVhdGlvbi5cbiAgICovXG4gIHJlYWRvbmx5IG1pc3NpbmdEYXRhQWN0aW9uPzogTWlzc2luZ0RhdGFBY3Rpb247XG5cbiAgLyoqXG4gICAqIEFuIEFtYXpvbiBNYW5hZ2VkIFNlcnZpY2UgZm9yIFByb21ldGhldXMgd29ya3NwYWNlIGlzIGEgbG9naWNhbCBhbmQgaXNvbGF0ZWQgUHJvbWV0aGV1cyBzZXJ2ZXIgZGVkaWNhdGVkIHRvIGluZ2VzdGluZywgc3RvcmluZywgYW5kIHF1ZXJ5aW5nIHlvdXIgUHJvbWV0aGV1cy1jb21wYXRpYmxlIG1ldHJpY3MuXG4gICAqL1xuICByZWFkb25seSB3b3Jrc3BhY2U6IElXb3Jrc3BhY2U7XG5cbiAgLyoqXG4gICAqIFRoZSBBbWF6b24gUmVzb3VyY2UgTmFtZSAoQVJOKSBvZiB0aGUgYW5vbWFseSBkZXRlY3Rvci5cbiAgICogQGF0dHJpYnV0ZVxuICAgKi9cbiAgcmVhZG9ubHkgYW5vbWFseURldGVjdG9yQXJuOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBbm9tYWx5RGV0ZWN0b3JCYXNlIGV4dGVuZHMgUmVzb3VyY2UgaW1wbGVtZW50cyBJQW5vbWFseURldGVjdG9yIHtcbiAgLyoqXG4gICAqIFRoZSB1c2VyLWZyaWVuZGx5IG5hbWUgb2YgdGhlIGFub21hbHkgZGV0ZWN0b3IuIDEgdG8gNjQgY2hhcmFjdGVycyBsZW5ndGguXG4gICAqXG4gICAqIE1pbmltdW0gbGVuZ3RoIG9mIDEuIE1heGltdW0gbGVuZ3RoIG9mIDY0LlxuICAgKiBQYXR0ZXJuOiBbMC05QS1aYS16XVstLjAtOUEtWl9hLXpdKlxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IGFsaWFzOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBhbGdvcml0aG0gY29uZmlndXJhdGlvbiBvZiB0aGUgYW5vbWFseSBkZXRlY3Rvci5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBjb25maWd1cmF0aW9uOiBBbm9tYWx5RGV0ZWN0b3JDb25maWd1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBUaGUgZnJlcXVlbmN5LCBpbiBzZWNvbmRzLCBhdCB3aGljaCB0aGUgYW5vbWFseSBkZXRlY3RvciBldmFsdWF0ZXMgbWV0cmljcy5cbiAgICpcbiAgICogTWluaW11bSB2YWx1ZSBvZiAzMC4gTWF4aW11bSB2YWx1ZSBvZiA4NjQwMC5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBldmFsdWF0aW9uSW50ZXJ2YWxJblNlY29uZHM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRoZSBBbWF6b24gTWFuYWdlZCBTZXJ2aWNlIGZvciBQcm9tZXRoZXVzIG1ldHJpYyBsYWJlbHMgYXNzb2NpYXRlZCB3aXRoIHRoZSBhbm9tYWx5IGRldGVjdG9yLlxuICAgKlxuICAgKiBNYXAgRW50cmllczogTWluaW11bSBudW1iZXIgb2YgMCBpdGVtcy4gTWF4aW11bSBudW1iZXIgb2YgMTQwIGl0ZW1zLlxuICAgKiBLZXkgTGVuZ3RoIENvbnN0cmFpbnRzOiBNaW5pbXVtIGxlbmd0aCBvZiAxLiBNYXhpbXVtIGxlbmd0aCBvZiA3MTY4LlxuICAgKiBLZXkgUGF0dGVybjogKD8hX18pW2EtekEtWl9dW2EtekEtWjAtOV9dKlxuICAgKiBWYWx1ZSBMZW5ndGggQ29uc3RyYWludHM6IE1pbmltdW0gbGVuZ3RoIG9mIDEuIE1heGltdW0gbGVuZ3RoIG9mIDcxNjguXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgbGFiZWxzPzogTGFiZWxbXTtcblxuICAvKipcbiAgICogVGhlIGFjdGlvbiB0YWtlbiB3aGVuIGRhdGEgaXMgbWlzc2luZyBkdXJpbmcgZXZhbHVhdGlvbi5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBtaXNzaW5nRGF0YUFjdGlvbj86IE1pc3NpbmdEYXRhQWN0aW9uO1xuXG4gIC8qKlxuICAgKiBBbiBBbWF6b24gTWFuYWdlZCBTZXJ2aWNlIGZvciBQcm9tZXRoZXVzIHdvcmtzcGFjZSBpcyBhIGxvZ2ljYWwgYW5kIGlzb2xhdGVkIFByb21ldGhldXMgc2VydmVyIGRlZGljYXRlZCB0byBpbmdlc3RpbmcsIHN0b3JpbmcsIGFuZCBxdWVyeWluZyB5b3VyIFByb21ldGhldXMtY29tcGF0aWJsZSBtZXRyaWNzLlxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IHdvcmtzcGFjZTogSVdvcmtzcGFjZTtcblxuICAvKipcbiAgICogVGhlIEFtYXpvbiBSZXNvdXJjZSBOYW1lIChBUk4pIG9mIHRoZSBhbm9tYWx5IGRldGVjdG9yLlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgYW5vbWFseURldGVjdG9yQXJuOiBzdHJpbmc7XG59Il19
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import { Construct } from 'constructs';
|
|
2
|
+
import { AnomalyDetectorBase, AnomalyDetectorConfiguration, Label, MissingDataAction } from './anomaly-detector-base';
|
|
3
|
+
import { IWorkspace } from './workspace-base';
|
|
4
|
+
/**
|
|
5
|
+
* Properties for creating an Amazon Managed Service for Prometheus Anomaly Detector.
|
|
6
|
+
*/
|
|
7
|
+
export interface AnomalyDetectorProps {
|
|
8
|
+
/**
|
|
9
|
+
* The user-friendly name of the anomaly detector. 1 to 128 characters length.
|
|
10
|
+
*/
|
|
11
|
+
readonly alias: string;
|
|
12
|
+
/**
|
|
13
|
+
* The algorithm configuration of the anomaly detector.
|
|
14
|
+
*/
|
|
15
|
+
readonly configuration: AnomalyDetectorConfiguration;
|
|
16
|
+
/**
|
|
17
|
+
* The frequency, in seconds, at which the anomaly detector evaluates metrics.
|
|
18
|
+
*
|
|
19
|
+
* Minimum value of 30. Maximum value of 86400.
|
|
20
|
+
*/
|
|
21
|
+
readonly evaluationIntervalInSeconds?: number;
|
|
22
|
+
/**
|
|
23
|
+
* The Amazon Managed Service for Prometheus metric labels associated with the anomaly detector.
|
|
24
|
+
*
|
|
25
|
+
* Map Entries: Minimum number of 0 items. Maximum number of 140 items.
|
|
26
|
+
* Key Length Constraints: Minimum length of 1. Maximum length of 7168.
|
|
27
|
+
* Key Pattern: (?!__)[a-zA-Z_][a-zA-Z0-9_]*
|
|
28
|
+
* Value Length Constraints: Minimum length of 1. Maximum length of 7168.
|
|
29
|
+
*/
|
|
30
|
+
readonly labels?: Label[];
|
|
31
|
+
/**
|
|
32
|
+
* The action taken when data is missing during evaluation.
|
|
33
|
+
*/
|
|
34
|
+
readonly missingDataAction?: MissingDataAction;
|
|
35
|
+
/**
|
|
36
|
+
* An Amazon Managed Service for Prometheus workspace is a logical and isolated Prometheus server dedicated to ingesting, storing, and querying your Prometheus-compatible metrics.
|
|
37
|
+
*/
|
|
38
|
+
readonly workspace: IWorkspace;
|
|
39
|
+
}
|
|
40
|
+
export declare class AnomalyDetector extends AnomalyDetectorBase {
|
|
41
|
+
static isAnomalyDetector(x: any): x is AnomalyDetector;
|
|
42
|
+
/**
|
|
43
|
+
* Validates all anomaly detector properties.
|
|
44
|
+
*
|
|
45
|
+
* @param props - The anomaly detector properties to validate
|
|
46
|
+
* @returns An array of error messages if validation fails, or an empty array if valid
|
|
47
|
+
*
|
|
48
|
+
* This method aggregates validation results from all individual property validators.
|
|
49
|
+
* It throws an error if props is not an object.
|
|
50
|
+
*/
|
|
51
|
+
private static validateProps;
|
|
52
|
+
/**
|
|
53
|
+
* The user-friendly name of the anomaly detector. 1 to 64 characters length.
|
|
54
|
+
*
|
|
55
|
+
* Minimum length of 1. Maximum length of 64.
|
|
56
|
+
* Pattern: [0-9A-Za-z][-.0-9A-Z_a-z]*
|
|
57
|
+
*/
|
|
58
|
+
readonly alias: string;
|
|
59
|
+
/**
|
|
60
|
+
* The algorithm configuration of the anomaly detector.
|
|
61
|
+
*/
|
|
62
|
+
readonly configuration: AnomalyDetectorConfiguration;
|
|
63
|
+
/**
|
|
64
|
+
* The frequency, in seconds, at which the anomaly detector evaluates metrics.
|
|
65
|
+
*
|
|
66
|
+
* Minimum value of 30. Maximum value of 86400.
|
|
67
|
+
*/
|
|
68
|
+
readonly evaluationIntervalInSeconds?: number;
|
|
69
|
+
/**
|
|
70
|
+
* The Amazon Managed Service for Prometheus metric labels associated with the anomaly detector.
|
|
71
|
+
*
|
|
72
|
+
* Map Entries: Minimum number of 0 items. Maximum number of 140 items.
|
|
73
|
+
* Key Length Constraints: Minimum length of 1. Maximum length of 7168.
|
|
74
|
+
* Key Pattern: (?!__)[a-zA-Z_][a-zA-Z0-9_]*
|
|
75
|
+
* Value Length Constraints: Minimum length of 1. Maximum length of 7168.
|
|
76
|
+
*/
|
|
77
|
+
readonly labels?: Label[];
|
|
78
|
+
/**
|
|
79
|
+
* The action taken when data is missing during evaluation.
|
|
80
|
+
*/
|
|
81
|
+
readonly missingDataAction?: MissingDataAction;
|
|
82
|
+
/**
|
|
83
|
+
* An Amazon Managed Service for Prometheus workspace is a logical and isolated Prometheus server dedicated to ingesting, storing, and querying your Prometheus-compatible metrics.
|
|
84
|
+
*/
|
|
85
|
+
readonly workspace: IWorkspace;
|
|
86
|
+
/**
|
|
87
|
+
* The underlying CloudFormation resource.
|
|
88
|
+
*/
|
|
89
|
+
private readonly anomalyDetector;
|
|
90
|
+
/**
|
|
91
|
+
* The Amazon Resource Name (ARN) of the anomaly detector.
|
|
92
|
+
*/
|
|
93
|
+
readonly anomalyDetectorArn: string;
|
|
94
|
+
constructor(scope: Construct, id: string, props: AnomalyDetectorProps);
|
|
95
|
+
}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var _a;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.AnomalyDetector = void 0;
|
|
5
|
+
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
6
|
+
const utils_1 = require("@robhan-cdk-lib/utils");
|
|
7
|
+
const aws_aps_1 = require("aws-cdk-lib/aws-aps");
|
|
8
|
+
const anomaly_detector_base_1 = require("./anomaly-detector-base");
|
|
9
|
+
const anomaly_detector_base_2 = require("./validation/anomaly-detector-base");
|
|
10
|
+
const IS_ANOMALY_DETECTOR = Symbol.for('@robhan-cdk-lib/aws_aps.AnomalyDetector');
|
|
11
|
+
class AnomalyDetector extends anomaly_detector_base_1.AnomalyDetectorBase {
|
|
12
|
+
static isAnomalyDetector(x) {
|
|
13
|
+
return IS_ANOMALY_DETECTOR in x;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Validates all anomaly detector properties.
|
|
17
|
+
*
|
|
18
|
+
* @param props - The anomaly detector properties to validate
|
|
19
|
+
* @returns An array of error messages if validation fails, or an empty array if valid
|
|
20
|
+
*
|
|
21
|
+
* This method aggregates validation results from all individual property validators.
|
|
22
|
+
* It throws an error if props is not an object.
|
|
23
|
+
*/
|
|
24
|
+
static validateProps(props) {
|
|
25
|
+
const errors = [];
|
|
26
|
+
if (!props || typeof props !== 'object') {
|
|
27
|
+
throw new Error('AnomalyDetector constructor properties must be an object');
|
|
28
|
+
}
|
|
29
|
+
const anomalyDetectorProps = props;
|
|
30
|
+
errors.push(...(0, utils_1.validateObjectAttributes)({
|
|
31
|
+
inputObject: anomalyDetectorProps,
|
|
32
|
+
mandatoryAttributes: ['alias', 'configuration', 'workspace'],
|
|
33
|
+
optionalAttributes: ['evaluationIntervalInSeconds', 'labels', 'missingDataAction'],
|
|
34
|
+
}));
|
|
35
|
+
if (anomalyDetectorProps.alias !== undefined) {
|
|
36
|
+
errors.push(...(0, anomaly_detector_base_2.validateAlias)(anomalyDetectorProps.alias).map((e) => `alias: ${e}`));
|
|
37
|
+
}
|
|
38
|
+
if (anomalyDetectorProps.configuration !== undefined) {
|
|
39
|
+
errors.push(...(0, anomaly_detector_base_2.validateAnomalyDetectorConfiguration)(anomalyDetectorProps.configuration).map((e) => `configuration: ${e}`));
|
|
40
|
+
}
|
|
41
|
+
if (anomalyDetectorProps.evaluationIntervalInSeconds !== undefined) {
|
|
42
|
+
errors.push(...(0, anomaly_detector_base_2.validateEvaluationIntervalInSeconds)(anomalyDetectorProps.evaluationIntervalInSeconds).map((e) => `evaluationIntervalInSeconds: ${e}`));
|
|
43
|
+
}
|
|
44
|
+
if (anomalyDetectorProps.labels !== undefined) {
|
|
45
|
+
errors.push(...anomalyDetectorProps.labels.map((l, i) => {
|
|
46
|
+
return (0, anomaly_detector_base_2.validateLabel)(l).map((err) => `labels[${i}]: ${err}`);
|
|
47
|
+
}).flat());
|
|
48
|
+
}
|
|
49
|
+
if (anomalyDetectorProps.missingDataAction !== undefined) {
|
|
50
|
+
errors.push(...(0, anomaly_detector_base_2.validateMissingDataAction)(anomalyDetectorProps.missingDataAction).map((e) => `missingDataAction: ${e}`));
|
|
51
|
+
}
|
|
52
|
+
return errors;
|
|
53
|
+
}
|
|
54
|
+
constructor(scope, id, props) {
|
|
55
|
+
super(scope, id);
|
|
56
|
+
Object.defineProperty(this, IS_ANOMALY_DETECTOR, { value: true });
|
|
57
|
+
const errors = AnomalyDetector.validateProps(props);
|
|
58
|
+
if (errors.length > 0) {
|
|
59
|
+
throw new Error(`Invalid props:\n${errors.join('\n')}`);
|
|
60
|
+
}
|
|
61
|
+
this.alias = props.alias;
|
|
62
|
+
this.configuration = props.configuration;
|
|
63
|
+
this.evaluationIntervalInSeconds = props.evaluationIntervalInSeconds;
|
|
64
|
+
this.labels = props.labels;
|
|
65
|
+
this.missingDataAction = props.missingDataAction;
|
|
66
|
+
this.workspace = props.workspace;
|
|
67
|
+
let cfnAnomalyDetectorProps = {
|
|
68
|
+
alias: props.alias,
|
|
69
|
+
configuration: props.configuration,
|
|
70
|
+
evaluationIntervalInSeconds: props.evaluationIntervalInSeconds,
|
|
71
|
+
labels: props.labels,
|
|
72
|
+
missingDataAction: props.missingDataAction,
|
|
73
|
+
workspace: props.workspace.workspaceArn,
|
|
74
|
+
};
|
|
75
|
+
this.anomalyDetector = new aws_aps_1.CfnAnomalyDetector(this, 'Resource', cfnAnomalyDetectorProps);
|
|
76
|
+
this.node.defaultChild = this.anomalyDetector;
|
|
77
|
+
this.anomalyDetectorArn = this.anomalyDetector.attrArn;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
exports.AnomalyDetector = AnomalyDetector;
|
|
81
|
+
_a = JSII_RTTI_SYMBOL_1;
|
|
82
|
+
AnomalyDetector[_a] = { fqn: "@robhan-cdk-lib/aws_aps.AnomalyDetector", version: "0.0.145" };
|
|
83
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5vbWFseS1kZXRlY3Rvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9hbm9tYWx5LWRldGVjdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsaURBQWlFO0FBQ2pFLGlEQUFrRjtBQUVsRixtRUFBc0g7QUFDdEgsOEVBQXdMO0FBNkN4TCxNQUFNLG1CQUFtQixHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMseUNBQXlDLENBQUMsQ0FBQztBQUVsRixNQUFhLGVBQWdCLFNBQVEsMkNBQW1CO0lBQy9DLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFNO1FBQ3BDLE9BQU8sbUJBQW1CLElBQUksQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNLLE1BQU0sQ0FBQyxhQUFhLENBQUMsS0FBYztRQUN6QyxNQUFNLE1BQU0sR0FBYSxFQUFFLENBQUM7UUFFNUIsSUFBSSxDQUFDLEtBQUssSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUN4QyxNQUFNLElBQUksS0FBSyxDQUFDLDBEQUEwRCxDQUFDLENBQUM7UUFDOUUsQ0FBQztRQUNELE1BQU0sb0JBQW9CLEdBQUcsS0FBNkIsQ0FBQztRQUUzRCxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBQSxnQ0FBd0IsRUFBQztZQUN0QyxXQUFXLEVBQUUsb0JBQW9CO1lBQ2pDLG1CQUFtQixFQUFFLENBQUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxXQUFXLENBQUM7WUFDNUQsa0JBQWtCLEVBQUUsQ0FBQyw2QkFBNkIsRUFBRSxRQUFRLEVBQUUsbUJBQW1CLENBQUM7U0FDbkYsQ0FBQyxDQUFDLENBQUM7UUFHSixJQUFJLG9CQUFvQixDQUFDLEtBQUssS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUM3QyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBQSxxQ0FBYSxFQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDdEYsQ0FBQztRQUVELElBQUksb0JBQW9CLENBQUMsYUFBYSxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQ3JELE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFBLDREQUFvQyxFQUFDLG9CQUFvQixDQUFDLGFBQWEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsa0JBQWtCLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUM3SCxDQUFDO1FBRUQsSUFBSSxvQkFBb0IsQ0FBQywyQkFBMkIsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUNuRSxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBQSwyREFBbUMsRUFBQyxvQkFBb0IsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsZ0NBQWdDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUN4SixDQUFDO1FBRUQsSUFBSSxvQkFBb0IsQ0FBQyxNQUFNLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDOUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLG9CQUFvQixDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUU7Z0JBQ3RELE9BQU8sSUFBQSxxQ0FBYSxFQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLE1BQU0sR0FBRyxFQUFFLENBQUMsQ0FBQztZQUMvRCxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ2IsQ0FBQztRQUVELElBQUksb0JBQW9CLENBQUMsaUJBQWlCLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDekQsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUEsaURBQXlCLEVBQUMsb0JBQW9CLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLHNCQUFzQixDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDMUgsQ0FBQztRQUdELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFvREQsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUEyQjtRQUNuRSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLG1CQUFtQixFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFFbEUsTUFBTSxNQUFNLEdBQUcsZUFBZSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVwRCxJQUFJLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDdEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxtQkFBbUIsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDMUQsQ0FBQztRQUVELElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQztRQUN6QixJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQyxhQUFhLENBQUM7UUFDekMsSUFBSSxDQUFDLDJCQUEyQixHQUFHLEtBQUssQ0FBQywyQkFBMkIsQ0FBQztRQUNyRSxJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUM7UUFDM0IsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQztRQUNqRCxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUM7UUFFakMsSUFBSSx1QkFBdUIsR0FBNEI7WUFDckQsS0FBSyxFQUFFLEtBQUssQ0FBQyxLQUFLO1lBQ2xCLGFBQWEsRUFBRSxLQUFLLENBQUMsYUFBYTtZQUNsQywyQkFBMkIsRUFBRSxLQUFLLENBQUMsMkJBQTJCO1lBQzlELE1BQU0sRUFBRSxLQUFLLENBQUMsTUFBTTtZQUNwQixpQkFBaUIsRUFBRSxLQUFLLENBQUMsaUJBQWlCO1lBQzFDLFNBQVMsRUFBRSxLQUFLLENBQUMsU0FBUyxDQUFDLFlBQVk7U0FDeEMsQ0FBQztRQUVGLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSw0QkFBa0IsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFLHVCQUF1QixDQUFDLENBQUM7UUFDekYsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQztRQUM5QyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUM7SUFDekQsQ0FBQzs7QUF2SUgsMENBd0lDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdmFsaWRhdGVPYmplY3RBdHRyaWJ1dGVzIH0gZnJvbSAnQHJvYmhhbi1jZGstbGliL3V0aWxzJztcbmltcG9ydCB7IENmbkFub21hbHlEZXRlY3RvciwgQ2ZuQW5vbWFseURldGVjdG9yUHJvcHMgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtYXBzJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgQW5vbWFseURldGVjdG9yQmFzZSwgQW5vbWFseURldGVjdG9yQ29uZmlndXJhdGlvbiwgTGFiZWwsIE1pc3NpbmdEYXRhQWN0aW9uIH0gZnJvbSAnLi9hbm9tYWx5LWRldGVjdG9yLWJhc2UnO1xuaW1wb3J0IHsgdmFsaWRhdGVBbGlhcywgdmFsaWRhdGVBbm9tYWx5RGV0ZWN0b3JDb25maWd1cmF0aW9uLCB2YWxpZGF0ZUV2YWx1YXRpb25JbnRlcnZhbEluU2Vjb25kcywgdmFsaWRhdGVMYWJlbCwgdmFsaWRhdGVNaXNzaW5nRGF0YUFjdGlvbiB9IGZyb20gJy4vdmFsaWRhdGlvbi9hbm9tYWx5LWRldGVjdG9yLWJhc2UnO1xuaW1wb3J0IHsgSVdvcmtzcGFjZSB9IGZyb20gJy4vd29ya3NwYWNlLWJhc2UnO1xuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGNyZWF0aW5nIGFuIEFtYXpvbiBNYW5hZ2VkIFNlcnZpY2UgZm9yIFByb21ldGhldXMgQW5vbWFseSBEZXRlY3Rvci5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBbm9tYWx5RGV0ZWN0b3JQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgdXNlci1mcmllbmRseSBuYW1lIG9mIHRoZSBhbm9tYWx5IGRldGVjdG9yLiAxIHRvIDEyOCBjaGFyYWN0ZXJzIGxlbmd0aC5cbiAgICovXG4gIHJlYWRvbmx5IGFsaWFzOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBhbGdvcml0aG0gY29uZmlndXJhdGlvbiBvZiB0aGUgYW5vbWFseSBkZXRlY3Rvci5cbiAgICovXG4gIHJlYWRvbmx5IGNvbmZpZ3VyYXRpb246IEFub21hbHlEZXRlY3RvckNvbmZpZ3VyYXRpb247XG5cbiAgLyoqXG4gICAqIFRoZSBmcmVxdWVuY3ksIGluIHNlY29uZHMsIGF0IHdoaWNoIHRoZSBhbm9tYWx5IGRldGVjdG9yIGV2YWx1YXRlcyBtZXRyaWNzLlxuICAgKlxuICAgKiBNaW5pbXVtIHZhbHVlIG9mIDMwLiBNYXhpbXVtIHZhbHVlIG9mIDg2NDAwLlxuICAgKi9cbiAgcmVhZG9ubHkgZXZhbHVhdGlvbkludGVydmFsSW5TZWNvbmRzPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUaGUgQW1hem9uIE1hbmFnZWQgU2VydmljZSBmb3IgUHJvbWV0aGV1cyBtZXRyaWMgbGFiZWxzIGFzc29jaWF0ZWQgd2l0aCB0aGUgYW5vbWFseSBkZXRlY3Rvci5cbiAgICpcbiAgICogTWFwIEVudHJpZXM6IE1pbmltdW0gbnVtYmVyIG9mIDAgaXRlbXMuIE1heGltdW0gbnVtYmVyIG9mIDE0MCBpdGVtcy5cbiAgICogS2V5IExlbmd0aCBDb25zdHJhaW50czogTWluaW11bSBsZW5ndGggb2YgMS4gTWF4aW11bSBsZW5ndGggb2YgNzE2OC5cbiAgICogS2V5IFBhdHRlcm46ICg/IV9fKVthLXpBLVpfXVthLXpBLVowLTlfXSpcbiAgICogVmFsdWUgTGVuZ3RoIENvbnN0cmFpbnRzOiBNaW5pbXVtIGxlbmd0aCBvZiAxLiBNYXhpbXVtIGxlbmd0aCBvZiA3MTY4LlxuICAgKi9cbiAgcmVhZG9ubHkgbGFiZWxzPzogTGFiZWxbXTtcblxuICAvKipcbiAgICogVGhlIGFjdGlvbiB0YWtlbiB3aGVuIGRhdGEgaXMgbWlzc2luZyBkdXJpbmcgZXZhbHVhdGlvbi5cbiAgICovXG4gIHJlYWRvbmx5IG1pc3NpbmdEYXRhQWN0aW9uPzogTWlzc2luZ0RhdGFBY3Rpb247XG5cbiAgLyoqXG4gICAqIEFuIEFtYXpvbiBNYW5hZ2VkIFNlcnZpY2UgZm9yIFByb21ldGhldXMgd29ya3NwYWNlIGlzIGEgbG9naWNhbCBhbmQgaXNvbGF0ZWQgUHJvbWV0aGV1cyBzZXJ2ZXIgZGVkaWNhdGVkIHRvIGluZ2VzdGluZywgc3RvcmluZywgYW5kIHF1ZXJ5aW5nIHlvdXIgUHJvbWV0aGV1cy1jb21wYXRpYmxlIG1ldHJpY3MuXG4gICAqL1xuICByZWFkb25seSB3b3Jrc3BhY2U6IElXb3Jrc3BhY2U7XG59XG5cbmNvbnN0IElTX0FOT01BTFlfREVURUNUT1IgPSBTeW1ib2wuZm9yKCdAcm9iaGFuLWNkay1saWIvYXdzX2Fwcy5Bbm9tYWx5RGV0ZWN0b3InKTtcblxuZXhwb3J0IGNsYXNzIEFub21hbHlEZXRlY3RvciBleHRlbmRzIEFub21hbHlEZXRlY3RvckJhc2Uge1xuICBwdWJsaWMgc3RhdGljIGlzQW5vbWFseURldGVjdG9yKHg6IGFueSk6IHggaXMgQW5vbWFseURldGVjdG9yIHtcbiAgICByZXR1cm4gSVNfQU5PTUFMWV9ERVRFQ1RPUiBpbiB4O1xuICB9XG5cbiAgLyoqXG4gICAqIFZhbGlkYXRlcyBhbGwgYW5vbWFseSBkZXRlY3RvciBwcm9wZXJ0aWVzLlxuICAgKlxuICAgKiBAcGFyYW0gcHJvcHMgLSBUaGUgYW5vbWFseSBkZXRlY3RvciBwcm9wZXJ0aWVzIHRvIHZhbGlkYXRlXG4gICAqIEByZXR1cm5zIEFuIGFycmF5IG9mIGVycm9yIG1lc3NhZ2VzIGlmIHZhbGlkYXRpb24gZmFpbHMsIG9yIGFuIGVtcHR5IGFycmF5IGlmIHZhbGlkXG4gICAqXG4gICAqIFRoaXMgbWV0aG9kIGFnZ3JlZ2F0ZXMgdmFsaWRhdGlvbiByZXN1bHRzIGZyb20gYWxsIGluZGl2aWR1YWwgcHJvcGVydHkgdmFsaWRhdG9ycy5cbiAgICogSXQgdGhyb3dzIGFuIGVycm9yIGlmIHByb3BzIGlzIG5vdCBhbiBvYmplY3QuXG4gICAqL1xuICBwcml2YXRlIHN0YXRpYyB2YWxpZGF0ZVByb3BzKHByb3BzOiB1bmtub3duKTogc3RyaW5nW10ge1xuICAgIGNvbnN0IGVycm9yczogc3RyaW5nW10gPSBbXTtcblxuICAgIGlmICghcHJvcHMgfHwgdHlwZW9mIHByb3BzICE9PSAnb2JqZWN0Jykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdBbm9tYWx5RGV0ZWN0b3IgY29uc3RydWN0b3IgcHJvcGVydGllcyBtdXN0IGJlIGFuIG9iamVjdCcpO1xuICAgIH1cbiAgICBjb25zdCBhbm9tYWx5RGV0ZWN0b3JQcm9wcyA9IHByb3BzIGFzIEFub21hbHlEZXRlY3RvclByb3BzO1xuXG4gICAgZXJyb3JzLnB1c2goLi4udmFsaWRhdGVPYmplY3RBdHRyaWJ1dGVzKHtcbiAgICAgIGlucHV0T2JqZWN0OiBhbm9tYWx5RGV0ZWN0b3JQcm9wcyxcbiAgICAgIG1hbmRhdG9yeUF0dHJpYnV0ZXM6IFsnYWxpYXMnLCAnY29uZmlndXJhdGlvbicsICd3b3Jrc3BhY2UnXSxcbiAgICAgIG9wdGlvbmFsQXR0cmlidXRlczogWydldmFsdWF0aW9uSW50ZXJ2YWxJblNlY29uZHMnLCAnbGFiZWxzJywgJ21pc3NpbmdEYXRhQWN0aW9uJ10sXG4gICAgfSkpO1xuXG5cbiAgICBpZiAoYW5vbWFseURldGVjdG9yUHJvcHMuYWxpYXMgIT09IHVuZGVmaW5lZCkge1xuICAgICAgZXJyb3JzLnB1c2goLi4udmFsaWRhdGVBbGlhcyhhbm9tYWx5RGV0ZWN0b3JQcm9wcy5hbGlhcykubWFwKChlKSA9PiBgYWxpYXM6ICR7ZX1gKSk7XG4gICAgfVxuXG4gICAgaWYgKGFub21hbHlEZXRlY3RvclByb3BzLmNvbmZpZ3VyYXRpb24gIT09IHVuZGVmaW5lZCkge1xuICAgICAgZXJyb3JzLnB1c2goLi4udmFsaWRhdGVBbm9tYWx5RGV0ZWN0b3JDb25maWd1cmF0aW9uKGFub21hbHlEZXRlY3RvclByb3BzLmNvbmZpZ3VyYXRpb24pLm1hcCgoZSkgPT4gYGNvbmZpZ3VyYXRpb246ICR7ZX1gKSk7XG4gICAgfVxuXG4gICAgaWYgKGFub21hbHlEZXRlY3RvclByb3BzLmV2YWx1YXRpb25JbnRlcnZhbEluU2Vjb25kcyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBlcnJvcnMucHVzaCguLi52YWxpZGF0ZUV2YWx1YXRpb25JbnRlcnZhbEluU2Vjb25kcyhhbm9tYWx5RGV0ZWN0b3JQcm9wcy5ldmFsdWF0aW9uSW50ZXJ2YWxJblNlY29uZHMpLm1hcCgoZSkgPT4gYGV2YWx1YXRpb25JbnRlcnZhbEluU2Vjb25kczogJHtlfWApKTtcbiAgICB9XG5cbiAgICBpZiAoYW5vbWFseURldGVjdG9yUHJvcHMubGFiZWxzICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGVycm9ycy5wdXNoKC4uLmFub21hbHlEZXRlY3RvclByb3BzLmxhYmVscy5tYXAoKGwsIGkpID0+IHtcbiAgICAgICAgcmV0dXJuIHZhbGlkYXRlTGFiZWwobCkubWFwKChlcnIpID0+IGBsYWJlbHNbJHtpfV06ICR7ZXJyfWApO1xuICAgICAgfSkuZmxhdCgpKTtcbiAgICB9XG5cbiAgICBpZiAoYW5vbWFseURldGVjdG9yUHJvcHMubWlzc2luZ0RhdGFBY3Rpb24gIT09IHVuZGVmaW5lZCkge1xuICAgICAgZXJyb3JzLnB1c2goLi4udmFsaWRhdGVNaXNzaW5nRGF0YUFjdGlvbihhbm9tYWx5RGV0ZWN0b3JQcm9wcy5taXNzaW5nRGF0YUFjdGlvbikubWFwKChlKSA9PiBgbWlzc2luZ0RhdGFBY3Rpb246ICR7ZX1gKSk7XG4gICAgfVxuXG5cbiAgICByZXR1cm4gZXJyb3JzO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSB1c2VyLWZyaWVuZGx5IG5hbWUgb2YgdGhlIGFub21hbHkgZGV0ZWN0b3IuIDEgdG8gNjQgY2hhcmFjdGVycyBsZW5ndGguXG4gICAqXG4gICAqIE1pbmltdW0gbGVuZ3RoIG9mIDEuIE1heGltdW0gbGVuZ3RoIG9mIDY0LlxuICAgKiBQYXR0ZXJuOiBbMC05QS1aYS16XVstLjAtOUEtWl9hLXpdKlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGFsaWFzOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBhbGdvcml0aG0gY29uZmlndXJhdGlvbiBvZiB0aGUgYW5vbWFseSBkZXRlY3Rvci5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBjb25maWd1cmF0aW9uOiBBbm9tYWx5RGV0ZWN0b3JDb25maWd1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBUaGUgZnJlcXVlbmN5LCBpbiBzZWNvbmRzLCBhdCB3aGljaCB0aGUgYW5vbWFseSBkZXRlY3RvciBldmFsdWF0ZXMgbWV0cmljcy5cbiAgICpcbiAgICogTWluaW11bSB2YWx1ZSBvZiAzMC4gTWF4aW11bSB2YWx1ZSBvZiA4NjQwMC5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBldmFsdWF0aW9uSW50ZXJ2YWxJblNlY29uZHM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRoZSBBbWF6b24gTWFuYWdlZCBTZXJ2aWNlIGZvciBQcm9tZXRoZXVzIG1ldHJpYyBsYWJlbHMgYXNzb2NpYXRlZCB3aXRoIHRoZSBhbm9tYWx5IGRldGVjdG9yLlxuICAgKlxuICAgKiBNYXAgRW50cmllczogTWluaW11bSBudW1iZXIgb2YgMCBpdGVtcy4gTWF4aW11bSBudW1iZXIgb2YgMTQwIGl0ZW1zLlxuICAgKiBLZXkgTGVuZ3RoIENvbnN0cmFpbnRzOiBNaW5pbXVtIGxlbmd0aCBvZiAxLiBNYXhpbXVtIGxlbmd0aCBvZiA3MTY4LlxuICAgKiBLZXkgUGF0dGVybjogKD8hX18pW2EtekEtWl9dW2EtekEtWjAtOV9dKlxuICAgKiBWYWx1ZSBMZW5ndGggQ29uc3RyYWludHM6IE1pbmltdW0gbGVuZ3RoIG9mIDEuIE1heGltdW0gbGVuZ3RoIG9mIDcxNjguXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgbGFiZWxzPzogTGFiZWxbXTtcblxuICAvKipcbiAgICogVGhlIGFjdGlvbiB0YWtlbiB3aGVuIGRhdGEgaXMgbWlzc2luZyBkdXJpbmcgZXZhbHVhdGlvbi5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBtaXNzaW5nRGF0YUFjdGlvbj86IE1pc3NpbmdEYXRhQWN0aW9uO1xuXG4gIC8qKlxuICAgKiBBbiBBbWF6b24gTWFuYWdlZCBTZXJ2aWNlIGZvciBQcm9tZXRoZXVzIHdvcmtzcGFjZSBpcyBhIGxvZ2ljYWwgYW5kIGlzb2xhdGVkIFByb21ldGhldXMgc2VydmVyIGRlZGljYXRlZCB0byBpbmdlc3RpbmcsIHN0b3JpbmcsIGFuZCBxdWVyeWluZyB5b3VyIFByb21ldGhldXMtY29tcGF0aWJsZSBtZXRyaWNzLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHdvcmtzcGFjZTogSVdvcmtzcGFjZTtcblxuICAvKipcbiAgICogVGhlIHVuZGVybHlpbmcgQ2xvdWRGb3JtYXRpb24gcmVzb3VyY2UuXG4gICAqL1xuICBwcml2YXRlIHJlYWRvbmx5IGFub21hbHlEZXRlY3RvcjogQ2ZuQW5vbWFseURldGVjdG9yO1xuXG4gIC8qKlxuICAgKiBUaGUgQW1hem9uIFJlc291cmNlIE5hbWUgKEFSTikgb2YgdGhlIGFub21hbHkgZGV0ZWN0b3IuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYW5vbWFseURldGVjdG9yQXJuOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IEFub21hbHlEZXRlY3RvclByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBJU19BTk9NQUxZX0RFVEVDVE9SLCB7IHZhbHVlOiB0cnVlIH0pO1xuXG4gICAgY29uc3QgZXJyb3JzID0gQW5vbWFseURldGVjdG9yLnZhbGlkYXRlUHJvcHMocHJvcHMpO1xuXG4gICAgaWYgKGVycm9ycy5sZW5ndGggPiAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgcHJvcHM6XFxuJHtlcnJvcnMuam9pbignXFxuJyl9YCk7XG4gICAgfVxuXG4gICAgdGhpcy5hbGlhcyA9IHByb3BzLmFsaWFzO1xuICAgIHRoaXMuY29uZmlndXJhdGlvbiA9IHByb3BzLmNvbmZpZ3VyYXRpb247XG4gICAgdGhpcy5ldmFsdWF0aW9uSW50ZXJ2YWxJblNlY29uZHMgPSBwcm9wcy5ldmFsdWF0aW9uSW50ZXJ2YWxJblNlY29uZHM7XG4gICAgdGhpcy5sYWJlbHMgPSBwcm9wcy5sYWJlbHM7XG4gICAgdGhpcy5taXNzaW5nRGF0YUFjdGlvbiA9IHByb3BzLm1pc3NpbmdEYXRhQWN0aW9uO1xuICAgIHRoaXMud29ya3NwYWNlID0gcHJvcHMud29ya3NwYWNlO1xuXG4gICAgbGV0IGNmbkFub21hbHlEZXRlY3RvclByb3BzOiBDZm5Bbm9tYWx5RGV0ZWN0b3JQcm9wcyA9IHtcbiAgICAgIGFsaWFzOiBwcm9wcy5hbGlhcyxcbiAgICAgIGNvbmZpZ3VyYXRpb246IHByb3BzLmNvbmZpZ3VyYXRpb24sXG4gICAgICBldmFsdWF0aW9uSW50ZXJ2YWxJblNlY29uZHM6IHByb3BzLmV2YWx1YXRpb25JbnRlcnZhbEluU2Vjb25kcyxcbiAgICAgIGxhYmVsczogcHJvcHMubGFiZWxzLFxuICAgICAgbWlzc2luZ0RhdGFBY3Rpb246IHByb3BzLm1pc3NpbmdEYXRhQWN0aW9uLFxuICAgICAgd29ya3NwYWNlOiBwcm9wcy53b3Jrc3BhY2Uud29ya3NwYWNlQXJuLFxuICAgIH07XG5cbiAgICB0aGlzLmFub21hbHlEZXRlY3RvciA9IG5ldyBDZm5Bbm9tYWx5RGV0ZWN0b3IodGhpcywgJ1Jlc291cmNlJywgY2ZuQW5vbWFseURldGVjdG9yUHJvcHMpO1xuICAgIHRoaXMubm9kZS5kZWZhdWx0Q2hpbGQgPSB0aGlzLmFub21hbHlEZXRlY3RvcjtcbiAgICB0aGlzLmFub21hbHlEZXRlY3RvckFybiA9IHRoaXMuYW5vbWFseURldGVjdG9yLmF0dHJBcm47XG4gIH1cbn0iXX0=
|
package/lib/index.d.ts
CHANGED
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
export * from './anomaly-detector';
|
|
2
|
+
export { AnomalyDetectorBase, AnomalyDetectorConfiguration, IAnomalyDetector, IgnoreNearExpected, Label as AnomalyDetectorLabel, MissingDataAction, RandomCutForestConfiguration } from './anomaly-detector-base';
|
|
3
|
+
export * from './resource-policy';
|
|
4
|
+
export * from './resource-policy-base';
|
|
1
5
|
export * from './rule-groups-namespace';
|
|
2
6
|
export * from './rule-groups-namespace-base';
|
|
3
7
|
export * from './scraper';
|
package/lib/index.js
CHANGED
|
@@ -14,10 +14,16 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.AnomalyDetectorBase = void 0;
|
|
18
|
+
__exportStar(require("./anomaly-detector"), exports);
|
|
19
|
+
var anomaly_detector_base_1 = require("./anomaly-detector-base");
|
|
20
|
+
Object.defineProperty(exports, "AnomalyDetectorBase", { enumerable: true, get: function () { return anomaly_detector_base_1.AnomalyDetectorBase; } });
|
|
21
|
+
__exportStar(require("./resource-policy"), exports);
|
|
22
|
+
__exportStar(require("./resource-policy-base"), exports);
|
|
17
23
|
__exportStar(require("./rule-groups-namespace"), exports);
|
|
18
24
|
__exportStar(require("./rule-groups-namespace-base"), exports);
|
|
19
25
|
__exportStar(require("./scraper"), exports);
|
|
20
26
|
__exportStar(require("./scraper-base"), exports);
|
|
21
27
|
__exportStar(require("./workspace"), exports);
|
|
22
28
|
__exportStar(require("./workspace-base"), exports);
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxxREFBbUM7QUFDbkMsaUVBQWtOO0FBQXpNLDRIQUFBLG1CQUFtQixPQUFBO0FBQzVCLG9EQUFrQztBQUNsQyx5REFBdUM7QUFDdkMsMERBQXdDO0FBQ3hDLCtEQUE2QztBQUM3Qyw0Q0FBMEI7QUFDMUIsaURBQStCO0FBQy9CLDhDQUE0QjtBQUM1QixtREFBaUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2Fub21hbHktZGV0ZWN0b3InO1xuZXhwb3J0IHsgQW5vbWFseURldGVjdG9yQmFzZSwgQW5vbWFseURldGVjdG9yQ29uZmlndXJhdGlvbiwgSUFub21hbHlEZXRlY3RvciwgSWdub3JlTmVhckV4cGVjdGVkLCBMYWJlbCBhcyBBbm9tYWx5RGV0ZWN0b3JMYWJlbCwgTWlzc2luZ0RhdGFBY3Rpb24sIFJhbmRvbUN1dEZvcmVzdENvbmZpZ3VyYXRpb24gfSBmcm9tICcuL2Fub21hbHktZGV0ZWN0b3ItYmFzZSc7XG5leHBvcnQgKiBmcm9tICcuL3Jlc291cmNlLXBvbGljeSc7XG5leHBvcnQgKiBmcm9tICcuL3Jlc291cmNlLXBvbGljeS1iYXNlJztcbmV4cG9ydCAqIGZyb20gJy4vcnVsZS1ncm91cHMtbmFtZXNwYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vcnVsZS1ncm91cHMtbmFtZXNwYWNlLWJhc2UnO1xuZXhwb3J0ICogZnJvbSAnLi9zY3JhcGVyJztcbmV4cG9ydCAqIGZyb20gJy4vc2NyYXBlci1iYXNlJztcbmV4cG9ydCAqIGZyb20gJy4vd29ya3NwYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vd29ya3NwYWNlLWJhc2UnO1xuIl19
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { IResource, Resource } from 'aws-cdk-lib';
|
|
2
|
+
import { IWorkspace } from './workspace-base';
|
|
3
|
+
export interface IResourcePolicy extends IResource {
|
|
4
|
+
/**
|
|
5
|
+
* The JSON to use as the Resource-based Policy.
|
|
6
|
+
*/
|
|
7
|
+
readonly policyDocument: string;
|
|
8
|
+
/**
|
|
9
|
+
* The workspace to attach the policy to.
|
|
10
|
+
*/
|
|
11
|
+
readonly workspace: IWorkspace;
|
|
12
|
+
}
|
|
13
|
+
export declare abstract class ResourcePolicyBase extends Resource implements IResourcePolicy {
|
|
14
|
+
/**
|
|
15
|
+
* The JSON to use as the Resource-based Policy.
|
|
16
|
+
*/
|
|
17
|
+
abstract readonly policyDocument: string;
|
|
18
|
+
/**
|
|
19
|
+
* The workspace to attach the policy to.
|
|
20
|
+
*/
|
|
21
|
+
abstract readonly workspace: IWorkspace;
|
|
22
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var _a;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.ResourcePolicyBase = void 0;
|
|
5
|
+
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
6
|
+
const aws_cdk_lib_1 = require("aws-cdk-lib");
|
|
7
|
+
class ResourcePolicyBase extends aws_cdk_lib_1.Resource {
|
|
8
|
+
}
|
|
9
|
+
exports.ResourcePolicyBase = ResourcePolicyBase;
|
|
10
|
+
_a = JSII_RTTI_SYMBOL_1;
|
|
11
|
+
ResourcePolicyBase[_a] = { fqn: "@robhan-cdk-lib/aws_aps.ResourcePolicyBase", version: "0.0.145" };
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzb3VyY2UtcG9saWN5LWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvcmVzb3VyY2UtcG9saWN5LWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw2Q0FBa0Q7QUFlbEQsTUFBc0Isa0JBQW1CLFNBQVEsc0JBQVE7O0FBQXpELGdEQVVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVJlc291cmNlLCBSZXNvdXJjZSB9IGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCB7IElXb3Jrc3BhY2UgfSBmcm9tICcuL3dvcmtzcGFjZS1iYXNlJztcblxuZXhwb3J0IGludGVyZmFjZSBJUmVzb3VyY2VQb2xpY3kgZXh0ZW5kcyBJUmVzb3VyY2Uge1xuICAvKipcbiAgICogVGhlIEpTT04gdG8gdXNlIGFzIHRoZSBSZXNvdXJjZS1iYXNlZCBQb2xpY3kuXG4gICAqL1xuICByZWFkb25seSBwb2xpY3lEb2N1bWVudDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgd29ya3NwYWNlIHRvIGF0dGFjaCB0aGUgcG9saWN5IHRvLlxuICAgKi9cbiAgcmVhZG9ubHkgd29ya3NwYWNlOiBJV29ya3NwYWNlO1xufVxuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgUmVzb3VyY2VQb2xpY3lCYXNlIGV4dGVuZHMgUmVzb3VyY2UgaW1wbGVtZW50cyBJUmVzb3VyY2VQb2xpY3kge1xuICAvKipcbiAgICogVGhlIEpTT04gdG8gdXNlIGFzIHRoZSBSZXNvdXJjZS1iYXNlZCBQb2xpY3kuXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgcG9saWN5RG9jdW1lbnQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHdvcmtzcGFjZSB0byBhdHRhY2ggdGhlIHBvbGljeSB0by5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSB3b3Jrc3BhY2U6IElXb3Jrc3BhY2U7XG59XG4iXX0=
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { Construct } from 'constructs';
|
|
2
|
+
import { ResourcePolicyBase } from './resource-policy-base';
|
|
3
|
+
import { IWorkspace } from './workspace-base';
|
|
4
|
+
/**
|
|
5
|
+
* Properties for creating an Amazon Managed Service for Prometheus Resource Policy.
|
|
6
|
+
*/
|
|
7
|
+
export interface ResourcePolicyProps {
|
|
8
|
+
/**
|
|
9
|
+
* The JSON to use as the Resource-based Policy.
|
|
10
|
+
*/
|
|
11
|
+
readonly policyDocument: string;
|
|
12
|
+
/**
|
|
13
|
+
* The workspace to attach the policy to.
|
|
14
|
+
*/
|
|
15
|
+
readonly workspace: IWorkspace;
|
|
16
|
+
}
|
|
17
|
+
export declare class ResourcePolicy extends ResourcePolicyBase {
|
|
18
|
+
static isResourcePolicy(x: any): x is ResourcePolicy;
|
|
19
|
+
/**
|
|
20
|
+
* Validates all resource policy properties.
|
|
21
|
+
*
|
|
22
|
+
* @param props - The resource policy properties to validate
|
|
23
|
+
* @returns An array of error messages if validation fails, or an empty array if valid
|
|
24
|
+
*
|
|
25
|
+
* This method aggregates validation results from all individual property validators.
|
|
26
|
+
* It throws an error if props is not an object.
|
|
27
|
+
*/
|
|
28
|
+
private static validateProps;
|
|
29
|
+
/**
|
|
30
|
+
* The JSON to use as the Resource-based Policy.
|
|
31
|
+
*/
|
|
32
|
+
readonly policyDocument: string;
|
|
33
|
+
/**
|
|
34
|
+
* The workspace to attach the policy to.
|
|
35
|
+
*/
|
|
36
|
+
readonly workspace: IWorkspace;
|
|
37
|
+
/**
|
|
38
|
+
* The underlying CloudFormation resource.
|
|
39
|
+
*/
|
|
40
|
+
private readonly resourcePolicy;
|
|
41
|
+
constructor(scope: Construct, id: string, props: ResourcePolicyProps);
|
|
42
|
+
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var _a;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.ResourcePolicy = void 0;
|
|
5
|
+
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
6
|
+
const utils_1 = require("@robhan-cdk-lib/utils");
|
|
7
|
+
const aws_aps_1 = require("aws-cdk-lib/aws-aps");
|
|
8
|
+
const resource_policy_base_1 = require("./resource-policy-base");
|
|
9
|
+
const IS_RESOURCE_POLICY = Symbol.for('@robhan-cdk-lib/aws_aps.ResourcePolicy');
|
|
10
|
+
class ResourcePolicy extends resource_policy_base_1.ResourcePolicyBase {
|
|
11
|
+
static isResourcePolicy(x) {
|
|
12
|
+
return IS_RESOURCE_POLICY in x;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Validates all resource policy properties.
|
|
16
|
+
*
|
|
17
|
+
* @param props - The resource policy properties to validate
|
|
18
|
+
* @returns An array of error messages if validation fails, or an empty array if valid
|
|
19
|
+
*
|
|
20
|
+
* This method aggregates validation results from all individual property validators.
|
|
21
|
+
* It throws an error if props is not an object.
|
|
22
|
+
*/
|
|
23
|
+
static validateProps(props) {
|
|
24
|
+
const errors = [];
|
|
25
|
+
if (!props || typeof props !== 'object') {
|
|
26
|
+
throw new Error('ResourcePolicy constructor properties must be an object');
|
|
27
|
+
}
|
|
28
|
+
const resourcePolicyProps = props;
|
|
29
|
+
errors.push(...(0, utils_1.validateObjectAttributes)({
|
|
30
|
+
inputObject: resourcePolicyProps,
|
|
31
|
+
mandatoryAttributes: ['policyDocument', 'workspace'],
|
|
32
|
+
optionalAttributes: [],
|
|
33
|
+
}));
|
|
34
|
+
return errors;
|
|
35
|
+
}
|
|
36
|
+
constructor(scope, id, props) {
|
|
37
|
+
super(scope, id);
|
|
38
|
+
Object.defineProperty(this, IS_RESOURCE_POLICY, { value: true });
|
|
39
|
+
const errors = ResourcePolicy.validateProps(props);
|
|
40
|
+
if (errors.length > 0) {
|
|
41
|
+
throw new Error(`Invalid props:\n${errors.join('\n')}`);
|
|
42
|
+
}
|
|
43
|
+
this.policyDocument = props.policyDocument;
|
|
44
|
+
this.workspace = props.workspace;
|
|
45
|
+
let cfnResourcePolicyProps = {
|
|
46
|
+
policyDocument: props.policyDocument,
|
|
47
|
+
workspaceArn: props.workspace.workspaceArn,
|
|
48
|
+
};
|
|
49
|
+
this.resourcePolicy = new aws_aps_1.CfnResourcePolicy(this, 'Resource', cfnResourcePolicyProps);
|
|
50
|
+
this.node.defaultChild = this.resourcePolicy;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
exports.ResourcePolicy = ResourcePolicy;
|
|
54
|
+
_a = JSII_RTTI_SYMBOL_1;
|
|
55
|
+
ResourcePolicy[_a] = { fqn: "@robhan-cdk-lib/aws_aps.ResourcePolicy", version: "0.0.145" };
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzb3VyY2UtcG9saWN5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3Jlc291cmNlLXBvbGljeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLGlEQUFpRTtBQUNqRSxpREFBZ0Y7QUFFaEYsaUVBQTREO0FBa0I1RCxNQUFNLGtCQUFrQixHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsd0NBQXdDLENBQUMsQ0FBQztBQUVoRixNQUFhLGNBQWUsU0FBUSx5Q0FBa0I7SUFDN0MsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQU07UUFDbkMsT0FBTyxrQkFBa0IsSUFBSSxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVEOzs7Ozs7OztPQVFHO0lBQ0ssTUFBTSxDQUFDLGFBQWEsQ0FBQyxLQUFjO1FBQ3pDLE1BQU0sTUFBTSxHQUFhLEVBQUUsQ0FBQztRQUU1QixJQUFJLENBQUMsS0FBSyxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQ3hDLE1BQU0sSUFBSSxLQUFLLENBQUMseURBQXlELENBQUMsQ0FBQztRQUM3RSxDQUFDO1FBQ0QsTUFBTSxtQkFBbUIsR0FBRyxLQUE0QixDQUFDO1FBRXpELE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFBLGdDQUF3QixFQUFDO1lBQ3RDLFdBQVcsRUFBRSxtQkFBbUI7WUFDaEMsbUJBQW1CLEVBQUUsQ0FBQyxnQkFBZ0IsRUFBRSxXQUFXLENBQUM7WUFDcEQsa0JBQWtCLEVBQUUsRUFBRTtTQUN2QixDQUFDLENBQUMsQ0FBQztRQUVKLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFpQkQsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUEwQjtRQUNsRSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLGtCQUFrQixFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFFakUsTUFBTSxNQUFNLEdBQUcsY0FBYyxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVuRCxJQUFJLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDdEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxtQkFBbUIsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDMUQsQ0FBQztRQUVELElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDLGNBQWMsQ0FBQztRQUMzQyxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUM7UUFFakMsSUFBSSxzQkFBc0IsR0FBMkI7WUFDbkQsY0FBYyxFQUFFLEtBQUssQ0FBQyxjQUFjO1lBQ3BDLFlBQVksRUFBRSxLQUFLLENBQUMsU0FBUyxDQUFDLFlBQVk7U0FDM0MsQ0FBQztRQUVGLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSwyQkFBaUIsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFLHNCQUFzQixDQUFDLENBQUM7UUFDdEYsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQztJQUMvQyxDQUFDOztBQW5FSCx3Q0FvRUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB2YWxpZGF0ZU9iamVjdEF0dHJpYnV0ZXMgfSBmcm9tICdAcm9iaGFuLWNkay1saWIvdXRpbHMnO1xuaW1wb3J0IHsgQ2ZuUmVzb3VyY2VQb2xpY3ksIENmblJlc291cmNlUG9saWN5UHJvcHMgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtYXBzJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgUmVzb3VyY2VQb2xpY3lCYXNlIH0gZnJvbSAnLi9yZXNvdXJjZS1wb2xpY3ktYmFzZSc7XG5pbXBvcnQgeyBJV29ya3NwYWNlIH0gZnJvbSAnLi93b3Jrc3BhY2UtYmFzZSc7XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgY3JlYXRpbmcgYW4gQW1hem9uIE1hbmFnZWQgU2VydmljZSBmb3IgUHJvbWV0aGV1cyBSZXNvdXJjZSBQb2xpY3kuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVzb3VyY2VQb2xpY3lQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgSlNPTiB0byB1c2UgYXMgdGhlIFJlc291cmNlLWJhc2VkIFBvbGljeS5cbiAgICovXG4gIHJlYWRvbmx5IHBvbGljeURvY3VtZW50OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSB3b3Jrc3BhY2UgdG8gYXR0YWNoIHRoZSBwb2xpY3kgdG8uXG4gICAqL1xuICByZWFkb25seSB3b3Jrc3BhY2U6IElXb3Jrc3BhY2U7XG59XG5cbmNvbnN0IElTX1JFU09VUkNFX1BPTElDWSA9IFN5bWJvbC5mb3IoJ0Byb2JoYW4tY2RrLWxpYi9hd3NfYXBzLlJlc291cmNlUG9saWN5Jyk7XG5cbmV4cG9ydCBjbGFzcyBSZXNvdXJjZVBvbGljeSBleHRlbmRzIFJlc291cmNlUG9saWN5QmFzZSB7XG4gIHB1YmxpYyBzdGF0aWMgaXNSZXNvdXJjZVBvbGljeSh4OiBhbnkpOiB4IGlzIFJlc291cmNlUG9saWN5IHtcbiAgICByZXR1cm4gSVNfUkVTT1VSQ0VfUE9MSUNZIGluIHg7XG4gIH1cblxuICAvKipcbiAgICogVmFsaWRhdGVzIGFsbCByZXNvdXJjZSBwb2xpY3kgcHJvcGVydGllcy5cbiAgICpcbiAgICogQHBhcmFtIHByb3BzIC0gVGhlIHJlc291cmNlIHBvbGljeSBwcm9wZXJ0aWVzIHRvIHZhbGlkYXRlXG4gICAqIEByZXR1cm5zIEFuIGFycmF5IG9mIGVycm9yIG1lc3NhZ2VzIGlmIHZhbGlkYXRpb24gZmFpbHMsIG9yIGFuIGVtcHR5IGFycmF5IGlmIHZhbGlkXG4gICAqXG4gICAqIFRoaXMgbWV0aG9kIGFnZ3JlZ2F0ZXMgdmFsaWRhdGlvbiByZXN1bHRzIGZyb20gYWxsIGluZGl2aWR1YWwgcHJvcGVydHkgdmFsaWRhdG9ycy5cbiAgICogSXQgdGhyb3dzIGFuIGVycm9yIGlmIHByb3BzIGlzIG5vdCBhbiBvYmplY3QuXG4gICAqL1xuICBwcml2YXRlIHN0YXRpYyB2YWxpZGF0ZVByb3BzKHByb3BzOiB1bmtub3duKTogc3RyaW5nW10ge1xuICAgIGNvbnN0IGVycm9yczogc3RyaW5nW10gPSBbXTtcblxuICAgIGlmICghcHJvcHMgfHwgdHlwZW9mIHByb3BzICE9PSAnb2JqZWN0Jykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdSZXNvdXJjZVBvbGljeSBjb25zdHJ1Y3RvciBwcm9wZXJ0aWVzIG11c3QgYmUgYW4gb2JqZWN0Jyk7XG4gICAgfVxuICAgIGNvbnN0IHJlc291cmNlUG9saWN5UHJvcHMgPSBwcm9wcyBhcyBSZXNvdXJjZVBvbGljeVByb3BzO1xuXG4gICAgZXJyb3JzLnB1c2goLi4udmFsaWRhdGVPYmplY3RBdHRyaWJ1dGVzKHtcbiAgICAgIGlucHV0T2JqZWN0OiByZXNvdXJjZVBvbGljeVByb3BzLFxuICAgICAgbWFuZGF0b3J5QXR0cmlidXRlczogWydwb2xpY3lEb2N1bWVudCcsICd3b3Jrc3BhY2UnXSxcbiAgICAgIG9wdGlvbmFsQXR0cmlidXRlczogW10sXG4gICAgfSkpO1xuXG4gICAgcmV0dXJuIGVycm9ycztcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgSlNPTiB0byB1c2UgYXMgdGhlIFJlc291cmNlLWJhc2VkIFBvbGljeS5cbiAgICovXG4gIHJlYWRvbmx5IHBvbGljeURvY3VtZW50OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSB3b3Jrc3BhY2UgdG8gYXR0YWNoIHRoZSBwb2xpY3kgdG8uXG4gICAqL1xuICByZWFkb25seSB3b3Jrc3BhY2U6IElXb3Jrc3BhY2U7XG5cbiAgLyoqXG4gICAqIFRoZSB1bmRlcmx5aW5nIENsb3VkRm9ybWF0aW9uIHJlc291cmNlLlxuICAgKi9cbiAgcHJpdmF0ZSByZWFkb25seSByZXNvdXJjZVBvbGljeTogQ2ZuUmVzb3VyY2VQb2xpY3k7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IFJlc291cmNlUG9saWN5UHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIElTX1JFU09VUkNFX1BPTElDWSwgeyB2YWx1ZTogdHJ1ZSB9KTtcblxuICAgIGNvbnN0IGVycm9ycyA9IFJlc291cmNlUG9saWN5LnZhbGlkYXRlUHJvcHMocHJvcHMpO1xuXG4gICAgaWYgKGVycm9ycy5sZW5ndGggPiAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgcHJvcHM6XFxuJHtlcnJvcnMuam9pbignXFxuJyl9YCk7XG4gICAgfVxuXG4gICAgdGhpcy5wb2xpY3lEb2N1bWVudCA9IHByb3BzLnBvbGljeURvY3VtZW50O1xuICAgIHRoaXMud29ya3NwYWNlID0gcHJvcHMud29ya3NwYWNlO1xuXG4gICAgbGV0IGNmblJlc291cmNlUG9saWN5UHJvcHM6IENmblJlc291cmNlUG9saWN5UHJvcHMgPSB7XG4gICAgICBwb2xpY3lEb2N1bWVudDogcHJvcHMucG9saWN5RG9jdW1lbnQsXG4gICAgICB3b3Jrc3BhY2VBcm46IHByb3BzLndvcmtzcGFjZS53b3Jrc3BhY2VBcm4sXG4gICAgfTtcblxuICAgIHRoaXMucmVzb3VyY2VQb2xpY3kgPSBuZXcgQ2ZuUmVzb3VyY2VQb2xpY3kodGhpcywgJ1Jlc291cmNlJywgY2ZuUmVzb3VyY2VQb2xpY3lQcm9wcyk7XG4gICAgdGhpcy5ub2RlLmRlZmF1bHRDaGlsZCA9IHRoaXMucmVzb3VyY2VQb2xpY3k7XG4gIH1cbn0iXX0=
|
|
@@ -8,5 +8,5 @@ class RuleGroupsNamespaceBase extends aws_cdk_lib_1.Resource {
|
|
|
8
8
|
}
|
|
9
9
|
exports.RuleGroupsNamespaceBase = RuleGroupsNamespaceBase;
|
|
10
10
|
_a = JSII_RTTI_SYMBOL_1;
|
|
11
|
-
RuleGroupsNamespaceBase[_a] = { fqn: "@robhan-cdk-lib/aws_aps.RuleGroupsNamespaceBase", version: "0.0.
|
|
11
|
+
RuleGroupsNamespaceBase[_a] = { fqn: "@robhan-cdk-lib/aws_aps.RuleGroupsNamespaceBase", version: "0.0.145" };
|
|
12
12
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVsZS1ncm91cHMtbmFtZXNwYWNlLWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvcnVsZS1ncm91cHMtbmFtZXNwYWNlLWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw2Q0FBa0Q7QUEwQmxELE1BQXNCLHVCQUF3QixTQUFRLHNCQUFROztBQUE5RCwwREFvQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJUmVzb3VyY2UsIFJlc291cmNlIH0gZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0IHsgSVdvcmtzcGFjZSB9IGZyb20gJy4vd29ya3NwYWNlLWJhc2UnO1xuXG5leHBvcnQgaW50ZXJmYWNlIElSdWxlR3JvdXBzTmFtZXNwYWNlIGV4dGVuZHMgSVJlc291cmNlIHtcbiAgLyoqXG4gICAqIFRoZSBydWxlcyBmaWxlIHVzZWQgaW4gdGhlIG5hbWVzcGFjZS5cbiAgICovXG4gIHJlYWRvbmx5IGRhdGE6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIHJ1bGUgZ3JvdXBzIG5hbWVzcGFjZS5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgcnVsZSBncm91cHMgbmFtZXNwYWNlLlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSBydWxlR3JvdXBzTmFtZXNwYWNlQXJuOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSB3b3Jrc3BhY2UgdG8gYWRkIHRoZSBydWxlIGdyb3VwcyBuYW1lc3BhY2UuXG4gICAqL1xuICByZWFkb25seSB3b3Jrc3BhY2U6IElXb3Jrc3BhY2U7XG59XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBSdWxlR3JvdXBzTmFtZXNwYWNlQmFzZSBleHRlbmRzIFJlc291cmNlIGltcGxlbWVudHMgSVJ1bGVHcm91cHNOYW1lc3BhY2Uge1xuICAvKipcbiAgICogVGhlIHJ1bGVzIGZpbGUgdXNlZCBpbiB0aGUgbmFtZXNwYWNlLlxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IGRhdGE6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIHJ1bGUgZ3JvdXBzIG5hbWVzcGFjZS5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBuYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgdGhlIHJ1bGUgZ3JvdXBzIG5hbWVzcGFjZS5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBydWxlR3JvdXBzTmFtZXNwYWNlQXJuOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSB3b3Jrc3BhY2UgdG8gYWRkIHRoZSBydWxlIGdyb3VwcyBuYW1lc3BhY2UuXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgd29ya3NwYWNlOiBJV29ya3NwYWNlO1xufSJdfQ==
|
|
@@ -79,5 +79,5 @@ class RuleGroupsNamespace extends rule_groups_namespace_base_1.RuleGroupsNamespa
|
|
|
79
79
|
}
|
|
80
80
|
exports.RuleGroupsNamespace = RuleGroupsNamespace;
|
|
81
81
|
_a = JSII_RTTI_SYMBOL_1;
|
|
82
|
-
RuleGroupsNamespace[_a] = { fqn: "@robhan-cdk-lib/aws_aps.RuleGroupsNamespace", version: "0.0.
|
|
82
|
+
RuleGroupsNamespace[_a] = { fqn: "@robhan-cdk-lib/aws_aps.RuleGroupsNamespace", version: "0.0.145" };
|
|
83
83
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVsZS1ncm91cHMtbmFtZXNwYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3J1bGUtZ3JvdXBzLW5hbWVzcGFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLGlEQUFpRTtBQUNqRSxpREFBMEY7QUFFMUYsNkVBQTZGO0FBQzdGLHdGQUFxRjtBQXNEckYsTUFBTSx3QkFBd0IsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLDZDQUE2QyxDQUFDLENBQUM7QUFHM0Y7Ozs7R0FJRztBQUNILE1BQWEsbUJBQW9CLFNBQVEsb0RBQXVCO0lBQ3ZELE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFNO1FBQ3hDLE9BQU8sd0JBQXdCLElBQUksQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFTSxNQUFNLENBQUMsaUNBQWlDLENBQUMsS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBb0M7UUFDaEgsTUFBTSxNQUFPLFNBQVEsb0RBQXVCO1lBSzFDLFlBQVksVUFBeUM7Z0JBQ25ELEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBQ2pCLElBQUksQ0FBQyxJQUFJLEdBQUcsVUFBVSxDQUFDLElBQUksQ0FBQztnQkFDNUIsSUFBSSxDQUFDLElBQUksR0FBRyxVQUFVLENBQUMsSUFBSSxDQUFDO2dCQUM1QixJQUFJLENBQUMsU0FBUyxHQUFHLFVBQVUsQ0FBQyxTQUFTLENBQUM7Z0JBQ3RDLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxVQUFVLENBQUMsc0JBQXNCLENBQUM7WUFDbEUsQ0FBQztTQUNGO1FBQ0QsT0FBTyxJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRUQ7Ozs7Ozs7O09BUUc7SUFDSyxNQUFNLENBQUMsYUFBYSxDQUFDLEtBQWM7UUFDekMsTUFBTSxNQUFNLEdBQWEsRUFBRSxDQUFDO1FBRTVCLElBQUksQ0FBQyxLQUFLLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDeEMsTUFBTSxJQUFJLEtBQUssQ0FBQyw4REFBOEQsQ0FBQyxDQUFDO1FBQ2xGLENBQUM7UUFDRCxNQUFNLHdCQUF3QixHQUFHLEtBQWlDLENBQUM7UUFFbkUsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUEsZ0NBQXdCLEVBQUM7WUFDdEMsV0FBVyxFQUFFLHdCQUF3QjtZQUNyQyxtQkFBbUIsRUFBRSxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsV0FBVyxDQUFDO1lBQ2xELGtCQUFrQixFQUFFLEVBQUU7U0FDdkIsQ0FBQyxDQUFDLENBQUM7UUFFSixJQUFJLHdCQUF3QixDQUFDLElBQUksS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUNoRCxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBQSx5Q0FBWSxFQUFDLHdCQUF3QixDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDM0YsQ0FBQztRQUVELElBQUksd0JBQXdCLENBQUMsSUFBSSxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQ2hELE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFBLHlDQUFZLEVBQUMsd0JBQXdCLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUMzRixDQUFDO1FBRUQsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQTBCRCxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQStCO1FBQ3ZFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFakIsTUFBTSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsd0JBQXdCLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUV2RSxNQUFNLE1BQU0sR0FBRyxtQkFBbUIsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFeEQsSUFBSSxNQUFNLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ3RCLE1BQU0sSUFBSSxLQUFLLENBQUMsbUJBQW1CLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzFELENBQUM7UUFFRCxJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUM7UUFDdkIsSUFBSSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQztRQUVqQyxJQUFJLDJCQUEyQixHQUFnQztZQUM3RCxJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUk7WUFDaEIsSUFBSSxFQUFFLEtBQUssQ0FBQyxJQUFJO1lBQ2hCLFNBQVMsRUFBRSxLQUFLLENBQUMsU0FBUyxDQUFDLFdBQVc7U0FDdkMsQ0FBQztRQUVGLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLGdDQUFzQixDQUFDLElBQUksRUFBRSxVQUFVLEVBQUUsMkJBQTJCLENBQUMsQ0FBQztRQUNyRyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUM7UUFFbEQsSUFBSSxDQUFDLHNCQUFzQixHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLENBQUM7SUFDakUsQ0FBQzs7QUF6R0gsa0RBMEdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdmFsaWRhdGVPYmplY3RBdHRyaWJ1dGVzIH0gZnJvbSAnQHJvYmhhbi1jZGstbGliL3V0aWxzJztcbmltcG9ydCB7IENmblJ1bGVHcm91cHNOYW1lc3BhY2UsIENmblJ1bGVHcm91cHNOYW1lc3BhY2VQcm9wcyB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1hcHMnO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQgeyBJUnVsZUdyb3Vwc05hbWVzcGFjZSwgUnVsZUdyb3Vwc05hbWVzcGFjZUJhc2UgfSBmcm9tICcuL3J1bGUtZ3JvdXBzLW5hbWVzcGFjZS1iYXNlJztcbmltcG9ydCB7IHZhbGlkYXRlRGF0YSwgdmFsaWRhdGVOYW1lIH0gZnJvbSAnLi92YWxpZGF0aW9uL3J1bGUtZ3JvdXBzLW5hbWVzcGFjZS1iYXNlJztcbmltcG9ydCB7IElXb3Jrc3BhY2UgfSBmcm9tICcuL3dvcmtzcGFjZS1iYXNlJztcblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBjcmVhdGluZyBhIHJ1bGUgZ3JvdXBzIG5hbWVzcGFjZSBpbiBhbiBBbWF6b24gTWFuYWdlZCBTZXJ2aWNlIGZvciBQcm9tZXRoZXVzXG4gKiB3b3Jrc3BhY2UuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUnVsZUdyb3Vwc05hbWVzcGFjZVByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBydWxlcyBmaWxlIHVzZWQgaW4gdGhlIG5hbWVzcGFjZS5cbiAgICovXG4gIHJlYWRvbmx5IGRhdGE6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIHJ1bGUgZ3JvdXBzIG5hbWVzcGFjZS5cbiAgICpcbiAgICogQmV0d2VlbiAxIGFuZCA2NCBjaGFyYWN0ZXJzLlxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgd29ya3NwYWNlIHRvIGFkZCB0aGUgcnVsZSBncm91cHMgbmFtZXNwYWNlLlxuICAgKi9cbiAgcmVhZG9ubHkgd29ya3NwYWNlOiBJV29ya3NwYWNlO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGltcG9ydGluZyBhIHJ1bGUgZ3JvdXBzIG5hbWVzcGFjZSBpbiBhbiBBbWF6b24gTWFuYWdlZCBTZXJ2aWNlIGZvciBQcm9tZXRoZXVzXG4gKiB3b3Jrc3BhY2UgZnJvbSBhdHRyaWJ1dGVzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJ1bGVHcm91cHNOYW1lc3BhY2VBdHRyaWJ1dGVzIHtcbiAgLyoqXG4gICAqIFRoZSBydWxlcyBmaWxlIHVzZWQgaW4gdGhlIG5hbWVzcGFjZS5cbiAgICovXG4gIHJlYWRvbmx5IGRhdGE6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIHJ1bGUgZ3JvdXBzIG5hbWVzcGFjZS5cbiAgICpcbiAgICogQmV0d2VlbiAxIGFuZCA2NCBjaGFyYWN0ZXJzLlxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgd29ya3NwYWNlIHRvIGFkZCB0aGUgcnVsZSBncm91cHMgbmFtZXNwYWNlLlxuICAgKi9cbiAgcmVhZG9ubHkgd29ya3NwYWNlOiBJV29ya3NwYWNlO1xuXG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBydWxlIGdyb3VwcyBuYW1lc3BhY2UuXG4gICAqL1xuICByZWFkb25seSBydWxlR3JvdXBzTmFtZXNwYWNlQXJuOiBzdHJpbmc7XG59XG5cbmNvbnN0IElTX1JVTEVfR1JPVVBTX05BTUVTUEFDRSA9IFN5bWJvbC5mb3IoJ0Byb2JoYW4tY2RrLWxpYi9hd3NfYXBzLlJ1bGVHcm91cHNOYW1lc3BhY2UnKTtcblxuXG4vKipcbiAqIFRoZSBkZWZpbml0aW9uIG9mIGEgcnVsZSBncm91cHMgbmFtZXNwYWNlIGluIGFuIEFtYXpvbiBNYW5hZ2VkIFNlcnZpY2UgZm9yIFByb21ldGhldXMgd29ya3NwYWNlLlxuICogQSBydWxlIGdyb3VwcyBuYW1lc3BhY2UgaXMgYXNzb2NpYXRlZCB3aXRoIGV4YWN0bHkgb25lIHJ1bGVzIGZpbGUuIEEgd29ya3NwYWNlIGNhbiBoYXZlIG11bHRpcGxlXG4gKiBydWxlIGdyb3VwcyBuYW1lc3BhY2VzLlxuICovXG5leHBvcnQgY2xhc3MgUnVsZUdyb3Vwc05hbWVzcGFjZSBleHRlbmRzIFJ1bGVHcm91cHNOYW1lc3BhY2VCYXNlIHtcbiAgcHVibGljIHN0YXRpYyBpc1J1bGVHcm91cHNOYW1lc3BhY2UoeDogYW55KTogeCBpcyBSdWxlR3JvdXBzTmFtZXNwYWNlIHtcbiAgICByZXR1cm4gSVNfUlVMRV9HUk9VUFNfTkFNRVNQQUNFIGluIHg7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGZyb21SdWxlR3JvdXBzTmFtZXNwYWNlQXR0cmlidXRlcyhzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBhdHRyczogUnVsZUdyb3Vwc05hbWVzcGFjZUF0dHJpYnV0ZXMpOiBJUnVsZUdyb3Vwc05hbWVzcGFjZSB7XG4gICAgY2xhc3MgSW1wb3J0IGV4dGVuZHMgUnVsZUdyb3Vwc05hbWVzcGFjZUJhc2Uge1xuICAgICAgcHVibGljIHJlYWRvbmx5IGRhdGE6IHN0cmluZztcbiAgICAgIHB1YmxpYyByZWFkb25seSBuYW1lOiBzdHJpbmc7XG4gICAgICBwdWJsaWMgcmVhZG9ubHkgd29ya3NwYWNlOiBJV29ya3NwYWNlO1xuICAgICAgcHVibGljIHJlYWRvbmx5IHJ1bGVHcm91cHNOYW1lc3BhY2VBcm46IHN0cmluZztcbiAgICAgIGNvbnN0cnVjdG9yKGF0dHJpYnV0ZXM6IFJ1bGVHcm91cHNOYW1lc3BhY2VBdHRyaWJ1dGVzKSB7XG4gICAgICAgIHN1cGVyKHNjb3BlLCBpZCk7XG4gICAgICAgIHRoaXMuZGF0YSA9IGF0dHJpYnV0ZXMuZGF0YTtcbiAgICAgICAgdGhpcy5uYW1lID0gYXR0cmlidXRlcy5uYW1lO1xuICAgICAgICB0aGlzLndvcmtzcGFjZSA9IGF0dHJpYnV0ZXMud29ya3NwYWNlO1xuICAgICAgICB0aGlzLnJ1bGVHcm91cHNOYW1lc3BhY2VBcm4gPSBhdHRyaWJ1dGVzLnJ1bGVHcm91cHNOYW1lc3BhY2VBcm47XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBuZXcgSW1wb3J0KGF0dHJzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBWYWxpZGF0ZXMgYWxsIHJ1bGUgZ3JvdXBzIG5hbWVzcGFjZSBwcm9wZXJ0aWVzLlxuICAgKlxuICAgKiBAcGFyYW0gcHJvcHMgLSBUaGUgcnVsZSBncm91cCBuYW1lc3BhY2UgcHJvcGVydGllcyB0byB2YWxpZGF0ZVxuICAgKiBAcmV0dXJucyBBbiBhcnJheSBvZiBlcnJvciBtZXNzYWdlcyBpZiB2YWxpZGF0aW9uIGZhaWxzLCBvciBhbiBlbXB0eSBhcnJheSBpZiB2YWxpZFxuICAgKlxuICAgKiBUaGlzIG1ldGhvZCBhZ2dyZWdhdGVzIHZhbGlkYXRpb24gcmVzdWx0cyBmcm9tIGFsbCBpbmRpdmlkdWFsIHByb3BlcnR5IHZhbGlkYXRvcnMuXG4gICAqIEl0IHRocm93cyBhbiBlcnJvciBpZiBwcm9wcyBpcyBub3QgYW4gb2JqZWN0LlxuICAgKi9cbiAgcHJpdmF0ZSBzdGF0aWMgdmFsaWRhdGVQcm9wcyhwcm9wczogdW5rbm93bik6IHN0cmluZ1tdIHtcbiAgICBjb25zdCBlcnJvcnM6IHN0cmluZ1tdID0gW107XG5cbiAgICBpZiAoIXByb3BzIHx8IHR5cGVvZiBwcm9wcyAhPT0gJ29iamVjdCcpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignUnVsZUdyb3Vwc05hbWVzcGFjZSBjb25zdHJ1Y3RvciBwcm9wZXJ0aWVzIG11c3QgYmUgYW4gb2JqZWN0Jyk7XG4gICAgfVxuICAgIGNvbnN0IHJ1bGVHcm91cHNOYW1lc3BhY2VQcm9wcyA9IHByb3BzIGFzIFJ1bGVHcm91cHNOYW1lc3BhY2VQcm9wcztcblxuICAgIGVycm9ycy5wdXNoKC4uLnZhbGlkYXRlT2JqZWN0QXR0cmlidXRlcyh7XG4gICAgICBpbnB1dE9iamVjdDogcnVsZUdyb3Vwc05hbWVzcGFjZVByb3BzLFxuICAgICAgbWFuZGF0b3J5QXR0cmlidXRlczogWydkYXRhJywgJ25hbWUnLCAnd29ya3NwYWNlJ10sXG4gICAgICBvcHRpb25hbEF0dHJpYnV0ZXM6IFtdLFxuICAgIH0pKTtcblxuICAgIGlmIChydWxlR3JvdXBzTmFtZXNwYWNlUHJvcHMubmFtZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBlcnJvcnMucHVzaCguLi52YWxpZGF0ZU5hbWUocnVsZUdyb3Vwc05hbWVzcGFjZVByb3BzLm5hbWUpLm1hcCgoZXJyKSA9PiBgbmFtZTogJHtlcnJ9YCkpO1xuICAgIH1cblxuICAgIGlmIChydWxlR3JvdXBzTmFtZXNwYWNlUHJvcHMuZGF0YSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBlcnJvcnMucHVzaCguLi52YWxpZGF0ZURhdGEocnVsZUdyb3Vwc05hbWVzcGFjZVByb3BzLmRhdGEpLm1hcCgoZXJyKSA9PiBgZGF0YTogJHtlcnJ9YCkpO1xuICAgIH1cblxuICAgIHJldHVybiBlcnJvcnM7XG4gIH1cbiAgLyoqXG4gICAqIFRoZSBydWxlcyBmaWxlIHVzZWQgaW4gdGhlIG5hbWVzcGFjZS5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBkYXRhOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBydWxlIGdyb3VwcyBuYW1lc3BhY2UuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgd29ya3NwYWNlIHRvIGFkZCB0aGUgcnVsZSBncm91cHMgbmFtZXNwYWNlLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHdvcmtzcGFjZTogSVdvcmtzcGFjZTtcblxuICAvKipcbiAgICogVGhlIHdvcmtzcGFjZSB0byBhZGQgdGhlIHJ1bGUgZ3JvdXBzIG5hbWVzcGFjZS5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBydWxlR3JvdXBzTmFtZXNwYWNlQXJuOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSB1bmRlcmx5aW5nIENsb3VkRm9ybWF0aW9uIHJlc291cmNlLlxuICAgKi9cbiAgcHJpdmF0ZSByZWFkb25seSBydWxlR3JvdXBzTmFtZXNwYWNlOiBDZm5SdWxlR3JvdXBzTmFtZXNwYWNlO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBSdWxlR3JvdXBzTmFtZXNwYWNlUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIElTX1JVTEVfR1JPVVBTX05BTUVTUEFDRSwgeyB2YWx1ZTogdHJ1ZSB9KTtcblxuICAgIGNvbnN0IGVycm9ycyA9IFJ1bGVHcm91cHNOYW1lc3BhY2UudmFsaWRhdGVQcm9wcyhwcm9wcyk7XG5cbiAgICBpZiAoZXJyb3JzLmxlbmd0aCA+IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBwcm9wczpcXG4ke2Vycm9ycy5qb2luKCdcXG4nKX1gKTtcbiAgICB9XG5cbiAgICB0aGlzLmRhdGEgPSBwcm9wcy5kYXRhO1xuICAgIHRoaXMubmFtZSA9IHByb3BzLm5hbWU7XG4gICAgdGhpcy53b3Jrc3BhY2UgPSBwcm9wcy53b3Jrc3BhY2U7XG5cbiAgICBsZXQgY2ZuUnVsZUdyb3Vwc05hbWVzcGFjZVByb3BzOiBDZm5SdWxlR3JvdXBzTmFtZXNwYWNlUHJvcHMgPSB7XG4gICAgICBkYXRhOiBwcm9wcy5kYXRhLFxuICAgICAgbmFtZTogcHJvcHMubmFtZSxcbiAgICAgIHdvcmtzcGFjZTogcHJvcHMud29ya3NwYWNlLndvcmtzcGFjZUlkLFxuICAgIH07XG5cbiAgICB0aGlzLnJ1bGVHcm91cHNOYW1lc3BhY2UgPSBuZXcgQ2ZuUnVsZUdyb3Vwc05hbWVzcGFjZSh0aGlzLCAnUmVzb3VyY2UnLCBjZm5SdWxlR3JvdXBzTmFtZXNwYWNlUHJvcHMpO1xuICAgIHRoaXMubm9kZS5kZWZhdWx0Q2hpbGQgPSB0aGlzLnJ1bGVHcm91cHNOYW1lc3BhY2U7XG5cbiAgICB0aGlzLnJ1bGVHcm91cHNOYW1lc3BhY2VBcm4gPSB0aGlzLnJ1bGVHcm91cHNOYW1lc3BhY2UuYXR0ckFybjtcbiAgfVxufSJdfQ==
|