@kensio/yulin 1.20.1 → 1.20.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.
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/service/apigateway/api/sim-rest-api-lambda-proxy.factory.d.ts +2 -5
- package/dist/service/apigateway/api/sim-rest-api-lambda-proxy.factory.d.ts.map +1 -1
- package/dist/service/apigateway/api/sim-rest-api-lambda-proxy.factory.js +3 -7
- package/dist/service/apigateway/api/sim-rest-api-lambda-proxy.factory.js.map +1 -1
- package/dist/service/apigateway/api/sim-rest-api-proxy-stage.d.ts +22 -0
- package/dist/service/apigateway/api/sim-rest-api-proxy-stage.d.ts.map +1 -0
- package/dist/service/apigateway/api/sim-rest-api-proxy-stage.js +31 -0
- package/dist/service/apigateway/api/sim-rest-api-proxy-stage.js.map +1 -0
- package/dist/service/apigateway/api/stage/settings/sim-rest-api-method-settings.type.d.ts +19 -0
- package/dist/service/apigateway/api/stage/settings/sim-rest-api-method-settings.type.d.ts.map +1 -0
- package/dist/service/apigateway/api/stage/settings/sim-rest-api-method-settings.type.js +2 -0
- package/dist/service/apigateway/api/stage/settings/sim-rest-api-method-settings.type.js.map +1 -0
- package/dist/service/apigateway/api/stage/settings/sim-rest-api-stage-method-settings.d.ts +43 -0
- package/dist/service/apigateway/api/stage/settings/sim-rest-api-stage-method-settings.d.ts.map +1 -0
- package/dist/service/apigateway/api/stage/settings/sim-rest-api-stage-method-settings.js +75 -0
- package/dist/service/apigateway/api/stage/settings/sim-rest-api-stage-method-settings.js.map +1 -0
- package/dist/service/apigateway/api/stage/sim-rest-api-stage.d.ts +19 -0
- package/dist/service/apigateway/api/stage/sim-rest-api-stage.d.ts.map +1 -1
- package/dist/service/apigateway/api/stage/sim-rest-api-stage.js +22 -0
- package/dist/service/apigateway/api/stage/sim-rest-api-stage.js.map +1 -1
- package/dist/service/apigateway/cfn/stage/sim-cfn-rest-api-method-settings-properties.d.ts +33 -0
- package/dist/service/apigateway/cfn/stage/sim-cfn-rest-api-method-settings-properties.d.ts.map +1 -0
- package/dist/service/apigateway/cfn/stage/sim-cfn-rest-api-method-settings-properties.js +69 -0
- package/dist/service/apigateway/cfn/stage/sim-cfn-rest-api-method-settings-properties.js.map +1 -0
- package/dist/service/apigateway/cfn/stage/sim-cfn-rest-api-stage-properties.d.ts +4 -1
- package/dist/service/apigateway/cfn/stage/sim-cfn-rest-api-stage-properties.d.ts.map +1 -1
- package/dist/service/apigateway/cfn/stage/sim-cfn-rest-api-stage-properties.js +13 -4
- package/dist/service/apigateway/cfn/stage/sim-cfn-rest-api-stage-properties.js.map +1 -1
- package/dist/service/apigateway/command/sim-api-gateway-unsimulated-input.d.ts +6 -1
- package/dist/service/apigateway/command/sim-api-gateway-unsimulated-input.d.ts.map +1 -1
- package/dist/service/apigateway/command/sim-api-gateway-unsimulated-input.js +8 -3
- package/dist/service/apigateway/command/sim-api-gateway-unsimulated-input.js.map +1 -1
- package/dist/service/apigateway/command/stage/sim-rest-api-stage-commands.d.ts.map +1 -1
- package/dist/service/apigateway/command/stage/sim-rest-api-stage-commands.js +4 -0
- package/dist/service/apigateway/command/stage/sim-rest-api-stage-commands.js.map +1 -1
- package/dist/service/apigateway/command/stage/sim-rest-api-stage-method-settings-input.d.ts +18 -0
- package/dist/service/apigateway/command/stage/sim-rest-api-stage-method-settings-input.d.ts.map +1 -0
- package/dist/service/apigateway/command/stage/sim-rest-api-stage-method-settings-input.js +42 -0
- package/dist/service/apigateway/command/stage/sim-rest-api-stage-method-settings-input.js.map +1 -0
- package/dist/service/apigateway/command/stage/sim-rest-api-stage-publisher.d.ts +9 -0
- package/dist/service/apigateway/command/stage/sim-rest-api-stage-publisher.d.ts.map +1 -1
- package/dist/service/apigateway/command/stage/sim-rest-api-stage-publisher.js +17 -0
- package/dist/service/apigateway/command/stage/sim-rest-api-stage-publisher.js.map +1 -1
- package/dist/service/apigateway/command/stage/stage.command.d.ts +11 -0
- package/dist/service/apigateway/command/stage/stage.command.d.ts.map +1 -1
- package/dist/service/apigateway/index.d.ts +2 -0
- package/dist/service/apigateway/index.d.ts.map +1 -1
- package/dist/service/apigateway/index.js +1 -0
- package/dist/service/apigateway/index.js.map +1 -1
- package/dist/service/apigateway/serve/sim-api-gateway-controller.d.ts +4 -1
- package/dist/service/apigateway/serve/sim-api-gateway-controller.d.ts.map +1 -1
- package/dist/service/apigateway/serve/sim-api-gateway-controller.js +10 -1
- package/dist/service/apigateway/serve/sim-api-gateway-controller.js.map +1 -1
- package/dist/service/apigateway/serve/sim-api-gateway-error-response.d.ts +8 -0
- package/dist/service/apigateway/serve/sim-api-gateway-error-response.d.ts.map +1 -1
- package/dist/service/apigateway/serve/sim-api-gateway-error-response.js +10 -0
- package/dist/service/apigateway/serve/sim-api-gateway-error-response.js.map +1 -1
- package/dist/service/apigatewayv2/api/sim-http-api-lambda-proxy.factory.d.ts +5 -0
- package/dist/service/apigatewayv2/api/sim-http-api-lambda-proxy.factory.d.ts.map +1 -1
- package/dist/service/apigatewayv2/api/sim-http-api-lambda-proxy.factory.js +4 -0
- package/dist/service/apigatewayv2/api/sim-http-api-lambda-proxy.factory.js.map +1 -1
- package/dist/service/apigatewayv2/api/stage/settings/sim-http-api-route-settings.type.d.ts +24 -0
- package/dist/service/apigatewayv2/api/stage/settings/sim-http-api-route-settings.type.d.ts.map +1 -0
- package/dist/service/apigatewayv2/api/stage/settings/sim-http-api-route-settings.type.js +2 -0
- package/dist/service/apigatewayv2/api/stage/settings/sim-http-api-route-settings.type.js.map +1 -0
- package/dist/service/apigatewayv2/api/stage/settings/sim-http-api-stage-route-settings.d.ts +39 -0
- package/dist/service/apigatewayv2/api/stage/settings/sim-http-api-stage-route-settings.d.ts.map +1 -0
- package/dist/service/apigatewayv2/api/stage/settings/sim-http-api-stage-route-settings.js +74 -0
- package/dist/service/apigatewayv2/api/stage/settings/sim-http-api-stage-route-settings.js.map +1 -0
- package/dist/service/apigatewayv2/api/stage/sim-http-api-stage.d.ts +16 -1
- package/dist/service/apigatewayv2/api/stage/sim-http-api-stage.d.ts.map +1 -1
- package/dist/service/apigatewayv2/api/stage/sim-http-api-stage.js +16 -0
- package/dist/service/apigatewayv2/api/stage/sim-http-api-stage.js.map +1 -1
- package/dist/service/apigatewayv2/cfn/stage/sim-cfn-http-api-route-settings-properties.d.ts +30 -0
- package/dist/service/apigatewayv2/cfn/stage/sim-cfn-http-api-route-settings-properties.d.ts.map +1 -0
- package/dist/service/apigatewayv2/cfn/stage/sim-cfn-http-api-route-settings-properties.js +67 -0
- package/dist/service/apigatewayv2/cfn/stage/sim-cfn-http-api-route-settings-properties.js.map +1 -0
- package/dist/service/apigatewayv2/cfn/stage/sim-cfn-http-api-stage-properties.d.ts +3 -1
- package/dist/service/apigatewayv2/cfn/stage/sim-cfn-http-api-stage-properties.d.ts.map +1 -1
- package/dist/service/apigatewayv2/cfn/stage/sim-cfn-http-api-stage-properties.js +16 -5
- package/dist/service/apigatewayv2/cfn/stage/sim-cfn-http-api-stage-properties.js.map +1 -1
- package/dist/service/apigatewayv2/command/sim-api-gateway-v2-unsimulated-input.d.ts +6 -1
- package/dist/service/apigatewayv2/command/sim-api-gateway-v2-unsimulated-input.d.ts.map +1 -1
- package/dist/service/apigatewayv2/command/sim-api-gateway-v2-unsimulated-input.js +8 -3
- package/dist/service/apigatewayv2/command/sim-api-gateway-v2-unsimulated-input.js.map +1 -1
- package/dist/service/apigatewayv2/command/stage/sim-http-api-stage-commands.d.ts.map +1 -1
- package/dist/service/apigatewayv2/command/stage/sim-http-api-stage-commands.js +8 -0
- package/dist/service/apigatewayv2/command/stage/sim-http-api-stage-commands.js.map +1 -1
- package/dist/service/apigatewayv2/command/stage/sim-http-api-stage-route-settings-input.d.ts +18 -0
- package/dist/service/apigatewayv2/command/stage/sim-http-api-stage-route-settings-input.d.ts.map +1 -0
- package/dist/service/apigatewayv2/command/stage/sim-http-api-stage-route-settings-input.js +32 -0
- package/dist/service/apigatewayv2/command/stage/sim-http-api-stage-route-settings-input.js.map +1 -0
- package/dist/service/apigatewayv2/command/stage/stage.command.d.ts +3 -0
- package/dist/service/apigatewayv2/command/stage/stage.command.d.ts.map +1 -1
- package/dist/service/apigatewayv2/index.d.ts +2 -0
- package/dist/service/apigatewayv2/index.d.ts.map +1 -1
- package/dist/service/apigatewayv2/index.js +1 -0
- package/dist/service/apigatewayv2/index.js.map +1 -1
- package/dist/service/apigatewayv2/serve/sim-api-gateway-v2-controller.d.ts +4 -1
- package/dist/service/apigatewayv2/serve/sim-api-gateway-v2-controller.d.ts.map +1 -1
- package/dist/service/apigatewayv2/serve/sim-api-gateway-v2-controller.js +11 -2
- package/dist/service/apigatewayv2/serve/sim-api-gateway-v2-controller.js.map +1 -1
- package/dist/service/apigatewayv2/serve/sim-api-gateway-v2-error-response.d.ts +8 -0
- package/dist/service/apigatewayv2/serve/sim-api-gateway-v2-error-response.d.ts.map +1 -1
- package/dist/service/apigatewayv2/serve/sim-api-gateway-v2-error-response.js +10 -0
- package/dist/service/apigatewayv2/serve/sim-api-gateway-v2-error-response.js.map +1 -1
- package/dist/service/aws/factory/sim-aws-account-service-cache.d.ts.map +1 -1
- package/dist/service/aws/factory/sim-aws-account-service-cache.js +5 -0
- package/dist/service/aws/factory/sim-aws-account-service-cache.js.map +1 -1
- package/dist/service/cloudformation/template/node/fn/join/sim-cfn-fn-join.d.ts +7 -0
- package/dist/service/cloudformation/template/node/fn/join/sim-cfn-fn-join.d.ts.map +1 -1
- package/dist/service/cloudformation/template/node/fn/join/sim-cfn-fn-join.js +9 -1
- package/dist/service/cloudformation/template/node/fn/join/sim-cfn-fn-join.js.map +1 -1
- package/dist/service/cloudfront/behaviour/sim-cloud-front-behavior.d.ts +5 -0
- package/dist/service/cloudfront/behaviour/sim-cloud-front-behavior.d.ts.map +1 -1
- package/dist/service/cloudfront/behaviour/sim-cloud-front-behavior.js.map +1 -1
- package/dist/service/cloudfront/cff/sim-cff-arn.d.ts +13 -0
- package/dist/service/cloudfront/cff/sim-cff-arn.d.ts.map +1 -0
- package/dist/service/cloudfront/cff/sim-cff-arn.js +18 -0
- package/dist/service/cloudfront/cff/sim-cff-arn.js.map +1 -0
- package/dist/service/cloudfront/command/create-distribution/create-distribution.command.d.ts +16 -0
- package/dist/service/cloudfront/command/create-distribution/create-distribution.command.d.ts.map +1 -1
- package/dist/service/cloudfront/command/create-distribution/create-distribution.handler.d.ts +3 -0
- package/dist/service/cloudfront/command/create-distribution/create-distribution.handler.d.ts.map +1 -1
- package/dist/service/cloudfront/command/create-distribution/create-distribution.handler.js +11 -4
- package/dist/service/cloudfront/command/create-distribution/create-distribution.handler.js.map +1 -1
- package/dist/service/cloudfront/command/create-distribution/sim-cf-distro-config-normalizer.d.ts.map +1 -1
- package/dist/service/cloudfront/command/create-distribution/sim-cf-distro-config-normalizer.js +1 -0
- package/dist/service/cloudfront/command/create-distribution/sim-cf-distro-config-normalizer.js.map +1 -1
- package/dist/service/cloudfront/command/update-distribution/update-distribution.handler.d.ts +3 -0
- package/dist/service/cloudfront/command/update-distribution/update-distribution.handler.d.ts.map +1 -1
- package/dist/service/cloudfront/command/update-distribution/update-distribution.handler.js +9 -2
- package/dist/service/cloudfront/command/update-distribution/update-distribution.handler.js.map +1 -1
- package/dist/service/cloudfront/controller/dependency/sim-cf-controller-dependency.d.ts +3 -0
- package/dist/service/cloudfront/controller/dependency/sim-cf-controller-dependency.d.ts.map +1 -1
- package/dist/service/cloudfront/controller/dependency/sim-cf-controller-dependency.js +6 -0
- package/dist/service/cloudfront/controller/dependency/sim-cf-controller-dependency.js.map +1 -1
- package/dist/service/cloudfront/controller/edge/sim-lambda-edge-applicator.d.ts +48 -0
- package/dist/service/cloudfront/controller/edge/sim-lambda-edge-applicator.d.ts.map +1 -0
- package/dist/service/cloudfront/controller/edge/sim-lambda-edge-applicator.js +66 -0
- package/dist/service/cloudfront/controller/edge/sim-lambda-edge-applicator.js.map +1 -0
- package/dist/service/cloudfront/controller/edge/sim-lambda-edge-distribution.d.ts +11 -0
- package/dist/service/cloudfront/controller/edge/sim-lambda-edge-distribution.d.ts.map +1 -0
- package/dist/service/cloudfront/controller/edge/sim-lambda-edge-distribution.js +14 -0
- package/dist/service/cloudfront/controller/edge/sim-lambda-edge-distribution.js.map +1 -0
- package/dist/service/cloudfront/controller/sim-cloudfront-request-pipeline.d.ts +5 -0
- package/dist/service/cloudfront/controller/sim-cloudfront-request-pipeline.d.ts.map +1 -1
- package/dist/service/cloudfront/controller/sim-cloudfront-request-pipeline.js +16 -1
- package/dist/service/cloudfront/controller/sim-cloudfront-request-pipeline.js.map +1 -1
- package/dist/service/cloudfront/distribution/configurator/sim-cf-behavior-properties.d.ts.map +1 -1
- package/dist/service/cloudfront/distribution/configurator/sim-cf-behavior-properties.js +2 -0
- package/dist/service/cloudfront/distribution/configurator/sim-cf-behavior-properties.js.map +1 -1
- package/dist/service/cloudfront/distribution/sim-cf-distribution-configuration-state.d.ts +5 -2
- package/dist/service/cloudfront/distribution/sim-cf-distribution-configuration-state.d.ts.map +1 -1
- package/dist/service/cloudfront/edge/adapter/sim-lambda-edge-body.d.ts +24 -0
- package/dist/service/cloudfront/edge/adapter/sim-lambda-edge-body.d.ts.map +1 -0
- package/dist/service/cloudfront/edge/adapter/sim-lambda-edge-body.js +51 -0
- package/dist/service/cloudfront/edge/adapter/sim-lambda-edge-body.js.map +1 -0
- package/dist/service/cloudfront/edge/adapter/sim-lambda-edge-event-adapter.d.ts +41 -0
- package/dist/service/cloudfront/edge/adapter/sim-lambda-edge-event-adapter.d.ts.map +1 -0
- package/dist/service/cloudfront/edge/adapter/sim-lambda-edge-event-adapter.js +78 -0
- package/dist/service/cloudfront/edge/adapter/sim-lambda-edge-event-adapter.js.map +1 -0
- package/dist/service/cloudfront/edge/adapter/sim-lambda-edge-headers.d.ts +20 -0
- package/dist/service/cloudfront/edge/adapter/sim-lambda-edge-headers.d.ts.map +1 -0
- package/dist/service/cloudfront/edge/adapter/sim-lambda-edge-headers.js +55 -0
- package/dist/service/cloudfront/edge/adapter/sim-lambda-edge-headers.js.map +1 -0
- package/dist/service/cloudfront/edge/adapter/sim-lambda-edge-request-adapter.d.ts +30 -0
- package/dist/service/cloudfront/edge/adapter/sim-lambda-edge-request-adapter.d.ts.map +1 -0
- package/dist/service/cloudfront/edge/adapter/sim-lambda-edge-request-adapter.js +90 -0
- package/dist/service/cloudfront/edge/adapter/sim-lambda-edge-request-adapter.js.map +1 -0
- package/dist/service/cloudfront/edge/adapter/sim-lambda-edge-response-adapter.d.ts +26 -0
- package/dist/service/cloudfront/edge/adapter/sim-lambda-edge-response-adapter.d.ts.map +1 -0
- package/dist/service/cloudfront/edge/adapter/sim-lambda-edge-response-adapter.js +47 -0
- package/dist/service/cloudfront/edge/adapter/sim-lambda-edge-response-adapter.js.map +1 -0
- package/dist/service/cloudfront/edge/sim-aws-cf-edge-functions.d.ts +44 -0
- package/dist/service/cloudfront/edge/sim-aws-cf-edge-functions.d.ts.map +1 -0
- package/dist/service/cloudfront/edge/sim-aws-cf-edge-functions.js +89 -0
- package/dist/service/cloudfront/edge/sim-aws-cf-edge-functions.js.map +1 -0
- package/dist/service/cloudfront/edge/sim-cf-edge-association-auth-z.d.ts +7 -0
- package/dist/service/cloudfront/edge/sim-cf-edge-association-auth-z.d.ts.map +1 -0
- package/dist/service/cloudfront/edge/sim-cf-edge-association-auth-z.js +27 -0
- package/dist/service/cloudfront/edge/sim-cf-edge-association-auth-z.js.map +1 -0
- package/dist/service/cloudfront/edge/sim-cf-edge-association-checks.d.ts +47 -0
- package/dist/service/cloudfront/edge/sim-cf-edge-association-checks.d.ts.map +1 -0
- package/dist/service/cloudfront/edge/sim-cf-edge-association-checks.js +71 -0
- package/dist/service/cloudfront/edge/sim-cf-edge-association-checks.js.map +1 -0
- package/dist/service/cloudfront/edge/sim-cf-edge-association-validator.d.ts +36 -0
- package/dist/service/cloudfront/edge/sim-cf-edge-association-validator.d.ts.map +1 -0
- package/dist/service/cloudfront/edge/sim-cf-edge-association-validator.js +79 -0
- package/dist/service/cloudfront/edge/sim-cf-edge-association-validator.js.map +1 -0
- package/dist/service/cloudfront/edge/sim-cf-edge-association.d.ts +23 -0
- package/dist/service/cloudfront/edge/sim-cf-edge-association.d.ts.map +1 -0
- package/dist/service/cloudfront/edge/sim-cf-edge-association.js +2 -0
- package/dist/service/cloudfront/edge/sim-cf-edge-association.js.map +1 -0
- package/dist/service/cloudfront/edge/sim-cf-edge-associations-configure.d.ts +14 -0
- package/dist/service/cloudfront/edge/sim-cf-edge-associations-configure.d.ts.map +1 -0
- package/dist/service/cloudfront/edge/sim-cf-edge-associations-configure.js +36 -0
- package/dist/service/cloudfront/edge/sim-cf-edge-associations-configure.js.map +1 -0
- package/dist/service/cloudfront/edge/sim-cf-edge-function-arn.d.ts +18 -0
- package/dist/service/cloudfront/edge/sim-cf-edge-function-arn.d.ts.map +1 -0
- package/dist/service/cloudfront/edge/sim-cf-edge-function-arn.js +47 -0
- package/dist/service/cloudfront/edge/sim-cf-edge-function-arn.js.map +1 -0
- package/dist/service/cloudfront/edge/sim-cf-edge-functions.d.ts +25 -0
- package/dist/service/cloudfront/edge/sim-cf-edge-functions.d.ts.map +1 -0
- package/dist/service/cloudfront/edge/sim-cf-edge-functions.js +2 -0
- package/dist/service/cloudfront/edge/sim-cf-edge-functions.js.map +1 -0
- package/dist/service/cloudfront/error/sim-cloudfront.error.d.ts +13 -0
- package/dist/service/cloudfront/error/sim-cloudfront.error.d.ts.map +1 -1
- package/dist/service/cloudfront/error/sim-cloudfront.error.js +15 -0
- package/dist/service/cloudfront/error/sim-cloudfront.error.js.map +1 -1
- package/dist/service/cloudfront/index.d.ts +1 -0
- package/dist/service/cloudfront/index.d.ts.map +1 -1
- package/dist/service/cloudfront/sim-cloudfront-commands.d.ts +10 -0
- package/dist/service/cloudfront/sim-cloudfront-commands.d.ts.map +1 -1
- package/dist/service/cloudfront/sim-cloudfront-commands.js +10 -1
- package/dist/service/cloudfront/sim-cloudfront-commands.js.map +1 -1
- package/dist/service/cloudfront/sim-cloudfront.d.ts.map +1 -1
- package/dist/service/cloudfront/sim-cloudfront.js +3 -8
- package/dist/service/cloudfront/sim-cloudfront.js.map +1 -1
- package/dist/service/cloudfront/typings/lambda-at-edge.namespace.d.ts +91 -0
- package/dist/service/cloudfront/typings/lambda-at-edge.namespace.d.ts.map +1 -0
- package/dist/service/cloudfront/typings/lambda-at-edge.namespace.js +2 -0
- package/dist/service/cloudfront/typings/lambda-at-edge.namespace.js.map +1 -0
- package/dist/service/lambda/function/environment/sim-lambda-environment.d.ts +22 -20
- package/dist/service/lambda/function/environment/sim-lambda-environment.d.ts.map +1 -1
- package/dist/service/lambda/function/environment/sim-lambda-environment.js +27 -29
- package/dist/service/lambda/function/environment/sim-lambda-environment.js.map +1 -1
- package/dist/service/lambda/function/environment/sim-lambda-host-backed-variables.d.ts +28 -0
- package/dist/service/lambda/function/environment/sim-lambda-host-backed-variables.d.ts.map +1 -0
- package/dist/service/lambda/function/environment/sim-lambda-host-backed-variables.js +49 -0
- package/dist/service/lambda/function/environment/sim-lambda-host-backed-variables.js.map +1 -0
- package/dist/service/lambda/function/environment/sim-lambda-runtime-variables.d.ts +18 -0
- package/dist/service/lambda/function/environment/sim-lambda-runtime-variables.d.ts.map +1 -0
- package/dist/service/lambda/function/environment/sim-lambda-runtime-variables.js +23 -0
- package/dist/service/lambda/function/environment/sim-lambda-runtime-variables.js.map +1 -0
- package/dist/util/process/sim-process-environment.d.ts +9 -0
- package/dist/util/process/sim-process-environment.d.ts.map +1 -1
- package/dist/util/process/sim-process-environment.js +17 -0
- package/dist/util/process/sim-process-environment.js.map +1 -1
- package/dist/util/throttle/sim-token-bucket.d.ts +32 -0
- package/dist/util/throttle/sim-token-bucket.d.ts.map +1 -0
- package/dist/util/throttle/sim-token-bucket.js +53 -0
- package/dist/util/throttle/sim-token-bucket.js.map +1 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sim-http-api-lambda-proxy.factory.js","sourceRoot":"","sources":["../../../../src/service/apigatewayv2/api/sim-http-api-lambda-proxy.factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG1D,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACpE,OAAO,EAAE,6BAA6B,EAAE,MAAM,uDAAuD,CAAC;AACtG,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAE1E,OAAO,EAAE,sBAAsB,EAAE,MAAM,qDAAqD,CAAC;
|
|
1
|
+
{"version":3,"file":"sim-http-api-lambda-proxy.factory.js","sourceRoot":"","sources":["../../../../src/service/apigatewayv2/api/sim-http-api-lambda-proxy.factory.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The throttling half of one route's settings, which is what a stage's
|
|
3
|
+
* `DefaultRouteSettings` and each entry of its `RouteSettings` carry.
|
|
4
|
+
*
|
|
5
|
+
* `ThrottlingRateLimit` is requests per second and `ThrottlingBurstLimit` is
|
|
6
|
+
* how many requests the route may take at once. The members that say nothing
|
|
7
|
+
* about throttling are not simulated. They are left out of this type too.
|
|
8
|
+
*/
|
|
9
|
+
export interface SimHttpApiRouteSettings {
|
|
10
|
+
readonly ThrottlingRateLimit?: number | undefined;
|
|
11
|
+
readonly ThrottlingBurstLimit?: number | undefined;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* A stage's `RouteSettings`, keyed by the route key each entry applies to.
|
|
15
|
+
*/
|
|
16
|
+
export type SimHttpApiRouteSettingsMap = Readonly<Record<string, SimHttpApiRouteSettings>>;
|
|
17
|
+
/**
|
|
18
|
+
* What a stage reports of the route settings it was created with.
|
|
19
|
+
*/
|
|
20
|
+
export interface SimHttpApiRouteSettingsView {
|
|
21
|
+
DefaultRouteSettings?: SimHttpApiRouteSettings;
|
|
22
|
+
RouteSettings?: SimHttpApiRouteSettingsMap;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=sim-http-api-route-settings.type.d.ts.map
|
package/dist/service/apigatewayv2/api/stage/settings/sim-http-api-route-settings.type.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-http-api-route-settings.type.d.ts","sourceRoot":"","sources":["../../../../../../src/service/apigatewayv2/api/stage/settings/sim-http-api-route-settings.type.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAClD,QAAQ,CAAC,oBAAoB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACpD;AAED;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAAG,QAAQ,CAC/C,MAAM,CAAC,MAAM,EAAE,uBAAuB,CAAC,CACxC,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C,oBAAoB,CAAC,EAAE,uBAAuB,CAAC;IAC/C,aAAa,CAAC,EAAE,0BAA0B,CAAC;CAC5C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-http-api-route-settings.type.js","sourceRoot":"","sources":["../../../../../../src/service/apigatewayv2/api/stage/settings/sim-http-api-route-settings.type.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import type { SimClock } from "../../../../../util/clock/sim-clock.js";
|
|
2
|
+
import type { SimHttpApiRouteSettings, SimHttpApiRouteSettingsMap, SimHttpApiRouteSettingsView } from "./sim-http-api-route-settings.type.js";
|
|
3
|
+
interface SimHttpApiStageRouteSettingsProperties {
|
|
4
|
+
readonly clock: SimClock;
|
|
5
|
+
readonly defaultRouteSettings?: SimHttpApiRouteSettings | undefined;
|
|
6
|
+
readonly routeSettings?: SimHttpApiRouteSettingsMap | undefined;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* The route settings one stage was created with, and the token buckets its
|
|
10
|
+
* throttle is evaluated from.
|
|
11
|
+
*
|
|
12
|
+
* Each route key has a bucket of its own. Two routes falling back to
|
|
13
|
+
* `DefaultRouteSettings` are throttled apart from each other, and a
|
|
14
|
+
* `RouteSettings` entry throttles only the route key it names. Every client of
|
|
15
|
+
* a route draws on that one bucket. A WAF rate-based rule counts each client
|
|
16
|
+
* separately, which is the other question a stack often asks.
|
|
17
|
+
*
|
|
18
|
+
* A route is throttled only where the settings reaching it name both limits.
|
|
19
|
+
* Naming one alone leaves the other at the account limit on real AWS. Account
|
|
20
|
+
* limits are outside this simulation, and a route configured that way serves
|
|
21
|
+
* unthrottled.
|
|
22
|
+
*/
|
|
23
|
+
export declare class SimHttpApiStageRouteSettings {
|
|
24
|
+
#private;
|
|
25
|
+
constructor(properties: SimHttpApiStageRouteSettingsProperties);
|
|
26
|
+
/**
|
|
27
|
+
* Take one token for a request to a route key, and answer whether the
|
|
28
|
+
* route's throttle had one to give.
|
|
29
|
+
*
|
|
30
|
+
* A route key nothing throttles is always admitted, and takes nothing.
|
|
31
|
+
*/
|
|
32
|
+
admits(routeKey: string): boolean;
|
|
33
|
+
/**
|
|
34
|
+
* What CreateStage and GetStages report of these settings.
|
|
35
|
+
*/
|
|
36
|
+
view(): SimHttpApiRouteSettingsView;
|
|
37
|
+
}
|
|
38
|
+
export {};
|
|
39
|
+
//# sourceMappingURL=sim-http-api-stage-route-settings.d.ts.map
|
package/dist/service/apigatewayv2/api/stage/settings/sim-http-api-stage-route-settings.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-http-api-stage-route-settings.d.ts","sourceRoot":"","sources":["../../../../../../src/service/apigatewayv2/api/stage/settings/sim-http-api-stage-route-settings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AACvE,OAAO,KAAK,EACV,uBAAuB,EACvB,0BAA0B,EAC1B,2BAA2B,EAC5B,MAAM,uCAAuC,CAAC;AAG/C,UAAU,sCAAsC;IAC9C,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC;IACzB,QAAQ,CAAC,oBAAoB,CAAC,EAAE,uBAAuB,GAAG,SAAS,CAAC;IACpE,QAAQ,CAAC,aAAa,CAAC,EAAE,0BAA0B,GAAG,SAAS,CAAC;CACjE;AAED;;;;;;;;;;;;;;GAcG;AACH,qBAAa,4BAA4B;;IAMvC,YAAY,UAAU,EAAE,sCAAsC,EAM7D;IAED;;;;;OAKG;IACH,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAIhC;IAED;;OAEG;IACH,IAAI,IAAI,2BAA2B,CAYlC;CA8BF"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { SimTokenBucket } from "../../../../../util/throttle/sim-token-bucket.js";
|
|
2
|
+
/**
|
|
3
|
+
* The route settings one stage was created with, and the token buckets its
|
|
4
|
+
* throttle is evaluated from.
|
|
5
|
+
*
|
|
6
|
+
* Each route key has a bucket of its own. Two routes falling back to
|
|
7
|
+
* `DefaultRouteSettings` are throttled apart from each other, and a
|
|
8
|
+
* `RouteSettings` entry throttles only the route key it names. Every client of
|
|
9
|
+
* a route draws on that one bucket. A WAF rate-based rule counts each client
|
|
10
|
+
* separately, which is the other question a stack often asks.
|
|
11
|
+
*
|
|
12
|
+
* A route is throttled only where the settings reaching it name both limits.
|
|
13
|
+
* Naming one alone leaves the other at the account limit on real AWS. Account
|
|
14
|
+
* limits are outside this simulation, and a route configured that way serves
|
|
15
|
+
* unthrottled.
|
|
16
|
+
*/
|
|
17
|
+
export class SimHttpApiStageRouteSettings {
|
|
18
|
+
#clock;
|
|
19
|
+
#defaultRouteSettings;
|
|
20
|
+
#routeSettings;
|
|
21
|
+
#buckets = new Map();
|
|
22
|
+
constructor(properties) {
|
|
23
|
+
this.#clock = properties.clock;
|
|
24
|
+
this.#defaultRouteSettings = properties.defaultRouteSettings;
|
|
25
|
+
this.#routeSettings = new Map(Object.entries(properties.routeSettings ?? {}));
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Take one token for a request to a route key, and answer whether the
|
|
29
|
+
* route's throttle had one to give.
|
|
30
|
+
*
|
|
31
|
+
* A route key nothing throttles is always admitted, and takes nothing.
|
|
32
|
+
*/
|
|
33
|
+
admits(routeKey) {
|
|
34
|
+
const bucket = this.#bucketFor(routeKey);
|
|
35
|
+
return bucket === undefined || bucket.take();
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* What CreateStage and GetStages report of these settings.
|
|
39
|
+
*/
|
|
40
|
+
view() {
|
|
41
|
+
const view = {};
|
|
42
|
+
if (this.#defaultRouteSettings !== undefined) {
|
|
43
|
+
view.DefaultRouteSettings = { ...this.#defaultRouteSettings };
|
|
44
|
+
}
|
|
45
|
+
if (this.#routeSettings.size > 0) {
|
|
46
|
+
view.RouteSettings = Object.fromEntries(this.#routeSettings);
|
|
47
|
+
}
|
|
48
|
+
return view;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* The bucket a route key draws on, made the first time the route is asked
|
|
52
|
+
* about so that it starts full at the request that found it.
|
|
53
|
+
*/
|
|
54
|
+
#bucketFor(routeKey) {
|
|
55
|
+
if (!this.#buckets.has(routeKey)) {
|
|
56
|
+
this.#buckets.set(routeKey, this.#newBucket(routeKey));
|
|
57
|
+
}
|
|
58
|
+
return this.#buckets.get(routeKey);
|
|
59
|
+
}
|
|
60
|
+
#newBucket(routeKey) {
|
|
61
|
+
const settings = this.#routeSettings.get(routeKey) ?? this.#defaultRouteSettings;
|
|
62
|
+
const rateLimit = settings?.ThrottlingRateLimit;
|
|
63
|
+
const burstLimit = settings?.ThrottlingBurstLimit;
|
|
64
|
+
if (rateLimit === undefined || burstLimit === undefined) {
|
|
65
|
+
return undefined;
|
|
66
|
+
}
|
|
67
|
+
return new SimTokenBucket({
|
|
68
|
+
clock: this.#clock,
|
|
69
|
+
rateLimit,
|
|
70
|
+
burstLimit,
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
//# sourceMappingURL=sim-http-api-stage-route-settings.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-http-api-stage-route-settings.js","sourceRoot":"","sources":["../../../../../../src/service/apigatewayv2/api/stage/settings/sim-http-api-stage-route-settings.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,cAAc,EAAE,MAAM,kDAAkD,CAAC;AAQlF;;;;;;;;;;;;;;GAcG;AACH,MAAM,OAAO,4BAA4B;IAC9B,MAAM,CAAW;IACjB,qBAAqB,CAAuC;IAC5D,cAAc,CAA+C;IAC7D,QAAQ,GAAG,IAAI,GAAG,EAAsC,CAAC;IAElE,YAAY,UAAkD;QAC5D,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC;QAC/B,IAAI,CAAC,qBAAqB,GAAG,UAAU,CAAC,oBAAoB,CAAC;QAC7D,IAAI,CAAC,cAAc,GAAG,IAAI,GAAG,CAC3B,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,aAAa,IAAI,EAAE,CAAC,CAC/C,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,QAAgB;QACrB,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAEzC,OAAO,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;IAC/C,CAAC;IAED;;OAEG;IACH,IAAI;QACF,MAAM,IAAI,GAAgC,EAAE,CAAC;QAE7C,IAAI,IAAI,CAAC,qBAAqB,KAAK,SAAS,EAAE,CAAC;YAC7C,IAAI,CAAC,oBAAoB,GAAG,EAAE,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAChE,CAAC;QAED,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YACjC,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC/D,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACH,UAAU,CAAC,QAAgB;QACzB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YACjC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;QACzD,CAAC;QAED,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;IAED,UAAU,CAAC,QAAgB;QACzB,MAAM,QAAQ,GACZ,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,qBAAqB,CAAC;QAClE,MAAM,SAAS,GAAG,QAAQ,EAAE,mBAAmB,CAAC;QAChD,MAAM,UAAU,GAAG,QAAQ,EAAE,oBAAoB,CAAC;QAElD,IAAI,SAAS,KAAK,SAAS,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YACxD,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO,IAAI,cAAc,CAAC;YACxB,KAAK,EAAE,IAAI,CAAC,MAAM;YAClB,SAAS;YACT,UAAU;SACX,CAAC,CAAC;IACL,CAAC;CACF"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import type { SimHttpApiRouteSettingsView } from "./settings/sim-http-api-route-settings.type.js";
|
|
2
|
+
import type { SimHttpApiStageRouteSettings } from "./settings/sim-http-api-stage-route-settings.js";
|
|
1
3
|
/**
|
|
2
4
|
* The default stage, which is served at the root of the API endpoint rather
|
|
3
5
|
* than under a stage-name path segment. It is the only stage simulated so far.
|
|
@@ -9,11 +11,12 @@ interface SimHttpApiStageProperties {
|
|
|
9
11
|
readonly stageVariables?: Readonly<Record<string, string>> | undefined;
|
|
10
12
|
readonly description?: string | undefined;
|
|
11
13
|
readonly createdDate: Date;
|
|
14
|
+
readonly routeSettings?: SimHttpApiStageRouteSettings | undefined;
|
|
12
15
|
}
|
|
13
16
|
/**
|
|
14
17
|
* Minimal structural stage view, as the Create and Get commands return.
|
|
15
18
|
*/
|
|
16
|
-
export interface SimHttpApiStageView {
|
|
19
|
+
export interface SimHttpApiStageView extends SimHttpApiRouteSettingsView {
|
|
17
20
|
StageName: string;
|
|
18
21
|
AutoDeploy: boolean;
|
|
19
22
|
CreatedDate: Date;
|
|
@@ -33,7 +36,19 @@ export declare class SimHttpApiStage {
|
|
|
33
36
|
readonly stageVariables: Readonly<Record<string, string>>;
|
|
34
37
|
readonly description?: string | undefined;
|
|
35
38
|
readonly createdDate: Date;
|
|
39
|
+
/**
|
|
40
|
+
* The throttle this stage serves its routes at, or undefined for a stage
|
|
41
|
+
* that was given no route settings and so throttles nothing.
|
|
42
|
+
*/
|
|
43
|
+
readonly routeSettings?: SimHttpApiStageRouteSettings | undefined;
|
|
36
44
|
constructor(properties: SimHttpApiStageProperties);
|
|
45
|
+
/**
|
|
46
|
+
* Whether this stage's throttle serves one more request to a route key now.
|
|
47
|
+
*
|
|
48
|
+
* Asking takes a token. A request that is admitted has already paid for
|
|
49
|
+
* itself, and a refused one has taken nothing.
|
|
50
|
+
*/
|
|
51
|
+
admits(routeKey: string): boolean;
|
|
37
52
|
/**
|
|
38
53
|
* Get the AWS-like view of this stage.
|
|
39
54
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sim-http-api-stage.d.ts","sourceRoot":"","sources":["../../../../../src/service/apigatewayv2/api/stage/sim-http-api-stage.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,eAAO,MAAM,0BAA0B,aAAa,CAAC;AAErD,UAAU,yBAAyB;IACjC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,cAAc,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,SAAS,CAAC;IACvE,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,QAAQ,CAAC,WAAW,EAAE,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"sim-http-api-stage.d.ts","sourceRoot":"","sources":["../../../../../src/service/apigatewayv2/api/stage/sim-http-api-stage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,gDAAgD,CAAC;AAClG,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,iDAAiD,CAAC;AAEpG;;;GAGG;AACH,eAAO,MAAM,0BAA0B,aAAa,CAAC;AAErD,UAAU,yBAAyB;IACjC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,cAAc,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,SAAS,CAAC;IACvE,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,QAAQ,CAAC,WAAW,EAAE,IAAI,CAAC;IAC3B,QAAQ,CAAC,aAAa,CAAC,EAAE,4BAA4B,GAAG,SAAS,CAAC;CACnE;AAED;;GAEG;AACH,MAAM,WAAW,mBAAoB,SAAQ,2BAA2B;IACtE,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,IAAI,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;GAMG;AACH,qBAAa,eAAe;IAC1B,SAAgB,SAAS,EAAE,MAAM,CAAC;IAClC,SAAgB,UAAU,EAAE,OAAO,CAAC;IACpC,SAAgB,cAAc,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACjE,SAAgB,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjD,SAAgB,WAAW,EAAE,IAAI,CAAC;IAElC;;;OAGG;IACH,SAAgB,aAAa,CAAC,EAAE,4BAA4B,GAAG,SAAS,CAAC;IAEzE,YAAY,UAAU,EAAE,yBAAyB,EAOhD;IAED;;;;;OAKG;IACH,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAEhC;IAED;;;;;OAKG;IACH,IAAI,IAAI,mBAAmB,CAiB1B;CACF"}
|
|
@@ -16,12 +16,27 @@ export class SimHttpApiStage {
|
|
|
16
16
|
stageVariables;
|
|
17
17
|
description;
|
|
18
18
|
createdDate;
|
|
19
|
+
/**
|
|
20
|
+
* The throttle this stage serves its routes at, or undefined for a stage
|
|
21
|
+
* that was given no route settings and so throttles nothing.
|
|
22
|
+
*/
|
|
23
|
+
routeSettings;
|
|
19
24
|
constructor(properties) {
|
|
20
25
|
this.stageName = properties.stageName;
|
|
21
26
|
this.autoDeploy = properties.autoDeploy;
|
|
22
27
|
this.stageVariables = properties.stageVariables ?? {};
|
|
23
28
|
this.description = properties.description;
|
|
24
29
|
this.createdDate = properties.createdDate;
|
|
30
|
+
this.routeSettings = properties.routeSettings;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Whether this stage's throttle serves one more request to a route key now.
|
|
34
|
+
*
|
|
35
|
+
* Asking takes a token. A request that is admitted has already paid for
|
|
36
|
+
* itself, and a refused one has taken nothing.
|
|
37
|
+
*/
|
|
38
|
+
admits(routeKey) {
|
|
39
|
+
return this.routeSettings?.admits(routeKey) ?? true;
|
|
25
40
|
}
|
|
26
41
|
/**
|
|
27
42
|
* Get the AWS-like view of this stage.
|
|
@@ -34,6 +49,7 @@ export class SimHttpApiStage {
|
|
|
34
49
|
StageName: this.stageName,
|
|
35
50
|
AutoDeploy: this.autoDeploy,
|
|
36
51
|
CreatedDate: new Date(this.createdDate),
|
|
52
|
+
...this.routeSettings?.view(),
|
|
37
53
|
};
|
|
38
54
|
if (Object.keys(this.stageVariables).length > 0) {
|
|
39
55
|
view.StageVariables = { ...this.stageVariables };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sim-http-api-stage.js","sourceRoot":"","sources":["../../../../../src/service/apigatewayv2/api/stage/sim-http-api-stage.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sim-http-api-stage.js","sourceRoot":"","sources":["../../../../../src/service/apigatewayv2/api/stage/sim-http-api-stage.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,UAAU,CAAC;AAsBrD;;;;;;GAMG;AACH,MAAM,OAAO,eAAe;IACV,SAAS,CAAS;IAClB,UAAU,CAAU;IACpB,cAAc,CAAmC;IACjD,WAAW,CAAsB;IACjC,WAAW,CAAO;IAElC;;;OAGG;IACa,aAAa,CAA4C;IAEzE,YAAY,UAAqC;QAC/C,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;QACtC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;QACxC,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC,cAAc,IAAI,EAAE,CAAC;QACtD,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC;QAC1C,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC;QAC1C,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC,aAAa,CAAC;IAChD,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,QAAgB;QACrB,OAAO,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC;IACtD,CAAC;IAED;;;;;OAKG;IACH,IAAI;QACF,MAAM,IAAI,GAAwB;YAChC,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,WAAW,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC;YACvC,GAAG,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE;SAC9B,CAAC;QAEF,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChD,IAAI,CAAC,cAAc,GAAG,EAAE,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QACnD,CAAC;QAED,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACnC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACtC,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { SimCfnResource } from "../../../cloudformation/resource/sim-cfn-resource.js";
|
|
2
|
+
import type { SimCfnTemplateValue } from "../../../cloudformation/template/value/sim-cfn-template-value.js";
|
|
3
|
+
import type { SimHttpApiRouteSettings, SimHttpApiRouteSettingsMap } from "../../api/stage/settings/sim-http-api-route-settings.type.js";
|
|
4
|
+
import type { SimCfnApiGatewayV2PropertyParser } from "../sim-cfn-api-gateway-v2-property-parser.js";
|
|
5
|
+
interface SimCfnHttpApiRouteSettingsPropertiesProperties {
|
|
6
|
+
readonly resource: SimCfnResource;
|
|
7
|
+
readonly propertyParser: SimCfnApiGatewayV2PropertyParser;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Reads the route settings of an AWS::ApiGatewayV2::Stage.
|
|
11
|
+
*
|
|
12
|
+
* `DefaultRouteSettings` is one of these and `RouteSettings` is a map of them
|
|
13
|
+
* keyed by route key. A member outside the throttling pair is recorded by the
|
|
14
|
+
* path it was written at. The stage still deploys, and the record says which
|
|
15
|
+
* entry of the template it deployed without.
|
|
16
|
+
*/
|
|
17
|
+
export declare class SimCfnHttpApiRouteSettingsProperties {
|
|
18
|
+
#private;
|
|
19
|
+
constructor(properties: SimCfnHttpApiRouteSettingsPropertiesProperties);
|
|
20
|
+
/**
|
|
21
|
+
* Read one route settings object, such as `DefaultRouteSettings`.
|
|
22
|
+
*/
|
|
23
|
+
settings(value: SimCfnTemplateValue | undefined, label: string): SimHttpApiRouteSettings | undefined;
|
|
24
|
+
/**
|
|
25
|
+
* Read the `RouteSettings` map, keyed by the route key each entry throttles.
|
|
26
|
+
*/
|
|
27
|
+
settingsMap(value: SimCfnTemplateValue | undefined, label: string): SimHttpApiRouteSettingsMap | undefined;
|
|
28
|
+
}
|
|
29
|
+
export {};
|
|
30
|
+
//# sourceMappingURL=sim-cfn-http-api-route-settings-properties.d.ts.map
|
package/dist/service/apigatewayv2/cfn/stage/sim-cfn-http-api-route-settings-properties.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-cfn-http-api-route-settings-properties.d.ts","sourceRoot":"","sources":["../../../../../src/service/apigatewayv2/cfn/stage/sim-cfn-http-api-route-settings-properties.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sDAAsD,CAAC;AAC3F,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kEAAkE,CAAC;AAC5G,OAAO,KAAK,EACV,uBAAuB,EACvB,0BAA0B,EAC3B,MAAM,8DAA8D,CAAC;AACtE,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,8CAA8C,CAAC;AAQrG,UAAU,8CAA8C;IACtD,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAClC,QAAQ,CAAC,cAAc,EAAE,gCAAgC,CAAC;CAC3D;AAED;;;;;;;GAOG;AACH,qBAAa,oCAAoC;;IAI/C,YAAY,UAAU,EAAE,8CAA8C,EAGrE;IAED;;OAEG;IACH,QAAQ,CACN,KAAK,EAAE,mBAAmB,GAAG,SAAS,EACtC,KAAK,EAAE,MAAM,GACZ,uBAAuB,GAAG,SAAS,CAsBrC;IAED;;OAEG;IACH,WAAW,CACT,KAAK,EAAE,mBAAmB,GAAG,SAAS,EACtC,KAAK,EAAE,MAAM,GACZ,0BAA0B,GAAG,SAAS,CAiBxC;CAgCF"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The route settings members this simulation deploys. The rest are metrics and
|
|
3
|
+
* logging, and are recorded against the Resource rather than acted on.
|
|
4
|
+
*/
|
|
5
|
+
const simulatedMembers = ["ThrottlingRateLimit", "ThrottlingBurstLimit"];
|
|
6
|
+
/**
|
|
7
|
+
* Reads the route settings of an AWS::ApiGatewayV2::Stage.
|
|
8
|
+
*
|
|
9
|
+
* `DefaultRouteSettings` is one of these and `RouteSettings` is a map of them
|
|
10
|
+
* keyed by route key. A member outside the throttling pair is recorded by the
|
|
11
|
+
* path it was written at. The stage still deploys, and the record says which
|
|
12
|
+
* entry of the template it deployed without.
|
|
13
|
+
*/
|
|
14
|
+
export class SimCfnHttpApiRouteSettingsProperties {
|
|
15
|
+
#resource;
|
|
16
|
+
#propertyParser;
|
|
17
|
+
constructor(properties) {
|
|
18
|
+
this.#resource = properties.resource;
|
|
19
|
+
this.#propertyParser = properties.propertyParser;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Read one route settings object, such as `DefaultRouteSettings`.
|
|
23
|
+
*/
|
|
24
|
+
settings(value, label) {
|
|
25
|
+
const record = this.#propertyParser.optionalRecord(this.#resource, value, label);
|
|
26
|
+
if (record === undefined) {
|
|
27
|
+
return undefined;
|
|
28
|
+
}
|
|
29
|
+
this.#recordUnsimulated(record, label);
|
|
30
|
+
const rate = this.#limit(record["ThrottlingRateLimit"], label, "Rate");
|
|
31
|
+
const burst = this.#limit(record["ThrottlingBurstLimit"], label, "Burst");
|
|
32
|
+
// A limit the template left out is left out here too. A stage reports the
|
|
33
|
+
// settings it was written with.
|
|
34
|
+
return {
|
|
35
|
+
...(rate !== undefined && { ThrottlingRateLimit: rate }),
|
|
36
|
+
...(burst !== undefined && { ThrottlingBurstLimit: burst }),
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Read the `RouteSettings` map, keyed by the route key each entry throttles.
|
|
41
|
+
*/
|
|
42
|
+
settingsMap(value, label) {
|
|
43
|
+
const record = this.#propertyParser.optionalRecord(this.#resource, value, label);
|
|
44
|
+
if (record === undefined) {
|
|
45
|
+
return undefined;
|
|
46
|
+
}
|
|
47
|
+
return Object.fromEntries(Object.entries(record).map(([routeKey, settings]) => [
|
|
48
|
+
routeKey,
|
|
49
|
+
this.settings(settings, `${label}.${routeKey}`) ?? {},
|
|
50
|
+
]));
|
|
51
|
+
}
|
|
52
|
+
#limit(value, label, limit) {
|
|
53
|
+
return this.#propertyParser.optionalNumber(this.#resource, value, `${label}.Throttling${limit}Limit`);
|
|
54
|
+
}
|
|
55
|
+
#recordUnsimulated(record, label) {
|
|
56
|
+
for (const member of Object.keys(record)) {
|
|
57
|
+
if (simulatedMembers.includes(member)) {
|
|
58
|
+
continue;
|
|
59
|
+
}
|
|
60
|
+
this.#resource.ignoreProperty(`${label}.${member}`, `AWS::ApiGatewayV2::Stage route setting ${member} is not simulated, ` +
|
|
61
|
+
`so the stage is created without it and behaves differently here ` +
|
|
62
|
+
`than on AWS. The simulated route settings are ` +
|
|
63
|
+
`${simulatedMembers.join(", ")}.`);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=sim-cfn-http-api-route-settings-properties.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-cfn-http-api-route-settings-properties.js","sourceRoot":"","sources":["../../../../../src/service/apigatewayv2/cfn/stage/sim-cfn-http-api-route-settings-properties.ts"],"names":[],"mappings":"AAQA;;;GAGG;AACH,MAAM,gBAAgB,GAAG,CAAC,qBAAqB,EAAE,sBAAsB,CAAC,CAAC;AAOzE;;;;;;;GAOG;AACH,MAAM,OAAO,oCAAoC;IACtC,SAAS,CAAiB;IAC1B,eAAe,CAAmC;IAE3D,YAAY,UAA0D;QACpE,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC,QAAQ,CAAC;QACrC,IAAI,CAAC,eAAe,GAAG,UAAU,CAAC,cAAc,CAAC;IACnD,CAAC;IAED;;OAEG;IACH,QAAQ,CACN,KAAsC,EACtC,KAAa;QAEb,MAAM,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,cAAc,CAChD,IAAI,CAAC,SAAS,EACd,KAAK,EACL,KAAK,CACN,CAAC;QAEF,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAEvC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QACvE,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,sBAAsB,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QAE1E,0EAA0E;QAC1E,gCAAgC;QAChC,OAAO;YACL,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,CAAC;YACxD,GAAG,CAAC,KAAK,KAAK,SAAS,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE,CAAC;SAC5D,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,WAAW,CACT,KAAsC,EACtC,KAAa;QAEb,MAAM,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,cAAc,CAChD,IAAI,CAAC,SAAS,EACd,KAAK,EACL,KAAK,CACN,CAAC;QAEF,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC;YACnD,QAAQ;YACR,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,KAAK,IAAI,QAAQ,EAAE,CAAC,IAAI,EAAE;SACtD,CAAC,CACH,CAAC;IACJ,CAAC;IAED,MAAM,CACJ,KAAsC,EACtC,KAAa,EACb,KAAa;QAEb,OAAO,IAAI,CAAC,eAAe,CAAC,cAAc,CACxC,IAAI,CAAC,SAAS,EACd,KAAK,EACL,GAAG,KAAK,cAAc,KAAK,OAAO,CACnC,CAAC;IACJ,CAAC;IAED,kBAAkB,CAChB,MAAqD,EACrD,KAAa;QAEb,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YACzC,IAAI,gBAAgB,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBACtC,SAAS;YACX,CAAC;YAED,IAAI,CAAC,SAAS,CAAC,cAAc,CAC3B,GAAG,KAAK,IAAI,MAAM,EAAE,EACpB,0CAA0C,MAAM,qBAAqB;gBACnE,kEAAkE;gBAClE,gDAAgD;gBAChD,GAAG,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CACpC,CAAC;QACJ,CAAC;IACH,CAAC;CACF"}
|
|
@@ -13,6 +13,7 @@ export declare class SimCfnHttpApiStageProperties {
|
|
|
13
13
|
private readonly resource;
|
|
14
14
|
private readonly properties;
|
|
15
15
|
private readonly propertyParser;
|
|
16
|
+
private readonly routeSettingsParser;
|
|
16
17
|
constructor(properties: SimCfnHttpApiStagePropertiesProperties);
|
|
17
18
|
/**
|
|
18
19
|
* The API this stage belongs to, which a template reaches with a `Ref` on
|
|
@@ -28,7 +29,8 @@ export declare class SimCfnHttpApiStageProperties {
|
|
|
28
29
|
*
|
|
29
30
|
* `AutoDeploy` is passed through as the template wrote it, so a stage that
|
|
30
31
|
* does not deploy itself is refused by CreateStage with the reason it is
|
|
31
|
-
* refused.
|
|
32
|
+
* refused. The route settings arrive holding only their throttling members.
|
|
33
|
+
* The ones CreateStage would refuse never reach it from a template.
|
|
32
34
|
*/
|
|
33
35
|
createStageInput(): SimCreateStageCommandInput;
|
|
34
36
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sim-cfn-http-api-stage-properties.d.ts","sourceRoot":"","sources":["../../../../../src/service/apigatewayv2/cfn/stage/sim-cfn-http-api-stage-properties.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sDAAsD,CAAC;AAC3F,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,kEAAkE,CAAC;AAClH,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,sCAAsC,CAAC;
|
|
1
|
+
{"version":3,"file":"sim-cfn-http-api-stage-properties.d.ts","sourceRoot":"","sources":["../../../../../src/service/apigatewayv2/cfn/stage/sim-cfn-http-api-stage-properties.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sDAAsD,CAAC;AAC3F,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,kEAAkE,CAAC;AAClH,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,sCAAsC,CAAC;AAsBvF,UAAU,sCAAsC;IAC9C,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAClC,QAAQ,CAAC,UAAU,EAAE,yBAAyB,CAAC;CAChD;AAED;;;GAGG;AACH,qBAAa,4BAA4B;IACvC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAiB;IAC1C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA4B;IACvD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAG5B;IAEH,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAuC;IAE3E,YAAY,UAAU,EAAE,sCAAsC,EAS7D;IAED;;;OAGG;IACH,KAAK,IAAI,MAAM,CAMd;IAED;;OAEG;IACH,SAAS,IAAI,MAAM,CAMlB;IAED;;;;;;;OAOG;IACH,gBAAgB,IAAI,0BAA0B,CA4B7C;CACF"}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { SimCfnApiGatewayV2PropertyParser } from "../sim-cfn-api-gateway-v2-property-parser.js";
|
|
2
|
+
import { SimCfnHttpApiRouteSettingsProperties } from "./sim-cfn-http-api-route-settings-properties.js";
|
|
2
3
|
/**
|
|
3
4
|
* The AWS::ApiGatewayV2::Stage properties this simulation deploys.
|
|
4
5
|
*
|
|
5
|
-
* `DeploymentId`, `AccessLogSettings
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
6
|
+
* `DeploymentId`, `AccessLogSettings` and `Tags` are left out, so a template
|
|
7
|
+
* carrying one is recorded and the stage is created without it. None of them
|
|
8
|
+
* is modelled, and a stage that looked logged to the template and logged
|
|
9
|
+
* nothing when serving is the failure worth recording.
|
|
9
10
|
*/
|
|
10
11
|
const simulatedProperties = [
|
|
11
12
|
"ApiId",
|
|
@@ -13,6 +14,8 @@ const simulatedProperties = [
|
|
|
13
14
|
"AutoDeploy",
|
|
14
15
|
"StageVariables",
|
|
15
16
|
"Description",
|
|
17
|
+
"DefaultRouteSettings",
|
|
18
|
+
"RouteSettings",
|
|
16
19
|
];
|
|
17
20
|
/**
|
|
18
21
|
* Reads AWS::ApiGatewayV2::Stage CloudFormation properties into the CreateStage
|
|
@@ -25,9 +28,14 @@ export class SimCfnHttpApiStageProperties {
|
|
|
25
28
|
resourceType: "AWS::ApiGatewayV2::Stage",
|
|
26
29
|
simulated: simulatedProperties,
|
|
27
30
|
});
|
|
31
|
+
routeSettingsParser;
|
|
28
32
|
constructor(properties) {
|
|
29
33
|
this.resource = properties.resource;
|
|
30
34
|
this.properties = properties.properties;
|
|
35
|
+
this.routeSettingsParser = new SimCfnHttpApiRouteSettingsProperties({
|
|
36
|
+
resource: this.resource,
|
|
37
|
+
propertyParser: this.propertyParser,
|
|
38
|
+
});
|
|
31
39
|
this.propertyParser.ignoreUnsimulated(this.resource, this.properties);
|
|
32
40
|
}
|
|
33
41
|
/**
|
|
@@ -48,7 +56,8 @@ export class SimCfnHttpApiStageProperties {
|
|
|
48
56
|
*
|
|
49
57
|
* `AutoDeploy` is passed through as the template wrote it, so a stage that
|
|
50
58
|
* does not deploy itself is refused by CreateStage with the reason it is
|
|
51
|
-
* refused.
|
|
59
|
+
* refused. The route settings arrive holding only their throttling members.
|
|
60
|
+
* The ones CreateStage would refuse never reach it from a template.
|
|
52
61
|
*/
|
|
53
62
|
createStageInput() {
|
|
54
63
|
return {
|
|
@@ -57,6 +66,8 @@ export class SimCfnHttpApiStageProperties {
|
|
|
57
66
|
AutoDeploy: this.propertyParser.optionalBoolean(this.resource, this.properties["AutoDeploy"], "AutoDeploy"),
|
|
58
67
|
StageVariables: this.propertyParser.optionalStringMap(this.resource, this.properties["StageVariables"], "StageVariables"),
|
|
59
68
|
Description: this.propertyParser.optionalString(this.resource, this.properties["Description"], "Description"),
|
|
69
|
+
DefaultRouteSettings: this.routeSettingsParser.settings(this.properties["DefaultRouteSettings"], "DefaultRouteSettings"),
|
|
70
|
+
RouteSettings: this.routeSettingsParser.settingsMap(this.properties["RouteSettings"], "RouteSettings"),
|
|
60
71
|
};
|
|
61
72
|
}
|
|
62
73
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sim-cfn-http-api-stage-properties.js","sourceRoot":"","sources":["../../../../../src/service/apigatewayv2/cfn/stage/sim-cfn-http-api-stage-properties.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gCAAgC,EAAE,MAAM,8CAA8C,CAAC;
|
|
1
|
+
{"version":3,"file":"sim-cfn-http-api-stage-properties.js","sourceRoot":"","sources":["../../../../../src/service/apigatewayv2/cfn/stage/sim-cfn-http-api-stage-properties.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gCAAgC,EAAE,MAAM,8CAA8C,CAAC;AAChG,OAAO,EAAE,oCAAoC,EAAE,MAAM,iDAAiD,CAAC;AAEvG;;;;;;;GAOG;AACH,MAAM,mBAAmB,GAAG;IAC1B,OAAO;IACP,WAAW;IACX,YAAY;IACZ,gBAAgB;IAChB,aAAa;IACb,sBAAsB;IACtB,eAAe;CAChB,CAAC;AAOF;;;GAGG;AACH,MAAM,OAAO,4BAA4B;IACtB,QAAQ,CAAiB;IACzB,UAAU,CAA4B;IACtC,cAAc,GAAG,IAAI,gCAAgC,CAAC;QACrE,YAAY,EAAE,0BAA0B;QACxC,SAAS,EAAE,mBAAmB;KAC/B,CAAC,CAAC;IAEc,mBAAmB,CAAuC;IAE3E,YAAY,UAAkD;QAC5D,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;QACpC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;QACxC,IAAI,CAAC,mBAAmB,GAAG,IAAI,oCAAoC,CAAC;YAClE,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,cAAc,EAAE,IAAI,CAAC,cAAc;SACpC,CAAC,CAAC;QAEH,IAAI,CAAC,cAAc,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IACxE,CAAC;IAED;;;OAGG;IACH,KAAK;QACH,OAAO,IAAI,CAAC,cAAc,CAAC,cAAc,CACvC,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EACxB,OAAO,CACR,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,cAAc,CAAC,cAAc,CACvC,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAC5B,WAAW,CACZ,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACH,gBAAgB;QACd,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE;YACnB,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE;YAC3B,UAAU,EAAE,IAAI,CAAC,cAAc,CAAC,eAAe,CAC7C,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAC7B,YAAY,CACb;YACD,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,iBAAiB,CACnD,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,EACjC,gBAAgB,CACjB;YACD,WAAW,EAAE,IAAI,CAAC,cAAc,CAAC,cAAc,CAC7C,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,EAC9B,aAAa,CACd;YACD,oBAAoB,EAAE,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CACrD,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC,EACvC,sBAAsB,CACvB;YACD,aAAa,EAAE,IAAI,CAAC,mBAAmB,CAAC,WAAW,CACjD,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,EAChC,eAAe,CAChB;SACF,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -13,8 +13,13 @@ export declare class SimApiGatewayV2UnsimulatedInput {
|
|
|
13
13
|
constructor(operation: string);
|
|
14
14
|
/**
|
|
15
15
|
* Refuse every supplied input that is not one of the accepted options.
|
|
16
|
+
*
|
|
17
|
+
* An option nested inside another, such as one member of a stage's
|
|
18
|
+
* `DefaultRouteSettings`, is refused by the same accepted set. `within` names
|
|
19
|
+
* the path it was written at, and the message then points at the member the
|
|
20
|
+
* caller wrote.
|
|
16
21
|
*/
|
|
17
|
-
refuseUnaccepted(input: object, accepted: readonly string[]): void;
|
|
22
|
+
refuseUnaccepted(input: object, accepted: readonly string[], within?: string): void;
|
|
18
23
|
/**
|
|
19
24
|
* Refuse an input set to anything but the one value this simulation models.
|
|
20
25
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sim-api-gateway-v2-unsimulated-input.d.ts","sourceRoot":"","sources":["../../../../src/service/apigatewayv2/command/sim-api-gateway-v2-unsimulated-input.ts"],"names":[],"mappings":"AAEA;;;;;;;;;GASG;AACH,qBAAa,+BAA+B;IAC1C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IAEnC,YAAY,SAAS,EAAE,MAAM,EAE5B;IAED
|
|
1
|
+
{"version":3,"file":"sim-api-gateway-v2-unsimulated-input.d.ts","sourceRoot":"","sources":["../../../../src/service/apigatewayv2/command/sim-api-gateway-v2-unsimulated-input.ts"],"names":[],"mappings":"AAEA;;;;;;;;;GASG;AACH,qBAAa,+BAA+B;IAC1C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IAEnC,YAAY,SAAS,EAAE,MAAM,EAE5B;IAED;;;;;;;OAOG;IACH,gBAAgB,CACd,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,SAAS,MAAM,EAAE,EAC3B,MAAM,SAAK,GACV,IAAI,CAWN;IAED;;OAEG;IACH,YAAY,CACV,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,GACd,IAAI,CAEN;IAED;;OAEG;IACH,iBAAiB,CACf,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,SAAS,EAAE,SAAS,MAAM,EAAE,EAC5B,OAAO,EAAE,MAAM,GACd,IAAI,CAWN;IAED;;OAEG;IACH,YAAY,CAAC,KAAK,EAAE;QAClB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;QACzC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;KACzC,GAAG,IAAI,CAUP;IAED;;OAEG;IACH,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAQzD;IAED;;OAEG;IACH,OAAO,CAAC,eAAe;CASxB"}
|
|
@@ -16,14 +16,19 @@ export class SimApiGatewayV2UnsimulatedInput {
|
|
|
16
16
|
}
|
|
17
17
|
/**
|
|
18
18
|
* Refuse every supplied input that is not one of the accepted options.
|
|
19
|
+
*
|
|
20
|
+
* An option nested inside another, such as one member of a stage's
|
|
21
|
+
* `DefaultRouteSettings`, is refused by the same accepted set. `within` names
|
|
22
|
+
* the path it was written at, and the message then points at the member the
|
|
23
|
+
* caller wrote.
|
|
19
24
|
*/
|
|
20
|
-
refuseUnaccepted(input, accepted) {
|
|
25
|
+
refuseUnaccepted(input, accepted, within = "") {
|
|
21
26
|
for (const [option, value] of Object.entries(input)) {
|
|
22
27
|
if (value === undefined || accepted.includes(option)) {
|
|
23
28
|
continue;
|
|
24
29
|
}
|
|
25
|
-
throw new SimApiGatewayV2BadRequest(`${this.operation} ${option} is not simulated: it would be
|
|
26
|
-
`here and applied on real AWS`);
|
|
30
|
+
throw new SimApiGatewayV2BadRequest(`${this.operation} ${within}${option} is not simulated: it would be ` +
|
|
31
|
+
`ignored here and applied on real AWS`);
|
|
27
32
|
}
|
|
28
33
|
}
|
|
29
34
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sim-api-gateway-v2-unsimulated-input.js","sourceRoot":"","sources":["../../../../src/service/apigatewayv2/command/sim-api-gateway-v2-unsimulated-input.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,sCAAsC,CAAC;AAEjF;;;;;;;;;GASG;AACH,MAAM,OAAO,+BAA+B;IACzB,SAAS,CAAS;IAEnC,YAAY,SAAiB;QAC3B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;IAED
|
|
1
|
+
{"version":3,"file":"sim-api-gateway-v2-unsimulated-input.js","sourceRoot":"","sources":["../../../../src/service/apigatewayv2/command/sim-api-gateway-v2-unsimulated-input.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,sCAAsC,CAAC;AAEjF;;;;;;;;;GASG;AACH,MAAM,OAAO,+BAA+B;IACzB,SAAS,CAAS;IAEnC,YAAY,SAAiB;QAC3B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;IAED;;;;;;;OAOG;IACH,gBAAgB,CACd,KAAa,EACb,QAA2B,EAC3B,MAAM,GAAG,EAAE;QAEX,KAAK,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACpD,IAAI,KAAK,KAAK,SAAS,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBACrD,SAAS;YACX,CAAC;YAED,MAAM,IAAI,yBAAyB,CACjC,GAAG,IAAI,CAAC,SAAS,IAAI,MAAM,GAAG,MAAM,iCAAiC;gBACnE,sCAAsC,CACzC,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACH,YAAY,CACV,MAAc,EACd,KAAyB,EACzB,SAAiB,EACjB,OAAe;QAEf,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,CAAC;IAC9D,CAAC;IAED;;OAEG;IACH,iBAAiB,CACf,MAAc,EACd,KAAyB,EACzB,SAA4B,EAC5B,OAAe;QAEf,IAAI,KAAK,KAAK,SAAS,IAAI,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACrD,OAAO;QACT,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;QAElD,MAAM,IAAI,yBAAyB,CACjC,GAAG,IAAI,CAAC,SAAS,IAAI,MAAM,KAAK,KAAK,sBAAsB;YACzD,GAAG,OAAO,KAAK,SAAS,EAAE,CAC7B,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,KAGZ;QACC,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACpE,OAAO;QACT,CAAC;QAED,MAAM,IAAI,yBAAyB,CACjC,GAAG,IAAI,CAAC,SAAS,qDAAqD;YACpE,qEAAqE;YACrE,qBAAqB,CACxB,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,OAAO,CAAC,MAAc,EAAE,KAAyB;QAC/C,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9C,MAAM,IAAI,yBAAyB,CACjC,GAAG,IAAI,CAAC,SAAS,aAAa,MAAM,EAAE,CACvC,CAAC;QACJ,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACK,eAAe,CAAC,SAA4B;QAClD,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEhE,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,OAAO,QAAQ,MAAM,iBAAiB,CAAC;QACzC,CAAC;QAED,OAAO,QAAQ,MAAM,gBAAgB,CAAC;IACxC,CAAC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sim-http-api-stage-commands.d.ts","sourceRoot":"","sources":["../../../../../src/service/apigatewayv2/command/stage/sim-http-api-stage-commands.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAGpE,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,0CAA0C,CAAC;AAE9F,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"sim-http-api-stage-commands.d.ts","sourceRoot":"","sources":["../../../../../src/service/apigatewayv2/command/stage/sim-http-api-stage-commands.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAGpE,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,0CAA0C,CAAC;AAE9F,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAGlE,OAAO,KAAK,EACV,qBAAqB,EACrB,2BAA2B,EAC3B,qBAAqB,EACrB,2BAA2B,EAC3B,mBAAmB,EACnB,yBAAyB,EAC1B,MAAM,oBAAoB,CAAC;AAc5B,UAAU,iCAAiC;IACzC,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAClC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC;CAC1B;AAED;;GAEG;AACH,qBAAa,uBAAuB;IAClC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAmB;IAC1C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAW;IACjC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA8B;IAEpD,YAAY,UAAU,EAAE,iCAAiC,EAGxD;IAED;;OAEG;IACH,WAAW,CACT,OAAO,EAAE,qBAAqB,EAC9B,OAAO,CAAC,EAAE,6BAA6B,GACtC,2BAA2B,CAiC7B;IAED;;OAEG;IACH,SAAS,CACP,OAAO,EAAE,mBAAmB,EAC5B,OAAO,CAAC,EAAE,6BAA6B,GACtC,yBAAyB,CAiB3B;IAED;;;;;;OAMG;IACH,WAAW,CACT,OAAO,EAAE,qBAAqB,EAC9B,OAAO,CAAC,EAAE,6BAA6B,GACtC,2BAA2B,CAuB7B;CACF"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { SimHttpApiStage } from "../../api/stage/sim-http-api-stage.js";
|
|
2
2
|
import { SimApiGatewayV2NotFound } from "../../error/sim-api-gateway-v2.error.js";
|
|
3
3
|
import { SimApiGatewayV2UnsimulatedInput } from "../sim-api-gateway-v2-unsimulated-input.js";
|
|
4
|
+
import { simHttpApiStageRouteSettings } from "./sim-http-api-stage-route-settings-input.js";
|
|
4
5
|
import { SimHttpApiStageRules } from "./sim-http-api-stage-rules.js";
|
|
5
6
|
const stagesPath = "/stages";
|
|
6
7
|
const acceptedCreateStageOptions = [
|
|
@@ -9,6 +10,8 @@ const acceptedCreateStageOptions = [
|
|
|
9
10
|
"AutoDeploy",
|
|
10
11
|
"StageVariables",
|
|
11
12
|
"Description",
|
|
13
|
+
"DefaultRouteSettings",
|
|
14
|
+
"RouteSettings",
|
|
12
15
|
];
|
|
13
16
|
/**
|
|
14
17
|
* The commands addressing the stages of an API.
|
|
@@ -31,6 +34,10 @@ export class SimHttpApiStageCommands {
|
|
|
31
34
|
const apiId = unsimulated.require("ApiId", input.ApiId);
|
|
32
35
|
const stageName = this.rules.requireStageName(unsimulated.require("StageName", input.StageName));
|
|
33
36
|
this.rules.requireAutoDeploy(input.AutoDeploy);
|
|
37
|
+
const routeSettings = simHttpApiStageRouteSettings(input, {
|
|
38
|
+
unsimulated,
|
|
39
|
+
clock: this.clock,
|
|
40
|
+
});
|
|
34
41
|
const httpApi = this.access.api({
|
|
35
42
|
method: "POST",
|
|
36
43
|
apiId,
|
|
@@ -44,6 +51,7 @@ export class SimHttpApiStageCommands {
|
|
|
44
51
|
stageVariables: input.StageVariables,
|
|
45
52
|
description: input.Description,
|
|
46
53
|
createdDate: this.clock.now(),
|
|
54
|
+
routeSettings,
|
|
47
55
|
});
|
|
48
56
|
httpApi.stages.add(stage);
|
|
49
57
|
return { ...stage.view(), $metadata: {} };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sim-http-api-stage-commands.js","sourceRoot":"","sources":["../../../../../src/service/apigatewayv2/command/stage/sim-http-api-stage-commands.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACxE,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAC;AAElF,OAAO,EAAE,+BAA+B,EAAE,MAAM,4CAA4C,CAAC;AAE7F,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAUrE,MAAM,UAAU,GAAG,SAAS,CAAC;AAE7B,MAAM,0BAA0B,GAAG;IACjC,OAAO;IACP,WAAW;IACX,YAAY;IACZ,gBAAgB;IAChB,aAAa;
|
|
1
|
+
{"version":3,"file":"sim-http-api-stage-commands.js","sourceRoot":"","sources":["../../../../../src/service/apigatewayv2/command/stage/sim-http-api-stage-commands.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { SimClock } from "../../../../util/clock/sim-clock.js";
|
|
2
|
+
import { SimHttpApiStageRouteSettings } from "../../api/stage/settings/sim-http-api-stage-route-settings.js";
|
|
3
|
+
import type { SimApiGatewayV2UnsimulatedInput } from "../sim-api-gateway-v2-unsimulated-input.js";
|
|
4
|
+
import type { SimCreateStageCommandInput } from "./stage.command.js";
|
|
5
|
+
interface SimHttpApiStageRouteSettingsInputProperties {
|
|
6
|
+
readonly unsimulated: SimApiGatewayV2UnsimulatedInput;
|
|
7
|
+
readonly clock: SimClock;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Reads the throttling a CreateStage input asks for.
|
|
11
|
+
*
|
|
12
|
+
* Both `DefaultRouteSettings` and every entry of `RouteSettings` are checked
|
|
13
|
+
* member by member. A stage asking for logging is refused by the member that
|
|
14
|
+
* asks for it.
|
|
15
|
+
*/
|
|
16
|
+
export declare function simHttpApiStageRouteSettings(input: SimCreateStageCommandInput, properties: SimHttpApiStageRouteSettingsInputProperties): SimHttpApiStageRouteSettings | undefined;
|
|
17
|
+
export {};
|
|
18
|
+
//# sourceMappingURL=sim-http-api-stage-route-settings-input.d.ts.map
|