@aws-cdk/aws-iotevents-alpha 2.35.0-alpha.0 → 2.37.1-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.35.0",
11
+ "aws-cdk-lib": "^2.37.1",
12
12
  "constructs": "^10.0.0"
13
13
  },
14
14
  "dependencyClosure": {
@@ -3046,7 +3046,7 @@
3046
3046
  },
3047
3047
  "name": "@aws-cdk/aws-iotevents-alpha",
3048
3048
  "readme": {
3049
- "markdown": "# AWS::IoTEvents Construct Library\n\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 Events enables you to monitor your equipment or device fleets for\nfailures or changes in operation, and to trigger actions when such events\noccur.\n\n## Installation\n\nInstall the module:\n\n```console\n$ npm i @aws-cdk/aws-iotevents\n```\n\nImport it into your code:\n\n```ts nofixture\nimport * as iotevents from '@aws-cdk/aws-iotevents-alpha';\n```\n\n## `DetectorModel`\n\nThe following example creates an AWS IoT Events detector model to your stack.\nThe detector model need a reference to at least one AWS IoT Events input.\nAWS IoT Events inputs enable the detector to get MQTT payload values from IoT Core rules.\n\nYou can define built-in actions to use a timer or set a variable, or send data to other AWS resources.\nSee also [@aws-cdk/aws-iotevents-actions](https://docs.aws.amazon.com/cdk/api/v1/docs/aws-iotevents-actions-readme.html) for other actions.\n\n```ts\nimport * as iotevents from '@aws-cdk/aws-iotevents-alpha';\nimport * as actions from '@aws-cdk/aws-iotevents-actions-alpha';\nimport * as lambda from 'aws-cdk-lib/aws-lambda';\n\ndeclare const func: lambda.IFunction;\n\nconst input = new iotevents.Input(this, 'MyInput', {\n inputName: 'my_input', // optional\n attributeJsonPaths: ['payload.deviceId', 'payload.temperature'],\n});\n\nconst warmState = new iotevents.State({\n stateName: 'warm',\n onEnter: [{\n eventName: 'test-enter-event',\n condition: iotevents.Expression.currentInput(input),\n actions: [new actions.LambdaInvokeAction(func)], // optional\n }],\n onInput: [{ // optional\n eventName: 'test-input-event',\n actions: [new actions.LambdaInvokeAction(func)],\n }],\n onExit: [{ // optional\n eventName: 'test-exit-event',\n actions: [new actions.LambdaInvokeAction(func)],\n }],\n});\nconst coldState = new iotevents.State({\n stateName: 'cold',\n});\n\n// transit to coldState when temperature is less than 15\nwarmState.transitionTo(coldState, {\n eventName: 'to_coldState', // optional property, default by combining the names of the States\n when: iotevents.Expression.lt(\n iotevents.Expression.inputAttribute(input, 'payload.temperature'),\n iotevents.Expression.fromString('15'),\n ),\n executing: [new actions.LambdaInvokeAction(func)], // optional\n});\n// transit to warmState when temperature is greater than or equal to 15\ncoldState.transitionTo(warmState, {\n when: iotevents.Expression.gte(\n iotevents.Expression.inputAttribute(input, 'payload.temperature'),\n iotevents.Expression.fromString('15'),\n ),\n});\n\nnew iotevents.DetectorModel(this, 'MyDetectorModel', {\n detectorModelName: 'test-detector-model', // optional\n description: 'test-detector-model-description', // optional property, default is none\n evaluationMethod: iotevents.EventEvaluation.SERIAL, // optional property, default is iotevents.EventEvaluation.BATCH\n detectorKey: 'payload.deviceId', // optional property, default is none and single detector instance will be created and all inputs will be routed to it\n initialState: warmState,\n});\n```\n\nTo grant permissions to put messages in the input,\nyou can use the `grantWrite()` method:\n\n```ts\nimport * as iam from 'aws-cdk-lib/aws-iam';\nimport * as iotevents from '@aws-cdk/aws-iotevents-alpha';\n\ndeclare const grantable: iam.IGrantable;\nconst input = iotevents.Input.fromInputName(this, 'MyInput', 'my_input');\n\ninput.grantWrite(grantable);\n```\n"
3049
+ "markdown": "# AWS::IoTEvents Construct Library\n\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 Events enables you to monitor your equipment or device fleets for\nfailures or changes in operation, and to trigger actions when such events\noccur.\n\n## `DetectorModel`\n\nThe following example creates an AWS IoT Events detector model to your stack.\nThe detector model need a reference to at least one AWS IoT Events input.\nAWS IoT Events inputs enable the detector to get MQTT payload values from IoT Core rules.\n\nYou can define built-in actions to use a timer or set a variable, or send data to other AWS resources.\nSee also [@aws-cdk/aws-iotevents-actions](https://docs.aws.amazon.com/cdk/api/v1/docs/aws-iotevents-actions-readme.html) for other actions.\n\n```ts\nimport * as iotevents from '@aws-cdk/aws-iotevents-alpha';\nimport * as actions from '@aws-cdk/aws-iotevents-actions-alpha';\nimport * as lambda from 'aws-cdk-lib/aws-lambda';\n\ndeclare const func: lambda.IFunction;\n\nconst input = new iotevents.Input(this, 'MyInput', {\n inputName: 'my_input', // optional\n attributeJsonPaths: ['payload.deviceId', 'payload.temperature'],\n});\n\nconst warmState = new iotevents.State({\n stateName: 'warm',\n onEnter: [{\n eventName: 'test-enter-event',\n condition: iotevents.Expression.currentInput(input),\n actions: [new actions.LambdaInvokeAction(func)], // optional\n }],\n onInput: [{ // optional\n eventName: 'test-input-event',\n actions: [new actions.LambdaInvokeAction(func)],\n }],\n onExit: [{ // optional\n eventName: 'test-exit-event',\n actions: [new actions.LambdaInvokeAction(func)],\n }],\n});\nconst coldState = new iotevents.State({\n stateName: 'cold',\n});\n\n// transit to coldState when temperature is less than 15\nwarmState.transitionTo(coldState, {\n eventName: 'to_coldState', // optional property, default by combining the names of the States\n when: iotevents.Expression.lt(\n iotevents.Expression.inputAttribute(input, 'payload.temperature'),\n iotevents.Expression.fromString('15'),\n ),\n executing: [new actions.LambdaInvokeAction(func)], // optional\n});\n// transit to warmState when temperature is greater than or equal to 15\ncoldState.transitionTo(warmState, {\n when: iotevents.Expression.gte(\n iotevents.Expression.inputAttribute(input, 'payload.temperature'),\n iotevents.Expression.fromString('15'),\n ),\n});\n\nnew iotevents.DetectorModel(this, 'MyDetectorModel', {\n detectorModelName: 'test-detector-model', // optional\n description: 'test-detector-model-description', // optional property, default is none\n evaluationMethod: iotevents.EventEvaluation.SERIAL, // optional property, default is iotevents.EventEvaluation.BATCH\n detectorKey: 'payload.deviceId', // optional property, default is none and single detector instance will be created and all inputs will be routed to it\n initialState: warmState,\n});\n```\n\nTo grant permissions to put messages in the input,\nyou can use the `grantWrite()` method:\n\n```ts\nimport * as iam from 'aws-cdk-lib/aws-iam';\nimport * as iotevents from '@aws-cdk/aws-iotevents-alpha';\n\ndeclare const grantable: iam.IGrantable;\nconst input = iotevents.Input.fromInputName(this, 'MyInput', 'my_input');\n\ninput.grantWrite(grantable);\n```\n"
3050
3050
  },
3051
3051
  "repository": {
3052
3052
  "directory": "packages/individual-packages/aws-iotevents",
@@ -3137,7 +3137,7 @@
3137
3137
  "kind": "interface",
3138
3138
  "locationInModule": {
3139
3139
  "filename": "lib/action.ts",
3140
- "line": 28
3140
+ "line": 29
3141
3141
  },
3142
3142
  "name": "ActionConfig",
3143
3143
  "properties": [
@@ -3150,7 +3150,7 @@
3150
3150
  "immutable": true,
3151
3151
  "locationInModule": {
3152
3152
  "filename": "lib/action.ts",
3153
- "line": 32
3153
+ "line": 33
3154
3154
  },
3155
3155
  "name": "configuration",
3156
3156
  "type": {
@@ -3520,7 +3520,7 @@
3520
3520
  "custom": {
3521
3521
  "exampleMetadata": "infused"
3522
3522
  },
3523
- "example": "import * as iotevents from '@aws-cdk/aws-iotevents-alpha';\nimport * as actions from '@aws-cdk/aws-iotevents-actions-alpha';\n\ndeclare const input: iotevents.IInput;\n\nconst state = new iotevents.State({\n stateName: 'MyState',\n onEnter: [{\n eventName: 'test-event',\n condition: iotevents.Expression.currentInput(input),\n actions: [\n actions: [\n new actions.SetVariableAction(\n 'MyVariable',\n iotevents.Expression.inputAttribute(input, 'payload.temperature'),\n ),\n ],\n ],\n }],\n});",
3523
+ "example": "import * as iotevents from '@aws-cdk/aws-iotevents-alpha';\nimport * as actions from '@aws-cdk/aws-iotevents-actions-alpha';\n\ndeclare const input: iotevents.IInput;\n\nconst state = new iotevents.State({\n stateName: 'MyState',\n onEnter: [{\n eventName: 'test-event',\n condition: iotevents.Expression.currentInput(input),\n actions: [\n new actions.SetTimerAction('MyTimer', {\n duration: cdk.Duration.seconds(60),\n }),\n ],\n }],\n});",
3524
3524
  "see": "https://docs.aws.amazon.com/iotevents/latest/developerguide/iotevents-expressions.html",
3525
3525
  "stability": "experimental",
3526
3526
  "summary": "Expression for events in Detector Model state."
@@ -3532,7 +3532,7 @@
3532
3532
  },
3533
3533
  "locationInModule": {
3534
3534
  "filename": "lib/expression.ts",
3535
- "line": 142
3535
+ "line": 151
3536
3536
  }
3537
3537
  },
3538
3538
  "kind": "class",
@@ -3548,7 +3548,7 @@
3548
3548
  },
3549
3549
  "locationInModule": {
3550
3550
  "filename": "lib/expression.ts",
3551
- "line": 33
3551
+ "line": 42
3552
3552
  },
3553
3553
  "name": "add",
3554
3554
  "parameters": [
@@ -3579,7 +3579,7 @@
3579
3579
  },
3580
3580
  "locationInModule": {
3581
3581
  "filename": "lib/expression.ts",
3582
- "line": 131
3582
+ "line": 140
3583
3583
  },
3584
3584
  "name": "and",
3585
3585
  "parameters": [
@@ -3610,7 +3610,7 @@
3610
3610
  },
3611
3611
  "locationInModule": {
3612
3612
  "filename": "lib/expression.ts",
3613
- "line": 75
3613
+ "line": 84
3614
3614
  },
3615
3615
  "name": "bitwiseAnd",
3616
3616
  "parameters": [
@@ -3641,7 +3641,7 @@
3641
3641
  },
3642
3642
  "locationInModule": {
3643
3643
  "filename": "lib/expression.ts",
3644
- "line": 68
3644
+ "line": 77
3645
3645
  },
3646
3646
  "name": "bitwiseOr",
3647
3647
  "parameters": [
@@ -3672,7 +3672,7 @@
3672
3672
  },
3673
3673
  "locationInModule": {
3674
3674
  "filename": "lib/expression.ts",
3675
- "line": 82
3675
+ "line": 91
3676
3676
  },
3677
3677
  "name": "bitwiseXor",
3678
3678
  "parameters": [
@@ -3703,7 +3703,7 @@
3703
3703
  },
3704
3704
  "locationInModule": {
3705
3705
  "filename": "lib/expression.ts",
3706
- "line": 61
3706
+ "line": 70
3707
3707
  },
3708
3708
  "name": "concat",
3709
3709
  "parameters": [
@@ -3760,7 +3760,7 @@
3760
3760
  },
3761
3761
  "locationInModule": {
3762
3762
  "filename": "lib/expression.ts",
3763
- "line": 47
3763
+ "line": 56
3764
3764
  },
3765
3765
  "name": "divide",
3766
3766
  "parameters": [
@@ -3791,7 +3791,7 @@
3791
3791
  },
3792
3792
  "locationInModule": {
3793
3793
  "filename": "lib/expression.ts",
3794
- "line": 89
3794
+ "line": 98
3795
3795
  },
3796
3796
  "name": "eq",
3797
3797
  "parameters": [
@@ -3847,7 +3847,7 @@
3847
3847
  },
3848
3848
  "locationInModule": {
3849
3849
  "filename": "lib/expression.ts",
3850
- "line": 117
3850
+ "line": 126
3851
3851
  },
3852
3852
  "name": "gt",
3853
3853
  "parameters": [
@@ -3878,7 +3878,7 @@
3878
3878
  },
3879
3879
  "locationInModule": {
3880
3880
  "filename": "lib/expression.ts",
3881
- "line": 124
3881
+ "line": 133
3882
3882
  },
3883
3883
  "name": "gte",
3884
3884
  "parameters": [
@@ -3909,7 +3909,7 @@
3909
3909
  },
3910
3910
  "locationInModule": {
3911
3911
  "filename": "lib/expression.ts",
3912
- "line": 26
3912
+ "line": 35
3913
3913
  },
3914
3914
  "name": "inputAttribute",
3915
3915
  "parameters": [
@@ -3940,7 +3940,7 @@
3940
3940
  },
3941
3941
  "locationInModule": {
3942
3942
  "filename": "lib/expression.ts",
3943
- "line": 103
3943
+ "line": 112
3944
3944
  },
3945
3945
  "name": "lt",
3946
3946
  "parameters": [
@@ -3971,7 +3971,7 @@
3971
3971
  },
3972
3972
  "locationInModule": {
3973
3973
  "filename": "lib/expression.ts",
3974
- "line": 110
3974
+ "line": 119
3975
3975
  },
3976
3976
  "name": "lte",
3977
3977
  "parameters": [
@@ -4002,7 +4002,7 @@
4002
4002
  },
4003
4003
  "locationInModule": {
4004
4004
  "filename": "lib/expression.ts",
4005
- "line": 54
4005
+ "line": 63
4006
4006
  },
4007
4007
  "name": "multiply",
4008
4008
  "parameters": [
@@ -4033,7 +4033,7 @@
4033
4033
  },
4034
4034
  "locationInModule": {
4035
4035
  "filename": "lib/expression.ts",
4036
- "line": 96
4036
+ "line": 105
4037
4037
  },
4038
4038
  "name": "neq",
4039
4039
  "parameters": [
@@ -4064,7 +4064,7 @@
4064
4064
  },
4065
4065
  "locationInModule": {
4066
4066
  "filename": "lib/expression.ts",
4067
- "line": 138
4067
+ "line": 147
4068
4068
  },
4069
4069
  "name": "or",
4070
4070
  "parameters": [
@@ -4095,7 +4095,7 @@
4095
4095
  },
4096
4096
  "locationInModule": {
4097
4097
  "filename": "lib/expression.ts",
4098
- "line": 40
4098
+ "line": 49
4099
4099
  },
4100
4100
  "name": "subtract",
4101
4101
  "parameters": [
@@ -4119,6 +4119,32 @@
4119
4119
  },
4120
4120
  "static": true
4121
4121
  },
4122
+ {
4123
+ "docs": {
4124
+ "remarks": "It is evaluated to true if the specified timer has elapsed.\nYou can define a timer only using the `setTimer` action.",
4125
+ "stability": "experimental",
4126
+ "summary": "Create a expression for function `timeout(\"timer-name\")`."
4127
+ },
4128
+ "locationInModule": {
4129
+ "filename": "lib/expression.ts",
4130
+ "line": 28
4131
+ },
4132
+ "name": "timeout",
4133
+ "parameters": [
4134
+ {
4135
+ "name": "timerName",
4136
+ "type": {
4137
+ "primitive": "string"
4138
+ }
4139
+ }
4140
+ ],
4141
+ "returns": {
4142
+ "type": {
4143
+ "fqn": "@aws-cdk/aws-iotevents-alpha.Expression"
4144
+ }
4145
+ },
4146
+ "static": true
4147
+ },
4122
4148
  {
4123
4149
  "abstract": true,
4124
4150
  "docs": {
@@ -4127,7 +4153,7 @@
4127
4153
  },
4128
4154
  "locationInModule": {
4129
4155
  "filename": "lib/expression.ts",
4130
- "line": 154
4156
+ "line": 163
4131
4157
  },
4132
4158
  "name": "evaluate",
4133
4159
  "parameters": [
@@ -4165,39 +4191,6 @@
4165
4191
  "filename": "lib/action.ts",
4166
4192
  "line": 18
4167
4193
  },
4168
- "methods": [
4169
- {
4170
- "abstract": true,
4171
- "docs": {
4172
- "stability": "experimental",
4173
- "summary": "Returns the AWS IoT Events action specification."
4174
- },
4175
- "locationInModule": {
4176
- "filename": "lib/action.ts",
4177
- "line": 22
4178
- },
4179
- "name": "bind",
4180
- "parameters": [
4181
- {
4182
- "name": "scope",
4183
- "type": {
4184
- "fqn": "constructs.Construct"
4185
- }
4186
- },
4187
- {
4188
- "name": "options",
4189
- "type": {
4190
- "fqn": "@aws-cdk/aws-iotevents-alpha.ActionBindOptions"
4191
- }
4192
- }
4193
- ],
4194
- "returns": {
4195
- "type": {
4196
- "fqn": "@aws-cdk/aws-iotevents-alpha.ActionConfig"
4197
- }
4198
- }
4199
- }
4200
- ],
4201
4194
  "name": "IAction",
4202
4195
  "symbolId": "lib/action:IAction"
4203
4196
  },
@@ -4374,7 +4367,7 @@
4374
4367
  "custom": {
4375
4368
  "exampleMetadata": "infused"
4376
4369
  },
4377
- "example": "import * as iotevents from '@aws-cdk/aws-iotevents-alpha';\nimport * as actions from '@aws-cdk/aws-iotevents-actions-alpha';\nimport * as lambda from 'aws-cdk-lib/aws-lambda';\n\ndeclare const func: lambda.IFunction;\n\nconst input = new iotevents.Input(this, 'MyInput', {\n inputName: 'my_input', // optional\n attributeJsonPaths: ['payload.deviceId', 'payload.temperature'],\n});\n\nconst warmState = new iotevents.State({\n stateName: 'warm',\n onEnter: [{\n eventName: 'test-enter-event',\n condition: iotevents.Expression.currentInput(input),\n actions: [new actions.LambdaInvokeAction(func)], // optional\n }],\n onInput: [{ // optional\n eventName: 'test-input-event',\n actions: [new actions.LambdaInvokeAction(func)],\n }],\n onExit: [{ // optional\n eventName: 'test-exit-event',\n actions: [new actions.LambdaInvokeAction(func)],\n }],\n});\nconst coldState = new iotevents.State({\n stateName: 'cold',\n});\n\n// transit to coldState when temperature is less than 15\nwarmState.transitionTo(coldState, {\n eventName: 'to_coldState', // optional property, default by combining the names of the States\n when: iotevents.Expression.lt(\n iotevents.Expression.inputAttribute(input, 'payload.temperature'),\n iotevents.Expression.fromString('15'),\n ),\n executing: [new actions.LambdaInvokeAction(func)], // optional\n});\n// transit to warmState when temperature is greater than or equal to 15\ncoldState.transitionTo(warmState, {\n when: iotevents.Expression.gte(\n iotevents.Expression.inputAttribute(input, 'payload.temperature'),\n iotevents.Expression.fromString('15'),\n ),\n});\n\nnew iotevents.DetectorModel(this, 'MyDetectorModel', {\n detectorModelName: 'test-detector-model', // optional\n description: 'test-detector-model-description', // optional property, default is none\n evaluationMethod: iotevents.EventEvaluation.SERIAL, // optional property, default is iotevents.EventEvaluation.BATCH\n detectorKey: 'payload.deviceId', // optional property, default is none and single detector instance will be created and all inputs will be routed to it\n initialState: warmState,\n});",
4370
+ "example": "import * as iotevents from '@aws-cdk/aws-iotevents-alpha';\nimport * as iam from 'aws-cdk-lib/aws-iam';\n\ndeclare const role: iam.IRole;\n\nconst input = new iotevents.Input(this, 'MyInput', {\n attributeJsonPaths: ['payload.temperature', 'payload.transactionId'],\n});\nconst topicRule = new iot.TopicRule(this, 'TopicRule', {\n sql: iot.IotSql.fromStringAsVer20160323(\n \"SELECT * FROM 'device/+/data'\",\n ),\n actions: [\n new actions.IotEventsPutMessageAction(input, {\n batchMode: true, // optional property, default is 'false'\n messageId: '${payload.transactionId}', // optional property, default is a new UUID\n role: role, // optional property, default is a new UUID\n }),\n ],\n});",
4378
4371
  "stability": "experimental",
4379
4372
  "summary": "Defines an AWS IoT Events input in this stack."
4380
4373
  },
@@ -4618,7 +4611,7 @@
4618
4611
  "custom": {
4619
4612
  "exampleMetadata": "infused"
4620
4613
  },
4621
- "example": "import * as iotevents from '@aws-cdk/aws-iotevents-alpha';\nimport * as actions from '@aws-cdk/aws-iotevents-actions-alpha';\n\ndeclare const input: iotevents.IInput;\n\nconst state = new iotevents.State({\n stateName: 'MyState',\n onEnter: [{\n eventName: 'test-event',\n condition: iotevents.Expression.currentInput(input),\n actions: [\n actions: [\n new actions.SetVariableAction(\n 'MyVariable',\n iotevents.Expression.inputAttribute(input, 'payload.temperature'),\n ),\n ],\n ],\n }],\n});",
4614
+ "example": "import * as iotevents from '@aws-cdk/aws-iotevents-alpha';\nimport * as actions from '@aws-cdk/aws-iotevents-actions-alpha';\n\ndeclare const input: iotevents.IInput;\n\nconst state = new iotevents.State({\n stateName: 'MyState',\n onEnter: [{\n eventName: 'test-event',\n condition: iotevents.Expression.currentInput(input),\n actions: [\n new actions.SetTimerAction('MyTimer', {\n duration: cdk.Duration.seconds(60),\n }),\n ],\n }],\n});",
4622
4615
  "stability": "experimental",
4623
4616
  "summary": "Defines a state of a detector."
4624
4617
  },
@@ -4706,7 +4699,7 @@
4706
4699
  "custom": {
4707
4700
  "exampleMetadata": "infused"
4708
4701
  },
4709
- "example": "import * as iotevents from '@aws-cdk/aws-iotevents-alpha';\nimport * as actions from '@aws-cdk/aws-iotevents-actions-alpha';\n\ndeclare const input: iotevents.IInput;\n\nconst state = new iotevents.State({\n stateName: 'MyState',\n onEnter: [{\n eventName: 'test-event',\n condition: iotevents.Expression.currentInput(input),\n actions: [\n actions: [\n new actions.SetVariableAction(\n 'MyVariable',\n iotevents.Expression.inputAttribute(input, 'payload.temperature'),\n ),\n ],\n ],\n }],\n});",
4702
+ "example": "import * as iotevents from '@aws-cdk/aws-iotevents-alpha';\nimport * as actions from '@aws-cdk/aws-iotevents-actions-alpha';\n\ndeclare const input: iotevents.IInput;\n\nconst state = new iotevents.State({\n stateName: 'MyState',\n onEnter: [{\n eventName: 'test-event',\n condition: iotevents.Expression.currentInput(input),\n actions: [\n new actions.SetTimerAction('MyTimer', {\n duration: cdk.Duration.seconds(60),\n }),\n ],\n }],\n});",
4710
4703
  "stability": "experimental",
4711
4704
  "summary": "Properties for defining a state of a detector."
4712
4705
  },
@@ -4890,6 +4883,6 @@
4890
4883
  "symbolId": "lib/state:TransitionOptions"
4891
4884
  }
4892
4885
  },
4893
- "version": "2.35.0-alpha.0",
4886
+ "version": "2.37.1-alpha.0",
4894
4887
  "fingerprint": "**********"
4895
- }
4888
+ }
package/.jsii.tabl.json CHANGED
@@ -2,52 +2,6 @@
2
2
  "version": "2",
3
3
  "toolVersion": "1.63.2",
4
4
  "snippets": {
5
- "ad9051cf8dce433b144a79c963be4edc0fffa865a24fece82d7287fc1050fc07": {
6
- "translations": {
7
- "python": {
8
- "source": "import aws_cdk.aws_iotevents_alpha as iotevents",
9
- "version": "2"
10
- },
11
- "csharp": {
12
- "source": "using Amazon.CDK.AWS.IoTEvents.Alpha;",
13
- "version": "1"
14
- },
15
- "java": {
16
- "source": "import software.amazon.awscdk.services.iotevents.alpha.*;",
17
- "version": "1"
18
- },
19
- "go": {
20
- "source": "import iotevents \"github.com/aws/aws-cdk-go/awscdkioteventsalpha\"",
21
- "version": "1"
22
- },
23
- "$": {
24
- "source": "import * as iotevents from '@aws-cdk/aws-iotevents-alpha';",
25
- "version": "0"
26
- }
27
- },
28
- "location": {
29
- "api": {
30
- "api": "moduleReadme",
31
- "moduleFqn": "@aws-cdk/aws-iotevents-alpha"
32
- },
33
- "field": {
34
- "field": "markdown",
35
- "line": 33
36
- }
37
- },
38
- "didCompile": true,
39
- "fqnsReferenced": [],
40
- "fullSource": "import * as iotevents from '@aws-cdk/aws-iotevents-alpha';",
41
- "syntaxKindCounter": {
42
- "10": 1,
43
- "75": 1,
44
- "254": 1,
45
- "255": 1,
46
- "256": 1,
47
- "290": 1
48
- },
49
- "fqnsFingerprint": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
50
- },
51
5
  "5eadfcc3b654c580b56719f14a9660d7775abd16a43034f03f413c6097b45851": {
52
6
  "translations": {
53
7
  "python": {
@@ -78,7 +32,7 @@
78
32
  },
79
33
  "field": {
80
34
  "field": "markdown",
81
- "line": 46
35
+ "line": 32
82
36
  }
83
37
  },
84
38
  "didCompile": true,
@@ -127,7 +81,7 @@
127
81
  "281": 23,
128
82
  "290": 1
129
83
  },
130
- "fqnsFingerprint": "6e2559681caaa286d2426acd8c74ce25d7fe2e03208855eb9eab1016a4a51820"
84
+ "fqnsFingerprint": "f53670fdd6e9d2a2cd49713c7f85cd01fc73084731b16eb61e33b416baeaa8d3"
131
85
  },
132
86
  "d85a7e5e892cdb1a876abe348db57360034479abb95e7fe40ce3182878d25875": {
133
87
  "translations": {
@@ -159,7 +113,7 @@
159
113
  },
160
114
  "field": {
161
115
  "field": "markdown",
162
- "line": 107
116
+ "line": 93
163
117
  }
164
118
  },
165
119
  "didCompile": true,
@@ -385,7 +339,7 @@
385
339
  "281": 23,
386
340
  "290": 1
387
341
  },
388
- "fqnsFingerprint": "6e2559681caaa286d2426acd8c74ce25d7fe2e03208855eb9eab1016a4a51820"
342
+ "fqnsFingerprint": "f53670fdd6e9d2a2cd49713c7f85cd01fc73084731b16eb61e33b416baeaa8d3"
389
343
  },
390
344
  "926d39260c595933619a9441157843a7caad0dd80f098bda8f6d1e901f499715": {
391
345
  "translations": {
@@ -465,7 +419,7 @@
465
419
  "281": 23,
466
420
  "290": 1
467
421
  },
468
- "fqnsFingerprint": "6e2559681caaa286d2426acd8c74ce25d7fe2e03208855eb9eab1016a4a51820"
422
+ "fqnsFingerprint": "f53670fdd6e9d2a2cd49713c7f85cd01fc73084731b16eb61e33b416baeaa8d3"
469
423
  },
470
424
  "d826d52c39e72e0f171be749e9b4124fccfa91b80c2570f6767193205208b50a": {
471
425
  "translations": {
@@ -522,7 +476,7 @@
522
476
  "281": 3,
523
477
  "290": 1
524
478
  },
525
- "fqnsFingerprint": "6047811ea505606a8b9ac0f20b341e2c18ccefacc562e21a32b0ebe318c85c2c"
479
+ "fqnsFingerprint": "8d78437a878cc14fb319816ccf79bcd01f57f0c34452a2e15838ee570ef47a94"
526
480
  },
527
481
  "38bcbda95e8b900057136f1b56076fd272142c0f04a04aac2018ae80f6a143c0": {
528
482
  "translations": {
@@ -602,28 +556,28 @@
602
556
  "281": 23,
603
557
  "290": 1
604
558
  },
605
- "fqnsFingerprint": "6e2559681caaa286d2426acd8c74ce25d7fe2e03208855eb9eab1016a4a51820"
559
+ "fqnsFingerprint": "f53670fdd6e9d2a2cd49713c7f85cd01fc73084731b16eb61e33b416baeaa8d3"
606
560
  },
607
- "22a3fc319122ec2fadc144c02ca76ebdacd7b5834f2deb01fcc3d859273be013": {
561
+ "d6356fb18c18a145864e2a4344a5c7330f007c4f9453e7f02f9c9f106ef56621": {
608
562
  "translations": {
609
563
  "python": {
610
- "source": "import aws_cdk.aws_iotevents_alpha as iotevents\nimport aws_cdk.aws_iotevents_actions_alpha as actions\n\n# input: iotevents.IInput\n\nstate = iotevents.State(\n state_name=\"MyState\",\n on_enter=[iotevents.Event(\n event_name=\"test-event\",\n condition=iotevents.Expression.current_input(input),\n actions=[actions, [\n actions.SetVariableAction(\"MyVariable\",\n iotevents.Expression.input_attribute(input, \"payload.temperature\"))\n ]\n ]\n )]\n)",
564
+ "source": "import aws_cdk.aws_iotevents_alpha as iotevents\nimport aws_cdk.aws_iotevents_actions_alpha as actions\n\n# input: iotevents.IInput\n\nstate = iotevents.State(\n state_name=\"MyState\",\n on_enter=[iotevents.Event(\n event_name=\"test-event\",\n condition=iotevents.Expression.current_input(input),\n actions=[\n actions.SetTimerAction(\"MyTimer\", {\n \"duration\": cdk.Duration.seconds(60)\n })\n ]\n )]\n)",
611
565
  "version": "2"
612
566
  },
613
567
  "csharp": {
614
- "source": "using Amazon.CDK.AWS.IoTEvents.Alpha;\nusing Amazon.CDK.AWS.IoTEvents.Actions.Alpha;\n\nIInput input;\n\nState state = new State(new StateProps {\n StateName = \"MyState\",\n OnEnter = new [] { new Event {\n EventName = \"test-event\",\n Condition = Expression.CurrentInput(input),\n Actions = new [] { actions, new [] {\n new SetVariableAction(\"MyVariable\", Expression.InputAttribute(input, \"payload.temperature\")) } }\n } }\n});",
568
+ "source": "using Amazon.CDK.AWS.IoTEvents.Alpha;\nusing Amazon.CDK.AWS.IoTEvents.Actions.Alpha;\n\nIInput input;\n\nState state = new State(new StateProps {\n StateName = \"MyState\",\n OnEnter = new [] { new Event {\n EventName = \"test-event\",\n Condition = Expression.CurrentInput(input),\n Actions = new [] {\n new SetTimerAction(\"MyTimer\", new Dictionary<string, object> {\n { \"duration\", cdk.Duration.Seconds(60) }\n }) }\n } }\n});",
615
569
  "version": "1"
616
570
  },
617
571
  "java": {
618
- "source": "import software.amazon.awscdk.services.iotevents.alpha.*;\nimport software.amazon.awscdk.services.iotevents.actions.alpha.*;\n\nIInput input;\n\nState state = State.Builder.create()\n .stateName(\"MyState\")\n .onEnter(List.of(Event.builder()\n .eventName(\"test-event\")\n .condition(Expression.currentInput(input))\n .actions(List.of(actions, List.of(\n new SetVariableAction(\"MyVariable\", Expression.inputAttribute(input, \"payload.temperature\")))))\n .build()))\n .build();",
572
+ "source": "import software.amazon.awscdk.services.iotevents.alpha.*;\nimport software.amazon.awscdk.services.iotevents.actions.alpha.*;\n\nIInput input;\n\nState state = State.Builder.create()\n .stateName(\"MyState\")\n .onEnter(List.of(Event.builder()\n .eventName(\"test-event\")\n .condition(Expression.currentInput(input))\n .actions(List.of(\n new SetTimerAction(\"MyTimer\", Map.of(\n \"duration\", cdk.Duration.seconds(60)))))\n .build()))\n .build();",
619
573
  "version": "1"
620
574
  },
621
575
  "go": {
622
- "source": "import iotevents \"github.com/aws/aws-cdk-go/awscdkioteventsalpha\"\nimport actions \"github.com/aws/aws-cdk-go/awscdkioteventsactionsalpha\"\n\nvar input iInput\n\nstate := iotevents.NewState(&stateProps{\n\tstateName: jsii.String(\"MyState\"),\n\tonEnter: []event{\n\t\t&event{\n\t\t\teventName: jsii.String(\"test-event\"),\n\t\t\tcondition: iotevents.expression.currentInput(input),\n\t\t\tactions: []iAction{\n\t\t\t\tactions,\n\t\t\t\t[]interface{}{\n\t\t\t\t\tactions.NewSetVariableAction(jsii.String(\"MyVariable\"), iotevents.*expression.inputAttribute(input, jsii.String(\"payload.temperature\"))),\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n})",
576
+ "source": "import iotevents \"github.com/aws/aws-cdk-go/awscdkioteventsalpha\"\nimport actions \"github.com/aws/aws-cdk-go/awscdkioteventsactionsalpha\"\n\nvar input iInput\n\nstate := iotevents.NewState(&stateProps{\n\tstateName: jsii.String(\"MyState\"),\n\tonEnter: []event{\n\t\t&event{\n\t\t\teventName: jsii.String(\"test-event\"),\n\t\t\tcondition: iotevents.expression.currentInput(input),\n\t\t\tactions: []iAction{\n\t\t\t\tactions.NewSetTimerAction(jsii.String(\"MyTimer\"), map[string]interface{}{\n\t\t\t\t\t\"duration\": cdk.Duration_seconds(jsii.Number(60)),\n\t\t\t\t}),\n\t\t\t},\n\t\t},\n\t},\n})",
623
577
  "version": "1"
624
578
  },
625
579
  "$": {
626
- "source": "import * as iotevents from '@aws-cdk/aws-iotevents-alpha';\nimport * as actions from '@aws-cdk/aws-iotevents-actions-alpha';\n\ndeclare const input: iotevents.IInput;\n\nconst state = new iotevents.State({\n stateName: 'MyState',\n onEnter: [{\n eventName: 'test-event',\n condition: iotevents.Expression.currentInput(input),\n actions: [\n actions: [\n new actions.SetVariableAction(\n 'MyVariable',\n iotevents.Expression.inputAttribute(input, 'payload.temperature'),\n ),\n ],\n ],\n }],\n});",
580
+ "source": "import * as iotevents from '@aws-cdk/aws-iotevents-alpha';\nimport * as actions from '@aws-cdk/aws-iotevents-actions-alpha';\n\ndeclare const input: iotevents.IInput;\n\nconst state = new iotevents.State({\n stateName: 'MyState',\n onEnter: [{\n eventName: 'test-event',\n condition: iotevents.Expression.currentInput(input),\n actions: [\n new actions.SetTimerAction('MyTimer', {\n duration: cdk.Duration.seconds(60),\n }),\n ],\n }],\n});",
627
581
  "version": "0"
628
582
  }
629
583
  },
@@ -638,23 +592,24 @@
638
592
  },
639
593
  "didCompile": false,
640
594
  "fqnsReferenced": [
641
- "@aws-cdk/aws-iotevents-actions-alpha.SetVariableAction",
595
+ "@aws-cdk/aws-iotevents-actions-alpha.SetTimerAction",
596
+ "@aws-cdk/aws-iotevents-actions-alpha.TimerDuration",
642
597
  "@aws-cdk/aws-iotevents-alpha.Expression",
643
598
  "@aws-cdk/aws-iotevents-alpha.Expression#currentInput",
644
- "@aws-cdk/aws-iotevents-alpha.Expression#inputAttribute",
645
599
  "@aws-cdk/aws-iotevents-alpha.IInput",
646
600
  "@aws-cdk/aws-iotevents-alpha.State",
647
601
  "@aws-cdk/aws-iotevents-alpha.StateProps"
648
602
  ],
649
- "fullSource": "import * as iotevents from '@aws-cdk/aws-iotevents-alpha';\nimport * as actions from '@aws-cdk/aws-iotevents-actions-alpha';\n\ndeclare const input: iotevents.IInput;\n\nconst state = new iotevents.State({\n stateName: 'MyState',\n onEnter: [{\n eventName: 'test-event',\n condition: iotevents.Expression.currentInput(input),\n actions: [\n actions: [\n new actions.SetVariableAction(\n 'MyVariable',\n iotevents.Expression.inputAttribute(input, 'payload.temperature'),\n ),\n ],\n ],\n }],\n});",
603
+ "fullSource": "import * as iotevents from '@aws-cdk/aws-iotevents-alpha';\nimport * as actions from '@aws-cdk/aws-iotevents-actions-alpha';\n\ndeclare const input: iotevents.IInput;\n\nconst state = new iotevents.State({\n stateName: 'MyState',\n onEnter: [{\n eventName: 'test-event',\n condition: iotevents.Expression.currentInput(input),\n actions: [\n new actions.SetTimerAction('MyTimer', {\n duration: cdk.Duration.seconds(60),\n }),\n ],\n }],\n});",
650
604
  "syntaxKindCounter": {
651
- "10": 6,
652
- "75": 24,
605
+ "8": 1,
606
+ "10": 5,
607
+ "75": 23,
653
608
  "130": 1,
654
609
  "153": 1,
655
610
  "169": 1,
656
- "192": 3,
657
- "193": 2,
611
+ "192": 2,
612
+ "193": 3,
658
613
  "194": 6,
659
614
  "196": 2,
660
615
  "197": 2,
@@ -664,31 +619,31 @@
664
619
  "254": 2,
665
620
  "255": 2,
666
621
  "256": 2,
667
- "281": 5,
622
+ "281": 6,
668
623
  "290": 1
669
624
  },
670
- "fqnsFingerprint": "d7f696d1560e7e749f26d0253392480ebe7631f049160423b0de9b0942159777"
625
+ "fqnsFingerprint": "c6efda2bbc5c20750d629badf7af2ba32e317452cc604a1a619627d3b933b46e"
671
626
  },
672
- "f8235e153e862af25ec70fbc66f52428026d651f371a6db468c4311a5ddc1df6": {
627
+ "21017a5eb11dfc05d752e757bf9cb93e6e70c6d0ba4e768adaa5ca2e5de67cc1": {
673
628
  "translations": {
674
629
  "python": {
675
- "source": "import aws_cdk.aws_iotevents_alpha as iotevents\nimport aws_cdk.aws_iotevents_actions_alpha as actions\nimport aws_cdk.aws_lambda as lambda_\n\n# func: lambda.IFunction\n\n\ninput = iotevents.Input(self, \"MyInput\",\n input_name=\"my_input\", # optional\n attribute_json_paths=[\"payload.deviceId\", \"payload.temperature\"]\n)\n\nwarm_state = iotevents.State(\n state_name=\"warm\",\n on_enter=[iotevents.Event(\n event_name=\"test-enter-event\",\n condition=iotevents.Expression.current_input(input),\n actions=[actions.LambdaInvokeAction(func)]\n )],\n on_input=[iotevents.Event( # optional\n event_name=\"test-input-event\",\n actions=[actions.LambdaInvokeAction(func)])],\n on_exit=[iotevents.Event( # optional\n event_name=\"test-exit-event\",\n actions=[actions.LambdaInvokeAction(func)])]\n)\ncold_state = iotevents.State(\n state_name=\"cold\"\n)\n\n# transit to coldState when temperature is less than 15\nwarm_state.transition_to(cold_state,\n event_name=\"to_coldState\", # optional property, default by combining the names of the States\n when=iotevents.Expression.lt(\n iotevents.Expression.input_attribute(input, \"payload.temperature\"),\n iotevents.Expression.from_string(\"15\")),\n executing=[actions.LambdaInvokeAction(func)]\n)\n# transit to warmState when temperature is greater than or equal to 15\ncold_state.transition_to(warm_state,\n when=iotevents.Expression.gte(\n iotevents.Expression.input_attribute(input, \"payload.temperature\"),\n iotevents.Expression.from_string(\"15\"))\n)\n\niotevents.DetectorModel(self, \"MyDetectorModel\",\n detector_model_name=\"test-detector-model\", # optional\n description=\"test-detector-model-description\", # optional property, default is none\n evaluation_method=iotevents.EventEvaluation.SERIAL, # optional property, default is iotevents.EventEvaluation.BATCH\n detector_key=\"payload.deviceId\", # optional property, default is none and single detector instance will be created and all inputs will be routed to it\n initial_state=warm_state\n)",
630
+ "source": "import aws_cdk.aws_iotevents_alpha as iotevents\nimport aws_cdk.aws_iam as iam\n\n# role: iam.IRole\n\n\ninput = iotevents.Input(self, \"MyInput\",\n attribute_json_paths=[\"payload.temperature\", \"payload.transactionId\"]\n)\ntopic_rule = iot.TopicRule(self, \"TopicRule\",\n sql=iot.IotSql.from_string_as_ver20160323(\"SELECT * FROM 'device/+/data'\"),\n actions=[\n actions.IotEventsPutMessageAction(input,\n batch_mode=True, # optional property, default is 'false'\n message_id=\"${payload.transactionId}\", # optional property, default is a new UUID\n role=role\n )\n ]\n)",
676
631
  "version": "2"
677
632
  },
678
633
  "csharp": {
679
- "source": "using Amazon.CDK.AWS.IoTEvents.Alpha;\nusing Amazon.CDK.AWS.IoTEvents.Actions.Alpha;\nusing Amazon.CDK.AWS.Lambda;\n\nIFunction func;\n\n\nInput input = new Input(this, \"MyInput\", new InputProps {\n InputName = \"my_input\", // optional\n AttributeJsonPaths = new [] { \"payload.deviceId\", \"payload.temperature\" }\n});\n\nState warmState = new State(new StateProps {\n StateName = \"warm\",\n OnEnter = new [] { new Event {\n EventName = \"test-enter-event\",\n Condition = Expression.CurrentInput(input),\n Actions = new [] { new LambdaInvokeAction(func) }\n } },\n OnInput = new [] { new Event { // optional\n EventName = \"test-input-event\",\n Actions = new [] { new LambdaInvokeAction(func) } } },\n OnExit = new [] { new Event { // optional\n EventName = \"test-exit-event\",\n Actions = new [] { new LambdaInvokeAction(func) } } }\n});\nState coldState = new State(new StateProps {\n StateName = \"cold\"\n});\n\n// transit to coldState when temperature is less than 15\nwarmState.TransitionTo(coldState, new TransitionOptions {\n EventName = \"to_coldState\", // optional property, default by combining the names of the States\n When = Expression.Lt(Expression.InputAttribute(input, \"payload.temperature\"), Expression.FromString(\"15\")),\n Executing = new [] { new LambdaInvokeAction(func) }\n});\n// transit to warmState when temperature is greater than or equal to 15\ncoldState.TransitionTo(warmState, new TransitionOptions {\n When = Expression.Gte(Expression.InputAttribute(input, \"payload.temperature\"), Expression.FromString(\"15\"))\n});\n\nnew DetectorModel(this, \"MyDetectorModel\", new DetectorModelProps {\n DetectorModelName = \"test-detector-model\", // optional\n Description = \"test-detector-model-description\", // optional property, default is none\n EvaluationMethod = EventEvaluation.SERIAL, // optional property, default is iotevents.EventEvaluation.BATCH\n DetectorKey = \"payload.deviceId\", // optional property, default is none and single detector instance will be created and all inputs will be routed to it\n InitialState = warmState\n});",
634
+ "source": "using Amazon.CDK.AWS.IoTEvents.Alpha;\nusing Amazon.CDK.AWS.IAM;\n\nIRole role;\n\n\nInput input = new Input(this, \"MyInput\", new InputProps {\n AttributeJsonPaths = new [] { \"payload.temperature\", \"payload.transactionId\" }\n});\nTopicRule topicRule = new TopicRule(this, \"TopicRule\", new TopicRuleProps {\n Sql = IotSql.FromStringAsVer20160323(\"SELECT * FROM 'device/+/data'\"),\n Actions = new [] {\n new IotEventsPutMessageAction(input, new IotEventsPutMessageActionProps {\n BatchMode = true, // optional property, default is 'false'\n MessageId = \"${payload.transactionId}\", // optional property, default is a new UUID\n Role = role\n }) }\n});",
680
635
  "version": "1"
681
636
  },
682
637
  "java": {
683
- "source": "import software.amazon.awscdk.services.iotevents.alpha.*;\nimport software.amazon.awscdk.services.iotevents.actions.alpha.*;\nimport software.amazon.awscdk.services.lambda.*;\n\nIFunction func;\n\n\nInput input = Input.Builder.create(this, \"MyInput\")\n .inputName(\"my_input\") // optional\n .attributeJsonPaths(List.of(\"payload.deviceId\", \"payload.temperature\"))\n .build();\n\nState warmState = State.Builder.create()\n .stateName(\"warm\")\n .onEnter(List.of(Event.builder()\n .eventName(\"test-enter-event\")\n .condition(Expression.currentInput(input))\n .actions(List.of(new LambdaInvokeAction(func)))\n .build()))\n .onInput(List.of(Event.builder() // optional\n .eventName(\"test-input-event\")\n .actions(List.of(new LambdaInvokeAction(func))).build()))\n .onExit(List.of(Event.builder() // optional\n .eventName(\"test-exit-event\")\n .actions(List.of(new LambdaInvokeAction(func))).build()))\n .build();\nState coldState = State.Builder.create()\n .stateName(\"cold\")\n .build();\n\n// transit to coldState when temperature is less than 15\nwarmState.transitionTo(coldState, TransitionOptions.builder()\n .eventName(\"to_coldState\") // optional property, default by combining the names of the States\n .when(Expression.lt(Expression.inputAttribute(input, \"payload.temperature\"), Expression.fromString(\"15\")))\n .executing(List.of(new LambdaInvokeAction(func)))\n .build());\n// transit to warmState when temperature is greater than or equal to 15\ncoldState.transitionTo(warmState, TransitionOptions.builder()\n .when(Expression.gte(Expression.inputAttribute(input, \"payload.temperature\"), Expression.fromString(\"15\")))\n .build());\n\nDetectorModel.Builder.create(this, \"MyDetectorModel\")\n .detectorModelName(\"test-detector-model\") // optional\n .description(\"test-detector-model-description\") // optional property, default is none\n .evaluationMethod(EventEvaluation.SERIAL) // optional property, default is iotevents.EventEvaluation.BATCH\n .detectorKey(\"payload.deviceId\") // optional property, default is none and single detector instance will be created and all inputs will be routed to it\n .initialState(warmState)\n .build();",
638
+ "source": "import software.amazon.awscdk.services.iotevents.alpha.*;\nimport software.amazon.awscdk.services.iam.*;\n\nIRole role;\n\n\nInput input = Input.Builder.create(this, \"MyInput\")\n .attributeJsonPaths(List.of(\"payload.temperature\", \"payload.transactionId\"))\n .build();\nTopicRule topicRule = TopicRule.Builder.create(this, \"TopicRule\")\n .sql(IotSql.fromStringAsVer20160323(\"SELECT * FROM 'device/+/data'\"))\n .actions(List.of(\n IotEventsPutMessageAction.Builder.create(input)\n .batchMode(true) // optional property, default is 'false'\n .messageId(\"${payload.transactionId}\") // optional property, default is a new UUID\n .role(role)\n .build()))\n .build();",
684
639
  "version": "1"
685
640
  },
686
641
  "go": {
687
- "source": "import iotevents \"github.com/aws/aws-cdk-go/awscdkioteventsalpha\"\nimport actions \"github.com/aws/aws-cdk-go/awscdkioteventsactionsalpha\"\nimport lambda \"github.com/aws/aws-cdk-go/awscdk\"\n\nvar func iFunction\n\n\ninput := iotevents.NewInput(this, jsii.String(\"MyInput\"), &inputProps{\n\tinputName: jsii.String(\"my_input\"),\n\t // optional\n\tattributeJsonPaths: []*string{\n\t\tjsii.String(\"payload.deviceId\"),\n\t\tjsii.String(\"payload.temperature\"),\n\t},\n})\n\nwarmState := iotevents.NewState(&stateProps{\n\tstateName: jsii.String(\"warm\"),\n\tonEnter: []event{\n\t\t&event{\n\t\t\teventName: jsii.String(\"test-enter-event\"),\n\t\t\tcondition: iotevents.expression.currentInput(input),\n\t\t\tactions: []iAction{\n\t\t\t\tactions.NewLambdaInvokeAction(func),\n\t\t\t},\n\t\t},\n\t},\n\tonInput: []*event{\n\t\t&event{\n\t\t\t // optional\n\t\t\teventName: jsii.String(\"test-input-event\"),\n\t\t\tactions: []*iAction{\n\t\t\t\tactions.NewLambdaInvokeAction(func),\n\t\t\t},\n\t\t},\n\t},\n\tonExit: []*event{\n\t\t&event{\n\t\t\t // optional\n\t\t\teventName: jsii.String(\"test-exit-event\"),\n\t\t\tactions: []*iAction{\n\t\t\t\tactions.NewLambdaInvokeAction(func),\n\t\t\t},\n\t\t},\n\t},\n})\ncoldState := iotevents.NewState(&stateProps{\n\tstateName: jsii.String(\"cold\"),\n})\n\n// transit to coldState when temperature is less than 15\nwarmState.transitionTo(coldState, &transitionOptions{\n\teventName: jsii.String(\"to_coldState\"),\n\t // optional property, default by combining the names of the States\n\twhen: iotevents.*expression.lt(iotevents.*expression.inputAttribute(input, jsii.String(\"payload.temperature\")), iotevents.*expression.fromString(jsii.String(\"15\"))),\n\texecuting: []*iAction{\n\t\tactions.NewLambdaInvokeAction(func),\n\t},\n})\n// transit to warmState when temperature is greater than or equal to 15\ncoldState.transitionTo(warmState, &transitionOptions{\n\twhen: iotevents.*expression.gte(iotevents.*expression.inputAttribute(input, jsii.String(\"payload.temperature\")), iotevents.*expression.fromString(jsii.String(\"15\"))),\n})\n\niotevents.NewDetectorModel(this, jsii.String(\"MyDetectorModel\"), &detectorModelProps{\n\tdetectorModelName: jsii.String(\"test-detector-model\"),\n\t // optional\n\tdescription: jsii.String(\"test-detector-model-description\"),\n\t // optional property, default is none\n\tevaluationMethod: iotevents.eventEvaluation_SERIAL,\n\t // optional property, default is iotevents.EventEvaluation.BATCH\n\tdetectorKey: jsii.String(\"payload.deviceId\"),\n\t // optional property, default is none and single detector instance will be created and all inputs will be routed to it\n\tinitialState: warmState,\n})",
642
+ "source": "import iotevents \"github.com/aws/aws-cdk-go/awscdkioteventsalpha\"\nimport iam \"github.com/aws/aws-cdk-go/awscdk\"\n\nvar role iRole\n\n\ninput := iotevents.NewInput(this, jsii.String(\"MyInput\"), &inputProps{\n\tattributeJsonPaths: []*string{\n\t\tjsii.String(\"payload.temperature\"),\n\t\tjsii.String(\"payload.transactionId\"),\n\t},\n})\ntopicRule := iot.NewTopicRule(this, jsii.String(\"TopicRule\"), &topicRuleProps{\n\tsql: iot.iotSql.fromStringAsVer20160323(jsii.String(\"SELECT * FROM 'device/+/data'\")),\n\tactions: []iAction{\n\t\tactions.NewIotEventsPutMessageAction(input, &iotEventsPutMessageActionProps{\n\t\t\tbatchMode: jsii.Boolean(true),\n\t\t\t // optional property, default is 'false'\n\t\t\tmessageId: jsii.String(\"${payload.transactionId}\"),\n\t\t\t // optional property, default is a new UUID\n\t\t\trole: role,\n\t\t}),\n\t},\n})",
688
643
  "version": "1"
689
644
  },
690
645
  "$": {
691
- "source": "import * as iotevents from '@aws-cdk/aws-iotevents-alpha';\nimport * as actions from '@aws-cdk/aws-iotevents-actions-alpha';\nimport * as lambda from 'aws-cdk-lib/aws-lambda';\n\ndeclare const func: lambda.IFunction;\n\nconst input = new iotevents.Input(this, 'MyInput', {\n inputName: 'my_input', // optional\n attributeJsonPaths: ['payload.deviceId', 'payload.temperature'],\n});\n\nconst warmState = new iotevents.State({\n stateName: 'warm',\n onEnter: [{\n eventName: 'test-enter-event',\n condition: iotevents.Expression.currentInput(input),\n actions: [new actions.LambdaInvokeAction(func)], // optional\n }],\n onInput: [{ // optional\n eventName: 'test-input-event',\n actions: [new actions.LambdaInvokeAction(func)],\n }],\n onExit: [{ // optional\n eventName: 'test-exit-event',\n actions: [new actions.LambdaInvokeAction(func)],\n }],\n});\nconst coldState = new iotevents.State({\n stateName: 'cold',\n});\n\n// transit to coldState when temperature is less than 15\nwarmState.transitionTo(coldState, {\n eventName: 'to_coldState', // optional property, default by combining the names of the States\n when: iotevents.Expression.lt(\n iotevents.Expression.inputAttribute(input, 'payload.temperature'),\n iotevents.Expression.fromString('15'),\n ),\n executing: [new actions.LambdaInvokeAction(func)], // optional\n});\n// transit to warmState when temperature is greater than or equal to 15\ncoldState.transitionTo(warmState, {\n when: iotevents.Expression.gte(\n iotevents.Expression.inputAttribute(input, 'payload.temperature'),\n iotevents.Expression.fromString('15'),\n ),\n});\n\nnew iotevents.DetectorModel(this, 'MyDetectorModel', {\n detectorModelName: 'test-detector-model', // optional\n description: 'test-detector-model-description', // optional property, default is none\n evaluationMethod: iotevents.EventEvaluation.SERIAL, // optional property, default is iotevents.EventEvaluation.BATCH\n detectorKey: 'payload.deviceId', // optional property, default is none and single detector instance will be created and all inputs will be routed to it\n initialState: warmState,\n});",
646
+ "source": "import * as iotevents from '@aws-cdk/aws-iotevents-alpha';\nimport * as iam from 'aws-cdk-lib/aws-iam';\n\ndeclare const role: iam.IRole;\n\nconst input = new iotevents.Input(this, 'MyInput', {\n attributeJsonPaths: ['payload.temperature', 'payload.transactionId'],\n});\nconst topicRule = new iot.TopicRule(this, 'TopicRule', {\n sql: iot.IotSql.fromStringAsVer20160323(\n \"SELECT * FROM 'device/+/data'\",\n ),\n actions: [\n new actions.IotEventsPutMessageAction(input, {\n batchMode: true, // optional property, default is 'false'\n messageId: '${payload.transactionId}', // optional property, default is a new UUID\n role: role, // optional property, default is a new UUID\n }),\n ],\n});",
692
647
  "version": "0"
693
648
  }
694
649
  },
@@ -703,51 +658,42 @@
703
658
  },
704
659
  "didCompile": true,
705
660
  "fqnsReferenced": [
706
- "@aws-cdk/aws-iotevents-actions-alpha.LambdaInvokeAction",
707
- "@aws-cdk/aws-iotevents-alpha.DetectorModel",
708
- "@aws-cdk/aws-iotevents-alpha.DetectorModelProps",
709
- "@aws-cdk/aws-iotevents-alpha.EventEvaluation",
710
- "@aws-cdk/aws-iotevents-alpha.EventEvaluation#SERIAL",
711
- "@aws-cdk/aws-iotevents-alpha.Expression",
712
- "@aws-cdk/aws-iotevents-alpha.Expression#currentInput",
713
- "@aws-cdk/aws-iotevents-alpha.Expression#fromString",
714
- "@aws-cdk/aws-iotevents-alpha.Expression#gte",
715
- "@aws-cdk/aws-iotevents-alpha.Expression#inputAttribute",
716
- "@aws-cdk/aws-iotevents-alpha.Expression#lt",
661
+ "@aws-cdk/aws-iot-actions-alpha.IotEventsPutMessageAction",
662
+ "@aws-cdk/aws-iot-actions-alpha.IotEventsPutMessageActionProps",
663
+ "@aws-cdk/aws-iot-alpha.IotSql",
664
+ "@aws-cdk/aws-iot-alpha.IotSql#fromStringAsVer20160323",
665
+ "@aws-cdk/aws-iot-alpha.TopicRule",
666
+ "@aws-cdk/aws-iot-alpha.TopicRuleProps",
717
667
  "@aws-cdk/aws-iotevents-alpha.IInput",
718
668
  "@aws-cdk/aws-iotevents-alpha.Input",
719
669
  "@aws-cdk/aws-iotevents-alpha.InputProps",
720
- "@aws-cdk/aws-iotevents-alpha.State",
721
- "@aws-cdk/aws-iotevents-alpha.State#transitionTo",
722
- "@aws-cdk/aws-iotevents-alpha.StateProps",
723
- "@aws-cdk/aws-iotevents-alpha.TransitionOptions",
724
- "aws-cdk-lib.aws_lambda.IFunction",
670
+ "aws-cdk-lib.aws_iam.IRole",
725
671
  "constructs.Construct"
726
672
  ],
727
- "fullSource": "// Hoisted imports begin after !show marker below\n/// !show\nimport * as iotevents from '@aws-cdk/aws-iotevents-alpha';\nimport * as actions from '@aws-cdk/aws-iotevents-actions-alpha';\nimport * as lambda from 'aws-cdk-lib/aws-lambda';\n\ndeclare const func: lambda.IFunction;\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';\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 input = new iotevents.Input(this, 'MyInput', {\n inputName: 'my_input', // optional\n attributeJsonPaths: ['payload.deviceId', 'payload.temperature'],\n});\n\nconst warmState = new iotevents.State({\n stateName: 'warm',\n onEnter: [{\n eventName: 'test-enter-event',\n condition: iotevents.Expression.currentInput(input),\n actions: [new actions.LambdaInvokeAction(func)], // optional\n }],\n onInput: [{ // optional\n eventName: 'test-input-event',\n actions: [new actions.LambdaInvokeAction(func)],\n }],\n onExit: [{ // optional\n eventName: 'test-exit-event',\n actions: [new actions.LambdaInvokeAction(func)],\n }],\n});\nconst coldState = new iotevents.State({\n stateName: 'cold',\n});\n\n// transit to coldState when temperature is less than 15\nwarmState.transitionTo(coldState, {\n eventName: 'to_coldState', // optional property, default by combining the names of the States\n when: iotevents.Expression.lt(\n iotevents.Expression.inputAttribute(input, 'payload.temperature'),\n iotevents.Expression.fromString('15'),\n ),\n executing: [new actions.LambdaInvokeAction(func)], // optional\n});\n// transit to warmState when temperature is greater than or equal to 15\ncoldState.transitionTo(warmState, {\n when: iotevents.Expression.gte(\n iotevents.Expression.inputAttribute(input, 'payload.temperature'),\n iotevents.Expression.fromString('15'),\n ),\n});\n\nnew iotevents.DetectorModel(this, 'MyDetectorModel', {\n detectorModelName: 'test-detector-model', // optional\n description: 'test-detector-model-description', // optional property, default is none\n evaluationMethod: iotevents.EventEvaluation.SERIAL, // optional property, default is iotevents.EventEvaluation.BATCH\n detectorKey: 'payload.deviceId', // optional property, default is none and single detector instance will be created and all inputs will be routed to it\n initialState: warmState,\n});\n/// !hide\n// Code snippet ended before !hide marker above\n }\n}",
673
+ "fullSource": "// Hoisted imports begin after !show marker below\n/// !show\nimport * as iotevents from '@aws-cdk/aws-iotevents-alpha';\nimport * as iam from 'aws-cdk-lib/aws-iam';\n\ndeclare const role: iam.IRole;\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 input = new iotevents.Input(this, 'MyInput', {\n attributeJsonPaths: ['payload.temperature', 'payload.transactionId'],\n});\nconst topicRule = new iot.TopicRule(this, 'TopicRule', {\n sql: iot.IotSql.fromStringAsVer20160323(\n \"SELECT * FROM 'device/+/data'\",\n ),\n actions: [\n new actions.IotEventsPutMessageAction(input, {\n batchMode: true, // optional property, default is 'false'\n messageId: '${payload.transactionId}', // optional property, default is a new UUID\n role: role, // optional property, default is a new UUID\n }),\n ],\n});\n/// !hide\n// Code snippet ended before !hide marker above\n }\n}",
728
674
  "syntaxKindCounter": {
729
- "10": 21,
730
- "75": 86,
675
+ "10": 8,
676
+ "75": 24,
731
677
  "104": 2,
678
+ "106": 1,
732
679
  "130": 1,
733
680
  "153": 1,
734
681
  "169": 1,
735
- "192": 8,
736
- "193": 9,
737
- "194": 26,
738
- "196": 9,
739
- "197": 8,
740
- "225": 4,
741
- "226": 3,
742
- "242": 4,
743
- "243": 4,
744
- "254": 3,
745
- "255": 3,
746
- "256": 3,
747
- "281": 23,
682
+ "192": 2,
683
+ "193": 3,
684
+ "194": 5,
685
+ "196": 1,
686
+ "197": 3,
687
+ "225": 3,
688
+ "242": 3,
689
+ "243": 3,
690
+ "254": 2,
691
+ "255": 2,
692
+ "256": 2,
693
+ "281": 6,
748
694
  "290": 1
749
695
  },
750
- "fqnsFingerprint": "6e2559681caaa286d2426acd8c74ce25d7fe2e03208855eb9eab1016a4a51820"
696
+ "fqnsFingerprint": "7596b97a6e2dc1d20a3ec11966af36a6c7a1fa381ae1e878a2a65ff6fd5fdda6"
751
697
  },
752
698
  "40619d30cb359b66de405bb274eac8c70c25b471d51e50d484fc7fe944c98b17": {
753
699
  "translations": {
@@ -827,28 +773,28 @@
827
773
  "281": 23,
828
774
  "290": 1
829
775
  },
830
- "fqnsFingerprint": "6e2559681caaa286d2426acd8c74ce25d7fe2e03208855eb9eab1016a4a51820"
776
+ "fqnsFingerprint": "f53670fdd6e9d2a2cd49713c7f85cd01fc73084731b16eb61e33b416baeaa8d3"
831
777
  },
832
- "4da6ba49fc535dfaf9731525afcb884b6b732dca23f6efa4af5799b71a2c35fc": {
778
+ "0b01c667e6913422446b90598a1282a4f7a93071107464d6ff5a012a85c05540": {
833
779
  "translations": {
834
780
  "python": {
835
- "source": "import aws_cdk.aws_iotevents_alpha as iotevents\nimport aws_cdk.aws_iotevents_actions_alpha as actions\n\n# input: iotevents.IInput\n\nstate = iotevents.State(\n state_name=\"MyState\",\n on_enter=[iotevents.Event(\n event_name=\"test-event\",\n condition=iotevents.Expression.current_input(input),\n actions=[actions, [\n actions.SetVariableAction(\"MyVariable\",\n iotevents.Expression.input_attribute(input, \"payload.temperature\"))\n ]\n ]\n )]\n)",
781
+ "source": "import aws_cdk.aws_iotevents_alpha as iotevents\nimport aws_cdk.aws_iotevents_actions_alpha as actions\n\n# input: iotevents.IInput\n\nstate = iotevents.State(\n state_name=\"MyState\",\n on_enter=[iotevents.Event(\n event_name=\"test-event\",\n condition=iotevents.Expression.current_input(input),\n actions=[\n actions.SetTimerAction(\"MyTimer\", {\n \"duration\": cdk.Duration.seconds(60)\n })\n ]\n )]\n)",
836
782
  "version": "2"
837
783
  },
838
784
  "csharp": {
839
- "source": "using Amazon.CDK.AWS.IoTEvents.Alpha;\nusing Amazon.CDK.AWS.IoTEvents.Actions.Alpha;\n\nIInput input;\n\nState state = new State(new StateProps {\n StateName = \"MyState\",\n OnEnter = new [] { new Event {\n EventName = \"test-event\",\n Condition = Expression.CurrentInput(input),\n Actions = new [] { actions, new [] {\n new SetVariableAction(\"MyVariable\", Expression.InputAttribute(input, \"payload.temperature\")) } }\n } }\n});",
785
+ "source": "using Amazon.CDK.AWS.IoTEvents.Alpha;\nusing Amazon.CDK.AWS.IoTEvents.Actions.Alpha;\n\nIInput input;\n\nState state = new State(new StateProps {\n StateName = \"MyState\",\n OnEnter = new [] { new Event {\n EventName = \"test-event\",\n Condition = Expression.CurrentInput(input),\n Actions = new [] {\n new SetTimerAction(\"MyTimer\", new Dictionary<string, object> {\n { \"duration\", cdk.Duration.Seconds(60) }\n }) }\n } }\n});",
840
786
  "version": "1"
841
787
  },
842
788
  "java": {
843
- "source": "import software.amazon.awscdk.services.iotevents.alpha.*;\nimport software.amazon.awscdk.services.iotevents.actions.alpha.*;\n\nIInput input;\n\nState state = State.Builder.create()\n .stateName(\"MyState\")\n .onEnter(List.of(Event.builder()\n .eventName(\"test-event\")\n .condition(Expression.currentInput(input))\n .actions(List.of(actions, List.of(\n new SetVariableAction(\"MyVariable\", Expression.inputAttribute(input, \"payload.temperature\")))))\n .build()))\n .build();",
789
+ "source": "import software.amazon.awscdk.services.iotevents.alpha.*;\nimport software.amazon.awscdk.services.iotevents.actions.alpha.*;\n\nIInput input;\n\nState state = State.Builder.create()\n .stateName(\"MyState\")\n .onEnter(List.of(Event.builder()\n .eventName(\"test-event\")\n .condition(Expression.currentInput(input))\n .actions(List.of(\n new SetTimerAction(\"MyTimer\", Map.of(\n \"duration\", cdk.Duration.seconds(60)))))\n .build()))\n .build();",
844
790
  "version": "1"
845
791
  },
846
792
  "go": {
847
- "source": "import iotevents \"github.com/aws/aws-cdk-go/awscdkioteventsalpha\"\nimport actions \"github.com/aws/aws-cdk-go/awscdkioteventsactionsalpha\"\n\nvar input iInput\n\nstate := iotevents.NewState(&stateProps{\n\tstateName: jsii.String(\"MyState\"),\n\tonEnter: []event{\n\t\t&event{\n\t\t\teventName: jsii.String(\"test-event\"),\n\t\t\tcondition: iotevents.expression.currentInput(input),\n\t\t\tactions: []iAction{\n\t\t\t\tactions,\n\t\t\t\t[]interface{}{\n\t\t\t\t\tactions.NewSetVariableAction(jsii.String(\"MyVariable\"), iotevents.*expression.inputAttribute(input, jsii.String(\"payload.temperature\"))),\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n})",
793
+ "source": "import iotevents \"github.com/aws/aws-cdk-go/awscdkioteventsalpha\"\nimport actions \"github.com/aws/aws-cdk-go/awscdkioteventsactionsalpha\"\n\nvar input iInput\n\nstate := iotevents.NewState(&stateProps{\n\tstateName: jsii.String(\"MyState\"),\n\tonEnter: []event{\n\t\t&event{\n\t\t\teventName: jsii.String(\"test-event\"),\n\t\t\tcondition: iotevents.expression.currentInput(input),\n\t\t\tactions: []iAction{\n\t\t\t\tactions.NewSetTimerAction(jsii.String(\"MyTimer\"), map[string]interface{}{\n\t\t\t\t\t\"duration\": cdk.Duration_seconds(jsii.Number(60)),\n\t\t\t\t}),\n\t\t\t},\n\t\t},\n\t},\n})",
848
794
  "version": "1"
849
795
  },
850
796
  "$": {
851
- "source": "import * as iotevents from '@aws-cdk/aws-iotevents-alpha';\nimport * as actions from '@aws-cdk/aws-iotevents-actions-alpha';\n\ndeclare const input: iotevents.IInput;\n\nconst state = new iotevents.State({\n stateName: 'MyState',\n onEnter: [{\n eventName: 'test-event',\n condition: iotevents.Expression.currentInput(input),\n actions: [\n actions: [\n new actions.SetVariableAction(\n 'MyVariable',\n iotevents.Expression.inputAttribute(input, 'payload.temperature'),\n ),\n ],\n ],\n }],\n});",
797
+ "source": "import * as iotevents from '@aws-cdk/aws-iotevents-alpha';\nimport * as actions from '@aws-cdk/aws-iotevents-actions-alpha';\n\ndeclare const input: iotevents.IInput;\n\nconst state = new iotevents.State({\n stateName: 'MyState',\n onEnter: [{\n eventName: 'test-event',\n condition: iotevents.Expression.currentInput(input),\n actions: [\n new actions.SetTimerAction('MyTimer', {\n duration: cdk.Duration.seconds(60),\n }),\n ],\n }],\n});",
852
798
  "version": "0"
853
799
  }
854
800
  },
@@ -863,23 +809,24 @@
863
809
  },
864
810
  "didCompile": false,
865
811
  "fqnsReferenced": [
866
- "@aws-cdk/aws-iotevents-actions-alpha.SetVariableAction",
812
+ "@aws-cdk/aws-iotevents-actions-alpha.SetTimerAction",
813
+ "@aws-cdk/aws-iotevents-actions-alpha.TimerDuration",
867
814
  "@aws-cdk/aws-iotevents-alpha.Expression",
868
815
  "@aws-cdk/aws-iotevents-alpha.Expression#currentInput",
869
- "@aws-cdk/aws-iotevents-alpha.Expression#inputAttribute",
870
816
  "@aws-cdk/aws-iotevents-alpha.IInput",
871
817
  "@aws-cdk/aws-iotevents-alpha.State",
872
818
  "@aws-cdk/aws-iotevents-alpha.StateProps"
873
819
  ],
874
- "fullSource": "import * as iotevents from '@aws-cdk/aws-iotevents-alpha';\nimport * as actions from '@aws-cdk/aws-iotevents-actions-alpha';\n\ndeclare const input: iotevents.IInput;\n\nconst state = new iotevents.State({\n stateName: 'MyState',\n onEnter: [{\n eventName: 'test-event',\n condition: iotevents.Expression.currentInput(input),\n actions: [\n actions: [\n new actions.SetVariableAction(\n 'MyVariable',\n iotevents.Expression.inputAttribute(input, 'payload.temperature'),\n ),\n ],\n ],\n }],\n});",
820
+ "fullSource": "import * as iotevents from '@aws-cdk/aws-iotevents-alpha';\nimport * as actions from '@aws-cdk/aws-iotevents-actions-alpha';\n\ndeclare const input: iotevents.IInput;\n\nconst state = new iotevents.State({\n stateName: 'MyState',\n onEnter: [{\n eventName: 'test-event',\n condition: iotevents.Expression.currentInput(input),\n actions: [\n new actions.SetTimerAction('MyTimer', {\n duration: cdk.Duration.seconds(60),\n }),\n ],\n }],\n});",
875
821
  "syntaxKindCounter": {
876
- "10": 6,
877
- "75": 24,
822
+ "8": 1,
823
+ "10": 5,
824
+ "75": 23,
878
825
  "130": 1,
879
826
  "153": 1,
880
827
  "169": 1,
881
- "192": 3,
882
- "193": 2,
828
+ "192": 2,
829
+ "193": 3,
883
830
  "194": 6,
884
831
  "196": 2,
885
832
  "197": 2,
@@ -889,31 +836,31 @@
889
836
  "254": 2,
890
837
  "255": 2,
891
838
  "256": 2,
892
- "281": 5,
839
+ "281": 6,
893
840
  "290": 1
894
841
  },
895
- "fqnsFingerprint": "d7f696d1560e7e749f26d0253392480ebe7631f049160423b0de9b0942159777"
842
+ "fqnsFingerprint": "c6efda2bbc5c20750d629badf7af2ba32e317452cc604a1a619627d3b933b46e"
896
843
  },
897
- "83394b2e287899f8923406ee7821847ec382ac3f3bdc6fa5ec43d46fbea1dbad": {
844
+ "09ed3b4f51b5ba0a6ae04fd13bcce00ff6d87cd1664db4acd91d19a31a1a87a9": {
898
845
  "translations": {
899
846
  "python": {
900
- "source": "import aws_cdk.aws_iotevents_alpha as iotevents\nimport aws_cdk.aws_iotevents_actions_alpha as actions\n\n# input: iotevents.IInput\n\nstate = iotevents.State(\n state_name=\"MyState\",\n on_enter=[iotevents.Event(\n event_name=\"test-event\",\n condition=iotevents.Expression.current_input(input),\n actions=[actions, [\n actions.SetVariableAction(\"MyVariable\",\n iotevents.Expression.input_attribute(input, \"payload.temperature\"))\n ]\n ]\n )]\n)",
847
+ "source": "import aws_cdk.aws_iotevents_alpha as iotevents\nimport aws_cdk.aws_iotevents_actions_alpha as actions\n\n# input: iotevents.IInput\n\nstate = iotevents.State(\n state_name=\"MyState\",\n on_enter=[iotevents.Event(\n event_name=\"test-event\",\n condition=iotevents.Expression.current_input(input),\n actions=[\n actions.SetTimerAction(\"MyTimer\", {\n \"duration\": cdk.Duration.seconds(60)\n })\n ]\n )]\n)",
901
848
  "version": "2"
902
849
  },
903
850
  "csharp": {
904
- "source": "using Amazon.CDK.AWS.IoTEvents.Alpha;\nusing Amazon.CDK.AWS.IoTEvents.Actions.Alpha;\n\nIInput input;\n\nState state = new State(new StateProps {\n StateName = \"MyState\",\n OnEnter = new [] { new Event {\n EventName = \"test-event\",\n Condition = Expression.CurrentInput(input),\n Actions = new [] { actions, new [] {\n new SetVariableAction(\"MyVariable\", Expression.InputAttribute(input, \"payload.temperature\")) } }\n } }\n});",
851
+ "source": "using Amazon.CDK.AWS.IoTEvents.Alpha;\nusing Amazon.CDK.AWS.IoTEvents.Actions.Alpha;\n\nIInput input;\n\nState state = new State(new StateProps {\n StateName = \"MyState\",\n OnEnter = new [] { new Event {\n EventName = \"test-event\",\n Condition = Expression.CurrentInput(input),\n Actions = new [] {\n new SetTimerAction(\"MyTimer\", new Dictionary<string, object> {\n { \"duration\", cdk.Duration.Seconds(60) }\n }) }\n } }\n});",
905
852
  "version": "1"
906
853
  },
907
854
  "java": {
908
- "source": "import software.amazon.awscdk.services.iotevents.alpha.*;\nimport software.amazon.awscdk.services.iotevents.actions.alpha.*;\n\nIInput input;\n\nState state = State.Builder.create()\n .stateName(\"MyState\")\n .onEnter(List.of(Event.builder()\n .eventName(\"test-event\")\n .condition(Expression.currentInput(input))\n .actions(List.of(actions, List.of(\n new SetVariableAction(\"MyVariable\", Expression.inputAttribute(input, \"payload.temperature\")))))\n .build()))\n .build();",
855
+ "source": "import software.amazon.awscdk.services.iotevents.alpha.*;\nimport software.amazon.awscdk.services.iotevents.actions.alpha.*;\n\nIInput input;\n\nState state = State.Builder.create()\n .stateName(\"MyState\")\n .onEnter(List.of(Event.builder()\n .eventName(\"test-event\")\n .condition(Expression.currentInput(input))\n .actions(List.of(\n new SetTimerAction(\"MyTimer\", Map.of(\n \"duration\", cdk.Duration.seconds(60)))))\n .build()))\n .build();",
909
856
  "version": "1"
910
857
  },
911
858
  "go": {
912
- "source": "import iotevents \"github.com/aws/aws-cdk-go/awscdkioteventsalpha\"\nimport actions \"github.com/aws/aws-cdk-go/awscdkioteventsactionsalpha\"\n\nvar input iInput\n\nstate := iotevents.NewState(&stateProps{\n\tstateName: jsii.String(\"MyState\"),\n\tonEnter: []event{\n\t\t&event{\n\t\t\teventName: jsii.String(\"test-event\"),\n\t\t\tcondition: iotevents.expression.currentInput(input),\n\t\t\tactions: []iAction{\n\t\t\t\tactions,\n\t\t\t\t[]interface{}{\n\t\t\t\t\tactions.NewSetVariableAction(jsii.String(\"MyVariable\"), iotevents.*expression.inputAttribute(input, jsii.String(\"payload.temperature\"))),\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n})",
859
+ "source": "import iotevents \"github.com/aws/aws-cdk-go/awscdkioteventsalpha\"\nimport actions \"github.com/aws/aws-cdk-go/awscdkioteventsactionsalpha\"\n\nvar input iInput\n\nstate := iotevents.NewState(&stateProps{\n\tstateName: jsii.String(\"MyState\"),\n\tonEnter: []event{\n\t\t&event{\n\t\t\teventName: jsii.String(\"test-event\"),\n\t\t\tcondition: iotevents.expression.currentInput(input),\n\t\t\tactions: []iAction{\n\t\t\t\tactions.NewSetTimerAction(jsii.String(\"MyTimer\"), map[string]interface{}{\n\t\t\t\t\t\"duration\": cdk.Duration_seconds(jsii.Number(60)),\n\t\t\t\t}),\n\t\t\t},\n\t\t},\n\t},\n})",
913
860
  "version": "1"
914
861
  },
915
862
  "$": {
916
- "source": "import * as iotevents from '@aws-cdk/aws-iotevents-alpha';\nimport * as actions from '@aws-cdk/aws-iotevents-actions-alpha';\n\ndeclare const input: iotevents.IInput;\n\nconst state = new iotevents.State({\n stateName: 'MyState',\n onEnter: [{\n eventName: 'test-event',\n condition: iotevents.Expression.currentInput(input),\n actions: [\n actions: [\n new actions.SetVariableAction(\n 'MyVariable',\n iotevents.Expression.inputAttribute(input, 'payload.temperature'),\n ),\n ],\n ],\n }],\n});",
863
+ "source": "import * as iotevents from '@aws-cdk/aws-iotevents-alpha';\nimport * as actions from '@aws-cdk/aws-iotevents-actions-alpha';\n\ndeclare const input: iotevents.IInput;\n\nconst state = new iotevents.State({\n stateName: 'MyState',\n onEnter: [{\n eventName: 'test-event',\n condition: iotevents.Expression.currentInput(input),\n actions: [\n new actions.SetTimerAction('MyTimer', {\n duration: cdk.Duration.seconds(60),\n }),\n ],\n }],\n});",
917
864
  "version": "0"
918
865
  }
919
866
  },
@@ -928,23 +875,24 @@
928
875
  },
929
876
  "didCompile": false,
930
877
  "fqnsReferenced": [
931
- "@aws-cdk/aws-iotevents-actions-alpha.SetVariableAction",
878
+ "@aws-cdk/aws-iotevents-actions-alpha.SetTimerAction",
879
+ "@aws-cdk/aws-iotevents-actions-alpha.TimerDuration",
932
880
  "@aws-cdk/aws-iotevents-alpha.Expression",
933
881
  "@aws-cdk/aws-iotevents-alpha.Expression#currentInput",
934
- "@aws-cdk/aws-iotevents-alpha.Expression#inputAttribute",
935
882
  "@aws-cdk/aws-iotevents-alpha.IInput",
936
883
  "@aws-cdk/aws-iotevents-alpha.State",
937
884
  "@aws-cdk/aws-iotevents-alpha.StateProps"
938
885
  ],
939
- "fullSource": "import * as iotevents from '@aws-cdk/aws-iotevents-alpha';\nimport * as actions from '@aws-cdk/aws-iotevents-actions-alpha';\n\ndeclare const input: iotevents.IInput;\n\nconst state = new iotevents.State({\n stateName: 'MyState',\n onEnter: [{\n eventName: 'test-event',\n condition: iotevents.Expression.currentInput(input),\n actions: [\n actions: [\n new actions.SetVariableAction(\n 'MyVariable',\n iotevents.Expression.inputAttribute(input, 'payload.temperature'),\n ),\n ],\n ],\n }],\n});",
886
+ "fullSource": "import * as iotevents from '@aws-cdk/aws-iotevents-alpha';\nimport * as actions from '@aws-cdk/aws-iotevents-actions-alpha';\n\ndeclare const input: iotevents.IInput;\n\nconst state = new iotevents.State({\n stateName: 'MyState',\n onEnter: [{\n eventName: 'test-event',\n condition: iotevents.Expression.currentInput(input),\n actions: [\n new actions.SetTimerAction('MyTimer', {\n duration: cdk.Duration.seconds(60),\n }),\n ],\n }],\n});",
940
887
  "syntaxKindCounter": {
941
- "10": 6,
942
- "75": 24,
888
+ "8": 1,
889
+ "10": 5,
890
+ "75": 23,
943
891
  "130": 1,
944
892
  "153": 1,
945
893
  "169": 1,
946
- "192": 3,
947
- "193": 2,
894
+ "192": 2,
895
+ "193": 3,
948
896
  "194": 6,
949
897
  "196": 2,
950
898
  "197": 2,
@@ -954,10 +902,10 @@
954
902
  "254": 2,
955
903
  "255": 2,
956
904
  "256": 2,
957
- "281": 5,
905
+ "281": 6,
958
906
  "290": 1
959
907
  },
960
- "fqnsFingerprint": "d7f696d1560e7e749f26d0253392480ebe7631f049160423b0de9b0942159777"
908
+ "fqnsFingerprint": "c6efda2bbc5c20750d629badf7af2ba32e317452cc604a1a619627d3b933b46e"
961
909
  },
962
910
  "51ca9b61975a5e0a097ee68db2769a7ecf42d3bc1bf0209da6585d4095f7c29d": {
963
911
  "translations": {
@@ -1037,7 +985,7 @@
1037
985
  "281": 23,
1038
986
  "290": 1
1039
987
  },
1040
- "fqnsFingerprint": "6e2559681caaa286d2426acd8c74ce25d7fe2e03208855eb9eab1016a4a51820"
988
+ "fqnsFingerprint": "f53670fdd6e9d2a2cd49713c7f85cd01fc73084731b16eb61e33b416baeaa8d3"
1041
989
  }
1042
990
  }
1043
991
  }
package/README.md CHANGED
@@ -20,20 +20,6 @@ AWS IoT Events enables you to monitor your equipment or device fleets for
20
20
  failures or changes in operation, and to trigger actions when such events
21
21
  occur.
22
22
 
23
- ## Installation
24
-
25
- Install the module:
26
-
27
- ```console
28
- $ npm i @aws-cdk/aws-iotevents
29
- ```
30
-
31
- Import it into your code:
32
-
33
- ```ts nofixture
34
- import * as iotevents from '@aws-cdk/aws-iotevents-alpha';
35
- ```
36
-
37
23
  ## `DetectorModel`
38
24
 
39
25
  The following example creates an AWS IoT Events detector model to your stack.
package/lib/action.d.ts CHANGED
@@ -16,8 +16,9 @@ export interface ActionBindOptions {
16
16
  export interface IAction {
17
17
  /**
18
18
  * Returns the AWS IoT Events action specification.
19
+ * @internal
19
20
  */
20
- bind(scope: Construct, options: ActionBindOptions): ActionConfig;
21
+ _bind(scope: Construct, options: ActionBindOptions): ActionConfig;
21
22
  }
22
23
  /**
23
24
  * Properties for a AWS IoT Events 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBpYW0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWlhbSc7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB7IENmbkRldGVjdG9yTW9kZWwgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtaW90ZXZlbnRzJztcblxuLyoqXG4gKiBPcHRpb25zIHdoZW4gYmluZGluZyBhIEFjdGlvbiB0byBhIGRldGVjdG9yIG1vZGVsLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFjdGlvbkJpbmRPcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBJQU0gcm9sZSBhc3N1bWVkIGJ5IElvVCBFdmVudHMgdG8gcGVyZm9ybSB0aGUgYWN0aW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgcm9sZTogaWFtLklSb2xlO1xufVxuXG4vKipcbiAqIEFuIGFic3RyYWN0IGFjdGlvbiBmb3IgRGV0ZWN0b3JNb2RlbC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJQWN0aW9uIHtcbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIEFXUyBJb1QgRXZlbnRzIGFjdGlvbiBzcGVjaWZpY2F0aW9uLlxuICAgKi9cbiAgYmluZChzY29wZTogQ29uc3RydWN0LCBvcHRpb25zOiBBY3Rpb25CaW5kT3B0aW9ucyk6IEFjdGlvbkNvbmZpZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBhIEFXUyBJb1QgRXZlbnRzIGFjdGlvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFjdGlvbkNvbmZpZyB7XG4gIC8qKlxuICAgKiBUaGUgY29uZmlndXJhdGlvbiBmb3IgdGhpcyBhY3Rpb24uXG4gICAqL1xuICByZWFkb25seSBjb25maWd1cmF0aW9uOiBDZm5EZXRlY3Rvck1vZGVsLkFjdGlvblByb3BlcnR5O1xufVxuIl19
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBpYW0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWlhbSc7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB7IENmbkRldGVjdG9yTW9kZWwgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtaW90ZXZlbnRzJztcblxuLyoqXG4gKiBPcHRpb25zIHdoZW4gYmluZGluZyBhIEFjdGlvbiB0byBhIGRldGVjdG9yIG1vZGVsLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFjdGlvbkJpbmRPcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBJQU0gcm9sZSBhc3N1bWVkIGJ5IElvVCBFdmVudHMgdG8gcGVyZm9ybSB0aGUgYWN0aW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgcm9sZTogaWFtLklSb2xlO1xufVxuXG4vKipcbiAqIEFuIGFic3RyYWN0IGFjdGlvbiBmb3IgRGV0ZWN0b3JNb2RlbC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJQWN0aW9uIHtcbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIEFXUyBJb1QgRXZlbnRzIGFjdGlvbiBzcGVjaWZpY2F0aW9uLlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIF9iaW5kKHNjb3BlOiBDb25zdHJ1Y3QsIG9wdGlvbnM6IEFjdGlvbkJpbmRPcHRpb25zKTogQWN0aW9uQ29uZmlnO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGEgQVdTIElvVCBFdmVudHMgYWN0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQWN0aW9uQ29uZmlnIHtcbiAgLyoqXG4gICAqIFRoZSBjb25maWd1cmF0aW9uIGZvciB0aGlzIGFjdGlvbi5cbiAgICovXG4gIHJlYWRvbmx5IGNvbmZpZ3VyYXRpb246IENmbkRldGVjdG9yTW9kZWwuQWN0aW9uUHJvcGVydHk7XG59XG4iXX0=
@@ -73,5 +73,5 @@ class DetectorModel extends aws_cdk_lib_1.Resource {
73
73
  }
74
74
  exports.DetectorModel = DetectorModel;
75
75
  _a = JSII_RTTI_SYMBOL_1;
76
- DetectorModel[_a] = { fqn: "@aws-cdk/aws-iotevents-alpha.DetectorModel", version: "2.35.0-alpha.0" };
76
+ DetectorModel[_a] = { fqn: "@aws-cdk/aws-iotevents-alpha.DetectorModel", version: "2.37.1-alpha.0" };
77
77
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV0ZWN0b3ItbW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJkZXRlY3Rvci1tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSwyQ0FBMkM7QUFDM0MsNkNBQWtEO0FBRWxELDZEQUE2RDtBQWU3RDs7R0FFRztBQUNILElBQVksZUFZWDtBQVpELFdBQVksZUFBZTtJQUN6Qjs7O09BR0c7SUFDSCxrQ0FBZSxDQUFBO0lBRWY7OztPQUdHO0lBQ0gsb0NBQWlCLENBQUE7QUFDbkIsQ0FBQyxFQVpXLGVBQWUsR0FBZix1QkFBZSxLQUFmLHVCQUFlLFFBWTFCO0FBMEREOztHQUVHO0FBQ0gsTUFBYSxhQUFjLFNBQVEsc0JBQVE7SUFZekMsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUF5QjtRQUNqRSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLFlBQVksRUFBRSxLQUFLLENBQUMsaUJBQWlCO1NBQ3RDLENBQUMsQ0FBQzs7Ozs7OytDQWZNLGFBQWE7Ozs7UUFpQnRCLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLHFDQUFxQyxFQUFFLEVBQUU7WUFDL0QsTUFBTSxJQUFJLEtBQUssQ0FBQyw4REFBOEQsQ0FBQyxDQUFDO1NBQ2pGO1FBRUQsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksSUFBSSxJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLG1CQUFtQixFQUFFO1lBQ2pFLFNBQVMsRUFBRSxJQUFJLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyx5QkFBeUIsQ0FBQztTQUMvRCxDQUFDLENBQUM7UUFFSCxNQUFNLFFBQVEsR0FBRyxJQUFJLGdDQUFnQixDQUFDLElBQUksRUFBRSxVQUFVLEVBQUU7WUFDdEQsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLFlBQVk7WUFDcEMsd0JBQXdCLEVBQUUsS0FBSyxDQUFDLFdBQVc7WUFDM0MsZ0JBQWdCLEVBQUUsS0FBSyxDQUFDLGdCQUFnQjtZQUN4QyxHQUFHLEVBQUUsS0FBSyxDQUFDLFdBQVc7WUFDdEIsdUJBQXVCLEVBQUU7Z0JBQ3ZCLGdCQUFnQixFQUFFLEtBQUssQ0FBQyxZQUFZLENBQUMsU0FBUztnQkFDOUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxZQUFZLENBQUMsa0JBQWtCLENBQUMsSUFBSSxFQUFFLEVBQUUsSUFBSSxFQUFFLEVBQUUsSUFBSSxHQUFHLEVBQVMsQ0FBQzthQUNoRjtZQUNELE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTztTQUN0QixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLHdCQUF3QixDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztLQUN0RTtJQXJDRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxLQUFnQixFQUFFLEVBQVUsRUFBRSxpQkFBeUI7UUFDekYsT0FBTyxJQUFJLEtBQU0sU0FBUSxzQkFBUTtZQUF0Qjs7Z0JBQ08sc0JBQWlCLEdBQUcsaUJBQWlCLENBQUM7WUFDeEQsQ0FBQztTQUFBLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0tBQ2Q7O0FBUkgsc0NBdUNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgaWFtIGZyb20gJ2F3cy1jZGstbGliL2F3cy1pYW0nO1xuaW1wb3J0IHsgUmVzb3VyY2UsIElSZXNvdXJjZSB9IGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgQ2ZuRGV0ZWN0b3JNb2RlbCB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1pb3RldmVudHMnO1xuaW1wb3J0IHsgU3RhdGUgfSBmcm9tICcuL3N0YXRlJztcblxuLyoqXG4gKiBSZXByZXNlbnRzIGFuIEFXUyBJb1QgRXZlbnRzIGRldGVjdG9yIG1vZGVsLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIElEZXRlY3Rvck1vZGVsIGV4dGVuZHMgSVJlc291cmNlIHtcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBkZXRlY3RvciBtb2RlbC5cbiAgICpcbiAgICogQGF0dHJpYnV0ZVxuICAgKi9cbiAgcmVhZG9ubHkgZGV0ZWN0b3JNb2RlbE5hbWU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBJbmZvcm1hdGlvbiBhYm91dCB0aGUgb3JkZXIgaW4gd2hpY2ggZXZlbnRzIGFyZSBldmFsdWF0ZWQgYW5kIGhvdyBhY3Rpb25zIGFyZSBleGVjdXRlZC5cbiAqL1xuZXhwb3J0IGVudW0gRXZlbnRFdmFsdWF0aW9uIHtcbiAgLyoqXG4gICAqIFdoZW4gc2V0dGluZyB0byBCQVRDSCwgdmFyaWFibGVzIHdpdGhpbiBhIHN0YXRlIGFyZSB1cGRhdGVkIGFuZCBldmVudHMgd2l0aGluIGEgc3RhdGUgYXJlXG4gICAqIHBlcmZvcm1lZCBvbmx5IGFmdGVyIGFsbCBldmVudCBjb25kaXRpb25zIGFyZSBldmFsdWF0ZWQuXG4gICAqL1xuICBCQVRDSCA9ICdCQVRDSCcsXG5cbiAgLyoqXG4gICAqIFdoZW4gc2V0dGluZyB0byBTRVJJQUwsIHZhcmlhYmxlcyBhcmUgdXBkYXRlZCBhbmQgZXZlbnQgY29uZGl0aW9ucyBhcmUgZXZhbHVhdGVkIGluIHRoZSBvcmRlclxuICAgKiB0aGF0IHRoZSBldmVudHMgYXJlIGRlZmluZWQuXG4gICAqL1xuICBTRVJJQUwgPSAnU0VSSUFMJyxcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBkZWZpbmluZyBhbiBBV1MgSW9UIEV2ZW50cyBkZXRlY3RvciBtb2RlbC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEZXRlY3Rvck1vZGVsUHJvcHMge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIGRldGVjdG9yIG1vZGVsLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIENsb3VkRm9ybWF0aW9uIHdpbGwgZ2VuZXJhdGUgYSB1bmlxdWUgbmFtZSBvZiB0aGUgZGV0ZWN0b3IgbW9kZWxcbiAgICovXG4gIHJlYWRvbmx5IGRldGVjdG9yTW9kZWxOYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBIGJyaWVmIGRlc2NyaXB0aW9uIG9mIHRoZSBkZXRlY3RvciBtb2RlbC5cbiAgICpcbiAgICogQGRlZmF1bHQgbm9uZVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEluZm9ybWF0aW9uIGFib3V0IHRoZSBvcmRlciBpbiB3aGljaCBldmVudHMgYXJlIGV2YWx1YXRlZCBhbmQgaG93IGFjdGlvbnMgYXJlIGV4ZWN1dGVkLlxuICAgKlxuICAgKiBXaGVuIHNldHRpbmcgdG8gU0VSSUFMLCB2YXJpYWJsZXMgYXJlIHVwZGF0ZWQgYW5kIGV2ZW50IGNvbmRpdGlvbnMgYXJlIGV2YWx1YXRlZCBpbiB0aGUgb3JkZXJcbiAgICogdGhhdCB0aGUgZXZlbnRzIGFyZSBkZWZpbmVkLlxuICAgKiBXaGVuIHNldHRpbmcgdG8gQkFUQ0gsIHZhcmlhYmxlcyB3aXRoaW4gYSBzdGF0ZSBhcmUgdXBkYXRlZCBhbmQgZXZlbnRzIHdpdGhpbiBhIHN0YXRlIGFyZVxuICAgKiBwZXJmb3JtZWQgb25seSBhZnRlciBhbGwgZXZlbnQgY29uZGl0aW9ucyBhcmUgZXZhbHVhdGVkLlxuICAgKlxuICAgKiBAZGVmYXVsdCBFdmVudEV2YWx1YXRpb24uQkFUQ0hcbiAgICovXG4gIHJlYWRvbmx5IGV2YWx1YXRpb25NZXRob2Q/OiBFdmVudEV2YWx1YXRpb247XG5cbiAgLyoqXG4gICAqIFRoZSB2YWx1ZSB1c2VkIHRvIGlkZW50aWZ5IGEgZGV0ZWN0b3IgaW5zdGFuY2UuIFdoZW4gYSBkZXZpY2Ugb3Igc3lzdGVtIHNlbmRzIGlucHV0LCBhIG5ld1xuICAgKiBkZXRlY3RvciBpbnN0YW5jZSB3aXRoIGEgdW5pcXVlIGtleSB2YWx1ZSBpcyBjcmVhdGVkLiBBV1MgSW9UIEV2ZW50cyBjYW4gY29udGludWUgdG8gcm91dGVcbiAgICogaW5wdXQgdG8gaXRzIGNvcnJlc3BvbmRpbmcgZGV0ZWN0b3IgaW5zdGFuY2UgYmFzZWQgb24gdGhpcyBpZGVudGlmeWluZyBpbmZvcm1hdGlvbi5cbiAgICpcbiAgICogVGhpcyBwYXJhbWV0ZXIgdXNlcyBhIEpTT04tcGF0aCBleHByZXNzaW9uIHRvIHNlbGVjdCB0aGUgYXR0cmlidXRlLXZhbHVlIHBhaXIgaW4gdGhlIG1lc3NhZ2VcbiAgICogcGF5bG9hZCB0aGF0IGlzIHVzZWQgZm9yIGlkZW50aWZpY2F0aW9uLiBUbyByb3V0ZSB0aGUgbWVzc2FnZSB0byB0aGUgY29ycmVjdCBkZXRlY3RvciBpbnN0YW5jZSxcbiAgICogdGhlIGRldmljZSBtdXN0IHNlbmQgYSBtZXNzYWdlIHBheWxvYWQgdGhhdCBjb250YWlucyB0aGUgc2FtZSBhdHRyaWJ1dGUtdmFsdWUuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gbm9uZSAoc2luZ2xlIGRldGVjdG9yIGluc3RhbmNlIHdpbGwgYmUgY3JlYXRlZCBhbmQgYWxsIGlucHV0cyB3aWxsIGJlIHJvdXRlZCB0byBpdClcbiAgICovXG4gIHJlYWRvbmx5IGRldGVjdG9yS2V5Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgc3RhdGUgdGhhdCBpcyBlbnRlcmVkIGF0IHRoZSBjcmVhdGlvbiBvZiBlYWNoIGRldGVjdG9yLlxuICAgKi9cbiAgcmVhZG9ubHkgaW5pdGlhbFN0YXRlOiBTdGF0ZTtcblxuICAvKipcbiAgICogVGhlIHJvbGUgdGhhdCBncmFudHMgcGVybWlzc2lvbiB0byBBV1MgSW9UIEV2ZW50cyB0byBwZXJmb3JtIGl0cyBvcGVyYXRpb25zLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIGEgcm9sZSB3aWxsIGJlIGNyZWF0ZWQgd2l0aCBkZWZhdWx0IHBlcm1pc3Npb25zXG4gICAqL1xuICByZWFkb25seSByb2xlPzogaWFtLklSb2xlO1xufVxuXG4vKipcbiAqIERlZmluZXMgYW4gQVdTIElvVCBFdmVudHMgZGV0ZWN0b3IgbW9kZWwgaW4gdGhpcyBzdGFjay5cbiAqL1xuZXhwb3J0IGNsYXNzIERldGVjdG9yTW9kZWwgZXh0ZW5kcyBSZXNvdXJjZSBpbXBsZW1lbnRzIElEZXRlY3Rvck1vZGVsIHtcbiAgLyoqXG4gICAqIEltcG9ydCBhbiBleGlzdGluZyBkZXRlY3RvciBtb2RlbC5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZnJvbURldGVjdG9yTW9kZWxOYW1lKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIGRldGVjdG9yTW9kZWxOYW1lOiBzdHJpbmcpOiBJRGV0ZWN0b3JNb2RlbCB7XG4gICAgcmV0dXJuIG5ldyBjbGFzcyBleHRlbmRzIFJlc291cmNlIGltcGxlbWVudHMgSURldGVjdG9yTW9kZWwge1xuICAgICAgcHVibGljIHJlYWRvbmx5IGRldGVjdG9yTW9kZWxOYW1lID0gZGV0ZWN0b3JNb2RlbE5hbWU7XG4gICAgfShzY29wZSwgaWQpO1xuICB9XG5cbiAgcHVibGljIHJlYWRvbmx5IGRldGVjdG9yTW9kZWxOYW1lOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IERldGVjdG9yTW9kZWxQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgcGh5c2ljYWxOYW1lOiBwcm9wcy5kZXRlY3Rvck1vZGVsTmFtZSxcbiAgICB9KTtcblxuICAgIGlmICghcHJvcHMuaW5pdGlhbFN0YXRlLl9vbkVudGVyRXZlbnRzSGF2ZUF0TGVhc3RPbmVDb25kaXRpb24oKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdEZXRlY3RvciBNb2RlbCBtdXN0IGhhdmUgYXQgbGVhc3Qgb25lIElucHV0IHdpdGggYSBjb25kaXRpb24nKTtcbiAgICB9XG5cbiAgICBjb25zdCByb2xlID0gcHJvcHMucm9sZSA/PyBuZXcgaWFtLlJvbGUodGhpcywgJ0RldGVjdG9yTW9kZWxSb2xlJywge1xuICAgICAgYXNzdW1lZEJ5OiBuZXcgaWFtLlNlcnZpY2VQcmluY2lwYWwoJ2lvdGV2ZW50cy5hbWF6b25hd3MuY29tJyksXG4gICAgfSk7XG5cbiAgICBjb25zdCByZXNvdXJjZSA9IG5ldyBDZm5EZXRlY3Rvck1vZGVsKHRoaXMsICdSZXNvdXJjZScsIHtcbiAgICAgIGRldGVjdG9yTW9kZWxOYW1lOiB0aGlzLnBoeXNpY2FsTmFtZSxcbiAgICAgIGRldGVjdG9yTW9kZWxEZXNjcmlwdGlvbjogcHJvcHMuZGVzY3JpcHRpb24sXG4gICAgICBldmFsdWF0aW9uTWV0aG9kOiBwcm9wcy5ldmFsdWF0aW9uTWV0aG9kLFxuICAgICAga2V5OiBwcm9wcy5kZXRlY3RvcktleSxcbiAgICAgIGRldGVjdG9yTW9kZWxEZWZpbml0aW9uOiB7XG4gICAgICAgIGluaXRpYWxTdGF0ZU5hbWU6IHByb3BzLmluaXRpYWxTdGF0ZS5zdGF0ZU5hbWUsXG4gICAgICAgIHN0YXRlczogcHJvcHMuaW5pdGlhbFN0YXRlLl9jb2xsZWN0U3RhdGVKc29ucyh0aGlzLCB7IHJvbGUgfSwgbmV3IFNldDxTdGF0ZT4oKSksXG4gICAgICB9LFxuICAgICAgcm9sZUFybjogcm9sZS5yb2xlQXJuLFxuICAgIH0pO1xuXG4gICAgdGhpcy5kZXRlY3Rvck1vZGVsTmFtZSA9IHRoaXMuZ2V0UmVzb3VyY2VOYW1lQXR0cmlidXRlKHJlc291cmNlLnJlZik7XG4gIH1cbn1cbiJdfQ==
@@ -13,6 +13,12 @@ export declare abstract class Expression {
13
13
  * It is evaluated to true if the specified input message was received.
14
14
  */
15
15
  static currentInput(input: IInput): Expression;
16
+ /**
17
+ * Create a expression for function `timeout("timer-name")`.
18
+ * It is evaluated to true if the specified timer has elapsed.
19
+ * You can define a timer only using the `setTimer` action.
20
+ */
21
+ static timeout(timerName: string): Expression;
16
22
  /**
17
23
  * Create a expression for get an input attribute as `$input.TemperatureInput.temperatures[2]`.
18
24
  */
package/lib/expression.js CHANGED
@@ -33,6 +33,14 @@ class Expression {
33
33
  }
34
34
  return this.fromString(`currentInput("${input.inputName}")`);
35
35
  }
36
+ /**
37
+ * Create a expression for function `timeout("timer-name")`.
38
+ * It is evaluated to true if the specified timer has elapsed.
39
+ * You can define a timer only using the `setTimer` action.
40
+ */
41
+ static timeout(timerName) {
42
+ return this.fromString(`timeout("${timerName}")`);
43
+ }
36
44
  /**
37
45
  * Create a expression for get an input attribute as `$input.TemperatureInput.temperatures[2]`.
38
46
  */
@@ -307,7 +315,7 @@ class Expression {
307
315
  }
308
316
  exports.Expression = Expression;
309
317
  _a = JSII_RTTI_SYMBOL_1;
310
- Expression[_a] = { fqn: "@aws-cdk/aws-iotevents-alpha.Expression", version: "2.35.0-alpha.0" };
318
+ Expression[_a] = { fqn: "@aws-cdk/aws-iotevents-alpha.Expression", version: "2.37.1-alpha.0" };
311
319
  class StringExpression extends Expression {
312
320
  constructor(value) {
313
321
  super();
@@ -338,4 +346,4 @@ class BinaryOperationExpression extends Expression {
338
346
  : `(${expression})`;
339
347
  }
340
348
  }
341
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwcmVzc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImV4cHJlc3Npb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBRUE7OztHQUdHO0FBQ0gsTUFBc0IsVUFBVTtJQXVJOUI7S0FDQztJQXZJRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyxVQUFVLENBQUMsS0FBYTtRQUNwQyxPQUFPLElBQUksZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUM7S0FDcEM7SUFFRDs7O09BR0c7SUFDSSxNQUFNLENBQUMsWUFBWSxDQUFDLEtBQWE7Ozs7Ozs7Ozs7UUFDdEMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLGlCQUFpQixLQUFLLENBQUMsU0FBUyxJQUFJLENBQUMsQ0FBQztLQUM5RDtJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLGNBQWMsQ0FBQyxLQUFhLEVBQUUsSUFBWTs7Ozs7Ozs7OztRQUN0RCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxLQUFLLENBQUMsU0FBUyxJQUFJLElBQUksRUFBRSxDQUFDLENBQUM7S0FDN0Q7SUFFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBZ0IsRUFBRSxLQUFpQjs7Ozs7Ozs7Ozs7UUFDbkQsT0FBTyxJQUFJLHlCQUF5QixDQUFDLElBQUksRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0tBQzVEO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMsUUFBUSxDQUFDLElBQWdCLEVBQUUsS0FBaUI7Ozs7Ozs7Ozs7O1FBQ3hELE9BQU8sSUFBSSx5QkFBeUIsQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztLQUM1RDtJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFnQixFQUFFLEtBQWlCOzs7Ozs7Ozs7OztRQUN0RCxPQUFPLElBQUkseUJBQXlCLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFB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QkFBeUIsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztLQUM1RDs7QUFySUgsZ0NBb0pDOzs7QUFFRCxNQUFNLGdCQUFpQixTQUFRLFVBQVU7SUFDdkMsWUFBNkIsS0FBYTtRQUN4QyxLQUFLLEVBQUUsQ0FBQztRQURtQixVQUFLLEdBQUwsS0FBSyxDQUFRO0tBRXpDO0lBRU0sUUFBUTtRQUNiLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztLQUNuQjtDQUNGO0FBRUQsTUFBTSx5QkFBMEIsU0FBUSxVQUFVO0lBQ2hELFlBQ21CLElBQWdCLEVBQ2hCLFFBQWdCLEVBQ2hCLEtBQWlCO0lBQ2xDOzs7O09BSUc7SUFDYyxRQUFnQjtRQUVqQyxLQUFLLEVBQUUsQ0FBQztRQVZTLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsYUFBUSxHQUFSLFFBQVEsQ0FBUTtRQUNoQixVQUFLLEdBQUwsS0FBSyxDQUFZO1FBTWpCLGFBQVEsR0FBUixRQUFRLENBQVE7S0FHbEM7SUFFTSxRQUFRLENBQUMsY0FBdUI7UUFDckMsTUFBTSxVQUFVLEdBQUcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztRQUNqSCxPQUFPLGNBQWMsS0FBSyxTQUFTLElBQUksY0FBYyxJQUFJLElBQUksQ0FBQyxRQUFRO1lBQ3BFLENBQUMsQ0FBQyxVQUFVO1lBQ1osQ0FBQyxDQUFDLElBQUksVUFBVSxHQUFHLENBQUM7S0FDdkI7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElJbnB1dCB9IGZyb20gJy4vaW5wdXQnO1xuXG4vKipcbiAqIEV4cHJlc3Npb24gZm9yIGV2ZW50cyBpbiBEZXRlY3RvciBNb2RlbCBzdGF0ZS5cbiAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2lvdGV2ZW50cy9sYXRlc3QvZGV2ZWxvcGVyZ3VpZGUvaW90ZXZlbnRzLWV4cHJlc3Npb25zLmh0bWxcbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEV4cHJlc3Npb24ge1xuICAvKipcbiAgICogQ3JlYXRlIGEgZXhwcmVzc2lvbiBmcm9tIHRoZSBnaXZlbiBzdHJpbmcuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGZyb21TdHJpbmcodmFsdWU6IHN0cmluZyk6IEV4cHJlc3Npb24ge1xuICAgIHJldHVybiBuZXcgU3RyaW5nRXhwcmVzc2lvbih2YWx1ZSk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGEgZXhwcmVzc2lvbiBmb3IgZnVuY3Rpb24gYGN1cnJlbnRJbnB1dCgpYC5cbiAgICogSXQgaXMgZXZhbHVhdGVkIHRvIHRydWUgaWYgdGhlIHNwZWNpZmllZCBpbnB1dCBtZXNzYWdlIHdhcyByZWNlaXZlZC5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY3VycmVudElucHV0KGlucHV0OiBJSW5wdXQpOiBFeHByZXNzaW9uIHtcbiAgICByZXR1cm4gdGhpcy5mcm9tU3RyaW5nKGBjdXJyZW50SW5wdXQoXCIke2lucHV0LmlucHV0TmFtZX1cIilgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBleHByZXNzaW9uIGZvciBnZXQgYW4gaW5wdXQgYXR0cmlidXRlIGFzIGAkaW5wdXQuVGVtcGVyYXR1cmVJbnB1dC50ZW1wZXJhdHVyZXNbMl1gLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBpbnB1dEF0dHJpYnV0ZShpbnB1dDogSUlucHV0LCBwYXRoOiBzdHJpbmcpOiBFeHByZXNzaW9uIHtcbiAgICByZXR1cm4gdGhpcy5mcm9tU3RyaW5nKGAkaW5wdXQuJHtpbnB1dC5pbnB1dE5hbWV9LiR7cGF0aH1gKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBleHByZXNzaW9uIGZvciB0aGUgQWRkaXRpb24gb3BlcmF0b3IuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGFkZChsZWZ0OiBFeHByZXNzaW9uLCByaWdodDogRXhwcmVzc2lvbik6IEV4cHJlc3Npb24ge1xuICAgIHJldHVybiBuZXcgQmluYXJ5T3BlcmF0aW9uRXhwcmVzc2lvbihsZWZ0LCAnKycsIHJpZ2h0LCAxMik7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGEgZXhwcmVzc2lvbiBmb3IgdGhlIFN1YnRyYWN0aW9uIG9wZXJhdG9yLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBzdWJ0cmFjdChsZWZ0OiBFeHByZXNzaW9uLCByaWdodDogRXhwcmVzc2lvbik6IEV4cHJlc3Npb24ge1xuICAgIHJldHVybiBuZXcgQmluYXJ5T3BlcmF0aW9uRXhwcmVzc2lvbihsZWZ0LCAnLScsIHJpZ2h0LCAxMik7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGEgZXhwcmVzc2lvbiBmb3IgdGhlIERpdmlzaW9uIG9wZXJhdG9yLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBkaXZpZGUobGVmdDogRXhwcmVzc2lvbiwgcmlnaHQ6IEV4cHJlc3Npb24pOiBFeHByZXNzaW9uIHtcbiAgICByZXR1cm4gbmV3IEJpbmFyeU9wZXJhdGlvbkV4cHJlc3Npb24obGVmdCwgJy8nLCByaWdodCwgMTMpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIGV4cHJlc3Npb24gZm9yIHRoZSBNdWx0aXBsaWNhdGlvbiBvcGVyYXRvci5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgbXVsdGlwbHkobGVmdDogRXhwcmVzc2lvbiwgcmlnaHQ6IEV4cHJlc3Npb24pOiBFeHByZXNzaW9uIHtcbiAgICByZXR1cm4gbmV3IEJpbmFyeU9wZXJhdGlvbkV4cHJlc3Npb24obGVmdCwgJyonLCByaWdodCwgMTMpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIGV4cHJlc3Npb24gZm9yIHRoZSBTdHJpbmcgQ29uY2F0ZW5hdGlvbiBvcGVyYXRvci5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29uY2F0KGxlZnQ6IEV4cHJlc3Npb24sIHJpZ2h0OiBFeHByZXNzaW9uKTogRXhwcmVzc2lvbiB7XG4gICAgcmV0dXJuIHRoaXMuYWRkKGxlZnQsIHJpZ2h0KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBleHByZXNzaW9uIGZvciB0aGUgQml0d2lzZSBPUiBvcGVyYXRvci5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgYml0d2lzZU9yKGxlZnQ6IEV4cHJlc3Npb24sIHJpZ2h0OiBFeHByZXNzaW9uKTogRXhwcmVzc2lvbiB7XG4gICAgcmV0dXJuIG5ldyBCaW5hcnlPcGVyYXRpb25FeHByZXNzaW9uKGxlZnQsICd8JywgcmlnaHQsIDYpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIGV4cHJlc3Npb24gZm9yIHRoZSBCaXR3aXNlIEFORCBvcGVyYXRvci5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgYml0d2lzZUFuZChsZWZ0OiBFeHByZXNzaW9uLCByaWdodDogRXhwcmVzc2lvbik6IEV4cHJlc3Npb24ge1xuICAgIHJldHVybiBuZXcgQmluYXJ5T3BlcmF0aW9uRXhwcmVzc2lvbihsZWZ0LCAnJicsIHJpZ2h0LCA4KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBleHByZXNzaW9uIGZvciB0aGUgQml0d2lzZSBYT1Igb3BlcmF0b3IuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGJpdHdpc2VYb3IobGVmdDogRXhwcmVzc2lvbiwgcmlnaHQ6IEV4cHJlc3Npb24pOiBFeHByZXNzaW9uIHtcbiAgICByZXR1cm4gbmV3IEJpbmFyeU9wZXJhdGlvbkV4cHJlc3Npb24obGVmdCwgJ14nLCByaWdodCwgNyk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGEgZXhwcmVzc2lvbiBmb3IgdGhlIEVxdWFsIG9wZXJhdG9yLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBlcShsZWZ0OiBFeHByZXNzaW9uLCByaWdodDogRXhwcmVzc2lvbik6IEV4cHJlc3Npb24ge1xuICAgIHJldHVybiBuZXcgQmluYXJ5T3BlcmF0aW9uRXhwcmVzc2lvbihsZWZ0LCAnPT0nLCByaWdodCwgOSk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGEgZXhwcmVzc2lvbiBmb3IgdGhlIE5vdCBFcXVhbCBvcGVyYXRvci5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgbmVxKGxlZnQ6IEV4cHJlc3Npb24sIHJpZ2h0OiBFeHByZXNzaW9uKTogRXhwcmVzc2lvbiB7XG4gICAgcmV0dXJuIG5ldyBCaW5hcnlPcGVyYXRpb25FeHByZXNzaW9uKGxlZnQsICchPScsIHJpZ2h0LCA5KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBleHByZXNzaW9uIGZvciB0aGUgTGVzcyBUaGFuIG9wZXJhdG9yLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBsdChsZWZ0OiBFeHByZXNzaW9uLCByaWdodDogRXhwcmVzc2lvbik6IEV4cHJlc3Npb24ge1xuICAgIHJldHVybiBuZXcgQmluYXJ5T3BlcmF0aW9uRXhwcmVzc2lvbihsZWZ0LCAnPCcsIHJpZ2h0LCAxMCk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGEgZXhwcmVzc2lvbiBmb3IgdGhlIExlc3MgVGhhbiBPciBFcXVhbCBvcGVyYXRvci5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgbHRlKGxlZnQ6IEV4cHJlc3Npb24sIHJpZ2h0OiBFeHByZXNzaW9uKTogRXhwcmVzc2lvbiB7XG4gICAgcmV0dXJuIG5ldyBCaW5hcnlPcGVyYXRpb25FeHByZXNzaW9uKGxlZnQsICc8PScsIHJpZ2h0LCAxMCk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGEgZXhwcmVzc2lvbiBmb3IgdGhlIEdyZWF0ZXIgVGhhbiBvcGVyYXRvci5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZ3QobGVmdDogRXhwcmVzc2lvbiwgcmlnaHQ6IEV4cHJlc3Npb24pOiBFeHByZXNzaW9uIHtcbiAgICByZXR1cm4gbmV3IEJpbmFyeU9wZXJhdGlvbkV4cHJlc3Npb24obGVmdCwgJz4nLCByaWdodCwgMTApO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIGV4cHJlc3Npb24gZm9yIHRoZSBHcmVhdGVyIFRoYW4gT3IgRXF1YWwgb3BlcmF0b3IuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGd0ZShsZWZ0OiBFeHByZXNzaW9uLCByaWdodDogRXhwcmVzc2lvbik6IEV4cHJlc3Npb24ge1xuICAgIHJldHVybiBuZXcgQmluYXJ5T3BlcmF0aW9uRXhwcmVzc2lvbihsZWZ0LCAnPj0nLCByaWdodCwgMTApO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIGV4cHJlc3Npb24gZm9yIHRoZSBBTkQgb3BlcmF0b3IuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGFuZChsZWZ0OiBFeHByZXNzaW9uLCByaWdodDogRXhwcmVzc2lvbik6IEV4cHJlc3Npb24ge1xuICAgIHJldHVybiBuZXcgQmluYXJ5T3BlcmF0aW9uRXhwcmVzc2lvbihsZWZ0LCAnJiYnLCByaWdodCwgNSk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGEgZXhwcmVzc2lvbiBmb3IgdGhlIE9SIG9wZXJhdG9yLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBvcihsZWZ0OiBFeHByZXNzaW9uLCByaWdodDogRXhwcmVzc2lvbik6IEV4cHJlc3Npb24ge1xuICAgIHJldHVybiBuZXcgQmluYXJ5T3BlcmF0aW9uRXhwcmVzc2lvbihsZWZ0LCAnfHwnLCByaWdodCwgNCk7XG4gIH1cblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGlzIGlzIGNhbGxlZCB0byBldmFsdWF0ZSB0aGUgZXhwcmVzc2lvbi5cbiAgICpcbiAgICogQHBhcmFtIHBhcmVudFByaW9yaXR5IHByaW9yaXR5IG9mIHRoZSBwYXJlbnQgb2YgdGhpcyBleHByZXNzaW9uLFxuICAgKiAgIHVzZWQgZm9yIGRldGVybWluaW5nIHdoZXRoZXIgb3Igbm90IHRvIGFkZCBwYXJlbnRoZXNpcyBhcm91bmQgdGhlIGV4cHJlc3Npb24uXG4gICAqICAgVGhpcyBpcyBpbnRlbmRlZCB0byBiZSBzZXQgYWNjb3JkaW5nIHRvIE1ETiBydWxlcywgc2VlXG4gICAqICAgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvSmF2YVNjcmlwdC9SZWZlcmVuY2UvT3BlcmF0b3JzL09wZXJhdG9yX1ByZWNlZGVuY2UjdGFibGVcbiAgICogICBmb3IgZGV0YWlsc1xuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IGV2YWx1YXRlKHBhcmVudFByaW9yaXR5PzogbnVtYmVyKTogc3RyaW5nO1xufVxuXG5jbGFzcyBTdHJpbmdFeHByZXNzaW9uIGV4dGVuZHMgRXhwcmVzc2lvbiB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgdmFsdWU6IHN0cmluZykge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBwdWJsaWMgZXZhbHVhdGUoKSB7XG4gICAgcmV0dXJuIHRoaXMudmFsdWU7XG4gIH1cbn1cblxuY2xhc3MgQmluYXJ5T3BlcmF0aW9uRXhwcmVzc2lvbiBleHRlbmRzIEV4cHJlc3Npb24ge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGxlZnQ6IEV4cHJlc3Npb24sXG4gICAgcHJpdmF0ZSByZWFkb25seSBvcGVyYXRvcjogc3RyaW5nLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcmlnaHQ6IEV4cHJlc3Npb24sXG4gICAgLyoqXG4gICAgICogSW5kaWNhdGVzIHRoZSBwcmlvcml0eSBvZiB0aGUgb3BlcmF0b3IuXG4gICAgICogVGhpcyBpcyBpbnRlbmRlZCB0byBiZSBzZXQgYWNjb3JkaW5nIHRvIE1ETiBydWxlcy5cbiAgICAgKiBAc2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0phdmFTY3JpcHQvUmVmZXJlbmNlL09wZXJhdG9ycy9PcGVyYXRvcl9QcmVjZWRlbmNlI3RhYmxlXG4gICAgICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBwcmlvcml0eTogbnVtYmVyLFxuICApIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgcHVibGljIGV2YWx1YXRlKHBhcmVudFByaW9yaXR5PzogbnVtYmVyKSB7XG4gICAgY29uc3QgZXhwcmVzc2lvbiA9IGAke3RoaXMubGVmdC5ldmFsdWF0ZSh0aGlzLnByaW9yaXR5KX0gJHt0aGlzLm9wZXJhdG9yfSAke3RoaXMucmlnaHQuZXZhbHVhdGUodGhpcy5wcmlvcml0eSl9YDtcbiAgICByZXR1cm4gcGFyZW50UHJpb3JpdHkgPT09IHVuZGVmaW5lZCB8fCBwYXJlbnRQcmlvcml0eSA8PSB0aGlzLnByaW9yaXR5XG4gICAgICA/IGV4cHJlc3Npb25cbiAgICAgIDogYCgke2V4cHJlc3Npb259KWA7XG4gIH1cbn1cbiJdfQ==
349
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwcmVzc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImV4cHJlc3Npb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBRUE7OztHQUdHO0FBQ0gsTUFBc0IsVUFBVTtJQWdKOUI7S0FDQztJQWhKRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyxVQUFVLENBQUMsS0FBYTtRQUNwQyxPQUFPLElBQUksZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUM7S0FDcEM7SUFFRDs7O09BR0c7SUFDSSxNQUFNLENBQUMsWUFBWSxDQUFDLEtBQWE7Ozs7Ozs7Ozs7UUFDdEMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLGlCQUFpQixLQUFLLENBQUMsU0FBUyxJQUFJLENBQUMsQ0FBQztLQUM5RDtJQUVEOzs7O09BSUc7SUFDSSxNQUFNLENBQUMsT0FBTyxDQUFDLFNBQWlCO1FBQ3JDLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxZQUFZLFNBQVMsSUFBSSxDQUFDLENBQUM7S0FDbkQ7SUFFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyxjQUFjLENBQUMsS0FBYSxFQUFFLElBQVk7Ozs7Ozs7Ozs7UUFDdEQsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsS0FBSyxDQUFDLFNBQVMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0tBQzdEO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMsR0FBRyxDQUFDLElBQWdCLEVBQUUsS0FBaUI7Ozs7Ozs7Ozs7O1FBQ25ELE9BQU8sSUFBSSx5QkFBeUIsQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztLQUM1RDtJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFnQixFQUFFLEtBQWlCOzs7Ozs7Ozs7OztRQUN4RCxPQUFPLElBQUkseUJBQXlCLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7S0FDNUQ7SUFF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cm9tICcuL2lucHV0JztcblxuLyoqXG4gKiBFeHByZXNzaW9uIGZvciBldmVudHMgaW4gRGV0ZWN0b3IgTW9kZWwgc3RhdGUuXG4gKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9pb3RldmVudHMvbGF0ZXN0L2RldmVsb3Blcmd1aWRlL2lvdGV2ZW50cy1leHByZXNzaW9ucy5odG1sXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBFeHByZXNzaW9uIHtcbiAgLyoqXG4gICAqIENyZWF0ZSBhIGV4cHJlc3Npb24gZnJvbSB0aGUgZ2l2ZW4gc3RyaW5nLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBmcm9tU3RyaW5nKHZhbHVlOiBzdHJpbmcpOiBFeHByZXNzaW9uIHtcbiAgICByZXR1cm4gbmV3IFN0cmluZ0V4cHJlc3Npb24odmFsdWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIGV4cHJlc3Npb24gZm9yIGZ1bmN0aW9uIGBjdXJyZW50SW5wdXQoKWAuXG4gICAqIEl0IGlzIGV2YWx1YXRlZCB0byB0cnVlIGlmIHRoZSBzcGVjaWZpZWQgaW5wdXQgbWVzc2FnZSB3YXMgcmVjZWl2ZWQuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGN1cnJlbnRJbnB1dChpbnB1dDogSUlucHV0KTogRXhwcmVzc2lvbiB7XG4gICAgcmV0dXJuIHRoaXMuZnJvbVN0cmluZyhgY3VycmVudElucHV0KFwiJHtpbnB1dC5pbnB1dE5hbWV9XCIpYCk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGEgZXhwcmVzc2lvbiBmb3IgZnVuY3Rpb24gYHRpbWVvdXQoXCJ0aW1lci1uYW1lXCIpYC5cbiAgICogSXQgaXMgZXZhbHVhdGVkIHRvIHRydWUgaWYgdGhlIHNwZWNpZmllZCB0aW1lciBoYXMgZWxhcHNlZC5cbiAgICogWW91IGNhbiBkZWZpbmUgYSB0aW1lciBvbmx5IHVzaW5nIHRoZSBgc2V0VGltZXJgIGFjdGlvbi5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgdGltZW91dCh0aW1lck5hbWU6IHN0cmluZyk6IEV4cHJlc3Npb24ge1xuICAgIHJldHVybiB0aGlzLmZyb21TdHJpbmcoYHRpbWVvdXQoXCIke3RpbWVyTmFtZX1cIilgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBleHByZXNzaW9uIGZvciBnZXQgYW4gaW5wdXQgYXR0cmlidXRlIGFzIGAkaW5wdXQuVGVtcGVyYXR1cmVJbnB1dC50ZW1wZXJhdHVyZXNbMl1gLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBpbnB1dEF0dHJpYnV0ZShpbnB1dDogSUlucHV0LCBwYXRoOiBzdHJpbmcpOiBFeHByZXNzaW9uIHtcbiAgICByZXR1cm4gdGhpcy5mcm9tU3RyaW5nKGAkaW5wdXQuJHtpbnB1dC5pbnB1dE5hbWV9LiR7cGF0aH1gKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBleHByZXNzaW9uIGZvciB0aGUgQWRkaXRpb24gb3BlcmF0b3IuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGFkZChsZWZ0OiBFeHByZXNzaW9uLCByaWdodDogRXhwcmVzc2lvbik6IEV4cHJlc3Npb24ge1xuICAgIHJldHVybiBuZXcgQmluYXJ5T3BlcmF0aW9uRXhwcmVzc2lvbihsZWZ0LCAnKycsIHJpZ2h0LCAxMik7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGEgZXhwcmVzc2lvbiBmb3IgdGhlIFN1YnRyYWN0aW9uIG9wZXJhdG9yLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBzdWJ0cmFjdChsZWZ0OiBFeHByZXNzaW9uLCByaWdodDogRXhwcmVzc2lvbik6IEV4cHJlc3Npb24ge1xuICAgIHJldHVybiBuZXcgQmluYXJ5T3BlcmF0aW9uRXhwcmVzc2lvbihsZWZ0LCAnLScsIHJpZ2h0LCAxMik7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGEgZXhwcmVzc2lvbiBmb3IgdGhlIERpdmlzaW9uIG9wZXJhdG9yLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBkaXZpZGUobGVmdDogRXhwcmVzc2lvbiwgcmlnaHQ6IEV4cHJlc3Npb24pOiBFeHByZXNzaW9uIHtcbiAgICByZXR1cm4gbmV3IEJpbmFyeU9wZXJhdGlvbkV4cHJlc3Npb24obGVmdCwgJy8nLCByaWdodCwgMTMpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIGV4cHJlc3Npb24gZm9yIHRoZSBNdWx0aXBsaWNhdGlvbiBvcGVyYXRvci5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgbXVsdGlwbHkobGVmdDogRXhwcmVzc2lvbiwgcmlnaHQ6IEV4cHJlc3Npb24pOiBFeHByZXNzaW9uIHtcbiAgICByZXR1cm4gbmV3IEJpbmFyeU9wZXJhdGlvbkV4cHJlc3Npb24obGVmdCwgJyonLCByaWdodCwgMTMpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIGV4cHJlc3Npb24gZm9yIHRoZSBTdHJpbmcgQ29uY2F0ZW5hdGlvbiBvcGVyYXRvci5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29uY2F0KGxlZnQ6IEV4cHJlc3Npb24sIHJpZ2h0OiBFeHByZXNzaW9uKTogRXhwcmVzc2lvbiB7XG4gICAgcmV0dXJuIHRoaXMuYWRkKGxlZnQsIHJpZ2h0KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBleHByZXNzaW9uIGZvciB0aGUgQml0d2lzZSBPUiBvcGVyYXRvci5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgYml0d2lzZU9yKGxlZnQ6IEV4cHJlc3Npb24sIHJpZ2h0OiBFeHByZXNzaW9uKTogRXhwcmVzc2lvbiB7XG4gICAgcmV0dXJuIG5ldyBCaW5hcnlPcGVyYXRpb25FeHByZXNzaW9uKGxlZnQsICd8JywgcmlnaHQsIDYpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIGV4cHJlc3Npb24gZm9yIHRoZSBCaXR3aXNlIEFORCBvcGVyYXRvci5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgYml0d2lzZUFuZChsZWZ0OiBFeHByZXNzaW9uLCByaWdodDogRXhwcmVzc2lvbik6IEV4cHJlc3Npb24ge1xuICAgIHJldHVybiBuZXcgQmluYXJ5T3BlcmF0aW9uRXhwcmVzc2lvbihsZWZ0LCAnJicsIHJpZ2h0LCA4KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBleHByZXNzaW9uIGZvciB0aGUgQml0d2lzZSBYT1Igb3BlcmF0b3IuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGJpdHdpc2VYb3IobGVmdDogRXhwcmVzc2lvbiwgcmlnaHQ6IEV4cHJlc3Npb24pOiBFeHByZXNzaW9uIHtcbiAgICByZXR1cm4gbmV3IEJpbmFyeU9wZXJhdGlvbkV4cHJlc3Npb24obGVmdCwgJ14nLCByaWdodCwgNyk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGEgZXhwcmVzc2lvbiBmb3IgdGhlIEVxdWFsIG9wZXJhdG9yLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBlcShsZWZ0OiBFeHByZXNzaW9uLCByaWdodDogRXhwcmVzc2lvbik6IEV4cHJlc3Npb24ge1xuICAgIHJldHVybiBuZXcgQmluYXJ5T3BlcmF0aW9uRXhwcmVzc2lvbihsZWZ0LCAnPT0nLCByaWdodCwgOSk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGEgZXhwcmVzc2lvbiBmb3IgdGhlIE5vdCBFcXVhbCBvcGVyYXRvci5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgbmVxKGxlZnQ6IEV4cHJlc3Npb24sIHJpZ2h0OiBFeHByZXNzaW9uKTogRXhwcmVzc2lvbiB7XG4gICAgcmV0dXJuIG5ldyBCaW5hcnlPcGVyYXRpb25FeHByZXNzaW9uKGxlZnQsICchPScsIHJpZ2h0LCA5KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBleHByZXNzaW9uIGZvciB0aGUgTGVzcyBUaGFuIG9wZXJhdG9yLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBsdChsZWZ0OiBFeHByZXNzaW9uLCByaWdodDogRXhwcmVzc2lvbik6IEV4cHJlc3Npb24ge1xuICAgIHJldHVybiBuZXcgQmluYXJ5T3BlcmF0aW9uRXhwcmVzc2lvbihsZWZ0LCAnPCcsIHJpZ2h0LCAxMCk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGEgZXhwcmVzc2lvbiBmb3IgdGhlIExlc3MgVGhhbiBPciBFcXVhbCBvcGVyYXRvci5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgbHRlKGxlZnQ6IEV4cHJlc3Npb24sIHJpZ2h0OiBFeHByZXNzaW9uKTogRXhwcmVzc2lvbiB7XG4gICAgcmV0dXJuIG5ldyBCaW5hcnlPcGVyYXRpb25FeHByZXNzaW9uKGxlZnQsICc8PScsIHJpZ2h0LCAxMCk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGEgZXhwcmVzc2lvbiBmb3IgdGhlIEdyZWF0ZXIgVGhhbiBvcGVyYXRvci5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZ3QobGVmdDogRXhwcmVzc2lvbiwgcmlnaHQ6IEV4cHJlc3Npb24pOiBFeHByZXNzaW9uIHtcbiAgICByZXR1cm4gbmV3IEJpbmFyeU9wZXJhdGlvbkV4cHJlc3Npb24obGVmdCwgJz4nLCByaWdodCwgMTApO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIGV4cHJlc3Npb24gZm9yIHRoZSBHcmVhdGVyIFRoYW4gT3IgRXF1YWwgb3BlcmF0b3IuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGd0ZShsZWZ0OiBFeHByZXNzaW9uLCByaWdodDogRXhwcmVzc2lvbik6IEV4cHJlc3Npb24ge1xuICAgIHJldHVybiBuZXcgQmluYXJ5T3BlcmF0aW9uRXhwcmVzc2lvbihsZWZ0LCAnPj0nLCByaWdodCwgMTApO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIGV4cHJlc3Npb24gZm9yIHRoZSBBTkQgb3BlcmF0b3IuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGFuZChsZWZ0OiBFeHByZXNzaW9uLCByaWdodDogRXhwcmVzc2lvbik6IEV4cHJlc3Npb24ge1xuICAgIHJldHVybiBuZXcgQmluYXJ5T3BlcmF0aW9uRXhwcmVzc2lvbihsZWZ0LCAnJiYnLCByaWdodCwgNSk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGEgZXhwcmVzc2lvbiBmb3IgdGhlIE9SIG9wZXJhdG9yLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBvcihsZWZ0OiBFeHByZXNzaW9uLCByaWdodDogRXhwcmVzc2lvbik6IEV4cHJlc3Npb24ge1xuICAgIHJldHVybiBuZXcgQmluYXJ5T3BlcmF0aW9uRXhwcmVzc2lvbihsZWZ0LCAnfHwnLCByaWdodCwgNCk7XG4gIH1cblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGlzIGlzIGNhbGxlZCB0byBldmFsdWF0ZSB0aGUgZXhwcmVzc2lvbi5cbiAgICpcbiAgICogQHBhcmFtIHBhcmVudFByaW9yaXR5IHByaW9yaXR5IG9mIHRoZSBwYXJlbnQgb2YgdGhpcyBleHByZXNzaW9uLFxuICAgKiAgIHVzZWQgZm9yIGRldGVybWluaW5nIHdoZXRoZXIgb3Igbm90IHRvIGFkZCBwYXJlbnRoZXNpcyBhcm91bmQgdGhlIGV4cHJlc3Npb24uXG4gICAqICAgVGhpcyBpcyBpbnRlbmRlZCB0byBiZSBzZXQgYWNjb3JkaW5nIHRvIE1ETiBydWxlcywgc2VlXG4gICAqICAgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvSmF2YVNjcmlwdC9SZWZlcmVuY2UvT3BlcmF0b3JzL09wZXJhdG9yX1ByZWNlZGVuY2UjdGFibGVcbiAgICogICBmb3IgZGV0YWlsc1xuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IGV2YWx1YXRlKHBhcmVudFByaW9yaXR5PzogbnVtYmVyKTogc3RyaW5nO1xufVxuXG5jbGFzcyBTdHJpbmdFeHByZXNzaW9uIGV4dGVuZHMgRXhwcmVzc2lvbiB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgdmFsdWU6IHN0cmluZykge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBwdWJsaWMgZXZhbHVhdGUoKSB7XG4gICAgcmV0dXJuIHRoaXMudmFsdWU7XG4gIH1cbn1cblxuY2xhc3MgQmluYXJ5T3BlcmF0aW9uRXhwcmVzc2lvbiBleHRlbmRzIEV4cHJlc3Npb24ge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGxlZnQ6IEV4cHJlc3Npb24sXG4gICAgcHJpdmF0ZSByZWFkb25seSBvcGVyYXRvcjogc3RyaW5nLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcmlnaHQ6IEV4cHJlc3Npb24sXG4gICAgLyoqXG4gICAgICogSW5kaWNhdGVzIHRoZSBwcmlvcml0eSBvZiB0aGUgb3BlcmF0b3IuXG4gICAgICogVGhpcyBpcyBpbnRlbmRlZCB0byBiZSBzZXQgYWNjb3JkaW5nIHRvIE1ETiBydWxlcy5cbiAgICAgKiBAc2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0phdmFTY3JpcHQvUmVmZXJlbmNlL09wZXJhdG9ycy9PcGVyYXRvcl9QcmVjZWRlbmNlI3RhYmxlXG4gICAgICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBwcmlvcml0eTogbnVtYmVyLFxuICApIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgcHVibGljIGV2YWx1YXRlKHBhcmVudFByaW9yaXR5PzogbnVtYmVyKSB7XG4gICAgY29uc3QgZXhwcmVzc2lvbiA9IGAke3RoaXMubGVmdC5ldmFsdWF0ZSh0aGlzLnByaW9yaXR5KX0gJHt0aGlzLm9wZXJhdG9yfSAke3RoaXMucmlnaHQuZXZhbHVhdGUodGhpcy5wcmlvcml0eSl9YDtcbiAgICByZXR1cm4gcGFyZW50UHJpb3JpdHkgPT09IHVuZGVmaW5lZCB8fCBwYXJlbnRQcmlvcml0eSA8PSB0aGlzLnByaW9yaXR5XG4gICAgICA/IGV4cHJlc3Npb25cbiAgICAgIDogYCgke2V4cHJlc3Npb259KWA7XG4gIH1cbn1cbiJdfQ==
package/lib/input.js CHANGED
@@ -71,7 +71,7 @@ class Input extends InputBase {
71
71
  }
72
72
  exports.Input = Input;
73
73
  _a = JSII_RTTI_SYMBOL_1;
74
- Input[_a] = { fqn: "@aws-cdk/aws-iotevents-alpha.Input", version: "2.35.0-alpha.0" };
74
+ Input[_a] = { fqn: "@aws-cdk/aws-iotevents-alpha.Input", version: "2.37.1-alpha.0" };
75
75
  function arnForInput(inputName) {
76
76
  return `arn:${aws_cdk_lib_1.Aws.PARTITION}:iotevents:${aws_cdk_lib_1.Aws.REGION}:${aws_cdk_lib_1.Aws.ACCOUNT_ID}:input/${inputName}`;
77
77
  }
package/lib/state.js CHANGED
@@ -97,12 +97,12 @@ class State {
97
97
  }
98
98
  exports.State = State;
99
99
  _a = JSII_RTTI_SYMBOL_1;
100
- State[_a] = { fqn: "@aws-cdk/aws-iotevents-alpha.State", version: "2.35.0-alpha.0" };
100
+ State[_a] = { fqn: "@aws-cdk/aws-iotevents-alpha.State", version: "2.37.1-alpha.0" };
101
101
  function toEventsJson(scope, actionBindOptions, events) {
102
102
  return events?.map(event => ({
103
103
  eventName: event.eventName,
104
104
  condition: event.condition?.evaluate(),
105
- actions: event.actions?.map(action => action.bind(scope, actionBindOptions).configuration),
105
+ actions: event.actions?.map(action => action._bind(scope, actionBindOptions).configuration),
106
106
  }));
107
107
  }
108
108
  function toTransitionEventsJson(scope, actionBindOptions, transitionEvents) {
@@ -112,8 +112,8 @@ function toTransitionEventsJson(scope, actionBindOptions, transitionEvents) {
112
112
  return transitionEvents.map(transitionEvent => ({
113
113
  eventName: transitionEvent.eventName,
114
114
  condition: transitionEvent.condition.evaluate(),
115
- actions: transitionEvent.actions?.map(action => action.bind(scope, actionBindOptions).configuration),
115
+ actions: transitionEvent.actions?.map(action => action._bind(scope, actionBindOptions).configuration),
116
116
  nextState: transitionEvent.nextState.stateName,
117
117
  }));
118
118
  }
119
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJzdGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUE0RkE7O0dBRUc7QUFDSCxNQUFhLEtBQUs7SUFRaEIsWUFBNkIsS0FBaUI7UUFBakIsVUFBSyxHQUFMLEtBQUssQ0FBWTtRQUY3QixxQkFBZ0IsR0FBc0IsRUFBRSxDQUFDOzs7Ozs7K0NBTi9DLEtBQUs7Ozs7UUFTZCxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUM7S0FDbEM7SUFFRDs7Ozs7O09BTUc7SUFDSSxZQUFZLENBQUMsV0FBa0IsRUFBRSxPQUEwQjs7Ozs7Ozs7Ozs7UUFDaEUsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDLGVBQWUsQ0FBQyxTQUFTLEtBQUssV0FBVyxDQUFDLENBQUM7UUFDOUcsSUFBSSxZQUFZLEVBQUU7WUFDaEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxVQUFVLElBQUksQ0FBQyxTQUFTLDBDQUEwQyxXQUFXLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQztTQUM3RztRQUVELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUM7WUFDekIsU0FBUyxFQUFFLE9BQU8sQ0FBQyxTQUFTLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxPQUFPLFdBQVcsQ0FBQyxTQUFTLEVBQUU7WUFDL0UsU0FBUyxFQUFFLFdBQVc7WUFDdEIsU0FBUyxFQUFFLE9BQU8sQ0FBQyxJQUFJO1lBQ3ZCLE9BQU8sRUFBRSxPQUFPLENBQUMsU0FBUztTQUMzQixDQUFDLENBQUM7S0FDSjtJQUVEOzs7Ozs7T0FNRztJQUNJLGtCQUFrQixDQUFDLEtBQWdCLEVBQUUsaUJBQW9DLEVBQUUsZUFBMkI7UUFDM0csSUFBSSxlQUFlLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQzdCLE9BQU8sRUFBRSxDQUFDO1NBQ1g7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QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgSUFjdGlvbiwgQWN0aW9uQmluZE9wdGlvbnMgfSBmcm9tICcuL2FjdGlvbic7XG5pbXBvcnQgeyBFdmVudCB9IGZyb20gJy4vZXZlbnQnO1xuaW1wb3J0IHsgRXhwcmVzc2lvbiB9IGZyb20gJy4vZXhwcmVzc2lvbic7XG5pbXBvcnQgeyBDZm5EZXRlY3Rvck1vZGVsIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWlvdGV2ZW50cyc7XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3Igb3B0aW9ucyBvZiBzdGF0ZSB0cmFuc2l0aW9uLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFRyYW5zaXRpb25PcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBldmVudC5cbiAgICpcbiAgICogQGRlZmF1bHQgc3RyaW5nIGNvbWJpbmluZyB0aGUgbmFtZXMgb2YgdGhlIFN0YXRlcyBhcyBgJHtvcmlnaW5TdGF0ZU5hbWV9X3RvXyR7dGFyZ2V0U3RhdGVOYW1lfWBcbiAgICovXG4gIHJlYWRvbmx5IGV2ZW50TmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGNvbmRpdGlvbiB0aGF0IGlzIHVzZWQgdG8gZGV0ZXJtaW5lIHRvIGNhdXNlIHRoZSBzdGF0ZSB0cmFuc2l0aW9uIGFuZCB0aGUgYWN0aW9ucy5cbiAgICogV2hlbiB0aGlzIHdhcyBldmFsdWF0ZWQgdG8gYHRydWVgLCB0aGUgc3RhdGUgdHJhbnNpdGlvbiBhbmQgdGhlIGFjdGlvbnMgYXJlIHRyaWdnZXJlZC5cbiAgICovXG4gIHJlYWRvbmx5IHdoZW46IEV4cHJlc3Npb247XG5cbiAgLyoqXG4gICAqIFRoZSBhY3Rpb25zIHRvIGJlIHBlcmZvcm1lZCB3aXRoIHRoZSB0cmFuc2l0aW9uLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIG5vIGFjdGlvbnMgd2lsbCBiZSBwZXJmb3JtZWRcbiAgICovXG4gIHJlYWRvbmx5IGV4ZWN1dGluZz86IElBY3Rpb25bXTtcbn1cblxuLyoqXG4gKiBTcGVjaWZpZXMgdGhlIHN0YXRlIHRyYW5zaXRpb24gYW5kIHRoZSBhY3Rpb25zIHRvIGJlIHBlcmZvcm1lZCB3aGVuIHRoZSBjb25kaXRpb24gZXZhbHVhdGVzIHRvIGB0cnVlYC5cbiAqL1xuaW50ZXJmYWNlIFRyYW5zaXRpb25FdmVudCB7XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgZXZlbnQuXG4gICAqL1xuICByZWFkb25seSBldmVudE5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEJvb2xlYW4gZXhwcmVzc2lvbiB0aGF0LCB3aGVuIGB0cnVlYCwgY2F1c2VzIHRoZSBzdGF0ZSB0cmFuc2l0aW9uIGFuZCB0aGUgYWN0aW9ucyB0byBiZSBwZXJmb3JtZWQuXG4gICAqL1xuICByZWFkb25seSBjb25kaXRpb246IEV4cHJlc3Npb247XG5cbiAgLyoqXG4gICAqIFRoZSBhY3Rpb25zIHRvIGJlIHBlcmZvcm1lZC5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBubyBhY3Rpb25zIHdpbGwgYmUgcGVyZm9ybWVkXG4gICAqL1xuICByZWFkb25seSBhY3Rpb25zPzogSUFjdGlvbltdO1xuXG4gIC8qKlxuICAgKiBUaGUgbmV4dCBzdGF0ZSB0byB0cmFuc2l0IHRvLiBXaGVuIHRoZSByZXN1bGQgb2YgY29uZGl0aW9uIGV4cHJlc3Npb24gaXMgYHRydWVgLCB0aGUgc3RhdGUgaXMgdHJhbnNpdGVkLlxuICAgKi9cbiAgcmVhZG9ubHkgbmV4dFN0YXRlOiBTdGF0ZTtcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBkZWZpbmluZyBhIHN0YXRlIG9mIGEgZGV0ZWN0b3IuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3RhdGVQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgc3RhdGUuXG4gICAqL1xuICByZWFkb25seSBzdGF0ZU5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBldmVudHMgb24gZW50ZXIuIFRoZSBjb25kaXRpb25zIG9mIHRoZSBldmVudHMgd2lsbCBiZSBldmFsdWF0ZWQgd2hlbiBlbnRlcmluZyB0aGlzIHN0YXRlLlxuICAgKiBJZiB0aGUgY29uZGl0aW9uIG9mIHRoZSBldmVudCBldmFsdWF0ZXMgdG8gYHRydWVgLCB0aGUgYWN0aW9ucyBvZiB0aGUgZXZlbnQgd2lsbCBiZSBleGVjdXRlZC5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBubyBldmVudHMgd2lsbCB0cmlnZ2VyIG9uIGVudGVyaW5nIHRoaXMgc3RhdGVcbiAgICovXG4gIHJlYWRvbmx5IG9uRW50ZXI/OiBFdmVudFtdO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIGV2ZW50cyBvbiBpbnB1dC4gVGhlIGNvbmRpdGlvbnMgb2YgdGhlIGV2ZW50cyB3aWxsIGJlIGV2YWx1YXRlZCB3aGVuIGFueSBpbnB1dCBpcyByZWNlaXZlZC5cbiAgICogSWYgdGhlIGNvbmRpdGlvbiBvZiB0aGUgZXZlbnQgZXZhbHVhdGVzIHRvIGB0cnVlYCwgdGhlIGFjdGlvbnMgb2YgdGhlIGV2ZW50IHdpbGwgYmUgZXhlY3V0ZWQuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gbm8gZXZlbnRzIHdpbGwgdHJpZ2dlciBvbiBpbnB1dCBpbiB0aGlzIHN0YXRlXG4gICAqL1xuICByZWFkb25seSBvbklucHV0PzogRXZlbnRbXTtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBldmVudHMgb24gZXhpdC4gVGhlIGNvbmRpdGlvbnMgb2YgdGhlIGV2ZW50cyBhcmUgZXZhbHVhdGVkIHdoZW4gYW4gZXhpdGluZyB0aGlzIHN0YXRlLlxuICAgKiBJZiB0aGUgY29uZGl0aW9uIGV2YWx1YXRlcyB0byBgdHJ1ZWAsIHRoZSBhY3Rpb25zIG9mIHRoZSBldmVudCB3aWxsIGJlIGV4ZWN1dGVkLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIG5vIGV2ZW50cyB3aWxsIHRyaWdnZXIgb24gZXhpdGluZyB0aGlzIHN0YXRlXG4gICAqL1xuICByZWFkb25seSBvbkV4aXQ/OiBFdmVudFtdO1xufVxuXG4vKipcbiAqIERlZmluZXMgYSBzdGF0ZSBvZiBhIGRldGVjdG9yLlxuICovXG5leHBvcnQgY2xhc3MgU3RhdGUge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIHN0YXRlLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHN0YXRlTmFtZTogc3RyaW5nO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgdHJhbnNpdGlvbkV2ZW50czogVHJhbnNpdGlvbkV2ZW50W10gPSBbXTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHByb3BzOiBTdGF0ZVByb3BzKSB7XG4gICAgdGhpcy5zdGF0ZU5hbWUgPSBwcm9wcy5zdGF0ZU5hbWU7XG4gIH1cblxuICAvKipcbiAgICogQWRkIGEgdHJhbnNpdGlvbiBldmVudCB0byB0aGUgc3RhdGUuXG4gICAqIFRoZSB0cmFuc2l0aW9uIGV2ZW50IHdpbGwgYmUgdHJpZ2dlcmVkIGlmIGNvbmRpdGlvbiBpcyBldmFsdWF0ZWQgdG8gYHRydWVgLlxuICAgKlxuICAgKiBAcGFyYW0gdGFyZ2V0U3RhdGUgdGhlIHN0YXRlIHRoYXQgd2lsbCBiZSB0cmFuc2l0IHRvIHdoZW4gdGhlIGV2ZW50IHRyaWdnZXJlZFxuICAgKiBAcGFyYW0gb3B0aW9ucyB0cmFuc2l0aW9uIG9wdGlvbnMgaW5jbHVkaW5nIHRoZSBjb25kaXRpb24gdGhhdCBjYXVzZXMgdGhlIHN0YXRlIHRyYW5zaXRpb25cbiAgICovXG4gIHB1YmxpYyB0cmFuc2l0aW9uVG8odGFyZ2V0U3RhdGU6IFN0YXRlLCBvcHRpb25zOiBUcmFuc2l0aW9uT3B0aW9ucykge1xuICAgIGNvbnN0IGFscmVhZHlBZGRlZCA9IHRoaXMudHJhbnNpdGlvbkV2ZW50cy5zb21lKHRyYW5zaXRpb25FdmVudCA9PiB0cmFuc2l0aW9uRXZlbnQubmV4dFN0YXRlID09PSB0YXJnZXRTdGF0ZSk7XG4gICAgaWYgKGFscmVhZHlBZGRlZCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBTdGF0ZSAnJHt0aGlzLnN0YXRlTmFtZX0nIGFscmVhZHkgaGFzIGEgdHJhbnNpdGlvbiBkZWZpbmVkIHRvICcke3RhcmdldFN0YXRlLnN0YXRlTmFtZX0nYCk7XG4gICAgfVxuXG4gICAgdGhpcy50cmFuc2l0aW9uRXZlbnRzLnB1c2goe1xuICAgICAgZXZlbnROYW1lOiBvcHRpb25zLmV2ZW50TmFtZSA/PyBgJHt0aGlzLnN0YXRlTmFtZX1fdG9fJHt0YXJnZXRTdGF0ZS5zdGF0ZU5hbWV9YCxcbiAgICAgIG5leHRTdGF0ZTogdGFyZ2V0U3RhdGUsXG4gICAgICBjb25kaXRpb246IG9wdGlvbnMud2hlbixcbiAgICAgIGFjdGlvbnM6IG9wdGlvbnMuZXhlY3V0aW5nLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbGxlY3Qgc3RhdGVzIGluIGRlcGVuZGVuY3kgZ3JhZ2ggdGhhdCBjb25zdHJ1Y3RlZCBieSBzdGF0ZSB0cmFuc2l0aW9ucyxcbiAgICogYW5kIHJldHVybiB0aGUgSlNPTnMgb2YgdGhlIHN0YXRlcy5cbiAgICogVGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgcmVjdXJzaXZlbHkgYW5kIGNvbGxlY3QgdGhlIHN0YXRlcy5cbiAgICpcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgX2NvbGxlY3RTdGF0ZUpzb25zKHNjb3BlOiBDb25zdHJ1Y3QsIGFjdGlvbkJpbmRPcHRpb25zOiBBY3Rpb25CaW5kT3B0aW9ucywgY29sbGVjdGVkU3RhdGVzOiBTZXQ8U3RhdGU+KTogQ2ZuRGV0ZWN0b3JNb2RlbC5TdGF0ZVByb3BlcnR5W10ge1xuICAgIGlmIChjb2xsZWN0ZWRTdGF0ZXMuaGFzKHRoaXMpKSB7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuICAgIGNvbGxlY3RlZFN0YXRlcy5hZGQodGhpcyk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgdGhpcy50b1N0YXRlSnNvbihzY29wZSwgYWN0aW9uQmluZE9wdGlvbnMpLFxuICAgICAgLi4udGhpcy50cmFuc2l0aW9uRXZlbnRzLmZsYXRNYXAodHJhbnNpdGlvbkV2ZW50ID0+IHtcbiAgICAgICAgcmV0dXJuIHRyYW5zaXRpb25FdmVudC5uZXh0U3RhdGUuX2NvbGxlY3RTdGF0ZUpzb25zKHNjb3BlLCBhY3Rpb25CaW5kT3B0aW9ucywgY29sbGVjdGVkU3RhdGVzKTtcbiAgICAgIH0pLFxuICAgIF07XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0cnVlIGlmIHRoaXMgc3RhdGUgaGFzIGF0IGxlYXN0IG9uZSBjb25kaXRpb24gdmlhIGV2ZW50cy5cbiAgICpcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgX29uRW50ZXJFdmVudHNIYXZlQXRMZWFzdE9uZUNvbmRpdGlvbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5wcm9wcy5vbkVudGVyPy5zb21lKGV2ZW50ID0+IGV2ZW50LmNvbmRpdGlvbikgPz8gZmFsc2U7XG4gIH1cblxuICBwcml2YXRlIHRvU3RhdGVKc29uKHNjb3BlOiBDb25zdHJ1Y3QsIGFjdGlvbkJpbmRPcHRpb25zOiBBY3Rpb25CaW5kT3B0aW9ucyk6IENmbkRldGVjdG9yTW9kZWwuU3RhdGVQcm9wZXJ0eSB7XG4gICAgY29uc3QgeyBvbkVudGVyLCBvbklucHV0LCBvbkV4aXQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIHtcbiAgICAgIHN0YXRlTmFtZTogdGhpcy5zdGF0ZU5hbWUsXG4gICAgICBvbkVudGVyOiBvbkVudGVyICYmIHtcbiAgICAgICAgZXZlbnRzOiB0b0V2ZW50c0pzb24oc2NvcGUsIGFjdGlvbkJpbmRPcHRpb25zLCBvbkVudGVyKSxcbiAgICAgIH0sXG4gICAgICBvbklucHV0OiAob25JbnB1dCB8fCB0aGlzLnRyYW5zaXRpb25FdmVudHMubGVuZ3RoICE9PSAwKSA/IHtcbiAgICAgICAgZXZlbnRzOiB0b0V2ZW50c0pzb24oc2NvcGUsIGFjdGlvbkJpbmRPcHRpb25zLCBvbklucHV0KSxcbiAgICAgICAgdHJhbnNpdGlvbkV2ZW50czogdG9UcmFuc2l0aW9uRXZlbnRzSnNvbihzY29wZSwgYWN0aW9uQmluZE9wdGlvbnMsIHRoaXMudHJhbnNpdGlvbkV2ZW50cyksXG4gICAgICB9IDogdW5kZWZpbmVkLFxuICAgICAgb25FeGl0OiBvbkV4aXQgJiYge1xuICAgICAgICBldmVudHM6IHRvRXZlbnRzSnNvbihzY29wZSwgYWN0aW9uQmluZE9wdGlvbnMsIG9uRXhpdCksXG4gICAgICB9LFxuICAgIH07XG4gIH1cbn1cblxuZnVuY3Rpb24gdG9FdmVudHNKc29uKFxuICBzY29wZTogQ29uc3RydWN0LFxuICBhY3Rpb25CaW5kT3B0aW9uczogQWN0aW9uQmluZE9wdGlvbnMsXG4gIGV2ZW50cz86IEV2ZW50W10sXG4pOiBDZm5EZXRlY3Rvck1vZGVsLkV2ZW50UHJvcGVydHlbXSB8IHVuZGVmaW5lZCB7XG4gIHJldHVybiBldmVudHM/Lm1hcChldmVudCA9PiAoe1xuICAgIGV2ZW50TmFtZTogZXZlbnQuZXZlbnROYW1lLFxuICAgIGNvbmRpdGlvbjogZXZlbnQuY29uZGl0aW9uPy5ldmFsdWF0ZSgpLFxuICAgIGFjdGlvbnM6IGV2ZW50LmFjdGlvbnM/Lm1hcChhY3Rpb24gPT4gYWN0aW9uLmJpbmQoc2NvcGUsIGFjdGlvbkJpbmRPcHRpb25zKS5jb25maWd1cmF0aW9uKSxcbiAgfSkpO1xufVxuXG5mdW5jdGlvbiB0b1RyYW5zaXRpb25FdmVudHNKc29uKFxuICBzY29wZTogQ29uc3RydWN0LFxuICBhY3Rpb25CaW5kT3B0aW9uczogQWN0aW9uQmluZE9wdGlvbnMsXG4gIHRyYW5zaXRpb25FdmVudHM6IFRyYW5zaXRpb25FdmVudFtdLFxuKTogQ2ZuRGV0ZWN0b3JNb2RlbC5UcmFuc2l0aW9uRXZlbnRQcm9wZXJ0eVtdIHwgdW5kZWZpbmVkIHtcbiAgaWYgKHRyYW5zaXRpb25FdmVudHMubGVuZ3RoID09PSAwKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuXG4gIHJldHVybiB0cmFuc2l0aW9uRXZlbnRzLm1hcCh0cmFuc2l0aW9uRXZlbnQgPT4gKHtcbiAgICBldmVudE5hbWU6IHRyYW5zaXRpb25FdmVudC5ldmVudE5hbWUsXG4gICAgY29uZGl0aW9uOiB0cmFuc2l0aW9uRXZlbnQuY29uZGl0aW9uLmV2YWx1YXRlKCksXG4gICAgYWN0aW9uczogdHJhbnNpdGlvbkV2ZW50LmFjdGlvbnM/Lm1hcChhY3Rpb24gPT4gYWN0aW9uLmJpbmQoc2NvcGUsIGFjdGlvbkJpbmRPcHRpb25zKS5jb25maWd1cmF0aW9uKSxcbiAgICBuZXh0U3RhdGU6IHRyYW5zaXRpb25FdmVudC5uZXh0U3RhdGUuc3RhdGVOYW1lLFxuICB9KSk7XG59XG4iXX0=
119
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJzdGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUE0RkE7O0dBRUc7QUFDSCxNQUFhLEtBQUs7SUFRaEIsWUFBNkIsS0FBaUI7UUFBakIsVUFBSyxHQUFMLEtBQUssQ0FBWTtRQUY3QixxQkFBZ0IsR0FBc0IsRUFBRSxDQUFDOzs7Ozs7K0NBTi9DLEtBQUs7Ozs7UUFTZCxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUM7S0FDbEM7SUFFRDs7Ozs7O09BTUc7SUFDSSxZQUFZLENBQUMsV0FBa0IsRUFBRSxPQUEwQjs7Ozs7Ozs7Ozs7UUFDaEUsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDLGVBQWUsQ0FBQyxTQUFTLEtBQUssV0FBVyxDQUFDLENBQUM7UUFDOUcsSUFBSSxZQUFZLEVBQUU7WUFDaEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxVQUFVLElBQUksQ0FBQyxTQUFTLDBDQUEwQyxXQUFXLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQztTQUM3RztRQUVELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUM7WUFDekIsU0FBUyxFQUFFLE9BQU8sQ0FBQyxTQUFTLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxPQUFPLFdBQVcsQ0FBQyxTQUFTLEVBQUU7WUFDL0UsU0FBUyxFQUFFLFdBQVc7WUFDdEIsU0FBUyxFQUFFLE9BQU8sQ0FBQyxJQUFJO1lBQ3ZCLE9BQU8sRUFBRSxPQUFPLENBQUMsU0FBUztTQUMzQixDQUFDLENBQUM7S0FDSjtJQUVEOzs7Ozs7T0FNRztJQUNJLGtCQUFrQixDQUFDLEtBQWdCLEVBQUUsaUJBQW9DLEVBQUUsZUFBMkI7UUFDM0csSUFBSSxlQUFlLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQzdCLE9BQU8sRUFBRSxDQUFDO1NBQ1g7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QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgSUFjdGlvbiwgQWN0aW9uQmluZE9wdGlvbnMgfSBmcm9tICcuL2FjdGlvbic7XG5pbXBvcnQgeyBFdmVudCB9IGZyb20gJy4vZXZlbnQnO1xuaW1wb3J0IHsgRXhwcmVzc2lvbiB9IGZyb20gJy4vZXhwcmVzc2lvbic7XG5pbXBvcnQgeyBDZm5EZXRlY3Rvck1vZGVsIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWlvdGV2ZW50cyc7XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3Igb3B0aW9ucyBvZiBzdGF0ZSB0cmFuc2l0aW9uLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFRyYW5zaXRpb25PcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBldmVudC5cbiAgICpcbiAgICogQGRlZmF1bHQgc3RyaW5nIGNvbWJpbmluZyB0aGUgbmFtZXMgb2YgdGhlIFN0YXRlcyBhcyBgJHtvcmlnaW5TdGF0ZU5hbWV9X3RvXyR7dGFyZ2V0U3RhdGVOYW1lfWBcbiAgICovXG4gIHJlYWRvbmx5IGV2ZW50TmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGNvbmRpdGlvbiB0aGF0IGlzIHVzZWQgdG8gZGV0ZXJtaW5lIHRvIGNhdXNlIHRoZSBzdGF0ZSB0cmFuc2l0aW9uIGFuZCB0aGUgYWN0aW9ucy5cbiAgICogV2hlbiB0aGlzIHdhcyBldmFsdWF0ZWQgdG8gYHRydWVgLCB0aGUgc3RhdGUgdHJhbnNpdGlvbiBhbmQgdGhlIGFjdGlvbnMgYXJlIHRyaWdnZXJlZC5cbiAgICovXG4gIHJlYWRvbmx5IHdoZW46IEV4cHJlc3Npb247XG5cbiAgLyoqXG4gICAqIFRoZSBhY3Rpb25zIHRvIGJlIHBlcmZvcm1lZCB3aXRoIHRoZSB0cmFuc2l0aW9uLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIG5vIGFjdGlvbnMgd2lsbCBiZSBwZXJmb3JtZWRcbiAgICovXG4gIHJlYWRvbmx5IGV4ZWN1dGluZz86IElBY3Rpb25bXTtcbn1cblxuLyoqXG4gKiBTcGVjaWZpZXMgdGhlIHN0YXRlIHRyYW5zaXRpb24gYW5kIHRoZSBhY3Rpb25zIHRvIGJlIHBlcmZvcm1lZCB3aGVuIHRoZSBjb25kaXRpb24gZXZhbHVhdGVzIHRvIGB0cnVlYC5cbiAqL1xuaW50ZXJmYWNlIFRyYW5zaXRpb25FdmVudCB7XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgZXZlbnQuXG4gICAqL1xuICByZWFkb25seSBldmVudE5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEJvb2xlYW4gZXhwcmVzc2lvbiB0aGF0LCB3aGVuIGB0cnVlYCwgY2F1c2VzIHRoZSBzdGF0ZSB0cmFuc2l0aW9uIGFuZCB0aGUgYWN0aW9ucyB0byBiZSBwZXJmb3JtZWQuXG4gICAqL1xuICByZWFkb25seSBjb25kaXRpb246IEV4cHJlc3Npb247XG5cbiAgLyoqXG4gICAqIFRoZSBhY3Rpb25zIHRvIGJlIHBlcmZvcm1lZC5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBubyBhY3Rpb25zIHdpbGwgYmUgcGVyZm9ybWVkXG4gICAqL1xuICByZWFkb25seSBhY3Rpb25zPzogSUFjdGlvbltdO1xuXG4gIC8qKlxuICAgKiBUaGUgbmV4dCBzdGF0ZSB0byB0cmFuc2l0IHRvLiBXaGVuIHRoZSByZXN1bGQgb2YgY29uZGl0aW9uIGV4cHJlc3Npb24gaXMgYHRydWVgLCB0aGUgc3RhdGUgaXMgdHJhbnNpdGVkLlxuICAgKi9cbiAgcmVhZG9ubHkgbmV4dFN0YXRlOiBTdGF0ZTtcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBkZWZpbmluZyBhIHN0YXRlIG9mIGEgZGV0ZWN0b3IuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3RhdGVQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgc3RhdGUuXG4gICAqL1xuICByZWFkb25seSBzdGF0ZU5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBldmVudHMgb24gZW50ZXIuIFRoZSBjb25kaXRpb25zIG9mIHRoZSBldmVudHMgd2lsbCBiZSBldmFsdWF0ZWQgd2hlbiBlbnRlcmluZyB0aGlzIHN0YXRlLlxuICAgKiBJZiB0aGUgY29uZGl0aW9uIG9mIHRoZSBldmVudCBldmFsdWF0ZXMgdG8gYHRydWVgLCB0aGUgYWN0aW9ucyBvZiB0aGUgZXZlbnQgd2lsbCBiZSBleGVjdXRlZC5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBubyBldmVudHMgd2lsbCB0cmlnZ2VyIG9uIGVudGVyaW5nIHRoaXMgc3RhdGVcbiAgICovXG4gIHJlYWRvbmx5IG9uRW50ZXI/OiBFdmVudFtdO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIGV2ZW50cyBvbiBpbnB1dC4gVGhlIGNvbmRpdGlvbnMgb2YgdGhlIGV2ZW50cyB3aWxsIGJlIGV2YWx1YXRlZCB3aGVuIGFueSBpbnB1dCBpcyByZWNlaXZlZC5cbiAgICogSWYgdGhlIGNvbmRpdGlvbiBvZiB0aGUgZXZlbnQgZXZhbHVhdGVzIHRvIGB0cnVlYCwgdGhlIGFjdGlvbnMgb2YgdGhlIGV2ZW50IHdpbGwgYmUgZXhlY3V0ZWQuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gbm8gZXZlbnRzIHdpbGwgdHJpZ2dlciBvbiBpbnB1dCBpbiB0aGlzIHN0YXRlXG4gICAqL1xuICByZWFkb25seSBvbklucHV0PzogRXZlbnRbXTtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBldmVudHMgb24gZXhpdC4gVGhlIGNvbmRpdGlvbnMgb2YgdGhlIGV2ZW50cyBhcmUgZXZhbHVhdGVkIHdoZW4gYW4gZXhpdGluZyB0aGlzIHN0YXRlLlxuICAgKiBJZiB0aGUgY29uZGl0aW9uIGV2YWx1YXRlcyB0byBgdHJ1ZWAsIHRoZSBhY3Rpb25zIG9mIHRoZSBldmVudCB3aWxsIGJlIGV4ZWN1dGVkLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIG5vIGV2ZW50cyB3aWxsIHRyaWdnZXIgb24gZXhpdGluZyB0aGlzIHN0YXRlXG4gICAqL1xuICByZWFkb25seSBvbkV4aXQ/OiBFdmVudFtdO1xufVxuXG4vKipcbiAqIERlZmluZXMgYSBzdGF0ZSBvZiBhIGRldGVjdG9yLlxuICovXG5leHBvcnQgY2xhc3MgU3RhdGUge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIHN0YXRlLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHN0YXRlTmFtZTogc3RyaW5nO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgdHJhbnNpdGlvbkV2ZW50czogVHJhbnNpdGlvbkV2ZW50W10gPSBbXTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHByb3BzOiBTdGF0ZVByb3BzKSB7XG4gICAgdGhpcy5zdGF0ZU5hbWUgPSBwcm9wcy5zdGF0ZU5hbWU7XG4gIH1cblxuICAvKipcbiAgICogQWRkIGEgdHJhbnNpdGlvbiBldmVudCB0byB0aGUgc3RhdGUuXG4gICAqIFRoZSB0cmFuc2l0aW9uIGV2ZW50IHdpbGwgYmUgdHJpZ2dlcmVkIGlmIGNvbmRpdGlvbiBpcyBldmFsdWF0ZWQgdG8gYHRydWVgLlxuICAgKlxuICAgKiBAcGFyYW0gdGFyZ2V0U3RhdGUgdGhlIHN0YXRlIHRoYXQgd2lsbCBiZSB0cmFuc2l0IHRvIHdoZW4gdGhlIGV2ZW50IHRyaWdnZXJlZFxuICAgKiBAcGFyYW0gb3B0aW9ucyB0cmFuc2l0aW9uIG9wdGlvbnMgaW5jbHVkaW5nIHRoZSBjb25kaXRpb24gdGhhdCBjYXVzZXMgdGhlIHN0YXRlIHRyYW5zaXRpb25cbiAgICovXG4gIHB1YmxpYyB0cmFuc2l0aW9uVG8odGFyZ2V0U3RhdGU6IFN0YXRlLCBvcHRpb25zOiBUcmFuc2l0aW9uT3B0aW9ucykge1xuICAgIGNvbnN0IGFscmVhZHlBZGRlZCA9IHRoaXMudHJhbnNpdGlvbkV2ZW50cy5zb21lKHRyYW5zaXRpb25FdmVudCA9PiB0cmFuc2l0aW9uRXZlbnQubmV4dFN0YXRlID09PSB0YXJnZXRTdGF0ZSk7XG4gICAgaWYgKGFscmVhZHlBZGRlZCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBTdGF0ZSAnJHt0aGlzLnN0YXRlTmFtZX0nIGFscmVhZHkgaGFzIGEgdHJhbnNpdGlvbiBkZWZpbmVkIHRvICcke3RhcmdldFN0YXRlLnN0YXRlTmFtZX0nYCk7XG4gICAgfVxuXG4gICAgdGhpcy50cmFuc2l0aW9uRXZlbnRzLnB1c2goe1xuICAgICAgZXZlbnROYW1lOiBvcHRpb25zLmV2ZW50TmFtZSA/PyBgJHt0aGlzLnN0YXRlTmFtZX1fdG9fJHt0YXJnZXRTdGF0ZS5zdGF0ZU5hbWV9YCxcbiAgICAgIG5leHRTdGF0ZTogdGFyZ2V0U3RhdGUsXG4gICAgICBjb25kaXRpb246IG9wdGlvbnMud2hlbixcbiAgICAgIGFjdGlvbnM6IG9wdGlvbnMuZXhlY3V0aW5nLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbGxlY3Qgc3RhdGVzIGluIGRlcGVuZGVuY3kgZ3JhZ2ggdGhhdCBjb25zdHJ1Y3RlZCBieSBzdGF0ZSB0cmFuc2l0aW9ucyxcbiAgICogYW5kIHJldHVybiB0aGUgSlNPTnMgb2YgdGhlIHN0YXRlcy5cbiAgICogVGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgcmVjdXJzaXZlbHkgYW5kIGNvbGxlY3QgdGhlIHN0YXRlcy5cbiAgICpcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgX2NvbGxlY3RTdGF0ZUpzb25zKHNjb3BlOiBDb25zdHJ1Y3QsIGFjdGlvbkJpbmRPcHRpb25zOiBBY3Rpb25CaW5kT3B0aW9ucywgY29sbGVjdGVkU3RhdGVzOiBTZXQ8U3RhdGU+KTogQ2ZuRGV0ZWN0b3JNb2RlbC5TdGF0ZVByb3BlcnR5W10ge1xuICAgIGlmIChjb2xsZWN0ZWRTdGF0ZXMuaGFzKHRoaXMpKSB7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuICAgIGNvbGxlY3RlZFN0YXRlcy5hZGQodGhpcyk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgdGhpcy50b1N0YXRlSnNvbihzY29wZSwgYWN0aW9uQmluZE9wdGlvbnMpLFxuICAgICAgLi4udGhpcy50cmFuc2l0aW9uRXZlbnRzLmZsYXRNYXAodHJhbnNpdGlvbkV2ZW50ID0+IHtcbiAgICAgICAgcmV0dXJuIHRyYW5zaXRpb25FdmVudC5uZXh0U3RhdGUuX2NvbGxlY3RTdGF0ZUpzb25zKHNjb3BlLCBhY3Rpb25CaW5kT3B0aW9ucywgY29sbGVjdGVkU3RhdGVzKTtcbiAgICAgIH0pLFxuICAgIF07XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0cnVlIGlmIHRoaXMgc3RhdGUgaGFzIGF0IGxlYXN0IG9uZSBjb25kaXRpb24gdmlhIGV2ZW50cy5cbiAgICpcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgX29uRW50ZXJFdmVudHNIYXZlQXRMZWFzdE9uZUNvbmRpdGlvbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5wcm9wcy5vbkVudGVyPy5zb21lKGV2ZW50ID0+IGV2ZW50LmNvbmRpdGlvbikgPz8gZmFsc2U7XG4gIH1cblxuICBwcml2YXRlIHRvU3RhdGVKc29uKHNjb3BlOiBDb25zdHJ1Y3QsIGFjdGlvbkJpbmRPcHRpb25zOiBBY3Rpb25CaW5kT3B0aW9ucyk6IENmbkRldGVjdG9yTW9kZWwuU3RhdGVQcm9wZXJ0eSB7XG4gICAgY29uc3QgeyBvbkVudGVyLCBvbklucHV0LCBvbkV4aXQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIHtcbiAgICAgIHN0YXRlTmFtZTogdGhpcy5zdGF0ZU5hbWUsXG4gICAgICBvbkVudGVyOiBvbkVudGVyICYmIHtcbiAgICAgICAgZXZlbnRzOiB0b0V2ZW50c0pzb24oc2NvcGUsIGFjdGlvbkJpbmRPcHRpb25zLCBvbkVudGVyKSxcbiAgICAgIH0sXG4gICAgICBvbklucHV0OiAob25JbnB1dCB8fCB0aGlzLnRyYW5zaXRpb25FdmVudHMubGVuZ3RoICE9PSAwKSA/IHtcbiAgICAgICAgZXZlbnRzOiB0b0V2ZW50c0pzb24oc2NvcGUsIGFjdGlvbkJpbmRPcHRpb25zLCBvbklucHV0KSxcbiAgICAgICAgdHJhbnNpdGlvbkV2ZW50czogdG9UcmFuc2l0aW9uRXZlbnRzSnNvbihzY29wZSwgYWN0aW9uQmluZE9wdGlvbnMsIHRoaXMudHJhbnNpdGlvbkV2ZW50cyksXG4gICAgICB9IDogdW5kZWZpbmVkLFxuICAgICAgb25FeGl0OiBvbkV4aXQgJiYge1xuICAgICAgICBldmVudHM6IHRvRXZlbnRzSnNvbihzY29wZSwgYWN0aW9uQmluZE9wdGlvbnMsIG9uRXhpdCksXG4gICAgICB9LFxuICAgIH07XG4gIH1cbn1cblxuZnVuY3Rpb24gdG9FdmVudHNKc29uKFxuICBzY29wZTogQ29uc3RydWN0LFxuICBhY3Rpb25CaW5kT3B0aW9uczogQWN0aW9uQmluZE9wdGlvbnMsXG4gIGV2ZW50cz86IEV2ZW50W10sXG4pOiBDZm5EZXRlY3Rvck1vZGVsLkV2ZW50UHJvcGVydHlbXSB8IHVuZGVmaW5lZCB7XG4gIHJldHVybiBldmVudHM/Lm1hcChldmVudCA9PiAoe1xuICAgIGV2ZW50TmFtZTogZXZlbnQuZXZlbnROYW1lLFxuICAgIGNvbmRpdGlvbjogZXZlbnQuY29uZGl0aW9uPy5ldmFsdWF0ZSgpLFxuICAgIGFjdGlvbnM6IGV2ZW50LmFjdGlvbnM/Lm1hcChhY3Rpb24gPT4gYWN0aW9uLl9iaW5kKHNjb3BlLCBhY3Rpb25CaW5kT3B0aW9ucykuY29uZmlndXJhdGlvbiksXG4gIH0pKTtcbn1cblxuZnVuY3Rpb24gdG9UcmFuc2l0aW9uRXZlbnRzSnNvbihcbiAgc2NvcGU6IENvbnN0cnVjdCxcbiAgYWN0aW9uQmluZE9wdGlvbnM6IEFjdGlvbkJpbmRPcHRpb25zLFxuICB0cmFuc2l0aW9uRXZlbnRzOiBUcmFuc2l0aW9uRXZlbnRbXSxcbik6IENmbkRldGVjdG9yTW9kZWwuVHJhbnNpdGlvbkV2ZW50UHJvcGVydHlbXSB8IHVuZGVmaW5lZCB7XG4gIGlmICh0cmFuc2l0aW9uRXZlbnRzLmxlbmd0aCA9PT0gMCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cblxuICByZXR1cm4gdHJhbnNpdGlvbkV2ZW50cy5tYXAodHJhbnNpdGlvbkV2ZW50ID0+ICh7XG4gICAgZXZlbnROYW1lOiB0cmFuc2l0aW9uRXZlbnQuZXZlbnROYW1lLFxuICAgIGNvbmRpdGlvbjogdHJhbnNpdGlvbkV2ZW50LmNvbmRpdGlvbi5ldmFsdWF0ZSgpLFxuICAgIGFjdGlvbnM6IHRyYW5zaXRpb25FdmVudC5hY3Rpb25zPy5tYXAoYWN0aW9uID0+IGFjdGlvbi5fYmluZChzY29wZSwgYWN0aW9uQmluZE9wdGlvbnMpLmNvbmZpZ3VyYXRpb24pLFxuICAgIG5leHRTdGF0ZTogdHJhbnNpdGlvbkV2ZW50Lm5leHRTdGF0ZS5zdGF0ZU5hbWUsXG4gIH0pKTtcbn1cbiJdfQ==
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-cdk/aws-iotevents-alpha",
3
- "version": "2.35.0-alpha.0",
3
+ "version": "2.37.1-alpha.0",
4
4
  "private": false,
5
5
  "description": "The CDK Construct Library for AWS::IoTEvents",
6
6
  "main": "lib/index.js",
@@ -83,23 +83,28 @@
83
83
  },
84
84
  "license": "Apache-2.0",
85
85
  "devDependencies": {
86
- "@aws-cdk/cdk-build-tools": "2.35.0",
87
- "@aws-cdk/integ-runner": "2.35.0",
88
- "@aws-cdk/cfn2ts": "2.35.0",
89
- "@aws-cdk/pkglint": "2.35.0",
86
+ "@aws-cdk/cdk-build-tools": "2.37.1",
87
+ "@aws-cdk/integ-runner": "2.37.1",
88
+ "@aws-cdk/cfn2ts": "2.37.1",
89
+ "@aws-cdk/pkglint": "2.37.1",
90
90
  "@types/jest": "^27.5.2",
91
91
  "jest": "^27.5.1",
92
- "aws-cdk-lib": "2.35.0",
92
+ "aws-cdk-lib": "2.37.1",
93
93
  "constructs": "^10.0.0"
94
94
  },
95
95
  "dependencies": {},
96
96
  "peerDependencies": {
97
- "aws-cdk-lib": "^2.35.0",
97
+ "aws-cdk-lib": "^2.37.1",
98
98
  "constructs": "^10.0.0"
99
99
  },
100
100
  "engines": {
101
101
  "node": ">= 14.15.0"
102
102
  },
103
+ "awslint": {
104
+ "exclude": [
105
+ "*:*"
106
+ ]
107
+ },
103
108
  "stability": "experimental",
104
109
  "maturity": "experimental",
105
110
  "awscdkio": {
@@ -108,11 +113,6 @@
108
113
  "publishConfig": {
109
114
  "tag": "latest"
110
115
  },
111
- "awslint": {
112
- "exclude": [
113
- "*:*"
114
- ]
115
- },
116
116
  "pkglint": {
117
117
  "exclude": [
118
118
  "naming/package-matches-directory",