@pagopa/io-react-native-wallet 1.7.0 → 1.8.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 (146) hide show
  1. package/lib/commonjs/client/generated/wallet-provider.js +37 -11
  2. package/lib/commonjs/client/generated/wallet-provider.js.map +1 -1
  3. package/lib/commonjs/credential/issuance/02-get-issuer-config.js +83 -3
  4. package/lib/commonjs/credential/issuance/02-get-issuer-config.js.map +1 -1
  5. package/lib/commonjs/credential/issuance/03-start-user-authorization.js +5 -7
  6. package/lib/commonjs/credential/issuance/03-start-user-authorization.js.map +1 -1
  7. package/lib/commonjs/credential/issuance/06-obtain-credential.js +27 -10
  8. package/lib/commonjs/credential/issuance/06-obtain-credential.js.map +1 -1
  9. package/lib/commonjs/credential/issuance/07-verify-and-parse-credential.js +50 -46
  10. package/lib/commonjs/credential/issuance/07-verify-and-parse-credential.js.map +1 -1
  11. package/lib/commonjs/credential/issuance/README.md +1 -1
  12. package/lib/commonjs/credential/issuance/const.js +1 -1
  13. package/lib/commonjs/credential/issuance/const.js.map +1 -1
  14. package/lib/commonjs/credential/issuance/index.js +6 -0
  15. package/lib/commonjs/credential/issuance/index.js.map +1 -1
  16. package/lib/commonjs/credential/issuance/types.js +19 -10
  17. package/lib/commonjs/credential/issuance/types.js.map +1 -1
  18. package/lib/commonjs/credential/presentation/07-evaluate-dcql-query.js +10 -3
  19. package/lib/commonjs/credential/presentation/07-evaluate-dcql-query.js.map +1 -1
  20. package/lib/commonjs/credential/presentation/07-evaluate-input-descriptor.js +11 -4
  21. package/lib/commonjs/credential/presentation/07-evaluate-input-descriptor.js.map +1 -1
  22. package/lib/commonjs/credential/presentation/08-send-authorization-response.js +3 -3
  23. package/lib/commonjs/credential/presentation/08-send-authorization-response.js.map +1 -1
  24. package/lib/commonjs/credential/presentation/types.js.map +1 -1
  25. package/lib/commonjs/entity/openid-connect/issuer/types.js +2 -2
  26. package/lib/commonjs/entity/openid-connect/issuer/types.js.map +1 -1
  27. package/lib/commonjs/entity/trust/types.js +19 -30
  28. package/lib/commonjs/entity/trust/types.js.map +1 -1
  29. package/lib/commonjs/index.js +7 -0
  30. package/lib/commonjs/index.js.map +1 -1
  31. package/lib/commonjs/mdoc/index.js +4 -4
  32. package/lib/commonjs/mdoc/index.js.map +1 -1
  33. package/lib/commonjs/sd-jwt/index.js +2 -2
  34. package/lib/commonjs/sd-jwt/index.js.map +1 -1
  35. package/lib/commonjs/sd-jwt/types.js +1 -1
  36. package/lib/commonjs/sd-jwt/types.js.map +1 -1
  37. package/lib/commonjs/utils/credential/issuance/07-verify-and-parse-credentials-utils.js +3 -2
  38. package/lib/commonjs/utils/credential/issuance/07-verify-and-parse-credentials-utils.js.map +1 -1
  39. package/lib/commonjs/utils/pop.js +1 -1
  40. package/lib/commonjs/utils/pop.js.map +1 -1
  41. package/lib/commonjs/wallet-instance-attestation/issuing.js +11 -7
  42. package/lib/commonjs/wallet-instance-attestation/issuing.js.map +1 -1
  43. package/lib/commonjs/wallet-instance-attestation/types.js +14 -19
  44. package/lib/commonjs/wallet-instance-attestation/types.js.map +1 -1
  45. package/lib/module/client/generated/wallet-provider.js +29 -7
  46. package/lib/module/client/generated/wallet-provider.js.map +1 -1
  47. package/lib/module/credential/issuance/02-get-issuer-config.js +80 -1
  48. package/lib/module/credential/issuance/02-get-issuer-config.js.map +1 -1
  49. package/lib/module/credential/issuance/03-start-user-authorization.js +5 -7
  50. package/lib/module/credential/issuance/03-start-user-authorization.js.map +1 -1
  51. package/lib/module/credential/issuance/06-obtain-credential.js +28 -11
  52. package/lib/module/credential/issuance/06-obtain-credential.js.map +1 -1
  53. package/lib/module/credential/issuance/07-verify-and-parse-credential.js +50 -46
  54. package/lib/module/credential/issuance/07-verify-and-parse-credential.js.map +1 -1
  55. package/lib/module/credential/issuance/README.md +1 -1
  56. package/lib/module/credential/issuance/const.js +1 -1
  57. package/lib/module/credential/issuance/const.js.map +1 -1
  58. package/lib/module/credential/issuance/index.js +2 -2
  59. package/lib/module/credential/issuance/index.js.map +1 -1
  60. package/lib/module/credential/issuance/types.js +15 -8
  61. package/lib/module/credential/issuance/types.js.map +1 -1
  62. package/lib/module/credential/presentation/07-evaluate-dcql-query.js +10 -3
  63. package/lib/module/credential/presentation/07-evaluate-dcql-query.js.map +1 -1
  64. package/lib/module/credential/presentation/07-evaluate-input-descriptor.js +11 -4
  65. package/lib/module/credential/presentation/07-evaluate-input-descriptor.js.map +1 -1
  66. package/lib/module/credential/presentation/08-send-authorization-response.js +3 -3
  67. package/lib/module/credential/presentation/08-send-authorization-response.js.map +1 -1
  68. package/lib/module/credential/presentation/types.js.map +1 -1
  69. package/lib/module/entity/openid-connect/issuer/types.js +2 -2
  70. package/lib/module/entity/openid-connect/issuer/types.js.map +1 -1
  71. package/lib/module/entity/trust/types.js +19 -30
  72. package/lib/module/entity/trust/types.js.map +1 -1
  73. package/lib/module/index.js +2 -1
  74. package/lib/module/index.js.map +1 -1
  75. package/lib/module/mdoc/index.js +4 -4
  76. package/lib/module/mdoc/index.js.map +1 -1
  77. package/lib/module/sd-jwt/index.js +2 -2
  78. package/lib/module/sd-jwt/index.js.map +1 -1
  79. package/lib/module/sd-jwt/types.js +1 -1
  80. package/lib/module/sd-jwt/types.js.map +1 -1
  81. package/lib/module/utils/credential/issuance/07-verify-and-parse-credentials-utils.js +3 -2
  82. package/lib/module/utils/credential/issuance/07-verify-and-parse-credentials-utils.js.map +1 -1
  83. package/lib/module/utils/pop.js +1 -1
  84. package/lib/module/utils/pop.js.map +1 -1
  85. package/lib/module/wallet-instance-attestation/issuing.js +13 -9
  86. package/lib/module/wallet-instance-attestation/issuing.js.map +1 -1
  87. package/lib/module/wallet-instance-attestation/types.js +12 -17
  88. package/lib/module/wallet-instance-attestation/types.js.map +1 -1
  89. package/lib/typescript/client/generated/wallet-provider.d.ts +146 -17
  90. package/lib/typescript/client/generated/wallet-provider.d.ts.map +1 -1
  91. package/lib/typescript/credential/issuance/02-get-issuer-config.d.ts +15 -0
  92. package/lib/typescript/credential/issuance/02-get-issuer-config.d.ts.map +1 -1
  93. package/lib/typescript/credential/issuance/03-start-user-authorization.d.ts.map +1 -1
  94. package/lib/typescript/credential/issuance/06-obtain-credential.d.ts +7 -2
  95. package/lib/typescript/credential/issuance/06-obtain-credential.d.ts.map +1 -1
  96. package/lib/typescript/credential/issuance/07-verify-and-parse-credential.d.ts.map +1 -1
  97. package/lib/typescript/credential/issuance/const.d.ts +1 -1
  98. package/lib/typescript/credential/issuance/const.d.ts.map +1 -1
  99. package/lib/typescript/credential/issuance/index.d.ts +2 -2
  100. package/lib/typescript/credential/issuance/index.d.ts.map +1 -1
  101. package/lib/typescript/credential/issuance/types.d.ts +52 -21
  102. package/lib/typescript/credential/issuance/types.d.ts.map +1 -1
  103. package/lib/typescript/credential/presentation/07-evaluate-dcql-query.d.ts.map +1 -1
  104. package/lib/typescript/credential/presentation/07-evaluate-input-descriptor.d.ts.map +1 -1
  105. package/lib/typescript/credential/presentation/08-send-authorization-response.d.ts +1 -1
  106. package/lib/typescript/credential/presentation/types.d.ts +4 -2
  107. package/lib/typescript/credential/presentation/types.d.ts.map +1 -1
  108. package/lib/typescript/entity/openid-connect/issuer/types.d.ts +17 -17
  109. package/lib/typescript/entity/openid-connect/issuer/types.d.ts.map +1 -1
  110. package/lib/typescript/entity/trust/index.d.ts +150 -140
  111. package/lib/typescript/entity/trust/index.d.ts.map +1 -1
  112. package/lib/typescript/entity/trust/types.d.ts +540 -344
  113. package/lib/typescript/entity/trust/types.d.ts.map +1 -1
  114. package/lib/typescript/index.d.ts +2 -1
  115. package/lib/typescript/index.d.ts.map +1 -1
  116. package/lib/typescript/pid/sd-jwt/types.d.ts +2 -2
  117. package/lib/typescript/sd-jwt/index.d.ts +12 -12
  118. package/lib/typescript/sd-jwt/types.d.ts +14 -14
  119. package/lib/typescript/utils/credential/issuance/07-verify-and-parse-credentials-utils.d.ts.map +1 -1
  120. package/lib/typescript/wallet-instance-attestation/issuing.d.ts.map +1 -1
  121. package/lib/typescript/wallet-instance-attestation/types.d.ts +50 -102
  122. package/lib/typescript/wallet-instance-attestation/types.d.ts.map +1 -1
  123. package/package.json +2 -2
  124. package/src/client/generated/wallet-provider.ts +39 -7
  125. package/src/credential/issuance/02-get-issuer-config.ts +117 -0
  126. package/src/credential/issuance/03-start-user-authorization.ts +7 -8
  127. package/src/credential/issuance/06-obtain-credential.ts +41 -14
  128. package/src/credential/issuance/07-verify-and-parse-credential.ts +7 -3
  129. package/src/credential/issuance/README.md +1 -1
  130. package/src/credential/issuance/const.ts +1 -0
  131. package/src/credential/issuance/index.ts +6 -1
  132. package/src/credential/issuance/types.ts +21 -8
  133. package/src/credential/presentation/07-evaluate-dcql-query.ts +15 -5
  134. package/src/credential/presentation/07-evaluate-input-descriptor.ts +21 -4
  135. package/src/credential/presentation/08-send-authorization-response.ts +3 -3
  136. package/src/credential/presentation/types.ts +3 -0
  137. package/src/entity/openid-connect/issuer/types.ts +2 -1
  138. package/src/entity/trust/types.ts +22 -20
  139. package/src/index.ts +2 -0
  140. package/src/mdoc/index.ts +4 -4
  141. package/src/sd-jwt/index.ts +2 -2
  142. package/src/sd-jwt/types.ts +1 -1
  143. package/src/utils/credential/issuance/07-verify-and-parse-credentials-utils.ts +3 -2
  144. package/src/utils/pop.ts +1 -1
  145. package/src/wallet-instance-attestation/issuing.ts +14 -8
  146. package/src/wallet-instance-attestation/types.ts +16 -22
@@ -1 +1 @@
1
- {"version":3,"names":["buildMockMDOCTestScenario","claims","nameSpaces","cryptographic_suites_supported","cryptographic_binding_methods_supported","format","display","issuerSigned","map","namespace","elementIdentifier","elementValue","issuerAuth","unprotectedHeader","protectedHeader","payload","validityInfo","signed","Date","validFrom","validUntil","deviceKeyInfo","deviceKey","kty","crv","x","y","valueDigests","buildMockSDJWTTestScenario","disclosures","sdJwt","header","typ","alg","status","status_assertion","credential_hash_alg","vct","iss","sub","expiry_date","issuing_authority","issuing_country","exp","_sd_alg","cnf","jwk","_sd"],"sourceRoot":"../../../../../src","sources":["utils/credential/issuance/07-verify-and-parse-credentials-utils.ts"],"mappings":";;;;;;;AAuEO,SAASA,yBAAyBA,CACvCC,MAAkB,EAClBC,UAA2B,EACa;EACxC,OAAO,CACL;IACE,uBAAuB,EAAE;MACvBC,8BAA8B,EAAE,EAAE;MAClCC,uCAAuC,EAAE,EAAE;MAC3CC,MAAM,EAAE,UAAU;MAClBC,OAAO,EAAE,EAAE;MACXL,MAAM,EAAE;QACN,mBAAmB,EAAEA;MACvB;IACF;EACF,CAAC,EACD,uBAAuB,EACvB;IACEM,YAAY,EAAE;MACZL,UAAU,EAAE;QACV,mBAAmB,EAAEA,UAAU,CAACM,GAAG,CAAEC,SAAS,KAAM;UAClDC,iBAAiB,EAAED,SAAS,CAAC,CAAC,CAAC;UAC/BE,YAAY,EAAEF,SAAS,CAAC,CAAC;QAC3B,CAAC,CAAC;MACJ,CAAC;MACDG,UAAU,EAAE;QACVC,iBAAiB,EAAE,EAAE;QACrBC,eAAe,EAAE,QAAQ;QACzBC,OAAO,EAAE;UACPC,YAAY,EAAE;YACZC,MAAM,EAAE,IAAIC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;YAC5BC,SAAS,EAAE,IAAID,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;YAC/BE,UAAU,EAAE,IAAIF,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;UACjC,CAAC;UACDG,aAAa,EAAE;YACbC,SAAS,EAAE;cACTC,GAAG,EAAE,IAAI;cACTC,GAAG,EAAE,OAAO;cACZC,CAAC,EAAE,QAAQ;cACXC,CAAC,EAAE;YACL;UACF,CAAC;UACDC,YAAY,EAAE,CAAC;QACjB;MACF;IACF;EACF,CAAC,EACD,KAAK,EACL,IAAI,CACL;AACH;AAEO,SAASC,0BAA0BA,CACxC3B,MAAmB,EACnB4B,WAAwC,EACC;EACzC,OAAO,CACL;IACE,yBAAyB,EAAE;MACzB1B,8BAA8B,EAAE,EAAE;MAClCC,uCAAuC,EAAE,EAAE;MAC3CC,MAAM,EAAE,WAAW;MACnBC,OAAO,EAAE,EAAE;MACXL;IACF;EACF,CAAC,EACD;IACE6B,KAAK,EAAE;MACLC,MAAM,EAAE;QACNC,GAAG,EAAE,WAAW;QAChBC,GAAG,EAAE;MACP,CAAC;MACDlB,OAAO,EAAE;QACPmB,MAAM,EAAE;UACNC,gBAAgB,EAAE;YAChBC,mBAAmB,EAAE;UACvB;QACF,CAAC;QACDC,GAAG,EAAE,yBAAyB;QAC9BC,GAAG,EAAE,QAAQ;QACbC,GAAG,EAAE,QAAQ;QACbC,WAAW,EAAE,QAAQ;QACrBC,iBAAiB,EAAE,QAAQ;QAC3BC,eAAe,EAAE,QAAQ;QACzBC,GAAG,EAAE,CAAC;QACNC,OAAO,EAAE,SAAS;QAClBC,GAAG,EAAE;UACHC,GAAG,EAAE;YACHvB,GAAG,EAAE;UACP;QACF,CAAC;QACDwB,GAAG,EAAE;MACP;IACF,CAAC;IACDlB;EACF,CAAC,EACD,KAAK,EACL,IAAI,CACL;AACH"}
1
+ {"version":3,"names":["buildMockMDOCTestScenario","claims","nameSpaces","cryptographic_suites_supported","cryptographic_binding_methods_supported","format","display","issuerSigned","map","namespace","elementIdentifier","elementValue","issuerAuth","unprotectedHeader","protectedHeader","payload","validityInfo","signed","Date","validFrom","validUntil","deviceKeyInfo","deviceKey","kty","crv","x","y","valueDigests","buildMockSDJWTTestScenario","disclosures","dc_sd_jwt_PersonIdentificationData","vct","sdJwt","header","typ","alg","status","status_assertion","credential_hash_alg","iss","sub","expiry_date","issuing_authority","issuing_country","exp","_sd_alg","cnf","jwk","_sd"],"sourceRoot":"../../../../../src","sources":["utils/credential/issuance/07-verify-and-parse-credentials-utils.ts"],"mappings":";;;;;;;AAuEO,SAASA,yBAAyBA,CACvCC,MAAkB,EAClBC,UAA2B,EACa;EACxC,OAAO,CACL;IACE,uBAAuB,EAAE;MACvBC,8BAA8B,EAAE,EAAE;MAClCC,uCAAuC,EAAE,EAAE;MAC3CC,MAAM,EAAE,UAAU;MAClBC,OAAO,EAAE,EAAE;MACXL,MAAM,EAAE;QACN,mBAAmB,EAAEA;MACvB;IACF;EACF,CAAC,EACD,uBAAuB,EACvB;IACEM,YAAY,EAAE;MACZL,UAAU,EAAE;QACV,mBAAmB,EAAEA,UAAU,CAACM,GAAG,CAAEC,SAAS,KAAM;UAClDC,iBAAiB,EAAED,SAAS,CAAC,CAAC,CAAC;UAC/BE,YAAY,EAAEF,SAAS,CAAC,CAAC;QAC3B,CAAC,CAAC;MACJ,CAAC;MACDG,UAAU,EAAE;QACVC,iBAAiB,EAAE,EAAE;QACrBC,eAAe,EAAE,QAAQ;QACzBC,OAAO,EAAE;UACPC,YAAY,EAAE;YACZC,MAAM,EAAE,IAAIC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;YAC5BC,SAAS,EAAE,IAAID,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;YAC/BE,UAAU,EAAE,IAAIF,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;UACjC,CAAC;UACDG,aAAa,EAAE;YACbC,SAAS,EAAE;cACTC,GAAG,EAAE,IAAI;cACTC,GAAG,EAAE,OAAO;cACZC,CAAC,EAAE,QAAQ;cACXC,CAAC,EAAE;YACL;UACF,CAAC;UACDC,YAAY,EAAE,CAAC;QACjB;MACF;IACF;EACF,CAAC,EACD,KAAK,EACL,IAAI,CACL;AACH;AAEO,SAASC,0BAA0BA,CACxC3B,MAAmB,EACnB4B,WAAwC,EACC;EACzC,OAAO,CACL;IACEC,kCAAkC,EAAE;MAClC3B,8BAA8B,EAAE,EAAE;MAClCC,uCAAuC,EAAE,EAAE;MAC3CC,MAAM,EAAE,WAAW;MACnB0B,GAAG,EAAE,6BAA6B;MAClCzB,OAAO,EAAE,EAAE;MACXL;IACF;EACF,CAAC,EACD;IACE+B,KAAK,EAAE;MACLC,MAAM,EAAE;QACNC,GAAG,EAAE,WAAW;QAChBC,GAAG,EAAE;MACP,CAAC;MACDpB,OAAO,EAAE;QACPqB,MAAM,EAAE;UACNC,gBAAgB,EAAE;YAChBC,mBAAmB,EAAE;UACvB;QACF,CAAC;QACDP,GAAG,EAAE,6BAA6B;QAClCQ,GAAG,EAAE,QAAQ;QACbC,GAAG,EAAE,QAAQ;QACbC,WAAW,EAAE,QAAQ;QACrBC,iBAAiB,EAAE,QAAQ;QAC3BC,eAAe,EAAE,QAAQ;QACzBC,GAAG,EAAE,CAAC;QACNC,OAAO,EAAE,SAAS;QAClBC,GAAG,EAAE;UACHC,GAAG,EAAE;YACHxB,GAAG,EAAE;UACP;QACF,CAAC;QACDyB,GAAG,EAAE;MACP;IACF,CAAC;IACDnB;EACF,CAAC,EACD,KAAK,EACL,IAAI,CACL;AACH"}
@@ -19,7 +19,7 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
19
19
  const createPopToken = async (payload, crypto) => {
20
20
  const kid = await crypto.getPublicKey().then(_ => _.kid);
21
21
  return new _ioReactNativeJwt.SignJWT(crypto).setPayload(payload).setProtectedHeader({
22
- typ: "jwt-client-attestation-pop",
22
+ typ: "oauth-client-attestation-pop+jwt",
23
23
  kid
24
24
  }).setIssuedAt().setExpirationTime("5min").sign();
25
25
  };
@@ -1 +1 @@
1
- {"version":3,"names":["z","_interopRequireWildcard","require","_ioReactNativeJwt","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","createPopToken","payload","crypto","kid","getPublicKey","then","_","SignJWT","setPayload","setProtectedHeader","typ","setIssuedAt","setExpirationTime","sign","exports","PoPPayload","object","jti","string","aud","iss"],"sourceRoot":"../../../src","sources":["utils/pop.ts"],"mappings":";;;;;;AAAA,IAAAA,CAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,iBAAA,GAAAD,OAAA;AAA0E,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;AAE1E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMW,cAAc,GAAG,MAAAA,CAC5BC,OAAmB,EACnBC,MAAqB,KACD;EACpB,MAAMC,GAAG,GAAG,MAAMD,MAAM,CAACE,YAAY,CAAC,CAAC,CAACC,IAAI,CAAEC,CAAC,IAAKA,CAAC,CAACH,GAAG,CAAC;EAC1D,OAAO,IAAII,yBAAO,CAACL,MAAM,CAAC,CACvBM,UAAU,CAACP,OAAO,CAAC,CACnBQ,kBAAkB,CAAC;IAClBC,GAAG,EAAE,4BAA4B;IACjCP;EACF,CAAC,CAAC,CACDQ,WAAW,CAAC,CAAC,CACbC,iBAAiB,CAAC,MAAM,CAAC,CACzBC,IAAI,CAAC,CAAC;AACX,CAAC;AAACC,OAAA,CAAAd,cAAA,GAAAA,cAAA;AAGK,MAAMe,UAAU,GAAGzC,CAAC,CAAC0C,MAAM,CAAC;EACjCC,GAAG,EAAE3C,CAAC,CAAC4C,MAAM,CAAC,CAAC;EACfC,GAAG,EAAE7C,CAAC,CAAC4C,MAAM,CAAC,CAAC;EACfE,GAAG,EAAE9C,CAAC,CAAC4C,MAAM,CAAC;AAChB,CAAC,CAAC;AAACJ,OAAA,CAAAC,UAAA,GAAAA,UAAA"}
1
+ {"version":3,"names":["z","_interopRequireWildcard","require","_ioReactNativeJwt","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","createPopToken","payload","crypto","kid","getPublicKey","then","_","SignJWT","setPayload","setProtectedHeader","typ","setIssuedAt","setExpirationTime","sign","exports","PoPPayload","object","jti","string","aud","iss"],"sourceRoot":"../../../src","sources":["utils/pop.ts"],"mappings":";;;;;;AAAA,IAAAA,CAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,iBAAA,GAAAD,OAAA;AAA0E,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;AAE1E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMW,cAAc,GAAG,MAAAA,CAC5BC,OAAmB,EACnBC,MAAqB,KACD;EACpB,MAAMC,GAAG,GAAG,MAAMD,MAAM,CAACE,YAAY,CAAC,CAAC,CAACC,IAAI,CAAEC,CAAC,IAAKA,CAAC,CAACH,GAAG,CAAC;EAC1D,OAAO,IAAII,yBAAO,CAACL,MAAM,CAAC,CACvBM,UAAU,CAACP,OAAO,CAAC,CACnBQ,kBAAkB,CAAC;IAClBC,GAAG,EAAE,kCAAkC;IACvCP;EACF,CAAC,CAAC,CACDQ,WAAW,CAAC,CAAC,CACbC,iBAAiB,CAAC,MAAM,CAAC,CACzBC,IAAI,CAAC,CAAC;AACX,CAAC;AAACC,OAAA,CAAAd,cAAA,GAAAA,cAAA;AAGK,MAAMe,UAAU,GAAGzC,CAAC,CAAC0C,MAAM,CAAC;EACjCC,GAAG,EAAE3C,CAAC,CAAC4C,MAAM,CAAC,CAAC;EACfC,GAAG,EAAE7C,CAAC,CAAC4C,MAAM,CAAC,CAAC;EACfE,GAAG,EAAE9C,CAAC,CAAC4C,MAAM,CAAC;AAChB,CAAC,CAAC;AAACJ,OAAA,CAAAC,UAAA,GAAAA,UAAA"}
@@ -38,8 +38,8 @@ async function getAttestationRequest(challenge, wiaCryptoContext, integrityConte
38
38
  } = await integrityContext.getHardwareSignatureWithAuthData(JSON.stringify(clientData));
39
39
  return new _ioReactNativeJwt.SignJWT(wiaCryptoContext).setPayload({
40
40
  iss: keyThumbprint,
41
- sub: walletProviderBaseUrl,
42
- challenge,
41
+ aud: walletProviderBaseUrl,
42
+ nonce: challenge,
43
43
  hardware_signature: signature,
44
44
  integrity_assertion: authenticatorData,
45
45
  hardware_key_tag: hardwareKeyTag,
@@ -48,7 +48,7 @@ async function getAttestationRequest(challenge, wiaCryptoContext, integrityConte
48
48
  }
49
49
  }).setProtectedHeader({
50
50
  kid: publicKey.kid,
51
- typ: "war+jwt"
51
+ typ: "wp-war+jwt"
52
52
  }).setIssuedAt().setExpirationTime("1h").sign();
53
53
  }
54
54
 
@@ -80,13 +80,17 @@ const getAttestation = async _ref => {
80
80
  const signedAttestationRequest = await getAttestationRequest(challenge, wiaCryptoContext, integrityContext, walletProviderBaseUrl);
81
81
 
82
82
  // 3. Request WIA
83
- const tokenResponse = await api.post("/token", {
83
+ const tokenResponse = await api.post("/wallet-attestations", {
84
84
  body: {
85
- grant_type: "urn:ietf:params:oauth:grant-type:jwt-bearer",
86
85
  assertion: signedAttestationRequest
87
86
  }
88
- }).then(result => _types.TokenResponse.parse(result)).catch(handleAttestationCreationError);
89
- return tokenResponse.wallet_attestation;
87
+ }).then(_types.WalletAttestationResponse.parse).catch(handleAttestationCreationError);
88
+ const wallet_attestation = tokenResponse.wallet_attestations;
89
+ if (wallet_attestation && wallet_attestation[0]) {
90
+ // Return first because eudiw be return only jwt
91
+ return wallet_attestation[0].wallet_attestation;
92
+ }
93
+ throw new _errors.IoWalletError("Wallet Attestation response is empty!");
90
94
  };
91
95
  exports.getAttestation = getAttestation;
92
96
  const handleAttestationCreationError = e => {
@@ -1 +1 @@
1
- {"version":3,"names":["_ioReactNativeJwt","require","_jwk","_client","_errors","_types","getAttestationRequest","challenge","wiaCryptoContext","integrityContext","walletProviderBaseUrl","jwk","getPublicKey","parsedJwk","JWK","parse","keyThumbprint","thumbprint","publicKey","kid","clientData","jwk_thumbprint","hardwareKeyTag","getHardwareKeyTag","signature","authenticatorData","getHardwareSignatureWithAuthData","JSON","stringify","SignJWT","setPayload","iss","sub","hardware_signature","integrity_assertion","hardware_key_tag","cnf","fixBase64EncodingOnKey","setProtectedHeader","typ","setIssuedAt","setExpirationTime","sign","getAttestation","_ref","appFetch","fetch","api","getWalletProviderClient","get","then","response","nonce","signedAttestationRequest","tokenResponse","post","body","grant_type","assertion","result","TokenResponse","catch","handleAttestationCreationError","wallet_attestation","exports","e","WalletProviderResponseError","ResponseErrorBuilder","handle","code","WalletProviderResponseErrorCodes","WalletInstanceRevoked","message","WalletInstanceNotFound","WalletInstanceIntegrityFailed","WalletInstanceAttestationIssuingFailed","buildFrom"],"sourceRoot":"../../../src","sources":["wallet-instance-attestation/issuing.ts"],"mappings":"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"}
1
+ {"version":3,"names":["_ioReactNativeJwt","require","_jwk","_client","_errors","_types","getAttestationRequest","challenge","wiaCryptoContext","integrityContext","walletProviderBaseUrl","jwk","getPublicKey","parsedJwk","JWK","parse","keyThumbprint","thumbprint","publicKey","kid","clientData","jwk_thumbprint","hardwareKeyTag","getHardwareKeyTag","signature","authenticatorData","getHardwareSignatureWithAuthData","JSON","stringify","SignJWT","setPayload","iss","aud","nonce","hardware_signature","integrity_assertion","hardware_key_tag","cnf","fixBase64EncodingOnKey","setProtectedHeader","typ","setIssuedAt","setExpirationTime","sign","getAttestation","_ref","appFetch","fetch","api","getWalletProviderClient","get","then","response","signedAttestationRequest","tokenResponse","post","body","assertion","WalletAttestationResponse","catch","handleAttestationCreationError","wallet_attestation","wallet_attestations","IoWalletError","exports","e","WalletProviderResponseError","ResponseErrorBuilder","handle","code","WalletProviderResponseErrorCodes","WalletInstanceRevoked","message","WalletInstanceNotFound","WalletInstanceIntegrityFailed","WalletInstanceAttestationIssuingFailed","buildFrom"],"sourceRoot":"../../../src","sources":["wallet-instance-attestation/issuing.ts"],"mappings":"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"}
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.WalletInstanceAttestationRequestJwt = exports.WalletInstanceAttestationJwt = exports.TokenResponse = void 0;
6
+ exports.WalletInstanceAttestationRequestJwt = exports.WalletInstanceAttestationJwt = exports.WalletAttestationResponse = void 0;
7
7
  var _jwk = require("../utils/jwk");
8
8
  var z = _interopRequireWildcard(require("zod"));
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); }
@@ -32,7 +32,7 @@ const Jwt = z.object({
32
32
  });
33
33
  const WalletInstanceAttestationRequestJwt = z.object({
34
34
  header: z.intersection(Jwt.shape.header, z.object({
35
- typ: z.literal("war+jwt")
35
+ typ: z.literal("wp-war+jwt")
36
36
  })),
37
37
  payload: z.intersection(Jwt.shape.payload, z.object({
38
38
  aud: z.string(),
@@ -43,28 +43,23 @@ const WalletInstanceAttestationRequestJwt = z.object({
43
43
  exports.WalletInstanceAttestationRequestJwt = WalletInstanceAttestationRequestJwt;
44
44
  const WalletInstanceAttestationJwt = z.object({
45
45
  header: z.intersection(Jwt.shape.header, z.object({
46
- typ: z.literal("wallet-attestation+jwt")
46
+ typ: z.literal("oauth-client-attestation+jwt"),
47
+ trust_chain: z.array(z.string()).optional() // TODO: [SIW-2264] Make mandatory
47
48
  })),
49
+
48
50
  payload: z.intersection(Jwt.shape.payload, z.object({
49
51
  sub: z.string(),
50
- aal: z.string(),
51
- authorization_endpoint: z.string(),
52
- response_types_supported: z.array(z.string()),
53
- vp_formats_supported: z.object({
54
- "vc+sd-jwt": z.object({
55
- "sd-jwt_alg_values": z.array(z.string())
56
- }).optional(),
57
- "vp+sd-jwt": z.object({
58
- "sd-jwt_alg_values": z.array(z.string())
59
- }).optional()
60
- }),
61
- request_object_signing_alg_values_supported: z.array(z.string()),
62
- presentation_definition_uri_supported: z.boolean()
52
+ aal: z.string().optional(),
53
+ wallet_link: z.string().optional(),
54
+ wallet_name: z.string().optional()
63
55
  }))
64
56
  });
65
57
  exports.WalletInstanceAttestationJwt = WalletInstanceAttestationJwt;
66
- const TokenResponse = z.object({
67
- wallet_attestation: z.string()
58
+ const WalletAttestationResponse = z.object({
59
+ wallet_attestations: z.array(z.object({
60
+ wallet_attestation: z.string(),
61
+ format: z.enum(["jwt", "dc+sd-jwt", "mso_mdoc"])
62
+ }))
68
63
  });
69
- exports.TokenResponse = TokenResponse;
64
+ exports.WalletAttestationResponse = WalletAttestationResponse;
70
65
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_jwk","require","z","_interopRequireWildcard","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","UnixTime","number","min","max","Jwt","object","header","alg","string","kid","typ","x5c","array","optional","trust_chain","payload","iss","iat","exp","cnf","jwk","intersection","JWK","WalletInstanceAttestationRequestJwt","shape","literal","aud","jti","nonce","exports","WalletInstanceAttestationJwt","sub","aal","authorization_endpoint","response_types_supported","vp_formats_supported","request_object_signing_alg_values_supported","presentation_definition_uri_supported","boolean","TokenResponse","wallet_attestation"],"sourceRoot":"../../../src","sources":["wallet-instance-attestation/types.ts"],"mappings":"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"}
1
+ {"version":3,"names":["_jwk","require","z","_interopRequireWildcard","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","UnixTime","number","min","max","Jwt","object","header","alg","string","kid","typ","x5c","array","optional","trust_chain","payload","iss","iat","exp","cnf","jwk","intersection","JWK","WalletInstanceAttestationRequestJwt","shape","literal","aud","jti","nonce","exports","WalletInstanceAttestationJwt","sub","aal","wallet_link","wallet_name","WalletAttestationResponse","wallet_attestations","wallet_attestation","format","enum"],"sourceRoot":"../../../src","sources":["wallet-instance-attestation/types.ts"],"mappings":"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"}
@@ -1,10 +1,20 @@
1
1
  import z from "zod";
2
+ export const ApplicationInfo = z.object({
3
+ name: z.string(),
4
+ version: z.string()
5
+ });
2
6
  export const NonceDetailView = z.object({
3
7
  nonce: z.string()
4
8
  });
5
9
  export const WalletAttestationView = z.object({
6
10
  wallet_attestation: z.string()
7
11
  });
12
+ export const WalletAttestationsView = z.object({
13
+ wallet_attestations: z.array(z.object({
14
+ format: z.union([z.literal("jwt"), z.literal("dc+sd-jwt")]),
15
+ wallet_attestation: z.string()
16
+ }))
17
+ });
8
18
  export const CreateWalletInstanceBody = z.object({
9
19
  challenge: z.string(),
10
20
  key_attestation: z.string(),
@@ -14,12 +24,8 @@ export const CreateWalletAttestationBody = z.object({
14
24
  grant_type: z.literal("urn:ietf:params:oauth:grant-type:jwt-bearer"),
15
25
  assertion: z.string()
16
26
  });
17
- export const ProblemDetail = z.object({
18
- type: z.string().optional(),
19
- title: z.string().optional(),
20
- status: z.number().optional(),
21
- detail: z.string().optional(),
22
- instance: z.string().optional()
27
+ export const CreateWalletAttestationV2Body = z.object({
28
+ assertion: z.string()
23
29
  });
24
30
  export const SetWalletInstanceStatusBody = z.object({
25
31
  status: z.literal("REVOKED")
@@ -30,6 +36,13 @@ export const WalletInstanceData = z.object({
30
36
  is_revoked: z.boolean(),
31
37
  revocation_reason: z.union([RevocationReason, z.undefined()]).optional()
32
38
  });
39
+ export const ProblemDetail = z.object({
40
+ type: z.string().optional(),
41
+ title: z.string().optional(),
42
+ status: z.number().optional(),
43
+ detail: z.string().optional(),
44
+ instance: z.string().optional()
45
+ });
33
46
  export const get_GetNonce = {
34
47
  method: z.literal("GET"),
35
48
  path: z.literal("/nonce"),
@@ -73,6 +86,14 @@ export const post_CreateWalletAttestation = {
73
86
  }),
74
87
  response: WalletAttestationView
75
88
  };
89
+ export const post_CreateWalletAttestationV2 = {
90
+ method: z.literal("POST"),
91
+ path: z.literal("/wallet-attestations"),
92
+ parameters: z.object({
93
+ body: CreateWalletAttestationV2Body
94
+ }),
95
+ response: WalletAttestationsView
96
+ };
76
97
 
77
98
  // <EndpointByMethod>
78
99
  export const EndpointByMethod = {
@@ -82,7 +103,8 @@ export const EndpointByMethod = {
82
103
  },
83
104
  post: {
84
105
  "/wallet-instances": post_CreateWalletInstance,
85
- "/token": post_CreateWalletAttestation
106
+ "/token": post_CreateWalletAttestation,
107
+ "/wallet-attestations": post_CreateWalletAttestationV2
86
108
  },
87
109
  put: {
88
110
  "/wallet-instances/{id}/status": put_SetWalletInstanceStatus
@@ -1 +1 @@
1
- {"version":3,"names":["z","NonceDetailView","object","nonce","string","WalletAttestationView","wallet_attestation","CreateWalletInstanceBody","challenge","key_attestation","hardware_key_tag","CreateWalletAttestationBody","grant_type","literal","assertion","ProblemDetail","type","optional","title","status","number","detail","instance","SetWalletInstanceStatusBody","RevocationReason","union","WalletInstanceData","id","is_revoked","boolean","revocation_reason","undefined","get_GetNonce","method","path","parameters","never","response","post_CreateWalletInstance","body","unknown","get_GetWalletInstanceStatus","put_SetWalletInstanceStatus","post_CreateWalletAttestation","EndpointByMethod","get","post","put","ApiClient","baseUrl","constructor","fetcher","setBaseUrl","arguments","length","createApiClient"],"sourceRoot":"../../../../src","sources":["client/generated/wallet-provider.ts"],"mappings":"AAAA,OAAOA,CAAC,MAAM,KAAK;AAGnB,OAAO,MAAMC,eAAe,GAAGD,CAAC,CAACE,MAAM,CAAC;EACtCC,KAAK,EAAEH,CAAC,CAACI,MAAM,CAAC;AAClB,CAAC,CAAC;AAGF,OAAO,MAAMC,qBAAqB,GAAGL,CAAC,CAACE,MAAM,CAAC;EAC5CI,kBAAkB,EAAEN,CAAC,CAACI,MAAM,CAAC;AAC/B,CAAC,CAAC;AAGF,OAAO,MAAMG,wBAAwB,GAAGP,CAAC,CAACE,MAAM,CAAC;EAC/CM,SAAS,EAAER,CAAC,CAACI,MAAM,CAAC,CAAC;EACrBK,eAAe,EAAET,CAAC,CAACI,MAAM,CAAC,CAAC;EAC3BM,gBAAgB,EAAEV,CAAC,CAACI,MAAM,CAAC;AAC7B,CAAC,CAAC;AAGF,OAAO,MAAMO,2BAA2B,GAAGX,CAAC,CAACE,MAAM,CAAC;EAClDU,UAAU,EAAEZ,CAAC,CAACa,OAAO,CAAC,6CAA6C,CAAC;EACpEC,SAAS,EAAEd,CAAC,CAACI,MAAM,CAAC;AACtB,CAAC,CAAC;AAGF,OAAO,MAAMW,aAAa,GAAGf,CAAC,CAACE,MAAM,CAAC;EACpCc,IAAI,EAAEhB,CAAC,CAACI,MAAM,CAAC,CAAC,CAACa,QAAQ,CAAC,CAAC;EAC3BC,KAAK,EAAElB,CAAC,CAACI,MAAM,CAAC,CAAC,CAACa,QAAQ,CAAC,CAAC;EAC5BE,MAAM,EAAEnB,CAAC,CAACoB,MAAM,CAAC,CAAC,CAACH,QAAQ,CAAC,CAAC;EAC7BI,MAAM,EAAErB,CAAC,CAACI,MAAM,CAAC,CAAC,CAACa,QAAQ,CAAC,CAAC;EAC7BK,QAAQ,EAAEtB,CAAC,CAACI,MAAM,CAAC,CAAC,CAACa,QAAQ,CAAC;AAChC,CAAC,CAAC;AAGF,OAAO,MAAMM,2BAA2B,GAAGvB,CAAC,CAACE,MAAM,CAAC;EAClDiB,MAAM,EAAEnB,CAAC,CAACa,OAAO,CAAC,SAAS;AAC7B,CAAC,CAAC;AAGF,OAAO,MAAMW,gBAAgB,GAAGxB,CAAC,CAACyB,KAAK,CAAC,CACtCzB,CAAC,CAACa,OAAO,CAAC,+BAA+B,CAAC,EAC1Cb,CAAC,CAACa,OAAO,CAAC,6BAA6B,CAAC,EACxCb,CAAC,CAACa,OAAO,CAAC,iBAAiB,CAAC,CAC7B,CAAC;AAGF,OAAO,MAAMa,kBAAkB,GAAG1B,CAAC,CAACE,MAAM,CAAC;EACzCyB,EAAE,EAAE3B,CAAC,CAACI,MAAM,CAAC,CAAC;EACdwB,UAAU,EAAE5B,CAAC,CAAC6B,OAAO,CAAC,CAAC;EACvBC,iBAAiB,EAAE9B,CAAC,CAACyB,KAAK,CAAC,CAACD,gBAAgB,EAAExB,CAAC,CAAC+B,SAAS,CAAC,CAAC,CAAC,CAAC,CAACd,QAAQ,CAAC;AACzE,CAAC,CAAC;AAGF,OAAO,MAAMe,YAAY,GAAG;EAC1BC,MAAM,EAAEjC,CAAC,CAACa,OAAO,CAAC,KAAK,CAAC;EACxBqB,IAAI,EAAElC,CAAC,CAACa,OAAO,CAAC,QAAQ,CAAC;EACzBsB,UAAU,EAAEnC,CAAC,CAACoC,KAAK,CAAC,CAAC;EACrBC,QAAQ,EAAEpC;AACZ,CAAC;AAGD,OAAO,MAAMqC,yBAAyB,GAAG;EACvCL,MAAM,EAAEjC,CAAC,CAACa,OAAO,CAAC,MAAM,CAAC;EACzBqB,IAAI,EAAElC,CAAC,CAACa,OAAO,CAAC,mBAAmB,CAAC;EACpCsB,UAAU,EAAEnC,CAAC,CAACE,MAAM,CAAC;IACnBqC,IAAI,EAAEhC;EACR,CAAC,CAAC;EACF8B,QAAQ,EAAErC,CAAC,CAACwC,OAAO,CAAC;AACtB,CAAC;AAGD,OAAO,MAAMC,2BAA2B,GAAG;EACzCR,MAAM,EAAEjC,CAAC,CAACa,OAAO,CAAC,KAAK,CAAC;EACxBqB,IAAI,EAAElC,CAAC,CAACa,OAAO,CAAC,+BAA+B,CAAC;EAChDsB,UAAU,EAAEnC,CAAC,CAACE,MAAM,CAAC;IACnBgC,IAAI,EAAElC,CAAC,CAACE,MAAM,CAAC;MACbyB,EAAE,EAAE3B,CAAC,CAACI,MAAM,CAAC;IACf,CAAC;EACH,CAAC,CAAC;EACFiC,QAAQ,EAAEX;AACZ,CAAC;AAGD,OAAO,MAAMgB,2BAA2B,GAAG;EACzCT,MAAM,EAAEjC,CAAC,CAACa,OAAO,CAAC,KAAK,CAAC;EACxBqB,IAAI,EAAElC,CAAC,CAACa,OAAO,CAAC,+BAA+B,CAAC;EAChDsB,UAAU,EAAEnC,CAAC,CAACE,MAAM,CAAC;IACnBgC,IAAI,EAAElC,CAAC,CAACE,MAAM,CAAC;MACbyB,EAAE,EAAE3B,CAAC,CAACI,MAAM,CAAC;IACf,CAAC,CAAC;IACFmC,IAAI,EAAEhB;EACR,CAAC,CAAC;EACFc,QAAQ,EAAErC,CAAC,CAACwC,OAAO,CAAC;AACtB,CAAC;AAGD,OAAO,MAAMG,4BAA4B,GAAG;EAC1CV,MAAM,EAAEjC,CAAC,CAACa,OAAO,CAAC,MAAM,CAAC;EACzBqB,IAAI,EAAElC,CAAC,CAACa,OAAO,CAAC,QAAQ,CAAC;EACzBsB,UAAU,EAAEnC,CAAC,CAACE,MAAM,CAAC;IACnBqC,IAAI,EAAE5B;EACR,CAAC,CAAC;EACF0B,QAAQ,EAAEhC;AACZ,CAAC;;AAED;AACA,OAAO,MAAMuC,gBAAgB,GAAG;EAC9BC,GAAG,EAAE;IACH,QAAQ,EAAEb,YAAY;IACtB,+BAA+B,EAAES;EACnC,CAAC;EACDK,IAAI,EAAE;IACJ,mBAAmB,EAAER,yBAAyB;IAC9C,QAAQ,EAAEK;EACZ,CAAC;EACDI,GAAG,EAAE;IACH,+BAA+B,EAAEL;EACnC;AACF,CAAC;;AAED;AAEA;AAKA;AAEA;AAyCA;AAEA;AACA,OAAO,MAAMM,SAAS,CAAC;EACrBC,OAAO,GAAW,EAAE;EAEpBC,WAAWA,CAAQC,OAAgB,EAAE;IAAA,KAAlBA,OAAgB,GAAhBA,OAAgB;EAAG;EAEtCC,UAAUA,CAACH,OAAe,EAAE;IAC1B,IAAI,CAACA,OAAO,GAAGA,OAAO;IACtB,OAAO,IAAI;EACb;;EAEA;EACAJ,GAAGA,CACDX,IAAU,EAE+B;IACzC,OAAO,IAAI,CAACiB,OAAO,CAAC,KAAK,EAAE,IAAI,CAACF,OAAO,GAAGf,IAAI,EAAAmB,SAAA,CAAAC,MAAA,QAAAvB,SAAA,GAAAsB,SAAA,GAAW,CAAC;EAC5D;EACA;;EAEA;EACAP,IAAIA,CACFZ,IAAU,EAE+B;IACzC,OAAO,IAAI,CAACiB,OAAO,CAAC,MAAM,EAAE,IAAI,CAACF,OAAO,GAAGf,IAAI,EAAAmB,SAAA,CAAAC,MAAA,QAAAvB,SAAA,GAAAsB,SAAA,GAAW,CAAC;EAC7D;EACA;;EAEA;EACAN,GAAGA,CACDb,IAAU,EAE+B;IACzC,OAAO,IAAI,CAACiB,OAAO,CAAC,KAAK,EAAE,IAAI,CAACF,OAAO,GAAGf,IAAI,EAAAmB,SAAA,CAAAC,MAAA,QAAAvB,SAAA,GAAAsB,SAAA,GAAW,CAAC;EAC5D;EACA;AACF;;AAEA,OAAO,SAASE,eAAeA,CAACJ,OAAgB,EAAEF,OAAgB,EAAE;EAClE,OAAO,IAAID,SAAS,CAACG,OAAO,CAAC,CAACC,UAAU,CAACH,OAAO,IAAI,EAAE,CAAC;AACzD;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA"}
1
+ {"version":3,"names":["z","ApplicationInfo","object","name","string","version","NonceDetailView","nonce","WalletAttestationView","wallet_attestation","WalletAttestationsView","wallet_attestations","array","format","union","literal","CreateWalletInstanceBody","challenge","key_attestation","hardware_key_tag","CreateWalletAttestationBody","grant_type","assertion","CreateWalletAttestationV2Body","SetWalletInstanceStatusBody","status","RevocationReason","WalletInstanceData","id","is_revoked","boolean","revocation_reason","undefined","optional","ProblemDetail","type","title","number","detail","instance","get_GetNonce","method","path","parameters","never","response","post_CreateWalletInstance","body","unknown","get_GetWalletInstanceStatus","put_SetWalletInstanceStatus","post_CreateWalletAttestation","post_CreateWalletAttestationV2","EndpointByMethod","get","post","put","ApiClient","baseUrl","constructor","fetcher","setBaseUrl","arguments","length","createApiClient"],"sourceRoot":"../../../../src","sources":["client/generated/wallet-provider.ts"],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { getCredentialIssuerMetadata } from "../../entity/openid-connect/issuer";
2
+ import { getCredentialIssuerEntityConfiguration } from "@pagopa/io-react-native-wallet";
2
3
 
3
4
  /**
4
5
  * Common configuration for the issuer.
@@ -8,6 +9,8 @@ import { getCredentialIssuerMetadata } from "../../entity/openid-connect/issuer"
8
9
 
9
10
  /**
10
11
  * WARNING: This function must be called after {@link startFlow}. The next function to be called is {@link startUserAuthorization}.
12
+ * WARNING: This function extracts the {@link IssuerConfig} from the OpenID Connect endpoint. For the OpenID Federation variant, use {@link getIssuerConfigOIDFED}.
13
+ * WARNING: The variants should not be used in conjunction.
11
14
  * Get the Issuer's configuration from the Issuer's metadata.
12
15
  * Currently it only supports a mixed configuration based on OpenID Connect partial implementation.
13
16
  * @param issuerUrl The base url of the Issuer returned by {@link startFlow}
@@ -22,6 +25,24 @@ export const getIssuerConfig = async function (issuerUrl) {
22
25
  return credentialIssuerRationalization(res);
23
26
  };
24
27
 
28
+ /**
29
+ * WARNING: This function must be called after {@link startFlow}. The next function to be called is {@link startUserAuthorization}.
30
+ * WARNING: This function extracts the {@link IssuerConfig} from the OpenID Federation EC. For the OpenID Connect variant, use {@link getIssuerConfig}.
31
+ * WARNING: The variants should not be used in conjunction.
32
+ * Get the Issuer's configuration from the Issuer's metadata fetched from the OpenID Federation system.
33
+ * Currently it only supports a mixed configuration based on OpenID Federation partial implementation.
34
+ * @param issuerUrl The base url of the Issuer returned by {@link startFlow}
35
+ * @param context.appFetch (optional) fetch api implementation. Default: built-in fetch
36
+ * @returns The Issuer's configuration
37
+ */
38
+ export const getIssuerConfigOIDFED = async function (issuerUrl) {
39
+ let context = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
40
+ const res = await getCredentialIssuerEntityConfiguration(issuerUrl, {
41
+ appFetch: context.appFetch
42
+ });
43
+ return credentialIssuerRationalizationOIDFED(res);
44
+ };
45
+
25
46
  /**
26
47
  * Rationalize the issuer's metadata to the issuer's configuration which is then used in our flows to interact with the issuer.
27
48
  * @param issuerMetadata - The issuer's metadata
@@ -35,7 +56,65 @@ const credentialIssuerRationalization = issuerMetadata => {
35
56
  authorization_endpoint: issuerMetadata.authorization_endpoint,
36
57
  token_endpoint: issuerMetadata.token_endpoint,
37
58
  credential_endpoint: issuerMetadata.credential_endpoint,
38
- keys: issuerMetadata.jwks.keys
59
+ keys: issuerMetadata.jwks.keys,
60
+ issuer: issuerMetadata.authorization_endpoint
61
+ }
62
+ };
63
+ };
64
+
65
+ /**
66
+ * Rationalize the issuer's metadata taken from OpenID Federation to the issuer's configuration which is then used in our flows to interact with the issuer.
67
+ * @param issuerMetadata - The issuer's metadata
68
+ * @returns the isssuer configuration to be used later in our flows
69
+ */
70
+ const credentialIssuerRationalizationOIDFED = issuerMetadata => {
71
+ const adapted_credential_configurations_supported = Object.fromEntries(Object.entries(issuerMetadata.payload.metadata.openid_credential_issuer.credential_configurations_supported).map(_ref => {
72
+ let [key, config] = _ref;
73
+ const claimsRaw = config.claims;
74
+ // we need to evaluate how claims is in oder to support Federation and OID4VCI
75
+ // claim structure is different in both case
76
+ let claims;
77
+ if (claimsRaw && typeof Object.values(claimsRaw)[0] === "object" && "mandatory" in Object.values(claimsRaw)[0]) {
78
+ // claims is Record<string, { mandatory: boolean; display: Display[] }>
79
+ claims = Object.fromEntries(Object.entries(claimsRaw).map(_ref2 => {
80
+ let [, v] = _ref2;
81
+ return [[v.path[0]], {
82
+ mandatory: true,
83
+ display: v.display
84
+ }];
85
+ }));
86
+ } else {
87
+ // claims is Record<string, Record<string, { mandatory; display }>>
88
+ claims = Object.fromEntries(Object.entries(claimsRaw).map(_ref3 => {
89
+ let [k, inner] = _ref3;
90
+ return [[k], Object.fromEntries(Object.entries(inner).map(_ref4 => {
91
+ let [innerK, v] = _ref4;
92
+ return [[innerK], {
93
+ mandatory: v.mandatory,
94
+ display: v.display
95
+ }];
96
+ }))];
97
+ }));
98
+ }
99
+ const newConfig = {
100
+ ...config,
101
+ claims,
102
+ // cryptographic_suites_supported have been renamed credential_signing_alg_values_supported.
103
+ // We mantain it for Potential compatibility
104
+ cryptographic_suites_supported: config.credential_signing_alg_values_supported
105
+ };
106
+ return [key, newConfig];
107
+ }));
108
+ return {
109
+ issuerConf: {
110
+ credential_configurations_supported: adapted_credential_configurations_supported,
111
+ pushed_authorization_request_endpoint: issuerMetadata.payload.metadata.oauth_authorization_server.pushed_authorization_request_endpoint,
112
+ authorization_endpoint: issuerMetadata.payload.metadata.oauth_authorization_server.authorization_endpoint,
113
+ token_endpoint: issuerMetadata.payload.metadata.oauth_authorization_server.token_endpoint,
114
+ credential_endpoint: issuerMetadata.payload.metadata.openid_credential_issuer.credential_endpoint,
115
+ keys: issuerMetadata.payload.metadata.openid_credential_issuer.jwks.keys,
116
+ issuer: issuerMetadata.payload.metadata.oauth_authorization_server.issuer,
117
+ nonce_endpoint: issuerMetadata.payload.metadata.openid_credential_issuer.nonce_endpoint
39
118
  }
40
119
  };
41
120
  };
@@ -1 +1 @@
1
- {"version":3,"names":["getCredentialIssuerMetadata","getIssuerConfig","issuerUrl","context","arguments","length","undefined","res","appFetch","credentialIssuerRationalization","issuerMetadata","issuerConf","credential_configurations_supported","pushed_authorization_request_endpoint","authorization_endpoint","token_endpoint","credential_endpoint","keys","jwks"],"sourceRoot":"../../../../src","sources":["credential/issuance/02-get-issuer-config.ts"],"mappings":"AAGA,SAASA,2BAA2B,QAAQ,oCAAoC;;AAUhF;AACA;AACA;AACA;AACA;;AAUA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,eAAgC,GAAG,eAAAA,CAC9CC,SAAS,EAEuB;EAAA,IADhCC,OAAO,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EAEZ,MAAMG,GAAG,GAAG,MAAMP,2BAA2B,CAACE,SAAS,EAAE;IACvDM,QAAQ,EAAEL,OAAO,CAACK;EACpB,CAAC,CAAC;EAEF,OAAOC,+BAA+B,CAACF,GAAG,CAAC;AAC7C,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA,MAAME,+BAA+B,GACnCC,cAAuE,IAC9B;EACzC,OAAO;IACLC,UAAU,EAAE;MACVC,mCAAmC,EACjCF,cAAc,CAACE,mCAAmC;MACpDC,qCAAqC,EACnCH,cAAc,CAACG,qCAAqC;MACtDC,sBAAsB,EAAEJ,cAAc,CAACI,sBAAsB;MAC7DC,cAAc,EAAEL,cAAc,CAACK,cAAc;MAC7CC,mBAAmB,EAAEN,cAAc,CAACM,mBAAmB;MACvDC,IAAI,EAAEP,cAAc,CAACQ,IAAI,CAACD;IAC5B;EACF,CAAC;AACH,CAAC"}
1
+ {"version":3,"names":["getCredentialIssuerMetadata","getCredentialIssuerEntityConfiguration","getIssuerConfig","issuerUrl","context","arguments","length","undefined","res","appFetch","credentialIssuerRationalization","getIssuerConfigOIDFED","credentialIssuerRationalizationOIDFED","issuerMetadata","issuerConf","credential_configurations_supported","pushed_authorization_request_endpoint","authorization_endpoint","token_endpoint","credential_endpoint","keys","jwks","issuer","adapted_credential_configurations_supported","Object","fromEntries","entries","payload","metadata","openid_credential_issuer","map","_ref","key","config","claimsRaw","claims","values","_ref2","v","path","mandatory","display","_ref3","k","inner","_ref4","innerK","newConfig","cryptographic_suites_supported","credential_signing_alg_values_supported","oauth_authorization_server","nonce_endpoint"],"sourceRoot":"../../../../src","sources":["credential/issuance/02-get-issuer-config.ts"],"mappings":"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"}
@@ -13,15 +13,13 @@ import { makeParRequest } from "../../utils/par";
13
13
  */
14
14
  const selectCredentialDefinition = (issuerConf, credentialType) => {
15
15
  const credential_configurations_supported = issuerConf.credential_configurations_supported;
16
- const credential = credential_configurations_supported[credentialType];
17
- if (!credential) {
18
- throw new Error(`No credential support the type '${credentialType}'`);
19
- }
20
- const result = {
16
+ const [result] = Object.keys(credential_configurations_supported).filter(e => e.includes(credentialType)).map(() => ({
21
17
  credential_configuration_id: credentialType,
22
- format: credential.format,
23
18
  type: "openid_credential"
24
- };
19
+ }));
20
+ if (!result) {
21
+ throw new Error(`No credential support the type '${credentialType}'`);
22
+ }
25
23
  return result;
26
24
  };
27
25
 
@@ -1 +1 @@
1
- {"version":3,"names":["generateRandomAlphaNumericString","makeParRequest","selectCredentialDefinition","issuerConf","credentialType","credential_configurations_supported","credential","Error","result","credential_configuration_id","format","type","selectResponseMode","responseMode","startUserAuthorization","ctx","wiaCryptoContext","walletInstanceAttestation","redirectUri","appFetch","fetch","clientId","getPublicKey","then","_","kid","codeVerifier","parEndpoint","pushed_authorization_request_endpoint","credentialDefinition","getPar","issuerRequestUri"],"sourceRoot":"../../../../src","sources":["credential/issuance/03-start-user-authorization.ts"],"mappings":"AAEA,SAASA,gCAAgC,QAAkB,kBAAkB;AAE7E,SAA8BC,cAAc,QAAQ,iBAAiB;AAmBrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,0BAA0B,GAAGA,CACjCC,UAA8C,EAC9CC,cAAgD,KACxB;EACxB,MAAMC,mCAAmC,GACvCF,UAAU,CAACE,mCAAmC;EAEhD,MAAMC,UAAU,GAAGD,mCAAmC,CAACD,cAAc,CAAC;EAEtE,IAAI,CAACE,UAAU,EAAE;IACf,MAAM,IAAIC,KAAK,CAAE,mCAAkCH,cAAe,GAAE,CAAC;EACvE;EAEA,MAAMI,MAAM,GAAG;IACbC,2BAA2B,EAAEL,cAAc;IAC3CM,MAAM,EAAEJ,UAAU,CAACI,MAAM;IACzBC,IAAI,EAAE;EACR,CAAC;EAED,OAAOH,MAAM;AACf,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA,MAAMI,kBAAkB,GACtBR,cAAgD,IAC/B;EACjB,MAAMS,YAAY,GAChBT,cAAc,KAAK,6BAA6B,GAC5C,OAAO,GACP,eAAe;EAErB,OAAOS,YAAY;AACrB,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,sBAA8C,GAAG,MAAAA,CAC5DX,UAAU,EACVC,cAAc,EACdW,GAAG,KACA;EACH,MAAM;IACJC,gBAAgB;IAChBC,yBAAyB;IACzBC,WAAW;IACXC,QAAQ,GAAGC;EACb,CAAC,GAAGL,GAAG;EAEP,MAAMM,QAAQ,GAAG,MAAML,gBAAgB,CAACM,YAAY,CAAC,CAAC,CAACC,IAAI,CAAEC,CAAC,IAAKA,CAAC,CAACC,GAAG,CAAC;EACzE,IAAI,CAACJ,QAAQ,EAAE;IACb,MAAM,IAAId,KAAK,CAAC,qBAAqB,CAAC;EACxC;EACA,MAAMmB,YAAY,GAAG1B,gCAAgC,CAAC,EAAE,CAAC;EACzD,MAAM2B,WAAW,GAAGxB,UAAU,CAACyB,qCAAqC;EACpE,MAAMC,oBAAoB,GAAG3B,0BAA0B,CACrDC,UAAU,EACVC,cACF,CAAC;EACD,MAAMS,YAAY,GAAGD,kBAAkB,CAACR,cAAc,CAAC;EAEvD,MAAM0B,MAAM,GAAG7B,cAAc,CAAC;IAAEe,gBAAgB;IAAEG;EAAS,CAAC,CAAC;EAC7D,MAAMY,gBAAgB,GAAG,MAAMD,MAAM,CACnCT,QAAQ,EACRK,YAAY,EACZR,WAAW,EACXL,YAAY,EACZc,WAAW,EACXV,yBAAyB,EACzB,CAACY,oBAAoB,CACvB,CAAC;EAED,OAAO;IAAEE,gBAAgB;IAAEV,QAAQ;IAAEK,YAAY;IAAEG;EAAqB,CAAC;AAC3E,CAAC"}
1
+ {"version":3,"names":["generateRandomAlphaNumericString","makeParRequest","selectCredentialDefinition","issuerConf","credentialType","credential_configurations_supported","result","Object","keys","filter","e","includes","map","credential_configuration_id","type","Error","selectResponseMode","responseMode","startUserAuthorization","ctx","wiaCryptoContext","walletInstanceAttestation","redirectUri","appFetch","fetch","clientId","getPublicKey","then","_","kid","codeVerifier","parEndpoint","pushed_authorization_request_endpoint","credentialDefinition","getPar","issuerRequestUri"],"sourceRoot":"../../../../src","sources":["credential/issuance/03-start-user-authorization.ts"],"mappings":"AAEA,SAASA,gCAAgC,QAAkB,kBAAkB;AAE7E,SAA8BC,cAAc,QAAQ,iBAAiB;AAmBrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,0BAA0B,GAAGA,CACjCC,UAA8C,EAC9CC,cAAgD,KACxB;EACxB,MAAMC,mCAAmC,GACvCF,UAAU,CAACE,mCAAmC;EAEhD,MAAM,CAACC,MAAM,CAAC,GAAGC,MAAM,CAACC,IAAI,CAACH,mCAAmC,CAAC,CAC9DI,MAAM,CAAEC,CAAC,IAAKA,CAAC,CAACC,QAAQ,CAACP,cAAc,CAAC,CAAC,CACzCQ,GAAG,CAAC,OAAO;IACVC,2BAA2B,EAAET,cAAc;IAC3CU,IAAI,EAAE;EACR,CAAC,CAAC,CAAC;EAEL,IAAI,CAACR,MAAM,EAAE;IACX,MAAM,IAAIS,KAAK,CAAE,mCAAkCX,cAAe,GAAE,CAAC;EACvE;EAEA,OAAOE,MAAM;AACf,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA,MAAMU,kBAAkB,GACtBZ,cAAgD,IAC/B;EACjB,MAAMa,YAAY,GAChBb,cAAc,KAAK,6BAA6B,GAC5C,OAAO,GACP,eAAe;EAErB,OAAOa,YAAY;AACrB,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,sBAA8C,GAAG,MAAAA,CAC5Df,UAAU,EACVC,cAAc,EACde,GAAG,KACA;EACH,MAAM;IACJC,gBAAgB;IAChBC,yBAAyB;IACzBC,WAAW;IACXC,QAAQ,GAAGC;EACb,CAAC,GAAGL,GAAG;EAEP,MAAMM,QAAQ,GAAG,MAAML,gBAAgB,CAACM,YAAY,CAAC,CAAC,CAACC,IAAI,CAAEC,CAAC,IAAKA,CAAC,CAACC,GAAG,CAAC;EACzE,IAAI,CAACJ,QAAQ,EAAE;IACb,MAAM,IAAIV,KAAK,CAAC,qBAAqB,CAAC;EACxC;EACA,MAAMe,YAAY,GAAG9B,gCAAgC,CAAC,EAAE,CAAC;EACzD,MAAM+B,WAAW,GAAG5B,UAAU,CAAC6B,qCAAqC;EACpE,MAAMC,oBAAoB,GAAG/B,0BAA0B,CACrDC,UAAU,EACVC,cACF,CAAC;EACD,MAAMa,YAAY,GAAGD,kBAAkB,CAACZ,cAAc,CAAC;EAEvD,MAAM8B,MAAM,GAAGjC,cAAc,CAAC;IAAEmB,gBAAgB;IAAEG;EAAS,CAAC,CAAC;EAC7D,MAAMY,gBAAgB,GAAG,MAAMD,MAAM,CACnCT,QAAQ,EACRK,YAAY,EACZR,WAAW,EACXL,YAAY,EACZc,WAAW,EACXV,yBAAyB,EACzB,CAACY,oBAAoB,CACvB,CAAC;EAED,OAAO;IAAEE,gBAAgB;IAAEV,QAAQ;IAAEK,YAAY;IAAEG;EAAqB,CAAC;AAC3E,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { sha256ToBase64, SignJWT } from "@pagopa/io-react-native-jwt";
2
2
  import { hasStatusOrThrow } from "../../utils/misc";
3
3
  import { IssuerResponseError, IssuerResponseErrorCodes, ResponseErrorBuilder, UnexpectedStatusCodeError, ValidationFailed } from "../../utils/errors";
4
- import { CredentialResponse } from "./types";
4
+ import { CredentialResponse, NonceResponse } from "./types";
5
5
  import { createDPopToken } from "../../utils/dpop";
6
6
  import uuid from "react-native-uuid";
7
7
  export const createNonceProof = async (nonce, issuer, audience, ctx) => {
@@ -37,14 +37,33 @@ export const obtainCredential = async (issuerConf, accessToken, clientId, creden
37
37
  dPopCryptoContext
38
38
  } = context;
39
39
  const credentialUrl = issuerConf.credential_endpoint;
40
+ const issuerUrl = issuerConf.issuer;
41
+ const nonceUrl = issuerConf.nonce_endpoint;
42
+
43
+ // Fetch the nonce from the Credential Issuer
44
+ const {
45
+ c_nonce
46
+ } = nonceUrl ? await appFetch(nonceUrl, {
47
+ method: "POST",
48
+ headers: {
49
+ "Content-Type": "application/json"
50
+ }
51
+ }).then(hasStatusOrThrow(200)).then(res => res.json()).then(body => NonceResponse.parse(body)) : accessToken;
52
+ if (!c_nonce) {
53
+ throw new ValidationFailed({
54
+ message: "Nonce Endpoint not found or access token does not contain the c_nonce"
55
+ });
56
+ }
40
57
 
41
58
  /**
42
59
  * JWT proof token to bind the request nonce to the key that will bind the holder User with the Credential
43
60
  * This is presented along with the access token to the Credential Endpoint as proof of possession of the private key used to sign the Access Token.
44
61
  * @see https://openid.net/specs/openid-4-verifiable-credential-issuance-1_0.html#name-proof-types
45
62
  */
46
- const signedNonceProof = await createNonceProof(accessToken.c_nonce, clientId, credentialUrl, credentialCryptoContext);
47
- const containsCredentialDefinition = accessToken.authorization_details.some(detail => detail.credential_configuration_id === credentialDefinition.credential_configuration_id && detail.type === credentialDefinition.type);
63
+ const signedNonceProof = await createNonceProof(c_nonce, clientId, issuerUrl, credentialCryptoContext);
64
+
65
+ // Validation of accessTokenResponse.authorization_details if contain credentialDefinition
66
+ const containsCredentialDefinition = accessToken.authorization_details.some(c => c.credential_configuration_id === credentialDefinition.credential_configuration_id && (credentialDefinition.credential_identifier ? c.credential_identifiers.includes(credentialDefinition.credential_identifier) : true));
48
67
  if (!containsCredentialDefinition) {
49
68
  throw new ValidationFailed({
50
69
  message: "The access token response does not contain the requested credential"
@@ -65,12 +84,7 @@ export const obtainCredential = async (issuerConf, accessToken, clientId, creden
65
84
 
66
85
  /** The credential request body */
67
86
  const credentialRequestFormBody = {
68
- ...(format === "mso_mdoc" ? {
69
- doctype: credentialDefinition.credential_configuration_id
70
- } : {
71
- vct: credentialDefinition.credential_configuration_id
72
- }),
73
- format,
87
+ credential_identifier: credentialDefinition.credential_configuration_id,
74
88
  proof: {
75
89
  jwt: signedNonceProof,
76
90
  proof_type: "jwt"
@@ -98,8 +112,11 @@ export const obtainCredential = async (issuerConf, accessToken, clientId, creden
98
112
  });
99
113
  }
100
114
 
101
- /* temporary base64 parsing for the "mso_mdoc" format until the credential submission with this format is fixed. */
102
- return credentialRes.data;
115
+ // We support only one credential for now
116
+ return {
117
+ format,
118
+ ...credentialRes.data.credentials.at(0)
119
+ };
103
120
  };
104
121
 
105
122
  /**
@@ -1 +1 @@
1
- {"version":3,"names":["sha256ToBase64","SignJWT","hasStatusOrThrow","IssuerResponseError","IssuerResponseErrorCodes","ResponseErrorBuilder","UnexpectedStatusCodeError","ValidationFailed","CredentialResponse","createDPopToken","uuid","createNonceProof","nonce","issuer","audience","ctx","jwk","getPublicKey","setPayload","setProtectedHeader","typ","setAudience","setIssuer","setIssuedAt","setExpirationTime","sign","obtainCredential","issuerConf","accessToken","clientId","credentialDefinition","context","credentialCryptoContext","appFetch","fetch","dPopCryptoContext","credentialUrl","credential_endpoint","signedNonceProof","c_nonce","containsCredentialDefinition","authorization_details","some","detail","credential_configuration_id","type","message","credential","credential_configurations_supported","format","credentialRequestFormBody","doctype","vct","proof","jwt","proof_type","tokenRequestSignedDPop","htm","htu","jti","v4","ath","access_token","credentialRes","method","headers","DPoP","Authorization","token_type","body","JSON","stringify","then","res","json","safeParse","catch","handleObtainCredentialError","success","reason","error","data","e","handle","code","CredentialRequestFailed","buildFrom"],"sourceRoot":"../../../../src","sources":["credential/issuance/06-obtain-credential.ts"],"mappings":"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"}
1
+ {"version":3,"names":["sha256ToBase64","SignJWT","hasStatusOrThrow","IssuerResponseError","IssuerResponseErrorCodes","ResponseErrorBuilder","UnexpectedStatusCodeError","ValidationFailed","CredentialResponse","NonceResponse","createDPopToken","uuid","createNonceProof","nonce","issuer","audience","ctx","jwk","getPublicKey","setPayload","setProtectedHeader","typ","setAudience","setIssuer","setIssuedAt","setExpirationTime","sign","obtainCredential","issuerConf","accessToken","clientId","credentialDefinition","context","credentialCryptoContext","appFetch","fetch","dPopCryptoContext","credentialUrl","credential_endpoint","issuerUrl","nonceUrl","nonce_endpoint","c_nonce","method","headers","then","res","json","body","parse","message","signedNonceProof","containsCredentialDefinition","authorization_details","some","c","credential_configuration_id","credential_identifier","credential_identifiers","includes","credential","credential_configurations_supported","format","credentialRequestFormBody","proof","jwt","proof_type","tokenRequestSignedDPop","htm","htu","jti","v4","ath","access_token","credentialRes","DPoP","Authorization","token_type","JSON","stringify","safeParse","catch","handleObtainCredentialError","success","reason","error","data","credentials","at","e","handle","code","CredentialRequestFailed","buildFrom"],"sourceRoot":"../../../../src","sources":["credential/issuance/06-obtain-credential.ts"],"mappings":"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"}