projen 0.49.0 → 0.50.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 (296) hide show
  1. package/.jsii +6002 -1361
  2. package/.prettierignore +1 -0
  3. package/.prettierrc.json +3 -0
  4. package/API.md +931 -14
  5. package/changelog.md +1 -11
  6. package/docs/gitlab.md +67 -0
  7. package/lib/_resolve.d.ts +1 -1
  8. package/lib/_resolve.js +5 -7
  9. package/lib/awscdk/auto-discover.d.ts +4 -4
  10. package/lib/awscdk/auto-discover.js +2 -2
  11. package/lib/awscdk/awscdk-app-java.d.ts +4 -4
  12. package/lib/awscdk/awscdk-app-java.js +22 -18
  13. package/lib/awscdk/awscdk-app-ts.d.ts +5 -5
  14. package/lib/awscdk/awscdk-app-ts.js +33 -32
  15. package/lib/awscdk/awscdk-construct.d.ts +3 -3
  16. package/lib/awscdk/awscdk-construct.js +10 -8
  17. package/lib/awscdk/awscdk-deps-java.d.ts +1 -1
  18. package/lib/awscdk/awscdk-deps-java.js +6 -6
  19. package/lib/awscdk/awscdk-deps-js.d.ts +1 -1
  20. package/lib/awscdk/awscdk-deps-js.js +7 -7
  21. package/lib/awscdk/awscdk-deps.d.ts +3 -3
  22. package/lib/awscdk/awscdk-deps.js +17 -14
  23. package/lib/awscdk/cdk-config.d.ts +3 -3
  24. package/lib/awscdk/cdk-config.js +5 -5
  25. package/lib/awscdk/cdk-tasks.d.ts +3 -3
  26. package/lib/awscdk/cdk-tasks.js +21 -20
  27. package/lib/awscdk/index.d.ts +11 -11
  28. package/lib/awscdk/index.js +1 -1
  29. package/lib/awscdk/integration-test.d.ts +4 -4
  30. package/lib/awscdk/integration-test.js +15 -13
  31. package/lib/awscdk/internal.js +16 -16
  32. package/lib/awscdk/lambda-function.d.ts +4 -4
  33. package/lib/awscdk/lambda-function.js +29 -29
  34. package/lib/build/build-workflow.d.ts +5 -5
  35. package/lib/build/build-workflow.js +36 -30
  36. package/lib/build/index.d.ts +1 -1
  37. package/lib/build/index.js +1 -1
  38. package/lib/builtin-example.task.js +3 -3
  39. package/lib/cdk/construct-lib.d.ts +1 -1
  40. package/lib/cdk/construct-lib.js +4 -4
  41. package/lib/cdk/consts.d.ts +2 -2
  42. package/lib/cdk/consts.js +5 -5
  43. package/lib/cdk/index.d.ts +3 -3
  44. package/lib/cdk/index.js +1 -1
  45. package/lib/cdk/jsii-docgen.d.ts +1 -1
  46. package/lib/cdk/jsii-docgen.js +7 -7
  47. package/lib/cdk/jsii-project.d.ts +3 -3
  48. package/lib/cdk/jsii-project.js +39 -39
  49. package/lib/cdk8s/cdk8s-app-ts.d.ts +1 -1
  50. package/lib/cdk8s/cdk8s-app-ts.js +28 -21
  51. package/lib/cdk8s/cdk8s-construct.d.ts +1 -1
  52. package/lib/cdk8s/cdk8s-construct.js +10 -6
  53. package/lib/cdk8s/index.d.ts +2 -2
  54. package/lib/cdk8s/index.js +1 -1
  55. package/lib/cdktf/cdktf-construct.d.ts +1 -1
  56. package/lib/cdktf/cdktf-construct.js +4 -4
  57. package/lib/cdktf/index.d.ts +1 -1
  58. package/lib/cdktf/index.js +1 -1
  59. package/lib/cleanup.js +20 -14
  60. package/lib/cli/cmds/new.js +71 -42
  61. package/lib/cli/index.js +27 -10
  62. package/lib/cli/macros.js +15 -11
  63. package/lib/cli/synth.d.ts +1 -1
  64. package/lib/cli/synth.js +15 -12
  65. package/lib/cli/tasks.d.ts +2 -2
  66. package/lib/cli/tasks.js +9 -6
  67. package/lib/cli/util.js +4 -4
  68. package/lib/clobber.d.ts +2 -2
  69. package/lib/clobber.js +14 -10
  70. package/lib/common.js +7 -9
  71. package/lib/component.d.ts +1 -1
  72. package/lib/component.js +2 -2
  73. package/lib/dependencies.d.ts +2 -2
  74. package/lib/dependencies.js +14 -12
  75. package/lib/dev-env.d.ts +1 -1
  76. package/lib/dev-env.js +2 -2
  77. package/lib/docker-compose.d.ts +2 -2
  78. package/lib/docker-compose.js +23 -19
  79. package/lib/file.d.ts +2 -2
  80. package/lib/file.js +7 -5
  81. package/lib/gitattributes.d.ts +2 -2
  82. package/lib/gitattributes.js +7 -8
  83. package/lib/github/auto-approve.d.ts +2 -2
  84. package/lib/github/auto-approve.js +25 -15
  85. package/lib/github/auto-merge.d.ts +2 -2
  86. package/lib/github/auto-merge.js +14 -14
  87. package/lib/github/constants.d.ts +1 -1
  88. package/lib/github/constants.js +4 -4
  89. package/lib/github/dependabot.d.ts +2 -2
  90. package/lib/github/dependabot.js +16 -14
  91. package/lib/github/github-project.d.ts +5 -5
  92. package/lib/github/github-project.js +14 -10
  93. package/lib/github/github.d.ts +7 -7
  94. package/lib/github/github.js +7 -5
  95. package/lib/github/index.d.ts +13 -13
  96. package/lib/github/index.js +1 -1
  97. package/lib/github/mergify.d.ts +2 -2
  98. package/lib/github/mergify.js +3 -3
  99. package/lib/github/pr-template.d.ts +2 -2
  100. package/lib/github/pr-template.js +5 -5
  101. package/lib/github/pull-request-lint.d.ts +2 -2
  102. package/lib/github/pull-request-lint.js +17 -14
  103. package/lib/github/stale-util.d.ts +1 -1
  104. package/lib/github/stale-util.js +2 -3
  105. package/lib/github/stale.d.ts +2 -2
  106. package/lib/github/stale.js +28 -20
  107. package/lib/github/task-workflow.d.ts +4 -4
  108. package/lib/github/task-workflow.js +12 -10
  109. package/lib/github/workflow-actions.d.ts +2 -2
  110. package/lib/github/workflow-actions.js +22 -20
  111. package/lib/github/workflows-model.d.ts +20 -20
  112. package/lib/github/workflows-model.js +1 -1
  113. package/lib/github/workflows.d.ts +4 -4
  114. package/lib/github/workflows.js +42 -27
  115. package/lib/gitlab/configuration-model.d.ts +1308 -0
  116. package/lib/gitlab/configuration-model.js +122 -0
  117. package/lib/gitlab/configuration.d.ts +260 -0
  118. package/lib/gitlab/configuration.js +296 -0
  119. package/lib/gitlab/gitlab-configuration.d.ts +30 -0
  120. package/lib/gitlab/gitlab-configuration.js +49 -0
  121. package/lib/gitlab/index.d.ts +4 -0
  122. package/lib/gitlab/index.js +17 -0
  123. package/lib/gitlab/nested-configuration.d.ts +26 -0
  124. package/lib/gitlab/nested-configuration.js +38 -0
  125. package/lib/gitpod.d.ts +4 -4
  126. package/lib/gitpod.js +12 -9
  127. package/lib/ignore-file.d.ts +2 -2
  128. package/lib/ignore-file.js +10 -13
  129. package/lib/index.d.ts +47 -46
  130. package/lib/index.js +2 -1
  131. package/lib/ini.d.ts +3 -3
  132. package/lib/ini.js +4 -4
  133. package/lib/inventory.d.ts +1 -1
  134. package/lib/inventory.js +34 -30
  135. package/lib/java/index.d.ts +7 -7
  136. package/lib/java/index.js +1 -1
  137. package/lib/java/java-project.d.ts +6 -6
  138. package/lib/java/java-project.js +11 -13
  139. package/lib/java/junit.d.ts +3 -3
  140. package/lib/java/junit.js +17 -17
  141. package/lib/java/maven-compile.d.ts +3 -3
  142. package/lib/java/maven-compile.js +7 -7
  143. package/lib/java/maven-packaging.d.ts +3 -3
  144. package/lib/java/maven-packaging.js +12 -16
  145. package/lib/java/maven-sample.d.ts +2 -2
  146. package/lib/java/maven-sample.js +12 -12
  147. package/lib/java/pom.d.ts +2 -2
  148. package/lib/java/pom.js +16 -14
  149. package/lib/java/projenrc.d.ts +3 -3
  150. package/lib/java/projenrc.js +35 -25
  151. package/lib/javascript/bundler.d.ts +3 -3
  152. package/lib/javascript/bundler.js +14 -12
  153. package/lib/javascript/eslint.d.ts +4 -3
  154. package/lib/javascript/eslint.js +102 -86
  155. package/lib/javascript/index.d.ts +10 -10
  156. package/lib/javascript/index.js +1 -1
  157. package/lib/javascript/jest.d.ts +3 -11
  158. package/lib/javascript/jest.js +43 -55
  159. package/lib/javascript/node-package.d.ts +2 -2
  160. package/lib/javascript/node-package.js +87 -77
  161. package/lib/javascript/node-project.d.ts +11 -11
  162. package/lib/javascript/node-project.js +78 -52
  163. package/lib/javascript/npm-config.d.ts +2 -2
  164. package/lib/javascript/npm-config.js +4 -4
  165. package/lib/javascript/prettier.d.ts +4 -4
  166. package/lib/javascript/prettier.js +5 -5
  167. package/lib/javascript/projenrc.d.ts +2 -2
  168. package/lib/javascript/projenrc.js +8 -8
  169. package/lib/javascript/render-options.d.ts +2 -2
  170. package/lib/javascript/render-options.js +23 -18
  171. package/lib/javascript/typescript-config.d.ts +2 -2
  172. package/lib/javascript/typescript-config.js +5 -5
  173. package/lib/javascript/upgrade-dependencies.d.ts +4 -4
  174. package/lib/javascript/upgrade-dependencies.js +67 -53
  175. package/lib/javascript/util.js +2 -2
  176. package/lib/json.d.ts +3 -3
  177. package/lib/json.js +4 -4
  178. package/lib/license.d.ts +2 -2
  179. package/lib/license.js +7 -7
  180. package/lib/logger.d.ts +2 -2
  181. package/lib/logger.js +14 -9
  182. package/lib/logging.js +2 -2
  183. package/lib/makefile.d.ts +2 -2
  184. package/lib/makefile.js +12 -15
  185. package/lib/object-file.d.ts +2 -2
  186. package/lib/object-file.js +9 -7
  187. package/lib/option-hints.js +1 -1
  188. package/lib/project-build.d.ts +3 -3
  189. package/lib/project-build.js +14 -14
  190. package/lib/project.d.ts +14 -14
  191. package/lib/project.js +41 -23
  192. package/lib/projects.d.ts +1 -1
  193. package/lib/projects.js +10 -11
  194. package/lib/projenrc-json.d.ts +2 -2
  195. package/lib/projenrc-json.js +5 -5
  196. package/lib/python/index.d.ts +13 -13
  197. package/lib/python/index.js +1 -1
  198. package/lib/python/pip.d.ts +4 -4
  199. package/lib/python/pip.js +16 -12
  200. package/lib/python/poetry.d.ts +7 -7
  201. package/lib/python/poetry.js +41 -33
  202. package/lib/python/projenrc.d.ts +2 -2
  203. package/lib/python/projenrc.js +24 -21
  204. package/lib/python/pytest.d.ts +2 -2
  205. package/lib/python/pytest.js +19 -19
  206. package/lib/python/python-deps.d.ts +2 -2
  207. package/lib/python/python-deps.js +1 -1
  208. package/lib/python/python-packaging.d.ts +2 -2
  209. package/lib/python/python-packaging.js +1 -1
  210. package/lib/python/python-project.d.ts +7 -7
  211. package/lib/python/python-project.js +14 -13
  212. package/lib/python/python-sample.d.ts +2 -2
  213. package/lib/python/python-sample.js +17 -17
  214. package/lib/python/requirements-file.d.ts +3 -3
  215. package/lib/python/requirements-file.js +7 -8
  216. package/lib/python/setuppy.d.ts +2 -2
  217. package/lib/python/setuppy.js +23 -23
  218. package/lib/python/setuptools.d.ts +4 -4
  219. package/lib/python/setuptools.js +11 -11
  220. package/lib/python/venv.d.ts +3 -3
  221. package/lib/python/venv.js +6 -6
  222. package/lib/readme.d.ts +2 -2
  223. package/lib/readme.js +5 -3
  224. package/lib/release/bump-version.d.ts +1 -1
  225. package/lib/release/bump-version.js +37 -26
  226. package/lib/release/bump-version.task.js +7 -7
  227. package/lib/release/index.d.ts +3 -3
  228. package/lib/release/index.js +1 -1
  229. package/lib/release/publisher.d.ts +4 -4
  230. package/lib/release/publisher.js +93 -78
  231. package/lib/release/release-trigger.js +3 -3
  232. package/lib/release/release.d.ts +6 -6
  233. package/lib/release/release.js +37 -23
  234. package/lib/release/reset-version.task.js +4 -4
  235. package/lib/release/tag-version.js +1 -1
  236. package/lib/release/tag-version.task.js +3 -3
  237. package/lib/release/update-changelog.js +6 -4
  238. package/lib/release/update-changelog.task.js +4 -4
  239. package/lib/run-projenrc-json.task.js +5 -5
  240. package/lib/sample-file.d.ts +2 -2
  241. package/lib/sample-file.js +8 -8
  242. package/lib/semver.js +17 -7
  243. package/lib/source-code.d.ts +2 -2
  244. package/lib/source-code.js +5 -5
  245. package/lib/task-model.js +1 -1
  246. package/lib/task-runtime.d.ts +1 -1
  247. package/lib/task-runtime.js +27 -27
  248. package/lib/task.d.ts +1 -1
  249. package/lib/task.js +2 -2
  250. package/lib/tasks.d.ts +3 -3
  251. package/lib/tasks.js +5 -5
  252. package/lib/testing.d.ts +1 -1
  253. package/lib/testing.js +2 -2
  254. package/lib/textfile.d.ts +2 -2
  255. package/lib/textfile.js +3 -3
  256. package/lib/toml.d.ts +3 -3
  257. package/lib/toml.js +4 -4
  258. package/lib/typescript/index.d.ts +3 -3
  259. package/lib/typescript/index.js +1 -1
  260. package/lib/typescript/projenrc.d.ts +2 -2
  261. package/lib/typescript/projenrc.js +10 -10
  262. package/lib/typescript/typescript-typedoc.d.ts +1 -1
  263. package/lib/typescript/typescript-typedoc.js +4 -4
  264. package/lib/typescript/typescript.d.ts +9 -3
  265. package/lib/typescript/typescript.js +107 -94
  266. package/lib/util/semver.js +33 -33
  267. package/lib/util/synth.d.ts +1 -1
  268. package/lib/util/synth.js +15 -12
  269. package/lib/util.js +39 -32
  270. package/lib/version.d.ts +3 -3
  271. package/lib/version.js +12 -12
  272. package/lib/vscode/devcontainer.d.ts +4 -4
  273. package/lib/vscode/devcontainer.js +13 -8
  274. package/lib/vscode/index.d.ts +3 -3
  275. package/lib/vscode/index.js +1 -1
  276. package/lib/vscode/launch-config.d.ts +2 -2
  277. package/lib/vscode/launch-config.js +4 -4
  278. package/lib/vscode/vscode.d.ts +3 -3
  279. package/lib/vscode/vscode.js +2 -2
  280. package/lib/web/index.d.ts +4 -4
  281. package/lib/web/index.js +1 -1
  282. package/lib/web/next.d.ts +3 -3
  283. package/lib/web/next.js +241 -237
  284. package/lib/web/postcss.d.ts +3 -3
  285. package/lib/web/postcss.js +9 -6
  286. package/lib/web/react.d.ts +4 -4
  287. package/lib/web/react.js +172 -177
  288. package/lib/web/tailwind.d.ts +2 -2
  289. package/lib/web/tailwind.js +3 -3
  290. package/lib/xmlfile.d.ts +3 -3
  291. package/lib/xmlfile.js +5 -5
  292. package/lib/yaml.d.ts +3 -3
  293. package/lib/yaml.js +4 -4
  294. package/package.json +8 -5
  295. package/releasetag.txt +1 -1
  296. package/version.txt +1 -1
@@ -24,43 +24,49 @@ class Cdk8sTypeScriptApp extends typescript_1.TypeScriptAppProject {
24
24
  sampleCode: false,
25
25
  });
26
26
  if (!options.cdk8sVersion) {
27
- throw new Error('Required field cdk8sVersion is not specified.');
27
+ throw new Error("Required field cdk8sVersion is not specified.");
28
28
  }
29
29
  // encode a hidden assumption further down the chain
30
- if (this.srcdir !== 'src') {
30
+ if (this.srcdir !== "src") {
31
31
  throw new Error('sources are expected under the "src" directory');
32
32
  }
33
33
  // encode a hidden assumption further down the chain
34
- if (this.testdir !== 'test') {
34
+ if (this.testdir !== "test") {
35
35
  throw new Error('test sources are expected under the "test" directory');
36
36
  }
37
- this.appEntrypoint = (_b = options.appEntrypoint) !== null && _b !== void 0 ? _b : 'main.ts';
38
- this.cdk8sVersion = options.cdk8sVersionPinning ? options.cdk8sVersion : `^${options.cdk8sVersion}`;
37
+ this.appEntrypoint = (_b = options.appEntrypoint) !== null && _b !== void 0 ? _b : "main.ts";
38
+ this.cdk8sVersion = options.cdk8sVersionPinning
39
+ ? options.cdk8sVersion
40
+ : `^${options.cdk8sVersion}`;
39
41
  if (options.constructsVersion) {
40
- this.constructsVersion = options.constructsVersionPinning ? options.constructsVersion : `^${options.constructsVersion}`;
42
+ this.constructsVersion = options.constructsVersionPinning
43
+ ? options.constructsVersion
44
+ : `^${options.constructsVersion}`;
41
45
  }
42
46
  else {
43
- this.constructsVersion = '^3.2.34';
47
+ this.constructsVersion = "^3.2.34";
44
48
  }
45
49
  if (!!options.cdk8sCliVersion) {
46
- this.cdk8sCliVersion = options.cdk8sCliVersionPinning ? options.cdk8sCliVersion : `^${options.cdk8sCliVersion}`;
50
+ this.cdk8sCliVersion = options.cdk8sCliVersionPinning
51
+ ? options.cdk8sCliVersion
52
+ : `^${options.cdk8sCliVersion}`;
47
53
  }
48
54
  else {
49
55
  this.cdk8sCliVersion = this.cdk8sVersion;
50
56
  }
51
57
  // CLI
52
58
  this.addDeps(`cdk8s@${this.cdk8sVersion}`, `constructs@${this.constructsVersion}`);
53
- this.addDevDeps('ts-node@^9', `cdk8s-cli@${this.cdk8sCliVersion}`, `cdk8s@${this.cdk8sVersion}`, `constructs@${this.constructsVersion}`);
54
- const synth = this.addTask('synth', {
59
+ this.addDevDeps("ts-node@^9", `cdk8s-cli@${this.cdk8sCliVersion}`, `cdk8s@${this.cdk8sVersion}`, `constructs@${this.constructsVersion}`);
60
+ const synth = this.addTask("synth", {
55
61
  description: 'Synthesizes your cdk8s app into dist (part of "yarn build")',
56
- exec: 'cdk8s synth',
62
+ exec: "cdk8s synth",
57
63
  });
58
- this.addTask('import', {
59
- description: 'Imports API objects to your app by generating constructs.',
60
- exec: 'cdk8s import',
64
+ this.addTask("import", {
65
+ description: "Imports API objects to your app by generating constructs.",
66
+ exec: "cdk8s import",
61
67
  });
62
- this.gitignore.include('imports/');
63
- this.gitignore.include('cdk8s.yaml');
68
+ this.gitignore.include("imports/");
69
+ this.gitignore.include("cdk8s.yaml");
64
70
  // add synth to the build
65
71
  this.postCompileTask.spawn(synth);
66
72
  if ((_c = options.sampleCode) !== null && _c !== void 0 ? _c : true) {
@@ -70,7 +76,7 @@ class Cdk8sTypeScriptApp extends typescript_1.TypeScriptAppProject {
70
76
  }
71
77
  exports.Cdk8sTypeScriptApp = Cdk8sTypeScriptApp;
72
78
  _a = JSII_RTTI_SYMBOL_1;
73
- Cdk8sTypeScriptApp[_a] = { fqn: "projen.cdk8s.Cdk8sTypeScriptApp", version: "0.49.0" };
79
+ Cdk8sTypeScriptApp[_a] = { fqn: "projen.cdk8s.Cdk8sTypeScriptApp", version: "0.50.1" };
74
80
  class SampleCode extends component_1.Component {
75
81
  constructor(project) {
76
82
  super(project);
@@ -79,7 +85,8 @@ class SampleCode extends component_1.Component {
79
85
  synthesize() {
80
86
  const outdir = this.project.outdir;
81
87
  const srcdir = path.join(outdir, this.appProject.srcdir);
82
- if (fs.pathExistsSync(srcdir) && fs.readdirSync(srcdir).filter(x => x.endsWith('.ts'))) {
88
+ if (fs.pathExistsSync(srcdir) &&
89
+ fs.readdirSync(srcdir).filter((x) => x.endsWith(".ts"))) {
83
90
  return;
84
91
  }
85
92
  const srcCode = `import { Construct } from 'constructs';
@@ -122,13 +129,13 @@ new MyChart(app, 'hello');
122
129
  app.synth();`;
123
130
  fs.mkdirpSync(srcdir);
124
131
  fs.writeFileSync(path.join(srcdir, this.appProject.appEntrypoint), srcCode);
125
- const appEntrypointName = path.basename(this.appProject.appEntrypoint, '.ts');
132
+ const appEntrypointName = path.basename(this.appProject.appEntrypoint, ".ts");
126
133
  const cdk8sYaml = `language: typescript
127
134
  app: node lib/${appEntrypointName}.js
128
135
  imports:
129
136
  - k8s
130
137
  `;
131
- fs.writeFileSync(path.join(outdir, 'cdk8s.yaml'), cdk8sYaml);
138
+ fs.writeFileSync(path.join(outdir, "cdk8s.yaml"), cdk8sYaml);
132
139
  }
133
140
  }
134
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RrOHMtYXBwLXRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NkazhzL2NkazhzLWFwcC10cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUNBLDZCQUE2QjtBQUM3QiwrQkFBK0I7QUFDL0IsNENBQXlDO0FBQ3pDLDhDQUErRTs7Ozs7OztBQWlDL0UsTUFBYSxrQkFBbUIsU0FBUSxpQ0FBb0I7Ozs7SUFlMUQsWUFBWSxPQUFrQzs7UUFDNUMsS0FBSyxDQUFDO1lBQ0osR0FBRyxPQUFPO1lBQ1YsVUFBVSxFQUFFLEtBQUs7U0FDbEIsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUU7WUFDekIsTUFBTSxJQUFJLEtBQUssQ0FBQywrQ0FBK0MsQ0FBQyxDQUFDO1NBQ2xFO1FBRUQsb0RBQW9EO1FBQ3BELElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxLQUFLLEVBQUU7WUFDekIsTUFBTSxJQUFJLEtBQUssQ0FBQyxnREFBZ0QsQ0FBQyxDQUFDO1NBQ25FO1FBRUQsb0RBQW9EO1FBQ3BELElBQUksSUFBSSxDQUFDLE9BQU8sS0FBSyxNQUFNLEVBQUU7WUFDM0IsTUFBTSxJQUFJLEtBQUssQ0FBQyxzREFBc0QsQ0FBQyxDQUFDO1NBQ3pFO1FBRUQsSUFBSSxDQUFDLGFBQWEsU0FBRyxPQUFPLENBQUMsYUFBYSxtQ0FBSSxTQUFTLENBQUM7UUFFeEQsSUFBSSxDQUFDLFlBQVksR0FBRyxPQUFPLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLElBQUksT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBRXBHLElBQUksT0FBTyxDQUFDLGlCQUFpQixFQUFFO1lBQzdCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxPQUFPLENBQUMsd0JBQXdCLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQSxDQUFDLENBQUMsSUFBSSxPQUFP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RixFQUFFLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLFlBQVksQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBRS9ELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIlxuaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCAqIGFzIGZzIGZyb20gJ2ZzLWV4dHJhJztcbmltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudCc7XG5pbXBvcnQgeyBUeXBlU2NyaXB0QXBwUHJvamVjdCwgVHlwZVNjcmlwdFByb2plY3RPcHRpb25zIH0gZnJvbSAnLi4vdHlwZXNjcmlwdCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2RrOHNUeXBlU2NyaXB0QXBwT3B0aW9ucyBleHRlbmRzIFR5cGVTY3JpcHRQcm9qZWN0T3B0aW9ucyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGNkazhzVmVyc2lvbjogc3RyaW5nO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXG4gIHJlYWRvbmx5IGNvbnN0cnVjdHNWZXJzaW9uPzogc3RyaW5nO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXG4gIHJlYWRvbmx5IGNkazhzQ2xpVmVyc2lvbj86IHN0cmluZztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgY2RrOHNWZXJzaW9uUGlubmluZz86IGJvb2xlYW47XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBjZGs4c0NsaVZlcnNpb25QaW5uaW5nPzogYm9vbGVhbjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBjZGs4c1BsdXNWZXJzaW9uUGlubmluZz86IGJvb2xlYW47XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGNvbnN0cnVjdHNWZXJzaW9uUGlubmluZz86IGJvb2xlYW47XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGFwcEVudHJ5cG9pbnQ/OiBzdHJpbmc7XG5cbn1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblxuZXhwb3J0IGNsYXNzIENkazhzVHlwZVNjcmlwdEFwcCBleHRlbmRzIFR5cGVTY3JpcHRBcHBQcm9qZWN0IHtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcHVibGljIHJlYWRvbmx5IGNkazhzVmVyc2lvbjogc3RyaW5nO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHB1YmxpYyByZWFkb25seSBjb25zdHJ1Y3RzVmVyc2lvbjogc3RyaW5nO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblxuICBwdWJsaWMgcmVhZG9ubHkgY2RrOHNDbGlWZXJzaW9uOiBzdHJpbmc7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHB1YmxpYyByZWFkb25seSBhcHBFbnRyeXBvaW50OiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3Iob3B0aW9uczogQ2RrOHNUeXBlU2NyaXB0QXBwT3B0aW9ucykge1xuICAgIHN1cGVyKHtcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICBzYW1wbGVDb2RlOiBmYWxzZSxcbiAgICB9KTtcblxuICAgIGlmICghb3B0aW9ucy5jZGs4c1ZlcnNpb24pIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignUmVxdWlyZWQgZmllbGQgY2RrOHNWZXJzaW9uIGlzIG5vdCBzcGVjaWZpZWQuJyk7XG4gICAgfVxuXG4gICAgLy8gZW5jb2RlIGEgaGlkZGVuIGFzc3VtcHRpb24gZnVydGhlciBkb3duIHRoZSBjaGFpblxuICAgIGlmICh0aGlzLnNyY2RpciAhPT0gJ3NyYycpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignc291cmNlcyBhcmUgZXhwZWN0ZWQgdW5kZXIgdGhlIFwic3JjXCIgZGlyZWN0b3J5Jyk7XG4gICAgfVxuXG4gICAgLy8gZW5jb2RlIGEgaGlkZGVuIGFzc3VtcHRpb24gZnVydGhlciBkb3duIHRoZSBjaGFpblxuICAgIGlmICh0aGlzLnRlc3RkaXIgIT09ICd0ZXN0Jykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCd0ZXN0IHNvdXJjZXMgYXJlIGV4cGVjdGVkIHVuZGVyIHRoZSBcInRlc3RcIiBkaXJlY3RvcnknKTtcbiAgICB9XG5cbiAgICB0aGlzLmFwcEVudHJ5cG9pbnQgPSBvcHRpb25zLmFwcEVudHJ5cG9pbnQgPz8gJ21haW4udHMnO1xuXG4gICAgdGhpcy5jZGs4c1ZlcnNpb24gPSBvcHRpb25zLmNkazhzVmVyc2lvblBpbm5pbmcgPyBvcHRpb25zLmNkazhzVmVyc2lvbiA6IGBeJHtvcHRpb25zLmNkazhzVmVyc2lvbn1gO1xuXG4gICAgaWYgKG9wdGlvbnMuY29uc3RydWN0c1ZlcnNpb24pIHtcbiAgICAgIHRoaXMuY29uc3RydWN0c1ZlcnNpb24gPSBvcHRpb25zLmNvbnN0cnVjdHNWZXJzaW9uUGlubmluZyA/IG9wdGlvbnMuY29uc3RydWN0c1ZlcnNpb246IGBeJHtvcHRpb25zLmNvbnN0cnVjdHNWZXJzaW9ufWA7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY29uc3RydWN0c1ZlcnNpb24gPSAnXjMuMi4zNCc7XG4gICAgfVxuXG4gICAgaWYgKCEhIG9wdGlvbnMuY2RrOHNDbGlWZXJzaW9uKSB7XG4gICAgICB0aGlzLmNkazhzQ2xpVmVyc2lvbiA9IG9wdGlvbnMuY2RrOHNDbGlWZXJzaW9uUGlubmluZyA/IG9wdGlvbnMuY2RrOHNDbGlWZXJzaW9uOiBgXiR7b3B0aW9ucy5jZGs4c0NsaVZlcnNpb259YDtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5jZGs4c0NsaVZlcnNpb24gPSB0aGlzLmNkazhzVmVyc2lvbjtcbiAgICB9XG5cblxuICAgIC8vIENMSVxuICAgIHRoaXMuYWRkRGVwcyhcbiAgICAgIGBjZGs4c0Ake3RoaXMuY2RrOHNWZXJzaW9ufWAsXG4gICAgICBgY29uc3RydWN0c0Ake3RoaXMuY29uc3RydWN0c1ZlcnNpb259YCxcbiAgICApO1xuICAgIHRoaXMuYWRkRGV2RGVwcyhcbiAgICAgICd0cy1ub2RlQF45JyxcbiAgICAgIGBjZGs4cy1jbGlAJHt0aGlzLmNkazhzQ2xpVmVyc2lvbn1gLFxuICAgICAgYGNkazhzQCR7dGhpcy5jZGs4c1ZlcnNpb259YCxcbiAgICAgIGBjb25zdHJ1Y3RzQCR7dGhpcy5jb25zdHJ1Y3RzVmVyc2lvbn1gLFxuICAgICk7XG5cbiAgICBjb25zdCBzeW50aCA9IHRoaXMuYWRkVGFzaygnc3ludGgnLCB7XG4gICAgICBkZXNjcmlwdGlvbjogJ1N5bnRoZXNpemVzIHlvdXIgY2RrOHMgYXBwIGludG8gZGlzdCAocGFydCBvZiBcInlhcm4gYnVpbGRcIiknLFxuICAgICAgZXhlYzogJ2NkazhzIHN5bnRoJyxcbiAgICB9KTtcblxuICAgIHRoaXMuYWRkVGFzaygnaW1wb3J0Jywge1xuICAgICAgZGVzY3JpcHRpb246ICdJbXBvcnRzIEFQSSBvYmplY3RzIHRvIHlvdXIgYXBwIGJ5IGdlbmVyYXRpbmcgY29uc3RydWN0cy4nLFxuICAgICAgZXhlYzogJ2NkazhzIGltcG9ydCcsXG4gICAgfSk7XG5cbiAgICB0aGlzLmdpdGlnbm9yZS5pbmNsdWRlKCdpbXBvcnRzLycpO1xuICAgIHRoaXMuZ2l0aWdub3JlLmluY2x1ZGUoJ2NkazhzLnlhbWwnKTtcblxuICAgIC8vIGFkZCBzeW50aCB0byB0aGUgYnVpbGRcbiAgICB0aGlzLnBvc3RDb21waWxlVGFzay5zcGF3bihzeW50aCk7XG5cbiAgICBpZiAob3B0aW9ucy5zYW1wbGVDb2RlID8/IHRydWUpIHtcbiAgICAgIG5ldyBTYW1wbGVDb2RlKHRoaXMpO1xuICAgIH1cbiAgfVxuXG59XG5cbmNsYXNzIFNhbXBsZUNvZGUgZXh0ZW5kcyBDb21wb25lbnQge1xuICBwcml2YXRlIHJlYWRvbmx5IGFwcFByb2plY3Q6IENkazhzVHlwZVNjcmlwdEFwcDtcbiAgY29uc3RydWN0b3IocHJvamVjdDogQ2RrOHNUeXBlU2NyaXB0QXBwKSB7XG4gICAgc3VwZXIocHJvamVjdCk7XG4gICAgdGhpcy5hcHBQcm9qZWN0ID0gcHJvamVjdDtcbiAgfVxuXG4gIHB1YmxpYyBzeW50aGVzaXplKCkge1xuICAgIGNvbnN0IG91dGRpciA9IHRoaXMucHJvamVjdC5vdXRkaXI7XG4gICAgY29uc3Qgc3JjZGlyID0gcGF0aC5qb2luKG91dGRpciwgdGhpcy5hcHBQcm9qZWN0LnNyY2Rpcik7XG4gICAgaWYgKGZzLnBhdGhFeGlzdHNTeW5jKHNyY2RpcikgJiYgZnMucmVhZGRpclN5bmMoc3JjZGlyKS5maWx0ZXIoeCA9PiB4LmVuZHNXaXRoKCcudHMnKSkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBzcmNDb2RlID0gYGltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgQXBwLCBDaGFydCwgQ2hhcnRQcm9wcywgQXBpT2JqZWN0IH0gZnJvbSAnY2RrOHMnO1xuXG5leHBvcnQgY2xhc3MgTXlDaGFydCBleHRlbmRzIENoYXJ0IHtcbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IENoYXJ0UHJvcHMgPSB7IH0pIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHByb3BzKTtcblxuICAgIGNvbnN0IGxhYmVsID0geyBhcHA6ICdoZWxsby1rOHMnIH07XG5cblxuXG4gICAgbmV3IEFwaU9iamVjdCh0aGlzLCAnZGVwbG95bWVudCcsIHtcbiAgICAgIGFwaVZlcnNpb246IFwidjFcIixcbiAgICAgIGtpbmQ6IFwiUG9kXCIsXG4gICAgICBtZXRhZGF0YToge1xuICAgICAgICAgIG5hbWVzcGFjZTogXCJmcm9udGVuZFwiLFxuICAgICAgICAgIG5hbWU6IFwibmdpbnhcIixcbiAgICAgICAgICBsYWJlbHM6IGxhYmVsLFxuICAgICAgfSxcbiAgICAgIHNwZWM6IHtcbiAgICAgICAgICBjb250YWluZXJzOiBbe1xuICAgICAgICAgICAgICBuYW1lOiBcIm5naW54XCIsXG4gICAgICAgICAgICAgIGltYWdlOiBcIm5naW54OjEuMTQtYWxwaW5lXCIsXG4gICAgICAgICAgICAgIHJlc291cmNlczoge1xuICAgICAgICAgICAgICAgICAgbGltaXRzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgbWVtb3J5OiBcIjIwTWlcIixcbiAgICAgICAgICAgICAgICAgICAgICBjcHU6IDAuMixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgfV0sXG4gICAgICB9LFxuICAgIH0pO1xuICB9XG59XG5cbmNvbnN0IGFwcCA9IG5ldyBBcHAoKTtcbm5ldyBNeUNoYXJ0KGFwcCwgJ2hlbGxvJyk7XG5hcHAuc3ludGgoKTtgO1xuXG4gICAgZnMubWtkaXJwU3luYyhzcmNkaXIpO1xuICAgIGZzLndyaXRlRmlsZVN5bmMocGF0aC5qb2luKHNyY2RpciwgdGhpcy5hcHBQcm9qZWN0LmFwcEVudHJ5cG9pbnQpLCBzcmNDb2RlKTtcblxuICAgIGNvbnN0IGFwcEVudHJ5cG9pbnROYW1lID0gcGF0aC5iYXNlbmFtZSh0aGlzLmFwcFByb2plY3QuYXBwRW50cnlwb2ludCwgJy50cycpO1xuXG4gICAgY29uc3QgY2RrOHNZYW1sID0gYGxhbmd1YWdlOiB0eXBlc2NyaXB0XG5hcHA6IG5vZGUgbGliLyR7YXBwRW50cnlwb2ludE5hbWV9LmpzXG5pbXBvcnRzOlxuICAtIGs4c1xuICAgIGA7XG5cbiAgICBmcy53cml0ZUZpbGVTeW5jKHBhdGguam9pbihvdXRkaXIsICdjZGs4cy55YW1sJyksIGNkazhzWWFtbCk7XG5cbiAgfVxufSJdfQ==
141
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RrOHMtYXBwLXRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NkazhzL2NkazhzLWFwcC10cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDZCQUE2QjtBQUM3QiwrQkFBK0I7QUFDL0IsNENBQXlDO0FBQ3pDLDhDQUErRTs7Ozs7OztBQWdDL0UsTUFBYSxrQkFBbUIsU0FBUSxpQ0FBb0I7Ozs7SUFjMUQsWUFBWSxPQUFrQzs7UUFDNUMsS0FBSyxDQUFDO1lBQ0osR0FBRyxPQUFPO1lBQ1YsVUFBVSxFQUFFLEtBQUs7U0FDbEIsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUU7WUFDekIsTUFBTSxJQUFJLEtBQUssQ0FBQywrQ0FBK0MsQ0FBQyxDQUFDO1NBQ2xFO1FBRUQsb0RBQW9EO1FBQ3BELElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxLQUFLLEVBQUU7WUFDekIsTUFBTSxJQUFJLEtBQUssQ0FBQyxnREFBZ0QsQ0FBQyxDQUFDO1NBQ25FO1FBRUQsb0RBQW9EO1FBQ3BELElBQUksSUFBSSxDQUFDLE9BQU8sS0FBSyxNQUFNLEVBQUU7WUFDM0IsTUFBTSxJQUFJLEtBQUssQ0FBQyxzREFBc0QsQ0FBQyxDQUFDO1NBQ3pFO1FBRUQsSUFBSSxDQUFDLGFBQWEsU0FBRyxPQUFPLENBQUMsYUFBYSxtQ0FBSSxTQUFTLENBQUM7UUFFeEQsSUFBSSxDQUFDLFlBQVksR0FBRyxPQUFPLENBQUMsbUJBQW1CO1lBQzdDLENBQUMsQ0FBQyxPQUFPLENBQUMsWUFBWTtZQUN0QixDQUFDLENBQUMsSUFBSSxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUM7UUFFL0IsSUFBSSxPQUFPLENBQUMsaUJBQWlCLEVBQUU7WUFDN0IsSUFBSSxDQUFDLGlCQUFpQixHQUFHLE9BQU8sQ0FBQyx3QkFBd0I7Z0JBQ3ZELENBQUMsQ0FBQyxPQUFPLENBQUMsaUJBQWlCO2dCQUMzQixDQUFDLENBQUMsSUFBSSxPQUFPLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztTQUNyQzthQUFNO1lBQ0wsSUFBSSxDQUFDLGlCQUFpQixHQUFHLFNBQVMsQ0FBQztTQUNwQztRQUVELElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxlQUFlLEVBQUU7WUFDN0IsSUFBSSxDQUFDLGVBQWUsR0FBRyxPQUFPLENBQUMsc0JBQXNCO2dCQUNuRCxDQUFDLENBQUMsT0FBTyxDQUFDLGVBQWU7Z0JBQ3pCLENBQUMsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxlQUFlLEVBQUUsQ0FBQztTQUNuQzthQUFNO1lBQ0wsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDO1NBQzFDO1FBRUQsTUFBTTtRQUNOLElBQUksQ0FBQyxPQUFPLENBQ1YsU0FBUyxJQUFJLENBQUMsWUFBWSxFQUFFLEVBQzVCLGNBQWMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQ3ZDLENBQUM7UUFDRixJQUFJLENBQUMsVUFBVSxDQUNiLFlBQVksRUFDWixhQUFhLElBQUksQ0FBQyxlQUFlLEVBQUUsRUFDbkMsU0FBUyxJQUFJLENBQUMsWUFBWSxFQUFFLEVBQzVCLGNBQWMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQ3ZDLENBQUM7UUFFRixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRTtZQUNsQyxXQUFXLEVBQ1QsNkRBQTZEO1lBQy9ELElBQUksRUFBRSxhQUFhO1NBQ3BCLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFO1lBQ3JCLFdBQVcsRUFBRSwyREFBMkQ7WUFDeEUsSUFBSSxFQUFFLGNBQWM7U0FDckIsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDbkMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUM7UUFFckMseUJBQXlCO1FBQ3pCLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRWxDLFVBQUksT0FBTyxDQUFDLFVBQVUsbUNBQUksSUFBSSxFQUFFO1lBQzlCLElBQUksVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ3RCO0lBQ0gsQ0FBQzs7QUF4RkgsZ0RBeUZDOzs7QUFFRCxNQUFNLFVBQVcsU0FBUSxxQkFBUztJQUVoQyxZQUFZLE9BQTJCO1FBQ3JDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNmLElBQUksQ0FBQyxVQUFVLEdBQUcsT0FBTyxDQUFDO0lBQzVCLENBQUM7SUFFTSxVQUFVO1FBQ2YsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7UUFDbkMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN6RCxJQUNFLEVBQUUsQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDO1lBQ3pCLEVBQUUsQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQ3ZEO1lBQ0EsT0FBTztTQUNSO1FBRUQsTUFBTSxPQUFPLEdBQUc7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7YUFxQ1AsQ0FBQztRQUVWLEVBQUUsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDdEIsRUFBRSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBRTVFLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FDckMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQzdCLEtBQUssQ0FDTixDQUFDO1FBRUYsTUFBTSxTQUFTLEdBQUc7Z0JBQ04saUJBQWlCOzs7S0FHNUIsQ0FBQztRQUVGLEVBQUUsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsWUFBWSxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDL0QsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgcGF0aCBmcm9tIFwicGF0aFwiO1xuaW1wb3J0ICogYXMgZnMgZnJvbSBcImZzLWV4dHJhXCI7XG5pbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tIFwiLi4vY29tcG9uZW50XCI7XG5pbXBvcnQgeyBUeXBlU2NyaXB0QXBwUHJvamVjdCwgVHlwZVNjcmlwdFByb2plY3RPcHRpb25zIH0gZnJvbSBcIi4uL3R5cGVzY3JpcHRcIjtcblxuZXhwb3J0IGludGVyZmFjZSBDZGs4c1R5cGVTY3JpcHRBcHBPcHRpb25zIGV4dGVuZHMgVHlwZVNjcmlwdFByb2plY3RPcHRpb25zIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgY2RrOHNWZXJzaW9uOiBzdHJpbmc7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cbiAgcmVhZG9ubHkgY29uc3RydWN0c1ZlcnNpb24/OiBzdHJpbmc7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cbiAgcmVhZG9ubHkgY2RrOHNDbGlWZXJzaW9uPzogc3RyaW5nO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBjZGs4c1ZlcnNpb25QaW5uaW5nPzogYm9vbGVhbjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGNkazhzQ2xpVmVyc2lvblBpbm5pbmc/OiBib29sZWFuO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGNkazhzUGx1c1ZlcnNpb25QaW5uaW5nPzogYm9vbGVhbjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgY29uc3RydWN0c1ZlcnNpb25QaW5uaW5nPzogYm9vbGVhbjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgYXBwRW50cnlwb2ludD86IHN0cmluZztcbn1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblxuZXhwb3J0IGNsYXNzIENkazhzVHlwZVNjcmlwdEFwcCBleHRlbmRzIFR5cGVTY3JpcHRBcHBQcm9qZWN0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHB1YmxpYyByZWFkb25seSBjZGs4c1ZlcnNpb246IHN0cmluZztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICBwdWJsaWMgcmVhZG9ubHkgY29uc3RydWN0c1ZlcnNpb246IHN0cmluZztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cbiAgcHVibGljIHJlYWRvbmx5IGNkazhzQ2xpVmVyc2lvbjogc3RyaW5nO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICBwdWJsaWMgcmVhZG9ubHkgYXBwRW50cnlwb2ludDogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKG9wdGlvbnM6IENkazhzVHlwZVNjcmlwdEFwcE9wdGlvbnMpIHtcbiAgICBzdXBlcih7XG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgc2FtcGxlQ29kZTogZmFsc2UsXG4gICAgfSk7XG5cbiAgICBpZiAoIW9wdGlvbnMuY2RrOHNWZXJzaW9uKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJSZXF1aXJlZCBmaWVsZCBjZGs4c1ZlcnNpb24gaXMgbm90IHNwZWNpZmllZC5cIik7XG4gICAgfVxuXG4gICAgLy8gZW5jb2RlIGEgaGlkZGVuIGFzc3VtcHRpb24gZnVydGhlciBkb3duIHRoZSBjaGFpblxuICAgIGlmICh0aGlzLnNyY2RpciAhPT0gXCJzcmNcIikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdzb3VyY2VzIGFyZSBleHBlY3RlZCB1bmRlciB0aGUgXCJzcmNcIiBkaXJlY3RvcnknKTtcbiAgICB9XG5cbiAgICAvLyBlbmNvZGUgYSBoaWRkZW4gYXNzdW1wdGlvbiBmdXJ0aGVyIGRvd24gdGhlIGNoYWluXG4gICAgaWYgKHRoaXMudGVzdGRpciAhPT0gXCJ0ZXN0XCIpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcigndGVzdCBzb3VyY2VzIGFyZSBleHBlY3RlZCB1bmRlciB0aGUgXCJ0ZXN0XCIgZGlyZWN0b3J5Jyk7XG4gICAgfVxuXG4gICAgdGhpcy5hcHBFbnRyeXBvaW50ID0gb3B0aW9ucy5hcHBFbnRyeXBvaW50ID8/IFwibWFpbi50c1wiO1xuXG4gICAgdGhpcy5jZGs4c1ZlcnNpb24gPSBvcHRpb25zLmNkazhzVmVyc2lvblBpbm5pbmdcbiAgICAgID8gb3B0aW9ucy5jZGs4c1ZlcnNpb25cbiAgICAgIDogYF4ke29wdGlvbnMuY2RrOHNWZXJzaW9ufWA7XG5cbiAgICBpZiAob3B0aW9ucy5jb25zdHJ1Y3RzVmVyc2lvbikge1xuICAgICAgdGhpcy5jb25zdHJ1Y3RzVmVyc2lvbiA9IG9wdGlvbnMuY29uc3RydWN0c1ZlcnNpb25QaW5uaW5nXG4gICAgICAgID8gb3B0aW9ucy5jb25zdHJ1Y3RzVmVyc2lvblxuICAgICAgICA6IGBeJHtvcHRpb25zLmNvbnN0cnVjdHNWZXJzaW9ufWA7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY29uc3RydWN0c1ZlcnNpb24gPSBcIl4zLjIuMzRcIjtcbiAgICB9XG5cbiAgICBpZiAoISFvcHRpb25zLmNkazhzQ2xpVmVyc2lvbikge1xuICAgICAgdGhpcy5jZGs4c0NsaVZlcnNpb24gPSBvcHRpb25zLmNkazhzQ2xpVmVyc2lvblBpbm5pbmdcbiAgICAgICAgPyBvcHRpb25zLmNkazhzQ2xpVmVyc2lvblxuICAgICAgICA6IGBeJHtvcHRpb25zLmNkazhzQ2xpVmVyc2lvbn1gO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmNkazhzQ2xpVmVyc2lvbiA9IHRoaXMuY2RrOHNWZXJzaW9uO1xuICAgIH1cblxuICAgIC8vIENMSVxuICAgIHRoaXMuYWRkRGVwcyhcbiAgICAgIGBjZGs4c0Ake3RoaXMuY2RrOHNWZXJzaW9ufWAsXG4gICAgICBgY29uc3RydWN0c0Ake3RoaXMuY29uc3RydWN0c1ZlcnNpb259YFxuICAgICk7XG4gICAgdGhpcy5hZGREZXZEZXBzKFxuICAgICAgXCJ0cy1ub2RlQF45XCIsXG4gICAgICBgY2RrOHMtY2xpQCR7dGhpcy5jZGs4c0NsaVZlcnNpb259YCxcbiAgICAgIGBjZGs4c0Ake3RoaXMuY2RrOHNWZXJzaW9ufWAsXG4gICAgICBgY29uc3RydWN0c0Ake3RoaXMuY29uc3RydWN0c1ZlcnNpb259YFxuICAgICk7XG5cbiAgICBjb25zdCBzeW50aCA9IHRoaXMuYWRkVGFzayhcInN5bnRoXCIsIHtcbiAgICAgIGRlc2NyaXB0aW9uOlxuICAgICAgICAnU3ludGhlc2l6ZXMgeW91ciBjZGs4cyBhcHAgaW50byBkaXN0IChwYXJ0IG9mIFwieWFybiBidWlsZFwiKScsXG4gICAgICBleGVjOiBcImNkazhzIHN5bnRoXCIsXG4gICAgfSk7XG5cbiAgICB0aGlzLmFkZFRhc2soXCJpbXBvcnRcIiwge1xuICAgICAgZGVzY3JpcHRpb246IFwiSW1wb3J0cyBBUEkgb2JqZWN0cyB0byB5b3VyIGFwcCBieSBnZW5lcmF0aW5nIGNvbnN0cnVjdHMuXCIsXG4gICAgICBleGVjOiBcImNkazhzIGltcG9ydFwiLFxuICAgIH0pO1xuXG4gICAgdGhpcy5naXRpZ25vcmUuaW5jbHVkZShcImltcG9ydHMvXCIpO1xuICAgIHRoaXMuZ2l0aWdub3JlLmluY2x1ZGUoXCJjZGs4cy55YW1sXCIpO1xuXG4gICAgLy8gYWRkIHN5bnRoIHRvIHRoZSBidWlsZFxuICAgIHRoaXMucG9zdENvbXBpbGVUYXNrLnNwYXduKHN5bnRoKTtcblxuICAgIGlmIChvcHRpb25zLnNhbXBsZUNvZGUgPz8gdHJ1ZSkge1xuICAgICAgbmV3IFNhbXBsZUNvZGUodGhpcyk7XG4gICAgfVxuICB9XG59XG5cbmNsYXNzIFNhbXBsZUNvZGUgZXh0ZW5kcyBDb21wb25lbnQge1xuICBwcml2YXRlIHJlYWRvbmx5IGFwcFByb2plY3Q6IENkazhzVHlwZVNjcmlwdEFwcDtcbiAgY29uc3RydWN0b3IocHJvamVjdDogQ2RrOHNUeXBlU2NyaXB0QXBwKSB7XG4gICAgc3VwZXIocHJvamVjdCk7XG4gICAgdGhpcy5hcHBQcm9qZWN0ID0gcHJvamVjdDtcbiAgfVxuXG4gIHB1YmxpYyBzeW50aGVzaXplKCkge1xuICAgIGNvbnN0IG91dGRpciA9IHRoaXMucHJvamVjdC5vdXRkaXI7XG4gICAgY29uc3Qgc3JjZGlyID0gcGF0aC5qb2luKG91dGRpciwgdGhpcy5hcHBQcm9qZWN0LnNyY2Rpcik7XG4gICAgaWYgKFxuICAgICAgZnMucGF0aEV4aXN0c1N5bmMoc3JjZGlyKSAmJlxuICAgICAgZnMucmVhZGRpclN5bmMoc3JjZGlyKS5maWx0ZXIoKHgpID0+IHguZW5kc1dpdGgoXCIudHNcIikpXG4gICAgKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3Qgc3JjQ29kZSA9IGBpbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB7IEFwcCwgQ2hhcnQsIENoYXJ0UHJvcHMsIEFwaU9iamVjdCB9IGZyb20gJ2NkazhzJztcblxuZXhwb3J0IGNsYXNzIE15Q2hhcnQgZXh0ZW5kcyBDaGFydCB7XG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBDaGFydFByb3BzID0geyB9KSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCBwcm9wcyk7XG5cbiAgICBjb25zdCBsYWJlbCA9IHsgYXBwOiAnaGVsbG8tazhzJyB9O1xuXG5cblxuICAgIG5ldyBBcGlPYmplY3QodGhpcywgJ2RlcGxveW1lbnQnLCB7XG4gICAgICBhcGlWZXJzaW9uOiBcInYxXCIsXG4gICAgICBraW5kOiBcIlBvZFwiLFxuICAgICAgbWV0YWRhdGE6IHtcbiAgICAgICAgICBuYW1lc3BhY2U6IFwiZnJvbnRlbmRcIixcbiAgICAgICAgICBuYW1lOiBcIm5naW54XCIsXG4gICAgICAgICAgbGFiZWxzOiBsYWJlbCxcbiAgICAgIH0sXG4gICAgICBzcGVjOiB7XG4gICAgICAgICAgY29udGFpbmVyczogW3tcbiAgICAgICAgICAgICAgbmFtZTogXCJuZ2lueFwiLFxuICAgICAgICAgICAgICBpbWFnZTogXCJuZ2lueDoxLjE0LWFscGluZVwiLFxuICAgICAgICAgICAgICByZXNvdXJjZXM6IHtcbiAgICAgICAgICAgICAgICAgIGxpbWl0czoge1xuICAgICAgICAgICAgICAgICAgICAgIG1lbW9yeTogXCIyME1pXCIsXG4gICAgICAgICAgICAgICAgICAgICAgY3B1OiAwLjIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgIH1dLFxuICAgICAgfSxcbiAgICB9KTtcbiAgfVxufVxuXG5jb25zdCBhcHAgPSBuZXcgQXBwKCk7XG5uZXcgTXlDaGFydChhcHAsICdoZWxsbycpO1xuYXBwLnN5bnRoKCk7YDtcblxuICAgIGZzLm1rZGlycFN5bmMoc3JjZGlyKTtcbiAgICBmcy53cml0ZUZpbGVTeW5jKHBhdGguam9pbihzcmNkaXIsIHRoaXMuYXBwUHJvamVjdC5hcHBFbnRyeXBvaW50KSwgc3JjQ29kZSk7XG5cbiAgICBjb25zdCBhcHBFbnRyeXBvaW50TmFtZSA9IHBhdGguYmFzZW5hbWUoXG4gICAgICB0aGlzLmFwcFByb2plY3QuYXBwRW50cnlwb2ludCxcbiAgICAgIFwiLnRzXCJcbiAgICApO1xuXG4gICAgY29uc3QgY2RrOHNZYW1sID0gYGxhbmd1YWdlOiB0eXBlc2NyaXB0XG5hcHA6IG5vZGUgbGliLyR7YXBwRW50cnlwb2ludE5hbWV9LmpzXG5pbXBvcnRzOlxuICAtIGs4c1xuICAgIGA7XG5cbiAgICBmcy53cml0ZUZpbGVTeW5jKHBhdGguam9pbihvdXRkaXIsIFwiY2RrOHMueWFtbFwiKSwgY2RrOHNZYW1sKTtcbiAgfVxufVxuIl19
@@ -1,4 +1,4 @@
1
- import { ConstructLibrary, ConstructLibraryOptions } from '../cdk';
1
+ import { ConstructLibrary, ConstructLibraryOptions } from "../cdk";
2
2
  /**
3
3
  * @experimental
4
4
  */
@@ -21,19 +21,23 @@ class ConstructLibraryCdk8s extends cdk_1.ConstructLibrary {
21
21
  constructor(options) {
22
22
  super(options);
23
23
  if (!options.cdk8sVersion) {
24
- throw new Error('Required field cdk8sVersion is not specified.');
24
+ throw new Error("Required field cdk8sVersion is not specified.");
25
25
  }
26
- this.cdk8sVersion = options.cdk8sVersionPinning ? options.cdk8sVersion : `^${options.cdk8sVersion}`;
26
+ this.cdk8sVersion = options.cdk8sVersionPinning
27
+ ? options.cdk8sVersion
28
+ : `^${options.cdk8sVersion}`;
27
29
  if (options.constructsVersion) {
28
- this.constructsVersion = options.constructsVersionPinning ? options.constructsVersion : `^${options.constructsVersion}`;
30
+ this.constructsVersion = options.constructsVersionPinning
31
+ ? options.constructsVersion
32
+ : `^${options.constructsVersion}`;
29
33
  }
30
34
  else {
31
- this.constructsVersion = '^3.2.34';
35
+ this.constructsVersion = "^3.2.34";
32
36
  }
33
37
  this.addPeerDeps(`constructs@${this.constructsVersion}`, `cdk8s@${this.cdk8sVersion}`);
34
38
  }
35
39
  }
36
40
  exports.ConstructLibraryCdk8s = ConstructLibraryCdk8s;
37
41
  _a = JSII_RTTI_SYMBOL_1;
38
- ConstructLibraryCdk8s[_a] = { fqn: "projen.cdk8s.ConstructLibraryCdk8s", version: "0.49.0" };
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RrOHMtY29uc3RydWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NkazhzL2NkazhzLWNvbnN0cnVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLGdDQUFtRTs7Ozs7Ozs7Ozs7QUFxQm5FLE1BQWEscUJBQXNCLFNBQVEsc0JBQWdCOzs7O0lBT3pELFlBQVksT0FBcUM7UUFDL0MsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRWYsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUU7WUFDekIsTUFBTSxJQUFJLEtBQUssQ0FBQywrQ0FBK0MsQ0FBQyxDQUFDO1NBQ2xFO1FBRUQsSUFBSSxDQUFDLFlBQVksR0FBRyxPQUFPLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLElBQUksT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBRXBHLElBQUksT0FBTyxDQUFDLGlCQUFpQixFQUFFO1lBQzdCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxPQUFPLENBQUMsd0JBQXdCLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQSxDQUFDLENBQUMsSUFBSSxPQUFPLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztTQUN4SDthQUFNO1lBQ0wsSUFBSSxDQUFDLGlCQUFpQixHQUFHLFNBQVMsQ0FBQztTQUNwQztRQUVELElBQUksQ0FBQyxXQUFXLENBQ2QsY0FBYyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsRUFDdEMsU0FBUyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQzdCLENBQUM7SUFDSixDQUFDOztBQTFCSCxzREEyQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb25zdHJ1Y3RMaWJyYXJ5LCBDb25zdHJ1Y3RMaWJyYXJ5T3B0aW9ucyB9IGZyb20gJy4uL2Nkayc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uc3RydWN0TGlicmFyeUNkazhzT3B0aW9ucyBleHRlbmRzIENvbnN0cnVjdExpYnJhcnlPcHRpb25zIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgY2RrOHNWZXJzaW9uOiBzdHJpbmc7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cbiAgcmVhZG9ubHkgY29uc3RydWN0c1ZlcnNpb24/OiBzdHJpbmc7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGNkazhzVmVyc2lvblBpbm5pbmc/OiBib29sZWFuO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBjb25zdHJ1Y3RzVmVyc2lvblBpbm5pbmc/OiBib29sZWFuO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGNkazhzUGx1c1ZlcnNpb25QaW5uaW5nPzogYm9vbGVhbjtcbn1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbmV4cG9ydCBjbGFzcyBDb25zdHJ1Y3RMaWJyYXJ5Q2RrOHMgZXh0ZW5kcyBDb25zdHJ1Y3RMaWJyYXJ5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHB1YmxpYyByZWFkb25seSBjZGs4c1ZlcnNpb246IHN0cmluZztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICBwdWJsaWMgcmVhZG9ubHkgY29uc3RydWN0c1ZlcnNpb246IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBDb25zdHJ1Y3RMaWJyYXJ5Q2RrOHNPcHRpb25zKSB7XG4gICAgc3VwZXIob3B0aW9ucyk7XG5cbiAgICBpZiAoIW9wdGlvbnMuY2RrOHNWZXJzaW9uKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1JlcXVpcmVkIGZpZWxkIGNkazhzVmVyc2lvbiBpcyBub3Qgc3BlY2lmaWVkLicpO1xuICAgIH1cblxuICAgIHRoaXMuY2RrOHNWZXJzaW9uID0gb3B0aW9ucy5jZGs4c1ZlcnNpb25QaW5uaW5nID8gb3B0aW9ucy5jZGs4c1ZlcnNpb24gOiBgXiR7b3B0aW9ucy5jZGs4c1ZlcnNpb259YDtcblxuICAgIGlmIChvcHRpb25zLmNvbnN0cnVjdHNWZXJzaW9uKSB7XG4gICAgICB0aGlzLmNvbnN0cnVjdHNWZXJzaW9uID0gb3B0aW9ucy5jb25zdHJ1Y3RzVmVyc2lvblBpbm5pbmcgPyBvcHRpb25zLmNvbnN0cnVjdHNWZXJzaW9uOiBgXiR7b3B0aW9ucy5jb25zdHJ1Y3RzVmVyc2lvbn1gO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmNvbnN0cnVjdHNWZXJzaW9uID0gJ14zLjIuMzQnO1xuICAgIH1cblxuICAgIHRoaXMuYWRkUGVlckRlcHMoXG4gICAgICBgY29uc3RydWN0c0Ake3RoaXMuY29uc3RydWN0c1ZlcnNpb259YCxcbiAgICAgIGBjZGs4c0Ake3RoaXMuY2RrOHNWZXJzaW9ufWAsXG4gICAgKTtcbiAgfVxufSJdfQ==
42
+ ConstructLibraryCdk8s[_a] = { fqn: "projen.cdk8s.ConstructLibraryCdk8s", version: "0.50.1" };
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RrOHMtY29uc3RydWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NkazhzL2NkazhzLWNvbnN0cnVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLGdDQUFtRTs7Ozs7Ozs7Ozs7QUFxQm5FLE1BQWEscUJBQXNCLFNBQVEsc0JBQWdCOzs7O0lBT3pELFlBQVksT0FBcUM7UUFDL0MsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRWYsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUU7WUFDekIsTUFBTSxJQUFJLEtBQUssQ0FBQywrQ0FBK0MsQ0FBQyxDQUFDO1NBQ2xFO1FBRUQsSUFBSSxDQUFDLFlBQVksR0FBRyxPQUFPLENBQUMsbUJBQW1CO1lBQzdDLENBQUMsQ0FBQyxPQUFPLENBQUMsWUFBWTtZQUN0QixDQUFDLENBQUMsSUFBSSxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUM7UUFFL0IsSUFBSSxPQUFPLENBQUMsaUJBQWlCLEVBQUU7WUFDN0IsSUFBSSxDQUFDLGlCQUFpQixHQUFHLE9BQU8sQ0FBQyx3QkFBd0I7Z0JBQ3ZELENBQUMsQ0FBQyxPQUFPLENBQUMsaUJBQWlCO2dCQUMzQixDQUFDLENBQUMsSUFBSSxPQUFPLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztTQUNyQzthQUFNO1lBQ0wsSUFBSSxDQUFDLGlCQUFpQixHQUFHLFNBQVMsQ0FBQztTQUNwQztRQUVELElBQUksQ0FBQyxXQUFXLENBQ2QsY0FBYyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsRUFDdEMsU0FBUyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQzdCLENBQUM7SUFDSixDQUFDOztBQTlCSCxzREErQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb25zdHJ1Y3RMaWJyYXJ5LCBDb25zdHJ1Y3RMaWJyYXJ5T3B0aW9ucyB9IGZyb20gXCIuLi9jZGtcIjtcblxuZXhwb3J0IGludGVyZmFjZSBDb25zdHJ1Y3RMaWJyYXJ5Q2RrOHNPcHRpb25zIGV4dGVuZHMgQ29uc3RydWN0TGlicmFyeU9wdGlvbnMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBjZGs4c1ZlcnNpb246IHN0cmluZztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblxuICByZWFkb25seSBjb25zdHJ1Y3RzVmVyc2lvbj86IHN0cmluZztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgY2RrOHNWZXJzaW9uUGlubmluZz86IGJvb2xlYW47XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGNvbnN0cnVjdHNWZXJzaW9uUGlubmluZz86IGJvb2xlYW47XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgY2RrOHNQbHVzVmVyc2lvblBpbm5pbmc/OiBib29sZWFuO1xufVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGNsYXNzIENvbnN0cnVjdExpYnJhcnlDZGs4cyBleHRlbmRzIENvbnN0cnVjdExpYnJhcnkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcHVibGljIHJlYWRvbmx5IGNkazhzVmVyc2lvbjogc3RyaW5nO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHB1YmxpYyByZWFkb25seSBjb25zdHJ1Y3RzVmVyc2lvbjogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKG9wdGlvbnM6IENvbnN0cnVjdExpYnJhcnlDZGs4c09wdGlvbnMpIHtcbiAgICBzdXBlcihvcHRpb25zKTtcblxuICAgIGlmICghb3B0aW9ucy5jZGs4c1ZlcnNpb24pIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcIlJlcXVpcmVkIGZpZWxkIGNkazhzVmVyc2lvbiBpcyBub3Qgc3BlY2lmaWVkLlwiKTtcbiAgICB9XG5cbiAgICB0aGlzLmNkazhzVmVyc2lvbiA9IG9wdGlvbnMuY2RrOHNWZXJzaW9uUGlubmluZ1xuICAgICAgPyBvcHRpb25zLmNkazhzVmVyc2lvblxuICAgICAgOiBgXiR7b3B0aW9ucy5jZGs4c1ZlcnNpb259YDtcblxuICAgIGlmIChvcHRpb25zLmNvbnN0cnVjdHNWZXJzaW9uKSB7XG4gICAgICB0aGlzLmNvbnN0cnVjdHNWZXJzaW9uID0gb3B0aW9ucy5jb25zdHJ1Y3RzVmVyc2lvblBpbm5pbmdcbiAgICAgICAgPyBvcHRpb25zLmNvbnN0cnVjdHNWZXJzaW9uXG4gICAgICAgIDogYF4ke29wdGlvbnMuY29uc3RydWN0c1ZlcnNpb259YDtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5jb25zdHJ1Y3RzVmVyc2lvbiA9IFwiXjMuMi4zNFwiO1xuICAgIH1cblxuICAgIHRoaXMuYWRkUGVlckRlcHMoXG4gICAgICBgY29uc3RydWN0c0Ake3RoaXMuY29uc3RydWN0c1ZlcnNpb259YCxcbiAgICAgIGBjZGs4c0Ake3RoaXMuY2RrOHNWZXJzaW9ufWBcbiAgICApO1xuICB9XG59XG4iXX0=
@@ -1,2 +1,2 @@
1
- export * from './cdk8s-app-ts';
2
- export * from './cdk8s-construct';
1
+ export * from "./cdk8s-app-ts";
2
+ export * from "./cdk8s-construct";
@@ -12,4 +12,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
13
  __exportStar(require("./cdk8s-app-ts"), exports);
14
14
  __exportStar(require("./cdk8s-construct"), exports);
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY2RrOHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQUEsaURBQStCO0FBQy9CLG9EQUFrQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY2RrOHMtYXBwLXRzJztcbmV4cG9ydCAqIGZyb20gJy4vY2RrOHMtY29uc3RydWN0JztcbiJdfQ==
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY2RrOHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQUEsaURBQStCO0FBQy9CLG9EQUFrQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL2NkazhzLWFwcC10c1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vY2RrOHMtY29uc3RydWN0XCI7XG4iXX0=
@@ -1,4 +1,4 @@
1
- import { ConstructLibrary, ConstructLibraryOptions } from '../cdk';
1
+ import { ConstructLibrary, ConstructLibraryOptions } from "../cdk";
2
2
  /**
3
3
  * @experimental
4
4
  */
@@ -21,13 +21,13 @@ class ConstructLibraryCdktf extends cdk_1.ConstructLibrary {
21
21
  constructor(options) {
22
22
  super(options);
23
23
  if (!options.cdktfVersion) {
24
- throw new Error('Required field cdktfVersion is not specified.');
24
+ throw new Error("Required field cdktfVersion is not specified.");
25
25
  }
26
26
  const ver = options.cdktfVersion;
27
- this.addPeerDeps('constructs@^10', `cdktf@^${ver}`);
27
+ this.addPeerDeps("constructs@^10", `cdktf@^${ver}`);
28
28
  }
29
29
  }
30
30
  exports.ConstructLibraryCdktf = ConstructLibraryCdktf;
31
31
  _a = JSII_RTTI_SYMBOL_1;
32
- ConstructLibraryCdktf[_a] = { fqn: "projen.cdktf.ConstructLibraryCdktf", version: "0.49.0" };
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RrdGYtY29uc3RydWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Nka3RmL2Nka3RmLWNvbnN0cnVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLGdDQUFtRTs7Ozs7Ozs7Ozs7QUFRbkUsTUFBYSxxQkFBc0IsU0FBUSxzQkFBZ0I7Ozs7SUFDekQsWUFBWSxPQUFxQztRQUMvQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFZixJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRTtZQUN6QixNQUFNLElBQUksS0FBSyxDQUFDLCtDQUErQyxDQUFDLENBQUM7U0FDbEU7UUFFRCxNQUFNLEdBQUcsR0FBRyxPQUFPLENBQUMsWUFBWSxDQUFDO1FBRWpDLElBQUksQ0FBQyxXQUFXLENBQ2QsZ0JBQWdCLEVBQ2hCLFVBQVUsR0FBRyxFQUFFLENBQ2hCLENBQUM7SUFDSixDQUFDOztBQWRILHNEQWVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29uc3RydWN0TGlicmFyeSwgQ29uc3RydWN0TGlicmFyeU9wdGlvbnMgfSBmcm9tICcuLi9jZGsnO1xuXG5leHBvcnQgaW50ZXJmYWNlIENvbnN0cnVjdExpYnJhcnlDZGt0Zk9wdGlvbnMgZXh0ZW5kcyBDb25zdHJ1Y3RMaWJyYXJ5T3B0aW9ucyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgY2RrdGZWZXJzaW9uOiBzdHJpbmc7XG59XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbmV4cG9ydCBjbGFzcyBDb25zdHJ1Y3RMaWJyYXJ5Q2RrdGYgZXh0ZW5kcyBDb25zdHJ1Y3RMaWJyYXJ5IHtcbiAgY29uc3RydWN0b3Iob3B0aW9uczogQ29uc3RydWN0TGlicmFyeUNka3RmT3B0aW9ucykge1xuICAgIHN1cGVyKG9wdGlvbnMpO1xuXG4gICAgaWYgKCFvcHRpb25zLmNka3RmVmVyc2lvbikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdSZXF1aXJlZCBmaWVsZCBjZGt0ZlZlcnNpb24gaXMgbm90IHNwZWNpZmllZC4nKTtcbiAgICB9XG5cbiAgICBjb25zdCB2ZXIgPSBvcHRpb25zLmNka3RmVmVyc2lvbjtcblxuICAgIHRoaXMuYWRkUGVlckRlcHMoXG4gICAgICAnY29uc3RydWN0c0BeMTAnLFxuICAgICAgYGNka3RmQF4ke3Zlcn1gLFxuICAgICk7XG4gIH1cbn0iXX0=
32
+ ConstructLibraryCdktf[_a] = { fqn: "projen.cdktf.ConstructLibraryCdktf", version: "0.50.1" };
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RrdGYtY29uc3RydWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Nka3RmL2Nka3RmLWNvbnN0cnVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLGdDQUFtRTs7Ozs7Ozs7Ozs7QUFRbkUsTUFBYSxxQkFBc0IsU0FBUSxzQkFBZ0I7Ozs7SUFDekQsWUFBWSxPQUFxQztRQUMvQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFZixJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRTtZQUN6QixNQUFNLElBQUksS0FBSyxDQUFDLCtDQUErQyxDQUFDLENBQUM7U0FDbEU7UUFFRCxNQUFNLEdBQUcsR0FBRyxPQUFPLENBQUMsWUFBWSxDQUFDO1FBRWpDLElBQUksQ0FBQyxXQUFXLENBQUMsZ0JBQWdCLEVBQUUsVUFBVSxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBQ3RELENBQUM7O0FBWEgsc0RBWUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb25zdHJ1Y3RMaWJyYXJ5LCBDb25zdHJ1Y3RMaWJyYXJ5T3B0aW9ucyB9IGZyb20gXCIuLi9jZGtcIjtcblxuZXhwb3J0IGludGVyZmFjZSBDb25zdHJ1Y3RMaWJyYXJ5Q2RrdGZPcHRpb25zIGV4dGVuZHMgQ29uc3RydWN0TGlicmFyeU9wdGlvbnMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGNka3RmVmVyc2lvbjogc3RyaW5nO1xufVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5leHBvcnQgY2xhc3MgQ29uc3RydWN0TGlicmFyeUNka3RmIGV4dGVuZHMgQ29uc3RydWN0TGlicmFyeSB7XG4gIGNvbnN0cnVjdG9yKG9wdGlvbnM6IENvbnN0cnVjdExpYnJhcnlDZGt0Zk9wdGlvbnMpIHtcbiAgICBzdXBlcihvcHRpb25zKTtcblxuICAgIGlmICghb3B0aW9ucy5jZGt0ZlZlcnNpb24pIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcIlJlcXVpcmVkIGZpZWxkIGNka3RmVmVyc2lvbiBpcyBub3Qgc3BlY2lmaWVkLlwiKTtcbiAgICB9XG5cbiAgICBjb25zdCB2ZXIgPSBvcHRpb25zLmNka3RmVmVyc2lvbjtcblxuICAgIHRoaXMuYWRkUGVlckRlcHMoXCJjb25zdHJ1Y3RzQF4xMFwiLCBgY2RrdGZAXiR7dmVyfWApO1xuICB9XG59XG4iXX0=
@@ -1 +1 @@
1
- export * from './cdktf-construct';
1
+ export * from "./cdktf-construct";
@@ -11,4 +11,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
11
11
  };
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
13
  __exportStar(require("./cdktf-construct"), exports);
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY2RrdGYvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQUEsb0RBQWtDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jZGt0Zi1jb25zdHJ1Y3QnO1xuIl19
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY2RrdGYvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQUEsb0RBQWtDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSBcIi4vY2RrdGYtY29uc3RydWN0XCI7XG4iXX0=
package/lib/cleanup.js CHANGED
@@ -24,8 +24,13 @@ function findGeneratedFiles(dir, exclude) {
24
24
  if (files.length > 0) {
25
25
  return files;
26
26
  }
27
- const ignore = [...readGitIgnore(dir), 'node_modules/**', ...exclude, '.git/**'];
28
- files = glob.sync('**', {
27
+ const ignore = [
28
+ ...readGitIgnore(dir),
29
+ "node_modules/**",
30
+ ...exclude,
31
+ ".git/**",
32
+ ];
33
+ files = glob.sync("**", {
29
34
  ignore,
30
35
  cwd: dir,
31
36
  dot: true,
@@ -34,7 +39,7 @@ function findGeneratedFiles(dir, exclude) {
34
39
  });
35
40
  const generated = new Array();
36
41
  for (const file of files) {
37
- const contents = fs.readFileSync(file, 'utf-8');
42
+ const contents = fs.readFileSync(file, "utf-8");
38
43
  if (contents.includes(common_1.PROJEN_MARKER)) {
39
44
  generated.push(file);
40
45
  }
@@ -45,7 +50,7 @@ function getFilesFromManifest(dir) {
45
50
  try {
46
51
  const fileManifestPath = path.resolve(dir, exports.FILE_MANIFEST);
47
52
  if (fs_extra_1.existsSync(fileManifestPath)) {
48
- const fileManifest = JSON.parse(fs_extra_1.readFileSync(fileManifestPath, 'utf-8'));
53
+ const fileManifest = JSON.parse(fs_extra_1.readFileSync(fileManifestPath, "utf-8"));
49
54
  if (fileManifest.files) {
50
55
  return fileManifest.files.map((f) => path.resolve(dir, f));
51
56
  }
@@ -57,17 +62,18 @@ function getFilesFromManifest(dir) {
57
62
  return [];
58
63
  }
59
64
  function readGitIgnore(dir) {
60
- const filepath = path.join(dir, '.gitignore');
65
+ const filepath = path.join(dir, ".gitignore");
61
66
  if (!fs.pathExistsSync(filepath)) {
62
67
  return [];
63
68
  }
64
- return fs.readFileSync(filepath, 'utf-8')
65
- .split('\n')
66
- .filter(x => (x === null || x === void 0 ? void 0 : x.trim()) !== '')
67
- .filter(x => !x.startsWith('#') && !x.startsWith('!'))
68
- .map(x => x.replace(/^\//, '')) // remove "/" prefix
69
- .map(x => `${x}\n${x}/**`)
70
- .join('\n')
71
- .split('\n');
69
+ return fs
70
+ .readFileSync(filepath, "utf-8")
71
+ .split("\n")
72
+ .filter((x) => (x === null || x === void 0 ? void 0 : x.trim()) !== "")
73
+ .filter((x) => !x.startsWith("#") && !x.startsWith("!"))
74
+ .map((x) => x.replace(/^\//, "")) // remove "/" prefix
75
+ .map((x) => `${x}\n${x}/**`)
76
+ .join("\n")
77
+ .split("\n");
72
78
  }
73
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xlYW51cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9jbGVhbnVwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDZCQUE2QjtBQUM3QiwrQkFBK0I7QUFDL0IsdUNBQW9EO0FBQ3BELDZCQUE2QjtBQUM3QixxQ0FBcUQ7QUFDckQscUNBQXFDO0FBRXhCLFFBQUEsYUFBYSxHQUFHLEdBQUcsbUJBQVUsYUFBYSxDQUFDO0FBRXhELFNBQWdCLE9BQU8sQ0FBQyxHQUFXLEVBQUUsT0FBaUI7SUFDcEQsSUFBSTtRQUNGLEtBQUssTUFBTSxDQUFDLElBQUksa0JBQWtCLENBQUMsR0FBRyxFQUFFLE9BQU8sQ0FBQyxFQUFFO1lBQ2hELEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDbEI7S0FDRjtJQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQ1YsT0FBTyxDQUFDLElBQUksQ0FBQyxnREFBZ0QsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7S0FDekU7QUFDSCxDQUFDO0FBUkQsMEJBUUM7QUFFRCxTQUFTLGtCQUFrQixDQUFDLEdBQVcsRUFBRSxPQUFpQjtJQUN4RCxJQUFJLEtBQUssR0FBRyxvQkFBb0IsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN0QyxJQUFJLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1FBQ3BCLE9BQU8sS0FBSyxDQUFDO0tBQ2Q7SUFFRCxNQUFNLE1BQU0sR0FBRyxDQUFDLEdBQUcsYUFBYSxDQUFDLEdBQUcsQ0FBQyxFQUFFLGlCQUFpQixFQUFFLEdBQUcsT0FBTyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBRWpGLEtBQUssR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRTtRQUN0QixNQUFNO1FBQ04sR0FBRyxFQUFFLEdBQUc7UUFDUixHQUFHLEVBQUUsSUFBSTtRQUNULEtBQUssRUFBRSxJQUFJO1FBQ1gsUUFBUSxFQUFFLElBQUk7S0FDZixDQUFDLENBQUM7SUFFSCxNQUFNLFNBQVMsR0FBRyxJQUFJLEtBQUssRUFBVSxDQUFDO0lBRXRDLEtBQUssTUFBTSxJQUFJLElBQUksS0FBSyxFQUFFO1FBRXhCLE1BQU0sUUFBUSxHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBRWhELElBQUksUUFBUSxDQUFDLFFBQVEsQ0FBQyxzQkFBYSxDQUFDLEVBQUU7WUFDcEMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUN0QjtLQUNGO0lBRUQsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQztBQUVELFNBQVMsb0JBQW9CLENBQUMsR0FBVztJQUN2QyxJQUFJO1FBQ0YsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxxQkFBYSxDQUFDLENBQUM7UUFDMUQsSUFBSSxxQkFBVSxDQUFDLGdCQUFnQixDQUFDLEVBQUU7WUFDaEMsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyx1QkFBWSxDQUFDLGdCQUFnQixFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUM7WUFDekUsSUFBSSxZQUFZLENBQUMsS0FBSyxFQUFFO2dCQUN0QixPQUFPLFlBQVksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBUyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ3BFO1NBQ0Y7S0FDRjtJQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQ1YsT0FBTyxDQUFDLElBQUksQ0FBQyw2REFBNkQsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7S0FDdEY7SUFFRCxPQUFPLEVBQUUsQ0FBQztBQUNaLENBQUM7QUFFRCxTQUFTLGFBQWEsQ0FBQyxHQUFXO0lBQ2hDLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQzlDLElBQUksQ0FBQyxFQUFFLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxFQUFFO1FBQ2hDLE9BQU8sRUFBRSxDQUFDO0tBQ1g7SUFFRCxPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQztTQUN0QyxLQUFLLENBQUMsSUFBSSxDQUFDO1NBQ1gsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQSxDQUFDLGFBQUQsQ0FBQyx1QkFBRCxDQUFDLENBQUUsSUFBSSxRQUFPLEVBQUUsQ0FBQztTQUM3QixNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ3JELEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsb0JBQW9CO1NBQ25ELEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDO1NBQ3pCLElBQUksQ0FBQyxJQUFJLENBQUM7U0FDVixLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDakIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQgKiBhcyBmcyBmcm9tICdmcy1leHRyYSc7XG5pbXBvcnQgeyBleGlzdHNTeW5jLCByZWFkRmlsZVN5bmMgfSBmcm9tICdmcy1leHRyYSc7XG5pbXBvcnQgKiBhcyBnbG9iIGZyb20gJ2dsb2InO1xuaW1wb3J0IHsgUFJPSkVOX0RJUiwgUFJPSkVOX01BUktFUiB9IGZyb20gJy4vY29tbW9uJztcbmltcG9ydCAqIGFzIGxvZ2dpbmcgZnJvbSAnLi9sb2dnaW5nJztcblxuZXhwb3J0IGNvbnN0IEZJTEVfTUFOSUZFU1QgPSBgJHtQUk9KRU5fRElSfS9maWxlcy5qc29uYDtcblxuZXhwb3J0IGZ1bmN0aW9uIGNsZWFudXAoZGlyOiBzdHJpbmcsIGV4Y2x1ZGU6IHN0cmluZ1tdKSB7XG4gIHRyeSB7XG4gICAgZm9yIChjb25zdCBmIG9mIGZpbmRHZW5lcmF0ZWRGaWxlcyhkaXIsIGV4Y2x1ZGUpKSB7XG4gICAgICBmcy5yZW1vdmVTeW5jKGYpO1xuICAgIH1cbiAgfSBjYXRjaCAoZSkge1xuICAgIGxvZ2dpbmcud2Fybihgd2FybmluZzogZmFpbGVkIHRvIGNsZWFuIHVwIGdlbmVyYXRlZCBmaWxlczogJHtlLnN0YWNrfWApO1xuICB9XG59XG5cbmZ1bmN0aW9uIGZpbmRHZW5lcmF0ZWRGaWxlcyhkaXI6IHN0cmluZywgZXhjbHVkZTogc3RyaW5nW10pIHtcbiAgbGV0IGZpbGVzID0gZ2V0RmlsZXNGcm9tTWFuaWZlc3QoZGlyKTtcbiAgaWYgKGZpbGVzLmxlbmd0aCA+IDApIHtcbiAgICByZXR1cm4gZmlsZXM7XG4gIH1cblxuICBjb25zdCBpZ25vcmUgPSBbLi4ucmVhZEdpdElnbm9yZShkaXIpLCAnbm9kZV9tb2R1bGVzLyoqJywgLi4uZXhjbHVkZSwgJy5naXQvKionXTtcblxuICBmaWxlcyA9IGdsb2Iuc3luYygnKionLCB7XG4gICAgaWdub3JlLFxuICAgIGN3ZDogZGlyLFxuICAgIGRvdDogdHJ1ZSxcbiAgICBub2RpcjogdHJ1ZSxcbiAgICBhYnNvbHV0ZTogdHJ1ZSxcbiAgfSk7XG5cbiAgY29uc3QgZ2VuZXJhdGVkID0gbmV3IEFycmF5PHN0cmluZz4oKTtcblxuICBmb3IgKGNvbnN0IGZpbGUgb2YgZmlsZXMpIHtcblxuICAgIGNvbnN0IGNvbnRlbnRzID0gZnMucmVhZEZpbGVTeW5jKGZpbGUsICd1dGYtOCcpO1xuXG4gICAgaWYgKGNvbnRlbnRzLmluY2x1ZGVzKFBST0pFTl9NQVJLRVIpKSB7XG4gICAgICBnZW5lcmF0ZWQucHVzaChmaWxlKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gZ2VuZXJhdGVkO1xufVxuXG5mdW5jdGlvbiBnZXRGaWxlc0Zyb21NYW5pZmVzdChkaXI6IHN0cmluZyk6IHN0cmluZ1tdIHtcbiAgdHJ5IHtcbiAgICBjb25zdCBmaWxlTWFuaWZlc3RQYXRoID0gcGF0aC5yZXNvbHZlKGRpciwgRklMRV9NQU5JRkVTVCk7XG4gICAgaWYgKGV4aXN0c1N5bmMoZmlsZU1hbmlmZXN0UGF0aCkpIHtcbiAgICAgIGNvbnN0IGZpbGVNYW5pZmVzdCA9IEpTT04ucGFyc2UocmVhZEZpbGVTeW5jKGZpbGVNYW5pZmVzdFBhdGgsICd1dGYtOCcpKTtcbiAgICAgIGlmIChmaWxlTWFuaWZlc3QuZmlsZXMpIHtcbiAgICAgICAgcmV0dXJuIGZpbGVNYW5pZmVzdC5maWxlcy5tYXAoKGY6IHN0cmluZykgPT4gcGF0aC5yZXNvbHZlKGRpciwgZikpO1xuICAgICAgfVxuICAgIH1cbiAgfSBjYXRjaCAoZSkge1xuICAgIGxvZ2dpbmcud2Fybihgd2FybmluZzogdW5hYmxlIHRvIGdldCBmaWxlcyB0byBjbGVhbiBmcm9tIGZpbGUgbWFuaWZlc3Q6ICR7ZS5zdGFja31gKTtcbiAgfVxuXG4gIHJldHVybiBbXTtcbn1cblxuZnVuY3Rpb24gcmVhZEdpdElnbm9yZShkaXI6IHN0cmluZykge1xuICBjb25zdCBmaWxlcGF0aCA9IHBhdGguam9pbihkaXIsICcuZ2l0aWdub3JlJyk7XG4gIGlmICghZnMucGF0aEV4aXN0c1N5bmMoZmlsZXBhdGgpKSB7XG4gICAgcmV0dXJuIFtdO1xuICB9XG5cbiAgcmV0dXJuIGZzLnJlYWRGaWxlU3luYyhmaWxlcGF0aCwgJ3V0Zi04JylcbiAgICAuc3BsaXQoJ1xcbicpXG4gICAgLmZpbHRlcih4ID0+IHg/LnRyaW0oKSAhPT0gJycpXG4gICAgLmZpbHRlcih4ID0+ICF4LnN0YXJ0c1dpdGgoJyMnKSAmJiAheC5zdGFydHNXaXRoKCchJykpXG4gICAgLm1hcCh4ID0+IHgucmVwbGFjZSgvXlxcLy8sICcnKSkgLy8gcmVtb3ZlIFwiL1wiIHByZWZpeFxuICAgIC5tYXAoeCA9PiBgJHt4fVxcbiR7eH0vKipgKVxuICAgIC5qb2luKCdcXG4nKVxuICAgIC5zcGxpdCgnXFxuJyk7XG59XG5cbiJdfQ==
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xlYW51cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9jbGVhbnVwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDZCQUE2QjtBQUM3QiwrQkFBK0I7QUFDL0IsdUNBQW9EO0FBQ3BELDZCQUE2QjtBQUM3QixxQ0FBcUQ7QUFDckQscUNBQXFDO0FBRXhCLFFBQUEsYUFBYSxHQUFHLEdBQUcsbUJBQVUsYUFBYSxDQUFDO0FBRXhELFNBQWdCLE9BQU8sQ0FBQyxHQUFXLEVBQUUsT0FBaUI7SUFDcEQsSUFBSTtRQUNGLEtBQUssTUFBTSxDQUFDLElBQUksa0JBQWtCLENBQUMsR0FBRyxFQUFFLE9BQU8sQ0FBQyxFQUFFO1lBQ2hELEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDbEI7S0FDRjtJQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQ1YsT0FBTyxDQUFDLElBQUksQ0FBQyxnREFBZ0QsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7S0FDekU7QUFDSCxDQUFDO0FBUkQsMEJBUUM7QUFFRCxTQUFTLGtCQUFrQixDQUFDLEdBQVcsRUFBRSxPQUFpQjtJQUN4RCxJQUFJLEtBQUssR0FBRyxvQkFBb0IsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN0QyxJQUFJLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1FBQ3BCLE9BQU8sS0FBSyxDQUFDO0tBQ2Q7SUFFRCxNQUFNLE1BQU0sR0FBRztRQUNiLEdBQUcsYUFBYSxDQUFDLEdBQUcsQ0FBQztRQUNyQixpQkFBaUI7UUFDakIsR0FBRyxPQUFPO1FBQ1YsU0FBUztLQUNWLENBQUM7SUFFRixLQUFLLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUU7UUFDdEIsTUFBTTtRQUNOLEdBQUcsRUFBRSxHQUFHO1FBQ1IsR0FBRyxFQUFFLElBQUk7UUFDVCxLQUFLLEVBQUUsSUFBSTtRQUNYLFFBQVEsRUFBRSxJQUFJO0tBQ2YsQ0FBQyxDQUFDO0lBRUgsTUFBTSxTQUFTLEdBQUcsSUFBSSxLQUFLLEVBQVUsQ0FBQztJQUV0QyxLQUFLLE1BQU0sSUFBSSxJQUFJLEtBQUssRUFBRTtRQUN4QixNQUFNLFFBQVEsR0FBRyxFQUFFLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztRQUVoRCxJQUFJLFFBQVEsQ0FBQyxRQUFRLENBQUMsc0JBQWEsQ0FBQyxFQUFFO1lBQ3BDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDdEI7S0FDRjtJQUVELE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUM7QUFFRCxTQUFTLG9CQUFvQixDQUFDLEdBQVc7SUFDdkMsSUFBSTtRQUNGLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUscUJBQWEsQ0FBQyxDQUFDO1FBQzFELElBQUkscUJBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFO1lBQ2hDLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsdUJBQVksQ0FBQyxnQkFBZ0IsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDO1lBQ3pFLElBQUksWUFBWSxDQUFDLEtBQUssRUFBRTtnQkFDdEIsT0FBTyxZQUFZLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQVMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNwRTtTQUNGO0tBQ0Y7SUFBQyxPQUFPLENBQUMsRUFBRTtRQUNWLE9BQU8sQ0FBQyxJQUFJLENBQ1YsNkRBQTZELENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FDdkUsQ0FBQztLQUNIO0lBRUQsT0FBTyxFQUFFLENBQUM7QUFDWixDQUFDO0FBRUQsU0FBUyxhQUFhLENBQUMsR0FBVztJQUNoQyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxZQUFZLENBQUMsQ0FBQztJQUM5QyxJQUFJLENBQUMsRUFBRSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsRUFBRTtRQUNoQyxPQUFPLEVBQUUsQ0FBQztLQUNYO0lBRUQsT0FBTyxFQUFFO1NBQ04sWUFBWSxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUM7U0FDL0IsS0FBSyxDQUFDLElBQUksQ0FBQztTQUNYLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQSxDQUFDLGFBQUQsQ0FBQyx1QkFBRCxDQUFDLENBQUUsSUFBSSxRQUFPLEVBQUUsQ0FBQztTQUMvQixNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDdkQsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLG9CQUFvQjtTQUNyRCxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDO1NBQzNCLElBQUksQ0FBQyxJQUFJLENBQUM7U0FDVixLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDakIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIHBhdGggZnJvbSBcInBhdGhcIjtcbmltcG9ydCAqIGFzIGZzIGZyb20gXCJmcy1leHRyYVwiO1xuaW1wb3J0IHsgZXhpc3RzU3luYywgcmVhZEZpbGVTeW5jIH0gZnJvbSBcImZzLWV4dHJhXCI7XG5pbXBvcnQgKiBhcyBnbG9iIGZyb20gXCJnbG9iXCI7XG5pbXBvcnQgeyBQUk9KRU5fRElSLCBQUk9KRU5fTUFSS0VSIH0gZnJvbSBcIi4vY29tbW9uXCI7XG5pbXBvcnQgKiBhcyBsb2dnaW5nIGZyb20gXCIuL2xvZ2dpbmdcIjtcblxuZXhwb3J0IGNvbnN0IEZJTEVfTUFOSUZFU1QgPSBgJHtQUk9KRU5fRElSfS9maWxlcy5qc29uYDtcblxuZXhwb3J0IGZ1bmN0aW9uIGNsZWFudXAoZGlyOiBzdHJpbmcsIGV4Y2x1ZGU6IHN0cmluZ1tdKSB7XG4gIHRyeSB7XG4gICAgZm9yIChjb25zdCBmIG9mIGZpbmRHZW5lcmF0ZWRGaWxlcyhkaXIsIGV4Y2x1ZGUpKSB7XG4gICAgICBmcy5yZW1vdmVTeW5jKGYpO1xuICAgIH1cbiAgfSBjYXRjaCAoZSkge1xuICAgIGxvZ2dpbmcud2Fybihgd2FybmluZzogZmFpbGVkIHRvIGNsZWFuIHVwIGdlbmVyYXRlZCBmaWxlczogJHtlLnN0YWNrfWApO1xuICB9XG59XG5cbmZ1bmN0aW9uIGZpbmRHZW5lcmF0ZWRGaWxlcyhkaXI6IHN0cmluZywgZXhjbHVkZTogc3RyaW5nW10pIHtcbiAgbGV0IGZpbGVzID0gZ2V0RmlsZXNGcm9tTWFuaWZlc3QoZGlyKTtcbiAgaWYgKGZpbGVzLmxlbmd0aCA+IDApIHtcbiAgICByZXR1cm4gZmlsZXM7XG4gIH1cblxuICBjb25zdCBpZ25vcmUgPSBbXG4gICAgLi4ucmVhZEdpdElnbm9yZShkaXIpLFxuICAgIFwibm9kZV9tb2R1bGVzLyoqXCIsXG4gICAgLi4uZXhjbHVkZSxcbiAgICBcIi5naXQvKipcIixcbiAgXTtcblxuICBmaWxlcyA9IGdsb2Iuc3luYyhcIioqXCIsIHtcbiAgICBpZ25vcmUsXG4gICAgY3dkOiBkaXIsXG4gICAgZG90OiB0cnVlLFxuICAgIG5vZGlyOiB0cnVlLFxuICAgIGFic29sdXRlOiB0cnVlLFxuICB9KTtcblxuICBjb25zdCBnZW5lcmF0ZWQgPSBuZXcgQXJyYXk8c3RyaW5nPigpO1xuXG4gIGZvciAoY29uc3QgZmlsZSBvZiBmaWxlcykge1xuICAgIGNvbnN0IGNvbnRlbnRzID0gZnMucmVhZEZpbGVTeW5jKGZpbGUsIFwidXRmLThcIik7XG5cbiAgICBpZiAoY29udGVudHMuaW5jbHVkZXMoUFJPSkVOX01BUktFUikpIHtcbiAgICAgIGdlbmVyYXRlZC5wdXNoKGZpbGUpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBnZW5lcmF0ZWQ7XG59XG5cbmZ1bmN0aW9uIGdldEZpbGVzRnJvbU1hbmlmZXN0KGRpcjogc3RyaW5nKTogc3RyaW5nW10ge1xuICB0cnkge1xuICAgIGNvbnN0IGZpbGVNYW5pZmVzdFBhdGggPSBwYXRoLnJlc29sdmUoZGlyLCBGSUxFX01BTklGRVNUKTtcbiAgICBpZiAoZXhpc3RzU3luYyhmaWxlTWFuaWZlc3RQYXRoKSkge1xuICAgICAgY29uc3QgZmlsZU1hbmlmZXN0ID0gSlNPTi5wYXJzZShyZWFkRmlsZVN5bmMoZmlsZU1hbmlmZXN0UGF0aCwgXCJ1dGYtOFwiKSk7XG4gICAgICBpZiAoZmlsZU1hbmlmZXN0LmZpbGVzKSB7XG4gICAgICAgIHJldHVybiBmaWxlTWFuaWZlc3QuZmlsZXMubWFwKChmOiBzdHJpbmcpID0+IHBhdGgucmVzb2x2ZShkaXIsIGYpKTtcbiAgICAgIH1cbiAgICB9XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBsb2dnaW5nLndhcm4oXG4gICAgICBgd2FybmluZzogdW5hYmxlIHRvIGdldCBmaWxlcyB0byBjbGVhbiBmcm9tIGZpbGUgbWFuaWZlc3Q6ICR7ZS5zdGFja31gXG4gICAgKTtcbiAgfVxuXG4gIHJldHVybiBbXTtcbn1cblxuZnVuY3Rpb24gcmVhZEdpdElnbm9yZShkaXI6IHN0cmluZykge1xuICBjb25zdCBmaWxlcGF0aCA9IHBhdGguam9pbihkaXIsIFwiLmdpdGlnbm9yZVwiKTtcbiAgaWYgKCFmcy5wYXRoRXhpc3RzU3luYyhmaWxlcGF0aCkpIHtcbiAgICByZXR1cm4gW107XG4gIH1cblxuICByZXR1cm4gZnNcbiAgICAucmVhZEZpbGVTeW5jKGZpbGVwYXRoLCBcInV0Zi04XCIpXG4gICAgLnNwbGl0KFwiXFxuXCIpXG4gICAgLmZpbHRlcigoeCkgPT4geD8udHJpbSgpICE9PSBcIlwiKVxuICAgIC5maWx0ZXIoKHgpID0+ICF4LnN0YXJ0c1dpdGgoXCIjXCIpICYmICF4LnN0YXJ0c1dpdGgoXCIhXCIpKVxuICAgIC5tYXAoKHgpID0+IHgucmVwbGFjZSgvXlxcLy8sIFwiXCIpKSAvLyByZW1vdmUgXCIvXCIgcHJlZml4XG4gICAgLm1hcCgoeCkgPT4gYCR7eH1cXG4ke3h9LyoqYClcbiAgICAuam9pbihcIlxcblwiKVxuICAgIC5zcGxpdChcIlxcblwiKTtcbn1cbiJdfQ==