@pagopa/io-react-native-wallet 3.2.0 → 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 (209) hide show
  1. package/lib/commonjs/credential/issuance/common/02-start-user-authorization.js +4 -3
  2. package/lib/commonjs/credential/issuance/common/02-start-user-authorization.js.map +1 -1
  3. package/lib/commonjs/credential/issuance/common/06-verify-and-parse-credential.sdjwt.js +37 -8
  4. package/lib/commonjs/credential/issuance/common/06-verify-and-parse-credential.sdjwt.js.map +1 -1
  5. package/lib/commonjs/credential/issuance/mrtd-pop/02-init-challenge.js +46 -38
  6. package/lib/commonjs/credential/issuance/mrtd-pop/02-init-challenge.js.map +1 -1
  7. package/lib/commonjs/credential/issuance/mrtd-pop/03-validate-challenge.js +58 -51
  8. package/lib/commonjs/credential/issuance/mrtd-pop/03-validate-challenge.js.map +1 -1
  9. package/lib/commonjs/credential/issuance/mrtd-pop/index.js +21 -5
  10. package/lib/commonjs/credential/issuance/mrtd-pop/index.js.map +1 -1
  11. package/lib/commonjs/credential/issuance/v1.0.0/02-start-user-authorization.js +3 -3
  12. package/lib/commonjs/credential/issuance/v1.0.0/02-start-user-authorization.js.map +1 -1
  13. package/lib/commonjs/credential/issuance/v1.0.0/index.js +1 -1
  14. package/lib/commonjs/credential/issuance/v1.0.0/index.js.map +1 -1
  15. package/lib/commonjs/credential/issuance/v1.0.0/mappers.js +1 -1
  16. package/lib/commonjs/credential/issuance/v1.0.0/mappers.js.map +1 -1
  17. package/lib/commonjs/credential/issuance/v1.3.3/01-evaluate-issuer-trust.js +0 -2
  18. package/lib/commonjs/credential/issuance/v1.3.3/01-evaluate-issuer-trust.js.map +1 -1
  19. package/lib/commonjs/credential/issuance/v1.3.3/02-start-user-authorization.js +20 -16
  20. package/lib/commonjs/credential/issuance/v1.3.3/02-start-user-authorization.js.map +1 -1
  21. package/lib/commonjs/credential/issuance/v1.3.3/04-authorize-access.js +20 -19
  22. package/lib/commonjs/credential/issuance/v1.3.3/04-authorize-access.js.map +1 -1
  23. package/lib/commonjs/credential/issuance/v1.3.3/05-obtain-credential.js +4 -6
  24. package/lib/commonjs/credential/issuance/v1.3.3/05-obtain-credential.js.map +1 -1
  25. package/lib/commonjs/credential/issuance/v1.3.3/06-verify-and-parse-credential.js +4 -1
  26. package/lib/commonjs/credential/issuance/v1.3.3/06-verify-and-parse-credential.js.map +1 -1
  27. package/lib/commonjs/credential/issuance/v1.3.3/index.js +1 -1
  28. package/lib/commonjs/credential/issuance/v1.3.3/index.js.map +1 -1
  29. package/lib/commonjs/credential/issuance/v1.3.3/mappers.js +1 -1
  30. package/lib/commonjs/credential/issuance/v1.3.3/mappers.js.map +1 -1
  31. package/lib/commonjs/credential/presentation/{v1.3.3/utils.mdoc.js → common/utils/mdoc.js} +2 -2
  32. package/lib/commonjs/credential/presentation/common/utils/mdoc.js.map +1 -0
  33. package/lib/commonjs/credential/presentation/v1.3.3/06-evaluate-dcql-query.js +2 -2
  34. package/lib/commonjs/credential/presentation/v1.3.3/06-evaluate-dcql-query.js.map +1 -1
  35. package/lib/commonjs/credential/status/README.md +3 -2
  36. package/lib/commonjs/credential/status/v1.3.3/01-status-list.js +27 -5
  37. package/lib/commonjs/credential/status/v1.3.3/01-status-list.js.map +1 -1
  38. package/lib/commonjs/credential/status/v1.3.3/02-verify-and-parse-status-list.js +17 -6
  39. package/lib/commonjs/credential/status/v1.3.3/02-verify-and-parse-status-list.js.map +1 -1
  40. package/lib/commonjs/mdoc/index.js +3 -24
  41. package/lib/commonjs/mdoc/index.js.map +1 -1
  42. package/lib/commonjs/sd-jwt/__test__/types.test.js +2 -14
  43. package/lib/commonjs/sd-jwt/__test__/types.test.js.map +1 -1
  44. package/lib/commonjs/sd-jwt/__test__/utils.test.js +0 -12
  45. package/lib/commonjs/sd-jwt/__test__/utils.test.js.map +1 -1
  46. package/lib/commonjs/sd-jwt/types.js +1 -14
  47. package/lib/commonjs/sd-jwt/types.js.map +1 -1
  48. package/lib/commonjs/utils/callbacks.js +20 -1
  49. package/lib/commonjs/utils/callbacks.js.map +1 -1
  50. package/lib/commonjs/utils/x509.js +34 -0
  51. package/lib/commonjs/utils/x509.js.map +1 -0
  52. package/lib/commonjs/wallet-instance-attestation/api/types.js +0 -2
  53. package/lib/commonjs/wallet-instance-attestation/api/types.js.map +1 -1
  54. package/lib/commonjs/wallet-instance-attestation/v1.3.3/mappers.js +1 -14
  55. package/lib/commonjs/wallet-instance-attestation/v1.3.3/mappers.js.map +1 -1
  56. package/lib/commonjs/wallet-instance-attestation/v1.3.3/types.js +2 -7
  57. package/lib/commonjs/wallet-instance-attestation/v1.3.3/types.js.map +1 -1
  58. package/lib/commonjs/wallet-unit-attestation/api/types.js +0 -11
  59. package/lib/commonjs/wallet-unit-attestation/api/types.js.map +1 -1
  60. package/lib/module/credential/issuance/common/02-start-user-authorization.js +4 -3
  61. package/lib/module/credential/issuance/common/02-start-user-authorization.js.map +1 -1
  62. package/lib/module/credential/issuance/common/06-verify-and-parse-credential.sdjwt.js +39 -10
  63. package/lib/module/credential/issuance/common/06-verify-and-parse-credential.sdjwt.js.map +1 -1
  64. package/lib/module/credential/issuance/mrtd-pop/02-init-challenge.js +47 -34
  65. package/lib/module/credential/issuance/mrtd-pop/02-init-challenge.js.map +1 -1
  66. package/lib/module/credential/issuance/mrtd-pop/03-validate-challenge.js +58 -47
  67. package/lib/module/credential/issuance/mrtd-pop/03-validate-challenge.js.map +1 -1
  68. package/lib/module/credential/issuance/mrtd-pop/index.js +20 -5
  69. package/lib/module/credential/issuance/mrtd-pop/index.js.map +1 -1
  70. package/lib/module/credential/issuance/v1.0.0/02-start-user-authorization.js +1 -1
  71. package/lib/module/credential/issuance/v1.0.0/02-start-user-authorization.js.map +1 -1
  72. package/lib/module/credential/issuance/v1.0.0/index.js +2 -2
  73. package/lib/module/credential/issuance/v1.0.0/index.js.map +1 -1
  74. package/lib/module/credential/issuance/v1.0.0/mappers.js +1 -1
  75. package/lib/module/credential/issuance/v1.0.0/mappers.js.map +1 -1
  76. package/lib/module/credential/issuance/v1.3.3/01-evaluate-issuer-trust.js +0 -2
  77. package/lib/module/credential/issuance/v1.3.3/01-evaluate-issuer-trust.js.map +1 -1
  78. package/lib/module/credential/issuance/v1.3.3/02-start-user-authorization.js +20 -16
  79. package/lib/module/credential/issuance/v1.3.3/02-start-user-authorization.js.map +1 -1
  80. package/lib/module/credential/issuance/v1.3.3/04-authorize-access.js +22 -19
  81. package/lib/module/credential/issuance/v1.3.3/04-authorize-access.js.map +1 -1
  82. package/lib/module/credential/issuance/v1.3.3/05-obtain-credential.js +5 -7
  83. package/lib/module/credential/issuance/v1.3.3/05-obtain-credential.js.map +1 -1
  84. package/lib/module/credential/issuance/v1.3.3/06-verify-and-parse-credential.js +4 -1
  85. package/lib/module/credential/issuance/v1.3.3/06-verify-and-parse-credential.js.map +1 -1
  86. package/lib/module/credential/issuance/v1.3.3/index.js +2 -2
  87. package/lib/module/credential/issuance/v1.3.3/index.js.map +1 -1
  88. package/lib/module/credential/issuance/v1.3.3/mappers.js +1 -1
  89. package/lib/module/credential/issuance/v1.3.3/mappers.js.map +1 -1
  90. package/lib/module/credential/presentation/{v1.3.3/utils.mdoc.js → common/utils/mdoc.js} +2 -2
  91. package/lib/module/credential/presentation/common/utils/mdoc.js.map +1 -0
  92. package/lib/module/credential/presentation/v1.3.3/06-evaluate-dcql-query.js +2 -3
  93. package/lib/module/credential/presentation/v1.3.3/06-evaluate-dcql-query.js.map +1 -1
  94. package/lib/module/credential/status/README.md +3 -2
  95. package/lib/module/credential/status/v1.3.3/01-status-list.js +27 -5
  96. package/lib/module/credential/status/v1.3.3/01-status-list.js.map +1 -1
  97. package/lib/module/credential/status/v1.3.3/02-verify-and-parse-status-list.js +17 -6
  98. package/lib/module/credential/status/v1.3.3/02-verify-and-parse-status-list.js.map +1 -1
  99. package/lib/module/mdoc/index.js +3 -24
  100. package/lib/module/mdoc/index.js.map +1 -1
  101. package/lib/module/sd-jwt/__test__/types.test.js +2 -14
  102. package/lib/module/sd-jwt/__test__/types.test.js.map +1 -1
  103. package/lib/module/sd-jwt/__test__/utils.test.js +0 -12
  104. package/lib/module/sd-jwt/__test__/utils.test.js.map +1 -1
  105. package/lib/module/sd-jwt/types.js +1 -14
  106. package/lib/module/sd-jwt/types.js.map +1 -1
  107. package/lib/module/utils/callbacks.js +19 -1
  108. package/lib/module/utils/callbacks.js.map +1 -1
  109. package/lib/module/utils/x509.js +28 -0
  110. package/lib/module/utils/x509.js.map +1 -0
  111. package/lib/module/wallet-instance-attestation/api/types.js +0 -2
  112. package/lib/module/wallet-instance-attestation/api/types.js.map +1 -1
  113. package/lib/module/wallet-instance-attestation/v1.3.3/mappers.js +1 -14
  114. package/lib/module/wallet-instance-attestation/v1.3.3/mappers.js.map +1 -1
  115. package/lib/module/wallet-instance-attestation/v1.3.3/types.js +2 -7
  116. package/lib/module/wallet-instance-attestation/v1.3.3/types.js.map +1 -1
  117. package/lib/module/wallet-unit-attestation/api/types.js +0 -11
  118. package/lib/module/wallet-unit-attestation/api/types.js.map +1 -1
  119. package/lib/typescript/credential/issuance/api/06-verify-and-parse-credential.d.ts +4 -0
  120. package/lib/typescript/credential/issuance/api/06-verify-and-parse-credential.d.ts.map +1 -1
  121. package/lib/typescript/credential/issuance/common/02-start-user-authorization.d.ts.map +1 -1
  122. package/lib/typescript/credential/issuance/common/06-verify-and-parse-credential.sdjwt.d.ts.map +1 -1
  123. package/lib/typescript/credential/issuance/mrtd-pop/02-init-challenge.d.ts +12 -1
  124. package/lib/typescript/credential/issuance/mrtd-pop/02-init-challenge.d.ts.map +1 -1
  125. package/lib/typescript/credential/issuance/mrtd-pop/03-validate-challenge.d.ts +12 -1
  126. package/lib/typescript/credential/issuance/mrtd-pop/03-validate-challenge.d.ts.map +1 -1
  127. package/lib/typescript/credential/issuance/mrtd-pop/index.d.ts +2 -1
  128. package/lib/typescript/credential/issuance/mrtd-pop/index.d.ts.map +1 -1
  129. package/lib/typescript/credential/issuance/v1.0.0/mappers.d.ts.map +1 -1
  130. package/lib/typescript/credential/issuance/v1.3.3/01-evaluate-issuer-trust.d.ts.map +1 -1
  131. package/lib/typescript/credential/issuance/v1.3.3/02-start-user-authorization.d.ts.map +1 -1
  132. package/lib/typescript/credential/issuance/v1.3.3/04-authorize-access.d.ts.map +1 -1
  133. package/lib/typescript/credential/issuance/v1.3.3/05-obtain-credential.d.ts.map +1 -1
  134. package/lib/typescript/credential/issuance/v1.3.3/06-verify-and-parse-credential.d.ts.map +1 -1
  135. package/lib/typescript/credential/issuance/v1.3.3/mappers.d.ts.map +1 -1
  136. package/lib/typescript/credential/presentation/{v1.3.3/utils.mdoc.d.ts → common/utils/mdoc.d.ts} +2 -2
  137. package/lib/typescript/credential/presentation/common/utils/mdoc.d.ts.map +1 -0
  138. package/lib/typescript/credential/presentation/v1.3.3/06-evaluate-dcql-query.d.ts.map +1 -1
  139. package/lib/typescript/credential/status/api/status-list.d.ts +8 -4
  140. package/lib/typescript/credential/status/api/status-list.d.ts.map +1 -1
  141. package/lib/typescript/credential/status/v1.3.3/01-status-list.d.ts.map +1 -1
  142. package/lib/typescript/credential/status/v1.3.3/02-verify-and-parse-status-list.d.ts.map +1 -1
  143. package/lib/typescript/mdoc/index.d.ts +1 -1
  144. package/lib/typescript/mdoc/index.d.ts.map +1 -1
  145. package/lib/typescript/mdoc/utils.d.ts +0 -24
  146. package/lib/typescript/mdoc/utils.d.ts.map +1 -1
  147. package/lib/typescript/sd-jwt/types.d.ts +0 -12
  148. package/lib/typescript/sd-jwt/types.d.ts.map +1 -1
  149. package/lib/typescript/utils/callbacks.d.ts +7 -0
  150. package/lib/typescript/utils/callbacks.d.ts.map +1 -1
  151. package/lib/typescript/utils/x509.d.ts +10 -0
  152. package/lib/typescript/utils/x509.d.ts.map +1 -0
  153. package/lib/typescript/wallet-instance-attestation/api/types.d.ts +0 -2
  154. package/lib/typescript/wallet-instance-attestation/api/types.d.ts.map +1 -1
  155. package/lib/typescript/wallet-instance-attestation/v1.0.0/mappers.d.ts +0 -2
  156. package/lib/typescript/wallet-instance-attestation/v1.0.0/mappers.d.ts.map +1 -1
  157. package/lib/typescript/wallet-instance-attestation/v1.3.3/mappers.d.ts +2 -9
  158. package/lib/typescript/wallet-instance-attestation/v1.3.3/mappers.d.ts.map +1 -1
  159. package/lib/typescript/wallet-instance-attestation/v1.3.3/types.d.ts +2 -7
  160. package/lib/typescript/wallet-instance-attestation/v1.3.3/types.d.ts.map +1 -1
  161. package/lib/typescript/wallet-unit-attestation/api/types.d.ts +0 -11
  162. package/lib/typescript/wallet-unit-attestation/api/types.d.ts.map +1 -1
  163. package/lib/typescript/wallet-unit-attestation/v1.3.3/mappers.d.ts +0 -22
  164. package/lib/typescript/wallet-unit-attestation/v1.3.3/mappers.d.ts.map +1 -1
  165. package/lib/typescript/wallet-unit-attestation/v1.3.3/types.d.ts +0 -11
  166. package/lib/typescript/wallet-unit-attestation/v1.3.3/types.d.ts.map +1 -1
  167. package/package.json +6 -6
  168. package/src/credential/issuance/api/06-verify-and-parse-credential.ts +4 -0
  169. package/src/credential/issuance/common/02-start-user-authorization.ts +6 -3
  170. package/src/credential/issuance/common/06-verify-and-parse-credential.sdjwt.ts +42 -9
  171. package/src/credential/issuance/mrtd-pop/02-init-challenge.ts +69 -45
  172. package/src/credential/issuance/mrtd-pop/03-validate-challenge.ts +84 -62
  173. package/src/credential/issuance/mrtd-pop/index.ts +13 -5
  174. package/src/credential/issuance/v1.0.0/02-start-user-authorization.ts +1 -1
  175. package/src/credential/issuance/v1.0.0/index.ts +2 -2
  176. package/src/credential/issuance/v1.0.0/mappers.ts +4 -1
  177. package/src/credential/issuance/v1.3.3/01-evaluate-issuer-trust.ts +0 -2
  178. package/src/credential/issuance/v1.3.3/02-start-user-authorization.ts +24 -20
  179. package/src/credential/issuance/v1.3.3/04-authorize-access.ts +28 -23
  180. package/src/credential/issuance/v1.3.3/05-obtain-credential.ts +8 -8
  181. package/src/credential/issuance/v1.3.3/06-verify-and-parse-credential.ts +2 -1
  182. package/src/credential/issuance/v1.3.3/index.ts +2 -2
  183. package/src/credential/issuance/v1.3.3/mappers.ts +4 -1
  184. package/src/credential/presentation/{v1.3.3/utils.mdoc.ts → common/utils/mdoc.ts} +2 -2
  185. package/src/credential/presentation/v1.3.3/06-evaluate-dcql-query.ts +3 -3
  186. package/src/credential/status/README.md +3 -2
  187. package/src/credential/status/api/status-list.ts +10 -7
  188. package/src/credential/status/v1.3.3/01-status-list.ts +21 -7
  189. package/src/credential/status/v1.3.3/02-verify-and-parse-status-list.ts +19 -5
  190. package/src/mdoc/index.ts +5 -41
  191. package/src/sd-jwt/__test__/types.test.ts +1 -13
  192. package/src/sd-jwt/__test__/utils.test.ts +0 -12
  193. package/src/sd-jwt/types.ts +0 -13
  194. package/src/utils/callbacks.ts +28 -1
  195. package/src/utils/x509.ts +43 -0
  196. package/src/wallet-instance-attestation/api/types.ts +0 -2
  197. package/src/wallet-instance-attestation/v1.3.3/mappers.ts +3 -11
  198. package/src/wallet-instance-attestation/v1.3.3/types.ts +2 -7
  199. package/src/wallet-unit-attestation/api/types.ts +0 -11
  200. package/lib/commonjs/credential/issuance/common/authorization.js +0 -56
  201. package/lib/commonjs/credential/issuance/common/authorization.js.map +0 -1
  202. package/lib/commonjs/credential/presentation/v1.3.3/utils.mdoc.js.map +0 -1
  203. package/lib/module/credential/issuance/common/authorization.js +0 -48
  204. package/lib/module/credential/issuance/common/authorization.js.map +0 -1
  205. package/lib/module/credential/presentation/v1.3.3/utils.mdoc.js.map +0 -1
  206. package/lib/typescript/credential/issuance/common/authorization.d.ts +0 -21
  207. package/lib/typescript/credential/issuance/common/authorization.d.ts.map +0 -1
  208. package/lib/typescript/credential/presentation/v1.3.3/utils.mdoc.d.ts.map +0 -1
  209. package/src/credential/issuance/common/authorization.ts +0 -89
@@ -1,41 +1,54 @@
1
- import { v4 as uuidv4 } from "uuid";
2
- import { fetchMrtdPopInit } from "@pagopa/io-wallet-oauth2";
1
+ import { createClientAttestationPopJwt, fetchMrtdPopInit } from "@pagopa/io-wallet-oauth2";
3
2
  import { UnexpectedStatusCodeError as SdkUnexpectedStatusCodeError } from "@pagopa/io-wallet-utils";
4
- import { createPopToken } from "../../../utils/pop";
5
3
  import { Logger, LogLevel } from "../../../utils/logging";
6
- import * as WalletInstanceAttestation from "../../../wallet-instance-attestation/v1.0.0/utils"; // TODO: decouple from version 1.0.0
7
4
  import { IssuerResponseError, IssuerResponseErrorCodes, ResponseErrorBuilder } from "../../../utils/errors";
8
- import { createVerifyJwtFromJwks } from "../../../utils/callbacks";
9
- export const initChallenge = async (issuerConf, initUrl, mrtd_auth_session, mrtd_pop_jwt_nonce, context) => {
10
- const {
11
- appFetch = fetch,
12
- walletInstanceAttestation,
13
- wiaCryptoContext
14
- } = context;
15
- const iss = WalletInstanceAttestation.decode(walletInstanceAttestation).payload.cnf.jwk.kid;
16
- const signedWiaPoP = await createPopToken({
17
- jti: uuidv4(),
18
- aud: issuerConf.credential_issuer,
19
- iss
20
- }, wiaCryptoContext);
21
- const initResult = await fetchMrtdPopInit({
22
- popInitEndpoint: initUrl,
23
- mrtdAuthSession: mrtd_auth_session,
24
- mrtdPopJwtNonce: mrtd_pop_jwt_nonce,
25
- walletAttestation: walletInstanceAttestation,
26
- clientAttestationDPoP: signedWiaPoP,
27
- callbacks: {
28
- verifyJwt: createVerifyJwtFromJwks(issuerConf.keys),
29
- fetch: appFetch
30
- }
31
- }).catch(handleInitChallengeError);
32
- return {
33
- challenge: initResult.challenge,
34
- mrtd_pop_nonce: initResult.mrtdPopNonce,
35
- pop_verify_endpoint: initResult.popVerifyEndpoint,
36
- mrz: initResult.mrz
5
+ import { createSignJwtFromCryptoContext, createVerifyJwtFromJwks, partialCallbacks } from "../../../utils/callbacks";
6
+ /**
7
+ * Factory function to create `initChallenge` for MRTD PoP flow.
8
+ * The factory is needed to inject version specific SDK configuration.
9
+ * @param config Configuration object containing the IO Wallet SDK configuration
10
+ * @returns `initChallenge` function compliant with the public API
11
+ */
12
+ export function createInitChallenge(config) {
13
+ return async function initChallenge(issuerConf, initUrl, mrtd_auth_session, mrtd_pop_jwt_nonce, context) {
14
+ const {
15
+ appFetch = fetch,
16
+ walletInstanceAttestation,
17
+ wiaCryptoContext
18
+ } = context;
19
+ const clientAttestationDPoP = await createClientAttestationPopJwt({
20
+ config: config.sdkConfig,
21
+ callbacks: {
22
+ generateRandom: partialCallbacks.generateRandom,
23
+ signJwt: createSignJwtFromCryptoContext(wiaCryptoContext)
24
+ },
25
+ clientAttestation: walletInstanceAttestation,
26
+ authorizationServer: issuerConf.credential_issuer,
27
+ signer: {
28
+ method: "jwk",
29
+ alg: "ES256",
30
+ publicJwk: await wiaCryptoContext.getPublicKey()
31
+ }
32
+ });
33
+ const initResult = await fetchMrtdPopInit({
34
+ popInitEndpoint: initUrl,
35
+ mrtdAuthSession: mrtd_auth_session,
36
+ mrtdPopJwtNonce: mrtd_pop_jwt_nonce,
37
+ walletAttestation: walletInstanceAttestation,
38
+ clientAttestationDPoP,
39
+ callbacks: {
40
+ verifyJwt: createVerifyJwtFromJwks(issuerConf.keys),
41
+ fetch: appFetch
42
+ }
43
+ }).catch(handleInitChallengeError);
44
+ return {
45
+ challenge: initResult.challenge,
46
+ mrtd_pop_nonce: initResult.mrtdPopNonce,
47
+ pop_verify_endpoint: initResult.popVerifyEndpoint,
48
+ mrz: initResult.mrz
49
+ };
37
50
  };
38
- };
51
+ }
39
52
  const handleInitChallengeError = e => {
40
53
  Logger.log(LogLevel.ERROR, `Failed to get MRTD challenge: ${e}`);
41
54
  if (!(e instanceof SdkUnexpectedStatusCodeError)) {
@@ -1 +1 @@
1
- {"version":3,"names":["v4","uuidv4","fetchMrtdPopInit","UnexpectedStatusCodeError","SdkUnexpectedStatusCodeError","createPopToken","Logger","LogLevel","WalletInstanceAttestation","IssuerResponseError","IssuerResponseErrorCodes","ResponseErrorBuilder","createVerifyJwtFromJwks","initChallenge","issuerConf","initUrl","mrtd_auth_session","mrtd_pop_jwt_nonce","context","appFetch","fetch","walletInstanceAttestation","wiaCryptoContext","iss","decode","payload","cnf","jwk","kid","signedWiaPoP","jti","aud","credential_issuer","initResult","popInitEndpoint","mrtdAuthSession","mrtdPopJwtNonce","walletAttestation","clientAttestationDPoP","callbacks","verifyJwt","keys","catch","handleInitChallengeError","challenge","mrtd_pop_nonce","mrtdPopNonce","pop_verify_endpoint","popVerifyEndpoint","mrz","e","log","ERROR","handle","code","MrtdChallengeInitRequestFailed","message","buildFrom"],"sourceRoot":"../../../../../src","sources":["credential/issuance/mrtd-pop/02-init-challenge.ts"],"mappings":"AAAA,SAASA,EAAE,IAAIC,MAAM,QAAQ,MAAM;AACnC,SAASC,gBAAgB,QAAQ,0BAA0B;AAC3D,SAASC,yBAAyB,IAAIC,4BAA4B,QAAQ,yBAAyB;AACnG,SAASC,cAAc,QAAQ,oBAAoB;AACnD,SAASC,MAAM,EAAEC,QAAQ,QAAQ,wBAAwB;AACzD,OAAO,KAAKC,yBAAyB,MAAM,mDAAmD,CAAC,CAAC;AAChG,SACEC,mBAAmB,EACnBC,wBAAwB,EACxBC,oBAAoB,QACf,uBAAuB;AAE9B,SAASC,uBAAuB,QAAQ,0BAA0B;AAElE,OAAO,MAAMC,aAA0C,GAAG,MAAAA,CACxDC,UAAU,EACVC,OAAO,EACPC,iBAAiB,EACjBC,kBAAkB,EAClBC,OAAO,KACJ;EACH,MAAM;IACJC,QAAQ,GAAGC,KAAK;IAChBC,yBAAyB;IACzBC;EACF,CAAC,GAAGJ,OAAO;EAEX,MAAMK,GAAG,GAAGf,yBAAyB,CAACgB,MAAM,CAACH,yBAAyB,CAAC,CACpEI,OAAO,CAACC,GAAG,CAACC,GAAG,CAACC,GAAG;EAEtB,MAAMC,YAAY,GAAG,MAAMxB,cAAc,CACvC;IACEyB,GAAG,EAAE7B,MAAM,CAAC,CAAC;IACb8B,GAAG,EAAEjB,UAAU,CAACkB,iBAAiB;IACjCT;EACF,CAAC,EACDD,gBACF,CAAC;EAED,MAAMW,UAAU,GAAG,MAAM/B,gBAAgB,CAAC;IACxCgC,eAAe,EAAEnB,OAAO;IACxBoB,eAAe,EAAEnB,iBAAiB;IAClCoB,eAAe,EAAEnB,kBAAkB;IACnCoB,iBAAiB,EAAEhB,yBAAyB;IAC5CiB,qBAAqB,EAAET,YAAY;IACnCU,SAAS,EAAE;MACTC,SAAS,EAAE5B,uBAAuB,CAACE,UAAU,CAAC2B,IAAI,CAAC;MACnDrB,KAAK,EAAED;IACT;EACF,CAAC,CAAC,CAACuB,KAAK,CAACC,wBAAwB,CAAC;EAElC,OAAO;IACLC,SAAS,EAAEX,UAAU,CAACW,SAAS;IAC/BC,cAAc,EAAEZ,UAAU,CAACa,YAAY;IACvCC,mBAAmB,EAAEd,UAAU,CAACe,iBAAiB;IACjDC,GAAG,EAAEhB,UAAU,CAACgB;EAClB,CAAC;AACH,CAAC;AAED,MAAMN,wBAAwB,GAAIO,CAAU,IAAK;EAC/C5C,MAAM,CAAC6C,GAAG,CAAC5C,QAAQ,CAAC6C,KAAK,EAAG,iCAAgCF,CAAE,EAAC,CAAC;EAEhE,IAAI,EAAEA,CAAC,YAAY9C,4BAA4B,CAAC,EAAE;IAChD,MAAM8C,CAAC;EACT;EAEA,MAAM,IAAIvC,oBAAoB,CAACF,mBAAmB,CAAC,CAChD4C,MAAM,CAAC,GAAG,EAAE;IACXC,IAAI,EAAE5C,wBAAwB,CAAC6C,8BAA8B;IAC7DC,OAAO,EAAE;EACX,CAAC,CAAC,CACDC,SAAS,CAACP,CAAC,CAAC;AACjB,CAAC"}
1
+ {"version":3,"names":["createClientAttestationPopJwt","fetchMrtdPopInit","UnexpectedStatusCodeError","SdkUnexpectedStatusCodeError","Logger","LogLevel","IssuerResponseError","IssuerResponseErrorCodes","ResponseErrorBuilder","createSignJwtFromCryptoContext","createVerifyJwtFromJwks","partialCallbacks","createInitChallenge","config","initChallenge","issuerConf","initUrl","mrtd_auth_session","mrtd_pop_jwt_nonce","context","appFetch","fetch","walletInstanceAttestation","wiaCryptoContext","clientAttestationDPoP","sdkConfig","callbacks","generateRandom","signJwt","clientAttestation","authorizationServer","credential_issuer","signer","method","alg","publicJwk","getPublicKey","initResult","popInitEndpoint","mrtdAuthSession","mrtdPopJwtNonce","walletAttestation","verifyJwt","keys","catch","handleInitChallengeError","challenge","mrtd_pop_nonce","mrtdPopNonce","pop_verify_endpoint","popVerifyEndpoint","mrz","e","log","ERROR","handle","code","MrtdChallengeInitRequestFailed","message","buildFrom"],"sourceRoot":"../../../../../src","sources":["credential/issuance/mrtd-pop/02-init-challenge.ts"],"mappings":"AAAA,SACEA,6BAA6B,EAC7BC,gBAAgB,QACX,0BAA0B;AACjC,SAEEC,yBAAyB,IAAIC,4BAA4B,QACpD,yBAAyB;AAChC,SAASC,MAAM,EAAEC,QAAQ,QAAQ,wBAAwB;AACzD,SACEC,mBAAmB,EACnBC,wBAAwB,EACxBC,oBAAoB,QACf,uBAAuB;AAE9B,SACEC,8BAA8B,EAC9BC,uBAAuB,EACvBC,gBAAgB,QACX,0BAA0B;AAMjC;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,mBAAmBA,CACjCC,MAAc,EACe;EAC7B,OAAO,eAAeC,aAAaA,CACjCC,UAAU,EACVC,OAAO,EACPC,iBAAiB,EACjBC,kBAAkB,EAClBC,OAAO,EACP;IACA,MAAM;MACJC,QAAQ,GAAGC,KAAK;MAChBC,yBAAyB;MACzBC;IACF,CAAC,GAAGJ,OAAO;IAEX,MAAMK,qBAAqB,GAAG,MAAMxB,6BAA6B,CAAC;MAChEa,MAAM,EAAEA,MAAM,CAACY,SAAS;MACxBC,SAAS,EAAE;QACTC,cAAc,EAAEhB,gBAAgB,CAACgB,cAAc;QAC/CC,OAAO,EAAEnB,8BAA8B,CAACc,gBAAgB;MAC1D,CAAC;MACDM,iBAAiB,EAAEP,yBAAyB;MAC5CQ,mBAAmB,EAAEf,UAAU,CAACgB,iBAAiB;MACjDC,MAAM,EAAE;QACNC,MAAM,EAAE,KAAK;QACbC,GAAG,EAAE,OAAO;QACZC,SAAS,EAAE,MAAMZ,gBAAgB,CAACa,YAAY,CAAC;MACjD;IACF,CAAC,CAAC;IAEF,MAAMC,UAAU,GAAG,MAAMpC,gBAAgB,CAAC;MACxCqC,eAAe,EAAEtB,OAAO;MACxBuB,eAAe,EAAEtB,iBAAiB;MAClCuB,eAAe,EAAEtB,kBAAkB;MACnCuB,iBAAiB,EAAEnB,yBAAyB;MAC5CE,qBAAqB;MACrBE,SAAS,EAAE;QACTgB,SAAS,EAAEhC,uBAAuB,CAACK,UAAU,CAAC4B,IAAI,CAAC;QACnDtB,KAAK,EAAED;MACT;IACF,CAAC,CAAC,CAACwB,KAAK,CAACC,wBAAwB,CAAC;IAElC,OAAO;MACLC,SAAS,EAAET,UAAU,CAACS,SAAS;MAC/BC,cAAc,EAAEV,UAAU,CAACW,YAAY;MACvCC,mBAAmB,EAAEZ,UAAU,CAACa,iBAAiB;MACjDC,GAAG,EAAEd,UAAU,CAACc;IAClB,CAAC;EACH,CAAC;AACH;AAEA,MAAMN,wBAAwB,GAAIO,CAAU,IAAK;EAC/ChD,MAAM,CAACiD,GAAG,CAAChD,QAAQ,CAACiD,KAAK,EAAG,iCAAgCF,CAAE,EAAC,CAAC;EAEhE,IAAI,EAAEA,CAAC,YAAYjD,4BAA4B,CAAC,EAAE;IAChD,MAAMiD,CAAC;EACT;EAEA,MAAM,IAAI5C,oBAAoB,CAACF,mBAAmB,CAAC,CAChDiD,MAAM,CAAC,GAAG,EAAE;IACXC,IAAI,EAAEjD,wBAAwB,CAACkD,8BAA8B;IAC7DC,OAAO,EAAE;EACX,CAAC,CAAC,CACDC,SAAS,CAACP,CAAC,CAAC;AACjB,CAAC"}
@@ -1,53 +1,64 @@
1
1
  import { SignJWT } from "@pagopa/io-react-native-jwt";
2
- import { fetchMrtdPopVerify } from "@pagopa/io-wallet-oauth2";
3
- import { v4 as uuidv4 } from "uuid";
4
- import { createPopToken } from "../../../utils/pop";
5
- import * as WalletInstanceAttestation from "../../../wallet-instance-attestation/v1.0.0/utils"; // TODO: decouple from 1.0.0 version
2
+ import { createClientAttestationPopJwt, fetchMrtdPopVerify } from "@pagopa/io-wallet-oauth2";
6
3
  import { sdkUnexpectedStatusCodeToIssuerError } from "../../../utils/errors";
7
- import { partialCallbacks } from "../../../utils/callbacks";
8
- export const validateChallenge = async (issuerConf, verifyUrl, mrtd_auth_session, mrtd_pop_nonce, mrtd, ias, context) => {
9
- const {
10
- appFetch = fetch,
11
- walletInstanceAttestation,
12
- wiaCryptoContext
13
- } = context;
14
- const aud = issuerConf.credential_issuer;
15
- const iss = WalletInstanceAttestation.decode(walletInstanceAttestation).payload.cnf.jwk.kid;
16
- const signedWiaPoP = await createPopToken({
17
- jti: uuidv4(),
18
- aud,
19
- iss
20
- }, wiaCryptoContext);
21
- const {
22
- kid
23
- } = await wiaCryptoContext.getPublicKey();
24
- const mrtdValidationJwt = await new SignJWT(wiaCryptoContext).setProtectedHeader({
25
- typ: "mrtd-ias+jwt",
26
- kid
27
- }).setPayload({
28
- iss,
29
- aud,
30
- document_type: "cie",
31
- mrtd,
32
- ias
33
- }).setIssuedAt().setExpirationTime("5m").sign();
34
- const verifyResult = await fetchMrtdPopVerify({
35
- popVerifyEndpoint: verifyUrl,
36
- mrtdAuthSession: mrtd_auth_session,
37
- mrtdPopNonce: mrtd_pop_nonce,
38
- clientAttestationDPoP: signedWiaPoP,
39
- mrtdValidationJwt,
40
- walletAttestation: walletInstanceAttestation,
41
- callbacks: {
42
- fetch: appFetch,
43
- ...partialCallbacks
44
- }
45
- }).catch(sdkUnexpectedStatusCodeToIssuerError);
46
- return {
47
- redirect_uri: verifyResult.redirectUri,
48
- mrtd_val_pop_nonce: verifyResult.mrtdValPopNonce
4
+ import { createSignJwtFromCryptoContext, partialCallbacks } from "../../../utils/callbacks";
5
+ /**
6
+ * Factory function to create `validateChallenge` for MRTD PoP flow.
7
+ * The factory is needed to inject version specific SDK configuration.
8
+ * @param config Configuration object containing the IO Wallet SDK configuration
9
+ * @returns `validateChallenge` function compliant with the public API
10
+ */
11
+ export function createValidateChallenge(config) {
12
+ return async function validateChallenge(issuerConf, verifyUrl, mrtd_auth_session, mrtd_pop_nonce, mrtd, ias, context) {
13
+ const {
14
+ appFetch = fetch,
15
+ walletInstanceAttestation,
16
+ wiaCryptoContext
17
+ } = context;
18
+ const aud = issuerConf.credential_issuer;
19
+ const wiaPublicJwk = await wiaCryptoContext.getPublicKey();
20
+ const clientAttestationDPoP = await createClientAttestationPopJwt({
21
+ config: config.sdkConfig,
22
+ callbacks: {
23
+ generateRandom: partialCallbacks.generateRandom,
24
+ signJwt: createSignJwtFromCryptoContext(wiaCryptoContext)
25
+ },
26
+ clientAttestation: walletInstanceAttestation,
27
+ authorizationServer: aud,
28
+ signer: {
29
+ method: "jwk",
30
+ alg: "ES256",
31
+ publicJwk: wiaPublicJwk
32
+ }
33
+ });
34
+ const mrtdValidationJwt = await new SignJWT(wiaCryptoContext).setProtectedHeader({
35
+ typ: "mrtd-ias+jwt",
36
+ kid: wiaPublicJwk.kid
37
+ }).setPayload({
38
+ iss: wiaPublicJwk.kid,
39
+ aud,
40
+ document_type: "cie",
41
+ mrtd,
42
+ ias
43
+ }).setIssuedAt().setExpirationTime("5m").sign();
44
+ const verifyResult = await fetchMrtdPopVerify({
45
+ popVerifyEndpoint: verifyUrl,
46
+ mrtdAuthSession: mrtd_auth_session,
47
+ mrtdPopNonce: mrtd_pop_nonce,
48
+ clientAttestationDPoP,
49
+ mrtdValidationJwt,
50
+ walletAttestation: walletInstanceAttestation,
51
+ callbacks: {
52
+ fetch: appFetch,
53
+ ...partialCallbacks
54
+ }
55
+ }).catch(sdkUnexpectedStatusCodeToIssuerError);
56
+ return {
57
+ redirect_uri: verifyResult.redirectUri,
58
+ mrtd_val_pop_nonce: verifyResult.mrtdValPopNonce
59
+ };
49
60
  };
50
- };
61
+ }
51
62
  export const buildChallengeCallbackUrl = async (redirectUri, valPopNonce, authSession) => {
52
63
  const params = new URLSearchParams({
53
64
  mrtd_val_pop_nonce: valPopNonce,
@@ -1 +1 @@
1
- {"version":3,"names":["SignJWT","fetchMrtdPopVerify","v4","uuidv4","createPopToken","WalletInstanceAttestation","sdkUnexpectedStatusCodeToIssuerError","partialCallbacks","validateChallenge","issuerConf","verifyUrl","mrtd_auth_session","mrtd_pop_nonce","mrtd","ias","context","appFetch","fetch","walletInstanceAttestation","wiaCryptoContext","aud","credential_issuer","iss","decode","payload","cnf","jwk","kid","signedWiaPoP","jti","getPublicKey","mrtdValidationJwt","setProtectedHeader","typ","setPayload","document_type","setIssuedAt","setExpirationTime","sign","verifyResult","popVerifyEndpoint","mrtdAuthSession","mrtdPopNonce","clientAttestationDPoP","walletAttestation","callbacks","catch","redirect_uri","redirectUri","mrtd_val_pop_nonce","mrtdValPopNonce","buildChallengeCallbackUrl","valPopNonce","authSession","params","URLSearchParams","callbackUrl"],"sourceRoot":"../../../../../src","sources":["credential/issuance/mrtd-pop/03-validate-challenge.ts"],"mappings":"AAAA,SAASA,OAAO,QAAQ,6BAA6B;AACrD,SAASC,kBAAkB,QAAQ,0BAA0B;AAC7D,SAASC,EAAE,IAAIC,MAAM,QAAQ,MAAM;AACnC,SAASC,cAAc,QAAQ,oBAAoB;AACnD,OAAO,KAAKC,yBAAyB,MAAM,mDAAmD,CAAC,CAAC;AAChG,SAASC,oCAAoC,QAAQ,uBAAuB;AAC5E,SAASC,gBAAgB,QAAQ,0BAA0B;AAG3D,OAAO,MAAMC,iBAAkD,GAAG,MAAAA,CAChEC,UAAU,EACVC,SAAS,EACTC,iBAAiB,EACjBC,cAAc,EACdC,IAAI,EACJC,GAAG,EACHC,OAAO,KACJ;EACH,MAAM;IACJC,QAAQ,GAAGC,KAAK;IAChBC,yBAAyB;IACzBC;EACF,CAAC,GAAGJ,OAAO;EAEX,MAAMK,GAAG,GAAGX,UAAU,CAACY,iBAAiB;EACxC,MAAMC,GAAG,GAAGjB,yBAAyB,CAACkB,MAAM,CAACL,yBAAyB,CAAC,CACpEM,OAAO,CAACC,GAAG,CAACC,GAAG,CAACC,GAAG;EAEtB,MAAMC,YAAY,GAAG,MAAMxB,cAAc,CACvC;IACEyB,GAAG,EAAE1B,MAAM,CAAC,CAAC;IACbiB,GAAG;IACHE;EACF,CAAC,EACDH,gBACF,CAAC;EAED,MAAM;IAAEQ;EAAI,CAAC,GAAG,MAAMR,gBAAgB,CAACW,YAAY,CAAC,CAAC;EAErD,MAAMC,iBAAiB,GAAG,MAAM,IAAI/B,OAAO,CAACmB,gBAAgB,CAAC,CAC1Da,kBAAkB,CAAC;IAClBC,GAAG,EAAE,cAAc;IACnBN;EACF,CAAC,CAAC,CACDO,UAAU,CAAC;IACVZ,GAAG;IACHF,GAAG;IACHe,aAAa,EAAE,KAAK;IACpBtB,IAAI;IACJC;EACF,CAAC,CAAC,CACDsB,WAAW,CAAC,CAAC,CACbC,iBAAiB,CAAC,IAAI,CAAC,CACvBC,IAAI,CAAC,CAAC;EAET,MAAMC,YAAY,GAAG,MAAMtC,kBAAkB,CAAC;IAC5CuC,iBAAiB,EAAE9B,SAAS;IAC5B+B,eAAe,EAAE9B,iBAAiB;IAClC+B,YAAY,EAAE9B,cAAc;IAC5B+B,qBAAqB,EAAEf,YAAY;IACnCG,iBAAiB;IACjBa,iBAAiB,EAAE1B,yBAAyB;IAC5C2B,SAAS,EAAE;MACT5B,KAAK,EAAED,QAAQ;MACf,GAAGT;IACL;EACF,CAAC,CAAC,CAACuC,KAAK,CAACxC,oCAAoC,CAAC;EAE9C,OAAO;IACLyC,YAAY,EAAER,YAAY,CAACS,WAAW;IACtCC,kBAAkB,EAAEV,YAAY,CAACW;EACnC,CAAC;AACH,CAAC;AAED,OAAO,MAAMC,yBAAkE,GAC7E,MAAAA,CAAOH,WAAW,EAAEI,WAAW,EAAEC,WAAW,KAAK;EAC/C,MAAMC,MAAM,GAAG,IAAIC,eAAe,CAAC;IACjCN,kBAAkB,EAAEG,WAAW;IAC/BzC,iBAAiB,EAAE0C;EACrB,CAAC,CAAC;EAEF,MAAMG,WAAW,GAAI,GAAER,WAAY,IAAGM,MAAO,EAAC;EAC9C,OAAO;IAAEE;EAAY,CAAC;AACxB,CAAC"}
1
+ {"version":3,"names":["SignJWT","createClientAttestationPopJwt","fetchMrtdPopVerify","sdkUnexpectedStatusCodeToIssuerError","createSignJwtFromCryptoContext","partialCallbacks","createValidateChallenge","config","validateChallenge","issuerConf","verifyUrl","mrtd_auth_session","mrtd_pop_nonce","mrtd","ias","context","appFetch","fetch","walletInstanceAttestation","wiaCryptoContext","aud","credential_issuer","wiaPublicJwk","getPublicKey","clientAttestationDPoP","sdkConfig","callbacks","generateRandom","signJwt","clientAttestation","authorizationServer","signer","method","alg","publicJwk","mrtdValidationJwt","setProtectedHeader","typ","kid","setPayload","iss","document_type","setIssuedAt","setExpirationTime","sign","verifyResult","popVerifyEndpoint","mrtdAuthSession","mrtdPopNonce","walletAttestation","catch","redirect_uri","redirectUri","mrtd_val_pop_nonce","mrtdValPopNonce","buildChallengeCallbackUrl","valPopNonce","authSession","params","URLSearchParams","callbackUrl"],"sourceRoot":"../../../../../src","sources":["credential/issuance/mrtd-pop/03-validate-challenge.ts"],"mappings":"AAAA,SAASA,OAAO,QAAQ,6BAA6B;AACrD,SACEC,6BAA6B,EAC7BC,kBAAkB,QACb,0BAA0B;AAEjC,SAASC,oCAAoC,QAAQ,uBAAuB;AAC5E,SACEC,8BAA8B,EAC9BC,gBAAgB,QACX,0BAA0B;AAOjC;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,uBAAuBA,CACrCC,MAAc,EACmB;EACjC,OAAO,eAAeC,iBAAiBA,CACrCC,UAAU,EACVC,SAAS,EACTC,iBAAiB,EACjBC,cAAc,EACdC,IAAI,EACJC,GAAG,EACHC,OAAO,EACP;IACA,MAAM;MACJC,QAAQ,GAAGC,KAAK;MAChBC,yBAAyB;MACzBC;IACF,CAAC,GAAGJ,OAAO;IAEX,MAAMK,GAAG,GAAGX,UAAU,CAACY,iBAAiB;IAExC,MAAMC,YAAY,GAAG,MAAMH,gBAAgB,CAACI,YAAY,CAAC,CAAC;IAE1D,MAAMC,qBAAqB,GAAG,MAAMvB,6BAA6B,CAAC;MAChEM,MAAM,EAAEA,MAAM,CAACkB,SAAS;MACxBC,SAAS,EAAE;QACTC,cAAc,EAAEtB,gBAAgB,CAACsB,cAAc;QAC/CC,OAAO,EAAExB,8BAA8B,CAACe,gBAAgB;MAC1D,CAAC;MACDU,iBAAiB,EAAEX,yBAAyB;MAC5CY,mBAAmB,EAAEV,GAAG;MACxBW,MAAM,EAAE;QACNC,MAAM,EAAE,KAAK;QACbC,GAAG,EAAE,OAAO;QACZC,SAAS,EAAEZ;MACb;IACF,CAAC,CAAC;IAEF,MAAMa,iBAAiB,GAAG,MAAM,IAAInC,OAAO,CAACmB,gBAAgB,CAAC,CAC1DiB,kBAAkB,CAAC;MAClBC,GAAG,EAAE,cAAc;MACnBC,GAAG,EAAEhB,YAAY,CAACgB;IACpB,CAAC,CAAC,CACDC,UAAU,CAAC;MACVC,GAAG,EAAElB,YAAY,CAACgB,GAAG;MACrBlB,GAAG;MACHqB,aAAa,EAAE,KAAK;MACpB5B,IAAI;MACJC;IACF,CAAC,CAAC,CACD4B,WAAW,CAAC,CAAC,CACbC,iBAAiB,CAAC,IAAI,CAAC,CACvBC,IAAI,CAAC,CAAC;IAET,MAAMC,YAAY,GAAG,MAAM3C,kBAAkB,CAAC;MAC5C4C,iBAAiB,EAAEpC,SAAS;MAC5BqC,eAAe,EAAEpC,iBAAiB;MAClCqC,YAAY,EAAEpC,cAAc;MAC5BY,qBAAqB;MACrBW,iBAAiB;MACjBc,iBAAiB,EAAE/B,yBAAyB;MAC5CQ,SAAS,EAAE;QACTT,KAAK,EAAED,QAAQ;QACf,GAAGX;MACL;IACF,CAAC,CAAC,CAAC6C,KAAK,CAAC/C,oCAAoC,CAAC;IAE9C,OAAO;MACLgD,YAAY,EAAEN,YAAY,CAACO,WAAW;MACtCC,kBAAkB,EAAER,YAAY,CAACS;IACnC,CAAC;EACH,CAAC;AACH;AAEA,OAAO,MAAMC,yBAAkE,GAC7E,MAAAA,CAAOH,WAAW,EAAEI,WAAW,EAAEC,WAAW,KAAK;EAC/C,MAAMC,MAAM,GAAG,IAAIC,eAAe,CAAC;IACjCN,kBAAkB,EAAEG,WAAW;IAC/B7C,iBAAiB,EAAE8C;EACrB,CAAC,CAAC;EAEF,MAAMG,WAAW,GAAI,GAAER,WAAY,IAAGM,MAAO,EAAC;EAC9C,OAAO;IAAEE;EAAY,CAAC;AACxB,CAAC"}
@@ -1,10 +1,25 @@
1
+ import { sdkConfigV1_0, sdkConfigV1_3 } from "../../../utils/config";
1
2
  import { verifyAndParseChallengeInfo } from "./01-verify-and-parse-challenge-info";
2
- import { initChallenge } from "./02-init-challenge";
3
- import { validateChallenge, buildChallengeCallbackUrl } from "./03-validate-challenge";
4
- export const MRTDPoP = {
3
+ import { createInitChallenge } from "./02-init-challenge";
4
+ import { createValidateChallenge, buildChallengeCallbackUrl } from "./03-validate-challenge";
5
+ export const MRTDPoPv1_0 = {
5
6
  verifyAndParseChallengeInfo,
6
- initChallenge,
7
- validateChallenge,
7
+ initChallenge: createInitChallenge({
8
+ sdkConfig: sdkConfigV1_0
9
+ }),
10
+ validateChallenge: createValidateChallenge({
11
+ sdkConfig: sdkConfigV1_0
12
+ }),
13
+ buildChallengeCallbackUrl
14
+ };
15
+ export const MRTDPoPv1_3 = {
16
+ verifyAndParseChallengeInfo,
17
+ initChallenge: createInitChallenge({
18
+ sdkConfig: sdkConfigV1_3
19
+ }),
20
+ validateChallenge: createValidateChallenge({
21
+ sdkConfig: sdkConfigV1_3
22
+ }),
8
23
  buildChallengeCallbackUrl
9
24
  };
10
25
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["verifyAndParseChallengeInfo","initChallenge","validateChallenge","buildChallengeCallbackUrl","MRTDPoP"],"sourceRoot":"../../../../../src","sources":["credential/issuance/mrtd-pop/index.ts"],"mappings":"AACA,SAASA,2BAA2B,QAAQ,sCAAsC;AAClF,SAASC,aAAa,QAAQ,qBAAqB;AACnD,SACEC,iBAAiB,EACjBC,yBAAyB,QACpB,yBAAyB;AAEhC,OAAO,MAAMC,OAAmB,GAAG;EACjCJ,2BAA2B;EAC3BC,aAAa;EACbC,iBAAiB;EACjBC;AACF,CAAC"}
1
+ {"version":3,"names":["sdkConfigV1_0","sdkConfigV1_3","verifyAndParseChallengeInfo","createInitChallenge","createValidateChallenge","buildChallengeCallbackUrl","MRTDPoPv1_0","initChallenge","sdkConfig","validateChallenge","MRTDPoPv1_3"],"sourceRoot":"../../../../../src","sources":["credential/issuance/mrtd-pop/index.ts"],"mappings":"AAAA,SAASA,aAAa,EAAEC,aAAa,QAAQ,uBAAuB;AAEpE,SAASC,2BAA2B,QAAQ,sCAAsC;AAClF,SAASC,mBAAmB,QAAQ,qBAAqB;AACzD,SACEC,uBAAuB,EACvBC,yBAAyB,QACpB,yBAAyB;AAEhC,OAAO,MAAMC,WAAuB,GAAG;EACrCJ,2BAA2B;EAC3BK,aAAa,EAAEJ,mBAAmB,CAAC;IAAEK,SAAS,EAAER;EAAc,CAAC,CAAC;EAChES,iBAAiB,EAAEL,uBAAuB,CAAC;IAAEI,SAAS,EAAER;EAAc,CAAC,CAAC;EACxEK;AACF,CAAC;AAED,OAAO,MAAMK,WAAuB,GAAG;EACrCR,2BAA2B;EAC3BK,aAAa,EAAEJ,mBAAmB,CAAC;IAAEK,SAAS,EAAEP;EAAc,CAAC,CAAC;EAChEQ,iBAAiB,EAAEL,uBAAuB,CAAC;IAAEI,SAAS,EAAEP;EAAc,CAAC,CAAC;EACxEI;AACF,CAAC"}
@@ -2,7 +2,7 @@ import { generateRandomAlphaNumericString } from "../../../utils/misc";
2
2
  import { makeParRequest } from "../../../utils/par";
3
3
  import { LogLevel, Logger } from "../../../utils/logging";
4
4
  import { IoWalletError } from "../../../utils/errors";
5
- import { selectCredentialDefinition, selectResponseMode } from "../common/authorization";
5
+ import { selectCredentialDefinition, selectResponseMode } from "../common/02-start-user-authorization";
6
6
  export const startUserAuthorization = async (issuerConf, credentialIds, proof, ctx) => {
7
7
  const {
8
8
  wiaCryptoContext,
@@ -1 +1 @@
1
- {"version":3,"names":["generateRandomAlphaNumericString","makeParRequest","LogLevel","Logger","IoWalletError","selectCredentialDefinition","selectResponseMode","startUserAuthorization","issuerConf","credentialIds","proof","ctx","wiaCryptoContext","walletInstanceAttestation","redirectUri","appFetch","fetch","clientId","getPublicKey","then","_","kid","log","ERROR","codeVerifier","parEndpoint","pushed_authorization_request_endpoint","aud","credential_issuer","responseMode","getPar","credentialDefinition","map","c","proofType","push","type","idphinting","idpHinting","challenge_method","challenge_redirect_uri","issuerRequestUri","authorizationDetails"],"sourceRoot":"../../../../../src","sources":["credential/issuance/v1.0.0/02-start-user-authorization.ts"],"mappings":"AAAA,SAASA,gCAAgC,QAAQ,qBAAqB;AACtE,SAASC,cAAc,QAAQ,oBAAoB;AACnD,SAASC,QAAQ,EAAEC,MAAM,QAAQ,wBAAwB;AACzD,SAASC,aAAa,QAAQ,uBAAuB;AAErD,SACEC,0BAA0B,EAC1BC,kBAAkB,QACb,yBAAyB;AAEhC,OAAO,MAAMC,sBAA6D,GACxE,MAAAA,CAAOC,UAAU,EAAEC,aAAa,EAAEC,KAAK,EAAEC,GAAG,KAAK;EAC/C,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;EAEzE,IAAI,CAACJ,QAAQ,EAAE;IACbd,MAAM,CAACmB,GAAG,CACRpB,QAAQ,CAACqB,KAAK,EACb,kCAAiCN,QAAS,0BAC7C,CAAC;IACD,MAAM,IAAIb,aAAa,CAAC,qBAAqB,CAAC;EAChD;EACA,MAAMoB,YAAY,GAAGxB,gCAAgC,CAAC,EAAE,CAAC;EACzD,MAAMyB,WAAW,GAAGjB,UAAU,CAACkB,qCAAqC;EACpE,MAAMC,GAAG,GAAGnB,UAAU,CAACoB,iBAAiB;EACxC,MAAMC,YAAY,GAAGvB,kBAAkB,CAACE,UAAU,EAAEC,aAAa,CAAC;EAClE,MAAMqB,MAAM,GAAG7B,cAAc,CAAC;IAAEW,gBAAgB;IAAEG;EAAS,CAAC,CAAC;EAE7D,MAAMgB,oBAAoB,GAAGtB,aAAa,CAACuB,GAAG,CAAEC,CAAC,IAC/C5B,0BAA0B,CAACG,UAAU,EAAEyB,CAAC,CAC1C,CAAC;EAED,IAAIvB,KAAK,CAACwB,SAAS,KAAK,UAAU,EAAE;IAClC;AACN;AACA;AACA;AACA;AACA;IACMH,oBAAoB,CAACI,IAAI,CAAC;MACxBC,IAAI,EAAE,sBAAsB;MAC5BC,UAAU,EAAE3B,KAAK,CAAC4B,UAAU;MAC5BC,gBAAgB,EAAE,UAAU;MAC5BC,sBAAsB,EAAE1B;IAC1B,CAAC,CAAC;EACJ;EAEA,MAAM2B,gBAAgB,GAAG,MAAMX,MAAM,CACnCL,WAAW,EACXZ,yBAAyB,EACzB;IACEc,GAAG;IACHV,QAAQ;IACRO,YAAY;IACZV,WAAW;IACXe,YAAY;IACZa,oBAAoB,EAAEX;EACxB,CACF,CAAC;EAED,OAAO;IAAEU,gBAAgB;IAAExB,QAAQ;IAAEO,YAAY;IAAEO;EAAqB,CAAC;AAC3E,CAAC"}
1
+ {"version":3,"names":["generateRandomAlphaNumericString","makeParRequest","LogLevel","Logger","IoWalletError","selectCredentialDefinition","selectResponseMode","startUserAuthorization","issuerConf","credentialIds","proof","ctx","wiaCryptoContext","walletInstanceAttestation","redirectUri","appFetch","fetch","clientId","getPublicKey","then","_","kid","log","ERROR","codeVerifier","parEndpoint","pushed_authorization_request_endpoint","aud","credential_issuer","responseMode","getPar","credentialDefinition","map","c","proofType","push","type","idphinting","idpHinting","challenge_method","challenge_redirect_uri","issuerRequestUri","authorizationDetails"],"sourceRoot":"../../../../../src","sources":["credential/issuance/v1.0.0/02-start-user-authorization.ts"],"mappings":"AAAA,SAASA,gCAAgC,QAAQ,qBAAqB;AACtE,SAASC,cAAc,QAAQ,oBAAoB;AACnD,SAASC,QAAQ,EAAEC,MAAM,QAAQ,wBAAwB;AACzD,SAASC,aAAa,QAAQ,uBAAuB;AAErD,SACEC,0BAA0B,EAC1BC,kBAAkB,QACb,uCAAuC;AAE9C,OAAO,MAAMC,sBAA6D,GACxE,MAAAA,CAAOC,UAAU,EAAEC,aAAa,EAAEC,KAAK,EAAEC,GAAG,KAAK;EAC/C,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;EAEzE,IAAI,CAACJ,QAAQ,EAAE;IACbd,MAAM,CAACmB,GAAG,CACRpB,QAAQ,CAACqB,KAAK,EACb,kCAAiCN,QAAS,0BAC7C,CAAC;IACD,MAAM,IAAIb,aAAa,CAAC,qBAAqB,CAAC;EAChD;EACA,MAAMoB,YAAY,GAAGxB,gCAAgC,CAAC,EAAE,CAAC;EACzD,MAAMyB,WAAW,GAAGjB,UAAU,CAACkB,qCAAqC;EACpE,MAAMC,GAAG,GAAGnB,UAAU,CAACoB,iBAAiB;EACxC,MAAMC,YAAY,GAAGvB,kBAAkB,CAACE,UAAU,EAAEC,aAAa,CAAC;EAClE,MAAMqB,MAAM,GAAG7B,cAAc,CAAC;IAAEW,gBAAgB;IAAEG;EAAS,CAAC,CAAC;EAE7D,MAAMgB,oBAAoB,GAAGtB,aAAa,CAACuB,GAAG,CAAEC,CAAC,IAC/C5B,0BAA0B,CAACG,UAAU,EAAEyB,CAAC,CAC1C,CAAC;EAED,IAAIvB,KAAK,CAACwB,SAAS,KAAK,UAAU,EAAE;IAClC;AACN;AACA;AACA;AACA;AACA;IACMH,oBAAoB,CAACI,IAAI,CAAC;MACxBC,IAAI,EAAE,sBAAsB;MAC5BC,UAAU,EAAE3B,KAAK,CAAC4B,UAAU;MAC5BC,gBAAgB,EAAE,UAAU;MAC5BC,sBAAsB,EAAE1B;IAC1B,CAAC,CAAC;EACJ;EAEA,MAAM2B,gBAAgB,GAAG,MAAMX,MAAM,CACnCL,WAAW,EACXZ,yBAAyB,EACzB;IACEc,GAAG;IACHV,QAAQ;IACRO,YAAY;IACZV,WAAW;IACXe,YAAY;IACZa,oBAAoB,EAAEX;EACxB,CACF,CAAC;EAED,OAAO;IAAEU,gBAAgB;IAAExB,QAAQ;IAAEO,YAAY;IAAEO;EAAqB,CAAC;AAC3E,CAAC"}
@@ -4,7 +4,7 @@ import { continueUserAuthorizationWithMRTDPoPChallenge, completeUserAuthorizatio
4
4
  import { authorizeAccess } from "./04-authorize-access";
5
5
  import { obtainCredential, obtainCredentialsBatch } from "./05-obtain-credential";
6
6
  import { verifyAndParseCredential } from "./06-verify-and-parse-credential";
7
- import { MRTDPoP } from "../mrtd-pop";
7
+ import { MRTDPoPv1_0 } from "../mrtd-pop";
8
8
  export const Issuance = {
9
9
  evaluateIssuerTrust,
10
10
  startUserAuthorization,
@@ -17,6 +17,6 @@ export const Issuance = {
17
17
  obtainCredential,
18
18
  obtainCredentialsBatch,
19
19
  verifyAndParseCredential,
20
- MRTDPoP
20
+ MRTDPoP: MRTDPoPv1_0
21
21
  };
22
22
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["evaluateIssuerTrust","startUserAuthorization","continueUserAuthorizationWithMRTDPoPChallenge","completeUserAuthorizationWithQueryMode","completeUserAuthorizationWithFormPostJwtMode","buildAuthorizationUrl","getRequestedCredentialToBePresented","authorizeAccess","obtainCredential","obtainCredentialsBatch","verifyAndParseCredential","MRTDPoP","Issuance"],"sourceRoot":"../../../../../src","sources":["credential/issuance/v1.0.0/index.ts"],"mappings":"AACA,SAASA,mBAAmB,QAAQ,4BAA4B;AAChE,SAASC,sBAAsB,QAAQ,+BAA+B;AACtE,SACEC,6CAA6C,EAC7CC,sCAAsC,EACtCC,4CAA4C,EAC5CC,qBAAqB,EACrBC,mCAAmC,QAC9B,kCAAkC;AACzC,SAASC,eAAe,QAAQ,uBAAuB;AACvD,SACEC,gBAAgB,EAChBC,sBAAsB,QACjB,wBAAwB;AAC/B,SAASC,wBAAwB,QAAQ,kCAAkC;AAC3E,SAASC,OAAO,QAAQ,aAAa;AAErC,OAAO,MAAMC,QAAqB,GAAG;EACnCZ,mBAAmB;EACnBC,sBAAsB;EACtBI,qBAAqB;EACrBF,sCAAsC;EACtCD,6CAA6C;EAC7CI,mCAAmC;EACnCF,4CAA4C;EAC5CG,eAAe;EACfC,gBAAgB;EAChBC,sBAAsB;EACtBC,wBAAwB;EACxBC;AACF,CAAC"}
1
+ {"version":3,"names":["evaluateIssuerTrust","startUserAuthorization","continueUserAuthorizationWithMRTDPoPChallenge","completeUserAuthorizationWithQueryMode","completeUserAuthorizationWithFormPostJwtMode","buildAuthorizationUrl","getRequestedCredentialToBePresented","authorizeAccess","obtainCredential","obtainCredentialsBatch","verifyAndParseCredential","MRTDPoPv1_0","Issuance","MRTDPoP"],"sourceRoot":"../../../../../src","sources":["credential/issuance/v1.0.0/index.ts"],"mappings":"AACA,SAASA,mBAAmB,QAAQ,4BAA4B;AAChE,SAASC,sBAAsB,QAAQ,+BAA+B;AACtE,SACEC,6CAA6C,EAC7CC,sCAAsC,EACtCC,4CAA4C,EAC5CC,qBAAqB,EACrBC,mCAAmC,QAC9B,kCAAkC;AACzC,SAASC,eAAe,QAAQ,uBAAuB;AACvD,SACEC,gBAAgB,EAChBC,sBAAsB,QACjB,wBAAwB;AAC/B,SAASC,wBAAwB,QAAQ,kCAAkC;AAC3E,SAASC,WAAW,QAAQ,aAAa;AAEzC,OAAO,MAAMC,QAAqB,GAAG;EACnCZ,mBAAmB;EACnBC,sBAAsB;EACtBI,qBAAqB;EACrBF,sCAAsC;EACtCD,6CAA6C;EAC7CI,mCAAmC;EACnCF,4CAA4C;EAC5CG,eAAe;EACfC,gBAAgB;EAChBC,sBAAsB;EACtBC,wBAAwB;EACxBG,OAAO,EAAEF;AACX,CAAC"}
@@ -10,7 +10,7 @@ export const mapToIssuerConfig = createMapper(x => {
10
10
  credential_endpoint: openid_credential_issuer.credential_endpoint,
11
11
  credential_issuer: openid_credential_issuer.credential_issuer,
12
12
  credential_configurations_supported: openid_credential_issuer.credential_configurations_supported,
13
- keys: openid_credential_issuer.jwks.keys,
13
+ keys: [...openid_credential_issuer.jwks.keys, ...oauth_authorization_server.jwks.keys],
14
14
  pushed_authorization_request_endpoint: oauth_authorization_server.pushed_authorization_request_endpoint,
15
15
  token_endpoint: oauth_authorization_server.token_endpoint,
16
16
  status_assertion_endpoint: openid_credential_issuer.status_attestation_endpoint,
@@ -1 +1 @@
1
- {"version":3,"names":["createMapper","mapToIssuerConfig","x","oauth_authorization_server","openid_credential_issuer","federation_entity","payload","metadata","authorization_endpoint","credential_endpoint","credential_issuer","credential_configurations_supported","keys","jwks","pushed_authorization_request_endpoint","token_endpoint","status_assertion_endpoint","status_attestation_endpoint","nonce_endpoint"],"sourceRoot":"../../../../../src","sources":["credential/issuance/v1.0.0/mappers.ts"],"mappings":"AACA,SAASA,YAAY,QAAQ,wBAAwB;AAGrD,OAAO,MAAMC,iBAAiB,GAAGD,YAAY,CAG1CE,CAAC,IAAK;EACP,MAAM;IACJC,0BAA0B;IAC1BC,wBAAwB;IACxBC;EACF,CAAC,GAAGH,CAAC,CAACI,OAAO,CAACC,QAAQ;EACtB,OAAO;IACLC,sBAAsB,EAAEL,0BAA0B,CAACK,sBAAsB;IACzEC,mBAAmB,EAAEL,wBAAwB,CAACK,mBAAmB;IACjEC,iBAAiB,EAAEN,wBAAwB,CAACM,iBAAiB;IAC7DC,mCAAmC,EACjCP,wBAAwB,CAACO,mCAAmC;IAC9DC,IAAI,EAAER,wBAAwB,CAACS,IAAI,CAACD,IAAI;IACxCE,qCAAqC,EACnCX,0BAA0B,CAACW,qCAAqC;IAClEC,cAAc,EAAEZ,0BAA0B,CAACY,cAAc;IACzDC,yBAAyB,EACvBZ,wBAAwB,CAACa,2BAA2B;IACtDC,cAAc,EAAEd,wBAAwB,CAACc,cAAc;IACvDb;EACF,CAAC;AACH,CAAC,CAAC"}
1
+ {"version":3,"names":["createMapper","mapToIssuerConfig","x","oauth_authorization_server","openid_credential_issuer","federation_entity","payload","metadata","authorization_endpoint","credential_endpoint","credential_issuer","credential_configurations_supported","keys","jwks","pushed_authorization_request_endpoint","token_endpoint","status_assertion_endpoint","status_attestation_endpoint","nonce_endpoint"],"sourceRoot":"../../../../../src","sources":["credential/issuance/v1.0.0/mappers.ts"],"mappings":"AACA,SAASA,YAAY,QAAQ,wBAAwB;AAGrD,OAAO,MAAMC,iBAAiB,GAAGD,YAAY,CAG1CE,CAAC,IAAK;EACP,MAAM;IACJC,0BAA0B;IAC1BC,wBAAwB;IACxBC;EACF,CAAC,GAAGH,CAAC,CAACI,OAAO,CAACC,QAAQ;EACtB,OAAO;IACLC,sBAAsB,EAAEL,0BAA0B,CAACK,sBAAsB;IACzEC,mBAAmB,EAAEL,wBAAwB,CAACK,mBAAmB;IACjEC,iBAAiB,EAAEN,wBAAwB,CAACM,iBAAiB;IAC7DC,mCAAmC,EACjCP,wBAAwB,CAACO,mCAAmC;IAC9DC,IAAI,EAAE,CACJ,GAAGR,wBAAwB,CAACS,IAAI,CAACD,IAAI,EACrC,GAAGT,0BAA0B,CAACU,IAAI,CAACD,IAAI,CACxC;IACDE,qCAAqC,EACnCX,0BAA0B,CAACW,qCAAqC;IAClEC,cAAc,EAAEZ,0BAA0B,CAACY,cAAc;IACzDC,yBAAyB,EACvBZ,wBAAwB,CAACa,2BAA2B;IACtDC,cAAc,EAAEd,wBAAwB,CAACc,cAAc;IACvDb;EACF,CAAC;AACH,CAAC,CAAC"}
@@ -1,5 +1,4 @@
1
1
  import { fetchMetadata } from "@pagopa/io-wallet-oid4vci";
2
- import { partialCallbacks } from "../../../utils/callbacks";
3
2
  import { sdkConfigV1_3 } from "../../../utils/config";
4
3
  import { mapToIssuerConfig } from "./mappers";
5
4
  export const evaluateIssuerTrust = async function (issuerUrl) {
@@ -8,7 +7,6 @@ export const evaluateIssuerTrust = async function (issuerUrl) {
8
7
  config: sdkConfigV1_3,
9
8
  credentialIssuerUrl: issuerUrl,
10
9
  callbacks: {
11
- ...partialCallbacks,
12
10
  fetch: context.appFetch
13
11
  }
14
12
  });
@@ -1 +1 @@
1
- {"version":3,"names":["fetchMetadata","partialCallbacks","sdkConfigV1_3","mapToIssuerConfig","evaluateIssuerTrust","issuerUrl","context","arguments","length","undefined","issuerMetadata","config","credentialIssuerUrl","callbacks","fetch","appFetch","issuerConf"],"sourceRoot":"../../../../../src","sources":["credential/issuance/v1.3.3/01-evaluate-issuer-trust.ts"],"mappings":"AAAA,SACEA,aAAa,QAER,2BAA2B;AAClC,SAASC,gBAAgB,QAAQ,0BAA0B;AAC3D,SAASC,aAAa,QAAQ,uBAAuB;AAErD,SAASC,iBAAiB,QAAQ,WAAW;AAE7C,OAAO,MAAMC,mBAAuD,GAAG,eAAAA,CACrEC,SAAS,EAEN;EAAA,IADHC,OAAO,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EAEZ,MAAMG,cAAc,GAAI,MAAMV,aAAa,CAAC;IAC1CW,MAAM,EAAET,aAAa;IACrBU,mBAAmB,EAAEP,SAAS;IAC9BQ,SAAS,EAAE;MACT,GAAGZ,gBAAgB;MACnBa,KAAK,EAAER,OAAO,CAACS;IACjB;EACF,CAAC,CAA0B;EAE3B,OAAO;IAAEC,UAAU,EAAEb,iBAAiB,CAACO,cAAc;EAAE,CAAC;AAC1D,CAAC"}
1
+ {"version":3,"names":["fetchMetadata","sdkConfigV1_3","mapToIssuerConfig","evaluateIssuerTrust","issuerUrl","context","arguments","length","undefined","issuerMetadata","config","credentialIssuerUrl","callbacks","fetch","appFetch","issuerConf"],"sourceRoot":"../../../../../src","sources":["credential/issuance/v1.3.3/01-evaluate-issuer-trust.ts"],"mappings":"AAAA,SACEA,aAAa,QAER,2BAA2B;AAClC,SAASC,aAAa,QAAQ,uBAAuB;AAErD,SAASC,iBAAiB,QAAQ,WAAW;AAE7C,OAAO,MAAMC,mBAAuD,GAAG,eAAAA,CACrEC,SAAS,EAEN;EAAA,IADHC,OAAO,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EAEZ,MAAMG,cAAc,GAAI,MAAMT,aAAa,CAAC;IAC1CU,MAAM,EAAET,aAAa;IACrBU,mBAAmB,EAAEP,SAAS;IAC9BQ,SAAS,EAAE;MACTC,KAAK,EAAER,OAAO,CAACS;IACjB;EACF,CAAC,CAA0B;EAE3B,OAAO;IAAEC,UAAU,EAAEb,iBAAiB,CAACO,cAAc;EAAE,CAAC;AAC1D,CAAC"}
@@ -1,9 +1,10 @@
1
1
  import { createPushedAuthorizationRequest, fetchPushedAuthorizationResponse, createClientAttestationPopJwt } from "@pagopa/io-wallet-oauth2";
2
+ import { v4 as uuidv4 } from "uuid";
2
3
  import { LogLevel, Logger } from "../../../utils/logging";
3
- import { SignJWT } from "@pagopa/io-react-native-jwt";
4
- import { partialCallbacks } from "../../../utils/callbacks";
4
+ import { createSignJwtFromCryptoContext, partialCallbacks } from "../../../utils/callbacks";
5
5
  import { IoWalletError } from "../../../utils/errors";
6
- import { selectCredentialDefinition, selectResponseMode } from "../common/authorization";
6
+ import { sdkConfigV1_3 } from "../../../utils/config";
7
+ import { selectCredentialDefinition } from "../common/02-start-user-authorization";
7
8
  export const startUserAuthorization = async (issuerConf, credentialIds, proof, ctx) => {
8
9
  const {
9
10
  wiaCryptoContext,
@@ -16,7 +17,6 @@ export const startUserAuthorization = async (issuerConf, credentialIds, proof, c
16
17
  Logger.log(LogLevel.ERROR, `Public key associated with kid ${clientId} not found in the device`);
17
18
  throw new IoWalletError("No public key found");
18
19
  }
19
- const responseMode = selectResponseMode(issuerConf, credentialIds);
20
20
  const credentialDefinition = credentialIds.map(c => selectCredentialDefinition(issuerConf, c));
21
21
  if (proof.proofType === "mrtd-pop") {
22
22
  /**
@@ -32,12 +32,14 @@ export const startUserAuthorization = async (issuerConf, credentialIds, proof, c
32
32
  challenge_redirect_uri: redirectUri
33
33
  });
34
34
  }
35
- const signerJwk = await wiaCryptoContext.getPublicKey();
36
- const signJwt = async (_, payload) => ({
37
- jwt: await new SignJWT(wiaCryptoContext).setPayload(payload).sign(),
38
- signerJwk
39
- });
35
+ const wiaSigner = {
36
+ method: "jwk",
37
+ alg: "ES256",
38
+ publicJwk: await wiaCryptoContext.getPublicKey()
39
+ };
40
+ const signJwt = createSignJwtFromCryptoContext(wiaCryptoContext);
40
41
  const parRequest = await createPushedAuthorizationRequest({
42
+ config: sdkConfigV1_3,
41
43
  callbacks: {
42
44
  ...partialCallbacks,
43
45
  signJwt
@@ -45,24 +47,26 @@ export const startUserAuthorization = async (issuerConf, credentialIds, proof, c
45
47
  authorizationServerMetadata: {
46
48
  require_signed_request_object: true
47
49
  },
50
+ jti: uuidv4(),
48
51
  clientId,
49
52
  audience: issuerConf.credential_issuer,
50
53
  authorization_details: credentialDefinition,
51
54
  codeChallengeMethodsSupported: ["S256"],
52
- responseMode,
53
- redirectUri
55
+ redirectUri,
56
+ dpop: {
57
+ signer: wiaSigner
58
+ }
54
59
  });
55
60
  const clientAttestationPoP = await createClientAttestationPopJwt({
61
+ config: sdkConfigV1_3,
56
62
  callbacks: {
63
+ generateRandom: partialCallbacks.generateRandom,
57
64
  signJwt
58
65
  },
59
66
  clientAttestation: walletInstanceAttestation,
60
67
  authorizationServer: issuerConf.authorization_endpoint,
61
- signer: {
62
- method: "jwk",
63
- alg: "ES256",
64
- publicJwk: signerJwk
65
- }
68
+ signer: wiaSigner,
69
+ jti: uuidv4()
66
70
  });
67
71
  const {
68
72
  request_uri
@@ -1 +1 @@
1
- {"version":3,"names":["createPushedAuthorizationRequest","fetchPushedAuthorizationResponse","createClientAttestationPopJwt","LogLevel","Logger","SignJWT","partialCallbacks","IoWalletError","selectCredentialDefinition","selectResponseMode","startUserAuthorization","issuerConf","credentialIds","proof","ctx","wiaCryptoContext","walletInstanceAttestation","redirectUri","appFetch","fetch","clientId","getPublicKey","then","_","kid","log","ERROR","responseMode","credentialDefinition","map","c","proofType","push","type","idphinting","idpHinting","challenge_method","challenge_redirect_uri","signerJwk","signJwt","payload","jwt","setPayload","sign","parRequest","callbacks","authorizationServerMetadata","require_signed_request_object","audience","credential_issuer","authorization_details","codeChallengeMethodsSupported","clientAttestationPoP","clientAttestation","authorizationServer","authorization_endpoint","signer","method","alg","publicJwk","request_uri","pushedAuthorizationRequestEndpoint","pushed_authorization_request_endpoint","pushedAuthorizationRequest","clientAttestationDPoP","walletAttestation","issuerRequestUri","codeVerifier","pkceCodeVerifier"],"sourceRoot":"../../../../../src","sources":["credential/issuance/v1.3.3/02-start-user-authorization.ts"],"mappings":"AAAA,SACEA,gCAAgC,EAChCC,gCAAgC,EAChCC,6BAA6B,QACxB,0BAA0B;AAEjC,SAASC,QAAQ,EAAEC,MAAM,QAAQ,wBAAwB;AAEzD,SAASC,OAAO,QAAQ,6BAA6B;AACrD,SAASC,gBAAgB,QAAQ,0BAA0B;AAC3D,SAASC,aAAa,QAAQ,uBAAuB;AACrD,SACEC,0BAA0B,EAC1BC,kBAAkB,QACb,yBAAyB;AAEhC,OAAO,MAAMC,sBAA6D,GACxE,MAAAA,CAAOC,UAAU,EAAEC,aAAa,EAAEC,KAAK,EAAEC,GAAG,KAAK;EAC/C,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;EAEzE,IAAI,CAACJ,QAAQ,EAAE;IACbhB,MAAM,CAACqB,GAAG,CACRtB,QAAQ,CAACuB,KAAK,EACb,kCAAiCN,QAAS,0BAC7C,CAAC;IACD,MAAM,IAAIb,aAAa,CAAC,qBAAqB,CAAC;EAChD;EAEA,MAAMoB,YAAY,GAAGlB,kBAAkB,CAACE,UAAU,EAAEC,aAAa,CAAC;EAElE,MAAMgB,oBAAoB,GAAGhB,aAAa,CAACiB,GAAG,CAAEC,CAAC,IAC/CtB,0BAA0B,CAACG,UAAU,EAAEmB,CAAC,CAC1C,CAAC;EAED,IAAIjB,KAAK,CAACkB,SAAS,KAAK,UAAU,EAAE;IAClC;AACN;AACA;AACA;AACA;AACA;IACMH,oBAAoB,CAACI,IAAI,CAAC;MACxBC,IAAI,EAAE,sBAAsB;MAC5BC,UAAU,EAAErB,KAAK,CAACsB,UAAU;MAC5BC,gBAAgB,EAAE,UAAU;MAC5BC,sBAAsB,EAAEpB;IAC1B,CAAC,CAAC;EACJ;EAEA,MAAMqB,SAAS,GAAG,MAAMvB,gBAAgB,CAACM,YAAY,CAAC,CAAC;EACvD,MAAMkB,OAAmC,GAAG,MAAAA,CAAOhB,CAAC,EAAEiB,OAAO,MAAM;IACjEC,GAAG,EAAE,MAAM,IAAIpC,OAAO,CAACU,gBAAgB,CAAC,CAAC2B,UAAU,CAACF,OAAO,CAAC,CAACG,IAAI,CAAC,CAAC;IACnEL;EACF,CAAC,CAAC;EAEF,MAAMM,UAAU,GAAG,MAAM5C,gCAAgC,CAAC;IACxD6C,SAAS,EAAE;MACT,GAAGvC,gBAAgB;MACnBiC;IACF,CAAC;IACDO,2BAA2B,EAAE;MAC3BC,6BAA6B,EAAE;IACjC,CAAC;IACD3B,QAAQ;IACR4B,QAAQ,EAAErC,UAAU,CAACsC,iBAAiB;IACtCC,qBAAqB,EAAEtB,oBAAoB;IAC3CuB,6BAA6B,EAAE,CAAC,MAAM,CAAC;IACvCxB,YAAY;IACZV;EACF,CAAC,CAAC;EAEF,MAAMmC,oBAAoB,GAAG,MAAMlD,6BAA6B,CAAC;IAC/D2C,SAAS,EAAE;MACTN;IACF,CAAC;IACDc,iBAAiB,EAAErC,yBAAyB;IAC5CsC,mBAAmB,EAAE3C,UAAU,CAAC4C,sBAAsB;IACtDC,MAAM,EAAE;MACNC,MAAM,EAAE,KAAK;MACbC,GAAG,EAAE,OAAO;MACZC,SAAS,EAAErB;IACb;EACF,CAAC,CAAC;EAEF,MAAM;IAAEsB;EAAY,CAAC,GAAG,MAAM3D,gCAAgC,CAAC;IAC7D4C,SAAS,EAAE;MACT1B,KAAK,EAAED;IACT,CAAC;IACD2C,kCAAkC,EAChClD,UAAU,CAACmD,qCAAqC;IAClDC,0BAA0B,EAAEnB,UAAU;IACtCoB,qBAAqB,EAAEZ,oBAAoB;IAC3Ca,iBAAiB,EAAEjD;EACrB,CAAC,CAAC;EAEF,OAAO;IACLkD,gBAAgB,EAAEN,WAAW;IAC7BxC,QAAQ;IACR+C,YAAY,EAAEvB,UAAU,CAACwB,gBAAgB;IACzCxC;EACF,CAAC;AACH,CAAC"}
1
+ {"version":3,"names":["createPushedAuthorizationRequest","fetchPushedAuthorizationResponse","createClientAttestationPopJwt","v4","uuidv4","LogLevel","Logger","createSignJwtFromCryptoContext","partialCallbacks","IoWalletError","sdkConfigV1_3","selectCredentialDefinition","startUserAuthorization","issuerConf","credentialIds","proof","ctx","wiaCryptoContext","walletInstanceAttestation","redirectUri","appFetch","fetch","clientId","getPublicKey","then","_","kid","log","ERROR","credentialDefinition","map","c","proofType","push","type","idphinting","idpHinting","challenge_method","challenge_redirect_uri","wiaSigner","method","alg","publicJwk","signJwt","parRequest","config","callbacks","authorizationServerMetadata","require_signed_request_object","jti","audience","credential_issuer","authorization_details","codeChallengeMethodsSupported","dpop","signer","clientAttestationPoP","generateRandom","clientAttestation","authorizationServer","authorization_endpoint","request_uri","pushedAuthorizationRequestEndpoint","pushed_authorization_request_endpoint","pushedAuthorizationRequest","clientAttestationDPoP","walletAttestation","issuerRequestUri","codeVerifier","pkceCodeVerifier"],"sourceRoot":"../../../../../src","sources":["credential/issuance/v1.3.3/02-start-user-authorization.ts"],"mappings":"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"}
@@ -1,10 +1,8 @@
1
- import { SignJWT } from "@pagopa/io-react-native-jwt";
2
- import { createTokenDPoP, fetchTokenResponse } from "@pagopa/io-wallet-oauth2";
1
+ import { createClientAttestationPopJwt, createTokenDPoP, fetchTokenResponse } from "@pagopa/io-wallet-oauth2";
3
2
  import { v4 as uuidv4 } from "uuid";
4
- import { createPopToken } from "../../../utils/pop";
5
- import * as WalletInstanceAttestation from "../../../wallet-instance-attestation/v1.0.0/utils";
6
- import { partialCallbacks } from "../../../utils/callbacks";
3
+ import { createSignJwtFromCryptoContext, partialCallbacks } from "../../../utils/callbacks";
7
4
  import { IoWalletError } from "../../../utils/errors";
5
+ import { sdkConfigV1_3 } from "../../../utils/config";
8
6
  export const authorizeAccess = async (issuerConf, code, redirectUri, codeVerifier, context) => {
9
7
  const {
10
8
  appFetch = fetch,
@@ -12,31 +10,36 @@ export const authorizeAccess = async (issuerConf, code, redirectUri, codeVerifie
12
10
  wiaCryptoContext,
13
11
  dPopCryptoContext
14
12
  } = context;
15
- const dPopSignerJwk = await dPopCryptoContext.getPublicKey();
16
13
  const tokenDPoP = await createTokenDPoP({
17
14
  callbacks: {
18
15
  ...partialCallbacks,
19
- signJwt: async (_, payload) => ({
20
- jwt: await new SignJWT(wiaCryptoContext).setPayload(payload).sign(),
21
- signerJwk: dPopSignerJwk
22
- })
16
+ signJwt: createSignJwtFromCryptoContext(dPopCryptoContext)
23
17
  },
24
18
  signer: {
25
- alg: "ES256",
26
19
  method: "jwk",
27
- publicJwk: dPopSignerJwk
20
+ alg: "ES256",
21
+ publicJwk: await dPopCryptoContext.getPublicKey()
28
22
  },
23
+ jti: uuidv4(),
29
24
  tokenRequest: {
30
25
  method: "POST",
31
26
  url: issuerConf.token_endpoint
32
27
  }
33
28
  });
34
- const iss = WalletInstanceAttestation.decode(walletInstanceAttestation).payload.cnf.jwk.kid;
35
- const signedWiaPoP = await createPopToken({
36
- jti: uuidv4(),
37
- aud: issuerConf.credential_issuer,
38
- iss
39
- }, wiaCryptoContext);
29
+ const clientAttestationDPoP = await createClientAttestationPopJwt({
30
+ config: sdkConfigV1_3,
31
+ callbacks: {
32
+ generateRandom: partialCallbacks.generateRandom,
33
+ signJwt: createSignJwtFromCryptoContext(wiaCryptoContext)
34
+ },
35
+ clientAttestation: walletInstanceAttestation,
36
+ authorizationServer: issuerConf.credential_issuer,
37
+ signer: {
38
+ method: "jwk",
39
+ alg: "ES256",
40
+ publicJwk: await wiaCryptoContext.getPublicKey()
41
+ }
42
+ });
40
43
  const tokenResponse = await fetchTokenResponse({
41
44
  accessTokenEndpoint: issuerConf.token_endpoint,
42
45
  callbacks: {
@@ -45,7 +48,7 @@ export const authorizeAccess = async (issuerConf, code, redirectUri, codeVerifie
45
48
  },
46
49
  walletAttestation: walletInstanceAttestation,
47
50
  dPoP: tokenDPoP.jwt,
48
- clientAttestationDPoP: signedWiaPoP,
51
+ clientAttestationDPoP,
49
52
  accessTokenRequest: {
50
53
  code,
51
54
  grant_type: "authorization_code",
@@ -1 +1 @@
1
- {"version":3,"names":["SignJWT","createTokenDPoP","fetchTokenResponse","v4","uuidv4","createPopToken","WalletInstanceAttestation","partialCallbacks","IoWalletError","authorizeAccess","issuerConf","code","redirectUri","codeVerifier","context","appFetch","fetch","walletInstanceAttestation","wiaCryptoContext","dPopCryptoContext","dPopSignerJwk","getPublicKey","tokenDPoP","callbacks","signJwt","_","payload","jwt","setPayload","sign","signerJwk","signer","alg","method","publicJwk","tokenRequest","url","token_endpoint","iss","decode","cnf","jwk","kid","signedWiaPoP","jti","aud","credential_issuer","tokenResponse","accessTokenEndpoint","walletAttestation","dPoP","clientAttestationDPoP","accessTokenRequest","grant_type","code_verifier","redirect_uri","authorization_details","accessToken"],"sourceRoot":"../../../../../src","sources":["credential/issuance/v1.3.3/04-authorize-access.ts"],"mappings":"AAAA,SAASA,OAAO,QAAQ,6BAA6B;AACrD,SAASC,eAAe,EAAEC,kBAAkB,QAAQ,0BAA0B;AAC9E,SAASC,EAAE,IAAIC,MAAM,QAAQ,MAAM;AACnC,SAASC,cAAc,QAAQ,oBAAoB;AACnD,OAAO,KAAKC,yBAAyB,MAAM,mDAAmD;AAC9F,SAASC,gBAAgB,QAAQ,0BAA0B;AAC3D,SAASC,aAAa,QAAQ,uBAAuB;AAGrD,OAAO,MAAMC,eAA+C,GAAG,MAAAA,CAC7DC,UAAU,EACVC,IAAI,EACJC,WAAW,EACXC,YAAY,EACZC,OAAO,KACJ;EACH,MAAM;IACJC,QAAQ,GAAGC,KAAK;IAChBC,yBAAyB;IACzBC,gBAAgB;IAChBC;EACF,CAAC,GAAGL,OAAO;EAEX,MAAMM,aAAa,GAAG,MAAMD,iBAAiB,CAACE,YAAY,CAAC,CAAC;EAC5D,MAAMC,SAAS,GAAG,MAAMrB,eAAe,CAAC;IACtCsB,SAAS,EAAE;MACT,GAAGhB,gBAAgB;MACnBiB,OAAO,EAAE,MAAAA,CAAOC,CAAC,EAAEC,OAAO,MAAM;QAC9BC,GAAG,EAAE,MAAM,IAAI3B,OAAO,CAACkB,gBAAgB,CAAC,CAACU,UAAU,CAACF,OAAO,CAAC,CAACG,IAAI,CAAC,CAAC;QACnEC,SAAS,EAAEV;MACb,CAAC;IACH,CAAC;IACDW,MAAM,EAAE;MACNC,GAAG,EAAE,OAAO;MACZC,MAAM,EAAE,KAAK;MACbC,SAAS,EAAEd;IACb,CAAC;IACDe,YAAY,EAAE;MACZF,MAAM,EAAE,MAAM;MACdG,GAAG,EAAE1B,UAAU,CAAC2B;IAClB;EACF,CAAC,CAAC;EAEF,MAAMC,GAAG,GAAGhC,yBAAyB,CAACiC,MAAM,CAACtB,yBAAyB,CAAC,CACpES,OAAO,CAACc,GAAG,CAACC,GAAG,CAACC,GAAG;EAEtB,MAAMC,YAAY,GAAG,MAAMtC,cAAc,CACvC;IACEuC,GAAG,EAAExC,MAAM,CAAC,CAAC;IACbyC,GAAG,EAAEnC,UAAU,CAACoC,iBAAiB;IACjCR;EACF,CAAC,EACDpB,gBACF,CAAC;EAED,MAAM6B,aAAa,GAAG,MAAM7C,kBAAkB,CAAC;IAC7C8C,mBAAmB,EAAEtC,UAAU,CAAC2B,cAAc;IAC9Cd,SAAS,EAAE;MACT,GAAGhB,gBAAgB;MACnBS,KAAK,EAAED;IACT,CAAC;IACDkC,iBAAiB,EAAEhC,yBAAyB;IAC5CiC,IAAI,EAAE5B,SAAS,CAACK,GAAG;IACnBwB,qBAAqB,EAAER,YAAY;IACnCS,kBAAkB,EAAE;MAClBzC,IAAI;MACJ0C,UAAU,EAAE,oBAAoB;MAChCC,aAAa,EAAEzC,YAAY;MAC3B0C,YAAY,EAAE3C;IAChB;EACF,CAAC,CAAC;;EAEF;EACA;EACA,IAAI,CAACmC,aAAa,CAACS,qBAAqB,EAAE;IACxC,MAAM,IAAIhD,aAAa,CACrB,6DACF,CAAC;EACH;EAEA,OAAO;IACLiD,WAAW,EAAEV;EACf,CAAC;AACH,CAAC"}
1
+ {"version":3,"names":["createClientAttestationPopJwt","createTokenDPoP","fetchTokenResponse","v4","uuidv4","createSignJwtFromCryptoContext","partialCallbacks","IoWalletError","sdkConfigV1_3","authorizeAccess","issuerConf","code","redirectUri","codeVerifier","context","appFetch","fetch","walletInstanceAttestation","wiaCryptoContext","dPopCryptoContext","tokenDPoP","callbacks","signJwt","signer","method","alg","publicJwk","getPublicKey","jti","tokenRequest","url","token_endpoint","clientAttestationDPoP","config","generateRandom","clientAttestation","authorizationServer","credential_issuer","tokenResponse","accessTokenEndpoint","walletAttestation","dPoP","jwt","accessTokenRequest","grant_type","code_verifier","redirect_uri","authorization_details","accessToken"],"sourceRoot":"../../../../../src","sources":["credential/issuance/v1.3.3/04-authorize-access.ts"],"mappings":"AAAA,SACEA,6BAA6B,EAC7BC,eAAe,EACfC,kBAAkB,QACb,0BAA0B;AACjC,SAASC,EAAE,IAAIC,MAAM,QAAQ,MAAM;AACnC,SACEC,8BAA8B,EAC9BC,gBAAgB,QACX,0BAA0B;AACjC,SAASC,aAAa,QAAQ,uBAAuB;AACrD,SAASC,aAAa,QAAQ,uBAAuB;AAGrD,OAAO,MAAMC,eAA+C,GAAG,MAAAA,CAC7DC,UAAU,EACVC,IAAI,EACJC,WAAW,EACXC,YAAY,EACZC,OAAO,KACJ;EACH,MAAM;IACJC,QAAQ,GAAGC,KAAK;IAChBC,yBAAyB;IACzBC,gBAAgB;IAChBC;EACF,CAAC,GAAGL,OAAO;EAEX,MAAMM,SAAS,GAAG,MAAMnB,eAAe,CAAC;IACtCoB,SAAS,EAAE;MACT,GAAGf,gBAAgB;MACnBgB,OAAO,EAAEjB,8BAA8B,CAACc,iBAAiB;IAC3D,CAAC;IACDI,MAAM,EAAE;MACNC,MAAM,EAAE,KAAK;MACbC,GAAG,EAAE,OAAO;MACZC,SAAS,EAAE,MAAMP,iBAAiB,CAACQ,YAAY,CAAC;IAClD,CAAC;IACDC,GAAG,EAAExB,MAAM,CAAC,CAAC;IACbyB,YAAY,EAAE;MACZL,MAAM,EAAE,MAAM;MACdM,GAAG,EAAEpB,UAAU,CAACqB;IAClB;EACF,CAAC,CAAC;EAEF,MAAMC,qBAAqB,GAAG,MAAMhC,6BAA6B,CAAC;IAChEiC,MAAM,EAAEzB,aAAa;IACrBa,SAAS,EAAE;MACTa,cAAc,EAAE5B,gBAAgB,CAAC4B,cAAc;MAC/CZ,OAAO,EAAEjB,8BAA8B,CAACa,gBAAgB;IAC1D,CAAC;IACDiB,iBAAiB,EAAElB,yBAAyB;IAC5CmB,mBAAmB,EAAE1B,UAAU,CAAC2B,iBAAiB;IACjDd,MAAM,EAAE;MACNC,MAAM,EAAE,KAAK;MACbC,GAAG,EAAE,OAAO;MACZC,SAAS,EAAE,MAAMR,gBAAgB,CAACS,YAAY,CAAC;IACjD;EACF,CAAC,CAAC;EAEF,MAAMW,aAAa,GAAG,MAAMpC,kBAAkB,CAAC;IAC7CqC,mBAAmB,EAAE7B,UAAU,CAACqB,cAAc;IAC9CV,SAAS,EAAE;MACT,GAAGf,gBAAgB;MACnBU,KAAK,EAAED;IACT,CAAC;IACDyB,iBAAiB,EAAEvB,yBAAyB;IAC5CwB,IAAI,EAAErB,SAAS,CAACsB,GAAG;IACnBV,qBAAqB;IACrBW,kBAAkB,EAAE;MAClBhC,IAAI;MACJiC,UAAU,EAAE,oBAAoB;MAChCC,aAAa,EAAEhC,YAAY;MAC3BiC,YAAY,EAAElC;IAChB;EACF,CAAC,CAAC;;EAEF;EACA;EACA,IAAI,CAAC0B,aAAa,CAACS,qBAAqB,EAAE;IACxC,MAAM,IAAIxC,aAAa,CACrB,6DACF,CAAC;EACH;EAEA,OAAO;IACLyC,WAAW,EAAEV;EACf,CAAC;AACH,CAAC"}