@aws-cdk/aws-iot-alpha 2.36.0-alpha.0 → 2.38.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.
package/.jsii CHANGED
@@ -8,7 +8,7 @@
8
8
  "url": "https://aws.amazon.com"
9
9
  },
10
10
  "dependencies": {
11
- "aws-cdk-lib": "^2.36.0",
11
+ "aws-cdk-lib": "^2.38.0",
12
12
  "constructs": "^10.0.0"
13
13
  },
14
14
  "dependencyClosure": {
@@ -3045,7 +3045,7 @@
3045
3045
  },
3046
3046
  "name": "@aws-cdk/aws-iot-alpha",
3047
3047
  "readme": {
3048
- "markdown": "# AWS IoT Construct Library\n<!--BEGIN STABILITY BANNER-->\n\n---\n\n![cdk-constructs: Experimental](https://img.shields.io/badge/cdk--constructs-experimental-important.svg?style=for-the-badge)\n\n> The APIs of higher level constructs in this module are experimental and under active development.\n> They are subject to non-backward compatible changes or removal in any future version. These are\n> not subject to the [Semantic Versioning](https://semver.org/) model and breaking changes will be\n> announced in the release notes. This means that while you may use them, you may need to update\n> your source code when upgrading to a newer version of this package.\n\n---\n\n<!--END STABILITY BANNER-->\n\nAWS IoT Core lets you connect billions of IoT devices and route trillions of\nmessages to AWS services without managing infrastructure.\n\n## Installation\n\nInstall the module:\n\n```console\n$ npm i @aws-cdk/aws-iot\n```\n\nImport it into your code:\n\n```ts nofixture\nimport * as iot from '@aws-cdk/aws-iot-alpha';\nimport * as actions from '@aws-cdk/aws-iot-actions-alpha';\n```\n\n## `TopicRule`\n\nCreate a topic rule that give your devices the ability to interact with AWS services.\nYou can create a topic rule with an action that invoke the Lambda action as following:\n\n```ts\nconst func = new lambda.Function(this, 'MyFunction', {\n runtime: lambda.Runtime.NODEJS_14_X,\n handler: 'index.handler',\n code: lambda.Code.fromInline(`\n exports.handler = (event) => {\n console.log(\"It is test for lambda action of AWS IoT Rule.\", event);\n };`\n ),\n});\n\nnew iot.TopicRule(this, 'TopicRule', {\n topicRuleName: 'MyTopicRule', // optional\n description: 'invokes the lambda function', // optional\n sql: iot.IotSql.fromStringAsVer20160323(\"SELECT topic(2) as device_id, timestamp() as timestamp FROM 'device/+/data'\"),\n actions: [new actions.LambdaFunctionAction(func)],\n});\n```\n\nOr, you can add an action after constructing the `TopicRule` instance as following:\n\n```ts\ndeclare const func: lambda.Function;\n\nconst topicRule = new iot.TopicRule(this, 'TopicRule', {\n sql: iot.IotSql.fromStringAsVer20160323(\"SELECT topic(2) as device_id, timestamp() as timestamp FROM 'device/+/data'\"),\n});\ntopicRule.addAction(new actions.LambdaFunctionAction(func));\n```\n\nYou can also supply `errorAction` as following,\nand the IoT Rule will trigger it if a rule's action is unable to perform:\n\n```ts\nimport * as logs from 'aws-cdk-lib/aws-logs';\n\nconst logGroup = new logs.LogGroup(this, 'MyLogGroup');\n\nnew iot.TopicRule(this, 'TopicRule', {\n sql: iot.IotSql.fromStringAsVer20160323(\"SELECT topic(2) as device_id, timestamp() as timestamp FROM 'device/+/data'\"),\n errorAction: new actions.CloudWatchLogsAction(logGroup),\n});\n```\n\nIf you wanna make the topic rule disable, add property `enabled: false` as following:\n\n```ts\nnew iot.TopicRule(this, 'TopicRule', {\n sql: iot.IotSql.fromStringAsVer20160323(\"SELECT topic(2) as device_id, timestamp() as timestamp FROM 'device/+/data'\"),\n enabled: false,\n});\n```\n\nSee also [@aws-cdk/aws-iot-actions](https://docs.aws.amazon.com/cdk/api/latest/docs/aws-iot-actions-readme.html) for other actions.\n"
3048
+ "markdown": "# AWS IoT Construct Library\n<!--BEGIN STABILITY BANNER-->\n\n---\n\n![cdk-constructs: Experimental](https://img.shields.io/badge/cdk--constructs-experimental-important.svg?style=for-the-badge)\n\n> The APIs of higher level constructs in this module are experimental and under active development.\n> They are subject to non-backward compatible changes or removal in any future version. These are\n> not subject to the [Semantic Versioning](https://semver.org/) model and breaking changes will be\n> announced in the release notes. This means that while you may use them, you may need to update\n> your source code when upgrading to a newer version of this package.\n\n---\n\n<!--END STABILITY BANNER-->\n\nAWS IoT Core lets you connect billions of IoT devices and route trillions of\nmessages to AWS services without managing infrastructure.\n\n## `TopicRule`\n\nCreate a topic rule that give your devices the ability to interact with AWS services.\nYou can create a topic rule with an action that invoke the Lambda action as following:\n\n```ts\nconst func = new lambda.Function(this, 'MyFunction', {\n runtime: lambda.Runtime.NODEJS_14_X,\n handler: 'index.handler',\n code: lambda.Code.fromInline(`\n exports.handler = (event) => {\n console.log(\"It is test for lambda action of AWS IoT Rule.\", event);\n };`\n ),\n});\n\nnew iot.TopicRule(this, 'TopicRule', {\n topicRuleName: 'MyTopicRule', // optional\n description: 'invokes the lambda function', // optional\n sql: iot.IotSql.fromStringAsVer20160323(\"SELECT topic(2) as device_id, timestamp() as timestamp FROM 'device/+/data'\"),\n actions: [new actions.LambdaFunctionAction(func)],\n});\n```\n\nOr, you can add an action after constructing the `TopicRule` instance as following:\n\n```ts\ndeclare const func: lambda.Function;\n\nconst topicRule = new iot.TopicRule(this, 'TopicRule', {\n sql: iot.IotSql.fromStringAsVer20160323(\"SELECT topic(2) as device_id, timestamp() as timestamp FROM 'device/+/data'\"),\n});\ntopicRule.addAction(new actions.LambdaFunctionAction(func));\n```\n\nYou can also supply `errorAction` as following,\nand the IoT Rule will trigger it if a rule's action is unable to perform:\n\n```ts\nimport * as logs from 'aws-cdk-lib/aws-logs';\n\nconst logGroup = new logs.LogGroup(this, 'MyLogGroup');\n\nnew iot.TopicRule(this, 'TopicRule', {\n sql: iot.IotSql.fromStringAsVer20160323(\"SELECT topic(2) as device_id, timestamp() as timestamp FROM 'device/+/data'\"),\n errorAction: new actions.CloudWatchLogsAction(logGroup),\n});\n```\n\nIf you wanna make the topic rule disable, add property `enabled: false` as following:\n\n```ts\nnew iot.TopicRule(this, 'TopicRule', {\n sql: iot.IotSql.fromStringAsVer20160323(\"SELECT topic(2) as device_id, timestamp() as timestamp FROM 'device/+/data'\"),\n enabled: false,\n});\n```\n\nSee also [@aws-cdk/aws-iot-actions](https://docs.aws.amazon.com/cdk/api/latest/docs/aws-iot-actions-readme.html) for other actions.\n"
3049
3049
  },
3050
3050
  "repository": {
3051
3051
  "directory": "packages/individual-packages/aws-iot",
@@ -3098,7 +3098,7 @@
3098
3098
  "kind": "interface",
3099
3099
  "locationInModule": {
3100
3100
  "filename": "lib/action.ts",
3101
- "line": 19
3101
+ "line": 20
3102
3102
  },
3103
3103
  "name": "ActionConfig",
3104
3104
  "properties": [
@@ -3111,7 +3111,7 @@
3111
3111
  "immutable": true,
3112
3112
  "locationInModule": {
3113
3113
  "filename": "lib/action.ts",
3114
- "line": 23
3114
+ "line": 24
3115
3115
  },
3116
3116
  "name": "configuration",
3117
3117
  "type": {
@@ -3133,36 +3133,6 @@
3133
3133
  "filename": "lib/action.ts",
3134
3134
  "line": 7
3135
3135
  },
3136
- "methods": [
3137
- {
3138
- "abstract": true,
3139
- "docs": {
3140
- "stability": "experimental",
3141
- "summary": "Returns the topic rule action specification."
3142
- },
3143
- "locationInModule": {
3144
- "filename": "lib/action.ts",
3145
- "line": 13
3146
- },
3147
- "name": "bind",
3148
- "parameters": [
3149
- {
3150
- "docs": {
3151
- "summary": "The TopicRule that would trigger this action."
3152
- },
3153
- "name": "topicRule",
3154
- "type": {
3155
- "fqn": "@aws-cdk/aws-iot-alpha.ITopicRule"
3156
- }
3157
- }
3158
- ],
3159
- "returns": {
3160
- "type": {
3161
- "fqn": "@aws-cdk/aws-iot-alpha.ActionConfig"
3162
- }
3163
- }
3164
- }
3165
- ],
3166
3136
  "name": "IAction",
3167
3137
  "symbolId": "lib/action:IAction"
3168
3138
  },
@@ -3231,7 +3201,7 @@
3231
3201
  "custom": {
3232
3202
  "exampleMetadata": "infused"
3233
3203
  },
3234
- "example": "const bucket = new s3.Bucket(this, 'MyBucket');\n\nnew iot.TopicRule(this, 'TopicRule', {\n sql: iot.IotSql.fromStringAsVer20160323(\"SELECT * FROM 'device/+/data'\"),\n actions: [\n new actions.S3PutObjectAction(bucket, {\n accessControl: s3.BucketAccessControl.PUBLIC_READ,\n }),\n ],\n});",
3204
+ "example": "import * as sns from 'aws-cdk-lib/aws-sns';\n\nconst topic = new sns.Topic(this, 'MyTopic');\n\nconst topicRule = new iot.TopicRule(this, 'TopicRule', {\n sql: iot.IotSql.fromStringAsVer20160323(\n \"SELECT topic(2) as device_id, year, month, day FROM 'device/+/data'\",\n ),\n actions: [\n new actions.SnsTopicAction(topic, {\n messageFormat: actions.SnsActionMessageFormat.JSON, // optional property, default is SnsActionMessageFormat.RAW\n }),\n ],\n});",
3235
3205
  "stability": "experimental",
3236
3206
  "summary": "Defines AWS IoT SQL."
3237
3207
  },
@@ -3425,7 +3395,7 @@
3425
3395
  "custom": {
3426
3396
  "exampleMetadata": "infused"
3427
3397
  },
3428
- "example": "const bucket = new s3.Bucket(this, 'MyBucket');\n\nnew iot.TopicRule(this, 'TopicRule', {\n sql: iot.IotSql.fromStringAsVer20160323(\"SELECT * FROM 'device/+/data'\"),\n actions: [\n new actions.S3PutObjectAction(bucket, {\n accessControl: s3.BucketAccessControl.PUBLIC_READ,\n }),\n ],\n});",
3398
+ "example": "import * as sns from 'aws-cdk-lib/aws-sns';\n\nconst topic = new sns.Topic(this, 'MyTopic');\n\nconst topicRule = new iot.TopicRule(this, 'TopicRule', {\n sql: iot.IotSql.fromStringAsVer20160323(\n \"SELECT topic(2) as device_id, year, month, day FROM 'device/+/data'\",\n ),\n actions: [\n new actions.SnsTopicAction(topic, {\n messageFormat: actions.SnsActionMessageFormat.JSON, // optional property, default is SnsActionMessageFormat.RAW\n }),\n ],\n});",
3429
3399
  "stability": "experimental",
3430
3400
  "summary": "Defines an AWS IoT Rule in this stack."
3431
3401
  },
@@ -3587,7 +3557,7 @@
3587
3557
  "custom": {
3588
3558
  "exampleMetadata": "infused"
3589
3559
  },
3590
- "example": "const bucket = new s3.Bucket(this, 'MyBucket');\n\nnew iot.TopicRule(this, 'TopicRule', {\n sql: iot.IotSql.fromStringAsVer20160323(\"SELECT * FROM 'device/+/data'\"),\n actions: [\n new actions.S3PutObjectAction(bucket, {\n accessControl: s3.BucketAccessControl.PUBLIC_READ,\n }),\n ],\n});",
3560
+ "example": "import * as sns from 'aws-cdk-lib/aws-sns';\n\nconst topic = new sns.Topic(this, 'MyTopic');\n\nconst topicRule = new iot.TopicRule(this, 'TopicRule', {\n sql: iot.IotSql.fromStringAsVer20160323(\n \"SELECT topic(2) as device_id, year, month, day FROM 'device/+/data'\",\n ),\n actions: [\n new actions.SnsTopicAction(topic, {\n messageFormat: actions.SnsActionMessageFormat.JSON, // optional property, default is SnsActionMessageFormat.RAW\n }),\n ],\n});",
3591
3561
  "stability": "experimental",
3592
3562
  "summary": "Properties for defining an AWS IoT Rule."
3593
3563
  },
@@ -3715,6 +3685,6 @@
3715
3685
  "symbolId": "lib/topic-rule:TopicRuleProps"
3716
3686
  }
3717
3687
  },
3718
- "version": "2.36.0-alpha.0",
3688
+ "version": "2.38.0-alpha.0",
3719
3689
  "fingerprint": "**********"
3720
3690
  }
package/.jsii.tabl.json CHANGED
@@ -2,52 +2,6 @@
2
2
  "version": "2",
3
3
  "toolVersion": "1.63.2",
4
4
  "snippets": {
5
- "f02e129b0f50c8efcec0729c7445e16463a283b5624de93fa7e67b6b0df9e92c": {
6
- "translations": {
7
- "python": {
8
- "source": "import aws_cdk.aws_iot_alpha as iot\nimport aws_cdk.aws_iot_actions_alpha as actions",
9
- "version": "2"
10
- },
11
- "csharp": {
12
- "source": "using Amazon.CDK.AWS.IoT.Alpha;\nusing Amazon.CDK.AWS.IoT.Actions.Alpha;",
13
- "version": "1"
14
- },
15
- "java": {
16
- "source": "import software.amazon.awscdk.services.iot.alpha.*;\nimport software.amazon.awscdk.services.iot.actions.alpha.*;",
17
- "version": "1"
18
- },
19
- "go": {
20
- "source": "import iot \"github.com/aws/aws-cdk-go/awscdkiotalpha\"\nimport actions \"github.com/aws/aws-cdk-go/awscdkiotactionsalpha\"",
21
- "version": "1"
22
- },
23
- "$": {
24
- "source": "import * as iot from '@aws-cdk/aws-iot-alpha';\nimport * as actions from '@aws-cdk/aws-iot-actions-alpha';",
25
- "version": "0"
26
- }
27
- },
28
- "location": {
29
- "api": {
30
- "api": "moduleReadme",
31
- "moduleFqn": "@aws-cdk/aws-iot-alpha"
32
- },
33
- "field": {
34
- "field": "markdown",
35
- "line": 31
36
- }
37
- },
38
- "didCompile": true,
39
- "fqnsReferenced": [],
40
- "fullSource": "import * as iot from '@aws-cdk/aws-iot-alpha';\nimport * as actions from '@aws-cdk/aws-iot-actions-alpha';",
41
- "syntaxKindCounter": {
42
- "10": 2,
43
- "75": 2,
44
- "254": 2,
45
- "255": 2,
46
- "256": 2,
47
- "290": 1
48
- },
49
- "fqnsFingerprint": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
50
- },
51
5
  "c0dd3a8abe50054a48d9630d82e6b4b266c7578cc43d525bdafaad328cbb62d9": {
52
6
  "translations": {
53
7
  "python": {
@@ -78,7 +32,7 @@
78
32
  },
79
33
  "field": {
80
34
  "field": "markdown",
81
- "line": 41
35
+ "line": 26
82
36
  }
83
37
  },
84
38
  "didCompile": true,
@@ -114,7 +68,7 @@
114
68
  "243": 1,
115
69
  "281": 7
116
70
  },
117
- "fqnsFingerprint": "bb75999bf29887cda28cec7ae79bf7099c361164cb13c5eaea243408cf3e13dd"
71
+ "fqnsFingerprint": "93559b14c157cb56154d24c50087b66f53db14c5145c3a9c5f4e3e873eb4a414"
118
72
  },
119
73
  "8d423264b18bf84ebd96ef345dff9fb3f2c3344e6d7f2b0cf7b8f8b5bd3b740b": {
120
74
  "translations": {
@@ -146,7 +100,7 @@
146
100
  },
147
101
  "field": {
148
102
  "field": "markdown",
149
- "line": 62
103
+ "line": 47
150
104
  }
151
105
  },
152
106
  "didCompile": true,
@@ -180,7 +134,7 @@
180
134
  "281": 1,
181
135
  "290": 1
182
136
  },
183
- "fqnsFingerprint": "c36bd6c74c59745d7adc37d803ba12a5a99d55e043ea1686d95855cbc3123bb4"
137
+ "fqnsFingerprint": "70d00141659c4e210ba3f5a1ac8f87e372ee0efa2ef0b127a439603f497b46bc"
184
138
  },
185
139
  "d00de3b61505786f1520d5a3ae725275f8b4e2a343cf3712973b8463c04ad016": {
186
140
  "translations": {
@@ -212,7 +166,7 @@
212
166
  },
213
167
  "field": {
214
168
  "field": "markdown",
215
- "line": 74
169
+ "line": 59
216
170
  }
217
171
  },
218
172
  "didCompile": true,
@@ -246,7 +200,7 @@
246
200
  "281": 2,
247
201
  "290": 1
248
202
  },
249
- "fqnsFingerprint": "6c6c788097bd589174eea6c208049eaacfb6903c12fef33117ec232da0a8435c"
203
+ "fqnsFingerprint": "cd13a2ead6e1fa8a9c4c2a73f0d8c5fee2fc636b094fa1efe7b55eaefd36825f"
250
204
  },
251
205
  "13a44d58d3cf9be7a9d0210c8f7b3044c28662dd037a3f848b740dd78ba1c33d": {
252
206
  "translations": {
@@ -278,7 +232,7 @@
278
232
  },
279
233
  "field": {
280
234
  "field": "markdown",
281
- "line": 87
235
+ "line": 72
282
236
  }
283
237
  },
284
238
  "didCompile": true,
@@ -302,7 +256,7 @@
302
256
  "226": 1,
303
257
  "281": 2
304
258
  },
305
- "fqnsFingerprint": "254b879e1061b39f7387a66754ec54a8ea2c9a45e3a228b9be07fa52b067cc94"
259
+ "fqnsFingerprint": "1e83a52179f87cf9c7879ae972536d7e269ad184065e781f5b27fb8bc255a6a5"
306
260
  },
307
261
  "478bc6ac05a0df94d2a93853923e4a64d07e327bee9751731f1e0c3c563fc8dd": {
308
262
  "translations": {
@@ -362,26 +316,26 @@
362
316
  },
363
317
  "fqnsFingerprint": "2c63b4a80c41debca854deefa3270efce38e64293544a04243e04e1c95acf4b2"
364
318
  },
365
- "86055c5721007e078123e3fb066748718248c4742d0e0f9c39baa6a6a73bbdbf": {
319
+ "fe28af655d4ab07a3f069d1b9cc7b6c569823a18a6e118cd1c19e77146647902": {
366
320
  "translations": {
367
321
  "python": {
368
- "source": "bucket = s3.Bucket(self, \"MyBucket\")\n\niot.TopicRule(self, \"TopicRule\",\n sql=iot.IotSql.from_string_as_ver20160323(\"SELECT * FROM 'device/+/data'\"),\n actions=[\n actions.S3PutObjectAction(bucket,\n access_control=s3.BucketAccessControl.PUBLIC_READ\n )\n ]\n)",
322
+ "source": "import aws_cdk.aws_sns as sns\n\n\ntopic = sns.Topic(self, \"MyTopic\")\n\ntopic_rule = iot.TopicRule(self, \"TopicRule\",\n sql=iot.IotSql.from_string_as_ver20160323(\"SELECT topic(2) as device_id, year, month, day FROM 'device/+/data'\"),\n actions=[\n actions.SnsTopicAction(topic,\n message_format=actions.SnsActionMessageFormat.JSON\n )\n ]\n)",
369
323
  "version": "2"
370
324
  },
371
325
  "csharp": {
372
- "source": "Bucket bucket = new Bucket(this, \"MyBucket\");\n\nnew TopicRule(this, \"TopicRule\", new TopicRuleProps {\n Sql = IotSql.FromStringAsVer20160323(\"SELECT * FROM 'device/+/data'\"),\n Actions = new [] {\n new S3PutObjectAction(bucket, new S3PutObjectActionProps {\n AccessControl = BucketAccessControl.PUBLIC_READ\n }) }\n});",
326
+ "source": "using Amazon.CDK.AWS.SNS;\n\n\nTopic topic = new Topic(this, \"MyTopic\");\n\nTopicRule topicRule = new TopicRule(this, \"TopicRule\", new TopicRuleProps {\n Sql = IotSql.FromStringAsVer20160323(\"SELECT topic(2) as device_id, year, month, day FROM 'device/+/data'\"),\n Actions = new [] {\n new SnsTopicAction(topic, new SnsTopicActionProps {\n MessageFormat = SnsActionMessageFormat.JSON\n }) }\n});",
373
327
  "version": "1"
374
328
  },
375
329
  "java": {
376
- "source": "Bucket bucket = new Bucket(this, \"MyBucket\");\n\nTopicRule.Builder.create(this, \"TopicRule\")\n .sql(IotSql.fromStringAsVer20160323(\"SELECT * FROM 'device/+/data'\"))\n .actions(List.of(\n S3PutObjectAction.Builder.create(bucket)\n .accessControl(BucketAccessControl.PUBLIC_READ)\n .build()))\n .build();",
330
+ "source": "import software.amazon.awscdk.services.sns.*;\n\n\nTopic topic = new Topic(this, \"MyTopic\");\n\nTopicRule topicRule = TopicRule.Builder.create(this, \"TopicRule\")\n .sql(IotSql.fromStringAsVer20160323(\"SELECT topic(2) as device_id, year, month, day FROM 'device/+/data'\"))\n .actions(List.of(\n SnsTopicAction.Builder.create(topic)\n .messageFormat(SnsActionMessageFormat.JSON)\n .build()))\n .build();",
377
331
  "version": "1"
378
332
  },
379
333
  "go": {
380
- "source": "bucket := s3.NewBucket(this, jsii.String(\"MyBucket\"))\n\niot.NewTopicRule(this, jsii.String(\"TopicRule\"), &topicRuleProps{\n\tsql: iot.iotSql.fromStringAsVer20160323(jsii.String(\"SELECT * FROM 'device/+/data'\")),\n\tactions: []iAction{\n\t\tactions.NewS3PutObjectAction(bucket, &s3PutObjectActionProps{\n\t\t\taccessControl: s3.bucketAccessControl_PUBLIC_READ,\n\t\t}),\n\t},\n})",
334
+ "source": "import sns \"github.com/aws/aws-cdk-go/awscdk\"\n\n\ntopic := sns.NewTopic(this, jsii.String(\"MyTopic\"))\n\ntopicRule := iot.NewTopicRule(this, jsii.String(\"TopicRule\"), &topicRuleProps{\n\tsql: iot.iotSql.fromStringAsVer20160323(jsii.String(\"SELECT topic(2) as device_id, year, month, day FROM 'device/+/data'\")),\n\tactions: []iAction{\n\t\tactions.NewSnsTopicAction(topic, &snsTopicActionProps{\n\t\t\tmessageFormat: actions.snsActionMessageFormat_JSON,\n\t\t}),\n\t},\n})",
381
335
  "version": "1"
382
336
  },
383
337
  "$": {
384
- "source": "const bucket = new s3.Bucket(this, 'MyBucket');\n\nnew iot.TopicRule(this, 'TopicRule', {\n sql: iot.IotSql.fromStringAsVer20160323(\"SELECT * FROM 'device/+/data'\"),\n actions: [\n new actions.S3PutObjectAction(bucket, {\n accessControl: s3.BucketAccessControl.PUBLIC_READ,\n }),\n ],\n});",
338
+ "source": "import * as sns from 'aws-cdk-lib/aws-sns';\n\nconst topic = new sns.Topic(this, 'MyTopic');\n\nconst topicRule = new iot.TopicRule(this, 'TopicRule', {\n sql: iot.IotSql.fromStringAsVer20160323(\n \"SELECT topic(2) as device_id, year, month, day FROM 'device/+/data'\",\n ),\n actions: [\n new actions.SnsTopicAction(topic, {\n messageFormat: actions.SnsActionMessageFormat.JSON, // optional property, default is SnsActionMessageFormat.RAW\n }),\n ],\n});",
385
339
  "version": "0"
386
340
  }
387
341
  },
@@ -396,35 +350,38 @@
396
350
  },
397
351
  "didCompile": true,
398
352
  "fqnsReferenced": [
399
- "@aws-cdk/aws-iot-actions-alpha.S3PutObjectAction",
400
- "@aws-cdk/aws-iot-actions-alpha.S3PutObjectActionProps",
353
+ "@aws-cdk/aws-iot-actions-alpha.SnsActionMessageFormat",
354
+ "@aws-cdk/aws-iot-actions-alpha.SnsActionMessageFormat#JSON",
355
+ "@aws-cdk/aws-iot-actions-alpha.SnsTopicAction",
356
+ "@aws-cdk/aws-iot-actions-alpha.SnsTopicActionProps",
401
357
  "@aws-cdk/aws-iot-alpha.IotSql",
402
358
  "@aws-cdk/aws-iot-alpha.IotSql#fromStringAsVer20160323",
403
359
  "@aws-cdk/aws-iot-alpha.TopicRule",
404
360
  "@aws-cdk/aws-iot-alpha.TopicRuleProps",
405
- "aws-cdk-lib.aws_s3.Bucket",
406
- "aws-cdk-lib.aws_s3.BucketAccessControl",
407
- "aws-cdk-lib.aws_s3.BucketAccessControl#PUBLIC_READ",
408
- "aws-cdk-lib.aws_s3.IBucket",
361
+ "aws-cdk-lib.aws_sns.ITopic",
362
+ "aws-cdk-lib.aws_sns.Topic",
409
363
  "constructs.Construct"
410
364
  ],
411
- "fullSource": "// Fixture with packages imported, but nothing else\nimport { Stack } from 'aws-cdk-lib';\nimport { Construct } from 'constructs';\nimport * as actions from '@aws-cdk/aws-iot-actions-alpha';\nimport * as iot from '@aws-cdk/aws-iot-alpha';\nimport * as lambda from 'aws-cdk-lib/aws-lambda';\nimport * as s3 from 'aws-cdk-lib/aws-s3';\n\nclass Fixture extends Stack {\n constructor(scope: Construct, id: string) {\n super(scope, id);\n // Code snippet begins after !show marker below\n/// !show\nconst bucket = new s3.Bucket(this, 'MyBucket');\n\nnew iot.TopicRule(this, 'TopicRule', {\n sql: iot.IotSql.fromStringAsVer20160323(\"SELECT * FROM 'device/+/data'\"),\n actions: [\n new actions.S3PutObjectAction(bucket, {\n accessControl: s3.BucketAccessControl.PUBLIC_READ,\n }),\n ],\n});\n/// !hide\n// Code snippet ended before !hide marker above\n }\n}",
365
+ "fullSource": "// Hoisted imports begin after !show marker below\n/// !show\nimport * as sns from 'aws-cdk-lib/aws-sns';\n/// !hide\n// Hoisted imports ended before !hide marker above\n// Fixture with packages imported, but nothing else\nimport { Stack } from 'aws-cdk-lib';\nimport { Construct } from 'constructs';\nimport * as actions from '@aws-cdk/aws-iot-actions-alpha';\nimport * as iot from '@aws-cdk/aws-iot-alpha';\nimport * as lambda from 'aws-cdk-lib/aws-lambda';\nimport * as s3 from 'aws-cdk-lib/aws-s3';\n\nclass Fixture extends Stack {\n constructor(scope: Construct, id: string) {\n super(scope, id);\n // Code snippet begins after !show marker below\n/// !show\n\n\nconst topic = new sns.Topic(this, 'MyTopic');\n\nconst topicRule = new iot.TopicRule(this, 'TopicRule', {\n sql: iot.IotSql.fromStringAsVer20160323(\n \"SELECT topic(2) as device_id, year, month, day FROM 'device/+/data'\",\n ),\n actions: [\n new actions.SnsTopicAction(topic, {\n messageFormat: actions.SnsActionMessageFormat.JSON, // optional property, default is SnsActionMessageFormat.RAW\n }),\n ],\n});\n/// !hide\n// Code snippet ended before !hide marker above\n }\n}",
412
366
  "syntaxKindCounter": {
413
- "10": 3,
414
- "75": 17,
367
+ "10": 4,
368
+ "75": 19,
415
369
  "104": 2,
416
370
  "192": 1,
417
371
  "193": 2,
418
372
  "194": 7,
419
373
  "196": 1,
420
374
  "197": 3,
421
- "225": 1,
422
- "226": 1,
423
- "242": 1,
424
- "243": 1,
425
- "281": 3
375
+ "225": 2,
376
+ "242": 2,
377
+ "243": 2,
378
+ "254": 1,
379
+ "255": 1,
380
+ "256": 1,
381
+ "281": 3,
382
+ "290": 1
426
383
  },
427
- "fqnsFingerprint": "e7dd86e12a3d5ab566fbaf87a7c3f14cbe7bfa976d28d122c1815fadbcd4e8b9"
384
+ "fqnsFingerprint": "0d0bd8ceffc0610df1fdb207b70f4bc1fc6536d583e91e419c4b494cd3f0c45d"
428
385
  },
429
386
  "74bb7d4294a32fb4614b808694f4a4dfebbd13621b825e7ac033eae8fb48f256": {
430
387
  "translations": {
@@ -480,26 +437,26 @@
480
437
  },
481
438
  "fqnsFingerprint": "eadc2b7fe175a20273b81ae34142e534e05517c13b710d61c3bdc4ce4b7df5c3"
482
439
  },
483
- "ec35ff31cf8fb80d6f2a857bf4719550d667425110d1fbdba6e9026714af4d32": {
440
+ "beb68df5e939a78260872c2b8e6e713bc397b0a6996999c1101a595e61f1a38b": {
484
441
  "translations": {
485
442
  "python": {
486
- "source": "bucket = s3.Bucket(self, \"MyBucket\")\n\niot.TopicRule(self, \"TopicRule\",\n sql=iot.IotSql.from_string_as_ver20160323(\"SELECT * FROM 'device/+/data'\"),\n actions=[\n actions.S3PutObjectAction(bucket,\n access_control=s3.BucketAccessControl.PUBLIC_READ\n )\n ]\n)",
443
+ "source": "import aws_cdk.aws_sns as sns\n\n\ntopic = sns.Topic(self, \"MyTopic\")\n\ntopic_rule = iot.TopicRule(self, \"TopicRule\",\n sql=iot.IotSql.from_string_as_ver20160323(\"SELECT topic(2) as device_id, year, month, day FROM 'device/+/data'\"),\n actions=[\n actions.SnsTopicAction(topic,\n message_format=actions.SnsActionMessageFormat.JSON\n )\n ]\n)",
487
444
  "version": "2"
488
445
  },
489
446
  "csharp": {
490
- "source": "Bucket bucket = new Bucket(this, \"MyBucket\");\n\nnew TopicRule(this, \"TopicRule\", new TopicRuleProps {\n Sql = IotSql.FromStringAsVer20160323(\"SELECT * FROM 'device/+/data'\"),\n Actions = new [] {\n new S3PutObjectAction(bucket, new S3PutObjectActionProps {\n AccessControl = BucketAccessControl.PUBLIC_READ\n }) }\n});",
447
+ "source": "using Amazon.CDK.AWS.SNS;\n\n\nTopic topic = new Topic(this, \"MyTopic\");\n\nTopicRule topicRule = new TopicRule(this, \"TopicRule\", new TopicRuleProps {\n Sql = IotSql.FromStringAsVer20160323(\"SELECT topic(2) as device_id, year, month, day FROM 'device/+/data'\"),\n Actions = new [] {\n new SnsTopicAction(topic, new SnsTopicActionProps {\n MessageFormat = SnsActionMessageFormat.JSON\n }) }\n});",
491
448
  "version": "1"
492
449
  },
493
450
  "java": {
494
- "source": "Bucket bucket = new Bucket(this, \"MyBucket\");\n\nTopicRule.Builder.create(this, \"TopicRule\")\n .sql(IotSql.fromStringAsVer20160323(\"SELECT * FROM 'device/+/data'\"))\n .actions(List.of(\n S3PutObjectAction.Builder.create(bucket)\n .accessControl(BucketAccessControl.PUBLIC_READ)\n .build()))\n .build();",
451
+ "source": "import software.amazon.awscdk.services.sns.*;\n\n\nTopic topic = new Topic(this, \"MyTopic\");\n\nTopicRule topicRule = TopicRule.Builder.create(this, \"TopicRule\")\n .sql(IotSql.fromStringAsVer20160323(\"SELECT topic(2) as device_id, year, month, day FROM 'device/+/data'\"))\n .actions(List.of(\n SnsTopicAction.Builder.create(topic)\n .messageFormat(SnsActionMessageFormat.JSON)\n .build()))\n .build();",
495
452
  "version": "1"
496
453
  },
497
454
  "go": {
498
- "source": "bucket := s3.NewBucket(this, jsii.String(\"MyBucket\"))\n\niot.NewTopicRule(this, jsii.String(\"TopicRule\"), &topicRuleProps{\n\tsql: iot.iotSql.fromStringAsVer20160323(jsii.String(\"SELECT * FROM 'device/+/data'\")),\n\tactions: []iAction{\n\t\tactions.NewS3PutObjectAction(bucket, &s3PutObjectActionProps{\n\t\t\taccessControl: s3.bucketAccessControl_PUBLIC_READ,\n\t\t}),\n\t},\n})",
455
+ "source": "import sns \"github.com/aws/aws-cdk-go/awscdk\"\n\n\ntopic := sns.NewTopic(this, jsii.String(\"MyTopic\"))\n\ntopicRule := iot.NewTopicRule(this, jsii.String(\"TopicRule\"), &topicRuleProps{\n\tsql: iot.iotSql.fromStringAsVer20160323(jsii.String(\"SELECT topic(2) as device_id, year, month, day FROM 'device/+/data'\")),\n\tactions: []iAction{\n\t\tactions.NewSnsTopicAction(topic, &snsTopicActionProps{\n\t\t\tmessageFormat: actions.snsActionMessageFormat_JSON,\n\t\t}),\n\t},\n})",
499
456
  "version": "1"
500
457
  },
501
458
  "$": {
502
- "source": "const bucket = new s3.Bucket(this, 'MyBucket');\n\nnew iot.TopicRule(this, 'TopicRule', {\n sql: iot.IotSql.fromStringAsVer20160323(\"SELECT * FROM 'device/+/data'\"),\n actions: [\n new actions.S3PutObjectAction(bucket, {\n accessControl: s3.BucketAccessControl.PUBLIC_READ,\n }),\n ],\n});",
459
+ "source": "import * as sns from 'aws-cdk-lib/aws-sns';\n\nconst topic = new sns.Topic(this, 'MyTopic');\n\nconst topicRule = new iot.TopicRule(this, 'TopicRule', {\n sql: iot.IotSql.fromStringAsVer20160323(\n \"SELECT topic(2) as device_id, year, month, day FROM 'device/+/data'\",\n ),\n actions: [\n new actions.SnsTopicAction(topic, {\n messageFormat: actions.SnsActionMessageFormat.JSON, // optional property, default is SnsActionMessageFormat.RAW\n }),\n ],\n});",
503
460
  "version": "0"
504
461
  }
505
462
  },
@@ -514,56 +471,59 @@
514
471
  },
515
472
  "didCompile": true,
516
473
  "fqnsReferenced": [
517
- "@aws-cdk/aws-iot-actions-alpha.S3PutObjectAction",
518
- "@aws-cdk/aws-iot-actions-alpha.S3PutObjectActionProps",
474
+ "@aws-cdk/aws-iot-actions-alpha.SnsActionMessageFormat",
475
+ "@aws-cdk/aws-iot-actions-alpha.SnsActionMessageFormat#JSON",
476
+ "@aws-cdk/aws-iot-actions-alpha.SnsTopicAction",
477
+ "@aws-cdk/aws-iot-actions-alpha.SnsTopicActionProps",
519
478
  "@aws-cdk/aws-iot-alpha.IotSql",
520
479
  "@aws-cdk/aws-iot-alpha.IotSql#fromStringAsVer20160323",
521
480
  "@aws-cdk/aws-iot-alpha.TopicRule",
522
481
  "@aws-cdk/aws-iot-alpha.TopicRuleProps",
523
- "aws-cdk-lib.aws_s3.Bucket",
524
- "aws-cdk-lib.aws_s3.BucketAccessControl",
525
- "aws-cdk-lib.aws_s3.BucketAccessControl#PUBLIC_READ",
526
- "aws-cdk-lib.aws_s3.IBucket",
482
+ "aws-cdk-lib.aws_sns.ITopic",
483
+ "aws-cdk-lib.aws_sns.Topic",
527
484
  "constructs.Construct"
528
485
  ],
529
- "fullSource": "// Fixture with packages imported, but nothing else\nimport { Stack } from 'aws-cdk-lib';\nimport { Construct } from 'constructs';\nimport * as actions from '@aws-cdk/aws-iot-actions-alpha';\nimport * as iot from '@aws-cdk/aws-iot-alpha';\nimport * as lambda from 'aws-cdk-lib/aws-lambda';\nimport * as s3 from 'aws-cdk-lib/aws-s3';\n\nclass Fixture extends Stack {\n constructor(scope: Construct, id: string) {\n super(scope, id);\n // Code snippet begins after !show marker below\n/// !show\nconst bucket = new s3.Bucket(this, 'MyBucket');\n\nnew iot.TopicRule(this, 'TopicRule', {\n sql: iot.IotSql.fromStringAsVer20160323(\"SELECT * FROM 'device/+/data'\"),\n actions: [\n new actions.S3PutObjectAction(bucket, {\n accessControl: s3.BucketAccessControl.PUBLIC_READ,\n }),\n ],\n});\n/// !hide\n// Code snippet ended before !hide marker above\n }\n}",
486
+ "fullSource": "// Hoisted imports begin after !show marker below\n/// !show\nimport * as sns from 'aws-cdk-lib/aws-sns';\n/// !hide\n// Hoisted imports ended before !hide marker above\n// Fixture with packages imported, but nothing else\nimport { Stack } from 'aws-cdk-lib';\nimport { Construct } from 'constructs';\nimport * as actions from '@aws-cdk/aws-iot-actions-alpha';\nimport * as iot from '@aws-cdk/aws-iot-alpha';\nimport * as lambda from 'aws-cdk-lib/aws-lambda';\nimport * as s3 from 'aws-cdk-lib/aws-s3';\n\nclass Fixture extends Stack {\n constructor(scope: Construct, id: string) {\n super(scope, id);\n // Code snippet begins after !show marker below\n/// !show\n\n\nconst topic = new sns.Topic(this, 'MyTopic');\n\nconst topicRule = new iot.TopicRule(this, 'TopicRule', {\n sql: iot.IotSql.fromStringAsVer20160323(\n \"SELECT topic(2) as device_id, year, month, day FROM 'device/+/data'\",\n ),\n actions: [\n new actions.SnsTopicAction(topic, {\n messageFormat: actions.SnsActionMessageFormat.JSON, // optional property, default is SnsActionMessageFormat.RAW\n }),\n ],\n});\n/// !hide\n// Code snippet ended before !hide marker above\n }\n}",
530
487
  "syntaxKindCounter": {
531
- "10": 3,
532
- "75": 17,
488
+ "10": 4,
489
+ "75": 19,
533
490
  "104": 2,
534
491
  "192": 1,
535
492
  "193": 2,
536
493
  "194": 7,
537
494
  "196": 1,
538
495
  "197": 3,
539
- "225": 1,
540
- "226": 1,
541
- "242": 1,
542
- "243": 1,
543
- "281": 3
496
+ "225": 2,
497
+ "242": 2,
498
+ "243": 2,
499
+ "254": 1,
500
+ "255": 1,
501
+ "256": 1,
502
+ "281": 3,
503
+ "290": 1
544
504
  },
545
- "fqnsFingerprint": "e7dd86e12a3d5ab566fbaf87a7c3f14cbe7bfa976d28d122c1815fadbcd4e8b9"
505
+ "fqnsFingerprint": "0d0bd8ceffc0610df1fdb207b70f4bc1fc6536d583e91e419c4b494cd3f0c45d"
546
506
  },
547
- "c8e9ba7c954601111cd6c8ba2df9489198e5c315310b087bef54677756077f96": {
507
+ "d40b08cbfc21a350bae8f579dae2592e57b439bf4e3b2a68fcbfa229546ac617": {
548
508
  "translations": {
549
509
  "python": {
550
- "source": "bucket = s3.Bucket(self, \"MyBucket\")\n\niot.TopicRule(self, \"TopicRule\",\n sql=iot.IotSql.from_string_as_ver20160323(\"SELECT * FROM 'device/+/data'\"),\n actions=[\n actions.S3PutObjectAction(bucket,\n access_control=s3.BucketAccessControl.PUBLIC_READ\n )\n ]\n)",
510
+ "source": "import aws_cdk.aws_sns as sns\n\n\ntopic = sns.Topic(self, \"MyTopic\")\n\ntopic_rule = iot.TopicRule(self, \"TopicRule\",\n sql=iot.IotSql.from_string_as_ver20160323(\"SELECT topic(2) as device_id, year, month, day FROM 'device/+/data'\"),\n actions=[\n actions.SnsTopicAction(topic,\n message_format=actions.SnsActionMessageFormat.JSON\n )\n ]\n)",
551
511
  "version": "2"
552
512
  },
553
513
  "csharp": {
554
- "source": "Bucket bucket = new Bucket(this, \"MyBucket\");\n\nnew TopicRule(this, \"TopicRule\", new TopicRuleProps {\n Sql = IotSql.FromStringAsVer20160323(\"SELECT * FROM 'device/+/data'\"),\n Actions = new [] {\n new S3PutObjectAction(bucket, new S3PutObjectActionProps {\n AccessControl = BucketAccessControl.PUBLIC_READ\n }) }\n});",
514
+ "source": "using Amazon.CDK.AWS.SNS;\n\n\nTopic topic = new Topic(this, \"MyTopic\");\n\nTopicRule topicRule = new TopicRule(this, \"TopicRule\", new TopicRuleProps {\n Sql = IotSql.FromStringAsVer20160323(\"SELECT topic(2) as device_id, year, month, day FROM 'device/+/data'\"),\n Actions = new [] {\n new SnsTopicAction(topic, new SnsTopicActionProps {\n MessageFormat = SnsActionMessageFormat.JSON\n }) }\n});",
555
515
  "version": "1"
556
516
  },
557
517
  "java": {
558
- "source": "Bucket bucket = new Bucket(this, \"MyBucket\");\n\nTopicRule.Builder.create(this, \"TopicRule\")\n .sql(IotSql.fromStringAsVer20160323(\"SELECT * FROM 'device/+/data'\"))\n .actions(List.of(\n S3PutObjectAction.Builder.create(bucket)\n .accessControl(BucketAccessControl.PUBLIC_READ)\n .build()))\n .build();",
518
+ "source": "import software.amazon.awscdk.services.sns.*;\n\n\nTopic topic = new Topic(this, \"MyTopic\");\n\nTopicRule topicRule = TopicRule.Builder.create(this, \"TopicRule\")\n .sql(IotSql.fromStringAsVer20160323(\"SELECT topic(2) as device_id, year, month, day FROM 'device/+/data'\"))\n .actions(List.of(\n SnsTopicAction.Builder.create(topic)\n .messageFormat(SnsActionMessageFormat.JSON)\n .build()))\n .build();",
559
519
  "version": "1"
560
520
  },
561
521
  "go": {
562
- "source": "bucket := s3.NewBucket(this, jsii.String(\"MyBucket\"))\n\niot.NewTopicRule(this, jsii.String(\"TopicRule\"), &topicRuleProps{\n\tsql: iot.iotSql.fromStringAsVer20160323(jsii.String(\"SELECT * FROM 'device/+/data'\")),\n\tactions: []iAction{\n\t\tactions.NewS3PutObjectAction(bucket, &s3PutObjectActionProps{\n\t\t\taccessControl: s3.bucketAccessControl_PUBLIC_READ,\n\t\t}),\n\t},\n})",
522
+ "source": "import sns \"github.com/aws/aws-cdk-go/awscdk\"\n\n\ntopic := sns.NewTopic(this, jsii.String(\"MyTopic\"))\n\ntopicRule := iot.NewTopicRule(this, jsii.String(\"TopicRule\"), &topicRuleProps{\n\tsql: iot.iotSql.fromStringAsVer20160323(jsii.String(\"SELECT topic(2) as device_id, year, month, day FROM 'device/+/data'\")),\n\tactions: []iAction{\n\t\tactions.NewSnsTopicAction(topic, &snsTopicActionProps{\n\t\t\tmessageFormat: actions.snsActionMessageFormat_JSON,\n\t\t}),\n\t},\n})",
563
523
  "version": "1"
564
524
  },
565
525
  "$": {
566
- "source": "const bucket = new s3.Bucket(this, 'MyBucket');\n\nnew iot.TopicRule(this, 'TopicRule', {\n sql: iot.IotSql.fromStringAsVer20160323(\"SELECT * FROM 'device/+/data'\"),\n actions: [\n new actions.S3PutObjectAction(bucket, {\n accessControl: s3.BucketAccessControl.PUBLIC_READ,\n }),\n ],\n});",
526
+ "source": "import * as sns from 'aws-cdk-lib/aws-sns';\n\nconst topic = new sns.Topic(this, 'MyTopic');\n\nconst topicRule = new iot.TopicRule(this, 'TopicRule', {\n sql: iot.IotSql.fromStringAsVer20160323(\n \"SELECT topic(2) as device_id, year, month, day FROM 'device/+/data'\",\n ),\n actions: [\n new actions.SnsTopicAction(topic, {\n messageFormat: actions.SnsActionMessageFormat.JSON, // optional property, default is SnsActionMessageFormat.RAW\n }),\n ],\n});",
567
527
  "version": "0"
568
528
  }
569
529
  },
@@ -578,35 +538,38 @@
578
538
  },
579
539
  "didCompile": true,
580
540
  "fqnsReferenced": [
581
- "@aws-cdk/aws-iot-actions-alpha.S3PutObjectAction",
582
- "@aws-cdk/aws-iot-actions-alpha.S3PutObjectActionProps",
541
+ "@aws-cdk/aws-iot-actions-alpha.SnsActionMessageFormat",
542
+ "@aws-cdk/aws-iot-actions-alpha.SnsActionMessageFormat#JSON",
543
+ "@aws-cdk/aws-iot-actions-alpha.SnsTopicAction",
544
+ "@aws-cdk/aws-iot-actions-alpha.SnsTopicActionProps",
583
545
  "@aws-cdk/aws-iot-alpha.IotSql",
584
546
  "@aws-cdk/aws-iot-alpha.IotSql#fromStringAsVer20160323",
585
547
  "@aws-cdk/aws-iot-alpha.TopicRule",
586
548
  "@aws-cdk/aws-iot-alpha.TopicRuleProps",
587
- "aws-cdk-lib.aws_s3.Bucket",
588
- "aws-cdk-lib.aws_s3.BucketAccessControl",
589
- "aws-cdk-lib.aws_s3.BucketAccessControl#PUBLIC_READ",
590
- "aws-cdk-lib.aws_s3.IBucket",
549
+ "aws-cdk-lib.aws_sns.ITopic",
550
+ "aws-cdk-lib.aws_sns.Topic",
591
551
  "constructs.Construct"
592
552
  ],
593
- "fullSource": "// Fixture with packages imported, but nothing else\nimport { Stack } from 'aws-cdk-lib';\nimport { Construct } from 'constructs';\nimport * as actions from '@aws-cdk/aws-iot-actions-alpha';\nimport * as iot from '@aws-cdk/aws-iot-alpha';\nimport * as lambda from 'aws-cdk-lib/aws-lambda';\nimport * as s3 from 'aws-cdk-lib/aws-s3';\n\nclass Fixture extends Stack {\n constructor(scope: Construct, id: string) {\n super(scope, id);\n // Code snippet begins after !show marker below\n/// !show\nconst bucket = new s3.Bucket(this, 'MyBucket');\n\nnew iot.TopicRule(this, 'TopicRule', {\n sql: iot.IotSql.fromStringAsVer20160323(\"SELECT * FROM 'device/+/data'\"),\n actions: [\n new actions.S3PutObjectAction(bucket, {\n accessControl: s3.BucketAccessControl.PUBLIC_READ,\n }),\n ],\n});\n/// !hide\n// Code snippet ended before !hide marker above\n }\n}",
553
+ "fullSource": "// Hoisted imports begin after !show marker below\n/// !show\nimport * as sns from 'aws-cdk-lib/aws-sns';\n/// !hide\n// Hoisted imports ended before !hide marker above\n// Fixture with packages imported, but nothing else\nimport { Stack } from 'aws-cdk-lib';\nimport { Construct } from 'constructs';\nimport * as actions from '@aws-cdk/aws-iot-actions-alpha';\nimport * as iot from '@aws-cdk/aws-iot-alpha';\nimport * as lambda from 'aws-cdk-lib/aws-lambda';\nimport * as s3 from 'aws-cdk-lib/aws-s3';\n\nclass Fixture extends Stack {\n constructor(scope: Construct, id: string) {\n super(scope, id);\n // Code snippet begins after !show marker below\n/// !show\n\n\nconst topic = new sns.Topic(this, 'MyTopic');\n\nconst topicRule = new iot.TopicRule(this, 'TopicRule', {\n sql: iot.IotSql.fromStringAsVer20160323(\n \"SELECT topic(2) as device_id, year, month, day FROM 'device/+/data'\",\n ),\n actions: [\n new actions.SnsTopicAction(topic, {\n messageFormat: actions.SnsActionMessageFormat.JSON, // optional property, default is SnsActionMessageFormat.RAW\n }),\n ],\n});\n/// !hide\n// Code snippet ended before !hide marker above\n }\n}",
594
554
  "syntaxKindCounter": {
595
- "10": 3,
596
- "75": 17,
555
+ "10": 4,
556
+ "75": 19,
597
557
  "104": 2,
598
558
  "192": 1,
599
559
  "193": 2,
600
560
  "194": 7,
601
561
  "196": 1,
602
562
  "197": 3,
603
- "225": 1,
604
- "226": 1,
605
- "242": 1,
606
- "243": 1,
607
- "281": 3
563
+ "225": 2,
564
+ "242": 2,
565
+ "243": 2,
566
+ "254": 1,
567
+ "255": 1,
568
+ "256": 1,
569
+ "281": 3,
570
+ "290": 1
608
571
  },
609
- "fqnsFingerprint": "e7dd86e12a3d5ab566fbaf87a7c3f14cbe7bfa976d28d122c1815fadbcd4e8b9"
572
+ "fqnsFingerprint": "0d0bd8ceffc0610df1fdb207b70f4bc1fc6536d583e91e419c4b494cd3f0c45d"
610
573
  }
611
574
  }
612
575
  }
package/README.md CHANGED
@@ -18,21 +18,6 @@
18
18
  AWS IoT Core lets you connect billions of IoT devices and route trillions of
19
19
  messages to AWS services without managing infrastructure.
20
20
 
21
- ## Installation
22
-
23
- Install the module:
24
-
25
- ```console
26
- $ npm i @aws-cdk/aws-iot
27
- ```
28
-
29
- Import it into your code:
30
-
31
- ```ts nofixture
32
- import * as iot from '@aws-cdk/aws-iot-alpha';
33
- import * as actions from '@aws-cdk/aws-iot-actions-alpha';
34
- ```
35
-
36
21
  ## `TopicRule`
37
22
 
38
23
  Create a topic rule that give your devices the ability to interact with AWS services.
package/lib/action.d.ts CHANGED
@@ -8,8 +8,9 @@ export interface IAction {
8
8
  * Returns the topic rule action specification.
9
9
  *
10
10
  * @param topicRule The TopicRule that would trigger this action.
11
+ * @internal
11
12
  */
12
- bind(topicRule: ITopicRule): ActionConfig;
13
+ _bind(topicRule: ITopicRule): ActionConfig;
13
14
  }
14
15
  /**
15
16
  * Properties for an topic rule action
package/lib/action.js CHANGED
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDZm5Ub3BpY1J1bGUgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtaW90JztcbmltcG9ydCB7IElUb3BpY1J1bGUgfSBmcm9tICcuL3RvcGljLXJ1bGUnO1xuXG4vKipcbiAqIEFuIGFic3RyYWN0IGFjdGlvbiBmb3IgVG9waWNSdWxlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIElBY3Rpb24ge1xuICAvKipcbiAgICogUmV0dXJucyB0aGUgdG9waWMgcnVsZSBhY3Rpb24gc3BlY2lmaWNhdGlvbi5cbiAgICpcbiAgICogQHBhcmFtIHRvcGljUnVsZSBUaGUgVG9waWNSdWxlIHRoYXQgd291bGQgdHJpZ2dlciB0aGlzIGFjdGlvbi5cbiAgICovXG4gIGJpbmQodG9waWNSdWxlOiBJVG9waWNSdWxlKTogQWN0aW9uQ29uZmlnO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGFuIHRvcGljIHJ1bGUgYWN0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQWN0aW9uQ29uZmlnIHtcbiAgLyoqXG4gICAqIFRoZSBjb25maWd1cmF0aW9uIGZvciB0aGlzIGFjdGlvbi5cbiAgICovXG4gIHJlYWRvbmx5IGNvbmZpZ3VyYXRpb246IENmblRvcGljUnVsZS5BY3Rpb25Qcm9wZXJ0eTtcbn1cbiJdfQ==
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDZm5Ub3BpY1J1bGUgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtaW90JztcbmltcG9ydCB7IElUb3BpY1J1bGUgfSBmcm9tICcuL3RvcGljLXJ1bGUnO1xuXG4vKipcbiAqIEFuIGFic3RyYWN0IGFjdGlvbiBmb3IgVG9waWNSdWxlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIElBY3Rpb24ge1xuICAvKipcbiAgICogUmV0dXJucyB0aGUgdG9waWMgcnVsZSBhY3Rpb24gc3BlY2lmaWNhdGlvbi5cbiAgICpcbiAgICogQHBhcmFtIHRvcGljUnVsZSBUaGUgVG9waWNSdWxlIHRoYXQgd291bGQgdHJpZ2dlciB0aGlzIGFjdGlvbi5cbiAgICogQGludGVybmFsXG4gICAqL1xuICBfYmluZCh0b3BpY1J1bGU6IElUb3BpY1J1bGUpOiBBY3Rpb25Db25maWc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYW4gdG9waWMgcnVsZSBhY3Rpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBY3Rpb25Db25maWcge1xuICAvKipcbiAgICogVGhlIGNvbmZpZ3VyYXRpb24gZm9yIHRoaXMgYWN0aW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgY29uZmlndXJhdGlvbjogQ2ZuVG9waWNSdWxlLkFjdGlvblByb3BlcnR5O1xufVxuIl19
package/lib/iot-sql.js CHANGED
@@ -38,7 +38,7 @@ class IotSql {
38
38
  }
39
39
  exports.IotSql = IotSql;
40
40
  _a = JSII_RTTI_SYMBOL_1;
41
- IotSql[_a] = { fqn: "@aws-cdk/aws-iot-alpha.IotSql", version: "2.36.0-alpha.0" };
41
+ IotSql[_a] = { fqn: "@aws-cdk/aws-iot-alpha.IotSql", version: "2.38.0-alpha.0" };
42
42
  class IotSqlImpl extends IotSql {
43
43
  constructor(version, sql) {
44
44
  super();
package/lib/topic-rule.js CHANGED
@@ -31,7 +31,7 @@ class TopicRule extends aws_cdk_lib_1.Resource {
31
31
  actions: aws_cdk_lib_1.Lazy.any({ produce: () => this.actions }),
32
32
  awsIotSqlVersion: sqlConfig.awsIotSqlVersion,
33
33
  description: props.description,
34
- errorAction: props.errorAction?.bind(this).configuration,
34
+ errorAction: props.errorAction?._bind(this).configuration,
35
35
  ruleDisabled: props.enabled === undefined ? undefined : !props.enabled,
36
36
  sql: sqlConfig.sql,
37
37
  },
@@ -85,7 +85,7 @@ class TopicRule extends aws_cdk_lib_1.Resource {
85
85
  }
86
86
  throw error;
87
87
  }
88
- const { configuration } = action.bind(this);
88
+ const { configuration } = action._bind(this);
89
89
  const keys = Object.keys(configuration);
90
90
  if (keys.length === 0) {
91
91
  throw new Error('An action property cannot be an empty object.');
@@ -98,5 +98,5 @@ class TopicRule extends aws_cdk_lib_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.36.0-alpha.0" };
102
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9waWMtcnVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInRvcGljLXJ1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsNkNBQTBFO0FBSTFFLGlEQUFtRDtBQW9FbkQ7O0dBRUc7QUFDSCxNQUFhLFNBQVUsU0FBUSxzQkFBUTtJQXNDckMsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFxQjtRQUM3RCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLFlBQVksRUFBRSxLQUFLLENBQUMsYUFBYTtTQUNsQyxDQUFDLENBQUM7UUFMWSxZQUFPLEdBQWtDLEVBQUUsQ0FBQzs7Ozs7OytDQXBDbEQsU0FBUzs7OztRQTJDbEIsTUFBTSxTQUFTLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFdkMsTUFBTSxRQUFRLEdBQUcsSUFBSSxzQkFBWSxDQUFDLElBQUksRUFBRSxVQUFVLEVBQUU7WUFDbEQsUUFBUSxFQUFFLElBQUksQ0FBQyxZQUFZO1lBQzNCLGdCQUFnQixFQUFFO2dCQUNoQixPQUFPLEVBQUUsa0JBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUNsRCxnQkFBZ0IsRUFBRSxTQUFTLENBQUMsZ0JBQWdCO2dCQUM1QyxXQUFXLEVBQUUsS0FBSyxDQUFDLFdBQVc7Z0JBQzlCLFdBQVcsRUFBRSxLQUFLLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxhQUFhO2dCQUN4RCxZQUFZLEVBQUUsS0FBSyxDQUFDLE9BQU8sS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTztnQkFDdEUsR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHO2FBQ25CO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsdUJBQXVCLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRTtZQUNqRSxPQUFPLEVBQUUsS0FBSztZQUNkLFFBQVEsRUFBRSxNQUFNO1lBQ2hCLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWTtTQUNoQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFakUsS0FBSyxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDOUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN6QixDQUFDLENBQUMsQ0FBQztLQUNKO0lBbEVEOzs7Ozs7T0FNRztJQUNJLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFnQixFQUFFLEVBQVUsRUFBRSxZQUFvQjtRQUMvRSxNQUFNLEtBQUssR0FBRyxtQkFBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxRQUFRLENBQUMsWUFBWSxFQUFFLHVCQUFTLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUNwRixJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRTtZQUN2QixNQUFNLElBQUksS0FBSyxDQUFDLG9DQUFvQyxZQUFZLEdBQUcsQ0FBQyxDQUFDO1NBQ3RFO1FBQ0QsTUFBTSxZQUFZLEdBQUcsS0FBSyxDQUFDLFlBQVksQ0FBQztRQUV4QyxNQUFNLE1BQU8sU0FBUSxzQkFBUTtZQUE3Qjs7Z0JBQ2tCLGlCQUFZLEdBQUcsWUFBWSxDQUFDO2dCQUM1QixrQkFBYSxHQUFHLFlBQVksQ0FBQztZQUMvQyxDQUFDO1NBQUE7UUFDRCxPQUFPLElBQUksTUFBTSxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUU7WUFDM0Isa0JBQWtCLEVBQUUsWUFBWTtTQUNqQyxDQUFDLENBQUM7S0FDSjtJQStDRDs7OztPQUlHO0lBQ0ksU0FBUyxDQUFDLE1BQWU7Ozs7Ozs7Ozs7UUFDOUIsTUFBTSxFQUFFLGFBQWEsRUFBRSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFNUMsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN4QyxJQUFJLElBQUksQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQ3JCLE1BQU0sSUFBSSxLQUFLLENBQUMsK0NBQStDLENBQUMsQ0FBQztTQUNsRTtRQUNELElBQUksSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDbkIsTUFBTSxJQUFJLEtBQUssQ0FBQywyREFBMkQsSUFBSSxFQUFFLENBQUMsQ0FBQztTQUNwRjtRQUVELElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0tBQ2xDOztBQXRGSCw4QkF1RkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBcm5Gb3JtYXQsIFJlc291cmNlLCBTdGFjaywgSVJlc291cmNlLCBMYXp5IH0gZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQgeyBJQWN0aW9uIH0gZnJvbSAnLi9hY3Rpb24nO1xuaW1wb3J0IHsgSW90U3FsIH0gZnJvbSAnLi9pb3Qtc3FsJztcbmltcG9ydCB7IENmblRvcGljUnVsZSB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1pb3QnO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgYW4gQVdTIElvVCBSdWxlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSVRvcGljUnVsZSBleHRlbmRzIElSZXNvdXJjZSB7XG4gIC8qKlxuICAgKiBUaGUgdmFsdWUgb2YgdGhlIHRvcGljIHJ1bGUgQW1hem9uIFJlc291cmNlIE5hbWUgKEFSTiksIHN1Y2ggYXNcbiAgICogYXJuOmF3czppb3Q6dXMtZWFzdC0yOjEyMzQ1Njc4OTAxMjpydWxlL3J1bGVfbmFtZVxuICAgKlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSB0b3BpY1J1bGVBcm46IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG5hbWUgdG9waWMgcnVsZVxuICAgKlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSB0b3BpY1J1bGVOYW1lOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgZGVmaW5pbmcgYW4gQVdTIElvVCBSdWxlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVG9waWNSdWxlUHJvcHMge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIHRvcGljIHJ1bGUuXG4gICAqIEBkZWZhdWx0IE5vbmVcbiAgICovXG4gIHJlYWRvbmx5IHRvcGljUnVsZU5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBhY3Rpb25zIGFzc29jaWF0ZWQgd2l0aCB0aGUgdG9waWMgcnVsZS5cbiAgICpcbiAgICogQGRlZmF1bHQgTm8gYWN0aW9ucyB3aWxsIGJlIHBlcmZvcm1cbiAgICovXG4gIHJlYWRvbmx5IGFjdGlvbnM/OiBJQWN0aW9uW107XG5cbiAgLyoqXG4gICAqIEEgdGV4dHVhbCBkZXNjcmlwdGlvbiBvZiB0aGUgdG9waWMgcnVsZS5cbiAgICpcbiAgICogQGRlZmF1bHQgTm9uZVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBhY3Rpb24gQVdTIElvVCBwZXJmb3JtcyB3aGVuIGl0IGlzIHVuYWJsZSB0byBwZXJmb3JtIGEgcnVsZSdzIGFjdGlvbi5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBubyBhY3Rpb24gd2lsbCBiZSBwZXJmb3JtZWRcbiAgICovXG4gIHJlYWRvbmx5IGVycm9yQWN0aW9uPzogSUFjdGlvbjtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHdoZXRoZXIgdGhlIHJ1bGUgaXMgZW5hYmxlZC5cbiAgICpcbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgZW5hYmxlZD86IGJvb2xlYW5cblxuICAvKipcbiAgICogQSBzaW1wbGlmaWVkIFNRTCBzeW50YXggdG8gZmlsdGVyIG1lc3NhZ2VzIHJlY2VpdmVkIG9uIGFuIE1RVFQgdG9waWMgYW5kIHB1c2ggdGhlIGRhdGEgZWxzZXdoZXJlLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9pb3QvbGF0ZXN0L2RldmVsb3Blcmd1aWRlL2lvdC1zcWwtcmVmZXJlbmNlLmh0bWxcbiAgICovXG4gIHJlYWRvbmx5IHNxbDogSW90U3FsO1xufVxuXG4vKipcbiAqIERlZmluZXMgYW4gQVdTIElvVCBSdWxlIGluIHRoaXMgc3RhY2suXG4gKi9cbmV4cG9ydCBjbGFzcyBUb3BpY1J1bGUgZXh0ZW5kcyBSZXNvdXJjZSBpbXBsZW1lbnRzIElUb3BpY1J1bGUge1xuICAvKipcbiAgICogSW1wb3J0IGFuIGV4aXN0aW5nIEFXUyBJb1QgUnVsZSBwcm92aWRlZCBhbiBBUk5cbiAgICpcbiAgICogQHBhcmFtIHNjb3BlIFRoZSBwYXJlbnQgY3JlYXRpbmcgY29uc3RydWN0ICh1c3VhbGx5IGB0aGlzYCkuXG4gICAqIEBwYXJhbSBpZCBUaGUgY29uc3RydWN0J3MgbmFtZS5cbiAgICogQHBhcmFtIHRvcGljUnVsZUFybiBBV1MgSW9UIFJ1bGUgQVJOIChpLmUuIGFybjphd3M6aW90OjxyZWdpb24+OjxhY2NvdW50LWlkPjpydWxlL015UnVsZSkuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGZyb21Ub3BpY1J1bGVBcm4oc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgdG9waWNSdWxlQXJuOiBzdHJpbmcpOiBJVG9waWNSdWxlIHtcbiAgICBjb25zdCBwYXJ0cyA9IFN0YWNrLm9mKHNjb3BlKS5zcGxpdEFybih0b3BpY1J1bGVBcm4sIEFybkZvcm1hdC5TTEFTSF9SRVNPVVJDRV9OQU1FKTtcbiAgICBpZiAoIXBhcnRzLnJlc291cmNlTmFtZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBNaXNzaW5nIHRvcGljIHJ1bGUgbmFtZSBpbiBBUk46ICcke3RvcGljUnVsZUFybn0nYCk7XG4gICAgfVxuICAgIGNvbnN0IHJlc291cmNlTmFtZSA9IHBhcnRzLnJlc291cmNlTmFtZTtcblxuICAgIGNsYXNzIEltcG9ydCBleHRlbmRzIFJlc291cmNlIGltcGxlbWVudHMgSVRvcGljUnVsZSB7XG4gICAgICBwdWJsaWMgcmVhZG9ubHkgdG9waWNSdWxlQXJuID0gdG9waWNSdWxlQXJuO1xuICAgICAgcHVibGljIHJlYWRvbmx5IHRvcGljUnVsZU5hbWUgPSByZXNvdXJjZU5hbWU7XG4gICAgfVxuICAgIHJldHVybiBuZXcgSW1wb3J0KHNjb3BlLCBpZCwge1xuICAgICAgZW52aXJvbm1lbnRGcm9tQXJuOiB0b3BpY1J1bGVBcm4sXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQXJuIG9mIHRoaXMgdG9waWMgcnVsZVxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgdG9waWNSdWxlQXJuOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhpcyB0b3BpYyBydWxlXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSB0b3BpY1J1bGVOYW1lOiBzdHJpbmc7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBhY3Rpb25zOiBDZm5Ub3BpY1J1bGUuQWN0aW9uUHJvcGVydHlbXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBUb3BpY1J1bGVQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgcGh5c2ljYWxOYW1lOiBwcm9wcy50b3BpY1J1bGVOYW1lLFxuICAgIH0pO1xuXG4gICAgY29uc3Qgc3FsQ29uZmlnID0gcHJvcHMuc3FsLmJpbmQodGhpcyk7XG5cbiAgICBjb25zdCByZXNvdXJjZSA9IG5ldyBDZm5Ub3BpY1J1bGUodGhpcywgJ1Jlc291cmNlJywge1xuICAgICAgcnVsZU5hbWU6IHRoaXMucGh5c2ljYWxOYW1lLFxuICAgICAgdG9waWNSdWxlUGF5bG9hZDoge1xuICAgICAgICBhY3Rpb25zOiBMYXp5LmFueSh7IHByb2R1Y2U6ICgpID0+IHRoaXMuYWN0aW9ucyB9KSxcbiAgICAgICAgYXdzSW90U3FsVmVyc2lvbjogc3FsQ29uZmlnLmF3c0lvdFNxbFZlcnNpb24sXG4gICAgICAgIGRlc2NyaXB0aW9uOiBwcm9wcy5kZXNjcmlwdGlvbixcbiAgICAgICAgZXJyb3JBY3Rpb246IHByb3BzLmVycm9yQWN0aW9uPy5iaW5kKHRoaXMpLmNvbmZpZ3VyYXRpb24sXG4gICAgICAgIHJ1bGVEaXNhYmxlZDogcHJvcHMuZW5hYmxlZCA9PT0gdW5kZWZpbmVkID8gdW5kZWZpbmVkIDogIXByb3BzLmVuYWJsZWQsXG4gICAgICAgIHNxbDogc3FsQ29uZmlnLnNxbCxcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICB0aGlzLnRvcGljUnVsZUFybiA9IHRoaXMuZ2V0UmVzb3VyY2VBcm5BdHRyaWJ1dGUocmVzb3VyY2UuYXR0ckFybiwge1xuICAgICAgc2VydmljZTogJ2lvdCcsXG4gICAgICByZXNvdXJjZTogJ3J1bGUnLFxuICAgICAgcmVzb3VyY2VOYW1lOiB0aGlzLnBoeXNpY2FsTmFtZSxcbiAgICB9KTtcbiAgICB0aGlzLnRvcGljUnVsZU5hbWUgPSB0aGlzLmdldFJlc291cmNlTmFtZUF0dHJpYnV0ZShyZXNvdXJjZS5yZWYpO1xuXG4gICAgcHJvcHMuYWN0aW9ucz8uZm9yRWFjaChhY3Rpb24gPT4ge1xuICAgICAgdGhpcy5hZGRBY3Rpb24oYWN0aW9uKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgYSBhY3Rpb24gdG8gdGhlIHRvcGljIHJ1bGUuXG4gICAqXG4gICAqIEBwYXJhbSBhY3Rpb24gdGhlIGFjdGlvbiB0byBhc3NvY2lhdGUgd2l0aCB0aGUgdG9waWMgcnVsZS5cbiAgICovXG4gIHB1YmxpYyBhZGRBY3Rpb24oYWN0aW9uOiBJQWN0aW9uKTogdm9pZCB7XG4gICAgY29uc3QgeyBjb25maWd1cmF0aW9uIH0gPSBhY3Rpb24uYmluZCh0aGlzKTtcblxuICAgIGNvbnN0IGtleXMgPSBPYmplY3Qua2V5cyhjb25maWd1cmF0aW9uKTtcbiAgICBpZiAoa2V5cy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignQW4gYWN0aW9uIHByb3BlcnR5IGNhbm5vdCBiZSBhbiBlbXB0eSBvYmplY3QuJyk7XG4gICAgfVxuICAgIGlmIChrZXlzLmxlbmd0aCA+IDEpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgQW4gYWN0aW9uIHByb3BlcnR5IGNhbm5vdCBoYXZlIG11bHRpcGxlIGtleXMsIHJlY2VpdmVkOiAke2tleXN9YCk7XG4gICAgfVxuXG4gICAgdGhpcy5hY3Rpb25zLnB1c2goY29uZmlndXJhdGlvbik7XG4gIH1cbn1cbiJdfQ==
101
+ TopicRule[_a] = { fqn: "@aws-cdk/aws-iot-alpha.TopicRule", version: "2.38.0-alpha.0" };
102
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9waWMtcnVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInRvcGljLXJ1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsNkNBQTBFO0FBSTFFLGlEQUFtRDtBQW9FbkQ7O0dBRUc7QUFDSCxNQUFhLFNBQVUsU0FBUSxzQkFBUTtJQXNDckMsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFxQjtRQUM3RCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLFlBQVksRUFBRSxLQUFLLENBQUMsYUFBYTtTQUNsQyxDQUFDLENBQUM7UUFMWSxZQUFPLEdBQWtDLEVBQUUsQ0FBQzs7Ozs7OytDQXBDbEQsU0FBUzs7OztRQTJDbEIsTUFBTSxTQUFTLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFdkMsTUFBTSxRQUFRLEdBQUcsSUFBSSxzQkFBWSxDQUFDLElBQUksRUFBRSxVQUFVLEVBQUU7WUFDbEQsUUFBUSxFQUFFLElBQUksQ0FBQyxZQUFZO1lBQzNCLGdCQUFnQixFQUFFO2dCQUNoQixPQUFPLEVBQUUsa0JBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUNsRCxnQkFBZ0IsRUFBRSxTQUFTLENBQUMsZ0JBQWdCO2dCQUM1QyxXQUFXLEVBQUUsS0FBSyxDQUFDLFdBQVc7Z0JBQzlCLFdBQVcsRUFBRSxLQUFLLENBQUMsV0FBVyxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxhQUFhO2dCQUN6RCxZQUFZLEVBQUUsS0FBSyxDQUFDLE9BQU8sS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTztnQkFDdEUsR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHO2FBQ25CO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsdUJBQXVCLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRTtZQUNqRSxPQUFPLEVBQUUsS0FBSztZQUNkLFFBQVEsRUFBRSxNQUFNO1lBQ2hCLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWTtTQUNoQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFakUsS0FBSyxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDOUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN6QixDQUFDLENBQUMsQ0FBQztLQUNKO0lBbEVEOzs7Ozs7T0FNRztJQUNJLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFnQixFQUFFLEVBQVUsRUFBRSxZQUFvQjtRQUMvRSxNQUFNLEtBQUssR0FBRyxtQkFBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxRQUFRLENBQUMsWUFBWSxFQUFFLHVCQUFTLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUNwRixJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRTtZQUN2QixNQUFNLElBQUksS0FBSyxDQUFDLG9DQUFvQyxZQUFZLEdBQUcsQ0FBQyxDQUFDO1NBQ3RFO1FBQ0QsTUFBTSxZQUFZLEdBQUcsS0FBSyxDQUFDLFlBQVksQ0FBQztRQUV4QyxNQUFNLE1BQU8sU0FBUSxzQkFBUTtZQUE3Qjs7Z0JBQ2tCLGlCQUFZLEdBQUcsWUFBWSxDQUFDO2dCQUM1QixrQkFBYSxHQUFHLFlBQVksQ0FBQztZQUMvQyxDQUFDO1NBQUE7UUFDRCxPQUFPLElBQUksTUFBTSxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUU7WUFDM0Isa0JBQWtCLEVBQUUsWUFBWTtTQUNqQyxDQUFDLENBQUM7S0FDSjtJQStDRDs7OztPQUlHO0lBQ0ksU0FBUyxDQUFDLE1BQWU7Ozs7Ozs7Ozs7UUFDOUIsTUFBTSxFQUFFLGFBQWEsRUFBRSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFN0MsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN4QyxJQUFJLElBQUksQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQ3JCLE1BQU0sSUFBSSxLQUFLLENBQUMsK0NBQStDLENBQUMsQ0FBQztTQUNsRTtRQUNELElBQUksSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDbkIsTUFBTSxJQUFJLEtBQUssQ0FBQywyREFBMkQsSUFBSSxFQUFFLENBQUMsQ0FBQztTQUNwRjtRQUVELElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0tBQ2xDOztBQXRGSCw4QkF1RkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBcm5Gb3JtYXQsIFJlc291cmNlLCBTdGFjaywgSVJlc291cmNlLCBMYXp5IH0gZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQgeyBJQWN0aW9uIH0gZnJvbSAnLi9hY3Rpb24nO1xuaW1wb3J0IHsgSW90U3FsIH0gZnJvbSAnLi9pb3Qtc3FsJztcbmltcG9ydCB7IENmblRvcGljUnVsZSB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1pb3QnO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgYW4gQVdTIElvVCBSdWxlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSVRvcGljUnVsZSBleHRlbmRzIElSZXNvdXJjZSB7XG4gIC8qKlxuICAgKiBUaGUgdmFsdWUgb2YgdGhlIHRvcGljIHJ1bGUgQW1hem9uIFJlc291cmNlIE5hbWUgKEFSTiksIHN1Y2ggYXNcbiAgICogYXJuOmF3czppb3Q6dXMtZWFzdC0yOjEyMzQ1Njc4OTAxMjpydWxlL3J1bGVfbmFtZVxuICAgKlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSB0b3BpY1J1bGVBcm46IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG5hbWUgdG9waWMgcnVsZVxuICAgKlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSB0b3BpY1J1bGVOYW1lOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgZGVmaW5pbmcgYW4gQVdTIElvVCBSdWxlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVG9waWNSdWxlUHJvcHMge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIHRvcGljIHJ1bGUuXG4gICAqIEBkZWZhdWx0IE5vbmVcbiAgICovXG4gIHJlYWRvbmx5IHRvcGljUnVsZU5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBhY3Rpb25zIGFzc29jaWF0ZWQgd2l0aCB0aGUgdG9waWMgcnVsZS5cbiAgICpcbiAgICogQGRlZmF1bHQgTm8gYWN0aW9ucyB3aWxsIGJlIHBlcmZvcm1cbiAgICovXG4gIHJlYWRvbmx5IGFjdGlvbnM/OiBJQWN0aW9uW107XG5cbiAgLyoqXG4gICAqIEEgdGV4dHVhbCBkZXNjcmlwdGlvbiBvZiB0aGUgdG9waWMgcnVsZS5cbiAgICpcbiAgICogQGRlZmF1bHQgTm9uZVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBhY3Rpb24gQVdTIElvVCBwZXJmb3JtcyB3aGVuIGl0IGlzIHVuYWJsZSB0byBwZXJmb3JtIGEgcnVsZSdzIGFjdGlvbi5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBubyBhY3Rpb24gd2lsbCBiZSBwZXJmb3JtZWRcbiAgICovXG4gIHJlYWRvbmx5IGVycm9yQWN0aW9uPzogSUFjdGlvbjtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHdoZXRoZXIgdGhlIHJ1bGUgaXMgZW5hYmxlZC5cbiAgICpcbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgZW5hYmxlZD86IGJvb2xlYW5cblxuICAvKipcbiAgICogQSBzaW1wbGlmaWVkIFNRTCBzeW50YXggdG8gZmlsdGVyIG1lc3NhZ2VzIHJlY2VpdmVkIG9uIGFuIE1RVFQgdG9waWMgYW5kIHB1c2ggdGhlIGRhdGEgZWxzZXdoZXJlLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9pb3QvbGF0ZXN0L2RldmVsb3Blcmd1aWRlL2lvdC1zcWwtcmVmZXJlbmNlLmh0bWxcbiAgICovXG4gIHJlYWRvbmx5IHNxbDogSW90U3FsO1xufVxuXG4vKipcbiAqIERlZmluZXMgYW4gQVdTIElvVCBSdWxlIGluIHRoaXMgc3RhY2suXG4gKi9cbmV4cG9ydCBjbGFzcyBUb3BpY1J1bGUgZXh0ZW5kcyBSZXNvdXJjZSBpbXBsZW1lbnRzIElUb3BpY1J1bGUge1xuICAvKipcbiAgICogSW1wb3J0IGFuIGV4aXN0aW5nIEFXUyBJb1QgUnVsZSBwcm92aWRlZCBhbiBBUk5cbiAgICpcbiAgICogQHBhcmFtIHNjb3BlIFRoZSBwYXJlbnQgY3JlYXRpbmcgY29uc3RydWN0ICh1c3VhbGx5IGB0aGlzYCkuXG4gICAqIEBwYXJhbSBpZCBUaGUgY29uc3RydWN0J3MgbmFtZS5cbiAgICogQHBhcmFtIHRvcGljUnVsZUFybiBBV1MgSW9UIFJ1bGUgQVJOIChpLmUuIGFybjphd3M6aW90OjxyZWdpb24+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.36.0-alpha.0",
3
+ "version": "2.38.0-alpha.0",
4
4
  "private": false,
5
5
  "description": "The CDK Construct Library for AWS::IoT",
6
6
  "main": "lib/index.js",
@@ -81,24 +81,29 @@
81
81
  },
82
82
  "license": "Apache-2.0",
83
83
  "devDependencies": {
84
- "@aws-cdk/cdk-build-tools": "2.36.0",
85
- "@aws-cdk/integ-runner": "2.36.0",
86
- "@aws-cdk/cfn2ts": "2.36.0",
87
- "@aws-cdk/pkglint": "2.36.0",
84
+ "@aws-cdk/cdk-build-tools": "2.38.0",
85
+ "@aws-cdk/integ-runner": "2.38.0",
86
+ "@aws-cdk/cfn2ts": "2.38.0",
87
+ "@aws-cdk/pkglint": "2.38.0",
88
88
  "@types/jest": "^27.5.2",
89
89
  "jest": "^27.5.1",
90
- "aws-cdk-lib": "2.36.0",
90
+ "aws-cdk-lib": "2.38.0",
91
91
  "constructs": "^10.0.0"
92
92
  },
93
93
  "dependencies": {},
94
94
  "homepage": "https://github.com/aws/aws-cdk",
95
95
  "peerDependencies": {
96
- "aws-cdk-lib": "^2.36.0",
96
+ "aws-cdk-lib": "^2.38.0",
97
97
  "constructs": "^10.0.0"
98
98
  },
99
99
  "engines": {
100
100
  "node": ">= 14.15.0"
101
101
  },
102
+ "awslint": {
103
+ "exclude": [
104
+ "*:*"
105
+ ]
106
+ },
102
107
  "stability": "experimental",
103
108
  "maturity": "experimental",
104
109
  "awscdkio": {
@@ -107,11 +112,6 @@
107
112
  "publishConfig": {
108
113
  "tag": "latest"
109
114
  },
110
- "awslint": {
111
- "exclude": [
112
- "*:*"
113
- ]
114
- },
115
115
  "pkglint": {
116
116
  "exclude": [
117
117
  "naming/package-matches-directory",