cdk8s 2.64.25 → 2.65.1
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 +442 -46
- package/docs/java.md +444 -6
- package/docs/python.md +475 -7
- package/docs/typescript.md +407 -3
- package/lib/api-object.js +5 -4
- package/lib/app.d.ts +19 -2
- package/lib/app.js +4 -2
- package/lib/chart.js +1 -1
- package/lib/cron.js +1 -1
- package/lib/dependency.js +2 -2
- package/lib/duration.js +1 -1
- package/lib/helm.js +1 -1
- package/lib/include.js +1 -1
- package/lib/index.d.ts +1 -0
- package/lib/index.js +2 -1
- package/lib/json-patch.js +1 -1
- package/lib/lazy.js +1 -1
- package/lib/metadata.d.ts +15 -1
- package/lib/metadata.js +10 -7
- package/lib/names.js +1 -1
- package/lib/resolve.d.ts +70 -0
- package/lib/resolve.js +105 -0
- package/lib/size.js +1 -1
- package/lib/testing.js +1 -1
- package/lib/yaml.js +1 -1
- package/package.json +1 -1
- package/lib/_resolve.d.ts +0 -1
- package/lib/_resolve.js +0 -32
package/docs/typescript.md
CHANGED
|
@@ -220,6 +220,21 @@ public synth()
|
|
|
220
220
|
public synthYaml()
|
|
221
221
|
```
|
|
222
222
|
|
|
223
|
+
#### Static Functions <a name="Static Functions"></a>
|
|
224
|
+
|
|
225
|
+
##### `of` <a name="cdk8s.App.of"></a>
|
|
226
|
+
|
|
227
|
+
```typescript
|
|
228
|
+
import { App } from 'cdk8s'
|
|
229
|
+
|
|
230
|
+
App.of(c: IConstruct)
|
|
231
|
+
```
|
|
232
|
+
|
|
233
|
+
###### `c`<sup>Required</sup> <a name="cdk8s.App.parameter.c"></a>
|
|
234
|
+
|
|
235
|
+
- *Type:* [`constructs.IConstruct`](#constructs.IConstruct)
|
|
236
|
+
|
|
237
|
+
---
|
|
223
238
|
|
|
224
239
|
#### Properties <a name="Properties"></a>
|
|
225
240
|
|
|
@@ -260,6 +275,21 @@ The file extension to use for rendered YAML files.
|
|
|
260
275
|
|
|
261
276
|
---
|
|
262
277
|
|
|
278
|
+
##### `resolvers`<sup>Required</sup> <a name="cdk8s.App.property.resolvers"></a>
|
|
279
|
+
|
|
280
|
+
```typescript
|
|
281
|
+
public readonly resolvers: IResolver[];
|
|
282
|
+
```
|
|
283
|
+
|
|
284
|
+
- *Type:* [`cdk8s.IResolver`](#cdk8s.IResolver)[]
|
|
285
|
+
|
|
286
|
+
Resolvers used by this app.
|
|
287
|
+
|
|
288
|
+
This includes both custom resolvers
|
|
289
|
+
passed by the `resolvers` property, as well as built-in resolvers.
|
|
290
|
+
|
|
291
|
+
---
|
|
292
|
+
|
|
263
293
|
##### `yamlOutputType`<sup>Required</sup> <a name="cdk8s.App.property.yamlOutputType"></a>
|
|
264
294
|
|
|
265
295
|
```typescript
|
|
@@ -646,6 +676,164 @@ relationships.
|
|
|
646
676
|
|
|
647
677
|
---
|
|
648
678
|
|
|
679
|
+
### ApiObjectMetadataDefinitionOptions <a name="cdk8s.ApiObjectMetadataDefinitionOptions"></a>
|
|
680
|
+
|
|
681
|
+
Options for `ApiObjectMetadataDefinition`.
|
|
682
|
+
|
|
683
|
+
#### Initializer <a name="[object Object].Initializer"></a>
|
|
684
|
+
|
|
685
|
+
```typescript
|
|
686
|
+
import { ApiObjectMetadataDefinitionOptions } from 'cdk8s'
|
|
687
|
+
|
|
688
|
+
const apiObjectMetadataDefinitionOptions: ApiObjectMetadataDefinitionOptions = { ... }
|
|
689
|
+
```
|
|
690
|
+
|
|
691
|
+
##### `annotations`<sup>Optional</sup> <a name="cdk8s.ApiObjectMetadataDefinitionOptions.property.annotations"></a>
|
|
692
|
+
|
|
693
|
+
```typescript
|
|
694
|
+
public readonly annotations: {[ key: string ]: string};
|
|
695
|
+
```
|
|
696
|
+
|
|
697
|
+
- *Type:* {[ key: string ]: `string`}
|
|
698
|
+
- *Default:* No annotations.
|
|
699
|
+
|
|
700
|
+
Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata.
|
|
701
|
+
|
|
702
|
+
They are not queryable and should be
|
|
703
|
+
preserved when modifying objects.
|
|
704
|
+
|
|
705
|
+
> http://kubernetes.io/docs/user-guide/annotations
|
|
706
|
+
|
|
707
|
+
---
|
|
708
|
+
|
|
709
|
+
##### `finalizers`<sup>Optional</sup> <a name="cdk8s.ApiObjectMetadataDefinitionOptions.property.finalizers"></a>
|
|
710
|
+
|
|
711
|
+
```typescript
|
|
712
|
+
public readonly finalizers: string[];
|
|
713
|
+
```
|
|
714
|
+
|
|
715
|
+
- *Type:* `string`[]
|
|
716
|
+
- *Default:* No finalizers.
|
|
717
|
+
|
|
718
|
+
Namespaced keys that tell Kubernetes to wait until specific conditions are met before it fully deletes resources marked for deletion.
|
|
719
|
+
|
|
720
|
+
Must be empty before the object is deleted from the registry. Each entry is
|
|
721
|
+
an identifier for the responsible component that will remove the entry from
|
|
722
|
+
the list. If the deletionTimestamp of the object is non-nil, entries in
|
|
723
|
+
this list can only be removed. Finalizers may be processed and removed in
|
|
724
|
+
any order. Order is NOT enforced because it introduces significant risk of
|
|
725
|
+
stuck finalizers. finalizers is a shared field, any actor with permission
|
|
726
|
+
can reorder it. If the finalizer list is processed in order, then this can
|
|
727
|
+
lead to a situation in which the component responsible for the first
|
|
728
|
+
finalizer in the list is waiting for a signal (field value, external
|
|
729
|
+
system, or other) produced by a component responsible for a finalizer later
|
|
730
|
+
in the list, resulting in a deadlock. Without enforced ordering finalizers
|
|
731
|
+
are free to order amongst themselves and are not vulnerable to ordering
|
|
732
|
+
changes in the list.
|
|
733
|
+
|
|
734
|
+
> https://kubernetes.io/docs/concepts/overview/working-with-objects/finalizers/
|
|
735
|
+
|
|
736
|
+
---
|
|
737
|
+
|
|
738
|
+
##### `labels`<sup>Optional</sup> <a name="cdk8s.ApiObjectMetadataDefinitionOptions.property.labels"></a>
|
|
739
|
+
|
|
740
|
+
```typescript
|
|
741
|
+
public readonly labels: {[ key: string ]: string};
|
|
742
|
+
```
|
|
743
|
+
|
|
744
|
+
- *Type:* {[ key: string ]: `string`}
|
|
745
|
+
- *Default:* No labels.
|
|
746
|
+
|
|
747
|
+
Map of string keys and values that can be used to organize and categorize (scope and select) objects.
|
|
748
|
+
|
|
749
|
+
May match selectors of replication controllers and services.
|
|
750
|
+
|
|
751
|
+
> http://kubernetes.io/docs/user-guide/labels
|
|
752
|
+
|
|
753
|
+
---
|
|
754
|
+
|
|
755
|
+
##### `name`<sup>Optional</sup> <a name="cdk8s.ApiObjectMetadataDefinitionOptions.property.name"></a>
|
|
756
|
+
|
|
757
|
+
```typescript
|
|
758
|
+
public readonly name: string;
|
|
759
|
+
```
|
|
760
|
+
|
|
761
|
+
- *Type:* `string`
|
|
762
|
+
- *Default:* an app-unique name generated by the chart
|
|
763
|
+
|
|
764
|
+
The unique, namespace-global, name of this object inside the Kubernetes cluster.
|
|
765
|
+
|
|
766
|
+
Normally, you shouldn't specify names for objects and let the CDK generate
|
|
767
|
+
a name for you that is application-unique. The names CDK generates are
|
|
768
|
+
composed from the construct path components, separated by dots and a suffix
|
|
769
|
+
that is based on a hash of the entire path, to ensure uniqueness.
|
|
770
|
+
|
|
771
|
+
You can supply custom name allocation logic by overriding the
|
|
772
|
+
`chart.generateObjectName` method.
|
|
773
|
+
|
|
774
|
+
If you use an explicit name here, bear in mind that this reduces the
|
|
775
|
+
composability of your construct because it won't be possible to include
|
|
776
|
+
more than one instance in any app. Therefore it is highly recommended to
|
|
777
|
+
leave this unspecified.
|
|
778
|
+
|
|
779
|
+
---
|
|
780
|
+
|
|
781
|
+
##### `namespace`<sup>Optional</sup> <a name="cdk8s.ApiObjectMetadataDefinitionOptions.property.namespace"></a>
|
|
782
|
+
|
|
783
|
+
```typescript
|
|
784
|
+
public readonly namespace: string;
|
|
785
|
+
```
|
|
786
|
+
|
|
787
|
+
- *Type:* `string`
|
|
788
|
+
- *Default:* undefined (will be assigned to the 'default' namespace)
|
|
789
|
+
|
|
790
|
+
Namespace defines the space within each name must be unique.
|
|
791
|
+
|
|
792
|
+
An empty namespace is equivalent to the "default" namespace, but "default" is the canonical representation.
|
|
793
|
+
Not all objects are required to be scoped to a namespace - the value of this field for those objects will be empty. Must be a DNS_LABEL. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/namespaces
|
|
794
|
+
|
|
795
|
+
---
|
|
796
|
+
|
|
797
|
+
##### `ownerReferences`<sup>Optional</sup> <a name="cdk8s.ApiObjectMetadataDefinitionOptions.property.ownerReferences"></a>
|
|
798
|
+
|
|
799
|
+
```typescript
|
|
800
|
+
public readonly ownerReferences: OwnerReference[];
|
|
801
|
+
```
|
|
802
|
+
|
|
803
|
+
- *Type:* [`cdk8s.OwnerReference`](#cdk8s.OwnerReference)[]
|
|
804
|
+
- *Default:* automatically set by Kubernetes
|
|
805
|
+
|
|
806
|
+
List of objects depended by this object.
|
|
807
|
+
|
|
808
|
+
If ALL objects in the list have
|
|
809
|
+
been deleted, this object will be garbage collected. If this object is
|
|
810
|
+
managed by a controller, then an entry in this list will point to this
|
|
811
|
+
controller, with the controller field set to true. There cannot be more
|
|
812
|
+
than one managing controller.
|
|
813
|
+
|
|
814
|
+
Kubernetes sets the value of this field automatically for objects that are
|
|
815
|
+
dependents of other objects like ReplicaSets, DaemonSets, Deployments, Jobs
|
|
816
|
+
and CronJobs, and ReplicationControllers. You can also configure these
|
|
817
|
+
relationships manually by changing the value of this field. However, you
|
|
818
|
+
usually don't need to and can allow Kubernetes to automatically manage the
|
|
819
|
+
relationships.
|
|
820
|
+
|
|
821
|
+
> https://kubernetes.io/docs/concepts/overview/working-with-objects/owners-dependents/
|
|
822
|
+
|
|
823
|
+
---
|
|
824
|
+
|
|
825
|
+
##### `apiObject`<sup>Required</sup> <a name="cdk8s.ApiObjectMetadataDefinitionOptions.property.apiObject"></a>
|
|
826
|
+
|
|
827
|
+
```typescript
|
|
828
|
+
public readonly apiObject: ApiObject;
|
|
829
|
+
```
|
|
830
|
+
|
|
831
|
+
- *Type:* [`cdk8s.ApiObject`](#cdk8s.ApiObject)
|
|
832
|
+
|
|
833
|
+
Which ApiObject instance is the metadata attached to.
|
|
834
|
+
|
|
835
|
+
---
|
|
836
|
+
|
|
649
837
|
### ApiObjectProps <a name="cdk8s.ApiObjectProps"></a>
|
|
650
838
|
|
|
651
839
|
Options for defining API objects.
|
|
@@ -754,6 +942,25 @@ When set to true, the output directory will contain a `construct-metadata.json`
|
|
|
754
942
|
|
|
755
943
|
---
|
|
756
944
|
|
|
945
|
+
##### `resolvers`<sup>Optional</sup> <a name="cdk8s.AppProps.property.resolvers"></a>
|
|
946
|
+
|
|
947
|
+
```typescript
|
|
948
|
+
public readonly resolvers: IResolver[];
|
|
949
|
+
```
|
|
950
|
+
|
|
951
|
+
- *Type:* [`cdk8s.IResolver`](#cdk8s.IResolver)[]
|
|
952
|
+
- *Default:* no resolvers.
|
|
953
|
+
|
|
954
|
+
A list of resolvers that can be used to replace property values before they are written to the manifest file.
|
|
955
|
+
|
|
956
|
+
When multiple resolvers are passed,
|
|
957
|
+
they are invoked by order in the list, and only the first one that applies
|
|
958
|
+
(e.g calls `context.replaceValue`) is invoked.
|
|
959
|
+
|
|
960
|
+
> https://cdk8s.io/docs/latest/basics/app/#resolvers
|
|
961
|
+
|
|
962
|
+
---
|
|
963
|
+
|
|
757
964
|
##### `yamlOutputType`<sup>Optional</sup> <a name="cdk8s.AppProps.property.yamlOutputType"></a>
|
|
758
965
|
|
|
759
966
|
```typescript
|
|
@@ -1303,12 +1510,12 @@ Object metadata.
|
|
|
1303
1510
|
```typescript
|
|
1304
1511
|
import { ApiObjectMetadataDefinition } from 'cdk8s'
|
|
1305
1512
|
|
|
1306
|
-
new ApiObjectMetadataDefinition(options
|
|
1513
|
+
new ApiObjectMetadataDefinition(options: ApiObjectMetadataDefinitionOptions)
|
|
1307
1514
|
```
|
|
1308
1515
|
|
|
1309
|
-
##### `options`<sup>
|
|
1516
|
+
##### `options`<sup>Required</sup> <a name="cdk8s.ApiObjectMetadataDefinition.parameter.options"></a>
|
|
1310
1517
|
|
|
1311
|
-
- *Type:* [`cdk8s.
|
|
1518
|
+
- *Type:* [`cdk8s.ApiObjectMetadataDefinitionOptions`](#cdk8s.ApiObjectMetadataDefinitionOptions)
|
|
1312
1519
|
|
|
1313
1520
|
---
|
|
1314
1521
|
|
|
@@ -1884,6 +2091,37 @@ the amount of Seconds the `Duration` will represent.
|
|
|
1884
2091
|
|
|
1885
2092
|
|
|
1886
2093
|
|
|
2094
|
+
### ImplicitTokenResolver <a name="cdk8s.ImplicitTokenResolver"></a>
|
|
2095
|
+
|
|
2096
|
+
- *Implements:* [`cdk8s.IResolver`](#cdk8s.IResolver)
|
|
2097
|
+
|
|
2098
|
+
Resolves implicit tokens.
|
|
2099
|
+
|
|
2100
|
+
#### Initializers <a name="cdk8s.ImplicitTokenResolver.Initializer"></a>
|
|
2101
|
+
|
|
2102
|
+
```typescript
|
|
2103
|
+
import { ImplicitTokenResolver } from 'cdk8s'
|
|
2104
|
+
|
|
2105
|
+
new ImplicitTokenResolver()
|
|
2106
|
+
```
|
|
2107
|
+
|
|
2108
|
+
#### Methods <a name="Methods"></a>
|
|
2109
|
+
|
|
2110
|
+
##### `resolve` <a name="cdk8s.ImplicitTokenResolver.resolve"></a>
|
|
2111
|
+
|
|
2112
|
+
```typescript
|
|
2113
|
+
public resolve(context: ResolutionContext)
|
|
2114
|
+
```
|
|
2115
|
+
|
|
2116
|
+
###### `context`<sup>Required</sup> <a name="cdk8s.ImplicitTokenResolver.parameter.context"></a>
|
|
2117
|
+
|
|
2118
|
+
- *Type:* [`cdk8s.ResolutionContext`](#cdk8s.ResolutionContext)
|
|
2119
|
+
|
|
2120
|
+
---
|
|
2121
|
+
|
|
2122
|
+
|
|
2123
|
+
|
|
2124
|
+
|
|
1887
2125
|
### JsonPatch <a name="cdk8s.JsonPatch"></a>
|
|
1888
2126
|
|
|
1889
2127
|
Utility for applying RFC-6902 JSON-Patch to a document.
|
|
@@ -2065,6 +2303,37 @@ Lazy.any(producer: IAnyProducer)
|
|
|
2065
2303
|
|
|
2066
2304
|
|
|
2067
2305
|
|
|
2306
|
+
### LazyResolver <a name="cdk8s.LazyResolver"></a>
|
|
2307
|
+
|
|
2308
|
+
- *Implements:* [`cdk8s.IResolver`](#cdk8s.IResolver)
|
|
2309
|
+
|
|
2310
|
+
Resolvers instanecs of `Lazy`.
|
|
2311
|
+
|
|
2312
|
+
#### Initializers <a name="cdk8s.LazyResolver.Initializer"></a>
|
|
2313
|
+
|
|
2314
|
+
```typescript
|
|
2315
|
+
import { LazyResolver } from 'cdk8s'
|
|
2316
|
+
|
|
2317
|
+
new LazyResolver()
|
|
2318
|
+
```
|
|
2319
|
+
|
|
2320
|
+
#### Methods <a name="Methods"></a>
|
|
2321
|
+
|
|
2322
|
+
##### `resolve` <a name="cdk8s.LazyResolver.resolve"></a>
|
|
2323
|
+
|
|
2324
|
+
```typescript
|
|
2325
|
+
public resolve(context: ResolutionContext)
|
|
2326
|
+
```
|
|
2327
|
+
|
|
2328
|
+
###### `context`<sup>Required</sup> <a name="cdk8s.LazyResolver.parameter.context"></a>
|
|
2329
|
+
|
|
2330
|
+
- *Type:* [`cdk8s.ResolutionContext`](#cdk8s.ResolutionContext)
|
|
2331
|
+
|
|
2332
|
+
---
|
|
2333
|
+
|
|
2334
|
+
|
|
2335
|
+
|
|
2336
|
+
|
|
2068
2337
|
### Names <a name="cdk8s.Names"></a>
|
|
2069
2338
|
|
|
2070
2339
|
Utilities for generating unique and stable names.
|
|
@@ -2122,6 +2391,120 @@ Name options.
|
|
|
2122
2391
|
|
|
2123
2392
|
|
|
2124
2393
|
|
|
2394
|
+
### ResolutionContext <a name="cdk8s.ResolutionContext"></a>
|
|
2395
|
+
|
|
2396
|
+
Context object for a specific resolution process.
|
|
2397
|
+
|
|
2398
|
+
#### Initializers <a name="cdk8s.ResolutionContext.Initializer"></a>
|
|
2399
|
+
|
|
2400
|
+
```typescript
|
|
2401
|
+
import { ResolutionContext } from 'cdk8s'
|
|
2402
|
+
|
|
2403
|
+
new ResolutionContext(obj: ApiObject, key: string[], value: any)
|
|
2404
|
+
```
|
|
2405
|
+
|
|
2406
|
+
##### `obj`<sup>Required</sup> <a name="cdk8s.ResolutionContext.parameter.obj"></a>
|
|
2407
|
+
|
|
2408
|
+
- *Type:* [`cdk8s.ApiObject`](#cdk8s.ApiObject)
|
|
2409
|
+
|
|
2410
|
+
Which ApiObject is currently being resolved.
|
|
2411
|
+
|
|
2412
|
+
---
|
|
2413
|
+
|
|
2414
|
+
##### `key`<sup>Required</sup> <a name="cdk8s.ResolutionContext.parameter.key"></a>
|
|
2415
|
+
|
|
2416
|
+
- *Type:* `string`[]
|
|
2417
|
+
|
|
2418
|
+
Which key is currently being resolved.
|
|
2419
|
+
|
|
2420
|
+
---
|
|
2421
|
+
|
|
2422
|
+
##### `value`<sup>Required</sup> <a name="cdk8s.ResolutionContext.parameter.value"></a>
|
|
2423
|
+
|
|
2424
|
+
- *Type:* `any`
|
|
2425
|
+
|
|
2426
|
+
The value associated to the key currently being resolved.
|
|
2427
|
+
|
|
2428
|
+
---
|
|
2429
|
+
|
|
2430
|
+
#### Methods <a name="Methods"></a>
|
|
2431
|
+
|
|
2432
|
+
##### `replaceValue` <a name="cdk8s.ResolutionContext.replaceValue"></a>
|
|
2433
|
+
|
|
2434
|
+
```typescript
|
|
2435
|
+
public replaceValue(newValue: any)
|
|
2436
|
+
```
|
|
2437
|
+
|
|
2438
|
+
###### `newValue`<sup>Required</sup> <a name="cdk8s.ResolutionContext.parameter.newValue"></a>
|
|
2439
|
+
|
|
2440
|
+
- *Type:* `any`
|
|
2441
|
+
|
|
2442
|
+
---
|
|
2443
|
+
|
|
2444
|
+
|
|
2445
|
+
#### Properties <a name="Properties"></a>
|
|
2446
|
+
|
|
2447
|
+
##### `key`<sup>Required</sup> <a name="cdk8s.ResolutionContext.property.key"></a>
|
|
2448
|
+
|
|
2449
|
+
```typescript
|
|
2450
|
+
public readonly key: string[];
|
|
2451
|
+
```
|
|
2452
|
+
|
|
2453
|
+
- *Type:* `string`[]
|
|
2454
|
+
|
|
2455
|
+
Which key is currently being resolved.
|
|
2456
|
+
|
|
2457
|
+
---
|
|
2458
|
+
|
|
2459
|
+
##### `obj`<sup>Required</sup> <a name="cdk8s.ResolutionContext.property.obj"></a>
|
|
2460
|
+
|
|
2461
|
+
```typescript
|
|
2462
|
+
public readonly obj: ApiObject;
|
|
2463
|
+
```
|
|
2464
|
+
|
|
2465
|
+
- *Type:* [`cdk8s.ApiObject`](#cdk8s.ApiObject)
|
|
2466
|
+
|
|
2467
|
+
Which ApiObject is currently being resolved.
|
|
2468
|
+
|
|
2469
|
+
---
|
|
2470
|
+
|
|
2471
|
+
##### `value`<sup>Required</sup> <a name="cdk8s.ResolutionContext.property.value"></a>
|
|
2472
|
+
|
|
2473
|
+
```typescript
|
|
2474
|
+
public readonly value: any;
|
|
2475
|
+
```
|
|
2476
|
+
|
|
2477
|
+
- *Type:* `any`
|
|
2478
|
+
|
|
2479
|
+
The value associated to the key currently being resolved.
|
|
2480
|
+
|
|
2481
|
+
---
|
|
2482
|
+
|
|
2483
|
+
##### `replaced`<sup>Required</sup> <a name="cdk8s.ResolutionContext.property.replaced"></a>
|
|
2484
|
+
|
|
2485
|
+
```typescript
|
|
2486
|
+
public readonly replaced: boolean;
|
|
2487
|
+
```
|
|
2488
|
+
|
|
2489
|
+
- *Type:* `boolean`
|
|
2490
|
+
|
|
2491
|
+
Whether or not the value was replaced by invoking the `replaceValue` method.
|
|
2492
|
+
|
|
2493
|
+
---
|
|
2494
|
+
|
|
2495
|
+
##### `replacedValue`<sup>Required</sup> <a name="cdk8s.ResolutionContext.property.replacedValue"></a>
|
|
2496
|
+
|
|
2497
|
+
```typescript
|
|
2498
|
+
public readonly replacedValue: any;
|
|
2499
|
+
```
|
|
2500
|
+
|
|
2501
|
+
- *Type:* `any`
|
|
2502
|
+
|
|
2503
|
+
The replaced value that was set via the `replaceValue` method.
|
|
2504
|
+
|
|
2505
|
+
---
|
|
2506
|
+
|
|
2507
|
+
|
|
2125
2508
|
### Size <a name="cdk8s.Size"></a>
|
|
2126
2509
|
|
|
2127
2510
|
Represents the amount of digital storage.
|
|
@@ -2422,6 +2805,27 @@ public produce()
|
|
|
2422
2805
|
```
|
|
2423
2806
|
|
|
2424
2807
|
|
|
2808
|
+
### IResolver <a name="cdk8s.IResolver"></a>
|
|
2809
|
+
|
|
2810
|
+
- *Implemented By:* [`cdk8s.ImplicitTokenResolver`](#cdk8s.ImplicitTokenResolver), [`cdk8s.LazyResolver`](#cdk8s.LazyResolver), [`cdk8s.IResolver`](#cdk8s.IResolver)
|
|
2811
|
+
|
|
2812
|
+
Contract for resolver objects.
|
|
2813
|
+
|
|
2814
|
+
#### Methods <a name="Methods"></a>
|
|
2815
|
+
|
|
2816
|
+
##### `resolve` <a name="cdk8s.IResolver.resolve"></a>
|
|
2817
|
+
|
|
2818
|
+
```typescript
|
|
2819
|
+
public resolve(context: ResolutionContext)
|
|
2820
|
+
```
|
|
2821
|
+
|
|
2822
|
+
###### `context`<sup>Required</sup> <a name="cdk8s.IResolver.parameter.context"></a>
|
|
2823
|
+
|
|
2824
|
+
- *Type:* [`cdk8s.ResolutionContext`](#cdk8s.ResolutionContext)
|
|
2825
|
+
|
|
2826
|
+
---
|
|
2827
|
+
|
|
2828
|
+
|
|
2425
2829
|
## Enums <a name="Enums"></a>
|
|
2426
2830
|
|
|
2427
2831
|
### SizeRoundingBehavior <a name="SizeRoundingBehavior"></a>
|
package/lib/api-object.js
CHANGED
|
@@ -4,11 +4,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
4
4
|
exports.ApiObject = void 0;
|
|
5
5
|
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
6
6
|
const constructs_1 = require("constructs");
|
|
7
|
-
const _resolve_1 = require("./_resolve");
|
|
8
7
|
const _util_1 = require("./_util");
|
|
9
8
|
const chart_1 = require("./chart");
|
|
10
9
|
const json_patch_1 = require("./json-patch");
|
|
11
10
|
const metadata_1 = require("./metadata");
|
|
11
|
+
const resolve_1 = require("./resolve");
|
|
12
12
|
const API_OBJECT_SYMBOL = Symbol.for('cdk8s.ApiObject');
|
|
13
13
|
class ApiObject extends constructs_1.Construct {
|
|
14
14
|
/**
|
|
@@ -73,6 +73,7 @@ class ApiObject extends constructs_1.Construct {
|
|
|
73
73
|
...this.chart.labels,
|
|
74
74
|
...props.metadata?.labels,
|
|
75
75
|
},
|
|
76
|
+
apiObject: this,
|
|
76
77
|
});
|
|
77
78
|
Object.defineProperty(this, API_OBJECT_SYMBOL, { value: true });
|
|
78
79
|
}
|
|
@@ -111,7 +112,7 @@ class ApiObject extends constructs_1.Construct {
|
|
|
111
112
|
metadata: this.metadata.toJson(),
|
|
112
113
|
};
|
|
113
114
|
const sortKeys = process.env.CDK8S_DISABLE_SORT ? false : true;
|
|
114
|
-
const json = (0, _util_1.sanitizeValue)((0,
|
|
115
|
+
const json = (0, _util_1.sanitizeValue)((0, resolve_1.resolve)([], data, this), { sortKeys });
|
|
115
116
|
const patched = json_patch_1.JsonPatch.apply(json, ...this.patches);
|
|
116
117
|
// reorder top-level keys so that we first have "apiVersion", "kind" and
|
|
117
118
|
// "metadata" and then all the rest
|
|
@@ -126,7 +127,7 @@ class ApiObject extends constructs_1.Construct {
|
|
|
126
127
|
}
|
|
127
128
|
}
|
|
128
129
|
exports.ApiObject = ApiObject;
|
|
129
|
-
ApiObject[_a] = { fqn: "cdk8s.ApiObject", version: "2.
|
|
130
|
+
ApiObject[_a] = { fqn: "cdk8s.ApiObject", version: "2.65.1" };
|
|
130
131
|
function parseApiGroup(apiVersion) {
|
|
131
132
|
const v = apiVersion.split('/');
|
|
132
133
|
// no group means "core"
|
|
@@ -139,4 +140,4 @@ function parseApiGroup(apiVersion) {
|
|
|
139
140
|
}
|
|
140
141
|
throw new Error(`invalid apiVersion ${apiVersion}, expecting GROUP/VERSION. See https://kubernetes.io/docs/reference/using-api/api-overview/#api-groups`);
|
|
141
142
|
}
|
|
142
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLW9iamVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9hcGktb2JqZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsMkNBQW1EO0FBQ25ELHlDQUFxQztBQUNyQyxtQ0FBd0M7QUFDeEMsbUNBQWdDO0FBQ2hDLDZDQUF5QztBQUN6Qyx5Q0FBNEU7QUE0QzVFLE1BQU0saUJBQWlCLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0FBRXhELE1BQWEsU0FBVSxTQUFRLHNCQUFTO0lBRXRDOzs7Ozs7T0FNRztJQUNILE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBTTtRQUN2QixPQUFPLENBQUMsS0FBSyxJQUFJLElBQUksT0FBTyxDQUFDLEtBQUssUUFBUSxJQUFJLGlCQUFpQixJQUFJLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxNQUFNLENBQUMsMkJBQUMsTUFBTSxDQUFDLFdBQVcsRUFBQyxDQUFDLENBQVU7UUFDcEMsT0FBTyxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFDRDs7Ozs7OztPQU9HO0lBQ0ksTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFhO1FBQzVCLElBQUksQ0FBQyxZQUFZLFNBQVMsRUFBRTtZQUMxQixPQUFPLENBQUMsQ0FBQztTQUNWO1FBRUQsTUFBTSxLQUFLLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUM7UUFDbEMsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNWLE1BQU0sSUFBSSxLQUFLLENBQUMsNEVBQTRFLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztTQUM1RztRQUVELE9BQU8sU0FBUyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBMENEOzs7Ozs7T0FNRztJQUNILFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQW1CLEtB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Q3ZDLE1BQU0sQ0FBQyxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7SUFFaEMsd0JBQXdCO0lBQ3hCLDBFQUEwRTtJQUMxRSxJQUFJLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1FBQ2xCLE9BQU8sTUFBTSxDQUFDO0tBQ2Y7SUFFRCxJQUFJLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1FBQ2xCLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQ2I7SUFFRCxNQUFNLElBQUksS0FBSyxDQUFDLHNCQUFzQixVQUFVLHdHQUF3RyxDQUFDLENBQUM7QUFDNUosQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnN0cnVjdCwgSUNvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgcmVzb2x2ZSB9IGZyb20gJy4vX3Jlc29sdmUnO1xuaW1wb3J0IHsgc2FuaXRpemVWYWx1ZSB9IGZyb20gJy4vX3V0aWwnO1xuaW1wb3J0IHsgQ2hhcnQgfSBmcm9tICcuL2NoYXJ0JztcbmltcG9ydCB7IEpzb25QYXRjaCB9IGZyb20gJy4vanNvbi1wYXRjaCc7XG5pbXBvcnQgeyBBcGlPYmplY3RNZXRhZGF0YSwgQXBpT2JqZWN0TWV0YWRhdGFEZWZpbml0aW9uIH0gZnJvbSAnLi9tZXRhZGF0YSc7XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgZGVmaW5pbmcgQVBJIG9iamVjdHMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXBpT2JqZWN0UHJvcHMge1xuICAvKipcbiAgICogT2JqZWN0IG1ldGFkYXRhLlxuICAgKlxuICAgKiBJZiBgbmFtZWAgaXMgbm90IHNwZWNpZmllZCwgYW4gYXBwLXVuaXF1ZSBuYW1lIHdpbGwgYmUgYWxsb2NhdGVkIGJ5IHRoZVxuICAgKiBmcmFtZXdvcmsgYmFzZWQgb24gdGhlIHBhdGggb2YgdGhlIGNvbnN0cnVjdCB3aXRoaW4gdGhlcyBjb25zdHJ1Y3QgdHJlZS5cbiAgICovXG4gIHJlYWRvbmx5IG1ldGFkYXRhPzogQXBpT2JqZWN0TWV0YWRhdGE7XG5cbiAgLyoqXG4gICAqIEFQSSB2ZXJzaW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgYXBpVmVyc2lvbjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBSZXNvdXJjZSBraW5kLlxuICAgKi9cbiAgcmVhZG9ubHkga2luZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBZGRpdGlvbmFsIGF0dHJpYnV0ZXMgZm9yIHRoaXMgQVBJIG9iamVjdC5cbiAgICogQGpzaWkgaWdub3JlXG4gICAqIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL2NkazhzLXRlYW0vY2RrOHMtY29yZS9pc3N1ZXMvMTI5N1xuICAgKi9cbiAgcmVhZG9ubHkgW2tleTogc3RyaW5nXTogYW55O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEdyb3VwVmVyc2lvbktpbmQge1xuICAvKipcbiAgICogVGhlIG9iamVjdCdzIEFQSSB2ZXJzaW9uIChlLmcuIGBhdXRob3JpemF0aW9uLms4cy5pby92MWApXG4gICAqL1xuICByZWFkb25seSBhcGlWZXJzaW9uOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBvYmplY3Qga2luZC5cbiAgICovXG4gIHJlYWRvbmx5IGtpbmQ6IHN0cmluZztcbn1cblxuY29uc3QgQVBJX09CSkVDVF9TWU1CT0wgPSBTeW1ib2wuZm9yKCdjZGs4cy5BcGlPYmplY3QnKTtcblxuZXhwb3J0IGNsYXNzIEFwaU9iamVjdCBleHRlbmRzIENvbnN0cnVjdCB7XG5cbiAgLyoqXG4gICAqIFJldHVybiB3aGV0aGVyIHRoZSBnaXZlbiBvYmplY3QgaXMgYW4gYEFwaU9iamVjdGAuXG4gICAqXG4gICAqIFdlIGRvIGF0dHJpYnV0ZSBkZXRlY3Rpb24gc2luY2Ugd2UgY2FuJ3QgcmVsaWFibHkgdXNlICdpbnN0YW5jZW9mJy5cblxuICAgKiBAcGFyYW0gbyBUaGUgb2JqZWN0IHRvIGNoZWNrXG4gICAqL1xuICBzdGF0aWMgaXNBcGlPYmplY3QobzogYW55KTogbyBpcyBBcGlPYmplY3Qge1xuICAgIHJldHVybiBvICE9PSBudWxsICYmIHR5cGVvZiBvID09PSAnb2JqZWN0JyAmJiBBUElfT0JKRUNUX1NZTUJPTCBpbiBvO1xuICB9XG5cbiAgLyoqXG4gICAqIEltcGxlbWVudHMgYGluc3RhbmNlb2YgQXBpT2JqZWN0YCB1c2luZyB0aGUgbW9yZSByZWxpYWJsZSBgQXBpT2JqZWN0LmlzQXBpT2JqZWN0YCBzdGF0aWMgbWV0aG9kXG4gICAqXG4gICAqIEBwYXJhbSBvIFRoZSBvYmplY3QgdG8gY2hlY2tcbiAgICogQGludGVybmFsXG4gICAqL1xuICBzdGF0aWMgW1N5bWJvbC5oYXNJbnN0YW5jZV0obzogdW5rbm93bikge1xuICAgIHJldHVybiBBcGlPYmplY3QuaXNBcGlPYmplY3Qobyk7XG4gIH1cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGBBcGlPYmplY3RgIG5hbWVkIGBSZXNvdXJjZWAgd2hpY2ggaXMgYSBjaGlsZCBvZiB0aGUgZ2l2ZW5cbiAgICogY29uc3RydWN0LiBJZiBgY2AgaXMgYW4gYEFwaU9iamVjdGAsIGl0IGlzIHJldHVybmVkIGRpcmVjdGx5LiBUaHJvd3MgYW5cbiAgICogZXhjZXB0aW9uIGlmIHRoZSBjb25zdHJ1Y3QgZG9lcyBub3QgaGF2ZSBhIGNoaWxkIG5hbWVkIGBEZWZhdWx0YCBfb3JfIGlmXG4gICAqIHRoaXMgY2hpbGQgaXMgbm90IGFuIGBBcGlPYmplY3RgLlxuICAgKlxuICAgKiBAcGFyYW0gYyBUaGUgaGlnaGVyLWxldmVsIGNvbnN0cnVjdFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBvZihjOiBJQ29uc3RydWN0KTogQXBpT2JqZWN0IHtcbiAgICBpZiAoYyBpbnN0YW5jZW9mIEFwaU9iamVjdCkge1xuICAgICAgcmV0dXJuIGM7XG4gICAgfVxuXG4gICAgY29uc3QgY2hpbGQgPSBjLm5vZGUuZGVmYXVsdENoaWxkO1xuICAgIGlmICghY2hpbGQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgY2Fubm90IGZpbmQgYSAoZGlyZWN0IG9yIGluZGlyZWN0KSBjaGlsZCBvZiB0eXBlIEFwaU9iamVjdCBmb3IgY29uc3RydWN0ICR7Yy5ub2RlLnBhdGh9YCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIEFwaU9iamVjdC5vZihjaGlsZCk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIEFQSSBvYmplY3QuXG4gICAqXG4gICAqIElmIGEgbmFtZSBpcyBzcGVjaWZpZWQgaW4gYG1ldGFkYXRhLm5hbWVgIHRoaXMgd2lsbCBiZSB0aGUgbmFtZSByZXR1cm5lZC5cbiAgICogT3RoZXJ3aXNlLCBhIG5hbWUgd2lsbCBiZSBnZW5lcmF0ZWQgYnkgY2FsbGluZ1xuICAgKiBgQ2hhcnQub2YodGhpcykuZ2VuZXJhdGVkT2JqZWN0TmFtZSh0aGlzKWAsIHdoaWNoIGJ5IGRlZmF1bHQgdXNlcyB0aGVcbiAgICogY29uc3RydWN0IHBhdGggdG8gZ2VuZXJhdGUgYSBETlMtY29tcGF0aWJsZSBuYW1lIGZvciB0aGUgcmVzb3VyY2UuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgb2JqZWN0J3MgQVBJIHZlcnNpb24gKGUuZy4gYGF1dGhvcml6YXRpb24uazhzLmlvL3YxYClcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhcGlWZXJzaW9uOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBncm91cCBwb3J0aW9uIG9mIHRoZSBBUEkgdmVyc2lvbiAoZS5nLiBgYXV0aG9yaXphdGlvbi5rOHMuaW9gKVxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGFwaUdyb3VwOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBvYmplY3Qga2luZC5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBraW5kOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBjaGFydCBpbiB3aGljaCB0aGlzIG9iamVjdCBpcyBkZWZpbmVkLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGNoYXJ0OiBDaGFydDtcblxuICAvKipcbiAgICogTWV0YWRhdGEgYXNzb2NpYXRlZCB3aXRoIHRoaXMgQVBJIG9iamVjdC5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBtZXRhZGF0YTogQXBpT2JqZWN0TWV0YWRhdGFEZWZpbml0aW9uO1xuXG4gIC8qKlxuICAgKiBBIHNldCBvZiBKU09OIHBhdGNoIG9wZXJhdGlvbnMgdG8gYXBwbHkgdG8gdGhlIGRvY3VtZW50IGFmdGVyIHN5bnRoZXNpcy5cbiAgICovXG4gIHByaXZhdGUgcmVhZG9ubHkgcGF0Y2hlczogQXJyYXk8SnNvblBhdGNoPjtcblxuICAvKipcbiAgICogRGVmaW5lcyBhbiBBUEkgb2JqZWN0LlxuICAgKlxuICAgKiBAcGFyYW0gc2NvcGUgdGhlIGNvbnN0cnVjdCBzY29wZVxuICAgKiBAcGFyYW0gaWQgbmFtZXNwYWNlXG4gICAqIEBwYXJhbSBwcm9wcyBvcHRpb25zXG4gICAqL1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcml2YXRlIHJlYWRvbmx5IHByb3BzOiBBcGlPYmplY3RQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG4gICAgdGhpcy5wYXRjaGVzID0gbmV3IEFycmF5PEpzb25QYXRjaD4oKTtcbiAgICB0aGlzLmNoYXJ0ID0gQ2hhcnQub2YodGhpcyk7XG4gICAgdGhpcy5raW5kID0gcHJvcHMua2luZDtcbiAgICB0aGlzLmFwaVZlcnNpb24gPSBwcm9wcy5hcGlWZXJzaW9uO1xuICAgIHRoaXMuYXBpR3JvdXAgPSBwYXJzZUFwaUdyb3VwKHRoaXMuYXBpVmVyc2lvbik7XG5cbiAgICB0aGlzLm5hbWUgPSBwcm9wcy5tZXRhZGF0YT8ubmFtZSA/PyB0aGlzLmNoYXJ0LmdlbmVyYXRlT2JqZWN0TmFtZSh0aGlzKTtcblxuICAgIHRoaXMubWV0YWRhdGEgPSBuZXcgQXBpT2JqZWN0TWV0YWRhdGFEZWZpbml0aW9uKHtcbiAgICAgIG5hbWU6IHRoaXMubmFtZSxcblxuICAgICAgLy8gdXNlciBkZWZpbmVkIHZhbHVlc1xuICAgICAgLi4ucHJvcHMubWV0YWRhdGEsXG5cbiAgICAgIG5hbWVzcGFjZTogcHJvcHMubWV0YWRhdGE/Lm5hbWVzcGFjZSA/PyB0aGlzLmNoYXJ0Lm5hbWVzcGFjZSxcbiAgICAgIGxhYmVsczoge1xuICAgICAgICAuLi50aGlzLmNoYXJ0LmxhYmVscyxcbiAgICAgICAgLi4ucHJvcHMubWV0YWRhdGE/LmxhYmVscyxcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgQVBJX09CSkVDVF9TWU1CT0wsIHsgdmFsdWU6IHRydWUgfSk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGEgZGVwZW5kZW5jeSBiZXR3ZWVuIHRoaXMgQXBpT2JqZWN0IGFuZCBvdGhlciBjb25zdHJ1Y3RzLlxuICAgKiBUaGVzZSBjYW4gYmUgb3RoZXIgQXBpT2JqZWN0cywgQ2hhcnRzLCBvciBjdXN0b20uXG4gICAqXG4gICAqIEBwYXJhbSBkZXBlbmRlbmNpZXMgdGhlIGRlcGVuZGVuY2llcyB0byBhZGQuXG4gICAqL1xuICBwdWJsaWMgYWRkRGVwZW5kZW5jeSguLi5kZXBlbmRlbmNpZXM6IElDb25zdHJ1Y3RbXSkge1xuICAgIHRoaXMubm9kZS5hZGREZXBlbmRlbmN5KC4uLmRlcGVuZGVuY2llcyk7XG4gIH1cblxuICAvKipcbiAgICogQXBwbGllcyBhIHNldCBvZiBSRkMtNjkwMiBKU09OLVBhdGNoIG9wZXJhdGlvbnMgdG8gdGhlIG1hbmlmZXN0XG4gICAqIHN5bnRoZXNpemVkIGZvciB0aGlzIEFQSSBvYmplY3QuXG4gICAqXG4gICAqIEBwYXJhbSBvcHMgVGhlIEpTT04tUGF0Y2ggb3BlcmF0aW9ucyB0byBhcHBseS5cbiAgICpcbiAgICogQGV4YW1wbGVcbiAgICpcbiAgICogICBrdWJlUG9kLmFkZEpzb25QYXRjaChKc29uUGF0Y2gucmVwbGFjZSgnL3NwZWMvZW5hYmxlU2VydmljZUxpbmtzJywgdHJ1ZSkpO1xuICAgKlxuICAgKi9cbiAgcHVibGljIGFkZEpzb25QYXRjaCguLi5vcHM6IEpzb25QYXRjaFtdKSB7XG4gICAgdGhpcy5wYXRjaGVzLnB1c2goLi4ub3BzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZW5kZXJzIHRoZSBvYmplY3QgdG8gS3ViZXJuZXRlcyBKU09OLlxuICAgKlxuICAgKiBUbyBkaXNhYmxlIHNvcnRpbmcgb2YgZGljdGlvbmFyeSBrZXlzIGluIG91dHB1dCBvYmplY3Qgc2V0IHRoZVxuICAgKiBgQ0RLOFNfRElTQUJMRV9TT1JUYCBlbnZpcm9ubWVudCB2YXJpYWJsZSB0byBhbnkgbm9uLWVtcHR5IHZhbHVlLlxuICAgKi9cbiAgcHVibGljIHRvSnNvbigpOiBhbnkge1xuICAgIGNvbnN0IGRhdGE6IGFueSA9IHtcbiAgICAgIC4uLnRoaXMucHJvcHMsXG4gICAgICBtZXRhZGF0YTogdGhpcy5tZXRhZGF0YS50b0pzb24oKSxcbiAgICB9O1xuXG4gICAgY29uc3Qgc29ydEtleXMgPSBwcm9jZXNzLmVudi5DREs4U19ESVNBQkxFX1NPUlQgPyBmYWxzZSA6IHRydWU7XG4gICAgY29uc3QganNvbiA9IHNhbml0aXplVmFsdWUocmVzb2x2ZShkYXRhKSwgeyBzb3J0S2V5cyB9KTtcbiAgICBjb25zdCBwYXRjaGVkID0gSnNvblBhdGNoLmFwcGx5KGpzb24sIC4uLnRoaXMucGF0Y2hlcyk7XG5cbiAgICAvLyByZW9yZGVyIHRvcC1sZXZlbCBrZXlzIHNvIHRoYXQgd2UgZmlyc3QgaGF2ZSBcImFwaVZlcnNpb25cIiwgXCJraW5kXCIgYW5kXG4gICAgLy8gXCJtZXRhZGF0YVwiIGFuZCB0aGVuIGFsbCB0aGUgcmVzdFxuICAgIGNvbnN0IHJlc3VsdDogYW55ID0ge307XG4gICAgY29uc3Qgb3JkZXJlZEtleXMgPSBbJ2FwaVZlcnNpb24nLCAna2luZCcsICdtZXRhZGF0YScsIC4uLk9iamVjdC5rZXlzKHBhdGNoZWQpXTtcbiAgICBmb3IgKGNvbnN0IGsgb2Ygb3JkZXJlZEtleXMpIHtcbiAgICAgIGlmIChrIGluIHBhdGNoZWQpIHtcbiAgICAgICAgcmVzdWx0W2tdID0gcGF0Y2hlZFtrXTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG59XG5cbmZ1bmN0aW9uIHBhcnNlQXBpR3JvdXAoYXBpVmVyc2lvbjogc3RyaW5nKSB7XG4gIGNvbnN0IHYgPSBhcGlWZXJzaW9uLnNwbGl0KCcvJyk7XG5cbiAgLy8gbm8gZ3JvdXAgbWVhbnMgXCJjb3JlXCJcbiAgLy8gaHR0cHM6Ly9rdWJlcm5ldGVzLmlvL2RvY3MvcmVmZXJlbmNlL3VzaW5nLWFwaS9hcGktb3ZlcnZpZXcvI2FwaS1ncm91cHNcbiAgaWYgKHYubGVuZ3RoID09PSAxKSB7XG4gICAgcmV0dXJuICdjb3JlJztcbiAgfVxuXG4gIGlmICh2Lmxlbmd0aCA9PT0gMikge1xuICAgIHJldHVybiB2WzBdO1xuICB9XG5cbiAgdGhyb3cgbmV3IEVycm9yKGBpbnZhbGlkIGFwaVZlcnNpb24gJHthcGlWZXJzaW9ufSwgZXhwZWN0aW5nIEdST1VQL1ZFUlNJT04uIFNlZSBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy9yZWZlcmVuY2UvdXNpbmctYXBpL2FwaS1vdmVydmlldy8jYXBpLWdyb3Vwc2ApO1xufVxuIl19
|
|
143
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLW9iamVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9hcGktb2JqZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsMkNBQW1EO0FBQ25ELG1DQUF3QztBQUN4QyxtQ0FBZ0M7QUFDaEMsNkNBQXlDO0FBQ3pDLHlDQUE0RTtBQUM1RSx1Q0FBb0M7QUE0Q3BDLE1BQU0saUJBQWlCLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0FBRXhELE1BQWEsU0FBVSxTQUFRLHNCQUFTO0lBRXRDOzs7Ozs7T0FNRztJQUNILE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBTTtRQUN2QixPQUFPLENBQUMsS0FBSyxJQUFJLElBQUksT0FBTyxDQUFDLEtBQUssUUFBUSxJQUFJLGlCQUFpQixJQUFJLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxNQUFNLENBQUMsMkJBQUMsTUFBTSxDQUFDLFdBQVcsRUFBQyxDQUFDLENBQVU7UUFDcEMsT0FBTyxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFDRDs7Ozs7OztPQU9HO0lBQ0ksTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFhO1FBQzVCLElBQUksQ0FBQyxZQUFZLFNBQVMsRUFBRTtZQUMxQixPQUFPLENBQUMsQ0FBQztTQUNWO1FBRUQsTUFBTSxLQUFLLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUM7UUFDbEMsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNWLE1BQU0sSUFBSSxLQUFLLENBQUMsNEVBQTRFLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztTQUM1RztRQUVELE9BQU8sU0FBUyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBMENEOzs7Ozs7T0FNRztJQUNILFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQW1CLEtB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QXpLSCw4QkEwS0M7O0FBRUQsU0FBUyxhQUFhLENBQUMsVUFBa0I7SUFDdkMsTUFBTSxDQUFDLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUVoQyx3QkFBd0I7SUFDeEIsMEVBQTBFO0lBQzFFLElBQUksQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7UUFDbEIsT0FBTyxNQUFNLENBQUM7S0FDZjtJQUVELElBQUksQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7UUFDbEIsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7S0FDYjtJQUVELE1BQU0sSUFBSSxLQUFLLENBQUMsc0JBQXNCLFVBQVUsd0dBQXdHLENBQUMsQ0FBQztBQUM1SixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29uc3RydWN0LCBJQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQgeyBzYW5pdGl6ZVZhbHVlIH0gZnJvbSAnLi9fdXRpbCc7XG5pbXBvcnQgeyBDaGFydCB9IGZyb20gJy4vY2hhcnQnO1xuaW1wb3J0IHsgSnNvblBhdGNoIH0gZnJvbSAnLi9qc29uLXBhdGNoJztcbmltcG9ydCB7IEFwaU9iamVjdE1ldGFkYXRhLCBBcGlPYmplY3RNZXRhZGF0YURlZmluaXRpb24gfSBmcm9tICcuL21ldGFkYXRhJztcbmltcG9ydCB7IHJlc29sdmUgfSBmcm9tICcuL3Jlc29sdmUnO1xuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGRlZmluaW5nIEFQSSBvYmplY3RzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFwaU9iamVjdFByb3BzIHtcbiAgLyoqXG4gICAqIE9iamVjdCBtZXRhZGF0YS5cbiAgICpcbiAgICogSWYgYG5hbWVgIGlzIG5vdCBzcGVjaWZpZWQsIGFuIGFwcC11bmlxdWUgbmFtZSB3aWxsIGJlIGFsbG9jYXRlZCBieSB0aGVcbiAgICogZnJhbWV3b3JrIGJhc2VkIG9uIHRoZSBwYXRoIG9mIHRoZSBjb25zdHJ1Y3Qgd2l0aGluIHRoZXMgY29uc3RydWN0IHRyZWUuXG4gICAqL1xuICByZWFkb25seSBtZXRhZGF0YT86IEFwaU9iamVjdE1ldGFkYXRhO1xuXG4gIC8qKlxuICAgKiBBUEkgdmVyc2lvbi5cbiAgICovXG4gIHJlYWRvbmx5IGFwaVZlcnNpb246IHN0cmluZztcblxuICAvKipcbiAgICogUmVzb3VyY2Uga2luZC5cbiAgICovXG4gIHJlYWRvbmx5IGtpbmQ6IHN0cmluZztcblxuICAvKipcbiAgICogQWRkaXRpb25hbCBhdHRyaWJ1dGVzIGZvciB0aGlzIEFQSSBvYmplY3QuXG4gICAqIEBqc2lpIGlnbm9yZVxuICAgKiBAc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9jZGs4cy10ZWFtL2NkazhzLWNvcmUvaXNzdWVzLzEyOTdcbiAgICovXG4gIHJlYWRvbmx5IFtrZXk6IHN0cmluZ106IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBHcm91cFZlcnNpb25LaW5kIHtcbiAgLyoqXG4gICAqIFRoZSBvYmplY3QncyBBUEkgdmVyc2lvbiAoZS5nLiBgYXV0aG9yaXphdGlvbi5rOHMuaW8vdjFgKVxuICAgKi9cbiAgcmVhZG9ubHkgYXBpVmVyc2lvbjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgb2JqZWN0IGtpbmQuXG4gICAqL1xuICByZWFkb25seSBraW5kOiBzdHJpbmc7XG59XG5cbmNvbnN0IEFQSV9PQkpFQ1RfU1lNQk9MID0gU3ltYm9sLmZvcignY2RrOHMuQXBpT2JqZWN0Jyk7XG5cbmV4cG9ydCBjbGFzcyBBcGlPYmplY3QgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuXG4gIC8qKlxuICAgKiBSZXR1cm4gd2hldGhlciB0aGUgZ2l2ZW4gb2JqZWN0IGlzIGFuIGBBcGlPYmplY3RgLlxuICAgKlxuICAgKiBXZSBkbyBhdHRyaWJ1dGUgZGV0ZWN0aW9uIHNpbmNlIHdlIGNhbid0IHJlbGlhYmx5IHVzZSAnaW5zdGFuY2VvZicuXG5cbiAgICogQHBhcmFtIG8gVGhlIG9iamVjdCB0byBjaGVja1xuICAgKi9cbiAgc3RhdGljIGlzQXBpT2JqZWN0KG86IGFueSk6IG8gaXMgQXBpT2JqZWN0IHtcbiAgICByZXR1cm4gbyAhPT0gbnVsbCAmJiB0eXBlb2YgbyA9PT0gJ29iamVjdCcgJiYgQVBJX09CSkVDVF9TWU1CT0wgaW4gbztcbiAgfVxuXG4gIC8qKlxuICAgKiBJbXBsZW1lbnRzIGBpbnN0YW5jZW9mIEFwaU9iamVjdGAgdXNpbmcgdGhlIG1vcmUgcmVsaWFibGUgYEFwaU9iamVjdC5pc0FwaU9iamVjdGAgc3RhdGljIG1ldGhvZFxuICAgKlxuICAgKiBAcGFyYW0gbyBUaGUgb2JqZWN0IHRvIGNoZWNrXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgc3RhdGljIFtTeW1ib2wuaGFzSW5zdGFuY2VdKG86IHVua25vd24pIHtcbiAgICByZXR1cm4gQXBpT2JqZWN0LmlzQXBpT2JqZWN0KG8pO1xuICB9XG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBgQXBpT2JqZWN0YCBuYW1lZCBgUmVzb3VyY2VgIHdoaWNoIGlzIGEgY2hpbGQgb2YgdGhlIGdpdmVuXG4gICAqIGNvbnN0cnVjdC4gSWYgYGNgIGlzIGFuIGBBcGlPYmplY3RgLCBpdCBpcyByZXR1cm5lZCBkaXJlY3RseS4gVGhyb3dzIGFuXG4gICAqIGV4Y2VwdGlvbiBpZiB0aGUgY29uc3RydWN0IGRvZXMgbm90IGhhdmUgYSBjaGlsZCBuYW1lZCBgRGVmYXVsdGAgX29yXyBpZlxuICAgKiB0aGlzIGNoaWxkIGlzIG5vdCBhbiBgQXBpT2JqZWN0YC5cbiAgICpcbiAgICogQHBhcmFtIGMgVGhlIGhpZ2hlci1sZXZlbCBjb25zdHJ1Y3RcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgb2YoYzogSUNvbnN0cnVjdCk6IEFwaU9iamVjdCB7XG4gICAgaWYgKGMgaW5zdGFuY2VvZiBBcGlPYmplY3QpIHtcbiAgICAgIHJldHVybiBjO1xuICAgIH1cblxuICAgIGNvbnN0IGNoaWxkID0gYy5ub2RlLmRlZmF1bHRDaGlsZDtcbiAgICBpZiAoIWNoaWxkKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYGNhbm5vdCBmaW5kIGEgKGRpcmVjdCBvciBpbmRpcmVjdCkgY2hpbGQgb2YgdHlwZSBBcGlPYmplY3QgZm9yIGNvbnN0cnVjdCAke2Mubm9kZS5wYXRofWApO1xuICAgIH1cblxuICAgIHJldHVybiBBcGlPYmplY3Qub2YoY2hpbGQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBBUEkgb2JqZWN0LlxuICAgKlxuICAgKiBJZiBhIG5hbWUgaXMgc3BlY2lmaWVkIGluIGBtZXRhZGF0YS5uYW1lYCB0aGlzIHdpbGwgYmUgdGhlIG5hbWUgcmV0dXJuZWQuXG4gICAqIE90aGVyd2lzZSwgYSBuYW1lIHdpbGwgYmUgZ2VuZXJhdGVkIGJ5IGNhbGxpbmdcbiAgICogYENoYXJ0Lm9mKHRoaXMpLmdlbmVyYXRlZE9iamVjdE5hbWUodGhpcylgLCB3aGljaCBieSBkZWZhdWx0IHVzZXMgdGhlXG4gICAqIGNvbnN0cnVjdCBwYXRoIHRvIGdlbmVyYXRlIGEgRE5TLWNvbXBhdGlibGUgbmFtZSBmb3IgdGhlIHJlc291cmNlLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG9iamVjdCdzIEFQSSB2ZXJzaW9uIChlLmcuIGBhdXRob3JpemF0aW9uLms4cy5pby92MWApXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXBpVmVyc2lvbjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgZ3JvdXAgcG9ydGlvbiBvZiB0aGUgQVBJIHZlcnNpb24gKGUuZy4gYGF1dGhvcml6YXRpb24uazhzLmlvYClcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhcGlHcm91cDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgb2JqZWN0IGtpbmQuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkga2luZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgY2hhcnQgaW4gd2hpY2ggdGhpcyBvYmplY3QgaXMgZGVmaW5lZC5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBjaGFydDogQ2hhcnQ7XG5cbiAgLyoqXG4gICAqIE1ldGFkYXRhIGFzc29jaWF0ZWQgd2l0aCB0aGlzIEFQSSBvYmplY3QuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgbWV0YWRhdGE6IEFwaU9iamVjdE1ldGFkYXRhRGVmaW5pdGlvbjtcblxuICAvKipcbiAgICogQSBzZXQgb2YgSlNPTiBwYXRjaCBvcGVyYXRpb25zIHRvIGFwcGx5IHRvIHRoZSBkb2N1bWVudCBhZnRlciBzeW50aGVzaXMuXG4gICAqL1xuICBwcml2YXRlIHJlYWRvbmx5IHBhdGNoZXM6IEFycmF5PEpzb25QYXRjaD47XG5cbiAgLyoqXG4gICAqIERlZmluZXMgYW4gQVBJIG9iamVjdC5cbiAgICpcbiAgICogQHBhcmFtIHNjb3BlIHRoZSBjb25zdHJ1Y3Qgc2NvcGVcbiAgICogQHBhcmFtIGlkIG5hbWVzcGFjZVxuICAgKiBAcGFyYW0gcHJvcHMgb3B0aW9uc1xuICAgKi9cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJpdmF0ZSByZWFkb25seSBwcm9wczogQXBpT2JqZWN0UHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuICAgIHRoaXMucGF0Y2hlcyA9IG5ldyBBcnJheTxKc29uUGF0Y2g+KCk7XG4gICAgdGhpcy5jaGFydCA9IENoYXJ0Lm9mKHRoaXMpO1xuICAgIHRoaXMua2luZCA9IHByb3BzLmtpbmQ7XG4gICAgdGhpcy5hcGlWZXJzaW9uID0gcHJvcHMuYXBpVmVyc2lvbjtcbiAgICB0aGlzLmFwaUdyb3VwID0gcGFyc2VBcGlHcm91cCh0aGlzLmFwaVZlcnNpb24pO1xuXG4gICAgdGhpcy5uYW1lID0gcHJvcHMubWV0YWRhdGE/Lm5hbWUgPz8gdGhpcy5jaGFydC5nZW5lcmF0ZU9iamVjdE5hbWUodGhpcyk7XG5cbiAgICB0aGlzLm1ldGFkYXRhID0gbmV3IEFwaU9iamVjdE1ldGFkYXRhRGVmaW5pdGlvbih7XG4gICAgICBuYW1lOiB0aGlzLm5hbWUsXG5cbiAgICAgIC8vIHVzZXIgZGVmaW5lZCB2YWx1ZXNcbiAgICAgIC4uLnByb3BzLm1ldGFkYXRhLFxuXG4gICAgICBuYW1lc3BhY2U6IHByb3BzLm1ldGFkYXRhPy5uYW1lc3BhY2UgPz8gdGhpcy5jaGFydC5uYW1lc3BhY2UsXG4gICAgICBsYWJlbHM6IHtcbiAgICAgICAgLi4udGhpcy5jaGFydC5sYWJlbHMsXG4gICAgICAgIC4uLnByb3BzLm1ldGFkYXRhPy5sYWJlbHMsXG4gICAgICB9LFxuICAgICAgYXBpT2JqZWN0OiB0aGlzLFxuICAgIH0pO1xuXG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIEFQSV9PQkpFQ1RfU1lNQk9MLCB7IHZhbHVlOiB0cnVlIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIGRlcGVuZGVuY3kgYmV0d2VlbiB0aGlzIEFwaU9iamVjdCBhbmQgb3RoZXIgY29uc3RydWN0cy5cbiAgICogVGhlc2UgY2FuIGJlIG90aGVyIEFwaU9iamVjdHMsIENoYXJ0cywgb3IgY3VzdG9tLlxuICAgKlxuICAgKiBAcGFyYW0gZGVwZW5kZW5jaWVzIHRoZSBkZXBlbmRlbmNpZXMgdG8gYWRkLlxuICAgKi9cbiAgcHVibGljIGFkZERlcGVuZGVuY3koLi4uZGVwZW5kZW5jaWVzOiBJQ29uc3RydWN0W10pIHtcbiAgICB0aGlzLm5vZGUuYWRkRGVwZW5kZW5jeSguLi5kZXBlbmRlbmNpZXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFwcGxpZXMgYSBzZXQgb2YgUkZDLTY5MDIgSlNPTi1QYXRjaCBvcGVyYXRpb25zIHRvIHRoZSBtYW5pZmVzdFxuICAgKiBzeW50aGVzaXplZCBmb3IgdGhpcyBBUEkgb2JqZWN0LlxuICAgKlxuICAgKiBAcGFyYW0gb3BzIFRoZSBKU09OLVBhdGNoIG9wZXJhdGlvbnMgdG8gYXBwbHkuXG4gICAqXG4gICAqIEBleGFtcGxlXG4gICAqXG4gICAqICAga3ViZVBvZC5hZGRKc29uUGF0Y2goSnNvblBhdGNoLnJlcGxhY2UoJy9zcGVjL2VuYWJsZVNlcnZpY2VMaW5rcycsIHRydWUpKTtcbiAgICpcbiAgICovXG4gIHB1YmxpYyBhZGRKc29uUGF0Y2goLi4ub3BzOiBKc29uUGF0Y2hbXSkge1xuICAgIHRoaXMucGF0Y2hlcy5wdXNoKC4uLm9wcyk7XG4gIH1cblxuICAvKipcbiAgICogUmVuZGVycyB0aGUgb2JqZWN0IHRvIEt1YmVybmV0ZXMgSlNPTi5cbiAgICpcbiAgICogVG8gZGlzYWJsZSBzb3J0aW5nIG9mIGRpY3Rpb25hcnkga2V5cyBpbiBvdXRwdXQgb2JqZWN0IHNldCB0aGVcbiAgICogYENESzhTX0RJU0FCTEVfU09SVGAgZW52aXJvbm1lbnQgdmFyaWFibGUgdG8gYW55IG5vbi1lbXB0eSB2YWx1ZS5cbiAgICovXG4gIHB1YmxpYyB0b0pzb24oKTogYW55IHtcbiAgICBjb25zdCBkYXRhOiBhbnkgPSB7XG4gICAgICAuLi50aGlzLnByb3BzLFxuICAgICAgbWV0YWRhdGE6IHRoaXMubWV0YWRhdGEudG9Kc29uKCksXG4gICAgfTtcblxuICAgIGNvbnN0IHNvcnRLZXlzID0gcHJvY2Vzcy5lbnYuQ0RLOFNfRElTQUJMRV9TT1JUID8gZmFsc2UgOiB0cnVlO1xuICAgIGNvbnN0IGpzb24gPSBzYW5pdGl6ZVZhbHVlKHJlc29sdmUoW10sIGRhdGEsIHRoaXMpLCB7IHNvcnRLZXlzIH0pO1xuICAgIGNvbnN0IHBhdGNoZWQgPSBKc29uUGF0Y2guYXBwbHkoanNvbiwgLi4udGhpcy5wYXRjaGVzKTtcblxuICAgIC8vIHJlb3JkZXIgdG9wLWxldmVsIGtleXMgc28gdGhhdCB3ZSBmaXJzdCBoYXZlIFwiYXBpVmVyc2lvblwiLCBcImtpbmRcIiBhbmRcbiAgICAvLyBcIm1ldGFkYXRhXCIgYW5kIHRoZW4gYWxsIHRoZSByZXN0XG4gICAgY29uc3QgcmVzdWx0OiBhbnkgPSB7fTtcbiAgICBjb25zdCBvcmRlcmVkS2V5cyA9IFsnYXBpVmVyc2lvbicsICdraW5kJywgJ21ldGFkYXRhJywgLi4uT2JqZWN0LmtleXMocGF0Y2hlZCldO1xuICAgIGZvciAoY29uc3QgayBvZiBvcmRlcmVkS2V5cykge1xuICAgICAgaWYgKGsgaW4gcGF0Y2hlZCkge1xuICAgICAgICByZXN1bHRba10gPSBwYXRjaGVkW2tdO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cbn1cblxuZnVuY3Rpb24gcGFyc2VBcGlHcm91cChhcGlWZXJzaW9uOiBzdHJpbmcpIHtcbiAgY29uc3QgdiA9IGFwaVZlcnNpb24uc3BsaXQoJy8nKTtcblxuICAvLyBubyBncm91cCBtZWFucyBcImNvcmVcIlxuICAvLyBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy9yZWZlcmVuY2UvdXNpbmctYXBpL2FwaS1vdmVydmlldy8jYXBpLWdyb3Vwc1xuICBpZiAodi5sZW5ndGggPT09IDEpIHtcbiAgICByZXR1cm4gJ2NvcmUnO1xuICB9XG5cbiAgaWYgKHYubGVuZ3RoID09PSAyKSB7XG4gICAgcmV0dXJuIHZbMF07XG4gIH1cblxuICB0aHJvdyBuZXcgRXJyb3IoYGludmFsaWQgYXBpVmVyc2lvbiAke2FwaVZlcnNpb259LCBleHBlY3RpbmcgR1JPVVAvVkVSU0lPTi4gU2VlIGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL3JlZmVyZW5jZS91c2luZy1hcGkvYXBpLW92ZXJ2aWV3LyNhcGktZ3JvdXBzYCk7XG59XG4iXX0=
|
package/lib/app.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import { Construct } from 'constructs';
|
|
1
|
+
import { Construct, IConstruct } from 'constructs';
|
|
2
2
|
import { Chart } from './chart';
|
|
3
|
+
import { IResolver } from './resolve';
|
|
3
4
|
/** The method to divide YAML output into files */
|
|
4
5
|
export declare enum YamlOutputType {
|
|
5
6
|
/** All resources are output into a single YAML file */
|
|
@@ -43,6 +44,17 @@ export interface AppProps {
|
|
|
43
44
|
* @default false
|
|
44
45
|
*/
|
|
45
46
|
readonly recordConstructMetadata?: boolean;
|
|
47
|
+
/**
|
|
48
|
+
* A list of resolvers that can be used to replace property values before
|
|
49
|
+
* they are written to the manifest file. When multiple resolvers are passed,
|
|
50
|
+
* they are invoked by order in the list, and only the first one that applies
|
|
51
|
+
* (e.g calls `context.replaceValue`) is invoked.
|
|
52
|
+
*
|
|
53
|
+
* @see https://cdk8s.io/docs/latest/basics/app/#resolvers
|
|
54
|
+
*
|
|
55
|
+
* @default - no resolvers.
|
|
56
|
+
*/
|
|
57
|
+
readonly resolvers?: IResolver[];
|
|
46
58
|
}
|
|
47
59
|
/**
|
|
48
60
|
* Represents a cdk8s application.
|
|
@@ -62,7 +74,7 @@ export declare class App extends Construct {
|
|
|
62
74
|
* @internal
|
|
63
75
|
*/
|
|
64
76
|
static _synthChart(chart: Chart): any[];
|
|
65
|
-
|
|
77
|
+
static of(c: IConstruct): App;
|
|
66
78
|
/**
|
|
67
79
|
* The output directory into which manifests will be synthesized.
|
|
68
80
|
*/
|
|
@@ -76,6 +88,11 @@ export declare class App extends Construct {
|
|
|
76
88
|
* @default YamlOutputType.FILE_PER_CHART
|
|
77
89
|
*/
|
|
78
90
|
readonly yamlOutputType: YamlOutputType;
|
|
91
|
+
/**
|
|
92
|
+
* Resolvers used by this app. This includes both custom resolvers
|
|
93
|
+
* passed by the `resolvers` property, as well as built-in resolvers.
|
|
94
|
+
*/
|
|
95
|
+
readonly resolvers: IResolver[];
|
|
79
96
|
private readonly recordConstructMetadata;
|
|
80
97
|
/**
|
|
81
98
|
* Returns all the charts in this app, sorted topologically.
|