projen 0.58.1 → 0.58.4

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 (469) hide show
  1. package/.jsii +95 -5
  2. package/docs/api/API.md +31 -0
  3. package/lib/_resolve.d.ts +0 -1
  4. package/lib/_resolve.js +5 -6
  5. package/lib/awscdk/auto-discover.d.ts +0 -1
  6. package/lib/awscdk/auto-discover.js +10 -11
  7. package/lib/awscdk/awscdk-app-java.d.ts +0 -1
  8. package/lib/awscdk/awscdk-app-java.js +3 -4
  9. package/lib/awscdk/awscdk-app-py.d.ts +0 -1
  10. package/lib/awscdk/awscdk-app-py.js +6 -7
  11. package/lib/awscdk/awscdk-app-ts.d.ts +0 -1
  12. package/lib/awscdk/awscdk-app-ts.js +11 -12
  13. package/lib/awscdk/awscdk-construct.d.ts +0 -1
  14. package/lib/awscdk/awscdk-construct.js +8 -9
  15. package/lib/awscdk/awscdk-deps-java.d.ts +0 -1
  16. package/lib/awscdk/awscdk-deps-java.js +1 -1
  17. package/lib/awscdk/awscdk-deps-js.d.ts +0 -1
  18. package/lib/awscdk/awscdk-deps-js.js +1 -1
  19. package/lib/awscdk/awscdk-deps-py.d.ts +0 -1
  20. package/lib/awscdk/awscdk-deps.d.ts +0 -1
  21. package/lib/awscdk/awscdk-deps.js +9 -12
  22. package/lib/awscdk/awscdk-pytest-sample.d.ts +0 -1
  23. package/lib/awscdk/cdk-config.d.ts +26 -1
  24. package/lib/awscdk/cdk-config.js +34 -7
  25. package/lib/awscdk/cdk-tasks.d.ts +0 -1
  26. package/lib/awscdk/cdk-tasks.js +3 -4
  27. package/lib/awscdk/index.d.ts +0 -1
  28. package/lib/awscdk/integration-test.d.ts +0 -1
  29. package/lib/awscdk/integration-test.js +5 -6
  30. package/lib/awscdk/internal.d.ts +0 -1
  31. package/lib/awscdk/lambda-extension.d.ts +0 -1
  32. package/lib/awscdk/lambda-extension.js +7 -9
  33. package/lib/awscdk/lambda-function.d.ts +0 -1
  34. package/lib/awscdk/lambda-function.js +8 -9
  35. package/lib/build/build-workflow.d.ts +0 -1
  36. package/lib/build/build-workflow.js +14 -17
  37. package/lib/build/index.d.ts +0 -1
  38. package/lib/builtin-example.task.d.ts +0 -1
  39. package/lib/cdk/auto-discover-base.d.ts +0 -1
  40. package/lib/cdk/auto-discover-base.js +2 -2
  41. package/lib/cdk/construct-lib.d.ts +0 -1
  42. package/lib/cdk/construct-lib.js +1 -1
  43. package/lib/cdk/consts.d.ts +0 -1
  44. package/lib/cdk/index.d.ts +0 -1
  45. package/lib/cdk/integration-test-base.d.ts +0 -1
  46. package/lib/cdk/integration-test-base.js +3 -4
  47. package/lib/cdk/internal.d.ts +0 -1
  48. package/lib/cdk/jsii-docgen.d.ts +0 -1
  49. package/lib/cdk/jsii-docgen.js +3 -4
  50. package/lib/cdk/jsii-project.d.ts +0 -1
  51. package/lib/cdk/jsii-project.js +16 -18
  52. package/lib/cdk8s/auto-discover.d.ts +0 -1
  53. package/lib/cdk8s/auto-discover.js +4 -5
  54. package/lib/cdk8s/cdk8s-app-ts.d.ts +0 -1
  55. package/lib/cdk8s/cdk8s-app-ts.js +6 -7
  56. package/lib/cdk8s/cdk8s-construct.d.ts +0 -1
  57. package/lib/cdk8s/cdk8s-construct.js +5 -6
  58. package/lib/cdk8s/index.d.ts +0 -1
  59. package/lib/cdk8s/integration-test.d.ts +0 -1
  60. package/lib/cdk8s/integration-test.js +1 -1
  61. package/lib/cdktf/cdktf-construct.d.ts +0 -1
  62. package/lib/cdktf/cdktf-construct.js +3 -4
  63. package/lib/cdktf/index.d.ts +0 -1
  64. package/lib/cleanup.d.ts +0 -1
  65. package/lib/cleanup.js +2 -2
  66. package/lib/cli/cmds/new.d.ts +0 -1
  67. package/lib/cli/cmds/new.js +9 -15
  68. package/lib/cli/index.d.ts +0 -1
  69. package/lib/cli/macros.d.ts +0 -1
  70. package/lib/cli/macros.js +6 -8
  71. package/lib/cli/synth.d.ts +0 -1
  72. package/lib/cli/synth.js +2 -3
  73. package/lib/cli/tasks.d.ts +0 -1
  74. package/lib/cli/tasks.js +5 -7
  75. package/lib/cli/util.d.ts +0 -1
  76. package/lib/clobber.d.ts +0 -1
  77. package/lib/common.d.ts +0 -1
  78. package/lib/component.d.ts +0 -1
  79. package/lib/component.js +1 -1
  80. package/lib/dependencies.d.ts +0 -1
  81. package/lib/dependencies.js +3 -3
  82. package/lib/dev-env.d.ts +0 -1
  83. package/lib/dev-env.js +1 -1
  84. package/lib/docker-compose.d.ts +0 -1
  85. package/lib/docker-compose.js +16 -21
  86. package/lib/file.d.ts +0 -1
  87. package/lib/file.js +7 -8
  88. package/lib/gitattributes.d.ts +0 -1
  89. package/lib/gitattributes.js +1 -1
  90. package/lib/github/auto-approve.d.ts +0 -1
  91. package/lib/github/auto-approve.js +6 -7
  92. package/lib/github/auto-merge.d.ts +0 -1
  93. package/lib/github/auto-merge.js +6 -6
  94. package/lib/github/constants.d.ts +0 -1
  95. package/lib/github/dependabot.d.ts +0 -1
  96. package/lib/github/dependabot.js +6 -7
  97. package/lib/github/github-credentials.d.ts +0 -1
  98. package/lib/github/github-credentials.js +5 -7
  99. package/lib/github/github-project.d.ts +0 -1
  100. package/lib/github/github-project.js +7 -8
  101. package/lib/github/github.d.ts +0 -1
  102. package/lib/github/github.js +5 -6
  103. package/lib/github/index.d.ts +0 -1
  104. package/lib/github/mergify.d.ts +0 -1
  105. package/lib/github/mergify.js +4 -5
  106. package/lib/github/pr-template.d.ts +0 -1
  107. package/lib/github/pr-template.js +3 -4
  108. package/lib/github/pull-request-lint.d.ts +0 -1
  109. package/lib/github/pull-request-lint.js +7 -8
  110. package/lib/github/stale-util.d.ts +0 -1
  111. package/lib/github/stale-util.js +10 -9
  112. package/lib/github/stale.d.ts +0 -1
  113. package/lib/github/stale.js +3 -4
  114. package/lib/github/task-workflow.d.ts +0 -1
  115. package/lib/github/task-workflow.js +8 -9
  116. package/lib/github/util.d.ts +0 -1
  117. package/lib/github/workflow-actions.d.ts +0 -1
  118. package/lib/github/workflows-model.d.ts +0 -1
  119. package/lib/github/workflows.d.ts +0 -1
  120. package/lib/github/workflows.js +3 -4
  121. package/lib/gitlab/configuration-model.d.ts +0 -1
  122. package/lib/gitlab/configuration.d.ts +0 -1
  123. package/lib/gitlab/configuration.js +9 -10
  124. package/lib/gitlab/gitlab-configuration.d.ts +0 -1
  125. package/lib/gitlab/gitlab-configuration.js +1 -1
  126. package/lib/gitlab/index.d.ts +0 -1
  127. package/lib/gitlab/nested-configuration.d.ts +0 -1
  128. package/lib/gitlab/nested-configuration.js +1 -1
  129. package/lib/gitpod.d.ts +0 -1
  130. package/lib/gitpod.js +9 -10
  131. package/lib/ignore-file.d.ts +0 -1
  132. package/lib/ignore-file.js +1 -1
  133. package/lib/index.d.ts +0 -1
  134. package/lib/ini.d.ts +0 -1
  135. package/lib/ini.js +1 -1
  136. package/lib/inventory.d.ts +0 -1
  137. package/lib/inventory.js +18 -22
  138. package/lib/java/index.d.ts +0 -1
  139. package/lib/java/java-project.d.ts +0 -1
  140. package/lib/java/java-project.js +9 -10
  141. package/lib/java/junit.d.ts +0 -1
  142. package/lib/java/junit.js +4 -5
  143. package/lib/java/maven-compile.d.ts +0 -1
  144. package/lib/java/maven-compile.js +4 -5
  145. package/lib/java/maven-packaging.d.ts +0 -1
  146. package/lib/java/maven-packaging.js +5 -6
  147. package/lib/java/maven-sample.d.ts +0 -1
  148. package/lib/java/maven-sample.js +1 -1
  149. package/lib/java/pom.d.ts +0 -1
  150. package/lib/java/pom.js +6 -9
  151. package/lib/java/projenrc.d.ts +0 -1
  152. package/lib/java/projenrc.js +10 -12
  153. package/lib/javascript/bundler.d.ts +0 -1
  154. package/lib/javascript/bundler.js +9 -11
  155. package/lib/javascript/eslint.d.ts +0 -1
  156. package/lib/javascript/eslint.js +10 -11
  157. package/lib/javascript/index.d.ts +0 -1
  158. package/lib/javascript/jest.d.ts +0 -1
  159. package/lib/javascript/jest.js +19 -19
  160. package/lib/javascript/node-package.d.ts +0 -1
  161. package/lib/javascript/node-package.js +36 -37
  162. package/lib/javascript/node-project.d.ts +0 -1
  163. package/lib/javascript/node-project.js +53 -54
  164. package/lib/javascript/npm-config.d.ts +0 -1
  165. package/lib/javascript/npm-config.js +1 -1
  166. package/lib/javascript/prettier.d.ts +0 -1
  167. package/lib/javascript/prettier.js +5 -7
  168. package/lib/javascript/projenrc.d.ts +0 -1
  169. package/lib/javascript/projenrc.js +4 -5
  170. package/lib/javascript/render-options.d.ts +0 -1
  171. package/lib/javascript/render-options.js +7 -8
  172. package/lib/javascript/typescript-config.d.ts +0 -1
  173. package/lib/javascript/typescript-config.js +6 -7
  174. package/lib/javascript/upgrade-dependencies.d.ts +0 -1
  175. package/lib/javascript/upgrade-dependencies.js +30 -30
  176. package/lib/javascript/util.d.ts +0 -1
  177. package/lib/javascript/util.js +3 -4
  178. package/lib/json.d.ts +0 -1
  179. package/lib/json.js +3 -4
  180. package/lib/license.d.ts +0 -1
  181. package/lib/license.js +3 -4
  182. package/lib/logger.d.ts +0 -1
  183. package/lib/logger.js +6 -7
  184. package/lib/logging.d.ts +0 -1
  185. package/lib/makefile.d.ts +0 -1
  186. package/lib/makefile.js +1 -1
  187. package/lib/object-file.d.ts +0 -1
  188. package/lib/object-file.js +6 -8
  189. package/lib/option-hints.d.ts +0 -1
  190. package/lib/project-build.d.ts +0 -1
  191. package/lib/project-build.js +1 -1
  192. package/lib/project.d.ts +0 -1
  193. package/lib/project.js +7 -8
  194. package/lib/projects.d.ts +0 -1
  195. package/lib/projects.js +5 -6
  196. package/lib/projenrc-json.d.ts +0 -1
  197. package/lib/projenrc-json.js +5 -6
  198. package/lib/python/index.d.ts +0 -1
  199. package/lib/python/pip.d.ts +0 -1
  200. package/lib/python/pip.js +1 -1
  201. package/lib/python/poetry.d.ts +0 -1
  202. package/lib/python/poetry.js +4 -5
  203. package/lib/python/projenrc.d.ts +0 -1
  204. package/lib/python/projenrc.js +7 -10
  205. package/lib/python/pytest-sample.d.ts +0 -1
  206. package/lib/python/pytest-sample.js +1 -1
  207. package/lib/python/pytest.d.ts +0 -1
  208. package/lib/python/pytest.js +4 -5
  209. package/lib/python/python-deps.d.ts +0 -1
  210. package/lib/python/python-env.d.ts +0 -1
  211. package/lib/python/python-packaging.d.ts +0 -1
  212. package/lib/python/python-project.d.ts +0 -1
  213. package/lib/python/python-project.js +16 -17
  214. package/lib/python/python-sample.d.ts +0 -1
  215. package/lib/python/python-sample.js +1 -1
  216. package/lib/python/requirements-file.d.ts +0 -1
  217. package/lib/python/requirements-file.js +1 -1
  218. package/lib/python/setuppy.d.ts +0 -1
  219. package/lib/python/setuppy.js +1 -1
  220. package/lib/python/setuptools.d.ts +0 -1
  221. package/lib/python/setuptools.js +1 -1
  222. package/lib/python/venv.d.ts +0 -1
  223. package/lib/python/venv.js +3 -4
  224. package/lib/readme.d.ts +0 -1
  225. package/lib/readme.js +4 -5
  226. package/lib/release/bump-version.d.ts +0 -1
  227. package/lib/release/bump-version.js +4 -5
  228. package/lib/release/bump-version.task.d.ts +0 -1
  229. package/lib/release/bump-version.task.js +2 -2
  230. package/lib/release/index.d.ts +0 -1
  231. package/lib/release/publisher.d.ts +0 -1
  232. package/lib/release/publisher.js +108 -123
  233. package/lib/release/release-trigger.d.ts +0 -1
  234. package/lib/release/release-trigger.js +5 -7
  235. package/lib/release/release.d.ts +0 -1
  236. package/lib/release/release.js +11 -13
  237. package/lib/release/reset-version.task.d.ts +0 -1
  238. package/lib/release/tag-version.d.ts +0 -1
  239. package/lib/release/tag-version.task.d.ts +0 -1
  240. package/lib/release/update-changelog.d.ts +0 -1
  241. package/lib/release/update-changelog.task.d.ts +0 -1
  242. package/lib/renovatebot.d.ts +0 -1
  243. package/lib/renovatebot.js +5 -6
  244. package/lib/run-projenrc-json.task.d.ts +0 -1
  245. package/lib/run-task.js +13 -17
  246. package/lib/sample-file.d.ts +0 -1
  247. package/lib/sample-file.js +4 -4
  248. package/lib/semver.d.ts +0 -1
  249. package/lib/semver.js +3 -4
  250. package/lib/source-code.d.ts +0 -1
  251. package/lib/source-code.js +5 -6
  252. package/lib/task-model.d.ts +0 -1
  253. package/lib/task-runtime.d.ts +0 -1
  254. package/lib/task-runtime.js +15 -19
  255. package/lib/task.d.ts +0 -1
  256. package/lib/task.js +4 -5
  257. package/lib/tasks.d.ts +0 -1
  258. package/lib/tasks.js +1 -1
  259. package/lib/testing.d.ts +0 -1
  260. package/lib/testing.js +1 -1
  261. package/lib/textfile.d.ts +0 -1
  262. package/lib/textfile.js +3 -4
  263. package/lib/toml.d.ts +0 -1
  264. package/lib/toml.js +1 -1
  265. package/lib/typescript/index.d.ts +0 -1
  266. package/lib/typescript/projenrc.d.ts +0 -1
  267. package/lib/typescript/projenrc.js +9 -10
  268. package/lib/typescript/typescript-typedoc.d.ts +0 -1
  269. package/lib/typescript/typescript-typedoc.js +1 -1
  270. package/lib/typescript/typescript.d.ts +0 -1
  271. package/lib/typescript/typescript.js +43 -46
  272. package/lib/util/semver.d.ts +0 -1
  273. package/lib/util/semver.js +2 -3
  274. package/lib/util/synth.d.ts +0 -1
  275. package/lib/util/synth.js +2 -3
  276. package/lib/util.d.ts +0 -1
  277. package/lib/util.js +7 -9
  278. package/lib/version.d.ts +0 -1
  279. package/lib/version.js +3 -4
  280. package/lib/vscode/devcontainer.d.ts +0 -1
  281. package/lib/vscode/devcontainer.js +8 -8
  282. package/lib/vscode/index.d.ts +0 -1
  283. package/lib/vscode/launch-config.d.ts +0 -1
  284. package/lib/vscode/launch-config.js +1 -1
  285. package/lib/vscode/vscode.d.ts +0 -1
  286. package/lib/vscode/vscode.js +1 -1
  287. package/lib/web/index.d.ts +0 -1
  288. package/lib/web/next.d.ts +0 -1
  289. package/lib/web/next.js +16 -20
  290. package/lib/web/postcss.d.ts +0 -1
  291. package/lib/web/postcss.js +6 -7
  292. package/lib/web/react.d.ts +0 -1
  293. package/lib/web/react.js +15 -19
  294. package/lib/web/tailwind.d.ts +0 -1
  295. package/lib/web/tailwind.js +4 -5
  296. package/lib/xmlfile.d.ts +0 -1
  297. package/lib/xmlfile.js +1 -1
  298. package/lib/yaml.d.ts +0 -1
  299. package/lib/yaml.js +3 -4
  300. package/package.json +5 -5
  301. package/lib/_resolve.d.ts.map +0 -1
  302. package/lib/awscdk/auto-discover.d.ts.map +0 -1
  303. package/lib/awscdk/awscdk-app-java.d.ts.map +0 -1
  304. package/lib/awscdk/awscdk-app-py.d.ts.map +0 -1
  305. package/lib/awscdk/awscdk-app-ts.d.ts.map +0 -1
  306. package/lib/awscdk/awscdk-construct.d.ts.map +0 -1
  307. package/lib/awscdk/awscdk-deps-java.d.ts.map +0 -1
  308. package/lib/awscdk/awscdk-deps-js.d.ts.map +0 -1
  309. package/lib/awscdk/awscdk-deps-py.d.ts.map +0 -1
  310. package/lib/awscdk/awscdk-deps.d.ts.map +0 -1
  311. package/lib/awscdk/awscdk-pytest-sample.d.ts.map +0 -1
  312. package/lib/awscdk/cdk-config.d.ts.map +0 -1
  313. package/lib/awscdk/cdk-tasks.d.ts.map +0 -1
  314. package/lib/awscdk/index.d.ts.map +0 -1
  315. package/lib/awscdk/integration-test.d.ts.map +0 -1
  316. package/lib/awscdk/internal.d.ts.map +0 -1
  317. package/lib/awscdk/lambda-extension.d.ts.map +0 -1
  318. package/lib/awscdk/lambda-function.d.ts.map +0 -1
  319. package/lib/build/build-workflow.d.ts.map +0 -1
  320. package/lib/build/index.d.ts.map +0 -1
  321. package/lib/builtin-example.task.d.ts.map +0 -1
  322. package/lib/cdk/auto-discover-base.d.ts.map +0 -1
  323. package/lib/cdk/construct-lib.d.ts.map +0 -1
  324. package/lib/cdk/consts.d.ts.map +0 -1
  325. package/lib/cdk/index.d.ts.map +0 -1
  326. package/lib/cdk/integration-test-base.d.ts.map +0 -1
  327. package/lib/cdk/internal.d.ts.map +0 -1
  328. package/lib/cdk/jsii-docgen.d.ts.map +0 -1
  329. package/lib/cdk/jsii-project.d.ts.map +0 -1
  330. package/lib/cdk8s/auto-discover.d.ts.map +0 -1
  331. package/lib/cdk8s/cdk8s-app-ts.d.ts.map +0 -1
  332. package/lib/cdk8s/cdk8s-construct.d.ts.map +0 -1
  333. package/lib/cdk8s/index.d.ts.map +0 -1
  334. package/lib/cdk8s/integration-test.d.ts.map +0 -1
  335. package/lib/cdktf/cdktf-construct.d.ts.map +0 -1
  336. package/lib/cdktf/index.d.ts.map +0 -1
  337. package/lib/cleanup.d.ts.map +0 -1
  338. package/lib/cli/cmds/new.d.ts.map +0 -1
  339. package/lib/cli/index.d.ts.map +0 -1
  340. package/lib/cli/macros.d.ts.map +0 -1
  341. package/lib/cli/synth.d.ts.map +0 -1
  342. package/lib/cli/tasks.d.ts.map +0 -1
  343. package/lib/cli/util.d.ts.map +0 -1
  344. package/lib/clobber.d.ts.map +0 -1
  345. package/lib/common.d.ts.map +0 -1
  346. package/lib/component.d.ts.map +0 -1
  347. package/lib/dependencies.d.ts.map +0 -1
  348. package/lib/dev-env.d.ts.map +0 -1
  349. package/lib/docker-compose.d.ts.map +0 -1
  350. package/lib/file.d.ts.map +0 -1
  351. package/lib/gitattributes.d.ts.map +0 -1
  352. package/lib/github/auto-approve.d.ts.map +0 -1
  353. package/lib/github/auto-merge.d.ts.map +0 -1
  354. package/lib/github/constants.d.ts.map +0 -1
  355. package/lib/github/dependabot.d.ts.map +0 -1
  356. package/lib/github/github-credentials.d.ts.map +0 -1
  357. package/lib/github/github-project.d.ts.map +0 -1
  358. package/lib/github/github.d.ts.map +0 -1
  359. package/lib/github/index.d.ts.map +0 -1
  360. package/lib/github/mergify.d.ts.map +0 -1
  361. package/lib/github/pr-template.d.ts.map +0 -1
  362. package/lib/github/pull-request-lint.d.ts.map +0 -1
  363. package/lib/github/stale-util.d.ts.map +0 -1
  364. package/lib/github/stale.d.ts.map +0 -1
  365. package/lib/github/task-workflow.d.ts.map +0 -1
  366. package/lib/github/util.d.ts.map +0 -1
  367. package/lib/github/workflow-actions.d.ts.map +0 -1
  368. package/lib/github/workflows-model.d.ts.map +0 -1
  369. package/lib/github/workflows.d.ts.map +0 -1
  370. package/lib/gitlab/configuration-model.d.ts.map +0 -1
  371. package/lib/gitlab/configuration.d.ts.map +0 -1
  372. package/lib/gitlab/gitlab-configuration.d.ts.map +0 -1
  373. package/lib/gitlab/index.d.ts.map +0 -1
  374. package/lib/gitlab/nested-configuration.d.ts.map +0 -1
  375. package/lib/gitpod.d.ts.map +0 -1
  376. package/lib/ignore-file.d.ts.map +0 -1
  377. package/lib/index.d.ts.map +0 -1
  378. package/lib/ini.d.ts.map +0 -1
  379. package/lib/inventory.d.ts.map +0 -1
  380. package/lib/java/index.d.ts.map +0 -1
  381. package/lib/java/java-project.d.ts.map +0 -1
  382. package/lib/java/junit.d.ts.map +0 -1
  383. package/lib/java/maven-compile.d.ts.map +0 -1
  384. package/lib/java/maven-packaging.d.ts.map +0 -1
  385. package/lib/java/maven-sample.d.ts.map +0 -1
  386. package/lib/java/pom.d.ts.map +0 -1
  387. package/lib/java/projenrc.d.ts.map +0 -1
  388. package/lib/javascript/bundler.d.ts.map +0 -1
  389. package/lib/javascript/eslint.d.ts.map +0 -1
  390. package/lib/javascript/index.d.ts.map +0 -1
  391. package/lib/javascript/jest.d.ts.map +0 -1
  392. package/lib/javascript/node-package.d.ts.map +0 -1
  393. package/lib/javascript/node-project.d.ts.map +0 -1
  394. package/lib/javascript/npm-config.d.ts.map +0 -1
  395. package/lib/javascript/prettier.d.ts.map +0 -1
  396. package/lib/javascript/projenrc.d.ts.map +0 -1
  397. package/lib/javascript/render-options.d.ts.map +0 -1
  398. package/lib/javascript/typescript-config.d.ts.map +0 -1
  399. package/lib/javascript/upgrade-dependencies.d.ts.map +0 -1
  400. package/lib/javascript/util.d.ts.map +0 -1
  401. package/lib/json.d.ts.map +0 -1
  402. package/lib/license.d.ts.map +0 -1
  403. package/lib/logger.d.ts.map +0 -1
  404. package/lib/logging.d.ts.map +0 -1
  405. package/lib/makefile.d.ts.map +0 -1
  406. package/lib/object-file.d.ts.map +0 -1
  407. package/lib/option-hints.d.ts.map +0 -1
  408. package/lib/project-build.d.ts.map +0 -1
  409. package/lib/project.d.ts.map +0 -1
  410. package/lib/projects.d.ts.map +0 -1
  411. package/lib/projenrc-json.d.ts.map +0 -1
  412. package/lib/python/index.d.ts.map +0 -1
  413. package/lib/python/pip.d.ts.map +0 -1
  414. package/lib/python/poetry.d.ts.map +0 -1
  415. package/lib/python/projenrc.d.ts.map +0 -1
  416. package/lib/python/pytest-sample.d.ts.map +0 -1
  417. package/lib/python/pytest.d.ts.map +0 -1
  418. package/lib/python/python-deps.d.ts.map +0 -1
  419. package/lib/python/python-env.d.ts.map +0 -1
  420. package/lib/python/python-packaging.d.ts.map +0 -1
  421. package/lib/python/python-project.d.ts.map +0 -1
  422. package/lib/python/python-sample.d.ts.map +0 -1
  423. package/lib/python/requirements-file.d.ts.map +0 -1
  424. package/lib/python/setuppy.d.ts.map +0 -1
  425. package/lib/python/setuptools.d.ts.map +0 -1
  426. package/lib/python/venv.d.ts.map +0 -1
  427. package/lib/readme.d.ts.map +0 -1
  428. package/lib/release/bump-version.d.ts.map +0 -1
  429. package/lib/release/bump-version.task.d.ts.map +0 -1
  430. package/lib/release/index.d.ts.map +0 -1
  431. package/lib/release/publisher.d.ts.map +0 -1
  432. package/lib/release/release-trigger.d.ts.map +0 -1
  433. package/lib/release/release.d.ts.map +0 -1
  434. package/lib/release/reset-version.task.d.ts.map +0 -1
  435. package/lib/release/tag-version.d.ts.map +0 -1
  436. package/lib/release/tag-version.task.d.ts.map +0 -1
  437. package/lib/release/update-changelog.d.ts.map +0 -1
  438. package/lib/release/update-changelog.task.d.ts.map +0 -1
  439. package/lib/renovatebot.d.ts.map +0 -1
  440. package/lib/run-projenrc-json.task.d.ts.map +0 -1
  441. package/lib/sample-file.d.ts.map +0 -1
  442. package/lib/semver.d.ts.map +0 -1
  443. package/lib/source-code.d.ts.map +0 -1
  444. package/lib/task-model.d.ts.map +0 -1
  445. package/lib/task-runtime.d.ts.map +0 -1
  446. package/lib/task.d.ts.map +0 -1
  447. package/lib/tasks.d.ts.map +0 -1
  448. package/lib/testing.d.ts.map +0 -1
  449. package/lib/textfile.d.ts.map +0 -1
  450. package/lib/toml.d.ts.map +0 -1
  451. package/lib/typescript/index.d.ts.map +0 -1
  452. package/lib/typescript/projenrc.d.ts.map +0 -1
  453. package/lib/typescript/typescript-typedoc.d.ts.map +0 -1
  454. package/lib/typescript/typescript.d.ts.map +0 -1
  455. package/lib/util/semver.d.ts.map +0 -1
  456. package/lib/util/synth.d.ts.map +0 -1
  457. package/lib/util.d.ts.map +0 -1
  458. package/lib/version.d.ts.map +0 -1
  459. package/lib/vscode/devcontainer.d.ts.map +0 -1
  460. package/lib/vscode/index.d.ts.map +0 -1
  461. package/lib/vscode/launch-config.d.ts.map +0 -1
  462. package/lib/vscode/vscode.d.ts.map +0 -1
  463. package/lib/web/index.d.ts.map +0 -1
  464. package/lib/web/next.d.ts.map +0 -1
  465. package/lib/web/postcss.d.ts.map +0 -1
  466. package/lib/web/react.d.ts.map +0 -1
  467. package/lib/web/tailwind.d.ts.map +0 -1
  468. package/lib/xmlfile.d.ts.map +0 -1
  469. package/lib/yaml.d.ts.map +0 -1
@@ -11,11 +11,12 @@ const internal_1 = require("./internal");
11
11
  */
12
12
  class CdkConfig extends component_1.Component {
13
13
  constructor(project, options) {
14
- var _b, _c, _d, _e;
15
14
  super(project);
16
- this.cdkout = (_b = options.cdkout) !== null && _b !== void 0 ? _b : "cdk.out";
15
+ this.cdkout = options.cdkout ?? "cdk.out";
16
+ this._include = options.watchIncludes ?? [];
17
+ this._exclude = options.watchExcludes ?? [];
17
18
  const context = { ...options.context };
18
- const fflags = (_c = options.featureFlags) !== null && _c !== void 0 ? _c : true;
19
+ const fflags = options.featureFlags ?? true;
19
20
  if (fflags) {
20
21
  for (const flag of internal_1.FEATURE_FLAGS) {
21
22
  context[flag] = true;
@@ -30,18 +31,44 @@ class CdkConfig extends component_1.Component {
30
31
  output: this.cdkout,
31
32
  build: options.buildCommand,
32
33
  watch: {
33
- include: (_d = options.watchIncludes) !== null && _d !== void 0 ? _d : [],
34
- exclude: (_e = options.watchExcludes) !== null && _e !== void 0 ? _e : [],
34
+ include: () => this._include,
35
+ exclude: () => this._exclude,
35
36
  },
36
37
  },
37
38
  });
38
39
  project.gitignore.exclude(`/${this.cdkout}/`);
39
40
  project.gitignore.exclude(".cdk.staging/");
40
41
  }
42
+ /**
43
+ * Add includes to `cdk.json`.
44
+ * @param patterns The includes to add.
45
+ */
46
+ addIncludes(...patterns) {
47
+ this._include.push(...patterns);
48
+ }
49
+ /**
50
+ * Add excludes to `cdk.json`.
51
+ * @param patterns The excludes to add.
52
+ */
53
+ addExcludes(...patterns) {
54
+ this._exclude.push(...patterns);
55
+ }
56
+ /**
57
+ * List of glob patterns to be included by CDK.
58
+ */
59
+ get include() {
60
+ return [...this._include];
61
+ }
62
+ /**
63
+ * List of glob patterns to be excluded by CDK.
64
+ */
65
+ get exclude() {
66
+ return [...this._exclude];
67
+ }
41
68
  }
42
69
  exports.CdkConfig = CdkConfig;
43
70
  _a = JSII_RTTI_SYMBOL_1;
44
- CdkConfig[_a] = { fqn: "projen.awscdk.CdkConfig", version: "0.58.1" };
71
+ CdkConfig[_a] = { fqn: "projen.awscdk.CdkConfig", version: "0.58.4" };
45
72
  /**
46
73
  * Which approval is required when deploying CDK apps.
47
74
  */
@@ -60,4 +87,4 @@ var ApprovalLevel;
60
87
  */
61
88
  ApprovalLevel["BROADENING"] = "broadening";
62
89
  })(ApprovalLevel = exports.ApprovalLevel || (exports.ApprovalLevel = {}));
63
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RrLWNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hd3NjZGsvY2RrLWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDRDQUF5QztBQUN6QyxrQ0FBbUM7QUFFbkMseUNBQTJDO0FBc0UzQzs7R0FFRztBQUNILE1BQWEsU0FBVSxTQUFRLHFCQUFTO0lBV3RDLFlBQVksT0FBZ0IsRUFBRSxPQUF5Qjs7UUFDckQsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRWYsSUFBSSxDQUFDLE1BQU0sU0FBRyxPQUFPLENBQUMsTUFBTSxtQ0FBSSxTQUFTLENBQUM7UUFFMUMsTUFBTSxPQUFPLEdBQXdCLEVBQUUsR0FBRyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDNUQsTUFBTSxNQUFNLFNBQUcsT0FBTyxDQUFDLFlBQVksbUNBQUksSUFBSSxDQUFDO1FBQzVDLElBQUksTUFBTSxFQUFFO1lBQ1YsS0FBSyxNQUFNLElBQUksSUFBSSx3QkFBYSxFQUFFO2dCQUNoQyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDO2FBQ3RCO1NBQ0Y7UUFFRCxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksZUFBUSxDQUFDLE9BQU8sRUFBRSxVQUFVLEVBQUU7WUFDNUMsU0FBUyxFQUFFLElBQUk7WUFDZixHQUFHLEVBQUU7Z0JBQ0gsR0FBRyxFQUFFLE9BQU8sQ0FBQyxHQUFHO2dCQUNoQixPQUFPLEVBQUUsT0FBTztnQkFDaEIsZUFBZSxFQUFFLE9BQU8sQ0FBQyxlQUFlO2dCQUN4QyxNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07Z0JBQ25CLEtBQUssRUFBRSxPQUFPLENBQUMsWUFBWTtnQkFDM0IsS0FBSyxFQUFFO29CQUNMLE9BQU8sUUFBRSxPQUFPLENBQUMsYUFBYSxtQ0FBSSxFQUFFO29CQUNwQyxPQUFPLFFBQUUsT0FBTyxDQUFDLGFBQWEsbUNBQUksRUFBRTtpQkFDckM7YUFDRjtTQUNGLENBQUMsQ0FBQztRQUVILE9BQU8sQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLElBQUksSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7UUFDOUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDN0MsQ0FBQzs7QUF6Q0gsOEJBMENDOzs7QUFFRDs7R0FFRztBQUNILElBQVksYUFhWDtBQWJELFdBQVksYUFBYTtJQUN2Qjs7T0FFRztJQUNILGdDQUFlLENBQUE7SUFDZjs7T0FFRztJQUNILDBDQUF5QixDQUFBO0lBQ3pCOztPQUVHO0lBQ0gsMENBQXlCLENBQUE7QUFDM0IsQ0FBQyxFQWJXLGFBQWEsR0FBYixxQkFBYSxLQUFiLHFCQUFhLFFBYXhCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSBcIi4uL2NvbXBvbmVudFwiO1xuaW1wb3J0IHsgSnNvbkZpbGUgfSBmcm9tIFwiLi4vanNvblwiO1xuaW1wb3J0IHsgUHJvamVjdCB9IGZyb20gXCIuLi9wcm9qZWN0XCI7XG5pbXBvcnQgeyBGRUFUVVJFX0ZMQUdTIH0gZnJvbSBcIi4vaW50ZXJuYWxcIjtcblxuLyoqXG4gKiBDb21tb24gb3B0aW9ucyBmb3IgYGNkay5qc29uYC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDZGtDb25maWdDb21tb25PcHRpb25zIHtcbiAgLyoqXG4gICAqIEFkZGl0aW9uYWwgY29udGV4dCB0byBpbmNsdWRlIGluIGBjZGsuanNvbmAuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gbm8gYWRkaXRpb25hbCBjb250ZXh0XG4gICAqL1xuICByZWFkb25seSBjb250ZXh0PzogeyBba2V5OiBzdHJpbmddOiBhbnkgfTtcblxuICAvKipcbiAgICogSW5jbHVkZSBhbGwgZmVhdHVyZSBmbGFncyBpbiBjZGsuanNvblxuICAgKlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBmZWF0dXJlRmxhZ3M/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBUbyBwcm90ZWN0IHlvdSBhZ2FpbnN0IHVuaW50ZW5kZWQgY2hhbmdlcyB0aGF0IGFmZmVjdCB5b3VyIHNlY3VyaXR5IHBvc3R1cmUsXG4gICAqIHRoZSBBV1MgQ0RLIFRvb2xraXQgcHJvbXB0cyB5b3UgdG8gYXBwcm92ZSBzZWN1cml0eS1yZWxhdGVkIGNoYW5nZXMgYmVmb3JlIGRlcGxveWluZyB0aGVtLlxuICAgKlxuICAgKiBAZGVmYXVsdCBBcHByb3ZhbExldmVsLkJST0FERU5JTkdcbiAgICovXG4gIHJlYWRvbmx5IHJlcXVpcmVBcHByb3ZhbD86IEFwcHJvdmFsTGV2ZWw7XG5cbiAgLyoqXG4gICAqIGNkay5vdXQgZGlyZWN0b3J5LlxuICAgKlxuICAgKiBAZGVmYXVsdCBcImNkay5vdXRcIlxuICAgKi9cbiAgcmVhZG9ubHkgY2Rrb3V0Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBIGNvbW1hbmQgdG8gZXhlY3V0ZSBiZWZvcmUgc3ludGhlc2lzLiBUaGlzIGNvbW1hbmQgd2lsbCBiZSBjYWxsZWQgd2hlblxuICAgKiBydW5uaW5nIGBjZGsgc3ludGhgIG9yIHdoZW4gYGNkayB3YXRjaGAgaWRlbnRpZmllcyBhIGNoYW5nZSBpbiB5b3VyIHNvdXJjZVxuICAgKiBjb2RlIGJlZm9yZSByZWRlcGxveW1lbnQuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gbm8gYnVpbGQgY29tbWFuZFxuICAgKi9cbiAgcmVhZG9ubHkgYnVpbGRDb21tYW5kPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBHbG9iIHBhdHRlcm5zIHRvIGluY2x1ZGUgaW4gYGNkayB3YXRjaGAuXG4gICAqXG4gICAqIEBkZWZhdWx0IFtdXG4gICAqL1xuICByZWFkb25seSB3YXRjaEluY2x1ZGVzPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIEdsb2IgcGF0dGVybnMgdG8gZXhjbHVkZSBmcm9tIGBjZGsgd2F0Y2hgLlxuICAgKlxuICAgKiBAZGVmYXVsdCBbXVxuICAgKi9cbiAgcmVhZG9ubHkgd2F0Y2hFeGNsdWRlcz86IHN0cmluZ1tdO1xufVxuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGBDZGtKc29uYC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDZGtDb25maWdPcHRpb25zIGV4dGVuZHMgQ2RrQ29uZmlnQ29tbW9uT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgY29tbWFuZCBsaW5lIHRvIGV4ZWN1dGUgaW4gb3JkZXIgdG8gc3ludGhlc2l6ZSB0aGUgQ0RLIGFwcGxpY2F0aW9uXG4gICAqIChsYW5ndWFnZSBzcGVjaWZpYykuXG4gICAqL1xuICByZWFkb25seSBhcHA6IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGNkay5qc29uIGZpbGUuXG4gKi9cbmV4cG9ydCBjbGFzcyBDZGtDb25maWcgZXh0ZW5kcyBDb21wb25lbnQge1xuICAvKipcbiAgICogUmVwcmVzZW50cyB0aGUgSlNPTiBmaWxlLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGpzb246IEpzb25GaWxlO1xuXG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoZSBjZGsub3V0IGRpcmVjdG9yeS5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBjZGtvdXQ6IHN0cmluZztcblxuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBQcm9qZWN0LCBvcHRpb25zOiBDZGtDb25maWdPcHRpb25zKSB7XG4gICAgc3VwZXIocHJvamVjdCk7XG5cbiAgICB0aGlzLmNka291dCA9IG9wdGlvbnMuY2Rrb3V0ID8/IFwiY2RrLm91dFwiO1xuXG4gICAgY29uc3QgY29udGV4dDogUmVjb3JkPHN0cmluZywgYW55PiA9IHsgLi4ub3B0aW9ucy5jb250ZXh0IH07XG4gICAgY29uc3QgZmZsYWdzID0gb3B0aW9ucy5mZWF0dXJlRmxhZ3MgPz8gdHJ1ZTtcbiAgICBpZiAoZmZsYWdzKSB7XG4gICAgICBmb3IgKGNvbnN0IGZsYWcgb2YgRkVBVFVSRV9GTEFHUykge1xuICAgICAgICBjb250ZXh0W2ZsYWddID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLmpzb24gPSBuZXcgSnNvbkZpbGUocHJvamVjdCwgXCJjZGsuanNvblwiLCB7XG4gICAgICBvbWl0RW1wdHk6IHRydWUsXG4gICAgICBvYmo6IHtcbiAgICAgICAgYXBwOiBvcHRpb25zLmFwcCxcbiAgICAgICAgY29udGV4dDogY29udGV4dCxcbiAgICAgICAgcmVxdWlyZUFwcHJvdmFsOiBvcHRpb25zLnJlcXVpcmVBcHByb3ZhbCxcbiAgICAgICAgb3V0cHV0OiB0aGlzLmNka291dCxcbiAgICAgICAgYnVpbGQ6IG9wdGlvbnMuYnVpbGRDb21tYW5kLFxuICAgICAgICB3YXRjaDoge1xuICAgICAgICAgIGluY2x1ZGU6IG9wdGlvbnMud2F0Y2hJbmNsdWRlcyA/PyBbXSxcbiAgICAgICAgICBleGNsdWRlOiBvcHRpb25zLndhdGNoRXhjbHVkZXMgPz8gW10sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgcHJvamVjdC5naXRpZ25vcmUuZXhjbHVkZShgLyR7dGhpcy5jZGtvdXR9L2ApO1xuICAgIHByb2plY3QuZ2l0aWdub3JlLmV4Y2x1ZGUoXCIuY2RrLnN0YWdpbmcvXCIpO1xuICB9XG59XG5cbi8qKlxuICogV2hpY2ggYXBwcm92YWwgaXMgcmVxdWlyZWQgd2hlbiBkZXBsb3lpbmcgQ0RLIGFwcHMuXG4gKi9cbmV4cG9ydCBlbnVtIEFwcHJvdmFsTGV2ZWwge1xuICAvKipcbiAgICogQXBwcm92YWwgaXMgbmV2ZXIgcmVxdWlyZWRcbiAgICovXG4gIE5FVkVSID0gXCJuZXZlclwiLFxuICAvKipcbiAgICogUmVxdWlyZXMgYXBwcm92YWwgb24gYW55IElBTSBvciBzZWN1cml0eS1ncm91cC1yZWxhdGVkIGNoYW5nZVxuICAgKi9cbiAgQU5ZX0NIQU5HRSA9IFwiYW55LWNoYW5nZVwiLFxuICAvKipcbiAgICogUmVxdWlyZXMgYXBwcm92YWwgd2hlbiBJQU0gc3RhdGVtZW50cyBvciB0cmFmZmljIHJ1bGVzIGFyZSBhZGRlZDsgcmVtb3ZhbHMgZG9uJ3QgcmVxdWlyZSBhcHByb3ZhbFxuICAgKi9cbiAgQlJPQURFTklORyA9IFwiYnJvYWRlbmluZ1wiLFxufVxuIl19
90
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RrLWNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hd3NjZGsvY2RrLWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDRDQUF5QztBQUN6QyxrQ0FBbUM7QUFFbkMseUNBQTJDO0FBc0UzQzs7R0FFRztBQUNILE1BQWEsU0FBVSxTQUFRLHFCQUFTO0lBcUJ0QyxZQUFZLE9BQWdCLEVBQUUsT0FBeUI7UUFDckQsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRWYsSUFBSSxDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUMsTUFBTSxJQUFJLFNBQVMsQ0FBQztRQUMxQyxJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQyxhQUFhLElBQUksRUFBRSxDQUFDO1FBQzVDLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDLGFBQWEsSUFBSSxFQUFFLENBQUM7UUFFNUMsTUFBTSxPQUFPLEdBQXdCLEVBQUUsR0FBRyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDNUQsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLFlBQVksSUFBSSxJQUFJLENBQUM7UUFDNUMsSUFBSSxNQUFNLEVBQUU7WUFDVixLQUFLLE1BQU0sSUFBSSxJQUFJLHdCQUFhLEVBQUU7Z0JBQ2hDLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUM7YUFDdEI7U0FDRjtRQUVELElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxlQUFRLENBQUMsT0FBTyxFQUFFLFVBQVUsRUFBRTtZQUM1QyxTQUFTLEVBQUUsSUFBSTtZQUNmLEdBQUcsRUFBRTtnQkFDSCxHQUFHLEVBQUUsT0FBTyxDQUFDLEdBQUc7Z0JBQ2hCLE9BQU8sRUFBRSxPQUFPO2dCQUNoQixlQUFlLEVBQUUsT0FBTyxDQUFDLGVBQWU7Z0JBQ3hDLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTtnQkFDbkIsS0FBSyxFQUFFLE9BQU8sQ0FBQyxZQUFZO2dCQUMzQixLQUFLLEVBQUU7b0JBQ0wsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRO29CQUM1QixPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVE7aUJBQzdCO2FBQ0Y7U0FDRixDQUFDLENBQUM7UUFFSCxPQUFPLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxJQUFJLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1FBQzlDLE9BQU8sQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRDs7O09BR0c7SUFDSSxXQUFXLENBQUMsR0FBRyxRQUFrQjtRQUN0QyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLFFBQVEsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRDs7O09BR0c7SUFDSSxXQUFXLENBQUMsR0FBRyxRQUFrQjtRQUN0QyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLFFBQVEsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRDs7T0FFRztJQUNILElBQVcsT0FBTztRQUNoQixPQUFPLENBQUMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBVyxPQUFPO1FBQ2hCLE9BQU8sQ0FBQyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUM1QixDQUFDOztBQW5GSCw4QkFvRkM7OztBQUVEOztHQUVHO0FBQ0gsSUFBWSxhQWFYO0FBYkQsV0FBWSxhQUFhO0lBQ3ZCOztPQUVHO0lBQ0gsZ0NBQWUsQ0FBQTtJQUNmOztPQUVHO0lBQ0gsMENBQXlCLENBQUE7SUFDekI7O09BRUc7SUFDSCwwQ0FBeUIsQ0FBQTtBQUMzQixDQUFDLEVBYlcsYUFBYSxHQUFiLHFCQUFhLEtBQWIscUJBQWEsUUFheEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tIFwiLi4vY29tcG9uZW50XCI7XG5pbXBvcnQgeyBKc29uRmlsZSB9IGZyb20gXCIuLi9qc29uXCI7XG5pbXBvcnQgeyBQcm9qZWN0IH0gZnJvbSBcIi4uL3Byb2plY3RcIjtcbmltcG9ydCB7IEZFQVRVUkVfRkxBR1MgfSBmcm9tIFwiLi9pbnRlcm5hbFwiO1xuXG4vKipcbiAqIENvbW1vbiBvcHRpb25zIGZvciBgY2RrLmpzb25gLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENka0NvbmZpZ0NvbW1vbk9wdGlvbnMge1xuICAvKipcbiAgICogQWRkaXRpb25hbCBjb250ZXh0IHRvIGluY2x1ZGUgaW4gYGNkay5qc29uYC5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBubyBhZGRpdGlvbmFsIGNvbnRleHRcbiAgICovXG4gIHJlYWRvbmx5IGNvbnRleHQ/OiB7IFtrZXk6IHN0cmluZ106IGFueSB9O1xuXG4gIC8qKlxuICAgKiBJbmNsdWRlIGFsbCBmZWF0dXJlIGZsYWdzIGluIGNkay5qc29uXG4gICAqXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IGZlYXR1cmVGbGFncz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFRvIHByb3RlY3QgeW91IGFnYWluc3QgdW5pbnRlbmRlZCBjaGFuZ2VzIHRoYXQgYWZmZWN0IHlvdXIgc2VjdXJpdHkgcG9zdHVyZSxcbiAgICogdGhlIEFXUyBDREsgVG9vbGtpdCBwcm9tcHRzIHlvdSB0byBhcHByb3ZlIHNlY3VyaXR5LXJlbGF0ZWQgY2hhbmdlcyBiZWZvcmUgZGVwbG95aW5nIHRoZW0uXG4gICAqXG4gICAqIEBkZWZhdWx0IEFwcHJvdmFsTGV2ZWwuQlJPQURFTklOR1xuICAgKi9cbiAgcmVhZG9ubHkgcmVxdWlyZUFwcHJvdmFsPzogQXBwcm92YWxMZXZlbDtcblxuICAvKipcbiAgICogY2RrLm91dCBkaXJlY3RvcnkuXG4gICAqXG4gICAqIEBkZWZhdWx0IFwiY2RrLm91dFwiXG4gICAqL1xuICByZWFkb25seSBjZGtvdXQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEEgY29tbWFuZCB0byBleGVjdXRlIGJlZm9yZSBzeW50aGVzaXMuIFRoaXMgY29tbWFuZCB3aWxsIGJlIGNhbGxlZCB3aGVuXG4gICAqIHJ1bm5pbmcgYGNkayBzeW50aGAgb3Igd2hlbiBgY2RrIHdhdGNoYCBpZGVudGlmaWVzIGEgY2hhbmdlIGluIHlvdXIgc291cmNlXG4gICAqIGNvZGUgYmVmb3JlIHJlZGVwbG95bWVudC5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBubyBidWlsZCBjb21tYW5kXG4gICAqL1xuICByZWFkb25seSBidWlsZENvbW1hbmQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEdsb2IgcGF0dGVybnMgdG8gaW5jbHVkZSBpbiBgY2RrIHdhdGNoYC5cbiAgICpcbiAgICogQGRlZmF1bHQgW11cbiAgICovXG4gIHJlYWRvbmx5IHdhdGNoSW5jbHVkZXM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogR2xvYiBwYXR0ZXJucyB0byBleGNsdWRlIGZyb20gYGNkayB3YXRjaGAuXG4gICAqXG4gICAqIEBkZWZhdWx0IFtdXG4gICAqL1xuICByZWFkb25seSB3YXRjaEV4Y2x1ZGVzPzogc3RyaW5nW107XG59XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgYENka0pzb25gLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENka0NvbmZpZ09wdGlvbnMgZXh0ZW5kcyBDZGtDb25maWdDb21tb25PcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBjb21tYW5kIGxpbmUgdG8gZXhlY3V0ZSBpbiBvcmRlciB0byBzeW50aGVzaXplIHRoZSBDREsgYXBwbGljYXRpb25cbiAgICogKGxhbmd1YWdlIHNwZWNpZmljKS5cbiAgICovXG4gIHJlYWRvbmx5IGFwcDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgY2RrLmpzb24gZmlsZS5cbiAqL1xuZXhwb3J0IGNsYXNzIENka0NvbmZpZyBleHRlbmRzIENvbXBvbmVudCB7XG4gIC8qKlxuICAgKiBSZXByZXNlbnRzIHRoZSBKU09OIGZpbGUuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkganNvbjogSnNvbkZpbGU7XG5cbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIGNkay5vdXQgZGlyZWN0b3J5LlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGNka291dDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIGdsb2IgcGF0dGVybnMgdG8gYmUgaW5jbHVkZWQgYnkgQ0RLLlxuICAgKi9cbiAgcHJpdmF0ZSByZWFkb25seSBfaW5jbHVkZTogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIExpc3Qgb2YgZ2xvYiBwYXR0ZXJucyB0byBiZSBleGNsdWRlZCBieSBDREsuXG4gICAqL1xuICBwcml2YXRlIHJlYWRvbmx5IF9leGNsdWRlOiBzdHJpbmdbXTtcblxuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBQcm9qZWN0LCBvcHRpb25zOiBDZGtDb25maWdPcHRpb25zKSB7XG4gICAgc3VwZXIocHJvamVjdCk7XG5cbiAgICB0aGlzLmNka291dCA9IG9wdGlvbnMuY2Rrb3V0ID8/IFwiY2RrLm91dFwiO1xuICAgIHRoaXMuX2luY2x1ZGUgPSBvcHRpb25zLndhdGNoSW5jbHVkZXMgPz8gW107XG4gICAgdGhpcy5fZXhjbHVkZSA9IG9wdGlvbnMud2F0Y2hFeGNsdWRlcyA/PyBbXTtcblxuICAgIGNvbnN0IGNvbnRleHQ6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7IC4uLm9wdGlvbnMuY29udGV4dCB9O1xuICAgIGNvbnN0IGZmbGFncyA9IG9wdGlvbnMuZmVhdHVyZUZsYWdzID8/IHRydWU7XG4gICAgaWYgKGZmbGFncykge1xuICAgICAgZm9yIChjb25zdCBmbGFnIG9mIEZFQVRVUkVfRkxBR1MpIHtcbiAgICAgICAgY29udGV4dFtmbGFnXSA9IHRydWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5qc29uID0gbmV3IEpzb25GaWxlKHByb2plY3QsIFwiY2RrLmpzb25cIiwge1xuICAgICAgb21pdEVtcHR5OiB0cnVlLFxuICAgICAgb2JqOiB7XG4gICAgICAgIGFwcDogb3B0aW9ucy5hcHAsXG4gICAgICAgIGNvbnRleHQ6IGNvbnRleHQsXG4gICAgICAgIHJlcXVpcmVBcHByb3ZhbDogb3B0aW9ucy5yZXF1aXJlQXBwcm92YWwsXG4gICAgICAgIG91dHB1dDogdGhpcy5jZGtvdXQsXG4gICAgICAgIGJ1aWxkOiBvcHRpb25zLmJ1aWxkQ29tbWFuZCxcbiAgICAgICAgd2F0Y2g6IHtcbiAgICAgICAgICBpbmNsdWRlOiAoKSA9PiB0aGlzLl9pbmNsdWRlLFxuICAgICAgICAgIGV4Y2x1ZGU6ICgpID0+IHRoaXMuX2V4Y2x1ZGUsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgcHJvamVjdC5naXRpZ25vcmUuZXhjbHVkZShgLyR7dGhpcy5jZGtvdXR9L2ApO1xuICAgIHByb2plY3QuZ2l0aWdub3JlLmV4Y2x1ZGUoXCIuY2RrLnN0YWdpbmcvXCIpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBpbmNsdWRlcyB0byBgY2RrLmpzb25gLlxuICAgKiBAcGFyYW0gcGF0dGVybnMgVGhlIGluY2x1ZGVzIHRvIGFkZC5cbiAgICovXG4gIHB1YmxpYyBhZGRJbmNsdWRlcyguLi5wYXR0ZXJuczogc3RyaW5nW10pIHtcbiAgICB0aGlzLl9pbmNsdWRlLnB1c2goLi4ucGF0dGVybnMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBleGNsdWRlcyB0byBgY2RrLmpzb25gLlxuICAgKiBAcGFyYW0gcGF0dGVybnMgVGhlIGV4Y2x1ZGVzIHRvIGFkZC5cbiAgICovXG4gIHB1YmxpYyBhZGRFeGNsdWRlcyguLi5wYXR0ZXJuczogc3RyaW5nW10pIHtcbiAgICB0aGlzLl9leGNsdWRlLnB1c2goLi4ucGF0dGVybnMpO1xuICB9XG5cbiAgLyoqXG4gICAqIExpc3Qgb2YgZ2xvYiBwYXR0ZXJucyB0byBiZSBpbmNsdWRlZCBieSBDREsuXG4gICAqL1xuICBwdWJsaWMgZ2V0IGluY2x1ZGUoKTogc3RyaW5nW10ge1xuICAgIHJldHVybiBbLi4udGhpcy5faW5jbHVkZV07XG4gIH1cblxuICAvKipcbiAgICogTGlzdCBvZiBnbG9iIHBhdHRlcm5zIHRvIGJlIGV4Y2x1ZGVkIGJ5IENESy5cbiAgICovXG4gIHB1YmxpYyBnZXQgZXhjbHVkZSgpOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIFsuLi50aGlzLl9leGNsdWRlXTtcbiAgfVxufVxuXG4vKipcbiAqIFdoaWNoIGFwcHJvdmFsIGlzIHJlcXVpcmVkIHdoZW4gZGVwbG95aW5nIENESyBhcHBzLlxuICovXG5leHBvcnQgZW51bSBBcHByb3ZhbExldmVsIHtcbiAgLyoqXG4gICAqIEFwcHJvdmFsIGlzIG5ldmVyIHJlcXVpcmVkXG4gICAqL1xuICBORVZFUiA9IFwibmV2ZXJcIixcbiAgLyoqXG4gICAqIFJlcXVpcmVzIGFwcHJvdmFsIG9uIGFueSBJQU0gb3Igc2VjdXJpdHktZ3JvdXAtcmVsYXRlZCBjaGFuZ2VcbiAgICovXG4gIEFOWV9DSEFOR0UgPSBcImFueS1jaGFuZ2VcIixcbiAgLyoqXG4gICAqIFJlcXVpcmVzIGFwcHJvdmFsIHdoZW4gSUFNIHN0YXRlbWVudHMgb3IgdHJhZmZpYyBydWxlcyBhcmUgYWRkZWQ7IHJlbW92YWxzIGRvbid0IHJlcXVpcmUgYXBwcm92YWxcbiAgICovXG4gIEJST0FERU5JTkcgPSBcImJyb2FkZW5pbmdcIixcbn1cbiJdfQ==
@@ -31,4 +31,3 @@ export declare class CdkTasks extends Component {
31
31
  readonly watch: Task;
32
32
  constructor(project: Project);
33
33
  }
34
- //# sourceMappingURL=cdk-tasks.d.ts.map
@@ -9,7 +9,6 @@ const component_1 = require("../component");
9
9
  */
10
10
  class CdkTasks extends component_1.Component {
11
11
  constructor(project) {
12
- var _b;
13
12
  super(project);
14
13
  this.synth = project.addTask("synth", {
15
14
  description: "Synthesizes your cdk app into cdk.out",
@@ -32,7 +31,7 @@ class CdkTasks extends component_1.Component {
32
31
  exec: "cdk diff",
33
32
  });
34
33
  // typescript projects already have a "watch" task, we we will repurpose it
35
- const watch = (_b = project.tasks.tryFind("watch")) !== null && _b !== void 0 ? _b : project.addTask("watch");
34
+ const watch = project.tasks.tryFind("watch") ?? project.addTask("watch");
36
35
  watch.reset();
37
36
  watch.description =
38
37
  "Watches changes in your source code and rebuilds and deploys to the current account";
@@ -46,5 +45,5 @@ class CdkTasks extends component_1.Component {
46
45
  }
47
46
  exports.CdkTasks = CdkTasks;
48
47
  _a = JSII_RTTI_SYMBOL_1;
49
- CdkTasks[_a] = { fqn: "projen.awscdk.CdkTasks", version: "0.58.1" };
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RrLXRhc2tzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2F3c2Nkay9jZGstdGFza3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw0Q0FBeUM7QUFJekM7O0dBRUc7QUFDSCxNQUFhLFFBQVMsU0FBUSxxQkFBUztJQStCckMsWUFBWSxPQUFnQjs7UUFDMUIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRWYsSUFBSSxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRTtZQUNwQyxXQUFXLEVBQUUsdUNBQXVDO1lBQ3BELElBQUksRUFBRSxXQUFXO1NBQ2xCLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxXQUFXLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxjQUFjLEVBQUU7WUFDakQsV0FBVyxFQUNULG9HQUFvRztZQUN0RyxJQUFJLEVBQUUsY0FBYztTQUNyQixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFO1lBQ3RDLFdBQVcsRUFBRSx1Q0FBdUM7WUFDcEQsSUFBSSxFQUFFLFlBQVk7U0FDbkIsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRTtZQUN4QyxXQUFXLEVBQUUsd0NBQXdDO1lBQ3JELElBQUksRUFBRSxhQUFhO1NBQ3BCLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxJQUFJLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUU7WUFDbEMsV0FBVyxFQUFFLG9EQUFvRDtZQUNqRSxJQUFJLEVBQUUsVUFBVTtTQUNqQixDQUFDLENBQUM7UUFFSCwyRUFBMkU7UUFDM0UsTUFBTSxLQUFLLFNBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLG1DQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFekUsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2QsS0FBSyxDQUFDLFdBQVc7WUFDZixxRkFBcUYsQ0FBQztRQUV4RixpRUFBaUU7UUFDakUsa0RBQWtEO1FBQ2xELEtBQUssQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsQ0FBQztRQUVuQyw0QkFBNEI7UUFDNUIsS0FBSyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUV4QixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztJQUNyQixDQUFDOztBQTNFSCw0QkE0RUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tIFwiLi4vY29tcG9uZW50XCI7XG5pbXBvcnQgeyBQcm9qZWN0IH0gZnJvbSBcIi4uL3Byb2plY3RcIjtcbmltcG9ydCB7IFRhc2sgfSBmcm9tIFwiLi4vdGFza1wiO1xuXG4vKipcbiAqIEFkZHMgc3RhbmRhcmQgQVdTIENESyB0YXNrcyB0byB5b3VyIHByb2plY3QuXG4gKi9cbmV4cG9ydCBjbGFzcyBDZGtUYXNrcyBleHRlbmRzIENvbXBvbmVudCB7XG4gIC8qKlxuICAgKiBTeW50aGVzaXplcyB5b3VyIGFwcC5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBzeW50aDogVGFzaztcblxuICAvKipcbiAgICogU3ludGhlc2l6ZXMgeW91ciBhcHAgYW5kIHN1cHByZXNzZXMgc3Rkb3V0LlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHN5bnRoU2lsZW50OiBUYXNrO1xuXG4gIC8qKlxuICAgKiBEZXBsb3lzIHlvdXIgYXBwLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGRlcGxveTogVGFzaztcblxuICAvKipcbiAgICogRGVzdHJveXMgYWxsIHRoZSBzdGFja3MuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgZGVzdHJveTogVGFzaztcblxuICAvKipcbiAgICogRGlmZiBhZ2FpbnN0IHByb2R1Y3Rpb24uXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgZGlmZjogVGFzaztcblxuICAvKipcbiAgICogV2F0Y2ggdGFzay5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSB3YXRjaDogVGFzaztcblxuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBQcm9qZWN0KSB7XG4gICAgc3VwZXIocHJvamVjdCk7XG5cbiAgICB0aGlzLnN5bnRoID0gcHJvamVjdC5hZGRUYXNrKFwic3ludGhcIiwge1xuICAgICAgZGVzY3JpcHRpb246IFwiU3ludGhlc2l6ZXMgeW91ciBjZGsgYXBwIGludG8gY2RrLm91dFwiLFxuICAgICAgZXhlYzogXCJjZGsgc3ludGhcIixcbiAgICB9KTtcblxuICAgIHRoaXMuc3ludGhTaWxlbnQgPSBwcm9qZWN0LmFkZFRhc2soXCJzeW50aDpzaWxlbnRcIiwge1xuICAgICAgZGVzY3JpcHRpb246XG4gICAgICAgICdTeW50aGVzaXplcyB5b3VyIGNkayBhcHAgaW50byBjZGsub3V0IGFuZCBzdXBwcmVzc2VzIHRoZSB0ZW1wbGF0ZSBpbiBzdGRvdXQgKHBhcnQgb2YgXCJ5YXJuIGJ1aWxkXCIpJyxcbiAgICAgIGV4ZWM6IFwiY2RrIHN5bnRoIC1xXCIsXG4gICAgfSk7XG5cbiAgICB0aGlzLmRlcGxveSA9IHByb2plY3QuYWRkVGFzayhcImRlcGxveVwiLCB7XG4gICAgICBkZXNjcmlwdGlvbjogXCJEZXBsb3lzIHlvdXIgQ0RLIGFwcCB0byB0aGUgQVdTIGNsb3VkXCIsXG4gICAgICBleGVjOiBcImNkayBkZXBsb3lcIixcbiAgICB9KTtcblxuICAgIHRoaXMuZGVzdHJveSA9IHByb2plY3QuYWRkVGFzayhcImRlc3Ryb3lcIiwge1xuICAgICAgZGVzY3JpcHRpb246IFwiRGVzdHJveXMgeW91ciBjZGsgYXBwIGluIHRoZSBBV1MgY2xvdWRcIixcbiAgICAgIGV4ZWM6IFwiY2RrIGRlc3Ryb3lcIixcbiAgICB9KTtcblxuICAgIHRoaXMuZGlmZiA9IHByb2plY3QuYWRkVGFzayhcImRpZmZcIiwge1xuICAgICAgZGVzY3JpcHRpb246IFwiRGlmZnMgdGhlIGN1cnJlbnRseSBkZXBsb3llZCBhcHAgYWdhaW5zdCB5b3VyIGNvZGVcIixcbiAgICAgIGV4ZWM6IFwiY2RrIGRpZmZcIixcbiAgICB9KTtcblxuICAgIC8vIHR5cGVzY3JpcHQgcHJvamVjdHMgYWxyZWFkeSBoYXZlIGEgXCJ3YXRjaFwiIHRhc2ssIHdlIHdlIHdpbGwgcmVwdXJwb3NlIGl0XG4gICAgY29uc3Qgd2F0Y2ggPSBwcm9qZWN0LnRhc2tzLnRyeUZpbmQoXCJ3YXRjaFwiKSA/PyBwcm9qZWN0LmFkZFRhc2soXCJ3YXRjaFwiKTtcblxuICAgIHdhdGNoLnJlc2V0KCk7XG4gICAgd2F0Y2guZGVzY3JpcHRpb24gPVxuICAgICAgXCJXYXRjaGVzIGNoYW5nZXMgaW4geW91ciBzb3VyY2UgY29kZSBhbmQgcmVidWlsZHMgYW5kIGRlcGxveXMgdG8gdGhlIGN1cnJlbnQgYWNjb3VudFwiO1xuXG4gICAgLy8gZGVwbG95IGZpcnN0IGJlY2F1c2Ugc3VycHJpc2luZ2x5IHdhdGNoIGlzIG5vdCBkZXBsb3lpbmcgZmlyc3RcbiAgICAvLyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL2F3cy9hd3MtY2RrL2lzc3Vlcy8xNzc3NlxuICAgIHdhdGNoLmV4ZWMoXCJjZGsgZGVwbG95IC0taG90c3dhcFwiKTtcblxuICAgIC8vIG5vdyB3ZSBhcmUgcmVhZHkgdG8gd2F0Y2hcbiAgICB3YXRjaC5leGVjKFwiY2RrIHdhdGNoXCIpO1xuXG4gICAgdGhpcy53YXRjaCA9IHdhdGNoO1xuICB9XG59XG4iXX0=
48
+ CdkTasks[_a] = { fqn: "projen.awscdk.CdkTasks", version: "0.58.4" };
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RrLXRhc2tzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2F3c2Nkay9jZGstdGFza3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw0Q0FBeUM7QUFJekM7O0dBRUc7QUFDSCxNQUFhLFFBQVMsU0FBUSxxQkFBUztJQStCckMsWUFBWSxPQUFnQjtRQUMxQixLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFZixJQUFJLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFO1lBQ3BDLFdBQVcsRUFBRSx1Q0FBdUM7WUFDcEQsSUFBSSxFQUFFLFdBQVc7U0FDbEIsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLGNBQWMsRUFBRTtZQUNqRCxXQUFXLEVBQ1Qsb0dBQW9HO1lBQ3RHLElBQUksRUFBRSxjQUFjO1NBQ3JCLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxNQUFNLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUU7WUFDdEMsV0FBVyxFQUFFLHVDQUF1QztZQUNwRCxJQUFJLEVBQUUsWUFBWTtTQUNuQixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFO1lBQ3hDLFdBQVcsRUFBRSx3Q0FBd0M7WUFDckQsSUFBSSxFQUFFLGFBQWE7U0FDcEIsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLElBQUksR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRTtZQUNsQyxXQUFXLEVBQUUsb0RBQW9EO1lBQ2pFLElBQUksRUFBRSxVQUFVO1NBQ2pCLENBQUMsQ0FBQztRQUVILDJFQUEyRTtRQUMzRSxNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRXpFLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNkLEtBQUssQ0FBQyxXQUFXO1lBQ2YscUZBQXFGLENBQUM7UUFFeEYsaUVBQWlFO1FBQ2pFLGtEQUFrRDtRQUNsRCxLQUFLLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLENBQUM7UUFFbkMsNEJBQTRCO1FBQzVCLEtBQUssQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFFeEIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDckIsQ0FBQzs7QUEzRUgsNEJBNEVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSBcIi4uL2NvbXBvbmVudFwiO1xuaW1wb3J0IHsgUHJvamVjdCB9IGZyb20gXCIuLi9wcm9qZWN0XCI7XG5pbXBvcnQgeyBUYXNrIH0gZnJvbSBcIi4uL3Rhc2tcIjtcblxuLyoqXG4gKiBBZGRzIHN0YW5kYXJkIEFXUyBDREsgdGFza3MgdG8geW91ciBwcm9qZWN0LlxuICovXG5leHBvcnQgY2xhc3MgQ2RrVGFza3MgZXh0ZW5kcyBDb21wb25lbnQge1xuICAvKipcbiAgICogU3ludGhlc2l6ZXMgeW91ciBhcHAuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgc3ludGg6IFRhc2s7XG5cbiAgLyoqXG4gICAqIFN5bnRoZXNpemVzIHlvdXIgYXBwIGFuZCBzdXBwcmVzc2VzIHN0ZG91dC5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBzeW50aFNpbGVudDogVGFzaztcblxuICAvKipcbiAgICogRGVwbG95cyB5b3VyIGFwcC5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBkZXBsb3k6IFRhc2s7XG5cbiAgLyoqXG4gICAqIERlc3Ryb3lzIGFsbCB0aGUgc3RhY2tzLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGRlc3Ryb3k6IFRhc2s7XG5cbiAgLyoqXG4gICAqIERpZmYgYWdhaW5zdCBwcm9kdWN0aW9uLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGRpZmY6IFRhc2s7XG5cbiAgLyoqXG4gICAqIFdhdGNoIHRhc2suXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgd2F0Y2g6IFRhc2s7XG5cbiAgY29uc3RydWN0b3IocHJvamVjdDogUHJvamVjdCkge1xuICAgIHN1cGVyKHByb2plY3QpO1xuXG4gICAgdGhpcy5zeW50aCA9IHByb2plY3QuYWRkVGFzayhcInN5bnRoXCIsIHtcbiAgICAgIGRlc2NyaXB0aW9uOiBcIlN5bnRoZXNpemVzIHlvdXIgY2RrIGFwcCBpbnRvIGNkay5vdXRcIixcbiAgICAgIGV4ZWM6IFwiY2RrIHN5bnRoXCIsXG4gICAgfSk7XG5cbiAgICB0aGlzLnN5bnRoU2lsZW50ID0gcHJvamVjdC5hZGRUYXNrKFwic3ludGg6c2lsZW50XCIsIHtcbiAgICAgIGRlc2NyaXB0aW9uOlxuICAgICAgICAnU3ludGhlc2l6ZXMgeW91ciBjZGsgYXBwIGludG8gY2RrLm91dCBhbmQgc3VwcHJlc3NlcyB0aGUgdGVtcGxhdGUgaW4gc3Rkb3V0IChwYXJ0IG9mIFwieWFybiBidWlsZFwiKScsXG4gICAgICBleGVjOiBcImNkayBzeW50aCAtcVwiLFxuICAgIH0pO1xuXG4gICAgdGhpcy5kZXBsb3kgPSBwcm9qZWN0LmFkZFRhc2soXCJkZXBsb3lcIiwge1xuICAgICAgZGVzY3JpcHRpb246IFwiRGVwbG95cyB5b3VyIENESyBhcHAgdG8gdGhlIEFXUyBjbG91ZFwiLFxuICAgICAgZXhlYzogXCJjZGsgZGVwbG95XCIsXG4gICAgfSk7XG5cbiAgICB0aGlzLmRlc3Ryb3kgPSBwcm9qZWN0LmFkZFRhc2soXCJkZXN0cm95XCIsIHtcbiAgICAgIGRlc2NyaXB0aW9uOiBcIkRlc3Ryb3lzIHlvdXIgY2RrIGFwcCBpbiB0aGUgQVdTIGNsb3VkXCIsXG4gICAgICBleGVjOiBcImNkayBkZXN0cm95XCIsXG4gICAgfSk7XG5cbiAgICB0aGlzLmRpZmYgPSBwcm9qZWN0LmFkZFRhc2soXCJkaWZmXCIsIHtcbiAgICAgIGRlc2NyaXB0aW9uOiBcIkRpZmZzIHRoZSBjdXJyZW50bHkgZGVwbG95ZWQgYXBwIGFnYWluc3QgeW91ciBjb2RlXCIsXG4gICAgICBleGVjOiBcImNkayBkaWZmXCIsXG4gICAgfSk7XG5cbiAgICAvLyB0eXBlc2NyaXB0IHByb2plY3RzIGFscmVhZHkgaGF2ZSBhIFwid2F0Y2hcIiB0YXNrLCB3ZSB3ZSB3aWxsIHJlcHVycG9zZSBpdFxuICAgIGNvbnN0IHdhdGNoID0gcHJvamVjdC50YXNrcy50cnlGaW5kKFwid2F0Y2hcIikgPz8gcHJvamVjdC5hZGRUYXNrKFwid2F0Y2hcIik7XG5cbiAgICB3YXRjaC5yZXNldCgpO1xuICAgIHdhdGNoLmRlc2NyaXB0aW9uID1cbiAgICAgIFwiV2F0Y2hlcyBjaGFuZ2VzIGluIHlvdXIgc291cmNlIGNvZGUgYW5kIHJlYnVpbGRzIGFuZCBkZXBsb3lzIHRvIHRoZSBjdXJyZW50IGFjY291bnRcIjtcblxuICAgIC8vIGRlcGxveSBmaXJzdCBiZWNhdXNlIHN1cnByaXNpbmdseSB3YXRjaCBpcyBub3QgZGVwbG95aW5nIGZpcnN0XG4gICAgLy8gc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9hd3MvYXdzLWNkay9pc3N1ZXMvMTc3NzZcbiAgICB3YXRjaC5leGVjKFwiY2RrIGRlcGxveSAtLWhvdHN3YXBcIik7XG5cbiAgICAvLyBub3cgd2UgYXJlIHJlYWR5IHRvIHdhdGNoXG4gICAgd2F0Y2guZXhlYyhcImNkayB3YXRjaFwiKTtcblxuICAgIHRoaXMud2F0Y2ggPSB3YXRjaDtcbiAgfVxufVxuIl19
@@ -11,4 +11,3 @@ export * from "./cdk-tasks";
11
11
  export * from "./integration-test";
12
12
  export * from "./lambda-function";
13
13
  export * from "./lambda-extension";
14
- //# sourceMappingURL=index.d.ts.map
@@ -44,4 +44,3 @@ export declare class IntegrationTest extends IntegrationTestBase {
44
44
  readonly watchTask: Task;
45
45
  constructor(project: Project, options: IntegrationTestOptions);
46
46
  }
47
- //# sourceMappingURL=integration-test.d.ts.map
@@ -12,7 +12,6 @@ const internal_1 = require("./internal");
12
12
  */
13
13
  class IntegrationTest extends cdk_1.IntegrationTestBase {
14
14
  constructor(project, options) {
15
- var _b, _c, _d;
16
15
  super(project, options);
17
16
  if (!project.deps.tryGetDependency("aws-cdk")) {
18
17
  project.deps.addDependency(`aws-cdk@^${options.cdkDeps.cdkMajorVersion}`, dependencies_1.DependencyType.BUILD);
@@ -29,7 +28,7 @@ class IntegrationTest extends cdk_1.IntegrationTestBase {
29
28
  // don't inject cloudformation metadata into template
30
29
  "--no-asset-metadata",
31
30
  ];
32
- const pathMetadata = (_b = options.pathMetadata) !== null && _b !== void 0 ? _b : false;
31
+ const pathMetadata = options.pathMetadata ?? false;
33
32
  if (!pathMetadata) {
34
33
  opts.push("--no-path-metadata");
35
34
  }
@@ -45,7 +44,7 @@ class IntegrationTest extends cdk_1.IntegrationTestBase {
45
44
  }
46
45
  const cdkopts = opts.join(" ");
47
46
  // Determine which stacks to deploy
48
- const stacks = (_c = options.stacks) !== null && _c !== void 0 ? _c : ["**"];
47
+ const stacks = options.stacks ?? ["**"];
49
48
  const stackOpts = stacks.map((stack) => `'${stack}'`).join(" ");
50
49
  this.deployTask.exec(`rm -fr ${deployDir}`);
51
50
  this.deployTask.exec(`cdk deploy ${cdkopts} ${stackOpts} --require-approval=never -o ${deployDir}`);
@@ -60,7 +59,7 @@ class IntegrationTest extends cdk_1.IntegrationTestBase {
60
59
  description: `destroy integration test '${this.name}'`,
61
60
  exec: `cdk destroy --app ${this.snapshotDir} ${stackOpts} --no-version-reporting`,
62
61
  });
63
- const destroyAfterDeploy = (_d = options.destroyAfterDeploy) !== null && _d !== void 0 ? _d : true;
62
+ const destroyAfterDeploy = options.destroyAfterDeploy ?? true;
64
63
  if (destroyAfterDeploy) {
65
64
  this.deployTask.spawn(this.destroyTask);
66
65
  }
@@ -77,5 +76,5 @@ class IntegrationTest extends cdk_1.IntegrationTestBase {
77
76
  }
78
77
  exports.IntegrationTest = IntegrationTest;
79
78
  _a = JSII_RTTI_SYMBOL_1;
80
- IntegrationTest[_a] = { fqn: "projen.awscdk.IntegrationTest", version: "0.58.1" };
81
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZWdyYXRpb24tdGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hd3NjZGsvaW50ZWdyYXRpb24tdGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLCtCQUE0QjtBQUM1QixnQ0FBeUU7QUFDekUsa0RBQWlEO0FBSWpELHlDQUEyQztBQW9DM0M7O0dBRUc7QUFDSCxNQUFhLGVBQWdCLFNBQVEseUJBQW1CO0lBV3RELFlBQVksT0FBZ0IsRUFBRSxPQUErQjs7UUFDM0QsS0FBSyxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztRQUV4QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUM3QyxPQUFPLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FDeEIsWUFBWSxPQUFPLENBQUMsT0FBTyxDQUFDLGVBQWUsRUFBRSxFQUM3Qyw2QkFBYyxDQUFDLEtBQUssQ0FDckIsQ0FBQztTQUNIO1FBRUQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLEVBQUU7WUFDN0MsT0FBTyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxFQUFFLDZCQUFjLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDN0Q7UUFFRCxNQUFNLFNBQVMsR0FBRyxXQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3RELE1BQU0sU0FBUyxHQUFHLFdBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLGdCQUFnQixDQUFDLENBQUM7UUFDdEQsTUFBTSxHQUFHLEdBQUcsY0FBYyxPQUFPLENBQUMsWUFBWSxJQUFJLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUV2RSxNQUFNLElBQUksR0FBRztZQUNYLFVBQVUsR0FBRyxHQUFHO1lBQ2hCLHdCQUF3QjtZQUN4QixxREFBcUQ7WUFDckQscUJBQXFCO1NB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QUksQ0FBQyxXQUNQLEtBQUssU0FBUyxHQUFHLENBQ2xCLENBQUM7UUFFRiwyQ0FBMkM7UUFDM0MsS0FBSyxNQUFNLENBQUMsSUFBSSxPQUFPLEVBQUU7WUFDdkIsT0FBTyxDQUFDLFlBQVksQ0FBQyxHQUFHLElBQUksQ0FBQyxXQUFXLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUNqRCxPQUFPLENBQUMsWUFBWSxDQUFDLEdBQUcsSUFBSSxDQUFDLFdBQVcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsb0JBQW9CO1NBQzFFO0lBQ0gsQ0FBQzs7QUFyR0gsMENBc0dDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgam9pbiB9IGZyb20gXCJwYXRoXCI7XG5pbXBvcnQgeyBJbnRlZ3JhdGlvblRlc3RCYXNlLCBJbnRlZ3JhdGlvblRlc3RCYXNlT3B0aW9ucyB9IGZyb20gXCIuLi9jZGtcIjtcbmltcG9ydCB7IERlcGVuZGVuY3lUeXBlIH0gZnJvbSBcIi4uL2RlcGVuZGVuY2llc1wiO1xuaW1wb3J0IHsgUHJvamVjdCB9IGZyb20gXCIuLi9wcm9qZWN0XCI7XG5pbXBvcnQgeyBUYXNrIH0gZnJvbSBcIi4uL3Rhc2tcIjtcbmltcG9ydCB7IEF3c0Nka0RlcHMgfSBmcm9tIFwiLi9hd3NjZGstZGVwc1wiO1xuaW1wb3J0IHsgRkVBVFVSRV9GTEFHUyB9IGZyb20gXCIuL2ludGVybmFsXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSW50ZWdyYXRpb25UZXN0Q29tbW9uT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBEZXN0cm95IHRoZSB0ZXN0IGFwcCBhZnRlciBhIHN1Y2Nlc3NmdWwgZGVwbG95bWVudC4gSWYgZGlzYWJsZWQsIGxlYXZlcyB0aGVcbiAgICogYXBwIGRlcGxveWVkIGluIHRoZSBkZXYgYWNjb3VudC5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzdHJveUFmdGVyRGVwbG95PzogYm9vbGVhbjtcblxuICAvKipcbiAgICogRW5hYmxlcyBwYXRoIG1ldGFkYXRhLCBhZGRpbmcgYGF3czpjZGs6cGF0aGAsIHdpdGggdGhlIGRlZmluaW5nIGNvbnN0cnVjdCdzXG4gICAqIHBhdGgsIHRvIHRoZSBDbG91ZEZvcm1hdGlvbiBtZXRhZGF0YSBmb3IgZWFjaCBzeW50aGVzaXplZCByZXNvdXJjZS5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IHBhdGhNZXRhZGF0YT86IGJvb2xlYW47XG59XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgYEludGVncmF0aW9uVGVzdGAuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSW50ZWdyYXRpb25UZXN0T3B0aW9uc1xuICBleHRlbmRzIEludGVncmF0aW9uVGVzdENvbW1vbk9wdGlvbnMsXG4gICAgSW50ZWdyYXRpb25UZXN0QmFzZU9wdGlvbnMge1xuICAvKipcbiAgICogQSBsaXN0IG9mIHN0YWNrcyB3aXRoaW4gdGhlIGludGVncmF0aW9uIHRlc3QgdG8gZGVwbG95L2Rlc3Ryb3kuXG4gICAqIEBkZWZhdWx0IFtcIioqXCJdXG4gICAqL1xuICByZWFkb25seSBzdGFja3M/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogQVdTIENESyBkZXBlbmRlbmN5IG1hbmFnZXIuXG4gICAqL1xuICByZWFkb25seSBjZGtEZXBzOiBBd3NDZGtEZXBzO1xufVxuXG4vKipcbiAqIENsb3VkIGludGVncmF0aW9uIHRlc3RzLlxuICovXG5leHBvcnQgY2xhc3MgSW50ZWdyYXRpb25UZXN0IGV4dGVuZHMgSW50ZWdyYXRpb25UZXN0QmFzZSB7XG4gIC8qKlxuICAgKiBEZXN0cm95IHRoZSBpbnRlZ3JhdGlvbiB0ZXN0IHJlc291cmNlc1xuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGRlc3Ryb3lUYXNrOiBUYXNrO1xuXG4gIC8qKlxuICAgKiBUaGUgd2F0Y2ggdGFzay5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSB3YXRjaFRhc2s6IFRhc2s7XG5cbiAgY29uc3RydWN0b3IocHJvamVjdDogUHJvamVjdCwgb3B0aW9uczogSW50ZWdyYXRpb25UZXN0T3B0aW9ucykge1xuICAgIHN1cGVyKHByb2plY3QsIG9wdGlvbnMpO1xuXG4gICAgaWYgKCFwcm9qZWN0LmRlcHMudHJ5R2V0RGVwZW5kZW5jeShcImF3cy1jZGtcIikpIHtcbiAgICAgIHByb2plY3QuZGVwcy5hZGREZXBlbmRlbmN5KFxuICAgICAgICBgYXdzLWNka0BeJHtvcHRpb25zLmNka0RlcHMuY2RrTWFqb3JWZXJzaW9ufWAsXG4gICAgICAgIERlcGVuZGVuY3lUeXBlLkJVSUxEXG4gICAgICApO1xuICAgIH1cblxuICAgIGlmICghcHJvamVjdC5kZXBzLnRyeUdldERlcGVuZGVuY3koXCJ0cy1ub2RlXCIpKSB7XG4gICAgICBwcm9qZWN0LmRlcHMuYWRkRGVwZW5kZW5jeShcInRzLW5vZGVcIiwgRGVwZW5kZW5jeVR5cGUuQlVJTEQpO1xuICAgIH1cblxuICAgIGNvbnN0IGRlcGxveURpciA9IGpvaW4odGhpcy50bXBEaXIsIFwiZGVwbG95LmNkay5vdXRcIik7XG4gICAgY29uc3QgYXNzZXJ0RGlyID0gam9pbih0aGlzLnRtcERpciwgXCJhc3NlcnQuY2RrLm91dFwiKTtcbiAgICBjb25zdCBhcHAgPSBgdHMtbm9kZSAtUCAke29wdGlvbnMudHNjb25maWdQYXRofSAke29wdGlvbnMuZW50cnlwb2ludH1gO1xuXG4gICAgY29uc3Qgb3B0cyA9IFtcbiAgICAgIGAtLWFwcCBcIiR7YXBwfVwiYCxcbiAgICAgIFwiLS1uby12ZXJzaW9uLXJlcG9ydGluZ1wiLFxuICAgICAgLy8gZG9uJ3QgaW5qZWN0IGNsb3VkZm9ybWF0aW9uIG1ldGFkYXRhIGludG8gdGVtcGxhdGVcbiAgICAgIFwiLS1uby1hc3NldC1tZXRhZGF0YVwiLFxuICAgIF07XG5cbiAgICBjb25zdCBwYXRoTWV0YWRhdGEgPSBvcHRpb25zLnBhdGhNZXRhZGF0YSA/PyBmYWxzZTtcbiAgICBpZiAoIXBhdGhNZXRhZGF0YSkge1xuICAgICAgb3B0cy5wdXNoKFwiLS1uby1wYXRoLW1ldGFkYXRhXCIpO1xuICAgIH1cblxuICAgIGlmIChvcHRpb25zLmNka0RlcHMuY2RrTWFqb3JWZXJzaW9uID09PSAxKSB7XG4gICAgICAvLyBhZGQgYWxsIGZlYXR1cmUgZmxhZ3NcbiAgICAgIGNvbnN0IGZlYXR1cmVzID0gW1xuICAgICAgICAuLi5GRUFUVVJFX0ZMQUdTLFxuICAgICAgICBcIkBhd3MtY2RrL2NvcmU6bmV3U3R5bGVTdGFja1N5bnRoZXNpc1wiLCAvLyBzaW1wbGlmaWVzIGFzc2V0IGNvb3JkaW5hdGVzIGluIHN5bnRoIG91dHB1dFxuICAgICAgXTtcblxuICAgICAgZm9yIChjb25zdCBmZWF0dXJlIG9mIGZlYXR1cmVzKSB7XG4gICAgICAgIG9wdHMucHVzaChgLS1jb250ZXh0ICR7ZmVhdHVyZX09dHJ1ZWApO1xuICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IGNka29wdHMgPSBvcHRzLmpvaW4oXCIgXCIpO1xuXG4gICAgLy8gRGV0ZXJtaW5lIHdoaWNoIHN0YWNrcyB0byBkZXBsb3lcbiAgICBjb25zdCBzdGFja3MgPSBvcHRpb25zLnN0YWNrcyA/PyBbXCIqKlwiXTtcbiAgICBjb25zdCBzdGFja09wdHMgPSBzdGFja3MubWFwKChzdGFjaykgPT4gYCcke3N0YWNrfSdgKS5qb2luKFwiIFwiKTtcblxuICAgIHRoaXMuZGVwbG95VGFzay5leGVjKGBybSAtZnIgJHtkZXBsb3lEaXJ9YCk7XG4gICAgdGhpcy5kZXBsb3lUYXNrLmV4ZWMoXG4gICAgICBgY2RrIGRlcGxveSAke2Nka29wdHN9ICR7c3RhY2tPcHRzfSAtLXJlcXVpcmUtYXBwcm92YWw9bmV2ZXIgLW8gJHtkZXBsb3lEaXJ9YFxuICAgICk7XG5cbiAgICAvLyBpZiBkZXBsb3ltZW50IHdhcyBzdWNjZXNzZnVsLCBjb3B5IHRoZSBkZXBsb3kgZGlyIHRvIHRoZSBleHBlY3RlZCBkaXJcbiAgICB0aGlzLmRlcGxveVRhc2suZXhlYyhgcm0gLWZyICR7dGhpcy5zbmFwc2hvdERpcn1gKTtcbiAgICB0aGlzLmRlcGxveVRhc2suZXhlYyhgbXYgJHtkZXBsb3lEaXJ9ICR7dGhpcy5zbmFwc2hvdERpcn1gKTtcblxuICAgIHRoaXMud2F0Y2hUYXNrID0gcHJvamVjdC5hZGRUYXNrKGBpbnRlZzoke3RoaXMubmFtZX06d2F0Y2hgLCB7XG4gICAgICBkZXNjcmlwdGlvbjogYHdhdGNoIGludGVncmF0aW9uIHRlc3QgJyR7dGhpcy5uYW1lfScgKHdpdGhvdXQgdXBkYXRpbmcgc25hcHNob3RzKWAsXG4gICAgICBleGVjOiBgY2RrIHdhdGNoICR7Y2Rrb3B0c30gJHtzdGFja09wdHN9IC1vICR7ZGVwbG95RGlyfWAsXG4gICAgfSk7XG5cbiAgICB0aGlzLmRlc3Ryb3lUYXNrID0gcHJvamVjdC5hZGRUYXNrKGBpbnRlZzoke3RoaXMubmFtZX06ZGVzdHJveWAsIHtcbiAgICAgIGRlc2NyaXB0aW9uOiBgZGVzdHJveSBpbnRlZ3JhdGlvbiB0ZXN0ICcke3RoaXMubmFtZX0nYCxcbiAgICAgIGV4ZWM6IGBjZGsgZGVzdHJveSAtLWFwcCAke3RoaXMuc25hcHNob3REaXJ9ICR7c3RhY2tPcHRzfSAtLW5vLXZlcnNpb24tcmVwb3J0aW5nYCxcbiAgICB9KTtcblxuICAgIGNvbnN0IGRlc3Ryb3lBZnRlckRlcGxveSA9IG9wdGlvbnMuZGVzdHJveUFmdGVyRGVwbG95ID8/IHRydWU7XG4gICAgaWYgKGRlc3Ryb3lBZnRlckRlcGxveSkge1xuICAgICAgdGhpcy5kZXBsb3lUYXNrLnNwYXduKHRoaXMuZGVzdHJveVRhc2spO1xuICAgIH1cblxuICAgIHRoaXMuc25hcHNob3RUYXNrLmV4ZWMoXG4gICAgICBgY2RrIHN5bnRoICR7Y2Rrb3B0c30gLW8gJHt0aGlzLnNuYXBzaG90RGlyfSA+IC9kZXYvbnVsbGBcbiAgICApO1xuXG4gICAgY29uc3QgZXhjbHVkZSA9IFtcImFzc2V0LipcIiwgXCJjZGsub3V0XCIsIFwibWFuaWZlc3QuanNvblwiLCBcInRyZWUuanNvblwiXTtcblxuICAgIHRoaXMuYXNzZXJ0VGFzay5leGVjKGBjZGsgc3ludGggJHtjZGtvcHRzfSAtbyAke2Fzc2VydERpcn0gPiAvZGV2L251bGxgKTtcbiAgICB0aGlzLmFzc2VydFRhc2suZXhlYyhcbiAgICAgIGBkaWZmIC1yICR7ZXhjbHVkZS5tYXAoKHgpID0+IGAteCAke3h9YCkuam9pbihcIiBcIil9ICR7XG4gICAgICAgIHRoaXMuc25hcHNob3REaXJcbiAgICAgIH0vICR7YXNzZXJ0RGlyfS9gXG4gICAgKTtcblxuICAgIC8vIGRvIG5vdCBjb21taXQgYWxsIGZpbGVzIHdlIGFyZSBleGNsdWRpbmdcbiAgICBmb3IgKGNvbnN0IHggb2YgZXhjbHVkZSkge1xuICAgICAgcHJvamVjdC5hZGRHaXRJZ25vcmUoYCR7dGhpcy5zbmFwc2hvdERpcn0vJHt4fWApO1xuICAgICAgcHJvamVjdC5hZGRHaXRJZ25vcmUoYCR7dGhpcy5zbmFwc2hvdERpcn0vKiovJHt4fWApOyAvLyBuZXN0ZWQgYXNzZW1ibGllc1xuICAgIH1cbiAgfVxufVxuIl19
79
+ IntegrationTest[_a] = { fqn: "projen.awscdk.IntegrationTest", version: "0.58.4" };
80
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZWdyYXRpb24tdGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hd3NjZGsvaW50ZWdyYXRpb24tdGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLCtCQUE0QjtBQUM1QixnQ0FBeUU7QUFDekUsa0RBQWlEO0FBSWpELHlDQUEyQztBQW9DM0M7O0dBRUc7QUFDSCxNQUFhLGVBQWdCLFNBQVEseUJBQW1CO0lBV3RELFlBQVksT0FBZ0IsRUFBRSxPQUErQjtRQUMzRCxLQUFLLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBRXhCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxFQUFFO1lBQzdDLE9BQU8sQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUN4QixZQUFZLE9BQU8sQ0FBQyxPQUFPLENBQUMsZUFBZSxFQUFFLEVBQzdDLDZCQUFjLENBQUMsS0FBSyxDQUNyQixDQUFDO1NBQ0g7UUFFRCxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUM3QyxPQUFPLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLEVBQUUsNkJBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUM3RDtRQUVELE1BQU0sU0FBUyxHQUFHLFdBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLGdCQUFnQixDQUFDLENBQUM7UUFDdEQsTUFBTSxTQUFTLEdBQUcsV0FBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztRQUN0RCxNQUFNLEdBQUcsR0FBRyxjQUFjLE9BQU8sQ0FBQyxZQUFZLElBQUksT0FBTyxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBRXZFLE1BQU0sSUFBSSxHQUFHO1lBQ1gsVUFBVSxHQUFHLEdBQUc7WUFDaEIsd0JBQXdCO1lBQ3hCLHFEQUFxRDtZQUNyRCxxQkFBcUI7U0FD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QUFDLFdBQ1AsS0FBSyxTQUFTLEdBQUcsQ0FDbEIsQ0FBQztRQUVGLDJDQUEyQztRQUMzQyxLQUFLLE1BQU0sQ0FBQyxJQUFJLE9BQU8sRUFBRTtZQUN2QixPQUFPLENBQUMsWUFBWSxDQUFDLEdBQUcsSUFBSSxDQUFDLFdBQVcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ2pELE9BQU8sQ0FBQyxZQUFZLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxvQkFBb0I7U0FDMUU7SUFDSCxDQUFDOztBQXJHSCwwQ0FzR0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBqb2luIH0gZnJvbSBcInBhdGhcIjtcbmltcG9ydCB7IEludGVncmF0aW9uVGVzdEJhc2UsIEludGVncmF0aW9uVGVzdEJhc2VPcHRpb25zIH0gZnJvbSBcIi4uL2Nka1wiO1xuaW1wb3J0IHsgRGVwZW5kZW5jeVR5cGUgfSBmcm9tIFwiLi4vZGVwZW5kZW5jaWVzXCI7XG5pbXBvcnQgeyBQcm9qZWN0IH0gZnJvbSBcIi4uL3Byb2plY3RcIjtcbmltcG9ydCB7IFRhc2sgfSBmcm9tIFwiLi4vdGFza1wiO1xuaW1wb3J0IHsgQXdzQ2RrRGVwcyB9IGZyb20gXCIuL2F3c2Nkay1kZXBzXCI7XG5pbXBvcnQgeyBGRUFUVVJFX0ZMQUdTIH0gZnJvbSBcIi4vaW50ZXJuYWxcIjtcblxuZXhwb3J0IGludGVyZmFjZSBJbnRlZ3JhdGlvblRlc3RDb21tb25PcHRpb25zIHtcbiAgLyoqXG4gICAqIERlc3Ryb3kgdGhlIHRlc3QgYXBwIGFmdGVyIGEgc3VjY2Vzc2Z1bCBkZXBsb3ltZW50LiBJZiBkaXNhYmxlZCwgbGVhdmVzIHRoZVxuICAgKiBhcHAgZGVwbG95ZWQgaW4gdGhlIGRldiBhY2NvdW50LlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBkZXN0cm95QWZ0ZXJEZXBsb3k/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBFbmFibGVzIHBhdGggbWV0YWRhdGEsIGFkZGluZyBgYXdzOmNkazpwYXRoYCwgd2l0aCB0aGUgZGVmaW5pbmcgY29uc3RydWN0J3NcbiAgICogcGF0aCwgdG8gdGhlIENsb3VkRm9ybWF0aW9uIG1ldGFkYXRhIGZvciBlYWNoIHN5bnRoZXNpemVkIHJlc291cmNlLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgcGF0aE1ldGFkYXRhPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBPcHRpb25zIGZvciBgSW50ZWdyYXRpb25UZXN0YC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJbnRlZ3JhdGlvblRlc3RPcHRpb25zXG4gIGV4dGVuZHMgSW50ZWdyYXRpb25UZXN0Q29tbW9uT3B0aW9ucyxcbiAgICBJbnRlZ3JhdGlvblRlc3RCYXNlT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBBIGxpc3Qgb2Ygc3RhY2tzIHdpdGhpbiB0aGUgaW50ZWdyYXRpb24gdGVzdCB0byBkZXBsb3kvZGVzdHJveS5cbiAgICogQGRlZmF1bHQgW1wiKipcIl1cbiAgICovXG4gIHJlYWRvbmx5IHN0YWNrcz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBBV1MgQ0RLIGRlcGVuZGVuY3kgbWFuYWdlci5cbiAgICovXG4gIHJlYWRvbmx5IGNka0RlcHM6IEF3c0Nka0RlcHM7XG59XG5cbi8qKlxuICogQ2xvdWQgaW50ZWdyYXRpb24gdGVzdHMuXG4gKi9cbmV4cG9ydCBjbGFzcyBJbnRlZ3JhdGlvblRlc3QgZXh0ZW5kcyBJbnRlZ3JhdGlvblRlc3RCYXNlIHtcbiAgLyoqXG4gICAqIERlc3Ryb3kgdGhlIGludGVncmF0aW9uIHRlc3QgcmVzb3VyY2VzXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgZGVzdHJveVRhc2s6IFRhc2s7XG5cbiAgLyoqXG4gICAqIFRoZSB3YXRjaCB0YXNrLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHdhdGNoVGFzazogVGFzaztcblxuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBQcm9qZWN0LCBvcHRpb25zOiBJbnRlZ3JhdGlvblRlc3RPcHRpb25zKSB7XG4gICAgc3VwZXIocHJvamVjdCwgb3B0aW9ucyk7XG5cbiAgICBpZiAoIXByb2plY3QuZGVwcy50cnlHZXREZXBlbmRlbmN5KFwiYXdzLWNka1wiKSkge1xuICAgICAgcHJvamVjdC5kZXBzLmFkZERlcGVuZGVuY3koXG4gICAgICAgIGBhd3MtY2RrQF4ke29wdGlvbnMuY2RrRGVwcy5jZGtNYWpvclZlcnNpb259YCxcbiAgICAgICAgRGVwZW5kZW5jeVR5cGUuQlVJTERcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKCFwcm9qZWN0LmRlcHMudHJ5R2V0RGVwZW5kZW5jeShcInRzLW5vZGVcIikpIHtcbiAgICAgIHByb2plY3QuZGVwcy5hZGREZXBlbmRlbmN5KFwidHMtbm9kZVwiLCBEZXBlbmRlbmN5VHlwZS5CVUlMRCk7XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95RGlyID0gam9pbih0aGlzLnRtcERpciwgXCJkZXBsb3kuY2RrLm91dFwiKTtcbiAgICBjb25zdCBhc3NlcnREaXIgPSBqb2luKHRoaXMudG1wRGlyLCBcImFzc2VydC5jZGsub3V0XCIpO1xuICAgIGNvbnN0IGFwcCA9IGB0cy1ub2RlIC1QICR7b3B0aW9ucy50c2NvbmZpZ1BhdGh9ICR7b3B0aW9ucy5lbnRyeXBvaW50fWA7XG5cbiAgICBjb25zdCBvcHRzID0gW1xuICAgICAgYC0tYXBwIFwiJHthcHB9XCJgLFxuICAgICAgXCItLW5vLXZlcnNpb24tcmVwb3J0aW5nXCIsXG4gICAgICAvLyBkb24ndCBpbmplY3QgY2xvdWRmb3JtYXRpb24gbWV0YWRhdGEgaW50byB0ZW1wbGF0ZVxuICAgICAgXCItLW5vLWFzc2V0LW1ldGFkYXRhXCIsXG4gICAgXTtcblxuICAgIGNvbnN0IHBhdGhNZXRhZGF0YSA9IG9wdGlvbnMucGF0aE1ldGFkYXRhID8/IGZhbHNlO1xuICAgIGlmICghcGF0aE1ldGFkYXRhKSB7XG4gICAgICBvcHRzLnB1c2goXCItLW5vLXBhdGgtbWV0YWRhdGFcIik7XG4gICAgfVxuXG4gICAgaWYgKG9wdGlvbnMuY2RrRGVwcy5jZGtNYWpvclZlcnNpb24gPT09IDEpIHtcbiAgICAgIC8vIGFkZCBhbGwgZmVhdHVyZSBmbGFnc1xuICAgICAgY29uc3QgZmVhdHVyZXMgPSBbXG4gICAgICAgIC4uLkZFQVRVUkVfRkxBR1MsXG4gICAgICAgIFwiQGF3cy1jZGsvY29yZTpuZXdTdHlsZVN0YWNrU3ludGhlc2lzXCIsIC8vIHNpbXBsaWZpZXMgYXNzZXQgY29vcmRpbmF0ZXMgaW4gc3ludGggb3V0cHV0XG4gICAgICBdO1xuXG4gICAgICBmb3IgKGNvbnN0IGZlYXR1cmUgb2YgZmVhdHVyZXMpIHtcbiAgICAgICAgb3B0cy5wdXNoKGAtLWNvbnRleHQgJHtmZWF0dXJlfT10cnVlYCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgY2Rrb3B0cyA9IG9wdHMuam9pbihcIiBcIik7XG5cbiAgICAvLyBEZXRlcm1pbmUgd2hpY2ggc3RhY2tzIHRvIGRlcGxveVxuICAgIGNvbnN0IHN0YWNrcyA9IG9wdGlvbnMuc3RhY2tzID8/IFtcIioqXCJdO1xuICAgIGNvbnN0IHN0YWNrT3B0cyA9IHN0YWNrcy5tYXAoKHN0YWNrKSA9PiBgJyR7c3RhY2t9J2ApLmpvaW4oXCIgXCIpO1xuXG4gICAgdGhpcy5kZXBsb3lUYXNrLmV4ZWMoYHJtIC1mciAke2RlcGxveURpcn1gKTtcbiAgICB0aGlzLmRlcGxveVRhc2suZXhlYyhcbiAgICAgIGBjZGsgZGVwbG95ICR7Y2Rrb3B0c30gJHtzdGFja09wdHN9IC0tcmVxdWlyZS1hcHByb3ZhbD1uZXZlciAtbyAke2RlcGxveURpcn1gXG4gICAgKTtcblxuICAgIC8vIGlmIGRlcGxveW1lbnQgd2FzIHN1Y2Nlc3NmdWwsIGNvcHkgdGhlIGRlcGxveSBkaXIgdG8gdGhlIGV4cGVjdGVkIGRpclxuICAgIHRoaXMuZGVwbG95VGFzay5leGVjKGBybSAtZnIgJHt0aGlzLnNuYXBzaG90RGlyfWApO1xuICAgIHRoaXMuZGVwbG95VGFzay5leGVjKGBtdiAke2RlcGxveURpcn0gJHt0aGlzLnNuYXBzaG90RGlyfWApO1xuXG4gICAgdGhpcy53YXRjaFRhc2sgPSBwcm9qZWN0LmFkZFRhc2soYGludGVnOiR7dGhpcy5uYW1lfTp3YXRjaGAsIHtcbiAgICAgIGRlc2NyaXB0aW9uOiBgd2F0Y2ggaW50ZWdyYXRpb24gdGVzdCAnJHt0aGlzLm5hbWV9JyAod2l0aG91dCB1cGRhdGluZyBzbmFwc2hvdHMpYCxcbiAgICAgIGV4ZWM6IGBjZGsgd2F0Y2ggJHtjZGtvcHRzfSAke3N0YWNrT3B0c30gLW8gJHtkZXBsb3lEaXJ9YCxcbiAgICB9KTtcblxuICAgIHRoaXMuZGVzdHJveVRhc2sgPSBwcm9qZWN0LmFkZFRhc2soYGludGVnOiR7dGhpcy5uYW1lfTpkZXN0cm95YCwge1xuICAgICAgZGVzY3JpcHRpb246IGBkZXN0cm95IGludGVncmF0aW9uIHRlc3QgJyR7dGhpcy5uYW1lfSdgLFxuICAgICAgZXhlYzogYGNkayBkZXN0cm95IC0tYXBwICR7dGhpcy5zbmFwc2hvdERpcn0gJHtzdGFja09wdHN9IC0tbm8tdmVyc2lvbi1yZXBvcnRpbmdgLFxuICAgIH0pO1xuXG4gICAgY29uc3QgZGVzdHJveUFmdGVyRGVwbG95ID0gb3B0aW9ucy5kZXN0cm95QWZ0ZXJEZXBsb3kgPz8gdHJ1ZTtcbiAgICBpZiAoZGVzdHJveUFmdGVyRGVwbG95KSB7XG4gICAgICB0aGlzLmRlcGxveVRhc2suc3Bhd24odGhpcy5kZXN0cm95VGFzayk7XG4gICAgfVxuXG4gICAgdGhpcy5zbmFwc2hvdFRhc2suZXhlYyhcbiAgICAgIGBjZGsgc3ludGggJHtjZGtvcHRzfSAtbyAke3RoaXMuc25hcHNob3REaXJ9ID4gL2Rldi9udWxsYFxuICAgICk7XG5cbiAgICBjb25zdCBleGNsdWRlID0gW1wiYXNzZXQuKlwiLCBcImNkay5vdXRcIiwgXCJtYW5pZmVzdC5qc29uXCIsIFwidHJlZS5qc29uXCJdO1xuXG4gICAgdGhpcy5hc3NlcnRUYXNrLmV4ZWMoYGNkayBzeW50aCAke2Nka29wdHN9IC1vICR7YXNzZXJ0RGlyfSA+IC9kZXYvbnVsbGApO1xuICAgIHRoaXMuYXNzZXJ0VGFzay5leGVjKFxuICAgICAgYGRpZmYgLXIgJHtleGNsdWRlLm1hcCgoeCkgPT4gYC14ICR7eH1gKS5qb2luKFwiIFwiKX0gJHtcbiAgICAgICAgdGhpcy5zbmFwc2hvdERpclxuICAgICAgfS8gJHthc3NlcnREaXJ9L2BcbiAgICApO1xuXG4gICAgLy8gZG8gbm90IGNvbW1pdCBhbGwgZmlsZXMgd2UgYXJlIGV4Y2x1ZGluZ1xuICAgIGZvciAoY29uc3QgeCBvZiBleGNsdWRlKSB7XG4gICAgICBwcm9qZWN0LmFkZEdpdElnbm9yZShgJHt0aGlzLnNuYXBzaG90RGlyfS8ke3h9YCk7XG4gICAgICBwcm9qZWN0LmFkZEdpdElnbm9yZShgJHt0aGlzLnNuYXBzaG90RGlyfS8qKi8ke3h9YCk7IC8vIG5lc3RlZCBhc3NlbWJsaWVzXG4gICAgfVxuICB9XG59XG4iXX0=
@@ -18,4 +18,3 @@ export declare const TYPESCRIPT_LAMBDA_EXTENSION_EXT = ".lambda-extension.ts";
18
18
  * Converts the given path string to posix if it wasn't already.
19
19
  */
20
20
  export declare function convertToPosixPath(p: string): string;
21
- //# sourceMappingURL=internal.d.ts.map
@@ -66,4 +66,3 @@ export interface LambdaExtensionOptions extends LambdaExtensionCommonOptions {
66
66
  export declare class LambdaExtension extends Component {
67
67
  constructor(project: Project, options: LambdaExtensionOptions);
68
68
  }
69
- //# sourceMappingURL=lambda-extension.d.ts.map
@@ -15,15 +15,14 @@ const lambda_function_1 = require("./lambda-function");
15
15
  */
16
16
  class LambdaExtension extends component_1.Component {
17
17
  constructor(project, options) {
18
- var _b, _c, _d;
19
18
  super(project);
20
19
  const basePath = path_1.join(path_1.dirname(options.entrypoint), path_1.basename(options.entrypoint, internal_1.TYPESCRIPT_LAMBDA_EXTENSION_EXT));
21
- const name = (_b = options.name) !== null && _b !== void 0 ? _b : path_1.basename(basePath);
20
+ const name = options.name ?? path_1.basename(basePath);
22
21
  const bundler = javascript_1.Bundler.of(project);
23
22
  if (!bundler) {
24
23
  throw new Error("No bundler found. Please add a Bundler component to your project.");
25
24
  }
26
- const compatibleRuntimes = (_c = options.compatibleRuntimes) !== null && _c !== void 0 ? _c : [
25
+ const compatibleRuntimes = options.compatibleRuntimes ?? [
27
26
  lambda_function_1.LambdaRuntime.NODEJS_14_X,
28
27
  lambda_function_1.LambdaRuntime.NODEJS_12_X,
29
28
  ];
@@ -35,7 +34,7 @@ class LambdaExtension extends component_1.Component {
35
34
  // Allow extension code to import dev-deps since they are only needed
36
35
  // during bundling
37
36
  const eslint = javascript_1.Eslint.of(project);
38
- eslint === null || eslint === void 0 ? void 0 : eslint.allowDevDeps(options.entrypoint);
37
+ eslint?.allowDevDeps(options.entrypoint);
39
38
  const bundle = bundler.addBundle(options.entrypoint, {
40
39
  platform: bundlerRuntime.esbuildPlatform,
41
40
  target: bundlerRuntime.esbuildTarget,
@@ -47,7 +46,7 @@ class LambdaExtension extends component_1.Component {
47
46
  executable: true,
48
47
  ...options.bundlingOptions,
49
48
  });
50
- const constructFile = (_d = options.constructFile) !== null && _d !== void 0 ? _d : `${basePath}-layer-version.ts`;
49
+ const constructFile = options.constructFile ?? `${basePath}-layer-version.ts`;
51
50
  new LambdaLayerConstruct(project, {
52
51
  constructFile: constructFile,
53
52
  constructName: options.constructName,
@@ -60,14 +59,13 @@ class LambdaExtension extends component_1.Component {
60
59
  }
61
60
  exports.LambdaExtension = LambdaExtension;
62
61
  _a = JSII_RTTI_SYMBOL_1;
63
- LambdaExtension[_a] = { fqn: "projen.awscdk.LambdaExtension", version: "0.58.1" };
62
+ LambdaExtension[_a] = { fqn: "projen.awscdk.LambdaExtension", version: "0.58.4" };
64
63
  class LambdaLayerConstruct extends source_code_1.SourceCode {
65
64
  constructor(project, options) {
66
- var _b;
67
65
  super(project, options.constructFile);
68
66
  const src = this;
69
67
  const cdkDeps = options.cdkDeps;
70
- const constructName = (_b = options.constructName) !== null && _b !== void 0 ? _b : case_1.pascal(path_1.basename(options.constructFile, ".ts"));
68
+ const constructName = options.constructName ?? case_1.pascal(path_1.basename(options.constructFile, ".ts"));
71
69
  const propsType = `${constructName}Props`;
72
70
  const assetDir = path_1.relative(path_1.dirname(options.constructFile), options.assetDir);
73
71
  if (src.marker) {
@@ -120,4 +118,4 @@ function encodeCodeString(value) {
120
118
  const escapedString = json.substring(1, json.length - 1).replace(/'/g, "\\'");
121
119
  return `'${escapedString}'`;
122
120
  }
123
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFtYmRhLWV4dGVuc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hd3NjZGsvbGFtYmRhLWV4dGVuc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLCtCQUF5RDtBQUN6RCwrQkFBOEI7QUFDOUIsNENBQXlDO0FBQ3pDLDhDQUFpRTtBQUVqRSxnREFBNEM7QUFFNUMseUNBR29CO0FBQ3BCLHVEQUFrRDtBQWtFbEQ7O0dBRUc7QUFDSCxNQUFhLGVBQWdCLFNBQVEscUJBQVM7SUFDNUMsWUFBWSxPQUFnQixFQUFFLE9BQStCOztRQUMzRCxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFZixNQUFNLFFBQVEsR0FBRyxXQUFJLENBQ25CLGNBQU8sQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLEVBQzNCLGVBQVEsQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLDBDQUErQixDQUFDLENBQzlELENBQUM7UUFFRixNQUFNLElBQUksU0FBRyxPQUFPLENBQUMsSUFBSSxtQ0FBSSxlQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFaEQsTUFBTSxPQUFPLEdBQUcsb0JBQU8sQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDcEMsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNaLE1BQU0sSUFBSSxLQUFLLENBQ2IsbUVBQW1FLENBQ3BFLENBQUM7U0FDSDtRQUVELE1BQU0sa0JBQWtCLFNBQUcsT0FBTyxDQUFDLGtCQUFrQixtQ0FBSTtZQUN2RCwrQkFBYSxDQUFDLFdBQVc7WUFDekIsK0JBQWEsQ0FBQyxXQUFXO1NBQzFCLENBQUM7UUFFRixJQUFJLGtCQUFrQixDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDbkMsTUFBTSxJQUFJLEtBQUssQ0FBQyx1REFBdUQsQ0FBQyxDQUFDO1NBQzFFO1FBRUQsMkNBQTJDO1FBQzNDLE1BQU0sQ0FBQyxjQUFjLENBQUMsR0FBRyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMs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N0QsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLGdCQUFnQixDQUFDLDZCQUFrQixDQUFDLFFBQVEsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2pFLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNaLEdBQUcsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFakIsR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNmLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDakIsQ0FBQztDQUNGO0FBRUQ7O0dBRUc7QUFDSCxTQUFTLGdCQUFnQixDQUFDLEtBQWE7SUFDckMsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNuQyxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDOUUsT0FBTyxJQUFJLGFBQWEsR0FBRyxDQUFDO0FBQzlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBiYXNlbmFtZSwgZGlybmFtZSwgam9pbiwgcmVsYXRpdmUgfSBmcm9tIFwicGF0aFwiO1xuaW1wb3J0IHsgcGFzY2FsIH0gZnJvbSBcImNhc2VcIjtcbmltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gXCIuLi9jb21wb25lbnRcIjtcbmltcG9ydCB7IEJ1bmRsZXIsIEJ1bmRsaW5nT3B0aW9ucywgRXNsaW50IH0gZnJvbSBcIi4uL2phdmFzY3JpcHRcIjtcbmltcG9ydCB7IFByb2plY3QgfSBmcm9tIFwiLi4vcHJvamVjdFwiO1xuaW1wb3J0IHsgU291cmNlQ29kZSB9IGZyb20gXCIuLi9zb3VyY2UtY29kZVwiO1xuaW1wb3J0IHsgQXdzQ2RrRGVwcyB9IGZyb20gXCIuL2F3c2Nkay1kZXBzXCI7XG5pbXBvcnQge1xuICBjb252ZXJ0VG9Qb3NpeFBhdGgsXG4gIFRZUEVTQ1JJUFRfTEFNQkRBX0VYVEVOU0lPTl9FWFQsXG59IGZyb20gXCIuL2ludGVybmFsXCI7XG5pbXBvcnQgeyBMYW1iZGFSdW50aW1lIH0gZnJvbSBcIi4vbGFtYmRhLWZ1bmN0aW9uXCI7XG5cbi8qKlxuICogQ29tbW9uIG9wdGlvbnMgZm9yIGNyZWF0aW5nIGxhbWJkYSBleHRlbnNpb25zLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIExhbWJkYUV4dGVuc2lvbkNvbW1vbk9wdGlvbnMge1xuICAvKipcbiAgICogVGhlIGV4dGVuc2lvbidzIGNvbXBhdGlibGUgcnVudGltZXMuXG4gICAqL1xuICByZWFkb25seSBjb21wYXRpYmxlUnVudGltZXM/OiBMYW1iZGFSdW50aW1lW107XG5cbiAgLyoqXG4gICAqIEJ1bmRsaW5nIG9wdGlvbnMgZm9yIHRoaXMgQVdTIExhbWJkYSBleHRlbnNpb24uXG4gICAqXG4gICAqIElmIG5vdCBzcGVjaWZpZWQgdGhlIGRlZmF1bHQgYnVuZGxpbmcgb3B0aW9ucyBzcGVjaWZpZWQgZm9yIHRoZSBwcm9qZWN0XG4gICAqIGBCdW5kbGVyYCBpbnN0YW5jZSB3aWxsIGJlIHVzZWQuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gZGVmYXVsdHNcbiAgICovXG4gIHJlYWRvbmx5IGJ1bmRsaW5nT3B0aW9ucz86IEJ1bmRsaW5nT3B0aW9ucztcbn1cblxuLyoqXG4gKiBPcHRpb25zIGZvciBjcmVhdGluZyBsYW1iZGEgZXh0ZW5zaW9ucy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBMYW1iZGFFeHRlbnNpb25PcHRpb25zIGV4dGVuZHMgTGFtYmRhRXh0ZW5zaW9uQ29tbW9uT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoZSBleHRlbnNpb25cbiAgICpcbiAgICogQGRlZmF1bHQgLSBEZXJpdmVkIGZyb20gdGhlIGVudHJ5cG9pbnQgZmlsZW5hbWUuXG4gICAqL1xuICByZWFkb25seSBuYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBIHBhdGggZnJvbSB0aGUgcHJvamVjdCByb290IGRpcmVjdG9yeSB0byBhIFR5cGVTY3JpcHQgZmlsZSB3aGljaCBjb250YWluc1xuICAgKiB0aGUgQVdTIExhbWJkYSBleHRlbnNpb24gZW50cnlwb2ludCAoc3RhbmQtYWxvbmUgc2NyaXB0KS5cbiAgICpcbiAgICogVGhpcyBpcyByZWxhdGl2ZSB0byB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhlIHByb2plY3QuXG4gICAqXG4gICAqIEBleGFtcGxlIFwic3JjL3N1YmRpci9mb28ubGFtYmRhLWV4dGVuc2lvbi50c1wiXG4gICAqL1xuICByZWFkb25seSBlbnRyeXBvaW50OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEFXUyBDREsgZGVwZW5kZW5jeSBtYW5hZ2VyLlxuICAgKi9cbiAgcmVhZG9ubHkgY2RrRGVwczogQXdzQ2RrRGVwcztcblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIGdlbmVyYXRlZCBUeXBlU2NyaXB0IHNvdXJjZSBmaWxlLiBUaGlzIGZpbGUgc2hvdWxkIGFsc28gYmVcbiAgICogdW5kZXIgdGhlIHNvdXJjZSB0cmVlLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIFRoZSBuYW1lIG9mIHRoZSBlbnRyeXBvaW50IGZpbGUsIHdpdGggdGhlIGAtbGF5ZXItdmVyc2lvbi50c2BcbiAgICogc3VmZml4IGluc3RlYWQgb2YgYC5sYW1iZGEtZXh0ZW5zaW9uLnRzYC5cbiAgICovXG4gIHJlYWRvbmx5IGNvbnN0cnVjdEZpbGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBnZW5lcmF0ZWQgYGxhbWJkYS5MYXllclZlcnNpb25gIHN1YmNsYXNzLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIEEgcGFzY2FsIGNhc2VkIHZlcnNpb24gb2YgdGhlIG5hbWUgb2YgdGhlIGVudHJ5cG9pbnQgZmlsZSwgd2l0aFxuICAgKiB0aGUgZXh0ZW5zaW9uIGBMYXllclZlcnNpb25gIChlLmcuIGBBcHBDb25maWdMYXllclZlcnNpb25gKS5cbiAgICovXG4gIHJlYWRvbmx5IGNvbnN0cnVjdE5hbWU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ3JlYXRlIGEgTGFtYmRhIEV4dGVuc2lvblxuICovXG5leHBvcnQgY2xhc3MgTGFtYmRhRXh0ZW5zaW9uIGV4dGVuZHMgQ29tcG9uZW50IHtcbiAgY29uc3RydWN0b3IocHJvamVjdDogUHJvamVjdCwgb3B0aW9uczogTGFtYmRhRXh0ZW5zaW9uT3B0aW9ucykge1xuICAgIHN1cGVyKHByb2plY3QpO1xuXG4gICAgY29uc3QgYmFzZVBhdGggPSBqb2luKFxuICAgICAgZGlybmFtZShvcHRpb25zLmVudHJ5cG9pbnQpLFxuICAgICAgYmFzZW5hbWUob3B0aW9ucy5lbnRyeXBvaW50LCBUWVBFU0NSSVBUX0xBTUJEQV9FWFRFTlNJT05fRVhUKVxuICAgICk7XG5cbiAgICBjb25zdCBuYW1lID0gb3B0aW9ucy5uYW1lID8/IGJhc2VuYW1lKGJhc2VQYXRoKTtcblxuICAgIGNvbnN0IGJ1bmRsZXIgPSBCdW5kbGVyLm9mKHByb2plY3QpO1xuICAgIGlmICghYnVuZGxlcikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBcIk5vIGJ1bmRsZXIgZm91bmQuIFBsZWFzZSBhZGQgYSBCdW5kbGVyIGNvbXBvbmVudCB0byB5b3VyIHByb2plY3QuXCJcbiAgICAgICk7XG4gICAgfVxuXG4gICAgY29uc3QgY29tcGF0aWJsZVJ1bnRpbWVzID0gb3B0aW9ucy5jb21wYXRpYmxlUnVudGltZXMgPz8gW1xuICAgICAgTGFtYmRhUnVudGltZS5OT0RFSlNfMTRfWCxcbiAgICAgIExhbWJkYVJ1bnRpbWUuTk9ERUpTXzEyX1gsXG4gICAgXTtcblxuICAgIGlmIChjb21wYXRpYmxlUnVudGltZXMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJDb21wYXRpYmxlIHJ1bnRpbWVzIG11c3QgaW5jbHVkZSBhdCBsZWFzdCBvbmUgcnVudGltZVwiKTtcbiAgICB9XG5cbiAgICAvLyBVc2UgdGhlIGxvd2VzdCBydW50aW1lIHZlcnNpb24gdG8gYnVuZGxlXG4gICAgY29uc3QgW2J1bmRsZXJSdW50aW1lXSA9IGNvbXBhdGlibGVSdW50aW1lcy5zb3J0KChhLCBiKSA9PlxuICAgICAgYS5mdW5jdGlvblJ1bnRpbWUubG9jYWxlQ29tcGFyZShiLmZ1bmN0aW9uUnVudGltZSlcbiAgICApO1xuXG4gICAgLy8gQWxsb3cgZXh0ZW5zaW9uIGNvZGUgdG8gaW1wb3J0IGRldi1kZXBzIHNpbmNlIHRoZXkgYXJlIG9ubHkgbmVlZGVkXG4gICAgLy8gZHVyaW5nIGJ1bmRsaW5nXG4gICAgY29uc3QgZXNsaW50ID0gRXNsaW50Lm9mKHByb2plY3QpO1xuICAgIGVzbGludD8uYWxsb3dEZXZEZXBzKG9wdGlvbnMuZW50cnlwb2ludCk7XG5cbiAgICBjb25zdCBidW5kbGUgPSBidW5kbGVyLmFkZEJ1bmRsZShvcHRpb25zLmVudHJ5cG9pbnQsIHtcbiAgICAgIHBsYXRmb3JtOiBidW5kbGVyUnVudGltZS5lc2J1aWxkUGxhdGZvcm0sXG4gICAgICB0YXJnZXQ6IGJ1bmRsZXJSdW50aW1lLmVzYnVpbGRUYXJnZXQsXG4gICAgICBleHRlcm5hbHM6IFtcImF3cy1zZGtcIl0sXG4gICAgICBvdXRmaWxlOiBgZXh0ZW5zaW9ucy8ke25hbWV9YCxcbiAgICAgIC8vIE1ha2UgdGhlIG91dHB1dCBleGVjdXRhYmxlIGJlY2F1c2UgTGFtYmRhIGV4cGVjdHMgdG8gcnVuXG4gICAgICAvLyBleHRlbnNpb25zIGFzIHN0YW5kLWFsb25lIHByb2dyYW1zIGFsb25nc2lkZSB0aGUgbWFpbiBsYW1iZGFcbiAgICAgIC8vIHByb2Nlc3MuXG4gICAgICBleGVjdXRhYmxlOiB0cnVlLFxuICAgICAgLi4ub3B0aW9ucy5idW5kbGluZ09wdGlvbnMsXG4gICAgfSk7XG5cbiAgICBjb25zdCBjb25zdHJ1Y3RGaWxlID1cbiAgICAgIG9wdGlvbnMuY29uc3RydWN0RmlsZSA/PyBgJHtiYXNlUGF0aH0tbGF5ZXItdmVyc2lvbi50c2A7XG5cbiAgICBuZXcgTGFtYmRhTGF5ZXJDb25zdHJ1Y3QocHJvamVjdCwge1xuICAgICAgY29uc3RydWN0RmlsZTogY29uc3RydWN0RmlsZSxcbiAgICAgIGNvbnN0cnVjdE5hbWU6IG9wdGlvbnMuY29uc3RydWN0TmFtZSxcbiAgICAgIGFzc2V0RGlyOiBidW5kbGUub3V0ZGlyLFxuICAgICAgY29tcGF0aWJsZVJ1bnRpbWVzOiBjb21wYXRpYmxlUnVudGltZXMsXG4gICAgICBkZXNjcmlwdGlvbjogYFByb3ZpZGVzIGEgTGFtYmRhIEV4dGVuc2lvbiBcXGAke25hbWV9XFxgIGZyb20gJHtjb252ZXJ0VG9Qb3NpeFBhdGgoXG4gICAgICAgIG9wdGlvbnMuZW50cnlwb2ludFxuICAgICAgKX1gLFxuICAgICAgY2RrRGVwczogb3B0aW9ucy5jZGtEZXBzLFxuICAgIH0pO1xuICB9XG59XG5cbmludGVyZmFjZSBMYW1iZGFMYXllckNvbnN0cnVjdE9wdGlvbnMge1xuICByZWFkb25seSBhc3NldERpcjogc3RyaW5nO1xuICByZWFkb25seSBjb21wYXRpYmxlUnVudGltZXM6IExhbWJkYVJ1bnRpbWVbXTtcbiAgcmVhZG9ubHkgZGVzY3JpcHRpb246IHN0cmluZztcbiAgcmVhZG9ubHkgY29uc3RydWN0RmlsZTogc3RyaW5nO1xuICByZWFkb25seSBjb25zdHJ1Y3ROYW1lPzogc3RyaW5nO1xuICByZWFkb25seSBjZGtEZXBzOiBBd3NDZGtEZXBzO1xufVxuXG5jbGFzcyBMYW1iZGFMYXllckNvbnN0cnVjdCBleHRlbmRzIFNvdXJjZUNvZGUge1xuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBQcm9qZWN0LCBvcHRpb25zOiBMYW1iZGFMYXllckNvbnN0cnVjdE9wdGlvbnMpIHtcbiAgICBzdXBlcihwcm9qZWN0LCBvcHRpb25zLmNvbnN0cnVjdEZpbGUpO1xuXG4gICAgY29uc3Qgc3JjID0gdGhpcztcbiAgICBjb25zdCBjZGtEZXBzID0gb3B0aW9ucy5jZGtEZXBzO1xuXG4gICAgY29uc3QgY29uc3RydWN0TmFtZSA9XG4gICAgICBvcHRpb25zLmNvbnN0cnVjdE5hbWUgPz8gcGFzY2FsKGJhc2VuYW1lKG9wdGlvbnMuY29uc3RydWN0RmlsZSwgXCIudHNcIikpO1xuICAgIGNvbnN0IHByb3BzVHlwZSA9IGAke2NvbnN0cnVjdE5hbWV9UHJvcHNgO1xuXG4gICAgY29uc3QgYXNzZXREaXIgPSByZWxhdGl2ZShkaXJuYW1lKG9wdGlvbnMuY29uc3RydWN0RmlsZSksIG9wdGlvbnMuYXNzZXREaXIpO1xuXG4gICAgaWYgKHNyYy5tYXJrZXIpIHtcbiAgICAgIHNyYy5saW5lKGAvLyAke3NyYy5tYXJrZXJ9YCk7XG4gICAgfVxuICAgIHNyYy5saW5lKFwiaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoJztcIik7XG5cbiAgICBpZiAoY2RrRGVwcy5jZGtNYWpvclZlcnNpb24gPT09IDEpIHtcbiAgICAgIHNyYy5saW5lKFwiaW1wb3J0ICogYXMgbGFtYmRhIGZyb20gJ0Bhd3MtY2RrL2F3cy1sYW1iZGEnO1wiKTtcbiAgICAgIHNyYy5saW5lKFwiaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnQGF3cy1jZGsvY29yZSc7XCIpO1xuICAgICAgY2RrRGVwcy5hZGRWMURlcGVuZGVuY2llcyhcIkBhd3MtY2RrL2F3cy1sYW1iZGFcIik7XG4gICAgICBjZGtEZXBzLmFkZFYxRGVwZW5kZW5jaWVzKFwiQGF3cy1jZGsvY29yZVwiKTtcbiAgICB9IGVsc2Uge1xuICAgICAgc3JjLmxpbmUoXCJpbXBvcnQgKiBhcyBsYW1iZGEgZnJvbSAnYXdzLWNkay1saWIvYXdzLWxhbWJkYSc7XCIpO1xuICAgICAgc3JjLmxpbmUoXCJpbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcIik7XG4gICAgfVxuXG4gICAgc3JjLmxpbmUoKTtcblxuICAgIHNyYy5saW5lKFwiLyoqXCIpO1xuICAgIHNyYy5saW5lKGAgKiBQcm9wcyBmb3IgJHtjb25zdHJ1Y3ROYW1lfWApO1xuICAgIHNyYy5saW5lKFwiICovXCIpO1xuICAgIHNyYy5vcGVuKFxuICAgICAgYGV4cG9ydCBpbnRlcmZhY2UgJHtwcm9wc1R5cGV9IGV4dGVuZHMgbGFtYmRhLkxheWVyVmVyc2lvbk9wdGlvbnMge2BcbiAgICApO1xuICAgIHNyYy5jbG9zZShcIn1cIik7XG4gICAgc3JjLmxpbmUoKTtcblxuICAgIHNyYy5saW5lKFwiLyoqXCIpO1xuICAgIHNyYy5saW5lKGAgKiAke29wdGlvbnMuZGVzY3JpcHRpb259YCk7XG4gICAgc3JjLmxpbmUoXCIgKi9cIik7XG4gICAgc3JjLm9wZW4oYGV4cG9ydCBjbGFzcyAke2NvbnN0cnVjdE5hbWV9IGV4dGVuZHMgbGFtYmRhLkxheWVyVmVyc2lvbiB7YCk7XG4gICAgc3JjLm9wZW4oXG4gICAgICBgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM/OiAke3Byb3BzVHlwZX0pIHtgXG4gICAgKTtcblxuICAgIHNyYy5vcGVuKFwic3VwZXIoc2NvcGUsIGlkLCB7XCIpO1xuICAgIHNyYy5saW5lKGBkZXNjcmlwdGlvbjogJHtlbmNvZGVDb2RlU3RyaW5nKG9wdGlvbnMuZGVzY3JpcHRpb24pfSxgKTtcbiAgICBzcmMubGluZShcIi4uLnByb3BzLFwiKTtcblxuICAgIHNyYy5vcGVuKFwiY29tcGF0aWJsZVJ1bnRpbWVzOiBbXCIpO1xuICAgIGZvciAoY29uc3QgcnVudGltZSBvZiBvcHRpb25zLmNvbXBhdGlibGVSdW50aW1lcykge1xuICAgICAgc3JjLmxpbmUoYGxhbWJkYS5SdW50aW1lLiR7cnVudGltZS5mdW5jdGlvblJ1bnRpbWV9LGApO1xuICAgIH1cbiAgICBzcmMuY2xvc2UoXCJdLFwiKTtcblxuICAgIHNyYy5vcGVuKGBjb2RlOiBsYW1iZGEuQ29kZS5mcm9tQXNzZXQocGF0aC5qb2luKF9fZGlybmFtZSxgKTtcbiAgICBzcmMubGluZShgJHtlbmNvZGVDb2RlU3RyaW5nKGNvbnZlcnRUb1Bvc2l4UGF0aChhc3NldERpcikpfSkpLGApO1xuICAgIHNyYy5jbG9zZSgpO1xuICAgIHNyYy5jbG9zZShcIn0pO1wiKTtcblxuICAgIHNyYy5jbG9zZShcIn1cIik7XG4gICAgc3JjLmNsb3NlKFwifVwiKTtcbiAgfVxufVxuXG4vKipcbiAqIEVuY29kZXMgYSBzdHJpbmcgZm9yIGVtYmVkZGluZyBpbiBzb3VyY2UgY29kZS5cbiAqL1xuZnVuY3Rpb24gZW5jb2RlQ29kZVN0cmluZyh2YWx1ZTogc3RyaW5nKSB7XG4gIGNvbnN0IGpzb24gPSBKU09OLnN0cmluZ2lmeSh2YWx1ZSk7XG4gIGNvbnN0IGVzY2FwZWRTdHJpbmcgPSBqc29uLnN1YnN0cmluZygxLCBqc29uLmxlbmd0aCAtIDEpLnJlcGxhY2UoLycvZywgXCJcXFxcJ1wiKTtcbiAgcmV0dXJuIGAnJHtlc2NhcGVkU3RyaW5nfSdgO1xufVxuIl19
121
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFtYmRhLWV4dGVuc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hd3NjZGsvbGFtYmRhLWV4dGVuc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLCtCQUF5RDtBQUN6RCwrQkFBOEI7QUFDOUIsNENBQXlDO0FBQ3pDLDhDQUFpRTtBQUVqRSxnREFBNEM7QUFFNUMseUNBR29CO0FBQ3BCLHVEQUFrRDtBQWtFbEQ7O0dBRUc7QUFDSCxNQUFhLGVBQWdCLFNBQVEscUJBQVM7SUFDNUMsWUFBWSxPQUFnQixFQUFFLE9BQStCO1FBQzNELEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVmLE1BQU0sUUFBUSxHQUFHLFdBQUksQ0FDbkIsY0FBTyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsRUFDM0IsZUFBUSxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsMENBQStCLENBQUMsQ0FDOUQsQ0FBQztRQUVGLE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxJQUFJLElBQUksZUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRWhELE1BQU0sT0FBTyxHQUFHLG9CQUFPLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3BDLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDWixNQUFNLElBQUksS0FBSyxDQUNiLG1FQUFtRSxDQUNwRSxDQUFDO1NBQ0g7UUFFRCxNQUFNLGtCQUFrQixHQUFHLE9BQU8sQ0FBQyxrQkFBa0IsSUFBSTtZQUN2RCwrQkFBYSxDQUFDLFdBQVc7WUFDekIsK0JBQWEsQ0FBQyxXQUFXO1NBQzFCLENBQUM7UUFFRixJQUFJLGtCQUFrQixDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDbkMsTUFBTSxJQUFJLEtBQUssQ0FBQyx1REFBdUQsQ0FBQyxDQUFDO1NBQzFFO1FBRUQsMkNBQTJDO1FBQzNDLE1BQU0sQ0FBQyxjQUFjLENBQUMsR0FBRyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsQ0FB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LEdBQUcsZ0JBQWdCLENBQUMsNkJBQWtCLENBQUMsUUFBUSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakUsR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ1osR0FBRyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVqQixHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2YsR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNqQixDQUFDO0NBQ0Y7QUFFRDs7R0FFRztBQUNILFNBQVMsZ0JBQWdCLENBQUMsS0FBYTtJQUNyQyxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ25DLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztJQUM5RSxPQUFPLElBQUksYUFBYSxHQUFHLENBQUM7QUFDOUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGJhc2VuYW1lLCBkaXJuYW1lLCBqb2luLCByZWxhdGl2ZSB9IGZyb20gXCJwYXRoXCI7XG5pbXBvcnQgeyBwYXNjYWwgfSBmcm9tIFwiY2FzZVwiO1xuaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSBcIi4uL2NvbXBvbmVudFwiO1xuaW1wb3J0IHsgQnVuZGxlciwgQnVuZGxpbmdPcHRpb25zLCBFc2xpbnQgfSBmcm9tIFwiLi4vamF2YXNjcmlwdFwiO1xuaW1wb3J0IHsgUHJvamVjdCB9IGZyb20gXCIuLi9wcm9qZWN0XCI7XG5pbXBvcnQgeyBTb3VyY2VDb2RlIH0gZnJvbSBcIi4uL3NvdXJjZS1jb2RlXCI7XG5pbXBvcnQgeyBBd3NDZGtEZXBzIH0gZnJvbSBcIi4vYXdzY2RrLWRlcHNcIjtcbmltcG9ydCB7XG4gIGNvbnZlcnRUb1Bvc2l4UGF0aCxcbiAgVFlQRVNDUklQVF9MQU1CREFfRVhURU5TSU9OX0VYVCxcbn0gZnJvbSBcIi4vaW50ZXJuYWxcIjtcbmltcG9ydCB7IExhbWJkYVJ1bnRpbWUgfSBmcm9tIFwiLi9sYW1iZGEtZnVuY3Rpb25cIjtcblxuLyoqXG4gKiBDb21tb24gb3B0aW9ucyBmb3IgY3JlYXRpbmcgbGFtYmRhIGV4dGVuc2lvbnMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTGFtYmRhRXh0ZW5zaW9uQ29tbW9uT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgZXh0ZW5zaW9uJ3MgY29tcGF0aWJsZSBydW50aW1lcy5cbiAgICovXG4gIHJlYWRvbmx5IGNvbXBhdGlibGVSdW50aW1lcz86IExhbWJkYVJ1bnRpbWVbXTtcblxuICAvKipcbiAgICogQnVuZGxpbmcgb3B0aW9ucyBmb3IgdGhpcyBBV1MgTGFtYmRhIGV4dGVuc2lvbi5cbiAgICpcbiAgICogSWYgbm90IHNwZWNpZmllZCB0aGUgZGVmYXVsdCBidW5kbGluZyBvcHRpb25zIHNwZWNpZmllZCBmb3IgdGhlIHByb2plY3RcbiAgICogYEJ1bmRsZXJgIGluc3RhbmNlIHdpbGwgYmUgdXNlZC5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0c1xuICAgKi9cbiAgcmVhZG9ubHkgYnVuZGxpbmdPcHRpb25zPzogQnVuZGxpbmdPcHRpb25zO1xufVxuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGNyZWF0aW5nIGxhbWJkYSBleHRlbnNpb25zLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIExhbWJkYUV4dGVuc2lvbk9wdGlvbnMgZXh0ZW5kcyBMYW1iZGFFeHRlbnNpb25Db21tb25PcHRpb25zIHtcbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIGV4dGVuc2lvblxuICAgKlxuICAgKiBAZGVmYXVsdCAtIERlcml2ZWQgZnJvbSB0aGUgZW50cnlwb2ludCBmaWxlbmFtZS5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEEgcGF0aCBmcm9tIHRoZSBwcm9qZWN0IHJvb3QgZGlyZWN0b3J5IHRvIGEgVHlwZVNjcmlwdCBmaWxlIHdoaWNoIGNvbnRhaW5zXG4gICAqIHRoZSBBV1MgTGFtYmRhIGV4dGVuc2lvbiBlbnRyeXBvaW50IChzdGFuZC1hbG9uZSBzY3JpcHQpLlxuICAgKlxuICAgKiBUaGlzIGlzIHJlbGF0aXZlIHRvIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGUgcHJvamVjdC5cbiAgICpcbiAgICogQGV4YW1wbGUgXCJzcmMvc3ViZGlyL2Zvby5sYW1iZGEtZXh0ZW5zaW9uLnRzXCJcbiAgICovXG4gIHJlYWRvbmx5IGVudHJ5cG9pbnQ6IHN0cmluZztcblxuICAvKipcbiAgICogQVdTIENESyBkZXBlbmRlbmN5IG1hbmFnZXIuXG4gICAqL1xuICByZWFkb25seSBjZGtEZXBzOiBBd3NDZGtEZXBzO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgZ2VuZXJhdGVkIFR5cGVTY3JpcHQgc291cmNlIGZpbGUuIFRoaXMgZmlsZSBzaG91bGQgYWxzbyBiZVxuICAgKiB1bmRlciB0aGUgc291cmNlIHRyZWUuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gVGhlIG5hbWUgb2YgdGhlIGVudHJ5cG9pbnQgZmlsZSwgd2l0aCB0aGUgYC1sYXllci12ZXJzaW9uLnRzYFxuICAgKiBzdWZmaXggaW5zdGVhZCBvZiBgLmxhbWJkYS1leHRlbnNpb24udHNgLlxuICAgKi9cbiAgcmVhZG9ubHkgY29uc3RydWN0RmlsZT86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIGdlbmVyYXRlZCBgbGFtYmRhLkxheWVyVmVyc2lvbmAgc3ViY2xhc3MuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gQSBwYXNjYWwgY2FzZWQgdmVyc2lvbiBvZiB0aGUgbmFtZSBvZiB0aGUgZW50cnlwb2ludCBmaWxlLCB3aXRoXG4gICAqIHRoZSBleHRlbnNpb24gYExheWVyVmVyc2lvbmAgKGUuZy4gYEFwcENvbmZpZ0xheWVyVmVyc2lvbmApLlxuICAgKi9cbiAgcmVhZG9ubHkgY29uc3RydWN0TmFtZT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBDcmVhdGUgYSBMYW1iZGEgRXh0ZW5zaW9uXG4gKi9cbmV4cG9ydCBjbGFzcyBMYW1iZGFFeHRlbnNpb24gZXh0ZW5kcyBDb21wb25lbnQge1xuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBQcm9qZWN0LCBvcHRpb25zOiBMYW1iZGFFeHRlbnNpb25PcHRpb25zKSB7XG4gICAgc3VwZXIocHJvamVjdCk7XG5cbiAgICBjb25zdCBiYXNlUGF0aCA9IGpvaW4oXG4gICAgICBkaXJuYW1lKG9wdGlvbnMuZW50cnlwb2ludCksXG4gICAgICBiYXNlbmFtZShvcHRpb25zLmVudHJ5cG9pbnQsIFRZUEVTQ1JJUFRfTEFNQkRBX0VYVEVOU0lPTl9FWFQpXG4gICAgKTtcblxuICAgIGNvbnN0IG5hbWUgPSBvcHRpb25zLm5hbWUgPz8gYmFzZW5hbWUoYmFzZVBhdGgpO1xuXG4gICAgY29uc3QgYnVuZGxlciA9IEJ1bmRsZXIub2YocHJvamVjdCk7XG4gICAgaWYgKCFidW5kbGVyKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIFwiTm8gYnVuZGxlciBmb3VuZC4gUGxlYXNlIGFkZCBhIEJ1bmRsZXIgY29tcG9uZW50IHRvIHlvdXIgcHJvamVjdC5cIlxuICAgICAgKTtcbiAgICB9XG5cbiAgICBjb25zdCBjb21wYXRpYmxlUnVudGltZXMgPSBvcHRpb25zLmNvbXBhdGlibGVSdW50aW1lcyA/PyBbXG4gICAgICBMYW1iZGFSdW50aW1lLk5PREVKU18xNF9YLFxuICAgICAgTGFtYmRhUnVudGltZS5OT0RFSlNfMTJfWCxcbiAgICBdO1xuXG4gICAgaWYgKGNvbXBhdGlibGVSdW50aW1lcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcIkNvbXBhdGlibGUgcnVudGltZXMgbXVzdCBpbmNsdWRlIGF0IGxlYXN0IG9uZSBydW50aW1lXCIpO1xuICAgIH1cblxuICAgIC8vIFVzZSB0aGUgbG93ZXN0IHJ1bnRpbWUgdmVyc2lvbiB0byBidW5kbGVcbiAgICBjb25zdCBbYnVuZGxlclJ1bnRpbWVdID0gY29tcGF0aWJsZVJ1bnRpbWVzLnNvcnQoKGEsIGIpID0+XG4gICAgICBhLmZ1bmN0aW9uUnVudGltZS5sb2NhbGVDb21wYXJlKGIuZnVuY3Rpb25SdW50aW1lKVxuICAgICk7XG5cbiAgICAvLyBBbGxvdyBleHRlbnNpb24gY29kZSB0byBpbXBvcnQgZGV2LWRlcHMgc2luY2UgdGhleSBhcmUgb25seSBuZWVkZWRcbiAgICAvLyBkdXJpbmcgYnVuZGxpbmdcbiAgICBjb25zdCBlc2xpbnQgPSBFc2xpbnQub2YocHJvamVjdCk7XG4gICAgZXNsaW50Py5hbGxvd0RldkRlcHMob3B0aW9ucy5lbnRyeXBvaW50KTtcblxuICAgIGNvbnN0IGJ1bmRsZSA9IGJ1bmRsZXIuYWRkQnVuZGxlKG9wdGlvbnMuZW50cnlwb2ludCwge1xuICAgICAgcGxhdGZvcm06IGJ1bmRsZXJSdW50aW1lLmVzYnVpbGRQbGF0Zm9ybSxcbiAgICAgIHRhcmdldDogYnVuZGxlclJ1bnRpbWUuZXNidWlsZFRhcmdldCxcbiAgICAgIGV4dGVybmFsczogW1wiYXdzLXNka1wiXSxcbiAgICAgIG91dGZpbGU6IGBleHRlbnNpb25zLyR7bmFtZX1gLFxuICAgICAgLy8gTWFrZSB0aGUgb3V0cHV0IGV4ZWN1dGFibGUgYmVjYXVzZSBMYW1iZGEgZXhwZWN0cyB0byBydW5cbiAgICAgIC8vIGV4dGVuc2lvbnMgYXMgc3RhbmQtYWxvbmUgcHJvZ3JhbXMgYWxvbmdzaWRlIHRoZSBtYWluIGxhbWJkYVxuICAgICAgLy8gcHJvY2Vzcy5cbiAgICAgIGV4ZWN1dGFibGU6IHRydWUsXG4gICAgICAuLi5vcHRpb25zLmJ1bmRsaW5nT3B0aW9ucyxcbiAgICB9KTtcblxuICAgIGNvbnN0IGNvbnN0cnVjdEZpbGUgPVxuICAgICAgb3B0aW9ucy5jb25zdHJ1Y3RGaWxlID8/IGAke2Jhc2VQYXRofS1sYXllci12ZXJzaW9uLnRzYDtcblxuICAgIG5ldyBMYW1iZGFMYXllckNvbnN0cnVjdChwcm9qZWN0LCB7XG4gICAgICBjb25zdHJ1Y3RGaWxlOiBjb25zdHJ1Y3RGaWxlLFxuICAgICAgY29uc3RydWN0TmFtZTogb3B0aW9ucy5jb25zdHJ1Y3ROYW1lLFxuICAgICAgYXNzZXREaXI6IGJ1bmRsZS5vdXRkaXIsXG4gICAgICBjb21wYXRpYmxlUnVudGltZXM6IGNvbXBhdGlibGVSdW50aW1lcyxcbiAgICAgIGRlc2NyaXB0aW9uOiBgUHJvdmlkZXMgYSBMYW1iZGEgRXh0ZW5zaW9uIFxcYCR7bmFtZX1cXGAgZnJvbSAke2NvbnZlcnRUb1Bvc2l4UGF0aChcbiAgICAgICAgb3B0aW9ucy5lbnRyeXBvaW50XG4gICAgICApfWAsXG4gICAgICBjZGtEZXBzOiBvcHRpb25zLmNka0RlcHMsXG4gICAgfSk7XG4gIH1cbn1cblxuaW50ZXJmYWNlIExhbWJkYUxheWVyQ29uc3RydWN0T3B0aW9ucyB7XG4gIHJlYWRvbmx5IGFzc2V0RGlyOiBzdHJpbmc7XG4gIHJlYWRvbmx5IGNvbXBhdGlibGVSdW50aW1lczogTGFtYmRhUnVudGltZVtdO1xuICByZWFkb25seSBkZXNjcmlwdGlvbjogc3RyaW5nO1xuICByZWFkb25seSBjb25zdHJ1Y3RGaWxlOiBzdHJpbmc7XG4gIHJlYWRvbmx5IGNvbnN0cnVjdE5hbWU/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGNka0RlcHM6IEF3c0Nka0RlcHM7XG59XG5cbmNsYXNzIExhbWJkYUxheWVyQ29uc3RydWN0IGV4dGVuZHMgU291cmNlQ29kZSB7XG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IFByb2plY3QsIG9wdGlvbnM6IExhbWJkYUxheWVyQ29uc3RydWN0T3B0aW9ucykge1xuICAgIHN1cGVyKHByb2plY3QsIG9wdGlvbnMuY29uc3RydWN0RmlsZSk7XG5cbiAgICBjb25zdCBzcmMgPSB0aGlzO1xuICAgIGNvbnN0IGNka0RlcHMgPSBvcHRpb25zLmNka0RlcHM7XG5cbiAgICBjb25zdCBjb25zdHJ1Y3ROYW1lID1cbiAgICAgIG9wdGlvbnMuY29uc3RydWN0TmFtZSA/PyBwYXNjYWwoYmFzZW5hbWUob3B0aW9ucy5jb25zdHJ1Y3RGaWxlLCBcIi50c1wiKSk7XG4gICAgY29uc3QgcHJvcHNUeXBlID0gYCR7Y29uc3RydWN0TmFtZX1Qcm9wc2A7XG5cbiAgICBjb25zdCBhc3NldERpciA9IHJlbGF0aXZlKGRpcm5hbWUob3B0aW9ucy5jb25zdHJ1Y3RGaWxlKSwgb3B0aW9ucy5hc3NldERpcik7XG5cbiAgICBpZiAoc3JjLm1hcmtlcikge1xuICAgICAgc3JjLmxpbmUoYC8vICR7c3JjLm1hcmtlcn1gKTtcbiAgICB9XG4gICAgc3JjLmxpbmUoXCJpbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1wiKTtcblxuICAgIGlmIChjZGtEZXBzLmNka01ham9yVmVyc2lvbiA9PT0gMSkge1xuICAgICAgc3JjLmxpbmUoXCJpbXBvcnQgKiBhcyBsYW1iZGEgZnJvbSAnQGF3cy1jZGsvYXdzLWxhbWJkYSc7XCIpO1xuICAgICAgc3JjLmxpbmUoXCJpbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdAYXdzLWNkay9jb3JlJztcIik7XG4gICAgICBjZGtEZXBzLmFkZFYxRGVwZW5kZW5jaWVzKFwiQGF3cy1jZGsvYXdzLWxhbWJkYVwiKTtcbiAgICAgIGNka0RlcHMuYWRkVjFEZXBlbmRlbmNpZXMoXCJAYXdzLWNkay9jb3JlXCIpO1xuICAgIH0gZWxzZSB7XG4gICAgICBzcmMubGluZShcImltcG9ydCAqIGFzIGxhbWJkYSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtbGFtYmRhJztcIik7XG4gICAgICBzcmMubGluZShcImltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1wiKTtcbiAgICB9XG5cbiAgICBzcmMubGluZSgpO1xuXG4gICAgc3JjLmxpbmUoXCIvKipcIik7XG4gICAgc3JjLmxpbmUoYCAqIFByb3BzIGZvciAke2NvbnN0cnVjdE5hbWV9YCk7XG4gICAgc3JjLmxpbmUoXCIgKi9cIik7XG4gICAgc3JjLm9wZW4oXG4gICAgICBgZXhwb3J0IGludGVyZmFjZSAke3Byb3BzVHlwZX0gZXh0ZW5kcyBsYW1iZGEuTGF5ZXJWZXJzaW9uT3B0aW9ucyB7YFxuICAgICk7XG4gICAgc3JjLmNsb3NlKFwifVwiKTtcbiAgICBzcmMubGluZSgpO1xuXG4gICAgc3JjLmxpbmUoXCIvKipcIik7XG4gICAgc3JjLmxpbmUoYCAqICR7b3B0aW9ucy5kZXNjcmlwdGlvbn1gKTtcbiAgICBzcmMubGluZShcIiAqL1wiKTtcbiAgICBzcmMub3BlbihgZXhwb3J0IGNsYXNzICR7Y29uc3RydWN0TmFtZX0gZXh0ZW5kcyBsYW1iZGEuTGF5ZXJWZXJzaW9uIHtgKTtcbiAgICBzcmMub3BlbihcbiAgICAgIGBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wcz86ICR7cHJvcHNUeXBlfSkge2BcbiAgICApO1xuXG4gICAgc3JjLm9wZW4oXCJzdXBlcihzY29wZSwgaWQsIHtcIik7XG4gICAgc3JjLmxpbmUoYGRlc2NyaXB0aW9uOiAke2VuY29kZUNvZGVTdHJpbmcob3B0aW9ucy5kZXNjcmlwdGlvbil9LGApO1xuICAgIHNyYy5saW5lKFwiLi4ucHJvcHMsXCIpO1xuXG4gICAgc3JjLm9wZW4oXCJjb21wYXRpYmxlUnVudGltZXM6IFtcIik7XG4gICAgZm9yIChjb25zdCBydW50aW1lIG9mIG9wdGlvbnMuY29tcGF0aWJsZVJ1bnRpbWVzKSB7XG4gICAgICBzcmMubGluZShgbGFtYmRhLlJ1bnRpbWUuJHtydW50aW1lLmZ1bmN0aW9uUnVudGltZX0sYCk7XG4gICAgfVxuICAgIHNyYy5jbG9zZShcIl0sXCIpO1xuXG4gICAgc3JjLm9wZW4oYGNvZGU6IGxhbWJkYS5Db2RlLmZyb21Bc3NldChwYXRoLmpvaW4oX19kaXJuYW1lLGApO1xuICAgIHNyYy5saW5lKGAke2VuY29kZUNvZGVTdHJpbmcoY29udmVydFRvUG9zaXhQYXRoKGFzc2V0RGlyKSl9KSksYCk7XG4gICAgc3JjLmNsb3NlKCk7XG4gICAgc3JjLmNsb3NlKFwifSk7XCIpO1xuXG4gICAgc3JjLmNsb3NlKFwifVwiKTtcbiAgICBzcmMuY2xvc2UoXCJ9XCIpO1xuICB9XG59XG5cbi8qKlxuICogRW5jb2RlcyBhIHN0cmluZyBmb3IgZW1iZWRkaW5nIGluIHNvdXJjZSBjb2RlLlxuICovXG5mdW5jdGlvbiBlbmNvZGVDb2RlU3RyaW5nKHZhbHVlOiBzdHJpbmcpIHtcbiAgY29uc3QganNvbiA9IEpTT04uc3RyaW5naWZ5KHZhbHVlKTtcbiAgY29uc3QgZXNjYXBlZFN0cmluZyA9IGpzb24uc3Vic3RyaW5nKDEsIGpzb24ubGVuZ3RoIC0gMSkucmVwbGFjZSgvJy9nLCBcIlxcXFwnXCIpO1xuICByZXR1cm4gYCcke2VzY2FwZWRTdHJpbmd9J2A7XG59XG4iXX0=
@@ -134,4 +134,3 @@ export declare class LambdaRuntime {
134
134
  readonly esbuildPlatform = "node";
135
135
  private constructor();
136
136
  }
137
- //# sourceMappingURL=lambda-function.d.ts.map
@@ -37,30 +37,29 @@ class LambdaFunction extends component_1.Component {
37
37
  * @param options Options
38
38
  */
39
39
  constructor(project, options) {
40
- var _c, _d, _e, _f;
41
40
  super(project);
42
41
  const cdkDeps = options.cdkDeps;
43
42
  const bundler = javascript_1.Bundler.of(project);
44
43
  if (!bundler) {
45
44
  throw new Error("No bundler found. Please add a Bundler component to your project.");
46
45
  }
47
- const runtime = (_c = options.runtime) !== null && _c !== void 0 ? _c : LambdaRuntime.NODEJS_14_X;
46
+ const runtime = options.runtime ?? LambdaRuntime.NODEJS_14_X;
48
47
  // allow Lambda handler code to import dev-deps since they are only needed
49
48
  // during bundling
50
49
  const eslint = javascript_1.Eslint.of(project);
51
- eslint === null || eslint === void 0 ? void 0 : eslint.allowDevDeps(options.entrypoint);
50
+ eslint?.allowDevDeps(options.entrypoint);
52
51
  const entrypoint = options.entrypoint;
53
52
  if (!entrypoint.endsWith(internal_1.TYPESCRIPT_LAMBDA_EXT) &&
54
53
  !entrypoint.endsWith(internal_1.TYPESCRIPT_EDGE_LAMBDA_EXT)) {
55
54
  throw new Error(`${entrypoint} must have a ${internal_1.TYPESCRIPT_LAMBDA_EXT} or ${internal_1.TYPESCRIPT_EDGE_LAMBDA_EXT} extension`);
56
55
  }
57
56
  const basePath = path_1.join(path_1.dirname(entrypoint), path_1.basename(entrypoint, options.edgeLambda ? internal_1.TYPESCRIPT_EDGE_LAMBDA_EXT : internal_1.TYPESCRIPT_LAMBDA_EXT));
58
- const constructFile = (_d = options.constructFile) !== null && _d !== void 0 ? _d : `${basePath}-function.ts`;
57
+ const constructFile = options.constructFile ?? `${basePath}-function.ts`;
59
58
  if (path_1.extname(constructFile) !== ".ts") {
60
59
  throw new Error(`Construct file name "${constructFile}" must have a .ts extension`);
61
60
  }
62
61
  // type names
63
- const constructName = (_e = options.constructName) !== null && _e !== void 0 ? _e : case_1.pascal(path_1.basename(basePath)) + "Function";
62
+ const constructName = options.constructName ?? case_1.pascal(path_1.basename(basePath)) + "Function";
64
63
  const propsType = `${constructName}Props`;
65
64
  const bundle = bundler.addBundle(entrypoint, {
66
65
  target: runtime.esbuildTarget,
@@ -128,7 +127,7 @@ class LambdaFunction extends component_1.Component {
128
127
  src.line("handler: 'index.handler',");
129
128
  src.line(`code: lambda.Code.fromAsset(path.join(__dirname, '${internal_1.convertToPosixPath(relativeOutfile)}')),`);
130
129
  src.close("});");
131
- if (((_f = options.awsSdkConnectionReuse) !== null && _f !== void 0 ? _f : true) && !options.edgeLambda) {
130
+ if ((options.awsSdkConnectionReuse ?? true) && !options.edgeLambda) {
132
131
  src.line("this.addEnvironment('AWS_NODEJS_CONNECTION_REUSE_ENABLED', '1', { removeInEdge: true });");
133
132
  }
134
133
  src.close("}");
@@ -142,7 +141,7 @@ class LambdaFunction extends component_1.Component {
142
141
  }
143
142
  exports.LambdaFunction = LambdaFunction;
144
143
  _a = JSII_RTTI_SYMBOL_1;
145
- LambdaFunction[_a] = { fqn: "projen.awscdk.LambdaFunction", version: "0.58.1" };
144
+ LambdaFunction[_a] = { fqn: "projen.awscdk.LambdaFunction", version: "0.58.4" };
146
145
  /**
147
146
  * The runtime for the AWS Lambda function.
148
147
  */
@@ -163,7 +162,7 @@ class LambdaRuntime {
163
162
  }
164
163
  exports.LambdaRuntime = LambdaRuntime;
165
164
  _b = JSII_RTTI_SYMBOL_1;
166
- LambdaRuntime[_b] = { fqn: "projen.awscdk.LambdaRuntime", version: "0.58.1" };
165
+ LambdaRuntime[_b] = { fqn: "projen.awscdk.LambdaRuntime", version: "0.58.4" };
167
166
  /**
168
167
  * Node.js 10.x
169
168
  */
@@ -176,4 +175,4 @@ LambdaRuntime.NODEJS_12_X = new LambdaRuntime("NODEJS_12_X", "node12");
176
175
  * Node.js 14.x
177
176
  */
178
177
  LambdaRuntime.NODEJS_14_X = new LambdaRuntime("NODEJS_14_X", "node14");
179
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFtYmRhLWZ1bmN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2F3c2Nkay9sYW1iZGEtZnVuY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwrQkFBa0U7QUFDbEUsK0JBQThCO0FBQzlCLDRDQUF5QztBQUN6Qyw4Q0FBaUU7QUFFakUsZ0RBQTRDO0FBRTVDLHlDQUlvQjtBQXNGcEI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FtQkc7QUFDSCxNQUFhLGNBQWUsU0FBUSxxQkFBUztJQUMzQzs7Ozs7T0FLRztJQUNILFlBQVksT0FBZ0IsRUFBRSxPQUE4Qjs7UUFDMUQsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRWYsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQztRQUNoQyxNQUFNLE9BQU8sR0FBRyxvQkFBTyxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNwQyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ1osTUFBTSxJQUFJLEtBQUssQ0FDYixtRUFBbUUsQ0FDcEUsQ0FBQztTQUNIO1FBRUQsTUFBTSxPQUFPLFNBQUcsT0FBTyxDQUFDLE9BQU8sbUNBQUksYUFBYSxDQUFDLFdBQVcsQ0FBQztRQUU3RCwwRUFBMEU7UUFDMUUsa0JBQWtCO1FBQ2xCLE1BQU0sTUFBTSxHQUFHLG1CQUFNLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2xDLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxZQUFZLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRTtRQUV6QyxNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDO1FBRXRDLElBQ0UsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLGdDQUFxQixDQUFDO1lBQzNDLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxxQ0FBMEIsQ0FBQyxFQUNoRDtZQUNBLE1BQU0sSUFBSSxLQUFLLENBQ2IsR0FBRyxVQUFVLGdC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Q0M7OztBQXJDQzs7R0FFRztBQUNvQix5QkFBVyxHQUFHLElBQUksYUFBYSxDQUNwRCxhQUFhLEVBQ2IsUUFBUSxDQUNULENBQUM7QUFFRjs7R0FFRztBQUNvQix5QkFBVyxHQUFHLElBQUksYUFBYSxDQUNwRCxhQUFhLEVBQ2IsUUFBUSxDQUNULENBQUM7QUFFRjs7R0FFRztBQUNvQix5QkFBVyxHQUFHLElBQUksYUFBYSxDQUNwRCxhQUFhLEVBQ2IsUUFBUSxDQUNULENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBiYXNlbmFtZSwgZGlybmFtZSwgZXh0bmFtZSwgam9pbiwgcmVsYXRpdmUgfSBmcm9tIFwicGF0aFwiO1xuaW1wb3J0IHsgcGFzY2FsIH0gZnJvbSBcImNhc2VcIjtcbmltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gXCIuLi9jb21wb25lbnRcIjtcbmltcG9ydCB7IEJ1bmRsZXIsIEJ1bmRsaW5nT3B0aW9ucywgRXNsaW50IH0gZnJvbSBcIi4uL2phdmFzY3JpcHRcIjtcbmltcG9ydCB7IFByb2plY3QgfSBmcm9tIFwiLi4vcHJvamVjdFwiO1xuaW1wb3J0IHsgU291cmNlQ29kZSB9IGZyb20gXCIuLi9zb3VyY2UtY29kZVwiO1xuaW1wb3J0IHsgQXdzQ2RrRGVwcyB9IGZyb20gXCIuL2F3c2Nkay1kZXBzXCI7XG5pbXBvcnQge1xuICBjb252ZXJ0VG9Qb3NpeFBhdGgsXG4gIFRZUEVTQ1JJUFRfRURHRV9MQU1CREFfRVhULFxuICBUWVBFU0NSSVBUX0xBTUJEQV9FWFQsXG59IGZyb20gXCIuL2ludGVybmFsXCI7XG5cbi8qKlxuICogQ29tbW9uIG9wdGlvbnMgZm9yIGBMYW1iZGFGdW5jdGlvbmAuIEFwcGxpZXMgdG8gYWxsIGZ1bmN0aW9ucyBpblxuICogYXV0by1kaXNjb3ZlcnkuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTGFtYmRhRnVuY3Rpb25Db21tb25PcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBub2RlLmpzIHZlcnNpb24gdG8gdGFyZ2V0LlxuICAgKlxuICAgKiBAZGVmYXVsdCBSdW50aW1lLk5PREVKU18xNF9YXG4gICAqL1xuICByZWFkb25seSBydW50aW1lPzogTGFtYmRhUnVudGltZTtcblxuICAvKipcbiAgICogQnVuZGxpbmcgb3B0aW9ucyBmb3IgdGhpcyBBV1MgTGFtYmRhIGZ1bmN0aW9uLlxuICAgKlxuICAgKiBJZiBub3Qgc3BlY2lmaWVkIHRoZSBkZWZhdWx0IGJ1bmRsaW5nIG9wdGlvbnMgc3BlY2lmaWVkIGZvciB0aGUgcHJvamVjdFxuICAgKiBgQnVuZGxlcmAgaW5zdGFuY2Ugd2lsbCBiZSB1c2VkLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHRzXG4gICAqL1xuICByZWFkb25seSBidW5kbGluZ09wdGlvbnM/OiBCdW5kbGluZ09wdGlvbnM7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gYXV0b21hdGljYWxseSByZXVzZSBUQ1AgY29ubmVjdGlvbnMgd2hlbiB3b3JraW5nIHdpdGggdGhlIEFXU1xuICAgKiBTREsgZm9yIEphdmFTY3JpcHQuXG4gICAqXG4gICAqIFRoaXMgc2V0cyB0aGUgYEFXU19OT0RFSlNfQ09OTkVDVElPTl9SRVVTRV9FTkFCTEVEYCBlbnZpcm9ubWVudCB2YXJpYWJsZVxuICAgKiB0byBgMWAuXG4gICAqXG4gICAqIE5vdCBhcHBsaWNhYmxlIHdoZW4gYGVkZ2VMYW1iZGFgIGlzIHNldCB0byBgdHJ1ZWAgYmVjYXVzZSBlbnZpcm9ubWVudFxuICAgKiB2YXJpYWJsZXMgYXJlIG5vdCBzdXBwb3J0ZWQgaW4gTGFtYmRhQEVkZ2UuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL3Nkay1mb3ItamF2YXNjcmlwdC92Mi9kZXZlbG9wZXItZ3VpZGUvbm9kZS1yZXVzaW5nLWNvbm5lY3Rpb25zLmh0bWxcbiAgICpcbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgYXdzU2RrQ29ubmVjdGlvblJldXNlPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogV2hldGhlciB0byBjcmVhdGUgYSBgY2xvdWRmcm9udC5leHBlcmltZW50YWwuRWRnZUZ1bmN0aW9uYCBpbnN0ZWFkXG4gICAqIG9mIGEgYGxhbWJkYS5GdW5jdGlvbmAuXG4gICAqXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBlZGdlTGFtYmRhPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBPcHRpb25zIGZvciBgRnVuY3Rpb25gLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIExhbWJkYUZ1bmN0aW9uT3B0aW9ucyBleHRlbmRzIExhbWJkYUZ1bmN0aW9uQ29tbW9uT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBBIHBhdGggZnJvbSB0aGUgcHJvamVjdCByb290IGRpcmVjdG9yeSB0byBhIFR5cGVTY3JpcHQgZmlsZSB3aGljaCBjb250YWluc1xuICAgKiB0aGUgQVdTIExhbWJkYSBoYW5kbGVyIGVudHJ5cG9pbnQgKGV4cG9ydHMgYSBgaGFuZGxlcmAgZnVuY3Rpb24pLlxuICAgKlxuICAgKiBUaGlzIGlzIHJlbGF0aXZlIHRvIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGUgcHJvamVjdC5cbiAgICpcbiAgICogQGV4YW1wbGUgXCJzcmMvc3ViZGlyL2Zvby5sYW1iZGEudHNcIlxuICAgKi9cbiAgcmVhZG9ubHkgZW50cnlwb2ludDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgZ2VuZXJhdGVkIFR5cGVTY3JpcHQgc291cmNlIGZpbGUuIFRoaXMgZmlsZSBzaG91bGQgYWxzbyBiZVxuICAgKiB1bmRlciB0aGUgc291cmNlIHRyZWUuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gVGhlIG5hbWUgb2YgdGhlIGVudHJ5cG9pbnQgZmlsZSwgd2l0aCB0aGUgYC1mdW5jdGlvbi50c2Agc3VmZml4XG4gICAqIGluc3RlYWQgb2YgYC5sYW1iZGEudHNgLlxuICAgKi9cbiAgcmVhZG9ubHkgY29uc3RydWN0RmlsZT86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIGdlbmVyYXRlZCBgbGFtYmRhLkZ1bmN0aW9uYCBzdWJjbGFzcy5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBBIHBhc2NhbCBjYXNlZCB2ZXJzaW9uIG9mIHRoZSBuYW1lIG9mIHRoZSBlbnRyeXBvaW50IGZpbGUsIHdpdGhcbiAgICogdGhlIGV4dGVuc2lvbiBgRnVuY3Rpb25gIChlLmcuIGBSZXNpemVJbWFnZUZ1bmN0aW9uYCkuXG4gICAqL1xuICByZWFkb25seSBjb25zdHJ1Y3ROYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBV1MgQ0RLIGRlcGVuZGVuY3kgbWFuYWdlci5cbiAgICovXG4gIHJlYWRvbmx5IGNka0RlcHM6IEF3c0Nka0RlcHM7XG59XG5cbi8qKlxuICogR2VuZXJhdGVzIGEgcHJlLWJ1bmRsZWQgQVdTIExhbWJkYSBmdW5jdGlvbiBjb25zdHJ1Y3QgZnJvbSBoYW5kbGVyIGNvZGUuXG4gKlxuICogVG8gdXNlIHRoaXMsIGNyZWF0ZSBhbiBBV1MgTGFtYmRhIGhhbmRsZXIgZmlsZSB1bmRlciB5b3VyIHNvdXJjZSB0cmVlIHdpdGhcbiAqIHRoZSBgLmxhbWJkYS50c2AgZXh0ZW5zaW9uIGFuZCBhZGQgYSBgTGFtYmRhRnVuY3Rpb25gIGNvbXBvbmVudCB0byB5b3VyXG4gKiB0eXBlc2NyaXB0IHByb2plY3QgcG9pbnRpbmcgdG8gdGhpcyBlbnRyeXBvaW50LlxuICpcbiAqIFRoaXMgd2lsbCBhZGQgYSB0YXNrIHRvIHlvdXIgXCJjb21waWxlXCIgc3RlcCB3aGljaCB3aWxsIHVzZSBgZXNidWlsZGAgdG9cbiAqIGJ1bmRsZSB0aGUgaGFuZGxlciBjb2RlIGludG8gdGhlIGJ1aWxkIGRpcmVjdG9yeS4gSXQgd2lsbCBhbHNvIGdlbmVyYXRlIGFcbiAqIGZpbGUgYHNyYy9mb28tZnVuY3Rpb24udHNgIHdpdGggYSBjdXN0b20gQVdTIGNvbnN0cnVjdCBjYWxsZWQgYEZvb0Z1bmN0aW9uYFxuICogd2hpY2ggZXh0ZW5kcyBgQGF3cy1jZGsvYXdzLWxhbWJkYS5GdW5jdGlvbmAgd2hpY2ggaXMgYm91bmQgdG8gdGhlIGJ1bmRsZWRcbiAqIGhhbmRsZSB0aHJvdWdoIGFuIGFzc2V0LlxuICpcbiAqIEBleGFtcGxlXG4gKlxuICogbmV3IExhbWJkYUZ1bmN0aW9uKG15UHJvamVjdCwge1xuICogICBzcmNkaXI6IG15UHJvamVjdC5zcmNkaXIsXG4gKiAgIGVudHJ5cG9pbnQ6ICdzcmMvZm9vLmxhbWJkYS50cycsXG4gKiB9KTtcbiAqL1xuZXhwb3J0IGNsYXNzIExhbWJkYUZ1bmN0aW9uIGV4dGVuZHMgQ29tcG9uZW50IHtcbiAgLyoqXG4gICAqIERlZmluZXMgYSBwcmUtYnVuZGxlZCBBV1MgTGFtYmRhIGZ1bmN0aW9uIGNvbnN0cnVjdCBmcm9tIGhhbmRsZXIgY29kZS5cbiAgICpcbiAgICogQHBhcmFtIHByb2plY3QgVGhlIHByb2plY3QgdG8gdXNlXG4gICAqIEBwYXJhbSBvcHRpb25zIE9wdGlvbnNcbiAgICovXG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IFByb2plY3QsIG9wdGlvbnM6IExhbWJkYUZ1bmN0aW9uT3B0aW9ucykge1xuICAgIHN1cGVyKHByb2plY3QpO1xuXG4gICAgY29uc3QgY2RrRGVwcyA9IG9wdGlvbnMuY2RrRGVwcztcbiAgICBjb25zdCBidW5kbGVyID0gQnVuZGxlci5vZihwcm9qZWN0KTtcbiAgICBpZiAoIWJ1bmRsZXIpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgXCJObyBidW5kbGVyIGZvdW5kLiBQbGVhc2UgYWRkIGEgQnVuZGxlciBjb21wb25lbnQgdG8geW91ciBwcm9qZWN0LlwiXG4gICAgICApO1xuICAgIH1cblxuICAgIGNvbnN0IHJ1bnRpbWUgPSBvcHRpb25zLnJ1bnRpbWUgPz8gTGFtYmRhUnVudGltZS5OT0RFSlNfMTRfWDtcblxuICAgIC8vIGFsbG93IExhbWJkYSBoYW5kbGVyIGNvZGUgdG8gaW1wb3J0IGRldi1kZXBzIHNpbmNlIHRoZXkgYXJlIG9ubHkgbmVlZGVkXG4gICAgLy8gZHVyaW5nIGJ1bmRsaW5nXG4gICAgY29uc3QgZXNsaW50ID0gRXNsaW50Lm9mKHByb2plY3QpO1xuICAgIGVzbGludD8uYWxsb3dEZXZEZXBzKG9wdGlvbnMuZW50cnlwb2ludCk7XG5cbiAgICBjb25zdCBlbnRyeXBvaW50ID0gb3B0aW9ucy5lbnRyeXBvaW50O1xuXG4gICAgaWYgKFxuICAgICAgIWVudHJ5cG9pbnQuZW5kc1dpdGgoVFlQRVNDUklQVF9MQU1CREFfRVhUKSAmJlxuICAgICAgIWVudHJ5cG9pbnQuZW5kc1dpdGgoVFlQRVNDUklQVF9FREdFX0xBTUJEQV9FWFQpXG4gICAgKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGAke2VudHJ5cG9pbnR9IG11c3QgaGF2ZSBhICR7VFlQRVNDUklQVF9MQU1CREFfRVhUfSBvciAke1RZUEVTQ1JJUFRfRURHRV9MQU1CREFfRVhUfSBleHRlbnNpb25gXG4gICAgICApO1xuICAgIH1cblxuICAgIGNvbnN0IGJhc2VQYXRoID0gam9pbihcbiAgICAgIGRpcm5hbWUoZW50cnlwb2ludCksXG4gICAgICBiYXNlbmFtZShcbiAgICAgICAgZW50cnlwb2ludCxcbiAgICAgICAgb3B0aW9ucy5lZGdlTGFtYmRhID8gVFlQRVNDUklQVF9FREdFX0xBTUJEQV9FWFQgOiBUWVBFU0NSSVBUX0xBTUJEQV9FWFRcbiAgICAgIClcbiAgICApO1xuICAgIGNvbnN0IGNvbnN0cnVjdEZpbGUgPSBvcHRpb25zLmNvbnN0cnVjdEZpbGUgPz8gYCR7YmFzZVBhdGh9LWZ1bmN0aW9uLnRzYDtcblxuICAgIGlmIChleHRuYW1lKGNvbnN0cnVjdEZpbGUpICE9PSBcIi50c1wiKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBDb25zdHJ1Y3QgZmlsZSBuYW1lIFwiJHtjb25zdHJ1Y3RGaWxlfVwiIG11c3QgaGF2ZSBhIC50cyBleHRlbnNpb25gXG4gICAgICApO1xuICAgIH1cblxuICAgIC8vIHR5cGUgbmFtZXNcbiAgICBjb25zdCBjb25zdHJ1Y3ROYW1lID1cbiAgICAgIG9wdGlvbnMuY29uc3RydWN0TmFtZSA/PyBwYXNjYWwoYmFzZW5hbWUoYmFzZVBhdGgpKSArIFwiRnVuY3Rpb25cIjtcbiAgICBjb25zdCBwcm9wc1R5cGUgPSBgJHtjb25zdHJ1Y3ROYW1lfVByb3BzYDtcblxuICAgIGNvbnN0IGJ1bmRsZSA9IGJ1bmRsZXIuYWRkQnVuZGxlKGVudHJ5cG9pbnQsIHtcbiAgICAgIHRhcmdldDogcnVudGltZS5lc2J1aWxkVGFyZ2V0LFxuICAgICAgcGxhdGZvcm06IHJ1bnRpbWUuZXNidWlsZFBsYXRmb3JtLFxuICAgICAgZXh0ZXJuYWxzOiBbXCJhd3Mtc2RrXCJdLFxuICAgICAgLi4ub3B0aW9ucy5idW5kbGluZ09wdGlvbnMsXG4gICAgfSk7XG5cbiAgICAvLyBjYWxjdWxhdGUgdGhlIHJlbGF0aXZlIHBhdGggYmV0d2VlbiB0aGUgZGlyZWN0b3J5IGNvbnRhaW5pbmcgdGhlXG4gICAgLy8gZ2VuZXJhdGVkIGNvbnN0cnVjdCBzb3VyY2UgZmlsZSB0byB0aGUgZGlyZWN0b3J5IGNvbnRhaW5pbmcgdGhlIGJ1bmRsZVxuICAgIC8vIGluZGV4LmpzIGJ5IHJlc29sdmluZyB0aGVtIGFzIGFic29sdXRlIHBhdGhzIGZpcnN0LlxuICAgIC8vIGUuZzpcbiAgICAvLyAgLSBvdXRmaWxlQWJzID0+IGAvcHJvamVjdC1vdXRkaXIvYXNzZXRzL2Zvby9iYXIvYmF6L2Zvby1mdW5jdGlvbi9pbmRleC5qc2BcbiAgICAvLyAgLSBjb25zdHJ1Y3RBYnMgPT4gYC9wcm9qZWN0LW91dGRpci9zcmMvZm9vL2Jhci9iYXovZm9vLWZ1bmN0aW9uLnRzYFxuICAgIGNvbnN0IG91dGZpbGVBYnMgPSBqb2luKHByb2plY3Qub3V0ZGlyLCBidW5kbGUub3V0ZmlsZSk7XG4gICAgY29uc3QgY29uc3RydWN0QWJzID0gam9pbihwcm9qZWN0Lm91dGRpciwgY29uc3RydWN0RmlsZSk7XG4gICAgY29uc3QgcmVsYXRpdmVPdXRmaWxlID0gcmVsYXRpdmUoXG4gICAgICBkaXJuYW1lKGNvbnN0cnVjdEFicyksXG4gICAgICBkaXJuYW1lKG91dGZpbGVBYnMpXG4gICAgKTtcblxuICAgIGNvbnN0IHNyYyA9IG5ldyBTb3VyY2VDb2RlKHByb2plY3QsIGNvbnN0cnVjdEZpbGUpO1xuICAgIGlmIChzcmMubWFya2VyKSB7XG4gICAgICBzcmMubGluZShgLy8gJHtzcmMubWFya2VyfWApO1xuICAgIH1cbiAgICBzcmMubGluZShcImltcG9ydCAqIGFzIHBhdGggZnJvbSAncGF0aCc7XCIpO1xuXG4gICAgaWYgKGNka0RlcHMuY2RrTWFqb3JWZXJzaW9uID09PSAxKSB7XG4gICAgICBpZiAob3B0aW9ucy5lZGdlTGFtYmRhKSB7XG4gICAgICAgIHNyYy5saW5lKFwiaW1wb3J0ICogYXMgY2xvdWRmcm9udCBmcm9tICdAYXdzLWNkay9hd3MtY2xvdWRmcm9udCc7XCIpO1xuICAgICAgICBjZGtEZXBzLmFkZFYxRGVwZW5kZW5jaWVzKFwiQGF3cy1jZGsvYXdzLWNsb3VkZnJvbnRcIik7XG4gICAgICB9XG4gICAgICBzcmMubGluZShcImltcG9ydCAqIGFzIGxhbWJkYSBmcm9tICdAYXdzLWNkay9hd3MtbGFtYmRhJztcIik7XG4gICAgICBzcmMubGluZShcImltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ0Bhd3MtY2RrL2NvcmUnO1wiKTtcbiAgICAgIGNka0RlcHMuYWRkVjFEZXBlbmRlbmNpZXMoXCJAYXdzLWNkay9hd3MtbGFtYmRhXCIpO1xuICAgICAgY2RrRGVwcy5hZGRWMURlcGVuZGVuY2llcyhcIkBhd3MtY2RrL2NvcmVcIik7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmIChvcHRpb25zLmVkZ2VMYW1iZGEpIHtcbiAgICAgICAgc3JjLmxpbmUoXCJpbXBvcnQgKiBhcyBjbG91ZGZyb250IGZyb20gJ2F3cy1jZGstbGliL2F3cy1jbG91ZGZyb250JztcIik7XG4gICAgICB9XG4gICAgICBzcmMubGluZShcImltcG9ydCAqIGFzIGxhbWJkYSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtbGFtYmRhJztcIik7XG4gICAgICBzcmMubGluZShcImltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1wiKTtcbiAgICB9XG5cbiAgICBzcmMubGluZSgpO1xuICAgIHNyYy5saW5lKFwiLyoqXCIpO1xuICAgIHNyYy5saW5lKGAgKiBQcm9wcyBmb3IgJHtjb25zdHJ1Y3ROYW1lfWApO1xuICAgIHNyYy5saW5lKFwiICovXCIpO1xuICAgIGlmIChvcHRpb25zLmVkZ2VMYW1iZGEpIHtcbiAgICAgIHNyYy5vcGVuKFxuICAgICAgICBgZXhwb3J0IGludGVyZmFjZSAke3Byb3BzVHlwZX0gZXh0ZW5kcyBjbG91ZGZyb250LmV4cGVyaW1lbnRhbC5FZGdlRnVuY3Rpb25Qcm9wcyB7YFxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgc3JjLm9wZW4oXG4gICAgICAgIGBleHBvcnQgaW50ZXJmYWNlICR7cHJvcHNUeXBlfSBleHRlbmRzIGxhbWJkYS5GdW5jdGlvbk9wdGlvbnMge2BcbiAgICAgICk7XG4gICAgfVxuICAgIHNyYy5jbG9zZShcIn1cIik7XG4gICAgc3JjLmxpbmUoKTtcbiAgICBzcmMubGluZShcIi8qKlwiKTtcbiAgICBzcmMubGluZShcbiAgICAgIGAgKiBBbiBBV1MgTGFtYmRhIGZ1bmN0aW9uIHdoaWNoIGV4ZWN1dGVzICR7Y29udmVydFRvUG9zaXhQYXRoKFxuICAgICAgICBiYXNlUGF0aFxuICAgICAgKX0uYFxuICAgICk7XG4gICAgc3JjLmxpbmUoXCIgKi9cIik7XG4gICAgaWYgKG9wdGlvbnMuZWRnZUxhbWJkYSkge1xuICAgICAgc3JjLm9wZW4oXG4gICAgICAgIGBleHBvcnQgY2xhc3MgJHtjb25zdHJ1Y3ROYW1lfSBleHRlbmRzIGNsb3VkZnJvbnQuZXhwZXJpbWVudGFsLkVkZ2VGdW5jdGlvbiB7YFxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgc3JjLm9wZW4oYGV4cG9ydCBjbGFzcyAke2NvbnN0cnVjdE5hbWV9IGV4dGVuZHMgbGFtYmRhLkZ1bmN0aW9uIHtgKTtcbiAgICB9XG4gICAgc3JjLm9wZW4oXG4gICAgICBgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM/OiAke3Byb3BzVHlwZX0pIHtgXG4gICAgKTtcbiAgICBzcmMub3BlbihcInN1cGVyKHNjb3BlLCBpZCwge1wiKTtcbiAgICBzcmMubGluZShgZGVzY3JpcHRpb246ICcke2NvbnZlcnRUb1Bvc2l4UGF0aChlbnRyeXBvaW50KX0nLGApO1xuICAgIHNyYy5saW5lKFwiLi4ucHJvcHMsXCIpO1xuICAgIHNyYy5saW5lKGBydW50aW1lOiBsYW1iZGEuUnVudGltZS4ke3J1bnRpbWUuZnVuY3Rpb25SdW50aW1lfSxgKTtcbiAgICBzcmMubGluZShcImhhbmRsZXI6ICdpbmRleC5oYW5kbGVyJyxcIik7XG4gICAgc3JjLmxpbmUoXG4gICAgICBgY29kZTogbGFtYmRhLkNvZGUuZnJvbUFzc2V0KHBhdGguam9pbihfX2Rpcm5hbWUsICcke2NvbnZlcnRUb1Bvc2l4UGF0aChcbiAgICAgICAgcmVsYXRpdmVPdXRmaWxlXG4gICAgICApfScpKSxgXG4gICAgKTtcbiAgICBzcmMuY2xvc2UoXCJ9KTtcIik7XG4gICAgaWYgKChvcHRpb25zLmF3c1Nka0Nvbm5lY3Rpb25SZXVzZSA/PyB0cnVlKSAmJiAhb3B0aW9ucy5lZGdlTGFtYmRhKSB7XG4gICAgICBzcmMubGluZShcbiAgICAgICAgXCJ0aGlzLmFkZEVudmlyb25tZW50KCdBV1NfTk9ERUpTX0NPTk5FQ1RJT05fUkVVU0VfRU5BQkxFRCcsICcxJywgeyByZW1vdmVJbkVkZ2U6IHRydWUgfSk7XCJcbiAgICAgICk7XG4gICAgfVxuICAgIHNyYy5jbG9zZShcIn1cIik7XG4gICAgc3JjLmNsb3NlKFwifVwiKTtcblxuICAgIHRoaXMucHJvamVjdC5sb2dnZXIudmVyYm9zZShcbiAgICAgIGAke2Jhc2VQYXRofTogY29uc3RydWN0IFwiJHtjb25zdHJ1Y3ROYW1lfVwiIGdlbmVyYXRlZCB1bmRlciBcIiR7Y29uc3RydWN0RmlsZX1cImBcbiAgICApO1xuICAgIHRoaXMucHJvamVjdC5sb2dnZXIudmVyYm9zZShcbiAgICAgIGAke2Jhc2VQYXRofTogYnVuZGxlIHRhc2sgXCIke2J1bmRsZS5idW5kbGVUYXNrLm5hbWV9XCJgXG4gICAgKTtcbiAgICBpZiAoYnVuZGxlLndhdGNoVGFzaykge1xuICAgICAgdGhpcy5wcm9qZWN0LmxvZ2dlci52ZXJib3NlKFxuICAgICAgICBgJHtiYXNlUGF0aH06IGJ1bmRsZSB3YXRjaCB0YXNrIFwiJHtidW5kbGUud2F0Y2hUYXNrLm5hbWV9XCJgXG4gICAgICApO1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIFRoZSBydW50aW1lIGZvciB0aGUgQVdTIExhbWJkYSBmdW5jdGlvbi5cbiAqL1xuZXhwb3J0IGNsYXNzIExhbWJkYVJ1bnRpbWUge1xuICAvKipcbiAgICogTm9kZS5qcyAxMC54XG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IE5PREVKU18xMF9YID0gbmV3IExhbWJkYVJ1bnRpbWUoXG4gICAgXCJOT0RFSlNfMTBfWFwiLFxuICAgIFwibm9kZTEwXCJcbiAgKTtcblxuICAvKipcbiAgICogTm9kZS5qcyAxMi54XG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IE5PREVKU18xMl9YID0gbmV3IExhbWJkYVJ1bnRpbWUoXG4gICAgXCJOT0RFSlNfMTJfWFwiLFxuICAgIFwibm9kZTEyXCJcbiAgKTtcblxuICAvKipcbiAgICogTm9kZS5qcyAxNC54XG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IE5PREVKU18xNF9YID0gbmV3IExhbWJkYVJ1bnRpbWUoXG4gICAgXCJOT0RFSlNfMTRfWFwiLFxuICAgIFwibm9kZTE0XCJcbiAgKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgZXNidWlsZFBsYXRmb3JtID0gXCJub2RlXCI7XG5cbiAgcHJpdmF0ZSBjb25zdHJ1Y3RvcihcbiAgICAvKipcbiAgICAgKiBUaGUgYXdzLWxhbWJkYS5SdW50aW1lIG1lbWJlciBuYW1lIHRvIHVzZS5cbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgZnVuY3Rpb25SdW50aW1lOiBzdHJpbmcsXG5cbiAgICAvKipcbiAgICAgKiBUaGUgZXNidWlsZCBzZXR0aW5nIHRvIHVzZS5cbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgZXNidWlsZFRhcmdldDogc3RyaW5nXG4gICkge31cbn1cbiJdfQ==
178
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFtYmRhLWZ1bmN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2F3c2Nkay9sYW1iZGEtZnVuY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwrQkFBa0U7QUFDbEUsK0JBQThCO0FBQzlCLDRDQUF5QztBQUN6Qyw4Q0FBaUU7QUFFakUsZ0RBQTRDO0FBRTVDLHlDQUlvQjtBQXNGcEI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FtQkc7QUFDSCxNQUFhLGNBQWUsU0FBUSxxQkFBUztJQUMzQzs7Ozs7T0FLRztJQUNILFlBQVksT0FBZ0IsRUFBRSxPQUE4QjtRQUMxRCxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFZixNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDO1FBQ2hDLE1BQU0sT0FBTyxHQUFHLG9CQUFPLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3BDLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDWixNQUFNLElBQUksS0FBSyxDQUNiLG1FQUFtRSxDQUNwRSxDQUFDO1NBQ0g7UUFFRCxNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsT0FBTyxJQUFJLGFBQWEsQ0FBQyxXQUFXLENBQUM7UUFFN0QsMEVBQTBFO1FBQzFFLGtCQUFrQjtRQUNsQixNQUFNLE1BQU0sR0FBRyxtQkFBTSxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNsQyxNQUFNLEVBQUUsWUFBWSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUV6QyxNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDO1FBRXRDLElBQ0UsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLGdDQUFxQixDQUFDO1lBQzNDLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxxQ0FBMEIsQ0FBQyxFQUNoRDtZQUNBLE1BQU0sSUFBSSxLQUFLLENBQ2IsR0FBRyxVQUFVLGdCQUFnQixnQ0FBcUIsT0FBTyxx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Qix5QkFBVyxHQUFHLElBQUksYUFBYSxDQUNwRCxhQUFhLEVBQ2IsUUFBUSxDQUNULENBQUM7QUFFRjs7R0FFRztBQUNvQix5QkFBVyxHQUFHLElBQUksYUFBYSxDQUNwRCxhQUFhLEVBQ2IsUUFBUSxDQUNULENBQUM7QUFFRjs7R0FFRztBQUNvQix5QkFBVyxHQUFHLElBQUksYUFBYSxDQUNwRCxhQUFhLEVBQ2IsUUFBUSxDQUNULENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBiYXNlbmFtZSwgZGlybmFtZSwgZXh0bmFtZSwgam9pbiwgcmVsYXRpdmUgfSBmcm9tIFwicGF0aFwiO1xuaW1wb3J0IHsgcGFzY2FsIH0gZnJvbSBcImNhc2VcIjtcbmltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gXCIuLi9jb21wb25lbnRcIjtcbmltcG9ydCB7IEJ1bmRsZXIsIEJ1bmRsaW5nT3B0aW9ucywgRXNsaW50IH0gZnJvbSBcIi4uL2phdmFzY3JpcHRcIjtcbmltcG9ydCB7IFByb2plY3QgfSBmcm9tIFwiLi4vcHJvamVjdFwiO1xuaW1wb3J0IHsgU291cmNlQ29kZSB9IGZyb20gXCIuLi9zb3VyY2UtY29kZVwiO1xuaW1wb3J0IHsgQXdzQ2RrRGVwcyB9IGZyb20gXCIuL2F3c2Nkay1kZXBzXCI7XG5pbXBvcnQge1xuICBjb252ZXJ0VG9Qb3NpeFBhdGgsXG4gIFRZUEVTQ1JJUFRfRURHRV9MQU1CREFfRVhULFxuICBUWVBFU0NSSVBUX0xBTUJEQV9FWFQsXG59IGZyb20gXCIuL2ludGVybmFsXCI7XG5cbi8qKlxuICogQ29tbW9uIG9wdGlvbnMgZm9yIGBMYW1iZGFGdW5jdGlvbmAuIEFwcGxpZXMgdG8gYWxsIGZ1bmN0aW9ucyBpblxuICogYXV0by1kaXNjb3ZlcnkuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTGFtYmRhRnVuY3Rpb25Db21tb25PcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBub2RlLmpzIHZlcnNpb24gdG8gdGFyZ2V0LlxuICAgKlxuICAgKiBAZGVmYXVsdCBSdW50aW1lLk5PREVKU18xNF9YXG4gICAqL1xuICByZWFkb25seSBydW50aW1lPzogTGFtYmRhUnVudGltZTtcblxuICAvKipcbiAgICogQnVuZGxpbmcgb3B0aW9ucyBmb3IgdGhpcyBBV1MgTGFtYmRhIGZ1bmN0aW9uLlxuICAgKlxuICAgKiBJZiBub3Qgc3BlY2lmaWVkIHRoZSBkZWZhdWx0IGJ1bmRsaW5nIG9wdGlvbnMgc3BlY2lmaWVkIGZvciB0aGUgcHJvamVjdFxuICAgKiBgQnVuZGxlcmAgaW5zdGFuY2Ugd2lsbCBiZSB1c2VkLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHRzXG4gICAqL1xuICByZWFkb25seSBidW5kbGluZ09wdGlvbnM/OiBCdW5kbGluZ09wdGlvbnM7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gYXV0b21hdGljYWxseSByZXVzZSBUQ1AgY29ubmVjdGlvbnMgd2hlbiB3b3JraW5nIHdpdGggdGhlIEFXU1xuICAgKiBTREsgZm9yIEphdmFTY3JpcHQuXG4gICAqXG4gICAqIFRoaXMgc2V0cyB0aGUgYEFXU19OT0RFSlNfQ09OTkVDVElPTl9SRVVTRV9FTkFCTEVEYCBlbnZpcm9ubWVudCB2YXJpYWJsZVxuICAgKiB0byBgMWAuXG4gICAqXG4gICAqIE5vdCBhcHBsaWNhYmxlIHdoZW4gYGVkZ2VMYW1iZGFgIGlzIHNldCB0byBgdHJ1ZWAgYmVjYXVzZSBlbnZpcm9ubWVudFxuICAgKiB2YXJpYWJsZXMgYXJlIG5vdCBzdXBwb3J0ZWQgaW4gTGFtYmRhQEVkZ2UuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL3Nkay1mb3ItamF2YXNjcmlwdC92Mi9kZXZlbG9wZXItZ3VpZGUvbm9kZS1yZXVzaW5nLWNvbm5lY3Rpb25zLmh0bWxcbiAgICpcbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgYXdzU2RrQ29ubmVjdGlvblJldXNlPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogV2hldGhlciB0byBjcmVhdGUgYSBgY2xvdWRmcm9udC5leHBlcmltZW50YWwuRWRnZUZ1bmN0aW9uYCBpbnN0ZWFkXG4gICAqIG9mIGEgYGxhbWJkYS5GdW5jdGlvbmAuXG4gICAqXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBlZGdlTGFtYmRhPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBPcHRpb25zIGZvciBgRnVuY3Rpb25gLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIExhbWJkYUZ1bmN0aW9uT3B0aW9ucyBleHRlbmRzIExhbWJkYUZ1bmN0aW9uQ29tbW9uT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBBIHBhdGggZnJvbSB0aGUgcHJvamVjdCByb290IGRpcmVjdG9yeSB0byBhIFR5cGVTY3JpcHQgZmlsZSB3aGljaCBjb250YWluc1xuICAgKiB0aGUgQVdTIExhbWJkYSBoYW5kbGVyIGVudHJ5cG9pbnQgKGV4cG9ydHMgYSBgaGFuZGxlcmAgZnVuY3Rpb24pLlxuICAgKlxuICAgKiBUaGlzIGlzIHJlbGF0aXZlIHRvIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGUgcHJvamVjdC5cbiAgICpcbiAgICogQGV4YW1wbGUgXCJzcmMvc3ViZGlyL2Zvby5sYW1iZGEudHNcIlxuICAgKi9cbiAgcmVhZG9ubHkgZW50cnlwb2ludDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgZ2VuZXJhdGVkIFR5cGVTY3JpcHQgc291cmNlIGZpbGUuIFRoaXMgZmlsZSBzaG91bGQgYWxzbyBiZVxuICAgKiB1bmRlciB0aGUgc291cmNlIHRyZWUuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gVGhlIG5hbWUgb2YgdGhlIGVudHJ5cG9pbnQgZmlsZSwgd2l0aCB0aGUgYC1mdW5jdGlvbi50c2Agc3VmZml4XG4gICAqIGluc3RlYWQgb2YgYC5sYW1iZGEudHNgLlxuICAgKi9cbiAgcmVhZG9ubHkgY29uc3RydWN0RmlsZT86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIGdlbmVyYXRlZCBgbGFtYmRhLkZ1bmN0aW9uYCBzdWJjbGFzcy5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBBIHBhc2NhbCBjYXNlZCB2ZXJzaW9uIG9mIHRoZSBuYW1lIG9mIHRoZSBlbnRyeXBvaW50IGZpbGUsIHdpdGhcbiAgICogdGhlIGV4dGVuc2lvbiBgRnVuY3Rpb25gIChlLmcuIGBSZXNpemVJbWFnZUZ1bmN0aW9uYCkuXG4gICAqL1xuICByZWFkb25seSBjb25zdHJ1Y3ROYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBV1MgQ0RLIGRlcGVuZGVuY3kgbWFuYWdlci5cbiAgICovXG4gIHJlYWRvbmx5IGNka0RlcHM6IEF3c0Nka0RlcHM7XG59XG5cbi8qKlxuICogR2VuZXJhdGVzIGEgcHJlLWJ1bmRsZWQgQVdTIExhbWJkYSBmdW5jdGlvbiBjb25zdHJ1Y3QgZnJvbSBoYW5kbGVyIGNvZGUuXG4gKlxuICogVG8gdXNlIHRoaXMsIGNyZWF0ZSBhbiBBV1MgTGFtYmRhIGhhbmRsZXIgZmlsZSB1bmRlciB5b3VyIHNvdXJjZSB0cmVlIHdpdGhcbiAqIHRoZSBgLmxhbWJkYS50c2AgZXh0ZW5zaW9uIGFuZCBhZGQgYSBgTGFtYmRhRnVuY3Rpb25gIGNvbXBvbmVudCB0byB5b3VyXG4gKiB0eXBlc2NyaXB0IHByb2plY3QgcG9pbnRpbmcgdG8gdGhpcyBlbnRyeXBvaW50LlxuICpcbiAqIFRoaXMgd2lsbCBhZGQgYSB0YXNrIHRvIHlvdXIgXCJjb21waWxlXCIgc3RlcCB3aGljaCB3aWxsIHVzZSBgZXNidWlsZGAgdG9cbiAqIGJ1bmRsZSB0aGUgaGFuZGxlciBjb2RlIGludG8gdGhlIGJ1aWxkIGRpcmVjdG9yeS4gSXQgd2lsbCBhbHNvIGdlbmVyYXRlIGFcbiAqIGZpbGUgYHNyYy9mb28tZnVuY3Rpb24udHNgIHdpdGggYSBjdXN0b20gQVdTIGNvbnN0cnVjdCBjYWxsZWQgYEZvb0Z1bmN0aW9uYFxuICogd2hpY2ggZXh0ZW5kcyBgQGF3cy1jZGsvYXdzLWxhbWJkYS5GdW5jdGlvbmAgd2hpY2ggaXMgYm91bmQgdG8gdGhlIGJ1bmRsZWRcbiAqIGhhbmRsZSB0aHJvdWdoIGFuIGFzc2V0LlxuICpcbiAqIEBleGFtcGxlXG4gKlxuICogbmV3IExhbWJkYUZ1bmN0aW9uKG15UHJvamVjdCwge1xuICogICBzcmNkaXI6IG15UHJvamVjdC5zcmNkaXIsXG4gKiAgIGVudHJ5cG9pbnQ6ICdzcmMvZm9vLmxhbWJkYS50cycsXG4gKiB9KTtcbiAqL1xuZXhwb3J0IGNsYXNzIExhbWJkYUZ1bmN0aW9uIGV4dGVuZHMgQ29tcG9uZW50IHtcbiAgLyoqXG4gICAqIERlZmluZXMgYSBwcmUtYnVuZGxlZCBBV1MgTGFtYmRhIGZ1bmN0aW9uIGNvbnN0cnVjdCBmcm9tIGhhbmRsZXIgY29kZS5cbiAgICpcbiAgICogQHBhcmFtIHByb2plY3QgVGhlIHByb2plY3QgdG8gdXNlXG4gICAqIEBwYXJhbSBvcHRpb25zIE9wdGlvbnNcbiAgICovXG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IFByb2plY3QsIG9wdGlvbnM6IExhbWJkYUZ1bmN0aW9uT3B0aW9ucykge1xuICAgIHN1cGVyKHByb2plY3QpO1xuXG4gICAgY29uc3QgY2RrRGVwcyA9IG9wdGlvbnMuY2RrRGVwcztcbiAgICBjb25zdCBidW5kbGVyID0gQnVuZGxlci5vZihwcm9qZWN0KTtcbiAgICBpZiAoIWJ1bmRsZXIpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgXCJObyBidW5kbGVyIGZvdW5kLiBQbGVhc2UgYWRkIGEgQnVuZGxlciBjb21wb25lbnQgdG8geW91ciBwcm9qZWN0LlwiXG4gICAgICApO1xuICAgIH1cblxuICAgIGNvbnN0IHJ1bnRpbWUgPSBvcHRpb25zLnJ1bnRpbWUgPz8gTGFtYmRhUnVudGltZS5OT0RFSlNfMTRfWDtcblxuICAgIC8vIGFsbG93IExhbWJkYSBoYW5kbGVyIGNvZGUgdG8gaW1wb3J0IGRldi1kZXBzIHNpbmNlIHRoZXkgYXJlIG9ubHkgbmVlZGVkXG4gICAgLy8gZHVyaW5nIGJ1bmRsaW5nXG4gICAgY29uc3QgZXNsaW50ID0gRXNsaW50Lm9mKHByb2plY3QpO1xuICAgIGVzbGludD8uYWxsb3dEZXZEZXBzKG9wdGlvbnMuZW50cnlwb2ludCk7XG5cbiAgICBjb25zdCBlbnRyeXBvaW50ID0gb3B0aW9ucy5lbnRyeXBvaW50O1xuXG4gICAgaWYgKFxuICAgICAgIWVudHJ5cG9pbnQuZW5kc1dpdGgoVFlQRVNDUklQVF9MQU1CREFfRVhUKSAmJlxuICAgICAgIWVudHJ5cG9pbnQuZW5kc1dpdGgoVFlQRVNDUklQVF9FREdFX0xBTUJEQV9FWFQpXG4gICAgKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGAke2VudHJ5cG9pbnR9IG11c3QgaGF2ZSBhICR7VFlQRVNDUklQVF9MQU1CREFfRVhUfSBvciAke1RZUEVTQ1JJUFRfRURHRV9MQU1CREFfRVhUfSBleHRlbnNpb25gXG4gICAgICApO1xuICAgIH1cblxuICAgIGNvbnN0IGJhc2VQYXRoID0gam9pbihcbiAgICAgIGRpcm5hbWUoZW50cnlwb2ludCksXG4gICAgICBiYXNlbmFtZShcbiAgICAgICAgZW50cnlwb2ludCxcbiAgICAgICAgb3B0aW9ucy5lZGdlTGFtYmRhID8gVFlQRVNDUklQVF9FREdFX0xBTUJEQV9FWFQgOiBUWVBFU0NSSVBUX0xBTUJEQV9FWFRcbiAgICAgIClcbiAgICApO1xuICAgIGNvbnN0IGNvbnN0cnVjdEZpbGUgPSBvcHRpb25zLmNvbnN0cnVjdEZpbGUgPz8gYCR7YmFzZVBhdGh9LWZ1bmN0aW9uLnRzYDtcblxuICAgIGlmIChleHRuYW1lKGNvbnN0cnVjdEZpbGUpICE9PSBcIi50c1wiKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBDb25zdHJ1Y3QgZmlsZSBuYW1lIFwiJHtjb25zdHJ1Y3RGaWxlfVwiIG11c3QgaGF2ZSBhIC50cyBleHRlbnNpb25gXG4gICAgICApO1xuICAgIH1cblxuICAgIC8vIHR5cGUgbmFtZXNcbiAgICBjb25zdCBjb25zdHJ1Y3ROYW1lID1cbiAgICAgIG9wdGlvbnMuY29uc3RydWN0TmFtZSA/PyBwYXNjYWwoYmFzZW5hbWUoYmFzZVBhdGgpKSArIFwiRnVuY3Rpb25cIjtcbiAgICBjb25zdCBwcm9wc1R5cGUgPSBgJHtjb25zdHJ1Y3ROYW1lfVByb3BzYDtcblxuICAgIGNvbnN0IGJ1bmRsZSA9IGJ1bmRsZXIuYWRkQnVuZGxlKGVudHJ5cG9pbnQsIHtcbiAgICAgIHRhcmdldDogcnVudGltZS5lc2J1aWxkVGFyZ2V0LFxuICAgICAgcGxhdGZvcm06IHJ1bnRpbWUuZXNidWlsZFBsYXRmb3JtLFxuICAgICAgZXh0ZXJuYWxzOiBbXCJhd3Mtc2RrXCJdLFxuICAgICAgLi4ub3B0aW9ucy5idW5kbGluZ09wdGlvbnMsXG4gICAgfSk7XG5cbiAgICAvLyBjYWxjdWxhdGUgdGhlIHJlbGF0aXZlIHBhdGggYmV0d2VlbiB0aGUgZGlyZWN0b3J5IGNvbnRhaW5pbmcgdGhlXG4gICAgLy8gZ2VuZXJhdGVkIGNvbnN0cnVjdCBzb3VyY2UgZmlsZSB0byB0aGUgZGlyZWN0b3J5IGNvbnRhaW5pbmcgdGhlIGJ1bmRsZVxuICAgIC8vIGluZGV4LmpzIGJ5IHJlc29sdmluZyB0aGVtIGFzIGFic29sdXRlIHBhdGhzIGZpcnN0LlxuICAgIC8vIGUuZzpcbiAgICAvLyAgLSBvdXRmaWxlQWJzID0+IGAvcHJvamVjdC1vdXRkaXIvYXNzZXRzL2Zvby9iYXIvYmF6L2Zvby1mdW5jdGlvbi9pbmRleC5qc2BcbiAgICAvLyAgLSBjb25zdHJ1Y3RBYnMgPT4gYC9wcm9qZWN0LW91dGRpci9zcmMvZm9vL2Jhci9iYXovZm9vLWZ1bmN0aW9uLnRzYFxuICAgIGNvbnN0IG91dGZpbGVBYnMgPSBqb2luKHByb2plY3Qub3V0ZGlyLCBidW5kbGUub3V0ZmlsZSk7XG4gICAgY29uc3QgY29uc3RydWN0QWJzID0gam9pbihwcm9qZWN0Lm91dGRpciwgY29uc3RydWN0RmlsZSk7XG4gICAgY29uc3QgcmVsYXRpdmVPdXRmaWxlID0gcmVsYXRpdmUoXG4gICAgICBkaXJuYW1lKGNvbnN0cnVjdEFicyksXG4gICAgICBkaXJuYW1lKG91dGZpbGVBYnMpXG4gICAgKTtcblxuICAgIGNvbnN0IHNyYyA9IG5ldyBTb3VyY2VDb2RlKHByb2plY3QsIGNvbnN0cnVjdEZpbGUpO1xuICAgIGlmIChzcmMubWFya2VyKSB7XG4gICAgICBzcmMubGluZShgLy8gJHtzcmMubWFya2VyfWApO1xuICAgIH1cbiAgICBzcmMubGluZShcImltcG9ydCAqIGFzIHBhdGggZnJvbSAncGF0aCc7XCIpO1xuXG4gICAgaWYgKGNka0RlcHMuY2RrTWFqb3JWZXJzaW9uID09PSAxKSB7XG4gICAgICBpZiAob3B0aW9ucy5lZGdlTGFtYmRhKSB7XG4gICAgICAgIHNyYy5saW5lKFwiaW1wb3J0ICogYXMgY2xvdWRmcm9udCBmcm9tICdAYXdzLWNkay9hd3MtY2xvdWRmcm9udCc7XCIpO1xuICAgICAgICBjZGtEZXBzLmFkZFYxRGVwZW5kZW5jaWVzKFwiQGF3cy1jZGsvYXdzLWNsb3VkZnJvbnRcIik7XG4gICAgICB9XG4gICAgICBzcmMubGluZShcImltcG9ydCAqIGFzIGxhbWJkYSBmcm9tICdAYXdzLWNkay9hd3MtbGFtYmRhJztcIik7XG4gICAgICBzcmMubGluZShcImltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ0Bhd3MtY2RrL2NvcmUnO1wiKTtcbiAgICAgIGNka0RlcHMuYWRkVjFEZXBlbmRlbmNpZXMoXCJAYXdzLWNkay9hd3MtbGFtYmRhXCIpO1xuICAgICAgY2RrRGVwcy5hZGRWMURlcGVuZGVuY2llcyhcIkBhd3MtY2RrL2NvcmVcIik7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmIChvcHRpb25zLmVkZ2VMYW1iZGEpIHtcbiAgICAgICAgc3JjLmxpbmUoXCJpbXBvcnQgKiBhcyBjbG91ZGZyb250IGZyb20gJ2F3cy1jZGstbGliL2F3cy1jbG91ZGZyb250JztcIik7XG4gICAgICB9XG4gICAgICBzcmMubGluZShcImltcG9ydCAqIGFzIGxhbWJkYSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtbGFtYmRhJztcIik7XG4gICAgICBzcmMubGluZShcImltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1wiKTtcbiAgICB9XG5cbiAgICBzcmMubGluZSgpO1xuICAgIHNyYy5saW5lKFwiLyoqXCIpO1xuICAgIHNyYy5saW5lKGAgKiBQcm9wcyBmb3IgJHtjb25zdHJ1Y3ROYW1lfWApO1xuICAgIHNyYy5saW5lKFwiICovXCIpO1xuICAgIGlmIChvcHRpb25zLmVkZ2VMYW1iZGEpIHtcbiAgICAgIHNyYy5vcGVuKFxuICAgICAgICBgZXhwb3J0IGludGVyZmFjZSAke3Byb3BzVHlwZX0gZXh0ZW5kcyBjbG91ZGZyb250LmV4cGVyaW1lbnRhbC5FZGdlRnVuY3Rpb25Qcm9wcyB7YFxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgc3JjLm9wZW4oXG4gICAgICAgIGBleHBvcnQgaW50ZXJmYWNlICR7cHJvcHNUeXBlfSBleHRlbmRzIGxhbWJkYS5GdW5jdGlvbk9wdGlvbnMge2BcbiAgICAgICk7XG4gICAgfVxuICAgIHNyYy5jbG9zZShcIn1cIik7XG4gICAgc3JjLmxpbmUoKTtcbiAgICBzcmMubGluZShcIi8qKlwiKTtcbiAgICBzcmMubGluZShcbiAgICAgIGAgKiBBbiBBV1MgTGFtYmRhIGZ1bmN0aW9uIHdoaWNoIGV4ZWN1dGVzICR7Y29udmVydFRvUG9zaXhQYXRoKFxuICAgICAgICBiYXNlUGF0aFxuICAgICAgKX0uYFxuICAgICk7XG4gICAgc3JjLmxpbmUoXCIgKi9cIik7XG4gICAgaWYgKG9wdGlvbnMuZWRnZUxhbWJkYSkge1xuICAgICAgc3JjLm9wZW4oXG4gICAgICAgIGBleHBvcnQgY2xhc3MgJHtjb25zdHJ1Y3ROYW1lfSBleHRlbmRzIGNsb3VkZnJvbnQuZXhwZXJpbWVudGFsLkVkZ2VGdW5jdGlvbiB7YFxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgc3JjLm9wZW4oYGV4cG9ydCBjbGFzcyAke2NvbnN0cnVjdE5hbWV9IGV4dGVuZHMgbGFtYmRhLkZ1bmN0aW9uIHtgKTtcbiAgICB9XG4gICAgc3JjLm9wZW4oXG4gICAgICBgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM/OiAke3Byb3BzVHlwZX0pIHtgXG4gICAgKTtcbiAgICBzcmMub3BlbihcInN1cGVyKHNjb3BlLCBpZCwge1wiKTtcbiAgICBzcmMubGluZShgZGVzY3JpcHRpb246ICcke2NvbnZlcnRUb1Bvc2l4UGF0aChlbnRyeXBvaW50KX0nLGApO1xuICAgIHNyYy5saW5lKFwiLi4ucHJvcHMsXCIpO1xuICAgIHNyYy5saW5lKGBydW50aW1lOiBsYW1iZGEuUnVudGltZS4ke3J1bnRpbWUuZnVuY3Rpb25SdW50aW1lfSxgKTtcbiAgICBzcmMubGluZShcImhhbmRsZXI6ICdpbmRleC5oYW5kbGVyJyxcIik7XG4gICAgc3JjLmxpbmUoXG4gICAgICBgY29kZTogbGFtYmRhLkNvZGUuZnJvbUFzc2V0KHBhdGguam9pbihfX2Rpcm5hbWUsICcke2NvbnZlcnRUb1Bvc2l4UGF0aChcbiAgICAgICAgcmVsYXRpdmVPdXRmaWxlXG4gICAgICApfScpKSxgXG4gICAgKTtcbiAgICBzcmMuY2xvc2UoXCJ9KTtcIik7XG4gICAgaWYgKChvcHRpb25zLmF3c1Nka0Nvbm5lY3Rpb25SZXVzZSA/PyB0cnVlKSAmJiAhb3B0aW9ucy5lZGdlTGFtYmRhKSB7XG4gICAgICBzcmMubGluZShcbiAgICAgICAgXCJ0aGlzLmFkZEVudmlyb25tZW50KCdBV1NfTk9ERUpTX0NPTk5FQ1RJT05fUkVVU0VfRU5BQkxFRCcsICcxJywgeyByZW1vdmVJbkVkZ2U6IHRydWUgfSk7XCJcbiAgICAgICk7XG4gICAgfVxuICAgIHNyYy5jbG9zZShcIn1cIik7XG4gICAgc3JjLmNsb3NlKFwifVwiKTtcblxuICAgIHRoaXMucHJvamVjdC5sb2dnZXIudmVyYm9zZShcbiAgICAgIGAke2Jhc2VQYXRofTogY29uc3RydWN0IFwiJHtjb25zdHJ1Y3ROYW1lfVwiIGdlbmVyYXRlZCB1bmRlciBcIiR7Y29uc3RydWN0RmlsZX1cImBcbiAgICApO1xuICAgIHRoaXMucHJvamVjdC5sb2dnZXIudmVyYm9zZShcbiAgICAgIGAke2Jhc2VQYXRofTogYnVuZGxlIHRhc2sgXCIke2J1bmRsZS5idW5kbGVUYXNrLm5hbWV9XCJgXG4gICAgKTtcbiAgICBpZiAoYnVuZGxlLndhdGNoVGFzaykge1xuICAgICAgdGhpcy5wcm9qZWN0LmxvZ2dlci52ZXJib3NlKFxuICAgICAgICBgJHtiYXNlUGF0aH06IGJ1bmRsZSB3YXRjaCB0YXNrIFwiJHtidW5kbGUud2F0Y2hUYXNrLm5hbWV9XCJgXG4gICAgICApO1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIFRoZSBydW50aW1lIGZvciB0aGUgQVdTIExhbWJkYSBmdW5jdGlvbi5cbiAqL1xuZXhwb3J0IGNsYXNzIExhbWJkYVJ1bnRpbWUge1xuICAvKipcbiAgICogTm9kZS5qcyAxMC54XG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IE5PREVKU18xMF9YID0gbmV3IExhbWJkYVJ1bnRpbWUoXG4gICAgXCJOT0RFSlNfMTBfWFwiLFxuICAgIFwibm9kZTEwXCJcbiAgKTtcblxuICAvKipcbiAgICogTm9kZS5qcyAxMi54XG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IE5PREVKU18xMl9YID0gbmV3IExhbWJkYVJ1bnRpbWUoXG4gICAgXCJOT0RFSlNfMTJfWFwiLFxuICAgIFwibm9kZTEyXCJcbiAgKTtcblxuICAvKipcbiAgICogTm9kZS5qcyAxNC54XG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IE5PREVKU18xNF9YID0gbmV3IExhbWJkYVJ1bnRpbWUoXG4gICAgXCJOT0RFSlNfMTRfWFwiLFxuICAgIFwibm9kZTE0XCJcbiAgKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgZXNidWlsZFBsYXRmb3JtID0gXCJub2RlXCI7XG5cbiAgcHJpdmF0ZSBjb25zdHJ1Y3RvcihcbiAgICAvKipcbiAgICAgKiBUaGUgYXdzLWxhbWJkYS5SdW50aW1lIG1lbWJlciBuYW1lIHRvIHVzZS5cbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgZnVuY3Rpb25SdW50aW1lOiBzdHJpbmcsXG5cbiAgICAvKipcbiAgICAgKiBUaGUgZXNidWlsZCBzZXR0aW5nIHRvIHVzZS5cbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgZXNidWlsZFRhcmdldDogc3RyaW5nXG4gICkge31cbn1cbiJdfQ==
@@ -172,4 +172,3 @@ export interface AddPostBuildJobCommandsOptions {
172
172
  */
173
173
  readonly runsOn?: string[];
174
174
  }
175
- //# sourceMappingURL=build-workflow.d.ts.map