@credo-ts/openid4vc 0.6.1-pr-2091-20241119140918 → 0.6.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/build/OpenId4VcApi.d.mts +24 -0
- package/build/OpenId4VcApi.d.mts.map +1 -0
- package/build/OpenId4VcApi.mjs +35 -0
- package/build/OpenId4VcApi.mjs.map +1 -0
- package/build/OpenId4VcModule.d.mts +30 -0
- package/build/OpenId4VcModule.d.mts.map +1 -0
- package/build/OpenId4VcModule.mjs +42 -0
- package/build/OpenId4VcModule.mjs.map +1 -0
- package/build/OpenId4VcModuleConfig.d.mts +44 -0
- package/build/OpenId4VcModuleConfig.d.mts.map +1 -0
- package/build/OpenId4VcModuleConfig.mjs +24 -0
- package/build/OpenId4VcModuleConfig.mjs.map +1 -0
- package/build/_virtual/_@oxc-project_runtime@0.99.0/helpers/decorate.mjs +10 -0
- package/build/_virtual/_@oxc-project_runtime@0.99.0/helpers/decorateMetadata.mjs +7 -0
- package/build/_virtual/_@oxc-project_runtime@0.99.0/helpers/decorateParam.mjs +9 -0
- package/build/index.d.mts +42 -0
- package/build/index.mjs +37 -0
- package/build/openid4vc-holder/OpenId4VcHolderApi.d.mts +238 -0
- package/build/openid4vc-holder/OpenId4VcHolderApi.d.mts.map +1 -0
- package/build/openid4vc-holder/OpenId4VcHolderApi.mjs +174 -0
- package/build/openid4vc-holder/OpenId4VcHolderApi.mjs.map +1 -0
- package/build/openid4vc-holder/OpenId4VcHolderModule.d.mts +17 -0
- package/build/openid4vc-holder/OpenId4VcHolderModule.d.mts.map +1 -0
- package/build/openid4vc-holder/OpenId4VcHolderModule.mjs +23 -0
- package/build/openid4vc-holder/OpenId4VcHolderModule.mjs.map +1 -0
- package/build/openid4vc-holder/OpenId4VciHolderService.d.mts +69 -0
- package/build/openid4vc-holder/OpenId4VciHolderService.d.mts.map +1 -0
- package/build/openid4vc-holder/OpenId4VciHolderService.mjs +751 -0
- package/build/openid4vc-holder/OpenId4VciHolderService.mjs.map +1 -0
- package/build/openid4vc-holder/OpenId4VciHolderServiceOptions.d.mts +398 -0
- package/build/openid4vc-holder/OpenId4VciHolderServiceOptions.d.mts.map +1 -0
- package/build/openid4vc-holder/OpenId4VciHolderServiceOptions.mjs +16 -0
- package/build/openid4vc-holder/OpenId4VciHolderServiceOptions.mjs.map +1 -0
- package/build/openid4vc-holder/OpenId4vpHolderService.d.mts +130 -0
- package/build/openid4vc-holder/OpenId4vpHolderService.d.mts.map +1 -0
- package/build/openid4vc-holder/OpenId4vpHolderService.mjs +278 -0
- package/build/openid4vc-holder/OpenId4vpHolderService.mjs.map +1 -0
- package/build/openid4vc-holder/OpenId4vpHolderServiceOptions.d.mts +112 -0
- package/build/openid4vc-holder/OpenId4vpHolderServiceOptions.d.mts.map +1 -0
- package/build/openid4vc-holder/index.d.mts +6 -0
- package/build/openid4vc-holder/index.mjs +5 -0
- package/build/openid4vc-issuer/OpenId4VcIssuanceSessionState.d.mts +16 -0
- package/build/openid4vc-issuer/OpenId4VcIssuanceSessionState.d.mts.map +1 -0
- package/build/openid4vc-issuer/OpenId4VcIssuanceSessionState.mjs +18 -0
- package/build/openid4vc-issuer/OpenId4VcIssuanceSessionState.mjs.map +1 -0
- package/build/openid4vc-issuer/OpenId4VcIssuerApi.d.mts +137 -0
- package/build/openid4vc-issuer/OpenId4VcIssuerApi.d.mts.map +1 -0
- package/build/openid4vc-issuer/OpenId4VcIssuerApi.mjs +108 -0
- package/build/openid4vc-issuer/OpenId4VcIssuerApi.mjs.map +1 -0
- package/build/openid4vc-issuer/OpenId4VcIssuerEvents.d.mts +19 -0
- package/build/openid4vc-issuer/OpenId4VcIssuerEvents.d.mts.map +1 -0
- package/build/openid4vc-issuer/OpenId4VcIssuerEvents.mjs +9 -0
- package/build/openid4vc-issuer/OpenId4VcIssuerEvents.mjs.map +1 -0
- package/build/openid4vc-issuer/OpenId4VcIssuerModule.d.mts +27 -0
- package/build/openid4vc-issuer/OpenId4VcIssuerModule.d.mts.map +1 -0
- package/build/openid4vc-issuer/OpenId4VcIssuerModule.mjs +150 -0
- package/build/openid4vc-issuer/OpenId4VcIssuerModule.mjs.map +1 -0
- package/build/openid4vc-issuer/OpenId4VcIssuerModuleConfig.d.mts +279 -0
- package/build/openid4vc-issuer/OpenId4VcIssuerModuleConfig.d.mts.map +1 -0
- package/build/openid4vc-issuer/OpenId4VcIssuerModuleConfig.mjs +179 -0
- package/build/openid4vc-issuer/OpenId4VcIssuerModuleConfig.mjs.map +1 -0
- package/build/openid4vc-issuer/OpenId4VcIssuerService.d.mts +182 -0
- package/build/openid4vc-issuer/OpenId4VcIssuerService.d.mts.map +1 -0
- package/build/openid4vc-issuer/OpenId4VcIssuerService.mjs +881 -0
- package/build/openid4vc-issuer/OpenId4VcIssuerService.mjs.map +1 -0
- package/build/openid4vc-issuer/OpenId4VcIssuerServiceOptions.d.mts +340 -0
- package/build/openid4vc-issuer/OpenId4VcIssuerServiceOptions.d.mts.map +1 -0
- package/build/openid4vc-issuer/OpenId4VcIssuerServiceOptions.mjs +1 -0
- package/build/openid4vc-issuer/index.d.mts +11 -0
- package/build/openid4vc-issuer/index.mjs +11 -0
- package/build/openid4vc-issuer/repository/OpenId4VcIssuanceSessionRecord.d.mts +300 -0
- package/build/openid4vc-issuer/repository/OpenId4VcIssuanceSessionRecord.d.mts.map +1 -0
- package/build/openid4vc-issuer/repository/OpenId4VcIssuanceSessionRecord.mjs +102 -0
- package/build/openid4vc-issuer/repository/OpenId4VcIssuanceSessionRecord.mjs.map +1 -0
- package/build/openid4vc-issuer/repository/OpenId4VcIssuanceSessionRepository.d.mts +10 -0
- package/build/openid4vc-issuer/repository/OpenId4VcIssuanceSessionRepository.d.mts.map +1 -0
- package/build/openid4vc-issuer/repository/OpenId4VcIssuanceSessionRepository.mjs +22 -0
- package/build/openid4vc-issuer/repository/OpenId4VcIssuanceSessionRepository.mjs.map +1 -0
- package/build/openid4vc-issuer/repository/OpenId4VcIssuerRecord.d.mts +84 -0
- package/build/openid4vc-issuer/repository/OpenId4VcIssuerRecord.d.mts.map +1 -0
- package/build/openid4vc-issuer/repository/OpenId4VcIssuerRecord.mjs +89 -0
- package/build/openid4vc-issuer/repository/OpenId4VcIssuerRecord.mjs.map +1 -0
- package/build/openid4vc-issuer/repository/OpenId4VcIssuerRepository.d.mts +12 -0
- package/build/openid4vc-issuer/repository/OpenId4VcIssuerRepository.d.mts.map +1 -0
- package/build/openid4vc-issuer/repository/OpenId4VcIssuerRepository.mjs +28 -0
- package/build/openid4vc-issuer/repository/OpenId4VcIssuerRepository.mjs.map +1 -0
- package/build/openid4vc-issuer/repository/index.d.mts +4 -0
- package/build/openid4vc-issuer/repository/index.mjs +4 -0
- package/build/openid4vc-issuer/router/accessTokenEndpoint.mjs +199 -0
- package/build/openid4vc-issuer/router/accessTokenEndpoint.mjs.map +1 -0
- package/build/openid4vc-issuer/router/authorizationChallengeEndpoint.mjs +241 -0
- package/build/openid4vc-issuer/router/authorizationChallengeEndpoint.mjs.map +1 -0
- package/build/openid4vc-issuer/router/authorizationEndpoint.mjs +51 -0
- package/build/openid4vc-issuer/router/authorizationEndpoint.mjs.map +1 -0
- package/build/openid4vc-issuer/router/authorizationServerMetadataEndpoint.mjs +25 -0
- package/build/openid4vc-issuer/router/authorizationServerMetadataEndpoint.mjs.map +1 -0
- package/build/openid4vc-issuer/router/credentialEndpoint.mjs +142 -0
- package/build/openid4vc-issuer/router/credentialEndpoint.mjs.map +1 -0
- package/build/openid4vc-issuer/router/credentialOfferEndpoint.mjs +38 -0
- package/build/openid4vc-issuer/router/credentialOfferEndpoint.mjs.map +1 -0
- package/build/openid4vc-issuer/router/deferredCredentialEndpoint.mjs +84 -0
- package/build/openid4vc-issuer/router/deferredCredentialEndpoint.mjs.map +1 -0
- package/build/openid4vc-issuer/router/index.mjs +12 -0
- package/build/openid4vc-issuer/router/issuerMetadataEndpoint.mjs +43 -0
- package/build/openid4vc-issuer/router/issuerMetadataEndpoint.mjs.map +1 -0
- package/build/openid4vc-issuer/router/jwksEndpoint.mjs +18 -0
- package/build/openid4vc-issuer/router/jwksEndpoint.mjs.map +1 -0
- package/build/openid4vc-issuer/router/nonceEndpoint.mjs +29 -0
- package/build/openid4vc-issuer/router/nonceEndpoint.mjs.map +1 -0
- package/build/openid4vc-issuer/router/pushedAuthorizationRequestEndpoint.mjs +164 -0
- package/build/openid4vc-issuer/router/pushedAuthorizationRequestEndpoint.mjs.map +1 -0
- package/build/openid4vc-issuer/router/redirectEndpoint.mjs +124 -0
- package/build/openid4vc-issuer/router/redirectEndpoint.mjs.map +1 -0
- package/build/openid4vc-issuer/util/txCode.mjs +18 -0
- package/build/openid4vc-issuer/util/txCode.mjs.map +1 -0
- package/build/openid4vc-verifier/OpenId4VcVerificationSessionState.d.mts +10 -0
- package/build/openid4vc-verifier/OpenId4VcVerificationSessionState.d.mts.map +1 -0
- package/build/openid4vc-verifier/OpenId4VcVerificationSessionState.mjs +12 -0
- package/build/openid4vc-verifier/OpenId4VcVerificationSessionState.mjs.map +1 -0
- package/build/openid4vc-verifier/OpenId4VcVerifierApi.d.mts +60 -0
- package/build/openid4vc-verifier/OpenId4VcVerifierApi.d.mts.map +1 -0
- package/build/openid4vc-verifier/OpenId4VcVerifierApi.mjs +83 -0
- package/build/openid4vc-verifier/OpenId4VcVerifierApi.mjs.map +1 -0
- package/build/openid4vc-verifier/OpenId4VcVerifierEvents.d.mts +19 -0
- package/build/openid4vc-verifier/OpenId4VcVerifierEvents.d.mts.map +1 -0
- package/build/openid4vc-verifier/OpenId4VcVerifierEvents.mjs +9 -0
- package/build/openid4vc-verifier/OpenId4VcVerifierEvents.mjs.map +1 -0
- package/build/openid4vc-verifier/OpenId4VcVerifierModule.d.mts +25 -0
- package/build/openid4vc-verifier/OpenId4VcVerifierModule.d.mts.map +1 -0
- package/build/openid4vc-verifier/OpenId4VcVerifierModule.mjs +91 -0
- package/build/openid4vc-verifier/OpenId4VcVerifierModule.mjs.map +1 -0
- package/build/openid4vc-verifier/OpenId4VcVerifierModuleConfig.d.mts +55 -0
- package/build/openid4vc-verifier/OpenId4VcVerifierModuleConfig.d.mts.map +1 -0
- package/build/openid4vc-verifier/OpenId4VcVerifierModuleConfig.mjs +36 -0
- package/build/openid4vc-verifier/OpenId4VcVerifierModuleConfig.mjs.map +1 -0
- package/build/openid4vc-verifier/OpenId4VpVerifierService.d.mts +60 -0
- package/build/openid4vc-verifier/OpenId4VpVerifierService.d.mts.map +1 -0
- package/build/openid4vc-verifier/OpenId4VpVerifierService.mjs +714 -0
- package/build/openid4vc-verifier/OpenId4VpVerifierService.mjs.map +1 -0
- package/build/openid4vc-verifier/OpenId4VpVerifierServiceOptions.d.mts +194 -0
- package/build/openid4vc-verifier/OpenId4VpVerifierServiceOptions.d.mts.map +1 -0
- package/build/openid4vc-verifier/index.d.mts +12 -0
- package/build/openid4vc-verifier/index.mjs +11 -0
- package/build/openid4vc-verifier/repository/OpenId4VcVerificationSessionRecord.d.mts +129 -0
- package/build/openid4vc-verifier/repository/OpenId4VcVerificationSessionRecord.d.mts.map +1 -0
- package/build/openid4vc-verifier/repository/OpenId4VcVerificationSessionRecord.mjs +64 -0
- package/build/openid4vc-verifier/repository/OpenId4VcVerificationSessionRecord.mjs.map +1 -0
- package/build/openid4vc-verifier/repository/OpenId4VcVerificationSessionRepository.d.mts +10 -0
- package/build/openid4vc-verifier/repository/OpenId4VcVerificationSessionRepository.d.mts.map +1 -0
- package/build/openid4vc-verifier/repository/OpenId4VcVerificationSessionRepository.mjs +22 -0
- package/build/openid4vc-verifier/repository/OpenId4VcVerificationSessionRepository.mjs.map +1 -0
- package/build/openid4vc-verifier/repository/OpenId4VcVerifierRecord.d.mts +33 -0
- package/build/openid4vc-verifier/repository/OpenId4VcVerifierRecord.d.mts.map +1 -0
- package/build/openid4vc-verifier/repository/OpenId4VcVerifierRecord.mjs +32 -0
- package/build/openid4vc-verifier/repository/OpenId4VcVerifierRecord.mjs.map +1 -0
- package/build/openid4vc-verifier/repository/OpenId4VcVerifierRepository.d.mts +12 -0
- package/build/openid4vc-verifier/repository/OpenId4VcVerifierRepository.d.mts.map +1 -0
- package/build/openid4vc-verifier/repository/OpenId4VcVerifierRepository.mjs +28 -0
- package/build/openid4vc-verifier/repository/OpenId4VcVerifierRepository.mjs.map +1 -0
- package/build/openid4vc-verifier/repository/index.d.mts +4 -0
- package/build/openid4vc-verifier/repository/index.mjs +4 -0
- package/build/openid4vc-verifier/router/authorizationEndpoint.mjs +117 -0
- package/build/openid4vc-verifier/router/authorizationEndpoint.mjs.map +1 -0
- package/build/openid4vc-verifier/router/authorizationRequestEndpoint.mjs +39 -0
- package/build/openid4vc-verifier/router/authorizationRequestEndpoint.mjs.map +1 -0
- package/build/openid4vc-verifier/router/index.mjs +1 -0
- package/build/shared/callbacks.d.mts +47 -0
- package/build/shared/callbacks.d.mts.map +1 -0
- package/build/shared/callbacks.mjs +279 -0
- package/build/shared/callbacks.mjs.map +1 -0
- package/build/shared/index.d.mts +7 -0
- package/build/shared/index.mjs +4 -0
- package/build/shared/issuerMetadataUtils.d.mts +22 -0
- package/build/shared/issuerMetadataUtils.d.mts.map +1 -0
- package/build/shared/issuerMetadataUtils.mjs +30 -0
- package/build/shared/issuerMetadataUtils.mjs.map +1 -0
- package/build/shared/models/CredentialHolderBinding.d.mts +71 -0
- package/build/shared/models/CredentialHolderBinding.d.mts.map +1 -0
- package/build/shared/models/CredentialHolderBinding.mjs +1 -0
- package/build/shared/models/OpenId4VcJwtIssuer.d.mts +46 -0
- package/build/shared/models/OpenId4VcJwtIssuer.d.mts.map +1 -0
- package/build/shared/models/OpenId4VcJwtIssuer.mjs +1 -0
- package/build/shared/models/OpenId4VciAuthorizationServerConfig.d.mts +71 -0
- package/build/shared/models/OpenId4VciAuthorizationServerConfig.d.mts.map +1 -0
- package/build/shared/models/OpenId4VciCredentialFormatProfile.d.mts +12 -0
- package/build/shared/models/OpenId4VciCredentialFormatProfile.d.mts.map +1 -0
- package/build/shared/models/OpenId4VciCredentialFormatProfile.mjs +14 -0
- package/build/shared/models/OpenId4VciCredentialFormatProfile.mjs.map +1 -0
- package/build/shared/models/index.d.mts +30 -0
- package/build/shared/models/index.d.mts.map +1 -0
- package/build/shared/models/index.mjs +6 -0
- package/build/shared/router/context.mjs +52 -0
- package/build/shared/router/context.mjs.map +1 -0
- package/build/shared/router/express.browser.d.mts +5 -0
- package/build/shared/router/express.browser.d.mts.map +1 -0
- package/build/shared/router/express.browser.mjs +8 -0
- package/build/shared/router/express.browser.mjs.map +1 -0
- package/build/shared/router/express.mjs +10 -0
- package/build/shared/router/express.mjs.map +1 -0
- package/build/shared/router/express.native.d.mts +5 -0
- package/build/shared/router/express.native.d.mts.map +1 -0
- package/build/shared/router/express.native.mjs +8 -0
- package/build/shared/router/express.native.mjs.map +1 -0
- package/build/shared/router/index.mjs +3 -0
- package/build/shared/router/tenants.mjs +36 -0
- package/build/shared/router/tenants.mjs.map +1 -0
- package/build/shared/transactionData.mjs +19 -0
- package/build/shared/transactionData.mjs.map +1 -0
- package/build/shared/utils.mjs +90 -0
- package/build/shared/utils.mjs.map +1 -0
- package/package.json +30 -23
- package/build/index.d.ts +0 -4
- package/build/index.js +0 -21
- package/build/index.js.map +0 -1
- package/build/openid4vc-holder/OpenId4VcHolderApi.d.ts +0 -124
- package/build/openid4vc-holder/OpenId4VcHolderApi.js +0 -155
- package/build/openid4vc-holder/OpenId4VcHolderApi.js.map +0 -1
- package/build/openid4vc-holder/OpenId4VcHolderModule.d.ts +0 -13
- package/build/openid4vc-holder/OpenId4VcHolderModule.js +0 -35
- package/build/openid4vc-holder/OpenId4VcHolderModule.js.map +0 -1
- package/build/openid4vc-holder/OpenId4VciHolderService.d.ts +0 -72
- package/build/openid4vc-holder/OpenId4VciHolderService.js +0 -569
- package/build/openid4vc-holder/OpenId4VciHolderService.js.map +0 -1
- package/build/openid4vc-holder/OpenId4VciHolderServiceOptions.d.ts +0 -238
- package/build/openid4vc-holder/OpenId4VciHolderServiceOptions.js +0 -14
- package/build/openid4vc-holder/OpenId4VciHolderServiceOptions.js.map +0 -1
- package/build/openid4vc-holder/OpenId4vcSiopHolderService.d.ts +0 -32
- package/build/openid4vc-holder/OpenId4vcSiopHolderService.js +0 -302
- package/build/openid4vc-holder/OpenId4vcSiopHolderService.js.map +0 -1
- package/build/openid4vc-holder/OpenId4vcSiopHolderServiceOptions.d.ts +0 -38
- package/build/openid4vc-holder/OpenId4vcSiopHolderServiceOptions.js +0 -3
- package/build/openid4vc-holder/OpenId4vcSiopHolderServiceOptions.js.map +0 -1
- package/build/openid4vc-holder/index.d.ts +0 -6
- package/build/openid4vc-holder/index.js +0 -23
- package/build/openid4vc-holder/index.js.map +0 -1
- package/build/openid4vc-issuer/OpenId4VcIssuanceSessionState.d.ts +0 -12
- package/build/openid4vc-issuer/OpenId4VcIssuanceSessionState.js +0 -19
- package/build/openid4vc-issuer/OpenId4VcIssuanceSessionState.js.map +0 -1
- package/build/openid4vc-issuer/OpenId4VcIssuerApi.d.ts +0 -101
- package/build/openid4vc-issuer/OpenId4VcIssuerApi.js +0 -110
- package/build/openid4vc-issuer/OpenId4VcIssuerApi.js.map +0 -1
- package/build/openid4vc-issuer/OpenId4VcIssuerEvents.d.ts +0 -13
- package/build/openid4vc-issuer/OpenId4VcIssuerEvents.js +0 -8
- package/build/openid4vc-issuer/OpenId4VcIssuerEvents.js.map +0 -1
- package/build/openid4vc-issuer/OpenId4VcIssuerModule.d.ts +0 -21
- package/build/openid4vc-issuer/OpenId4VcIssuerModule.js +0 -121
- package/build/openid4vc-issuer/OpenId4VcIssuerModule.js.map +0 -1
- package/build/openid4vc-issuer/OpenId4VcIssuerModuleConfig.d.ts +0 -190
- package/build/openid4vc-issuer/OpenId4VcIssuerModuleConfig.js +0 -141
- package/build/openid4vc-issuer/OpenId4VcIssuerModuleConfig.js.map +0 -1
- package/build/openid4vc-issuer/OpenId4VcIssuerService.d.ts +0 -116
- package/build/openid4vc-issuer/OpenId4VcIssuerService.js +0 -698
- package/build/openid4vc-issuer/OpenId4VcIssuerService.js.map +0 -1
- package/build/openid4vc-issuer/OpenId4VcIssuerServiceOptions.d.ts +0 -229
- package/build/openid4vc-issuer/OpenId4VcIssuerServiceOptions.js +0 -3
- package/build/openid4vc-issuer/OpenId4VcIssuerServiceOptions.js.map +0 -1
- package/build/openid4vc-issuer/index.d.ts +0 -8
- package/build/openid4vc-issuer/index.js +0 -27
- package/build/openid4vc-issuer/index.js.map +0 -1
- package/build/openid4vc-issuer/repository/OpenId4VcIssuanceSessionRecord.d.ts +0 -160
- package/build/openid4vc-issuer/repository/OpenId4VcIssuanceSessionRecord.js +0 -88
- package/build/openid4vc-issuer/repository/OpenId4VcIssuanceSessionRecord.js.map +0 -1
- package/build/openid4vc-issuer/repository/OpenId4VcIssuanceSessionRepository.d.ts +0 -5
- package/build/openid4vc-issuer/repository/OpenId4VcIssuanceSessionRepository.js +0 -29
- package/build/openid4vc-issuer/repository/OpenId4VcIssuanceSessionRepository.js.map +0 -1
- package/build/openid4vc-issuer/repository/OpenId4VcIssuerRecord.d.ts +0 -56
- package/build/openid4vc-issuer/repository/OpenId4VcIssuerRecord.js +0 -83
- package/build/openid4vc-issuer/repository/OpenId4VcIssuerRecord.js.map +0 -1
- package/build/openid4vc-issuer/repository/OpenId4VcIssuerRepository.d.ts +0 -8
- package/build/openid4vc-issuer/repository/OpenId4VcIssuerRepository.js +0 -35
- package/build/openid4vc-issuer/repository/OpenId4VcIssuerRepository.js.map +0 -1
- package/build/openid4vc-issuer/repository/index.d.ts +0 -4
- package/build/openid4vc-issuer/repository/index.js +0 -21
- package/build/openid4vc-issuer/repository/index.js.map +0 -1
- package/build/openid4vc-issuer/router/accessTokenEndpoint.d.ts +0 -5
- package/build/openid4vc-issuer/router/accessTokenEndpoint.js +0 -164
- package/build/openid4vc-issuer/router/accessTokenEndpoint.js.map +0 -1
- package/build/openid4vc-issuer/router/authorizationChallengeEndpoint.d.ts +0 -3
- package/build/openid4vc-issuer/router/authorizationChallengeEndpoint.js +0 -213
- package/build/openid4vc-issuer/router/authorizationChallengeEndpoint.js.map +0 -1
- package/build/openid4vc-issuer/router/authorizationServerMetadataEndpoint.d.ts +0 -6
- package/build/openid4vc-issuer/router/authorizationServerMetadataEndpoint.js +0 -25
- package/build/openid4vc-issuer/router/authorizationServerMetadataEndpoint.js.map +0 -1
- package/build/openid4vc-issuer/router/credentialEndpoint.d.ts +0 -3
- package/build/openid4vc-issuer/router/credentialEndpoint.js +0 -176
- package/build/openid4vc-issuer/router/credentialEndpoint.js.map +0 -1
- package/build/openid4vc-issuer/router/credentialOfferEndpoint.d.ts +0 -3
- package/build/openid4vc-issuer/router/credentialOfferEndpoint.js +0 -45
- package/build/openid4vc-issuer/router/credentialOfferEndpoint.js.map +0 -1
- package/build/openid4vc-issuer/router/index.d.ts +0 -9
- package/build/openid4vc-issuer/router/index.js +0 -20
- package/build/openid4vc-issuer/router/index.js.map +0 -1
- package/build/openid4vc-issuer/router/issuerMetadataEndpoint.d.ts +0 -2
- package/build/openid4vc-issuer/router/issuerMetadataEndpoint.js +0 -26
- package/build/openid4vc-issuer/router/issuerMetadataEndpoint.js.map +0 -1
- package/build/openid4vc-issuer/router/jwksEndpoint.d.ts +0 -3
- package/build/openid4vc-issuer/router/jwksEndpoint.js +0 -20
- package/build/openid4vc-issuer/router/jwksEndpoint.js.map +0 -1
- package/build/openid4vc-issuer/router/nonceEndpoint.d.ts +0 -3
- package/build/openid4vc-issuer/router/nonceEndpoint.js +0 -26
- package/build/openid4vc-issuer/router/nonceEndpoint.js.map +0 -1
- package/build/openid4vc-issuer/router/requestContext.d.ts +0 -5
- package/build/openid4vc-issuer/router/requestContext.js +0 -3
- package/build/openid4vc-issuer/router/requestContext.js.map +0 -1
- package/build/openid4vc-issuer/util/txCode.d.ts +0 -3
- package/build/openid4vc-issuer/util/txCode.js +0 -18
- package/build/openid4vc-issuer/util/txCode.js.map +0 -1
- package/build/openid4vc-verifier/OpenId4VcSiopVerifierService.d.ts +0 -55
- package/build/openid4vc-verifier/OpenId4VcSiopVerifierService.js +0 -498
- package/build/openid4vc-verifier/OpenId4VcSiopVerifierService.js.map +0 -1
- package/build/openid4vc-verifier/OpenId4VcSiopVerifierServiceOptions.d.ts +0 -77
- package/build/openid4vc-verifier/OpenId4VcSiopVerifierServiceOptions.js +0 -3
- package/build/openid4vc-verifier/OpenId4VcSiopVerifierServiceOptions.js.map +0 -1
- package/build/openid4vc-verifier/OpenId4VcVerificationSessionState.d.ts +0 -6
- package/build/openid4vc-verifier/OpenId4VcVerificationSessionState.js +0 -11
- package/build/openid4vc-verifier/OpenId4VcVerificationSessionState.js.map +0 -1
- package/build/openid4vc-verifier/OpenId4VcVerifierApi.d.ts +0 -61
- package/build/openid4vc-verifier/OpenId4VcVerifierApi.js +0 -108
- package/build/openid4vc-verifier/OpenId4VcVerifierApi.js.map +0 -1
- package/build/openid4vc-verifier/OpenId4VcVerifierEvents.d.ts +0 -13
- package/build/openid4vc-verifier/OpenId4VcVerifierEvents.js +0 -8
- package/build/openid4vc-verifier/OpenId4VcVerifierEvents.js.map +0 -1
- package/build/openid4vc-verifier/OpenId4VcVerifierModule.d.ts +0 -21
- package/build/openid4vc-verifier/OpenId4VcVerifierModule.js +0 -109
- package/build/openid4vc-verifier/OpenId4VcVerifierModule.js.map +0 -1
- package/build/openid4vc-verifier/OpenId4VcVerifierModuleConfig.d.ts +0 -31
- package/build/openid4vc-verifier/OpenId4VcVerifierModuleConfig.js +0 -28
- package/build/openid4vc-verifier/OpenId4VcVerifierModuleConfig.js.map +0 -1
- package/build/openid4vc-verifier/index.d.ts +0 -8
- package/build/openid4vc-verifier/index.js +0 -25
- package/build/openid4vc-verifier/index.js.map +0 -1
- package/build/openid4vc-verifier/repository/OpenId4VcRelyingPartyEventEmitter.d.ts +0 -49
- package/build/openid4vc-verifier/repository/OpenId4VcRelyingPartyEventEmitter.js +0 -234
- package/build/openid4vc-verifier/repository/OpenId4VcRelyingPartyEventEmitter.js.map +0 -1
- package/build/openid4vc-verifier/repository/OpenId4VcRelyingPartySessionManager.d.ts +0 -19
- package/build/openid4vc-verifier/repository/OpenId4VcRelyingPartySessionManager.js +0 -146
- package/build/openid4vc-verifier/repository/OpenId4VcRelyingPartySessionManager.js.map +0 -1
- package/build/openid4vc-verifier/repository/OpenId4VcVerificationSessionRecord.d.ts +0 -71
- package/build/openid4vc-verifier/repository/OpenId4VcVerificationSessionRecord.js +0 -46
- package/build/openid4vc-verifier/repository/OpenId4VcVerificationSessionRecord.js.map +0 -1
- package/build/openid4vc-verifier/repository/OpenId4VcVerificationSessionRepository.d.ts +0 -5
- package/build/openid4vc-verifier/repository/OpenId4VcVerificationSessionRepository.js +0 -29
- package/build/openid4vc-verifier/repository/OpenId4VcVerificationSessionRepository.js.map +0 -1
- package/build/openid4vc-verifier/repository/OpenId4VcVerifierRecord.d.ts +0 -29
- package/build/openid4vc-verifier/repository/OpenId4VcVerifierRecord.js +0 -29
- package/build/openid4vc-verifier/repository/OpenId4VcVerifierRecord.js.map +0 -1
- package/build/openid4vc-verifier/repository/OpenId4VcVerifierRepository.d.ts +0 -8
- package/build/openid4vc-verifier/repository/OpenId4VcVerifierRepository.js +0 -35
- package/build/openid4vc-verifier/repository/OpenId4VcVerifierRepository.js.map +0 -1
- package/build/openid4vc-verifier/repository/index.d.ts +0 -4
- package/build/openid4vc-verifier/repository/index.js +0 -21
- package/build/openid4vc-verifier/repository/index.js.map +0 -1
- package/build/openid4vc-verifier/router/authorizationEndpoint.d.ts +0 -11
- package/build/openid4vc-verifier/router/authorizationEndpoint.js +0 -102
- package/build/openid4vc-verifier/router/authorizationEndpoint.js.map +0 -1
- package/build/openid4vc-verifier/router/authorizationRequestEndpoint.d.ts +0 -11
- package/build/openid4vc-verifier/router/authorizationRequestEndpoint.js +0 -63
- package/build/openid4vc-verifier/router/authorizationRequestEndpoint.js.map +0 -1
- package/build/openid4vc-verifier/router/index.d.ts +0 -2
- package/build/openid4vc-verifier/router/index.js +0 -6
- package/build/openid4vc-verifier/router/index.js.map +0 -1
- package/build/openid4vc-verifier/router/requestContext.d.ts +0 -5
- package/build/openid4vc-verifier/router/requestContext.js +0 -3
- package/build/openid4vc-verifier/router/requestContext.js.map +0 -1
- package/build/shared/callbacks.d.ts +0 -18
- package/build/shared/callbacks.js +0 -81
- package/build/shared/callbacks.js.map +0 -1
- package/build/shared/index.d.ts +0 -2
- package/build/shared/index.js +0 -19
- package/build/shared/index.js.map +0 -1
- package/build/shared/issuerMetadataUtils.d.ts +0 -158
- package/build/shared/issuerMetadataUtils.js +0 -38
- package/build/shared/issuerMetadataUtils.js.map +0 -1
- package/build/shared/models/CredentialHolderBinding.d.ts +0 -13
- package/build/shared/models/CredentialHolderBinding.js +0 -3
- package/build/shared/models/CredentialHolderBinding.js.map +0 -1
- package/build/shared/models/OpenId4VcJwtIssuer.d.ts +0 -28
- package/build/shared/models/OpenId4VcJwtIssuer.js +0 -3
- package/build/shared/models/OpenId4VcJwtIssuer.js.map +0 -1
- package/build/shared/models/OpenId4VciAuthorizationServerConfig.d.ts +0 -10
- package/build/shared/models/OpenId4VciAuthorizationServerConfig.js +0 -3
- package/build/shared/models/OpenId4VciAuthorizationServerConfig.js.map +0 -1
- package/build/shared/models/OpenId4VciCredentialFormatProfile.d.ts +0 -7
- package/build/shared/models/OpenId4VciCredentialFormatProfile.js +0 -12
- package/build/shared/models/OpenId4VciCredentialFormatProfile.js.map +0 -1
- package/build/shared/models/index.d.ts +0 -24
- package/build/shared/models/index.js +0 -25
- package/build/shared/models/index.js.map +0 -1
- package/build/shared/router/context.d.ts +0 -17
- package/build/shared/router/context.js +0 -76
- package/build/shared/router/context.js.map +0 -1
- package/build/shared/router/express.d.ts +0 -2
- package/build/shared/router/express.js +0 -15
- package/build/shared/router/express.js.map +0 -1
- package/build/shared/router/express.native.d.ts +0 -1
- package/build/shared/router/express.native.js +0 -7
- package/build/shared/router/express.native.js.map +0 -1
- package/build/shared/router/index.d.ts +0 -3
- package/build/shared/router/index.js +0 -20
- package/build/shared/router/index.js.map +0 -1
- package/build/shared/router/tenants.d.ts +0 -13
- package/build/shared/router/tenants.js +0 -49
- package/build/shared/router/tenants.js.map +0 -1
- package/build/shared/transform.d.ts +0 -5
- package/build/shared/transform.js +0 -73
- package/build/shared/transform.js.map +0 -1
- package/build/shared/utils.d.ts +0 -22
- package/build/shared/utils.js +0 -154
- package/build/shared/utils.js.map +0 -1
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { __decorateMetadata } from "../../_virtual/_@oxc-project_runtime@0.99.0/helpers/decorateMetadata.mjs";
|
|
2
|
+
import { __decorateParam } from "../../_virtual/_@oxc-project_runtime@0.99.0/helpers/decorateParam.mjs";
|
|
3
|
+
import { __decorate } from "../../_virtual/_@oxc-project_runtime@0.99.0/helpers/decorate.mjs";
|
|
4
|
+
import { OpenId4VcVerificationSessionRecord } from "./OpenId4VcVerificationSessionRecord.mjs";
|
|
5
|
+
import { EventEmitter, InjectionSymbols, Repository, inject, injectable } from "@credo-ts/core";
|
|
6
|
+
|
|
7
|
+
//#region src/openid4vc-verifier/repository/OpenId4VcVerificationSessionRepository.ts
|
|
8
|
+
var _ref;
|
|
9
|
+
let OpenId4VcVerificationSessionRepository = class OpenId4VcVerificationSessionRepository$1 extends Repository {
|
|
10
|
+
constructor(storageService, eventEmitter) {
|
|
11
|
+
super(OpenId4VcVerificationSessionRecord, storageService, eventEmitter);
|
|
12
|
+
}
|
|
13
|
+
};
|
|
14
|
+
OpenId4VcVerificationSessionRepository = __decorate([
|
|
15
|
+
injectable(),
|
|
16
|
+
__decorateParam(0, inject(InjectionSymbols.StorageService)),
|
|
17
|
+
__decorateMetadata("design:paramtypes", [Object, typeof (_ref = typeof EventEmitter !== "undefined" && EventEmitter) === "function" ? _ref : Object])
|
|
18
|
+
], OpenId4VcVerificationSessionRepository);
|
|
19
|
+
|
|
20
|
+
//#endregion
|
|
21
|
+
export { OpenId4VcVerificationSessionRepository };
|
|
22
|
+
//# sourceMappingURL=OpenId4VcVerificationSessionRepository.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OpenId4VcVerificationSessionRepository.mjs","names":["OpenId4VcVerificationSessionRepository","storageService: StorageService<OpenId4VcVerificationSessionRecord>"],"sources":["../../../src/openid4vc-verifier/repository/OpenId4VcVerificationSessionRepository.ts"],"sourcesContent":["import { EventEmitter, InjectionSymbols, inject, injectable, Repository, type StorageService } from '@credo-ts/core'\n\nimport { OpenId4VcVerificationSessionRecord } from './OpenId4VcVerificationSessionRecord'\n\n@injectable()\nexport class OpenId4VcVerificationSessionRepository extends Repository<OpenId4VcVerificationSessionRecord> {\n public constructor(\n @inject(InjectionSymbols.StorageService) storageService: StorageService<OpenId4VcVerificationSessionRecord>,\n eventEmitter: EventEmitter\n ) {\n super(OpenId4VcVerificationSessionRecord, storageService, eventEmitter)\n }\n}\n"],"mappings":";;;;;;;;AAKO,mDAAMA,iDAA+C,WAA+C;CACzG,AAAO,YACL,AAAyCC,gBACzC,cACA;AACA,QAAM,oCAAoC,gBAAgB,aAAa;;;;CAN1E,YAAY;oBAGR,OAAO,iBAAiB,eAAe"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { OpenId4VpVerifierClientMetadata } from "../OpenId4VpVerifierServiceOptions.mjs";
|
|
2
|
+
import { BaseRecord, RecordTags, TagsBase } from "@credo-ts/core";
|
|
3
|
+
|
|
4
|
+
//#region src/openid4vc-verifier/repository/OpenId4VcVerifierRecord.d.ts
|
|
5
|
+
type OpenId4VcVerifierRecordTags = RecordTags<OpenId4VcVerifierRecord>;
|
|
6
|
+
type DefaultOpenId4VcVerifierRecordTags = {
|
|
7
|
+
verifierId: string;
|
|
8
|
+
};
|
|
9
|
+
interface OpenId4VcVerifierRecordProps {
|
|
10
|
+
id?: string;
|
|
11
|
+
createdAt?: Date;
|
|
12
|
+
tags?: TagsBase;
|
|
13
|
+
verifierId: string;
|
|
14
|
+
clientMetadata?: OpenId4VpVerifierClientMetadata;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* For OID4VC you need to expos metadata files. Each issuer needs to host this metadata. This is not the case for DIDComm where we can just have one /didcomm endpoint.
|
|
18
|
+
* So we create a record per openid issuer/verifier that you want, and each tenant can create multiple issuers/verifiers which have different endpoints
|
|
19
|
+
* and metadata files
|
|
20
|
+
* */
|
|
21
|
+
declare class OpenId4VcVerifierRecord extends BaseRecord<DefaultOpenId4VcVerifierRecordTags> {
|
|
22
|
+
static readonly type = "OpenId4VcVerifierRecord";
|
|
23
|
+
readonly type = "OpenId4VcVerifierRecord";
|
|
24
|
+
verifierId: string;
|
|
25
|
+
clientMetadata?: OpenId4VpVerifierClientMetadata;
|
|
26
|
+
constructor(props: OpenId4VcVerifierRecordProps);
|
|
27
|
+
getTags(): {
|
|
28
|
+
verifierId: string;
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
//#endregion
|
|
32
|
+
export { DefaultOpenId4VcVerifierRecordTags, OpenId4VcVerifierRecord, OpenId4VcVerifierRecordProps, OpenId4VcVerifierRecordTags };
|
|
33
|
+
//# sourceMappingURL=OpenId4VcVerifierRecord.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OpenId4VcVerifierRecord.d.mts","names":[],"sources":["../../../src/openid4vc-verifier/repository/OpenId4VcVerifierRecord.ts"],"sourcesContent":[],"mappings":";;;;KAIY,2BAAA,GAA8B,WAAW;AAAzC,KAEA,kCAAA,GAFyC;EAEzC,UAAA,EAAA,MAAA;AAIZ,CAAA;AAEc,UAFG,4BAAA,CAEH;EACL,EAAA,CAAA,EAAA,MAAA;EAIU,SAAA,CAAA,EALL,IAKK;EAA+B,IAAA,CAAA,EAJzC,QAIyC;EAQrC,UAAA,EAAA,MAAA;EAA2C,cAAA,CAAA,EARrC,+BAQqC;;;;;;;cAA3C,uBAAA,SAAgC,WAAW;;;;mBAK9B;qBAEE"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { BaseRecord, utils } from "@credo-ts/core";
|
|
2
|
+
|
|
3
|
+
//#region src/openid4vc-verifier/repository/OpenId4VcVerifierRecord.ts
|
|
4
|
+
/**
|
|
5
|
+
* For OID4VC you need to expos metadata files. Each issuer needs to host this metadata. This is not the case for DIDComm where we can just have one /didcomm endpoint.
|
|
6
|
+
* So we create a record per openid issuer/verifier that you want, and each tenant can create multiple issuers/verifiers which have different endpoints
|
|
7
|
+
* and metadata files
|
|
8
|
+
* */
|
|
9
|
+
var OpenId4VcVerifierRecord = class OpenId4VcVerifierRecord extends BaseRecord {
|
|
10
|
+
constructor(props) {
|
|
11
|
+
super();
|
|
12
|
+
this.type = OpenId4VcVerifierRecord.type;
|
|
13
|
+
if (props) {
|
|
14
|
+
this.id = props.id ?? utils.uuid();
|
|
15
|
+
this.createdAt = props.createdAt ?? /* @__PURE__ */ new Date();
|
|
16
|
+
this._tags = props.tags ?? {};
|
|
17
|
+
this.verifierId = props.verifierId;
|
|
18
|
+
this.clientMetadata = props.clientMetadata;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
getTags() {
|
|
22
|
+
return {
|
|
23
|
+
...this._tags,
|
|
24
|
+
verifierId: this.verifierId
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
OpenId4VcVerifierRecord.type = "OpenId4VcVerifierRecord";
|
|
29
|
+
|
|
30
|
+
//#endregion
|
|
31
|
+
export { OpenId4VcVerifierRecord };
|
|
32
|
+
//# sourceMappingURL=OpenId4VcVerifierRecord.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OpenId4VcVerifierRecord.mjs","names":[],"sources":["../../../src/openid4vc-verifier/repository/OpenId4VcVerifierRecord.ts"],"sourcesContent":["import type { RecordTags, TagsBase } from '@credo-ts/core'\nimport { BaseRecord, utils } from '@credo-ts/core'\nimport type { OpenId4VpVerifierClientMetadata } from '../OpenId4VpVerifierServiceOptions'\n\nexport type OpenId4VcVerifierRecordTags = RecordTags<OpenId4VcVerifierRecord>\n\nexport type DefaultOpenId4VcVerifierRecordTags = {\n verifierId: string\n}\n\nexport interface OpenId4VcVerifierRecordProps {\n id?: string\n createdAt?: Date\n tags?: TagsBase\n\n verifierId: string\n\n clientMetadata?: OpenId4VpVerifierClientMetadata\n}\n\n/**\n * For OID4VC you need to expos metadata files. Each issuer needs to host this metadata. This is not the case for DIDComm where we can just have one /didcomm endpoint.\n * So we create a record per openid issuer/verifier that you want, and each tenant can create multiple issuers/verifiers which have different endpoints\n * and metadata files\n * */\nexport class OpenId4VcVerifierRecord extends BaseRecord<DefaultOpenId4VcVerifierRecordTags> {\n public static readonly type = 'OpenId4VcVerifierRecord'\n public readonly type = OpenId4VcVerifierRecord.type\n\n public verifierId!: string\n public clientMetadata?: OpenId4VpVerifierClientMetadata\n\n public constructor(props: OpenId4VcVerifierRecordProps) {\n super()\n\n if (props) {\n this.id = props.id ?? utils.uuid()\n this.createdAt = props.createdAt ?? new Date()\n this._tags = props.tags ?? {}\n\n this.verifierId = props.verifierId\n this.clientMetadata = props.clientMetadata\n }\n }\n\n public getTags() {\n return {\n ...this._tags,\n verifierId: this.verifierId,\n }\n }\n}\n"],"mappings":";;;;;;;;AAyBA,IAAa,0BAAb,MAAa,gCAAgC,WAA+C;CAO1F,AAAO,YAAY,OAAqC;AACtD,SAAO;OANO,OAAO,wBAAwB;AAQ7C,MAAI,OAAO;AACT,QAAK,KAAK,MAAM,MAAM,MAAM,MAAM;AAClC,QAAK,YAAY,MAAM,6BAAa,IAAI,MAAM;AAC9C,QAAK,QAAQ,MAAM,QAAQ,EAAE;AAE7B,QAAK,aAAa,MAAM;AACxB,QAAK,iBAAiB,MAAM;;;CAIhC,AAAO,UAAU;AACf,SAAO;GACL,GAAG,KAAK;GACR,YAAY,KAAK;GAClB;;;wBAvBoB,OAAO"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { OpenId4VcVerifierRecord } from "./OpenId4VcVerifierRecord.mjs";
|
|
2
|
+
import { AgentContext, EventEmitter, Repository, StorageService } from "@credo-ts/core";
|
|
3
|
+
|
|
4
|
+
//#region src/openid4vc-verifier/repository/OpenId4VcVerifierRepository.d.ts
|
|
5
|
+
declare class OpenId4VcVerifierRepository extends Repository<OpenId4VcVerifierRecord> {
|
|
6
|
+
constructor(storageService: StorageService<OpenId4VcVerifierRecord>, eventEmitter: EventEmitter);
|
|
7
|
+
findByVerifierId(agentContext: AgentContext, verifierId: string): Promise<OpenId4VcVerifierRecord | null>;
|
|
8
|
+
getByVerifierId(agentContext: AgentContext, verifierId: string): Promise<OpenId4VcVerifierRecord>;
|
|
9
|
+
}
|
|
10
|
+
//#endregion
|
|
11
|
+
export { OpenId4VcVerifierRepository };
|
|
12
|
+
//# sourceMappingURL=OpenId4VcVerifierRepository.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OpenId4VcVerifierRepository.d.mts","names":[],"sources":["../../../src/openid4vc-verifier/repository/OpenId4VcVerifierRepository.ts"],"sourcesContent":[],"mappings":";;;;cAOa,2BAAA,SAAoC,WAAW;EAA/C,WAAA,CAAA,cAAA,EAEgD,cAFpB,CAEmC,uBAFnC,CAAA,EAAA,YAAA,EAGvB,YAHuB;EAAmB,gBAAA,CAAA,YAAA,EAQpB,YARoB,EAAA,UAAA,EAAA,MAAA,CAAA,EAQY,OARZ,CAQY,uBARZ,GAAA,IAAA,CAAA;EAEgB,eAAA,CAAA,YAAA,EAUrC,YAVqC,EAAA,UAAA,EAAA,MAAA,CAAA,EAUL,OAVK,CAUL,uBAVK,CAAA"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { __decorateMetadata } from "../../_virtual/_@oxc-project_runtime@0.99.0/helpers/decorateMetadata.mjs";
|
|
2
|
+
import { __decorateParam } from "../../_virtual/_@oxc-project_runtime@0.99.0/helpers/decorateParam.mjs";
|
|
3
|
+
import { __decorate } from "../../_virtual/_@oxc-project_runtime@0.99.0/helpers/decorate.mjs";
|
|
4
|
+
import { OpenId4VcVerifierRecord } from "./OpenId4VcVerifierRecord.mjs";
|
|
5
|
+
import { EventEmitter, InjectionSymbols, Repository, inject, injectable } from "@credo-ts/core";
|
|
6
|
+
|
|
7
|
+
//#region src/openid4vc-verifier/repository/OpenId4VcVerifierRepository.ts
|
|
8
|
+
var _ref;
|
|
9
|
+
let OpenId4VcVerifierRepository = class OpenId4VcVerifierRepository$1 extends Repository {
|
|
10
|
+
constructor(storageService, eventEmitter) {
|
|
11
|
+
super(OpenId4VcVerifierRecord, storageService, eventEmitter);
|
|
12
|
+
}
|
|
13
|
+
findByVerifierId(agentContext, verifierId) {
|
|
14
|
+
return this.findSingleByQuery(agentContext, { verifierId });
|
|
15
|
+
}
|
|
16
|
+
getByVerifierId(agentContext, verifierId) {
|
|
17
|
+
return this.getSingleByQuery(agentContext, { verifierId });
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
OpenId4VcVerifierRepository = __decorate([
|
|
21
|
+
injectable(),
|
|
22
|
+
__decorateParam(0, inject(InjectionSymbols.StorageService)),
|
|
23
|
+
__decorateMetadata("design:paramtypes", [Object, typeof (_ref = typeof EventEmitter !== "undefined" && EventEmitter) === "function" ? _ref : Object])
|
|
24
|
+
], OpenId4VcVerifierRepository);
|
|
25
|
+
|
|
26
|
+
//#endregion
|
|
27
|
+
export { OpenId4VcVerifierRepository };
|
|
28
|
+
//# sourceMappingURL=OpenId4VcVerifierRepository.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OpenId4VcVerifierRepository.mjs","names":["OpenId4VcVerifierRepository","storageService: StorageService<OpenId4VcVerifierRecord>"],"sources":["../../../src/openid4vc-verifier/repository/OpenId4VcVerifierRepository.ts"],"sourcesContent":["import type { AgentContext } from '@credo-ts/core'\n\nimport { EventEmitter, InjectionSymbols, inject, injectable, Repository, type StorageService } from '@credo-ts/core'\n\nimport { OpenId4VcVerifierRecord } from './OpenId4VcVerifierRecord'\n\n@injectable()\nexport class OpenId4VcVerifierRepository extends Repository<OpenId4VcVerifierRecord> {\n public constructor(\n @inject(InjectionSymbols.StorageService) storageService: StorageService<OpenId4VcVerifierRecord>,\n eventEmitter: EventEmitter\n ) {\n super(OpenId4VcVerifierRecord, storageService, eventEmitter)\n }\n\n public findByVerifierId(agentContext: AgentContext, verifierId: string) {\n return this.findSingleByQuery(agentContext, { verifierId })\n }\n\n public getByVerifierId(agentContext: AgentContext, verifierId: string) {\n return this.getSingleByQuery(agentContext, { verifierId })\n }\n}\n"],"mappings":";;;;;;;;AAOO,wCAAMA,sCAAoC,WAAoC;CACnF,AAAO,YACL,AAAyCC,gBACzC,cACA;AACA,QAAM,yBAAyB,gBAAgB,aAAa;;CAG9D,AAAO,iBAAiB,cAA4B,YAAoB;AACtE,SAAO,KAAK,kBAAkB,cAAc,EAAE,YAAY,CAAC;;CAG7D,AAAO,gBAAgB,cAA4B,YAAoB;AACrE,SAAO,KAAK,iBAAiB,cAAc,EAAE,YAAY,CAAC;;;;CAd7D,YAAY;oBAGR,OAAO,iBAAiB,eAAe"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { DefaultOpenId4VcVerificationSessionRecordTags, OpenId4VcVerificationSessionRecord, OpenId4VcVerificationSessionRecordProps, OpenId4VcVerificationSessionRecordTags } from "./OpenId4VcVerificationSessionRecord.mjs";
|
|
2
|
+
import { OpenId4VcVerificationSessionRepository } from "./OpenId4VcVerificationSessionRepository.mjs";
|
|
3
|
+
import { DefaultOpenId4VcVerifierRecordTags, OpenId4VcVerifierRecord, OpenId4VcVerifierRecordProps, OpenId4VcVerifierRecordTags } from "./OpenId4VcVerifierRecord.mjs";
|
|
4
|
+
import { OpenId4VcVerifierRepository } from "./OpenId4VcVerifierRepository.mjs";
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { OpenId4VcVerificationSessionRecord } from "./OpenId4VcVerificationSessionRecord.mjs";
|
|
2
|
+
import { OpenId4VcVerificationSessionRepository } from "./OpenId4VcVerificationSessionRepository.mjs";
|
|
3
|
+
import { OpenId4VcVerifierRecord } from "./OpenId4VcVerifierRecord.mjs";
|
|
4
|
+
import { OpenId4VcVerifierRepository } from "./OpenId4VcVerifierRepository.mjs";
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
import { getRequestContext, sendErrorResponse, sendJsonResponse, sendOauth2ErrorResponse, sendUnknownServerErrorResponse } from "../../shared/router/context.mjs";
|
|
2
|
+
import "../../shared/router/index.mjs";
|
|
3
|
+
import { OpenId4VcVerificationSessionRepository } from "../repository/OpenId4VcVerificationSessionRepository.mjs";
|
|
4
|
+
import "../repository/index.mjs";
|
|
5
|
+
import { OpenId4VpVerifierService } from "../OpenId4VpVerifierService.mjs";
|
|
6
|
+
import { AgentContext, TypedArrayEncoder } from "@credo-ts/core";
|
|
7
|
+
import { Oauth2ErrorCodes, Oauth2ServerErrorResponseError, decodeJwtHeader } from "@openid4vc/oauth2";
|
|
8
|
+
import { zOpenid4vpAuthorizationResponse } from "@openid4vc/openid4vp";
|
|
9
|
+
import { ValidationError } from "@openid4vc/utils";
|
|
10
|
+
|
|
11
|
+
//#region src/openid4vc-verifier/router/authorizationEndpoint.ts
|
|
12
|
+
function configureAuthorizationEndpoint(router, config) {
|
|
13
|
+
router.post(config.authorizationEndpoint, async (request, response, next) => {
|
|
14
|
+
const { agentContext, verifier } = getRequestContext(request);
|
|
15
|
+
const openId4VcVerifierService = agentContext.dependencyManager.resolve(OpenId4VpVerifierService);
|
|
16
|
+
let authorizationResponseRedirectUri;
|
|
17
|
+
try {
|
|
18
|
+
const result = await getVerificationSession(agentContext, request, response, next, verifier);
|
|
19
|
+
if (!result.success) return;
|
|
20
|
+
authorizationResponseRedirectUri = result.verificationSession.authorizationResponseRedirectUri;
|
|
21
|
+
const { verificationSession } = await openId4VcVerifierService.verifyAuthorizationResponse(agentContext, {
|
|
22
|
+
authorizationResponse: request.body,
|
|
23
|
+
verificationSession: result.verificationSession
|
|
24
|
+
});
|
|
25
|
+
return sendJsonResponse(response, next, {
|
|
26
|
+
presentation_during_issuance_session: verificationSession.presentationDuringIssuanceSession,
|
|
27
|
+
redirect_uri: verificationSession.authorizationResponseRedirectUri
|
|
28
|
+
});
|
|
29
|
+
} catch (error) {
|
|
30
|
+
if (error instanceof Oauth2ServerErrorResponseError) {
|
|
31
|
+
error.errorResponse.redirect_uri = authorizationResponseRedirectUri;
|
|
32
|
+
return sendOauth2ErrorResponse(response, next, agentContext.config.logger, error);
|
|
33
|
+
}
|
|
34
|
+
if (error instanceof ValidationError) return sendOauth2ErrorResponse(response, next, agentContext.config.logger, new Oauth2ServerErrorResponseError({
|
|
35
|
+
error: Oauth2ErrorCodes.InvalidRequest,
|
|
36
|
+
error_description: error.message,
|
|
37
|
+
redirect_uri: authorizationResponseRedirectUri
|
|
38
|
+
}, { cause: error }));
|
|
39
|
+
return sendUnknownServerErrorResponse(response, next, agentContext.config.logger, error, { redirect_uri: authorizationResponseRedirectUri });
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
async function getVerificationSession(agentContext, request, response, next, verifier) {
|
|
44
|
+
const openId4VcVerificationSessionRepository = agentContext.dependencyManager.resolve(OpenId4VcVerificationSessionRepository);
|
|
45
|
+
try {
|
|
46
|
+
if (request.query.session) {
|
|
47
|
+
if (typeof request.query.session !== "string") {
|
|
48
|
+
sendErrorResponse(response, next, agentContext.config.logger, 400, Oauth2ErrorCodes.InvalidRequest, `Unexpected value for 'session' query param`);
|
|
49
|
+
return { success: false };
|
|
50
|
+
}
|
|
51
|
+
const verificationSession = await openId4VcVerificationSessionRepository.findSingleByQuery(agentContext, {
|
|
52
|
+
verifierId: verifier.verifierId,
|
|
53
|
+
authorizationRequestId: request.query.session
|
|
54
|
+
});
|
|
55
|
+
if (!verificationSession) {
|
|
56
|
+
sendErrorResponse(response, next, agentContext.config.logger, 400, Oauth2ErrorCodes.InvalidRequest, `Invalid 'session' parameter`);
|
|
57
|
+
return { success: false };
|
|
58
|
+
}
|
|
59
|
+
return {
|
|
60
|
+
success: true,
|
|
61
|
+
verificationSession
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
const parsedResponse = zOpenid4vpAuthorizationResponse.safeParse(request.body);
|
|
65
|
+
if (parsedResponse.success) {
|
|
66
|
+
if (!parsedResponse.data.state) {
|
|
67
|
+
sendErrorResponse(response, next, agentContext.config.logger, 400, Oauth2ErrorCodes.InvalidRequest, `Missing required 'state' parameter in response without response encryption`);
|
|
68
|
+
return { success: false };
|
|
69
|
+
}
|
|
70
|
+
const verificationSession = await openId4VcVerificationSessionRepository.findSingleByQuery(agentContext, {
|
|
71
|
+
payloadState: parsedResponse.data.state,
|
|
72
|
+
verifierId: verifier.verifierId
|
|
73
|
+
});
|
|
74
|
+
if (!verificationSession) {
|
|
75
|
+
sendErrorResponse(response, next, agentContext.config.logger, 400, Oauth2ErrorCodes.InvalidRequest, `Invalid 'state' parameter`);
|
|
76
|
+
return { success: false };
|
|
77
|
+
}
|
|
78
|
+
return {
|
|
79
|
+
success: true,
|
|
80
|
+
verificationSession
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
if (typeof request.body === "object" && "response" in request.body) {
|
|
84
|
+
const { header } = decodeJwtHeader({ jwt: request.body.response });
|
|
85
|
+
if (!header.apv) {
|
|
86
|
+
sendErrorResponse(response, next, agentContext.config.logger, 400, Oauth2ErrorCodes.InvalidRequest, `Missing 'session' query param or 'apv' value in header of encrypted JARM response.`);
|
|
87
|
+
return { success: false };
|
|
88
|
+
}
|
|
89
|
+
if (typeof header.apv !== "string") {
|
|
90
|
+
sendErrorResponse(response, next, agentContext.config.logger, 400, Oauth2ErrorCodes.InvalidRequest, `'apv' value in header of encrypted JARM response is not of type string.`);
|
|
91
|
+
return { success: false };
|
|
92
|
+
}
|
|
93
|
+
const nonce = TypedArrayEncoder.toUtf8String(TypedArrayEncoder.fromBase64(header.apv));
|
|
94
|
+
const verificationSession = await openId4VcVerificationSessionRepository.findSingleByQuery(agentContext, {
|
|
95
|
+
nonce,
|
|
96
|
+
verifierId: verifier.verifierId
|
|
97
|
+
});
|
|
98
|
+
if (!verificationSession) {
|
|
99
|
+
sendErrorResponse(response, next, agentContext.config.logger, 400, Oauth2ErrorCodes.InvalidRequest, `Invalid 'apv' parameter`);
|
|
100
|
+
return { success: false };
|
|
101
|
+
}
|
|
102
|
+
return {
|
|
103
|
+
success: true,
|
|
104
|
+
verificationSession
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
sendErrorResponse(response, next, agentContext.config.logger, 400, Oauth2ErrorCodes.InvalidRequest, "Invalid response");
|
|
108
|
+
return { success: false };
|
|
109
|
+
} catch (error) {
|
|
110
|
+
sendUnknownServerErrorResponse(response, next, agentContext.config.logger, error);
|
|
111
|
+
return { success: false };
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
//#endregion
|
|
116
|
+
export { configureAuthorizationEndpoint };
|
|
117
|
+
//# sourceMappingURL=authorizationEndpoint.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"authorizationEndpoint.mjs","names":["authorizationResponseRedirectUri: string | undefined"],"sources":["../../../src/openid4vc-verifier/router/authorizationEndpoint.ts"],"sourcesContent":["import { AgentContext, TypedArrayEncoder } from '@credo-ts/core'\nimport { decodeJwtHeader, Oauth2ErrorCodes, Oauth2ServerErrorResponseError } from '@openid4vc/oauth2'\n// FIXME: export parseOpenid4VpAuthorizationResponsePayload from openid4vp\nimport { zOpenid4vpAuthorizationResponse } from '@openid4vc/openid4vp'\nimport { ValidationError } from '@openid4vc/utils'\nimport type { NextFunction, Request, Response, Router } from 'express'\nimport {\n getRequestContext,\n sendErrorResponse,\n sendJsonResponse,\n sendOauth2ErrorResponse,\n sendUnknownServerErrorResponse,\n} from '../../shared/router'\nimport { OpenId4VcVerifierModuleConfig } from '../OpenId4VcVerifierModuleConfig'\nimport { OpenId4VpVerifierService } from '../OpenId4VpVerifierService'\nimport {\n OpenId4VcVerificationSessionRecord,\n OpenId4VcVerificationSessionRepository,\n OpenId4VcVerifierRecord,\n} from '../repository'\nimport type { OpenId4VcVerificationRequest } from './requestContext'\n\nexport function configureAuthorizationEndpoint(router: Router, config: OpenId4VcVerifierModuleConfig) {\n router.post(config.authorizationEndpoint, async (request: OpenId4VcVerificationRequest, response: Response, next) => {\n const { agentContext, verifier } = getRequestContext(request)\n const openId4VcVerifierService = agentContext.dependencyManager.resolve(OpenId4VpVerifierService)\n\n let authorizationResponseRedirectUri: string | undefined\n\n try {\n const result = await getVerificationSession(agentContext, request, response, next, verifier)\n\n // Response already handled in the method\n if (!result.success) return\n\n authorizationResponseRedirectUri = result.verificationSession.authorizationResponseRedirectUri\n\n const { verificationSession } = await openId4VcVerifierService.verifyAuthorizationResponse(agentContext, {\n authorizationResponse: request.body,\n verificationSession: result.verificationSession,\n })\n\n return sendJsonResponse(response, next, {\n // Used only for presentation during issuance flow, to prevent session fixation.\n presentation_during_issuance_session: verificationSession.presentationDuringIssuanceSession,\n\n redirect_uri: verificationSession.authorizationResponseRedirectUri,\n })\n } catch (error) {\n if (error instanceof Oauth2ServerErrorResponseError) {\n error.errorResponse.redirect_uri = authorizationResponseRedirectUri\n return sendOauth2ErrorResponse(response, next, agentContext.config.logger, error)\n }\n\n // FIXME: should throw a Oauth2ServerErrorResponseError in the oid4vp library\n if (error instanceof ValidationError) {\n return sendOauth2ErrorResponse(\n response,\n next,\n agentContext.config.logger,\n new Oauth2ServerErrorResponseError(\n {\n error: Oauth2ErrorCodes.InvalidRequest,\n error_description: error.message,\n redirect_uri: authorizationResponseRedirectUri,\n },\n { cause: error }\n )\n )\n }\n\n return sendUnknownServerErrorResponse(response, next, agentContext.config.logger, error, {\n redirect_uri: authorizationResponseRedirectUri,\n })\n }\n })\n}\n\nasync function getVerificationSession(\n agentContext: AgentContext,\n request: Request,\n response: Response,\n next: NextFunction,\n verifier: OpenId4VcVerifierRecord\n): Promise<{ success: true; verificationSession: OpenId4VcVerificationSessionRecord } | { success: false }> {\n const openId4VcVerificationSessionRepository = agentContext.dependencyManager.resolve(\n OpenId4VcVerificationSessionRepository\n )\n\n try {\n if (request.query.session) {\n if (typeof request.query.session !== 'string') {\n sendErrorResponse(\n response,\n next,\n agentContext.config.logger,\n 400,\n Oauth2ErrorCodes.InvalidRequest,\n `Unexpected value for 'session' query param`\n )\n return { success: false }\n }\n\n const verificationSession = await openId4VcVerificationSessionRepository.findSingleByQuery(agentContext, {\n verifierId: verifier.verifierId,\n authorizationRequestId: request.query.session,\n })\n\n if (!verificationSession) {\n sendErrorResponse(\n response,\n next,\n agentContext.config.logger,\n 400,\n Oauth2ErrorCodes.InvalidRequest,\n `Invalid 'session' parameter`\n )\n return { success: false }\n }\n\n return { success: true, verificationSession }\n }\n\n const parsedResponse = zOpenid4vpAuthorizationResponse.safeParse(request.body)\n if (parsedResponse.success) {\n if (!parsedResponse.data.state) {\n sendErrorResponse(\n response,\n next,\n agentContext.config.logger,\n 400,\n Oauth2ErrorCodes.InvalidRequest,\n `Missing required 'state' parameter in response without response encryption`\n )\n return { success: false }\n }\n\n const verificationSession = await openId4VcVerificationSessionRepository.findSingleByQuery(agentContext, {\n payloadState: parsedResponse.data.state,\n verifierId: verifier.verifierId,\n })\n\n if (!verificationSession) {\n sendErrorResponse(\n response,\n next,\n agentContext.config.logger,\n 400,\n Oauth2ErrorCodes.InvalidRequest,\n `Invalid 'state' parameter`\n )\n return { success: false }\n }\n\n return { success: true, verificationSession }\n }\n\n // Try extracting apv (request nonce), which is used in encrypted responses (for ISO 18013-7/before draft 24)\n if (typeof request.body === 'object' && 'response' in request.body) {\n const { header } = decodeJwtHeader({\n jwt: request.body.response,\n })\n\n if (!header.apv) {\n sendErrorResponse(\n response,\n next,\n agentContext.config.logger,\n 400,\n Oauth2ErrorCodes.InvalidRequest,\n `Missing 'session' query param or 'apv' value in header of encrypted JARM response.`\n )\n return { success: false }\n }\n\n if (typeof header.apv !== 'string') {\n sendErrorResponse(\n response,\n next,\n agentContext.config.logger,\n 400,\n Oauth2ErrorCodes.InvalidRequest,\n `'apv' value in header of encrypted JARM response is not of type string.`\n )\n return { success: false }\n }\n\n const nonce = TypedArrayEncoder.toUtf8String(TypedArrayEncoder.fromBase64(header.apv))\n const verificationSession = await openId4VcVerificationSessionRepository.findSingleByQuery(agentContext, {\n nonce,\n verifierId: verifier.verifierId,\n })\n\n if (!verificationSession) {\n sendErrorResponse(\n response,\n next,\n agentContext.config.logger,\n 400,\n Oauth2ErrorCodes.InvalidRequest,\n `Invalid 'apv' parameter`\n )\n return { success: false }\n }\n\n return { success: true, verificationSession }\n }\n\n sendErrorResponse(\n response,\n next,\n agentContext.config.logger,\n 400,\n Oauth2ErrorCodes.InvalidRequest,\n 'Invalid response'\n )\n return { success: false }\n } catch (error) {\n sendUnknownServerErrorResponse(response, next, agentContext.config.logger, error)\n return { success: false }\n }\n}\n"],"mappings":";;;;;;;;;;;AAsBA,SAAgB,+BAA+B,QAAgB,QAAuC;AACpG,QAAO,KAAK,OAAO,uBAAuB,OAAO,SAAuC,UAAoB,SAAS;EACnH,MAAM,EAAE,cAAc,aAAa,kBAAkB,QAAQ;EAC7D,MAAM,2BAA2B,aAAa,kBAAkB,QAAQ,yBAAyB;EAEjG,IAAIA;AAEJ,MAAI;GACF,MAAM,SAAS,MAAM,uBAAuB,cAAc,SAAS,UAAU,MAAM,SAAS;AAG5F,OAAI,CAAC,OAAO,QAAS;AAErB,sCAAmC,OAAO,oBAAoB;GAE9D,MAAM,EAAE,wBAAwB,MAAM,yBAAyB,4BAA4B,cAAc;IACvG,uBAAuB,QAAQ;IAC/B,qBAAqB,OAAO;IAC7B,CAAC;AAEF,UAAO,iBAAiB,UAAU,MAAM;IAEtC,sCAAsC,oBAAoB;IAE1D,cAAc,oBAAoB;IACnC,CAAC;WACK,OAAO;AACd,OAAI,iBAAiB,gCAAgC;AACnD,UAAM,cAAc,eAAe;AACnC,WAAO,wBAAwB,UAAU,MAAM,aAAa,OAAO,QAAQ,MAAM;;AAInF,OAAI,iBAAiB,gBACnB,QAAO,wBACL,UACA,MACA,aAAa,OAAO,QACpB,IAAI,+BACF;IACE,OAAO,iBAAiB;IACxB,mBAAmB,MAAM;IACzB,cAAc;IACf,EACD,EAAE,OAAO,OAAO,CACjB,CACF;AAGH,UAAO,+BAA+B,UAAU,MAAM,aAAa,OAAO,QAAQ,OAAO,EACvF,cAAc,kCACf,CAAC;;GAEJ;;AAGJ,eAAe,uBACb,cACA,SACA,UACA,MACA,UAC0G;CAC1G,MAAM,yCAAyC,aAAa,kBAAkB,QAC5E,uCACD;AAED,KAAI;AACF,MAAI,QAAQ,MAAM,SAAS;AACzB,OAAI,OAAO,QAAQ,MAAM,YAAY,UAAU;AAC7C,sBACE,UACA,MACA,aAAa,OAAO,QACpB,KACA,iBAAiB,gBACjB,6CACD;AACD,WAAO,EAAE,SAAS,OAAO;;GAG3B,MAAM,sBAAsB,MAAM,uCAAuC,kBAAkB,cAAc;IACvG,YAAY,SAAS;IACrB,wBAAwB,QAAQ,MAAM;IACvC,CAAC;AAEF,OAAI,CAAC,qBAAqB;AACxB,sBACE,UACA,MACA,aAAa,OAAO,QACpB,KACA,iBAAiB,gBACjB,8BACD;AACD,WAAO,EAAE,SAAS,OAAO;;AAG3B,UAAO;IAAE,SAAS;IAAM;IAAqB;;EAG/C,MAAM,iBAAiB,gCAAgC,UAAU,QAAQ,KAAK;AAC9E,MAAI,eAAe,SAAS;AAC1B,OAAI,CAAC,eAAe,KAAK,OAAO;AAC9B,sBACE,UACA,MACA,aAAa,OAAO,QACpB,KACA,iBAAiB,gBACjB,6EACD;AACD,WAAO,EAAE,SAAS,OAAO;;GAG3B,MAAM,sBAAsB,MAAM,uCAAuC,kBAAkB,cAAc;IACvG,cAAc,eAAe,KAAK;IAClC,YAAY,SAAS;IACtB,CAAC;AAEF,OAAI,CAAC,qBAAqB;AACxB,sBACE,UACA,MACA,aAAa,OAAO,QACpB,KACA,iBAAiB,gBACjB,4BACD;AACD,WAAO,EAAE,SAAS,OAAO;;AAG3B,UAAO;IAAE,SAAS;IAAM;IAAqB;;AAI/C,MAAI,OAAO,QAAQ,SAAS,YAAY,cAAc,QAAQ,MAAM;GAClE,MAAM,EAAE,WAAW,gBAAgB,EACjC,KAAK,QAAQ,KAAK,UACnB,CAAC;AAEF,OAAI,CAAC,OAAO,KAAK;AACf,sBACE,UACA,MACA,aAAa,OAAO,QACpB,KACA,iBAAiB,gBACjB,qFACD;AACD,WAAO,EAAE,SAAS,OAAO;;AAG3B,OAAI,OAAO,OAAO,QAAQ,UAAU;AAClC,sBACE,UACA,MACA,aAAa,OAAO,QACpB,KACA,iBAAiB,gBACjB,0EACD;AACD,WAAO,EAAE,SAAS,OAAO;;GAG3B,MAAM,QAAQ,kBAAkB,aAAa,kBAAkB,WAAW,OAAO,IAAI,CAAC;GACtF,MAAM,sBAAsB,MAAM,uCAAuC,kBAAkB,cAAc;IACvG;IACA,YAAY,SAAS;IACtB,CAAC;AAEF,OAAI,CAAC,qBAAqB;AACxB,sBACE,UACA,MACA,aAAa,OAAO,QACpB,KACA,iBAAiB,gBACjB,0BACD;AACD,WAAO,EAAE,SAAS,OAAO;;AAG3B,UAAO;IAAE,SAAS;IAAM;IAAqB;;AAG/C,oBACE,UACA,MACA,aAAa,OAAO,QACpB,KACA,iBAAiB,gBACjB,mBACD;AACD,SAAO,EAAE,SAAS,OAAO;UAClB,OAAO;AACd,iCAA+B,UAAU,MAAM,aAAa,OAAO,QAAQ,MAAM;AACjF,SAAO,EAAE,SAAS,OAAO"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { OpenId4VcVerifierModuleConfig } from "../OpenId4VcVerifierModuleConfig.mjs";
|
|
2
|
+
import { getRequestContext, sendErrorResponse, sendNotFoundResponse, sendUnknownServerErrorResponse } from "../../shared/router/context.mjs";
|
|
3
|
+
import "../../shared/router/index.mjs";
|
|
4
|
+
import { OpenId4VcVerificationSessionState } from "../OpenId4VcVerificationSessionState.mjs";
|
|
5
|
+
import { OpenId4VpVerifierService } from "../OpenId4VpVerifierService.mjs";
|
|
6
|
+
import { joinUriParts } from "@credo-ts/core";
|
|
7
|
+
|
|
8
|
+
//#region src/openid4vc-verifier/router/authorizationRequestEndpoint.ts
|
|
9
|
+
function configureAuthorizationRequestEndpoint(router, config) {
|
|
10
|
+
router.get(joinUriParts(config.authorizationRequestEndpoint, [":authorizationRequestId"]), async (request, response, next) => {
|
|
11
|
+
const { agentContext, verifier } = getRequestContext(request);
|
|
12
|
+
if (!request.params.authorizationRequestId || typeof request.params.authorizationRequestId !== "string") return sendErrorResponse(response, next, agentContext.config.logger, 400, "invalid_request", "Invalid authorization request url");
|
|
13
|
+
try {
|
|
14
|
+
const verifierService = agentContext.dependencyManager.resolve(OpenId4VpVerifierService);
|
|
15
|
+
const verifierConfig = agentContext.dependencyManager.resolve(OpenId4VcVerifierModuleConfig);
|
|
16
|
+
const fullAuthorizationRequestUri = joinUriParts(verifierConfig.baseUrl, [
|
|
17
|
+
verifier.verifierId,
|
|
18
|
+
verifierConfig.authorizationRequestEndpoint,
|
|
19
|
+
request.params.authorizationRequestId
|
|
20
|
+
]);
|
|
21
|
+
const [verificationSession] = await verifierService.findVerificationSessionsByQuery(agentContext, {
|
|
22
|
+
verifierId: verifier.verifierId,
|
|
23
|
+
$or: [{ authorizationRequestId: request.params.authorizationRequestId }, { authorizationRequestUri: fullAuthorizationRequestUri }]
|
|
24
|
+
});
|
|
25
|
+
if (!verificationSession || !verificationSession.authorizationRequestJwt) return sendErrorResponse(response, next, agentContext.config.logger, 404, "not_found", "Authorization request not found");
|
|
26
|
+
if (![OpenId4VcVerificationSessionState.RequestCreated, OpenId4VcVerificationSessionState.RequestUriRetrieved].includes(verificationSession.state)) return sendErrorResponse(response, next, agentContext.config.logger, 400, "invalid_request", "Invalid state for authorization request");
|
|
27
|
+
if (verificationSession.expiresAt && Date.now() > verificationSession.expiresAt.getTime()) return sendNotFoundResponse(response, next, agentContext.config.logger, "Session expired");
|
|
28
|
+
if (verificationSession.state !== OpenId4VcVerificationSessionState.RequestUriRetrieved) await verifierService.updateState(agentContext, verificationSession, OpenId4VcVerificationSessionState.RequestUriRetrieved);
|
|
29
|
+
response.type("application/oauth-authz-req+jwt").status(200).send(verificationSession.authorizationRequestJwt);
|
|
30
|
+
next();
|
|
31
|
+
} catch (error) {
|
|
32
|
+
return sendUnknownServerErrorResponse(response, next, agentContext.config.logger, error);
|
|
33
|
+
}
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
//#endregion
|
|
38
|
+
export { configureAuthorizationRequestEndpoint };
|
|
39
|
+
//# sourceMappingURL=authorizationRequestEndpoint.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"authorizationRequestEndpoint.mjs","names":[],"sources":["../../../src/openid4vc-verifier/router/authorizationRequestEndpoint.ts"],"sourcesContent":["import { joinUriParts } from '@credo-ts/core'\nimport type { Response, Router } from 'express'\nimport {\n getRequestContext,\n sendErrorResponse,\n sendNotFoundResponse,\n sendUnknownServerErrorResponse,\n} from '../../shared/router'\nimport { OpenId4VcVerificationSessionState } from '../OpenId4VcVerificationSessionState'\nimport { OpenId4VcVerifierModuleConfig } from '../OpenId4VcVerifierModuleConfig'\nimport { OpenId4VpVerifierService } from '../OpenId4VpVerifierService'\nimport type { OpenId4VcVerificationRequest } from './requestContext'\n\nexport function configureAuthorizationRequestEndpoint(router: Router, config: OpenId4VcVerifierModuleConfig) {\n router.get(\n joinUriParts(config.authorizationRequestEndpoint, [':authorizationRequestId']),\n async (request: OpenId4VcVerificationRequest, response: Response, next) => {\n const { agentContext, verifier } = getRequestContext(request)\n\n if (!request.params.authorizationRequestId || typeof request.params.authorizationRequestId !== 'string') {\n return sendErrorResponse(\n response,\n next,\n agentContext.config.logger,\n 400,\n 'invalid_request',\n 'Invalid authorization request url'\n )\n }\n\n try {\n const verifierService = agentContext.dependencyManager.resolve(OpenId4VpVerifierService)\n const verifierConfig = agentContext.dependencyManager.resolve(OpenId4VcVerifierModuleConfig)\n\n // We always use shortened URIs currently\n const fullAuthorizationRequestUri = joinUriParts(verifierConfig.baseUrl, [\n verifier.verifierId,\n verifierConfig.authorizationRequestEndpoint,\n request.params.authorizationRequestId,\n ])\n\n const [verificationSession] = await verifierService.findVerificationSessionsByQuery(agentContext, {\n verifierId: verifier.verifierId,\n $or: [\n {\n authorizationRequestId: request.params.authorizationRequestId,\n },\n // NOTE: this can soon be removed, authorization request id is cleaner,\n // but only introduced since 0.6\n {\n authorizationRequestUri: fullAuthorizationRequestUri,\n },\n ],\n })\n\n // Not all requets are signed, and those are not fetcheable\n if (!verificationSession || !verificationSession.authorizationRequestJwt) {\n return sendErrorResponse(\n response,\n next,\n agentContext.config.logger,\n 404,\n 'not_found',\n 'Authorization request not found'\n )\n }\n\n if (\n ![\n OpenId4VcVerificationSessionState.RequestCreated,\n OpenId4VcVerificationSessionState.RequestUriRetrieved,\n ].includes(verificationSession.state)\n ) {\n return sendErrorResponse(\n response,\n next,\n agentContext.config.logger,\n 400,\n 'invalid_request',\n 'Invalid state for authorization request'\n )\n }\n\n if (verificationSession.expiresAt && Date.now() > verificationSession.expiresAt.getTime()) {\n return sendNotFoundResponse(response, next, agentContext.config.logger, 'Session expired')\n }\n\n // It's okay to retrieve the offer multiple times. So we only update the state if it's not already retrieved\n if (verificationSession.state !== OpenId4VcVerificationSessionState.RequestUriRetrieved) {\n await verifierService.updateState(\n agentContext,\n verificationSession,\n OpenId4VcVerificationSessionState.RequestUriRetrieved\n )\n }\n\n response.type('application/oauth-authz-req+jwt').status(200).send(verificationSession.authorizationRequestJwt)\n next()\n } catch (error) {\n return sendUnknownServerErrorResponse(response, next, agentContext.config.logger, error)\n }\n }\n )\n}\n"],"mappings":";;;;;;;;AAaA,SAAgB,sCAAsC,QAAgB,QAAuC;AAC3G,QAAO,IACL,aAAa,OAAO,8BAA8B,CAAC,0BAA0B,CAAC,EAC9E,OAAO,SAAuC,UAAoB,SAAS;EACzE,MAAM,EAAE,cAAc,aAAa,kBAAkB,QAAQ;AAE7D,MAAI,CAAC,QAAQ,OAAO,0BAA0B,OAAO,QAAQ,OAAO,2BAA2B,SAC7F,QAAO,kBACL,UACA,MACA,aAAa,OAAO,QACpB,KACA,mBACA,oCACD;AAGH,MAAI;GACF,MAAM,kBAAkB,aAAa,kBAAkB,QAAQ,yBAAyB;GACxF,MAAM,iBAAiB,aAAa,kBAAkB,QAAQ,8BAA8B;GAG5F,MAAM,8BAA8B,aAAa,eAAe,SAAS;IACvE,SAAS;IACT,eAAe;IACf,QAAQ,OAAO;IAChB,CAAC;GAEF,MAAM,CAAC,uBAAuB,MAAM,gBAAgB,gCAAgC,cAAc;IAChG,YAAY,SAAS;IACrB,KAAK,CACH,EACE,wBAAwB,QAAQ,OAAO,wBACxC,EAGD,EACE,yBAAyB,6BAC1B,CACF;IACF,CAAC;AAGF,OAAI,CAAC,uBAAuB,CAAC,oBAAoB,wBAC/C,QAAO,kBACL,UACA,MACA,aAAa,OAAO,QACpB,KACA,aACA,kCACD;AAGH,OACE,CAAC,CACC,kCAAkC,gBAClC,kCAAkC,oBACnC,CAAC,SAAS,oBAAoB,MAAM,CAErC,QAAO,kBACL,UACA,MACA,aAAa,OAAO,QACpB,KACA,mBACA,0CACD;AAGH,OAAI,oBAAoB,aAAa,KAAK,KAAK,GAAG,oBAAoB,UAAU,SAAS,CACvF,QAAO,qBAAqB,UAAU,MAAM,aAAa,OAAO,QAAQ,kBAAkB;AAI5F,OAAI,oBAAoB,UAAU,kCAAkC,oBAClE,OAAM,gBAAgB,YACpB,cACA,qBACA,kCAAkC,oBACnC;AAGH,YAAS,KAAK,kCAAkC,CAAC,OAAO,IAAI,CAAC,KAAK,oBAAoB,wBAAwB;AAC9G,SAAM;WACC,OAAO;AACd,UAAO,+BAA+B,UAAU,MAAM,aAAa,OAAO,QAAQ,MAAM;;GAG7F"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import { configureAuthorizationEndpoint } from "./authorizationEndpoint.mjs";
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { OpenId4VcIssuerRecord } from "../openid4vc-issuer/repository/OpenId4VcIssuerRecord.mjs";
|
|
2
|
+
import "../openid4vc-issuer/repository/index.mjs";
|
|
3
|
+
import { AgentContext, Kms } from "@credo-ts/core";
|
|
4
|
+
import * as _openid4vc_oauth20 from "@openid4vc/oauth2";
|
|
5
|
+
import { ClientAuthenticationCallback, DecryptJweCallback, EncryptJweCallback, SignJwtCallback, VerifyJwtCallback } from "@openid4vc/oauth2";
|
|
6
|
+
|
|
7
|
+
//#region src/shared/callbacks.d.ts
|
|
8
|
+
declare function getOid4vcJwtVerifyCallback(agentContext: AgentContext, options?: {
|
|
9
|
+
trustedCertificates?: string[];
|
|
10
|
+
issuanceSessionId?: string;
|
|
11
|
+
/**
|
|
12
|
+
* Whether this verification callback should assume a JAR authorization is verified
|
|
13
|
+
* Starting from OID4VP draft 24 the JAR must use oauth-authz-req+jwt header typ
|
|
14
|
+
* but for backwards compatiblity we need to also handle the case where the header typ is different
|
|
15
|
+
* @default false
|
|
16
|
+
*/
|
|
17
|
+
isAuthorizationRequestJwt?: boolean;
|
|
18
|
+
}): VerifyJwtCallback;
|
|
19
|
+
declare function getOid4vcEncryptJweCallback(agentContext: AgentContext): EncryptJweCallback;
|
|
20
|
+
declare function getOid4vcDecryptJweCallback(agentContext: AgentContext): DecryptJweCallback;
|
|
21
|
+
declare function getOid4vcJwtSignCallback(agentContext: AgentContext): SignJwtCallback;
|
|
22
|
+
declare function getOid4vcCallbacks(agentContext: AgentContext, options?: {
|
|
23
|
+
trustedCertificates?: string[];
|
|
24
|
+
isVerifyOpenId4VpAuthorizationRequest?: boolean;
|
|
25
|
+
issuanceSessionId?: string;
|
|
26
|
+
}): {
|
|
27
|
+
hash: (data: Uint8Array<ArrayBufferLike>, alg: _openid4vc_oauth20.HashAlgorithm) => Uint8Array<ArrayBuffer>;
|
|
28
|
+
generateRandom: (length: number) => Kms.KmsRandomBytesReturn;
|
|
29
|
+
signJwt: SignJwtCallback;
|
|
30
|
+
clientAuthentication: () => never;
|
|
31
|
+
verifyJwt: VerifyJwtCallback;
|
|
32
|
+
fetch: typeof fetch;
|
|
33
|
+
encryptJwe: EncryptJweCallback;
|
|
34
|
+
decryptJwe: DecryptJweCallback;
|
|
35
|
+
getX509CertificateMetadata: (certificate: string) => {
|
|
36
|
+
sanDnsNames: string[];
|
|
37
|
+
sanUriNames: string[];
|
|
38
|
+
};
|
|
39
|
+
};
|
|
40
|
+
/**
|
|
41
|
+
* Allows us to authenticate when making requests to an external
|
|
42
|
+
* authorization server
|
|
43
|
+
*/
|
|
44
|
+
declare function dynamicOid4vciClientAuthentication(agentContext: AgentContext, issuerRecord: OpenId4VcIssuerRecord): ClientAuthenticationCallback;
|
|
45
|
+
//#endregion
|
|
46
|
+
export { dynamicOid4vciClientAuthentication, getOid4vcCallbacks, getOid4vcDecryptJweCallback, getOid4vcEncryptJweCallback, getOid4vcJwtSignCallback, getOid4vcJwtVerifyCallback };
|
|
47
|
+
//# sourceMappingURL=callbacks.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"callbacks.d.mts","names":[],"sources":["../../src/shared/callbacks.ts"],"sourcesContent":[],"mappings":";;;;;;;iBA6BgB,0BAAA,eACA;;;;AADhB;AAgJA;AAyFA;AA4FA;AA8CA;EACgB,yBAAA,CAAA,EAAA,OAAA;IArWb;iBAiIa,2BAAA,eAA0C,eAAe;iBAyFzD,2BAAA,eAA0C,eAAe;iBA4FzD,wBAAA,eAAuC,eAAe;iBA8CtD,kBAAA,eACA;;;;;;;;EAsCA,oBAAA,EAAA,GAAA,GAAA,KAAA;EACA,SAAA,mBAAA;EACA,KAAA,EAAA,YAAA;EACb,UAAA,oBAAA;EAA4B,UAAA,oBAAA;;;;;;;;;;iBAHf,kCAAA,eACA,4BACA,wBACb"}
|