@cdktn/cli-core 0.23.0-pre.8 → 0.24.0-pre.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (169) hide show
  1. package/ambient.d.ts +0 -1
  2. package/build/lib/cdktf-config.d.ts.map +1 -0
  3. package/build/lib/cdktf-config.js +108 -0
  4. package/build/lib/cdktf-project-io-handler.d.ts.map +1 -0
  5. package/build/lib/cdktf-project-io-handler.js +84 -0
  6. package/build/lib/cdktf-project.d.ts.map +1 -0
  7. package/build/lib/cdktf-project.js +370 -0
  8. package/{src → build}/lib/cdktf-stack.d.ts +1 -0
  9. package/build/lib/cdktf-stack.d.ts.map +1 -0
  10. package/build/lib/cdktf-stack.js +386 -0
  11. package/build/lib/convert.d.ts.map +1 -0
  12. package/build/lib/convert.js +51 -0
  13. package/build/lib/dependencies/cdktf-config-manager.d.ts.map +1 -0
  14. package/build/lib/dependencies/cdktf-config-manager.js +36 -0
  15. package/build/lib/dependencies/dependency-manager.d.ts.map +1 -0
  16. package/build/lib/dependencies/dependency-manager.js +393 -0
  17. package/build/lib/dependencies/package-manager.d.ts.map +1 -0
  18. package/build/lib/dependencies/package-manager.js +581 -0
  19. package/build/lib/dependencies/prebuilt-providers.d.ts.map +1 -0
  20. package/build/lib/dependencies/prebuilt-providers.js +221 -0
  21. package/build/lib/dependencies/registry-api.d.ts.map +1 -0
  22. package/build/lib/dependencies/registry-api.js +77 -0
  23. package/build/lib/dependencies/version-constraints.d.ts.map +1 -0
  24. package/build/lib/dependencies/version-constraints.js +95 -0
  25. package/build/lib/error-reporting.d.ts.map +1 -0
  26. package/build/lib/error-reporting.js +133 -0
  27. package/build/lib/errors.d.ts.map +1 -0
  28. package/build/lib/errors.js +10 -0
  29. package/build/lib/execution-logs.d.ts.map +1 -0
  30. package/build/lib/execution-logs.js +47 -0
  31. package/build/lib/get.d.ts.map +1 -0
  32. package/build/lib/get.js +90 -0
  33. package/build/lib/helpers/stack-helpers.d.ts.map +1 -0
  34. package/build/lib/helpers/stack-helpers.js +155 -0
  35. package/build/lib/index.d.ts.map +1 -0
  36. package/{src → build}/lib/index.js +1 -2
  37. package/build/lib/init.d.ts.map +1 -0
  38. package/build/lib/init.js +131 -0
  39. package/build/lib/local-provider-constraints.d.ts.map +1 -0
  40. package/build/lib/local-provider-constraints.js +95 -0
  41. package/build/lib/local-provider-versions.d.ts.map +1 -0
  42. package/build/lib/local-provider-versions.js +73 -0
  43. package/{src → build}/lib/models/deploy-machine.d.ts +3 -11
  44. package/build/lib/models/deploy-machine.d.ts.map +1 -0
  45. package/build/lib/models/deploy-machine.js +283 -0
  46. package/build/lib/models/interactive-process.d.ts +28 -0
  47. package/build/lib/models/interactive-process.d.ts.map +1 -0
  48. package/build/lib/models/interactive-process.js +59 -0
  49. package/{src → build}/lib/models/schema.d.ts.map +1 -1
  50. package/build/lib/models/schema.js +181 -0
  51. package/{src → build}/lib/models/terraform-cli.d.ts +1 -0
  52. package/build/lib/models/terraform-cli.d.ts.map +1 -0
  53. package/build/lib/models/terraform-cli.js +355 -0
  54. package/build/lib/models/terraform.d.ts.map +1 -0
  55. package/build/lib/models/terraform.js +72 -0
  56. package/build/lib/output.d.ts.map +1 -0
  57. package/build/lib/output.js +211 -0
  58. package/build/lib/provider-add.d.ts.map +1 -0
  59. package/build/lib/provider-add.js +30 -0
  60. package/build/lib/server/terraform-logs.d.ts.map +1 -0
  61. package/build/lib/server/terraform-logs.js +19 -0
  62. package/{src → build}/lib/synth-stack.d.ts +1 -0
  63. package/build/lib/synth-stack.d.ts.map +1 -0
  64. package/build/lib/synth-stack.js +251 -0
  65. package/build/lib/synth.d.ts.map +1 -0
  66. package/build/lib/synth.js +67 -0
  67. package/{src → build}/lib/terraform-json.d.ts.map +1 -1
  68. package/build/lib/terraform-json.js +82 -0
  69. package/build/lib/terraform-provider-lock.d.ts.map +1 -0
  70. package/{src → build}/lib/terraform-provider-lock.js +2 -2
  71. package/{src → build}/lib/watch.d.ts +1 -0
  72. package/build/lib/watch.d.ts.map +1 -0
  73. package/build/lib/watch.js +155 -0
  74. package/eslint.config.mjs +2 -70
  75. package/package.json +22 -33
  76. package/templates/go/go.mod +1 -1
  77. package/templates/python/Pipfile +1 -1
  78. package/templates/typescript/.hooks.sscaff.js +1 -1
  79. package/templates/typescript/jest.config.js +1 -1
  80. package/src/lib/cdktf-config.d.ts.map +0 -1
  81. package/src/lib/cdktf-config.js +0 -108
  82. package/src/lib/cdktf-project-io-handler.d.ts.map +0 -1
  83. package/src/lib/cdktf-project-io-handler.js +0 -84
  84. package/src/lib/cdktf-project.d.ts.map +0 -1
  85. package/src/lib/cdktf-project.js +0 -371
  86. package/src/lib/cdktf-stack.d.ts.map +0 -1
  87. package/src/lib/cdktf-stack.js +0 -386
  88. package/src/lib/convert.d.ts.map +0 -1
  89. package/src/lib/convert.js +0 -51
  90. package/src/lib/dependencies/cdktf-config-manager.d.ts.map +0 -1
  91. package/src/lib/dependencies/cdktf-config-manager.js +0 -36
  92. package/src/lib/dependencies/dependency-manager.d.ts.map +0 -1
  93. package/src/lib/dependencies/dependency-manager.js +0 -393
  94. package/src/lib/dependencies/package-manager.d.ts.map +0 -1
  95. package/src/lib/dependencies/package-manager.js +0 -581
  96. package/src/lib/dependencies/prebuilt-providers.d.ts.map +0 -1
  97. package/src/lib/dependencies/prebuilt-providers.js +0 -220
  98. package/src/lib/dependencies/registry-api.d.ts.map +0 -1
  99. package/src/lib/dependencies/registry-api.js +0 -77
  100. package/src/lib/dependencies/version-constraints.d.ts.map +0 -1
  101. package/src/lib/dependencies/version-constraints.js +0 -95
  102. package/src/lib/error-reporting.d.ts.map +0 -1
  103. package/src/lib/error-reporting.js +0 -133
  104. package/src/lib/errors.d.ts.map +0 -1
  105. package/src/lib/errors.js +0 -10
  106. package/src/lib/execution-logs.d.ts.map +0 -1
  107. package/src/lib/execution-logs.js +0 -47
  108. package/src/lib/get.d.ts.map +0 -1
  109. package/src/lib/get.js +0 -90
  110. package/src/lib/helpers/stack-helpers.d.ts.map +0 -1
  111. package/src/lib/helpers/stack-helpers.js +0 -155
  112. package/src/lib/index.d.ts.map +0 -1
  113. package/src/lib/init.d.ts.map +0 -1
  114. package/src/lib/init.js +0 -131
  115. package/src/lib/local-provider-constraints.d.ts.map +0 -1
  116. package/src/lib/local-provider-constraints.js +0 -95
  117. package/src/lib/local-provider-versions.d.ts.map +0 -1
  118. package/src/lib/local-provider-versions.js +0 -73
  119. package/src/lib/models/deploy-machine.d.ts.map +0 -1
  120. package/src/lib/models/deploy-machine.js +0 -280
  121. package/src/lib/models/pty-process.d.ts +0 -29
  122. package/src/lib/models/pty-process.d.ts.map +0 -1
  123. package/src/lib/models/pty-process.js +0 -132
  124. package/src/lib/models/schema.js +0 -181
  125. package/src/lib/models/terraform-cli.d.ts.map +0 -1
  126. package/src/lib/models/terraform-cli.js +0 -357
  127. package/src/lib/models/terraform.d.ts.map +0 -1
  128. package/src/lib/models/terraform.js +0 -72
  129. package/src/lib/output.d.ts.map +0 -1
  130. package/src/lib/output.js +0 -211
  131. package/src/lib/provider-add.d.ts.map +0 -1
  132. package/src/lib/provider-add.js +0 -30
  133. package/src/lib/server/terraform-logs.d.ts.map +0 -1
  134. package/src/lib/server/terraform-logs.js +0 -19
  135. package/src/lib/synth-stack.d.ts.map +0 -1
  136. package/src/lib/synth-stack.js +0 -251
  137. package/src/lib/synth.d.ts.map +0 -1
  138. package/src/lib/synth.js +0 -67
  139. package/src/lib/terraform-json.js +0 -82
  140. package/src/lib/terraform-provider-lock.d.ts.map +0 -1
  141. package/src/lib/watch.d.ts.map +0 -1
  142. package/src/lib/watch.js +0 -155
  143. /package/{src → build}/lib/cdktf-config.d.ts +0 -0
  144. /package/{src → build}/lib/cdktf-project-io-handler.d.ts +0 -0
  145. /package/{src → build}/lib/cdktf-project.d.ts +0 -0
  146. /package/{src → build}/lib/convert.d.ts +0 -0
  147. /package/{src → build}/lib/dependencies/cdktf-config-manager.d.ts +0 -0
  148. /package/{src → build}/lib/dependencies/dependency-manager.d.ts +0 -0
  149. /package/{src → build}/lib/dependencies/package-manager.d.ts +0 -0
  150. /package/{src → build}/lib/dependencies/prebuilt-providers.d.ts +0 -0
  151. /package/{src → build}/lib/dependencies/registry-api.d.ts +0 -0
  152. /package/{src → build}/lib/dependencies/version-constraints.d.ts +0 -0
  153. /package/{src → build}/lib/error-reporting.d.ts +0 -0
  154. /package/{src → build}/lib/errors.d.ts +0 -0
  155. /package/{src → build}/lib/execution-logs.d.ts +0 -0
  156. /package/{src → build}/lib/get.d.ts +0 -0
  157. /package/{src → build}/lib/helpers/stack-helpers.d.ts +0 -0
  158. /package/{src → build}/lib/index.d.ts +0 -0
  159. /package/{src → build}/lib/init.d.ts +0 -0
  160. /package/{src → build}/lib/local-provider-constraints.d.ts +0 -0
  161. /package/{src → build}/lib/local-provider-versions.d.ts +0 -0
  162. /package/{src → build}/lib/models/schema.d.ts +0 -0
  163. /package/{src → build}/lib/models/terraform.d.ts +0 -0
  164. /package/{src → build}/lib/output.d.ts +0 -0
  165. /package/{src → build}/lib/provider-add.d.ts +0 -0
  166. /package/{src → build}/lib/server/terraform-logs.d.ts +0 -0
  167. /package/{src → build}/lib/synth.d.ts +0 -0
  168. /package/{src → build}/lib/terraform-json.d.ts +0 -0
  169. /package/{src → build}/lib/terraform-provider-lock.d.ts +0 -0
@@ -30,7 +30,7 @@ exports.post = (ctx) => {
30
30
 
31
31
  installDeps([npm_cdktf, `constructs@10`], false, silent);
32
32
  installDeps(
33
- ["@types/node", "typescript", "jest", "@types/jest", "ts-jest", "ts-node"],
33
+ ["@types/node", "typescript@5.x", "jest", "@types/jest", "ts-jest", "ts-node"],
34
34
  true,
35
35
  silent
36
36
  );
@@ -147,7 +147,7 @@ module.exports = {
147
147
  ],
148
148
 
149
149
  // An array of regexp pattern strings that are matched against all test paths, matched tests are skipped
150
- testPathIgnorePatterns: ["/node_modules/", ".d.ts", ".js"],
150
+ testPathIgnorePatterns: ["/node_modules/", "\\.d\\.ts$", "\\.js$"],
151
151
 
152
152
  // The regexp pattern or array of patterns that Jest uses to detect test files
153
153
  // testRegex: [],
@@ -1 +0,0 @@
1
- {"version":3,"file":"cdktf-config.d.ts","sourceRoot":"","sources":["cdktf-config.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,QAAQ,EAGR,6BAA6B,EAC9B,MAAM,gBAAgB,CAAC;AAuBxB,qBAAa,WAAW;IACV,OAAO,CAAC,eAAe;gBAAf,eAAe,EAAE,MAAM;IAE3C,OAAO,CAAC,eAAe;IAUvB,OAAO,CAAC,gBAAgB;IAKxB,OAAO,CAAC,WAAW;IAKnB,IAAW,QAAQ,IAAI,QAAQ,CAa9B;IAED,IAAW,eAAe,IAAI,MAAM,CAEnC;IAED,IAAW,kBAAkB,IAAI,CAAC,6BAA6B,GAAG,MAAM,CAAC,EAAE,CAI1E;IAED,IAAW,gBAAgB,IAAI,CAAC,6BAA6B,GAAG,MAAM,CAAC,EAAE,CAIxE;IAEM,uBAAuB,CAC5B,SAAS,EAAE,CAAC,6BAA6B,GAAG,MAAM,CAAC,EAAE;IAOvD,IAAW,gBAAgB,IAAI,MAAM,CAEpC;WAEa,IAAI,CAAC,IAAI,GAAE,MAAsB,GAAG,WAAW;CAW9D"}
@@ -1,108 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.CdktfConfig = void 0;
30
- // Copyright (c) HashiCorp, Inc
31
- // SPDX-License-Identifier: MPL-2.0
32
- const fs = __importStar(require("fs"));
33
- const commons_1 = require("@cdktn/commons");
34
- const path_1 = __importDefault(require("path"));
35
- const commons_2 = require("@cdktn/commons");
36
- function findFileAboveCwd(file, rootPath = process.cwd()) {
37
- const fullPath = path_1.default.resolve(rootPath, file);
38
- if (fs.existsSync(fullPath)) {
39
- return fullPath;
40
- }
41
- const parentDir = path_1.default.resolve(rootPath, "..");
42
- if (fs.existsSync(parentDir) && parentDir !== rootPath) {
43
- return findFileAboveCwd(file, parentDir);
44
- }
45
- return null;
46
- }
47
- // TODO: move this to @cdktn/commons
48
- // tracked here https://github.com/hashicorp/terraform-cdk/issues/1814
49
- class CdktfConfig {
50
- constructor(cdktfConfigPath) {
51
- this.cdktfConfigPath = cdktfConfigPath;
52
- }
53
- readCdktfConfig() {
54
- const cdktfConfig = require(this.cdktfConfigPath);
55
- if (typeof cdktfConfig !== "object" || cdktfConfig === null) {
56
- throw commons_1.Errors.External("cdktf.json is malformed. The root must be a JSON object."); // TODO: define a schema and validate against it
57
- }
58
- return cdktfConfig;
59
- }
60
- writeCdktfConfig(cdktfConfig) {
61
- const cdktfConfigString = JSON.stringify(cdktfConfig, null, 2);
62
- fs.writeFileSync(this.cdktfConfigPath, cdktfConfigString);
63
- }
64
- getProperty(property) {
65
- const cdktfConfig = this.readCdktfConfig();
66
- return cdktfConfig[property] || commons_1.CONFIG_DEFAULTS[property];
67
- }
68
- get language() {
69
- const rawLanguage = this.getProperty("language");
70
- const language = Object.values(commons_1.Language).find((value) => value === rawLanguage);
71
- if (!language)
72
- throw commons_1.Errors.Usage(`${rawLanguage} is not a valid language. It must be one of ${Object.values(commons_1.Language)}`);
73
- return language;
74
- }
75
- get codeMakerOutput() {
76
- return this.getProperty("codeMakerOutput");
77
- }
78
- get terraformProviders() {
79
- const providers = this.getProperty("terraformProviders");
80
- if (!Array.isArray(providers))
81
- return [];
82
- return providers;
83
- }
84
- get terraformModules() {
85
- const modules = this.getProperty("terraformModules");
86
- if (!Array.isArray(modules))
87
- return [];
88
- return modules;
89
- }
90
- writeTerraformProviders(providers) {
91
- const cdktfConfig = this.readCdktfConfig();
92
- cdktfConfig.terraformProviders = providers;
93
- this.writeCdktfConfig(cdktfConfig);
94
- }
95
- get projectDirectory() {
96
- return path_1.default.dirname(this.cdktfConfigPath);
97
- }
98
- static read(path = process.cwd()) {
99
- const cdktfConfigPath = findFileAboveCwd("cdktf.json", path);
100
- if (!cdktfConfigPath) {
101
- throw commons_1.Errors.External("Could not find cdktf.json. Make sure there is a cdktf.json file in the current directory or one of its parents.");
102
- }
103
- commons_2.logger.trace(`cdktf.json found at ${cdktfConfigPath}`);
104
- return new CdktfConfig(cdktfConfigPath);
105
- }
106
- }
107
- exports.CdktfConfig = CdktfConfig;
108
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RrdGYtY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiY2RrdGYtY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsK0JBQStCO0FBQy9CLG1DQUFtQztBQUNuQyx1Q0FBeUI7QUFDekIsNENBS3dCO0FBQ3hCLGdEQUF3QjtBQUN4Qiw0Q0FBd0M7QUFFeEMsU0FBUyxnQkFBZ0IsQ0FDdkIsSUFBWSxFQUNaLFFBQVEsR0FBRyxPQUFPLENBQUMsR0FBRyxFQUFFO0lBRXhCLE1BQU0sUUFBUSxHQUFHLGNBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzlDLElBQUksRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO1FBQzVCLE9BQU8sUUFBUSxDQUFDO0lBQ2xCLENBQUM7SUFFRCxNQUFNLFNBQVMsR0FBRyxjQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUMvQyxJQUFJLEVBQUUsQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLElBQUksU0FBUyxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQ3ZELE9BQU8sZ0JBQWdCLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFFRCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUM7QUFFRCxvQ0FBb0M7QUFDcEMsc0VBQXNFO0FBQ3RFLE1BQWEsV0FBVztJQUN0QixZQUFvQixlQUF1QjtRQUF2QixvQkFBZSxHQUFmLGVBQWUsQ0FBUTtJQUFHLENBQUM7SUFFdkMsZUFBZTtRQUNyQixNQUFNLFdBQVcsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQ2xELElBQUksT0FBTyxXQUFXLEtBQUssUUFBUSxJQUFJLFdBQVcsS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUM1RCxNQUFNLGdCQUFNLENBQUMsUUFBUSxDQUNuQiwwREFBMEQsQ0FDM0QsQ0FBQyxDQUFDLGdEQUFnRDtRQUNyRCxDQUFDO1FBQ0QsT0FBTyxXQUFXLENBQUM7SUFDckIsQ0FBQztJQUVPLGdCQUFnQixDQUFDLFdBQW9DO1FBQzNELE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQy9ELEVBQUUsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFTyxXQUFXLENBQUMsUUFBZ0I7UUFDbEMsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQzNDLE9BQU8sV0FBVyxDQUFDLFFBQVEsQ0FBQyxJQUFLLHlCQUF1QixDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFRCxJQUFXLFFBQVE7UUFDakIsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNqRCxNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLGtCQUFRLENBQUMsQ0FBQyxJQUFJLENBQzNDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLEtBQUssV0FBVyxDQUNqQyxDQUFDO1FBQ0YsSUFBSSxDQUFDLFFBQVE7WUFDWCxNQUFNLGdCQUFNLENBQUMsS0FBSyxDQUNoQixHQUFHLFdBQVcsK0NBQStDLE1BQU0sQ0FBQyxNQUFNLENBQ3hFLGtCQUFRLENBQ1QsRUFBRSxDQUNKLENBQUM7UUFFSixPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDO0lBRUQsSUFBVyxlQUFlO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxpQkFBaUIsQ0FBVyxDQUFDO0lBQ3ZELENBQUM7SUFFRCxJQUFXLGtCQUFrQjtRQUMzQixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFDekQsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDO1lBQUUsT0FBTyxFQUFFLENBQUM7UUFDekMsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztJQUVELElBQVcsZ0JBQWdCO1FBQ3pCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUNyRCxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUM7WUFBRSxPQUFPLEVBQUUsQ0FBQztRQUN2QyxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBRU0sdUJBQXVCLENBQzVCLFNBQXFEO1FBRXJELE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUMzQyxXQUFXLENBQUMsa0JBQWtCLEdBQUcsU0FBUyxDQUFDO1FBQzNDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRUQsSUFBVyxnQkFBZ0I7UUFDekIsT0FBTyxjQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRU0sTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFlLE9BQU8sQ0FBQyxHQUFHLEVBQUU7UUFDN0MsTUFBTSxlQUFlLEdBQUcsZ0JBQWdCLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzdELElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUNyQixNQUFNLGdCQUFNLENBQUMsUUFBUSxDQUNuQixpSEFBaUgsQ0FDbEgsQ0FBQztRQUNKLENBQUM7UUFDRCxnQkFBTSxDQUFDLEtBQUssQ0FBQyx1QkFBdUIsZUFBZSxFQUFFLENBQUMsQ0FBQztRQUV2RCxPQUFPLElBQUksV0FBVyxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQzFDLENBQUM7Q0FDRjtBQTdFRCxrQ0E2RUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgKGMpIEhhc2hpQ29ycCwgSW5jXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTVBMLTIuMFxuaW1wb3J0ICogYXMgZnMgZnJvbSBcImZzXCI7XG5pbXBvcnQge1xuICBMYW5ndWFnZSxcbiAgRXJyb3JzLFxuICBDT05GSUdfREVGQVVMVFMsXG4gIFRlcnJhZm9ybURlcGVuZGVuY3lDb25zdHJhaW50LFxufSBmcm9tIFwiQGNka3RuL2NvbW1vbnNcIjtcbmltcG9ydCBwYXRoIGZyb20gXCJwYXRoXCI7XG5pbXBvcnQgeyBsb2dnZXIgfSBmcm9tIFwiQGNka3RuL2NvbW1vbnNcIjtcblxuZnVuY3Rpb24gZmluZEZpbGVBYm92ZUN3ZChcbiAgZmlsZTogc3RyaW5nLFxuICByb290UGF0aCA9IHByb2Nlc3MuY3dkKCksXG4pOiBzdHJpbmcgfCBudWxsIHtcbiAgY29uc3QgZnVsbFBhdGggPSBwYXRoLnJlc29sdmUocm9vdFBhdGgsIGZpbGUpO1xuICBpZiAoZnMuZXhpc3RzU3luYyhmdWxsUGF0aCkpIHtcbiAgICByZXR1cm4gZnVsbFBhdGg7XG4gIH1cblxuICBjb25zdCBwYXJlbnREaXIgPSBwYXRoLnJlc29sdmUocm9vdFBhdGgsIFwiLi5cIik7XG4gIGlmIChmcy5leGlzdHNTeW5jKHBhcmVudERpcikgJiYgcGFyZW50RGlyICE9PSByb290UGF0aCkge1xuICAgIHJldHVybiBmaW5kRmlsZUFib3ZlQ3dkKGZpbGUsIHBhcmVudERpcik7XG4gIH1cblxuICByZXR1cm4gbnVsbDtcbn1cblxuLy8gVE9ETzogbW92ZSB0aGlzIHRvIEBjZGt0bi9jb21tb25zXG4vLyB0cmFja2VkIGhlcmUgaHR0cHM6Ly9naXRodWIuY29tL2hhc2hpY29ycC90ZXJyYWZvcm0tY2RrL2lzc3Vlcy8xODE0XG5leHBvcnQgY2xhc3MgQ2RrdGZDb25maWcge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNka3RmQ29uZmlnUGF0aDogc3RyaW5nKSB7fVxuXG4gIHByaXZhdGUgcmVhZENka3RmQ29uZmlnKCk6IFJlY29yZDxzdHJpbmcsIHVua25vd24+IHtcbiAgICBjb25zdCBjZGt0ZkNvbmZpZyA9IHJlcXVpcmUodGhpcy5jZGt0ZkNvbmZpZ1BhdGgpO1xuICAgIGlmICh0eXBlb2YgY2RrdGZDb25maWcgIT09IFwib2JqZWN0XCIgfHwgY2RrdGZDb25maWcgPT09IG51bGwpIHtcbiAgICAgIHRocm93IEVycm9ycy5FeHRlcm5hbChcbiAgICAgICAgXCJjZGt0Zi5qc29uIGlzIG1hbGZvcm1lZC4gVGhlIHJvb3QgbXVzdCBiZSBhIEpTT04gb2JqZWN0LlwiLFxuICAgICAgKTsgLy8gVE9ETzogZGVmaW5lIGEgc2NoZW1hIGFuZCB2YWxpZGF0ZSBhZ2FpbnN0IGl0XG4gICAgfVxuICAgIHJldHVybiBjZGt0ZkNvbmZpZztcbiAgfVxuXG4gIHByaXZhdGUgd3JpdGVDZGt0ZkNvbmZpZyhjZGt0ZkNvbmZpZzogUmVjb3JkPHN0cmluZywgdW5rbm93bj4pIHtcbiAgICBjb25zdCBjZGt0ZkNvbmZpZ1N0cmluZyA9IEpTT04uc3RyaW5naWZ5KGNka3RmQ29uZmlnLCBudWxsLCAyKTtcbiAgICBmcy53cml0ZUZpbGVTeW5jKHRoaXMuY2RrdGZDb25maWdQYXRoLCBjZGt0ZkNvbmZpZ1N0cmluZyk7XG4gIH1cblxuICBwcml2YXRlIGdldFByb3BlcnR5KHByb3BlcnR5OiBzdHJpbmcpOiB1bmtub3duIHtcbiAgICBjb25zdCBjZGt0ZkNvbmZpZyA9IHRoaXMucmVhZENka3RmQ29uZmlnKCk7XG4gICAgcmV0dXJuIGNka3RmQ29uZmlnW3Byb3BlcnR5XSB8fCAoQ09ORklHX0RFRkFVTFRTIGFzIGFueSlbcHJvcGVydHldO1xuICB9XG5cbiAgcHVibGljIGdldCBsYW5ndWFnZSgpOiBMYW5ndWFnZSB7XG4gICAgY29uc3QgcmF3TGFuZ3VhZ2UgPSB0aGlzLmdldFByb3BlcnR5KFwibGFuZ3VhZ2VcIik7XG4gICAgY29uc3QgbGFuZ3VhZ2UgPSBPYmplY3QudmFsdWVzKExhbmd1YWdlKS5maW5kKFxuICAgICAgKHZhbHVlKSA9PiB2YWx1ZSA9PT0gcmF3TGFuZ3VhZ2UsXG4gICAgKTtcbiAgICBpZiAoIWxhbmd1YWdlKVxuICAgICAgdGhyb3cgRXJyb3JzLlVzYWdlKFxuICAgICAgICBgJHtyYXdMYW5ndWFnZX0gaXMgbm90IGEgdmFsaWQgbGFuZ3VhZ2UuIEl0IG11c3QgYmUgb25lIG9mICR7T2JqZWN0LnZhbHVlcyhcbiAgICAgICAgICBMYW5ndWFnZSxcbiAgICAgICAgKX1gLFxuICAgICAgKTtcblxuICAgIHJldHVybiBsYW5ndWFnZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY29kZU1ha2VyT3V0cHV0KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0UHJvcGVydHkoXCJjb2RlTWFrZXJPdXRwdXRcIikgYXMgc3RyaW5nO1xuICB9XG5cbiAgcHVibGljIGdldCB0ZXJyYWZvcm1Qcm92aWRlcnMoKTogKFRlcnJhZm9ybURlcGVuZGVuY3lDb25zdHJhaW50IHwgc3RyaW5nKVtdIHtcbiAgICBjb25zdCBwcm92aWRlcnMgPSB0aGlzLmdldFByb3BlcnR5KFwidGVycmFmb3JtUHJvdmlkZXJzXCIpO1xuICAgIGlmICghQXJyYXkuaXNBcnJheShwcm92aWRlcnMpKSByZXR1cm4gW107XG4gICAgcmV0dXJuIHByb3ZpZGVycztcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdGVycmFmb3JtTW9kdWxlcygpOiAoVGVycmFmb3JtRGVwZW5kZW5jeUNvbnN0cmFpbnQgfCBzdHJpbmcpW10ge1xuICAgIGNvbnN0IG1vZHVsZXMgPSB0aGlzLmdldFByb3BlcnR5KFwidGVycmFmb3JtTW9kdWxlc1wiKTtcbiAgICBpZiAoIUFycmF5LmlzQXJyYXkobW9kdWxlcykpIHJldHVybiBbXTtcbiAgICByZXR1cm4gbW9kdWxlcztcbiAgfVxuXG4gIHB1YmxpYyB3cml0ZVRlcnJhZm9ybVByb3ZpZGVycyhcbiAgICBwcm92aWRlcnM6IChUZXJyYWZvcm1EZXBlbmRlbmN5Q29uc3RyYWludCB8IHN0cmluZylbXSxcbiAgKSB7XG4gICAgY29uc3QgY2RrdGZDb25maWcgPSB0aGlzLnJlYWRDZGt0ZkNvbmZpZygpO1xuICAgIGNka3RmQ29uZmlnLnRlcnJhZm9ybVByb3ZpZGVycyA9IHByb3ZpZGVycztcbiAgICB0aGlzLndyaXRlQ2RrdGZDb25maWcoY2RrdGZDb25maWcpO1xuICB9XG5cbiAgcHVibGljIGdldCBwcm9qZWN0RGlyZWN0b3J5KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHBhdGguZGlybmFtZSh0aGlzLmNka3RmQ29uZmlnUGF0aCk7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIHJlYWQocGF0aDogc3RyaW5nID0gcHJvY2Vzcy5jd2QoKSk6IENka3RmQ29uZmlnIHtcbiAgICBjb25zdCBjZGt0ZkNvbmZpZ1BhdGggPSBmaW5kRmlsZUFib3ZlQ3dkKFwiY2RrdGYuanNvblwiLCBwYXRoKTtcbiAgICBpZiAoIWNka3RmQ29uZmlnUGF0aCkge1xuICAgICAgdGhyb3cgRXJyb3JzLkV4dGVybmFsKFxuICAgICAgICBcIkNvdWxkIG5vdCBmaW5kIGNka3RmLmpzb24uIE1ha2Ugc3VyZSB0aGVyZSBpcyBhIGNka3RmLmpzb24gZmlsZSBpbiB0aGUgY3VycmVudCBkaXJlY3Rvcnkgb3Igb25lIG9mIGl0cyBwYXJlbnRzLlwiLFxuICAgICAgKTtcbiAgICB9XG4gICAgbG9nZ2VyLnRyYWNlKGBjZGt0Zi5qc29uIGZvdW5kIGF0ICR7Y2RrdGZDb25maWdQYXRofWApO1xuXG4gICAgcmV0dXJuIG5ldyBDZGt0ZkNvbmZpZyhjZGt0ZkNvbmZpZ1BhdGgpO1xuICB9XG59XG4iXX0=
@@ -1 +0,0 @@
1
- {"version":3,"file":"cdktf-project-io-handler.d.ts","sourceRoot":"","sources":["cdktf-project-io-handler.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,YAAY,EAGZ,UAAU,EACX,MAAM,iBAAiB,CAAC;AAEzB;;;GAGG;AACH,qBAAa,qBAAqB;IAIhC,OAAO,CAAC,mBAAmB,CAAS;IACpC,OAAO,CAAC,WAAW,CAA2B;IAEvC,cAAc;IAId,+BAA+B;IAS/B,oBAAoB,CAAC,SAAS,EAAE,MAAM;IA0CtC,qBAAqB;IAIrB,SAAS,CAAC,KAAK,EAAE,YAAY;IAI7B,4BAA4B,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,UAAU,KAAK,IAAI,UAKnD,UAAU;CAY1B"}
@@ -1,84 +0,0 @@
1
- "use strict";
2
- /**
3
- * Copyright (c) HashiCorp, Inc.
4
- * SPDX-License-Identifier: MPL-2.0
5
- */
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.CdktfProjectIOHandler = void 0;
8
- const cdktf_project_1 = require("./cdktf-project");
9
- /**
10
- * This class is used to buffer events while the user is being asked for input. It is solely consumed by the CdktfProject class,
11
- * and is mostly created as a separation of concerns to keep the CdktfProject class as clean as possible.
12
- */
13
- class CdktfProjectIOHandler {
14
- constructor() {
15
- // Pauses all progress / status events from being forwarded to the user
16
- // If set from true to false, the events will be sent through the channels they came in
17
- // (until a waiting for approval event is sent)
18
- this.waitingForUserInput = false;
19
- this.eventBuffer = [];
20
- }
21
- awaitUserInput() {
22
- this.waitingForUserInput = true;
23
- }
24
- filterUserInputEventsFromBuffer() {
25
- this.eventBuffer = this.eventBuffer.filter((event) => event.type === "projectUpdate"
26
- ? !(0, cdktf_project_1.isWaitingForUserInputUpdate)(event.value) // we want to filter out the waiting for approval events
27
- : true);
28
- }
29
- resumeAfterUserInput(stackName) {
30
- // remove waiting for approval event that should be resumed
31
- this.eventBuffer = this.eventBuffer.filter((event) => !(event.type === "projectUpdate" &&
32
- (0, cdktf_project_1.isWaitingForUserInputUpdate)(event.value) &&
33
- event.value.stackName === stackName));
34
- if (this.eventBuffer.length &&
35
- this.eventBuffer[0].type === "projectUpdate" &&
36
- (0, cdktf_project_1.isWaitingForUserInputUpdate)(this.eventBuffer[0].value)) {
37
- // we are still waiting on approval for the current stack
38
- // we removed a future "waiting for approval" event for some other stack
39
- return;
40
- }
41
- // We first need to flush all events, we can not resume if there is a new waiting for approval update
42
- let event = this.eventBuffer.shift();
43
- while (event) {
44
- if (event.type === "projectUpdate") {
45
- event.cb(event.value);
46
- if ((0, cdktf_project_1.isWaitingForUserInputUpdate)(event.value)) {
47
- // We have to wait for user input again, therefore we can not resume
48
- return;
49
- }
50
- }
51
- if (event.type === "logMessage") {
52
- event.cb(event.value);
53
- }
54
- event = this.eventBuffer.shift();
55
- }
56
- // If we reach this point there was no waiting for user input event, so we can safely resume
57
- this.waitingForUserInput = false;
58
- }
59
- isWaitingForUserInput() {
60
- return this.waitingForUserInput;
61
- }
62
- pushEvent(event) {
63
- this.eventBuffer.push(event);
64
- }
65
- bufferWhileAwaitingUserInput(cb) {
66
- if (!cb) {
67
- return undefined;
68
- }
69
- return (msg) => {
70
- if (this.waitingForUserInput) {
71
- this.eventBuffer.push({
72
- cb,
73
- value: msg,
74
- type: "logMessage",
75
- });
76
- }
77
- else {
78
- cb(msg);
79
- }
80
- };
81
- }
82
- }
83
- exports.CdktfProjectIOHandler = CdktfProjectIOHandler;
84
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RrdGYtcHJvamVjdC1pby1oYW5kbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiY2RrdGYtcHJvamVjdC1pby1oYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7O0dBR0c7OztBQUVILG1EQUt5QjtBQUV6Qjs7O0dBR0c7QUFDSCxNQUFhLHFCQUFxQjtJQUFsQztRQUNFLHVFQUF1RTtRQUN2RSx1RkFBdUY7UUFDdkYsK0NBQStDO1FBQ3ZDLHdCQUFtQixHQUFHLEtBQUssQ0FBQztRQUM1QixnQkFBVyxHQUF3QixFQUFFLENBQUM7SUFrRmhELENBQUM7SUFoRlEsY0FBYztRQUNuQixJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDO0lBQ2xDLENBQUM7SUFFTSwrQkFBK0I7UUFDcEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FDeEMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUNSLEtBQUssQ0FBQyxJQUFJLEtBQUssZUFBZTtZQUM1QixDQUFDLENBQUMsQ0FBQyxJQUFBLDJDQUEyQixFQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyx3REFBd0Q7WUFDcEcsQ0FBQyxDQUFDLElBQUksQ0FDWCxDQUFDO0lBQ0osQ0FBQztJQUVNLG9CQUFvQixDQUFDLFNBQWlCO1FBQzNDLDJEQUEyRDtRQUMzRCxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUN4QyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQ1IsQ0FBQyxDQUNDLEtBQUssQ0FBQyxJQUFJLEtBQUssZUFBZTtZQUM5QixJQUFBLDJDQUEyQixFQUFDLEtBQUssQ0FBQyxLQUFLLENBQUM7WUFDdkMsS0FBSyxDQUFDLEtBQTBCLENBQUMsU0FBUyxLQUFLLFNBQVMsQ0FDMUQsQ0FDSixDQUFDO1FBRUYsSUFDRSxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU07WUFDdkIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssZUFBZTtZQUM1QyxJQUFBLDJDQUEyQixFQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEVBQ3RELENBQUM7WUFDRCx5REFBeUQ7WUFDekQsd0VBQXdFO1lBQ3hFLE9BQU87UUFDVCxDQUFDO1FBRUQscUdBQXFHO1FBQ3JHLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDckMsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNiLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxlQUFlLEVBQUUsQ0FBQztnQkFDbkMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ3RCLElBQUksSUFBQSwyQ0FBMkIsRUFBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztvQkFDN0Msb0VBQW9FO29CQUNwRSxPQUFPO2dCQUNULENBQUM7WUFDSCxDQUFDO1lBQ0QsSUFBSSxLQUFLLENBQUMsSUFBSSxLQUFLLFlBQVksRUFBRSxDQUFDO2dCQUNoQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN4QixDQUFDO1lBRUQsS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDbkMsQ0FBQztRQUVELDRGQUE0RjtRQUM1RixJQUFJLENBQUMsbUJBQW1CLEdBQUcsS0FBSyxDQUFDO0lBQ25DLENBQUM7SUFFTSxxQkFBcUI7UUFDMUIsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUM7SUFDbEMsQ0FBQztJQUVNLFNBQVMsQ0FBQyxLQUFtQjtRQUNsQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRU0sNEJBQTRCLENBQUMsRUFBOEI7UUFDaEUsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ1IsT0FBTyxTQUFTLENBQUM7UUFDbkIsQ0FBQztRQUVELE9BQU8sQ0FBQyxHQUFlLEVBQUUsRUFBRTtZQUN6QixJQUFJLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO2dCQUM3QixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQztvQkFDcEIsRUFBRTtvQkFDRixLQUFLLEVBQUUsR0FBRztvQkFDVixJQUFJLEVBQUUsWUFBWTtpQkFDbkIsQ0FBQyxDQUFDO1lBQ0wsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNWLENBQUM7UUFDSCxDQUFDLENBQUM7SUFDSixDQUFDO0NBQ0Y7QUF2RkQsc0RBdUZDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDb3B5cmlnaHQgKGMpIEhhc2hpQ29ycCwgSW5jLlxuICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1QTC0yLjBcbiAqL1xuXG5pbXBvcnQge1xuICBQcm9qZWN0RXZlbnQsXG4gIGlzV2FpdGluZ0ZvclVzZXJJbnB1dFVwZGF0ZSxcbiAgTXVsdGlTdGFja1VwZGF0ZSxcbiAgTG9nTWVzc2FnZSxcbn0gZnJvbSBcIi4vY2RrdGYtcHJvamVjdFwiO1xuXG4vKipcbiAqIFRoaXMgY2xhc3MgaXMgdXNlZCB0byBidWZmZXIgZXZlbnRzIHdoaWxlIHRoZSB1c2VyIGlzIGJlaW5nIGFza2VkIGZvciBpbnB1dC4gSXQgaXMgc29sZWx5IGNvbnN1bWVkIGJ5IHRoZSBDZGt0ZlByb2plY3QgY2xhc3MsXG4gKiBhbmQgaXMgbW9zdGx5IGNyZWF0ZWQgYXMgYSBzZXBhcmF0aW9uIG9mIGNvbmNlcm5zIHRvIGtlZXAgdGhlIENka3RmUHJvamVjdCBjbGFzcyBhcyBjbGVhbiBhcyBwb3NzaWJsZS5cbiAqL1xuZXhwb3J0IGNsYXNzIENka3RmUHJvamVjdElPSGFuZGxlciB7XG4gIC8vIFBhdXNlcyBhbGwgcHJvZ3Jlc3MgLyBzdGF0dXMgZXZlbnRzIGZyb20gYmVpbmcgZm9yd2FyZGVkIHRvIHRoZSB1c2VyXG4gIC8vIElmIHNldCBmcm9tIHRydWUgdG8gZmFsc2UsIHRoZSBldmVudHMgd2lsbCBiZSBzZW50IHRocm91Z2ggdGhlIGNoYW5uZWxzIHRoZXkgY2FtZSBpblxuICAvLyAodW50aWwgYSB3YWl0aW5nIGZvciBhcHByb3ZhbCBldmVudCBpcyBzZW50KVxuICBwcml2YXRlIHdhaXRpbmdGb3JVc2VySW5wdXQgPSBmYWxzZTtcbiAgcHJpdmF0ZSBldmVudEJ1ZmZlcjogQXJyYXk8UHJvamVjdEV2ZW50PiA9IFtdO1xuXG4gIHB1YmxpYyBhd2FpdFVzZXJJbnB1dCgpIHtcbiAgICB0aGlzLndhaXRpbmdGb3JVc2VySW5wdXQgPSB0cnVlO1xuICB9XG5cbiAgcHVibGljIGZpbHRlclVzZXJJbnB1dEV2ZW50c0Zyb21CdWZmZXIoKSB7XG4gICAgdGhpcy5ldmVudEJ1ZmZlciA9IHRoaXMuZXZlbnRCdWZmZXIuZmlsdGVyKFxuICAgICAgKGV2ZW50KSA9PlxuICAgICAgICBldmVudC50eXBlID09PSBcInByb2plY3RVcGRhdGVcIlxuICAgICAgICAgID8gIWlzV2FpdGluZ0ZvclVzZXJJbnB1dFVwZGF0ZShldmVudC52YWx1ZSkgLy8gd2Ugd2FudCB0byBmaWx0ZXIgb3V0IHRoZSB3YWl0aW5nIGZvciBhcHByb3ZhbCBldmVudHNcbiAgICAgICAgICA6IHRydWUsIC8vIHdlIHdhbnQgYWxsIG90aGVyIHR5cGVzXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyByZXN1bWVBZnRlclVzZXJJbnB1dChzdGFja05hbWU6IHN0cmluZykge1xuICAgIC8vIHJlbW92ZSB3YWl0aW5nIGZvciBhcHByb3ZhbCBldmVudCB0aGF0IHNob3VsZCBiZSByZXN1bWVkXG4gICAgdGhpcy5ldmVudEJ1ZmZlciA9IHRoaXMuZXZlbnRCdWZmZXIuZmlsdGVyKFxuICAgICAgKGV2ZW50KSA9PlxuICAgICAgICAhKFxuICAgICAgICAgIGV2ZW50LnR5cGUgPT09IFwicHJvamVjdFVwZGF0ZVwiICYmXG4gICAgICAgICAgaXNXYWl0aW5nRm9yVXNlcklucHV0VXBkYXRlKGV2ZW50LnZhbHVlKSAmJlxuICAgICAgICAgIChldmVudC52YWx1ZSBhcyBNdWx0aVN0YWNrVXBkYXRlKS5zdGFja05hbWUgPT09IHN0YWNrTmFtZVxuICAgICAgICApLFxuICAgICk7XG5cbiAgICBpZiAoXG4gICAgICB0aGlzLmV2ZW50QnVmZmVyLmxlbmd0aCAmJlxuICAgICAgdGhpcy5ldmVudEJ1ZmZlclswXS50eXBlID09PSBcInByb2plY3RVcGRhdGVcIiAmJlxuICAgICAgaXNXYWl0aW5nRm9yVXNlcklucHV0VXBkYXRlKHRoaXMuZXZlbnRCdWZmZXJbMF0udmFsdWUpXG4gICAgKSB7XG4gICAgICAvLyB3ZSBhcmUgc3RpbGwgd2FpdGluZyBvbiBhcHByb3ZhbCBmb3IgdGhlIGN1cnJlbnQgc3RhY2tcbiAgICAgIC8vIHdlIHJlbW92ZWQgYSBmdXR1cmUgXCJ3YWl0aW5nIGZvciBhcHByb3ZhbFwiIGV2ZW50IGZvciBzb21lIG90aGVyIHN0YWNrXG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gV2UgZmlyc3QgbmVlZCB0byBmbHVzaCBhbGwgZXZlbnRzLCB3ZSBjYW4gbm90IHJlc3VtZSBpZiB0aGVyZSBpcyBhIG5ldyB3YWl0aW5nIGZvciBhcHByb3ZhbCB1cGRhdGVcbiAgICBsZXQgZXZlbnQgPSB0aGlzLmV2ZW50QnVmZmVyLnNoaWZ0KCk7XG4gICAgd2hpbGUgKGV2ZW50KSB7XG4gICAgICBpZiAoZXZlbnQudHlwZSA9PT0gXCJwcm9qZWN0VXBkYXRlXCIpIHtcbiAgICAgICAgZXZlbnQuY2IoZXZlbnQudmFsdWUpO1xuICAgICAgICBpZiAoaXNXYWl0aW5nRm9yVXNlcklucHV0VXBkYXRlKGV2ZW50LnZhbHVlKSkge1xuICAgICAgICAgIC8vIFdlIGhhdmUgdG8gd2FpdCBmb3IgdXNlciBpbnB1dCBhZ2FpbiwgdGhlcmVmb3JlIHdlIGNhbiBub3QgcmVzdW1lXG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpZiAoZXZlbnQudHlwZSA9PT0gXCJsb2dNZXNzYWdlXCIpIHtcbiAgICAgICAgZXZlbnQuY2IoZXZlbnQudmFsdWUpO1xuICAgICAgfVxuXG4gICAgICBldmVudCA9IHRoaXMuZXZlbnRCdWZmZXIuc2hpZnQoKTtcbiAgICB9XG5cbiAgICAvLyBJZiB3ZSByZWFjaCB0aGlzIHBvaW50IHRoZXJlIHdhcyBubyB3YWl0aW5nIGZvciB1c2VyIGlucHV0IGV2ZW50LCBzbyB3ZSBjYW4gc2FmZWx5IHJlc3VtZVxuICAgIHRoaXMud2FpdGluZ0ZvclVzZXJJbnB1dCA9IGZhbHNlO1xuICB9XG5cbiAgcHVibGljIGlzV2FpdGluZ0ZvclVzZXJJbnB1dCgpIHtcbiAgICByZXR1cm4gdGhpcy53YWl0aW5nRm9yVXNlcklucHV0O1xuICB9XG5cbiAgcHVibGljIHB1c2hFdmVudChldmVudDogUHJvamVjdEV2ZW50KSB7XG4gICAgdGhpcy5ldmVudEJ1ZmZlci5wdXNoKGV2ZW50KTtcbiAgfVxuXG4gIHB1YmxpYyBidWZmZXJXaGlsZUF3YWl0aW5nVXNlcklucHV0KGNiPzogKG1zZzogTG9nTWVzc2FnZSkgPT4gdm9pZCkge1xuICAgIGlmICghY2IpIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIChtc2c6IExvZ01lc3NhZ2UpID0+IHtcbiAgICAgIGlmICh0aGlzLndhaXRpbmdGb3JVc2VySW5wdXQpIHtcbiAgICAgICAgdGhpcy5ldmVudEJ1ZmZlci5wdXNoKHtcbiAgICAgICAgICBjYixcbiAgICAgICAgICB2YWx1ZTogbXNnLFxuICAgICAgICAgIHR5cGU6IFwibG9nTWVzc2FnZVwiLFxuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNiKG1zZyk7XG4gICAgICB9XG4gICAgfTtcbiAgfVxufVxuIl19
@@ -1 +0,0 @@
1
- {"version":3,"file":"cdktf-project.d.ts","sourceRoot":"","sources":["cdktf-project.ts"],"names":[],"mappings":"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"}