aws-cdk 2.31.2 → 2.33.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (355) hide show
  1. package/CONTRIBUTING.md +29 -0
  2. package/README.md +7 -6
  3. package/THIRD_PARTY_LICENSES +9 -5
  4. package/build-info.json +2 -2
  5. package/lib/api/cloudformation-deployments.d.ts +1 -1
  6. package/lib/api/cloudformation-deployments.js +3 -3
  7. package/lib/api/nested-stack-helpers.d.ts +13 -13
  8. package/lib/api/nested-stack-helpers.js +7 -7
  9. package/lib/api/util/cloudformation.d.ts +3 -2
  10. package/lib/api/util/cloudformation.js +9 -5
  11. package/lib/bridge.js +25 -15
  12. package/lib/cdk-toolkit.d.ts +7 -0
  13. package/lib/cdk-toolkit.js +2 -2
  14. package/lib/cli.js +6 -3
  15. package/lib/commands/context.js +67 -7
  16. package/lib/index.js +13639 -5366
  17. package/lib/init-templates/{v1/app → app}/csharp/.template.gitignore +0 -0
  18. package/lib/init-templates/{v1/app → app}/csharp/README.md +0 -0
  19. package/lib/init-templates/app/csharp/add-project.hook.d.ts +2 -0
  20. package/lib/init-templates/{v2/app → app}/csharp/add-project.hook.js +1 -1
  21. package/lib/init-templates/{v1/app → app}/csharp/cdk.template.json +0 -0
  22. package/lib/init-templates/{v2/app → app}/csharp/src/%name.PascalCased%/%name.PascalCased%.template.csproj +0 -0
  23. package/lib/init-templates/{v2/app → app}/csharp/src/%name.PascalCased%/%name.PascalCased%Stack.template.cs +0 -0
  24. package/lib/init-templates/{v1/app → app}/csharp/src/%name.PascalCased%/GlobalSuppressions.cs +0 -0
  25. package/lib/init-templates/{v2/app → app}/csharp/src/%name.PascalCased%/Program.template.cs +0 -0
  26. package/lib/init-templates/{v1/app → app}/csharp/src/%name.PascalCased%.template.sln +0 -0
  27. package/lib/init-templates/{v1/app → app}/fsharp/.template.gitignore +0 -0
  28. package/lib/init-templates/{v1/app → app}/fsharp/README.md +0 -0
  29. package/lib/init-templates/app/fsharp/add-project.hook.d.ts +2 -0
  30. package/lib/init-templates/{v1/app → app}/fsharp/add-project.hook.js +1 -1
  31. package/lib/init-templates/{v1/app → app}/fsharp/cdk.template.json +0 -0
  32. package/lib/init-templates/{v2/app → app}/fsharp/src/%name.PascalCased%/%name.PascalCased%.template.fsproj +0 -0
  33. package/lib/init-templates/{v1/app → app}/fsharp/src/%name.PascalCased%/%name.PascalCased%Stack.template.fs +0 -0
  34. package/lib/init-templates/{v1/app → app}/fsharp/src/%name.PascalCased%/Program.template.fs +0 -0
  35. package/lib/init-templates/{v1/app → app}/fsharp/src/%name.PascalCased%.template.sln +0 -0
  36. package/lib/init-templates/{v2/app → app}/go/%name%.template.go +0 -0
  37. package/lib/init-templates/{v2/app → app}/go/%name%_test.template.go +0 -0
  38. package/lib/init-templates/{v1/app → app}/go/.template.gitignore +0 -0
  39. package/lib/init-templates/{v2/app → app}/go/README.md +1 -3
  40. package/lib/init-templates/{v1/app → app}/go/cdk.template.json +0 -0
  41. package/lib/init-templates/{v2/app → app}/go/go.template.mod +0 -0
  42. package/lib/init-templates/{v1/app → app}/info.json +0 -0
  43. package/lib/init-templates/{v1/app → app}/java/.template.gitignore +0 -0
  44. package/lib/init-templates/{v1/app → app}/java/README.md +0 -0
  45. package/lib/init-templates/{v1/app → app}/java/cdk.json +0 -0
  46. package/lib/init-templates/{v2/app → app}/java/pom.xml +0 -0
  47. package/lib/init-templates/{v2/app → app}/java/src/main/java/com/myorg/%name.PascalCased%App.template.java +0 -0
  48. package/lib/init-templates/{v2/app → app}/java/src/main/java/com/myorg/%name.PascalCased%Stack.template.java +0 -0
  49. package/lib/init-templates/{v2/app → app}/java/src/test/java/com/myorg/%name.PascalCased%Test.template.java +0 -0
  50. package/lib/init-templates/app/java/sub-placeholders.hook.d.ts +2 -0
  51. package/lib/init-templates/{v1/app → app}/java/sub-placeholders.hook.js +1 -1
  52. package/lib/init-templates/{v1/app → app}/javascript/.template.gitignore +0 -0
  53. package/lib/init-templates/{v1/app → app}/javascript/.template.npmignore +0 -0
  54. package/lib/init-templates/{v1/app → app}/javascript/README.md +0 -0
  55. package/lib/init-templates/{v2/app → app}/javascript/bin/%name%.template.js +0 -0
  56. package/lib/init-templates/{v1/app → app}/javascript/cdk.template.json +0 -0
  57. package/lib/init-templates/{v1/sample-app → app}/javascript/jest.config.js +0 -0
  58. package/lib/init-templates/{v2/app → app}/javascript/lib/%name%-stack.template.js +0 -0
  59. package/lib/init-templates/{v2/app → app}/javascript/package.json +0 -0
  60. package/lib/init-templates/app/javascript/sub-placeholders.hook.d.ts +2 -0
  61. package/lib/init-templates/{v1/sample-app → app}/javascript/sub-placeholders.hook.js +1 -1
  62. package/lib/init-templates/{v2/app → app}/javascript/test/%name%.test.template.js +0 -0
  63. package/lib/init-templates/{v2/app → app}/python/%name.PythonModule%/%name.PythonModule%_stack.template.py +0 -0
  64. package/lib/init-templates/{v1/app → app}/python/%name.PythonModule%/__init__.py +0 -0
  65. package/lib/init-templates/{v2/app → app}/python/.template.gitignore +0 -0
  66. package/lib/init-templates/{v1/app → app}/python/README.template.md +0 -0
  67. package/lib/init-templates/{v2/app → app}/python/app.template.py +0 -0
  68. package/lib/init-templates/{v1/app → app}/python/cdk.template.json +0 -0
  69. package/lib/init-templates/{v1/app → app}/python/requirements-dev.txt +0 -0
  70. package/lib/init-templates/{v2/app → app}/python/requirements.txt +0 -0
  71. package/lib/init-templates/{v1/app → app}/python/source.bat +0 -0
  72. package/lib/init-templates/app/python/sub-placeholders.hook.d.ts +2 -0
  73. package/lib/init-templates/{v1/sample-app → app}/python/sub-placeholders.hook.js +1 -1
  74. package/lib/init-templates/{v1/app → app}/python/tests/__init__.py +0 -0
  75. package/lib/init-templates/{v1/app → app}/python/tests/unit/__init__.py +0 -0
  76. package/lib/init-templates/{v2/app → app}/python/tests/unit/test_%name.PythonModule%_stack.template.py +0 -0
  77. package/lib/init-templates/{v1/app → app}/typescript/.template.gitignore +0 -0
  78. package/lib/init-templates/{v1/app → app}/typescript/.template.npmignore +0 -0
  79. package/lib/init-templates/{v1/app → app}/typescript/README.md +0 -0
  80. package/lib/init-templates/{v2/app → app}/typescript/bin/%name%.template.ts +0 -0
  81. package/lib/init-templates/{v1/app → app}/typescript/cdk.template.json +0 -0
  82. package/lib/init-templates/{v1/app → app}/typescript/jest.config.js +0 -0
  83. package/lib/init-templates/{v2/app → app}/typescript/lib/%name%-stack.template.ts +0 -0
  84. package/lib/init-templates/{v2/app → app}/typescript/package.json +1 -1
  85. package/lib/init-templates/app/typescript/sub-placeholders.hook.d.ts +2 -0
  86. package/lib/init-templates/{v1/app/javascript → app/typescript}/sub-placeholders.hook.js +1 -1
  87. package/lib/init-templates/{v2/app → app}/typescript/test/%name%.test.template.ts +0 -0
  88. package/lib/init-templates/{v1/app → app}/typescript/tsconfig.json +0 -0
  89. package/lib/init-templates/{v1/lib → lib}/info.json +0 -0
  90. package/lib/init-templates/{v1/lib → lib}/typescript/.template.gitignore +0 -0
  91. package/lib/init-templates/{v1/lib → lib}/typescript/.template.npmignore +0 -0
  92. package/lib/init-templates/{v2/lib → lib}/typescript/README.template.md +0 -0
  93. package/lib/init-templates/{v1/lib → lib}/typescript/jest.config.js +0 -0
  94. package/lib/init-templates/{v2/lib → lib}/typescript/lib/index.template.ts +0 -0
  95. package/lib/init-templates/{v2/lib → lib}/typescript/package.json +0 -0
  96. package/lib/init-templates/lib/typescript/sub-placeholders.hook.d.ts +2 -0
  97. package/lib/init-templates/{v1/lib → lib}/typescript/sub-placeholders.hook.js +1 -1
  98. package/lib/init-templates/{v2/lib → lib}/typescript/test/%name%.test.template.ts +0 -0
  99. package/lib/init-templates/{v1/lib → lib}/typescript/tsconfig.json +0 -0
  100. package/lib/init-templates/{v1/sample-app → sample-app}/csharp/.template.gitignore +0 -0
  101. package/lib/init-templates/{v2/sample-app → sample-app}/csharp/README.template.md +0 -0
  102. package/lib/init-templates/sample-app/csharp/add-project.hook.d.ts +2 -0
  103. package/lib/init-templates/{v1/sample-app → sample-app}/csharp/add-project.hook.js +1 -1
  104. package/lib/init-templates/{v1/sample-app → sample-app}/csharp/cdk.template.json +0 -0
  105. package/lib/init-templates/{v2/sample-app → sample-app}/csharp/src/%name.PascalCased%/%name.PascalCased%.template.csproj +0 -0
  106. package/lib/init-templates/{v2/sample-app → sample-app}/csharp/src/%name.PascalCased%/%name.PascalCased%Stack.template.cs +0 -0
  107. package/lib/init-templates/{v1/sample-app → sample-app}/csharp/src/%name.PascalCased%/GlobalSuppressions.cs +0 -0
  108. package/lib/init-templates/{v1/sample-app → sample-app}/csharp/src/%name.PascalCased%/Program.template.cs +0 -0
  109. package/lib/init-templates/{v1/sample-app → sample-app}/csharp/src/%name.PascalCased%.template.sln +0 -0
  110. package/lib/init-templates/{v1/sample-app → sample-app}/fsharp/.template.gitignore +0 -0
  111. package/lib/init-templates/{v1/sample-app → sample-app}/fsharp/README.template.md +0 -0
  112. package/lib/init-templates/sample-app/fsharp/add-project.hook.d.ts +2 -0
  113. package/lib/init-templates/{v2/app → sample-app}/fsharp/add-project.hook.js +1 -1
  114. package/lib/init-templates/{v1/sample-app → sample-app}/fsharp/cdk.template.json +0 -0
  115. package/lib/init-templates/{v2/sample-app → sample-app}/fsharp/src/%name.PascalCased%/%name.PascalCased%.template.fsproj +0 -0
  116. package/lib/init-templates/{v2/sample-app → sample-app}/fsharp/src/%name.PascalCased%/%name.PascalCased%Stack.template.fs +1 -1
  117. package/lib/init-templates/{v1/sample-app → sample-app}/fsharp/src/%name.PascalCased%/Program.template.fs +0 -0
  118. package/lib/init-templates/{v1/sample-app → sample-app}/fsharp/src/%name.PascalCased%.template.sln +0 -0
  119. package/lib/init-templates/{v2/sample-app → sample-app}/go/%name%.template.go +0 -0
  120. package/lib/init-templates/{v2/sample-app → sample-app}/go/%name%_test.template.go +0 -0
  121. package/lib/init-templates/{v1/sample-app → sample-app}/go/.template.gitignore +0 -0
  122. package/lib/init-templates/{v2/sample-app → sample-app}/go/README.md +1 -3
  123. package/lib/init-templates/{v1/sample-app → sample-app}/go/cdk.template.json +0 -0
  124. package/lib/init-templates/{v2/sample-app → sample-app}/go/go.template.mod +0 -0
  125. package/lib/init-templates/{v1/sample-app → sample-app}/info.json +0 -0
  126. package/lib/init-templates/{v1/sample-app → sample-app}/java/.template.gitignore +0 -0
  127. package/lib/init-templates/{v2/sample-app → sample-app}/java/README.template.md +0 -0
  128. package/lib/init-templates/{v1/sample-app → sample-app}/java/cdk.json +0 -0
  129. package/lib/init-templates/{v2/sample-app → sample-app}/java/pom.xml +0 -0
  130. package/lib/init-templates/{v2/sample-app → sample-app}/java/src/main/java/com/myorg/%name.PascalCased%App.template.java +0 -0
  131. package/lib/init-templates/{v2/sample-app → sample-app}/java/src/main/java/com/myorg/%name.PascalCased%Stack.template.java +0 -0
  132. package/lib/init-templates/{v2/sample-app → sample-app}/java/src/test/java/com/myorg/%name.PascalCased%StackTest.template.java +0 -0
  133. package/lib/init-templates/sample-app/java/sub-placeholders.hook.d.ts +2 -0
  134. package/lib/init-templates/{v1/sample-app → sample-app}/java/sub-placeholders.hook.js +1 -1
  135. package/lib/init-templates/{v1/sample-app → sample-app}/javascript/.template.gitignore +0 -0
  136. package/lib/init-templates/{v1/sample-app → sample-app}/javascript/.template.npmignore +0 -0
  137. package/lib/init-templates/{v2/sample-app → sample-app}/javascript/README.template.md +0 -0
  138. package/lib/init-templates/{v2/sample-app → sample-app}/javascript/bin/%name%.template.js +0 -0
  139. package/lib/init-templates/{v1/sample-app → sample-app}/javascript/cdk.template.json +0 -0
  140. package/lib/init-templates/{v2/app → sample-app}/javascript/jest.config.js +0 -0
  141. package/lib/init-templates/{v2/sample-app → sample-app}/javascript/lib/%name%-stack.template.js +0 -0
  142. package/lib/init-templates/{v2/sample-app → sample-app}/javascript/package.json +0 -0
  143. package/lib/init-templates/sample-app/javascript/sub-placeholders.hook.d.ts +2 -0
  144. package/lib/init-templates/{v1/app/typescript → sample-app/javascript}/sub-placeholders.hook.js +1 -1
  145. package/lib/init-templates/{v2/sample-app → sample-app}/javascript/test/%name%.test.template.js +0 -0
  146. package/lib/init-templates/{v1/sample-app → sample-app}/javascript/tsconfig.json +0 -0
  147. package/lib/init-templates/{v2/sample-app → sample-app}/python/%name.PythonModule%/%name.PythonModule%_stack.template.py +0 -0
  148. package/lib/init-templates/{v1/sample-app → sample-app}/python/%name.PythonModule%/__init__.py +0 -0
  149. package/lib/init-templates/{v1/sample-app → sample-app}/python/.template.gitignore +0 -0
  150. package/lib/init-templates/{v2/sample-app → sample-app}/python/README.template.md +0 -0
  151. package/lib/init-templates/{v2/sample-app → sample-app}/python/app.template.py +0 -0
  152. package/lib/init-templates/{v1/sample-app → sample-app}/python/cdk.template.json +0 -0
  153. package/lib/init-templates/{v1/sample-app → sample-app}/python/requirements-dev.txt +0 -0
  154. package/lib/init-templates/{v2/sample-app → sample-app}/python/requirements.txt +0 -0
  155. package/lib/init-templates/{v1/sample-app → sample-app}/python/source.bat +0 -0
  156. package/lib/init-templates/sample-app/python/sub-placeholders.hook.d.ts +2 -0
  157. package/lib/init-templates/{v2/app → sample-app}/python/sub-placeholders.hook.js +1 -1
  158. package/lib/init-templates/{v1/sample-app → sample-app}/python/tests/__init__.py +0 -0
  159. package/lib/init-templates/{v1/sample-app → sample-app}/python/tests/unit/__init__.py +0 -0
  160. package/lib/init-templates/{v2/sample-app → sample-app}/python/tests/unit/test_%name.PythonModule%_stack.template.py +0 -0
  161. package/lib/init-templates/{v1/sample-app → sample-app}/typescript/.template.gitignore +0 -0
  162. package/lib/init-templates/{v1/sample-app → sample-app}/typescript/.template.npmignore +0 -0
  163. package/lib/init-templates/{v2/sample-app → sample-app}/typescript/README.template.md +0 -0
  164. package/lib/init-templates/{v2/sample-app → sample-app}/typescript/bin/%name%.template.ts +0 -0
  165. package/lib/init-templates/{v1/sample-app → sample-app}/typescript/cdk.template.json +0 -0
  166. package/lib/init-templates/{v1/sample-app → sample-app}/typescript/jest.config.js +0 -0
  167. package/lib/init-templates/{v2/sample-app → sample-app}/typescript/lib/%name%-stack.template.ts +0 -0
  168. package/lib/init-templates/{v2/sample-app → sample-app}/typescript/package.json +1 -1
  169. package/lib/init-templates/sample-app/typescript/sub-placeholders.hook.d.ts +2 -0
  170. package/lib/init-templates/sample-app/typescript/sub-placeholders.hook.js +9 -0
  171. package/lib/init-templates/{v2/sample-app → sample-app}/typescript/test/%name%.test.template.ts +0 -0
  172. package/lib/init-templates/{v1/sample-app → sample-app}/typescript/tsconfig.json +0 -0
  173. package/lib/init.js +3 -16
  174. package/lib/notices.js +9 -15
  175. package/lib/setup-sandbox.js +6 -3
  176. package/lib/util/directories.d.ts +11 -0
  177. package/lib/util/directories.js +19 -2
  178. package/package.json +14 -13
  179. package/test/api/deploy-stack.test.js +2 -2
  180. package/test/commands/context-command.test.js +186 -47
  181. package/test/init.test.js +50 -56
  182. package/test/integ/cli/cli.integtest.js +30 -1
  183. package/test/integ/cli/sam_cdk_integ_app/src/python/Function/requirements.txt +1 -1
  184. package/test/integ/cli/sam_cdk_integ_app/src/python/Layer/requirements.txt +1 -1
  185. package/test/util/cloudformation.test.js +31 -4
  186. package/lib/init-templates/v1/app/csharp/add-project.hook.d.ts +0 -2
  187. package/lib/init-templates/v1/app/csharp/add-project.hook.js +0 -31
  188. package/lib/init-templates/v1/app/csharp/src/%name.PascalCased%/%name.PascalCased%.template.csproj +0 -19
  189. package/lib/init-templates/v1/app/csharp/src/%name.PascalCased%/%name.PascalCased%Stack.template.cs +0 -12
  190. package/lib/init-templates/v1/app/csharp/src/%name.PascalCased%/Program.template.cs +0 -45
  191. package/lib/init-templates/v1/app/fsharp/add-project.hook.d.ts +0 -2
  192. package/lib/init-templates/v1/app/fsharp/src/%name.PascalCased%/%name.PascalCased%.template.fsproj +0 -24
  193. package/lib/init-templates/v1/app/go/%name%.template.go +0 -68
  194. package/lib/init-templates/v1/app/go/%name%_test.template.go +0 -26
  195. package/lib/init-templates/v1/app/go/README.md +0 -14
  196. package/lib/init-templates/v1/app/go/go.template.mod +0 -9
  197. package/lib/init-templates/v1/app/java/pom.xml +0 -60
  198. package/lib/init-templates/v1/app/java/src/main/java/com/myorg/%name.PascalCased%App.template.java +0 -41
  199. package/lib/init-templates/v1/app/java/src/main/java/com/myorg/%name.PascalCased%Stack.template.java +0 -24
  200. package/lib/init-templates/v1/app/java/src/test/java/com/myorg/%name.PascalCased%Test.template.java +0 -26
  201. package/lib/init-templates/v1/app/java/sub-placeholders.hook.d.ts +0 -2
  202. package/lib/init-templates/v1/app/javascript/bin/%name%.template.js +0 -21
  203. package/lib/init-templates/v1/app/javascript/jest.config.js +0 -3
  204. package/lib/init-templates/v1/app/javascript/lib/%name%-stack.template.js +0 -23
  205. package/lib/init-templates/v1/app/javascript/package.json +0 -20
  206. package/lib/init-templates/v1/app/javascript/sub-placeholders.hook.d.ts +0 -2
  207. package/lib/init-templates/v1/app/javascript/test/%name%.test.template.js +0 -18
  208. package/lib/init-templates/v1/app/python/%name.PythonModule%/%name.PythonModule%_stack.template.py +0 -24
  209. package/lib/init-templates/v1/app/python/.template.gitignore +0 -11
  210. package/lib/init-templates/v1/app/python/app.template.py +0 -34
  211. package/lib/init-templates/v1/app/python/requirements.txt +0 -2
  212. package/lib/init-templates/v1/app/python/sub-placeholders.hook.d.ts +0 -2
  213. package/lib/init-templates/v1/app/python/sub-placeholders.hook.js +0 -9
  214. package/lib/init-templates/v1/app/python/tests/unit/test_%name.PythonModule%_stack.template.py +0 -19
  215. package/lib/init-templates/v1/app/typescript/bin/%name%.template.ts +0 -21
  216. package/lib/init-templates/v1/app/typescript/lib/%name%-stack.template.ts +0 -15
  217. package/lib/init-templates/v1/app/typescript/package.json +0 -28
  218. package/lib/init-templates/v1/app/typescript/sub-placeholders.hook.d.ts +0 -2
  219. package/lib/init-templates/v1/app/typescript/test/%name%.test.template.ts +0 -17
  220. package/lib/init-templates/v1/lib/typescript/README.template.md +0 -12
  221. package/lib/init-templates/v1/lib/typescript/lib/index.template.ts +0 -20
  222. package/lib/init-templates/v1/lib/typescript/package.json +0 -26
  223. package/lib/init-templates/v1/lib/typescript/sub-placeholders.hook.d.ts +0 -2
  224. package/lib/init-templates/v1/lib/typescript/test/%name%.test.template.ts +0 -18
  225. package/lib/init-templates/v1/sample-app/csharp/README.template.md +0 -22
  226. package/lib/init-templates/v1/sample-app/csharp/add-project.hook.d.ts +0 -2
  227. package/lib/init-templates/v1/sample-app/csharp/src/%name.PascalCased%/%name.PascalCased%.template.csproj +0 -23
  228. package/lib/init-templates/v1/sample-app/csharp/src/%name.PascalCased%/%name.PascalCased%Stack.template.cs +0 -23
  229. package/lib/init-templates/v1/sample-app/fsharp/add-project.hook.d.ts +0 -2
  230. package/lib/init-templates/v1/sample-app/fsharp/add-project.hook.js +0 -31
  231. package/lib/init-templates/v1/sample-app/fsharp/src/%name.PascalCased%/%name.PascalCased%.template.fsproj +0 -27
  232. package/lib/init-templates/v1/sample-app/fsharp/src/%name.PascalCased%/%name.PascalCased%Stack.template.fs +0 -14
  233. package/lib/init-templates/v1/sample-app/go/%name%.template.go +0 -71
  234. package/lib/init-templates/v1/sample-app/go/%name%_test.template.go +0 -25
  235. package/lib/init-templates/v1/sample-app/go/README.md +0 -14
  236. package/lib/init-templates/v1/sample-app/go/go.template.mod +0 -9
  237. package/lib/init-templates/v1/sample-app/java/README.template.md +0 -23
  238. package/lib/init-templates/v1/sample-app/java/pom.xml +0 -72
  239. package/lib/init-templates/v1/sample-app/java/src/main/java/com/myorg/%name.PascalCased%App.template.java +0 -13
  240. package/lib/init-templates/v1/sample-app/java/src/main/java/com/myorg/%name.PascalCased%Stack.template.java +0 -29
  241. package/lib/init-templates/v1/sample-app/java/src/test/java/com/myorg/%name.PascalCased%StackTest.template.java +0 -26
  242. package/lib/init-templates/v1/sample-app/java/sub-placeholders.hook.d.ts +0 -2
  243. package/lib/init-templates/v1/sample-app/javascript/README.template.md +0 -17
  244. package/lib/init-templates/v1/sample-app/javascript/bin/%name%.template.js +0 -6
  245. package/lib/init-templates/v1/sample-app/javascript/lib/%name%-stack.template.js +0 -25
  246. package/lib/init-templates/v1/sample-app/javascript/package.json +0 -23
  247. package/lib/init-templates/v1/sample-app/javascript/sub-placeholders.hook.d.ts +0 -2
  248. package/lib/init-templates/v1/sample-app/javascript/test/%name%.test.template.js +0 -25
  249. package/lib/init-templates/v1/sample-app/python/%name.PythonModule%/%name.PythonModule%_stack.template.py +0 -24
  250. package/lib/init-templates/v1/sample-app/python/README.template.md +0 -68
  251. package/lib/init-templates/v1/sample-app/python/app.template.py +0 -11
  252. package/lib/init-templates/v1/sample-app/python/requirements.txt +0 -7
  253. package/lib/init-templates/v1/sample-app/python/sub-placeholders.hook.d.ts +0 -2
  254. package/lib/init-templates/v1/sample-app/python/tests/unit/test_%name.PythonModule%_stack.template.py +0 -24
  255. package/lib/init-templates/v1/sample-app/typescript/README.template.md +0 -19
  256. package/lib/init-templates/v1/sample-app/typescript/bin/%name%.template.ts +0 -6
  257. package/lib/init-templates/v1/sample-app/typescript/lib/%name%-stack.template.ts +0 -18
  258. package/lib/init-templates/v1/sample-app/typescript/package.json +0 -30
  259. package/lib/init-templates/v1/sample-app/typescript/sub-placeholders.hook.d.ts +0 -2
  260. package/lib/init-templates/v1/sample-app/typescript/sub-placeholders.hook.js +0 -9
  261. package/lib/init-templates/v1/sample-app/typescript/test/%name%.test.template.ts +0 -25
  262. package/lib/init-templates/v2/app/csharp/.template.gitignore +0 -342
  263. package/lib/init-templates/v2/app/csharp/README.md +0 -14
  264. package/lib/init-templates/v2/app/csharp/add-project.hook.d.ts +0 -2
  265. package/lib/init-templates/v2/app/csharp/cdk.template.json +0 -15
  266. package/lib/init-templates/v2/app/csharp/src/%name.PascalCased%/GlobalSuppressions.cs +0 -1
  267. package/lib/init-templates/v2/app/csharp/src/%name.PascalCased%.template.sln +0 -18
  268. package/lib/init-templates/v2/app/fsharp/.template.gitignore +0 -342
  269. package/lib/init-templates/v2/app/fsharp/README.md +0 -18
  270. package/lib/init-templates/v2/app/fsharp/add-project.hook.d.ts +0 -2
  271. package/lib/init-templates/v2/app/fsharp/cdk.template.json +0 -14
  272. package/lib/init-templates/v2/app/fsharp/src/%name.PascalCased%/%name.PascalCased%Stack.template.fs +0 -8
  273. package/lib/init-templates/v2/app/fsharp/src/%name.PascalCased%/Program.template.fs +0 -11
  274. package/lib/init-templates/v2/app/fsharp/src/%name.PascalCased%.template.sln +0 -18
  275. package/lib/init-templates/v2/app/go/.template.gitignore +0 -19
  276. package/lib/init-templates/v2/app/go/cdk.template.json +0 -13
  277. package/lib/init-templates/v2/app/info.json +0 -4
  278. package/lib/init-templates/v2/app/java/.template.gitignore +0 -13
  279. package/lib/init-templates/v2/app/java/README.md +0 -18
  280. package/lib/init-templates/v2/app/java/cdk.json +0 -13
  281. package/lib/init-templates/v2/app/java/sub-placeholders.hook.d.ts +0 -2
  282. package/lib/init-templates/v2/app/java/sub-placeholders.hook.js +0 -9
  283. package/lib/init-templates/v2/app/javascript/.template.gitignore +0 -5
  284. package/lib/init-templates/v2/app/javascript/.template.npmignore +0 -3
  285. package/lib/init-templates/v2/app/javascript/README.md +0 -12
  286. package/lib/init-templates/v2/app/javascript/cdk.template.json +0 -15
  287. package/lib/init-templates/v2/app/javascript/sub-placeholders.hook.d.ts +0 -2
  288. package/lib/init-templates/v2/app/javascript/sub-placeholders.hook.js +0 -9
  289. package/lib/init-templates/v2/app/python/%name.PythonModule%/__init__.py +0 -0
  290. package/lib/init-templates/v2/app/python/README.template.md +0 -58
  291. package/lib/init-templates/v2/app/python/cdk.template.json +0 -15
  292. package/lib/init-templates/v2/app/python/requirements-dev.txt +0 -1
  293. package/lib/init-templates/v2/app/python/source.bat +0 -13
  294. package/lib/init-templates/v2/app/python/sub-placeholders.hook.d.ts +0 -2
  295. package/lib/init-templates/v2/app/python/tests/__init__.py +0 -0
  296. package/lib/init-templates/v2/app/python/tests/unit/__init__.py +0 -0
  297. package/lib/init-templates/v2/app/typescript/.template.gitignore +0 -8
  298. package/lib/init-templates/v2/app/typescript/.template.npmignore +0 -6
  299. package/lib/init-templates/v2/app/typescript/README.md +0 -14
  300. package/lib/init-templates/v2/app/typescript/cdk.template.json +0 -17
  301. package/lib/init-templates/v2/app/typescript/jest.config.js +0 -8
  302. package/lib/init-templates/v2/app/typescript/sub-placeholders.hook.d.ts +0 -2
  303. package/lib/init-templates/v2/app/typescript/sub-placeholders.hook.js +0 -9
  304. package/lib/init-templates/v2/app/typescript/tsconfig.json +0 -30
  305. package/lib/init-templates/v2/lib/info.json +0 -4
  306. package/lib/init-templates/v2/lib/typescript/.template.gitignore +0 -8
  307. package/lib/init-templates/v2/lib/typescript/.template.npmignore +0 -6
  308. package/lib/init-templates/v2/lib/typescript/jest.config.js +0 -8
  309. package/lib/init-templates/v2/lib/typescript/sub-placeholders.hook.d.ts +0 -2
  310. package/lib/init-templates/v2/lib/typescript/sub-placeholders.hook.js +0 -9
  311. package/lib/init-templates/v2/lib/typescript/tsconfig.json +0 -30
  312. package/lib/init-templates/v2/sample-app/csharp/.template.gitignore +0 -342
  313. package/lib/init-templates/v2/sample-app/csharp/add-project.hook.d.ts +0 -2
  314. package/lib/init-templates/v2/sample-app/csharp/add-project.hook.js +0 -31
  315. package/lib/init-templates/v2/sample-app/csharp/cdk.template.json +0 -15
  316. package/lib/init-templates/v2/sample-app/csharp/src/%name.PascalCased%/GlobalSuppressions.cs +0 -1
  317. package/lib/init-templates/v2/sample-app/csharp/src/%name.PascalCased%/Program.template.cs +0 -15
  318. package/lib/init-templates/v2/sample-app/csharp/src/%name.PascalCased%.template.sln +0 -18
  319. package/lib/init-templates/v2/sample-app/fsharp/.template.gitignore +0 -342
  320. package/lib/init-templates/v2/sample-app/fsharp/README.template.md +0 -20
  321. package/lib/init-templates/v2/sample-app/fsharp/add-project.hook.d.ts +0 -2
  322. package/lib/init-templates/v2/sample-app/fsharp/add-project.hook.js +0 -31
  323. package/lib/init-templates/v2/sample-app/fsharp/cdk.template.json +0 -14
  324. package/lib/init-templates/v2/sample-app/fsharp/src/%name.PascalCased%/Program.template.fs +0 -11
  325. package/lib/init-templates/v2/sample-app/fsharp/src/%name.PascalCased%.template.sln +0 -18
  326. package/lib/init-templates/v2/sample-app/go/.template.gitignore +0 -19
  327. package/lib/init-templates/v2/sample-app/go/cdk.template.json +0 -13
  328. package/lib/init-templates/v2/sample-app/info.json +0 -4
  329. package/lib/init-templates/v2/sample-app/java/.template.gitignore +0 -13
  330. package/lib/init-templates/v2/sample-app/java/cdk.json +0 -13
  331. package/lib/init-templates/v2/sample-app/java/sub-placeholders.hook.d.ts +0 -2
  332. package/lib/init-templates/v2/sample-app/java/sub-placeholders.hook.js +0 -9
  333. package/lib/init-templates/v2/sample-app/javascript/.template.gitignore +0 -5
  334. package/lib/init-templates/v2/sample-app/javascript/.template.npmignore +0 -3
  335. package/lib/init-templates/v2/sample-app/javascript/cdk.template.json +0 -15
  336. package/lib/init-templates/v2/sample-app/javascript/jest.config.js +0 -3
  337. package/lib/init-templates/v2/sample-app/javascript/sub-placeholders.hook.d.ts +0 -2
  338. package/lib/init-templates/v2/sample-app/javascript/sub-placeholders.hook.js +0 -9
  339. package/lib/init-templates/v2/sample-app/javascript/tsconfig.json +0 -35
  340. package/lib/init-templates/v2/sample-app/python/%name.PythonModule%/__init__.py +0 -0
  341. package/lib/init-templates/v2/sample-app/python/.template.gitignore +0 -22
  342. package/lib/init-templates/v2/sample-app/python/cdk.template.json +0 -15
  343. package/lib/init-templates/v2/sample-app/python/requirements-dev.txt +0 -1
  344. package/lib/init-templates/v2/sample-app/python/source.bat +0 -13
  345. package/lib/init-templates/v2/sample-app/python/sub-placeholders.hook.d.ts +0 -2
  346. package/lib/init-templates/v2/sample-app/python/sub-placeholders.hook.js +0 -9
  347. package/lib/init-templates/v2/sample-app/python/tests/__init__.py +0 -0
  348. package/lib/init-templates/v2/sample-app/python/tests/unit/__init__.py +0 -0
  349. package/lib/init-templates/v2/sample-app/typescript/.template.gitignore +0 -8
  350. package/lib/init-templates/v2/sample-app/typescript/.template.npmignore +0 -6
  351. package/lib/init-templates/v2/sample-app/typescript/cdk.template.json +0 -17
  352. package/lib/init-templates/v2/sample-app/typescript/jest.config.js +0 -8
  353. package/lib/init-templates/v2/sample-app/typescript/sub-placeholders.hook.d.ts +0 -2
  354. package/lib/init-templates/v2/sample-app/typescript/sub-placeholders.hook.js +0 -9
  355. package/lib/init-templates/v2/sample-app/typescript/tsconfig.json +0 -30
@@ -9,24 +9,51 @@ const OVERRIDE = 'TheOverride';
9
9
  const USE_OVERRIDE = { ParameterKey: PARAM, ParameterValue: OVERRIDE };
10
10
  const USE_PREVIOUS = { ParameterKey: PARAM, UsePreviousValue: true };
11
11
  let sdkProvider;
12
+ let describeStackMock;
13
+ let getTemplateMock;
12
14
  let cfnMocks;
13
15
  let cfn;
14
16
  beforeEach(async () => {
15
17
  sdkProvider = new mock_sdk_1.MockSdkProvider();
18
+ describeStackMock = jest.fn();
19
+ getTemplateMock = jest.fn();
16
20
  cfnMocks = {
17
- describeStacks: jest.fn()
18
- // No stacks exist
19
- .mockImplementation(() => ({ Stacks: [] })),
21
+ describeStacks: describeStackMock,
22
+ getTemplate: getTemplateMock,
20
23
  };
21
24
  sdkProvider.stubCloudFormation(cfnMocks);
22
25
  cfn = (await sdkProvider.forEnvironment()).sdk.cloudFormation();
23
26
  });
24
27
  test('A non-existent stack pretends to have an empty template', async () => {
28
+ // GIVEN
29
+ describeStackMock.mockImplementation(() => ({ Stacks: [] })); // No stacks exist
25
30
  // WHEN
26
31
  const stack = await cloudformation_1.CloudFormationStack.lookup(cfn, 'Dummy');
27
32
  // THEN
28
33
  expect(await stack.template()).toEqual({});
29
34
  });
35
+ test("Retrieving a processed template passes 'Processed' to CloudFormation", async () => {
36
+ // GIVEN
37
+ describeStackMock.mockImplementation(() => ({
38
+ Stacks: [
39
+ {
40
+ StackName: 'Dummy',
41
+ },
42
+ ],
43
+ }));
44
+ getTemplateMock.mockImplementation(() => ({
45
+ TemplateBody: '{}',
46
+ }));
47
+ // WHEN
48
+ const retrieveProcessedTemplate = true;
49
+ const cloudFormationStack = await cloudformation_1.CloudFormationStack.lookup(cfn, 'Dummy', retrieveProcessedTemplate);
50
+ await cloudFormationStack.template();
51
+ // THEN
52
+ expect(getTemplateMock).toHaveBeenCalledWith({
53
+ StackName: 'Dummy',
54
+ TemplateStage: 'Processed',
55
+ });
56
+ });
30
57
  test.each([
31
58
  [false, false],
32
59
  [false, true],
@@ -141,4 +168,4 @@ function makeParams(defaultValue, hasPrevValue, override) {
141
168
  const stackParams = params.updateExisting({ [PARAM]: override ? OVERRIDE : undefined }, prevParams);
142
169
  return { apiParameters: stackParams.apiParameters, changed: stackParams.hasChanges(prevParams) };
143
170
  }
144
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xvdWRmb3JtYXRpb24udGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImNsb3VkZm9ybWF0aW9uLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSw0Q0FBeUQ7QUFDekQsc0VBQTRGO0FBQzVGLHlDQUFnRjtBQUVoRixNQUFNLEtBQUssR0FBRyxjQUFjLENBQUM7QUFDN0IsTUFBTSxPQUFPLEdBQUcsWUFBWSxDQUFDO0FBQzdCLE1BQU0sUUFBUSxHQUFHLGFBQWEsQ0FBQztBQUUvQixNQUFNLFlBQVksR0FBRyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxDQUFDO0FBQ3ZFLE1BQU0sWUFBWSxHQUFHLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxJQUFJLEVBQUUsQ0FBQztBQUVyRSxJQUFJLFdBQTRCLENBQUM7QUFDakMsSUFBSSxRQUErRCxDQUFDO0FBQ3BFLElBQUksR0FBdUIsQ0FBQztBQUM1QixVQUFVLENBQUMsS0FBSyxJQUFJLEVBQUU7SUFDcEIsV0FBVyxHQUFHLElBQUksMEJBQWUsRUFBRSxDQUFDO0lBRXBDLFFBQVEsR0FBRztRQUNULGNBQWMsRUFBRSxJQUFJLENBQUMsRUFBRSxFQUFFO1lBQ3ZCLGtCQUFrQjthQUNqQixrQkFBa0IsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7S0FDOUMsQ0FBQztJQUNGLFdBQVcsQ0FBQyxrQkFBa0IsQ0FBQyxRQUFlLENBQUMsQ0FBQztJQUNoRCxHQUFHLEdBQUcsQ0FBQyxNQUFNLFdBQVcsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxjQUFjLEVBQUUsQ0FBQztBQUNsRSxDQUFDLENBQUMsQ0FBQztBQUVILElBQUksQ0FBQyx5REFBeUQsRUFBRSxLQUFLLElBQUksRUFBRTtJQUN6RSxPQUFPO0lBQ1AsTUFBTSxLQUFLLEdBQUcsTUFB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QVcsQ0FBQyxVQUFVLENBQUMsRUFBRSxHQUFHLEVBQUUsYUFBYSxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNyRSxNQUFNLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQ2hFLENBQUMsQ0FBQyxDQUFDO0FBRUgsU0FBUyxVQUFVLENBQUMsWUFBcUIsRUFBRSxZQUFxQixFQUFFLFFBQWlCO0lBQ2pGLE1BQU0sTUFBTSxHQUFHLG1DQUFrQixDQUFDLFlBQVksQ0FBQztRQUM3QyxVQUFVLEVBQUU7WUFDVixDQUFDLEtBQUssQ0FBQyxFQUFFO2dCQUNQLElBQUksRUFBRSxRQUFRO2dCQUNkLE9BQU8sRUFBRSxZQUFZLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsU0FBUzthQUM1QztTQUNGO0tBQ0YsQ0FBQyxDQUFDO0lBQ0gsTUFBTSxVQUFVLEdBQTJCLFlBQVksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDbEYsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBRXBHLE9BQU8sRUFBRSxhQUFhLEVBQUUsV0FBVyxDQUFDLGFBQWEsRUFBRSxPQUFPLEVBQUUsV0FBVyxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO0FBQ25HLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTU01QQVJBTV9OT19JTlZBTElEQVRFIH0gZnJvbSAnQGF3cy1jZGsvY3gtYXBpJztcbmltcG9ydCB7IENsb3VkRm9ybWF0aW9uU3RhY2ssIFRlbXBsYXRlUGFyYW1ldGVycyB9IGZyb20gJy4uLy4uL2xpYi9hcGkvdXRpbC9jbG91ZGZvcm1hdGlvbic7XG5pbXBvcnQgeyBNb2NrZWRPYmplY3QsIE1vY2tTZGtQcm92aWRlciwgU3luY0hhbmRsZXJTdWJzZXRPZiB9IGZyb20gJy4vbW9jay1zZGsnO1xuXG5jb25zdCBQQVJBTSA9ICdUaGVQYXJhbWV0ZXInO1xuY29uc3QgREVGQVVMVCA9ICdUaGVEZWZhdWx0JztcbmNvbnN0IE9WRVJSSURFID0gJ1RoZU92ZXJyaWRlJztcblxuY29uc3QgVVNFX09WRVJSSURFID0geyBQYXJhbWV0ZXJLZXk6IFBBUkFNLCBQYXJhbWV0ZXJWYWx1ZTogT1ZFUlJJREUgfTtcbmNvbnN0IFVTRV9QUkVWSU9VUyA9IHsgUGFyYW1ldGVyS2V5OiBQQVJBTSwgVXNlUHJldmlvdXNWYWx1ZTogdHJ1ZSB9O1xuXG5sZXQgc2RrUHJvdmlkZXI6IE1vY2tTZGtQcm92aWRlcjtcbmxldCBjZm5Nb2NrczogTW9ja2VkT2JqZWN0PFN5bmNIYW5kbGVyU3Vic2V0T2Y8QVdTLkNsb3VkRm9ybWF0aW9uPj47XG5sZXQgY2ZuOiBBV1MuQ2xvdWRGb3JtYXRpb247XG5iZWZvcmVFYWNoKGFzeW5jICgpID0+IHtcbiAgc2RrUHJvdmlkZXIgPSBuZXcgTW9ja1Nka1Byb3ZpZGVyKCk7XG5cbiAgY2ZuTW9ja3MgPSB7XG4gICAgZGVzY3JpYmVTdGFja3M6IGplc3QuZm4oKVxuICAgICAgLy8gTm8gc3RhY2tzIGV4aXN0XG4gICAgICAubW9ja0ltcGxlbWVudGF0aW9uKCgpID0+ICh7IFN0YWNrczogW10gfSkpLFxuICB9O1xuICBzZGtQcm92aWRlci5zdHViQ2xvdWRGb3JtYXRpb24oY2ZuTW9ja3MgYXMgYW55KTtcbiAgY2ZuID0gKGF3YWl0IHNka1Byb3ZpZGVyLmZvckVudmlyb25tZW50KCkpLnNkay5jbG91ZEZvcm1hdGlvbigpO1xufSk7XG5cbnRlc3QoJ0Egbm9uLWV4aXN0ZW50IHN0YWNrIHByZXRlbmRzIHRvIGhhdmUgYW4gZW1wdHkgdGVtcGxhdGUnLCBhc3luYyAoKSA9PiB7XG4gIC8vIFdIRU5cbiAgY29uc3Qgc3RhY2sgPSBhd2FpdCBDbG91ZEZvcm1hdGlvblN0YWNrLmxvb2t1cChjZm4sICdEdW1teScpO1xuXG4gIC8vIFRIRU5cbiAgZXhwZWN0KGF3YWl0IHN0YWNrLnRlbXBsYXRlKCkpLnRvRXF1YWwoe30pO1xufSk7XG5cbnRlc3QuZWFjaChbXG4gIFtmYWxzZSwgZmFsc2VdLFxuICBbZmFsc2UsIHRydWVdLFxuICBbdHJ1ZSwgZmFsc2VdLFxuICBbdHJ1ZSwgdHJ1ZV0sXG5dKSgnZ2l2ZW4gb3ZlcnJpZGUsIGFsd2F5cyB1c2UgdGhlIG92ZXJyaWRlIChwYXJhbWV0ZXIgaGFzIGEgZGVmYXVsdDogJXAsIHBhcmFtZXRlciBwcmV2aW91c2x5IHN1cHBsaWVkOiAlcCknLFxuICAoaGF2ZURlZmF1bHQsIGhhdmVQcmV2aW91cykgPT4ge1xuICAgIGV4cGVjdChtYWtlUGFyYW1zKGhhdmVEZWZhdWx0LCBoYXZlUHJldmlvdXMsIHRydWUpKS50b0VxdWFsKHtcbiAgICAgIGFwaVBhcmFtZXRlcnM6IFtVU0VfT1ZFUlJJREVdLFxuICAgICAgY2hhbmdlZDogdHJ1ZSxcbiAgICB9KTtcbiAgfSk7XG5cbnRlc3QoJ25vIGRlZmF1bHQsIG5vIHByZXYsIG5vIG92ZXJyaWRlID0+IGVycm9yJywgKCkgPT4ge1xuICBleHBlY3QoKCkgPT4gbWFrZVBhcmFtcyhmYWxzZSwgZmFsc2UsIGZhbHNlKSkudG9UaHJvdygvbWlzc2luZyBhIHZhbHVlOiBUaGVQYXJhbWV0ZXIvKTtcbn0pO1xuXG50ZXN0KCdubyBkZWZhdWx0LCB5ZXMgcHJldiwgbm8gb3ZlcnJpZGUgPT4gdXNlIHByZXZpb3VzJywgKCkgPT4ge1xuICBleHBlY3QobWFrZVBhcmFtcyhmYWxzZSwgdHJ1ZSwgZmFsc2UpKS50b0VxdWFsKHtcbiAgICBhcGlQYXJhbWV0ZXJzOiBbVVNFX1BSRVZJT1VTXSxcbiAgICBjaGFuZ2VkOiBmYWxzZSxcbiAgfSk7XG59KTtcblxudGVzdCgnZGVmYXVsdCwgbm8gcHJldiwgbm8gb3ZlcnJpZGUgPT4gZW1wdHkgcGFyYW0gc2V0IChhbmQgb2J2aW91c2x5IGNoYW5nZXMgdG8gYmUgYXBwbGllZCknLCAoKSA9PiB7XG4gIGV4cGVjdChtYWtlUGFyYW1zKHRydWUsIGZhbHNlLCBmYWxzZSkpLnRvRXF1YWwoe1xuICAgIGFwaVBhcmFtZXRlcnM6IFtdLFxuICAgIGNoYW5nZWQ6IHRydWUsXG4gIH0pO1xufSk7XG5cbnRlc3QoJ2RlZmF1bHQsIHByZXYsIG5vIG92ZXJyaWRlID0+IHVzZSBwcmV2aW91cycsICgpID0+IHtcbiAgZXhwZWN0KG1ha2VQYXJhbXModHJ1ZSwgdHJ1ZSwgZmFsc2UpKS50b0VxdWFsKHtcbiAgICBhcGlQYXJhbWV0ZXJzOiBbVVNFX1BSRVZJT1VTXSxcbiAgICBjaGFuZ2VkOiBmYWxzZSxcbiAgfSk7XG59KTtcblxudGVzdCgnaWYgYSBwYXJhbWV0ZXIgaXMgcmV0cmlldmVkIGZyb20gU1NNLCB0aGUgcGFyYW1ldGVycyBhbHdheXMgY291bnQgYXMgY2hhbmdlZCcsICgpID0+IHtcbiAgY29uc3QgcGFyYW1zID0gVGVtcGxhdGVQYXJhbWV0ZXJzLmZyb21UZW1wbGF0ZSh7XG4gICAgUGFyYW1ldGVyczoge1xuICAgICAgRm9vOiB7XG4gICAgICAgIFR5cGU6ICdBV1M6OlNTTTo6UGFyYW1ldGVyOjpOYW1lJyxcbiAgICAgICAgRGVmYXVsdDogJy9Tb21lL0tleScsXG4gICAgICB9LFxuICAgIH0sXG4gIH0pO1xuICBjb25zdCBvbGRWYWx1ZXMgPSB7IEZvbzogJy9Tb21lL0tleScgfTtcblxuICAvLyBJZiB3ZSBkb24ndCBwYXNzIGEgbmV3IHZhbHVlXG4gIGV4cGVjdChwYXJhbXMudXBkYXRlRXhpc3Rpbmcoe30sIG9sZFZhbHVlcykuaGFzQ2hhbmdlcyhvbGRWYWx1ZXMpKS50b0VxdWFsKCdzc20nKTtcblxuICAvLyBJZiB3ZSBkbyBwYXNzIGEgbmV3IHZhbHVlIGJ1dCBpdCdzIHRoZSBzYW1lIGFzIHRoZSBvbGQgb25lXG4gIGV4cGVjdChwYXJhbXMudXBkYXRlRXhpc3RpbmcoeyBGb286ICcvU29tZS9LZXknIH0sIG9sZFZhbHVlcykuaGFzQ2hhbmdlcyhvbGRWYWx1ZXMpKS50b0VxdWFsKCdzc20nKTtcbn0pO1xuXG50ZXN0KCdpZiBhIHBhcmFtZXRlciBpcyByZXRyaWV2ZWQgZnJvbSBTU00sIHRoZSBwYXJhbWV0ZXJzIGRvZXNudCBjb3VudCBhcyBjaGFuZ2VkIGlmIGl0IGhhcyB0aGUgbWFnaWMgbWFya2VyJywgKCkgPT4ge1xuICBjb25zdCBwYXJhbXMgPSBUZW1wbGF0ZVBhcmFtZXRlcnMuZnJvbVRlbXBsYXRlKHtcbiAgICBQYXJhbWV0ZXJzOiB7XG4gICAgICBGb286IHtcbiAgICAgICAgVHlwZTogJ0FXUzo6U1NNOjpQYXJhbWV0ZXI6Ok5hbWUnLFxuICAgICAgICBEZWZhdWx0OiAnL1NvbWUvS2V5JyxcbiAgICAgICAgRGVzY3JpcHRpb246IGBibGFibGEgJHtTU01QQVJBTV9OT19JTlZBTElEQVRFfWAsXG4gICAgICB9LFxuICAgIH0sXG4gIH0pO1xuICBjb25zdCBvbGRWYWx1ZXMgPSB7IEZvbzogJy9Tb21lL0tleScgfTtcblxuICAvLyBJZiB3ZSBkb24ndCBwYXNzIGEgbmV3IHZhbHVlXG4gIGV4cGVjdChwYXJhbXMudXBkYXRlRXhpc3Rpbmcoe30sIG9sZFZhbHVlcykuaGFzQ2hhbmdlcyhvbGRWYWx1ZXMpKS50b0VxdWFsKGZhbHNlKTtcblxuICAvLyBJZiB3ZSBkbyBwYXNzIGEgbmV3IHZhbHVlIGJ1dCBpdCdzIHRoZSBzYW1lIGFzIHRoZSBvbGQgb25lXG4gIGV4cGVjdChwYXJhbXMudXBkYXRlRXhpc3RpbmcoeyBGb286ICcvU29tZS9LZXknIH0sIG9sZFZhbHVlcykuaGFzQ2hhbmdlcyhvbGRWYWx1ZXMpKS50b0VxdWFsKGZhbHNlKTtcblxuICAvLyBJZiB3ZSBkbyBwYXNzIGEgbmV3IHZhbHVlIGFuZCBpdCdzIGRpZmZlcmVudFxuICBleHBlY3QocGFyYW1zLnVwZGF0ZUV4aXN0aW5nKHsgRm9vOiAnL09USEVSL0tleScgfSwgb2xkVmFsdWVzKS5oYXNDaGFuZ2VzKG9sZFZhbHVlcykpLnRvRXF1YWwodHJ1ZSk7XG59KTtcblxudGVzdCgnZW1wdHkgc3RyaW5nIGlzIGEgdmFsaWQgdXBkYXRlIHZhbHVlJywgKCkgPT4ge1xuICBjb25zdCBwYXJhbXMgPSBUZW1wbGF0ZVBhcmFtZXRlcnMuZnJvbVRlbXBsYXRlKHtcbiAgICBQYXJhbWV0ZXJzOiB7XG4gICAgICBGb286IHsgVHlwZTogJ1N0cmluZycsIERlZmF1bHQ6ICdGb28nIH0sXG4gICAgfSxcbiAgfSk7XG5cbiAgZXhwZWN0KHBhcmFtcy51cGRhdGVFeGlzdGluZyh7IEZvbzogJycgfSwgeyBGb286ICdUaGlzSXNPbGQnIH0pLmFwaVBhcmFtZXRlcnMpLnRvRXF1YWwoW1xuICAgIHsgUGFyYW1ldGVyS2V5OiAnRm9vJywgUGFyYW1ldGVyVmFsdWU6ICcnIH0sXG4gIF0pO1xufSk7XG5cbnRlc3QoJ3Vua25vd24gcGFyYW1ldGVyIGluIG92ZXJyaWRlcywgcGFzcyBpdCBhbnl3YXknLCAoKSA9PiB7XG4gIC8vIE5vdCBzdXJlIGlmIHdlIHJlYWxseSB3YW50IHRoaXMuIEl0IHNlZW1zIGxpa2UgaXQgd291bGQgYmUgbmljZVxuICAvLyB0byBub3QgcGFzcyBwYXJhbWV0ZXJzIHRoYXQgYXJlbid0IGV4cGVjdGVkLCBnaXZlbiB0aGF0IENGTiB3aWxsXG4gIC8vIGp1c3QgZXJyb3Igb3V0LiBCdXQgbWF5YmUgd2Ugd2FudCB0byBiZSB3YXJuZWQgb2YgdHlwb3MuLi5cbiAgY29uc3QgcGFyYW1zID0gVGVtcGxhdGVQYXJhbWV0ZXJzLmZyb21UZW1wbGF0ZSh7XG4gICAgUGFyYW1ldGVyczoge1xuICAgICAgRm9vOiB7IFR5cGU6ICdTdHJpbmcnLCBEZWZhdWx0OiAnRm9vJyB9LFxuICAgIH0sXG4gIH0pO1xuXG4gIGV4cGVjdChwYXJhbXMudXBkYXRlRXhpc3RpbmcoeyBCYXI6ICdCYXInIH0sIHt9KS5hcGlQYXJhbWV0ZXJzKS50b0VxdWFsKFtcbiAgICB7IFBhcmFtZXRlcktleTogJ0JhcicsIFBhcmFtZXRlclZhbHVlOiAnQmFyJyB9LFxuICBdKTtcbn0pO1xuXG50ZXN0KCdpZiBhbiB1bnN1cHBsaWVkIHBhcmFtZXRlciByZXZlcnRzIHRvIGl0cyBkZWZhdWx0LCBpdCBjYW4gc3RpbGwgYmUgZGlydHknLCAoKSA9PiB7XG4gIC8vIEdJVkVOXG4gIGNvbnN0IHRlbXBsYXRlUGFyYW1zID0gVGVtcGxhdGVQYXJhbWV0ZXJzLmZyb21UZW1wbGF0ZSh7XG4gICAgUGFyYW1ldGVyczoge1xuICAgICAgRm9vOiB7IFR5cGU6ICdTdHJpbmcnLCBEZWZhdWx0OiAnRm9vJyB9LFxuICAgIH0sXG4gIH0pO1xuXG4gIC8vIFdIRU5cbiAgY29uc3Qgc3RhY2tQYXJhbXMgPSB0ZW1wbGF0ZVBhcmFtcy5zdXBwbHlBbGwoe30pO1xuXG4gIC8vIFRIRU5cbiAgZXhwZWN0KHN0YWNrUGFyYW1zLmhhc0NoYW5nZXMoeyBGb286ICdOb25TdGFuZGFyZCcgfSkpLnRvRXF1YWwodHJ1ZSk7XG4gIGV4cGVjdChzdGFja1BhcmFtcy5oYXNDaGFuZ2VzKHsgRm9vOiAnRm9vJyB9KSkudG9FcXVhbChmYWxzZSk7XG59KTtcblxuZnVuY3Rpb24gbWFrZVBhcmFtcyhkZWZhdWx0VmFsdWU6IGJvb2xlYW4sIGhhc1ByZXZWYWx1ZTogYm9vbGVhbiwgb3ZlcnJpZGU6IGJvb2xlYW4pIHtcbiAgY29uc3QgcGFyYW1zID0gVGVtcGxhdGVQYXJhbWV0ZXJzLmZyb21UZW1wbGF0ZSh7XG4gICAgUGFyYW1ldGVyczoge1xuICAgICAgW1BBUkFNXToge1xuICAgICAgICBUeXBlOiAnU3RyaW5nJyxcbiAgICAgICAgRGVmYXVsdDogZGVmYXVsdFZhbHVlID8gREVGQVVMVCA6IHVuZGVmaW5lZCxcbiAgICAgIH0sXG4gICAgfSxcbiAgfSk7XG4gIGNvbnN0IHByZXZQYXJhbXM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSBoYXNQcmV2VmFsdWUgPyB7IFtQQVJBTV06ICdGb28nIH0gOiB7fTtcbiAgY29uc3Qgc3RhY2tQYXJhbXMgPSBwYXJhbXMudXBkYXRlRXhpc3RpbmcoeyBbUEFSQU1dOiBvdmVycmlkZSA/IE9WRVJSSURFIDogdW5kZWZpbmVkIH0sIHByZXZQYXJhbXMpO1xuXG4gIHJldHVybiB7IGFwaVBhcmFtZXRlcnM6IHN0YWNrUGFyYW1zLmFwaVBhcmFtZXRlcnMsIGNoYW5nZWQ6IHN0YWNrUGFyYW1zLmhhc0NoYW5nZXMocHJldlBhcmFtcykgfTtcbn1cbiJdfQ==
171
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xvdWRmb3JtYXRpb24udGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImNsb3VkZm9ybWF0aW9uLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSw0Q0FBeUQ7QUFDekQsc0VBQTRGO0FBQzVGLHlDQUFnRjtBQUVoRixNQUFNLEtBQUssR0FBRyxjQUFjLENBQUM7QUFDN0IsTUFBTSxPQUFPLEdBQUcsWUFBWSxDQUFDO0FBQzdCLE1BQU0sUUFBUSxHQUFHLGFBQWEsQ0FBQztBQUUvQixNQUFNLFlBQVksR0FBRyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxDQUFDO0FBQ3ZFLE1BQU0sWUFBWSxHQUFHLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxJQUFJLEVBQUUsQ0FBQztBQUVyRSxJQUFJLFdBQTRCLENBQUM7QUFDakMsSUFBSSxpQkFBNEIsQ0FBQztBQUNqQyxJQUFJLGVBQTBCLENBQUM7QUFDL0IsSUFBSSxRQUErRCxDQUFDO0FBQ3BFLElBQUksR0FBdUIsQ0FBQztBQUM1QixVQUFVLENBQUMsS0FBSyxJQUFJLEVBQUU7SUFDcEIsV0FBVyxHQUFHLElBQUksMEJBQWUsRUFBRSxDQUFDO0lBRXBDLGlCQUFpQixHQUFHLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQztJQUM5QixlQUFlLEdBQUcsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDO0lBQzVCLFFBQVEsR0FBRztRQUNULGNBQWMsRUFBRSxpQkFBaUI7UUFDakMsV0FBVyxFQUFFLGVBQWU7S0FDN0IsQ0FBQztJQUNGLFdBQVcsQ0FBQyxrQkFBa0IsQ0FBQyxRQUFlLENBQUMsQ0FBQztJQUNoRCxHQUFHLEdBQUcsQ0FBQyxNQUFNLFdBQVcsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxjQUFjLEVBQUUsQ0FBQztBQUNsRSxDQUFDLENBQUMsQ0FBQztBQUVILElBQUksQ0FBQyx5REFBeUQsRUFB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QUFDLENBQUM7QUFDaEUsQ0FBQyxDQUFDLENBQUM7QUFFSCxTQUFTLFVBQVUsQ0FBQyxZQUFxQixFQUFFLFlBQXFCLEVBQUUsUUFBaUI7SUFDakYsTUFBTSxNQUFNLEdBQUcsbUNBQWtCLENBQUMsWUFBWSxDQUFDO1FBQzdDLFVBQVUsRUFBRTtZQUNWLENBQUMsS0FBSyxDQUFDLEVBQUU7Z0JBQ1AsSUFBSSxFQUFFLFFBQVE7Z0JBQ2QsT0FBTyxFQUFFLFlBQVksQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxTQUFTO2FBQzVDO1NBQ0Y7S0FDRixDQUFDLENBQUM7SUFDSCxNQUFNLFVBQVUsR0FBMkIsWUFBWSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUNsRixNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsU0FBUyxFQUFFLEVBQUUsVUFBVSxDQUFDLENBQUM7SUFFcEcsT0FBTyxFQUFFLGFBQWEsRUFBRSxXQUFXLENBQUMsYUFBYSxFQUFFLE9BQU8sRUFBRSxXQUFXLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUM7QUFDbkcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNTTVBBUkFNX05PX0lOVkFMSURBVEUgfSBmcm9tICdAYXdzLWNkay9jeC1hcGknO1xuaW1wb3J0IHsgQ2xvdWRGb3JtYXRpb25TdGFjaywgVGVtcGxhdGVQYXJhbWV0ZXJzIH0gZnJvbSAnLi4vLi4vbGliL2FwaS91dGlsL2Nsb3VkZm9ybWF0aW9uJztcbmltcG9ydCB7IE1vY2tlZE9iamVjdCwgTW9ja1Nka1Byb3ZpZGVyLCBTeW5jSGFuZGxlclN1YnNldE9mIH0gZnJvbSAnLi9tb2NrLXNkayc7XG5cbmNvbnN0IFBBUkFNID0gJ1RoZVBhcmFtZXRlcic7XG5jb25zdCBERUZBVUxUID0gJ1RoZURlZmF1bHQnO1xuY29uc3QgT1ZFUlJJREUgPSAnVGhlT3ZlcnJpZGUnO1xuXG5jb25zdCBVU0VfT1ZFUlJJREUgPSB7IFBhcmFtZXRlcktleTogUEFSQU0sIFBhcmFtZXRlclZhbHVlOiBPVkVSUklERSB9O1xuY29uc3QgVVNFX1BSRVZJT1VTID0geyBQYXJhbWV0ZXJLZXk6IFBBUkFNLCBVc2VQcmV2aW91c1ZhbHVlOiB0cnVlIH07XG5cbmxldCBzZGtQcm92aWRlcjogTW9ja1Nka1Byb3ZpZGVyO1xubGV0IGRlc2NyaWJlU3RhY2tNb2NrOiBqZXN0Lk1vY2s7XG5sZXQgZ2V0VGVtcGxhdGVNb2NrOiBqZXN0Lk1vY2s7XG5sZXQgY2ZuTW9ja3M6IE1vY2tlZE9iamVjdDxTeW5jSGFuZGxlclN1YnNldE9mPEFXUy5DbG91ZEZvcm1hdGlvbj4+O1xubGV0IGNmbjogQVdTLkNsb3VkRm9ybWF0aW9uO1xuYmVmb3JlRWFjaChhc3luYyAoKSA9PiB7XG4gIHNka1Byb3ZpZGVyID0gbmV3IE1vY2tTZGtQcm92aWRlcigpO1xuXG4gIGRlc2NyaWJlU3RhY2tNb2NrID0gamVzdC5mbigpO1xuICBnZXRUZW1wbGF0ZU1vY2sgPSBqZXN0LmZuKCk7XG4gIGNmbk1vY2tzID0ge1xuICAgIGRlc2NyaWJlU3RhY2tzOiBkZXNjcmliZVN0YWNrTW9jayxcbiAgICBnZXRUZW1wbGF0ZTogZ2V0VGVtcGxhdGVNb2NrLFxuICB9O1xuICBzZGtQcm92aWRlci5zdHViQ2xvdWRGb3JtYXRpb24oY2ZuTW9ja3MgYXMgYW55KTtcbiAgY2ZuID0gKGF3YWl0IHNka1Byb3ZpZGVyLmZvckVudmlyb25tZW50KCkpLnNkay5jbG91ZEZvcm1hdGlvbigpO1xufSk7XG5cbnRlc3QoJ0Egbm9uLWV4aXN0ZW50IHN0YWNrIHByZXRlbmRzIHRvIGhhdmUgYW4gZW1wdHkgdGVtcGxhdGUnLCBhc3luYyAoKSA9PiB7XG4gIC8vIEdJVkVOXG4gIGRlc2NyaWJlU3RhY2tNb2NrLm1vY2tJbXBsZW1lbnRhdGlvbigoKSA9PiAoeyBTdGFja3M6IFtdIH0pKTsgLy8gTm8gc3RhY2tzIGV4aXN0XG5cbiAgLy8gV0hFTlxuICBjb25zdCBzdGFjayA9IGF3YWl0IENsb3VkRm9ybWF0aW9uU3RhY2subG9va3VwKGNmbiwgJ0R1bW15Jyk7XG5cbiAgLy8gVEhFTlxuICBleHBlY3QoYXdhaXQgc3RhY2sudGVtcGxhdGUoKSkudG9FcXVhbCh7fSk7XG59KTtcblxudGVzdChcIlJldHJpZXZpbmcgYSBwcm9jZXNzZWQgdGVtcGxhdGUgcGFzc2VzICdQcm9jZXNzZWQnIHRvIENsb3VkRm9ybWF0aW9uXCIsIGFzeW5jICgpID0+IHtcbiAgLy8gR0lWRU5cbiAgZGVzY3JpYmVTdGFja01vY2subW9ja0ltcGxlbWVudGF0aW9uKCgpID0+ICh7XG4gICAgU3RhY2tzOiBbXG4gICAgICB7XG4gICAgICAgIFN0YWNrTmFtZTogJ0R1bW15JyxcbiAgICAgIH0sXG4gICAgXSxcbiAgfSkpO1xuICBnZXRUZW1wbGF0ZU1vY2subW9ja0ltcGxlbWVudGF0aW9uKCgpID0+ICh7XG4gICAgVGVtcGxhdGVCb2R5OiAne30nLFxuICB9KSk7XG5cbiAgLy8gV0hFTlxuICBjb25zdCByZXRyaWV2ZVByb2Nlc3NlZFRlbXBsYXRlID0gdHJ1ZTtcbiAgY29uc3QgY2xvdWRGb3JtYXRpb25TdGFjayA9IGF3YWl0IENsb3VkRm9ybWF0aW9uU3RhY2subG9va3VwKGNmbiwgJ0R1bW15JywgcmV0cmlldmVQcm9jZXNzZWRUZW1wbGF0ZSk7XG4gIGF3YWl0IGNsb3VkRm9ybWF0aW9uU3RhY2sudGVtcGxhdGUoKTtcblxuICAvLyBUSEVOXG4gIGV4cGVjdChnZXRUZW1wbGF0ZU1vY2spLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKHtcbiAgICBTdGFja05hbWU6ICdEdW1teScsXG4gICAgVGVtcGxhdGVTdGFnZTogJ1Byb2Nlc3NlZCcsXG4gIH0pO1xufSk7XG5cbnRlc3QuZWFjaChbXG4gIFtmYWxzZSwgZmFsc2VdLFxuICBbZmFsc2UsIHRydWVdLFxuICBbdHJ1ZSwgZmFsc2VdLFxuICBbdHJ1ZSwgdHJ1ZV0sXG5dKSgnZ2l2ZW4gb3ZlcnJpZGUsIGFsd2F5cyB1c2UgdGhlIG92ZXJyaWRlIChwYXJhbWV0ZXIgaGFzIGEgZGVmYXVsdDogJXAsIHBhcmFtZXRlciBwcmV2aW91c2x5IHN1cHBsaWVkOiAlcCknLFxuICAoaGF2ZURlZmF1bHQsIGhhdmVQcmV2aW91cykgPT4ge1xuICAgIGV4cGVjdChtYWtlUGFyYW1zKGhhdmVEZWZhdWx0LCBoYXZlUHJldmlvdXMsIHRydWUpKS50b0VxdWFsKHtcbiAgICAgIGFwaVBhcmFtZXRlcnM6IFtVU0VfT1ZFUlJJREVdLFxuICAgICAgY2hhbmdlZDogdHJ1ZSxcbiAgICB9KTtcbiAgfSk7XG5cbnRlc3QoJ25vIGRlZmF1bHQsIG5vIHByZXYsIG5vIG92ZXJyaWRlID0+IGVycm9yJywgKCkgPT4ge1xuICBleHBlY3QoKCkgPT4gbWFrZVBhcmFtcyhmYWxzZSwgZmFsc2UsIGZhbHNlKSkudG9UaHJvdygvbWlzc2luZyBhIHZhbHVlOiBUaGVQYXJhbWV0ZXIvKTtcbn0pO1xuXG50ZXN0KCdubyBkZWZhdWx0LCB5ZXMgcHJldiwgbm8gb3ZlcnJpZGUgPT4gdXNlIHByZXZpb3VzJywgKCkgPT4ge1xuICBleHBlY3QobWFrZVBhcmFtcyhmYWxzZSwgdHJ1ZSwgZmFsc2UpKS50b0VxdWFsKHtcbiAgICBhcGlQYXJhbWV0ZXJzOiBbVVNFX1BSRVZJT1VTXSxcbiAgICBjaGFuZ2VkOiBmYWxzZSxcbiAgfSk7XG59KTtcblxudGVzdCgnZGVmYXVsdCwgbm8gcHJldiwgbm8gb3ZlcnJpZGUgPT4gZW1wdHkgcGFyYW0gc2V0IChhbmQgb2J2aW91c2x5IGNoYW5nZXMgdG8gYmUgYXBwbGllZCknLCAoKSA9PiB7XG4gIGV4cGVjdChtYWtlUGFyYW1zKHRydWUsIGZhbHNlLCBmYWxzZSkpLnRvRXF1YWwoe1xuICAgIGFwaVBhcmFtZXRlcnM6IFtdLFxuICAgIGNoYW5nZWQ6IHRydWUsXG4gIH0pO1xufSk7XG5cbnRlc3QoJ2RlZmF1bHQsIHByZXYsIG5vIG92ZXJyaWRlID0+IHVzZSBwcmV2aW91cycsICgpID0+IHtcbiAgZXhwZWN0KG1ha2VQYXJhbXModHJ1ZSwgdHJ1ZSwgZmFsc2UpKS50b0VxdWFsKHtcbiAgICBhcGlQYXJhbWV0ZXJzOiBbVVNFX1BSRVZJT1VTXSxcbiAgICBjaGFuZ2VkOiBmYWxzZSxcbiAgfSk7XG59KTtcblxudGVzdCgnaWYgYSBwYXJhbWV0ZXIgaXMgcmV0cmlldmVkIGZyb20gU1NNLCB0aGUgcGFyYW1ldGVycyBhbHdheXMgY291bnQgYXMgY2hhbmdlZCcsICgpID0+IHtcbiAgY29uc3QgcGFyYW1zID0gVGVtcGxhdGVQYXJhbWV0ZXJzLmZyb21UZW1wbGF0ZSh7XG4gICAgUGFyYW1ldGVyczoge1xuICAgICAgRm9vOiB7XG4gICAgICAgIFR5cGU6ICdBV1M6OlNTTTo6UGFyYW1ldGVyOjpOYW1lJyxcbiAgICAgICAgRGVmYXVsdDogJy9Tb21lL0tleScsXG4gICAgICB9LFxuICAgIH0sXG4gIH0pO1xuICBjb25zdCBvbGRWYWx1ZXMgPSB7IEZvbzogJy9Tb21lL0tleScgfTtcblxuICAvLyBJZiB3ZSBkb24ndCBwYXNzIGEgbmV3IHZhbHVlXG4gIGV4cGVjdChwYXJhbXMudXBkYXRlRXhpc3Rpbmcoe30sIG9sZFZhbHVlcykuaGFzQ2hhbmdlcyhvbGRWYWx1ZXMpKS50b0VxdWFsKCdzc20nKTtcblxuICAvLyBJZiB3ZSBkbyBwYXNzIGEgbmV3IHZhbHVlIGJ1dCBpdCdzIHRoZSBzYW1lIGFzIHRoZSBvbGQgb25lXG4gIGV4cGVjdChwYXJhbXMudXBkYXRlRXhpc3RpbmcoeyBGb286ICcvU29tZS9LZXknIH0sIG9sZFZhbHVlcykuaGFzQ2hhbmdlcyhvbGRWYWx1ZXMpKS50b0VxdWFsKCdzc20nKTtcbn0pO1xuXG50ZXN0KCdpZiBhIHBhcmFtZXRlciBpcyByZXRyaWV2ZWQgZnJvbSBTU00sIHRoZSBwYXJhbWV0ZXJzIGRvZXNudCBjb3VudCBhcyBjaGFuZ2VkIGlmIGl0IGhhcyB0aGUgbWFnaWMgbWFya2VyJywgKCkgPT4ge1xuICBjb25zdCBwYXJhbXMgPSBUZW1wbGF0ZVBhcmFtZXRlcnMuZnJvbVRlbXBsYXRlKHtcbiAgICBQYXJhbWV0ZXJzOiB7XG4gICAgICBGb286IHtcbiAgICAgICAgVHlwZTogJ0FXUzo6U1NNOjpQYXJhbWV0ZXI6Ok5hbWUnLFxuICAgICAgICBEZWZhdWx0OiAnL1NvbWUvS2V5JyxcbiAgICAgICAgRGVzY3JpcHRpb246IGBibGFibGEgJHtTU01QQVJBTV9OT19JTlZBTElEQVRFfWAsXG4gICAgICB9LFxuICAgIH0sXG4gIH0pO1xuICBjb25zdCBvbGRWYWx1ZXMgPSB7IEZvbzogJy9Tb21lL0tleScgfTtcblxuICAvLyBJZiB3ZSBkb24ndCBwYXNzIGEgbmV3IHZhbHVlXG4gIGV4cGVjdChwYXJhbXMudXBkYXRlRXhpc3Rpbmcoe30sIG9sZFZhbHVlcykuaGFzQ2hhbmdlcyhvbGRWYWx1ZXMpKS50b0VxdWFsKGZhbHNlKTtcblxuICAvLyBJZiB3ZSBkbyBwYXNzIGEgbmV3IHZhbHVlIGJ1dCBpdCdzIHRoZSBzYW1lIGFzIHRoZSBvbGQgb25lXG4gIGV4cGVjdChwYXJhbXMudXBkYXRlRXhpc3RpbmcoeyBGb286ICcvU29tZS9LZXknIH0sIG9sZFZhbHVlcykuaGFzQ2hhbmdlcyhvbGRWYWx1ZXMpKS50b0VxdWFsKGZhbHNlKTtcblxuICAvLyBJZiB3ZSBkbyBwYXNzIGEgbmV3IHZhbHVlIGFuZCBpdCdzIGRpZmZlcmVudFxuICBleHBlY3QocGFyYW1zLnVwZGF0ZUV4aXN0aW5nKHsgRm9vOiAnL09USEVSL0tleScgfSwgb2xkVmFsdWVzKS5oYXNDaGFuZ2VzKG9sZFZhbHVlcykpLnRvRXF1YWwodHJ1ZSk7XG59KTtcblxudGVzdCgnZW1wdHkgc3RyaW5nIGlzIGEgdmFsaWQgdXBkYXRlIHZhbHVlJywgKCkgPT4ge1xuICBjb25zdCBwYXJhbXMgPSBUZW1wbGF0ZVBhcmFtZXRlcnMuZnJvbVRlbXBsYXRlKHtcbiAgICBQYXJhbWV0ZXJzOiB7XG4gICAgICBGb286IHsgVHlwZTogJ1N0cmluZycsIERlZmF1bHQ6ICdGb28nIH0sXG4gICAgfSxcbiAgfSk7XG5cbiAgZXhwZWN0KHBhcmFtcy51cGRhdGVFeGlzdGluZyh7IEZvbzogJycgfSwgeyBGb286ICdUaGlzSXNPbGQnIH0pLmFwaVBhcmFtZXRlcnMpLnRvRXF1YWwoW1xuICAgIHsgUGFyYW1ldGVyS2V5OiAnRm9vJywgUGFyYW1ldGVyVmFsdWU6ICcnIH0sXG4gIF0pO1xufSk7XG5cbnRlc3QoJ3Vua25vd24gcGFyYW1ldGVyIGluIG92ZXJyaWRlcywgcGFzcyBpdCBhbnl3YXknLCAoKSA9PiB7XG4gIC8vIE5vdCBzdXJlIGlmIHdlIHJlYWxseSB3YW50IHRoaXMuIEl0IHNlZW1zIGxpa2UgaXQgd291bGQgYmUgbmljZVxuICAvLyB0byBub3QgcGFzcyBwYXJhbWV0ZXJzIHRoYXQgYXJlbid0IGV4cGVjdGVkLCBnaXZlbiB0aGF0IENGTiB3aWxsXG4gIC8vIGp1c3QgZXJyb3Igb3V0LiBCdXQgbWF5YmUgd2Ugd2FudCB0byBiZSB3YXJuZWQgb2YgdHlwb3MuLi5cbiAgY29uc3QgcGFyYW1zID0gVGVtcGxhdGVQYXJhbWV0ZXJzLmZyb21UZW1wbGF0ZSh7XG4gICAgUGFyYW1ldGVyczoge1xuICAgICAgRm9vOiB7IFR5cGU6ICdTdHJpbmcnLCBEZWZhdWx0OiAnRm9vJyB9LFxuICAgIH0sXG4gIH0pO1xuXG4gIGV4cGVjdChwYXJhbXMudXBkYXRlRXhpc3RpbmcoeyBCYXI6ICdCYXInIH0sIHt9KS5hcGlQYXJhbWV0ZXJzKS50b0VxdWFsKFtcbiAgICB7IFBhcmFtZXRlcktleTogJ0JhcicsIFBhcmFtZXRlclZhbHVlOiAnQmFyJyB9LFxuICBdKTtcbn0pO1xuXG50ZXN0KCdpZiBhbiB1bnN1cHBsaWVkIHBhcmFtZXRlciByZXZlcnRzIHRvIGl0cyBkZWZhdWx0LCBpdCBjYW4gc3RpbGwgYmUgZGlydHknLCAoKSA9PiB7XG4gIC8vIEdJVkVOXG4gIGNvbnN0IHRlbXBsYXRlUGFyYW1zID0gVGVtcGxhdGVQYXJhbWV0ZXJzLmZyb21UZW1wbGF0ZSh7XG4gICAgUGFyYW1ldGVyczoge1xuICAgICAgRm9vOiB7IFR5cGU6ICdTdHJpbmcnLCBEZWZhdWx0OiAnRm9vJyB9LFxuICAgIH0sXG4gIH0pO1xuXG4gIC8vIFdIRU5cbiAgY29uc3Qgc3RhY2tQYXJhbXMgPSB0ZW1wbGF0ZVBhcmFtcy5zdXBwbHlBbGwoe30pO1xuXG4gIC8vIFRIRU5cbiAgZXhwZWN0KHN0YWNrUGFyYW1zLmhhc0NoYW5nZXMoeyBGb286ICdOb25TdGFuZGFyZCcgfSkpLnRvRXF1YWwodHJ1ZSk7XG4gIGV4cGVjdChzdGFja1BhcmFtcy5oYXNDaGFuZ2VzKHsgRm9vOiAnRm9vJyB9KSkudG9FcXVhbChmYWxzZSk7XG59KTtcblxuZnVuY3Rpb24gbWFrZVBhcmFtcyhkZWZhdWx0VmFsdWU6IGJvb2xlYW4sIGhhc1ByZXZWYWx1ZTogYm9vbGVhbiwgb3ZlcnJpZGU6IGJvb2xlYW4pIHtcbiAgY29uc3QgcGFyYW1zID0gVGVtcGxhdGVQYXJhbWV0ZXJzLmZyb21UZW1wbGF0ZSh7XG4gICAgUGFyYW1ldGVyczoge1xuICAgICAgW1BBUkFNXToge1xuICAgICAgICBUeXBlOiAnU3RyaW5nJyxcbiAgICAgICAgRGVmYXVsdDogZGVmYXVsdFZhbHVlID8gREVGQVVMVCA6IHVuZGVmaW5lZCxcbiAgICAgIH0sXG4gICAgfSxcbiAgfSk7XG4gIGNvbnN0IHByZXZQYXJhbXM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSBoYXNQcmV2VmFsdWUgPyB7IFtQQVJBTV06ICdGb28nIH0gOiB7fTtcbiAgY29uc3Qgc3RhY2tQYXJhbXMgPSBwYXJhbXMudXBkYXRlRXhpc3RpbmcoeyBbUEFSQU1dOiBvdmVycmlkZSA/IE9WRVJSSURFIDogdW5kZWZpbmVkIH0sIHByZXZQYXJhbXMpO1xuXG4gIHJldHVybiB7IGFwaVBhcmFtZXRlcnM6IHN0YWNrUGFyYW1zLmFwaVBhcmFtZXRlcnMsIGNoYW5nZWQ6IHN0YWNrUGFyYW1zLmhhc0NoYW5nZXMocHJldlBhcmFtcykgfTtcbn1cbiJdfQ==
@@ -1,2 +0,0 @@
1
- import { InvokeHook } from '../../../../init';
2
- export declare const invoke: InvokeHook;
@@ -1,31 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.invoke = void 0;
4
- const child_process = require("child_process");
5
- const path = require("path");
6
- exports.invoke = async (targetDirectory) => {
7
- const slnPath = path.join(targetDirectory, 'src', '%name.PascalCased%.sln');
8
- const csprojPath = path.join(targetDirectory, 'src', '%name.PascalCased%', '%name.PascalCased%.csproj');
9
- const child = child_process.spawn('dotnet', ['sln', slnPath, 'add', csprojPath], {
10
- // Need this for Windows where we want .cmd and .bat to be found as well.
11
- shell: true,
12
- stdio: ['ignore', 'pipe', 'inherit'],
13
- });
14
- await new Promise((resolve, reject) => {
15
- const stdout = new Array();
16
- child.stdout.on('data', chunk => {
17
- process.stdout.write(chunk);
18
- stdout.push(chunk);
19
- });
20
- child.once('error', reject);
21
- child.once('exit', code => {
22
- if (code === 0) {
23
- resolve(Buffer.concat(stdout).toString('utf-8'));
24
- }
25
- else {
26
- reject(new Error(`Could not add project %name.PascalCased%.csproj to solution %name.PascalCased%.sln. Error code: ${code}`));
27
- }
28
- });
29
- });
30
- };
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLXByb2plY3QuaG9vay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImFkZC1wcm9qZWN0Lmhvb2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsK0NBQStDO0FBQy9DLDZCQUE2QjtBQUdoQixRQUFBLE1BQU0sR0FBZSxLQUFLLEVBQUUsZUFBdUIsRUFBRSxFQUFFO0lBQ2xFLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFLEtBQUssRUFBRSx3QkFBd0IsQ0FBQyxDQUFDO0lBQzVFLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFLEtBQUssRUFBRSxvQkFBb0IsRUFBRSwyQkFBMkIsQ0FBQyxDQUFDO0lBRXhHLE1BQU0sS0FBSyxHQUFHLGFBQWEsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsVUFBVSxDQUFDLEVBQUU7UUFDL0UseUVBQXlFO1FBQ3pFLEtBQUssRUFBRSxJQUFJO1FBQ1gsS0FBSyxFQUFFLENBQUMsUUFBUSxFQUFFLE1BQU0sRUFBRSxTQUFTLENBQUM7S0FDckMsQ0FBQyxDQUFDO0lBRUgsTUFBTSxJQUFJLE9BQU8sQ0FBUyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRTtRQUM1QyxNQUFNLE1BQU0sR0FBRyxJQUFJLEtBQUssRUFBTyxDQUFDO1FBRWhDLEtBQUssQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsRUFBRTtZQUM5QixPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM1QixNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3JCLENBQUMsQ0FBQyxDQUFDO1FBRUgsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFFNUIsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDeEIsSUFBSSxJQUFJLEtBQUssQ0FBQyxFQUFFO2dCQUNkLE9BQU8sQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO2FBQ2xEO2lCQUFNO2dCQUNMLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyxtR0FBbUcsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO2FBQzlIO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGNoaWxkX3Byb2Nlc3MgZnJvbSAnY2hpbGRfcHJvY2Vzcyc7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0IHsgSW52b2tlSG9vayB9IGZyb20gJy4uLy4uLy4uLy4uL2luaXQnO1xuXG5leHBvcnQgY29uc3QgaW52b2tlOiBJbnZva2VIb29rID0gYXN5bmMgKHRhcmdldERpcmVjdG9yeTogc3RyaW5nKSA9PiB7XG4gIGNvbnN0IHNsblBhdGggPSBwYXRoLmpvaW4odGFyZ2V0RGlyZWN0b3J5LCAnc3JjJywgJyVuYW1lLlBhc2NhbENhc2VkJS5zbG4nKTtcbiAgY29uc3QgY3Nwcm9qUGF0aCA9IHBhdGguam9pbih0YXJnZXREaXJlY3RvcnksICdzcmMnLCAnJW5hbWUuUGFzY2FsQ2FzZWQlJywgJyVuYW1lLlBhc2NhbENhc2VkJS5jc3Byb2onKTtcblxuICBjb25zdCBjaGlsZCA9IGNoaWxkX3Byb2Nlc3Muc3Bhd24oJ2RvdG5ldCcsIFsnc2xuJywgc2xuUGF0aCwgJ2FkZCcsIGNzcHJvalBhdGhdLCB7XG4gICAgLy8gTmVlZCB0aGlzIGZvciBXaW5kb3dzIHdoZXJlIHdlIHdhbnQgLmNtZCBhbmQgLmJhdCB0byBiZSBmb3VuZCBhcyB3ZWxsLlxuICAgIHNoZWxsOiB0cnVlLFxuICAgIHN0ZGlvOiBbJ2lnbm9yZScsICdwaXBlJywgJ2luaGVyaXQnXSxcbiAgfSk7XG5cbiAgYXdhaXQgbmV3IFByb21pc2U8c3RyaW5nPigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgY29uc3Qgc3Rkb3V0ID0gbmV3IEFycmF5PGFueT4oKTtcblxuICAgIGNoaWxkLnN0ZG91dC5vbignZGF0YScsIGNodW5rID0+IHtcbiAgICAgIHByb2Nlc3Muc3Rkb3V0LndyaXRlKGNodW5rKTtcbiAgICAgIHN0ZG91dC5wdXNoKGNodW5rKTtcbiAgICB9KTtcblxuICAgIGNoaWxkLm9uY2UoJ2Vycm9yJywgcmVqZWN0KTtcblxuICAgIGNoaWxkLm9uY2UoJ2V4aXQnLCBjb2RlID0+IHtcbiAgICAgIGlmIChjb2RlID09PSAwKSB7XG4gICAgICAgIHJlc29sdmUoQnVmZmVyLmNvbmNhdChzdGRvdXQpLnRvU3RyaW5nKCd1dGYtOCcpKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJlamVjdChuZXcgRXJyb3IoYENvdWxkIG5vdCBhZGQgcHJvamVjdCAlbmFtZS5QYXNjYWxDYXNlZCUuY3Nwcm9qIHRvIHNvbHV0aW9uICVuYW1lLlBhc2NhbENhc2VkJS5zbG4uIEVycm9yIGNvZGU6ICR7Y29kZX1gKSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH0pO1xufTtcbiJdfQ==
@@ -1,19 +0,0 @@
1
- <Project Sdk="Microsoft.NET.Sdk">
2
-
3
- <PropertyGroup>
4
- <OutputType>Exe</OutputType>
5
- <TargetFramework>netcoreapp3.1</TargetFramework>
6
- <!-- Roll forward to future major versions of the netcoreapp as needed -->
7
- <RollForward>Major</RollForward>
8
- </PropertyGroup>
9
-
10
- <ItemGroup>
11
- <!-- CDK Construct Library dependencies -->
12
- <PackageReference Include="Amazon.CDK" Version="%cdk-version%" />
13
-
14
- <!-- jsii Roslyn analyzers (un-comment to obtain compile-time checks for missing required props
15
- <PackageReference Include="Amazon.Jsii.Analyzers" Version="*" PrivateAssets="all" />
16
- -->
17
- </ItemGroup>
18
-
19
- </Project>
@@ -1,12 +0,0 @@
1
- using Amazon.CDK;
2
-
3
- namespace %name.PascalCased%
4
- {
5
- public class %name.PascalCased%Stack : Stack
6
- {
7
- internal %name.PascalCased%Stack(Construct scope, string id, IStackProps props = null) : base(scope, id, props)
8
- {
9
- // The code that defines your stack goes here
10
- }
11
- }
12
- }
@@ -1,45 +0,0 @@
1
- using Amazon.CDK;
2
- using System;
3
- using System.Collections.Generic;
4
- using System.Linq;
5
-
6
- namespace %name.PascalCased%
7
- {
8
- sealed class Program
9
- {
10
- public static void Main(string[] args)
11
- {
12
- var app = new App();
13
- new %name.PascalCased%Stack(app, "%name.PascalCased%Stack", new StackProps
14
- {
15
- // If you don't specify 'env', this stack will be environment-agnostic.
16
- // Account/Region-dependent features and context lookups will not work,
17
- // but a single synthesized template can be deployed anywhere.
18
-
19
- // Uncomment the next block to specialize this stack for the AWS Account
20
- // and Region that are implied by the current CLI configuration.
21
- /*
22
- Env = new Amazon.CDK.Environment
23
- {
24
- Account = System.Environment.GetEnvironmentVariable("CDK_DEFAULT_ACCOUNT"),
25
- Region = System.Environment.GetEnvironmentVariable("CDK_DEFAULT_REGION"),
26
- }
27
- */
28
-
29
- // Uncomment the next block if you know exactly what Account and Region you
30
- // want to deploy the stack to.
31
- /*
32
- Env = new Amazon.CDK.Environment
33
- {
34
- Account = "123456789012",
35
- Region = "us-east-1",
36
- }
37
- */
38
-
39
- // For more information, see https://docs.aws.amazon.com/cdk/latest/guide/environments.html
40
- });
41
-
42
- app.Synth();
43
- }
44
- }
45
- }
@@ -1,2 +0,0 @@
1
- import { InvokeHook } from '../../../../init';
2
- export declare const invoke: InvokeHook;
@@ -1,24 +0,0 @@
1
- <Project Sdk="Microsoft.NET.Sdk">
2
-
3
- <PropertyGroup>
4
- <OutputType>Exe</OutputType>
5
- <TargetFramework>netcoreapp3.1</TargetFramework>
6
- <!-- Roll forward to future major versions of the netcoreapp as needed -->
7
- <RollForward>Major</RollForward>
8
- </PropertyGroup>
9
-
10
- <ItemGroup>
11
- <Compile Include="%name.PascalCased%Stack.fs" />
12
- <Compile Include="Program.fs" />
13
- </ItemGroup>
14
-
15
- <ItemGroup>
16
- <!-- CDK Construct Library dependencies -->
17
- <PackageReference Include="Amazon.CDK" Version="%cdk-version%" />
18
-
19
- <!-- jsii Roslyn analyzers (un-comment to obtain compile-time checks for missing required props
20
- <PackageReference Include="Amazon.Jsii.Analyzers" Version="*" PrivateAssets="all" />
21
- -->
22
- </ItemGroup>
23
-
24
- </Project>
@@ -1,68 +0,0 @@
1
- package main
2
-
3
- import (
4
- "github.com/aws/aws-cdk-go/awscdk"
5
- // "github.com/aws/aws-cdk-go/awscdk/awssqs"
6
- "github.com/aws/constructs-go/constructs/v3"
7
- // "github.com/aws/jsii-runtime-go"
8
- )
9
-
10
- type %name.PascalCased%StackProps struct {
11
- awscdk.StackProps
12
- }
13
-
14
- func New%name.PascalCased%Stack(scope constructs.Construct, id string, props *%name.PascalCased%StackProps) awscdk.Stack {
15
- var sprops awscdk.StackProps
16
- if props != nil {
17
- sprops = props.StackProps
18
- }
19
- stack := awscdk.NewStack(scope, &id, &sprops)
20
-
21
- // The code that defines your stack goes here
22
-
23
- // example resource
24
- // queue := awssqs.NewQueue(stack, jsii.String("%name.PascalCased%Queue"), &awssqs.QueueProps{
25
- // VisibilityTimeout: awscdk.Duration_Seconds(jsii.Number(300)),
26
- // })
27
-
28
- return stack
29
- }
30
-
31
- func main() {
32
- app := awscdk.NewApp(nil)
33
-
34
- New%name.PascalCased%Stack(app, "%name.PascalCased%Stack", &%name.PascalCased%StackProps{
35
- awscdk.StackProps{
36
- Env: env(),
37
- },
38
- })
39
-
40
- app.Synth(nil)
41
- }
42
-
43
- // env determines the AWS environment (account+region) in which our stack is to
44
- // be deployed. For more information see: https://docs.aws.amazon.com/cdk/latest/guide/environments.html
45
- func env() *awscdk.Environment {
46
- // If unspecified, this stack will be "environment-agnostic".
47
- // Account/Region-dependent features and context lookups will not work, but a
48
- // single synthesized template can be deployed anywhere.
49
- //---------------------------------------------------------------------------
50
- return nil
51
-
52
- // Uncomment if you know exactly what account and region you want to deploy
53
- // the stack to. This is the recommendation for production stacks.
54
- //---------------------------------------------------------------------------
55
- // return &awscdk.Environment{
56
- // Account: jsii.String("123456789012"),
57
- // Region: jsii.String("us-east-1"),
58
- // }
59
-
60
- // Uncomment to specialize this stack for the AWS Account and Region that are
61
- // implied by the current CLI configuration. This is recommended for dev
62
- // stacks.
63
- //---------------------------------------------------------------------------
64
- // return &awscdk.Environment{
65
- // Account: jsii.String(os.Getenv("CDK_DEFAULT_ACCOUNT")),
66
- // Region: jsii.String(os.Getenv("CDK_DEFAULT_REGION")),
67
- // }
68
- }
@@ -1,26 +0,0 @@
1
- package main
2
-
3
- // import (
4
- // "testing"
5
-
6
- // "github.com/aws/aws-cdk-go/awscdk"
7
- // "github.com/aws/aws-cdk-go/awscdk/assertions"
8
- // "github.com/aws/jsii-runtime-go"
9
- // )
10
-
11
- // example tests. To run these tests, uncomment this file along with the
12
- // example resource in %name%_test.go
13
- // func Test%name.PascalCased%Stack(t *testing.T) {
14
- // // GIVEN
15
- // app := awscdk.NewApp(nil)
16
-
17
- // // WHEN
18
- // stack := New%name.PascalCased%Stack(app, "MyStack", nil)
19
-
20
- // // THEN
21
- // template := assertions.Template_FromStack(stack)
22
-
23
- // template.HasResourceProperties(jsii.String("AWS::SQS::Queue"), map[string]interface{}{
24
- // "VisibilityTimeout": 300,
25
- // })
26
- // }
@@ -1,14 +0,0 @@
1
- # Welcome to your CDK Go project!
2
-
3
- This is a blank project for CDK development with Go.
4
-
5
- **NOTICE**: Go support is still in Developer Preview. This implies that APIs may
6
- change while we address early feedback from the community. We would love to hear
7
- about your experience through GitHub issues.
8
-
9
- ## Useful commands
10
-
11
- * `cdk deploy` deploy this stack to your default AWS account/region
12
- * `cdk diff` compare deployed stack with current state
13
- * `cdk synth` emits the synthesized CloudFormation template
14
- * `go test` run unit tests
@@ -1,9 +0,0 @@
1
- module %name%
2
-
3
- go 1.16
4
-
5
- require (
6
- github.com/aws/aws-cdk-go/awscdk v%cdk-version%-devpreview
7
- github.com/aws/constructs-go/constructs/v3 v3.3.71
8
- github.com/aws/jsii-runtime-go v1.26.0
9
- )
@@ -1,60 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
3
- xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
4
- <modelVersion>4.0.0</modelVersion>
5
-
6
- <groupId>com.myorg</groupId>
7
- <artifactId>%name%</artifactId>
8
- <version>0.1</version>
9
-
10
- <properties>
11
- <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
12
- <cdk.version>%cdk-version%</cdk.version>
13
- <junit.version>5.7.1</junit.version>
14
- </properties>
15
-
16
- <build>
17
- <plugins>
18
- <plugin>
19
- <groupId>org.apache.maven.plugins</groupId>
20
- <artifactId>maven-compiler-plugin</artifactId>
21
- <version>3.8.1</version>
22
- <configuration>
23
- <source>1.8</source>
24
- <target>1.8</target>
25
- </configuration>
26
- </plugin>
27
-
28
- <plugin>
29
- <groupId>org.codehaus.mojo</groupId>
30
- <artifactId>exec-maven-plugin</artifactId>
31
- <version>3.0.0</version>
32
- <configuration>
33
- <mainClass>com.myorg.%name.PascalCased%App</mainClass>
34
- </configuration>
35
- </plugin>
36
- </plugins>
37
- </build>
38
-
39
- <dependencies>
40
- <!-- AWS Cloud Development Kit -->
41
- <dependency>
42
- <groupId>software.amazon.awscdk</groupId>
43
- <artifactId>core</artifactId>
44
- <version>${cdk.version}</version>
45
- </dependency>
46
- <dependency>
47
- <groupId>software.amazon.awscdk</groupId>
48
- <artifactId>assertions</artifactId>
49
- <version>${cdk.version}</version>
50
- <scope>test</scope>
51
- </dependency>
52
-
53
- <dependency>
54
- <groupId>org.junit.jupiter</groupId>
55
- <artifactId>junit-jupiter</artifactId>
56
- <version>${junit.version}</version>
57
- <scope>test</scope>
58
- </dependency>
59
- </dependencies>
60
- </project>
@@ -1,41 +0,0 @@
1
- package com.myorg;
2
-
3
- import software.amazon.awscdk.core.App;
4
- import software.amazon.awscdk.core.Environment;
5
- import software.amazon.awscdk.core.StackProps;
6
-
7
- import java.util.Arrays;
8
-
9
- public class %name.PascalCased%App {
10
- public static void main(final String[] args) {
11
- App app = new App();
12
-
13
- new %name.PascalCased%Stack(app, "%name.PascalCased%Stack", StackProps.builder()
14
- // If you don't specify 'env', this stack will be environment-agnostic.
15
- // Account/Region-dependent features and context lookups will not work,
16
- // but a single synthesized template can be deployed anywhere.
17
-
18
- // Uncomment the next block to specialize this stack for the AWS Account
19
- // and Region that are implied by the current CLI configuration.
20
- /*
21
- .env(Environment.builder()
22
- .account(System.getenv("CDK_DEFAULT_ACCOUNT"))
23
- .region(System.getenv("CDK_DEFAULT_REGION"))
24
- .build())
25
- */
26
-
27
- // Uncomment the next block if you know exactly what Account and Region you
28
- // want to deploy the stack to.
29
- /*
30
- .env(Environment.builder()
31
- .account("123456789012")
32
- .region("us-east-1")
33
- .build())
34
- */
35
-
36
- // For more information, see https://docs.aws.amazon.com/cdk/latest/guide/environments.html
37
- .build());
38
-
39
- app.synth();
40
- }
41
- }
@@ -1,24 +0,0 @@
1
- package com.myorg;
2
-
3
- import software.amazon.awscdk.core.Construct;
4
- import software.amazon.awscdk.core.Stack;
5
- import software.amazon.awscdk.core.StackProps;
6
- // import software.amazon.awscdk.services.sqs.Queue;
7
- // import software.amazon.awscdk.core.Duration;
8
-
9
- public class %name.PascalCased%Stack extends Stack {
10
- public %name.PascalCased%Stack(final Construct scope, final String id) {
11
- this(scope, id, null);
12
- }
13
-
14
- public %name.PascalCased%Stack(final Construct scope, final String id, final StackProps props) {
15
- super(scope, id, props);
16
-
17
- // The code that defines your stack goes here
18
-
19
- // example resource
20
- // final Queue queue = Queue.Builder.create(this, "%name.PascalCased%Queue")
21
- // .visibilityTimeout(Duration.seconds(300))
22
- // .build();
23
- }
24
- }
@@ -1,26 +0,0 @@
1
- // package com.myorg;
2
-
3
- // import software.amazon.awscdk.core.App;
4
- // import software.amazon.awscdk.assertions.Template;
5
- // import java.io.IOException;
6
-
7
- // import java.util.HashMap;
8
-
9
- // import org.junit.jupiter.api.Test;
10
-
11
- // example test. To run these tests, uncomment this file, along with the
12
- // example resource in java/src/main/java/com/myorg/%name.PascalCased%Stack.java
13
- // public class %name.PascalCased%Test {
14
-
15
- // @Test
16
- // public void testStack() throws IOException {
17
- // App app = new App();
18
- // %name.PascalCased%Stack stack = new %name.PascalCased%Stack(app, "test");
19
-
20
- // Template template = Template.fromStack(stack);
21
-
22
- // template.hasResourceProperties("AWS::SQS::Queue", new HashMap<String, Number>() {{
23
- // put("VisibilityTimeout", 300);
24
- // }});
25
- // }
26
- // }
@@ -1,2 +0,0 @@
1
- import { InvokeHook } from '../../../../init';
2
- export declare const invoke: InvokeHook;
@@ -1,21 +0,0 @@
1
- #!/usr/bin/env node
2
-
3
- const cdk = require('@aws-cdk/core');
4
- const { %name.PascalCased%Stack } = require('../lib/%name%-stack');
5
-
6
- const app = new cdk.App();
7
- new %name.PascalCased%Stack(app, '%name.PascalCased%Stack', {
8
- /* If you don't specify 'env', this stack will be environment-agnostic.
9
- * Account/Region-dependent features and context lookups will not work,
10
- * but a single synthesized template can be deployed anywhere. */
11
-
12
- /* Uncomment the next line to specialize this stack for the AWS Account
13
- * and Region that are implied by the current CLI configuration. */
14
- // env: { account: process.env.CDK_DEFAULT_ACCOUNT, region: process.env.CDK_DEFAULT_REGION },
15
-
16
- /* Uncomment the next line if you know exactly what Account and Region you
17
- * want to deploy the stack to. */
18
- // env: { account: '123456789012', region: 'us-east-1' },
19
-
20
- /* For more information, see https://docs.aws.amazon.com/cdk/latest/guide/environments.html */
21
- });
@@ -1,3 +0,0 @@
1
- module.exports = {
2
- testEnvironment: "node"
3
- }
@@ -1,23 +0,0 @@
1
- const cdk = require('@aws-cdk/core');
2
- // const sqs = require('@aws-cdk/aws-sqs');
3
-
4
- class %name.PascalCased%Stack extends cdk.Stack {
5
- /**
6
- *
7
- * @param {cdk.Construct} scope
8
- * @param {string} id
9
- * @param {cdk.StackProps=} props
10
- */
11
- constructor(scope, id, props) {
12
- super(scope, id, props);
13
-
14
- // The code that defines your stack goes here
15
-
16
- // example resource
17
- // const queue = new sqs.Queue(this, '%name.PascalCased%Queue', {
18
- // visibilityTimeout: cdk.Duration.seconds(300)
19
- // });
20
- }
21
- }
22
-
23
- module.exports = { %name.PascalCased%Stack }
@@ -1,20 +0,0 @@
1
- {
2
- "name": "%name%",
3
- "version": "0.1.0",
4
- "bin": {
5
- "%name%": "bin/%name%.js"
6
- },
7
- "scripts": {
8
- "build": "echo \"The build step is not required when using JavaScript!\" && exit 0",
9
- "cdk": "cdk",
10
- "test": "jest"
11
- },
12
- "devDependencies": {
13
- "@aws-cdk/assertions": "%cdk-version%",
14
- "aws-cdk": "%cdk-version%",
15
- "jest": "^27.5.1"
16
- },
17
- "dependencies": {
18
- "@aws-cdk/core": "%cdk-version%"
19
- }
20
- }
@@ -1,2 +0,0 @@
1
- import { InvokeHook } from '../../../../init';
2
- export declare const invoke: InvokeHook;