@kensio/yulin 0.35.0 → 0.37.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (649) hide show
  1. package/README.md +37 -0
  2. package/dist/index.d.ts +5 -0
  3. package/dist/index.d.ts.map +1 -1
  4. package/dist/index.js +5 -0
  5. package/dist/index.js.map +1 -1
  6. package/dist/serve/controller/factory/sim-aws-service-controller-factory.d.ts.map +1 -1
  7. package/dist/serve/controller/factory/sim-aws-service-controller-factory.js +4 -0
  8. package/dist/serve/controller/factory/sim-aws-service-controller-factory.js.map +1 -1
  9. package/dist/serve/controller/sim-aws-service-signing-name.d.ts +11 -0
  10. package/dist/serve/controller/sim-aws-service-signing-name.d.ts.map +1 -0
  11. package/dist/serve/controller/sim-aws-service-signing-name.js +25 -0
  12. package/dist/serve/controller/sim-aws-service-signing-name.js.map +1 -0
  13. package/dist/serve/controller/sim-service-controller.d.ts +29 -2
  14. package/dist/serve/controller/sim-service-controller.d.ts.map +1 -1
  15. package/dist/serve/controller/sim-service-controller.js +26 -1
  16. package/dist/serve/controller/sim-service-controller.js.map +1 -1
  17. package/dist/serve/http/request/sim-aws-received-request.d.ts +29 -0
  18. package/dist/serve/http/request/sim-aws-received-request.d.ts.map +1 -0
  19. package/dist/serve/http/request/sim-aws-received-request.js +53 -0
  20. package/dist/serve/http/request/sim-aws-received-request.js.map +1 -0
  21. package/dist/serve/http/request/sim-aws-request-authenticator.d.ts +31 -0
  22. package/dist/serve/http/request/sim-aws-request-authenticator.d.ts.map +1 -0
  23. package/dist/serve/http/request/sim-aws-request-authenticator.js +45 -0
  24. package/dist/serve/http/request/sim-aws-request-authenticator.js.map +1 -0
  25. package/dist/serve/http/response/sim-aws-auth-failure-response.d.ts +30 -0
  26. package/dist/serve/http/response/sim-aws-auth-failure-response.d.ts.map +1 -0
  27. package/dist/serve/http/response/sim-aws-auth-failure-response.js +51 -0
  28. package/dist/serve/http/response/sim-aws-auth-failure-response.js.map +1 -0
  29. package/dist/serve/http/response/sim-aws-response-hints.d.ts +35 -0
  30. package/dist/serve/http/response/sim-aws-response-hints.d.ts.map +1 -0
  31. package/dist/serve/http/response/sim-aws-response-hints.js +49 -0
  32. package/dist/serve/http/response/sim-aws-response-hints.js.map +1 -0
  33. package/dist/serve/http/sim-aws-http.d.ts +17 -0
  34. package/dist/serve/http/sim-aws-http.d.ts.map +1 -1
  35. package/dist/serve/http/sim-aws-http.js +34 -2
  36. package/dist/serve/http/sim-aws-http.js.map +1 -1
  37. package/dist/serve/http/url/sim-aws-local-url.d.ts +8 -0
  38. package/dist/serve/http/url/sim-aws-local-url.d.ts.map +1 -1
  39. package/dist/serve/http/url/sim-aws-local-url.js +14 -3
  40. package/dist/serve/http/url/sim-aws-local-url.js.map +1 -1
  41. package/dist/serve/index.d.ts +2 -0
  42. package/dist/serve/index.d.ts.map +1 -1
  43. package/dist/serve/index.js +2 -0
  44. package/dist/serve/index.js.map +1 -1
  45. package/dist/service/acm/certificate/sim-acm-certificate.d.ts +7 -0
  46. package/dist/service/acm/certificate/sim-acm-certificate.d.ts.map +1 -1
  47. package/dist/service/acm/certificate/sim-acm-certificate.js +5 -2
  48. package/dist/service/acm/certificate/sim-acm-certificate.js.map +1 -1
  49. package/dist/service/acm/command/request-certificate/request-cert-factory.d.ts +3 -0
  50. package/dist/service/acm/command/request-certificate/request-cert-factory.d.ts.map +1 -1
  51. package/dist/service/acm/command/request-certificate/request-cert-factory.js +4 -1
  52. package/dist/service/acm/command/request-certificate/request-cert-factory.js.map +1 -1
  53. package/dist/service/acm/command/request-certificate/request-certificate.handler.d.ts.map +1 -1
  54. package/dist/service/acm/command/request-certificate/request-certificate.handler.js +1 -0
  55. package/dist/service/acm/command/request-certificate/request-certificate.handler.js.map +1 -1
  56. package/dist/service/aws/caller/sim-aws-caller-resolver.d.ts +2 -1
  57. package/dist/service/aws/caller/sim-aws-caller-resolver.d.ts.map +1 -1
  58. package/dist/service/aws/caller/sim-aws-caller-resolver.js +5 -1
  59. package/dist/service/aws/caller/sim-aws-caller-resolver.js.map +1 -1
  60. package/dist/service/aws/caller/sim-aws-caller.d.ts +16 -1
  61. package/dist/service/aws/caller/sim-aws-caller.d.ts.map +1 -1
  62. package/dist/service/aws/factory/sim-aws-account-service-cache.d.ts +3 -0
  63. package/dist/service/aws/factory/sim-aws-account-service-cache.d.ts.map +1 -1
  64. package/dist/service/aws/factory/sim-aws-account-service-cache.js +13 -0
  65. package/dist/service/aws/factory/sim-aws-account-service-cache.js.map +1 -1
  66. package/dist/service/aws/factory/sim-aws-service-factory.d.ts +35 -0
  67. package/dist/service/aws/factory/sim-aws-service-factory.d.ts.map +1 -1
  68. package/dist/service/aws/factory/sim-aws-service-factory.js +45 -0
  69. package/dist/service/aws/factory/sim-aws-service-factory.js.map +1 -1
  70. package/dist/service/aws/sim-aws-properties.d.ts +36 -0
  71. package/dist/service/aws/sim-aws-properties.d.ts.map +1 -0
  72. package/dist/service/aws/sim-aws-properties.js +2 -0
  73. package/dist/service/aws/sim-aws-properties.js.map +1 -0
  74. package/dist/service/aws/sim-aws-timekeeping.d.ts +33 -0
  75. package/dist/service/aws/sim-aws-timekeeping.d.ts.map +1 -0
  76. package/dist/service/aws/sim-aws-timekeeping.js +49 -0
  77. package/dist/service/aws/sim-aws-timekeeping.js.map +1 -0
  78. package/dist/service/aws/sim-aws.d.ts +67 -7
  79. package/dist/service/aws/sim-aws.d.ts.map +1 -1
  80. package/dist/service/aws/sim-aws.js +81 -2
  81. package/dist/service/aws/sim-aws.js.map +1 -1
  82. package/dist/service/cloudformation/cdk/assets/sim-cdk-asset-bytes.d.ts +11 -0
  83. package/dist/service/cloudformation/cdk/assets/sim-cdk-asset-bytes.d.ts.map +1 -0
  84. package/dist/service/cloudformation/cdk/assets/sim-cdk-asset-bytes.js +57 -0
  85. package/dist/service/cloudformation/cdk/assets/sim-cdk-asset-bytes.js.map +1 -0
  86. package/dist/service/cloudformation/cdk/assets/sim-cdk-asset-publications.d.ts +55 -0
  87. package/dist/service/cloudformation/cdk/assets/sim-cdk-asset-publications.d.ts.map +1 -0
  88. package/dist/service/cloudformation/cdk/assets/sim-cdk-asset-publications.js +86 -0
  89. package/dist/service/cloudformation/cdk/assets/sim-cdk-asset-publications.js.map +1 -0
  90. package/dist/service/cloudformation/cdk/assets/sim-cdk-assets-publisher.d.ts +56 -0
  91. package/dist/service/cloudformation/cdk/assets/sim-cdk-assets-publisher.d.ts.map +1 -0
  92. package/dist/service/cloudformation/cdk/assets/sim-cdk-assets-publisher.js +112 -0
  93. package/dist/service/cloudformation/cdk/assets/sim-cdk-assets-publisher.js.map +1 -0
  94. package/dist/service/cloudformation/cdk/sim-cdk-out-context.d.ts +1 -0
  95. package/dist/service/cloudformation/cdk/sim-cdk-out-context.d.ts.map +1 -1
  96. package/dist/service/cloudformation/cdk/sim-cdk-out-context.js.map +1 -1
  97. package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-function-url-cfn.d.ts +29 -0
  98. package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-function-url-cfn.d.ts.map +1 -0
  99. package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-function-url-cfn.js +34 -0
  100. package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-function-url-cfn.js.map +1 -0
  101. package/dist/service/cloudformation/resource/cfn/sim-cfn-resource-value-adapter.d.ts.map +1 -1
  102. package/dist/service/cloudformation/resource/cfn/sim-cfn-resource-value-adapter.js +8 -0
  103. package/dist/service/cloudformation/resource/cfn/sim-cfn-resource-value-adapter.js.map +1 -1
  104. package/dist/service/cloudformation/stack/sim-cfn-stack.d.ts +5 -0
  105. package/dist/service/cloudformation/stack/sim-cfn-stack.d.ts.map +1 -1
  106. package/dist/service/cloudformation/stack/sim-cfn-stack.js +13 -0
  107. package/dist/service/cloudformation/stack/sim-cfn-stack.js.map +1 -1
  108. package/dist/service/cloudfront/command/create-distribution/create-distribution.handler.d.ts.map +1 -1
  109. package/dist/service/cloudfront/command/create-distribution/create-distribution.handler.js +1 -0
  110. package/dist/service/cloudfront/command/create-distribution/create-distribution.handler.js.map +1 -1
  111. package/dist/service/cloudfront/controller/sim-cloudfront-controller.d.ts +5 -5
  112. package/dist/service/cloudfront/controller/sim-cloudfront-controller.d.ts.map +1 -1
  113. package/dist/service/cloudfront/controller/sim-cloudfront-controller.js +5 -5
  114. package/dist/service/cloudfront/controller/sim-cloudfront-controller.js.map +1 -1
  115. package/dist/service/cloudfront/distribution/sim-cloudfront-distribution.d.ts +6 -0
  116. package/dist/service/cloudfront/distribution/sim-cloudfront-distribution.d.ts.map +1 -1
  117. package/dist/service/cloudfront/distribution/sim-cloudfront-distribution.js +4 -2
  118. package/dist/service/cloudfront/distribution/sim-cloudfront-distribution.js.map +1 -1
  119. package/dist/service/dynamodb/table/sim-dynamodb-table.js +1 -1
  120. package/dist/service/dynamodb/table/sim-dynamodb-table.js.map +1 -1
  121. package/dist/service/iam/authorize/allow/sim-iam-allow-requirement.d.ts +60 -0
  122. package/dist/service/iam/authorize/allow/sim-iam-allow-requirement.d.ts.map +1 -0
  123. package/dist/service/iam/authorize/allow/sim-iam-allow-requirement.js +60 -0
  124. package/dist/service/iam/authorize/allow/sim-iam-allow-requirement.js.map +1 -0
  125. package/dist/service/iam/authorize/allow/sim-iam-allow-statements.d.ts +46 -0
  126. package/dist/service/iam/authorize/allow/sim-iam-allow-statements.d.ts.map +1 -0
  127. package/dist/service/iam/authorize/allow/sim-iam-allow-statements.js +67 -0
  128. package/dist/service/iam/authorize/allow/sim-iam-allow-statements.js.map +1 -0
  129. package/dist/service/iam/authorize/caller-account/sim-iam-caller-account-resolver.d.ts +37 -0
  130. package/dist/service/iam/authorize/caller-account/sim-iam-caller-account-resolver.d.ts.map +1 -0
  131. package/dist/service/iam/authorize/caller-account/sim-iam-caller-account-resolver.js +33 -0
  132. package/dist/service/iam/authorize/caller-account/sim-iam-caller-account-resolver.js.map +1 -0
  133. package/dist/service/iam/authorize/caller-account/sim-iam-caller-account.d.ts +21 -0
  134. package/dist/service/iam/authorize/caller-account/sim-iam-caller-account.d.ts.map +1 -0
  135. package/dist/service/iam/authorize/caller-account/sim-iam-caller-account.js +2 -0
  136. package/dist/service/iam/authorize/caller-account/sim-iam-caller-account.js.map +1 -0
  137. package/dist/service/iam/authorize/caller-account/sim-iam-cross-account-caller.d.ts +34 -0
  138. package/dist/service/iam/authorize/caller-account/sim-iam-cross-account-caller.d.ts.map +1 -0
  139. package/dist/service/iam/authorize/caller-account/sim-iam-cross-account-caller.js +22 -0
  140. package/dist/service/iam/authorize/caller-account/sim-iam-cross-account-caller.js.map +1 -0
  141. package/dist/service/iam/authorize/caller-account/sim-iam-same-account-caller.d.ts +18 -0
  142. package/dist/service/iam/authorize/caller-account/sim-iam-same-account-caller.d.ts.map +1 -0
  143. package/dist/service/iam/authorize/caller-account/sim-iam-same-account-caller.js +16 -0
  144. package/dist/service/iam/authorize/caller-account/sim-iam-same-account-caller.js.map +1 -0
  145. package/dist/service/iam/authorize/context/sim-iam-auth-z-caller-context-builder.d.ts +1 -2
  146. package/dist/service/iam/authorize/context/sim-iam-auth-z-caller-context-builder.d.ts.map +1 -1
  147. package/dist/service/iam/authorize/context/sim-iam-auth-z-context-builder.d.ts +39 -2
  148. package/dist/service/iam/authorize/context/sim-iam-auth-z-context-builder.d.ts.map +1 -1
  149. package/dist/service/iam/authorize/context/sim-iam-auth-z-context-builder.js +42 -8
  150. package/dist/service/iam/authorize/context/sim-iam-auth-z-context-builder.js.map +1 -1
  151. package/dist/service/iam/authorize/context/sim-iam-auth-z-context.d.ts +9 -0
  152. package/dist/service/iam/authorize/context/sim-iam-auth-z-context.d.ts.map +1 -1
  153. package/dist/service/iam/authorize/context/sim-iam-auth-z-context.factory.d.ts.map +1 -1
  154. package/dist/service/iam/authorize/context/sim-iam-auth-z-context.factory.js +2 -0
  155. package/dist/service/iam/authorize/context/sim-iam-auth-z-context.factory.js.map +1 -1
  156. package/dist/service/iam/authorize/identity/sim-iam-account-identity-policies.d.ts +14 -0
  157. package/dist/service/iam/authorize/identity/sim-iam-account-identity-policies.d.ts.map +1 -0
  158. package/dist/service/iam/authorize/identity/sim-iam-account-identity-policies.js +2 -0
  159. package/dist/service/iam/authorize/identity/sim-iam-account-identity-policies.js.map +1 -0
  160. package/dist/service/iam/authorize/sim-iam-account-auth-z.d.ts +24 -1
  161. package/dist/service/iam/authorize/sim-iam-account-auth-z.d.ts.map +1 -1
  162. package/dist/service/iam/authorize/sim-iam-account-auth-z.js +18 -4
  163. package/dist/service/iam/authorize/sim-iam-account-auth-z.js.map +1 -1
  164. package/dist/service/iam/authorize/sim-iam-authorizer.d.ts +11 -2
  165. package/dist/service/iam/authorize/sim-iam-authorizer.d.ts.map +1 -1
  166. package/dist/service/iam/authorize/sim-iam-authorizer.js +14 -1
  167. package/dist/service/iam/authorize/sim-iam-authorizer.js.map +1 -1
  168. package/dist/service/iam/authorize/sim-iam-decision.d.ts +17 -5
  169. package/dist/service/iam/authorize/sim-iam-decision.d.ts.map +1 -1
  170. package/dist/service/iam/authorize/sim-iam-decision.js +27 -13
  171. package/dist/service/iam/authorize/sim-iam-decision.js.map +1 -1
  172. package/dist/service/iam/command/policy/create-policy/create-policy-record-factory.d.ts +1 -0
  173. package/dist/service/iam/command/policy/create-policy/create-policy-record-factory.d.ts.map +1 -1
  174. package/dist/service/iam/command/policy/create-policy/create-policy-record-factory.js +1 -2
  175. package/dist/service/iam/command/policy/create-policy/create-policy-record-factory.js.map +1 -1
  176. package/dist/service/iam/command/policy/create-policy/create-policy.handler.d.ts.map +1 -1
  177. package/dist/service/iam/command/policy/create-policy/create-policy.handler.js +1 -0
  178. package/dist/service/iam/command/policy/create-policy/create-policy.handler.js.map +1 -1
  179. package/dist/service/iam/command/role/create-role/create-role-record-factory.d.ts +1 -0
  180. package/dist/service/iam/command/role/create-role/create-role-record-factory.d.ts.map +1 -1
  181. package/dist/service/iam/command/role/create-role/create-role-record-factory.js +1 -2
  182. package/dist/service/iam/command/role/create-role/create-role-record-factory.js.map +1 -1
  183. package/dist/service/iam/command/role/create-role/create-role.handler.d.ts.map +1 -1
  184. package/dist/service/iam/command/role/create-role/create-role.handler.js +1 -0
  185. package/dist/service/iam/command/role/create-role/create-role.handler.js.map +1 -1
  186. package/dist/service/iam/command/sim-iam-command-handlers.d.ts +41 -0
  187. package/dist/service/iam/command/sim-iam-command-handlers.d.ts.map +1 -0
  188. package/dist/service/iam/command/sim-iam-command-handlers.js +42 -0
  189. package/dist/service/iam/command/sim-iam-command-handlers.js.map +1 -0
  190. package/dist/service/iam/command/user/create-access-key/create-access-key.handler.d.ts.map +1 -1
  191. package/dist/service/iam/command/user/create-access-key/create-access-key.handler.js +1 -0
  192. package/dist/service/iam/command/user/create-access-key/create-access-key.handler.js.map +1 -1
  193. package/dist/service/iam/command/user/create-user/create-user-record-factory.d.ts +1 -0
  194. package/dist/service/iam/command/user/create-user/create-user-record-factory.d.ts.map +1 -1
  195. package/dist/service/iam/command/user/create-user/create-user-record-factory.js +1 -1
  196. package/dist/service/iam/command/user/create-user/create-user-record-factory.js.map +1 -1
  197. package/dist/service/iam/command/user/create-user/create-user.handler.d.ts.map +1 -1
  198. package/dist/service/iam/command/user/create-user/create-user.handler.js +1 -0
  199. package/dist/service/iam/command/user/create-user/create-user.handler.js.map +1 -1
  200. package/dist/service/iam/credential/sim-iam-access-key-checks.d.ts +30 -0
  201. package/dist/service/iam/credential/sim-iam-access-key-checks.d.ts.map +1 -0
  202. package/dist/service/iam/credential/sim-iam-access-key-checks.js +67 -0
  203. package/dist/service/iam/credential/sim-iam-access-key-checks.js.map +1 -0
  204. package/dist/service/iam/credential/sim-iam-access-key.d.ts +6 -1
  205. package/dist/service/iam/credential/sim-iam-access-key.d.ts.map +1 -1
  206. package/dist/service/iam/credential/sim-iam-access-key.js +1 -1
  207. package/dist/service/iam/credential/sim-iam-access-key.js.map +1 -1
  208. package/dist/service/iam/credential/sim-iam-account-signing-credentials.d.ts +21 -0
  209. package/dist/service/iam/credential/sim-iam-account-signing-credentials.d.ts.map +1 -0
  210. package/dist/service/iam/credential/sim-iam-account-signing-credentials.js +28 -0
  211. package/dist/service/iam/credential/sim-iam-account-signing-credentials.js.map +1 -0
  212. package/dist/service/iam/credential/sim-iam-credential-registry.d.ts +28 -0
  213. package/dist/service/iam/credential/sim-iam-credential-registry.d.ts.map +1 -1
  214. package/dist/service/iam/credential/sim-iam-credential-registry.js +32 -43
  215. package/dist/service/iam/credential/sim-iam-credential-registry.js.map +1 -1
  216. package/dist/service/iam/credential/sim-iam-signing-credential.d.ts +32 -0
  217. package/dist/service/iam/credential/sim-iam-signing-credential.d.ts.map +1 -0
  218. package/dist/service/iam/credential/sim-iam-signing-credential.js +2 -0
  219. package/dist/service/iam/credential/sim-iam-signing-credential.js.map +1 -0
  220. package/dist/service/iam/index.d.ts +6 -0
  221. package/dist/service/iam/index.d.ts.map +1 -1
  222. package/dist/service/iam/index.js +4 -0
  223. package/dist/service/iam/index.js.map +1 -1
  224. package/dist/service/iam/registry/sim-iam-access-key-registry.d.ts +39 -0
  225. package/dist/service/iam/registry/sim-iam-access-key-registry.d.ts.map +1 -0
  226. package/dist/service/iam/registry/sim-iam-access-key-registry.js +47 -0
  227. package/dist/service/iam/registry/sim-iam-access-key-registry.js.map +1 -0
  228. package/dist/service/iam/registry/sim-iam-account-resolver.d.ts +8 -0
  229. package/dist/service/iam/registry/sim-iam-account-resolver.d.ts.map +1 -1
  230. package/dist/service/iam/registry/sim-iam-global-credential-resolver.d.ts +25 -0
  231. package/dist/service/iam/registry/sim-iam-global-credential-resolver.d.ts.map +1 -0
  232. package/dist/service/iam/registry/sim-iam-global-credential-resolver.js +31 -0
  233. package/dist/service/iam/registry/sim-iam-global-credential-resolver.js.map +1 -0
  234. package/dist/service/iam/registry/sim-iam-registry.d.ts +4 -0
  235. package/dist/service/iam/registry/sim-iam-registry.d.ts.map +1 -1
  236. package/dist/service/iam/registry/sim-iam-registry.js +7 -1
  237. package/dist/service/iam/registry/sim-iam-registry.js.map +1 -1
  238. package/dist/service/iam/request/error/sim-aws-request-auth.error.d.ts +27 -0
  239. package/dist/service/iam/request/error/sim-aws-request-auth.error.d.ts.map +1 -0
  240. package/dist/service/iam/request/error/sim-aws-request-auth.error.js +25 -0
  241. package/dist/service/iam/request/error/sim-aws-request-auth.error.js.map +1 -0
  242. package/dist/service/iam/request/sim-aws-caller-header.d.ts +28 -0
  243. package/dist/service/iam/request/sim-aws-caller-header.d.ts.map +1 -0
  244. package/dist/service/iam/request/sim-aws-caller-header.js +62 -0
  245. package/dist/service/iam/request/sim-aws-caller-header.js.map +1 -0
  246. package/dist/service/iam/request/sim-aws-request-caller-resolver.d.ts +49 -0
  247. package/dist/service/iam/request/sim-aws-request-caller-resolver.d.ts.map +1 -0
  248. package/dist/service/iam/request/sim-aws-request-caller-resolver.js +68 -0
  249. package/dist/service/iam/request/sim-aws-request-caller-resolver.js.map +1 -0
  250. package/dist/service/iam/request/sim-aws-request-caller.d.ts +50 -0
  251. package/dist/service/iam/request/sim-aws-request-caller.d.ts.map +1 -0
  252. package/dist/service/iam/request/sim-aws-request-caller.js +55 -0
  253. package/dist/service/iam/request/sim-aws-request-caller.js.map +1 -0
  254. package/dist/service/iam/sigv4/canonical/sigv4-byte-order.d.ts +9 -0
  255. package/dist/service/iam/sigv4/canonical/sigv4-byte-order.d.ts.map +1 -0
  256. package/dist/service/iam/sigv4/canonical/sigv4-byte-order.js +14 -0
  257. package/dist/service/iam/sigv4/canonical/sigv4-byte-order.js.map +1 -0
  258. package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-headers.d.ts +22 -0
  259. package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-headers.d.ts.map +1 -0
  260. package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-headers.js +48 -0
  261. package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-headers.js.map +1 -0
  262. package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-path.d.ts +14 -0
  263. package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-path.d.ts.map +1 -0
  264. package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-path.js +31 -0
  265. package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-path.js.map +1 -0
  266. package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-query.d.ts +19 -0
  267. package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-query.d.ts.map +1 -0
  268. package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-query.js +78 -0
  269. package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-query.js.map +1 -0
  270. package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-request.d.ts +20 -0
  271. package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-request.d.ts.map +1 -0
  272. package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-request.js +36 -0
  273. package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-request.js.map +1 -0
  274. package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-payload-hash.d.ts +19 -0
  275. package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-payload-hash.d.ts.map +1 -0
  276. package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-payload-hash.js +52 -0
  277. package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-payload-hash.js.map +1 -0
  278. package/dist/service/iam/sigv4/error/sim-iam-sigv4.error.d.ts +60 -0
  279. package/dist/service/iam/sigv4/error/sim-iam-sigv4.error.d.ts.map +1 -0
  280. package/dist/service/iam/sigv4/error/sim-iam-sigv4.error.js +68 -0
  281. package/dist/service/iam/sigv4/error/sim-iam-sigv4.error.js.map +1 -0
  282. package/dist/service/iam/sigv4/sigv4-uri-escape.d.ts +8 -0
  283. package/dist/service/iam/sigv4/sigv4-uri-escape.d.ts.map +1 -0
  284. package/dist/service/iam/sigv4/sigv4-uri-escape.js +10 -0
  285. package/dist/service/iam/sigv4/sigv4-uri-escape.js.map +1 -0
  286. package/dist/service/iam/sigv4/sim-iam-sigv4-authorization.d.ts +33 -0
  287. package/dist/service/iam/sigv4/sim-iam-sigv4-authorization.d.ts.map +1 -0
  288. package/dist/service/iam/sigv4/sim-iam-sigv4-authorization.js +70 -0
  289. package/dist/service/iam/sigv4/sim-iam-sigv4-authorization.js.map +1 -0
  290. package/dist/service/iam/sigv4/sim-iam-sigv4-credential-failure.d.ts +11 -0
  291. package/dist/service/iam/sigv4/sim-iam-sigv4-credential-failure.d.ts.map +1 -0
  292. package/dist/service/iam/sigv4/sim-iam-sigv4-credential-failure.js +45 -0
  293. package/dist/service/iam/sigv4/sim-iam-sigv4-credential-failure.js.map +1 -0
  294. package/dist/service/iam/sigv4/sim-iam-sigv4-credential-scope.d.ts +30 -0
  295. package/dist/service/iam/sigv4/sim-iam-sigv4-credential-scope.d.ts.map +1 -0
  296. package/dist/service/iam/sigv4/sim-iam-sigv4-credential-scope.js +52 -0
  297. package/dist/service/iam/sigv4/sim-iam-sigv4-credential-scope.js.map +1 -0
  298. package/dist/service/iam/sigv4/sim-iam-sigv4-expected-scope.d.ts +39 -0
  299. package/dist/service/iam/sigv4/sim-iam-sigv4-expected-scope.d.ts.map +1 -0
  300. package/dist/service/iam/sigv4/sim-iam-sigv4-expected-scope.js +52 -0
  301. package/dist/service/iam/sigv4/sim-iam-sigv4-expected-scope.js.map +1 -0
  302. package/dist/service/iam/sigv4/sim-iam-sigv4-request-date.d.ts +16 -0
  303. package/dist/service/iam/sigv4/sim-iam-sigv4-request-date.d.ts.map +1 -0
  304. package/dist/service/iam/sigv4/sim-iam-sigv4-request-date.js +31 -0
  305. package/dist/service/iam/sigv4/sim-iam-sigv4-request-date.js.map +1 -0
  306. package/dist/service/iam/sigv4/sim-iam-sigv4-signature-check.d.ts +18 -0
  307. package/dist/service/iam/sigv4/sim-iam-sigv4-signature-check.d.ts.map +1 -0
  308. package/dist/service/iam/sigv4/sim-iam-sigv4-signature-check.js +25 -0
  309. package/dist/service/iam/sigv4/sim-iam-sigv4-signature-check.js.map +1 -0
  310. package/dist/service/iam/sigv4/sim-iam-sigv4-signature-match.d.ts +9 -0
  311. package/dist/service/iam/sigv4/sim-iam-sigv4-signature-match.d.ts.map +1 -0
  312. package/dist/service/iam/sigv4/sim-iam-sigv4-signature-match.js +26 -0
  313. package/dist/service/iam/sigv4/sim-iam-sigv4-signature-match.js.map +1 -0
  314. package/dist/service/iam/sigv4/sim-iam-sigv4-signed-request.d.ts +19 -0
  315. package/dist/service/iam/sigv4/sim-iam-sigv4-signed-request.d.ts.map +1 -0
  316. package/dist/service/iam/sigv4/sim-iam-sigv4-signed-request.js +12 -0
  317. package/dist/service/iam/sigv4/sim-iam-sigv4-signed-request.js.map +1 -0
  318. package/dist/service/iam/sigv4/sim-iam-sigv4-signing-credentials.d.ts +13 -0
  319. package/dist/service/iam/sigv4/sim-iam-sigv4-signing-credentials.d.ts.map +1 -0
  320. package/dist/service/iam/sigv4/sim-iam-sigv4-signing-credentials.js +18 -0
  321. package/dist/service/iam/sigv4/sim-iam-sigv4-signing-credentials.js.map +1 -0
  322. package/dist/service/iam/sigv4/sim-iam-sigv4-signing-key.d.ts +26 -0
  323. package/dist/service/iam/sigv4/sim-iam-sigv4-signing-key.d.ts.map +1 -0
  324. package/dist/service/iam/sigv4/sim-iam-sigv4-signing-key.js +40 -0
  325. package/dist/service/iam/sigv4/sim-iam-sigv4-signing-key.js.map +1 -0
  326. package/dist/service/iam/sigv4/sim-iam-sigv4-verifier.d.ts +32 -0
  327. package/dist/service/iam/sigv4/sim-iam-sigv4-verifier.d.ts.map +1 -0
  328. package/dist/service/iam/sigv4/sim-iam-sigv4-verifier.js +45 -0
  329. package/dist/service/iam/sigv4/sim-iam-sigv4-verifier.js.map +1 -0
  330. package/dist/service/iam/sigv4/sim-iam-sigv4-verify-options.d.ts +17 -0
  331. package/dist/service/iam/sigv4/sim-iam-sigv4-verify-options.d.ts.map +1 -0
  332. package/dist/service/iam/sigv4/sim-iam-sigv4-verify-options.js +2 -0
  333. package/dist/service/iam/sigv4/sim-iam-sigv4-verify-options.js.map +1 -0
  334. package/dist/service/iam/sim-iam-account-parts.d.ts +58 -0
  335. package/dist/service/iam/sim-iam-account-parts.d.ts.map +1 -0
  336. package/dist/service/iam/sim-iam-account-parts.js +72 -0
  337. package/dist/service/iam/sim-iam-account-parts.js.map +1 -0
  338. package/dist/service/iam/sim-iam.d.ts +28 -21
  339. package/dist/service/iam/sim-iam.d.ts.map +1 -1
  340. package/dist/service/iam/sim-iam.js +42 -67
  341. package/dist/service/iam/sim-iam.js.map +1 -1
  342. package/dist/service/lambda/cfn/function/sim-cfn-lambda-cdk-assets-skip.d.ts +8 -6
  343. package/dist/service/lambda/cfn/function/sim-cfn-lambda-cdk-assets-skip.d.ts.map +1 -1
  344. package/dist/service/lambda/cfn/function/sim-cfn-lambda-cdk-assets-skip.js +12 -7
  345. package/dist/service/lambda/cfn/function/sim-cfn-lambda-cdk-assets-skip.js.map +1 -1
  346. package/dist/service/lambda/cfn/function/sim-cfn-lambda-code-input.d.ts +9 -1
  347. package/dist/service/lambda/cfn/function/sim-cfn-lambda-code-input.d.ts.map +1 -1
  348. package/dist/service/lambda/cfn/function/sim-cfn-lambda-code-input.js +5 -2
  349. package/dist/service/lambda/cfn/function/sim-cfn-lambda-code-input.js.map +1 -1
  350. package/dist/service/lambda/cfn/function/sim-cfn-lambda-function-creator.d.ts +1 -0
  351. package/dist/service/lambda/cfn/function/sim-cfn-lambda-function-creator.d.ts.map +1 -1
  352. package/dist/service/lambda/cfn/function/sim-cfn-lambda-function-creator.js +7 -1
  353. package/dist/service/lambda/cfn/function/sim-cfn-lambda-function-creator.js.map +1 -1
  354. package/dist/service/lambda/cfn/function/sim-cfn-lambda-property-parser.d.ts +6 -2
  355. package/dist/service/lambda/cfn/function/sim-cfn-lambda-property-parser.d.ts.map +1 -1
  356. package/dist/service/lambda/cfn/function/sim-cfn-lambda-property-parser.js +16 -3
  357. package/dist/service/lambda/cfn/function/sim-cfn-lambda-property-parser.js.map +1 -1
  358. package/dist/service/lambda/cfn/function/sim-cfn-lambda-runtime-skip.d.ts +29 -0
  359. package/dist/service/lambda/cfn/function/sim-cfn-lambda-runtime-skip.d.ts.map +1 -0
  360. package/dist/service/lambda/cfn/function/sim-cfn-lambda-runtime-skip.js +43 -0
  361. package/dist/service/lambda/cfn/function/sim-cfn-lambda-runtime-skip.js.map +1 -0
  362. package/dist/service/lambda/cfn/function/sim-cfn-lambda-target-function.d.ts +12 -0
  363. package/dist/service/lambda/cfn/function/sim-cfn-lambda-target-function.d.ts.map +1 -0
  364. package/dist/service/lambda/cfn/function/sim-cfn-lambda-target-function.js +20 -0
  365. package/dist/service/lambda/cfn/function/sim-cfn-lambda-target-function.js.map +1 -0
  366. package/dist/service/lambda/cfn/permission/sim-cfn-lambda-permission-creator.d.ts +31 -0
  367. package/dist/service/lambda/cfn/permission/sim-cfn-lambda-permission-creator.d.ts.map +1 -0
  368. package/dist/service/lambda/cfn/permission/sim-cfn-lambda-permission-creator.js +48 -0
  369. package/dist/service/lambda/cfn/permission/sim-cfn-lambda-permission-creator.js.map +1 -0
  370. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.d.ts +2 -0
  371. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.d.ts.map +1 -1
  372. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.js +12 -0
  373. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.js.map +1 -1
  374. package/dist/service/lambda/cfn/url/sim-cfn-lambda-url-creator.d.ts +25 -0
  375. package/dist/service/lambda/cfn/url/sim-cfn-lambda-url-creator.d.ts.map +1 -0
  376. package/dist/service/lambda/cfn/url/sim-cfn-lambda-url-creator.js +35 -0
  377. package/dist/service/lambda/cfn/url/sim-cfn-lambda-url-creator.js.map +1 -0
  378. package/dist/service/lambda/command/add-permission/add-permission.command.d.ts +32 -0
  379. package/dist/service/lambda/command/add-permission/add-permission.command.d.ts.map +1 -0
  380. package/dist/service/lambda/command/add-permission/add-permission.command.js +2 -0
  381. package/dist/service/lambda/command/add-permission/add-permission.command.js.map +1 -0
  382. package/dist/service/lambda/command/add-permission/add-permission.handler.d.ts +31 -0
  383. package/dist/service/lambda/command/add-permission/add-permission.handler.d.ts.map +1 -0
  384. package/dist/service/lambda/command/add-permission/add-permission.handler.js +52 -0
  385. package/dist/service/lambda/command/add-permission/add-permission.handler.js.map +1 -0
  386. package/dist/service/lambda/command/authorize/sim-lambda-resource-policies.d.ts +13 -0
  387. package/dist/service/lambda/command/authorize/sim-lambda-resource-policies.d.ts.map +1 -0
  388. package/dist/service/lambda/command/authorize/sim-lambda-resource-policies.js +26 -0
  389. package/dist/service/lambda/command/authorize/sim-lambda-resource-policies.js.map +1 -0
  390. package/dist/service/lambda/command/create-function/create-function.handler.d.ts.map +1 -1
  391. package/dist/service/lambda/command/create-function/create-function.handler.js +1 -0
  392. package/dist/service/lambda/command/create-function/create-function.handler.js.map +1 -1
  393. package/dist/service/lambda/command/create-function-url-config/create-function-url-config.command.d.ts +29 -0
  394. package/dist/service/lambda/command/create-function-url-config/create-function-url-config.command.d.ts.map +1 -0
  395. package/dist/service/lambda/command/create-function-url-config/create-function-url-config.command.js +5 -0
  396. package/dist/service/lambda/command/create-function-url-config/create-function-url-config.command.js.map +1 -0
  397. package/dist/service/lambda/command/create-function-url-config/create-function-url-config.handler.d.ts +35 -0
  398. package/dist/service/lambda/command/create-function-url-config/create-function-url-config.handler.d.ts.map +1 -0
  399. package/dist/service/lambda/command/create-function-url-config/create-function-url-config.handler.js +47 -0
  400. package/dist/service/lambda/command/create-function-url-config/create-function-url-config.handler.js.map +1 -0
  401. package/dist/service/lambda/command/delete-function-url-config/delete-function-url-config.command.d.ts +26 -0
  402. package/dist/service/lambda/command/delete-function-url-config/delete-function-url-config.command.d.ts.map +1 -0
  403. package/dist/service/lambda/command/delete-function-url-config/delete-function-url-config.command.js +5 -0
  404. package/dist/service/lambda/command/delete-function-url-config/delete-function-url-config.command.js.map +1 -0
  405. package/dist/service/lambda/command/delete-function-url-config/delete-function-url-config.handler.d.ts +34 -0
  406. package/dist/service/lambda/command/delete-function-url-config/delete-function-url-config.handler.d.ts.map +1 -0
  407. package/dist/service/lambda/command/delete-function-url-config/delete-function-url-config.handler.js +38 -0
  408. package/dist/service/lambda/command/delete-function-url-config/delete-function-url-config.handler.js.map +1 -0
  409. package/dist/service/lambda/command/function/sim-lambda-function-commands.d.ts +50 -0
  410. package/dist/service/lambda/command/function/sim-lambda-function-commands.d.ts.map +1 -0
  411. package/dist/service/lambda/command/function/sim-lambda-function-commands.js +35 -0
  412. package/dist/service/lambda/command/function/sim-lambda-function-commands.js.map +1 -0
  413. package/dist/service/lambda/command/function-url/function-url-authorizer.d.ts +29 -0
  414. package/dist/service/lambda/command/function-url/function-url-authorizer.d.ts.map +1 -0
  415. package/dist/service/lambda/command/function-url/function-url-authorizer.js +39 -0
  416. package/dist/service/lambda/command/function-url/function-url-authorizer.js.map +1 -0
  417. package/dist/service/lambda/command/function-url/function-url-input.d.ts +24 -0
  418. package/dist/service/lambda/command/function-url/function-url-input.d.ts.map +1 -0
  419. package/dist/service/lambda/command/function-url/function-url-input.js +49 -0
  420. package/dist/service/lambda/command/function-url/function-url-input.js.map +1 -0
  421. package/dist/service/lambda/command/function-url/sim-lambda-function-url-commands.d.ts +52 -0
  422. package/dist/service/lambda/command/function-url/sim-lambda-function-url-commands.d.ts.map +1 -0
  423. package/dist/service/lambda/command/function-url/sim-lambda-function-url-commands.js +49 -0
  424. package/dist/service/lambda/command/function-url/sim-lambda-function-url-commands.js.map +1 -0
  425. package/dist/service/lambda/command/get-function-url-config/get-function-url-config.command.d.ts +24 -0
  426. package/dist/service/lambda/command/get-function-url-config/get-function-url-config.command.d.ts.map +1 -0
  427. package/dist/service/lambda/command/get-function-url-config/get-function-url-config.command.js +5 -0
  428. package/dist/service/lambda/command/get-function-url-config/get-function-url-config.command.js.map +1 -0
  429. package/dist/service/lambda/command/get-function-url-config/get-function-url-config.handler.d.ts +34 -0
  430. package/dist/service/lambda/command/get-function-url-config/get-function-url-config.handler.d.ts.map +1 -0
  431. package/dist/service/lambda/command/get-function-url-config/get-function-url-config.handler.js +41 -0
  432. package/dist/service/lambda/command/get-function-url-config/get-function-url-config.handler.js.map +1 -0
  433. package/dist/service/lambda/command/get-policy/get-policy.command.d.ts +22 -0
  434. package/dist/service/lambda/command/get-policy/get-policy.command.d.ts.map +1 -0
  435. package/dist/service/lambda/command/get-policy/get-policy.command.js +2 -0
  436. package/dist/service/lambda/command/get-policy/get-policy.command.js.map +1 -0
  437. package/dist/service/lambda/command/get-policy/get-policy.handler.d.ts +35 -0
  438. package/dist/service/lambda/command/get-policy/get-policy.handler.d.ts.map +1 -0
  439. package/dist/service/lambda/command/get-policy/get-policy.handler.js +45 -0
  440. package/dist/service/lambda/command/get-policy/get-policy.handler.js.map +1 -0
  441. package/dist/service/lambda/command/invoke/invoke-authorizer.d.ts +8 -2
  442. package/dist/service/lambda/command/invoke/invoke-authorizer.d.ts.map +1 -1
  443. package/dist/service/lambda/command/invoke/invoke-authorizer.js +9 -2
  444. package/dist/service/lambda/command/invoke/invoke-authorizer.js.map +1 -1
  445. package/dist/service/lambda/command/invoke/invoke.handler.d.ts.map +1 -1
  446. package/dist/service/lambda/command/invoke/invoke.handler.js +4 -1
  447. package/dist/service/lambda/command/invoke/invoke.handler.js.map +1 -1
  448. package/dist/service/lambda/command/list-function-url-configs/list-function-url-configs.command.d.ts +25 -0
  449. package/dist/service/lambda/command/list-function-url-configs/list-function-url-configs.command.d.ts.map +1 -0
  450. package/dist/service/lambda/command/list-function-url-configs/list-function-url-configs.command.js +5 -0
  451. package/dist/service/lambda/command/list-function-url-configs/list-function-url-configs.command.js.map +1 -0
  452. package/dist/service/lambda/command/list-function-url-configs/list-function-url-configs.handler.d.ts +37 -0
  453. package/dist/service/lambda/command/list-function-url-configs/list-function-url-configs.handler.d.ts.map +1 -0
  454. package/dist/service/lambda/command/list-function-url-configs/list-function-url-configs.handler.js +46 -0
  455. package/dist/service/lambda/command/list-function-url-configs/list-function-url-configs.handler.js.map +1 -0
  456. package/dist/service/lambda/command/permission/sim-lambda-permission-commands.d.ts +40 -0
  457. package/dist/service/lambda/command/permission/sim-lambda-permission-commands.d.ts.map +1 -0
  458. package/dist/service/lambda/command/permission/sim-lambda-permission-commands.js +35 -0
  459. package/dist/service/lambda/command/permission/sim-lambda-permission-commands.js.map +1 -0
  460. package/dist/service/lambda/command/remove-permission/remove-permission.command.d.ts +21 -0
  461. package/dist/service/lambda/command/remove-permission/remove-permission.command.d.ts.map +1 -0
  462. package/dist/service/lambda/command/remove-permission/remove-permission.command.js +2 -0
  463. package/dist/service/lambda/command/remove-permission/remove-permission.command.js.map +1 -0
  464. package/dist/service/lambda/command/remove-permission/remove-permission.handler.d.ts +31 -0
  465. package/dist/service/lambda/command/remove-permission/remove-permission.handler.d.ts.map +1 -0
  466. package/dist/service/lambda/command/remove-permission/remove-permission.handler.js +36 -0
  467. package/dist/service/lambda/command/remove-permission/remove-permission.handler.js.map +1 -0
  468. package/dist/service/lambda/command/sim-lambda-command.types.d.ts +19 -0
  469. package/dist/service/lambda/command/sim-lambda-command.types.d.ts.map +1 -0
  470. package/dist/service/lambda/command/sim-lambda-command.types.js +9 -0
  471. package/dist/service/lambda/command/sim-lambda-command.types.js.map +1 -0
  472. package/dist/service/lambda/command/update-function-url-config/update-function-url-config.command.d.ts +29 -0
  473. package/dist/service/lambda/command/update-function-url-config/update-function-url-config.command.d.ts.map +1 -0
  474. package/dist/service/lambda/command/update-function-url-config/update-function-url-config.command.js +5 -0
  475. package/dist/service/lambda/command/update-function-url-config/update-function-url-config.command.js.map +1 -0
  476. package/dist/service/lambda/command/update-function-url-config/update-function-url-config.handler.d.ts +35 -0
  477. package/dist/service/lambda/command/update-function-url-config/update-function-url-config.handler.d.ts.map +1 -0
  478. package/dist/service/lambda/command/update-function-url-config/update-function-url-config.handler.js +48 -0
  479. package/dist/service/lambda/command/update-function-url-config/update-function-url-config.handler.js.map +1 -0
  480. package/dist/service/lambda/function/invoke/sim-lambda-invoke-context-builder.d.ts +7 -0
  481. package/dist/service/lambda/function/invoke/sim-lambda-invoke-context-builder.d.ts.map +1 -1
  482. package/dist/service/lambda/function/invoke/sim-lambda-invoke-context-builder.js +4 -3
  483. package/dist/service/lambda/function/invoke/sim-lambda-invoke-context-builder.js.map +1 -1
  484. package/dist/service/lambda/function/policy/sim-lambda-function-policy.d.ts +47 -0
  485. package/dist/service/lambda/function/policy/sim-lambda-function-policy.d.ts.map +1 -0
  486. package/dist/service/lambda/function/policy/sim-lambda-function-policy.js +79 -0
  487. package/dist/service/lambda/function/policy/sim-lambda-function-policy.js.map +1 -0
  488. package/dist/service/lambda/function/policy/sim-lambda-permission-principal.d.ts +11 -0
  489. package/dist/service/lambda/function/policy/sim-lambda-permission-principal.d.ts.map +1 -0
  490. package/dist/service/lambda/function/policy/sim-lambda-permission-principal.js +22 -0
  491. package/dist/service/lambda/function/policy/sim-lambda-permission-principal.js.map +1 -0
  492. package/dist/service/lambda/function/policy/sim-lambda-permission.d.ts +66 -0
  493. package/dist/service/lambda/function/policy/sim-lambda-permission.d.ts.map +1 -0
  494. package/dist/service/lambda/function/policy/sim-lambda-permission.js +101 -0
  495. package/dist/service/lambda/function/policy/sim-lambda-permission.js.map +1 -0
  496. package/dist/service/lambda/function/sim-lambda-function.d.ts +18 -0
  497. package/dist/service/lambda/function/sim-lambda-function.d.ts.map +1 -1
  498. package/dist/service/lambda/function/sim-lambda-function.js +15 -1
  499. package/dist/service/lambda/function/sim-lambda-function.js.map +1 -1
  500. package/dist/service/lambda/function/url/sim-lambda-function-lookup.d.ts +30 -0
  501. package/dist/service/lambda/function/url/sim-lambda-function-lookup.d.ts.map +1 -0
  502. package/dist/service/lambda/function/url/sim-lambda-function-lookup.js +36 -0
  503. package/dist/service/lambda/function/url/sim-lambda-function-lookup.js.map +1 -0
  504. package/dist/service/lambda/function/url/sim-lambda-function-url-factory.d.ts +37 -0
  505. package/dist/service/lambda/function/url/sim-lambda-function-url-factory.d.ts.map +1 -0
  506. package/dist/service/lambda/function/url/sim-lambda-function-url-factory.js +42 -0
  507. package/dist/service/lambda/function/url/sim-lambda-function-url-factory.js.map +1 -0
  508. package/dist/service/lambda/function/url/sim-lambda-function-url-host.d.ts +30 -0
  509. package/dist/service/lambda/function/url/sim-lambda-function-url-host.d.ts.map +1 -0
  510. package/dist/service/lambda/function/url/sim-lambda-function-url-host.js +29 -0
  511. package/dist/service/lambda/function/url/sim-lambda-function-url-host.js.map +1 -0
  512. package/dist/service/lambda/function/url/sim-lambda-function-url-store.d.ts +45 -0
  513. package/dist/service/lambda/function/url/sim-lambda-function-url-store.d.ts.map +1 -0
  514. package/dist/service/lambda/function/url/sim-lambda-function-url-store.js +72 -0
  515. package/dist/service/lambda/function/url/sim-lambda-function-url-store.js.map +1 -0
  516. package/dist/service/lambda/function/url/sim-lambda-function-url.d.ts +103 -0
  517. package/dist/service/lambda/function/url/sim-lambda-function-url.d.ts.map +1 -0
  518. package/dist/service/lambda/function/url/sim-lambda-function-url.js +92 -0
  519. package/dist/service/lambda/function/url/sim-lambda-function-url.js.map +1 -0
  520. package/dist/service/lambda/index.d.ts +1 -0
  521. package/dist/service/lambda/index.d.ts.map +1 -1
  522. package/dist/service/lambda/registry/sim-lambda-url-registry.d.ts +31 -0
  523. package/dist/service/lambda/registry/sim-lambda-url-registry.d.ts.map +1 -0
  524. package/dist/service/lambda/registry/sim-lambda-url-registry.js +43 -0
  525. package/dist/service/lambda/registry/sim-lambda-url-registry.js.map +1 -0
  526. package/dist/service/lambda/sdk/sim-lambda-sdk-command-router.d.ts.map +1 -1
  527. package/dist/service/lambda/sdk/sim-lambda-sdk-command-router.js +32 -0
  528. package/dist/service/lambda/sdk/sim-lambda-sdk-command-router.js.map +1 -1
  529. package/dist/service/lambda/serve/auth/sim-lambda-url-authorizer.d.ts +46 -0
  530. package/dist/service/lambda/serve/auth/sim-lambda-url-authorizer.d.ts.map +1 -0
  531. package/dist/service/lambda/serve/auth/sim-lambda-url-authorizer.js +47 -0
  532. package/dist/service/lambda/serve/auth/sim-lambda-url-authorizer.js.map +1 -0
  533. package/dist/service/lambda/serve/event/sim-lambda-url-body-encoding.d.ts +25 -0
  534. package/dist/service/lambda/serve/event/sim-lambda-url-body-encoding.d.ts.map +1 -0
  535. package/dist/service/lambda/serve/event/sim-lambda-url-body-encoding.js +53 -0
  536. package/dist/service/lambda/serve/event/sim-lambda-url-body-encoding.js.map +1 -0
  537. package/dist/service/lambda/serve/event/sim-lambda-url-event-builder.d.ts +36 -0
  538. package/dist/service/lambda/serve/event/sim-lambda-url-event-builder.d.ts.map +1 -0
  539. package/dist/service/lambda/serve/event/sim-lambda-url-event-builder.js +61 -0
  540. package/dist/service/lambda/serve/event/sim-lambda-url-event-builder.js.map +1 -0
  541. package/dist/service/lambda/serve/event/sim-lambda-url-event-time.d.ts +9 -0
  542. package/dist/service/lambda/serve/event/sim-lambda-url-event-time.d.ts.map +1 -0
  543. package/dist/service/lambda/serve/event/sim-lambda-url-event-time.js +38 -0
  544. package/dist/service/lambda/serve/event/sim-lambda-url-event-time.js.map +1 -0
  545. package/dist/service/lambda/serve/event/sim-lambda-url-event.type.d.ts +103 -0
  546. package/dist/service/lambda/serve/event/sim-lambda-url-event.type.d.ts.map +1 -0
  547. package/dist/service/lambda/serve/event/sim-lambda-url-event.type.js +2 -0
  548. package/dist/service/lambda/serve/event/sim-lambda-url-event.type.js.map +1 -0
  549. package/dist/service/lambda/serve/event/sim-lambda-url-iam-authorizer.d.ts +30 -0
  550. package/dist/service/lambda/serve/event/sim-lambda-url-iam-authorizer.d.ts.map +1 -0
  551. package/dist/service/lambda/serve/event/sim-lambda-url-iam-authorizer.js +55 -0
  552. package/dist/service/lambda/serve/event/sim-lambda-url-iam-authorizer.js.map +1 -0
  553. package/dist/service/lambda/serve/event/sim-lambda-url-request-context.d.ts +29 -0
  554. package/dist/service/lambda/serve/event/sim-lambda-url-request-context.d.ts.map +1 -0
  555. package/dist/service/lambda/serve/event/sim-lambda-url-request-context.js +54 -0
  556. package/dist/service/lambda/serve/event/sim-lambda-url-request-context.js.map +1 -0
  557. package/dist/service/lambda/serve/event/sim-lambda-url-request-parts.d.ts +26 -0
  558. package/dist/service/lambda/serve/event/sim-lambda-url-request-parts.d.ts.map +1 -0
  559. package/dist/service/lambda/serve/event/sim-lambda-url-request-parts.js +50 -0
  560. package/dist/service/lambda/serve/event/sim-lambda-url-request-parts.js.map +1 -0
  561. package/dist/service/lambda/serve/response/sim-lambda-url-error-response.d.ts +24 -0
  562. package/dist/service/lambda/serve/response/sim-lambda-url-error-response.d.ts.map +1 -0
  563. package/dist/service/lambda/serve/response/sim-lambda-url-error-response.js +35 -0
  564. package/dist/service/lambda/serve/response/sim-lambda-url-error-response.js.map +1 -0
  565. package/dist/service/lambda/serve/response/sim-lambda-url-response-builder.d.ts +21 -0
  566. package/dist/service/lambda/serve/response/sim-lambda-url-response-builder.d.ts.map +1 -0
  567. package/dist/service/lambda/serve/response/sim-lambda-url-response-builder.js +57 -0
  568. package/dist/service/lambda/serve/response/sim-lambda-url-response-builder.js.map +1 -0
  569. package/dist/service/lambda/serve/sim-lambda-controller.d.ts +42 -0
  570. package/dist/service/lambda/serve/sim-lambda-controller.d.ts.map +1 -0
  571. package/dist/service/lambda/serve/sim-lambda-controller.js +82 -0
  572. package/dist/service/lambda/serve/sim-lambda-controller.js.map +1 -0
  573. package/dist/service/lambda/serve/sim-lambda-url-router.d.ts +44 -0
  574. package/dist/service/lambda/serve/sim-lambda-url-router.d.ts.map +1 -0
  575. package/dist/service/lambda/serve/sim-lambda-url-router.js +47 -0
  576. package/dist/service/lambda/serve/sim-lambda-url-router.js.map +1 -0
  577. package/dist/service/lambda/sim-lambda.d.ts +52 -9
  578. package/dist/service/lambda/sim-lambda.d.ts.map +1 -1
  579. package/dist/service/lambda/sim-lambda.js +115 -44
  580. package/dist/service/lambda/sim-lambda.js.map +1 -1
  581. package/dist/service/route53/command/change-resource-record-sets/change-resource-record-sets.handler.d.ts.map +1 -1
  582. package/dist/service/route53/command/change-resource-record-sets/change-resource-record-sets.handler.js +3 -2
  583. package/dist/service/route53/command/change-resource-record-sets/change-resource-record-sets.handler.js.map +1 -1
  584. package/dist/service/route53/command/change-resource-record-sets/sim-route53-change-id.d.ts +10 -0
  585. package/dist/service/route53/command/change-resource-record-sets/sim-route53-change-id.d.ts.map +1 -0
  586. package/dist/service/route53/command/change-resource-record-sets/sim-route53-change-id.js +13 -0
  587. package/dist/service/route53/command/change-resource-record-sets/sim-route53-change-id.js.map +1 -0
  588. package/dist/service/route53/command/create-hosted-zone/create-hosted-zone.handler.js +1 -1
  589. package/dist/service/route53/command/create-hosted-zone/create-hosted-zone.handler.js.map +1 -1
  590. package/dist/service/route53/resolve/sim-r53-service-target-resolver.d.ts +12 -0
  591. package/dist/service/route53/resolve/sim-r53-service-target-resolver.d.ts.map +1 -1
  592. package/dist/service/route53/resolve/sim-r53-service-target-resolver.js +33 -1
  593. package/dist/service/route53/resolve/sim-r53-service-target-resolver.js.map +1 -1
  594. package/dist/service/route53/serve/sim-route53-controller.d.ts +2 -2
  595. package/dist/service/route53/serve/sim-route53-controller.d.ts.map +1 -1
  596. package/dist/service/route53/serve/sim-route53-controller.js +2 -2
  597. package/dist/service/route53/serve/sim-route53-controller.js.map +1 -1
  598. package/dist/service/s3/serve/sim-s3-controller.d.ts +2 -2
  599. package/dist/service/s3/serve/sim-s3-controller.d.ts.map +1 -1
  600. package/dist/service/s3/serve/sim-s3-controller.js +2 -1
  601. package/dist/service/s3/serve/sim-s3-controller.js.map +1 -1
  602. package/dist/service/sts/assume/sim-sts-assume-role-session-creator.d.ts +7 -0
  603. package/dist/service/sts/assume/sim-sts-assume-role-session-creator.d.ts.map +1 -1
  604. package/dist/service/sts/assume/sim-sts-assume-role-session-creator.js +4 -1
  605. package/dist/service/sts/assume/sim-sts-assume-role-session-creator.js.map +1 -1
  606. package/dist/service/sts/command/assume-role/assume-role.handler.d.ts.map +1 -1
  607. package/dist/service/sts/command/assume-role/assume-role.handler.js +1 -0
  608. package/dist/service/sts/command/assume-role/assume-role.handler.js.map +1 -1
  609. package/dist/util/background/background-due-tasks.d.ts +44 -0
  610. package/dist/util/background/background-due-tasks.d.ts.map +1 -0
  611. package/dist/util/background/background-due-tasks.js +71 -0
  612. package/dist/util/background/background-due-tasks.js.map +1 -0
  613. package/dist/util/background/background-jitter.d.ts +16 -0
  614. package/dist/util/background/background-jitter.d.ts.map +1 -0
  615. package/dist/util/background/background-jitter.js +23 -0
  616. package/dist/util/background/background-jitter.js.map +1 -0
  617. package/dist/util/background/background-settled-tasks.d.ts +17 -0
  618. package/dist/util/background/background-settled-tasks.d.ts.map +1 -0
  619. package/dist/util/background/background-settled-tasks.js +24 -0
  620. package/dist/util/background/background-settled-tasks.js.map +1 -0
  621. package/dist/util/background/background.d.ts +63 -2
  622. package/dist/util/background/background.d.ts.map +1 -1
  623. package/dist/util/background/background.js +35 -0
  624. package/dist/util/background/background.js.map +1 -1
  625. package/dist/util/background/non-deterministic-background.d.ts +24 -4
  626. package/dist/util/background/non-deterministic-background.d.ts.map +1 -1
  627. package/dist/util/background/non-deterministic-background.js +36 -13
  628. package/dist/util/background/non-deterministic-background.js.map +1 -1
  629. package/dist/util/clock/sim-clock-control.d.ts +94 -0
  630. package/dist/util/clock/sim-clock-control.d.ts.map +1 -0
  631. package/dist/util/clock/sim-clock-control.js +116 -0
  632. package/dist/util/clock/sim-clock-control.js.map +1 -0
  633. package/dist/util/clock/sim-clock-mode.d.ts +74 -0
  634. package/dist/util/clock/sim-clock-mode.d.ts.map +1 -0
  635. package/dist/util/clock/sim-clock-mode.js +58 -0
  636. package/dist/util/clock/sim-clock-mode.js.map +1 -0
  637. package/dist/util/clock/sim-clock.d.ts +41 -0
  638. package/dist/util/clock/sim-clock.d.ts.map +1 -0
  639. package/dist/util/clock/sim-clock.js +33 -0
  640. package/dist/util/clock/sim-clock.js.map +1 -0
  641. package/dist/util/clock/sim-controllable-clock.d.ts +55 -0
  642. package/dist/util/clock/sim-controllable-clock.d.ts.map +1 -0
  643. package/dist/util/clock/sim-controllable-clock.js +62 -0
  644. package/dist/util/clock/sim-controllable-clock.js.map +1 -0
  645. package/dist/util/clock/sim-duration.d.ts +44 -0
  646. package/dist/util/clock/sim-duration.d.ts.map +1 -0
  647. package/dist/util/clock/sim-duration.js +69 -0
  648. package/dist/util/clock/sim-duration.js.map +1 -0
  649. package/package.json +3 -1
@@ -10,7 +10,11 @@ import { SimS3 } from "../../s3/sim-s3.js";
10
10
  import { SimAcm } from "../../acm/sim-acm.js";
11
11
  import type { SimIam } from "../../iam/index.js";
12
12
  import { SimIamRegistry } from "../../iam/registry/sim-iam-registry.js";
13
+ import { SimIamAccessKeyRegistry } from "../../iam/registry/sim-iam-access-key-registry.js";
14
+ import { SimIamSigV4Verifier } from "../../iam/sigv4/sim-iam-sigv4-verifier.js";
15
+ import { SimAwsRequestCallerResolver } from "../../iam/request/sim-aws-request-caller-resolver.js";
13
16
  import { SimLambda } from "../../lambda/index.js";
17
+ import { SimLambdaUrlRegistry } from "../../lambda/registry/sim-lambda-url-registry.js";
14
18
  import { SimSts } from "../../sts/sim-sts.js";
15
19
  interface SimAwsServiceFactoryProperties {
16
20
  readonly simAws: SimAws;
@@ -46,6 +50,37 @@ export declare class SimAwsServiceFactory {
46
50
  * instance so cross-account services can resolve Account-owned IAM state.
47
51
  */
48
52
  readonly iamRegistry: SimIamRegistry;
53
+ /**
54
+ * Shared index of which Account owns each simulated access key.
55
+ *
56
+ * A SigV4 signed request names an access key but not an Account, so this is
57
+ * what lets a signature be traced back to the IAM that issued it.
58
+ * @internal
59
+ */
60
+ readonly accessKeyRegistry: SimIamAccessKeyRegistry;
61
+ /**
62
+ * Verifies SigV4 signatures made with any access key in this simulation.
63
+ * @internal
64
+ */
65
+ readonly signedRequests: SimIamSigV4Verifier;
66
+ /**
67
+ * Resolves the principal behind an HTTP request into this simulation.
68
+ *
69
+ * This is the single request authentication boundary: everything arriving
70
+ * over HTTP, including the in-process `SimAwsHttp.fetch()` path, gets its
71
+ * caller from here.
72
+ * @internal
73
+ */
74
+ readonly requestCallers: SimAwsRequestCallerResolver;
75
+ /**
76
+ * Shared simulated Lambda Function URL registry.
77
+ *
78
+ * This maps Function URL ids to the Accounts that own them, so the
79
+ * localhost serving layer can route a Function URL request to the right
80
+ * Account/Region scope from the request hostname alone.
81
+ * @internal
82
+ */
83
+ readonly lambdaUrlRegistry: SimLambdaUrlRegistry;
49
84
  private readonly simAws;
50
85
  private readonly background;
51
86
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"sim-aws-service-factory.d.ts","sourceRoot":"","sources":["../../../../src/service/aws/factory/sim-aws-service-factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,mBAAmB,EACpB,MAAM,wCAAwC,CAAC;AAChD,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,oCAAoC,CAAC;AACvF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,uDAAuD,CAAC;AAC9F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,EAAE,WAAW,IAAI,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAG3C,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAI9C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAGlD,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAE9C,UAAU,8BAA8B;IACtC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,UAAU,EAAE,mBAAmB,GAAG,mBAAmB,CAAC;CAChE;AAED;;;;;;;;;;;;;GAaG;AACH,qBAAa,oBAAoB;IAC/B;;;;;;OAMG;IACH,SAAgB,kBAAkB,wBAA+B;IAEjE;;;;;OAKG;IACH,SAAgB,WAAW,iBAAwB;IAEnD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA4C;IAEvE;;;;;;OAMG;IACH,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAwB;IAEpD;;;;;OAKG;IACH,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA4B;IAE5D;;;;;;OAMG;IACH,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA6B;IAExD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA4B;IAE5D,YAAY,UAAU,EAAE,8BAA8B,EAWrD;IAED;;OAEG;IACH,SAAS,CAAC,KAAK,EAAE,4BAA4B,GAAG,MAAM,CAiBrD;IAED;;OAEG;IACH,oBAAoB,CAAC,KAAK,EAAE,4BAA4B,GAAG,iBAAiB,CAO3E;IAED;;OAEG;IACH,gBAAgB,CAAC,KAAK,EAAE,4BAA4B,GAAG,aAAa,CAEnE;IAED;;OAEG;IACH,cAAc,CAAC,KAAK,EAAE,4BAA4B,GAAG,iBAAiB,CAQrE;IAED;;OAEG;IACH,SAAS,CAAC,KAAK,EAAE,4BAA4B,GAAG,MAAM,CAErD;IAED;;;;;;;;OAQG;IACH,YAAY,CAAC,KAAK,EAAE,4BAA4B,GAAG,SAAS,CAc3D;IAED;;OAEG;IACH,aAAa,CAAC,KAAK,EAAE,4BAA4B,GAAG,UAAU,CAE7D;IAED;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,4BAA4B,GAAG,KAAK,CASnD;IAED;;OAEG;IACH,SAAS,CAAC,KAAK,EAAE,4BAA4B,GAAG,MAAM,CAQrD;CACF"}
1
+ {"version":3,"file":"sim-aws-service-factory.d.ts","sourceRoot":"","sources":["../../../../src/service/aws/factory/sim-aws-service-factory.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,12 @@ import { SimRoute53AcmDnsRecords } from "../../acm/validation/sim-route53-acm-dn
9
9
  import { SimAcmRegistry } from "../../acm/registry/sim-acm-registry.js";
10
10
  import { SimRoute53Registry } from "../../route53/registry/sim-route53-registry.js";
11
11
  import { SimIamRegistry } from "../../iam/registry/sim-iam-registry.js";
12
+ import { SimIamAccessKeyRegistry } from "../../iam/registry/sim-iam-access-key-registry.js";
13
+ import { SimIamGlobalCredentialResolver } from "../../iam/registry/sim-iam-global-credential-resolver.js";
14
+ import { SimIamSigV4Verifier } from "../../iam/sigv4/sim-iam-sigv4-verifier.js";
15
+ import { SimAwsRequestCallerResolver } from "../../iam/request/sim-aws-request-caller-resolver.js";
12
16
  import { SimLambda } from "../../lambda/index.js";
17
+ import { SimLambdaUrlRegistry } from "../../lambda/registry/sim-lambda-url-registry.js";
13
18
  import { SimS3LambdaCodeStore } from "../../lambda/function/code/store/sim-s3-lambda-code-store.js";
14
19
  import { SimSdkLambdaVmModuleProvider } from "../../lambda/function/code/vm/sdk/sim-sdk-lambda-vm-module-provider.js";
15
20
  import { SimSts } from "../../sts/sim-sts.js";
@@ -43,6 +48,44 @@ export class SimAwsServiceFactory {
43
48
  * instance so cross-account services can resolve Account-owned IAM state.
44
49
  */
45
50
  iamRegistry = new SimIamRegistry();
51
+ /**
52
+ * Shared index of which Account owns each simulated access key.
53
+ *
54
+ * A SigV4 signed request names an access key but not an Account, so this is
55
+ * what lets a signature be traced back to the IAM that issued it.
56
+ * @internal
57
+ */
58
+ accessKeyRegistry = new SimIamAccessKeyRegistry();
59
+ /**
60
+ * Verifies SigV4 signatures made with any access key in this simulation.
61
+ * @internal
62
+ */
63
+ signedRequests = new SimIamSigV4Verifier({
64
+ credentials: new SimIamGlobalCredentialResolver({
65
+ accessKeys: this.accessKeyRegistry,
66
+ iam: this.iamRegistry,
67
+ }),
68
+ });
69
+ /**
70
+ * Resolves the principal behind an HTTP request into this simulation.
71
+ *
72
+ * This is the single request authentication boundary: everything arriving
73
+ * over HTTP, including the in-process `SimAwsHttp.fetch()` path, gets its
74
+ * caller from here.
75
+ * @internal
76
+ */
77
+ requestCallers = new SimAwsRequestCallerResolver({
78
+ signedRequests: this.signedRequests,
79
+ });
80
+ /**
81
+ * Shared simulated Lambda Function URL registry.
82
+ *
83
+ * This maps Function URL ids to the Accounts that own them, so the
84
+ * localhost serving layer can route a Function URL request to the right
85
+ * Account/Region scope from the request hostname alone.
86
+ * @internal
87
+ */
88
+ lambdaUrlRegistry = new SimLambdaUrlRegistry();
46
89
  simAws;
47
90
  background;
48
91
  /**
@@ -79,6 +122,7 @@ export class SimAwsServiceFactory {
79
122
  cloudFrontRegistry: this.cloudFrontRegistry,
80
123
  route53Registry: this.route53Registry,
81
124
  iamRegistry: this.iamRegistry,
125
+ accessKeyRegistry: this.accessKeyRegistry,
82
126
  });
83
127
  }
84
128
  /**
@@ -149,6 +193,7 @@ export class SimAwsServiceFactory {
149
193
  iam,
150
194
  background: this.background,
151
195
  runAsOwner: this.simAws,
196
+ urlRegistry: this.lambdaUrlRegistry,
152
197
  codeStore: new SimS3LambdaCodeStore({ s3: scope.s3() }),
153
198
  vmSdkModuleProvider: new SimSdkLambdaVmModuleProvider({
154
199
  simAws: this.simAws,
@@ -1 +1 @@
1
- {"version":3,"file":"sim-aws-service-factory.js","sourceRoot":"","sources":["../../../../src/service/aws/factory/sim-aws-service-factory.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,uDAAuD,CAAC;AAE9F,OAAO,EAAE,WAAW,IAAI,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAE3E,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,qDAAqD,CAAC;AAC9F,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,gDAAgD,CAAC;AAEpF,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,8DAA8D,CAAC;AACpG,OAAO,EAAE,4BAA4B,EAAE,MAAM,wEAAwE,CAAC;AACtH,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAO9C;;;;;;;;;;;;;GAaG;AACH,MAAM,OAAO,oBAAoB;IAC/B;;;;;;OAMG;IACa,kBAAkB,GAAG,IAAI,qBAAqB,EAAE,CAAC;IAEjE;;;;;OAKG;IACa,WAAW,GAAG,IAAI,cAAc,EAAE,CAAC;IAElC,MAAM,CAAS;IACf,UAAU,CAA4C;IAEvE;;;;;;OAMG;IACc,WAAW,GAAG,IAAI,cAAc,EAAE,CAAC;IAEpD;;;;;OAKG;IACc,eAAe,GAAG,IAAI,kBAAkB,EAAE,CAAC;IAE5D;;;;;;OAMG;IACc,UAAU,GAAG,IAAI,mBAAmB,EAAE,CAAC;IAEvC,eAAe,CAA4B;IAE5D,YAAY,UAA0C;QACpD,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;QAChC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;QACxC,IAAI,CAAC,eAAe,GAAG,IAAI,yBAAyB,CAAC;YACnD,MAAM,EAAE,UAAU,CAAC,MAAM;YACzB,UAAU,EAAE,UAAU,CAAC,UAAU;YACjC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;YAC3C,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,WAAW,EAAE,IAAI,CAAC,WAAW;SAC9B,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,KAAmC;QAC3C,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAElC,MAAM,GAAG,GAAG,IAAI,MAAM,CAAC;YACrB,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;YAC5C,GAAG;YACH,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,yEAAyE;YACzE,4CAA4C;YAC5C,UAAU,EAAE,IAAI,uBAAuB,CAAC;gBACtC,eAAe,EAAE,IAAI,CAAC,eAAe;aACtC,CAAC;SACH,CAAC,CAAC;QAEH,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAC;QAEzD,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;OAEG;IACH,oBAAoB,CAAC,KAAmC;QACtD,OAAO,IAAI,iBAAiB,CAAC;YAC3B,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;YAC5C,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;YAC1B,UAAU,EAAE,IAAI,CAAC,UAAU;SAC5B,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,gBAAgB,CAAC,KAAmC;QAClD,OAAO,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;IACtD,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,KAAmC;QAChD,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAElC,OAAO,IAAI,iBAAiB,CAAC;YAC3B,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;YAC5C,GAAG;YACH,UAAU,EAAE,IAAI,CAAC,UAAU;SAC5B,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,KAAmC;QAC3C,OAAO,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC/C,CAAC;IAED;;;;;;;;OAQG;IACH,YAAY,CAAC,KAAmC;QAC9C,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAElC,OAAO,IAAI,SAAS,CAAC;YACnB,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;YAC5C,GAAG;YACH,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,UAAU,EAAE,IAAI,CAAC,MAAM;YACvB,SAAS,EAAE,IAAI,oBAAoB,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC;YACvD,mBAAmB,EAAE,IAAI,4BAA4B,CAAC;gBACpD,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,UAAU,EAAE,KAAK,CAAC,kBAAkB,CAAC,UAAU;aAChD,CAAC;SACH,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,aAAa,CAAC,KAAmC;QAC/C,OAAO,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACnD,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,KAAmC;QAC1C,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAElC,OAAO,IAAI,KAAK,CAAC;YACf,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;YAC5C,gBAAgB,EAAE,IAAI,CAAC,UAAU;YACjC,GAAG;YACH,UAAU,EAAE,IAAI,CAAC,UAAU;SAC5B,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,KAAmC;QAC3C,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAEtB,OAAO,IAAI,MAAM,CAAC;YAChB,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;YAC5C,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,WAAW,EAAE,IAAI,CAAC,WAAW;SAC9B,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {"version":3,"file":"sim-aws-service-factory.js","sourceRoot":"","sources":["../../../../src/service/aws/factory/sim-aws-service-factory.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,uDAAuD,CAAC;AAE9F,OAAO,EAAE,WAAW,IAAI,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAE3E,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,qDAAqD,CAAC;AAC9F,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,gDAAgD,CAAC;AAEpF,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AACxE,OAAO,EAAE,uBAAuB,EAAE,MAAM,mDAAmD,CAAC;AAC5F,OAAO,EAAE,8BAA8B,EAAE,MAAM,0DAA0D,CAAC;AAC1G,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAChF,OAAO,EAAE,2BAA2B,EAAE,MAAM,sDAAsD,CAAC;AACnG,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AACxF,OAAO,EAAE,oBAAoB,EAAE,MAAM,8DAA8D,CAAC;AACpG,OAAO,EAAE,4BAA4B,EAAE,MAAM,wEAAwE,CAAC;AACtH,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAO9C;;;;;;;;;;;;;GAaG;AACH,MAAM,OAAO,oBAAoB;IAC/B;;;;;;OAMG;IACa,kBAAkB,GAAG,IAAI,qBAAqB,EAAE,CAAC;IAEjE;;;;;OAKG;IACa,WAAW,GAAG,IAAI,cAAc,EAAE,CAAC;IAEnD;;;;;;OAMG;IACa,iBAAiB,GAAG,IAAI,uBAAuB,EAAE,CAAC;IAElE;;;OAGG;IACa,cAAc,GAAG,IAAI,mBAAmB,CAAC;QACvD,WAAW,EAAE,IAAI,8BAA8B,CAAC;YAC9C,UAAU,EAAE,IAAI,CAAC,iBAAiB;YAClC,GAAG,EAAE,IAAI,CAAC,WAAW;SACtB,CAAC;KACH,CAAC,CAAC;IAEH;;;;;;;OAOG;IACa,cAAc,GAAG,IAAI,2BAA2B,CAAC;QAC/D,cAAc,EAAE,IAAI,CAAC,cAAc;KACpC,CAAC,CAAC;IAEH;;;;;;;OAOG;IACa,iBAAiB,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAE9C,MAAM,CAAS;IACf,UAAU,CAA4C;IAEvE;;;;;;OAMG;IACc,WAAW,GAAG,IAAI,cAAc,EAAE,CAAC;IAEpD;;;;;OAKG;IACc,eAAe,GAAG,IAAI,kBAAkB,EAAE,CAAC;IAE5D;;;;;;OAMG;IACc,UAAU,GAAG,IAAI,mBAAmB,EAAE,CAAC;IAEvC,eAAe,CAA4B;IAE5D,YAAY,UAA0C;QACpD,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;QAChC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;QACxC,IAAI,CAAC,eAAe,GAAG,IAAI,yBAAyB,CAAC;YACnD,MAAM,EAAE,UAAU,CAAC,MAAM;YACzB,UAAU,EAAE,UAAU,CAAC,UAAU;YACjC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;YAC3C,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;SAC1C,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,KAAmC;QAC3C,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAElC,MAAM,GAAG,GAAG,IAAI,MAAM,CAAC;YACrB,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;YAC5C,GAAG;YACH,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,yEAAyE;YACzE,4CAA4C;YAC5C,UAAU,EAAE,IAAI,uBAAuB,CAAC;gBACtC,eAAe,EAAE,IAAI,CAAC,eAAe;aACtC,CAAC;SACH,CAAC,CAAC;QAEH,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAC;QAEzD,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;OAEG;IACH,oBAAoB,CAAC,KAAmC;QACtD,OAAO,IAAI,iBAAiB,CAAC;YAC3B,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;YAC5C,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;YAC1B,UAAU,EAAE,IAAI,CAAC,UAAU;SAC5B,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,gBAAgB,CAAC,KAAmC;QAClD,OAAO,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;IACtD,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,KAAmC;QAChD,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAElC,OAAO,IAAI,iBAAiB,CAAC;YAC3B,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;YAC5C,GAAG;YACH,UAAU,EAAE,IAAI,CAAC,UAAU;SAC5B,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,KAAmC;QAC3C,OAAO,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC/C,CAAC;IAED;;;;;;;;OAQG;IACH,YAAY,CAAC,KAAmC;QAC9C,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAElC,OAAO,IAAI,SAAS,CAAC;YACnB,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;YAC5C,GAAG;YACH,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,UAAU,EAAE,IAAI,CAAC,MAAM;YACvB,WAAW,EAAE,IAAI,CAAC,iBAAiB;YACnC,SAAS,EAAE,IAAI,oBAAoB,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC;YACvD,mBAAmB,EAAE,IAAI,4BAA4B,CAAC;gBACpD,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,UAAU,EAAE,KAAK,CAAC,kBAAkB,CAAC,UAAU;aAChD,CAAC;SACH,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,aAAa,CAAC,KAAmC;QAC/C,OAAO,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACnD,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,KAAmC;QAC1C,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAElC,OAAO,IAAI,KAAK,CAAC;YACf,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;YAC5C,gBAAgB,EAAE,IAAI,CAAC,UAAU;YACjC,GAAG;YACH,UAAU,EAAE,IAAI,CAAC,UAAU;SAC5B,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,KAAmC;QAC3C,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAEtB,OAAO,IAAI,MAAM,CAAC;YAChB,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;YAC5C,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,WAAW,EAAE,IAAI,CAAC,WAAW;SAC9B,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -0,0 +1,36 @@
1
+ import type { BackgroundCompleter, BackgroundScheduler } from "../../util/background/background.js";
2
+ import type { SimClock } from "../../util/clock/sim-clock.js";
3
+ import type { SimIamSigV4ExpectedScope } from "../iam/sigv4/sim-iam-sigv4-expected-scope.js";
4
+ import type { SimAwsAccountId } from "./sim-aws-account.js";
5
+ import type { AwsRegionName } from "./sim-aws-region.js";
6
+ /**
7
+ * Everything caller resolution needs besides the request itself.
8
+ */
9
+ export interface SimAwsRequestCallerOptions {
10
+ /**
11
+ * The request body, already buffered by whoever received the request.
12
+ */
13
+ readonly body?: Uint8Array | undefined;
14
+ /**
15
+ * The service and Region a signature should have been scoped to, when the
16
+ * receiving endpoint is known.
17
+ */
18
+ readonly expectedScope?: SimIamSigV4ExpectedScope | undefined;
19
+ }
20
+ /**
21
+ * How one simulated AWS environment is set up.
22
+ */
23
+ export interface SimAwsProperties {
24
+ readonly defaultAccountId?: SimAwsAccountId;
25
+ readonly defaultRegionName?: AwsRegionName;
26
+ readonly background?: BackgroundScheduler & BackgroundCompleter;
27
+ /**
28
+ * Clock this simulation's timestamps start from, defaulting to the real
29
+ * system clock. Simulated time is layered over it, so `clock()` can still
30
+ * freeze, set and advance from wherever it reads. Ignored when an
31
+ * already-built background scheduler is supplied, as that scheduler carries
32
+ * its own clock and time control is refused.
33
+ */
34
+ readonly clock?: SimClock;
35
+ }
36
+ //# sourceMappingURL=sim-aws-properties.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-aws-properties.d.ts","sourceRoot":"","sources":["../../../src/service/aws/sim-aws-properties.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,mBAAmB,EACpB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,8CAA8C,CAAC;AAC7F,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEzD;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC;;OAEG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;IACvC;;;OAGG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,wBAAwB,GAAG,SAAS,CAAC;CAC/D;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,eAAe,CAAC;IAC5C,QAAQ,CAAC,iBAAiB,CAAC,EAAE,aAAa,CAAC;IAC3C,QAAQ,CAAC,UAAU,CAAC,EAAE,mBAAmB,GAAG,mBAAmB,CAAC;IAChE;;;;;;OAMG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC;CAC3B"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=sim-aws-properties.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-aws-properties.js","sourceRoot":"","sources":["../../../src/service/aws/sim-aws-properties.ts"],"names":[],"mappings":""}
@@ -0,0 +1,33 @@
1
+ import { type BackgroundCompleter, type BackgroundScheduler } from "../../util/background/background.js";
2
+ import type { SimClock } from "../../util/clock/sim-clock.js";
3
+ import { SimClockControl } from "../../util/clock/sim-clock-control.js";
4
+ interface SimAwsTimekeepingProperties {
5
+ readonly clock?: SimClock | undefined;
6
+ readonly background?: (BackgroundScheduler & BackgroundCompleter) | undefined;
7
+ }
8
+ /**
9
+ * Thrown when time control is asked of a simulation that does not own its clock.
10
+ */
11
+ export declare class SimAwsTimeNotControllable extends Error {
12
+ constructor();
13
+ }
14
+ /**
15
+ * How one simulation keeps time: the scheduler its work runs on, and control
16
+ * over the clock that scheduler reads.
17
+ *
18
+ * Normally a simulation builds both, so its time can be moved. A caller who
19
+ * supplies a ready-made background scheduler is supplying its clock too, and
20
+ * that clock is not this simulation's to move, so time control is refused
21
+ * rather than silently doing nothing.
22
+ */
23
+ export declare class SimAwsTimekeeping {
24
+ readonly background: BackgroundScheduler & BackgroundCompleter;
25
+ private readonly control;
26
+ constructor(properties?: SimAwsTimekeepingProperties);
27
+ /**
28
+ * Get control over this simulation's clock.
29
+ */
30
+ clockControl(): SimClockControl;
31
+ }
32
+ export {};
33
+ //# sourceMappingURL=sim-aws-timekeeping.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-aws-timekeeping.d.ts","sourceRoot":"","sources":["../../../src/service/aws/sim-aws-timekeeping.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EAEzB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAGxE,UAAU,2BAA2B;IACnC,QAAQ,CAAC,KAAK,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;IACtC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,mBAAmB,GAAG,mBAAmB,CAAC,GAAG,SAAS,CAAC;CAC/E;AAED;;GAEG;AACH,qBAAa,yBAA0B,SAAQ,KAAK;IAClD,cAMC;CACF;AAED;;;;;;;;GAQG;AACH,qBAAa,iBAAiB;IAC5B,SAAgB,UAAU,EAAE,mBAAmB,GAAG,mBAAmB,CAAC;IAEtE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA8B;IAEtD,YAAY,UAAU,GAAE,2BAAgC,EAevD;IAED;;OAEG;IACH,YAAY,IAAI,eAAe,CAM9B;CACF"}
@@ -0,0 +1,49 @@
1
+ import { BackgroundTasks, } from "../../util/background/background.js";
2
+ import { SimClockControl } from "../../util/clock/sim-clock-control.js";
3
+ import { SimControllableClock } from "../../util/clock/sim-controllable-clock.js";
4
+ /**
5
+ * Thrown when time control is asked of a simulation that does not own its clock.
6
+ */
7
+ export class SimAwsTimeNotControllable extends Error {
8
+ constructor() {
9
+ super("This SimAws cannot control its own time because it was constructed with a background scheduler, which brings its own clock. " +
10
+ "Construct SimAws without a background scheduler, passing a clock instead if it needs a starting instant.");
11
+ this.name = "SimAwsTimeNotControllable";
12
+ }
13
+ }
14
+ /**
15
+ * How one simulation keeps time: the scheduler its work runs on, and control
16
+ * over the clock that scheduler reads.
17
+ *
18
+ * Normally a simulation builds both, so its time can be moved. A caller who
19
+ * supplies a ready-made background scheduler is supplying its clock too, and
20
+ * that clock is not this simulation's to move, so time control is refused
21
+ * rather than silently doing nothing.
22
+ */
23
+ export class SimAwsTimekeeping {
24
+ background;
25
+ control;
26
+ constructor(properties = {}) {
27
+ if (properties.background !== undefined) {
28
+ this.background = properties.background;
29
+ this.control = undefined;
30
+ return;
31
+ }
32
+ // Simulated time is layered over whatever clock was supplied, so a
33
+ // simulation started at a fixed instant is still free to move from there.
34
+ const clock = new SimControllableClock({ base: properties.clock });
35
+ const background = new BackgroundTasks({ clock });
36
+ this.background = background;
37
+ this.control = new SimClockControl({ clock, background });
38
+ }
39
+ /**
40
+ * Get control over this simulation's clock.
41
+ */
42
+ clockControl() {
43
+ if (this.control === undefined) {
44
+ throw new SimAwsTimeNotControllable();
45
+ }
46
+ return this.control;
47
+ }
48
+ }
49
+ //# sourceMappingURL=sim-aws-timekeeping.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-aws-timekeeping.js","sourceRoot":"","sources":["../../../src/service/aws/sim-aws-timekeeping.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,eAAe,GAChB,MAAM,qCAAqC,CAAC;AAE7C,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACxE,OAAO,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AAOlF;;GAEG;AACH,MAAM,OAAO,yBAA0B,SAAQ,KAAK;IAClD;QACE,KAAK,CACH,8HAA8H;YAC5H,0GAA0G,CAC7G,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,2BAA2B,CAAC;IAC1C,CAAC;CACF;AAED;;;;;;;;GAQG;AACH,MAAM,OAAO,iBAAiB;IACZ,UAAU,CAA4C;IAErD,OAAO,CAA8B;IAEtD,YAAY,UAAU,GAAgC,EAAE;QACtD,IAAI,UAAU,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YACxC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;YACxC,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;YAEzB,OAAO;QACT,CAAC;QAED,mEAAmE;QACnE,0EAA0E;QAC1E,MAAM,KAAK,GAAG,IAAI,oBAAoB,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;QACnE,MAAM,UAAU,GAAG,IAAI,eAAe,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAElD,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG,IAAI,eAAe,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED;;OAEG;IACH,YAAY;QACV,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAC/B,MAAM,IAAI,yBAAyB,EAAE,CAAC;QACxC,CAAC;QAED,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;CACF"}
@@ -1,10 +1,10 @@
1
1
  import { type SimAwsAccount, type SimAwsAccountId } from "./sim-aws-account.js";
2
- import { type BackgroundCompleter, type BackgroundScheduler } from "../../util/background/background.js";
3
2
  import { type AwsRegionName, type SimAwsRegion } from "./sim-aws-region.js";
4
3
  import type { SimAwsAccountRegionContainer } from "./sim-aws-account-region-scope.js";
5
4
  import type { SimS3 } from "../s3/sim-s3.js";
6
5
  import type { SimCloudFront } from "../cloudfront/sim-cloudfront.js";
7
6
  import type { SimCloudFrontRegistry } from "../cloudfront/registry/sim-cloud-front-registry.js";
7
+ import type { SimLambdaUrlRegistry } from "../lambda/registry/sim-lambda-url-registry.js";
8
8
  import type { SimDynamoDb as SimDynamoDatabase } from "../dynamodb/index.js";
9
9
  import type { SimCloudFormation } from "../cloudformation/index.js";
10
10
  import type { SimRoute53 } from "../route53/index.js";
@@ -15,11 +15,10 @@ import type { SimIamRegistry } from "../iam/registry/sim-iam-registry.js";
15
15
  import type { SimLambda } from "../lambda/index.js";
16
16
  import type { SimSts } from "../sts/sim-sts.js";
17
17
  import type { SimAwsPrincipal } from "./caller/sim-aws-caller.js";
18
- interface SimAwsProperties {
19
- readonly defaultAccountId?: SimAwsAccountId;
20
- readonly defaultRegionName?: AwsRegionName;
21
- readonly background?: BackgroundScheduler & BackgroundCompleter;
22
- }
18
+ import type { SimClockControl } from "../../util/clock/sim-clock-control.js";
19
+ import type { SimAwsProperties, SimAwsRequestCallerOptions } from "./sim-aws-properties.js";
20
+ import type { SimIamCredentialIdentity } from "../iam/credential/sim-aws-credentials.js";
21
+ import type { SimAwsRequestCaller } from "../iam/request/sim-aws-request-caller.js";
23
22
  /**
24
23
  * Top-level container for simulated AWS.
25
24
  * Contains Account scopes, Region scopes, Account/Region scopes, and built-in
@@ -39,7 +38,60 @@ export declare class SimAws {
39
38
  readonly iamRegistry: SimIamRegistry;
40
39
  private readonly background;
41
40
  private readonly scopes;
41
+ private readonly timekeeping;
42
42
  constructor(properties?: SimAwsProperties);
43
+ /**
44
+ * Get the current time in this simulated AWS environment.
45
+ *
46
+ * Every simulated timestamp comes from here, so this is what a simulation
47
+ * means by "now", which is not necessarily what the host clock means by it.
48
+ */
49
+ now(): Date;
50
+ /**
51
+ * Control this simulated AWS environment's clock.
52
+ *
53
+ * Time can be frozen, set to an instant, or advanced by a duration, so
54
+ * behaviour that only happens once time passes — a temporary session
55
+ * expiring, for one — can be tested without waiting for it and without
56
+ * replacing the clock for the whole process:
57
+ *
58
+ * ```typescript
59
+ * await simAws.clock().advanceBy({ minutes: 20 });
60
+ * ```
61
+ *
62
+ * Advancing runs whatever falls due during the interval and returns once the
63
+ * simulation has settled, so the next line can assert. The clock belongs to
64
+ * this instance alone: moving it never disturbs another SimAws, or the real
65
+ * clock.
66
+ */
67
+ clock(): SimClockControl;
68
+ /**
69
+ * Verify the SigV4 signature on an HTTP request and resolve who signed it.
70
+ *
71
+ * This answers the question an HTTP request cannot otherwise answer: which
72
+ * simulated principal made it. The resulting identity is what IAM
73
+ * authorization already knows how to work with.
74
+ *
75
+ * Verification spans every Account, because a signature names an access key
76
+ * and not an Account. The body is passed separately, since a request body can
77
+ * only be read once and whoever serves the request needs the same bytes.
78
+ *
79
+ * Throws a SimIamSigV4Error carrying the AWS error code real AWS would use.
80
+ */
81
+ verifySignedRequest(request: Request, body?: Uint8Array): SimIamCredentialIdentity;
82
+ /**
83
+ * Work out which simulated principal an HTTP request is made by.
84
+ *
85
+ * This is the request authentication boundary every served request passes
86
+ * through, exposed so it can be used directly. An `x-sim-aws-caller` header
87
+ * names a principal outright, an AWS4-HMAC-SHA256 signature is verified, and
88
+ * a request offering neither is anonymous rather than the Account root.
89
+ *
90
+ * The body is passed separately for the same reason it is on
91
+ * `verifySignedRequest`: a request body can only be read once, and whoever
92
+ * serves the request needs the same bytes.
93
+ */
94
+ resolveRequestCaller(request: Request, options?: SimAwsRequestCallerOptions): SimAwsRequestCaller;
43
95
  /**
44
96
  * Get a simulated AWS Account.
45
97
  */
@@ -96,6 +148,15 @@ export declare class SimAws {
96
148
  * @internal
97
149
  */
98
150
  cloudFrontRegistry(): SimCloudFrontRegistry;
151
+ /**
152
+ * Get the shared simulated Lambda Function URL registry.
153
+ *
154
+ * This is intended for Lambda controller wiring, so serving a Function URL
155
+ * request resolves the owning Account from the same registry the Function
156
+ * URL commands register ids in.
157
+ * @internal
158
+ */
159
+ lambdaUrlRegistry(): SimLambdaUrlRegistry;
99
160
  /**
100
161
  * Run a function with an ambient simulated caller for this SimAws instance.
101
162
  *
@@ -114,5 +175,4 @@ export declare class SimAws {
114
175
  */
115
176
  backgroundTasksComplete(): Promise<void>;
116
177
  }
117
- export {};
118
178
  //# sourceMappingURL=sim-aws.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sim-aws.d.ts","sourceRoot":"","sources":["../../../src/service/aws/sim-aws.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sim-aws.d.ts","sourceRoot":"","sources":["../../../src/service/aws/sim-aws.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,10 @@
1
1
  import { DEFAULT_SIM_AWS_ACCOUNT_ID, } from "./sim-aws-account.js";
2
- import { BackgroundTasks, } from "../../util/background/background.js";
3
2
  import { DEFAULT_SIM_AWS_REGION_NAME, } from "./sim-aws-region.js";
4
3
  import { SimAwsServiceFactory } from "./factory/sim-aws-service-factory.js";
5
4
  import { SimAwsScopeRegistry } from "./scope/sim-aws-scope-registry.js";
6
5
  import { simAwsRunAsContext } from "./caller/sim-aws-run-as-context.js";
6
+ import { SimAwsTimekeeping } from "./sim-aws-timekeeping.js";
7
+ import { simIamSigV4SignedRequest } from "../iam/sigv4/sim-iam-sigv4-signed-request.js";
7
8
  /**
8
9
  * Top-level container for simulated AWS.
9
10
  * Contains Account scopes, Region scopes, Account/Region scopes, and built-in
@@ -23,10 +24,17 @@ export class SimAws {
23
24
  iamRegistry;
24
25
  background;
25
26
  scopes;
27
+ timekeeping;
26
28
  constructor(properties = {}) {
27
- const { defaultAccountId = DEFAULT_SIM_AWS_ACCOUNT_ID, defaultRegionName = DEFAULT_SIM_AWS_REGION_NAME, background = new BackgroundTasks(), } = properties;
29
+ const { defaultAccountId = DEFAULT_SIM_AWS_ACCOUNT_ID, defaultRegionName = DEFAULT_SIM_AWS_REGION_NAME, clock, background: suppliedBackground, } = properties;
30
+ const timekeeping = new SimAwsTimekeeping({
31
+ clock,
32
+ background: suppliedBackground,
33
+ });
34
+ const background = timekeeping.background;
28
35
  this.defaultAccountId = defaultAccountId;
29
36
  this.defaultRegionName = defaultRegionName;
37
+ this.timekeeping = timekeeping;
30
38
  this.background = background;
31
39
  this.serviceFactory = new SimAwsServiceFactory({
32
40
  simAws: this,
@@ -35,6 +43,66 @@ export class SimAws {
35
43
  this.iamRegistry = this.serviceFactory.iamRegistry;
36
44
  this.scopes = new SimAwsScopeRegistry({ simAws: this });
37
45
  }
46
+ /**
47
+ * Get the current time in this simulated AWS environment.
48
+ *
49
+ * Every simulated timestamp comes from here, so this is what a simulation
50
+ * means by "now", which is not necessarily what the host clock means by it.
51
+ */
52
+ now() {
53
+ return this.background.now();
54
+ }
55
+ /**
56
+ * Control this simulated AWS environment's clock.
57
+ *
58
+ * Time can be frozen, set to an instant, or advanced by a duration, so
59
+ * behaviour that only happens once time passes — a temporary session
60
+ * expiring, for one — can be tested without waiting for it and without
61
+ * replacing the clock for the whole process:
62
+ *
63
+ * ```typescript
64
+ * await simAws.clock().advanceBy({ minutes: 20 });
65
+ * ```
66
+ *
67
+ * Advancing runs whatever falls due during the interval and returns once the
68
+ * simulation has settled, so the next line can assert. The clock belongs to
69
+ * this instance alone: moving it never disturbs another SimAws, or the real
70
+ * clock.
71
+ */
72
+ clock() {
73
+ return this.timekeeping.clockControl();
74
+ }
75
+ /**
76
+ * Verify the SigV4 signature on an HTTP request and resolve who signed it.
77
+ *
78
+ * This answers the question an HTTP request cannot otherwise answer: which
79
+ * simulated principal made it. The resulting identity is what IAM
80
+ * authorization already knows how to work with.
81
+ *
82
+ * Verification spans every Account, because a signature names an access key
83
+ * and not an Account. The body is passed separately, since a request body can
84
+ * only be read once and whoever serves the request needs the same bytes.
85
+ *
86
+ * Throws a SimIamSigV4Error carrying the AWS error code real AWS would use.
87
+ */
88
+ verifySignedRequest(request, body) {
89
+ return this.serviceFactory.signedRequests.verify(simIamSigV4SignedRequest(request, body));
90
+ }
91
+ /**
92
+ * Work out which simulated principal an HTTP request is made by.
93
+ *
94
+ * This is the request authentication boundary every served request passes
95
+ * through, exposed so it can be used directly. An `x-sim-aws-caller` header
96
+ * names a principal outright, an AWS4-HMAC-SHA256 signature is verified, and
97
+ * a request offering neither is anonymous rather than the Account root.
98
+ *
99
+ * The body is passed separately for the same reason it is on
100
+ * `verifySignedRequest`: a request body can only be read once, and whoever
101
+ * serves the request needs the same bytes.
102
+ */
103
+ resolveRequestCaller(request, options = {}) {
104
+ return this.serviceFactory.requestCallers.resolve(simIamSigV4SignedRequest(request, options.body), options.expectedScope);
105
+ }
38
106
  /**
39
107
  * Get a simulated AWS Account.
40
108
  */
@@ -117,6 +185,17 @@ export class SimAws {
117
185
  cloudFrontRegistry() {
118
186
  return this.serviceFactory.cloudFrontRegistry;
119
187
  }
188
+ /**
189
+ * Get the shared simulated Lambda Function URL registry.
190
+ *
191
+ * This is intended for Lambda controller wiring, so serving a Function URL
192
+ * request resolves the owning Account from the same registry the Function
193
+ * URL commands register ids in.
194
+ * @internal
195
+ */
196
+ lambdaUrlRegistry() {
197
+ return this.serviceFactory.lambdaUrlRegistry;
198
+ }
120
199
  /**
121
200
  * Run a function with an ambient simulated caller for this SimAws instance.
122
201
  *
@@ -1 +1 @@
1
- {"version":3,"file":"sim-aws.js","sourceRoot":"","sources":["../../../src/service/aws/sim-aws.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,GAG3B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAGL,eAAe,GAChB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAEL,2BAA2B,GAE5B,MAAM,qBAAqB,CAAC;AAQ7B,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAOxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAQxE;;;;GAIG;AACH,MAAM,OAAO,MAAM;IACD,gBAAgB,CAAkB;IAClC,iBAAiB,CAAgB;IACjD;;;OAGG;IACa,cAAc,CAAuB;IAErD;;OAEG;IACa,WAAW,CAAiB;IAE3B,UAAU,CAA4C;IACtD,MAAM,CAAsB;IAE7C,YAAY,UAAU,GAAqB,EAAE;QAC3C,MAAM,EACJ,gBAAgB,GAAG,0BAA0B,EAC7C,iBAAiB,GAAG,2BAA2B,EAC/C,UAAU,GAAG,IAAI,eAAe,EAAE,GACnC,GAAG,UAAU,CAAC;QAEf,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QACzC,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAC3C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,cAAc,GAAG,IAAI,oBAAoB,CAAC;YAC7C,MAAM,EAAE,IAAI;YACZ,UAAU;SACX,CAAC,CAAC;QACH,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC;QACnD,IAAI,CAAC,MAAM,GAAG,IAAI,mBAAmB,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1D,CAAC;IAED;;OAEG;IACH,OAAO,CACL,SAAS,GAA6B,IAAI,CAAC,gBAAgB;QAE3D,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAA4B,CAAC,CAAC;IAC3D,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,UAAU,GAAkB,IAAI,CAAC,iBAAiB;QACvD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IACxC,CAAC;IAED;;OAEG;IACH,kBAAkB,CAChB,SAAS,GAAoB,IAAI,CAAC,gBAAgB,EAClD,UAAU,GAAkB,IAAI,CAAC,iBAAiB;QAElD,OAAO,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IAC/D,CAAC;IAED;;OAEG;IACH,GAAG;QACD,OAAO,IAAI,CAAC,kBAAkB,EAAE,CAAC,GAAG,EAAE,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,cAAc;QACZ,OAAO,IAAI,CAAC,kBAAkB,EAAE,CAAC,cAAc,EAAE,CAAC;IACpD,CAAC;IAED;;OAEG;IACH,UAAU;QACR,OAAO,IAAI,CAAC,kBAAkB,EAAE,CAAC,UAAU,EAAE,CAAC;IAChD,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO,IAAI,CAAC,kBAAkB,EAAE,CAAC,QAAQ,EAAE,CAAC;IAC9C,CAAC;IAED;;OAEG;IACH,GAAG;QACD,OAAO,IAAI,CAAC,kBAAkB,EAAE,CAAC,GAAG,EAAE,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,MAAM;QACJ,OAAO,IAAI,CAAC,kBAAkB,EAAE,CAAC,MAAM,EAAE,CAAC;IAC5C,CAAC;IAED;;OAEG;IACH,OAAO;QACL,OAAO,IAAI,CAAC,kBAAkB,EAAE,CAAC,OAAO,EAAE,CAAC;IAC7C,CAAC;IAED;;OAEG;IACH,EAAE;QACA,OAAO,IAAI,CAAC,kBAAkB,EAAE,CAAC,EAAE,EAAE,CAAC;IACxC,CAAC;IAED;;OAEG;IACH,GAAG;QACD,OAAO,IAAI,CAAC,kBAAkB,EAAE,CAAC,GAAG,EAAE,CAAC;IACzC,CAAC;IAED;;;;;;OAMG;IACH,kBAAkB;QAChB,OAAO,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC;IAChD,CAAC;IAED;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,KAAK,CAAI,MAAuB,EAAE,GAAqB;QAC3D,OAAO,MAAM,kBAAkB,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;IACzD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,uBAAuB;QAC3B,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;IACnC,CAAC;CACF"}
1
+ {"version":3,"file":"sim-aws.js","sourceRoot":"","sources":["../../../src/service/aws/sim-aws.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Read the publishable bytes for one CDK cloud assembly file asset.
3
+ *
4
+ * CDK stages two shapes of file asset in a cloud assembly. A "file" asset is
5
+ * already a single file on disk, such as the stack template JSON or a prebuilt
6
+ * layer zip, and publishes byte for byte. A "zip" asset is a directory that the
7
+ * real `cdk-assets` publisher zips on its way to the staging bucket, so the
8
+ * simulated publisher zips it here, in memory.
9
+ */
10
+ export declare function readSimCdkAssetBytes(sourcePath: string, packaging: string | undefined): Promise<Uint8Array>;
11
+ //# sourceMappingURL=sim-cdk-asset-bytes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cdk-asset-bytes.d.ts","sourceRoot":"","sources":["../../../../../src/service/cloudformation/cdk/assets/sim-cdk-asset-bytes.ts"],"names":[],"mappings":"AAIA;;;;;;;;GAQG;AACH,wBAAsB,oBAAoB,CACxC,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,GAAG,SAAS,GAC5B,OAAO,CAAC,UAAU,CAAC,CAOrB"}
@@ -0,0 +1,57 @@
1
+ import path from "node:path";
2
+ import { readFile, readdir } from "node:fs/promises";
3
+ import { SimZipArchiveBuilder } from "../../../../util/zip/zip-archive-builder.js";
4
+ /**
5
+ * Read the publishable bytes for one CDK cloud assembly file asset.
6
+ *
7
+ * CDK stages two shapes of file asset in a cloud assembly. A "file" asset is
8
+ * already a single file on disk, such as the stack template JSON or a prebuilt
9
+ * layer zip, and publishes byte for byte. A "zip" asset is a directory that the
10
+ * real `cdk-assets` publisher zips on its way to the staging bucket, so the
11
+ * simulated publisher zips it here, in memory.
12
+ */
13
+ export async function readSimCdkAssetBytes(sourcePath, packaging) {
14
+ if (packaging === "zip") {
15
+ return await zipSimCdkAssetDirectory(sourcePath);
16
+ }
17
+ // eslint-disable-next-line security/detect-non-literal-fs-filename
18
+ return await readFile(sourcePath);
19
+ }
20
+ /**
21
+ * Zip a CDK asset directory into Lambda-readable archive bytes.
22
+ *
23
+ * Entries are sorted so the same asset directory always produces the same
24
+ * archive bytes, as a content-addressed CDK asset should.
25
+ */
26
+ async function zipSimCdkAssetDirectory(directoryPath) {
27
+ const archivePaths = await assetArchivePaths(directoryPath);
28
+ const files = await Promise.all(archivePaths.map(async (archivePath) => ({
29
+ archivePath,
30
+ // eslint-disable-next-line security/detect-non-literal-fs-filename
31
+ content: await readFile(path.join(directoryPath, archivePath)),
32
+ })));
33
+ const builder = new SimZipArchiveBuilder();
34
+ for (const file of files) {
35
+ builder.addFile(file.archivePath, file.content);
36
+ }
37
+ return builder.toBytes();
38
+ }
39
+ /**
40
+ * The archive-relative paths of every file in a CDK asset directory, in a
41
+ * stable order and using zip forward-slash separators.
42
+ */
43
+ async function assetArchivePaths(directoryPath) {
44
+ // eslint-disable-next-line security/detect-non-literal-fs-filename
45
+ const entries = await readdir(directoryPath, {
46
+ recursive: true,
47
+ withFileTypes: true,
48
+ });
49
+ return entries
50
+ .filter((entry) => entry.isFile())
51
+ .map((entry) => path
52
+ .relative(directoryPath, path.join(entry.parentPath, entry.name))
53
+ .split(path.sep)
54
+ .join("/"))
55
+ .toSorted((left, right) => left.localeCompare(right));
56
+ }
57
+ //# sourceMappingURL=sim-cdk-asset-bytes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cdk-asset-bytes.js","sourceRoot":"","sources":["../../../../../src/service/cloudformation/cdk/assets/sim-cdk-asset-bytes.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAC;AAEnF;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,UAAkB,EAClB,SAA6B;IAE7B,IAAI,SAAS,KAAK,KAAK,EAAE,CAAC;QACxB,OAAO,MAAM,uBAAuB,CAAC,UAAU,CAAC,CAAC;IACnD,CAAC;IAED,mEAAmE;IACnE,OAAO,MAAM,QAAQ,CAAC,UAAU,CAAC,CAAC;AACpC,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,uBAAuB,CACpC,aAAqB;IAErB,MAAM,YAAY,GAAG,MAAM,iBAAiB,CAAC,aAAa,CAAC,CAAC;IAC5D,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,GAAG,CAC7B,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC;QACvC,WAAW;QACX,mEAAmE;QACnE,OAAO,EAAE,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;KAC/D,CAAC,CAAC,CACJ,CAAC;IAEF,MAAM,OAAO,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC3C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAClD,CAAC;IAED,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;AAC3B,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,iBAAiB,CAC9B,aAAqB;IAErB,mEAAmE;IACnE,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,aAAa,EAAE;QAC3C,SAAS,EAAE,IAAI;QACf,aAAa,EAAE,IAAI;KACpB,CAAC,CAAC;IAEH,OAAO,OAAO;SACX,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;SACjC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CACb,IAAI;SACD,QAAQ,CAAC,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;SAChE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC;SACf,IAAI,CAAC,GAAG,CAAC,CACb;SACA,QAAQ,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;AAC1D,CAAC"}