@rio-cloud/cdk-v2-constructs 6.12.1 → 6.12.2

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
@@ -19,8 +19,8 @@
19
19
  "js-yaml": "~4.1.0"
20
20
  },
21
21
  "dependencies": {
22
- "aws-cdk-lib": "^2.161.1",
23
- "constructs": "^10.3.0"
22
+ "aws-cdk-lib": "^2.163.0",
23
+ "constructs": "^10.4.2"
24
24
  },
25
25
  "dependencyClosure": {
26
26
  "@aws-cdk/asset-awscli-v1": {
@@ -14586,7 +14586,7 @@
14586
14586
  },
14587
14587
  "locationInModule": {
14588
14588
  "filename": "src/datadogv2/datadog-lambda-instrumentation.ts",
14589
- "line": 119
14589
+ "line": 118
14590
14590
  },
14591
14591
  "name": "addForwarderToNonLambdaLogGroups",
14592
14592
  "parameters": [
@@ -14609,7 +14609,7 @@
14609
14609
  },
14610
14610
  "locationInModule": {
14611
14611
  "filename": "src/datadogv2/datadog-lambda-instrumentation.ts",
14612
- "line": 116
14612
+ "line": 115
14613
14613
  },
14614
14614
  "name": "addGitCommitMetadata",
14615
14615
  "parameters": [
@@ -14655,7 +14655,7 @@
14655
14655
  },
14656
14656
  "locationInModule": {
14657
14657
  "filename": "src/datadogv2/datadog-lambda-instrumentation.ts",
14658
- "line": 109
14658
+ "line": 108
14659
14659
  },
14660
14660
  "name": "addLambdaFunctions",
14661
14661
  "parameters": [
@@ -15916,6 +15916,9 @@
15916
15916
  "summary": "A custom resource that resolves the secret ARN based on the organization ID."
15917
15917
  },
15918
15918
  "fqn": "@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret",
15919
+ "interfaces": [
15920
+ "aws-cdk-lib.aws_secretsmanager.ISecret"
15921
+ ],
15919
15922
  "kind": "class",
15920
15923
  "locationInModule": {
15921
15924
  "filename": "src/datadogv2/datadog-shared-secrets.ts",
@@ -15983,6 +15986,208 @@
15983
15986
  }
15984
15987
  },
15985
15988
  "static": true
15989
+ },
15990
+ {
15991
+ "docs": {
15992
+ "stability": "stable",
15993
+ "summary": "Adds a rotation schedule to the secret."
15994
+ },
15995
+ "locationInModule": {
15996
+ "filename": "src/datadogv2/datadog-shared-secrets.ts",
15997
+ "line": 150
15998
+ },
15999
+ "name": "addRotationSchedule",
16000
+ "overrides": "aws-cdk-lib.aws_secretsmanager.ISecret",
16001
+ "parameters": [
16002
+ {
16003
+ "name": "_id",
16004
+ "type": {
16005
+ "primitive": "string"
16006
+ }
16007
+ },
16008
+ {
16009
+ "name": "_options",
16010
+ "type": {
16011
+ "fqn": "aws-cdk-lib.aws_secretsmanager.RotationScheduleOptions"
16012
+ }
16013
+ }
16014
+ ],
16015
+ "returns": {
16016
+ "type": {
16017
+ "fqn": "aws-cdk-lib.aws_secretsmanager.RotationSchedule"
16018
+ }
16019
+ }
16020
+ },
16021
+ {
16022
+ "docs": {
16023
+ "remarks": "If this secret was created in this stack, a resource policy will be\nautomatically created upon the first call to `addToResourcePolicy`. If\nthe secret is imported, then this is a no-op.",
16024
+ "stability": "stable",
16025
+ "summary": "Adds a statement to the IAM resource policy associated with this secret."
16026
+ },
16027
+ "locationInModule": {
16028
+ "filename": "src/datadogv2/datadog-shared-secrets.ts",
16029
+ "line": 154
16030
+ },
16031
+ "name": "addToResourcePolicy",
16032
+ "overrides": "aws-cdk-lib.aws_secretsmanager.ISecret",
16033
+ "parameters": [
16034
+ {
16035
+ "name": "_statement",
16036
+ "type": {
16037
+ "fqn": "aws-cdk-lib.aws_iam.PolicyStatement"
16038
+ }
16039
+ }
16040
+ ],
16041
+ "returns": {
16042
+ "type": {
16043
+ "fqn": "aws-cdk-lib.aws_iam.AddToResourcePolicyResult"
16044
+ }
16045
+ }
16046
+ },
16047
+ {
16048
+ "docs": {
16049
+ "remarks": "The Removal Policy controls what happens to this resource when it stops\nbeing managed by CloudFormation, either because you've removed it from the\nCDK application or because you've made a change that requires the resource\nto be replaced.\n\nThe resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS\naccount for data recovery and cleanup later (`RemovalPolicy.RETAIN`).",
16050
+ "stability": "stable",
16051
+ "summary": "Apply the given removal policy to this resource."
16052
+ },
16053
+ "locationInModule": {
16054
+ "filename": "src/datadogv2/datadog-shared-secrets.ts",
16055
+ "line": 166
16056
+ },
16057
+ "name": "applyRemovalPolicy",
16058
+ "overrides": "aws-cdk-lib.IResource",
16059
+ "parameters": [
16060
+ {
16061
+ "name": "_policy",
16062
+ "type": {
16063
+ "fqn": "aws-cdk-lib.RemovalPolicy"
16064
+ }
16065
+ }
16066
+ ]
16067
+ },
16068
+ {
16069
+ "docs": {
16070
+ "stability": "stable",
16071
+ "summary": "Attach a target to this secret."
16072
+ },
16073
+ "locationInModule": {
16074
+ "filename": "src/datadogv2/datadog-shared-secrets.ts",
16075
+ "line": 162
16076
+ },
16077
+ "name": "attach",
16078
+ "overrides": "aws-cdk-lib.aws_secretsmanager.ISecret",
16079
+ "parameters": [
16080
+ {
16081
+ "name": "_target",
16082
+ "type": {
16083
+ "fqn": "aws-cdk-lib.aws_secretsmanager.ISecretAttachmentTarget"
16084
+ }
16085
+ }
16086
+ ],
16087
+ "returns": {
16088
+ "type": {
16089
+ "fqn": "aws-cdk-lib.aws_secretsmanager.ISecret"
16090
+ }
16091
+ }
16092
+ },
16093
+ {
16094
+ "docs": {
16095
+ "stability": "stable",
16096
+ "summary": "Denies the `DeleteSecret` action to all principals within the current account."
16097
+ },
16098
+ "locationInModule": {
16099
+ "filename": "src/datadogv2/datadog-shared-secrets.ts",
16100
+ "line": 158
16101
+ },
16102
+ "name": "denyAccountRootDelete",
16103
+ "overrides": "aws-cdk-lib.aws_secretsmanager.ISecret"
16104
+ },
16105
+ {
16106
+ "docs": {
16107
+ "stability": "stable",
16108
+ "summary": "Grants reading the secret value to some role."
16109
+ },
16110
+ "locationInModule": {
16111
+ "filename": "src/datadogv2/datadog-shared-secrets.ts",
16112
+ "line": 130
16113
+ },
16114
+ "name": "grantRead",
16115
+ "overrides": "aws-cdk-lib.aws_secretsmanager.ISecret",
16116
+ "parameters": [
16117
+ {
16118
+ "name": "grantee",
16119
+ "type": {
16120
+ "fqn": "aws-cdk-lib.aws_iam.IGrantable"
16121
+ }
16122
+ },
16123
+ {
16124
+ "name": "versionStages",
16125
+ "optional": true,
16126
+ "type": {
16127
+ "collection": {
16128
+ "elementtype": {
16129
+ "primitive": "string"
16130
+ },
16131
+ "kind": "array"
16132
+ }
16133
+ }
16134
+ }
16135
+ ],
16136
+ "returns": {
16137
+ "type": {
16138
+ "fqn": "aws-cdk-lib.aws_iam.Grant"
16139
+ }
16140
+ }
16141
+ },
16142
+ {
16143
+ "docs": {
16144
+ "stability": "stable",
16145
+ "summary": "Grants writing and updating the secret value to some role."
16146
+ },
16147
+ "locationInModule": {
16148
+ "filename": "src/datadogv2/datadog-shared-secrets.ts",
16149
+ "line": 146
16150
+ },
16151
+ "name": "grantWrite",
16152
+ "overrides": "aws-cdk-lib.aws_secretsmanager.ISecret",
16153
+ "parameters": [
16154
+ {
16155
+ "name": "_grantee",
16156
+ "type": {
16157
+ "fqn": "aws-cdk-lib.aws_iam.IGrantable"
16158
+ }
16159
+ }
16160
+ ],
16161
+ "returns": {
16162
+ "type": {
16163
+ "fqn": "aws-cdk-lib.aws_iam.Grant"
16164
+ }
16165
+ }
16166
+ },
16167
+ {
16168
+ "docs": {
16169
+ "stability": "stable",
16170
+ "summary": "Interpret the secret as a JSON object and return a field's value from it as a `SecretValue`."
16171
+ },
16172
+ "locationInModule": {
16173
+ "filename": "src/datadogv2/datadog-shared-secrets.ts",
16174
+ "line": 126
16175
+ },
16176
+ "name": "secretValueFromJson",
16177
+ "overrides": "aws-cdk-lib.aws_secretsmanager.ISecret",
16178
+ "parameters": [
16179
+ {
16180
+ "name": "key",
16181
+ "type": {
16182
+ "primitive": "string"
16183
+ }
16184
+ }
16185
+ ],
16186
+ "returns": {
16187
+ "type": {
16188
+ "fqn": "aws-cdk-lib.SecretValue"
16189
+ }
16190
+ }
15986
16191
  }
15987
16192
  ],
15988
16193
  "name": "DatadogSharedSecret",
@@ -15990,16 +16195,121 @@
15990
16195
  "properties": [
15991
16196
  {
15992
16197
  "docs": {
15993
- "stability": "stable"
16198
+ "remarks": "For resources that are created and managed by the CDK\n(generally, those created by creating new class instances like Role, Bucket, etc.),\nthis is always the same as the environment of the stack they belong to;\nhowever, for imported resources\n(those obtained from static methods like fromRoleArn, fromBucketName, etc.),\nthat might be different than the stack they were imported into.",
16199
+ "stability": "stable",
16200
+ "summary": "The environment this resource belongs to."
15994
16201
  },
15995
16202
  "immutable": true,
15996
16203
  "locationInModule": {
15997
16204
  "filename": "src/datadogv2/datadog-shared-secrets.ts",
15998
- "line": 74
16205
+ "line": 102
15999
16206
  },
16000
- "name": "secret",
16207
+ "name": "env",
16208
+ "overrides": "aws-cdk-lib.IResource",
16001
16209
  "type": {
16002
- "fqn": "aws-cdk-lib.aws_secretsmanager.ISecret"
16210
+ "fqn": "aws-cdk-lib.ResourceEnvironment"
16211
+ }
16212
+ },
16213
+ {
16214
+ "docs": {
16215
+ "remarks": "Will return the full ARN if available, otherwise a partial arn.\nFor secrets imported by the deprecated `fromSecretName`, it will return the `secretName`.",
16216
+ "stability": "stable",
16217
+ "summary": "The ARN of the secret in AWS Secrets Manager."
16218
+ },
16219
+ "immutable": true,
16220
+ "locationInModule": {
16221
+ "filename": "src/datadogv2/datadog-shared-secrets.ts",
16222
+ "line": 110
16223
+ },
16224
+ "name": "secretArn",
16225
+ "overrides": "aws-cdk-lib.aws_secretsmanager.ISecret",
16226
+ "type": {
16227
+ "primitive": "string"
16228
+ }
16229
+ },
16230
+ {
16231
+ "docs": {
16232
+ "remarks": "For \"owned\" secrets, this will be the full resource name (secret name + suffix), unless the\n'@aws-cdk/aws-secretsmanager:parseOwnedSecretName' feature flag is set.",
16233
+ "stability": "stable",
16234
+ "summary": "The name of the secret."
16235
+ },
16236
+ "immutable": true,
16237
+ "locationInModule": {
16238
+ "filename": "src/datadogv2/datadog-shared-secrets.ts",
16239
+ "line": 118
16240
+ },
16241
+ "name": "secretName",
16242
+ "overrides": "aws-cdk-lib.aws_secretsmanager.ISecret",
16243
+ "type": {
16244
+ "primitive": "string"
16245
+ }
16246
+ },
16247
+ {
16248
+ "docs": {
16249
+ "stability": "stable",
16250
+ "summary": "Retrieve the value of the stored secret as a `SecretValue`."
16251
+ },
16252
+ "immutable": true,
16253
+ "locationInModule": {
16254
+ "filename": "src/datadogv2/datadog-shared-secrets.ts",
16255
+ "line": 122
16256
+ },
16257
+ "name": "secretValue",
16258
+ "overrides": "aws-cdk-lib.aws_secretsmanager.ISecret",
16259
+ "type": {
16260
+ "fqn": "aws-cdk-lib.SecretValue"
16261
+ }
16262
+ },
16263
+ {
16264
+ "docs": {
16265
+ "stability": "stable",
16266
+ "summary": "The stack in which this resource is defined."
16267
+ },
16268
+ "immutable": true,
16269
+ "locationInModule": {
16270
+ "filename": "src/datadogv2/datadog-shared-secrets.ts",
16271
+ "line": 98
16272
+ },
16273
+ "name": "stack",
16274
+ "overrides": "aws-cdk-lib.IResource",
16275
+ "type": {
16276
+ "fqn": "aws-cdk-lib.Stack"
16277
+ }
16278
+ },
16279
+ {
16280
+ "docs": {
16281
+ "remarks": "When not specified, the default\nKMS key for the account and region is being used.",
16282
+ "stability": "stable",
16283
+ "summary": "The customer-managed encryption key that is used to encrypt this secret, if any."
16284
+ },
16285
+ "immutable": true,
16286
+ "locationInModule": {
16287
+ "filename": "src/datadogv2/datadog-shared-secrets.ts",
16288
+ "line": 106
16289
+ },
16290
+ "name": "encryptionKey",
16291
+ "optional": true,
16292
+ "overrides": "aws-cdk-lib.aws_secretsmanager.ISecret",
16293
+ "type": {
16294
+ "fqn": "aws-cdk-lib.aws_kms.IKey"
16295
+ }
16296
+ },
16297
+ {
16298
+ "docs": {
16299
+ "remarks": "This is equal to `secretArn` in most cases, but is undefined when a full ARN is not available (e.g., secrets imported by name).",
16300
+ "stability": "stable",
16301
+ "summary": "The full ARN of the secret in AWS Secrets Manager, which is the ARN including the Secrets Manager-supplied 6-character suffix."
16302
+ },
16303
+ "immutable": true,
16304
+ "locationInModule": {
16305
+ "filename": "src/datadogv2/datadog-shared-secrets.ts",
16306
+ "line": 114
16307
+ },
16308
+ "name": "secretFullArn",
16309
+ "optional": true,
16310
+ "overrides": "aws-cdk-lib.aws_secretsmanager.ISecret",
16311
+ "type": {
16312
+ "primitive": "string"
16003
16313
  }
16004
16314
  }
16005
16315
  ],
@@ -19546,5 +19856,5 @@
19546
19856
  }
19547
19857
  },
19548
19858
  "version": "0.0.0",
19549
- "fingerprint": "nne4l7I6QYKfeWWj+aKn0szZGv9LSdFjX9d+76vMGkw="
19859
+ "fingerprint": "jy2qX2b1QCqrf5ImjcMOVjqERQbFWoeaLJf5sL/m1+w="
19550
19860
  }
package/docs/API.md CHANGED
@@ -1983,6 +1983,8 @@ Default priority of a monitor.
1983
1983
 
1984
1984
  ### DatadogSharedSecret <a name="DatadogSharedSecret" id="@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret"></a>
1985
1985
 
1986
+ - *Implements:* aws-cdk-lib.aws_secretsmanager.ISecret
1987
+
1986
1988
  A custom resource that resolves the secret ARN based on the organization ID.
1987
1989
 
1988
1990
  #### Methods <a name="Methods" id="Methods"></a>
@@ -1990,6 +1992,14 @@ A custom resource that resolves the secret ARN based on the organization ID.
1990
1992
  | **Name** | **Description** |
1991
1993
  | --- | --- |
1992
1994
  | <code><a href="#@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.toString">toString</a></code> | Returns a string representation of this construct. |
1995
+ | <code><a href="#@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.addRotationSchedule">addRotationSchedule</a></code> | Adds a rotation schedule to the secret. |
1996
+ | <code><a href="#@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.addToResourcePolicy">addToResourcePolicy</a></code> | Adds a statement to the IAM resource policy associated with this secret. |
1997
+ | <code><a href="#@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.applyRemovalPolicy">applyRemovalPolicy</a></code> | Apply the given removal policy to this resource. |
1998
+ | <code><a href="#@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.attach">attach</a></code> | Attach a target to this secret. |
1999
+ | <code><a href="#@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.denyAccountRootDelete">denyAccountRootDelete</a></code> | Denies the `DeleteSecret` action to all principals within the current account. |
2000
+ | <code><a href="#@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.grantRead">grantRead</a></code> | Grants reading the secret value to some role. |
2001
+ | <code><a href="#@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.grantWrite">grantWrite</a></code> | Grants writing and updating the secret value to some role. |
2002
+ | <code><a href="#@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.secretValueFromJson">secretValueFromJson</a></code> | Interpret the secret as a JSON object and return a field's value from it as a `SecretValue`. |
1993
2003
 
1994
2004
  ---
1995
2005
 
@@ -2001,6 +2011,136 @@ public toString(): string
2001
2011
 
2002
2012
  Returns a string representation of this construct.
2003
2013
 
2014
+ ##### `addRotationSchedule` <a name="addRotationSchedule" id="@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.addRotationSchedule"></a>
2015
+
2016
+ ```typescript
2017
+ public addRotationSchedule(_id: string, _options: RotationScheduleOptions): RotationSchedule
2018
+ ```
2019
+
2020
+ Adds a rotation schedule to the secret.
2021
+
2022
+ ###### `_id`<sup>Required</sup> <a name="_id" id="@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.addRotationSchedule.parameter._id"></a>
2023
+
2024
+ - *Type:* string
2025
+
2026
+ ---
2027
+
2028
+ ###### `_options`<sup>Required</sup> <a name="_options" id="@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.addRotationSchedule.parameter._options"></a>
2029
+
2030
+ - *Type:* aws-cdk-lib.aws_secretsmanager.RotationScheduleOptions
2031
+
2032
+ ---
2033
+
2034
+ ##### `addToResourcePolicy` <a name="addToResourcePolicy" id="@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.addToResourcePolicy"></a>
2035
+
2036
+ ```typescript
2037
+ public addToResourcePolicy(_statement: PolicyStatement): AddToResourcePolicyResult
2038
+ ```
2039
+
2040
+ Adds a statement to the IAM resource policy associated with this secret.
2041
+
2042
+ If this secret was created in this stack, a resource policy will be
2043
+ automatically created upon the first call to `addToResourcePolicy`. If
2044
+ the secret is imported, then this is a no-op.
2045
+
2046
+ ###### `_statement`<sup>Required</sup> <a name="_statement" id="@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.addToResourcePolicy.parameter._statement"></a>
2047
+
2048
+ - *Type:* aws-cdk-lib.aws_iam.PolicyStatement
2049
+
2050
+ ---
2051
+
2052
+ ##### `applyRemovalPolicy` <a name="applyRemovalPolicy" id="@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.applyRemovalPolicy"></a>
2053
+
2054
+ ```typescript
2055
+ public applyRemovalPolicy(_policy: RemovalPolicy): void
2056
+ ```
2057
+
2058
+ Apply the given removal policy to this resource.
2059
+
2060
+ The Removal Policy controls what happens to this resource when it stops
2061
+ being managed by CloudFormation, either because you've removed it from the
2062
+ CDK application or because you've made a change that requires the resource
2063
+ to be replaced.
2064
+
2065
+ The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
2066
+ account for data recovery and cleanup later (`RemovalPolicy.RETAIN`).
2067
+
2068
+ ###### `_policy`<sup>Required</sup> <a name="_policy" id="@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.applyRemovalPolicy.parameter._policy"></a>
2069
+
2070
+ - *Type:* aws-cdk-lib.RemovalPolicy
2071
+
2072
+ ---
2073
+
2074
+ ##### `attach` <a name="attach" id="@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.attach"></a>
2075
+
2076
+ ```typescript
2077
+ public attach(_target: ISecretAttachmentTarget): ISecret
2078
+ ```
2079
+
2080
+ Attach a target to this secret.
2081
+
2082
+ ###### `_target`<sup>Required</sup> <a name="_target" id="@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.attach.parameter._target"></a>
2083
+
2084
+ - *Type:* aws-cdk-lib.aws_secretsmanager.ISecretAttachmentTarget
2085
+
2086
+ ---
2087
+
2088
+ ##### `denyAccountRootDelete` <a name="denyAccountRootDelete" id="@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.denyAccountRootDelete"></a>
2089
+
2090
+ ```typescript
2091
+ public denyAccountRootDelete(): void
2092
+ ```
2093
+
2094
+ Denies the `DeleteSecret` action to all principals within the current account.
2095
+
2096
+ ##### `grantRead` <a name="grantRead" id="@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.grantRead"></a>
2097
+
2098
+ ```typescript
2099
+ public grantRead(grantee: IGrantable, versionStages?: string[]): Grant
2100
+ ```
2101
+
2102
+ Grants reading the secret value to some role.
2103
+
2104
+ ###### `grantee`<sup>Required</sup> <a name="grantee" id="@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.grantRead.parameter.grantee"></a>
2105
+
2106
+ - *Type:* aws-cdk-lib.aws_iam.IGrantable
2107
+
2108
+ ---
2109
+
2110
+ ###### `versionStages`<sup>Optional</sup> <a name="versionStages" id="@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.grantRead.parameter.versionStages"></a>
2111
+
2112
+ - *Type:* string[]
2113
+
2114
+ ---
2115
+
2116
+ ##### `grantWrite` <a name="grantWrite" id="@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.grantWrite"></a>
2117
+
2118
+ ```typescript
2119
+ public grantWrite(_grantee: IGrantable): Grant
2120
+ ```
2121
+
2122
+ Grants writing and updating the secret value to some role.
2123
+
2124
+ ###### `_grantee`<sup>Required</sup> <a name="_grantee" id="@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.grantWrite.parameter._grantee"></a>
2125
+
2126
+ - *Type:* aws-cdk-lib.aws_iam.IGrantable
2127
+
2128
+ ---
2129
+
2130
+ ##### `secretValueFromJson` <a name="secretValueFromJson" id="@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.secretValueFromJson"></a>
2131
+
2132
+ ```typescript
2133
+ public secretValueFromJson(key: string): SecretValue
2134
+ ```
2135
+
2136
+ Interpret the secret as a JSON object and return a field's value from it as a `SecretValue`.
2137
+
2138
+ ###### `key`<sup>Required</sup> <a name="key" id="@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.secretValueFromJson.parameter.key"></a>
2139
+
2140
+ - *Type:* string
2141
+
2142
+ ---
2143
+
2004
2144
  #### Static Functions <a name="Static Functions" id="Static Functions"></a>
2005
2145
 
2006
2146
  | **Name** | **Description** |
@@ -2092,7 +2232,13 @@ This static function resolves to the json credentials secret that contains ['Api
2092
2232
  | **Name** | **Type** | **Description** |
2093
2233
  | --- | --- | --- |
2094
2234
  | <code><a href="#@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.property.node">node</a></code> | <code>constructs.Node</code> | The tree node. |
2095
- | <code><a href="#@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.property.secret">secret</a></code> | <code>aws-cdk-lib.aws_secretsmanager.ISecret</code> | *No description.* |
2235
+ | <code><a href="#@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.property.env">env</a></code> | <code>aws-cdk-lib.ResourceEnvironment</code> | The environment this resource belongs to. |
2236
+ | <code><a href="#@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.property.secretArn">secretArn</a></code> | <code>string</code> | The ARN of the secret in AWS Secrets Manager. |
2237
+ | <code><a href="#@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.property.secretName">secretName</a></code> | <code>string</code> | The name of the secret. |
2238
+ | <code><a href="#@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.property.secretValue">secretValue</a></code> | <code>aws-cdk-lib.SecretValue</code> | Retrieve the value of the stored secret as a `SecretValue`. |
2239
+ | <code><a href="#@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.property.stack">stack</a></code> | <code>aws-cdk-lib.Stack</code> | The stack in which this resource is defined. |
2240
+ | <code><a href="#@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.property.encryptionKey">encryptionKey</a></code> | <code>aws-cdk-lib.aws_kms.IKey</code> | The customer-managed encryption key that is used to encrypt this secret, if any. |
2241
+ | <code><a href="#@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.property.secretFullArn">secretFullArn</a></code> | <code>string</code> | The full ARN of the secret in AWS Secrets Manager, which is the ARN including the Secrets Manager-supplied 6-character suffix. |
2096
2242
 
2097
2243
  ---
2098
2244
 
@@ -2108,13 +2254,105 @@ The tree node.
2108
2254
 
2109
2255
  ---
2110
2256
 
2111
- ##### `secret`<sup>Required</sup> <a name="secret" id="@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.property.secret"></a>
2257
+ ##### `env`<sup>Required</sup> <a name="env" id="@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.property.env"></a>
2112
2258
 
2113
2259
  ```typescript
2114
- public readonly secret: ISecret;
2260
+ public readonly env: ResourceEnvironment;
2115
2261
  ```
2116
2262
 
2117
- - *Type:* aws-cdk-lib.aws_secretsmanager.ISecret
2263
+ - *Type:* aws-cdk-lib.ResourceEnvironment
2264
+
2265
+ The environment this resource belongs to.
2266
+
2267
+ For resources that are created and managed by the CDK
2268
+ (generally, those created by creating new class instances like Role, Bucket, etc.),
2269
+ this is always the same as the environment of the stack they belong to;
2270
+ however, for imported resources
2271
+ (those obtained from static methods like fromRoleArn, fromBucketName, etc.),
2272
+ that might be different than the stack they were imported into.
2273
+
2274
+ ---
2275
+
2276
+ ##### `secretArn`<sup>Required</sup> <a name="secretArn" id="@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.property.secretArn"></a>
2277
+
2278
+ ```typescript
2279
+ public readonly secretArn: string;
2280
+ ```
2281
+
2282
+ - *Type:* string
2283
+
2284
+ The ARN of the secret in AWS Secrets Manager.
2285
+
2286
+ Will return the full ARN if available, otherwise a partial arn.
2287
+ For secrets imported by the deprecated `fromSecretName`, it will return the `secretName`.
2288
+
2289
+ ---
2290
+
2291
+ ##### `secretName`<sup>Required</sup> <a name="secretName" id="@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.property.secretName"></a>
2292
+
2293
+ ```typescript
2294
+ public readonly secretName: string;
2295
+ ```
2296
+
2297
+ - *Type:* string
2298
+
2299
+ The name of the secret.
2300
+
2301
+ For "owned" secrets, this will be the full resource name (secret name + suffix), unless the
2302
+ '@aws-cdk/aws-secretsmanager:parseOwnedSecretName' feature flag is set.
2303
+
2304
+ ---
2305
+
2306
+ ##### `secretValue`<sup>Required</sup> <a name="secretValue" id="@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.property.secretValue"></a>
2307
+
2308
+ ```typescript
2309
+ public readonly secretValue: SecretValue;
2310
+ ```
2311
+
2312
+ - *Type:* aws-cdk-lib.SecretValue
2313
+
2314
+ Retrieve the value of the stored secret as a `SecretValue`.
2315
+
2316
+ ---
2317
+
2318
+ ##### `stack`<sup>Required</sup> <a name="stack" id="@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.property.stack"></a>
2319
+
2320
+ ```typescript
2321
+ public readonly stack: Stack;
2322
+ ```
2323
+
2324
+ - *Type:* aws-cdk-lib.Stack
2325
+
2326
+ The stack in which this resource is defined.
2327
+
2328
+ ---
2329
+
2330
+ ##### `encryptionKey`<sup>Optional</sup> <a name="encryptionKey" id="@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.property.encryptionKey"></a>
2331
+
2332
+ ```typescript
2333
+ public readonly encryptionKey: IKey;
2334
+ ```
2335
+
2336
+ - *Type:* aws-cdk-lib.aws_kms.IKey
2337
+
2338
+ The customer-managed encryption key that is used to encrypt this secret, if any.
2339
+
2340
+ When not specified, the default
2341
+ KMS key for the account and region is being used.
2342
+
2343
+ ---
2344
+
2345
+ ##### `secretFullArn`<sup>Optional</sup> <a name="secretFullArn" id="@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret.property.secretFullArn"></a>
2346
+
2347
+ ```typescript
2348
+ public readonly secretFullArn: string;
2349
+ ```
2350
+
2351
+ - *Type:* string
2352
+
2353
+ The full ARN of the secret in AWS Secrets Manager, which is the ARN including the Secrets Manager-supplied 6-character suffix.
2354
+
2355
+ This is equal to `secretArn` in most cases, but is undefined when a full ARN is not available (e.g., secrets imported by name).
2118
2356
 
2119
2357
  ---
2120
2358
 
package/docs/changelog.md CHANGED
@@ -2,6 +2,13 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [commit-and-tag-version](https://github.com/absolute-version/commit-and-tag-version) for commit guidelines.
4
4
 
5
+ ## [6.12.2](https://bitbucket.collaboration-man.com/projects/RIODEV/repos/cdk-v2-constructs/compare/commits?targetBranch=refs%2Ftags%2Fv6.12.1&sourceBranch=refs%2Ftags%2Fv6.12.2) (2024-11-04)
6
+
7
+
8
+ ### Bug Fixes
9
+
10
+ * dependencies updated by renovate ([533396a](https://bitbucket.collaboration-man.com/projects/RIODEV/repos/cdk-v2-constructs/commits/533396aa1fcc89f0a46099f90c20b2957b266ee4))
11
+
5
12
  ## [6.12.1](https://bitbucket.collaboration-man.com/projects/RIODEV/repos/cdk-v2-constructs/compare/commits?targetBranch=refs%2Ftags%2Fv6.12.0&sourceBranch=refs%2Ftags%2Fv6.12.1) (2024-10-29)
6
13
 
7
14
  ## [6.12.0](https://bitbucket.collaboration-man.com/projects/RIODEV/repos/cdk-v2-constructs/compare/commits?targetBranch=refs%2Ftags%2Fv6.12.0-beta.0&sourceBranch=refs%2Ftags%2Fv6.12.0) (2024-10-22)
@@ -25,10 +25,9 @@ const datadog_shared_secrets_1 = require("./datadog-shared-secrets");
25
25
  class DatadogLambdaInstrumentation extends constructs_1.Construct {
26
26
  constructor(scope, id, props) {
27
27
  super(scope, id);
28
- const resolvedDatadogApiKey = datadog_shared_secrets_1.DatadogSharedSecret.apiKeySecret(this, 'DatadogApiKeySecret');
29
- this.datadogSecret = resolvedDatadogApiKey.secret;
28
+ this.datadogSecret = datadog_shared_secrets_1.DatadogSharedSecret.apiKeySecret(this, 'DatadogApiKeySecret');
30
29
  const resolvedDatadogSecret = datadog_shared_secrets_1.DatadogSharedSecret.credentialsSecret(this, 'DatadogCredentialsSecret');
31
- this.site = resolvedDatadogSecret.secret.secretValueFromJson('Site').unsafeUnwrap();
30
+ this.site = resolvedDatadogSecret.secretValueFromJson('Site').unsafeUnwrap();
32
31
  const finalProps = {
33
32
  env: 'prod',
34
33
  apiKeySecretArn: this.datadogSecret.secretArn,
@@ -74,4 +73,4 @@ const getSourceCodeIntegrationDefault = (node) => {
74
73
  const isDisabled = value === 'false' || value === false;
75
74
  return !isDisabled;
76
75
  };
77
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWRvZy1sYW1iZGEtaW5zdHJ1bWVudGF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2RhdGFkb2d2Mi9kYXRhZG9nLWxhbWJkYS1pbnN0cnVtZW50YXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFFQSwyQ0FBNkM7QUFDN0MsNkRBQTZEO0FBQzdELGdEQUFnRDtBQUNoRCxxRUFBK0Q7QUFvRC9EOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBQ0gsTUFBYSw0QkFBNkIsU0FBUSxzQkFBUztJQUt6RCxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQXdDO1FBQ2hGLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFakIsTUFBTSxxQkFBcUIsR0FBRyw0Q0FBbUIsQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLHFCQUFxQixDQUFDLENBQUM7UUFDNUYsSUFBSSxDQUFDLGFBQWEsR0FBRyxxQkFBcUIsQ0FBQyxNQUFNLENBQUM7UUFFbEQsTUFBTSxxQkFBcUIsR0FBRyw0Q0FBbUIsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsMEJBQTBCLENBQUMsQ0FBQztRQUN0RyxJQUFJLENBQUMsSUFBSSxHQUFHLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUVwRixNQUFNLFVBQVUsR0FBRztZQUNqQixHQUFHLEVBQUUsTUFBTTtZQUNYLGVBQWUsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVM7WUFDN0MsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ2YsaUJBQWlCLEVBQUUsSUFBSTtZQUN2QixnQkFBZ0IsRUFBRSxJQUFJO1lBQ3RCLG9CQUFvQixFQUFFLEtBQUs7WUFDM0Isc0JBQXNCLEVBQUUsS0FBSztZQUM3QixnQkFBZ0IsRUFBRSxLQUFLO1lBQ3ZCLHFCQUFxQixFQUFFLEtBQUs7WUFDNUIsZUFBZSxFQUFFLEtBQUs7WUFDdEIscUJBQXFCLEVBQUUsK0JBQStCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztZQUNqRSxHQUFHLEtBQUs7U0FDVCxDQUFDO1FBRUYsRUFBRSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUM3QixFQUFFLENBQUMsdUJBQXVCLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFdkMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLEVBQUUsQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLFNBQVMsRUFBRSxVQUFVLENBQUMsQ0FBQztRQUM1RCxJQUFJLENBQUMsc0JBQXNCLEdBQUcsS0FBSyxDQUFDLHFCQUFxQixJQUFJLEtBQUssQ0FBQztJQUNyRSxDQUFDO0lBRUQsa0JBQWtCLENBQUMsZUFBb0MsRUFBRSxTQUFxQjtRQUM1RSxLQUFLLE1BQU0sY0FBYyxJQUFJLGVBQWUsRUFBRSxDQUFDO1lBQzdDLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQzdDLGNBQWMsQ0FBQyxjQUFjLENBQUMscUJBQXFCLEVBQUUsR0FBRyxJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQyxDQUFDO1FBQ3pGLENBQUM7UUFDRCxJQUFJLENBQUMsUUFBUSxDQUFDLGtCQUFrQixDQUFDLGVBQWUsRUFBRSxTQUFTLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBQ0Qsb0JBQW9CLENBQUMsZUFBb0MsRUFBRSxZQUFxQixFQUFFLFVBQW1CO1FBQ25HLElBQUksQ0FBQyxRQUFRLENBQUMsb0JBQW9CLENBQUMsZUFBZSxFQUFFLFlBQVksRUFBRSxVQUFVLENBQUMsQ0FBQztJQUNoRixDQUFDO0lBQ0QsZ0NBQWdDLENBQUMsU0FBMkI7UUFDMUQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxnQ0FBZ0MsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUM1RCxDQUFDOztBQWhESCxvRUFpREM7OztBQUVEOzs7R0FHRztBQUNILE1BQU0sK0JBQStCLEdBQUcsQ0FBQyxJQUFVLEVBQVcsRUFBRTtJQUM5RCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLDBEQUEwRCxDQUFDLENBQUM7SUFFN0YsTUFBTSxVQUFVLEdBQUcsS0FBSyxLQUFLLE9BQU8sSUFBSSxLQUFLLEtBQUssS0FBSyxDQUFDO0lBRXhELE9BQU8sQ0FBQyxVQUFVLENBQUM7QUFDckIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgbG9ncyBmcm9tICdhd3MtY2RrLWxpYi9hd3MtbG9ncyc7XG5pbXBvcnQgKiBhcyBzZWNyZXRzIGZyb20gJ2F3cy1jZGstbGliL2F3cy1zZWNyZXRzbWFuYWdlcic7XG5pbXBvcnQgeyBDb25zdHJ1Y3QsIE5vZGUgfSBmcm9tICdjb25zdHJ1Y3RzJztcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBpbXBvcnQvbm8tZXh0cmFuZW91cy1kZXBlbmRlbmNpZXNcbmltcG9ydCAqIGFzIGRkIGZyb20gJ2RhdGFkb2ctY2RrLWNvbnN0cnVjdHMtdjInO1xuaW1wb3J0IHsgRGF0YWRvZ1NoYXJlZFNlY3JldCB9IGZyb20gJy4vZGF0YWRvZy1zaGFyZWQtc2VjcmV0cyc7XG5cbi8qKlxuICogUHJvcHMgZm9yIHRoZSBEYXRhZG9nTGFtYmRhSW5zdHJ1bWVudGF0aW9uIGNvbnN0cnVjdC5cbiAqIENvcGllZCBvdmVyIGZyb20gb3JpZ2luYWwgRGF0YWRvZyBjb25zdHJ1Y3QuXG4gKiBUaGlzIGludGVyZmFjZSBpcyBpbnRlbnRpb25hbGx5IG5vdCBleHRlbmRpbmcgdGhlIG9yaWdpbmFsIERhdGFkb2dQcm9wcywgc28gdGhhdCB0aGUgZGVwZW5kZW5jeSBuZWVkcyB0byBiZSBidW5kbGVkIGFzIHdlbGwuXG4gKlxuICogQHNlZSBkZC5EYXRhZG9nUHJvcHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEYXRhZG9nTGFtYmRhSW5zdHJ1bWVudGF0aW9uUHJvcHMge1xuICByZWFkb25seSBzZXJ2aWNlOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gZW5hYmxlIGVuaGFuY2VkIG1ldHJpY3MgZm9yIHRoZSBMYW1iZGEgZnVuY3Rpb25zLlxuICAgKlxuICAgKiBAZGVmYXVsdFZhbHVlIGZhbHNlXG4gICovXG4gIHJlYWRvbmx5IGVuYWJsZUVuaGFuY2VkTWV0cmljcz86IGJvb2xlYW47XG4gIHJlYWRvbmx5IG5vZGVMYXllclZlcnNpb24/OiBudW1iZXI7XG4gIHJlYWRvbmx5IGV4dGVuc2lvbkxheWVyVmVyc2lvbj86IG51bWJlcjtcbiAgcmVhZG9ubHkgYWRkTGF5ZXJzPzogYm9vbGVhbjtcbiAgcmVhZG9ubHkgZm9yd2FyZGVyQXJuPzogc3RyaW5nO1xuICByZWFkb25seSBmbHVzaE1ldHJpY3NUb0xvZ3M/OiBib29sZWFuO1xuICByZWFkb25seSBzaXRlPzogc3RyaW5nO1xuICByZWFkb25seSBhcGlLZXk/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGFwaUtleVNlY3JldEFybj86IHN0cmluZztcbiAgcmVhZG9ubHkgYXBpS2V5U2VjcmV0Pzogc2VjcmV0cy5JU2VjcmV0O1xuICByZWFkb25seSBhcGlLbXNLZXk/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGVuYWJsZURhdGFkb2dUcmFjaW5nPzogYm9vbGVhbjtcbiAgcmVhZG9ubHkgZW5hYmxlRGF0YWRvZ0FTTT86IGJvb2xlYW47XG4gIHJlYWRvbmx5IGVuYWJsZU1lcmdlWHJheVRyYWNlcz86IGJvb2xlYW47XG4gIHJlYWRvbmx5IGluamVjdExvZ0NvbnRleHQ/OiBib29sZWFuO1xuICByZWFkb25seSBsb2dMZXZlbD86IHN0cmluZztcbiAgcmVhZG9ubHkgZW5hYmxlRGF0YWRvZ0xvZ3M/OiBib29sZWFuO1xuICByZWFkb25seSBjYXB0dXJlTGFtYmRhUGF5bG9hZD86IGJvb2xlYW47XG4gIHJlYWRvbmx5IGVudj86IHN0cmluZztcbiAgcmVhZG9ubHkgdmVyc2lvbj86IHN0cmluZztcbiAgcmVhZG9ubHkgdGFncz86IHN0cmluZztcbiAgcmVhZG9ubHkgY3JlYXRlRm9yd2FyZGVyUGVybWlzc2lvbnM/OiBib29sZWFuO1xuICByZWFkb25seSBzb3VyY2VDb2RlSW50ZWdyYXRpb24/OiBib29sZWFuO1xuICByZWFkb25seSBlbmFibGVDb2xkU3RhcnRUcmFjaW5nPzogYm9vbGVhbjtcbiAgcmVhZG9ubHkgbWluQ29sZFN0YXJ0VHJhY2VEdXJhdGlvbj86IG51bWJlcjtcbiAgcmVhZG9ubHkgY29sZFN0YXJ0VHJhY2VTa2lwTGlicz86IHN0cmluZztcbiAgcmVhZG9ubHkgZW5hYmxlUHJvZmlsaW5nPzogYm9vbGVhbjtcbiAgcmVhZG9ubHkgZW5jb2RlQXV0aG9yaXplckNvbnRleHQ/OiBib29sZWFuO1xuICByZWFkb25seSBkZWNvZGVBdXRob3JpemVyQ29udGV4dD86IGJvb2xlYW47XG4gIHJlYWRvbmx5IGFwbUZsdXNoRGVhZGxpbmU/OiBzdHJpbmcgfCBudW1iZXI7XG4gIHJlYWRvbmx5IHJlZGlyZWN0SGFuZGxlcj86IGJvb2xlYW47XG4gIHJlYWRvbmx5IGdyYW50U2VjcmV0UmVhZEFjY2Vzcz86IGJvb2xlYW47XG4gIHJlYWRvbmx5IHVzZUxheWVyc0Zyb21BY2NvdW50Pzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFdyYXBwZXIgY29uc3RydWN0IGZvciBEYXRhZG9nJ3MgTGFtYmRhIGluc3RydW1lbnRhdGlvbi5cbiAqIFRoaXMgY29uc3RydWN0IHdpbGwgY3JlYXRlIGEgRGF0YWRvZyBjb25zdHJ1Y3Qgd2l0aCB0aGUgcHJvdmlkZWQgcHJvcHMgYW5kIGFkZCB0aGUgTGFtYmRhIGZ1bmN0aW9ucyB0byBpdC5cbiAqIFBlciBkZWZhdWx0LCBpdCB3aWxsIGRpc2FibGUgYWxsIGFkZGl0aW9uYWwgZmVhdHVyZXMsIHRoYXQgY2F1c2UgRGF0YWRvZyBjaGFyZ2luZyBmb3IgU2VydmVybGVzcyBGdW5jdGlvbnMgZmVhdHVyZXMuXG4gKiBTbyBqdXN0IGNoYW5nZSBpdCwgaWYgeW91IG5lZWQgdGhlIGFkdmFuY2VkIGZlYXR1cmVzLlxuICpcbiAqIEFkZGl0aW9uYWxseSwgc29tZSBkZWZhdWx0cyBmcm9tIHRoZSBkYXRhZG9nLWludGVncmF0aW9uIGFjY291bnQgbW9kdWxlIGFyZSBhcHBsaWVkOlxuICogLSB0aGUgc2VjcmV0IGZvciB0aGUgQVBJIGtleSBpcyByZWFkIGZyb20gdGhlIHNlY3JldCBtYW5hZ2VyIGAvcmlvL2NvbmZpZy9kYXRhZG9nLWludGVncmF0aW9uL2FwaS1rZXlgXG4gKiAtIHRoZSBzaXRlIGlzIHJlYWQgZnJvbSB0aGUgcGFyYW1ldGVyIHN0b3JlIGAvcmlvL2NvbmZpZy9kYXRhZG9nLWludGVncmF0aW9uL3NpdGVgXG4gKlxuICogVG8gdXNlIGl0LCBpbnN0YWxsIERhdGFkb2cgQ0RLIENvbnN0cnVjdHMgcGFja2FnZTpcbiAqIGBgYGJhc2hcbiAqIG5wbSBpIC1EIGRhdGFkb2ctY2RrLWNvbnN0cnVjdHMtdjJcbiAqIGBgYFxuICovXG5leHBvcnQgY2xhc3MgRGF0YWRvZ0xhbWJkYUluc3RydW1lbnRhdGlvbiBleHRlbmRzIENvbnN0cnVjdCB7XG4gIHByaXZhdGUgZGVsZWdhdGU6IGRkLkRhdGFkb2c7XG4gIHByaXZhdGUgZGF0YWRvZ1NlY3JldDogc2VjcmV0cy5JU2VjcmV0O1xuICBwcml2YXRlIHNpdGU6IHN0cmluZztcbiAgcHJpdmF0ZSByZWFkb25seSBlbmhhbmNlZE1ldHJpY3NFbmFibGVkOiBib29sZWFuO1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogRGF0YWRvZ0xhbWJkYUluc3RydW1lbnRhdGlvblByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIGNvbnN0IHJlc29sdmVkRGF0YWRvZ0FwaUtleSA9IERhdGFkb2dTaGFyZWRTZWNyZXQuYXBpS2V5U2VjcmV0KHRoaXMsICdEYXRhZG9nQXBpS2V5U2VjcmV0Jyk7XG4gICAgdGhpcy5kYXRhZG9nU2VjcmV0ID0gcmVzb2x2ZWREYXRhZG9nQXBpS2V5LnNlY3JldDtcblxuICAgIGNvbnN0IHJlc29sdmVkRGF0YWRvZ1NlY3JldCA9IERhdGFkb2dTaGFyZWRTZWNyZXQuY3JlZGVudGlhbHNTZWNyZXQodGhpcywgJ0RhdGFkb2dDcmVkZW50aWFsc1NlY3JldCcpO1xuICAgIHRoaXMuc2l0ZSA9IHJlc29sdmVkRGF0YWRvZ1NlY3JldC5zZWNyZXQuc2VjcmV0VmFsdWVGcm9tSnNvbignU2l0ZScpLnVuc2FmZVVud3JhcCgpO1xuXG4gICAgY29uc3QgZmluYWxQcm9wcyA9IHtcbiAgICAgIGVudjogJ3Byb2QnLFxuICAgICAgYXBpS2V5U2VjcmV0QXJuOiB0aGlzLmRhdGFkb2dTZWNyZXQuc2VjcmV0QXJuLFxuICAgICAgc2l0ZTogdGhpcy5zaXRlLFxuICAgICAgZW5hYmxlRGF0YWRvZ0xvZ3M6IHRydWUsXG4gICAgICBpbmplY3RMb2dDb250ZXh0OiB0cnVlLFxuICAgICAgZW5hYmxlRGF0YWRvZ1RyYWNpbmc6IGZhbHNlLFxuICAgICAgZW5hYmxlQ29sZFN0YXJ0VHJhY2luZzogZmFsc2UsXG4gICAgICBlbmFibGVEYXRhZG9nQVNNOiBmYWxzZSxcbiAgICAgIGVuYWJsZU1lcmdlWHJheVRyYWNlczogZmFsc2UsXG4gICAgICBlbmFibGVQcm9maWxpbmc6IGZhbHNlLFxuICAgICAgc291cmNlQ29kZUludGVncmF0aW9uOiBnZXRTb3VyY2VDb2RlSW50ZWdyYXRpb25EZWZhdWx0KHRoaXMubm9kZSksXG4gICAgICAuLi5wcm9wcyxcbiAgICB9O1xuXG4gICAgZGQudmFsaWRhdGVQcm9wcyhmaW5hbFByb3BzKTtcbiAgICBkZC5jaGVja0Zvck11bHRpcGxlQXBpS2V5cyhmaW5hbFByb3BzKTtcblxuICAgIHRoaXMuZGVsZWdhdGUgPSBuZXcgZGQuRGF0YWRvZyh0aGlzLCAnRGF0YWRvZycsIGZpbmFsUHJvcHMpO1xuICAgIHRoaXMuZW5oYW5jZWRNZXRyaWNzRW5hYmxlZCA9IHByb3BzLmVuYWJsZUVuaGFuY2VkTWV0cmljcyA/PyBmYWxzZTtcbiAgfVxuXG4gIGFkZExhbWJkYUZ1bmN0aW9ucyhsYW1iZGFGdW5jdGlvbnM6IGRkLkxhbWJkYUZ1bmN0aW9uW10sIGNvbnN0cnVjdD86IENvbnN0cnVjdCk6IHZvaWQge1xuICAgIGZvciAoY29uc3QgbGFtYmRhRnVuY3Rpb24gb2YgbGFtYmRhRnVuY3Rpb25zKSB7XG4gICAgICB0aGlzLmRhdGFkb2dTZWNyZXQuZ3JhbnRSZWFkKGxhbWJkYUZ1bmN0aW9uKTtcbiAgICAgIGxhbWJkYUZ1bmN0aW9uLmFkZEVudmlyb25tZW50KCdERF9FTkhBTkNFRF9NRVRSSUNTJywgYCR7dGhpcy5lbmhhbmNlZE1ldHJpY3NFbmFibGVkfWApO1xuICAgIH1cbiAgICB0aGlzLmRlbGVnYXRlLmFkZExhbWJkYUZ1bmN0aW9ucyhsYW1iZGFGdW5jdGlvbnMsIGNvbnN0cnVjdCk7XG4gIH1cbiAgYWRkR2l0Q29tbWl0TWV0YWRhdGEobGFtYmRhRnVuY3Rpb25zOiBkZC5MYW1iZGFGdW5jdGlvbltdLCBnaXRDb21taXRTaGE/OiBzdHJpbmcsIGdpdFJlcG9Vcmw/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLmRlbGVnYXRlLmFkZEdpdENvbW1pdE1ldGFkYXRhKGxhbWJkYUZ1bmN0aW9ucywgZ2l0Q29tbWl0U2hhLCBnaXRSZXBvVXJsKTtcbiAgfVxuICBhZGRGb3J3YXJkZXJUb05vbkxhbWJkYUxvZ0dyb3Vwcyhsb2dHcm91cHM6IGxvZ3MuSUxvZ0dyb3VwW10pOiB2b2lkIHtcbiAgICB0aGlzLmRlbGVnYXRlLmFkZEZvcndhcmRlclRvTm9uTGFtYmRhTG9nR3JvdXBzKGxvZ0dyb3Vwcyk7XG4gIH1cbn1cblxuLyoqXG4gKiBAcGFyYW0gbm9kZSAtIFRoZSBub2RlIHRvIGNoZWNrIGZvciB0aGUgY29udGV4dCB2YWx1ZVxuICogQHJldHVybnMgdHJ1ZSBhcyBhIGRlZmF1bHQgaWYgbm90IGRpc2FibGVkIHZpYSBjb250ZXh0XG4gKi9cbmNvbnN0IGdldFNvdXJjZUNvZGVJbnRlZ3JhdGlvbkRlZmF1bHQgPSAobm9kZTogTm9kZSk6IGJvb2xlYW4gPT4ge1xuICBjb25zdCB2YWx1ZSA9IG5vZGUudHJ5R2V0Q29udGV4dCgnQHJpby1jbG91ZC9jZGstdjItY29uc3RydWN0czplbmFibGVTb3VyY2VDb2RlSW50ZWdyYXRpb24nKTtcblxuICBjb25zdCBpc0Rpc2FibGVkID0gdmFsdWUgPT09ICdmYWxzZScgfHwgdmFsdWUgPT09IGZhbHNlO1xuXG4gIHJldHVybiAhaXNEaXNhYmxlZDtcbn07XG4iXX0=
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWRvZy1sYW1iZGEtaW5zdHJ1bWVudGF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2RhdGFkb2d2Mi9kYXRhZG9nLWxhbWJkYS1pbnN0cnVtZW50YXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFFQSwyQ0FBNkM7QUFDN0MsNkRBQTZEO0FBQzdELGdEQUFnRDtBQUNoRCxxRUFBK0Q7QUFvRC9EOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBQ0gsTUFBYSw0QkFBNkIsU0FBUSxzQkFBUztJQUt6RCxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQXdDO1FBQ2hGLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFakIsSUFBSSxDQUFDLGFBQWEsR0FBRyw0Q0FBbUIsQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLHFCQUFxQixDQUFDLENBQUM7UUFFbkYsTUFBTSxxQkFBcUIsR0FBRyw0Q0FBbUIsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsMEJBQTBCLENBQUMsQ0FBQztRQUN0RyxJQUFJLENBQUMsSUFBSSxHQUFHLHFCQUFxQixDQUFDLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBRTdFLE1BQU0sVUFBVSxHQUFHO1lBQ2pCLEdBQUcsRUFBRSxNQUFNO1lBQ1gsZUFBZSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUztZQUM3QyxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7WUFDZixpQkFBaUIsRUFBRSxJQUFJO1lBQ3ZCLGdCQUFnQixFQUFFLElBQUk7WUFDdEIsb0JBQW9CLEVBQUUsS0FBSztZQUMzQixzQkFBc0IsRUFBRSxLQUFLO1lBQzdCLGdCQUFnQixFQUFFLEtBQUs7WUFDdkIscUJBQXFCLEVBQUUsS0FBSztZQUM1QixlQUFlLEVBQUUsS0FBSztZQUN0QixxQkFBcUIsRUFBRSwrQkFBK0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQ2pFLEdBQUcsS0FBSztTQUNULENBQUM7UUFFRixFQUFFLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzdCLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUV2QyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsU0FBUyxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBQzVELElBQUksQ0FBQyxzQkFBc0IsR0FBRyxLQUFLLENBQUMscUJBQXFCLElBQUksS0FBSyxDQUFDO0lBQ3JFLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxlQUFvQyxFQUFFLFNBQXFCO1FBQzVFLEtBQUssTUFBTSxjQUFjLElBQUksZUFBZSxFQUFFLENBQUM7WUFDN0MsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLENBQUM7WUFDN0MsY0FBYyxDQUFDLGNBQWMsQ0FBQyxxQkFBcUIsRUFBRSxHQUFHLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDLENBQUM7UUFDekYsQ0FBQztRQUNELElBQUksQ0FBQyxRQUFRLENBQUMsa0JBQWtCLENBQUMsZUFBZSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFDRCxvQkFBb0IsQ0FBQyxlQUFvQyxFQUFFLFlBQXFCLEVBQUUsVUFBbUI7UUFDbkcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxvQkFBb0IsQ0FBQyxlQUFlLEVBQUUsWUFBWSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQ2hGLENBQUM7SUFDRCxnQ0FBZ0MsQ0FBQyxTQUEyQjtRQUMxRCxJQUFJLENBQUMsUUFBUSxDQUFDLGdDQUFnQyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzVELENBQUM7O0FBL0NILG9FQWdEQzs7O0FBRUQ7OztHQUdHO0FBQ0gsTUFBTSwrQkFBK0IsR0FBRyxDQUFDLElBQVUsRUFBVyxFQUFFO0lBQzlELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsMERBQTBELENBQUMsQ0FBQztJQUU3RixNQUFNLFVBQVUsR0FBRyxLQUFLLEtBQUssT0FBTyxJQUFJLEtBQUssS0FBSyxLQUFLLENBQUM7SUFFeEQsT0FBTyxDQUFDLFVBQVUsQ0FBQztBQUNyQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBsb2dzIGZyb20gJ2F3cy1jZGstbGliL2F3cy1sb2dzJztcbmltcG9ydCAqIGFzIHNlY3JldHMgZnJvbSAnYXdzLWNkay1saWIvYXdzLXNlY3JldHNtYW5hZ2VyJztcbmltcG9ydCB7IENvbnN0cnVjdCwgTm9kZSB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGltcG9ydC9uby1leHRyYW5lb3VzLWRlcGVuZGVuY2llc1xuaW1wb3J0ICogYXMgZGQgZnJvbSAnZGF0YWRvZy1jZGstY29uc3RydWN0cy12Mic7XG5pbXBvcnQgeyBEYXRhZG9nU2hhcmVkU2VjcmV0IH0gZnJvbSAnLi9kYXRhZG9nLXNoYXJlZC1zZWNyZXRzJztcblxuLyoqXG4gKiBQcm9wcyBmb3IgdGhlIERhdGFkb2dMYW1iZGFJbnN0cnVtZW50YXRpb24gY29uc3RydWN0LlxuICogQ29waWVkIG92ZXIgZnJvbSBvcmlnaW5hbCBEYXRhZG9nIGNvbnN0cnVjdC5cbiAqIFRoaXMgaW50ZXJmYWNlIGlzIGludGVudGlvbmFsbHkgbm90IGV4dGVuZGluZyB0aGUgb3JpZ2luYWwgRGF0YWRvZ1Byb3BzLCBzbyB0aGF0IHRoZSBkZXBlbmRlbmN5IG5lZWRzIHRvIGJlIGJ1bmRsZWQgYXMgd2VsbC5cbiAqXG4gKiBAc2VlIGRkLkRhdGFkb2dQcm9wc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIERhdGFkb2dMYW1iZGFJbnN0cnVtZW50YXRpb25Qcm9wcyB7XG4gIHJlYWRvbmx5IHNlcnZpY2U6IHN0cmluZztcblxuICAvKipcbiAgICogV2hldGhlciB0byBlbmFibGUgZW5oYW5jZWQgbWV0cmljcyBmb3IgdGhlIExhbWJkYSBmdW5jdGlvbnMuXG4gICAqXG4gICAqIEBkZWZhdWx0VmFsdWUgZmFsc2VcbiAgKi9cbiAgcmVhZG9ubHkgZW5hYmxlRW5oYW5jZWRNZXRyaWNzPzogYm9vbGVhbjtcbiAgcmVhZG9ubHkgbm9kZUxheWVyVmVyc2lvbj86IG51bWJlcjtcbiAgcmVhZG9ubHkgZXh0ZW5zaW9uTGF5ZXJWZXJzaW9uPzogbnVtYmVyO1xuICByZWFkb25seSBhZGRMYXllcnM/OiBib29sZWFuO1xuICByZWFkb25seSBmb3J3YXJkZXJBcm4/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGZsdXNoTWV0cmljc1RvTG9ncz86IGJvb2xlYW47XG4gIHJlYWRvbmx5IHNpdGU/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGFwaUtleT86IHN0cmluZztcbiAgcmVhZG9ubHkgYXBpS2V5U2VjcmV0QXJuPzogc3RyaW5nO1xuICByZWFkb25seSBhcGlLZXlTZWNyZXQ/OiBzZWNyZXRzLklTZWNyZXQ7XG4gIHJlYWRvbmx5IGFwaUttc0tleT86IHN0cmluZztcbiAgcmVhZG9ubHkgZW5hYmxlRGF0YWRvZ1RyYWNpbmc/OiBib29sZWFuO1xuICByZWFkb25seSBlbmFibGVEYXRhZG9nQVNNPzogYm9vbGVhbjtcbiAgcmVhZG9ubHkgZW5hYmxlTWVyZ2VYcmF5VHJhY2VzPzogYm9vbGVhbjtcbiAgcmVhZG9ubHkgaW5qZWN0TG9nQ29udGV4dD86IGJvb2xlYW47XG4gIHJlYWRvbmx5IGxvZ0xldmVsPzogc3RyaW5nO1xuICByZWFkb25seSBlbmFibGVEYXRhZG9nTG9ncz86IGJvb2xlYW47XG4gIHJlYWRvbmx5IGNhcHR1cmVMYW1iZGFQYXlsb2FkPzogYm9vbGVhbjtcbiAgcmVhZG9ubHkgZW52Pzogc3RyaW5nO1xuICByZWFkb25seSB2ZXJzaW9uPzogc3RyaW5nO1xuICByZWFkb25seSB0YWdzPzogc3RyaW5nO1xuICByZWFkb25seSBjcmVhdGVGb3J3YXJkZXJQZXJtaXNzaW9ucz86IGJvb2xlYW47XG4gIHJlYWRvbmx5IHNvdXJjZUNvZGVJbnRlZ3JhdGlvbj86IGJvb2xlYW47XG4gIHJlYWRvbmx5IGVuYWJsZUNvbGRTdGFydFRyYWNpbmc/OiBib29sZWFuO1xuICByZWFkb25seSBtaW5Db2xkU3RhcnRUcmFjZUR1cmF0aW9uPzogbnVtYmVyO1xuICByZWFkb25seSBjb2xkU3RhcnRUcmFjZVNraXBMaWJzPzogc3RyaW5nO1xuICByZWFkb25seSBlbmFibGVQcm9maWxpbmc/OiBib29sZWFuO1xuICByZWFkb25seSBlbmNvZGVBdXRob3JpemVyQ29udGV4dD86IGJvb2xlYW47XG4gIHJlYWRvbmx5IGRlY29kZUF1dGhvcml6ZXJDb250ZXh0PzogYm9vbGVhbjtcbiAgcmVhZG9ubHkgYXBtRmx1c2hEZWFkbGluZT86IHN0cmluZyB8IG51bWJlcjtcbiAgcmVhZG9ubHkgcmVkaXJlY3RIYW5kbGVyPzogYm9vbGVhbjtcbiAgcmVhZG9ubHkgZ3JhbnRTZWNyZXRSZWFkQWNjZXNzPzogYm9vbGVhbjtcbiAgcmVhZG9ubHkgdXNlTGF5ZXJzRnJvbUFjY291bnQ/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogV3JhcHBlciBjb25zdHJ1Y3QgZm9yIERhdGFkb2cncyBMYW1iZGEgaW5zdHJ1bWVudGF0aW9uLlxuICogVGhpcyBjb25zdHJ1Y3Qgd2lsbCBjcmVhdGUgYSBEYXRhZG9nIGNvbnN0cnVjdCB3aXRoIHRoZSBwcm92aWRlZCBwcm9wcyBhbmQgYWRkIHRoZSBMYW1iZGEgZnVuY3Rpb25zIHRvIGl0LlxuICogUGVyIGRlZmF1bHQsIGl0IHdpbGwgZGlzYWJsZSBhbGwgYWRkaXRpb25hbCBmZWF0dXJlcywgdGhhdCBjYXVzZSBEYXRhZG9nIGNoYXJnaW5nIGZvciBTZXJ2ZXJsZXNzIEZ1bmN0aW9ucyBmZWF0dXJlcy5cbiAqIFNvIGp1c3QgY2hhbmdlIGl0LCBpZiB5b3UgbmVlZCB0aGUgYWR2YW5jZWQgZmVhdHVyZXMuXG4gKlxuICogQWRkaXRpb25hbGx5LCBzb21lIGRlZmF1bHRzIGZyb20gdGhlIGRhdGFkb2ctaW50ZWdyYXRpb24gYWNjb3VudCBtb2R1bGUgYXJlIGFwcGxpZWQ6XG4gKiAtIHRoZSBzZWNyZXQgZm9yIHRoZSBBUEkga2V5IGlzIHJlYWQgZnJvbSB0aGUgc2VjcmV0IG1hbmFnZXIgYC9yaW8vY29uZmlnL2RhdGFkb2ctaW50ZWdyYXRpb24vYXBpLWtleWBcbiAqIC0gdGhlIHNpdGUgaXMgcmVhZCBmcm9tIHRoZSBwYXJhbWV0ZXIgc3RvcmUgYC9yaW8vY29uZmlnL2RhdGFkb2ctaW50ZWdyYXRpb24vc2l0ZWBcbiAqXG4gKiBUbyB1c2UgaXQsIGluc3RhbGwgRGF0YWRvZyBDREsgQ29uc3RydWN0cyBwYWNrYWdlOlxuICogYGBgYmFzaFxuICogbnBtIGkgLUQgZGF0YWRvZy1jZGstY29uc3RydWN0cy12MlxuICogYGBgXG4gKi9cbmV4cG9ydCBjbGFzcyBEYXRhZG9nTGFtYmRhSW5zdHJ1bWVudGF0aW9uIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgcHJpdmF0ZSBkZWxlZ2F0ZTogZGQuRGF0YWRvZztcbiAgcHJpdmF0ZSBkYXRhZG9nU2VjcmV0OiBEYXRhZG9nU2hhcmVkU2VjcmV0O1xuICBwcml2YXRlIHNpdGU6IHN0cmluZztcbiAgcHJpdmF0ZSByZWFkb25seSBlbmhhbmNlZE1ldHJpY3NFbmFibGVkOiBib29sZWFuO1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogRGF0YWRvZ0xhbWJkYUluc3RydW1lbnRhdGlvblByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIHRoaXMuZGF0YWRvZ1NlY3JldCA9IERhdGFkb2dTaGFyZWRTZWNyZXQuYXBpS2V5U2VjcmV0KHRoaXMsICdEYXRhZG9nQXBpS2V5U2VjcmV0Jyk7XG5cbiAgICBjb25zdCByZXNvbHZlZERhdGFkb2dTZWNyZXQgPSBEYXRhZG9nU2hhcmVkU2VjcmV0LmNyZWRlbnRpYWxzU2VjcmV0KHRoaXMsICdEYXRhZG9nQ3JlZGVudGlhbHNTZWNyZXQnKTtcbiAgICB0aGlzLnNpdGUgPSByZXNvbHZlZERhdGFkb2dTZWNyZXQuc2VjcmV0VmFsdWVGcm9tSnNvbignU2l0ZScpLnVuc2FmZVVud3JhcCgpO1xuXG4gICAgY29uc3QgZmluYWxQcm9wcyA9IHtcbiAgICAgIGVudjogJ3Byb2QnLFxuICAgICAgYXBpS2V5U2VjcmV0QXJuOiB0aGlzLmRhdGFkb2dTZWNyZXQuc2VjcmV0QXJuLFxuICAgICAgc2l0ZTogdGhpcy5zaXRlLFxuICAgICAgZW5hYmxlRGF0YWRvZ0xvZ3M6IHRydWUsXG4gICAgICBpbmplY3RMb2dDb250ZXh0OiB0cnVlLFxuICAgICAgZW5hYmxlRGF0YWRvZ1RyYWNpbmc6IGZhbHNlLFxuICAgICAgZW5hYmxlQ29sZFN0YXJ0VHJhY2luZzogZmFsc2UsXG4gICAgICBlbmFibGVEYXRhZG9nQVNNOiBmYWxzZSxcbiAgICAgIGVuYWJsZU1lcmdlWHJheVRyYWNlczogZmFsc2UsXG4gICAgICBlbmFibGVQcm9maWxpbmc6IGZhbHNlLFxuICAgICAgc291cmNlQ29kZUludGVncmF0aW9uOiBnZXRTb3VyY2VDb2RlSW50ZWdyYXRpb25EZWZhdWx0KHRoaXMubm9kZSksXG4gICAgICAuLi5wcm9wcyxcbiAgICB9O1xuXG4gICAgZGQudmFsaWRhdGVQcm9wcyhmaW5hbFByb3BzKTtcbiAgICBkZC5jaGVja0Zvck11bHRpcGxlQXBpS2V5cyhmaW5hbFByb3BzKTtcblxuICAgIHRoaXMuZGVsZWdhdGUgPSBuZXcgZGQuRGF0YWRvZyh0aGlzLCAnRGF0YWRvZycsIGZpbmFsUHJvcHMpO1xuICAgIHRoaXMuZW5oYW5jZWRNZXRyaWNzRW5hYmxlZCA9IHByb3BzLmVuYWJsZUVuaGFuY2VkTWV0cmljcyA/PyBmYWxzZTtcbiAgfVxuXG4gIGFkZExhbWJkYUZ1bmN0aW9ucyhsYW1iZGFGdW5jdGlvbnM6IGRkLkxhbWJkYUZ1bmN0aW9uW10sIGNvbnN0cnVjdD86IENvbnN0cnVjdCk6IHZvaWQge1xuICAgIGZvciAoY29uc3QgbGFtYmRhRnVuY3Rpb24gb2YgbGFtYmRhRnVuY3Rpb25zKSB7XG4gICAgICB0aGlzLmRhdGFkb2dTZWNyZXQuZ3JhbnRSZWFkKGxhbWJkYUZ1bmN0aW9uKTtcbiAgICAgIGxhbWJkYUZ1bmN0aW9uLmFkZEVudmlyb25tZW50KCdERF9FTkhBTkNFRF9NRVRSSUNTJywgYCR7dGhpcy5lbmhhbmNlZE1ldHJpY3NFbmFibGVkfWApO1xuICAgIH1cbiAgICB0aGlzLmRlbGVnYXRlLmFkZExhbWJkYUZ1bmN0aW9ucyhsYW1iZGFGdW5jdGlvbnMsIGNvbnN0cnVjdCk7XG4gIH1cbiAgYWRkR2l0Q29tbWl0TWV0YWRhdGEobGFtYmRhRnVuY3Rpb25zOiBkZC5MYW1iZGFGdW5jdGlvbltdLCBnaXRDb21taXRTaGE/OiBzdHJpbmcsIGdpdFJlcG9Vcmw/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLmRlbGVnYXRlLmFkZEdpdENvbW1pdE1ldGFkYXRhKGxhbWJkYUZ1bmN0aW9ucywgZ2l0Q29tbWl0U2hhLCBnaXRSZXBvVXJsKTtcbiAgfVxuICBhZGRGb3J3YXJkZXJUb05vbkxhbWJkYUxvZ0dyb3Vwcyhsb2dHcm91cHM6IGxvZ3MuSUxvZ0dyb3VwW10pOiB2b2lkIHtcbiAgICB0aGlzLmRlbGVnYXRlLmFkZEZvcndhcmRlclRvTm9uTGFtYmRhTG9nR3JvdXBzKGxvZ0dyb3Vwcyk7XG4gIH1cbn1cblxuLyoqXG4gKiBAcGFyYW0gbm9kZSAtIFRoZSBub2RlIHRvIGNoZWNrIGZvciB0aGUgY29udGV4dCB2YWx1ZVxuICogQHJldHVybnMgdHJ1ZSBhcyBhIGRlZmF1bHQgaWYgbm90IGRpc2FibGVkIHZpYSBjb250ZXh0XG4gKi9cbmNvbnN0IGdldFNvdXJjZUNvZGVJbnRlZ3JhdGlvbkRlZmF1bHQgPSAobm9kZTogTm9kZSk6IGJvb2xlYW4gPT4ge1xuICBjb25zdCB2YWx1ZSA9IG5vZGUudHJ5R2V0Q29udGV4dCgnQHJpby1jbG91ZC9jZGstdjItY29uc3RydWN0czplbmFibGVTb3VyY2VDb2RlSW50ZWdyYXRpb24nKTtcblxuICBjb25zdCBpc0Rpc2FibGVkID0gdmFsdWUgPT09ICdmYWxzZScgfHwgdmFsdWUgPT09IGZhbHNlO1xuXG4gIHJldHVybiAhaXNEaXNhYmxlZDtcbn07XG4iXX0=
@@ -1,9 +1,11 @@
1
+ import * as cdk from 'aws-cdk-lib';
2
+ import * as iam from 'aws-cdk-lib/aws-iam';
1
3
  import * as sec from 'aws-cdk-lib/aws-secretsmanager';
2
4
  import * as constructs from 'constructs';
3
5
  /**
4
6
  * A custom resource that resolves the secret ARN based on the organization ID.
5
7
  */
6
- export declare class DatadogSharedSecret extends constructs.Construct {
8
+ export declare class DatadogSharedSecret extends constructs.Construct implements sec.ISecret {
7
9
  /**
8
10
  * This static function resolves to the plain api-key secret, that can be used for the log forwarder or the Lambda instrumentation.
9
11
  */
@@ -13,7 +15,22 @@ export declare class DatadogSharedSecret extends constructs.Construct {
13
15
  */
14
16
  static credentialsSecret(scope: constructs.Construct, id: string): DatadogSharedSecret;
15
17
  private static setupCustomResource;
16
- readonly secret: sec.ISecret;
18
+ private secret;
17
19
  private customResource;
18
20
  private constructor();
21
+ get stack(): cdk.Stack;
22
+ get env(): cdk.ResourceEnvironment;
23
+ get encryptionKey(): cdk.aws_kms.IKey | undefined;
24
+ get secretArn(): string;
25
+ get secretFullArn(): string | undefined;
26
+ get secretName(): string;
27
+ get secretValue(): cdk.SecretValue;
28
+ secretValueFromJson(key: string): cdk.SecretValue;
29
+ grantRead(grantee: iam.IGrantable, versionStages?: string[]): iam.Grant;
30
+ grantWrite(_grantee: iam.IGrantable): iam.Grant;
31
+ addRotationSchedule(_id: string, _options: sec.RotationScheduleOptions): sec.RotationSchedule;
32
+ addToResourcePolicy(_statement: iam.PolicyStatement): iam.AddToResourcePolicyResult;
33
+ denyAccountRootDelete(): void;
34
+ attach(_target: sec.ISecretAttachmentTarget): sec.ISecret;
35
+ applyRemovalPolicy(_policy: cdk.RemovalPolicy): void;
19
36
  }
@@ -79,8 +79,66 @@ class DatadogSharedSecret extends constructs.Construct {
79
79
  });
80
80
  this.secret = sec.Secret.fromSecretCompleteArn(this, 'Resource', secretLocator.getAtt('SecretArn').toString());
81
81
  }
82
+ get stack() {
83
+ return this.secret.stack;
84
+ }
85
+ get env() {
86
+ return this.secret.env;
87
+ }
88
+ get encryptionKey() {
89
+ return undefined;
90
+ }
91
+ get secretArn() {
92
+ return this.secret.secretArn;
93
+ }
94
+ ;
95
+ get secretFullArn() {
96
+ return this.secret.secretFullArn;
97
+ }
98
+ get secretName() {
99
+ return this.secret.secretName;
100
+ }
101
+ get secretValue() {
102
+ return this.secret.secretValue;
103
+ }
104
+ secretValueFromJson(key) {
105
+ return this.secret.secretValueFromJson(key);
106
+ }
107
+ grantRead(grantee, versionStages) {
108
+ const result = grantee.grantPrincipal.addToPrincipalPolicy(new iam.PolicyStatement({
109
+ actions: ['kms:Decrypt'],
110
+ resources: [`arn:aws:kms:eu-west-1:${DEVELOPER_TOOLS_ACCOUNT_ID}:key/*`],
111
+ conditions: {
112
+ 'ForAnyValue:StringLike': {
113
+ 'kms:ResourceAliases': 'alias/datadog-integration-shared-credentials-key',
114
+ },
115
+ },
116
+ }));
117
+ if (!result.statementAdded) {
118
+ cdk.Annotations.of(this).addWarning('Could not add statement to the principal policy.');
119
+ }
120
+ return this.secret.grantRead(grantee, versionStages);
121
+ }
122
+ grantWrite(_grantee) {
123
+ throw new Error('Method not allowed.');
124
+ }
125
+ addRotationSchedule(_id, _options) {
126
+ throw new Error('Method not allowed.');
127
+ }
128
+ addToResourcePolicy(_statement) {
129
+ throw new Error('Method not allowed.');
130
+ }
131
+ denyAccountRootDelete() {
132
+ throw new Error('Method not allowed.');
133
+ }
134
+ attach(_target) {
135
+ throw new Error('Method not allowed.');
136
+ }
137
+ applyRemovalPolicy(_policy) {
138
+ throw new Error('Method not allowed.');
139
+ }
82
140
  }
83
141
  exports.DatadogSharedSecret = DatadogSharedSecret;
84
142
  _a = JSII_RTTI_SYMBOL_1;
85
143
  DatadogSharedSecret[_a] = { fqn: "@rio-cloud/cdk-v2-constructs.datadogv2.DatadogSharedSecret", version: "0.0.0" };
86
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWRvZy1zaGFyZWQtc2VjcmV0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhZG9ndjIvZGF0YWRvZy1zaGFyZWQtc2VjcmV0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDZCQUE2QjtBQUM3QixtQ0FBbUM7QUFFbkMsc0RBQXNEO0FBQ3RELDJDQUEyQztBQUMzQyxpREFBaUQ7QUFDakQsNkNBQTZDO0FBQzdDLHNEQUFzRDtBQUN0RCxtREFBbUQ7QUFDbkQseUNBQXlDO0FBR3pDLE1BQU0sc0JBQXNCLEdBQVcsY0FBYyxDQUFDO0FBQ3RELE1BQU0seUJBQXlCLEdBQVcsY0FBYyxDQUFDO0FBRXpELE1BQU0sMEJBQTBCLEdBQVcsY0FBYyxDQUFDO0FBRTFELE1BQU0sOEJBQThCLEdBQUcsb0NBQW9DLDBCQUEwQixvQ0FBb0MsQ0FBQztBQUMxSSxNQUFNLDJCQUEyQixHQUFHLG9DQUFvQywwQkFBMEIsaUNBQWlDLENBQUM7QUFFcEksTUFBTSxXQUFXLEdBQUcsMEJBQTBCLENBQUM7QUFFL0M7O0dBRUc7QUFDSCxNQUFhLG1CQUFvQixTQUFRLFVBQVUsQ0FBQyxTQUFTO0lBRTNEOztPQUVHO0lBQ0gsTUFBTSxDQUFDLFlBQVksQ0FBQyxLQUEyQixFQUFFLEVBQVU7UUFDekQsT0FBTyxJQUFJLG1CQUFtQixDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsRUFBRSxVQUFVLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDO0lBQzlFLENBQUM7SUFFRDs7T0FFRztJQUNILE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxLQUEyQixFQUFFLEVBQVU7UUFDOUQsT0FBTyxJQUFJLG1CQUFtQixDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsRUFBRSxVQUFVLEVBQUUsb0JBQW9CLEVBQUUsQ0FBQyxDQUFDO0lBQ2xGLENBQUM7SUFFTyxNQUFNLENBQUMsbUJBQW1CLENBQUMsS0FBZ0I7UUFDakQsTUFBTSxtQkFBbUIsR0FBRyxJQUFJLE1BQU0sQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLHlCQUF5QixFQUFFO1lBQ2hGLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxnQ0FBZ0MsQ0FBQyxFQUFFO2dCQUNsRixPQUFPLEVBQUUsQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDO2FBQzVCLENBQUM7WUFDRixPQUFPLEVBQUUsbUJBQW1CO1lBQzVCLE9BQU8sRUFBRSxNQUFNLENBQUMsT0FBTyxDQUFDLFdBQVc7WUFDbkMsWUFBWSxFQUFFLE1BQU0sQ0FBQyxZQUFZLENBQUMsTUFBTTtZQUN4QyxRQUFRLEVBQUUsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxvQ0FBb0MsRUFBRTtnQkFDdkUsU0FBUyxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUTthQUN2QyxDQUFDO1lBQ0YsV0FBVyxFQUFFO2dCQUNYLDhCQUE4QixFQUFFLDhCQUE4QjtnQkFDOUQsMkJBQTJCLEVBQUUsMkJBQTJCO2dCQUN4RCx5QkFBeUIsRUFBRSx5QkFBeUI7Z0JBQ3BELHNCQUFzQixFQUFFLHNCQUFzQjthQUMvQztTQUNGLENBQUMsQ0FBQztRQUVILG1CQUFtQixDQUFDLGVBQWUsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxlQUFlLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxvQ0FBb0MsQ0FBQyxFQUFFLFNBQVMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3BJLG1CQUFtQixDQUFDLGVBQWUsQ0FDakMsSUFBSSxHQUFHLENBQUMsZUFBZSxDQUFDO1lBQ3RCLE9BQU8sRUFBRSxDQUFDLCtCQUErQixDQUFDO1lBQzFDLFNBQVMsRUFBRSxDQUFDLG9DQUFvQywwQkFBMEIsV0FBVyxDQUFDO1NBQ3ZGLENBQUMsQ0FDSCxDQUFDO1FBRUYsT0FBTyxJQUFJLEVBQUUsQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLFdBQVcsRUFBRTtZQUN6QyxjQUFjLEVBQUUsbUJBQW1CO1NBQ3BDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFNRCxZQUFvQixLQUE0QixFQUFFLEVBQVUsRUFBRSxLQUEyQjtRQUN2RixLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO1lBQzFDLElBQUksQ0FBQyxjQUFjLEdBQUcsbUJBQW1CLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdkUsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsY0FBYyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBZ0IsQ0FBQztRQUN6RSxDQUFDO1FBRUQsTUFBTSxhQUFhLEdBQUcsSUFBSSxHQUFHLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxxQkFBcUIsRUFBRTtZQUN4RSxZQUFZLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxZQUFZO1lBQzlDLG9CQUFvQixFQUFFLElBQUk7WUFDMUIsVUFBVSxFQUFFO2dCQUNWLFVBQVUsRUFBRSxLQUFLLENBQUMsVUFBVTthQUM3QjtTQUNGLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFLGFBQWEsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUNqSCxDQUFDOztBQXZFSCxrREF5RUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0ICogYXMgY2RrIGZyb20gJ2F3cy1jZGstbGliJztcblxuLy8gaW1wb3J0ICogYXMgY3IgZnJvbSAnYXdzLWNkay1saWIvY3VzdG9tLXJlc291cmNlcyc7XG5pbXBvcnQgKiBhcyBpYW0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWlhbSc7XG5pbXBvcnQgKiBhcyBsYW1iZGEgZnJvbSAnYXdzLWNkay1saWIvYXdzLWxhbWJkYSc7XG5pbXBvcnQgKiBhcyBsb2dzIGZyb20gJ2F3cy1jZGstbGliL2F3cy1sb2dzJztcbmltcG9ydCAqIGFzIHNlYyBmcm9tICdhd3MtY2RrLWxpYi9hd3Mtc2VjcmV0c21hbmFnZXInO1xuaW1wb3J0ICogYXMgY3IgZnJvbSAnYXdzLWNkay1saWIvY3VzdG9tLXJlc291cmNlcyc7XG5pbXBvcnQgKiBhcyBjb25zdHJ1Y3RzIGZyb20gJ2NvbnN0cnVjdHMnO1xuXG5cbmNvbnN0IEVVX0xBTkRJTkdfWk9ORV9PUkdfSUQ6IHN0cmluZyA9ICdvLXI1amZsN21icjknO1xuY29uc3QgTEFUQU1fTEFORElOR19aT05FX09SR19JRDogc3RyaW5nID0gJ28tNWoxMnV0NTI0dyc7XG5cbmNvbnN0IERFVkVMT1BFUl9UT09MU19BQ0NPVU5UX0lEOiBzdHJpbmcgPSAnNTc3MTQ2ODk3Nzg1JztcblxuY29uc3QgU0hBUkVEX0xBVEFNX1NFQ1JFVF9BUk5fUFJFRklYID0gYGFybjphd3M6c2VjcmV0c21hbmFnZXI6ZXUtd2VzdC0xOiR7REVWRUxPUEVSX1RPT0xTX0FDQ09VTlRfSUR9OnNlY3JldDovZGF0YWRvZy1pbnRlZ3JhdGlvbi9sYXRhbWA7XG5jb25zdCBTSEFSRURfRVVfU0VDUkVUX0FSTl9QUkVGSVggPSBgYXJuOmF3czpzZWNyZXRzbWFuYWdlcjpldS13ZXN0LTE6JHtERVZFTE9QRVJfVE9PTFNfQUNDT1VOVF9JRH06c2VjcmV0Oi9kYXRhZG9nLWludGVncmF0aW9uL2V1YDtcblxuY29uc3QgUkVTT1VSQ0VfSUQgPSAnX19PcmdDcmVkZW50aWFsc1NlY3JldF9fJztcblxuLyoqXG4gKiBBIGN1c3RvbSByZXNvdXJjZSB0aGF0IHJlc29sdmVzIHRoZSBzZWNyZXQgQVJOIGJhc2VkIG9uIHRoZSBvcmdhbml6YXRpb24gSUQuXG4gKi9cbmV4cG9ydCBjbGFzcyBEYXRhZG9nU2hhcmVkU2VjcmV0IGV4dGVuZHMgY29uc3RydWN0cy5Db25zdHJ1Y3Qge1xuXG4gIC8qKlxuICAgKiBUaGlzIHN0YXRpYyBmdW5jdGlvbiByZXNvbHZlcyB0byB0aGUgcGxhaW4gYXBpLWtleSBzZWNyZXQsIHRoYXQgY2FuIGJlIHVzZWQgZm9yIHRoZSBsb2cgZm9yd2FyZGVyIG9yIHRoZSBMYW1iZGEgaW5zdHJ1bWVudGF0aW9uLlxuICAgKi9cbiAgc3RhdGljIGFwaUtleVNlY3JldChzY29wZTogY29uc3RydWN0cy5Db25zdHJ1Y3QsIGlkOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gbmV3IERhdGFkb2dTaGFyZWRTZWNyZXQoc2NvcGUsIGlkLCB7IHNlY3JldE5hbWU6ICdzaGFyZWQtYXBpLWtleScgfSk7XG4gIH1cblxuICAvKipcbiAgICogVGhpcyBzdGF0aWMgZnVuY3Rpb24gcmVzb2x2ZXMgdG8gdGhlIGpzb24gY3JlZGVudGlhbHMgc2VjcmV0IHRoYXQgY29udGFpbnMgWydBcGlLZXknLCAnQXBwbGljYXRpb25LZXknLCAnU2l0ZSddLlxuICAgKi9cbiAgc3RhdGljIGNyZWRlbnRpYWxzU2VjcmV0KHNjb3BlOiBjb25zdHJ1Y3RzLkNvbnN0cnVjdCwgaWQ6IHN0cmluZykge1xuICAgIHJldHVybiBuZXcgRGF0YWRvZ1NoYXJlZFNlY3JldChzY29wZSwgaWQsIHsgc2VjcmV0TmFtZTogJ3NoYXJlZC1jcmVkZW50aWFscycgfSk7XG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyBzZXR1cEN1c3RvbVJlc291cmNlKHN0YWNrOiBjZGsuU3RhY2spOiBjci5Qcm92aWRlciB7XG4gICAgY29uc3Qgc2VjcmV0TG9jYXRvckxhbWJkYSA9IG5ldyBsYW1iZGEuRnVuY3Rpb24oc3RhY2ssICdSZXNvbHZlU2VjcmV0QXJuSGFuZGxlcicsIHtcbiAgICAgIGNvZGU6IGxhbWJkYS5Db2RlLmZyb21Bc3NldChwYXRoLmpvaW4oX19kaXJuYW1lLCAnc2VjcmV0LWxvY2F0b3ItY3VzdG9tLXJlc291cmNlJyksIHtcbiAgICAgICAgZXhjbHVkZTogWycqLmpzJywgJyouZC50cyddLFxuICAgICAgfSksXG4gICAgICBoYW5kbGVyOiAnb24tY3JlYXRlLmhhbmRsZXInLFxuICAgICAgcnVudGltZTogbGFtYmRhLlJ1bnRpbWUuTk9ERUpTXzIwX1gsXG4gICAgICBhcmNoaXRlY3R1cmU6IGxhbWJkYS5BcmNoaXRlY3R1cmUuQVJNXzY0LFxuICAgICAgbG9nR3JvdXA6IG5ldyBsb2dzLkxvZ0dyb3VwKHN0YWNrLCAnRGF0YWRvZ1NoYXJlZFNlY3JldEhhbmRsZXJMb2dHcm91cCcsIHtcbiAgICAgICAgcmV0ZW50aW9uOiBsb2dzLlJldGVudGlvbkRheXMuT05FX1dFRUssXG4gICAgICB9KSxcbiAgICAgIGVudmlyb25tZW50OiB7XG4gICAgICAgIFNIQVJFRF9MQVRBTV9TRUNSRVRfQVJOX1BSRUZJWDogU0hBUkVEX0xBVEFNX1NFQ1JFVF9BUk5fUFJFRklYLFxuICAgICAgICBTSEFSRURfRVVfU0VDUkVUX0FSTl9QUkVGSVg6IFNIQVJFRF9FVV9TRUNSRVRfQVJOX1BSRUZJWCxcbiAgICAgICAgTEFUQU1fTEFORElOR19aT05FX09SR19JRDogTEFUQU1fTEFORElOR19aT05FX09SR19JRCxcbiAgICAgICAgRVVfTEFORElOR19aT05FX09SR19JRDogRVVfTEFORElOR19aT05FX09SR19JRCxcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICBzZWNyZXRMb2NhdG9yTGFtYmRhLmFkZFRvUm9sZVBvbGljeShuZXcgaWFtLlBvbGljeVN0YXRlbWVudCh7IGFjdGlvbnM6IFsnb3JnYW5pemF0aW9uczpEZXNjcmliZU9yZ2FuaXphdGlvbiddLCByZXNvdXJjZXM6IFsnKiddIH0pKTtcbiAgICBzZWNyZXRMb2NhdG9yTGFtYmRhLmFkZFRvUm9sZVBvbGljeShcbiAgICAgIG5ldyBpYW0uUG9saWN5U3RhdGVtZW50KHtcbiAgICAgICAgYWN0aW9uczogWydzZWNyZXRzbWFuYWdlcjpEZXNjcmliZVNlY3JldCddLFxuICAgICAgICByZXNvdXJjZXM6IFtgYXJuOmF3czpzZWNyZXRzbWFuYWdlcjpldS13ZXN0LTE6JHtERVZFTE9QRVJfVE9PTFNfQUNDT1VOVF9JRH06c2VjcmV0OipgXSxcbiAgICAgIH0pLFxuICAgICk7XG5cbiAgICByZXR1cm4gbmV3IGNyLlByb3ZpZGVyKHN0YWNrLCBSRVNPVVJDRV9JRCwge1xuICAgICAgb25FdmVudEhhbmRsZXI6IHNlY3JldExvY2F0b3JMYW1iZGEsXG4gICAgfSk7XG4gIH1cblxuICByZWFkb25seSBzZWNyZXQ6IHNlYy5JU2VjcmV0O1xuXG4gIHByaXZhdGUgY3VzdG9tUmVzb3VyY2U6IGNyLlByb3ZpZGVyO1xuXG4gIHByaXZhdGUgY29uc3RydWN0b3Ioc2NvcGU6IGNvbnN0cnVjdHMuSUNvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IHtzZWNyZXROYW1lOiBzdHJpbmd9KSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIGNvbnN0IHN0YWNrID0gY2RrLlN0YWNrLm9mKHRoaXMpO1xuICAgIGlmICghc3RhY2subm9kZS50cnlGaW5kQ2hpbGQoUkVTT1VSQ0VfSUQpKSB7XG4gICAgICB0aGlzLmN1c3RvbVJlc291cmNlID0gRGF0YWRvZ1NoYXJlZFNlY3JldC5zZXR1cEN1c3RvbVJlc291cmNlKHN0YWNrKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5jdXN0b21SZXNvdXJjZSA9IHN0YWNrLm5vZGUuZmluZENoaWxkKFJFU09VUkNFX0lEKSBhcyBjci5Qcm92aWRlcjtcbiAgICB9XG5cbiAgICBjb25zdCBzZWNyZXRMb2NhdG9yID0gbmV3IGNkay5DdXN0b21SZXNvdXJjZSh0aGlzLCAnRGF0YWRvZ1NoYXJlZFNlY3JldCcsIHtcbiAgICAgIHNlcnZpY2VUb2tlbjogdGhpcy5jdXN0b21SZXNvdXJjZS5zZXJ2aWNlVG9rZW4sXG4gICAgICBwYXNjYWxDYXNlUHJvcGVydGllczogdHJ1ZSxcbiAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgc2VjcmV0TmFtZTogcHJvcHMuc2VjcmV0TmFtZSxcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICB0aGlzLnNlY3JldCA9IHNlYy5TZWNyZXQuZnJvbVNlY3JldENvbXBsZXRlQXJuKHRoaXMsICdSZXNvdXJjZScsIHNlY3JldExvY2F0b3IuZ2V0QXR0KCdTZWNyZXRBcm4nKS50b1N0cmluZygpKTtcbiAgfVxuXG59XG4iXX0=
144
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWRvZy1zaGFyZWQtc2VjcmV0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhZG9ndjIvZGF0YWRvZy1zaGFyZWQtc2VjcmV0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDZCQUE2QjtBQUM3QixtQ0FBbUM7QUFFbkMsc0RBQXNEO0FBQ3RELDJDQUEyQztBQUMzQyxpREFBaUQ7QUFDakQsNkNBQTZDO0FBQzdDLHNEQUFzRDtBQUN0RCxtREFBbUQ7QUFDbkQseUNBQXlDO0FBR3pDLE1BQU0sc0JBQXNCLEdBQVcsY0FBYyxDQUFDO0FBQ3RELE1BQU0seUJBQXlCLEdBQVcsY0FBYyxDQUFDO0FBRXpELE1BQU0sMEJBQTBCLEdBQVcsY0FBYyxDQUFDO0FBRTFELE1BQU0sOEJBQThCLEdBQUcsb0NBQW9DLDBCQUEwQixvQ0FBb0MsQ0FBQztBQUMxSSxNQUFNLDJCQUEyQixHQUFHLG9DQUFvQywwQkFBMEIsaUNBQWlDLENBQUM7QUFFcEksTUFBTSxXQUFXLEdBQUcsMEJBQTBCLENBQUM7QUFFL0M7O0dBRUc7QUFDSCxNQUFhLG1CQUFvQixTQUFRLFVBQVUsQ0FBQyxTQUFTO0lBRTNEOztPQUVHO0lBQ0gsTUFBTSxDQUFDLFlBQVksQ0FBQyxLQUEyQixFQUFFLEVBQVU7UUFDekQsT0FBTyxJQUFJLG1CQUFtQixDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsRUFBRSxVQUFVLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDO0lBQzlFLENBQUM7SUFFRDs7T0FFRztJQUNILE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxLQUEyQixFQUFFLEVBQVU7UUFDOUQsT0FBTyxJQUFJLG1CQUFtQixDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsRUFBRSxVQUFVLEVBQUUsb0JBQW9CLEVBQUUsQ0FBQyxDQUFDO0lBQ2xGLENBQUM7SUFFTyxNQUFNLENBQUMsbUJBQW1CLENBQUMsS0FBZ0I7UUFDakQsTUFBTSxtQkFBbUIsR0FB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VSxDQUFDLFFBQXdCO1FBQ2pDLE1BQU0sSUFBSSxLQUFLLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRUQsbUJBQW1CLENBQUMsR0FBVyxFQUFFLFFBQXFDO1FBQ3BFLE1BQU0sSUFBSSxLQUFLLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRUQsbUJBQW1CLENBQUMsVUFBK0I7UUFDakQsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFRCxxQkFBcUI7UUFDbkIsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFRCxNQUFNLENBQUMsT0FBb0M7UUFDekMsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxPQUEwQjtRQUMzQyxNQUFNLElBQUksS0FBSyxDQUFDLHFCQUFxQixDQUFDLENBQUM7SUFDekMsQ0FBQzs7QUE5SUgsa0RBZ0pDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCAqIGFzIGNkayBmcm9tICdhd3MtY2RrLWxpYic7XG5cbi8vIGltcG9ydCAqIGFzIGNyIGZyb20gJ2F3cy1jZGstbGliL2N1c3RvbS1yZXNvdXJjZXMnO1xuaW1wb3J0ICogYXMgaWFtIGZyb20gJ2F3cy1jZGstbGliL2F3cy1pYW0nO1xuaW1wb3J0ICogYXMgbGFtYmRhIGZyb20gJ2F3cy1jZGstbGliL2F3cy1sYW1iZGEnO1xuaW1wb3J0ICogYXMgbG9ncyBmcm9tICdhd3MtY2RrLWxpYi9hd3MtbG9ncyc7XG5pbXBvcnQgKiBhcyBzZWMgZnJvbSAnYXdzLWNkay1saWIvYXdzLXNlY3JldHNtYW5hZ2VyJztcbmltcG9ydCAqIGFzIGNyIGZyb20gJ2F3cy1jZGstbGliL2N1c3RvbS1yZXNvdXJjZXMnO1xuaW1wb3J0ICogYXMgY29uc3RydWN0cyBmcm9tICdjb25zdHJ1Y3RzJztcblxuXG5jb25zdCBFVV9MQU5ESU5HX1pPTkVfT1JHX0lEOiBzdHJpbmcgPSAnby1yNWpmbDdtYnI5JztcbmNvbnN0IExBVEFNX0xBTkRJTkdfWk9ORV9PUkdfSUQ6IHN0cmluZyA9ICdvLTVqMTJ1dDUyNHcnO1xuXG5jb25zdCBERVZFTE9QRVJfVE9PTFNfQUNDT1VOVF9JRDogc3RyaW5nID0gJzU3NzE0Njg5Nzc4NSc7XG5cbmNvbnN0IFNIQVJFRF9MQVRBTV9TRUNSRVRfQVJOX1BSRUZJWCA9IGBhcm46YXdzOnNlY3JldHNtYW5hZ2VyOmV1LXdlc3QtMToke0RFVkVMT1BFUl9UT09MU19BQ0NPVU5UX0lEfTpzZWNyZXQ6L2RhdGFkb2ctaW50ZWdyYXRpb24vbGF0YW1gO1xuY29uc3QgU0hBUkVEX0VVX1NFQ1JFVF9BUk5fUFJFRklYID0gYGFybjphd3M6c2VjcmV0c21hbmFnZXI6ZXUtd2VzdC0xOiR7REVWRUxPUEVSX1RPT0xTX0FDQ09VTlRfSUR9OnNlY3JldDovZGF0YWRvZy1pbnRlZ3JhdGlvbi9ldWA7XG5cbmNvbnN0IFJFU09VUkNFX0lEID0gJ19fT3JnQ3JlZGVudGlhbHNTZWNyZXRfXyc7XG5cbi8qKlxuICogQSBjdXN0b20gcmVzb3VyY2UgdGhhdCByZXNvbHZlcyB0aGUgc2VjcmV0IEFSTiBiYXNlZCBvbiB0aGUgb3JnYW5pemF0aW9uIElELlxuICovXG5leHBvcnQgY2xhc3MgRGF0YWRvZ1NoYXJlZFNlY3JldCBleHRlbmRzIGNvbnN0cnVjdHMuQ29uc3RydWN0IGltcGxlbWVudHMgc2VjLklTZWNyZXQge1xuXG4gIC8qKlxuICAgKiBUaGlzIHN0YXRpYyBmdW5jdGlvbiByZXNvbHZlcyB0byB0aGUgcGxhaW4gYXBpLWtleSBzZWNyZXQsIHRoYXQgY2FuIGJlIHVzZWQgZm9yIHRoZSBsb2cgZm9yd2FyZGVyIG9yIHRoZSBMYW1iZGEgaW5zdHJ1bWVudGF0aW9uLlxuICAgKi9cbiAgc3RhdGljIGFwaUtleVNlY3JldChzY29wZTogY29uc3RydWN0cy5Db25zdHJ1Y3QsIGlkOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gbmV3IERhdGFkb2dTaGFyZWRTZWNyZXQoc2NvcGUsIGlkLCB7IHNlY3JldE5hbWU6ICdzaGFyZWQtYXBpLWtleScgfSk7XG4gIH1cblxuICAvKipcbiAgICogVGhpcyBzdGF0aWMgZnVuY3Rpb24gcmVzb2x2ZXMgdG8gdGhlIGpzb24gY3JlZGVudGlhbHMgc2VjcmV0IHRoYXQgY29udGFpbnMgWydBcGlLZXknLCAnQXBwbGljYXRpb25LZXknLCAnU2l0ZSddLlxuICAgKi9cbiAgc3RhdGljIGNyZWRlbnRpYWxzU2VjcmV0KHNjb3BlOiBjb25zdHJ1Y3RzLkNvbnN0cnVjdCwgaWQ6IHN0cmluZykge1xuICAgIHJldHVybiBuZXcgRGF0YWRvZ1NoYXJlZFNlY3JldChzY29wZSwgaWQsIHsgc2VjcmV0TmFtZTogJ3NoYXJlZC1jcmVkZW50aWFscycgfSk7XG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyBzZXR1cEN1c3RvbVJlc291cmNlKHN0YWNrOiBjZGsuU3RhY2spOiBjci5Qcm92aWRlciB7XG4gICAgY29uc3Qgc2VjcmV0TG9jYXRvckxhbWJkYSA9IG5ldyBsYW1iZGEuRnVuY3Rpb24oc3RhY2ssICdSZXNvbHZlU2VjcmV0QXJuSGFuZGxlcicsIHtcbiAgICAgIGNvZGU6IGxhbWJkYS5Db2RlLmZyb21Bc3NldChwYXRoLmpvaW4oX19kaXJuYW1lLCAnc2VjcmV0LWxvY2F0b3ItY3VzdG9tLXJlc291cmNlJyksIHtcbiAgICAgICAgZXhjbHVkZTogWycqLmpzJywgJyouZC50cyddLFxuICAgICAgfSksXG4gICAgICBoYW5kbGVyOiAnb24tY3JlYXRlLmhhbmRsZXInLFxuICAgICAgcnVudGltZTogbGFtYmRhLlJ1bnRpbWUuTk9ERUpTXzIwX1gsXG4gICAgICBhcmNoaXRlY3R1cmU6IGxhbWJkYS5BcmNoaXRlY3R1cmUuQVJNXzY0LFxuICAgICAgbG9nR3JvdXA6IG5ldyBsb2dzLkxvZ0dyb3VwKHN0YWNrLCAnRGF0YWRvZ1NoYXJlZFNlY3JldEhhbmRsZXJMb2dHcm91cCcsIHtcbiAgICAgICAgcmV0ZW50aW9uOiBsb2dzLlJldGVudGlvbkRheXMuT05FX1dFRUssXG4gICAgICB9KSxcbiAgICAgIGVudmlyb25tZW50OiB7XG4gICAgICAgIFNIQVJFRF9MQVRBTV9TRUNSRVRfQVJOX1BSRUZJWDogU0hBUkVEX0xBVEFNX1NFQ1JFVF9BUk5fUFJFRklYLFxuICAgICAgICBTSEFSRURfRVVfU0VDUkVUX0FSTl9QUkVGSVg6IFNIQVJFRF9FVV9TRUNSRVRfQVJOX1BSRUZJWCxcbiAgICAgICAgTEFUQU1fTEFORElOR19aT05FX09SR19JRDogTEFUQU1fTEFORElOR19aT05FX09SR19JRCxcbiAgICAgICAgRVVfTEFORElOR19aT05FX09SR19JRDogRVVfTEFORElOR19aT05FX09SR19JRCxcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICBzZWNyZXRMb2NhdG9yTGFtYmRhLmFkZFRvUm9sZVBvbGljeShuZXcgaWFtLlBvbGljeVN0YXRlbWVudCh7IGFjdGlvbnM6IFsnb3JnYW5pemF0aW9uczpEZXNjcmliZU9yZ2FuaXphdGlvbiddLCByZXNvdXJjZXM6IFsnKiddIH0pKTtcbiAgICBzZWNyZXRMb2NhdG9yTGFtYmRhLmFkZFRvUm9sZVBvbGljeShcbiAgICAgIG5ldyBpYW0uUG9saWN5U3RhdGVtZW50KHtcbiAgICAgICAgYWN0aW9uczogWydzZWNyZXRzbWFuYWdlcjpEZXNjcmliZVNlY3JldCddLFxuICAgICAgICByZXNvdXJjZXM6IFtgYXJuOmF3czpzZWNyZXRzbWFuYWdlcjpldS13ZXN0LTE6JHtERVZFTE9QRVJfVE9PTFNfQUNDT1VOVF9JRH06c2VjcmV0OipgXSxcbiAgICAgIH0pLFxuICAgICk7XG5cbiAgICByZXR1cm4gbmV3IGNyLlByb3ZpZGVyKHN0YWNrLCBSRVNPVVJDRV9JRCwge1xuICAgICAgb25FdmVudEhhbmRsZXI6IHNlY3JldExvY2F0b3JMYW1iZGEsXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHNlY3JldDogc2VjLklTZWNyZXQ7XG4gIHByaXZhdGUgY3VzdG9tUmVzb3VyY2U6IGNyLlByb3ZpZGVyO1xuXG4gIHByaXZhdGUgY29uc3RydWN0b3Ioc2NvcGU6IGNvbnN0cnVjdHMuSUNvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IHtzZWNyZXROYW1lOiBzdHJpbmd9KSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIGNvbnN0IHN0YWNrID0gY2RrLlN0YWNrLm9mKHRoaXMpO1xuICAgIGlmICghc3RhY2subm9kZS50cnlGaW5kQ2hpbGQoUkVTT1VSQ0VfSUQpKSB7XG4gICAgICB0aGlzLmN1c3RvbVJlc291cmNlID0gRGF0YWRvZ1NoYXJlZFNlY3JldC5zZXR1cEN1c3RvbVJlc291cmNlKHN0YWNrKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5jdXN0b21SZXNvdXJjZSA9IHN0YWNrLm5vZGUuZmluZENoaWxkKFJFU09VUkNFX0lEKSBhcyBjci5Qcm92aWRlcjtcbiAgICB9XG5cbiAgICBjb25zdCBzZWNyZXRMb2NhdG9yID0gbmV3IGNkay5DdXN0b21SZXNvdXJjZSh0aGlzLCAnRGF0YWRvZ1NoYXJlZFNlY3JldCcsIHtcbiAgICAgIHNlcnZpY2VUb2tlbjogdGhpcy5jdXN0b21SZXNvdXJjZS5zZXJ2aWNlVG9rZW4sXG4gICAgICBwYXNjYWxDYXNlUHJvcGVydGllczogdHJ1ZSxcbiAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgc2VjcmV0TmFtZTogcHJvcHMuc2VjcmV0TmFtZSxcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICB0aGlzLnNlY3JldCA9IHNlYy5TZWNyZXQuZnJvbVNlY3JldENvbXBsZXRlQXJuKHRoaXMsICdSZXNvdXJjZScsIHNlY3JldExvY2F0b3IuZ2V0QXR0KCdTZWNyZXRBcm4nKS50b1N0cmluZygpKTtcbiAgfVxuXG4gIGdldCBzdGFjaygpOiBjZGsuU3RhY2sge1xuICAgIHJldHVybiB0aGlzLnNlY3JldC5zdGFjaztcbiAgfVxuXG4gIGdldCBlbnYoKTogY2RrLlJlc291cmNlRW52aXJvbm1lbnQge1xuICAgIHJldHVybiB0aGlzLnNlY3JldC5lbnY7XG4gIH1cblxuICBnZXQgZW5jcnlwdGlvbktleSgpIDogY2RrLmF3c19rbXMuSUtleSB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuXG4gIGdldCBzZWNyZXRBcm4oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5zZWNyZXQuc2VjcmV0QXJuO1xuICB9O1xuXG4gIGdldCBzZWNyZXRGdWxsQXJuKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuc2VjcmV0LnNlY3JldEZ1bGxBcm47XG4gIH1cblxuICBnZXQgc2VjcmV0TmFtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnNlY3JldC5zZWNyZXROYW1lO1xuICB9XG5cbiAgZ2V0IHNlY3JldFZhbHVlKCk6IGNkay5TZWNyZXRWYWx1ZSB7XG4gICAgcmV0dXJuIHRoaXMuc2VjcmV0LnNlY3JldFZhbHVlO1xuICB9XG5cbiAgc2VjcmV0VmFsdWVGcm9tSnNvbihrZXk6IHN0cmluZyk6IGNkay5TZWNyZXRWYWx1ZSB7XG4gICAgcmV0dXJuIHRoaXMuc2VjcmV0LnNlY3JldFZhbHVlRnJvbUpzb24oa2V5KTtcbiAgfVxuXG4gIGdyYW50UmVhZChncmFudGVlOiBpYW0uSUdyYW50YWJsZSwgdmVyc2lvblN0YWdlcz86IHN0cmluZ1tdKTogaWFtLkdyYW50IHtcbiAgICBjb25zdCByZXN1bHQgPSBncmFudGVlLmdyYW50UHJpbmNpcGFsLmFkZFRvUHJpbmNpcGFsUG9saWN5KG5ldyBpYW0uUG9saWN5U3RhdGVtZW50KHtcbiAgICAgIGFjdGlvbnM6IFsna21zOkRlY3J5cHQnXSxcbiAgICAgIHJlc291cmNlczogW2Bhcm46YXdzOmttczpldS13ZXN0LTE6JHtERVZFTE9QRVJfVE9PTFNfQUNDT1VOVF9JRH06a2V5LypgXSxcbiAgICAgIGNvbmRpdGlvbnM6IHtcbiAgICAgICAgJ0ZvckFueVZhbHVlOlN0cmluZ0xpa2UnOiB7XG4gICAgICAgICAgJ2ttczpSZXNvdXJjZUFsaWFzZXMnOiAnYWxpYXMvZGF0YWRvZy1pbnRlZ3JhdGlvbi1zaGFyZWQtY3JlZGVudGlhbHMta2V5JyxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSkpO1xuICAgIGlmICghcmVzdWx0LnN0YXRlbWVudEFkZGVkKSB7XG4gICAgICBjZGsuQW5ub3RhdGlvbnMub2YodGhpcykuYWRkV2FybmluZygnQ291bGQgbm90IGFkZCBzdGF0ZW1lbnQgdG8gdGhlIHByaW5jaXBhbCBwb2xpY3kuJyk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLnNlY3JldC5ncmFudFJlYWQoZ3JhbnRlZSwgdmVyc2lvblN0YWdlcyk7XG4gIH1cblxuICBncmFudFdyaXRlKF9ncmFudGVlOiBpYW0uSUdyYW50YWJsZSk6IGlhbS5HcmFudCB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdNZXRob2Qgbm90IGFsbG93ZWQuJyk7XG4gIH1cblxuICBhZGRSb3RhdGlvblNjaGVkdWxlKF9pZDogc3RyaW5nLCBfb3B0aW9uczogc2VjLlJvdGF0aW9uU2NoZWR1bGVPcHRpb25zKTogc2VjLlJvdGF0aW9uU2NoZWR1bGUge1xuICAgIHRocm93IG5ldyBFcnJvcignTWV0aG9kIG5vdCBhbGxvd2VkLicpO1xuICB9XG5cbiAgYWRkVG9SZXNvdXJjZVBvbGljeShfc3RhdGVtZW50OiBpYW0uUG9saWN5U3RhdGVtZW50KTogaWFtLkFkZFRvUmVzb3VyY2VQb2xpY3lSZXN1bHQge1xuICAgIHRocm93IG5ldyBFcnJvcignTWV0aG9kIG5vdCBhbGxvd2VkLicpO1xuICB9XG5cbiAgZGVueUFjY291bnRSb290RGVsZXRlKCk6IHZvaWQge1xuICAgIHRocm93IG5ldyBFcnJvcignTWV0aG9kIG5vdCBhbGxvd2VkLicpO1xuICB9XG5cbiAgYXR0YWNoKF90YXJnZXQ6IHNlYy5JU2VjcmV0QXR0YWNobWVudFRhcmdldCk6IHNlYy5JU2VjcmV0IHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ01ldGhvZCBub3QgYWxsb3dlZC4nKTtcbiAgfVxuXG4gIGFwcGx5UmVtb3ZhbFBvbGljeShfcG9saWN5OiBjZGsuUmVtb3ZhbFBvbGljeSk6IHZvaWQge1xuICAgIHRocm93IG5ldyBFcnJvcignTWV0aG9kIG5vdCBhbGxvd2VkLicpO1xuICB9XG5cbn1cbiJdfQ==
package/package.json CHANGED
@@ -15,7 +15,7 @@
15
15
  ],
16
16
  "main": "lib/index.js",
17
17
  "license": "Apache-2.0",
18
- "version": "6.12.1",
18
+ "version": "6.12.2",
19
19
  "types": "lib/index.d.ts",
20
20
  "stability": "stable",
21
21
  "exports": {
@@ -92,8 +92,8 @@
92
92
  "@types/aws-lambda": "^8.10.145"
93
93
  },
94
94
  "peerDependencies": {
95
- "aws-cdk-lib": "^2.161.1",
96
- "constructs": "^10.3.0"
95
+ "aws-cdk-lib": "^2.163.0",
96
+ "constructs": "^10.4.2"
97
97
  },
98
98
  "dependencies": {
99
99
  "@aws-sdk/client-cloudformation": "^3.675.0",
package/version.json CHANGED
@@ -1,3 +1,3 @@
1
1
  {
2
- "version": "6.12.1"
2
+ "version": "6.12.2"
3
3
  }