@kensio/yulin 1.6.0 → 1.7.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 (601) hide show
  1. package/README.md +72 -0
  2. package/dist/cli/sim-cli.d.ts +20 -0
  3. package/dist/cli/sim-cli.d.ts.map +1 -0
  4. package/dist/cli/sim-cli.js +42 -0
  5. package/dist/cli/sim-cli.js.map +1 -0
  6. package/dist/cli/watch/sim-watch-arguments.d.ts +30 -0
  7. package/dist/cli/watch/sim-watch-arguments.d.ts.map +1 -0
  8. package/dist/cli/watch/sim-watch-arguments.js +67 -0
  9. package/dist/cli/watch/sim-watch-arguments.js.map +1 -0
  10. package/dist/cli/watch/sim-watch-child-environment.d.ts +30 -0
  11. package/dist/cli/watch/sim-watch-child-environment.d.ts.map +1 -0
  12. package/dist/cli/watch/sim-watch-child-environment.js +51 -0
  13. package/dist/cli/watch/sim-watch-child-environment.js.map +1 -0
  14. package/dist/cli/watch/sim-watch-child-message.d.ts +19 -0
  15. package/dist/cli/watch/sim-watch-child-message.d.ts.map +1 -0
  16. package/dist/cli/watch/sim-watch-child-message.js +42 -0
  17. package/dist/cli/watch/sim-watch-child-message.js.map +1 -0
  18. package/dist/cli/watch/sim-watch-child-process.d.ts +22 -0
  19. package/dist/cli/watch/sim-watch-child-process.d.ts.map +1 -0
  20. package/dist/cli/watch/sim-watch-child-process.js +33 -0
  21. package/dist/cli/watch/sim-watch-child-process.js.map +1 -0
  22. package/dist/cli/watch/sim-watch-child-shutdown.d.ts +28 -0
  23. package/dist/cli/watch/sim-watch-child-shutdown.d.ts.map +1 -0
  24. package/dist/cli/watch/sim-watch-child-shutdown.js +59 -0
  25. package/dist/cli/watch/sim-watch-child-shutdown.js.map +1 -0
  26. package/dist/cli/watch/sim-watch-child.d.ts +42 -0
  27. package/dist/cli/watch/sim-watch-child.d.ts.map +1 -0
  28. package/dist/cli/watch/sim-watch-child.js +62 -0
  29. package/dist/cli/watch/sim-watch-child.js.map +1 -0
  30. package/dist/cli/watch/sim-watch-command.d.ts +22 -0
  31. package/dist/cli/watch/sim-watch-command.d.ts.map +1 -0
  32. package/dist/cli/watch/sim-watch-command.js +41 -0
  33. package/dist/cli/watch/sim-watch-command.js.map +1 -0
  34. package/dist/cli/watch/sim-watch-event-path.d.ts +27 -0
  35. package/dist/cli/watch/sim-watch-event-path.d.ts.map +1 -0
  36. package/dist/cli/watch/sim-watch-event-path.js +48 -0
  37. package/dist/cli/watch/sim-watch-event-path.js.map +1 -0
  38. package/dist/cli/watch/sim-watch-ignore.d.ts +15 -0
  39. package/dist/cli/watch/sim-watch-ignore.d.ts.map +1 -0
  40. package/dist/cli/watch/sim-watch-ignore.js +64 -0
  41. package/dist/cli/watch/sim-watch-ignore.js.map +1 -0
  42. package/dist/cli/watch/sim-watch-loop-guard.d.ts +35 -0
  43. package/dist/cli/watch/sim-watch-loop-guard.d.ts.map +1 -0
  44. package/dist/cli/watch/sim-watch-loop-guard.js +51 -0
  45. package/dist/cli/watch/sim-watch-loop-guard.js.map +1 -0
  46. package/dist/cli/watch/sim-watch-reporter.d.ts +38 -0
  47. package/dist/cli/watch/sim-watch-reporter.d.ts.map +1 -0
  48. package/dist/cli/watch/sim-watch-reporter.js +65 -0
  49. package/dist/cli/watch/sim-watch-reporter.js.map +1 -0
  50. package/dist/cli/watch/sim-watch-restarts.d.ts +30 -0
  51. package/dist/cli/watch/sim-watch-restarts.d.ts.map +1 -0
  52. package/dist/cli/watch/sim-watch-restarts.js +62 -0
  53. package/dist/cli/watch/sim-watch-restarts.js.map +1 -0
  54. package/dist/cli/watch/sim-watch-supervisor.d.ts +52 -0
  55. package/dist/cli/watch/sim-watch-supervisor.d.ts.map +1 -0
  56. package/dist/cli/watch/sim-watch-supervisor.js +127 -0
  57. package/dist/cli/watch/sim-watch-supervisor.js.map +1 -0
  58. package/dist/cli/watch/sim-watch-watcher.d.ts +69 -0
  59. package/dist/cli/watch/sim-watch-watcher.d.ts.map +1 -0
  60. package/dist/cli/watch/sim-watch-watcher.js +144 -0
  61. package/dist/cli/watch/sim-watch-watcher.js.map +1 -0
  62. package/dist/cli/yulin.d.ts +3 -0
  63. package/dist/cli/yulin.d.ts.map +1 -0
  64. package/dist/cli/yulin.js +14 -0
  65. package/dist/cli/yulin.js.map +1 -0
  66. package/dist/serve/http/live-reload/sim-live-reload-client.d.ts +32 -0
  67. package/dist/serve/http/live-reload/sim-live-reload-client.d.ts.map +1 -0
  68. package/dist/serve/http/live-reload/sim-live-reload-client.js +55 -0
  69. package/dist/serve/http/live-reload/sim-live-reload-client.js.map +1 -0
  70. package/dist/serve/http/live-reload/sim-live-reload-injectable.d.ts +47 -0
  71. package/dist/serve/http/live-reload/sim-live-reload-injectable.d.ts.map +1 -0
  72. package/dist/serve/http/live-reload/sim-live-reload-injectable.js +86 -0
  73. package/dist/serve/http/live-reload/sim-live-reload-injectable.js.map +1 -0
  74. package/dist/serve/http/live-reload/sim-live-reload-injector.d.ts +22 -0
  75. package/dist/serve/http/live-reload/sim-live-reload-injector.d.ts.map +1 -0
  76. package/dist/serve/http/live-reload/sim-live-reload-injector.js +72 -0
  77. package/dist/serve/http/live-reload/sim-live-reload-injector.js.map +1 -0
  78. package/dist/serve/http/live-reload/sim-live-reload-report.d.ts +18 -0
  79. package/dist/serve/http/live-reload/sim-live-reload-report.d.ts.map +1 -0
  80. package/dist/serve/http/live-reload/sim-live-reload-report.js +27 -0
  81. package/dist/serve/http/live-reload/sim-live-reload-report.js.map +1 -0
  82. package/dist/serve/http/live-reload/sim-live-reload-script.d.ts +20 -0
  83. package/dist/serve/http/live-reload/sim-live-reload-script.d.ts.map +1 -0
  84. package/dist/serve/http/live-reload/sim-live-reload-script.js +45 -0
  85. package/dist/serve/http/live-reload/sim-live-reload-script.js.map +1 -0
  86. package/dist/serve/http/live-reload/sim-live-reload.config.d.ts +12 -0
  87. package/dist/serve/http/live-reload/sim-live-reload.config.d.ts.map +1 -0
  88. package/dist/serve/http/live-reload/sim-live-reload.config.js +19 -0
  89. package/dist/serve/http/live-reload/sim-live-reload.config.js.map +1 -0
  90. package/dist/serve/http/live-reload/sim-live-reload.d.ts +52 -0
  91. package/dist/serve/http/live-reload/sim-live-reload.d.ts.map +1 -0
  92. package/dist/serve/http/live-reload/sim-live-reload.js +82 -0
  93. package/dist/serve/http/live-reload/sim-live-reload.js.map +1 -0
  94. package/dist/serve/http/live-reload/sim-local-live-reload.d.ts +42 -0
  95. package/dist/serve/http/live-reload/sim-local-live-reload.d.ts.map +1 -0
  96. package/dist/serve/http/live-reload/sim-local-live-reload.js +60 -0
  97. package/dist/serve/http/live-reload/sim-local-live-reload.js.map +1 -0
  98. package/dist/serve/http/local-server/node-server-port-binder.d.ts +39 -0
  99. package/dist/serve/http/local-server/node-server-port-binder.d.ts.map +1 -0
  100. package/dist/serve/http/local-server/node-server-port-binder.js +71 -0
  101. package/dist/serve/http/local-server/node-server-port-binder.js.map +1 -0
  102. package/dist/serve/http/local-server/node-server-port.d.ts +10 -0
  103. package/dist/serve/http/local-server/node-server-port.d.ts.map +1 -0
  104. package/dist/serve/http/local-server/node-server-port.js +19 -0
  105. package/dist/serve/http/local-server/node-server-port.js.map +1 -0
  106. package/dist/serve/http/local-server/sim-aws-local-port.error.d.ts +13 -0
  107. package/dist/serve/http/local-server/sim-aws-local-port.error.d.ts.map +1 -0
  108. package/dist/serve/http/local-server/sim-aws-local-port.error.js +16 -0
  109. package/dist/serve/http/local-server/sim-aws-local-port.error.js.map +1 -0
  110. package/dist/serve/http/local-server/sim-aws-local-request-handler.d.ts +14 -1
  111. package/dist/serve/http/local-server/sim-aws-local-request-handler.d.ts.map +1 -1
  112. package/dist/serve/http/local-server/sim-aws-local-request-handler.js +20 -2
  113. package/dist/serve/http/local-server/sim-aws-local-request-handler.js.map +1 -1
  114. package/dist/serve/http/local-server/sim-aws-local-server.d.ts +23 -0
  115. package/dist/serve/http/local-server/sim-aws-local-server.d.ts.map +1 -1
  116. package/dist/serve/http/local-server/sim-aws-local-server.js +41 -16
  117. package/dist/serve/http/local-server/sim-aws-local-server.js.map +1 -1
  118. package/dist/serve/http/local-server/sim-aws-local.config.d.ts +2 -0
  119. package/dist/serve/http/local-server/sim-aws-local.config.d.ts.map +1 -1
  120. package/dist/serve/http/local-server/sim-aws-local.config.js +6 -0
  121. package/dist/serve/http/local-server/sim-aws-local.config.js.map +1 -1
  122. package/dist/serve/index.d.ts +3 -0
  123. package/dist/serve/index.d.ts.map +1 -1
  124. package/dist/serve/index.js +3 -0
  125. package/dist/serve/index.js.map +1 -1
  126. package/dist/service/acm/cfn/sim-cfn-acm-resource-factory.d.ts +9 -0
  127. package/dist/service/acm/cfn/sim-cfn-acm-resource-factory.d.ts.map +1 -1
  128. package/dist/service/acm/cfn/sim-cfn-acm-resource-factory.js +20 -0
  129. package/dist/service/acm/cfn/sim-cfn-acm-resource-factory.js.map +1 -1
  130. package/dist/service/apigatewayv2/api/integration/sim-http-api-integration-store.d.ts +4 -0
  131. package/dist/service/apigatewayv2/api/integration/sim-http-api-integration-store.d.ts.map +1 -1
  132. package/dist/service/apigatewayv2/api/integration/sim-http-api-integration-store.js +6 -0
  133. package/dist/service/apigatewayv2/api/integration/sim-http-api-integration-store.js.map +1 -1
  134. package/dist/service/apigatewayv2/api/route/sim-http-api-route-store.d.ts +12 -0
  135. package/dist/service/apigatewayv2/api/route/sim-http-api-route-store.d.ts.map +1 -1
  136. package/dist/service/apigatewayv2/api/route/sim-http-api-route-store.js +17 -0
  137. package/dist/service/apigatewayv2/api/route/sim-http-api-route-store.js.map +1 -1
  138. package/dist/service/apigatewayv2/api/sim-http-api.d.ts +10 -0
  139. package/dist/service/apigatewayv2/api/sim-http-api.d.ts.map +1 -1
  140. package/dist/service/apigatewayv2/api/sim-http-api.js +19 -0
  141. package/dist/service/apigatewayv2/api/sim-http-api.js.map +1 -1
  142. package/dist/service/apigatewayv2/api/stage/sim-http-api-stage-store.d.ts +4 -0
  143. package/dist/service/apigatewayv2/api/stage/sim-http-api-stage-store.d.ts.map +1 -1
  144. package/dist/service/apigatewayv2/api/stage/sim-http-api-stage-store.js +6 -0
  145. package/dist/service/apigatewayv2/api/stage/sim-http-api-stage-store.js.map +1 -1
  146. package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-resource-deleter.d.ts +26 -0
  147. package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-resource-deleter.d.ts.map +1 -0
  148. package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-resource-deleter.js +32 -0
  149. package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-resource-deleter.js.map +1 -0
  150. package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-resource-factory.d.ts +7 -0
  151. package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-resource-factory.d.ts.map +1 -1
  152. package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-resource-factory.js +10 -0
  153. package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-resource-factory.js.map +1 -1
  154. package/dist/service/apigatewayv2/cfn/sim-cfn-http-api-part-deleter.d.ts +30 -0
  155. package/dist/service/apigatewayv2/cfn/sim-cfn-http-api-part-deleter.d.ts.map +1 -0
  156. package/dist/service/apigatewayv2/cfn/sim-cfn-http-api-part-deleter.js +72 -0
  157. package/dist/service/apigatewayv2/cfn/sim-cfn-http-api-part-deleter.js.map +1 -0
  158. package/dist/service/apigatewayv2/command/integration/integration.command.d.ts +15 -0
  159. package/dist/service/apigatewayv2/command/integration/integration.command.d.ts.map +1 -1
  160. package/dist/service/apigatewayv2/command/integration/sim-http-api-integration-commands.d.ts +9 -1
  161. package/dist/service/apigatewayv2/command/integration/sim-http-api-integration-commands.d.ts.map +1 -1
  162. package/dist/service/apigatewayv2/command/integration/sim-http-api-integration-commands.js +27 -0
  163. package/dist/service/apigatewayv2/command/integration/sim-http-api-integration-commands.js.map +1 -1
  164. package/dist/service/apigatewayv2/command/route/route.command.d.ts +15 -0
  165. package/dist/service/apigatewayv2/command/route/route.command.d.ts.map +1 -1
  166. package/dist/service/apigatewayv2/command/route/sim-http-api-route-commands.d.ts +9 -1
  167. package/dist/service/apigatewayv2/command/route/sim-http-api-route-commands.d.ts.map +1 -1
  168. package/dist/service/apigatewayv2/command/route/sim-http-api-route-commands.js +26 -0
  169. package/dist/service/apigatewayv2/command/route/sim-http-api-route-commands.js.map +1 -1
  170. package/dist/service/apigatewayv2/command/sim-api-gateway-v2-command.types.d.ts +3 -3
  171. package/dist/service/apigatewayv2/command/sim-api-gateway-v2-command.types.d.ts.map +1 -1
  172. package/dist/service/apigatewayv2/command/stage/sim-http-api-stage-commands.d.ts +9 -1
  173. package/dist/service/apigatewayv2/command/stage/sim-http-api-stage-commands.d.ts.map +1 -1
  174. package/dist/service/apigatewayv2/command/stage/sim-http-api-stage-commands.js +26 -0
  175. package/dist/service/apigatewayv2/command/stage/sim-http-api-stage-commands.js.map +1 -1
  176. package/dist/service/apigatewayv2/command/stage/stage.command.d.ts +15 -0
  177. package/dist/service/apigatewayv2/command/stage/stage.command.d.ts.map +1 -1
  178. package/dist/service/apigatewayv2/sdk/sim-api-gateway-v2-sdk-command-router.d.ts.map +1 -1
  179. package/dist/service/apigatewayv2/sdk/sim-api-gateway-v2-sdk-command-router.js +12 -0
  180. package/dist/service/apigatewayv2/sdk/sim-api-gateway-v2-sdk-command-router.js.map +1 -1
  181. package/dist/service/apigatewayv2/sim-api-gateway-v2-commands.d.ts +47 -0
  182. package/dist/service/apigatewayv2/sim-api-gateway-v2-commands.d.ts.map +1 -0
  183. package/dist/service/apigatewayv2/sim-api-gateway-v2-commands.js +61 -0
  184. package/dist/service/apigatewayv2/sim-api-gateway-v2-commands.js.map +1 -0
  185. package/dist/service/apigatewayv2/sim-api-gateway-v2.d.ts +14 -26
  186. package/dist/service/apigatewayv2/sim-api-gateway-v2.d.ts.map +1 -1
  187. package/dist/service/apigatewayv2/sim-api-gateway-v2.js +53 -80
  188. package/dist/service/apigatewayv2/sim-api-gateway-v2.js.map +1 -1
  189. package/dist/service/cloudformation/authorize/sim-cloudformation-authorization.d.ts +44 -0
  190. package/dist/service/cloudformation/authorize/sim-cloudformation-authorization.d.ts.map +1 -0
  191. package/dist/service/cloudformation/authorize/sim-cloudformation-authorization.js +53 -0
  192. package/dist/service/cloudformation/authorize/sim-cloudformation-authorization.js.map +1 -0
  193. package/dist/service/cloudformation/cdk/s3/bucket-deployment/sim-cdk-bucket-deployment.d.ts +9 -0
  194. package/dist/service/cloudformation/cdk/s3/bucket-deployment/sim-cdk-bucket-deployment.d.ts.map +1 -1
  195. package/dist/service/cloudformation/cdk/s3/bucket-deployment/sim-cdk-bucket-deployment.js +15 -0
  196. package/dist/service/cloudformation/cdk/s3/bucket-deployment/sim-cdk-bucket-deployment.js.map +1 -1
  197. package/dist/service/cloudformation/cdk/s3/bucket-notifications/sim-cdk-bucket-notifications-remover.d.ts +19 -0
  198. package/dist/service/cloudformation/cdk/s3/bucket-notifications/sim-cdk-bucket-notifications-remover.d.ts.map +1 -0
  199. package/dist/service/cloudformation/cdk/s3/bucket-notifications/sim-cdk-bucket-notifications-remover.js +35 -0
  200. package/dist/service/cloudformation/cdk/s3/bucket-notifications/sim-cdk-bucket-notifications-remover.js.map +1 -0
  201. package/dist/service/cloudformation/cdk/s3/bucket-notifications/sim-cdk-bucket-notifications.d.ts +9 -1
  202. package/dist/service/cloudformation/cdk/s3/bucket-notifications/sim-cdk-bucket-notifications.d.ts.map +1 -1
  203. package/dist/service/cloudformation/cdk/s3/bucket-notifications/sim-cdk-bucket-notifications.js +11 -0
  204. package/dist/service/cloudformation/cdk/s3/bucket-notifications/sim-cdk-bucket-notifications.js.map +1 -1
  205. package/dist/service/cloudformation/command/create-stack/create-stack.handler.js +1 -1
  206. package/dist/service/cloudformation/command/create-stack/create-stack.handler.js.map +1 -1
  207. package/dist/service/cloudformation/command/delete-stack/delete-stack.command.d.ts +25 -0
  208. package/dist/service/cloudformation/command/delete-stack/delete-stack.command.d.ts.map +1 -0
  209. package/dist/service/cloudformation/command/delete-stack/delete-stack.command.js +2 -0
  210. package/dist/service/cloudformation/command/delete-stack/delete-stack.command.js.map +1 -0
  211. package/dist/service/cloudformation/command/delete-stack/delete-stack.handler.d.ts +34 -0
  212. package/dist/service/cloudformation/command/delete-stack/delete-stack.handler.d.ts.map +1 -0
  213. package/dist/service/cloudformation/command/delete-stack/delete-stack.handler.js +41 -0
  214. package/dist/service/cloudformation/command/delete-stack/delete-stack.handler.js.map +1 -0
  215. package/dist/service/cloudformation/command/describe-stacks/describe-stacks.handler.d.ts.map +1 -1
  216. package/dist/service/cloudformation/command/describe-stacks/describe-stacks.handler.js +4 -11
  217. package/dist/service/cloudformation/command/describe-stacks/describe-stacks.handler.js.map +1 -1
  218. package/dist/service/cloudformation/command/describe-stacks/sim-cfn-described-stacks.d.ts +26 -0
  219. package/dist/service/cloudformation/command/describe-stacks/sim-cfn-described-stacks.d.ts.map +1 -0
  220. package/dist/service/cloudformation/command/describe-stacks/sim-cfn-described-stacks.js +37 -0
  221. package/dist/service/cloudformation/command/describe-stacks/sim-cfn-described-stacks.js.map +1 -0
  222. package/dist/service/cloudformation/command/describe-stacks/sim-cfn-stack-describer.js +2 -2
  223. package/dist/service/cloudformation/command/describe-stacks/sim-cfn-stack-describer.js.map +1 -1
  224. package/dist/service/cloudformation/command/update-stack/update-stack.command.d.ts +29 -0
  225. package/dist/service/cloudformation/command/update-stack/update-stack.command.d.ts.map +1 -0
  226. package/dist/service/cloudformation/command/update-stack/update-stack.command.js +2 -0
  227. package/dist/service/cloudformation/command/update-stack/update-stack.command.js.map +1 -0
  228. package/dist/service/cloudformation/command/update-stack/update-stack.handler.d.ts +42 -0
  229. package/dist/service/cloudformation/command/update-stack/update-stack.handler.d.ts.map +1 -0
  230. package/dist/service/cloudformation/command/update-stack/update-stack.handler.js +53 -0
  231. package/dist/service/cloudformation/command/update-stack/update-stack.handler.js.map +1 -0
  232. package/dist/service/cloudformation/deploy/sim-cfn-template-deployer.d.ts +19 -0
  233. package/dist/service/cloudformation/deploy/sim-cfn-template-deployer.d.ts.map +1 -1
  234. package/dist/service/cloudformation/deploy/sim-cfn-template-deployer.js +40 -1
  235. package/dist/service/cloudformation/deploy/sim-cfn-template-deployer.js.map +1 -1
  236. package/dist/service/cloudformation/deploy/sim-cfn-template-file-deployment.d.ts +10 -0
  237. package/dist/service/cloudformation/deploy/sim-cfn-template-file-deployment.d.ts.map +1 -0
  238. package/dist/service/cloudformation/deploy/sim-cfn-template-file-deployment.js +14 -0
  239. package/dist/service/cloudformation/deploy/sim-cfn-template-file-deployment.js.map +1 -0
  240. package/dist/service/cloudformation/deploy/sim-cfn-template-file-loader.d.ts +11 -0
  241. package/dist/service/cloudformation/deploy/sim-cfn-template-file-loader.d.ts.map +1 -1
  242. package/dist/service/cloudformation/deploy/sim-cfn-template-file-loader.js +5 -0
  243. package/dist/service/cloudformation/deploy/sim-cfn-template-file-loader.js.map +1 -1
  244. package/dist/service/cloudformation/deploy/sim-cfn-template-file-updater.d.ts +49 -0
  245. package/dist/service/cloudformation/deploy/sim-cfn-template-file-updater.d.ts.map +1 -0
  246. package/dist/service/cloudformation/deploy/sim-cfn-template-file-updater.js +59 -0
  247. package/dist/service/cloudformation/deploy/sim-cfn-template-file-updater.js.map +1 -0
  248. package/dist/service/cloudformation/error/{sim-cloudfront.error.d.ts → sim-cloudformation.error.d.ts} +11 -1
  249. package/dist/service/cloudformation/error/sim-cloudformation.error.d.ts.map +1 -0
  250. package/dist/service/cloudformation/error/{sim-cloudfront.error.js → sim-cloudformation.error.js} +13 -1
  251. package/dist/service/cloudformation/error/sim-cloudformation.error.js.map +1 -0
  252. package/dist/service/cloudformation/index.d.ts +1 -0
  253. package/dist/service/cloudformation/index.d.ts.map +1 -1
  254. package/dist/service/cloudformation/resource/create/sim-cfn-resource-create-operation.d.ts +0 -1
  255. package/dist/service/cloudformation/resource/create/sim-cfn-resource-create-operation.d.ts.map +1 -1
  256. package/dist/service/cloudformation/resource/create/sim-cfn-resource-create-operation.js +2 -6
  257. package/dist/service/cloudformation/resource/create/sim-cfn-resource-create-operation.js.map +1 -1
  258. package/dist/service/cloudformation/resource/delete/sim-cfn-resource-delete-operation.d.ts +37 -0
  259. package/dist/service/cloudformation/resource/delete/sim-cfn-resource-delete-operation.d.ts.map +1 -0
  260. package/dist/service/cloudformation/resource/delete/sim-cfn-resource-delete-operation.js +66 -0
  261. package/dist/service/cloudformation/resource/delete/sim-cfn-resource-delete-operation.js.map +1 -0
  262. package/dist/service/cloudformation/resource/delete/sim-cfn-resource-deleter.d.ts +37 -0
  263. package/dist/service/cloudformation/resource/delete/sim-cfn-resource-deleter.d.ts.map +1 -0
  264. package/dist/service/cloudformation/resource/delete/sim-cfn-resource-deleter.js +48 -0
  265. package/dist/service/cloudformation/resource/delete/sim-cfn-resource-deleter.js.map +1 -0
  266. package/dist/service/cloudformation/resource/dependency/sim-cfn-resource-dependents.d.ts +14 -0
  267. package/dist/service/cloudformation/resource/dependency/sim-cfn-resource-dependents.d.ts.map +1 -0
  268. package/dist/service/cloudformation/resource/dependency/sim-cfn-resource-dependents.js +27 -0
  269. package/dist/service/cloudformation/resource/dependency/sim-cfn-resource-dependents.js.map +1 -0
  270. package/dist/service/cloudformation/resource/factory/sim-cfn-cfn-resource-factory.d.ts +8 -0
  271. package/dist/service/cloudformation/resource/factory/sim-cfn-cfn-resource-factory.d.ts.map +1 -1
  272. package/dist/service/cloudformation/resource/factory/sim-cfn-cfn-resource-factory.js +13 -0
  273. package/dist/service/cloudformation/resource/factory/sim-cfn-cfn-resource-factory.js.map +1 -1
  274. package/dist/service/cloudformation/resource/factory/sim-cfn-resource-factory.type.d.ts +15 -1
  275. package/dist/service/cloudformation/resource/factory/sim-cfn-resource-factory.type.d.ts.map +1 -1
  276. package/dist/service/cloudformation/resource/resolve/property/sim-cfn-resource-property-resolver.d.ts +2 -2
  277. package/dist/service/cloudformation/resource/resolve/property/sim-cfn-resource-property-resolver.d.ts.map +1 -1
  278. package/dist/service/cloudformation/resource/resolve/property/sim-cfn-resource-property-resolver.js.map +1 -1
  279. package/dist/service/cloudformation/resource/sim-cfn-resource-record.d.ts +110 -0
  280. package/dist/service/cloudformation/resource/sim-cfn-resource-record.d.ts.map +1 -0
  281. package/dist/service/cloudformation/resource/sim-cfn-resource-record.js +145 -0
  282. package/dist/service/cloudformation/resource/sim-cfn-resource-record.js.map +1 -0
  283. package/dist/service/cloudformation/resource/sim-cfn-resource.d.ts +61 -69
  284. package/dist/service/cloudformation/resource/sim-cfn-resource.d.ts.map +1 -1
  285. package/dist/service/cloudformation/resource/sim-cfn-resource.js +91 -100
  286. package/dist/service/cloudformation/resource/sim-cfn-resource.js.map +1 -1
  287. package/dist/service/cloudformation/resource/sim-cfn-resource.type.d.ts +30 -3
  288. package/dist/service/cloudformation/resource/sim-cfn-resource.type.d.ts.map +1 -1
  289. package/dist/service/cloudformation/resource/state/sim-cfn-resource-deletion-state.d.ts +76 -0
  290. package/dist/service/cloudformation/resource/state/sim-cfn-resource-deletion-state.d.ts.map +1 -0
  291. package/dist/service/cloudformation/resource/state/sim-cfn-resource-deletion-state.js +113 -0
  292. package/dist/service/cloudformation/resource/state/sim-cfn-resource-deletion-state.js.map +1 -0
  293. package/dist/service/cloudformation/resource/template/sim-cfn-resource-template-reader.d.ts +4 -0
  294. package/dist/service/cloudformation/resource/template/sim-cfn-resource-template-reader.d.ts.map +1 -1
  295. package/dist/service/cloudformation/resource/template/sim-cfn-resource-template-reader.js +7 -0
  296. package/dist/service/cloudformation/resource/template/sim-cfn-resource-template-reader.js.map +1 -1
  297. package/dist/service/cloudformation/resource/unsupported/sim-cfn-unsupported-resource.d.ts +12 -0
  298. package/dist/service/cloudformation/resource/unsupported/sim-cfn-unsupported-resource.d.ts.map +1 -0
  299. package/dist/service/cloudformation/resource/unsupported/sim-cfn-unsupported-resource.js +16 -0
  300. package/dist/service/cloudformation/resource/unsupported/sim-cfn-unsupported-resource.js.map +1 -0
  301. package/dist/service/cloudformation/sdk/sim-cloudformation-sdk-command-router.d.ts.map +1 -1
  302. package/dist/service/cloudformation/sdk/sim-cloudformation-sdk-command-router.js +8 -0
  303. package/dist/service/cloudformation/sdk/sim-cloudformation-sdk-command-router.js.map +1 -1
  304. package/dist/service/cloudformation/sim-cloudformation.d.ts +51 -5
  305. package/dist/service/cloudformation/sim-cloudformation.d.ts.map +1 -1
  306. package/dist/service/cloudformation/sim-cloudformation.js +85 -12
  307. package/dist/service/cloudformation/sim-cloudformation.js.map +1 -1
  308. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-deployment-lifecycle.d.ts +1 -1
  309. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-deployment-lifecycle.js +4 -4
  310. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-deployment-lifecycle.js.map +1 -1
  311. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-batch-creator.d.ts +1 -5
  312. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-batch-creator.d.ts.map +1 -1
  313. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-batch-creator.js +2 -9
  314. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-batch-creator.js.map +1 -1
  315. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-creator.d.ts +13 -2
  316. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-creator.d.ts.map +1 -1
  317. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-creator.js +17 -4
  318. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-creator.js.map +1 -1
  319. package/dist/service/cloudformation/stack/report/sim-cfn-stack-resource-report.d.ts +36 -0
  320. package/dist/service/cloudformation/stack/report/sim-cfn-stack-resource-report.d.ts.map +1 -0
  321. package/dist/service/cloudformation/stack/report/sim-cfn-stack-resource-report.js +49 -0
  322. package/dist/service/cloudformation/stack/report/sim-cfn-stack-resource-report.js.map +1 -0
  323. package/dist/service/cloudformation/stack/sim-cfn-stack-operation-scheduler.d.ts +47 -0
  324. package/dist/service/cloudformation/stack/sim-cfn-stack-operation-scheduler.d.ts.map +1 -0
  325. package/dist/service/cloudformation/stack/sim-cfn-stack-operation-scheduler.js +64 -0
  326. package/dist/service/cloudformation/stack/sim-cfn-stack-operation-scheduler.js.map +1 -0
  327. package/dist/service/cloudformation/stack/sim-cfn-stack-resource-operations.d.ts +78 -0
  328. package/dist/service/cloudformation/stack/sim-cfn-stack-resource-operations.d.ts.map +1 -0
  329. package/dist/service/cloudformation/stack/sim-cfn-stack-resource-operations.js +109 -0
  330. package/dist/service/cloudformation/stack/sim-cfn-stack-resource-operations.js.map +1 -0
  331. package/dist/service/cloudformation/stack/sim-cfn-stack.d.ts +75 -29
  332. package/dist/service/cloudformation/stack/sim-cfn-stack.d.ts.map +1 -1
  333. package/dist/service/cloudformation/stack/sim-cfn-stack.js +131 -57
  334. package/dist/service/cloudformation/stack/sim-cfn-stack.js.map +1 -1
  335. package/dist/service/cloudformation/stack/status/sim-cfn-stack-operation-status.d.ts +30 -0
  336. package/dist/service/cloudformation/stack/status/sim-cfn-stack-operation-status.d.ts.map +1 -0
  337. package/dist/service/cloudformation/stack/status/sim-cfn-stack-operation-status.js +34 -0
  338. package/dist/service/cloudformation/stack/status/sim-cfn-stack-operation-status.js.map +1 -0
  339. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-deletion-lifecycle.d.ts +74 -0
  340. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-deletion-lifecycle.d.ts.map +1 -0
  341. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-deletion-lifecycle.js +88 -0
  342. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-deletion-lifecycle.js.map +1 -0
  343. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-pending-deletions.d.ts +41 -0
  344. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-pending-deletions.d.ts.map +1 -0
  345. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-pending-deletions.js +56 -0
  346. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-pending-deletions.js.map +1 -0
  347. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-batch-deleter.d.ts +29 -0
  348. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-batch-deleter.d.ts.map +1 -0
  349. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-batch-deleter.js +32 -0
  350. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-batch-deleter.js.map +1 -0
  351. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-deleter.d.ts +52 -0
  352. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-deleter.d.ts.map +1 -0
  353. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-deleter.js +67 -0
  354. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-deleter.js.map +1 -0
  355. package/dist/service/cloudformation/stack/update/sim-cfn-stack-replaced-resources.d.ts +22 -0
  356. package/dist/service/cloudformation/stack/update/sim-cfn-stack-replaced-resources.d.ts.map +1 -0
  357. package/dist/service/cloudformation/stack/update/sim-cfn-stack-replaced-resources.js +52 -0
  358. package/dist/service/cloudformation/stack/update/sim-cfn-stack-replaced-resources.js.map +1 -0
  359. package/dist/service/cloudformation/stack/update/sim-cfn-stack-template-changes.d.ts +16 -0
  360. package/dist/service/cloudformation/stack/update/sim-cfn-stack-template-changes.d.ts.map +1 -0
  361. package/dist/service/cloudformation/stack/update/sim-cfn-stack-template-changes.js +32 -0
  362. package/dist/service/cloudformation/stack/update/sim-cfn-stack-template-changes.js.map +1 -0
  363. package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-lifecycle.d.ts +64 -0
  364. package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-lifecycle.d.ts.map +1 -0
  365. package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-lifecycle.js +95 -0
  366. package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-lifecycle.js.map +1 -0
  367. package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-plan.d.ts +50 -0
  368. package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-plan.d.ts.map +1 -0
  369. package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-plan.js +76 -0
  370. package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-plan.js.map +1 -0
  371. package/dist/service/cloudformation/stack/update/sim-cfn-stack-updater.d.ts +52 -0
  372. package/dist/service/cloudformation/stack/update/sim-cfn-stack-updater.d.ts.map +1 -0
  373. package/dist/service/cloudformation/stack/update/sim-cfn-stack-updater.js +65 -0
  374. package/dist/service/cloudformation/stack/update/sim-cfn-stack-updater.js.map +1 -0
  375. package/dist/service/cloudformation/stack/update/sim-cfn-template-signature.d.ts +17 -0
  376. package/dist/service/cloudformation/stack/update/sim-cfn-template-signature.d.ts.map +1 -0
  377. package/dist/service/cloudformation/stack/update/sim-cfn-template-signature.js +24 -0
  378. package/dist/service/cloudformation/stack/update/sim-cfn-template-signature.js.map +1 -0
  379. package/dist/service/cloudformation/watch/sim-cfn-template-file-events.d.ts +30 -0
  380. package/dist/service/cloudformation/watch/sim-cfn-template-file-events.d.ts.map +1 -0
  381. package/dist/service/cloudformation/watch/sim-cfn-template-file-events.js +51 -0
  382. package/dist/service/cloudformation/watch/sim-cfn-template-file-events.js.map +1 -0
  383. package/dist/service/cloudformation/watch/sim-cfn-template-file-watch.d.ts +39 -0
  384. package/dist/service/cloudformation/watch/sim-cfn-template-file-watch.d.ts.map +1 -0
  385. package/dist/service/cloudformation/watch/sim-cfn-template-file-watch.js +73 -0
  386. package/dist/service/cloudformation/watch/sim-cfn-template-file-watch.js.map +1 -0
  387. package/dist/service/cloudformation/watch/sim-cfn-template-file-watches.d.ts +46 -0
  388. package/dist/service/cloudformation/watch/sim-cfn-template-file-watches.d.ts.map +1 -0
  389. package/dist/service/cloudformation/watch/sim-cfn-template-file-watches.js +0 -0
  390. package/dist/service/cloudformation/watch/sim-cfn-template-file-watches.js.map +1 -0
  391. package/dist/service/cloudformation/watch/sim-cfn-template-watch-report.d.ts +25 -0
  392. package/dist/service/cloudformation/watch/sim-cfn-template-watch-report.d.ts.map +1 -0
  393. package/dist/service/cloudformation/watch/sim-cfn-template-watch-report.js +35 -0
  394. package/dist/service/cloudformation/watch/sim-cfn-template-watch-report.js.map +1 -0
  395. package/dist/service/cloudformation/watch/sim-cfn-template-watch-update.d.ts +44 -0
  396. package/dist/service/cloudformation/watch/sim-cfn-template-watch-update.d.ts.map +1 -0
  397. package/dist/service/cloudformation/watch/sim-cfn-template-watch-update.js +75 -0
  398. package/dist/service/cloudformation/watch/sim-cfn-template-watch-update.js.map +1 -0
  399. package/dist/service/cloudformation/watch/sim-cfn-template-watch.type.d.ts +30 -0
  400. package/dist/service/cloudformation/watch/sim-cfn-template-watch.type.d.ts.map +1 -0
  401. package/dist/service/cloudformation/watch/sim-cfn-template-watch.type.js +2 -0
  402. package/dist/service/cloudformation/watch/sim-cfn-template-watch.type.js.map +1 -0
  403. package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-deleter.d.ts +29 -0
  404. package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-deleter.d.ts.map +1 -0
  405. package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-deleter.js +42 -0
  406. package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-deleter.js.map +1 -0
  407. package/dist/service/cloudfront/cfn/sim-cfn-cloudfront-resource-factory.d.ts +8 -0
  408. package/dist/service/cloudfront/cfn/sim-cfn-cloudfront-resource-factory.d.ts.map +1 -1
  409. package/dist/service/cloudfront/cfn/sim-cfn-cloudfront-resource-factory.js +32 -0
  410. package/dist/service/cloudfront/cfn/sim-cfn-cloudfront-resource-factory.js.map +1 -1
  411. package/dist/service/cloudfront/command/create-distribution/create-distribution.command.d.ts +2 -9
  412. package/dist/service/cloudfront/command/create-distribution/create-distribution.command.d.ts.map +1 -1
  413. package/dist/service/cloudfront/command/create-distribution/create-distribution.handler.d.ts.map +1 -1
  414. package/dist/service/cloudfront/command/create-distribution/create-distribution.handler.js +5 -13
  415. package/dist/service/cloudfront/command/create-distribution/create-distribution.handler.js.map +1 -1
  416. package/dist/service/cloudfront/command/delete-distribution/delete-distribution-authorizer.d.ts +31 -0
  417. package/dist/service/cloudfront/command/delete-distribution/delete-distribution-authorizer.d.ts.map +1 -0
  418. package/dist/service/cloudfront/command/delete-distribution/delete-distribution-authorizer.js +40 -0
  419. package/dist/service/cloudfront/command/delete-distribution/delete-distribution-authorizer.js.map +1 -0
  420. package/dist/service/cloudfront/command/delete-distribution/delete-distribution.command.d.ts +27 -0
  421. package/dist/service/cloudfront/command/delete-distribution/delete-distribution.command.d.ts.map +1 -0
  422. package/dist/service/cloudfront/command/delete-distribution/delete-distribution.command.js +2 -0
  423. package/dist/service/cloudfront/command/delete-distribution/delete-distribution.command.js.map +1 -0
  424. package/dist/service/cloudfront/command/delete-distribution/delete-distribution.handler.d.ts +47 -0
  425. package/dist/service/cloudfront/command/delete-distribution/delete-distribution.handler.d.ts.map +1 -0
  426. package/dist/service/cloudfront/command/delete-distribution/delete-distribution.handler.js +53 -0
  427. package/dist/service/cloudfront/command/delete-distribution/delete-distribution.handler.js.map +1 -0
  428. package/dist/service/cloudfront/command/delete-function/delete-function-authorizer.d.ts +27 -0
  429. package/dist/service/cloudfront/command/delete-function/delete-function-authorizer.d.ts.map +1 -0
  430. package/dist/service/cloudfront/command/delete-function/delete-function-authorizer.js +36 -0
  431. package/dist/service/cloudfront/command/delete-function/delete-function-authorizer.js.map +1 -0
  432. package/dist/service/cloudfront/command/delete-function/delete-function.command.d.ts +27 -0
  433. package/dist/service/cloudfront/command/delete-function/delete-function.command.d.ts.map +1 -0
  434. package/dist/service/cloudfront/command/delete-function/delete-function.command.js +2 -0
  435. package/dist/service/cloudfront/command/delete-function/delete-function.command.js.map +1 -0
  436. package/dist/service/cloudfront/command/delete-function/delete-function.handler.d.ts +43 -0
  437. package/dist/service/cloudfront/command/delete-function/delete-function.handler.d.ts.map +1 -0
  438. package/dist/service/cloudfront/command/delete-function/delete-function.handler.js +46 -0
  439. package/dist/service/cloudfront/command/delete-function/delete-function.handler.js.map +1 -0
  440. package/dist/service/cloudfront/command/get-distribution/get-distribution.command.d.ts +2 -10
  441. package/dist/service/cloudfront/command/get-distribution/get-distribution.command.d.ts.map +1 -1
  442. package/dist/service/cloudfront/command/get-distribution/get-distribution.handler.d.ts.map +1 -1
  443. package/dist/service/cloudfront/command/get-distribution/get-distribution.handler.js +4 -11
  444. package/dist/service/cloudfront/command/get-distribution/get-distribution.handler.js.map +1 -1
  445. package/dist/service/cloudfront/command/update-distribution/update-distribution-authorizer.d.ts +27 -0
  446. package/dist/service/cloudfront/command/update-distribution/update-distribution-authorizer.d.ts.map +1 -0
  447. package/dist/service/cloudfront/command/update-distribution/update-distribution-authorizer.js +36 -0
  448. package/dist/service/cloudfront/command/update-distribution/update-distribution-authorizer.js.map +1 -0
  449. package/dist/service/cloudfront/command/update-distribution/update-distribution.command.d.ts +32 -0
  450. package/dist/service/cloudfront/command/update-distribution/update-distribution.command.d.ts.map +1 -0
  451. package/dist/service/cloudfront/command/update-distribution/update-distribution.command.js +2 -0
  452. package/dist/service/cloudfront/command/update-distribution/update-distribution.command.js.map +1 -0
  453. package/dist/service/cloudfront/command/update-distribution/update-distribution.handler.d.ts +48 -0
  454. package/dist/service/cloudfront/command/update-distribution/update-distribution.handler.d.ts.map +1 -0
  455. package/dist/service/cloudfront/command/update-distribution/update-distribution.handler.js +63 -0
  456. package/dist/service/cloudfront/command/update-distribution/update-distribution.handler.js.map +1 -0
  457. package/dist/service/cloudfront/distribution/configurator/sim-cf-distribution-configurator.factory.d.ts +16 -0
  458. package/dist/service/cloudfront/distribution/configurator/sim-cf-distribution-configurator.factory.d.ts.map +1 -0
  459. package/dist/service/cloudfront/distribution/configurator/sim-cf-distribution-configurator.factory.js +13 -0
  460. package/dist/service/cloudfront/distribution/configurator/sim-cf-distribution-configurator.factory.js.map +1 -0
  461. package/dist/service/cloudfront/distribution/sim-cf-distribution-reconfigurer.d.ts +35 -0
  462. package/dist/service/cloudfront/distribution/sim-cf-distribution-reconfigurer.d.ts.map +1 -0
  463. package/dist/service/cloudfront/distribution/sim-cf-distribution-reconfigurer.js +37 -0
  464. package/dist/service/cloudfront/distribution/sim-cf-distribution-reconfigurer.js.map +1 -0
  465. package/dist/service/cloudfront/distribution/sim-cf-distribution-view.d.ts +27 -0
  466. package/dist/service/cloudfront/distribution/sim-cf-distribution-view.d.ts.map +1 -0
  467. package/dist/service/cloudfront/distribution/sim-cf-distribution-view.js +22 -0
  468. package/dist/service/cloudfront/distribution/sim-cf-distribution-view.js.map +1 -0
  469. package/dist/service/cloudfront/distribution/sim-cf-distro-config.factory.d.ts.map +1 -1
  470. package/dist/service/cloudfront/distribution/sim-cf-distro-config.factory.js +1 -0
  471. package/dist/service/cloudfront/distribution/sim-cf-distro-config.factory.js.map +1 -1
  472. package/dist/service/cloudfront/distribution/sim-cloudfront-distribution.d.ts +27 -1
  473. package/dist/service/cloudfront/distribution/sim-cloudfront-distribution.d.ts.map +1 -1
  474. package/dist/service/cloudfront/distribution/sim-cloudfront-distribution.js +49 -2
  475. package/dist/service/cloudfront/distribution/sim-cloudfront-distribution.js.map +1 -1
  476. package/dist/service/cloudfront/error/sim-cloudfront.error.d.ts +24 -3
  477. package/dist/service/cloudfront/error/sim-cloudfront.error.d.ts.map +1 -1
  478. package/dist/service/cloudfront/error/sim-cloudfront.error.js +28 -3
  479. package/dist/service/cloudfront/error/sim-cloudfront.error.js.map +1 -1
  480. package/dist/service/cloudfront/registry/sim-cloud-front-registry.d.ts +25 -0
  481. package/dist/service/cloudfront/registry/sim-cloud-front-registry.d.ts.map +1 -1
  482. package/dist/service/cloudfront/registry/sim-cloud-front-registry.js +48 -5
  483. package/dist/service/cloudfront/registry/sim-cloud-front-registry.js.map +1 -1
  484. package/dist/service/cloudfront/sdk/sim-cloudfront-sdk-command-router.d.ts.map +1 -1
  485. package/dist/service/cloudfront/sdk/sim-cloudfront-sdk-command-router.js +12 -0
  486. package/dist/service/cloudfront/sdk/sim-cloudfront-sdk-command-router.js.map +1 -1
  487. package/dist/service/cloudfront/sim-cloudfront-commands.d.ts +87 -0
  488. package/dist/service/cloudfront/sim-cloudfront-commands.d.ts.map +1 -0
  489. package/dist/service/cloudfront/sim-cloudfront-commands.js +97 -0
  490. package/dist/service/cloudfront/sim-cloudfront-commands.js.map +1 -0
  491. package/dist/service/cloudfront/sim-cloudfront.d.ts +24 -33
  492. package/dist/service/cloudfront/sim-cloudfront.d.ts.map +1 -1
  493. package/dist/service/cloudfront/sim-cloudfront.js +33 -48
  494. package/dist/service/cloudfront/sim-cloudfront.js.map +1 -1
  495. package/dist/service/cognito/cfn/sim-cfn-cognito-resource-deleter.d.ts +24 -0
  496. package/dist/service/cognito/cfn/sim-cfn-cognito-resource-deleter.d.ts.map +1 -0
  497. package/dist/service/cognito/cfn/sim-cfn-cognito-resource-deleter.js +55 -0
  498. package/dist/service/cognito/cfn/sim-cfn-cognito-resource-deleter.js.map +1 -0
  499. package/dist/service/cognito/cfn/sim-cfn-cognito-resource-factory.d.ts +5 -0
  500. package/dist/service/cognito/cfn/sim-cfn-cognito-resource-factory.d.ts.map +1 -1
  501. package/dist/service/cognito/cfn/sim-cfn-cognito-resource-factory.js +9 -0
  502. package/dist/service/cognito/cfn/sim-cfn-cognito-resource-factory.js.map +1 -1
  503. package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-deleter.d.ts +23 -0
  504. package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-deleter.d.ts.map +1 -0
  505. package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-deleter.js +29 -0
  506. package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-deleter.js.map +1 -0
  507. package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-factory.d.ts +5 -0
  508. package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-factory.d.ts.map +1 -1
  509. package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-factory.js +11 -0
  510. package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-factory.js.map +1 -1
  511. package/dist/service/iam/cfn/role/sim-cfn-iam-role-deleter.d.ts +30 -0
  512. package/dist/service/iam/cfn/role/sim-cfn-iam-role-deleter.d.ts.map +1 -0
  513. package/dist/service/iam/cfn/role/sim-cfn-iam-role-deleter.js +41 -0
  514. package/dist/service/iam/cfn/role/sim-cfn-iam-role-deleter.js.map +1 -0
  515. package/dist/service/iam/cfn/sim-cfn-iam-resource-deleter.d.ts +29 -0
  516. package/dist/service/iam/cfn/sim-cfn-iam-resource-deleter.d.ts.map +1 -0
  517. package/dist/service/iam/cfn/sim-cfn-iam-resource-deleter.js +61 -0
  518. package/dist/service/iam/cfn/sim-cfn-iam-resource-deleter.js.map +1 -0
  519. package/dist/service/iam/cfn/sim-cfn-iam-resource-factory.d.ts +6 -0
  520. package/dist/service/iam/cfn/sim-cfn-iam-resource-factory.d.ts.map +1 -1
  521. package/dist/service/iam/cfn/sim-cfn-iam-resource-factory.js +9 -0
  522. package/dist/service/iam/cfn/sim-cfn-iam-resource-factory.js.map +1 -1
  523. package/dist/service/kms/cfn/sim-cfn-kms-resource-deleter.d.ts +23 -0
  524. package/dist/service/kms/cfn/sim-cfn-kms-resource-deleter.d.ts.map +1 -0
  525. package/dist/service/kms/cfn/sim-cfn-kms-resource-deleter.js +40 -0
  526. package/dist/service/kms/cfn/sim-cfn-kms-resource-deleter.js.map +1 -0
  527. package/dist/service/kms/cfn/sim-cfn-kms-resource-factory.d.ts +5 -0
  528. package/dist/service/kms/cfn/sim-cfn-kms-resource-factory.d.ts.map +1 -1
  529. package/dist/service/kms/cfn/sim-cfn-kms-resource-factory.js +9 -0
  530. package/dist/service/kms/cfn/sim-cfn-kms-resource-factory.js.map +1 -1
  531. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-deleter.d.ts +33 -0
  532. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-deleter.d.ts.map +1 -0
  533. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-deleter.js +80 -0
  534. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-deleter.js.map +1 -0
  535. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.d.ts +5 -0
  536. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.d.ts.map +1 -1
  537. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.js +9 -0
  538. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.js.map +1 -1
  539. package/dist/service/route53/cfn/sim-cfn-route53-resource-deleter.d.ts +30 -0
  540. package/dist/service/route53/cfn/sim-cfn-route53-resource-deleter.d.ts.map +1 -0
  541. package/dist/service/route53/cfn/sim-cfn-route53-resource-deleter.js +63 -0
  542. package/dist/service/route53/cfn/sim-cfn-route53-resource-deleter.js.map +1 -0
  543. package/dist/service/route53/cfn/sim-cfn-route53-resource-factory.d.ts +6 -0
  544. package/dist/service/route53/cfn/sim-cfn-route53-resource-factory.d.ts.map +1 -1
  545. package/dist/service/route53/cfn/sim-cfn-route53-resource-factory.js +9 -0
  546. package/dist/service/route53/cfn/sim-cfn-route53-resource-factory.js.map +1 -1
  547. package/dist/service/s3/bucket/sim-s3-bucket-access.d.ts +4 -0
  548. package/dist/service/s3/bucket/sim-s3-bucket-access.d.ts.map +1 -1
  549. package/dist/service/s3/bucket/sim-s3-bucket-access.js +6 -0
  550. package/dist/service/s3/bucket/sim-s3-bucket-access.js.map +1 -1
  551. package/dist/service/s3/cfn/sim-cfn-s3-resource-deleter.d.ts +32 -0
  552. package/dist/service/s3/cfn/sim-cfn-s3-resource-deleter.d.ts.map +1 -0
  553. package/dist/service/s3/cfn/sim-cfn-s3-resource-deleter.js +51 -0
  554. package/dist/service/s3/cfn/sim-cfn-s3-resource-deleter.js.map +1 -0
  555. package/dist/service/s3/cfn/sim-cfn-s3-resource-factory.d.ts +5 -0
  556. package/dist/service/s3/cfn/sim-cfn-s3-resource-factory.d.ts.map +1 -1
  557. package/dist/service/s3/cfn/sim-cfn-s3-resource-factory.js +9 -0
  558. package/dist/service/s3/cfn/sim-cfn-s3-resource-factory.js.map +1 -1
  559. package/dist/service/secretsmanager/cfn/sim-cfn-secrets-manager-resource-factory.d.ts +11 -0
  560. package/dist/service/secretsmanager/cfn/sim-cfn-secrets-manager-resource-factory.d.ts.map +1 -1
  561. package/dist/service/secretsmanager/cfn/sim-cfn-secrets-manager-resource-factory.js +22 -0
  562. package/dist/service/secretsmanager/cfn/sim-cfn-secrets-manager-resource-factory.js.map +1 -1
  563. package/dist/service/sqs/cfn/sim-cfn-sqs-resource-deleter.d.ts +32 -0
  564. package/dist/service/sqs/cfn/sim-cfn-sqs-resource-deleter.d.ts.map +1 -0
  565. package/dist/service/sqs/cfn/sim-cfn-sqs-resource-deleter.js +61 -0
  566. package/dist/service/sqs/cfn/sim-cfn-sqs-resource-deleter.js.map +1 -0
  567. package/dist/service/sqs/cfn/sim-sqs-cfn-resource-factory.d.ts +6 -0
  568. package/dist/service/sqs/cfn/sim-sqs-cfn-resource-factory.d.ts.map +1 -1
  569. package/dist/service/sqs/cfn/sim-sqs-cfn-resource-factory.js +9 -0
  570. package/dist/service/sqs/cfn/sim-sqs-cfn-resource-factory.js.map +1 -1
  571. package/dist/service/sqs/queue/sim-sqs-queue-json-attribute.d.ts +4 -0
  572. package/dist/service/sqs/queue/sim-sqs-queue-json-attribute.d.ts.map +1 -1
  573. package/dist/service/sqs/queue/sim-sqs-queue-json-attribute.js +5 -1
  574. package/dist/service/sqs/queue/sim-sqs-queue-json-attribute.js.map +1 -1
  575. package/dist/service/ssm/cfn/parameter/sim-cfn-ssm-parameter-creator.d.ts +4 -3
  576. package/dist/service/ssm/cfn/parameter/sim-cfn-ssm-parameter-creator.d.ts.map +1 -1
  577. package/dist/service/ssm/cfn/parameter/sim-cfn-ssm-parameter-creator.js +4 -3
  578. package/dist/service/ssm/cfn/parameter/sim-cfn-ssm-parameter-creator.js.map +1 -1
  579. package/dist/service/ssm/cfn/sim-cfn-ssm-resource-factory.d.ts +5 -0
  580. package/dist/service/ssm/cfn/sim-cfn-ssm-resource-factory.d.ts.map +1 -1
  581. package/dist/service/ssm/cfn/sim-cfn-ssm-resource-factory.js +14 -0
  582. package/dist/service/ssm/cfn/sim-cfn-ssm-resource-factory.js.map +1 -1
  583. package/dist/watch/sim-watch-runtime.d.ts +76 -0
  584. package/dist/watch/sim-watch-runtime.d.ts.map +1 -0
  585. package/dist/watch/sim-watch-runtime.js +124 -0
  586. package/dist/watch/sim-watch-runtime.js.map +1 -0
  587. package/dist/watch/sim-watch-settle.d.ts +32 -0
  588. package/dist/watch/sim-watch-settle.d.ts.map +1 -0
  589. package/dist/watch/sim-watch-settle.js +43 -0
  590. package/dist/watch/sim-watch-settle.js.map +1 -0
  591. package/dist/watch/sim-watch.config.d.ts +22 -0
  592. package/dist/watch/sim-watch.config.d.ts.map +1 -0
  593. package/dist/watch/sim-watch.config.js +39 -0
  594. package/dist/watch/sim-watch.config.js.map +1 -0
  595. package/package.json +4 -1
  596. package/dist/service/cloudformation/error/sim-cloudfront.error.d.ts.map +0 -1
  597. package/dist/service/cloudformation/error/sim-cloudfront.error.js.map +0 -1
  598. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-deployment-scheduler.d.ts +0 -47
  599. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-deployment-scheduler.d.ts.map +0 -1
  600. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-deployment-scheduler.js +0 -64
  601. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-deployment-scheduler.js.map +0 -1
@@ -0,0 +1,29 @@
1
+ import type { SimAws } from "../../../aws/sim-aws.js";
2
+ import type { SimCfnResource } from "../../resource/sim-cfn-resource.js";
3
+ interface SimCfnStackResourceBatchDeleterProperties {
4
+ readonly simAws: SimAws;
5
+ readonly resources: ReadonlyMap<string, SimCfnResource>;
6
+ }
7
+ /**
8
+ * Deletes one batch of Stack Resources nothing still depends on.
9
+ *
10
+ * The caller guarantees that every supplied Resource is ready to delete. This
11
+ * class owns only the batch execution details: delete them in parallel, passing
12
+ * each the shared Stack context.
13
+ *
14
+ * It does not choose which Resources are ready, retry incomplete Resources, or
15
+ * update Stack lifecycle state.
16
+ */
17
+ export declare class SimCfnStackResourceBatchDeleter {
18
+ private readonly simAws;
19
+ private readonly resources;
20
+ constructor(properties: SimCfnStackResourceBatchDeleterProperties);
21
+ /**
22
+ * Delete the supplied Resources concurrently.
23
+ *
24
+ * Each Resource still owns its own delete lifecycle and status transitions.
25
+ */
26
+ delete(resources: readonly SimCfnResource[]): Promise<void>;
27
+ }
28
+ export {};
29
+ //# sourceMappingURL=sim-cfn-stack-resource-batch-deleter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-stack-resource-batch-deleter.d.ts","sourceRoot":"","sources":["../../../../../src/service/cloudformation/stack/teardown/sim-cfn-stack-resource-batch-deleter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAEzE,UAAU,yCAAyC;IACjD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,SAAS,EAAE,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;CACzD;AAED;;;;;;;;;GASG;AACH,qBAAa,+BAA+B;IAC1C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAsC;IAEhE,YAAY,UAAU,EAAE,yCAAyC,EAGhE;IAED;;;;OAIG;IACG,MAAM,CAAC,SAAS,EAAE,SAAS,cAAc,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAShE;CACF"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Deletes one batch of Stack Resources nothing still depends on.
3
+ *
4
+ * The caller guarantees that every supplied Resource is ready to delete. This
5
+ * class owns only the batch execution details: delete them in parallel, passing
6
+ * each the shared Stack context.
7
+ *
8
+ * It does not choose which Resources are ready, retry incomplete Resources, or
9
+ * update Stack lifecycle state.
10
+ */
11
+ export class SimCfnStackResourceBatchDeleter {
12
+ simAws;
13
+ resources;
14
+ constructor(properties) {
15
+ this.simAws = properties.simAws;
16
+ this.resources = properties.resources;
17
+ }
18
+ /**
19
+ * Delete the supplied Resources concurrently.
20
+ *
21
+ * Each Resource still owns its own delete lifecycle and status transitions.
22
+ */
23
+ async delete(resources) {
24
+ await Promise.all(resources.map(async (resource) => {
25
+ await resource.delete({
26
+ simAws: this.simAws,
27
+ resources: this.resources,
28
+ });
29
+ }));
30
+ }
31
+ }
32
+ //# sourceMappingURL=sim-cfn-stack-resource-batch-deleter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-stack-resource-batch-deleter.js","sourceRoot":"","sources":["../../../../../src/service/cloudformation/stack/teardown/sim-cfn-stack-resource-batch-deleter.ts"],"names":[],"mappings":"AAQA;;;;;;;;;GASG;AACH,MAAM,OAAO,+BAA+B;IACzB,MAAM,CAAS;IACf,SAAS,CAAsC;IAEhE,YAAY,UAAqD;QAC/D,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;QAChC,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;IACxC,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,MAAM,CAAC,SAAoC;QAC/C,MAAM,OAAO,CAAC,GAAG,CACf,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;YAC/B,MAAM,QAAQ,CAAC,MAAM,CAAC;gBACpB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,SAAS,EAAE,IAAI,CAAC,SAAS;aAC1B,CAAC,CAAC;QACL,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,52 @@
1
+ import type { SimAws } from "../../../aws/sim-aws.js";
2
+ import type { SimCfnResource } from "../../resource/sim-cfn-resource.js";
3
+ interface SimCfnStackResourceDeleterProperties {
4
+ readonly simAws: SimAws;
5
+ readonly resources: ReadonlyMap<string, SimCfnResource>;
6
+ readonly stackName: string;
7
+ }
8
+ /**
9
+ * Orchestrates reverse-dependency-ordered deletion of a Stack's Resources.
10
+ *
11
+ * The mirror image of SimCfnStackResourceCreator:
12
+ *
13
+ * - ask SimCfnStackPendingDeletions which pending Resources nothing depends on
14
+ * - fail if no pending Resource can make progress
15
+ * - ask SimCfnStackResourceBatchDeleter to delete the ready batch
16
+ * - repeat with the Resources that are still not delete-complete
17
+ *
18
+ * Deleting in this order is what makes the individual service deleters
19
+ * workable: a Bucket policy is gone before its Bucket, a Role's policies before
20
+ * the Role, and every Ref a Resource carries still resolves while that Resource
21
+ * is being deleted.
22
+ */
23
+ export declare class SimCfnStackResourceDeleter {
24
+ private readonly resources;
25
+ private readonly stackName;
26
+ private readonly batchDeleter;
27
+ constructor(properties: SimCfnStackResourceDeleterProperties);
28
+ /**
29
+ * Delete every Stack Resource once nothing depends on it any more.
30
+ *
31
+ * What a teardown does, where an update deletes only the Resources its
32
+ * template dropped or replaced.
33
+ */
34
+ deleteAll(): Promise<void>;
35
+ /**
36
+ * Delete the given Stack Resources once nothing depends on them any more.
37
+ *
38
+ * The loop is sequential between batches because a Resource can only go once
39
+ * the Resources naming it have gone. Deletion inside a batch is parallel and
40
+ * delegated to SimCfnStackResourceBatchDeleter.
41
+ *
42
+ * Dependents are read across every Resource in the Stack rather than only the
43
+ * ones being deleted, so a Resource an update leaves alone still holds up the
44
+ * Resource it names.
45
+ *
46
+ * If a loop iteration finds pending Resources but none are deletable, the
47
+ * template's dependencies are cyclic, the same condition creation reports.
48
+ */
49
+ delete(deleting: readonly SimCfnResource[]): Promise<void>;
50
+ }
51
+ export {};
52
+ //# sourceMappingURL=sim-cfn-stack-resource-deleter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-stack-resource-deleter.d.ts","sourceRoot":"","sources":["../../../../../src/service/cloudformation/stack/teardown/sim-cfn-stack-resource-deleter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAIzE,UAAU,oCAAoC;IAC5C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,SAAS,EAAE,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACxD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED;;;;;;;;;;;;;;GAcG;AACH,qBAAa,0BAA0B;IACrC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAsC;IAChE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAkC;IAE/D,YAAY,UAAU,EAAE,oCAAoC,EAS3D;IAED;;;;;OAKG;IACG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAE/B;IAED;;;;;;;;;;;;;OAaG;IACG,MAAM,CAAC,QAAQ,EAAE,SAAS,cAAc,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAoB/D;CACF"}
@@ -0,0 +1,67 @@
1
+ import { SimCfnStackPendingDeletions } from "./sim-cfn-stack-pending-deletions.js";
2
+ import { SimCfnStackResourceBatchDeleter } from "./sim-cfn-stack-resource-batch-deleter.js";
3
+ /**
4
+ * Orchestrates reverse-dependency-ordered deletion of a Stack's Resources.
5
+ *
6
+ * The mirror image of SimCfnStackResourceCreator:
7
+ *
8
+ * - ask SimCfnStackPendingDeletions which pending Resources nothing depends on
9
+ * - fail if no pending Resource can make progress
10
+ * - ask SimCfnStackResourceBatchDeleter to delete the ready batch
11
+ * - repeat with the Resources that are still not delete-complete
12
+ *
13
+ * Deleting in this order is what makes the individual service deleters
14
+ * workable: a Bucket policy is gone before its Bucket, a Role's policies before
15
+ * the Role, and every Ref a Resource carries still resolves while that Resource
16
+ * is being deleted.
17
+ */
18
+ export class SimCfnStackResourceDeleter {
19
+ resources;
20
+ stackName;
21
+ batchDeleter;
22
+ constructor(properties) {
23
+ const { simAws, resources, stackName } = properties;
24
+ this.resources = resources;
25
+ this.stackName = stackName;
26
+ this.batchDeleter = new SimCfnStackResourceBatchDeleter({
27
+ simAws,
28
+ resources,
29
+ });
30
+ }
31
+ /**
32
+ * Delete every Stack Resource once nothing depends on it any more.
33
+ *
34
+ * What a teardown does, where an update deletes only the Resources its
35
+ * template dropped or replaced.
36
+ */
37
+ async deleteAll() {
38
+ await this.delete(this.resources.values().toArray());
39
+ }
40
+ /**
41
+ * Delete the given Stack Resources once nothing depends on them any more.
42
+ *
43
+ * The loop is sequential between batches because a Resource can only go once
44
+ * the Resources naming it have gone. Deletion inside a batch is parallel and
45
+ * delegated to SimCfnStackResourceBatchDeleter.
46
+ *
47
+ * Dependents are read across every Resource in the Stack rather than only the
48
+ * ones being deleted, so a Resource an update leaves alone still holds up the
49
+ * Resource it names.
50
+ *
51
+ * If a loop iteration finds pending Resources but none are deletable, the
52
+ * template's dependencies are cyclic, the same condition creation reports.
53
+ */
54
+ async delete(deleting) {
55
+ let pendingDeletions = new SimCfnStackPendingDeletions(this.resources, new Set(deleting));
56
+ while (pendingDeletions.hasResources) {
57
+ const deletableResources = pendingDeletions.deletableResources();
58
+ if (deletableResources.length === 0) {
59
+ throw new Error(`Could not resolve simulated CloudFormation Resource dependencies to delete Stack ${this.stackName}`);
60
+ }
61
+ // eslint-disable-next-line no-await-in-loop
62
+ await this.batchDeleter.delete(deletableResources);
63
+ pendingDeletions = pendingDeletions.incompleteResources();
64
+ }
65
+ }
66
+ }
67
+ //# sourceMappingURL=sim-cfn-stack-resource-deleter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-stack-resource-deleter.js","sourceRoot":"","sources":["../../../../../src/service/cloudformation/stack/teardown/sim-cfn-stack-resource-deleter.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,2BAA2B,EAAE,MAAM,sCAAsC,CAAC;AACnF,OAAO,EAAE,+BAA+B,EAAE,MAAM,2CAA2C,CAAC;AAQ5F;;;;;;;;;;;;;;GAcG;AACH,MAAM,OAAO,0BAA0B;IACpB,SAAS,CAAsC;IAC/C,SAAS,CAAS;IAClB,YAAY,CAAkC;IAE/D,YAAY,UAAgD;QAC1D,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,UAAU,CAAC;QAEpD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,YAAY,GAAG,IAAI,+BAA+B,CAAC;YACtD,MAAM;YACN,SAAS;SACV,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,SAAS;QACb,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;IACvD,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,KAAK,CAAC,MAAM,CAAC,QAAmC;QAC9C,IAAI,gBAAgB,GAAG,IAAI,2BAA2B,CACpD,IAAI,CAAC,SAAS,EACd,IAAI,GAAG,CAAC,QAAQ,CAAC,CAClB,CAAC;QAEF,OAAO,gBAAgB,CAAC,YAAY,EAAE,CAAC;YACrC,MAAM,kBAAkB,GAAG,gBAAgB,CAAC,kBAAkB,EAAE,CAAC;YAEjE,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACpC,MAAM,IAAI,KAAK,CACb,oFAAoF,IAAI,CAAC,SAAS,EAAE,CACrG,CAAC;YACJ,CAAC;YAED,4CAA4C;YAC5C,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;YAEnD,gBAAgB,GAAG,gBAAgB,CAAC,mBAAmB,EAAE,CAAC;QAC5D,CAAC;IACH,CAAC;CACF"}
@@ -0,0 +1,22 @@
1
+ import type { SimCfnResource } from "../../resource/sim-cfn-resource.js";
2
+ interface SimCfnStackReplacedResourcesProperties {
3
+ readonly current: ReadonlyMap<string, SimCfnResource>;
4
+ readonly updated: ReadonlyMap<string, SimCfnResource>;
5
+ }
6
+ /**
7
+ * The logical IDs an update has to replace, given the Stack's deployed
8
+ * Resources and the ones its new template describes.
9
+ *
10
+ * A Resource is replaced when its resolved template entry changed. Sim
11
+ * CloudFormation has no in-place update, so replacement means deleting the
12
+ * Resource and creating it again from the new template.
13
+ *
14
+ * A Resource that names a replaced Resource is replaced too, all the way up the
15
+ * dependency chain. Real CloudFormation hands the dependent the new physical
16
+ * name instead, but nothing here can rewrite an already created simulated
17
+ * Resource, and leaving the dependent alone would leave it pointing at a
18
+ * Resource that has gone.
19
+ */
20
+ export declare function simCfnStackReplacedLogicalIds(properties: SimCfnStackReplacedResourcesProperties): ReadonlySet<string>;
21
+ export {};
22
+ //# sourceMappingURL=sim-cfn-stack-replaced-resources.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-stack-replaced-resources.d.ts","sourceRoot":"","sources":["../../../../../src/service/cloudformation/stack/update/sim-cfn-stack-replaced-resources.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAGzE,UAAU,sCAAsC;IAC9C,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACtD,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;CACvD;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,6BAA6B,CAC3C,UAAU,EAAE,sCAAsC,GACjD,WAAW,CAAC,MAAM,CAAC,CAyBrB"}
@@ -0,0 +1,52 @@
1
+ import { simCfnTemplateSignature } from "./sim-cfn-template-signature.js";
2
+ /**
3
+ * The logical IDs an update has to replace, given the Stack's deployed
4
+ * Resources and the ones its new template describes.
5
+ *
6
+ * A Resource is replaced when its resolved template entry changed. Sim
7
+ * CloudFormation has no in-place update, so replacement means deleting the
8
+ * Resource and creating it again from the new template.
9
+ *
10
+ * A Resource that names a replaced Resource is replaced too, all the way up the
11
+ * dependency chain. Real CloudFormation hands the dependent the new physical
12
+ * name instead, but nothing here can rewrite an already created simulated
13
+ * Resource, and leaving the dependent alone would leave it pointing at a
14
+ * Resource that has gone.
15
+ */
16
+ export function simCfnStackReplacedLogicalIds(properties) {
17
+ const { current, updated } = properties;
18
+ const replaced = changedLogicalIds({ current, updated });
19
+ // Each pass replaces the Resources naming one already being replaced, until a
20
+ // pass finds none, which is the end of the dependency chain.
21
+ let spreading = true;
22
+ while (spreading) {
23
+ spreading = false;
24
+ for (const [logicalId, resource] of updated) {
25
+ const spreads = current.has(logicalId) &&
26
+ !replaced.has(logicalId) &&
27
+ resource.dependencies().some((dependency) => replaced.has(dependency));
28
+ if (spreads) {
29
+ replaced.add(logicalId);
30
+ spreading = true;
31
+ }
32
+ }
33
+ }
34
+ return replaced;
35
+ }
36
+ /**
37
+ * The logical IDs whose resolved template entry differs from the deployed one.
38
+ */
39
+ function changedLogicalIds(properties) {
40
+ const { current, updated } = properties;
41
+ const changed = new Set();
42
+ for (const [logicalId, resource] of updated) {
43
+ const deployed = current.get(logicalId);
44
+ if (deployed !== undefined &&
45
+ simCfnTemplateSignature(deployed.template) !==
46
+ simCfnTemplateSignature(resource.template)) {
47
+ changed.add(logicalId);
48
+ }
49
+ }
50
+ return changed;
51
+ }
52
+ //# sourceMappingURL=sim-cfn-stack-replaced-resources.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-stack-replaced-resources.js","sourceRoot":"","sources":["../../../../../src/service/cloudformation/stack/update/sim-cfn-stack-replaced-resources.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAO1E;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,6BAA6B,CAC3C,UAAkD;IAElD,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC;IACxC,MAAM,QAAQ,GAAG,iBAAiB,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;IAEzD,8EAA8E;IAC9E,6DAA6D;IAC7D,IAAI,SAAS,GAAG,IAAI,CAAC;IAErB,OAAO,SAAS,EAAE,CAAC;QACjB,SAAS,GAAG,KAAK,CAAC;QAElB,KAAK,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,IAAI,OAAO,EAAE,CAAC;YAC5C,MAAM,OAAO,GACX,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC;gBACtB,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC;gBACxB,QAAQ,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;YAEzE,IAAI,OAAO,EAAE,CAAC;gBACZ,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;gBACxB,SAAS,GAAG,IAAI,CAAC;YACnB,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB,CACxB,UAAkD;IAElD,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC;IACxC,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAElC,KAAK,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,IAAI,OAAO,EAAE,CAAC;QAC5C,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAExC,IACE,QAAQ,KAAK,SAAS;YACtB,uBAAuB,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBACxC,uBAAuB,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAC5C,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACzB,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -0,0 +1,16 @@
1
+ import type { SimCfnTemplate } from "../../template/sim-cfn-template.js";
2
+ /**
3
+ * Whether a new template says anything different from the deployed one, apart
4
+ * from its Resources.
5
+ *
6
+ * An update that changes nothing but an Output, a Description, or a section
7
+ * this simulation does not read is still an update, so the whole template body
8
+ * is compared alongside the Resource half of the difference.
9
+ *
10
+ * The body alone is not enough, because a Parameter given a new value changes
11
+ * what the template means without changing a character of it. The Outputs are
12
+ * therefore also compared as they resolve, which is where such a change shows
13
+ * through. SimCfnStackUpdatePlan compares the Resources the same way.
14
+ */
15
+ export declare function simCfnStackTemplateChanged(current: SimCfnTemplate, updated: SimCfnTemplate): boolean;
16
+ //# sourceMappingURL=sim-cfn-stack-template-changes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-stack-template-changes.d.ts","sourceRoot":"","sources":["../../../../../src/service/cloudformation/stack/update/sim-cfn-stack-template-changes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAIzE;;;;;;;;;;;;GAYG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,cAAc,EACvB,OAAO,EAAE,cAAc,GACtB,OAAO,CAOT"}
@@ -0,0 +1,32 @@
1
+ import { simCfnTemplateSignature } from "./sim-cfn-template-signature.js";
2
+ /**
3
+ * Whether a new template says anything different from the deployed one, apart
4
+ * from its Resources.
5
+ *
6
+ * An update that changes nothing but an Output, a Description, or a section
7
+ * this simulation does not read is still an update, so the whole template body
8
+ * is compared alongside the Resource half of the difference.
9
+ *
10
+ * The body alone is not enough, because a Parameter given a new value changes
11
+ * what the template means without changing a character of it. The Outputs are
12
+ * therefore also compared as they resolve, which is where such a change shows
13
+ * through. SimCfnStackUpdatePlan compares the Resources the same way.
14
+ */
15
+ export function simCfnStackTemplateChanged(current, updated) {
16
+ return (simCfnTemplateSignature(current.template) !==
17
+ simCfnTemplateSignature(updated.template) ||
18
+ simCfnTemplateSignature(outputRecord(current)) !==
19
+ simCfnTemplateSignature(outputRecord(updated)));
20
+ }
21
+ /**
22
+ * A template's Output entries in one record, for the signature to be taken of.
23
+ */
24
+ function outputRecord(template) {
25
+ return Object.fromEntries(template
26
+ .outputTemplates()
27
+ .map((outputTemplate) => [
28
+ outputTemplate.outputKey,
29
+ outputTemplate.template,
30
+ ]));
31
+ }
32
+ //# sourceMappingURL=sim-cfn-stack-template-changes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-stack-template-changes.js","sourceRoot":"","sources":["../../../../../src/service/cloudformation/stack/update/sim-cfn-stack-template-changes.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAE1E;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,0BAA0B,CACxC,OAAuB,EACvB,OAAuB;IAEvB,OAAO,CACL,uBAAuB,CAAC,OAAO,CAAC,QAAQ,CAAC;QACvC,uBAAuB,CAAC,OAAO,CAAC,QAAQ,CAAC;QAC3C,uBAAuB,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YAC5C,uBAAuB,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CACjD,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,YAAY,CAAC,QAAwB;IAC5C,OAAO,MAAM,CAAC,WAAW,CACvB,QAAQ;SACL,eAAe,EAAE;SACjB,GAAG,CAAC,CAAC,cAAc,EAAE,EAAE,CAAC;QACvB,cAAc,CAAC,SAAS;QACxB,cAAc,CAAC,QAAQ;KACxB,CAAC,CACL,CAAC;AACJ,CAAC"}
@@ -0,0 +1,64 @@
1
+ import type { BackgroundScheduler } from "../../../../util/background/background.js";
2
+ import type { SimCloudFormationStackName, SimCloudFormationStackStatus } from "../sim-cfn-stack.js";
3
+ interface SimCfnStackUpdateLifecycleProperties {
4
+ readonly background: BackgroundScheduler;
5
+ readonly stackName: SimCloudFormationStackName;
6
+ }
7
+ /**
8
+ * Owns the simulated CloudFormation Stack update lifecycle state.
9
+ *
10
+ * The third of the Stack operation lifecycles, alongside
11
+ * SimCfnStackDeploymentLifecycle and SimCfnStackDeletionLifecycle, and separate
12
+ * from both for the same reason they are separate from each other: a Stack that
13
+ * was never updated has no update status at all, and its deployment status is
14
+ * still the thing to report.
15
+ *
16
+ * The work itself is passed in per update, because each one applies a different
17
+ * template. This class only says what the Stack is doing and what went wrong.
18
+ */
19
+ export declare class SimCfnStackUpdateLifecycle {
20
+ #private;
21
+ private readonly background;
22
+ private readonly stackName;
23
+ private completePromise;
24
+ private updateError;
25
+ constructor(properties: SimCfnStackUpdateLifecycleProperties);
26
+ /**
27
+ * The current Stack update status, or undefined if the Stack has never been
28
+ * updated.
29
+ */
30
+ get status(): SimCloudFormationStackStatus | undefined;
31
+ /**
32
+ * The error captured during a background update, if any.
33
+ */
34
+ get error(): Error | undefined;
35
+ /**
36
+ * Refuse an update while one is already running.
37
+ *
38
+ * CloudFormation takes one update at a time, and a second here would read
39
+ * the difference to apply from a Stack half way through the first.
40
+ */
41
+ assertNotUpdating(): void;
42
+ /**
43
+ * Start the Stack update lifecycle.
44
+ *
45
+ * The returned promise only covers sequencing and scheduling, as deployment
46
+ * and deletion do. The Resource work continues in the background, so callers
47
+ * that need the final state should use waitForComplete().
48
+ *
49
+ * An update that fails leaves the Stack in UPDATE_FAILED with the reason on
50
+ * it. Sim CloudFormation does not roll the Stack back to the template it was
51
+ * deployed from, so the Stack is left holding whatever the update managed.
52
+ */
53
+ update(runUpdate: () => Promise<void>): Promise<void>;
54
+ /**
55
+ * Wait for the scheduled update to finish.
56
+ *
57
+ * If the update failed, this rethrows the captured error, so a caller can see
58
+ * what stopped the new template being applied. A Stack that was never updated
59
+ * has nothing to wait for.
60
+ */
61
+ waitForComplete(): Promise<void>;
62
+ }
63
+ export {};
64
+ //# sourceMappingURL=sim-cfn-stack-update-lifecycle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-stack-update-lifecycle.d.ts","sourceRoot":"","sources":["../../../../../src/service/cloudformation/stack/update/sim-cfn-stack-update-lifecycle.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAErF,OAAO,KAAK,EACV,0BAA0B,EAC1B,4BAA4B,EAC7B,MAAM,qBAAqB,CAAC;AAG7B,UAAU,oCAAoC;IAC5C,QAAQ,CAAC,UAAU,EAAE,mBAAmB,CAAC;IACzC,QAAQ,CAAC,SAAS,EAAE,0BAA0B,CAAC;CAChD;AAED;;;;;;;;;;;GAWG;AACH,qBAAa,0BAA0B;;IACrC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAsB;IACjD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA6B;IAGvD,OAAO,CAAC,eAAe,CAA4B;IACnD,OAAO,CAAC,WAAW,CAAoB;IAEvC,YAAY,UAAU,EAAE,oCAAoC,EAG3D;IAED;;;OAGG;IACH,IAAW,MAAM,IAAI,4BAA4B,GAAG,SAAS,CAE5D;IAED;;OAEG;IACH,IAAW,KAAK,IAAI,KAAK,GAAG,SAAS,CAEpC;IAED;;;;;OAKG;IACH,iBAAiB,IAAI,IAAI,CAMxB;IAED;;;;;;;;;;OAUG;IACU,MAAM,CAAC,SAAS,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAqBjE;IAED;;;;;;OAMG;IACU,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAQ5C;CACF"}
@@ -0,0 +1,95 @@
1
+ import { SimCloudFormationValidationError } from "../../error/sim-cloudformation.error.js";
2
+ import { SimCfnStackOperationScheduler } from "../sim-cfn-stack-operation-scheduler.js";
3
+ /**
4
+ * Owns the simulated CloudFormation Stack update lifecycle state.
5
+ *
6
+ * The third of the Stack operation lifecycles, alongside
7
+ * SimCfnStackDeploymentLifecycle and SimCfnStackDeletionLifecycle, and separate
8
+ * from both for the same reason they are separate from each other: a Stack that
9
+ * was never updated has no update status at all, and its deployment status is
10
+ * still the thing to report.
11
+ *
12
+ * The work itself is passed in per update, because each one applies a different
13
+ * template. This class only says what the Stack is doing and what went wrong.
14
+ */
15
+ export class SimCfnStackUpdateLifecycle {
16
+ background;
17
+ stackName;
18
+ #status;
19
+ completePromise;
20
+ updateError;
21
+ constructor(properties) {
22
+ this.background = properties.background;
23
+ this.stackName = properties.stackName;
24
+ }
25
+ /**
26
+ * The current Stack update status, or undefined if the Stack has never been
27
+ * updated.
28
+ */
29
+ get status() {
30
+ return this.#status;
31
+ }
32
+ /**
33
+ * The error captured during a background update, if any.
34
+ */
35
+ get error() {
36
+ return this.updateError;
37
+ }
38
+ /**
39
+ * Refuse an update while one is already running.
40
+ *
41
+ * CloudFormation takes one update at a time, and a second here would read
42
+ * the difference to apply from a Stack half way through the first.
43
+ */
44
+ assertNotUpdating() {
45
+ if (this.#status === "UPDATE_IN_PROGRESS") {
46
+ throw new SimCloudFormationValidationError(`Stack ${this.stackName} is in UPDATE_IN_PROGRESS state and can not be updated`);
47
+ }
48
+ }
49
+ /**
50
+ * Start the Stack update lifecycle.
51
+ *
52
+ * The returned promise only covers sequencing and scheduling, as deployment
53
+ * and deletion do. The Resource work continues in the background, so callers
54
+ * that need the final state should use waitForComplete().
55
+ *
56
+ * An update that fails leaves the Stack in UPDATE_FAILED with the reason on
57
+ * it. Sim CloudFormation does not roll the Stack back to the template it was
58
+ * deployed from, so the Stack is left holding whatever the update managed.
59
+ */
60
+ async update(runUpdate) {
61
+ this.#status = "UPDATE_IN_PROGRESS";
62
+ this.updateError = undefined;
63
+ const scheduler = new SimCfnStackOperationScheduler({
64
+ background: this.background,
65
+ failureMessage: "Sim CloudFormation Stack update failed",
66
+ });
67
+ await scheduler.sequence();
68
+ this.completePromise = scheduler.schedule({
69
+ operation: runUpdate,
70
+ onSuccess: () => {
71
+ this.#status = "UPDATE_COMPLETE";
72
+ },
73
+ onFailure: (error) => {
74
+ this.#status = "UPDATE_FAILED";
75
+ this.updateError = error;
76
+ },
77
+ });
78
+ }
79
+ /**
80
+ * Wait for the scheduled update to finish.
81
+ *
82
+ * If the update failed, this rethrows the captured error, so a caller can see
83
+ * what stopped the new template being applied. A Stack that was never updated
84
+ * has nothing to wait for.
85
+ */
86
+ async waitForComplete() {
87
+ if (this.completePromise !== undefined) {
88
+ await this.completePromise;
89
+ }
90
+ if (this.updateError !== undefined) {
91
+ throw this.updateError;
92
+ }
93
+ }
94
+ }
95
+ //# sourceMappingURL=sim-cfn-stack-update-lifecycle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-stack-update-lifecycle.js","sourceRoot":"","sources":["../../../../../src/service/cloudformation/stack/update/sim-cfn-stack-update-lifecycle.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gCAAgC,EAAE,MAAM,yCAAyC,CAAC;AAK3F,OAAO,EAAE,6BAA6B,EAAE,MAAM,yCAAyC,CAAC;AAOxF;;;;;;;;;;;GAWG;AACH,MAAM,OAAO,0BAA0B;IACpB,UAAU,CAAsB;IAChC,SAAS,CAA6B;IACvD,OAAO,CAA2C;IAE1C,eAAe,CAA4B;IAC3C,WAAW,CAAoB;IAEvC,YAAY,UAAgD;QAC1D,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;QACxC,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;IACxC,CAAC;IAED;;;OAGG;IACH,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,IAAW,KAAK;QACd,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED;;;;;OAKG;IACH,iBAAiB;QACf,IAAI,IAAI,CAAC,OAAO,KAAK,oBAAoB,EAAE,CAAC;YAC1C,MAAM,IAAI,gCAAgC,CACxC,SAAS,IAAI,CAAC,SAAS,wDAAwD,CAChF,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;;;;;;OAUG;IACI,KAAK,CAAC,MAAM,CAAC,SAA8B;QAChD,IAAI,CAAC,OAAO,GAAG,oBAAoB,CAAC;QACpC,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;QAE7B,MAAM,SAAS,GAAG,IAAI,6BAA6B,CAAC;YAClD,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,cAAc,EAAE,wCAAwC;SACzD,CAAC,CAAC;QAEH,MAAM,SAAS,CAAC,QAAQ,EAAE,CAAC;QAE3B,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC,QAAQ,CAAC;YACxC,SAAS,EAAE,SAAS;YACpB,SAAS,EAAE,GAAG,EAAE;gBACd,IAAI,CAAC,OAAO,GAAG,iBAAiB,CAAC;YACnC,CAAC;YACD,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE;gBACnB,IAAI,CAAC,OAAO,GAAG,eAAe,CAAC;gBAC/B,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;YAC3B,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,eAAe;QAC1B,IAAI,IAAI,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;YACvC,MAAM,IAAI,CAAC,eAAe,CAAC;QAC7B,CAAC;QAED,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACnC,MAAM,IAAI,CAAC,WAAW,CAAC;QACzB,CAAC;IACH,CAAC;CACF"}
@@ -0,0 +1,50 @@
1
+ import type { SimCfnResource } from "../../resource/sim-cfn-resource.js";
2
+ interface SimCfnStackUpdatePlanProperties {
3
+ readonly current: ReadonlyMap<string, SimCfnResource>;
4
+ readonly updated: ReadonlyMap<string, SimCfnResource>;
5
+ }
6
+ /**
7
+ * What an update has to do to a Stack's Resources, worked out before any of it
8
+ * happens.
9
+ *
10
+ * The plan compares the Resources the Stack has with the ones its new template
11
+ * describes, and says which to delete, which to create, and what the Stack
12
+ * holds afterwards. A Resource the template still describes unchanged is left
13
+ * alone, keeping whatever it holds in simulated AWS.
14
+ *
15
+ * It does not delete or create anything, order the work, or decide what counts
16
+ * as a changed Resource. SimCfnStackUpdater runs the plan, and
17
+ * simCfnStackReplacedLogicalIds decides what changed.
18
+ */
19
+ export declare class SimCfnStackUpdatePlan {
20
+ /**
21
+ * The deployed Resources to delete: the ones the new template drops, and the
22
+ * deployed halves of the ones it replaces.
23
+ */
24
+ readonly deletions: readonly SimCfnResource[];
25
+ /**
26
+ * The new Resources to create: the ones the new template adds, and the new
27
+ * halves of the ones it replaces.
28
+ */
29
+ readonly creations: readonly SimCfnResource[];
30
+ private readonly updated;
31
+ constructor(properties: SimCfnStackUpdatePlanProperties);
32
+ /**
33
+ * Whether the update changes any Resource at all.
34
+ *
35
+ * A template that only changes something else, such as an Output, still
36
+ * updates the Stack, so this is not the whole no-op question.
37
+ */
38
+ get changesResources(): boolean;
39
+ /**
40
+ * Move the Stack's Resource map on to the new template.
41
+ *
42
+ * The map is changed in place rather than replaced, so anything already
43
+ * holding the Stack's Resources sees the update. A Resource the template
44
+ * leaves alone keeps the object it already had, which is what keeps its
45
+ * simulated AWS Resource and its creation status.
46
+ */
47
+ applyTo(resources: Map<string, SimCfnResource>): void;
48
+ }
49
+ export {};
50
+ //# sourceMappingURL=sim-cfn-stack-update-plan.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-stack-update-plan.d.ts","sourceRoot":"","sources":["../../../../../src/service/cloudformation/stack/update/sim-cfn-stack-update-plan.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAGzE,UAAU,+BAA+B;IACvC,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACtD,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;CACvD;AAED;;;;;;;;;;;;GAYG;AACH,qBAAa,qBAAqB;IAChC;;;OAGG;IACH,SAAgB,SAAS,EAAE,SAAS,cAAc,EAAE,CAAC;IAErD;;;OAGG;IACH,SAAgB,SAAS,EAAE,SAAS,cAAc,EAAE,CAAC;IAErD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAsC;IAE9D,YAAY,UAAU,EAAE,+BAA+B,EAwBtD;IAED;;;;;OAKG;IACH,IAAW,gBAAgB,IAAI,OAAO,CAErC;IAED;;;;;;;OAOG;IACH,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,GAAG,IAAI,CAapD;CACF"}
@@ -0,0 +1,76 @@
1
+ import { simCfnStackReplacedLogicalIds } from "./sim-cfn-stack-replaced-resources.js";
2
+ /**
3
+ * What an update has to do to a Stack's Resources, worked out before any of it
4
+ * happens.
5
+ *
6
+ * The plan compares the Resources the Stack has with the ones its new template
7
+ * describes, and says which to delete, which to create, and what the Stack
8
+ * holds afterwards. A Resource the template still describes unchanged is left
9
+ * alone, keeping whatever it holds in simulated AWS.
10
+ *
11
+ * It does not delete or create anything, order the work, or decide what counts
12
+ * as a changed Resource. SimCfnStackUpdater runs the plan, and
13
+ * simCfnStackReplacedLogicalIds decides what changed.
14
+ */
15
+ export class SimCfnStackUpdatePlan {
16
+ /**
17
+ * The deployed Resources to delete: the ones the new template drops, and the
18
+ * deployed halves of the ones it replaces.
19
+ */
20
+ deletions;
21
+ /**
22
+ * The new Resources to create: the ones the new template adds, and the new
23
+ * halves of the ones it replaces.
24
+ */
25
+ creations;
26
+ updated;
27
+ constructor(properties) {
28
+ const { current, updated } = properties;
29
+ const replaced = simCfnStackReplacedLogicalIds({ current, updated });
30
+ this.updated = updated;
31
+ // Both lists are worked out now rather than on demand, because the Stack's
32
+ // Resource map is the current one and applying the plan changes it.
33
+ this.deletions = current
34
+ .values()
35
+ .filter((resource) => {
36
+ return (!updated.has(resource.logicalId) || replaced.has(resource.logicalId));
37
+ })
38
+ .toArray();
39
+ this.creations = updated
40
+ .values()
41
+ .filter((resource) => {
42
+ return (!current.has(resource.logicalId) || replaced.has(resource.logicalId));
43
+ })
44
+ .toArray();
45
+ }
46
+ /**
47
+ * Whether the update changes any Resource at all.
48
+ *
49
+ * A template that only changes something else, such as an Output, still
50
+ * updates the Stack, so this is not the whole no-op question.
51
+ */
52
+ get changesResources() {
53
+ return this.deletions.length > 0 || this.creations.length > 0;
54
+ }
55
+ /**
56
+ * Move the Stack's Resource map on to the new template.
57
+ *
58
+ * The map is changed in place rather than replaced, so anything already
59
+ * holding the Stack's Resources sees the update. A Resource the template
60
+ * leaves alone keeps the object it already had, which is what keeps its
61
+ * simulated AWS Resource and its creation status.
62
+ */
63
+ applyTo(resources) {
64
+ const dropped = resources
65
+ .keys()
66
+ .filter((logicalId) => !this.updated.has(logicalId))
67
+ .toArray();
68
+ for (const logicalId of dropped) {
69
+ resources.delete(logicalId);
70
+ }
71
+ for (const resource of this.creations) {
72
+ resources.set(resource.logicalId, resource);
73
+ }
74
+ }
75
+ }
76
+ //# sourceMappingURL=sim-cfn-stack-update-plan.js.map