@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
@@ -1,42 +1,44 @@
1
- import { SimCfnStackResourceCreator } from "./deploy/sim-cfn-stack-resource-creator.js";
1
+ import { SimCfnStackDeletionLifecycle, } from "./teardown/sim-cfn-stack-deletion-lifecycle.js";
2
2
  import { makeSimCfnStackResourceMap } from "./resource-map/sim-cfn-stack-resource-map.js";
3
3
  import { SimCfnStackDeploymentLifecycle } from "./deploy/sim-cfn-stack-deployment-lifecycle.js";
4
- import { SimCdkAssetsPublisher } from "../cdk/assets/sim-cdk-assets-publisher.js";
4
+ import { SimCfnStackResourceOperations } from "./sim-cfn-stack-resource-operations.js";
5
+ import { SimCfnStackUpdateLifecycle } from "./update/sim-cfn-stack-update-lifecycle.js";
5
6
  import { SimCfnStackOutputResolver } from "./output/sim-cfn-stack-output-resolver.js";
7
+ import { SimCfnStackResourceReport } from "./report/sim-cfn-stack-resource-report.js";
8
+ import { SimCfnStackOperationStatus } from "./status/sim-cfn-stack-operation-status.js";
6
9
  import { validateSimCfnExecutableResourceBindings } from "../bind/validate/sim-cfn-exec-binding-validator.js";
7
10
  /**
8
11
  * Lightweight simulated CloudFormation Stack.
9
12
  *
10
13
  * This class owns the externally visible Stack lifecycle: identity, template
11
- * body, resources, deployment status, deployment error, and wait-for-completion
12
- * behavior. It delegates lower-level deployment mechanics to smaller
13
- * collaborators:
14
+ * body, resources, status, error, and wait-for-completion behavior for
15
+ * deploying, updating and deleting. It delegates the mechanics of each to
16
+ * smaller collaborators:
14
17
  *
15
18
  * - makeSimCfnStackResourceMap converts the template into runtime resources.
16
- * - SimCfnStackDeploymentScheduler controls when deployment runs in the
17
- * background.
18
- * - SimCfnStackResourceCreator creates resources in dependency order.
19
+ * - A lifecycle per Stack operation owns that operation's status and
20
+ * completion, and SimCfnStackOperationScheduler decides when each runs.
21
+ * - SimCfnStackResourceOperations creates and deletes resources against
22
+ * simulated AWS, and SimCfnStackUpdater does some of each at once against a
23
+ * changed template.
19
24
  */
20
25
  export class SimCfnStack {
21
26
  lifecycle;
27
+ updating;
28
+ deletion;
22
29
  stackName;
23
- template;
24
30
  resources;
31
+ template;
25
32
  outputs = new Map();
26
- simAws;
27
- accountRegionScope;
33
+ background;
34
+ operations;
35
+ operationStatus;
28
36
  cfnTemplate;
29
- cdkOutContext;
30
- bindings;
31
- skippedResourceList = [];
32
37
  constructor(properties) {
33
38
  const { simAws, accountRegionScope, background, stackName, template, cdkOutContext, bindings, } = properties;
34
- this.simAws = simAws;
35
- this.accountRegionScope = accountRegionScope;
39
+ this.background = background;
36
40
  this.stackName = stackName;
37
41
  this.cfnTemplate = template;
38
- this.cdkOutContext = cdkOutContext;
39
- this.bindings = bindings;
40
42
  this.template = this.cfnTemplate.template;
41
43
  this.resources = makeSimCfnStackResourceMap({
42
44
  accountRegionScope,
@@ -48,6 +50,13 @@ export class SimCfnStack {
48
50
  resources: this.resources,
49
51
  bindings,
50
52
  });
53
+ this.operations = new SimCfnStackResourceOperations({
54
+ simAws,
55
+ accountRegionScope,
56
+ stackName,
57
+ cdkOutContext,
58
+ bindings,
59
+ });
51
60
  this.lifecycle = new SimCfnStackDeploymentLifecycle({
52
61
  background,
53
62
  stackName,
@@ -55,6 +64,26 @@ export class SimCfnStack {
55
64
  await this.createResources();
56
65
  },
57
66
  });
67
+ this.updating = new SimCfnStackUpdateLifecycle({ background, stackName });
68
+ this.deletion = new SimCfnStackDeletionLifecycle({
69
+ background,
70
+ runTeardown: async () => {
71
+ await this.teardown();
72
+ },
73
+ });
74
+ this.operationStatus = new SimCfnStackOperationStatus({
75
+ deployment: this.lifecycle,
76
+ update: this.updating,
77
+ deletion: this.deletion,
78
+ });
79
+ }
80
+ /** The externally visible Stack status. */
81
+ get status() {
82
+ return this.operationStatus.status;
83
+ }
84
+ /** The error the operation the status reports failed with, if it failed. */
85
+ get error() {
86
+ return this.operationStatus.error;
58
87
  }
59
88
  /**
60
89
  * Start deploying this simulated Stack into simulated AWS.
@@ -69,63 +98,108 @@ export class SimCfnStack {
69
98
  await this.lifecycle.waitForComplete();
70
99
  }
71
100
  /**
72
- * Get a Stack Resource by logical ID.
101
+ * Apply a changed template to this deployed Stack.
102
+ *
103
+ * The Resources the new template adds are created, the ones it drops are
104
+ * deleted, and the ones whose resolved template changed are replaced.
105
+ * Everything else is left alone, holding whatever it holds in simulated AWS.
106
+ *
107
+ * An update that would do nothing, and one asked for while another is still
108
+ * running, are both refused the way CloudFormation refuses them, before the
109
+ * Stack's template moves on. The Resource work is scheduled in the
110
+ * background, as a deployment is, so callers that need the final state should
111
+ * use waitForUpdateComplete().
112
+ *
113
+ * A template that came from a synthesis of its own brings the cloud assembly
114
+ * it was written into with it, so Resources it replaces read the assets that
115
+ * synthesis staged rather than the ones the Stack was deployed with.
73
116
  */
74
- getResource(logicalId) {
75
- return this.resources.get(logicalId);
117
+ async update(template, properties = {}) {
118
+ this.updating.assertNotUpdating();
119
+ const updater = this.operations.updater({
120
+ background: this.background,
121
+ resources: this.resources,
122
+ current: this.cfnTemplate,
123
+ updated: template,
124
+ });
125
+ updater.assertHasChanges();
126
+ // Only once the update is going ahead, so a refused update leaves the Stack
127
+ // reading the cloud assembly it was deployed from.
128
+ if (properties.cdkOutContext !== undefined) {
129
+ this.operations.useCdkOutContext(properties.cdkOutContext);
130
+ }
131
+ this.cfnTemplate = template;
132
+ this.template = template.template;
133
+ await this.updating.update(async () => {
134
+ await updater.apply();
135
+ this.resolveOutputs();
136
+ });
76
137
  }
77
138
  /**
78
- * Resources that were skipped because their sim implementation is not yet
79
- * available.
139
+ * Wait for the scheduled Stack update to finish.
80
140
  */
81
- get skippedResources() {
82
- return this.skippedResourceList;
141
+ async waitForUpdateComplete() {
142
+ await this.updating.waitForComplete();
83
143
  }
84
144
  /**
85
- * Every property the deployment created a Resource without acting on.
145
+ * Start deleting this Stack from simulated AWS.
86
146
  *
87
- * Read from the Resources rather than collected during deployment, so a
88
- * Resource created outside a stack deployment still reports its own, and the
89
- * two never disagree.
147
+ * Deletion is scheduled in the background, as deployment is, so this returns
148
+ * before the Resources have gone. The optional onDeleteComplete callback runs
149
+ * once the teardown has finished successfully, which is when the Stack name
150
+ * becomes free to use again.
90
151
  */
91
- get ignoredProperties() {
92
- return this.resources
93
- .values()
94
- .flatMap((resource) => resource.ignoredProperties)
95
- .toArray();
152
+ async delete(properties = {}) {
153
+ await this.deletion.delete(properties);
154
+ }
155
+ /**
156
+ * Wait for the scheduled Stack deletion to finish.
157
+ */
158
+ async waitForDeleteComplete() {
159
+ await this.deletion.waitForComplete();
96
160
  }
97
161
  /**
98
- * Delegate resource dependency ordering and creation to the resource
99
- * creator.
162
+ * Delete this Stack's Resources from simulated AWS, in reverse dependency
163
+ * order.
100
164
  *
101
- * CDK cloud assembly assets are published into sim S3 first, as a real
102
- * `cdk deploy` publishes them before CloudFormation processes the template
103
- * that references them.
165
+ * The Resource half of deleting a Stack, without the Stack-level status or
166
+ * the Stack name release that delete() puts on top of it.
104
167
  */
168
+ async teardown() {
169
+ await this.operations.deleteAll(this.resources);
170
+ }
171
+ /** Get a Stack Resource by logical ID. */
172
+ getResource(logicalId) {
173
+ return this.resources.get(logicalId);
174
+ }
175
+ /** Resources skipped because their sim implementation is not available. */
176
+ get skippedResources() {
177
+ return this.report.skipped;
178
+ }
179
+ /** Resources a teardown recorded rather than deleted. */
180
+ get skippedResourceDeletions() {
181
+ return this.report.deletionSkipped;
182
+ }
183
+ /** Resources a teardown left in simulated AWS, as their policy says to. */
184
+ get retainedResources() {
185
+ return this.report.retained;
186
+ }
187
+ /** Every property a Resource was created without acting on. */
188
+ get ignoredProperties() {
189
+ return this.report.ignoredProperties;
190
+ }
191
+ get report() {
192
+ return new SimCfnStackResourceReport(this.resources);
193
+ }
105
194
  async createResources() {
106
- await new SimCdkAssetsPublisher({
107
- simAws: this.simAws,
108
- accountRegionScope: this.accountRegionScope,
109
- stackName: this.stackName,
110
- cdkOutContext: this.cdkOutContext,
111
- }).publish();
112
- const resourceCreator = new SimCfnStackResourceCreator({
113
- simAws: this.simAws,
114
- resources: this.resources,
115
- stackName: this.stackName,
116
- cdkOutContext: this.cdkOutContext,
117
- bindings: this.bindings,
118
- skippedResources: this.skippedResourceList,
119
- });
120
- await resourceCreator.createAll();
195
+ await this.operations.createAll(this.resources);
121
196
  this.resolveOutputs();
122
197
  }
123
198
  resolveOutputs() {
124
- const outputResolver = new SimCfnStackOutputResolver({
199
+ this.outputs = new SimCfnStackOutputResolver({
125
200
  template: this.cfnTemplate,
126
201
  resources: this.resources,
127
- });
128
- this.outputs = outputResolver.resolve();
202
+ }).resolve();
129
203
  }
130
204
  }
131
205
  //# sourceMappingURL=sim-cfn-stack.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sim-cfn-stack.js","sourceRoot":"","sources":["../../../../src/service/cloudformation/stack/sim-cfn-stack.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,0BAA0B,EAAE,MAAM,4CAA4C,CAAC;AACxF,OAAO,EAAE,0BAA0B,EAAE,MAAM,8CAA8C,CAAC;AAC1F,OAAO,EAAE,8BAA8B,EAAE,MAAM,gDAAgD,CAAC;AAEhG,OAAO,EAAE,qBAAqB,EAAE,MAAM,2CAA2C,CAAC;AAGlF,OAAO,EAAE,yBAAyB,EAAE,MAAM,2CAA2C,CAAC;AACtF,OAAO,EAAE,wCAAwC,EAAE,MAAM,oDAAoD,CAAC;AAuB9G;;;;;;;;;;;;GAYG;AACH,MAAM,OAAO,WAAW;IACN,SAAS,CAAiC;IAC1C,SAAS,CAA6B;IACtC,QAAQ,CAAwB;IAChC,SAAS,CAA8B;IAChD,OAAO,GAAG,IAAI,GAAG,EAA6B,CAAC;IAErC,MAAM,CAAS;IACf,kBAAkB,CAA2B;IAC7C,WAAW,CAAiB;IAC5B,aAAa,CAA+B;IAC5C,QAAQ,CACgC;IACxC,mBAAmB,GAAqB,EAAE,CAAC;IAE5D,YAAY,UAA4C;QACtD,MAAM,EACJ,MAAM,EACN,kBAAkB,EAClB,UAAU,EACV,SAAS,EACT,QAAQ,EACR,aAAa,EACb,QAAQ,GACT,GAAG,UAAU,CAAC;QAEf,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;QAC7C,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAC;QAC5B,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC;QAC1C,IAAI,CAAC,SAAS,GAAG,0BAA0B,CAAC;YAC1C,kBAAkB;YAClB,UAAU;YACV,QAAQ,EAAE,IAAI,CAAC,WAAW;SAC3B,CAAC,CAAC;QACH,wCAAwC,CAAC;YACvC,SAAS;YACT,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,QAAQ;SACT,CAAC,CAAC;QACH,IAAI,CAAC,SAAS,GAAG,IAAI,8BAA8B,CAAC;YAClD,UAAU;YACV,SAAS;YACT,aAAa,EAAE,KAAK,IAAmB,EAAE;gBACvC,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;YAC/B,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM;QACV,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,qBAAqB;QACzB,MAAM,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,SAAiB;QAC3B,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACvC,CAAC;IAED;;;OAGG;IACH,IAAW,gBAAgB;QACzB,OAAO,IAAI,CAAC,mBAAmB,CAAC;IAClC,CAAC;IAED;;;;;;OAMG;IACH,IAAW,iBAAiB;QAC1B,OAAO,IAAI,CAAC,SAAS;aAClB,MAAM,EAAE;aACR,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC;aACjD,OAAO,EAAE,CAAC;IACf,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,eAAe;QAC3B,MAAM,IAAI,qBAAqB,CAAC;YAC9B,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;YAC3C,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,aAAa,EAAE,IAAI,CAAC,aAAa;SAClC,CAAC,CAAC,OAAO,EAAE,CAAC;QAEb,MAAM,eAAe,GAAG,IAAI,0BAA0B,CAAC;YACrD,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,gBAAgB,EAAE,IAAI,CAAC,mBAAmB;SAC3C,CAAC,CAAC;QAEH,MAAM,eAAe,CAAC,SAAS,EAAE,CAAC;QAClC,IAAI,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC;IAEO,cAAc;QACpB,MAAM,cAAc,GAAG,IAAI,yBAAyB,CAAC;YACnD,QAAQ,EAAE,IAAI,CAAC,WAAW;YAC1B,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,GAAG,cAAc,CAAC,OAAO,EAAE,CAAC;IAC1C,CAAC;CACF"}
1
+ {"version":3,"file":"sim-cfn-stack.js","sourceRoot":"","sources":["../../../../src/service/cloudformation/stack/sim-cfn-stack.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ import type { SimCfnStackDeploymentLifecycle } from "../deploy/sim-cfn-stack-deployment-lifecycle.js";
2
+ import type { SimCfnStackDeletionLifecycle } from "../teardown/sim-cfn-stack-deletion-lifecycle.js";
3
+ import type { SimCfnStackUpdateLifecycle } from "../update/sim-cfn-stack-update-lifecycle.js";
4
+ import type { SimCloudFormationStackStatus } from "../sim-cfn-stack.js";
5
+ interface SimCfnStackOperationStatusProperties {
6
+ readonly deployment: SimCfnStackDeploymentLifecycle;
7
+ readonly update: SimCfnStackUpdateLifecycle;
8
+ readonly deletion: SimCfnStackDeletionLifecycle;
9
+ }
10
+ /**
11
+ * Which of a Stack's operations its status and error are reported from.
12
+ *
13
+ * A Stack keeps the status the last operation left it with, so the deletion
14
+ * answers first, then the update, and the deployment last: a Stack that was
15
+ * never updated or deleted has only the status its deployment gave it. This is
16
+ * the Stack-level shape of what SimCfnResource does per Resource.
17
+ *
18
+ * A deployment failure is not the reason a later update or deletion is in
19
+ * progress, so the error comes from the same operation the status does.
20
+ */
21
+ export declare class SimCfnStackOperationStatus {
22
+ private readonly properties;
23
+ constructor(properties: SimCfnStackOperationStatusProperties);
24
+ /** The externally visible Stack status. */
25
+ get status(): SimCloudFormationStackStatus;
26
+ /** The error captured by the operation the status is reporting, if any. */
27
+ get error(): Error | undefined;
28
+ }
29
+ export {};
30
+ //# sourceMappingURL=sim-cfn-stack-operation-status.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-stack-operation-status.d.ts","sourceRoot":"","sources":["../../../../../src/service/cloudformation/stack/status/sim-cfn-stack-operation-status.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,iDAAiD,CAAC;AACtG,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,iDAAiD,CAAC;AACpG,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,6CAA6C,CAAC;AAC9F,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAC;AAExE,UAAU,oCAAoC;IAC5C,QAAQ,CAAC,UAAU,EAAE,8BAA8B,CAAC;IACpD,QAAQ,CAAC,MAAM,EAAE,0BAA0B,CAAC;IAC5C,QAAQ,CAAC,QAAQ,EAAE,4BAA4B,CAAC;CACjD;AAED;;;;;;;;;;GAUG;AACH,qBAAa,0BAA0B;IACrC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAuC;IAElE,YAAY,UAAU,EAAE,oCAAoC,EAE3D;IAED,2CAA2C;IAC3C,IAAW,MAAM,IAAI,4BAA4B,CAIhD;IAED,2EAA2E;IAC3E,IAAW,KAAK,IAAI,KAAK,GAAG,SAAS,CAYpC;CACF"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Which of a Stack's operations its status and error are reported from.
3
+ *
4
+ * A Stack keeps the status the last operation left it with, so the deletion
5
+ * answers first, then the update, and the deployment last: a Stack that was
6
+ * never updated or deleted has only the status its deployment gave it. This is
7
+ * the Stack-level shape of what SimCfnResource does per Resource.
8
+ *
9
+ * A deployment failure is not the reason a later update or deletion is in
10
+ * progress, so the error comes from the same operation the status does.
11
+ */
12
+ export class SimCfnStackOperationStatus {
13
+ properties;
14
+ constructor(properties) {
15
+ this.properties = properties;
16
+ }
17
+ /** The externally visible Stack status. */
18
+ get status() {
19
+ const { deployment, update, deletion } = this.properties;
20
+ return deletion.status ?? update.status ?? deployment.status;
21
+ }
22
+ /** The error captured by the operation the status is reporting, if any. */
23
+ get error() {
24
+ const { deployment, update, deletion } = this.properties;
25
+ if (deletion.status !== undefined) {
26
+ return deletion.error;
27
+ }
28
+ if (update.status !== undefined) {
29
+ return update.error;
30
+ }
31
+ return deployment.error;
32
+ }
33
+ }
34
+ //# sourceMappingURL=sim-cfn-stack-operation-status.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-stack-operation-status.js","sourceRoot":"","sources":["../../../../../src/service/cloudformation/stack/status/sim-cfn-stack-operation-status.ts"],"names":[],"mappings":"AAWA;;;;;;;;;;GAUG;AACH,MAAM,OAAO,0BAA0B;IACpB,UAAU,CAAuC;IAElE,YAAY,UAAgD;QAC1D,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED,2CAA2C;IAC3C,IAAW,MAAM;QACf,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC;QAEzD,OAAO,QAAQ,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,IAAI,UAAU,CAAC,MAAM,CAAC;IAC/D,CAAC;IAED,2EAA2E;IAC3E,IAAW,KAAK;QACd,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC;QAEzD,IAAI,QAAQ,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAClC,OAAO,QAAQ,CAAC,KAAK,CAAC;QACxB,CAAC;QAED,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAChC,OAAO,MAAM,CAAC,KAAK,CAAC;QACtB,CAAC;QAED,OAAO,UAAU,CAAC,KAAK,CAAC;IAC1B,CAAC;CACF"}
@@ -0,0 +1,74 @@
1
+ import type { BackgroundScheduler } from "../../../../util/background/background.js";
2
+ import type { SimCloudFormationStackStatus } from "../sim-cfn-stack.js";
3
+ interface SimCfnStackDeletionLifecycleProperties {
4
+ readonly background: BackgroundScheduler;
5
+ /**
6
+ * Actual Stack Resource teardown work supplied by SimCfnStack.
7
+ *
8
+ * The lifecycle stores this callback for the same reason the deployment
9
+ * lifecycle stores its own: reverse-dependency-ordered Resource deletion
10
+ * stays outside this class, while status, error and completion handling stay
11
+ * inside it.
12
+ */
13
+ readonly runTeardown: () => Promise<void>;
14
+ }
15
+ export interface SimCfnStackDeleteProperties {
16
+ /**
17
+ * Called once the Stack has finished deleting successfully.
18
+ *
19
+ * Releasing the Stack name belongs to whoever holds the Stack map, so the
20
+ * lifecycle only says when the name is free rather than freeing it.
21
+ */
22
+ readonly onDeleteComplete?: (() => void) | undefined;
23
+ }
24
+ /**
25
+ * Owns the simulated CloudFormation Stack deletion lifecycle state.
26
+ *
27
+ * The mirror image of SimCfnStackDeploymentLifecycle, and separate from it for
28
+ * the same reason SimCfnResourceDeletionState is separate from
29
+ * SimCfnResourceCreationState: the two answer different questions, and a Stack
30
+ * that was never asked to delete has no deletion status at all.
31
+ *
32
+ * It does not delete Resources, order them, or decide what a service has to do
33
+ * to remove one.
34
+ */
35
+ export declare class SimCfnStackDeletionLifecycle {
36
+ #private;
37
+ private readonly background;
38
+ private readonly runTeardown;
39
+ private completePromise;
40
+ private teardownError;
41
+ constructor(properties: SimCfnStackDeletionLifecycleProperties);
42
+ /**
43
+ * The current Stack deletion status, or undefined if deletion has not
44
+ * started.
45
+ */
46
+ get status(): SimCloudFormationStackStatus | undefined;
47
+ /**
48
+ * The error captured during background deletion, if any.
49
+ */
50
+ get error(): Error | undefined;
51
+ /**
52
+ * Start the Stack deletion lifecycle.
53
+ *
54
+ * The returned promise only covers sequencing and scheduling. Resource
55
+ * teardown continues in the background, as deployment does, so callers that
56
+ * need the final state should use waitForComplete().
57
+ *
58
+ * Asking again for a Stack that is already deleting or already deleted does
59
+ * nothing, which is how CloudFormation treats a repeated DeleteStack. A Stack
60
+ * left in DELETE_FAILED can be asked again, because the reason the teardown
61
+ * failed may have been dealt with since.
62
+ */
63
+ delete(properties?: SimCfnStackDeleteProperties): Promise<void>;
64
+ /**
65
+ * Wait for the scheduled teardown to finish.
66
+ *
67
+ * If the teardown failed, this rethrows the captured error, so a caller can
68
+ * see what stopped the Stack going away. A Stack that was never asked to
69
+ * delete has nothing to wait for.
70
+ */
71
+ waitForComplete(): Promise<void>;
72
+ }
73
+ export {};
74
+ //# sourceMappingURL=sim-cfn-stack-deletion-lifecycle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-stack-deletion-lifecycle.d.ts","sourceRoot":"","sources":["../../../../../src/service/cloudformation/stack/teardown/sim-cfn-stack-deletion-lifecycle.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AACrF,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAC;AAGxE,UAAU,sCAAsC;IAC9C,QAAQ,CAAC,UAAU,EAAE,mBAAmB,CAAC;IAEzC;;;;;;;OAOG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3C;AAED,MAAM,WAAW,2BAA2B;IAC1C;;;;;OAKG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAC;CACtD;AAED;;;;;;;;;;GAUG;AACH,qBAAa,4BAA4B;;IACvC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAsB;IACjD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAsB;IAGlD,OAAO,CAAC,eAAe,CAA4B;IACnD,OAAO,CAAC,aAAa,CAAoB;IAEzC,YAAY,UAAU,EAAE,sCAAsC,EAG7D;IAED;;;OAGG;IACH,IAAW,MAAM,IAAI,4BAA4B,GAAG,SAAS,CAE5D;IAED;;OAEG;IACH,IAAW,KAAK,IAAI,KAAK,GAAG,SAAS,CAEpC;IAED;;;;;;;;;;;OAWG;IACU,MAAM,CACjB,UAAU,GAAE,2BAAgC,GAC3C,OAAO,CAAC,IAAI,CAAC,CA6Bf;IAED;;;;;;OAMG;IACU,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAQ5C;CACF"}
@@ -0,0 +1,88 @@
1
+ import { SimCfnStackOperationScheduler } from "../sim-cfn-stack-operation-scheduler.js";
2
+ /**
3
+ * Owns the simulated CloudFormation Stack deletion lifecycle state.
4
+ *
5
+ * The mirror image of SimCfnStackDeploymentLifecycle, and separate from it for
6
+ * the same reason SimCfnResourceDeletionState is separate from
7
+ * SimCfnResourceCreationState: the two answer different questions, and a Stack
8
+ * that was never asked to delete has no deletion status at all.
9
+ *
10
+ * It does not delete Resources, order them, or decide what a service has to do
11
+ * to remove one.
12
+ */
13
+ export class SimCfnStackDeletionLifecycle {
14
+ background;
15
+ runTeardown;
16
+ #status;
17
+ completePromise;
18
+ teardownError;
19
+ constructor(properties) {
20
+ this.background = properties.background;
21
+ this.runTeardown = properties.runTeardown;
22
+ }
23
+ /**
24
+ * The current Stack deletion status, or undefined if deletion has not
25
+ * started.
26
+ */
27
+ get status() {
28
+ return this.#status;
29
+ }
30
+ /**
31
+ * The error captured during background deletion, if any.
32
+ */
33
+ get error() {
34
+ return this.teardownError;
35
+ }
36
+ /**
37
+ * Start the Stack deletion lifecycle.
38
+ *
39
+ * The returned promise only covers sequencing and scheduling. Resource
40
+ * teardown continues in the background, as deployment does, so callers that
41
+ * need the final state should use waitForComplete().
42
+ *
43
+ * Asking again for a Stack that is already deleting or already deleted does
44
+ * nothing, which is how CloudFormation treats a repeated DeleteStack. A Stack
45
+ * left in DELETE_FAILED can be asked again, because the reason the teardown
46
+ * failed may have been dealt with since.
47
+ */
48
+ async delete(properties = {}) {
49
+ if (this.#status === "DELETE_IN_PROGRESS" ||
50
+ this.#status === "DELETE_COMPLETE") {
51
+ return;
52
+ }
53
+ this.#status = "DELETE_IN_PROGRESS";
54
+ this.teardownError = undefined;
55
+ const scheduler = new SimCfnStackOperationScheduler({
56
+ background: this.background,
57
+ failureMessage: "Sim CloudFormation Stack delete failed",
58
+ });
59
+ await scheduler.sequence();
60
+ this.completePromise = scheduler.schedule({
61
+ operation: this.runTeardown,
62
+ onSuccess: () => {
63
+ this.#status = "DELETE_COMPLETE";
64
+ properties.onDeleteComplete?.();
65
+ },
66
+ onFailure: (error) => {
67
+ this.#status = "DELETE_FAILED";
68
+ this.teardownError = error;
69
+ },
70
+ });
71
+ }
72
+ /**
73
+ * Wait for the scheduled teardown to finish.
74
+ *
75
+ * If the teardown failed, this rethrows the captured error, so a caller can
76
+ * see what stopped the Stack going away. A Stack that was never asked to
77
+ * delete has nothing to wait for.
78
+ */
79
+ async waitForComplete() {
80
+ if (this.completePromise !== undefined) {
81
+ await this.completePromise;
82
+ }
83
+ if (this.teardownError !== undefined) {
84
+ throw this.teardownError;
85
+ }
86
+ }
87
+ }
88
+ //# sourceMappingURL=sim-cfn-stack-deletion-lifecycle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-stack-deletion-lifecycle.js","sourceRoot":"","sources":["../../../../../src/service/cloudformation/stack/teardown/sim-cfn-stack-deletion-lifecycle.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,6BAA6B,EAAE,MAAM,yCAAyC,CAAC;AA0BxF;;;;;;;;;;GAUG;AACH,MAAM,OAAO,4BAA4B;IACtB,UAAU,CAAsB;IAChC,WAAW,CAAsB;IAClD,OAAO,CAA2C;IAE1C,eAAe,CAA4B;IAC3C,aAAa,CAAoB;IAEzC,YAAY,UAAkD;QAC5D,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;QACxC,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC;IAC5C,CAAC;IAED;;;OAGG;IACH,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,IAAW,KAAK;QACd,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED;;;;;;;;;;;OAWG;IACI,KAAK,CAAC,MAAM,CACjB,UAAU,GAAgC,EAAE;QAE5C,IACE,IAAI,CAAC,OAAO,KAAK,oBAAoB;YACrC,IAAI,CAAC,OAAO,KAAK,iBAAiB,EAClC,CAAC;YACD,OAAO;QACT,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,oBAAoB,CAAC;QACpC,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;QAE/B,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,IAAI,CAAC,WAAW;YAC3B,SAAS,EAAE,GAAG,EAAE;gBACd,IAAI,CAAC,OAAO,GAAG,iBAAiB,CAAC;gBACjC,UAAU,CAAC,gBAAgB,EAAE,EAAE,CAAC;YAClC,CAAC;YACD,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE;gBACnB,IAAI,CAAC,OAAO,GAAG,eAAe,CAAC;gBAC/B,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;YAC7B,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,aAAa,KAAK,SAAS,EAAE,CAAC;YACrC,MAAM,IAAI,CAAC,aAAa,CAAC;QAC3B,CAAC;IACH,CAAC;CACF"}
@@ -0,0 +1,41 @@
1
+ import type { SimCfnResource } from "../../resource/sim-cfn-resource.js";
2
+ /**
3
+ * Immutable view of the Resources still pending in the Stack teardown loop.
4
+ *
5
+ * The deletion counterpart of SimCfnStackPendingResources, and the place the
6
+ * dependency graph is read backwards:
7
+ *
8
+ * - expose whether any Resources are still pending
9
+ * - select pending Resources nothing left in the Stack still depends on
10
+ * - return the next pending-set view after a batch has run
11
+ *
12
+ * It does not mutate Resources, delete Resources, or report dependency
13
+ * deadlocks. SimCfnStackResourceDeleter owns the orchestration loop.
14
+ */
15
+ export declare class SimCfnStackPendingDeletions {
16
+ private readonly resources;
17
+ private readonly pendingResources;
18
+ private readonly dependents;
19
+ constructor(resources: ReadonlyMap<string, SimCfnResource>, pendingResources?: ReadonlySet<SimCfnResource>);
20
+ /**
21
+ * Whether the teardown loop still has Resources to consider.
22
+ */
23
+ get hasResources(): boolean;
24
+ /**
25
+ * Pending Resources that nothing still standing depends on.
26
+ *
27
+ * A Resource is deletable once every Resource naming it has finished
28
+ * deleting, which is the creation rule with the arrow turned round.
29
+ */
30
+ deletableResources(): SimCfnResource[];
31
+ /**
32
+ * Return the pending-set view for the next loop iteration.
33
+ *
34
+ * Resources that reached a terminal delete status are removed, whether they
35
+ * were deleted or failed to delete. Only Resources still waiting for their
36
+ * dependents remain pending, so the orchestrator can either make progress in
37
+ * a later batch or detect that no progress is possible.
38
+ */
39
+ incompleteResources(): SimCfnStackPendingDeletions;
40
+ }
41
+ //# sourceMappingURL=sim-cfn-stack-pending-deletions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-stack-pending-deletions.d.ts","sourceRoot":"","sources":["../../../../../src/service/cloudformation/stack/teardown/sim-cfn-stack-pending-deletions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAGzE;;;;;;;;;;;;GAYG;AACH,qBAAa,2BAA2B;IACtC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAsC;IAChE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA8B;IAC/D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAiD;IAE5E,YACE,SAAS,EAAE,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC,EAC9C,gBAAgB,GAAE,WAAW,CAAC,cAAc,CAA+B,EAK5E;IAED;;OAEG;IACH,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED;;;;;OAKG;IACH,kBAAkB,IAAI,cAAc,EAAE,CAMrC;IAED;;;;;;;OAOG;IACH,mBAAmB,IAAI,2BAA2B,CASjD;CACF"}
@@ -0,0 +1,56 @@
1
+ import { simCfnResourceDependents } from "../../resource/dependency/sim-cfn-resource-dependents.js";
2
+ /**
3
+ * Immutable view of the Resources still pending in the Stack teardown loop.
4
+ *
5
+ * The deletion counterpart of SimCfnStackPendingResources, and the place the
6
+ * dependency graph is read backwards:
7
+ *
8
+ * - expose whether any Resources are still pending
9
+ * - select pending Resources nothing left in the Stack still depends on
10
+ * - return the next pending-set view after a batch has run
11
+ *
12
+ * It does not mutate Resources, delete Resources, or report dependency
13
+ * deadlocks. SimCfnStackResourceDeleter owns the orchestration loop.
14
+ */
15
+ export class SimCfnStackPendingDeletions {
16
+ resources;
17
+ pendingResources;
18
+ dependents;
19
+ constructor(resources, pendingResources = new Set(resources.values())) {
20
+ this.resources = resources;
21
+ this.pendingResources = pendingResources;
22
+ this.dependents = simCfnResourceDependents(resources);
23
+ }
24
+ /**
25
+ * Whether the teardown loop still has Resources to consider.
26
+ */
27
+ get hasResources() {
28
+ return this.pendingResources.size > 0;
29
+ }
30
+ /**
31
+ * Pending Resources that nothing still standing depends on.
32
+ *
33
+ * A Resource is deletable once every Resource naming it has finished
34
+ * deleting, which is the creation rule with the arrow turned round.
35
+ */
36
+ deletableResources() {
37
+ return [...this.pendingResources].filter((resource) => {
38
+ const dependents = this.dependents.get(resource.logicalId) ?? [];
39
+ return dependents.every((dependent) => dependent.deleteComplete);
40
+ });
41
+ }
42
+ /**
43
+ * Return the pending-set view for the next loop iteration.
44
+ *
45
+ * Resources that reached a terminal delete status are removed, whether they
46
+ * were deleted or failed to delete. Only Resources still waiting for their
47
+ * dependents remain pending, so the orchestrator can either make progress in
48
+ * a later batch or detect that no progress is possible.
49
+ */
50
+ incompleteResources() {
51
+ return new SimCfnStackPendingDeletions(this.resources, new Set([...this.pendingResources].filter((resource) => {
52
+ return !resource.deleteComplete;
53
+ })));
54
+ }
55
+ }
56
+ //# sourceMappingURL=sim-cfn-stack-pending-deletions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-stack-pending-deletions.js","sourceRoot":"","sources":["../../../../../src/service/cloudformation/stack/teardown/sim-cfn-stack-pending-deletions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,wBAAwB,EAAE,MAAM,0DAA0D,CAAC;AAEpG;;;;;;;;;;;;GAYG;AACH,MAAM,OAAO,2BAA2B;IACrB,SAAS,CAAsC;IAC/C,gBAAgB,CAA8B;IAC9C,UAAU,CAAiD;IAE5E,YACE,SAA8C,EAC9C,gBAAgB,GAAgC,IAAI,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;QAE3E,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QACzC,IAAI,CAAC,UAAU,GAAG,wBAAwB,CAAC,SAAS,CAAC,CAAC;IACxD,CAAC;IAED;;OAEG;IACH,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,gBAAgB,CAAC,IAAI,GAAG,CAAC,CAAC;IACxC,CAAC;IAED;;;;;OAKG;IACH,kBAAkB;QAChB,OAAO,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE;YACpD,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;YAEjE,OAAO,UAAU,CAAC,KAAK,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QACnE,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;OAOG;IACH,mBAAmB;QACjB,OAAO,IAAI,2BAA2B,CACpC,IAAI,CAAC,SAAS,EACd,IAAI,GAAG,CACL,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE;YAC7C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC;QAClC,CAAC,CAAC,CACH,CACF,CAAC;IACJ,CAAC;CACF"}