@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,39 @@
1
+ import type { Server } from "node:http";
2
+ interface NodeServerPortBinderProperties {
3
+ readonly server: Server;
4
+ readonly address?: string;
5
+ readonly waitMs?: number;
6
+ readonly waitIntervalMs?: number;
7
+ }
8
+ /**
9
+ * Binds a Node HTTP server to a port, waiting out a port that is still held.
10
+ *
11
+ * Restarting local development overlaps the process being replaced: the
12
+ * outgoing one is still letting go of its listening socket while the incoming
13
+ * one asks for the same number. Giving up on the first `EADDRINUSE` makes that
14
+ * overlap fatal and loses the pinned port, so the bind is retried for a short
15
+ * bounded period first. The bound is finite because a port held by an unrelated
16
+ * process is never going to come free, and waiting forever would hide that.
17
+ */
18
+ export declare class NodeServerPortBinder {
19
+ private readonly server;
20
+ private readonly address;
21
+ private readonly waitMs;
22
+ private readonly waitIntervalMs;
23
+ constructor(properties: NodeServerPortBinderProperties);
24
+ /**
25
+ * Start listening on the given port, waiting briefly for another listener to
26
+ * release it. Port zero asks the operating system for a free port, so it
27
+ * never waits.
28
+ */
29
+ bind(port: number): Promise<void>;
30
+ /**
31
+ * Try to bind once, and try again later if the port is only busy for now.
32
+ *
33
+ * A listen that failed leaves the server without a handle, so a later attempt
34
+ * is an ordinary fresh listen on the same server rather than a reopening.
35
+ */
36
+ private attempt;
37
+ }
38
+ export {};
39
+ //# sourceMappingURL=node-server-port-binder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-server-port-binder.d.ts","sourceRoot":"","sources":["../../../../src/serve/http/local-server/node-server-port-binder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAKxC,UAAU,8BAA8B;IACtC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;CAClC;AAED;;;;;;;;;GASG;AACH,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IAExC,YAAY,UAAU,EAAE,8BAA8B,EAWrD;IAED;;;;OAIG;IACG,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEtC;IAED;;;;;OAKG;YACW,OAAO;CAiBtB"}
@@ -0,0 +1,71 @@
1
+ import { simAwsLocalConfig } from "./sim-aws-local.config.js";
2
+ import { SimAwsLocalPortInUse } from "./sim-aws-local-port.error.js";
3
+ import { waitNodeServerListen } from "./wait-node-server-listen.js";
4
+ /**
5
+ * Binds a Node HTTP server to a port, waiting out a port that is still held.
6
+ *
7
+ * Restarting local development overlaps the process being replaced: the
8
+ * outgoing one is still letting go of its listening socket while the incoming
9
+ * one asks for the same number. Giving up on the first `EADDRINUSE` makes that
10
+ * overlap fatal and loses the pinned port, so the bind is retried for a short
11
+ * bounded period first. The bound is finite because a port held by an unrelated
12
+ * process is never going to come free, and waiting forever would hide that.
13
+ */
14
+ export class NodeServerPortBinder {
15
+ server;
16
+ address;
17
+ waitMs;
18
+ waitIntervalMs;
19
+ constructor(properties) {
20
+ const { server, address = simAwsLocalConfig.loopbackAddress, waitMs = simAwsLocalConfig.portWaitMs, waitIntervalMs = simAwsLocalConfig.portWaitIntervalMs, } = properties;
21
+ this.server = server;
22
+ this.address = address;
23
+ this.waitMs = waitMs;
24
+ this.waitIntervalMs = waitIntervalMs;
25
+ }
26
+ /**
27
+ * Start listening on the given port, waiting briefly for another listener to
28
+ * release it. Port zero asks the operating system for a free port, so it
29
+ * never waits.
30
+ */
31
+ async bind(port) {
32
+ await this.attempt(port, Date.now() + this.waitMs);
33
+ }
34
+ /**
35
+ * Try to bind once, and try again later if the port is only busy for now.
36
+ *
37
+ * A listen that failed leaves the server without a handle, so a later attempt
38
+ * is an ordinary fresh listen on the same server rather than a reopening.
39
+ */
40
+ async attempt(port, giveUpAt) {
41
+ try {
42
+ this.server.listen(port, this.address);
43
+ await waitNodeServerListen(this.server);
44
+ }
45
+ catch (error) {
46
+ if (!isPortInUse(error)) {
47
+ throw error;
48
+ }
49
+ if (Date.now() >= giveUpAt) {
50
+ throw new SimAwsLocalPortInUse(port, this.waitMs);
51
+ }
52
+ await pause(this.waitIntervalMs);
53
+ await this.attempt(port, giveUpAt);
54
+ }
55
+ }
56
+ }
57
+ /**
58
+ * Recognise the one listen failure that is worth waiting out.
59
+ */
60
+ function isPortInUse(error) {
61
+ return (error instanceof Error && "code" in error && error.code === "EADDRINUSE");
62
+ }
63
+ /**
64
+ * Wait before the next attempt.
65
+ */
66
+ async function pause(milliseconds) {
67
+ await new Promise((resolve) => {
68
+ setTimeout(resolve, milliseconds);
69
+ });
70
+ }
71
+ //# sourceMappingURL=node-server-port-binder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-server-port-binder.js","sourceRoot":"","sources":["../../../../src/serve/http/local-server/node-server-port-binder.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AASpE;;;;;;;;;GASG;AACH,MAAM,OAAO,oBAAoB;IACd,MAAM,CAAS;IACf,OAAO,CAAS;IAChB,MAAM,CAAS;IACf,cAAc,CAAS;IAExC,YAAY,UAA0C;QACpD,MAAM,EACJ,MAAM,EACN,OAAO,GAAG,iBAAiB,CAAC,eAAe,EAC3C,MAAM,GAAG,iBAAiB,CAAC,UAAU,EACrC,cAAc,GAAG,iBAAiB,CAAC,kBAAkB,GACtD,GAAG,UAAU,CAAC;QACf,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;IACvC,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,IAAI,CAAC,IAAY;QACrB,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;IACrD,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,OAAO,CAAC,IAAY,EAAE,QAAgB;QAClD,IAAI,CAAC;YACH,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YACvC,MAAM,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;gBACxB,MAAM,KAAK,CAAC;YACd,CAAC;YAED,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,QAAQ,EAAE,CAAC;gBAC3B,MAAM,IAAI,oBAAoB,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YACpD,CAAC;YAED,MAAM,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YACjC,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;CACF;AAED;;GAEG;AACH,SAAS,WAAW,CAAC,KAAc;IACjC,OAAO,CACL,KAAK,YAAY,KAAK,IAAI,MAAM,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,CACzE,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,KAAK,CAAC,YAAoB;IACvC,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC5B,UAAU,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,10 @@
1
+ import type { Server } from "node:http";
2
+ /**
3
+ * Read the TCP port a Node server took.
4
+ *
5
+ * A server that has not started listening has no port, and one listening on a
6
+ * Unix socket has an address that is not a port at all. Neither is a number to
7
+ * return, so both are refused rather than guessed at.
8
+ */
9
+ export declare function nodeServerPort(server: Server): string;
10
+ //# sourceMappingURL=node-server-port.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-server-port.d.ts","sourceRoot":"","sources":["../../../../src/serve/http/local-server/node-server-port.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAExC;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAarD"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Read the TCP port a Node server took.
3
+ *
4
+ * A server that has not started listening has no port, and one listening on a
5
+ * Unix socket has an address that is not a port at all. Neither is a number to
6
+ * return, so both are refused rather than guessed at.
7
+ */
8
+ export function nodeServerPort(server) {
9
+ if (!server.listening) {
10
+ throw new Error("Server is not yet listening, cannot get port number");
11
+ }
12
+ const address = server.address();
13
+ /* v8 ignore if -- does not happen in practice */
14
+ if (address === null || typeof address === "string") {
15
+ throw new Error("Expected local HTTP server to listen on a TCP port");
16
+ }
17
+ return String(address.port);
18
+ }
19
+ //# sourceMappingURL=node-server-port.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-server-port.js","sourceRoot":"","sources":["../../../../src/serve/http/local-server/node-server-port.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAAC,MAAc;IAC3C,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACzE,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;IAEjC,iDAAiD;IACjD,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QACpD,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACxE,CAAC;IAED,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AAC9B,CAAC"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Thrown when a port stays held by another listener for the whole wait.
3
+ *
4
+ * A local development restart usually overlaps the process it replaces, so a
5
+ * pinned port being busy for a moment is expected and is waited out. Still
6
+ * being busy at the end of that wait means something else owns the port, which
7
+ * no amount of further waiting will fix.
8
+ */
9
+ export declare class SimAwsLocalPortInUse extends Error {
10
+ readonly name = "SimAwsLocalPortInUse";
11
+ constructor(port: number, waitedMs: number);
12
+ }
13
+ //# sourceMappingURL=sim-aws-local-port.error.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-aws-local-port.error.d.ts","sourceRoot":"","sources":["../../../../src/serve/http/local-server/sim-aws-local-port.error.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,qBAAa,oBAAqB,SAAQ,KAAK;IAC7C,SAAyB,IAAI,0BAA0B;IAEvD,YAAY,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAKzC;CACF"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Thrown when a port stays held by another listener for the whole wait.
3
+ *
4
+ * A local development restart usually overlaps the process it replaces, so a
5
+ * pinned port being busy for a moment is expected and is waited out. Still
6
+ * being busy at the end of that wait means something else owns the port, which
7
+ * no amount of further waiting will fix.
8
+ */
9
+ export class SimAwsLocalPortInUse extends Error {
10
+ name = "SimAwsLocalPortInUse";
11
+ constructor(port, waitedMs) {
12
+ super(`Port ${String(port)} is held by another listener. ` +
13
+ `It was still held after waiting ${String(waitedMs)}ms for it to be released.`);
14
+ }
15
+ }
16
+ //# sourceMappingURL=sim-aws-local-port.error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-aws-local-port.error.js","sourceRoot":"","sources":["../../../../src/serve/http/local-server/sim-aws-local-port.error.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,OAAO,oBAAqB,SAAQ,KAAK;IACpB,IAAI,GAAG,sBAAsB,CAAC;IAEvD,YAAY,IAAY,EAAE,QAAgB;QACxC,KAAK,CACH,QAAQ,MAAM,CAAC,IAAI,CAAC,gCAAgC;YAClD,mCAAmC,MAAM,CAAC,QAAQ,CAAC,2BAA2B,CACjF,CAAC;IACJ,CAAC;CACF"}
@@ -1,5 +1,10 @@
1
1
  import type { IncomingMessage, ServerResponse } from "node:http";
2
2
  import type { SimAwsHttp } from "../sim-aws-http.js";
3
+ import type { SimLiveReload } from "../live-reload/sim-live-reload.js";
4
+ interface SimAwsLocalRequestHandlerProperties {
5
+ readonly simAwsHttp: SimAwsHttp;
6
+ readonly liveReload?: SimLiveReload;
7
+ }
3
8
  /**
4
9
  * Bridges Node's HTTP server callbacks to the Fetch-shaped simulated AWS HTTP
5
10
  * interface.
@@ -7,17 +12,25 @@ import type { SimAwsHttp } from "../sim-aws-http.js";
7
12
  * Node hands over a request and a response object and expects nothing back,
8
13
  * while `SimAwsHttp` takes a `Request` and returns a `Response`. Keeping that
9
14
  * adaptation here leaves the local server owning only the socket lifecycle.
15
+ *
16
+ * Live reload sits either side of `SimAwsHttp` rather than inside it. That
17
+ * interface is also the SDK interception path and the in-process test path, so
18
+ * keeping the reload channel and the injected script out here means only a real
19
+ * browser talking to the local server ever sees either of them.
10
20
  */
11
21
  export declare class SimAwsLocalRequestHandler {
12
22
  private readonly simAwsHttp;
23
+ private readonly liveReload;
13
24
  private readonly nodeFetchHttpAdapter;
14
- constructor(simAwsHttp: SimAwsHttp);
25
+ constructor(properties: SimAwsLocalRequestHandlerProperties);
15
26
  /**
16
27
  * Handle one Node HTTP request, reporting any failure on the response rather
17
28
  * than letting it escape into an unhandled rejection.
18
29
  */
19
30
  handle(nodeRequest: IncomingMessage, nodeResponse: ServerResponse): void;
20
31
  private respond;
32
+ private served;
21
33
  private respondWithError;
22
34
  }
35
+ export {};
23
36
  //# sourceMappingURL=sim-aws-local-request-handler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sim-aws-local-request-handler.d.ts","sourceRoot":"","sources":["../../../../src/serve/http/local-server/sim-aws-local-request-handler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAEjE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAErD;;;;;;;GAOG;AACH,qBAAa,yBAAyB;IACpC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAa;IACxC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAA8B;IAEnE,YAAY,UAAU,EAAE,UAAU,EAEjC;IAED;;;OAGG;IACH,MAAM,CAAC,WAAW,EAAE,eAAe,EAAE,YAAY,EAAE,cAAc,GAAG,IAAI,CAKvE;YAEa,OAAO;IAWrB,OAAO,CAAC,gBAAgB;CAgBzB"}
1
+ {"version":3,"file":"sim-aws-local-request-handler.d.ts","sourceRoot":"","sources":["../../../../src/serve/http/local-server/sim-aws-local-request-handler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAEjE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAEvE,UAAU,mCAAmC;IAC3C,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,QAAQ,CAAC,UAAU,CAAC,EAAE,aAAa,CAAC;CACrC;AAED;;;;;;;;;;;;GAYG;AACH,qBAAa,yBAAyB;IACpC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAa;IACxC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA4B;IACvD,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAA8B;IAEnE,YAAY,UAAU,EAAE,mCAAmC,EAI1D;IAED;;;OAGG;IACH,MAAM,CAAC,WAAW,EAAE,eAAe,EAAE,YAAY,EAAE,cAAc,GAAG,IAAI,CAUvE;YAEa,OAAO;YAcP,MAAM;IAWpB,OAAO,CAAC,gBAAgB;CAgBzB"}
@@ -6,18 +6,30 @@ import { NodeFetchHttpAdapter } from "../node-fetch-http-adapter.js";
6
6
  * Node hands over a request and a response object and expects nothing back,
7
7
  * while `SimAwsHttp` takes a `Request` and returns a `Response`. Keeping that
8
8
  * adaptation here leaves the local server owning only the socket lifecycle.
9
+ *
10
+ * Live reload sits either side of `SimAwsHttp` rather than inside it. That
11
+ * interface is also the SDK interception path and the in-process test path, so
12
+ * keeping the reload channel and the injected script out here means only a real
13
+ * browser talking to the local server ever sees either of them.
9
14
  */
10
15
  export class SimAwsLocalRequestHandler {
11
16
  simAwsHttp;
17
+ liveReload;
12
18
  nodeFetchHttpAdapter = new NodeFetchHttpAdapter();
13
- constructor(simAwsHttp) {
19
+ constructor(properties) {
20
+ const { simAwsHttp, liveReload } = properties;
14
21
  this.simAwsHttp = simAwsHttp;
22
+ this.liveReload = liveReload;
15
23
  }
16
24
  /**
17
25
  * Handle one Node HTTP request, reporting any failure on the response rather
18
26
  * than letting it escape into an unhandled rejection.
19
27
  */
20
28
  handle(nodeRequest, nodeResponse) {
29
+ if (this.liveReload?.isChannelRequest(nodeRequest) === true) {
30
+ this.liveReload.connect(nodeResponse);
31
+ return;
32
+ }
21
33
  // eslint-disable-next-line unicorn/prefer-await
22
34
  this.respond(nodeRequest, nodeResponse).catch((error) => {
23
35
  this.respondWithError(error, nodeResponse);
@@ -26,7 +38,13 @@ export class SimAwsLocalRequestHandler {
26
38
  async respond(nodeRequest, nodeResponse) {
27
39
  const request = this.nodeFetchHttpAdapter.nodeRequestToFetchRequest(nodeRequest);
28
40
  const response = await this.simAwsHttp.handleRequest(request);
29
- await this.nodeFetchHttpAdapter.sendFetchResponse(nodeResponse, response);
41
+ await this.nodeFetchHttpAdapter.sendFetchResponse(nodeResponse, await this.served(request, response));
42
+ }
43
+ async served(request, response) {
44
+ if (this.liveReload === undefined) {
45
+ return response;
46
+ }
47
+ return this.liveReload.injectInto(request, response);
30
48
  }
31
49
  respondWithError(error, nodeResponse) {
32
50
  /* v8 ignore if */
@@ -1 +1 @@
1
- {"version":3,"file":"sim-aws-local-request-handler.js","sourceRoot":"","sources":["../../../../src/serve/http/local-server/sim-aws-local-request-handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAGrE;;;;;;;GAOG;AACH,MAAM,OAAO,yBAAyB;IACnB,UAAU,CAAa;IACvB,oBAAoB,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAEnE,YAAY,UAAsB;QAChC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,WAA4B,EAAE,YAA4B;QAC/D,gDAAgD;QAChD,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;YAC/D,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,OAAO,CACnB,WAA4B,EAC5B,YAA4B;QAE5B,MAAM,OAAO,GACX,IAAI,CAAC,oBAAoB,CAAC,yBAAyB,CAAC,WAAW,CAAC,CAAC;QACnE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAE9D,MAAM,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IAC5E,CAAC;IAEO,gBAAgB,CAAC,KAAc,EAAE,YAA4B;QACnE,kBAAkB;QAClB,IAAI,YAAY,CAAC,aAAa,EAAE,CAAC;YAC/B,OAAO;QACT,CAAC;QAED,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;YAC9B,YAAY,CAAC,UAAU,GAAG,GAAG,CAAC;YAC9B,YAAY,CAAC,SAAS,CAAC,cAAc,EAAE,2BAA2B,CAAC,CAAC;QACtE,CAAC;QAED,MAAM,OAAO,GACX,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,gCAAgC,CAAC;QAE5E,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC5B,CAAC;CACF"}
1
+ {"version":3,"file":"sim-aws-local-request-handler.js","sourceRoot":"","sources":["../../../../src/serve/http/local-server/sim-aws-local-request-handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AASrE;;;;;;;;;;;;GAYG;AACH,MAAM,OAAO,yBAAyB;IACnB,UAAU,CAAa;IACvB,UAAU,CAA4B;IACtC,oBAAoB,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAEnE,YAAY,UAA+C;QACzD,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,UAAU,CAAC;QAC9C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,WAA4B,EAAE,YAA4B;QAC/D,IAAI,IAAI,CAAC,UAAU,EAAE,gBAAgB,CAAC,WAAW,CAAC,KAAK,IAAI,EAAE,CAAC;YAC5D,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;YACtC,OAAO;QACT,CAAC;QAED,gDAAgD;QAChD,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;YAC/D,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,OAAO,CACnB,WAA4B,EAC5B,YAA4B;QAE5B,MAAM,OAAO,GACX,IAAI,CAAC,oBAAoB,CAAC,yBAAyB,CAAC,WAAW,CAAC,CAAC;QACnE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAE9D,MAAM,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,CAC/C,YAAY,EACZ,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,CACrC,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,MAAM,CAClB,OAAgB,EAChB,QAAkB;QAElB,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YAClC,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,OAAO,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IACvD,CAAC;IAEO,gBAAgB,CAAC,KAAc,EAAE,YAA4B;QACnE,kBAAkB;QAClB,IAAI,YAAY,CAAC,aAAa,EAAE,CAAC;YAC/B,OAAO;QACT,CAAC;QAED,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;YAC9B,YAAY,CAAC,UAAU,GAAG,GAAG,CAAC;YAC9B,YAAY,CAAC,SAAS,CAAC,cAAc,EAAE,2BAA2B,CAAC,CAAC;QACtE,CAAC;QAED,MAAM,OAAO,GACX,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,gCAAgC,CAAC;QAE5E,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC5B,CAAC;CACF"}
@@ -1,6 +1,7 @@
1
1
  import { SimAws } from "../../../service/aws/sim-aws.js";
2
2
  interface SimAwsLocalServerProperties {
3
3
  readonly simAws?: SimAws;
4
+ readonly liveReload?: boolean;
4
5
  }
5
6
  /**
6
7
  * Local HTTP server for a simulated AWS environment.
@@ -9,7 +10,9 @@ interface SimAwsLocalServerProperties {
9
10
  export declare class SimAwsLocalServer {
10
11
  private readonly requestHandler;
11
12
  private readonly server;
13
+ private readonly portBinder;
12
14
  private readonly dnsServer;
15
+ private readonly liveReload;
13
16
  constructor(properties?: SimAwsLocalServerProperties);
14
17
  /**
15
18
  * Start serving simulated AWS services on localhost.
@@ -24,6 +27,9 @@ export declare class SimAwsLocalServer {
24
27
  * the resolver returns first, which is commonly `::1`. DNS answers with the
25
28
  * IPv4 loopback address, so binding it explicitly is what makes the address in
26
29
  * a DNS answer one that actually serves HTTP.
30
+ *
31
+ * A pinned port that is still held is waited for rather than refused, so a
32
+ * restart that overlaps the process it replaces still gets its port back.
27
33
  */
28
34
  listen(port?: number): Promise<this>;
29
35
  /**
@@ -44,8 +50,24 @@ export declare class SimAwsLocalServer {
44
50
  get dnsPort(): string;
45
51
  /**
46
52
  * Stop serving simulated AWS services.
53
+ *
54
+ * Open connections are ended rather than left to finish. Node's own close
55
+ * stops the server accepting and lets go of the connections that are idle,
56
+ * but one that is in use, which is what a browser part way through a request
57
+ * or a live reload stream holds, keeps its socket open and the process with
58
+ * it. Local development restarts on that process exiting, so the connections
59
+ * go. Closing the listening socket first means nothing new is accepted while
60
+ * the open ones are being ended.
47
61
  */
48
62
  close(): void;
63
+ /**
64
+ * Reload every browser connected to this server.
65
+ *
66
+ * For a change that needs no restart, such as new content in a simulated
67
+ * Bucket. A change to the code that built the environment needs the process
68
+ * to restart, and the pages reload themselves when it comes back.
69
+ */
70
+ reload(): void;
49
71
  /**
50
72
  * Adapt a simulated AWS URL for this local server instance.
51
73
  */
@@ -54,6 +76,7 @@ export declare class SimAwsLocalServer {
54
76
  interface ServeSimAwsProperties {
55
77
  readonly simAws?: SimAws;
56
78
  readonly port?: number;
79
+ readonly liveReload?: boolean;
57
80
  }
58
81
  /**
59
82
  * Serve a simulated AWS environment on localhost.
@@ -1 +1 @@
1
- {"version":3,"file":"sim-aws-local-server.d.ts","sourceRoot":"","sources":["../../../../src/serve/http/local-server/sim-aws-local-server.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,iCAAiC,CAAC;AAQzD,UAAU,2BAA2B;IACnC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;;GAGG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA4B;IAC3D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAkB;IAE5C,YAAY,UAAU,GAAE,2BAAgC,EASvD;IAED;;;;;;;;;;;;;OAaG;IACG,MAAM,CAAC,IAAI,GAAE,MAAsC,GAAG,OAAO,CAAC,IAAI,CAAC,CAKxE;IAED;;OAEG;IACH,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED;;OAEG;IACH,IAAI,IAAI,IAAI,MAAM,CAYjB;IAED;;;;;;OAMG;IACH,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED;;OAEG;IACH,KAAK,IAAI,IAAI,CAGZ;IAED;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,GAAG,GAAG,CAGjC;CACF;AAED,UAAU,qBAAqB;IAC7B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,wBAAsB,WAAW,CAC/B,UAAU,GAAE,qBAA0B,GACrC,OAAO,CAAC,iBAAiB,CAAC,CAK5B"}
1
+ {"version":3,"file":"sim-aws-local-server.d.ts","sourceRoot":"","sources":["../../../../src/serve/http/local-server/sim-aws-local-server.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,iCAAiC,CAAC;AAUzD,UAAU,2BAA2B;IACnC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED;;;GAGG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA4B;IAC3D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAuB;IAClD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAkB;IAC5C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAqB;IAEhD,YAAY,UAAU,GAAE,2BAAgC,EAavD;IAED;;;;;;;;;;;;;;;;OAgBG;IACG,MAAM,CAAC,IAAI,GAAE,MAAsC,GAAG,OAAO,CAAC,IAAI,CAAC,CAOxE;IAED;;OAEG;IACH,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED;;OAEG;IACH,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;;;;;OAMG;IACH,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED;;;;;;;;;;OAUG;IACH,KAAK,IAAI,IAAI,CAKZ;IAED;;;;;;OAMG;IACH,MAAM,IAAI,IAAI,CAEb;IAED;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,GAAG,GAAG,CAGjC;CACF;AAED,UAAU,qBAAqB;IAC7B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED;;GAEG;AACH,wBAAsB,WAAW,CAC/B,UAAU,GAAE,qBAA0B,GACrC,OAAO,CAAC,iBAAiB,CAAC,CAQ5B"}
@@ -3,9 +3,11 @@ import { SimAws } from "../../../service/aws/sim-aws.js";
3
3
  import { simAwsLocalConfig } from "./sim-aws-local.config.js";
4
4
  import { SimAwsHttp } from "../sim-aws-http.js";
5
5
  import { SimAwsLocalUrl } from "../url/sim-aws-local-url.js";
6
- import { waitNodeServerListen } from "./wait-node-server-listen.js";
6
+ import { NodeServerPortBinder } from "./node-server-port-binder.js";
7
+ import { nodeServerPort } from "./node-server-port.js";
7
8
  import { SimAwsLocalRequestHandler } from "./sim-aws-local-request-handler.js";
8
9
  import { SimAwsDnsServer } from "../../dns/sim-aws-dns-server.js";
10
+ import { SimLocalLiveReload } from "../live-reload/sim-local-live-reload.js";
9
11
  /**
10
12
  * Local HTTP server for a simulated AWS environment.
11
13
  * Useful for local integration testing and local development.
@@ -13,14 +15,22 @@ import { SimAwsDnsServer } from "../../dns/sim-aws-dns-server.js";
13
15
  export class SimAwsLocalServer {
14
16
  requestHandler;
15
17
  server;
18
+ portBinder;
16
19
  dnsServer;
20
+ liveReload;
17
21
  constructor(properties = {}) {
18
- const { simAws = new SimAws() } = properties;
19
- this.requestHandler = new SimAwsLocalRequestHandler(new SimAwsHttp({ simAws }));
22
+ const { simAws = new SimAws(), liveReload = false } = properties;
23
+ this.liveReload = new SimLocalLiveReload({ enabled: liveReload });
24
+ const channel = this.liveReload.channel();
25
+ this.requestHandler = new SimAwsLocalRequestHandler({
26
+ simAwsHttp: new SimAwsHttp({ simAws }),
27
+ ...(channel !== undefined && { liveReload: channel }),
28
+ });
20
29
  this.dnsServer = new SimAwsDnsServer({ simAws });
21
30
  this.server = http.createServer((request, response) => {
22
31
  this.requestHandler.handle(request, response);
23
32
  });
33
+ this.portBinder = new NodeServerPortBinder({ server: this.server });
24
34
  }
25
35
  /**
26
36
  * Start serving simulated AWS services on localhost.
@@ -35,11 +45,14 @@ export class SimAwsLocalServer {
35
45
  * the resolver returns first, which is commonly `::1`. DNS answers with the
36
46
  * IPv4 loopback address, so binding it explicitly is what makes the address in
37
47
  * a DNS answer one that actually serves HTTP.
48
+ *
49
+ * A pinned port that is still held is waited for rather than refused, so a
50
+ * restart that overlaps the process it replaces still gets its port back.
38
51
  */
39
52
  async listen(port = simAwsLocalConfig.defaultPort) {
40
- this.server.listen(port, simAwsLocalConfig.loopbackAddress);
41
- await waitNodeServerListen(this.server);
53
+ await this.portBinder.bind(port);
42
54
  await this.dnsServer.listen(Number(this.port));
55
+ this.liveReload.serving(this.port);
43
56
  return this;
44
57
  }
45
58
  /**
@@ -52,15 +65,7 @@ export class SimAwsLocalServer {
52
65
  * Get the TCP port on which this local server is listening.
53
66
  */
54
67
  get port() {
55
- if (!this.server.listening) {
56
- throw new Error("Server is not yet listening, cannot get port number");
57
- }
58
- const address = this.server.address();
59
- /* v8 ignore if -- does not happen in practice */
60
- if (address === null || typeof address === "string") {
61
- throw new Error("Expected local HTTP server to listen on a TCP port");
62
- }
63
- return String(address.port);
68
+ return nodeServerPort(this.server);
64
69
  }
65
70
  /**
66
71
  * Get the UDP port on which DNS queries are answered.
@@ -74,11 +79,31 @@ export class SimAwsLocalServer {
74
79
  }
75
80
  /**
76
81
  * Stop serving simulated AWS services.
82
+ *
83
+ * Open connections are ended rather than left to finish. Node's own close
84
+ * stops the server accepting and lets go of the connections that are idle,
85
+ * but one that is in use, which is what a browser part way through a request
86
+ * or a live reload stream holds, keeps its socket open and the process with
87
+ * it. Local development restarts on that process exiting, so the connections
88
+ * go. Closing the listening socket first means nothing new is accepted while
89
+ * the open ones are being ended.
77
90
  */
78
91
  close() {
92
+ this.liveReload.stopping();
79
93
  this.server.close();
94
+ this.server.closeAllConnections();
80
95
  this.dnsServer.close();
81
96
  }
97
+ /**
98
+ * Reload every browser connected to this server.
99
+ *
100
+ * For a change that needs no restart, such as new content in a simulated
101
+ * Bucket. A change to the code that built the environment needs the process
102
+ * to restart, and the pages reload themselves when it comes back.
103
+ */
104
+ reload() {
105
+ this.liveReload.reload();
106
+ }
82
107
  /**
83
108
  * Adapt a simulated AWS URL for this local server instance.
84
109
  */
@@ -91,8 +116,8 @@ export class SimAwsLocalServer {
91
116
  * Serve a simulated AWS environment on localhost.
92
117
  */
93
118
  export async function serveSimAws(properties = {}) {
94
- const { simAws = new SimAws(), port = simAwsLocalConfig.defaultPort } = properties;
95
- const server = new SimAwsLocalServer({ simAws });
119
+ const { simAws = new SimAws(), port = simAwsLocalConfig.defaultPort, liveReload = false, } = properties;
120
+ const server = new SimAwsLocalServer({ simAws, liveReload });
96
121
  return server.listen(port);
97
122
  }
98
123
  //# sourceMappingURL=sim-aws-local-server.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sim-aws-local-server.js","sourceRoot":"","sources":["../../../../src/serve/http/local-server/sim-aws-local-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sim-aws-local-server.js","sourceRoot":"","sources":["../../../../src/serve/http/local-server/sim-aws-local-server.ts"],"names":[],"mappings":"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"}
@@ -5,5 +5,7 @@ export declare const simAwsLocalConfig: {
5
5
  hostname: string;
6
6
  defaultPort: number;
7
7
  loopbackAddress: string;
8
+ portWaitMs: number;
9
+ portWaitIntervalMs: number;
8
10
  };
9
11
  //# sourceMappingURL=sim-aws-local.config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sim-aws-local.config.d.ts","sourceRoot":"","sources":["../../../../src/serve/http/local-server/sim-aws-local.config.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,iBAAiB;IAC5B,QAAQ;IACR,WAAW;IAIX,eAAe;CAChB,CAAC"}
1
+ {"version":3,"file":"sim-aws-local.config.d.ts","sourceRoot":"","sources":["../../../../src/serve/http/local-server/sim-aws-local.config.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,iBAAiB;IAC5B,QAAQ;IACR,WAAW;IAIX,eAAe;IAKf,UAAU;IACV,kBAAkB;CACnB,CAAC"}
@@ -8,5 +8,11 @@ export const simAwsLocalConfig = {
8
8
  // names that resolve to a simulated service, so a lookup and an HTTP request
9
9
  // for the same name reach the same place.
10
10
  loopbackAddress: "127.0.0.1",
11
+ // How long a pinned port is waited for when something else still holds it.
12
+ // A restart overlaps the process it replaces for a moment, and long enough to
13
+ // outlast that is the whole requirement. Anything still holding the port after
14
+ // this is not going to let go.
15
+ portWaitMs: 2000,
16
+ portWaitIntervalMs: 25,
11
17
  };
12
18
  //# sourceMappingURL=sim-aws-local.config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sim-aws-local.config.js","sourceRoot":"","sources":["../../../../src/serve/http/local-server/sim-aws-local.config.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,QAAQ,EAAE,mBAAmB;IAC7B,WAAW,EAAE,CAAC;IACd,2EAA2E;IAC3E,6EAA6E;IAC7E,0CAA0C;IAC1C,eAAe,EAAE,WAAW;CAC7B,CAAC"}
1
+ {"version":3,"file":"sim-aws-local.config.js","sourceRoot":"","sources":["../../../../src/serve/http/local-server/sim-aws-local.config.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,QAAQ,EAAE,mBAAmB;IAC7B,WAAW,EAAE,CAAC;IACd,2EAA2E;IAC3E,6EAA6E;IAC7E,0CAA0C;IAC1C,eAAe,EAAE,WAAW;IAC5B,2EAA2E;IAC3E,8EAA8E;IAC9E,+EAA+E;IAC/E,+BAA+B;IAC/B,UAAU,EAAE,IAAI;IAChB,kBAAkB,EAAE,EAAE;CACvB,CAAC"}
@@ -2,6 +2,9 @@ export { SimAwsHttp } from "./http/sim-aws-http.js";
2
2
  export { SimAwsDns } from "./dns/sim-aws-dns.js";
3
3
  export { SimAwsDnsServer } from "./dns/sim-aws-dns-server.js";
4
4
  export { serveSimAws, SimAwsLocalServer, } from "./http/local-server/sim-aws-local-server.js";
5
+ export { SimAwsLocalPortInUse } from "./http/local-server/sim-aws-local-port.error.js";
6
+ export { SimLiveReload } from "./http/live-reload/sim-live-reload.js";
7
+ export { simLiveReloadConfig, simLiveReloadHeaderName, } from "./http/live-reload/sim-live-reload.config.js";
5
8
  export { type SimAwsServiceController, SimAwsServiceRequest, type SimAwsServiceTarget, } from "./controller/sim-service-controller.js";
6
9
  export { simAwsAuthHeaderName, simAwsErrorDetailHeaderName, simAwsErrorHeaderName, } from "./http/response/sim-aws-response-hints.js";
7
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/serve/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EACL,WAAW,EACX,iBAAiB,GAClB,MAAM,6CAA6C,CAAC;AACrD,OAAO,EACL,KAAK,uBAAuB,EAC5B,oBAAoB,EACpB,KAAK,mBAAmB,GACzB,MAAM,wCAAwC,CAAC;AAChD,OAAO,EACL,oBAAoB,EACpB,2BAA2B,EAC3B,qBAAqB,GACtB,MAAM,2CAA2C,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/serve/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EACL,WAAW,EACX,iBAAiB,GAClB,MAAM,6CAA6C,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iDAAiD,CAAC;AACvF,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AACtE,OAAO,EACL,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,8CAA8C,CAAC;AACtD,OAAO,EACL,KAAK,uBAAuB,EAC5B,oBAAoB,EACpB,KAAK,mBAAmB,GACzB,MAAM,wCAAwC,CAAC;AAChD,OAAO,EACL,oBAAoB,EACpB,2BAA2B,EAC3B,qBAAqB,GACtB,MAAM,2CAA2C,CAAC"}
@@ -2,6 +2,9 @@ export { SimAwsHttp } from "./http/sim-aws-http.js";
2
2
  export { SimAwsDns } from "./dns/sim-aws-dns.js";
3
3
  export { SimAwsDnsServer } from "./dns/sim-aws-dns-server.js";
4
4
  export { serveSimAws, SimAwsLocalServer, } from "./http/local-server/sim-aws-local-server.js";
5
+ export { SimAwsLocalPortInUse } from "./http/local-server/sim-aws-local-port.error.js";
6
+ export { SimLiveReload } from "./http/live-reload/sim-live-reload.js";
7
+ export { simLiveReloadConfig, simLiveReloadHeaderName, } from "./http/live-reload/sim-live-reload.config.js";
5
8
  export { SimAwsServiceRequest, } from "./controller/sim-service-controller.js";
6
9
  export { simAwsAuthHeaderName, simAwsErrorDetailHeaderName, simAwsErrorHeaderName, } from "./http/response/sim-aws-response-hints.js";
7
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/serve/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EACL,WAAW,EACX,iBAAiB,GAClB,MAAM,6CAA6C,CAAC;AACrD,OAAO,EAEL,oBAAoB,GAErB,MAAM,wCAAwC,CAAC;AAChD,OAAO,EACL,oBAAoB,EACpB,2BAA2B,EAC3B,qBAAqB,GACtB,MAAM,2CAA2C,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/serve/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EACL,WAAW,EACX,iBAAiB,GAClB,MAAM,6CAA6C,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iDAAiD,CAAC;AACvF,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AACtE,OAAO,EACL,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,8CAA8C,CAAC;AACtD,OAAO,EAEL,oBAAoB,GAErB,MAAM,wCAAwC,CAAC;AAChD,OAAO,EACL,oBAAoB,EACpB,2BAA2B,EAC3B,qBAAqB,GACtB,MAAM,2CAA2C,CAAC"}
@@ -8,12 +8,21 @@ interface SimAcmCfnResourceFactoryProperties {
8
8
  * CloudFormation Resource factory for simulated ACM resources.
9
9
  */
10
10
  export declare class SimAcmCfnResourceFactory implements SimCfnServiceResourceFactory {
11
+ private readonly acm;
11
12
  private readonly certificateCreator;
12
13
  constructor(properties?: SimAcmCfnResourceFactoryProperties);
13
14
  /**
14
15
  * Create a simulated ACM resource from a CloudFormation Resource.
15
16
  */
16
17
  create(resourceTypeName: string, resource: SimCfnResource, context: SimCloudFormationResourceCreateContext): Promise<object | undefined>;
18
+ /**
19
+ * Delete a simulated ACM resource created from a CloudFormation Resource.
20
+ *
21
+ * DeleteCertificate refuses a certificate that is still in use, so a
22
+ * certificate a CloudFront Distribution still names comes down after that
23
+ * Distribution, which the teardown order arranges.
24
+ */
25
+ delete(resourceTypeName: string, resource: SimCfnResource): Promise<void>;
17
26
  }
18
27
  export {};
19
28
  //# sourceMappingURL=sim-cfn-acm-resource-factory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sim-cfn-acm-resource-factory.d.ts","sourceRoot":"","sources":["../../../../src/service/acm/cfn/sim-cfn-acm-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,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAGvC,UAAU,kCAAkC;IAC1C,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACnC;AAED;;GAEG;AACH,qBAAa,wBAAyB,YAAW,4BAA4B;IAC3E,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAA8B;IAEjE,YAAY,UAAU,GAAE,kCAAuC,EAI9D;IAED;;OAEG;IACG,MAAM,CACV,gBAAgB,EAAE,MAAM,EACxB,QAAQ,EAAE,cAAc,EACxB,OAAO,EAAE,sCAAsC,GAC9C,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAW7B;CACF"}
1
+ {"version":3,"file":"sim-cfn-acm-resource-factory.d.ts","sourceRoot":"","sources":["../../../../src/service/acm/cfn/sim-cfn-acm-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,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAKvC,UAAU,kCAAkC;IAC1C,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACnC;AAED;;GAEG;AACH,qBAAa,wBAAyB,YAAW,4BAA4B;IAC3E,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAA8B;IAEjE,YAAY,UAAU,GAAE,kCAAuC,EAK9D;IAED;;OAEG;IACG,MAAM,CACV,gBAAgB,EAAE,MAAM,EACxB,QAAQ,EAAE,cAAc,EACxB,OAAO,EAAE,sCAAsC,GAC9C,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAW7B;IAED;;;;;;OAMG;IACG,MAAM,CACV,gBAAgB,EAAE,MAAM,EACxB,QAAQ,EAAE,cAAc,GACvB,OAAO,CAAC,IAAI,CAAC,CAgBf;CACF"}