@kensio/yulin 1.17.1 → 1.17.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 (533) hide show
  1. package/README.md +1 -0
  2. package/dist/serve/http/local-server/sim-aws-local-location.d.ts +55 -0
  3. package/dist/serve/http/local-server/sim-aws-local-location.d.ts.map +1 -0
  4. package/dist/serve/http/local-server/sim-aws-local-location.js +80 -0
  5. package/dist/serve/http/local-server/sim-aws-local-location.js.map +1 -0
  6. package/dist/serve/http/local-server/sim-aws-local-request-handler.d.ts +7 -0
  7. package/dist/serve/http/local-server/sim-aws-local-request-handler.d.ts.map +1 -1
  8. package/dist/serve/http/local-server/sim-aws-local-request-handler.js +10 -3
  9. package/dist/serve/http/local-server/sim-aws-local-request-handler.js.map +1 -1
  10. package/dist/serve/http/local-server/sim-aws-local-server.d.ts.map +1 -1
  11. package/dist/serve/http/local-server/sim-aws-local-server.js +5 -0
  12. package/dist/serve/http/local-server/sim-aws-local-server.js.map +1 -1
  13. package/dist/serve/http/node-fetch-http-adapter.d.ts +9 -0
  14. package/dist/serve/http/node-fetch-http-adapter.d.ts.map +1 -1
  15. package/dist/serve/http/node-fetch-http-adapter.js +17 -1
  16. package/dist/serve/http/node-fetch-http-adapter.js.map +1 -1
  17. package/dist/service/apigatewayv2/api/integration/sim-http-api-lambda-uri.d.ts +23 -4
  18. package/dist/service/apigatewayv2/api/integration/sim-http-api-lambda-uri.d.ts.map +1 -1
  19. package/dist/service/apigatewayv2/api/integration/sim-http-api-lambda-uri.js +56 -14
  20. package/dist/service/apigatewayv2/api/integration/sim-http-api-lambda-uri.js.map +1 -1
  21. package/dist/service/apigatewayv2/serve/auth/sim-http-api-authorizer-invocation.d.ts +1 -1
  22. package/dist/service/apigatewayv2/serve/auth/sim-http-api-authorizer-invocation.d.ts.map +1 -1
  23. package/dist/service/apigatewayv2/serve/auth/sim-http-api-invoke-authorizer.d.ts +7 -3
  24. package/dist/service/apigatewayv2/serve/auth/sim-http-api-invoke-authorizer.d.ts.map +1 -1
  25. package/dist/service/apigatewayv2/serve/auth/sim-http-api-invoke-authorizer.js +6 -2
  26. package/dist/service/apigatewayv2/serve/auth/sim-http-api-invoke-authorizer.js.map +1 -1
  27. package/dist/service/apigatewayv2/serve/sim-api-gateway-v2-router.d.ts +11 -12
  28. package/dist/service/apigatewayv2/serve/sim-api-gateway-v2-router.d.ts.map +1 -1
  29. package/dist/service/apigatewayv2/serve/sim-api-gateway-v2-router.js +15 -7
  30. package/dist/service/apigatewayv2/serve/sim-api-gateway-v2-router.js.map +1 -1
  31. package/dist/service/apigatewayv2/serve/sim-http-api-function-target.d.ts +17 -0
  32. package/dist/service/apigatewayv2/serve/sim-http-api-function-target.d.ts.map +1 -0
  33. package/dist/service/apigatewayv2/serve/sim-http-api-function-target.js +2 -0
  34. package/dist/service/apigatewayv2/serve/sim-http-api-function-target.js.map +1 -0
  35. package/dist/service/apigatewayv2/serve/sim-http-api-integration-invocation.d.ts.map +1 -1
  36. package/dist/service/apigatewayv2/serve/sim-http-api-integration-invocation.js +1 -1
  37. package/dist/service/apigatewayv2/serve/sim-http-api-integration-invocation.js.map +1 -1
  38. package/dist/service/cloudformation/bind/validate/sim-cfn-exec-binding-matcher.js +1 -1
  39. package/dist/service/cloudformation/bind/validate/sim-cfn-exec-binding-matcher.js.map +1 -1
  40. package/dist/service/cloudformation/command/create-stack/create-stack.handler.d.ts.map +1 -1
  41. package/dist/service/cloudformation/command/create-stack/create-stack.handler.js +2 -2
  42. package/dist/service/cloudformation/command/create-stack/create-stack.handler.js.map +1 -1
  43. package/dist/service/cloudformation/command/update-stack/update-stack.handler.d.ts.map +1 -1
  44. package/dist/service/cloudformation/command/update-stack/update-stack.handler.js +2 -2
  45. package/dist/service/cloudformation/command/update-stack/update-stack.handler.js.map +1 -1
  46. package/dist/service/cloudformation/deploy/sim-cfn-template-file-loader.d.ts.map +1 -1
  47. package/dist/service/cloudformation/deploy/sim-cfn-template-file-loader.js +3 -3
  48. package/dist/service/cloudformation/deploy/sim-cfn-template-file-loader.js.map +1 -1
  49. package/dist/service/cloudformation/deploy/sim-cfn-template-file-parse.d.ts +10 -0
  50. package/dist/service/cloudformation/deploy/sim-cfn-template-file-parse.d.ts.map +1 -0
  51. package/dist/service/cloudformation/deploy/sim-cfn-template-file-parse.js +30 -0
  52. package/dist/service/cloudformation/deploy/sim-cfn-template-file-parse.js.map +1 -0
  53. package/dist/service/cloudformation/deploy/sim-cfn-template-file-read.d.ts +2 -4
  54. package/dist/service/cloudformation/deploy/sim-cfn-template-file-read.d.ts.map +1 -1
  55. package/dist/service/cloudformation/deploy/sim-cfn-template-file-read.js +2 -3
  56. package/dist/service/cloudformation/deploy/sim-cfn-template-file-read.js.map +1 -1
  57. package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-cfn-value-adapter.d.ts.map +1 -1
  58. package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-cfn-value-adapter.js +11 -0
  59. package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-cfn-value-adapter.js.map +1 -1
  60. package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-function-alias-cfn.d.ts +29 -0
  61. package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-function-alias-cfn.d.ts.map +1 -0
  62. package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-function-alias-cfn.js +31 -0
  63. package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-function-alias-cfn.js.map +1 -0
  64. package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-function-version-cfn.d.ts +35 -0
  65. package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-function-version-cfn.d.ts.map +1 -0
  66. package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-function-version-cfn.js +40 -0
  67. package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-function-version-cfn.js.map +1 -0
  68. package/dist/service/cloudformation/sam/api/sim-cfn-sam-http-api-stage.d.ts +20 -0
  69. package/dist/service/cloudformation/sam/api/sim-cfn-sam-http-api-stage.d.ts.map +1 -0
  70. package/dist/service/cloudformation/sam/api/sim-cfn-sam-http-api-stage.js +80 -0
  71. package/dist/service/cloudformation/sam/api/sim-cfn-sam-http-api-stage.js.map +1 -0
  72. package/dist/service/cloudformation/sam/api/sim-cfn-sam-http-api-template.factory.d.ts +46 -0
  73. package/dist/service/cloudformation/sam/api/sim-cfn-sam-http-api-template.factory.d.ts.map +1 -0
  74. package/dist/service/cloudformation/sam/api/sim-cfn-sam-http-api-template.factory.js +103 -0
  75. package/dist/service/cloudformation/sam/api/sim-cfn-sam-http-api-template.factory.js.map +1 -0
  76. package/dist/service/cloudformation/sam/api/sim-cfn-sam-http-api.d.ts +28 -0
  77. package/dist/service/cloudformation/sam/api/sim-cfn-sam-http-api.d.ts.map +1 -0
  78. package/dist/service/cloudformation/sam/api/sim-cfn-sam-http-api.js +81 -0
  79. package/dist/service/cloudformation/sam/api/sim-cfn-sam-http-api.js.map +1 -0
  80. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-declared-event.d.ts +52 -0
  81. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-declared-event.d.ts.map +1 -0
  82. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-declared-event.js +38 -0
  83. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-declared-event.js.map +1 -0
  84. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-event-bridge-rule-event.d.ts +16 -0
  85. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-event-bridge-rule-event.d.ts.map +1 -0
  86. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-event-bridge-rule-event.js +21 -0
  87. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-event-bridge-rule-event.js.map +1 -0
  88. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-event-rule.d.ts +26 -0
  89. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-event-rule.d.ts.map +1 -0
  90. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-event-rule.js +84 -0
  91. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-event-rule.js.map +1 -0
  92. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-event-source-kind.d.ts +24 -0
  93. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-event-source-kind.d.ts.map +1 -0
  94. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-event-source-kind.js +41 -0
  95. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-event-source-kind.js.map +1 -0
  96. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-event-source-mapping-event.d.ts +20 -0
  97. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-event-source-mapping-event.d.ts.map +1 -0
  98. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-event-source-mapping-event.js +56 -0
  99. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-event-source-mapping-event.js.map +1 -0
  100. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-event-source-role.d.ts +11 -0
  101. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-event-source-role.d.ts.map +1 -0
  102. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-event-source-role.js +57 -0
  103. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-event-source-role.js.map +1 -0
  104. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-event-source.resources.d.ts +25 -0
  105. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-event-source.resources.d.ts.map +1 -0
  106. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-event-source.resources.js +42 -0
  107. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-event-source.resources.js.map +1 -0
  108. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-event-state.d.ts +17 -0
  109. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-event-state.d.ts.map +1 -0
  110. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-event-state.js +26 -0
  111. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-event-state.js.map +1 -0
  112. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-function-events.d.ts +32 -0
  113. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-function-events.d.ts.map +1 -0
  114. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-function-events.js +70 -0
  115. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-function-events.js.map +1 -0
  116. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-http-api-event.d.ts +20 -0
  117. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-http-api-event.d.ts.map +1 -0
  118. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-http-api-event.js +71 -0
  119. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-http-api-event.js.map +1 -0
  120. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-http-api-permission.d.ts +14 -0
  121. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-http-api-permission.d.ts.map +1 -0
  122. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-http-api-permission.js +38 -0
  123. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-http-api-permission.js.map +1 -0
  124. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-http-api-route.d.ts +18 -0
  125. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-http-api-route.d.ts.map +1 -0
  126. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-http-api-route.js +56 -0
  127. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-http-api-route.js.map +1 -0
  128. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-implicit-http-api.d.ts +20 -0
  129. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-implicit-http-api.d.ts.map +1 -0
  130. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-implicit-http-api.js +41 -0
  131. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-implicit-http-api.js.map +1 -0
  132. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-resource-edit.d.ts +29 -0
  133. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-resource-edit.d.ts.map +1 -0
  134. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-resource-edit.js +23 -0
  135. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-resource-edit.js.map +1 -0
  136. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-s3-event.d.ts +33 -0
  137. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-s3-event.d.ts.map +1 -0
  138. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-s3-event.js +103 -0
  139. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-s3-event.js.map +1 -0
  140. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-s3-notified-bucket.d.ts +22 -0
  141. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-s3-notified-bucket.d.ts.map +1 -0
  142. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-s3-notified-bucket.js +76 -0
  143. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-s3-notified-bucket.js.map +1 -0
  144. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-schedule-event.d.ts +17 -0
  145. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-schedule-event.d.ts.map +1 -0
  146. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-schedule-event.js +22 -0
  147. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-schedule-event.js.map +1 -0
  148. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-schedule-v2-event.d.ts +15 -0
  149. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-schedule-v2-event.d.ts.map +1 -0
  150. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-schedule-v2-event.js +97 -0
  151. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-schedule-v2-event.js.map +1 -0
  152. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-sns-event.d.ts +23 -0
  153. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-sns-event.d.ts.map +1 -0
  154. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-sns-event.js +60 -0
  155. package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-sns-event.js.map +1 -0
  156. package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-policies.d.ts +31 -0
  157. package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-policies.d.ts.map +1 -0
  158. package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-policies.js +74 -0
  159. package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-policies.js.map +1 -0
  160. package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-properties.d.ts +24 -0
  161. package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-properties.d.ts.map +1 -0
  162. package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-properties.js +67 -0
  163. package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-properties.js.map +1 -0
  164. package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-role.d.ts +18 -0
  165. package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-role.d.ts.map +1 -0
  166. package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-role.js +35 -0
  167. package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-role.js.map +1 -0
  168. package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-template.factory.d.ts +45 -0
  169. package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-template.factory.d.ts.map +1 -0
  170. package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-template.factory.js +50 -0
  171. package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-template.factory.js.map +1 -0
  172. package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-url.d.ts +19 -0
  173. package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-url.d.ts.map +1 -0
  174. package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-url.js +37 -0
  175. package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-url.js.map +1 -0
  176. package/dist/service/cloudformation/sam/function/sim-cfn-sam-function.d.ts +44 -0
  177. package/dist/service/cloudformation/sam/function/sim-cfn-sam-function.d.ts.map +1 -0
  178. package/dist/service/cloudformation/sam/function/sim-cfn-sam-function.js +74 -0
  179. package/dist/service/cloudformation/sam/function/sim-cfn-sam-function.js.map +1 -0
  180. package/dist/service/cloudformation/sam/sim-cfn-sam-expansion.d.ts +18 -0
  181. package/dist/service/cloudformation/sam/sim-cfn-sam-expansion.d.ts.map +1 -0
  182. package/dist/service/cloudformation/sam/sim-cfn-sam-expansion.js +83 -0
  183. package/dist/service/cloudformation/sam/sim-cfn-sam-expansion.js.map +1 -0
  184. package/dist/service/cloudformation/sam/sim-cfn-sam-globals.d.ts +36 -0
  185. package/dist/service/cloudformation/sam/sim-cfn-sam-globals.d.ts.map +1 -0
  186. package/dist/service/cloudformation/sam/sim-cfn-sam-globals.js +76 -0
  187. package/dist/service/cloudformation/sam/sim-cfn-sam-globals.js.map +1 -0
  188. package/dist/service/cloudformation/sam/sim-cfn-sam-picked.d.ts +10 -0
  189. package/dist/service/cloudformation/sam/sim-cfn-sam-picked.d.ts.map +1 -0
  190. package/dist/service/cloudformation/sam/sim-cfn-sam-picked.js +11 -0
  191. package/dist/service/cloudformation/sam/sim-cfn-sam-picked.js.map +1 -0
  192. package/dist/service/cloudformation/sam/sim-cfn-sam-record.d.ts +40 -0
  193. package/dist/service/cloudformation/sam/sim-cfn-sam-record.d.ts.map +1 -0
  194. package/dist/service/cloudformation/sam/sim-cfn-sam-record.js +50 -0
  195. package/dist/service/cloudformation/sam/sim-cfn-sam-record.js.map +1 -0
  196. package/dist/service/cloudformation/sam/sim-cfn-sam-transform.d.ts +23 -0
  197. package/dist/service/cloudformation/sam/sim-cfn-sam-transform.d.ts.map +1 -0
  198. package/dist/service/cloudformation/sam/sim-cfn-sam-transform.js +48 -0
  199. package/dist/service/cloudformation/sam/sim-cfn-sam-transform.js.map +1 -0
  200. package/dist/service/cloudformation/sam/table/sim-cfn-sam-simple-table-key.d.ts +18 -0
  201. package/dist/service/cloudformation/sam/table/sim-cfn-sam-simple-table-key.d.ts.map +1 -0
  202. package/dist/service/cloudformation/sam/table/sim-cfn-sam-simple-table-key.js +52 -0
  203. package/dist/service/cloudformation/sam/table/sim-cfn-sam-simple-table-key.js.map +1 -0
  204. package/dist/service/cloudformation/sam/table/sim-cfn-sam-simple-table-template.factory.d.ts +40 -0
  205. package/dist/service/cloudformation/sam/table/sim-cfn-sam-simple-table-template.factory.d.ts.map +1 -0
  206. package/dist/service/cloudformation/sam/table/sim-cfn-sam-simple-table-template.factory.js +47 -0
  207. package/dist/service/cloudformation/sam/table/sim-cfn-sam-simple-table-template.factory.js.map +1 -0
  208. package/dist/service/cloudformation/sam/table/sim-cfn-sam-simple-table.d.ts +25 -0
  209. package/dist/service/cloudformation/sam/table/sim-cfn-sam-simple-table.d.ts.map +1 -0
  210. package/dist/service/cloudformation/sam/table/sim-cfn-sam-simple-table.js +77 -0
  211. package/dist/service/cloudformation/sam/table/sim-cfn-sam-simple-table.js.map +1 -0
  212. package/dist/service/cloudformation/template/sim-cfn-template-body-parse.d.ts +19 -0
  213. package/dist/service/cloudformation/template/sim-cfn-template-body-parse.d.ts.map +1 -0
  214. package/dist/service/cloudformation/template/sim-cfn-template-body-parse.js +36 -0
  215. package/dist/service/cloudformation/template/sim-cfn-template-body-parse.js.map +1 -0
  216. package/dist/service/cloudformation/template/sim-cfn-template.d.ts +11 -4
  217. package/dist/service/cloudformation/template/sim-cfn-template.d.ts.map +1 -1
  218. package/dist/service/cloudformation/template/sim-cfn-template.js +16 -13
  219. package/dist/service/cloudformation/template/sim-cfn-template.js.map +1 -1
  220. package/dist/service/cloudformation/template/yaml/sim-cfn-template-yaml.d.ts +11 -0
  221. package/dist/service/cloudformation/template/yaml/sim-cfn-template-yaml.d.ts.map +1 -0
  222. package/dist/service/cloudformation/template/yaml/sim-cfn-template-yaml.js +41 -0
  223. package/dist/service/cloudformation/template/yaml/sim-cfn-template-yaml.js.map +1 -0
  224. package/dist/service/cloudformation/template/yaml/sim-cfn-yaml-short-forms.d.ts +17 -0
  225. package/dist/service/cloudformation/template/yaml/sim-cfn-yaml-short-forms.d.ts.map +1 -0
  226. package/dist/service/cloudformation/template/yaml/sim-cfn-yaml-short-forms.js +70 -0
  227. package/dist/service/cloudformation/template/yaml/sim-cfn-yaml-short-forms.js.map +1 -0
  228. package/dist/service/cloudfront/cff/adapter/sim-cff-request-metadata-adapter.d.ts +23 -0
  229. package/dist/service/cloudfront/cff/adapter/sim-cff-request-metadata-adapter.d.ts.map +1 -1
  230. package/dist/service/cloudfront/cff/adapter/sim-cff-request-metadata-adapter.js +64 -22
  231. package/dist/service/cloudfront/cff/adapter/sim-cff-request-metadata-adapter.js.map +1 -1
  232. package/dist/service/cloudfront/typings/cloudfront-functions.namespace.d.ts +1 -1
  233. package/dist/service/cloudfront/typings/cloudfront-functions.namespace.d.ts.map +1 -1
  234. package/dist/service/cognito/user-pool/trigger/sim-aws-cognito-trigger-functions.d.ts +1 -1
  235. package/dist/service/cognito/user-pool/trigger/sim-aws-cognito-trigger-functions.d.ts.map +1 -1
  236. package/dist/service/cognito/user-pool/trigger/sim-aws-cognito-trigger-functions.js +26 -19
  237. package/dist/service/cognito/user-pool/trigger/sim-aws-cognito-trigger-functions.js.map +1 -1
  238. package/dist/service/elbv2/serve/sim-elbv2-invoke-authorizer.js +1 -1
  239. package/dist/service/elbv2/serve/sim-elbv2-invoke-authorizer.js.map +1 -1
  240. package/dist/service/eventbridge/delivery/sim-event-bridge-delivery-function.d.ts +5 -3
  241. package/dist/service/eventbridge/delivery/sim-event-bridge-delivery-function.d.ts.map +1 -1
  242. package/dist/service/eventbridge/delivery/sim-event-bridge-delivery-function.js +14 -9
  243. package/dist/service/eventbridge/delivery/sim-event-bridge-delivery-function.js.map +1 -1
  244. package/dist/service/eventbridge/target/sim-event-target-arn.d.ts +13 -6
  245. package/dist/service/eventbridge/target/sim-event-target-arn.d.ts.map +1 -1
  246. package/dist/service/eventbridge/target/sim-event-target-arn.js +17 -7
  247. package/dist/service/eventbridge/target/sim-event-target-arn.js.map +1 -1
  248. package/dist/service/lambda/cfn/alias/sim-cfn-lambda-alias-creator.d.ts +30 -0
  249. package/dist/service/lambda/cfn/alias/sim-cfn-lambda-alias-creator.d.ts.map +1 -0
  250. package/dist/service/lambda/cfn/alias/sim-cfn-lambda-alias-creator.js +41 -0
  251. package/dist/service/lambda/cfn/alias/sim-cfn-lambda-alias-creator.js.map +1 -0
  252. package/dist/service/lambda/cfn/function/sim-cfn-lambda-code-input.js +1 -1
  253. package/dist/service/lambda/cfn/function/sim-cfn-lambda-code-input.js.map +1 -1
  254. package/dist/service/lambda/cfn/function/sim-cfn-lambda-target-function.d.ts +12 -1
  255. package/dist/service/lambda/cfn/function/sim-cfn-lambda-target-function.d.ts.map +1 -1
  256. package/dist/service/lambda/cfn/function/sim-cfn-lambda-target-function.js +15 -3
  257. package/dist/service/lambda/cfn/function/sim-cfn-lambda-target-function.js.map +1 -1
  258. package/dist/service/lambda/cfn/permission/sim-cfn-lambda-permission-creator.d.ts +6 -1
  259. package/dist/service/lambda/cfn/permission/sim-cfn-lambda-permission-creator.d.ts.map +1 -1
  260. package/dist/service/lambda/cfn/permission/sim-cfn-lambda-permission-creator.js +11 -5
  261. package/dist/service/lambda/cfn/permission/sim-cfn-lambda-permission-creator.js.map +1 -1
  262. package/dist/service/lambda/cfn/permission/sim-cfn-lambda-permission-revoker.d.ts +12 -0
  263. package/dist/service/lambda/cfn/permission/sim-cfn-lambda-permission-revoker.d.ts.map +1 -0
  264. package/dist/service/lambda/cfn/permission/sim-cfn-lambda-permission-revoker.js +22 -0
  265. package/dist/service/lambda/cfn/permission/sim-cfn-lambda-permission-revoker.js.map +1 -0
  266. package/dist/service/lambda/cfn/sim-cfn-lambda-created-resource.d.ts +10 -0
  267. package/dist/service/lambda/cfn/sim-cfn-lambda-created-resource.d.ts.map +1 -0
  268. package/dist/service/lambda/cfn/sim-cfn-lambda-created-resource.js +14 -0
  269. package/dist/service/lambda/cfn/sim-cfn-lambda-created-resource.js.map +1 -0
  270. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-deleter.d.ts +2 -6
  271. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-deleter.d.ts.map +1 -1
  272. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-deleter.js +24 -19
  273. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-deleter.js.map +1 -1
  274. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.d.ts +2 -0
  275. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.d.ts.map +1 -1
  276. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.js +12 -0
  277. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.js.map +1 -1
  278. package/dist/service/lambda/cfn/version/sim-cfn-lambda-version-creator.d.ts +31 -0
  279. package/dist/service/lambda/cfn/version/sim-cfn-lambda-version-creator.d.ts.map +1 -0
  280. package/dist/service/lambda/cfn/version/sim-cfn-lambda-version-creator.js +40 -0
  281. package/dist/service/lambda/cfn/version/sim-cfn-lambda-version-creator.js.map +1 -0
  282. package/dist/service/lambda/command/add-permission/add-permission.command.d.ts +1 -0
  283. package/dist/service/lambda/command/add-permission/add-permission.command.d.ts.map +1 -1
  284. package/dist/service/lambda/command/add-permission/add-permission.handler.d.ts +8 -1
  285. package/dist/service/lambda/command/add-permission/add-permission.handler.d.ts.map +1 -1
  286. package/dist/service/lambda/command/add-permission/add-permission.handler.js +13 -6
  287. package/dist/service/lambda/command/add-permission/add-permission.handler.js.map +1 -1
  288. package/dist/service/lambda/command/alias/alias-input.d.ts +21 -0
  289. package/dist/service/lambda/command/alias/alias-input.d.ts.map +1 -0
  290. package/dist/service/lambda/command/alias/alias-input.js +30 -0
  291. package/dist/service/lambda/command/alias/alias-input.js.map +1 -0
  292. package/dist/service/lambda/command/alias/sim-lambda-alias-commands.d.ts +52 -0
  293. package/dist/service/lambda/command/alias/sim-lambda-alias-commands.d.ts.map +1 -0
  294. package/dist/service/lambda/command/alias/sim-lambda-alias-commands.js +49 -0
  295. package/dist/service/lambda/command/alias/sim-lambda-alias-commands.js.map +1 -0
  296. package/dist/service/lambda/command/authorize/sim-lambda-resource-policies.d.ts +9 -7
  297. package/dist/service/lambda/command/authorize/sim-lambda-resource-policies.d.ts.map +1 -1
  298. package/dist/service/lambda/command/authorize/sim-lambda-resource-policies.js +11 -9
  299. package/dist/service/lambda/command/authorize/sim-lambda-resource-policies.js.map +1 -1
  300. package/dist/service/lambda/command/authorize/sim-lambda-service-invoke-authorizer.d.ts +10 -2
  301. package/dist/service/lambda/command/authorize/sim-lambda-service-invoke-authorizer.d.ts.map +1 -1
  302. package/dist/service/lambda/command/authorize/sim-lambda-service-invoke-authorizer.js +2 -2
  303. package/dist/service/lambda/command/authorize/sim-lambda-service-invoke-authorizer.js.map +1 -1
  304. package/dist/service/lambda/command/create-alias/create-alias.command.d.ts +31 -0
  305. package/dist/service/lambda/command/create-alias/create-alias.command.d.ts.map +1 -0
  306. package/dist/service/lambda/command/create-alias/create-alias.command.js +5 -0
  307. package/dist/service/lambda/command/create-alias/create-alias.command.js.map +1 -0
  308. package/dist/service/lambda/command/create-alias/create-alias.handler.d.ts +35 -0
  309. package/dist/service/lambda/command/create-alias/create-alias.handler.d.ts.map +1 -0
  310. package/dist/service/lambda/command/create-alias/create-alias.handler.js +52 -0
  311. package/dist/service/lambda/command/create-alias/create-alias.handler.js.map +1 -0
  312. package/dist/service/lambda/command/create-function/create-function.command.d.ts +1 -1
  313. package/dist/service/lambda/command/create-function/create-function.command.d.ts.map +1 -1
  314. package/dist/service/lambda/command/create-function/create-function.handler.d.ts.map +1 -1
  315. package/dist/service/lambda/command/create-function/create-function.handler.js +2 -1
  316. package/dist/service/lambda/command/create-function/create-function.handler.js.map +1 -1
  317. package/dist/service/lambda/command/delete-alias/delete-alias.command.d.ts +24 -0
  318. package/dist/service/lambda/command/delete-alias/delete-alias.command.d.ts.map +1 -0
  319. package/dist/service/lambda/command/delete-alias/delete-alias.command.js +5 -0
  320. package/dist/service/lambda/command/delete-alias/delete-alias.command.js.map +1 -0
  321. package/dist/service/lambda/command/delete-alias/delete-alias.handler.d.ts +37 -0
  322. package/dist/service/lambda/command/delete-alias/delete-alias.handler.d.ts.map +1 -0
  323. package/dist/service/lambda/command/delete-alias/delete-alias.handler.js +44 -0
  324. package/dist/service/lambda/command/delete-alias/delete-alias.handler.js.map +1 -0
  325. package/dist/service/lambda/command/delete-function/delete-function.handler.d.ts +6 -2
  326. package/dist/service/lambda/command/delete-function/delete-function.handler.d.ts.map +1 -1
  327. package/dist/service/lambda/command/delete-function/delete-function.handler.js +7 -3
  328. package/dist/service/lambda/command/delete-function/delete-function.handler.js.map +1 -1
  329. package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-input.d.ts +8 -0
  330. package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-input.d.ts.map +1 -1
  331. package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-input.js +11 -2
  332. package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-input.js.map +1 -1
  333. package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping.handler.d.ts.map +1 -1
  334. package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping.handler.js +13 -6
  335. package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping.handler.js.map +1 -1
  336. package/dist/service/lambda/command/function/sim-lambda-function-commands.d.ts +3 -1
  337. package/dist/service/lambda/command/function/sim-lambda-function-commands.d.ts.map +1 -1
  338. package/dist/service/lambda/command/function/sim-lambda-function-commands.js +1 -1
  339. package/dist/service/lambda/command/function/sim-lambda-function-commands.js.map +1 -1
  340. package/dist/service/lambda/command/get-alias/get-alias.command.d.ts +25 -0
  341. package/dist/service/lambda/command/get-alias/get-alias.command.d.ts.map +1 -0
  342. package/dist/service/lambda/command/get-alias/get-alias.command.js +5 -0
  343. package/dist/service/lambda/command/get-alias/get-alias.command.js.map +1 -0
  344. package/dist/service/lambda/command/get-alias/get-alias.handler.d.ts +34 -0
  345. package/dist/service/lambda/command/get-alias/get-alias.handler.d.ts.map +1 -0
  346. package/dist/service/lambda/command/get-alias/get-alias.handler.js +38 -0
  347. package/dist/service/lambda/command/get-alias/get-alias.handler.js.map +1 -0
  348. package/dist/service/lambda/command/get-function/get-function.command.d.ts +2 -1
  349. package/dist/service/lambda/command/get-function/get-function.command.d.ts.map +1 -1
  350. package/dist/service/lambda/command/get-function/get-function.handler.d.ts +6 -2
  351. package/dist/service/lambda/command/get-function/get-function.handler.d.ts.map +1 -1
  352. package/dist/service/lambda/command/get-function/get-function.handler.js +13 -6
  353. package/dist/service/lambda/command/get-function/get-function.handler.js.map +1 -1
  354. package/dist/service/lambda/command/get-policy/get-policy.command.d.ts +1 -0
  355. package/dist/service/lambda/command/get-policy/get-policy.command.d.ts.map +1 -1
  356. package/dist/service/lambda/command/get-policy/get-policy.handler.d.ts +8 -3
  357. package/dist/service/lambda/command/get-policy/get-policy.handler.d.ts.map +1 -1
  358. package/dist/service/lambda/command/get-policy/get-policy.handler.js +11 -6
  359. package/dist/service/lambda/command/get-policy/get-policy.handler.js.map +1 -1
  360. package/dist/service/lambda/command/invoke/invoke-authorizer.d.ts +11 -8
  361. package/dist/service/lambda/command/invoke/invoke-authorizer.d.ts.map +1 -1
  362. package/dist/service/lambda/command/invoke/invoke-authorizer.js +11 -8
  363. package/dist/service/lambda/command/invoke/invoke-authorizer.js.map +1 -1
  364. package/dist/service/lambda/command/invoke/invoke-dispatcher.d.ts +3 -0
  365. package/dist/service/lambda/command/invoke/invoke-dispatcher.d.ts.map +1 -1
  366. package/dist/service/lambda/command/invoke/invoke-dispatcher.js +5 -2
  367. package/dist/service/lambda/command/invoke/invoke-dispatcher.js.map +1 -1
  368. package/dist/service/lambda/command/invoke/invoke.handler.d.ts +9 -2
  369. package/dist/service/lambda/command/invoke/invoke.handler.d.ts.map +1 -1
  370. package/dist/service/lambda/command/invoke/invoke.handler.js +20 -10
  371. package/dist/service/lambda/command/invoke/invoke.handler.js.map +1 -1
  372. package/dist/service/lambda/command/list-aliases/list-aliases.command.d.ts +30 -0
  373. package/dist/service/lambda/command/list-aliases/list-aliases.command.d.ts.map +1 -0
  374. package/dist/service/lambda/command/list-aliases/list-aliases.command.js +5 -0
  375. package/dist/service/lambda/command/list-aliases/list-aliases.command.js.map +1 -0
  376. package/dist/service/lambda/command/list-aliases/list-aliases.handler.d.ts +35 -0
  377. package/dist/service/lambda/command/list-aliases/list-aliases.handler.d.ts.map +1 -0
  378. package/dist/service/lambda/command/list-aliases/list-aliases.handler.js +44 -0
  379. package/dist/service/lambda/command/list-aliases/list-aliases.handler.js.map +1 -0
  380. package/dist/service/lambda/command/list-versions-by-function/list-versions-by-function.command.d.ts +28 -0
  381. package/dist/service/lambda/command/list-versions-by-function/list-versions-by-function.command.d.ts.map +1 -0
  382. package/dist/service/lambda/command/list-versions-by-function/list-versions-by-function.command.js +5 -0
  383. package/dist/service/lambda/command/list-versions-by-function/list-versions-by-function.command.js.map +1 -0
  384. package/dist/service/lambda/command/list-versions-by-function/list-versions-by-function.handler.d.ts +35 -0
  385. package/dist/service/lambda/command/list-versions-by-function/list-versions-by-function.handler.d.ts.map +1 -0
  386. package/dist/service/lambda/command/list-versions-by-function/list-versions-by-function.handler.js +43 -0
  387. package/dist/service/lambda/command/list-versions-by-function/list-versions-by-function.handler.js.map +1 -0
  388. package/dist/service/lambda/command/permission/sim-lambda-permission-commands.d.ts +8 -3
  389. package/dist/service/lambda/command/permission/sim-lambda-permission-commands.d.ts.map +1 -1
  390. package/dist/service/lambda/command/permission/sim-lambda-permission-commands.js +6 -3
  391. package/dist/service/lambda/command/permission/sim-lambda-permission-commands.js.map +1 -1
  392. package/dist/service/lambda/command/publish-version/publish-version.command.d.ts +34 -0
  393. package/dist/service/lambda/command/publish-version/publish-version.command.d.ts.map +1 -0
  394. package/dist/service/lambda/command/publish-version/publish-version.command.js +5 -0
  395. package/dist/service/lambda/command/publish-version/publish-version.command.js.map +1 -0
  396. package/dist/service/lambda/command/publish-version/publish-version.handler.d.ts +37 -0
  397. package/dist/service/lambda/command/publish-version/publish-version.handler.d.ts.map +1 -0
  398. package/dist/service/lambda/command/publish-version/publish-version.handler.js +42 -0
  399. package/dist/service/lambda/command/publish-version/publish-version.handler.js.map +1 -0
  400. package/dist/service/lambda/command/remove-permission/remove-permission.command.d.ts +1 -0
  401. package/dist/service/lambda/command/remove-permission/remove-permission.command.d.ts.map +1 -1
  402. package/dist/service/lambda/command/remove-permission/remove-permission.handler.d.ts +8 -1
  403. package/dist/service/lambda/command/remove-permission/remove-permission.handler.d.ts.map +1 -1
  404. package/dist/service/lambda/command/remove-permission/remove-permission.handler.js +12 -5
  405. package/dist/service/lambda/command/remove-permission/remove-permission.handler.js.map +1 -1
  406. package/dist/service/lambda/command/sim-lambda-command.types.d.ts +7 -0
  407. package/dist/service/lambda/command/sim-lambda-command.types.d.ts.map +1 -1
  408. package/dist/service/lambda/command/update-alias/update-alias.command.d.ts +31 -0
  409. package/dist/service/lambda/command/update-alias/update-alias.command.d.ts.map +1 -0
  410. package/dist/service/lambda/command/update-alias/update-alias.command.js +5 -0
  411. package/dist/service/lambda/command/update-alias/update-alias.command.js.map +1 -0
  412. package/dist/service/lambda/command/update-alias/update-alias.handler.d.ts +35 -0
  413. package/dist/service/lambda/command/update-alias/update-alias.handler.d.ts.map +1 -0
  414. package/dist/service/lambda/command/update-alias/update-alias.handler.js +48 -0
  415. package/dist/service/lambda/command/update-alias/update-alias.handler.js.map +1 -0
  416. package/dist/service/lambda/command/version/sim-lambda-version-commands.d.ts +37 -0
  417. package/dist/service/lambda/command/version/sim-lambda-version-commands.d.ts.map +1 -0
  418. package/dist/service/lambda/command/version/sim-lambda-version-commands.js +28 -0
  419. package/dist/service/lambda/command/version/sim-lambda-version-commands.js.map +1 -0
  420. package/dist/service/lambda/command/version/version-authorizer.d.ts +29 -0
  421. package/dist/service/lambda/command/version/version-authorizer.d.ts.map +1 -0
  422. package/dist/service/lambda/command/version/version-authorizer.js +39 -0
  423. package/dist/service/lambda/command/version/version-authorizer.js.map +1 -0
  424. package/dist/service/lambda/event-source/poll/sim-lambda-dynamodb-stream-event-source-poller.d.ts.map +1 -1
  425. package/dist/service/lambda/event-source/poll/sim-lambda-dynamodb-stream-event-source-poller.js +2 -1
  426. package/dist/service/lambda/event-source/poll/sim-lambda-dynamodb-stream-event-source-poller.js.map +1 -1
  427. package/dist/service/lambda/event-source/poll/sim-lambda-event-source-function.d.ts +13 -0
  428. package/dist/service/lambda/event-source/poll/sim-lambda-event-source-function.d.ts.map +1 -0
  429. package/dist/service/lambda/event-source/poll/sim-lambda-event-source-function.js +13 -0
  430. package/dist/service/lambda/event-source/poll/sim-lambda-event-source-function.js.map +1 -0
  431. package/dist/service/lambda/event-source/poll/sim-lambda-sqs-event-source-consumer.d.ts.map +1 -1
  432. package/dist/service/lambda/event-source/poll/sim-lambda-sqs-event-source-consumer.js +2 -1
  433. package/dist/service/lambda/event-source/poll/sim-lambda-sqs-event-source-consumer.js.map +1 -1
  434. package/dist/service/lambda/event-source/sim-lambda-event-source-mapping.d.ts +9 -1
  435. package/dist/service/lambda/event-source/sim-lambda-event-source-mapping.d.ts.map +1 -1
  436. package/dist/service/lambda/event-source/sim-lambda-event-source-mapping.js +8 -0
  437. package/dist/service/lambda/event-source/sim-lambda-event-source-mapping.js.map +1 -1
  438. package/dist/service/lambda/function/invoke/sim-lambda-invoke-context-builder.d.ts +2 -0
  439. package/dist/service/lambda/function/invoke/sim-lambda-invoke-context-builder.d.ts.map +1 -1
  440. package/dist/service/lambda/function/invoke/sim-lambda-invoke-context-builder.js +2 -2
  441. package/dist/service/lambda/function/invoke/sim-lambda-invoke-context-builder.js.map +1 -1
  442. package/dist/service/lambda/function/policy/sim-lambda-policy-resource.d.ts +17 -0
  443. package/dist/service/lambda/function/policy/sim-lambda-policy-resource.d.ts.map +1 -0
  444. package/dist/service/lambda/function/policy/sim-lambda-policy-resource.js +2 -0
  445. package/dist/service/lambda/function/policy/sim-lambda-policy-resource.js.map +1 -0
  446. package/dist/service/lambda/function/sim-lambda-function-arn-parts.d.ts +3 -3
  447. package/dist/service/lambda/function/sim-lambda-function-configuration.d.ts +43 -0
  448. package/dist/service/lambda/function/sim-lambda-function-configuration.d.ts.map +1 -0
  449. package/dist/service/lambda/function/sim-lambda-function-configuration.js +22 -0
  450. package/dist/service/lambda/function/sim-lambda-function-configuration.js.map +1 -0
  451. package/dist/service/lambda/function/sim-lambda-function-name.d.ts +3 -1
  452. package/dist/service/lambda/function/sim-lambda-function-name.d.ts.map +1 -1
  453. package/dist/service/lambda/function/sim-lambda-function-name.js +3 -1
  454. package/dist/service/lambda/function/sim-lambda-function-name.js.map +1 -1
  455. package/dist/service/lambda/function/sim-lambda-function-reference.d.ts +36 -0
  456. package/dist/service/lambda/function/sim-lambda-function-reference.d.ts.map +1 -0
  457. package/dist/service/lambda/function/sim-lambda-function-reference.js +56 -0
  458. package/dist/service/lambda/function/sim-lambda-function-reference.js.map +1 -0
  459. package/dist/service/lambda/function/sim-lambda-function.d.ts +17 -31
  460. package/dist/service/lambda/function/sim-lambda-function.d.ts.map +1 -1
  461. package/dist/service/lambda/function/sim-lambda-function.js +28 -12
  462. package/dist/service/lambda/function/sim-lambda-function.js.map +1 -1
  463. package/dist/service/lambda/function/url/sim-lambda-function-lookup.d.ts +22 -3
  464. package/dist/service/lambda/function/url/sim-lambda-function-lookup.d.ts.map +1 -1
  465. package/dist/service/lambda/function/url/sim-lambda-function-lookup.js +24 -4
  466. package/dist/service/lambda/function/url/sim-lambda-function-lookup.js.map +1 -1
  467. package/dist/service/lambda/function/version/sim-lambda-function-alias-store.d.ts +55 -0
  468. package/dist/service/lambda/function/version/sim-lambda-function-alias-store.d.ts.map +1 -0
  469. package/dist/service/lambda/function/version/sim-lambda-function-alias-store.js +80 -0
  470. package/dist/service/lambda/function/version/sim-lambda-function-alias-store.js.map +1 -0
  471. package/dist/service/lambda/function/version/sim-lambda-function-alias.d.ts +60 -0
  472. package/dist/service/lambda/function/version/sim-lambda-function-alias.d.ts.map +1 -0
  473. package/dist/service/lambda/function/version/sim-lambda-function-alias.js +57 -0
  474. package/dist/service/lambda/function/version/sim-lambda-function-alias.js.map +1 -0
  475. package/dist/service/lambda/function/version/sim-lambda-function-target.d.ts +16 -0
  476. package/dist/service/lambda/function/version/sim-lambda-function-target.d.ts.map +1 -0
  477. package/dist/service/lambda/function/version/sim-lambda-function-target.js +2 -0
  478. package/dist/service/lambda/function/version/sim-lambda-function-target.js.map +1 -0
  479. package/dist/service/lambda/function/version/sim-lambda-function-version-store.d.ts +80 -0
  480. package/dist/service/lambda/function/version/sim-lambda-function-version-store.d.ts.map +1 -0
  481. package/dist/service/lambda/function/version/sim-lambda-function-version-store.js +114 -0
  482. package/dist/service/lambda/function/version/sim-lambda-function-version-store.js.map +1 -0
  483. package/dist/service/lambda/function/version/sim-lambda-function-versions.d.ts +61 -0
  484. package/dist/service/lambda/function/version/sim-lambda-function-versions.d.ts.map +1 -0
  485. package/dist/service/lambda/function/version/sim-lambda-function-versions.js +96 -0
  486. package/dist/service/lambda/function/version/sim-lambda-function-versions.js.map +1 -0
  487. package/dist/service/lambda/sdk/sim-lambda-sdk-command-router.d.ts.map +1 -1
  488. package/dist/service/lambda/sdk/sim-lambda-sdk-command-router.js +28 -0
  489. package/dist/service/lambda/sdk/sim-lambda-sdk-command-router.js.map +1 -1
  490. package/dist/service/lambda/serve/api/sim-lambda-api-routes.d.ts +2 -1
  491. package/dist/service/lambda/serve/api/sim-lambda-api-routes.d.ts.map +1 -1
  492. package/dist/service/lambda/serve/api/sim-lambda-api-routes.js +2 -1
  493. package/dist/service/lambda/serve/api/sim-lambda-api-routes.js.map +1 -1
  494. package/dist/service/lambda/sim-lambda-commands.d.ts +8 -0
  495. package/dist/service/lambda/sim-lambda-commands.d.ts.map +1 -1
  496. package/dist/service/lambda/sim-lambda-commands.js +25 -0
  497. package/dist/service/lambda/sim-lambda-commands.js.map +1 -1
  498. package/dist/service/lambda/sim-lambda-inspection.d.ts +43 -0
  499. package/dist/service/lambda/sim-lambda-inspection.d.ts.map +1 -0
  500. package/dist/service/lambda/sim-lambda-inspection.js +50 -0
  501. package/dist/service/lambda/sim-lambda-inspection.js.map +1 -0
  502. package/dist/service/lambda/sim-lambda.d.ts +44 -80
  503. package/dist/service/lambda/sim-lambda.d.ts.map +1 -1
  504. package/dist/service/lambda/sim-lambda.js +55 -82
  505. package/dist/service/lambda/sim-lambda.js.map +1 -1
  506. package/dist/service/logs/subscription/lambda/sim-aws-logs-subscription-functions.d.ts.map +1 -1
  507. package/dist/service/logs/subscription/lambda/sim-aws-logs-subscription-functions.js +2 -2
  508. package/dist/service/logs/subscription/lambda/sim-aws-logs-subscription-functions.js.map +1 -1
  509. package/dist/service/logs/subscription/lambda/sim-logs-destination-permission.d.ts +7 -5
  510. package/dist/service/logs/subscription/lambda/sim-logs-destination-permission.d.ts.map +1 -1
  511. package/dist/service/logs/subscription/lambda/sim-logs-destination-permission.js +15 -9
  512. package/dist/service/logs/subscription/lambda/sim-logs-destination-permission.js.map +1 -1
  513. package/dist/service/logs/subscription/lambda/sim-logs-subscription-function-arn.d.ts +9 -0
  514. package/dist/service/logs/subscription/lambda/sim-logs-subscription-function-arn.d.ts.map +1 -1
  515. package/dist/service/logs/subscription/lambda/sim-logs-subscription-function-arn.js +11 -5
  516. package/dist/service/logs/subscription/lambda/sim-logs-subscription-function-arn.js.map +1 -1
  517. package/dist/service/s3/notification/destination/lambda/sim-aws-s3-notification-functions.d.ts +1 -1
  518. package/dist/service/s3/notification/destination/lambda/sim-aws-s3-notification-functions.d.ts.map +1 -1
  519. package/dist/service/s3/notification/destination/lambda/sim-aws-s3-notification-functions.js +23 -10
  520. package/dist/service/s3/notification/destination/lambda/sim-aws-s3-notification-functions.js.map +1 -1
  521. package/dist/service/s3/notification/destination/lambda/sim-s3-notification-function-arn.d.ts +8 -4
  522. package/dist/service/s3/notification/destination/lambda/sim-s3-notification-function-arn.d.ts.map +1 -1
  523. package/dist/service/s3/notification/destination/lambda/sim-s3-notification-function-arn.js +12 -12
  524. package/dist/service/s3/notification/destination/lambda/sim-s3-notification-function-arn.js.map +1 -1
  525. package/dist/service/sns/delivery/lambda/sim-sns-delivery-function.d.ts +5 -4
  526. package/dist/service/sns/delivery/lambda/sim-sns-delivery-function.d.ts.map +1 -1
  527. package/dist/service/sns/delivery/lambda/sim-sns-delivery-function.js +16 -11
  528. package/dist/service/sns/delivery/lambda/sim-sns-delivery-function.js.map +1 -1
  529. package/dist/service/sns/subscription/sim-sns-function-endpoint-arn.d.ts +8 -4
  530. package/dist/service/sns/subscription/sim-sns-function-endpoint-arn.d.ts.map +1 -1
  531. package/dist/service/sns/subscription/sim-sns-function-endpoint-arn.js +11 -10
  532. package/dist/service/sns/subscription/sim-sns-function-endpoint-arn.js.map +1 -1
  533. package/package.json +4 -2
@@ -1 +1 @@
1
- {"version":3,"file":"sim-lambda.js","sourceRoot":"","sources":["../../../src/service/lambda/sim-lambda.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sim-lambda.js","sourceRoot":"","sources":["../../../src/service/lambda/sim-lambda.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,sCAAsC,EAAE,MAAM,0CAA0C,CAAC;AAIlG,OAAO,EACL,iBAAiB,GAElB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,yBAAyB,EAAE,MAAM,wCAAwC,CAAC;AAMnF;;;;;;;;GAQG;AACH,MAAM,OAAO,SAAU,SAAQ,mBAAmB;IAC7B,SAAS,GAAyB,IAAI,GAAG,EAAE,CAAC;IAC5C,QAAQ,CAAoB;IAE9B,UAAU,GAAG,IAAI,sCAAsC,CACtE,IAAI,CACL,CAAC;IAEe,SAAS,GAAG,IAAI,yBAAyB,CAAC,IAAI,CAAC,CAAC;IAEjE,YAAY,UAAU,GAAwB,EAAE;QAC9C,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,QAAQ,GAAG,IAAI,iBAAiB,CAAC;YACpC,GAAG,UAAU;YACb,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,yEAAyE;YACzE,wEAAwE;YACxE,mBAAmB;YACnB,UAAU,EAAE,UAAU,CAAC,UAAU,IAAI,IAAI;SAC1C,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;OAOG;IACH,eAAe;QACb,OAAO,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC;IACvC,CAAC;IAED,qDAAqD;IACrD,KAAK,CAAC,cAAc,CAClB,OAAmD,EACnD,OAAiC;QAEjC,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAChE,CAAC;IAED,kDAAkD;IAClD,KAAK,CAAC,WAAW,CACf,OAAgD,EAChD,OAAiC;QAEjC,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC7D,CAAC;IAED,qDAAqD;IACrD,KAAK,CAAC,cAAc,CAClB,OAAmD,EACnD,OAAiC;QAEjC,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAChE,CAAC;IAED,6CAA6C;IAC7C,KAAK,CAAC,MAAM,CACV,OAA2C,EAC3C,OAAiC;QAEjC,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAChE,CAAC;IAED,qDAAqD;IACrD,KAAK,CAAC,cAAc,CAClB,OAAmD,EACnD,OAAiC;QAEjC,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAChE,CAAC;IAED,+DAA+D;IAC/D,KAAK,CAAC,sBAAsB,CAC1B,OAA2D,EAC3D,OAAiC;QAEjC,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC7D,CAAC;IAED,kDAAkD;IAClD,KAAK,CAAC,WAAW,CACf,OAAgD,EAChD,OAAiC;QAEjC,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC9D,CAAC;IAED,mDAAmD;IACnD,KAAK,CAAC,WAAW,CACf,OAAgD,EAChD,OAAiC;QAEjC,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC9D,CAAC;IAED,+CAA+C;IAC/C,KAAK,CAAC,QAAQ,CACZ,OAA6C,EAC7C,OAAiC;QAEjC,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC3D,CAAC;IAED,kDAAkD;IAClD,KAAK,CAAC,WAAW,CACf,OAAgD,EAChD,OAAiC;QAEjC,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC5D,CAAC;IAED,kDAAkD;IAClD,KAAK,CAAC,WAAW,CACf,OAAgD,EAChD,OAAiC;QAEjC,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC9D,CAAC;IAED,gEAAgE;IAChE,KAAK,CAAC,uBAAuB,CAC3B,OAA4D,EAC5D,OAAiC;QAEjC,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACnE,CAAC;IAED,6DAA6D;IAC7D,KAAK,CAAC,oBAAoB,CACxB,OAAyD,EACzD,OAAiC;QAEjC,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAChE,CAAC;IAED,iEAAiE;IACjE,KAAK,CAAC,uBAAuB,CAC3B,OAA4D,EAC5D,OAAiC;QAEjC,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACnE,CAAC;IAED,gEAAgE;IAChE,KAAK,CAAC,uBAAuB,CAC3B,OAA4D,EAC5D,OAAiC;QAEjC,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACnE,CAAC;IAED,+DAA+D;IAC/D,KAAK,CAAC,sBAAsB,CAC1B,OAA2D,EAC3D,OAAiC;QAEjC,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACjE,CAAC;IAED,iEAAiE;IACjE,KAAK,CAAC,wBAAwB,CAC5B,OAA6D,EAC7D,OAAiC;QAEjC,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC1E,CAAC;IAED,8DAA8D;IAC9D,KAAK,CAAC,qBAAqB,CACzB,OAA0D,EAC1D,OAAiC;QAEjC,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACvE,CAAC;IAED,gEAAgE;IAChE,KAAK,CAAC,uBAAuB,CAC3B,OAA4D,EAC5D,OAAiC;QAEjC,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACxE,CAAC;IAED,iEAAiE;IACjE,KAAK,CAAC,wBAAwB,CAC5B,OAA6D,EAC7D,OAAiC;QAEjC,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC1E,CAAC;IAED,qDAAqD;IACrD,KAAK,CAAC,aAAa,CACjB,OAAkD,EAClD,OAAiC;QAEjC,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC/D,CAAC;IAED,uDAAuD;IACvD,KAAK,CAAC,gBAAgB,CACpB,OAAqD,EACrD,OAAiC;QAEjC,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAClE,CAAC;IAED,gDAAgD;IAChD,KAAK,CAAC,SAAS,CACb,OAA8C,EAC9C,OAAiC;QAEjC,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACrE,CAAC;IAED,0DAA0D;IAC1D,kBAAkB;QAChB,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED,yEAAyE;IACzE,gBAAgB;QACd,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"sim-aws-logs-subscription-functions.d.ts","sourceRoot":"","sources":["../../../../../src/service/logs/subscription/lambda/sim-aws-logs-subscription-functions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,8CAA8C,CAAC;AAC7F,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,0CAA0C,CAAC;AAChG,OAAO,EAEL,KAAK,2BAA2B,EACjC,MAAM,mCAAmC,CAAC;AAI3C,UAAU,yCAAyC;IACjD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAExB,+DAA+D;IAC/D,QAAQ,CAAC,kBAAkB,EAAE,wBAAwB,CAAC;CACvD;AAED;;;;;;;;GAQG;AACH,qBAAa,+BAAgC,YAAW,+BAA+B;;IAIrF,YAAY,UAAU,EAAE,yCAAyC,EAGhE;IAED;;OAEG;IACG,KAAK,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAIjD;IAED;;OAEG;IACG,OAAO,CACX,cAAc,EAAE,MAAM,EACtB,QAAQ,EAAE,2BAA2B,GACpC,OAAO,CAAC,IAAI,CAAC,CAQf;IAED,OAAO,CAAC,SAAS;CAclB"}
1
+ {"version":3,"file":"sim-aws-logs-subscription-functions.d.ts","sourceRoot":"","sources":["../../../../../src/service/logs/subscription/lambda/sim-aws-logs-subscription-functions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,8CAA8C,CAAC;AAC7F,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,0CAA0C,CAAC;AAChG,OAAO,EAEL,KAAK,2BAA2B,EACjC,MAAM,mCAAmC,CAAC;AAI3C,UAAU,yCAAyC;IACjD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAExB,+DAA+D;IAC/D,QAAQ,CAAC,kBAAkB,EAAE,wBAAwB,CAAC;CACvD;AAED;;;;;;;;GAQG;AACH,qBAAa,+BAAgC,YAAW,+BAA+B;;IAIrF,YAAY,UAAU,EAAE,yCAAyC,EAGhE;IAED;;OAEG;IACG,KAAK,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAIjD;IAED;;OAEG;IACG,OAAO,CACX,cAAc,EAAE,MAAM,EACtB,QAAQ,EAAE,2BAA2B,GACpC,OAAO,CAAC,IAAI,CAAC,CAQf;IAED,OAAO,CAAC,SAAS;CAalB"}
@@ -32,11 +32,11 @@ export class SimAwsLogsSubscriptionFunctions {
32
32
  // already inside the background task that stands for the asynchronous
33
33
  // delivery real CloudWatch Logs makes, and because a handler failure has
34
34
  // to reach the delivery outcome rather than being swallowed.
35
- await this.permitted(destinationArn).invoke(simLogsSubscriptionEventPayload(delivery));
35
+ await this.permitted(destinationArn).simFunction.invoke(simLogsSubscriptionEventPayload(delivery));
36
36
  }
37
37
  permitted(destinationArn) {
38
38
  const arn = SimLogsSubscriptionFunctionArn.parse(destinationArn, this.#accountRegionScope);
39
- return permittedSimLogsDestinationFunction(destinationArn, arn.functionName, this.#simAws.accountRegionScope(arn.accountId, arn.regionName));
39
+ return permittedSimLogsDestinationFunction(arn, this.#simAws.accountRegionScope(arn.accountId, arn.regionName));
40
40
  }
41
41
  }
42
42
  //# sourceMappingURL=sim-aws-logs-subscription-functions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sim-aws-logs-subscription-functions.js","sourceRoot":"","sources":["../../../../../src/service/logs/subscription/lambda/sim-aws-logs-subscription-functions.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,+BAA+B,GAEhC,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,mCAAmC,EAAE,MAAM,sCAAsC,CAAC;AAC3F,OAAO,EAAE,8BAA8B,EAAE,MAAM,yCAAyC,CAAC;AASzF;;;;;;;;GAQG;AACH,MAAM,OAAO,+BAA+B;IACjC,OAAO,CAAS;IAChB,mBAAmB,CAA2B;IAEvD,YAAY,UAAqD;QAC/D,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC;QACjC,IAAI,CAAC,mBAAmB,GAAG,UAAU,CAAC,kBAAkB,CAAC;IAC3D,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK,CAAC,cAAsB;QAChC,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QAE/B,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO,CACX,cAAsB,EACtB,QAAqC;QAErC,0EAA0E;QAC1E,sEAAsE;QACtE,yEAAyE;QACzE,6DAA6D;QAC7D,MAAM,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,MAAM,CACzC,+BAA+B,CAAC,QAAQ,CAAC,CAC1C,CAAC;IACJ,CAAC;IAEO,SAAS,CACf,cAAsB;QAEtB,MAAM,GAAG,GAAG,8BAA8B,CAAC,KAAK,CAC9C,cAAc,EACd,IAAI,CAAC,mBAAmB,CACzB,CAAC;QAEF,OAAO,mCAAmC,CACxC,cAAc,EACd,GAAG,CAAC,YAAY,EAChB,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,UAAU,CAAC,CAC/D,CAAC;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"sim-aws-logs-subscription-functions.js","sourceRoot":"","sources":["../../../../../src/service/logs/subscription/lambda/sim-aws-logs-subscription-functions.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,+BAA+B,GAEhC,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,mCAAmC,EAAE,MAAM,sCAAsC,CAAC;AAC3F,OAAO,EAAE,8BAA8B,EAAE,MAAM,yCAAyC,CAAC;AASzF;;;;;;;;GAQG;AACH,MAAM,OAAO,+BAA+B;IACjC,OAAO,CAAS;IAChB,mBAAmB,CAA2B;IAEvD,YAAY,UAAqD;QAC/D,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC;QACjC,IAAI,CAAC,mBAAmB,GAAG,UAAU,CAAC,kBAAkB,CAAC;IAC3D,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK,CAAC,cAAsB;QAChC,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QAE/B,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO,CACX,cAAsB,EACtB,QAAqC;QAErC,0EAA0E;QAC1E,sEAAsE;QACtE,yEAAyE;QACzE,6DAA6D;QAC7D,MAAM,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,WAAW,CAAC,MAAM,CACrD,+BAA+B,CAAC,QAAQ,CAAC,CAC1C,CAAC;IACJ,CAAC;IAEO,SAAS,CACf,cAAsB;QAEtB,MAAM,GAAG,GAAG,8BAA8B,CAAC,KAAK,CAC9C,cAAc,EACd,IAAI,CAAC,mBAAmB,CACzB,CAAC;QAEF,OAAO,mCAAmC,CACxC,GAAG,EACH,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,UAAU,CAAC,CAC/D,CAAC;IACJ,CAAC;CACF"}
@@ -1,5 +1,6 @@
1
1
  import type { SimAwsAccountRegionContainer } from "../../../aws/sim-aws-account-region-scope.js";
2
- import type { SimLambdaFunction } from "../../../lambda/function/sim-lambda-function.js";
2
+ import type { SimLambdaFunctionTarget } from "../../../lambda/function/version/sim-lambda-function-target.js";
3
+ import type { SimLogsSubscriptionFunctionArn } from "./sim-logs-subscription-function-arn.js";
3
4
  /**
4
5
  * The service principal CloudWatch Logs invokes a destination function as.
5
6
  *
@@ -12,9 +13,10 @@ export declare function simLogsServicePrincipal(regionName: string): string;
12
13
  * The destination function, refusing one that is missing or does not admit
13
14
  * CloudWatch Logs.
14
15
  *
15
- * The resource policy is consulted on every delivery rather than remembered
16
- * from when the filter was put, so a permission taken away afterwards stops
17
- * delivery, as it does in an account.
16
+ * The function and the resource policy are both resolved on every delivery
17
+ * rather than remembered from when the filter was put, so a permission taken
18
+ * away afterwards stops delivery, as it does in an account, and an alias moved
19
+ * to another version moves what runs.
18
20
  */
19
- export declare function permittedSimLogsDestinationFunction(destinationArn: string, functionName: string, scope: SimAwsAccountRegionContainer): SimLambdaFunction;
21
+ export declare function permittedSimLogsDestinationFunction(arn: SimLogsSubscriptionFunctionArn, scope: SimAwsAccountRegionContainer): SimLambdaFunctionTarget;
20
22
  //# sourceMappingURL=sim-logs-destination-permission.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sim-logs-destination-permission.d.ts","sourceRoot":"","sources":["../../../../../src/service/logs/subscription/lambda/sim-logs-destination-permission.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,8CAA8C,CAAC;AAEjG,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iDAAiD,CAAC;AAIzF;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAElE;AAED;;;;;;;GAOG;AACH,wBAAgB,mCAAmC,CACjD,cAAc,EAAE,MAAM,EACtB,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,4BAA4B,GAClC,iBAAiB,CAwBnB"}
1
+ {"version":3,"file":"sim-logs-destination-permission.d.ts","sourceRoot":"","sources":["../../../../../src/service/logs/subscription/lambda/sim-logs-destination-permission.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,8CAA8C,CAAC;AAEjG,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,gEAAgE,CAAC;AAG9G,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,yCAAyC,CAAC;AAE9F;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAElE;AAED;;;;;;;;GAQG;AACH,wBAAgB,mCAAmC,CACjD,GAAG,EAAE,8BAA8B,EACnC,KAAK,EAAE,4BAA4B,GAClC,uBAAuB,CA6BzB"}
@@ -15,25 +15,31 @@ export function simLogsServicePrincipal(regionName) {
15
15
  * The destination function, refusing one that is missing or does not admit
16
16
  * CloudWatch Logs.
17
17
  *
18
- * The resource policy is consulted on every delivery rather than remembered
19
- * from when the filter was put, so a permission taken away afterwards stops
20
- * delivery, as it does in an account.
18
+ * The function and the resource policy are both resolved on every delivery
19
+ * rather than remembered from when the filter was put, so a permission taken
20
+ * away afterwards stops delivery, as it does in an account, and an alias moved
21
+ * to another version moves what runs.
21
22
  */
22
- export function permittedSimLogsDestinationFunction(destinationArn, functionName, scope) {
23
- const simFunction = scope.lambda().getSimFunctionByName(functionName);
24
- if (simFunction === undefined) {
25
- throw new SimLogsResourceNotFoundException(`${destinationArn} is not a simulated Lambda function.`);
23
+ export function permittedSimLogsDestinationFunction(arn, scope) {
24
+ const destinationArn = arn.value;
25
+ const target = scope
26
+ .lambda()
27
+ .getSimFunctionTarget(arn.functionName, arn.qualifier);
28
+ if (target === undefined) {
29
+ throw new SimLogsResourceNotFoundException(arn.qualifier === undefined
30
+ ? `${destinationArn} is not a simulated Lambda function.`
31
+ : `${destinationArn} names no simulated Lambda function version or alias.`);
26
32
  }
27
33
  const servicePrincipal = simLogsServicePrincipal(scope.region.regionName);
28
34
  const decision = new SimLambdaServiceInvokeAuthorizer({
29
35
  iam: scope.iam(),
30
- }).authorize({ simFunction, servicePrincipal });
36
+ }).authorize({ resource: target.resource, servicePrincipal });
31
37
  if (decision.isDenied) {
32
38
  throw new SimLogsDeliveryNotPermitted(`Could not execute the lambda function. Make sure you have given ` +
33
39
  `CloudWatch Logs permission to execute your function: the resource ` +
34
40
  `policy of ${destinationArn} does not allow ${servicePrincipal} to ` +
35
41
  `invoke it. Grant it with AddPermission.`);
36
42
  }
37
- return simFunction;
43
+ return target;
38
44
  }
39
45
  //# sourceMappingURL=sim-logs-destination-permission.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sim-logs-destination-permission.js","sourceRoot":"","sources":["../../../../../src/service/logs/subscription/lambda/sim-logs-destination-permission.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gCAAgC,EAAE,MAAM,2EAA2E,CAAC;AAE7H,OAAO,EAAE,2BAA2B,EAAE,MAAM,wCAAwC,CAAC;AACrF,OAAO,EAAE,gCAAgC,EAAE,MAAM,+BAA+B,CAAC;AAEjF;;;;;;GAMG;AACH,MAAM,UAAU,uBAAuB,CAAC,UAAkB;IACxD,OAAO,QAAQ,UAAU,gBAAgB,CAAC;AAC5C,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,mCAAmC,CACjD,cAAsB,EACtB,YAAoB,EACpB,KAAmC;IAEnC,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,oBAAoB,CAAC,YAAY,CAAC,CAAC;IAEtE,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;QAC9B,MAAM,IAAI,gCAAgC,CACxC,GAAG,cAAc,sCAAsC,CACxD,CAAC;IACJ,CAAC;IAED,MAAM,gBAAgB,GAAG,uBAAuB,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAC1E,MAAM,QAAQ,GAAG,IAAI,gCAAgC,CAAC;QACpD,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE;KACjB,CAAC,CAAC,SAAS,CAAC,EAAE,WAAW,EAAE,gBAAgB,EAAE,CAAC,CAAC;IAEhD,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;QACtB,MAAM,IAAI,2BAA2B,CACnC,kEAAkE;YAChE,oEAAoE;YACpE,aAAa,cAAc,mBAAmB,gBAAgB,MAAM;YACpE,yCAAyC,CAC5C,CAAC;IACJ,CAAC;IAED,OAAO,WAAW,CAAC;AACrB,CAAC"}
1
+ {"version":3,"file":"sim-logs-destination-permission.js","sourceRoot":"","sources":["../../../../../src/service/logs/subscription/lambda/sim-logs-destination-permission.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gCAAgC,EAAE,MAAM,2EAA2E,CAAC;AAE7H,OAAO,EAAE,2BAA2B,EAAE,MAAM,wCAAwC,CAAC;AACrF,OAAO,EAAE,gCAAgC,EAAE,MAAM,+BAA+B,CAAC;AAGjF;;;;;;GAMG;AACH,MAAM,UAAU,uBAAuB,CAAC,UAAkB;IACxD,OAAO,QAAQ,UAAU,gBAAgB,CAAC;AAC5C,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,mCAAmC,CACjD,GAAmC,EACnC,KAAmC;IAEnC,MAAM,cAAc,GAAG,GAAG,CAAC,KAAK,CAAC;IACjC,MAAM,MAAM,GAAG,KAAK;SACjB,MAAM,EAAE;SACR,oBAAoB,CAAC,GAAG,CAAC,YAAY,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;IAEzD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,MAAM,IAAI,gCAAgC,CACxC,GAAG,CAAC,SAAS,KAAK,SAAS;YACzB,CAAC,CAAC,GAAG,cAAc,sCAAsC;YACzD,CAAC,CAAC,GAAG,cAAc,uDAAuD,CAC7E,CAAC;IACJ,CAAC;IAED,MAAM,gBAAgB,GAAG,uBAAuB,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAC1E,MAAM,QAAQ,GAAG,IAAI,gCAAgC,CAAC;QACpD,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE;KACjB,CAAC,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,gBAAgB,EAAE,CAAC,CAAC;IAE9D,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;QACtB,MAAM,IAAI,2BAA2B,CACnC,kEAAkE;YAChE,oEAAoE;YACpE,aAAa,cAAc,mBAAmB,gBAAgB,MAAM;YACpE,yCAAyC,CAC5C,CAAC;IACJ,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -12,6 +12,15 @@ export declare class SimLogsSubscriptionFunctionArn {
12
12
  readonly regionName: AwsRegionName;
13
13
  readonly accountId: SimAwsAccountId;
14
14
  readonly functionName: string;
15
+ /**
16
+ * The version or alias the destination qualified the function with, if it
17
+ * named one.
18
+ *
19
+ * A filter whose destination is `orders:live` delivers to the version the
20
+ * alias points at, so the qualifier is held here and resolved when the
21
+ * filter is put and again on every delivery.
22
+ */
23
+ readonly qualifier: string | undefined;
15
24
  private constructor();
16
25
  /**
17
26
  * Read a destination ARN, refusing one no simulated function is behind.
@@ -1 +1 @@
1
- {"version":3,"file":"sim-logs-subscription-function-arn.d.ts","sourceRoot":"","sources":["../../../../../src/service/logs/subscription/lambda/sim-logs-subscription-function-arn.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,8CAA8C,CAAC;AAC7F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAcpE;;;;;GAKG;AACH,qBAAa,8BAA8B;IACzC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC;IACnC,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC;IACpC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAE9B,OAAO,eAKN;IAED;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,KAAK,CACV,cAAc,EAAE,MAAM,EACtB,KAAK,EAAE,wBAAwB,GAC9B,8BAA8B,CA0ChC;CACF"}
1
+ {"version":3,"file":"sim-logs-subscription-function-arn.d.ts","sourceRoot":"","sources":["../../../../../src/service/logs/subscription/lambda/sim-logs-subscription-function-arn.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,8CAA8C,CAAC;AAC7F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAepE;;;;;GAKG;AACH,qBAAa,8BAA8B;IACzC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC;IACnC,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC;IACpC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAE9B;;;;;;;OAOG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAEvC,OAAO,eAMN;IAED;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,KAAK,CACV,cAAc,EAAE,MAAM,EACtB,KAAK,EAAE,wBAAwB,GAC9B,8BAA8B,CAmChC;CACF"}
@@ -11,11 +11,21 @@ export class SimLogsSubscriptionFunctionArn {
11
11
  regionName;
12
12
  accountId;
13
13
  functionName;
14
+ /**
15
+ * The version or alias the destination qualified the function with, if it
16
+ * named one.
17
+ *
18
+ * A filter whose destination is `orders:live` delivers to the version the
19
+ * alias points at, so the qualifier is held here and resolved when the
20
+ * filter is put and again on every delivery.
21
+ */
22
+ qualifier;
14
23
  constructor(properties) {
15
24
  this.value = properties.value;
16
25
  this.regionName = properties.regionName;
17
26
  this.accountId = properties.accountId;
18
27
  this.functionName = properties.functionName;
28
+ this.qualifier = properties.qualifier;
19
29
  }
20
30
  /**
21
31
  * Read a destination ARN, refusing one no simulated function is behind.
@@ -39,11 +49,6 @@ export class SimLogsSubscriptionFunctionArn {
39
49
  `destination is simulated, which is ` +
40
50
  `arn:aws:lambda:<region>:<account-id>:function:<function-name>`);
41
51
  }
42
- if (parts.qualifier !== undefined) {
43
- throw new SimLogsInvalidParameterException(`${destinationArn} names a function version or alias, and simulated ` +
44
- `Lambda has neither, so delivering to the unqualified function ` +
45
- `instead would be delivering to a different one`);
46
- }
47
52
  if (parts.accountId !== scope.accountId) {
48
53
  throw new SimLogsInvalidParameterException(`${destinationArn} is in Account ${parts.accountId}, and a Lambda ` +
49
54
  `destination has to belong to the same Account as the subscription ` +
@@ -60,6 +65,7 @@ export class SimLogsSubscriptionFunctionArn {
60
65
  regionName: parts.regionName,
61
66
  accountId: parts.accountId,
62
67
  functionName: parts.functionName,
68
+ qualifier: parts.qualifier,
63
69
  });
64
70
  }
65
71
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sim-logs-subscription-function-arn.js","sourceRoot":"","sources":["../../../../../src/service/logs/subscription/lambda/sim-logs-subscription-function-arn.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,yBAAyB,EAAE,MAAM,2DAA2D,CAAC;AACtG,OAAO,EACL,gCAAgC,EAChC,oCAAoC,GACrC,MAAM,+BAA+B,CAAC;AASvC;;;;;GAKG;AACH,MAAM,OAAO,8BAA8B;IAChC,KAAK,CAAS;IACd,UAAU,CAAgB;IAC1B,SAAS,CAAkB;IAC3B,YAAY,CAAS;IAE9B,YAAoB,UAAoD;QACtE,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;QAC9B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;QACxC,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;QACtC,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,YAAY,CAAC;IAC9C,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,KAAK,CACV,cAAsB,EACtB,KAA+B;QAE/B,MAAM,KAAK,GAAG,yBAAyB,CAAC,cAAc,CAAC,CAAC;QAExD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,oCAAoC,CAC5C,GAAG,cAAc,+CAA+C;gBAC9D,qCAAqC;gBACrC,+DAA+D,CAClE,CAAC;QACJ,CAAC;QAED,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YAClC,MAAM,IAAI,gCAAgC,CACxC,GAAG,cAAc,oDAAoD;gBACnE,gEAAgE;gBAChE,gDAAgD,CACnD,CAAC;QACJ,CAAC;QAED,IAAI,KAAK,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS,EAAE,CAAC;YACxC,MAAM,IAAI,gCAAgC,CACxC,GAAG,cAAc,kBAAkB,KAAK,CAAC,SAAS,iBAAiB;gBACjE,oEAAoE;gBACpE,oBAAoB,KAAK,CAAC,SAAS,iCAAiC;gBACpE,wDAAwD,CAC3D,CAAC;QACJ,CAAC;QAED,IAAI,KAAK,CAAC,UAAU,KAAK,KAAK,CAAC,UAAU,EAAE,CAAC;YAC1C,MAAM,IAAI,gCAAgC,CACxC,GAAG,cAAc,iBAAiB,KAAK,CAAC,UAAU,iBAAiB;gBACjE,mEAAmE;gBACnE,SAAS,KAAK,CAAC,UAAU,GAAG,CAC/B,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,8BAA8B,CAAC;YACxC,KAAK,EAAE,cAAc;YACrB,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,YAAY,EAAE,KAAK,CAAC,YAAY;SACjC,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {"version":3,"file":"sim-logs-subscription-function-arn.js","sourceRoot":"","sources":["../../../../../src/service/logs/subscription/lambda/sim-logs-subscription-function-arn.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,yBAAyB,EAAE,MAAM,2DAA2D,CAAC;AACtG,OAAO,EACL,gCAAgC,EAChC,oCAAoC,GACrC,MAAM,+BAA+B,CAAC;AAUvC;;;;;GAKG;AACH,MAAM,OAAO,8BAA8B;IAChC,KAAK,CAAS;IACd,UAAU,CAAgB;IAC1B,SAAS,CAAkB;IAC3B,YAAY,CAAS;IAE9B;;;;;;;OAOG;IACM,SAAS,CAAqB;IAEvC,YAAoB,UAAoD;QACtE,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;QAC9B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;QACxC,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;QACtC,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,YAAY,CAAC;QAC5C,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;IACxC,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,KAAK,CACV,cAAsB,EACtB,KAA+B;QAE/B,MAAM,KAAK,GAAG,yBAAyB,CAAC,cAAc,CAAC,CAAC;QAExD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,oCAAoC,CAC5C,GAAG,cAAc,+CAA+C;gBAC9D,qCAAqC;gBACrC,+DAA+D,CAClE,CAAC;QACJ,CAAC;QAED,IAAI,KAAK,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS,EAAE,CAAC;YACxC,MAAM,IAAI,gCAAgC,CACxC,GAAG,cAAc,kBAAkB,KAAK,CAAC,SAAS,iBAAiB;gBACjE,oEAAoE;gBACpE,oBAAoB,KAAK,CAAC,SAAS,iCAAiC;gBACpE,wDAAwD,CAC3D,CAAC;QACJ,CAAC;QAED,IAAI,KAAK,CAAC,UAAU,KAAK,KAAK,CAAC,UAAU,EAAE,CAAC;YAC1C,MAAM,IAAI,gCAAgC,CACxC,GAAG,cAAc,iBAAiB,KAAK,CAAC,UAAU,iBAAiB;gBACjE,mEAAmE;gBACnE,SAAS,KAAK,CAAC,UAAU,GAAG,CAC/B,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,8BAA8B,CAAC;YACxC,KAAK,EAAE,cAAc;YACrB,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,SAAS,EAAE,KAAK,CAAC,SAAS;SAC3B,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -36,7 +36,7 @@ export declare class SimAwsS3NotificationFunctions implements SimS3NotificationF
36
36
  * asynchronous invocation error.
37
37
  */
38
38
  invoke(request: SimS3NotificationDestinationRequest, event: object): Promise<void>;
39
- private findFunction;
39
+ private findTarget;
40
40
  private iam;
41
41
  private scope;
42
42
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sim-aws-s3-notification-functions.d.ts","sourceRoot":"","sources":["../../../../../../src/service/s3/notification/destination/lambda/sim-aws-s3-notification-functions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAIzD,OAAO,KAAK,EAAE,mCAAmC,EAAE,MAAM,uCAAuC,CAAC;AAGjG,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAErF,UAAU,uCAAuC;IAC/C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED;;;;;;;;;GASG;AACH,qBAAa,6BAA8B,YAAW,0BAA0B;IAC9E,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAEhC,YAAY,UAAU,EAAE,uCAAuC,EAE9D;IAED;;;;;;;OAOG;IACH,aAAa,CACX,OAAO,EAAE,mCAAmC,GAC3C,MAAM,GAAG,SAAS,CA0BpB;IAED;;;;;;;;OAQG;IACG,MAAM,CACV,OAAO,EAAE,mCAAmC,EAC5C,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,IAAI,CAAC,CAYf;IAED,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,GAAG;IAIX,OAAO,CAAC,KAAK;CAKd"}
1
+ {"version":3,"file":"sim-aws-s3-notification-functions.d.ts","sourceRoot":"","sources":["../../../../../../src/service/s3/notification/destination/lambda/sim-aws-s3-notification-functions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAIzD,OAAO,KAAK,EAAE,mCAAmC,EAAE,MAAM,uCAAuC,CAAC;AAGjG,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAErF,UAAU,uCAAuC;IAC/C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED;;;;;;;;;GASG;AACH,qBAAa,6BAA8B,YAAW,0BAA0B;IAC9E,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAEhC,YAAY,UAAU,EAAE,uCAAuC,EAE9D;IAED;;;;;;;OAOG;IACH,aAAa,CACX,OAAO,EAAE,mCAAmC,GAC3C,MAAM,GAAG,SAAS,CA0BpB;IAED;;;;;;;;OAQG;IACG,MAAM,CACV,OAAO,EAAE,mCAAmC,EAC5C,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,IAAI,CAAC,CAUf;IAED,OAAO,CAAC,UAAU;IAQlB,OAAO,CAAC,GAAG;IAIX,OAAO,CAAC,KAAK;CAKd"}
@@ -26,14 +26,14 @@ export class SimAwsS3NotificationFunctions {
26
26
  */
27
27
  invokeRefusal(request) {
28
28
  const arn = SimS3NotificationFunctionArn.parse(request.destinationArn);
29
- const simFunction = this.findFunction(arn);
30
- if (simFunction === undefined) {
31
- return `${request.destinationArn} is not a simulated Lambda function.`;
29
+ const target = this.findTarget(arn);
30
+ if (target === undefined) {
31
+ return missingFunctionRefusal(arn, request.destinationArn);
32
32
  }
33
33
  const decision = new SimLambdaServiceInvokeAuthorizer({
34
34
  iam: this.iam(arn),
35
35
  }).authorize({
36
- simFunction,
36
+ resource: target.resource,
37
37
  servicePrincipal: simS3ServicePrincipal,
38
38
  sourceArn: request.bucketArn,
39
39
  sourceAccount: request.bucketOwnerAccountId,
@@ -56,15 +56,17 @@ export class SimAwsS3NotificationFunctions {
56
56
  */
57
57
  async invoke(request, event) {
58
58
  const arn = SimS3NotificationFunctionArn.parse(request.destinationArn);
59
- const simFunction = this.findFunction(arn);
59
+ const target = this.findTarget(arn);
60
60
  // oxlint-disable-next-line yulin/assert-defined-guard -- `assertDefined` is denser per line, and this file is close enough to the FTA threshold that the guard costs less kept as it is
61
- if (simFunction === undefined) {
62
- throw new Error(`${request.destinationArn} is not a simulated Lambda function.`);
61
+ if (target === undefined) {
62
+ throw new Error(missingFunctionRefusal(arn, request.destinationArn));
63
63
  }
64
- await simFunction.invoke(event);
64
+ await target.simFunction.invoke(event);
65
65
  }
66
- findFunction(arn) {
67
- return this.scope(arn).lambda().getSimFunctionByName(arn.functionName);
66
+ findTarget(arn) {
67
+ return this.scope(arn)
68
+ .lambda()
69
+ .getSimFunctionTarget(arn.functionName, arn.qualifier);
68
70
  }
69
71
  iam(arn) {
70
72
  return this.scope(arn).iam();
@@ -73,4 +75,15 @@ export class SimAwsS3NotificationFunctions {
73
75
  return this.simAws.accountRegionScope(arn.accountId, arn.regionName);
74
76
  }
75
77
  }
78
+ /**
79
+ * Why a destination ARN reaches nothing, for a Bucket to repeat back.
80
+ *
81
+ * A qualified ARN says so, since the function it names may well be there while
82
+ * the version or alias it asked for is not.
83
+ */
84
+ function missingFunctionRefusal(arn, destinationArn) {
85
+ return arn.qualifier === undefined
86
+ ? `${destinationArn} is not a simulated Lambda function.`
87
+ : `${destinationArn} names no simulated Lambda function version or alias.`;
88
+ }
76
89
  //# sourceMappingURL=sim-aws-s3-notification-functions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sim-aws-s3-notification-functions.js","sourceRoot":"","sources":["../../../../../../src/service/s3/notification/destination/lambda/sim-aws-s3-notification-functions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gCAAgC,EAAE,MAAM,8EAA8E,CAAC;AAIhI,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,EAAE,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AAOrF;;;;;;;;;GASG;AACH,MAAM,OAAO,6BAA6B;IACvB,MAAM,CAAS;IAEhC,YAAY,UAAmD;QAC7D,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAClC,CAAC;IAED;;;;;;;OAOG;IACH,aAAa,CACX,OAA4C;QAE5C,MAAM,GAAG,GAAG,4BAA4B,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QACvE,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;QAE3C,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9B,OAAO,GAAG,OAAO,CAAC,cAAc,sCAAsC,CAAC;QACzE,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,gCAAgC,CAAC;YACpD,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;SACnB,CAAC,CAAC,SAAS,CAAC;YACX,WAAW;YACX,gBAAgB,EAAE,qBAAqB;YACvC,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,aAAa,EAAE,OAAO,CAAC,oBAAoB;SAC5C,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACtB,OAAO,CACL,0BAA0B,OAAO,CAAC,cAAc,kBAAkB;gBAClE,GAAG,qBAAqB,qBAAqB,OAAO,CAAC,SAAS,IAAI;gBAClE,8BAA8B,CAC/B,CAAC;QACJ,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,MAAM,CACV,OAA4C,EAC5C,KAAa;QAEb,MAAM,GAAG,GAAG,4BAA4B,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QACvE,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;QAE3C,wLAAwL;QACxL,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CACb,GAAG,OAAO,CAAC,cAAc,sCAAsC,CAChE,CAAC;QACJ,CAAC;QAED,MAAM,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAClC,CAAC;IAEO,YAAY,CAClB,GAAiC;QAEjC,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,oBAAoB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IACzE,CAAC;IAEO,GAAG,CAAC,GAAiC;QAC3C,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;IAC/B,CAAC;IAEO,KAAK,CACX,GAAiC;QAEjC,OAAO,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACvE,CAAC;CACF"}
1
+ {"version":3,"file":"sim-aws-s3-notification-functions.js","sourceRoot":"","sources":["../../../../../../src/service/s3/notification/destination/lambda/sim-aws-s3-notification-functions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gCAAgC,EAAE,MAAM,8EAA8E,CAAC;AAIhI,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,EAAE,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AAOrF;;;;;;;;;GASG;AACH,MAAM,OAAO,6BAA6B;IACvB,MAAM,CAAS;IAEhC,YAAY,UAAmD;QAC7D,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAClC,CAAC;IAED;;;;;;;OAOG;IACH,aAAa,CACX,OAA4C;QAE5C,MAAM,GAAG,GAAG,4BAA4B,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QACvE,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QAEpC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,OAAO,sBAAsB,CAAC,GAAG,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;QAC7D,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,gCAAgC,CAAC;YACpD,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;SACnB,CAAC,CAAC,SAAS,CAAC;YACX,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,gBAAgB,EAAE,qBAAqB;YACvC,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,aAAa,EAAE,OAAO,CAAC,oBAAoB;SAC5C,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACtB,OAAO,CACL,0BAA0B,OAAO,CAAC,cAAc,kBAAkB;gBAClE,GAAG,qBAAqB,qBAAqB,OAAO,CAAC,SAAS,IAAI;gBAClE,8BAA8B,CAC/B,CAAC;QACJ,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,MAAM,CACV,OAA4C,EAC5C,KAAa;QAEb,MAAM,GAAG,GAAG,4BAA4B,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QACvE,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QAEpC,wLAAwL;QACxL,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,GAAG,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC;QACvE,CAAC;QAED,MAAM,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACzC,CAAC;IAEO,UAAU,CAChB,GAAiC;QAEjC,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;aACnB,MAAM,EAAE;aACR,oBAAoB,CAAC,GAAG,CAAC,YAAY,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;IAC3D,CAAC;IAEO,GAAG,CAAC,GAAiC;QAC3C,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;IAC/B,CAAC;IAEO,KAAK,CACX,GAAiC;QAEjC,OAAO,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACvE,CAAC;CACF;AAED;;;;;GAKG;AACH,SAAS,sBAAsB,CAC7B,GAAiC,EACjC,cAAsB;IAEtB,OAAO,GAAG,CAAC,SAAS,KAAK,SAAS;QAChC,CAAC,CAAC,GAAG,cAAc,sCAAsC;QACzD,CAAC,CAAC,GAAG,cAAc,uDAAuD,CAAC;AAC/E,CAAC"}
@@ -11,13 +11,17 @@ export declare class SimS3NotificationFunctionArn {
11
11
  readonly regionName: AwsRegionName;
12
12
  readonly accountId: SimAwsAccountId;
13
13
  readonly functionName: string;
14
+ /**
15
+ * The version or alias the ARN qualified the function with, if it named one.
16
+ *
17
+ * A qualified ARN notifies the version it names rather than the function, so
18
+ * the qualifier is held here and resolved when the notification is
19
+ * configured and again when an event is delivered.
20
+ */
21
+ readonly qualifier: string | undefined;
14
22
  private constructor();
15
23
  /**
16
24
  * Read a Lambda function ARN, refusing anything else.
17
- *
18
- * A qualified ARN naming a version or an alias is refused rather than being
19
- * read as the unqualified function, because simulated Lambda has neither and
20
- * silently notifying `$LATEST` instead would be the wrong function.
21
25
  */
22
26
  static parse(arn: string): SimS3NotificationFunctionArn;
23
27
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sim-s3-notification-function-arn.d.ts","sourceRoot":"","sources":["../../../../../../src/service/s3/notification/destination/lambda/sim-s3-notification-function-arn.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAOvE;;;;;;GAMG;AACH,qBAAa,4BAA4B;IACvC,SAAgB,UAAU,EAAE,aAAa,CAAC;IAC1C,SAAgB,SAAS,EAAE,eAAe,CAAC;IAC3C,SAAgB,YAAY,EAAE,MAAM,CAAC;IAErC,OAAO,eAQN;IAED;;;;;;OAMG;IACH,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,4BAA4B,CAoBtD;CACF"}
1
+ {"version":3,"file":"sim-s3-notification-function-arn.d.ts","sourceRoot":"","sources":["../../../../../../src/service/s3/notification/destination/lambda/sim-s3-notification-function-arn.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAIvE;;;;;;GAMG;AACH,qBAAa,4BAA4B;IACvC,SAAgB,UAAU,EAAE,aAAa,CAAC;IAC1C,SAAgB,SAAS,EAAE,eAAe,CAAC;IAC3C,SAAgB,YAAY,EAAE,MAAM,CAAC;IAErC;;;;;;OAMG;IACH,SAAgB,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAE9C,OAAO,eAUN;IAED;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,4BAA4B,CAatD;CACF"}
@@ -1,5 +1,5 @@
1
1
  import { parseSimLambdaFunctionArn } from "../../../../lambda/function/sim-lambda-function-arn-parts.js";
2
- import { SimS3InvalidArgument, SimS3NotImplemented, } from "../../../error/sim-s3.error.js";
2
+ import { SimS3InvalidArgument } from "../../../error/sim-s3.error.js";
3
3
  /**
4
4
  * The Lambda function ARN a notification configuration names.
5
5
  *
@@ -11,29 +11,29 @@ export class SimS3NotificationFunctionArn {
11
11
  regionName;
12
12
  accountId;
13
13
  functionName;
14
- constructor(regionName, accountId, functionName) {
14
+ /**
15
+ * The version or alias the ARN qualified the function with, if it named one.
16
+ *
17
+ * A qualified ARN notifies the version it names rather than the function, so
18
+ * the qualifier is held here and resolved when the notification is
19
+ * configured and again when an event is delivered.
20
+ */
21
+ qualifier;
22
+ constructor(regionName, accountId, functionName, qualifier) {
15
23
  this.regionName = regionName;
16
24
  this.accountId = accountId;
17
25
  this.functionName = functionName;
26
+ this.qualifier = qualifier;
18
27
  }
19
28
  /**
20
29
  * Read a Lambda function ARN, refusing anything else.
21
- *
22
- * A qualified ARN naming a version or an alias is refused rather than being
23
- * read as the unqualified function, because simulated Lambda has neither and
24
- * silently notifying `$LATEST` instead would be the wrong function.
25
30
  */
26
31
  static parse(arn) {
27
32
  const parts = parseSimLambdaFunctionArn(arn);
28
33
  if (parts === undefined) {
29
34
  throw new SimS3InvalidArgument(`${arn} is not a Lambda function ARN.`);
30
35
  }
31
- if (parts.qualifier !== undefined) {
32
- throw new SimS3NotImplemented(`Cannot notify ${arn}: simulated Lambda has no function versions or ` +
33
- "aliases, so a qualified function ARN is refused rather than " +
34
- "treated as the unqualified function.");
35
- }
36
- return new SimS3NotificationFunctionArn(parts.regionName, parts.accountId, parts.functionName);
36
+ return new SimS3NotificationFunctionArn(parts.regionName, parts.accountId, parts.functionName, parts.qualifier);
37
37
  }
38
38
  }
39
39
  //# sourceMappingURL=sim-s3-notification-function-arn.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sim-s3-notification-function-arn.js","sourceRoot":"","sources":["../../../../../../src/service/s3/notification/destination/lambda/sim-s3-notification-function-arn.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,yBAAyB,EAAE,MAAM,8DAA8D,CAAC;AACzG,OAAO,EACL,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,gCAAgC,CAAC;AAExC;;;;;;GAMG;AACH,MAAM,OAAO,4BAA4B;IACvB,UAAU,CAAgB;IAC1B,SAAS,CAAkB;IAC3B,YAAY,CAAS;IAErC,YACE,UAAyB,EACzB,SAA0B,EAC1B,YAAoB;QAEpB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,KAAK,CAAC,GAAW;QACtB,MAAM,KAAK,GAAG,yBAAyB,CAAC,GAAG,CAAC,CAAC;QAE7C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,oBAAoB,CAAC,GAAG,GAAG,gCAAgC,CAAC,CAAC;QACzE,CAAC;QAED,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YAClC,MAAM,IAAI,mBAAmB,CAC3B,iBAAiB,GAAG,iDAAiD;gBACnE,8DAA8D;gBAC9D,sCAAsC,CACzC,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,4BAA4B,CACrC,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,YAAY,CACnB,CAAC;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"sim-s3-notification-function-arn.js","sourceRoot":"","sources":["../../../../../../src/service/s3/notification/destination/lambda/sim-s3-notification-function-arn.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,yBAAyB,EAAE,MAAM,8DAA8D,CAAC;AACzG,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AAEtE;;;;;;GAMG;AACH,MAAM,OAAO,4BAA4B;IACvB,UAAU,CAAgB;IAC1B,SAAS,CAAkB;IAC3B,YAAY,CAAS;IAErC;;;;;;OAMG;IACa,SAAS,CAAqB;IAE9C,YACE,UAAyB,EACzB,SAA0B,EAC1B,YAAoB,EACpB,SAA6B;QAE7B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,GAAW;QACtB,MAAM,KAAK,GAAG,yBAAyB,CAAC,GAAG,CAAC,CAAC;QAE7C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,oBAAoB,CAAC,GAAG,GAAG,gCAAgC,CAAC,CAAC;QACzE,CAAC;QAED,OAAO,IAAI,4BAA4B,CACrC,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,YAAY,EAClB,KAAK,CAAC,SAAS,CAChB,CAAC;IACJ,CAAC;CACF"}
@@ -20,10 +20,11 @@ export declare class SimSnsDeliveryFunction {
20
20
  /**
21
21
  * Invoke the function with the event, if it still admits SNS for this topic.
22
22
  *
23
- * The resource policy is consulted on every delivery rather than remembered
24
- * from the moment the subscription was made, so a permission taken away
25
- * afterwards stops delivery. Real SNS does not check it at `Subscribe` time
26
- * at all, which is why this is the only place it is asked.
23
+ * The function, and the version or alias a qualified endpoint named, are
24
+ * resolved on every delivery, along with the resource policy, so a
25
+ * permission taken away afterwards stops delivery and an alias moved to
26
+ * another version moves what runs. Real SNS checks none of it at
27
+ * `Subscribe` time, which is why this is the only place it is asked.
27
28
  */
28
29
  deliver(request: SimSnsDeliveryRequest): Promise<void>;
29
30
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sim-sns-delivery-function.d.ts","sourceRoot":"","sources":["../../../../../src/service/sns/delivery/lambda/sim-sns-delivery-function.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,8CAA8C,CAAC;AAIjG,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,qDAAqD,CAAC;AACrG,OAAO,EACL,KAAK,qBAAqB,EAG3B,MAAM,wBAAwB,CAAC;AAGhC,UAAU,gCAAgC;IACxC,QAAQ,CAAC,GAAG,EAAE,yBAAyB,CAAC;IACxC,QAAQ,CAAC,KAAK,EAAE,4BAA4B,CAAC;CAC9C;AAED;;;;;;;GAOG;AACH,qBAAa,sBAAsB;IACjC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAA4B;IAChD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA+B;IAErD,YAAY,UAAU,EAAE,gCAAgC,EAGvD;IAED;;;;;;;OAOG;IACG,OAAO,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAuC3D;CACF"}
1
+ {"version":3,"file":"sim-sns-delivery-function.d.ts","sourceRoot":"","sources":["../../../../../src/service/sns/delivery/lambda/sim-sns-delivery-function.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,8CAA8C,CAAC;AAIjG,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,qDAAqD,CAAC;AACrG,OAAO,EACL,KAAK,qBAAqB,EAG3B,MAAM,wBAAwB,CAAC;AAGhC,UAAU,gCAAgC;IACxC,QAAQ,CAAC,GAAG,EAAE,yBAAyB,CAAC;IACxC,QAAQ,CAAC,KAAK,EAAE,4BAA4B,CAAC;CAC9C;AAED;;;;;;;GAOG;AACH,qBAAa,sBAAsB;IACjC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAA4B;IAChD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA+B;IAErD,YAAY,UAAU,EAAE,gCAAgC,EAGvD;IAED;;;;;;;;OAQG;IACG,OAAO,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CA2C3D;CACF"}
@@ -21,28 +21,33 @@ export class SimSnsDeliveryFunction {
21
21
  /**
22
22
  * Invoke the function with the event, if it still admits SNS for this topic.
23
23
  *
24
- * The resource policy is consulted on every delivery rather than remembered
25
- * from the moment the subscription was made, so a permission taken away
26
- * afterwards stops delivery. Real SNS does not check it at `Subscribe` time
27
- * at all, which is why this is the only place it is asked.
24
+ * The function, and the version or alias a qualified endpoint named, are
25
+ * resolved on every delivery, along with the resource policy, so a
26
+ * permission taken away afterwards stops delivery and an alias moved to
27
+ * another version moves what runs. Real SNS checks none of it at
28
+ * `Subscribe` time, which is why this is the only place it is asked.
28
29
  */
29
30
  async deliver(request) {
30
31
  const source = simSnsDeliverySource(request);
31
32
  const endpointArn = request.subscription.endpoint.value;
32
- const simFunction = this.scope
33
+ const target = this.scope
33
34
  .lambda()
34
- .getSimFunctionByName(this.arn.functionName);
35
- if (simFunction === undefined) {
35
+ .getSimFunctionTarget(this.arn.functionName, this.arn.qualifier);
36
+ if (target === undefined) {
36
37
  // Not a refusal: the resource policy said nothing, because there is no
37
38
  // function. A subscription pointing at nothing is a mistake worth
38
39
  // warning about, where a policy saying no is a modelled outcome a test
39
- // may be asking for on purpose.
40
- throw new SimSnsNotFoundException(`${endpointArn} is not a simulated Lambda function.`);
40
+ // may be asking for on purpose. A qualified endpoint reaches here for a
41
+ // version or alias that is not there as well.
42
+ throw new SimSnsNotFoundException(this.arn.qualifier === undefined
43
+ ? `${endpointArn} is not a simulated Lambda function.`
44
+ : `${endpointArn} names no simulated Lambda function version or ` +
45
+ "alias.");
41
46
  }
42
47
  const decision = new SimLambdaServiceInvokeAuthorizer({
43
48
  iam: this.scope.iam(),
44
49
  }).authorize({
45
- simFunction,
50
+ resource: target.resource,
46
51
  servicePrincipal: simSnsServicePrincipal,
47
52
  ...source,
48
53
  });
@@ -56,7 +61,7 @@ export class SimSnsDeliveryFunction {
56
61
  // asynchronous invocation real SNS makes, and because a handler failure
57
62
  // has to reach the delivery outcome rather than being swallowed as an
58
63
  // asynchronous invocation error.
59
- await simFunction.invoke(simSnsLambdaEventDocument(request));
64
+ await target.simFunction.invoke(simSnsLambdaEventDocument(request));
60
65
  }
61
66
  }
62
67
  //# sourceMappingURL=sim-sns-delivery-function.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sim-sns-delivery-function.js","sourceRoot":"","sources":["../../../../../src/service/sns/delivery/lambda/sim-sns-delivery-function.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gCAAgC,EAAE,MAAM,2EAA2E,CAAC;AAC7H,OAAO,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC;AACnF,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAEvE,OAAO,EAEL,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAOtE;;;;;;;GAOG;AACH,MAAM,OAAO,sBAAsB;IAChB,GAAG,CAA4B;IAC/B,KAAK,CAA+B;IAErD,YAAY,UAA4C;QACtD,IAAI,CAAC,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;IAChC,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,OAAO,CAAC,OAA8B;QAC1C,MAAM,MAAM,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC;QAC7C,MAAM,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC;QACxD,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK;aAC3B,MAAM,EAAE;aACR,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAE/C,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9B,uEAAuE;YACvE,kEAAkE;YAClE,uEAAuE;YACvE,gCAAgC;YAChC,MAAM,IAAI,uBAAuB,CAC/B,GAAG,WAAW,sCAAsC,CACrD,CAAC;QACJ,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,gCAAgC,CAAC;YACpD,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE;SACtB,CAAC,CAAC,SAAS,CAAC;YACX,WAAW;YACX,gBAAgB,EAAE,sBAAsB;YACxC,GAAG,MAAM;SACV,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACtB,MAAM,IAAI,0BAA0B,CAClC,0BAA0B,WAAW,kBAAkB;gBACrD,GAAG,sBAAsB,qBAAqB,MAAM,CAAC,SAAS,IAAI;gBAClE,8BAA8B,CACjC,CAAC;QACJ,CAAC;QAED,0EAA0E;QAC1E,wEAAwE;QACxE,wEAAwE;QACxE,sEAAsE;QACtE,iCAAiC;QACjC,MAAM,WAAW,CAAC,MAAM,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAAC,CAAC;IAC/D,CAAC;CACF"}
1
+ {"version":3,"file":"sim-sns-delivery-function.js","sourceRoot":"","sources":["../../../../../src/service/sns/delivery/lambda/sim-sns-delivery-function.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gCAAgC,EAAE,MAAM,2EAA2E,CAAC;AAC7H,OAAO,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC;AACnF,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAEvE,OAAO,EAEL,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAOtE;;;;;;;GAOG;AACH,MAAM,OAAO,sBAAsB;IAChB,GAAG,CAA4B;IAC/B,KAAK,CAA+B;IAErD,YAAY,UAA4C;QACtD,IAAI,CAAC,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;IAChC,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,OAAO,CAAC,OAA8B;QAC1C,MAAM,MAAM,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC;QAC7C,MAAM,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC;QACxD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK;aACtB,MAAM,EAAE;aACR,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAEnE,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,uEAAuE;YACvE,kEAAkE;YAClE,uEAAuE;YACvE,wEAAwE;YACxE,8CAA8C;YAC9C,MAAM,IAAI,uBAAuB,CAC/B,IAAI,CAAC,GAAG,CAAC,SAAS,KAAK,SAAS;gBAC9B,CAAC,CAAC,GAAG,WAAW,sCAAsC;gBACtD,CAAC,CAAC,GAAG,WAAW,iDAAiD;oBAC7D,QAAQ,CACf,CAAC;QACJ,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,gCAAgC,CAAC;YACpD,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE;SACtB,CAAC,CAAC,SAAS,CAAC;YACX,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,gBAAgB,EAAE,sBAAsB;YACxC,GAAG,MAAM;SACV,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACtB,MAAM,IAAI,0BAA0B,CAClC,0BAA0B,WAAW,kBAAkB;gBACrD,GAAG,sBAAsB,qBAAqB,MAAM,CAAC,SAAS,IAAI;gBAClE,8BAA8B,CACjC,CAAC;QACJ,CAAC;QAED,0EAA0E;QAC1E,wEAAwE;QACxE,wEAAwE;QACxE,sEAAsE;QACtE,iCAAiC;QACjC,MAAM,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAAC,CAAC;IACtE,CAAC;CACF"}
@@ -13,6 +13,14 @@ export declare class SimSnsFunctionEndpointArn {
13
13
  readonly regionName: AwsRegionName;
14
14
  readonly accountId: SimAwsAccountId;
15
15
  readonly functionName: string;
16
+ /**
17
+ * The version or alias the endpoint qualified the function with, if it named
18
+ * one.
19
+ *
20
+ * A subscription to `orders:live` delivers to the version the alias points
21
+ * at, so the qualifier is held here and resolved on every delivery.
22
+ */
23
+ readonly qualifier: string | undefined;
16
24
  private constructor();
17
25
  /**
18
26
  * Read a function ARN, refusing anything a function could not be reached by.
@@ -21,10 +29,6 @@ export declare class SimSnsFunctionEndpointArn {
21
29
  * What SNS adds is what an unreadable one means to a `Subscribe` request,
22
30
  * which is the same `InvalidParameterException` a queue ARN that is not one
23
31
  * gets.
24
- *
25
- * A qualified ARN naming a version or an alias is refused rather than read as
26
- * the unqualified function, because simulated Lambda has neither and
27
- * delivering to `$LATEST` instead would be the wrong function.
28
32
  */
29
33
  static parse(endpoint: string): SimSnsFunctionEndpointArn;
30
34
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sim-sns-function-endpoint-arn.d.ts","sourceRoot":"","sources":["../../../../src/service/sns/subscription/sim-sns-function-endpoint-arn.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAcjE;;;;;;;GAOG;AACH,qBAAa,yBAAyB;IACpC,SAAgB,KAAK,EAAE,MAAM,CAAC;IAC9B,SAAgB,UAAU,EAAE,aAAa,CAAC;IAC1C,SAAgB,SAAS,EAAE,eAAe,CAAC;IAC3C,SAAgB,YAAY,EAAE,MAAM,CAAC;IAErC,OAAO,eAKN;IAED;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG,yBAAyB,CAyBxD;CACF"}
1
+ {"version":3,"file":"sim-sns-function-endpoint-arn.d.ts","sourceRoot":"","sources":["../../../../src/service/sns/subscription/sim-sns-function-endpoint-arn.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAYjE;;;;;;;GAOG;AACH,qBAAa,yBAAyB;IACpC,SAAgB,KAAK,EAAE,MAAM,CAAC;IAC9B,SAAgB,UAAU,EAAE,aAAa,CAAC;IAC1C,SAAgB,SAAS,EAAE,eAAe,CAAC;IAC3C,SAAgB,YAAY,EAAE,MAAM,CAAC;IAErC;;;;;;OAMG;IACH,SAAgB,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAE9C,OAAO,eAMN;IAED;;;;;;;OAOG;IACH,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG,yBAAyB,CAkBxD;CACF"}
@@ -1,5 +1,5 @@
1
1
  import { parseSimLambdaFunctionArn } from "../../lambda/function/sim-lambda-function-arn-parts.js";
2
- import { SimSnsInvalidParameterException, SimSnsUnsimulatedInputException, } from "../error/sim-sns.error.js";
2
+ import { SimSnsInvalidParameterException } from "../error/sim-sns.error.js";
3
3
  /**
4
4
  * The Lambda function ARN a subscription's endpoint names.
5
5
  *
@@ -13,11 +13,20 @@ export class SimSnsFunctionEndpointArn {
13
13
  regionName;
14
14
  accountId;
15
15
  functionName;
16
+ /**
17
+ * The version or alias the endpoint qualified the function with, if it named
18
+ * one.
19
+ *
20
+ * A subscription to `orders:live` delivers to the version the alias points
21
+ * at, so the qualifier is held here and resolved on every delivery.
22
+ */
23
+ qualifier;
16
24
  constructor(properties) {
17
25
  this.value = properties.value;
18
26
  this.regionName = properties.regionName;
19
27
  this.accountId = properties.accountId;
20
28
  this.functionName = properties.functionName;
29
+ this.qualifier = properties.qualifier;
21
30
  }
22
31
  /**
23
32
  * Read a function ARN, refusing anything a function could not be reached by.
@@ -26,10 +35,6 @@ export class SimSnsFunctionEndpointArn {
26
35
  * What SNS adds is what an unreadable one means to a `Subscribe` request,
27
36
  * which is the same `InvalidParameterException` a queue ARN that is not one
28
37
  * gets.
29
- *
30
- * A qualified ARN naming a version or an alias is refused rather than read as
31
- * the unqualified function, because simulated Lambda has neither and
32
- * delivering to `$LATEST` instead would be the wrong function.
33
38
  */
34
39
  static parse(endpoint) {
35
40
  const parts = parseSimLambdaFunctionArn(endpoint);
@@ -38,16 +43,12 @@ export class SimSnsFunctionEndpointArn {
38
43
  "function ARN, which is " +
39
44
  "arn:aws:lambda:<region>:<account-id>:function:<function-name>");
40
45
  }
41
- if (parts.qualifier !== undefined) {
42
- throw new SimSnsUnsimulatedInputException(`Cannot subscribe ${endpoint}: simulated Lambda has no function ` +
43
- "versions or aliases, so a qualified function ARN is refused rather " +
44
- "than treated as the unqualified function.");
45
- }
46
46
  return new this({
47
47
  value: endpoint,
48
48
  regionName: parts.regionName,
49
49
  accountId: parts.accountId,
50
50
  functionName: parts.functionName,
51
+ qualifier: parts.qualifier,
51
52
  });
52
53
  }
53
54
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sim-sns-function-endpoint-arn.js","sourceRoot":"","sources":["../../../../src/service/sns/subscription/sim-sns-function-endpoint-arn.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,yBAAyB,EAAE,MAAM,wDAAwD,CAAC;AACnG,OAAO,EACL,+BAA+B,EAC/B,+BAA+B,GAChC,MAAM,2BAA2B,CAAC;AASnC;;;;;;;GAOG;AACH,MAAM,OAAO,yBAAyB;IACpB,KAAK,CAAS;IACd,UAAU,CAAgB;IAC1B,SAAS,CAAkB;IAC3B,YAAY,CAAS;IAErC,YAAoB,UAA+C;QACjE,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;QAC9B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;QACxC,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;QACtC,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,YAAY,CAAC;IAC9C,CAAC;IAED;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,KAAK,CAAC,QAAgB;QAC3B,MAAM,KAAK,GAAG,yBAAyB,CAAC,QAAQ,CAAC,CAAC;QAElD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,+BAA+B,CACvC,uCAAuC,QAAQ,mBAAmB;gBAChE,yBAAyB;gBACzB,+DAA+D,CAClE,CAAC;QACJ,CAAC;QAED,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YAClC,MAAM,IAAI,+BAA+B,CACvC,oBAAoB,QAAQ,qCAAqC;gBAC/D,qEAAqE;gBACrE,2CAA2C,CAC9C,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,IAAI,CAAC;YACd,KAAK,EAAE,QAAQ;YACf,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,YAAY,EAAE,KAAK,CAAC,YAAY;SACjC,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {"version":3,"file":"sim-sns-function-endpoint-arn.js","sourceRoot":"","sources":["../../../../src/service/sns/subscription/sim-sns-function-endpoint-arn.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,yBAAyB,EAAE,MAAM,wDAAwD,CAAC;AACnG,OAAO,EAAE,+BAA+B,EAAE,MAAM,2BAA2B,CAAC;AAU5E;;;;;;;GAOG;AACH,MAAM,OAAO,yBAAyB;IACpB,KAAK,CAAS;IACd,UAAU,CAAgB;IAC1B,SAAS,CAAkB;IAC3B,YAAY,CAAS;IAErC;;;;;;OAMG;IACa,SAAS,CAAqB;IAE9C,YAAoB,UAA+C;QACjE,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;QAC9B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;QACxC,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;QACtC,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,YAAY,CAAC;QAC5C,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;IACxC,CAAC;IAED;;;;;;;OAOG;IACH,MAAM,CAAC,KAAK,CAAC,QAAgB;QAC3B,MAAM,KAAK,GAAG,yBAAyB,CAAC,QAAQ,CAAC,CAAC;QAElD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,+BAA+B,CACvC,uCAAuC,QAAQ,mBAAmB;gBAChE,yBAAyB;gBACzB,+DAA+D,CAClE,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,IAAI,CAAC;YACd,KAAK,EAAE,QAAQ;YACf,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,SAAS,EAAE,KAAK,CAAC,SAAS;SAC3B,CAAC,CAAC;IACL,CAAC;CACF"}