@microsoft/terraform-cdk-constructs 0.0.3-pre.10 → 0.0.3-pre.12

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.
Files changed (202) hide show
  1. package/.jsii +858 -681
  2. package/API.md +499 -405
  3. package/README.md +4 -5
  4. package/docs/testing.md +39 -137
  5. package/lib/azure-actiongroup/lib/actiongroup.d.ts +1 -1
  6. package/lib/azure-actiongroup/lib/actiongroup.js +4 -4
  7. package/lib/azure-actiongroup/model/action-group-props.d.ts +3 -2
  8. package/lib/azure-actiongroup/model/action-group-props.js +1 -1
  9. package/lib/azure-actiongroup/test/AzureActionGroup.integ.js +66 -0
  10. package/lib/azure-actiongroup/test/AzureActionGroup.spec.js +5 -33
  11. package/lib/azure-applicationgateway/lib/gateway.d.ts +5 -3
  12. package/lib/azure-applicationgateway/lib/gateway.js +14 -7
  13. package/lib/azure-applicationgateway/test/AzureApplicationGateway.integ.d.ts +1 -0
  14. package/lib/azure-applicationgateway/test/AzureApplicationGateway.integ.js +272 -0
  15. package/lib/azure-applicationgateway/test/AzureApplicationGateway.spec.js +3 -35
  16. package/lib/azure-applicationinsights/lib/appinsights.d.ts +4 -3
  17. package/lib/azure-applicationinsights/lib/appinsights.js +6 -6
  18. package/lib/azure-applicationinsights/test/AzureAppInsights.integ.d.ts +1 -0
  19. package/lib/azure-applicationinsights/test/AzureAppInsights.integ.js +101 -0
  20. package/lib/azure-applicationinsights/test/AzureAppInsights.spec.js +4 -27
  21. package/lib/azure-containerregistry/lib/registry.d.ts +4 -3
  22. package/lib/azure-containerregistry/lib/registry.js +5 -5
  23. package/lib/azure-containerregistry/test/AzureContainerRegistry.integ.d.ts +1 -0
  24. package/lib/azure-containerregistry/test/AzureContainerRegistry.integ.js +68 -0
  25. package/lib/azure-containerregistry/test/AzureContainerRegistry.spec.js +4 -23
  26. package/lib/azure-datalake/lib/datalake.d.ts +1 -0
  27. package/lib/azure-datalake/lib/datalake.js +2 -1
  28. package/lib/azure-datalake/test/AzureDatalake.spec.d.ts +1 -0
  29. package/lib/azure-datalake/test/AzureDatalake.spec.js +32 -0
  30. package/lib/azure-datalake/test/AzureStorageAccount.integ.d.ts +1 -0
  31. package/lib/azure-datalake/test/AzureStorageAccount.integ.js +60 -0
  32. package/lib/azure-eventhub/lib/authorization.js +1 -1
  33. package/lib/azure-eventhub/lib/consumer.js +1 -1
  34. package/lib/azure-eventhub/lib/{cluster.d.ts → eventhubcluster.d.ts} +11 -7
  35. package/lib/azure-eventhub/lib/eventhubcluster.js +64 -0
  36. package/lib/azure-eventhub/lib/index.d.ts +1 -1
  37. package/lib/azure-eventhub/lib/index.js +2 -2
  38. package/lib/azure-eventhub/lib/instance.d.ts +1 -0
  39. package/lib/azure-eventhub/lib/instance.js +5 -4
  40. package/lib/azure-eventhub/lib/kusto-connection.js +1 -1
  41. package/lib/azure-eventhub/lib/namespace.d.ts +7 -6
  42. package/lib/azure-eventhub/lib/namespace.js +24 -26
  43. package/lib/azure-eventhub/test/AzureEventhub.integ.d.ts +1 -0
  44. package/lib/azure-eventhub/test/AzureEventhub.integ.js +72 -0
  45. package/lib/azure-eventhub/test/AzureEventhub.spec.js +4 -27
  46. package/lib/azure-functionapp/lib/functionapplinux.js +1 -1
  47. package/lib/azure-functionapp/test/AzureLinuxFunctionApp.integ.d.ts +1 -0
  48. package/lib/azure-functionapp/test/AzureLinuxFunctionApp.integ.js +117 -0
  49. package/lib/azure-functionapp/test/AzureLinuxFunctionApp.spec.js +4 -21
  50. package/lib/azure-keyvault/lib/certificate.js +2 -2
  51. package/lib/azure-keyvault/lib/key.js +1 -1
  52. package/lib/azure-keyvault/lib/policy.js +1 -1
  53. package/lib/azure-keyvault/lib/secret.js +1 -1
  54. package/lib/azure-keyvault/lib/vault.d.ts +3 -2
  55. package/lib/azure-keyvault/lib/vault.js +4 -4
  56. package/lib/azure-keyvault/test/AzureKeyVault.integ.d.ts +1 -0
  57. package/lib/azure-keyvault/test/AzureKeyVault.integ.js +119 -0
  58. package/lib/azure-keyvault/test/AzureKeyVault.spec.js +4 -35
  59. package/lib/azure-kubernetes/lib/cluster.js +1 -1
  60. package/lib/azure-kubernetes/test/AzureKubernetesCluster.integ.d.ts +1 -0
  61. package/lib/azure-kubernetes/test/AzureKubernetesCluster.integ.js +75 -0
  62. package/lib/azure-kubernetes/test/AzureKubernetesCluster.spec.js +4 -21
  63. package/lib/azure-kusto/lib/cluster.d.ts +9 -5
  64. package/lib/azure-kusto/lib/cluster.js +66 -42
  65. package/lib/azure-kusto/lib/compute-specification.js +1 -1
  66. package/lib/azure-kusto/lib/database.d.ts +7 -8
  67. package/lib/azure-kusto/lib/database.js +23 -25
  68. package/lib/azure-kusto/test/AzureKusto.integ.d.ts +1 -0
  69. package/lib/azure-kusto/test/AzureKusto.integ.js +74 -0
  70. package/lib/azure-kusto/test/AzureKusto.spec.js +3 -22
  71. package/lib/azure-loganalytics/lib/workspace.d.ts +6 -3
  72. package/lib/azure-loganalytics/lib/workspace.js +7 -6
  73. package/lib/azure-loganalytics/test/AzureLogAnalytics.integ.d.ts +1 -0
  74. package/lib/azure-loganalytics/test/AzureLogAnalytics.integ.js +117 -0
  75. package/lib/azure-loganalytics/test/AzureLogAnalytics.spec.js +4 -23
  76. package/lib/azure-metricalert/lib/metric-alert.js +1 -1
  77. package/lib/azure-metricalert/test/AzureMetricAlert.integ.d.ts +1 -0
  78. package/lib/azure-metricalert/test/AzureMetricAlert.integ.js +85 -0
  79. package/lib/azure-metricalert/test/AzureMetricAlert.spec.js +4 -21
  80. package/lib/azure-networksecuritygroup/lib/preconfigured-rules.js +1 -1
  81. package/lib/azure-networksecuritygroup/lib/securitygroup.d.ts +4 -3
  82. package/lib/azure-networksecuritygroup/lib/securitygroup.js +7 -7
  83. package/lib/azure-networksecuritygroup/test/AzureNetworkSecurityGroup.integ.d.ts +1 -0
  84. package/lib/azure-networksecuritygroup/test/AzureNetworkSecurityGroup.integ.js +85 -0
  85. package/lib/azure-networksecuritygroup/test/AzureNetworkSecurityGroup.spec.js +4 -23
  86. package/lib/azure-queryrulealert/lib/query-rule-alert.js +1 -1
  87. package/lib/azure-queryrulealert/test/AzureQueryRuleAlert.integ.d.ts +1 -0
  88. package/lib/azure-queryrulealert/test/AzureQueryRuleAlert.integ.js +63 -0
  89. package/lib/azure-queryrulealert/test/AzureQueryRuleAlert.spec.js +4 -21
  90. package/lib/azure-resourcegroup/lib/resource-group.js +1 -1
  91. package/lib/azure-resourcegroup/test/AzureResourceGroup.integ.d.ts +1 -0
  92. package/lib/azure-resourcegroup/test/AzureResourceGroup.integ.js +41 -0
  93. package/lib/azure-resourcegroup/test/AzureResourceGroup.spec.js +4 -17
  94. package/lib/azure-storageaccount/lib/account.d.ts +5 -0
  95. package/lib/azure-storageaccount/lib/account.js +3 -2
  96. package/lib/azure-storageaccount/lib/container.js +2 -2
  97. package/lib/azure-storageaccount/lib/fileshare.js +2 -2
  98. package/lib/azure-storageaccount/lib/queue.js +1 -1
  99. package/lib/azure-storageaccount/lib/table.js +1 -1
  100. package/lib/azure-storageaccount/test/AzureStorageAccount.integ.d.ts +1 -0
  101. package/lib/azure-storageaccount/test/AzureStorageAccount.integ.js +84 -0
  102. package/lib/azure-storageaccount/test/AzureStorageAccount.spec.js +4 -17
  103. package/lib/azure-virtualmachine/lib/image-references.js +2 -2
  104. package/lib/azure-virtualmachine/lib/vm.d.ts +29 -6
  105. package/lib/azure-virtualmachine/lib/vm.js +17 -15
  106. package/lib/azure-virtualmachine/test/AzureLinuxVirtualMachine.integ.d.ts +1 -0
  107. package/lib/azure-virtualmachine/test/AzureLinuxVirtualMachine.integ.js +109 -0
  108. package/lib/azure-virtualmachine/test/AzureLinuxVirtualMachine.spec.js +5 -25
  109. package/lib/azure-virtualmachine/test/AzureWindowsVirtualMachine.integ.d.ts +1 -0
  110. package/lib/azure-virtualmachine/test/AzureWindowsVirtualMachine.integ.js +105 -0
  111. package/lib/azure-virtualmachine/test/AzureWindowsVirtualMachine.spec.js +4 -23
  112. package/lib/azure-virtualmachinescaleset/lib/cluster.d.ts +28 -6
  113. package/lib/azure-virtualmachinescaleset/lib/cluster.js +13 -11
  114. package/lib/azure-virtualmachinescaleset/test/AzureLinuxVirtualMachineScaleSet.integ.d.ts +1 -0
  115. package/lib/azure-virtualmachinescaleset/test/AzureLinuxVirtualMachineScaleSet.integ.js +113 -0
  116. package/lib/azure-virtualmachinescaleset/test/AzureLinuxVirtualMachineScaleSet.spec.js +5 -25
  117. package/lib/azure-virtualmachinescaleset/test/AzureWindowsVirtualMachineScaleSet.integ.d.ts +1 -0
  118. package/lib/azure-virtualmachinescaleset/test/AzureWindowsVirtualMachineScaleSet.integ.js +109 -0
  119. package/lib/azure-virtualmachinescaleset/test/AzureWindowsVirtualMachineScaleSet.spec.js +4 -23
  120. package/lib/azure-virtualnetwork/lib/network.d.ts +4 -3
  121. package/lib/azure-virtualnetwork/lib/network.js +7 -6
  122. package/lib/azure-virtualnetwork/lib/peering.js +1 -1
  123. package/lib/azure-virtualnetwork/test/AzureVirtualNetwork.integ.d.ts +1 -0
  124. package/lib/azure-virtualnetwork/test/AzureVirtualNetwork.integ.js +92 -0
  125. package/lib/azure-virtualnetwork/test/AzureVirtualNetwork.spec.js +5 -25
  126. package/lib/core-azure/lib/diagsettings.d.ts +3 -2
  127. package/lib/core-azure/lib/diagsettings.js +15 -21
  128. package/lib/core-azure/lib/rbac.js +1 -1
  129. package/lib/core-azure/lib/resource.js +6 -4
  130. package/lib/core-azure/test/AzureResource.integ.d.ts +1 -0
  131. package/lib/core-azure/test/AzureResource.integ.js +75 -0
  132. package/lib/testing/index.d.ts +34 -0
  133. package/lib/testing/index.js +235 -2
  134. package/package.json +32 -11
  135. package/cdktf.out/manifest.json +0 -13
  136. package/cdktf.out/stacks/testAzureActionGroup/cdk.tf.json +0 -111
  137. package/cdktf.out/stacks/testAzureApplicationGateway/cdk.tf.json +0 -588
  138. package/cdktf.out/stacks/testAzureApplicationInsights/cdk.tf.json +0 -245
  139. package/cdktf.out/stacks/testAzureContainerRegistry/cdk.tf.json +0 -179
  140. package/cdktf.out/stacks/testAzureEventhub/cdk.tf.json +0 -236
  141. package/cdktf.out/stacks/testAzureKeyVault/cdk.tf.json +0 -436
  142. package/cdktf.out/stacks/testAzureKubernetesCluster/cdk.tf.json +0 -152
  143. package/cdktf.out/stacks/testAzureKusto/cdk.tf.json +0 -209
  144. package/cdktf.out/stacks/testAzureLinuxFunctionApp/cdk.tf.json +0 -439
  145. package/cdktf.out/stacks/testAzureLinuxVirtualMachineExample/cdk.tf.json +0 -283
  146. package/cdktf.out/stacks/testAzureLinuxVirtualMachineScaleSetExample/cdk.tf.json +0 -261
  147. package/cdktf.out/stacks/testAzureLogAnalytics/cdk.tf.json +0 -309
  148. package/cdktf.out/stacks/testAzureMetricAlert/cdk.tf.json +0 -161
  149. package/cdktf.out/stacks/testAzureNetworkSecurityGroup/cdk.tf.json +0 -271
  150. package/cdktf.out/stacks/testAzureQueryRuleAlert/cdk.tf.json +0 -122
  151. package/cdktf.out/stacks/testAzureResourceGroup/cdk.tf.json +0 -88
  152. package/cdktf.out/stacks/testAzureStorageAccount/cdk.tf.json +0 -339
  153. package/cdktf.out/stacks/testAzureVirtualNetwork/cdk.tf.json +0 -264
  154. package/cdktf.out/stacks/testAzureWindowVirtualMachineScaleSetExample/cdk.tf.json +0 -261
  155. package/cdktf.out/stacks/testAzureWindowsVirtualMachineExample/cdk.tf.json +0 -280
  156. package/cdktf.out/stacks/testExampleAzureResource/cdk.tf.json +0 -167
  157. package/lib/azure-actiongroup/test/ExampleAzureActionGroup.d.ts +0 -5
  158. package/lib/azure-actiongroup/test/ExampleAzureActionGroup.js +0 -66
  159. package/lib/azure-applicationgateway/test/ExampleAzureApplicationGateway.d.ts +0 -5
  160. package/lib/azure-applicationgateway/test/ExampleAzureApplicationGateway.js +0 -267
  161. package/lib/azure-applicationinsights/test/ExampleAzureApplicationInsights.d.ts +0 -5
  162. package/lib/azure-applicationinsights/test/ExampleAzureApplicationInsights.js +0 -87
  163. package/lib/azure-containerregistry/test/ExampleAzureContainerRegistry.d.ts +0 -5
  164. package/lib/azure-containerregistry/test/ExampleAzureContainerRegistry.js +0 -57
  165. package/lib/azure-eventhub/lib/cluster.js +0 -64
  166. package/lib/azure-eventhub/test/ExampleAzureEventhub.d.ts +0 -5
  167. package/lib/azure-eventhub/test/ExampleAzureEventhub.js +0 -72
  168. package/lib/azure-functionapp/test/ExampleAzureLinuxFunctionApp.d.ts +0 -5
  169. package/lib/azure-functionapp/test/ExampleAzureLinuxFunctionApp.js +0 -123
  170. package/lib/azure-keyvault/test/ExampleAzureKeyVault.d.ts +0 -5
  171. package/lib/azure-keyvault/test/ExampleAzureKeyVault.js +0 -112
  172. package/lib/azure-kubernetes/test/ExampleAzureKubernetesCluster.d.ts +0 -5
  173. package/lib/azure-kubernetes/test/ExampleAzureKubernetesCluster.js +0 -65
  174. package/lib/azure-kusto/test/ExampleAzureKusto.d.ts +0 -5
  175. package/lib/azure-kusto/test/ExampleAzureKusto.js +0 -71
  176. package/lib/azure-loganalytics/test/ExampleAzureLogAnalytics.d.ts +0 -5
  177. package/lib/azure-loganalytics/test/ExampleAzureLogAnalytics.js +0 -115
  178. package/lib/azure-metricalert/test/ExampleAzureMetricAlert.d.ts +0 -5
  179. package/lib/azure-metricalert/test/ExampleAzureMetricAlert.js +0 -81
  180. package/lib/azure-networksecuritygroup/test/ExampleAzureNetworkSecurityGroup.d.ts +0 -5
  181. package/lib/azure-networksecuritygroup/test/ExampleAzureNetworkSecurityGroup.js +0 -97
  182. package/lib/azure-queryrulealert/test/ExampleAzureQueryRuleAlert.d.ts +0 -5
  183. package/lib/azure-queryrulealert/test/ExampleAzureQueryRuleAlert.js +0 -67
  184. package/lib/azure-resourcegroup/test/ExampleAzureResourceGroup.d.ts +0 -5
  185. package/lib/azure-resourcegroup/test/ExampleAzureResourceGroup.js +0 -29
  186. package/lib/azure-storageaccount/test/ExampleAzureStorageAccount.d.ts +0 -5
  187. package/lib/azure-storageaccount/test/ExampleAzureStorageAccount.js +0 -102
  188. package/lib/azure-virtualmachine/test/ExampleAzureLinuxVirtualMachine.d.ts +0 -5
  189. package/lib/azure-virtualmachine/test/ExampleAzureLinuxVirtualMachine.js +0 -106
  190. package/lib/azure-virtualmachine/test/ExampleAzureWindowsVirtualMachine.d.ts +0 -5
  191. package/lib/azure-virtualmachine/test/ExampleAzureWindowsVirtualMachine.js +0 -102
  192. package/lib/azure-virtualmachinescaleset/test/ExampleAzureLinuxVirtualMachineScaleSet.d.ts +0 -5
  193. package/lib/azure-virtualmachinescaleset/test/ExampleAzureLinuxVirtualMachineScaleSet.js +0 -107
  194. package/lib/azure-virtualmachinescaleset/test/ExampleAzureWindowsVirtualMachineScaleSet.d.ts +0 -5
  195. package/lib/azure-virtualmachinescaleset/test/ExampleAzureWindowsVirtualMachineScaleSet.js +0 -103
  196. package/lib/azure-virtualnetwork/test/ExampleAzureVirtualNetwork.d.ts +0 -5
  197. package/lib/azure-virtualnetwork/test/ExampleAzureVirtualNetwork.js +0 -88
  198. package/lib/core-azure/test/AzureResource.spec.js +0 -19
  199. package/lib/core-azure/test/ExampleAzureResource.d.ts +0 -5
  200. package/lib/core-azure/test/ExampleAzureResource.js +0 -67
  201. package/tfsec.json +0 -4
  202. /package/lib/{core-azure/test/AzureResource.spec.d.ts → azure-actiongroup/test/AzureActionGroup.integ.d.ts} +0 -0
@@ -2,10 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const provider_1 = require("@cdktf/provider-azurerm/lib/provider");
4
4
  const cdktf_1 = require("cdktf");
5
- require("cdktf/lib/testing/adapters/jest");
6
- const ExampleAzureKubernetesCluster_1 = require("./ExampleAzureKubernetesCluster");
7
5
  const aks = require("..");
8
- const util = require("../../util/azureTenantIdHelpers");
6
+ const testing_1 = require("../../testing");
7
+ require("cdktf/lib/testing/adapters/jest");
9
8
  describe("Azure Kubernetes Cluster With Defaults", () => {
10
9
  let stack;
11
10
  let fullSynthResult;
@@ -34,23 +33,7 @@ describe("Azure Kubernetes Cluster With Defaults", () => {
34
33
  expect(fullSynthResult).toBeValidTerraform(); // Use the saved result
35
34
  });
36
35
  it("check if this can be planned", () => {
37
- expect(fullSynthResult).toPlanSuccessfully(); // Use the saved result
38
- });
39
- });
40
- describe("Azure Kubernetes Cluster Example", () => {
41
- it("renders the Azure Kubernetes Cluster and checks snapshot", () => {
42
- // Need to remove the tenant_id from the snapshot as it will change wherever the test is run
43
- const output = cdktf_1.Testing.synth(new ExampleAzureKubernetesCluster_1.exampleAzureKubernetesCluster(cdktf_1.Testing.app(), "testExampleAzureKubernetesCluster"));
44
- const myObject = JSON.parse(output);
45
- expect(util.removeTenantIdFromSnapshot(myObject)).toMatchSnapshot();
46
- });
47
- it("check if the produced terraform configuration is valid", () => {
48
- // We need to do a full synth to plan the terraform configuration
49
- expect(cdktf_1.Testing.fullSynth(new ExampleAzureKubernetesCluster_1.exampleAzureKubernetesCluster(cdktf_1.Testing.app(), "testAzureLinuxFunctionApp"))).toBeValidTerraform();
50
- });
51
- it("check if this can be planned", () => {
52
- // We need to do a full synth to plan the terraform configuration
53
- expect(cdktf_1.Testing.fullSynth(new ExampleAzureKubernetesCluster_1.exampleAzureKubernetesCluster(cdktf_1.Testing.app(), "testAzureLinuxFunctionApp"))).toPlanSuccessfully();
36
+ (0, testing_1.TerraformPlan)(fullSynthResult); // Use the saved result
54
37
  });
55
38
  });
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXp1cmVLdWJlcm5ldGVzQ2x1c3Rlci5zcGVjLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2F6dXJlLWt1YmVybmV0ZXMvdGVzdC9BenVyZUt1YmVybmV0ZXNDbHVzdGVyLnNwZWMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxtRUFBdUU7QUFDdkUsaUNBQWdEO0FBQ2hELDJDQUF5QztBQUN6QyxtRkFBZ0Y7QUFDaEYsMEJBQTBCO0FBQzFCLHdEQUF3RDtBQUV4RCxRQUFRLENBQUMsd0NBQXdDLEVBQUUsR0FBRyxFQUFFO0lBQ3RELElBQUksS0FBcUIsQ0FBQztJQUMxQixJQUFJLGVBQW9CLENBQUM7SUFFekIsVUFBVSxDQUFDLEdBQUcsRUFBRTtRQUNkLE1BQU0sR0FBRyxHQUFHLGVBQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUMxQixLQUFLLEdBQUcsSUFBSSxzQkFBYyxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUV4QyxJQUFJLDBCQUFlLENBQUMsS0FBSyxFQUFFLGNBQWMsRUFBRSxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRTdELElBQUksR0FBRyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsZ0JBQWdCLEVBQUU7WUFDdkMsSUFBSSxFQUFFLFNBQVM7WUFDZixRQUFRLEVBQUUsUUFBUTtZQUNsQixlQUFlLEVBQUU7Z0JBQ2YsSUFBSSxFQUFFLFNBQVM7Z0JBQ2YsU0FBUyxFQUFFLENBQUM7Z0JBQ1osTUFBTSxFQUFFLGNBQWM7YUFDdkI7WUFDRCxRQUFRLEVBQUU7Z0JBQ1IsSUFBSSxFQUFFLGdCQUFnQjthQUN2QjtTQUNGLENBQUMsQ0FBQztRQUVILGVBQWUsR0FBRyxlQUFPLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsNEJBQTRCO0lBQzFFLENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLHVFQUF1RSxFQUFFLEdBQUcsRUFBRTtRQUMvRSxNQUFNLENBQUMsZUFBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLGVBQWUsRUFBRSxDQUFDLENBQUMscUNBQXFDO0lBQ3ZGLENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLHdEQUF3RCxFQUFFLEdBQUcsRUFBRTtRQUNoRSxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDLHVCQUF1QjtJQUN2RSxDQUFDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyw4QkFBOEIsRUFBRSxHQUFHLEVBQUU7UUFDdEMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBQyx1QkFBdUI7SUFDdkUsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQztBQUVILFFBQVEsQ0FBQyxrQ0FBa0MsRUFBRSxHQUFHLEVBQUU7SUFDaEQsRUFBRSxDQUFDLDBEQUEwRCxFQUFFLEdBQUcsRUFBRTtRQUNsRSw0RkFBNEY7UUFDNUYsTUFBTSxNQUFNLEdBQUcsZUFBTyxDQUFDLEtBQUssQ0FDMUIsSUFBSSw2REFBNkIsQ0FDL0IsZUFBTyxDQUFDLEdBQUcsRUFBRSxFQUNiLG1DQUFtQyxDQUNwQyxDQUNGLENBQUM7UUFDRixNQUFNLFFBQVEsR0FBd0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUV6RCxNQUFNLENBQUMsSUFBSSxDQUFDLDBCQUEwQixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDdEUsQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsd0RBQXdELEVBQUUsR0FBRyxFQUFFO1FBQ2hFLGlFQUFpRTtRQUNqRSxNQUFNLENBQ0osZUFBTyxDQUFDLFNBQVMsQ0FDZixJQUFJLDZEQUE2QixDQUMvQixlQUFPLENBQUMsR0FBRyxFQUFFLEVBQ2IsMkJBQTJCLENBQzVCLENBQ0YsQ0FDRixDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDekIsQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsOEJBQThCLEVBQUUsR0FBRyxFQUFFO1FBQ3RDLGlFQUFpRTtRQUNqRSxNQUFNLENBQ0osZUFBTyxDQUFDLFNBQVMsQ0FDZixJQUFJLDZEQUE2QixDQUMvQixlQUFPLENBQUMsR0FBRyxFQUFFLEVBQ2IsMkJBQTJCLENBQzVCLENBQ0YsQ0FDRixDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDekIsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEF6dXJlcm1Qcm92aWRlciB9IGZyb20gXCJAY2RrdGYvcHJvdmlkZXItYXp1cmVybS9saWIvcHJvdmlkZXJcIjtcbmltcG9ydCB7IFRlc3RpbmcsIFRlcnJhZm9ybVN0YWNrIH0gZnJvbSBcImNka3RmXCI7XG5pbXBvcnQgXCJjZGt0Zi9saWIvdGVzdGluZy9hZGFwdGVycy9qZXN0XCI7XG5pbXBvcnQgeyBleGFtcGxlQXp1cmVLdWJlcm5ldGVzQ2x1c3RlciB9IGZyb20gXCIuL0V4YW1wbGVBenVyZUt1YmVybmV0ZXNDbHVzdGVyXCI7XG5pbXBvcnQgKiBhcyBha3MgZnJvbSBcIi4uXCI7XG5pbXBvcnQgKiBhcyB1dGlsIGZyb20gXCIuLi8uLi91dGlsL2F6dXJlVGVuYW50SWRIZWxwZXJzXCI7XG5cbmRlc2NyaWJlKFwiQXp1cmUgS3ViZXJuZXRlcyBDbHVzdGVyIFdpdGggRGVmYXVsdHNcIiwgKCkgPT4ge1xuICBsZXQgc3RhY2s6IFRlcnJhZm9ybVN0YWNrO1xuICBsZXQgZnVsbFN5bnRoUmVzdWx0OiBhbnk7XG5cbiAgYmVmb3JlRWFjaCgoKSA9PiB7XG4gICAgY29uc3QgYXBwID0gVGVzdGluZy5hcHAoKTtcbiAgICBzdGFjayA9IG5ldyBUZXJyYWZvcm1TdGFjayhhcHAsIFwidGVzdFwiKTtcblxuICAgIG5ldyBBenVyZXJtUHJvdmlkZXIoc3RhY2ssIFwiYXp1cmVGZWF0dXJlXCIsIHsgZmVhdHVyZXM6IHt9IH0pO1xuXG4gICAgbmV3IGFrcy5DbHVzdGVyKHN0YWNrLCBcInRlc3RBa3NDbHVzdGVyXCIsIHtcbiAgICAgIG5hbWU6IFwiYWtzdGVzdFwiLFxuICAgICAgbG9jYXRpb246IFwiZWFzdHVzXCIsXG4gICAgICBkZWZhdWx0Tm9kZVBvb2w6IHtcbiAgICAgICAgbmFtZTogXCJkZWZhdWx0XCIsXG4gICAgICAgIG5vZGVDb3VudDogMSxcbiAgICAgICAgdm1TaXplOiBcIlN0YW5kYXJkX0Iyc1wiLFxuICAgICAgfSxcbiAgICAgIGlkZW50aXR5OiB7XG4gICAgICAgIHR5cGU6IFwiU3lzdGVtQXNzaWduZWRcIixcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICBmdWxsU3ludGhSZXN1bHQgPSBUZXN0aW5nLmZ1bGxTeW50aChzdGFjayk7IC8vIFNhdmUgdGhlIHJlc3VsdCBmb3IgcmV1c2VcbiAgfSk7XG5cbiAgaXQoXCJyZW5kZXJzIGFuIEF6dXJlIEt1YmVybmV0ZXMgQ2x1c3RlciB3aXRoIGRlZmF1bHRzIGFuZCBjaGVja3Mgc25hcHNob3RcIiwgKCkgPT4ge1xuICAgIGV4cGVjdChUZXN0aW5nLnN5bnRoKHN0YWNrKSkudG9NYXRjaFNuYXBzaG90KCk7IC8vIENvbXBhcmUgdGhlIGFscmVhZHkgcHJlcGFyZWQgc3RhY2tcbiAgfSk7XG5cbiAgaXQoXCJjaGVjayBpZiB0aGUgcHJvZHVjZWQgdGVycmFmb3JtIGNvbmZpZ3VyYXRpb24gaXMgdmFsaWRcIiwgKCkgPT4ge1xuICAgIGV4cGVjdChmdWxsU3ludGhSZXN1bHQpLnRvQmVWYWxpZFRlcnJhZm9ybSgpOyAvLyBVc2UgdGhlIHNhdmVkIHJlc3VsdFxuICB9KTtcblxuICBpdChcImNoZWNrIGlmIHRoaXMgY2FuIGJlIHBsYW5uZWRcIiwgKCkgPT4ge1xuICAgIGV4cGVjdChmdWxsU3ludGhSZXN1bHQpLnRvUGxhblN1Y2Nlc3NmdWxseSgpOyAvLyBVc2UgdGhlIHNhdmVkIHJlc3VsdFxuICB9KTtcbn0pO1xuXG5kZXNjcmliZShcIkF6dXJlIEt1YmVybmV0ZXMgQ2x1c3RlciBFeGFtcGxlXCIsICgpID0+IHtcbiAgaXQoXCJyZW5kZXJzIHRoZSBBenVyZSBLdWJlcm5ldGVzIENsdXN0ZXIgYW5kIGNoZWNrcyBzbmFwc2hvdFwiLCAoKSA9PiB7XG4gICAgLy8gTmVlZCB0byByZW1vdmUgdGhlIHRlbmFudF9pZCBmcm9tIHRoZSBzbmFwc2hvdCBhcyBpdCB3aWxsIGNoYW5nZSB3aGVyZXZlciB0aGUgdGVzdCBpcyBydW5cbiAgICBjb25zdCBvdXRwdXQgPSBUZXN0aW5nLnN5bnRoKFxuICAgICAgbmV3IGV4YW1wbGVBenVyZUt1YmVybmV0ZXNDbHVzdGVyKFxuICAgICAgICBUZXN0aW5nLmFwcCgpLFxuICAgICAgICBcInRlc3RFeGFtcGxlQXp1cmVLdWJlcm5ldGVzQ2x1c3RlclwiLFxuICAgICAgKSxcbiAgICApO1xuICAgIGNvbnN0IG15T2JqZWN0OiBSZWNvcmQ8c3RyaW5nLCBhbnk+ID0gSlNPTi5wYXJzZShvdXRwdXQpO1xuXG4gICAgZXhwZWN0KHV0aWwucmVtb3ZlVGVuYW50SWRGcm9tU25hcHNob3QobXlPYmplY3QpKS50b01hdGNoU25hcHNob3QoKTtcbiAgfSk7XG5cbiAgaXQoXCJjaGVjayBpZiB0aGUgcHJvZHVjZWQgdGVycmFmb3JtIGNvbmZpZ3VyYXRpb24gaXMgdmFsaWRcIiwgKCkgPT4ge1xuICAgIC8vIFdlIG5lZWQgdG8gZG8gYSBmdWxsIHN5bnRoIHRvIHBsYW4gdGhlIHRlcnJhZm9ybSBjb25maWd1cmF0aW9uXG4gICAgZXhwZWN0KFxuICAgICAgVGVzdGluZy5mdWxsU3ludGgoXG4gICAgICAgIG5ldyBleGFtcGxlQXp1cmVLdWJlcm5ldGVzQ2x1c3RlcihcbiAgICAgICAgICBUZXN0aW5nLmFwcCgpLFxuICAgICAgICAgIFwidGVzdEF6dXJlTGludXhGdW5jdGlvbkFwcFwiLFxuICAgICAgICApLFxuICAgICAgKSxcbiAgICApLnRvQmVWYWxpZFRlcnJhZm9ybSgpO1xuICB9KTtcblxuICBpdChcImNoZWNrIGlmIHRoaXMgY2FuIGJlIHBsYW5uZWRcIiwgKCkgPT4ge1xuICAgIC8vIFdlIG5lZWQgdG8gZG8gYSBmdWxsIHN5bnRoIHRvIHBsYW4gdGhlIHRlcnJhZm9ybSBjb25maWd1cmF0aW9uXG4gICAgZXhwZWN0KFxuICAgICAgVGVzdGluZy5mdWxsU3ludGgoXG4gICAgICAgIG5ldyBleGFtcGxlQXp1cmVLdWJlcm5ldGVzQ2x1c3RlcihcbiAgICAgICAgICBUZXN0aW5nLmFwcCgpLFxuICAgICAgICAgIFwidGVzdEF6dXJlTGludXhGdW5jdGlvbkFwcFwiLFxuICAgICAgICApLFxuICAgICAgKSxcbiAgICApLnRvUGxhblN1Y2Nlc3NmdWxseSgpO1xuICB9KTtcbn0pO1xuIl19
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXp1cmVLdWJlcm5ldGVzQ2x1c3Rlci5zcGVjLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2F6dXJlLWt1YmVybmV0ZXMvdGVzdC9BenVyZUt1YmVybmV0ZXNDbHVzdGVyLnNwZWMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxtRUFBdUU7QUFDdkUsaUNBQWdEO0FBQ2hELDBCQUEwQjtBQUMxQiwyQ0FBOEM7QUFFOUMsMkNBQXlDO0FBRXpDLFFBQVEsQ0FBQyx3Q0FBd0MsRUFBRSxHQUFHLEVBQUU7SUFDdEQsSUFBSSxLQUFxQixDQUFDO0lBQzFCLElBQUksZUFBb0IsQ0FBQztJQUV6QixVQUFVLENBQUMsR0FBRyxFQUFFO1FBQ2QsTUFBTSxHQUFHLEdBQUcsZUFBTyxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQzFCLEtBQUssR0FBRyxJQUFJLHNCQUFjLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBRXhDLElBQUksMEJBQWUsQ0FBQyxLQUFLLEVBQUUsY0FBYyxFQUFFLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFN0QsSUFBSSxHQUFHLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxnQkFBZ0IsRUFBRTtZQUN2QyxJQUFJLEVBQUUsU0FBUztZQUNmLFFBQVEsRUFBRSxRQUFRO1lBQ2xCLGVBQWUsRUFBRTtnQkFDZixJQUFJLEVBQUUsU0FBUztnQkFDZixTQUFTLEVBQUUsQ0FBQztnQkFDWixNQUFNLEVBQUUsY0FBYzthQUN2QjtZQUNELFFBQVEsRUFBRTtnQkFDUixJQUFJLEVBQUUsZ0JBQWdCO2FBQ3ZCO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsZUFBZSxHQUFHLGVBQU8sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyw0QkFBNEI7SUFDMUUsQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsdUVBQXVFLEVBQUUsR0FBRyxFQUFFO1FBQy9FLE1BQU0sQ0FBQyxlQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsZUFBZSxFQUFFLENBQUMsQ0FBQyxxQ0FBcUM7SUFDdkYsQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsd0RBQXdELEVBQUUsR0FBRyxFQUFFO1FBQ2hFLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLENBQUMsdUJBQXVCO0lBQ3ZFLENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLDhCQUE4QixFQUFFLEdBQUcsRUFBRTtRQUN0QyxJQUFBLHVCQUFhLEVBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyx1QkFBdUI7SUFDekQsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEF6dXJlcm1Qcm92aWRlciB9IGZyb20gXCJAY2RrdGYvcHJvdmlkZXItYXp1cmVybS9saWIvcHJvdmlkZXJcIjtcbmltcG9ydCB7IFRlc3RpbmcsIFRlcnJhZm9ybVN0YWNrIH0gZnJvbSBcImNka3RmXCI7XG5pbXBvcnQgKiBhcyBha3MgZnJvbSBcIi4uXCI7XG5pbXBvcnQgeyBUZXJyYWZvcm1QbGFuIH0gZnJvbSBcIi4uLy4uL3Rlc3RpbmdcIjtcblxuaW1wb3J0IFwiY2RrdGYvbGliL3Rlc3RpbmcvYWRhcHRlcnMvamVzdFwiO1xuXG5kZXNjcmliZShcIkF6dXJlIEt1YmVybmV0ZXMgQ2x1c3RlciBXaXRoIERlZmF1bHRzXCIsICgpID0+IHtcbiAgbGV0IHN0YWNrOiBUZXJyYWZvcm1TdGFjaztcbiAgbGV0IGZ1bGxTeW50aFJlc3VsdDogYW55O1xuXG4gIGJlZm9yZUVhY2goKCkgPT4ge1xuICAgIGNvbnN0IGFwcCA9IFRlc3RpbmcuYXBwKCk7XG4gICAgc3RhY2sgPSBuZXcgVGVycmFmb3JtU3RhY2soYXBwLCBcInRlc3RcIik7XG5cbiAgICBuZXcgQXp1cmVybVByb3ZpZGVyKHN0YWNrLCBcImF6dXJlRmVhdHVyZVwiLCB7IGZlYXR1cmVzOiB7fSB9KTtcblxuICAgIG5ldyBha3MuQ2x1c3RlcihzdGFjaywgXCJ0ZXN0QWtzQ2x1c3RlclwiLCB7XG4gICAgICBuYW1lOiBcImFrc3Rlc3RcIixcbiAgICAgIGxvY2F0aW9uOiBcImVhc3R1c1wiLFxuICAgICAgZGVmYXVsdE5vZGVQb29sOiB7XG4gICAgICAgIG5hbWU6IFwiZGVmYXVsdFwiLFxuICAgICAgICBub2RlQ291bnQ6IDEsXG4gICAgICAgIHZtU2l6ZTogXCJTdGFuZGFyZF9CMnNcIixcbiAgICAgIH0sXG4gICAgICBpZGVudGl0eToge1xuICAgICAgICB0eXBlOiBcIlN5c3RlbUFzc2lnbmVkXCIsXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgZnVsbFN5bnRoUmVzdWx0ID0gVGVzdGluZy5mdWxsU3ludGgoc3RhY2spOyAvLyBTYXZlIHRoZSByZXN1bHQgZm9yIHJldXNlXG4gIH0pO1xuXG4gIGl0KFwicmVuZGVycyBhbiBBenVyZSBLdWJlcm5ldGVzIENsdXN0ZXIgd2l0aCBkZWZhdWx0cyBhbmQgY2hlY2tzIHNuYXBzaG90XCIsICgpID0+IHtcbiAgICBleHBlY3QoVGVzdGluZy5zeW50aChzdGFjaykpLnRvTWF0Y2hTbmFwc2hvdCgpOyAvLyBDb21wYXJlIHRoZSBhbHJlYWR5IHByZXBhcmVkIHN0YWNrXG4gIH0pO1xuXG4gIGl0KFwiY2hlY2sgaWYgdGhlIHByb2R1Y2VkIHRlcnJhZm9ybSBjb25maWd1cmF0aW9uIGlzIHZhbGlkXCIsICgpID0+IHtcbiAgICBleHBlY3QoZnVsbFN5bnRoUmVzdWx0KS50b0JlVmFsaWRUZXJyYWZvcm0oKTsgLy8gVXNlIHRoZSBzYXZlZCByZXN1bHRcbiAgfSk7XG5cbiAgaXQoXCJjaGVjayBpZiB0aGlzIGNhbiBiZSBwbGFubmVkXCIsICgpID0+IHtcbiAgICBUZXJyYWZvcm1QbGFuKGZ1bGxTeW50aFJlc3VsdCk7IC8vIFVzZSB0aGUgc2F2ZWQgcmVzdWx0XG4gIH0pO1xufSk7XG4iXX0=
@@ -1,3 +1,4 @@
1
+ import { KustoCluster } from "@cdktf/provider-azurerm/lib/kusto-cluster";
1
2
  import { ResourceGroup } from "@cdktf/provider-azurerm/lib/resource-group";
2
3
  import { Construct } from "constructs";
3
4
  import { IComputeSpecification } from "./compute-specification";
@@ -5,9 +6,10 @@ import { Database, DatabaseProps } from "./database";
5
6
  import { AzureResource } from "../../core-azure/lib/index";
6
7
  export interface ClusterProps {
7
8
  /**
8
- * The Azure Resource Group in which to create the Kusto Cluster.
9
+ * An optional reference to the resource group in which to deploy the Kusto Cluster.
10
+ * If not provided, the Kusto Cluster will be deployed in the default resource group.
9
11
  */
10
- readonly resourceGroup: ResourceGroup;
12
+ readonly resourceGroup?: ResourceGroup;
11
13
  /**
12
14
  * The name of the Kusto Cluster to create.
13
15
  * Only 4-22 lowercase alphanumeric characters allowed, starting with a letter.
@@ -74,9 +76,11 @@ export interface ClusterProps {
74
76
  };
75
77
  }
76
78
  export declare class Cluster extends AzureResource {
77
- readonly kustoProps: ClusterProps;
79
+ readonly props: ClusterProps;
80
+ kustoCluster: KustoCluster;
78
81
  id: string;
79
82
  resourceGroup: ResourceGroup;
83
+ name: string;
80
84
  readonly uri: string;
81
85
  /**
82
86
  * Represents a Kusto (Azure Data Explorer) cluster in Azure.
@@ -87,7 +91,7 @@ export declare class Cluster extends AzureResource {
87
91
  *
88
92
  * @param scope - The scope in which to define this construct, typically representing the Cloud Development Kit (CDK) stack.
89
93
  * @param id - The unique identifier for this instance of the cluster.
90
- * @param kustoProps - The properties required to configure the Kusto cluster, as defined in the ClusterProps interface.
94
+ * @param props - The properties required to configure the Kusto cluster, as defined in the ClusterProps interface.
91
95
  *
92
96
  * Example usage:
93
97
  * ```typescript
@@ -102,7 +106,7 @@ export declare class Cluster extends AzureResource {
102
106
  * });
103
107
  * ```
104
108
  */
105
- constructor(scope: Construct, id: string, kustoProps: ClusterProps);
109
+ constructor(scope: Construct, id: string, props: ClusterProps);
106
110
  /**
107
111
  * Adds a new database to the Azure Kusto Cluster.
108
112
  *
@@ -4,7 +4,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.Cluster = void 0;
5
5
  const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
6
6
  const kusto_cluster_1 = require("@cdktf/provider-azurerm/lib/kusto-cluster");
7
- const cdktf = require("cdktf");
8
7
  const compute_specification_1 = require("./compute-specification");
9
8
  const database_1 = require("./database");
10
9
  const index_1 = require("../../core-azure/lib/index");
@@ -18,7 +17,7 @@ class Cluster extends index_1.AzureResource {
18
17
  *
19
18
  * @param scope - The scope in which to define this construct, typically representing the Cloud Development Kit (CDK) stack.
20
19
  * @param id - The unique identifier for this instance of the cluster.
21
- * @param kustoProps - The properties required to configure the Kusto cluster, as defined in the ClusterProps interface.
20
+ * @param props - The properties required to configure the Kusto cluster, as defined in the ClusterProps interface.
22
21
  *
23
22
  * Example usage:
24
23
  * ```typescript
@@ -33,24 +32,24 @@ class Cluster extends index_1.AzureResource {
33
32
  * });
34
33
  * ```
35
34
  */
36
- constructor(scope, id, kustoProps) {
35
+ constructor(scope, id, props) {
37
36
  super(scope, id);
38
- this.kustoProps = kustoProps;
39
- this.resourceGroup = kustoProps.resourceGroup;
37
+ this.props = props;
38
+ this.resourceGroup = this.setupResourceGroup(props);
40
39
  /**
41
40
  * Define default values.
42
41
  */
43
- const sku = kustoProps.sku || compute_specification_1.ComputeSpecification.devtestExtraSmallDv2;
44
- const enableZones = kustoProps.enableZones || true;
42
+ const sku = props.sku || compute_specification_1.ComputeSpecification.devtestExtraSmallDv2;
43
+ const enableZones = props.enableZones || true;
45
44
  const defaults = {
46
- publicNetworkAccessEnabled: kustoProps.publicNetworkAccessEnabled || true,
47
- autoStopEnabled: kustoProps.autoStopEnabled || true,
48
- streamingIngestionEnabled: kustoProps.streamingIngestionEnabled || true,
49
- purgeEnabled: kustoProps.purgeEnabled || false,
45
+ publicNetworkAccessEnabled: props.publicNetworkAccessEnabled || true,
46
+ autoStopEnabled: props.autoStopEnabled || true,
47
+ streamingIngestionEnabled: props.streamingIngestionEnabled || true,
48
+ purgeEnabled: props.purgeEnabled || false,
50
49
  zones: enableZones ? sku.availibleZones : [],
51
50
  sku: {
52
51
  name: sku.skuName,
53
- capacity: kustoProps.capacity || 2,
52
+ capacity: props.capacity || 2,
54
53
  },
55
54
  identity: {
56
55
  type: "SystemAssigned",
@@ -62,42 +61,62 @@ class Cluster extends index_1.AzureResource {
62
61
  */
63
62
  const azurermKustoCluster = new kusto_cluster_1.KustoCluster(this, "Kusto", {
64
63
  ...defaults,
65
- name: kustoProps.name,
66
- location: kustoProps.resourceGroup.location,
67
- resourceGroupName: kustoProps.resourceGroup.name,
68
- tags: kustoProps.tags,
64
+ name: props.name,
65
+ location: this.resourceGroup.location,
66
+ resourceGroupName: this.resourceGroup.name,
67
+ tags: props.tags,
69
68
  });
70
- if (kustoProps.identityType) {
69
+ if (props.identityType) {
71
70
  azurermKustoCluster.addOverride("identity", {
72
- type: kustoProps.identityType,
73
- identityIds: kustoProps.identityIds,
71
+ type: props.identityType,
72
+ identityIds: props.identityIds,
74
73
  });
75
74
  }
76
- if (kustoProps.minimumInstances && kustoProps.maximumInstances) {
77
- azurermKustoCluster.addOverride("minimum_instances", kustoProps.minimumInstances);
78
- azurermKustoCluster.addOverride("maximum_instances", kustoProps.maximumInstances);
75
+ if (props.minimumInstances && props.maximumInstances) {
76
+ azurermKustoCluster.addOverride("minimum_instances", props.minimumInstances);
77
+ azurermKustoCluster.addOverride("maximum_instances", props.maximumInstances);
79
78
  }
80
79
  this.id = azurermKustoCluster.id;
80
+ this.name = azurermKustoCluster.name;
81
81
  this.uri = azurermKustoCluster.uri;
82
+ this.kustoCluster = azurermKustoCluster;
82
83
  // Outputs
83
- const cdktfTerraformOutputKustoId = new cdktf.TerraformOutput(this, "Kusto_id", {
84
- value: azurermKustoCluster.id,
85
- });
86
- const cdktfTerraformOutputKustoUri = new cdktf.TerraformOutput(this, "Kusto_uri", {
87
- value: azurermKustoCluster.uri,
88
- });
89
- const cdktfTerraformOutputDataIngestionUri = new cdktf.TerraformOutput(this, "Kusto_data_ingestion_uri", {
90
- value: azurermKustoCluster.dataIngestionUri,
91
- });
92
- const cdktfTerraformOutputKustoIdentity = new cdktf.TerraformOutput(this, "Kusto_identity", {
93
- value: azurermKustoCluster.identity,
94
- sensitive: true,
95
- });
84
+ // const cdktfTerraformOutputKustoId = new cdktf.TerraformOutput(
85
+ // this,
86
+ // "Kusto_id",
87
+ // {
88
+ // value: azurermKustoCluster.id,
89
+ // },
90
+ // );
91
+ // const cdktfTerraformOutputKustoUri = new cdktf.TerraformOutput(
92
+ // this,
93
+ // "Kusto_uri",
94
+ // {
95
+ // value: azurermKustoCluster.uri,
96
+ // },
97
+ // );
98
+ // const cdktfTerraformOutputDataIngestionUri = new cdktf.TerraformOutput(
99
+ // this,
100
+ // "Kusto_data_ingestion_uri",
101
+ // {
102
+ // value: azurermKustoCluster.dataIngestionUri,
103
+ // },
104
+ // );
105
+ // const cdktfTerraformOutputKustoIdentity = new cdktf.TerraformOutput(
106
+ // this,
107
+ // "Kusto_identity",
108
+ // {
109
+ // value: azurermKustoCluster.identity,
110
+ // sensitive: true,
111
+ // },
112
+ // );
96
113
  /*This allows the Terraform resource name to match the original name. You can remove the call if you don't need them to match.*/
97
- cdktfTerraformOutputKustoId.overrideLogicalId("Kusto_id");
98
- cdktfTerraformOutputKustoUri.overrideLogicalId("Kusto_uri");
99
- cdktfTerraformOutputDataIngestionUri.overrideLogicalId("Kusto_data_ingestion_uri");
100
- cdktfTerraformOutputKustoIdentity.overrideLogicalId("Kusto_identity");
114
+ // cdktfTerraformOutputKustoId.overrideLogicalId("Kusto_id");
115
+ // cdktfTerraformOutputKustoUri.overrideLogicalId("Kusto_uri");
116
+ // cdktfTerraformOutputDataIngestionUri.overrideLogicalId(
117
+ // "Kusto_data_ingestion_uri",
118
+ // );
119
+ // cdktfTerraformOutputKustoIdentity.overrideLogicalId("Kusto_identity");
101
120
  }
102
121
  /**
103
122
  * Adds a new database to the Azure Kusto Cluster.
@@ -129,10 +148,15 @@ class Cluster extends index_1.AzureResource {
129
148
  * for complex data analytics operations across large datasets.
130
149
  */
131
150
  addDatabase(databaseProps) {
132
- return new database_1.Database(this, databaseProps.name, databaseProps);
151
+ return new database_1.Database(this, databaseProps.name, {
152
+ kustoCluster: this.kustoCluster,
153
+ name: databaseProps.name,
154
+ hotCachePeriod: databaseProps.hotCachePeriod,
155
+ softDeletePeriod: databaseProps.softDeletePeriod,
156
+ });
133
157
  }
134
158
  }
135
159
  exports.Cluster = Cluster;
136
160
  _a = JSII_RTTI_SYMBOL_1;
137
- Cluster[_a] = { fqn: "@microsoft/terraform-cdk-constructs.azure_kusto.Cluster", version: "0.0.3-pre.10" };
138
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2x1c3Rlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9henVyZS1rdXN0by9saWIvY2x1c3Rlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDZFQUF5RTtBQUV6RSwrQkFBK0I7QUFFL0IsbUVBR2lDO0FBQ2pDLHlDQUFxRDtBQUNyRCxzREFBMkQ7QUF1RTNELE1BQWEsT0FBUSxTQUFRLHFCQUFhO0lBTXhDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztPQXVCRztJQUNILFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsVUFBd0I7UUFDaEUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNqQixJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztRQUM3QixJQUFJLENBQUMsYUFBYSxHQUFHLFVBQVUsQ0FBQyxhQUFhLENBQUM7UUFFOUM7O1dBRUc7UUFDSCxNQUFNLEdBQUcsR0FBRyxVQUFVLENBQUMsR0FBRyxJQUFJLDRDQUFvQixDQUFDLG9CQUFvQixDQUFDO1FBQ3hFLE1BQU0sV0FBVyxHQUFHLFVBQVUsQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDO1FBRW5ELE1BQU0sUUFBUSxHQUFHO1lBQ2YsMEJBQTBCLEVBQUUsVUFBVSxDQUFDLDBCQUEwQixJQUFJLElBQUk7WUFDekUsZUFBZSxFQUFFLFVBQVUsQ0FBQyxlQUFlLElBQUksSUFBSTtZQUNuRCx5QkFBeUIsRUFBRSxVQUFVLENBQUMseUJBQXlCLElBQUksSUFBSTtZQUN2RSxZQUFZLEVBQUUsVUFBVSxDQUFDLFlBQVksSUFBSSxLQUFLO1lBQzlDLEtBQUssRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDNUMsR0FBRyxFQUFFO2dCQUNILElBQUksRUFBRSxHQUFHLENBQUMsT0FBTztnQkFDakIsUUFBUSxFQUFFLFVBQVUsQ0FBQyxRQUFRLElBQUksQ0FBQzthQUNuQztZQUNELFFBQVEsRUFBRTtnQkFDUixJQUFJLEVBQUUsZ0JBQWdCO2dCQUN0QixXQUFXLEVBQUUsRUFBRTthQUNoQjtTQUNGLENBQUM7UUFFRjs7V0FFRztRQUNILE1BQU0sbUJBQW1CLEdBQUcsSUFBSSw0QkFBWSxDQUFDLElBQUksRUFBRSxPQUFPLEVBQUU7WUFDMUQsR0FBRyxRQUFRO1lBQ1gsSUFBSSxFQUFFLFVBQVUsQ0FBQyxJQUFJO1lBQ3JCLFFBQVEsRUFBRSxVQUFVLENBQUMsYUFBYSxDQUFDLFFBQVE7WUFDM0MsaUJBQWlCLEVBQUUsVUFBVSxDQUFDLGFBQWEsQ0FBQyxJQUFJO1lBQ2hELElBQUksRUFBRSxVQUFVLENBQUMsSUFBSTtTQUN0QixDQUFDLENBQUM7UUFFSCxJQUFJLFVBQVUsQ0FBQyxZQUFZLEVBQUU7WUFDM0IsbUJBQW1CLENBQUMsV0FBVyxDQUFDLFVBQVUsRUFBRTtnQkFDMUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxZQUFZO2dCQUM3QixXQUFXLEVBQUUsVUFBVSxDQUFDLFdBQVc7YUFDcEMsQ0FBQyxDQUFDO1NBQ0o7UUFFRCxJQUFJLFVBQVUsQ0FBQyxnQkFBZ0IsSUFBSSxVQUFVLENBQUMsZ0JBQWdCLEVBQUU7WUFDOUQsbUJBQW1CLENBQUMsV0FBVyxDQUM3QixtQkFBbUIsRUFDbkIsVUFBVSxDQUFDLGdCQUFnQixDQUM1QixDQUFDO1lBQ0YsbUJBQW1CLENBQUMsV0FBVyxDQUM3QixtQkFBbUIsRUFDbkIsVUFBVSxDQUFDLGdCQUFnQixDQUM1QixDQUFDO1NBQ0g7UUFFRCxJQUFJLENBQUMsRUFBRSxHQUFHLG1CQUFtQixDQUFDLEVBQUUsQ0FBQztRQUNqQyxJQUFJLENBQUMsR0FBRyxHQUFHLG1CQUFtQixDQUFDLEdBQUcsQ0FBQztRQUVuQyxVQUFVO1FBQ1YsTUFBTSwyQkFBMkIsR0FBRyxJQUFJLEtBQUssQ0FBQyxlQUFlLENBQzNELElBQUksRUFDSixVQUFVLEVBQ1Y7WUFDRSxLQUFLLEVBQUUsbUJBQW1CLENBQUMsRUFBRTtTQUM5QixDQUNGLENBQUM7UUFDRixNQUFNLDRCQUE0QixHQUFHLElBQUksS0FBSyxDQUFDLGVBQWUsQ0FDNUQsSUFBSSxFQUNKLFdBQVcsRUFDWDtZQUNFLEtBQUssRUFBRSxtQkFBbUIsQ0FBQyxHQUFHO1NBQy9CLENBQ0YsQ0FBQztRQUNGLE1BQU0sb0NBQW9DLEdBQUcsSUFBSSxLQUFLLENBQUMsZUFBZSxDQUNwRSxJQUFJLEVBQ0osMEJBQTBCLEVBQzFCO1lBQ0UsS0FBSyxFQUFFLG1CQUFtQixDQUFDLGdCQUFnQjtTQUM1QyxDQUNGLENBQUM7UUFDRixNQUFNLGlDQUFpQyxHQUFHLElBQUksS0FBSyxDQUFDLGVBQWUsQ0FDakUsSUFBSSxFQUNKLGdCQUFnQixFQUNoQjtZQUNFLEtBQUssRUFBRSxtQkFBbUIsQ0FBQyxRQUFRO1lBQ25DLFNBQVMsRUFBRSxJQUFJO1NBQ2hCLENBQ0YsQ0FBQztRQUVGLGdJQUFnSTtRQUNoSSwyQkFBMkIsQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUMxRCw0QkFBNEIsQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUM1RCxvQ0FBb0MsQ0FBQyxpQkFBaUIsQ0FDcEQsMEJBQTBCLENBQzNCLENBQUM7UUFDRixpQ0FBaUMsQ0FBQyxpQkFBaUIsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3hFLENBQUM7SUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztPQTRCRztJQUNJLFdBQVcsQ0FBQyxhQUE0QjtRQUM3QyxPQUFPLElBQUksbUJBQVEsQ0FBQyxJQUFJLEVBQUUsYUFBYSxDQUFDLElBQUksRUFBRSxhQUFhLENBQUMsQ0FBQztJQUMvRCxDQUFDOztBQWhLSCwwQkFpS0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBLdXN0b0NsdXN0ZXIgfSBmcm9tIFwiQGNka3RmL3Byb3ZpZGVyLWF6dXJlcm0vbGliL2t1c3RvLWNsdXN0ZXJcIjtcbmltcG9ydCB7IFJlc291cmNlR3JvdXAgfSBmcm9tIFwiQGNka3RmL3Byb3ZpZGVyLWF6dXJlcm0vbGliL3Jlc291cmNlLWdyb3VwXCI7XG5pbXBvcnQgKiBhcyBjZGt0ZiBmcm9tIFwiY2RrdGZcIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQge1xuICBDb21wdXRlU3BlY2lmaWNhdGlvbixcbiAgSUNvbXB1dGVTcGVjaWZpY2F0aW9uLFxufSBmcm9tIFwiLi9jb21wdXRlLXNwZWNpZmljYXRpb25cIjtcbmltcG9ydCB7IERhdGFiYXNlLCBEYXRhYmFzZVByb3BzIH0gZnJvbSBcIi4vZGF0YWJhc2VcIjtcbmltcG9ydCB7IEF6dXJlUmVzb3VyY2UgfSBmcm9tIFwiLi4vLi4vY29yZS1henVyZS9saWIvaW5kZXhcIjtcblxuZXhwb3J0IGludGVyZmFjZSBDbHVzdGVyUHJvcHMge1xuICAvKipcbiAgICogVGhlIEF6dXJlIFJlc291cmNlIEdyb3VwIGluIHdoaWNoIHRvIGNyZWF0ZSB0aGUgS3VzdG8gQ2x1c3Rlci5cbiAgICovXG4gIHJlYWRvbmx5IHJlc291cmNlR3JvdXA6IFJlc291cmNlR3JvdXA7XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgS3VzdG8gQ2x1c3RlciB0byBjcmVhdGUuXG4gICAqIE9ubHkgNC0yMiBsb3dlcmNhc2UgYWxwaGFudW1lcmljIGNoYXJhY3RlcnMgYWxsb3dlZCwgc3RhcnRpbmcgd2l0aCBhIGxldHRlci5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBTS1Ugb2YgdGhlIEt1c3RvIENsdXN0ZXIuIEFsbCB0aGUgYWxsb3dlZCB2YWx1ZXMgYXJlIGRlZmluZWQgaW4gdGhlIENvbXB1dGVTcGVjaWZpY2F0aW9uIGNsYXNzLlxuICAgKiBAZGVmYXVsdCBkZXZ0ZXN0RXh0cmFTbWFsbER2MlxuICAgKi9cbiAgcmVhZG9ubHkgc2t1PzogSUNvbXB1dGVTcGVjaWZpY2F0aW9uO1xuICAvKipcbiAgICogVGhlIG5vZGUgY291bnQgZm9yIHRoZSBjbHVzdGVyLlxuICAgKiBAZGVmYXVsdCAyXG4gICAqL1xuICByZWFkb25seSBjYXBhY2l0eT86IG51bWJlcjtcbiAgLyoqXG4gICAqIFRoZSB0eXBlIG9mIE1hbmFnZWQgU2VydmljZSBJZGVudGl0eS5cbiAgICogQGRlZmF1bHQgXCJTeXN0ZW1Bc3NpZ25lZFwiXG4gICAqL1xuICByZWFkb25seSBpZGVudGl0eVR5cGU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBIGxpc3Qgb2YgVXNlciBBc3NpZ25lZCBNYW5hZ2VkIElkZW50aXR5IElEcyB0byBiZSBhc3NpZ25lZCB0byB0aGlzIEt1c3RvIENsdXN0ZXIuXG4gICAqL1xuICByZWFkb25seSBpZGVudGl0eUlkcz86IHN0cmluZ1tdO1xuICAvKipcbiAgICogSXMgdGhlIHB1YmxpYyBuZXR3b3JrIGFjY2VzcyBlbmFibGVkP1xuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBwdWJsaWNOZXR3b3JrQWNjZXNzRW5hYmxlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgaWYgdGhlIGNsdXN0ZXIgY291bGQgYmUgYXV0b21hdGljYWxseSBzdG9wcGVkLlxuICAgKiAoZHVlIHRvIGxhY2sgb2YgZGF0YSBvciBubyBhY3Rpdml0eSBmb3IgbWFueSBkYXlzKS5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgYXV0b1N0b3BFbmFibGVkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFNwZWNpZmllcyBpZiB0aGUgc3RyZWFtaW5nIGluZ2VzdCBpcyBlbmFibGVkLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBzdHJlYW1pbmdJbmdlc3Rpb25FbmFibGVkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFNwZWNpZmllcyBpZiB0aGUgcHVyZ2Ugb3BlcmF0aW9ucyBhcmUgZW5hYmxlZC5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IHB1cmdlRW5hYmxlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgaWYgdGhlIHB1cmdlIG9wZXJhdGlvbnMgYXJlIGVuYWJsZWQuIEJhc2VkIG9uIHRoZSBTS1UsIHRoZSBudW1iZXIgb2Ygem9uZXMgYWxsb3dlZCBhcmUgZGlmZmVyZW50LlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBlbmFibGVab25lcz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBUaGUgbWluaW11bSBudW1iZXIgb2YgYWxsb3dlZCBpbnN0YW5jZXMuIE11c3QgYmV0d2VlbiAwIGFuZCAxMDAwLlxuICAgKi9cbiAgcmVhZG9ubHkgbWluaW11bUluc3RhbmNlcz86IG51bWJlcjtcbiAgLyoqXG4gICAqIFRoZSBtYXhpbXVtIG51bWJlciBvZiBhbGxvd2VkIGluc3RhbmNlcy4gTXVzdCBiZXR3ZWVuIDAgYW5kIDEwMDAuXG4gICAqL1xuICByZWFkb25seSBtYXhpbXVtSW5zdGFuY2VzPzogbnVtYmVyO1xuICAvKipcbiAgICogQSBtYXBwaW5nIG9mIHRhZ3MgdG8gYXNzaWduIHRvIHRoZSBLdXN0by5cbiAgICovXG4gIHJlYWRvbmx5IHRhZ3M/OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9O1xufVxuXG5leHBvcnQgY2xhc3MgQ2x1c3RlciBleHRlbmRzIEF6dXJlUmVzb3VyY2Uge1xuICByZWFkb25seSBrdXN0b1Byb3BzOiBDbHVzdGVyUHJvcHM7XG4gIHB1YmxpYyBpZDogc3RyaW5nO1xuICBwdWJsaWMgcmVzb3VyY2VHcm91cDogUmVzb3VyY2VHcm91cDtcbiAgcHVibGljIHJlYWRvbmx5IHVyaTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBSZXByZXNlbnRzIGEgS3VzdG8gKEF6dXJlIERhdGEgRXhwbG9yZXIpIGNsdXN0ZXIgaW4gQXp1cmUuXG4gICAqXG4gICAqIFRoaXMgY2xhc3MgaXMgcmVzcG9uc2libGUgZm9yIHRoZSBjcmVhdGlvbiBhbmQgbWFuYWdlbWVudCBvZiBhIEt1c3RvIENsdXN0ZXIsIHdoaWNoIGlzIGEgaGlnaGx5IHNjYWxhYmxlIGFuZCBzZWN1cmVcbiAgICogYW5hbHl0aWNzIHNlcnZpY2UgZm9yIGluZ2VzdGluZywgc3RvcmluZywgYW5kIGFuYWx5emluZyBsYXJnZSB2b2x1bWVzIG9mIGRhdGEuIFRoZSBjbHVzdGVyIHN1cHBvcnRzIHZhcmlvdXMgY29uZmlndXJhdGlvbnNcbiAgICogdGFpbG9yZWQgdG8gdGhlIG5lZWRzIG9mIHNwZWNpZmljIGRhdGEgd29ya2xvYWRzIGFuZCBzZWN1cml0eSByZXF1aXJlbWVudHMuXG4gICAqXG4gICAqIEBwYXJhbSBzY29wZSAtIFRoZSBzY29wZSBpbiB3aGljaCB0byBkZWZpbmUgdGhpcyBjb25zdHJ1Y3QsIHR5cGljYWxseSByZXByZXNlbnRpbmcgdGhlIENsb3VkIERldmVsb3BtZW50IEtpdCAoQ0RLKSBzdGFjay5cbiAgICogQHBhcmFtIGlkIC0gVGhlIHVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGlzIGluc3RhbmNlIG9mIHRoZSBjbHVzdGVyLlxuICAgKiBAcGFyYW0ga3VzdG9Qcm9wcyAtIFRoZSBwcm9wZXJ0aWVzIHJlcXVpcmVkIHRvIGNvbmZpZ3VyZSB0aGUgS3VzdG8gY2x1c3RlciwgYXMgZGVmaW5lZCBpbiB0aGUgQ2x1c3RlclByb3BzIGludGVyZmFjZS5cbiAgICpcbiAgICogRXhhbXBsZSB1c2FnZTpcbiAgICogYGBgdHlwZXNjcmlwdFxuICAgKiBuZXcgQ2x1c3Rlcih0aGlzLCAnTXlLdXN0b0NsdXN0ZXInLCB7XG4gICAqICAgbmFtZTogJ2V4YW1wbGUtY2x1c3RlcicsXG4gICAqICAgbG9jYXRpb246ICdXZXN0IFVTJyxcbiAgICogICByZXNvdXJjZUdyb3VwOiBteVJlc291cmNlR3JvdXAsXG4gICAqICAgc2t1OiB7IHRpZXI6ICdTdGFuZGFyZCcsIG5hbWU6ICdEMTNfdjInLCBjYXBhY2l0eTogMiB9LFxuICAgKiAgIHRhZ3M6IHtcbiAgICogICAgIHByb2plY3Q6ICdEYXRhIEFuYWx5dGljcydcbiAgICogICB9XG4gICAqIH0pO1xuICAgKiBgYGBcbiAgICovXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIGt1c3RvUHJvcHM6IENsdXN0ZXJQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG4gICAgdGhpcy5rdXN0b1Byb3BzID0ga3VzdG9Qcm9wcztcbiAgICB0aGlzLnJlc291cmNlR3JvdXAgPSBrdXN0b1Byb3BzLnJlc291cmNlR3JvdXA7XG5cbiAgICAvKipcbiAgICAgKiBEZWZpbmUgZGVmYXVsdCB2YWx1ZXMuXG4gICAgICovXG4gICAgY29uc3Qgc2t1ID0ga3VzdG9Qcm9wcy5za3UgfHwgQ29tcHV0ZVNwZWNpZmljYXRpb24uZGV2dGVzdEV4dHJhU21hbGxEdjI7XG4gICAgY29uc3QgZW5hYmxlWm9uZXMgPSBrdXN0b1Byb3BzLmVuYWJsZVpvbmVzIHx8IHRydWU7XG5cbiAgICBjb25zdCBkZWZhdWx0cyA9IHtcbiAgICAgIHB1YmxpY05ldHdvcmtBY2Nlc3NFbmFibGVkOiBrdXN0b1Byb3BzLnB1YmxpY05ldHdvcmtBY2Nlc3NFbmFibGVkIHx8IHRydWUsXG4gICAgICBhdXRvU3RvcEVuYWJsZWQ6IGt1c3RvUHJvcHMuYXV0b1N0b3BFbmFibGVkIHx8IHRydWUsXG4gICAgICBzdHJlYW1pbmdJbmdlc3Rpb25FbmFibGVkOiBrdXN0b1Byb3BzLnN0cmVhbWluZ0luZ2VzdGlvbkVuYWJsZWQgfHwgdHJ1ZSxcbiAgICAgIHB1cmdlRW5hYmxlZDoga3VzdG9Qcm9wcy5wdXJnZUVuYWJsZWQgfHwgZmFsc2UsXG4gICAgICB6b25lczogZW5hYmxlWm9uZXMgPyBza3UuYXZhaWxpYmxlWm9uZXMgOiBbXSxcbiAgICAgIHNrdToge1xuICAgICAgICBuYW1lOiBza3Uuc2t1TmFtZSxcbiAgICAgICAgY2FwYWNpdHk6IGt1c3RvUHJvcHMuY2FwYWNpdHkgfHwgMixcbiAgICAgIH0sXG4gICAgICBpZGVudGl0eToge1xuICAgICAgICB0eXBlOiBcIlN5c3RlbUFzc2lnbmVkXCIsXG4gICAgICAgIGlkZW50aXR5SWRzOiBbXSxcbiAgICAgIH0sXG4gICAgfTtcblxuICAgIC8qKlxuICAgICAqIENyZWF0ZSBLdXN0byBDbHVzdGVyIHJlc291cmNlLlxuICAgICAqL1xuICAgIGNvbnN0IGF6dXJlcm1LdXN0b0NsdXN0ZXIgPSBuZXcgS3VzdG9DbHVzdGVyKHRoaXMsIFwiS3VzdG9cIiwge1xuICAgICAgLi4uZGVmYXVsdHMsXG4gICAgICBuYW1lOiBrdXN0b1Byb3BzLm5hbWUsXG4gICAgICBsb2NhdGlvbjoga3VzdG9Qcm9wcy5yZXNvdXJjZUdyb3VwLmxvY2F0aW9uLFxuICAgICAgcmVzb3VyY2VHcm91cE5hbWU6IGt1c3RvUHJvcHMucmVzb3VyY2VHcm91cC5uYW1lLFxuICAgICAgdGFnczoga3VzdG9Qcm9wcy50YWdzLFxuICAgIH0pO1xuXG4gICAgaWYgKGt1c3RvUHJvcHMuaWRlbnRpdHlUeXBlKSB7XG4gICAgICBhenVyZXJtS3VzdG9DbHVzdGVyLmFkZE92ZXJyaWRlKFwiaWRlbnRpdHlcIiwge1xuICAgICAgICB0eXBlOiBrdXN0b1Byb3BzLmlkZW50aXR5VHlwZSxcbiAgICAgICAgaWRlbnRpdHlJZHM6IGt1c3RvUHJvcHMuaWRlbnRpdHlJZHMsXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAoa3VzdG9Qcm9wcy5taW5pbXVtSW5zdGFuY2VzICYmIGt1c3RvUHJvcHMubWF4aW11bUluc3RhbmNlcykge1xuICAgICAgYXp1cmVybUt1c3RvQ2x1c3Rlci5hZGRPdmVycmlkZShcbiAgICAgICAgXCJtaW5pbXVtX2luc3RhbmNlc1wiLFxuICAgICAgICBrdXN0b1Byb3BzLm1pbmltdW1JbnN0YW5jZXMsXG4gICAgICApO1xuICAgICAgYXp1cmVybUt1c3RvQ2x1c3Rlci5hZGRPdmVycmlkZShcbiAgICAgICAgXCJtYXhpbXVtX2luc3RhbmNlc1wiLFxuICAgICAgICBrdXN0b1Byb3BzLm1heGltdW1JbnN0YW5jZXMsXG4gICAgICApO1xuICAgIH1cblxuICAgIHRoaXMuaWQgPSBhenVyZXJtS3VzdG9DbHVzdGVyLmlkO1xuICAgIHRoaXMudXJpID0gYXp1cmVybUt1c3RvQ2x1c3Rlci51cmk7XG5cbiAgICAvLyBPdXRwdXRzXG4gICAgY29uc3QgY2RrdGZUZXJyYWZvcm1PdXRwdXRLdXN0b0lkID0gbmV3IGNka3RmLlRlcnJhZm9ybU91dHB1dChcbiAgICAgIHRoaXMsXG4gICAgICBcIkt1c3RvX2lkXCIsXG4gICAgICB7XG4gICAgICAgIHZhbHVlOiBhenVyZXJtS3VzdG9DbHVzdGVyLmlkLFxuICAgICAgfSxcbiAgICApO1xuICAgIGNvbnN0IGNka3RmVGVycmFmb3JtT3V0cHV0S3VzdG9VcmkgPSBuZXcgY2RrdGYuVGVycmFmb3JtT3V0cHV0KFxuICAgICAgdGhpcyxcbiAgICAgIFwiS3VzdG9fdXJpXCIsXG4gICAgICB7XG4gICAgICAgIHZhbHVlOiBhenVyZXJtS3VzdG9DbHVzdGVyLnVyaSxcbiAgICAgIH0sXG4gICAgKTtcbiAgICBjb25zdCBjZGt0ZlRlcnJhZm9ybU91dHB1dERhdGFJbmdlc3Rpb25VcmkgPSBuZXcgY2RrdGYuVGVycmFmb3JtT3V0cHV0KFxuICAgICAgdGhpcyxcbiAgICAgIFwiS3VzdG9fZGF0YV9pbmdlc3Rpb25fdXJpXCIsXG4gICAgICB7XG4gICAgICAgIHZhbHVlOiBhenVyZXJtS3VzdG9DbHVzdGVyLmRhdGFJbmdlc3Rpb25VcmksXG4gICAgICB9LFxuICAgICk7XG4gICAgY29uc3QgY2RrdGZUZXJyYWZvcm1PdXRwdXRLdXN0b0lkZW50aXR5ID0gbmV3IGNka3RmLlRlcnJhZm9ybU91dHB1dChcbiAgICAgIHRoaXMsXG4gICAgICBcIkt1c3RvX2lkZW50aXR5XCIsXG4gICAgICB7XG4gICAgICAgIHZhbHVlOiBhenVyZXJtS3VzdG9DbHVzdGVyLmlkZW50aXR5LFxuICAgICAgICBzZW5zaXRpdmU6IHRydWUsXG4gICAgICB9LFxuICAgICk7XG5cbiAgICAvKlRoaXMgYWxsb3dzIHRoZSBUZXJyYWZvcm0gcmVzb3VyY2UgbmFtZSB0byBtYXRjaCB0aGUgb3JpZ2luYWwgbmFtZS4gWW91IGNhbiByZW1vdmUgdGhlIGNhbGwgaWYgeW91IGRvbid0IG5lZWQgdGhlbSB0byBtYXRjaC4qL1xuICAgIGNka3RmVGVycmFmb3JtT3V0cHV0S3VzdG9JZC5vdmVycmlkZUxvZ2ljYWxJZChcIkt1c3RvX2lkXCIpO1xuICAgIGNka3RmVGVycmFmb3JtT3V0cHV0S3VzdG9Vcmkub3ZlcnJpZGVMb2dpY2FsSWQoXCJLdXN0b191cmlcIik7XG4gICAgY2RrdGZUZXJyYWZvcm1PdXRwdXREYXRhSW5nZXN0aW9uVXJpLm92ZXJyaWRlTG9naWNhbElkKFxuICAgICAgXCJLdXN0b19kYXRhX2luZ2VzdGlvbl91cmlcIixcbiAgICApO1xuICAgIGNka3RmVGVycmFmb3JtT3V0cHV0S3VzdG9JZGVudGl0eS5vdmVycmlkZUxvZ2ljYWxJZChcIkt1c3RvX2lkZW50aXR5XCIpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYSBuZXcgZGF0YWJhc2UgdG8gdGhlIEF6dXJlIEt1c3RvIENsdXN0ZXIuXG4gICAqXG4gICAqIFRoaXMgbWV0aG9kIGNyZWF0ZXMgYSBkYXRhYmFzZSB3aXRoaW4gdGhlIEF6dXJlIERhdGEgRXhwbG9yZXIgKEt1c3RvKSBjbHVzdGVyLCBkZWZpbmVkIGJ5IHRoZSBwcm9wZXJ0aWVzIHByb3ZpZGVkLlxuICAgKiBBIGRhdGFiYXNlIGluIEt1c3RvIHNlcnZlcyBhcyBhIGxvZ2ljYWwgZ3JvdXAgdG8gbWFuYWdlIHZhcmlvdXMgdGFibGVzIGFuZCBzdG9yZSBkYXRhLiBJdCBpcyBlc3NlbnRpYWwgZm9yIHBlcmZvcm1pbmdcbiAgICogZGF0YSBhbmFseXRpY3MgYW5kIHJ1bm5pbmcgcXVlcmllcy4gVGhlIGRhdGFiYXNlIGNvbmZpZ3VyYXRpb24gY2FuIGluY2x1ZGUgc2V0dGluZ3MgbGlrZSBob3QgY2FjaGUgYW5kIHNvZnQgZGVsZXRlIHBlcmlvZHMsXG4gICAqIHdoaWNoIG9wdGltaXplIHF1ZXJ5IHBlcmZvcm1hbmNlIGFuZCBtYW5hZ2UgZGF0YSBsaWZlY3ljbGUgYWNjb3JkaW5nIHRvIHNwZWNpZmljIHJlcXVpcmVtZW50cy5cbiAgICpcbiAgICogQHBhcmFtIGRhdGFiYXNlUHJvcHMgLSBUaGUgcHJvcGVydGllcyByZXF1aXJlZCB0byBjcmVhdGUgdGhlIGRhdGFiYXNlLiBUaGVzZSBwcm9wZXJ0aWVzIHNob3VsZCBpbmNsdWRlOlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgIC0gYGt1c3RvYDogUmVmZXJlbmNlIHRvIHRoZSBLdXN0byBjbHVzdGVyIHRvIHdoaWNoIHRoZSBkYXRhYmFzZSB3aWxsIGJlIGFkZGVkLlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgIC0gYG5hbWVgOiBUaGUgbmFtZSBvZiB0aGUgZGF0YWJhc2UsIHdoaWNoIG11c3QgYmUgdW5pcXVlIHdpdGhpbiB0aGUgY2x1c3Rlci5cbiAgICogICAgICAgICAgICAgICAgICAgICAgICAtIGBob3RDYWNoZVBlcmlvZGA6IE9wdGlvbmFsLiBTcGVjaWZpZXMgdGhlIGR1cmF0aW9uIHRoYXQgZGF0YSBzaG91bGQgYmUga2VwdCBpbiBjYWNoZSBmb3IgZmFzdGVyIHF1ZXJ5IGFjY2Vzcy5cbiAgICogICAgICAgICAgICAgICAgICAgICAgICAtIGBzb2Z0RGVsZXRlUGVyaW9kYDogT3B0aW9uYWwuIFNwZWNpZmllcyB0aGUgZHVyYXRpb24gdGhhdCBkYXRhIHNob3VsZCBiZSByZXRhaW5lZCBiZWZvcmUgaXQgc3RvcHMgYmVpbmcgYWNjZXNzaWJsZSB0byBxdWVyaWVzLlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgQm90aCB0aGUgaG90IGNhY2hlIGFuZCBzb2Z0IGRlbGV0ZSBwZXJpb2RzIHNob3VsZCBiZSBzcGVjaWZpZWQgaW4gSVNPIDg2MDEgZHVyYXRpb24gZm9ybWF0LlxuICAgKlxuICAgKiBAcmV0dXJucyBBIGBEYXRhYmFzZWAgb2JqZWN0IHJlcHJlc2VudGluZyB0aGUgbmV3bHkgY3JlYXRlZCBkYXRhYmFzZSB3aXRoaW4gdGhlIEt1c3RvIGNsdXN0ZXIuXG4gICAqXG4gICAqIEV4YW1wbGUgdXNhZ2U6XG4gICAqIGBgYHR5cGVzY3JpcHRcbiAgICogY29uc3QgbXlEYXRhYmFzZSA9IG15Q2x1c3Rlci5hZGREYXRhYmFzZSh7XG4gICAqICAga3VzdG86IG15S3VzdG9DbHVzdGVyLFxuICAgKiAgIG5hbWU6ICdPcGVyYXRpb25hbERhdGEnLFxuICAgKiAgIGhvdENhY2hlUGVyaW9kOiAnUDE0RCcsIC8vIDE0IGRheXNcbiAgICogICBzb2Z0RGVsZXRlUGVyaW9kOiAnUDM2NUQnIC8vIDEgeWVhclxuICAgKiB9KTtcbiAgICogYGBgXG4gICAqIFRoaXMgbWV0aG9kIGZhY2lsaXRhdGVzIHRoZSBlZmZpY2llbnQgc2V0dXAgYW5kIHNjYWxpbmcgb2YgZGF0YWJhc2VzIHdpdGhpbiBhbiBBenVyZSBLdXN0byBjbHVzdGVyLCBhbGxvd2luZ1xuICAgKiBmb3IgY29tcGxleCBkYXRhIGFuYWx5dGljcyBvcGVyYXRpb25zIGFjcm9zcyBsYXJnZSBkYXRhc2V0cy5cbiAgICovXG4gIHB1YmxpYyBhZGREYXRhYmFzZShkYXRhYmFzZVByb3BzOiBEYXRhYmFzZVByb3BzKSB7XG4gICAgcmV0dXJuIG5ldyBEYXRhYmFzZSh0aGlzLCBkYXRhYmFzZVByb3BzLm5hbWUsIGRhdGFiYXNlUHJvcHMpO1xuICB9XG59XG4iXX0=
161
+ Cluster[_a] = { fqn: "@microsoft/terraform-cdk-constructs.azure_kusto.Cluster", version: "0.0.3-pre.12" };
162
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2x1c3Rlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9henVyZS1rdXN0by9saWIvY2x1c3Rlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDZFQUF5RTtBQUd6RSxtRUFHaUM7QUFDakMseUNBQXFEO0FBQ3JELHNEQUEyRDtBQXdFM0QsTUFBYSxPQUFRLFNBQVEscUJBQWE7SUFReEM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BdUJHO0lBQ0gsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFtQjtRQUMzRCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRXBEOztXQUVHO1FBQ0gsTUFBTSxHQUFHLEdBQUcsS0FBSyxDQUFDLEdBQUcsSUFBSSw0Q0FBb0IsQ0FBQyxvQkFBb0IsQ0FBQztRQUNuRSxNQUFNLFdBQVcsR0FBRyxLQUFLLENBQUMsV0FBVyxJQUFJLElBQUksQ0FBQztRQUU5QyxNQUFNLFFBQVEsR0FBRztZQUNmLDBCQUEwQixFQUFFLEtBQUssQ0FBQywwQkFBMEIsSUFBSSxJQUFJO1lBQ3BFLGVBQWUsRUFBRSxLQUFLLENBQUMsZUFBZSxJQUFJLElBQUk7WUFDOUMseUJBQXlCLEVBQUUsS0FBSyxDQUFDLHlCQUF5QixJQUFJLElBQUk7WUFDbEUsWUFBWSxFQUFFLEtBQUssQ0FBQyxZQUFZLElBQUksS0FBSztZQUN6QyxLQUFLLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQzVDLEdBQUcsRUFBRTtnQkFDSCxJQUFJLEVBQUUsR0FBRyxDQUFDLE9BQU87Z0JBQ2pCLFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUSxJQUFJLENBQUM7YUFDOUI7WUFDRCxRQUFRLEVBQUU7Z0JBQ1IsSUFBSSxFQUFFLGdCQUFnQjtnQkFDdEIsV0FBVyxFQUFFLEVBQUU7YUFDaEI7U0FDRixDQUFDO1FBRUY7O1dBRUc7UUFDSCxNQUFNLG1CQUFtQixHQUFHLElBQUksNEJBQVksQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFO1lBQzFELEdBQUcsUUFBUTtZQUNYLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSTtZQUNoQixRQUFRLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRO1lBQ3JDLGlCQUFpQixFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSTtZQUMxQyxJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUk7U0FDakIsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxLQUFLLENBQUMsWUFBWSxFQUFFO1lBQ3RCLG1CQUFtQixDQUFDLFdBQVcsQ0FBQyxVQUFVLEVBQUU7Z0JBQzFDLElBQUksRUFBRSxLQUFLLENBQUMsWUFBWTtnQkFDeEIsV0FBVyxFQUFFLEtBQUssQ0FBQyxXQUFXO2FBQy9CLENBQUMsQ0FBQztTQUNKO1FBRUQsSUFBSSxLQUFLLENBQUMsZ0JBQWdCLElBQUksS0FBSyxDQUFDLGdCQUFnQixFQUFFO1lBQ3BELG1CQUFtQixDQUFDLFdBQVcsQ0FDN0IsbUJBQW1CLEVBQ25CLEtBQUssQ0FBQyxnQkFBZ0IsQ0FDdkIsQ0FBQztZQUNGLG1CQUFtQixDQUFDLFdBQVcsQ0FDN0IsbUJBQW1CLEVBQ25CLEtBQUssQ0FBQyxnQkFBZ0IsQ0FDdkIsQ0FBQztTQUNIO1FBRUQsSUFBSSxDQUFDLEVBQUUsR0FBRyxtQkFBbUIsQ0FBQyxFQUFFLENBQUM7UUFDakMsSUFBSSxDQUFDLElBQUksR0FBRyxtQkFBbUIsQ0FBQyxJQUFJLENBQUM7UUFDckMsSUFBSSxDQUFDLEdBQUcsR0FBRyxtQkFBbUIsQ0FBQyxHQUFHLENBQUM7UUFDbkMsSUFBSSxDQUFDLFlBQVksR0FBRyxtQkFBbUIsQ0FBQztRQUV4QyxVQUFVO1FBQ1YsaUVBQWlFO1FBQ2pFLFVBQVU7UUFDVixnQkFBZ0I7UUFDaEIsTUFBTTtRQUNOLHFDQUFxQztRQUNyQyxPQUFPO1FBQ1AsS0FBSztRQUNMLGtFQUFrRTtRQUNsRSxVQUFVO1FBQ1YsaUJBQWlCO1FBQ2pCLE1BQU07UUFDTixzQ0FBc0M7UUFDdEMsT0FBTztRQUNQLEtBQUs7UUFDTCwwRUFBMEU7UUFDMUUsVUFBVTtRQUNWLGdDQUFnQztRQUNoQyxNQUFNO1FBQ04sbURBQW1EO1FBQ25ELE9BQU87UUFDUCxLQUFLO1FBQ0wsdUVBQXVFO1FBQ3ZFLFVBQVU7UUFDVixzQkFBc0I7UUFDdEIsTUFBTTtRQUNOLDJDQUEyQztRQUMzQyx1QkFBdUI7UUFDdkIsT0FBTztRQUNQLEtBQUs7UUFFTCxnSUFBZ0k7UUFDaEksNkRBQTZEO1FBQzdELCtEQUErRDtRQUMvRCwwREFBMEQ7UUFDMUQsZ0NBQWdDO1FBQ2hDLEtBQUs7UUFDTCx5RUFBeUU7SUFDM0UsQ0FBQztJQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BNEJHO0lBQ0ksV0FBVyxDQUFDLGFBQTRCO1FBQzdDLE9BQU8sSUFBSSxtQkFBUSxDQUFDLElBQUksRUFBRSxhQUFhLENBQUMsSUFBSSxFQUFFO1lBQzVDLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWTtZQUMvQixJQUFJLEVBQUUsYUFBYSxDQUFDLElBQUk7WUFDeEIsY0FBYyxFQUFFLGFBQWEsQ0FBQyxjQUFjO1lBQzVDLGdCQUFnQixFQUFFLGFBQWEsQ0FBQyxnQkFBZ0I7U0FDakQsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7QUF6S0gsMEJBMEtDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgS3VzdG9DbHVzdGVyIH0gZnJvbSBcIkBjZGt0Zi9wcm92aWRlci1henVyZXJtL2xpYi9rdXN0by1jbHVzdGVyXCI7XG5pbXBvcnQgeyBSZXNvdXJjZUdyb3VwIH0gZnJvbSBcIkBjZGt0Zi9wcm92aWRlci1henVyZXJtL2xpYi9yZXNvdXJjZS1ncm91cFwiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7XG4gIENvbXB1dGVTcGVjaWZpY2F0aW9uLFxuICBJQ29tcHV0ZVNwZWNpZmljYXRpb24sXG59IGZyb20gXCIuL2NvbXB1dGUtc3BlY2lmaWNhdGlvblwiO1xuaW1wb3J0IHsgRGF0YWJhc2UsIERhdGFiYXNlUHJvcHMgfSBmcm9tIFwiLi9kYXRhYmFzZVwiO1xuaW1wb3J0IHsgQXp1cmVSZXNvdXJjZSB9IGZyb20gXCIuLi8uLi9jb3JlLWF6dXJlL2xpYi9pbmRleFwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIENsdXN0ZXJQcm9wcyB7XG4gIC8qKlxuICAgKiBBbiBvcHRpb25hbCByZWZlcmVuY2UgdG8gdGhlIHJlc291cmNlIGdyb3VwIGluIHdoaWNoIHRvIGRlcGxveSB0aGUgS3VzdG8gQ2x1c3Rlci5cbiAgICogSWYgbm90IHByb3ZpZGVkLCB0aGUgS3VzdG8gQ2x1c3RlciB3aWxsIGJlIGRlcGxveWVkIGluIHRoZSBkZWZhdWx0IHJlc291cmNlIGdyb3VwLlxuICAgKi9cbiAgcmVhZG9ubHkgcmVzb3VyY2VHcm91cD86IFJlc291cmNlR3JvdXA7XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgS3VzdG8gQ2x1c3RlciB0byBjcmVhdGUuXG4gICAqIE9ubHkgNC0yMiBsb3dlcmNhc2UgYWxwaGFudW1lcmljIGNoYXJhY3RlcnMgYWxsb3dlZCwgc3RhcnRpbmcgd2l0aCBhIGxldHRlci5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBTS1Ugb2YgdGhlIEt1c3RvIENsdXN0ZXIuIEFsbCB0aGUgYWxsb3dlZCB2YWx1ZXMgYXJlIGRlZmluZWQgaW4gdGhlIENvbXB1dGVTcGVjaWZpY2F0aW9uIGNsYXNzLlxuICAgKiBAZGVmYXVsdCBkZXZ0ZXN0RXh0cmFTbWFsbER2MlxuICAgKi9cbiAgcmVhZG9ubHkgc2t1PzogSUNvbXB1dGVTcGVjaWZpY2F0aW9uO1xuICAvKipcbiAgICogVGhlIG5vZGUgY291bnQgZm9yIHRoZSBjbHVzdGVyLlxuICAgKiBAZGVmYXVsdCAyXG4gICAqL1xuICByZWFkb25seSBjYXBhY2l0eT86IG51bWJlcjtcbiAgLyoqXG4gICAqIFRoZSB0eXBlIG9mIE1hbmFnZWQgU2VydmljZSBJZGVudGl0eS5cbiAgICogQGRlZmF1bHQgXCJTeXN0ZW1Bc3NpZ25lZFwiXG4gICAqL1xuICByZWFkb25seSBpZGVudGl0eVR5cGU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBIGxpc3Qgb2YgVXNlciBBc3NpZ25lZCBNYW5hZ2VkIElkZW50aXR5IElEcyB0byBiZSBhc3NpZ25lZCB0byB0aGlzIEt1c3RvIENsdXN0ZXIuXG4gICAqL1xuICByZWFkb25seSBpZGVudGl0eUlkcz86IHN0cmluZ1tdO1xuICAvKipcbiAgICogSXMgdGhlIHB1YmxpYyBuZXR3b3JrIGFjY2VzcyBlbmFibGVkP1xuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBwdWJsaWNOZXR3b3JrQWNjZXNzRW5hYmxlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgaWYgdGhlIGNsdXN0ZXIgY291bGQgYmUgYXV0b21hdGljYWxseSBzdG9wcGVkLlxuICAgKiAoZHVlIHRvIGxhY2sgb2YgZGF0YSBvciBubyBhY3Rpdml0eSBmb3IgbWFueSBkYXlzKS5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgYXV0b1N0b3BFbmFibGVkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFNwZWNpZmllcyBpZiB0aGUgc3RyZWFtaW5nIGluZ2VzdCBpcyBlbmFibGVkLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBzdHJlYW1pbmdJbmdlc3Rpb25FbmFibGVkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFNwZWNpZmllcyBpZiB0aGUgcHVyZ2Ugb3BlcmF0aW9ucyBhcmUgZW5hYmxlZC5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IHB1cmdlRW5hYmxlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgaWYgdGhlIHB1cmdlIG9wZXJhdGlvbnMgYXJlIGVuYWJsZWQuIEJhc2VkIG9uIHRoZSBTS1UsIHRoZSBudW1iZXIgb2Ygem9uZXMgYWxsb3dlZCBhcmUgZGlmZmVyZW50LlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBlbmFibGVab25lcz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBUaGUgbWluaW11bSBudW1iZXIgb2YgYWxsb3dlZCBpbnN0YW5jZXMuIE11c3QgYmV0d2VlbiAwIGFuZCAxMDAwLlxuICAgKi9cbiAgcmVhZG9ubHkgbWluaW11bUluc3RhbmNlcz86IG51bWJlcjtcbiAgLyoqXG4gICAqIFRoZSBtYXhpbXVtIG51bWJlciBvZiBhbGxvd2VkIGluc3RhbmNlcy4gTXVzdCBiZXR3ZWVuIDAgYW5kIDEwMDAuXG4gICAqL1xuICByZWFkb25seSBtYXhpbXVtSW5zdGFuY2VzPzogbnVtYmVyO1xuICAvKipcbiAgICogQSBtYXBwaW5nIG9mIHRhZ3MgdG8gYXNzaWduIHRvIHRoZSBLdXN0by5cbiAgICovXG4gIHJlYWRvbmx5IHRhZ3M/OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9O1xufVxuXG5leHBvcnQgY2xhc3MgQ2x1c3RlciBleHRlbmRzIEF6dXJlUmVzb3VyY2Uge1xuICByZWFkb25seSBwcm9wczogQ2x1c3RlclByb3BzO1xuICBwdWJsaWMga3VzdG9DbHVzdGVyOiBLdXN0b0NsdXN0ZXI7XG4gIHB1YmxpYyBpZDogc3RyaW5nO1xuICBwdWJsaWMgcmVzb3VyY2VHcm91cDogUmVzb3VyY2VHcm91cDtcbiAgcHVibGljIG5hbWU6IHN0cmluZztcbiAgcHVibGljIHJlYWRvbmx5IHVyaTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBSZXByZXNlbnRzIGEgS3VzdG8gKEF6dXJlIERhdGEgRXhwbG9yZXIpIGNsdXN0ZXIgaW4gQXp1cmUuXG4gICAqXG4gICAqIFRoaXMgY2xhc3MgaXMgcmVzcG9uc2libGUgZm9yIHRoZSBjcmVhdGlvbiBhbmQgbWFuYWdlbWVudCBvZiBhIEt1c3RvIENsdXN0ZXIsIHdoaWNoIGlzIGEgaGlnaGx5IHNjYWxhYmxlIGFuZCBzZWN1cmVcbiAgICogYW5hbHl0aWNzIHNlcnZpY2UgZm9yIGluZ2VzdGluZywgc3RvcmluZywgYW5kIGFuYWx5emluZyBsYXJnZSB2b2x1bWVzIG9mIGRhdGEuIFRoZSBjbHVzdGVyIHN1cHBvcnRzIHZhcmlvdXMgY29uZmlndXJhdGlvbnNcbiAgICogdGFpbG9yZWQgdG8gdGhlIG5lZWRzIG9mIHNwZWNpZmljIGRhdGEgd29ya2xvYWRzIGFuZCBzZWN1cml0eSByZXF1aXJlbWVudHMuXG4gICAqXG4gICAqIEBwYXJhbSBzY29wZSAtIFRoZSBzY29wZSBpbiB3aGljaCB0byBkZWZpbmUgdGhpcyBjb25zdHJ1Y3QsIHR5cGljYWxseSByZXByZXNlbnRpbmcgdGhlIENsb3VkIERldmVsb3BtZW50IEtpdCAoQ0RLKSBzdGFjay5cbiAgICogQHBhcmFtIGlkIC0gVGhlIHVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGlzIGluc3RhbmNlIG9mIHRoZSBjbHVzdGVyLlxuICAgKiBAcGFyYW0gcHJvcHMgLSBUaGUgcHJvcGVydGllcyByZXF1aXJlZCB0byBjb25maWd1cmUgdGhlIEt1c3RvIGNsdXN0ZXIsIGFzIGRlZmluZWQgaW4gdGhlIENsdXN0ZXJQcm9wcyBpbnRlcmZhY2UuXG4gICAqXG4gICAqIEV4YW1wbGUgdXNhZ2U6XG4gICAqIGBgYHR5cGVzY3JpcHRcbiAgICogbmV3IENsdXN0ZXIodGhpcywgJ015S3VzdG9DbHVzdGVyJywge1xuICAgKiAgIG5hbWU6ICdleGFtcGxlLWNsdXN0ZXInLFxuICAgKiAgIGxvY2F0aW9uOiAnV2VzdCBVUycsXG4gICAqICAgcmVzb3VyY2VHcm91cDogbXlSZXNvdXJjZUdyb3VwLFxuICAgKiAgIHNrdTogeyB0aWVyOiAnU3RhbmRhcmQnLCBuYW1lOiAnRDEzX3YyJywgY2FwYWNpdHk6IDIgfSxcbiAgICogICB0YWdzOiB7XG4gICAqICAgICBwcm9qZWN0OiAnRGF0YSBBbmFseXRpY3MnXG4gICAqICAgfVxuICAgKiB9KTtcbiAgICogYGBgXG4gICAqL1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogQ2x1c3RlclByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIHRoaXMucHJvcHMgPSBwcm9wcztcbiAgICB0aGlzLnJlc291cmNlR3JvdXAgPSB0aGlzLnNldHVwUmVzb3VyY2VHcm91cChwcm9wcyk7XG5cbiAgICAvKipcbiAgICAgKiBEZWZpbmUgZGVmYXVsdCB2YWx1ZXMuXG4gICAgICovXG4gICAgY29uc3Qgc2t1ID0gcHJvcHMuc2t1IHx8IENvbXB1dGVTcGVjaWZpY2F0aW9uLmRldnRlc3RFeHRyYVNtYWxsRHYyO1xuICAgIGNvbnN0IGVuYWJsZVpvbmVzID0gcHJvcHMuZW5hYmxlWm9uZXMgfHwgdHJ1ZTtcblxuICAgIGNvbnN0IGRlZmF1bHRzID0ge1xuICAgICAgcHVibGljTmV0d29ya0FjY2Vzc0VuYWJsZWQ6IHByb3BzLnB1YmxpY05ldHdvcmtBY2Nlc3NFbmFibGVkIHx8IHRydWUsXG4gICAgICBhdXRvU3RvcEVuYWJsZWQ6IHByb3BzLmF1dG9TdG9wRW5hYmxlZCB8fCB0cnVlLFxuICAgICAgc3RyZWFtaW5nSW5nZXN0aW9uRW5hYmxlZDogcHJvcHMuc3RyZWFtaW5nSW5nZXN0aW9uRW5hYmxlZCB8fCB0cnVlLFxuICAgICAgcHVyZ2VFbmFibGVkOiBwcm9wcy5wdXJnZUVuYWJsZWQgfHwgZmFsc2UsXG4gICAgICB6b25lczogZW5hYmxlWm9uZXMgPyBza3UuYXZhaWxpYmxlWm9uZXMgOiBbXSxcbiAgICAgIHNrdToge1xuICAgICAgICBuYW1lOiBza3Uuc2t1TmFtZSxcbiAgICAgICAgY2FwYWNpdHk6IHByb3BzLmNhcGFjaXR5IHx8IDIsXG4gICAgICB9LFxuICAgICAgaWRlbnRpdHk6IHtcbiAgICAgICAgdHlwZTogXCJTeXN0ZW1Bc3NpZ25lZFwiLFxuICAgICAgICBpZGVudGl0eUlkczogW10sXG4gICAgICB9LFxuICAgIH07XG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGUgS3VzdG8gQ2x1c3RlciByZXNvdXJjZS5cbiAgICAgKi9cbiAgICBjb25zdCBhenVyZXJtS3VzdG9DbHVzdGVyID0gbmV3IEt1c3RvQ2x1c3Rlcih0aGlzLCBcIkt1c3RvXCIsIHtcbiAgICAgIC4uLmRlZmF1bHRzLFxuICAgICAgbmFtZTogcHJvcHMubmFtZSxcbiAgICAgIGxvY2F0aW9uOiB0aGlzLnJlc291cmNlR3JvdXAubG9jYXRpb24sXG4gICAgICByZXNvdXJjZUdyb3VwTmFtZTogdGhpcy5yZXNvdXJjZUdyb3VwLm5hbWUsXG4gICAgICB0YWdzOiBwcm9wcy50YWdzLFxuICAgIH0pO1xuICAgIGlmIChwcm9wcy5pZGVudGl0eVR5cGUpIHtcbiAgICAgIGF6dXJlcm1LdXN0b0NsdXN0ZXIuYWRkT3ZlcnJpZGUoXCJpZGVudGl0eVwiLCB7XG4gICAgICAgIHR5cGU6IHByb3BzLmlkZW50aXR5VHlwZSxcbiAgICAgICAgaWRlbnRpdHlJZHM6IHByb3BzLmlkZW50aXR5SWRzLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKHByb3BzLm1pbmltdW1JbnN0YW5jZXMgJiYgcHJvcHMubWF4aW11bUluc3RhbmNlcykge1xuICAgICAgYXp1cmVybUt1c3RvQ2x1c3Rlci5hZGRPdmVycmlkZShcbiAgICAgICAgXCJtaW5pbXVtX2luc3RhbmNlc1wiLFxuICAgICAgICBwcm9wcy5taW5pbXVtSW5zdGFuY2VzLFxuICAgICAgKTtcbiAgICAgIGF6dXJlcm1LdXN0b0NsdXN0ZXIuYWRkT3ZlcnJpZGUoXG4gICAgICAgIFwibWF4aW11bV9pbnN0YW5jZXNcIixcbiAgICAgICAgcHJvcHMubWF4aW11bUluc3RhbmNlcyxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgdGhpcy5pZCA9IGF6dXJlcm1LdXN0b0NsdXN0ZXIuaWQ7XG4gICAgdGhpcy5uYW1lID0gYXp1cmVybUt1c3RvQ2x1c3Rlci5uYW1lO1xuICAgIHRoaXMudXJpID0gYXp1cmVybUt1c3RvQ2x1c3Rlci51cmk7XG4gICAgdGhpcy5rdXN0b0NsdXN0ZXIgPSBhenVyZXJtS3VzdG9DbHVzdGVyO1xuXG4gICAgLy8gT3V0cHV0c1xuICAgIC8vIGNvbnN0IGNka3RmVGVycmFmb3JtT3V0cHV0S3VzdG9JZCA9IG5ldyBjZGt0Zi5UZXJyYWZvcm1PdXRwdXQoXG4gICAgLy8gICB0aGlzLFxuICAgIC8vICAgXCJLdXN0b19pZFwiLFxuICAgIC8vICAge1xuICAgIC8vICAgICB2YWx1ZTogYXp1cmVybUt1c3RvQ2x1c3Rlci5pZCxcbiAgICAvLyAgIH0sXG4gICAgLy8gKTtcbiAgICAvLyBjb25zdCBjZGt0ZlRlcnJhZm9ybU91dHB1dEt1c3RvVXJpID0gbmV3IGNka3RmLlRlcnJhZm9ybU91dHB1dChcbiAgICAvLyAgIHRoaXMsXG4gICAgLy8gICBcIkt1c3RvX3VyaVwiLFxuICAgIC8vICAge1xuICAgIC8vICAgICB2YWx1ZTogYXp1cmVybUt1c3RvQ2x1c3Rlci51cmksXG4gICAgLy8gICB9LFxuICAgIC8vICk7XG4gICAgLy8gY29uc3QgY2RrdGZUZXJyYWZvcm1PdXRwdXREYXRhSW5nZXN0aW9uVXJpID0gbmV3IGNka3RmLlRlcnJhZm9ybU91dHB1dChcbiAgICAvLyAgIHRoaXMsXG4gICAgLy8gICBcIkt1c3RvX2RhdGFfaW5nZXN0aW9uX3VyaVwiLFxuICAgIC8vICAge1xuICAgIC8vICAgICB2YWx1ZTogYXp1cmVybUt1c3RvQ2x1c3Rlci5kYXRhSW5nZXN0aW9uVXJpLFxuICAgIC8vICAgfSxcbiAgICAvLyApO1xuICAgIC8vIGNvbnN0IGNka3RmVGVycmFmb3JtT3V0cHV0S3VzdG9JZGVudGl0eSA9IG5ldyBjZGt0Zi5UZXJyYWZvcm1PdXRwdXQoXG4gICAgLy8gICB0aGlzLFxuICAgIC8vICAgXCJLdXN0b19pZGVudGl0eVwiLFxuICAgIC8vICAge1xuICAgIC8vICAgICB2YWx1ZTogYXp1cmVybUt1c3RvQ2x1c3Rlci5pZGVudGl0eSxcbiAgICAvLyAgICAgc2Vuc2l0aXZlOiB0cnVlLFxuICAgIC8vICAgfSxcbiAgICAvLyApO1xuXG4gICAgLypUaGlzIGFsbG93cyB0aGUgVGVycmFmb3JtIHJlc291cmNlIG5hbWUgdG8gbWF0Y2ggdGhlIG9yaWdpbmFsIG5hbWUuIFlvdSBjYW4gcmVtb3ZlIHRoZSBjYWxsIGlmIHlvdSBkb24ndCBuZWVkIHRoZW0gdG8gbWF0Y2guKi9cbiAgICAvLyBjZGt0ZlRlcnJhZm9ybU91dHB1dEt1c3RvSWQub3ZlcnJpZGVMb2dpY2FsSWQoXCJLdXN0b19pZFwiKTtcbiAgICAvLyBjZGt0ZlRlcnJhZm9ybU91dHB1dEt1c3RvVXJpLm92ZXJyaWRlTG9naWNhbElkKFwiS3VzdG9fdXJpXCIpO1xuICAgIC8vIGNka3RmVGVycmFmb3JtT3V0cHV0RGF0YUluZ2VzdGlvblVyaS5vdmVycmlkZUxvZ2ljYWxJZChcbiAgICAvLyAgIFwiS3VzdG9fZGF0YV9pbmdlc3Rpb25fdXJpXCIsXG4gICAgLy8gKTtcbiAgICAvLyBjZGt0ZlRlcnJhZm9ybU91dHB1dEt1c3RvSWRlbnRpdHkub3ZlcnJpZGVMb2dpY2FsSWQoXCJLdXN0b19pZGVudGl0eVwiKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGEgbmV3IGRhdGFiYXNlIHRvIHRoZSBBenVyZSBLdXN0byBDbHVzdGVyLlxuICAgKlxuICAgKiBUaGlzIG1ldGhvZCBjcmVhdGVzIGEgZGF0YWJhc2Ugd2l0aGluIHRoZSBBenVyZSBEYXRhIEV4cGxvcmVyIChLdXN0bykgY2x1c3RlciwgZGVmaW5lZCBieSB0aGUgcHJvcGVydGllcyBwcm92aWRlZC5cbiAgICogQSBkYXRhYmFzZSBpbiBLdXN0byBzZXJ2ZXMgYXMgYSBsb2dpY2FsIGdyb3VwIHRvIG1hbmFnZSB2YXJpb3VzIHRhYmxlcyBhbmQgc3RvcmUgZGF0YS4gSXQgaXMgZXNzZW50aWFsIGZvciBwZXJmb3JtaW5nXG4gICAqIGRhdGEgYW5hbHl0aWNzIGFuZCBydW5uaW5nIHF1ZXJpZXMuIFRoZSBkYXRhYmFzZSBjb25maWd1cmF0aW9uIGNhbiBpbmNsdWRlIHNldHRpbmdzIGxpa2UgaG90IGNhY2hlIGFuZCBzb2Z0IGRlbGV0ZSBwZXJpb2RzLFxuICAgKiB3aGljaCBvcHRpbWl6ZSBxdWVyeSBwZXJmb3JtYW5jZSBhbmQgbWFuYWdlIGRhdGEgbGlmZWN5Y2xlIGFjY29yZGluZyB0byBzcGVjaWZpYyByZXF1aXJlbWVudHMuXG4gICAqXG4gICAqIEBwYXJhbSBkYXRhYmFzZVByb3BzIC0gVGhlIHByb3BlcnRpZXMgcmVxdWlyZWQgdG8gY3JlYXRlIHRoZSBkYXRhYmFzZS4gVGhlc2UgcHJvcGVydGllcyBzaG91bGQgaW5jbHVkZTpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAtIGBrdXN0b2A6IFJlZmVyZW5jZSB0byB0aGUgS3VzdG8gY2x1c3RlciB0byB3aGljaCB0aGUgZGF0YWJhc2Ugd2lsbCBiZSBhZGRlZC5cbiAgICogICAgICAgICAgICAgICAgICAgICAgICAtIGBuYW1lYDogVGhlIG5hbWUgb2YgdGhlIGRhdGFiYXNlLCB3aGljaCBtdXN0IGJlIHVuaXF1ZSB3aXRoaW4gdGhlIGNsdXN0ZXIuXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgLSBgaG90Q2FjaGVQZXJpb2RgOiBPcHRpb25hbC4gU3BlY2lmaWVzIHRoZSBkdXJhdGlvbiB0aGF0IGRhdGEgc2hvdWxkIGJlIGtlcHQgaW4gY2FjaGUgZm9yIGZhc3RlciBxdWVyeSBhY2Nlc3MuXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgLSBgc29mdERlbGV0ZVBlcmlvZGA6IE9wdGlvbmFsLiBTcGVjaWZpZXMgdGhlIGR1cmF0aW9uIHRoYXQgZGF0YSBzaG91bGQgYmUgcmV0YWluZWQgYmVmb3JlIGl0IHN0b3BzIGJlaW5nIGFjY2Vzc2libGUgdG8gcXVlcmllcy5cbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgIEJvdGggdGhlIGhvdCBjYWNoZSBhbmQgc29mdCBkZWxldGUgcGVyaW9kcyBzaG91bGQgYmUgc3BlY2lmaWVkIGluIElTTyA4NjAxIGR1cmF0aW9uIGZvcm1hdC5cbiAgICpcbiAgICogQHJldHVybnMgQSBgRGF0YWJhc2VgIG9iamVjdCByZXByZXNlbnRpbmcgdGhlIG5ld2x5IGNyZWF0ZWQgZGF0YWJhc2Ugd2l0aGluIHRoZSBLdXN0byBjbHVzdGVyLlxuICAgKlxuICAgKiBFeGFtcGxlIHVzYWdlOlxuICAgKiBgYGB0eXBlc2NyaXB0XG4gICAqIGNvbnN0IG15RGF0YWJhc2UgPSBteUNsdXN0ZXIuYWRkRGF0YWJhc2Uoe1xuICAgKiAgIGt1c3RvOiBteUt1c3RvQ2x1c3RlcixcbiAgICogICBuYW1lOiAnT3BlcmF0aW9uYWxEYXRhJyxcbiAgICogICBob3RDYWNoZVBlcmlvZDogJ1AxNEQnLCAvLyAxNCBkYXlzXG4gICAqICAgc29mdERlbGV0ZVBlcmlvZDogJ1AzNjVEJyAvLyAxIHllYXJcbiAgICogfSk7XG4gICAqIGBgYFxuICAgKiBUaGlzIG1ldGhvZCBmYWNpbGl0YXRlcyB0aGUgZWZmaWNpZW50IHNldHVwIGFuZCBzY2FsaW5nIG9mIGRhdGFiYXNlcyB3aXRoaW4gYW4gQXp1cmUgS3VzdG8gY2x1c3RlciwgYWxsb3dpbmdcbiAgICogZm9yIGNvbXBsZXggZGF0YSBhbmFseXRpY3Mgb3BlcmF0aW9ucyBhY3Jvc3MgbGFyZ2UgZGF0YXNldHMuXG4gICAqL1xuICBwdWJsaWMgYWRkRGF0YWJhc2UoZGF0YWJhc2VQcm9wczogRGF0YWJhc2VQcm9wcykge1xuICAgIHJldHVybiBuZXcgRGF0YWJhc2UodGhpcywgZGF0YWJhc2VQcm9wcy5uYW1lLCB7XG4gICAgICBrdXN0b0NsdXN0ZXI6IHRoaXMua3VzdG9DbHVzdGVyLFxuICAgICAgbmFtZTogZGF0YWJhc2VQcm9wcy5uYW1lLFxuICAgICAgaG90Q2FjaGVQZXJpb2Q6IGRhdGFiYXNlUHJvcHMuaG90Q2FjaGVQZXJpb2QsXG4gICAgICBzb2Z0RGVsZXRlUGVyaW9kOiBkYXRhYmFzZVByb3BzLnNvZnREZWxldGVQZXJpb2QsXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -7,7 +7,7 @@ class ComputeSpecification {
7
7
  }
8
8
  exports.ComputeSpecification = ComputeSpecification;
9
9
  _a = JSII_RTTI_SYMBOL_1;
10
- ComputeSpecification[_a] = { fqn: "@microsoft/terraform-cdk-constructs.azure_kusto.ComputeSpecification", version: "0.0.3-pre.10" };
10
+ ComputeSpecification[_a] = { fqn: "@microsoft/terraform-cdk-constructs.azure_kusto.ComputeSpecification", version: "0.0.3-pre.12" };
11
11
  ComputeSpecification.devtestExtraSmallDv2 = {
12
12
  skuName: "Dev(No SLA)_Standard_D11_v2",
13
13
  workload: "dev/test",
@@ -1,10 +1,11 @@
1
+ import { KustoCluster } from "@cdktf/provider-azurerm/lib/kusto-cluster";
2
+ import { KustoDatabase } from "@cdktf/provider-azurerm/lib/kusto-database";
1
3
  import { Construct } from "constructs";
2
- import { ClusterProps, Cluster } from "./cluster";
3
4
  export interface DatabaseProps {
4
5
  /**
5
6
  * The Azure Kusto cluster to which this database belongs.
6
7
  */
7
- readonly kusto: Cluster;
8
+ readonly kustoCluster: KustoCluster;
8
9
  /**
9
10
  * The name of the Kusto Database to create.
10
11
  */
@@ -48,10 +49,8 @@ export interface TableSchemaProps {
48
49
  readonly columnType: string;
49
50
  }
50
51
  export declare class Database extends Construct {
51
- readonly kustoDbProps: DatabaseProps;
52
- readonly kustoProps: ClusterProps;
53
- readonly rg: string;
54
- readonly id: string;
52
+ readonly kustoDatabase: KustoDatabase;
53
+ readonly databaseName: string;
55
54
  /**
56
55
  * Represents a Kusto Database within an Azure Kusto Cluster.
57
56
  *
@@ -63,7 +62,7 @@ export declare class Database extends Construct {
63
62
  *
64
63
  * @param scope - The scope in which to define this construct, typically representing the Cloud Development Kit (CDK) stack.
65
64
  * @param id - The unique identifier for this instance of the Kusto database.
66
- * @param kustoDbProps - The properties required to configure the Kusto database. These include:
65
+ * @param props - The properties required to configure the Kusto database. These include:
67
66
  * - `kusto`: Reference to the Kusto cluster to which the database will belong.
68
67
  * - `name`: The name of the database to be created within the Kusto cluster.
69
68
  * - `hotCachePeriod`: Optional. Specifies the duration that data should be kept in cache for faster query performance.
@@ -84,7 +83,7 @@ export declare class Database extends Construct {
84
83
  * This class sets up the database configurations and integrates it within the specified Kusto cluster,
85
84
  * providing capabilities to manage and query large datasets effectively.
86
85
  */
87
- constructor(scope: Construct, id: string, kustoDbProps: DatabaseProps);
86
+ constructor(scope: Construct, id: string, props: DatabaseProps);
88
87
  /**
89
88
  * Adds a database principal assignment in the Kusto cluster, assigning specified access rights to a principal.
90
89
  *
@@ -21,7 +21,7 @@ class Database extends constructs_1.Construct {
21
21
  *
22
22
  * @param scope - The scope in which to define this construct, typically representing the Cloud Development Kit (CDK) stack.
23
23
  * @param id - The unique identifier for this instance of the Kusto database.
24
- * @param kustoDbProps - The properties required to configure the Kusto database. These include:
24
+ * @param props - The properties required to configure the Kusto database. These include:
25
25
  * - `kusto`: Reference to the Kusto cluster to which the database will belong.
26
26
  * - `name`: The name of the database to be created within the Kusto cluster.
27
27
  * - `hotCachePeriod`: Optional. Specifies the duration that data should be kept in cache for faster query performance.
@@ -42,27 +42,25 @@ class Database extends constructs_1.Construct {
42
42
  * This class sets up the database configurations and integrates it within the specified Kusto cluster,
43
43
  * providing capabilities to manage and query large datasets effectively.
44
44
  */
45
- constructor(scope, id, kustoDbProps) {
45
+ constructor(scope, id, props) {
46
46
  super(scope, id);
47
- this.kustoDbProps = kustoDbProps;
48
- this.kustoProps = kustoDbProps.kusto.kustoProps;
49
- this.rg = kustoDbProps.kusto.kustoProps.resourceGroup.name;
50
- const kustoDatabase = new kusto_database_1.KustoDatabase(this, `kusto-db-${this.kustoDbProps.name}`, {
51
- name: this.kustoDbProps.name,
52
- location: kustoDbProps.kusto.kustoProps.resourceGroup.location,
53
- resourceGroupName: kustoDbProps.kusto.kustoProps.resourceGroup.name,
54
- clusterName: kustoDbProps.kusto.kustoProps.name,
47
+ const kustoDatabase = new kusto_database_1.KustoDatabase(this, `kusto-db-${props.name}`, {
48
+ name: props.name,
49
+ location: props.kustoCluster.location,
50
+ resourceGroupName: props.kustoCluster.resourceGroupName,
51
+ clusterName: props.kustoCluster.name,
55
52
  });
56
- if (this.kustoDbProps.hotCachePeriod) {
57
- kustoDatabase.addOverride("hot_cache_period", this.kustoDbProps.hotCachePeriod);
53
+ if (props.hotCachePeriod) {
54
+ kustoDatabase.addOverride("hot_cache_period", props.hotCachePeriod);
58
55
  }
59
- if (this.kustoDbProps.softDeletePeriod) {
60
- kustoDatabase.addOverride("soft_delete_period", this.kustoDbProps.softDeletePeriod);
56
+ if (props.softDeletePeriod) {
57
+ kustoDatabase.addOverride("soft_delete_period", props.softDeletePeriod);
61
58
  }
62
59
  // Outputs
63
- this.id = kustoDatabase.id;
60
+ this.kustoDatabase = kustoDatabase;
61
+ this.databaseName = props.name;
64
62
  const cdktfTerraformOutputKustoDbId = new cdktf.TerraformOutput(this, "id", {
65
- value: this.id,
63
+ value: this.kustoDatabase.id,
66
64
  });
67
65
  cdktfTerraformOutputKustoDbId.overrideLogicalId("id");
68
66
  }
@@ -98,9 +96,9 @@ class Database extends constructs_1.Construct {
98
96
  addPermission(kustoDatabaseAccessProps) {
99
97
  new kusto_database_principal_assignment_1.KustoDatabasePrincipalAssignment(this, `kusto-db-${kustoDatabaseAccessProps.name}-access`, {
100
98
  name: kustoDatabaseAccessProps.name,
101
- resourceGroupName: this.rg,
102
- clusterName: this.kustoProps.name,
103
- databaseName: this.kustoDbProps.name,
99
+ resourceGroupName: this.kustoDatabase.resourceGroupName,
100
+ clusterName: this.kustoDatabase.clusterName,
101
+ databaseName: this.kustoDatabase.name,
104
102
  tenantId: kustoDatabaseAccessProps.tenantId,
105
103
  principalId: kustoDatabaseAccessProps.principalId,
106
104
  principalType: kustoDatabaseAccessProps.principalType,
@@ -135,9 +133,9 @@ class Database extends constructs_1.Construct {
135
133
  })
136
134
  .join(", ");
137
135
  const scriptContent = `.create table ${tableName} ( ${schemaContent} )`;
138
- new kusto_script_1.KustoScript(this, `kusto-db-${this.kustoDbProps.name}-table-${tableName}`, {
136
+ new kusto_script_1.KustoScript(this, `kusto-db-${this.databaseName}-table-${tableName}`, {
139
137
  name: tableName,
140
- databaseId: this.id,
138
+ databaseId: this.kustoDatabase.id,
141
139
  scriptContent: scriptContent,
142
140
  continueOnErrorsEnabled: false,
143
141
  forceAnUpdateWhenValueChanged: ts_md5_1.Md5.hashStr(scriptContent),
@@ -165,9 +163,9 @@ class Database extends constructs_1.Construct {
165
163
  * database, and is tracked as part of the resource management within Azure.
166
164
  */
167
165
  addScript(scriptName, scriptContent) {
168
- new kusto_script_1.KustoScript(this, `kusto-db-${this.kustoDbProps.name}-script-${scriptName}`, {
166
+ new kusto_script_1.KustoScript(this, `kusto-db-${this.databaseName}-script-${scriptName}`, {
169
167
  name: `script-${scriptName}`,
170
- databaseId: this.id,
168
+ databaseId: this.kustoDatabase.id,
171
169
  scriptContent: scriptContent,
172
170
  continueOnErrorsEnabled: false,
173
171
  forceAnUpdateWhenValueChanged: ts_md5_1.Md5.hashStr(scriptContent),
@@ -176,5 +174,5 @@ class Database extends constructs_1.Construct {
176
174
  }
177
175
  exports.Database = Database;
178
176
  _a = JSII_RTTI_SYMBOL_1;
179
- Database[_a] = { fqn: "@microsoft/terraform-cdk-constructs.azure_kusto.Database", version: "0.0.3-pre.10" };
180
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXp1cmUta3VzdG8vbGliL2RhdGFiYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsK0VBQTJFO0FBQzNFLHlIQUFtSDtBQUNuSCwyRUFBdUU7QUFDdkUsK0JBQStCO0FBQy9CLDJDQUF1QztBQUN2QyxtQ0FBNkI7QUFxRDdCLE1BQWEsUUFBUyxTQUFRLHNCQUFTO0lBTXJDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BK0JHO0lBQ0gsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxZQUEyQjtRQUNuRSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2pCLElBQUksQ0FBQyxZQUFZLEdBQUcsWUFBWSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxVQUFVLEdBQUcsWUFBWSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUM7UUFDaEQsSUFBSSxDQUFDLEVBQUUsR0FBRyxZQUFZLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDO1FBRTNELE1BQU0sYUFBYSxHQUFHLElBQUksOEJBQWEsQ0FDckMsSUFBSSxFQUNKLFlBQVksSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsRUFDcEM7WUFDRSxJQUFJLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJO1lBQzVCLFFBQVEsRUFBRSxZQUFZLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsUUFBUTtZQUM5RCxpQkFBaUIsRUFBRSxZQUFZLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsSUFBSTtZQUNuRSxXQUFXLEVBQUUsWUFBWSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsSUFBSTtTQUNoRCxDQUNGLENBQUM7UUFFRixJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsY0FBYyxFQUFFO1lBQ3BDLGFBQWEsQ0FBQyxXQUFXLENBQ3ZCLGtCQUFrQixFQUNsQixJQUFJLENBQUMsWUFBWSxDQUFDLGNBQWMsQ0FDakMsQ0FBQztTQUNIO1FBQ0QsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLGdCQUFnQixFQUFFO1lBQ3RDLGFBQWEsQ0FBQyxXQUFXLENBQ3ZCLG9CQUFvQixFQUNwQixJQUFJLENBQUMsWUFBWSxDQUFDLGdCQUFnQixDQUNuQyxDQUFDO1NBQ0g7UUFFRCxVQUFVO1FBQ1YsSUFBSSxDQUFDLEVBQUUsR0FBRyxhQUFhLENBQUMsRUFBRSxDQUFDO1FBQzNCLE1BQU0sNkJBQTZCLEdBQUcsSUFBSSxLQUFLLENBQUMsZUFBZSxDQUM3RCxJQUFJLEVBQ0osSUFBSSxFQUNKO1lBQ0UsS0FBSyxFQUFFLElBQUksQ0FBQyxFQUFFO1NBQ2YsQ0FDRixDQUFDO1FBQ0YsNkJBQTZCLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BNEJHO0lBQ0ksYUFBYSxDQUFDLHdCQUE2QztRQUNoRSxJQUFJLHNFQUFnQyxDQUNsQyxJQUFJLEVBQ0osWUFBWSx3QkFBd0IsQ0FBQyxJQUFJLFNBQVMsRUFDbEQ7WUFDRSxJQUFJLEVBQUUsd0JBQXdCLENBQUMsSUFBSTtZQUNuQyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsRUFBRTtZQUMxQixXQUFXLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJO1lBQ2pDLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUk7WUFDcEMsUUFBUSxFQUFFLHdCQUF3QixDQUFDLFFBQVE7WUFDM0MsV0FBVyxFQUFFLHdCQUF3QixDQUFDLFdBQVc7WUFDakQsYUFBYSxFQUFFLHdCQUF3QixDQUFDLGFBQWE7WUFDckQsSUFBSSxFQUFFLHdCQUF3QixDQUFDLElBQUk7U0FDcEMsQ0FDRixDQUFDO0lBQ0osQ0FBQztJQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztPQW9CRztJQUNJLFFBQVEsQ0FBQyxTQUFpQixFQUFFLFdBQStCO1FBQ2hFLE1BQU0sYUFBYSxHQUFHLFdBQVc7YUFDOUIsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDZCxPQUFPLEdBQUcsTUFBTSxDQUFDLFVBQVUsSUFBSSxNQUFNLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDckQsQ0FBQyxDQUFDO2FBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2QsTUFBTSxhQUFhLEdBQUcsaUJBQWlCLFNBQVMsTUFBTSxhQUFhLElBQUksQ0FBQztRQUV4RSxJQUFJLDBCQUFXLENBQ2IsSUFBSSxFQUNKLFlBQVksSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLFVBQVUsU0FBUyxFQUFFLEVBQ3ZEO1lBQ0UsSUFBSSxFQUFFLFNBQVM7WUFDZixVQUFVLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDbkIsYUFBYSxFQUFFLGFBQWE7WUFDNUIsdUJBQXVCLEVBQUUsS0FBSztZQUM5Qiw2QkFBNkIsRUFBRSxZQUFHLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQztTQUMxRCxDQUNGLENBQUM7SUFDSixDQUFDO0lBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09Bb0JHO0lBQ0ksU0FBUyxDQUFDLFVBQWtCLEVBQUUsYUFBcUI7UUFDeEQsSUFBSSwwQkFBVyxDQUNiLElBQUksRUFDSixZQUFZLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxXQUFXLFVBQVUsRUFBRSxFQUN6RDtZQUNFLElBQUksRUFBRSxVQUFVLFVBQVUsRUFBRTtZQUM1QixVQUFVLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDbkIsYUFBYSxFQUFFLGFBQWE7WUFDNUIsdUJBQXVCLEVBQUUsS0FBSztZQUM5Qiw2QkFBNkIsRUFBRSxZQUFHLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQztTQUMxRCxDQUNGLENBQUM7SUFDSixDQUFDOztBQXpNSCw0QkEwTUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBLdXN0b0RhdGFiYXNlIH0gZnJvbSBcIkBjZGt0Zi9wcm92aWRlci1henVyZXJtL2xpYi9rdXN0by1kYXRhYmFzZVwiO1xuaW1wb3J0IHsgS3VzdG9EYXRhYmFzZVByaW5jaXBhbEFzc2lnbm1lbnQgfSBmcm9tIFwiQGNka3RmL3Byb3ZpZGVyLWF6dXJlcm0vbGliL2t1c3RvLWRhdGFiYXNlLXByaW5jaXBhbC1hc3NpZ25tZW50XCI7XG5pbXBvcnQgeyBLdXN0b1NjcmlwdCB9IGZyb20gXCJAY2RrdGYvcHJvdmlkZXItYXp1cmVybS9saWIva3VzdG8tc2NyaXB0XCI7XG5pbXBvcnQgKiBhcyBjZGt0ZiBmcm9tIFwiY2RrdGZcIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBNZDUgfSBmcm9tIFwidHMtbWQ1XCI7XG5pbXBvcnQgeyBDbHVzdGVyUHJvcHMsIENsdXN0ZXIgfSBmcm9tIFwiLi9jbHVzdGVyXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGF0YWJhc2VQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgQXp1cmUgS3VzdG8gY2x1c3RlciB0byB3aGljaCB0aGlzIGRhdGFiYXNlIGJlbG9uZ3MuXG4gICAqL1xuICByZWFkb25seSBrdXN0bzogQ2x1c3RlcjtcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBLdXN0byBEYXRhYmFzZSB0byBjcmVhdGUuXG4gICAqL1xuICByZWFkb25seSBuYW1lOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgdGltZSB0aGUgZGF0YSB0aGF0IHNob3VsZCBiZSBrZXB0IGluIGNhY2hlIGZvciBmYXN0IHF1ZXJpZXMgYXMgSVNPIDg2MDEgdGltZXNwYW4uXG4gICAqIERlZmF1bHQgaXMgdW5saW1pdGVkLlxuICAgKi9cbiAgcmVhZG9ubHkgaG90Q2FjaGVQZXJpb2Q/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgdGltZSB0aGUgZGF0YSBzaG91bGQgYmUga2VwdCBiZWZvcmUgaXQgc3RvcHMgYmVpbmcgYWNjZXNzaWJsZSB0byBxdWVyaWVzIGFzIElTTyA4NjAxIHRpbWVzcGFuLlxuICAgKiBEZWZhdWx0IGlzIHVubGltaXRlZC5cbiAgICovXG4gIHJlYWRvbmx5IHNvZnREZWxldGVQZXJpb2Q/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGF0YWJhc2VBY2Nlc3NQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUga3VzdG8gcHJpbmNpcGFsIGFzc2lnbm1lbnQuXG4gICAqL1xuICByZWFkb25seSBuYW1lOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgdGVuYW50IGlkIGluIHdoaWNoIHRoZSBwcmluY2lwYWwgcmVzaWRlcy5cbiAgICovXG4gIHJlYWRvbmx5IHRlbmFudElkOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgb2JqZWN0IGlkIG9mIHRoZSBwcmluY2lwYWwgdG8gYXNzaWduIHRvIEt1c3RvIERhdGFiYXNlLlxuICAgKi9cbiAgcmVhZG9ubHkgcHJpbmNpcGFsSWQ6IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSB0eXBlIG9mIHRoZSBwcmluY2lwYWwuIFZhbGlkIHZhbHVlcyBpbmNsdWRlIEFwcCwgR3JvdXAsIFVzZXIuXG4gICAqL1xuICByZWFkb25seSBwcmluY2lwYWxUeXBlOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgZGF0YWJhc2Ugcm9sZSBhc3NpZ25lZCB0byB0aGUgcHJpbmNpcGFsLlxuICAgKiBWYWxpZCB2YWx1ZXMgaW5jbHVkZSBBZG1pbiwgSW5nZXN0b3IsIE1vbml0b3IsIFVucmVzdHJpY3RlZFZpZXdlciwgVXNlciBhbmQgVmlld2VyLlxuICAgKi9cbiAgcmVhZG9ubHkgcm9sZTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRhYmxlU2NoZW1hUHJvcHMge1xuICByZWFkb25seSBjb2x1bW5OYW1lOiBzdHJpbmc7XG4gIHJlYWRvbmx5IGNvbHVtblR5cGU6IHN0cmluZztcbn1cblxuZXhwb3J0IGNsYXNzIERhdGFiYXNlIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgcHVibGljIHJlYWRvbmx5IGt1c3RvRGJQcm9wczogRGF0YWJhc2VQcm9wcztcbiAgcHVibGljIHJlYWRvbmx5IGt1c3RvUHJvcHM6IENsdXN0ZXJQcm9wcztcbiAgcHVibGljIHJlYWRvbmx5IHJnOiBzdHJpbmc7XG4gIHB1YmxpYyByZWFkb25seSBpZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBSZXByZXNlbnRzIGEgS3VzdG8gRGF0YWJhc2Ugd2l0aGluIGFuIEF6dXJlIEt1c3RvIENsdXN0ZXIuXG4gICAqXG4gICAqIFRoaXMgY2xhc3MgaXMgcmVzcG9uc2libGUgZm9yIHRoZSBjcmVhdGlvbiBhbmQgbWFuYWdlbWVudCBvZiBhIGRhdGFiYXNlIGluIEF6dXJlIERhdGEgRXhwbG9yZXIgKEt1c3RvKSxcbiAgICogd2hpY2ggc3RvcmVzIGRhdGEgdGFibGVzIGFuZCBwcm92aWRlcyBhIHF1ZXJ5IGVuZ2luZS4gQSBLdXN0byBkYXRhYmFzZSBpcyBhIGxvZ2ljYWwgZ3JvdXAgb2YgdGFibGVzXG4gICAqIGFuZCBpcyBhc3NvY2lhdGVkIHdpdGggYSBzcGVjaWZpYyBLdXN0byBjbHVzdGVyLiBUaGUgZGF0YWJhc2Ugc3VwcG9ydHMgY29uZmlndXJhdGlvbnMgc3VjaCBhc1xuICAgKiBob3QgY2FjaGUgcGVyaW9kIGFuZCBzb2Z0IGRlbGV0ZSBwZXJpb2QgdG8gb3B0aW1pemUgcGVyZm9ybWFuY2UgYW5kIGRhdGEgcmV0ZW50aW9uIGFjY29yZGluZyB0b1xuICAgKiBzcGVjaWZpYyB3b3JrbG9hZCByZXF1aXJlbWVudHMuXG4gICAqXG4gICAqIEBwYXJhbSBzY29wZSAtIFRoZSBzY29wZSBpbiB3aGljaCB0byBkZWZpbmUgdGhpcyBjb25zdHJ1Y3QsIHR5cGljYWxseSByZXByZXNlbnRpbmcgdGhlIENsb3VkIERldmVsb3BtZW50IEtpdCAoQ0RLKSBzdGFjay5cbiAgICogQHBhcmFtIGlkIC0gVGhlIHVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGlzIGluc3RhbmNlIG9mIHRoZSBLdXN0byBkYXRhYmFzZS5cbiAgICogQHBhcmFtIGt1c3RvRGJQcm9wcyAtIFRoZSBwcm9wZXJ0aWVzIHJlcXVpcmVkIHRvIGNvbmZpZ3VyZSB0aGUgS3VzdG8gZGF0YWJhc2UuIFRoZXNlIGluY2x1ZGU6XG4gICAqICAgICAgICAgICAgICAgICAgICAgICAtIGBrdXN0b2A6IFJlZmVyZW5jZSB0byB0aGUgS3VzdG8gY2x1c3RlciB0byB3aGljaCB0aGUgZGF0YWJhc2Ugd2lsbCBiZWxvbmcuXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAtIGBuYW1lYDogVGhlIG5hbWUgb2YgdGhlIGRhdGFiYXNlIHRvIGJlIGNyZWF0ZWQgd2l0aGluIHRoZSBLdXN0byBjbHVzdGVyLlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgLSBgaG90Q2FjaGVQZXJpb2RgOiBPcHRpb25hbC4gU3BlY2lmaWVzIHRoZSBkdXJhdGlvbiB0aGF0IGRhdGEgc2hvdWxkIGJlIGtlcHQgaW4gY2FjaGUgZm9yIGZhc3RlciBxdWVyeSBwZXJmb3JtYW5jZS5cbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRXhwcmVzc2VkIGluIElTTyA4NjAxIGR1cmF0aW9uIGZvcm1hdC5cbiAgICogICAgICAgICAgICAgICAgICAgICAgIC0gYHNvZnREZWxldGVQZXJpb2RgOiBPcHRpb25hbC4gU3BlY2lmaWVzIHRoZSBkdXJhdGlvbiB0aGF0IGRhdGEgc2hvdWxkIGJlIHJldGFpbmVkIGJlZm9yZSBpdCBzdG9wcyBiZWluZyBhY2Nlc3NpYmxlLlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEV4cHJlc3NlZCBpbiBJU08gODYwMSBkdXJhdGlvbiBmb3JtYXQuXG4gICAqXG4gICAqIEV4YW1wbGUgdXNhZ2U6XG4gICAqIGBgYHR5cGVzY3JpcHRcbiAgICogY29uc3QgbXlEYXRhYmFzZSA9IG5ldyBEYXRhYmFzZSh0aGlzLCAnTXlLdXN0b0RhdGFiYXNlJywge1xuICAgKiAgIGt1c3RvOiBteUt1c3RvQ2x1c3RlcixcbiAgICogICBuYW1lOiAnQW5hbHl0aWNzREInLFxuICAgKiAgIGhvdENhY2hlUGVyaW9kOiAnUDMwRCcsICAvLyAzMCBkYXlzXG4gICAqICAgc29mdERlbGV0ZVBlcmlvZDogJ1AzNjVEJyAvLyAzNjUgZGF5c1xuICAgKiB9KTtcbiAgICogYGBgXG4gICAqXG4gICAqIFRoaXMgY2xhc3Mgc2V0cyB1cCB0aGUgZGF0YWJhc2UgY29uZmlndXJhdGlvbnMgYW5kIGludGVncmF0ZXMgaXQgd2l0aGluIHRoZSBzcGVjaWZpZWQgS3VzdG8gY2x1c3RlcixcbiAgICogcHJvdmlkaW5nIGNhcGFiaWxpdGllcyB0byBtYW5hZ2UgYW5kIHF1ZXJ5IGxhcmdlIGRhdGFzZXRzIGVmZmVjdGl2ZWx5LlxuICAgKi9cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywga3VzdG9EYlByb3BzOiBEYXRhYmFzZVByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcbiAgICB0aGlzLmt1c3RvRGJQcm9wcyA9IGt1c3RvRGJQcm9wcztcbiAgICB0aGlzLmt1c3RvUHJvcHMgPSBrdXN0b0RiUHJvcHMua3VzdG8ua3VzdG9Qcm9wcztcbiAgICB0aGlzLnJnID0ga3VzdG9EYlByb3BzLmt1c3RvLmt1c3RvUHJvcHMucmVzb3VyY2VHcm91cC5uYW1lO1xuXG4gICAgY29uc3Qga3VzdG9EYXRhYmFzZSA9IG5ldyBLdXN0b0RhdGFiYXNlKFxuICAgICAgdGhpcyxcbiAgICAgIGBrdXN0by1kYi0ke3RoaXMua3VzdG9EYlByb3BzLm5hbWV9YCxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogdGhpcy5rdXN0b0RiUHJvcHMubmFtZSxcbiAgICAgICAgbG9jYXRpb246IGt1c3RvRGJQcm9wcy5rdXN0by5rdXN0b1Byb3BzLnJlc291cmNlR3JvdXAubG9jYXRpb24sXG4gICAgICAgIHJlc291cmNlR3JvdXBOYW1lOiBrdXN0b0RiUHJvcHMua3VzdG8ua3VzdG9Qcm9wcy5yZXNvdXJjZUdyb3VwLm5hbWUsXG4gICAgICAgIGNsdXN0ZXJOYW1lOiBrdXN0b0RiUHJvcHMua3VzdG8ua3VzdG9Qcm9wcy5uYW1lLFxuICAgICAgfSxcbiAgICApO1xuXG4gICAgaWYgKHRoaXMua3VzdG9EYlByb3BzLmhvdENhY2hlUGVyaW9kKSB7XG4gICAgICBrdXN0b0RhdGFiYXNlLmFkZE92ZXJyaWRlKFxuICAgICAgICBcImhvdF9jYWNoZV9wZXJpb2RcIixcbiAgICAgICAgdGhpcy5rdXN0b0RiUHJvcHMuaG90Q2FjaGVQZXJpb2QsXG4gICAgICApO1xuICAgIH1cbiAgICBpZiAodGhpcy5rdXN0b0RiUHJvcHMuc29mdERlbGV0ZVBlcmlvZCkge1xuICAgICAga3VzdG9EYXRhYmFzZS5hZGRPdmVycmlkZShcbiAgICAgICAgXCJzb2Z0X2RlbGV0ZV9wZXJpb2RcIixcbiAgICAgICAgdGhpcy5rdXN0b0RiUHJvcHMuc29mdERlbGV0ZVBlcmlvZCxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgLy8gT3V0cHV0c1xuICAgIHRoaXMuaWQgPSBrdXN0b0RhdGFiYXNlLmlkO1xuICAgIGNvbnN0IGNka3RmVGVycmFmb3JtT3V0cHV0S3VzdG9EYklkID0gbmV3IGNka3RmLlRlcnJhZm9ybU91dHB1dChcbiAgICAgIHRoaXMsXG4gICAgICBcImlkXCIsXG4gICAgICB7XG4gICAgICAgIHZhbHVlOiB0aGlzLmlkLFxuICAgICAgfSxcbiAgICApO1xuICAgIGNka3RmVGVycmFmb3JtT3V0cHV0S3VzdG9EYklkLm92ZXJyaWRlTG9naWNhbElkKFwiaWRcIik7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBhIGRhdGFiYXNlIHByaW5jaXBhbCBhc3NpZ25tZW50IGluIHRoZSBLdXN0byBjbHVzdGVyLCBhc3NpZ25pbmcgc3BlY2lmaWVkIGFjY2VzcyByaWdodHMgdG8gYSBwcmluY2lwYWwuXG4gICAqXG4gICAqIFRoaXMgbWV0aG9kIGlzIHVzZWQgdG8gZ3JhbnQgYWNjZXNzIHBlcm1pc3Npb25zIHRvIGEgc3BlY2lmaWMgdXNlciwgZ3JvdXAsIG9yIHNlcnZpY2UgcHJpbmNpcGFsIHdpdGhpbiBhbiBBenVyZSBBY3RpdmUgRGlyZWN0b3J5LlxuICAgKiBUaGVzZSBwZXJtaXNzaW9ucyBkZXRlcm1pbmUgdGhlIGxldmVsIG9mIGFjY2VzcyB0aGF0IHRoZSBwcmluY2lwYWwgaGFzIG92ZXIgdGhlIEt1c3RvIGRhdGFiYXNlLCBzdWNoIGFzIHZpZXdpbmcsIGluZ2VzdGluZywgb3IgbWFuYWdpbmcgZGF0YS5cbiAgICogVGhlIGFzc2lnbm1lbnQgaXMgbWFkZSBieSBjcmVhdGluZyBhIEt1c3RvRGF0YWJhc2VQcmluY2lwYWxBc3NpZ25tZW50IHJlc291cmNlLCBzcGVjaWZ5aW5nIHRoZSBwcmluY2lwYWwgZGV0YWlscyBhbmQgdGhlIHR5cGUgb2Ygcm9sZVxuICAgKiB0aGV5IHNob3VsZCBhc3N1bWUuXG4gICAqXG4gICAqIEBwYXJhbSBrdXN0b0RhdGFiYXNlQWNjZXNzUHJvcHMgLSBUaGUgcHJvcGVydGllcyBkZWZpbmluZyB0aGUgcHJpbmNpcGFsIGFzc2lnbm1lbnQuIFRoaXMgaW5jbHVkZXM6XG4gICAqICAgLSBgbmFtZWA6IEEgdW5pcXVlIG5hbWUgaWRlbnRpZnlpbmcgdGhpcyBwcmluY2lwYWwgYXNzaWdubWVudC5cbiAgICogICAtIGB0ZW5hbnRJZGA6IFRoZSBBenVyZSBBY3RpdmUgRGlyZWN0b3J5IHRlbmFudCBJRCB3aGVyZSB0aGUgcHJpbmNpcGFsIHJlc2lkZXMuXG4gICAqICAgLSBgcHJpbmNpcGFsSWRgOiBUaGUgb2JqZWN0IElEIG9mIHRoZSBwcmluY2lwYWwgKHVzZXIsIGdyb3VwLCBvciBzZXJ2aWNlIHByaW5jaXBhbCkgaW4gQXp1cmUgQUQuXG4gICAqICAgLSBgcHJpbmNpcGFsVHlwZWA6IFRoZSB0eXBlIG9mIHByaW5jaXBhbCAoZS5nLiwgVXNlciwgR3JvdXAsIEFwcCkuXG4gICAqICAgLSBgcm9sZWA6IFRoZSBkYXRhYmFzZSByb2xlIGFzc2lnbmVkIHRvIHRoZSBwcmluY2lwYWwuIFJvbGVzIGNhbiBpbmNsdWRlIEFkbWluLCBVc2VyLCBWaWV3ZXIsIGFtb25nIG90aGVycy5cbiAgICpcbiAgICogRXhhbXBsZSB1c2FnZTpcbiAgICogYGBgdHlwZXNjcmlwdFxuICAgKiBteURhdGFiYXNlLmFkZFBlcm1pc3Npb24oe1xuICAgKiAgIG5hbWU6ICdEYXRhU2NpZW5jZVRlYW1BY2Nlc3MnLFxuICAgKiAgIHRlbmFudElkOiAndGVuYW50LWlkJyxcbiAgICogICBwcmluY2lwYWxJZDogJ3ByaW5jaXBhbC1pZCcsXG4gICAqICAgcHJpbmNpcGFsVHlwZTogJ0dyb3VwJyxcbiAgICogICByb2xlOiAnVmlld2VyJ1xuICAgKiB9KTtcbiAgICogYGBgXG4gICAqIFRoaXMgbWV0aG9kIGNyZWF0ZXMgYSBuZXcgcHJpbmNpcGFsIGFzc2lnbm1lbnQsIGVuYWJsaW5nIHNwZWNpZmllZCBhY2Nlc3MgY29udHJvbHMgZm9yIHRoZSBwcmluY2lwYWxcbiAgICogb24gdGhlIEt1c3RvIGRhdGFiYXNlIGJhc2VkIG9uIHRoZSByb2xlIGFzc2lnbmVkLiBJdCBpcyBjcnVjaWFsIGZvciBtYW5hZ2luZyBzZWN1cml0eSBhbmQgYWNjZXNzXG4gICAqIGdvdmVybmFuY2Ugd2l0aGluIHRoZSBLdXN0byBlbnZpcm9ubWVudC5cbiAgICovXG4gIHB1YmxpYyBhZGRQZXJtaXNzaW9uKGt1c3RvRGF0YWJhc2VBY2Nlc3NQcm9wczogRGF0YWJhc2VBY2Nlc3NQcm9wcykge1xuICAgIG5ldyBLdXN0b0RhdGFiYXNlUHJpbmNpcGFsQXNzaWdubWVudChcbiAgICAgIHRoaXMsXG4gICAgICBga3VzdG8tZGItJHtrdXN0b0RhdGFiYXNlQWNjZXNzUHJvcHMubmFtZX0tYWNjZXNzYCxcbiAgICAgIHtcbiAgICAgICAgbmFtZToga3VzdG9EYXRhYmFzZUFjY2Vzc1Byb3BzLm5hbWUsXG4gICAgICAgIHJlc291cmNlR3JvdXBOYW1lOiB0aGlzLnJnLFxuICAgICAgICBjbHVzdGVyTmFtZTogdGhpcy5rdXN0b1Byb3BzLm5hbWUsXG4gICAgICAgIGRhdGFiYXNlTmFtZTogdGhpcy5rdXN0b0RiUHJvcHMubmFtZSxcbiAgICAgICAgdGVuYW50SWQ6IGt1c3RvRGF0YWJhc2VBY2Nlc3NQcm9wcy50ZW5hbnRJZCxcbiAgICAgICAgcHJpbmNpcGFsSWQ6IGt1c3RvRGF0YWJhc2VBY2Nlc3NQcm9wcy5wcmluY2lwYWxJZCxcbiAgICAgICAgcHJpbmNpcGFsVHlwZToga3VzdG9EYXRhYmFzZUFjY2Vzc1Byb3BzLnByaW5jaXBhbFR5cGUsXG4gICAgICAgIHJvbGU6IGt1c3RvRGF0YWJhc2VBY2Nlc3NQcm9wcy5yb2xlLFxuICAgICAgfSxcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYSBuZXcgdGFibGUgdG8gYW4gZXhpc3RpbmcgQXp1cmUgS3VzdG8gZGF0YWJhc2UuXG4gICAqXG4gICAqIFRoaXMgbWV0aG9kIGNyZWF0ZXMgYSB0YWJsZSB3aXRoaW4gdGhlIHNwZWNpZmllZCBLdXN0byBkYXRhYmFzZSB1c2luZyBhIGdpdmVuIHNjaGVtYS4gVGFibGVzIGluIEt1c3RvIHN0b3JlIHN0cnVjdHVyZWQgZGF0YSB3aXRoXG4gICAqIGRlZmluZWQgY29sdW1ucyBhbmQgdHlwZXMsIHdoaWNoIGFyZSBjcnVjaWFsIGZvciBzdG9yaW5nIGFuZCBxdWVyeWluZyBsYXJnZSBkYXRhc2V0cyBlZmZpY2llbnRseS4gVGhlIG1ldGhvZCBjb25zdHJ1Y3RzIGEgS3VzdG9cbiAgICogRGF0YSBFeHBsb3JlciBjb250cm9sIGNvbW1hbmQgdG8gY3JlYXRlIHRoZSB0YWJsZSBhbmQgdGhlbiBleGVjdXRlcyB0aGlzIGNvbW1hbmQgd2l0aGluIHRoZSBjb250ZXh0IG9mIHRoZSBkYXRhYmFzZS5cbiAgICpcbiAgICogQHBhcmFtIHRhYmxlTmFtZSAtIFRoZSBuYW1lIG9mIHRoZSB0YWJsZSB0byBjcmVhdGUsIHdoaWNoIG11c3QgYmUgdW5pcXVlIHdpdGhpbiB0aGUgZGF0YWJhc2UuXG4gICAqIEBwYXJhbSB0YWJsZVNjaGVtYSAtIEFuIGFycmF5IG9mIHNjaGVtYSBwcm9wZXJ0aWVzIGRlZmluaW5nIHRoZSBjb2x1bW5zIG9mIHRoZSB0YWJsZSwgaW5jbHVkaW5nIGNvbHVtbiBuYW1lcyBhbmQgdGhlaXIgZGF0YSB0eXBlcy5cbiAgICpcbiAgICogRXhhbXBsZSB1c2FnZTpcbiAgICogYGBgdHlwZXNjcmlwdFxuICAgKiBteURhdGFiYXNlLmFkZFRhYmxlKCdTYWxlc0RhdGEnLCBbXG4gICAqICAgeyBjb2x1bW5OYW1lOiAnVHJhbnNhY3Rpb25JZCcsIGNvbHVtblR5cGU6ICdpbnQnIH0sXG4gICAqICAgeyBjb2x1bW5OYW1lOiAnVHJhbnNhY3Rpb25EYXRlJywgY29sdW1uVHlwZTogJ2RhdGV0aW1lJyB9LFxuICAgKiAgIHsgY29sdW1uTmFtZTogJ0Ftb3VudCcsIGNvbHVtblR5cGU6ICdyZWFsJyB9XG4gICAqIF0pO1xuICAgKiBgYGBcbiAgICogVGhpcyBtZXRob2QgY29uc3RydWN0cyB0aGUgY29tbWFuZCB0byBjcmVhdGUgdGhlIHRhYmxlIGFuZCBhcHBsaWVzIGl0IGRpcmVjdGx5IHdpdGhpbiB0aGUgS3VzdG8gZGF0YWJhc2UsXG4gICAqIGVuc3VyaW5nIHRoZSB0YWJsZSBpcyByZWFkeSBmb3IgZGF0YSBpbmdlc3Rpb24gYW5kIHF1ZXJ5aW5nLlxuICAgKi9cbiAgcHVibGljIGFkZFRhYmxlKHRhYmxlTmFtZTogc3RyaW5nLCB0YWJsZVNjaGVtYTogVGFibGVTY2hlbWFQcm9wc1tdKSB7XG4gICAgY29uc3Qgc2NoZW1hQ29udGVudCA9IHRhYmxlU2NoZW1hXG4gICAgICAubWFwKChjb2x1bW4pID0+IHtcbiAgICAgICAgcmV0dXJuIGAke2NvbHVtbi5jb2x1bW5OYW1lfToke2NvbHVtbi5jb2x1bW5UeXBlfWA7XG4gICAgICB9KVxuICAgICAgLmpvaW4oXCIsIFwiKTtcbiAgICBjb25zdCBzY3JpcHRDb250ZW50ID0gYC5jcmVhdGUgdGFibGUgJHt0YWJsZU5hbWV9ICggJHtzY2hlbWFDb250ZW50fSApYDtcblxuICAgIG5ldyBLdXN0b1NjcmlwdChcbiAgICAgIHRoaXMsXG4gICAgICBga3VzdG8tZGItJHt0aGlzLmt1c3RvRGJQcm9wcy5uYW1lfS10YWJsZS0ke3RhYmxlTmFtZX1gLFxuICAgICAge1xuICAgICAgICBuYW1lOiB0YWJsZU5hbWUsXG4gICAgICAgIGRhdGFiYXNlSWQ6IHRoaXMuaWQsXG4gICAgICAgIHNjcmlwdENvbnRlbnQ6IHNjcmlwdENvbnRlbnQsXG4gICAgICAgIGNvbnRpbnVlT25FcnJvcnNFbmFibGVkOiBmYWxzZSxcbiAgICAgICAgZm9yY2VBblVwZGF0ZVdoZW5WYWx1ZUNoYW5nZWQ6IE1kNS5oYXNoU3RyKHNjcmlwdENvbnRlbnQpLFxuICAgICAgfSxcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYW5kIGV4ZWN1dGVzIGEgY29udHJvbCBjb21tYW5kIG9yIHNjcmlwdCB3aXRoaW4gdGhlIEt1c3RvIGRhdGFiYXNlLlxuICAgKlxuICAgKiBUaGlzIG1ldGhvZCBmYWNpbGl0YXRlcyB0aGUgZXhlY3V0aW9uIG9mIEt1c3RvIFF1ZXJ5IExhbmd1YWdlIChLUUwpIHNjcmlwdHMgb3IgY29udHJvbCBjb21tYW5kcyB3aXRoaW4gdGhlIHNwZWNpZmllZFxuICAgKiBLdXN0byBkYXRhYmFzZS4gU2NyaXB0cyBjYW4gcGVyZm9ybSBhIHZhcmlldHkgb2YgZnVuY3Rpb25zLCBmcm9tIHNjaGVtYSBtb2RpZmljYXRpb25zLCBsaWtlIGFkZGluZyBuZXcgdGFibGVzIG9yIGFsdGVyaW5nXG4gICAqIGV4aXN0aW5nIG9uZXMsIHRvIGRhdGEgbWFuYWdlbWVudCBvcGVyYXRpb25zLCBzdWNoIGFzIGRhdGEgaW5nZXN0aW9uIG9yIGNsZWFudXAgdGFza3MuIEVhY2ggc2NyaXB0IGlzIGV4ZWN1dGVkIGFzIGFcbiAgICogS3VzdG9TY3JpcHQgcmVzb3VyY2UsIHdoaWNoIGVuc3VyZXMgdGhhdCB0aGUgc2NyaXB0IGlzIGFwcGxpZWQgY29ycmVjdGx5IGFuZCBhdG9taWNhbGx5IHRvIHRoZSBkYXRhYmFzZS5cbiAgICpcbiAgICogQHBhcmFtIHNjcmlwdE5hbWUgLSBBIHVuaXF1ZSBuYW1lIGZvciB0aGUgc2NyaXB0LCB3aGljaCBoZWxwcyBpbiBpZGVudGlmeWluZyB0aGUgc2NyaXB0IHJlc291cmNlIHdpdGhpbiB0aGUgZGVwbG95bWVudC5cbiAgICogQHBhcmFtIHNjcmlwdENvbnRlbnQgLSBUaGUgS1FMIHNjcmlwdCBvciBjb250cm9sIGNvbW1hbmQgdG8gYmUgZXhlY3V0ZWQuIFRoaXMgc2hvdWxkIGJlIGEgdmFsaWQgS1FMIGNvbW1hbmQgc3RyaW5nLlxuICAgKlxuICAgKiBFeGFtcGxlIHVzYWdlOlxuICAgKiBgYGB0eXBlc2NyaXB0XG4gICAqIG15RGF0YWJhc2UuYWRkU2NyaXB0KCdJbml0aWFsaXplU2FsZXNUYWJsZScsIGBcbiAgICogICAuY3JlYXRlIHRhYmxlIFNhbGVzRGF0YSAoVHJhbnNhY3Rpb25JZDogaW50LCBUcmFuc2FjdGlvbkRhdGU6IGRhdGV0aW1lLCBBbW91bnQ6IHJlYWwpXG4gICAqICAgLmFsdGVyLW1lcmdlIHRhYmxlIFNhbGVzRGF0YSBwb2xpY3kgcmV0ZW50aW9uc29mdGRlbGV0ZSA9IDM2NWRcbiAgICogYCk7XG4gICAqIGBgYFxuICAgKiBUaGlzIG1ldGhvZCB3aWxsIGNyZWF0ZSBhIGBLdXN0b1NjcmlwdGAgcmVzb3VyY2UgdGhhdCBlbmNhcHN1bGF0ZXMgdGhlIGNvbW1hbmQsIGVuc3VyaW5nIGl0IGlzIGV4ZWN1dGVkIGFnYWluc3QgdGhlXG4gICAqIGRhdGFiYXNlLCBhbmQgaXMgdHJhY2tlZCBhcyBwYXJ0IG9mIHRoZSByZXNvdXJjZSBtYW5hZ2VtZW50IHdpdGhpbiBBenVyZS5cbiAgICovXG4gIHB1YmxpYyBhZGRTY3JpcHQoc2NyaXB0TmFtZTogc3RyaW5nLCBzY3JpcHRDb250ZW50OiBzdHJpbmcpIHtcbiAgICBuZXcgS3VzdG9TY3JpcHQoXG4gICAgICB0aGlzLFxuICAgICAgYGt1c3RvLWRiLSR7dGhpcy5rdXN0b0RiUHJvcHMubmFtZX0tc2NyaXB0LSR7c2NyaXB0TmFtZX1gLFxuICAgICAge1xuICAgICAgICBuYW1lOiBgc2NyaXB0LSR7c2NyaXB0TmFtZX1gLFxuICAgICAgICBkYXRhYmFzZUlkOiB0aGlzLmlkLFxuICAgICAgICBzY3JpcHRDb250ZW50OiBzY3JpcHRDb250ZW50LFxuICAgICAgICBjb250aW51ZU9uRXJyb3JzRW5hYmxlZDogZmFsc2UsXG4gICAgICAgIGZvcmNlQW5VcGRhdGVXaGVuVmFsdWVDaGFuZ2VkOiBNZDUuaGFzaFN0cihzY3JpcHRDb250ZW50KSxcbiAgICAgIH0sXG4gICAgKTtcbiAgfVxufVxuIl19
177
+ Database[_a] = { fqn: "@microsoft/terraform-cdk-constructs.azure_kusto.Database", version: "0.0.3-pre.12" };
178
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXp1cmUta3VzdG8vbGliL2RhdGFiYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQ0EsK0VBQTJFO0FBQzNFLHlIQUFtSDtBQUNuSCwyRUFBdUU7QUFDdkUsK0JBQStCO0FBQy9CLDJDQUF1QztBQUN2QyxtQ0FBNkI7QUFvRDdCLE1BQWEsUUFBUyxTQUFRLHNCQUFTO0lBSXJDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BK0JHO0lBQ0gsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFvQjtRQUM1RCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLE1BQU0sYUFBYSxHQUFHLElBQUksOEJBQWEsQ0FBQyxJQUFJLEVBQUUsWUFBWSxLQUFLLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDdEUsSUFBSSxFQUFFLEtBQUssQ0FBQyxJQUFJO1lBQ2hCLFFBQVEsRUFBRSxLQUFLLENBQUMsWUFBWSxDQUFDLFFBQVE7WUFDckMsaUJBQWlCLEVBQUUsS0FBSyxDQUFDLFlBQVksQ0FBQyxpQkFBaUI7WUFDdkQsV0FBVyxFQUFFLEtBQUssQ0FBQyxZQUFZLENBQUMsSUFBSTtTQUNyQyxDQUFDLENBQUM7UUFFSCxJQUFJLEtBQUssQ0FBQyxjQUFjLEVBQUU7WUFDeEIsYUFBYSxDQUFDLFdBQVcsQ0FBQyxrQkFBa0IsRUFBRSxLQUFLLENBQUMsY0FBYyxDQUFDLENBQUM7U0FDckU7UUFDRCxJQUFJLEtBQUssQ0FBQyxnQkFBZ0IsRUFBRTtZQUMxQixhQUFhLENBQUMsV0FBVyxDQUFDLG9CQUFvQixFQUFFLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1NBQ3pFO1FBRUQsVUFBVTtRQUNWLElBQUksQ0FBQyxhQUFhLEdBQUcsYUFBYSxDQUFDO1FBQ25DLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQztRQUUvQixNQUFNLDZCQUE2QixHQUFHLElBQUksS0FBSyxDQUFDLGVBQWUsQ0FDN0QsSUFBSSxFQUNKLElBQUksRUFDSjtZQUNFLEtBQUssRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLEVBQUU7U0FDN0IsQ0FDRixDQUFDO1FBQ0YsNkJBQTZCLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BNEJHO0lBQ0ksYUFBYSxDQUFDLHdCQUE2QztRQUNoRSxJQUFJLHNFQUFnQyxDQUNsQyxJQUFJLEVBQ0osWUFBWSx3QkFBd0IsQ0FBQyxJQUFJLFNBQVMsRUFDbEQ7WUFDRSxJQUFJLEVBQUUsd0JBQXdCLENBQUMsSUFBSTtZQUNuQyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLGlCQUFpQjtZQUN2RCxXQUFXLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXO1lBQzNDLFlBQVksRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUk7WUFDckMsUUFBUSxFQUFFLHdCQUF3QixDQUFDLFFBQVE7WUFDM0MsV0FBVyxFQUFFLHdCQUF3QixDQUFDLFdBQVc7WUFDakQsYUFBYSxFQUFFLHdCQUF3QixDQUFDLGFBQWE7WUFDckQsSUFBSSxFQUFFLHdCQUF3QixDQUFDLElBQUk7U0FDcEMsQ0FDRixDQUFDO0lBQ0osQ0FBQztJQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztPQW9CRztJQUNJLFFBQVEsQ0FBQyxTQUFpQixFQUFFLFdBQStCO1FBQ2hFLE1BQU0sYUFBYSxHQUFHLFdBQVc7YUFDOUIsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDZCxPQUFPLEdBQUcsTUFBTSxDQUFDLFVBQVUsSUFBSSxNQUFNLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDckQsQ0FBQyxDQUFDO2FBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2QsTUFBTSxhQUFhLEdBQUcsaUJBQWlCLFNBQVMsTUFBTSxhQUFhLElBQUksQ0FBQztRQUV4RSxJQUFJLDBCQUFXLENBQUMsSUFBSSxFQUFFLFlBQVksSUFBSSxDQUFDLFlBQVksVUFBVSxTQUFTLEVBQUUsRUFBRTtZQUN4RSxJQUFJLEVBQUUsU0FBUztZQUNmLFVBQVUsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLEVBQUU7WUFDakMsYUFBYSxFQUFFLGFBQWE7WUFDNUIsdUJBQXVCLEVBQUUsS0FBSztZQUM5Qiw2QkFBNkIsRUFBRSxZQUFHLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQztTQUMxRCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09Bb0JHO0lBQ0ksU0FBUyxDQUFDLFVBQWtCLEVBQUUsYUFBcUI7UUFDeEQsSUFBSSwwQkFBVyxDQUNiLElBQUksRUFDSixZQUFZLElBQUksQ0FBQyxZQUFZLFdBQVcsVUFBVSxFQUFFLEVBQ3BEO1lBQ0UsSUFBSSxFQUFFLFVBQVUsVUFBVSxFQUFFO1lBQzVCLFVBQVUsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLEVBQUU7WUFDakMsYUFBYSxFQUFFLGFBQWE7WUFDNUIsdUJBQXVCLEVBQUUsS0FBSztZQUM5Qiw2QkFBNkIsRUFBRSxZQUFHLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQztTQUMxRCxDQUNGLENBQUM7SUFDSixDQUFDOztBQXhMSCw0QkF5TEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBLdXN0b0NsdXN0ZXIgfSBmcm9tIFwiQGNka3RmL3Byb3ZpZGVyLWF6dXJlcm0vbGliL2t1c3RvLWNsdXN0ZXJcIjtcbmltcG9ydCB7IEt1c3RvRGF0YWJhc2UgfSBmcm9tIFwiQGNka3RmL3Byb3ZpZGVyLWF6dXJlcm0vbGliL2t1c3RvLWRhdGFiYXNlXCI7XG5pbXBvcnQgeyBLdXN0b0RhdGFiYXNlUHJpbmNpcGFsQXNzaWdubWVudCB9IGZyb20gXCJAY2RrdGYvcHJvdmlkZXItYXp1cmVybS9saWIva3VzdG8tZGF0YWJhc2UtcHJpbmNpcGFsLWFzc2lnbm1lbnRcIjtcbmltcG9ydCB7IEt1c3RvU2NyaXB0IH0gZnJvbSBcIkBjZGt0Zi9wcm92aWRlci1henVyZXJtL2xpYi9rdXN0by1zY3JpcHRcIjtcbmltcG9ydCAqIGFzIGNka3RmIGZyb20gXCJjZGt0ZlwiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IE1kNSB9IGZyb20gXCJ0cy1tZDVcIjtcblxuZXhwb3J0IGludGVyZmFjZSBEYXRhYmFzZVByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBBenVyZSBLdXN0byBjbHVzdGVyIHRvIHdoaWNoIHRoaXMgZGF0YWJhc2UgYmVsb25ncy5cbiAgICovXG4gIHJlYWRvbmx5IGt1c3RvQ2x1c3RlcjogS3VzdG9DbHVzdGVyO1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIEt1c3RvIERhdGFiYXNlIHRvIGNyZWF0ZS5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSB0aW1lIHRoZSBkYXRhIHRoYXQgc2hvdWxkIGJlIGtlcHQgaW4gY2FjaGUgZm9yIGZhc3QgcXVlcmllcyBhcyBJU08gODYwMSB0aW1lc3Bhbi5cbiAgICogRGVmYXVsdCBpcyB1bmxpbWl0ZWQuXG4gICAqL1xuICByZWFkb25seSBob3RDYWNoZVBlcmlvZD86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSB0aW1lIHRoZSBkYXRhIHNob3VsZCBiZSBrZXB0IGJlZm9yZSBpdCBzdG9wcyBiZWluZyBhY2Nlc3NpYmxlIHRvIHF1ZXJpZXMgYXMgSVNPIDg2MDEgdGltZXNwYW4uXG4gICAqIERlZmF1bHQgaXMgdW5saW1pdGVkLlxuICAgKi9cbiAgcmVhZG9ubHkgc29mdERlbGV0ZVBlcmlvZD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEYXRhYmFzZUFjY2Vzc1Byb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBrdXN0byBwcmluY2lwYWwgYXNzaWdubWVudC5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSB0ZW5hbnQgaWQgaW4gd2hpY2ggdGhlIHByaW5jaXBhbCByZXNpZGVzLlxuICAgKi9cbiAgcmVhZG9ubHkgdGVuYW50SWQ6IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBvYmplY3QgaWQgb2YgdGhlIHByaW5jaXBhbCB0byBhc3NpZ24gdG8gS3VzdG8gRGF0YWJhc2UuXG4gICAqL1xuICByZWFkb25seSBwcmluY2lwYWxJZDogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIHR5cGUgb2YgdGhlIHByaW5jaXBhbC4gVmFsaWQgdmFsdWVzIGluY2x1ZGUgQXBwLCBHcm91cCwgVXNlci5cbiAgICovXG4gIHJlYWRvbmx5IHByaW5jaXBhbFR5cGU6IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBkYXRhYmFzZSByb2xlIGFzc2lnbmVkIHRvIHRoZSBwcmluY2lwYWwuXG4gICAqIFZhbGlkIHZhbHVlcyBpbmNsdWRlIEFkbWluLCBJbmdlc3RvciwgTW9uaXRvciwgVW5yZXN0cmljdGVkVmlld2VyLCBVc2VyIGFuZCBWaWV3ZXIuXG4gICAqL1xuICByZWFkb25seSByb2xlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGFibGVTY2hlbWFQcm9wcyB7XG4gIHJlYWRvbmx5IGNvbHVtbk5hbWU6IHN0cmluZztcbiAgcmVhZG9ubHkgY29sdW1uVHlwZTogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgRGF0YWJhc2UgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICBwdWJsaWMgcmVhZG9ubHkga3VzdG9EYXRhYmFzZTogS3VzdG9EYXRhYmFzZTtcbiAgcHVibGljIHJlYWRvbmx5IGRhdGFiYXNlTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBSZXByZXNlbnRzIGEgS3VzdG8gRGF0YWJhc2Ugd2l0aGluIGFuIEF6dXJlIEt1c3RvIENsdXN0ZXIuXG4gICAqXG4gICAqIFRoaXMgY2xhc3MgaXMgcmVzcG9uc2libGUgZm9yIHRoZSBjcmVhdGlvbiBhbmQgbWFuYWdlbWVudCBvZiBhIGRhdGFiYXNlIGluIEF6dXJlIERhdGEgRXhwbG9yZXIgKEt1c3RvKSxcbiAgICogd2hpY2ggc3RvcmVzIGRhdGEgdGFibGVzIGFuZCBwcm92aWRlcyBhIHF1ZXJ5IGVuZ2luZS4gQSBLdXN0byBkYXRhYmFzZSBpcyBhIGxvZ2ljYWwgZ3JvdXAgb2YgdGFibGVzXG4gICAqIGFuZCBpcyBhc3NvY2lhdGVkIHdpdGggYSBzcGVjaWZpYyBLdXN0byBjbHVzdGVyLiBUaGUgZGF0YWJhc2Ugc3VwcG9ydHMgY29uZmlndXJhdGlvbnMgc3VjaCBhc1xuICAgKiBob3QgY2FjaGUgcGVyaW9kIGFuZCBzb2Z0IGRlbGV0ZSBwZXJpb2QgdG8gb3B0aW1pemUgcGVyZm9ybWFuY2UgYW5kIGRhdGEgcmV0ZW50aW9uIGFjY29yZGluZyB0b1xuICAgKiBzcGVjaWZpYyB3b3JrbG9hZCByZXF1aXJlbWVudHMuXG4gICAqXG4gICAqIEBwYXJhbSBzY29wZSAtIFRoZSBzY29wZSBpbiB3aGljaCB0byBkZWZpbmUgdGhpcyBjb25zdHJ1Y3QsIHR5cGljYWxseSByZXByZXNlbnRpbmcgdGhlIENsb3VkIERldmVsb3BtZW50IEtpdCAoQ0RLKSBzdGFjay5cbiAgICogQHBhcmFtIGlkIC0gVGhlIHVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGlzIGluc3RhbmNlIG9mIHRoZSBLdXN0byBkYXRhYmFzZS5cbiAgICogQHBhcmFtIHByb3BzIC0gVGhlIHByb3BlcnRpZXMgcmVxdWlyZWQgdG8gY29uZmlndXJlIHRoZSBLdXN0byBkYXRhYmFzZS4gVGhlc2UgaW5jbHVkZTpcbiAgICogICAgICAgICAgICAgICAgICAgICAgIC0gYGt1c3RvYDogUmVmZXJlbmNlIHRvIHRoZSBLdXN0byBjbHVzdGVyIHRvIHdoaWNoIHRoZSBkYXRhYmFzZSB3aWxsIGJlbG9uZy5cbiAgICogICAgICAgICAgICAgICAgICAgICAgIC0gYG5hbWVgOiBUaGUgbmFtZSBvZiB0aGUgZGF0YWJhc2UgdG8gYmUgY3JlYXRlZCB3aXRoaW4gdGhlIEt1c3RvIGNsdXN0ZXIuXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAtIGBob3RDYWNoZVBlcmlvZGA6IE9wdGlvbmFsLiBTcGVjaWZpZXMgdGhlIGR1cmF0aW9uIHRoYXQgZGF0YSBzaG91bGQgYmUga2VwdCBpbiBjYWNoZSBmb3IgZmFzdGVyIHF1ZXJ5IHBlcmZvcm1hbmNlLlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFeHByZXNzZWQgaW4gSVNPIDg2MDEgZHVyYXRpb24gZm9ybWF0LlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgLSBgc29mdERlbGV0ZVBlcmlvZGA6IE9wdGlvbmFsLiBTcGVjaWZpZXMgdGhlIGR1cmF0aW9uIHRoYXQgZGF0YSBzaG91bGQgYmUgcmV0YWluZWQgYmVmb3JlIGl0IHN0b3BzIGJlaW5nIGFjY2Vzc2libGUuXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRXhwcmVzc2VkIGluIElTTyA4NjAxIGR1cmF0aW9uIGZvcm1hdC5cbiAgICpcbiAgICogRXhhbXBsZSB1c2FnZTpcbiAgICogYGBgdHlwZXNjcmlwdFxuICAgKiBjb25zdCBteURhdGFiYXNlID0gbmV3IERhdGFiYXNlKHRoaXMsICdNeUt1c3RvRGF0YWJhc2UnLCB7XG4gICAqICAga3VzdG86IG15S3VzdG9DbHVzdGVyLFxuICAgKiAgIG5hbWU6ICdBbmFseXRpY3NEQicsXG4gICAqICAgaG90Q2FjaGVQZXJpb2Q6ICdQMzBEJywgIC8vIDMwIGRheXNcbiAgICogICBzb2Z0RGVsZXRlUGVyaW9kOiAnUDM2NUQnIC8vIDM2NSBkYXlzXG4gICAqIH0pO1xuICAgKiBgYGBcbiAgICpcbiAgICogVGhpcyBjbGFzcyBzZXRzIHVwIHRoZSBkYXRhYmFzZSBjb25maWd1cmF0aW9ucyBhbmQgaW50ZWdyYXRlcyBpdCB3aXRoaW4gdGhlIHNwZWNpZmllZCBLdXN0byBjbHVzdGVyLFxuICAgKiBwcm92aWRpbmcgY2FwYWJpbGl0aWVzIHRvIG1hbmFnZSBhbmQgcXVlcnkgbGFyZ2UgZGF0YXNldHMgZWZmZWN0aXZlbHkuXG4gICAqL1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogRGF0YWJhc2VQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICBjb25zdCBrdXN0b0RhdGFiYXNlID0gbmV3IEt1c3RvRGF0YWJhc2UodGhpcywgYGt1c3RvLWRiLSR7cHJvcHMubmFtZX1gLCB7XG4gICAgICBuYW1lOiBwcm9wcy5uYW1lLFxuICAgICAgbG9jYXRpb246IHByb3BzLmt1c3RvQ2x1c3Rlci5sb2NhdGlvbixcbiAgICAgIHJlc291cmNlR3JvdXBOYW1lOiBwcm9wcy5rdXN0b0NsdXN0ZXIucmVzb3VyY2VHcm91cE5hbWUsXG4gICAgICBjbHVzdGVyTmFtZTogcHJvcHMua3VzdG9DbHVzdGVyLm5hbWUsXG4gICAgfSk7XG5cbiAgICBpZiAocHJvcHMuaG90Q2FjaGVQZXJpb2QpIHtcbiAgICAgIGt1c3RvRGF0YWJhc2UuYWRkT3ZlcnJpZGUoXCJob3RfY2FjaGVfcGVyaW9kXCIsIHByb3BzLmhvdENhY2hlUGVyaW9kKTtcbiAgICB9XG4gICAgaWYgKHByb3BzLnNvZnREZWxldGVQZXJpb2QpIHtcbiAgICAgIGt1c3RvRGF0YWJhc2UuYWRkT3ZlcnJpZGUoXCJzb2Z0X2RlbGV0ZV9wZXJpb2RcIiwgcHJvcHMuc29mdERlbGV0ZVBlcmlvZCk7XG4gICAgfVxuXG4gICAgLy8gT3V0cHV0c1xuICAgIHRoaXMua3VzdG9EYXRhYmFzZSA9IGt1c3RvRGF0YWJhc2U7XG4gICAgdGhpcy5kYXRhYmFzZU5hbWUgPSBwcm9wcy5uYW1lO1xuXG4gICAgY29uc3QgY2RrdGZUZXJyYWZvcm1PdXRwdXRLdXN0b0RiSWQgPSBuZXcgY2RrdGYuVGVycmFmb3JtT3V0cHV0KFxuICAgICAgdGhpcyxcbiAgICAgIFwiaWRcIixcbiAgICAgIHtcbiAgICAgICAgdmFsdWU6IHRoaXMua3VzdG9EYXRhYmFzZS5pZCxcbiAgICAgIH0sXG4gICAgKTtcbiAgICBjZGt0ZlRlcnJhZm9ybU91dHB1dEt1c3RvRGJJZC5vdmVycmlkZUxvZ2ljYWxJZChcImlkXCIpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYSBkYXRhYmFzZSBwcmluY2lwYWwgYXNzaWdubWVudCBpbiB0aGUgS3VzdG8gY2x1c3RlciwgYXNzaWduaW5nIHNwZWNpZmllZCBhY2Nlc3MgcmlnaHRzIHRvIGEgcHJpbmNpcGFsLlxuICAgKlxuICAgKiBUaGlzIG1ldGhvZCBpcyB1c2VkIHRvIGdyYW50IGFjY2VzcyBwZXJtaXNzaW9ucyB0byBhIHNwZWNpZmljIHVzZXIsIGdyb3VwLCBvciBzZXJ2aWNlIHByaW5jaXBhbCB3aXRoaW4gYW4gQXp1cmUgQWN0aXZlIERpcmVjdG9yeS5cbiAgICogVGhlc2UgcGVybWlzc2lvbnMgZGV0ZXJtaW5lIHRoZSBsZXZlbCBvZiBhY2Nlc3MgdGhhdCB0aGUgcHJpbmNpcGFsIGhhcyBvdmVyIHRoZSBLdXN0byBkYXRhYmFzZSwgc3VjaCBhcyB2aWV3aW5nLCBpbmdlc3RpbmcsIG9yIG1hbmFnaW5nIGRhdGEuXG4gICAqIFRoZSBhc3NpZ25tZW50IGlzIG1hZGUgYnkgY3JlYXRpbmcgYSBLdXN0b0RhdGFiYXNlUHJpbmNpcGFsQXNzaWdubWVudCByZXNvdXJjZSwgc3BlY2lmeWluZyB0aGUgcHJpbmNpcGFsIGRldGFpbHMgYW5kIHRoZSB0eXBlIG9mIHJvbGVcbiAgICogdGhleSBzaG91bGQgYXNzdW1lLlxuICAgKlxuICAgKiBAcGFyYW0ga3VzdG9EYXRhYmFzZUFjY2Vzc1Byb3BzIC0gVGhlIHByb3BlcnRpZXMgZGVmaW5pbmcgdGhlIHByaW5jaXBhbCBhc3NpZ25tZW50LiBUaGlzIGluY2x1ZGVzOlxuICAgKiAgIC0gYG5hbWVgOiBBIHVuaXF1ZSBuYW1lIGlkZW50aWZ5aW5nIHRoaXMgcHJpbmNpcGFsIGFzc2lnbm1lbnQuXG4gICAqICAgLSBgdGVuYW50SWRgOiBUaGUgQXp1cmUgQWN0aXZlIERpcmVjdG9yeSB0ZW5hbnQgSUQgd2hlcmUgdGhlIHByaW5jaXBhbCByZXNpZGVzLlxuICAgKiAgIC0gYHByaW5jaXBhbElkYDogVGhlIG9iamVjdCBJRCBvZiB0aGUgcHJpbmNpcGFsICh1c2VyLCBncm91cCwgb3Igc2VydmljZSBwcmluY2lwYWwpIGluIEF6dXJlIEFELlxuICAgKiAgIC0gYHByaW5jaXBhbFR5cGVgOiBUaGUgdHlwZSBvZiBwcmluY2lwYWwgKGUuZy4sIFVzZXIsIEdyb3VwLCBBcHApLlxuICAgKiAgIC0gYHJvbGVgOiBUaGUgZGF0YWJhc2Ugcm9sZSBhc3NpZ25lZCB0byB0aGUgcHJpbmNpcGFsLiBSb2xlcyBjYW4gaW5jbHVkZSBBZG1pbiwgVXNlciwgVmlld2VyLCBhbW9uZyBvdGhlcnMuXG4gICAqXG4gICAqIEV4YW1wbGUgdXNhZ2U6XG4gICAqIGBgYHR5cGVzY3JpcHRcbiAgICogbXlEYXRhYmFzZS5hZGRQZXJtaXNzaW9uKHtcbiAgICogICBuYW1lOiAnRGF0YVNjaWVuY2VUZWFtQWNjZXNzJyxcbiAgICogICB0ZW5hbnRJZDogJ3RlbmFudC1pZCcsXG4gICAqICAgcHJpbmNpcGFsSWQ6ICdwcmluY2lwYWwtaWQnLFxuICAgKiAgIHByaW5jaXBhbFR5cGU6ICdHcm91cCcsXG4gICAqICAgcm9sZTogJ1ZpZXdlcidcbiAgICogfSk7XG4gICAqIGBgYFxuICAgKiBUaGlzIG1ldGhvZCBjcmVhdGVzIGEgbmV3IHByaW5jaXBhbCBhc3NpZ25tZW50LCBlbmFibGluZyBzcGVjaWZpZWQgYWNjZXNzIGNvbnRyb2xzIGZvciB0aGUgcHJpbmNpcGFsXG4gICAqIG9uIHRoZSBLdXN0byBkYXRhYmFzZSBiYXNlZCBvbiB0aGUgcm9sZSBhc3NpZ25lZC4gSXQgaXMgY3J1Y2lhbCBmb3IgbWFuYWdpbmcgc2VjdXJpdHkgYW5kIGFjY2Vzc1xuICAgKiBnb3Zlcm5hbmNlIHdpdGhpbiB0aGUgS3VzdG8gZW52aXJvbm1lbnQuXG4gICAqL1xuICBwdWJsaWMgYWRkUGVybWlzc2lvbihrdXN0b0RhdGFiYXNlQWNjZXNzUHJvcHM6IERhdGFiYXNlQWNjZXNzUHJvcHMpIHtcbiAgICBuZXcgS3VzdG9EYXRhYmFzZVByaW5jaXBhbEFzc2lnbm1lbnQoXG4gICAgICB0aGlzLFxuICAgICAgYGt1c3RvLWRiLSR7a3VzdG9EYXRhYmFzZUFjY2Vzc1Byb3BzLm5hbWV9LWFjY2Vzc2AsXG4gICAgICB7XG4gICAgICAgIG5hbWU6IGt1c3RvRGF0YWJhc2VBY2Nlc3NQcm9wcy5uYW1lLFxuICAgICAgICByZXNvdXJjZUdyb3VwTmFtZTogdGhpcy5rdXN0b0RhdGFiYXNlLnJlc291cmNlR3JvdXBOYW1lLFxuICAgICAgICBjbHVzdGVyTmFtZTogdGhpcy5rdXN0b0RhdGFiYXNlLmNsdXN0ZXJOYW1lLFxuICAgICAgICBkYXRhYmFzZU5hbWU6IHRoaXMua3VzdG9EYXRhYmFzZS5uYW1lLFxuICAgICAgICB0ZW5hbnRJZDoga3VzdG9EYXRhYmFzZUFjY2Vzc1Byb3BzLnRlbmFudElkLFxuICAgICAgICBwcmluY2lwYWxJZDoga3VzdG9EYXRhYmFzZUFjY2Vzc1Byb3BzLnByaW5jaXBhbElkLFxuICAgICAgICBwcmluY2lwYWxUeXBlOiBrdXN0b0RhdGFiYXNlQWNjZXNzUHJvcHMucHJpbmNpcGFsVHlwZSxcbiAgICAgICAgcm9sZToga3VzdG9EYXRhYmFzZUFjY2Vzc1Byb3BzLnJvbGUsXG4gICAgICB9LFxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBhIG5ldyB0YWJsZSB0byBhbiBleGlzdGluZyBBenVyZSBLdXN0byBkYXRhYmFzZS5cbiAgICpcbiAgICogVGhpcyBtZXRob2QgY3JlYXRlcyBhIHRhYmxlIHdpdGhpbiB0aGUgc3BlY2lmaWVkIEt1c3RvIGRhdGFiYXNlIHVzaW5nIGEgZ2l2ZW4gc2NoZW1hLiBUYWJsZXMgaW4gS3VzdG8gc3RvcmUgc3RydWN0dXJlZCBkYXRhIHdpdGhcbiAgICogZGVmaW5lZCBjb2x1bW5zIGFuZCB0eXBlcywgd2hpY2ggYXJlIGNydWNpYWwgZm9yIHN0b3JpbmcgYW5kIHF1ZXJ5aW5nIGxhcmdlIGRhdGFzZXRzIGVmZmljaWVudGx5LiBUaGUgbWV0aG9kIGNvbnN0cnVjdHMgYSBLdXN0b1xuICAgKiBEYXRhIEV4cGxvcmVyIGNvbnRyb2wgY29tbWFuZCB0byBjcmVhdGUgdGhlIHRhYmxlIGFuZCB0aGVuIGV4ZWN1dGVzIHRoaXMgY29tbWFuZCB3aXRoaW4gdGhlIGNvbnRleHQgb2YgdGhlIGRhdGFiYXNlLlxuICAgKlxuICAgKiBAcGFyYW0gdGFibGVOYW1lIC0gVGhlIG5hbWUgb2YgdGhlIHRhYmxlIHRvIGNyZWF0ZSwgd2hpY2ggbXVzdCBiZSB1bmlxdWUgd2l0aGluIHRoZSBkYXRhYmFzZS5cbiAgICogQHBhcmFtIHRhYmxlU2NoZW1hIC0gQW4gYXJyYXkgb2Ygc2NoZW1hIHByb3BlcnRpZXMgZGVmaW5pbmcgdGhlIGNvbHVtbnMgb2YgdGhlIHRhYmxlLCBpbmNsdWRpbmcgY29sdW1uIG5hbWVzIGFuZCB0aGVpciBkYXRhIHR5cGVzLlxuICAgKlxuICAgKiBFeGFtcGxlIHVzYWdlOlxuICAgKiBgYGB0eXBlc2NyaXB0XG4gICAqIG15RGF0YWJhc2UuYWRkVGFibGUoJ1NhbGVzRGF0YScsIFtcbiAgICogICB7IGNvbHVtbk5hbWU6ICdUcmFuc2FjdGlvbklkJywgY29sdW1uVHlwZTogJ2ludCcgfSxcbiAgICogICB7IGNvbHVtbk5hbWU6ICdUcmFuc2FjdGlvbkRhdGUnLCBjb2x1bW5UeXBlOiAnZGF0ZXRpbWUnIH0sXG4gICAqICAgeyBjb2x1bW5OYW1lOiAnQW1vdW50JywgY29sdW1uVHlwZTogJ3JlYWwnIH1cbiAgICogXSk7XG4gICAqIGBgYFxuICAgKiBUaGlzIG1ldGhvZCBjb25zdHJ1Y3RzIHRoZSBjb21tYW5kIHRvIGNyZWF0ZSB0aGUgdGFibGUgYW5kIGFwcGxpZXMgaXQgZGlyZWN0bHkgd2l0aGluIHRoZSBLdXN0byBkYXRhYmFzZSxcbiAgICogZW5zdXJpbmcgdGhlIHRhYmxlIGlzIHJlYWR5IGZvciBkYXRhIGluZ2VzdGlvbiBhbmQgcXVlcnlpbmcuXG4gICAqL1xuICBwdWJsaWMgYWRkVGFibGUodGFibGVOYW1lOiBzdHJpbmcsIHRhYmxlU2NoZW1hOiBUYWJsZVNjaGVtYVByb3BzW10pIHtcbiAgICBjb25zdCBzY2hlbWFDb250ZW50ID0gdGFibGVTY2hlbWFcbiAgICAgIC5tYXAoKGNvbHVtbikgPT4ge1xuICAgICAgICByZXR1cm4gYCR7Y29sdW1uLmNvbHVtbk5hbWV9OiR7Y29sdW1uLmNvbHVtblR5cGV9YDtcbiAgICAgIH0pXG4gICAgICAuam9pbihcIiwgXCIpO1xuICAgIGNvbnN0IHNjcmlwdENvbnRlbnQgPSBgLmNyZWF0ZSB0YWJsZSAke3RhYmxlTmFtZX0gKCAke3NjaGVtYUNvbnRlbnR9IClgO1xuXG4gICAgbmV3IEt1c3RvU2NyaXB0KHRoaXMsIGBrdXN0by1kYi0ke3RoaXMuZGF0YWJhc2VOYW1lfS10YWJsZS0ke3RhYmxlTmFtZX1gLCB7XG4gICAgICBuYW1lOiB0YWJsZU5hbWUsXG4gICAgICBkYXRhYmFzZUlkOiB0aGlzLmt1c3RvRGF0YWJhc2UuaWQsXG4gICAgICBzY3JpcHRDb250ZW50OiBzY3JpcHRDb250ZW50LFxuICAgICAgY29udGludWVPbkVycm9yc0VuYWJsZWQ6IGZhbHNlLFxuICAgICAgZm9yY2VBblVwZGF0ZVdoZW5WYWx1ZUNoYW5nZWQ6IE1kNS5oYXNoU3RyKHNjcmlwdENvbnRlbnQpLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYW5kIGV4ZWN1dGVzIGEgY29udHJvbCBjb21tYW5kIG9yIHNjcmlwdCB3aXRoaW4gdGhlIEt1c3RvIGRhdGFiYXNlLlxuICAgKlxuICAgKiBUaGlzIG1ldGhvZCBmYWNpbGl0YXRlcyB0aGUgZXhlY3V0aW9uIG9mIEt1c3RvIFF1ZXJ5IExhbmd1YWdlIChLUUwpIHNjcmlwdHMgb3IgY29udHJvbCBjb21tYW5kcyB3aXRoaW4gdGhlIHNwZWNpZmllZFxuICAgKiBLdXN0byBkYXRhYmFzZS4gU2NyaXB0cyBjYW4gcGVyZm9ybSBhIHZhcmlldHkgb2YgZnVuY3Rpb25zLCBmcm9tIHNjaGVtYSBtb2RpZmljYXRpb25zLCBsaWtlIGFkZGluZyBuZXcgdGFibGVzIG9yIGFsdGVyaW5nXG4gICAqIGV4aXN0aW5nIG9uZXMsIHRvIGRhdGEgbWFuYWdlbWVudCBvcGVyYXRpb25zLCBzdWNoIGFzIGRhdGEgaW5nZXN0aW9uIG9yIGNsZWFudXAgdGFza3MuIEVhY2ggc2NyaXB0IGlzIGV4ZWN1dGVkIGFzIGFcbiAgICogS3VzdG9TY3JpcHQgcmVzb3VyY2UsIHdoaWNoIGVuc3VyZXMgdGhhdCB0aGUgc2NyaXB0IGlzIGFwcGxpZWQgY29ycmVjdGx5IGFuZCBhdG9taWNhbGx5IHRvIHRoZSBkYXRhYmFzZS5cbiAgICpcbiAgICogQHBhcmFtIHNjcmlwdE5hbWUgLSBBIHVuaXF1ZSBuYW1lIGZvciB0aGUgc2NyaXB0LCB3aGljaCBoZWxwcyBpbiBpZGVudGlmeWluZyB0aGUgc2NyaXB0IHJlc291cmNlIHdpdGhpbiB0aGUgZGVwbG95bWVudC5cbiAgICogQHBhcmFtIHNjcmlwdENvbnRlbnQgLSBUaGUgS1FMIHNjcmlwdCBvciBjb250cm9sIGNvbW1hbmQgdG8gYmUgZXhlY3V0ZWQuIFRoaXMgc2hvdWxkIGJlIGEgdmFsaWQgS1FMIGNvbW1hbmQgc3RyaW5nLlxuICAgKlxuICAgKiBFeGFtcGxlIHVzYWdlOlxuICAgKiBgYGB0eXBlc2NyaXB0XG4gICAqIG15RGF0YWJhc2UuYWRkU2NyaXB0KCdJbml0aWFsaXplU2FsZXNUYWJsZScsIGBcbiAgICogICAuY3JlYXRlIHRhYmxlIFNhbGVzRGF0YSAoVHJhbnNhY3Rpb25JZDogaW50LCBUcmFuc2FjdGlvbkRhdGU6IGRhdGV0aW1lLCBBbW91bnQ6IHJlYWwpXG4gICAqICAgLmFsdGVyLW1lcmdlIHRhYmxlIFNhbGVzRGF0YSBwb2xpY3kgcmV0ZW50aW9uc29mdGRlbGV0ZSA9IDM2NWRcbiAgICogYCk7XG4gICAqIGBgYFxuICAgKiBUaGlzIG1ldGhvZCB3aWxsIGNyZWF0ZSBhIGBLdXN0b1NjcmlwdGAgcmVzb3VyY2UgdGhhdCBlbmNhcHN1bGF0ZXMgdGhlIGNvbW1hbmQsIGVuc3VyaW5nIGl0IGlzIGV4ZWN1dGVkIGFnYWluc3QgdGhlXG4gICAqIGRhdGFiYXNlLCBhbmQgaXMgdHJhY2tlZCBhcyBwYXJ0IG9mIHRoZSByZXNvdXJjZSBtYW5hZ2VtZW50IHdpdGhpbiBBenVyZS5cbiAgICovXG4gIHB1YmxpYyBhZGRTY3JpcHQoc2NyaXB0TmFtZTogc3RyaW5nLCBzY3JpcHRDb250ZW50OiBzdHJpbmcpIHtcbiAgICBuZXcgS3VzdG9TY3JpcHQoXG4gICAgICB0aGlzLFxuICAgICAgYGt1c3RvLWRiLSR7dGhpcy5kYXRhYmFzZU5hbWV9LXNjcmlwdC0ke3NjcmlwdE5hbWV9YCxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogYHNjcmlwdC0ke3NjcmlwdE5hbWV9YCxcbiAgICAgICAgZGF0YWJhc2VJZDogdGhpcy5rdXN0b0RhdGFiYXNlLmlkLFxuICAgICAgICBzY3JpcHRDb250ZW50OiBzY3JpcHRDb250ZW50LFxuICAgICAgICBjb250aW51ZU9uRXJyb3JzRW5hYmxlZDogZmFsc2UsXG4gICAgICAgIGZvcmNlQW5VcGRhdGVXaGVuVmFsdWVDaGFuZ2VkOiBNZDUuaGFzaFN0cihzY3JpcHRDb250ZW50KSxcbiAgICAgIH0sXG4gICAgKTtcbiAgfVxufVxuIl19
@@ -0,0 +1 @@
1
+ import "cdktf/lib/testing/adapters/jest";