@aws-cdk/aws-iot-alpha 2.163.0-alpha.0 → 2.164.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,285 @@
1
+ "use strict";
2
+ var _a, _b;
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.ScheduledAudit = exports.Frequency = exports.DayOfMonth = exports.DayOfWeek = exports.AuditCheck = void 0;
5
+ const jsiiDeprecationWarnings = require("../.warnings.jsii.js");
6
+ const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
7
+ const core_1 = require("aws-cdk-lib/core");
8
+ const iot = require("aws-cdk-lib/aws-iot");
9
+ /**
10
+ * The AWS IoT Device Defender audit checks
11
+ *
12
+ * @see https://docs.aws.amazon.com/iot-device-defender/latest/devguide/device-defender-audit-checks.html
13
+ */
14
+ var AuditCheck;
15
+ (function (AuditCheck) {
16
+ /**
17
+ * Checks the permissiveness of an authenticated Amazon Cognito identity pool role.
18
+ *
19
+ * For this check, AWS IoT Device Defender audits all Amazon Cognito identity pools that have been used to connect to the AWS IoT message broker
20
+ * during the 31 days before the audit is performed.
21
+ */
22
+ AuditCheck["AUTHENTICATED_COGNITO_ROLE_OVERLY_PERMISSIVE_CHECK"] = "AUTHENTICATED_COGNITO_ROLE_OVERLY_PERMISSIVE_CHECK";
23
+ /**
24
+ * Checks if a CA certificate is expiring.
25
+ *
26
+ * This check applies to CA certificates expiring within 30 days or that have expired.
27
+ */
28
+ AuditCheck["CA_CERTIFICATE_EXPIRING_CHECK"] = "CA_CERTIFICATE_EXPIRING_CHECK";
29
+ /**
30
+ * Checks the quality of the CA certificate key.
31
+ *
32
+ * The quality checks if the key is in a valid format, not expired, and if the key meets a minimum required size.
33
+ *
34
+ * This check applies to CA certificates that are ACTIVE or PENDING_TRANSFER.
35
+ */
36
+ AuditCheck["CA_CERTIFICATE_KEY_QUALITY_CHECK"] = "CA_CERTIFICATE_KEY_QUALITY_CHECK";
37
+ /**
38
+ * Checks if multiple devices connect using the same client ID.
39
+ */
40
+ AuditCheck["CONFLICTING_CLIENT_IDS_CHECK"] = "CONFLICTING_CLIENT_IDS_CHECK";
41
+ /**
42
+ * Checks if a device certificate is expiring.
43
+ *
44
+ * This check applies to device certificates expiring within 30 days or that have expired.
45
+ */
46
+ AuditCheck["DEVICE_CERTIFICATE_EXPIRING_CHECK"] = "DEVICE_CERTIFICATE_EXPIRING_CHECK";
47
+ /**
48
+ * Checks the quality of the device certificate key.
49
+ *
50
+ * The quality checks if the key is in a valid format, not expired, signed by a registered certificate authority,
51
+ * and if the key meets a minimum required size.
52
+ */
53
+ AuditCheck["DEVICE_CERTIFICATE_KEY_QUALITY_CHECK"] = "DEVICE_CERTIFICATE_KEY_QUALITY_CHECK";
54
+ /**
55
+ * Checks if multiple concurrent connections use the same X.509 certificate to authenticate with AWS IoT.
56
+ */
57
+ AuditCheck["DEVICE_CERTIFICATE_SHARED_CHECK"] = "DEVICE_CERTIFICATE_SHARED_CHECK";
58
+ /**
59
+ * Checks the permissiveness of a policy attached to an authenticated Amazon Cognito identity pool role.
60
+ */
61
+ AuditCheck["IOT_POLICY_OVERLY_PERMISSIVE_CHECK"] = "IOT_POLICY_OVERLY_PERMISSIVE_CHECK";
62
+ /**
63
+ * Checks if a role alias has access to services that haven't been used for the AWS IoT device in the last year.
64
+ */
65
+ AuditCheck["IOT_ROLE_ALIAS_ALLOWS_ACCESS_TO_UNUSED_SERVICES_CHECK"] = "IOT_ROLE_ALIAS_ALLOWS_ACCESS_TO_UNUSED_SERVICES_CHECK";
66
+ /**
67
+ * Checks if the temporary credentials provided by AWS IoT role aliases are overly permissive.
68
+ */
69
+ AuditCheck["IOT_ROLE_ALIAS_OVERLY_PERMISSIVE_CHECK"] = "IOT_ROLE_ALIAS_OVERLY_PERMISSIVE_CHECK";
70
+ /**
71
+ * Checks if AWS IoT logs are disabled.
72
+ */
73
+ AuditCheck["LOGGING_DISABLED_CHECK"] = "LOGGING_DISABLED_CHECK";
74
+ /**
75
+ * Checks if a revoked CA certificate is still active.
76
+ */
77
+ AuditCheck["REVOKED_CA_CERTIFICATE_STILL_ACTIVE_CHECK"] = "REVOKED_CA_CERTIFICATE_STILL_ACTIVE_CHECK";
78
+ /**
79
+ * Checks if a revoked device certificate is still active.
80
+ */
81
+ AuditCheck["REVOKED_DEVICE_CERTIFICATE_STILL_ACTIVE_CHECK"] = "REVOKED_DEVICE_CERTIFICATE_STILL_ACTIVE_CHECK";
82
+ /**
83
+ * Checks if policy attached to an unauthenticated Amazon Cognito identity pool role is too permissive.
84
+ */
85
+ AuditCheck["UNAUTHENTICATED_COGNITO_ROLE_OVERLY_PERMISSIVE_CHECK"] = "UNAUTHENTICATED_COGNITO_ROLE_OVERLY_PERMISSIVE_CHECK";
86
+ })(AuditCheck || (exports.AuditCheck = AuditCheck = {}));
87
+ /**
88
+ * The day of the week on which the scheduled audit takes place.
89
+ */
90
+ var DayOfWeek;
91
+ (function (DayOfWeek) {
92
+ /**
93
+ * Sunday
94
+ */
95
+ DayOfWeek["SUNDAY"] = "SUN";
96
+ /**
97
+ * Monday
98
+ */
99
+ DayOfWeek["MONDAY"] = "MON";
100
+ /**
101
+ * Tuesday
102
+ */
103
+ DayOfWeek["TUESDAY"] = "TUE";
104
+ /**
105
+ * Wednesday
106
+ */
107
+ DayOfWeek["WEDNESDAY"] = "WED";
108
+ /**
109
+ * Thursday
110
+ */
111
+ DayOfWeek["THURSDAY"] = "THU";
112
+ /**
113
+ * Friday
114
+ */
115
+ DayOfWeek["FRIDAY"] = "FRI";
116
+ /**
117
+ * Saturday
118
+ */
119
+ DayOfWeek["SATURDAY"] = "SAT";
120
+ })(DayOfWeek || (exports.DayOfWeek = DayOfWeek = {}));
121
+ /**
122
+ * The day of the month on which the scheduled audit takes place.
123
+ */
124
+ class DayOfMonth {
125
+ /**
126
+ * Custom day of the month
127
+ * @param day the day of the month
128
+ */
129
+ static of(day) {
130
+ if (day < 1 || day > 31) {
131
+ throw new Error(`Day of month must be between 1 and 31, got: ${day}`);
132
+ }
133
+ if (!Number.isInteger(day)) {
134
+ throw new Error(`Day of month must be an integer, got: ${day}`);
135
+ }
136
+ return new DayOfMonth(String(day));
137
+ }
138
+ /**
139
+ *
140
+ * @param day The day of the month
141
+ */
142
+ constructor(day) {
143
+ this.day = day;
144
+ }
145
+ }
146
+ exports.DayOfMonth = DayOfMonth;
147
+ _a = JSII_RTTI_SYMBOL_1;
148
+ DayOfMonth[_a] = { fqn: "@aws-cdk/aws-iot-alpha.DayOfMonth", version: "2.164.0-alpha.0" };
149
+ /**
150
+ * The last day of the month
151
+ */
152
+ DayOfMonth.LAST_DAY = new DayOfMonth('LAST');
153
+ /**
154
+ * The frequency at which the scheduled audit takes place.
155
+ */
156
+ var Frequency;
157
+ (function (Frequency) {
158
+ /**
159
+ * Daily
160
+ */
161
+ Frequency["DAILY"] = "DAILY";
162
+ /**
163
+ * Weekly
164
+ */
165
+ Frequency["WEEKLY"] = "WEEKLY";
166
+ /**
167
+ * Bi-weekly
168
+ */
169
+ Frequency["BI_WEEKLY"] = "BIWEEKLY";
170
+ /**
171
+ * Monthly
172
+ */
173
+ Frequency["MONTHLY"] = "MONTHLY";
174
+ })(Frequency || (exports.Frequency = Frequency = {}));
175
+ /**
176
+ * Defines AWS IoT Scheduled Audit
177
+ */
178
+ class ScheduledAudit extends core_1.Resource {
179
+ /**
180
+ * Import an existing AWS IoT Scheduled Audit from its ARN.
181
+ *
182
+ * @param scope The parent creating construct (usually `this`)
183
+ * @param id The construct's name
184
+ * @param scheduledAuditArn The ARN of the scheduled audit
185
+ */
186
+ static fromScheduledAuditArn(scope, id, scheduledAuditArn) {
187
+ const name = core_1.Stack.of(scope).splitArn(scheduledAuditArn, core_1.ArnFormat.SLASH_RESOURCE_NAME).resourceName;
188
+ if (!name) {
189
+ throw new Error(`No scheduled audit name found in ARN: '${scheduledAuditArn}'`);
190
+ }
191
+ return this.fromScheduledAuditAttributes(scope, id, { scheduledAuditArn: scheduledAuditArn, scheduledAuditName: name });
192
+ }
193
+ /**
194
+ * Import an existing AWS IoT Scheduled Audit from its attributes.
195
+ *
196
+ * @param scope The parent creating construct (usually `this`)
197
+ * @param id The construct's name
198
+ * @param attrs The scheduled audit attributes
199
+ */
200
+ static fromScheduledAuditAttributes(scope, id, attrs) {
201
+ try {
202
+ jsiiDeprecationWarnings._aws_cdk_aws_iot_alpha_ScheduledAuditAttributes(attrs);
203
+ }
204
+ catch (error) {
205
+ if (process.env.JSII_DEBUG !== "1" && error.name === "DeprecationError") {
206
+ Error.captureStackTrace(error, this.fromScheduledAuditAttributes);
207
+ }
208
+ throw error;
209
+ }
210
+ class Import extends core_1.Resource {
211
+ constructor() {
212
+ super(...arguments);
213
+ this.scheduledAuditArn = attrs.scheduledAuditArn;
214
+ this.scheduledAuditName = attrs.scheduledAuditName;
215
+ }
216
+ }
217
+ return new Import(scope, id);
218
+ }
219
+ constructor(scope, id, props) {
220
+ super(scope, id);
221
+ try {
222
+ jsiiDeprecationWarnings._aws_cdk_aws_iot_alpha_ScheduledAuditProps(props);
223
+ }
224
+ catch (error) {
225
+ if (process.env.JSII_DEBUG !== "1" && error.name === "DeprecationError") {
226
+ Error.captureStackTrace(error, ScheduledAudit);
227
+ }
228
+ throw error;
229
+ }
230
+ if (props.auditChecks.length === 0) {
231
+ throw new Error('At least one \'auditChecks\' must be specified.');
232
+ }
233
+ switch (props.frequency) {
234
+ case Frequency.DAILY:
235
+ if (props.dayOfWeek) {
236
+ throw new Error('Day of the week must not be specified for daily audits.');
237
+ }
238
+ if (props.dayOfMonth) {
239
+ throw new Error('Day of the month must not be specified for daily audits.');
240
+ }
241
+ break;
242
+ case Frequency.WEEKLY:
243
+ case Frequency.BI_WEEKLY:
244
+ if (!props.dayOfWeek) {
245
+ throw new Error('Day of the week must be specified for weekly or bi-weekly audits.');
246
+ }
247
+ if (props.dayOfMonth) {
248
+ throw new Error('Day of the month must not be specified for weekly or bi-weekly audits.');
249
+ }
250
+ break;
251
+ case Frequency.MONTHLY:
252
+ if (!props.dayOfMonth) {
253
+ throw new Error('Day of the month must be specified for monthly audits.');
254
+ }
255
+ if (props.dayOfWeek) {
256
+ throw new Error('Day of the week must not be specified for monthly audits.');
257
+ }
258
+ break;
259
+ default:
260
+ throw new Error('Invalid frequency specified.');
261
+ }
262
+ if (props.scheduledAuditName !== undefined && !core_1.Token.isUnresolved(props.scheduledAuditName)) {
263
+ if (props.scheduledAuditName.length < 1 || props.scheduledAuditName.length > 128) {
264
+ throw new Error(`Scheduled audit name must be between 1 and 128 characters, got: ${props.scheduledAuditName.length}`);
265
+ }
266
+ if (!/^[a-zA-Z0-9:_-]+$/.test(props.scheduledAuditName)) {
267
+ throw new Error(`Scheduled audit name must be alphanumeric and may include colons, underscores, and hyphens, got: ${props.scheduledAuditName}`);
268
+ }
269
+ }
270
+ const resource = new iot.CfnScheduledAudit(this, 'Resource', {
271
+ scheduledAuditName: props.scheduledAuditName,
272
+ targetCheckNames: props.auditChecks,
273
+ dayOfWeek: props.dayOfWeek,
274
+ dayOfMonth: props.dayOfMonth?.day,
275
+ frequency: props.frequency,
276
+ });
277
+ this.scheduledAuditName = resource.ref;
278
+ this.scheduledAuditArn = resource.attrScheduledAuditArn;
279
+ resource.node.addDependency(props.accountAuditConfiguration);
280
+ }
281
+ }
282
+ exports.ScheduledAudit = ScheduledAudit;
283
+ _b = JSII_RTTI_SYMBOL_1;
284
+ ScheduledAudit[_b] = { fqn: "@aws-cdk/aws-iot-alpha.ScheduledAudit", version: "2.164.0-alpha.0" };
285
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZWR1bGVkLWF1ZGl0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsic2NoZWR1bGVkLWF1ZGl0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLDJDQUFnRjtBQUVoRiwyQ0FBMkM7QUFtQzNDOzs7O0dBSUc7QUFDSCxJQUFZLFVBb0ZYO0FBcEZELFdBQVksVUFBVTtJQUNwQjs7Ozs7T0FLRztJQUNILHVIQUF5RyxDQUFBO0lBRXpHOzs7O09BSUc7SUFDSCw2RUFBK0QsQ0FBQTtJQUUvRDs7Ozs7O09BTUc7SUFDSCxtRkFBcUUsQ0FBQTtJQUVyRTs7T0FFRztJQUNILDJFQUE2RCxDQUFBO0lBRTdEOzs7O09BSUc7SUFDSCxxRkFBdUUsQ0FBQTtJQUV2RTs7Ozs7T0FLRztJQUNILDJGQUE2RSxDQUFBO0lBRTdFOztPQUVHO0lBQ0gsaUZBQW1FLENBQUE7SUFFbkU7O09BRUc7SUFDSCx1RkFBeUUsQ0FBQTtJQUV6RTs7T0FFRztJQUNILDZIQUErRyxDQUFBO0lBRS9HOztPQUVHO0lBQ0gsK0ZBQWlGLENBQUE7SUFFakY7O09BRUc7SUFDSCwrREFBaUQsQ0FBQTtJQUVqRDs7T0FFRztJQUNILHFHQUF1RixDQUFBO0lBRXZGOztPQUVHO0lBQ0gsNkdBQStGLENBQUE7SUFFL0Y7O09BRUc7SUFDSCwySEFBNkcsQ0FBQTtBQUMvRyxDQUFDLEVBcEZXLFVBQVUsMEJBQVYsVUFBVSxRQW9GckI7QUFFRDs7R0FFRztBQUNILElBQVksU0FtQ1g7QUFuQ0QsV0FBWSxTQUFTO0lBQ25COztPQUVHO0lBQ0gsMkJBQWMsQ0FBQTtJQUVkOztPQUVHO0lBQ0gsMkJBQWMsQ0FBQTtJQUVkOztPQUVHO0lBQ0gsNEJBQWUsQ0FBQTtJQUVmOztPQUVHO0lBQ0gsOEJBQWlCLENBQUE7SUFFakI7O09BRUc7SUFDSCw2QkFBZ0IsQ0FBQTtJQUVoQjs7T0FFRztJQUNILDJCQUFjLENBQUE7SUFFZDs7T0FFRztJQUNILDZCQUFnQixDQUFBO0FBQ2xCLENBQUMs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QU0sRUFBRSxDQUFDLENBQUM7WUFDeEgsQ0FBQztZQUNELElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQztnQkFDeEQsTUFBTSxJQUFJLEtBQUssQ0FBQyxvR0FBb0csS0FBSyxDQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBQztZQUNsSixDQUFDO1FBQ0gsQ0FBQztRQUVELE1BQU0sUUFBUSxHQUFHLElBQUksR0FBRyxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxVQUFVLEVBQUU7WUFDM0Qsa0JBQWtCLEVBQUUsS0FBSyxDQUFDLGtCQUFrQjtZQUM1QyxnQkFBZ0IsRUFBRSxLQUFLLENBQUMsV0FBVztZQUNuQyxTQUFTLEVBQUUsS0FBSyxDQUFDLFNBQVM7WUFDMUIsVUFBVSxFQUFFLEtBQUssQ0FBQyxVQUFVLEVBQUUsR0FBRztZQUNqQyxTQUFTLEVBQUUsS0FBSyxDQUFDLFNBQVM7U0FDM0IsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLGtCQUFrQixHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUM7UUFDdkMsSUFBSSxDQUFDLGlCQUFpQixHQUFHLFFBQVEsQ0FBQyxxQkFBcUIsQ0FBQztRQUV4RCxRQUFRLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQztLQUM5RDs7QUF0R0gsd0NBdUdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVzb3VyY2UsIFN0YWNrLCBJUmVzb3VyY2UsIFRva2VuLCBBcm5Gb3JtYXQgfSBmcm9tICdhd3MtY2RrLWxpYi9jb3JlJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0ICogYXMgaW90IGZyb20gJ2F3cy1jZGstbGliL2F3cy1pb3QnO1xuaW1wb3J0IHsgSUFjY291bnRBdWRpdENvbmZpZ3VyYXRpb24gfSBmcm9tICcuL2F1ZGl0LWNvbmZpZ3VyYXRpb24nO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgQVdTIElvVCBTY2hlZHVsZWQgQXVkaXRcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJU2NoZWR1bGVkQXVkaXQgZXh0ZW5kcyBJUmVzb3VyY2Uge1xuICAvKipcbiAgICogVGhlIHNjaGVkdWxlZCBhdWRpdCBuYW1lXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IHNjaGVkdWxlZEF1ZGl0TmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBzY2hlZHVsZWQgYXVkaXRcbiAgICogQGF0dHJpYnV0ZVxuICAgKi9cbiAgcmVhZG9ubHkgc2NoZWR1bGVkQXVkaXRBcm46IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb25zdHJ1Y3Rpb24gcHJvcGVydGllcyBmb3IgYSBTY2hlZHVsZWQgQXVkaXRcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTY2hlZHVsZWRBdWRpdEF0dHJpYnV0ZXMge1xuICAvKipcbiAgICogVGhlIHNjaGVkdWxlZCBhdWRpdCBuYW1lXG4gICAqL1xuICByZWFkb25seSBzY2hlZHVsZWRBdWRpdE5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgc2NoZWR1bGVkIGF1ZGl0XG4gICAqL1xuICByZWFkb25seSBzY2hlZHVsZWRBdWRpdEFybjogc3RyaW5nO1xufVxuXG4vKipcbiAqIFRoZSBBV1MgSW9UIERldmljZSBEZWZlbmRlciBhdWRpdCBjaGVja3NcbiAqXG4gKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9pb3QtZGV2aWNlLWRlZmVuZGVyL2xhdGVzdC9kZXZndWlkZS9kZXZpY2UtZGVmZW5kZXItYXVkaXQtY2hlY2tzLmh0bWxcbiAqL1xuZXhwb3J0IGVudW0gQXVkaXRDaGVjayB7XG4gIC8qKlxuICAgKiBDaGVja3MgdGhlIHBlcm1pc3NpdmVuZXNzIG9mIGFuIGF1dGhlbnRpY2F0ZWQgQW1hem9uIENvZ25pdG8gaWRlbnRpdHkgcG9vbCByb2xlLlxuICAgKlxuICAgKiBGb3IgdGhpcyBjaGVjaywgQVdTIElvVCBEZXZpY2UgRGVmZW5kZXIgYXVkaXRzIGFsbCBBbWF6b24gQ29nbml0byBpZGVudGl0eSBwb29scyB0aGF0IGhhdmUgYmVlbiB1c2VkIHRvIGNvbm5lY3QgdG8gdGhlIEFXUyBJb1QgbWVzc2FnZSBicm9rZXJcbiAgICogZHVyaW5nIHRoZSAzMSBkYXlzIGJlZm9yZSB0aGUgYXVkaXQgaXMgcGVyZm9ybWVkLlxuICAgKi9cbiAgQVVUSEVOVElDQVRFRF9DT0dOSVRPX1JPTEVfT1ZFUkxZX1BFUk1JU1NJVkVfQ0hFQ0sgPSAnQVVUSEVOVElDQVRFRF9DT0dOSVRPX1JPTEVfT1ZFUkxZX1BFUk1JU1NJVkVfQ0hFQ0snLFxuXG4gIC8qKlxuICAgKiBDaGVja3MgaWYgYSBDQSBjZXJ0aWZpY2F0ZSBpcyBleHBpcmluZy5cbiAgICpcbiAgICogVGhpcyBjaGVjayBhcHBsaWVzIHRvIENBIGNlcnRpZmljYXRlcyBleHBpcmluZyB3aXRoaW4gMzAgZGF5cyBvciB0aGF0IGhhdmUgZXhwaXJlZC5cbiAgICovXG4gIENBX0NFUlRJRklDQVRFX0VYUElSSU5HX0NIRUNLID0gJ0NBX0NFUlRJRklDQVRFX0VYUElSSU5HX0NIRUNLJyxcblxuICAvKipcbiAgICogQ2hlY2tzIHRoZSBxdWFsaXR5IG9mIHRoZSBDQSBjZXJ0aWZpY2F0ZSBrZXkuXG4gICAqXG4gICAqIFRoZSBxdWFsaXR5IGNoZWNrcyBpZiB0aGUga2V5IGlzIGluIGEgdmFsaWQgZm9ybWF0LCBub3QgZXhwaXJlZCwgYW5kIGlmIHRoZSBrZXkgbWVldHMgYSBtaW5pbXVtIHJlcXVpcmVkIHNpemUuXG4gICAqXG4gICAqIFRoaXMgY2hlY2sgYXBwbGllcyB0byBDQSBjZXJ0aWZpY2F0ZXMgdGhhdCBhcmUgQUNUSVZFIG9yIFBFTkRJTkdfVFJBTlNGRVIuXG4gICAqL1xuICBDQV9DRVJUSUZJQ0FURV9LRVlfUVVBTElUWV9DSEVDSyA9ICdDQV9DRVJUSUZJQ0FURV9LRVlfUVVBTElUWV9DSEVDSycsXG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiBtdWx0aXBsZSBkZXZpY2VzIGNvbm5lY3QgdXNpbmcgdGhlIHNhbWUgY2xpZW50IElELlxuICAgKi9cbiAgQ09ORkxJQ1RJTkdfQ0xJRU5UX0lEU19DSEVDSyA9ICdDT05GTElDVElOR19DTElFTlRfSURTX0NIRUNLJyxcblxuICAvKipcbiAgICogQ2hlY2tzIGlmIGEgZGV2aWNlIGNlcnRpZmljYXRlIGlzIGV4cGlyaW5nLlxuICAgKlxuICAgKiBUaGlzIGNoZWNrIGFwcGxpZXMgdG8gZGV2aWNlIGNlcnRpZmljYXRlcyBleHBpcmluZyB3aXRoaW4gMzAgZGF5cyBvciB0aGF0IGhhdmUgZXhwaXJlZC5cbiAgICovXG4gIERFVklDRV9DRVJUSUZJQ0FURV9FWFBJUklOR19DSEVDSyA9ICdERVZJQ0VfQ0VSVElGSUNBVEVfRVhQSVJJTkdfQ0hFQ0snLFxuXG4gIC8qKlxuICAgKiBDaGVja3MgdGhlIHF1YWxpdHkgb2YgdGhlIGRldmljZSBjZXJ0aWZpY2F0ZSBrZXkuXG4gICAqXG4gICAqIFRoZSBxdWFsaXR5IGNoZWNrcyBpZiB0aGUga2V5IGlzIGluIGEgdmFsaWQgZm9ybWF0LCBub3QgZXhwaXJlZCwgc2lnbmVkIGJ5IGEgcmVnaXN0ZXJlZCBjZXJ0aWZpY2F0ZSBhdXRob3JpdHksXG4gICAqIGFuZCBpZiB0aGUga2V5IG1lZXRzIGEgbWluaW11bSByZXF1aXJlZCBzaXplLlxuICAgKi9cbiAgREVWSUNFX0NFUlRJRklDQVRFX0tFWV9RVUFMSVRZX0NIRUNLID0gJ0RFVklDRV9DRVJUSUZJQ0FURV9LRVlfUVVBTElUWV9DSEVDSycsXG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiBtdWx0aXBsZSBjb25jdXJyZW50IGNvbm5lY3Rpb25zIHVzZSB0aGUgc2FtZSBYLjUwOSBjZXJ0aWZpY2F0ZSB0byBhdXRoZW50aWNhdGUgd2l0aCBBV1MgSW9ULlxuICAgKi9cbiAgREVWSUNFX0NFUlRJRklDQVRFX1NIQVJFRF9DSEVDSyA9ICdERVZJQ0VfQ0VSVElGSUNBVEVfU0hBUkVEX0NIRUNLJyxcblxuICAvKipcbiAgICogQ2hlY2tzIHRoZSBwZXJtaXNzaXZlbmVzcyBvZiBhIHBvbGljeSBhdHRhY2hlZCB0byBhbiBhdXRoZW50aWNhdGVkIEFtYXpvbiBDb2duaXRvIGlkZW50aXR5IHBvb2wgcm9sZS5cbiAgICovXG4gIElPVF9QT0xJQ1lfT1ZFUkxZX1BFUk1JU1NJVkVfQ0hFQ0sgPSAnSU9UX1BPTElDWV9PVkVSTFlfUEVSTUlTU0lWRV9DSEVDSycsXG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiBhIHJvbGUgYWxpYXMgaGFzIGFjY2VzcyB0byBzZXJ2aWNlcyB0aGF0IGhhdmVuJ3QgYmVlbiB1c2VkIGZvciB0aGUgQVdTIElvVCBkZXZpY2UgaW4gdGhlIGxhc3QgeWVhci5cbiAgICovXG4gIElPVF9ST0xFX0FMSUFTX0FMTE9XU19BQ0NFU1NfVE9fVU5VU0VEX1NFUlZJQ0VTX0NIRUNLID0gJ0lPVF9ST0xFX0FMSUFTX0FMTE9XU19BQ0NFU1NfVE9fVU5VU0VEX1NFUlZJQ0VTX0NIRUNLJyxcblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHRoZSB0ZW1wb3JhcnkgY3JlZGVudGlhbHMgcHJvdmlkZWQgYnkgQVdTIElvVCByb2xlIGFsaWFzZXMgYXJlIG92ZXJseSBwZXJtaXNzaXZlLlxuICAgKi9cbiAgSU9UX1JPTEVfQUxJQVNfT1ZFUkxZX1BFUk1JU1NJVkVfQ0hFQ0sgPSAnSU9UX1JPTEVfQUxJQVNfT1ZFUkxZX1BFUk1JU1NJVkVfQ0hFQ0snLFxuXG4gIC8qKlxuICAgKiBDaGVja3MgaWYgQVdTIElvVCBsb2dzIGFyZSBkaXNhYmxlZC5cbiAgICovXG4gIExPR0dJTkdfRElTQUJMRURfQ0hFQ0sgPSAnTE9HR0lOR19ESVNBQkxFRF9DSEVDSycsXG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiBhIHJldm9rZWQgQ0EgY2VydGlmaWNhdGUgaXMgc3RpbGwgYWN0aXZlLlxuICAgKi9cbiAgUkVWT0tFRF9DQV9DRVJUSUZJQ0FURV9TVElMTF9BQ1RJVkVfQ0hFQ0sgPSAnUkVWT0tFRF9DQV9DRVJUSUZJQ0FURV9TVElMTF9BQ1RJVkVfQ0hFQ0snLFxuXG4gIC8qKlxuICAgKiBDaGVja3MgaWYgYSByZXZva2VkIGRldmljZSBjZXJ0aWZpY2F0ZSBpcyBzdGlsbCBhY3RpdmUuXG4gICAqL1xuICBSRVZPS0VEX0RFVklDRV9DRVJUSUZJQ0FURV9TVElMTF9BQ1RJVkVfQ0hFQ0sgPSAnUkVWT0tFRF9ERVZJQ0VfQ0VSVElGSUNBVEVfU1RJTExfQUNUSVZFX0NIRUNLJyxcblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHBvbGljeSBhdHRhY2hlZCB0byBhbiB1bmF1dGhlbnRpY2F0ZWQgQW1hem9uIENvZ25pdG8gaWRlbnRpdHkgcG9vbCByb2xlIGlzIHRvbyBwZXJtaXNzaXZlLlxuICAgKi9cbiAgVU5BVVRIRU5USUNBVEVEX0NPR05JVE9fUk9MRV9PVkVSTFlfUEVSTUlTU0lWRV9DSEVDSyA9ICdVTkFVVEhFTlRJQ0FURURfQ09HTklUT19ST0xFX09WRVJMWV9QRVJNSVNTSVZFX0NIRUNLJyxcbn1cblxuLyoqXG4gKiBUaGUgZGF5IG9mIHRoZSB3ZWVrIG9uIHdoaWNoIHRoZSBzY2hlZHVsZWQgYXVkaXQgdGFrZXMgcGxhY2UuXG4gKi9cbmV4cG9ydCBlbnVtIERheU9mV2VlayB7XG4gIC8qKlxuICAgKiBTdW5kYXlcbiAgICovXG4gIFNVTkRBWSA9ICdTVU4nLFxuXG4gIC8qKlxuICAgKiBNb25kYXlcbiAgICovXG4gIE1PTkRBWSA9ICdNT04nLFxuXG4gIC8qKlxuICAgKiBUdWVzZGF5XG4gICAqL1xuICBUVUVTREFZID0gJ1RVRScsXG5cbiAgLyoqXG4gICAqIFdlZG5lc2RheVxuICAgKi9cbiAgV0VETkVTREFZID0gJ1dFRCcsXG5cbiAgLyoqXG4gICAqIFRodXJzZGF5XG4gICAqL1xuICBUSFVSU0RBWSA9ICdUSFUnLFxuXG4gIC8qKlxuICAgKiBGcmlkYXlcbiAgICovXG4gIEZSSURBWSA9ICdGUkknLFxuXG4gIC8qKlxuICAgKiBTYXR1cmRheVxuICAgKi9cbiAgU0FUVVJEQVkgPSAnU0FUJyxcbn1cblxuLyoqXG4gKiBUaGUgZGF5IG9mIHRoZSBtb250aCBvbiB3aGljaCB0aGUgc2NoZWR1bGVkIGF1ZGl0IHRha2VzIHBsYWNlLlxuICovXG5leHBvcnQgY2xhc3MgRGF5T2ZNb250aCB7XG4gIC8qKlxuICAgKiBUaGUgbGFzdCBkYXkgb2YgdGhlIG1vbnRoXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IExBU1RfREFZID0gbmV3IERheU9mTW9udGgoJ0xBU1QnKTtcblxuICAvKipcbiAgICogQ3VzdG9tIGRheSBvZiB0aGUgbW9udGhcbiAgICogQHBhcmFtIGRheSB0aGUgZGF5IG9mIHRoZSBtb250aFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBvZihkYXk6IG51bWJlcik6IERheU9mTW9udGgge1xuICAgIGlmIChkYXkgPCAxIHx8IGRheSA+IDMxKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYERheSBvZiBtb250aCBtdXN0IGJlIGJldHdlZW4gMSBhbmQgMzEsIGdvdDogJHtkYXl9YCk7XG4gICAgfVxuICAgIGlmICghTnVtYmVyLmlzSW50ZWdlcihkYXkpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYERheSBvZiBtb250aCBtdXN0IGJlIGFuIGludGVnZXIsIGdvdDogJHtkYXl9YCk7XG4gICAgfVxuICAgIHJldHVybiBuZXcgRGF5T2ZNb250aChTdHJpbmcoZGF5KSk7XG4gIH1cblxuICAvKipcbiAgICpcbiAgICogQHBhcmFtIGRheSBUaGUgZGF5IG9mIHRoZSBtb250aFxuICAgKi9cbiAgcHJpdmF0ZSBjb25zdHJ1Y3RvcihwdWJsaWMgcmVhZG9ubHkgZGF5OiBzdHJpbmcpIHt9XG59XG5cbi8qKlxuICogVGhlIGZyZXF1ZW5jeSBhdCB3aGljaCB0aGUgc2NoZWR1bGVkIGF1ZGl0IHRha2VzIHBsYWNlLlxuICovXG5leHBvcnQgZW51bSBGcmVxdWVuY3kge1xuICAvKipcbiAgICogRGFpbHlcbiAgICovXG4gIERBSUxZID0gJ0RBSUxZJyxcblxuICAvKipcbiAgICogV2Vla2x5XG4gICAqL1xuICBXRUVLTFkgPSAnV0VFS0xZJyxcblxuICAvKipcbiAgICogQmktd2Vla2x5XG4gICAqL1xuICBCSV9XRUVLTFkgPSAnQklXRUVLTFknLFxuXG4gIC8qKlxuICAgKiBNb250aGx5XG4gICAqL1xuICBNT05USExZID0gJ01PTlRITFknLFxufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGRlZmluaW5nIEFXUyBJb1QgU2NoZWR1bGVkIEF1ZGl0XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2NoZWR1bGVkQXVkaXRQcm9wcyB7XG4gIC8qKlxuICAgKiBXaGljaCBjaGVja3MgYXJlIHBlcmZvcm1lZCBkdXJpbmcgdGhlIHNjaGVkdWxlZCBhdWRpdC5cbiAgICpcbiAgICogQ2hlY2tzIG11c3QgYmUgZW5hYmxlZCBmb3IgeW91ciBhY2NvdW50LlxuICAgKi9cbiAgcmVhZG9ubHkgYXVkaXRDaGVja3M6IEF1ZGl0Q2hlY2tbXTtcblxuICAvKipcbiAgICogQWNjb3VudCBhdWRpdCBjb25maWd1cmF0aW9uLlxuICAgKlxuICAgKiBUaGUgYXVkaXQgY2hlY2tzIHNwZWNpZmllZCBpbiBgYXVkaXRDaGVja3NgIG11c3QgYmUgZW5hYmxlZCBpbiB0aGlzIGNvbmZpZ3VyYXRpb24uXG4gICAqL1xuICByZWFkb25seSBhY2NvdW50QXVkaXRDb25maWd1cmF0aW9uOiBJQWNjb3VudEF1ZGl0Q29uZmlndXJhdGlvbjtcblxuICAvKipcbiAgICogVGhlIGRheSBvZiB0aGUgd2VlayBvbiB3aGljaCB0aGUgc2NoZWR1bGVkIGF1ZGl0IGlzIHJ1biAoaWYgdGhlIGZyZXF1ZW5jeSBpcyBcIldFRUtMWVwiIG9yIFwiQklXRUVLTFlcIikuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gcmVxdWlyZWQgaWYgZnJlcXVlbmN5IGlzIFwiV0VFS0xZXCIgb3IgXCJCSVdFRUtMWVwiLCBub3QgYWxsb3dlZCBvdGhlcndpc2VcbiAgICovXG4gIHJlYWRvbmx5IGRheU9mV2Vlaz86IERheU9mV2VlaztcblxuICAvKipcbiAgICogVGhlIGRheSBvZiB0aGUgbW9udGggb24gd2hpY2ggdGhlIHNjaGVkdWxlZCBhdWRpdCBpcyBydW4gKGlmIHRoZSBmcmVxdWVuY3kgaXMgXCJNT05USExZXCIpLlxuICAgKlxuICAgKiBJZiBkYXlzIDI5LTMxIGFyZSBzcGVjaWZpZWQsIGFuZCB0aGUgbW9udGggZG9lcyBub3QgaGF2ZSB0aGF0IG1hbnkgZGF5cywgdGhlIGF1ZGl0IHRha2VzIHBsYWNlIG9uIHRoZSBcIkxBU1RcIiBkYXkgb2YgdGhlIG1vbnRoLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIHJlcXVpcmVkIGlmIGZyZXF1ZW5jeSBpcyBcIk1PTlRITFlcIiwgbm90IGFsbG93ZWQgb3RoZXJ3aXNlXG4gICAqL1xuICByZWFkb25seSBkYXlPZk1vbnRoPzogRGF5T2ZNb250aDtcblxuICAvKipcbiAgICogSG93IG9mdGVuIHRoZSBzY2hlZHVsZWQgYXVkaXQgb2NjdXJzLlxuICAgKi9cbiAgcmVhZG9ubHkgZnJlcXVlbmN5OiBGcmVxdWVuY3k7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBzY2hlZHVsZWQgYXVkaXQuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gYXV0byBnZW5lcmF0ZWQgbmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgc2NoZWR1bGVkQXVkaXROYW1lPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIERlZmluZXMgQVdTIElvVCBTY2hlZHVsZWQgQXVkaXRcbiAqL1xuZXhwb3J0IGNsYXNzIFNjaGVkdWxlZEF1ZGl0IGV4dGVuZHMgUmVzb3VyY2UgaW1wbGVtZW50cyBJU2NoZWR1bGVkQXVkaXQge1xuICAvKipcbiAgICogSW1wb3J0IGFuIGV4aXN0aW5nIEFXUyBJb1QgU2NoZWR1bGVkIEF1ZGl0IGZyb20gaXRzIEFSTi5cbiAgICpcbiAgICogQHBhcmFtIHNjb3BlIFRoZSBwYXJlbnQgY3JlYXRpbmcgY29uc3RydWN0ICh1c3VhbGx5IGB0aGlzYClcbiAgICogQHBhcmFtIGlkIFRoZSBjb25zdHJ1Y3QncyBuYW1lXG4gICAqIEBwYXJhbSBzY2hlZHVsZWRBdWRpdEFybiBUaGUgQVJOIG9mIHRoZSBzY2hlZHVsZWQgYXVkaXRcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZnJvbVNjaGVkdWxlZEF1ZGl0QXJuKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHNjaGVkdWxlZEF1ZGl0QXJuOiBzdHJpbmcpOiBJU2NoZWR1bGVkQXVkaXQge1xuICAgIGNvbnN0IG5hbWUgPSBTdGFjay5vZihzY29wZSkuc3BsaXRBcm4oc2NoZWR1bGVkQXVkaXRBcm4sIEFybkZvcm1hdC5TTEFTSF9SRVNPVVJDRV9OQU1FKS5yZXNvdXJjZU5hbWU7XG4gICAgaWYgKCFuYW1lKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIHNjaGVkdWxlZCBhdWRpdCBuYW1lIGZvdW5kIGluIEFSTjogJyR7c2NoZWR1bGVkQXVkaXRBcm59J2ApO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmZyb21TY2hlZHVsZWRBdWRpdEF0dHJpYnV0ZXMoc2NvcGUsIGlkLCB7IHNjaGVkdWxlZEF1ZGl0QXJuOiBzY2hlZHVsZWRBdWRpdEFybiwgc2NoZWR1bGVkQXVkaXROYW1lOiBuYW1lIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEltcG9ydCBhbiBleGlzdGluZyBBV1MgSW9UIFNjaGVkdWxlZCBBdWRpdCBmcm9tIGl0cyBhdHRyaWJ1dGVzLlxuICAgKlxuICAgKiBAcGFyYW0gc2NvcGUgVGhlIHBhcmVudCBjcmVhdGluZyBjb25zdHJ1Y3QgKHVzdWFsbHkgYHRoaXNgKVxuICAgKiBAcGFyYW0gaWQgVGhlIGNvbnN0cnVjdCdzIG5hbWVcbiAgICogQHBhcmFtIGF0dHJzIFRoZSBzY2hlZHVsZWQgYXVkaXQgYXR0cmlidXRlc1xuICAgKi9cbiAgcHVibGljIHN0YXRpYyBmcm9tU2NoZWR1bGVkQXVkaXRBdHRyaWJ1dGVzKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIGF0dHJzOiBTY2hlZHVsZWRBdWRpdEF0dHJpYnV0ZXMpOiBJU2NoZWR1bGVkQXVkaXQge1xuICAgIGNsYXNzIEltcG9ydCBleHRlbmRzIFJlc291cmNlIGltcGxlbWVudHMgSVNjaGVkdWxlZEF1ZGl0IHtcbiAgICAgIHB1YmxpYyByZWFkb25seSBzY2hlZHVsZWRBdWRpdEFybiA9IGF0dHJzLnNjaGVkdWxlZEF1ZGl0QXJuO1xuICAgICAgcHVibGljIHJlYWRvbmx5IHNjaGVkdWxlZEF1ZGl0TmFtZSA9IGF0dHJzLnNjaGVkdWxlZEF1ZGl0TmFtZTtcbiAgICB9XG4gICAgcmV0dXJuIG5ldyBJbXBvcnQoc2NvcGUsIGlkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgc2NoZWR1bGVkIGF1ZGl0IG5hbWVcbiAgICogQGF0dHJpYnV0ZVxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHNjaGVkdWxlZEF1ZGl0TmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBzY2hlZHVsZWQgYXVkaXRcbiAgICogQGF0dHJpYnV0ZVxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHNjaGVkdWxlZEF1ZGl0QXJuOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IFNjaGVkdWxlZEF1ZGl0UHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgaWYgKHByb3BzLmF1ZGl0Q2hlY2tzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdBdCBsZWFzdCBvbmUgXFwnYXVkaXRDaGVja3NcXCcgbXVzdCBiZSBzcGVjaWZpZWQuJyk7XG4gICAgfVxuXG4gICAgc3dpdGNoIChwcm9wcy5mcmVxdWVuY3kpIHtcbiAgICAgIGNhc2UgRnJlcXVlbmN5LkRBSUxZOlxuICAgICAgICBpZiAocHJvcHMuZGF5T2ZXZWVrKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdEYXkgb2YgdGhlIHdlZWsgbXVzdCBub3QgYmUgc3BlY2lmaWVkIGZvciBkYWlseSBhdWRpdHMuJyk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHByb3BzLmRheU9mTW9udGgpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0RheSBvZiB0aGUgbW9udGggbXVzdCBub3QgYmUgc3BlY2lmaWVkIGZvciBkYWlseSBhdWRpdHMuJyk7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIEZyZXF1ZW5jeS5XRUVLTFk6XG4gICAgICBjYXNlIEZyZXF1ZW5jeS5CSV9XRUVLTFk6XG4gICAgICAgIGlmICghcHJvcHMuZGF5T2ZXZWVrKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdEYXkgb2YgdGhlIHdlZWsgbXVzdCBiZSBzcGVjaWZpZWQgZm9yIHdlZWtseSBvciBiaS13ZWVrbHkgYXVkaXRzLicpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChwcm9wcy5kYXlPZk1vbnRoKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdEYXkgb2YgdGhlIG1vbnRoIG11c3Qgbm90IGJlIHNwZWNpZmllZCBmb3Igd2Vla2x5IG9yIGJpLXdlZWtseSBhdWRpdHMuJyk7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIEZyZXF1ZW5jeS5NT05USExZOlxuICAgICAgICBpZiAoIXByb3BzLmRheU9mTW9udGgpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0RheSBvZiB0aGUgbW9udGggbXVzdCBiZSBzcGVjaWZpZWQgZm9yIG1vbnRobHkgYXVkaXRzLicpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChwcm9wcy5kYXlPZldlZWspIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0RheSBvZiB0aGUgd2VlayBtdXN0IG5vdCBiZSBzcGVjaWZpZWQgZm9yIG1vbnRobHkgYXVkaXRzLicpO1xuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIGZyZXF1ZW5jeSBzcGVjaWZpZWQuJyk7XG4gICAgfVxuXG4gICAgaWYgKHByb3BzLnNjaGVkdWxlZEF1ZGl0TmFtZSAhPT0gdW5kZWZpbmVkICYmICFUb2tlbi5pc1VucmVzb2x2ZWQocHJvcHMuc2NoZWR1bGVkQXVkaXROYW1lKSkge1xuICAgICAgaWYgKHByb3BzLnNjaGVkdWxlZEF1ZGl0TmFtZS5sZW5ndGggPCAxIHx8IHByb3BzLnNjaGVkdWxlZEF1ZGl0TmFtZS5sZW5ndGggPiAxMjgpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBTY2hlZHVsZWQgYXVkaXQgbmFtZSBtdXN0IGJlIGJldHdlZW4gMSBhbmQgMTI4IGNoYXJhY3RlcnMsIGdvdDogJHtwcm9wcy5zY2hlZHVsZWRBdWRpdE5hbWUubGVuZ3RofWApO1xuICAgICAgfVxuICAgICAgaWYgKCEvXlthLXpBLVowLTk6Xy1dKyQvLnRlc3QocHJvcHMuc2NoZWR1bGVkQXVkaXROYW1lKSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFNjaGVkdWxlZCBhdWRpdCBuYW1lIG11c3QgYmUgYWxwaGFudW1lcmljIGFuZCBtYXkgaW5jbHVkZSBjb2xvbnMsIHVuZGVyc2NvcmVzLCBhbmQgaHlwaGVucywgZ290OiAke3Byb3BzLnNjaGVkdWxlZEF1ZGl0TmFtZX1gKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCByZXNvdXJjZSA9IG5ldyBpb3QuQ2ZuU2NoZWR1bGVkQXVkaXQodGhpcywgJ1Jlc291cmNlJywge1xuICAgICAgc2NoZWR1bGVkQXVkaXROYW1lOiBwcm9wcy5zY2hlZHVsZWRBdWRpdE5hbWUsXG4gICAgICB0YXJnZXRDaGVja05hbWVzOiBwcm9wcy5hdWRpdENoZWNrcyxcbiAgICAgIGRheU9mV2VlazogcHJvcHMuZGF5T2ZXZWVrLFxuICAgICAgZGF5T2ZNb250aDogcHJvcHMuZGF5T2ZNb250aD8uZGF5LFxuICAgICAgZnJlcXVlbmN5OiBwcm9wcy5mcmVxdWVuY3ksXG4gICAgfSk7XG5cbiAgICB0aGlzLnNjaGVkdWxlZEF1ZGl0TmFtZSA9IHJlc291cmNlLnJlZjtcbiAgICB0aGlzLnNjaGVkdWxlZEF1ZGl0QXJuID0gcmVzb3VyY2UuYXR0clNjaGVkdWxlZEF1ZGl0QXJuO1xuXG4gICAgcmVzb3VyY2Uubm9kZS5hZGREZXBlbmRlbmN5KHByb3BzLmFjY291bnRBdWRpdENvbmZpZ3VyYXRpb24pO1xuICB9XG59XG5cbiJdfQ==
package/lib/topic-rule.js CHANGED
@@ -98,5 +98,5 @@ class TopicRule extends core_1.Resource {
98
98
  }
99
99
  exports.TopicRule = TopicRule;
100
100
  _a = JSII_RTTI_SYMBOL_1;
101
- TopicRule[_a] = { fqn: "@aws-cdk/aws-iot-alpha.TopicRule", version: "2.163.0-alpha.0" };
101
+ TopicRule[_a] = { fqn: "@aws-cdk/aws-iot-alpha.TopicRule", version: "2.164.0-alpha.0" };
102
102
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9waWMtcnVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInRvcGljLXJ1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsMkNBQStFO0FBSS9FLGlEQUFtRDtBQW9FbkQ7O0dBRUc7QUFDSCxNQUFhLFNBQVUsU0FBUSxlQUFRO0lBQ3JDOzs7Ozs7T0FNRztJQUNJLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFnQixFQUFFLEVBQVUsRUFBRSxZQUFvQjtRQUMvRSxNQUFNLEtBQUssR0FBRyxZQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLFFBQVEsQ0FBQyxZQUFZLEVBQUUsZ0JBQVMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBQ3BGLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDeEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxvQ0FBb0MsWUFBWSxHQUFHLENBQUMsQ0FBQztRQUN2RSxDQUFDO1FBQ0QsTUFBTSxZQUFZLEdBQUcsS0FBSyxDQUFDLFlBQVksQ0FBQztRQUV4QyxNQUFNLE1BQU8sU0FBUSxlQUFRO1lBQTdCOztnQkFDa0IsaUJBQVksR0FBRyxZQUFZLENBQUM7Z0JBQzVCLGtCQUFhLEdBQUcsWUFBWSxDQUFDO1lBQy9DLENBQUM7U0FBQTtRQUNELE9BQU8sSUFBSSxNQUFNLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUMzQixrQkFBa0IsRUFBRSxZQUFZO1NBQ2pDLENBQUMsQ0FBQztLQUNKO0lBZ0JELFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBcUI7UUFDN0QsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUU7WUFDZixZQUFZLEVBQUUsS0FBSyxDQUFDLGFBQWE7U0FDbEMsQ0FBQyxDQUFDO1FBTFksWUFBTyxHQUFrQyxFQUFFLENBQUM7Ozs7OzsrQ0FwQ2xELFNBQVM7Ozs7UUEyQ2xCLE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXZDLE1BQU0sUUFBUSxHQUFHLElBQUksc0JBQVksQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFO1lBQ2xELFFBQVEsRUFBRSxJQUFJLENBQUMsWUFBWTtZQUMzQixnQkFBZ0IsRUFBRTtnQkFDaEIsT0FBTyxFQUFFLFdBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUNsRCxnQkFBZ0IsRUFBRSxTQUFTLENBQUMsZ0JBQWdCO2dCQUM1QyxXQUFXLEVBQUUsS0FBSyxDQUFDLFdBQVc7Z0JBQzlCLFdBQVcsRUFBRSxLQUFLLENBQUMsV0FBVyxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxhQUFhO2dCQUN6RCxZQUFZLEVBQUUsS0FBSyxDQUFDLE9BQU8sS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTztnQkFDdEUsR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHO2FBQ25CO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsdUJBQXVCLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRTtZQUNqRSxPQUFPLEVBQUUsS0FBSztZQUNkLFFBQVEsRUFBRSxNQUFNO1lBQ2hCLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWTtTQUNoQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFakUsS0FBSyxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDOUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN6QixDQUFDLENBQUMsQ0FBQztLQUNKO0lBRUQ7Ozs7T0FJRztJQUNJLFNBQVMsQ0FBQyxNQUFlOzs7Ozs7Ozs7O1FBQzlCLE1BQU0sRUFBRSxhQUFhLEVBQUUsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRTdDLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDeEMsSUFBSSxJQUFJLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ3RCLE1BQU0sSUFBSSxLQUFLLENBQUMsK0NBQStDLENBQUMsQ0FBQztRQUNuRSxDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ3BCLE1BQU0sSUFBSSxLQUFLLENBQUMsMkRBQTJELElBQUksRUFBRSxDQUFDLENBQUM7UUFDckYsQ0FBQztRQUVELElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0tBQ2xDOztBQXRGSCw4QkF1RkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBcm5Gb3JtYXQsIFJlc291cmNlLCBTdGFjaywgSVJlc291cmNlLCBMYXp5IH0gZnJvbSAnYXdzLWNkay1saWIvY29yZSc7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB7IElBY3Rpb24gfSBmcm9tICcuL2FjdGlvbic7XG5pbXBvcnQgeyBJb3RTcWwgfSBmcm9tICcuL2lvdC1zcWwnO1xuaW1wb3J0IHsgQ2ZuVG9waWNSdWxlIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWlvdCc7XG5cbi8qKlxuICogUmVwcmVzZW50cyBhbiBBV1MgSW9UIFJ1bGVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJVG9waWNSdWxlIGV4dGVuZHMgSVJlc291cmNlIHtcbiAgLyoqXG4gICAqIFRoZSB2YWx1ZSBvZiB0aGUgdG9waWMgcnVsZSBBbWF6b24gUmVzb3VyY2UgTmFtZSAoQVJOKSwgc3VjaCBhc1xuICAgKiBhcm46YXdzOmlvdDp1cy1lYXN0LTI6MTIzNDU2Nzg5MDEyOnJ1bGUvcnVsZV9uYW1lXG4gICAqXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IHRvcGljUnVsZUFybjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSB0b3BpYyBydWxlXG4gICAqXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IHRvcGljUnVsZU5hbWU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBkZWZpbmluZyBhbiBBV1MgSW9UIFJ1bGVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUb3BpY1J1bGVQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgdG9waWMgcnVsZS5cbiAgICogQGRlZmF1bHQgTm9uZVxuICAgKi9cbiAgcmVhZG9ubHkgdG9waWNSdWxlTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGFjdGlvbnMgYXNzb2NpYXRlZCB3aXRoIHRoZSB0b3BpYyBydWxlLlxuICAgKlxuICAgKiBAZGVmYXVsdCBObyBhY3Rpb25zIHdpbGwgYmUgcGVyZm9ybVxuICAgKi9cbiAgcmVhZG9ubHkgYWN0aW9ucz86IElBY3Rpb25bXTtcblxuICAvKipcbiAgICogQSB0ZXh0dWFsIGRlc2NyaXB0aW9uIG9mIHRoZSB0b3BpYyBydWxlLlxuICAgKlxuICAgKiBAZGVmYXVsdCBOb25lXG4gICAqL1xuICByZWFkb25seSBkZXNjcmlwdGlvbj86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGFjdGlvbiBBV1MgSW9UIHBlcmZvcm1zIHdoZW4gaXQgaXMgdW5hYmxlIHRvIHBlcmZvcm0gYSBydWxlJ3MgYWN0aW9uLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIG5vIGFjdGlvbiB3aWxsIGJlIHBlcmZvcm1lZFxuICAgKi9cbiAgcmVhZG9ubHkgZXJyb3JBY3Rpb24/OiBJQWN0aW9uO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgd2hldGhlciB0aGUgcnVsZSBpcyBlbmFibGVkLlxuICAgKlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBlbmFibGVkPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQSBzaW1wbGlmaWVkIFNRTCBzeW50YXggdG8gZmlsdGVyIG1lc3NhZ2VzIHJlY2VpdmVkIG9uIGFuIE1RVFQgdG9waWMgYW5kIHB1c2ggdGhlIGRhdGEgZWxzZXdoZXJlLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9pb3QvbGF0ZXN0L2RldmVsb3Blcmd1aWRlL2lvdC1zcWwtcmVmZXJlbmNlLmh0bWxcbiAgICovXG4gIHJlYWRvbmx5IHNxbDogSW90U3FsO1xufVxuXG4vKipcbiAqIERlZmluZXMgYW4gQVdTIElvVCBSdWxlIGluIHRoaXMgc3RhY2suXG4gKi9cbmV4cG9ydCBjbGFzcyBUb3BpY1J1bGUgZXh0ZW5kcyBSZXNvdXJjZSBpbXBsZW1lbnRzIElUb3BpY1J1bGUge1xuICAvKipcbiAgICogSW1wb3J0IGFuIGV4aXN0aW5nIEFXUyBJb1QgUnVsZSBwcm92aWRlZCBhbiBBUk5cbiAgICpcbiAgICogQHBhcmFtIHNjb3BlIFRoZSBwYXJlbnQgY3JlYXRpbmcgY29uc3RydWN0ICh1c3VhbGx5IGB0aGlzYCkuXG4gICAqIEBwYXJhbSBpZCBUaGUgY29uc3RydWN0J3MgbmFtZS5cbiAgICogQHBhcmFtIHRvcGljUnVsZUFybiBBV1MgSW9UIFJ1bGUgQVJOIChpLmUuIGFybjphd3M6aW90OjxyZWdpb24+OjxhY2NvdW50LWlkPjpydWxlL015UnVsZSkuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGZyb21Ub3BpY1J1bGVBcm4oc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgdG9waWNSdWxlQXJuOiBzdHJpbmcpOiBJVG9waWNSdWxlIHtcbiAgICBjb25zdCBwYXJ0cyA9IFN0YWNrLm9mKHNjb3BlKS5zcGxpdEFybih0b3BpY1J1bGVBcm4sIEFybkZvcm1hdC5TTEFTSF9SRVNPVVJDRV9OQU1FKTtcbiAgICBpZiAoIXBhcnRzLnJlc291cmNlTmFtZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBNaXNzaW5nIHRvcGljIHJ1bGUgbmFtZSBpbiBBUk46ICcke3RvcGljUnVsZUFybn0nYCk7XG4gICAgfVxuICAgIGNvbnN0IHJlc291cmNlTmFtZSA9IHBhcnRzLnJlc291cmNlTmFtZTtcblxuICAgIGNsYXNzIEltcG9ydCBleHRlbmRzIFJlc291cmNlIGltcGxlbWVudHMgSVRvcGljUnVsZSB7XG4gICAgICBwdWJsaWMgcmVhZG9ubHkgdG9waWNSdWxlQXJuID0gdG9waWNSdWxlQXJuO1xuICAgICAgcHVibGljIHJlYWRvbmx5IHRvcGljUnVsZU5hbWUgPSByZXNvdXJjZU5hbWU7XG4gICAgfVxuICAgIHJldHVybiBuZXcgSW1wb3J0KHNjb3BlLCBpZCwge1xuICAgICAgZW52aXJvbm1lbnRGcm9tQXJuOiB0b3BpY1J1bGVBcm4sXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQXJuIG9mIHRoaXMgdG9waWMgcnVsZVxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgdG9waWNSdWxlQXJuOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhpcyB0b3BpYyBydWxlXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSB0b3BpY1J1bGVOYW1lOiBzdHJpbmc7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBhY3Rpb25zOiBDZm5Ub3BpY1J1bGUuQWN0aW9uUHJvcGVydHlbXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBUb3BpY1J1bGVQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgcGh5c2ljYWxOYW1lOiBwcm9wcy50b3BpY1J1bGVOYW1lLFxuICAgIH0pO1xuXG4gICAgY29uc3Qgc3FsQ29uZmlnID0gcHJvcHMuc3FsLmJpbmQodGhpcyk7XG5cbiAgICBjb25zdCByZXNvdXJjZSA9IG5ldyBDZm5Ub3BpY1J1bGUodGhpcywgJ1Jlc291cmNlJywge1xuICAgICAgcnVsZU5hbWU6IHRoaXMucGh5c2ljYWxOYW1lLFxuICAgICAgdG9waWNSdWxlUGF5bG9hZDoge1xuICAgICAgICBhY3Rpb25zOiBMYXp5LmFueSh7IHByb2R1Y2U6ICgpID0+IHRoaXMuYWN0aW9ucyB9KSxcbiAgICAgICAgYXdzSW90U3FsVmVyc2lvbjogc3FsQ29uZmlnLmF3c0lvdFNxbFZlcnNpb24sXG4gICAgICAgIGRlc2NyaXB0aW9uOiBwcm9wcy5kZXNjcmlwdGlvbixcbiAgICAgICAgZXJyb3JBY3Rpb246IHByb3BzLmVycm9yQWN0aW9uPy5fYmluZCh0aGlzKS5jb25maWd1cmF0aW9uLFxuICAgICAgICBydWxlRGlzYWJsZWQ6IHByb3BzLmVuYWJsZWQgPT09IHVuZGVmaW5lZCA/IHVuZGVmaW5lZCA6ICFwcm9wcy5lbmFibGVkLFxuICAgICAgICBzcWw6IHNxbENvbmZpZy5zcWwsXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgdGhpcy50b3BpY1J1bGVBcm4gPSB0aGlzLmdldFJlc291cmNlQXJuQXR0cmlidXRlKHJlc291cmNlLmF0dHJBcm4sIHtcbiAgICAgIHNlcnZpY2U6ICdpb3QnLFxuICAgICAgcmVzb3VyY2U6ICdydWxlJyxcbiAgICAgIHJlc291cmNlTmFtZTogdGhpcy5waHlzaWNhbE5hbWUsXG4gICAgfSk7XG4gICAgdGhpcy50b3BpY1J1bGVOYW1lID0gdGhpcy5nZXRSZXNvdXJjZU5hbWVBdHRyaWJ1dGUocmVzb3VyY2UucmVmKTtcblxuICAgIHByb3BzLmFjdGlvbnM/LmZvckVhY2goYWN0aW9uID0+IHtcbiAgICAgIHRoaXMuYWRkQWN0aW9uKGFjdGlvbik7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQWRkIGEgYWN0aW9uIHRvIHRoZSB0b3BpYyBydWxlLlxuICAgKlxuICAgKiBAcGFyYW0gYWN0aW9uIHRoZSBhY3Rpb24gdG8gYXNzb2NpYXRlIHdpdGggdGhlIHRvcGljIHJ1bGUuXG4gICAqL1xuICBwdWJsaWMgYWRkQWN0aW9uKGFjdGlvbjogSUFjdGlvbik6IHZvaWQge1xuICAgIGNvbnN0IHsgY29uZmlndXJhdGlvbiB9ID0gYWN0aW9uLl9iaW5kKHRoaXMpO1xuXG4gICAgY29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKGNvbmZpZ3VyYXRpb24pO1xuICAgIGlmIChrZXlzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdBbiBhY3Rpb24gcHJvcGVydHkgY2Fubm90IGJlIGFuIGVtcHR5IG9iamVjdC4nKTtcbiAgICB9XG4gICAgaWYgKGtleXMubGVuZ3RoID4gMSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBBbiBhY3Rpb24gcHJvcGVydHkgY2Fubm90IGhhdmUgbXVsdGlwbGUga2V5cywgcmVjZWl2ZWQ6ICR7a2V5c31gKTtcbiAgICB9XG5cbiAgICB0aGlzLmFjdGlvbnMucHVzaChjb25maWd1cmF0aW9uKTtcbiAgfVxufVxuIl19
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-cdk/aws-iot-alpha",
3
- "version": "2.163.0-alpha.0",
3
+ "version": "2.164.0-alpha.0",
4
4
  "private": false,
5
5
  "description": "The CDK Construct Library for AWS::IoT",
6
6
  "main": "lib/index.js",
@@ -81,19 +81,19 @@
81
81
  },
82
82
  "license": "Apache-2.0",
83
83
  "devDependencies": {
84
- "@aws-cdk/cdk-build-tools": "2.163.0-alpha.0",
85
- "@aws-cdk/integ-runner": "2.163.0-alpha.0",
86
- "@aws-cdk/pkglint": "2.163.0-alpha.0",
84
+ "@aws-cdk/cdk-build-tools": "2.164.0-alpha.0",
85
+ "@aws-cdk/integ-runner": "2.164.0-alpha.0",
86
+ "@aws-cdk/pkglint": "2.164.0-alpha.0",
87
87
  "@types/jest": "^29.5.12",
88
88
  "jest": "^29.7.0",
89
- "aws-cdk-lib": "2.163.0",
89
+ "aws-cdk-lib": "2.164.0",
90
90
  "constructs": "^10.0.0",
91
- "@aws-cdk/integ-tests-alpha": "2.163.0-alpha.0"
91
+ "@aws-cdk/integ-tests-alpha": "2.164.0-alpha.0"
92
92
  },
93
93
  "dependencies": {},
94
94
  "homepage": "https://github.com/aws/aws-cdk",
95
95
  "peerDependencies": {
96
- "aws-cdk-lib": "^2.163.0",
96
+ "aws-cdk-lib": "^2.164.0",
97
97
  "constructs": "^10.0.0"
98
98
  },
99
99
  "engines": {