@credo-ts/openid4vc 0.6.1-pr-2091-20241119140918 → 0.6.2-alpha-20251210145840

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (409) hide show
  1. package/build/OpenId4VcApi.d.mts +24 -0
  2. package/build/OpenId4VcApi.d.mts.map +1 -0
  3. package/build/OpenId4VcApi.mjs +35 -0
  4. package/build/OpenId4VcApi.mjs.map +1 -0
  5. package/build/OpenId4VcModule.d.mts +30 -0
  6. package/build/OpenId4VcModule.d.mts.map +1 -0
  7. package/build/OpenId4VcModule.mjs +42 -0
  8. package/build/OpenId4VcModule.mjs.map +1 -0
  9. package/build/OpenId4VcModuleConfig.d.mts +44 -0
  10. package/build/OpenId4VcModuleConfig.d.mts.map +1 -0
  11. package/build/OpenId4VcModuleConfig.mjs +24 -0
  12. package/build/OpenId4VcModuleConfig.mjs.map +1 -0
  13. package/build/_virtual/_@oxc-project_runtime@0.99.0/helpers/decorate.mjs +10 -0
  14. package/build/_virtual/_@oxc-project_runtime@0.99.0/helpers/decorateMetadata.mjs +7 -0
  15. package/build/_virtual/_@oxc-project_runtime@0.99.0/helpers/decorateParam.mjs +9 -0
  16. package/build/index.d.mts +42 -0
  17. package/build/index.mjs +37 -0
  18. package/build/openid4vc-holder/OpenId4VcHolderApi.d.mts +238 -0
  19. package/build/openid4vc-holder/OpenId4VcHolderApi.d.mts.map +1 -0
  20. package/build/openid4vc-holder/OpenId4VcHolderApi.mjs +174 -0
  21. package/build/openid4vc-holder/OpenId4VcHolderApi.mjs.map +1 -0
  22. package/build/openid4vc-holder/OpenId4VcHolderModule.d.mts +17 -0
  23. package/build/openid4vc-holder/OpenId4VcHolderModule.d.mts.map +1 -0
  24. package/build/openid4vc-holder/OpenId4VcHolderModule.mjs +23 -0
  25. package/build/openid4vc-holder/OpenId4VcHolderModule.mjs.map +1 -0
  26. package/build/openid4vc-holder/OpenId4VciHolderService.d.mts +69 -0
  27. package/build/openid4vc-holder/OpenId4VciHolderService.d.mts.map +1 -0
  28. package/build/openid4vc-holder/OpenId4VciHolderService.mjs +751 -0
  29. package/build/openid4vc-holder/OpenId4VciHolderService.mjs.map +1 -0
  30. package/build/openid4vc-holder/OpenId4VciHolderServiceOptions.d.mts +398 -0
  31. package/build/openid4vc-holder/OpenId4VciHolderServiceOptions.d.mts.map +1 -0
  32. package/build/openid4vc-holder/OpenId4VciHolderServiceOptions.mjs +16 -0
  33. package/build/openid4vc-holder/OpenId4VciHolderServiceOptions.mjs.map +1 -0
  34. package/build/openid4vc-holder/OpenId4vpHolderService.d.mts +130 -0
  35. package/build/openid4vc-holder/OpenId4vpHolderService.d.mts.map +1 -0
  36. package/build/openid4vc-holder/OpenId4vpHolderService.mjs +278 -0
  37. package/build/openid4vc-holder/OpenId4vpHolderService.mjs.map +1 -0
  38. package/build/openid4vc-holder/OpenId4vpHolderServiceOptions.d.mts +112 -0
  39. package/build/openid4vc-holder/OpenId4vpHolderServiceOptions.d.mts.map +1 -0
  40. package/build/openid4vc-holder/index.d.mts +6 -0
  41. package/build/openid4vc-holder/index.mjs +5 -0
  42. package/build/openid4vc-issuer/OpenId4VcIssuanceSessionState.d.mts +16 -0
  43. package/build/openid4vc-issuer/OpenId4VcIssuanceSessionState.d.mts.map +1 -0
  44. package/build/openid4vc-issuer/OpenId4VcIssuanceSessionState.mjs +18 -0
  45. package/build/openid4vc-issuer/OpenId4VcIssuanceSessionState.mjs.map +1 -0
  46. package/build/openid4vc-issuer/OpenId4VcIssuerApi.d.mts +137 -0
  47. package/build/openid4vc-issuer/OpenId4VcIssuerApi.d.mts.map +1 -0
  48. package/build/openid4vc-issuer/OpenId4VcIssuerApi.mjs +108 -0
  49. package/build/openid4vc-issuer/OpenId4VcIssuerApi.mjs.map +1 -0
  50. package/build/openid4vc-issuer/OpenId4VcIssuerEvents.d.mts +19 -0
  51. package/build/openid4vc-issuer/OpenId4VcIssuerEvents.d.mts.map +1 -0
  52. package/build/openid4vc-issuer/OpenId4VcIssuerEvents.mjs +9 -0
  53. package/build/openid4vc-issuer/OpenId4VcIssuerEvents.mjs.map +1 -0
  54. package/build/openid4vc-issuer/OpenId4VcIssuerModule.d.mts +27 -0
  55. package/build/openid4vc-issuer/OpenId4VcIssuerModule.d.mts.map +1 -0
  56. package/build/openid4vc-issuer/OpenId4VcIssuerModule.mjs +150 -0
  57. package/build/openid4vc-issuer/OpenId4VcIssuerModule.mjs.map +1 -0
  58. package/build/openid4vc-issuer/OpenId4VcIssuerModuleConfig.d.mts +279 -0
  59. package/build/openid4vc-issuer/OpenId4VcIssuerModuleConfig.d.mts.map +1 -0
  60. package/build/openid4vc-issuer/OpenId4VcIssuerModuleConfig.mjs +179 -0
  61. package/build/openid4vc-issuer/OpenId4VcIssuerModuleConfig.mjs.map +1 -0
  62. package/build/openid4vc-issuer/OpenId4VcIssuerService.d.mts +182 -0
  63. package/build/openid4vc-issuer/OpenId4VcIssuerService.d.mts.map +1 -0
  64. package/build/openid4vc-issuer/OpenId4VcIssuerService.mjs +881 -0
  65. package/build/openid4vc-issuer/OpenId4VcIssuerService.mjs.map +1 -0
  66. package/build/openid4vc-issuer/OpenId4VcIssuerServiceOptions.d.mts +340 -0
  67. package/build/openid4vc-issuer/OpenId4VcIssuerServiceOptions.d.mts.map +1 -0
  68. package/build/openid4vc-issuer/OpenId4VcIssuerServiceOptions.mjs +1 -0
  69. package/build/openid4vc-issuer/index.d.mts +11 -0
  70. package/build/openid4vc-issuer/index.mjs +11 -0
  71. package/build/openid4vc-issuer/repository/OpenId4VcIssuanceSessionRecord.d.mts +300 -0
  72. package/build/openid4vc-issuer/repository/OpenId4VcIssuanceSessionRecord.d.mts.map +1 -0
  73. package/build/openid4vc-issuer/repository/OpenId4VcIssuanceSessionRecord.mjs +102 -0
  74. package/build/openid4vc-issuer/repository/OpenId4VcIssuanceSessionRecord.mjs.map +1 -0
  75. package/build/openid4vc-issuer/repository/OpenId4VcIssuanceSessionRepository.d.mts +10 -0
  76. package/build/openid4vc-issuer/repository/OpenId4VcIssuanceSessionRepository.d.mts.map +1 -0
  77. package/build/openid4vc-issuer/repository/OpenId4VcIssuanceSessionRepository.mjs +22 -0
  78. package/build/openid4vc-issuer/repository/OpenId4VcIssuanceSessionRepository.mjs.map +1 -0
  79. package/build/openid4vc-issuer/repository/OpenId4VcIssuerRecord.d.mts +84 -0
  80. package/build/openid4vc-issuer/repository/OpenId4VcIssuerRecord.d.mts.map +1 -0
  81. package/build/openid4vc-issuer/repository/OpenId4VcIssuerRecord.mjs +89 -0
  82. package/build/openid4vc-issuer/repository/OpenId4VcIssuerRecord.mjs.map +1 -0
  83. package/build/openid4vc-issuer/repository/OpenId4VcIssuerRepository.d.mts +12 -0
  84. package/build/openid4vc-issuer/repository/OpenId4VcIssuerRepository.d.mts.map +1 -0
  85. package/build/openid4vc-issuer/repository/OpenId4VcIssuerRepository.mjs +28 -0
  86. package/build/openid4vc-issuer/repository/OpenId4VcIssuerRepository.mjs.map +1 -0
  87. package/build/openid4vc-issuer/repository/index.d.mts +4 -0
  88. package/build/openid4vc-issuer/repository/index.mjs +4 -0
  89. package/build/openid4vc-issuer/router/accessTokenEndpoint.mjs +199 -0
  90. package/build/openid4vc-issuer/router/accessTokenEndpoint.mjs.map +1 -0
  91. package/build/openid4vc-issuer/router/authorizationChallengeEndpoint.mjs +241 -0
  92. package/build/openid4vc-issuer/router/authorizationChallengeEndpoint.mjs.map +1 -0
  93. package/build/openid4vc-issuer/router/authorizationEndpoint.mjs +51 -0
  94. package/build/openid4vc-issuer/router/authorizationEndpoint.mjs.map +1 -0
  95. package/build/openid4vc-issuer/router/authorizationServerMetadataEndpoint.mjs +25 -0
  96. package/build/openid4vc-issuer/router/authorizationServerMetadataEndpoint.mjs.map +1 -0
  97. package/build/openid4vc-issuer/router/credentialEndpoint.mjs +142 -0
  98. package/build/openid4vc-issuer/router/credentialEndpoint.mjs.map +1 -0
  99. package/build/openid4vc-issuer/router/credentialOfferEndpoint.mjs +38 -0
  100. package/build/openid4vc-issuer/router/credentialOfferEndpoint.mjs.map +1 -0
  101. package/build/openid4vc-issuer/router/deferredCredentialEndpoint.mjs +84 -0
  102. package/build/openid4vc-issuer/router/deferredCredentialEndpoint.mjs.map +1 -0
  103. package/build/openid4vc-issuer/router/index.mjs +12 -0
  104. package/build/openid4vc-issuer/router/issuerMetadataEndpoint.mjs +43 -0
  105. package/build/openid4vc-issuer/router/issuerMetadataEndpoint.mjs.map +1 -0
  106. package/build/openid4vc-issuer/router/jwksEndpoint.mjs +18 -0
  107. package/build/openid4vc-issuer/router/jwksEndpoint.mjs.map +1 -0
  108. package/build/openid4vc-issuer/router/nonceEndpoint.mjs +29 -0
  109. package/build/openid4vc-issuer/router/nonceEndpoint.mjs.map +1 -0
  110. package/build/openid4vc-issuer/router/pushedAuthorizationRequestEndpoint.mjs +164 -0
  111. package/build/openid4vc-issuer/router/pushedAuthorizationRequestEndpoint.mjs.map +1 -0
  112. package/build/openid4vc-issuer/router/redirectEndpoint.mjs +124 -0
  113. package/build/openid4vc-issuer/router/redirectEndpoint.mjs.map +1 -0
  114. package/build/openid4vc-issuer/util/txCode.mjs +18 -0
  115. package/build/openid4vc-issuer/util/txCode.mjs.map +1 -0
  116. package/build/openid4vc-verifier/OpenId4VcVerificationSessionState.d.mts +10 -0
  117. package/build/openid4vc-verifier/OpenId4VcVerificationSessionState.d.mts.map +1 -0
  118. package/build/openid4vc-verifier/OpenId4VcVerificationSessionState.mjs +12 -0
  119. package/build/openid4vc-verifier/OpenId4VcVerificationSessionState.mjs.map +1 -0
  120. package/build/openid4vc-verifier/OpenId4VcVerifierApi.d.mts +60 -0
  121. package/build/openid4vc-verifier/OpenId4VcVerifierApi.d.mts.map +1 -0
  122. package/build/openid4vc-verifier/OpenId4VcVerifierApi.mjs +83 -0
  123. package/build/openid4vc-verifier/OpenId4VcVerifierApi.mjs.map +1 -0
  124. package/build/openid4vc-verifier/OpenId4VcVerifierEvents.d.mts +19 -0
  125. package/build/openid4vc-verifier/OpenId4VcVerifierEvents.d.mts.map +1 -0
  126. package/build/openid4vc-verifier/OpenId4VcVerifierEvents.mjs +9 -0
  127. package/build/openid4vc-verifier/OpenId4VcVerifierEvents.mjs.map +1 -0
  128. package/build/openid4vc-verifier/OpenId4VcVerifierModule.d.mts +25 -0
  129. package/build/openid4vc-verifier/OpenId4VcVerifierModule.d.mts.map +1 -0
  130. package/build/openid4vc-verifier/OpenId4VcVerifierModule.mjs +91 -0
  131. package/build/openid4vc-verifier/OpenId4VcVerifierModule.mjs.map +1 -0
  132. package/build/openid4vc-verifier/OpenId4VcVerifierModuleConfig.d.mts +55 -0
  133. package/build/openid4vc-verifier/OpenId4VcVerifierModuleConfig.d.mts.map +1 -0
  134. package/build/openid4vc-verifier/OpenId4VcVerifierModuleConfig.mjs +36 -0
  135. package/build/openid4vc-verifier/OpenId4VcVerifierModuleConfig.mjs.map +1 -0
  136. package/build/openid4vc-verifier/OpenId4VpVerifierService.d.mts +60 -0
  137. package/build/openid4vc-verifier/OpenId4VpVerifierService.d.mts.map +1 -0
  138. package/build/openid4vc-verifier/OpenId4VpVerifierService.mjs +714 -0
  139. package/build/openid4vc-verifier/OpenId4VpVerifierService.mjs.map +1 -0
  140. package/build/openid4vc-verifier/OpenId4VpVerifierServiceOptions.d.mts +194 -0
  141. package/build/openid4vc-verifier/OpenId4VpVerifierServiceOptions.d.mts.map +1 -0
  142. package/build/openid4vc-verifier/index.d.mts +12 -0
  143. package/build/openid4vc-verifier/index.mjs +11 -0
  144. package/build/openid4vc-verifier/repository/OpenId4VcVerificationSessionRecord.d.mts +129 -0
  145. package/build/openid4vc-verifier/repository/OpenId4VcVerificationSessionRecord.d.mts.map +1 -0
  146. package/build/openid4vc-verifier/repository/OpenId4VcVerificationSessionRecord.mjs +64 -0
  147. package/build/openid4vc-verifier/repository/OpenId4VcVerificationSessionRecord.mjs.map +1 -0
  148. package/build/openid4vc-verifier/repository/OpenId4VcVerificationSessionRepository.d.mts +10 -0
  149. package/build/openid4vc-verifier/repository/OpenId4VcVerificationSessionRepository.d.mts.map +1 -0
  150. package/build/openid4vc-verifier/repository/OpenId4VcVerificationSessionRepository.mjs +22 -0
  151. package/build/openid4vc-verifier/repository/OpenId4VcVerificationSessionRepository.mjs.map +1 -0
  152. package/build/openid4vc-verifier/repository/OpenId4VcVerifierRecord.d.mts +33 -0
  153. package/build/openid4vc-verifier/repository/OpenId4VcVerifierRecord.d.mts.map +1 -0
  154. package/build/openid4vc-verifier/repository/OpenId4VcVerifierRecord.mjs +32 -0
  155. package/build/openid4vc-verifier/repository/OpenId4VcVerifierRecord.mjs.map +1 -0
  156. package/build/openid4vc-verifier/repository/OpenId4VcVerifierRepository.d.mts +12 -0
  157. package/build/openid4vc-verifier/repository/OpenId4VcVerifierRepository.d.mts.map +1 -0
  158. package/build/openid4vc-verifier/repository/OpenId4VcVerifierRepository.mjs +28 -0
  159. package/build/openid4vc-verifier/repository/OpenId4VcVerifierRepository.mjs.map +1 -0
  160. package/build/openid4vc-verifier/repository/index.d.mts +4 -0
  161. package/build/openid4vc-verifier/repository/index.mjs +4 -0
  162. package/build/openid4vc-verifier/router/authorizationEndpoint.mjs +117 -0
  163. package/build/openid4vc-verifier/router/authorizationEndpoint.mjs.map +1 -0
  164. package/build/openid4vc-verifier/router/authorizationRequestEndpoint.mjs +39 -0
  165. package/build/openid4vc-verifier/router/authorizationRequestEndpoint.mjs.map +1 -0
  166. package/build/openid4vc-verifier/router/index.mjs +1 -0
  167. package/build/shared/callbacks.d.mts +47 -0
  168. package/build/shared/callbacks.d.mts.map +1 -0
  169. package/build/shared/callbacks.mjs +279 -0
  170. package/build/shared/callbacks.mjs.map +1 -0
  171. package/build/shared/index.d.mts +7 -0
  172. package/build/shared/index.mjs +4 -0
  173. package/build/shared/issuerMetadataUtils.d.mts +22 -0
  174. package/build/shared/issuerMetadataUtils.d.mts.map +1 -0
  175. package/build/shared/issuerMetadataUtils.mjs +30 -0
  176. package/build/shared/issuerMetadataUtils.mjs.map +1 -0
  177. package/build/shared/models/CredentialHolderBinding.d.mts +71 -0
  178. package/build/shared/models/CredentialHolderBinding.d.mts.map +1 -0
  179. package/build/shared/models/CredentialHolderBinding.mjs +1 -0
  180. package/build/shared/models/OpenId4VcJwtIssuer.d.mts +46 -0
  181. package/build/shared/models/OpenId4VcJwtIssuer.d.mts.map +1 -0
  182. package/build/shared/models/OpenId4VcJwtIssuer.mjs +1 -0
  183. package/build/shared/models/OpenId4VciAuthorizationServerConfig.d.mts +71 -0
  184. package/build/shared/models/OpenId4VciAuthorizationServerConfig.d.mts.map +1 -0
  185. package/build/shared/models/OpenId4VciCredentialFormatProfile.d.mts +12 -0
  186. package/build/shared/models/OpenId4VciCredentialFormatProfile.d.mts.map +1 -0
  187. package/build/shared/models/OpenId4VciCredentialFormatProfile.mjs +14 -0
  188. package/build/shared/models/OpenId4VciCredentialFormatProfile.mjs.map +1 -0
  189. package/build/shared/models/index.d.mts +30 -0
  190. package/build/shared/models/index.d.mts.map +1 -0
  191. package/build/shared/models/index.mjs +6 -0
  192. package/build/shared/router/context.mjs +52 -0
  193. package/build/shared/router/context.mjs.map +1 -0
  194. package/build/shared/router/express.browser.d.mts +5 -0
  195. package/build/shared/router/express.browser.d.mts.map +1 -0
  196. package/build/shared/router/express.browser.mjs +8 -0
  197. package/build/shared/router/express.browser.mjs.map +1 -0
  198. package/build/shared/router/express.mjs +10 -0
  199. package/build/shared/router/express.mjs.map +1 -0
  200. package/build/shared/router/express.native.d.mts +5 -0
  201. package/build/shared/router/express.native.d.mts.map +1 -0
  202. package/build/shared/router/express.native.mjs +8 -0
  203. package/build/shared/router/express.native.mjs.map +1 -0
  204. package/build/shared/router/index.mjs +3 -0
  205. package/build/shared/router/tenants.mjs +36 -0
  206. package/build/shared/router/tenants.mjs.map +1 -0
  207. package/build/shared/transactionData.mjs +19 -0
  208. package/build/shared/transactionData.mjs.map +1 -0
  209. package/build/shared/utils.mjs +90 -0
  210. package/build/shared/utils.mjs.map +1 -0
  211. package/package.json +30 -23
  212. package/build/index.d.ts +0 -4
  213. package/build/index.js +0 -21
  214. package/build/index.js.map +0 -1
  215. package/build/openid4vc-holder/OpenId4VcHolderApi.d.ts +0 -124
  216. package/build/openid4vc-holder/OpenId4VcHolderApi.js +0 -155
  217. package/build/openid4vc-holder/OpenId4VcHolderApi.js.map +0 -1
  218. package/build/openid4vc-holder/OpenId4VcHolderModule.d.ts +0 -13
  219. package/build/openid4vc-holder/OpenId4VcHolderModule.js +0 -35
  220. package/build/openid4vc-holder/OpenId4VcHolderModule.js.map +0 -1
  221. package/build/openid4vc-holder/OpenId4VciHolderService.d.ts +0 -72
  222. package/build/openid4vc-holder/OpenId4VciHolderService.js +0 -569
  223. package/build/openid4vc-holder/OpenId4VciHolderService.js.map +0 -1
  224. package/build/openid4vc-holder/OpenId4VciHolderServiceOptions.d.ts +0 -238
  225. package/build/openid4vc-holder/OpenId4VciHolderServiceOptions.js +0 -14
  226. package/build/openid4vc-holder/OpenId4VciHolderServiceOptions.js.map +0 -1
  227. package/build/openid4vc-holder/OpenId4vcSiopHolderService.d.ts +0 -32
  228. package/build/openid4vc-holder/OpenId4vcSiopHolderService.js +0 -302
  229. package/build/openid4vc-holder/OpenId4vcSiopHolderService.js.map +0 -1
  230. package/build/openid4vc-holder/OpenId4vcSiopHolderServiceOptions.d.ts +0 -38
  231. package/build/openid4vc-holder/OpenId4vcSiopHolderServiceOptions.js +0 -3
  232. package/build/openid4vc-holder/OpenId4vcSiopHolderServiceOptions.js.map +0 -1
  233. package/build/openid4vc-holder/index.d.ts +0 -6
  234. package/build/openid4vc-holder/index.js +0 -23
  235. package/build/openid4vc-holder/index.js.map +0 -1
  236. package/build/openid4vc-issuer/OpenId4VcIssuanceSessionState.d.ts +0 -12
  237. package/build/openid4vc-issuer/OpenId4VcIssuanceSessionState.js +0 -19
  238. package/build/openid4vc-issuer/OpenId4VcIssuanceSessionState.js.map +0 -1
  239. package/build/openid4vc-issuer/OpenId4VcIssuerApi.d.ts +0 -101
  240. package/build/openid4vc-issuer/OpenId4VcIssuerApi.js +0 -110
  241. package/build/openid4vc-issuer/OpenId4VcIssuerApi.js.map +0 -1
  242. package/build/openid4vc-issuer/OpenId4VcIssuerEvents.d.ts +0 -13
  243. package/build/openid4vc-issuer/OpenId4VcIssuerEvents.js +0 -8
  244. package/build/openid4vc-issuer/OpenId4VcIssuerEvents.js.map +0 -1
  245. package/build/openid4vc-issuer/OpenId4VcIssuerModule.d.ts +0 -21
  246. package/build/openid4vc-issuer/OpenId4VcIssuerModule.js +0 -121
  247. package/build/openid4vc-issuer/OpenId4VcIssuerModule.js.map +0 -1
  248. package/build/openid4vc-issuer/OpenId4VcIssuerModuleConfig.d.ts +0 -190
  249. package/build/openid4vc-issuer/OpenId4VcIssuerModuleConfig.js +0 -141
  250. package/build/openid4vc-issuer/OpenId4VcIssuerModuleConfig.js.map +0 -1
  251. package/build/openid4vc-issuer/OpenId4VcIssuerService.d.ts +0 -116
  252. package/build/openid4vc-issuer/OpenId4VcIssuerService.js +0 -698
  253. package/build/openid4vc-issuer/OpenId4VcIssuerService.js.map +0 -1
  254. package/build/openid4vc-issuer/OpenId4VcIssuerServiceOptions.d.ts +0 -229
  255. package/build/openid4vc-issuer/OpenId4VcIssuerServiceOptions.js +0 -3
  256. package/build/openid4vc-issuer/OpenId4VcIssuerServiceOptions.js.map +0 -1
  257. package/build/openid4vc-issuer/index.d.ts +0 -8
  258. package/build/openid4vc-issuer/index.js +0 -27
  259. package/build/openid4vc-issuer/index.js.map +0 -1
  260. package/build/openid4vc-issuer/repository/OpenId4VcIssuanceSessionRecord.d.ts +0 -160
  261. package/build/openid4vc-issuer/repository/OpenId4VcIssuanceSessionRecord.js +0 -88
  262. package/build/openid4vc-issuer/repository/OpenId4VcIssuanceSessionRecord.js.map +0 -1
  263. package/build/openid4vc-issuer/repository/OpenId4VcIssuanceSessionRepository.d.ts +0 -5
  264. package/build/openid4vc-issuer/repository/OpenId4VcIssuanceSessionRepository.js +0 -29
  265. package/build/openid4vc-issuer/repository/OpenId4VcIssuanceSessionRepository.js.map +0 -1
  266. package/build/openid4vc-issuer/repository/OpenId4VcIssuerRecord.d.ts +0 -56
  267. package/build/openid4vc-issuer/repository/OpenId4VcIssuerRecord.js +0 -83
  268. package/build/openid4vc-issuer/repository/OpenId4VcIssuerRecord.js.map +0 -1
  269. package/build/openid4vc-issuer/repository/OpenId4VcIssuerRepository.d.ts +0 -8
  270. package/build/openid4vc-issuer/repository/OpenId4VcIssuerRepository.js +0 -35
  271. package/build/openid4vc-issuer/repository/OpenId4VcIssuerRepository.js.map +0 -1
  272. package/build/openid4vc-issuer/repository/index.d.ts +0 -4
  273. package/build/openid4vc-issuer/repository/index.js +0 -21
  274. package/build/openid4vc-issuer/repository/index.js.map +0 -1
  275. package/build/openid4vc-issuer/router/accessTokenEndpoint.d.ts +0 -5
  276. package/build/openid4vc-issuer/router/accessTokenEndpoint.js +0 -164
  277. package/build/openid4vc-issuer/router/accessTokenEndpoint.js.map +0 -1
  278. package/build/openid4vc-issuer/router/authorizationChallengeEndpoint.d.ts +0 -3
  279. package/build/openid4vc-issuer/router/authorizationChallengeEndpoint.js +0 -213
  280. package/build/openid4vc-issuer/router/authorizationChallengeEndpoint.js.map +0 -1
  281. package/build/openid4vc-issuer/router/authorizationServerMetadataEndpoint.d.ts +0 -6
  282. package/build/openid4vc-issuer/router/authorizationServerMetadataEndpoint.js +0 -25
  283. package/build/openid4vc-issuer/router/authorizationServerMetadataEndpoint.js.map +0 -1
  284. package/build/openid4vc-issuer/router/credentialEndpoint.d.ts +0 -3
  285. package/build/openid4vc-issuer/router/credentialEndpoint.js +0 -176
  286. package/build/openid4vc-issuer/router/credentialEndpoint.js.map +0 -1
  287. package/build/openid4vc-issuer/router/credentialOfferEndpoint.d.ts +0 -3
  288. package/build/openid4vc-issuer/router/credentialOfferEndpoint.js +0 -45
  289. package/build/openid4vc-issuer/router/credentialOfferEndpoint.js.map +0 -1
  290. package/build/openid4vc-issuer/router/index.d.ts +0 -9
  291. package/build/openid4vc-issuer/router/index.js +0 -20
  292. package/build/openid4vc-issuer/router/index.js.map +0 -1
  293. package/build/openid4vc-issuer/router/issuerMetadataEndpoint.d.ts +0 -2
  294. package/build/openid4vc-issuer/router/issuerMetadataEndpoint.js +0 -26
  295. package/build/openid4vc-issuer/router/issuerMetadataEndpoint.js.map +0 -1
  296. package/build/openid4vc-issuer/router/jwksEndpoint.d.ts +0 -3
  297. package/build/openid4vc-issuer/router/jwksEndpoint.js +0 -20
  298. package/build/openid4vc-issuer/router/jwksEndpoint.js.map +0 -1
  299. package/build/openid4vc-issuer/router/nonceEndpoint.d.ts +0 -3
  300. package/build/openid4vc-issuer/router/nonceEndpoint.js +0 -26
  301. package/build/openid4vc-issuer/router/nonceEndpoint.js.map +0 -1
  302. package/build/openid4vc-issuer/router/requestContext.d.ts +0 -5
  303. package/build/openid4vc-issuer/router/requestContext.js +0 -3
  304. package/build/openid4vc-issuer/router/requestContext.js.map +0 -1
  305. package/build/openid4vc-issuer/util/txCode.d.ts +0 -3
  306. package/build/openid4vc-issuer/util/txCode.js +0 -18
  307. package/build/openid4vc-issuer/util/txCode.js.map +0 -1
  308. package/build/openid4vc-verifier/OpenId4VcSiopVerifierService.d.ts +0 -55
  309. package/build/openid4vc-verifier/OpenId4VcSiopVerifierService.js +0 -498
  310. package/build/openid4vc-verifier/OpenId4VcSiopVerifierService.js.map +0 -1
  311. package/build/openid4vc-verifier/OpenId4VcSiopVerifierServiceOptions.d.ts +0 -77
  312. package/build/openid4vc-verifier/OpenId4VcSiopVerifierServiceOptions.js +0 -3
  313. package/build/openid4vc-verifier/OpenId4VcSiopVerifierServiceOptions.js.map +0 -1
  314. package/build/openid4vc-verifier/OpenId4VcVerificationSessionState.d.ts +0 -6
  315. package/build/openid4vc-verifier/OpenId4VcVerificationSessionState.js +0 -11
  316. package/build/openid4vc-verifier/OpenId4VcVerificationSessionState.js.map +0 -1
  317. package/build/openid4vc-verifier/OpenId4VcVerifierApi.d.ts +0 -61
  318. package/build/openid4vc-verifier/OpenId4VcVerifierApi.js +0 -108
  319. package/build/openid4vc-verifier/OpenId4VcVerifierApi.js.map +0 -1
  320. package/build/openid4vc-verifier/OpenId4VcVerifierEvents.d.ts +0 -13
  321. package/build/openid4vc-verifier/OpenId4VcVerifierEvents.js +0 -8
  322. package/build/openid4vc-verifier/OpenId4VcVerifierEvents.js.map +0 -1
  323. package/build/openid4vc-verifier/OpenId4VcVerifierModule.d.ts +0 -21
  324. package/build/openid4vc-verifier/OpenId4VcVerifierModule.js +0 -109
  325. package/build/openid4vc-verifier/OpenId4VcVerifierModule.js.map +0 -1
  326. package/build/openid4vc-verifier/OpenId4VcVerifierModuleConfig.d.ts +0 -31
  327. package/build/openid4vc-verifier/OpenId4VcVerifierModuleConfig.js +0 -28
  328. package/build/openid4vc-verifier/OpenId4VcVerifierModuleConfig.js.map +0 -1
  329. package/build/openid4vc-verifier/index.d.ts +0 -8
  330. package/build/openid4vc-verifier/index.js +0 -25
  331. package/build/openid4vc-verifier/index.js.map +0 -1
  332. package/build/openid4vc-verifier/repository/OpenId4VcRelyingPartyEventEmitter.d.ts +0 -49
  333. package/build/openid4vc-verifier/repository/OpenId4VcRelyingPartyEventEmitter.js +0 -234
  334. package/build/openid4vc-verifier/repository/OpenId4VcRelyingPartyEventEmitter.js.map +0 -1
  335. package/build/openid4vc-verifier/repository/OpenId4VcRelyingPartySessionManager.d.ts +0 -19
  336. package/build/openid4vc-verifier/repository/OpenId4VcRelyingPartySessionManager.js +0 -146
  337. package/build/openid4vc-verifier/repository/OpenId4VcRelyingPartySessionManager.js.map +0 -1
  338. package/build/openid4vc-verifier/repository/OpenId4VcVerificationSessionRecord.d.ts +0 -71
  339. package/build/openid4vc-verifier/repository/OpenId4VcVerificationSessionRecord.js +0 -46
  340. package/build/openid4vc-verifier/repository/OpenId4VcVerificationSessionRecord.js.map +0 -1
  341. package/build/openid4vc-verifier/repository/OpenId4VcVerificationSessionRepository.d.ts +0 -5
  342. package/build/openid4vc-verifier/repository/OpenId4VcVerificationSessionRepository.js +0 -29
  343. package/build/openid4vc-verifier/repository/OpenId4VcVerificationSessionRepository.js.map +0 -1
  344. package/build/openid4vc-verifier/repository/OpenId4VcVerifierRecord.d.ts +0 -29
  345. package/build/openid4vc-verifier/repository/OpenId4VcVerifierRecord.js +0 -29
  346. package/build/openid4vc-verifier/repository/OpenId4VcVerifierRecord.js.map +0 -1
  347. package/build/openid4vc-verifier/repository/OpenId4VcVerifierRepository.d.ts +0 -8
  348. package/build/openid4vc-verifier/repository/OpenId4VcVerifierRepository.js +0 -35
  349. package/build/openid4vc-verifier/repository/OpenId4VcVerifierRepository.js.map +0 -1
  350. package/build/openid4vc-verifier/repository/index.d.ts +0 -4
  351. package/build/openid4vc-verifier/repository/index.js +0 -21
  352. package/build/openid4vc-verifier/repository/index.js.map +0 -1
  353. package/build/openid4vc-verifier/router/authorizationEndpoint.d.ts +0 -11
  354. package/build/openid4vc-verifier/router/authorizationEndpoint.js +0 -102
  355. package/build/openid4vc-verifier/router/authorizationEndpoint.js.map +0 -1
  356. package/build/openid4vc-verifier/router/authorizationRequestEndpoint.d.ts +0 -11
  357. package/build/openid4vc-verifier/router/authorizationRequestEndpoint.js +0 -63
  358. package/build/openid4vc-verifier/router/authorizationRequestEndpoint.js.map +0 -1
  359. package/build/openid4vc-verifier/router/index.d.ts +0 -2
  360. package/build/openid4vc-verifier/router/index.js +0 -6
  361. package/build/openid4vc-verifier/router/index.js.map +0 -1
  362. package/build/openid4vc-verifier/router/requestContext.d.ts +0 -5
  363. package/build/openid4vc-verifier/router/requestContext.js +0 -3
  364. package/build/openid4vc-verifier/router/requestContext.js.map +0 -1
  365. package/build/shared/callbacks.d.ts +0 -18
  366. package/build/shared/callbacks.js +0 -81
  367. package/build/shared/callbacks.js.map +0 -1
  368. package/build/shared/index.d.ts +0 -2
  369. package/build/shared/index.js +0 -19
  370. package/build/shared/index.js.map +0 -1
  371. package/build/shared/issuerMetadataUtils.d.ts +0 -158
  372. package/build/shared/issuerMetadataUtils.js +0 -38
  373. package/build/shared/issuerMetadataUtils.js.map +0 -1
  374. package/build/shared/models/CredentialHolderBinding.d.ts +0 -13
  375. package/build/shared/models/CredentialHolderBinding.js +0 -3
  376. package/build/shared/models/CredentialHolderBinding.js.map +0 -1
  377. package/build/shared/models/OpenId4VcJwtIssuer.d.ts +0 -28
  378. package/build/shared/models/OpenId4VcJwtIssuer.js +0 -3
  379. package/build/shared/models/OpenId4VcJwtIssuer.js.map +0 -1
  380. package/build/shared/models/OpenId4VciAuthorizationServerConfig.d.ts +0 -10
  381. package/build/shared/models/OpenId4VciAuthorizationServerConfig.js +0 -3
  382. package/build/shared/models/OpenId4VciAuthorizationServerConfig.js.map +0 -1
  383. package/build/shared/models/OpenId4VciCredentialFormatProfile.d.ts +0 -7
  384. package/build/shared/models/OpenId4VciCredentialFormatProfile.js +0 -12
  385. package/build/shared/models/OpenId4VciCredentialFormatProfile.js.map +0 -1
  386. package/build/shared/models/index.d.ts +0 -24
  387. package/build/shared/models/index.js +0 -25
  388. package/build/shared/models/index.js.map +0 -1
  389. package/build/shared/router/context.d.ts +0 -17
  390. package/build/shared/router/context.js +0 -76
  391. package/build/shared/router/context.js.map +0 -1
  392. package/build/shared/router/express.d.ts +0 -2
  393. package/build/shared/router/express.js +0 -15
  394. package/build/shared/router/express.js.map +0 -1
  395. package/build/shared/router/express.native.d.ts +0 -1
  396. package/build/shared/router/express.native.js +0 -7
  397. package/build/shared/router/express.native.js.map +0 -1
  398. package/build/shared/router/index.d.ts +0 -3
  399. package/build/shared/router/index.js +0 -20
  400. package/build/shared/router/index.js.map +0 -1
  401. package/build/shared/router/tenants.d.ts +0 -13
  402. package/build/shared/router/tenants.js +0 -49
  403. package/build/shared/router/tenants.js.map +0 -1
  404. package/build/shared/transform.d.ts +0 -5
  405. package/build/shared/transform.js +0 -73
  406. package/build/shared/transform.js.map +0 -1
  407. package/build/shared/utils.d.ts +0 -22
  408. package/build/shared/utils.js +0 -154
  409. 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"}