@kensio/yulin 1.6.0 → 1.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (601) hide show
  1. package/README.md +72 -0
  2. package/dist/cli/sim-cli.d.ts +20 -0
  3. package/dist/cli/sim-cli.d.ts.map +1 -0
  4. package/dist/cli/sim-cli.js +42 -0
  5. package/dist/cli/sim-cli.js.map +1 -0
  6. package/dist/cli/watch/sim-watch-arguments.d.ts +30 -0
  7. package/dist/cli/watch/sim-watch-arguments.d.ts.map +1 -0
  8. package/dist/cli/watch/sim-watch-arguments.js +67 -0
  9. package/dist/cli/watch/sim-watch-arguments.js.map +1 -0
  10. package/dist/cli/watch/sim-watch-child-environment.d.ts +30 -0
  11. package/dist/cli/watch/sim-watch-child-environment.d.ts.map +1 -0
  12. package/dist/cli/watch/sim-watch-child-environment.js +51 -0
  13. package/dist/cli/watch/sim-watch-child-environment.js.map +1 -0
  14. package/dist/cli/watch/sim-watch-child-message.d.ts +19 -0
  15. package/dist/cli/watch/sim-watch-child-message.d.ts.map +1 -0
  16. package/dist/cli/watch/sim-watch-child-message.js +42 -0
  17. package/dist/cli/watch/sim-watch-child-message.js.map +1 -0
  18. package/dist/cli/watch/sim-watch-child-process.d.ts +22 -0
  19. package/dist/cli/watch/sim-watch-child-process.d.ts.map +1 -0
  20. package/dist/cli/watch/sim-watch-child-process.js +33 -0
  21. package/dist/cli/watch/sim-watch-child-process.js.map +1 -0
  22. package/dist/cli/watch/sim-watch-child-shutdown.d.ts +28 -0
  23. package/dist/cli/watch/sim-watch-child-shutdown.d.ts.map +1 -0
  24. package/dist/cli/watch/sim-watch-child-shutdown.js +59 -0
  25. package/dist/cli/watch/sim-watch-child-shutdown.js.map +1 -0
  26. package/dist/cli/watch/sim-watch-child.d.ts +42 -0
  27. package/dist/cli/watch/sim-watch-child.d.ts.map +1 -0
  28. package/dist/cli/watch/sim-watch-child.js +62 -0
  29. package/dist/cli/watch/sim-watch-child.js.map +1 -0
  30. package/dist/cli/watch/sim-watch-command.d.ts +22 -0
  31. package/dist/cli/watch/sim-watch-command.d.ts.map +1 -0
  32. package/dist/cli/watch/sim-watch-command.js +41 -0
  33. package/dist/cli/watch/sim-watch-command.js.map +1 -0
  34. package/dist/cli/watch/sim-watch-event-path.d.ts +27 -0
  35. package/dist/cli/watch/sim-watch-event-path.d.ts.map +1 -0
  36. package/dist/cli/watch/sim-watch-event-path.js +48 -0
  37. package/dist/cli/watch/sim-watch-event-path.js.map +1 -0
  38. package/dist/cli/watch/sim-watch-ignore.d.ts +15 -0
  39. package/dist/cli/watch/sim-watch-ignore.d.ts.map +1 -0
  40. package/dist/cli/watch/sim-watch-ignore.js +64 -0
  41. package/dist/cli/watch/sim-watch-ignore.js.map +1 -0
  42. package/dist/cli/watch/sim-watch-loop-guard.d.ts +35 -0
  43. package/dist/cli/watch/sim-watch-loop-guard.d.ts.map +1 -0
  44. package/dist/cli/watch/sim-watch-loop-guard.js +51 -0
  45. package/dist/cli/watch/sim-watch-loop-guard.js.map +1 -0
  46. package/dist/cli/watch/sim-watch-reporter.d.ts +38 -0
  47. package/dist/cli/watch/sim-watch-reporter.d.ts.map +1 -0
  48. package/dist/cli/watch/sim-watch-reporter.js +65 -0
  49. package/dist/cli/watch/sim-watch-reporter.js.map +1 -0
  50. package/dist/cli/watch/sim-watch-restarts.d.ts +30 -0
  51. package/dist/cli/watch/sim-watch-restarts.d.ts.map +1 -0
  52. package/dist/cli/watch/sim-watch-restarts.js +62 -0
  53. package/dist/cli/watch/sim-watch-restarts.js.map +1 -0
  54. package/dist/cli/watch/sim-watch-supervisor.d.ts +52 -0
  55. package/dist/cli/watch/sim-watch-supervisor.d.ts.map +1 -0
  56. package/dist/cli/watch/sim-watch-supervisor.js +127 -0
  57. package/dist/cli/watch/sim-watch-supervisor.js.map +1 -0
  58. package/dist/cli/watch/sim-watch-watcher.d.ts +69 -0
  59. package/dist/cli/watch/sim-watch-watcher.d.ts.map +1 -0
  60. package/dist/cli/watch/sim-watch-watcher.js +144 -0
  61. package/dist/cli/watch/sim-watch-watcher.js.map +1 -0
  62. package/dist/cli/yulin.d.ts +3 -0
  63. package/dist/cli/yulin.d.ts.map +1 -0
  64. package/dist/cli/yulin.js +14 -0
  65. package/dist/cli/yulin.js.map +1 -0
  66. package/dist/serve/http/live-reload/sim-live-reload-client.d.ts +32 -0
  67. package/dist/serve/http/live-reload/sim-live-reload-client.d.ts.map +1 -0
  68. package/dist/serve/http/live-reload/sim-live-reload-client.js +55 -0
  69. package/dist/serve/http/live-reload/sim-live-reload-client.js.map +1 -0
  70. package/dist/serve/http/live-reload/sim-live-reload-injectable.d.ts +47 -0
  71. package/dist/serve/http/live-reload/sim-live-reload-injectable.d.ts.map +1 -0
  72. package/dist/serve/http/live-reload/sim-live-reload-injectable.js +86 -0
  73. package/dist/serve/http/live-reload/sim-live-reload-injectable.js.map +1 -0
  74. package/dist/serve/http/live-reload/sim-live-reload-injector.d.ts +22 -0
  75. package/dist/serve/http/live-reload/sim-live-reload-injector.d.ts.map +1 -0
  76. package/dist/serve/http/live-reload/sim-live-reload-injector.js +72 -0
  77. package/dist/serve/http/live-reload/sim-live-reload-injector.js.map +1 -0
  78. package/dist/serve/http/live-reload/sim-live-reload-report.d.ts +18 -0
  79. package/dist/serve/http/live-reload/sim-live-reload-report.d.ts.map +1 -0
  80. package/dist/serve/http/live-reload/sim-live-reload-report.js +27 -0
  81. package/dist/serve/http/live-reload/sim-live-reload-report.js.map +1 -0
  82. package/dist/serve/http/live-reload/sim-live-reload-script.d.ts +20 -0
  83. package/dist/serve/http/live-reload/sim-live-reload-script.d.ts.map +1 -0
  84. package/dist/serve/http/live-reload/sim-live-reload-script.js +45 -0
  85. package/dist/serve/http/live-reload/sim-live-reload-script.js.map +1 -0
  86. package/dist/serve/http/live-reload/sim-live-reload.config.d.ts +12 -0
  87. package/dist/serve/http/live-reload/sim-live-reload.config.d.ts.map +1 -0
  88. package/dist/serve/http/live-reload/sim-live-reload.config.js +19 -0
  89. package/dist/serve/http/live-reload/sim-live-reload.config.js.map +1 -0
  90. package/dist/serve/http/live-reload/sim-live-reload.d.ts +52 -0
  91. package/dist/serve/http/live-reload/sim-live-reload.d.ts.map +1 -0
  92. package/dist/serve/http/live-reload/sim-live-reload.js +82 -0
  93. package/dist/serve/http/live-reload/sim-live-reload.js.map +1 -0
  94. package/dist/serve/http/live-reload/sim-local-live-reload.d.ts +42 -0
  95. package/dist/serve/http/live-reload/sim-local-live-reload.d.ts.map +1 -0
  96. package/dist/serve/http/live-reload/sim-local-live-reload.js +60 -0
  97. package/dist/serve/http/live-reload/sim-local-live-reload.js.map +1 -0
  98. package/dist/serve/http/local-server/node-server-port-binder.d.ts +39 -0
  99. package/dist/serve/http/local-server/node-server-port-binder.d.ts.map +1 -0
  100. package/dist/serve/http/local-server/node-server-port-binder.js +71 -0
  101. package/dist/serve/http/local-server/node-server-port-binder.js.map +1 -0
  102. package/dist/serve/http/local-server/node-server-port.d.ts +10 -0
  103. package/dist/serve/http/local-server/node-server-port.d.ts.map +1 -0
  104. package/dist/serve/http/local-server/node-server-port.js +19 -0
  105. package/dist/serve/http/local-server/node-server-port.js.map +1 -0
  106. package/dist/serve/http/local-server/sim-aws-local-port.error.d.ts +13 -0
  107. package/dist/serve/http/local-server/sim-aws-local-port.error.d.ts.map +1 -0
  108. package/dist/serve/http/local-server/sim-aws-local-port.error.js +16 -0
  109. package/dist/serve/http/local-server/sim-aws-local-port.error.js.map +1 -0
  110. package/dist/serve/http/local-server/sim-aws-local-request-handler.d.ts +14 -1
  111. package/dist/serve/http/local-server/sim-aws-local-request-handler.d.ts.map +1 -1
  112. package/dist/serve/http/local-server/sim-aws-local-request-handler.js +20 -2
  113. package/dist/serve/http/local-server/sim-aws-local-request-handler.js.map +1 -1
  114. package/dist/serve/http/local-server/sim-aws-local-server.d.ts +23 -0
  115. package/dist/serve/http/local-server/sim-aws-local-server.d.ts.map +1 -1
  116. package/dist/serve/http/local-server/sim-aws-local-server.js +41 -16
  117. package/dist/serve/http/local-server/sim-aws-local-server.js.map +1 -1
  118. package/dist/serve/http/local-server/sim-aws-local.config.d.ts +2 -0
  119. package/dist/serve/http/local-server/sim-aws-local.config.d.ts.map +1 -1
  120. package/dist/serve/http/local-server/sim-aws-local.config.js +6 -0
  121. package/dist/serve/http/local-server/sim-aws-local.config.js.map +1 -1
  122. package/dist/serve/index.d.ts +3 -0
  123. package/dist/serve/index.d.ts.map +1 -1
  124. package/dist/serve/index.js +3 -0
  125. package/dist/serve/index.js.map +1 -1
  126. package/dist/service/acm/cfn/sim-cfn-acm-resource-factory.d.ts +9 -0
  127. package/dist/service/acm/cfn/sim-cfn-acm-resource-factory.d.ts.map +1 -1
  128. package/dist/service/acm/cfn/sim-cfn-acm-resource-factory.js +20 -0
  129. package/dist/service/acm/cfn/sim-cfn-acm-resource-factory.js.map +1 -1
  130. package/dist/service/apigatewayv2/api/integration/sim-http-api-integration-store.d.ts +4 -0
  131. package/dist/service/apigatewayv2/api/integration/sim-http-api-integration-store.d.ts.map +1 -1
  132. package/dist/service/apigatewayv2/api/integration/sim-http-api-integration-store.js +6 -0
  133. package/dist/service/apigatewayv2/api/integration/sim-http-api-integration-store.js.map +1 -1
  134. package/dist/service/apigatewayv2/api/route/sim-http-api-route-store.d.ts +12 -0
  135. package/dist/service/apigatewayv2/api/route/sim-http-api-route-store.d.ts.map +1 -1
  136. package/dist/service/apigatewayv2/api/route/sim-http-api-route-store.js +17 -0
  137. package/dist/service/apigatewayv2/api/route/sim-http-api-route-store.js.map +1 -1
  138. package/dist/service/apigatewayv2/api/sim-http-api.d.ts +10 -0
  139. package/dist/service/apigatewayv2/api/sim-http-api.d.ts.map +1 -1
  140. package/dist/service/apigatewayv2/api/sim-http-api.js +19 -0
  141. package/dist/service/apigatewayv2/api/sim-http-api.js.map +1 -1
  142. package/dist/service/apigatewayv2/api/stage/sim-http-api-stage-store.d.ts +4 -0
  143. package/dist/service/apigatewayv2/api/stage/sim-http-api-stage-store.d.ts.map +1 -1
  144. package/dist/service/apigatewayv2/api/stage/sim-http-api-stage-store.js +6 -0
  145. package/dist/service/apigatewayv2/api/stage/sim-http-api-stage-store.js.map +1 -1
  146. package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-resource-deleter.d.ts +26 -0
  147. package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-resource-deleter.d.ts.map +1 -0
  148. package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-resource-deleter.js +32 -0
  149. package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-resource-deleter.js.map +1 -0
  150. package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-resource-factory.d.ts +7 -0
  151. package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-resource-factory.d.ts.map +1 -1
  152. package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-resource-factory.js +10 -0
  153. package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-resource-factory.js.map +1 -1
  154. package/dist/service/apigatewayv2/cfn/sim-cfn-http-api-part-deleter.d.ts +30 -0
  155. package/dist/service/apigatewayv2/cfn/sim-cfn-http-api-part-deleter.d.ts.map +1 -0
  156. package/dist/service/apigatewayv2/cfn/sim-cfn-http-api-part-deleter.js +72 -0
  157. package/dist/service/apigatewayv2/cfn/sim-cfn-http-api-part-deleter.js.map +1 -0
  158. package/dist/service/apigatewayv2/command/integration/integration.command.d.ts +15 -0
  159. package/dist/service/apigatewayv2/command/integration/integration.command.d.ts.map +1 -1
  160. package/dist/service/apigatewayv2/command/integration/sim-http-api-integration-commands.d.ts +9 -1
  161. package/dist/service/apigatewayv2/command/integration/sim-http-api-integration-commands.d.ts.map +1 -1
  162. package/dist/service/apigatewayv2/command/integration/sim-http-api-integration-commands.js +27 -0
  163. package/dist/service/apigatewayv2/command/integration/sim-http-api-integration-commands.js.map +1 -1
  164. package/dist/service/apigatewayv2/command/route/route.command.d.ts +15 -0
  165. package/dist/service/apigatewayv2/command/route/route.command.d.ts.map +1 -1
  166. package/dist/service/apigatewayv2/command/route/sim-http-api-route-commands.d.ts +9 -1
  167. package/dist/service/apigatewayv2/command/route/sim-http-api-route-commands.d.ts.map +1 -1
  168. package/dist/service/apigatewayv2/command/route/sim-http-api-route-commands.js +26 -0
  169. package/dist/service/apigatewayv2/command/route/sim-http-api-route-commands.js.map +1 -1
  170. package/dist/service/apigatewayv2/command/sim-api-gateway-v2-command.types.d.ts +3 -3
  171. package/dist/service/apigatewayv2/command/sim-api-gateway-v2-command.types.d.ts.map +1 -1
  172. package/dist/service/apigatewayv2/command/stage/sim-http-api-stage-commands.d.ts +9 -1
  173. package/dist/service/apigatewayv2/command/stage/sim-http-api-stage-commands.d.ts.map +1 -1
  174. package/dist/service/apigatewayv2/command/stage/sim-http-api-stage-commands.js +26 -0
  175. package/dist/service/apigatewayv2/command/stage/sim-http-api-stage-commands.js.map +1 -1
  176. package/dist/service/apigatewayv2/command/stage/stage.command.d.ts +15 -0
  177. package/dist/service/apigatewayv2/command/stage/stage.command.d.ts.map +1 -1
  178. package/dist/service/apigatewayv2/sdk/sim-api-gateway-v2-sdk-command-router.d.ts.map +1 -1
  179. package/dist/service/apigatewayv2/sdk/sim-api-gateway-v2-sdk-command-router.js +12 -0
  180. package/dist/service/apigatewayv2/sdk/sim-api-gateway-v2-sdk-command-router.js.map +1 -1
  181. package/dist/service/apigatewayv2/sim-api-gateway-v2-commands.d.ts +47 -0
  182. package/dist/service/apigatewayv2/sim-api-gateway-v2-commands.d.ts.map +1 -0
  183. package/dist/service/apigatewayv2/sim-api-gateway-v2-commands.js +61 -0
  184. package/dist/service/apigatewayv2/sim-api-gateway-v2-commands.js.map +1 -0
  185. package/dist/service/apigatewayv2/sim-api-gateway-v2.d.ts +14 -26
  186. package/dist/service/apigatewayv2/sim-api-gateway-v2.d.ts.map +1 -1
  187. package/dist/service/apigatewayv2/sim-api-gateway-v2.js +53 -80
  188. package/dist/service/apigatewayv2/sim-api-gateway-v2.js.map +1 -1
  189. package/dist/service/cloudformation/authorize/sim-cloudformation-authorization.d.ts +44 -0
  190. package/dist/service/cloudformation/authorize/sim-cloudformation-authorization.d.ts.map +1 -0
  191. package/dist/service/cloudformation/authorize/sim-cloudformation-authorization.js +53 -0
  192. package/dist/service/cloudformation/authorize/sim-cloudformation-authorization.js.map +1 -0
  193. package/dist/service/cloudformation/cdk/s3/bucket-deployment/sim-cdk-bucket-deployment.d.ts +9 -0
  194. package/dist/service/cloudformation/cdk/s3/bucket-deployment/sim-cdk-bucket-deployment.d.ts.map +1 -1
  195. package/dist/service/cloudformation/cdk/s3/bucket-deployment/sim-cdk-bucket-deployment.js +15 -0
  196. package/dist/service/cloudformation/cdk/s3/bucket-deployment/sim-cdk-bucket-deployment.js.map +1 -1
  197. package/dist/service/cloudformation/cdk/s3/bucket-notifications/sim-cdk-bucket-notifications-remover.d.ts +19 -0
  198. package/dist/service/cloudformation/cdk/s3/bucket-notifications/sim-cdk-bucket-notifications-remover.d.ts.map +1 -0
  199. package/dist/service/cloudformation/cdk/s3/bucket-notifications/sim-cdk-bucket-notifications-remover.js +35 -0
  200. package/dist/service/cloudformation/cdk/s3/bucket-notifications/sim-cdk-bucket-notifications-remover.js.map +1 -0
  201. package/dist/service/cloudformation/cdk/s3/bucket-notifications/sim-cdk-bucket-notifications.d.ts +9 -1
  202. package/dist/service/cloudformation/cdk/s3/bucket-notifications/sim-cdk-bucket-notifications.d.ts.map +1 -1
  203. package/dist/service/cloudformation/cdk/s3/bucket-notifications/sim-cdk-bucket-notifications.js +11 -0
  204. package/dist/service/cloudformation/cdk/s3/bucket-notifications/sim-cdk-bucket-notifications.js.map +1 -1
  205. package/dist/service/cloudformation/command/create-stack/create-stack.handler.js +1 -1
  206. package/dist/service/cloudformation/command/create-stack/create-stack.handler.js.map +1 -1
  207. package/dist/service/cloudformation/command/delete-stack/delete-stack.command.d.ts +25 -0
  208. package/dist/service/cloudformation/command/delete-stack/delete-stack.command.d.ts.map +1 -0
  209. package/dist/service/cloudformation/command/delete-stack/delete-stack.command.js +2 -0
  210. package/dist/service/cloudformation/command/delete-stack/delete-stack.command.js.map +1 -0
  211. package/dist/service/cloudformation/command/delete-stack/delete-stack.handler.d.ts +34 -0
  212. package/dist/service/cloudformation/command/delete-stack/delete-stack.handler.d.ts.map +1 -0
  213. package/dist/service/cloudformation/command/delete-stack/delete-stack.handler.js +41 -0
  214. package/dist/service/cloudformation/command/delete-stack/delete-stack.handler.js.map +1 -0
  215. package/dist/service/cloudformation/command/describe-stacks/describe-stacks.handler.d.ts.map +1 -1
  216. package/dist/service/cloudformation/command/describe-stacks/describe-stacks.handler.js +4 -11
  217. package/dist/service/cloudformation/command/describe-stacks/describe-stacks.handler.js.map +1 -1
  218. package/dist/service/cloudformation/command/describe-stacks/sim-cfn-described-stacks.d.ts +26 -0
  219. package/dist/service/cloudformation/command/describe-stacks/sim-cfn-described-stacks.d.ts.map +1 -0
  220. package/dist/service/cloudformation/command/describe-stacks/sim-cfn-described-stacks.js +37 -0
  221. package/dist/service/cloudformation/command/describe-stacks/sim-cfn-described-stacks.js.map +1 -0
  222. package/dist/service/cloudformation/command/describe-stacks/sim-cfn-stack-describer.js +2 -2
  223. package/dist/service/cloudformation/command/describe-stacks/sim-cfn-stack-describer.js.map +1 -1
  224. package/dist/service/cloudformation/command/update-stack/update-stack.command.d.ts +29 -0
  225. package/dist/service/cloudformation/command/update-stack/update-stack.command.d.ts.map +1 -0
  226. package/dist/service/cloudformation/command/update-stack/update-stack.command.js +2 -0
  227. package/dist/service/cloudformation/command/update-stack/update-stack.command.js.map +1 -0
  228. package/dist/service/cloudformation/command/update-stack/update-stack.handler.d.ts +42 -0
  229. package/dist/service/cloudformation/command/update-stack/update-stack.handler.d.ts.map +1 -0
  230. package/dist/service/cloudformation/command/update-stack/update-stack.handler.js +53 -0
  231. package/dist/service/cloudformation/command/update-stack/update-stack.handler.js.map +1 -0
  232. package/dist/service/cloudformation/deploy/sim-cfn-template-deployer.d.ts +19 -0
  233. package/dist/service/cloudformation/deploy/sim-cfn-template-deployer.d.ts.map +1 -1
  234. package/dist/service/cloudformation/deploy/sim-cfn-template-deployer.js +40 -1
  235. package/dist/service/cloudformation/deploy/sim-cfn-template-deployer.js.map +1 -1
  236. package/dist/service/cloudformation/deploy/sim-cfn-template-file-deployment.d.ts +10 -0
  237. package/dist/service/cloudformation/deploy/sim-cfn-template-file-deployment.d.ts.map +1 -0
  238. package/dist/service/cloudformation/deploy/sim-cfn-template-file-deployment.js +14 -0
  239. package/dist/service/cloudformation/deploy/sim-cfn-template-file-deployment.js.map +1 -0
  240. package/dist/service/cloudformation/deploy/sim-cfn-template-file-loader.d.ts +11 -0
  241. package/dist/service/cloudformation/deploy/sim-cfn-template-file-loader.d.ts.map +1 -1
  242. package/dist/service/cloudformation/deploy/sim-cfn-template-file-loader.js +5 -0
  243. package/dist/service/cloudformation/deploy/sim-cfn-template-file-loader.js.map +1 -1
  244. package/dist/service/cloudformation/deploy/sim-cfn-template-file-updater.d.ts +49 -0
  245. package/dist/service/cloudformation/deploy/sim-cfn-template-file-updater.d.ts.map +1 -0
  246. package/dist/service/cloudformation/deploy/sim-cfn-template-file-updater.js +59 -0
  247. package/dist/service/cloudformation/deploy/sim-cfn-template-file-updater.js.map +1 -0
  248. package/dist/service/cloudformation/error/{sim-cloudfront.error.d.ts → sim-cloudformation.error.d.ts} +11 -1
  249. package/dist/service/cloudformation/error/sim-cloudformation.error.d.ts.map +1 -0
  250. package/dist/service/cloudformation/error/{sim-cloudfront.error.js → sim-cloudformation.error.js} +13 -1
  251. package/dist/service/cloudformation/error/sim-cloudformation.error.js.map +1 -0
  252. package/dist/service/cloudformation/index.d.ts +1 -0
  253. package/dist/service/cloudformation/index.d.ts.map +1 -1
  254. package/dist/service/cloudformation/resource/create/sim-cfn-resource-create-operation.d.ts +0 -1
  255. package/dist/service/cloudformation/resource/create/sim-cfn-resource-create-operation.d.ts.map +1 -1
  256. package/dist/service/cloudformation/resource/create/sim-cfn-resource-create-operation.js +2 -6
  257. package/dist/service/cloudformation/resource/create/sim-cfn-resource-create-operation.js.map +1 -1
  258. package/dist/service/cloudformation/resource/delete/sim-cfn-resource-delete-operation.d.ts +37 -0
  259. package/dist/service/cloudformation/resource/delete/sim-cfn-resource-delete-operation.d.ts.map +1 -0
  260. package/dist/service/cloudformation/resource/delete/sim-cfn-resource-delete-operation.js +66 -0
  261. package/dist/service/cloudformation/resource/delete/sim-cfn-resource-delete-operation.js.map +1 -0
  262. package/dist/service/cloudformation/resource/delete/sim-cfn-resource-deleter.d.ts +37 -0
  263. package/dist/service/cloudformation/resource/delete/sim-cfn-resource-deleter.d.ts.map +1 -0
  264. package/dist/service/cloudformation/resource/delete/sim-cfn-resource-deleter.js +48 -0
  265. package/dist/service/cloudformation/resource/delete/sim-cfn-resource-deleter.js.map +1 -0
  266. package/dist/service/cloudformation/resource/dependency/sim-cfn-resource-dependents.d.ts +14 -0
  267. package/dist/service/cloudformation/resource/dependency/sim-cfn-resource-dependents.d.ts.map +1 -0
  268. package/dist/service/cloudformation/resource/dependency/sim-cfn-resource-dependents.js +27 -0
  269. package/dist/service/cloudformation/resource/dependency/sim-cfn-resource-dependents.js.map +1 -0
  270. package/dist/service/cloudformation/resource/factory/sim-cfn-cfn-resource-factory.d.ts +8 -0
  271. package/dist/service/cloudformation/resource/factory/sim-cfn-cfn-resource-factory.d.ts.map +1 -1
  272. package/dist/service/cloudformation/resource/factory/sim-cfn-cfn-resource-factory.js +13 -0
  273. package/dist/service/cloudformation/resource/factory/sim-cfn-cfn-resource-factory.js.map +1 -1
  274. package/dist/service/cloudformation/resource/factory/sim-cfn-resource-factory.type.d.ts +15 -1
  275. package/dist/service/cloudformation/resource/factory/sim-cfn-resource-factory.type.d.ts.map +1 -1
  276. package/dist/service/cloudformation/resource/resolve/property/sim-cfn-resource-property-resolver.d.ts +2 -2
  277. package/dist/service/cloudformation/resource/resolve/property/sim-cfn-resource-property-resolver.d.ts.map +1 -1
  278. package/dist/service/cloudformation/resource/resolve/property/sim-cfn-resource-property-resolver.js.map +1 -1
  279. package/dist/service/cloudformation/resource/sim-cfn-resource-record.d.ts +110 -0
  280. package/dist/service/cloudformation/resource/sim-cfn-resource-record.d.ts.map +1 -0
  281. package/dist/service/cloudformation/resource/sim-cfn-resource-record.js +145 -0
  282. package/dist/service/cloudformation/resource/sim-cfn-resource-record.js.map +1 -0
  283. package/dist/service/cloudformation/resource/sim-cfn-resource.d.ts +61 -69
  284. package/dist/service/cloudformation/resource/sim-cfn-resource.d.ts.map +1 -1
  285. package/dist/service/cloudformation/resource/sim-cfn-resource.js +91 -100
  286. package/dist/service/cloudformation/resource/sim-cfn-resource.js.map +1 -1
  287. package/dist/service/cloudformation/resource/sim-cfn-resource.type.d.ts +30 -3
  288. package/dist/service/cloudformation/resource/sim-cfn-resource.type.d.ts.map +1 -1
  289. package/dist/service/cloudformation/resource/state/sim-cfn-resource-deletion-state.d.ts +76 -0
  290. package/dist/service/cloudformation/resource/state/sim-cfn-resource-deletion-state.d.ts.map +1 -0
  291. package/dist/service/cloudformation/resource/state/sim-cfn-resource-deletion-state.js +113 -0
  292. package/dist/service/cloudformation/resource/state/sim-cfn-resource-deletion-state.js.map +1 -0
  293. package/dist/service/cloudformation/resource/template/sim-cfn-resource-template-reader.d.ts +4 -0
  294. package/dist/service/cloudformation/resource/template/sim-cfn-resource-template-reader.d.ts.map +1 -1
  295. package/dist/service/cloudformation/resource/template/sim-cfn-resource-template-reader.js +7 -0
  296. package/dist/service/cloudformation/resource/template/sim-cfn-resource-template-reader.js.map +1 -1
  297. package/dist/service/cloudformation/resource/unsupported/sim-cfn-unsupported-resource.d.ts +12 -0
  298. package/dist/service/cloudformation/resource/unsupported/sim-cfn-unsupported-resource.d.ts.map +1 -0
  299. package/dist/service/cloudformation/resource/unsupported/sim-cfn-unsupported-resource.js +16 -0
  300. package/dist/service/cloudformation/resource/unsupported/sim-cfn-unsupported-resource.js.map +1 -0
  301. package/dist/service/cloudformation/sdk/sim-cloudformation-sdk-command-router.d.ts.map +1 -1
  302. package/dist/service/cloudformation/sdk/sim-cloudformation-sdk-command-router.js +8 -0
  303. package/dist/service/cloudformation/sdk/sim-cloudformation-sdk-command-router.js.map +1 -1
  304. package/dist/service/cloudformation/sim-cloudformation.d.ts +51 -5
  305. package/dist/service/cloudformation/sim-cloudformation.d.ts.map +1 -1
  306. package/dist/service/cloudformation/sim-cloudformation.js +85 -12
  307. package/dist/service/cloudformation/sim-cloudformation.js.map +1 -1
  308. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-deployment-lifecycle.d.ts +1 -1
  309. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-deployment-lifecycle.js +4 -4
  310. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-deployment-lifecycle.js.map +1 -1
  311. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-batch-creator.d.ts +1 -5
  312. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-batch-creator.d.ts.map +1 -1
  313. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-batch-creator.js +2 -9
  314. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-batch-creator.js.map +1 -1
  315. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-creator.d.ts +13 -2
  316. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-creator.d.ts.map +1 -1
  317. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-creator.js +17 -4
  318. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-creator.js.map +1 -1
  319. package/dist/service/cloudformation/stack/report/sim-cfn-stack-resource-report.d.ts +36 -0
  320. package/dist/service/cloudformation/stack/report/sim-cfn-stack-resource-report.d.ts.map +1 -0
  321. package/dist/service/cloudformation/stack/report/sim-cfn-stack-resource-report.js +49 -0
  322. package/dist/service/cloudformation/stack/report/sim-cfn-stack-resource-report.js.map +1 -0
  323. package/dist/service/cloudformation/stack/sim-cfn-stack-operation-scheduler.d.ts +47 -0
  324. package/dist/service/cloudformation/stack/sim-cfn-stack-operation-scheduler.d.ts.map +1 -0
  325. package/dist/service/cloudformation/stack/sim-cfn-stack-operation-scheduler.js +64 -0
  326. package/dist/service/cloudformation/stack/sim-cfn-stack-operation-scheduler.js.map +1 -0
  327. package/dist/service/cloudformation/stack/sim-cfn-stack-resource-operations.d.ts +78 -0
  328. package/dist/service/cloudformation/stack/sim-cfn-stack-resource-operations.d.ts.map +1 -0
  329. package/dist/service/cloudformation/stack/sim-cfn-stack-resource-operations.js +109 -0
  330. package/dist/service/cloudformation/stack/sim-cfn-stack-resource-operations.js.map +1 -0
  331. package/dist/service/cloudformation/stack/sim-cfn-stack.d.ts +75 -29
  332. package/dist/service/cloudformation/stack/sim-cfn-stack.d.ts.map +1 -1
  333. package/dist/service/cloudformation/stack/sim-cfn-stack.js +131 -57
  334. package/dist/service/cloudformation/stack/sim-cfn-stack.js.map +1 -1
  335. package/dist/service/cloudformation/stack/status/sim-cfn-stack-operation-status.d.ts +30 -0
  336. package/dist/service/cloudformation/stack/status/sim-cfn-stack-operation-status.d.ts.map +1 -0
  337. package/dist/service/cloudformation/stack/status/sim-cfn-stack-operation-status.js +34 -0
  338. package/dist/service/cloudformation/stack/status/sim-cfn-stack-operation-status.js.map +1 -0
  339. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-deletion-lifecycle.d.ts +74 -0
  340. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-deletion-lifecycle.d.ts.map +1 -0
  341. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-deletion-lifecycle.js +88 -0
  342. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-deletion-lifecycle.js.map +1 -0
  343. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-pending-deletions.d.ts +41 -0
  344. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-pending-deletions.d.ts.map +1 -0
  345. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-pending-deletions.js +56 -0
  346. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-pending-deletions.js.map +1 -0
  347. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-batch-deleter.d.ts +29 -0
  348. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-batch-deleter.d.ts.map +1 -0
  349. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-batch-deleter.js +32 -0
  350. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-batch-deleter.js.map +1 -0
  351. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-deleter.d.ts +52 -0
  352. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-deleter.d.ts.map +1 -0
  353. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-deleter.js +67 -0
  354. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-deleter.js.map +1 -0
  355. package/dist/service/cloudformation/stack/update/sim-cfn-stack-replaced-resources.d.ts +22 -0
  356. package/dist/service/cloudformation/stack/update/sim-cfn-stack-replaced-resources.d.ts.map +1 -0
  357. package/dist/service/cloudformation/stack/update/sim-cfn-stack-replaced-resources.js +52 -0
  358. package/dist/service/cloudformation/stack/update/sim-cfn-stack-replaced-resources.js.map +1 -0
  359. package/dist/service/cloudformation/stack/update/sim-cfn-stack-template-changes.d.ts +16 -0
  360. package/dist/service/cloudformation/stack/update/sim-cfn-stack-template-changes.d.ts.map +1 -0
  361. package/dist/service/cloudformation/stack/update/sim-cfn-stack-template-changes.js +32 -0
  362. package/dist/service/cloudformation/stack/update/sim-cfn-stack-template-changes.js.map +1 -0
  363. package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-lifecycle.d.ts +64 -0
  364. package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-lifecycle.d.ts.map +1 -0
  365. package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-lifecycle.js +95 -0
  366. package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-lifecycle.js.map +1 -0
  367. package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-plan.d.ts +50 -0
  368. package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-plan.d.ts.map +1 -0
  369. package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-plan.js +76 -0
  370. package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-plan.js.map +1 -0
  371. package/dist/service/cloudformation/stack/update/sim-cfn-stack-updater.d.ts +52 -0
  372. package/dist/service/cloudformation/stack/update/sim-cfn-stack-updater.d.ts.map +1 -0
  373. package/dist/service/cloudformation/stack/update/sim-cfn-stack-updater.js +65 -0
  374. package/dist/service/cloudformation/stack/update/sim-cfn-stack-updater.js.map +1 -0
  375. package/dist/service/cloudformation/stack/update/sim-cfn-template-signature.d.ts +17 -0
  376. package/dist/service/cloudformation/stack/update/sim-cfn-template-signature.d.ts.map +1 -0
  377. package/dist/service/cloudformation/stack/update/sim-cfn-template-signature.js +24 -0
  378. package/dist/service/cloudformation/stack/update/sim-cfn-template-signature.js.map +1 -0
  379. package/dist/service/cloudformation/watch/sim-cfn-template-file-events.d.ts +30 -0
  380. package/dist/service/cloudformation/watch/sim-cfn-template-file-events.d.ts.map +1 -0
  381. package/dist/service/cloudformation/watch/sim-cfn-template-file-events.js +51 -0
  382. package/dist/service/cloudformation/watch/sim-cfn-template-file-events.js.map +1 -0
  383. package/dist/service/cloudformation/watch/sim-cfn-template-file-watch.d.ts +39 -0
  384. package/dist/service/cloudformation/watch/sim-cfn-template-file-watch.d.ts.map +1 -0
  385. package/dist/service/cloudformation/watch/sim-cfn-template-file-watch.js +73 -0
  386. package/dist/service/cloudformation/watch/sim-cfn-template-file-watch.js.map +1 -0
  387. package/dist/service/cloudformation/watch/sim-cfn-template-file-watches.d.ts +46 -0
  388. package/dist/service/cloudformation/watch/sim-cfn-template-file-watches.d.ts.map +1 -0
  389. package/dist/service/cloudformation/watch/sim-cfn-template-file-watches.js +0 -0
  390. package/dist/service/cloudformation/watch/sim-cfn-template-file-watches.js.map +1 -0
  391. package/dist/service/cloudformation/watch/sim-cfn-template-watch-report.d.ts +25 -0
  392. package/dist/service/cloudformation/watch/sim-cfn-template-watch-report.d.ts.map +1 -0
  393. package/dist/service/cloudformation/watch/sim-cfn-template-watch-report.js +35 -0
  394. package/dist/service/cloudformation/watch/sim-cfn-template-watch-report.js.map +1 -0
  395. package/dist/service/cloudformation/watch/sim-cfn-template-watch-update.d.ts +44 -0
  396. package/dist/service/cloudformation/watch/sim-cfn-template-watch-update.d.ts.map +1 -0
  397. package/dist/service/cloudformation/watch/sim-cfn-template-watch-update.js +75 -0
  398. package/dist/service/cloudformation/watch/sim-cfn-template-watch-update.js.map +1 -0
  399. package/dist/service/cloudformation/watch/sim-cfn-template-watch.type.d.ts +30 -0
  400. package/dist/service/cloudformation/watch/sim-cfn-template-watch.type.d.ts.map +1 -0
  401. package/dist/service/cloudformation/watch/sim-cfn-template-watch.type.js +2 -0
  402. package/dist/service/cloudformation/watch/sim-cfn-template-watch.type.js.map +1 -0
  403. package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-deleter.d.ts +29 -0
  404. package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-deleter.d.ts.map +1 -0
  405. package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-deleter.js +42 -0
  406. package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-deleter.js.map +1 -0
  407. package/dist/service/cloudfront/cfn/sim-cfn-cloudfront-resource-factory.d.ts +8 -0
  408. package/dist/service/cloudfront/cfn/sim-cfn-cloudfront-resource-factory.d.ts.map +1 -1
  409. package/dist/service/cloudfront/cfn/sim-cfn-cloudfront-resource-factory.js +32 -0
  410. package/dist/service/cloudfront/cfn/sim-cfn-cloudfront-resource-factory.js.map +1 -1
  411. package/dist/service/cloudfront/command/create-distribution/create-distribution.command.d.ts +2 -9
  412. package/dist/service/cloudfront/command/create-distribution/create-distribution.command.d.ts.map +1 -1
  413. package/dist/service/cloudfront/command/create-distribution/create-distribution.handler.d.ts.map +1 -1
  414. package/dist/service/cloudfront/command/create-distribution/create-distribution.handler.js +5 -13
  415. package/dist/service/cloudfront/command/create-distribution/create-distribution.handler.js.map +1 -1
  416. package/dist/service/cloudfront/command/delete-distribution/delete-distribution-authorizer.d.ts +31 -0
  417. package/dist/service/cloudfront/command/delete-distribution/delete-distribution-authorizer.d.ts.map +1 -0
  418. package/dist/service/cloudfront/command/delete-distribution/delete-distribution-authorizer.js +40 -0
  419. package/dist/service/cloudfront/command/delete-distribution/delete-distribution-authorizer.js.map +1 -0
  420. package/dist/service/cloudfront/command/delete-distribution/delete-distribution.command.d.ts +27 -0
  421. package/dist/service/cloudfront/command/delete-distribution/delete-distribution.command.d.ts.map +1 -0
  422. package/dist/service/cloudfront/command/delete-distribution/delete-distribution.command.js +2 -0
  423. package/dist/service/cloudfront/command/delete-distribution/delete-distribution.command.js.map +1 -0
  424. package/dist/service/cloudfront/command/delete-distribution/delete-distribution.handler.d.ts +47 -0
  425. package/dist/service/cloudfront/command/delete-distribution/delete-distribution.handler.d.ts.map +1 -0
  426. package/dist/service/cloudfront/command/delete-distribution/delete-distribution.handler.js +53 -0
  427. package/dist/service/cloudfront/command/delete-distribution/delete-distribution.handler.js.map +1 -0
  428. package/dist/service/cloudfront/command/delete-function/delete-function-authorizer.d.ts +27 -0
  429. package/dist/service/cloudfront/command/delete-function/delete-function-authorizer.d.ts.map +1 -0
  430. package/dist/service/cloudfront/command/delete-function/delete-function-authorizer.js +36 -0
  431. package/dist/service/cloudfront/command/delete-function/delete-function-authorizer.js.map +1 -0
  432. package/dist/service/cloudfront/command/delete-function/delete-function.command.d.ts +27 -0
  433. package/dist/service/cloudfront/command/delete-function/delete-function.command.d.ts.map +1 -0
  434. package/dist/service/cloudfront/command/delete-function/delete-function.command.js +2 -0
  435. package/dist/service/cloudfront/command/delete-function/delete-function.command.js.map +1 -0
  436. package/dist/service/cloudfront/command/delete-function/delete-function.handler.d.ts +43 -0
  437. package/dist/service/cloudfront/command/delete-function/delete-function.handler.d.ts.map +1 -0
  438. package/dist/service/cloudfront/command/delete-function/delete-function.handler.js +46 -0
  439. package/dist/service/cloudfront/command/delete-function/delete-function.handler.js.map +1 -0
  440. package/dist/service/cloudfront/command/get-distribution/get-distribution.command.d.ts +2 -10
  441. package/dist/service/cloudfront/command/get-distribution/get-distribution.command.d.ts.map +1 -1
  442. package/dist/service/cloudfront/command/get-distribution/get-distribution.handler.d.ts.map +1 -1
  443. package/dist/service/cloudfront/command/get-distribution/get-distribution.handler.js +4 -11
  444. package/dist/service/cloudfront/command/get-distribution/get-distribution.handler.js.map +1 -1
  445. package/dist/service/cloudfront/command/update-distribution/update-distribution-authorizer.d.ts +27 -0
  446. package/dist/service/cloudfront/command/update-distribution/update-distribution-authorizer.d.ts.map +1 -0
  447. package/dist/service/cloudfront/command/update-distribution/update-distribution-authorizer.js +36 -0
  448. package/dist/service/cloudfront/command/update-distribution/update-distribution-authorizer.js.map +1 -0
  449. package/dist/service/cloudfront/command/update-distribution/update-distribution.command.d.ts +32 -0
  450. package/dist/service/cloudfront/command/update-distribution/update-distribution.command.d.ts.map +1 -0
  451. package/dist/service/cloudfront/command/update-distribution/update-distribution.command.js +2 -0
  452. package/dist/service/cloudfront/command/update-distribution/update-distribution.command.js.map +1 -0
  453. package/dist/service/cloudfront/command/update-distribution/update-distribution.handler.d.ts +48 -0
  454. package/dist/service/cloudfront/command/update-distribution/update-distribution.handler.d.ts.map +1 -0
  455. package/dist/service/cloudfront/command/update-distribution/update-distribution.handler.js +63 -0
  456. package/dist/service/cloudfront/command/update-distribution/update-distribution.handler.js.map +1 -0
  457. package/dist/service/cloudfront/distribution/configurator/sim-cf-distribution-configurator.factory.d.ts +16 -0
  458. package/dist/service/cloudfront/distribution/configurator/sim-cf-distribution-configurator.factory.d.ts.map +1 -0
  459. package/dist/service/cloudfront/distribution/configurator/sim-cf-distribution-configurator.factory.js +13 -0
  460. package/dist/service/cloudfront/distribution/configurator/sim-cf-distribution-configurator.factory.js.map +1 -0
  461. package/dist/service/cloudfront/distribution/sim-cf-distribution-reconfigurer.d.ts +35 -0
  462. package/dist/service/cloudfront/distribution/sim-cf-distribution-reconfigurer.d.ts.map +1 -0
  463. package/dist/service/cloudfront/distribution/sim-cf-distribution-reconfigurer.js +37 -0
  464. package/dist/service/cloudfront/distribution/sim-cf-distribution-reconfigurer.js.map +1 -0
  465. package/dist/service/cloudfront/distribution/sim-cf-distribution-view.d.ts +27 -0
  466. package/dist/service/cloudfront/distribution/sim-cf-distribution-view.d.ts.map +1 -0
  467. package/dist/service/cloudfront/distribution/sim-cf-distribution-view.js +22 -0
  468. package/dist/service/cloudfront/distribution/sim-cf-distribution-view.js.map +1 -0
  469. package/dist/service/cloudfront/distribution/sim-cf-distro-config.factory.d.ts.map +1 -1
  470. package/dist/service/cloudfront/distribution/sim-cf-distro-config.factory.js +1 -0
  471. package/dist/service/cloudfront/distribution/sim-cf-distro-config.factory.js.map +1 -1
  472. package/dist/service/cloudfront/distribution/sim-cloudfront-distribution.d.ts +27 -1
  473. package/dist/service/cloudfront/distribution/sim-cloudfront-distribution.d.ts.map +1 -1
  474. package/dist/service/cloudfront/distribution/sim-cloudfront-distribution.js +49 -2
  475. package/dist/service/cloudfront/distribution/sim-cloudfront-distribution.js.map +1 -1
  476. package/dist/service/cloudfront/error/sim-cloudfront.error.d.ts +24 -3
  477. package/dist/service/cloudfront/error/sim-cloudfront.error.d.ts.map +1 -1
  478. package/dist/service/cloudfront/error/sim-cloudfront.error.js +28 -3
  479. package/dist/service/cloudfront/error/sim-cloudfront.error.js.map +1 -1
  480. package/dist/service/cloudfront/registry/sim-cloud-front-registry.d.ts +25 -0
  481. package/dist/service/cloudfront/registry/sim-cloud-front-registry.d.ts.map +1 -1
  482. package/dist/service/cloudfront/registry/sim-cloud-front-registry.js +48 -5
  483. package/dist/service/cloudfront/registry/sim-cloud-front-registry.js.map +1 -1
  484. package/dist/service/cloudfront/sdk/sim-cloudfront-sdk-command-router.d.ts.map +1 -1
  485. package/dist/service/cloudfront/sdk/sim-cloudfront-sdk-command-router.js +12 -0
  486. package/dist/service/cloudfront/sdk/sim-cloudfront-sdk-command-router.js.map +1 -1
  487. package/dist/service/cloudfront/sim-cloudfront-commands.d.ts +87 -0
  488. package/dist/service/cloudfront/sim-cloudfront-commands.d.ts.map +1 -0
  489. package/dist/service/cloudfront/sim-cloudfront-commands.js +97 -0
  490. package/dist/service/cloudfront/sim-cloudfront-commands.js.map +1 -0
  491. package/dist/service/cloudfront/sim-cloudfront.d.ts +24 -33
  492. package/dist/service/cloudfront/sim-cloudfront.d.ts.map +1 -1
  493. package/dist/service/cloudfront/sim-cloudfront.js +33 -48
  494. package/dist/service/cloudfront/sim-cloudfront.js.map +1 -1
  495. package/dist/service/cognito/cfn/sim-cfn-cognito-resource-deleter.d.ts +24 -0
  496. package/dist/service/cognito/cfn/sim-cfn-cognito-resource-deleter.d.ts.map +1 -0
  497. package/dist/service/cognito/cfn/sim-cfn-cognito-resource-deleter.js +55 -0
  498. package/dist/service/cognito/cfn/sim-cfn-cognito-resource-deleter.js.map +1 -0
  499. package/dist/service/cognito/cfn/sim-cfn-cognito-resource-factory.d.ts +5 -0
  500. package/dist/service/cognito/cfn/sim-cfn-cognito-resource-factory.d.ts.map +1 -1
  501. package/dist/service/cognito/cfn/sim-cfn-cognito-resource-factory.js +9 -0
  502. package/dist/service/cognito/cfn/sim-cfn-cognito-resource-factory.js.map +1 -1
  503. package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-deleter.d.ts +23 -0
  504. package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-deleter.d.ts.map +1 -0
  505. package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-deleter.js +29 -0
  506. package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-deleter.js.map +1 -0
  507. package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-factory.d.ts +5 -0
  508. package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-factory.d.ts.map +1 -1
  509. package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-factory.js +11 -0
  510. package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-factory.js.map +1 -1
  511. package/dist/service/iam/cfn/role/sim-cfn-iam-role-deleter.d.ts +30 -0
  512. package/dist/service/iam/cfn/role/sim-cfn-iam-role-deleter.d.ts.map +1 -0
  513. package/dist/service/iam/cfn/role/sim-cfn-iam-role-deleter.js +41 -0
  514. package/dist/service/iam/cfn/role/sim-cfn-iam-role-deleter.js.map +1 -0
  515. package/dist/service/iam/cfn/sim-cfn-iam-resource-deleter.d.ts +29 -0
  516. package/dist/service/iam/cfn/sim-cfn-iam-resource-deleter.d.ts.map +1 -0
  517. package/dist/service/iam/cfn/sim-cfn-iam-resource-deleter.js +61 -0
  518. package/dist/service/iam/cfn/sim-cfn-iam-resource-deleter.js.map +1 -0
  519. package/dist/service/iam/cfn/sim-cfn-iam-resource-factory.d.ts +6 -0
  520. package/dist/service/iam/cfn/sim-cfn-iam-resource-factory.d.ts.map +1 -1
  521. package/dist/service/iam/cfn/sim-cfn-iam-resource-factory.js +9 -0
  522. package/dist/service/iam/cfn/sim-cfn-iam-resource-factory.js.map +1 -1
  523. package/dist/service/kms/cfn/sim-cfn-kms-resource-deleter.d.ts +23 -0
  524. package/dist/service/kms/cfn/sim-cfn-kms-resource-deleter.d.ts.map +1 -0
  525. package/dist/service/kms/cfn/sim-cfn-kms-resource-deleter.js +40 -0
  526. package/dist/service/kms/cfn/sim-cfn-kms-resource-deleter.js.map +1 -0
  527. package/dist/service/kms/cfn/sim-cfn-kms-resource-factory.d.ts +5 -0
  528. package/dist/service/kms/cfn/sim-cfn-kms-resource-factory.d.ts.map +1 -1
  529. package/dist/service/kms/cfn/sim-cfn-kms-resource-factory.js +9 -0
  530. package/dist/service/kms/cfn/sim-cfn-kms-resource-factory.js.map +1 -1
  531. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-deleter.d.ts +33 -0
  532. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-deleter.d.ts.map +1 -0
  533. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-deleter.js +80 -0
  534. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-deleter.js.map +1 -0
  535. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.d.ts +5 -0
  536. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.d.ts.map +1 -1
  537. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.js +9 -0
  538. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.js.map +1 -1
  539. package/dist/service/route53/cfn/sim-cfn-route53-resource-deleter.d.ts +30 -0
  540. package/dist/service/route53/cfn/sim-cfn-route53-resource-deleter.d.ts.map +1 -0
  541. package/dist/service/route53/cfn/sim-cfn-route53-resource-deleter.js +63 -0
  542. package/dist/service/route53/cfn/sim-cfn-route53-resource-deleter.js.map +1 -0
  543. package/dist/service/route53/cfn/sim-cfn-route53-resource-factory.d.ts +6 -0
  544. package/dist/service/route53/cfn/sim-cfn-route53-resource-factory.d.ts.map +1 -1
  545. package/dist/service/route53/cfn/sim-cfn-route53-resource-factory.js +9 -0
  546. package/dist/service/route53/cfn/sim-cfn-route53-resource-factory.js.map +1 -1
  547. package/dist/service/s3/bucket/sim-s3-bucket-access.d.ts +4 -0
  548. package/dist/service/s3/bucket/sim-s3-bucket-access.d.ts.map +1 -1
  549. package/dist/service/s3/bucket/sim-s3-bucket-access.js +6 -0
  550. package/dist/service/s3/bucket/sim-s3-bucket-access.js.map +1 -1
  551. package/dist/service/s3/cfn/sim-cfn-s3-resource-deleter.d.ts +32 -0
  552. package/dist/service/s3/cfn/sim-cfn-s3-resource-deleter.d.ts.map +1 -0
  553. package/dist/service/s3/cfn/sim-cfn-s3-resource-deleter.js +51 -0
  554. package/dist/service/s3/cfn/sim-cfn-s3-resource-deleter.js.map +1 -0
  555. package/dist/service/s3/cfn/sim-cfn-s3-resource-factory.d.ts +5 -0
  556. package/dist/service/s3/cfn/sim-cfn-s3-resource-factory.d.ts.map +1 -1
  557. package/dist/service/s3/cfn/sim-cfn-s3-resource-factory.js +9 -0
  558. package/dist/service/s3/cfn/sim-cfn-s3-resource-factory.js.map +1 -1
  559. package/dist/service/secretsmanager/cfn/sim-cfn-secrets-manager-resource-factory.d.ts +11 -0
  560. package/dist/service/secretsmanager/cfn/sim-cfn-secrets-manager-resource-factory.d.ts.map +1 -1
  561. package/dist/service/secretsmanager/cfn/sim-cfn-secrets-manager-resource-factory.js +22 -0
  562. package/dist/service/secretsmanager/cfn/sim-cfn-secrets-manager-resource-factory.js.map +1 -1
  563. package/dist/service/sqs/cfn/sim-cfn-sqs-resource-deleter.d.ts +32 -0
  564. package/dist/service/sqs/cfn/sim-cfn-sqs-resource-deleter.d.ts.map +1 -0
  565. package/dist/service/sqs/cfn/sim-cfn-sqs-resource-deleter.js +61 -0
  566. package/dist/service/sqs/cfn/sim-cfn-sqs-resource-deleter.js.map +1 -0
  567. package/dist/service/sqs/cfn/sim-sqs-cfn-resource-factory.d.ts +6 -0
  568. package/dist/service/sqs/cfn/sim-sqs-cfn-resource-factory.d.ts.map +1 -1
  569. package/dist/service/sqs/cfn/sim-sqs-cfn-resource-factory.js +9 -0
  570. package/dist/service/sqs/cfn/sim-sqs-cfn-resource-factory.js.map +1 -1
  571. package/dist/service/sqs/queue/sim-sqs-queue-json-attribute.d.ts +4 -0
  572. package/dist/service/sqs/queue/sim-sqs-queue-json-attribute.d.ts.map +1 -1
  573. package/dist/service/sqs/queue/sim-sqs-queue-json-attribute.js +5 -1
  574. package/dist/service/sqs/queue/sim-sqs-queue-json-attribute.js.map +1 -1
  575. package/dist/service/ssm/cfn/parameter/sim-cfn-ssm-parameter-creator.d.ts +4 -3
  576. package/dist/service/ssm/cfn/parameter/sim-cfn-ssm-parameter-creator.d.ts.map +1 -1
  577. package/dist/service/ssm/cfn/parameter/sim-cfn-ssm-parameter-creator.js +4 -3
  578. package/dist/service/ssm/cfn/parameter/sim-cfn-ssm-parameter-creator.js.map +1 -1
  579. package/dist/service/ssm/cfn/sim-cfn-ssm-resource-factory.d.ts +5 -0
  580. package/dist/service/ssm/cfn/sim-cfn-ssm-resource-factory.d.ts.map +1 -1
  581. package/dist/service/ssm/cfn/sim-cfn-ssm-resource-factory.js +14 -0
  582. package/dist/service/ssm/cfn/sim-cfn-ssm-resource-factory.js.map +1 -1
  583. package/dist/watch/sim-watch-runtime.d.ts +76 -0
  584. package/dist/watch/sim-watch-runtime.d.ts.map +1 -0
  585. package/dist/watch/sim-watch-runtime.js +124 -0
  586. package/dist/watch/sim-watch-runtime.js.map +1 -0
  587. package/dist/watch/sim-watch-settle.d.ts +32 -0
  588. package/dist/watch/sim-watch-settle.d.ts.map +1 -0
  589. package/dist/watch/sim-watch-settle.js +43 -0
  590. package/dist/watch/sim-watch-settle.js.map +1 -0
  591. package/dist/watch/sim-watch.config.d.ts +22 -0
  592. package/dist/watch/sim-watch.config.d.ts.map +1 -0
  593. package/dist/watch/sim-watch.config.js +39 -0
  594. package/dist/watch/sim-watch.config.js.map +1 -0
  595. package/package.json +4 -1
  596. package/dist/service/cloudformation/error/sim-cloudfront.error.d.ts.map +0 -1
  597. package/dist/service/cloudformation/error/sim-cloudfront.error.js.map +0 -1
  598. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-deployment-scheduler.d.ts +0 -47
  599. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-deployment-scheduler.d.ts.map +0 -1
  600. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-deployment-scheduler.js +0 -64
  601. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-deployment-scheduler.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-dynamodb-resource-deleter.d.ts","sourceRoot":"","sources":["../../../../src/service/dynamodb/cfn/sim-cfn-dynamodb-resource-deleter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mDAAmD,CAAC;AACxF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAItD,UAAU,uCAAuC;IAC/C,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC;CAChC;AAED;;;;;;GAMG;AACH,qBAAa,6BAA6B;IACxC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAc;IAEvC,YAAY,UAAU,EAAE,uCAAuC,EAE9D;IAED;;;OAGG;IACG,MAAM,CACV,gBAAgB,EAAE,MAAM,EACxB,QAAQ,EAAE,cAAc,GACvB,OAAO,CAAC,IAAI,CAAC,CAgBf;CACF"}
@@ -0,0 +1,29 @@
1
+ import { assertDefined } from "../../../util/type-guard/defined.js";
2
+ /**
3
+ * Deletes the simulated DynamoDB tables a CloudFormation Stack created.
4
+ *
5
+ * Both Resource types made a table, so both are deleted as one. A table with
6
+ * deletion protection turned on is refused by the ordinary command, as it is on
7
+ * AWS, where it is the whole point of the setting.
8
+ */
9
+ export class SimCfnDynamoDbResourceDeleter {
10
+ dynamoDb;
11
+ constructor(properties) {
12
+ this.dynamoDb = properties.dynamoDb;
13
+ }
14
+ /**
15
+ * Delete a simulated DynamoDB resource created from a CloudFormation
16
+ * Resource.
17
+ */
18
+ async delete(resourceTypeName, resource) {
19
+ if (resourceTypeName !== "Table" && resourceTypeName !== "GlobalTable") {
20
+ throw new Error(`Unsupported sim DynamoDB CloudFormation Resource ${resourceTypeName} deletion`);
21
+ }
22
+ const table = resource.simResource;
23
+ assertDefined(table, `sim DynamoDB table for CloudFormation Resource ${resource.logicalId}`);
24
+ await this.dynamoDb.deleteTable({
25
+ input: { TableName: table.tableName },
26
+ });
27
+ }
28
+ }
29
+ //# sourceMappingURL=sim-cfn-dynamodb-resource-deleter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-dynamodb-resource-deleter.js","sourceRoot":"","sources":["../../../../src/service/dynamodb/cfn/sim-cfn-dynamodb-resource-deleter.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAMpE;;;;;;GAMG;AACH,MAAM,OAAO,6BAA6B;IACvB,QAAQ,CAAc;IAEvC,YAAY,UAAmD;QAC7D,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;IACtC,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,MAAM,CACV,gBAAwB,EACxB,QAAwB;QAExB,IAAI,gBAAgB,KAAK,OAAO,IAAI,gBAAgB,KAAK,aAAa,EAAE,CAAC;YACvE,MAAM,IAAI,KAAK,CACb,oDAAoD,gBAAgB,WAAW,CAChF,CAAC;QACJ,CAAC;QAED,MAAM,KAAK,GAAG,QAAQ,CAAC,WAA2C,CAAC;QACnE,aAAa,CACX,KAAK,EACL,kDAAkD,QAAQ,CAAC,SAAS,EAAE,CACvE,CAAC;QAEF,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;YAC9B,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE;SACtC,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -10,6 +10,7 @@ interface SimDynamoDbCfnResourceFactoryProperties {
10
10
  export declare class SimDynamoDbCfnResourceFactory implements SimCfnServiceResourceFactory {
11
11
  private readonly tableCreator;
12
12
  private readonly globalTableCreator;
13
+ private readonly deleter;
13
14
  constructor(properties: SimDynamoDbCfnResourceFactoryProperties);
14
15
  /**
15
16
  * Create a simulated DynamoDB resource from a CloudFormation Resource.
@@ -21,6 +22,10 @@ export declare class SimDynamoDbCfnResourceFactory implements SimCfnServiceResou
21
22
  * skipped where it is read rather than here.
22
23
  */
23
24
  create(resourceTypeName: string, resource: SimCfnResource, context: SimCloudFormationResourceCreateContext): Promise<object | undefined>;
25
+ /**
26
+ * Delete a simulated DynamoDB resource created from a CloudFormation Resource.
27
+ */
28
+ delete(resourceTypeName: string, resource: SimCfnResource): Promise<void>;
24
29
  }
25
30
  export {};
26
31
  //# sourceMappingURL=sim-cfn-dynamodb-resource-factory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sim-cfn-dynamodb-resource-factory.d.ts","sourceRoot":"","sources":["../../../../src/service/dynamodb/cfn/sim-cfn-dynamodb-resource-factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,wEAAwE,CAAC;AAC3H,OAAO,KAAK,EACV,cAAc,EACd,sCAAsC,EACvC,MAAM,mDAAmD,CAAC;AAC3D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAItD,UAAU,uCAAuC;IAC/C,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC;CAChC;AAED;;GAEG;AACH,qBAAa,6BAA8B,YAAW,4BAA4B;IAChF,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA6B;IAC1D,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAmC;IAEtE,YAAY,UAAU,EAAE,uCAAuC,EAO9D;IAED;;;;;;;;OAQG;IACG,MAAM,CACV,gBAAgB,EAAE,MAAM,EACxB,QAAQ,EAAE,cAAc,EACxB,OAAO,EAAE,sCAAsC,GAC9C,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAgB7B;CACF"}
1
+ {"version":3,"file":"sim-cfn-dynamodb-resource-factory.d.ts","sourceRoot":"","sources":["../../../../src/service/dynamodb/cfn/sim-cfn-dynamodb-resource-factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,wEAAwE,CAAC;AAC3H,OAAO,KAAK,EACV,cAAc,EACd,sCAAsC,EACvC,MAAM,mDAAmD,CAAC;AAC3D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAKtD,UAAU,uCAAuC;IAC/C,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC;CAChC;AAED;;GAEG;AACH,qBAAa,6BAA8B,YAAW,4BAA4B;IAChF,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA6B;IAC1D,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAmC;IACtE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAgC;IAExD,YAAY,UAAU,EAAE,uCAAuC,EAU9D;IAED;;;;;;;;OAQG;IACG,MAAM,CACV,gBAAgB,EAAE,MAAM,EACxB,QAAQ,EAAE,cAAc,EACxB,OAAO,EAAE,sCAAsC,GAC9C,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAgB7B;IAED;;OAEG;IACG,MAAM,CACV,gBAAgB,EAAE,MAAM,EACxB,QAAQ,EAAE,cAAc,GACvB,OAAO,CAAC,IAAI,CAAC,CAEf;CACF"}
@@ -1,11 +1,13 @@
1
1
  import { SimCfnDynamoDbGlobalTableCreator } from "./global-table/sim-cfn-dynamodb-global-table-creator.js";
2
2
  import { SimCfnDynamoDbTableCreator } from "./table/sim-cfn-dynamodb-table-creator.js";
3
+ import { SimCfnDynamoDbResourceDeleter } from "./sim-cfn-dynamodb-resource-deleter.js";
3
4
  /**
4
5
  * CloudFormation Resource factory for simulated DynamoDB resources.
5
6
  */
6
7
  export class SimDynamoDbCfnResourceFactory {
7
8
  tableCreator;
8
9
  globalTableCreator;
10
+ deleter;
9
11
  constructor(properties) {
10
12
  this.tableCreator = new SimCfnDynamoDbTableCreator({
11
13
  dynamoDb: properties.dynamoDb,
@@ -13,6 +15,9 @@ export class SimDynamoDbCfnResourceFactory {
13
15
  this.globalTableCreator = new SimCfnDynamoDbGlobalTableCreator({
14
16
  tableCreator: this.tableCreator,
15
17
  });
18
+ this.deleter = new SimCfnDynamoDbResourceDeleter({
19
+ dynamoDb: properties.dynamoDb,
20
+ });
16
21
  }
17
22
  /**
18
23
  * Create a simulated DynamoDB resource from a CloudFormation Resource.
@@ -37,5 +42,11 @@ export class SimDynamoDbCfnResourceFactory {
37
42
  }
38
43
  }
39
44
  }
45
+ /**
46
+ * Delete a simulated DynamoDB resource created from a CloudFormation Resource.
47
+ */
48
+ async delete(resourceTypeName, resource) {
49
+ await this.deleter.delete(resourceTypeName, resource);
50
+ }
40
51
  }
41
52
  //# sourceMappingURL=sim-cfn-dynamodb-resource-factory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sim-cfn-dynamodb-resource-factory.js","sourceRoot":"","sources":["../../../../src/service/dynamodb/cfn/sim-cfn-dynamodb-resource-factory.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,gCAAgC,EAAE,MAAM,yDAAyD,CAAC;AAC3G,OAAO,EAAE,0BAA0B,EAAE,MAAM,2CAA2C,CAAC;AAMvF;;GAEG;AACH,MAAM,OAAO,6BAA6B;IACvB,YAAY,CAA6B;IACzC,kBAAkB,CAAmC;IAEtE,YAAY,UAAmD;QAC7D,IAAI,CAAC,YAAY,GAAG,IAAI,0BAA0B,CAAC;YACjD,QAAQ,EAAE,UAAU,CAAC,QAAQ;SAC9B,CAAC,CAAC;QACH,IAAI,CAAC,kBAAkB,GAAG,IAAI,gCAAgC,CAAC;YAC7D,YAAY,EAAE,IAAI,CAAC,YAAY;SAChC,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,MAAM,CACV,gBAAwB,EACxB,QAAwB,EACxB,OAA+C;QAE/C,MAAM,UAAU,GAAG,OAAO,CAAC,kBAAkB,IAAI,QAAQ,CAAC,UAAU,CAAC;QAErE,QAAQ,gBAAgB,EAAE,CAAC;YACzB,KAAK,OAAO,EAAE,CAAC;gBACb,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;YAC9D,CAAC;YACD,KAAK,aAAa,EAAE,CAAC;gBACnB,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;YACpE,CAAC;YACD,SAAS,CAAC;gBACR,MAAM,IAAI,KAAK,CACb,oDAAoD,gBAAgB,EAAE,CACvE,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"sim-cfn-dynamodb-resource-factory.js","sourceRoot":"","sources":["../../../../src/service/dynamodb/cfn/sim-cfn-dynamodb-resource-factory.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,gCAAgC,EAAE,MAAM,yDAAyD,CAAC;AAC3G,OAAO,EAAE,0BAA0B,EAAE,MAAM,2CAA2C,CAAC;AACvF,OAAO,EAAE,6BAA6B,EAAE,MAAM,wCAAwC,CAAC;AAMvF;;GAEG;AACH,MAAM,OAAO,6BAA6B;IACvB,YAAY,CAA6B;IACzC,kBAAkB,CAAmC;IACrD,OAAO,CAAgC;IAExD,YAAY,UAAmD;QAC7D,IAAI,CAAC,YAAY,GAAG,IAAI,0BAA0B,CAAC;YACjD,QAAQ,EAAE,UAAU,CAAC,QAAQ;SAC9B,CAAC,CAAC;QACH,IAAI,CAAC,kBAAkB,GAAG,IAAI,gCAAgC,CAAC;YAC7D,YAAY,EAAE,IAAI,CAAC,YAAY;SAChC,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,GAAG,IAAI,6BAA6B,CAAC;YAC/C,QAAQ,EAAE,UAAU,CAAC,QAAQ;SAC9B,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,MAAM,CACV,gBAAwB,EACxB,QAAwB,EACxB,OAA+C;QAE/C,MAAM,UAAU,GAAG,OAAO,CAAC,kBAAkB,IAAI,QAAQ,CAAC,UAAU,CAAC;QAErE,QAAQ,gBAAgB,EAAE,CAAC;YACzB,KAAK,OAAO,EAAE,CAAC;gBACb,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;YAC9D,CAAC;YACD,KAAK,aAAa,EAAE,CAAC;gBACnB,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;YACpE,CAAC;YACD,SAAS,CAAC;gBACR,MAAM,IAAI,KAAK,CACb,oDAAoD,gBAAgB,EAAE,CACvE,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CACV,gBAAwB,EACxB,QAAwB;QAExB,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;IACxD,CAAC;CACF"}
@@ -0,0 +1,30 @@
1
+ import type { SimCfnResource } from "../../../cloudformation/resource/sim-cfn-resource.js";
2
+ import type { SimIam } from "../../sim-iam.js";
3
+ interface SimCfnIamRoleDeleterProperties {
4
+ readonly iam: SimIam;
5
+ }
6
+ /**
7
+ * Deletes simulated Roles created from AWS::IAM::Role Resources.
8
+ *
9
+ * DeleteRole refuses a Role that still has policies on it, so the Role's
10
+ * policies come off first. Real CloudFormation does the same for the policies
11
+ * it put there itself: a `ManagedPolicyArns` entry is detached and a `Policies`
12
+ * entry removed as part of deleting the Role, rather than being left for the
13
+ * caller to clear up.
14
+ *
15
+ * An AWS::IAM::Policy Resource naming this Role is a separate Resource, and the
16
+ * teardown order takes it off before reaching the Role. Removing whatever is
17
+ * left here covers the policies the Role Resource declared inline.
18
+ */
19
+ export declare class SimCfnIamRoleDeleter {
20
+ private readonly iam;
21
+ constructor(properties: SimCfnIamRoleDeleterProperties);
22
+ /**
23
+ * Delete the Role a CloudFormation Resource created.
24
+ */
25
+ delete(resource: SimCfnResource): Promise<void>;
26
+ private detachPolicies;
27
+ private deleteInlinePolicies;
28
+ }
29
+ export {};
30
+ //# sourceMappingURL=sim-cfn-iam-role-deleter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-iam-role-deleter.d.ts","sourceRoot":"","sources":["../../../../../src/service/iam/cfn/role/sim-cfn-iam-role-deleter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sDAAsD,CAAC;AAC3F,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAI/C,UAAU,8BAA8B;IACtC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;;;;;;GAYG;AACH,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAE7B,YAAY,UAAU,EAAE,8BAA8B,EAErD;IAED;;OAEG;IACG,MAAM,CAAC,QAAQ,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAWpD;YAEa,cAAc;YAUd,oBAAoB;CASnC"}
@@ -0,0 +1,41 @@
1
+ import { assertDefined } from "../../../../util/type-guard/defined.js";
2
+ /**
3
+ * Deletes simulated Roles created from AWS::IAM::Role Resources.
4
+ *
5
+ * DeleteRole refuses a Role that still has policies on it, so the Role's
6
+ * policies come off first. Real CloudFormation does the same for the policies
7
+ * it put there itself: a `ManagedPolicyArns` entry is detached and a `Policies`
8
+ * entry removed as part of deleting the Role, rather than being left for the
9
+ * caller to clear up.
10
+ *
11
+ * An AWS::IAM::Policy Resource naming this Role is a separate Resource, and the
12
+ * teardown order takes it off before reaching the Role. Removing whatever is
13
+ * left here covers the policies the Role Resource declared inline.
14
+ */
15
+ export class SimCfnIamRoleDeleter {
16
+ iam;
17
+ constructor(properties) {
18
+ this.iam = properties.iam;
19
+ }
20
+ /**
21
+ * Delete the Role a CloudFormation Resource created.
22
+ */
23
+ async delete(resource) {
24
+ const role = resource.simResource;
25
+ assertDefined(role, `sim IAM Role for CloudFormation Resource ${resource.logicalId}`);
26
+ await this.detachPolicies(role);
27
+ await this.deleteInlinePolicies(role);
28
+ await this.iam.deleteRole({ input: { RoleName: role.roleName } });
29
+ }
30
+ async detachPolicies(role) {
31
+ await Promise.all([...role.attachedPolicyArns].map(async (policyArn) => this.iam.detachRolePolicy({
32
+ input: { RoleName: role.roleName, PolicyArn: policyArn },
33
+ })));
34
+ }
35
+ async deleteInlinePolicies(role) {
36
+ await Promise.all(role.inlinePolicies.keys().map(async (policyName) => this.iam.deleteRolePolicy({
37
+ input: { RoleName: role.roleName, PolicyName: policyName },
38
+ })));
39
+ }
40
+ }
41
+ //# sourceMappingURL=sim-cfn-iam-role-deleter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-iam-role-deleter.js","sourceRoot":"","sources":["../../../../../src/service/iam/cfn/role/sim-cfn-iam-role-deleter.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAC;AAMvE;;;;;;;;;;;;GAYG;AACH,MAAM,OAAO,oBAAoB;IACd,GAAG,CAAS;IAE7B,YAAY,UAA0C;QACpD,IAAI,CAAC,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CAAC,QAAwB;QACnC,MAAM,IAAI,GAAG,QAAQ,CAAC,WAAqC,CAAC;QAC5D,aAAa,CACX,IAAI,EACJ,4CAA4C,QAAQ,CAAC,SAAS,EAAE,CACjE,CAAC;QAEF,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAChC,MAAM,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;QAEtC,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IACpE,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,IAAgB;QAC3C,MAAM,OAAO,CAAC,GAAG,CACf,CAAC,GAAG,IAAI,CAAC,kBAAkB,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,CACnD,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC;YACxB,KAAK,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE;SACzD,CAAC,CACH,CACF,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAAC,IAAgB;QACjD,MAAM,OAAO,CAAC,GAAG,CACf,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE,CAClD,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC;YACxB,KAAK,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE;SAC3D,CAAC,CACH,CACF,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,29 @@
1
+ import type { SimCfnResource } from "../../cloudformation/resource/sim-cfn-resource.js";
2
+ import type { SimCfnTemplateValueRecord } from "../../cloudformation/template/value/sim-cfn-template-value.js";
3
+ import type { SimIam } from "../sim-iam.js";
4
+ interface SimCfnIamResourceDeleterProperties {
5
+ readonly iam: SimIam;
6
+ }
7
+ /**
8
+ * Deletes the simulated IAM resources a CloudFormation Stack created.
9
+ */
10
+ export declare class SimCfnIamResourceDeleter {
11
+ private readonly iam;
12
+ private readonly roleDeleter;
13
+ constructor(properties: SimCfnIamResourceDeleterProperties);
14
+ /**
15
+ * Delete a simulated IAM resource created from a CloudFormation Resource.
16
+ */
17
+ delete(resourceTypeName: string, resource: SimCfnResource, properties: SimCfnTemplateValueRecord): Promise<void>;
18
+ private deleteManagedPolicy;
19
+ /**
20
+ * Take an AWS::IAM::Policy back off the Roles it was put on.
21
+ *
22
+ * The Resource has no stored object of its own, so the Roles are read from
23
+ * the template the same way creation read them. Their Refs still resolve,
24
+ * because a Role is deleted after the policies naming it.
25
+ */
26
+ private deleteInlinePolicy;
27
+ }
28
+ export {};
29
+ //# sourceMappingURL=sim-cfn-iam-resource-deleter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-iam-resource-deleter.d.ts","sourceRoot":"","sources":["../../../../src/service/iam/cfn/sim-cfn-iam-resource-deleter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mDAAmD,CAAC;AACxF,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,+DAA+D,CAAC;AAC/G,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAK5C,UAAU,kCAAkC;IAC1C,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,qBAAa,wBAAwB;IACnC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAuB;IAEnD,YAAY,UAAU,EAAE,kCAAkC,EAGzD;IAED;;OAEG;IACG,MAAM,CACV,gBAAgB,EAAE,MAAM,EACxB,QAAQ,EAAE,cAAc,EACxB,UAAU,EAAE,yBAAyB,GACpC,OAAO,CAAC,IAAI,CAAC,CAoBf;YAEa,mBAAmB;IAUjC;;;;;;OAMG;YACW,kBAAkB;CAqBjC"}
@@ -0,0 +1,61 @@
1
+ import { SimCfnIamRoleDeleter } from "./role/sim-cfn-iam-role-deleter.js";
2
+ import { assertDefined } from "../../../util/type-guard/defined.js";
3
+ /**
4
+ * Deletes the simulated IAM resources a CloudFormation Stack created.
5
+ */
6
+ export class SimCfnIamResourceDeleter {
7
+ iam;
8
+ roleDeleter;
9
+ constructor(properties) {
10
+ this.iam = properties.iam;
11
+ this.roleDeleter = new SimCfnIamRoleDeleter({ iam: properties.iam });
12
+ }
13
+ /**
14
+ * Delete a simulated IAM resource created from a CloudFormation Resource.
15
+ */
16
+ async delete(resourceTypeName, resource, properties) {
17
+ switch (resourceTypeName) {
18
+ case "ManagedPolicy": {
19
+ await this.deleteManagedPolicy(resource);
20
+ return;
21
+ }
22
+ case "Policy": {
23
+ await this.deleteInlinePolicy(properties);
24
+ return;
25
+ }
26
+ case "Role": {
27
+ await this.roleDeleter.delete(resource);
28
+ return;
29
+ }
30
+ default: {
31
+ throw new Error(`Unsupported sim IAM CloudFormation Resource ${resourceTypeName} deletion`);
32
+ }
33
+ }
34
+ }
35
+ async deleteManagedPolicy(resource) {
36
+ const policy = resource.simResource;
37
+ assertDefined(policy, `sim IAM Managed Policy for CloudFormation Resource ${resource.logicalId}`);
38
+ await this.iam.deletePolicy({ input: { PolicyArn: policy.arn } });
39
+ }
40
+ /**
41
+ * Take an AWS::IAM::Policy back off the Roles it was put on.
42
+ *
43
+ * The Resource has no stored object of its own, so the Roles are read from
44
+ * the template the same way creation read them. Their Refs still resolve,
45
+ * because a Role is deleted after the policies naming it.
46
+ */
47
+ async deleteInlinePolicy(properties) {
48
+ const policyName = properties["PolicyName"];
49
+ const roles = properties["Roles"];
50
+ /* v8 ignore if -- creation refused the Resource if either was missing */
51
+ if (typeof policyName !== "string" || !Array.isArray(roles)) {
52
+ return;
53
+ }
54
+ await Promise.all(roles
55
+ .filter((roleName) => typeof roleName === "string")
56
+ .map(async (roleName) => this.iam.deleteRolePolicy({
57
+ input: { RoleName: roleName, PolicyName: policyName },
58
+ })));
59
+ }
60
+ }
61
+ //# sourceMappingURL=sim-cfn-iam-resource-deleter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-iam-resource-deleter.js","sourceRoot":"","sources":["../../../../src/service/iam/cfn/sim-cfn-iam-resource-deleter.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAMpE;;GAEG;AACH,MAAM,OAAO,wBAAwB;IAClB,GAAG,CAAS;IACZ,WAAW,CAAuB;IAEnD,YAAY,UAA8C;QACxD,IAAI,CAAC,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC;QAC1B,IAAI,CAAC,WAAW,GAAG,IAAI,oBAAoB,CAAC,EAAE,GAAG,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC;IACvE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CACV,gBAAwB,EACxB,QAAwB,EACxB,UAAqC;QAErC,QAAQ,gBAAgB,EAAE,CAAC;YACzB,KAAK,eAAe,EAAE,CAAC;gBACrB,MAAM,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;gBACzC,OAAO;YACT,CAAC;YACD,KAAK,QAAQ,EAAE,CAAC;gBACd,MAAM,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;gBAC1C,OAAO;YACT,CAAC;YACD,KAAK,MAAM,EAAE,CAAC;gBACZ,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACxC,OAAO;YACT,CAAC;YACD,SAAS,CAAC;gBACR,MAAM,IAAI,KAAK,CACb,+CAA+C,gBAAgB,WAAW,CAC3E,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAAC,QAAwB;QACxD,MAAM,MAAM,GAAG,QAAQ,CAAC,WAA8C,CAAC;QACvE,aAAa,CACX,MAAM,EACN,sDAAsD,QAAQ,CAAC,SAAS,EAAE,CAC3E,CAAC;QAEF,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IACpE,CAAC;IAED;;;;;;OAMG;IACK,KAAK,CAAC,kBAAkB,CAC9B,UAAqC;QAErC,MAAM,UAAU,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC;QAC5C,MAAM,KAAK,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;QAElC,yEAAyE;QACzE,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAC5D,OAAO;QACT,CAAC;QAED,MAAM,OAAO,CAAC,GAAG,CACf,KAAK;aACF,MAAM,CAAC,CAAC,QAAQ,EAAsB,EAAE,CAAC,OAAO,QAAQ,KAAK,QAAQ,CAAC;aACtE,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,CACtB,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC;YACxB,KAAK,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE;SACtD,CAAC,CACH,CACJ,CAAC;IACJ,CAAC;CACF"}
@@ -1,6 +1,7 @@
1
1
  import type { SimCfnResource, SimCloudFormationResourceCreateContext } from "../../cloudformation/resource/sim-cfn-resource.js";
2
2
  import type { SimCfnServiceResourceFactory } from "../../cloudformation/resource/factory/sim-cfn-resource-factory.type.js";
3
3
  import type { SimIam } from "../sim-iam.js";
4
+ import type { SimCloudFormationResourceDeleteContext } from "../../cloudformation/resource/sim-cfn-resource.type.js";
4
5
  /**
5
6
  * CloudFormation Resource factory for simulated IAM resources.
6
7
  */
@@ -8,10 +9,15 @@ export declare class SimIamCloudFormationResourceFactory implements SimCfnServic
8
9
  private readonly managedPolicyCreator;
9
10
  private readonly policyCreator;
10
11
  private readonly roleCreator;
12
+ private readonly deleter;
11
13
  constructor(iam: SimIam);
12
14
  /**
13
15
  * Create a simulated IAM resource from a CloudFormation Resource.
14
16
  */
15
17
  create(resourceTypeName: string, resource: SimCfnResource, context: SimCloudFormationResourceCreateContext): Promise<object | undefined>;
18
+ /**
19
+ * Delete a simulated IAM resource created from a CloudFormation Resource.
20
+ */
21
+ delete(resourceTypeName: string, resource: SimCfnResource, context: SimCloudFormationResourceDeleteContext): Promise<void>;
16
22
  }
17
23
  //# sourceMappingURL=sim-cfn-iam-resource-factory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sim-cfn-iam-resource-factory.d.ts","sourceRoot":"","sources":["../../../../src/service/iam/cfn/sim-cfn-iam-resource-factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,sCAAsC,EACvC,MAAM,mDAAmD,CAAC;AAC3D,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,wEAAwE,CAAC;AAC3H,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAK5C;;GAEG;AACH,qBAAa,mCAAoC,YAAW,4BAA4B;IACtF,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAgC;IACrE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAyB;IACvD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAuB;IAEnD,YAAY,GAAG,EAAE,MAAM,EAItB;IAED;;OAEG;IACG,MAAM,CACV,gBAAgB,EAAE,MAAM,EACxB,QAAQ,EAAE,cAAc,EACxB,OAAO,EAAE,sCAAsC,GAC9C,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CA2B7B;CACF"}
1
+ {"version":3,"file":"sim-cfn-iam-resource-factory.d.ts","sourceRoot":"","sources":["../../../../src/service/iam/cfn/sim-cfn-iam-resource-factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,sCAAsC,EACvC,MAAM,mDAAmD,CAAC;AAC3D,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,wEAAwE,CAAC;AAC3H,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAK5C,OAAO,KAAK,EAAE,sCAAsC,EAAE,MAAM,wDAAwD,CAAC;AAErH;;GAEG;AACH,qBAAa,mCAAoC,YAAW,4BAA4B;IACtF,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAgC;IACrE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAyB;IACvD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAuB;IACnD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA2B;IAEnD,YAAY,GAAG,EAAE,MAAM,EAKtB;IAED;;OAEG;IACG,MAAM,CACV,gBAAgB,EAAE,MAAM,EACxB,QAAQ,EAAE,cAAc,EACxB,OAAO,EAAE,sCAAsC,GAC9C,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CA2B7B;IAED;;OAEG;IACG,MAAM,CACV,gBAAgB,EAAE,MAAM,EACxB,QAAQ,EAAE,cAAc,EACxB,OAAO,EAAE,sCAAsC,GAC9C,OAAO,CAAC,IAAI,CAAC,CAMf;CACF"}
@@ -1,6 +1,7 @@
1
1
  import { SimCfnIamManagedPolicyCreator } from "./managed-policy/sim-cfn-iam-managed-policy-creator.js";
2
2
  import { SimCfnIamPolicyCreator } from "./policy/sim-cfn-iam-policy-creator.js";
3
3
  import { SimCfnIamRoleCreator } from "./role/sim-cfn-iam-role-creator.js";
4
+ import { SimCfnIamResourceDeleter } from "./sim-cfn-iam-resource-deleter.js";
4
5
  /**
5
6
  * CloudFormation Resource factory for simulated IAM resources.
6
7
  */
@@ -8,10 +9,12 @@ export class SimIamCloudFormationResourceFactory {
8
9
  managedPolicyCreator;
9
10
  policyCreator;
10
11
  roleCreator;
12
+ deleter;
11
13
  constructor(iam) {
12
14
  this.managedPolicyCreator = new SimCfnIamManagedPolicyCreator({ iam });
13
15
  this.policyCreator = new SimCfnIamPolicyCreator({ iam });
14
16
  this.roleCreator = new SimCfnIamRoleCreator({ iam });
17
+ this.deleter = new SimCfnIamResourceDeleter({ iam });
15
18
  }
16
19
  /**
17
20
  * Create a simulated IAM resource from a CloudFormation Resource.
@@ -33,5 +36,11 @@ export class SimIamCloudFormationResourceFactory {
33
36
  }
34
37
  }
35
38
  }
39
+ /**
40
+ * Delete a simulated IAM resource created from a CloudFormation Resource.
41
+ */
42
+ async delete(resourceTypeName, resource, context) {
43
+ await this.deleter.delete(resourceTypeName, resource, context.resolvedProperties ?? resource.properties);
44
+ }
36
45
  }
37
46
  //# sourceMappingURL=sim-cfn-iam-resource-factory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sim-cfn-iam-resource-factory.js","sourceRoot":"","sources":["../../../../src/service/iam/cfn/sim-cfn-iam-resource-factory.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,6BAA6B,EAAE,MAAM,wDAAwD,CAAC;AACvG,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAE1E;;GAEG;AACH,MAAM,OAAO,mCAAmC;IAC7B,oBAAoB,CAAgC;IACpD,aAAa,CAAyB;IACtC,WAAW,CAAuB;IAEnD,YAAY,GAAW;QACrB,IAAI,CAAC,oBAAoB,GAAG,IAAI,6BAA6B,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;QACvE,IAAI,CAAC,aAAa,GAAG,IAAI,sBAAsB,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;QACzD,IAAI,CAAC,WAAW,GAAG,IAAI,oBAAoB,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IACvD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CACV,gBAAwB,EACxB,QAAwB,EACxB,OAA+C;QAE/C,QAAQ,gBAAgB,EAAE,CAAC;YACzB,KAAK,eAAe,EAAE,CAAC;gBACrB,OAAO,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAC3C,QAAQ,EACR,OAAO,CAAC,kBAAkB,IAAI,QAAQ,CAAC,UAAU,CAClD,CAAC;YACJ,CAAC;YACD,KAAK,QAAQ,EAAE,CAAC;gBACd,MAAM,IAAI,CAAC,aAAa,CAAC,MAAM,CAC7B,QAAQ,EACR,OAAO,CAAC,kBAAkB,IAAI,QAAQ,CAAC,UAAU,CAClD,CAAC;gBACF,OAAO;YACT,CAAC;YACD,KAAK,MAAM,EAAE,CAAC;gBACZ,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAClC,QAAQ,EACR,OAAO,CAAC,kBAAkB,IAAI,QAAQ,CAAC,UAAU,CAClD,CAAC;YACJ,CAAC;YACD,SAAS,CAAC;gBACR,MAAM,IAAI,KAAK,CACb,+CAA+C,gBAAgB,EAAE,CAClE,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"sim-cfn-iam-resource-factory.js","sourceRoot":"","sources":["../../../../src/service/iam/cfn/sim-cfn-iam-resource-factory.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,6BAA6B,EAAE,MAAM,wDAAwD,CAAC;AACvG,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAG7E;;GAEG;AACH,MAAM,OAAO,mCAAmC;IAC7B,oBAAoB,CAAgC;IACpD,aAAa,CAAyB;IACtC,WAAW,CAAuB;IAClC,OAAO,CAA2B;IAEnD,YAAY,GAAW;QACrB,IAAI,CAAC,oBAAoB,GAAG,IAAI,6BAA6B,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;QACvE,IAAI,CAAC,aAAa,GAAG,IAAI,sBAAsB,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;QACzD,IAAI,CAAC,WAAW,GAAG,IAAI,oBAAoB,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;QACrD,IAAI,CAAC,OAAO,GAAG,IAAI,wBAAwB,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IACvD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CACV,gBAAwB,EACxB,QAAwB,EACxB,OAA+C;QAE/C,QAAQ,gBAAgB,EAAE,CAAC;YACzB,KAAK,eAAe,EAAE,CAAC;gBACrB,OAAO,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAC3C,QAAQ,EACR,OAAO,CAAC,kBAAkB,IAAI,QAAQ,CAAC,UAAU,CAClD,CAAC;YACJ,CAAC;YACD,KAAK,QAAQ,EAAE,CAAC;gBACd,MAAM,IAAI,CAAC,aAAa,CAAC,MAAM,CAC7B,QAAQ,EACR,OAAO,CAAC,kBAAkB,IAAI,QAAQ,CAAC,UAAU,CAClD,CAAC;gBACF,OAAO;YACT,CAAC;YACD,KAAK,MAAM,EAAE,CAAC;gBACZ,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAClC,QAAQ,EACR,OAAO,CAAC,kBAAkB,IAAI,QAAQ,CAAC,UAAU,CAClD,CAAC;YACJ,CAAC;YACD,SAAS,CAAC;gBACR,MAAM,IAAI,KAAK,CACb,+CAA+C,gBAAgB,EAAE,CAClE,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CACV,gBAAwB,EACxB,QAAwB,EACxB,OAA+C;QAE/C,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CACvB,gBAAgB,EAChB,QAAQ,EACR,OAAO,CAAC,kBAAkB,IAAI,QAAQ,CAAC,UAAU,CAClD,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,23 @@
1
+ import type { SimCfnResource } from "../../cloudformation/resource/sim-cfn-resource.js";
2
+ import type { SimKms } from "../sim-kms.js";
3
+ interface SimCfnKmsResourceDeleterProperties {
4
+ readonly kms: SimKms;
5
+ }
6
+ /**
7
+ * Deletes the simulated KMS resources a CloudFormation Stack created.
8
+ *
9
+ * KMS has no DeleteKey. A key is scheduled for deletion and sits in
10
+ * `PendingDeletion` until the window runs out, so that is what a Stack deletion
11
+ * leaves behind: a key that is still there and can no longer be used. Anything
12
+ * expecting the key to be gone is expecting something KMS does not do.
13
+ */
14
+ export declare class SimCfnKmsResourceDeleter {
15
+ private readonly kms;
16
+ constructor(properties: SimCfnKmsResourceDeleterProperties);
17
+ /**
18
+ * Delete a simulated KMS resource created from a CloudFormation Resource.
19
+ */
20
+ delete(resourceTypeName: string, resource: SimCfnResource): Promise<void>;
21
+ }
22
+ export {};
23
+ //# sourceMappingURL=sim-cfn-kms-resource-deleter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-kms-resource-deleter.d.ts","sourceRoot":"","sources":["../../../../src/service/kms/cfn/sim-cfn-kms-resource-deleter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mDAAmD,CAAC;AACxF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAK5C,UAAU,kCAAkC;IAC1C,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;GAOG;AACH,qBAAa,wBAAwB;IACnC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAE7B,YAAY,UAAU,EAAE,kCAAkC,EAEzD;IAED;;OAEG;IACG,MAAM,CACV,gBAAgB,EAAE,MAAM,EACxB,QAAQ,EAAE,cAAc,GACvB,OAAO,CAAC,IAAI,CAAC,CAgCf;CACF"}
@@ -0,0 +1,40 @@
1
+ import { assertDefined } from "../../../util/type-guard/defined.js";
2
+ /**
3
+ * Deletes the simulated KMS resources a CloudFormation Stack created.
4
+ *
5
+ * KMS has no DeleteKey. A key is scheduled for deletion and sits in
6
+ * `PendingDeletion` until the window runs out, so that is what a Stack deletion
7
+ * leaves behind: a key that is still there and can no longer be used. Anything
8
+ * expecting the key to be gone is expecting something KMS does not do.
9
+ */
10
+ export class SimCfnKmsResourceDeleter {
11
+ kms;
12
+ constructor(properties) {
13
+ this.kms = properties.kms;
14
+ }
15
+ /**
16
+ * Delete a simulated KMS resource created from a CloudFormation Resource.
17
+ */
18
+ async delete(resourceTypeName, resource) {
19
+ switch (resourceTypeName) {
20
+ case "Key": {
21
+ const key = resource.simResource;
22
+ assertDefined(key, `sim KMS Key for CloudFormation Resource ${resource.logicalId}`);
23
+ await this.kms.scheduleKeyDeletion({ input: { KeyId: key.keyId } });
24
+ return;
25
+ }
26
+ case "Alias": {
27
+ const alias = resource.simResource;
28
+ assertDefined(alias, `sim KMS Alias for CloudFormation Resource ${resource.logicalId}`);
29
+ await this.kms.deleteAlias({
30
+ input: { AliasName: alias.aliasName },
31
+ });
32
+ return;
33
+ }
34
+ default: {
35
+ throw new Error(`Unsupported sim KMS CloudFormation Resource ${resourceTypeName} deletion`);
36
+ }
37
+ }
38
+ }
39
+ }
40
+ //# sourceMappingURL=sim-cfn-kms-resource-deleter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-kms-resource-deleter.js","sourceRoot":"","sources":["../../../../src/service/kms/cfn/sim-cfn-kms-resource-deleter.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAMpE;;;;;;;GAOG;AACH,MAAM,OAAO,wBAAwB;IAClB,GAAG,CAAS;IAE7B,YAAY,UAA8C;QACxD,IAAI,CAAC,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CACV,gBAAwB,EACxB,QAAwB;QAExB,QAAQ,gBAAgB,EAAE,CAAC;YACzB,KAAK,KAAK,EAAE,CAAC;gBACX,MAAM,GAAG,GAAG,QAAQ,CAAC,WAAoC,CAAC;gBAC1D,aAAa,CACX,GAAG,EACH,2CAA2C,QAAQ,CAAC,SAAS,EAAE,CAChE,CAAC;gBAEF,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBAEpE,OAAO;YACT,CAAC;YACD,KAAK,OAAO,EAAE,CAAC;gBACb,MAAM,KAAK,GAAG,QAAQ,CAAC,WAAsC,CAAC;gBAC9D,aAAa,CACX,KAAK,EACL,6CAA6C,QAAQ,CAAC,SAAS,EAAE,CAClE,CAAC;gBAEF,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC;oBACzB,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE;iBACtC,CAAC,CAAC;gBAEH,OAAO;YACT,CAAC;YACD,SAAS,CAAC;gBACR,MAAM,IAAI,KAAK,CACb,+CAA+C,gBAAgB,WAAW,CAC3E,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;CACF"}
@@ -10,6 +10,7 @@ interface SimKmsCfnResourceFactoryProperties {
10
10
  export declare class SimKmsCfnResourceFactory implements SimCfnServiceResourceFactory {
11
11
  private readonly keyCreator;
12
12
  private readonly aliasCreator;
13
+ private readonly deleter;
13
14
  constructor(properties: SimKmsCfnResourceFactoryProperties);
14
15
  /**
15
16
  * Create a simulated KMS resource from a CloudFormation Resource.
@@ -18,6 +19,10 @@ export declare class SimKmsCfnResourceFactory implements SimCfnServiceResourceFa
18
19
  * reported as unsupported rather than quietly treated as deployed.
19
20
  */
20
21
  create(resourceTypeName: string, resource: SimCfnResource, context: SimCloudFormationResourceCreateContext): Promise<object | undefined>;
22
+ /**
23
+ * Delete a simulated KMS resource created from a CloudFormation Resource.
24
+ */
25
+ delete(resourceTypeName: string, resource: SimCfnResource): Promise<void>;
21
26
  }
22
27
  export {};
23
28
  //# sourceMappingURL=sim-cfn-kms-resource-factory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sim-cfn-kms-resource-factory.d.ts","sourceRoot":"","sources":["../../../../src/service/kms/cfn/sim-cfn-kms-resource-factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,wEAAwE,CAAC;AAC3H,OAAO,KAAK,EACV,cAAc,EACd,sCAAsC,EACvC,MAAM,mDAAmD,CAAC;AAC3D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAI5C,UAAU,kCAAkC;IAC1C,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,qBAAa,wBAAyB,YAAW,4BAA4B;IAC3E,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAsB;IACjD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAwB;IAErD,YAAY,UAAU,EAAE,kCAAkC,EAGzD;IAED;;;;;OAKG;IACG,MAAM,CACV,gBAAgB,EAAE,MAAM,EACxB,QAAQ,EAAE,cAAc,EACxB,OAAO,EAAE,sCAAsC,GAC9C,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAgB7B;CACF"}
1
+ {"version":3,"file":"sim-cfn-kms-resource-factory.d.ts","sourceRoot":"","sources":["../../../../src/service/kms/cfn/sim-cfn-kms-resource-factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,wEAAwE,CAAC;AAC3H,OAAO,KAAK,EACV,cAAc,EACd,sCAAsC,EACvC,MAAM,mDAAmD,CAAC;AAC3D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAK5C,UAAU,kCAAkC;IAC1C,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,qBAAa,wBAAyB,YAAW,4BAA4B;IAC3E,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAsB;IACjD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAwB;IACrD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA2B;IAEnD,YAAY,UAAU,EAAE,kCAAkC,EAIzD;IAED;;;;;OAKG;IACG,MAAM,CACV,gBAAgB,EAAE,MAAM,EACxB,QAAQ,EAAE,cAAc,EACxB,OAAO,EAAE,sCAAsC,GAC9C,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAgB7B;IAED;;OAEG;IACG,MAAM,CACV,gBAAgB,EAAE,MAAM,EACxB,QAAQ,EAAE,cAAc,GACvB,OAAO,CAAC,IAAI,CAAC,CAEf;CACF"}
@@ -1,14 +1,17 @@
1
1
  import { SimCfnKmsAliasCreator } from "./alias/sim-cfn-kms-alias-creator.js";
2
2
  import { SimCfnKmsKeyCreator } from "./key/sim-cfn-kms-key-creator.js";
3
+ import { SimCfnKmsResourceDeleter } from "./sim-cfn-kms-resource-deleter.js";
3
4
  /**
4
5
  * CloudFormation Resource factory for simulated KMS resources.
5
6
  */
6
7
  export class SimKmsCfnResourceFactory {
7
8
  keyCreator;
8
9
  aliasCreator;
10
+ deleter;
9
11
  constructor(properties) {
10
12
  this.keyCreator = new SimCfnKmsKeyCreator({ kms: properties.kms });
11
13
  this.aliasCreator = new SimCfnKmsAliasCreator({ kms: properties.kms });
14
+ this.deleter = new SimCfnKmsResourceDeleter({ kms: properties.kms });
12
15
  }
13
16
  /**
14
17
  * Create a simulated KMS resource from a CloudFormation Resource.
@@ -30,5 +33,11 @@ export class SimKmsCfnResourceFactory {
30
33
  }
31
34
  }
32
35
  }
36
+ /**
37
+ * Delete a simulated KMS resource created from a CloudFormation Resource.
38
+ */
39
+ async delete(resourceTypeName, resource) {
40
+ await this.deleter.delete(resourceTypeName, resource);
41
+ }
33
42
  }
34
43
  //# sourceMappingURL=sim-cfn-kms-resource-factory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sim-cfn-kms-resource-factory.js","sourceRoot":"","sources":["../../../../src/service/kms/cfn/sim-cfn-kms-resource-factory.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAMvE;;GAEG;AACH,MAAM,OAAO,wBAAwB;IAClB,UAAU,CAAsB;IAChC,YAAY,CAAwB;IAErD,YAAY,UAA8C;QACxD,IAAI,CAAC,UAAU,GAAG,IAAI,mBAAmB,CAAC,EAAE,GAAG,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC;QACnE,IAAI,CAAC,YAAY,GAAG,IAAI,qBAAqB,CAAC,EAAE,GAAG,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC;IACzE,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,MAAM,CACV,gBAAwB,EACxB,QAAwB,EACxB,OAA+C;QAE/C,MAAM,UAAU,GAAG,OAAO,CAAC,kBAAkB,IAAI,QAAQ,CAAC,UAAU,CAAC;QAErE,QAAQ,gBAAgB,EAAE,CAAC;YACzB,KAAK,KAAK,EAAE,CAAC;gBACX,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;YAC5D,CAAC;YACD,KAAK,OAAO,EAAE,CAAC;gBACb,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;YAC9D,CAAC;YACD,SAAS,CAAC;gBACR,MAAM,IAAI,KAAK,CACb,+CAA+C,gBAAgB,EAAE,CAClE,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"sim-cfn-kms-resource-factory.js","sourceRoot":"","sources":["../../../../src/service/kms/cfn/sim-cfn-kms-resource-factory.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAM7E;;GAEG;AACH,MAAM,OAAO,wBAAwB;IAClB,UAAU,CAAsB;IAChC,YAAY,CAAwB;IACpC,OAAO,CAA2B;IAEnD,YAAY,UAA8C;QACxD,IAAI,CAAC,UAAU,GAAG,IAAI,mBAAmB,CAAC,EAAE,GAAG,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC;QACnE,IAAI,CAAC,YAAY,GAAG,IAAI,qBAAqB,CAAC,EAAE,GAAG,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC;QACvE,IAAI,CAAC,OAAO,GAAG,IAAI,wBAAwB,CAAC,EAAE,GAAG,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC;IACvE,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,MAAM,CACV,gBAAwB,EACxB,QAAwB,EACxB,OAA+C;QAE/C,MAAM,UAAU,GAAG,OAAO,CAAC,kBAAkB,IAAI,QAAQ,CAAC,UAAU,CAAC;QAErE,QAAQ,gBAAgB,EAAE,CAAC;YACzB,KAAK,KAAK,EAAE,CAAC;gBACX,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;YAC5D,CAAC;YACD,KAAK,OAAO,EAAE,CAAC;gBACb,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;YAC9D,CAAC;YACD,SAAS,CAAC;gBACR,MAAM,IAAI,KAAK,CACb,+CAA+C,gBAAgB,EAAE,CAClE,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CACV,gBAAwB,EACxB,QAAwB;QAExB,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;IACxD,CAAC;CACF"}
@@ -0,0 +1,33 @@
1
+ import type { SimCfnResource } from "../../cloudformation/resource/sim-cfn-resource.js";
2
+ import type { SimLambda } from "../sim-lambda.js";
3
+ interface SimCfnLambdaResourceDeleterProperties {
4
+ readonly lambda: SimLambda;
5
+ }
6
+ /**
7
+ * Deletes the simulated Lambda resources a CloudFormation Stack created.
8
+ *
9
+ * Each Resource type is addressed by what its creation produced, so a URL and a
10
+ * permission are removed from the function they were put on rather than from
11
+ * the function name the template happened to write.
12
+ */
13
+ export declare class SimCfnLambdaResourceDeleter {
14
+ private readonly lambda;
15
+ constructor(properties: SimCfnLambdaResourceDeleterProperties);
16
+ /**
17
+ * Delete a simulated Lambda resource created from a CloudFormation Resource.
18
+ */
19
+ delete(resourceTypeName: string, resource: SimCfnResource): Promise<void>;
20
+ private deleteFunction;
21
+ private deleteFunctionUrl;
22
+ private deleteEventSourceMapping;
23
+ /**
24
+ * Take a permission back off the function it was added to.
25
+ *
26
+ * The statement is named after the Resource's logical ID when it is added,
27
+ * because AWS::Lambda::Permission has no StatementId property, so that is
28
+ * what addresses it again here.
29
+ */
30
+ private removePermission;
31
+ }
32
+ export {};
33
+ //# sourceMappingURL=sim-cfn-lambda-resource-deleter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-lambda-resource-deleter.d.ts","sourceRoot":"","sources":["../../../../src/service/lambda/cfn/sim-cfn-lambda-resource-deleter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mDAAmD,CAAC;AACxF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAQlD,UAAU,qCAAqC;IAC7C,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;CAC5B;AAED;;;;;;GAMG;AACH,qBAAa,2BAA2B;IACtC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAY;IAEnC,YAAY,UAAU,EAAE,qCAAqC,EAE5D;IAED;;OAEG;IACG,MAAM,CACV,gBAAgB,EAAE,MAAM,EACxB,QAAQ,EAAE,cAAc,GACvB,OAAO,CAAC,IAAI,CAAC,CAwBf;YAEa,cAAc;YAYd,iBAAiB;YAajB,wBAAwB;IAetC;;;;;;OAMG;YACW,gBAAgB;CAc/B"}
@@ -0,0 +1,80 @@
1
+ import { assertDefined } from "../../../util/type-guard/defined.js";
2
+ import { simCfnLambdaTargetFunctionName } from "./function/sim-cfn-lambda-target-function.js";
3
+ /**
4
+ * Deletes the simulated Lambda resources a CloudFormation Stack created.
5
+ *
6
+ * Each Resource type is addressed by what its creation produced, so a URL and a
7
+ * permission are removed from the function they were put on rather than from
8
+ * the function name the template happened to write.
9
+ */
10
+ export class SimCfnLambdaResourceDeleter {
11
+ lambda;
12
+ constructor(properties) {
13
+ this.lambda = properties.lambda;
14
+ }
15
+ /**
16
+ * Delete a simulated Lambda resource created from a CloudFormation Resource.
17
+ */
18
+ async delete(resourceTypeName, resource) {
19
+ switch (resourceTypeName) {
20
+ case "Function": {
21
+ await this.deleteFunction(resource);
22
+ return;
23
+ }
24
+ case "Url": {
25
+ await this.deleteFunctionUrl(resource);
26
+ return;
27
+ }
28
+ case "EventSourceMapping": {
29
+ await this.deleteEventSourceMapping(resource);
30
+ return;
31
+ }
32
+ case "Permission": {
33
+ await this.removePermission(resource);
34
+ return;
35
+ }
36
+ default: {
37
+ throw new Error(`Unsupported sim Lambda CloudFormation Resource ${resourceTypeName} deletion`);
38
+ }
39
+ }
40
+ }
41
+ async deleteFunction(resource) {
42
+ const simFunction = resource.simResource;
43
+ assertDefined(simFunction, `sim Lambda Function for CloudFormation Resource ${resource.logicalId}`);
44
+ await this.lambda.deleteFunction({
45
+ input: { FunctionName: simFunction.name },
46
+ });
47
+ }
48
+ async deleteFunctionUrl(resource) {
49
+ const functionUrl = resource.simResource;
50
+ assertDefined(functionUrl, `sim Lambda Function URL for CloudFormation Resource ${resource.logicalId}`);
51
+ await this.lambda.deleteFunctionUrlConfig({
52
+ input: { FunctionName: functionUrl.functionName },
53
+ });
54
+ }
55
+ async deleteEventSourceMapping(resource) {
56
+ const mapping = resource.simResource;
57
+ assertDefined(mapping, `sim Lambda event source mapping for CloudFormation Resource ${resource.logicalId}`);
58
+ await this.lambda.deleteEventSourceMapping({
59
+ input: { UUID: mapping.uuid },
60
+ });
61
+ }
62
+ /**
63
+ * Take a permission back off the function it was added to.
64
+ *
65
+ * The statement is named after the Resource's logical ID when it is added,
66
+ * because AWS::Lambda::Permission has no StatementId property, so that is
67
+ * what addresses it again here.
68
+ */
69
+ async removePermission(resource) {
70
+ const permission = resource.simResource;
71
+ assertDefined(permission, `sim Lambda permission for CloudFormation Resource ${resource.logicalId}`);
72
+ await this.lambda.removePermission({
73
+ input: {
74
+ FunctionName: simCfnLambdaTargetFunctionName(permission.resourceArn),
75
+ StatementId: permission.statementId,
76
+ },
77
+ });
78
+ }
79
+ }
80
+ //# sourceMappingURL=sim-cfn-lambda-resource-deleter.js.map