@kensio/yulin 1.6.0 → 1.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (414) hide show
  1. package/dist/service/acm/cfn/sim-cfn-acm-resource-factory.d.ts +9 -0
  2. package/dist/service/acm/cfn/sim-cfn-acm-resource-factory.d.ts.map +1 -1
  3. package/dist/service/acm/cfn/sim-cfn-acm-resource-factory.js +20 -0
  4. package/dist/service/acm/cfn/sim-cfn-acm-resource-factory.js.map +1 -1
  5. package/dist/service/apigatewayv2/api/integration/sim-http-api-integration-store.d.ts +4 -0
  6. package/dist/service/apigatewayv2/api/integration/sim-http-api-integration-store.d.ts.map +1 -1
  7. package/dist/service/apigatewayv2/api/integration/sim-http-api-integration-store.js +6 -0
  8. package/dist/service/apigatewayv2/api/integration/sim-http-api-integration-store.js.map +1 -1
  9. package/dist/service/apigatewayv2/api/route/sim-http-api-route-store.d.ts +12 -0
  10. package/dist/service/apigatewayv2/api/route/sim-http-api-route-store.d.ts.map +1 -1
  11. package/dist/service/apigatewayv2/api/route/sim-http-api-route-store.js +17 -0
  12. package/dist/service/apigatewayv2/api/route/sim-http-api-route-store.js.map +1 -1
  13. package/dist/service/apigatewayv2/api/sim-http-api.d.ts +10 -0
  14. package/dist/service/apigatewayv2/api/sim-http-api.d.ts.map +1 -1
  15. package/dist/service/apigatewayv2/api/sim-http-api.js +19 -0
  16. package/dist/service/apigatewayv2/api/sim-http-api.js.map +1 -1
  17. package/dist/service/apigatewayv2/api/stage/sim-http-api-stage-store.d.ts +4 -0
  18. package/dist/service/apigatewayv2/api/stage/sim-http-api-stage-store.d.ts.map +1 -1
  19. package/dist/service/apigatewayv2/api/stage/sim-http-api-stage-store.js +6 -0
  20. package/dist/service/apigatewayv2/api/stage/sim-http-api-stage-store.js.map +1 -1
  21. package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-resource-deleter.d.ts +26 -0
  22. package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-resource-deleter.d.ts.map +1 -0
  23. package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-resource-deleter.js +32 -0
  24. package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-resource-deleter.js.map +1 -0
  25. package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-resource-factory.d.ts +7 -0
  26. package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-resource-factory.d.ts.map +1 -1
  27. package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-resource-factory.js +10 -0
  28. package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-resource-factory.js.map +1 -1
  29. package/dist/service/apigatewayv2/cfn/sim-cfn-http-api-part-deleter.d.ts +30 -0
  30. package/dist/service/apigatewayv2/cfn/sim-cfn-http-api-part-deleter.d.ts.map +1 -0
  31. package/dist/service/apigatewayv2/cfn/sim-cfn-http-api-part-deleter.js +72 -0
  32. package/dist/service/apigatewayv2/cfn/sim-cfn-http-api-part-deleter.js.map +1 -0
  33. package/dist/service/apigatewayv2/command/integration/integration.command.d.ts +15 -0
  34. package/dist/service/apigatewayv2/command/integration/integration.command.d.ts.map +1 -1
  35. package/dist/service/apigatewayv2/command/integration/sim-http-api-integration-commands.d.ts +9 -1
  36. package/dist/service/apigatewayv2/command/integration/sim-http-api-integration-commands.d.ts.map +1 -1
  37. package/dist/service/apigatewayv2/command/integration/sim-http-api-integration-commands.js +27 -0
  38. package/dist/service/apigatewayv2/command/integration/sim-http-api-integration-commands.js.map +1 -1
  39. package/dist/service/apigatewayv2/command/route/route.command.d.ts +15 -0
  40. package/dist/service/apigatewayv2/command/route/route.command.d.ts.map +1 -1
  41. package/dist/service/apigatewayv2/command/route/sim-http-api-route-commands.d.ts +9 -1
  42. package/dist/service/apigatewayv2/command/route/sim-http-api-route-commands.d.ts.map +1 -1
  43. package/dist/service/apigatewayv2/command/route/sim-http-api-route-commands.js +26 -0
  44. package/dist/service/apigatewayv2/command/route/sim-http-api-route-commands.js.map +1 -1
  45. package/dist/service/apigatewayv2/command/sim-api-gateway-v2-command.types.d.ts +3 -3
  46. package/dist/service/apigatewayv2/command/sim-api-gateway-v2-command.types.d.ts.map +1 -1
  47. package/dist/service/apigatewayv2/command/stage/sim-http-api-stage-commands.d.ts +9 -1
  48. package/dist/service/apigatewayv2/command/stage/sim-http-api-stage-commands.d.ts.map +1 -1
  49. package/dist/service/apigatewayv2/command/stage/sim-http-api-stage-commands.js +26 -0
  50. package/dist/service/apigatewayv2/command/stage/sim-http-api-stage-commands.js.map +1 -1
  51. package/dist/service/apigatewayv2/command/stage/stage.command.d.ts +15 -0
  52. package/dist/service/apigatewayv2/command/stage/stage.command.d.ts.map +1 -1
  53. package/dist/service/apigatewayv2/sdk/sim-api-gateway-v2-sdk-command-router.d.ts.map +1 -1
  54. package/dist/service/apigatewayv2/sdk/sim-api-gateway-v2-sdk-command-router.js +12 -0
  55. package/dist/service/apigatewayv2/sdk/sim-api-gateway-v2-sdk-command-router.js.map +1 -1
  56. package/dist/service/apigatewayv2/sim-api-gateway-v2-commands.d.ts +47 -0
  57. package/dist/service/apigatewayv2/sim-api-gateway-v2-commands.d.ts.map +1 -0
  58. package/dist/service/apigatewayv2/sim-api-gateway-v2-commands.js +61 -0
  59. package/dist/service/apigatewayv2/sim-api-gateway-v2-commands.js.map +1 -0
  60. package/dist/service/apigatewayv2/sim-api-gateway-v2.d.ts +14 -26
  61. package/dist/service/apigatewayv2/sim-api-gateway-v2.d.ts.map +1 -1
  62. package/dist/service/apigatewayv2/sim-api-gateway-v2.js +53 -80
  63. package/dist/service/apigatewayv2/sim-api-gateway-v2.js.map +1 -1
  64. package/dist/service/cloudformation/cdk/s3/bucket-deployment/sim-cdk-bucket-deployment.d.ts +9 -0
  65. package/dist/service/cloudformation/cdk/s3/bucket-deployment/sim-cdk-bucket-deployment.d.ts.map +1 -1
  66. package/dist/service/cloudformation/cdk/s3/bucket-deployment/sim-cdk-bucket-deployment.js +15 -0
  67. package/dist/service/cloudformation/cdk/s3/bucket-deployment/sim-cdk-bucket-deployment.js.map +1 -1
  68. package/dist/service/cloudformation/cdk/s3/bucket-notifications/sim-cdk-bucket-notifications-remover.d.ts +19 -0
  69. package/dist/service/cloudformation/cdk/s3/bucket-notifications/sim-cdk-bucket-notifications-remover.d.ts.map +1 -0
  70. package/dist/service/cloudformation/cdk/s3/bucket-notifications/sim-cdk-bucket-notifications-remover.js +35 -0
  71. package/dist/service/cloudformation/cdk/s3/bucket-notifications/sim-cdk-bucket-notifications-remover.js.map +1 -0
  72. package/dist/service/cloudformation/cdk/s3/bucket-notifications/sim-cdk-bucket-notifications.d.ts +9 -1
  73. package/dist/service/cloudformation/cdk/s3/bucket-notifications/sim-cdk-bucket-notifications.d.ts.map +1 -1
  74. package/dist/service/cloudformation/cdk/s3/bucket-notifications/sim-cdk-bucket-notifications.js +11 -0
  75. package/dist/service/cloudformation/cdk/s3/bucket-notifications/sim-cdk-bucket-notifications.js.map +1 -1
  76. package/dist/service/cloudformation/command/create-stack/create-stack.handler.js +1 -1
  77. package/dist/service/cloudformation/command/create-stack/create-stack.handler.js.map +1 -1
  78. package/dist/service/cloudformation/command/delete-stack/delete-stack.command.d.ts +25 -0
  79. package/dist/service/cloudformation/command/delete-stack/delete-stack.command.d.ts.map +1 -0
  80. package/dist/service/cloudformation/command/delete-stack/delete-stack.command.js +2 -0
  81. package/dist/service/cloudformation/command/delete-stack/delete-stack.command.js.map +1 -0
  82. package/dist/service/cloudformation/command/delete-stack/delete-stack.handler.d.ts +34 -0
  83. package/dist/service/cloudformation/command/delete-stack/delete-stack.handler.d.ts.map +1 -0
  84. package/dist/service/cloudformation/command/delete-stack/delete-stack.handler.js +41 -0
  85. package/dist/service/cloudformation/command/delete-stack/delete-stack.handler.js.map +1 -0
  86. package/dist/service/cloudformation/command/describe-stacks/describe-stacks.handler.d.ts.map +1 -1
  87. package/dist/service/cloudformation/command/describe-stacks/describe-stacks.handler.js +4 -11
  88. package/dist/service/cloudformation/command/describe-stacks/describe-stacks.handler.js.map +1 -1
  89. package/dist/service/cloudformation/command/describe-stacks/sim-cfn-described-stacks.d.ts +26 -0
  90. package/dist/service/cloudformation/command/describe-stacks/sim-cfn-described-stacks.d.ts.map +1 -0
  91. package/dist/service/cloudformation/command/describe-stacks/sim-cfn-described-stacks.js +37 -0
  92. package/dist/service/cloudformation/command/describe-stacks/sim-cfn-described-stacks.js.map +1 -0
  93. package/dist/service/cloudformation/command/describe-stacks/sim-cfn-stack-describer.js +2 -2
  94. package/dist/service/cloudformation/command/describe-stacks/sim-cfn-stack-describer.js.map +1 -1
  95. package/dist/service/cloudformation/command/update-stack/update-stack.command.d.ts +29 -0
  96. package/dist/service/cloudformation/command/update-stack/update-stack.command.d.ts.map +1 -0
  97. package/dist/service/cloudformation/command/update-stack/update-stack.command.js +2 -0
  98. package/dist/service/cloudformation/command/update-stack/update-stack.command.js.map +1 -0
  99. package/dist/service/cloudformation/command/update-stack/update-stack.handler.d.ts +35 -0
  100. package/dist/service/cloudformation/command/update-stack/update-stack.handler.d.ts.map +1 -0
  101. package/dist/service/cloudformation/command/update-stack/update-stack.handler.js +51 -0
  102. package/dist/service/cloudformation/command/update-stack/update-stack.handler.js.map +1 -0
  103. package/dist/service/cloudformation/error/{sim-cloudfront.error.d.ts → sim-cloudformation.error.d.ts} +11 -1
  104. package/dist/service/cloudformation/error/sim-cloudformation.error.d.ts.map +1 -0
  105. package/dist/service/cloudformation/error/{sim-cloudfront.error.js → sim-cloudformation.error.js} +13 -1
  106. package/dist/service/cloudformation/error/sim-cloudformation.error.js.map +1 -0
  107. package/dist/service/cloudformation/resource/create/sim-cfn-resource-create-operation.d.ts +0 -1
  108. package/dist/service/cloudformation/resource/create/sim-cfn-resource-create-operation.d.ts.map +1 -1
  109. package/dist/service/cloudformation/resource/create/sim-cfn-resource-create-operation.js +2 -6
  110. package/dist/service/cloudformation/resource/create/sim-cfn-resource-create-operation.js.map +1 -1
  111. package/dist/service/cloudformation/resource/delete/sim-cfn-resource-delete-operation.d.ts +37 -0
  112. package/dist/service/cloudformation/resource/delete/sim-cfn-resource-delete-operation.d.ts.map +1 -0
  113. package/dist/service/cloudformation/resource/delete/sim-cfn-resource-delete-operation.js +66 -0
  114. package/dist/service/cloudformation/resource/delete/sim-cfn-resource-delete-operation.js.map +1 -0
  115. package/dist/service/cloudformation/resource/delete/sim-cfn-resource-deleter.d.ts +37 -0
  116. package/dist/service/cloudformation/resource/delete/sim-cfn-resource-deleter.d.ts.map +1 -0
  117. package/dist/service/cloudformation/resource/delete/sim-cfn-resource-deleter.js +48 -0
  118. package/dist/service/cloudformation/resource/delete/sim-cfn-resource-deleter.js.map +1 -0
  119. package/dist/service/cloudformation/resource/dependency/sim-cfn-resource-dependents.d.ts +14 -0
  120. package/dist/service/cloudformation/resource/dependency/sim-cfn-resource-dependents.d.ts.map +1 -0
  121. package/dist/service/cloudformation/resource/dependency/sim-cfn-resource-dependents.js +27 -0
  122. package/dist/service/cloudformation/resource/dependency/sim-cfn-resource-dependents.js.map +1 -0
  123. package/dist/service/cloudformation/resource/factory/sim-cfn-cfn-resource-factory.d.ts +8 -0
  124. package/dist/service/cloudformation/resource/factory/sim-cfn-cfn-resource-factory.d.ts.map +1 -1
  125. package/dist/service/cloudformation/resource/factory/sim-cfn-cfn-resource-factory.js +13 -0
  126. package/dist/service/cloudformation/resource/factory/sim-cfn-cfn-resource-factory.js.map +1 -1
  127. package/dist/service/cloudformation/resource/factory/sim-cfn-resource-factory.type.d.ts +15 -1
  128. package/dist/service/cloudformation/resource/factory/sim-cfn-resource-factory.type.d.ts.map +1 -1
  129. package/dist/service/cloudformation/resource/resolve/property/sim-cfn-resource-property-resolver.d.ts +2 -2
  130. package/dist/service/cloudformation/resource/resolve/property/sim-cfn-resource-property-resolver.d.ts.map +1 -1
  131. package/dist/service/cloudformation/resource/resolve/property/sim-cfn-resource-property-resolver.js.map +1 -1
  132. package/dist/service/cloudformation/resource/sim-cfn-resource-record.d.ts +110 -0
  133. package/dist/service/cloudformation/resource/sim-cfn-resource-record.d.ts.map +1 -0
  134. package/dist/service/cloudformation/resource/sim-cfn-resource-record.js +145 -0
  135. package/dist/service/cloudformation/resource/sim-cfn-resource-record.js.map +1 -0
  136. package/dist/service/cloudformation/resource/sim-cfn-resource.d.ts +61 -69
  137. package/dist/service/cloudformation/resource/sim-cfn-resource.d.ts.map +1 -1
  138. package/dist/service/cloudformation/resource/sim-cfn-resource.js +91 -100
  139. package/dist/service/cloudformation/resource/sim-cfn-resource.js.map +1 -1
  140. package/dist/service/cloudformation/resource/sim-cfn-resource.type.d.ts +30 -3
  141. package/dist/service/cloudformation/resource/sim-cfn-resource.type.d.ts.map +1 -1
  142. package/dist/service/cloudformation/resource/state/sim-cfn-resource-deletion-state.d.ts +76 -0
  143. package/dist/service/cloudformation/resource/state/sim-cfn-resource-deletion-state.d.ts.map +1 -0
  144. package/dist/service/cloudformation/resource/state/sim-cfn-resource-deletion-state.js +113 -0
  145. package/dist/service/cloudformation/resource/state/sim-cfn-resource-deletion-state.js.map +1 -0
  146. package/dist/service/cloudformation/resource/template/sim-cfn-resource-template-reader.d.ts +4 -0
  147. package/dist/service/cloudformation/resource/template/sim-cfn-resource-template-reader.d.ts.map +1 -1
  148. package/dist/service/cloudformation/resource/template/sim-cfn-resource-template-reader.js +7 -0
  149. package/dist/service/cloudformation/resource/template/sim-cfn-resource-template-reader.js.map +1 -1
  150. package/dist/service/cloudformation/resource/unsupported/sim-cfn-unsupported-resource.d.ts +12 -0
  151. package/dist/service/cloudformation/resource/unsupported/sim-cfn-unsupported-resource.d.ts.map +1 -0
  152. package/dist/service/cloudformation/resource/unsupported/sim-cfn-unsupported-resource.js +16 -0
  153. package/dist/service/cloudformation/resource/unsupported/sim-cfn-unsupported-resource.js.map +1 -0
  154. package/dist/service/cloudformation/sdk/sim-cloudformation-sdk-command-router.d.ts.map +1 -1
  155. package/dist/service/cloudformation/sdk/sim-cloudformation-sdk-command-router.js +8 -0
  156. package/dist/service/cloudformation/sdk/sim-cloudformation-sdk-command-router.js.map +1 -1
  157. package/dist/service/cloudformation/sim-cloudformation.d.ts +21 -0
  158. package/dist/service/cloudformation/sim-cloudformation.d.ts.map +1 -1
  159. package/dist/service/cloudformation/sim-cloudformation.js +42 -0
  160. package/dist/service/cloudformation/sim-cloudformation.js.map +1 -1
  161. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-deployment-lifecycle.d.ts +1 -1
  162. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-deployment-lifecycle.js +4 -4
  163. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-deployment-lifecycle.js.map +1 -1
  164. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-batch-creator.d.ts +1 -5
  165. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-batch-creator.d.ts.map +1 -1
  166. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-batch-creator.js +2 -9
  167. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-batch-creator.js.map +1 -1
  168. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-creator.d.ts +13 -2
  169. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-creator.d.ts.map +1 -1
  170. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-creator.js +17 -4
  171. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-creator.js.map +1 -1
  172. package/dist/service/cloudformation/stack/report/sim-cfn-stack-resource-report.d.ts +36 -0
  173. package/dist/service/cloudformation/stack/report/sim-cfn-stack-resource-report.d.ts.map +1 -0
  174. package/dist/service/cloudformation/stack/report/sim-cfn-stack-resource-report.js +49 -0
  175. package/dist/service/cloudformation/stack/report/sim-cfn-stack-resource-report.js.map +1 -0
  176. package/dist/service/cloudformation/stack/sim-cfn-stack-operation-scheduler.d.ts +47 -0
  177. package/dist/service/cloudformation/stack/sim-cfn-stack-operation-scheduler.d.ts.map +1 -0
  178. package/dist/service/cloudformation/stack/sim-cfn-stack-operation-scheduler.js +64 -0
  179. package/dist/service/cloudformation/stack/sim-cfn-stack-operation-scheduler.js.map +1 -0
  180. package/dist/service/cloudformation/stack/sim-cfn-stack-resource-operations.d.ts +69 -0
  181. package/dist/service/cloudformation/stack/sim-cfn-stack-resource-operations.d.ts.map +1 -0
  182. package/dist/service/cloudformation/stack/sim-cfn-stack-resource-operations.js +98 -0
  183. package/dist/service/cloudformation/stack/sim-cfn-stack-resource-operations.js.map +1 -0
  184. package/dist/service/cloudformation/stack/sim-cfn-stack.d.ts +62 -29
  185. package/dist/service/cloudformation/stack/sim-cfn-stack.d.ts.map +1 -1
  186. package/dist/service/cloudformation/stack/sim-cfn-stack.js +122 -57
  187. package/dist/service/cloudformation/stack/sim-cfn-stack.js.map +1 -1
  188. package/dist/service/cloudformation/stack/status/sim-cfn-stack-operation-status.d.ts +30 -0
  189. package/dist/service/cloudformation/stack/status/sim-cfn-stack-operation-status.d.ts.map +1 -0
  190. package/dist/service/cloudformation/stack/status/sim-cfn-stack-operation-status.js +34 -0
  191. package/dist/service/cloudformation/stack/status/sim-cfn-stack-operation-status.js.map +1 -0
  192. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-deletion-lifecycle.d.ts +74 -0
  193. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-deletion-lifecycle.d.ts.map +1 -0
  194. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-deletion-lifecycle.js +88 -0
  195. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-deletion-lifecycle.js.map +1 -0
  196. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-pending-deletions.d.ts +41 -0
  197. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-pending-deletions.d.ts.map +1 -0
  198. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-pending-deletions.js +56 -0
  199. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-pending-deletions.js.map +1 -0
  200. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-batch-deleter.d.ts +29 -0
  201. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-batch-deleter.d.ts.map +1 -0
  202. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-batch-deleter.js +32 -0
  203. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-batch-deleter.js.map +1 -0
  204. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-deleter.d.ts +52 -0
  205. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-deleter.d.ts.map +1 -0
  206. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-deleter.js +67 -0
  207. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-deleter.js.map +1 -0
  208. package/dist/service/cloudformation/stack/update/sim-cfn-stack-replaced-resources.d.ts +22 -0
  209. package/dist/service/cloudformation/stack/update/sim-cfn-stack-replaced-resources.d.ts.map +1 -0
  210. package/dist/service/cloudformation/stack/update/sim-cfn-stack-replaced-resources.js +52 -0
  211. package/dist/service/cloudformation/stack/update/sim-cfn-stack-replaced-resources.js.map +1 -0
  212. package/dist/service/cloudformation/stack/update/sim-cfn-stack-template-changes.d.ts +16 -0
  213. package/dist/service/cloudformation/stack/update/sim-cfn-stack-template-changes.d.ts.map +1 -0
  214. package/dist/service/cloudformation/stack/update/sim-cfn-stack-template-changes.js +32 -0
  215. package/dist/service/cloudformation/stack/update/sim-cfn-stack-template-changes.js.map +1 -0
  216. package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-lifecycle.d.ts +64 -0
  217. package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-lifecycle.d.ts.map +1 -0
  218. package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-lifecycle.js +95 -0
  219. package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-lifecycle.js.map +1 -0
  220. package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-plan.d.ts +50 -0
  221. package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-plan.d.ts.map +1 -0
  222. package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-plan.js +76 -0
  223. package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-plan.js.map +1 -0
  224. package/dist/service/cloudformation/stack/update/sim-cfn-stack-updater.d.ts +44 -0
  225. package/dist/service/cloudformation/stack/update/sim-cfn-stack-updater.d.ts.map +1 -0
  226. package/dist/service/cloudformation/stack/update/sim-cfn-stack-updater.js +57 -0
  227. package/dist/service/cloudformation/stack/update/sim-cfn-stack-updater.js.map +1 -0
  228. package/dist/service/cloudformation/stack/update/sim-cfn-template-signature.d.ts +17 -0
  229. package/dist/service/cloudformation/stack/update/sim-cfn-template-signature.d.ts.map +1 -0
  230. package/dist/service/cloudformation/stack/update/sim-cfn-template-signature.js +24 -0
  231. package/dist/service/cloudformation/stack/update/sim-cfn-template-signature.js.map +1 -0
  232. package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-deleter.d.ts +29 -0
  233. package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-deleter.d.ts.map +1 -0
  234. package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-deleter.js +42 -0
  235. package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-deleter.js.map +1 -0
  236. package/dist/service/cloudfront/cfn/sim-cfn-cloudfront-resource-factory.d.ts +8 -0
  237. package/dist/service/cloudfront/cfn/sim-cfn-cloudfront-resource-factory.d.ts.map +1 -1
  238. package/dist/service/cloudfront/cfn/sim-cfn-cloudfront-resource-factory.js +32 -0
  239. package/dist/service/cloudfront/cfn/sim-cfn-cloudfront-resource-factory.js.map +1 -1
  240. package/dist/service/cloudfront/command/create-distribution/create-distribution.command.d.ts +2 -9
  241. package/dist/service/cloudfront/command/create-distribution/create-distribution.command.d.ts.map +1 -1
  242. package/dist/service/cloudfront/command/create-distribution/create-distribution.handler.d.ts.map +1 -1
  243. package/dist/service/cloudfront/command/create-distribution/create-distribution.handler.js +5 -13
  244. package/dist/service/cloudfront/command/create-distribution/create-distribution.handler.js.map +1 -1
  245. package/dist/service/cloudfront/command/delete-distribution/delete-distribution-authorizer.d.ts +31 -0
  246. package/dist/service/cloudfront/command/delete-distribution/delete-distribution-authorizer.d.ts.map +1 -0
  247. package/dist/service/cloudfront/command/delete-distribution/delete-distribution-authorizer.js +40 -0
  248. package/dist/service/cloudfront/command/delete-distribution/delete-distribution-authorizer.js.map +1 -0
  249. package/dist/service/cloudfront/command/delete-distribution/delete-distribution.command.d.ts +27 -0
  250. package/dist/service/cloudfront/command/delete-distribution/delete-distribution.command.d.ts.map +1 -0
  251. package/dist/service/cloudfront/command/delete-distribution/delete-distribution.command.js +2 -0
  252. package/dist/service/cloudfront/command/delete-distribution/delete-distribution.command.js.map +1 -0
  253. package/dist/service/cloudfront/command/delete-distribution/delete-distribution.handler.d.ts +47 -0
  254. package/dist/service/cloudfront/command/delete-distribution/delete-distribution.handler.d.ts.map +1 -0
  255. package/dist/service/cloudfront/command/delete-distribution/delete-distribution.handler.js +53 -0
  256. package/dist/service/cloudfront/command/delete-distribution/delete-distribution.handler.js.map +1 -0
  257. package/dist/service/cloudfront/command/delete-function/delete-function-authorizer.d.ts +27 -0
  258. package/dist/service/cloudfront/command/delete-function/delete-function-authorizer.d.ts.map +1 -0
  259. package/dist/service/cloudfront/command/delete-function/delete-function-authorizer.js +36 -0
  260. package/dist/service/cloudfront/command/delete-function/delete-function-authorizer.js.map +1 -0
  261. package/dist/service/cloudfront/command/delete-function/delete-function.command.d.ts +27 -0
  262. package/dist/service/cloudfront/command/delete-function/delete-function.command.d.ts.map +1 -0
  263. package/dist/service/cloudfront/command/delete-function/delete-function.command.js +2 -0
  264. package/dist/service/cloudfront/command/delete-function/delete-function.command.js.map +1 -0
  265. package/dist/service/cloudfront/command/delete-function/delete-function.handler.d.ts +43 -0
  266. package/dist/service/cloudfront/command/delete-function/delete-function.handler.d.ts.map +1 -0
  267. package/dist/service/cloudfront/command/delete-function/delete-function.handler.js +46 -0
  268. package/dist/service/cloudfront/command/delete-function/delete-function.handler.js.map +1 -0
  269. package/dist/service/cloudfront/command/get-distribution/get-distribution.command.d.ts +2 -10
  270. package/dist/service/cloudfront/command/get-distribution/get-distribution.command.d.ts.map +1 -1
  271. package/dist/service/cloudfront/command/get-distribution/get-distribution.handler.d.ts.map +1 -1
  272. package/dist/service/cloudfront/command/get-distribution/get-distribution.handler.js +4 -11
  273. package/dist/service/cloudfront/command/get-distribution/get-distribution.handler.js.map +1 -1
  274. package/dist/service/cloudfront/command/update-distribution/update-distribution-authorizer.d.ts +27 -0
  275. package/dist/service/cloudfront/command/update-distribution/update-distribution-authorizer.d.ts.map +1 -0
  276. package/dist/service/cloudfront/command/update-distribution/update-distribution-authorizer.js +36 -0
  277. package/dist/service/cloudfront/command/update-distribution/update-distribution-authorizer.js.map +1 -0
  278. package/dist/service/cloudfront/command/update-distribution/update-distribution.command.d.ts +32 -0
  279. package/dist/service/cloudfront/command/update-distribution/update-distribution.command.d.ts.map +1 -0
  280. package/dist/service/cloudfront/command/update-distribution/update-distribution.command.js +2 -0
  281. package/dist/service/cloudfront/command/update-distribution/update-distribution.command.js.map +1 -0
  282. package/dist/service/cloudfront/command/update-distribution/update-distribution.handler.d.ts +48 -0
  283. package/dist/service/cloudfront/command/update-distribution/update-distribution.handler.d.ts.map +1 -0
  284. package/dist/service/cloudfront/command/update-distribution/update-distribution.handler.js +63 -0
  285. package/dist/service/cloudfront/command/update-distribution/update-distribution.handler.js.map +1 -0
  286. package/dist/service/cloudfront/distribution/configurator/sim-cf-distribution-configurator.factory.d.ts +16 -0
  287. package/dist/service/cloudfront/distribution/configurator/sim-cf-distribution-configurator.factory.d.ts.map +1 -0
  288. package/dist/service/cloudfront/distribution/configurator/sim-cf-distribution-configurator.factory.js +13 -0
  289. package/dist/service/cloudfront/distribution/configurator/sim-cf-distribution-configurator.factory.js.map +1 -0
  290. package/dist/service/cloudfront/distribution/sim-cf-distribution-reconfigurer.d.ts +35 -0
  291. package/dist/service/cloudfront/distribution/sim-cf-distribution-reconfigurer.d.ts.map +1 -0
  292. package/dist/service/cloudfront/distribution/sim-cf-distribution-reconfigurer.js +37 -0
  293. package/dist/service/cloudfront/distribution/sim-cf-distribution-reconfigurer.js.map +1 -0
  294. package/dist/service/cloudfront/distribution/sim-cf-distribution-view.d.ts +27 -0
  295. package/dist/service/cloudfront/distribution/sim-cf-distribution-view.d.ts.map +1 -0
  296. package/dist/service/cloudfront/distribution/sim-cf-distribution-view.js +22 -0
  297. package/dist/service/cloudfront/distribution/sim-cf-distribution-view.js.map +1 -0
  298. package/dist/service/cloudfront/distribution/sim-cf-distro-config.factory.d.ts.map +1 -1
  299. package/dist/service/cloudfront/distribution/sim-cf-distro-config.factory.js +1 -0
  300. package/dist/service/cloudfront/distribution/sim-cf-distro-config.factory.js.map +1 -1
  301. package/dist/service/cloudfront/distribution/sim-cloudfront-distribution.d.ts +27 -1
  302. package/dist/service/cloudfront/distribution/sim-cloudfront-distribution.d.ts.map +1 -1
  303. package/dist/service/cloudfront/distribution/sim-cloudfront-distribution.js +49 -2
  304. package/dist/service/cloudfront/distribution/sim-cloudfront-distribution.js.map +1 -1
  305. package/dist/service/cloudfront/error/sim-cloudfront.error.d.ts +24 -3
  306. package/dist/service/cloudfront/error/sim-cloudfront.error.d.ts.map +1 -1
  307. package/dist/service/cloudfront/error/sim-cloudfront.error.js +28 -3
  308. package/dist/service/cloudfront/error/sim-cloudfront.error.js.map +1 -1
  309. package/dist/service/cloudfront/registry/sim-cloud-front-registry.d.ts +25 -0
  310. package/dist/service/cloudfront/registry/sim-cloud-front-registry.d.ts.map +1 -1
  311. package/dist/service/cloudfront/registry/sim-cloud-front-registry.js +48 -5
  312. package/dist/service/cloudfront/registry/sim-cloud-front-registry.js.map +1 -1
  313. package/dist/service/cloudfront/sdk/sim-cloudfront-sdk-command-router.d.ts.map +1 -1
  314. package/dist/service/cloudfront/sdk/sim-cloudfront-sdk-command-router.js +12 -0
  315. package/dist/service/cloudfront/sdk/sim-cloudfront-sdk-command-router.js.map +1 -1
  316. package/dist/service/cloudfront/sim-cloudfront-commands.d.ts +87 -0
  317. package/dist/service/cloudfront/sim-cloudfront-commands.d.ts.map +1 -0
  318. package/dist/service/cloudfront/sim-cloudfront-commands.js +97 -0
  319. package/dist/service/cloudfront/sim-cloudfront-commands.js.map +1 -0
  320. package/dist/service/cloudfront/sim-cloudfront.d.ts +24 -33
  321. package/dist/service/cloudfront/sim-cloudfront.d.ts.map +1 -1
  322. package/dist/service/cloudfront/sim-cloudfront.js +33 -48
  323. package/dist/service/cloudfront/sim-cloudfront.js.map +1 -1
  324. package/dist/service/cognito/cfn/sim-cfn-cognito-resource-deleter.d.ts +24 -0
  325. package/dist/service/cognito/cfn/sim-cfn-cognito-resource-deleter.d.ts.map +1 -0
  326. package/dist/service/cognito/cfn/sim-cfn-cognito-resource-deleter.js +55 -0
  327. package/dist/service/cognito/cfn/sim-cfn-cognito-resource-deleter.js.map +1 -0
  328. package/dist/service/cognito/cfn/sim-cfn-cognito-resource-factory.d.ts +5 -0
  329. package/dist/service/cognito/cfn/sim-cfn-cognito-resource-factory.d.ts.map +1 -1
  330. package/dist/service/cognito/cfn/sim-cfn-cognito-resource-factory.js +9 -0
  331. package/dist/service/cognito/cfn/sim-cfn-cognito-resource-factory.js.map +1 -1
  332. package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-deleter.d.ts +23 -0
  333. package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-deleter.d.ts.map +1 -0
  334. package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-deleter.js +29 -0
  335. package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-deleter.js.map +1 -0
  336. package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-factory.d.ts +5 -0
  337. package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-factory.d.ts.map +1 -1
  338. package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-factory.js +11 -0
  339. package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-factory.js.map +1 -1
  340. package/dist/service/iam/cfn/role/sim-cfn-iam-role-deleter.d.ts +30 -0
  341. package/dist/service/iam/cfn/role/sim-cfn-iam-role-deleter.d.ts.map +1 -0
  342. package/dist/service/iam/cfn/role/sim-cfn-iam-role-deleter.js +41 -0
  343. package/dist/service/iam/cfn/role/sim-cfn-iam-role-deleter.js.map +1 -0
  344. package/dist/service/iam/cfn/sim-cfn-iam-resource-deleter.d.ts +29 -0
  345. package/dist/service/iam/cfn/sim-cfn-iam-resource-deleter.d.ts.map +1 -0
  346. package/dist/service/iam/cfn/sim-cfn-iam-resource-deleter.js +61 -0
  347. package/dist/service/iam/cfn/sim-cfn-iam-resource-deleter.js.map +1 -0
  348. package/dist/service/iam/cfn/sim-cfn-iam-resource-factory.d.ts +6 -0
  349. package/dist/service/iam/cfn/sim-cfn-iam-resource-factory.d.ts.map +1 -1
  350. package/dist/service/iam/cfn/sim-cfn-iam-resource-factory.js +9 -0
  351. package/dist/service/iam/cfn/sim-cfn-iam-resource-factory.js.map +1 -1
  352. package/dist/service/kms/cfn/sim-cfn-kms-resource-deleter.d.ts +23 -0
  353. package/dist/service/kms/cfn/sim-cfn-kms-resource-deleter.d.ts.map +1 -0
  354. package/dist/service/kms/cfn/sim-cfn-kms-resource-deleter.js +40 -0
  355. package/dist/service/kms/cfn/sim-cfn-kms-resource-deleter.js.map +1 -0
  356. package/dist/service/kms/cfn/sim-cfn-kms-resource-factory.d.ts +5 -0
  357. package/dist/service/kms/cfn/sim-cfn-kms-resource-factory.d.ts.map +1 -1
  358. package/dist/service/kms/cfn/sim-cfn-kms-resource-factory.js +9 -0
  359. package/dist/service/kms/cfn/sim-cfn-kms-resource-factory.js.map +1 -1
  360. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-deleter.d.ts +33 -0
  361. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-deleter.d.ts.map +1 -0
  362. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-deleter.js +80 -0
  363. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-deleter.js.map +1 -0
  364. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.d.ts +5 -0
  365. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.d.ts.map +1 -1
  366. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.js +9 -0
  367. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.js.map +1 -1
  368. package/dist/service/route53/cfn/sim-cfn-route53-resource-deleter.d.ts +30 -0
  369. package/dist/service/route53/cfn/sim-cfn-route53-resource-deleter.d.ts.map +1 -0
  370. package/dist/service/route53/cfn/sim-cfn-route53-resource-deleter.js +63 -0
  371. package/dist/service/route53/cfn/sim-cfn-route53-resource-deleter.js.map +1 -0
  372. package/dist/service/route53/cfn/sim-cfn-route53-resource-factory.d.ts +6 -0
  373. package/dist/service/route53/cfn/sim-cfn-route53-resource-factory.d.ts.map +1 -1
  374. package/dist/service/route53/cfn/sim-cfn-route53-resource-factory.js +9 -0
  375. package/dist/service/route53/cfn/sim-cfn-route53-resource-factory.js.map +1 -1
  376. package/dist/service/s3/cfn/sim-cfn-s3-resource-deleter.d.ts +32 -0
  377. package/dist/service/s3/cfn/sim-cfn-s3-resource-deleter.d.ts.map +1 -0
  378. package/dist/service/s3/cfn/sim-cfn-s3-resource-deleter.js +51 -0
  379. package/dist/service/s3/cfn/sim-cfn-s3-resource-deleter.js.map +1 -0
  380. package/dist/service/s3/cfn/sim-cfn-s3-resource-factory.d.ts +5 -0
  381. package/dist/service/s3/cfn/sim-cfn-s3-resource-factory.d.ts.map +1 -1
  382. package/dist/service/s3/cfn/sim-cfn-s3-resource-factory.js +9 -0
  383. package/dist/service/s3/cfn/sim-cfn-s3-resource-factory.js.map +1 -1
  384. package/dist/service/secretsmanager/cfn/sim-cfn-secrets-manager-resource-factory.d.ts +11 -0
  385. package/dist/service/secretsmanager/cfn/sim-cfn-secrets-manager-resource-factory.d.ts.map +1 -1
  386. package/dist/service/secretsmanager/cfn/sim-cfn-secrets-manager-resource-factory.js +22 -0
  387. package/dist/service/secretsmanager/cfn/sim-cfn-secrets-manager-resource-factory.js.map +1 -1
  388. package/dist/service/sqs/cfn/sim-cfn-sqs-resource-deleter.d.ts +32 -0
  389. package/dist/service/sqs/cfn/sim-cfn-sqs-resource-deleter.d.ts.map +1 -0
  390. package/dist/service/sqs/cfn/sim-cfn-sqs-resource-deleter.js +61 -0
  391. package/dist/service/sqs/cfn/sim-cfn-sqs-resource-deleter.js.map +1 -0
  392. package/dist/service/sqs/cfn/sim-sqs-cfn-resource-factory.d.ts +6 -0
  393. package/dist/service/sqs/cfn/sim-sqs-cfn-resource-factory.d.ts.map +1 -1
  394. package/dist/service/sqs/cfn/sim-sqs-cfn-resource-factory.js +9 -0
  395. package/dist/service/sqs/cfn/sim-sqs-cfn-resource-factory.js.map +1 -1
  396. package/dist/service/sqs/queue/sim-sqs-queue-json-attribute.d.ts +4 -0
  397. package/dist/service/sqs/queue/sim-sqs-queue-json-attribute.d.ts.map +1 -1
  398. package/dist/service/sqs/queue/sim-sqs-queue-json-attribute.js +5 -1
  399. package/dist/service/sqs/queue/sim-sqs-queue-json-attribute.js.map +1 -1
  400. package/dist/service/ssm/cfn/parameter/sim-cfn-ssm-parameter-creator.d.ts +4 -3
  401. package/dist/service/ssm/cfn/parameter/sim-cfn-ssm-parameter-creator.d.ts.map +1 -1
  402. package/dist/service/ssm/cfn/parameter/sim-cfn-ssm-parameter-creator.js +4 -3
  403. package/dist/service/ssm/cfn/parameter/sim-cfn-ssm-parameter-creator.js.map +1 -1
  404. package/dist/service/ssm/cfn/sim-cfn-ssm-resource-factory.d.ts +5 -0
  405. package/dist/service/ssm/cfn/sim-cfn-ssm-resource-factory.d.ts.map +1 -1
  406. package/dist/service/ssm/cfn/sim-cfn-ssm-resource-factory.js +14 -0
  407. package/dist/service/ssm/cfn/sim-cfn-ssm-resource-factory.js.map +1 -1
  408. package/package.json +1 -1
  409. package/dist/service/cloudformation/error/sim-cloudfront.error.d.ts.map +0 -1
  410. package/dist/service/cloudformation/error/sim-cloudfront.error.js.map +0 -1
  411. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-deployment-scheduler.d.ts +0 -47
  412. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-deployment-scheduler.d.ts.map +0 -1
  413. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-deployment-scheduler.js +0 -64
  414. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-deployment-scheduler.js.map +0 -1
@@ -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"}
@@ -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"}