@kensio/yulin 1.18.2 → 1.19.1
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/sdk/wire/sim-sdk-wire-operation.d.ts +15 -0
- package/dist/sdk/wire/sim-sdk-wire-operation.d.ts.map +1 -1
- package/dist/sdk/wire/sim-sdk-wire-operation.js +54 -2
- package/dist/sdk/wire/sim-sdk-wire-operation.js.map +1 -1
- package/dist/serve/http/api/sim-aws-api-endpoint.d.ts +3 -0
- package/dist/serve/http/api/sim-aws-api-endpoint.d.ts.map +1 -1
- package/dist/serve/http/api/sim-aws-api-endpoint.js +10 -2
- package/dist/serve/http/api/sim-aws-api-endpoint.js.map +1 -1
- package/dist/service/aws/factory/sim-aws-lambda-collaborators.d.ts +6 -0
- package/dist/service/aws/factory/sim-aws-lambda-collaborators.d.ts.map +1 -1
- package/dist/service/aws/factory/sim-aws-lambda-collaborators.js +6 -0
- package/dist/service/aws/factory/sim-aws-lambda-collaborators.js.map +1 -1
- package/dist/service/cognito/cfn/client/sim-cfn-cognito-client-properties.d.ts.map +1 -1
- package/dist/service/cognito/cfn/client/sim-cfn-cognito-client-properties.js +5 -0
- package/dist/service/cognito/cfn/client/sim-cfn-cognito-client-properties.js.map +1 -1
- package/dist/service/cognito/cfn/user-pool/sim-cfn-cognito-sign-in-policy.d.ts +5 -4
- package/dist/service/cognito/cfn/user-pool/sim-cfn-cognito-sign-in-policy.d.ts.map +1 -1
- package/dist/service/cognito/cfn/user-pool/sim-cfn-cognito-sign-in-policy.js +5 -4
- package/dist/service/cognito/cfn/user-pool/sim-cfn-cognito-sign-in-policy.js.map +1 -1
- package/dist/service/cognito/cfn/user-pool/sim-cfn-cognito-user-pool-mfa.d.ts +13 -0
- package/dist/service/cognito/cfn/user-pool/sim-cfn-cognito-user-pool-mfa.d.ts.map +1 -1
- package/dist/service/cognito/cfn/user-pool/sim-cfn-cognito-user-pool-mfa.js +30 -1
- package/dist/service/cognito/cfn/user-pool/sim-cfn-cognito-user-pool-mfa.js.map +1 -1
- package/dist/service/cognito/cfn/user-pool/sim-cfn-cognito-user-pool-properties.d.ts.map +1 -1
- package/dist/service/cognito/cfn/user-pool/sim-cfn-cognito-user-pool-properties.js +9 -0
- package/dist/service/cognito/cfn/user-pool/sim-cfn-cognito-user-pool-properties.js.map +1 -1
- package/dist/service/cognito/command/auth/auth.command.d.ts +5 -0
- package/dist/service/cognito/command/auth/auth.command.d.ts.map +1 -1
- package/dist/service/cognito/command/auth/sim-cognito-answering-user.d.ts +22 -0
- package/dist/service/cognito/command/auth/sim-cognito-answering-user.d.ts.map +1 -0
- package/dist/service/cognito/command/auth/sim-cognito-answering-user.js +25 -0
- package/dist/service/cognito/command/auth/sim-cognito-answering-user.js.map +1 -0
- package/dist/service/cognito/command/auth/sim-cognito-auth-challenge.d.ts.map +1 -1
- package/dist/service/cognito/command/auth/sim-cognito-auth-challenge.js +9 -0
- package/dist/service/cognito/command/auth/sim-cognito-auth-challenge.js.map +1 -1
- package/dist/service/cognito/command/auth/sim-cognito-auth-commands.d.ts +6 -0
- package/dist/service/cognito/command/auth/sim-cognito-auth-commands.d.ts.map +1 -1
- package/dist/service/cognito/command/auth/sim-cognito-auth-commands.js +23 -5
- package/dist/service/cognito/command/auth/sim-cognito-auth-commands.js.map +1 -1
- package/dist/service/cognito/command/auth/sim-cognito-auth-flow-runner.d.ts +7 -3
- package/dist/service/cognito/command/auth/sim-cognito-auth-flow-runner.d.ts.map +1 -1
- package/dist/service/cognito/command/auth/sim-cognito-auth-flow-runner.js +9 -3
- package/dist/service/cognito/command/auth/sim-cognito-auth-flow-runner.js.map +1 -1
- package/dist/service/cognito/command/auth/sim-cognito-auth-flow.d.ts +6 -0
- package/dist/service/cognito/command/auth/sim-cognito-auth-flow.d.ts.map +1 -1
- package/dist/service/cognito/command/auth/sim-cognito-auth-flow.js +6 -0
- package/dist/service/cognito/command/auth/sim-cognito-auth-flow.js.map +1 -1
- package/dist/service/cognito/command/auth/sim-cognito-auth-flows.d.ts +8 -0
- package/dist/service/cognito/command/auth/sim-cognito-auth-flows.d.ts.map +1 -1
- package/dist/service/cognito/command/auth/sim-cognito-auth-flows.js +16 -2
- package/dist/service/cognito/command/auth/sim-cognito-auth-flows.js.map +1 -1
- package/dist/service/cognito/command/auth/sim-cognito-auth-parameters.d.ts +7 -0
- package/dist/service/cognito/command/auth/sim-cognito-auth-parameters.d.ts.map +1 -1
- package/dist/service/cognito/command/auth/sim-cognito-auth-parameters.js +16 -0
- package/dist/service/cognito/command/auth/sim-cognito-auth-parameters.js.map +1 -1
- package/dist/service/cognito/command/auth/sim-cognito-available-challenges.d.ts +35 -0
- package/dist/service/cognito/command/auth/sim-cognito-available-challenges.d.ts.map +1 -0
- package/dist/service/cognito/command/auth/sim-cognito-available-challenges.js +83 -0
- package/dist/service/cognito/command/auth/sim-cognito-available-challenges.js.map +1 -0
- package/dist/service/cognito/command/auth/sim-cognito-challenge-responses.d.ts +3 -0
- package/dist/service/cognito/command/auth/sim-cognito-challenge-responses.d.ts.map +1 -1
- package/dist/service/cognito/command/auth/sim-cognito-challenge-responses.js +18 -0
- package/dist/service/cognito/command/auth/sim-cognito-challenge-responses.js.map +1 -1
- package/dist/service/cognito/command/auth/sim-cognito-first-factor-challenge.d.ts +54 -0
- package/dist/service/cognito/command/auth/sim-cognito-first-factor-challenge.d.ts.map +1 -0
- package/dist/service/cognito/command/auth/sim-cognito-first-factor-challenge.js +87 -0
- package/dist/service/cognito/command/auth/sim-cognito-first-factor-challenge.js.map +1 -0
- package/dist/service/cognito/command/auth/sim-cognito-first-factor-response.d.ts +55 -0
- package/dist/service/cognito/command/auth/sim-cognito-first-factor-response.d.ts.map +1 -0
- package/dist/service/cognito/command/auth/sim-cognito-first-factor-response.js +64 -0
- package/dist/service/cognito/command/auth/sim-cognito-first-factor-response.js.map +1 -0
- package/dist/service/cognito/command/auth/sim-cognito-mfa-challenge.js +1 -1
- package/dist/service/cognito/command/auth/sim-cognito-mfa-challenge.js.map +1 -1
- package/dist/service/cognito/command/auth/sim-cognito-new-password-challenge.d.ts +2 -1
- package/dist/service/cognito/command/auth/sim-cognito-new-password-challenge.d.ts.map +1 -1
- package/dist/service/cognito/command/auth/sim-cognito-new-password-challenge.js +2 -2
- package/dist/service/cognito/command/auth/sim-cognito-new-password-challenge.js.map +1 -1
- package/dist/service/cognito/command/auth/sim-cognito-password-response.d.ts +31 -0
- package/dist/service/cognito/command/auth/sim-cognito-password-response.d.ts.map +1 -0
- package/dist/service/cognito/command/auth/sim-cognito-password-response.js +39 -0
- package/dist/service/cognito/command/auth/sim-cognito-password-response.js.map +1 -0
- package/dist/service/cognito/command/auth/sim-cognito-password-sign-in.js +1 -1
- package/dist/service/cognito/command/auth/sim-cognito-password-sign-in.js.map +1 -1
- package/dist/service/cognito/command/auth/sim-cognito-unsimulated-auth-options.d.ts.map +1 -1
- package/dist/service/cognito/command/auth/sim-cognito-unsimulated-auth-options.js +7 -2
- package/dist/service/cognito/command/auth/sim-cognito-unsimulated-auth-options.js.map +1 -1
- package/dist/service/cognito/command/auth/sim-cognito-user-auth-sign-in.d.ts +44 -0
- package/dist/service/cognito/command/auth/sim-cognito-user-auth-sign-in.d.ts.map +1 -0
- package/dist/service/cognito/command/auth/sim-cognito-user-auth-sign-in.js +62 -0
- package/dist/service/cognito/command/auth/sim-cognito-user-auth-sign-in.js.map +1 -0
- package/dist/service/cognito/command/auth/sim-cognito-web-authn-response.d.ts +30 -0
- package/dist/service/cognito/command/auth/sim-cognito-web-authn-response.d.ts.map +1 -0
- package/dist/service/cognito/command/auth/sim-cognito-web-authn-response.js +36 -0
- package/dist/service/cognito/command/auth/sim-cognito-web-authn-response.js.map +1 -0
- package/dist/service/cognito/command/client/sim-cognito-unsimulated-client-options.d.ts.map +1 -1
- package/dist/service/cognito/command/client/sim-cognito-unsimulated-client-options.js +0 -1
- package/dist/service/cognito/command/client/sim-cognito-unsimulated-client-options.js.map +1 -1
- package/dist/service/cognito/command/client/sim-cognito-user-pool-client-view.d.ts.map +1 -1
- package/dist/service/cognito/command/client/sim-cognito-user-pool-client-view.js +1 -0
- package/dist/service/cognito/command/client/sim-cognito-user-pool-client-view.js.map +1 -1
- package/dist/service/cognito/command/client/user-pool-client.command.d.ts +1 -0
- package/dist/service/cognito/command/client/user-pool-client.command.d.ts.map +1 -1
- package/dist/service/cognito/command/hosted/hosted-auth.command.d.ts +22 -0
- package/dist/service/cognito/command/hosted/hosted-auth.command.d.ts.map +1 -1
- package/dist/service/cognito/command/hosted/sim-cognito-authorize-endpoint.d.ts +4 -4
- package/dist/service/cognito/command/hosted/sim-cognito-authorize-endpoint.js +4 -4
- package/dist/service/cognito/command/hosted/sim-cognito-hosted-commands.d.ts +6 -0
- package/dist/service/cognito/command/hosted/sim-cognito-hosted-commands.d.ts.map +1 -1
- package/dist/service/cognito/command/hosted/sim-cognito-hosted-commands.js +2 -1
- package/dist/service/cognito/command/hosted/sim-cognito-hosted-commands.js.map +1 -1
- package/dist/service/cognito/command/hosted/sim-cognito-hosted-passkey-sign-in.d.ts +71 -0
- package/dist/service/cognito/command/hosted/sim-cognito-hosted-passkey-sign-in.d.ts.map +1 -0
- package/dist/service/cognito/command/hosted/sim-cognito-hosted-passkey-sign-in.js +76 -0
- package/dist/service/cognito/command/hosted/sim-cognito-hosted-passkey-sign-in.js.map +1 -0
- package/dist/service/cognito/command/hosted/sim-cognito-hosted-sign-in.d.ts +16 -7
- package/dist/service/cognito/command/hosted/sim-cognito-hosted-sign-in.d.ts.map +1 -1
- package/dist/service/cognito/command/hosted/sim-cognito-hosted-sign-in.js +26 -7
- package/dist/service/cognito/command/hosted/sim-cognito-hosted-sign-in.js.map +1 -1
- package/dist/service/cognito/command/sim-cognito-command.types.d.ts +1 -0
- package/dist/service/cognito/command/sim-cognito-command.types.d.ts.map +1 -1
- package/dist/service/cognito/command/sim-cognito-commands.d.ts +2 -0
- package/dist/service/cognito/command/sim-cognito-commands.d.ts.map +1 -1
- package/dist/service/cognito/command/sim-cognito-commands.js +9 -0
- package/dist/service/cognito/command/sim-cognito-commands.js.map +1 -1
- package/dist/service/cognito/command/sim-cognito-page.d.ts +10 -0
- package/dist/service/cognito/command/sim-cognito-page.d.ts.map +1 -1
- package/dist/service/cognito/command/sim-cognito-page.js +11 -7
- package/dist/service/cognito/command/sim-cognito-page.js.map +1 -1
- package/dist/service/cognito/command/user/sim-cognito-web-authn-commands.d.ts +49 -0
- package/dist/service/cognito/command/user/sim-cognito-web-authn-commands.d.ts.map +1 -0
- package/dist/service/cognito/command/user/sim-cognito-web-authn-commands.js +88 -0
- package/dist/service/cognito/command/user/sim-cognito-web-authn-commands.js.map +1 -0
- package/dist/service/cognito/command/user/web-authn.command.d.ts +87 -0
- package/dist/service/cognito/command/user/web-authn.command.d.ts.map +1 -0
- package/dist/service/cognito/command/user/web-authn.command.js +2 -0
- package/dist/service/cognito/command/user/web-authn.command.js.map +1 -0
- package/dist/service/cognito/command/user-pool/sim-cognito-unsimulated-pool-options.d.ts +4 -0
- package/dist/service/cognito/command/user-pool/sim-cognito-unsimulated-pool-options.d.ts.map +1 -1
- package/dist/service/cognito/command/user-pool/sim-cognito-unsimulated-pool-options.js +4 -1
- package/dist/service/cognito/command/user-pool/sim-cognito-unsimulated-pool-options.js.map +1 -1
- package/dist/service/cognito/command/user-pool/sim-cognito-user-pool-mfa-commands.d.ts +5 -3
- package/dist/service/cognito/command/user-pool/sim-cognito-user-pool-mfa-commands.d.ts.map +1 -1
- package/dist/service/cognito/command/user-pool/sim-cognito-user-pool-mfa-commands.js +5 -4
- package/dist/service/cognito/command/user-pool/sim-cognito-user-pool-mfa-commands.js.map +1 -1
- package/dist/service/cognito/command/user-pool/sim-cognito-user-pool-view.d.ts +4 -0
- package/dist/service/cognito/command/user-pool/sim-cognito-user-pool-view.d.ts.map +1 -1
- package/dist/service/cognito/command/user-pool/sim-cognito-user-pool-view.js +9 -1
- package/dist/service/cognito/command/user-pool/sim-cognito-user-pool-view.js.map +1 -1
- package/dist/service/cognito/command/user-pool/user-pool-mfa.command.d.ts +2 -3
- package/dist/service/cognito/command/user-pool/user-pool-mfa.command.d.ts.map +1 -1
- package/dist/service/cognito/error/sim-cognito-managed-login.error.d.ts +24 -0
- package/dist/service/cognito/error/sim-cognito-managed-login.error.d.ts.map +1 -1
- package/dist/service/cognito/error/sim-cognito-managed-login.error.js +37 -0
- package/dist/service/cognito/error/sim-cognito-managed-login.error.js.map +1 -1
- package/dist/service/cognito/error/sim-cognito-web-authn.error.d.ts +56 -0
- package/dist/service/cognito/error/sim-cognito-web-authn.error.d.ts.map +1 -0
- package/dist/service/cognito/error/sim-cognito-web-authn.error.js +66 -0
- package/dist/service/cognito/error/sim-cognito-web-authn.error.js.map +1 -0
- package/dist/service/cognito/index.d.ts +9 -1
- package/dist/service/cognito/index.d.ts.map +1 -1
- package/dist/service/cognito/index.js +7 -0
- package/dist/service/cognito/index.js.map +1 -1
- package/dist/service/cognito/sdk/sim-cognito-sdk-command-router.d.ts +2 -2
- package/dist/service/cognito/sdk/sim-cognito-sdk-command-router.d.ts.map +1 -1
- package/dist/service/cognito/sdk/sim-cognito-sdk-command-router.js +4 -2
- package/dist/service/cognito/sdk/sim-cognito-sdk-command-router.js.map +1 -1
- package/dist/service/cognito/sdk/sim-cognito-sdk-web-authn-routes.d.ts +11 -0
- package/dist/service/cognito/sdk/sim-cognito-sdk-web-authn-routes.d.ts.map +1 -0
- package/dist/service/cognito/sdk/sim-cognito-sdk-web-authn-routes.js +28 -0
- package/dist/service/cognito/sdk/sim-cognito-sdk-web-authn-routes.js.map +1 -0
- package/dist/service/cognito/serve/page/sim-cognito-managed-login.d.ts +4 -2
- package/dist/service/cognito/serve/page/sim-cognito-managed-login.d.ts.map +1 -1
- package/dist/service/cognito/serve/page/sim-cognito-managed-login.js +9 -3
- package/dist/service/cognito/serve/page/sim-cognito-managed-login.js.map +1 -1
- package/dist/service/cognito/serve/page/sim-cognito-passkey-page.d.ts +23 -0
- package/dist/service/cognito/serve/page/sim-cognito-passkey-page.d.ts.map +1 -0
- package/dist/service/cognito/serve/page/sim-cognito-passkey-page.js +36 -0
- package/dist/service/cognito/serve/page/sim-cognito-passkey-page.js.map +1 -0
- package/dist/service/cognito/serve/page/sim-cognito-sign-in-page.d.ts +13 -1
- package/dist/service/cognito/serve/page/sim-cognito-sign-in-page.d.ts.map +1 -1
- package/dist/service/cognito/serve/page/sim-cognito-sign-in-page.js +24 -2
- package/dist/service/cognito/serve/page/sim-cognito-sign-in-page.js.map +1 -1
- package/dist/service/cognito/sim-cognito-user-factors.d.ts +25 -0
- package/dist/service/cognito/sim-cognito-user-factors.d.ts.map +1 -1
- package/dist/service/cognito/sim-cognito-user-factors.js +37 -0
- package/dist/service/cognito/sim-cognito-user-factors.js.map +1 -1
- package/dist/service/cognito/user-pool/auth/sim-cognito-auth-session.d.ts +33 -2
- package/dist/service/cognito/user-pool/auth/sim-cognito-auth-session.d.ts.map +1 -1
- package/dist/service/cognito/user-pool/auth/sim-cognito-auth-session.js +27 -12
- package/dist/service/cognito/user-pool/auth/sim-cognito-auth-session.js.map +1 -1
- package/dist/service/cognito/user-pool/auth/sim-cognito-pool-auth.d.ts +5 -0
- package/dist/service/cognito/user-pool/auth/sim-cognito-pool-auth.d.ts.map +1 -1
- package/dist/service/cognito/user-pool/auth/sim-cognito-pool-auth.js +12 -0
- package/dist/service/cognito/user-pool/auth/sim-cognito-pool-auth.js.map +1 -1
- package/dist/service/cognito/user-pool/auth/sim-cognito-sign-in.d.ts +10 -0
- package/dist/service/cognito/user-pool/auth/sim-cognito-sign-in.d.ts.map +1 -1
- package/dist/service/cognito/user-pool/auth/sim-cognito-sign-in.js +14 -0
- package/dist/service/cognito/user-pool/auth/sim-cognito-sign-in.js.map +1 -1
- package/dist/service/cognito/user-pool/client/sim-cognito-auth-session-validity.d.ts +27 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-auth-session-validity.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-auth-session-validity.js +55 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-auth-session-validity.js.map +1 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-user-pool-client-settings.d.ts +6 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-user-pool-client-settings.d.ts.map +1 -1
- package/dist/service/cognito/user-pool/client/sim-cognito-user-pool-client-settings.js +6 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-user-pool-client-settings.js.map +1 -1
- package/dist/service/cognito/user-pool/client/sim-cognito-user-pool-client.d.ts +6 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-user-pool-client.d.ts.map +1 -1
- package/dist/service/cognito/user-pool/client/sim-cognito-user-pool-client.js +7 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-user-pool-client.js.map +1 -1
- package/dist/service/cognito/user-pool/mfa/sim-cognito-relying-party.d.ts +16 -0
- package/dist/service/cognito/user-pool/mfa/sim-cognito-relying-party.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/mfa/sim-cognito-relying-party.js +32 -0
- package/dist/service/cognito/user-pool/mfa/sim-cognito-relying-party.js.map +1 -0
- package/dist/service/cognito/user-pool/mfa/sim-cognito-user-pool-mfa.d.ts +16 -0
- package/dist/service/cognito/user-pool/mfa/sim-cognito-user-pool-mfa.d.ts.map +1 -1
- package/dist/service/cognito/user-pool/mfa/sim-cognito-user-pool-mfa.js +29 -0
- package/dist/service/cognito/user-pool/mfa/sim-cognito-user-pool-mfa.js.map +1 -1
- package/dist/service/cognito/user-pool/mfa/sim-cognito-web-authn-configuration.d.ts +46 -0
- package/dist/service/cognito/user-pool/mfa/sim-cognito-web-authn-configuration.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/mfa/sim-cognito-web-authn-configuration.js +73 -0
- package/dist/service/cognito/user-pool/mfa/sim-cognito-web-authn-configuration.js.map +1 -0
- package/dist/service/cognito/user-pool/sim-cognito-password-policy.d.ts +1 -9
- package/dist/service/cognito/user-pool/sim-cognito-password-policy.d.ts.map +1 -1
- package/dist/service/cognito/user-pool/sim-cognito-password-policy.js.map +1 -1
- package/dist/service/cognito/user-pool/sim-cognito-sign-in-policy.d.ts +60 -0
- package/dist/service/cognito/user-pool/sim-cognito-sign-in-policy.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/sim-cognito-sign-in-policy.js +100 -0
- package/dist/service/cognito/user-pool/sim-cognito-sign-in-policy.js.map +1 -0
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-settings.d.ts +11 -1
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-settings.d.ts.map +1 -1
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-settings.js +12 -1
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-settings.js.map +1 -1
- package/dist/service/cognito/user-pool/sim-cognito-user-pool.d.ts +48 -69
- package/dist/service/cognito/user-pool/sim-cognito-user-pool.d.ts.map +1 -1
- package/dist/service/cognito/user-pool/sim-cognito-user-pool.js +58 -73
- package/dist/service/cognito/user-pool/sim-cognito-user-pool.js.map +1 -1
- package/dist/service/cognito/user-pool/user/sim-cognito-user.d.ts +13 -18
- package/dist/service/cognito/user-pool/user/sim-cognito-user.d.ts.map +1 -1
- package/dist/service/cognito/user-pool/user/sim-cognito-user.js +23 -24
- package/dist/service/cognito/user-pool/user/sim-cognito-user.js.map +1 -1
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-user-web-authn.d.ts +73 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-user-web-authn.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-user-web-authn.js +113 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-user-web-authn.js.map +1 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-assertion.d.ts +22 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-assertion.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-assertion.js +53 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-assertion.js.map +1 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-attested-key.d.ts +15 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-attested-key.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-attested-key.js +68 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-attested-key.js.map +1 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-ceremony.d.ts +33 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-ceremony.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-ceremony.js +67 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-ceremony.js.map +1 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-client-data.d.ts +24 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-client-data.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-client-data.js +45 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-client-data.js.map +1 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-creation-options.d.ts +28 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-creation-options.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-creation-options.js +41 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-creation-options.js.map +1 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-credential.d.ts +69 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-credential.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-credential.js +69 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-credential.js.map +1 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-device.d.ts +39 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-device.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-device.js +90 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-device.js.map +1 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-document.d.ts +111 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-document.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-document.js +2 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-document.js.map +1 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-keys.d.ts +37 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-keys.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-keys.js +39 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-keys.js.map +1 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-public-key.d.ts +21 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-public-key.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-public-key.js +45 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-public-key.js.map +1 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-signing.d.ts +52 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-signing.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-signing.js +98 -0
- package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-signing.js.map +1 -0
- package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-path.d.ts +5 -4
- package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-path.d.ts.map +1 -1
- package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-path.js +17 -4
- package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-path.js.map +1 -1
- package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-request.d.ts +8 -1
- package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-request.d.ts.map +1 -1
- package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-request.js +10 -3
- package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-request.js.map +1 -1
- package/dist/service/iam/sigv4/sim-iam-sigv4-signature-check.js +1 -1
- package/dist/service/iam/sigv4/sim-iam-sigv4-signature-check.js.map +1 -1
- package/dist/service/lambda/cfn/event-invoke-config/sim-cfn-lambda-event-invoke-config-creator.d.ts +26 -0
- package/dist/service/lambda/cfn/event-invoke-config/sim-cfn-lambda-event-invoke-config-creator.d.ts.map +1 -0
- package/dist/service/lambda/cfn/event-invoke-config/sim-cfn-lambda-event-invoke-config-creator.js +32 -0
- package/dist/service/lambda/cfn/event-invoke-config/sim-cfn-lambda-event-invoke-config-creator.js.map +1 -0
- package/dist/service/lambda/cfn/event-invoke-config/sim-cfn-lambda-event-invoke-config-properties.d.ts +40 -0
- package/dist/service/lambda/cfn/event-invoke-config/sim-cfn-lambda-event-invoke-config-properties.d.ts.map +1 -0
- package/dist/service/lambda/cfn/event-invoke-config/sim-cfn-lambda-event-invoke-config-properties.js +42 -0
- package/dist/service/lambda/cfn/event-invoke-config/sim-cfn-lambda-event-invoke-config-properties.js.map +1 -0
- package/dist/service/lambda/cfn/event-invoke-config/sim-cfn-lambda-event-invoke-config-property-rules.d.ts +12 -0
- package/dist/service/lambda/cfn/event-invoke-config/sim-cfn-lambda-event-invoke-config-property-rules.d.ts.map +1 -0
- package/dist/service/lambda/cfn/event-invoke-config/sim-cfn-lambda-event-invoke-config-property-rules.js +26 -0
- package/dist/service/lambda/cfn/event-invoke-config/sim-cfn-lambda-event-invoke-config-property-rules.js.map +1 -0
- package/dist/service/lambda/cfn/event-invoke-config/sim-cfn-lambda-event-invoke-config-remover.d.ts +13 -0
- package/dist/service/lambda/cfn/event-invoke-config/sim-cfn-lambda-event-invoke-config-remover.d.ts.map +1 -0
- package/dist/service/lambda/cfn/event-invoke-config/sim-cfn-lambda-event-invoke-config-remover.js +20 -0
- package/dist/service/lambda/cfn/event-invoke-config/sim-cfn-lambda-event-invoke-config-remover.js.map +1 -0
- package/dist/service/lambda/cfn/event-invoke-config/sim-cfn-lambda-event-invoke-destinations.d.ts +26 -0
- package/dist/service/lambda/cfn/event-invoke-config/sim-cfn-lambda-event-invoke-destinations.d.ts.map +1 -0
- package/dist/service/lambda/cfn/event-invoke-config/sim-cfn-lambda-event-invoke-destinations.js +47 -0
- package/dist/service/lambda/cfn/event-invoke-config/sim-cfn-lambda-event-invoke-destinations.js.map +1 -0
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-dead-letter-parser.d.ts +20 -0
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-dead-letter-parser.d.ts.map +1 -0
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-dead-letter-parser.js +29 -0
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-dead-letter-parser.js.map +1 -0
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-function-properties-parser.d.ts +3 -0
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-function-properties-parser.d.ts.map +1 -1
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-function-properties-parser.js +4 -0
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-function-properties-parser.js.map +1 -1
- package/dist/service/lambda/cfn/sim-cfn-lambda-resource-deleter.d.ts.map +1 -1
- package/dist/service/lambda/cfn/sim-cfn-lambda-resource-deleter.js +5 -0
- package/dist/service/lambda/cfn/sim-cfn-lambda-resource-deleter.js.map +1 -1
- package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.d.ts +1 -0
- package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.d.ts.map +1 -1
- package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.js +8 -0
- package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.js.map +1 -1
- package/dist/service/lambda/cfn/sim-cfn-lambda-target-arn.d.ts +35 -0
- package/dist/service/lambda/cfn/sim-cfn-lambda-target-arn.d.ts.map +1 -0
- package/dist/service/lambda/cfn/sim-cfn-lambda-target-arn.js +73 -0
- package/dist/service/lambda/cfn/sim-cfn-lambda-target-arn.js.map +1 -0
- package/dist/service/lambda/command/create-function/create-function-input.d.ts +1 -0
- package/dist/service/lambda/command/create-function/create-function-input.d.ts.map +1 -1
- package/dist/service/lambda/command/create-function/create-function-input.js +2 -0
- package/dist/service/lambda/command/create-function/create-function-input.js.map +1 -1
- package/dist/service/lambda/command/create-function/create-function.command.d.ts +2 -0
- package/dist/service/lambda/command/create-function/create-function.command.d.ts.map +1 -1
- package/dist/service/lambda/command/delete-function/delete-function.handler.d.ts +5 -1
- package/dist/service/lambda/command/delete-function/delete-function.handler.d.ts.map +1 -1
- package/dist/service/lambda/command/delete-function/delete-function.handler.js +5 -1
- package/dist/service/lambda/command/delete-function/delete-function.handler.js.map +1 -1
- package/dist/service/lambda/command/delete-function-event-invoke-config/delete-function-event-invoke-config.command.d.ts +24 -0
- package/dist/service/lambda/command/delete-function-event-invoke-config/delete-function-event-invoke-config.command.d.ts.map +1 -0
- package/dist/service/lambda/command/delete-function-event-invoke-config/delete-function-event-invoke-config.command.js +5 -0
- package/dist/service/lambda/command/delete-function-event-invoke-config/delete-function-event-invoke-config.command.js.map +1 -0
- package/dist/service/lambda/command/delete-function-event-invoke-config/delete-function-event-invoke-config.handler.d.ts +24 -0
- package/dist/service/lambda/command/delete-function-event-invoke-config/delete-function-event-invoke-config.handler.d.ts.map +1 -0
- package/dist/service/lambda/command/delete-function-event-invoke-config/delete-function-event-invoke-config.handler.js +27 -0
- package/dist/service/lambda/command/delete-function-event-invoke-config/delete-function-event-invoke-config.handler.js.map +1 -0
- package/dist/service/lambda/command/event-invoke-config/event-invoke-config-authorizer.d.ts +29 -0
- package/dist/service/lambda/command/event-invoke-config/event-invoke-config-authorizer.d.ts.map +1 -0
- package/dist/service/lambda/command/event-invoke-config/event-invoke-config-authorizer.js +39 -0
- package/dist/service/lambda/command/event-invoke-config/event-invoke-config-authorizer.js.map +1 -0
- package/dist/service/lambda/command/event-invoke-config/event-invoke-config-input.d.ts +32 -0
- package/dist/service/lambda/command/event-invoke-config/event-invoke-config-input.d.ts.map +1 -0
- package/dist/service/lambda/command/event-invoke-config/event-invoke-config-input.js +62 -0
- package/dist/service/lambda/command/event-invoke-config/event-invoke-config-input.js.map +1 -0
- package/dist/service/lambda/command/event-invoke-config/event-invoke-config-request.d.ts +49 -0
- package/dist/service/lambda/command/event-invoke-config/event-invoke-config-request.d.ts.map +1 -0
- package/dist/service/lambda/command/event-invoke-config/event-invoke-config-request.js +44 -0
- package/dist/service/lambda/command/event-invoke-config/event-invoke-config-request.js.map +1 -0
- package/dist/service/lambda/command/event-invoke-config/sim-lambda-event-invoke-config-commands.d.ts +49 -0
- package/dist/service/lambda/command/event-invoke-config/sim-lambda-event-invoke-config-commands.d.ts.map +1 -0
- package/dist/service/lambda/command/event-invoke-config/sim-lambda-event-invoke-config-commands.js +49 -0
- package/dist/service/lambda/command/event-invoke-config/sim-lambda-event-invoke-config-commands.js.map +1 -0
- package/dist/service/lambda/command/function/sim-lambda-function-commands.d.ts +4 -0
- package/dist/service/lambda/command/function/sim-lambda-function-commands.d.ts.map +1 -1
- package/dist/service/lambda/command/function/sim-lambda-function-commands.js.map +1 -1
- package/dist/service/lambda/command/get-function-event-invoke-config/get-function-event-invoke-config.command.d.ts +25 -0
- package/dist/service/lambda/command/get-function-event-invoke-config/get-function-event-invoke-config.command.d.ts.map +1 -0
- package/dist/service/lambda/command/get-function-event-invoke-config/get-function-event-invoke-config.command.js +5 -0
- package/dist/service/lambda/command/get-function-event-invoke-config/get-function-event-invoke-config.command.js.map +1 -0
- package/dist/service/lambda/command/get-function-event-invoke-config/get-function-event-invoke-config.handler.d.ts +23 -0
- package/dist/service/lambda/command/get-function-event-invoke-config/get-function-event-invoke-config.handler.d.ts.map +1 -0
- package/dist/service/lambda/command/get-function-event-invoke-config/get-function-event-invoke-config.handler.js +27 -0
- package/dist/service/lambda/command/get-function-event-invoke-config/get-function-event-invoke-config.handler.js.map +1 -0
- package/dist/service/lambda/command/invoke/async/sim-lambda-async-invocation-settings.d.ts +31 -0
- package/dist/service/lambda/command/invoke/async/sim-lambda-async-invocation-settings.d.ts.map +1 -0
- package/dist/service/lambda/command/invoke/async/sim-lambda-async-invocation-settings.js +24 -0
- package/dist/service/lambda/command/invoke/async/sim-lambda-async-invocation-settings.js.map +1 -0
- package/dist/service/lambda/command/invoke/async/sim-lambda-async-invocation.d.ts +43 -0
- package/dist/service/lambda/command/invoke/async/sim-lambda-async-invocation.d.ts.map +1 -0
- package/dist/service/lambda/command/invoke/async/sim-lambda-async-invocation.js +64 -0
- package/dist/service/lambda/command/invoke/async/sim-lambda-async-invocation.js.map +1 -0
- package/dist/service/lambda/command/invoke/async/sim-lambda-async-invocations.d.ts +26 -0
- package/dist/service/lambda/command/invoke/async/sim-lambda-async-invocations.d.ts.map +1 -0
- package/dist/service/lambda/command/invoke/async/sim-lambda-async-invocations.js +33 -0
- package/dist/service/lambda/command/invoke/async/sim-lambda-async-invocations.js.map +1 -0
- package/dist/service/lambda/command/invoke/async/sim-lambda-async-outcome.d.ts +63 -0
- package/dist/service/lambda/command/invoke/async/sim-lambda-async-outcome.d.ts.map +1 -0
- package/dist/service/lambda/command/invoke/async/sim-lambda-async-outcome.js +88 -0
- package/dist/service/lambda/command/invoke/async/sim-lambda-async-outcome.js.map +1 -0
- package/dist/service/lambda/command/invoke/invoke-dispatcher.d.ts +10 -3
- package/dist/service/lambda/command/invoke/invoke-dispatcher.d.ts.map +1 -1
- package/dist/service/lambda/command/invoke/invoke-dispatcher.js +16 -17
- package/dist/service/lambda/command/invoke/invoke-dispatcher.js.map +1 -1
- package/dist/service/lambda/command/invoke/invoke-payload.d.ts +16 -0
- package/dist/service/lambda/command/invoke/invoke-payload.d.ts.map +1 -1
- package/dist/service/lambda/command/invoke/invoke-payload.js +14 -4
- package/dist/service/lambda/command/invoke/invoke-payload.js.map +1 -1
- package/dist/service/lambda/command/invoke/invoke.handler.d.ts +4 -0
- package/dist/service/lambda/command/invoke/invoke.handler.d.ts.map +1 -1
- package/dist/service/lambda/command/invoke/invoke.handler.js +6 -2
- package/dist/service/lambda/command/invoke/invoke.handler.js.map +1 -1
- package/dist/service/lambda/command/list-function-event-invoke-configs/list-function-event-invoke-configs.command.d.ts +28 -0
- package/dist/service/lambda/command/list-function-event-invoke-configs/list-function-event-invoke-configs.command.d.ts.map +1 -0
- package/dist/service/lambda/command/list-function-event-invoke-configs/list-function-event-invoke-configs.command.js +5 -0
- package/dist/service/lambda/command/list-function-event-invoke-configs/list-function-event-invoke-configs.command.js.map +1 -0
- package/dist/service/lambda/command/list-function-event-invoke-configs/list-function-event-invoke-configs.handler.d.ts +23 -0
- package/dist/service/lambda/command/list-function-event-invoke-configs/list-function-event-invoke-configs.handler.d.ts.map +1 -0
- package/dist/service/lambda/command/list-function-event-invoke-configs/list-function-event-invoke-configs.handler.js +31 -0
- package/dist/service/lambda/command/list-function-event-invoke-configs/list-function-event-invoke-configs.handler.js.map +1 -0
- package/dist/service/lambda/command/put-function-event-invoke-config/put-function-event-invoke-config.command.d.ts +31 -0
- package/dist/service/lambda/command/put-function-event-invoke-config/put-function-event-invoke-config.command.d.ts.map +1 -0
- package/dist/service/lambda/command/put-function-event-invoke-config/put-function-event-invoke-config.command.js +5 -0
- package/dist/service/lambda/command/put-function-event-invoke-config/put-function-event-invoke-config.command.js.map +1 -0
- package/dist/service/lambda/command/put-function-event-invoke-config/put-function-event-invoke-config.handler.d.ts +24 -0
- package/dist/service/lambda/command/put-function-event-invoke-config/put-function-event-invoke-config.handler.d.ts.map +1 -0
- package/dist/service/lambda/command/put-function-event-invoke-config/put-function-event-invoke-config.handler.js +32 -0
- package/dist/service/lambda/command/put-function-event-invoke-config/put-function-event-invoke-config.handler.js.map +1 -0
- package/dist/service/lambda/command/sim-lambda-command.types.d.ts +5 -0
- package/dist/service/lambda/command/sim-lambda-command.types.d.ts.map +1 -1
- package/dist/service/lambda/command/update-function-configuration/update-function-configuration-input.d.ts.map +1 -1
- package/dist/service/lambda/command/update-function-configuration/update-function-configuration-input.js +2 -0
- package/dist/service/lambda/command/update-function-configuration/update-function-configuration-input.js.map +1 -1
- package/dist/service/lambda/command/update-function-configuration/update-function-configuration.command.d.ts +6 -4
- package/dist/service/lambda/command/update-function-configuration/update-function-configuration.command.d.ts.map +1 -1
- package/dist/service/lambda/command/update-function-event-invoke-config/update-function-event-invoke-config.command.d.ts +30 -0
- package/dist/service/lambda/command/update-function-event-invoke-config/update-function-event-invoke-config.command.d.ts.map +1 -0
- package/dist/service/lambda/command/update-function-event-invoke-config/update-function-event-invoke-config.command.js +5 -0
- package/dist/service/lambda/command/update-function-event-invoke-config/update-function-event-invoke-config.command.js.map +1 -0
- package/dist/service/lambda/command/update-function-event-invoke-config/update-function-event-invoke-config.handler.d.ts +25 -0
- package/dist/service/lambda/command/update-function-event-invoke-config/update-function-event-invoke-config.handler.d.ts.map +1 -0
- package/dist/service/lambda/command/update-function-event-invoke-config/update-function-event-invoke-config.handler.js +33 -0
- package/dist/service/lambda/command/update-function-event-invoke-config/update-function-event-invoke-config.handler.js.map +1 -0
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-bus.d.ts +16 -0
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-bus.d.ts.map +1 -0
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-bus.js +31 -0
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-bus.js.map +1 -0
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-function.d.ts +13 -0
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-function.d.ts.map +1 -0
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-function.js +25 -0
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-function.js.map +1 -0
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-queue.d.ts +15 -0
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-queue.d.ts.map +1 -0
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-queue.js +25 -0
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-queue.js.map +1 -0
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-send.d.ts +15 -0
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-send.d.ts.map +1 -0
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-send.js +2 -0
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-send.js.map +1 -0
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-topic.d.ts +15 -0
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-topic.d.ts.map +1 -0
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-topic.js +23 -0
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-topic.js.map +1 -0
- package/dist/service/lambda/destination/sim-aws-lambda-destinations.d.ts +38 -0
- package/dist/service/lambda/destination/sim-aws-lambda-destinations.d.ts.map +1 -0
- package/dist/service/lambda/destination/sim-aws-lambda-destinations.js +78 -0
- package/dist/service/lambda/destination/sim-aws-lambda-destinations.js.map +1 -0
- package/dist/service/lambda/destination/sim-lambda-destination-arn.d.ts +53 -0
- package/dist/service/lambda/destination/sim-lambda-destination-arn.d.ts.map +1 -0
- package/dist/service/lambda/destination/sim-lambda-destination-arn.js +122 -0
- package/dist/service/lambda/destination/sim-lambda-destination-arn.js.map +1 -0
- package/dist/service/lambda/destination/sim-lambda-destination-record.d.ts +53 -0
- package/dist/service/lambda/destination/sim-lambda-destination-record.d.ts.map +1 -0
- package/dist/service/lambda/destination/sim-lambda-destination-record.js +26 -0
- package/dist/service/lambda/destination/sim-lambda-destination-record.js.map +1 -0
- package/dist/service/lambda/destination/sim-lambda-destination-targets.d.ts +49 -0
- package/dist/service/lambda/destination/sim-lambda-destination-targets.d.ts.map +1 -0
- package/dist/service/lambda/destination/sim-lambda-destination-targets.js +25 -0
- package/dist/service/lambda/destination/sim-lambda-destination-targets.js.map +1 -0
- package/dist/service/lambda/function/event-invoke/lambda-dead-letter-target.d.ts +17 -0
- package/dist/service/lambda/function/event-invoke/lambda-dead-letter-target.d.ts.map +1 -0
- package/dist/service/lambda/function/event-invoke/lambda-dead-letter-target.js +26 -0
- package/dist/service/lambda/function/event-invoke/lambda-dead-letter-target.js.map +1 -0
- package/dist/service/lambda/function/event-invoke/sim-lambda-event-invoke-config-store.d.ts +58 -0
- package/dist/service/lambda/function/event-invoke/sim-lambda-event-invoke-config-store.d.ts.map +1 -0
- package/dist/service/lambda/function/event-invoke/sim-lambda-event-invoke-config-store.js +86 -0
- package/dist/service/lambda/function/event-invoke/sim-lambda-event-invoke-config-store.js.map +1 -0
- package/dist/service/lambda/function/event-invoke/sim-lambda-event-invoke-config.d.ts +117 -0
- package/dist/service/lambda/function/event-invoke/sim-lambda-event-invoke-config.d.ts.map +1 -0
- package/dist/service/lambda/function/event-invoke/sim-lambda-event-invoke-config.js +37 -0
- package/dist/service/lambda/function/event-invoke/sim-lambda-event-invoke-config.js.map +1 -0
- package/dist/service/lambda/function/event-invoke/sim-lambda-event-invoke-settings.d.ts +35 -0
- package/dist/service/lambda/function/event-invoke/sim-lambda-event-invoke-settings.d.ts.map +1 -0
- package/dist/service/lambda/function/event-invoke/sim-lambda-event-invoke-settings.js +70 -0
- package/dist/service/lambda/function/event-invoke/sim-lambda-event-invoke-settings.js.map +1 -0
- package/dist/service/lambda/function/sim-lambda-function-configuration.d.ts +3 -0
- package/dist/service/lambda/function/sim-lambda-function-configuration.d.ts.map +1 -1
- package/dist/service/lambda/function/sim-lambda-function-configuration.factory.d.ts +11 -0
- package/dist/service/lambda/function/sim-lambda-function-configuration.factory.d.ts.map +1 -0
- package/dist/service/lambda/function/sim-lambda-function-configuration.factory.js +27 -0
- package/dist/service/lambda/function/sim-lambda-function-configuration.factory.js.map +1 -0
- package/dist/service/lambda/function/sim-lambda-function-reconfiguration.d.ts +5 -0
- package/dist/service/lambda/function/sim-lambda-function-reconfiguration.d.ts.map +1 -1
- package/dist/service/lambda/function/sim-lambda-function-reconfiguration.js +12 -0
- package/dist/service/lambda/function/sim-lambda-function-reconfiguration.js.map +1 -1
- package/dist/service/lambda/function/sim-lambda-function.d.ts +2 -0
- package/dist/service/lambda/function/sim-lambda-function.d.ts.map +1 -1
- package/dist/service/lambda/function/sim-lambda-function.js +7 -14
- package/dist/service/lambda/function/sim-lambda-function.js.map +1 -1
- package/dist/service/lambda/function/sim-lambda-function.type.d.ts +5 -0
- package/dist/service/lambda/function/sim-lambda-function.type.d.ts.map +1 -1
- package/dist/service/lambda/index.d.ts +2 -0
- package/dist/service/lambda/index.d.ts.map +1 -1
- package/dist/service/lambda/sdk/sim-lambda-event-invoke-config-routes.d.ts +10 -0
- package/dist/service/lambda/sdk/sim-lambda-event-invoke-config-routes.d.ts.map +1 -0
- package/dist/service/lambda/sdk/sim-lambda-event-invoke-config-routes.js +32 -0
- package/dist/service/lambda/sdk/sim-lambda-event-invoke-config-routes.js.map +1 -0
- package/dist/service/lambda/sdk/sim-lambda-sdk-command-router.d.ts.map +1 -1
- package/dist/service/lambda/sdk/sim-lambda-sdk-command-router.js +2 -0
- package/dist/service/lambda/sdk/sim-lambda-sdk-command-router.js.map +1 -1
- package/dist/service/lambda/sim-lambda-commands.d.ts +11 -0
- package/dist/service/lambda/sim-lambda-commands.d.ts.map +1 -1
- package/dist/service/lambda/sim-lambda-commands.js +17 -1
- package/dist/service/lambda/sim-lambda-commands.js.map +1 -1
- package/dist/service/lambda/sim-lambda-event-invoke-operations.d.ts +23 -0
- package/dist/service/lambda/sim-lambda-event-invoke-operations.d.ts.map +1 -0
- package/dist/service/lambda/sim-lambda-event-invoke-operations.js +31 -0
- package/dist/service/lambda/sim-lambda-event-invoke-operations.js.map +1 -0
- package/dist/service/lambda/sim-lambda-inspection.d.ts +9 -0
- package/dist/service/lambda/sim-lambda-inspection.d.ts.map +1 -1
- package/dist/service/lambda/sim-lambda-inspection.js +13 -0
- package/dist/service/lambda/sim-lambda-inspection.js.map +1 -1
- package/dist/service/lambda/sim-lambda-request-options.d.ts +8 -0
- package/dist/service/lambda/sim-lambda-request-options.d.ts.map +1 -0
- package/dist/service/lambda/sim-lambda-request-options.js +2 -0
- package/dist/service/lambda/sim-lambda-request-options.js.map +1 -0
- package/dist/service/lambda/sim-lambda.d.ts +6 -7
- package/dist/service/lambda/sim-lambda.d.ts.map +1 -1
- package/dist/service/lambda/sim-lambda.js +4 -3
- package/dist/service/lambda/sim-lambda.js.map +1 -1
- package/dist/service/s3/serve/api/sim-s3-api-object-input.d.ts +14 -0
- package/dist/service/s3/serve/api/sim-s3-api-object-input.d.ts.map +1 -1
- package/dist/service/s3/serve/api/sim-s3-api-object-input.js +20 -0
- package/dist/service/s3/serve/api/sim-s3-api-object-input.js.map +1 -1
- package/dist/service/s3/serve/api/sim-s3-api-object-output.d.ts +14 -0
- package/dist/service/s3/serve/api/sim-s3-api-object-output.d.ts.map +1 -1
- package/dist/service/s3/serve/api/sim-s3-api-object-output.js +12 -0
- package/dist/service/s3/serve/api/sim-s3-api-object-output.js.map +1 -1
- package/dist/service/s3/serve/api/sim-s3-api-object-routes.d.ts.map +1 -1
- package/dist/service/s3/serve/api/sim-s3-api-object-routes.js +23 -1
- package/dist/service/s3/serve/api/sim-s3-api-object-routes.js.map +1 -1
- package/dist/service/s3/serve/api/sim-s3-api-output.d.ts.map +1 -1
- package/dist/service/s3/serve/api/sim-s3-api-output.js +7 -1
- package/dist/service/s3/serve/api/sim-s3-api-output.js.map +1 -1
- package/dist/service/s3/serve/api/sim-s3-api-route.type.d.ts +14 -3
- package/dist/service/s3/serve/api/sim-s3-api-route.type.d.ts.map +1 -1
- package/dist/service/s3/serve/api/sim-s3-api-routes.d.ts.map +1 -1
- package/dist/service/s3/serve/api/sim-s3-api-routes.js +2 -1
- package/dist/service/s3/serve/api/sim-s3-api-routes.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { createHash } from "node:crypto";
|
|
2
|
+
import { SimCognitoInvalidParameterException } from "../../../error/sim-cognito.error.js";
|
|
3
|
+
import { SimCognitoWebAuthnRelyingPartyMismatchException } from "../../../error/sim-cognito-web-authn.error.js";
|
|
4
|
+
import { requireSimCognitoWebAuthnClientData, } from "./sim-cognito-web-authn-client-data.js";
|
|
5
|
+
/**
|
|
6
|
+
* How many bytes of authenticator data come before the flags, which is the
|
|
7
|
+
* hash of the relying party id.
|
|
8
|
+
*/
|
|
9
|
+
const relyingPartyHashBytes = 32;
|
|
10
|
+
/**
|
|
11
|
+
* A member of a credential that has to be there, as the base64url it is.
|
|
12
|
+
*/
|
|
13
|
+
function requireMember(value, member, field) {
|
|
14
|
+
if (typeof value !== "string" || value === "") {
|
|
15
|
+
throw new SimCognitoInvalidParameterException(`${field} ${member} must be the base64url string a browser's own ` +
|
|
16
|
+
`credential serialization carries it as`);
|
|
17
|
+
}
|
|
18
|
+
return value;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Refuse authenticator data signed for another relying party.
|
|
22
|
+
*/
|
|
23
|
+
function requireRelyingParty(authenticatorData, relyingPartyId) {
|
|
24
|
+
const signedFor = authenticatorData.subarray(0, relyingPartyHashBytes);
|
|
25
|
+
if (!signedFor.equals(createHash("sha256").update(relyingPartyId).digest())) {
|
|
26
|
+
throw new SimCognitoWebAuthnRelyingPartyMismatchException(`The credential was signed for another relying party, and this user ` +
|
|
27
|
+
`pool registers passkeys against ${relyingPartyId}.`);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* The credential document a request carried, or a refusal where it is not one.
|
|
32
|
+
*/
|
|
33
|
+
function requireDocument(value, field) {
|
|
34
|
+
if (typeof value !== "object" || value === null) {
|
|
35
|
+
throw new SimCognitoInvalidParameterException(`${field} must be the credential a browser serializes from ` +
|
|
36
|
+
`navigator.credentials, carrying an id and a response`);
|
|
37
|
+
}
|
|
38
|
+
return value;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Read the credential a request carried, and hold it to the ceremony the pool
|
|
42
|
+
* is part way through.
|
|
43
|
+
*
|
|
44
|
+
* A credential arrives as the JSON a browser produces from a
|
|
45
|
+
* `PublicKeyCredential`, so it is read rather than trusted: the client data
|
|
46
|
+
* says which ceremony it answers, which challenge, and where it was collected,
|
|
47
|
+
* and the authenticator data says which relying party it was signed for. What
|
|
48
|
+
* this leaves to the caller is the signature, which needs the public key of
|
|
49
|
+
* the credential being presented.
|
|
50
|
+
*/
|
|
51
|
+
export function requireSimCognitoWebAuthnCeremony(request) {
|
|
52
|
+
const { field } = request;
|
|
53
|
+
const document = requireDocument(request.credential, field);
|
|
54
|
+
const response = requireDocument(document["response"], field);
|
|
55
|
+
const clientDataJson = Buffer.from(requireMember(response["clientDataJSON"], "clientDataJSON", field), "base64url");
|
|
56
|
+
const authenticatorData = Buffer.from(requireMember(response["authenticatorData"], "authenticatorData", field), "base64url");
|
|
57
|
+
requireSimCognitoWebAuthnClientData(clientDataJson, request);
|
|
58
|
+
requireRelyingParty(authenticatorData, request.relyingPartyId);
|
|
59
|
+
return {
|
|
60
|
+
credentialId: requireMember(document["id"], "id", field),
|
|
61
|
+
clientDataJson,
|
|
62
|
+
authenticatorData,
|
|
63
|
+
document,
|
|
64
|
+
response,
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=sim-cognito-web-authn-ceremony.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-cognito-web-authn-ceremony.js","sourceRoot":"","sources":["../../../../../../src/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-ceremony.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAE,mCAAmC,EAAE,MAAM,qCAAqC,CAAC;AAC1F,OAAO,EAAE,+CAA+C,EAAE,MAAM,+CAA+C,CAAC;AAChH,OAAO,EACL,mCAAmC,GAEpC,MAAM,wCAAwC,CAAC;AAEhD;;;GAGG;AACH,MAAM,qBAAqB,GAAG,EAAE,CAAC;AAyBjC;;GAEG;AACH,SAAS,aAAa,CAAC,KAAc,EAAE,MAAc,EAAE,KAAa;IAClE,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;QAC9C,MAAM,IAAI,mCAAmC,CAC3C,GAAG,KAAK,IAAI,MAAM,gDAAgD;YAChE,wCAAwC,CAC3C,CAAC;IACJ,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,SAAS,mBAAmB,CAC1B,iBAAyB,EACzB,cAAsB;IAEtB,MAAM,SAAS,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC,EAAE,qBAAqB,CAAC,CAAC;IAEvE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC;QAC5E,MAAM,IAAI,+CAA+C,CACvD,qEAAqE;YACnE,mCAAmC,cAAc,GAAG,CACvD,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CACtB,KAAc,EACd,KAAa;IAEb,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QAChD,MAAM,IAAI,mCAAmC,CAC3C,GAAG,KAAK,oDAAoD;YAC1D,sDAAsD,CACzD,CAAC;IACJ,CAAC;IAED,OAAO,KAAgC,CAAC;AAC1C,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,iCAAiC,CAC/C,OAA0C;IAE1C,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;IAC1B,MAAM,QAAQ,GAAG,eAAe,CAAC,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IAC5D,MAAM,QAAQ,GAAG,eAAe,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,CAAC;IAC9D,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAChC,aAAa,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,gBAAgB,EAAE,KAAK,CAAC,EAClE,WAAW,CACZ,CAAC;IACF,MAAM,iBAAiB,GAAG,MAAM,CAAC,IAAI,CACnC,aAAa,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,mBAAmB,EAAE,KAAK,CAAC,EACxE,WAAW,CACZ,CAAC;IAEF,mCAAmC,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IAC7D,mBAAmB,CAAC,iBAAiB,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;IAE/D,OAAO;QACL,YAAY,EAAE,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC;QACxD,cAAc;QACd,iBAAiB;QACjB,QAAQ;QACR,QAAQ;KACT,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* What the client data of a ceremony has to say.
|
|
3
|
+
*/
|
|
4
|
+
export interface SimCognitoWebAuthnClientDataRequest {
|
|
5
|
+
/** The input the credential arrived in, which a refusal names. */
|
|
6
|
+
readonly field: string;
|
|
7
|
+
/** Which half of the ceremony this is. */
|
|
8
|
+
readonly type: "webauthn.create" | "webauthn.get";
|
|
9
|
+
/** The challenge the pool issued, which the credential has to answer. */
|
|
10
|
+
readonly challenge: string;
|
|
11
|
+
/** The domain the credential has to have been collected for. */
|
|
12
|
+
readonly relyingPartyId: string;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Refuse client data that answers something other than the challenge this pool
|
|
16
|
+
* issued, or that was collected somewhere the relying party does not cover.
|
|
17
|
+
*
|
|
18
|
+
* The client data is what the authenticator signed over, so what it says about
|
|
19
|
+
* the ceremony is worth as much as the signature that covers it. A credential
|
|
20
|
+
* collected at another origin is what a relying party check is for, and one
|
|
21
|
+
* carrying another challenge is a replay.
|
|
22
|
+
*/
|
|
23
|
+
export declare function requireSimCognitoWebAuthnClientData(clientDataJson: Buffer, request: SimCognitoWebAuthnClientDataRequest): void;
|
|
24
|
+
//# sourceMappingURL=sim-cognito-web-authn-client-data.d.ts.map
|
package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-client-data.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-cognito-web-authn-client-data.d.ts","sourceRoot":"","sources":["../../../../../../src/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-client-data.ts"],"names":[],"mappings":"AAMA;;GAEG;AACH,MAAM,WAAW,mCAAmC;IAClD,kEAAkE;IAClE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAEvB,0CAA0C;IAC1C,QAAQ,CAAC,IAAI,EAAE,iBAAiB,GAAG,cAAc,CAAC;IAElD,yEAAyE;IACzE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAE3B,gEAAgE;IAChE,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;CACjC;AA0BD;;;;;;;;GAQG;AACH,wBAAgB,mCAAmC,CACjD,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE,mCAAmC,GAC3C,IAAI,CAwBN"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { SimCognitoInvalidParameterException } from "../../../error/sim-cognito.error.js";
|
|
2
|
+
import { SimCognitoWebAuthnChallengeNotFoundException, SimCognitoWebAuthnOriginNotAllowedException, } from "../../../error/sim-cognito-web-authn.error.js";
|
|
3
|
+
/**
|
|
4
|
+
* The client data a credential carries, parsed as the JSON it is.
|
|
5
|
+
*/
|
|
6
|
+
function clientDataOf(clientDataJson, field) {
|
|
7
|
+
try {
|
|
8
|
+
const parsed = JSON.parse(clientDataJson.toString("utf8"));
|
|
9
|
+
if (typeof parsed === "object" && parsed !== null) {
|
|
10
|
+
return parsed;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
catch {
|
|
14
|
+
// Falls through to the refusal below, which says the same thing about an
|
|
15
|
+
// unparseable client data as about one that is not an object.
|
|
16
|
+
}
|
|
17
|
+
throw new SimCognitoInvalidParameterException(`${field} response.clientDataJSON is not the JSON object a browser ` +
|
|
18
|
+
`collects for a WebAuthn ceremony`);
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Refuse client data that answers something other than the challenge this pool
|
|
22
|
+
* issued, or that was collected somewhere the relying party does not cover.
|
|
23
|
+
*
|
|
24
|
+
* The client data is what the authenticator signed over, so what it says about
|
|
25
|
+
* the ceremony is worth as much as the signature that covers it. A credential
|
|
26
|
+
* collected at another origin is what a relying party check is for, and one
|
|
27
|
+
* carrying another challenge is a replay.
|
|
28
|
+
*/
|
|
29
|
+
export function requireSimCognitoWebAuthnClientData(clientDataJson, request) {
|
|
30
|
+
const { field, type, challenge, relyingPartyId } = request;
|
|
31
|
+
const clientData = clientDataOf(clientDataJson, field);
|
|
32
|
+
if (clientData["type"] !== type) {
|
|
33
|
+
throw new SimCognitoInvalidParameterException(`${field} response.clientDataJSON is for ` +
|
|
34
|
+
`'${String(clientData["type"])}' rather than '${type}'`);
|
|
35
|
+
}
|
|
36
|
+
if (clientData["challenge"] !== challenge) {
|
|
37
|
+
throw new SimCognitoWebAuthnChallengeNotFoundException("The credential answers a challenge this user pool did not issue, or " +
|
|
38
|
+
"one it has already spent.");
|
|
39
|
+
}
|
|
40
|
+
if (clientData["origin"] !== `https://${relyingPartyId}`) {
|
|
41
|
+
throw new SimCognitoWebAuthnOriginNotAllowedException(`The credential was collected at '${String(clientData["origin"])}', ` +
|
|
42
|
+
`which is not an origin of the relying party ${relyingPartyId}.`);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=sim-cognito-web-authn-client-data.js.map
|
package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-client-data.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-cognito-web-authn-client-data.js","sourceRoot":"","sources":["../../../../../../src/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-client-data.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mCAAmC,EAAE,MAAM,qCAAqC,CAAC;AAC1F,OAAO,EACL,4CAA4C,EAC5C,2CAA2C,GAC5C,MAAM,+CAA+C,CAAC;AAmBvD;;GAEG;AACH,SAAS,YAAY,CACnB,cAAsB,EACtB,KAAa;IAEb,IAAI,CAAC;QACH,MAAM,MAAM,GAAY,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;QAEpE,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YAClD,OAAO,MAAiC,CAAC;QAC3C,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,yEAAyE;QACzE,8DAA8D;IAChE,CAAC;IAED,MAAM,IAAI,mCAAmC,CAC3C,GAAG,KAAK,4DAA4D;QAClE,kCAAkC,CACrC,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,mCAAmC,CACjD,cAAsB,EACtB,OAA4C;IAE5C,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC;IAC3D,MAAM,UAAU,GAAG,YAAY,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IAEvD,IAAI,UAAU,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC;QAChC,MAAM,IAAI,mCAAmC,CAC3C,GAAG,KAAK,kCAAkC;YACxC,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,kBAAkB,IAAI,GAAG,CAC1D,CAAC;IACJ,CAAC;IAED,IAAI,UAAU,CAAC,WAAW,CAAC,KAAK,SAAS,EAAE,CAAC;QAC1C,MAAM,IAAI,4CAA4C,CACpD,sEAAsE;YACpE,2BAA2B,CAC9B,CAAC;IACJ,CAAC;IAED,IAAI,UAAU,CAAC,QAAQ,CAAC,KAAK,WAAW,cAAc,EAAE,EAAE,CAAC;QACzD,MAAM,IAAI,2CAA2C,CACnD,oCAAoC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,KAAK;YACnE,+CAA+C,cAAc,GAAG,CACnE,CAAC;IACJ,CAAC;AACH,CAAC"}
|
package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-creation-options.d.ts
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { SimCognitoWebAuthnCreationOptions, SimCognitoWebAuthnCredentialDescriptor } from "./sim-cognito-web-authn-document.js";
|
|
2
|
+
/**
|
|
3
|
+
* What a pool needs to know before it can ask for a passkey.
|
|
4
|
+
*/
|
|
5
|
+
export interface SimCognitoWebAuthnRegistrationRequest {
|
|
6
|
+
/** The domain the passkey is registered against. */
|
|
7
|
+
readonly relyingPartyId: string;
|
|
8
|
+
/** The pool's own name, which a browser shows the person. */
|
|
9
|
+
readonly relyingPartyName: string;
|
|
10
|
+
/** The user handle the authenticator stores, which is the user's `sub`. */
|
|
11
|
+
readonly userHandle: string;
|
|
12
|
+
/** The name the authenticator shows for the account. */
|
|
13
|
+
readonly username: string;
|
|
14
|
+
/** Whether the authenticator has to check who is holding it. */
|
|
15
|
+
readonly userVerification: string;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* The options a passkey is created from, which a browser passes straight to
|
|
19
|
+
* `navigator.credentials.create()`.
|
|
20
|
+
*
|
|
21
|
+
* The challenge is fresh for every registration, and is what the authenticator
|
|
22
|
+
* signs over. The passkeys the user already has are excluded, so an
|
|
23
|
+
* authenticator already holding one makes another rather than replacing it,
|
|
24
|
+
* and the key is asked to be discoverable so a later sign-in can present it
|
|
25
|
+
* without being told which user is signing in.
|
|
26
|
+
*/
|
|
27
|
+
export declare function simCognitoWebAuthnCreationOptions(request: SimCognitoWebAuthnRegistrationRequest, excluded: readonly SimCognitoWebAuthnCredentialDescriptor[]): SimCognitoWebAuthnCreationOptions;
|
|
28
|
+
//# sourceMappingURL=sim-cognito-web-authn-creation-options.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-cognito-web-authn-creation-options.d.ts","sourceRoot":"","sources":["../../../../../../src/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-creation-options.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iCAAiC,EACjC,sCAAsC,EACvC,MAAM,qCAAqC,CAAC;AAc7C;;GAEG;AACH,MAAM,WAAW,qCAAqC;IACpD,oDAAoD;IACpD,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAEhC,6DAA6D;IAC7D,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAElC,2EAA2E;IAC3E,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAE5B,wDAAwD;IACxD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE1B,gEAAgE;IAChE,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;CACnC;AAED;;;;;;;;;GASG;AACH,wBAAgB,iCAAiC,CAC/C,OAAO,EAAE,qCAAqC,EAC9C,QAAQ,EAAE,SAAS,sCAAsC,EAAE,GAC1D,iCAAiC,CAqBnC"}
|
package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-creation-options.js
ADDED
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { simCognitoWebAuthnAlgorithm, simCognitoWebAuthnChallenge, } from "./sim-cognito-web-authn-signing.js";
|
|
2
|
+
/**
|
|
3
|
+
* How long a browser is given to finish a ceremony, in milliseconds.
|
|
4
|
+
*
|
|
5
|
+
* This is the authenticator's own prompt timeout rather than the app client's
|
|
6
|
+
* `AuthSessionValidity`, which is what bounds the sign-in around it.
|
|
7
|
+
*/
|
|
8
|
+
const ceremonyTimeout = 60_000;
|
|
9
|
+
/**
|
|
10
|
+
* The options a passkey is created from, which a browser passes straight to
|
|
11
|
+
* `navigator.credentials.create()`.
|
|
12
|
+
*
|
|
13
|
+
* The challenge is fresh for every registration, and is what the authenticator
|
|
14
|
+
* signs over. The passkeys the user already has are excluded, so an
|
|
15
|
+
* authenticator already holding one makes another rather than replacing it,
|
|
16
|
+
* and the key is asked to be discoverable so a later sign-in can present it
|
|
17
|
+
* without being told which user is signing in.
|
|
18
|
+
*/
|
|
19
|
+
export function simCognitoWebAuthnCreationOptions(request, excluded) {
|
|
20
|
+
return {
|
|
21
|
+
challenge: simCognitoWebAuthnChallenge(),
|
|
22
|
+
rp: { id: request.relyingPartyId, name: request.relyingPartyName },
|
|
23
|
+
user: {
|
|
24
|
+
id: Buffer.from(request.userHandle).toString("base64url"),
|
|
25
|
+
name: request.username,
|
|
26
|
+
displayName: request.username,
|
|
27
|
+
},
|
|
28
|
+
pubKeyCredParams: [
|
|
29
|
+
{ type: "public-key", alg: simCognitoWebAuthnAlgorithm },
|
|
30
|
+
],
|
|
31
|
+
timeout: ceremonyTimeout,
|
|
32
|
+
excludeCredentials: excluded,
|
|
33
|
+
authenticatorSelection: {
|
|
34
|
+
residentKey: "required",
|
|
35
|
+
requireResidentKey: true,
|
|
36
|
+
userVerification: request.userVerification,
|
|
37
|
+
},
|
|
38
|
+
attestation: "none",
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=sim-cognito-web-authn-creation-options.js.map
|
package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-creation-options.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-cognito-web-authn-creation-options.js","sourceRoot":"","sources":["../../../../../../src/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-creation-options.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,2BAA2B,EAC3B,2BAA2B,GAC5B,MAAM,oCAAoC,CAAC;AAE5C;;;;;GAKG;AACH,MAAM,eAAe,GAAG,MAAM,CAAC;AAsB/B;;;;;;;;;GASG;AACH,MAAM,UAAU,iCAAiC,CAC/C,OAA8C,EAC9C,QAA2D;IAE3D,OAAO;QACL,SAAS,EAAE,2BAA2B,EAAE;QACxC,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,cAAc,EAAE,IAAI,EAAE,OAAO,CAAC,gBAAgB,EAAE;QAClE,IAAI,EAAE;YACJ,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC;YACzD,IAAI,EAAE,OAAO,CAAC,QAAQ;YACtB,WAAW,EAAE,OAAO,CAAC,QAAQ;SAC9B;QACD,gBAAgB,EAAE;YAChB,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,2BAA2B,EAAE;SACzD;QACD,OAAO,EAAE,eAAe;QACxB,kBAAkB,EAAE,QAAQ;QAC5B,sBAAsB,EAAE;YACtB,WAAW,EAAE,UAAU;YACvB,kBAAkB,EAAE,IAAI;YACxB,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;SAC3C;QACD,WAAW,EAAE,MAAM;KACpB,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import type { KeyObject } from "node:crypto";
|
|
2
|
+
import type { SimCognitoWebAuthnCeremony } from "./sim-cognito-web-authn-ceremony.js";
|
|
3
|
+
import type { SimCognitoWebAuthnCredentialDescriptor } from "./sim-cognito-web-authn-document.js";
|
|
4
|
+
/**
|
|
5
|
+
* One registered passkey as `ListWebAuthnCredentials` reports it.
|
|
6
|
+
*
|
|
7
|
+
* https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_WebAuthnCredentialDescription.html
|
|
8
|
+
*/
|
|
9
|
+
export interface SimCognitoWebAuthnCredentialDescription {
|
|
10
|
+
readonly CredentialId?: string | undefined;
|
|
11
|
+
readonly FriendlyCredentialName?: string | undefined;
|
|
12
|
+
readonly RelyingPartyId?: string | undefined;
|
|
13
|
+
readonly AuthenticatorAttachment?: string | undefined;
|
|
14
|
+
readonly AuthenticatorTransports?: readonly string[] | undefined;
|
|
15
|
+
readonly CreatedAt?: Date | undefined;
|
|
16
|
+
}
|
|
17
|
+
interface SimCognitoWebAuthnCredentialProperties {
|
|
18
|
+
readonly credentialId: string;
|
|
19
|
+
readonly publicKey: KeyObject;
|
|
20
|
+
readonly relyingPartyId: string;
|
|
21
|
+
readonly authenticatorAttachment: string;
|
|
22
|
+
readonly transports: readonly string[];
|
|
23
|
+
readonly createdAt: Date;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* One passkey a user has registered, as the pool holds it.
|
|
27
|
+
*
|
|
28
|
+
* What the pool keeps is the public half: an identifier the authenticator
|
|
29
|
+
* allocated, the key that identifier's signatures can be checked against, and
|
|
30
|
+
* the relying party the pair was registered for. The private half never
|
|
31
|
+
* reaches a pool, on real Cognito or here.
|
|
32
|
+
*
|
|
33
|
+
* `FriendlyCredentialName` is the relying party id. Real Cognito reads the
|
|
34
|
+
* authenticator's own model out of the attestation and names the credential
|
|
35
|
+
* after it, which needs a device this simulation does not have.
|
|
36
|
+
*/
|
|
37
|
+
export declare class SimCognitoWebAuthnCredential {
|
|
38
|
+
readonly credentialId: string;
|
|
39
|
+
readonly relyingPartyId: string;
|
|
40
|
+
readonly authenticatorAttachment: string;
|
|
41
|
+
readonly transports: readonly string[];
|
|
42
|
+
readonly createdAt: Date;
|
|
43
|
+
/**
|
|
44
|
+
* The key this credential's signatures are checked against. It is the public
|
|
45
|
+
* half of the pair the authenticator made, and it is what a sign-in
|
|
46
|
+
* presenting the passkey reads.
|
|
47
|
+
*/
|
|
48
|
+
readonly publicKey: KeyObject;
|
|
49
|
+
constructor(properties: SimCognitoWebAuthnCredentialProperties);
|
|
50
|
+
/**
|
|
51
|
+
* Whether this passkey is what signed a ceremony.
|
|
52
|
+
*
|
|
53
|
+
* The signature covers the authenticator data and a hash of the client data,
|
|
54
|
+
* so a credential replayed with either of them changed fails here even
|
|
55
|
+
* though both were read successfully.
|
|
56
|
+
*/
|
|
57
|
+
signed(ceremony: SimCognitoWebAuthnCeremony, signature: Buffer): boolean;
|
|
58
|
+
/**
|
|
59
|
+
* This credential as a ceremony's options name it, which is what a
|
|
60
|
+
* registration excludes and a sign-in allows.
|
|
61
|
+
*/
|
|
62
|
+
descriptor(): SimCognitoWebAuthnCredentialDescriptor;
|
|
63
|
+
/**
|
|
64
|
+
* This credential as `ListWebAuthnCredentials` reports it.
|
|
65
|
+
*/
|
|
66
|
+
toOutput(): SimCognitoWebAuthnCredentialDescription;
|
|
67
|
+
}
|
|
68
|
+
export {};
|
|
69
|
+
//# sourceMappingURL=sim-cognito-web-authn-credential.d.ts.map
|
package/dist/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-credential.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-cognito-web-authn-credential.d.ts","sourceRoot":"","sources":["../../../../../../src/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-credential.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,qCAAqC,CAAC;AACtF,OAAO,KAAK,EAAE,sCAAsC,EAAE,MAAM,qCAAqC,CAAC;AAGlG;;;;GAIG;AACH,MAAM,WAAW,uCAAuC;IACtD,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3C,QAAQ,CAAC,sBAAsB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrD,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7C,QAAQ,CAAC,uBAAuB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACtD,QAAQ,CAAC,uBAAuB,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;IACjE,QAAQ,CAAC,SAAS,CAAC,EAAE,IAAI,GAAG,SAAS,CAAC;CACvC;AAED,UAAU,sCAAsC;IAC9C,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,uBAAuB,EAAE,MAAM,CAAC;IACzC,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC;CAC1B;AAED;;;;;;;;;;;GAWG;AACH,qBAAa,4BAA4B;IACvC,SAAgB,YAAY,EAAE,MAAM,CAAC;IACrC,SAAgB,cAAc,EAAE,MAAM,CAAC;IACvC,SAAgB,uBAAuB,EAAE,MAAM,CAAC;IAChD,SAAgB,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9C,SAAgB,SAAS,EAAE,IAAI,CAAC;IAEhC;;;;OAIG;IACH,SAAgB,SAAS,EAAE,SAAS,CAAC;IAErC,YAAY,UAAU,EAAE,sCAAsC,EAO7D;IAED;;;;;;OAMG;IACH,MAAM,CAAC,QAAQ,EAAE,0BAA0B,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAOvE;IAED;;;OAGG;IACH,UAAU,IAAI,sCAAsC,CAMnD;IAED;;OAEG;IACH,QAAQ,IAAI,uCAAuC,CASlD;CACF"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { simCognitoWebAuthnVerified } from "./sim-cognito-web-authn-signing.js";
|
|
2
|
+
/**
|
|
3
|
+
* One passkey a user has registered, as the pool holds it.
|
|
4
|
+
*
|
|
5
|
+
* What the pool keeps is the public half: an identifier the authenticator
|
|
6
|
+
* allocated, the key that identifier's signatures can be checked against, and
|
|
7
|
+
* the relying party the pair was registered for. The private half never
|
|
8
|
+
* reaches a pool, on real Cognito or here.
|
|
9
|
+
*
|
|
10
|
+
* `FriendlyCredentialName` is the relying party id. Real Cognito reads the
|
|
11
|
+
* authenticator's own model out of the attestation and names the credential
|
|
12
|
+
* after it, which needs a device this simulation does not have.
|
|
13
|
+
*/
|
|
14
|
+
export class SimCognitoWebAuthnCredential {
|
|
15
|
+
credentialId;
|
|
16
|
+
relyingPartyId;
|
|
17
|
+
authenticatorAttachment;
|
|
18
|
+
transports;
|
|
19
|
+
createdAt;
|
|
20
|
+
/**
|
|
21
|
+
* The key this credential's signatures are checked against. It is the public
|
|
22
|
+
* half of the pair the authenticator made, and it is what a sign-in
|
|
23
|
+
* presenting the passkey reads.
|
|
24
|
+
*/
|
|
25
|
+
publicKey;
|
|
26
|
+
constructor(properties) {
|
|
27
|
+
this.credentialId = properties.credentialId;
|
|
28
|
+
this.relyingPartyId = properties.relyingPartyId;
|
|
29
|
+
this.authenticatorAttachment = properties.authenticatorAttachment;
|
|
30
|
+
this.transports = properties.transports;
|
|
31
|
+
this.createdAt = properties.createdAt;
|
|
32
|
+
this.publicKey = properties.publicKey;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Whether this passkey is what signed a ceremony.
|
|
36
|
+
*
|
|
37
|
+
* The signature covers the authenticator data and a hash of the client data,
|
|
38
|
+
* so a credential replayed with either of them changed fails here even
|
|
39
|
+
* though both were read successfully.
|
|
40
|
+
*/
|
|
41
|
+
signed(ceremony, signature) {
|
|
42
|
+
return simCognitoWebAuthnVerified(this.publicKey, ceremony.authenticatorData, ceremony.clientDataJson, signature);
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* This credential as a ceremony's options name it, which is what a
|
|
46
|
+
* registration excludes and a sign-in allows.
|
|
47
|
+
*/
|
|
48
|
+
descriptor() {
|
|
49
|
+
return {
|
|
50
|
+
type: "public-key",
|
|
51
|
+
id: this.credentialId,
|
|
52
|
+
transports: this.transports,
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* This credential as `ListWebAuthnCredentials` reports it.
|
|
57
|
+
*/
|
|
58
|
+
toOutput() {
|
|
59
|
+
return {
|
|
60
|
+
CredentialId: this.credentialId,
|
|
61
|
+
FriendlyCredentialName: this.relyingPartyId,
|
|
62
|
+
RelyingPartyId: this.relyingPartyId,
|
|
63
|
+
AuthenticatorAttachment: this.authenticatorAttachment,
|
|
64
|
+
AuthenticatorTransports: this.transports,
|
|
65
|
+
CreatedAt: this.createdAt,
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
//# sourceMappingURL=sim-cognito-web-authn-credential.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-cognito-web-authn-credential.js","sourceRoot":"","sources":["../../../../../../src/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-credential.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAyBhF;;;;;;;;;;;GAWG;AACH,MAAM,OAAO,4BAA4B;IACvB,YAAY,CAAS;IACrB,cAAc,CAAS;IACvB,uBAAuB,CAAS;IAChC,UAAU,CAAoB;IAC9B,SAAS,CAAO;IAEhC;;;;OAIG;IACa,SAAS,CAAY;IAErC,YAAY,UAAkD;QAC5D,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,YAAY,CAAC;QAC5C,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC,cAAc,CAAC;QAChD,IAAI,CAAC,uBAAuB,GAAG,UAAU,CAAC,uBAAuB,CAAC;QAClE,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;QACxC,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;QACtC,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;IACxC,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,QAAoC,EAAE,SAAiB;QAC5D,OAAO,0BAA0B,CAC/B,IAAI,CAAC,SAAS,EACd,QAAQ,CAAC,iBAAiB,EAC1B,QAAQ,CAAC,cAAc,EACvB,SAAS,CACV,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,UAAU;QACR,OAAO;YACL,IAAI,EAAE,YAAY;YAClB,EAAE,EAAE,IAAI,CAAC,YAAY;YACrB,UAAU,EAAE,IAAI,CAAC,UAAU;SAC5B,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO;YACL,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,sBAAsB,EAAE,IAAI,CAAC,cAAc;YAC3C,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,uBAAuB,EAAE,IAAI,CAAC,uBAAuB;YACrD,uBAAuB,EAAE,IAAI,CAAC,UAAU;YACxC,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import type { SimCognitoWebAuthnCreationOptions, SimCognitoWebAuthnCredentialDocument, SimCognitoWebAuthnRequestOptions } from "./sim-cognito-web-authn-document.js";
|
|
2
|
+
/**
|
|
3
|
+
* The authenticator standing in for a user's own device.
|
|
4
|
+
*
|
|
5
|
+
* WebAuthn has two sides. The pool holds public keys and checks signatures,
|
|
6
|
+
* and a phone or a laptop holds the private keys and produces them. There is
|
|
7
|
+
* neither in a test, so this is the simulator's own, in the way
|
|
8
|
+
* `SimCognitoUserPool.softwareTokenCode` reads the code a user's authenticator
|
|
9
|
+
* app would be showing.
|
|
10
|
+
*
|
|
11
|
+
* The keys are real ECDSA keys over P-256 and the signatures are real, so a
|
|
12
|
+
* credential this produces is accepted because it verifies. A test that would
|
|
13
|
+
* rather hold its own key can build the credential document itself. It is the
|
|
14
|
+
* JSON a browser serializes a `PublicKeyCredential` to, and nothing here reads
|
|
15
|
+
* a field a browser leaves out.
|
|
16
|
+
*/
|
|
17
|
+
export declare class SimCognitoWebAuthnDevice {
|
|
18
|
+
#private;
|
|
19
|
+
/**
|
|
20
|
+
* Create a passkey for a registration's options, as
|
|
21
|
+
* `navigator.credentials.create()` would.
|
|
22
|
+
*
|
|
23
|
+
* `attestationObject` is where a real authenticator states which device it
|
|
24
|
+
* is, wrapped in CBOR. Nothing reads one here, and the public key travels in
|
|
25
|
+
* `publicKey`, the field a browser's own JSON serialization carries it in,
|
|
26
|
+
* so the attestation is the signed authenticator data and no more.
|
|
27
|
+
*/
|
|
28
|
+
create(options: SimCognitoWebAuthnCreationOptions): SimCognitoWebAuthnCredentialDocument;
|
|
29
|
+
/**
|
|
30
|
+
* Present a passkey for a sign-in's options, as
|
|
31
|
+
* `navigator.credentials.get()` would.
|
|
32
|
+
*/
|
|
33
|
+
present(options: SimCognitoWebAuthnRequestOptions, userHandle: string): SimCognitoWebAuthnCredentialDocument;
|
|
34
|
+
/**
|
|
35
|
+
* Forget a passkey, because the pool that held its public half has.
|
|
36
|
+
*/
|
|
37
|
+
forget(credentialId: string): void;
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=sim-cognito-web-authn-device.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-cognito-web-authn-device.d.ts","sourceRoot":"","sources":["../../../../../../src/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-device.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iCAAiC,EACjC,oCAAoC,EACpC,gCAAgC,EACjC,MAAM,qCAAqC,CAAC;AAwC7C;;;;;;;;;;;;;;GAcG;AACH,qBAAa,wBAAwB;;IAGnC;;;;;;;;OAQG;IACH,MAAM,CACJ,OAAO,EAAE,iCAAiC,GACzC,oCAAoC,CAoBtC;IAED;;;OAGG;IACH,OAAO,CACL,OAAO,EAAE,gCAAgC,EACzC,UAAU,EAAE,MAAM,GACjB,oCAAoC,CAuBtC;IAED;;OAEG;IACH,MAAM,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAEjC;CACF"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import { SimCognitoWebAuthnKeys } from "./sim-cognito-web-authn-keys.js";
|
|
2
|
+
import { simCognitoWebAuthnPublicKey } from "./sim-cognito-web-authn-public-key.js";
|
|
3
|
+
import { simCognitoWebAuthnAlgorithm, simCognitoWebAuthnAuthenticatorData, simCognitoWebAuthnClientData, simCognitoWebAuthnCredentialId, simCognitoWebAuthnKeyPair, simCognitoWebAuthnSignature, } from "./sim-cognito-web-authn-signing.js";
|
|
4
|
+
/**
|
|
5
|
+
* How a passkey made here says it is attached, which is what a platform
|
|
6
|
+
* authenticator such as a phone or a laptop reports.
|
|
7
|
+
*/
|
|
8
|
+
const attachment = "platform";
|
|
9
|
+
/**
|
|
10
|
+
* How a passkey made here says it can be reached.
|
|
11
|
+
*/
|
|
12
|
+
const transports = ["internal", "hybrid"];
|
|
13
|
+
/**
|
|
14
|
+
* A credential around the response one ceremony produced.
|
|
15
|
+
*/
|
|
16
|
+
function credentialOf(credentialId, response) {
|
|
17
|
+
return {
|
|
18
|
+
id: credentialId,
|
|
19
|
+
rawId: credentialId,
|
|
20
|
+
type: "public-key",
|
|
21
|
+
authenticatorAttachment: attachment,
|
|
22
|
+
response,
|
|
23
|
+
clientExtensionResults: {},
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* The authenticator standing in for a user's own device.
|
|
28
|
+
*
|
|
29
|
+
* WebAuthn has two sides. The pool holds public keys and checks signatures,
|
|
30
|
+
* and a phone or a laptop holds the private keys and produces them. There is
|
|
31
|
+
* neither in a test, so this is the simulator's own, in the way
|
|
32
|
+
* `SimCognitoUserPool.softwareTokenCode` reads the code a user's authenticator
|
|
33
|
+
* app would be showing.
|
|
34
|
+
*
|
|
35
|
+
* The keys are real ECDSA keys over P-256 and the signatures are real, so a
|
|
36
|
+
* credential this produces is accepted because it verifies. A test that would
|
|
37
|
+
* rather hold its own key can build the credential document itself. It is the
|
|
38
|
+
* JSON a browser serializes a `PublicKeyCredential` to, and nothing here reads
|
|
39
|
+
* a field a browser leaves out.
|
|
40
|
+
*/
|
|
41
|
+
export class SimCognitoWebAuthnDevice {
|
|
42
|
+
#keys = new SimCognitoWebAuthnKeys();
|
|
43
|
+
/**
|
|
44
|
+
* Create a passkey for a registration's options, as
|
|
45
|
+
* `navigator.credentials.create()` would.
|
|
46
|
+
*
|
|
47
|
+
* `attestationObject` is where a real authenticator states which device it
|
|
48
|
+
* is, wrapped in CBOR. Nothing reads one here, and the public key travels in
|
|
49
|
+
* `publicKey`, the field a browser's own JSON serialization carries it in,
|
|
50
|
+
* so the attestation is the signed authenticator data and no more.
|
|
51
|
+
*/
|
|
52
|
+
create(options) {
|
|
53
|
+
const { publicKey, privateKey } = simCognitoWebAuthnKeyPair();
|
|
54
|
+
const credentialId = simCognitoWebAuthnCredentialId();
|
|
55
|
+
const signed = simCognitoWebAuthnAuthenticatorData(options.rp.id, 0);
|
|
56
|
+
const collected = simCognitoWebAuthnClientData("webauthn.create", options.challenge, options.rp.id);
|
|
57
|
+
this.#keys.add(credentialId, privateKey);
|
|
58
|
+
return credentialOf(credentialId, {
|
|
59
|
+
clientDataJSON: collected.toString("base64url"),
|
|
60
|
+
attestationObject: signed.toString("base64url"),
|
|
61
|
+
authenticatorData: signed.toString("base64url"),
|
|
62
|
+
publicKey: simCognitoWebAuthnPublicKey(publicKey),
|
|
63
|
+
publicKeyAlgorithm: simCognitoWebAuthnAlgorithm,
|
|
64
|
+
transports: [...transports],
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Present a passkey for a sign-in's options, as
|
|
69
|
+
* `navigator.credentials.get()` would.
|
|
70
|
+
*/
|
|
71
|
+
present(options, userHandle) {
|
|
72
|
+
const [credentialId, key] = this.#keys.requireOneOf(options.allowCredentials.map((each) => each.id));
|
|
73
|
+
key.signCount += 1;
|
|
74
|
+
const signed = simCognitoWebAuthnAuthenticatorData(options.rpId, key.signCount);
|
|
75
|
+
const collected = simCognitoWebAuthnClientData("webauthn.get", options.challenge, options.rpId);
|
|
76
|
+
return credentialOf(credentialId, {
|
|
77
|
+
clientDataJSON: collected.toString("base64url"),
|
|
78
|
+
authenticatorData: signed.toString("base64url"),
|
|
79
|
+
signature: simCognitoWebAuthnSignature(key.privateKey, signed, collected),
|
|
80
|
+
userHandle,
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Forget a passkey, because the pool that held its public half has.
|
|
85
|
+
*/
|
|
86
|
+
forget(credentialId) {
|
|
87
|
+
this.#keys.forget(credentialId);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
//# sourceMappingURL=sim-cognito-web-authn-device.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-cognito-web-authn-device.js","sourceRoot":"","sources":["../../../../../../src/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-device.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,EAAE,2BAA2B,EAAE,MAAM,uCAAuC,CAAC;AACpF,OAAO,EACL,2BAA2B,EAC3B,mCAAmC,EACnC,4BAA4B,EAC5B,8BAA8B,EAC9B,yBAAyB,EACzB,2BAA2B,GAC5B,MAAM,oCAAoC,CAAC;AAE5C;;;GAGG;AACH,MAAM,UAAU,GAAG,UAAU,CAAC;AAE9B;;GAEG;AACH,MAAM,UAAU,GAAsB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;AAE7D;;GAEG;AACH,SAAS,YAAY,CACnB,YAAoB,EACpB,QAA0D;IAE1D,OAAO;QACL,EAAE,EAAE,YAAY;QAChB,KAAK,EAAE,YAAY;QACnB,IAAI,EAAE,YAAY;QAClB,uBAAuB,EAAE,UAAU;QACnC,QAAQ;QACR,sBAAsB,EAAE,EAAE;KAC3B,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,OAAO,wBAAwB;IAC1B,KAAK,GAAG,IAAI,sBAAsB,EAAE,CAAC;IAE9C;;;;;;;;OAQG;IACH,MAAM,CACJ,OAA0C;QAE1C,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,yBAAyB,EAAE,CAAC;QAC9D,MAAM,YAAY,GAAG,8BAA8B,EAAE,CAAC;QACtD,MAAM,MAAM,GAAG,mCAAmC,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QACrE,MAAM,SAAS,GAAG,4BAA4B,CAC5C,iBAAiB,EACjB,OAAO,CAAC,SAAS,EACjB,OAAO,CAAC,EAAE,CAAC,EAAE,CACd,CAAC;QAEF,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;QAEzC,OAAO,YAAY,CAAC,YAAY,EAAE;YAChC,cAAc,EAAE,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC;YAC/C,iBAAiB,EAAE,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC;YAC/C,iBAAiB,EAAE,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC;YAC/C,SAAS,EAAE,2BAA2B,CAAC,SAAS,CAAC;YACjD,kBAAkB,EAAE,2BAA2B;YAC/C,UAAU,EAAE,CAAC,GAAG,UAAU,CAAC;SAC5B,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,OAAO,CACL,OAAyC,EACzC,UAAkB;QAElB,MAAM,CAAC,YAAY,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CACjD,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAChD,CAAC;QAEF,GAAG,CAAC,SAAS,IAAI,CAAC,CAAC;QAEnB,MAAM,MAAM,GAAG,mCAAmC,CAChD,OAAO,CAAC,IAAI,EACZ,GAAG,CAAC,SAAS,CACd,CAAC;QACF,MAAM,SAAS,GAAG,4BAA4B,CAC5C,cAAc,EACd,OAAO,CAAC,SAAS,EACjB,OAAO,CAAC,IAAI,CACb,CAAC;QAEF,OAAO,YAAY,CAAC,YAAY,EAAE;YAChC,cAAc,EAAE,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC;YAC/C,iBAAiB,EAAE,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC;YAC/C,SAAS,EAAE,2BAA2B,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,CAAC;YACzE,UAAU;SACX,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,YAAoB;QACzB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAClC,CAAC;CACF"}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A value as an SDK document input carries one, which is JSON and no more.
|
|
3
|
+
*
|
|
4
|
+
* `Credential` on `CompleteWebAuthnRegistration` is a document rather than a
|
|
5
|
+
* shape the API names, so a credential built here is written to be assignable
|
|
6
|
+
* to one. That is what lets a test pass the credential straight to the SDK
|
|
7
|
+
* Command without casting it first.
|
|
8
|
+
*/
|
|
9
|
+
export type SimCognitoWebAuthnDocumentValue = null | boolean | number | string | SimCognitoWebAuthnDocumentValue[] | {
|
|
10
|
+
[member: string]: SimCognitoWebAuthnDocumentValue;
|
|
11
|
+
};
|
|
12
|
+
/**
|
|
13
|
+
* The relying party a credential is created for.
|
|
14
|
+
*/
|
|
15
|
+
export interface SimCognitoWebAuthnRelyingParty {
|
|
16
|
+
readonly id: string;
|
|
17
|
+
readonly name: string;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* The user a credential is created for, as WebAuthn names one: an opaque
|
|
21
|
+
* handle the authenticator stores, and the names it shows a person.
|
|
22
|
+
*/
|
|
23
|
+
export interface SimCognitoWebAuthnUserEntity {
|
|
24
|
+
readonly id: string;
|
|
25
|
+
readonly name: string;
|
|
26
|
+
readonly displayName: string;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* One credential named in a ceremony's options, either to exclude from a
|
|
30
|
+
* registration or to allow at a sign-in.
|
|
31
|
+
*/
|
|
32
|
+
export interface SimCognitoWebAuthnCredentialDescriptor {
|
|
33
|
+
readonly type: "public-key";
|
|
34
|
+
readonly id: string;
|
|
35
|
+
readonly transports: readonly string[];
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* What `StartWebAuthnRegistration` answers with, which a browser passes
|
|
39
|
+
* straight to `navigator.credentials.create()`.
|
|
40
|
+
*
|
|
41
|
+
* https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_StartWebAuthnRegistration.html
|
|
42
|
+
*/
|
|
43
|
+
export interface SimCognitoWebAuthnCreationOptions {
|
|
44
|
+
readonly challenge: string;
|
|
45
|
+
readonly rp: SimCognitoWebAuthnRelyingParty;
|
|
46
|
+
readonly user: SimCognitoWebAuthnUserEntity;
|
|
47
|
+
readonly pubKeyCredParams: readonly {
|
|
48
|
+
readonly type: "public-key";
|
|
49
|
+
readonly alg: number;
|
|
50
|
+
}[];
|
|
51
|
+
readonly timeout: number;
|
|
52
|
+
readonly excludeCredentials: readonly SimCognitoWebAuthnCredentialDescriptor[];
|
|
53
|
+
readonly authenticatorSelection: {
|
|
54
|
+
readonly residentKey: string;
|
|
55
|
+
readonly requireResidentKey: boolean;
|
|
56
|
+
readonly userVerification: string;
|
|
57
|
+
};
|
|
58
|
+
readonly attestation: string;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* What a `WEB_AUTHN` challenge carries, which a browser passes straight to
|
|
62
|
+
* `navigator.credentials.get()`.
|
|
63
|
+
*/
|
|
64
|
+
export interface SimCognitoWebAuthnRequestOptions {
|
|
65
|
+
readonly challenge: string;
|
|
66
|
+
readonly rpId: string;
|
|
67
|
+
readonly timeout: number;
|
|
68
|
+
readonly allowCredentials: readonly SimCognitoWebAuthnCredentialDescriptor[];
|
|
69
|
+
readonly userVerification: string;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* The half of a credential an authenticator fills in when it creates one.
|
|
73
|
+
*
|
|
74
|
+
* `attestationObject` is where a real authenticator states what kind of device
|
|
75
|
+
* it is. Nothing here reads one, and the public key is read from `publicKey`
|
|
76
|
+
* instead, which is the field a browser's own JSON serialization carries it
|
|
77
|
+
* in.
|
|
78
|
+
*/
|
|
79
|
+
export interface SimCognitoWebAuthnAttestationResponse {
|
|
80
|
+
[member: string]: SimCognitoWebAuthnDocumentValue;
|
|
81
|
+
readonly clientDataJSON: string;
|
|
82
|
+
readonly attestationObject: string;
|
|
83
|
+
readonly authenticatorData: string;
|
|
84
|
+
readonly publicKey: string;
|
|
85
|
+
readonly publicKeyAlgorithm: number;
|
|
86
|
+
readonly transports: string[];
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* The half of a credential an authenticator fills in when it presents one.
|
|
90
|
+
*/
|
|
91
|
+
export interface SimCognitoWebAuthnAssertionResponse {
|
|
92
|
+
[member: string]: SimCognitoWebAuthnDocumentValue;
|
|
93
|
+
readonly clientDataJSON: string;
|
|
94
|
+
readonly authenticatorData: string;
|
|
95
|
+
readonly signature: string;
|
|
96
|
+
readonly userHandle: string;
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* A credential as a browser serializes one, which is what
|
|
100
|
+
* `CompleteWebAuthnRegistration` and a `WEB_AUTHN` challenge response carry.
|
|
101
|
+
*/
|
|
102
|
+
export interface SimCognitoWebAuthnCredentialDocument {
|
|
103
|
+
[member: string]: SimCognitoWebAuthnDocumentValue;
|
|
104
|
+
readonly id: string;
|
|
105
|
+
readonly rawId: string;
|
|
106
|
+
readonly type: "public-key";
|
|
107
|
+
readonly authenticatorAttachment: string;
|
|
108
|
+
readonly response: SimCognitoWebAuthnAttestationResponse | SimCognitoWebAuthnAssertionResponse;
|
|
109
|
+
readonly clientExtensionResults: Record<string, never>;
|
|
110
|
+
}
|
|
111
|
+
//# sourceMappingURL=sim-cognito-web-authn-document.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-cognito-web-authn-document.d.ts","sourceRoot":"","sources":["../../../../../../src/service/cognito/user-pool/user/web-authn/sim-cognito-web-authn-document.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,MAAM,+BAA+B,GACvC,IAAI,GACJ,OAAO,GACP,MAAM,GACN,MAAM,GACN,+BAA+B,EAAE,GACjC;IAAE,CAAC,MAAM,EAAE,MAAM,GAAG,+BAA+B,CAAA;CAAE,CAAC;AAE1D;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED;;;GAGG;AACH,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAED;;;GAGG;AACH,MAAM,WAAW,sCAAsC;IACrD,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;CACxC;AAED;;;;;GAKG;AACH,MAAM,WAAW,iCAAiC;IAChD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,EAAE,8BAA8B,CAAC;IAC5C,QAAQ,CAAC,IAAI,EAAE,4BAA4B,CAAC;IAC5C,QAAQ,CAAC,gBAAgB,EAAE,SAAS;QAClC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;QAC5B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;KACtB,EAAE,CAAC;IACJ,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,kBAAkB,EAAE,SAAS,sCAAsC,EAAE,CAAC;IAC/E,QAAQ,CAAC,sBAAsB,EAAE;QAC/B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;QAC7B,QAAQ,CAAC,kBAAkB,EAAE,OAAO,CAAC;QACrC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;KACnC,CAAC;IACF,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAED;;;GAGG;AACH,MAAM,WAAW,gCAAgC;IAC/C,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,gBAAgB,EAAE,SAAS,sCAAsC,EAAE,CAAC;IAC7E,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;CACnC;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,qCAAqC;IACpD,CAAC,MAAM,EAAE,MAAM,GAAG,+BAA+B,CAAC;IAClD,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,mCAAmC;IAClD,CAAC,MAAM,EAAE,MAAM,GAAG,+BAA+B,CAAC;IAClD,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED;;;GAGG;AACH,MAAM,WAAW,oCAAoC;IACnD,CAAC,MAAM,EAAE,MAAM,GAAG,+BAA+B,CAAC;IAClD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,uBAAuB,EAAE,MAAM,CAAC;IACzC,QAAQ,CAAC,QAAQ,EACb,qCAAqC,GACrC,mCAAmC,CAAC;IACxC,QAAQ,CAAC,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;CACxD"}
|