@aws-cdk/aws-gamelift-alpha 2.260.0-alpha.0 → 2.262.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.jsii +100 -13
- package/.jsii.tabl.json.gz +0 -0
- package/lib/alias.js +2 -2
- package/lib/build-fleet.js +13 -7
- package/lib/build.js +2 -2
- package/lib/content.js +3 -3
- package/lib/fleet-base.js +1 -1
- package/lib/game-server-group.js +2 -2
- package/lib/game-session-queue.js +2 -2
- package/lib/ingress-rule.js +2 -2
- package/lib/matchmaking-configuration.js +1 -1
- package/lib/matchmaking-ruleset-body.js +1 -1
- package/lib/matchmaking-ruleset.js +2 -2
- package/lib/queued-matchmaking-configuration.js +1 -1
- package/lib/script.js +2 -2
- package/lib/standalone-matchmaking-configuration.js +1 -1
- package/package.json +7 -7
package/.jsii
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"url": "https://aws.amazon.com"
|
|
9
9
|
},
|
|
10
10
|
"dependencies": {
|
|
11
|
-
"aws-cdk-lib": "^2.
|
|
11
|
+
"aws-cdk-lib": "^2.262.0",
|
|
12
12
|
"constructs": "^10.5.0"
|
|
13
13
|
},
|
|
14
14
|
"dependencyClosure": {
|
|
@@ -1150,6 +1150,19 @@
|
|
|
1150
1150
|
}
|
|
1151
1151
|
}
|
|
1152
1152
|
},
|
|
1153
|
+
"aws-cdk-lib.aws_controlcatalog": {
|
|
1154
|
+
"targets": {
|
|
1155
|
+
"dotnet": {
|
|
1156
|
+
"namespace": "Amazon.CDK.AWS.ControlCatalog"
|
|
1157
|
+
},
|
|
1158
|
+
"java": {
|
|
1159
|
+
"package": "software.amazon.awscdk.services.controlcatalog"
|
|
1160
|
+
},
|
|
1161
|
+
"python": {
|
|
1162
|
+
"module": "aws_cdk.aws_controlcatalog"
|
|
1163
|
+
}
|
|
1164
|
+
}
|
|
1165
|
+
},
|
|
1153
1166
|
"aws-cdk-lib.aws_controltower": {
|
|
1154
1167
|
"targets": {
|
|
1155
1168
|
"dotnet": {
|
|
@@ -1202,6 +1215,19 @@
|
|
|
1202
1215
|
}
|
|
1203
1216
|
}
|
|
1204
1217
|
},
|
|
1218
|
+
"aws-cdk-lib.aws_dataexchange": {
|
|
1219
|
+
"targets": {
|
|
1220
|
+
"dotnet": {
|
|
1221
|
+
"namespace": "Amazon.CDK.AWS.DataExchange"
|
|
1222
|
+
},
|
|
1223
|
+
"java": {
|
|
1224
|
+
"package": "software.amazon.awscdk.services.dataexchange"
|
|
1225
|
+
},
|
|
1226
|
+
"python": {
|
|
1227
|
+
"module": "aws_cdk.aws_dataexchange"
|
|
1228
|
+
}
|
|
1229
|
+
}
|
|
1230
|
+
},
|
|
1205
1231
|
"aws-cdk-lib.aws_datapipeline": {
|
|
1206
1232
|
"targets": {
|
|
1207
1233
|
"dotnet": {
|
|
@@ -3015,6 +3041,19 @@
|
|
|
3015
3041
|
}
|
|
3016
3042
|
}
|
|
3017
3043
|
},
|
|
3044
|
+
"aws-cdk-lib.aws_outposts": {
|
|
3045
|
+
"targets": {
|
|
3046
|
+
"dotnet": {
|
|
3047
|
+
"namespace": "Amazon.CDK.AWS.Outposts"
|
|
3048
|
+
},
|
|
3049
|
+
"java": {
|
|
3050
|
+
"package": "software.amazon.awscdk.services.outposts"
|
|
3051
|
+
},
|
|
3052
|
+
"python": {
|
|
3053
|
+
"module": "aws_cdk.aws_outposts"
|
|
3054
|
+
}
|
|
3055
|
+
}
|
|
3056
|
+
},
|
|
3018
3057
|
"aws-cdk-lib.aws_panorama": {
|
|
3019
3058
|
"targets": {
|
|
3020
3059
|
"dotnet": {
|
|
@@ -5464,6 +5503,22 @@
|
|
|
5464
5503
|
}
|
|
5465
5504
|
}
|
|
5466
5505
|
},
|
|
5506
|
+
"aws-cdk-lib.interfaces.aws_controlcatalog": {
|
|
5507
|
+
"targets": {
|
|
5508
|
+
"dotnet": {
|
|
5509
|
+
"namespace": "Amazon.CDK.Interfaces.ControlCatalog"
|
|
5510
|
+
},
|
|
5511
|
+
"go": {
|
|
5512
|
+
"packageName": "interfacesawscontrolcatalog"
|
|
5513
|
+
},
|
|
5514
|
+
"java": {
|
|
5515
|
+
"package": "software.amazon.awscdk.interfaces.controlcatalog"
|
|
5516
|
+
},
|
|
5517
|
+
"python": {
|
|
5518
|
+
"module": "aws_cdk.interfaces.aws_controlcatalog"
|
|
5519
|
+
}
|
|
5520
|
+
}
|
|
5521
|
+
},
|
|
5467
5522
|
"aws-cdk-lib.interfaces.aws_controltower": {
|
|
5468
5523
|
"targets": {
|
|
5469
5524
|
"dotnet": {
|
|
@@ -5528,6 +5583,22 @@
|
|
|
5528
5583
|
}
|
|
5529
5584
|
}
|
|
5530
5585
|
},
|
|
5586
|
+
"aws-cdk-lib.interfaces.aws_dataexchange": {
|
|
5587
|
+
"targets": {
|
|
5588
|
+
"dotnet": {
|
|
5589
|
+
"namespace": "Amazon.CDK.Interfaces.DataExchange"
|
|
5590
|
+
},
|
|
5591
|
+
"go": {
|
|
5592
|
+
"packageName": "interfacesawsdataexchange"
|
|
5593
|
+
},
|
|
5594
|
+
"java": {
|
|
5595
|
+
"package": "software.amazon.awscdk.interfaces.dataexchange"
|
|
5596
|
+
},
|
|
5597
|
+
"python": {
|
|
5598
|
+
"module": "aws_cdk.interfaces.aws_dataexchange"
|
|
5599
|
+
}
|
|
5600
|
+
}
|
|
5601
|
+
},
|
|
5531
5602
|
"aws-cdk-lib.interfaces.aws_datapipeline": {
|
|
5532
5603
|
"targets": {
|
|
5533
5604
|
"dotnet": {
|
|
@@ -7544,6 +7615,22 @@
|
|
|
7544
7615
|
}
|
|
7545
7616
|
}
|
|
7546
7617
|
},
|
|
7618
|
+
"aws-cdk-lib.interfaces.aws_outposts": {
|
|
7619
|
+
"targets": {
|
|
7620
|
+
"dotnet": {
|
|
7621
|
+
"namespace": "Amazon.CDK.Interfaces.Outposts"
|
|
7622
|
+
},
|
|
7623
|
+
"go": {
|
|
7624
|
+
"packageName": "interfacesawsoutposts"
|
|
7625
|
+
},
|
|
7626
|
+
"java": {
|
|
7627
|
+
"package": "software.amazon.awscdk.interfaces.outposts"
|
|
7628
|
+
},
|
|
7629
|
+
"python": {
|
|
7630
|
+
"module": "aws_cdk.interfaces.aws_outposts"
|
|
7631
|
+
}
|
|
7632
|
+
}
|
|
7633
|
+
},
|
|
7547
7634
|
"aws-cdk-lib.interfaces.aws_panorama": {
|
|
7548
7635
|
"targets": {
|
|
7549
7636
|
"dotnet": {
|
|
@@ -9377,7 +9464,7 @@
|
|
|
9377
9464
|
},
|
|
9378
9465
|
"locationInModule": {
|
|
9379
9466
|
"filename": "core/lib/resource.ts",
|
|
9380
|
-
"line":
|
|
9467
|
+
"line": 125
|
|
9381
9468
|
},
|
|
9382
9469
|
"parameters": [
|
|
9383
9470
|
{
|
|
@@ -10229,7 +10316,7 @@
|
|
|
10229
10316
|
},
|
|
10230
10317
|
"locationInModule": {
|
|
10231
10318
|
"filename": "core/lib/resource.ts",
|
|
10232
|
-
"line":
|
|
10319
|
+
"line": 125
|
|
10233
10320
|
},
|
|
10234
10321
|
"parameters": [
|
|
10235
10322
|
{
|
|
@@ -10450,7 +10537,7 @@
|
|
|
10450
10537
|
},
|
|
10451
10538
|
"locationInModule": {
|
|
10452
10539
|
"filename": "lib/build-fleet.ts",
|
|
10453
|
-
"line":
|
|
10540
|
+
"line": 189
|
|
10454
10541
|
},
|
|
10455
10542
|
"name": "addIngressRule",
|
|
10456
10543
|
"parameters": [
|
|
@@ -10517,7 +10604,7 @@
|
|
|
10517
10604
|
"immutable": true,
|
|
10518
10605
|
"locationInModule": {
|
|
10519
10606
|
"filename": "lib/build-fleet.ts",
|
|
10520
|
-
"line":
|
|
10607
|
+
"line": 173
|
|
10521
10608
|
},
|
|
10522
10609
|
"name": "fleetArn",
|
|
10523
10610
|
"overrides": "@aws-cdk/aws-gamelift-alpha.FleetBase",
|
|
@@ -10533,7 +10620,7 @@
|
|
|
10533
10620
|
"immutable": true,
|
|
10534
10621
|
"locationInModule": {
|
|
10535
10622
|
"filename": "lib/build-fleet.ts",
|
|
10536
|
-
"line":
|
|
10623
|
+
"line": 168
|
|
10537
10624
|
},
|
|
10538
10625
|
"name": "fleetId",
|
|
10539
10626
|
"overrides": "@aws-cdk/aws-gamelift-alpha.FleetBase",
|
|
@@ -11087,7 +11174,7 @@
|
|
|
11087
11174
|
},
|
|
11088
11175
|
"locationInModule": {
|
|
11089
11176
|
"filename": "core/lib/resource.ts",
|
|
11090
|
-
"line":
|
|
11177
|
+
"line": 125
|
|
11091
11178
|
},
|
|
11092
11179
|
"parameters": [
|
|
11093
11180
|
{
|
|
@@ -12474,7 +12561,7 @@
|
|
|
12474
12561
|
},
|
|
12475
12562
|
"locationInModule": {
|
|
12476
12563
|
"filename": "core/lib/resource.ts",
|
|
12477
|
-
"line":
|
|
12564
|
+
"line": 125
|
|
12478
12565
|
},
|
|
12479
12566
|
"parameters": [
|
|
12480
12567
|
{
|
|
@@ -13283,7 +13370,7 @@
|
|
|
13283
13370
|
},
|
|
13284
13371
|
"locationInModule": {
|
|
13285
13372
|
"filename": "core/lib/resource.ts",
|
|
13286
|
-
"line":
|
|
13373
|
+
"line": 125
|
|
13287
13374
|
},
|
|
13288
13375
|
"parameters": [
|
|
13289
13376
|
{
|
|
@@ -15589,7 +15676,7 @@
|
|
|
15589
15676
|
},
|
|
15590
15677
|
"locationInModule": {
|
|
15591
15678
|
"filename": "core/lib/resource.ts",
|
|
15592
|
-
"line":
|
|
15679
|
+
"line": 125
|
|
15593
15680
|
},
|
|
15594
15681
|
"parameters": [
|
|
15595
15682
|
{
|
|
@@ -16390,7 +16477,7 @@
|
|
|
16390
16477
|
},
|
|
16391
16478
|
"locationInModule": {
|
|
16392
16479
|
"filename": "core/lib/resource.ts",
|
|
16393
|
-
"line":
|
|
16480
|
+
"line": 125
|
|
16394
16481
|
},
|
|
16395
16482
|
"parameters": [
|
|
16396
16483
|
{
|
|
@@ -18382,7 +18469,7 @@
|
|
|
18382
18469
|
},
|
|
18383
18470
|
"locationInModule": {
|
|
18384
18471
|
"filename": "core/lib/resource.ts",
|
|
18385
|
-
"line":
|
|
18472
|
+
"line": 125
|
|
18386
18473
|
},
|
|
18387
18474
|
"parameters": [
|
|
18388
18475
|
{
|
|
@@ -18860,6 +18947,6 @@
|
|
|
18860
18947
|
"symbolId": "lib/standalone-matchmaking-configuration:StandaloneMatchmakingConfigurationProps"
|
|
18861
18948
|
}
|
|
18862
18949
|
},
|
|
18863
|
-
"version": "2.
|
|
18950
|
+
"version": "2.262.0-alpha.0",
|
|
18864
18951
|
"fingerprint": "**********"
|
|
18865
18952
|
}
|
package/.jsii.tabl.json.gz
CHANGED
|
Binary file
|
package/lib/alias.js
CHANGED
|
@@ -79,7 +79,7 @@ const prop_injectable_1 = require("aws-cdk-lib/core/lib/prop-injectable");
|
|
|
79
79
|
* Base class for new and imported GameLift Alias.
|
|
80
80
|
*/
|
|
81
81
|
class AliasBase extends cdk.Resource {
|
|
82
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.AliasBase", version: "2.
|
|
82
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.AliasBase", version: "2.262.0-alpha.0" };
|
|
83
83
|
/**
|
|
84
84
|
* The ARN to put into the destination field of a game session queue
|
|
85
85
|
*/
|
|
@@ -125,7 +125,7 @@ let Alias = (() => {
|
|
|
125
125
|
Alias = _classThis = _classDescriptor.value;
|
|
126
126
|
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
127
127
|
}
|
|
128
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.Alias", version: "2.
|
|
128
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.Alias", version: "2.262.0-alpha.0" };
|
|
129
129
|
/** Uniquely identifies this class. */
|
|
130
130
|
static PROPERTY_INJECTION_ID = '@aws-cdk.aws-gamelift-alpha.Alias';
|
|
131
131
|
/**
|
package/lib/build-fleet.js
CHANGED
|
@@ -111,7 +111,7 @@ let BuildFleet = (() => {
|
|
|
111
111
|
BuildFleet = _classThis = _classDescriptor.value;
|
|
112
112
|
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
113
113
|
}
|
|
114
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.BuildFleet", version: "2.
|
|
114
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.BuildFleet", version: "2.262.0-alpha.0" };
|
|
115
115
|
/** Uniquely identifies this class. */
|
|
116
116
|
static PROPERTY_INJECTION_ID = '@aws-cdk.aws-gamelift-alpha.BuildFleet';
|
|
117
117
|
/**
|
|
@@ -174,9 +174,18 @@ let BuildFleet = (() => {
|
|
|
174
174
|
if (props.peerVpc) {
|
|
175
175
|
this.warnVpcPeeringAuthorizations(this);
|
|
176
176
|
}
|
|
177
|
+
// Add home region location with capacity settings
|
|
178
|
+
this.addInternalLocation({
|
|
179
|
+
region: cdk.Stack.of(this).region,
|
|
180
|
+
capacity: {
|
|
181
|
+
desiredCapacity: props.desiredCapacity,
|
|
182
|
+
minSize: props.minSize ?? 0,
|
|
183
|
+
maxSize: props.maxSize ?? 1,
|
|
184
|
+
},
|
|
185
|
+
});
|
|
177
186
|
// Add all locations
|
|
178
|
-
if (props.locations && props.locations?.length >
|
|
179
|
-
throw new Error(`No more than
|
|
187
|
+
if (props.locations && props.locations?.length > 99) {
|
|
188
|
+
throw new Error(`No more than 99 remote locations are allowed per fleet, given ${props.locations.length}`);
|
|
180
189
|
}
|
|
181
190
|
(props.locations || []).forEach(this.addInternalLocation.bind(this));
|
|
182
191
|
// Add all Ingress rules
|
|
@@ -195,14 +204,11 @@ let BuildFleet = (() => {
|
|
|
195
204
|
certificateType: props.useCertificate ? 'GENERATED' : 'DISABLED',
|
|
196
205
|
},
|
|
197
206
|
description: props.description,
|
|
198
|
-
desiredEc2Instances: props.desiredCapacity,
|
|
199
207
|
ec2InboundPermissions: cdk.Lazy.any({ produce: () => this.parseIngressRules() }),
|
|
200
208
|
ec2InstanceType: props.instanceType.toString(),
|
|
201
209
|
fleetType: props.useSpot ? 'SPOT' : 'ON_DEMAND',
|
|
202
210
|
instanceRoleArn: this.role.roleArn,
|
|
203
211
|
locations: cdk.Lazy.any({ produce: () => this.parseLocations() }),
|
|
204
|
-
maxSize: props.maxSize ? props.maxSize : 1,
|
|
205
|
-
minSize: props.minSize ? props.minSize : 0,
|
|
206
212
|
name: this.physicalName,
|
|
207
213
|
newGameSessionProtectionPolicy: props.protectNewGameSession ? 'FullProtection' : 'NoProtection',
|
|
208
214
|
peerVpcAwsAccountId: props.peerVpc && props.peerVpc.env.account,
|
|
@@ -269,4 +275,4 @@ let BuildFleet = (() => {
|
|
|
269
275
|
return BuildFleet = _classThis;
|
|
270
276
|
})();
|
|
271
277
|
exports.BuildFleet = BuildFleet;
|
|
272
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGQtZmxlZXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJidWlsZC1mbGVldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwyREFBb0Q7QUFDcEQseURBQTJDO0FBQzNDLHNEQUF3QztBQUN4Qyw0RUFBdUU7QUFDdkUsOEVBQThGO0FBQzlGLDBFQUEwRTtBQUkxRSw2Q0FBeUM7QUE4QnpDOzs7Ozs7Ozs7R0FTRztJQUVVLFVBQVU7NEJBRHRCLG9DQUFrQjs7OztzQkFDYSxzQkFBUzs7Ozs7MEJBQWpCLFNBQVEsV0FBUzs7Ozt1Q0E4R3RDLGlDQUFjO3dDQUtkLGlDQUFjOzBDQWdCZCxJQUFBLGtDQUFjLEdBQUU7WUFwQmpCLDRLQUFXLE9BQU8sNkRBRWpCO1lBR0QsK0tBQVcsUUFBUSw2REFPbEI7WUFTRCw2TEFBTyxjQUFjLDZEQUtwQjtZQXpJSCw2S0FnS0M7Ozs7O1FBL0pDLHNDQUFzQztRQUMvQixNQUFNLENBQVUscUJBQXFCLEdBQVcsd0NBQXdDLENBQUM7UUFFaEc7O1dBRUc7UUFDSCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsS0FBZ0IsRUFBRSxFQUFVLEVBQUUsWUFBb0I7WUFDeEUsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDO1NBQ3ZFO1FBRUQ7O1dBRUc7UUFDSCxNQUFNLENBQUMsaUJBQWlCLENBQUMsS0FBZ0IsRUFBRSxFQUFVLEVBQUUsYUFBcUI7WUFDMUUsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRSxFQUFFLFFBQVEsRUFBRSxhQUFhLEVBQUUsQ0FBQyxDQUFDO1NBQ3pFO1FBRUQ7O1dBRUc7UUFDYSxPQUFPLEdBckJaLG1EQUFVLENBcUJXO1FB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QkFBc0IsQ0FBQztnQkFDMUIsTUFBTSxFQUFFLE1BQU07Z0JBQ2QsSUFBSSxFQUFFLElBQUk7YUFDWCxDQUFDLENBQUM7U0FDSjtRQUVPLHNCQUFzQixDQUFDLFdBQXdCO1lBQ3JELElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLElBQUksRUFBRSxFQUFFLENBQUM7Z0JBQ25DLE1BQU0sSUFBSSxLQUFLLENBQUMscURBQXFELENBQUMsQ0FBQztZQUN6RSxDQUFDO1lBQ0QsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7U0FDckM7UUFFTyxpQkFBaUI7WUFDdkIsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7Z0JBQ3pELE9BQU8sU0FBUyxDQUFDO1lBQ25CLENBQUM7WUFFRCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLENBQUM7WUFFL0MsU0FBUyxnQkFBZ0IsQ0FBQyxXQUF3QjtnQkFDaEQsT0FBTztvQkFDTCxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFO29CQUM1QixHQUFHLFdBQVcsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFO2lCQUMvQixDQUFDO1lBQ0osQ0FBQztTQUNGOztZQS9KVSx1REFBVTs7Ozs7QUFBVixnQ0FBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENmbkZsZWV0IH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWdhbWVsaWZ0JztcbmltcG9ydCAqIGFzIGlhbSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtaWFtJztcbmltcG9ydCAqIGFzIGNkayBmcm9tICdhd3MtY2RrLWxpYi9jb3JlJztcbmltcG9ydCB7IG1lbW9pemVkR2V0dGVyIH0gZnJvbSAnYXdzLWNkay1saWIvY29yZS9saWIvaGVscGVycy1pbnRlcm5hbCc7XG5pbXBvcnQgeyBhZGRDb25zdHJ1Y3RNZXRhZGF0YSwgTWV0aG9kTWV0YWRhdGEgfSBmcm9tICdhd3MtY2RrLWxpYi9jb3JlL2xpYi9tZXRhZGF0YS1yZXNvdXJjZSc7XG5pbXBvcnQgeyBwcm9wZXJ0eUluamVjdGFibGUgfSBmcm9tICdhd3MtY2RrLWxpYi9jb3JlL2xpYi9wcm9wLWluamVjdGFibGUnO1xuaW1wb3J0IHR5cGUgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB0eXBlIHsgSUJ1aWxkIH0gZnJvbSAnLi9idWlsZCc7XG5pbXBvcnQgdHlwZSB7IEZsZWV0UHJvcHMsIElGbGVldCB9IGZyb20gJy4vZmxlZXQtYmFzZSc7XG5pbXBvcnQgeyBGbGVldEJhc2UgfSBmcm9tICcuL2ZsZWV0LWJhc2UnO1xuaW1wb3J0IHR5cGUgeyBQb3J0LCBJUGVlciwgSW5ncmVzc1J1bGUgfSBmcm9tICcuL2luZ3Jlc3MtcnVsZSc7XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIEdhbWVMaWZ0IEZsZWV0IHVzZWQgdG8gcnVuIGEgY3VzdG9tIGdhbWUgYnVpbGQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSUJ1aWxkRmxlZXQgZXh0ZW5kcyBJRmxlZXQge31cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBhIG5ldyBHYW1lbGlmdCBidWlsZCBmbGVldFxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJ1aWxkRmxlZXRQcm9wcyBleHRlbmRzIEZsZWV0UHJvcHMge1xuICAvKipcbiAgICogQSBidWlsZCB0byBiZSBkZXBsb3llZCBvbiB0aGUgZmxlZXQuXG4gICAqIFRoZSBidWlsZCBtdXN0IGhhdmUgYmVlbiBzdWNjZXNzZnVsbHkgdXBsb2FkZWQgdG8gQW1hem9uIEdhbWVMaWZ0IGFuZCBiZSBpbiBhIGBSRUFEWWAgc3RhdHVzLlxuICAgKlxuICAgKiBUaGlzIGZsZWV0IHNldHRpbmcgY2Fubm90IGJlIGNoYW5nZWQgb25jZSB0aGUgZmxlZXQgaXMgY3JlYXRlZC5cbiAgICovXG4gIHJlYWRvbmx5IGNvbnRlbnQ6IElCdWlsZDtcblxuICAvKipcbiAgICogVGhlIGFsbG93ZWQgSVAgYWRkcmVzcyByYW5nZXMgYW5kIHBvcnQgc2V0dGluZ3MgdGhhdCBhbGxvdyBpbmJvdW5kIHRyYWZmaWMgdG8gYWNjZXNzIGdhbWUgc2Vzc2lvbnMgb24gdGhpcyBmbGVldC5cbiAgICpcbiAgICogVGhpcyBwcm9wZXJ0eSBtdXN0IGJlIHNldCBiZWZvcmUgcGxheWVycyBjYW4gY29ubmVjdCB0byBnYW1lIHNlc3Npb25zLlxuICAgKlxuICAgKiBAZGVmYXVsdCBubyBpbmJvdW5kIHRyYWZmaWMgYWxsb3dlZFxuICAgKi9cbiAgcmVhZG9ubHkgaW5ncmVzc1J1bGVzPzogSW5ncmVzc1J1bGVbXTtcbn1cblxuLyoqXG4gKiBBIGZsZWV0IGNvbnRhaW5zIEFtYXpvbiBFbGFzdGljIENvbXB1dGUgQ2xvdWQgKEFtYXpvbiBFQzIpIGluc3RhbmNlcyB0aGF0IEdhbWVMaWZ0IGhvc3RzLlxuICogQSBmbGVldCB1c2VzIHRoZSBjb25maWd1cmF0aW9uIGFuZCBzY2FsaW5nIGxvZ2ljIHRoYXQgeW91IGRlZmluZSB0byBydW4geW91ciBnYW1lIHNlcnZlciBidWlsZC4gWW91IGNhbiB1c2UgYSBmbGVldCBkaXJlY3RseSB3aXRob3V0IGEgcXVldWUuXG4gKiBZb3UgY2FuIGFsc28gYXNzb2NpYXRlIG11bHRpcGxlIGZsZWV0cyB3aXRoIGEgR2FtZUxpZnQgcXVldWUuXG4gKlxuICogRm9yIGV4YW1wbGUsIHlvdSBjYW4gdXNlIFNwb3QgSW5zdGFuY2UgZmxlZXRzIGNvbmZpZ3VyZWQgd2l0aCB5b3VyIHByZWZlcnJlZCBsb2NhdGlvbnMsIGFsb25nIHdpdGggYSBiYWNrdXAgT24tRGVtYW5kIEluc3RhbmNlIGZsZWV0IHdpdGggdGhlIHNhbWUgbG9jYXRpb25zLlxuICogVXNpbmcgbXVsdGlwbGUgU3BvdCBJbnN0YW5jZSBmbGVldHMgb2YgZGlmZmVyZW50IGluc3RhbmNlIHR5cGVzIHJlZHVjZXMgdGhlIGNoYW5jZSBvZiBuZWVkaW5nIE9uLURlbWFuZCBJbnN0YW5jZSBwbGFjZW1lbnQuXG4gKlxuICogQHJlc291cmNlIEFXUzo6R2FtZUxpZnQ6OkZsZWV0XG4gKi9cbkBwcm9wZXJ0eUluamVjdGFibGVcbmV4cG9ydCBjbGFzcyBCdWlsZEZsZWV0IGV4dGVuZHMgRmxlZXRCYXNlIGltcGxlbWVudHMgSUJ1aWxkRmxlZXQge1xuICAvKiogVW5pcXVlbHkgaWRlbnRpZmllcyB0aGlzIGNsYXNzLiAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFBST1BFUlRZX0lOSkVDVElPTl9JRDogc3RyaW5nID0gJ0Bhd3MtY2RrLmF3cy1nYW1lbGlmdC1hbHBoYS5CdWlsZEZsZWV0JztcblxuICAvKipcbiAgICogSW1wb3J0IGFuIGV4aXN0aW5nIGZsZWV0IGZyb20gaXRzIGlkZW50aWZpZXIuXG4gICAqL1xuICBzdGF0aWMgZnJvbUJ1aWxkRmxlZXRJZChzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBidWlsZEZsZWV0SWQ6IHN0cmluZyk6IElCdWlsZEZsZWV0IHtcbiAgICByZXR1cm4gdGhpcy5mcm9tRmxlZXRBdHRyaWJ1dGVzKHNjb3BlLCBpZCwgeyBmbGVldElkOiBidWlsZEZsZWV0SWQgfSk7XG4gIH1cblxuICAvKipcbiAgICogSW1wb3J0IGFuIGV4aXN0aW5nIGZsZWV0IGZyb20gaXRzIEFSTi5cbiAgICovXG4gIHN0YXRpYyBmcm9tQnVpbGRGbGVldEFybihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBidWlsZEZsZWV0QXJuOiBzdHJpbmcpOiBJQnVpbGRGbGVldCB7XG4gICAgcmV0dXJuIHRoaXMuZnJvbUZsZWV0QXR0cmlidXRlcyhzY29wZSwgaWQsIHsgZmxlZXRBcm46IGJ1aWxkRmxlZXRBcm4gfSk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGJ1aWxkIGNvbnRlbnQgb2YgdGhlIGZsZWV0XG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgY29udGVudDogSUJ1aWxkO1xuXG4gIC8qKlxuICAgKiBUaGUgSUFNIHJvbGUgR2FtZUxpZnQgYXNzdW1lcyBieSBmbGVldCBpbnN0YW5jZXMgdG8gYWNjZXNzIEFXUyByZXNzb3VyY2VzLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHJvbGU6IGlhbS5JUm9sZTtcblxuICAvKipcbiAgICogVGhlIHByaW5jaXBhbCB0aGlzIEdhbWVMaWZ0IGZsZWV0IGlzIHVzaW5nLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGdyYW50UHJpbmNpcGFsOiBpYW0uSVByaW5jaXBhbDtcblxuICBwcml2YXRlIHJlYWRvbmx5IGluZ3Jlc3NSdWxlczogSW5ncmVzc1J1bGVbXSA9IFtdO1xuICBwcml2YXRlIHJlc291cmNlOiBDZm5GbGVldDtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogQnVpbGRGbGVldFByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICBwaHlzaWNhbE5hbWU6IHByb3BzLmZsZWV0TmFtZSxcbiAgICB9KTtcbiAgICAvLyBFbmhhbmNlZCBDREsgQW5hbHl0aWNzIFRlbGVtZXRyeVxuICAgIGFkZENvbnN0cnVjdE1ldGFkYXRhKHRoaXMsIHByb3BzKTtcblxuICAgIGlmICghY2RrLlRva2VuLmlzVW5yZXNvbHZlZChwcm9wcy5mbGVldE5hbWUpKSB7XG4gICAgICBpZiAocHJvcHMuZmxlZXROYW1lLmxlbmd0aCA+IDEwMjQpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBGbGVldCBuYW1lIGNhbiBub3QgYmUgbG9uZ2VyIHRoYW4gMTAyNCBjaGFyYWN0ZXJzIGJ1dCBoYXMgJHtwcm9wcy5mbGVldE5hbWUubGVuZ3RofSBjaGFyYWN0ZXJzLmApO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChwcm9wcy5kZXNjcmlwdGlvbiAmJiAhY2RrLlRva2VuLmlzVW5yZXNvbHZlZChwcm9wcy5kZXNjcmlwdGlvbikpIHtcbiAgICAgIGlmIChwcm9wcy5kZXNjcmlwdGlvbi5sZW5ndGggPiAxMDI0KSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgRmxlZXQgZGVzY3JpcHRpb24gY2FuIG5vdCBiZSBsb25nZXIgdGhhbiAxMDI0IGNoYXJhY3RlcnMgYnV0IGhhcyAke3Byb3BzLmRlc2NyaXB0aW9uLmxlbmd0aH0gY2hhcmFjdGVycy5gKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAocHJvcHMubWluU2l6ZSAmJiBwcm9wcy5taW5TaXplIDwgMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBUaGUgbWluaW11bSBudW1iZXIgb2YgaW5zdGFuY2VzIGFsbG93ZWQgaW4gdGhlIEZsZWV0IGNhbm5vdCBiZSBsb3dlciB0aGFuIDAsIGdpdmVuICR7cHJvcHMubWluU2l6ZX1gKTtcbiAgICB9XG5cbiAgICBpZiAocHJvcHMubWF4U2l6ZSAmJiBwcm9wcy5tYXhTaXplIDwgMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBUaGUgbWF4aW11bSBudW1iZXIgb2YgaW5zdGFuY2VzIGFsbG93ZWQgaW4gdGhlIEZsZWV0IGNhbm5vdCBiZSBsb3dlciB0aGFuIDAsIGdpdmVuICR7cHJvcHMubWF4U2l6ZX1gKTtcbiAgICB9XG5cbiAgICBpZiAocHJvcHMucGVlclZwYykge1xuICAgICAgdGhpcy53YXJuVnBjUGVlcmluZ0F1dGhvcml6YXRpb25zKHRoaXMpO1xuICAgIH1cblxuICAgIC8vIEFkZCBhbGwgbG9jYXRpb25zXG4gICAgaWYgKHByb3BzLmxvY2F0aW9ucyAmJiBwcm9wcy5sb2NhdGlvbnM/Lmxlbmd0aCA+IDEwMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyBtb3JlIHRoYW4gMTAwIGxvY2F0aW9ucyBhcmUgYWxsb3dlZCBwZXIgZmxlZXQsIGdpdmVuICR7cHJvcHMubG9jYXRpb25zLmxlbmd0aH1gKTtcbiAgICB9XG4gICAgKHByb3BzLmxvY2F0aW9ucyB8fCBbXSkuZm9yRWFjaCh0aGlzLmFkZEludGVybmFsTG9jYXRpb24uYmluZCh0aGlzKSk7XG5cbiAgICAvLyBBZGQgYWxsIEluZ3Jlc3MgcnVsZXNcbiAgICBpZiAocHJvcHMuaW5ncmVzc1J1bGVzICYmIHByb3BzLmluZ3Jlc3NSdWxlcz8ubGVuZ3RoID4gNTApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gbW9yZSB0aGFuIDUwIGluZ3Jlc3MgcnVsZXMgYXJlIGFsbG93ZWQgcGVyIGZsZWV0LCBnaXZlbiAke3Byb3BzLmluZ3Jlc3NSdWxlcy5sZW5ndGh9YCk7XG4gICAgfVxuICAgIChwcm9wcy5pbmdyZXNzUnVsZXMgfHwgW10pLmZvckVhY2godGhpcy5hZGRJbnRlcm5hbEluZ3Jlc3NSdWxlLmJpbmQodGhpcykpO1xuXG4gICAgdGhpcy5jb250ZW50ID0gcHJvcHMuY29udGVudDtcbiAgICB0aGlzLnJvbGUgPSBwcm9wcy5yb2xlID8/IG5ldyBpYW0uUm9sZSh0aGlzLCAnU2VydmljZVJvbGUnLCB7XG4gICAgICBhc3N1bWVkQnk6IG5ldyBpYW0uQ29tcG9zaXRlUHJpbmNpcGFsKFxuICAgICAgICBuZXcgaWFtLlNlcnZpY2VQcmluY2lwYWwoJ2dhbWVsaWZ0LmFtYXpvbmF3cy5jb20nKSxcbiAgICAgICAgbmV3IGlhbS5TZXJ2aWNlUHJpbmNpcGFsKCdlYzIuYW1hem9uYXdzLmNvbScpKSxcbiAgICB9KTtcbiAgICB0aGlzLmdyYW50UHJpbmNpcGFsID0gdGhpcy5yb2xlO1xuXG4gICAgdGhpcy5yZXNvdXJjZSA9IG5ldyBDZm5GbGVldCh0aGlzLCAnUmVzb3VyY2UnLCB7XG4gICAgICBidWlsZElkOiB0aGlzLmNvbnRlbnQuYnVpbGRJZCxcbiAgICAgIGNlcnRpZmljYXRlQ29uZmlndXJhdGlvbjoge1xuICAgICAgICBjZXJ0aWZpY2F0ZVR5cGU6IHByb3BzLnVzZUNlcnRpZmljYXRlID8gJ0dFTkVSQVRFRCc6ICdESVNBQkxFRCcsXG4gICAgICB9LFxuICAgICAgZGVzY3JpcHRpb246IHByb3BzLmRlc2NyaXB0aW9uLFxuICAgICAgZGVzaXJlZEVjMkluc3RhbmNlczogcHJvcHMuZGVzaXJlZENhcGFjaXR5LFxuICAgICAgZWMySW5ib3VuZFBlcm1pc3Npb25zOiBjZGsuTGF6eS5hbnkoeyBwcm9kdWNlOiAoKSA9PiB0aGlzLnBhcnNlSW5ncmVzc1J1bGVzKCkgfSksXG4gICAgICBlYzJJbnN0YW5jZVR5cGU6IHByb3BzLmluc3RhbmNlVHlwZS50b1N0cmluZygpLFxuICAgICAgZmxlZXRUeXBlOiBwcm9wcy51c2VTcG90ID8gJ1NQT1QnIDogJ09OX0RFTUFORCcsXG4gICAgICBpbnN0YW5jZVJvbGVBcm46IHRoaXMucm9sZS5yb2xlQXJuLFxuICAgICAgbG9jYXRpb25zOiBjZGsuTGF6eS5hbnkoeyBwcm9kdWNlOiAoKSA9PiB0aGlzLnBhcnNlTG9jYXRpb25zKCkgfSksXG4gICAgICBtYXhTaXplOiBwcm9wcy5tYXhTaXplID8gcHJvcHMubWF4U2l6ZSA6IDEsXG4gICAgICBtaW5TaXplOiBwcm9wcy5taW5TaXplID8gcHJvcHMubWluU2l6ZSA6IDAsXG4gICAgICBuYW1lOiB0aGlzLnBoeXNpY2FsTmFtZSxcbiAgICAgIG5ld0dhbWVTZXNzaW9uUHJvdGVjdGlvblBvbGljeTogcHJvcHMucHJvdGVjdE5ld0dhbWVTZXNzaW9uID8gJ0Z1bGxQcm90ZWN0aW9uJyA6ICdOb1Byb3RlY3Rpb24nLFxuICAgICAgcGVlclZwY0F3c0FjY291bnRJZDogcHJvcHMucGVlclZwYyAmJiBwcm9wcy5wZWVyVnBjLmVudi5hY2NvdW50LFxuICAgICAgcGVlclZwY0lkOiBwcm9wcy5wZWVyVnBjICYmIHByb3BzLnBlZXJWcGMudnBjSWQsXG4gICAgICByZXNvdXJjZUNyZWF0aW9uTGltaXRQb2xpY3k6IHRoaXMucGFyc2VSZXNvdXJjZUNyZWF0aW9uTGltaXRQb2xpY3kocHJvcHMpLFxuICAgICAgcnVudGltZUNvbmZpZ3VyYXRpb246IHRoaXMucGFyc2VSdW50aW1lQ29uZmlndXJhdGlvbihwcm9wcyksXG4gICAgfSk7XG4gIH1cblxuICBAbWVtb2l6ZWRHZXR0ZXJcbiAgcHVibGljIGdldCBmbGVldElkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0UmVzb3VyY2VOYW1lQXR0cmlidXRlKHRoaXMucmVzb3VyY2UucmVmKTtcbiAgfVxuXG4gIEBtZW1vaXplZEdldHRlclxuICBwdWJsaWMgZ2V0IGZsZWV0QXJuKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGNkay5TdGFjay5vZih0aGlzKS5mb3JtYXRBcm4oe1xuICAgICAgc2VydmljZTogJ2dhbWVsaWZ0JyxcbiAgICAgIHJlc291cmNlOiAnZmxlZXQnLFxuICAgICAgcmVzb3VyY2VOYW1lOiB0aGlzLmZsZWV0SWQsXG4gICAgICBhcm5Gb3JtYXQ6IGNkay5Bcm5Gb3JtYXQuU0xBU0hfUkVTT1VSQ0VfTkFNRSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGFuIGluZ3Jlc3MgcnVsZSB0byBhbGxvdyBpbmJvdW5kIHRyYWZmaWMgdG8gYWNjZXNzIGdhbWUgc2Vzc2lvbnMgb24gdGhpcyBmbGVldC5cbiAgICpcbiAgICogQHBhcmFtIHNvdXJjZSBBIHJhbmdlIG9mIGFsbG93ZWQgSVAgYWRkcmVzc2VzXG4gICAqIEBwYXJhbSBwb3J0IFRoZSBwb3J0IHJhbmdlIHVzZWQgZm9yIGluZ3Jlc3MgdHJhZmZpY1xuICAgKi9cbiAgQE1ldGhvZE1ldGFkYXRhKClcbiAgcHVibGljIGFkZEluZ3Jlc3NSdWxlKHNvdXJjZTogSVBlZXIsIHBvcnQ6IFBvcnQpIHtcbiAgICB0aGlzLmFkZEludGVybmFsSW5ncmVzc1J1bGUoe1xuICAgICAgc291cmNlOiBzb3VyY2UsXG4gICAgICBwb3J0OiBwb3J0LFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBhZGRJbnRlcm5hbEluZ3Jlc3NSdWxlKGluZ3Jlc3NSdWxlOiBJbmdyZXNzUnVsZSkge1xuICAgIGlmICh0aGlzLmluZ3Jlc3NSdWxlcy5sZW5ndGggPT0gNTApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignTm8gbW9yZSB0aGFuIDUwIGluZ3Jlc3MgcnVsZXMgYXJlIGFsbG93ZWQgcGVyIGZsZWV0Jyk7XG4gICAgfVxuICAgIHRoaXMuaW5ncmVzc1J1bGVzLnB1c2goaW5ncmVzc1J1bGUpO1xuICB9XG5cbiAgcHJpdmF0ZSBwYXJzZUluZ3Jlc3NSdWxlcygpOiBDZm5GbGVldC5JcFBlcm1pc3Npb25Qcm9wZXJ0eVtdIHwgdW5kZWZpbmVkIHtcbiAgICBpZiAoIXRoaXMuaW5ncmVzc1J1bGVzIHx8IHRoaXMuaW5ncmVzc1J1bGVzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5pbmdyZXNzUnVsZXMubWFwKHBhcnNlSW5ncmVzc1J1bGUpO1xuXG4gICAgZnVuY3Rpb24gcGFyc2VJbmdyZXNzUnVsZShpbmdyZXNzUnVsZTogSW5ncmVzc1J1bGUpOiBDZm5GbGVldC5JcFBlcm1pc3Npb25Qcm9wZXJ0eSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAuLi5pbmdyZXNzUnVsZS5wb3J0LnRvSnNvbigpLFxuICAgICAgICAuLi5pbmdyZXNzUnVsZS5zb3VyY2UudG9Kc29uKCksXG4gICAgICB9O1xuICAgIH1cbiAgfVxufVxuIl19
|
|
278
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGQtZmxlZXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJidWlsZC1mbGVldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwyREFBb0Q7QUFDcEQseURBQTJDO0FBQzNDLHNEQUF3QztBQUN4Qyw0RUFBdUU7QUFDdkUsOEVBQThGO0FBQzlGLDBFQUEwRTtBQUkxRSw2Q0FBeUM7QUE4QnpDOzs7Ozs7Ozs7R0FTRztJQUVVLFVBQVU7NEJBRHRCLG9DQUFrQjs7OztzQkFDYSxzQkFBUzs7Ozs7MEJBQWpCLFNBQVEsV0FBUzs7Ozt1Q0FxSHRDLGlDQUFjO3dDQUtkLGlDQUFjOzBDQWdCZCxJQUFBLGtDQUFjLEdBQUU7WUFwQmpCLDRLQUFXLE9BQU8sNkRBRWpCO1lBR0QsK0tBQVcsUUFBUSw2REFPbEI7WUFTRCw2TEFBTyxjQUFjLDZEQUtwQjtZQWhKSCw2S0F1S0M7Ozs7O1FBdEtDLHNDQUFzQztRQUMvQixNQUFNLENBQVUscUJBQXFCLEdBQVcsd0NBQXdDLENBQUM7UUFFaEc7O1dBRUc7UUFDSCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsS0FBZ0IsRUFBRSxFQUFVLEVBQUUsWUFBb0I7WUFDeEUsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDO1NBQ3ZFO1FBRUQ7O1dBRUc7UUFDSCxNQUFNLENBQUMsaUJBQWlCLENBQUMsS0FBZ0IsRUFBRSxFQUFVLEVBQUUsYUFBcUI7WUFDMUUsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRSxFQUFFLFFBQVEsRUFBRSxhQUFhLEVBQUUsQ0FBQyxDQUFDO1NBQ3pFO1FBRUQ7O1dBRUc7UUFDYSxPQUFPLEdBckJaLG1EQUFVLENBcUJXO1FB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O1dBS0c7UUFFSSxjQUFjLENBQUMsTUFBYSxFQUFFLElBQVU7Ozs7Ozs7Ozs7O1lBQzdDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQztnQkFDMUIsTUFBTSxFQUFFLE1BQU07Z0JBQ2QsSUFBSSxFQUFFLElBQUk7YUFDWCxDQUFDLENBQUM7U0FDSjtRQUVPLHNCQUFzQixDQUFDLFdBQXdCO1lBQ3JELElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLElBQUksRUFBRSxFQUFFLENBQUM7Z0JBQ25DLE1BQU0sSUFBSSxLQUFLLENBQUMscURBQXFELENBQUMsQ0FBQztZQUN6RSxDQUFDO1lBQ0QsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7U0FDckM7UUFFTyxpQkFBaUI7WUFDdkIsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7Z0JBQ3pELE9BQU8sU0FBUyxDQUFDO1lBQ25CLENBQUM7WUFFRCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLENBQUM7WUFFL0MsU0FBUyxnQkFBZ0IsQ0FBQyxXQUF3QjtnQkFDaEQsT0FBTztvQkFDTCxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFO29CQUM1QixHQUFHLFdBQVcsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFO2lCQUMvQixDQUFDO1lBQ0osQ0FBQztTQUNGOztZQXRLVSx1REFBVTs7Ozs7QUFBVixnQ0FBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENmbkZsZWV0IH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWdhbWVsaWZ0JztcbmltcG9ydCAqIGFzIGlhbSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtaWFtJztcbmltcG9ydCAqIGFzIGNkayBmcm9tICdhd3MtY2RrLWxpYi9jb3JlJztcbmltcG9ydCB7IG1lbW9pemVkR2V0dGVyIH0gZnJvbSAnYXdzLWNkay1saWIvY29yZS9saWIvaGVscGVycy1pbnRlcm5hbCc7XG5pbXBvcnQgeyBhZGRDb25zdHJ1Y3RNZXRhZGF0YSwgTWV0aG9kTWV0YWRhdGEgfSBmcm9tICdhd3MtY2RrLWxpYi9jb3JlL2xpYi9tZXRhZGF0YS1yZXNvdXJjZSc7XG5pbXBvcnQgeyBwcm9wZXJ0eUluamVjdGFibGUgfSBmcm9tICdhd3MtY2RrLWxpYi9jb3JlL2xpYi9wcm9wLWluamVjdGFibGUnO1xuaW1wb3J0IHR5cGUgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB0eXBlIHsgSUJ1aWxkIH0gZnJvbSAnLi9idWlsZCc7XG5pbXBvcnQgdHlwZSB7IEZsZWV0UHJvcHMsIElGbGVldCB9IGZyb20gJy4vZmxlZXQtYmFzZSc7XG5pbXBvcnQgeyBGbGVldEJhc2UgfSBmcm9tICcuL2ZsZWV0LWJhc2UnO1xuaW1wb3J0IHR5cGUgeyBQb3J0LCBJUGVlciwgSW5ncmVzc1J1bGUgfSBmcm9tICcuL2luZ3Jlc3MtcnVsZSc7XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIEdhbWVMaWZ0IEZsZWV0IHVzZWQgdG8gcnVuIGEgY3VzdG9tIGdhbWUgYnVpbGQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSUJ1aWxkRmxlZXQgZXh0ZW5kcyBJRmxlZXQge31cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBhIG5ldyBHYW1lbGlmdCBidWlsZCBmbGVldFxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJ1aWxkRmxlZXRQcm9wcyBleHRlbmRzIEZsZWV0UHJvcHMge1xuICAvKipcbiAgICogQSBidWlsZCB0byBiZSBkZXBsb3llZCBvbiB0aGUgZmxlZXQuXG4gICAqIFRoZSBidWlsZCBtdXN0IGhhdmUgYmVlbiBzdWNjZXNzZnVsbHkgdXBsb2FkZWQgdG8gQW1hem9uIEdhbWVMaWZ0IGFuZCBiZSBpbiBhIGBSRUFEWWAgc3RhdHVzLlxuICAgKlxuICAgKiBUaGlzIGZsZWV0IHNldHRpbmcgY2Fubm90IGJlIGNoYW5nZWQgb25jZSB0aGUgZmxlZXQgaXMgY3JlYXRlZC5cbiAgICovXG4gIHJlYWRvbmx5IGNvbnRlbnQ6IElCdWlsZDtcblxuICAvKipcbiAgICogVGhlIGFsbG93ZWQgSVAgYWRkcmVzcyByYW5nZXMgYW5kIHBvcnQgc2V0dGluZ3MgdGhhdCBhbGxvdyBpbmJvdW5kIHRyYWZmaWMgdG8gYWNjZXNzIGdhbWUgc2Vzc2lvbnMgb24gdGhpcyBmbGVldC5cbiAgICpcbiAgICogVGhpcyBwcm9wZXJ0eSBtdXN0IGJlIHNldCBiZWZvcmUgcGxheWVycyBjYW4gY29ubmVjdCB0byBnYW1lIHNlc3Npb25zLlxuICAgKlxuICAgKiBAZGVmYXVsdCBubyBpbmJvdW5kIHRyYWZmaWMgYWxsb3dlZFxuICAgKi9cbiAgcmVhZG9ubHkgaW5ncmVzc1J1bGVzPzogSW5ncmVzc1J1bGVbXTtcbn1cblxuLyoqXG4gKiBBIGZsZWV0IGNvbnRhaW5zIEFtYXpvbiBFbGFzdGljIENvbXB1dGUgQ2xvdWQgKEFtYXpvbiBFQzIpIGluc3RhbmNlcyB0aGF0IEdhbWVMaWZ0IGhvc3RzLlxuICogQSBmbGVldCB1c2VzIHRoZSBjb25maWd1cmF0aW9uIGFuZCBzY2FsaW5nIGxvZ2ljIHRoYXQgeW91IGRlZmluZSB0byBydW4geW91ciBnYW1lIHNlcnZlciBidWlsZC4gWW91IGNhbiB1c2UgYSBmbGVldCBkaXJlY3RseSB3aXRob3V0IGEgcXVldWUuXG4gKiBZb3UgY2FuIGFsc28gYXNzb2NpYXRlIG11bHRpcGxlIGZsZWV0cyB3aXRoIGEgR2FtZUxpZnQgcXVldWUuXG4gKlxuICogRm9yIGV4YW1wbGUsIHlvdSBjYW4gdXNlIFNwb3QgSW5zdGFuY2UgZmxlZXRzIGNvbmZpZ3VyZWQgd2l0aCB5b3VyIHByZWZlcnJlZCBsb2NhdGlvbnMsIGFsb25nIHdpdGggYSBiYWNrdXAgT24tRGVtYW5kIEluc3RhbmNlIGZsZWV0IHdpdGggdGhlIHNhbWUgbG9jYXRpb25zLlxuICogVXNpbmcgbXVsdGlwbGUgU3BvdCBJbnN0YW5jZSBmbGVldHMgb2YgZGlmZmVyZW50IGluc3RhbmNlIHR5cGVzIHJlZHVjZXMgdGhlIGNoYW5jZSBvZiBuZWVkaW5nIE9uLURlbWFuZCBJbnN0YW5jZSBwbGFjZW1lbnQuXG4gKlxuICogQHJlc291cmNlIEFXUzo6R2FtZUxpZnQ6OkZsZWV0XG4gKi9cbkBwcm9wZXJ0eUluamVjdGFibGVcbmV4cG9ydCBjbGFzcyBCdWlsZEZsZWV0IGV4dGVuZHMgRmxlZXRCYXNlIGltcGxlbWVudHMgSUJ1aWxkRmxlZXQge1xuICAvKiogVW5pcXVlbHkgaWRlbnRpZmllcyB0aGlzIGNsYXNzLiAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFBST1BFUlRZX0lOSkVDVElPTl9JRDogc3RyaW5nID0gJ0Bhd3MtY2RrLmF3cy1nYW1lbGlmdC1hbHBoYS5CdWlsZEZsZWV0JztcblxuICAvKipcbiAgICogSW1wb3J0IGFuIGV4aXN0aW5nIGZsZWV0IGZyb20gaXRzIGlkZW50aWZpZXIuXG4gICAqL1xuICBzdGF0aWMgZnJvbUJ1aWxkRmxlZXRJZChzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBidWlsZEZsZWV0SWQ6IHN0cmluZyk6IElCdWlsZEZsZWV0IHtcbiAgICByZXR1cm4gdGhpcy5mcm9tRmxlZXRBdHRyaWJ1dGVzKHNjb3BlLCBpZCwgeyBmbGVldElkOiBidWlsZEZsZWV0SWQgfSk7XG4gIH1cblxuICAvKipcbiAgICogSW1wb3J0IGFuIGV4aXN0aW5nIGZsZWV0IGZyb20gaXRzIEFSTi5cbiAgICovXG4gIHN0YXRpYyBmcm9tQnVpbGRGbGVldEFybihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBidWlsZEZsZWV0QXJuOiBzdHJpbmcpOiBJQnVpbGRGbGVldCB7XG4gICAgcmV0dXJuIHRoaXMuZnJvbUZsZWV0QXR0cmlidXRlcyhzY29wZSwgaWQsIHsgZmxlZXRBcm46IGJ1aWxkRmxlZXRBcm4gfSk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGJ1aWxkIGNvbnRlbnQgb2YgdGhlIGZsZWV0XG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgY29udGVudDogSUJ1aWxkO1xuXG4gIC8qKlxuICAgKiBUaGUgSUFNIHJvbGUgR2FtZUxpZnQgYXNzdW1lcyBieSBmbGVldCBpbnN0YW5jZXMgdG8gYWNjZXNzIEFXUyByZXNzb3VyY2VzLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHJvbGU6IGlhbS5JUm9sZTtcblxuICAvKipcbiAgICogVGhlIHByaW5jaXBhbCB0aGlzIEdhbWVMaWZ0IGZsZWV0IGlzIHVzaW5nLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGdyYW50UHJpbmNpcGFsOiBpYW0uSVByaW5jaXBhbDtcblxuICBwcml2YXRlIHJlYWRvbmx5IGluZ3Jlc3NSdWxlczogSW5ncmVzc1J1bGVbXSA9IFtdO1xuICBwcml2YXRlIHJlc291cmNlOiBDZm5GbGVldDtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogQnVpbGRGbGVldFByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICBwaHlzaWNhbE5hbWU6IHByb3BzLmZsZWV0TmFtZSxcbiAgICB9KTtcbiAgICAvLyBFbmhhbmNlZCBDREsgQW5hbHl0aWNzIFRlbGVtZXRyeVxuICAgIGFkZENvbnN0cnVjdE1ldGFkYXRhKHRoaXMsIHByb3BzKTtcblxuICAgIGlmICghY2RrLlRva2VuLmlzVW5yZXNvbHZlZChwcm9wcy5mbGVldE5hbWUpKSB7XG4gICAgICBpZiAocHJvcHMuZmxlZXROYW1lLmxlbmd0aCA+IDEwMjQpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBGbGVldCBuYW1lIGNhbiBub3QgYmUgbG9uZ2VyIHRoYW4gMTAyNCBjaGFyYWN0ZXJzIGJ1dCBoYXMgJHtwcm9wcy5mbGVldE5hbWUubGVuZ3RofSBjaGFyYWN0ZXJzLmApO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChwcm9wcy5kZXNjcmlwdGlvbiAmJiAhY2RrLlRva2VuLmlzVW5yZXNvbHZlZChwcm9wcy5kZXNjcmlwdGlvbikpIHtcbiAgICAgIGlmIChwcm9wcy5kZXNjcmlwdGlvbi5sZW5ndGggPiAxMDI0KSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgRmxlZXQgZGVzY3JpcHRpb24gY2FuIG5vdCBiZSBsb25nZXIgdGhhbiAxMDI0IGNoYXJhY3RlcnMgYnV0IGhhcyAke3Byb3BzLmRlc2NyaXB0aW9uLmxlbmd0aH0gY2hhcmFjdGVycy5gKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAocHJvcHMubWluU2l6ZSAmJiBwcm9wcy5taW5TaXplIDwgMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBUaGUgbWluaW11bSBudW1iZXIgb2YgaW5zdGFuY2VzIGFsbG93ZWQgaW4gdGhlIEZsZWV0IGNhbm5vdCBiZSBsb3dlciB0aGFuIDAsIGdpdmVuICR7cHJvcHMubWluU2l6ZX1gKTtcbiAgICB9XG5cbiAgICBpZiAocHJvcHMubWF4U2l6ZSAmJiBwcm9wcy5tYXhTaXplIDwgMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBUaGUgbWF4aW11bSBudW1iZXIgb2YgaW5zdGFuY2VzIGFsbG93ZWQgaW4gdGhlIEZsZWV0IGNhbm5vdCBiZSBsb3dlciB0aGFuIDAsIGdpdmVuICR7cHJvcHMubWF4U2l6ZX1gKTtcbiAgICB9XG5cbiAgICBpZiAocHJvcHMucGVlclZwYykge1xuICAgICAgdGhpcy53YXJuVnBjUGVlcmluZ0F1dGhvcml6YXRpb25zKHRoaXMpO1xuICAgIH1cblxuICAgIC8vIEFkZCBob21lIHJlZ2lvbiBsb2NhdGlvbiB3aXRoIGNhcGFjaXR5IHNldHRpbmdzXG4gICAgdGhpcy5hZGRJbnRlcm5hbExvY2F0aW9uKHtcbiAgICAgIHJlZ2lvbjogY2RrLlN0YWNrLm9mKHRoaXMpLnJlZ2lvbixcbiAgICAgIGNhcGFjaXR5OiB7XG4gICAgICAgIGRlc2lyZWRDYXBhY2l0eTogcHJvcHMuZGVzaXJlZENhcGFjaXR5LFxuICAgICAgICBtaW5TaXplOiBwcm9wcy5taW5TaXplID8/IDAsXG4gICAgICAgIG1heFNpemU6IHByb3BzLm1heFNpemUgPz8gMSxcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICAvLyBBZGQgYWxsIGxvY2F0aW9uc1xuICAgIGlmIChwcm9wcy5sb2NhdGlvbnMgJiYgcHJvcHMubG9jYXRpb25zPy5sZW5ndGggPiA5OSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyBtb3JlIHRoYW4gOTkgcmVtb3RlIGxvY2F0aW9ucyBhcmUgYWxsb3dlZCBwZXIgZmxlZXQsIGdpdmVuICR7cHJvcHMubG9jYXRpb25zLmxlbmd0aH1gKTtcbiAgICB9XG4gICAgKHByb3BzLmxvY2F0aW9ucyB8fCBbXSkuZm9yRWFjaCh0aGlzLmFkZEludGVybmFsTG9jYXRpb24uYmluZCh0aGlzKSk7XG5cbiAgICAvLyBBZGQgYWxsIEluZ3Jlc3MgcnVsZXNcbiAgICBpZiAocHJvcHMuaW5ncmVzc1J1bGVzICYmIHByb3BzLmluZ3Jlc3NSdWxlcz8ubGVuZ3RoID4gNTApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gbW9yZSB0aGFuIDUwIGluZ3Jlc3MgcnVsZXMgYXJlIGFsbG93ZWQgcGVyIGZsZWV0LCBnaXZlbiAke3Byb3BzLmluZ3Jlc3NSdWxlcy5sZW5ndGh9YCk7XG4gICAgfVxuICAgIChwcm9wcy5pbmdyZXNzUnVsZXMgfHwgW10pLmZvckVhY2godGhpcy5hZGRJbnRlcm5hbEluZ3Jlc3NSdWxlLmJpbmQodGhpcykpO1xuXG4gICAgdGhpcy5jb250ZW50ID0gcHJvcHMuY29udGVudDtcbiAgICB0aGlzLnJvbGUgPSBwcm9wcy5yb2xlID8/IG5ldyBpYW0uUm9sZSh0aGlzLCAnU2VydmljZVJvbGUnLCB7XG4gICAgICBhc3N1bWVkQnk6IG5ldyBpYW0uQ29tcG9zaXRlUHJpbmNpcGFsKFxuICAgICAgICBuZXcgaWFtLlNlcnZpY2VQcmluY2lwYWwoJ2dhbWVsaWZ0LmFtYXpvbmF3cy5jb20nKSxcbiAgICAgICAgbmV3IGlhbS5TZXJ2aWNlUHJpbmNpcGFsKCdlYzIuYW1hem9uYXdzLmNvbScpKSxcbiAgICB9KTtcbiAgICB0aGlzLmdyYW50UHJpbmNpcGFsID0gdGhpcy5yb2xlO1xuXG4gICAgdGhpcy5yZXNvdXJjZSA9IG5ldyBDZm5GbGVldCh0aGlzLCAnUmVzb3VyY2UnLCB7XG4gICAgICBidWlsZElkOiB0aGlzLmNvbnRlbnQuYnVpbGRJZCxcbiAgICAgIGNlcnRpZmljYXRlQ29uZmlndXJhdGlvbjoge1xuICAgICAgICBjZXJ0aWZpY2F0ZVR5cGU6IHByb3BzLnVzZUNlcnRpZmljYXRlID8gJ0dFTkVSQVRFRCc6ICdESVNBQkxFRCcsXG4gICAgICB9LFxuICAgICAgZGVzY3JpcHRpb246IHByb3BzLmRlc2NyaXB0aW9uLFxuICAgICAgZWMySW5ib3VuZFBlcm1pc3Npb25zOiBjZGsuTGF6eS5hbnkoeyBwcm9kdWNlOiAoKSA9PiB0aGlzLnBhcnNlSW5ncmVzc1J1bGVzKCkgfSksXG4gICAgICBlYzJJbnN0YW5jZVR5cGU6IHByb3BzLmluc3RhbmNlVHlwZS50b1N0cmluZygpLFxuICAgICAgZmxlZXRUeXBlOiBwcm9wcy51c2VTcG90ID8gJ1NQT1QnIDogJ09OX0RFTUFORCcsXG4gICAgICBpbnN0YW5jZVJvbGVBcm46IHRoaXMucm9sZS5yb2xlQXJuLFxuICAgICAgbG9jYXRpb25zOiBjZGsuTGF6eS5hbnkoeyBwcm9kdWNlOiAoKSA9PiB0aGlzLnBhcnNlTG9jYXRpb25zKCkgfSksXG4gICAgICBuYW1lOiB0aGlzLnBoeXNpY2FsTmFtZSxcbiAgICAgIG5ld0dhbWVTZXNzaW9uUHJvdGVjdGlvblBvbGljeTogcHJvcHMucHJvdGVjdE5ld0dhbWVTZXNzaW9uID8gJ0Z1bGxQcm90ZWN0aW9uJyA6ICdOb1Byb3RlY3Rpb24nLFxuICAgICAgcGVlclZwY0F3c0FjY291bnRJZDogcHJvcHMucGVlclZwYyAmJiBwcm9wcy5wZWVyVnBjLmVudi5hY2NvdW50LFxuICAgICAgcGVlclZwY0lkOiBwcm9wcy5wZWVyVnBjICYmIHByb3BzLnBlZXJWcGMudnBjSWQsXG4gICAgICByZXNvdXJjZUNyZWF0aW9uTGltaXRQb2xpY3k6IHRoaXMucGFyc2VSZXNvdXJjZUNyZWF0aW9uTGltaXRQb2xpY3kocHJvcHMpLFxuICAgICAgcnVudGltZUNvbmZpZ3VyYXRpb246IHRoaXMucGFyc2VSdW50aW1lQ29uZmlndXJhdGlvbihwcm9wcyksXG4gICAgfSk7XG4gIH1cblxuICBAbWVtb2l6ZWRHZXR0ZXJcbiAgcHVibGljIGdldCBmbGVldElkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0UmVzb3VyY2VOYW1lQXR0cmlidXRlKHRoaXMucmVzb3VyY2UucmVmKTtcbiAgfVxuXG4gIEBtZW1vaXplZEdldHRlclxuICBwdWJsaWMgZ2V0IGZsZWV0QXJuKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGNkay5TdGFjay5vZih0aGlzKS5mb3JtYXRBcm4oe1xuICAgICAgc2VydmljZTogJ2dhbWVsaWZ0JyxcbiAgICAgIHJlc291cmNlOiAnZmxlZXQnLFxuICAgICAgcmVzb3VyY2VOYW1lOiB0aGlzLmZsZWV0SWQsXG4gICAgICBhcm5Gb3JtYXQ6IGNkay5Bcm5Gb3JtYXQuU0xBU0hfUkVTT1VSQ0VfTkFNRSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGFuIGluZ3Jlc3MgcnVsZSB0byBhbGxvdyBpbmJvdW5kIHRyYWZmaWMgdG8gYWNjZXNzIGdhbWUgc2Vzc2lvbnMgb24gdGhpcyBmbGVldC5cbiAgICpcbiAgICogQHBhcmFtIHNvdXJjZSBBIHJhbmdlIG9mIGFsbG93ZWQgSVAgYWRkcmVzc2VzXG4gICAqIEBwYXJhbSBwb3J0IFRoZSBwb3J0IHJhbmdlIHVzZWQgZm9yIGluZ3Jlc3MgdHJhZmZpY1xuICAgKi9cbiAgQE1ldGhvZE1ldGFkYXRhKClcbiAgcHVibGljIGFkZEluZ3Jlc3NSdWxlKHNvdXJjZTogSVBlZXIsIHBvcnQ6IFBvcnQpIHtcbiAgICB0aGlzLmFkZEludGVybmFsSW5ncmVzc1J1bGUoe1xuICAgICAgc291cmNlOiBzb3VyY2UsXG4gICAgICBwb3J0OiBwb3J0LFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBhZGRJbnRlcm5hbEluZ3Jlc3NSdWxlKGluZ3Jlc3NSdWxlOiBJbmdyZXNzUnVsZSkge1xuICAgIGlmICh0aGlzLmluZ3Jlc3NSdWxlcy5sZW5ndGggPT0gNTApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignTm8gbW9yZSB0aGFuIDUwIGluZ3Jlc3MgcnVsZXMgYXJlIGFsbG93ZWQgcGVyIGZsZWV0Jyk7XG4gICAgfVxuICAgIHRoaXMuaW5ncmVzc1J1bGVzLnB1c2goaW5ncmVzc1J1bGUpO1xuICB9XG5cbiAgcHJpdmF0ZSBwYXJzZUluZ3Jlc3NSdWxlcygpOiBDZm5GbGVldC5JcFBlcm1pc3Npb25Qcm9wZXJ0eVtdIHwgdW5kZWZpbmVkIHtcbiAgICBpZiAoIXRoaXMuaW5ncmVzc1J1bGVzIHx8IHRoaXMuaW5ncmVzc1J1bGVzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5pbmdyZXNzUnVsZXMubWFwKHBhcnNlSW5ncmVzc1J1bGUpO1xuXG4gICAgZnVuY3Rpb24gcGFyc2VJbmdyZXNzUnVsZShpbmdyZXNzUnVsZTogSW5ncmVzc1J1bGUpOiBDZm5GbGVldC5JcFBlcm1pc3Npb25Qcm9wZXJ0eSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAuLi5pbmdyZXNzUnVsZS5wb3J0LnRvSnNvbigpLFxuICAgICAgICAuLi5pbmdyZXNzUnVsZS5zb3VyY2UudG9Kc29uKCksXG4gICAgICB9O1xuICAgIH1cbiAgfVxufVxuIl19
|
package/lib/build.js
CHANGED
|
@@ -81,7 +81,7 @@ const content_1 = require("./content");
|
|
|
81
81
|
* Base class for new and imported GameLift server build.
|
|
82
82
|
*/
|
|
83
83
|
class BuildBase extends cdk.Resource {
|
|
84
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.BuildBase", version: "2.
|
|
84
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.BuildBase", version: "2.262.0-alpha.0" };
|
|
85
85
|
}
|
|
86
86
|
exports.BuildBase = BuildBase;
|
|
87
87
|
/**
|
|
@@ -143,7 +143,7 @@ let Build = (() => {
|
|
|
143
143
|
Build = _classThis = _classDescriptor.value;
|
|
144
144
|
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
145
145
|
}
|
|
146
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.Build", version: "2.
|
|
146
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.Build", version: "2.262.0-alpha.0" };
|
|
147
147
|
/** Uniquely identifies this class. */
|
|
148
148
|
static PROPERTY_INJECTION_ID = '@aws-cdk.aws-gamelift-alpha.Build';
|
|
149
149
|
/**
|
package/lib/content.js
CHANGED
|
@@ -44,7 +44,7 @@ const cdk = __importStar(require("aws-cdk-lib/core"));
|
|
|
44
44
|
* The class helps you on preparing and uploading custom game server build files or Realtime Servers server script files.
|
|
45
45
|
*/
|
|
46
46
|
class Content {
|
|
47
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.Content", version: "2.
|
|
47
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.Content", version: "2.262.0-alpha.0" };
|
|
48
48
|
/**
|
|
49
49
|
* Game content as an S3 object.
|
|
50
50
|
* @param bucket The S3 bucket
|
|
@@ -71,7 +71,7 @@ class S3Content extends Content {
|
|
|
71
71
|
bucket;
|
|
72
72
|
key;
|
|
73
73
|
objectVersion;
|
|
74
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.S3Content", version: "2.
|
|
74
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.S3Content", version: "2.262.0-alpha.0" };
|
|
75
75
|
constructor(bucket, key, objectVersion) {
|
|
76
76
|
super();
|
|
77
77
|
this.bucket = bucket;
|
|
@@ -104,7 +104,7 @@ exports.S3Content = S3Content;
|
|
|
104
104
|
class AssetContent extends Content {
|
|
105
105
|
path;
|
|
106
106
|
options;
|
|
107
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.AssetContent", version: "2.
|
|
107
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.AssetContent", version: "2.262.0-alpha.0" };
|
|
108
108
|
asset;
|
|
109
109
|
/**
|
|
110
110
|
* @param path The path to the asset file or directory.
|
package/lib/fleet-base.js
CHANGED
|
@@ -45,7 +45,7 @@ const alias_1 = require("./alias");
|
|
|
45
45
|
* Base class for new and imported GameLift fleet.
|
|
46
46
|
*/
|
|
47
47
|
class FleetBase extends cdk.Resource {
|
|
48
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.FleetBase", version: "2.
|
|
48
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.FleetBase", version: "2.262.0-alpha.0" };
|
|
49
49
|
/**
|
|
50
50
|
* Import an existing fleet from its attributes.
|
|
51
51
|
*/
|
package/lib/game-server-group.js
CHANGED
|
@@ -124,7 +124,7 @@ var BalancingStrategy;
|
|
|
124
124
|
* Base class for new and imported GameLift FleetIQ game server group.
|
|
125
125
|
*/
|
|
126
126
|
class GameServerGroupBase extends cdk.Resource {
|
|
127
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.GameServerGroupBase", version: "2.
|
|
127
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.GameServerGroupBase", version: "2.262.0-alpha.0" };
|
|
128
128
|
/**
|
|
129
129
|
* [disable-awslint:no-grants]
|
|
130
130
|
*/
|
|
@@ -192,7 +192,7 @@ let GameServerGroup = (() => {
|
|
|
192
192
|
GameServerGroup = _classThis = _classDescriptor.value;
|
|
193
193
|
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
194
194
|
}
|
|
195
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.GameServerGroup", version: "2.
|
|
195
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.GameServerGroup", version: "2.262.0-alpha.0" };
|
|
196
196
|
/** Uniquely identifies this class. */
|
|
197
197
|
static PROPERTY_INJECTION_ID = '@aws-cdk.aws-gamelift-alpha.GameServerGroup';
|
|
198
198
|
/**
|
|
@@ -102,7 +102,7 @@ var PriorityType;
|
|
|
102
102
|
* Base class for new and imported GameLift GameSessionQueue.
|
|
103
103
|
*/
|
|
104
104
|
class GameSessionQueueBase extends cdk.Resource {
|
|
105
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.GameSessionQueueBase", version: "2.
|
|
105
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.GameSessionQueueBase", version: "2.262.0-alpha.0" };
|
|
106
106
|
metric(metricName, props) {
|
|
107
107
|
return new cloudwatch.Metric({
|
|
108
108
|
namespace: 'AWS/GameLift',
|
|
@@ -165,7 +165,7 @@ let GameSessionQueue = (() => {
|
|
|
165
165
|
GameSessionQueue = _classThis = _classDescriptor.value;
|
|
166
166
|
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
167
167
|
}
|
|
168
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.GameSessionQueue", version: "2.
|
|
168
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.GameSessionQueue", version: "2.262.0-alpha.0" };
|
|
169
169
|
/** Uniquely identifies this class. */
|
|
170
170
|
static PROPERTY_INJECTION_ID = '@aws-cdk.aws-gamelift-alpha.GameSessionQueue';
|
|
171
171
|
/**
|
package/lib/ingress-rule.js
CHANGED
|
@@ -52,7 +52,7 @@ var Protocol;
|
|
|
52
52
|
*/
|
|
53
53
|
class Port {
|
|
54
54
|
props;
|
|
55
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.Port", version: "2.
|
|
55
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.Port", version: "2.262.0-alpha.0" };
|
|
56
56
|
/**
|
|
57
57
|
* A single TCP port
|
|
58
58
|
*/
|
|
@@ -146,7 +146,7 @@ exports.Port = Port;
|
|
|
146
146
|
* Use this object if you need to represent connection partners using plain IP addresses.
|
|
147
147
|
*/
|
|
148
148
|
class Peer {
|
|
149
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.Peer", version: "2.
|
|
149
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.Peer", version: "2.262.0-alpha.0" };
|
|
150
150
|
/**
|
|
151
151
|
* Create an IPv4 peer from a CIDR
|
|
152
152
|
*/
|
|
@@ -42,7 +42,7 @@ const cdk = __importStar(require("aws-cdk-lib/core"));
|
|
|
42
42
|
* Base class for new and imported GameLift Matchmaking configuration.
|
|
43
43
|
*/
|
|
44
44
|
class MatchmakingConfigurationBase extends cdk.Resource {
|
|
45
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.MatchmakingConfigurationBase", version: "2.
|
|
45
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.MatchmakingConfigurationBase", version: "2.262.0-alpha.0" };
|
|
46
46
|
/**
|
|
47
47
|
* Import an existing matchmaking configuration from its attributes.
|
|
48
48
|
*/
|
|
@@ -46,7 +46,7 @@ const fs = __importStar(require("fs"));
|
|
|
46
46
|
* - If no match is made after 30 seconds, gradually relax the skill requirements.
|
|
47
47
|
*/
|
|
48
48
|
class RuleSetContent {
|
|
49
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.RuleSetContent", version: "2.
|
|
49
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.RuleSetContent", version: "2.262.0-alpha.0" };
|
|
50
50
|
/**
|
|
51
51
|
* Matchmaking ruleSet body from a file
|
|
52
52
|
* @returns `RuleSetContentBase` based on JSON file content.
|
|
@@ -80,7 +80,7 @@ const prop_injectable_1 = require("aws-cdk-lib/core/lib/prop-injectable");
|
|
|
80
80
|
* Base class for new and imported GameLift matchmaking ruleSet.
|
|
81
81
|
*/
|
|
82
82
|
class MatchmakingRuleSetBase extends cdk.Resource {
|
|
83
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.MatchmakingRuleSetBase", version: "2.
|
|
83
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.MatchmakingRuleSetBase", version: "2.262.0-alpha.0" };
|
|
84
84
|
metric(metricName, props) {
|
|
85
85
|
return new cloudwatch.Metric({
|
|
86
86
|
namespace: 'AWS/GameLift',
|
|
@@ -136,7 +136,7 @@ let MatchmakingRuleSet = (() => {
|
|
|
136
136
|
MatchmakingRuleSet = _classThis = _classDescriptor.value;
|
|
137
137
|
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
138
138
|
}
|
|
139
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.MatchmakingRuleSet", version: "2.
|
|
139
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.MatchmakingRuleSet", version: "2.262.0-alpha.0" };
|
|
140
140
|
/** Uniquely identifies this class. */
|
|
141
141
|
static PROPERTY_INJECTION_ID = '@aws-cdk.aws-gamelift-alpha.MatchmakingRuleSet';
|
|
142
142
|
/**
|
|
@@ -111,7 +111,7 @@ let QueuedMatchmakingConfiguration = (() => {
|
|
|
111
111
|
QueuedMatchmakingConfiguration = _classThis = _classDescriptor.value;
|
|
112
112
|
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
113
113
|
}
|
|
114
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.QueuedMatchmakingConfiguration", version: "2.
|
|
114
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.QueuedMatchmakingConfiguration", version: "2.262.0-alpha.0" };
|
|
115
115
|
/** Uniquely identifies this class. */
|
|
116
116
|
static PROPERTY_INJECTION_ID = '@aws-cdk.aws-gamelift-alpha.QueuedMatchmakingConfiguration';
|
|
117
117
|
/**
|
package/lib/script.js
CHANGED
|
@@ -81,7 +81,7 @@ const content_1 = require("./content");
|
|
|
81
81
|
* Base class for new and imported GameLift realtime server script.
|
|
82
82
|
*/
|
|
83
83
|
class ScriptBase extends cdk.Resource {
|
|
84
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.ScriptBase", version: "2.
|
|
84
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.ScriptBase", version: "2.262.0-alpha.0" };
|
|
85
85
|
}
|
|
86
86
|
exports.ScriptBase = ScriptBase;
|
|
87
87
|
/**
|
|
@@ -113,7 +113,7 @@ let Script = (() => {
|
|
|
113
113
|
Script = _classThis = _classDescriptor.value;
|
|
114
114
|
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
115
115
|
}
|
|
116
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.Script", version: "2.
|
|
116
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.Script", version: "2.262.0-alpha.0" };
|
|
117
117
|
/** Uniquely identifies this class. */
|
|
118
118
|
static PROPERTY_INJECTION_ID = '@aws-cdk.aws-gamelift-alpha.Script';
|
|
119
119
|
/**
|
|
@@ -108,7 +108,7 @@ let StandaloneMatchmakingConfiguration = (() => {
|
|
|
108
108
|
StandaloneMatchmakingConfiguration = _classThis = _classDescriptor.value;
|
|
109
109
|
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
110
110
|
}
|
|
111
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.StandaloneMatchmakingConfiguration", version: "2.
|
|
111
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-gamelift-alpha.StandaloneMatchmakingConfiguration", version: "2.262.0-alpha.0" };
|
|
112
112
|
/** Uniquely identifies this class. */
|
|
113
113
|
static PROPERTY_INJECTION_ID = '@aws-cdk.aws-gamelift-alpha.StandaloneMatchmakingConfiguration';
|
|
114
114
|
/**
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aws-cdk/aws-gamelift-alpha",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.262.0-alpha.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "The CDK Construct Library for AWS::GameLift",
|
|
6
6
|
"main": "lib/index.js",
|
|
@@ -82,19 +82,19 @@
|
|
|
82
82
|
},
|
|
83
83
|
"license": "Apache-2.0",
|
|
84
84
|
"devDependencies": {
|
|
85
|
-
"@aws-cdk/cdk-build-tools": "2.
|
|
86
|
-
"@aws-cdk/integ-runner": "^2.
|
|
87
|
-
"@aws-cdk/pkglint": "2.
|
|
85
|
+
"@aws-cdk/cdk-build-tools": "2.262.0-alpha.0",
|
|
86
|
+
"@aws-cdk/integ-runner": "^2.202.3",
|
|
87
|
+
"@aws-cdk/pkglint": "2.262.0-alpha.0",
|
|
88
88
|
"@types/jest": "^29.5.14",
|
|
89
89
|
"jest": "^29.7.0",
|
|
90
|
-
"aws-cdk-lib": "2.
|
|
90
|
+
"aws-cdk-lib": "2.262.0",
|
|
91
91
|
"constructs": "^10.5.0",
|
|
92
|
-
"@aws-cdk/integ-tests-alpha": "2.
|
|
92
|
+
"@aws-cdk/integ-tests-alpha": "2.262.0-alpha.0"
|
|
93
93
|
},
|
|
94
94
|
"dependencies": {},
|
|
95
95
|
"homepage": "https://github.com/aws/aws-cdk",
|
|
96
96
|
"peerDependencies": {
|
|
97
|
-
"aws-cdk-lib": "^2.
|
|
97
|
+
"aws-cdk-lib": "^2.262.0",
|
|
98
98
|
"constructs": "^10.5.0"
|
|
99
99
|
},
|
|
100
100
|
"engines": {
|