@kensio/yulin 1.16.0 → 1.16.2

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 (396) hide show
  1. package/README.md +44 -46
  2. package/dist/sdk/wire/sim-sdk-wire-operation.d.ts +12 -2
  3. package/dist/sdk/wire/sim-sdk-wire-operation.d.ts.map +1 -1
  4. package/dist/sdk/wire/sim-sdk-wire-operation.js.map +1 -1
  5. package/dist/sdk/wire/sim-sdk-wire.types.d.ts +0 -4
  6. package/dist/sdk/wire/sim-sdk-wire.types.d.ts.map +1 -1
  7. package/dist/service/aws/factory/sim-aws-account-region-service-builder.js +2 -2
  8. package/dist/service/aws/factory/sim-aws-account-region-service-builder.js.map +1 -1
  9. package/dist/service/aws/factory/sim-aws-lambda-collaborators.d.ts +8 -0
  10. package/dist/service/aws/factory/sim-aws-lambda-collaborators.d.ts.map +1 -1
  11. package/dist/service/aws/factory/sim-aws-lambda-collaborators.js +13 -0
  12. package/dist/service/aws/factory/sim-aws-lambda-collaborators.js.map +1 -1
  13. package/dist/service/cloudfront/origin/custom/sim-cf-custom-origin-request.d.ts +3 -2
  14. package/dist/service/cloudfront/origin/custom/sim-cf-custom-origin-request.d.ts.map +1 -1
  15. package/dist/service/cloudfront/origin/custom/sim-cf-custom-origin-request.js.map +1 -1
  16. package/dist/service/cloudfront/origin/custom/sim-cf-custom-origin-signer.d.ts +5 -2
  17. package/dist/service/cloudfront/origin/custom/sim-cf-custom-origin-signer.d.ts.map +1 -1
  18. package/dist/service/cloudfront/origin/custom/sim-cf-custom-origin-signer.js +38 -2
  19. package/dist/service/cloudfront/origin/custom/sim-cf-custom-origin-signer.js.map +1 -1
  20. package/dist/service/cloudfront/origin/custom/sim-cf-function-url-origin-template.factory.d.ts.map +1 -1
  21. package/dist/service/cloudfront/origin/custom/sim-cf-function-url-origin-template.factory.js +5 -2
  22. package/dist/service/cloudfront/origin/custom/sim-cf-function-url-origin-template.factory.js.map +1 -1
  23. package/dist/service/cognito/command/auth/sim-cognito-password-sign-in.d.ts.map +1 -1
  24. package/dist/service/cognito/command/auth/sim-cognito-password-sign-in.js +2 -1
  25. package/dist/service/cognito/command/auth/sim-cognito-password-sign-in.js.map +1 -1
  26. package/dist/service/cognito/command/hosted/hosted-auth.command.d.ts +10 -0
  27. package/dist/service/cognito/command/hosted/hosted-auth.command.d.ts.map +1 -1
  28. package/dist/service/cognito/command/hosted/sim-cognito-authorize-endpoint.d.ts +14 -13
  29. package/dist/service/cognito/command/hosted/sim-cognito-authorize-endpoint.d.ts.map +1 -1
  30. package/dist/service/cognito/command/hosted/sim-cognito-authorize-endpoint.js +14 -18
  31. package/dist/service/cognito/command/hosted/sim-cognito-authorize-endpoint.js.map +1 -1
  32. package/dist/service/cognito/command/hosted/sim-cognito-authorize-request.d.ts +15 -6
  33. package/dist/service/cognito/command/hosted/sim-cognito-authorize-request.d.ts.map +1 -1
  34. package/dist/service/cognito/command/hosted/sim-cognito-authorize-request.js +26 -19
  35. package/dist/service/cognito/command/hosted/sim-cognito-authorize-request.js.map +1 -1
  36. package/dist/service/cognito/command/hosted/sim-cognito-hosted-commands.d.ts.map +1 -1
  37. package/dist/service/cognito/command/hosted/sim-cognito-hosted-commands.js +5 -1
  38. package/dist/service/cognito/command/hosted/sim-cognito-hosted-commands.js.map +1 -1
  39. package/dist/service/cognito/command/hosted/sim-cognito-hosted-password-sign-in.d.ts +41 -0
  40. package/dist/service/cognito/command/hosted/sim-cognito-hosted-password-sign-in.d.ts.map +1 -0
  41. package/dist/service/cognito/command/hosted/sim-cognito-hosted-password-sign-in.js +72 -0
  42. package/dist/service/cognito/command/hosted/sim-cognito-hosted-password-sign-in.js.map +1 -0
  43. package/dist/service/cognito/command/hosted/sim-cognito-hosted-sign-in.d.ts +32 -0
  44. package/dist/service/cognito/command/hosted/sim-cognito-hosted-sign-in.d.ts.map +1 -0
  45. package/dist/service/cognito/command/hosted/sim-cognito-hosted-sign-in.js +36 -0
  46. package/dist/service/cognito/command/hosted/sim-cognito-hosted-sign-in.js.map +1 -0
  47. package/dist/service/cognito/command/sim-cognito-command.types.d.ts +1 -0
  48. package/dist/service/cognito/command/sim-cognito-command.types.d.ts.map +1 -1
  49. package/dist/service/cognito/command/sim-cognito-commands.d.ts +2 -0
  50. package/dist/service/cognito/command/sim-cognito-commands.d.ts.map +1 -1
  51. package/dist/service/cognito/command/sim-cognito-commands.js +8 -0
  52. package/dist/service/cognito/command/sim-cognito-commands.js.map +1 -1
  53. package/dist/service/cognito/command/user/password-reset.command.d.ts +80 -0
  54. package/dist/service/cognito/command/user/password-reset.command.d.ts.map +1 -0
  55. package/dist/service/cognito/command/user/password-reset.command.js +2 -0
  56. package/dist/service/cognito/command/user/password-reset.command.js.map +1 -0
  57. package/dist/service/cognito/command/user/sim-cognito-password-reset-commands.d.ts +74 -0
  58. package/dist/service/cognito/command/user/sim-cognito-password-reset-commands.d.ts.map +1 -0
  59. package/dist/service/cognito/command/user/sim-cognito-password-reset-commands.js +121 -0
  60. package/dist/service/cognito/command/user/sim-cognito-password-reset-commands.js.map +1 -0
  61. package/dist/service/cognito/command/user/sim-cognito-resetting-user.d.ts +34 -0
  62. package/dist/service/cognito/command/user/sim-cognito-resetting-user.d.ts.map +1 -0
  63. package/dist/service/cognito/command/user/sim-cognito-resetting-user.js +54 -0
  64. package/dist/service/cognito/command/user/sim-cognito-resetting-user.js.map +1 -0
  65. package/dist/service/cognito/command/user/sim-cognito-sign-up-commands.d.ts.map +1 -1
  66. package/dist/service/cognito/command/user/sim-cognito-sign-up-commands.js +3 -3
  67. package/dist/service/cognito/command/user/sim-cognito-sign-up-commands.js.map +1 -1
  68. package/dist/service/cognito/command/user/sim-cognito-unsimulated-password-reset-options.d.ts +29 -0
  69. package/dist/service/cognito/command/user/sim-cognito-unsimulated-password-reset-options.d.ts.map +1 -0
  70. package/dist/service/cognito/command/user/sim-cognito-unsimulated-password-reset-options.js +36 -0
  71. package/dist/service/cognito/command/user/sim-cognito-unsimulated-password-reset-options.js.map +1 -0
  72. package/dist/service/cognito/error/sim-cognito-managed-login.error.d.ts +22 -0
  73. package/dist/service/cognito/error/sim-cognito-managed-login.error.d.ts.map +1 -0
  74. package/dist/service/cognito/error/sim-cognito-managed-login.error.js +32 -0
  75. package/dist/service/cognito/error/sim-cognito-managed-login.error.js.map +1 -0
  76. package/dist/service/cognito/error/sim-cognito.error.d.ts +23 -0
  77. package/dist/service/cognito/error/sim-cognito.error.d.ts.map +1 -1
  78. package/dist/service/cognito/error/sim-cognito.error.js +27 -0
  79. package/dist/service/cognito/error/sim-cognito.error.js.map +1 -1
  80. package/dist/service/cognito/index.d.ts +2 -1
  81. package/dist/service/cognito/index.d.ts.map +1 -1
  82. package/dist/service/cognito/index.js +2 -1
  83. package/dist/service/cognito/index.js.map +1 -1
  84. package/dist/service/cognito/sdk/sim-cognito-sdk-directory-routes.d.ts +6 -5
  85. package/dist/service/cognito/sdk/sim-cognito-sdk-directory-routes.d.ts.map +1 -1
  86. package/dist/service/cognito/sdk/sim-cognito-sdk-directory-routes.js +18 -5
  87. package/dist/service/cognito/sdk/sim-cognito-sdk-directory-routes.js.map +1 -1
  88. package/dist/service/cognito/serve/page/sim-cognito-confirm-page.d.ts +29 -0
  89. package/dist/service/cognito/serve/page/sim-cognito-confirm-page.d.ts.map +1 -0
  90. package/dist/service/cognito/serve/page/sim-cognito-confirm-page.js +90 -0
  91. package/dist/service/cognito/serve/page/sim-cognito-confirm-page.js.map +1 -0
  92. package/dist/service/cognito/serve/page/sim-cognito-forgot-password-page.d.ts +26 -0
  93. package/dist/service/cognito/serve/page/sim-cognito-forgot-password-page.d.ts.map +1 -0
  94. package/dist/service/cognito/serve/page/sim-cognito-forgot-password-page.js +57 -0
  95. package/dist/service/cognito/serve/page/sim-cognito-forgot-password-page.js.map +1 -0
  96. package/dist/service/cognito/serve/page/sim-cognito-managed-login.d.ts +41 -0
  97. package/dist/service/cognito/serve/page/sim-cognito-managed-login.d.ts.map +1 -0
  98. package/dist/service/cognito/serve/page/sim-cognito-managed-login.js +77 -0
  99. package/dist/service/cognito/serve/page/sim-cognito-managed-login.js.map +1 -0
  100. package/dist/service/cognito/serve/page/sim-cognito-page-form.d.ts +47 -0
  101. package/dist/service/cognito/serve/page/sim-cognito-page-form.d.ts.map +1 -0
  102. package/dist/service/cognito/serve/page/sim-cognito-page-form.js +76 -0
  103. package/dist/service/cognito/serve/page/sim-cognito-page-form.js.map +1 -0
  104. package/dist/service/cognito/serve/page/sim-cognito-page-markup.d.ts +69 -0
  105. package/dist/service/cognito/serve/page/sim-cognito-page-markup.d.ts.map +1 -0
  106. package/dist/service/cognito/serve/page/sim-cognito-page-markup.js +111 -0
  107. package/dist/service/cognito/serve/page/sim-cognito-page-markup.js.map +1 -0
  108. package/dist/service/cognito/serve/page/sim-cognito-page-paths.d.ts +57 -0
  109. package/dist/service/cognito/serve/page/sim-cognito-page-paths.d.ts.map +1 -0
  110. package/dist/service/cognito/serve/page/sim-cognito-page-paths.js +82 -0
  111. package/dist/service/cognito/serve/page/sim-cognito-page-paths.js.map +1 -0
  112. package/dist/service/cognito/serve/page/sim-cognito-page-request.d.ts +22 -0
  113. package/dist/service/cognito/serve/page/sim-cognito-page-request.d.ts.map +1 -0
  114. package/dist/service/cognito/serve/page/sim-cognito-page-request.js +30 -0
  115. package/dist/service/cognito/serve/page/sim-cognito-page-request.js.map +1 -0
  116. package/dist/service/cognito/serve/page/sim-cognito-provider-links.d.ts +12 -0
  117. package/dist/service/cognito/serve/page/sim-cognito-provider-links.d.ts.map +1 -0
  118. package/dist/service/cognito/serve/page/sim-cognito-provider-links.js +18 -0
  119. package/dist/service/cognito/serve/page/sim-cognito-provider-links.js.map +1 -0
  120. package/dist/service/cognito/serve/page/sim-cognito-reset-password-page.d.ts +27 -0
  121. package/dist/service/cognito/serve/page/sim-cognito-reset-password-page.d.ts.map +1 -0
  122. package/dist/service/cognito/serve/page/sim-cognito-reset-password-page.js +65 -0
  123. package/dist/service/cognito/serve/page/sim-cognito-reset-password-page.js.map +1 -0
  124. package/dist/service/cognito/serve/page/sim-cognito-sign-in-page.d.ts +20 -0
  125. package/dist/service/cognito/serve/page/sim-cognito-sign-in-page.d.ts.map +1 -0
  126. package/dist/service/cognito/serve/page/sim-cognito-sign-in-page.js +40 -0
  127. package/dist/service/cognito/serve/page/sim-cognito-sign-in-page.js.map +1 -0
  128. package/dist/service/cognito/serve/page/sim-cognito-sign-up-page.d.ts +35 -0
  129. package/dist/service/cognito/serve/page/sim-cognito-sign-up-page.d.ts.map +1 -0
  130. package/dist/service/cognito/serve/page/sim-cognito-sign-up-page.js +85 -0
  131. package/dist/service/cognito/serve/page/sim-cognito-sign-up-page.js.map +1 -0
  132. package/dist/service/cognito/serve/sim-cognito-domain-endpoints.d.ts +20 -23
  133. package/dist/service/cognito/serve/sim-cognito-domain-endpoints.d.ts.map +1 -1
  134. package/dist/service/cognito/serve/sim-cognito-domain-endpoints.js +40 -19
  135. package/dist/service/cognito/serve/sim-cognito-domain-endpoints.js.map +1 -1
  136. package/dist/service/cognito/serve/sim-cognito-domain-request.d.ts +14 -0
  137. package/dist/service/cognito/serve/sim-cognito-domain-request.d.ts.map +1 -0
  138. package/dist/service/cognito/serve/sim-cognito-domain-request.js +2 -0
  139. package/dist/service/cognito/serve/sim-cognito-domain-request.js.map +1 -0
  140. package/dist/service/cognito/sim-cognito-user-directory.d.ts +16 -0
  141. package/dist/service/cognito/sim-cognito-user-directory.d.ts.map +1 -1
  142. package/dist/service/cognito/sim-cognito-user-directory.js +25 -0
  143. package/dist/service/cognito/sim-cognito-user-directory.js.map +1 -1
  144. package/dist/service/cognito/user-pool/auth/sim-cognito-sign-in.d.ts +9 -0
  145. package/dist/service/cognito/user-pool/auth/sim-cognito-sign-in.d.ts.map +1 -1
  146. package/dist/service/cognito/user-pool/auth/sim-cognito-sign-in.js +14 -1
  147. package/dist/service/cognito/user-pool/auth/sim-cognito-sign-in.js.map +1 -1
  148. package/dist/service/cognito/user-pool/idp/sim-cognito-federated-identity.d.ts +10 -0
  149. package/dist/service/cognito/user-pool/idp/sim-cognito-federated-identity.d.ts.map +1 -1
  150. package/dist/service/cognito/user-pool/idp/sim-cognito-federated-identity.js +11 -0
  151. package/dist/service/cognito/user-pool/idp/sim-cognito-federated-identity.js.map +1 -1
  152. package/dist/service/cognito/user-pool/message/sim-cognito-code-delivery.d.ts +44 -0
  153. package/dist/service/cognito/user-pool/message/sim-cognito-code-delivery.d.ts.map +1 -0
  154. package/dist/service/cognito/user-pool/message/sim-cognito-code-delivery.js +78 -0
  155. package/dist/service/cognito/user-pool/message/sim-cognito-code-delivery.js.map +1 -0
  156. package/dist/service/cognito/user-pool/message/sim-cognito-message-occasion.d.ts +10 -6
  157. package/dist/service/cognito/user-pool/message/sim-cognito-message-occasion.d.ts.map +1 -1
  158. package/dist/service/cognito/user-pool/message/sim-cognito-pool-messenger.d.ts +5 -2
  159. package/dist/service/cognito/user-pool/message/sim-cognito-pool-messenger.d.ts.map +1 -1
  160. package/dist/service/cognito/user-pool/message/sim-cognito-pool-messenger.js +5 -2
  161. package/dist/service/cognito/user-pool/message/sim-cognito-pool-messenger.js.map +1 -1
  162. package/dist/service/cognito/user-pool/trigger/sim-cognito-trigger-occasion.d.ts +15 -0
  163. package/dist/service/cognito/user-pool/trigger/sim-cognito-trigger-occasion.d.ts.map +1 -1
  164. package/dist/service/cognito/user-pool/trigger/sim-cognito-trigger-occasion.js +18 -0
  165. package/dist/service/cognito/user-pool/trigger/sim-cognito-trigger-occasion.js.map +1 -1
  166. package/dist/service/cognito/user-pool/trigger/sim-cognito-user-pool-triggers.d.ts +4 -1
  167. package/dist/service/cognito/user-pool/trigger/sim-cognito-user-pool-triggers.d.ts.map +1 -1
  168. package/dist/service/cognito/user-pool/trigger/sim-cognito-user-pool-triggers.js +5 -2
  169. package/dist/service/cognito/user-pool/trigger/sim-cognito-user-pool-triggers.js.map +1 -1
  170. package/dist/service/cognito/user-pool/user/sim-cognito-user-confirmation.d.ts +14 -6
  171. package/dist/service/cognito/user-pool/user/sim-cognito-user-confirmation.d.ts.map +1 -1
  172. package/dist/service/cognito/user-pool/user/sim-cognito-user-confirmation.js +20 -9
  173. package/dist/service/cognito/user-pool/user/sim-cognito-user-confirmation.js.map +1 -1
  174. package/dist/service/cognito/user-pool/user/sim-cognito-user-password-reset.d.ts +62 -0
  175. package/dist/service/cognito/user-pool/user/sim-cognito-user-password-reset.d.ts.map +1 -0
  176. package/dist/service/cognito/user-pool/user/sim-cognito-user-password-reset.js +65 -0
  177. package/dist/service/cognito/user-pool/user/sim-cognito-user-password-reset.js.map +1 -0
  178. package/dist/service/cognito/user-pool/user/sim-cognito-user-status.d.ts +55 -11
  179. package/dist/service/cognito/user-pool/user/sim-cognito-user-status.d.ts.map +1 -1
  180. package/dist/service/cognito/user-pool/user/sim-cognito-user-status.js +67 -10
  181. package/dist/service/cognito/user-pool/user/sim-cognito-user-status.js.map +1 -1
  182. package/dist/service/cognito/user-pool/user/sim-cognito-user.d.ts +15 -12
  183. package/dist/service/cognito/user-pool/user/sim-cognito-user.d.ts.map +1 -1
  184. package/dist/service/cognito/user-pool/user/sim-cognito-user.js +31 -20
  185. package/dist/service/cognito/user-pool/user/sim-cognito-user.js.map +1 -1
  186. package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-payload-hash.d.ts +8 -0
  187. package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-payload-hash.d.ts.map +1 -1
  188. package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-payload-hash.js +14 -6
  189. package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-payload-hash.js.map +1 -1
  190. package/dist/service/lambda/command/create-function/create-function.handler.d.ts +3 -0
  191. package/dist/service/lambda/command/create-function/create-function.handler.d.ts.map +1 -1
  192. package/dist/service/lambda/command/create-function/create-function.handler.js +5 -1
  193. package/dist/service/lambda/command/create-function/create-function.handler.js.map +1 -1
  194. package/dist/service/lambda/command/function/sim-lambda-function-commands.d.ts +2 -0
  195. package/dist/service/lambda/command/function/sim-lambda-function-commands.d.ts.map +1 -1
  196. package/dist/service/lambda/command/function/sim-lambda-function-commands.js.map +1 -1
  197. package/dist/service/lambda/function/code/sim-lambda-code-resolver.d.ts +7 -0
  198. package/dist/service/lambda/function/code/sim-lambda-code-resolver.d.ts.map +1 -1
  199. package/dist/service/lambda/function/code/sim-lambda-code-resolver.js +1 -0
  200. package/dist/service/lambda/function/code/sim-lambda-code-resolver.js.map +1 -1
  201. package/dist/service/lambda/function/code/sim-lambda-vm-zip-code-factory.d.ts +3 -0
  202. package/dist/service/lambda/function/code/sim-lambda-vm-zip-code-factory.d.ts.map +1 -1
  203. package/dist/service/lambda/function/code/sim-lambda-vm-zip-code-factory.js +3 -0
  204. package/dist/service/lambda/function/code/sim-lambda-vm-zip-code-factory.js.map +1 -1
  205. package/dist/service/lambda/function/code/sim-lambda-vm-zip-code.d.ts +6 -9
  206. package/dist/service/lambda/function/code/sim-lambda-vm-zip-code.d.ts.map +1 -1
  207. package/dist/service/lambda/function/code/sim-lambda-vm-zip-code.js +3 -3
  208. package/dist/service/lambda/function/code/sim-lambda-vm-zip-code.js.map +1 -1
  209. package/dist/service/lambda/function/code/vm/sdk/sim-sdk-lambda-vm-module-provider.d.ts +11 -3
  210. package/dist/service/lambda/function/code/vm/sdk/sim-sdk-lambda-vm-module-provider.d.ts.map +1 -1
  211. package/dist/service/lambda/function/code/vm/sdk/sim-sdk-lambda-vm-module-provider.js +13 -8
  212. package/dist/service/lambda/function/code/vm/sdk/sim-sdk-lambda-vm-module-provider.js.map +1 -1
  213. package/dist/service/lambda/function/code/vm/sim-lambda-vm-context.d.ts +21 -2
  214. package/dist/service/lambda/function/code/vm/sim-lambda-vm-context.d.ts.map +1 -1
  215. package/dist/service/lambda/function/code/vm/sim-lambda-vm-context.js +18 -2
  216. package/dist/service/lambda/function/code/vm/sim-lambda-vm-context.js.map +1 -1
  217. package/dist/service/lambda/function/invoke/sim-lambda-host-scope.d.ts +26 -0
  218. package/dist/service/lambda/function/invoke/sim-lambda-host-scope.d.ts.map +1 -0
  219. package/dist/service/lambda/function/invoke/sim-lambda-host-scope.js +17 -0
  220. package/dist/service/lambda/function/invoke/sim-lambda-host-scope.js.map +1 -0
  221. package/dist/service/lambda/function/invoke/sim-lambda-outbound-clients.d.ts +17 -0
  222. package/dist/service/lambda/function/invoke/sim-lambda-outbound-clients.d.ts.map +1 -0
  223. package/dist/service/lambda/function/invoke/sim-lambda-outbound-clients.js +43 -0
  224. package/dist/service/lambda/function/invoke/sim-lambda-outbound-clients.js.map +1 -0
  225. package/dist/service/lambda/function/invoke/sim-lambda-process-outbound.d.ts +44 -0
  226. package/dist/service/lambda/function/invoke/sim-lambda-process-outbound.d.ts.map +1 -0
  227. package/dist/service/lambda/function/invoke/sim-lambda-process-outbound.js +83 -0
  228. package/dist/service/lambda/function/invoke/sim-lambda-process-outbound.js.map +1 -0
  229. package/dist/service/lambda/function/outbound/sim-lambda-aws-api-outbound.d.ts +50 -0
  230. package/dist/service/lambda/function/outbound/sim-lambda-aws-api-outbound.d.ts.map +1 -0
  231. package/dist/service/lambda/function/outbound/sim-lambda-aws-api-outbound.js +83 -0
  232. package/dist/service/lambda/function/outbound/sim-lambda-aws-api-outbound.js.map +1 -0
  233. package/dist/service/lambda/function/outbound/sim-lambda-http-module.d.ts +42 -0
  234. package/dist/service/lambda/function/outbound/sim-lambda-http-module.d.ts.map +1 -0
  235. package/dist/service/lambda/function/outbound/sim-lambda-http-module.js +88 -0
  236. package/dist/service/lambda/function/outbound/sim-lambda-http-module.js.map +1 -0
  237. package/dist/service/lambda/function/{code/vm/http/sim-lambda-vm-wire-request.d.ts → outbound/sim-lambda-http-request.d.ts} +20 -7
  238. package/dist/service/lambda/function/outbound/sim-lambda-http-request.d.ts.map +1 -0
  239. package/dist/service/lambda/function/{code/vm/http/sim-lambda-vm-wire-request.js → outbound/sim-lambda-http-request.js} +27 -29
  240. package/dist/service/lambda/function/outbound/sim-lambda-http-request.js.map +1 -0
  241. package/dist/service/lambda/function/outbound/sim-lambda-http-response.d.ts +18 -0
  242. package/dist/service/lambda/function/outbound/sim-lambda-http-response.d.ts.map +1 -0
  243. package/dist/service/lambda/function/outbound/sim-lambda-http-response.js +23 -0
  244. package/dist/service/lambda/function/outbound/sim-lambda-http-response.js.map +1 -0
  245. package/dist/service/lambda/function/{code/vm/http/sim-lambda-vm-http-target.d.ts → outbound/sim-lambda-http-target.d.ts} +9 -7
  246. package/dist/service/lambda/function/outbound/sim-lambda-http-target.d.ts.map +1 -0
  247. package/dist/service/lambda/function/{code/vm/http/sim-lambda-vm-http-target.js → outbound/sim-lambda-http-target.js} +4 -38
  248. package/dist/service/lambda/function/outbound/sim-lambda-http-target.js.map +1 -0
  249. package/dist/service/lambda/function/outbound/sim-lambda-outbound-fetch.d.ts +15 -0
  250. package/dist/service/lambda/function/outbound/sim-lambda-outbound-fetch.d.ts.map +1 -0
  251. package/dist/service/lambda/function/outbound/sim-lambda-outbound-fetch.js +38 -0
  252. package/dist/service/lambda/function/outbound/sim-lambda-outbound-fetch.js.map +1 -0
  253. package/dist/service/lambda/function/outbound/sim-lambda-outbound-http.d.ts +27 -0
  254. package/dist/service/lambda/function/outbound/sim-lambda-outbound-http.d.ts.map +1 -0
  255. package/dist/service/lambda/function/outbound/sim-lambda-outbound-http.factory.d.ts +13 -0
  256. package/dist/service/lambda/function/outbound/sim-lambda-outbound-http.factory.d.ts.map +1 -0
  257. package/dist/service/lambda/function/outbound/sim-lambda-outbound-http.factory.js +107 -0
  258. package/dist/service/lambda/function/outbound/sim-lambda-outbound-http.factory.js.map +1 -0
  259. package/dist/service/lambda/function/outbound/sim-lambda-outbound-http.js +2 -0
  260. package/dist/service/lambda/function/outbound/sim-lambda-outbound-http.js.map +1 -0
  261. package/dist/service/lambda/function/outbound/sim-lambda-outbound-wire.d.ts +16 -0
  262. package/dist/service/lambda/function/outbound/sim-lambda-outbound-wire.d.ts.map +1 -0
  263. package/dist/service/lambda/function/outbound/sim-lambda-outbound-wire.js +29 -0
  264. package/dist/service/lambda/function/outbound/sim-lambda-outbound-wire.js.map +1 -0
  265. package/dist/service/lambda/function/sim-lambda-function.d.ts +12 -6
  266. package/dist/service/lambda/function/sim-lambda-function.d.ts.map +1 -1
  267. package/dist/service/lambda/function/sim-lambda-function.js +9 -10
  268. package/dist/service/lambda/function/sim-lambda-function.js.map +1 -1
  269. package/dist/service/lambda/serve/auth/sim-lambda-url-payload-hash.d.ts +28 -0
  270. package/dist/service/lambda/serve/auth/sim-lambda-url-payload-hash.d.ts.map +1 -0
  271. package/dist/service/lambda/serve/auth/sim-lambda-url-payload-hash.js +56 -0
  272. package/dist/service/lambda/serve/auth/sim-lambda-url-payload-hash.js.map +1 -0
  273. package/dist/service/lambda/serve/response/sim-lambda-url-error-response.d.ts +16 -0
  274. package/dist/service/lambda/serve/response/sim-lambda-url-error-response.d.ts.map +1 -1
  275. package/dist/service/lambda/serve/response/sim-lambda-url-error-response.js +24 -0
  276. package/dist/service/lambda/serve/response/sim-lambda-url-error-response.js.map +1 -1
  277. package/dist/service/lambda/serve/sim-lambda-controller.d.ts +6 -0
  278. package/dist/service/lambda/serve/sim-lambda-controller.d.ts.map +1 -1
  279. package/dist/service/lambda/serve/sim-lambda-controller.js +11 -0
  280. package/dist/service/lambda/serve/sim-lambda-controller.js.map +1 -1
  281. package/dist/service/lambda/sim-lambda-commands.d.ts +8 -0
  282. package/dist/service/lambda/sim-lambda-commands.d.ts.map +1 -1
  283. package/dist/service/lambda/sim-lambda-commands.js +2 -1
  284. package/dist/service/lambda/sim-lambda-commands.js.map +1 -1
  285. package/dist/service/rekognition/face/sim-rekognition-face-detail-builder.d.ts.map +1 -1
  286. package/dist/service/rekognition/face/sim-rekognition-face-detail-builder.js.map +1 -1
  287. package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-properties.d.ts +4 -3
  288. package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-properties.d.ts.map +1 -1
  289. package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-properties.js +4 -3
  290. package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-properties.js.map +1 -1
  291. package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-property-names.d.ts +2 -2
  292. package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-property-names.js +2 -2
  293. package/dist/service/sns/command/publish/sim-sns-publish-commands.d.ts +3 -0
  294. package/dist/service/sns/command/publish/sim-sns-publish-commands.d.ts.map +1 -1
  295. package/dist/service/sns/command/publish/sim-sns-publish-commands.js +4 -2
  296. package/dist/service/sns/command/publish/sim-sns-publish-commands.js.map +1 -1
  297. package/dist/service/sns/command/publish/sim-sns-publish-dispatch.d.ts +39 -0
  298. package/dist/service/sns/command/publish/sim-sns-publish-dispatch.d.ts.map +1 -0
  299. package/dist/service/sns/command/publish/sim-sns-publish-dispatch.js +42 -0
  300. package/dist/service/sns/command/publish/sim-sns-publish-dispatch.js.map +1 -0
  301. package/dist/service/sns/command/publish/sim-sns-publish-input.d.ts +3 -3
  302. package/dist/service/sns/command/publish/sim-sns-publish-input.d.ts.map +1 -1
  303. package/dist/service/sns/command/publish/sim-sns-publish-input.js +8 -8
  304. package/dist/service/sns/command/publish/sim-sns-publish-input.js.map +1 -1
  305. package/dist/service/sns/command/publish/sim-sns-publish-sms.d.ts +38 -0
  306. package/dist/service/sns/command/publish/sim-sns-publish-sms.d.ts.map +1 -0
  307. package/dist/service/sns/command/publish/sim-sns-publish-sms.js +53 -0
  308. package/dist/service/sns/command/publish/sim-sns-publish-sms.js.map +1 -0
  309. package/dist/service/sns/command/sim-sns-command.types.d.ts +1 -0
  310. package/dist/service/sns/command/sim-sns-command.types.d.ts.map +1 -1
  311. package/dist/service/sns/command/sim-sns-commands.d.ts +12 -4
  312. package/dist/service/sns/command/sim-sns-commands.d.ts.map +1 -1
  313. package/dist/service/sns/command/sim-sns-commands.js +39 -4
  314. package/dist/service/sns/command/sim-sns-commands.js.map +1 -1
  315. package/dist/service/sns/command/sms/sim-sns-opt-out-commands.d.ts +41 -0
  316. package/dist/service/sns/command/sms/sim-sns-opt-out-commands.d.ts.map +1 -0
  317. package/dist/service/sns/command/sms/sim-sns-opt-out-commands.js +56 -0
  318. package/dist/service/sns/command/sms/sim-sns-opt-out-commands.js.map +1 -0
  319. package/dist/service/sns/command/sms/sms.command.d.ts +50 -0
  320. package/dist/service/sns/command/sms/sms.command.d.ts.map +1 -0
  321. package/dist/service/sns/command/sms/sms.command.js +2 -0
  322. package/dist/service/sns/command/sms/sms.command.js.map +1 -0
  323. package/dist/service/sns/delivery/sim-aws-sns-delivery-endpoints.d.ts +5 -6
  324. package/dist/service/sns/delivery/sim-aws-sns-delivery-endpoints.d.ts.map +1 -1
  325. package/dist/service/sns/delivery/sim-aws-sns-delivery-endpoints.js +8 -12
  326. package/dist/service/sns/delivery/sim-aws-sns-delivery-endpoints.js.map +1 -1
  327. package/dist/service/sns/delivery/sim-sns-no-delivery-endpoints.d.ts +6 -13
  328. package/dist/service/sns/delivery/sim-sns-no-delivery-endpoints.d.ts.map +1 -1
  329. package/dist/service/sns/delivery/sim-sns-no-delivery-endpoints.js +13 -2
  330. package/dist/service/sns/delivery/sim-sns-no-delivery-endpoints.js.map +1 -1
  331. package/dist/service/sns/delivery/sim-sns-protocol-delivery-endpoints.d.ts +10 -1
  332. package/dist/service/sns/delivery/sim-sns-protocol-delivery-endpoints.d.ts.map +1 -1
  333. package/dist/service/sns/delivery/sim-sns-protocol-delivery-endpoints.js.map +1 -1
  334. package/dist/service/sns/delivery/sms/sim-sns-delivery-sms.d.ts +34 -0
  335. package/dist/service/sns/delivery/sms/sim-sns-delivery-sms.d.ts.map +1 -0
  336. package/dist/service/sns/delivery/sms/sim-sns-delivery-sms.js +46 -0
  337. package/dist/service/sns/delivery/sms/sim-sns-delivery-sms.js.map +1 -0
  338. package/dist/service/sns/index.d.ts +5 -1
  339. package/dist/service/sns/index.d.ts.map +1 -1
  340. package/dist/service/sns/index.js +4 -1
  341. package/dist/service/sns/index.js.map +1 -1
  342. package/dist/service/sns/message/sim-sns-message-attribute-rules.d.ts.map +1 -1
  343. package/dist/service/sns/message/sim-sns-message-attribute-rules.js +9 -1
  344. package/dist/service/sns/message/sim-sns-message-attribute-rules.js.map +1 -1
  345. package/dist/service/sns/message/sim-sns-message-attributes.d.ts +8 -0
  346. package/dist/service/sns/message/sim-sns-message-attributes.d.ts.map +1 -1
  347. package/dist/service/sns/message/sim-sns-message-attributes.js +10 -0
  348. package/dist/service/sns/message/sim-sns-message-attributes.js.map +1 -1
  349. package/dist/service/sns/message/sim-sns-sms-attributes.d.ts +25 -0
  350. package/dist/service/sns/message/sim-sns-sms-attributes.d.ts.map +1 -0
  351. package/dist/service/sns/message/sim-sns-sms-attributes.js +46 -0
  352. package/dist/service/sns/message/sim-sns-sms-attributes.js.map +1 -0
  353. package/dist/service/sns/sdk/sim-sns-sdk-command-router.d.ts.map +1 -1
  354. package/dist/service/sns/sdk/sim-sns-sdk-command-router.js +12 -0
  355. package/dist/service/sns/sdk/sim-sns-sdk-command-router.js.map +1 -1
  356. package/dist/service/sns/sim-sns-sms.d.ts +63 -0
  357. package/dist/service/sns/sim-sns-sms.d.ts.map +1 -0
  358. package/dist/service/sns/sim-sns-sms.js +76 -0
  359. package/dist/service/sns/sim-sns-sms.js.map +1 -0
  360. package/dist/service/sns/sim-sns.d.ts +7 -15
  361. package/dist/service/sns/sim-sns.d.ts.map +1 -1
  362. package/dist/service/sns/sim-sns.js +23 -30
  363. package/dist/service/sns/sim-sns.js.map +1 -1
  364. package/dist/service/sns/sms/sim-sns-opt-out-list.d.ts +40 -0
  365. package/dist/service/sns/sms/sim-sns-opt-out-list.d.ts.map +1 -0
  366. package/dist/service/sns/sms/sim-sns-opt-out-list.js +47 -0
  367. package/dist/service/sns/sms/sim-sns-opt-out-list.js.map +1 -0
  368. package/dist/service/sns/sms/sim-sns-phone-number.d.ts +21 -0
  369. package/dist/service/sns/sms/sim-sns-phone-number.d.ts.map +1 -0
  370. package/dist/service/sns/sms/sim-sns-phone-number.js +41 -0
  371. package/dist/service/sns/sms/sim-sns-phone-number.js.map +1 -0
  372. package/dist/service/sns/sms/sim-sns-sent-sms-message.d.ts +69 -0
  373. package/dist/service/sns/sms/sim-sns-sent-sms-message.d.ts.map +1 -0
  374. package/dist/service/sns/sms/sim-sns-sent-sms-message.js +71 -0
  375. package/dist/service/sns/sms/sim-sns-sent-sms-message.js.map +1 -0
  376. package/dist/service/sns/sms/sim-sns-sent-sms-store.d.ts +25 -0
  377. package/dist/service/sns/sms/sim-sns-sent-sms-store.d.ts.map +1 -0
  378. package/dist/service/sns/sms/sim-sns-sent-sms-store.js +28 -0
  379. package/dist/service/sns/sms/sim-sns-sent-sms-store.js.map +1 -0
  380. package/dist/service/sns/subscription/sim-sns-subscription-endpoint.d.ts +9 -7
  381. package/dist/service/sns/subscription/sim-sns-subscription-endpoint.d.ts.map +1 -1
  382. package/dist/service/sns/subscription/sim-sns-subscription-endpoint.js +7 -2
  383. package/dist/service/sns/subscription/sim-sns-subscription-endpoint.js.map +1 -1
  384. package/dist/service/sns/subscription/sim-sns-subscription-protocol.d.ts +19 -1
  385. package/dist/service/sns/subscription/sim-sns-subscription-protocol.d.ts.map +1 -1
  386. package/dist/service/sns/subscription/sim-sns-subscription-protocol.js +26 -5
  387. package/dist/service/sns/subscription/sim-sns-subscription-protocol.js.map +1 -1
  388. package/package.json +2 -2
  389. package/dist/service/lambda/function/code/vm/http/sim-lambda-vm-http-module.d.ts +0 -27
  390. package/dist/service/lambda/function/code/vm/http/sim-lambda-vm-http-module.d.ts.map +0 -1
  391. package/dist/service/lambda/function/code/vm/http/sim-lambda-vm-http-module.js +0 -78
  392. package/dist/service/lambda/function/code/vm/http/sim-lambda-vm-http-module.js.map +0 -1
  393. package/dist/service/lambda/function/code/vm/http/sim-lambda-vm-http-target.d.ts.map +0 -1
  394. package/dist/service/lambda/function/code/vm/http/sim-lambda-vm-http-target.js.map +0 -1
  395. package/dist/service/lambda/function/code/vm/http/sim-lambda-vm-wire-request.d.ts.map +0 -1
  396. package/dist/service/lambda/function/code/vm/http/sim-lambda-vm-wire-request.js.map +0 -1
@@ -6,7 +6,7 @@ import { SimLambdaFunctionLogging } from "./logging/sim-lambda-function-logging.
6
6
  import { SimLambdaFunctionPolicy } from "./policy/sim-lambda-function-policy.js";
7
7
  import { SimLambdaHandlerRunner } from "./invoke/sim-lambda-handler-runner.js";
8
8
  import { SimLambdaInvokeContextBuilder } from "./invoke/sim-lambda-invoke-context-builder.js";
9
- import { simLambdaProcessClock } from "./invoke/sim-lambda-process-clock.js";
9
+ import { runSimLambdaInHostScope } from "./invoke/sim-lambda-host-scope.js";
10
10
  import { SimRealClock } from "../../../util/clock/sim-clock.js";
11
11
  import { defaultLambdaHandler, } from "./sim-lambda-handler.type.js";
12
12
  export const DEFAULT_SIM_LAMBDA_TIMEOUT_SECONDS = 3;
@@ -50,8 +50,9 @@ export class SimLambdaFunction {
50
50
  runner = new SimLambdaHandlerRunner();
51
51
  clock;
52
52
  logging;
53
+ outboundHttp;
53
54
  constructor(properties) {
54
- const { name, roleArn, accountRegionScope = simAwsAccountRegionScopeFactory.make(), handlerFunction = defaultLambdaHandler, code, state = "Pending", handlerName, runtimeName, description, timeoutSeconds = DEFAULT_SIM_LAMBDA_TIMEOUT_SECONDS, memorySizeMb = DEFAULT_SIM_LAMBDA_MEMORY_SIZE_MB, environment, runAsOwner = this, clock = new SimRealClock(), logs, } = properties;
55
+ const { name, roleArn, accountRegionScope = simAwsAccountRegionScopeFactory.make(), handlerFunction = defaultLambdaHandler, code, state = "Pending", handlerName, runtimeName, description, timeoutSeconds = DEFAULT_SIM_LAMBDA_TIMEOUT_SECONDS, memorySizeMb = DEFAULT_SIM_LAMBDA_MEMORY_SIZE_MB, environment, runAsOwner = this, clock = new SimRealClock(), logs, outboundHttp, } = properties;
55
56
  this.clock = clock;
56
57
  this.name = name;
57
58
  this.roleArn = roleArn;
@@ -71,6 +72,7 @@ export class SimLambdaFunction {
71
72
  memorySizeMb,
72
73
  });
73
74
  this.runAsOwner = runAsOwner;
75
+ this.outboundHttp = outboundHttp;
74
76
  this.logging = new SimLambdaFunctionLogging({
75
77
  functionName: name,
76
78
  logs,
@@ -143,20 +145,17 @@ export class SimLambdaFunction {
143
145
  logStreamName: this.logging.logStreamName(),
144
146
  });
145
147
  this.logging.recordFrom(this.code);
146
- return await simAwsRunAsContext.run(this.runAsOwner, { kind: "arn", arn: this.roleArn }, async () => await this.environment.runWith(async () => await this.runWithSimulatedTime(async () => await this.logging.around(async () => await this.runner.run(this.code.handlerFunction(), event, contextBuilder)))));
148
+ return await simAwsRunAsContext.run(this.runAsOwner, { kind: "arn", arn: this.roleArn }, async () => await this.environment.runWith(async () => await this.runInHostScope(async () => await this.logging.around(async () => await this.runner.run(this.code.handlerFunction(), event, contextBuilder)))));
147
149
  }
148
150
  /**
149
- * Run an invocation with this simulation's time as the current time.
150
- *
151
- * Only code running in the host scope needs this. Zip code reads the Date
152
- * its own vm sandbox was given, so a function backed by one leaves the
153
- * global Date alone entirely.
151
+ * Run an invocation with the process globals host-scope code reads bridged
152
+ * to this simulation: the current time, and the HTTP clients it reaches for.
154
153
  */
155
- async runWithSimulatedTime(run) {
154
+ async runInHostScope(run) {
156
155
  if (!this.code.runsInHostScope) {
157
156
  return await run();
158
157
  }
159
- return await simLambdaProcessClock.run(this.clock, run);
158
+ return await runSimLambdaInHostScope({ clock: this.clock, outboundHttp: this.outboundHttp }, run);
160
159
  }
161
160
  }
162
161
  //# sourceMappingURL=sim-lambda-function.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sim-lambda-function.js","sourceRoot":"","sources":["../../../../src/service/lambda/function/sim-lambda-function.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sim-lambda-function.js","sourceRoot":"","sources":["../../../../src/service/lambda/function/sim-lambda-function.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAC;AAChF,OAAO,EAAE,+BAA+B,EAAE,MAAM,mDAAmD,CAAC;AAEpG,OAAO,EAEL,6BAA6B,GAC9B,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EAAE,wBAAwB,EAAE,MAAM,0CAA0C,CAAC;AAEpF,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AACjF,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,6BAA6B,EAAE,MAAM,+CAA+C,CAAC;AAC9F,OAAO,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAE5E,OAAO,EAAiB,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EACL,oBAAoB,GAErB,MAAM,8BAA8B,CAAC;AAItC,MAAM,CAAC,MAAM,kCAAkC,GAAG,CAAC,CAAC;AACpD,MAAM,CAAC,MAAM,iCAAiC,GAAG,GAAG,CAAC;AAmBrD;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAClC,KAA+B,EAC/B,IAAY;IAEZ,OAAO,kBAAkB,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,SAAS,aAAa,IAAI,EAAE,CAAC;AAClF,CAAC;AAuDD;;;;;;;GAOG;AACH,MAAM,OAAO,iBAAiB;IACZ,IAAI,CAAwB;IAC5B,OAAO,CAAS;IAChB,kBAAkB,CAA2B;IAC7C,WAAW,CAAqB;IAChC,WAAW,CAAqB;IAChC,WAAW,CAAqB;IAChC,cAAc,CAAS;IACvB,YAAY,CAAS;IACrB,WAAW,CAAuB;IAClD;;;;;;;OAOG;IACa,cAAc,GAAG,IAAI,uBAAuB,EAAE,CAAC;IAE/D,MAAM,CAAyB;IACd,IAAI,CAA0B;IAC9B,UAAU,CAAmB;IAC7B,MAAM,GAAG,IAAI,sBAAsB,EAAE,CAAC;IACtC,KAAK,CAAW;IAChB,OAAO,CAA2B;IAClC,YAAY,CAAoC;IAEjE,YAAY,UAAuC;QACjD,MAAM,EACJ,IAAI,EACJ,OAAO,EACP,kBAAkB,GAAG,+BAA+B,CAAC,IAAI,EAAE,EAC3D,eAAe,GAAG,oBAAoB,EACtC,IAAI,EACJ,KAAK,GAAG,SAAS,EACjB,WAAW,EACX,WAAW,EACX,WAAW,EACX,cAAc,GAAG,kCAAkC,EACnD,YAAY,GAAG,iCAAiC,EAChD,WAAW,EACX,UAAU,GAAG,IAAI,EACjB,KAAK,GAAG,IAAI,YAAY,EAAE,EAC1B,IAAI,EACJ,YAAY,GACb,GAAG,UAAU,CAAC;QACf,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,IAAI,GAAG,IAA6B,CAAC;QAC1C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;QAC7C,IAAI,CAAC,IAAI,GAAG,IAAI,IAAI,IAAI,6BAA6B,CAAC,eAAe,CAAC,CAAC;QACvE,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,WAAW;YACd,WAAW;gBACX,IAAI,oBAAoB,CAAC;oBACvB,YAAY,EAAE,IAAI;oBAClB,UAAU,EAAE,kBAAkB,CAAC,UAAU;oBACzC,YAAY;iBACb,CAAC,CAAC;QACL,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,OAAO,GAAG,IAAI,wBAAwB,CAAC;YAC1C,YAAY,EAAE,IAAI;YAClB,IAAI;YACJ,KAAK;SACN,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED;;OAEG;IACH,IAAI,GAAG;QACL,OAAO,oBAAoB,CAAC,IAAI,CAAC,kBAAkB,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IAClE,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC;QACvB,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,aAAa;QACX,OAAO;YACL,YAAY,EAAE,IAAI,CAAC,IAAI;YACvB,WAAW,EAAE,IAAI,CAAC,GAAG;YACrB,IAAI,EAAE,IAAI,CAAC,OAAO;YAClB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,SAAS;YAClB,OAAO,EAAE,IAAI,CAAC,cAAc;YAC5B,UAAU,EAAE,IAAI,CAAC,YAAY;YAC7B,OAAO,EAAE,IAAI,CAAC,WAAW;YACzB,OAAO,EAAE,IAAI,CAAC,WAAW;YACzB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE;SAC9C,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,MAAM,CAAC,KAAc;QACzB,MAAM,cAAc,GAAG,IAAI,6BAA6B,CAAC;YACvD,YAAY,EAAE,IAAI,CAAC,IAAI;YACvB,kBAAkB,EAAE,IAAI,CAAC,GAAG;YAC5B,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY;YACvC,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE;SAC5C,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEnC,OAAO,MAAM,kBAAkB,CAAC,GAAG,CACjC,IAAI,CAAC,UAAU,EACf,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE,EAClC,KAAK,IAAI,EAAE,CACT,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAC5B,KAAK,IAAI,EAAE,CACT,MAAM,IAAI,CAAC,cAAc,CACvB,KAAK,IAAI,EAAE,CACT,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CACvB,KAAK,IAAI,EAAE,CACT,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CACnB,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,EAC3B,KAAK,EACL,cAAc,CACf,CACJ,CACJ,CACJ,CACJ,CAAC;IACJ,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,cAAc,CAAI,GAAqB;QACnD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YAC/B,OAAO,MAAM,GAAG,EAAE,CAAC;QACrB,CAAC;QAED,OAAO,MAAM,uBAAuB,CAClC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,EACtD,GAAG,CACJ,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Why a Function URL request's payload hash cannot be accepted, or nothing
3
+ * when it can.
4
+ *
5
+ * Lambda checks what a request declares its body hashes to before it looks at
6
+ * who is asking, and answers a request that fails the check with a signature
7
+ * mismatch. Two declarations fail it. One is a digest that disagrees with the
8
+ * bytes that arrived, which would otherwise let a signed request carry any body
9
+ * at all. The other is `UNSIGNED-PAYLOAD`, which Lambda refuses outright.
10
+ * CloudFront signs a POST or PUT with it when the viewer sent no hash, and that
11
+ * is why such a request through an origin access control never reaches the
12
+ * function.
13
+ *
14
+ * A request declaring nothing is not checked. The hash is an input to the
15
+ * signature rather than something a request has to state, so a caller that
16
+ * signed the body it sent and left the header off has said nothing to
17
+ * disagree with.
18
+ *
19
+ * The method the request used makes no difference here. A declaration is a
20
+ * claim about the body, and SigV4 covers it for a GET as much as for a POST,
21
+ * so a GET carrying a digest of other bytes is refused as well. The method
22
+ * matters on the CloudFront side, which invents a declaration for a POST or a
23
+ * PUT alone.
24
+ *
25
+ * https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-restricting-access-to-lambda.html
26
+ */
27
+ export declare function simLambdaUrlPayloadRefusal(request: Request): Promise<string | undefined>;
28
+ //# sourceMappingURL=sim-lambda-url-payload-hash.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-lambda-url-payload-hash.d.ts","sourceRoot":"","sources":["../../../../../src/service/lambda/serve/auth/sim-lambda-url-payload-hash.ts"],"names":[],"mappings":"AAOA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAsB,0BAA0B,CAC9C,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAkC7B"}
@@ -0,0 +1,56 @@
1
+ import { simIamSigV4ContentSha256Header, SimIamSigV4PayloadDeclaration, simIamSigV4UnsignedPayload, } from "../../../iam/sigv4/canonical/sim-iam-sigv4-payload-hash.js";
2
+ import { SimIamSigV4Error } from "../../../iam/sigv4/error/sim-iam-sigv4.error.js";
3
+ /**
4
+ * Why a Function URL request's payload hash cannot be accepted, or nothing
5
+ * when it can.
6
+ *
7
+ * Lambda checks what a request declares its body hashes to before it looks at
8
+ * who is asking, and answers a request that fails the check with a signature
9
+ * mismatch. Two declarations fail it. One is a digest that disagrees with the
10
+ * bytes that arrived, which would otherwise let a signed request carry any body
11
+ * at all. The other is `UNSIGNED-PAYLOAD`, which Lambda refuses outright.
12
+ * CloudFront signs a POST or PUT with it when the viewer sent no hash, and that
13
+ * is why such a request through an origin access control never reaches the
14
+ * function.
15
+ *
16
+ * A request declaring nothing is not checked. The hash is an input to the
17
+ * signature rather than something a request has to state, so a caller that
18
+ * signed the body it sent and left the header off has said nothing to
19
+ * disagree with.
20
+ *
21
+ * The method the request used makes no difference here. A declaration is a
22
+ * claim about the body, and SigV4 covers it for a GET as much as for a POST,
23
+ * so a GET carrying a digest of other bytes is refused as well. The method
24
+ * matters on the CloudFront side, which invents a declaration for a POST or a
25
+ * PUT alone.
26
+ *
27
+ * https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-restricting-access-to-lambda.html
28
+ */
29
+ export async function simLambdaUrlPayloadRefusal(request) {
30
+ if (!request.headers.has(simIamSigV4ContentSha256Header)) {
31
+ return undefined;
32
+ }
33
+ const declaration = SimIamSigV4PayloadDeclaration.fromHeaders(request.headers);
34
+ // A clone, so the body is still there for the invocation event to read.
35
+ const body = new Uint8Array(await request.clone().arrayBuffer());
36
+ let declared;
37
+ try {
38
+ declared = declaration.hashFor(body);
39
+ }
40
+ catch (error) {
41
+ if (error instanceof SimIamSigV4Error) {
42
+ return error.message;
43
+ }
44
+ /* v8 ignore next 2 -- a declaration is refused with nothing else */
45
+ throw error;
46
+ }
47
+ if (declared !== simIamSigV4UnsignedPayload) {
48
+ return undefined;
49
+ }
50
+ return (`Signed ${simIamSigV4ContentSha256Header} declares ` +
51
+ `${simIamSigV4UnsignedPayload}, which Lambda does not support. A ` +
52
+ `${request.method} to a Function URL has to declare the SHA-256 of its ` +
53
+ `body, and one sent through a CloudFront origin access control declares ` +
54
+ `whatever the viewer request declared.`);
55
+ }
56
+ //# sourceMappingURL=sim-lambda-url-payload-hash.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-lambda-url-payload-hash.js","sourceRoot":"","sources":["../../../../../src/service/lambda/serve/auth/sim-lambda-url-payload-hash.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,8BAA8B,EAC9B,6BAA6B,EAC7B,0BAA0B,GAC3B,MAAM,4DAA4D,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iDAAiD,CAAC;AAEnF;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,OAAgB;IAEhB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,EAAE,CAAC;QACzD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,WAAW,GAAG,6BAA6B,CAAC,WAAW,CAC3D,OAAO,CAAC,OAAO,CAChB,CAAC;IACF,wEAAwE;IACxE,MAAM,IAAI,GAAG,IAAI,UAAU,CAAC,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;IACjE,IAAI,QAAgB,CAAC;IAErB,IAAI,CAAC;QACH,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,gBAAgB,EAAE,CAAC;YACtC,OAAO,KAAK,CAAC,OAAO,CAAC;QACvB,CAAC;QAED,oEAAoE;QACpE,MAAM,KAAK,CAAC;IACd,CAAC;IAED,IAAI,QAAQ,KAAK,0BAA0B,EAAE,CAAC;QAC5C,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO,CACL,UAAU,8BAA8B,YAAY;QACpD,GAAG,0BAA0B,qCAAqC;QAClE,GAAG,OAAO,CAAC,MAAM,uDAAuD;QACxE,yEAAyE;QACzE,uCAAuC,CACxC,CAAC;AACJ,CAAC"}
@@ -6,6 +6,14 @@
6
6
  * Lambda's, down to the link, because that is what someone will be reading.
7
7
  */
8
8
  export declare const simLambdaUrlForbiddenMessage: string;
9
+ /**
10
+ * What real Lambda says when a Function URL request does not verify.
11
+ *
12
+ * This is the answer a request that failed authentication gets, as opposed to
13
+ * one that was authenticated and then not allowed, and the wording is what
14
+ * anyone searching for the failure will have in front of them.
15
+ */
16
+ export declare const simLambdaUrlSignatureMismatchMessage: string;
9
17
  /**
10
18
  * The error responses a Function URL endpoint returns itself, before or
11
19
  * instead of the function producing one.
@@ -23,6 +31,14 @@ export declare class SimLambdaUrlErrorResponse {
23
31
  * The caller is not allowed to invoke this Function URL.
24
32
  */
25
33
  forbidden(): Response;
34
+ /**
35
+ * The request does not carry a signature over the body it arrived with.
36
+ *
37
+ * Real Lambda says only that the signature did not match, which is faithful
38
+ * and impossible to act on, so what the simulator worked out goes in a hint
39
+ * header where it changes nothing for a client reading the body.
40
+ */
41
+ signatureDoesNotMatch(detail: string): Response;
26
42
  /**
27
43
  * The function failed to handle the invocation.
28
44
  */
@@ -1 +1 @@
1
- {"version":3,"file":"sim-lambda-url-error-response.d.ts","sourceRoot":"","sources":["../../../../../src/service/lambda/serve/response/sim-lambda-url-error-response.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,eAAO,MAAM,4BAA4B,QAEsB,CAAC;AAEhE;;;;;;;GAOG;AACH,qBAAa,yBAAyB;IACpC;;OAEG;IACH,QAAQ,IAAI,QAAQ,CAEnB;IAED;;OAEG;IACH,SAAS,IAAI,QAAQ,CAEpB;IAED;;OAEG;IACH,mBAAmB,IAAI,QAAQ,CAE9B;IAED,OAAO,CAAC,YAAY;CASrB"}
1
+ {"version":3,"file":"sim-lambda-url-error-response.d.ts","sourceRoot":"","sources":["../../../../../src/service/lambda/serve/response/sim-lambda-url-error-response.ts"],"names":[],"mappings":"AAKA;;;;;;GAMG;AACH,eAAO,MAAM,4BAA4B,QAEsB,CAAC;AAEhE;;;;;;GAMG;AACH,eAAO,MAAM,oCAAoC,QAGP,CAAC;AAE3C;;;;;;;GAOG;AACH,qBAAa,yBAAyB;IACpC;;OAEG;IACH,QAAQ,IAAI,QAAQ,CAEnB;IAED;;OAEG;IACH,SAAS,IAAI,QAAQ,CAEpB;IAED;;;;;;OAMG;IACH,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAU9C;IAED;;OAEG;IACH,mBAAmB,IAAI,QAAQ,CAE9B;IAED,OAAO,CAAC,YAAY;CASrB"}
@@ -1,3 +1,4 @@
1
+ import { simAwsErrorDetailHeaderName, simAwsErrorHeaderName, } from "../../../../serve/http/response/sim-aws-response-hints.js";
1
2
  /**
2
3
  * What real Lambda says when it refuses a Function URL request.
3
4
  *
@@ -7,6 +8,16 @@
7
8
  */
8
9
  export const simLambdaUrlForbiddenMessage = "Forbidden. For troubleshooting Function URL authorization issues, see: " +
9
10
  "https://docs.aws.amazon.com/lambda/latest/dg/urls-auth.html";
11
+ /**
12
+ * What real Lambda says when a Function URL request does not verify.
13
+ *
14
+ * This is the answer a request that failed authentication gets, as opposed to
15
+ * one that was authenticated and then not allowed, and the wording is what
16
+ * anyone searching for the failure will have in front of them.
17
+ */
18
+ export const simLambdaUrlSignatureMismatchMessage = "The request signature we calculated does not match the signature you " +
19
+ "provided. Check your AWS Secret Access Key and signing method. Consult " +
20
+ "the service documentation for details.";
10
21
  /**
11
22
  * The error responses a Function URL endpoint returns itself, before or
12
23
  * instead of the function producing one.
@@ -28,6 +39,19 @@ export class SimLambdaUrlErrorResponse {
28
39
  forbidden() {
29
40
  return this.jsonResponse(403, simLambdaUrlForbiddenMessage);
30
41
  }
42
+ /**
43
+ * The request does not carry a signature over the body it arrived with.
44
+ *
45
+ * Real Lambda says only that the signature did not match, which is faithful
46
+ * and impossible to act on, so what the simulator worked out goes in a hint
47
+ * header where it changes nothing for a client reading the body.
48
+ */
49
+ signatureDoesNotMatch(detail) {
50
+ const response = this.jsonResponse(403, simLambdaUrlSignatureMismatchMessage);
51
+ response.headers.set(simAwsErrorHeaderName, "SignatureDoesNotMatch");
52
+ response.headers.set(simAwsErrorDetailHeaderName, detail);
53
+ return response;
54
+ }
31
55
  /**
32
56
  * The function failed to handle the invocation.
33
57
  */
@@ -1 +1 @@
1
- {"version":3,"file":"sim-lambda-url-error-response.js","sourceRoot":"","sources":["../../../../../src/service/lambda/serve/response/sim-lambda-url-error-response.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,4BAA4B,GACvC,yEAAyE;IACzE,6DAA6D,CAAC;AAEhE;;;;;;;GAOG;AACH,MAAM,OAAO,yBAAyB;IACpC;;OAEG;IACH,QAAQ;QACN,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IAC7C,CAAC;IAED;;OAEG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,4BAA4B,CAAC,CAAC;IAC9D,CAAC;IAED;;OAEG;IACH,mBAAmB;QACjB,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,uBAAuB,CAAC,CAAC;IACzD,CAAC;IAEO,YAAY,CAAC,MAAc,EAAE,OAAe;QAClD,OAAO,QAAQ,CAAC,IAAI,CAClB,EAAE,OAAO,EAAE,OAAO,EAAE,EACpB;YACE,MAAM;YACN,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;SAChD,CACF,CAAC;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"sim-lambda-url-error-response.js","sourceRoot":"","sources":["../../../../../src/service/lambda/serve/response/sim-lambda-url-error-response.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,2BAA2B,EAC3B,qBAAqB,GACtB,MAAM,2DAA2D,CAAC;AAEnE;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,4BAA4B,GACvC,yEAAyE;IACzE,6DAA6D,CAAC;AAEhE;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,oCAAoC,GAC/C,uEAAuE;IACvE,yEAAyE;IACzE,wCAAwC,CAAC;AAE3C;;;;;;;GAOG;AACH,MAAM,OAAO,yBAAyB;IACpC;;OAEG;IACH,QAAQ;QACN,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IAC7C,CAAC;IAED;;OAEG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,4BAA4B,CAAC,CAAC;IAC9D,CAAC;IAED;;;;;;OAMG;IACH,qBAAqB,CAAC,MAAc;QAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAChC,GAAG,EACH,oCAAoC,CACrC,CAAC;QAEF,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,EAAE,uBAAuB,CAAC,CAAC;QACrE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,2BAA2B,EAAE,MAAM,CAAC,CAAC;QAE1D,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;OAEG;IACH,mBAAmB;QACjB,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,uBAAuB,CAAC,CAAC;IACzD,CAAC;IAEO,YAAY,CAAC,MAAc,EAAE,OAAe;QAClD,OAAO,QAAQ,CAAC,IAAI,CAClB,EAAE,OAAO,EAAE,OAAO,EAAE,EACpB;YACE,MAAM;YACN,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;SAChD,CACF,CAAC;IACJ,CAAC;CACF"}
@@ -38,6 +38,12 @@ export declare class SimLambdaServiceController implements SimAwsServiceControll
38
38
  * What the request is being made on behalf of travels with it, so a
39
39
  * CloudFront Distribution reaching this URL through an origin access control
40
40
  * is judged against the Distribution the permission names.
41
+ *
42
+ * What the request declares its body hashes to is settled first, as real
43
+ * Lambda authenticates a request before it authorizes one. A POST or PUT
44
+ * arriving through an origin access control declares an unsigned payload
45
+ * unless the viewer sent a hash of its own, and Lambda takes no unsigned
46
+ * payload, so it is refused here rather than reaching the function.
41
47
  */
42
48
  private invokeAuthenticated;
43
49
  private invoke;
@@ -1 +1 @@
1
- {"version":3,"file":"sim-lambda-controller.d.ts","sourceRoot":"","sources":["../../../../src/service/lambda/serve/sim-lambda-controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,uBAAuB,EACvB,oBAAoB,EACrB,MAAM,qDAAqD,CAAC;AAG7D,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAG9C,OAAO,EAEL,kBAAkB,EACnB,MAAM,4BAA4B,CAAC;AAIpC,UAAU,oCAAoC;IAC5C,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,kBAAkB,CAAC;CACtC;AAED;;;;;;;;;;;GAWG;AACH,qBAAa,0BAA2B,YAAW,uBAAuB;IACxE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;IAC5C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA0B;IACvD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAoC;IACpE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAmC;IAEjE,YAAY,UAAU,GAAE,oCAAyC,EAQhE;IAED;;OAEG;IACG,aAAa,CAAC,cAAc,EAAE,oBAAoB,GAAG,OAAO,CAAC,QAAQ,CAAC,CAc3E;IAED;;;;;;;;;;;OAWG;YACW,mBAAmB;YAmBnB,MAAM;CAqBrB"}
1
+ {"version":3,"file":"sim-lambda-controller.d.ts","sourceRoot":"","sources":["../../../../src/service/lambda/serve/sim-lambda-controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,uBAAuB,EACvB,oBAAoB,EACrB,MAAM,qDAAqD,CAAC;AAG7D,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAG9C,OAAO,EAEL,kBAAkB,EACnB,MAAM,4BAA4B,CAAC;AAKpC,UAAU,oCAAoC;IAC5C,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,kBAAkB,CAAC;CACtC;AAED;;;;;;;;;;;GAWG;AACH,qBAAa,0BAA2B,YAAW,uBAAuB;IACxE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;IAC5C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA0B;IACvD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAoC;IACpE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAmC;IAEjE,YAAY,UAAU,GAAE,oCAAyC,EAQhE;IAED;;OAEG;IACG,aAAa,CAAC,cAAc,EAAE,oBAAoB,GAAG,OAAO,CAAC,QAAQ,CAAC,CAc3E;IAED;;;;;;;;;;;;;;;;;OAiBG;YACW,mBAAmB;YA2BnB,MAAM;CAqBrB"}
@@ -5,6 +5,7 @@ import { simLambdaUrlEndpoint } from "./event/sim-lambda-url-endpoint.js";
5
5
  import { SimLambdaUrlErrorResponse } from "./response/sim-lambda-url-error-response.js";
6
6
  import { SimLambdaUrlRouter, } from "./sim-lambda-url-router.js";
7
7
  import { SimLambdaUrlAuthorizer } from "./auth/sim-lambda-url-authorizer.js";
8
+ import { simLambdaUrlPayloadRefusal } from "./auth/sim-lambda-url-payload-hash.js";
8
9
  /**
9
10
  * Localhost HTTP controller for simulated Lambda Function URLs.
10
11
  *
@@ -57,9 +58,19 @@ export class SimLambdaServiceController {
57
58
  * What the request is being made on behalf of travels with it, so a
58
59
  * CloudFront Distribution reaching this URL through an origin access control
59
60
  * is judged against the Distribution the permission names.
61
+ *
62
+ * What the request declares its body hashes to is settled first, as real
63
+ * Lambda authenticates a request before it authorizes one. A POST or PUT
64
+ * arriving through an origin access control declares an unsigned payload
65
+ * unless the viewer sent a hash of its own, and Lambda takes no unsigned
66
+ * payload, so it is refused here rather than reaching the function.
60
67
  */
61
68
  async invokeAuthenticated(route, serviceRequest) {
62
69
  const { caller } = serviceRequest;
70
+ const payloadRefusal = await simLambdaUrlPayloadRefusal(serviceRequest.request);
71
+ if (payloadRefusal !== undefined) {
72
+ return this.errorResponse.signatureDoesNotMatch(payloadRefusal);
73
+ }
63
74
  const decision = new SimLambdaUrlAuthorizer({ iam: route.iam }).authorize({
64
75
  simFunction: route.simFunction,
65
76
  functionUrl: route.functionUrl,
@@ -1 +1 @@
1
- {"version":3,"file":"sim-lambda-controller.js","sourceRoot":"","sources":["../../../../src/service/lambda/serve/sim-lambda-controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sim-lambda-controller.js","sourceRoot":"","sources":["../../../../src/service/lambda/serve/sim-lambda-controller.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@ import { type SimLambdaContainerImages } from "./function/code/image/sim-lambda-
12
12
  import type { SimLambdaCodeStore } from "./function/code/store/sim-lambda-code-store.js";
13
13
  import type { SimLambdaVmSdkModuleProvider } from "./function/code/vm/sdk/sim-lambda-vm-sdk-module-provider.js";
14
14
  import type { SimLogsServiceWriter } from "../logs/write/sim-logs-service-writer.js";
15
+ import type { SimLambdaOutboundHttp } from "./function/outbound/sim-lambda-outbound-http.js";
15
16
  import type { SimLambdaFunctionMap } from "./function/sim-lambda-function.js";
16
17
  import { SimLambdaFunctionLookup } from "./function/url/sim-lambda-function-lookup.js";
17
18
  import { SimLambdaFunctionUrlStore } from "./function/url/sim-lambda-function-url-store.js";
@@ -28,6 +29,13 @@ export interface SimLambdaProperties {
28
29
  readonly containerImages?: SimLambdaContainerImages;
29
30
  readonly vmSdkModuleProvider?: SimLambdaVmSdkModuleProvider;
30
31
  readonly logs?: SimLogsServiceWriter | undefined;
32
+ /**
33
+ * Where the HTTP requests this simulated Lambda's function code makes to
34
+ * hostnames the simulation serves are answered. A standalone SimLambda has
35
+ * no simulated environment to answer them, so its functions reach the
36
+ * network as any other code would.
37
+ */
38
+ readonly outboundHttp?: SimLambdaOutboundHttp;
31
39
  readonly urlRegistry?: SimLambdaUrlRegistry;
32
40
  readonly eventSourceQueues?: SimSqsPollQueues;
33
41
  readonly eventSourceStreams?: SimLambdaEventSourceStreams;
@@ -1 +1 @@
1
- {"version":3,"file":"sim-lambda-commands.d.ts","sourceRoot":"","sources":["../../../src/service/lambda/sim-lambda-commands.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,mBAAmB,EAEzB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAChF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAE3E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AACvF,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,kDAAkD,CAAC;AAC1D,OAAO,EAAE,mCAAmC,EAAE,MAAM,4EAA4E,CAAC;AACjI,OAAO,EAAE,yBAAyB,EAAE,MAAM,oDAAoD,CAAC;AAC/F,OAAO,EAAE,4BAA4B,EAAE,MAAM,4DAA4D,CAAC;AAC1G,OAAO,EAAE,2BAA2B,EAAE,MAAM,wDAAwD,CAAC;AAGrG,OAAO,EACL,KAAK,2BAA2B,EAEjC,MAAM,0DAA0D,CAAC;AAClE,OAAO,EACL,KAAK,wBAAwB,EAE9B,MAAM,sDAAsD,CAAC;AAC9D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gDAAgD,CAAC;AACzF,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,6DAA6D,CAAC;AAChH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAErF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EAAE,uBAAuB,EAAE,MAAM,8CAA8C,CAAC;AACvF,OAAO,EAAE,yBAAyB,EAAE,MAAM,iDAAiD,CAAC;AAC5F,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAE7E;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,wBAAwB,CAAC;IACvD,QAAQ,CAAC,GAAG,CAAC,EAAE,uBAAuB,CAAC;IACvC,QAAQ,CAAC,UAAU,CAAC,EAAE,mBAAmB,CAAC;IAC1C,QAAQ,CAAC,UAAU,CAAC,EAAE,gBAAgB,CAAC;IACvC,QAAQ,CAAC,SAAS,CAAC,EAAE,kBAAkB,CAAC;IACxC,QAAQ,CAAC,eAAe,CAAC,EAAE,wBAAwB,CAAC;IACpD,QAAQ,CAAC,mBAAmB,CAAC,EAAE,4BAA4B,CAAC;IAC5D,QAAQ,CAAC,IAAI,CAAC,EAAE,oBAAoB,GAAG,SAAS,CAAC;IACjD,QAAQ,CAAC,WAAW,CAAC,EAAE,oBAAoB,CAAC;IAC5C,QAAQ,CAAC,iBAAiB,CAAC,EAAE,gBAAgB,CAAC;IAC9C,QAAQ,CAAC,kBAAkB,CAAC,EAAE,2BAA2B,CAAC;CAC3D;AAED,UAAU,2BAA4B,SAAQ,mBAAmB;IAC/D,QAAQ,CAAC,SAAS,EAAE,oBAAoB,CAAC;IACzC,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAAC;CACvC;AAED;;;;;;;GAOG;AACH,qBAAa,iBAAiB;IAC5B;;;;OAIG;IACH,SAAgB,eAAe,EAAE,wBAAwB,CAAC;IAE1D,SAAgB,gBAAgB,EAAE,yBAAyB,CAAC;IAC5D,SAAgB,cAAc,EAAE,uBAAuB,CAAC;IACxD,SAAgB,SAAS,EAAE,yBAAyB,CAAC;IACrD,SAAgB,YAAY,EAAE,4BAA4B,CAAC;IAC3D,SAAgB,WAAW,EAAE,2BAA2B,CAAC;IACzD,SAAgB,mBAAmB,EAAE,mCAAmC,CAAC;IAEzE,YAAY,UAAU,EAAE,2BAA2B,EAyElD;CACF"}
1
+ {"version":3,"file":"sim-lambda-commands.d.ts","sourceRoot":"","sources":["../../../src/service/lambda/sim-lambda-commands.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,mBAAmB,EAEzB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAChF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAE3E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AACvF,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,kDAAkD,CAAC;AAC1D,OAAO,EAAE,mCAAmC,EAAE,MAAM,4EAA4E,CAAC;AACjI,OAAO,EAAE,yBAAyB,EAAE,MAAM,oDAAoD,CAAC;AAC/F,OAAO,EAAE,4BAA4B,EAAE,MAAM,4DAA4D,CAAC;AAC1G,OAAO,EAAE,2BAA2B,EAAE,MAAM,wDAAwD,CAAC;AAGrG,OAAO,EACL,KAAK,2BAA2B,EAEjC,MAAM,0DAA0D,CAAC;AAClE,OAAO,EACL,KAAK,wBAAwB,EAE9B,MAAM,sDAAsD,CAAC;AAC9D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gDAAgD,CAAC;AACzF,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,6DAA6D,CAAC;AAChH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AACrF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iDAAiD,CAAC;AAE7F,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EAAE,uBAAuB,EAAE,MAAM,8CAA8C,CAAC;AACvF,OAAO,EAAE,yBAAyB,EAAE,MAAM,iDAAiD,CAAC;AAC5F,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAE7E;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,wBAAwB,CAAC;IACvD,QAAQ,CAAC,GAAG,CAAC,EAAE,uBAAuB,CAAC;IACvC,QAAQ,CAAC,UAAU,CAAC,EAAE,mBAAmB,CAAC;IAC1C,QAAQ,CAAC,UAAU,CAAC,EAAE,gBAAgB,CAAC;IACvC,QAAQ,CAAC,SAAS,CAAC,EAAE,kBAAkB,CAAC;IACxC,QAAQ,CAAC,eAAe,CAAC,EAAE,wBAAwB,CAAC;IACpD,QAAQ,CAAC,mBAAmB,CAAC,EAAE,4BAA4B,CAAC;IAC5D,QAAQ,CAAC,IAAI,CAAC,EAAE,oBAAoB,GAAG,SAAS,CAAC;IACjD;;;;;OAKG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,qBAAqB,CAAC;IAC9C,QAAQ,CAAC,WAAW,CAAC,EAAE,oBAAoB,CAAC;IAC5C,QAAQ,CAAC,iBAAiB,CAAC,EAAE,gBAAgB,CAAC;IAC9C,QAAQ,CAAC,kBAAkB,CAAC,EAAE,2BAA2B,CAAC;CAC3D;AAED,UAAU,2BAA4B,SAAQ,mBAAmB;IAC/D,QAAQ,CAAC,SAAS,EAAE,oBAAoB,CAAC;IACzC,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAAC;CACvC;AAED;;;;;;;GAOG;AACH,qBAAa,iBAAiB;IAC5B;;;;OAIG;IACH,SAAgB,eAAe,EAAE,wBAAwB,CAAC;IAE1D,SAAgB,gBAAgB,EAAE,yBAAyB,CAAC;IAC5D,SAAgB,cAAc,EAAE,uBAAuB,CAAC;IACxD,SAAgB,SAAS,EAAE,yBAAyB,CAAC;IACrD,SAAgB,YAAY,EAAE,4BAA4B,CAAC;IAC3D,SAAgB,WAAW,EAAE,2BAA2B,CAAC;IACzD,SAAgB,mBAAmB,EAAE,mCAAmC,CAAC;IAEzE,YAAY,UAAU,EAAE,2BAA2B,EA2ElD;CACF"}
@@ -35,7 +35,7 @@ export class SimLambdaCommands {
35
35
  permissions;
36
36
  eventSourceMappings;
37
37
  constructor(properties) {
38
- const { accountRegionScope = simAwsAccountRegionScopeFactory.make(), iam = new SimIamAllowAllAuth(), background = new BackgroundTasks(), codeStore, vmSdkModuleProvider, logs,
38
+ const { accountRegionScope = simAwsAccountRegionScopeFactory.make(), iam = new SimIamAllowAllAuth(), background = new BackgroundTasks(), codeStore, vmSdkModuleProvider, logs, outboundHttp,
39
39
  // A standalone SimLambda is not reachable over HTTP, so its own registry
40
40
  // is enough; a SimAws-created one shares the environment-wide registry
41
41
  // the serving layer routes with.
@@ -96,6 +96,7 @@ export class SimLambdaCommands {
96
96
  containerImages,
97
97
  vmSdkModuleProvider,
98
98
  logs,
99
+ outboundHttp,
99
100
  });
100
101
  }
101
102
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sim-lambda-commands.js","sourceRoot":"","sources":["../../../src/service/lambda/sim-lambda-commands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sim-lambda-commands.js","sourceRoot":"","sources":["../../../src/service/lambda/sim-lambda-commands.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"sim-rekognition-face-detail-builder.d.ts","sourceRoot":"","sources":["../../../../src/service/rekognition/face/sim-rekognition-face-detail-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,iDAAiD,CAAC;AACtG,OAAO,KAAK,EACV,+BAA+B,EAC/B,4BAA4B,EAC7B,MAAM,sCAAsC,CAAC;AAE9C,KAAK,8BAA8B,GAAG,MAAM,8BAA8B,CAAC;AAM3E;;;;;;;;;;;GAWG;AACH,qBAAa,+BAA+B;IAG9B,OAAO,CAAC,QAAQ,CAAC,UAAU;IAFvC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAuC;IAE9D,YAA6B,UAAU,EAAE,4BAA4B,EAAI;IAEzE;;;OAGG;IACH,KAAK,CAAC,OAAO,SAAS,8BAA8B,EAClD,MAAM,EAAE,OAAO,EACf,SAAS,EAAE,+BAA+B,EAC1C,KAAK,EAAE,QAAQ,CAAC,8BAA8B,CAAC,CAAC,OAAO,CAAC,GAAG,SAAS,GACnE,IAAI,CASN;IAED;;OAEG;IACH,KAAK,IAAI,8BAA8B,CAEtC;CACF"}
1
+ {"version":3,"file":"sim-rekognition-face-detail-builder.d.ts","sourceRoot":"","sources":["../../../../src/service/rekognition/face/sim-rekognition-face-detail-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,iDAAiD,CAAC;AACtG,OAAO,KAAK,EACV,+BAA+B,EAC/B,4BAA4B,EAC7B,MAAM,sCAAsC,CAAC;AAE9C,KAAK,8BAA8B,GAAG,MAAM,8BAA8B,CAAC;AAQ3E;;;;;;;;;;;GAWG;AACH,qBAAa,+BAA+B;IAG9B,OAAO,CAAC,QAAQ,CAAC,UAAU;IAFvC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAuC;IAE9D,YAA6B,UAAU,EAAE,4BAA4B,EAAI;IAEzE;;;OAGG;IACH,KAAK,CAAC,OAAO,SAAS,8BAA8B,EAClD,MAAM,EAAE,OAAO,EACf,SAAS,EAAE,+BAA+B,EAC1C,KAAK,EAAE,QAAQ,CAAC,8BAA8B,CAAC,CAAC,OAAO,CAAC,GAAG,SAAS,GACnE,IAAI,CASN;IAED;;OAEG;IACH,KAAK,IAAI,8BAA8B,CAEtC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"sim-rekognition-face-detail-builder.js","sourceRoot":"","sources":["../../../../src/service/rekognition/face/sim-rekognition-face-detail-builder.ts"],"names":[],"mappings":"AAYA;;;;;;;;;;;GAWG;AACH,MAAM,OAAO,+BAA+B;IAGb,UAAU;IAFtB,MAAM,GAAoC,EAAE,CAAC;IAE9D,YAA6B,UAAwC;0BAAxC,UAAU;IAAiC,CAAC;IAEzE;;;OAGG;IACH,KAAK,CACH,MAAe,EACf,SAA0C,EAC1C,KAAoE;QAEpE,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;YAC7D,OAAO,IAAI,CAAC;QACd,CAAC;QAED,kHAAkH;QAClH,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC;QAE5B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,KAAK;QACH,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;CACF"}
1
+ {"version":3,"file":"sim-rekognition-face-detail-builder.js","sourceRoot":"","sources":["../../../../src/service/rekognition/face/sim-rekognition-face-detail-builder.ts"],"names":[],"mappings":"AAcA;;;;;;;;;;;GAWG;AACH,MAAM,OAAO,+BAA+B;IAGb,UAAU;IAFtB,MAAM,GAAoC,EAAE,CAAC;IAE9D,YAA6B,UAAwC;0BAAxC,UAAU;IAAiC,CAAC;IAEzE;;;OAGG;IACH,KAAK,CACH,MAAe,EACf,SAA0C,EAC1C,KAAoE;QAEpE,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;YAC7D,OAAO,IAAI,CAAC;QACd,CAAC;QAED,kHAAkH;QAClH,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC;QAE5B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,KAAK;QACH,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;CACF"}
@@ -26,9 +26,10 @@ export declare class SimCfnSnsSubscriptionProperties {
26
26
  /**
27
27
  * What the subscription delivers to.
28
28
  *
29
- * Real CloudFormation leaves it optional, because a protocol such as `sms`
30
- * carries the destination elsewhere. Neither protocol simulated here is one
31
- * of those, so an absent endpoint is refused by Subscribe rather than here.
29
+ * Real CloudFormation leaves it optional, because a protocol such as
30
+ * `application` carries the destination elsewhere. No protocol simulated here
31
+ * is one of those, so an absent endpoint is refused by Subscribe rather than
32
+ * here.
32
33
  */
33
34
  private endpoint;
34
35
  private attributes;
@@ -1 +1 @@
1
- {"version":3,"file":"sim-cfn-sns-subscription-properties.d.ts","sourceRoot":"","sources":["../../../../../src/service/sns/cfn/subscription/sim-cfn-sns-subscription-properties.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sDAAsD,CAAC;AAC3F,OAAO,KAAK,EAEV,yBAAyB,EAC1B,MAAM,kEAAkE,CAAC;AAC1E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,oDAAoD,CAAC;AAcnG,UAAU,yCAAyC;IACjD,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAClC,QAAQ,CAAC,UAAU,EAAE,yBAAyB,CAAC;CAChD;AAED;;;;;;;;;GASG;AACH,qBAAa,+BAA+B;IAC1C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAiB;IAC1C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA2C;IAEtE,YAAY,UAAU,EAAE,yCAAyC,EAGhE;IAED;;OAEG;IACH,KAAK,IAAI,wBAAwB,CAOhC;IAED;;;;;;OAMG;IACH,OAAO,CAAC,QAAQ;IAgBhB,OAAO,CAAC,UAAU;IASlB;;;;;;OAMG;IACH,OAAO,CAAC,mBAAmB;IAuB3B,OAAO,CAAC,cAAc;IAUtB,OAAO,CAAC,aAAa;CAOtB"}
1
+ {"version":3,"file":"sim-cfn-sns-subscription-properties.d.ts","sourceRoot":"","sources":["../../../../../src/service/sns/cfn/subscription/sim-cfn-sns-subscription-properties.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sDAAsD,CAAC;AAC3F,OAAO,KAAK,EAEV,yBAAyB,EAC1B,MAAM,kEAAkE,CAAC;AAC1E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,oDAAoD,CAAC;AAcnG,UAAU,yCAAyC;IACjD,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAClC,QAAQ,CAAC,UAAU,EAAE,yBAAyB,CAAC;CAChD;AAED;;;;;;;;;GASG;AACH,qBAAa,+BAA+B;IAC1C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAiB;IAC1C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA2C;IAEtE,YAAY,UAAU,EAAE,yCAAyC,EAGhE;IAED;;OAEG;IACH,KAAK,IAAI,wBAAwB,CAOhC;IAED;;;;;;;OAOG;IACH,OAAO,CAAC,QAAQ;IAgBhB,OAAO,CAAC,UAAU;IASlB;;;;;;OAMG;IACH,OAAO,CAAC,mBAAmB;IAuB3B,OAAO,CAAC,cAAc;IAUtB,OAAO,CAAC,aAAa;CAOtB"}
@@ -33,9 +33,10 @@ export class SimCfnSnsSubscriptionProperties {
33
33
  /**
34
34
  * What the subscription delivers to.
35
35
  *
36
- * Real CloudFormation leaves it optional, because a protocol such as `sms`
37
- * carries the destination elsewhere. Neither protocol simulated here is one
38
- * of those, so an absent endpoint is refused by Subscribe rather than here.
36
+ * Real CloudFormation leaves it optional, because a protocol such as
37
+ * `application` carries the destination elsewhere. No protocol simulated here
38
+ * is one of those, so an absent endpoint is refused by Subscribe rather than
39
+ * here.
39
40
  */
40
41
  endpoint() {
41
42
  const endpoint = this.properties.get(subscriptionEndpointPropertyName);
@@ -1 +1 @@
1
- {"version":3,"file":"sim-cfn-sns-subscription-properties.js","sourceRoot":"","sources":["../../../../../src/service/sns/cfn/subscription/sim-cfn-sns-subscription-properties.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sim-cfn-sns-subscription-properties.js","sourceRoot":"","sources":["../../../../../src/service/sns/cfn/subscription/sim-cfn-sns-subscription-properties.ts"],"names":[],"mappings":"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"}
@@ -7,8 +7,8 @@ export declare const subscriptionTopicArnPropertyName = "TopicArn";
7
7
  */
8
8
  export declare const subscriptionProtocolPropertyName = "Protocol";
9
9
  /**
10
- * What the subscription is delivered to, which is a queue ARN or a function
11
- * ARN for the two protocols simulated.
10
+ * What the subscription is delivered to, which is a queue ARN, a function ARN
11
+ * or a phone number for the three protocols simulated.
12
12
  */
13
13
  export declare const subscriptionEndpointPropertyName = "Endpoint";
14
14
  /**
@@ -7,8 +7,8 @@ export const subscriptionTopicArnPropertyName = "TopicArn";
7
7
  */
8
8
  export const subscriptionProtocolPropertyName = "Protocol";
9
9
  /**
10
- * What the subscription is delivered to, which is a queue ARN or a function
11
- * ARN for the two protocols simulated.
10
+ * What the subscription is delivered to, which is a queue ARN, a function ARN
11
+ * or a phone number for the three protocols simulated.
12
12
  */
13
13
  export const subscriptionEndpointPropertyName = "Endpoint";
14
14
  /**
@@ -11,6 +11,9 @@ interface SimSnsPublishCommandsProperties {
11
11
  /**
12
12
  * The commands that publish messages to a topic.
13
13
  *
14
+ * A publish reaches this once `SimSnsPublishDispatch` has decided it names a
15
+ * topic. Publishing to a phone number never arrives here.
16
+ *
14
17
  * A topic keeps nothing a publish sends it. Real SNS hands a message to the
15
18
  * topic's subscriptions and forgets it, so a topic with no subscriptions
16
19
  * accepts a publish, answers with a message id, and the message goes nowhere.
@@ -1 +1 @@
1
- {"version":3,"file":"sim-sns-publish-commands.d.ts","sourceRoot":"","sources":["../../../../../src/service/sns/command/publish/sim-sns-publish-commands.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AACrF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAMtE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAU1E,OAAO,KAAK,EACV,sBAAsB,EACtB,4BAA4B,EAC5B,iBAAiB,EACjB,uBAAuB,EAGxB,MAAM,sBAAsB,CAAC;AAQ9B,UAAU,+BAA+B;IACvC,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC;IACnC,QAAQ,CAAC,KAAK,EAAE,mBAAmB,CAAC;IACpC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;CAC/B;AAED;;;;;;;;GAQG;AACH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoB;IAC3C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAsB;IAC5C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAe;IAEtC,YAAY,UAAU,EAAE,+BAA+B,EAItD;IAED;;OAEG;IACH,OAAO,CACL,OAAO,EAAE,iBAAiB,EAC1B,OAAO,CAAC,EAAE,oBAAoB,GAC7B,uBAAuB,CAiBzB;IAED;;;;;;;;OAQG;IACH,YAAY,CACV,OAAO,EAAE,sBAAsB,EAC/B,OAAO,CAAC,EAAE,oBAAoB,GAC7B,4BAA4B,CAwB9B;IAED;;;;;;OAMG;IACH,OAAO,CAAC,WAAW;IASnB;;OAEG;IACH,OAAO,CAAC,SAAS;CAMlB"}
1
+ {"version":3,"file":"sim-sns-publish-commands.d.ts","sourceRoot":"","sources":["../../../../../src/service/sns/command/publish/sim-sns-publish-commands.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AACrF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAMtE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAO1E,OAAO,KAAK,EACV,sBAAsB,EACtB,4BAA4B,EAC5B,iBAAiB,EACjB,uBAAuB,EAGxB,MAAM,sBAAsB,CAAC;AAQ9B,UAAU,+BAA+B;IACvC,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC;IACnC,QAAQ,CAAC,KAAK,EAAE,mBAAmB,CAAC;IACpC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;CAC/B;AAED;;;;;;;;;;;GAWG;AACH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoB;IAC3C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAsB;IAC5C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAe;IAEtC,YAAY,UAAU,EAAE,+BAA+B,EAItD;IAED;;OAEG;IACH,OAAO,CACL,OAAO,EAAE,iBAAiB,EAC1B,OAAO,CAAC,EAAE,oBAAoB,GAC7B,uBAAuB,CAezB;IAED;;;;;;;;OAQG;IACH,YAAY,CACV,OAAO,EAAE,sBAAsB,EAC/B,OAAO,CAAC,EAAE,oBAAoB,GAC7B,4BAA4B,CAwB9B;IAED;;;;;;OAMG;IACH,OAAO,CAAC,WAAW;IASnB;;OAEG;IACH,OAAO,CAAC,SAAS;CAMlB"}
@@ -1,6 +1,6 @@
1
1
  import { assertSimSnsMessageWithinLimit, SimSnsPublishedMessage, } from "../../message/sim-sns-published-message.js";
2
2
  import { assertSnsBatchWithinSizeLimit, requireSnsBatchEntries, runSnsBatch, } from "./sim-sns-batch-entries.js";
3
- import { refuseUnsimulatedPublishTarget, simSnsPublishedMessageInput, } from "./sim-sns-publish-input.js";
3
+ import { simSnsPublishedMessageInput } from "./sim-sns-publish-input.js";
4
4
  /**
5
5
  * Real SNS authorizes a batch publish as `sns:Publish`. There is no
6
6
  * `sns:PublishBatch` action, so a policy naming one grants nothing.
@@ -9,6 +9,9 @@ const publishAction = "sns:Publish";
9
9
  /**
10
10
  * The commands that publish messages to a topic.
11
11
  *
12
+ * A publish reaches this once `SimSnsPublishDispatch` has decided it names a
13
+ * topic. Publishing to a phone number never arrives here.
14
+ *
12
15
  * A topic keeps nothing a publish sends it. Real SNS hands a message to the
13
16
  * topic's subscriptions and forgets it, so a topic with no subscriptions
14
17
  * accepts a publish, answers with a message id, and the message goes nowhere.
@@ -28,7 +31,6 @@ export class SimSnsPublishCommands {
28
31
  * Publish one message to a topic.
29
32
  */
30
33
  publish(command, options) {
31
- refuseUnsimulatedPublishTarget(command.input);
32
34
  // The topic has to be there and the caller has to be allowed to publish to
33
35
  // it before anything is read out of the message.
34
36
  const topic = this.access.requireByArn(publishAction, command.input.TopicArn, options);
@@ -1 +1 @@
1
- {"version":3,"file":"sim-sns-publish-commands.js","sourceRoot":"","sources":["../../../../../src/service/sns/command/publish/sim-sns-publish-commands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sim-sns-publish-commands.js","sourceRoot":"","sources":["../../../../../src/service/sns/command/publish/sim-sns-publish-commands.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,8BAA8B,EAC9B,sBAAsB,GACvB,MAAM,4CAA4C,CAAC;AAIpD,OAAO,EACL,6BAA6B,EAC7B,sBAAsB,EACtB,WAAW,GACZ,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAC;AAUzE;;;GAGG;AACH,MAAM,aAAa,GAAG,aAAa,CAAC;AAQpC;;;;;;;;;;;GAWG;AACH,MAAM,OAAO,qBAAqB;IACf,MAAM,CAAoB;IAC1B,KAAK,CAAsB;IAC3B,MAAM,CAAe;IAEtC,YAAY,UAA2C;QACrD,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;QAChC,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;QAC9B,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,OAAO,CACL,OAA0B,EAC1B,OAA8B;QAE9B,2EAA2E;QAC3E,iDAAiD;QACjD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CACpC,aAAa,EACb,OAAO,CAAC,KAAK,CAAC,QAAQ,EACtB,OAAO,CACR,CAAC;QACF,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAE9C,8BAA8B,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAEjD,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAEpC,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC;IACzD,CAAC;IAED;;;;;;;;OAQG;IACH,YAAY,CACV,OAA+B,EAC/B,OAA8B;QAE9B,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CACpC,aAAa,EACb,OAAO,CAAC,KAAK,CAAC,QAAQ,EACtB,OAAO,CACR,CAAC;QACF,MAAM,OAAO,GAAG,sBAAsB,CACpC,OAAO,CAAC,KAAK,CAAC,0BAA0B,CACzC,CAAC;QACF,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;YACnD,EAAE;YACF,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;SAC/B,CAAC,CAAC,CAAC;QAEJ,6BAA6B,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAClD,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;QAE5C,MAAM,UAAU,GACd,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;YAC3C,EAAE,EAAE,EAAE;YACN,SAAS,EAAE,OAAO,CAAC,SAAS;SAC7B,CAAC,CAAC,CAAC;QAEN,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;IAC3E,CAAC;IAED;;;;;;OAMG;IACK,WAAW,CACjB,KAAkB,EAClB,SAAkE;QAElE,KAAK,MAAM,EAAE,OAAO,EAAE,IAAI,SAAS,EAAE,CAAC;YACpC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;IAED;;OAEG;IACK,SAAS,CAAC,SAAgC;QAChD,OAAO,sBAAsB,CAAC,EAAE,CAC9B,2BAA2B,CAAC,SAAS,CAAC,EACtC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CACjB,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,39 @@
1
+ import type { SimSnsRequestOptions } from "../sim-sns-request-options.js";
2
+ import type { SimSnsPublishCommands } from "./sim-sns-publish-commands.js";
3
+ import type { SimSnsPublishSms } from "./sim-sns-publish-sms.js";
4
+ import type { SimPublishBatchCommand, SimPublishBatchCommandOutput, SimPublishCommand, SimPublishCommandOutput } from "./publish.command.js";
5
+ interface SimSnsPublishDispatchProperties {
6
+ readonly topic: SimSnsPublishCommands;
7
+ readonly sms: SimSnsPublishSms;
8
+ }
9
+ /**
10
+ * Which of the two publishes a `Publish` request is.
11
+ *
12
+ * One SDK command name covers two operations that share a message and nothing
13
+ * else. A publish to a topic goes to the topic's subscriptions. A publish to a
14
+ * phone number reaches no topic, no subscription and no delivery endpoint, and
15
+ * is recorded as an SMS. Each has its own handler, and this is what reads the
16
+ * request to decide.
17
+ *
18
+ * The target refusals belong here, ahead of the decision, so that a request
19
+ * naming an unsimulated target is refused whichever way it would otherwise
20
+ * have gone.
21
+ *
22
+ * `PublishBatch` is only ever a topic publish, since the SNS API gives a batch
23
+ * entry no phone number field.
24
+ */
25
+ export declare class SimSnsPublishDispatch {
26
+ private readonly topic;
27
+ private readonly sms;
28
+ constructor(properties: SimSnsPublishDispatchProperties);
29
+ /**
30
+ * Publish one message to a topic or to a phone number.
31
+ */
32
+ publish(command: SimPublishCommand, options?: SimSnsRequestOptions): SimPublishCommandOutput;
33
+ /**
34
+ * Publish up to ten messages to a topic at once.
35
+ */
36
+ publishBatch(command: SimPublishBatchCommand, options?: SimSnsRequestOptions): SimPublishBatchCommandOutput;
37
+ }
38
+ export {};
39
+ //# sourceMappingURL=sim-sns-publish-dispatch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-sns-publish-dispatch.d.ts","sourceRoot":"","sources":["../../../../../src/service/sns/command/publish/sim-sns-publish-dispatch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAE3E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EACV,sBAAsB,EACtB,4BAA4B,EAC5B,iBAAiB,EACjB,uBAAuB,EACxB,MAAM,sBAAsB,CAAC;AAE9B,UAAU,+BAA+B;IACvC,QAAQ,CAAC,KAAK,EAAE,qBAAqB,CAAC;IACtC,QAAQ,CAAC,GAAG,EAAE,gBAAgB,CAAC;CAChC;AAED;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAwB;IAC9C,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAmB;IAEvC,YAAY,UAAU,EAAE,+BAA+B,EAGtD;IAED;;OAEG;IACH,OAAO,CACL,OAAO,EAAE,iBAAiB,EAC1B,OAAO,CAAC,EAAE,oBAAoB,GAC7B,uBAAuB,CAQzB;IAED;;OAEG;IACH,YAAY,CACV,OAAO,EAAE,sBAAsB,EAC/B,OAAO,CAAC,EAAE,oBAAoB,GAC7B,4BAA4B,CAE9B;CACF"}