@bluedynamics/cdk8s-plone 0.1.27 → 0.1.28

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.
@@ -1,5 +1,67 @@
1
1
  import { Construct } from 'constructs';
2
2
  import { Plone } from './plone';
3
+ /**
4
+ * Health probe configuration for a VinylCache backend.
5
+ */
6
+ export interface VinylCacheBackendProbe {
7
+ /**
8
+ * URL to probe.
9
+ * @default '/'
10
+ */
11
+ readonly url?: string;
12
+ /**
13
+ * How often to probe the backend.
14
+ * @default '5s'
15
+ */
16
+ readonly interval?: string;
17
+ /**
18
+ * Maximum time to wait for a probe response.
19
+ * @default '2s'
20
+ */
21
+ readonly timeout?: string;
22
+ /**
23
+ * Number of most recent probes to consider.
24
+ * @default 10
25
+ */
26
+ readonly window?: number;
27
+ /**
28
+ * Minimum successful probes within window for healthy status.
29
+ * @default 8
30
+ */
31
+ readonly threshold?: number;
32
+ /**
33
+ * Expected HTTP response status code.
34
+ * @default 200
35
+ */
36
+ readonly expectedResponse?: number;
37
+ }
38
+ /**
39
+ * An additional backend for the VinylCache.
40
+ */
41
+ export interface VinylCacheBackend {
42
+ /**
43
+ * VCL identifier for this backend. Must match ^[a-zA-Z][a-zA-Z0-9_]*$.
44
+ */
45
+ readonly name: string;
46
+ /**
47
+ * Kubernetes Service name to use as backend.
48
+ */
49
+ readonly serviceName: string;
50
+ /**
51
+ * Port to use for this backend.
52
+ */
53
+ readonly port: number;
54
+ /**
55
+ * Health probe configuration.
56
+ * @default - no probe
57
+ */
58
+ readonly probe?: VinylCacheBackendProbe;
59
+ /**
60
+ * Relative weight for the director. 0 means standby.
61
+ * @default - operator default
62
+ */
63
+ readonly weight?: number;
64
+ }
3
65
  /**
4
66
  * A Kubernetes toleration for the Varnish pods.
5
67
  */
@@ -38,6 +100,12 @@ export interface PloneVinylCacheOptions {
38
100
  * Backends are auto-configured from the Plone services.
39
101
  */
40
102
  readonly plone: Plone;
103
+ /**
104
+ * Additional backends to add after the auto-generated Plone backends.
105
+ * Uses the same backend type structure as the VinylCache CRD.
106
+ * @default - no extra backends
107
+ */
108
+ readonly extraBackends?: VinylCacheBackend[];
41
109
  /**
42
110
  * Number of Varnish pod replicas.
43
111
  * @default 2
@@ -100,6 +168,74 @@ export interface PloneVinylCacheOptions {
100
168
  * @default - no tolerations
101
169
  */
102
170
  readonly tolerations?: VinylCacheToleration[];
171
+ /**
172
+ * Node selector labels for the Varnish pods.
173
+ * Constrains pods to nodes matching all specified labels.
174
+ * @default - no node selector
175
+ */
176
+ readonly nodeSelector?: {
177
+ [key: string]: string;
178
+ };
179
+ /**
180
+ * Custom VCL snippet for vcl_deliver subroutine.
181
+ * @default - no snippet
182
+ */
183
+ readonly vclDeliverSnippet?: string;
184
+ /**
185
+ * Custom VCL snippet for vcl_hit subroutine.
186
+ * @default - no snippet
187
+ */
188
+ readonly vclHitSnippet?: string;
189
+ /**
190
+ * Custom VCL snippet for vcl_miss subroutine.
191
+ * @default - no snippet
192
+ */
193
+ readonly vclMissSnippet?: string;
194
+ /**
195
+ * Custom VCL snippet for vcl_pass subroutine.
196
+ * @default - no snippet
197
+ */
198
+ readonly vclPassSnippet?: string;
199
+ /**
200
+ * Custom VCL snippet for vcl_pipe subroutine.
201
+ * @default - no snippet
202
+ */
203
+ readonly vclPipeSnippet?: string;
204
+ /**
205
+ * Custom VCL snippet for vcl_synth subroutine.
206
+ * @default - no snippet
207
+ */
208
+ readonly vclSynthSnippet?: string;
209
+ /**
210
+ * Custom VCL snippet for vcl_purge subroutine.
211
+ * @default - no snippet
212
+ */
213
+ readonly vclPurgeSnippet?: string;
214
+ /**
215
+ * Custom VCL snippet for vcl_hash subroutine.
216
+ * @default - no snippet
217
+ */
218
+ readonly vclHashSnippet?: string;
219
+ /**
220
+ * Custom VCL snippet for vcl_init subroutine.
221
+ * @default - no snippet
222
+ */
223
+ readonly vclInitSnippet?: string;
224
+ /**
225
+ * Custom VCL snippet for vcl_fini subroutine.
226
+ * @default - no snippet
227
+ */
228
+ readonly vclFiniSnippet?: string;
229
+ /**
230
+ * Custom VCL snippet for vcl_backend_fetch subroutine.
231
+ * @default - no snippet
232
+ */
233
+ readonly vclBackendFetchSnippet?: string;
234
+ /**
235
+ * Custom VCL snippet for vcl_backend_error subroutine.
236
+ * @default - no snippet
237
+ */
238
+ readonly vclBackendErrorSnippet?: string;
103
239
  }
104
240
  /**
105
241
  * PloneVinylCache construct for deploying Varnish Cache via cloud-vinyl operator.
package/lib/vinylcache.js CHANGED
@@ -81,6 +81,22 @@ class PloneVinylCache extends constructs_1.Construct {
81
81
  },
82
82
  });
83
83
  }
84
+ if (options.extraBackends) {
85
+ for (const eb of options.extraBackends) {
86
+ backends.push({
87
+ name: eb.name,
88
+ serviceRef: { name: eb.serviceName },
89
+ port: eb.port,
90
+ probe: eb.probe ? {
91
+ url: eb.probe.url ?? '/',
92
+ interval: eb.probe.interval ?? '5s',
93
+ timeout: eb.probe.timeout ?? '2s',
94
+ window: eb.probe.window ?? 10,
95
+ threshold: eb.probe.threshold ?? 8,
96
+ } : undefined,
97
+ });
98
+ }
99
+ }
84
100
  const vinylCache = new vinyl_bluedynamics_eu_1.VinylCache(this, 'vinylcache', {
85
101
  spec: {
86
102
  replicas,
@@ -91,6 +107,18 @@ class PloneVinylCache extends constructs_1.Construct {
91
107
  snippets: {
92
108
  vclRecv: vclRecv,
93
109
  vclBackendResponse: vclBackendResponse,
110
+ vclDeliver: options.vclDeliverSnippet,
111
+ vclHit: options.vclHitSnippet,
112
+ vclMiss: options.vclMissSnippet,
113
+ vclPass: options.vclPassSnippet,
114
+ vclPipe: options.vclPipeSnippet,
115
+ vclSynth: options.vclSynthSnippet,
116
+ vclPurge: options.vclPurgeSnippet,
117
+ vclHash: options.vclHashSnippet,
118
+ vclInit: options.vclInitSnippet,
119
+ vclFini: options.vclFiniSnippet,
120
+ vclBackendFetch: options.vclBackendFetchSnippet,
121
+ vclBackendError: options.vclBackendErrorSnippet,
94
122
  },
95
123
  },
96
124
  resources: {
@@ -112,13 +140,14 @@ class PloneVinylCache extends constructs_1.Construct {
112
140
  enabled: true,
113
141
  serviceMonitor: { enabled: true },
114
142
  } : undefined,
115
- pod: (options.tolerations && options.tolerations.length > 0) ? {
116
- tolerations: options.tolerations.map(t => ({
143
+ pod: (options.tolerations?.length || options.nodeSelector) ? {
144
+ tolerations: options.tolerations?.map(t => ({
117
145
  key: t.key,
118
146
  operator: t.operator,
119
147
  value: t.value,
120
148
  effect: t.effect,
121
149
  })),
150
+ nodeSelector: options.nodeSelector,
122
151
  } : undefined,
123
152
  },
124
153
  });
@@ -128,5 +157,5 @@ class PloneVinylCache extends constructs_1.Construct {
128
157
  }
129
158
  exports.PloneVinylCache = PloneVinylCache;
130
159
  _a = JSII_RTTI_SYMBOL_1;
131
- PloneVinylCache[_a] = { fqn: "@bluedynamics/cdk8s-plone.PloneVinylCache", version: "0.1.27" };
132
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlueWxjYWNoZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy92aW55bGNhY2hlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEseUJBQXlCO0FBQ3pCLDZCQUE2QjtBQUM3QixpQ0FBOEI7QUFDOUIsMkNBQXVDO0FBQ3ZDLDJFQUt5QztBQXlIekM7Ozs7Ozs7Ozs7Ozs7Ozs7R0FnQkc7QUFDSCxNQUFhLGVBQWdCLFNBQVEsc0JBQVM7SUFPNUMsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxPQUErQjtRQUN2RSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLE1BQU0sUUFBUSxHQUFHLE9BQU8sQ0FBQyxRQUFRLElBQUksQ0FBQyxDQUFDO1FBQ3ZDLE1BQU0sWUFBWSxHQUFHLE9BQU8sQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDO1FBQ2xELE1BQU0sVUFBVSxHQUFHLE9BQU8sQ0FBQyxVQUFVLElBQUksS0FBSyxDQUFDO1FBRS9DLDZCQUE2QjtRQUM3QixNQUFNLFdBQVcsR0FBRyxPQUFPLENBQUMsUUFBUSxJQUFJLE9BQU8sQ0FBQztRQUNoRCxJQUFJLFlBQXdDLENBQUM7UUFDN0MsUUFBUSxXQUFXLEVBQUUsQ0FBQztZQUNwQixLQUFLLGFBQWE7Z0JBQ2hCLFlBQVksR0FBRyxrREFBMEIsQ0FBQyxzQkFBc0IsQ0FBQztnQkFDakUsTUFBTTtZQUNSLEtBQUssUUFBUTtnQkFDWCxZQUFZLEdBQUcsa0RBQTBCLENBQUMsTUFBTSxDQUFDO2dCQUNqRCxNQUFNO1lBQ1IsS0FBSyxNQUFNO2dCQUNULFlBQVksR0FBRyxrREFBMEIsQ0FBQyxJQUFJLENBQUM7Z0JBQy9DLE1BQU07WUFDUjtnQkFDRSxZQUFZLEdBQUcsa0RBQTBCLENBQUMsS0FBSyxDQUFDO1FBQ3BELENBQUM7UUFFRCw0QkFBNEI7UUFDNUIsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLGNBQWM7WUFDcEMsRUFBRSxDQUFDLFlBQVks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SUFBSSxPQUFPLENBQUMsV0FBVyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQzdELFdBQVcsRUFBRSxPQUFPLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7d0JBQ3pDLEdBQUcsRUFBRSxDQUFDLENBQUMsR0FBRzt3QkFDVixRQUFRLEVBQUUsQ0FBQyxDQUFDLFFBQVE7d0JBQ3BCLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSzt3QkFDZCxNQUFNLEVBQUUsQ0FBQyxDQUFDLE1BQU07cUJBQ2pCLENBQUMsQ0FBQztpQkFDSixDQUFDLENBQUMsQ0FBQyxTQUFTO2FBQ2Q7U0FDRixDQUFDLENBQUM7UUFFSCwrRUFBK0U7UUFDL0UsSUFBSSxDQUFDLHFCQUFxQixHQUFHLGFBQUssQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDOUQsQ0FBQzs7QUFoSEgsMENBaUhDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgZnMgZnJvbSAnZnMnO1xuaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCB7IE5hbWVzIH0gZnJvbSAnY2RrOHMnO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQge1xuICBWaW55bENhY2hlLFxuICBWaW55bENhY2hlU3BlY0RpcmVjdG9yVHlwZSxcbiAgVmlueWxDYWNoZVNwZWNSZXNvdXJjZXNMaW1pdHMsXG4gIFZpbnlsQ2FjaGVTcGVjUmVzb3VyY2VzUmVxdWVzdHMsXG59IGZyb20gJy4vaW1wb3J0cy92aW55bC5ibHVlZHluYW1pY3MuZXUnO1xuaW1wb3J0IHsgUGxvbmUgfSBmcm9tICcuL3Bsb25lJztcblxuLyoqXG4gKiBBIEt1YmVybmV0ZXMgdG9sZXJhdGlvbiBmb3IgdGhlIFZhcm5pc2ggcG9kcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBWaW55bENhY2hlVG9sZXJhdGlvbiB7XG4gIC8qKlxuICAgKiBUaGUgdGFpbnQga2V5IHRvIHRvbGVyYXRlLlxuICAgKi9cbiAgcmVhZG9ubHkga2V5OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBvcGVyYXRvciAoRXF1YWwgb3IgRXhpc3RzKS5cbiAgICogQGRlZmF1bHQgJ0VxdWFsJ1xuICAgKi9cbiAgcmVhZG9ubHkgb3BlcmF0b3I/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSB0YWludCB2YWx1ZSB0byBtYXRjaCAod2hlbiBvcGVyYXRvciBpcyBFcXVhbCkuXG4gICAqIEBkZWZhdWx0IC0gbm8gdmFsdWVcbiAgICovXG4gIHJlYWRvbmx5IHZhbHVlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgdGFpbnQgZWZmZWN0IHRvIHRvbGVyYXRlIChOb1NjaGVkdWxlLCBQcmVmZXJOb1NjaGVkdWxlLCBOb0V4ZWN1dGUpLlxuICAgKiBAZGVmYXVsdCAtIHRvbGVyYXRlIGFsbCBlZmZlY3RzXG4gICAqL1xuICByZWFkb25seSBlZmZlY3Q/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBvcHRpb25zIGZvciBQbG9uZVZpbnlsQ2FjaGUgKGNsb3VkLXZpbnlsIG9wZXJhdG9yKS5cbiAqXG4gKiBDcmVhdGVzIGEgVmlueWxDYWNoZSBjdXN0b20gcmVzb3VyY2UgdGhhdCB0aGUgY2xvdWQtdmlueWwgb3BlcmF0b3JcbiAqIHJlY29uY2lsZXMgaW50byBhIFZhcm5pc2ggQ2FjaGUgY2x1c3RlciB3aXRoIGFnZW50LWJhc2VkIFZDTCBkZWxpdmVyeS5cbiAqXG4gKiBSZXF1aXJlcyB0aGUgY2xvdWQtdmlueWwgb3BlcmF0b3IgdG8gYmUgaW5zdGFsbGVkIGluIHRoZSBjbHVzdGVyLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFBsb25lVmlueWxDYWNoZU9wdGlvbnMge1xuICAvKipcbiAgICogVGhlIFBsb25lIGNvbnN0cnVjdCB0byBhdHRhY2ggdGhlIGNhY2hlIHRvLlxuICAgKiBCYWNrZW5kcyBhcmUgYXV0by1jb25maWd1cmVkIGZyb20gdGhlIFBsb25lIHNlcnZpY2VzLlxuICAgKi9cbiAgcmVhZG9ubHkgcGxvbmU6IFBsb25lO1xuXG4gIC8qKlxuICAgKiBOdW1iZXIgb2YgVmFybmlzaCBwb2QgcmVwbGljYXMuXG4gICAqIEBkZWZhdWx0IDJcbiAgICovXG4gIHJlYWRvbmx5IHJlcGxpY2FzPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBDUFUgcmVxdWVzdCBmb3IgVmFybmlzaCBwb2RzLlxuICAgKiBAZGVmYXVsdCAnMTAwbSdcbiAgICovXG4gIHJlYWRvbmx5IHJlcXVlc3RDcHU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE1lbW9yeSByZXF1ZXN0IGZvciBWYXJuaXNoIHBvZHMuXG4gICAqIEBkZWZhdWx0ICcyNTZNaSdcbiAgICovXG4gIHJlYWRvbmx5IHJlcXVlc3RNZW1vcnk/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIENQVSBsaW1pdCBmb3IgVmFybmlzaCBwb2RzLlxuICAgKiBAZGVmYXVsdCAnNTAwbSdcbiAgICovXG4gIHJlYWRvbmx5IGxpbWl0Q3B1Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBNZW1vcnkgbGltaXQgZm9yIFZhcm5pc2ggcG9kcy5cbiAgICogQGRlZmF1bHQgJzUxMk1pJ1xuICAgKi9cbiAgcmVhZG9ubHkgbGltaXRNZW1vcnk/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIERpcmVjdG9yIHR5cGUgZm9yIGxvYWQgZGlzdHJpYnV0aW9uLlxuICAgKiBAZGVmYXVsdCAnc2hhcmQnXG4gICAqL1xuICByZWFkb25seSBkaXJlY3Rvcj86IHN0cmluZztcblxuICAvKipcbiAgICogQ3VzdG9tIFZDTCBzbmlwcGV0IGZvciB2Y2xfcmVjdiBzdWJyb3V0aW5lLlxuICAgKiBSZXBsYWNlcyB0aGUgZGVmYXVsdCBQbG9uZSByZWN2IHNuaXBwZXQuXG4gICAqIEBkZWZhdWx0IC0gdXNlcyBidWlsdC1pbiBwbG9uZS12aW55bC1yZWN2LnZjbFxuICAgKi9cbiAgcmVhZG9ubHkgdmNsUmVjdlNuaXBwZXQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEN1c3RvbSBWQ0wgc25pcHBldCBmb3IgdmNsX2JhY2tlbmRfcmVzcG9uc2Ugc3Vicm91dGluZS5cbiAgICogUmVwbGFjZXMgdGhlIGRlZmF1bHQgUGxvbmUgYmFja2VuZF9yZXNwb25zZSBzbmlwcGV0LlxuICAgKiBAZGVmYXVsdCAtIHVzZXMgYnVpbHQtaW4gcGxvbmUtdmlueWwtYmFja2VuZC1yZXNwb25zZS52Y2xcbiAgICovXG4gIHJlYWRvbmx5IHZjbEJhY2tlbmRSZXNwb25zZVNuaXBwZXQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEVuYWJsZSBjYWNoZSBpbnZhbGlkYXRpb24gKFBVUkdFLCBCQU4sIHhrZXkpLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBpbnZhbGlkYXRpb24/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBFbmFibGUgUHJvbWV0aGV1cyBtb25pdG9yaW5nIChtZXRyaWNzICsgU2VydmljZU1vbml0b3IpLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgbW9uaXRvcmluZz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIENvbnRhaW5lciBpbWFnZSBmb3IgdGhlIFZhcm5pc2ggcG9kcy5cbiAgICogQGRlZmF1bHQgJ3Zhcm5pc2g6Ny42J1xuICAgKi9cbiAgcmVhZG9ubHkgaW1hZ2U/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRvbGVyYXRpb25zIGZvciB0aGUgVmFybmlzaCBwb2RzLlxuICAgKiBAZGVmYXVsdCAtIG5vIHRvbGVyYXRpb25zXG4gICAqL1xuICByZWFkb25seSB0b2xlcmF0aW9ucz86IFZpbnlsQ2FjaGVUb2xlcmF0aW9uW107XG59XG5cbi8qKlxuICogUGxvbmVWaW55bENhY2hlIGNvbnN0cnVjdCBmb3IgZGVwbG95aW5nIFZhcm5pc2ggQ2FjaGUgdmlhIGNsb3VkLXZpbnlsIG9wZXJhdG9yLlxuICpcbiAqIENyZWF0ZXMgYSBWaW55bENhY2hlIGN1c3RvbSByZXNvdXJjZSB3aXRoIFBsb25lIGJhY2tlbmQvZnJvbnRlbmQgc2VydmljZXNcbiAqIGF1dG8tY29uZmlndXJlZCBhcyBiYWNrZW5kcy4gVGhlIGNsb3VkLXZpbnlsIG9wZXJhdG9yIG1hbmFnZXMgdGhlIGZ1bGxcbiAqIFZhcm5pc2ggbGlmZWN5Y2xlIGluY2x1ZGluZyBWQ0wgZ2VuZXJhdGlvbiwgYWdlbnQgZGVsaXZlcnksIGFuZCBtb25pdG9yaW5nLlxuICpcbiAqIFJlcXVpcmVzIHRoZSBjbG91ZC12aW55bCBvcGVyYXRvciB0byBiZSBpbnN0YWxsZWQgaW4gdGhlIGNsdXN0ZXIuXG4gKlxuICogQGV4YW1wbGVcbiAqIGNvbnN0IHBsb25lID0gbmV3IFBsb25lKGNoYXJ0LCAncGxvbmUnKTtcbiAqIGNvbnN0IGNhY2hlID0gbmV3IFBsb25lVmlueWxDYWNoZShjaGFydCwgJ2NhY2hlJywge1xuICogICBwbG9uZTogcGxvbmUsXG4gKiAgIHJlcGxpY2FzOiAyLFxuICogfSk7XG4gKiAvLyBVc2UgY2FjaGUudmlueWxDYWNoZVNlcnZpY2VOYW1lIGZvciBJbmdyZXNzUm91dGVcbiAqL1xuZXhwb3J0IGNsYXNzIFBsb25lVmlueWxDYWNoZSBleHRlbmRzIENvbnN0cnVjdCB7XG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoZSBWaW55bENhY2hlIHNlcnZpY2UgY3JlYXRlZCBieSB0aGUgb3BlcmF0b3IuXG4gICAqIFVzZSB0aGlzIHRvIHJlZmVyZW5jZSB0aGUgY2FjaGUgc2VydmljZSBmcm9tIGluZ3Jlc3Mgb3Igb3RoZXIgY29uc3RydWN0cy5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSB2aW55bENhY2hlU2VydmljZU5hbWU6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBvcHRpb25zOiBQbG9uZVZpbnlsQ2FjaGVPcHRpb25zKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIGNvbnN0IHJlcGxpY2FzID0gb3B0aW9ucy5yZXBsaWNhcyA/PyAyO1xuICAgIGNvbnN0IGludmFsaWRhdGlvbiA9IG9wdGlvbnMuaW52YWxpZGF0aW9uID8/IHRydWU7XG4gICAgY29uc3QgbW9uaXRvcmluZyA9IG9wdGlvbnMubW9uaXRvcmluZyA/PyBmYWxzZTtcblxuICAgIC8vIFJlc29sdmUgZGlyZWN0b3IgdHlwZSBlbnVtXG4gICAgY29uc3QgZGlyZWN0b3JTdHIgPSBvcHRpb25zLmRpcmVjdG9yID8/ICdzaGFyZCc7XG4gICAgbGV0IGRpcmVjdG9yVHlwZTogVmlueWxDYWNoZVNwZWNEaXJlY3RvclR5cGU7XG4gICAgc3dpdGNoIChkaXJlY3RvclN0cikge1xuICAgICAgY2FzZSAncm91bmRfcm9iaW4nOlxuICAgICAgICBkaXJlY3RvclR5cGUgPSBWaW55bENhY2hlU3BlY0RpcmVjdG9yVHlwZS5ST1VORF9VTkRFUlNDT1JFX1JPQklOO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ3JhbmRvbSc6XG4gICAgICAgIGRpcmVjdG9yVHlwZSA9IFZpbnlsQ2FjaGVTcGVjRGlyZWN0b3JUeXBlLlJBTkRPTTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdoYXNoJzpcbiAgICAgICAgZGlyZWN0b3JUeXBlID0gVmlueWxDYWNoZVNwZWNEaXJlY3RvclR5cGUuSEFTSDtcbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICBkaXJlY3RvclR5cGUgPSBWaW55bENhY2hlU3BlY0RpcmVjdG9yVHlwZS5TSEFSRDtcbiAgICB9XG5cbiAgICAvLyBMb2FkIGRlZmF1bHQgVkNMIHNuaXBwZXRzXG4gICAgY29uc3QgdmNsUmVjdiA9IG9wdGlvbnMudmNsUmVjdlNuaXBwZXQgPz9cbiAgICAgIGZzLnJlYWRGaWxlU3luYyhwYXRoLmpvaW4oX19kaXJuYW1lLCAnY29uZmlnJywgJ3Bsb25lLXZpbnlsLXJlY3YudmNsJyksICd1dGY4Jyk7XG4gICAgY29uc3QgdmNsQmFja2VuZFJlc3BvbnNlID0gb3B0aW9ucy52Y2xCYWNrZW5kUmVzcG9uc2VTbmlwcGV0ID8/XG4gICAgICBmcy5yZWFkRmlsZVN5bmMocGF0aC5qb2luKF9fZGlybmFtZSwgJ2NvbmZpZycsICdwbG9uZS12aW55bC1iYWNrZW5kLXJlc3BvbnNlLnZjbCcpLCAndXRmOCcpO1xuXG4gICAgLy8gQnVpbGQgYmFja2VuZHMgZnJvbSBQbG9uZSBzZXJ2aWNlc1xuICAgIGNvbnN0IGJhY2tlbmRzID0gW1xuICAgICAge1xuICAgICAgICBuYW1lOiAncGxvbmVfYmFja2VuZCcsXG4gICAgICAgIHNlcnZpY2VSZWY6IHsgbmFtZTogb3B0aW9ucy5wbG9uZS5iYWNrZW5kU2VydmljZU5hbWUgfSxcbiAgICAgICAgcG9ydDogODA4MCxcbiAgICAgICAgcHJvYmU6IHtcbiAgICAgICAgICB1cmw6ICcvb2snLFxuICAgICAgICAgIGludGVydmFsOiAnNXMnLFxuICAgICAgICAgIHRpbWVvdXQ6ICcycycsXG4gICAgICAgICAgd2luZG93OiAxMCxcbiAgICAgICAgICB0aHJlc2hvbGQ6IDgsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIF07XG5cbiAgICBpZiAob3B0aW9ucy5wbG9uZS5mcm9udGVuZFNlcnZpY2VOYW1lKSB7XG4gICAgICBiYWNrZW5kcy5wdXNoKHtcbiAgICAgICAgbmFtZTogJ3Bsb25lX2Zyb250ZW5kJyxcbiAgICAgICAgc2VydmljZVJlZjogeyBuYW1lOiBvcHRpb25zLnBsb25lLmZyb250ZW5kU2VydmljZU5hbWUgfSxcbiAgICAgICAgcG9ydDogMzAwMCxcbiAgICAgICAgcHJvYmU6IHtcbiAgICAgICAgICB1cmw6ICcvJyxcbiAgICAgICAgICBpbnRlcnZhbDogJzVzJyxcbiAgICAgICAgICB0aW1lb3V0OiAnMnMnLFxuICAgICAgICAgIHdpbmRvdzogMTAsXG4gICAgICAgICAgdGhyZXNob2xkOiA4LFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgY29uc3QgdmlueWxDYWNoZSA9IG5ldyBWaW55bENhY2hlKHRoaXMsICd2aW55bGNhY2hlJywge1xuICAgICAgc3BlYzoge1xuICAgICAgICByZXBsaWNhcyxcbiAgICAgICAgaW1hZ2U6IG9wdGlvbnMuaW1hZ2UgPz8gJ3Zhcm5pc2g6Ny42JyxcbiAgICAgICAgYmFja2VuZHMsXG4gICAgICAgIGRpcmVjdG9yOiB7IHR5cGU6IGRpcmVjdG9yVHlwZSB9LFxuICAgICAgICB2Y2w6IHtcbiAgICAgICAgICBzbmlwcGV0czoge1xuICAgICAgICAgICAgdmNsUmVjdjogdmNsUmVjdixcbiAgICAgICAgICAgIHZjbEJhY2tlbmRSZXNwb25zZTogdmNsQmFja2VuZFJlc3BvbnNlLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHJlc291cmNlczoge1xuICAgICAgICAgIHJlcXVlc3RzOiB7XG4gICAgICAgICAgICBjcHU6IFZpbnlsQ2FjaGVTcGVjUmVzb3VyY2VzUmVxdWVzdHMuZnJvbVN0cmluZyhvcHRpb25zLnJlcXVlc3RDcHUgPz8gJzEwMG0nKSxcbiAgICAgICAgICAgIG1lbW9yeTogVmlueWxDYWNoZVNwZWNSZXNvdXJjZXNSZXF1ZXN0cy5mcm9tU3RyaW5nKG9wdGlvbnMucmVxdWVzdE1lbW9yeSA/PyAnMjU2TWknKSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIGxpbWl0czoge1xuICAgICAgICAgICAgY3B1OiBWaW55bENhY2hlU3BlY1Jlc291cmNlc0xpbWl0cy5mcm9tU3RyaW5nKG9wdGlvbnMubGltaXRDcHUgPz8gJzUwMG0nKSxcbiAgICAgICAgICAgIG1lbW9yeTogVmlueWxDYWNoZVNwZWNSZXNvdXJjZXNMaW1pdHMuZnJvbVN0cmluZyhvcHRpb25zLmxpbWl0TWVtb3J5ID8/ICc1MTJNaScpLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIGludmFsaWRhdGlvbjogaW52YWxpZGF0aW9uID8ge1xuICAgICAgICAgIHB1cmdlOiB7IGVuYWJsZWQ6IHRydWUgfSxcbiAgICAgICAgICBiYW46IHsgZW5hYmxlZDogdHJ1ZSB9LFxuICAgICAgICAgIHhrZXk6IHsgZW5hYmxlZDogdHJ1ZSB9LFxuICAgICAgICB9IDogdW5kZWZpbmVkLFxuICAgICAgICBtb25pdG9yaW5nOiBtb25pdG9yaW5nID8ge1xuICAgICAgICAgIGVuYWJsZWQ6IHRydWUsXG4gICAgICAgICAgc2VydmljZU1vbml0b3I6IHsgZW5hYmxlZDogdHJ1ZSB9LFxuICAgICAgICB9IDogdW5kZWZpbmVkLFxuICAgICAgICBwb2Q6IChvcHRpb25zLnRvbGVyYXRpb25zICYmIG9wdGlvbnMudG9sZXJhdGlvbnMubGVuZ3RoID4gMCkgPyB7XG4gICAgICAgICAgdG9sZXJhdGlvbnM6IG9wdGlvbnMudG9sZXJhdGlvbnMubWFwKHQgPT4gKHtcbiAgICAgICAgICAgIGtleTogdC5rZXksXG4gICAgICAgICAgICBvcGVyYXRvcjogdC5vcGVyYXRvcixcbiAgICAgICAgICAgIHZhbHVlOiB0LnZhbHVlLFxuICAgICAgICAgICAgZWZmZWN0OiB0LmVmZmVjdCxcbiAgICAgICAgICB9KSksXG4gICAgICAgIH0gOiB1bmRlZmluZWQsXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgLy8gVGhlIG9wZXJhdG9yIGNyZWF0ZXMgYSBzZXJ2aWNlIHdpdGggdGhlIHNhbWUgbmFtZSBhcyB0aGUgVmlueWxDYWNoZSByZXNvdXJjZVxuICAgIHRoaXMudmlueWxDYWNoZVNlcnZpY2VOYW1lID0gTmFtZXMudG9MYWJlbFZhbHVlKHZpbnlsQ2FjaGUpO1xuICB9XG59XG4iXX0=
160
+ PloneVinylCache[_a] = { fqn: "@bluedynamics/cdk8s-plone.PloneVinylCache", version: "0.1.28" };
161
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlueWxjYWNoZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy92aW55bGNhY2hlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEseUJBQXlCO0FBQ3pCLDZCQUE2QjtBQUM3QixpQ0FBOEI7QUFDOUIsMkNBQXVDO0FBQ3ZDLDJFQUt5QztBQXdSekM7Ozs7Ozs7Ozs7Ozs7Ozs7R0FnQkc7QUFDSCxNQUFhLGVBQWdCLFNBQVEsc0JBQVM7SUFPNUMsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxPQUErQjtRQUN2RSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLE1BQU0sUUFBUSxHQUFHLE9BQU8sQ0FBQyxRQUFRLElBQUksQ0FBQyxDQUFDO1FBQ3ZDLE1BQU0sWUFBWSxHQUFHLE9BQU8sQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDO1FBQ2xELE1BQU0sVUFBVSxHQUFHLE9BQU8sQ0FBQyxVQUFVLElBQUksS0FBSyxDQUFDO1FBRS9DLDZCQUE2QjtRQUM3QixNQUFNLFdBQVcsR0FBRyxPQUFPLENBQUMsUUFBUSxJQUFJLE9BQU8sQ0FBQztRQUNoRCxJQUFJLFlBQXdDLENBQUM7UUFDN0MsUUFBUSxXQUFXLEVBQUUsQ0FBQztZQUNwQixLQUFLLGFBQWE7Z0JBQ2hCLFlBQVksR0FBRyxrREFBMEIsQ0FBQyxzQkFBc0IsQ0FBQztnQkFDakUsTUFBTTtZQUNSLEtBQUssUUFBUTtnQkFDWCxZQUFZLEdBQUcsa0RBQTBCLENBQUMsTUFBTSxDQUFDO2dCQUNqRCxNQUFNO1lBQ1IsS0FBSyxNQUFNO2dCQUNULFlBQVksR0FBRyxrREFBMEIsQ0FBQyxJQUFJLENBQUM7Z0JBQy9DLE1BQU07WUFDUjtnQkFDRSxZQUFZLEdBQUcsa0RBQTBCLENBQUMsS0FBSyxDQUFDO1FBQ3BELENBQUM7UUFFRCw0QkFBNEI7UUFDNUIsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLGNBQWM7WUFDcEMsRUFBRSxDQUFDLFlBQVks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QUUsT0FBTyxFQUFFLElBQUksRUFBRTtpQkFDbEMsQ0FBQyxDQUFDLENBQUMsU0FBUztnQkFDYixHQUFHLEVBQUUsQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLE1BQU0sSUFBSSxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDO29CQUMzRCxXQUFXLEVBQUUsT0FBTyxDQUFDLFdBQVcsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO3dCQUMxQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLEdBQUc7d0JBQ1YsUUFBUSxFQUFFLENBQUMsQ0FBQyxRQUFRO3dCQUNwQixLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUs7d0JBQ2QsTUFBTSxFQUFFLENBQUMsQ0FBQyxNQUFNO3FCQUNqQixDQUFDLENBQUM7b0JBQ0gsWUFBWSxFQUFFLE9BQU8sQ0FBQyxZQUFZO2lCQUNuQyxDQUFDLENBQUMsQ0FBQyxTQUFTO2FBQ2Q7U0FDRixDQUFDLENBQUM7UUFFSCwrRUFBK0U7UUFDL0UsSUFBSSxDQUFDLHFCQUFxQixHQUFHLGFBQUssQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDOUQsQ0FBQzs7QUExSkgsMENBMkpDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgZnMgZnJvbSAnZnMnO1xuaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCB7IE5hbWVzIH0gZnJvbSAnY2RrOHMnO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQge1xuICBWaW55bENhY2hlLFxuICBWaW55bENhY2hlU3BlY0RpcmVjdG9yVHlwZSxcbiAgVmlueWxDYWNoZVNwZWNSZXNvdXJjZXNMaW1pdHMsXG4gIFZpbnlsQ2FjaGVTcGVjUmVzb3VyY2VzUmVxdWVzdHMsXG59IGZyb20gJy4vaW1wb3J0cy92aW55bC5ibHVlZHluYW1pY3MuZXUnO1xuaW1wb3J0IHsgUGxvbmUgfSBmcm9tICcuL3Bsb25lJztcblxuLyoqXG4gKiBIZWFsdGggcHJvYmUgY29uZmlndXJhdGlvbiBmb3IgYSBWaW55bENhY2hlIGJhY2tlbmQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVmlueWxDYWNoZUJhY2tlbmRQcm9iZSB7XG4gIC8qKlxuICAgKiBVUkwgdG8gcHJvYmUuXG4gICAqIEBkZWZhdWx0ICcvJ1xuICAgKi9cbiAgcmVhZG9ubHkgdXJsPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBIb3cgb2Z0ZW4gdG8gcHJvYmUgdGhlIGJhY2tlbmQuXG4gICAqIEBkZWZhdWx0ICc1cydcbiAgICovXG4gIHJlYWRvbmx5IGludGVydmFsPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBNYXhpbXVtIHRpbWUgdG8gd2FpdCBmb3IgYSBwcm9iZSByZXNwb25zZS5cbiAgICogQGRlZmF1bHQgJzJzJ1xuICAgKi9cbiAgcmVhZG9ubHkgdGltZW91dD86IHN0cmluZztcblxuICAvKipcbiAgICogTnVtYmVyIG9mIG1vc3QgcmVjZW50IHByb2JlcyB0byBjb25zaWRlci5cbiAgICogQGRlZmF1bHQgMTBcbiAgICovXG4gIHJlYWRvbmx5IHdpbmRvdz86IG51bWJlcjtcblxuICAvKipcbiAgICogTWluaW11bSBzdWNjZXNzZnVsIHByb2JlcyB3aXRoaW4gd2luZG93IGZvciBoZWFsdGh5IHN0YXR1cy5cbiAgICogQGRlZmF1bHQgOFxuICAgKi9cbiAgcmVhZG9ubHkgdGhyZXNob2xkPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBFeHBlY3RlZCBIVFRQIHJlc3BvbnNlIHN0YXR1cyBjb2RlLlxuICAgKiBAZGVmYXVsdCAyMDBcbiAgICovXG4gIHJlYWRvbmx5IGV4cGVjdGVkUmVzcG9uc2U/OiBudW1iZXI7XG59XG5cbi8qKlxuICogQW4gYWRkaXRpb25hbCBiYWNrZW5kIGZvciB0aGUgVmlueWxDYWNoZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBWaW55bENhY2hlQmFja2VuZCB7XG4gIC8qKlxuICAgKiBWQ0wgaWRlbnRpZmllciBmb3IgdGhpcyBiYWNrZW5kLiBNdXN0IG1hdGNoIF5bYS16QS1aXVthLXpBLVowLTlfXSokLlxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBLdWJlcm5ldGVzIFNlcnZpY2UgbmFtZSB0byB1c2UgYXMgYmFja2VuZC5cbiAgICovXG4gIHJlYWRvbmx5IHNlcnZpY2VOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFBvcnQgdG8gdXNlIGZvciB0aGlzIGJhY2tlbmQuXG4gICAqL1xuICByZWFkb25seSBwb3J0OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEhlYWx0aCBwcm9iZSBjb25maWd1cmF0aW9uLlxuICAgKiBAZGVmYXVsdCAtIG5vIHByb2JlXG4gICAqL1xuICByZWFkb25seSBwcm9iZT86IFZpbnlsQ2FjaGVCYWNrZW5kUHJvYmU7XG5cbiAgLyoqXG4gICAqIFJlbGF0aXZlIHdlaWdodCBmb3IgdGhlIGRpcmVjdG9yLiAwIG1lYW5zIHN0YW5kYnkuXG4gICAqIEBkZWZhdWx0IC0gb3BlcmF0b3IgZGVmYXVsdFxuICAgKi9cbiAgcmVhZG9ubHkgd2VpZ2h0PzogbnVtYmVyO1xufVxuXG4vKipcbiAqIEEgS3ViZXJuZXRlcyB0b2xlcmF0aW9uIGZvciB0aGUgVmFybmlzaCBwb2RzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFZpbnlsQ2FjaGVUb2xlcmF0aW9uIHtcbiAgLyoqXG4gICAqIFRoZSB0YWludCBrZXkgdG8gdG9sZXJhdGUuXG4gICAqL1xuICByZWFkb25seSBrZXk6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG9wZXJhdG9yIChFcXVhbCBvciBFeGlzdHMpLlxuICAgKiBAZGVmYXVsdCAnRXF1YWwnXG4gICAqL1xuICByZWFkb25seSBvcGVyYXRvcj86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHRhaW50IHZhbHVlIHRvIG1hdGNoICh3aGVuIG9wZXJhdG9yIGlzIEVxdWFsKS5cbiAgICogQGRlZmF1bHQgLSBubyB2YWx1ZVxuICAgKi9cbiAgcmVhZG9ubHkgdmFsdWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSB0YWludCBlZmZlY3QgdG8gdG9sZXJhdGUgKE5vU2NoZWR1bGUsIFByZWZlck5vU2NoZWR1bGUsIE5vRXhlY3V0ZSkuXG4gICAqIEBkZWZhdWx0IC0gdG9sZXJhdGUgYWxsIGVmZmVjdHNcbiAgICovXG4gIHJlYWRvbmx5IGVmZmVjdD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIG9wdGlvbnMgZm9yIFBsb25lVmlueWxDYWNoZSAoY2xvdWQtdmlueWwgb3BlcmF0b3IpLlxuICpcbiAqIENyZWF0ZXMgYSBWaW55bENhY2hlIGN1c3RvbSByZXNvdXJjZSB0aGF0IHRoZSBjbG91ZC12aW55bCBvcGVyYXRvclxuICogcmVjb25jaWxlcyBpbnRvIGEgVmFybmlzaCBDYWNoZSBjbHVzdGVyIHdpdGggYWdlbnQtYmFzZWQgVkNMIGRlbGl2ZXJ5LlxuICpcbiAqIFJlcXVpcmVzIHRoZSBjbG91ZC12aW55bCBvcGVyYXRvciB0byBiZSBpbnN0YWxsZWQgaW4gdGhlIGNsdXN0ZXIuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUGxvbmVWaW55bENhY2hlT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgUGxvbmUgY29uc3RydWN0IHRvIGF0dGFjaCB0aGUgY2FjaGUgdG8uXG4gICAqIEJhY2tlbmRzIGFyZSBhdXRvLWNvbmZpZ3VyZWQgZnJvbSB0aGUgUGxvbmUgc2VydmljZXMuXG4gICAqL1xuICByZWFkb25seSBwbG9uZTogUGxvbmU7XG5cbiAgLyoqXG4gICAqIEFkZGl0aW9uYWwgYmFja2VuZHMgdG8gYWRkIGFmdGVyIHRoZSBhdXRvLWdlbmVyYXRlZCBQbG9uZSBiYWNrZW5kcy5cbiAgICogVXNlcyB0aGUgc2FtZSBiYWNrZW5kIHR5cGUgc3RydWN0dXJlIGFzIHRoZSBWaW55bENhY2hlIENSRC5cbiAgICogQGRlZmF1bHQgLSBubyBleHRyYSBiYWNrZW5kc1xuICAgKi9cbiAgcmVhZG9ubHkgZXh0cmFCYWNrZW5kcz86IFZpbnlsQ2FjaGVCYWNrZW5kW107XG5cbiAgLyoqXG4gICAqIE51bWJlciBvZiBWYXJuaXNoIHBvZCByZXBsaWNhcy5cbiAgICogQGRlZmF1bHQgMlxuICAgKi9cbiAgcmVhZG9ubHkgcmVwbGljYXM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIENQVSByZXF1ZXN0IGZvciBWYXJuaXNoIHBvZHMuXG4gICAqIEBkZWZhdWx0ICcxMDBtJ1xuICAgKi9cbiAgcmVhZG9ubHkgcmVxdWVzdENwdT86IHN0cmluZztcblxuICAvKipcbiAgICogTWVtb3J5IHJlcXVlc3QgZm9yIFZhcm5pc2ggcG9kcy5cbiAgICogQGRlZmF1bHQgJzI1Nk1pJ1xuICAgKi9cbiAgcmVhZG9ubHkgcmVxdWVzdE1lbW9yeT86IHN0cmluZztcblxuICAvKipcbiAgICogQ1BVIGxpbWl0IGZvciBWYXJuaXNoIHBvZHMuXG4gICAqIEBkZWZhdWx0ICc1MDBtJ1xuICAgKi9cbiAgcmVhZG9ubHkgbGltaXRDcHU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE1lbW9yeSBsaW1pdCBmb3IgVmFybmlzaCBwb2RzLlxuICAgKiBAZGVmYXVsdCAnNTEyTWknXG4gICAqL1xuICByZWFkb25seSBsaW1pdE1lbW9yeT86IHN0cmluZztcblxuICAvKipcbiAgICogRGlyZWN0b3IgdHlwZSBmb3IgbG9hZCBkaXN0cmlidXRpb24uXG4gICAqIEBkZWZhdWx0ICdzaGFyZCdcbiAgICovXG4gIHJlYWRvbmx5IGRpcmVjdG9yPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBDdXN0b20gVkNMIHNuaXBwZXQgZm9yIHZjbF9yZWN2IHN1YnJvdXRpbmUuXG4gICAqIFJlcGxhY2VzIHRoZSBkZWZhdWx0IFBsb25lIHJlY3Ygc25pcHBldC5cbiAgICogQGRlZmF1bHQgLSB1c2VzIGJ1aWx0LWluIHBsb25lLXZpbnlsLXJlY3YudmNsXG4gICAqL1xuICByZWFkb25seSB2Y2xSZWN2U25pcHBldD86IHN0cmluZztcblxuICAvKipcbiAgICogQ3VzdG9tIFZDTCBzbmlwcGV0IGZvciB2Y2xfYmFja2VuZF9yZXNwb25zZSBzdWJyb3V0aW5lLlxuICAgKiBSZXBsYWNlcyB0aGUgZGVmYXVsdCBQbG9uZSBiYWNrZW5kX3Jlc3BvbnNlIHNuaXBwZXQuXG4gICAqIEBkZWZhdWx0IC0gdXNlcyBidWlsdC1pbiBwbG9uZS12aW55bC1iYWNrZW5kLXJlc3BvbnNlLnZjbFxuICAgKi9cbiAgcmVhZG9ubHkgdmNsQmFja2VuZFJlc3BvbnNlU25pcHBldD86IHN0cmluZztcblxuICAvKipcbiAgICogRW5hYmxlIGNhY2hlIGludmFsaWRhdGlvbiAoUFVSR0UsIEJBTiwgeGtleSkuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IGludmFsaWRhdGlvbj86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEVuYWJsZSBQcm9tZXRoZXVzIG1vbml0b3JpbmcgKG1ldHJpY3MgKyBTZXJ2aWNlTW9uaXRvcikuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBtb25pdG9yaW5nPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQ29udGFpbmVyIGltYWdlIGZvciB0aGUgVmFybmlzaCBwb2RzLlxuICAgKiBAZGVmYXVsdCAndmFybmlzaDo3LjYnXG4gICAqL1xuICByZWFkb25seSBpbWFnZT86IHN0cmluZztcblxuICAvKipcbiAgICogVG9sZXJhdGlvbnMgZm9yIHRoZSBWYXJuaXNoIHBvZHMuXG4gICAqIEBkZWZhdWx0IC0gbm8gdG9sZXJhdGlvbnNcbiAgICovXG4gIHJlYWRvbmx5IHRvbGVyYXRpb25zPzogVmlueWxDYWNoZVRvbGVyYXRpb25bXTtcblxuICAvKipcbiAgICogTm9kZSBzZWxlY3RvciBsYWJlbHMgZm9yIHRoZSBWYXJuaXNoIHBvZHMuXG4gICAqIENvbnN0cmFpbnMgcG9kcyB0byBub2RlcyBtYXRjaGluZyBhbGwgc3BlY2lmaWVkIGxhYmVscy5cbiAgICogQGRlZmF1bHQgLSBubyBub2RlIHNlbGVjdG9yXG4gICAqL1xuICByZWFkb25seSBub2RlU2VsZWN0b3I/OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9O1xuXG4gIC8qKlxuICAgKiBDdXN0b20gVkNMIHNuaXBwZXQgZm9yIHZjbF9kZWxpdmVyIHN1YnJvdXRpbmUuXG4gICAqIEBkZWZhdWx0IC0gbm8gc25pcHBldFxuICAgKi9cbiAgcmVhZG9ubHkgdmNsRGVsaXZlclNuaXBwZXQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEN1c3RvbSBWQ0wgc25pcHBldCBmb3IgdmNsX2hpdCBzdWJyb3V0aW5lLlxuICAgKiBAZGVmYXVsdCAtIG5vIHNuaXBwZXRcbiAgICovXG4gIHJlYWRvbmx5IHZjbEhpdFNuaXBwZXQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEN1c3RvbSBWQ0wgc25pcHBldCBmb3IgdmNsX21pc3Mgc3Vicm91dGluZS5cbiAgICogQGRlZmF1bHQgLSBubyBzbmlwcGV0XG4gICAqL1xuICByZWFkb25seSB2Y2xNaXNzU25pcHBldD86IHN0cmluZztcblxuICAvKipcbiAgICogQ3VzdG9tIFZDTCBzbmlwcGV0IGZvciB2Y2xfcGFzcyBzdWJyb3V0aW5lLlxuICAgKiBAZGVmYXVsdCAtIG5vIHNuaXBwZXRcbiAgICovXG4gIHJlYWRvbmx5IHZjbFBhc3NTbmlwcGV0Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBDdXN0b20gVkNMIHNuaXBwZXQgZm9yIHZjbF9waXBlIHN1YnJvdXRpbmUuXG4gICAqIEBkZWZhdWx0IC0gbm8gc25pcHBldFxuICAgKi9cbiAgcmVhZG9ubHkgdmNsUGlwZVNuaXBwZXQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEN1c3RvbSBWQ0wgc25pcHBldCBmb3IgdmNsX3N5bnRoIHN1YnJvdXRpbmUuXG4gICAqIEBkZWZhdWx0IC0gbm8gc25pcHBldFxuICAgKi9cbiAgcmVhZG9ubHkgdmNsU3ludGhTbmlwcGV0Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBDdXN0b20gVkNMIHNuaXBwZXQgZm9yIHZjbF9wdXJnZSBzdWJyb3V0aW5lLlxuICAgKiBAZGVmYXVsdCAtIG5vIHNuaXBwZXRcbiAgICovXG4gIHJlYWRvbmx5IHZjbFB1cmdlU25pcHBldD86IHN0cmluZztcblxuICAvKipcbiAgICogQ3VzdG9tIFZDTCBzbmlwcGV0IGZvciB2Y2xfaGFzaCBzdWJyb3V0aW5lLlxuICAgKiBAZGVmYXVsdCAtIG5vIHNuaXBwZXRcbiAgICovXG4gIHJlYWRvbmx5IHZjbEhhc2hTbmlwcGV0Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBDdXN0b20gVkNMIHNuaXBwZXQgZm9yIHZjbF9pbml0IHN1YnJvdXRpbmUuXG4gICAqIEBkZWZhdWx0IC0gbm8gc25pcHBldFxuICAgKi9cbiAgcmVhZG9ubHkgdmNsSW5pdFNuaXBwZXQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEN1c3RvbSBWQ0wgc25pcHBldCBmb3IgdmNsX2Zpbmkgc3Vicm91dGluZS5cbiAgICogQGRlZmF1bHQgLSBubyBzbmlwcGV0XG4gICAqL1xuICByZWFkb25seSB2Y2xGaW5pU25pcHBldD86IHN0cmluZztcblxuICAvKipcbiAgICogQ3VzdG9tIFZDTCBzbmlwcGV0IGZvciB2Y2xfYmFja2VuZF9mZXRjaCBzdWJyb3V0aW5lLlxuICAgKiBAZGVmYXVsdCAtIG5vIHNuaXBwZXRcbiAgICovXG4gIHJlYWRvbmx5IHZjbEJhY2tlbmRGZXRjaFNuaXBwZXQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEN1c3RvbSBWQ0wgc25pcHBldCBmb3IgdmNsX2JhY2tlbmRfZXJyb3Igc3Vicm91dGluZS5cbiAgICogQGRlZmF1bHQgLSBubyBzbmlwcGV0XG4gICAqL1xuICByZWFkb25seSB2Y2xCYWNrZW5kRXJyb3JTbmlwcGV0Pzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBsb25lVmlueWxDYWNoZSBjb25zdHJ1Y3QgZm9yIGRlcGxveWluZyBWYXJuaXNoIENhY2hlIHZpYSBjbG91ZC12aW55bCBvcGVyYXRvci5cbiAqXG4gKiBDcmVhdGVzIGEgVmlueWxDYWNoZSBjdXN0b20gcmVzb3VyY2Ugd2l0aCBQbG9uZSBiYWNrZW5kL2Zyb250ZW5kIHNlcnZpY2VzXG4gKiBhdXRvLWNvbmZpZ3VyZWQgYXMgYmFja2VuZHMuIFRoZSBjbG91ZC12aW55bCBvcGVyYXRvciBtYW5hZ2VzIHRoZSBmdWxsXG4gKiBWYXJuaXNoIGxpZmVjeWNsZSBpbmNsdWRpbmcgVkNMIGdlbmVyYXRpb24sIGFnZW50IGRlbGl2ZXJ5LCBhbmQgbW9uaXRvcmluZy5cbiAqXG4gKiBSZXF1aXJlcyB0aGUgY2xvdWQtdmlueWwgb3BlcmF0b3IgdG8gYmUgaW5zdGFsbGVkIGluIHRoZSBjbHVzdGVyLlxuICpcbiAqIEBleGFtcGxlXG4gKiBjb25zdCBwbG9uZSA9IG5ldyBQbG9uZShjaGFydCwgJ3Bsb25lJyk7XG4gKiBjb25zdCBjYWNoZSA9IG5ldyBQbG9uZVZpbnlsQ2FjaGUoY2hhcnQsICdjYWNoZScsIHtcbiAqICAgcGxvbmU6IHBsb25lLFxuICogICByZXBsaWNhczogMixcbiAqIH0pO1xuICogLy8gVXNlIGNhY2hlLnZpbnlsQ2FjaGVTZXJ2aWNlTmFtZSBmb3IgSW5ncmVzc1JvdXRlXG4gKi9cbmV4cG9ydCBjbGFzcyBQbG9uZVZpbnlsQ2FjaGUgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICAvKipcbiAgICogTmFtZSBvZiB0aGUgVmlueWxDYWNoZSBzZXJ2aWNlIGNyZWF0ZWQgYnkgdGhlIG9wZXJhdG9yLlxuICAgKiBVc2UgdGhpcyB0byByZWZlcmVuY2UgdGhlIGNhY2hlIHNlcnZpY2UgZnJvbSBpbmdyZXNzIG9yIG90aGVyIGNvbnN0cnVjdHMuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgdmlueWxDYWNoZVNlcnZpY2VOYW1lOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgb3B0aW9uczogUGxvbmVWaW55bENhY2hlT3B0aW9ucykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICBjb25zdCByZXBsaWNhcyA9IG9wdGlvbnMucmVwbGljYXMgPz8gMjtcbiAgICBjb25zdCBpbnZhbGlkYXRpb24gPSBvcHRpb25zLmludmFsaWRhdGlvbiA/PyB0cnVlO1xuICAgIGNvbnN0IG1vbml0b3JpbmcgPSBvcHRpb25zLm1vbml0b3JpbmcgPz8gZmFsc2U7XG5cbiAgICAvLyBSZXNvbHZlIGRpcmVjdG9yIHR5cGUgZW51bVxuICAgIGNvbnN0IGRpcmVjdG9yU3RyID0gb3B0aW9ucy5kaXJlY3RvciA/PyAnc2hhcmQnO1xuICAgIGxldCBkaXJlY3RvclR5cGU6IFZpbnlsQ2FjaGVTcGVjRGlyZWN0b3JUeXBlO1xuICAgIHN3aXRjaCAoZGlyZWN0b3JTdHIpIHtcbiAgICAgIGNhc2UgJ3JvdW5kX3JvYmluJzpcbiAgICAgICAgZGlyZWN0b3JUeXBlID0gVmlueWxDYWNoZVNwZWNEaXJlY3RvclR5cGUuUk9VTkRfVU5ERVJTQ09SRV9ST0JJTjtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdyYW5kb20nOlxuICAgICAgICBkaXJlY3RvclR5cGUgPSBWaW55bENhY2hlU3BlY0RpcmVjdG9yVHlwZS5SQU5ET007XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnaGFzaCc6XG4gICAgICAgIGRpcmVjdG9yVHlwZSA9IFZpbnlsQ2FjaGVTcGVjRGlyZWN0b3JUeXBlLkhBU0g7XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgZGlyZWN0b3JUeXBlID0gVmlueWxDYWNoZVNwZWNEaXJlY3RvclR5cGUuU0hBUkQ7XG4gICAgfVxuXG4gICAgLy8gTG9hZCBkZWZhdWx0IFZDTCBzbmlwcGV0c1xuICAgIGNvbnN0IHZjbFJlY3YgPSBvcHRpb25zLnZjbFJlY3ZTbmlwcGV0ID8/XG4gICAgICBmcy5yZWFkRmlsZVN5bmMocGF0aC5qb2luKF9fZGlybmFtZSwgJ2NvbmZpZycsICdwbG9uZS12aW55bC1yZWN2LnZjbCcpLCAndXRmOCcpO1xuICAgIGNvbnN0IHZjbEJhY2tlbmRSZXNwb25zZSA9IG9wdGlvbnMudmNsQmFja2VuZFJlc3BvbnNlU25pcHBldCA/P1xuICAgICAgZnMucmVhZEZpbGVTeW5jKHBhdGguam9pbihfX2Rpcm5hbWUsICdjb25maWcnLCAncGxvbmUtdmlueWwtYmFja2VuZC1yZXNwb25zZS52Y2wnKSwgJ3V0ZjgnKTtcblxuICAgIC8vIEJ1aWxkIGJhY2tlbmRzIGZyb20gUGxvbmUgc2VydmljZXNcbiAgICBjb25zdCBiYWNrZW5kczogQXJyYXk8e1xuICAgICAgbmFtZTogc3RyaW5nO1xuICAgICAgc2VydmljZVJlZjogeyBuYW1lOiBzdHJpbmcgfTtcbiAgICAgIHBvcnQ6IG51bWJlcjtcbiAgICAgIHByb2JlPzoge1xuICAgICAgICB1cmw6IHN0cmluZztcbiAgICAgICAgaW50ZXJ2YWw6IHN0cmluZztcbiAgICAgICAgdGltZW91dDogc3RyaW5nO1xuICAgICAgICB3aW5kb3c6IG51bWJlcjtcbiAgICAgICAgdGhyZXNob2xkOiBudW1iZXI7XG4gICAgICB9O1xuICAgICAgd2VpZ2h0PzogbnVtYmVyO1xuICAgIH0+ID0gW1xuICAgICAge1xuICAgICAgICBuYW1lOiAncGxvbmVfYmFja2VuZCcsXG4gICAgICAgIHNlcnZpY2VSZWY6IHsgbmFtZTogb3B0aW9ucy5wbG9uZS5iYWNrZW5kU2VydmljZU5hbWUgfSxcbiAgICAgICAgcG9ydDogODA4MCxcbiAgICAgICAgcHJvYmU6IHtcbiAgICAgICAgICB1cmw6ICcvb2snLFxuICAgICAgICAgIGludGVydmFsOiAnNXMnLFxuICAgICAgICAgIHRpbWVvdXQ6ICcycycsXG4gICAgICAgICAgd2luZG93OiAxMCxcbiAgICAgICAgICB0aHJlc2hvbGQ6IDgsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIF07XG5cbiAgICBpZiAob3B0aW9ucy5wbG9uZS5mcm9udGVuZFNlcnZpY2VOYW1lKSB7XG4gICAgICBiYWNrZW5kcy5wdXNoKHtcbiAgICAgICAgbmFtZTogJ3Bsb25lX2Zyb250ZW5kJyxcbiAgICAgICAgc2VydmljZVJlZjogeyBuYW1lOiBvcHRpb25zLnBsb25lLmZyb250ZW5kU2VydmljZU5hbWUgfSxcbiAgICAgICAgcG9ydDogMzAwMCxcbiAgICAgICAgcHJvYmU6IHtcbiAgICAgICAgICB1cmw6ICcvJyxcbiAgICAgICAgICBpbnRlcnZhbDogJzVzJyxcbiAgICAgICAgICB0aW1lb3V0OiAnMnMnLFxuICAgICAgICAgIHdpbmRvdzogMTAsXG4gICAgICAgICAgdGhyZXNob2xkOiA4LFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKG9wdGlvbnMuZXh0cmFCYWNrZW5kcykge1xuICAgICAgZm9yIChjb25zdCBlYiBvZiBvcHRpb25zLmV4dHJhQmFja2VuZHMpIHtcbiAgICAgICAgYmFja2VuZHMucHVzaCh7XG4gICAgICAgICAgbmFtZTogZWIubmFtZSxcbiAgICAgICAgICBzZXJ2aWNlUmVmOiB7IG5hbWU6IGViLnNlcnZpY2VOYW1lIH0sXG4gICAgICAgICAgcG9ydDogZWIucG9ydCxcbiAgICAgICAgICBwcm9iZTogZWIucHJvYmUgPyB7XG4gICAgICAgICAgICB1cmw6IGViLnByb2JlLnVybCA/PyAnLycsXG4gICAgICAgICAgICBpbnRlcnZhbDogZWIucHJvYmUuaW50ZXJ2YWwgPz8gJzVzJyxcbiAgICAgICAgICAgIHRpbWVvdXQ6IGViLnByb2JlLnRpbWVvdXQgPz8gJzJzJyxcbiAgICAgICAgICAgIHdpbmRvdzogZWIucHJvYmUud2luZG93ID8/IDEwLFxuICAgICAgICAgICAgdGhyZXNob2xkOiBlYi5wcm9iZS50aHJlc2hvbGQgPz8gOCxcbiAgICAgICAgICB9IDogdW5kZWZpbmVkLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCB2aW55bENhY2hlID0gbmV3IFZpbnlsQ2FjaGUodGhpcywgJ3ZpbnlsY2FjaGUnLCB7XG4gICAgICBzcGVjOiB7XG4gICAgICAgIHJlcGxpY2FzLFxuICAgICAgICBpbWFnZTogb3B0aW9ucy5pbWFnZSA/PyAndmFybmlzaDo3LjYnLFxuICAgICAgICBiYWNrZW5kcyxcbiAgICAgICAgZGlyZWN0b3I6IHsgdHlwZTogZGlyZWN0b3JUeXBlIH0sXG4gICAgICAgIHZjbDoge1xuICAgICAgICAgIHNuaXBwZXRzOiB7XG4gICAgICAgICAgICB2Y2xSZWN2OiB2Y2xSZWN2LFxuICAgICAgICAgICAgdmNsQmFja2VuZFJlc3BvbnNlOiB2Y2xCYWNrZW5kUmVzcG9uc2UsXG4gICAgICAgICAgICB2Y2xEZWxpdmVyOiBvcHRpb25zLnZjbERlbGl2ZXJTbmlwcGV0LFxuICAgICAgICAgICAgdmNsSGl0OiBvcHRpb25zLnZjbEhpdFNuaXBwZXQsXG4gICAgICAgICAgICB2Y2xNaXNzOiBvcHRpb25zLnZjbE1pc3NTbmlwcGV0LFxuICAgICAgICAgICAgdmNsUGFzczogb3B0aW9ucy52Y2xQYXNzU25pcHBldCxcbiAgICAgICAgICAgIHZjbFBpcGU6IG9wdGlvbnMudmNsUGlwZVNuaXBwZXQsXG4gICAgICAgICAgICB2Y2xTeW50aDogb3B0aW9ucy52Y2xTeW50aFNuaXBwZXQsXG4gICAgICAgICAgICB2Y2xQdXJnZTogb3B0aW9ucy52Y2xQdXJnZVNuaXBwZXQsXG4gICAgICAgICAgICB2Y2xIYXNoOiBvcHRpb25zLnZjbEhhc2hTbmlwcGV0LFxuICAgICAgICAgICAgdmNsSW5pdDogb3B0aW9ucy52Y2xJbml0U25pcHBldCxcbiAgICAgICAgICAgIHZjbEZpbmk6IG9wdGlvbnMudmNsRmluaVNuaXBwZXQsXG4gICAgICAgICAgICB2Y2xCYWNrZW5kRmV0Y2g6IG9wdGlvbnMudmNsQmFja2VuZEZldGNoU25pcHBldCxcbiAgICAgICAgICAgIHZjbEJhY2tlbmRFcnJvcjogb3B0aW9ucy52Y2xCYWNrZW5kRXJyb3JTbmlwcGV0LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHJlc291cmNlczoge1xuICAgICAgICAgIHJlcXVlc3RzOiB7XG4gICAgICAgICAgICBjcHU6IFZpbnlsQ2FjaGVTcGVjUmVzb3VyY2VzUmVxdWVzdHMuZnJvbVN0cmluZyhvcHRpb25zLnJlcXVlc3RDcHUgPz8gJzEwMG0nKSxcbiAgICAgICAgICAgIG1lbW9yeTogVmlueWxDYWNoZVNwZWNSZXNvdXJjZXNSZXF1ZXN0cy5mcm9tU3RyaW5nKG9wdGlvbnMucmVxdWVzdE1lbW9yeSA/PyAnMjU2TWknKSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIGxpbWl0czoge1xuICAgICAgICAgICAgY3B1OiBWaW55bENhY2hlU3BlY1Jlc291cmNlc0xpbWl0cy5mcm9tU3RyaW5nKG9wdGlvbnMubGltaXRDcHUgPz8gJzUwMG0nKSxcbiAgICAgICAgICAgIG1lbW9yeTogVmlueWxDYWNoZVNwZWNSZXNvdXJjZXNMaW1pdHMuZnJvbVN0cmluZyhvcHRpb25zLmxpbWl0TWVtb3J5ID8/ICc1MTJNaScpLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIGludmFsaWRhdGlvbjogaW52YWxpZGF0aW9uID8ge1xuICAgICAgICAgIHB1cmdlOiB7IGVuYWJsZWQ6IHRydWUgfSxcbiAgICAgICAgICBiYW46IHsgZW5hYmxlZDogdHJ1ZSB9LFxuICAgICAgICAgIHhrZXk6IHsgZW5hYmxlZDogdHJ1ZSB9LFxuICAgICAgICB9IDogdW5kZWZpbmVkLFxuICAgICAgICBtb25pdG9yaW5nOiBtb25pdG9yaW5nID8ge1xuICAgICAgICAgIGVuYWJsZWQ6IHRydWUsXG4gICAgICAgICAgc2VydmljZU1vbml0b3I6IHsgZW5hYmxlZDogdHJ1ZSB9LFxuICAgICAgICB9IDogdW5kZWZpbmVkLFxuICAgICAgICBwb2Q6IChvcHRpb25zLnRvbGVyYXRpb25zPy5sZW5ndGggfHwgb3B0aW9ucy5ub2RlU2VsZWN0b3IpID8ge1xuICAgICAgICAgIHRvbGVyYXRpb25zOiBvcHRpb25zLnRvbGVyYXRpb25zPy5tYXAodCA9PiAoe1xuICAgICAgICAgICAga2V5OiB0LmtleSxcbiAgICAgICAgICAgIG9wZXJhdG9yOiB0Lm9wZXJhdG9yLFxuICAgICAgICAgICAgdmFsdWU6IHQudmFsdWUsXG4gICAgICAgICAgICBlZmZlY3Q6IHQuZWZmZWN0LFxuICAgICAgICAgIH0pKSxcbiAgICAgICAgICBub2RlU2VsZWN0b3I6IG9wdGlvbnMubm9kZVNlbGVjdG9yLFxuICAgICAgICB9IDogdW5kZWZpbmVkLFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIC8vIFRoZSBvcGVyYXRvciBjcmVhdGVzIGEgc2VydmljZSB3aXRoIHRoZSBzYW1lIG5hbWUgYXMgdGhlIFZpbnlsQ2FjaGUgcmVzb3VyY2VcbiAgICB0aGlzLnZpbnlsQ2FjaGVTZXJ2aWNlTmFtZSA9IE5hbWVzLnRvTGFiZWxWYWx1ZSh2aW55bENhY2hlKTtcbiAgfVxufVxuIl19
package/package.json CHANGED
@@ -77,7 +77,7 @@
77
77
  "publishConfig": {
78
78
  "access": "public"
79
79
  },
80
- "version": "0.1.27",
80
+ "version": "0.1.28",
81
81
  "jest": {
82
82
  "coverageProvider": "v8",
83
83
  "testMatch": [