@kensio/yulin 1.10.0 → 1.10.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (677) hide show
  1. package/dist/cli/watch/sim-watch-event-path.js +1 -1
  2. package/dist/cli/watch/sim-watch-restarts.js +1 -1
  3. package/dist/cli/watch/sim-watch-restarts.js.map +1 -1
  4. package/dist/cli/watch/sim-watch-watcher.js +3 -3
  5. package/dist/config/eslint/cffjs2.eslint.config.js +17 -98
  6. package/dist/config/eslint/cffjs2.eslint.config.js.map +1 -1
  7. package/dist/config/lint/cff-js2-lint-plugin.d.ts +16 -0
  8. package/dist/config/lint/cff-js2-lint-plugin.d.ts.map +1 -0
  9. package/dist/config/lint/cff-js2-lint-plugin.js +39 -0
  10. package/dist/config/lint/cff-js2-lint-plugin.js.map +1 -0
  11. package/dist/config/lint/cff-js2-lint-rules.d.ts +20 -0
  12. package/dist/config/lint/cff-js2-lint-rules.d.ts.map +1 -0
  13. package/dist/config/lint/cff-js2-lint-rules.js +53 -0
  14. package/dist/config/lint/cff-js2-lint-rules.js.map +1 -0
  15. package/dist/config/lint/cff-js2-lint.fixture.d.ts +39 -0
  16. package/dist/config/lint/cff-js2-lint.fixture.d.ts.map +1 -0
  17. package/dist/config/lint/cff-js2-lint.fixture.js +229 -0
  18. package/dist/config/lint/cff-js2-lint.fixture.js.map +1 -0
  19. package/dist/config/lint/cff-js2-oxlint-plugin.d.ts +9 -0
  20. package/dist/config/lint/cff-js2-oxlint-plugin.d.ts.map +1 -0
  21. package/dist/config/lint/cff-js2-oxlint-plugin.js +9 -0
  22. package/dist/config/lint/cff-js2-oxlint-plugin.js.map +1 -0
  23. package/dist/config/lint/cff-js2-restriction.d.ts +82 -0
  24. package/dist/config/lint/cff-js2-restriction.d.ts.map +1 -0
  25. package/dist/config/lint/cff-js2-restriction.js +85 -0
  26. package/dist/config/lint/cff-js2-restriction.js.map +1 -0
  27. package/dist/config/lint/cff-js2-unavailable-global.rule.d.ts +10 -0
  28. package/dist/config/lint/cff-js2-unavailable-global.rule.d.ts.map +1 -0
  29. package/dist/config/lint/cff-js2-unavailable-global.rule.js +42 -0
  30. package/dist/config/lint/cff-js2-unavailable-global.rule.js.map +1 -0
  31. package/dist/config/lint/index.d.ts +6 -0
  32. package/dist/config/lint/index.d.ts.map +1 -0
  33. package/dist/config/lint/index.js +5 -0
  34. package/dist/config/lint/index.js.map +1 -0
  35. package/dist/config/lint/lint-plugin.type.d.ts +82 -0
  36. package/dist/config/lint/lint-plugin.type.d.ts.map +1 -0
  37. package/dist/config/lint/lint-plugin.type.js +11 -0
  38. package/dist/config/lint/lint-plugin.type.js.map +1 -0
  39. package/dist/config/lint/repo-lint-plugin.d.ts +68 -0
  40. package/dist/config/lint/repo-lint-plugin.d.ts.map +1 -0
  41. package/dist/config/lint/repo-lint-plugin.js +64 -0
  42. package/dist/config/lint/repo-lint-plugin.js.map +1 -0
  43. package/dist/config/oxlint/cffjs2.oxlint.config.d.ts +26 -0
  44. package/dist/config/oxlint/cffjs2.oxlint.config.d.ts.map +1 -0
  45. package/dist/config/oxlint/cffjs2.oxlint.config.js +28 -0
  46. package/dist/config/oxlint/cffjs2.oxlint.config.js.map +1 -0
  47. package/dist/config/oxlint/cffjs2.oxlintrc.json +36 -0
  48. package/dist/config/oxlint/index.d.ts +2 -0
  49. package/dist/config/oxlint/index.d.ts.map +1 -0
  50. package/dist/config/oxlint/index.js +2 -0
  51. package/dist/config/oxlint/index.js.map +1 -0
  52. package/dist/sdk/module/sim-sdk-module-client-interceptor.js +1 -1
  53. package/dist/sdk/send-patch.js +1 -1
  54. package/dist/sdk/send-patch.js.map +1 -1
  55. package/dist/sdk/sim-sdk-interception.js +1 -1
  56. package/dist/sdk/sim-sdk-interception.js.map +1 -1
  57. package/dist/sdk/sim-sdk.js +1 -1
  58. package/dist/sdk/sim-sdk.js.map +1 -1
  59. package/dist/serve/http/live-reload/sim-live-reload-report.js +1 -1
  60. package/dist/serve/http/live-reload/sim-local-live-reload.d.ts.map +1 -1
  61. package/dist/serve/http/live-reload/sim-local-live-reload.js +2 -3
  62. package/dist/serve/http/live-reload/sim-local-live-reload.js.map +1 -1
  63. package/dist/serve/http/local-server/sim-aws-local-request-handler.js +1 -1
  64. package/dist/serve/http/local-server/sim-aws-local-request-handler.js.map +1 -1
  65. package/dist/service/acm/certificate/sim-acm-certificate.d.ts.map +1 -1
  66. package/dist/service/acm/certificate/sim-acm-certificate.js.map +1 -1
  67. package/dist/service/acm/certificate/sim-acm-domain-validation.d.ts.map +1 -1
  68. package/dist/service/acm/certificate/sim-acm-domain-validation.js.map +1 -1
  69. package/dist/service/acm/cfn/property/sim-cfn-acm-cert-properties.d.ts.map +1 -1
  70. package/dist/service/acm/cfn/property/sim-cfn-acm-cert-properties.js.map +1 -1
  71. package/dist/service/acm/cfn/validation/sim-cfn-acm-validation-records.js +1 -1
  72. package/dist/service/acm/command/describe-certificate/describe-certificate.command.d.ts.map +1 -1
  73. package/dist/service/acm/command/list-certificates/list-certificates.command.d.ts.map +1 -1
  74. package/dist/service/acm/command/request-certificate/request-certificate.command.d.ts.map +1 -1
  75. package/dist/service/acm/validation/sim-acm-certificate-validation.d.ts.map +1 -1
  76. package/dist/service/acm/validation/sim-acm-certificate-validation.js +3 -4
  77. package/dist/service/acm/validation/sim-acm-certificate-validation.js.map +1 -1
  78. package/dist/service/apigatewayv2/command/authorizer/sim-http-api-authorizer-options.d.ts.map +1 -1
  79. package/dist/service/apigatewayv2/command/authorizer/sim-http-api-authorizer-options.js.map +1 -1
  80. package/dist/service/aws/caller/sim-aws-caller-resolver.d.ts.map +1 -1
  81. package/dist/service/aws/caller/sim-aws-caller-resolver.js +2 -3
  82. package/dist/service/aws/caller/sim-aws-caller-resolver.js.map +1 -1
  83. package/dist/service/aws/caller/sim-aws-caller.d.ts.map +1 -1
  84. package/dist/service/aws/factory/account-service-cache-key.d.ts.map +1 -1
  85. package/dist/service/aws/factory/account-service-cache-key.js.map +1 -1
  86. package/dist/service/aws/factory/sim-aws-account-service-cache.js +1 -1
  87. package/dist/service/aws/factory/sim-aws-account-service-cache.js.map +1 -1
  88. package/dist/service/cloudformation/bind/validate/sim-cfn-exec-binding-finder.d.ts.map +1 -1
  89. package/dist/service/cloudformation/bind/validate/sim-cfn-exec-binding-finder.js +1 -1
  90. package/dist/service/cloudformation/bind/validate/sim-cfn-exec-binding-finder.js.map +1 -1
  91. package/dist/service/cloudformation/bind/validate/sim-cfn-exec-binding-matcher.js +2 -2
  92. package/dist/service/cloudformation/cdk/assets/sim-cdk-asset-bytes.js +3 -3
  93. package/dist/service/cloudformation/cdk/assets/sim-cdk-assets-publisher.js +1 -1
  94. package/dist/service/cloudformation/cdk/provider/sim-cdk-provider-scaffolding-template.factory.d.ts +40 -0
  95. package/dist/service/cloudformation/cdk/provider/sim-cdk-provider-scaffolding-template.factory.d.ts.map +1 -0
  96. package/dist/service/cloudformation/cdk/provider/sim-cdk-provider-scaffolding-template.factory.js +107 -0
  97. package/dist/service/cloudformation/cdk/provider/sim-cdk-provider-scaffolding-template.factory.js.map +1 -0
  98. package/dist/service/cloudformation/cdk/provider/sim-cdk-provider-scaffolding.d.ts +66 -0
  99. package/dist/service/cloudformation/cdk/provider/sim-cdk-provider-scaffolding.d.ts.map +1 -0
  100. package/dist/service/cloudformation/cdk/provider/sim-cdk-provider-scaffolding.js +133 -0
  101. package/dist/service/cloudformation/cdk/provider/sim-cdk-provider-scaffolding.js.map +1 -0
  102. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-copier.d.ts +6 -1
  103. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-copier.d.ts.map +1 -1
  104. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-copier.js +7 -1
  105. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-copier.js.map +1 -1
  106. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-file.js +1 -1
  107. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-files.js +2 -2
  108. package/dist/service/cloudformation/cdk/s3/bucket-deployment/destination/sim-cdk-bucket-deploy-destination.d.ts +14 -0
  109. package/dist/service/cloudformation/cdk/s3/bucket-deployment/destination/sim-cdk-bucket-deploy-destination.d.ts.map +1 -0
  110. package/dist/service/cloudformation/cdk/s3/bucket-deployment/destination/sim-cdk-bucket-deploy-destination.js +20 -0
  111. package/dist/service/cloudformation/cdk/s3/bucket-deployment/destination/sim-cdk-bucket-deploy-destination.js.map +1 -0
  112. package/dist/service/cloudformation/cdk/s3/bucket-deployment/filter/sim-cdk-bucket-deploy-filter.js +7 -1
  113. package/dist/service/cloudformation/cdk/s3/bucket-deployment/filter/sim-cdk-bucket-deploy-filter.js.map +1 -1
  114. package/dist/service/cloudformation/cdk/s3/bucket-deployment/metadata/sim-cdk-bucket-deploy-metadata.d.ts +58 -0
  115. package/dist/service/cloudformation/cdk/s3/bucket-deployment/metadata/sim-cdk-bucket-deploy-metadata.d.ts.map +1 -0
  116. package/dist/service/cloudformation/cdk/s3/bucket-deployment/metadata/sim-cdk-bucket-deploy-metadata.js +65 -0
  117. package/dist/service/cloudformation/cdk/s3/bucket-deployment/metadata/sim-cdk-bucket-deploy-metadata.js.map +1 -0
  118. package/dist/service/cloudformation/cdk/s3/bucket-deployment/property/sim-cdk-bucket-deploy-values.js +1 -1
  119. package/dist/service/cloudformation/cdk/s3/bucket-deployment/sim-cdk-bucket-deployment.d.ts.map +1 -1
  120. package/dist/service/cloudformation/cdk/s3/bucket-deployment/sim-cdk-bucket-deployment.js +16 -7
  121. package/dist/service/cloudformation/cdk/s3/bucket-deployment/sim-cdk-bucket-deployment.js.map +1 -1
  122. package/dist/service/cloudformation/cdk/s3/bucket-deployment/source/sim-cdk-bucket-deploy-source.d.ts.map +1 -1
  123. package/dist/service/cloudformation/cdk/s3/bucket-deployment/source/sim-cdk-bucket-deploy-source.js +1 -0
  124. package/dist/service/cloudformation/cdk/s3/bucket-deployment/source/sim-cdk-bucket-deploy-source.js.map +1 -1
  125. package/dist/service/cloudformation/cdk/s3/bucket-notifications/property/sim-cdk-bucket-notification-properties.js +1 -1
  126. package/dist/service/cloudformation/cdk/s3/bucket-notifications/sim-cdk-bucket-notifications.d.ts +4 -2
  127. package/dist/service/cloudformation/cdk/s3/bucket-notifications/sim-cdk-bucket-notifications.d.ts.map +1 -1
  128. package/dist/service/cloudformation/cdk/s3/bucket-notifications/sim-cdk-bucket-notifications.js +4 -2
  129. package/dist/service/cloudformation/cdk/s3/bucket-notifications/sim-cdk-bucket-notifications.js.map +1 -1
  130. package/dist/service/cloudformation/cdk/sim-cdk-out-context.js +1 -1
  131. package/dist/service/cloudformation/command/create-stack/create-stack.handler.d.ts.map +1 -1
  132. package/dist/service/cloudformation/command/create-stack/create-stack.handler.js.map +1 -1
  133. package/dist/service/cloudformation/command/describe-stacks/describe-stacks.handler.d.ts.map +1 -1
  134. package/dist/service/cloudformation/command/describe-stacks/describe-stacks.handler.js.map +1 -1
  135. package/dist/service/cloudformation/deploy/sim-cfn-template-file-loader.js +1 -1
  136. package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-cfn-value-adapter.d.ts.map +1 -1
  137. package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-cfn-value-adapter.js +8 -0
  138. package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-cfn-value-adapter.js.map +1 -1
  139. package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-oac-cfn.d.ts +25 -0
  140. package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-oac-cfn.d.ts.map +1 -0
  141. package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-oac-cfn.js +32 -0
  142. package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-oac-cfn.js.map +1 -0
  143. package/dist/service/cloudformation/resource/cfn/dynamodb/sim-dynamodb-table-cfn.d.ts.map +1 -1
  144. package/dist/service/cloudformation/resource/cfn/dynamodb/sim-dynamodb-table-cfn.js +4 -5
  145. package/dist/service/cloudformation/resource/cfn/dynamodb/sim-dynamodb-table-cfn.js.map +1 -1
  146. package/dist/service/cloudformation/resource/create/sim-cfn-resource-create-operation.d.ts +11 -0
  147. package/dist/service/cloudformation/resource/create/sim-cfn-resource-create-operation.d.ts.map +1 -1
  148. package/dist/service/cloudformation/resource/create/sim-cfn-resource-create-operation.js +20 -2
  149. package/dist/service/cloudformation/resource/create/sim-cfn-resource-create-operation.js.map +1 -1
  150. package/dist/service/cloudformation/resource/inert/sim-cfn-inert-resource-types.d.ts +20 -0
  151. package/dist/service/cloudformation/resource/inert/sim-cfn-inert-resource-types.d.ts.map +1 -0
  152. package/dist/service/cloudformation/resource/inert/sim-cfn-inert-resource-types.js +32 -0
  153. package/dist/service/cloudformation/resource/inert/sim-cfn-inert-resource-types.js.map +1 -0
  154. package/dist/service/cloudformation/resource/inert/sim-cfn-inert-resource.d.ts +19 -0
  155. package/dist/service/cloudformation/resource/inert/sim-cfn-inert-resource.d.ts.map +1 -0
  156. package/dist/service/cloudformation/resource/inert/sim-cfn-inert-resource.js +26 -0
  157. package/dist/service/cloudformation/resource/inert/sim-cfn-inert-resource.js.map +1 -0
  158. package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-resolver.d.ts.map +1 -1
  159. package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-resolver.js +2 -3
  160. package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-resolver.js.map +1 -1
  161. package/dist/service/cloudformation/resource/sim-cfn-resource.d.ts +15 -0
  162. package/dist/service/cloudformation/resource/sim-cfn-resource.d.ts.map +1 -1
  163. package/dist/service/cloudformation/resource/sim-cfn-resource.js +21 -0
  164. package/dist/service/cloudformation/resource/sim-cfn-resource.js.map +1 -1
  165. package/dist/service/cloudformation/resource/state/sim-cfn-resource-creation-state.d.ts +20 -0
  166. package/dist/service/cloudformation/resource/state/sim-cfn-resource-creation-state.d.ts.map +1 -1
  167. package/dist/service/cloudformation/resource/state/sim-cfn-resource-creation-state.js +41 -11
  168. package/dist/service/cloudformation/resource/state/sim-cfn-resource-creation-state.js.map +1 -1
  169. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-batch-creator.d.ts.map +1 -1
  170. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-batch-creator.js.map +1 -1
  171. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-creator.js +1 -1
  172. package/dist/service/cloudformation/stack/report/sim-cfn-stack-resource-report.d.ts +9 -0
  173. package/dist/service/cloudformation/stack/report/sim-cfn-stack-resource-report.d.ts.map +1 -1
  174. package/dist/service/cloudformation/stack/report/sim-cfn-stack-resource-report.js +11 -0
  175. package/dist/service/cloudformation/stack/report/sim-cfn-stack-resource-report.js.map +1 -1
  176. package/dist/service/cloudformation/stack/sim-cfn-stack-resource-operations.d.ts.map +1 -1
  177. package/dist/service/cloudformation/stack/sim-cfn-stack-resource-operations.js.map +1 -1
  178. package/dist/service/cloudformation/stack/sim-cfn-stack.d.ts +2 -0
  179. package/dist/service/cloudformation/stack/sim-cfn-stack.d.ts.map +1 -1
  180. package/dist/service/cloudformation/stack/sim-cfn-stack.js +4 -0
  181. package/dist/service/cloudformation/stack/sim-cfn-stack.js.map +1 -1
  182. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-deleter.js +1 -1
  183. package/dist/service/cloudformation/template/node/fn/find-in-map/sim-cfn-fn-find-in-map.js +2 -2
  184. package/dist/service/cloudformation/template/node/fn/if/sim-cfn-fn-if.d.ts.map +1 -1
  185. package/dist/service/cloudformation/template/node/fn/if/sim-cfn-fn-if.js +3 -4
  186. package/dist/service/cloudformation/template/node/fn/if/sim-cfn-fn-if.js.map +1 -1
  187. package/dist/service/cloudformation/template/node/fn/select/sim-cfn-fn-select.js +1 -1
  188. package/dist/service/cloudformation/watch/sim-cfn-template-file-events.js +1 -1
  189. package/dist/service/cloudformation/watch/sim-cfn-template-watch-report.js +2 -2
  190. package/dist/service/cloudfront/cff/adapter/sim-cff-request-metadata-adapter.js +3 -3
  191. package/dist/service/cloudfront/cff/function-code-module/cff-code-module-file.js +1 -1
  192. package/dist/service/cloudfront/cff/sim-cloudfront-function.d.ts.map +1 -1
  193. package/dist/service/cloudfront/cff/sim-cloudfront-function.js.map +1 -1
  194. package/dist/service/cloudfront/cfn/cff/sim-cfn-cff-create-input-builder.d.ts.map +1 -1
  195. package/dist/service/cloudfront/cfn/cff/sim-cfn-cff-create-input-builder.js.map +1 -1
  196. package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-config-validator.d.ts.map +1 -1
  197. package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-config-validator.js.map +1 -1
  198. package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-deleter.d.ts.map +1 -1
  199. package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-deleter.js.map +1 -1
  200. package/dist/service/cloudfront/cfn/origin-access-control/sim-cfn-cf-oac-config.d.ts +39 -0
  201. package/dist/service/cloudfront/cfn/origin-access-control/sim-cfn-cf-oac-config.d.ts.map +1 -0
  202. package/dist/service/cloudfront/cfn/origin-access-control/sim-cfn-cf-oac-config.js +97 -0
  203. package/dist/service/cloudfront/cfn/origin-access-control/sim-cfn-cf-oac-config.js.map +1 -0
  204. package/dist/service/cloudfront/cfn/origin-access-control/sim-cfn-cf-oac-creator.d.ts +25 -0
  205. package/dist/service/cloudfront/cfn/origin-access-control/sim-cfn-cf-oac-creator.d.ts.map +1 -0
  206. package/dist/service/cloudfront/cfn/origin-access-control/sim-cfn-cf-oac-creator.js +33 -0
  207. package/dist/service/cloudfront/cfn/origin-access-control/sim-cfn-cf-oac-creator.js.map +1 -0
  208. package/dist/service/cloudfront/cfn/response-headers-policy/sim-cfn-cf-rh-policy-config.js +2 -2
  209. package/dist/service/cloudfront/cfn/response-headers-policy/sim-cfn-cf-rh-policy-creator.d.ts.map +1 -1
  210. package/dist/service/cloudfront/cfn/response-headers-policy/sim-cfn-cf-rh-policy-creator.js.map +1 -1
  211. package/dist/service/cloudfront/cfn/sim-cfn-cloudfront-resource-factory.d.ts +1 -0
  212. package/dist/service/cloudfront/cfn/sim-cfn-cloudfront-resource-factory.d.ts.map +1 -1
  213. package/dist/service/cloudfront/cfn/sim-cfn-cloudfront-resource-factory.js +12 -0
  214. package/dist/service/cloudfront/cfn/sim-cfn-cloudfront-resource-factory.js.map +1 -1
  215. package/dist/service/cloudfront/command/create-distribution/create-distribution.command.d.ts +8 -1
  216. package/dist/service/cloudfront/command/create-distribution/create-distribution.command.d.ts.map +1 -1
  217. package/dist/service/cloudfront/command/create-distribution/create-distribution.handler.d.ts +2 -0
  218. package/dist/service/cloudfront/command/create-distribution/create-distribution.handler.d.ts.map +1 -1
  219. package/dist/service/cloudfront/command/create-distribution/create-distribution.handler.js.map +1 -1
  220. package/dist/service/cloudfront/command/create-distribution/sim-cf-distro-config-normalizer.d.ts.map +1 -1
  221. package/dist/service/cloudfront/command/create-distribution/sim-cf-distro-config-normalizer.js.map +1 -1
  222. package/dist/service/cloudfront/command/update-distribution/update-distribution.handler.d.ts +2 -0
  223. package/dist/service/cloudfront/command/update-distribution/update-distribution.handler.d.ts.map +1 -1
  224. package/dist/service/cloudfront/command/update-distribution/update-distribution.handler.js.map +1 -1
  225. package/dist/service/cloudfront/distribution/configurator/sim-cf-distribution-configurator.factory.d.ts +2 -0
  226. package/dist/service/cloudfront/distribution/configurator/sim-cf-distribution-configurator.factory.d.ts.map +1 -1
  227. package/dist/service/cloudfront/distribution/configurator/sim-cf-distribution-configurator.factory.js +1 -1
  228. package/dist/service/cloudfront/distribution/configurator/sim-cf-distribution-configurator.factory.js.map +1 -1
  229. package/dist/service/cloudfront/distribution/configurator/sim-cff-associations-configure.d.ts.map +1 -1
  230. package/dist/service/cloudfront/distribution/configurator/sim-cff-associations-configure.js.map +1 -1
  231. package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-behavior-configurator.js.map +1 -1
  232. package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-origin-configurator.d.ts +19 -1
  233. package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-origin-configurator.d.ts.map +1 -1
  234. package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-origin-configurator.js +51 -4
  235. package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-origin-configurator.js.map +1 -1
  236. package/dist/service/cloudfront/distribution/sim-cf-distribution-reconfigurer.d.ts +2 -0
  237. package/dist/service/cloudfront/distribution/sim-cf-distribution-reconfigurer.d.ts.map +1 -1
  238. package/dist/service/cloudfront/distribution/sim-cf-distribution-reconfigurer.js.map +1 -1
  239. package/dist/service/cloudfront/error/sim-cloudfront.error.d.ts +20 -0
  240. package/dist/service/cloudfront/error/sim-cloudfront.error.d.ts.map +1 -1
  241. package/dist/service/cloudfront/error/sim-cloudfront.error.js +24 -0
  242. package/dist/service/cloudfront/error/sim-cloudfront.error.js.map +1 -1
  243. package/dist/service/cloudfront/origin/s3/sim-cf-s3-origin-access-identity.d.ts +14 -0
  244. package/dist/service/cloudfront/origin/s3/sim-cf-s3-origin-access-identity.d.ts.map +1 -0
  245. package/dist/service/cloudfront/origin/s3/sim-cf-s3-origin-access-identity.js +19 -0
  246. package/dist/service/cloudfront/origin/s3/sim-cf-s3-origin-access-identity.js.map +1 -0
  247. package/dist/service/cloudfront/origin/s3/sim-cf-s3-origin-bucket.d.ts +14 -0
  248. package/dist/service/cloudfront/origin/s3/sim-cf-s3-origin-bucket.d.ts.map +1 -0
  249. package/dist/service/cloudfront/origin/s3/sim-cf-s3-origin-bucket.js +2 -0
  250. package/dist/service/cloudfront/origin/s3/sim-cf-s3-origin-bucket.js.map +1 -0
  251. package/dist/service/cloudfront/origin/s3/sim-cf-s3-origin-object-key.d.ts +17 -0
  252. package/dist/service/cloudfront/origin/s3/sim-cf-s3-origin-object-key.d.ts.map +1 -0
  253. package/dist/service/cloudfront/origin/s3/sim-cf-s3-origin-object-key.js +23 -0
  254. package/dist/service/cloudfront/origin/s3/sim-cf-s3-origin-object-key.js.map +1 -0
  255. package/dist/service/cloudfront/origin/s3/sim-cf-s3-origin-object-loader.d.ts +31 -0
  256. package/dist/service/cloudfront/origin/s3/sim-cf-s3-origin-object-loader.d.ts.map +1 -0
  257. package/dist/service/cloudfront/origin/s3/sim-cf-s3-origin-object-loader.js +54 -0
  258. package/dist/service/cloudfront/origin/s3/sim-cf-s3-origin-object-loader.js.map +1 -0
  259. package/dist/service/cloudfront/origin/s3/sim-cf-s3-origin-resolver-factory.d.ts +11 -2
  260. package/dist/service/cloudfront/origin/s3/sim-cf-s3-origin-resolver-factory.d.ts.map +1 -1
  261. package/dist/service/cloudfront/origin/s3/sim-cf-s3-origin-resolver-factory.js +19 -6
  262. package/dist/service/cloudfront/origin/s3/sim-cf-s3-origin-resolver-factory.js.map +1 -1
  263. package/dist/service/cloudfront/origin/s3/sim-cf-s3-origin-responses.d.ts +32 -0
  264. package/dist/service/cloudfront/origin/s3/sim-cf-s3-origin-responses.d.ts.map +1 -0
  265. package/dist/service/cloudfront/origin/s3/sim-cf-s3-origin-responses.js +51 -0
  266. package/dist/service/cloudfront/origin/s3/sim-cf-s3-origin-responses.js.map +1 -0
  267. package/dist/service/cloudfront/origin/s3/sim-cf-s3-origin-signer.d.ts +26 -0
  268. package/dist/service/cloudfront/origin/s3/sim-cf-s3-origin-signer.d.ts.map +1 -0
  269. package/dist/service/cloudfront/origin/s3/sim-cf-s3-origin-signer.js +36 -0
  270. package/dist/service/cloudfront/origin/s3/sim-cf-s3-origin-signer.js.map +1 -0
  271. package/dist/service/cloudfront/origin/s3/sim-cloudfront-s3-origin.d.ts +25 -9
  272. package/dist/service/cloudfront/origin/s3/sim-cloudfront-s3-origin.d.ts.map +1 -1
  273. package/dist/service/cloudfront/origin/s3/sim-cloudfront-s3-origin.js +40 -48
  274. package/dist/service/cloudfront/origin/s3/sim-cloudfront-s3-origin.js.map +1 -1
  275. package/dist/service/cloudfront/origin-access-control/sim-cf-origin-access-control-registry.d.ts +28 -0
  276. package/dist/service/cloudfront/origin-access-control/sim-cf-origin-access-control-registry.d.ts.map +1 -0
  277. package/dist/service/cloudfront/origin-access-control/sim-cf-origin-access-control-registry.js +41 -0
  278. package/dist/service/cloudfront/origin-access-control/sim-cf-origin-access-control-registry.js.map +1 -0
  279. package/dist/service/cloudfront/origin-access-control/sim-cf-origin-access-control.d.ts +61 -0
  280. package/dist/service/cloudfront/origin-access-control/sim-cf-origin-access-control.d.ts.map +1 -0
  281. package/dist/service/cloudfront/origin-access-control/sim-cf-origin-access-control.js +53 -0
  282. package/dist/service/cloudfront/origin-access-control/sim-cf-origin-access-control.js.map +1 -0
  283. package/dist/service/cloudfront/resolver/sim-cloudfront-path-pattern.d.ts +10 -0
  284. package/dist/service/cloudfront/resolver/sim-cloudfront-path-pattern.d.ts.map +1 -1
  285. package/dist/service/cloudfront/resolver/sim-cloudfront-path-pattern.js +22 -2
  286. package/dist/service/cloudfront/resolver/sim-cloudfront-path-pattern.js.map +1 -1
  287. package/dist/service/cloudfront/sim-cloudfront-commands.d.ts +3 -0
  288. package/dist/service/cloudfront/sim-cloudfront-commands.d.ts.map +1 -1
  289. package/dist/service/cloudfront/sim-cloudfront-commands.js +3 -0
  290. package/dist/service/cloudfront/sim-cloudfront-commands.js.map +1 -1
  291. package/dist/service/cloudfront/sim-cloudfront-service-principal.d.ts +9 -0
  292. package/dist/service/cloudfront/sim-cloudfront-service-principal.d.ts.map +1 -0
  293. package/dist/service/cloudfront/sim-cloudfront-service-principal.js +9 -0
  294. package/dist/service/cloudfront/sim-cloudfront-service-principal.js.map +1 -0
  295. package/dist/service/cloudfront/sim-cloudfront.d.ts +19 -0
  296. package/dist/service/cloudfront/sim-cloudfront.d.ts.map +1 -1
  297. package/dist/service/cloudfront/sim-cloudfront.js +26 -0
  298. package/dist/service/cloudfront/sim-cloudfront.js.map +1 -1
  299. package/dist/service/cognito/command/auth/auth.command.d.ts.map +1 -1
  300. package/dist/service/cognito/command/auth/sim-cognito-new-password-challenge.d.ts.map +1 -1
  301. package/dist/service/cognito/command/auth/sim-cognito-new-password-challenge.js +0 -1
  302. package/dist/service/cognito/command/auth/sim-cognito-new-password-challenge.js.map +1 -1
  303. package/dist/service/cognito/command/client/list-user-pool-clients.command.d.ts.map +1 -1
  304. package/dist/service/cognito/command/user-pool/user-pool.command.d.ts.map +1 -1
  305. package/dist/service/cognito/serve/sim-cognito-openid-configuration.d.ts.map +1 -1
  306. package/dist/service/cognito/serve/sim-cognito-openid-configuration.js.map +1 -1
  307. package/dist/service/cognito/user-pool/auth/sim-cognito-secret-hash.js +1 -1
  308. package/dist/service/cognito/user-pool/client/sim-cognito-token-lifetime.d.ts.map +1 -1
  309. package/dist/service/cognito/user-pool/client/sim-cognito-token-lifetime.js.map +1 -1
  310. package/dist/service/cognito/user-pool/message/sim-cognito-message-occasion.d.ts.map +1 -1
  311. package/dist/service/cognito/user-pool/message/sim-cognito-verification-messages.d.ts.map +1 -1
  312. package/dist/service/cognito/user-pool/message/sim-cognito-verification-messages.js.map +1 -1
  313. package/dist/service/cognito/user-pool/sim-cognito-user-pool-settings.d.ts.map +1 -1
  314. package/dist/service/cognito/user-pool/sim-cognito-user-pool-settings.js.map +1 -1
  315. package/dist/service/cognito/user-pool/token/sim-cognito-access-token.d.ts.map +1 -1
  316. package/dist/service/cognito/user-pool/token/sim-cognito-access-token.js +0 -2
  317. package/dist/service/cognito/user-pool/token/sim-cognito-access-token.js.map +1 -1
  318. package/dist/service/cognito/user-pool/token/sim-cognito-group-override.js +1 -1
  319. package/dist/service/cognito/user-pool/token/sim-cognito-id-token.d.ts.map +1 -1
  320. package/dist/service/cognito/user-pool/token/sim-cognito-id-token.js +0 -2
  321. package/dist/service/cognito/user-pool/token/sim-cognito-id-token.js.map +1 -1
  322. package/dist/service/cognito/user-pool/token/sim-cognito-token-claims.d.ts.map +1 -1
  323. package/dist/service/cognito/user-pool/token/sim-cognito-token-claims.js.map +1 -1
  324. package/dist/service/cognito/user-pool/trigger/sim-aws-cognito-trigger-functions.d.ts.map +1 -1
  325. package/dist/service/cognito/user-pool/trigger/sim-aws-cognito-trigger-functions.js +1 -0
  326. package/dist/service/cognito/user-pool/trigger/sim-aws-cognito-trigger-functions.js.map +1 -1
  327. package/dist/service/cognito/user-pool/user/sim-cognito-user-status.d.ts.map +1 -1
  328. package/dist/service/cognito/user-pool/user/sim-cognito-user-status.js.map +1 -1
  329. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-properties.d.ts.map +1 -1
  330. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-properties.js.map +1 -1
  331. package/dist/service/dynamodb/command/batch/batch.command.d.ts.map +1 -1
  332. package/dist/service/dynamodb/command/batch/sim-dynamodb-batch-reads.d.ts.map +1 -1
  333. package/dist/service/dynamodb/command/batch/sim-dynamodb-batch-reads.js.map +1 -1
  334. package/dist/service/dynamodb/command/batch/sim-dynamodb-batch-writes.d.ts.map +1 -1
  335. package/dist/service/dynamodb/command/batch/sim-dynamodb-batch-writes.js.map +1 -1
  336. package/dist/service/dynamodb/command/item/item.command.d.ts.map +1 -1
  337. package/dist/service/dynamodb/command/item/item.types.d.ts.map +1 -1
  338. package/dist/service/dynamodb/command/item/sim-dynamodb-condition-check.d.ts.map +1 -1
  339. package/dist/service/dynamodb/command/item/sim-dynamodb-condition-check.js.map +1 -1
  340. package/dist/service/dynamodb/command/item/sim-dynamodb-item-page.d.ts.map +1 -1
  341. package/dist/service/dynamodb/command/item/sim-dynamodb-item-page.js.map +1 -1
  342. package/dist/service/dynamodb/command/item/sim-dynamodb-unsimulated-item-write-input.d.ts.map +1 -1
  343. package/dist/service/dynamodb/command/item/sim-dynamodb-unsimulated-item-write-input.js.map +1 -1
  344. package/dist/service/dynamodb/command/query/query.command.d.ts.map +1 -1
  345. package/dist/service/dynamodb/command/query/sim-dynamodb-query-start-key.d.ts.map +1 -1
  346. package/dist/service/dynamodb/command/query/sim-dynamodb-query-start-key.js.map +1 -1
  347. package/dist/service/dynamodb/command/read/sim-dynamodb-read-answer.d.ts.map +1 -1
  348. package/dist/service/dynamodb/command/read/sim-dynamodb-read-answer.js.map +1 -1
  349. package/dist/service/dynamodb/command/scan/scan.command.d.ts.map +1 -1
  350. package/dist/service/dynamodb/command/scan/sim-dynamodb-scan-start-key.d.ts.map +1 -1
  351. package/dist/service/dynamodb/command/scan/sim-dynamodb-scan-start-key.js.map +1 -1
  352. package/dist/service/dynamodb/command/stream/stream.types.d.ts.map +1 -1
  353. package/dist/service/dynamodb/command/table/table.command.d.ts.map +1 -1
  354. package/dist/service/dynamodb/command/table/table.types.d.ts.map +1 -1
  355. package/dist/service/dynamodb/command/time-to-live/time-to-live.command.d.ts.map +1 -1
  356. package/dist/service/dynamodb/command/time-to-live/time-to-live.types.d.ts.map +1 -1
  357. package/dist/service/dynamodb/command/transact/transact.command.d.ts.map +1 -1
  358. package/dist/service/dynamodb/document/sim-dynamodb-document-path.js +2 -2
  359. package/dist/service/dynamodb/error/dynamodb.error.d.ts.map +1 -1
  360. package/dist/service/dynamodb/error/dynamodb.error.js.map +1 -1
  361. package/dist/service/dynamodb/expression/sim-dynamodb-document-path.d.ts.map +1 -1
  362. package/dist/service/dynamodb/expression/sim-dynamodb-document-path.js.map +1 -1
  363. package/dist/service/dynamodb/expression/sim-dynamodb-expression-parameters.d.ts.map +1 -1
  364. package/dist/service/dynamodb/expression/sim-dynamodb-expression-parameters.js.map +1 -1
  365. package/dist/service/dynamodb/expression/sim-dynamodb-expression-token.d.ts.map +1 -1
  366. package/dist/service/dynamodb/expression/update/sim-dynamodb-update-erase.js +1 -1
  367. package/dist/service/dynamodb/expression/update/sim-dynamodb-update-write.js +1 -1
  368. package/dist/service/dynamodb/item/sim-dynamodb-number.js +1 -1
  369. package/dist/service/dynamodb/secondary-index/sim-dynamodb-local-secondary-indexes.d.ts.map +1 -1
  370. package/dist/service/dynamodb/secondary-index/sim-dynamodb-local-secondary-indexes.js.map +1 -1
  371. package/dist/service/dynamodb/secondary-index/sim-dynamodb-secondary-indexes.d.ts.map +1 -1
  372. package/dist/service/dynamodb/secondary-index/sim-dynamodb-secondary-indexes.js.map +1 -1
  373. package/dist/service/dynamodb/stream/sim-dynamodb-stream.types.d.ts.map +1 -1
  374. package/dist/service/dynamodb/stream/sim-dynamodb-streamed-orders.factory.js +1 -1
  375. package/dist/service/dynamodb/table/sim-dynamodb-item-key.d.ts.map +1 -1
  376. package/dist/service/dynamodb/table/sim-dynamodb-item-key.js.map +1 -1
  377. package/dist/service/iam/authorize/context/sim-iam-auth-z-context-builder.d.ts.map +1 -1
  378. package/dist/service/iam/authorize/context/sim-iam-auth-z-context-builder.js.map +1 -1
  379. package/dist/service/iam/authorize/sim-iam-wildcard.js +1 -1
  380. package/dist/service/iam/cfn/policy/sim-cfn-iam-policy-creator.js +1 -1
  381. package/dist/service/iam/command/policy/create-policy/create-policy-record-factory.d.ts.map +1 -1
  382. package/dist/service/iam/command/policy/create-policy/create-policy-record-factory.js.map +1 -1
  383. package/dist/service/iam/command/policy/create-policy/create-policy.command.d.ts.map +1 -1
  384. package/dist/service/iam/command/policy/put-role-policy/put-role-policy.command.d.ts.map +1 -1
  385. package/dist/service/iam/command/policy/put-user-policy/put-user-policy.command.d.ts.map +1 -1
  386. package/dist/service/iam/command/role/create-role/create-role-record-factory.d.ts.map +1 -1
  387. package/dist/service/iam/command/role/create-role/create-role-record-factory.js.map +1 -1
  388. package/dist/service/iam/credential/session/sim-iam-session-manager.d.ts.map +1 -1
  389. package/dist/service/iam/credential/session/sim-iam-session-manager.js +2 -4
  390. package/dist/service/iam/credential/session/sim-iam-session-manager.js.map +1 -1
  391. package/dist/service/iam/policy/sim-iam-pol-document-statements.js +1 -1
  392. package/dist/service/iam/policy/sim-iam-pol-document-statements.js.map +1 -1
  393. package/dist/service/iam/policy/sim-iam-policy.d.ts.map +1 -1
  394. package/dist/service/iam/principal/sim-iam-principal.d.ts.map +1 -1
  395. package/dist/service/iam/registry/sim-iam-registry.d.ts.map +1 -1
  396. package/dist/service/iam/registry/sim-iam-registry.js +2 -3
  397. package/dist/service/iam/registry/sim-iam-registry.js.map +1 -1
  398. package/dist/service/iam/request/error/sim-aws-request-auth.error.d.ts.map +1 -1
  399. package/dist/service/iam/request/error/sim-aws-request-auth.error.js.map +1 -1
  400. package/dist/service/iam/role/arn/sim-iam-role-arn.js.map +1 -1
  401. package/dist/service/iam/role/sim-iam-role.d.ts.map +1 -1
  402. package/dist/service/iam/user/arn/sim-iam-user-arn.js.map +1 -1
  403. package/dist/service/iam/validate/sim-iam-policy-document-validator.js +1 -1
  404. package/dist/service/iam/validate/sim-iam-policy-document-validator.js.map +1 -1
  405. package/dist/service/iam/validate/trust/sim-iam-trust-policy-document-validator.js +1 -1
  406. package/dist/service/iam/validate/trust/sim-iam-trust-policy-document-validator.js.map +1 -1
  407. package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-properties.d.ts.map +1 -1
  408. package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-properties.js.map +1 -1
  409. package/dist/service/lambda/cfn/function/sim-cfn-lambda-runtime-skip.d.ts +5 -1
  410. package/dist/service/lambda/cfn/function/sim-cfn-lambda-runtime-skip.d.ts.map +1 -1
  411. package/dist/service/lambda/cfn/function/sim-cfn-lambda-runtime-skip.js +5 -1
  412. package/dist/service/lambda/cfn/function/sim-cfn-lambda-runtime-skip.js.map +1 -1
  413. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-deleter.d.ts.map +1 -1
  414. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-deleter.js.map +1 -1
  415. package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-input.d.ts.map +1 -1
  416. package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-input.js.map +1 -1
  417. package/dist/service/lambda/event-source/queue/sim-lambda-event-source-queues.d.ts.map +1 -1
  418. package/dist/service/lambda/event-source/queue/sim-lambda-event-source-queues.js.map +1 -1
  419. package/dist/service/lambda/event-source/sim-lambda-event-source-arn.d.ts.map +1 -1
  420. package/dist/service/lambda/event-source/sim-lambda-event-source-arn.js.map +1 -1
  421. package/dist/service/lambda/event-source/sim-lambda-event-source-mapping.d.ts.map +1 -1
  422. package/dist/service/lambda/event-source/sim-lambda-event-source-mapping.js.map +1 -1
  423. package/dist/service/lambda/function/code/sim-lambda-vm-zip-code-factory.d.ts.map +1 -1
  424. package/dist/service/lambda/function/code/sim-lambda-vm-zip-code-factory.js.map +1 -1
  425. package/dist/service/lambda/function/environment/sim-lambda-environment-conflicts.js +2 -2
  426. package/dist/service/lambda/function/environment/sim-lambda-process-environment.js +1 -1
  427. package/dist/service/lambda/function/invoke/sim-lambda-handler-runner.js +1 -1
  428. package/dist/service/lambda/function/invoke/sim-lambda-handler-runner.js.map +1 -1
  429. package/dist/service/lambda/function/sim-lambda-function.d.ts.map +1 -1
  430. package/dist/service/lambda/function/sim-lambda-function.js.map +1 -1
  431. package/dist/service/rekognition/face/sim-rekognition-face-detail-builder.d.ts.map +1 -1
  432. package/dist/service/rekognition/face/sim-rekognition-face-detail-builder.js +1 -1
  433. package/dist/service/rekognition/face/sim-rekognition-face-detail-builder.js.map +1 -1
  434. package/dist/service/rekognition/face/sim-rekognition-face-landmark-points.js +2 -2
  435. package/dist/service/rekognition/label/sim-rekognition-label-declaration.d.ts.map +1 -1
  436. package/dist/service/rekognition/label/sim-rekognition-label-declaration.js.map +1 -1
  437. package/dist/service/rekognition/moderation/sim-rekognition-moderation-result.d.ts.map +1 -1
  438. package/dist/service/rekognition/moderation/sim-rekognition-moderation-result.js.map +1 -1
  439. package/dist/service/rekognition/sample/sim-rekognition-sample-image-files.js +1 -1
  440. package/dist/service/route53/command/list-resource-record-sets/list-resource-record-sets.command.d.ts.map +1 -1
  441. package/dist/service/route53/command/list-resource-record-sets/record-set-output.d.ts.map +1 -1
  442. package/dist/service/route53/command/list-resource-record-sets/record-set-output.js +2 -4
  443. package/dist/service/route53/command/list-resource-record-sets/record-set-output.js.map +1 -1
  444. package/dist/service/route53/dns/dns-record-type.d.ts.map +1 -1
  445. package/dist/service/route53/dns/dns-record-type.js +2 -4
  446. package/dist/service/route53/dns/dns-record-type.js.map +1 -1
  447. package/dist/service/s3/bucket/sim-s3-bucket-access.d.ts +5 -0
  448. package/dist/service/s3/bucket/sim-s3-bucket-access.d.ts.map +1 -1
  449. package/dist/service/s3/bucket/sim-s3-bucket-access.js +13 -1
  450. package/dist/service/s3/bucket/sim-s3-bucket-access.js.map +1 -1
  451. package/dist/service/s3/bucket/sim-s3-bucket-system-metadata.d.ts +29 -0
  452. package/dist/service/s3/bucket/sim-s3-bucket-system-metadata.d.ts.map +1 -0
  453. package/dist/service/s3/bucket/sim-s3-bucket-system-metadata.js +32 -0
  454. package/dist/service/s3/bucket/sim-s3-bucket-system-metadata.js.map +1 -0
  455. package/dist/service/s3/bucket/sim-s3-bucket.d.ts +11 -0
  456. package/dist/service/s3/bucket/sim-s3-bucket.d.ts.map +1 -1
  457. package/dist/service/s3/bucket/sim-s3-bucket.js +13 -0
  458. package/dist/service/s3/bucket/sim-s3-bucket.js.map +1 -1
  459. package/dist/service/s3/bucket/sim-s3-public-read.fixture.d.ts +17 -0
  460. package/dist/service/s3/bucket/sim-s3-public-read.fixture.d.ts.map +1 -0
  461. package/dist/service/s3/bucket/sim-s3-public-read.fixture.js +40 -0
  462. package/dist/service/s3/bucket/sim-s3-public-read.fixture.js.map +1 -0
  463. package/dist/service/s3/bucket/website/redirect/s3-bucket-website-redirects.js +1 -1
  464. package/dist/service/s3/bucket/website/redirect/s3-bucket-website-redirects.js.map +1 -1
  465. package/dist/service/s3/command/authorize/sim-s3-condition-context.d.ts +14 -0
  466. package/dist/service/s3/command/authorize/sim-s3-condition-context.d.ts.map +1 -0
  467. package/dist/service/s3/command/authorize/sim-s3-condition-context.js +22 -0
  468. package/dist/service/s3/command/authorize/sim-s3-condition-context.js.map +1 -0
  469. package/dist/service/s3/command/create-bucket/create-bucket.handler.d.ts +2 -5
  470. package/dist/service/s3/command/create-bucket/create-bucket.handler.d.ts.map +1 -1
  471. package/dist/service/s3/command/create-bucket/create-bucket.handler.js +2 -0
  472. package/dist/service/s3/command/create-bucket/create-bucket.handler.js.map +1 -1
  473. package/dist/service/s3/command/delete-bucket/delete-bucket-authorizer.d.ts +2 -2
  474. package/dist/service/s3/command/delete-bucket/delete-bucket-authorizer.d.ts.map +1 -1
  475. package/dist/service/s3/command/delete-bucket/delete-bucket-authorizer.js +4 -2
  476. package/dist/service/s3/command/delete-bucket/delete-bucket-authorizer.js.map +1 -1
  477. package/dist/service/s3/command/delete-bucket/delete-bucket.handler.d.ts +2 -5
  478. package/dist/service/s3/command/delete-bucket/delete-bucket.handler.d.ts.map +1 -1
  479. package/dist/service/s3/command/delete-bucket/delete-bucket.handler.js +1 -1
  480. package/dist/service/s3/command/delete-bucket/delete-bucket.handler.js.map +1 -1
  481. package/dist/service/s3/command/delete-bucket-policy/delete-bucket-policy-authorizer.d.ts +2 -2
  482. package/dist/service/s3/command/delete-bucket-policy/delete-bucket-policy-authorizer.d.ts.map +1 -1
  483. package/dist/service/s3/command/delete-bucket-policy/delete-bucket-policy-authorizer.js +4 -2
  484. package/dist/service/s3/command/delete-bucket-policy/delete-bucket-policy-authorizer.js.map +1 -1
  485. package/dist/service/s3/command/delete-bucket-policy/delete-bucket-policy.handler.d.ts +2 -5
  486. package/dist/service/s3/command/delete-bucket-policy/delete-bucket-policy.handler.d.ts.map +1 -1
  487. package/dist/service/s3/command/delete-bucket-policy/delete-bucket-policy.handler.js +1 -1
  488. package/dist/service/s3/command/delete-bucket-policy/delete-bucket-policy.handler.js.map +1 -1
  489. package/dist/service/s3/command/delete-object/delete-object-authorizer.d.ts +2 -2
  490. package/dist/service/s3/command/delete-object/delete-object-authorizer.d.ts.map +1 -1
  491. package/dist/service/s3/command/delete-object/delete-object-authorizer.js +4 -2
  492. package/dist/service/s3/command/delete-object/delete-object-authorizer.js.map +1 -1
  493. package/dist/service/s3/command/delete-object/delete-object.handler.d.ts +2 -5
  494. package/dist/service/s3/command/delete-object/delete-object.handler.d.ts.map +1 -1
  495. package/dist/service/s3/command/delete-object/delete-object.handler.js +1 -1
  496. package/dist/service/s3/command/delete-object/delete-object.handler.js.map +1 -1
  497. package/dist/service/s3/command/delete-objects/delete-objects-key-removal.d.ts +2 -2
  498. package/dist/service/s3/command/delete-objects/delete-objects-key-removal.d.ts.map +1 -1
  499. package/dist/service/s3/command/delete-objects/delete-objects-key-removal.js +2 -2
  500. package/dist/service/s3/command/delete-objects/delete-objects-key-removal.js.map +1 -1
  501. package/dist/service/s3/command/delete-objects/delete-objects.handler.d.ts +2 -5
  502. package/dist/service/s3/command/delete-objects/delete-objects.handler.d.ts.map +1 -1
  503. package/dist/service/s3/command/delete-objects/delete-objects.handler.js +1 -1
  504. package/dist/service/s3/command/delete-objects/delete-objects.handler.js.map +1 -1
  505. package/dist/service/s3/command/delete-public-access-block/delete-public-access-block.handler.d.ts +2 -5
  506. package/dist/service/s3/command/delete-public-access-block/delete-public-access-block.handler.d.ts.map +1 -1
  507. package/dist/service/s3/command/delete-public-access-block/delete-public-access-block.handler.js +1 -1
  508. package/dist/service/s3/command/delete-public-access-block/delete-public-access-block.handler.js.map +1 -1
  509. package/dist/service/s3/command/get-bucket-notification-configuration/get-bucket-notification-configuration.command.d.ts.map +1 -1
  510. package/dist/service/s3/command/get-bucket-notification-configuration/get-bucket-notification-configuration.handler.d.ts +2 -5
  511. package/dist/service/s3/command/get-bucket-notification-configuration/get-bucket-notification-configuration.handler.d.ts.map +1 -1
  512. package/dist/service/s3/command/get-bucket-notification-configuration/get-bucket-notification-configuration.handler.js +1 -1
  513. package/dist/service/s3/command/get-bucket-notification-configuration/get-bucket-notification-configuration.handler.js.map +1 -1
  514. package/dist/service/s3/command/get-bucket-policy/get-bucket-policy-authorizer.d.ts +2 -2
  515. package/dist/service/s3/command/get-bucket-policy/get-bucket-policy-authorizer.d.ts.map +1 -1
  516. package/dist/service/s3/command/get-bucket-policy/get-bucket-policy-authorizer.js +4 -2
  517. package/dist/service/s3/command/get-bucket-policy/get-bucket-policy-authorizer.js.map +1 -1
  518. package/dist/service/s3/command/get-bucket-policy/get-bucket-policy.handler.d.ts +2 -5
  519. package/dist/service/s3/command/get-bucket-policy/get-bucket-policy.handler.d.ts.map +1 -1
  520. package/dist/service/s3/command/get-bucket-policy/get-bucket-policy.handler.js +1 -1
  521. package/dist/service/s3/command/get-bucket-policy/get-bucket-policy.handler.js.map +1 -1
  522. package/dist/service/s3/command/get-object/get-object-authorizer.d.ts +6 -2
  523. package/dist/service/s3/command/get-object/get-object-authorizer.d.ts.map +1 -1
  524. package/dist/service/s3/command/get-object/get-object-authorizer.js +8 -2
  525. package/dist/service/s3/command/get-object/get-object-authorizer.js.map +1 -1
  526. package/dist/service/s3/command/get-object/get-object.handler.d.ts +2 -5
  527. package/dist/service/s3/command/get-object/get-object.handler.d.ts.map +1 -1
  528. package/dist/service/s3/command/get-object/get-object.handler.js +1 -1
  529. package/dist/service/s3/command/get-object/get-object.handler.js.map +1 -1
  530. package/dist/service/s3/command/get-public-access-block/get-public-access-block.handler.d.ts +2 -5
  531. package/dist/service/s3/command/get-public-access-block/get-public-access-block.handler.d.ts.map +1 -1
  532. package/dist/service/s3/command/get-public-access-block/get-public-access-block.handler.js +1 -1
  533. package/dist/service/s3/command/get-public-access-block/get-public-access-block.handler.js.map +1 -1
  534. package/dist/service/s3/command/list-buckets/list-buckets-authorizer.d.ts +2 -2
  535. package/dist/service/s3/command/list-buckets/list-buckets-authorizer.d.ts.map +1 -1
  536. package/dist/service/s3/command/list-buckets/list-buckets-authorizer.js +4 -2
  537. package/dist/service/s3/command/list-buckets/list-buckets-authorizer.js.map +1 -1
  538. package/dist/service/s3/command/list-buckets/list-buckets.handler.d.ts +2 -5
  539. package/dist/service/s3/command/list-buckets/list-buckets.handler.d.ts.map +1 -1
  540. package/dist/service/s3/command/list-buckets/list-buckets.handler.js +1 -1
  541. package/dist/service/s3/command/list-buckets/list-buckets.handler.js.map +1 -1
  542. package/dist/service/s3/command/list-objects/list-objects-authorizer.d.ts +2 -2
  543. package/dist/service/s3/command/list-objects/list-objects-authorizer.d.ts.map +1 -1
  544. package/dist/service/s3/command/list-objects/list-objects-authorizer.js +3 -1
  545. package/dist/service/s3/command/list-objects/list-objects-authorizer.js.map +1 -1
  546. package/dist/service/s3/command/list-objects/list-objects.handler.d.ts +2 -5
  547. package/dist/service/s3/command/list-objects/list-objects.handler.d.ts.map +1 -1
  548. package/dist/service/s3/command/list-objects/list-objects.handler.js +1 -1
  549. package/dist/service/s3/command/list-objects/list-objects.handler.js.map +1 -1
  550. package/dist/service/s3/command/notification/sim-s3-notification-authorizer.d.ts +3 -3
  551. package/dist/service/s3/command/notification/sim-s3-notification-authorizer.d.ts.map +1 -1
  552. package/dist/service/s3/command/notification/sim-s3-notification-authorizer.js +8 -6
  553. package/dist/service/s3/command/notification/sim-s3-notification-authorizer.js.map +1 -1
  554. package/dist/service/s3/command/public-access-block/sim-s3-public-access-block-authorizer.d.ts +3 -3
  555. package/dist/service/s3/command/public-access-block/sim-s3-public-access-block-authorizer.d.ts.map +1 -1
  556. package/dist/service/s3/command/public-access-block/sim-s3-public-access-block-authorizer.js +8 -6
  557. package/dist/service/s3/command/public-access-block/sim-s3-public-access-block-authorizer.js.map +1 -1
  558. package/dist/service/s3/command/put-bucket-notification-configuration/put-bucket-notification-configuration.command.d.ts.map +1 -1
  559. package/dist/service/s3/command/put-bucket-notification-configuration/put-bucket-notification-configuration.handler.d.ts +2 -5
  560. package/dist/service/s3/command/put-bucket-notification-configuration/put-bucket-notification-configuration.handler.d.ts.map +1 -1
  561. package/dist/service/s3/command/put-bucket-notification-configuration/put-bucket-notification-configuration.handler.js +1 -1
  562. package/dist/service/s3/command/put-bucket-notification-configuration/put-bucket-notification-configuration.handler.js.map +1 -1
  563. package/dist/service/s3/command/put-bucket-policy/put-bucket-policy-authorizer.d.ts +2 -2
  564. package/dist/service/s3/command/put-bucket-policy/put-bucket-policy-authorizer.d.ts.map +1 -1
  565. package/dist/service/s3/command/put-bucket-policy/put-bucket-policy-authorizer.js +4 -2
  566. package/dist/service/s3/command/put-bucket-policy/put-bucket-policy-authorizer.js.map +1 -1
  567. package/dist/service/s3/command/put-bucket-policy/put-bucket-policy.handler.d.ts +2 -5
  568. package/dist/service/s3/command/put-bucket-policy/put-bucket-policy.handler.d.ts.map +1 -1
  569. package/dist/service/s3/command/put-bucket-policy/put-bucket-policy.handler.js +1 -1
  570. package/dist/service/s3/command/put-bucket-policy/put-bucket-policy.handler.js.map +1 -1
  571. package/dist/service/s3/command/put-bucket-website/put-bucket-website-authorizer.d.ts +2 -2
  572. package/dist/service/s3/command/put-bucket-website/put-bucket-website-authorizer.d.ts.map +1 -1
  573. package/dist/service/s3/command/put-bucket-website/put-bucket-website-authorizer.js +4 -2
  574. package/dist/service/s3/command/put-bucket-website/put-bucket-website-authorizer.js.map +1 -1
  575. package/dist/service/s3/command/put-bucket-website/put-bucket-website.command.d.ts.map +1 -1
  576. package/dist/service/s3/command/put-bucket-website/put-bucket-website.handler.d.ts +2 -5
  577. package/dist/service/s3/command/put-bucket-website/put-bucket-website.handler.d.ts.map +1 -1
  578. package/dist/service/s3/command/put-bucket-website/put-bucket-website.handler.js +1 -1
  579. package/dist/service/s3/command/put-bucket-website/put-bucket-website.handler.js.map +1 -1
  580. package/dist/service/s3/command/put-object/put-object-authorizer.d.ts +2 -2
  581. package/dist/service/s3/command/put-object/put-object-authorizer.d.ts.map +1 -1
  582. package/dist/service/s3/command/put-object/put-object-authorizer.js +4 -2
  583. package/dist/service/s3/command/put-object/put-object-authorizer.js.map +1 -1
  584. package/dist/service/s3/command/put-object/put-object.handler.d.ts +2 -5
  585. package/dist/service/s3/command/put-object/put-object.handler.d.ts.map +1 -1
  586. package/dist/service/s3/command/put-object/put-object.handler.js +1 -1
  587. package/dist/service/s3/command/put-object/put-object.handler.js.map +1 -1
  588. package/dist/service/s3/command/put-public-access-block/put-public-access-block.command.d.ts.map +1 -1
  589. package/dist/service/s3/command/put-public-access-block/put-public-access-block.handler.d.ts +2 -5
  590. package/dist/service/s3/command/put-public-access-block/put-public-access-block.handler.d.ts.map +1 -1
  591. package/dist/service/s3/command/put-public-access-block/put-public-access-block.handler.js +1 -1
  592. package/dist/service/s3/command/put-public-access-block/put-public-access-block.handler.js.map +1 -1
  593. package/dist/service/s3/command/sim-s3-request-options.d.ts +40 -0
  594. package/dist/service/s3/command/sim-s3-request-options.d.ts.map +1 -1
  595. package/dist/service/s3/command/sim-s3-request-options.js +19 -1
  596. package/dist/service/s3/command/sim-s3-request-options.js.map +1 -1
  597. package/dist/service/s3/index.d.ts +2 -0
  598. package/dist/service/s3/index.d.ts.map +1 -1
  599. package/dist/service/s3/mount/sim-s3-mount-directory-events.js +1 -1
  600. package/dist/service/s3/mount/sim-s3-mount.type.d.ts +27 -0
  601. package/dist/service/s3/mount/sim-s3-mount.type.d.ts.map +1 -1
  602. package/dist/service/s3/notification/destination/lambda/sim-aws-s3-notification-functions.d.ts.map +1 -1
  603. package/dist/service/s3/notification/destination/lambda/sim-aws-s3-notification-functions.js +1 -0
  604. package/dist/service/s3/notification/destination/lambda/sim-aws-s3-notification-functions.js.map +1 -1
  605. package/dist/service/s3/notification/sim-s3-notification-failures.js +1 -1
  606. package/dist/service/s3/object/s3-declared-system-metadata.d.ts +63 -0
  607. package/dist/service/s3/object/s3-declared-system-metadata.d.ts.map +1 -0
  608. package/dist/service/s3/object/s3-declared-system-metadata.js +82 -0
  609. package/dist/service/s3/object/s3-declared-system-metadata.js.map +1 -0
  610. package/dist/service/s3/object/s3-key-prefix-metadata.d.ts +32 -0
  611. package/dist/service/s3/object/s3-key-prefix-metadata.d.ts.map +1 -0
  612. package/dist/service/s3/object/s3-key-prefix-metadata.js +25 -0
  613. package/dist/service/s3/object/s3-key-prefix-metadata.js.map +1 -0
  614. package/dist/service/s3/object/s3-system-metadata-declaration.type.d.ts +38 -0
  615. package/dist/service/s3/object/s3-system-metadata-declaration.type.d.ts.map +1 -0
  616. package/dist/service/s3/object/s3-system-metadata-declaration.type.js +2 -0
  617. package/dist/service/s3/object/s3-system-metadata-declaration.type.js.map +1 -0
  618. package/dist/service/s3/object/s3-system-metadata.d.ts +19 -0
  619. package/dist/service/s3/object/s3-system-metadata.d.ts.map +1 -1
  620. package/dist/service/s3/object/s3-system-metadata.js +19 -0
  621. package/dist/service/s3/object/s3-system-metadata.js.map +1 -1
  622. package/dist/service/s3/serve/sim-s3-route.d.ts.map +1 -1
  623. package/dist/service/s3/serve/sim-s3-route.js.map +1 -1
  624. package/dist/service/s3/sim-s3.d.ts +7 -0
  625. package/dist/service/s3/sim-s3.d.ts.map +1 -1
  626. package/dist/service/s3/sim-s3.js +7 -0
  627. package/dist/service/s3/sim-s3.js.map +1 -1
  628. package/dist/service/s3/storage/filesystem/filesystem-path-exists.js +1 -1
  629. package/dist/service/s3/storage/filesystem/s3-filesystem-object-keys.js +1 -1
  630. package/dist/service/s3/storage/filesystem/s3-filesystem-object-metadata.d.ts +6 -1
  631. package/dist/service/s3/storage/filesystem/s3-filesystem-object-metadata.d.ts.map +1 -1
  632. package/dist/service/s3/storage/filesystem/s3-filesystem-object-metadata.js +7 -1
  633. package/dist/service/s3/storage/filesystem/s3-filesystem-object-metadata.js.map +1 -1
  634. package/dist/service/s3/storage/filesystem/s3-filesystem-storage.d.ts +8 -0
  635. package/dist/service/s3/storage/filesystem/s3-filesystem-storage.d.ts.map +1 -1
  636. package/dist/service/s3/storage/filesystem/s3-filesystem-storage.js +8 -4
  637. package/dist/service/s3/storage/filesystem/s3-filesystem-storage.js.map +1 -1
  638. package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-password-character-set.js +1 -1
  639. package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-arn.js +1 -1
  640. package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-creator.js +1 -1
  641. package/dist/service/sns/command/publish/publish.command.d.ts.map +1 -1
  642. package/dist/service/sns/delivery/sim-sns-delivery-failures.js +1 -1
  643. package/dist/service/sns/filter/sim-sns-body-subject.js +1 -1
  644. package/dist/service/sns/subscription/sim-sns-subscription-protocol.d.ts.map +1 -1
  645. package/dist/service/sns/subscription/sim-sns-subscription-protocol.js.map +1 -1
  646. package/dist/service/sqs/command/message/consume.command.d.ts.map +1 -1
  647. package/dist/service/sqs/command/message/receive.command.d.ts.map +1 -1
  648. package/dist/service/sqs/command/message/send.command.d.ts.map +1 -1
  649. package/dist/service/sqs/queue/sim-sqs-redrive-policy.js +1 -1
  650. package/dist/service/ssm/command/parameter/sim-ssm-get-parameter-commands.js +1 -1
  651. package/dist/service/sts/assume/sim-sts-assume-role-request-parser.d.ts.map +1 -1
  652. package/dist/service/sts/assume/sim-sts-assume-role-request-parser.js.map +1 -1
  653. package/dist/service/sts/auth-z/assume-role-auth-z-coordinator.d.ts.map +1 -1
  654. package/dist/service/sts/auth-z/assume-role-auth-z-coordinator.js.map +1 -1
  655. package/dist/service/sts/auth-z/assume-role-target-auth-z.d.ts.map +1 -1
  656. package/dist/service/sts/auth-z/assume-role-target-auth-z.js.map +1 -1
  657. package/dist/service/sts/auth-z/assume-role-trust-policy-authorizer.d.ts.map +1 -1
  658. package/dist/service/sts/auth-z/assume-role-trust-policy-authorizer.js.map +1 -1
  659. package/dist/util/background/background.js +2 -2
  660. package/dist/util/background/background.js.map +1 -1
  661. package/dist/util/background/non-deterministic-background.js +2 -2
  662. package/dist/util/background/non-deterministic-background.js.map +1 -1
  663. package/dist/util/clock/sim-clock-control.js +1 -1
  664. package/dist/util/filesystem/path.js +1 -1
  665. package/dist/util/filesystem/temporary-directory.d.ts +4 -1
  666. package/dist/util/filesystem/temporary-directory.d.ts.map +1 -1
  667. package/dist/util/filesystem/temporary-directory.js +8 -6
  668. package/dist/util/filesystem/temporary-directory.js.map +1 -1
  669. package/dist/util/jwt/sim-jwt-claims.js +1 -1
  670. package/dist/util/type-guard/json.d.ts.map +1 -1
  671. package/dist/util/type-guard/json.js +2 -2
  672. package/dist/util/type-guard/json.js.map +1 -1
  673. package/package.json +15 -12
  674. package/dist/service/s3/bucket/website/sim-s3-public-website.fixture.d.ts +0 -13
  675. package/dist/service/s3/bucket/website/sim-s3-public-website.fixture.d.ts.map +0 -1
  676. package/dist/service/s3/bucket/website/sim-s3-public-website.fixture.js +0 -36
  677. package/dist/service/s3/bucket/website/sim-s3-public-website.fixture.js.map +0 -1
@@ -2,6 +2,7 @@ import type { SimCloudFrontOriginConfig } from "../../command/create-distributio
2
2
  import type { SimCloudFrontDistribution } from "../sim-cloudfront-distribution.js";
3
3
  import { type SimCloudFrontS3OriginResolver } from "../../origin/s3/sim-cloudfront-s3-origin.js";
4
4
  import type { SimCfCustomOriginDispatcher } from "../../origin/custom/sim-cf-custom-origin-dispatcher.js";
5
+ import type { SimCloudFrontOriginAccessControlRegistry } from "../../origin-access-control/sim-cf-origin-access-control-registry.js";
5
6
  /**
6
7
  * Applies Origin configuration to a sim CloudFront Distribution.
7
8
  *
@@ -14,11 +15,28 @@ import type { SimCfCustomOriginDispatcher } from "../../origin/custom/sim-cf-cus
14
15
  */
15
16
  export declare class SimCloudFrontOriginConfigurator {
16
17
  private readonly s3OriginResolver;
18
+ private readonly originAccessControls;
17
19
  private readonly customOriginDispatcher?;
18
- constructor(s3OriginResolver: SimCloudFrontS3OriginResolver, customOriginDispatcher?: SimCfCustomOriginDispatcher | undefined);
20
+ constructor(s3OriginResolver: SimCloudFrontS3OriginResolver, originAccessControls: SimCloudFrontOriginAccessControlRegistry, customOriginDispatcher?: SimCfCustomOriginDispatcher | undefined);
19
21
  /**
20
22
  * Configure an Origin on a Distribution.
21
23
  */
22
24
  configure(distribution: SimCloudFrontDistribution, origin: SimCloudFrontOriginConfig): void;
25
+ /**
26
+ * Resolve the origin access control an Origin names.
27
+ *
28
+ * CloudFront refuses a Distribution whose Origin names an origin access
29
+ * control the account does not hold, so an ID nothing here created is
30
+ * refused rather than stored as written. An empty ID means no origin access
31
+ * control, which is how the CloudFront API says an Origin has none.
32
+ */
33
+ private originAccessControl;
34
+ /**
35
+ * Refuse an origin access control on a custom Origin.
36
+ *
37
+ * Every origin access control here signs for an S3 Origin, and CloudFront
38
+ * refuses one whose origin type does not match the Origin it is attached to.
39
+ */
40
+ private assertNoOriginAccessControl;
23
41
  }
24
42
  //# sourceMappingURL=sim-cloud-front-origin-configurator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sim-cloud-front-origin-configurator.d.ts","sourceRoot":"","sources":["../../../../../src/service/cloudfront/distribution/configurator/sim-cloud-front-origin-configurator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,kEAAkE,CAAC;AAClH,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAEnF,OAAO,EAEL,KAAK,6BAA6B,EACnC,MAAM,6CAA6C,CAAC;AACrD,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,wDAAwD,CAAC;AAG1G;;;;;;;;;GASG;AACH,qBAAa,+BAA+B;IAExC,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IAF1C,YACmB,gBAAgB,EAAE,6BAA6B,EAC/C,sBAAsB,CAAC,EAAE,2BAA2B,YAAA,EACnE;IAEJ;;OAEG;IACH,SAAS,CACP,YAAY,EAAE,yBAAyB,EACvC,MAAM,EAAE,yBAAyB,GAChC,IAAI,CAwCN;CACF"}
1
+ {"version":3,"file":"sim-cloud-front-origin-configurator.d.ts","sourceRoot":"","sources":["../../../../../src/service/cloudfront/distribution/configurator/sim-cloud-front-origin-configurator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,kEAAkE,CAAC;AAClH,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAEnF,OAAO,EAEL,KAAK,6BAA6B,EACnC,MAAM,6CAA6C,CAAC;AAErD,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,wDAAwD,CAAC;AAG1G,OAAO,KAAK,EAAE,wCAAwC,EAAE,MAAM,sEAAsE,CAAC;AAGrI;;;;;;;;;GASG;AACH,qBAAa,+BAA+B;IAExC,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IACrC,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IAH1C,YACmB,gBAAgB,EAAE,6BAA6B,EAC/C,oBAAoB,EAAE,wCAAwC,EAC9D,sBAAsB,CAAC,EAAE,2BAA2B,YAAA,EACnE;IAEJ;;OAEG;IACH,SAAS,CACP,YAAY,EAAE,yBAAyB,EACvC,MAAM,EAAE,yBAAyB,GAChC,IAAI,CAqDN;IAED;;;;;;;OAOG;IACH,OAAO,CAAC,mBAAmB;IA2B3B;;;;;OAKG;IACH,OAAO,CAAC,2BAA2B;CAcpC"}
@@ -1,6 +1,8 @@
1
1
  import { assertDefined } from "../../../../util/type-guard/defined.js";
2
2
  import { SimCloudFrontS3Origin, } from "../../origin/s3/sim-cloudfront-s3-origin.js";
3
+ import { assertNoSimCfS3OriginAccessIdentity } from "../../origin/s3/sim-cf-s3-origin-access-identity.js";
3
4
  import { SimCloudFrontCustomOrigin } from "../../origin/custom/sim-cloudfront-custom-origin.js";
5
+ import { SimCloudFrontInvalidOriginAccessControl } from "../../error/sim-cloudfront.error.js";
4
6
  /**
5
7
  * Applies Origin configuration to a sim CloudFront Distribution.
6
8
  *
@@ -13,9 +15,11 @@ import { SimCloudFrontCustomOrigin } from "../../origin/custom/sim-cloudfront-cu
13
15
  */
14
16
  export class SimCloudFrontOriginConfigurator {
15
17
  s3OriginResolver;
18
+ originAccessControls;
16
19
  customOriginDispatcher;
17
- constructor(s3OriginResolver, customOriginDispatcher) {
20
+ constructor(s3OriginResolver, originAccessControls, customOriginDispatcher) {
18
21
  this.s3OriginResolver = s3OriginResolver;
22
+ this.originAccessControls = originAccessControls;
19
23
  this.customOriginDispatcher = customOriginDispatcher;
20
24
  }
21
25
  /**
@@ -24,13 +28,20 @@ export class SimCloudFrontOriginConfigurator {
24
28
  configure(distribution, origin) {
25
29
  assertDefined(origin.Id, "CloudFront Origin Id");
26
30
  assertDefined(origin.DomainName, "CloudFront Origin DomainName");
31
+ const originAccessControl = this.originAccessControl(origin.Id, origin.OriginAccessControlId);
27
32
  if (origin.S3OriginConfig !== undefined) {
28
- const bucket = this.s3OriginResolver(origin.DomainName);
29
- assertDefined(bucket, `Sim S3 Bucket for CloudFront Origin ${origin.DomainName}`);
30
- distribution.addOrigin(origin.Id, new SimCloudFrontS3Origin({ bucket, originPath: origin.OriginPath }));
33
+ assertNoSimCfS3OriginAccessIdentity(origin.Id, origin.S3OriginConfig);
34
+ const originBucket = this.s3OriginResolver(origin.DomainName);
35
+ assertDefined(originBucket, `Sim S3 Bucket for CloudFront Origin ${origin.DomainName}`);
36
+ distribution.addOrigin(origin.Id, new SimCloudFrontS3Origin({
37
+ originBucket,
38
+ originPath: origin.OriginPath,
39
+ ...(originAccessControl !== undefined && { originAccessControl }),
40
+ }));
31
41
  return;
32
42
  }
33
43
  if (origin.CustomOriginConfig !== undefined) {
44
+ this.assertNoOriginAccessControl(origin.Id, originAccessControl);
34
45
  assertDefined(this.customOriginDispatcher, `Simulated AWS environment for sim CloudFront custom Origin ${origin.Id}, which a standalone SimCloudFront has no way to reach`);
35
46
  distribution.addOrigin(origin.Id, new SimCloudFrontCustomOrigin({
36
47
  originId: origin.Id,
@@ -42,5 +53,41 @@ export class SimCloudFrontOriginConfigurator {
42
53
  }
43
54
  throw new Error(`Unsupported sim CloudFront Origin type for Origin ${origin.Id}`);
44
55
  }
56
+ /**
57
+ * Resolve the origin access control an Origin names.
58
+ *
59
+ * CloudFront refuses a Distribution whose Origin names an origin access
60
+ * control the account does not hold, so an ID nothing here created is
61
+ * refused rather than stored as written. An empty ID means no origin access
62
+ * control, which is how the CloudFront API says an Origin has none.
63
+ */
64
+ originAccessControl(originId, originAccessControlId) {
65
+ if (originAccessControlId === undefined ||
66
+ originAccessControlId.length === 0) {
67
+ return undefined;
68
+ }
69
+ const originAccessControl = this.originAccessControls.byId(originAccessControlId);
70
+ if (originAccessControl === undefined) {
71
+ throw new SimCloudFrontInvalidOriginAccessControl(`Sim CloudFront Origin ${originId} names origin access control ` +
72
+ `${originAccessControlId}, which does not exist. Only an origin ` +
73
+ `access control an AWS::CloudFront::OriginAccessControl Resource ` +
74
+ `created in this simulation can be named.`);
75
+ }
76
+ return originAccessControl;
77
+ }
78
+ /**
79
+ * Refuse an origin access control on a custom Origin.
80
+ *
81
+ * Every origin access control here signs for an S3 Origin, and CloudFront
82
+ * refuses one whose origin type does not match the Origin it is attached to.
83
+ */
84
+ assertNoOriginAccessControl(originId, originAccessControl) {
85
+ if (originAccessControl === undefined) {
86
+ return;
87
+ }
88
+ throw new SimCloudFrontInvalidOriginAccessControl(`Sim CloudFront custom Origin ${originId} names origin access control ` +
89
+ `${originAccessControl.name}, which signs for an ` +
90
+ `${originAccessControl.originType} Origin`);
91
+ }
45
92
  }
46
93
  //# sourceMappingURL=sim-cloud-front-origin-configurator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sim-cloud-front-origin-configurator.js","sourceRoot":"","sources":["../../../../../src/service/cloudfront/distribution/configurator/sim-cloud-front-origin-configurator.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAC;AACvE,OAAO,EACL,qBAAqB,GAEtB,MAAM,6CAA6C,CAAC;AAErD,OAAO,EAAE,yBAAyB,EAAE,MAAM,qDAAqD,CAAC;AAEhG;;;;;;;;;GASG;AACH,MAAM,OAAO,+BAA+B;IAEvB,gBAAgB;IAChB,sBAAsB;IAFzC,YACmB,gBAA+C,EAC/C,sBAAoD;gCADpD,gBAAgB;sCAChB,sBAAsB;IACtC,CAAC;IAEJ;;OAEG;IACH,SAAS,CACP,YAAuC,EACvC,MAAiC;QAEjC,aAAa,CAAC,MAAM,CAAC,EAAE,EAAE,sBAAsB,CAAC,CAAC;QACjD,aAAa,CAAC,MAAM,CAAC,UAAU,EAAE,8BAA8B,CAAC,CAAC;QAEjE,IAAI,MAAM,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;YACxC,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YAExD,aAAa,CACX,MAAM,EACN,uCAAuC,MAAM,CAAC,UAAU,EAAE,CAC3D,CAAC;YAEF,YAAY,CAAC,SAAS,CACpB,MAAM,CAAC,EAAE,EACT,IAAI,qBAAqB,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC,CACrE,CAAC;YACF,OAAO;QACT,CAAC;QAED,IAAI,MAAM,CAAC,kBAAkB,KAAK,SAAS,EAAE,CAAC;YAC5C,aAAa,CACX,IAAI,CAAC,sBAAsB,EAC3B,8DAA8D,MAAM,CAAC,EAAE,wDAAwD,CAChI,CAAC;YAEF,YAAY,CAAC,SAAS,CACpB,MAAM,CAAC,EAAE,EACT,IAAI,yBAAyB,CAAC;gBAC5B,QAAQ,EAAE,MAAM,CAAC,EAAE;gBACnB,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,UAAU,EAAE,IAAI,CAAC,sBAAsB;aACxC,CAAC,CACH,CAAC;YACF,OAAO;QACT,CAAC;QAED,MAAM,IAAI,KAAK,CACb,qDAAqD,MAAM,CAAC,EAAE,EAAE,CACjE,CAAC;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"sim-cloud-front-origin-configurator.js","sourceRoot":"","sources":["../../../../../src/service/cloudfront/distribution/configurator/sim-cloud-front-origin-configurator.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,14 @@
1
1
  import type { SimCloudFrontDistributionConfig } from "../command/create-distribution/create-distribution.command.js";
2
2
  import type { SimCfCustomOriginDispatcher } from "../origin/custom/sim-cf-custom-origin-dispatcher.js";
3
3
  import type { SimCloudFrontS3OriginResolver } from "../origin/s3/sim-cloudfront-s3-origin.js";
4
+ import type { SimCloudFrontOriginAccessControlRegistry } from "../origin-access-control/sim-cf-origin-access-control-registry.js";
4
5
  import type { SimCloudFrontRegistry } from "../registry/sim-cloud-front-registry.js";
5
6
  import type { SimCloudFrontDistribution } from "./sim-cloudfront-distribution.js";
6
7
  interface SimCloudFrontDistributionReconfigurerProperties {
7
8
  readonly cloudFrontRegistry: SimCloudFrontRegistry;
8
9
  readonly s3OriginResolver: SimCloudFrontS3OriginResolver;
9
10
  readonly customOriginDispatcher?: SimCfCustomOriginDispatcher | undefined;
11
+ readonly originAccessControls: SimCloudFrontOriginAccessControlRegistry;
10
12
  }
11
13
  /**
12
14
  * Applies a replacement DistributionConfig to a Distribution already in place.
@@ -1 +1 @@
1
- {"version":3,"file":"sim-cf-distribution-reconfigurer.d.ts","sourceRoot":"","sources":["../../../../src/service/cloudfront/distribution/sim-cf-distribution-reconfigurer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,+DAA+D,CAAC;AACrH,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,qDAAqD,CAAC;AACvG,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,0CAA0C,CAAC;AAC9F,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAGrF,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAElF,UAAU,+CAA+C;IACvD,QAAQ,CAAC,kBAAkB,EAAE,qBAAqB,CAAC;IACnD,QAAQ,CAAC,gBAAgB,EAAE,6BAA6B,CAAC;IACzD,QAAQ,CAAC,sBAAsB,CAAC,EAAE,2BAA2B,GAAG,SAAS,CAAC;CAC3E;AAED;;;;;;;GAOG;AACH,qBAAa,qCAAqC;IAChD,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAwB;IAC3D,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAwC;IAErE,YAAY,UAAU,EAAE,+CAA+C,EAGtE;IAED;;;;;;;;OAQG;IACH,WAAW,CACT,YAAY,EAAE,yBAAyB,EACvC,kBAAkB,EAAE,+BAA+B,GAClD,IAAI,CAmBN;CACF"}
1
+ {"version":3,"file":"sim-cf-distribution-reconfigurer.d.ts","sourceRoot":"","sources":["../../../../src/service/cloudfront/distribution/sim-cf-distribution-reconfigurer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,+DAA+D,CAAC;AACrH,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,qDAAqD,CAAC;AACvG,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,0CAA0C,CAAC;AAC9F,OAAO,KAAK,EAAE,wCAAwC,EAAE,MAAM,mEAAmE,CAAC;AAClI,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAGrF,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAElF,UAAU,+CAA+C;IACvD,QAAQ,CAAC,kBAAkB,EAAE,qBAAqB,CAAC;IACnD,QAAQ,CAAC,gBAAgB,EAAE,6BAA6B,CAAC;IACzD,QAAQ,CAAC,sBAAsB,CAAC,EAAE,2BAA2B,GAAG,SAAS,CAAC;IAC1E,QAAQ,CAAC,oBAAoB,EAAE,wCAAwC,CAAC;CACzE;AAED;;;;;;;GAOG;AACH,qBAAa,qCAAqC;IAChD,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAwB;IAC3D,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAwC;IAErE,YAAY,UAAU,EAAE,+CAA+C,EAGtE;IAED;;;;;;;;OAQG;IACH,WAAW,CACT,YAAY,EAAE,yBAAyB,EACvC,kBAAkB,EAAE,+BAA+B,GAClD,IAAI,CAmBN;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"sim-cf-distribution-reconfigurer.js","sourceRoot":"","sources":["../../../../src/service/cloudfront/distribution/sim-cf-distribution-reconfigurer.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,yCAAyC,EAAE,MAAM,4DAA4D,CAAC;AAUvH;;;;;;;GAOG;AACH,MAAM,OAAO,qCAAqC;IAC/B,kBAAkB,CAAwB;IAC1C,YAAY,CAAwC;IAErE,YAAY,UAA2D;QACrE,IAAI,CAAC,kBAAkB,GAAG,UAAU,CAAC,kBAAkB,CAAC;QACxD,IAAI,CAAC,YAAY,GAAG,yCAAyC,CAAC,UAAU,CAAC,CAAC;IAC5E,CAAC;IAED;;;;;;;;OAQG;IACH,WAAW,CACT,YAAuC,EACvC,kBAAmD;QAEnD,MAAM,EAAE,cAAc,EAAE,GAAG,YAAY,CAAC;QAExC,IAAI,CAAC,kBAAkB,CAAC,mCAAmC,CACzD,kBAAkB,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE,EACvC,cAAc,CACf,CAAC;QAEF,IAAI,CAAC,kBAAkB,CAAC,8BAA8B,CAAC,cAAc,CAAC,CAAC;QAEvE,YAAY,CAAC,oBAAoB,CAAC,kBAAkB,CAAC,CAAC;QACtD,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,YAAY,EAAE,kBAAkB,CAAC,CAAC;QAE9D,KAAK,MAAM,mBAAmB,IAAI,YAAY,CAAC,uBAAuB,EAAE,EAAE,CAAC;YACzE,IAAI,CAAC,kBAAkB,CAAC,2BAA2B,CACjD,mBAAmB,EACnB,cAAc,CACf,CAAC;QACJ,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"sim-cf-distribution-reconfigurer.js","sourceRoot":"","sources":["../../../../src/service/cloudfront/distribution/sim-cf-distribution-reconfigurer.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,yCAAyC,EAAE,MAAM,4DAA4D,CAAC;AAWvH;;;;;;;GAOG;AACH,MAAM,OAAO,qCAAqC;IAC/B,kBAAkB,CAAwB;IAC1C,YAAY,CAAwC;IAErE,YAAY,UAA2D;QACrE,IAAI,CAAC,kBAAkB,GAAG,UAAU,CAAC,kBAAkB,CAAC;QACxD,IAAI,CAAC,YAAY,GAAG,yCAAyC,CAAC,UAAU,CAAC,CAAC;IAC5E,CAAC;IAED;;;;;;;;OAQG;IACH,WAAW,CACT,YAAuC,EACvC,kBAAmD;QAEnD,MAAM,EAAE,cAAc,EAAE,GAAG,YAAY,CAAC;QAExC,IAAI,CAAC,kBAAkB,CAAC,mCAAmC,CACzD,kBAAkB,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE,EACvC,cAAc,CACf,CAAC;QAEF,IAAI,CAAC,kBAAkB,CAAC,8BAA8B,CAAC,cAAc,CAAC,CAAC;QAEvE,YAAY,CAAC,oBAAoB,CAAC,kBAAkB,CAAC,CAAC;QACtD,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,YAAY,EAAE,kBAAkB,CAAC,CAAC;QAE9D,KAAK,MAAM,mBAAmB,IAAI,YAAY,CAAC,uBAAuB,EAAE,EAAE,CAAC;YACzE,IAAI,CAAC,kBAAkB,CAAC,2BAA2B,CACjD,mBAAmB,EACnB,cAAc,CACf,CAAC;QACJ,CAAC;IACH,CAAC;CACF"}
@@ -90,6 +90,26 @@ export declare class SimCloudFrontResponseHeadersPolicyAlreadyExists extends Sim
90
90
  readonly name = "ResponseHeadersPolicyAlreadyExists";
91
91
  constructor(message: string);
92
92
  }
93
+ /**
94
+ * Simulated CloudFront InvalidOriginAccessControl error.
95
+ *
96
+ * What CloudFront answers when an Origin's `OriginAccessControlId` names no
97
+ * origin access control the account holds.
98
+ */
99
+ export declare class SimCloudFrontInvalidOriginAccessControl extends SimCloudFrontError {
100
+ readonly name = "InvalidOriginAccessControl";
101
+ constructor(message: string);
102
+ }
103
+ /**
104
+ * Simulated CloudFront OriginAccessControlAlreadyExists error.
105
+ *
106
+ * CloudFront requires an origin access control name to be unique within an
107
+ * account, so a second one claiming a name is refused rather than created.
108
+ */
109
+ export declare class SimCloudFrontOriginAccessControlAlreadyExists extends SimCloudFrontError {
110
+ readonly name = "OriginAccessControlAlreadyExists";
111
+ constructor(message: string);
112
+ }
93
113
  /**
94
114
  * Simulated CloudFront DistributionNotDisabled error.
95
115
  *
@@ -1 +1 @@
1
- {"version":3,"file":"sim-cloudfront.error.d.ts","sourceRoot":"","sources":["../../../../src/service/cloudfront/error/sim-cloudfront.error.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;CAClC;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,KAAK;aAGzB,SAAS,EAAE,0BAA0B;IAFvD,YACE,OAAO,EAAE,MAAM,EACC,SAAS,GAAE,0BAA+B,EAG3D;CACF;AAED;;;;;;GAMG;AACH,qBAAa,qCAAsC,SAAQ,kBAAkB;IAC3E,SAAyB,IAAI,8BAA8B;IAE3D,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED;;;;;GAKG;AACH,qBAAa,qCAAsC,SAAQ,kBAAkB;IAC3E,SAAyB,IAAI,8BAA8B;IAE3D,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED;;GAEG;AACH,qBAAa,6BAA8B,SAAQ,kBAAkB;IACnE,SAAyB,IAAI,sBAAsB;IAEnD,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED;;GAEG;AACH,qBAAa,gCAAiC,SAAQ,kBAAkB;IACtE,SAAyB,IAAI,yBAAyB;IAEtD,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED;;GAEG;AACH,qBAAa,4BAA6B,SAAQ,kBAAkB;IAClE,SAAyB,IAAI,qBAAqB;IAElD,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED;;;;GAIG;AACH,qBAAa,+BAAgC,SAAQ,kBAAkB;IACrE,SAAyB,IAAI,wBAAwB;IAErD,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED;;;;GAIG;AACH,qBAAa,iCAAkC,SAAQ,kBAAkB;IACvE,SAAyB,IAAI,0BAA0B;IAEvD,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED;;;;GAIG;AACH,qBAAa,wCAAyC,SAAQ,kBAAkB;IAC9E,SAAyB,IAAI,iCAAiC;IAE9D,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED;;;;;GAKG;AACH,qBAAa,+CAAgD,SAAQ,kBAAkB;IACrF,SAAyB,IAAI,wCAAwC;IAErE,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED;;;;;GAKG;AACH,qBAAa,oCAAqC,SAAQ,kBAAkB;IAC1E,SAAyB,IAAI,6BAA6B;IAE1D,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF"}
1
+ {"version":3,"file":"sim-cloudfront.error.d.ts","sourceRoot":"","sources":["../../../../src/service/cloudfront/error/sim-cloudfront.error.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;CAClC;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,KAAK;aAGzB,SAAS,EAAE,0BAA0B;IAFvD,YACE,OAAO,EAAE,MAAM,EACC,SAAS,GAAE,0BAA+B,EAG3D;CACF;AAED;;;;;;GAMG;AACH,qBAAa,qCAAsC,SAAQ,kBAAkB;IAC3E,SAAyB,IAAI,8BAA8B;IAE3D,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED;;;;;GAKG;AACH,qBAAa,qCAAsC,SAAQ,kBAAkB;IAC3E,SAAyB,IAAI,8BAA8B;IAE3D,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED;;GAEG;AACH,qBAAa,6BAA8B,SAAQ,kBAAkB;IACnE,SAAyB,IAAI,sBAAsB;IAEnD,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED;;GAEG;AACH,qBAAa,gCAAiC,SAAQ,kBAAkB;IACtE,SAAyB,IAAI,yBAAyB;IAEtD,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED;;GAEG;AACH,qBAAa,4BAA6B,SAAQ,kBAAkB;IAClE,SAAyB,IAAI,qBAAqB;IAElD,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED;;;;GAIG;AACH,qBAAa,+BAAgC,SAAQ,kBAAkB;IACrE,SAAyB,IAAI,wBAAwB;IAErD,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED;;;;GAIG;AACH,qBAAa,iCAAkC,SAAQ,kBAAkB;IACvE,SAAyB,IAAI,0BAA0B;IAEvD,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED;;;;GAIG;AACH,qBAAa,wCAAyC,SAAQ,kBAAkB;IAC9E,SAAyB,IAAI,iCAAiC;IAE9D,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED;;;;;GAKG;AACH,qBAAa,+CAAgD,SAAQ,kBAAkB;IACrF,SAAyB,IAAI,wCAAwC;IAErE,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED;;;;;GAKG;AACH,qBAAa,uCAAwC,SAAQ,kBAAkB;IAC7E,SAAyB,IAAI,gCAAgC;IAE7D,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED;;;;;GAKG;AACH,qBAAa,6CAA8C,SAAQ,kBAAkB;IACnF,SAAyB,IAAI,sCAAsC;IAEnE,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED;;;;;GAKG;AACH,qBAAa,oCAAqC,SAAQ,kBAAkB;IAC1E,SAAyB,IAAI,6BAA6B;IAE1D,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF"}
@@ -105,6 +105,30 @@ export class SimCloudFrontResponseHeadersPolicyAlreadyExists extends SimCloudFro
105
105
  super(message, { httpStatusCode: 409 });
106
106
  }
107
107
  }
108
+ /**
109
+ * Simulated CloudFront InvalidOriginAccessControl error.
110
+ *
111
+ * What CloudFront answers when an Origin's `OriginAccessControlId` names no
112
+ * origin access control the account holds.
113
+ */
114
+ export class SimCloudFrontInvalidOriginAccessControl extends SimCloudFrontError {
115
+ name = "InvalidOriginAccessControl";
116
+ constructor(message) {
117
+ super(message, { httpStatusCode: 400 });
118
+ }
119
+ }
120
+ /**
121
+ * Simulated CloudFront OriginAccessControlAlreadyExists error.
122
+ *
123
+ * CloudFront requires an origin access control name to be unique within an
124
+ * account, so a second one claiming a name is refused rather than created.
125
+ */
126
+ export class SimCloudFrontOriginAccessControlAlreadyExists extends SimCloudFrontError {
127
+ name = "OriginAccessControlAlreadyExists";
128
+ constructor(message) {
129
+ super(message, { httpStatusCode: 409 });
130
+ }
131
+ }
108
132
  /**
109
133
  * Simulated CloudFront DistributionNotDisabled error.
110
134
  *
@@ -1 +1 @@
1
- {"version":3,"file":"sim-cloudfront.error.js","sourceRoot":"","sources":["../../../../src/service/cloudfront/error/sim-cloudfront.error.ts"],"names":[],"mappings":"AAOA;;GAEG;AACH,MAAM,OAAO,kBAAmB,SAAQ,KAAK;IAGzB,SAAS;IAF3B,YACE,OAAe,EACC,SAAS,GAA+B,EAAE;QAE1D,KAAK,CAAC,OAAO,CAAC,CAAC;yBAFC,SAAS;IAG3B,CAAC;CACF;AAED;;;;;;GAMG;AACH,MAAM,OAAO,qCAAsC,SAAQ,kBAAkB;IAClD,IAAI,GAAG,0BAA0B,CAAC;IAE3D,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1C,CAAC;CACF;AAED;;;;;GAKG;AACH,MAAM,OAAO,qCAAsC,SAAQ,kBAAkB;IAClD,IAAI,GAAG,0BAA0B,CAAC;IAE3D,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1C,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,6BAA8B,SAAQ,kBAAkB;IAC1C,IAAI,GAAG,kBAAkB,CAAC;IAEnD,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1C,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,gCAAiC,SAAQ,kBAAkB;IAC7C,IAAI,GAAG,qBAAqB,CAAC;IAEtD,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1C,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,4BAA6B,SAAQ,kBAAkB;IACzC,IAAI,GAAG,iBAAiB,CAAC;IAElD,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1C,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,OAAO,+BAAgC,SAAQ,kBAAkB;IAC5C,IAAI,GAAG,oBAAoB,CAAC;IAErD,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1C,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,OAAO,iCAAkC,SAAQ,kBAAkB;IAC9C,IAAI,GAAG,sBAAsB,CAAC;IAEvD,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1C,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,OAAO,wCAAyC,SAAQ,kBAAkB;IACrD,IAAI,GAAG,6BAA6B,CAAC;IAE9D,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1C,CAAC;CACF;AAED;;;;;GAKG;AACH,MAAM,OAAO,+CAAgD,SAAQ,kBAAkB;IAC5D,IAAI,GAAG,oCAAoC,CAAC;IAErE,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1C,CAAC;CACF;AAED;;;;;GAKG;AACH,MAAM,OAAO,oCAAqC,SAAQ,kBAAkB;IACjD,IAAI,GAAG,yBAAyB,CAAC;IAE1D,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1C,CAAC;CACF"}
1
+ {"version":3,"file":"sim-cloudfront.error.js","sourceRoot":"","sources":["../../../../src/service/cloudfront/error/sim-cloudfront.error.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import type { SimCloudFrontS3OriginConfig } from "../../command/create-distribution/create-distribution.command.js";
2
+ /**
3
+ * Refuse an S3 Origin that reads its Bucket as a legacy origin access identity.
4
+ *
5
+ * An origin access identity signs the Origin request as a CloudFront canonical
6
+ * user, which nothing here models. A Bucket policy granting that canonical user
7
+ * would be evaluated against an anonymous read and deny it, so the Origin would
8
+ * serve nothing and say nothing useful about why. Refusing the declaration by
9
+ * name says it instead.
10
+ *
11
+ * https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-restricting-access-to-s3.html
12
+ */
13
+ export declare function assertNoSimCfS3OriginAccessIdentity(originId: string, s3OriginConfig: SimCloudFrontS3OriginConfig): void;
14
+ //# sourceMappingURL=sim-cf-s3-origin-access-identity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cf-s3-origin-access-identity.d.ts","sourceRoot":"","sources":["../../../../../src/service/cloudfront/origin/s3/sim-cf-s3-origin-access-identity.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,kEAAkE,CAAC;AAEpH;;;;;;;;;;GAUG;AACH,wBAAgB,mCAAmC,CACjD,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,2BAA2B,GAC1C,IAAI,CAUN"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Refuse an S3 Origin that reads its Bucket as a legacy origin access identity.
3
+ *
4
+ * An origin access identity signs the Origin request as a CloudFront canonical
5
+ * user, which nothing here models. A Bucket policy granting that canonical user
6
+ * would be evaluated against an anonymous read and deny it, so the Origin would
7
+ * serve nothing and say nothing useful about why. Refusing the declaration by
8
+ * name says it instead.
9
+ *
10
+ * https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-restricting-access-to-s3.html
11
+ */
12
+ export function assertNoSimCfS3OriginAccessIdentity(originId, s3OriginConfig) {
13
+ const originAccessIdentity = s3OriginConfig.OriginAccessIdentity ?? "";
14
+ if (originAccessIdentity === "") {
15
+ return;
16
+ }
17
+ throw new Error(`Sim CloudFront Origin ${originId} sets S3OriginConfig.OriginAccessIdentity to ${originAccessIdentity}, and a legacy origin access identity is not simulated. Use an origin access control, or leave OriginAccessIdentity empty for the anonymous read CloudFront makes without one.`);
18
+ }
19
+ //# sourceMappingURL=sim-cf-s3-origin-access-identity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cf-s3-origin-access-identity.js","sourceRoot":"","sources":["../../../../../src/service/cloudfront/origin/s3/sim-cf-s3-origin-access-identity.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;GAUG;AACH,MAAM,UAAU,mCAAmC,CACjD,QAAgB,EAChB,cAA2C;IAE3C,MAAM,oBAAoB,GAAG,cAAc,CAAC,oBAAoB,IAAI,EAAE,CAAC;IAEvE,IAAI,oBAAoB,KAAK,EAAE,EAAE,CAAC;QAChC,OAAO;IACT,CAAC;IAED,MAAM,IAAI,KAAK,CACb,yBAAyB,QAAQ,gDAAgD,oBAAoB,gLAAgL,CACtR,CAAC;AACJ,CAAC"}
@@ -0,0 +1,14 @@
1
+ import type { SimS3Bucket } from "../../../s3/bucket/sim-s3-bucket.js";
2
+ import type { SimS3 } from "../../../s3/sim-s3.js";
3
+ /**
4
+ * The Bucket an S3 Origin serves, with the simulated S3 that holds it.
5
+ *
6
+ * The scope comes along with the Bucket because an Origin reads through that
7
+ * scope's GetObject command rather than out of Bucket storage, so the Bucket
8
+ * policy decides what the Origin can serve, as it does in real S3.
9
+ */
10
+ export interface SimCfS3OriginBucket {
11
+ readonly bucket: SimS3Bucket;
12
+ readonly simS3: SimS3;
13
+ }
14
+ //# sourceMappingURL=sim-cf-s3-origin-bucket.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cf-s3-origin-bucket.d.ts","sourceRoot":"","sources":["../../../../../src/service/cloudfront/origin/s3/sim-cf-s3-origin-bucket.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAC;AACvE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAEnD;;;;;;GAMG;AACH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;CACvB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=sim-cf-s3-origin-bucket.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cf-s3-origin-bucket.js","sourceRoot":"","sources":["../../../../../src/service/cloudfront/origin/s3/sim-cf-s3-origin-bucket.ts"],"names":[],"mappings":""}
@@ -0,0 +1,17 @@
1
+ import type { SimCloudFrontOriginRequest } from "../sim-cloudfront-request-response.js";
2
+ /**
3
+ * The Bucket object key an S3 Origin reads for a request.
4
+ *
5
+ * The Origin path goes in front of the request path, and the result is decoded
6
+ * and tidied into a key: repeated slashes collapse into one, and the leading
7
+ * slash goes, because an S3 object key has neither.
8
+ */
9
+ export declare class SimCfS3OriginObjectKey {
10
+ private readonly originPath;
11
+ constructor(originPath: string);
12
+ /**
13
+ * The object key one Origin request reads.
14
+ */
15
+ forRequest(request: SimCloudFrontOriginRequest): string;
16
+ }
17
+ //# sourceMappingURL=sim-cf-s3-origin-object-key.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cf-s3-origin-object-key.d.ts","sourceRoot":"","sources":["../../../../../src/service/cloudfront/origin/s3/sim-cf-s3-origin-object-key.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC;AAExF;;;;;;GAMG;AACH,qBAAa,sBAAsB;IACjC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IAEpC,YAAY,UAAU,EAAE,MAAM,EAE7B;IAED;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,0BAA0B,GAAG,MAAM,CAMtD;CACF"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * The Bucket object key an S3 Origin reads for a request.
3
+ *
4
+ * The Origin path goes in front of the request path, and the result is decoded
5
+ * and tidied into a key: repeated slashes collapse into one, and the leading
6
+ * slash goes, because an S3 object key has neither.
7
+ */
8
+ export class SimCfS3OriginObjectKey {
9
+ originPath;
10
+ constructor(originPath) {
11
+ this.originPath = originPath;
12
+ }
13
+ /**
14
+ * The object key one Origin request reads.
15
+ */
16
+ forRequest(request) {
17
+ const { pathname } = new URL(request.req.url);
18
+ return decodeURIComponent(`${this.originPath}/${pathname}`)
19
+ .replaceAll(/\/+/gu, "/")
20
+ .replace(/^\/+/u, "");
21
+ }
22
+ }
23
+ //# sourceMappingURL=sim-cf-s3-origin-object-key.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cf-s3-origin-object-key.js","sourceRoot":"","sources":["../../../../../src/service/cloudfront/origin/s3/sim-cf-s3-origin-object-key.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,MAAM,OAAO,sBAAsB;IAChB,UAAU,CAAS;IAEpC,YAAY,UAAkB;QAC5B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,UAAU,CAAC,OAAmC;QAC5C,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAE9C,OAAO,kBAAkB,CAAC,GAAG,IAAI,CAAC,UAAU,IAAI,QAAQ,EAAE,CAAC;aACxD,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC;aACxB,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAC1B,CAAC;CACF"}
@@ -0,0 +1,31 @@
1
+ import { SimIamAccessDenied } from "../../../iam/error/sim-iam.error.js";
2
+ import type { SimS3RequestOptions } from "../../../s3/command/sim-s3-request-options.js";
3
+ import { SimS3Object } from "../../../s3/object/s3-object.js";
4
+ import type { SimCfS3OriginBucket } from "./sim-cf-s3-origin-bucket.js";
5
+ /**
6
+ * Reads Objects for a CloudFront S3 Origin.
7
+ *
8
+ * The Bucket policy is the only thing that can make an Object readable, whether
9
+ * the Origin reads anonymously or as the CloudFront service principal an origin
10
+ * access control signs for. Reading through the ordinary GetObject command is
11
+ * what applies it: a Bucket whose policy covers neither answers the
12
+ * Distribution 403 here as it does in real S3.
13
+ *
14
+ * Who the read is made as comes in per Object, from `SimCfS3OriginSigner`,
15
+ * because it depends on the Distribution the request arrived at.
16
+ */
17
+ export declare class SimCfS3OriginObjectLoader {
18
+ private readonly simS3;
19
+ private readonly bucketName;
20
+ constructor(originBucket: SimCfS3OriginBucket);
21
+ /**
22
+ * Load an Object, nothing when the Bucket holds no such key, or the denial
23
+ * when the Bucket policy does not allow the read.
24
+ *
25
+ * A denial is reported rather than raised because it is an Origin response
26
+ * of its own: absence is 404 and denial is 403, and the Distribution can
27
+ * have a different custom error response for each.
28
+ */
29
+ load(objectKey: string, requestOptions: SimS3RequestOptions): Promise<SimS3Object | SimIamAccessDenied | undefined>;
30
+ }
31
+ //# sourceMappingURL=sim-cf-s3-origin-object-loader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cf-s3-origin-object-loader.d.ts","sourceRoot":"","sources":["../../../../../src/service/cloudfront/origin/s3/sim-cf-s3-origin-object-loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AAEzE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+CAA+C,CAAC;AAEzF,OAAO,EACL,WAAW,EAEZ,MAAM,iCAAiC,CAAC;AAGzC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAExE;;;;;;;;;;;GAWG;AACH,qBAAa,yBAAyB;IACpC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAQ;IAC9B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAkB;IAE7C,YAAY,YAAY,EAAE,mBAAmB,EAG5C;IAED;;;;;;;OAOG;IACG,IAAI,CACR,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,mBAAmB,GAClC,OAAO,CAAC,WAAW,GAAG,kBAAkB,GAAG,SAAS,CAAC,CAyBvD;CACF"}
@@ -0,0 +1,54 @@
1
+ import { SimIamAccessDenied } from "../../../iam/error/sim-iam.error.js";
2
+ import { SimS3NoSuchKey } from "../../../s3/error/sim-s3.error.js";
3
+ import { SimS3Object, SimS3ObjectMetadata, } from "../../../s3/object/s3-object.js";
4
+ import { simS3BodyToBuffer } from "../../../s3/storage/s3-body-buffer.js";
5
+ /**
6
+ * Reads Objects for a CloudFront S3 Origin.
7
+ *
8
+ * The Bucket policy is the only thing that can make an Object readable, whether
9
+ * the Origin reads anonymously or as the CloudFront service principal an origin
10
+ * access control signs for. Reading through the ordinary GetObject command is
11
+ * what applies it: a Bucket whose policy covers neither answers the
12
+ * Distribution 403 here as it does in real S3.
13
+ *
14
+ * Who the read is made as comes in per Object, from `SimCfS3OriginSigner`,
15
+ * because it depends on the Distribution the request arrived at.
16
+ */
17
+ export class SimCfS3OriginObjectLoader {
18
+ simS3;
19
+ bucketName;
20
+ constructor(originBucket) {
21
+ this.simS3 = originBucket.simS3;
22
+ this.bucketName = originBucket.bucket.bucketName;
23
+ }
24
+ /**
25
+ * Load an Object, nothing when the Bucket holds no such key, or the denial
26
+ * when the Bucket policy does not allow the read.
27
+ *
28
+ * A denial is reported rather than raised because it is an Origin response
29
+ * of its own: absence is 404 and denial is 403, and the Distribution can
30
+ * have a different custom error response for each.
31
+ */
32
+ async load(objectKey, requestOptions) {
33
+ try {
34
+ const output = await this.simS3.getObject({ input: { Bucket: this.bucketName, Key: objectKey } }, requestOptions);
35
+ return new SimS3Object({
36
+ key: objectKey,
37
+ body: await simS3BodyToBuffer(output.Body),
38
+ metadata: new SimS3ObjectMetadata({ ...output.Metadata }),
39
+ });
40
+ }
41
+ catch (error) {
42
+ if (error instanceof SimS3NoSuchKey) {
43
+ return undefined;
44
+ }
45
+ if (error instanceof SimIamAccessDenied) {
46
+ return error;
47
+ }
48
+ // Anything else is the Bucket itself being unreachable, which the
49
+ // Distribution has no response for and should not hide.
50
+ throw error;
51
+ }
52
+ }
53
+ }
54
+ //# sourceMappingURL=sim-cf-s3-origin-object-loader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cf-s3-origin-object-loader.js","sourceRoot":"","sources":["../../../../../src/service/cloudfront/origin/s3/sim-cf-s3-origin-object-loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AAGzE,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EACL,WAAW,EACX,mBAAmB,GACpB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAG1E;;;;;;;;;;;GAWG;AACH,MAAM,OAAO,yBAAyB;IACnB,KAAK,CAAQ;IACb,UAAU,CAAkB;IAE7C,YAAY,YAAiC;QAC3C,IAAI,CAAC,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC;QAChC,IAAI,CAAC,UAAU,GAAG,YAAY,CAAC,MAAM,CAAC,UAAU,CAAC;IACnD,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,IAAI,CACR,SAAiB,EACjB,cAAmC;QAEnC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CACvC,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,EACtD,cAAc,CACf,CAAC;YAEF,OAAO,IAAI,WAAW,CAAC;gBACrB,GAAG,EAAE,SAAS;gBACd,IAAI,EAAE,MAAM,iBAAiB,CAAC,MAAM,CAAC,IAA6B,CAAC;gBACnE,QAAQ,EAAE,IAAI,mBAAmB,CAAC,EAAE,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;aAC1D,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,cAAc,EAAE,CAAC;gBACpC,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,IAAI,KAAK,YAAY,kBAAkB,EAAE,CAAC;gBACxC,OAAO,KAAK,CAAC;YACf,CAAC;YAED,kEAAkE;YAClE,wDAAwD;YACxD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;CACF"}
@@ -1,8 +1,17 @@
1
1
  import type { SimAws } from "../../../aws/sim-aws.js";
2
- import type { SimAwsAccountRegionContainer } from "../../../aws/sim-aws-account-region-scope.js";
3
2
  import type { SimCloudFrontS3OriginResolver } from "./sim-cloudfront-s3-origin.js";
4
3
  /**
5
4
  * Create an S3 Origin Resolver backed by a simulated AWS Account/Region scope.
5
+ *
6
+ * The Bucket is resolved in the Account and Region that own it, which is not
7
+ * necessarily where the Distribution was created: serving a Bucket owned by
8
+ * one Account from a Distribution in another is ordinary, and real CloudFront
9
+ * checks neither ownership nor existence when a Distribution is created. What
10
+ * the Distribution may read is left to the Bucket policy.
11
+ *
12
+ * The simulated S3 holding the Bucket is returned with it, because that is what
13
+ * the Bucket policy is evaluated by: an Origin reads through that S3's
14
+ * GetObject command rather than out of Bucket storage.
6
15
  */
7
- export declare function makeSimCfS3OriginResolver(simAws: SimAws, scope: SimAwsAccountRegionContainer): SimCloudFrontS3OriginResolver;
16
+ export declare function makeSimCfS3OriginResolver(simAws: SimAws): SimCloudFrontS3OriginResolver;
8
17
  //# sourceMappingURL=sim-cf-s3-origin-resolver-factory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sim-cf-s3-origin-resolver-factory.d.ts","sourceRoot":"","sources":["../../../../../src/service/cloudfront/origin/s3/sim-cf-s3-origin-resolver-factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,8CAA8C,CAAC;AACjG,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,+BAA+B,CAAC;AAInF;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,4BAA4B,GAClC,6BAA6B,CAe/B"}
1
+ {"version":3,"file":"sim-cf-s3-origin-resolver-factory.d.ts","sourceRoot":"","sources":["../../../../../src/service/cloudfront/origin/s3/sim-cf-s3-origin-resolver-factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,+BAA+B,CAAC;AAInF;;;;;;;;;;;;GAYG;AACH,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,MAAM,GACb,6BAA6B,CAoB/B"}
@@ -2,17 +2,30 @@ import { bucketNameFromCfS3OriginDomainName } from "./sim-cf-s3-origin-bucket-na
2
2
  import { assertDefined } from "../../../../util/type-guard/defined.js";
3
3
  /**
4
4
  * Create an S3 Origin Resolver backed by a simulated AWS Account/Region scope.
5
+ *
6
+ * The Bucket is resolved in the Account and Region that own it, which is not
7
+ * necessarily where the Distribution was created: serving a Bucket owned by
8
+ * one Account from a Distribution in another is ordinary, and real CloudFront
9
+ * checks neither ownership nor existence when a Distribution is created. What
10
+ * the Distribution may read is left to the Bucket policy.
11
+ *
12
+ * The simulated S3 holding the Bucket is returned with it, because that is what
13
+ * the Bucket policy is evaluated by: an Origin reads through that S3's
14
+ * GetObject command rather than out of Bucket storage.
5
15
  */
6
- export function makeSimCfS3OriginResolver(simAws, scope) {
16
+ export function makeSimCfS3OriginResolver(simAws) {
7
17
  return (originDomainName) => {
8
18
  const bucketName = bucketNameFromCfS3OriginDomainName(originDomainName);
9
19
  const bucketScope = simAws.s3().findBucketScope(bucketName);
10
20
  assertDefined(bucketScope, `Unable to find sim S3 Bucket ${bucketName} for sim CloudFront S3 Origin`);
11
- return simAws
12
- .region(bucketScope.regionName)
13
- .account(scope.account.accountId)
14
- .s3()
15
- .getSimBucketByName(bucketName);
21
+ const simS3 = simAws
22
+ .accountRegionScope(bucketScope.accountId, bucketScope.regionName)
23
+ .s3();
24
+ const bucket = simS3.getSimBucketByName(bucketName);
25
+ if (bucket === undefined) {
26
+ return;
27
+ }
28
+ return { bucket, simS3 };
16
29
  };
17
30
  }
18
31
  //# sourceMappingURL=sim-cf-s3-origin-resolver-factory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sim-cf-s3-origin-resolver-factory.js","sourceRoot":"","sources":["../../../../../src/service/cloudfront/origin/s3/sim-cf-s3-origin-resolver-factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kCAAkC,EAAE,MAAM,mCAAmC,CAAC;AACvF,OAAO,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAC;AAEvE;;GAEG;AACH,MAAM,UAAU,yBAAyB,CACvC,MAAc,EACd,KAAmC;IAEnC,OAAO,CAAC,gBAAwB,EAAE,EAAE;QAClC,MAAM,UAAU,GAAG,kCAAkC,CAAC,gBAAgB,CAAC,CAAC;QACxE,MAAM,WAAW,GAAG,MAAM,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;QAC5D,aAAa,CACX,WAAW,EACX,gCAAgC,UAAU,+BAA+B,CAC1E,CAAC;QAEF,OAAO,MAAM;aACV,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC;aAC9B,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC;aAChC,EAAE,EAAE;aACJ,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACpC,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"sim-cf-s3-origin-resolver-factory.js","sourceRoot":"","sources":["../../../../../src/service/cloudfront/origin/s3/sim-cf-s3-origin-resolver-factory.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kCAAkC,EAAE,MAAM,mCAAmC,CAAC;AACvF,OAAO,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAC;AAEvE;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,yBAAyB,CACvC,MAAc;IAEd,OAAO,CAAC,gBAAwB,EAAE,EAAE;QAClC,MAAM,UAAU,GAAG,kCAAkC,CAAC,gBAAgB,CAAC,CAAC;QACxE,MAAM,WAAW,GAAG,MAAM,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;QAC5D,aAAa,CACX,WAAW,EACX,gCAAgC,UAAU,+BAA+B,CAC1E,CAAC;QAEF,MAAM,KAAK,GAAG,MAAM;aACjB,kBAAkB,CAAC,WAAW,CAAC,SAAS,EAAE,WAAW,CAAC,UAAU,CAAC;aACjE,EAAE,EAAE,CAAC;QACR,MAAM,MAAM,GAAG,KAAK,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAEpD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,OAAO;QACT,CAAC;QAED,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IAC3B,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,32 @@
1
+ import type { SimS3BucketName } from "../../../s3/bucket/sim-s3-bucket.js";
2
+ import type { SimS3Object } from "../../../s3/object/s3-object.js";
3
+ /**
4
+ * The responses a CloudFront S3 Origin answers a Distribution with.
5
+ *
6
+ * Kept apart from the Origin because deciding what to serve and building the
7
+ * response that serves it are separate jobs, and only the first one is
8
+ * interesting.
9
+ */
10
+ export declare class SimCfS3OriginResponses {
11
+ private readonly bucketName;
12
+ constructor(bucketName: SimS3BucketName);
13
+ /**
14
+ * Serve an Object, with no body when the request was a HEAD.
15
+ */
16
+ foundObject(object: SimS3Object, request: Request): Response;
17
+ /**
18
+ * Report an Object the Bucket does not hold.
19
+ */
20
+ notFound(objectKey: string): Response;
21
+ /**
22
+ * The 403 S3 answers an unsigned read of an Object it has not been told to
23
+ * make public, which the Distribution's custom error response for 403 can
24
+ * then replace, as it does in CloudFront.
25
+ */
26
+ accessDenied(objectKey: string): Response;
27
+ /**
28
+ * Refuse a method an S3 Origin does not answer.
29
+ */
30
+ methodNotAllowed(method: string): Response;
31
+ }
32
+ //# sourceMappingURL=sim-cf-s3-origin-responses.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cf-s3-origin-responses.d.ts","sourceRoot":"","sources":["../../../../../src/service/cloudfront/origin/s3/sim-cf-s3-origin-responses.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAOnE;;;;;;GAMG;AACH,qBAAa,sBAAsB;IACrB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAAvC,YAA6B,UAAU,EAAE,eAAe,EAAI;IAE5D;;OAEG;IACH,WAAW,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,GAAG,QAAQ,CAW3D;IAED;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,QAAQ,CAKpC;IAED;;;;OAIG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,QAAQ,CAKxC;IAED;;OAEG;IACH,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAKzC;CACF"}