@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
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getSphereonVerifiableCredential = getSphereonVerifiableCredential;
|
|
4
|
-
exports.getSphereonVerifiablePresentation = getSphereonVerifiablePresentation;
|
|
5
|
-
exports.getVerifiablePresentationFromSphereonWrapped = getVerifiablePresentationFromSphereonWrapped;
|
|
6
|
-
const core_1 = require("@credo-ts/core");
|
|
7
|
-
function getSphereonVerifiableCredential(verifiableCredential) {
|
|
8
|
-
// encoded sd-jwt or jwt
|
|
9
|
-
if (typeof verifiableCredential === 'string') {
|
|
10
|
-
return verifiableCredential;
|
|
11
|
-
}
|
|
12
|
-
else if (verifiableCredential instanceof core_1.W3cJsonLdVerifiableCredential) {
|
|
13
|
-
return core_1.JsonTransformer.toJSON(verifiableCredential);
|
|
14
|
-
}
|
|
15
|
-
else if (verifiableCredential instanceof core_1.W3cJwtVerifiableCredential) {
|
|
16
|
-
return verifiableCredential.serializedJwt;
|
|
17
|
-
}
|
|
18
|
-
else if (verifiableCredential instanceof core_1.Mdoc) {
|
|
19
|
-
return verifiableCredential.base64Url;
|
|
20
|
-
}
|
|
21
|
-
else {
|
|
22
|
-
return verifiableCredential.compact;
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
function getSphereonVerifiablePresentation(verifiablePresentation) {
|
|
26
|
-
// encoded sd-jwt or jwt
|
|
27
|
-
if (typeof verifiablePresentation === 'string') {
|
|
28
|
-
return verifiablePresentation;
|
|
29
|
-
}
|
|
30
|
-
else if (verifiablePresentation instanceof core_1.W3cJsonLdVerifiablePresentation) {
|
|
31
|
-
return core_1.JsonTransformer.toJSON(verifiablePresentation);
|
|
32
|
-
}
|
|
33
|
-
else if (verifiablePresentation instanceof core_1.W3cJwtVerifiablePresentation) {
|
|
34
|
-
return verifiablePresentation.serializedJwt;
|
|
35
|
-
}
|
|
36
|
-
else if (verifiablePresentation instanceof core_1.MdocDeviceResponse) {
|
|
37
|
-
return verifiablePresentation.base64Url;
|
|
38
|
-
}
|
|
39
|
-
else {
|
|
40
|
-
return verifiablePresentation.compact;
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
function getVerifiablePresentationFromSphereonWrapped(wrappedVerifiablePresentation) {
|
|
44
|
-
if (wrappedVerifiablePresentation.format === 'jwt_vp') {
|
|
45
|
-
if (typeof wrappedVerifiablePresentation.original !== 'string') {
|
|
46
|
-
throw new core_1.CredoError('Unable to transform JWT VP to W3C VP');
|
|
47
|
-
}
|
|
48
|
-
return core_1.W3cJwtVerifiablePresentation.fromSerializedJwt(wrappedVerifiablePresentation.original);
|
|
49
|
-
}
|
|
50
|
-
else if (wrappedVerifiablePresentation.format === 'ldp_vp') {
|
|
51
|
-
return core_1.JsonTransformer.fromJSON(wrappedVerifiablePresentation.original, core_1.W3cJsonLdVerifiablePresentation);
|
|
52
|
-
}
|
|
53
|
-
else if (wrappedVerifiablePresentation.format === 'vc+sd-jwt') {
|
|
54
|
-
// We use some custom logic here so we don't have to re-process the encoded SD-JWT
|
|
55
|
-
const [encodedHeader] = wrappedVerifiablePresentation.presentation.compactSdJwtVc.split('.');
|
|
56
|
-
const header = core_1.JsonEncoder.fromBase64(encodedHeader);
|
|
57
|
-
return {
|
|
58
|
-
compact: wrappedVerifiablePresentation.presentation.compactSdJwtVc,
|
|
59
|
-
header,
|
|
60
|
-
payload: wrappedVerifiablePresentation.presentation.signedPayload,
|
|
61
|
-
prettyClaims: wrappedVerifiablePresentation.presentation.decodedPayload,
|
|
62
|
-
};
|
|
63
|
-
}
|
|
64
|
-
else if (wrappedVerifiablePresentation.format === 'mso_mdoc') {
|
|
65
|
-
if (typeof wrappedVerifiablePresentation.original !== 'string') {
|
|
66
|
-
const base64Url = core_1.TypedArrayEncoder.toBase64URL(new Uint8Array(wrappedVerifiablePresentation.original.cborEncode()));
|
|
67
|
-
return core_1.MdocDeviceResponse.fromBase64Url(base64Url);
|
|
68
|
-
}
|
|
69
|
-
return core_1.MdocDeviceResponse.fromBase64Url(wrappedVerifiablePresentation.original);
|
|
70
|
-
}
|
|
71
|
-
throw new core_1.CredoError(`Unsupported presentation format: ${wrappedVerifiablePresentation.format}`);
|
|
72
|
-
}
|
|
73
|
-
//# sourceMappingURL=transform.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"transform.js","sourceRoot":"","sources":["../../src/shared/transform.ts"],"names":[],"mappings":"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"}
|
package/build/shared/utils.d.ts
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import type { OpenId4VcIssuerX5c, OpenId4VcJwtIssuer } from './models';
|
|
2
|
-
import type { AgentContext, DidPurpose, JwaSignatureAlgorithm, Key } from '@credo-ts/core';
|
|
3
|
-
import type { JwtIssuerWithContext as VpJwtIssuerWithContext, VerifyJwtCallback } from '@sphereon/did-auth-siop';
|
|
4
|
-
import type { DPoPJwtIssuerWithContext, CreateJwtCallback, JwtIssuer } from '@sphereon/oid4vc-common';
|
|
5
|
-
/**
|
|
6
|
-
* Returns the JWA Signature Algorithms that are supported by the wallet.
|
|
7
|
-
*
|
|
8
|
-
* This is an approximation based on the supported key types of the wallet.
|
|
9
|
-
* This is not 100% correct as a supporting a key type does not mean you support
|
|
10
|
-
* all the algorithms for that key type. However, this needs refactoring of the wallet
|
|
11
|
-
* that is planned for the 0.5.0 release.
|
|
12
|
-
*/
|
|
13
|
-
export declare function getSupportedJwaSignatureAlgorithms(agentContext: AgentContext): JwaSignatureAlgorithm[];
|
|
14
|
-
export declare function getKeyFromDid(agentContext: AgentContext, didUrl: string, allowedPurposes?: DidPurpose[]): Promise<Key>;
|
|
15
|
-
export declare function getVerifyJwtCallback(agentContext: AgentContext): VerifyJwtCallback;
|
|
16
|
-
export declare function getCreateJwtCallback(agentContext: AgentContext): CreateJwtCallback<DPoPJwtIssuerWithContext | VpJwtIssuerWithContext>;
|
|
17
|
-
export declare function openIdTokenIssuerToJwtIssuer(agentContext: AgentContext, openId4VcTokenIssuer: Exclude<OpenId4VcJwtIssuer, OpenId4VcIssuerX5c> | (OpenId4VcIssuerX5c & {
|
|
18
|
-
issuer: string;
|
|
19
|
-
})): Promise<JwtIssuer>;
|
|
20
|
-
export declare function getProofTypeFromKey(agentContext: AgentContext, key: Key): string;
|
|
21
|
-
export declare function addSecondsToDate(date: Date, seconds: number): Date;
|
|
22
|
-
export declare function dateToSeconds(date: Date): number;
|
package/build/shared/utils.js
DELETED
|
@@ -1,154 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getSupportedJwaSignatureAlgorithms = getSupportedJwaSignatureAlgorithms;
|
|
4
|
-
exports.getKeyFromDid = getKeyFromDid;
|
|
5
|
-
exports.getVerifyJwtCallback = getVerifyJwtCallback;
|
|
6
|
-
exports.getCreateJwtCallback = getCreateJwtCallback;
|
|
7
|
-
exports.openIdTokenIssuerToJwtIssuer = openIdTokenIssuerToJwtIssuer;
|
|
8
|
-
exports.getProofTypeFromKey = getProofTypeFromKey;
|
|
9
|
-
exports.addSecondsToDate = addSecondsToDate;
|
|
10
|
-
exports.dateToSeconds = dateToSeconds;
|
|
11
|
-
const core_1 = require("@credo-ts/core");
|
|
12
|
-
/**
|
|
13
|
-
* Returns the JWA Signature Algorithms that are supported by the wallet.
|
|
14
|
-
*
|
|
15
|
-
* This is an approximation based on the supported key types of the wallet.
|
|
16
|
-
* This is not 100% correct as a supporting a key type does not mean you support
|
|
17
|
-
* all the algorithms for that key type. However, this needs refactoring of the wallet
|
|
18
|
-
* that is planned for the 0.5.0 release.
|
|
19
|
-
*/
|
|
20
|
-
function getSupportedJwaSignatureAlgorithms(agentContext) {
|
|
21
|
-
const supportedKeyTypes = agentContext.wallet.supportedKeyTypes;
|
|
22
|
-
// Extract the supported JWS algs based on the key types the wallet support.
|
|
23
|
-
const supportedJwaSignatureAlgorithms = supportedKeyTypes
|
|
24
|
-
// Map the supported key types to the supported JWK class
|
|
25
|
-
.map(core_1.getJwkClassFromKeyType)
|
|
26
|
-
// Filter out the undefined values
|
|
27
|
-
.filter((jwkClass) => jwkClass !== undefined)
|
|
28
|
-
// Extract the supported JWA signature algorithms from the JWK class
|
|
29
|
-
.flatMap((jwkClass) => jwkClass.supportedSignatureAlgorithms);
|
|
30
|
-
return supportedJwaSignatureAlgorithms;
|
|
31
|
-
}
|
|
32
|
-
async function getKeyFromDid(agentContext, didUrl, allowedPurposes = ['authentication']) {
|
|
33
|
-
const didsApi = agentContext.dependencyManager.resolve(core_1.DidsApi);
|
|
34
|
-
const didDocument = await didsApi.resolveDidDocument(didUrl);
|
|
35
|
-
const verificationMethod = didDocument.dereferenceKey(didUrl, allowedPurposes);
|
|
36
|
-
return (0, core_1.getKeyFromVerificationMethod)(verificationMethod);
|
|
37
|
-
}
|
|
38
|
-
function getVerifyJwtCallback(agentContext) {
|
|
39
|
-
return async (jwtVerifier, jwt) => {
|
|
40
|
-
const jwsService = agentContext.dependencyManager.resolve(core_1.JwsService);
|
|
41
|
-
if (jwtVerifier.method === 'did') {
|
|
42
|
-
const key = await getKeyFromDid(agentContext, jwtVerifier.didUrl);
|
|
43
|
-
const jwk = (0, core_1.getJwkFromKey)(key);
|
|
44
|
-
const res = await jwsService.verifyJws(agentContext, { jws: jwt.raw, jwkResolver: () => jwk });
|
|
45
|
-
return res.isValid;
|
|
46
|
-
}
|
|
47
|
-
else if (jwtVerifier.method === 'x5c' || jwtVerifier.method === 'jwk') {
|
|
48
|
-
const res = await jwsService.verifyJws(agentContext, { jws: jwt.raw });
|
|
49
|
-
return res.isValid;
|
|
50
|
-
}
|
|
51
|
-
else {
|
|
52
|
-
throw new Error(`Unsupported jwt verifier method: '${jwtVerifier.method}'`);
|
|
53
|
-
}
|
|
54
|
-
};
|
|
55
|
-
}
|
|
56
|
-
function getCreateJwtCallback(agentContext) {
|
|
57
|
-
return async (jwtIssuer, jwt) => {
|
|
58
|
-
const jwsService = agentContext.dependencyManager.resolve(core_1.JwsService);
|
|
59
|
-
if (jwtIssuer.method === 'did') {
|
|
60
|
-
const key = await getKeyFromDid(agentContext, jwtIssuer.didUrl);
|
|
61
|
-
const jws = await jwsService.createJwsCompact(agentContext, {
|
|
62
|
-
protectedHeaderOptions: Object.assign(Object.assign({}, jwt.header), { alg: jwtIssuer.alg, jwk: undefined }),
|
|
63
|
-
payload: core_1.JwtPayload.fromJson(jwt.payload),
|
|
64
|
-
key,
|
|
65
|
-
});
|
|
66
|
-
return jws;
|
|
67
|
-
}
|
|
68
|
-
else if (jwtIssuer.method === 'jwk') {
|
|
69
|
-
if (!jwtIssuer.jwk.kty) {
|
|
70
|
-
throw new core_1.CredoError('Missing required key type (kty) in the jwk.');
|
|
71
|
-
}
|
|
72
|
-
const jwk = (0, core_1.getJwkFromJson)(jwtIssuer.jwk);
|
|
73
|
-
const key = jwk.key;
|
|
74
|
-
const jws = await jwsService.createJwsCompact(agentContext, {
|
|
75
|
-
protectedHeaderOptions: Object.assign(Object.assign({}, jwt.header), { jwk, alg: jwtIssuer.alg }),
|
|
76
|
-
payload: core_1.JwtPayload.fromJson(jwt.payload),
|
|
77
|
-
key,
|
|
78
|
-
});
|
|
79
|
-
return jws;
|
|
80
|
-
}
|
|
81
|
-
else if (jwtIssuer.method === 'x5c') {
|
|
82
|
-
const leafCertificate = core_1.X509Service.getLeafCertificate(agentContext, { certificateChain: jwtIssuer.x5c });
|
|
83
|
-
const jws = await jwsService.createJwsCompact(agentContext, {
|
|
84
|
-
protectedHeaderOptions: Object.assign(Object.assign({}, jwt.header), { alg: jwtIssuer.alg, jwk: undefined }),
|
|
85
|
-
payload: core_1.JwtPayload.fromJson(jwt.payload),
|
|
86
|
-
key: leafCertificate.publicKey,
|
|
87
|
-
});
|
|
88
|
-
return jws;
|
|
89
|
-
}
|
|
90
|
-
throw new Error(`Unsupported jwt issuer method '${jwtIssuer.method}'`);
|
|
91
|
-
};
|
|
92
|
-
}
|
|
93
|
-
async function openIdTokenIssuerToJwtIssuer(agentContext, openId4VcTokenIssuer) {
|
|
94
|
-
var _a;
|
|
95
|
-
if (openId4VcTokenIssuer.method === 'did') {
|
|
96
|
-
const key = await getKeyFromDid(agentContext, openId4VcTokenIssuer.didUrl);
|
|
97
|
-
const alg = (_a = (0, core_1.getJwkClassFromKeyType)(key.keyType)) === null || _a === void 0 ? void 0 : _a.supportedSignatureAlgorithms[0];
|
|
98
|
-
if (!alg)
|
|
99
|
-
throw new core_1.CredoError(`No supported signature algorithms for key type: ${key.keyType}`);
|
|
100
|
-
return {
|
|
101
|
-
method: openId4VcTokenIssuer.method,
|
|
102
|
-
didUrl: openId4VcTokenIssuer.didUrl,
|
|
103
|
-
alg,
|
|
104
|
-
};
|
|
105
|
-
}
|
|
106
|
-
else if (openId4VcTokenIssuer.method === 'x5c') {
|
|
107
|
-
const leafCertificate = core_1.X509Service.getLeafCertificate(agentContext, {
|
|
108
|
-
certificateChain: openId4VcTokenIssuer.x5c,
|
|
109
|
-
});
|
|
110
|
-
const jwk = (0, core_1.getJwkFromKey)(leafCertificate.publicKey);
|
|
111
|
-
const alg = jwk.supportedSignatureAlgorithms[0];
|
|
112
|
-
if (!alg) {
|
|
113
|
-
throw new core_1.CredoError(`No supported signature algorithms found key type: '${jwk.keyType}'`);
|
|
114
|
-
}
|
|
115
|
-
if (!openId4VcTokenIssuer.issuer.startsWith('https://') &&
|
|
116
|
-
!(openId4VcTokenIssuer.issuer.startsWith('http://') && agentContext.config.allowInsecureHttpUrls)) {
|
|
117
|
-
throw new core_1.CredoError('The X509 certificate issuer must be a HTTPS URI.');
|
|
118
|
-
}
|
|
119
|
-
if (!leafCertificate.sanUriNames.includes(openId4VcTokenIssuer.issuer) &&
|
|
120
|
-
!leafCertificate.sanDnsNames.includes((0, core_1.getDomainFromUrl)(openId4VcTokenIssuer.issuer))) {
|
|
121
|
-
const sanUriMessage = leafCertificate.sanUriNames.length > 0
|
|
122
|
-
? `SAN-URI names are ${leafCertificate.sanUriNames.join(', ')}`
|
|
123
|
-
: 'there are no SAN-URI names';
|
|
124
|
-
const sanDnsMessage = leafCertificate.sanDnsNames.length > 0
|
|
125
|
-
? `SAN-DNS names are ${leafCertificate.sanDnsNames.join(', ')}`
|
|
126
|
-
: 'there are no SAN-DNS names';
|
|
127
|
-
throw new Error(`The 'iss' claim in the payload does not match a 'SAN-URI' or 'SAN-DNS' name in the x5c certificate. 'iss' value is '${openId4VcTokenIssuer.issuer}', ${sanUriMessage}, ${sanDnsMessage} (for SAN-DNS only domain has to match)`);
|
|
128
|
-
}
|
|
129
|
-
return Object.assign(Object.assign({}, openId4VcTokenIssuer), { alg });
|
|
130
|
-
}
|
|
131
|
-
else if (openId4VcTokenIssuer.method === 'jwk') {
|
|
132
|
-
const alg = openId4VcTokenIssuer.jwk.supportedSignatureAlgorithms[0];
|
|
133
|
-
if (!alg) {
|
|
134
|
-
throw new core_1.CredoError(`No supported signature algorithms for key type: '${openId4VcTokenIssuer.jwk.keyType}'`);
|
|
135
|
-
}
|
|
136
|
-
return Object.assign(Object.assign({}, openId4VcTokenIssuer), { jwk: openId4VcTokenIssuer.jwk.toJson(), alg });
|
|
137
|
-
}
|
|
138
|
-
throw new core_1.CredoError(`Unsupported jwt issuer method '${openId4VcTokenIssuer.method}'`);
|
|
139
|
-
}
|
|
140
|
-
function getProofTypeFromKey(agentContext, key) {
|
|
141
|
-
const signatureSuiteRegistry = agentContext.dependencyManager.resolve(core_1.SignatureSuiteRegistry);
|
|
142
|
-
const supportedSignatureSuites = signatureSuiteRegistry.getAllByKeyType(key.keyType);
|
|
143
|
-
if (supportedSignatureSuites.length === 0) {
|
|
144
|
-
throw new core_1.CredoError(`Couldn't find a supported signature suite for the given key type '${key.keyType}'.`);
|
|
145
|
-
}
|
|
146
|
-
return supportedSignatureSuites[0].proofType;
|
|
147
|
-
}
|
|
148
|
-
function addSecondsToDate(date, seconds) {
|
|
149
|
-
return new Date(date.getTime() + seconds * 1000);
|
|
150
|
-
}
|
|
151
|
-
function dateToSeconds(date) {
|
|
152
|
-
return Math.floor(date.getTime() * 1000);
|
|
153
|
-
}
|
|
154
|
-
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/shared/utils.ts"],"names":[],"mappings":"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"}
|