@pagopa/io-react-native-wallet 3.1.2 → 3.3.0

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 (360) hide show
  1. package/lib/commonjs/credential/issuance/README.md +44 -17
  2. package/lib/commonjs/credential/issuance/common/02-start-user-authorization.js +4 -3
  3. package/lib/commonjs/credential/issuance/common/02-start-user-authorization.js.map +1 -1
  4. package/lib/commonjs/credential/issuance/common/06-verify-and-parse-credential.sdjwt.js +37 -8
  5. package/lib/commonjs/credential/issuance/common/06-verify-and-parse-credential.sdjwt.js.map +1 -1
  6. package/lib/commonjs/credential/issuance/mrtd-pop/02-init-challenge.js +46 -38
  7. package/lib/commonjs/credential/issuance/mrtd-pop/02-init-challenge.js.map +1 -1
  8. package/lib/commonjs/credential/issuance/mrtd-pop/03-validate-challenge.js +58 -51
  9. package/lib/commonjs/credential/issuance/mrtd-pop/03-validate-challenge.js.map +1 -1
  10. package/lib/commonjs/credential/issuance/mrtd-pop/index.js +21 -5
  11. package/lib/commonjs/credential/issuance/mrtd-pop/index.js.map +1 -1
  12. package/lib/commonjs/credential/issuance/v1.0.0/02-start-user-authorization.js +3 -3
  13. package/lib/commonjs/credential/issuance/v1.0.0/02-start-user-authorization.js.map +1 -1
  14. package/lib/commonjs/credential/issuance/v1.0.0/03-complete-user-authorization.js +5 -2
  15. package/lib/commonjs/credential/issuance/v1.0.0/03-complete-user-authorization.js.map +1 -1
  16. package/lib/commonjs/credential/issuance/v1.0.0/05-obtain-credential.js +5 -1
  17. package/lib/commonjs/credential/issuance/v1.0.0/05-obtain-credential.js.map +1 -1
  18. package/lib/commonjs/credential/issuance/v1.0.0/index.js +2 -1
  19. package/lib/commonjs/credential/issuance/v1.0.0/index.js.map +1 -1
  20. package/lib/commonjs/credential/issuance/v1.0.0/mappers.js +1 -1
  21. package/lib/commonjs/credential/issuance/v1.0.0/mappers.js.map +1 -1
  22. package/lib/commonjs/credential/issuance/v1.3.3/01-evaluate-issuer-trust.js +0 -2
  23. package/lib/commonjs/credential/issuance/v1.3.3/01-evaluate-issuer-trust.js.map +1 -1
  24. package/lib/commonjs/credential/issuance/v1.3.3/02-start-user-authorization.js +20 -16
  25. package/lib/commonjs/credential/issuance/v1.3.3/02-start-user-authorization.js.map +1 -1
  26. package/lib/commonjs/credential/issuance/v1.3.3/03-complete-user-authorization.js +1 -1
  27. package/lib/commonjs/credential/issuance/v1.3.3/03-complete-user-authorization.js.map +1 -1
  28. package/lib/commonjs/credential/issuance/v1.3.3/04-authorize-access.js +20 -19
  29. package/lib/commonjs/credential/issuance/v1.3.3/04-authorize-access.js.map +1 -1
  30. package/lib/commonjs/credential/issuance/v1.3.3/05-obtain-credential.js +150 -57
  31. package/lib/commonjs/credential/issuance/v1.3.3/05-obtain-credential.js.map +1 -1
  32. package/lib/commonjs/credential/issuance/v1.3.3/06-verify-and-parse-credential.js +4 -1
  33. package/lib/commonjs/credential/issuance/v1.3.3/06-verify-and-parse-credential.js.map +1 -1
  34. package/lib/commonjs/credential/issuance/v1.3.3/index.js +2 -1
  35. package/lib/commonjs/credential/issuance/v1.3.3/index.js.map +1 -1
  36. package/lib/commonjs/credential/issuance/v1.3.3/mappers.js +1 -1
  37. package/lib/commonjs/credential/issuance/v1.3.3/mappers.js.map +1 -1
  38. package/lib/commonjs/credential/presentation/api/types.js.map +1 -1
  39. package/lib/commonjs/credential/presentation/{v1.3.3/utils.mdoc.js → common/utils/mdoc.js} +2 -2
  40. package/lib/commonjs/credential/presentation/common/utils/mdoc.js.map +1 -0
  41. package/lib/commonjs/credential/presentation/v1.0.0/05-verify-request-object.js +18 -12
  42. package/lib/commonjs/credential/presentation/v1.0.0/05-verify-request-object.js.map +1 -1
  43. package/lib/commonjs/credential/presentation/v1.0.0/07-send-authorization-response.js +3 -0
  44. package/lib/commonjs/credential/presentation/v1.0.0/07-send-authorization-response.js.map +1 -1
  45. package/lib/commonjs/credential/presentation/v1.0.0/index.js +0 -2
  46. package/lib/commonjs/credential/presentation/v1.0.0/index.js.map +1 -1
  47. package/lib/commonjs/credential/presentation/v1.0.0/mappers.js +23 -13
  48. package/lib/commonjs/credential/presentation/v1.0.0/mappers.js.map +1 -1
  49. package/lib/commonjs/credential/presentation/v1.0.0/types.js +25 -17
  50. package/lib/commonjs/credential/presentation/v1.0.0/types.js.map +1 -1
  51. package/lib/commonjs/credential/presentation/v1.3.3/05-verify-request-object.js +29 -6
  52. package/lib/commonjs/credential/presentation/v1.3.3/05-verify-request-object.js.map +1 -1
  53. package/lib/commonjs/credential/presentation/v1.3.3/06-evaluate-dcql-query.js +2 -2
  54. package/lib/commonjs/credential/presentation/v1.3.3/06-evaluate-dcql-query.js.map +1 -1
  55. package/lib/commonjs/credential/presentation/v1.3.3/07-send-authorization-response.js +9 -6
  56. package/lib/commonjs/credential/presentation/v1.3.3/07-send-authorization-response.js.map +1 -1
  57. package/lib/commonjs/credential/presentation/v1.3.3/mappers.js +25 -13
  58. package/lib/commonjs/credential/presentation/v1.3.3/mappers.js.map +1 -1
  59. package/lib/commonjs/credential/presentation/v1.3.3/types.js +6 -3
  60. package/lib/commonjs/credential/presentation/v1.3.3/types.js.map +1 -1
  61. package/lib/commonjs/credential/status/README.md +3 -2
  62. package/lib/commonjs/credential/status/v1.3.3/01-status-list.js +27 -5
  63. package/lib/commonjs/credential/status/v1.3.3/01-status-list.js.map +1 -1
  64. package/lib/commonjs/credential/status/v1.3.3/02-verify-and-parse-status-list.js +17 -6
  65. package/lib/commonjs/credential/status/v1.3.3/02-verify-and-parse-status-list.js.map +1 -1
  66. package/lib/commonjs/credentials-catalogue/api/DigitalCredentialsCatalogue.js +26 -1
  67. package/lib/commonjs/credentials-catalogue/api/DigitalCredentialsCatalogue.js.map +1 -1
  68. package/lib/commonjs/credentials-catalogue/v1.3.3/fetch-and-parse-catalogue.js +4 -0
  69. package/lib/commonjs/credentials-catalogue/v1.3.3/fetch-and-parse-catalogue.js.map +1 -1
  70. package/lib/commonjs/credentials-catalogue/v1.3.3/fetch-translations.js +5 -3
  71. package/lib/commonjs/credentials-catalogue/v1.3.3/fetch-translations.js.map +1 -1
  72. package/lib/commonjs/credentials-catalogue/v1.3.3/mappers.js +9 -1
  73. package/lib/commonjs/credentials-catalogue/v1.3.3/mappers.js.map +1 -1
  74. package/lib/commonjs/credentials-catalogue/v1.3.3/types.js +49 -1
  75. package/lib/commonjs/credentials-catalogue/v1.3.3/types.js.map +1 -1
  76. package/lib/commonjs/mdoc/index.js +3 -24
  77. package/lib/commonjs/mdoc/index.js.map +1 -1
  78. package/lib/commonjs/sd-jwt/__test__/types.test.js +2 -14
  79. package/lib/commonjs/sd-jwt/__test__/types.test.js.map +1 -1
  80. package/lib/commonjs/sd-jwt/__test__/utils.test.js +0 -12
  81. package/lib/commonjs/sd-jwt/__test__/utils.test.js.map +1 -1
  82. package/lib/commonjs/sd-jwt/types.js +1 -14
  83. package/lib/commonjs/sd-jwt/types.js.map +1 -1
  84. package/lib/commonjs/utils/callbacks.js +45 -7
  85. package/lib/commonjs/utils/callbacks.js.map +1 -1
  86. package/lib/commonjs/utils/crypto.js +58 -5
  87. package/lib/commonjs/utils/crypto.js.map +1 -1
  88. package/lib/commonjs/utils/x509.js +34 -0
  89. package/lib/commonjs/utils/x509.js.map +1 -0
  90. package/lib/commonjs/wallet-instance-attestation/api/types.js +0 -2
  91. package/lib/commonjs/wallet-instance-attestation/api/types.js.map +1 -1
  92. package/lib/commonjs/wallet-instance-attestation/v1.3.3/mappers.js +1 -14
  93. package/lib/commonjs/wallet-instance-attestation/v1.3.3/mappers.js.map +1 -1
  94. package/lib/commonjs/wallet-instance-attestation/v1.3.3/types.js +2 -7
  95. package/lib/commonjs/wallet-instance-attestation/v1.3.3/types.js.map +1 -1
  96. package/lib/commonjs/wallet-unit-attestation/api/types.js +0 -11
  97. package/lib/commonjs/wallet-unit-attestation/api/types.js.map +1 -1
  98. package/lib/module/credential/issuance/README.md +44 -17
  99. package/lib/module/credential/issuance/common/02-start-user-authorization.js +4 -3
  100. package/lib/module/credential/issuance/common/02-start-user-authorization.js.map +1 -1
  101. package/lib/module/credential/issuance/common/06-verify-and-parse-credential.sdjwt.js +39 -10
  102. package/lib/module/credential/issuance/common/06-verify-and-parse-credential.sdjwt.js.map +1 -1
  103. package/lib/module/credential/issuance/mrtd-pop/02-init-challenge.js +47 -34
  104. package/lib/module/credential/issuance/mrtd-pop/02-init-challenge.js.map +1 -1
  105. package/lib/module/credential/issuance/mrtd-pop/03-validate-challenge.js +58 -47
  106. package/lib/module/credential/issuance/mrtd-pop/03-validate-challenge.js.map +1 -1
  107. package/lib/module/credential/issuance/mrtd-pop/index.js +20 -5
  108. package/lib/module/credential/issuance/mrtd-pop/index.js.map +1 -1
  109. package/lib/module/credential/issuance/v1.0.0/02-start-user-authorization.js +1 -1
  110. package/lib/module/credential/issuance/v1.0.0/02-start-user-authorization.js.map +1 -1
  111. package/lib/module/credential/issuance/v1.0.0/03-complete-user-authorization.js +6 -3
  112. package/lib/module/credential/issuance/v1.0.0/03-complete-user-authorization.js.map +1 -1
  113. package/lib/module/credential/issuance/v1.0.0/05-obtain-credential.js +4 -1
  114. package/lib/module/credential/issuance/v1.0.0/05-obtain-credential.js.map +1 -1
  115. package/lib/module/credential/issuance/v1.0.0/index.js +4 -3
  116. package/lib/module/credential/issuance/v1.0.0/index.js.map +1 -1
  117. package/lib/module/credential/issuance/v1.0.0/mappers.js +1 -1
  118. package/lib/module/credential/issuance/v1.0.0/mappers.js.map +1 -1
  119. package/lib/module/credential/issuance/v1.3.3/01-evaluate-issuer-trust.js +0 -2
  120. package/lib/module/credential/issuance/v1.3.3/01-evaluate-issuer-trust.js.map +1 -1
  121. package/lib/module/credential/issuance/v1.3.3/02-start-user-authorization.js +20 -16
  122. package/lib/module/credential/issuance/v1.3.3/02-start-user-authorization.js.map +1 -1
  123. package/lib/module/credential/issuance/v1.3.3/03-complete-user-authorization.js +1 -1
  124. package/lib/module/credential/issuance/v1.3.3/03-complete-user-authorization.js.map +1 -1
  125. package/lib/module/credential/issuance/v1.3.3/04-authorize-access.js +22 -19
  126. package/lib/module/credential/issuance/v1.3.3/04-authorize-access.js.map +1 -1
  127. package/lib/module/credential/issuance/v1.3.3/05-obtain-credential.js +147 -55
  128. package/lib/module/credential/issuance/v1.3.3/05-obtain-credential.js.map +1 -1
  129. package/lib/module/credential/issuance/v1.3.3/06-verify-and-parse-credential.js +4 -1
  130. package/lib/module/credential/issuance/v1.3.3/06-verify-and-parse-credential.js.map +1 -1
  131. package/lib/module/credential/issuance/v1.3.3/index.js +4 -3
  132. package/lib/module/credential/issuance/v1.3.3/index.js.map +1 -1
  133. package/lib/module/credential/issuance/v1.3.3/mappers.js +1 -1
  134. package/lib/module/credential/issuance/v1.3.3/mappers.js.map +1 -1
  135. package/lib/module/credential/presentation/api/types.js.map +1 -1
  136. package/lib/module/credential/presentation/{v1.3.3/utils.mdoc.js → common/utils/mdoc.js} +2 -2
  137. package/lib/module/credential/presentation/common/utils/mdoc.js.map +1 -0
  138. package/lib/module/credential/presentation/v1.0.0/05-verify-request-object.js +13 -7
  139. package/lib/module/credential/presentation/v1.0.0/05-verify-request-object.js.map +1 -1
  140. package/lib/module/credential/presentation/v1.0.0/07-send-authorization-response.js +4 -1
  141. package/lib/module/credential/presentation/v1.0.0/07-send-authorization-response.js.map +1 -1
  142. package/lib/module/credential/presentation/v1.0.0/index.js +0 -2
  143. package/lib/module/credential/presentation/v1.0.0/index.js.map +1 -1
  144. package/lib/module/credential/presentation/v1.0.0/mappers.js +23 -13
  145. package/lib/module/credential/presentation/v1.0.0/mappers.js.map +1 -1
  146. package/lib/module/credential/presentation/v1.0.0/types.js +23 -15
  147. package/lib/module/credential/presentation/v1.0.0/types.js.map +1 -1
  148. package/lib/module/credential/presentation/v1.3.3/05-verify-request-object.js +28 -6
  149. package/lib/module/credential/presentation/v1.3.3/05-verify-request-object.js.map +1 -1
  150. package/lib/module/credential/presentation/v1.3.3/06-evaluate-dcql-query.js +2 -3
  151. package/lib/module/credential/presentation/v1.3.3/06-evaluate-dcql-query.js.map +1 -1
  152. package/lib/module/credential/presentation/v1.3.3/07-send-authorization-response.js +9 -6
  153. package/lib/module/credential/presentation/v1.3.3/07-send-authorization-response.js.map +1 -1
  154. package/lib/module/credential/presentation/v1.3.3/mappers.js +25 -13
  155. package/lib/module/credential/presentation/v1.3.3/mappers.js.map +1 -1
  156. package/lib/module/credential/presentation/v1.3.3/types.js +5 -2
  157. package/lib/module/credential/presentation/v1.3.3/types.js.map +1 -1
  158. package/lib/module/credential/status/README.md +3 -2
  159. package/lib/module/credential/status/v1.3.3/01-status-list.js +27 -5
  160. package/lib/module/credential/status/v1.3.3/01-status-list.js.map +1 -1
  161. package/lib/module/credential/status/v1.3.3/02-verify-and-parse-status-list.js +17 -6
  162. package/lib/module/credential/status/v1.3.3/02-verify-and-parse-status-list.js.map +1 -1
  163. package/lib/module/credentials-catalogue/api/DigitalCredentialsCatalogue.js +24 -0
  164. package/lib/module/credentials-catalogue/api/DigitalCredentialsCatalogue.js.map +1 -1
  165. package/lib/module/credentials-catalogue/v1.3.3/fetch-and-parse-catalogue.js +5 -1
  166. package/lib/module/credentials-catalogue/v1.3.3/fetch-and-parse-catalogue.js.map +1 -1
  167. package/lib/module/credentials-catalogue/v1.3.3/fetch-translations.js +5 -3
  168. package/lib/module/credentials-catalogue/v1.3.3/fetch-translations.js.map +1 -1
  169. package/lib/module/credentials-catalogue/v1.3.3/mappers.js +9 -1
  170. package/lib/module/credentials-catalogue/v1.3.3/mappers.js.map +1 -1
  171. package/lib/module/credentials-catalogue/v1.3.3/types.js +47 -0
  172. package/lib/module/credentials-catalogue/v1.3.3/types.js.map +1 -1
  173. package/lib/module/mdoc/index.js +3 -24
  174. package/lib/module/mdoc/index.js.map +1 -1
  175. package/lib/module/sd-jwt/__test__/types.test.js +2 -14
  176. package/lib/module/sd-jwt/__test__/types.test.js.map +1 -1
  177. package/lib/module/sd-jwt/__test__/utils.test.js +0 -12
  178. package/lib/module/sd-jwt/__test__/utils.test.js.map +1 -1
  179. package/lib/module/sd-jwt/types.js +1 -14
  180. package/lib/module/sd-jwt/types.js.map +1 -1
  181. package/lib/module/utils/callbacks.js +45 -8
  182. package/lib/module/utils/callbacks.js.map +1 -1
  183. package/lib/module/utils/crypto.js +57 -6
  184. package/lib/module/utils/crypto.js.map +1 -1
  185. package/lib/module/utils/x509.js +28 -0
  186. package/lib/module/utils/x509.js.map +1 -0
  187. package/lib/module/wallet-instance-attestation/api/types.js +0 -2
  188. package/lib/module/wallet-instance-attestation/api/types.js.map +1 -1
  189. package/lib/module/wallet-instance-attestation/v1.3.3/mappers.js +1 -14
  190. package/lib/module/wallet-instance-attestation/v1.3.3/mappers.js.map +1 -1
  191. package/lib/module/wallet-instance-attestation/v1.3.3/types.js +2 -7
  192. package/lib/module/wallet-instance-attestation/v1.3.3/types.js.map +1 -1
  193. package/lib/module/wallet-unit-attestation/api/types.js +0 -11
  194. package/lib/module/wallet-unit-attestation/api/types.js.map +1 -1
  195. package/lib/typescript/credential/issuance/api/05-obtain-credential.d.ts +20 -0
  196. package/lib/typescript/credential/issuance/api/05-obtain-credential.d.ts.map +1 -1
  197. package/lib/typescript/credential/issuance/api/06-verify-and-parse-credential.d.ts +4 -0
  198. package/lib/typescript/credential/issuance/api/06-verify-and-parse-credential.d.ts.map +1 -1
  199. package/lib/typescript/credential/issuance/common/02-start-user-authorization.d.ts.map +1 -1
  200. package/lib/typescript/credential/issuance/common/06-verify-and-parse-credential.sdjwt.d.ts.map +1 -1
  201. package/lib/typescript/credential/issuance/mrtd-pop/02-init-challenge.d.ts +12 -1
  202. package/lib/typescript/credential/issuance/mrtd-pop/02-init-challenge.d.ts.map +1 -1
  203. package/lib/typescript/credential/issuance/mrtd-pop/03-validate-challenge.d.ts +12 -1
  204. package/lib/typescript/credential/issuance/mrtd-pop/03-validate-challenge.d.ts.map +1 -1
  205. package/lib/typescript/credential/issuance/mrtd-pop/index.d.ts +2 -1
  206. package/lib/typescript/credential/issuance/mrtd-pop/index.d.ts.map +1 -1
  207. package/lib/typescript/credential/issuance/v1.0.0/03-complete-user-authorization.d.ts.map +1 -1
  208. package/lib/typescript/credential/issuance/v1.0.0/05-obtain-credential.d.ts +1 -0
  209. package/lib/typescript/credential/issuance/v1.0.0/05-obtain-credential.d.ts.map +1 -1
  210. package/lib/typescript/credential/issuance/v1.0.0/index.d.ts.map +1 -1
  211. package/lib/typescript/credential/issuance/v1.0.0/mappers.d.ts.map +1 -1
  212. package/lib/typescript/credential/issuance/v1.3.3/01-evaluate-issuer-trust.d.ts.map +1 -1
  213. package/lib/typescript/credential/issuance/v1.3.3/02-start-user-authorization.d.ts.map +1 -1
  214. package/lib/typescript/credential/issuance/v1.3.3/04-authorize-access.d.ts.map +1 -1
  215. package/lib/typescript/credential/issuance/v1.3.3/05-obtain-credential.d.ts +23 -2
  216. package/lib/typescript/credential/issuance/v1.3.3/05-obtain-credential.d.ts.map +1 -1
  217. package/lib/typescript/credential/issuance/v1.3.3/06-verify-and-parse-credential.d.ts.map +1 -1
  218. package/lib/typescript/credential/issuance/v1.3.3/index.d.ts.map +1 -1
  219. package/lib/typescript/credential/issuance/v1.3.3/mappers.d.ts.map +1 -1
  220. package/lib/typescript/credential/presentation/api/04-verify-certificate-chain.d.ts +9 -2
  221. package/lib/typescript/credential/presentation/api/04-verify-certificate-chain.d.ts.map +1 -1
  222. package/lib/typescript/credential/presentation/api/05-verify-request-object.d.ts +2 -2
  223. package/lib/typescript/credential/presentation/api/05-verify-request-object.d.ts.map +1 -1
  224. package/lib/typescript/credential/presentation/api/07-send-authorization-response.d.ts +2 -2
  225. package/lib/typescript/credential/presentation/api/07-send-authorization-response.d.ts.map +1 -1
  226. package/lib/typescript/credential/presentation/api/types.d.ts +18 -0
  227. package/lib/typescript/credential/presentation/api/types.d.ts.map +1 -1
  228. package/lib/typescript/credential/presentation/{v1.3.3/utils.mdoc.d.ts → common/utils/mdoc.d.ts} +2 -2
  229. package/lib/typescript/credential/presentation/common/utils/mdoc.d.ts.map +1 -0
  230. package/lib/typescript/credential/presentation/v1.0.0/05-verify-request-object.d.ts.map +1 -1
  231. package/lib/typescript/credential/presentation/v1.0.0/07-send-authorization-response.d.ts.map +1 -1
  232. package/lib/typescript/credential/presentation/v1.0.0/index.d.ts.map +1 -1
  233. package/lib/typescript/credential/presentation/v1.0.0/mappers.d.ts +21 -13
  234. package/lib/typescript/credential/presentation/v1.0.0/mappers.d.ts.map +1 -1
  235. package/lib/typescript/credential/presentation/v1.0.0/types.d.ts +23 -15
  236. package/lib/typescript/credential/presentation/v1.0.0/types.d.ts.map +1 -1
  237. package/lib/typescript/credential/presentation/v1.3.3/05-verify-request-object.d.ts.map +1 -1
  238. package/lib/typescript/credential/presentation/v1.3.3/06-evaluate-dcql-query.d.ts.map +1 -1
  239. package/lib/typescript/credential/presentation/v1.3.3/07-send-authorization-response.d.ts.map +1 -1
  240. package/lib/typescript/credential/presentation/v1.3.3/mappers.d.ts +89 -79
  241. package/lib/typescript/credential/presentation/v1.3.3/mappers.d.ts.map +1 -1
  242. package/lib/typescript/credential/presentation/v1.3.3/types.d.ts +87 -79
  243. package/lib/typescript/credential/presentation/v1.3.3/types.d.ts.map +1 -1
  244. package/lib/typescript/credential/status/api/status-list.d.ts +8 -4
  245. package/lib/typescript/credential/status/api/status-list.d.ts.map +1 -1
  246. package/lib/typescript/credential/status/v1.3.3/01-status-list.d.ts.map +1 -1
  247. package/lib/typescript/credential/status/v1.3.3/02-verify-and-parse-status-list.d.ts.map +1 -1
  248. package/lib/typescript/credentials-catalogue/api/DigitalCredentialsCatalogue.d.ts +73 -0
  249. package/lib/typescript/credentials-catalogue/api/DigitalCredentialsCatalogue.d.ts.map +1 -1
  250. package/lib/typescript/credentials-catalogue/api/index.d.ts +6 -5
  251. package/lib/typescript/credentials-catalogue/api/index.d.ts.map +1 -1
  252. package/lib/typescript/credentials-catalogue/v1.0.0/mappers.d.ts +25 -0
  253. package/lib/typescript/credentials-catalogue/v1.0.0/mappers.d.ts.map +1 -1
  254. package/lib/typescript/credentials-catalogue/v1.3.3/fetch-and-parse-catalogue.d.ts.map +1 -1
  255. package/lib/typescript/credentials-catalogue/v1.3.3/fetch-translations.d.ts.map +1 -1
  256. package/lib/typescript/credentials-catalogue/v1.3.3/mappers.d.ts +51 -0
  257. package/lib/typescript/credentials-catalogue/v1.3.3/mappers.d.ts.map +1 -1
  258. package/lib/typescript/credentials-catalogue/v1.3.3/types.d.ts +33 -0
  259. package/lib/typescript/credentials-catalogue/v1.3.3/types.d.ts.map +1 -1
  260. package/lib/typescript/mdoc/index.d.ts +1 -1
  261. package/lib/typescript/mdoc/index.d.ts.map +1 -1
  262. package/lib/typescript/mdoc/utils.d.ts +0 -24
  263. package/lib/typescript/mdoc/utils.d.ts.map +1 -1
  264. package/lib/typescript/sd-jwt/types.d.ts +0 -12
  265. package/lib/typescript/sd-jwt/types.d.ts.map +1 -1
  266. package/lib/typescript/utils/callbacks.d.ts +7 -0
  267. package/lib/typescript/utils/callbacks.d.ts.map +1 -1
  268. package/lib/typescript/utils/crypto.d.ts +32 -15
  269. package/lib/typescript/utils/crypto.d.ts.map +1 -1
  270. package/lib/typescript/utils/x509.d.ts +10 -0
  271. package/lib/typescript/utils/x509.d.ts.map +1 -0
  272. package/lib/typescript/wallet-instance-attestation/api/types.d.ts +0 -2
  273. package/lib/typescript/wallet-instance-attestation/api/types.d.ts.map +1 -1
  274. package/lib/typescript/wallet-instance-attestation/v1.0.0/mappers.d.ts +0 -2
  275. package/lib/typescript/wallet-instance-attestation/v1.0.0/mappers.d.ts.map +1 -1
  276. package/lib/typescript/wallet-instance-attestation/v1.3.3/mappers.d.ts +2 -9
  277. package/lib/typescript/wallet-instance-attestation/v1.3.3/mappers.d.ts.map +1 -1
  278. package/lib/typescript/wallet-instance-attestation/v1.3.3/types.d.ts +2 -7
  279. package/lib/typescript/wallet-instance-attestation/v1.3.3/types.d.ts.map +1 -1
  280. package/lib/typescript/wallet-unit-attestation/api/types.d.ts +0 -11
  281. package/lib/typescript/wallet-unit-attestation/api/types.d.ts.map +1 -1
  282. package/lib/typescript/wallet-unit-attestation/v1.3.3/mappers.d.ts +0 -22
  283. package/lib/typescript/wallet-unit-attestation/v1.3.3/mappers.d.ts.map +1 -1
  284. package/lib/typescript/wallet-unit-attestation/v1.3.3/types.d.ts +0 -11
  285. package/lib/typescript/wallet-unit-attestation/v1.3.3/types.d.ts.map +1 -1
  286. package/package.json +6 -6
  287. package/src/credential/issuance/README.md +44 -17
  288. package/src/credential/issuance/api/05-obtain-credential.ts +24 -0
  289. package/src/credential/issuance/api/06-verify-and-parse-credential.ts +4 -0
  290. package/src/credential/issuance/common/02-start-user-authorization.ts +6 -3
  291. package/src/credential/issuance/common/06-verify-and-parse-credential.sdjwt.ts +42 -9
  292. package/src/credential/issuance/mrtd-pop/02-init-challenge.ts +69 -45
  293. package/src/credential/issuance/mrtd-pop/03-validate-challenge.ts +84 -62
  294. package/src/credential/issuance/mrtd-pop/index.ts +13 -5
  295. package/src/credential/issuance/v1.0.0/02-start-user-authorization.ts +1 -1
  296. package/src/credential/issuance/v1.0.0/03-complete-user-authorization.ts +8 -3
  297. package/src/credential/issuance/v1.0.0/05-obtain-credential.ts +6 -0
  298. package/src/credential/issuance/v1.0.0/index.ts +7 -3
  299. package/src/credential/issuance/v1.0.0/mappers.ts +4 -1
  300. package/src/credential/issuance/v1.3.3/01-evaluate-issuer-trust.ts +0 -2
  301. package/src/credential/issuance/v1.3.3/02-start-user-authorization.ts +24 -20
  302. package/src/credential/issuance/v1.3.3/03-complete-user-authorization.ts +1 -1
  303. package/src/credential/issuance/v1.3.3/04-authorize-access.ts +28 -23
  304. package/src/credential/issuance/v1.3.3/05-obtain-credential.ts +182 -87
  305. package/src/credential/issuance/v1.3.3/06-verify-and-parse-credential.ts +2 -1
  306. package/src/credential/issuance/v1.3.3/index.ts +7 -3
  307. package/src/credential/issuance/v1.3.3/mappers.ts +4 -1
  308. package/src/credential/presentation/api/04-verify-certificate-chain.ts +9 -2
  309. package/src/credential/presentation/api/05-verify-request-object.ts +2 -2
  310. package/src/credential/presentation/api/07-send-authorization-response.ts +2 -2
  311. package/src/credential/presentation/api/types.ts +16 -0
  312. package/src/credential/presentation/{v1.3.3/utils.mdoc.ts → common/utils/mdoc.ts} +2 -2
  313. package/src/credential/presentation/v1.0.0/05-verify-request-object.ts +21 -10
  314. package/src/credential/presentation/v1.0.0/07-send-authorization-response.ts +7 -0
  315. package/src/credential/presentation/v1.0.0/index.ts +0 -2
  316. package/src/credential/presentation/v1.0.0/mappers.ts +17 -17
  317. package/src/credential/presentation/v1.0.0/types.ts +23 -15
  318. package/src/credential/presentation/v1.3.3/05-verify-request-object.ts +63 -10
  319. package/src/credential/presentation/v1.3.3/06-evaluate-dcql-query.ts +3 -3
  320. package/src/credential/presentation/v1.3.3/07-send-authorization-response.ts +13 -4
  321. package/src/credential/presentation/v1.3.3/mappers.ts +19 -17
  322. package/src/credential/presentation/v1.3.3/types.ts +9 -3
  323. package/src/credential/status/README.md +3 -2
  324. package/src/credential/status/api/status-list.ts +10 -7
  325. package/src/credential/status/v1.3.3/01-status-list.ts +21 -7
  326. package/src/credential/status/v1.3.3/02-verify-and-parse-status-list.ts +19 -5
  327. package/src/credentials-catalogue/api/DigitalCredentialsCatalogue.ts +32 -0
  328. package/src/credentials-catalogue/api/index.ts +6 -3
  329. package/src/credentials-catalogue/v1.3.3/fetch-and-parse-catalogue.ts +6 -0
  330. package/src/credentials-catalogue/v1.3.3/fetch-translations.ts +6 -3
  331. package/src/credentials-catalogue/v1.3.3/mappers.ts +17 -1
  332. package/src/credentials-catalogue/v1.3.3/types.ts +51 -0
  333. package/src/mdoc/index.ts +5 -41
  334. package/src/sd-jwt/__test__/types.test.ts +1 -13
  335. package/src/sd-jwt/__test__/utils.test.ts +0 -12
  336. package/src/sd-jwt/types.ts +0 -13
  337. package/src/utils/callbacks.ts +57 -9
  338. package/src/utils/crypto.ts +86 -15
  339. package/src/utils/x509.ts +43 -0
  340. package/src/wallet-instance-attestation/api/types.ts +0 -2
  341. package/src/wallet-instance-attestation/v1.3.3/mappers.ts +3 -11
  342. package/src/wallet-instance-attestation/v1.3.3/types.ts +2 -7
  343. package/src/wallet-unit-attestation/api/types.ts +0 -11
  344. package/lib/commonjs/credential/issuance/common/authorization.js +0 -56
  345. package/lib/commonjs/credential/issuance/common/authorization.js.map +0 -1
  346. package/lib/commonjs/credential/presentation/v1.0.0/04-verify-certificate-chain.js +0 -12
  347. package/lib/commonjs/credential/presentation/v1.0.0/04-verify-certificate-chain.js.map +0 -1
  348. package/lib/commonjs/credential/presentation/v1.3.3/utils.mdoc.js.map +0 -1
  349. package/lib/module/credential/issuance/common/authorization.js +0 -48
  350. package/lib/module/credential/issuance/common/authorization.js.map +0 -1
  351. package/lib/module/credential/presentation/v1.0.0/04-verify-certificate-chain.js +0 -5
  352. package/lib/module/credential/presentation/v1.0.0/04-verify-certificate-chain.js.map +0 -1
  353. package/lib/module/credential/presentation/v1.3.3/utils.mdoc.js.map +0 -1
  354. package/lib/typescript/credential/issuance/common/authorization.d.ts +0 -21
  355. package/lib/typescript/credential/issuance/common/authorization.d.ts.map +0 -1
  356. package/lib/typescript/credential/presentation/v1.0.0/04-verify-certificate-chain.d.ts +0 -3
  357. package/lib/typescript/credential/presentation/v1.0.0/04-verify-certificate-chain.d.ts.map +0 -1
  358. package/lib/typescript/credential/presentation/v1.3.3/utils.mdoc.d.ts.map +0 -1
  359. package/src/credential/issuance/common/authorization.ts +0 -89
  360. package/src/credential/presentation/v1.0.0/04-verify-certificate-chain.ts +0 -10
@@ -1 +1 @@
1
- {"version":3,"names":["_startFlow","require","_evaluateRpTrust","_getRequestObject","_verifyCertificateChain","_verifyRequestObject","_evaluateDcqlQuery","_sendAuthorizationResponse","RemotePresentation","startFlowFromQR","evaluateRelyingPartyTrust","getRequestObject","verifyAuthRequestCertificateChain","verifyRequestObject","evaluateDcqlQuery","prepareRemotePresentations","sendAuthorizationResponse","sendAuthorizationErrorResponse","exports"],"sourceRoot":"../../../../../src","sources":["credential/presentation/v1.0.0/index.ts"],"mappings":";;;;;;AACA,IAAAA,UAAA,GAAAC,OAAA;AACA,IAAAC,gBAAA,GAAAD,OAAA;AACA,IAAAE,iBAAA,GAAAF,OAAA;AACA,IAAAG,uBAAA,GAAAH,OAAA;AACA,IAAAI,oBAAA,GAAAJ,OAAA;AACA,IAAAK,kBAAA,GAAAL,OAAA;AACA,IAAAM,0BAAA,GAAAN,OAAA;AAMO,MAAMO,kBAAyC,GAAG;EACvDC,eAAe,EAAfA,0BAAe;EACfC,yBAAyB,EAAzBA,0CAAyB;EACzBC,gBAAgB,EAAhBA,kCAAgB;EAChBC,iCAAiC,EAAjCA,yDAAiC;EACjCC,mBAAmB,EAAnBA,wCAAmB;EACnBC,iBAAiB,EAAjBA,oCAAiB;EACjBC,0BAA0B,EAA1BA,qDAA0B;EAC1BC,yBAAyB,EAAzBA,oDAAyB;EACzBC,8BAA8B,EAA9BA;AACF,CAAC;AAACC,OAAA,CAAAV,kBAAA,GAAAA,kBAAA"}
1
+ {"version":3,"names":["_startFlow","require","_evaluateRpTrust","_getRequestObject","_verifyRequestObject","_evaluateDcqlQuery","_sendAuthorizationResponse","RemotePresentation","startFlowFromQR","evaluateRelyingPartyTrust","getRequestObject","verifyRequestObject","evaluateDcqlQuery","prepareRemotePresentations","sendAuthorizationResponse","sendAuthorizationErrorResponse","exports"],"sourceRoot":"../../../../../src","sources":["credential/presentation/v1.0.0/index.ts"],"mappings":";;;;;;AACA,IAAAA,UAAA,GAAAC,OAAA;AACA,IAAAC,gBAAA,GAAAD,OAAA;AACA,IAAAE,iBAAA,GAAAF,OAAA;AACA,IAAAG,oBAAA,GAAAH,OAAA;AACA,IAAAI,kBAAA,GAAAJ,OAAA;AACA,IAAAK,0BAAA,GAAAL,OAAA;AAMO,MAAMM,kBAAyC,GAAG;EACvDC,eAAe,EAAfA,0BAAe;EACfC,yBAAyB,EAAzBA,0CAAyB;EACzBC,gBAAgB,EAAhBA,kCAAgB;EAChBC,mBAAmB,EAAnBA,wCAAmB;EACnBC,iBAAiB,EAAjBA,oCAAiB;EACjBC,0BAA0B,EAA1BA,qDAA0B;EAC1BC,yBAAyB,EAAzBA,oDAAyB;EACzBC,8BAA8B,EAA9BA;AACF,CAAC;AAACC,OAAA,CAAAT,kBAAA,GAAAA,kBAAA"}
@@ -5,13 +5,16 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.mapToRequestObject = exports.mapToRelyingPartyConfig = void 0;
7
7
  var _mappers = require("../../../utils/mappers");
8
- const mapToRelyingPartyConfig = (0, _mappers.createMapper)(x => {
8
+ const mapToRelyingPartyConfig = (0, _mappers.createMapper)(_ref => {
9
+ let {
10
+ payload
11
+ } = _ref;
9
12
  const {
10
13
  federation_entity,
11
14
  openid_credential_verifier
12
- } = x.payload.metadata;
15
+ } = payload.metadata;
13
16
  return {
14
- subject: x.payload.sub,
17
+ subject: payload.sub,
15
18
  jwks: openid_credential_verifier.jwks,
16
19
  authorization_encrypted_response_alg: openid_credential_verifier.authorization_encrypted_response_alg,
17
20
  authorization_encrypted_response_enc: openid_credential_verifier.authorization_encrypted_response_enc,
@@ -19,15 +22,22 @@ const mapToRelyingPartyConfig = (0, _mappers.createMapper)(x => {
19
22
  };
20
23
  });
21
24
  exports.mapToRelyingPartyConfig = mapToRelyingPartyConfig;
22
- const mapToRequestObject = (0, _mappers.createMapper)(x => ({
23
- iss: x.iss,
24
- client_id: x.client_id,
25
- dcql_query: x.dcql_query,
26
- nonce: x.nonce,
27
- response_uri: x.response_uri,
28
- state: x.state,
29
- response_mode: x.response_mode,
30
- response_type: x.response_type
31
- }));
25
+ const mapToRequestObject = (0, _mappers.createMapper)(_ref2 => {
26
+ let {
27
+ header,
28
+ payload
29
+ } = _ref2;
30
+ return {
31
+ iss: payload.iss,
32
+ client_id: payload.client_id,
33
+ dcql_query: payload.dcql_query,
34
+ nonce: payload.nonce,
35
+ response_uri: payload.response_uri,
36
+ state: payload.state,
37
+ response_mode: payload.response_mode,
38
+ response_type: payload.response_type,
39
+ trust_chain: header.trust_chain
40
+ };
41
+ });
32
42
  exports.mapToRequestObject = mapToRequestObject;
33
43
  //# sourceMappingURL=mappers.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_mappers","require","mapToRelyingPartyConfig","createMapper","x","federation_entity","openid_credential_verifier","payload","metadata","subject","sub","jwks","authorization_encrypted_response_alg","authorization_encrypted_response_enc","exports","mapToRequestObject","iss","client_id","dcql_query","nonce","response_uri","state","response_mode","response_type"],"sourceRoot":"../../../../../src","sources":["credential/presentation/v1.0.0/mappers.ts"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAMO,MAAMC,uBAAuB,GAAG,IAAAC,qBAAY,EAGhDC,CAAC,IAAK;EACP,MAAM;IAAEC,iBAAiB;IAAEC;EAA2B,CAAC,GAAGF,CAAC,CAACG,OAAO,CAACC,QAAQ;EAC5E,OAAO;IACLC,OAAO,EAAEL,CAAC,CAACG,OAAO,CAACG,GAAG;IACtBC,IAAI,EAAEL,0BAA0B,CAACK,IAAI;IACrCC,oCAAoC,EAClCN,0BAA0B,CAACM,oCAAoC;IACjEC,oCAAoC,EAClCP,0BAA0B,CAACO,oCAAoC;IACjER;EACF,CAAC;AACH,CAAC,CAAC;AAACS,OAAA,CAAAZ,uBAAA,GAAAA,uBAAA;AAEI,MAAMa,kBAAkB,GAAG,IAAAZ,qBAAY,EAG3CC,CAAC,KAAM;EACRY,GAAG,EAAEZ,CAAC,CAACY,GAAG;EACVC,SAAS,EAAEb,CAAC,CAACa,SAAS;EACtBC,UAAU,EAAEd,CAAC,CAACc,UAAU;EACxBC,KAAK,EAAEf,CAAC,CAACe,KAAK;EACdC,YAAY,EAAEhB,CAAC,CAACgB,YAAY;EAC5BC,KAAK,EAAEjB,CAAC,CAACiB,KAAK;EACdC,aAAa,EAAElB,CAAC,CAACkB,aAAa;EAC9BC,aAAa,EAAEnB,CAAC,CAACmB;AACnB,CAAC,CAAC,CAAC;AAACT,OAAA,CAAAC,kBAAA,GAAAA,kBAAA"}
1
+ {"version":3,"names":["_mappers","require","mapToRelyingPartyConfig","createMapper","_ref","payload","federation_entity","openid_credential_verifier","metadata","subject","sub","jwks","authorization_encrypted_response_alg","authorization_encrypted_response_enc","exports","mapToRequestObject","_ref2","header","iss","client_id","dcql_query","nonce","response_uri","state","response_mode","response_type","trust_chain"],"sourceRoot":"../../../../../src","sources":["credential/presentation/v1.0.0/mappers.ts"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAMO,MAAMC,uBAAuB,GAAG,IAAAC,qBAAY,EAGjDC,IAAA,IAAiB;EAAA,IAAhB;IAAEC;EAAQ,CAAC,GAAAD,IAAA;EACZ,MAAM;IAAEE,iBAAiB;IAAEC;EAA2B,CAAC,GAAGF,OAAO,CAACG,QAAQ;EAC1E,OAAO;IACLC,OAAO,EAAEJ,OAAO,CAACK,GAAG;IACpBC,IAAI,EAAEJ,0BAA0B,CAACI,IAAI;IACrCC,oCAAoC,EAClCL,0BAA0B,CAACK,oCAAoC;IACjEC,oCAAoC,EAClCN,0BAA0B,CAACM,oCAAoC;IACjEP;EACF,CAAC;AACH,CAAC,CAAC;AAACQ,OAAA,CAAAZ,uBAAA,GAAAA,uBAAA;AAEI,MAAMa,kBAAkB,GAAG,IAAAZ,qBAAY,EAC5Ca,KAAA;EAAA,IAAC;IAAEC,MAAM;IAAEZ;EAAQ,CAAC,GAAAW,KAAA;EAAA,OAAM;IACxBE,GAAG,EAAEb,OAAO,CAACa,GAAG;IAChBC,SAAS,EAAEd,OAAO,CAACc,SAAS;IAC5BC,UAAU,EAAEf,OAAO,CAACe,UAAU;IAC9BC,KAAK,EAAEhB,OAAO,CAACgB,KAAK;IACpBC,YAAY,EAAEjB,OAAO,CAACiB,YAAY;IAClCC,KAAK,EAAElB,OAAO,CAACkB,KAAK;IACpBC,aAAa,EAAEnB,OAAO,CAACmB,aAAa;IACpCC,aAAa,EAAEpB,OAAO,CAACoB,aAAa;IACpCC,WAAW,EAAET,MAAM,CAACS;EACtB,CAAC;AAAA,CACH,CAAC;AAACZ,OAAA,CAAAC,kBAAA,GAAAA,kBAAA"}
@@ -3,33 +3,41 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.RequestObjectPayload = exports.DirectAuthorizationBodyPayload = exports.AuthorizationResponse = void 0;
6
+ exports.RawRequestObject = exports.DirectAuthorizationBodyPayload = exports.AuthorizationResponse = void 0;
7
7
  var z = _interopRequireWildcard(require("zod"));
8
8
  var _zod2 = require("../../../utils/zod");
9
9
  var _types = require("../api/types");
10
10
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
11
11
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
12
- const RequestObjectPayload = z.object({
13
- iss: z.string(),
14
- iat: _zod2.UnixTime,
15
- exp: _zod2.UnixTime,
16
- state: z.string(),
17
- nonce: z.string(),
18
- response_uri: z.string(),
19
- request_uri_method: z.string().optional(),
20
- response_type: z.literal("vp_token"),
21
- response_mode: z.literal("direct_post.jwt"),
22
- client_id: z.string(),
23
- dcql_query: z.record(z.string(), z.any()),
24
- // Validation happens within the `dcql` library, no need to duplicate it here
25
- scope: z.string().optional(),
26
- wallet_nonce: z.string().optional()
12
+ const RawRequestObject = z.object({
13
+ header: z.object({
14
+ alg: z.string(),
15
+ kid: z.string(),
16
+ typ: z.literal("oauth-authz-req+jwt"),
17
+ trust_chain: z.array(z.string()).optional()
18
+ }),
19
+ payload: z.object({
20
+ iss: z.string(),
21
+ iat: _zod2.UnixTime,
22
+ exp: _zod2.UnixTime,
23
+ state: z.string(),
24
+ nonce: z.string(),
25
+ response_uri: z.string(),
26
+ request_uri_method: z.string().optional(),
27
+ response_type: z.literal("vp_token"),
28
+ response_mode: z.literal("direct_post.jwt"),
29
+ client_id: z.string(),
30
+ dcql_query: z.record(z.string(), z.any()),
31
+ // Validation happens within the `dcql` library, no need to duplicate it here
32
+ scope: z.string().optional(),
33
+ wallet_nonce: z.string().optional()
34
+ })
27
35
  });
28
36
 
29
37
  /**
30
38
  * Authorization Response payload sent to the Relying Party.
31
39
  */
32
- exports.RequestObjectPayload = RequestObjectPayload;
40
+ exports.RawRequestObject = RawRequestObject;
33
41
  const DirectAuthorizationBodyPayload = z.union([z.object({
34
42
  vp_token: z.record(z.string(), z.string())
35
43
  }), z.object({
@@ -1 +1 @@
1
- {"version":3,"names":["z","_interopRequireWildcard","require","_zod2","_types","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","RequestObjectPayload","object","iss","string","iat","UnixTime","exp","state","nonce","response_uri","request_uri_method","optional","response_type","literal","response_mode","client_id","dcql_query","record","any","scope","wallet_nonce","exports","DirectAuthorizationBodyPayload","union","vp_token","error","ErrorResponse","error_description","AuthorizationResponse","status","response_code","redirect_uri"],"sourceRoot":"../../../../../src","sources":["credential/presentation/v1.0.0/types.ts"],"mappings":"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"}
1
+ {"version":3,"names":["z","_interopRequireWildcard","require","_zod2","_types","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","RawRequestObject","object","header","alg","string","kid","typ","literal","trust_chain","array","optional","payload","iss","iat","UnixTime","exp","state","nonce","response_uri","request_uri_method","response_type","response_mode","client_id","dcql_query","record","any","scope","wallet_nonce","exports","DirectAuthorizationBodyPayload","union","vp_token","error","ErrorResponse","error_description","AuthorizationResponse","status","response_code","redirect_uri"],"sourceRoot":"../../../../../src","sources":["credential/presentation/v1.0.0/types.ts"],"mappings":"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"}
@@ -5,11 +5,14 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.verifyRequestObject = void 0;
7
7
  var _ioWalletOid4vp = require("@pagopa/io-wallet-oid4vp");
8
+ var _reactNativeQuickCrypto = _interopRequireDefault(require("react-native-quick-crypto"));
8
9
  var _callbacks = require("../../../utils/callbacks");
9
10
  var _config = require("../../../utils/config");
10
- var _errors = require("../common/errors");
11
+ var _errors = require("../../../utils/errors");
12
+ var _errors2 = require("../common/errors");
11
13
  var _sdkErrorMapper = require("./sdkErrorMapper");
12
14
  var _mappers = require("./mappers");
15
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
16
  const verifyRequestObject = async (requestObjectEncodedJwt, _ref) => {
14
17
  let {
15
18
  clientId,
@@ -22,14 +25,34 @@ const verifyRequestObject = async (requestObjectEncodedJwt, _ref) => {
22
25
  verifyJwt: _callbacks.partialCallbacks.verifyJwt
23
26
  }
24
27
  }).catch(_sdkErrorMapper.mapSdkRequestObjectError);
25
- const payload = parsedRequestObject.payload;
26
- const isClientIdMatch = clientId === payload.client_id && clientId === rpConf.subject;
27
- if (!isClientIdMatch) {
28
- throw new _errors.InvalidRequestObjectError("Client ID does not match Request Object or Entity Configuration");
28
+ const rawRequestObject = parsedRequestObject;
29
+ const clientIdPrefix = (0, _ioWalletOid4vp.extractClientIdPrefix)(clientId);
30
+ if (clientIdPrefix === _ioWalletOid4vp.ClientIdPrefix.X509_HASH) {
31
+ validateX509HashClient(rawRequestObject.header.x5c, clientId);
32
+ }
33
+ if (clientIdPrefix === _ioWalletOid4vp.ClientIdPrefix.OPENID_FEDERATION || clientIdPrefix === _ioWalletOid4vp.ClientIdPrefix.NONE) {
34
+ validateOpenIDFederationClient(rawRequestObject, clientId, rpConf);
29
35
  }
30
36
  return {
31
- requestObject: (0, _mappers.mapToRequestObject)(payload)
37
+ requestObject: (0, _mappers.mapToRequestObject)(rawRequestObject)
32
38
  };
33
39
  };
34
40
  exports.verifyRequestObject = verifyRequestObject;
41
+ const validateOpenIDFederationClient = (requestObject, clientId, rpConf) => {
42
+ if (!rpConf) {
43
+ throw new _errors.IoWalletError("Relying Party Configuration is required for OpenID Federation clients");
44
+ }
45
+ const isClientIdMatch = clientId === requestObject.payload.client_id && stripOpenIdFederationPrefix(clientId) === rpConf.subject;
46
+ if (!isClientIdMatch) {
47
+ throw new _errors2.InvalidRequestObjectError("Client ID does not match Request Object or Entity Configuration");
48
+ }
49
+ };
50
+ const validateX509HashClient = (certificateChain, clientId) => {
51
+ const [, x509Hash] = clientId.split(":");
52
+ const calculatedHash = _reactNativeQuickCrypto.default.createHash("sha-256").update(certificateChain[0], "base64").digest("base64url");
53
+ if (x509Hash !== calculatedHash) {
54
+ throw new _errors2.InvalidRequestObjectError("x509_hash does not match the hash of the x5c leaf certificate");
55
+ }
56
+ };
57
+ const stripOpenIdFederationPrefix = clientId => clientId.replace("openid_federation:", "");
35
58
  //# sourceMappingURL=05-verify-request-object.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_ioWalletOid4vp","require","_callbacks","_config","_errors","_sdkErrorMapper","_mappers","verifyRequestObject","requestObjectEncodedJwt","_ref","clientId","rpConf","parsedRequestObject","sdkParseAuthorizeRequest","config","sdkConfigV1_3","requestObjectJwt","callbacks","verifyJwt","partialCallbacks","catch","mapSdkRequestObjectError","payload","isClientIdMatch","client_id","subject","InvalidRequestObjectError","requestObject","mapToRequestObject","exports"],"sourceRoot":"../../../../../src","sources":["credential/presentation/v1.3.3/05-verify-request-object.ts"],"mappings":";;;;;;AACA,IAAAA,eAAA,GAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AACA,IAAAI,eAAA,GAAAJ,OAAA;AACA,IAAAK,QAAA,GAAAL,OAAA;AAEO,MAAMM,mBAAiE,GAC5E,MAAAA,CAAOC,uBAAuB,EAAAC,IAAA,KAA2B;EAAA,IAAzB;IAAEC,QAAQ;IAAEC;EAAO,CAAC,GAAAF,IAAA;EAClD,MAAMG,mBAAmB,GAAG,MAAM,IAAAC,qCAAwB,EAAC;IACzDC,MAAM,EAAEC,qBAAa;IACrBC,gBAAgB,EAAER,uBAAuB;IACzCS,SAAS,EAAE;MACTC,SAAS,EAAEC,2BAAgB,CAACD;IAC9B;EACF,CAAC,CAAC,CAACE,KAAK,CAACC,wCAAwB,CAAC;EAElC,MAAMC,OAAO,GAAGV,mBAAmB,CAACU,OAAO;EAE3C,MAAMC,eAAe,GACnBb,QAAQ,KAAKY,OAAO,CAACE,SAAS,IAAId,QAAQ,KAAKC,MAAM,CAACc,OAAO;EAE/D,IAAI,CAACF,eAAe,EAAE;IACpB,MAAM,IAAIG,iCAAyB,CACjC,iEACF,CAAC;EACH;EAEA,OAAO;IACLC,aAAa,EAAE,IAAAC,2BAAkB,EAACN,OAAO;EAC3C,CAAC;AACH,CAAC;AAACO,OAAA,CAAAtB,mBAAA,GAAAA,mBAAA"}
1
+ {"version":3,"names":["_ioWalletOid4vp","require","_reactNativeQuickCrypto","_interopRequireDefault","_callbacks","_config","_errors","_errors2","_sdkErrorMapper","_mappers","obj","__esModule","default","verifyRequestObject","requestObjectEncodedJwt","_ref","clientId","rpConf","parsedRequestObject","sdkParseAuthorizeRequest","config","sdkConfigV1_3","requestObjectJwt","callbacks","verifyJwt","partialCallbacks","catch","mapSdkRequestObjectError","rawRequestObject","clientIdPrefix","extractClientIdPrefix","ClientIdPrefix","X509_HASH","validateX509HashClient","header","x5c","OPENID_FEDERATION","NONE","validateOpenIDFederationClient","requestObject","mapToRequestObject","exports","IoWalletError","isClientIdMatch","payload","client_id","stripOpenIdFederationPrefix","subject","InvalidRequestObjectError","certificateChain","x509Hash","split","calculatedHash","QuickCrypto","createHash","update","digest","replace"],"sourceRoot":"../../../../../src","sources":["credential/presentation/v1.3.3/05-verify-request-object.ts"],"mappings":";;;;;;AACA,IAAAA,eAAA,GAAAC,OAAA;AAKA,IAAAC,uBAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,UAAA,GAAAH,OAAA;AACA,IAAAI,OAAA,GAAAJ,OAAA;AACA,IAAAK,OAAA,GAAAL,OAAA;AACA,IAAAM,QAAA,GAAAN,OAAA;AACA,IAAAO,eAAA,GAAAP,OAAA;AACA,IAAAQ,QAAA,GAAAR,OAAA;AAA+C,SAAAE,uBAAAO,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAGxC,MAAMG,mBAAiE,GAC5E,MAAAA,CAAOC,uBAAuB,EAAAC,IAAA,KAA2B;EAAA,IAAzB;IAAEC,QAAQ;IAAEC;EAAO,CAAC,GAAAF,IAAA;EAClD,MAAMG,mBAAmB,GAAG,MAAM,IAAAC,qCAAwB,EAAC;IACzDC,MAAM,EAAEC,qBAAa;IACrBC,gBAAgB,EAAER,uBAAuB;IACzCS,SAAS,EAAE;MACTC,SAAS,EAAEC,2BAAgB,CAACD;IAC9B;EACF,CAAC,CAAC,CAACE,KAAK,CAACC,wCAAwB,CAAC;EAElC,MAAMC,gBAAgB,GAAGV,mBAAuC;EAEhE,MAAMW,cAAc,GAAG,IAAAC,qCAAqB,EAACd,QAAQ,CAAC;EAEtD,IAAIa,cAAc,KAAKE,8BAAc,CAACC,SAAS,EAAE;IAC/CC,sBAAsB,CAACL,gBAAgB,CAACM,MAAM,CAACC,GAAG,EAAEnB,QAAQ,CAAC;EAC/D;EAEA,IACEa,cAAc,KAAKE,8BAAc,CAACK,iBAAiB,IACnDP,cAAc,KAAKE,8BAAc,CAACM,IAAI,EACtC;IACAC,8BAA8B,CAACV,gBAAgB,EAAEZ,QAAQ,EAAEC,MAAM,CAAC;EACpE;EAEA,OAAO;IACLsB,aAAa,EAAE,IAAAC,2BAAkB,EAACZ,gBAAgB;EACpD,CAAC;AACH,CAAC;AAACa,OAAA,CAAA5B,mBAAA,GAAAA,mBAAA;AAEJ,MAAMyB,8BAA8B,GAAGA,CACrCC,aAA+B,EAC/BvB,QAAgB,EAChBC,MAAsC,KACnC;EACH,IAAI,CAACA,MAAM,EAAE;IACX,MAAM,IAAIyB,qBAAa,CACrB,uEACF,CAAC;EACH;EAEA,MAAMC,eAAe,GACnB3B,QAAQ,KAAKuB,aAAa,CAACK,OAAO,CAACC,SAAS,IAC5CC,2BAA2B,CAAC9B,QAAQ,CAAC,KAAKC,MAAM,CAAC8B,OAAO;EAE1D,IAAI,CAACJ,eAAe,EAAE;IACpB,MAAM,IAAIK,kCAAyB,CACjC,iEACF,CAAC;EACH;AACF,CAAC;AAED,MAAMf,sBAAsB,GAAGA,CAC7BgB,gBAA0B,EAC1BjC,QAAgB,KACb;EACH,MAAM,GAAGkC,QAAQ,CAAC,GAAGlC,QAAQ,CAACmC,KAAK,CAAC,GAAG,CAAC;EAExC,MAAMC,cAAc,GAAGC,+BAAW,CAACC,UAAU,CAAC,SAAS,CAAC,CACrDC,MAAM,CAACN,gBAAgB,CAAC,CAAC,CAAC,EAAG,QAAQ,CAAC,CACtCO,MAAM,CAAC,WAAW,CAAC;EAEtB,IAAIN,QAAQ,KAAKE,cAAc,EAAE;IAC/B,MAAM,IAAIJ,kCAAyB,CACjC,+DACF,CAAC;EACH;AACF,CAAC;AAED,MAAMF,2BAA2B,GAAI9B,QAAgB,IACnDA,QAAQ,CAACyC,OAAO,CAAC,oBAAoB,EAAE,EAAE,CAAC"}
@@ -7,8 +7,8 @@ exports.evaluateDcqlQuery = void 0;
7
7
  var _dcql = require("dcql");
8
8
  var _valibot = require("valibot");
9
9
  var _errors = require("../common/errors");
10
- var mdocUtils = _interopRequireWildcard(require("./utils.mdoc"));
11
10
  var sdJwtUtils = _interopRequireWildcard(require("../common/utils/sd-jwt"));
11
+ var mdocUtils = _interopRequireWildcard(require("../common/utils/mdoc"));
12
12
  var _dcql2 = require("../common/utils/dcql");
13
13
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
14
14
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
@@ -48,7 +48,7 @@ const evaluateDcqlQuery = async function (query, credentialsSdJwt) {
48
48
  vct
49
49
  } = matchOutput;
50
50
  const [keyTag, credential] = credentialsById[vct];
51
- const requiredDisclosures = (0, mdocUtils.getClaimsFromDcqlMatch)(match);
51
+ const requiredDisclosures = (0, _dcql2.getClaimsFromDcqlMatch)(match);
52
52
  const presentationFrame = (0, _dcql2.getPresentationFrameFromDcqlMatch)(match, parsedQuery);
53
53
  return {
54
54
  id,
@@ -1 +1 @@
1
- {"version":3,"names":["_dcql","require","_valibot","_errors","mdocUtils","_interopRequireWildcard","sdJwtUtils","_dcql2","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","evaluateDcqlQuery","query","credentialsSdJwt","credentialsMdoc","arguments","length","undefined","credentials","Promise","all","mapCredentialsToObj","flat","credentialsById","reduce","acc","c","vct","doctype","original_credential","parsedQuery","DcqlQuery","parse","validate","queryResult","can_be_satisfied","CredentialsNotFoundError","extractFailedCredentialsDetails","getDcqlQueryMatches","map","_ref","_queryResult$credenti","_match$valid_credenti","id","match","purposes","credential_sets","filter","_set$matching_options","matching_options","includes","credentialSet","_credentialSet$purpos","description","purpose","toString","required","Boolean","matchOutput","valid_credentials","meta","output","credential_format","keyTag","credential","requiredDisclosures","getClaimsFromDcqlMatch","presentationFrame","getPresentationFrameFromDcqlMatch","format","getPresentationFrameFromClaims","Error","error","isValiError","DcqlError","message","code","cause","issues","exports"],"sourceRoot":"../../../../../src","sources":["credential/presentation/v1.3.3/06-evaluate-dcql-query.ts"],"mappings":"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"}
1
+ {"version":3,"names":["_dcql","require","_valibot","_errors","sdJwtUtils","_interopRequireWildcard","mdocUtils","_dcql2","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","evaluateDcqlQuery","query","credentialsSdJwt","credentialsMdoc","arguments","length","undefined","credentials","Promise","all","mapCredentialsToObj","flat","credentialsById","reduce","acc","c","vct","doctype","original_credential","parsedQuery","DcqlQuery","parse","validate","queryResult","can_be_satisfied","CredentialsNotFoundError","extractFailedCredentialsDetails","getDcqlQueryMatches","map","_ref","_queryResult$credenti","_match$valid_credenti","id","match","purposes","credential_sets","filter","_set$matching_options","matching_options","includes","credentialSet","_credentialSet$purpos","description","purpose","toString","required","Boolean","matchOutput","valid_credentials","meta","output","credential_format","keyTag","credential","requiredDisclosures","getClaimsFromDcqlMatch","presentationFrame","getPresentationFrameFromDcqlMatch","format","getPresentationFrameFromClaims","Error","error","isValiError","DcqlError","message","code","cause","issues","exports"],"sourceRoot":"../../../../../src","sources":["credential/presentation/v1.3.3/06-evaluate-dcql-query.ts"],"mappings":"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"}
@@ -79,14 +79,17 @@ const sendAuthorizationResponse = async function (requestObject, remotePresentat
79
79
  appFetch = fetch
80
80
  } = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
81
81
  try {
82
- const {
83
- presentations
84
- } = remotePresentation;
82
+ if (!rpConf && !requestObject.client_metadata) {
83
+ throw new _errors.IoWalletError("At least one of rpConf or requestObject.client_metadata must be provided to send the authorization response");
84
+ }
85
+
86
+ // When the RP is not an OpenID Federation client, rpConf will be undefined
87
+ // so the keys are taken from the Request Object's client_metadata.
85
88
  const rpJwks = {
86
- jwks: rpConf.jwks,
87
- encrypted_response_enc_values_supported: rpConf.encrypted_response_enc_values_supported
89
+ jwks: (rpConf === null || rpConf === void 0 ? void 0 : rpConf.jwks) ?? requestObject.client_metadata.jwks,
90
+ encrypted_response_enc_values_supported: (rpConf === null || rpConf === void 0 ? void 0 : rpConf.encrypted_response_enc_values_supported) ?? requestObject.client_metadata.encrypted_response_enc_values_supported
88
91
  };
89
- const vp_token = presentations.reduce((acc, p) => {
92
+ const vp_token = remotePresentation.presentations.reduce((acc, p) => {
90
93
  (acc[p.credentialId] ??= []).push(p.vpToken);
91
94
  return acc;
92
95
  }, {});
@@ -1 +1 @@
1
- {"version":3,"names":["_ioWalletOid4vp","require","_callbacks","_sdkErrorMapper","_misc","_errors","_types","_http","_sdJwt","_crypto","_mdoc","prepareRemotePresentations","credentials","authRequestObject","generatedNonce","generateRandomAlphaNumericString","presentations","Promise","all","map","item","format","vp_token","prepareVpToken","nonce","clientId","credential","presentationFrame","createCryptoContextFor","keyTag","requestedClaims","requiredDisclosures","_ref","name","credentialId","id","vpToken","prepareVpTokenMdoc","responseUri","doctype","_ref2","IoWalletError","exports","sendAuthorizationResponse","requestObject","remotePresentation","rpConf","appFetch","fetch","arguments","length","undefined","rpJwks","jwks","encrypted_response_enc_values_supported","reduce","acc","p","push","jarm","sdkCreateAuthorizationResponse","callbacks","encryptJwe","partialCallbacks","generateRandom","sdkFetchAuthorizationResponse","authorizationResponseJarm","responseJwe","presentationResponseUri","response_uri","err","mapSdkAuthorizationResponseError","sendAuthorizationErrorResponse","_ref3","error","errorDescription","requestBody","buildDirectPostBody","error_description","method","headers","body","then","hasStatusOrThrow","RelyingPartyResponseError","res","json","AuthorizationResponse","parse"],"sourceRoot":"../../../../../src","sources":["credential/presentation/v1.3.3/07-send-authorization-response.ts"],"mappings":"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"}
1
+ {"version":3,"names":["_ioWalletOid4vp","require","_callbacks","_sdkErrorMapper","_misc","_errors","_types","_http","_sdJwt","_crypto","_mdoc","prepareRemotePresentations","credentials","authRequestObject","generatedNonce","generateRandomAlphaNumericString","presentations","Promise","all","map","item","format","vp_token","prepareVpToken","nonce","clientId","credential","presentationFrame","createCryptoContextFor","keyTag","requestedClaims","requiredDisclosures","_ref","name","credentialId","id","vpToken","prepareVpTokenMdoc","responseUri","doctype","_ref2","IoWalletError","exports","sendAuthorizationResponse","requestObject","remotePresentation","rpConf","appFetch","fetch","arguments","length","undefined","client_metadata","rpJwks","jwks","encrypted_response_enc_values_supported","reduce","acc","p","push","jarm","sdkCreateAuthorizationResponse","callbacks","encryptJwe","partialCallbacks","generateRandom","sdkFetchAuthorizationResponse","authorizationResponseJarm","responseJwe","presentationResponseUri","response_uri","err","mapSdkAuthorizationResponseError","sendAuthorizationErrorResponse","_ref3","error","errorDescription","requestBody","buildDirectPostBody","error_description","method","headers","body","then","hasStatusOrThrow","RelyingPartyResponseError","res","json","AuthorizationResponse","parse"],"sourceRoot":"../../../../../src","sources":["credential/presentation/v1.3.3/07-send-authorization-response.ts"],"mappings":"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"}
@@ -5,28 +5,40 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.mapToRequestObject = exports.mapToRelyingPartyConfig = void 0;
7
7
  var _mappers = require("../../../utils/mappers");
8
- const mapToRelyingPartyConfig = (0, _mappers.createMapper)(x => {
8
+ const mapToRelyingPartyConfig = (0, _mappers.createMapper)(_ref => {
9
+ let {
10
+ payload
11
+ } = _ref;
9
12
  const {
10
13
  federation_entity,
11
14
  openid_credential_verifier
12
- } = x.payload.metadata;
15
+ } = payload.metadata;
13
16
  return {
14
- subject: x.payload.sub,
17
+ subject: payload.sub,
15
18
  jwks: openid_credential_verifier.jwks,
16
19
  federation_entity,
17
20
  encrypted_response_enc_values_supported: openid_credential_verifier.encrypted_response_enc_values_supported
18
21
  };
19
22
  });
20
23
  exports.mapToRelyingPartyConfig = mapToRelyingPartyConfig;
21
- const mapToRequestObject = (0, _mappers.createMapper)(x => ({
22
- iss: x.iss,
23
- client_id: x.client_id,
24
- dcql_query: x.dcql_query,
25
- nonce: x.nonce,
26
- response_uri: x.response_uri,
27
- state: x.state,
28
- response_mode: x.response_mode,
29
- response_type: x.response_type
30
- }));
24
+ const mapToRequestObject = (0, _mappers.createMapper)(_ref2 => {
25
+ let {
26
+ payload,
27
+ header
28
+ } = _ref2;
29
+ return {
30
+ iss: payload.iss,
31
+ client_id: payload.client_id,
32
+ dcql_query: payload.dcql_query,
33
+ nonce: payload.nonce,
34
+ response_uri: payload.response_uri,
35
+ state: payload.state,
36
+ response_mode: payload.response_mode,
37
+ response_type: payload.response_type,
38
+ client_metadata: payload.client_metadata,
39
+ x5c: header.x5c,
40
+ trust_chain: header.trust_chain
41
+ };
42
+ });
31
43
  exports.mapToRequestObject = mapToRequestObject;
32
44
  //# sourceMappingURL=mappers.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_mappers","require","mapToRelyingPartyConfig","createMapper","x","federation_entity","openid_credential_verifier","payload","metadata","subject","sub","jwks","encrypted_response_enc_values_supported","exports","mapToRequestObject","iss","client_id","dcql_query","nonce","response_uri","state","response_mode","response_type"],"sourceRoot":"../../../../../src","sources":["credential/presentation/v1.3.3/mappers.ts"],"mappings":";;;;;;AACA,IAAAA,QAAA,GAAAC,OAAA;AAKO,MAAMC,uBAAuB,GAAG,IAAAC,qBAAY,EAGhDC,CAAC,IAAK;EACP,MAAM;IAAEC,iBAAiB;IAAEC;EAA2B,CAAC,GAAGF,CAAC,CAACG,OAAO,CAACC,QAAQ;EAE5E,OAAO;IACLC,OAAO,EAAEL,CAAC,CAACG,OAAO,CAACG,GAAG;IACtBC,IAAI,EAAEL,0BAA0B,CAACK,IAAI;IACrCN,iBAAiB;IACjBO,uCAAuC,EACrCN,0BAA0B,CAACM;EAC/B,CAAC;AACH,CAAC,CAAC;AAACC,OAAA,CAAAX,uBAAA,GAAAA,uBAAA;AAEI,MAAMY,kBAAkB,GAAG,IAAAX,qBAAY,EAG3CC,CAAC,KAAM;EACRW,GAAG,EAAEX,CAAC,CAACW,GAAG;EACVC,SAAS,EAAEZ,CAAC,CAACY,SAAS;EACtBC,UAAU,EAAEb,CAAC,CAACa,UAAU;EACxBC,KAAK,EAAEd,CAAC,CAACc,KAAK;EACdC,YAAY,EAAEf,CAAC,CAACe,YAAY;EAC5BC,KAAK,EAAEhB,CAAC,CAACgB,KAAK;EACdC,aAAa,EAAEjB,CAAC,CAACiB,aAAa;EAC9BC,aAAa,EAAElB,CAAC,CAACkB;AACnB,CAAC,CAAC,CAAC;AAACT,OAAA,CAAAC,kBAAA,GAAAA,kBAAA"}
1
+ {"version":3,"names":["_mappers","require","mapToRelyingPartyConfig","createMapper","_ref","payload","federation_entity","openid_credential_verifier","metadata","subject","sub","jwks","encrypted_response_enc_values_supported","exports","mapToRequestObject","_ref2","header","iss","client_id","dcql_query","nonce","response_uri","state","response_mode","response_type","client_metadata","x5c","trust_chain"],"sourceRoot":"../../../../../src","sources":["credential/presentation/v1.3.3/mappers.ts"],"mappings":";;;;;;AACA,IAAAA,QAAA,GAAAC,OAAA;AAKO,MAAMC,uBAAuB,GAAG,IAAAC,qBAAY,EAGjDC,IAAA,IAAiB;EAAA,IAAhB;IAAEC;EAAQ,CAAC,GAAAD,IAAA;EACZ,MAAM;IAAEE,iBAAiB;IAAEC;EAA2B,CAAC,GAAGF,OAAO,CAACG,QAAQ;EAE1E,OAAO;IACLC,OAAO,EAAEJ,OAAO,CAACK,GAAG;IACpBC,IAAI,EAAEJ,0BAA0B,CAACI,IAAI;IACrCL,iBAAiB;IACjBM,uCAAuC,EACrCL,0BAA0B,CAACK;EAC/B,CAAC;AACH,CAAC,CAAC;AAACC,OAAA,CAAAX,uBAAA,GAAAA,uBAAA;AAEI,MAAMY,kBAAkB,GAAG,IAAAX,qBAAY,EAC5CY,KAAA;EAAA,IAAC;IAAEV,OAAO;IAAEW;EAAO,CAAC,GAAAD,KAAA;EAAA,OAAM;IACxBE,GAAG,EAAEZ,OAAO,CAACY,GAAG;IAChBC,SAAS,EAAEb,OAAO,CAACa,SAAS;IAC5BC,UAAU,EAAEd,OAAO,CAACc,UAAU;IAC9BC,KAAK,EAAEf,OAAO,CAACe,KAAK;IACpBC,YAAY,EAAEhB,OAAO,CAACgB,YAAY;IAClCC,KAAK,EAAEjB,OAAO,CAACiB,KAAK;IACpBC,aAAa,EAAElB,OAAO,CAACkB,aAAa;IACpCC,aAAa,EAAEnB,OAAO,CAACmB,aAAa;IACpCC,eAAe,EAAEpB,OAAO,CAACoB,eAAe;IACxCC,GAAG,EAAEV,MAAM,CAACU,GAAG;IACfC,WAAW,EAAEX,MAAM,CAACW;EACtB,CAAC;AAAA,CACH,CAAC;AAACd,OAAA,CAAAC,kBAAA,GAAAA,kBAAA"}
@@ -3,13 +3,16 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.RequestObjectPayload = exports.AuthorizationResponse = void 0;
6
+ exports.RawRequestObject = exports.AuthorizationResponse = void 0;
7
7
  var z = _interopRequireWildcard(require("zod"));
8
8
  var _ioWalletOid4vp = require("@pagopa/io-wallet-oid4vp");
9
9
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
10
10
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
11
- const RequestObjectPayload = _ioWalletOid4vp.zOpenid4vpAuthorizationRequestPayload;
12
- exports.RequestObjectPayload = RequestObjectPayload;
11
+ const RawRequestObject = z.object({
12
+ header: _ioWalletOid4vp.zOpenid4vpAuthorizationRequestHeaderV1_3,
13
+ payload: _ioWalletOid4vp.zOpenid4vpAuthorizationRequestPayload
14
+ });
15
+ exports.RawRequestObject = RawRequestObject;
13
16
  const AuthorizationResponse = z.object({
14
17
  status: z.string().optional(),
15
18
  response_code: z.string().optional(),
@@ -1 +1 @@
1
- {"version":3,"names":["z","_interopRequireWildcard","require","_ioWalletOid4vp","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","RequestObjectPayload","sdkRequestObjectPayload","exports","AuthorizationResponse","object","status","string","optional","response_code","redirect_uri"],"sourceRoot":"../../../../../src","sources":["credential/presentation/v1.3.3/types.ts"],"mappings":";;;;;;AAAA,IAAAA,CAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AAA4G,SAAAE,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAJ,wBAAAQ,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAE,GAAA,CAAAL,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAX,GAAA,QAAAW,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAd,GAAA,EAAAW,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAV,GAAA,EAAAW,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAX,GAAA,CAAAW,GAAA,SAAAL,MAAA,CAAAJ,OAAA,GAAAF,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAhB,GAAA,EAAAM,MAAA,YAAAA,MAAA;AAGrG,MAAMW,oBAAoB,GAAGC,qDAAuB;AAACC,OAAA,CAAAF,oBAAA,GAAAA,oBAAA;AAGrD,MAAMG,qBAAqB,GAAG7B,CAAC,CAAC8B,MAAM,CAAC;EAC5CC,MAAM,EAAE/B,CAAC,CAACgC,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EAC7BC,aAAa,EAAElC,CAAC,CAACgC,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EACpCE,YAAY,EAAEnC,CAAC,CAACgC,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC;AACpC,CAAC,CAAC;AAACL,OAAA,CAAAC,qBAAA,GAAAA,qBAAA"}
1
+ {"version":3,"names":["z","_interopRequireWildcard","require","_ioWalletOid4vp","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","RawRequestObject","object","header","zOpenid4vpAuthorizationRequestHeaderV1_3","payload","zOpenid4vpAuthorizationRequestPayload","exports","AuthorizationResponse","status","string","optional","response_code","redirect_uri"],"sourceRoot":"../../../../../src","sources":["credential/presentation/v1.3.3/types.ts"],"mappings":";;;;;;AAAA,IAAAA,CAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AAGkC,SAAAE,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAJ,wBAAAQ,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAE,GAAA,CAAAL,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAX,GAAA,QAAAW,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAd,GAAA,EAAAW,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAV,GAAA,EAAAW,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAX,GAAA,CAAAW,GAAA,SAAAL,MAAA,CAAAJ,OAAA,GAAAF,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAhB,GAAA,EAAAM,MAAA,YAAAA,MAAA;AAG3B,MAAMW,gBAAgB,GAAG1B,CAAC,CAAC2B,MAAM,CAAC;EACvCC,MAAM,EAAEC,wDAAwC;EAChDC,OAAO,EAAEC;AACX,CAAC,CAAC;AAACC,OAAA,CAAAN,gBAAA,GAAAA,gBAAA;AAGI,MAAMO,qBAAqB,GAAGjC,CAAC,CAAC2B,MAAM,CAAC;EAC5CO,MAAM,EAAElC,CAAC,CAACmC,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EAC7BC,aAAa,EAAErC,CAAC,CAACmC,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EACpCE,YAAY,EAAEtC,CAAC,CAACmC,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC;AACpC,CAAC,CAAC;AAACJ,OAAA,CAAAC,qBAAA,GAAAA,qBAAA"}
@@ -111,15 +111,16 @@ const res = await wallet.CredentialStatus.statusList.get(
111
111
  );
112
112
 
113
113
  // Verify and parse the status list response to get the credential status
114
- const { status } =
114
+ const { status, statusBit } =
115
115
  await wallet.CredentialStatus.statusList.verifyAndParse(
116
- issuerConf,
116
+ issuerConf.keys,
117
117
  res
118
118
  );
119
119
 
120
120
  return {
121
121
  statusList: res.statusList,
122
122
  status,
123
+ statusBit,
123
124
  };
124
125
  ```
125
126
 
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.getStatusList = void 0;
7
7
  var _ioReactNativeIso = require("@pagopa/io-react-native-iso18013");
8
+ var _ioReactNativeJwt = require("@pagopa/io-react-native-jwt");
8
9
  var _jwtStatusList = require("@sd-jwt/jwt-status-list");
9
10
  var _errors = require("../../../utils/errors");
10
11
  var _misc = require("../../../utils/misc");
@@ -32,11 +33,32 @@ const getStatusList = async function (credential, format) {
32
33
  uri,
33
34
  idx
34
35
  } = await getStatusListEntry(credential, format);
35
- const statusList = await appFetch(uri, {
36
- headers: {
37
- Accept: "application/statuslist+jwt"
38
- }
39
- }).then((0, _misc.hasStatusOrThrow)(200)).then(response => response.text());
36
+ const fetchStatusList = function () {
37
+ let options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
38
+ return appFetch(uri, {
39
+ headers: {
40
+ Accept: "application/statuslist+jwt",
41
+ ...(options.cacheDisabled && {
42
+ "Cache-Control": "no-cache"
43
+ })
44
+ }
45
+ }).then((0, _misc.hasStatusOrThrow)(200)).then(response => response.text());
46
+ };
47
+
48
+ // When the HTTP response includes cache headers, fetch will return a cached response and the JWT might be expired
49
+ let statusList = await fetchStatusList();
50
+ const decoded = (0, _ioReactNativeJwt.decode)(statusList);
51
+ const {
52
+ exp
53
+ } = decoded.payload;
54
+
55
+ // If the status list JWT is expired, try to fetch it again bypassing the HTTP cache.
56
+ // If it is still expired after the refetch, `verifyAndParseStatusList` will throw.
57
+ if (exp && exp < Math.floor(Date.now() / 1000)) {
58
+ statusList = await fetchStatusList({
59
+ cacheDisabled: true
60
+ });
61
+ }
40
62
  return {
41
63
  statusList,
42
64
  uri,
@@ -1 +1 @@
1
- {"version":3,"names":["_ioReactNativeIso","require","_jwtStatusList","_errors","_misc","getStatusListEntry","credential","format","statusListEntry","_decoded$issuerAuth","decoded","CBOR","decode","issuerAuth","payload","status","status_list","getStatusListFromJWT","IoWalletError","getStatusList","appFetch","fetch","arguments","length","undefined","uri","idx","statusList","headers","Accept","then","hasStatusOrThrow","response","text","exports"],"sourceRoot":"../../../../../src","sources":["credential/status/v1.3.3/01-status-list.ts"],"mappings":";;;;;;AAAA,IAAAA,iBAAA,GAAAC,OAAA;AACA,IAAAC,cAAA,GAAAD,OAAA;AAIA,IAAAE,OAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AAIA,MAAMI,kBAAkB,GAAG,MAAAA,CACzBC,UAAkB,EAClBC,MAAwB,KACK;EAC7B,IAAIC,eAA4C;EAEhD,IAAID,MAAM,KAAK,UAAU,EAAE;IAAA,IAAAE,mBAAA;IACzB;IACA,MAAMC,OAAO,GAAG,MAAMC,sBAAI,CAACC,MAAM,CAACN,UAAU,CAAC;IAC7CE,eAAe,IAAAC,mBAAA,GAAGC,OAAO,CAACG,UAAU,cAAAJ,mBAAA,gBAAAA,mBAAA,GAAlBA,mBAAA,CAAoBK,OAAO,cAAAL,mBAAA,gBAAAA,mBAAA,GAA3BA,mBAAA,CAA6BM,MAAM,cAAAN,mBAAA,uBAAnCA,mBAAA,CAAqCO,WAAW;EACpE;EAEA,IAAIT,MAAM,KAAK,WAAW,EAAE;IAC1BC,eAAe,GAAG,IAAAS,mCAAoB,EAACX,UAAU,CAAC;EACpD;EAEA,IAAI,CAACE,eAAe,EAAE;IACpB,MAAM,IAAIU,qBAAa,CAAC,+CAA+C,CAAC;EAC1E;EAEA,OAAOV,eAAe;AACxB,CAAC;AAEM,MAAMW,aAAmC,GAAG,eAAAA,CACjDb,UAAU,EACVC,MAAM,EAEH;EAAA,IADH;IAAEa,QAAQ,GAAGC;EAAM,CAAC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EAEzB,MAAM;IAAEG,GAAG;IAAEC;EAAI,CAAC,GAAG,MAAMrB,kBAAkB,CAACC,UAAU,EAAEC,MAAM,CAAC;EAEjE,MAAMoB,UAAU,GAAG,MAAMP,QAAQ,CAACK,GAAG,EAAE;IACrCG,OAAO,EAAE;MACPC,MAAM,EAAE;IACV;EACF,CAAC,CAAC,CACCC,IAAI,CAAC,IAAAC,sBAAgB,EAAC,GAAG,CAAC,CAAC,CAC3BD,IAAI,CAAEE,QAAQ,IAAKA,QAAQ,CAACC,IAAI,CAAC,CAAC,CAAC;EAEtC,OAAO;IAAEN,UAAU;IAAEF,GAAG;IAAEC,GAAG;IAAEnB,MAAM,EAAE;EAAM,CAAC;AAChD,CAAC;AAAC2B,OAAA,CAAAf,aAAA,GAAAA,aAAA"}
1
+ {"version":3,"names":["_ioReactNativeIso","require","_ioReactNativeJwt","_jwtStatusList","_errors","_misc","getStatusListEntry","credential","format","statusListEntry","_decoded$issuerAuth","decoded","CBOR","decode","issuerAuth","payload","status","status_list","getStatusListFromJWT","IoWalletError","getStatusList","appFetch","fetch","arguments","length","undefined","uri","idx","fetchStatusList","options","headers","Accept","cacheDisabled","then","hasStatusOrThrow","response","text","statusList","decodeJwt","exp","Math","floor","Date","now","exports"],"sourceRoot":"../../../../../src","sources":["credential/status/v1.3.3/01-status-list.ts"],"mappings":";;;;;;AAAA,IAAAA,iBAAA,GAAAC,OAAA;AACA,IAAAC,iBAAA,GAAAD,OAAA;AACA,IAAAE,cAAA,GAAAF,OAAA;AAIA,IAAAG,OAAA,GAAAH,OAAA;AACA,IAAAI,KAAA,GAAAJ,OAAA;AAIA,MAAMK,kBAAkB,GAAG,MAAAA,CACzBC,UAAkB,EAClBC,MAAwB,KACK;EAC7B,IAAIC,eAA4C;EAEhD,IAAID,MAAM,KAAK,UAAU,EAAE;IAAA,IAAAE,mBAAA;IACzB;IACA,MAAMC,OAAO,GAAG,MAAMC,sBAAI,CAACC,MAAM,CAACN,UAAU,CAAC;IAC7CE,eAAe,IAAAC,mBAAA,GAAGC,OAAO,CAACG,UAAU,cAAAJ,mBAAA,gBAAAA,mBAAA,GAAlBA,mBAAA,CAAoBK,OAAO,cAAAL,mBAAA,gBAAAA,mBAAA,GAA3BA,mBAAA,CAA6BM,MAAM,cAAAN,mBAAA,uBAAnCA,mBAAA,CAAqCO,WAAW;EACpE;EAEA,IAAIT,MAAM,KAAK,WAAW,EAAE;IAC1BC,eAAe,GAAG,IAAAS,mCAAoB,EAACX,UAAU,CAAC;EACpD;EAEA,IAAI,CAACE,eAAe,EAAE;IACpB,MAAM,IAAIU,qBAAa,CAAC,+CAA+C,CAAC;EAC1E;EAEA,OAAOV,eAAe;AACxB,CAAC;AAEM,MAAMW,aAAmC,GAAG,eAAAA,CACjDb,UAAU,EACVC,MAAM,EAEH;EAAA,IADH;IAAEa,QAAQ,GAAGC;EAAM,CAAC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EAEzB,MAAM;IAAEG,GAAG;IAAEC;EAAI,CAAC,GAAG,MAAMrB,kBAAkB,CAACC,UAAU,EAAEC,MAAM,CAAC;EAEjE,MAAMoB,eAAe,GAAG,SAAAA,CAAA;IAAA,IAACC,OAAoC,GAAAN,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;IAAA,OAChEF,QAAQ,CAACK,GAAG,EAAE;MACZI,OAAO,EAAE;QACPC,MAAM,EAAE,4BAA4B;QACpC,IAAIF,OAAO,CAACG,aAAa,IAAI;UAAE,eAAe,EAAE;QAAW,CAAC;MAC9D;IACF,CAAC,CAAC,CACCC,IAAI,CAAC,IAAAC,sBAAgB,EAAC,GAAG,CAAC,CAAC,CAC3BD,IAAI,CAAEE,QAAQ,IAAKA,QAAQ,CAACC,IAAI,CAAC,CAAC,CAAC;EAAA;;EAExC;EACA,IAAIC,UAAU,GAAG,MAAMT,eAAe,CAAC,CAAC;EACxC,MAAMjB,OAAO,GAAG,IAAA2B,wBAAS,EAACD,UAAU,CAAC;EAErC,MAAM;IAAEE;EAAI,CAAC,GAAG5B,OAAO,CAACI,OAAO;;EAE/B;EACA;EACA,IAAIwB,GAAG,IAAIA,GAAG,GAAGC,IAAI,CAACC,KAAK,CAACC,IAAI,CAACC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE;IAC9CN,UAAU,GAAG,MAAMT,eAAe,CAAC;MAAEI,aAAa,EAAE;IAAK,CAAC,CAAC;EAC7D;EACA,OAAO;IAAEK,UAAU;IAAEX,GAAG;IAAEC,GAAG;IAAEnB,MAAM,EAAE;EAAM,CAAC;AAChD,CAAC;AAACoC,OAAA,CAAAxB,aAAA,GAAAA,aAAA"}
@@ -6,18 +6,29 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.verifyAndParseStatusList = void 0;
7
7
  var _ioReactNativeJwt = require("@pagopa/io-react-native-jwt");
8
8
  var _jwtStatusList = require("@sd-jwt/jwt-status-list");
9
- const verifyAndParseStatusList = async (issuerConf, _ref) => {
9
+ /**
10
+ * Mapping of status bits to their corresponding meaning as defined in the specification.
11
+ * @see https://italia.github.io/eid-wallet-it-docs/releases/1.3.3/en/credential-revocation.html#token-status-lists
12
+ */
13
+ const CredentialStatusMap = {
14
+ 0x00: "VALID",
15
+ 0x01: "INVALID",
16
+ 0x02: "SUSPENDED",
17
+ 0x03: "UPDATE",
18
+ 0x0b: "ATTRIBUTE_UPDATE"
19
+ };
20
+ const verifyAndParseStatusList = async (keys, _ref) => {
10
21
  let {
11
22
  statusList: rawStatusList,
12
23
  idx
13
24
  } = _ref;
14
- await (0, _ioReactNativeJwt.verify)(rawStatusList, issuerConf.keys);
25
+ await (0, _ioReactNativeJwt.verify)(rawStatusList, keys);
15
26
  const statusList = (0, _jwtStatusList.getListFromStatusListJWT)(rawStatusList);
16
- const status = statusList.getStatus(idx);
17
-
18
- // TODO: [SIW-3992] Improve the return object with additional data, throw CredentialInvalidStatus when invalid
27
+ const statusBit = statusList.getStatus(idx);
28
+ const status = CredentialStatusMap[statusBit];
19
29
  return {
20
- status
30
+ status,
31
+ statusBit: `0x${statusBit.toString(16).padStart(2, "0").toUpperCase()}`
21
32
  };
22
33
  };
23
34
  exports.verifyAndParseStatusList = verifyAndParseStatusList;
@@ -1 +1 @@
1
- {"version":3,"names":["_ioReactNativeJwt","require","_jwtStatusList","verifyAndParseStatusList","issuerConf","_ref","statusList","rawStatusList","idx","verify","keys","getListFromStatusListJWT","status","getStatus","exports"],"sourceRoot":"../../../../../src","sources":["credential/status/v1.3.3/02-verify-and-parse-status-list.ts"],"mappings":";;;;;;AAAA,IAAAA,iBAAA,GAAAC,OAAA;AACA,IAAAC,cAAA,GAAAD,OAAA;AAGO,MAAME,wBAAyD,GAAG,MAAAA,CACvEC,UAAU,EAAAC,IAAA,KAEP;EAAA,IADH;IAAEC,UAAU,EAAEC,aAAa;IAAEC;EAAI,CAAC,GAAAH,IAAA;EAElC,MAAM,IAAAI,wBAAM,EAACF,aAAa,EAAEH,UAAU,CAACM,IAAI,CAAC;EAE5C,MAAMJ,UAAU,GAAG,IAAAK,uCAAwB,EAACJ,aAAa,CAAC;EAE1D,MAAMK,MAAM,GAAGN,UAAU,CAACO,SAAS,CAACL,GAAG,CAAC;;EAExC;EACA,OAAO;IACLI;EACF,CAAC;AACH,CAAC;AAACE,OAAA,CAAAX,wBAAA,GAAAA,wBAAA"}
1
+ {"version":3,"names":["_ioReactNativeJwt","require","_jwtStatusList","CredentialStatusMap","verifyAndParseStatusList","keys","_ref","statusList","rawStatusList","idx","verify","getListFromStatusListJWT","statusBit","getStatus","status","toString","padStart","toUpperCase","exports"],"sourceRoot":"../../../../../src","sources":["credential/status/v1.3.3/02-verify-and-parse-status-list.ts"],"mappings":";;;;;;AAAA,IAAAA,iBAAA,GAAAC,OAAA;AACA,IAAAC,cAAA,GAAAD,OAAA;AAGA;AACA;AACA;AACA;AACA,MAAME,mBAAmB,GAAG;EAC1B,IAAI,EAAE,OAAO;EACb,IAAI,EAAE,SAAS;EACf,IAAI,EAAE,WAAW;EACjB,IAAI,EAAE,QAAQ;EACd,IAAI,EAAE;AACR,CAAU;AAIH,MAAMC,wBAAyD,GAAG,MAAAA,CACvEC,IAAI,EAAAC,IAAA,KAED;EAAA,IADH;IAAEC,UAAU,EAAEC,aAAa;IAAEC;EAAI,CAAC,GAAAH,IAAA;EAElC,MAAM,IAAAI,wBAAM,EAACF,aAAa,EAAEH,IAAI,CAAC;EAEjC,MAAME,UAAU,GAAG,IAAAI,uCAAwB,EAACH,aAAa,CAAC;EAC1D,MAAMI,SAAS,GAAGL,UAAU,CAACM,SAAS,CAACJ,GAAG,CAAwB;EAClE,MAAMK,MAAM,GAAGX,mBAAmB,CAACS,SAAS,CAAC;EAE7C,OAAO;IACLE,MAAM;IACNF,SAAS,EAAG,KAAIA,SAAS,CAACG,QAAQ,CAAC,EAAE,CAAC,CAACC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAACC,WAAW,CAAC,CAAE;EACxE,CAAC;AACH,CAAC;AAACC,OAAA,CAAAd,wBAAA,GAAAA,wBAAA"}