@pagopa/io-react-native-wallet 3.8.2 → 3.8.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/commonjs/credential/issuance/common/06-verify-and-parse-credential.sdjwt.js +3 -3
- package/lib/commonjs/credential/issuance/common/06-verify-and-parse-credential.sdjwt.js.map +1 -1
- package/lib/commonjs/credential/presentation/common/utils/dcql.js +3 -3
- package/lib/commonjs/credential/presentation/common/utils/sd-jwt.js +3 -4
- package/lib/commonjs/credential/presentation/common/utils/sd-jwt.js.map +1 -1
- package/lib/commonjs/credential/status/v1.4.6/01-status-list.js +2 -2
- package/lib/commonjs/credential/status/v1.4.6/01-status-list.js.map +1 -1
- package/lib/commonjs/credential/status/v1.4.6/03-get-status.js +3 -2
- package/lib/commonjs/credential/status/v1.4.6/03-get-status.js.map +1 -1
- package/lib/commonjs/credentials-catalogue/api/DigitalCredentialsCatalogue.js +1 -0
- package/lib/commonjs/credentials-catalogue/api/DigitalCredentialsCatalogue.js.map +1 -1
- package/lib/commonjs/credentials-catalogue/v1.4.6/mappers.js +1 -0
- package/lib/commonjs/credentials-catalogue/v1.4.6/mappers.js.map +1 -1
- package/lib/commonjs/sd-jwt/index.js +4 -5
- package/lib/commonjs/sd-jwt/index.js.map +1 -1
- package/lib/commonjs/sd-jwt/utils.js +4 -4
- package/lib/commonjs/sd-jwt/utils.js.map +1 -1
- package/lib/commonjs/utils/callbacks.js +7 -6
- package/lib/commonjs/utils/callbacks.js.map +1 -1
- package/lib/commonjs/utils/credentials.js +3 -3
- package/lib/commonjs/utils/credentials.js.map +1 -1
- package/lib/module/credential/issuance/common/06-verify-and-parse-credential.sdjwt.js +3 -3
- package/lib/module/credential/issuance/common/06-verify-and-parse-credential.sdjwt.js.map +1 -1
- package/lib/module/credential/presentation/common/utils/dcql.js +3 -3
- package/lib/module/credential/presentation/common/utils/sd-jwt.js +4 -5
- package/lib/module/credential/presentation/common/utils/sd-jwt.js.map +1 -1
- package/lib/module/credential/status/v1.4.6/01-status-list.js +1 -1
- package/lib/module/credential/status/v1.4.6/01-status-list.js.map +1 -1
- package/lib/module/credential/status/v1.4.6/03-get-status.js +3 -2
- package/lib/module/credential/status/v1.4.6/03-get-status.js.map +1 -1
- package/lib/module/credentials-catalogue/api/DigitalCredentialsCatalogue.js +1 -0
- package/lib/module/credentials-catalogue/api/DigitalCredentialsCatalogue.js.map +1 -1
- package/lib/module/credentials-catalogue/v1.4.6/mappers.js +1 -0
- package/lib/module/credentials-catalogue/v1.4.6/mappers.js.map +1 -1
- package/lib/module/sd-jwt/index.js +4 -5
- package/lib/module/sd-jwt/index.js.map +1 -1
- package/lib/module/sd-jwt/utils.js +4 -4
- package/lib/module/sd-jwt/utils.js.map +1 -1
- package/lib/module/utils/callbacks.js +4 -3
- package/lib/module/utils/callbacks.js.map +1 -1
- package/lib/module/utils/credentials.js +3 -3
- package/lib/module/utils/credentials.js.map +1 -1
- package/lib/typescript/commonjs/credential/presentation/common/utils/dcql.d.ts +4 -28
- package/lib/typescript/commonjs/credential/presentation/common/utils/dcql.d.ts.map +1 -1
- package/lib/typescript/commonjs/credential/presentation/common/utils/sd-jwt.d.ts.map +1 -1
- package/lib/typescript/commonjs/credential/status/v1.4.6/03-get-status.d.ts.map +1 -1
- package/lib/typescript/commonjs/credentials-catalogue/api/DigitalCredentialsCatalogue.d.ts +3 -0
- package/lib/typescript/commonjs/credentials-catalogue/api/DigitalCredentialsCatalogue.d.ts.map +1 -1
- package/lib/typescript/commonjs/credentials-catalogue/v1.0.0/mappers.d.ts +1 -0
- package/lib/typescript/commonjs/credentials-catalogue/v1.0.0/mappers.d.ts.map +1 -1
- package/lib/typescript/commonjs/credentials-catalogue/v1.4.6/mappers.d.ts +1 -0
- package/lib/typescript/commonjs/credentials-catalogue/v1.4.6/mappers.d.ts.map +1 -1
- package/lib/typescript/commonjs/sd-jwt/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/utils/callbacks.d.ts.map +1 -1
- package/lib/typescript/module/credential/presentation/common/utils/dcql.d.ts +4 -28
- package/lib/typescript/module/credential/presentation/common/utils/dcql.d.ts.map +1 -1
- package/lib/typescript/module/credential/presentation/common/utils/sd-jwt.d.ts.map +1 -1
- package/lib/typescript/module/credential/status/v1.4.6/03-get-status.d.ts.map +1 -1
- package/lib/typescript/module/credentials-catalogue/api/DigitalCredentialsCatalogue.d.ts +3 -0
- package/lib/typescript/module/credentials-catalogue/api/DigitalCredentialsCatalogue.d.ts.map +1 -1
- package/lib/typescript/module/credentials-catalogue/v1.0.0/mappers.d.ts +1 -0
- package/lib/typescript/module/credentials-catalogue/v1.0.0/mappers.d.ts.map +1 -1
- package/lib/typescript/module/credentials-catalogue/v1.4.6/mappers.d.ts +1 -0
- package/lib/typescript/module/credentials-catalogue/v1.4.6/mappers.d.ts.map +1 -1
- package/lib/typescript/module/sd-jwt/index.d.ts.map +1 -1
- package/lib/typescript/module/utils/callbacks.d.ts.map +1 -1
- package/package.json +14 -17
- package/src/credential/issuance/common/06-verify-and-parse-credential.sdjwt.ts +4 -4
- package/src/credential/presentation/common/utils/dcql.ts +3 -3
- package/src/credential/presentation/common/utils/sd-jwt.ts +4 -5
- package/src/credential/status/v1.4.6/01-status-list.ts +3 -3
- package/src/credential/status/v1.4.6/03-get-status.ts +5 -3
- package/src/credentials-catalogue/api/DigitalCredentialsCatalogue.ts +1 -0
- package/src/credentials-catalogue/v1.4.6/mappers.ts +1 -0
- package/src/sd-jwt/index.ts +4 -5
- package/src/sd-jwt/utils.ts +4 -4
- package/src/utils/callbacks.ts +5 -4
- package/src/utils/credentials.ts +3 -3
|
@@ -19,17 +19,17 @@ export declare const extractFailedCredentialsDetails: (queryResult: DcqlQueryRes
|
|
|
19
19
|
*/
|
|
20
20
|
export declare const getClaimsFromDcqlMatch: (match: DcqlQueryResult.CredentialMatch) => EvaluatedDisclosure[];
|
|
21
21
|
/**
|
|
22
|
-
* Recursively convert a claim path to a {@link PresentationFrame} for `@sd-jwt/
|
|
22
|
+
* Recursively convert a claim path to a {@link PresentationFrame} for `@sd-jwt/core`
|
|
23
23
|
* @param path The claim path array
|
|
24
24
|
* @param claim The decoded claim
|
|
25
|
-
* @returns A presentation frame compatible with `@sd-jwt/
|
|
25
|
+
* @returns A presentation frame compatible with `@sd-jwt/core`
|
|
26
26
|
*/
|
|
27
27
|
export declare const pathToPresentationFrame: (path: (null | number | string)[], claim: Record<string, unknown>) => PresentationFrame;
|
|
28
28
|
/**
|
|
29
29
|
* Build a presentation frame from the `dcql` result to use for disclosing the requested claims.
|
|
30
30
|
* @param match The DCQL query match
|
|
31
31
|
* @param originalQuery The original DCQL query
|
|
32
|
-
* @returns A presentation frame compatible with `@sd-jwt/
|
|
32
|
+
* @returns A presentation frame compatible with `@sd-jwt/core`
|
|
33
33
|
*/
|
|
34
34
|
export declare const getPresentationFrameFromDcqlMatch: (match: DcqlQueryResult.CredentialMatch, originalQuery: DcqlQuery) => PresentationFrame;
|
|
35
35
|
/**
|
|
@@ -47,31 +47,7 @@ export declare const getValidDcqlClaims: (match: DcqlQueryResult.CredentialMatch
|
|
|
47
47
|
[x: string]: unknown;
|
|
48
48
|
};
|
|
49
49
|
} | {
|
|
50
|
-
[x: string]:
|
|
51
|
-
[key: string]: string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null;
|
|
52
|
-
} | (string | number | boolean | {
|
|
53
|
-
[key: string]: string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null;
|
|
54
|
-
} | (string | number | boolean | {
|
|
55
|
-
[key: string]: string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null;
|
|
56
|
-
} | (string | number | boolean | {
|
|
57
|
-
[key: string]: string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null;
|
|
58
|
-
} | (string | number | boolean | {
|
|
59
|
-
[key: string]: string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null;
|
|
60
|
-
} | (string | number | boolean | {
|
|
61
|
-
[key: string]: string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null;
|
|
62
|
-
} | (string | number | boolean | {
|
|
63
|
-
[key: string]: string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | null)[] | null)[] | null)[] | null)[] | null;
|
|
64
|
-
} | (string | number | boolean | {
|
|
65
|
-
[key: string]: string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | null)[] | null)[] | null)[] | null;
|
|
66
|
-
} | (string | number | boolean | {
|
|
67
|
-
[key: string]: string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | null)[] | null)[] | null;
|
|
68
|
-
} | (string | number | boolean | {
|
|
69
|
-
[key: string]: string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | null)[] | null;
|
|
70
|
-
} | (string | number | boolean | {
|
|
71
|
-
[key: string]: string | number | boolean | /*elided*/ any | (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | null;
|
|
72
|
-
} | (string | number | boolean | {
|
|
73
|
-
[key: string]: string | number | boolean | /*elided*/ any | /*elided*/ any | null;
|
|
74
|
-
} | /*elided*/ any | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null;
|
|
50
|
+
[x: string]: import("dcql").Json;
|
|
75
51
|
};
|
|
76
52
|
}[];
|
|
77
53
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dcql.d.ts","sourceRoot":"","sources":["../../../../../../../src/credential/presentation/common/utils/dcql.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,SAAS,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AAEnE,OAAO,KAAK,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,oBAAiB,CAAC;AAC9E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAW,CAAC;AAWhD,KAAK,gBAAgB,GAAG,OAAO,CAC7B,eAAe,CAAC,eAAe,EAC/B;IAAE,OAAO,EAAE,IAAI,CAAA;CAAE,CAClB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,mBAAmB,GAAI,QAAQ,eAAe,KAGpD,CAAC,MAAM,EAAE,gBAAgB,CAAC,EAAE,CAAC;AAUpC;;GAEG;AACH,eAAO,MAAM,+BAA+B,GAC1C,aAAa,eAAe,KAC3B,cAAc,EAwCb,CAAC;AAEL;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,GACjC,OAAO,eAAe,CAAC,eAAe,KACrC,mBAAmB,EAGnB,CAAC;AAEJ;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,GAClC,MAAM,CAAC,IAAI,GAAG,MAAM,GAAG,MAAM,CAAC,EAAE,EAChC,OAAO,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC7B,iBAyBF,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,iCAAiC,GAC5C,OAAO,eAAe,CAAC,eAAe,EACtC,eAAe,SAAS,KACvB,iBAyBF,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,GAAI,OAAO,eAAe,CAAC,eAAe
|
|
1
|
+
{"version":3,"file":"dcql.d.ts","sourceRoot":"","sources":["../../../../../../../src/credential/presentation/common/utils/dcql.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,SAAS,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AAEnE,OAAO,KAAK,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,oBAAiB,CAAC;AAC9E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAW,CAAC;AAWhD,KAAK,gBAAgB,GAAG,OAAO,CAC7B,eAAe,CAAC,eAAe,EAC/B;IAAE,OAAO,EAAE,IAAI,CAAA;CAAE,CAClB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,mBAAmB,GAAI,QAAQ,eAAe,KAGpD,CAAC,MAAM,EAAE,gBAAgB,CAAC,EAAE,CAAC;AAUpC;;GAEG;AACH,eAAO,MAAM,+BAA+B,GAC1C,aAAa,eAAe,KAC3B,cAAc,EAwCb,CAAC;AAEL;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,GACjC,OAAO,eAAe,CAAC,eAAe,KACrC,mBAAmB,EAGnB,CAAC;AAEJ;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,GAClC,MAAM,CAAC,IAAI,GAAG,MAAM,GAAG,MAAM,CAAC,EAAE,EAChC,OAAO,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC7B,iBAyBF,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,iCAAiC,GAC5C,OAAO,eAAe,CAAC,eAAe,EACtC,eAAe,SAAS,KACvB,iBAyBF,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,GAAI,OAAO,eAAe,CAAC,eAAe;;;;;;;;;;;GAmBxE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sd-jwt.d.ts","sourceRoot":"","sources":["../../../../../../../src/credential/presentation/common/utils/sd-jwt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"sd-jwt.d.ts","sourceRoot":"","sources":["../../../../../../../src/credential/presentation/common/utils/sd-jwt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,MAAM,CAAC;AAKlD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAW,CAAC;AAMjD,KAAK,2BAA2B,GAAG,qBAAqB,GAAG;IACzD,mBAAmB,EAAE,eAAe,CAAC;CACtC,CAAC;AA4BF;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,GAC9B,aAAa,eAAe,EAAE,KAC7B,OAAO,CAAC,2BAA2B,EAAE,CAuBvC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"03-get-status.d.ts","sourceRoot":"","sources":["../../../../../../src/credential/status/v1.4.6/03-get-status.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"03-get-status.d.ts","sourceRoot":"","sources":["../../../../../../src/credential/status/v1.4.6/03-get-status.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAoB,CAAC;AAqBxD,eAAO,MAAM,SAAS,EAAE,aAAa,CAAC,WAAW,CAmBhD,CAAC"}
|
|
@@ -17,6 +17,7 @@ export declare const AllowedState: z.ZodObject<{
|
|
|
17
17
|
}, z.core.$catchall<z.ZodString>>;
|
|
18
18
|
export type AllowedState = z.infer<typeof AllowedState>;
|
|
19
19
|
declare const AuthenticSource: z.ZodObject<{
|
|
20
|
+
background_color: z.ZodOptional<z.ZodString>;
|
|
20
21
|
contacts: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
21
22
|
type: z.ZodString;
|
|
22
23
|
value: z.ZodString;
|
|
@@ -61,6 +62,7 @@ export declare const DigitalCredential: z.ZodObject<{
|
|
|
61
62
|
title_l10n_id: z.ZodString;
|
|
62
63
|
}, z.core.$strip>>;
|
|
63
64
|
authentic_sources: z.ZodArray<z.ZodObject<{
|
|
65
|
+
background_color: z.ZodOptional<z.ZodString>;
|
|
64
66
|
contacts: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
65
67
|
type: z.ZodString;
|
|
66
68
|
value: z.ZodString;
|
|
@@ -201,6 +203,7 @@ export declare const DigitalCredentialsCatalogue: z.ZodObject<{
|
|
|
201
203
|
title_l10n_id: z.ZodString;
|
|
202
204
|
}, z.core.$strip>>;
|
|
203
205
|
authentic_sources: z.ZodArray<z.ZodObject<{
|
|
206
|
+
background_color: z.ZodOptional<z.ZodString>;
|
|
204
207
|
contacts: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
205
208
|
type: z.ZodString;
|
|
206
209
|
value: z.ZodString;
|
package/lib/typescript/module/credentials-catalogue/api/DigitalCredentialsCatalogue.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DigitalCredentialsCatalogue.d.ts","sourceRoot":"","sources":["../../../../../src/credentials-catalogue/api/DigitalCredentialsCatalogue.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAIzB,eAAO,MAAM,gBAAgB;;;;;iBAK3B,CAAC;AACH;;;GAGG;AACH,MAAM,MAAM,qBAAqB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AAE3E,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAOhE,eAAO,MAAM,YAAY;;;iCAKF,CAAC;AAExB,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAyBxD,QAAA,MAAM,eAAe
|
|
1
|
+
{"version":3,"file":"DigitalCredentialsCatalogue.d.ts","sourceRoot":"","sources":["../../../../../src/credentials-catalogue/api/DigitalCredentialsCatalogue.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAIzB,eAAO,MAAM,gBAAgB;;;;;iBAK3B,CAAC;AACH;;;GAGG;AACH,MAAM,MAAM,qBAAqB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AAE3E,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAOhE,eAAO,MAAM,YAAY;;;iCAKF,CAAC;AAExB,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAyBxD,QAAA,MAAM,eAAe;;;;;;;;;;;;;;;;;iBAgBnB,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAE9D,eAAO,MAAM,gBAAgB;;;;;;;;;;iBAO3B,CAAC;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAEhE,eAAO,MAAM,KAAK;;;;iBAIhB,CAAC;AAEH;;;GAGG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA+B5B,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAElE,QAAA,MAAM,eAAe;;;iBAGnB,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAE9D,QAAA,MAAM,aAAa;;;;iBAIjB,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAE1D,QAAA,MAAM,cAAc;;;;;;;;;iBAKlB,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAE5D,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;iBAOnB,CAAC;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,QAAQ,CAAC,CAAC;AAEhD,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAQtC,CAAC;AACH,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAC/C,OAAO,2BAA2B,CACnC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mappers.d.ts","sourceRoot":"","sources":["../../../../../src/credentials-catalogue/v1.0.0/mappers.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,yBAAyB
|
|
1
|
+
{"version":3,"file":"mappers.d.ts","sourceRoot":"","sources":["../../../../../src/credentials-catalogue/v1.0.0/mappers.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2BrC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mappers.d.ts","sourceRoot":"","sources":["../../../../../src/credentials-catalogue/v1.4.6/mappers.ts"],"names":[],"mappings":"AAgBA,eAAO,MAAM,yBAAyB
|
|
1
|
+
{"version":3,"file":"mappers.d.ts","sourceRoot":"","sources":["../../../../../src/credentials-catalogue/v1.4.6/mappers.ts"],"names":[],"mappings":"AAgBA,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkGrC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/sd-jwt/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/sd-jwt/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qCAA4B,CAAC;AAK/D,cAAc,YAAS,CAAC;AAExB;;;;;;;;GAQG;AACH,eAAO,MAAM,MAAM,GAAI,OAAO,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAYnC,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,cAAc,GACzB,OAAO,MAAM,EACb,WAAW,MAAM,EACjB,0DAA0D,YAAY,KACrE,OAAO,CAAC;IACT,QAAQ,EAAE,MAAM,CAAC;CAClB,CA2BA,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"callbacks.d.ts","sourceRoot":"","sources":["../../../../src/utils/callbacks.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"callbacks.d.ts","sourceRoot":"","sources":["../../../../src/utils/callbacks.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,aAAa,EAInB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,KAAK,eAAe,EAAkB,MAAM,0BAA0B,CAAC;AAGhF,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,UAAO,CAAC;AAajC,KAAK,sBAAsB,GAAG,IAAI,CAChC,eAAe,EACf,sBAAsB,GAAG,SAAS,CACnC,CAAC;AAyBF;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,EAAE,sBAoC9B,CAAC;AAIF;;;;;;;;GAQG;AACH,eAAO,MAAM,uBAAuB,GAClC,MAAM,GAAG,EAAE,KACV,eAAe,CAAC,WAAW,CAS3B,CAAC;AAEJ;;;;GAIG;AACH,eAAO,MAAM,8BAA8B,GACzC,eAAe,aAAa,KAC3B,eAAe,CAAC,SAAS,CAYzB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pagopa/io-react-native-wallet",
|
|
3
|
-
"version": "3.8.
|
|
3
|
+
"version": "3.8.3",
|
|
4
4
|
"description": "Provide data structures, helpers and API for IO Wallet",
|
|
5
5
|
"main": "./lib/commonjs/index.js",
|
|
6
6
|
"module": "./lib/module/index.js",
|
|
@@ -61,29 +61,26 @@
|
|
|
61
61
|
"react-native-quick-crypto": "*"
|
|
62
62
|
},
|
|
63
63
|
"dependencies": {
|
|
64
|
+
"@owf/crypto": "^0.4.2",
|
|
65
|
+
"@owf/token-status-list": "^0.4.2",
|
|
64
66
|
"@pagopa/io-wallet-oauth2": "1.5.8",
|
|
65
67
|
"@pagopa/io-wallet-oid-federation": "1.5.8",
|
|
66
68
|
"@pagopa/io-wallet-oid4vci": "1.5.8",
|
|
67
69
|
"@pagopa/io-wallet-oid4vp": "1.5.8",
|
|
68
70
|
"@pagopa/io-wallet-utils": "1.5.8",
|
|
69
|
-
"@sd-jwt/core": "^0.
|
|
70
|
-
"
|
|
71
|
-
"
|
|
72
|
-
"
|
|
73
|
-
"
|
|
74
|
-
"
|
|
75
|
-
"
|
|
76
|
-
"
|
|
77
|
-
"
|
|
78
|
-
"
|
|
79
|
-
"parse-url": "^10.0.3",
|
|
80
|
-
"react-native-url-polyfill": "^2.0.0",
|
|
81
|
-
"uuid": "^11.0.3",
|
|
82
|
-
"valibot": "1.2.0",
|
|
83
|
-
"zod": "^4.3.6"
|
|
71
|
+
"@sd-jwt/core": "^0.22.0",
|
|
72
|
+
"dcql": "^4.0.0",
|
|
73
|
+
"js-base64": "^3.9.4",
|
|
74
|
+
"js-sha256": "^1.0.0",
|
|
75
|
+
"jsrsasign": "^11.1.5",
|
|
76
|
+
"parse-url": "^11.1.0",
|
|
77
|
+
"react-native-url-polyfill": "^4.0.0",
|
|
78
|
+
"uuid": "^14.0.2",
|
|
79
|
+
"valibot": "1.5.0",
|
|
80
|
+
"zod": "4.3.6"
|
|
84
81
|
},
|
|
85
82
|
"devDependencies": {
|
|
86
|
-
"@pagopa/io-react-native-iso18013": "^0.
|
|
83
|
+
"@pagopa/io-react-native-iso18013": "^0.8.5",
|
|
87
84
|
"@types/jsrsasign": "^10.5.15",
|
|
88
85
|
"auto-changelog": "^2.6.0",
|
|
89
86
|
"react-native-builder-bob": "^0.43.0",
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import type { Verifier } from "@sd-jwt/
|
|
1
|
+
import type { Verifier } from "@sd-jwt/core";
|
|
2
2
|
|
|
3
|
+
import { hasher } from "@owf/crypto";
|
|
3
4
|
import {
|
|
4
5
|
type CryptoContext,
|
|
5
6
|
verify as verifyJwt,
|
|
6
7
|
} from "@pagopa/io-react-native-jwt";
|
|
7
8
|
import { type SDJwt, SDJwtInstance, type VerifierOptions } from "@sd-jwt/core";
|
|
8
|
-
import { digest } from "@sd-jwt/crypto-nodejs";
|
|
9
9
|
|
|
10
10
|
import type { SdJwt4VCBase } from "../../../sd-jwt/types";
|
|
11
11
|
import type { IssuanceApi, IssuerConfig, ParsedCredential } from "../api";
|
|
@@ -212,7 +212,7 @@ async function verifyCredentialSdJwt(
|
|
|
212
212
|
holderBindingContext: CryptoContext,
|
|
213
213
|
): Promise<SDJwt> {
|
|
214
214
|
const sdJwtInstance = new SDJwtInstance({
|
|
215
|
-
hasher
|
|
215
|
+
hasher,
|
|
216
216
|
verifier: sdJwtInstanceVerifier,
|
|
217
217
|
});
|
|
218
218
|
|
|
@@ -277,7 +277,7 @@ export const verifyAndParseCredentialSdJwt: IssuanceApi["verifyAndParseCredentia
|
|
|
277
277
|
throw new IoWalletError("Credential type not supported by the issuer");
|
|
278
278
|
}
|
|
279
279
|
|
|
280
|
-
const parsedCredentialRaw = (await decoded.getClaims(
|
|
280
|
+
const parsedCredentialRaw = (await decoded.getClaims(hasher)) as Record<
|
|
281
281
|
string,
|
|
282
282
|
unknown
|
|
283
283
|
>;
|
|
@@ -93,10 +93,10 @@ export const getClaimsFromDcqlMatch = (
|
|
|
93
93
|
);
|
|
94
94
|
|
|
95
95
|
/**
|
|
96
|
-
* Recursively convert a claim path to a {@link PresentationFrame} for `@sd-jwt/
|
|
96
|
+
* Recursively convert a claim path to a {@link PresentationFrame} for `@sd-jwt/core`
|
|
97
97
|
* @param path The claim path array
|
|
98
98
|
* @param claim The decoded claim
|
|
99
|
-
* @returns A presentation frame compatible with `@sd-jwt/
|
|
99
|
+
* @returns A presentation frame compatible with `@sd-jwt/core`
|
|
100
100
|
*/
|
|
101
101
|
export const pathToPresentationFrame = (
|
|
102
102
|
path: (null | number | string)[],
|
|
@@ -132,7 +132,7 @@ export const pathToPresentationFrame = (
|
|
|
132
132
|
* Build a presentation frame from the `dcql` result to use for disclosing the requested claims.
|
|
133
133
|
* @param match The DCQL query match
|
|
134
134
|
* @param originalQuery The original DCQL query
|
|
135
|
-
* @returns A presentation frame compatible with `@sd-jwt/
|
|
135
|
+
* @returns A presentation frame compatible with `@sd-jwt/core`
|
|
136
136
|
*/
|
|
137
137
|
export const getPresentationFrameFromDcqlMatch = (
|
|
138
138
|
match: DcqlQueryResult.CredentialMatch,
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import type { DcqlSdJwtVcCredential } from "dcql";
|
|
2
2
|
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import { getClaims } from "@sd-jwt/decode";
|
|
3
|
+
import { hasher } from "@owf/crypto";
|
|
4
|
+
import { getClaims, type SDJwt, SDJwtInstance } from "@sd-jwt/core";
|
|
6
5
|
|
|
7
6
|
import type { Credential4Dcql } from "../../api";
|
|
8
7
|
|
|
@@ -30,7 +29,7 @@ const getClaimsFromDecodedSdJwt = async (decodedRawSdJwt: SDJwt) => {
|
|
|
30
29
|
const claims = await getClaims<DcqlSdJwtVcCredential["claims"]>(
|
|
31
30
|
decodedRawSdJwt.jwt.payload,
|
|
32
31
|
decodedRawSdJwt.disclosures ?? [],
|
|
33
|
-
|
|
32
|
+
hasher,
|
|
34
33
|
);
|
|
35
34
|
|
|
36
35
|
return Object.fromEntries(
|
|
@@ -50,7 +49,7 @@ export const mapCredentialsToObj = async (
|
|
|
50
49
|
credentials: Credential4Dcql[],
|
|
51
50
|
): Promise<CustomDcqlSdJwtVcCredential[]> => {
|
|
52
51
|
const sdJwt = new SDJwtInstance({
|
|
53
|
-
hasher
|
|
52
|
+
hasher,
|
|
54
53
|
});
|
|
55
54
|
|
|
56
55
|
return Promise.all(
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { CBOR } from "@pagopa/io-react-native-iso18013";
|
|
2
|
-
import { decode as decodeJwt } from "@pagopa/io-react-native-jwt";
|
|
3
1
|
import {
|
|
4
2
|
getStatusListFromJWT,
|
|
5
3
|
type StatusListEntry,
|
|
6
|
-
} from "@
|
|
4
|
+
} from "@owf/token-status-list";
|
|
5
|
+
import { CBOR } from "@pagopa/io-react-native-iso18013";
|
|
6
|
+
import { decode as decodeJwt } from "@pagopa/io-react-native-jwt";
|
|
7
7
|
|
|
8
8
|
import type { StatusListApi } from "../api/status-list";
|
|
9
9
|
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { StatusList as JwtStatusList } from "@
|
|
1
|
+
import { StatusList as JwtStatusList } from "@owf/token-status-list";
|
|
2
|
+
import { toUint8Array } from "js-base64";
|
|
2
3
|
|
|
3
4
|
import type { StatusListApi } from "../api/status-list";
|
|
4
5
|
|
|
@@ -22,9 +23,10 @@ const formatStatusBit = (statusBit: number) =>
|
|
|
22
23
|
`0x${statusBit.toString(16).padStart(2, "0").toUpperCase()}`;
|
|
23
24
|
|
|
24
25
|
export const getStatus: StatusListApi["getStatus"] = (statusList, idx) => {
|
|
25
|
-
const decodedStatusList = JwtStatusList.
|
|
26
|
-
statusList.lst,
|
|
26
|
+
const decodedStatusList = JwtStatusList.decompressStatusListFromBytes(
|
|
27
|
+
toUint8Array(statusList.lst),
|
|
27
28
|
statusList.bits,
|
|
29
|
+
statusList.aggregation_uri,
|
|
28
30
|
);
|
|
29
31
|
const statusBit = decodedStatusList.getStatus(idx) as CredentialStatusBit;
|
|
30
32
|
const status = CredentialStatusMap[statusBit];
|
|
@@ -55,6 +55,7 @@ export const mapToCredentialsCatalogue = createMapper<
|
|
|
55
55
|
(dc) => dc.dataset_id === dataset_id,
|
|
56
56
|
);
|
|
57
57
|
return {
|
|
58
|
+
background_color: dataCapability?.background_color,
|
|
58
59
|
contacts: dataCapability?.contacts,
|
|
59
60
|
data_origin_l10n_id: dataCapability?.data_origin_l10n_id,
|
|
60
61
|
id,
|
package/src/sd-jwt/index.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
|
+
import { hasher } from "@owf/crypto";
|
|
1
2
|
import { sha256ToBase64, SignJWT } from "@pagopa/io-react-native-jwt";
|
|
2
|
-
import {
|
|
3
|
-
import { decodeSdJwtSync } from "@sd-jwt/decode";
|
|
4
|
-
import { present } from "@sd-jwt/present";
|
|
3
|
+
import { decodeSdJwtSync, present } from "@sd-jwt/core";
|
|
5
4
|
|
|
6
5
|
import type { Presentation } from "../credential/presentation";
|
|
7
6
|
|
|
@@ -20,7 +19,7 @@ export * from "./utils";
|
|
|
20
19
|
* @returns The parsed SD-JWT token and the parsed disclosures
|
|
21
20
|
*/
|
|
22
21
|
export const decode = (token: string) => {
|
|
23
|
-
const decoded = decodeSdJwtSync(fixLegacyCredentialSdJwt(token),
|
|
22
|
+
const decoded = decodeSdJwtSync(fixLegacyCredentialSdJwt(token), hasher);
|
|
24
23
|
|
|
25
24
|
const sdJwt = SdJwt4VCBase.parse({
|
|
26
25
|
header: decoded.jwt.header,
|
|
@@ -59,7 +58,7 @@ export const prepareVpToken = async (
|
|
|
59
58
|
const vp = await present(
|
|
60
59
|
fixLegacyCredentialSdJwt(verifiableCredential),
|
|
61
60
|
presentationFrame,
|
|
62
|
-
|
|
61
|
+
hasher,
|
|
63
62
|
);
|
|
64
63
|
|
|
65
64
|
// <Issuer-signed JWT>~<Disclosure 1>~<Disclosure N>~
|
package/src/sd-jwt/utils.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import { hasher } from "@owf/crypto";
|
|
1
2
|
import { sha256ToBase64 } from "@pagopa/io-react-native-jwt";
|
|
2
|
-
import {
|
|
3
|
-
import { decodeSdJwtSync, getClaimsSync } from "@sd-jwt/decode";
|
|
3
|
+
import { decodeSdJwtSync, getClaimsSync } from "@sd-jwt/core";
|
|
4
4
|
|
|
5
5
|
import { fixLegacyCredentialSdJwt } from "../utils/credentials";
|
|
6
6
|
import {
|
|
@@ -70,13 +70,13 @@ export const getVerification = (
|
|
|
70
70
|
): undefined | Verification => {
|
|
71
71
|
const decoded = decodeSdJwtSync(
|
|
72
72
|
fixLegacyCredentialSdJwt(credentialSdJwt),
|
|
73
|
-
|
|
73
|
+
hasher,
|
|
74
74
|
);
|
|
75
75
|
|
|
76
76
|
const claims = getClaimsSync<Record<string, unknown>>(
|
|
77
77
|
decoded.jwt.payload,
|
|
78
78
|
decoded.disclosures,
|
|
79
|
-
|
|
79
|
+
hasher,
|
|
80
80
|
);
|
|
81
81
|
|
|
82
82
|
return claims.verification
|
package/src/utils/callbacks.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { hasher } from "@owf/crypto";
|
|
1
2
|
import {
|
|
2
3
|
type CryptoContext,
|
|
3
4
|
EncryptJwe,
|
|
@@ -6,7 +7,6 @@ import {
|
|
|
6
7
|
} from "@pagopa/io-react-native-jwt";
|
|
7
8
|
import { verify } from "@pagopa/io-react-native-jwt";
|
|
8
9
|
import { type CallbackContext, type JwtSigner } from "@pagopa/io-wallet-oauth2";
|
|
9
|
-
import { digest } from "@sd-jwt/crypto-nodejs";
|
|
10
10
|
import { X509 } from "jsrsasign";
|
|
11
11
|
|
|
12
12
|
import type { JWK } from "./jwk";
|
|
@@ -15,8 +15,9 @@ import { getJwkFromCertificateChain, getJwkFromTrustChain } from "./crypto";
|
|
|
15
15
|
import { IoWalletError } from "./errors";
|
|
16
16
|
import { assert, generateRandomBytes } from "./misc";
|
|
17
17
|
|
|
18
|
-
// Fix incompatibility between ArrayBuffer types
|
|
19
|
-
|
|
18
|
+
// Fix incompatibility between ArrayBuffer types: the hasher accepts Uint8Array
|
|
19
|
+
// from the `hash` callback despite its narrower input types.
|
|
20
|
+
type HasherFixed = (
|
|
20
21
|
data: ArrayBuffer | ArrayBufferView | string,
|
|
21
22
|
algorithm?: string,
|
|
22
23
|
) => Uint8Array;
|
|
@@ -80,7 +81,7 @@ export const partialCallbacks: PartialCallbackContext = {
|
|
|
80
81
|
|
|
81
82
|
return { sanDnsNames, sanUriNames };
|
|
82
83
|
},
|
|
83
|
-
hash:
|
|
84
|
+
hash: hasher as HasherFixed,
|
|
84
85
|
verifyJwt: async (jwtSigner, jwt) => {
|
|
85
86
|
try {
|
|
86
87
|
const signerJwk = await getJwkFromSigner(jwtSigner);
|
package/src/utils/credentials.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import { hasher } from "@owf/crypto";
|
|
1
2
|
import { thumbprint } from "@pagopa/io-react-native-jwt";
|
|
2
|
-
import {
|
|
3
|
-
import { decodeSdJwtSync } from "@sd-jwt/decode";
|
|
3
|
+
import { decodeSdJwtSync } from "@sd-jwt/core";
|
|
4
4
|
|
|
5
5
|
import type { CredentialFormat } from "../credential/issuance";
|
|
6
6
|
import type { JWK } from "./jwk";
|
|
@@ -28,7 +28,7 @@ export const extractJwkFromCredential = async (
|
|
|
28
28
|
// 1. SD-JWT case
|
|
29
29
|
const decoded = decodeSdJwtSync(
|
|
30
30
|
fixLegacyCredentialSdJwt(credential),
|
|
31
|
-
|
|
31
|
+
hasher,
|
|
32
32
|
);
|
|
33
33
|
const { cnf } = decoded.jwt.payload as SdJwt4VCBase["payload"];
|
|
34
34
|
if (cnf.jwk) {
|