cdk8s 1.61.25 → 1.62.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.jsii +464 -46
- package/docs/java.md +479 -6
- package/docs/python.md +510 -7
- package/docs/typescript.md +431 -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 +18 -4
- package/lib/metadata.js +8 -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
|
|
@@ -512,6 +542,18 @@ import { ApiObjectMetadata } from 'cdk8s'
|
|
|
512
542
|
const apiObjectMetadata: ApiObjectMetadata = { ... }
|
|
513
543
|
```
|
|
514
544
|
|
|
545
|
+
##### `additionalAttributes`<sup>Optional</sup> <a name="cdk8s.ApiObjectMetadata.property.additionalAttributes"></a>
|
|
546
|
+
|
|
547
|
+
```typescript
|
|
548
|
+
public readonly additionalAttributes: {[ key: string ]: any};
|
|
549
|
+
```
|
|
550
|
+
|
|
551
|
+
- *Type:* {[ key: string ]: `any`}
|
|
552
|
+
|
|
553
|
+
Additional metadata attributes.
|
|
554
|
+
|
|
555
|
+
---
|
|
556
|
+
|
|
515
557
|
##### `annotations`<sup>Optional</sup> <a name="cdk8s.ApiObjectMetadata.property.annotations"></a>
|
|
516
558
|
|
|
517
559
|
```typescript
|
|
@@ -646,6 +688,176 @@ relationships.
|
|
|
646
688
|
|
|
647
689
|
---
|
|
648
690
|
|
|
691
|
+
### ApiObjectMetadataDefinitionOptions <a name="cdk8s.ApiObjectMetadataDefinitionOptions"></a>
|
|
692
|
+
|
|
693
|
+
Options for `ApiObjectMetadataDefinition`.
|
|
694
|
+
|
|
695
|
+
#### Initializer <a name="[object Object].Initializer"></a>
|
|
696
|
+
|
|
697
|
+
```typescript
|
|
698
|
+
import { ApiObjectMetadataDefinitionOptions } from 'cdk8s'
|
|
699
|
+
|
|
700
|
+
const apiObjectMetadataDefinitionOptions: ApiObjectMetadataDefinitionOptions = { ... }
|
|
701
|
+
```
|
|
702
|
+
|
|
703
|
+
##### `additionalAttributes`<sup>Optional</sup> <a name="cdk8s.ApiObjectMetadataDefinitionOptions.property.additionalAttributes"></a>
|
|
704
|
+
|
|
705
|
+
```typescript
|
|
706
|
+
public readonly additionalAttributes: {[ key: string ]: any};
|
|
707
|
+
```
|
|
708
|
+
|
|
709
|
+
- *Type:* {[ key: string ]: `any`}
|
|
710
|
+
|
|
711
|
+
Additional metadata attributes.
|
|
712
|
+
|
|
713
|
+
---
|
|
714
|
+
|
|
715
|
+
##### `annotations`<sup>Optional</sup> <a name="cdk8s.ApiObjectMetadataDefinitionOptions.property.annotations"></a>
|
|
716
|
+
|
|
717
|
+
```typescript
|
|
718
|
+
public readonly annotations: {[ key: string ]: string};
|
|
719
|
+
```
|
|
720
|
+
|
|
721
|
+
- *Type:* {[ key: string ]: `string`}
|
|
722
|
+
- *Default:* No annotations.
|
|
723
|
+
|
|
724
|
+
Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata.
|
|
725
|
+
|
|
726
|
+
They are not queryable and should be
|
|
727
|
+
preserved when modifying objects.
|
|
728
|
+
|
|
729
|
+
> http://kubernetes.io/docs/user-guide/annotations
|
|
730
|
+
|
|
731
|
+
---
|
|
732
|
+
|
|
733
|
+
##### `finalizers`<sup>Optional</sup> <a name="cdk8s.ApiObjectMetadataDefinitionOptions.property.finalizers"></a>
|
|
734
|
+
|
|
735
|
+
```typescript
|
|
736
|
+
public readonly finalizers: string[];
|
|
737
|
+
```
|
|
738
|
+
|
|
739
|
+
- *Type:* `string`[]
|
|
740
|
+
- *Default:* No finalizers.
|
|
741
|
+
|
|
742
|
+
Namespaced keys that tell Kubernetes to wait until specific conditions are met before it fully deletes resources marked for deletion.
|
|
743
|
+
|
|
744
|
+
Must be empty before the object is deleted from the registry. Each entry is
|
|
745
|
+
an identifier for the responsible component that will remove the entry from
|
|
746
|
+
the list. If the deletionTimestamp of the object is non-nil, entries in
|
|
747
|
+
this list can only be removed. Finalizers may be processed and removed in
|
|
748
|
+
any order. Order is NOT enforced because it introduces significant risk of
|
|
749
|
+
stuck finalizers. finalizers is a shared field, any actor with permission
|
|
750
|
+
can reorder it. If the finalizer list is processed in order, then this can
|
|
751
|
+
lead to a situation in which the component responsible for the first
|
|
752
|
+
finalizer in the list is waiting for a signal (field value, external
|
|
753
|
+
system, or other) produced by a component responsible for a finalizer later
|
|
754
|
+
in the list, resulting in a deadlock. Without enforced ordering finalizers
|
|
755
|
+
are free to order amongst themselves and are not vulnerable to ordering
|
|
756
|
+
changes in the list.
|
|
757
|
+
|
|
758
|
+
> https://kubernetes.io/docs/concepts/overview/working-with-objects/finalizers/
|
|
759
|
+
|
|
760
|
+
---
|
|
761
|
+
|
|
762
|
+
##### `labels`<sup>Optional</sup> <a name="cdk8s.ApiObjectMetadataDefinitionOptions.property.labels"></a>
|
|
763
|
+
|
|
764
|
+
```typescript
|
|
765
|
+
public readonly labels: {[ key: string ]: string};
|
|
766
|
+
```
|
|
767
|
+
|
|
768
|
+
- *Type:* {[ key: string ]: `string`}
|
|
769
|
+
- *Default:* No labels.
|
|
770
|
+
|
|
771
|
+
Map of string keys and values that can be used to organize and categorize (scope and select) objects.
|
|
772
|
+
|
|
773
|
+
May match selectors of replication controllers and services.
|
|
774
|
+
|
|
775
|
+
> http://kubernetes.io/docs/user-guide/labels
|
|
776
|
+
|
|
777
|
+
---
|
|
778
|
+
|
|
779
|
+
##### `name`<sup>Optional</sup> <a name="cdk8s.ApiObjectMetadataDefinitionOptions.property.name"></a>
|
|
780
|
+
|
|
781
|
+
```typescript
|
|
782
|
+
public readonly name: string;
|
|
783
|
+
```
|
|
784
|
+
|
|
785
|
+
- *Type:* `string`
|
|
786
|
+
- *Default:* an app-unique name generated by the chart
|
|
787
|
+
|
|
788
|
+
The unique, namespace-global, name of this object inside the Kubernetes cluster.
|
|
789
|
+
|
|
790
|
+
Normally, you shouldn't specify names for objects and let the CDK generate
|
|
791
|
+
a name for you that is application-unique. The names CDK generates are
|
|
792
|
+
composed from the construct path components, separated by dots and a suffix
|
|
793
|
+
that is based on a hash of the entire path, to ensure uniqueness.
|
|
794
|
+
|
|
795
|
+
You can supply custom name allocation logic by overriding the
|
|
796
|
+
`chart.generateObjectName` method.
|
|
797
|
+
|
|
798
|
+
If you use an explicit name here, bear in mind that this reduces the
|
|
799
|
+
composability of your construct because it won't be possible to include
|
|
800
|
+
more than one instance in any app. Therefore it is highly recommended to
|
|
801
|
+
leave this unspecified.
|
|
802
|
+
|
|
803
|
+
---
|
|
804
|
+
|
|
805
|
+
##### `namespace`<sup>Optional</sup> <a name="cdk8s.ApiObjectMetadataDefinitionOptions.property.namespace"></a>
|
|
806
|
+
|
|
807
|
+
```typescript
|
|
808
|
+
public readonly namespace: string;
|
|
809
|
+
```
|
|
810
|
+
|
|
811
|
+
- *Type:* `string`
|
|
812
|
+
- *Default:* undefined (will be assigned to the 'default' namespace)
|
|
813
|
+
|
|
814
|
+
Namespace defines the space within each name must be unique.
|
|
815
|
+
|
|
816
|
+
An empty namespace is equivalent to the "default" namespace, but "default" is the canonical representation.
|
|
817
|
+
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
|
|
818
|
+
|
|
819
|
+
---
|
|
820
|
+
|
|
821
|
+
##### `ownerReferences`<sup>Optional</sup> <a name="cdk8s.ApiObjectMetadataDefinitionOptions.property.ownerReferences"></a>
|
|
822
|
+
|
|
823
|
+
```typescript
|
|
824
|
+
public readonly ownerReferences: OwnerReference[];
|
|
825
|
+
```
|
|
826
|
+
|
|
827
|
+
- *Type:* [`cdk8s.OwnerReference`](#cdk8s.OwnerReference)[]
|
|
828
|
+
- *Default:* automatically set by Kubernetes
|
|
829
|
+
|
|
830
|
+
List of objects depended by this object.
|
|
831
|
+
|
|
832
|
+
If ALL objects in the list have
|
|
833
|
+
been deleted, this object will be garbage collected. If this object is
|
|
834
|
+
managed by a controller, then an entry in this list will point to this
|
|
835
|
+
controller, with the controller field set to true. There cannot be more
|
|
836
|
+
than one managing controller.
|
|
837
|
+
|
|
838
|
+
Kubernetes sets the value of this field automatically for objects that are
|
|
839
|
+
dependents of other objects like ReplicaSets, DaemonSets, Deployments, Jobs
|
|
840
|
+
and CronJobs, and ReplicationControllers. You can also configure these
|
|
841
|
+
relationships manually by changing the value of this field. However, you
|
|
842
|
+
usually don't need to and can allow Kubernetes to automatically manage the
|
|
843
|
+
relationships.
|
|
844
|
+
|
|
845
|
+
> https://kubernetes.io/docs/concepts/overview/working-with-objects/owners-dependents/
|
|
846
|
+
|
|
847
|
+
---
|
|
848
|
+
|
|
849
|
+
##### `apiObject`<sup>Required</sup> <a name="cdk8s.ApiObjectMetadataDefinitionOptions.property.apiObject"></a>
|
|
850
|
+
|
|
851
|
+
```typescript
|
|
852
|
+
public readonly apiObject: ApiObject;
|
|
853
|
+
```
|
|
854
|
+
|
|
855
|
+
- *Type:* [`cdk8s.ApiObject`](#cdk8s.ApiObject)
|
|
856
|
+
|
|
857
|
+
Which ApiObject instance is the metadata attached to.
|
|
858
|
+
|
|
859
|
+
---
|
|
860
|
+
|
|
649
861
|
### ApiObjectProps <a name="cdk8s.ApiObjectProps"></a>
|
|
650
862
|
|
|
651
863
|
Options for defining API objects.
|
|
@@ -754,6 +966,25 @@ When set to true, the output directory will contain a `construct-metadata.json`
|
|
|
754
966
|
|
|
755
967
|
---
|
|
756
968
|
|
|
969
|
+
##### `resolvers`<sup>Optional</sup> <a name="cdk8s.AppProps.property.resolvers"></a>
|
|
970
|
+
|
|
971
|
+
```typescript
|
|
972
|
+
public readonly resolvers: IResolver[];
|
|
973
|
+
```
|
|
974
|
+
|
|
975
|
+
- *Type:* [`cdk8s.IResolver`](#cdk8s.IResolver)[]
|
|
976
|
+
- *Default:* no resolvers.
|
|
977
|
+
|
|
978
|
+
A list of resolvers that can be used to replace property values before they are written to the manifest file.
|
|
979
|
+
|
|
980
|
+
When multiple resolvers are passed,
|
|
981
|
+
they are invoked by order in the list, and only the first one that applies
|
|
982
|
+
(e.g calls `context.replaceValue`) is invoked.
|
|
983
|
+
|
|
984
|
+
> https://cdk8s.io/docs/latest/basics/app/#resolvers
|
|
985
|
+
|
|
986
|
+
---
|
|
987
|
+
|
|
757
988
|
##### `yamlOutputType`<sup>Optional</sup> <a name="cdk8s.AppProps.property.yamlOutputType"></a>
|
|
758
989
|
|
|
759
990
|
```typescript
|
|
@@ -1303,12 +1534,12 @@ Object metadata.
|
|
|
1303
1534
|
```typescript
|
|
1304
1535
|
import { ApiObjectMetadataDefinition } from 'cdk8s'
|
|
1305
1536
|
|
|
1306
|
-
new ApiObjectMetadataDefinition(options
|
|
1537
|
+
new ApiObjectMetadataDefinition(options: ApiObjectMetadataDefinitionOptions)
|
|
1307
1538
|
```
|
|
1308
1539
|
|
|
1309
|
-
##### `options`<sup>
|
|
1540
|
+
##### `options`<sup>Required</sup> <a name="cdk8s.ApiObjectMetadataDefinition.parameter.options"></a>
|
|
1310
1541
|
|
|
1311
|
-
- *Type:* [`cdk8s.
|
|
1542
|
+
- *Type:* [`cdk8s.ApiObjectMetadataDefinitionOptions`](#cdk8s.ApiObjectMetadataDefinitionOptions)
|
|
1312
1543
|
|
|
1313
1544
|
---
|
|
1314
1545
|
|
|
@@ -1884,6 +2115,37 @@ the amount of Seconds the `Duration` will represent.
|
|
|
1884
2115
|
|
|
1885
2116
|
|
|
1886
2117
|
|
|
2118
|
+
### ImplicitTokenResolver <a name="cdk8s.ImplicitTokenResolver"></a>
|
|
2119
|
+
|
|
2120
|
+
- *Implements:* [`cdk8s.IResolver`](#cdk8s.IResolver)
|
|
2121
|
+
|
|
2122
|
+
Resolves implicit tokens.
|
|
2123
|
+
|
|
2124
|
+
#### Initializers <a name="cdk8s.ImplicitTokenResolver.Initializer"></a>
|
|
2125
|
+
|
|
2126
|
+
```typescript
|
|
2127
|
+
import { ImplicitTokenResolver } from 'cdk8s'
|
|
2128
|
+
|
|
2129
|
+
new ImplicitTokenResolver()
|
|
2130
|
+
```
|
|
2131
|
+
|
|
2132
|
+
#### Methods <a name="Methods"></a>
|
|
2133
|
+
|
|
2134
|
+
##### `resolve` <a name="cdk8s.ImplicitTokenResolver.resolve"></a>
|
|
2135
|
+
|
|
2136
|
+
```typescript
|
|
2137
|
+
public resolve(context: ResolutionContext)
|
|
2138
|
+
```
|
|
2139
|
+
|
|
2140
|
+
###### `context`<sup>Required</sup> <a name="cdk8s.ImplicitTokenResolver.parameter.context"></a>
|
|
2141
|
+
|
|
2142
|
+
- *Type:* [`cdk8s.ResolutionContext`](#cdk8s.ResolutionContext)
|
|
2143
|
+
|
|
2144
|
+
---
|
|
2145
|
+
|
|
2146
|
+
|
|
2147
|
+
|
|
2148
|
+
|
|
1887
2149
|
### JsonPatch <a name="cdk8s.JsonPatch"></a>
|
|
1888
2150
|
|
|
1889
2151
|
Utility for applying RFC-6902 JSON-Patch to a document.
|
|
@@ -2065,6 +2327,37 @@ Lazy.any(producer: IAnyProducer)
|
|
|
2065
2327
|
|
|
2066
2328
|
|
|
2067
2329
|
|
|
2330
|
+
### LazyResolver <a name="cdk8s.LazyResolver"></a>
|
|
2331
|
+
|
|
2332
|
+
- *Implements:* [`cdk8s.IResolver`](#cdk8s.IResolver)
|
|
2333
|
+
|
|
2334
|
+
Resolvers instanecs of `Lazy`.
|
|
2335
|
+
|
|
2336
|
+
#### Initializers <a name="cdk8s.LazyResolver.Initializer"></a>
|
|
2337
|
+
|
|
2338
|
+
```typescript
|
|
2339
|
+
import { LazyResolver } from 'cdk8s'
|
|
2340
|
+
|
|
2341
|
+
new LazyResolver()
|
|
2342
|
+
```
|
|
2343
|
+
|
|
2344
|
+
#### Methods <a name="Methods"></a>
|
|
2345
|
+
|
|
2346
|
+
##### `resolve` <a name="cdk8s.LazyResolver.resolve"></a>
|
|
2347
|
+
|
|
2348
|
+
```typescript
|
|
2349
|
+
public resolve(context: ResolutionContext)
|
|
2350
|
+
```
|
|
2351
|
+
|
|
2352
|
+
###### `context`<sup>Required</sup> <a name="cdk8s.LazyResolver.parameter.context"></a>
|
|
2353
|
+
|
|
2354
|
+
- *Type:* [`cdk8s.ResolutionContext`](#cdk8s.ResolutionContext)
|
|
2355
|
+
|
|
2356
|
+
---
|
|
2357
|
+
|
|
2358
|
+
|
|
2359
|
+
|
|
2360
|
+
|
|
2068
2361
|
### Names <a name="cdk8s.Names"></a>
|
|
2069
2362
|
|
|
2070
2363
|
Utilities for generating unique and stable names.
|
|
@@ -2122,6 +2415,120 @@ Name options.
|
|
|
2122
2415
|
|
|
2123
2416
|
|
|
2124
2417
|
|
|
2418
|
+
### ResolutionContext <a name="cdk8s.ResolutionContext"></a>
|
|
2419
|
+
|
|
2420
|
+
Context object for a specific resolution process.
|
|
2421
|
+
|
|
2422
|
+
#### Initializers <a name="cdk8s.ResolutionContext.Initializer"></a>
|
|
2423
|
+
|
|
2424
|
+
```typescript
|
|
2425
|
+
import { ResolutionContext } from 'cdk8s'
|
|
2426
|
+
|
|
2427
|
+
new ResolutionContext(obj: ApiObject, key: string[], value: any)
|
|
2428
|
+
```
|
|
2429
|
+
|
|
2430
|
+
##### `obj`<sup>Required</sup> <a name="cdk8s.ResolutionContext.parameter.obj"></a>
|
|
2431
|
+
|
|
2432
|
+
- *Type:* [`cdk8s.ApiObject`](#cdk8s.ApiObject)
|
|
2433
|
+
|
|
2434
|
+
Which ApiObject is currently being resolved.
|
|
2435
|
+
|
|
2436
|
+
---
|
|
2437
|
+
|
|
2438
|
+
##### `key`<sup>Required</sup> <a name="cdk8s.ResolutionContext.parameter.key"></a>
|
|
2439
|
+
|
|
2440
|
+
- *Type:* `string`[]
|
|
2441
|
+
|
|
2442
|
+
Which key is currently being resolved.
|
|
2443
|
+
|
|
2444
|
+
---
|
|
2445
|
+
|
|
2446
|
+
##### `value`<sup>Required</sup> <a name="cdk8s.ResolutionContext.parameter.value"></a>
|
|
2447
|
+
|
|
2448
|
+
- *Type:* `any`
|
|
2449
|
+
|
|
2450
|
+
The value associated to the key currently being resolved.
|
|
2451
|
+
|
|
2452
|
+
---
|
|
2453
|
+
|
|
2454
|
+
#### Methods <a name="Methods"></a>
|
|
2455
|
+
|
|
2456
|
+
##### `replaceValue` <a name="cdk8s.ResolutionContext.replaceValue"></a>
|
|
2457
|
+
|
|
2458
|
+
```typescript
|
|
2459
|
+
public replaceValue(newValue: any)
|
|
2460
|
+
```
|
|
2461
|
+
|
|
2462
|
+
###### `newValue`<sup>Required</sup> <a name="cdk8s.ResolutionContext.parameter.newValue"></a>
|
|
2463
|
+
|
|
2464
|
+
- *Type:* `any`
|
|
2465
|
+
|
|
2466
|
+
---
|
|
2467
|
+
|
|
2468
|
+
|
|
2469
|
+
#### Properties <a name="Properties"></a>
|
|
2470
|
+
|
|
2471
|
+
##### `key`<sup>Required</sup> <a name="cdk8s.ResolutionContext.property.key"></a>
|
|
2472
|
+
|
|
2473
|
+
```typescript
|
|
2474
|
+
public readonly key: string[];
|
|
2475
|
+
```
|
|
2476
|
+
|
|
2477
|
+
- *Type:* `string`[]
|
|
2478
|
+
|
|
2479
|
+
Which key is currently being resolved.
|
|
2480
|
+
|
|
2481
|
+
---
|
|
2482
|
+
|
|
2483
|
+
##### `obj`<sup>Required</sup> <a name="cdk8s.ResolutionContext.property.obj"></a>
|
|
2484
|
+
|
|
2485
|
+
```typescript
|
|
2486
|
+
public readonly obj: ApiObject;
|
|
2487
|
+
```
|
|
2488
|
+
|
|
2489
|
+
- *Type:* [`cdk8s.ApiObject`](#cdk8s.ApiObject)
|
|
2490
|
+
|
|
2491
|
+
Which ApiObject is currently being resolved.
|
|
2492
|
+
|
|
2493
|
+
---
|
|
2494
|
+
|
|
2495
|
+
##### `value`<sup>Required</sup> <a name="cdk8s.ResolutionContext.property.value"></a>
|
|
2496
|
+
|
|
2497
|
+
```typescript
|
|
2498
|
+
public readonly value: any;
|
|
2499
|
+
```
|
|
2500
|
+
|
|
2501
|
+
- *Type:* `any`
|
|
2502
|
+
|
|
2503
|
+
The value associated to the key currently being resolved.
|
|
2504
|
+
|
|
2505
|
+
---
|
|
2506
|
+
|
|
2507
|
+
##### `replaced`<sup>Required</sup> <a name="cdk8s.ResolutionContext.property.replaced"></a>
|
|
2508
|
+
|
|
2509
|
+
```typescript
|
|
2510
|
+
public readonly replaced: boolean;
|
|
2511
|
+
```
|
|
2512
|
+
|
|
2513
|
+
- *Type:* `boolean`
|
|
2514
|
+
|
|
2515
|
+
Whether or not the value was replaced by invoking the `replaceValue` method.
|
|
2516
|
+
|
|
2517
|
+
---
|
|
2518
|
+
|
|
2519
|
+
##### `replacedValue`<sup>Required</sup> <a name="cdk8s.ResolutionContext.property.replacedValue"></a>
|
|
2520
|
+
|
|
2521
|
+
```typescript
|
|
2522
|
+
public readonly replacedValue: any;
|
|
2523
|
+
```
|
|
2524
|
+
|
|
2525
|
+
- *Type:* `any`
|
|
2526
|
+
|
|
2527
|
+
The replaced value that was set via the `replaceValue` method.
|
|
2528
|
+
|
|
2529
|
+
---
|
|
2530
|
+
|
|
2531
|
+
|
|
2125
2532
|
### Size <a name="cdk8s.Size"></a>
|
|
2126
2533
|
|
|
2127
2534
|
Represents the amount of digital storage.
|
|
@@ -2422,6 +2829,27 @@ public produce()
|
|
|
2422
2829
|
```
|
|
2423
2830
|
|
|
2424
2831
|
|
|
2832
|
+
### IResolver <a name="cdk8s.IResolver"></a>
|
|
2833
|
+
|
|
2834
|
+
- *Implemented By:* [`cdk8s.ImplicitTokenResolver`](#cdk8s.ImplicitTokenResolver), [`cdk8s.LazyResolver`](#cdk8s.LazyResolver), [`cdk8s.IResolver`](#cdk8s.IResolver)
|
|
2835
|
+
|
|
2836
|
+
Contract for resolver objects.
|
|
2837
|
+
|
|
2838
|
+
#### Methods <a name="Methods"></a>
|
|
2839
|
+
|
|
2840
|
+
##### `resolve` <a name="cdk8s.IResolver.resolve"></a>
|
|
2841
|
+
|
|
2842
|
+
```typescript
|
|
2843
|
+
public resolve(context: ResolutionContext)
|
|
2844
|
+
```
|
|
2845
|
+
|
|
2846
|
+
###### `context`<sup>Required</sup> <a name="cdk8s.IResolver.parameter.context"></a>
|
|
2847
|
+
|
|
2848
|
+
- *Type:* [`cdk8s.ResolutionContext`](#cdk8s.ResolutionContext)
|
|
2849
|
+
|
|
2850
|
+
---
|
|
2851
|
+
|
|
2852
|
+
|
|
2425
2853
|
## Enums <a name="Enums"></a>
|
|
2426
2854
|
|
|
2427
2855
|
### 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: "1.
|
|
130
|
+
ApiObject[_a] = { fqn: "cdk8s.ApiObject", version: "1.62.0" };
|
|
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLW9iamVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9hcGktb2JqZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsMkNBQXlEO0FBQ3pELHlDQUFxQztBQUNyQyxtQ0FBd0M7QUFDeEMsbUNBQWdDO0FBQ2hDLDZDQUF5QztBQUN6Qyx5Q0FBNEU7QUE0QzVFLE1BQU0saUJBQWlCLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0FBRXhELE1BQWEsU0FBVSxTQUFRLHNCQUFTO0lBRXRDOzs7Ozs7T0FNRztJQUNILE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBTTtRQUN2QixPQUFPLENBQUMsS0FBSyxJQUFJLElBQUksT0FBTyxDQUFDLEtBQUssUUFBUSxJQUFJLGlCQUFpQixJQUFJLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxNQUFNLENBQUMsMkJBQUMsTUFBTSxDQUFDLFdBQVcsRUFBQyxDQUFDLENBQVU7UUFDcEMsT0FBTyxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFDRDs7Ozs7OztPQU9HO0lBQ0ksTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFhO1FBQzVCLElBQUksQ0FBQyxZQUFZLFNBQVMsRUFBRTtZQUMxQixPQUFPLENBQUMsQ0FBQztTQUNWO1FBRUQsTUFBTSxLQUFLLEdBQUcsaUJBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDO1FBQ3RDLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDVixNQUFNLElBQUksS0FBSyxDQUFDLDRFQUE0RSxpQkFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1NBQ2hIO1FBRUQsT0FBTyxTQUFTLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUEwQ0Q7Ozs7OztPQU1HO0lB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Q0FBQzs7QUF4S0gsOEJBeUtDOztBQUVELFNBQVMsYUFBYSxDQUFDLFVBQWtCO0lBQ3ZDLE1BQU0sQ0FBQyxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7SUFFaEMsd0JBQXdCO0lBQ3hCLDBFQUEwRTtJQUMxRSxJQUFJLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1FBQ2xCLE9BQU8sTUFBTSxDQUFDO0tBQ2Y7SUFFRCxJQUFJLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1FBQ2xCLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQ2I7SUFFRCxNQUFNLElBQUksS0FBSyxDQUFDLHNCQUFzQixVQUFVLHdHQUF3RyxDQUFDLENBQUM7QUFDNUosQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnN0cnVjdCwgSUNvbnN0cnVjdCwgTm9kZSB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgcmVzb2x2ZSB9IGZyb20gJy4vX3Jlc29sdmUnO1xuaW1wb3J0IHsgc2FuaXRpemVWYWx1ZSB9IGZyb20gJy4vX3V0aWwnO1xuaW1wb3J0IHsgQ2hhcnQgfSBmcm9tICcuL2NoYXJ0JztcbmltcG9ydCB7IEpzb25QYXRjaCB9IGZyb20gJy4vanNvbi1wYXRjaCc7XG5pbXBvcnQgeyBBcGlPYmplY3RNZXRhZGF0YSwgQXBpT2JqZWN0TWV0YWRhdGFEZWZpbml0aW9uIH0gZnJvbSAnLi9tZXRhZGF0YSc7XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgZGVmaW5pbmcgQVBJIG9iamVjdHMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXBpT2JqZWN0UHJvcHMge1xuICAvKipcbiAgICogT2JqZWN0IG1ldGFkYXRhLlxuICAgKlxuICAgKiBJZiBgbmFtZWAgaXMgbm90IHNwZWNpZmllZCwgYW4gYXBwLXVuaXF1ZSBuYW1lIHdpbGwgYmUgYWxsb2NhdGVkIGJ5IHRoZVxuICAgKiBmcmFtZXdvcmsgYmFzZWQgb24gdGhlIHBhdGggb2YgdGhlIGNvbnN0cnVjdCB3aXRoaW4gdGhlcyBjb25zdHJ1Y3QgdHJlZS5cbiAgICovXG4gIHJlYWRvbmx5IG1ldGFkYXRhPzogQXBpT2JqZWN0TWV0YWRhdGE7XG5cbiAgLyoqXG4gICAqIEFQSSB2ZXJzaW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgYXBpVmVyc2lvbjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBSZXNvdXJjZSBraW5kLlxuICAgKi9cbiAgcmVhZG9ubHkga2luZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBZGRpdGlvbmFsIGF0dHJpYnV0ZXMgZm9yIHRoaXMgQVBJIG9iamVjdC5cbiAgICogQGpzaWkgaWdub3JlXG4gICAqIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL2NkazhzLXRlYW0vY2RrOHMtY29yZS9pc3N1ZXMvMTI5N1xuICAgKi9cbiAgcmVhZG9ubHkgW2tleTogc3RyaW5nXTogYW55O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEdyb3VwVmVyc2lvbktpbmQge1xuICAvKipcbiAgICogVGhlIG9iamVjdCdzIEFQSSB2ZXJzaW9uIChlLmcuIGBhdXRob3JpemF0aW9uLms4cy5pby92MWApXG4gICAqL1xuICByZWFkb25seSBhcGlWZXJzaW9uOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBvYmplY3Qga2luZC5cbiAgICovXG4gIHJlYWRvbmx5IGtpbmQ6IHN0cmluZztcbn1cblxuY29uc3QgQVBJX09CSkVDVF9TWU1CT0wgPSBTeW1ib2wuZm9yKCdjZGs4cy5BcGlPYmplY3QnKTtcblxuZXhwb3J0IGNsYXNzIEFwaU9iamVjdCBleHRlbmRzIENvbnN0cnVjdCB7XG5cbiAgLyoqXG4gICAqIFJldHVybiB3aGV0aGVyIHRoZSBnaXZlbiBvYmplY3QgaXMgYW4gYEFwaU9iamVjdGAuXG4gICAqXG4gICAqIFdlIGRvIGF0dHJpYnV0ZSBkZXRlY3Rpb24gc2luY2Ugd2UgY2FuJ3QgcmVsaWFibHkgdXNlICdpbnN0YW5jZW9mJy5cblxuICAgKiBAcGFyYW0gbyBUaGUgb2JqZWN0IHRvIGNoZWNrXG4gICAqL1xuICBzdGF0aWMgaXNBcGlPYmplY3QobzogYW55KTogbyBpcyBBcGlPYmplY3Qge1xuICAgIHJldHVybiBvICE9PSBudWxsICYmIHR5cGVvZiBvID09PSAnb2JqZWN0JyAmJiBBUElfT0JKRUNUX1NZTUJPTCBpbiBvO1xuICB9XG5cbiAgLyoqXG4gICAqIEltcGxlbWVudHMgYGluc3RhbmNlb2YgQXBpT2JqZWN0YCB1c2luZyB0aGUgbW9yZSByZWxpYWJsZSBgQXBpT2JqZWN0LmlzQXBpT2JqZWN0YCBzdGF0aWMgbWV0aG9kXG4gICAqXG4gICAqIEBwYXJhbSBvIFRoZSBvYmplY3QgdG8gY2hlY2tcbiAgICogQGludGVybmFsXG4gICAqL1xuICBzdGF0aWMgW1N5bWJvbC5oYXNJbnN0YW5jZV0obzogdW5rbm93bikge1xuICAgIHJldHVybiBBcGlPYmplY3QuaXNBcGlPYmplY3Qobyk7XG4gIH1cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGBBcGlPYmplY3RgIG5hbWVkIGBSZXNvdXJjZWAgd2hpY2ggaXMgYSBjaGlsZCBvZiB0aGUgZ2l2ZW5cbiAgICogY29uc3RydWN0LiBJZiBgY2AgaXMgYW4gYEFwaU9iamVjdGAsIGl0IGlzIHJldHVybmVkIGRpcmVjdGx5LiBUaHJvd3MgYW5cbiAgICogZXhjZXB0aW9uIGlmIHRoZSBjb25zdHJ1Y3QgZG9lcyBub3QgaGF2ZSBhIGNoaWxkIG5hbWVkIGBEZWZhdWx0YCBfb3JfIGlmXG4gICAqIHRoaXMgY2hpbGQgaXMgbm90IGFuIGBBcGlPYmplY3RgLlxuICAgKlxuICAgKiBAcGFyYW0gYyBUaGUgaGlnaGVyLWxldmVsIGNvbnN0cnVjdFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBvZihjOiBJQ29uc3RydWN0KTogQXBpT2JqZWN0IHtcbiAgICBpZiAoYyBpbnN0YW5jZW9mIEFwaU9iamVjdCkge1xuICAgICAgcmV0dXJuIGM7XG4gICAgfVxuXG4gICAgY29uc3QgY2hpbGQgPSBOb2RlLm9mKGMpLmRlZmF1bHRDaGlsZDtcbiAgICBpZiAoIWNoaWxkKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYGNhbm5vdCBmaW5kIGEgKGRpcmVjdCBvciBpbmRpcmVjdCkgY2hpbGQgb2YgdHlwZSBBcGlPYmplY3QgZm9yIGNvbnN0cnVjdCAke05vZGUub2YoYykucGF0aH1gKTtcbiAgICB9XG5cbiAgICByZXR1cm4gQXBpT2JqZWN0Lm9mKGNoaWxkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgQVBJIG9iamVjdC5cbiAgICpcbiAgICogSWYgYSBuYW1lIGlzIHNwZWNpZmllZCBpbiBgbWV0YWRhdGEubmFtZWAgdGhpcyB3aWxsIGJlIHRoZSBuYW1lIHJldHVybmVkLlxuICAgKiBPdGhlcndpc2UsIGEgbmFtZSB3aWxsIGJlIGdlbmVyYXRlZCBieSBjYWxsaW5nXG4gICAqIGBDaGFydC5vZih0aGlzKS5nZW5lcmF0ZWRPYmplY3ROYW1lKHRoaXMpYCwgd2hpY2ggYnkgZGVmYXVsdCB1c2VzIHRoZVxuICAgKiBjb25zdHJ1Y3QgcGF0aCB0byBnZW5lcmF0ZSBhIEROUy1jb21wYXRpYmxlIG5hbWUgZm9yIHRoZSByZXNvdXJjZS5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBuYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBvYmplY3QncyBBUEkgdmVyc2lvbiAoZS5nLiBgYXV0aG9yaXphdGlvbi5rOHMuaW8vdjFgKVxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGFwaVZlcnNpb246IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGdyb3VwIHBvcnRpb24gb2YgdGhlIEFQSSB2ZXJzaW9uIChlLmcuIGBhdXRob3JpemF0aW9uLms4cy5pb2ApXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXBpR3JvdXA6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG9iamVjdCBraW5kLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGtpbmQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGNoYXJ0IGluIHdoaWNoIHRoaXMgb2JqZWN0IGlzIGRlZmluZWQuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgY2hhcnQ6IENoYXJ0O1xuXG4gIC8qKlxuICAgKiBNZXRhZGF0YSBhc3NvY2lhdGVkIHdpdGggdGhpcyBBUEkgb2JqZWN0LlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IG1ldGFkYXRhOiBBcGlPYmplY3RNZXRhZGF0YURlZmluaXRpb247XG5cbiAgLyoqXG4gICAqIEEgc2V0IG9mIEpTT04gcGF0Y2ggb3BlcmF0aW9ucyB0byBhcHBseSB0byB0aGUgZG9jdW1lbnQgYWZ0ZXIgc3ludGhlc2lzLlxuICAgKi9cbiAgcHJpdmF0ZSByZWFkb25seSBwYXRjaGVzOiBBcnJheTxKc29uUGF0Y2g+O1xuXG4gIC8qKlxuICAgKiBEZWZpbmVzIGFuIEFQSSBvYmplY3QuXG4gICAqXG4gICAqIEBwYXJhbSBzY29wZSB0aGUgY29uc3RydWN0IHNjb3BlXG4gICAqIEBwYXJhbSBpZCBuYW1lc3BhY2VcbiAgICogQHBhcmFtIHByb3BzIG9wdGlvbnNcbiAgICovXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByaXZhdGUgcmVhZG9ubHkgcHJvcHM6IEFwaU9iamVjdFByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcbiAgICB0aGlzLnBhdGNoZXMgPSBuZXcgQXJyYXk8SnNvblBhdGNoPigpO1xuICAgIHRoaXMuY2hhcnQgPSBDaGFydC5vZih0aGlzKTtcbiAgICB0aGlzLmtpbmQgPSBwcm9wcy5raW5kO1xuICAgIHRoaXMuYXBpVmVyc2lvbiA9IHByb3BzLmFwaVZlcnNpb247XG4gICAgdGhpcy5hcGlHcm91cCA9IHBhcnNlQXBpR3JvdXAodGhpcy5hcGlWZXJzaW9uKTtcblxuICAgIHRoaXMubmFtZSA9IHByb3BzLm1ldGFkYXRhPy5uYW1lID8/IHRoaXMuY2hhcnQuZ2VuZXJhdGVPYmplY3ROYW1lKHRoaXMpO1xuXG4gICAgdGhpcy5tZXRhZGF0YSA9IG5ldyBBcGlPYmplY3RNZXRhZGF0YURlZmluaXRpb24oe1xuICAgICAgbmFtZTogdGhpcy5uYW1lLFxuXG4gICAgICAvLyB1c2VyIGRlZmluZWQgdmFsdWVzXG4gICAgICAuLi5wcm9wcy5tZXRhZGF0YSxcblxuICAgICAgbmFtZXNwYWNlOiBwcm9wcy5tZXRhZGF0YT8ubmFtZXNwYWNlID8/IHRoaXMuY2hhcnQubmFtZXNwYWNlLFxuICAgICAgbGFiZWxzOiB7XG4gICAgICAgIC4uLnRoaXMuY2hhcnQubGFiZWxzLFxuICAgICAgICAuLi5wcm9wcy5tZXRhZGF0YT8ubGFiZWxzLFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBBUElfT0JKRUNUX1NZTUJPTCwgeyB2YWx1ZTogdHJ1ZSB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBkZXBlbmRlbmN5IGJldHdlZW4gdGhpcyBBcGlPYmplY3QgYW5kIG90aGVyIGNvbnN0cnVjdHMuXG4gICAqIFRoZXNlIGNhbiBiZSBvdGhlciBBcGlPYmplY3RzLCBDaGFydHMsIG9yIGN1c3RvbS5cbiAgICpcbiAgICogQHBhcmFtIGRlcGVuZGVuY2llcyB0aGUgZGVwZW5kZW5jaWVzIHRvIGFkZC5cbiAgICovXG4gIHB1YmxpYyBhZGREZXBlbmRlbmN5KC4uLmRlcGVuZGVuY2llczogSUNvbnN0cnVjdFtdKSB7XG4gICAgTm9kZS5vZih0aGlzKS5hZGREZXBlbmRlbmN5KC4uLmRlcGVuZGVuY2llcyk7XG4gIH1cblxuICAvKipcbiAgICogQXBwbGllcyBhIHNldCBvZiBSRkMtNjkwMiBKU09OLVBhdGNoIG9wZXJhdGlvbnMgdG8gdGhlIG1hbmlmZXN0XG4gICAqIHN5bnRoZXNpemVkIGZvciB0aGlzIEFQSSBvYmplY3QuXG4gICAqXG4gICAqIEBwYXJhbSBvcHMgVGhlIEpTT04tUGF0Y2ggb3BlcmF0aW9ucyB0byBhcHBseS5cbiAgICpcbiAgICogQGV4YW1wbGVcbiAgICpcbiAgICogICBrdWJlUG9kLmFkZEpzb25QYXRjaChKc29uUGF0Y2gucmVwbGFjZSgnL3NwZWMvZW5hYmxlU2VydmljZUxpbmtzJywgdHJ1ZSkpO1xuICAgKlxuICAgKi9cbiAgcHVibGljIGFkZEpzb25QYXRjaCguLi5vcHM6IEpzb25QYXRjaFtdKSB7XG4gICAgdGhpcy5wYXRjaGVzLnB1c2goLi4ub3BzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZW5kZXJzIHRoZSBvYmplY3QgdG8gS3ViZXJuZXRlcyBKU09OLlxuICAgKlxuICAgKiBUbyBkaXNhYmxlIHNvcnRpbmcgb2YgZGljdGlvbmFyeSBrZXlzIGluIG91dHB1dCBvYmplY3Qgc2V0IHRoZVxuICAgKiBgQ0RLOFNfRElTQUJMRV9TT1JUYCBlbnZpcm9ubWVudCB2YXJpYWJsZSB0byBhbnkgbm9uLWVtcHR5IHZhbHVlLlxuICAgKi9cbiAgcHVibGljIHRvSnNvbigpOiBhbnkge1xuICAgIGNvbnN0IGRhdGE6IGFueSA9IHtcbiAgICAgIC4uLnRoaXMucHJvcHMsXG4gICAgICBtZXRhZGF0YTogdGhpcy5tZXRhZGF0YS50b0pzb24oKSxcbiAgICB9O1xuXG4gICAgY29uc3Qgc29ydEtleXMgPSBwcm9jZXNzLmVudi5DREs4U19ESVNBQkxFX1NPUlQgPyBmYWxzZSA6IHRydWU7XG4gICAgY29uc3QganNvbiA9IHNhbml0aXplVmFsdWUocmVzb2x2ZShkYXRhKSwgeyBzb3J0S2V5cyB9KTtcbiAgICBjb25zdCBwYXRjaGVkID0gSnNvblBhdGNoLmFwcGx5KGpzb24sIC4uLnRoaXMucGF0Y2hlcyk7XG5cbiAgICAvLyByZW9yZGVyIHRvcC1sZXZlbCBrZXlzIHNvIHRoYXQgd2UgZmlyc3QgaGF2ZSBcImFwaVZlcnNpb25cIiwgXCJraW5kXCIgYW5kXG4gICAgLy8gXCJtZXRhZGF0YVwiIGFuZCB0aGVuIGFsbCB0aGUgcmVzdFxuICAgIGNvbnN0IHJlc3VsdDogYW55ID0ge307XG4gICAgY29uc3Qgb3JkZXJlZEtleXMgPSBbJ2FwaVZlcnNpb24nLCAna2luZCcsICdtZXRhZGF0YScsIC4uLk9iamVjdC5rZXlzKHBhdGNoZWQpXTtcbiAgICBmb3IgKGNvbnN0IGsgb2Ygb3JkZXJlZEtleXMpIHtcbiAgICAgIGlmIChrIGluIHBhdGNoZWQpIHtcbiAgICAgICAgcmVzdWx0W2tdID0gcGF0Y2hlZFtrXTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG59XG5cbmZ1bmN0aW9uIHBhcnNlQXBpR3JvdXAoYXBpVmVyc2lvbjogc3RyaW5nKSB7XG4gIGNvbnN0IHYgPSBhcGlWZXJzaW9uLnNwbGl0KCcvJyk7XG5cbiAgLy8gbm8gZ3JvdXAgbWVhbnMgXCJjb3JlXCJcbiAgLy8gaHR0cHM6Ly9rdWJlcm5ldGVzLmlvL2RvY3MvcmVmZXJlbmNlL3VzaW5nLWFwaS9hcGktb3ZlcnZpZXcvI2FwaS1ncm91cHNcbiAgaWYgKHYubGVuZ3RoID09PSAxKSB7XG4gICAgcmV0dXJuICdjb3JlJztcbiAgfVxuXG4gIGlmICh2Lmxlbmd0aCA9PT0gMikge1xuICAgIHJldHVybiB2WzBdO1xuICB9XG5cbiAgdGhyb3cgbmV3IEVycm9yKGBpbnZhbGlkIGFwaVZlcnNpb24gJHthcGlWZXJzaW9ufSwgZXhwZWN0aW5nIEdST1VQL1ZFUlNJT04uIFNlZSBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy9yZWZlcmVuY2UvdXNpbmctYXBpL2FwaS1vdmVydmlldy8jYXBpLWdyb3Vwc2ApO1xufVxuIl19
|
|
143
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLW9iamVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9hcGktb2JqZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsMkNBQXlEO0FBQ3pELG1DQUF3QztBQUN4QyxtQ0FBZ0M7QUFDaEMsNkNBQXlDO0FBQ3pDLHlDQUE0RTtBQUM1RSx1Q0FBb0M7QUE0Q3BDLE1BQU0saUJBQWlCLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0FBRXhELE1BQWEsU0FBVSxTQUFRLHNCQUFTO0lBRXRDOzs7Ozs7T0FNRztJQUNILE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBTTtRQUN2QixPQUFPLENBQUMsS0FBSyxJQUFJLElBQUksT0FBTyxDQUFDLEtBQUssUUFBUSxJQUFJLGlCQUFpQixJQUFJLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxNQUFNLENBQUMsMkJBQUMsTUFBTSxDQUFDLFdBQVcsRUFBQyxDQUFDLENBQVU7UUFDcEMsT0FBTyxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFDRDs7Ozs7OztPQU9HO0lBQ0ksTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFhO1FBQzVCLElBQUksQ0FBQyxZQUFZLFNBQVMsRUFBRTtZQUMxQixPQUFPLENBQUMsQ0FBQztTQUNWO1FBRUQsTUFBTSxLQUFLLEdBQUcsaUJBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDO1FBQ3RDLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDVixNQUFNLElBQUksS0FBSyxDQUFDLDRFQUE0RSxpQkFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1NBQ2hIO1FBRUQsT0FBTyxTQUFTLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUEwQ0Q7Ozs7OztPQU1HO0lB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QUFDO2FBQ3hCO1NBQ0Y7UUFFRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDOztBQXpLSCw4QkEwS0M7O0FBRUQsU0FBUyxhQUFhLENBQUMsVUFBa0I7SUFDdkMsTUFBTSxDQUFDLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUVoQyx3QkFBd0I7SUFDeEIsMEVBQTBFO0lBQzFFLElBQUksQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7UUFDbEIsT0FBTyxNQUFNLENBQUM7S0FDZjtJQUVELElBQUksQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7UUFDbEIsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7S0FDYjtJQUVELE1BQU0sSUFBSSxLQUFLLENBQUMsc0JBQXNCLFVBQVUsd0dBQXdHLENBQUMsQ0FBQztBQUM1SixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29uc3RydWN0LCBJQ29uc3RydWN0LCBOb2RlIH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQgeyBzYW5pdGl6ZVZhbHVlIH0gZnJvbSAnLi9fdXRpbCc7XG5pbXBvcnQgeyBDaGFydCB9IGZyb20gJy4vY2hhcnQnO1xuaW1wb3J0IHsgSnNvblBhdGNoIH0gZnJvbSAnLi9qc29uLXBhdGNoJztcbmltcG9ydCB7IEFwaU9iamVjdE1ldGFkYXRhLCBBcGlPYmplY3RNZXRhZGF0YURlZmluaXRpb24gfSBmcm9tICcuL21ldGFkYXRhJztcbmltcG9ydCB7IHJlc29sdmUgfSBmcm9tICcuL3Jlc29sdmUnO1xuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGRlZmluaW5nIEFQSSBvYmplY3RzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFwaU9iamVjdFByb3BzIHtcbiAgLyoqXG4gICAqIE9iamVjdCBtZXRhZGF0YS5cbiAgICpcbiAgICogSWYgYG5hbWVgIGlzIG5vdCBzcGVjaWZpZWQsIGFuIGFwcC11bmlxdWUgbmFtZSB3aWxsIGJlIGFsbG9jYXRlZCBieSB0aGVcbiAgICogZnJhbWV3b3JrIGJhc2VkIG9uIHRoZSBwYXRoIG9mIHRoZSBjb25zdHJ1Y3Qgd2l0aGluIHRoZXMgY29uc3RydWN0IHRyZWUuXG4gICAqL1xuICByZWFkb25seSBtZXRhZGF0YT86IEFwaU9iamVjdE1ldGFkYXRhO1xuXG4gIC8qKlxuICAgKiBBUEkgdmVyc2lvbi5cbiAgICovXG4gIHJlYWRvbmx5IGFwaVZlcnNpb246IHN0cmluZztcblxuICAvKipcbiAgICogUmVzb3VyY2Uga2luZC5cbiAgICovXG4gIHJlYWRvbmx5IGtpbmQ6IHN0cmluZztcblxuICAvKipcbiAgICogQWRkaXRpb25hbCBhdHRyaWJ1dGVzIGZvciB0aGlzIEFQSSBvYmplY3QuXG4gICAqIEBqc2lpIGlnbm9yZVxuICAgKiBAc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9jZGs4cy10ZWFtL2NkazhzLWNvcmUvaXNzdWVzLzEyOTdcbiAgICovXG4gIHJlYWRvbmx5IFtrZXk6IHN0cmluZ106IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBHcm91cFZlcnNpb25LaW5kIHtcbiAgLyoqXG4gICAqIFRoZSBvYmplY3QncyBBUEkgdmVyc2lvbiAoZS5nLiBgYXV0aG9yaXphdGlvbi5rOHMuaW8vdjFgKVxuICAgKi9cbiAgcmVhZG9ubHkgYXBpVmVyc2lvbjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgb2JqZWN0IGtpbmQuXG4gICAqL1xuICByZWFkb25seSBraW5kOiBzdHJpbmc7XG59XG5cbmNvbnN0IEFQSV9PQkpFQ1RfU1lNQk9MID0gU3ltYm9sLmZvcignY2RrOHMuQXBpT2JqZWN0Jyk7XG5cbmV4cG9ydCBjbGFzcyBBcGlPYmplY3QgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuXG4gIC8qKlxuICAgKiBSZXR1cm4gd2hldGhlciB0aGUgZ2l2ZW4gb2JqZWN0IGlzIGFuIGBBcGlPYmplY3RgLlxuICAgKlxuICAgKiBXZSBkbyBhdHRyaWJ1dGUgZGV0ZWN0aW9uIHNpbmNlIHdlIGNhbid0IHJlbGlhYmx5IHVzZSAnaW5zdGFuY2VvZicuXG5cbiAgICogQHBhcmFtIG8gVGhlIG9iamVjdCB0byBjaGVja1xuICAgKi9cbiAgc3RhdGljIGlzQXBpT2JqZWN0KG86IGFueSk6IG8gaXMgQXBpT2JqZWN0IHtcbiAgICByZXR1cm4gbyAhPT0gbnVsbCAmJiB0eXBlb2YgbyA9PT0gJ29iamVjdCcgJiYgQVBJX09CSkVDVF9TWU1CT0wgaW4gbztcbiAgfVxuXG4gIC8qKlxuICAgKiBJbXBsZW1lbnRzIGBpbnN0YW5jZW9mIEFwaU9iamVjdGAgdXNpbmcgdGhlIG1vcmUgcmVsaWFibGUgYEFwaU9iamVjdC5pc0FwaU9iamVjdGAgc3RhdGljIG1ldGhvZFxuICAgKlxuICAgKiBAcGFyYW0gbyBUaGUgb2JqZWN0IHRvIGNoZWNrXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgc3RhdGljIFtTeW1ib2wuaGFzSW5zdGFuY2VdKG86IHVua25vd24pIHtcbiAgICByZXR1cm4gQXBpT2JqZWN0LmlzQXBpT2JqZWN0KG8pO1xuICB9XG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBgQXBpT2JqZWN0YCBuYW1lZCBgUmVzb3VyY2VgIHdoaWNoIGlzIGEgY2hpbGQgb2YgdGhlIGdpdmVuXG4gICAqIGNvbnN0cnVjdC4gSWYgYGNgIGlzIGFuIGBBcGlPYmplY3RgLCBpdCBpcyByZXR1cm5lZCBkaXJlY3RseS4gVGhyb3dzIGFuXG4gICAqIGV4Y2VwdGlvbiBpZiB0aGUgY29uc3RydWN0IGRvZXMgbm90IGhhdmUgYSBjaGlsZCBuYW1lZCBgRGVmYXVsdGAgX29yXyBpZlxuICAgKiB0aGlzIGNoaWxkIGlzIG5vdCBhbiBgQXBpT2JqZWN0YC5cbiAgICpcbiAgICogQHBhcmFtIGMgVGhlIGhpZ2hlci1sZXZlbCBjb25zdHJ1Y3RcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgb2YoYzogSUNvbnN0cnVjdCk6IEFwaU9iamVjdCB7XG4gICAgaWYgKGMgaW5zdGFuY2VvZiBBcGlPYmplY3QpIHtcbiAgICAgIHJldHVybiBjO1xuICAgIH1cblxuICAgIGNvbnN0IGNoaWxkID0gTm9kZS5vZihjKS5kZWZhdWx0Q2hpbGQ7XG4gICAgaWYgKCFjaGlsZCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBjYW5ub3QgZmluZCBhIChkaXJlY3Qgb3IgaW5kaXJlY3QpIGNoaWxkIG9mIHR5cGUgQXBpT2JqZWN0IGZvciBjb25zdHJ1Y3QgJHtOb2RlLm9mKGMpLnBhdGh9YCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIEFwaU9iamVjdC5vZihjaGlsZCk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIEFQSSBvYmplY3QuXG4gICAqXG4gICAqIElmIGEgbmFtZSBpcyBzcGVjaWZpZWQgaW4gYG1ldGFkYXRhLm5hbWVgIHRoaXMgd2lsbCBiZSB0aGUgbmFtZSByZXR1cm5lZC5cbiAgICogT3RoZXJ3aXNlLCBhIG5hbWUgd2lsbCBiZSBnZW5lcmF0ZWQgYnkgY2FsbGluZ1xuICAgKiBgQ2hhcnQub2YodGhpcykuZ2VuZXJhdGVkT2JqZWN0TmFtZSh0aGlzKWAsIHdoaWNoIGJ5IGRlZmF1bHQgdXNlcyB0aGVcbiAgICogY29uc3RydWN0IHBhdGggdG8gZ2VuZXJhdGUgYSBETlMtY29tcGF0aWJsZSBuYW1lIGZvciB0aGUgcmVzb3VyY2UuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgb2JqZWN0J3MgQVBJIHZlcnNpb24gKGUuZy4gYGF1dGhvcml6YXRpb24uazhzLmlvL3YxYClcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhcGlWZXJzaW9uOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBncm91cCBwb3J0aW9uIG9mIHRoZSBBUEkgdmVyc2lvbiAoZS5nLiBgYXV0aG9yaXphdGlvbi5rOHMuaW9gKVxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGFwaUdyb3VwOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBvYmplY3Qga2luZC5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBraW5kOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBjaGFydCBpbiB3aGljaCB0aGlzIG9iamVjdCBpcyBkZWZpbmVkLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGNoYXJ0OiBDaGFydDtcblxuICAvKipcbiAgICogTWV0YWRhdGEgYXNzb2NpYXRlZCB3aXRoIHRoaXMgQVBJIG9iamVjdC5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBtZXRhZGF0YTogQXBpT2JqZWN0TWV0YWRhdGFEZWZpbml0aW9uO1xuXG4gIC8qKlxuICAgKiBBIHNldCBvZiBKU09OIHBhdGNoIG9wZXJhdGlvbnMgdG8gYXBwbHkgdG8gdGhlIGRvY3VtZW50IGFmdGVyIHN5bnRoZXNpcy5cbiAgICovXG4gIHByaXZhdGUgcmVhZG9ubHkgcGF0Y2hlczogQXJyYXk8SnNvblBhdGNoPjtcblxuICAvKipcbiAgICogRGVmaW5lcyBhbiBBUEkgb2JqZWN0LlxuICAgKlxuICAgKiBAcGFyYW0gc2NvcGUgdGhlIGNvbnN0cnVjdCBzY29wZVxuICAgKiBAcGFyYW0gaWQgbmFtZXNwYWNlXG4gICAqIEBwYXJhbSBwcm9wcyBvcHRpb25zXG4gICAqL1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcml2YXRlIHJlYWRvbmx5IHByb3BzOiBBcGlPYmplY3RQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG4gICAgdGhpcy5wYXRjaGVzID0gbmV3IEFycmF5PEpzb25QYXRjaD4oKTtcbiAgICB0aGlzLmNoYXJ0ID0gQ2hhcnQub2YodGhpcyk7XG4gICAgdGhpcy5raW5kID0gcHJvcHMua2luZDtcbiAgICB0aGlzLmFwaVZlcnNpb24gPSBwcm9wcy5hcGlWZXJzaW9uO1xuICAgIHRoaXMuYXBpR3JvdXAgPSBwYXJzZUFwaUdyb3VwKHRoaXMuYXBpVmVyc2lvbik7XG5cbiAgICB0aGlzLm5hbWUgPSBwcm9wcy5tZXRhZGF0YT8ubmFtZSA/PyB0aGlzLmNoYXJ0LmdlbmVyYXRlT2JqZWN0TmFtZSh0aGlzKTtcblxuICAgIHRoaXMubWV0YWRhdGEgPSBuZXcgQXBpT2JqZWN0TWV0YWRhdGFEZWZpbml0aW9uKHtcbiAgICAgIG5hbWU6IHRoaXMubmFtZSxcblxuICAgICAgLy8gdXNlciBkZWZpbmVkIHZhbHVlc1xuICAgICAgLi4ucHJvcHMubWV0YWRhdGEsXG5cbiAgICAgIG5hbWVzcGFjZTogcHJvcHMubWV0YWRhdGE/Lm5hbWVzcGFjZSA/PyB0aGlzLmNoYXJ0Lm5hbWVzcGFjZSxcbiAgICAgIGxhYmVsczoge1xuICAgICAgICAuLi50aGlzLmNoYXJ0LmxhYmVscyxcbiAgICAgICAgLi4ucHJvcHMubWV0YWRhdGE/LmxhYmVscyxcbiAgICAgIH0sXG4gICAgICBhcGlPYmplY3Q6IHRoaXMsXG4gICAgfSk7XG5cbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgQVBJX09CSkVDVF9TWU1CT0wsIHsgdmFsdWU6IHRydWUgfSk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGEgZGVwZW5kZW5jeSBiZXR3ZWVuIHRoaXMgQXBpT2JqZWN0IGFuZCBvdGhlciBjb25zdHJ1Y3RzLlxuICAgKiBUaGVzZSBjYW4gYmUgb3RoZXIgQXBpT2JqZWN0cywgQ2hhcnRzLCBvciBjdXN0b20uXG4gICAqXG4gICAqIEBwYXJhbSBkZXBlbmRlbmNpZXMgdGhlIGRlcGVuZGVuY2llcyB0byBhZGQuXG4gICAqL1xuICBwdWJsaWMgYWRkRGVwZW5kZW5jeSguLi5kZXBlbmRlbmNpZXM6IElDb25zdHJ1Y3RbXSkge1xuICAgIE5vZGUub2YodGhpcykuYWRkRGVwZW5kZW5jeSguLi5kZXBlbmRlbmNpZXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFwcGxpZXMgYSBzZXQgb2YgUkZDLTY5MDIgSlNPTi1QYXRjaCBvcGVyYXRpb25zIHRvIHRoZSBtYW5pZmVzdFxuICAgKiBzeW50aGVzaXplZCBmb3IgdGhpcyBBUEkgb2JqZWN0LlxuICAgKlxuICAgKiBAcGFyYW0gb3BzIFRoZSBKU09OLVBhdGNoIG9wZXJhdGlvbnMgdG8gYXBwbHkuXG4gICAqXG4gICAqIEBleGFtcGxlXG4gICAqXG4gICAqICAga3ViZVBvZC5hZGRKc29uUGF0Y2goSnNvblBhdGNoLnJlcGxhY2UoJy9zcGVjL2VuYWJsZVNlcnZpY2VMaW5rcycsIHRydWUpKTtcbiAgICpcbiAgICovXG4gIHB1YmxpYyBhZGRKc29uUGF0Y2goLi4ub3BzOiBKc29uUGF0Y2hbXSkge1xuICAgIHRoaXMucGF0Y2hlcy5wdXNoKC4uLm9wcyk7XG4gIH1cblxuICAvKipcbiAgICogUmVuZGVycyB0aGUgb2JqZWN0IHRvIEt1YmVybmV0ZXMgSlNPTi5cbiAgICpcbiAgICogVG8gZGlzYWJsZSBzb3J0aW5nIG9mIGRpY3Rpb25hcnkga2V5cyBpbiBvdXRwdXQgb2JqZWN0IHNldCB0aGVcbiAgICogYENESzhTX0RJU0FCTEVfU09SVGAgZW52aXJvbm1lbnQgdmFyaWFibGUgdG8gYW55IG5vbi1lbXB0eSB2YWx1ZS5cbiAgICovXG4gIHB1YmxpYyB0b0pzb24oKTogYW55IHtcbiAgICBjb25zdCBkYXRhOiBhbnkgPSB7XG4gICAgICAuLi50aGlzLnByb3BzLFxuICAgICAgbWV0YWRhdGE6IHRoaXMubWV0YWRhdGEudG9Kc29uKCksXG4gICAgfTtcblxuICAgIGNvbnN0IHNvcnRLZXlzID0gcHJvY2Vzcy5lbnYuQ0RLOFNfRElTQUJMRV9TT1JUID8gZmFsc2UgOiB0cnVlO1xuICAgIGNvbnN0IGpzb24gPSBzYW5pdGl6ZVZhbHVlKHJlc29sdmUoW10sIGRhdGEsIHRoaXMpLCB7IHNvcnRLZXlzIH0pO1xuICAgIGNvbnN0IHBhdGNoZWQgPSBKc29uUGF0Y2guYXBwbHkoanNvbiwgLi4udGhpcy5wYXRjaGVzKTtcblxuICAgIC8vIHJlb3JkZXIgdG9wLWxldmVsIGtleXMgc28gdGhhdCB3ZSBmaXJzdCBoYXZlIFwiYXBpVmVyc2lvblwiLCBcImtpbmRcIiBhbmRcbiAgICAvLyBcIm1ldGFkYXRhXCIgYW5kIHRoZW4gYWxsIHRoZSByZXN0XG4gICAgY29uc3QgcmVzdWx0OiBhbnkgPSB7fTtcbiAgICBjb25zdCBvcmRlcmVkS2V5cyA9IFsnYXBpVmVyc2lvbicsICdraW5kJywgJ21ldGFkYXRhJywgLi4uT2JqZWN0LmtleXMocGF0Y2hlZCldO1xuICAgIGZvciAoY29uc3QgayBvZiBvcmRlcmVkS2V5cykge1xuICAgICAgaWYgKGsgaW4gcGF0Y2hlZCkge1xuICAgICAgICByZXN1bHRba10gPSBwYXRjaGVkW2tdO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cbn1cblxuZnVuY3Rpb24gcGFyc2VBcGlHcm91cChhcGlWZXJzaW9uOiBzdHJpbmcpIHtcbiAgY29uc3QgdiA9IGFwaVZlcnNpb24uc3BsaXQoJy8nKTtcblxuICAvLyBubyBncm91cCBtZWFucyBcImNvcmVcIlxuICAvLyBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy9yZWZlcmVuY2UvdXNpbmctYXBpL2FwaS1vdmVydmlldy8jYXBpLWdyb3Vwc1xuICBpZiAodi5sZW5ndGggPT09IDEpIHtcbiAgICByZXR1cm4gJ2NvcmUnO1xuICB9XG5cbiAgaWYgKHYubGVuZ3RoID09PSAyKSB7XG4gICAgcmV0dXJuIHZbMF07XG4gIH1cblxuICB0aHJvdyBuZXcgRXJyb3IoYGludmFsaWQgYXBpVmVyc2lvbiAke2FwaVZlcnNpb259LCBleHBlY3RpbmcgR1JPVVAvVkVSU0lPTi4gU2VlIGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL3JlZmVyZW5jZS91c2luZy1hcGkvYXBpLW92ZXJ2aWV3LyNhcGktZ3JvdXBzYCk7XG59XG4iXX0=
|
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.
|