@bluedynamics/cdk8s-plone 0.1.21 → 0.1.22

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
@@ -175,6 +175,94 @@
175
175
  ],
176
176
  "symbolId": "src/httpcache:HttpcacheEnvVar"
177
177
  },
178
+ "@bluedynamics/cdk8s-plone.HttpcacheToleration": {
179
+ "assembly": "@bluedynamics/cdk8s-plone",
180
+ "datatype": true,
181
+ "docs": {
182
+ "stability": "stable",
183
+ "summary": "A Kubernetes toleration for the Varnish pods."
184
+ },
185
+ "fqn": "@bluedynamics/cdk8s-plone.HttpcacheToleration",
186
+ "kind": "interface",
187
+ "locationInModule": {
188
+ "filename": "src/httpcache.ts",
189
+ "line": 25
190
+ },
191
+ "name": "HttpcacheToleration",
192
+ "properties": [
193
+ {
194
+ "abstract": true,
195
+ "docs": {
196
+ "stability": "stable",
197
+ "summary": "The taint key to tolerate."
198
+ },
199
+ "immutable": true,
200
+ "locationInModule": {
201
+ "filename": "src/httpcache.ts",
202
+ "line": 29
203
+ },
204
+ "name": "key",
205
+ "type": {
206
+ "primitive": "string"
207
+ }
208
+ },
209
+ {
210
+ "abstract": true,
211
+ "docs": {
212
+ "default": "- tolerate all effects",
213
+ "stability": "stable",
214
+ "summary": "The taint effect to tolerate (NoSchedule, PreferNoSchedule, NoExecute)."
215
+ },
216
+ "immutable": true,
217
+ "locationInModule": {
218
+ "filename": "src/httpcache.ts",
219
+ "line": 47
220
+ },
221
+ "name": "effect",
222
+ "optional": true,
223
+ "type": {
224
+ "primitive": "string"
225
+ }
226
+ },
227
+ {
228
+ "abstract": true,
229
+ "docs": {
230
+ "default": "'Equal'",
231
+ "stability": "stable",
232
+ "summary": "The operator (Equal or Exists)."
233
+ },
234
+ "immutable": true,
235
+ "locationInModule": {
236
+ "filename": "src/httpcache.ts",
237
+ "line": 35
238
+ },
239
+ "name": "operator",
240
+ "optional": true,
241
+ "type": {
242
+ "primitive": "string"
243
+ }
244
+ },
245
+ {
246
+ "abstract": true,
247
+ "docs": {
248
+ "default": "- no value",
249
+ "stability": "stable",
250
+ "summary": "The taint value to match (when operator is Equal)."
251
+ },
252
+ "immutable": true,
253
+ "locationInModule": {
254
+ "filename": "src/httpcache.ts",
255
+ "line": 41
256
+ },
257
+ "name": "value",
258
+ "optional": true,
259
+ "type": {
260
+ "primitive": "string"
261
+ }
262
+ }
263
+ ],
264
+ "symbolId": "src/httpcache:HttpcacheToleration"
265
+ },
178
266
  "@bluedynamics/cdk8s-plone.Plone": {
179
267
  "assembly": "@bluedynamics/cdk8s-plone",
180
268
  "base": "constructs.Construct",
@@ -887,7 +975,7 @@
887
975
  },
888
976
  "locationInModule": {
889
977
  "filename": "src/httpcache.ts",
890
- "line": 143
978
+ "line": 179
891
979
  },
892
980
  "parameters": [
893
981
  {
@@ -913,7 +1001,7 @@
913
1001
  "kind": "class",
914
1002
  "locationInModule": {
915
1003
  "filename": "src/httpcache.ts",
916
- "line": 136
1004
+ "line": 172
917
1005
  },
918
1006
  "name": "PloneHttpcache",
919
1007
  "properties": [
@@ -926,7 +1014,7 @@
926
1014
  "immutable": true,
927
1015
  "locationInModule": {
928
1016
  "filename": "src/httpcache.ts",
929
- "line": 141
1017
+ "line": 177
930
1018
  },
931
1019
  "name": "httpcacheServiceName",
932
1020
  "type": {
@@ -947,7 +1035,7 @@
947
1035
  "kind": "interface",
948
1036
  "locationInModule": {
949
1037
  "filename": "src/httpcache.ts",
950
- "line": 25
1038
+ "line": 53
951
1039
  },
952
1040
  "name": "PloneHttpcacheOptions",
953
1041
  "properties": [
@@ -961,7 +1049,7 @@
961
1049
  "immutable": true,
962
1050
  "locationInModule": {
963
1051
  "filename": "src/httpcache.ts",
964
- "line": 30
1052
+ "line": 58
965
1053
  },
966
1054
  "name": "plone",
967
1055
  "type": {
@@ -979,7 +1067,7 @@
979
1067
  "immutable": true,
980
1068
  "locationInModule": {
981
1069
  "filename": "src/httpcache.ts",
982
- "line": 103
1070
+ "line": 131
983
1071
  },
984
1072
  "name": "appVersion",
985
1073
  "optional": true,
@@ -998,7 +1086,7 @@
998
1086
  "immutable": true,
999
1087
  "locationInModule": {
1000
1088
  "filename": "src/httpcache.ts",
1001
- "line": 96
1089
+ "line": 124
1002
1090
  },
1003
1091
  "name": "chartVersion",
1004
1092
  "optional": true,
@@ -1017,7 +1105,7 @@
1017
1105
  "immutable": true,
1018
1106
  "locationInModule": {
1019
1107
  "filename": "src/httpcache.ts",
1020
- "line": 51
1108
+ "line": 79
1021
1109
  },
1022
1110
  "name": "existingSecret",
1023
1111
  "optional": true,
@@ -1036,7 +1124,7 @@
1036
1124
  "immutable": true,
1037
1125
  "locationInModule": {
1038
1126
  "filename": "src/httpcache.ts",
1039
- "line": 89
1127
+ "line": 117
1040
1128
  },
1041
1129
  "name": "exporterEnabled",
1042
1130
  "optional": true,
@@ -1055,7 +1143,7 @@
1055
1143
  "immutable": true,
1056
1144
  "locationInModule": {
1057
1145
  "filename": "src/httpcache.ts",
1058
- "line": 117
1146
+ "line": 145
1059
1147
  },
1060
1148
  "name": "extraEnvVars",
1061
1149
  "optional": true,
@@ -1078,7 +1166,7 @@
1078
1166
  "immutable": true,
1079
1167
  "locationInModule": {
1080
1168
  "filename": "src/httpcache.ts",
1081
- "line": 57
1169
+ "line": 85
1082
1170
  },
1083
1171
  "name": "limitCpu",
1084
1172
  "optional": true,
@@ -1096,7 +1184,7 @@
1096
1184
  "immutable": true,
1097
1185
  "locationInModule": {
1098
1186
  "filename": "src/httpcache.ts",
1099
- "line": 63
1187
+ "line": 91
1100
1188
  },
1101
1189
  "name": "limitMemory",
1102
1190
  "optional": true,
@@ -1114,7 +1202,7 @@
1114
1202
  "immutable": true,
1115
1203
  "locationInModule": {
1116
1204
  "filename": "src/httpcache.ts",
1117
- "line": 109
1205
+ "line": 137
1118
1206
  },
1119
1207
  "name": "replicas",
1120
1208
  "optional": true,
@@ -1132,7 +1220,7 @@
1132
1220
  "immutable": true,
1133
1221
  "locationInModule": {
1134
1222
  "filename": "src/httpcache.ts",
1135
- "line": 69
1223
+ "line": 97
1136
1224
  },
1137
1225
  "name": "requestCpu",
1138
1226
  "optional": true,
@@ -1150,7 +1238,7 @@
1150
1238
  "immutable": true,
1151
1239
  "locationInModule": {
1152
1240
  "filename": "src/httpcache.ts",
1153
- "line": 75
1241
+ "line": 103
1154
1242
  },
1155
1243
  "name": "requestMemory",
1156
1244
  "optional": true,
@@ -1169,7 +1257,7 @@
1169
1257
  "immutable": true,
1170
1258
  "locationInModule": {
1171
1259
  "filename": "src/httpcache.ts",
1172
- "line": 82
1260
+ "line": 110
1173
1261
  },
1174
1262
  "name": "servicemonitor",
1175
1263
  "optional": true,
@@ -1177,6 +1265,30 @@
1177
1265
  "primitive": "boolean"
1178
1266
  }
1179
1267
  },
1268
+ {
1269
+ "abstract": true,
1270
+ "docs": {
1271
+ "default": "- no tolerations",
1272
+ "remarks": "Use this to allow scheduling on nodes with specific taints,\ne.g. nodes tainted with kubernetes.io/arch=amd64:NoSchedule.",
1273
+ "stability": "stable",
1274
+ "summary": "Tolerations for the Varnish pods."
1275
+ },
1276
+ "immutable": true,
1277
+ "locationInModule": {
1278
+ "filename": "src/httpcache.ts",
1279
+ "line": 153
1280
+ },
1281
+ "name": "tolerations",
1282
+ "optional": true,
1283
+ "type": {
1284
+ "collection": {
1285
+ "elementtype": {
1286
+ "fqn": "@bluedynamics/cdk8s-plone.HttpcacheToleration"
1287
+ },
1288
+ "kind": "array"
1289
+ }
1290
+ }
1291
+ },
1180
1292
  {
1181
1293
  "abstract": true,
1182
1294
  "docs": {
@@ -1188,7 +1300,7 @@
1188
1300
  "immutable": true,
1189
1301
  "locationInModule": {
1190
1302
  "filename": "src/httpcache.ts",
1191
- "line": 37
1303
+ "line": 65
1192
1304
  },
1193
1305
  "name": "varnishVcl",
1194
1306
  "optional": true,
@@ -1207,7 +1319,7 @@
1207
1319
  "immutable": true,
1208
1320
  "locationInModule": {
1209
1321
  "filename": "src/httpcache.ts",
1210
- "line": 44
1322
+ "line": 72
1211
1323
  },
1212
1324
  "name": "varnishVclFile",
1213
1325
  "optional": true,
@@ -1388,6 +1500,6 @@
1388
1500
  "symbolId": "src/plone:PloneVariant"
1389
1501
  }
1390
1502
  },
1391
- "version": "0.1.21",
1392
- "fingerprint": "gfHrEBdjQINTEgseJqXHzaf2+7jKA/JAiR6bcgdEgvQ="
1503
+ "version": "0.1.22",
1504
+ "fingerprint": "MErr+3NOqQxwjiF62c8NEwWic9mEdSBxie66Wca7B38="
1393
1505
  }
package/API.md CHANGED
@@ -436,6 +436,80 @@ The value of the environment variable.
436
436
 
437
437
  ---
438
438
 
439
+ ### HttpcacheToleration <a name="HttpcacheToleration" id="@bluedynamics/cdk8s-plone.HttpcacheToleration"></a>
440
+
441
+ A Kubernetes toleration for the Varnish pods.
442
+
443
+ #### Initializer <a name="Initializer" id="@bluedynamics/cdk8s-plone.HttpcacheToleration.Initializer"></a>
444
+
445
+ ```typescript
446
+ import { HttpcacheToleration } from '@bluedynamics/cdk8s-plone'
447
+
448
+ const httpcacheToleration: HttpcacheToleration = { ... }
449
+ ```
450
+
451
+ #### Properties <a name="Properties" id="Properties"></a>
452
+
453
+ | **Name** | **Type** | **Description** |
454
+ | --- | --- | --- |
455
+ | <code><a href="#@bluedynamics/cdk8s-plone.HttpcacheToleration.property.key">key</a></code> | <code>string</code> | The taint key to tolerate. |
456
+ | <code><a href="#@bluedynamics/cdk8s-plone.HttpcacheToleration.property.effect">effect</a></code> | <code>string</code> | The taint effect to tolerate (NoSchedule, PreferNoSchedule, NoExecute). |
457
+ | <code><a href="#@bluedynamics/cdk8s-plone.HttpcacheToleration.property.operator">operator</a></code> | <code>string</code> | The operator (Equal or Exists). |
458
+ | <code><a href="#@bluedynamics/cdk8s-plone.HttpcacheToleration.property.value">value</a></code> | <code>string</code> | The taint value to match (when operator is Equal). |
459
+
460
+ ---
461
+
462
+ ##### `key`<sup>Required</sup> <a name="key" id="@bluedynamics/cdk8s-plone.HttpcacheToleration.property.key"></a>
463
+
464
+ ```typescript
465
+ public readonly key: string;
466
+ ```
467
+
468
+ - *Type:* string
469
+
470
+ The taint key to tolerate.
471
+
472
+ ---
473
+
474
+ ##### `effect`<sup>Optional</sup> <a name="effect" id="@bluedynamics/cdk8s-plone.HttpcacheToleration.property.effect"></a>
475
+
476
+ ```typescript
477
+ public readonly effect: string;
478
+ ```
479
+
480
+ - *Type:* string
481
+ - *Default:* tolerate all effects
482
+
483
+ The taint effect to tolerate (NoSchedule, PreferNoSchedule, NoExecute).
484
+
485
+ ---
486
+
487
+ ##### `operator`<sup>Optional</sup> <a name="operator" id="@bluedynamics/cdk8s-plone.HttpcacheToleration.property.operator"></a>
488
+
489
+ ```typescript
490
+ public readonly operator: string;
491
+ ```
492
+
493
+ - *Type:* string
494
+ - *Default:* 'Equal'
495
+
496
+ The operator (Equal or Exists).
497
+
498
+ ---
499
+
500
+ ##### `value`<sup>Optional</sup> <a name="value" id="@bluedynamics/cdk8s-plone.HttpcacheToleration.property.value"></a>
501
+
502
+ ```typescript
503
+ public readonly value: string;
504
+ ```
505
+
506
+ - *Type:* string
507
+ - *Default:* no value
508
+
509
+ The taint value to match (when operator is Equal).
510
+
511
+ ---
512
+
439
513
  ### PloneBaseOptions <a name="PloneBaseOptions" id="@bluedynamics/cdk8s-plone.PloneBaseOptions"></a>
440
514
 
441
515
  Base options for Plone backend or frontend configuration.
@@ -958,6 +1032,7 @@ const ploneHttpcacheOptions: PloneHttpcacheOptions = { ... }
958
1032
  | <code><a href="#@bluedynamics/cdk8s-plone.PloneHttpcacheOptions.property.requestCpu">requestCpu</a></code> | <code>string</code> | CPU request for Varnish pods. |
959
1033
  | <code><a href="#@bluedynamics/cdk8s-plone.PloneHttpcacheOptions.property.requestMemory">requestMemory</a></code> | <code>string</code> | Memory request for Varnish pods. |
960
1034
  | <code><a href="#@bluedynamics/cdk8s-plone.PloneHttpcacheOptions.property.servicemonitor">servicemonitor</a></code> | <code>boolean</code> | Enable Prometheus ServiceMonitor for metrics collection. |
1035
+ | <code><a href="#@bluedynamics/cdk8s-plone.PloneHttpcacheOptions.property.tolerations">tolerations</a></code> | <code><a href="#@bluedynamics/cdk8s-plone.HttpcacheToleration">HttpcacheToleration</a>[]</code> | Tolerations for the Varnish pods. |
961
1036
  | <code><a href="#@bluedynamics/cdk8s-plone.PloneHttpcacheOptions.property.varnishVcl">varnishVcl</a></code> | <code>string</code> | Varnish VCL configuration as a string. |
962
1037
  | <code><a href="#@bluedynamics/cdk8s-plone.PloneHttpcacheOptions.property.varnishVclFile">varnishVclFile</a></code> | <code>string</code> | Path to a Varnish VCL configuration file. |
963
1038
 
@@ -1133,6 +1208,22 @@ Requires Prometheus Operator to be installed in the cluster.
1133
1208
 
1134
1209
  ---
1135
1210
 
1211
+ ##### `tolerations`<sup>Optional</sup> <a name="tolerations" id="@bluedynamics/cdk8s-plone.PloneHttpcacheOptions.property.tolerations"></a>
1212
+
1213
+ ```typescript
1214
+ public readonly tolerations: HttpcacheToleration[];
1215
+ ```
1216
+
1217
+ - *Type:* <a href="#@bluedynamics/cdk8s-plone.HttpcacheToleration">HttpcacheToleration</a>[]
1218
+ - *Default:* no tolerations
1219
+
1220
+ Tolerations for the Varnish pods.
1221
+
1222
+ Use this to allow scheduling on nodes with specific taints,
1223
+ e.g. nodes tainted with kubernetes.io/arch=amd64:NoSchedule.
1224
+
1225
+ ---
1226
+
1136
1227
  ##### `varnishVcl`<sup>Optional</sup> <a name="varnishVcl" id="@bluedynamics/cdk8s-plone.PloneHttpcacheOptions.property.varnishVcl"></a>
1137
1228
 
1138
1229
  ```typescript
@@ -13,6 +13,30 @@ export interface HttpcacheEnvVar {
13
13
  */
14
14
  readonly value: string;
15
15
  }
16
+ /**
17
+ * A Kubernetes toleration for the Varnish pods.
18
+ */
19
+ export interface HttpcacheToleration {
20
+ /**
21
+ * The taint key to tolerate.
22
+ */
23
+ readonly key: string;
24
+ /**
25
+ * The operator (Equal or Exists).
26
+ * @default 'Equal'
27
+ */
28
+ readonly operator?: string;
29
+ /**
30
+ * The taint value to match (when operator is Equal).
31
+ * @default - no value
32
+ */
33
+ readonly value?: string;
34
+ /**
35
+ * The taint effect to tolerate (NoSchedule, PreferNoSchedule, NoExecute).
36
+ * @default - tolerate all effects
37
+ */
38
+ readonly effect?: string;
39
+ }
16
40
  /**
17
41
  * Configuration options for PloneHttpcache (Varnish caching layer).
18
42
  */
@@ -96,6 +120,13 @@ export interface PloneHttpcacheOptions {
96
120
  * @default - no additional env vars
97
121
  */
98
122
  readonly extraEnvVars?: HttpcacheEnvVar[];
123
+ /**
124
+ * Tolerations for the Varnish pods.
125
+ * Use this to allow scheduling on nodes with specific taints,
126
+ * e.g. nodes tainted with kubernetes.io/arch=amd64:NoSchedule.
127
+ * @default - no tolerations
128
+ */
129
+ readonly tolerations?: HttpcacheToleration[];
99
130
  }
100
131
  /**
101
132
  * PloneHttpcache construct for deploying Varnish HTTP caching layer.
package/lib/httpcache.js CHANGED
@@ -68,6 +68,7 @@ class PloneHttpcache extends constructs_1.Construct {
68
68
  nodeSelector: {
69
69
  'kubernetes.io/arch': 'amd64',
70
70
  },
71
+ ...(options.tolerations && { tolerations: options.tolerations }),
71
72
  resources: {
72
73
  limits: {
73
74
  cpu: options.limitCpu || '500m',
@@ -114,5 +115,5 @@ class PloneHttpcache extends constructs_1.Construct {
114
115
  }
115
116
  exports.PloneHttpcache = PloneHttpcache;
116
117
  _a = JSII_RTTI_SYMBOL_1;
117
- PloneHttpcache[_a] = { fqn: "@bluedynamics/cdk8s-plone.PloneHttpcache", version: "0.1.21" };
118
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cGNhY2hlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2h0dHBjYWNoZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLHlCQUF5QjtBQUN6Qiw2QkFBNkI7QUFDN0IsaUNBQTZCO0FBQzdCLDJDQUF1QztBQW9IdkM7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBQ0gsTUFBYSxjQUFlLFNBQVEsc0JBQVM7SUFPM0MsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxPQUE4QjtRQUN0RSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2pCLElBQUksVUFBa0IsQ0FBQztRQUN2QixJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3hCLElBQUksT0FBZSxDQUFDO1lBQ3BCLElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxFQUFFLENBQUM7Z0JBQzVCLE9BQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxRQUFRLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztZQUM5RCxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sT0FBTyxHQUFHLE9BQU8sQ0FBQyxjQUFjLENBQUM7WUFDbkMsQ0FBQztZQUNELFVBQVUsR0FBRyxFQUFFLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNoRCxDQUFDO2FBQU0sQ0FBQztZQUNOLFVBQVUsR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDO1FBQ2xDLENBQUM7UUFDRCxNQUFNLFFBQVEsR0FBRyxPQUFPLENBQUMsVUFBVSxJQUFJLE9BQU8sQ0FBQyxZQUFZLENBQUM7UUFDNUQsTUFBTSxTQUFTLEdBQUcsSUFBSSxZQUFJLENBQUMsSUFBSSxFQUFFLFdBQVcsRUFBRTtZQUM1Qyx1REFBdUQ7WUFDdkQsSUFBSSxFQUFFLDBCQUEwQjtZQUNoQyxLQUFLLEVBQUUsZ0JBQWdCO1lBQ3ZCLE9BQU8sRUFBRSxPQUFPLENBQUMsWUFBWTtZQUM3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LCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBmcyBmcm9tICdmcyc7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0IHsgSGVsbSB9IGZyb20gJ2NkazhzJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgUGxvbmUgfSBmcm9tICcuL3Bsb25lJztcblxuLyoqXG4gKiBBbiBlbnZpcm9ubWVudCB2YXJpYWJsZSB0byBwYXNzIHRvIHRoZSBrdWJlLWh0dHBjYWNoZSBjb250YWluZXIuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSHR0cGNhY2hlRW52VmFyIHtcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZS5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHZhbHVlIG9mIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZS5cbiAgICovXG4gIHJlYWRvbmx5IHZhbHVlOiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBvcHRpb25zIGZvciBQbG9uZUh0dHBjYWNoZSAoVmFybmlzaCBjYWNoaW5nIGxheWVyKS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQbG9uZUh0dHBjYWNoZU9wdGlvbnMge1xuICAvKipcbiAgICogVGhlIFBsb25lIGNvbnN0cnVjdCB0byBhdHRhY2ggdGhlIEhUVFAgY2FjaGUgdG8uXG4gICAqIFRoZSBjYWNoZSB3aWxsIGF1dG9tYXRpY2FsbHkgY29ubmVjdCB0byB0aGUgYmFja2VuZCBhbmQgZnJvbnRlbmQgc2VydmljZXMuXG4gICAqL1xuICByZWFkb25seSBwbG9uZTogUGxvbmU7XG5cbiAgLyoqXG4gICAqIFZhcm5pc2ggVkNMIGNvbmZpZ3VyYXRpb24gYXMgYSBzdHJpbmcuXG4gICAqIElmIHByb3ZpZGVkLCB0aGlzIHRha2VzIHByZWNlZGVuY2Ugb3ZlciB2YXJuaXNoVmNsRmlsZS5cbiAgICogQGRlZmF1bHQgLSBsb2FkZWQgZnJvbSB2YXJuaXNoVmNsRmlsZSBvciBkZWZhdWx0IGNvbmZpZyBmaWxlXG4gICAqL1xuICByZWFkb25seSB2YXJuaXNoVmNsPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBQYXRoIHRvIGEgVmFybmlzaCBWQ0wgY29uZmlndXJhdGlvbiBmaWxlLlxuICAgKiBJZiBub3QgcHJvdmlkZWQsIHVzZXMgdGhlIGRlZmF1bHQgVkNMIGZpbGUgaW5jbHVkZWQgaW4gdGhlIGxpYnJhcnkuXG4gICAqIEBkZWZhdWx0IC0gdXNlcyBkZWZhdWx0IGNvbmZpZy92YXJuaXNoLnRwbC52Y2xcbiAgICovXG4gIHJlYWRvbmx5IHZhcm5pc2hWY2xGaWxlPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBOYW1lIG9mIGFuIGV4aXN0aW5nIEt1YmVybmV0ZXMgc2VjcmV0IGNvbnRhaW5pbmcgVmFybmlzaCBhZG1pbiBjcmVkZW50aWFscy5cbiAgICogVGhlIHNlY3JldCBzaG91bGQgYmUgY3JlYXRlZCBzZXBhcmF0ZWx5IGluIHRoZSBzYW1lIG5hbWVzcGFjZS5cbiAgICogQGRlZmF1bHQgLSB1bmRlZmluZWQgKG5vIGV4aXN0aW5nIHNlY3JldClcbiAgICovXG4gIHJlYWRvbmx5IGV4aXN0aW5nU2VjcmV0Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBDUFUgbGltaXQgZm9yIFZhcm5pc2ggcG9kcy5cbiAgICogQGRlZmF1bHQgJzUwMG0nXG4gICAqL1xuICByZWFkb25seSBsaW1pdENwdT86IHN0cmluZztcblxuICAvKipcbiAgICogTWVtb3J5IGxpbWl0IGZvciBWYXJuaXNoIHBvZHMuXG4gICAqIEBkZWZhdWx0ICc1MDBNaSdcbiAgICovXG4gIHJlYWRvbmx5IGxpbWl0TWVtb3J5Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBDUFUgcmVxdWVzdCBmb3IgVmFybmlzaCBwb2RzLlxuICAgKiBAZGVmYXVsdCAnMTAwbSdcbiAgICovXG4gIHJlYWRvbmx5IHJlcXVlc3RDcHU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE1lbW9yeSByZXF1ZXN0IGZvciBWYXJuaXNoIHBvZHMuXG4gICAqIEBkZWZhdWx0ICcxMDBNaSdcbiAgICovXG4gIHJlYWRvbmx5IHJlcXVlc3RNZW1vcnk/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEVuYWJsZSBQcm9tZXRoZXVzIFNlcnZpY2VNb25pdG9yIGZvciBtZXRyaWNzIGNvbGxlY3Rpb24uXG4gICAqIFJlcXVpcmVzIFByb21ldGhldXMgT3BlcmF0b3IgdG8gYmUgaW5zdGFsbGVkIGluIHRoZSBjbHVzdGVyLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgc2VydmljZW1vbml0b3I/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBFbmFibGUgdGhlIFByb21ldGhldXMgZXhwb3J0ZXIgZm9yIFZhcm5pc2ggbWV0cmljcy5cbiAgICogV2hlbiBlbmFibGVkLCB0aGUgZXhwb3J0ZXIgc2lkZWNhciBjb250YWluZXIgd2lsbCBiZSBkZXBsb3llZCBhbG9uZ3NpZGUgVmFybmlzaC5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgZXhwb3J0ZXJFbmFibGVkPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogVmVyc2lvbiBvZiB0aGUga3ViZS1odHRwY2FjaGUgSGVsbSBjaGFydCB0byB1c2UuXG4gICAqIElmIG5vdCBzcGVjaWZpZWQsIHRoZSBsYXRlc3QgdmVyc2lvbiBmcm9tIHRoZSByZXBvc2l0b3J5IHdpbGwgYmUgdXNlZC5cbiAgICogQGRlZmF1bHQgdW5kZWZpbmVkIChsYXRlc3QpXG4gICAqL1xuICByZWFkb25seSBjaGFydFZlcnNpb24/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFZlcnNpb24gb2YgdGhlIGt1YmUtaHR0cGNhY2hlIENvbnRhaW5lciBJbWFnZSB0byB1c2UuXG4gICAqIElmIG5vdCBzcGVjaWZpZWQsIHRoZSBsYXRlc3QgdmVyc2lvbiBmcm9tIHRoZSByZXBvc2l0b3J5IHdpbGwgYmUgdXNlZC5cbiAgICogQGRlZmF1bHQgdW5kZWZpbmVkIChjaGFydFZlcnNpb24gPSB3aXRoIGVhY2ggY2hhcnQgcmVsZWFzZSB0aGVyZSBpcyBhbiBpbWFnZSByZWxlYXNlIHRvbyApXG4gICAqL1xuICByZWFkb25seSBhcHBWZXJzaW9uPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBOdW1iZXIgb2YgVmFybmlzaCBwb2QgcmVwbGljYXMgdG8gcnVuLlxuICAgKiBAZGVmYXVsdCAyXG4gICAqL1xuICByZWFkb25seSByZXBsaWNhcz86IG51bWJlcjtcblxuICAvKipcbiAgICogQWRkaXRpb25hbCBlbnZpcm9ubWVudCB2YXJpYWJsZXMgdG8gcGFzcyB0byB0aGUga3ViZS1odHRwY2FjaGUgY29udGFpbmVyLlxuICAgKiBUaGVzZSBhcmUgYXBwZW5kZWQgdG8gdGhlIGJ1aWx0LWluIGVudiB2YXJzIChCQUNLRU5EX1NFUlZJQ0VfTkFNRSwgZXRjLilcbiAgICogYW5kIGNhbiBiZSByZWZlcmVuY2VkIGluIFZDTCB0ZW1wbGF0ZXMgdXNpbmcgR28gdGVtcGxhdGUgc3ludGF4OiB7eyAuRW52LlZBUl9OQU1FIH19XG4gICAqIEBkZWZhdWx0IC0gbm8gYWRkaXRpb25hbCBlbnYgdmFyc1xuICAgKi9cbiAgcmVhZG9ubHkgZXh0cmFFbnZWYXJzPzogSHR0cGNhY2hlRW52VmFyW107XG59XG5cbi8qKlxuICogUGxvbmVIdHRwY2FjaGUgY29uc3RydWN0IGZvciBkZXBsb3lpbmcgVmFybmlzaCBIVFRQIGNhY2hpbmcgbGF5ZXIuXG4gKlxuICogVXNlcyB0aGUgbWl0dHdhbGQva3ViZS1odHRwY2FjaGUgSGVsbSBjaGFydCB0byBkZXBsb3kgVmFybmlzaCBhcyBhXG4gKiBjYWNoaW5nIHByb3h5IGluIGZyb250IG9mIFBsb25lIGJhY2tlbmQgYW5kL29yIGZyb250ZW5kIHNlcnZpY2VzLlxuICpcbiAqIFRoZSBjYWNoZSBhdXRvbWF0aWNhbGx5IGNvbm5lY3RzIHRvIHRoZSBQbG9uZSBzZXJ2aWNlcyBhbmQgcHJvdmlkZXNcbiAqIEhUVFAgY2FjaGUgaW52YWxpZGF0aW9uIGNhcGFiaWxpdGllcy5cbiAqXG4gKiBAZXhhbXBsZVxuICogY29uc3QgcGxvbmUgPSBuZXcgUGxvbmUoY2hhcnQsICdwbG9uZScpO1xuICogY29uc3QgY2FjaGUgPSBuZXcgUGxvbmVIdHRwY2FjaGUoY2hhcnQsICdjYWNoZScsIHtcbiAqICAgcGxvbmU6IHBsb25lLFxuICogICBleGlzdGluZ1NlY3JldDogJ3Zhcm5pc2gtc2VjcmV0JyxcbiAqIH0pO1xuICovXG5leHBvcnQgY2xhc3MgUGxvbmVIdHRwY2FjaGUgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICAvKipcbiAgICogTmFtZSBvZiB0aGUgVmFybmlzaCBzZXJ2aWNlIGNyZWF0ZWQgYnkgdGhlIEhlbG0gY2hhcnQuXG4gICAqIFVzZSB0aGlzIHRvIHJlZmVyZW5jZSB0aGUgY2FjaGUgc2VydmljZSBmcm9tIGluZ3Jlc3Mgb3Igb3RoZXIgY29uc3RydWN0cy5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBodHRwY2FjaGVTZXJ2aWNlTmFtZTogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIG9wdGlvbnM6IFBsb25lSHR0cGNhY2hlT3B0aW9ucykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG4gICAgbGV0IHZhcm5pc2hWY2w6IHN0cmluZztcbiAgICBpZiAoIW9wdGlvbnMudmFybmlzaFZjbCkge1xuICAgICAgbGV0IHZjbFBhdGg6IHN0cmluZztcbiAgICAgIGlmICghb3B0aW9ucy52YXJuaXNoVmNsRmlsZSkge1xuICAgICAgICB2Y2xQYXRoID0gcGF0aC5qb2luKF9fZGlybmFtZSwgJ2NvbmZpZycsICd2YXJuaXNoLnRwbC52Y2wnKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHZjbFBhdGggPSBvcHRpb25zLnZhcm5pc2hWY2xGaWxlO1xuICAgICAgfVxuICAgICAgdmFybmlzaFZjbCA9IGZzLnJlYWRGaWxlU3luYyh2Y2xQYXRoLCAndXRmOCcpO1xuICAgIH0gZWxzZSB7XG4gICAgICB2YXJuaXNoVmNsID0gb3B0aW9ucy52YXJuaXNoVmNsO1xuICAgIH1cbiAgICBjb25zdCBpbWFnZVRhZyA9IG9wdGlvbnMuYXBwVmVyc2lvbiA/PyBvcHRpb25zLmNoYXJ0VmVyc2lvbjtcbiAgICBjb25zdCBodHRwY2FjaGUgPSBuZXcgSGVsbSh0aGlzLCAnaHR0cGNhY2hlJywge1xuICAgICAgLy8gc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9taXR0d2FsZC9rdWJlLWh0dHBjYWNoZS9jaGFydFxuICAgICAgcmVwbzogJ2h0dHBzOi8vaGVsbS5taXR0d2FsZC5kZScsXG4gICAgICBjaGFydDogJ2t1YmUtaHR0cGNhY2hlJyxcbiAgICAgIHZlcnNpb246IG9wdGlvbnMuY2hhcnRWZXJzaW9uLFxuICAgICAgdmFsdWVzOiB7XG4gICAgICAgIHJlcGxpY2FDb3VudDogb3B0aW9ucy5yZXBsaWNhcyA/PyAyLFxuICAgICAgICAuLi4oaW1hZ2VUYWcgJiYgeyBpbWFnZTogeyB0YWc6IGltYWdlVGFnIH0gfSksXG4gICAgICAgIGNhY2hlOiB7XG4gICAgICAgICAgLy8gbmVlZCB0byBsb29rcyBhdCB0aGUgZnJvbnRlbmRXYXRjaCwgZG8gd2UgbmVlZCBpdD9cbiAgICAgICAgICBmcm9udGVuZFdhdGNoOiBmYWxzZSxcbiAgICAgICAgICBiYWNrZW5kV2F0Y2g6IGZhbHNlLFxuICAgICAgICAgIGV4aXN0aW5nU2VjcmV0OiBvcHRpb25zLmV4aXN0aW5nU2VjcmV0ID8/IHVuZGVmaW5lZCxcbiAgICAgICAgfSxcbiAgICAgICAgdmNsVGVtcGxhdGU6IHZhcm5pc2hWY2wsXG4gICAgICAgIGV4dHJhRW52VmFyczogW1xuICAgICAgICAgIHsgbmFtZTogJ0JBQ0tFTkRfU0VSVklDRV9OQU1FJywgdmFsdWU6IG9wdGlvbnMucGxvbmUuYmFja2VuZFNlcnZpY2VOYW1lIH0sXG4gICAgICAgICAgeyBuYW1lOiAnQkFDS0VORF9TRVJWSUNFX1BPUlQnLCB2YWx1ZTogJzgwODAnIH0sXG4gICAgICAgICAgeyBuYW1lOiAnQkFDS0VORF9TSVRFX0lEJywgdmFsdWU6IG9wdGlvbnMucGxvbmUuc2l0ZUlkIH0sXG4gICAgICAgICAgeyBuYW1lOiAnRlJPTlRFTkRfU0VSVklDRV9OQU1FJywgdmFsdWU6IG9wdGlvbnMucGxvbmUuZnJvbnRlbmRTZXJ2aWNlTmFtZSB9LFxuICAgICAgICAgIHsgbmFtZTogJ0ZST05URU5EX1NFUlZJQ0VfUE9SVCcsIHZhbHVlOiAnMzAwMCcgfSxcbiAgICAgICAgICAuLi4ob3B0aW9ucy5leHRyYUVudlZhcnMgPz8gW10pLFxuICAgICAgICBdLFxuICAgICAgICAvLyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL21pdHR3YWxkL2t1YmUtaHR0cGNhY2hlL2lzc3Vlcy8yNTNcbiAgICAgICAgbm9kZVNlbGVjdG9yOiB7XG4gICAgICAgICAgJ2t1YmVybmV0ZXMuaW8vYXJjaCc6ICdhbWQ2NCcsXG4gICAgICAgIH0sXG4gICAgICAgIHJlc291cmNlczoge1xuICAgICAgICAgIGxpbWl0czoge1xuICAgICAgICAgICAgY3B1OiBvcHRpb25zLmxpbWl0Q3B1IHx8ICc1MDBtJyxcbiAgICAgICAgICAgIG1lbW9yeTogb3B0aW9ucy5saW1pdE1lbW9yeSB8fCAnNTAwTWknLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgcmVxdWVzdHM6IHtcbiAgICAgICAgICAgIGNwdTogb3B0aW9ucy5yZXF1ZXN0Q3B1IHx8ICcxMDBtJyxcbiAgICAgICAgICAgIG1lbW9yeTogb3B0aW9ucy5yZXF1ZXN0TWVtb3J5IHx8ICcxMDBNaScsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgcmJhYzoge1xuICAgICAgICAgIGVuYWJsZWQ6IGZhbHNlLFxuICAgICAgICB9LFxuICAgICAgICBleHBvcnRlcjoge1xuICAgICAgICAgIGVuYWJsZWQ6IG9wdGlvbnMuZXhwb3J0ZXJFbmFibGVkID8/IHRydWUsXG4gICAgICAgICAgcmVzb3VyY2VzOiB7XG4gICAgICAgICAgICBsaW1pdHM6IHtcbiAgICAgICAgICAgICAgY3B1OiAnMTAwbScsXG4gICAgICAgICAgICAgIG1lbW9yeTogJzEwME1pJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICByZXF1ZXN0czoge1xuICAgICAgICAgICAgICBjcHU6ICcxMG0nLFxuICAgICAgICAgICAgICBtZW1vcnk6ICc1ME1pJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgc2VydmljZU1vbml0b3I6IHtcbiAgICAgICAgICBlbmFibGVkOiBvcHRpb25zLnNlcnZpY2Vtb25pdG9yIHx8IGZhbHNlLFxuICAgICAgICAgIHNjcmFwZVNpZ25hbGxlcjogb3B0aW9ucy5zZXJ2aWNlbW9uaXRvciB8fCBmYWxzZSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSk7XG4gICAgY29uc3QgaHR0cGNhY2hlU2VydmljZSA9IGh0dHBjYWNoZS5hcGlPYmplY3RzLmZpbmQoKGNvbnN0cnVjdCkgPT4ge1xuICAgICAgaWYgKChjb25zdHJ1Y3Qua2luZCA9PT0gJ1NlcnZpY2UnKSAmJiAoY29uc3RydWN0Lm1ldGFkYXRhLm5hbWU/LmVuZHNXaXRoKCdrdWJlLWh0dHBjYWNoZScpKSkge1xuICAgICAgICByZXR1cm4gY29uc3RydWN0Lm5hbWU7XG4gICAgICB9XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH0pO1xuICAgIGlmIChodHRwY2FjaGVTZXJ2aWNlID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignQ291bGQgbm90IGZpbmQgaHR0cGNhY2hlIHNlcnZpY2UnKTtcbiAgICB9XG4gICAgdGhpcy5odHRwY2FjaGVTZXJ2aWNlTmFtZSA9IGh0dHBjYWNoZVNlcnZpY2UubmFtZTtcbiAgfVxufSJdfQ==
118
+ PloneHttpcache[_a] = { fqn: "@bluedynamics/cdk8s-plone.PloneHttpcache", version: "0.1.22" };
119
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cGNhY2hlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2h0dHBjYWNoZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLHlCQUF5QjtBQUN6Qiw2QkFBNkI7QUFDN0IsaUNBQTZCO0FBQzdCLDJDQUF1QztBQXdKdkM7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBQ0gsTUFBYSxjQUFlLFNBQVEsc0JBQVM7SUFPM0MsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxPQUE4QjtRQUN0RSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2pCLElBQUksVUFBa0IsQ0FBQztRQUN2QixJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3hCLElBQUksT0FBZSxDQUFDO1lBQ3BCLElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxFQUFFLENBQUM7Z0JBQzVCLE9BQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxRQUFRLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztZQUM5RCxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sT0FBTyxHQUFHLE9BQU8sQ0FBQyxjQUFjLENBQUM7WUFDbkMsQ0FBQztZQUNELFVBQVUsR0FBRyxFQUFFLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNoRCxDQUFDO2FBQU0sQ0FBQztZQUNOLFVBQVUsR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDO1FBQ2xDLENBQUM7UUFDRCxNQUFNLFFBQVEsR0FBRyxPQUFPLENBQUMsVUFBVSxJQUFJLE9BQU8sQ0FBQyxZQUFZLENBQUM7UUFDNUQsTUFBTSxTQUFTLEdBQUcsSUFBSSxZQUFJLENBQUMsSUFBSSxFQUFFLFdBQVcsRUFBRTtZQUM1Qyx1REFBdUQ7WUFDdkQsSUFBSSxFQUFFLDBCQUEwQjtZQUNoQyxLQUFLLEVBQUUsZ0JBQWdCO1lBQ3ZCLE9BQU8sRUFBRSxPQUFPLENBQUMsWUFBWTtZQUM3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QUM7UUFDRCxJQUFJLENBQUMsb0JBQW9CLEdBQUcsZ0JBQWdCLENBQUMsSUFBSSxDQUFDO0lBQ3BELENBQUM7O0FBNUZILHdDQTZGQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGZzIGZyb20gJ2ZzJztcbmltcG9ydCAqIGFzIHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQgeyBIZWxtIH0gZnJvbSAnY2RrOHMnO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQgeyBQbG9uZSB9IGZyb20gJy4vcGxvbmUnO1xuXG4vKipcbiAqIEFuIGVudmlyb25tZW50IHZhcmlhYmxlIHRvIHBhc3MgdG8gdGhlIGt1YmUtaHR0cGNhY2hlIGNvbnRhaW5lci5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBIdHRwY2FjaGVFbnZWYXIge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlLlxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgdmFsdWUgb2YgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlLlxuICAgKi9cbiAgcmVhZG9ubHkgdmFsdWU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBBIEt1YmVybmV0ZXMgdG9sZXJhdGlvbiBmb3IgdGhlIFZhcm5pc2ggcG9kcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBIdHRwY2FjaGVUb2xlcmF0aW9uIHtcbiAgLyoqXG4gICAqIFRoZSB0YWludCBrZXkgdG8gdG9sZXJhdGUuXG4gICAqL1xuICByZWFkb25seSBrZXk6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG9wZXJhdG9yIChFcXVhbCBvciBFeGlzdHMpLlxuICAgKiBAZGVmYXVsdCAnRXF1YWwnXG4gICAqL1xuICByZWFkb25seSBvcGVyYXRvcj86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHRhaW50IHZhbHVlIHRvIG1hdGNoICh3aGVuIG9wZXJhdG9yIGlzIEVxdWFsKS5cbiAgICogQGRlZmF1bHQgLSBubyB2YWx1ZVxuICAgKi9cbiAgcmVhZG9ubHkgdmFsdWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSB0YWludCBlZmZlY3QgdG8gdG9sZXJhdGUgKE5vU2NoZWR1bGUsIFByZWZlck5vU2NoZWR1bGUsIE5vRXhlY3V0ZSkuXG4gICAqIEBkZWZhdWx0IC0gdG9sZXJhdGUgYWxsIGVmZmVjdHNcbiAgICovXG4gIHJlYWRvbmx5IGVmZmVjdD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIG9wdGlvbnMgZm9yIFBsb25lSHR0cGNhY2hlIChWYXJuaXNoIGNhY2hpbmcgbGF5ZXIpLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFBsb25lSHR0cGNhY2hlT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgUGxvbmUgY29uc3RydWN0IHRvIGF0dGFjaCB0aGUgSFRUUCBjYWNoZSB0by5cbiAgICogVGhlIGNhY2hlIHdpbGwgYXV0b21hdGljYWxseSBjb25uZWN0IHRvIHRoZSBiYWNrZW5kIGFuZCBmcm9udGVuZCBzZXJ2aWNlcy5cbiAgICovXG4gIHJlYWRvbmx5IHBsb25lOiBQbG9uZTtcblxuICAvKipcbiAgICogVmFybmlzaCBWQ0wgY29uZmlndXJhdGlvbiBhcyBhIHN0cmluZy5cbiAgICogSWYgcHJvdmlkZWQsIHRoaXMgdGFrZXMgcHJlY2VkZW5jZSBvdmVyIHZhcm5pc2hWY2xGaWxlLlxuICAgKiBAZGVmYXVsdCAtIGxvYWRlZCBmcm9tIHZhcm5pc2hWY2xGaWxlIG9yIGRlZmF1bHQgY29uZmlnIGZpbGVcbiAgICovXG4gIHJlYWRvbmx5IHZhcm5pc2hWY2w/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFBhdGggdG8gYSBWYXJuaXNoIFZDTCBjb25maWd1cmF0aW9uIGZpbGUuXG4gICAqIElmIG5vdCBwcm92aWRlZCwgdXNlcyB0aGUgZGVmYXVsdCBWQ0wgZmlsZSBpbmNsdWRlZCBpbiB0aGUgbGlicmFyeS5cbiAgICogQGRlZmF1bHQgLSB1c2VzIGRlZmF1bHQgY29uZmlnL3Zhcm5pc2gudHBsLnZjbFxuICAgKi9cbiAgcmVhZG9ubHkgdmFybmlzaFZjbEZpbGU/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIE5hbWUgb2YgYW4gZXhpc3RpbmcgS3ViZXJuZXRlcyBzZWNyZXQgY29udGFpbmluZyBWYXJuaXNoIGFkbWluIGNyZWRlbnRpYWxzLlxuICAgKiBUaGUgc2VjcmV0IHNob3VsZCBiZSBjcmVhdGVkIHNlcGFyYXRlbHkgaW4gdGhlIHNhbWUgbmFtZXNwYWNlLlxuICAgKiBAZGVmYXVsdCAtIHVuZGVmaW5lZCAobm8gZXhpc3Rpbmcgc2VjcmV0KVxuICAgKi9cbiAgcmVhZG9ubHkgZXhpc3RpbmdTZWNyZXQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIENQVSBsaW1pdCBmb3IgVmFybmlzaCBwb2RzLlxuICAgKiBAZGVmYXVsdCAnNTAwbSdcbiAgICovXG4gIHJlYWRvbmx5IGxpbWl0Q3B1Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBNZW1vcnkgbGltaXQgZm9yIFZhcm5pc2ggcG9kcy5cbiAgICogQGRlZmF1bHQgJzUwME1pJ1xuICAgKi9cbiAgcmVhZG9ubHkgbGltaXRNZW1vcnk/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIENQVSByZXF1ZXN0IGZvciBWYXJuaXNoIHBvZHMuXG4gICAqIEBkZWZhdWx0ICcxMDBtJ1xuICAgKi9cbiAgcmVhZG9ubHkgcmVxdWVzdENwdT86IHN0cmluZztcblxuICAvKipcbiAgICogTWVtb3J5IHJlcXVlc3QgZm9yIFZhcm5pc2ggcG9kcy5cbiAgICogQGRlZmF1bHQgJzEwME1pJ1xuICAgKi9cbiAgcmVhZG9ubHkgcmVxdWVzdE1lbW9yeT86IHN0cmluZztcblxuICAvKipcbiAgICogRW5hYmxlIFByb21ldGhldXMgU2VydmljZU1vbml0b3IgZm9yIG1ldHJpY3MgY29sbGVjdGlvbi5cbiAgICogUmVxdWlyZXMgUHJvbWV0aGV1cyBPcGVyYXRvciB0byBiZSBpbnN0YWxsZWQgaW4gdGhlIGNsdXN0ZXIuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBzZXJ2aWNlbW9uaXRvcj86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEVuYWJsZSB0aGUgUHJvbWV0aGV1cyBleHBvcnRlciBmb3IgVmFybmlzaCBtZXRyaWNzLlxuICAgKiBXaGVuIGVuYWJsZWQsIHRoZSBleHBvcnRlciBzaWRlY2FyIGNvbnRhaW5lciB3aWxsIGJlIGRlcGxveWVkIGFsb25nc2lkZSBWYXJuaXNoLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBleHBvcnRlckVuYWJsZWQ/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBWZXJzaW9uIG9mIHRoZSBrdWJlLWh0dHBjYWNoZSBIZWxtIGNoYXJ0IHRvIHVzZS5cbiAgICogSWYgbm90IHNwZWNpZmllZCwgdGhlIGxhdGVzdCB2ZXJzaW9uIGZyb20gdGhlIHJlcG9zaXRvcnkgd2lsbCBiZSB1c2VkLlxuICAgKiBAZGVmYXVsdCB1bmRlZmluZWQgKGxhdGVzdClcbiAgICovXG4gIHJlYWRvbmx5IGNoYXJ0VmVyc2lvbj86IHN0cmluZztcblxuICAvKipcbiAgICogVmVyc2lvbiBvZiB0aGUga3ViZS1odHRwY2FjaGUgQ29udGFpbmVyIEltYWdlIHRvIHVzZS5cbiAgICogSWYgbm90IHNwZWNpZmllZCwgdGhlIGxhdGVzdCB2ZXJzaW9uIGZyb20gdGhlIHJlcG9zaXRvcnkgd2lsbCBiZSB1c2VkLlxuICAgKiBAZGVmYXVsdCB1bmRlZmluZWQgKGNoYXJ0VmVyc2lvbiA9IHdpdGggZWFjaCBjaGFydCByZWxlYXNlIHRoZXJlIGlzIGFuIGltYWdlIHJlbGVhc2UgdG9vIClcbiAgICovXG4gIHJlYWRvbmx5IGFwcFZlcnNpb24/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE51bWJlciBvZiBWYXJuaXNoIHBvZCByZXBsaWNhcyB0byBydW4uXG4gICAqIEBkZWZhdWx0IDJcbiAgICovXG4gIHJlYWRvbmx5IHJlcGxpY2FzPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBBZGRpdGlvbmFsIGVudmlyb25tZW50IHZhcmlhYmxlcyB0byBwYXNzIHRvIHRoZSBrdWJlLWh0dHBjYWNoZSBjb250YWluZXIuXG4gICAqIFRoZXNlIGFyZSBhcHBlbmRlZCB0byB0aGUgYnVpbHQtaW4gZW52IHZhcnMgKEJBQ0tFTkRfU0VSVklDRV9OQU1FLCBldGMuKVxuICAgKiBhbmQgY2FuIGJlIHJlZmVyZW5jZWQgaW4gVkNMIHRlbXBsYXRlcyB1c2luZyBHbyB0ZW1wbGF0ZSBzeW50YXg6IHt7IC5FbnYuVkFSX05BTUUgfX1cbiAgICogQGRlZmF1bHQgLSBubyBhZGRpdGlvbmFsIGVudiB2YXJzXG4gICAqL1xuICByZWFkb25seSBleHRyYUVudlZhcnM/OiBIdHRwY2FjaGVFbnZWYXJbXTtcblxuICAvKipcbiAgICogVG9sZXJhdGlvbnMgZm9yIHRoZSBWYXJuaXNoIHBvZHMuXG4gICAqIFVzZSB0aGlzIHRvIGFsbG93IHNjaGVkdWxpbmcgb24gbm9kZXMgd2l0aCBzcGVjaWZpYyB0YWludHMsXG4gICAqIGUuZy4gbm9kZXMgdGFpbnRlZCB3aXRoIGt1YmVybmV0ZXMuaW8vYXJjaD1hbWQ2NDpOb1NjaGVkdWxlLlxuICAgKiBAZGVmYXVsdCAtIG5vIHRvbGVyYXRpb25zXG4gICAqL1xuICByZWFkb25seSB0b2xlcmF0aW9ucz86IEh0dHBjYWNoZVRvbGVyYXRpb25bXTtcbn1cblxuLyoqXG4gKiBQbG9uZUh0dHBjYWNoZSBjb25zdHJ1Y3QgZm9yIGRlcGxveWluZyBWYXJuaXNoIEhUVFAgY2FjaGluZyBsYXllci5cbiAqXG4gKiBVc2VzIHRoZSBtaXR0d2FsZC9rdWJlLWh0dHBjYWNoZSBIZWxtIGNoYXJ0IHRvIGRlcGxveSBWYXJuaXNoIGFzIGFcbiAqIGNhY2hpbmcgcHJveHkgaW4gZnJvbnQgb2YgUGxvbmUgYmFja2VuZCBhbmQvb3IgZnJvbnRlbmQgc2VydmljZXMuXG4gKlxuICogVGhlIGNhY2hlIGF1dG9tYXRpY2FsbHkgY29ubmVjdHMgdG8gdGhlIFBsb25lIHNlcnZpY2VzIGFuZCBwcm92aWRlc1xuICogSFRUUCBjYWNoZSBpbnZhbGlkYXRpb24gY2FwYWJpbGl0aWVzLlxuICpcbiAqIEBleGFtcGxlXG4gKiBjb25zdCBwbG9uZSA9IG5ldyBQbG9uZShjaGFydCwgJ3Bsb25lJyk7XG4gKiBjb25zdCBjYWNoZSA9IG5ldyBQbG9uZUh0dHBjYWNoZShjaGFydCwgJ2NhY2hlJywge1xuICogICBwbG9uZTogcGxvbmUsXG4gKiAgIGV4aXN0aW5nU2VjcmV0OiAndmFybmlzaC1zZWNyZXQnLFxuICogfSk7XG4gKi9cbmV4cG9ydCBjbGFzcyBQbG9uZUh0dHBjYWNoZSBleHRlbmRzIENvbnN0cnVjdCB7XG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoZSBWYXJuaXNoIHNlcnZpY2UgY3JlYXRlZCBieSB0aGUgSGVsbSBjaGFydC5cbiAgICogVXNlIHRoaXMgdG8gcmVmZXJlbmNlIHRoZSBjYWNoZSBzZXJ2aWNlIGZyb20gaW5ncmVzcyBvciBvdGhlciBjb25zdHJ1Y3RzLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGh0dHBjYWNoZVNlcnZpY2VOYW1lOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgb3B0aW9uczogUGxvbmVIdHRwY2FjaGVPcHRpb25zKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcbiAgICBsZXQgdmFybmlzaFZjbDogc3RyaW5nO1xuICAgIGlmICghb3B0aW9ucy52YXJuaXNoVmNsKSB7XG4gICAgICBsZXQgdmNsUGF0aDogc3RyaW5nO1xuICAgICAgaWYgKCFvcHRpb25zLnZhcm5pc2hWY2xGaWxlKSB7XG4gICAgICAgIHZjbFBhdGggPSBwYXRoLmpvaW4oX19kaXJuYW1lLCAnY29uZmlnJywgJ3Zhcm5pc2gudHBsLnZjbCcpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdmNsUGF0aCA9IG9wdGlvbnMudmFybmlzaFZjbEZpbGU7XG4gICAgICB9XG4gICAgICB2YXJuaXNoVmNsID0gZnMucmVhZEZpbGVTeW5jKHZjbFBhdGgsICd1dGY4Jyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHZhcm5pc2hWY2wgPSBvcHRpb25zLnZhcm5pc2hWY2w7XG4gICAgfVxuICAgIGNvbnN0IGltYWdlVGFnID0gb3B0aW9ucy5hcHBWZXJzaW9uID8/IG9wdGlvbnMuY2hhcnRWZXJzaW9uO1xuICAgIGNvbnN0IGh0dHBjYWNoZSA9IG5ldyBIZWxtKHRoaXMsICdodHRwY2FjaGUnLCB7XG4gICAgICAvLyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL21pdHR3YWxkL2t1YmUtaHR0cGNhY2hlL2NoYXJ0XG4gICAgICByZXBvOiAnaHR0cHM6Ly9oZWxtLm1pdHR3YWxkLmRlJyxcbiAgICAgIGNoYXJ0OiAna3ViZS1odHRwY2FjaGUnLFxuICAgICAgdmVyc2lvbjogb3B0aW9ucy5jaGFydFZlcnNpb24sXG4gICAgICB2YWx1ZXM6IHtcbiAgICAgICAgcmVwbGljYUNvdW50OiBvcHRpb25zLnJlcGxpY2FzID8/IDIsXG4gICAgICAgIC4uLihpbWFnZVRhZyAmJiB7IGltYWdlOiB7IHRhZzogaW1hZ2VUYWcgfSB9KSxcbiAgICAgICAgY2FjaGU6IHtcbiAgICAgICAgICAvLyBuZWVkIHRvIGxvb2tzIGF0IHRoZSBmcm9udGVuZFdhdGNoLCBkbyB3ZSBuZWVkIGl0P1xuICAgICAgICAgIGZyb250ZW5kV2F0Y2g6IGZhbHNlLFxuICAgICAgICAgIGJhY2tlbmRXYXRjaDogZmFsc2UsXG4gICAgICAgICAgZXhpc3RpbmdTZWNyZXQ6IG9wdGlvbnMuZXhpc3RpbmdTZWNyZXQgPz8gdW5kZWZpbmVkLFxuICAgICAgICB9LFxuICAgICAgICB2Y2xUZW1wbGF0ZTogdmFybmlzaFZjbCxcbiAgICAgICAgZXh0cmFFbnZWYXJzOiBbXG4gICAgICAgICAgeyBuYW1lOiAnQkFDS0VORF9TRVJWSUNFX05BTUUnLCB2YWx1ZTogb3B0aW9ucy5wbG9uZS5iYWNrZW5kU2VydmljZU5hbWUgfSxcbiAgICAgICAgICB7IG5hbWU6ICdCQUNLRU5EX1NFUlZJQ0VfUE9SVCcsIHZhbHVlOiAnODA4MCcgfSxcbiAgICAgICAgICB7IG5hbWU6ICdCQUNLRU5EX1NJVEVfSUQnLCB2YWx1ZTogb3B0aW9ucy5wbG9uZS5zaXRlSWQgfSxcbiAgICAgICAgICB7IG5hbWU6ICdGUk9OVEVORF9TRVJWSUNFX05BTUUnLCB2YWx1ZTogb3B0aW9ucy5wbG9uZS5mcm9udGVuZFNlcnZpY2VOYW1lIH0sXG4gICAgICAgICAgeyBuYW1lOiAnRlJPTlRFTkRfU0VSVklDRV9QT1JUJywgdmFsdWU6ICczMDAwJyB9LFxuICAgICAgICAgIC4uLihvcHRpb25zLmV4dHJhRW52VmFycyA/PyBbXSksXG4gICAgICAgIF0sXG4gICAgICAgIC8vIHNlZSBodHRwczovL2dpdGh1Yi5jb20vbWl0dHdhbGQva3ViZS1odHRwY2FjaGUvaXNzdWVzLzI1M1xuICAgICAgICBub2RlU2VsZWN0b3I6IHtcbiAgICAgICAgICAna3ViZXJuZXRlcy5pby9hcmNoJzogJ2FtZDY0JyxcbiAgICAgICAgfSxcbiAgICAgICAgLi4uKG9wdGlvbnMudG9sZXJhdGlvbnMgJiYgeyB0b2xlcmF0aW9uczogb3B0aW9ucy50b2xlcmF0aW9ucyB9KSxcbiAgICAgICAgcmVzb3VyY2VzOiB7XG4gICAgICAgICAgbGltaXRzOiB7XG4gICAgICAgICAgICBjcHU6IG9wdGlvbnMubGltaXRDcHUgfHwgJzUwMG0nLFxuICAgICAgICAgICAgbWVtb3J5OiBvcHRpb25zLmxpbWl0TWVtb3J5IHx8ICc1MDBNaScsXG4gICAgICAgICAgfSxcbiAgICAgICAgICByZXF1ZXN0czoge1xuICAgICAgICAgICAgY3B1OiBvcHRpb25zLnJlcXVlc3RDcHUgfHwgJzEwMG0nLFxuICAgICAgICAgICAgbWVtb3J5OiBvcHRpb25zLnJlcXVlc3RNZW1vcnkgfHwgJzEwME1pJyxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICByYmFjOiB7XG4gICAgICAgICAgZW5hYmxlZDogZmFsc2UsXG4gICAgICAgIH0sXG4gICAgICAgIGV4cG9ydGVyOiB7XG4gICAgICAgICAgZW5hYmxlZDogb3B0aW9ucy5leHBvcnRlckVuYWJsZWQgPz8gdHJ1ZSxcbiAgICAgICAgICByZXNvdXJjZXM6IHtcbiAgICAgICAgICAgIGxpbWl0czoge1xuICAgICAgICAgICAgICBjcHU6ICcxMDBtJyxcbiAgICAgICAgICAgICAgbWVtb3J5OiAnMTAwTWknLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHJlcXVlc3RzOiB7XG4gICAgICAgICAgICAgIGNwdTogJzEwbScsXG4gICAgICAgICAgICAgIG1lbW9yeTogJzUwTWknLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBzZXJ2aWNlTW9uaXRvcjoge1xuICAgICAgICAgIGVuYWJsZWQ6IG9wdGlvbnMuc2VydmljZW1vbml0b3IgfHwgZmFsc2UsXG4gICAgICAgICAgc2NyYXBlU2lnbmFsbGVyOiBvcHRpb25zLnNlcnZpY2Vtb25pdG9yIHx8IGZhbHNlLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9KTtcbiAgICBjb25zdCBodHRwY2FjaGVTZXJ2aWNlID0gaHR0cGNhY2hlLmFwaU9iamVjdHMuZmluZCgoY29uc3RydWN0KSA9PiB7XG4gICAgICBpZiAoKGNvbnN0cnVjdC5raW5kID09PSAnU2VydmljZScpICYmIChjb25zdHJ1Y3QubWV0YWRhdGEubmFtZT8uZW5kc1dpdGgoJ2t1YmUtaHR0cGNhY2hlJykpKSB7XG4gICAgICAgIHJldHVybiBjb25zdHJ1Y3QubmFtZTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfSk7XG4gICAgaWYgKGh0dHBjYWNoZVNlcnZpY2UgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdDb3VsZCBub3QgZmluZCBodHRwY2FjaGUgc2VydmljZScpO1xuICAgIH1cbiAgICB0aGlzLmh0dHBjYWNoZVNlcnZpY2VOYW1lID0gaHR0cGNhY2hlU2VydmljZS5uYW1lO1xuICB9XG59Il19
package/lib/index.d.ts CHANGED
@@ -1,2 +1,2 @@
1
1
  export { Plone, PloneOptions, PloneBaseOptions, PloneVariant } from './plone';
2
- export { PloneHttpcache, PloneHttpcacheOptions, HttpcacheEnvVar } from './httpcache';
2
+ export { PloneHttpcache, PloneHttpcacheOptions, HttpcacheEnvVar, HttpcacheToleration } from './httpcache';
package/lib/index.js CHANGED
@@ -6,4 +6,4 @@ Object.defineProperty(exports, "Plone", { enumerable: true, get: function () { r
6
6
  Object.defineProperty(exports, "PloneVariant", { enumerable: true, get: function () { return plone_1.PloneVariant; } });
7
7
  var httpcache_1 = require("./httpcache");
8
8
  Object.defineProperty(exports, "PloneHttpcache", { enumerable: true, get: function () { return httpcache_1.PloneHttpcache; } });
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsaUNBQThFO0FBQXJFLDhGQUFBLEtBQUssT0FBQTtBQUFrQyxxR0FBQSxZQUFZLE9BQUE7QUFDNUQseUNBQXFGO0FBQTVFLDJHQUFBLGNBQWMsT0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IFBsb25lLCBQbG9uZU9wdGlvbnMsIFBsb25lQmFzZU9wdGlvbnMsIFBsb25lVmFyaWFudCB9IGZyb20gJy4vcGxvbmUnO1xuZXhwb3J0IHsgUGxvbmVIdHRwY2FjaGUsIFBsb25lSHR0cGNhY2hlT3B0aW9ucywgSHR0cGNhY2hlRW52VmFyIH0gZnJvbSAnLi9odHRwY2FjaGUnO1xuIl19
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsaUNBQThFO0FBQXJFLDhGQUFBLEtBQUssT0FBQTtBQUFrQyxxR0FBQSxZQUFZLE9BQUE7QUFDNUQseUNBQTBHO0FBQWpHLDJHQUFBLGNBQWMsT0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IFBsb25lLCBQbG9uZU9wdGlvbnMsIFBsb25lQmFzZU9wdGlvbnMsIFBsb25lVmFyaWFudCB9IGZyb20gJy4vcGxvbmUnO1xuZXhwb3J0IHsgUGxvbmVIdHRwY2FjaGUsIFBsb25lSHR0cGNhY2hlT3B0aW9ucywgSHR0cGNhY2hlRW52VmFyLCBIdHRwY2FjaGVUb2xlcmF0aW9uIH0gZnJvbSAnLi9odHRwY2FjaGUnO1xuIl19
package/lib/plone.js CHANGED
@@ -258,5 +258,5 @@ class Plone extends constructs_1.Construct {
258
258
  }
259
259
  exports.Plone = Plone;
260
260
  _a = JSII_RTTI_SYMBOL_1;
261
- Plone[_a] = { fqn: "@bluedynamics/cdk8s-plone.Plone", version: "0.1.21" };
261
+ Plone[_a] = { fqn: "@bluedynamics/cdk8s-plone.Plone", version: "0.1.22" };
262
262
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxvbmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvcGxvbmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxpQ0FBOEI7QUFDOUIsdUNBQXVDO0FBQ3ZDLDJDQUF1QztBQUN2Qyw2Q0FBdUU7QUFDdkUsdUNBQTRDO0FBRTVDLDJFQUF3RztBQUN4Ryx1Q0FBeUM7QUFzTXpDOztHQUVHO0FBQ0gsSUFBWSxZQVlYO0FBWkQsV0FBWSxZQUFZO0lBQ3RCOzs7T0FHRztJQUNILCtCQUFlLENBQUE7SUFFZjs7O09BR0c7SUFDSCx1Q0FBdUIsQ0FBQTtBQUN6QixDQUFDLEVBWlcsWUFBWSw0QkFBWixZQUFZLFFBWXZCO0FBZ0REOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXVCRztBQUNILE1BQWEsS0FBTSxTQUFRLHNCQUFTO0lBdUJsQyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLFVBQXdCLEVBQUU7UUFDbEUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNqQixJQUFJLENBQUMsbUJBQW1CLEdBQUcsU0FBUyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxNQUFNLEdBQUcsT0FBTyxDQUFDLE1BQU0sSUFBSSxPQUFPLENBQUM7UUFDeEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUMsT0FBTyxJQUFJLFlBQVksQ0FBQyxLQUFLLENBQUM7UUFFckQsMkVBQTJFO1FBQzNFLFVBQVU7UUFDVixNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQztRQUN0QyxNQUFNLGFBQWEsR0FBRztZQUNwQix3QkFBd0IsRUFBRSxlQUFlO1lBQ3pDLDZCQUE2QixFQUFFLFNBQVM7WUFDeEMsMkJBQTJCLEVBQUUsT0FBTyxDQUFDLE9BQU8sSUFBSSxXQUFXO1NBQzVELENBQUM7UUFDRixNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUM7UUFFekIsVUFBVTtRQUNWLElBQUksY0FBYyxHQUEyQjtZQUMz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QUFFLElBQUksRUFBRSxRQUFRLEVBQUUsQ0FBQzt3QkFDbkMsR0FBRyxDQUFDLFVBQVUsSUFBSSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsQ0FBQzt3QkFDN0MsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJO3dCQUNqQixRQUFRLEVBQUUsS0FBSztxQkFDaEI7aUJBQ0Y7YUFDRjtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7O0FBclBILHNCQXNQQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5hbWVzIH0gZnJvbSAnY2RrOHMnO1xuaW1wb3J0ICogYXMga3BsdXMgZnJvbSAnY2RrOHMtcGx1cy0zMCc7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB7IFBsb25lRGVwbG95bWVudCwgUGxvbmVEZXBsb3ltZW50T3B0aW9ucyB9IGZyb20gJy4vZGVwbG95bWVudCc7XG5pbXBvcnQgeyBJbnRPclN0cmluZyB9IGZyb20gJy4vaW1wb3J0cy9rOHMnO1xuaW1wb3J0ICogYXMgazhzIGZyb20gJy4vaW1wb3J0cy9rOHMnO1xuaW1wb3J0IHsgU2VydmljZU1vbml0b3IsIFNlcnZpY2VNb25pdG9yU3BlY0VuZHBvaW50c1RhcmdldFBvcnQgfSBmcm9tICcuL2ltcG9ydHMvbW9uaXRvcmluZy5jb3Jlb3MuY29tJztcbmltcG9ydCB7IFBsb25lU2VydmljZSB9IGZyb20gJy4vc2VydmljZSc7XG5cbi8qKlxuICogQmFzZSBvcHRpb25zIGZvciBQbG9uZSBiYWNrZW5kIG9yIGZyb250ZW5kIGNvbmZpZ3VyYXRpb24uXG4gKiBUaGVzZSBvcHRpb25zIGNvbnRyb2wgY29udGFpbmVyIGltYWdlLCByZXBsaWNhIGNvdW50LCByZXNvdXJjZSBsaW1pdHMsXG4gKiBlbnZpcm9ubWVudCB2YXJpYWJsZXMsIGFuZCBoZWFsdGggcHJvYmVzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFBsb25lQmFzZU9wdGlvbnMge1xuICAvKipcbiAgICogQ29udGFpbmVyIGltYWdlIHRvIHVzZSBmb3IgdGhlIGRlcGxveW1lbnQuXG4gICAqIEBleGFtcGxlICdwbG9uZS9wbG9uZS1iYWNrZW5kOjYuMC4xMCcgb3IgJ3Bsb25lL3Bsb25lLWZyb250ZW5kOjE2LjAuMCdcbiAgICogQGRlZmF1bHQgLSAncGxvbmUvcGxvbmUtYmFja2VuZDpsYXRlc3QnIGZvciBiYWNrZW5kLCAncGxvbmUvcGxvbmUtZnJvbnRlbmQ6bGF0ZXN0JyBmb3IgZnJvbnRlbmRcbiAgICovXG4gIHJlYWRvbmx5IGltYWdlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJbWFnZSBwdWxsIHBvbGljeSBmb3IgdGhlIGNvbnRhaW5lci5cbiAgICogQGRlZmF1bHQgJ0lmTm90UHJlc2VudCdcbiAgICovXG4gIHJlYWRvbmx5IGltYWdlUHVsbFBvbGljeT86IHN0cmluZztcblxuICAvKipcbiAgICogTnVtYmVyIG9mIHBvZCByZXBsaWNhcyB0byBydW4uXG4gICAqIEBkZWZhdWx0IDJcbiAgICovXG4gIHJlYWRvbmx5IHJlcGxpY2FzPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBNYXhpbXVtIG51bWJlciBvZiBwb2RzIHRoYXQgY2FuIGJlIHVuYXZhaWxhYmxlIGR1cmluZyB1cGRhdGVzLlxuICAgKiBDYW4gYmUgYW4gYWJzb2x1dGUgbnVtYmVyIChlLmcuLCAxKSBvciBhIHBlcmNlbnRhZ2UgKGUuZy4sICc1MCUnKS5cbiAgICogVXNlZCBpbiBQb2REaXNydXB0aW9uQnVkZ2V0IGlmIHNwZWNpZmllZC5cbiAgICogQGRlZmF1bHQgLSB1bmRlZmluZWQgKG5vdCBzZXQpXG4gICAqL1xuICByZWFkb25seSBtYXhVbmF2YWlsYWJsZT86IG51bWJlciB8IHN0cmluZztcblxuICAvKipcbiAgICogTWluaW11bSBudW1iZXIgb2YgcG9kcyB0aGF0IG11c3QgYmUgYXZhaWxhYmxlIGR1cmluZyB1cGRhdGVzLlxuICAgKiBDYW4gYmUgYW4gYWJzb2x1dGUgbnVtYmVyIChlLmcuLCAxKSBvciBhIHBlcmNlbnRhZ2UgKGUuZy4sICc1MCUnKS5cbiAgICogVXNlZCBpbiBQb2REaXNydXB0aW9uQnVkZ2V0IGlmIHNwZWNpZmllZC5cbiAgICogQGRlZmF1bHQgLSB1bmRlZmluZWQgKG5vdCBzZXQpXG4gICAqL1xuICByZWFkb25seSBtaW5BdmFpbGFibGU/OiBudW1iZXIgfCBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIENQVSBsaW1pdCBmb3IgdGhlIGNvbnRhaW5lci5cbiAgICogQGV4YW1wbGUgJzUwMG0nIG9yICcxJyBvciAnMjAwMG0nXG4gICAqIEBkZWZhdWx0ICc1MDBtJyBmb3IgYm90aCBiYWNrZW5kIGFuZCBmcm9udGVuZFxuICAgKi9cbiAgcmVhZG9ubHkgbGltaXRDcHU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE1lbW9yeSBsaW1pdCBmb3IgdGhlIGNvbnRhaW5lci5cbiAgICogQGV4YW1wbGUgJzUxMk1pJyBvciAnMUdpJ1xuICAgKiBAZGVmYXVsdCAnNTEyTWknIGZvciBiYWNrZW5kLCAnMUdpJyBmb3IgZnJvbnRlbmRcbiAgICovXG4gIHJlYWRvbmx5IGxpbWl0TWVtb3J5Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBDUFUgcmVxdWVzdCBmb3IgdGhlIGNvbnRhaW5lci5cbiAgICogQGV4YW1wbGUgJzIwMG0nIG9yICcwLjUnXG4gICAqIEBkZWZhdWx0ICcyMDBtJ1xuICAgKi9cbiAgcmVhZG9ubHkgcmVxdWVzdENwdT86IHN0cmluZztcblxuICAvKipcbiAgICogTWVtb3J5IHJlcXVlc3QgZm9yIHRoZSBjb250YWluZXIuXG4gICAqIEBleGFtcGxlICcyNTZNaScgb3IgJzUxMk1pJ1xuICAgKiBAZGVmYXVsdCAnMjU2TWknXG4gICAqL1xuICByZWFkb25seSByZXF1ZXN0TWVtb3J5Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBFbnZpcm9ubWVudCB2YXJpYWJsZXMgdG8gc2V0IGluIHRoZSBjb250YWluZXIuXG4gICAqIFVzZSBjZGs4cy1wbHVzLTMwIEVudiBjbGFzcyB0byBkZWZpbmUgdmFyaWFibGVzIGFuZCBzb3VyY2VzLlxuICAgKiBAZGVmYXVsdCAtIHVuZGVmaW5lZCAobm8gYWRkaXRpb25hbCBlbnZpcm9ubWVudCB2YXJpYWJsZXMpXG4gICAqL1xuICByZWFkb25seSBlbnZpcm9ubWVudD86IGtwbHVzLkVudjtcblxuICAvKipcbiAgICogRW5hYmxlIHJlYWRpbmVzcyBwcm9iZSBmb3IgdGhlIGNvbnRhaW5lci5cbiAgICogUmVhZGluZXNzIHByb2JlcyBkZXRlcm1pbmUgd2hlbiBhIGNvbnRhaW5lciBpcyByZWFkeSB0byBhY2NlcHQgdHJhZmZpYy5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgcmVhZGluZXNzRW5hYmxlZD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIE51bWJlciBvZiBzZWNvbmRzIGFmdGVyIGNvbnRhaW5lciBzdGFydCBiZWZvcmUgcmVhZGluZXNzIHByb2JlIGlzIGluaXRpYXRlZC5cbiAgICogQGRlZmF1bHQgMTBcbiAgICovXG4gIHJlYWRvbmx5IHJlYWRpbmVzc0luaXRpYWxEZWxheVNlY29uZHM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIE51bWJlciBvZiBzZWNvbmRzIGFmdGVyIHdoaWNoIHRoZSByZWFkaW5lc3MgcHJvYmUgdGltZXMgb3V0LlxuICAgKiBAZGVmYXVsdCAxNVxuICAgKi9cbiAgcmVhZG9ubHkgcmVhZGluZXNzVGltZW91dFNlY29uZHM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEhvdyBvZnRlbiAoaW4gc2Vjb25kcykgdG8gcGVyZm9ybSB0aGUgcmVhZGluZXNzIHByb2JlLlxuICAgKiBAZGVmYXVsdCAxMFxuICAgKi9cbiAgcmVhZG9ubHkgcmVhZGluZXNzUGVyaW9kU2Vjb25kcz86IG51bWJlcjtcblxuICAvKipcbiAgICogTWluaW11bSBjb25zZWN1dGl2ZSBzdWNjZXNzZXMgZm9yIHRoZSByZWFkaW5lc3MgcHJvYmUgdG8gYmUgY29uc2lkZXJlZCBzdWNjZXNzZnVsLlxuICAgKiBAZGVmYXVsdCAxXG4gICAqL1xuICByZWFkb25seSByZWFkaW5lc3NTdWNjZXNzVGhyZXNob2xkPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBNaW5pbXVtIGNvbnNlY3V0aXZlIGZhaWx1cmVzIGZvciB0aGUgcmVhZGluZXNzIHByb2JlIHRvIGJlIGNvbnNpZGVyZWQgZmFpbGVkLlxuICAgKiBAZGVmYXVsdCAzXG4gICAqL1xuICByZWFkb25seSByZWFkaW5lc3NGYWlsdXJlVGhyZXNob2xkPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBFbmFibGUgbGl2ZW5lc3MgcHJvYmUgZm9yIHRoZSBjb250YWluZXIuXG4gICAqIExpdmVuZXNzIHByb2JlcyBkZXRlcm1pbmUgd2hlbiB0byByZXN0YXJ0IGEgY29udGFpbmVyLlxuICAgKiBSZWNvbW1lbmRlZDogdHJ1ZSBmb3IgZnJvbnRlbmQsIGZhbHNlIGZvciBiYWNrZW5kIChab3BlIGhhcyBpdHMgb3duIHJlY292ZXJ5KS5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGxpdmVuZXNzRW5hYmxlZD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIE51bWJlciBvZiBzZWNvbmRzIGFmdGVyIGNvbnRhaW5lciBzdGFydCBiZWZvcmUgbGl2ZW5lc3MgcHJvYmUgaXMgaW5pdGlhdGVkLlxuICAgKiBAZGVmYXVsdCAzMFxuICAgKi9cbiAgcmVhZG9ubHkgbGl2ZW5lc3NJbml0aWFsRGVsYXlTZWNvbmRzPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBOdW1iZXIgb2Ygc2Vjb25kcyBhZnRlciB3aGljaCB0aGUgbGl2ZW5lc3MgcHJvYmUgdGltZXMgb3V0LlxuICAgKiBAZGVmYXVsdCA1XG4gICAqL1xuICByZWFkb25seSBsaXZlbmVzc1RpbWVvdXRTZWNvbmRzPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBIb3cgb2Z0ZW4gKGluIHNlY29uZHMpIHRvIHBlcmZvcm0gdGhlIGxpdmVuZXNzIHByb2JlLlxuICAgKiBAZGVmYXVsdCAxMFxuICAgKi9cbiAgcmVhZG9ubHkgbGl2ZW5lc3NQZXJpb2RTZWNvbmRzPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBNaW5pbXVtIGNvbnNlY3V0aXZlIHN1Y2Nlc3NlcyBmb3IgdGhlIGxpdmVuZXNzIHByb2JlIHRvIGJlIGNvbnNpZGVyZWQgc3VjY2Vzc2Z1bC5cbiAgICogQGRlZmF1bHQgMVxuICAgKi9cbiAgcmVhZG9ubHkgbGl2ZW5lc3NTdWNjZXNzVGhyZXNob2xkPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBNaW5pbXVtIGNvbnNlY3V0aXZlIGZhaWx1cmVzIGZvciB0aGUgbGl2ZW5lc3MgcHJvYmUgdG8gYmUgY29uc2lkZXJlZCBmYWlsZWQuXG4gICAqIEBkZWZhdWx0IDNcbiAgICovXG4gIHJlYWRvbmx5IGxpdmVuZXNzRmFpbHVyZVRocmVzaG9sZD86IG51bWJlcjtcblxuICAvKipcbiAgICogQW5ub3RhdGlvbnMgdG8gYWRkIHRvIHRoZSBEZXBsb3ltZW50IG1ldGFkYXRhLlxuICAgKiBAZXhhbXBsZSB7ICdkZXBsb3ltZW50Lmt1YmVybmV0ZXMuaW8vcmV2aXNpb24nOiAnMScgfVxuICAgKiBAZGVmYXVsdCAtIG5vIGFkZGl0aW9uYWwgYW5ub3RhdGlvbnNcbiAgICovXG4gIHJlYWRvbmx5IGFubm90YXRpb25zPzogeyBbbmFtZTogc3RyaW5nXTogc3RyaW5nIH07XG5cbiAgLyoqXG4gICAqIEFubm90YXRpb25zIHRvIGFkZCB0byB0aGUgUG9kIHRlbXBsYXRlIG1ldGFkYXRhLlxuICAgKiBDb21tb24gZm9yIFByb21ldGhldXMsIElzdGlvLCBiYWNrdXAgcG9saWNpZXMsIGV0Yy5cbiAgICogQGV4YW1wbGUgeyAncHJvbWV0aGV1cy5pby9zY3JhcGUnOiAndHJ1ZScsICdwcm9tZXRoZXVzLmlvL3BvcnQnOiAnODA4MCcgfVxuICAgKiBAZGVmYXVsdCAtIG5vIGFkZGl0aW9uYWwgYW5ub3RhdGlvbnNcbiAgICovXG4gIHJlYWRvbmx5IHBvZEFubm90YXRpb25zPzogeyBbbmFtZTogc3RyaW5nXTogc3RyaW5nIH07XG5cbiAgLyoqXG4gICAqIEFubm90YXRpb25zIHRvIGFkZCB0byB0aGUgU2VydmljZSBtZXRhZGF0YS5cbiAgICogQ29tbW9uIGZvciBleHRlcm5hbC1kbnMsIGxvYWQgYmFsYW5jZXJzLCBzZXJ2aWNlIG1lc2gsIGV0Yy5cbiAgICogQGV4YW1wbGUgeyAnZXh0ZXJuYWwtZG5zLmFscGhhLmt1YmVybmV0ZXMuaW8vaG9zdG5hbWUnOiAncGxvbmUuZXhhbXBsZS5jb20nIH1cbiAgICogQGRlZmF1bHQgLSBubyBhZGRpdGlvbmFsIGFubm90YXRpb25zXG4gICAqL1xuICByZWFkb25seSBzZXJ2aWNlQW5ub3RhdGlvbnM/OiB7IFtuYW1lOiBzdHJpbmddOiBzdHJpbmcgfTtcblxuICAvKipcbiAgICogRW5hYmxlIFByb21ldGhldXMgU2VydmljZU1vbml0b3IgZm9yIG1ldHJpY3MgY29sbGVjdGlvbi5cbiAgICogUmVxdWlyZXMgUHJvbWV0aGV1cyBPcGVyYXRvciB0byBiZSBpbnN0YWxsZWQgaW4gdGhlIGNsdXN0ZXIuXG4gICAqIFdoZW4gZW5hYmxlZCwgYSBTZXJ2aWNlTW9uaXRvciByZXNvdXJjZSB3aWxsIGJlIGNyZWF0ZWQgdG8gc2NyYXBlIG1ldHJpY3MuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBzZXJ2aWNlbW9uaXRvcj86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFBvcnQgbmFtZSBvciBudW1iZXIgdG8gc2NyYXBlIG1ldHJpY3MgZnJvbS5cbiAgICogT25seSB1c2VkIHdoZW4gc2VydmljZW1vbml0b3IgaXMgZW5hYmxlZC5cbiAgICogQGRlZmF1bHQgLSB1c2VzIHRoZSBtYWluIHNlcnZpY2UgcG9ydFxuICAgKi9cbiAgcmVhZG9ubHkgbWV0cmljc1BvcnQ/OiBzdHJpbmcgfCBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFBhdGggdG8gc2NyYXBlIG1ldHJpY3MgZnJvbS5cbiAgICogT25seSB1c2VkIHdoZW4gc2VydmljZW1vbml0b3IgaXMgZW5hYmxlZC5cbiAgICogQGRlZmF1bHQgJy9tZXRyaWNzJ1xuICAgKi9cbiAgcmVhZG9ubHkgbWV0cmljc1BhdGg/OiBzdHJpbmc7XG59XG4vKipcbiAqIFBsb25lIGRlcGxveW1lbnQgdmFyaWFudHMuXG4gKi9cbmV4cG9ydCBlbnVtIFBsb25lVmFyaWFudCB7XG4gIC8qKlxuICAgKiBWb2x0byB2YXJpYW50OiBSZWFjdEpTIGZyb250ZW5kIChWb2x0bykgd2l0aCBSRVNUIEFQSSBiYWNrZW5kLlxuICAgKiBEZXBsb3lzIGJvdGggZnJvbnRlbmQgYW5kIGJhY2tlbmQgc2VydmljZXMuXG4gICAqL1xuICBWT0xUTyA9ICd2b2x0bycsXG5cbiAgLyoqXG4gICAqIENsYXNzaWMgVUkgdmFyaWFudDogVHJhZGl0aW9uYWwgUGxvbmUgd2l0aCBzZXJ2ZXItc2lkZSByZW5kZXJpbmcuXG4gICAqIERlcGxveXMgb25seSB0aGUgYmFja2VuZCBzZXJ2aWNlLlxuICAgKi9cbiAgQ0xBU1NJQ1VJID0gJ2NsYXNzaWN1aScsXG59XG5cbi8qKlxuICogTWFpbiBjb25maWd1cmF0aW9uIG9wdGlvbnMgZm9yIFBsb25lIGRlcGxveW1lbnQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUGxvbmVPcHRpb25zIHtcbiAgLyoqXG4gICAqIFZlcnNpb24gc3RyaW5nIGZvciBsYWJlbGluZyB0aGUgZGVwbG95bWVudC5cbiAgICogVGhpcyBpcyB1c2VkIGluIEt1YmVybmV0ZXMgbGFiZWxzIGFuZCBkb2Vzbid0IGFmZmVjdCB0aGUgYWN0dWFsIGltYWdlIHZlcnNpb25zLlxuICAgKiBAZGVmYXVsdCAndW5kZWZpbmVkJ1xuICAgKi9cbiAgcmVhZG9ubHkgdmVyc2lvbj86IHN0cmluZztcblxuICAvKipcbiAgICogUGxvbmUgc2l0ZSBJRCBpbiB0aGUgWk9EQi5cbiAgICogVGhpcyBpcyB1c2VkIHRvIGNvbnN0cnVjdCB0aGUgaW50ZXJuYWwgQVBJIHBhdGggZm9yIFZvbHRvIGZyb250ZW5kLlxuICAgKiBAZGVmYXVsdCAnUGxvbmUnXG4gICAqL1xuICByZWFkb25seSBzaXRlSWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFBsb25lIGRlcGxveW1lbnQgdmFyaWFudCB0byB1c2UuXG4gICAqIEBkZWZhdWx0IFBsb25lVmFyaWFudC5WT0xUT1xuICAgKi9cbiAgcmVhZG9ubHkgdmFyaWFudD86IFBsb25lVmFyaWFudDtcblxuICAvKipcbiAgICogQmFja2VuZCAoUGxvbmUgQVBJKSBjb25maWd1cmF0aW9uLlxuICAgKiBAZGVmYXVsdCB7fSAodXNlcyBkZWZhdWx0IHZhbHVlcyBmcm9tIFBsb25lQmFzZU9wdGlvbnMpXG4gICAqL1xuICByZWFkb25seSBiYWNrZW5kPzogUGxvbmVCYXNlT3B0aW9ucztcblxuICAvKipcbiAgICogRnJvbnRlbmQgKFZvbHRvKSBjb25maWd1cmF0aW9uLlxuICAgKiBPbmx5IHVzZWQgd2hlbiB2YXJpYW50IGlzIFBsb25lVmFyaWFudC5WT0xUTy5cbiAgICogQGRlZmF1bHQge30gKHVzZXMgZGVmYXVsdCB2YWx1ZXMgZnJvbSBQbG9uZUJhc2VPcHRpb25zKVxuICAgKi9cbiAgcmVhZG9ubHkgZnJvbnRlbmQ/OiBQbG9uZUJhc2VPcHRpb25zO1xuXG4gIC8qKlxuICAgKiBOYW1lcyBvZiBLdWJlcm5ldGVzIHNlY3JldHMgdG8gdXNlIGZvciBwdWxsaW5nIHByaXZhdGUgY29udGFpbmVyIGltYWdlcy5cbiAgICogVGhlc2Ugc2VjcmV0cyBtdXN0IGV4aXN0IGluIHRoZSBzYW1lIG5hbWVzcGFjZSBhcyB0aGUgZGVwbG95bWVudC5cbiAgICogQGV4YW1wbGUgWydteS1yZWdpc3RyeS1zZWNyZXQnXVxuICAgKiBAZGVmYXVsdCBbXSAobm8gaW1hZ2UgcHVsbCBzZWNyZXRzKVxuICAgKi9cbiAgcmVhZG9ubHkgaW1hZ2VQdWxsU2VjcmV0cz86IHN0cmluZ1tdO1xufVxuXG4vKipcbiAqIFBsb25lIGNvbnN0cnVjdCBmb3IgZGVwbG95aW5nIFBsb25lIENNUyB0byBLdWJlcm5ldGVzLlxuICpcbiAqIFRoaXMgY29uc3RydWN0IGNyZWF0ZXMgYWxsIG5lY2Vzc2FyeSBLdWJlcm5ldGVzIHJlc291cmNlcyBmb3IgcnVubmluZyBQbG9uZTpcbiAqIC0gRGVwbG95bWVudChzKSBmb3IgYmFja2VuZCAoYW5kIG9wdGlvbmFsbHkgZnJvbnRlbmQpXG4gKiAtIFNlcnZpY2UocykgZm9yIG5ldHdvcmsgYWNjZXNzXG4gKiAtIE9wdGlvbmFsIFBvZERpc3J1cHRpb25CdWRnZXQgZm9yIGhpZ2ggYXZhaWxhYmlsaXR5XG4gKlxuICogU3VwcG9ydHMgdHdvIGRlcGxveW1lbnQgdmFyaWFudHM6XG4gKiAtIFZPTFRPOiBNb2Rlcm4gUmVhY3QgZnJvbnRlbmQgd2l0aCBSRVNUIEFQSSBiYWNrZW5kIChkZWZhdWx0KVxuICogLSBDTEFTU0lDVUk6IFRyYWRpdGlvbmFsIHNlcnZlci1zaWRlIHJlbmRlcmVkIFBsb25lXG4gKlxuICogQGV4YW1wbGVcbiAqIG5ldyBQbG9uZShjaGFydCwgJ215LXBsb25lJywge1xuICogICB2YXJpYW50OiBQbG9uZVZhcmlhbnQuVk9MVE8sXG4gKiAgIGJhY2tlbmQ6IHtcbiAqICAgICBpbWFnZTogJ3Bsb25lL3Bsb25lLWJhY2tlbmQ6Ni4wLjEwJyxcbiAqICAgICByZXBsaWNhczogMyxcbiAqICAgfSxcbiAqICAgZnJvbnRlbmQ6IHtcbiAqICAgICBpbWFnZTogJ3Bsb25lL3Bsb25lLWZyb250ZW5kOjE2LjAuMCcsXG4gKiAgIH0sXG4gKiB9KTtcbiAqL1xuZXhwb3J0IGNsYXNzIFBsb25lIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIGJhY2tlbmQgS3ViZXJuZXRlcyBzZXJ2aWNlLlxuICAgKiBVc2UgdGhpcyB0byByZWZlcmVuY2UgdGhlIGJhY2tlbmQgc2VydmljZSBmcm9tIG90aGVyIGNvbnN0cnVjdHMuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYmFja2VuZFNlcnZpY2VOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIGZyb250ZW5kIEt1YmVybmV0ZXMgc2VydmljZS5cbiAgICogT25seSBzZXQgd2hlbiB2YXJpYW50IGlzIFZPTFRPLCBvdGhlcndpc2UgdW5kZWZpbmVkLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGZyb250ZW5kU2VydmljZU5hbWU6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogVGhlIGRlcGxveW1lbnQgdmFyaWFudCBiZWluZyB1c2VkIChWT0xUTyBvciBDTEFTU0lDVUkpLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHZhcmlhbnQ6IFBsb25lVmFyaWFudDtcblxuICAvKipcbiAgICogVGhlIFBsb25lIHNpdGUgSUQgaW4gWk9EQi5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBzaXRlSWQ6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBvcHRpb25zOiBQbG9uZU9wdGlvbnMgPSB7fSkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG4gICAgdGhpcy5mcm9udGVuZFNlcnZpY2VOYW1lID0gdW5kZWZpbmVkO1xuICAgIHRoaXMuc2l0ZUlkID0gb3B0aW9ucy5zaXRlSWQgPz8gJ1Bsb25lJztcbiAgICB0aGlzLnZhcmlhbnQgPSBvcHRpb25zLnZhcmlhbnQgPz8gUGxvbmVWYXJpYW50LlZPTFRPO1xuXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy8gQmFja2VuZFxuICAgIGNvbnN0IGJhY2tlbmQgPSBvcHRpb25zLmJhY2tlbmQgPz8ge307XG4gICAgY29uc3QgYmFja2VuZExhYmVscyA9IHtcbiAgICAgICdhcHAua3ViZXJuZXRlcy5pby9uYW1lJzogJ3Bsb25lLWJhY2tlbmQnLFxuICAgICAgJ2FwcC5rdWJlcm5ldGVzLmlvL2NvbXBvbmVudCc6ICdiYWNrZW5kJyxcbiAgICAgICdhcHAua3ViZXJuZXRlcy5pby92ZXJzaW9uJzogb3B0aW9ucy52ZXJzaW9uID8/ICd1bmRlZmluZWQnLFxuICAgIH07XG4gICAgY29uc3QgYmFja2VuZFBvcnQgPSA4MDgwO1xuXG4gICAgLy8gT3B0aW9uc1xuICAgIHZhciBiYWNrZW5kT3B0aW9uczogUGxvbmVEZXBsb3ltZW50T3B0aW9ucyA9IHtcbiAgICAgIGxhYmVsczogYmFja2VuZExhYmVscyxcbiAgICAgIGltYWdlOiB7XG4gICAgICAgIGltYWdlOiBiYWNrZW5kLmltYWdlID8/ICdwbG9uZS9wbG9uZS1iYWNrZW5kOmxhdGVzdCcsXG4gICAgICAgIGltYWdlUHVsbFNlY3JldHM6IG9wdGlvbnMuaW1hZ2VQdWxsU2VjcmV0cyA/PyBbXSxcbiAgICAgICAgaW1hZ2VQdWxsUG9saWN5OiBiYWNrZW5kLmltYWdlUHVsbFBvbGljeSA/PyAnSWZOb3RQcmVzZW50JyxcbiAgICAgIH0sXG4gICAgICByZXBsaWNhczogYmFja2VuZC5yZXBsaWNhcyxcbiAgICAgIGxpbWl0Q3B1OiBiYWNrZW5kLmxpbWl0Q3B1ID8/ICc1MDBtJyxcbiAgICAgIGxpbWl0TWVtb3J5OiBiYWNrZW5kLmxpbWl0TWVtb3J5ID8/ICc1MTJNaScsXG4gICAgICByZXF1ZXN0Q3B1OiBiYWNrZW5kLnJlcXVlc3RDcHUgPz8gJzIwMG0nLFxuICAgICAgcmVxdWVzdE1lbW9yeTogYmFja2VuZC5yZXF1ZXN0TWVtb3J5ID8/ICcyNTZNaScsXG4gICAgICBwZGI6IHtcbiAgICAgICAgbWF4VW5hdmFpbGFibGU6IGJhY2tlbmQubWF4VW5hdmFpbGFibGUgPz8gdW5kZWZpbmVkLFxuICAgICAgICBtaW5BdmFpbGFibGU6IGJhY2tlbmQubWluQXZhaWxhYmxlID8/IHVuZGVmaW5lZCxcbiAgICAgIH0sXG4gICAgICBwb3J0OiBiYWNrZW5kUG9ydCxcbiAgICAgIGVudmlyb25tZW50OiBiYWNrZW5kLmVudmlyb25tZW50LFxuICAgICAgYW5ub3RhdGlvbnM6IGJhY2tlbmQuYW5ub3RhdGlvbnMsXG4gICAgICBwb2RBbm5vdGF0aW9uczogYmFja2VuZC5wb2RBbm5vdGF0aW9ucyxcbiAgICB9O1xuXG4gICAgLy8gUHJvYmluZ1xuICAgIGNvbnN0IGJhY2tlbmRBY3Rpb25IdHRwR2V0OiBrOHMuSHR0cEdldEFjdGlvbiA9IHtcbiAgICAgIHBhdGg6ICcvJyxcbiAgICAgIHBvcnQ6IEludE9yU3RyaW5nLmZyb21OdW1iZXIoYmFja2VuZFBvcnQpLFxuICAgIH07XG4gICAgaWYgKGJhY2tlbmQubGl2ZW5lc3NFbmFibGVkID8/IGZhbHNlKSB7XG4gICAgICBiYWNrZW5kT3B0aW9ucy5saXZlbmVzc1Byb2JlID0ge1xuICAgICAgICBodHRwR2V0OiBiYWNrZW5kQWN0aW9uSHR0cEdldCxcbiAgICAgICAgaW5pdGlhbERlbGF5U2Vjb25kczogYmFja2VuZC5saXZlbmVzc0luaXRpYWxEZWxheVNlY29uZHMgPz8gMzAsXG4gICAgICAgIHRpbWVvdXRTZWNvbmRzOiBiYWNrZW5kLmxpdmVuZXNzVGltZW91dFNlY29uZHMgPz8gNSxcbiAgICAgICAgcGVyaW9kU2Vjb25kczogYmFja2VuZC5saXZlbmVzc1BlcmlvZFNlY29uZHMgPz8gMTAsXG4gICAgICAgIHN1Y2Nlc3NUaHJlc2hvbGQ6IGJhY2tlbmQubGl2ZW5lc3NTdWNjZXNzVGhyZXNob2xkID8/IDEsXG4gICAgICAgIGZhaWx1cmVUaHJlc2hvbGQ6IGJhY2tlbmQubGl2ZW5lc3NGYWlsdXJlVGhyZXNob2xkID8/IDMsXG4gICAgICB9O1xuICAgIH1cbiAgICBpZiAoYmFja2VuZC5yZWFkaW5lc3NFbmFibGVkID8/IHRydWUpIHtcbiAgICAgIGJhY2tlbmRPcHRpb25zLnJlYWRpbmVzc1Byb2JlID0ge1xuICAgICAgICBodHRwR2V0OiBiYWNrZW5kQWN0aW9uSHR0cEdldCxcbiAgICAgICAgaW5pdGlhbERlbGF5U2Vjb25kczogYmFja2VuZC5yZWFkaW5lc3NJbml0aWFsRGVsYXlTZWNvbmRzID8/IDEwLFxuICAgICAgICB0aW1lb3V0U2Vjb25kczogYmFja2VuZC5yZWFkaW5lc3NUaW1lb3V0U2Vjb25kcyA/PyAxNSxcbiAgICAgICAgcGVyaW9kU2Vjb25kczogYmFja2VuZC5yZWFkaW5lc3NQZXJpb2RTZWNvbmRzID8/IDEwLFxuICAgICAgICBzdWNjZXNzVGhyZXNob2xkOiBiYWNrZW5kLnJlYWRpbmVzc1N1Y2Nlc3NUaHJlc2hvbGQgPz8gMSxcbiAgICAgICAgZmFpbHVyZVRocmVzaG9sZDogYmFja2VuZC5yZWFkaW5lc3NGYWlsdXJlVGhyZXNob2xkID8/IDMsXG4gICAgICB9O1xuICAgIH1cbiAgICAvLyBEZXBsb3ltZW50XG4gICAgdmFyIGJhY2tlbmREZXBsb3ltZW50ID0gbmV3IFBsb25lRGVwbG95bWVudCh0aGlzLCAnYmFja2VuZCcsIGJhY2tlbmRPcHRpb25zKTtcblxuICAgIC8vIFNlcnZpY2VcbiAgICBjb25zdCBiYWNrZW5kU2VydmljZSA9IG5ldyBQbG9uZVNlcnZpY2UoYmFja2VuZERlcGxveW1lbnQsICdzZXJ2aWNlJywge1xuICAgICAgbGFiZWxzOiB7XG4gICAgICAgICdhcHAua3ViZXJuZXRlcy5pby9uYW1lJzogJ3Bsb25lLWJhY2tlbmQtc2VydmljZScsXG4gICAgICAgICdhcHAua3ViZXJuZXRlcy5pby9jb21wb25lbnQnOiAnc2VydmljZScsXG4gICAgICB9LFxuICAgICAgdGFyZ2V0UG9ydDogYmFja2VuZFBvcnQsXG4gICAgICBzZWxlY3RvckxhYmVsOiB7IGFwcDogTmFtZXMudG9MYWJlbFZhbHVlKGJhY2tlbmREZXBsb3ltZW50KSB9LFxuICAgICAgcG9ydE5hbWU6ICdiYWNrZW5kLWh0dHAnLFxuICAgICAgYW5ub3RhdGlvbnM6IGJhY2tlbmQuc2VydmljZUFubm90YXRpb25zLFxuICAgIH0pO1xuICAgIHRoaXMuYmFja2VuZFNlcnZpY2VOYW1lID0gYmFja2VuZFNlcnZpY2UubmFtZTtcblxuICAgIC8vIFNlcnZpY2VNb25pdG9yIGZvciBiYWNrZW5kXG4gICAgaWYgKGJhY2tlbmQuc2VydmljZW1vbml0b3IpIHtcbiAgICAgIHRoaXMuY3JlYXRlU2VydmljZU1vbml0b3IoYmFja2VuZFNlcnZpY2UsICdiYWNrZW5kJywge1xuICAgICAgICBwb3J0OiBiYWNrZW5kLm1ldHJpY3NQb3J0ID8/ICdiYWNrZW5kLWh0dHAnLFxuICAgICAgICBwYXRoOiBiYWNrZW5kLm1ldHJpY3NQYXRoID8/ICcvbWV0cmljcycsXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvLyBGcm9udGVuZFxuICAgIGlmICh0aGlzLnZhcmlhbnQgPT0gUGxvbmVWYXJpYW50LlZPTFRPKSB7XG4gICAgICBjb25zdCBmcm9udGVuZCA9IG9wdGlvbnMuZnJvbnRlbmQgPz8ge307XG4gICAgICBjb25zdCBmcm9udGVuZFBvcnQgPSAzMDAwO1xuICAgICAgY29uc3QgZnJvbnRlbmRMYWJlbHMgPSB7XG4gICAgICAgICdhcHAua3ViZXJuZXRlcy5pby9uYW1lJzogJ3Bsb25lLWZyb250ZW5kJyxcbiAgICAgICAgJ2FwcC5rdWJlcm5ldGVzLmlvL2NvbXBvbmVudCc6ICdmcm9udGVuZCcsXG4gICAgICAgICdhcHAua3ViZXJuZXRlcy5pby92ZXJzaW9uJzogb3B0aW9ucy52ZXJzaW9uID8/ICd1bmRlZmluZWQnLFxuICAgICAgfTtcblxuICAgICAgLy8gRW52aXJvbm1lbnQgZm9yIFJBWlpMRVxuICAgICAgdmFyIGZyb250ZW5kRW52aXJvbm1lbnQgPSBmcm9udGVuZC5lbnZpcm9ubWVudCA/PyBuZXcga3BsdXMuRW52KFtdLCB7fSk7XG4gICAgICBpZiAoZnJvbnRlbmRFbnZpcm9ubWVudC52YXJpYWJsZXMuUkFaWkxFX0lOVEVSTkFMX0FQSV9QQVRIID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgLy8gY29ubmVjdCB3aXRoIGJhY2tlbmQgc2VydmljZVxuICAgICAgICBmcm9udGVuZEVudmlyb25tZW50Py5hZGRWYXJpYWJsZSgnUkFaWkxFX0lOVEVSTkFMX0FQSV9QQVRIJywga3BsdXMuRW52VmFsdWUuZnJvbVZhbHVlKGBodHRwOi8vJHtiYWNrZW5kU2VydmljZS5uYW1lfToke2JhY2tlbmRQb3J0fS8ke3RoaXMuc2l0ZUlkfWApKTtcbiAgICAgIH1cblxuICAgICAgLy8gT3B0aW9uc1xuICAgICAgdmFyIGZyb250ZW5kT3B0aW9uczogUGxvbmVEZXBsb3ltZW50T3B0aW9ucyA9IHtcbiAgICAgICAgbGFiZWxzOiBmcm9udGVuZExhYmVscyxcbiAgICAgICAgaW1hZ2U6IHtcbiAgICAgICAgICBpbWFnZTogZnJvbnRlbmQuaW1hZ2UgPz8gJ3Bsb25lL3Bsb25lLWZyb250ZW5kOmxhdGVzdCcsXG4gICAgICAgICAgaW1hZ2VQdWxsU2VjcmV0czogb3B0aW9ucy5pbWFnZVB1bGxTZWNyZXRzID8/IFtdLFxuICAgICAgICAgIGltYWdlUHVsbFBvbGljeTogZnJvbnRlbmQuaW1hZ2VQdWxsUG9saWN5ID8/ICdJZk5vdFByZXNlbnQnLFxuICAgICAgICB9LFxuICAgICAgICByZXBsaWNhczogZnJvbnRlbmQucmVwbGljYXMsXG4gICAgICAgIGxpbWl0Q3B1OiBmcm9udGVuZC5saW1pdENwdSA/PyAnNTAwbScsXG4gICAgICAgIGxpbWl0TWVtb3J5OiBmcm9udGVuZC5saW1pdE1lbW9yeSA/PyAnMUdpJyxcbiAgICAgICAgcmVxdWVzdENwdTogZnJvbnRlbmQucmVxdWVzdENwdSA/PyAnMjAwbScsXG4gICAgICAgIHJlcXVlc3RNZW1vcnk6IGZyb250ZW5kLnJlcXVlc3RNZW1vcnkgPz8gJzI1Nk1pJyxcblxuICAgICAgICBwZGI6IHtcbiAgICAgICAgICBtYXhVbmF2YWlsYWJsZTogZnJvbnRlbmQubWF4VW5hdmFpbGFibGUgPz8gdW5kZWZpbmVkLFxuICAgICAgICAgIG1pbkF2YWlsYWJsZTogZnJvbnRlbmQubWluQXZhaWxhYmxlID8/IHVuZGVmaW5lZCxcbiAgICAgICAgfSxcbiAgICAgICAgcG9ydDogZnJvbnRlbmRQb3J0LFxuICAgICAgICBlbnZpcm9ubWVudDogZnJvbnRlbmRFbnZpcm9ubWVudCxcbiAgICAgICAgYW5ub3RhdGlvbnM6IGZyb250ZW5kLmFubm90YXRpb25zLFxuICAgICAgICBwb2RBbm5vdGF0aW9uczogZnJvbnRlbmQucG9kQW5ub3RhdGlvbnMsXG4gICAgICB9O1xuXG4gICAgICAvLyBQcm9iaW5nXG4gICAgICBjb25zdCBmcm9udGVuZEFjdGlvbkh0dHBHZXQ6IGs4cy5IdHRwR2V0QWN0aW9uID0ge1xuICAgICAgICBwYXRoOiAnLycsXG4gICAgICAgIHBvcnQ6IEludE9yU3RyaW5nLmZyb21OdW1iZXIoZnJvbnRlbmRQb3J0KSxcbiAgICAgIH07XG4gICAgICBpZiAoZnJvbnRlbmQubGl2ZW5lc3NFbmFibGVkID8/IGZhbHNlKSB7XG4gICAgICAgIGZyb250ZW5kT3B0aW9ucy5saXZlbmVzc1Byb2JlID0ge1xuICAgICAgICAgIGh0dHBHZXQ6IGZyb250ZW5kQWN0aW9uSHR0cEdldCxcbiAgICAgICAgICBpbml0aWFsRGVsYXlTZWNvbmRzOiBmcm9udGVuZC5saXZlbmVzc0luaXRpYWxEZWxheVNlY29uZHMgPz8gMzAsXG4gICAgICAgICAgdGltZW91dFNlY29uZHM6IGZyb250ZW5kLmxpdmVuZXNzVGltZW91dFNlY29uZHMgPz8gNSxcbiAgICAgICAgICBwZXJpb2RTZWNvbmRzOiBmcm9udGVuZC5saXZlbmVzc1BlcmlvZFNlY29uZHMgPz8gMTAsXG4gICAgICAgICAgc3VjY2Vzc1RocmVzaG9sZDogZnJvbnRlbmQubGl2ZW5lc3NTdWNjZXNzVGhyZXNob2xkID8/IDEsXG4gICAgICAgICAgZmFpbHVyZVRocmVzaG9sZDogZnJvbnRlbmQubGl2ZW5lc3NGYWlsdXJlVGhyZXNob2xkID8/IDMsXG4gICAgICAgIH07XG4gICAgICB9XG4gICAgICBpZiAoZnJvbnRlbmQucmVhZGluZXNzRW5hYmxlZCA/PyB0cnVlKSB7XG4gICAgICAgIGZyb250ZW5kT3B0aW9ucy5yZWFkaW5lc3NQcm9iZSA9IHtcbiAgICAgICAgICBodHRwR2V0OiBmcm9udGVuZEFjdGlvbkh0dHBHZXQsXG4gICAgICAgICAgaW5pdGlhbERlbGF5U2Vjb25kczogZnJvbnRlbmQucmVhZGluZXNzSW5pdGlhbERlbGF5U2Vjb25kcyA/PyAxMCxcbiAgICAgICAgICB0aW1lb3V0U2Vjb25kczogZnJvbnRlbmQucmVhZGluZXNzVGltZW91dFNlY29uZHMgPz8gMTUsXG4gICAgICAgICAgcGVyaW9kU2Vjb25kczogZnJvbnRlbmQucmVhZGluZXNzUGVyaW9kU2Vjb25kcyA/PyAxMCxcbiAgICAgICAgICBzdWNjZXNzVGhyZXNob2xkOiBmcm9udGVuZC5yZWFkaW5lc3NTdWNjZXNzVGhyZXNob2xkID8/IDEsXG4gICAgICAgICAgZmFpbHVyZVRocmVzaG9sZDogZnJvbnRlbmQucmVhZGluZXNzRmFpbHVyZVRocmVzaG9sZCA/PyAzLFxuICAgICAgICB9O1xuICAgICAgfVxuXG4gICAgICAvLyBEZXBsb3ltZW50XG4gICAgICBjb25zdCBmcm9udGVuZERlcGxveW1lbnQgPSBuZXcgUGxvbmVEZXBsb3ltZW50KHRoaXMsICdmcm9udGVuZCcsIGZyb250ZW5kT3B0aW9ucyk7XG5cbiAgICAgIC8vIFNlcnZpY2VcbiAgICAgIGNvbnN0IGZyb250ZW5kU2VydmljZSA9IG5ldyBQbG9uZVNlcnZpY2UoZnJvbnRlbmREZXBsb3ltZW50LCAnc2VydmljZScsIHtcbiAgICAgICAgbGFiZWxzOiB7XG4gICAgICAgICAgJ2FwcC5rdWJlcm5ldGVzLmlvL25hbWUnOiAncGxvbmUtZnJvbnRlbmQtc2VydmljZScsXG4gICAgICAgICAgJ2FwcC5rdWJlcm5ldGVzLmlvL2NvbXBvbmVudCc6ICdzZXJ2aWNlJyxcbiAgICAgICAgfSxcbiAgICAgICAgdGFyZ2V0UG9ydDogZnJvbnRlbmRQb3J0LFxuICAgICAgICBzZWxlY3RvckxhYmVsOiB7IGFwcDogTmFtZXMudG9MYWJlbFZhbHVlKGZyb250ZW5kRGVwbG95bWVudCkgfSxcbiAgICAgICAgcG9ydE5hbWU6ICdmcm9udGVuZC1odHRwJyxcbiAgICAgICAgYW5ub3RhdGlvbnM6IGZyb250ZW5kLnNlcnZpY2VBbm5vdGF0aW9ucyxcbiAgICAgIH0pO1xuICAgICAgdGhpcy5mcm9udGVuZFNlcnZpY2VOYW1lID0gZnJvbnRlbmRTZXJ2aWNlLm5hbWU7XG5cbiAgICAgIC8vIFNlcnZpY2VNb25pdG9yIGZvciBmcm9udGVuZFxuICAgICAgaWYgKGZyb250ZW5kLnNlcnZpY2Vtb25pdG9yKSB7XG4gICAgICAgIHRoaXMuY3JlYXRlU2VydmljZU1vbml0b3IoZnJvbnRlbmRTZXJ2aWNlLCAnZnJvbnRlbmQnLCB7XG4gICAgICAgICAgcG9ydDogZnJvbnRlbmQubWV0cmljc1BvcnQgPz8gJ2Zyb250ZW5kLWh0dHAnLFxuICAgICAgICAgIHBhdGg6IGZyb250ZW5kLm1ldHJpY3NQYXRoID8/ICcvbWV0cmljcycsXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgUHJvbWV0aGV1cyBTZXJ2aWNlTW9uaXRvciByZXNvdXJjZSBmb3IgdGhlIGdpdmVuIHNlcnZpY2UuXG4gICAqIEBwYXJhbSBzZXJ2aWNlIFRoZSBQbG9uZVNlcnZpY2UgdG8gbW9uaXRvclxuICAgKiBAcGFyYW0gaWQgVW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSBTZXJ2aWNlTW9uaXRvclxuICAgKiBAcGFyYW0gY29uZmlnIENvbmZpZ3VyYXRpb24gZm9yIHRoZSBTZXJ2aWNlTW9uaXRvclxuICAgKi9cbiAgcHJpdmF0ZSBjcmVhdGVTZXJ2aWNlTW9uaXRvcihcbiAgICBzZXJ2aWNlOiBQbG9uZVNlcnZpY2UsXG4gICAgaWQ6IHN0cmluZyxcbiAgICBjb25maWc6IHsgcG9ydDogc3RyaW5nIHwgbnVtYmVyOyBwYXRoOiBzdHJpbmcgfSxcbiAgKTogdm9pZCB7XG4gICAgY29uc3QgcG9ydE5hbWUgPSB0eXBlb2YgY29uZmlnLnBvcnQgPT09ICdzdHJpbmcnID8gY29uZmlnLnBvcnQgOiB1bmRlZmluZWQ7XG4gICAgY29uc3QgcG9ydE51bWJlciA9IHR5cGVvZiBjb25maWcucG9ydCA9PT0gJ251bWJlcidcbiAgICAgID8gU2VydmljZU1vbml0b3JTcGVjRW5kcG9pbnRzVGFyZ2V0UG9ydC5mcm9tTnVtYmVyKGNvbmZpZy5wb3J0KVxuICAgICAgOiB1bmRlZmluZWQ7XG5cbiAgICBuZXcgU2VydmljZU1vbml0b3IodGhpcywgYHNlcnZpY2Vtb25pdG9yLSR7aWR9YCwge1xuICAgICAgbWV0YWRhdGE6IHtcbiAgICAgICAgbmFtZTogYCR7c2VydmljZS5uYW1lfS1tb25pdG9yYCxcbiAgICAgICAgbGFiZWxzOiB7XG4gICAgICAgICAgJ2FwcC5rdWJlcm5ldGVzLmlvL25hbWUnOiBzZXJ2aWNlLm5hbWUsXG4gICAgICAgICAgJ2FwcC5rdWJlcm5ldGVzLmlvL2NvbXBvbmVudCc6ICdzZXJ2aWNlbW9uaXRvcicsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgc3BlYzoge1xuICAgICAgICBzZWxlY3Rvcjoge1xuICAgICAgICAgIG1hdGNoTGFiZWxzOiB7XG4gICAgICAgICAgICAnYXBwLmt1YmVybmV0ZXMuaW8vbmFtZSc6IHNlcnZpY2UubGFiZWxzWydhcHAua3ViZXJuZXRlcy5pby9uYW1lJ10sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgZW5kcG9pbnRzOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgLi4uKHBvcnROYW1lICYmIHsgcG9ydDogcG9ydE5hbWUgfSksXG4gICAgICAgICAgICAuLi4ocG9ydE51bWJlciAmJiB7IHRhcmdldFBvcnQ6IHBvcnROdW1iZXIgfSksXG4gICAgICAgICAgICBwYXRoOiBjb25maWcucGF0aCxcbiAgICAgICAgICAgIGludGVydmFsOiAnMzBzJyxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICB9KTtcbiAgfVxufSJdfQ==
package/package.json CHANGED
@@ -76,7 +76,7 @@
76
76
  "publishConfig": {
77
77
  "access": "public"
78
78
  },
79
- "version": "0.1.21",
79
+ "version": "0.1.22",
80
80
  "jest": {
81
81
  "coverageProvider": "v8",
82
82
  "testMatch": [