@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,69 @@
1
+ import type { BackgroundScheduler } from "../../../util/background/background.js";
2
+ import type { SimAws } from "../../aws/sim-aws.js";
3
+ import type { SimAwsAccountRegionScope } from "../../aws/sim-aws-account-region-scope.js";
4
+ import type { SimCfnExecutableResourceBinding } from "../bind/sim-cfn-exec-binding.type.js";
5
+ import type { SimCdkOutContext } from "../cdk/sim-cdk-out-context.js";
6
+ import type { SimCfnResource } from "../resource/sim-cfn-resource.js";
7
+ import type { SimCfnTemplate } from "../template/sim-cfn-template.js";
8
+ import { SimCfnStackUpdater } from "./update/sim-cfn-stack-updater.js";
9
+ import type { SimCloudFormationStackName } from "./sim-cfn-stack.js";
10
+ interface SimCfnStackUpdateProperties {
11
+ readonly background: BackgroundScheduler;
12
+ readonly resources: Map<string, SimCfnResource>;
13
+ readonly current: SimCfnTemplate;
14
+ readonly updated: SimCfnTemplate;
15
+ }
16
+ interface SimCfnStackResourceOperationsProperties {
17
+ readonly simAws: SimAws;
18
+ readonly accountRegionScope: SimAwsAccountRegionScope;
19
+ readonly stackName: SimCloudFormationStackName;
20
+ readonly cdkOutContext?: SimCdkOutContext | undefined;
21
+ readonly bindings?: readonly SimCfnExecutableResourceBinding[] | undefined;
22
+ }
23
+ /**
24
+ * What a Stack can ask simulated AWS to do with its Resources.
25
+ *
26
+ * Deploying, updating and tearing down all create or delete Resources against
27
+ * the same simulated AWS, in the same Stack scope, so the scope is held here
28
+ * once rather than assembled at each of them. Creating also publishes the CDK
29
+ * cloud assembly assets first, as a real `cdk deploy` publishes them before
30
+ * CloudFormation processes the template that references them.
31
+ *
32
+ * It does not own Stack status or decide what an update changes.
33
+ * SimCfnStackResourceCreator and SimCfnStackResourceDeleter own the dependency
34
+ * ordering of the work itself.
35
+ */
36
+ export declare class SimCfnStackResourceOperations {
37
+ private readonly simAws;
38
+ private readonly accountRegionScope;
39
+ private readonly stackName;
40
+ private readonly cdkOutContext;
41
+ private readonly bindings;
42
+ constructor(properties: SimCfnStackResourceOperationsProperties);
43
+ /**
44
+ * Create every Resource in the given Stack Resource map.
45
+ */
46
+ createAll(resources: ReadonlyMap<string, SimCfnResource>): Promise<void>;
47
+ /**
48
+ * Create the given Resources, in dependency order among the whole Stack.
49
+ */
50
+ create(resources: ReadonlyMap<string, SimCfnResource>, creating: readonly SimCfnResource[]): Promise<void>;
51
+ /**
52
+ * Delete every Resource in the given Stack Resource map.
53
+ */
54
+ deleteAll(resources: ReadonlyMap<string, SimCfnResource>): Promise<void>;
55
+ /**
56
+ * Delete the given Resources, in reverse dependency order among the whole
57
+ * Stack.
58
+ */
59
+ delete(resources: ReadonlyMap<string, SimCfnResource>, deleting: readonly SimCfnResource[]): Promise<void>;
60
+ /**
61
+ * An update of this Stack from a changed template, in the same scope.
62
+ */
63
+ updater(properties: SimCfnStackUpdateProperties): SimCfnStackUpdater;
64
+ private publishAssets;
65
+ private creator;
66
+ private deleter;
67
+ }
68
+ export {};
69
+ //# sourceMappingURL=sim-cfn-stack-resource-operations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-stack-resource-operations.d.ts","sourceRoot":"","sources":["../../../../src/service/cloudformation/stack/sim-cfn-stack-resource-operations.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAC;AAClF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AAC1F,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,sCAAsC,CAAC;AAC5F,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAEtE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAGtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAErE,UAAU,2BAA2B;IACnC,QAAQ,CAAC,UAAU,EAAE,mBAAmB,CAAC;IACzC,QAAQ,CAAC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAChD,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;IACjC,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;CAClC;AAED,UAAU,uCAAuC;IAC/C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,kBAAkB,EAAE,wBAAwB,CAAC;IACtD,QAAQ,CAAC,SAAS,EAAE,0BAA0B,CAAC;IAC/C,QAAQ,CAAC,aAAa,CAAC,EAAE,gBAAgB,GAAG,SAAS,CAAC;IACtD,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,+BAA+B,EAAE,GAAG,SAAS,CAAC;CAC5E;AAED;;;;;;;;;;;;GAYG;AACH,qBAAa,6BAA6B;IACxC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAA2B;IAC9D,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA6B;IACvD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA+B;IAC7D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CACgC;IAEzD,YAAY,UAAU,EAAE,uCAAuC,EAS9D;IAED;;OAEG;IACG,SAAS,CACb,SAAS,EAAE,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC,GAC7C,OAAO,CAAC,IAAI,CAAC,CAGf;IAED;;OAEG;IACG,MAAM,CACV,SAAS,EAAE,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC,EAC9C,QAAQ,EAAE,SAAS,cAAc,EAAE,GAClC,OAAO,CAAC,IAAI,CAAC,CAGf;IAED;;OAEG;IACG,SAAS,CACb,SAAS,EAAE,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC,GAC7C,OAAO,CAAC,IAAI,CAAC,CAEf;IAED;;;OAGG;IACG,MAAM,CACV,SAAS,EAAE,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC,EAC9C,QAAQ,EAAE,SAAS,cAAc,EAAE,GAClC,OAAO,CAAC,IAAI,CAAC,CAEf;IAED;;OAEG;IACH,OAAO,CAAC,UAAU,EAAE,2BAA2B,GAAG,kBAAkB,CAWnE;YAEa,aAAa;IAS3B,OAAO,CAAC,OAAO;IAYf,OAAO,CAAC,OAAO;CAShB"}
@@ -0,0 +1,98 @@
1
+ import { SimCdkAssetsPublisher } from "../cdk/assets/sim-cdk-assets-publisher.js";
2
+ import { SimCfnStackResourceCreator } from "./deploy/sim-cfn-stack-resource-creator.js";
3
+ import { SimCfnStackResourceDeleter } from "./teardown/sim-cfn-stack-resource-deleter.js";
4
+ import { SimCfnStackUpdater } from "./update/sim-cfn-stack-updater.js";
5
+ /**
6
+ * What a Stack can ask simulated AWS to do with its Resources.
7
+ *
8
+ * Deploying, updating and tearing down all create or delete Resources against
9
+ * the same simulated AWS, in the same Stack scope, so the scope is held here
10
+ * once rather than assembled at each of them. Creating also publishes the CDK
11
+ * cloud assembly assets first, as a real `cdk deploy` publishes them before
12
+ * CloudFormation processes the template that references them.
13
+ *
14
+ * It does not own Stack status or decide what an update changes.
15
+ * SimCfnStackResourceCreator and SimCfnStackResourceDeleter own the dependency
16
+ * ordering of the work itself.
17
+ */
18
+ export class SimCfnStackResourceOperations {
19
+ simAws;
20
+ accountRegionScope;
21
+ stackName;
22
+ cdkOutContext;
23
+ bindings;
24
+ constructor(properties) {
25
+ const { simAws, accountRegionScope, stackName, cdkOutContext, bindings } = properties;
26
+ this.simAws = simAws;
27
+ this.accountRegionScope = accountRegionScope;
28
+ this.stackName = stackName;
29
+ this.cdkOutContext = cdkOutContext;
30
+ this.bindings = bindings;
31
+ }
32
+ /**
33
+ * Create every Resource in the given Stack Resource map.
34
+ */
35
+ async createAll(resources) {
36
+ await this.publishAssets();
37
+ await this.creator(resources).createAll();
38
+ }
39
+ /**
40
+ * Create the given Resources, in dependency order among the whole Stack.
41
+ */
42
+ async create(resources, creating) {
43
+ await this.publishAssets();
44
+ await this.creator(resources).create(creating);
45
+ }
46
+ /**
47
+ * Delete every Resource in the given Stack Resource map.
48
+ */
49
+ async deleteAll(resources) {
50
+ await this.deleter(resources).deleteAll();
51
+ }
52
+ /**
53
+ * Delete the given Resources, in reverse dependency order among the whole
54
+ * Stack.
55
+ */
56
+ async delete(resources, deleting) {
57
+ await this.deleter(resources).delete(deleting);
58
+ }
59
+ /**
60
+ * An update of this Stack from a changed template, in the same scope.
61
+ */
62
+ updater(properties) {
63
+ const { background, resources, current, updated } = properties;
64
+ return new SimCfnStackUpdater({
65
+ accountRegionScope: this.accountRegionScope,
66
+ operations: this,
67
+ background,
68
+ resources,
69
+ current,
70
+ updated,
71
+ });
72
+ }
73
+ async publishAssets() {
74
+ await new SimCdkAssetsPublisher({
75
+ simAws: this.simAws,
76
+ accountRegionScope: this.accountRegionScope,
77
+ stackName: this.stackName,
78
+ cdkOutContext: this.cdkOutContext,
79
+ }).publish();
80
+ }
81
+ creator(resources) {
82
+ return new SimCfnStackResourceCreator({
83
+ simAws: this.simAws,
84
+ resources,
85
+ stackName: this.stackName,
86
+ cdkOutContext: this.cdkOutContext,
87
+ bindings: this.bindings,
88
+ });
89
+ }
90
+ deleter(resources) {
91
+ return new SimCfnStackResourceDeleter({
92
+ simAws: this.simAws,
93
+ resources,
94
+ stackName: this.stackName,
95
+ });
96
+ }
97
+ }
98
+ //# sourceMappingURL=sim-cfn-stack-resource-operations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-stack-resource-operations.js","sourceRoot":"","sources":["../../../../src/service/cloudformation/stack/sim-cfn-stack-resource-operations.ts"],"names":[],"mappings":"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"}
@@ -5,12 +5,14 @@ import type { SimAwsAccountRegionScope } from "../../aws/sim-aws-account-region-
5
5
  import type { SimCfnResource } from "../resource/sim-cfn-resource.js";
6
6
  import type { SimCfnIgnoredProperty } from "../resource/ignore/sim-cfn-ignored-property.type.js";
7
7
  import type { CfnTemplateBodyRecord, SimCfnTemplate } from "../template/sim-cfn-template.js";
8
+ import { SimCfnStackDeletionLifecycle, type SimCfnStackDeleteProperties } from "./teardown/sim-cfn-stack-deletion-lifecycle.js";
8
9
  import { SimCfnStackDeploymentLifecycle } from "./deploy/sim-cfn-stack-deployment-lifecycle.js";
10
+ import { SimCfnStackUpdateLifecycle } from "./update/sim-cfn-stack-update-lifecycle.js";
9
11
  import type { SimCdkOutContext } from "../cdk/sim-cdk-out-context.js";
10
12
  import type { SimCfnExecutableResourceBinding } from "../bind/sim-cfn-exec-binding.type.js";
11
13
  import type { SimCfnStackOutput } from "./output/sim-cfn-stack-output.js";
12
14
  export type SimCloudFormationStackName = Brand<string, "SimCloudFormationStackName">;
13
- export type SimCloudFormationStackStatus = "REVIEW_IN_PROGRESS" | "CREATE_IN_PROGRESS" | "CREATE_COMPLETE" | "CREATE_FAILED";
15
+ export type SimCloudFormationStackStatus = "REVIEW_IN_PROGRESS" | "CREATE_IN_PROGRESS" | "CREATE_COMPLETE" | "CREATE_FAILED" | "UPDATE_IN_PROGRESS" | "UPDATE_COMPLETE" | "UPDATE_FAILED" | "DELETE_IN_PROGRESS" | "DELETE_COMPLETE" | "DELETE_FAILED";
14
16
  interface SimCloudFormationStackProperties {
15
17
  readonly simAws: SimAws;
16
18
  readonly accountRegionScope: SimAwsAccountRegionScope;
@@ -24,28 +26,34 @@ interface SimCloudFormationStackProperties {
24
26
  * Lightweight simulated CloudFormation Stack.
25
27
  *
26
28
  * This class owns the externally visible Stack lifecycle: identity, template
27
- * body, resources, deployment status, deployment error, and wait-for-completion
28
- * behavior. It delegates lower-level deployment mechanics to smaller
29
- * collaborators:
29
+ * body, resources, status, error, and wait-for-completion behavior for
30
+ * deploying, updating and deleting. It delegates the mechanics of each to
31
+ * smaller collaborators:
30
32
  *
31
33
  * - makeSimCfnStackResourceMap converts the template into runtime resources.
32
- * - SimCfnStackDeploymentScheduler controls when deployment runs in the
33
- * background.
34
- * - SimCfnStackResourceCreator creates resources in dependency order.
34
+ * - A lifecycle per Stack operation owns that operation's status and
35
+ * completion, and SimCfnStackOperationScheduler decides when each runs.
36
+ * - SimCfnStackResourceOperations creates and deletes resources against
37
+ * simulated AWS, and SimCfnStackUpdater does some of each at once against a
38
+ * changed template.
35
39
  */
36
40
  export declare class SimCfnStack {
37
41
  readonly lifecycle: SimCfnStackDeploymentLifecycle;
42
+ readonly updating: SimCfnStackUpdateLifecycle;
43
+ readonly deletion: SimCfnStackDeletionLifecycle;
38
44
  readonly stackName: SimCloudFormationStackName;
39
- readonly template: CfnTemplateBodyRecord;
40
45
  readonly resources: Map<string, SimCfnResource>;
46
+ template: CfnTemplateBodyRecord;
41
47
  outputs: Map<string, SimCfnStackOutput>;
42
- private readonly simAws;
43
- private readonly accountRegionScope;
44
- private readonly cfnTemplate;
45
- private readonly cdkOutContext;
46
- private readonly bindings;
47
- private readonly skippedResourceList;
48
+ private readonly background;
49
+ private readonly operations;
50
+ private readonly operationStatus;
51
+ private cfnTemplate;
48
52
  constructor(properties: SimCloudFormationStackProperties);
53
+ /** The externally visible Stack status. */
54
+ get status(): SimCloudFormationStackStatus;
55
+ /** The error the operation the status reports failed with, if it failed. */
56
+ get error(): Error | undefined;
49
57
  /**
50
58
  * Start deploying this simulated Stack into simulated AWS.
51
59
  */
@@ -55,30 +63,55 @@ export declare class SimCfnStack {
55
63
  */
56
64
  waitForDeployComplete(): Promise<void>;
57
65
  /**
58
- * Get a Stack Resource by logical ID.
66
+ * Apply a changed template to this deployed Stack.
67
+ *
68
+ * The Resources the new template adds are created, the ones it drops are
69
+ * deleted, and the ones whose resolved template changed are replaced.
70
+ * Everything else is left alone, holding whatever it holds in simulated AWS.
71
+ *
72
+ * An update that would do nothing, and one asked for while another is still
73
+ * running, are both refused the way CloudFormation refuses them, before the
74
+ * Stack's template moves on. The Resource work is scheduled in the
75
+ * background, as a deployment is, so callers that need the final state should
76
+ * use waitForUpdateComplete().
59
77
  */
60
- getResource(logicalId: string): SimCfnResource | undefined;
78
+ update(template: SimCfnTemplate): Promise<void>;
61
79
  /**
62
- * Resources that were skipped because their sim implementation is not yet
63
- * available.
80
+ * Wait for the scheduled Stack update to finish.
64
81
  */
65
- get skippedResources(): readonly SimCfnResource[];
82
+ waitForUpdateComplete(): Promise<void>;
66
83
  /**
67
- * Every property the deployment created a Resource without acting on.
84
+ * Start deleting this Stack from simulated AWS.
68
85
  *
69
- * Read from the Resources rather than collected during deployment, so a
70
- * Resource created outside a stack deployment still reports its own, and the
71
- * two never disagree.
86
+ * Deletion is scheduled in the background, as deployment is, so this returns
87
+ * before the Resources have gone. The optional onDeleteComplete callback runs
88
+ * once the teardown has finished successfully, which is when the Stack name
89
+ * becomes free to use again.
72
90
  */
73
- get ignoredProperties(): readonly SimCfnIgnoredProperty[];
91
+ delete(properties?: SimCfnStackDeleteProperties): Promise<void>;
74
92
  /**
75
- * Delegate resource dependency ordering and creation to the resource
76
- * creator.
93
+ * Wait for the scheduled Stack deletion to finish.
94
+ */
95
+ waitForDeleteComplete(): Promise<void>;
96
+ /**
97
+ * Delete this Stack's Resources from simulated AWS, in reverse dependency
98
+ * order.
77
99
  *
78
- * CDK cloud assembly assets are published into sim S3 first, as a real
79
- * `cdk deploy` publishes them before CloudFormation processes the template
80
- * that references them.
100
+ * The Resource half of deleting a Stack, without the Stack-level status or
101
+ * the Stack name release that delete() puts on top of it.
81
102
  */
103
+ teardown(): Promise<void>;
104
+ /** Get a Stack Resource by logical ID. */
105
+ getResource(logicalId: string): SimCfnResource | undefined;
106
+ /** Resources skipped because their sim implementation is not available. */
107
+ get skippedResources(): readonly SimCfnResource[];
108
+ /** Resources a teardown recorded rather than deleted. */
109
+ get skippedResourceDeletions(): readonly SimCfnResource[];
110
+ /** Resources a teardown left in simulated AWS, as their policy says to. */
111
+ get retainedResources(): readonly SimCfnResource[];
112
+ /** Every property a Resource was created without acting on. */
113
+ get ignoredProperties(): readonly SimCfnIgnoredProperty[];
114
+ private get report();
82
115
  private createResources;
83
116
  private resolveOutputs;
84
117
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sim-cfn-stack.d.ts","sourceRoot":"","sources":["../../../../src/service/cloudformation/stack/sim-cfn-stack.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAC;AAClF,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AAC1F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,qDAAqD,CAAC;AACjG,OAAO,KAAK,EACV,qBAAqB,EACrB,cAAc,EACf,MAAM,iCAAiC,CAAC;AAGzC,OAAO,EAAE,8BAA8B,EAAE,MAAM,gDAAgD,CAAC;AAChG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAEtE,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,sCAAsC,CAAC;AAC5F,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAI1E,MAAM,MAAM,0BAA0B,GAAG,KAAK,CAC5C,MAAM,EACN,4BAA4B,CAC7B,CAAC;AAEF,MAAM,MAAM,4BAA4B,GACpC,oBAAoB,GACpB,oBAAoB,GACpB,iBAAiB,GACjB,eAAe,CAAC;AAEpB,UAAU,gCAAgC;IACxC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,kBAAkB,EAAE,wBAAwB,CAAC;IACtD,QAAQ,CAAC,UAAU,EAAE,mBAAmB,CAAC;IACzC,QAAQ,CAAC,SAAS,EAAE,0BAA0B,CAAC;IAC/C,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAClC,QAAQ,CAAC,aAAa,CAAC,EAAE,gBAAgB,GAAG,SAAS,CAAC;IACtD,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,+BAA+B,EAAE,GAAG,SAAS,CAAC;CAC5E;AAED;;;;;;;;;;;;GAYG;AACH,qBAAa,WAAW;IACtB,SAAgB,SAAS,EAAE,8BAA8B,CAAC;IAC1D,SAAgB,SAAS,EAAE,0BAA0B,CAAC;IACtD,SAAgB,QAAQ,EAAE,qBAAqB,CAAC;IAChD,SAAgB,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAChD,OAAO,iCAAwC;IAEtD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAA2B;IAC9D,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAiB;IAC7C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA+B;IAC7D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CACgC;IACzD,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAwB;IAE5D,YAAY,UAAU,EAAE,gCAAgC,EAmCvD;IAED;;OAEG;IACG,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAE5B;IAED;;OAEG;IACG,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC,CAE3C;IAED;;OAEG;IACH,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAEzD;IAED;;;OAGG;IACH,IAAW,gBAAgB,IAAI,SAAS,cAAc,EAAE,CAEvD;IAED;;;;;;OAMG;IACH,IAAW,iBAAiB,IAAI,SAAS,qBAAqB,EAAE,CAK/D;IAED;;;;;;;OAOG;YACW,eAAe;IAqB7B,OAAO,CAAC,cAAc;CAOvB"}
1
+ {"version":3,"file":"sim-cfn-stack.d.ts","sourceRoot":"","sources":["../../../../src/service/cloudformation/stack/sim-cfn-stack.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAC;AAClF,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AAC1F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,qDAAqD,CAAC;AACjG,OAAO,KAAK,EACV,qBAAqB,EACrB,cAAc,EACf,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,4BAA4B,EAC5B,KAAK,2BAA2B,EACjC,MAAM,gDAAgD,CAAC;AAExD,OAAO,EAAE,8BAA8B,EAAE,MAAM,gDAAgD,CAAC;AAEhG,OAAO,EAAE,0BAA0B,EAAE,MAAM,4CAA4C,CAAC;AACxF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,sCAAsC,CAAC;AAC5F,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAM1E,MAAM,MAAM,0BAA0B,GAAG,KAAK,CAC5C,MAAM,EACN,4BAA4B,CAC7B,CAAC;AAEF,MAAM,MAAM,4BAA4B,GACpC,oBAAoB,GACpB,oBAAoB,GACpB,iBAAiB,GACjB,eAAe,GACf,oBAAoB,GACpB,iBAAiB,GACjB,eAAe,GACf,oBAAoB,GACpB,iBAAiB,GACjB,eAAe,CAAC;AAEpB,UAAU,gCAAgC;IACxC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,kBAAkB,EAAE,wBAAwB,CAAC;IACtD,QAAQ,CAAC,UAAU,EAAE,mBAAmB,CAAC;IACzC,QAAQ,CAAC,SAAS,EAAE,0BAA0B,CAAC;IAC/C,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAClC,QAAQ,CAAC,aAAa,CAAC,EAAE,gBAAgB,GAAG,SAAS,CAAC;IACtD,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,+BAA+B,EAAE,GAAG,SAAS,CAAC;CAC5E;AAED;;;;;;;;;;;;;;GAcG;AACH,qBAAa,WAAW;IACtB,SAAgB,SAAS,EAAE,8BAA8B,CAAC;IAC1D,SAAgB,QAAQ,EAAE,0BAA0B,CAAC;IACrD,SAAgB,QAAQ,EAAE,4BAA4B,CAAC;IACvD,SAAgB,SAAS,EAAE,0BAA0B,CAAC;IACtD,SAAgB,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAChD,QAAQ,EAAE,qBAAqB,CAAC;IAChC,OAAO,iCAAwC;IAEtD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAsB;IACjD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAgC;IAC3D,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA6B;IAC7D,OAAO,CAAC,WAAW,CAAiB;IAEpC,YAAY,UAAU,EAAE,gCAAgC,EAmDvD;IAED,2CAA2C;IAC3C,IAAW,MAAM,IAAI,4BAA4B,CAEhD;IAED,4EAA4E;IAC5E,IAAW,KAAK,IAAI,KAAK,GAAG,SAAS,CAEpC;IAED;;OAEG;IACG,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAE5B;IAED;;OAEG;IACG,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC,CAE3C;IAED;;;;;;;;;;;;OAYG;IACG,MAAM,CAAC,QAAQ,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAmBpD;IAED;;OAEG;IACG,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC,CAE3C;IAED;;;;;;;OAOG;IACG,MAAM,CAAC,UAAU,GAAE,2BAAgC,GAAG,OAAO,CAAC,IAAI,CAAC,CAExE;IAED;;OAEG;IACG,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC,CAE3C;IAED;;;;;;OAMG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAE9B;IAED,0CAA0C;IAC1C,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAEzD;IAED,2EAA2E;IAC3E,IAAW,gBAAgB,IAAI,SAAS,cAAc,EAAE,CAEvD;IAED,yDAAyD;IACzD,IAAW,wBAAwB,IAAI,SAAS,cAAc,EAAE,CAE/D;IAED,2EAA2E;IAC3E,IAAW,iBAAiB,IAAI,SAAS,cAAc,EAAE,CAExD;IAED,+DAA+D;IAC/D,IAAW,iBAAiB,IAAI,SAAS,qBAAqB,EAAE,CAE/D;IAED,OAAO,KAAK,MAAM,GAEjB;YAEa,eAAe;IAK7B,OAAO,CAAC,cAAc;CAMvB"}
@@ -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,99 @@ 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().
73
112
  */
74
- getResource(logicalId) {
75
- return this.resources.get(logicalId);
113
+ async update(template) {
114
+ this.updating.assertNotUpdating();
115
+ const updater = this.operations.updater({
116
+ background: this.background,
117
+ resources: this.resources,
118
+ current: this.cfnTemplate,
119
+ updated: template,
120
+ });
121
+ updater.assertHasChanges();
122
+ this.cfnTemplate = template;
123
+ this.template = template.template;
124
+ await this.updating.update(async () => {
125
+ await updater.apply();
126
+ this.resolveOutputs();
127
+ });
76
128
  }
77
129
  /**
78
- * Resources that were skipped because their sim implementation is not yet
79
- * available.
130
+ * Wait for the scheduled Stack update to finish.
80
131
  */
81
- get skippedResources() {
82
- return this.skippedResourceList;
132
+ async waitForUpdateComplete() {
133
+ await this.updating.waitForComplete();
83
134
  }
84
135
  /**
85
- * Every property the deployment created a Resource without acting on.
136
+ * Start deleting this Stack from simulated AWS.
86
137
  *
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.
138
+ * Deletion is scheduled in the background, as deployment is, so this returns
139
+ * before the Resources have gone. The optional onDeleteComplete callback runs
140
+ * once the teardown has finished successfully, which is when the Stack name
141
+ * becomes free to use again.
90
142
  */
91
- get ignoredProperties() {
92
- return this.resources
93
- .values()
94
- .flatMap((resource) => resource.ignoredProperties)
95
- .toArray();
143
+ async delete(properties = {}) {
144
+ await this.deletion.delete(properties);
145
+ }
146
+ /**
147
+ * Wait for the scheduled Stack deletion to finish.
148
+ */
149
+ async waitForDeleteComplete() {
150
+ await this.deletion.waitForComplete();
96
151
  }
97
152
  /**
98
- * Delegate resource dependency ordering and creation to the resource
99
- * creator.
153
+ * Delete this Stack's Resources from simulated AWS, in reverse dependency
154
+ * order.
100
155
  *
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.
156
+ * The Resource half of deleting a Stack, without the Stack-level status or
157
+ * the Stack name release that delete() puts on top of it.
104
158
  */
159
+ async teardown() {
160
+ await this.operations.deleteAll(this.resources);
161
+ }
162
+ /** Get a Stack Resource by logical ID. */
163
+ getResource(logicalId) {
164
+ return this.resources.get(logicalId);
165
+ }
166
+ /** Resources skipped because their sim implementation is not available. */
167
+ get skippedResources() {
168
+ return this.report.skipped;
169
+ }
170
+ /** Resources a teardown recorded rather than deleted. */
171
+ get skippedResourceDeletions() {
172
+ return this.report.deletionSkipped;
173
+ }
174
+ /** Resources a teardown left in simulated AWS, as their policy says to. */
175
+ get retainedResources() {
176
+ return this.report.retained;
177
+ }
178
+ /** Every property a Resource was created without acting on. */
179
+ get ignoredProperties() {
180
+ return this.report.ignoredProperties;
181
+ }
182
+ get report() {
183
+ return new SimCfnStackResourceReport(this.resources);
184
+ }
105
185
  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();
186
+ await this.operations.createAll(this.resources);
121
187
  this.resolveOutputs();
122
188
  }
123
189
  resolveOutputs() {
124
- const outputResolver = new SimCfnStackOutputResolver({
190
+ this.outputs = new SimCfnStackOutputResolver({
125
191
  template: this.cfnTemplate,
126
192
  resources: this.resources,
127
- });
128
- this.outputs = outputResolver.resolve();
193
+ }).resolve();
129
194
  }
130
195
  }
131
196
  //# 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":"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"}
1
+ {"version":3,"file":"sim-cfn-stack.js","sourceRoot":"","sources":["../../../../src/service/cloudformation/stack/sim-cfn-stack.ts"],"names":[],"mappings":"AAUA,OAAO,EACL,4BAA4B,GAE7B,MAAM,gDAAgD,CAAC;AACxD,OAAO,EAAE,0BAA0B,EAAE,MAAM,8CAA8C,CAAC;AAC1F,OAAO,EAAE,8BAA8B,EAAE,MAAM,gDAAgD,CAAC;AAChG,OAAO,EAAE,6BAA6B,EAAE,MAAM,wCAAwC,CAAC;AACvF,OAAO,EAAE,0BAA0B,EAAE,MAAM,4CAA4C,CAAC;AAIxF,OAAO,EAAE,yBAAyB,EAAE,MAAM,2CAA2C,CAAC;AACtF,OAAO,EAAE,yBAAyB,EAAE,MAAM,2CAA2C,CAAC;AACtF,OAAO,EAAE,0BAA0B,EAAE,MAAM,4CAA4C,CAAC;AACxF,OAAO,EAAE,wCAAwC,EAAE,MAAM,oDAAoD,CAAC;AA6B9G;;;;;;;;;;;;;;GAcG;AACH,MAAM,OAAO,WAAW;IACN,SAAS,CAAiC;IAC1C,QAAQ,CAA6B;IACrC,QAAQ,CAA+B;IACvC,SAAS,CAA6B;IACtC,SAAS,CAA8B;IAChD,QAAQ,CAAwB;IAChC,OAAO,GAAG,IAAI,GAAG,EAA6B,CAAC;IAErC,UAAU,CAAsB;IAChC,UAAU,CAAgC;IAC1C,eAAe,CAA6B;IACrD,WAAW,CAAiB;IAEpC,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,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAC;QAC5B,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,UAAU,GAAG,IAAI,6BAA6B,CAAC;YAClD,MAAM;YACN,kBAAkB;YAClB,SAAS;YACT,aAAa;YACb,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;QACH,IAAI,CAAC,QAAQ,GAAG,IAAI,0BAA0B,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC,CAAC;QAC1E,IAAI,CAAC,QAAQ,GAAG,IAAI,4BAA4B,CAAC;YAC/C,UAAU;YACV,WAAW,EAAE,KAAK,IAAmB,EAAE;gBACrC,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;YACxB,CAAC;SACF,CAAC,CAAC;QACH,IAAI,CAAC,eAAe,GAAG,IAAI,0BAA0B,CAAC;YACpD,UAAU,EAAE,IAAI,CAAC,SAAS;YAC1B,MAAM,EAAE,IAAI,CAAC,QAAQ;YACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;SACxB,CAAC,CAAC;IACL,CAAC;IAED,2CAA2C;IAC3C,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC;IACrC,CAAC;IAED,4EAA4E;IAC5E,IAAW,KAAK;QACd,OAAO,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC;IACpC,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;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,MAAM,CAAC,QAAwB;QACnC,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE,CAAC;QAElC,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;YACtC,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,OAAO,EAAE,IAAI,CAAC,WAAW;YACzB,OAAO,EAAE,QAAQ;SAClB,CAAC,CAAC;QAEH,OAAO,CAAC,gBAAgB,EAAE,CAAC;QAE3B,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAC;QAC5B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;QAElC,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,IAAmB,EAAE;YACnD,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;YACtB,IAAI,CAAC,cAAc,EAAE,CAAC;QACxB,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,qBAAqB;QACzB,MAAM,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC;IACxC,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,MAAM,CAAC,UAAU,GAAgC,EAAE;QACvD,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,qBAAqB;QACzB,MAAM,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC;IACxC,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,QAAQ;QACZ,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAClD,CAAC;IAED,0CAA0C;IAC1C,WAAW,CAAC,SAAiB;QAC3B,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACvC,CAAC;IAED,2EAA2E;IAC3E,IAAW,gBAAgB;QACzB,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;IAC7B,CAAC;IAED,yDAAyD;IACzD,IAAW,wBAAwB;QACjC,OAAO,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC;IACrC,CAAC;IAED,2EAA2E;IAC3E,IAAW,iBAAiB;QAC1B,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;IAC9B,CAAC;IAED,+DAA+D;IAC/D,IAAW,iBAAiB;QAC1B,OAAO,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC;IACvC,CAAC;IAED,IAAY,MAAM;QAChB,OAAO,IAAI,yBAAyB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACvD,CAAC;IAEO,KAAK,CAAC,eAAe;QAC3B,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAChD,IAAI,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC;IAEO,cAAc;QACpB,IAAI,CAAC,OAAO,GAAG,IAAI,yBAAyB,CAAC;YAC3C,QAAQ,EAAE,IAAI,CAAC,WAAW;YAC1B,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC,CAAC,OAAO,EAAE,CAAC;IACf,CAAC;CACF"}
@@ -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"}