@sphereon/ssi-types 0.30.2-unstable.8 → 0.31.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 (53) hide show
  1. package/dist/events/index.d.ts +5 -2
  2. package/dist/events/index.d.ts.map +1 -1
  3. package/dist/events/index.js +4 -0
  4. package/dist/events/index.js.map +1 -1
  5. package/dist/logging/index.d.ts +1 -1
  6. package/dist/logging/index.d.ts.map +1 -1
  7. package/dist/logging/index.js +3 -2
  8. package/dist/logging/index.js.map +1 -1
  9. package/dist/mapper/credential-constraints.d.ts +16 -0
  10. package/dist/mapper/credential-constraints.d.ts.map +1 -0
  11. package/dist/mapper/credential-constraints.js +3 -0
  12. package/dist/mapper/credential-constraints.js.map +1 -0
  13. package/dist/mapper/credential-mapper.d.ts +3 -2
  14. package/dist/mapper/credential-mapper.d.ts.map +1 -1
  15. package/dist/mapper/credential-mapper.js +14 -10
  16. package/dist/mapper/credential-mapper.js.map +1 -1
  17. package/dist/mapper/jsonld-language-values.d.ts.map +1 -1
  18. package/dist/types/cose.d.ts +12 -0
  19. package/dist/types/cose.d.ts.map +1 -1
  20. package/dist/types/cose.js.map +1 -1
  21. package/dist/types/index.d.ts +2 -0
  22. package/dist/types/index.d.ts.map +1 -1
  23. package/dist/types/index.js +2 -0
  24. package/dist/types/index.js.map +1 -1
  25. package/dist/types/metadata-types.d.ts +5 -0
  26. package/dist/types/metadata-types.d.ts.map +1 -0
  27. package/dist/types/metadata-types.js +3 -0
  28. package/dist/types/metadata-types.js.map +1 -0
  29. package/dist/types/mso_mdoc.d.ts +16 -8
  30. package/dist/types/mso_mdoc.d.ts.map +1 -1
  31. package/dist/types/mso_mdoc.js +29 -11
  32. package/dist/types/mso_mdoc.js.map +1 -1
  33. package/dist/types/sd-jwt-type-metadata.d.ts +147 -0
  34. package/dist/types/sd-jwt-type-metadata.d.ts.map +1 -0
  35. package/dist/types/sd-jwt-type-metadata.js +84 -0
  36. package/dist/types/sd-jwt-type-metadata.js.map +1 -0
  37. package/dist/types/sd-jwt-vc.d.ts.map +1 -1
  38. package/dist/types/sd-jwt-vc.js +17 -12
  39. package/dist/types/sd-jwt-vc.js.map +1 -1
  40. package/dist/types/w3c-vc.js +5 -5
  41. package/dist/types/w3c-vc.js.map +1 -1
  42. package/package.json +7 -6
  43. package/src/events/index.ts +8 -4
  44. package/src/logging/index.ts +1 -0
  45. package/src/mapper/credential-constraints.ts +19 -0
  46. package/src/mapper/credential-mapper.ts +45 -40
  47. package/src/types/cose.ts +13 -0
  48. package/src/types/index.ts +2 -0
  49. package/src/types/metadata-types.ts +5 -0
  50. package/src/types/mso_mdoc.ts +41 -7
  51. package/src/types/sd-jwt-type-metadata.ts +220 -0
  52. package/src/types/sd-jwt-vc.ts +19 -17
  53. package/src/types/w3c-vc.ts +2 -2
@@ -4,7 +4,7 @@
4
4
  * but it would be nice if we can remove the imports and just have some interfaces here we can then use, like done
5
5
  * for sd-jwts
6
6
  */
7
- import { com } from '@sphereon/kmp-mdl-mdoc';
7
+ import { com } from '@sphereon/kmp-mdoc-core';
8
8
  import { OriginalType, WrappedVerifiableCredential, WrappedVerifiablePresentation } from './vc';
9
9
  import { IVerifiableCredential } from './w3c-vc';
10
10
  /**
@@ -15,6 +15,8 @@ export type MdocOid4vpMdocVpToken = string;
15
15
  export type MdocIssuerSigned = com.sphereon.mdoc.data.device.IssuerSignedCbor;
16
16
  export type MdocDocument = com.sphereon.mdoc.data.device.DocumentCbor;
17
17
  export type MdocDocumentJson = com.sphereon.mdoc.data.device.DocumentJson;
18
+ export type IssuerSignedJson = com.sphereon.mdoc.data.device.IssuerSignedJson;
19
+ export type DeviceSignedJson = com.sphereon.mdoc.data.device.DeviceSignedJson;
18
20
  export type MdocDeviceResponse = com.sphereon.mdoc.data.device.DeviceResponseCbor;
19
21
  export interface WrappedMdocCredential {
20
22
  /**
@@ -22,11 +24,10 @@ export interface WrappedMdocCredential {
22
24
  */
23
25
  original: MdocDocument | MdocOid4vpIssuerSigned;
24
26
  /**
25
- * Decoded version of the Mdoc payload. We add the record to make sure existing implementations remain happy
27
+ * Record where keys are the namespaces and the values are objects again with the namespace values
28
+ * @todo which types can be there? (it doesn't matter for matching as mdoc only matches on path)
26
29
  */
27
- decoded: MdocDocument & {
28
- [key: string]: any;
29
- };
30
+ decoded: MdocDecodedPayload;
30
31
  /**
31
32
  * Type of this credential.
32
33
  */
@@ -38,7 +39,7 @@ export interface WrappedMdocCredential {
38
39
  /**
39
40
  * Internal stable representation of a Credential
40
41
  */
41
- credential: IVerifiableCredential;
42
+ credential: MdocDocument;
42
43
  }
43
44
  export interface WrappedMdocPresentation {
44
45
  /**
@@ -62,18 +63,25 @@ export interface WrappedMdocPresentation {
62
63
  */
63
64
  presentation: MdocDeviceResponse;
64
65
  /**
65
- * Wrapped Mdocs belonging to the Presentation. .
66
+ * Wrapped Mdocs belonging to the Presentation. There can be multiple
67
+ * documents in a single device response
66
68
  */
67
- vcs: [WrappedMdocCredential];
69
+ vcs: WrappedMdocCredential[];
68
70
  }
69
71
  export declare function isWrappedMdocCredential(vc: WrappedVerifiableCredential): vc is WrappedMdocCredential;
70
72
  export declare function isWrappedMdocPresentation(vp: WrappedVerifiablePresentation): vp is WrappedMdocPresentation;
73
+ /**
74
+ * Record where keys are the namespaces and the values are objects again with the namespace values
75
+ */
76
+ export type MdocDecodedPayload = Record<string, Record<string, string | number | boolean>>;
77
+ export declare function getMdocDecodedPayload(mdoc: MdocDocument): MdocDecodedPayload;
71
78
  /**
72
79
  * Decode an Mdoc from its issuerSigned OID4VP Base64URL (string) to an object containing the disclosures,
73
80
  * signed payload, decoded payload
74
81
  *
75
82
  */
76
83
  export declare function decodeMdocIssuerSigned(oid4vpIssuerSigned: MdocOid4vpIssuerSigned): MdocDocument;
84
+ export declare function encodeMdocIssuerSigned(issuerSigned: MdocIssuerSigned, encoding?: 'base64url'): string;
77
85
  /**
78
86
  * Decode an Mdoc from its vp_token OID4VP Base64URL (string) to an object containing the disclosures,
79
87
  * signed payload, decoded payload
@@ -1 +1 @@
1
- {"version":3,"file":"mso_mdoc.d.ts","sourceRoot":"","sources":["../../src/types/mso_mdoc.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAA;AAE5C,OAAO,EAAE,YAAY,EAAE,2BAA2B,EAAE,6BAA6B,EAAE,MAAM,MAAM,CAAA;AAC/F,OAAO,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAA;AAShD;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAA;AAC3C,MAAM,MAAM,qBAAqB,GAAG,MAAM,CAAA;AAC1C,MAAM,MAAM,gBAAgB,GAAG,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAA;AAC7E,MAAM,MAAM,YAAY,GAAG,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAA;AACrE,MAAM,MAAM,gBAAgB,GAAG,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAA;AACzE,MAAM,MAAM,kBAAkB,GAAG,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAA;AAEjF,MAAM,WAAW,qBAAqB;IACpC;;OAEG;IACH,QAAQ,EAAE,YAAY,GAAG,sBAAsB,CAAA;IAC/C;;OAEG;IACH,OAAO,EAAE,YAAY,GAAG;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAA;IAC9C;;OAEG;IACH,IAAI,EAAE,YAAY,CAAC,gBAAgB,GAAG,YAAY,CAAC,gBAAgB,CAAA;IACnE;;OAEG;IACH,MAAM,EAAE,UAAU,CAAA;IAClB;;OAEG;IACH,UAAU,EAAE,qBAAqB,CAAA;CAClC;AAED,MAAM,WAAW,uBAAuB;IACtC;;OAEG;IACH,QAAQ,EAAE,kBAAkB,GAAG,qBAAqB,CAAA;IACpD;;OAEG;IACH,OAAO,EAAE,kBAAkB,CAAA;IAC3B;;OAEG;IACH,IAAI,EAAE,YAAY,CAAC,gBAAgB,GAAG,YAAY,CAAC,gBAAgB,CAAA;IACnE;;OAEG;IACH,MAAM,EAAE,UAAU,CAAA;IAClB;;OAEG;IACH,YAAY,EAAE,kBAAkB,CAAA;IAChC;;OAEG;IACH,GAAG,EAAE,CAAC,qBAAqB,CAAC,CAAA;CAC7B;AAED,wBAAgB,uBAAuB,CAAC,EAAE,EAAE,2BAA2B,GAAG,EAAE,IAAI,qBAAqB,CAEpG;AAED,wBAAgB,yBAAyB,CAAC,EAAE,EAAE,6BAA6B,GAAG,EAAE,IAAI,uBAAuB,CAE1G;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,kBAAkB,EAAE,sBAAsB,GAAG,YAAY,CAM/F;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,qBAAqB,GAAG,kBAAkB,CAG3F;AAGD,eAAO,MAAM,wCAAwC,YAC1C,YAAY,SAEd;IAAE,eAAe,CAAC,EAAE,MAAM,CAAA;CAAE,KAClC,qBA0DF,CAAA"}
1
+ {"version":3,"file":"mso_mdoc.d.ts","sourceRoot":"","sources":["../../src/types/mso_mdoc.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAA;AAE7C,OAAO,EAAE,YAAY,EAAE,2BAA2B,EAAE,6BAA6B,EAAE,MAAM,MAAM,CAAA;AAC/F,OAAO,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAA;AAShD;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAA;AAC3C,MAAM,MAAM,qBAAqB,GAAG,MAAM,CAAA;AAC1C,MAAM,MAAM,gBAAgB,GAAG,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAA;AAC7E,MAAM,MAAM,YAAY,GAAG,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAA;AACrE,MAAM,MAAM,gBAAgB,GAAG,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAA;AACzE,MAAM,MAAM,gBAAgB,GAAG,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAA;AAC7E,MAAM,MAAM,gBAAgB,GAAG,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAA;AAC7E,MAAM,MAAM,kBAAkB,GAAG,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAA;AAEjF,MAAM,WAAW,qBAAqB;IACpC;;OAEG;IACH,QAAQ,EAAE,YAAY,GAAG,sBAAsB,CAAA;IAC/C;;;OAGG;IACH,OAAO,EAAE,kBAAkB,CAAA;IAC3B;;OAEG;IACH,IAAI,EAAE,YAAY,CAAC,gBAAgB,GAAG,YAAY,CAAC,gBAAgB,CAAA;IACnE;;OAEG;IACH,MAAM,EAAE,UAAU,CAAA;IAClB;;OAEG;IACH,UAAU,EAAE,YAAY,CAAA;CACzB;AAED,MAAM,WAAW,uBAAuB;IACtC;;OAEG;IACH,QAAQ,EAAE,kBAAkB,GAAG,qBAAqB,CAAA;IACpD;;OAEG;IACH,OAAO,EAAE,kBAAkB,CAAA;IAC3B;;OAEG;IACH,IAAI,EAAE,YAAY,CAAC,gBAAgB,GAAG,YAAY,CAAC,gBAAgB,CAAA;IACnE;;OAEG;IACH,MAAM,EAAE,UAAU,CAAA;IAClB;;OAEG;IACH,YAAY,EAAE,kBAAkB,CAAA;IAChC;;;OAGG;IACH,GAAG,EAAE,qBAAqB,EAAE,CAAA;CAC7B;AAED,wBAAgB,uBAAuB,CAAC,EAAE,EAAE,2BAA2B,GAAG,EAAE,IAAI,qBAAqB,CAEpG;AAED,wBAAgB,yBAAyB,CAAC,EAAE,EAAE,6BAA6B,GAAG,EAAE,IAAI,uBAAuB,CAE1G;AACD;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,CAAA;AAC1F,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,YAAY,GAAG,kBAAkB,CAqB5E;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,kBAAkB,EAAE,sBAAsB,GAAG,YAAY,CAM/F;AAED,wBAAgB,sBAAsB,CAAC,YAAY,EAAE,gBAAgB,EAAE,QAAQ,GAAE,WAAyB,UAEzG;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,qBAAqB,GAAG,kBAAkB,CAG3F;AAGD,eAAO,MAAM,wCAAwC,YAC1C,YAAY,SAEd;IAAE,eAAe,CAAC,EAAE,MAAM,CAAA;CAAE,KAClC,qBA0DF,CAAA"}
@@ -6,22 +6,39 @@
6
6
  * for sd-jwts
7
7
  */
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.mdocDecodedCredentialToUniformCredential = exports.decodeMdocDeviceResponse = exports.decodeMdocIssuerSigned = exports.isWrappedMdocPresentation = exports.isWrappedMdocCredential = void 0;
10
- const kmp_mdl_mdoc_1 = require("@sphereon/kmp-mdl-mdoc");
9
+ exports.mdocDecodedCredentialToUniformCredential = void 0;
10
+ exports.isWrappedMdocCredential = isWrappedMdocCredential;
11
+ exports.isWrappedMdocPresentation = isWrappedMdocPresentation;
12
+ exports.getMdocDecodedPayload = getMdocDecodedPayload;
13
+ exports.decodeMdocIssuerSigned = decodeMdocIssuerSigned;
14
+ exports.encodeMdocIssuerSigned = encodeMdocIssuerSigned;
15
+ exports.decodeMdocDeviceResponse = decodeMdocDeviceResponse;
16
+ const kmp_mdoc_core_1 = require("@sphereon/kmp-mdoc-core");
11
17
  const did_1 = require("./did");
12
- var decodeFrom = kmp_mdl_mdoc_1.com.sphereon.kmp.decodeFrom;
13
- var encodeTo = kmp_mdl_mdoc_1.com.sphereon.kmp.encodeTo;
14
- var Encoding = kmp_mdl_mdoc_1.com.sphereon.kmp.Encoding;
15
- var DeviceResponseCbor = kmp_mdl_mdoc_1.com.sphereon.mdoc.data.device.DeviceResponseCbor;
16
- var IssuerSignedCbor = kmp_mdl_mdoc_1.com.sphereon.mdoc.data.device.IssuerSignedCbor;
18
+ var decodeFrom = kmp_mdoc_core_1.com.sphereon.kmp.decodeFrom;
19
+ var encodeTo = kmp_mdoc_core_1.com.sphereon.kmp.encodeTo;
20
+ var Encoding = kmp_mdoc_core_1.com.sphereon.kmp.Encoding;
21
+ var DeviceResponseCbor = kmp_mdoc_core_1.com.sphereon.mdoc.data.device.DeviceResponseCbor;
22
+ var IssuerSignedCbor = kmp_mdoc_core_1.com.sphereon.mdoc.data.device.IssuerSignedCbor;
17
23
  function isWrappedMdocCredential(vc) {
18
24
  return vc.format === 'mso_mdoc';
19
25
  }
20
- exports.isWrappedMdocCredential = isWrappedMdocCredential;
21
26
  function isWrappedMdocPresentation(vp) {
22
27
  return vp.format === 'mso_mdoc';
23
28
  }
24
- exports.isWrappedMdocPresentation = isWrappedMdocPresentation;
29
+ function getMdocDecodedPayload(mdoc) {
30
+ const mdocJson = mdoc.toJson();
31
+ if (!mdocJson.issuerSigned.nameSpaces) {
32
+ throw Error(`Cannot access Issuer Signed items from the Mdoc`);
33
+ }
34
+ const issuerSignedJson = mdocJson.issuerSigned.toJsonDTO();
35
+ const namespaces = issuerSignedJson.nameSpaces;
36
+ const decodedPayload = {};
37
+ for (const [namespace, items] of Object.entries(namespaces)) {
38
+ decodedPayload[namespace] = items.reduce((acc, item) => (Object.assign(Object.assign({}, acc), { [item.key]: item.value.value })), {});
39
+ }
40
+ return decodedPayload;
41
+ }
25
42
  /**
26
43
  * Decode an Mdoc from its issuerSigned OID4VP Base64URL (string) to an object containing the disclosures,
27
44
  * signed payload, decoded payload
@@ -34,7 +51,9 @@ function decodeMdocIssuerSigned(oid4vpIssuerSigned) {
34
51
  const holderMdoc = issuerSigned.toDocument();
35
52
  return holderMdoc;
36
53
  }
37
- exports.decodeMdocIssuerSigned = decodeMdocIssuerSigned;
54
+ function encodeMdocIssuerSigned(issuerSigned, encoding = 'base64url') {
55
+ return encodeTo(issuerSigned.cborEncode(), Encoding.BASE64URL);
56
+ }
38
57
  /**
39
58
  * Decode an Mdoc from its vp_token OID4VP Base64URL (string) to an object containing the disclosures,
40
59
  * signed payload, decoded payload
@@ -44,7 +63,6 @@ function decodeMdocDeviceResponse(vpToken) {
44
63
  const deviceResponse = DeviceResponseCbor.Static.cborDecode(decodeFrom(vpToken, Encoding.BASE64URL));
45
64
  return deviceResponse;
46
65
  }
47
- exports.decodeMdocDeviceResponse = decodeMdocDeviceResponse;
48
66
  // TODO naive implementation of mapping a mdoc onto a IVerifiableCredential. Needs some fixes and further implementation and needs to be moved out of ssi-types
49
67
  const mdocDecodedCredentialToUniformCredential = (decoded,
50
68
  // @ts-ignore
@@ -1 +1 @@
1
- {"version":3,"file":"mso_mdoc.js","sourceRoot":"","sources":["../../src/types/mso_mdoc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mso_mdoc.js","sourceRoot":"","sources":["../../src/types/mso_mdoc.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AA8EH,0DAEC;AAED,8DAEC;AAKD,sDAqBC;AAOD,wDAMC;AAED,wDAEC;AAOD,4DAGC;AAvID,2DAA6C;AAC7C,+BAAiD;AAGjD,IAAO,UAAU,GAAG,mBAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAA;AAC/C,IAAO,QAAQ,GAAG,mBAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAA;AAC3C,IAAO,QAAQ,GAAG,mBAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAA;AAC3C,IAAO,kBAAkB,GAAG,mBAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAA;AAE5E,IAAO,gBAAgB,GAAG,mBAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAA;AAmExE,SAAgB,uBAAuB,CAAC,EAA+B;IACrE,OAAO,EAAE,CAAC,MAAM,KAAK,UAAU,CAAA;AACjC,CAAC;AAED,SAAgB,yBAAyB,CAAC,EAAiC;IACzE,OAAO,EAAE,CAAC,MAAM,KAAK,UAAU,CAAA;AACjC,CAAC;AAKD,SAAgB,qBAAqB,CAAC,IAAkB;IACtD,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,EAAE,CAAA;IAC9B,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,UAAU,EAAE,CAAC;QACtC,MAAM,KAAK,CAAC,iDAAiD,CAAC,CAAA;IAChE,CAAC;IAED,MAAM,gBAAgB,GAAG,QAAQ,CAAC,YAAY,CAAC,SAAS,EAAoB,CAAA;IAC5E,MAAM,UAAU,GAAG,gBAAgB,CAAC,UAA+D,CAAA;IAEnG,MAAM,cAAc,GAAuB,EAAE,CAAA;IAC7C,KAAK,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5D,cAAc,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,MAAM,CACtC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,iCACV,GAAG,KACN,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,IAC5B,EACF,EAAE,CACH,CAAA;IACH,CAAC;IAED,OAAO,cAAc,CAAA;AACvB,CAAC;AAED;;;;GAIG;AACH,SAAgB,sBAAsB,CAAC,kBAA0C;IAC/E,kDAAkD;IAClD,MAAM,YAAY,GAAqB,gBAAgB,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,kBAAkB,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAA;IAC7H,wFAAwF;IACxF,MAAM,UAAU,GAAiB,YAAY,CAAC,UAAU,EAAE,CAAA;IAC1D,OAAO,UAAU,CAAA;AACnB,CAAC;AAED,SAAgB,sBAAsB,CAAC,YAA8B,EAAE,WAAwB,WAAW;IACxG,OAAO,QAAQ,CAAC,YAAY,CAAC,UAAU,EAAE,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAA;AAChE,CAAC;AAED;;;;GAIG;AACH,SAAgB,wBAAwB,CAAC,OAA8B;IACrE,MAAM,cAAc,GAAG,kBAAkB,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAA;IACpG,OAAO,cAAc,CAAA;AACvB,CAAC;AAED,+JAA+J;AACxJ,MAAM,wCAAwC,GAAG,CACtD,OAAqB;AACrB,aAAa;AACb,IAAmC,EACZ,EAAE;;IACzB,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,EAAE,CAAA;IAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,EAAgB,CAAA;IAC3C,MAAM,IAAI,GAAG,8BAA8B,CAAA;IAC3C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAA;IACpB,IAAI,CAAC,GAAG,IAAI,CAAC,CAAA,MAAA,IAAI,CAAC,YAAY,0CAAE,UAAU,CAAA,EAAE,CAAC;QAC3C,MAAM,KAAK,CAAC,2EAA2E,CAAC,CAAA;IAC1F,CAAC;IACD,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,UAA+D,CAAA;IACpG,IAAI,CAAC,CAAC,yBAAyB,IAAI,UAAU,CAAC,EAAE,CAAC;QAC/C,MAAM,KAAK,CAAC,+BAA+B,CAAC,CAAA;IAC9C,CAAC;IACD,MAAM,KAAK,GAAG,UAAU,CAAC,yBAAyB,CAAC,CAAA;IACnD,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,MAAM,KAAK,CAAC,mCAAmC,CAAC,CAAA;IAClD,CAAC;IAKD,MAAM,iBAAiB,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,GAA2B,EAAE,IAA0B,EAAE,EAAE;QACjG,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9B,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC/D,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAA;QAClC,CAAC;QACD,OAAO,GAAG,CAAA;IACZ,CAAC,EAAE,EAAE,CAAC,CAAA;IACN,MAAM,SAAS,GAAG,GAAG,CAAC,YAAY,CAAC,SAAS,CAAA;IAC5C,MAAM,UAAU,GAAG,GAAG,CAAC,YAAY,CAAC,UAAU,CAAA;IAC9C,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAA;IAC3B,MAAM,cAAc,GAAG,UAAU,CAAA;IACjC,IAAI,eAAe,GAAG,SAAS,CAAA;IAE/B,MAAM,YAAY,GAAG,eAAe,CAAA;IACpC,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,KAAK,CAAC,mDAAmD,CAAC,CAAA;IAClE,CAAC;IAED,MAAM,UAAU,GAA2D;QACzE,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE,gDAAgD;QACjE,UAAU,EAAE,EAAE,EAAE,uFAAuF;QACvG,iBAAiB,kBACf,IAAI,IACD,iBAAiB,CACrB;QACD,YAAY;QACZ,cAAc;QACd,KAAK,EAAE;YACL,IAAI,EAAE,gBAAU,CAAC,aAAa;YAC9B,OAAO,EAAE,YAAY;YACrB,YAAY,EAAE,mBAAa,CAAC,cAAc;YAC1C,kBAAkB,EAAE,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,OAAO;YACxD,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,QAAQ,CAAC,SAAS,CAAC;SAC7D;KACF,CAAA;IAED,OAAO,UAAmC,CAAA;AAC5C,CAAC,CAAA;AA9DY,QAAA,wCAAwC,4CA8DpD"}
@@ -0,0 +1,147 @@
1
+ import { AsyncHasher } from './sd-jwt-vc';
2
+ /**
3
+ * Represents the metadata associated with a specific SD-JWT VC type.
4
+ */
5
+ interface SdJwtTypeMetadata {
6
+ /**
7
+ * REQUIRED. The VC type URI.
8
+ */
9
+ vct: string;
10
+ /**
11
+ * OPTIONAL. A human-readable name for the type.
12
+ */
13
+ name?: string;
14
+ /**
15
+ * OPTIONAL. A human-readable description for the type.
16
+ */
17
+ description?: string;
18
+ /**
19
+ * OPTIONAL. A URI of another type that this type extends.
20
+ */
21
+ extends?: string;
22
+ /**
23
+ * OPTIONAL. Integrity metadata string for the 'extends' field.
24
+ */
25
+ ['extends#integrity']?: string;
26
+ /**
27
+ * OPTIONAL. URL pointing towards a JSON Schema document describing the VC's structure.
28
+ */
29
+ schema_uri?: string;
30
+ /**
31
+ * OPTIONAL. Integrity metadata string for the 'schema_uri' field.
32
+ */
33
+ ['schema_uri#integrity']?: string;
34
+ /**
35
+ * OPTIONAL. Display metadata for various languages.
36
+ */
37
+ display?: Array<SdJwtTypeDisplayMetadata>;
38
+ /**
39
+ * OPTIONAL. Metadata for the claims within the VC.
40
+ */
41
+ claims?: Array<any>;
42
+ }
43
+ /**
44
+ * Represents display metadata for a specific language.
45
+ */
46
+ interface SdJwtTypeDisplayMetadata {
47
+ /**
48
+ * REQUIRED. Language tag for the display information.
49
+ */
50
+ lang: string;
51
+ /**
52
+ * REQUIRED. Human-readable name for the type.
53
+ */
54
+ name: string;
55
+ /**
56
+ * OPTIONAL. Human-readable description for the type.
57
+ */
58
+ description?: string;
59
+ /**
60
+ * OPTIONAL. Rendering metadata for the type.
61
+ */
62
+ rendering?: SdJwtTypeRenderingMetadata;
63
+ }
64
+ /**
65
+ * Contains rendering metadata for different methods.
66
+ */
67
+ interface SdJwtTypeRenderingMetadata {
68
+ /**
69
+ * OPTIONAL. Simple rendering method metadata.
70
+ */
71
+ simple?: SdJwtSimpleRenderingMetadata;
72
+ /**
73
+ * OPTIONAL. Metadata for SVG templates.
74
+ */
75
+ svg_template?: Array<SdJwtSVGTemplateMetadata>;
76
+ }
77
+ /**
78
+ * Represents metadata for simple rendering.
79
+ */
80
+ interface SdJwtSimpleRenderingMetadata {
81
+ /**
82
+ * OPTIONAL. Metadata for the logo image.
83
+ */
84
+ logo?: SdJwtLogoMetadata;
85
+ /**
86
+ * OPTIONAL. Background color for the credential.
87
+ */
88
+ background_color?: string;
89
+ /**
90
+ * OPTIONAL. Text color for the credential.
91
+ */
92
+ text_color?: string;
93
+ }
94
+ /**
95
+ * Represents metadata for a logo.
96
+ */
97
+ interface SdJwtLogoMetadata {
98
+ /**
99
+ * REQUIRED. URI pointing to the logo image.
100
+ */
101
+ uri: string;
102
+ /**
103
+ * OPTIONAL. Integrity metadata string for the 'uri' field.
104
+ */
105
+ ['uri#integrity']?: string;
106
+ /**
107
+ * OPTIONAL. Alternative text for the logo image.
108
+ */
109
+ alt_text?: string;
110
+ }
111
+ /**
112
+ * Represents metadata for SVG templates.
113
+ */
114
+ interface SdJwtSVGTemplateMetadata {
115
+ /**
116
+ * REQUIRED. URI pointing to the SVG template.
117
+ */
118
+ uri: string;
119
+ /**
120
+ * OPTIONAL. Integrity metadata string for the 'uri' field.
121
+ */
122
+ ['uri#integrity']?: string;
123
+ /**
124
+ * OPTIONAL. Properties for the SVG template.
125
+ */
126
+ properties?: SdJwtSVGTemplateProperties;
127
+ }
128
+ /**
129
+ * Contains properties for SVG templates.
130
+ */
131
+ interface SdJwtSVGTemplateProperties {
132
+ /**
133
+ * OPTIONAL. The orientation for which the SVG template is optimized.
134
+ */
135
+ orientation?: string;
136
+ /**
137
+ * OPTIONAL. The color scheme for which the SVG template is optimized.
138
+ */
139
+ color_scheme?: string;
140
+ }
141
+ export type SdJwtTypeHasher = (input: any, alg?: string) => string;
142
+ export declare function fetchSdJwtTypeMetadataFromVctUrl(vct: string, opts?: {
143
+ hasher?: AsyncHasher;
144
+ integrity?: string;
145
+ }): Promise<SdJwtTypeMetadata>;
146
+ export {};
147
+ //# sourceMappingURL=sd-jwt-type-metadata.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sd-jwt-type-metadata.d.ts","sourceRoot":"","sources":["../../src/types/sd-jwt-type-metadata.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAEzC;;GAEG;AACH,UAAU,iBAAiB;IACzB;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,CAAC,mBAAmB,CAAC,CAAC,EAAE,MAAM,CAAC;IAE/B;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,CAAC,sBAAsB,CAAC,CAAC,EAAE,MAAM,CAAC;IAElC;;OAEG;IACH,OAAO,CAAC,EAAE,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAE1C;;OAEG;IAEH,MAAM,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;CACrB;AAED;;GAEG;AACH,UAAU,wBAAwB;IAChC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,SAAS,CAAC,EAAE,0BAA0B,CAAC;CACxC;AAED;;GAEG;AACH,UAAU,0BAA0B;IAClC;;OAEG;IACH,MAAM,CAAC,EAAE,4BAA4B,CAAC;IAEtC;;OAEG;IACH,YAAY,CAAC,EAAE,KAAK,CAAC,wBAAwB,CAAC,CAAC;CAChD;AAED;;GAEG;AACH,UAAU,4BAA4B;IACpC;;OAEG;IACH,IAAI,CAAC,EAAE,iBAAiB,CAAC;IAEzB;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,UAAU,iBAAiB;IACzB;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;OAEG;IACH,CAAC,eAAe,CAAC,CAAC,EAAE,MAAM,CAAC;IAE3B;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,UAAU,wBAAwB;IAChC;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;OAEG;IACH,CAAC,eAAe,CAAC,CAAC,EAAE,MAAM,CAAC;IAE3B;;OAEG;IACH,UAAU,CAAC,EAAE,0BAA0B,CAAC;CACzC;AAED;;GAEG;AACH,UAAU,0BAA0B;IAClC;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAYD,MAAM,MAAM,eAAe,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,MAAM,KAAK,MAAM,CAAA;AAQlE,wBAAsB,gCAAgC,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,WAAW,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAanJ"}
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
26
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
27
+ return new (P || (P = Promise))(function (resolve, reject) {
28
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
29
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
30
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
31
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
32
+ });
33
+ };
34
+ Object.defineProperty(exports, "__esModule", { value: true });
35
+ exports.fetchSdJwtTypeMetadataFromVctUrl = fetchSdJwtTypeMetadataFromVctUrl;
36
+ const u8a = __importStar(require("uint8arrays"));
37
+ // Helper function to fetch API with error handling
38
+ function fetchUrlWithErrorHandling(url) {
39
+ return __awaiter(this, void 0, void 0, function* () {
40
+ const response = yield fetch(url);
41
+ if (!response.ok) {
42
+ throw new Error(`${response.status}: ${response.statusText}`);
43
+ }
44
+ return response;
45
+ });
46
+ }
47
+ function validateIntegrity(input, integrityValue, hasher, alg) {
48
+ return __awaiter(this, void 0, void 0, function* () {
49
+ const hash = yield hasher(input, alg !== null && alg !== void 0 ? alg : 'sha256');
50
+ return u8a.toString(hash, 'utf-8') === integrityValue;
51
+ });
52
+ }
53
+ // Fetch and validate Type Metadata
54
+ function fetchSdJwtTypeMetadataFromVctUrl(vct, opts) {
55
+ return __awaiter(this, void 0, void 0, function* () {
56
+ const url = new URL(vct);
57
+ const wellKnownUrl = `${url.origin}/.well-known/vct${url.pathname}`;
58
+ const response = yield fetchUrlWithErrorHandling(wellKnownUrl);
59
+ const metadata = yield response.json();
60
+ assertValidTypeMetadata(metadata, vct);
61
+ if ((opts === null || opts === void 0 ? void 0 : opts.integrity) && opts.hasher) {
62
+ if (!(yield validateIntegrity(metadata, opts.integrity, opts.hasher))) {
63
+ throw new Error('Integrity check failed');
64
+ }
65
+ }
66
+ return metadata;
67
+ });
68
+ }
69
+ function assertValidTypeMetadata(metadata, vct) {
70
+ if (metadata.vct !== vct) {
71
+ throw new Error('VCT mismatch in metadata and credential');
72
+ }
73
+ }
74
+ /*
75
+ // Example usage
76
+ try {
77
+ const vct = 'https://betelgeuse.example.com/education_credential'
78
+ const typeMetadata = await fetchSdJwtTypeMetadataFromVctUrl(vct)
79
+ console.log('Type Metadata retrieved successfully:', typeMetadata)
80
+ } catch (error) {
81
+ console.error('Error fetching type metadata:', error.message)
82
+ }
83
+ */
84
+ //# sourceMappingURL=sd-jwt-type-metadata.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sd-jwt-type-metadata.js","sourceRoot":"","sources":["../../src/types/sd-jwt-type-metadata.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2LA,4EAaC;AAxMD,iDAAkC;AA0KlC,mDAAmD;AACnD,SAAe,yBAAyB,CAAC,GAAW;;QAClD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,CAAA;QACjC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,CAAC,MAAM,KAAK,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAA;QAC/D,CAAC;QACD,OAAO,QAAQ,CAAA;IACjB,CAAC;CAAA;AAID,SAAe,iBAAiB,CAAC,KAAU,EAAE,cAAsB,EAAE,MAAmB,EAAE,GAAY;;QACpG,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,KAAK,EAAE,GAAG,aAAH,GAAG,cAAH,GAAG,GAAI,QAAQ,CAAC,CAAA;QACjD,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,KAAK,cAAc,CAAA;IACvD,CAAC;CAAA;AAED,mCAAmC;AACnC,SAAsB,gCAAgC,CAAC,GAAW,EAAE,IAAmD;;QACrH,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAA;QACxB,MAAM,YAAY,GAAG,GAAG,GAAG,CAAC,MAAM,mBAAmB,GAAG,CAAC,QAAQ,EAAE,CAAA;QAEnE,MAAM,QAAQ,GAAG,MAAM,yBAAyB,CAAC,YAAY,CAAC,CAAA;QAC9D,MAAM,QAAQ,GAAsB,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;QACzD,uBAAuB,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;QACtC,IAAI,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,SAAS,KAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACnC,IAAI,CAAC,CAAA,MAAM,iBAAiB,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA,EAAE,CAAC;gBACpE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAA;YAC3C,CAAC;QACH,CAAC;QACD,OAAO,QAAQ,CAAA;IACjB,CAAC;CAAA;AAED,SAAS,uBAAuB,CAAC,QAA2B,EAAE,GAAW;IACvE,IAAI,QAAQ,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAA;IAC5D,CAAC;AACH,CAAC;AAGD;;;;;;;;;EASE"}
@@ -1 +1 @@
1
- {"version":3,"file":"sd-jwt-vc.d.ts","sourceRoot":"","sources":["../../src/types/sd-jwt-vc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sd-jwt-vc.d.ts","sourceRoot":"","sources":["../../src/types/sd-jwt-vc.ts"],"names":[],"mappings":"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"}
@@ -9,17 +9,19 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  });
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.sdJwtDecodedCredentialToUniformCredential = exports.decodeSdJwtVcAsync = exports.decodeSdJwtVc = exports.isWrappedSdJwtVerifiablePresentation = exports.isWrappedSdJwtVerifiableCredential = void 0;
12
+ exports.sdJwtDecodedCredentialToUniformCredential = void 0;
13
+ exports.isWrappedSdJwtVerifiableCredential = isWrappedSdJwtVerifiableCredential;
14
+ exports.isWrappedSdJwtVerifiablePresentation = isWrappedSdJwtVerifiablePresentation;
15
+ exports.decodeSdJwtVc = decodeSdJwtVc;
16
+ exports.decodeSdJwtVcAsync = decodeSdJwtVcAsync;
13
17
  const decode_1 = require("@sd-jwt/decode");
14
18
  const did_1 = require("./did");
15
19
  function isWrappedSdJwtVerifiableCredential(vc) {
16
20
  return vc.format === 'vc+sd-jwt';
17
21
  }
18
- exports.isWrappedSdJwtVerifiableCredential = isWrappedSdJwtVerifiableCredential;
19
22
  function isWrappedSdJwtVerifiablePresentation(vp) {
20
23
  return vp.format === 'vc+sd-jwt';
21
24
  }
22
- exports.isWrappedSdJwtVerifiablePresentation = isWrappedSdJwtVerifiablePresentation;
23
25
  /**
24
26
  * Decode an SD-JWT vc from its compact format (string) to an object containing the disclosures,
25
27
  * signed payload, decoded payload and the compact SD-JWT vc.
@@ -50,7 +52,6 @@ function decodeSdJwtVc(compactSdJwtVc, hasher) {
50
52
  },
51
53
  }));
52
54
  }
53
- exports.decodeSdJwtVc = decodeSdJwtVc;
54
55
  /**
55
56
  * Decode an SD-JWT vc from its compact format (string) to an object containing the disclosures,
56
57
  * signed payload, decoded payload and the compact SD-JWT vc.
@@ -83,17 +84,10 @@ function decodeSdJwtVcAsync(compactSdJwtVc, hasher) {
83
84
  }));
84
85
  });
85
86
  }
86
- exports.decodeSdJwtVcAsync = decodeSdJwtVcAsync;
87
- // TODO naive implementation of mapping a sd-jwt onto a IVerifiableCredential. Needs some fixes and further implementation and needs to be moved out of ssi-types
88
87
  const sdJwtDecodedCredentialToUniformCredential = (decoded, opts) => {
89
88
  var _a, _b, _c;
90
- const { decodedPayload } = decoded; // fixme: other params and proof
89
+ const { decodedPayload } = decoded;
91
90
  const { exp, nbf, iss, iat, vct, cnf, status, sub, jti } = decodedPayload;
92
- const credentialSubject = decoded.disclosures.reduce((acc, item) => {
93
- const key = item.decoded[1];
94
- acc[key] = item.decoded[2];
95
- return acc;
96
- }, {});
97
91
  const maxSkewInMS = (_a = opts === null || opts === void 0 ? void 0 : opts.maxTimeSkewInMS) !== null && _a !== void 0 ? _a : 1500;
98
92
  const expirationDate = jwtDateToISOString({ jwtClaim: exp, claimName: 'exp' });
99
93
  let issuanceDateStr = jwtDateToISOString({ jwtClaim: iat, claimName: 'iat' });
@@ -112,6 +106,17 @@ const sdJwtDecodedCredentialToUniformCredential = (decoded, opts) => {
112
106
  if (!issuanceDate) {
113
107
  throw Error(`JWT issuance date is required but was not present`);
114
108
  }
109
+ // Filter out the fields we don't want in credentialSubject
110
+ const excludedFields = new Set(['vct', 'cnf', 'iss', 'iat', 'exp', 'nbf', 'jti', 'sub']);
111
+ const credentialSubject = Object.entries(decodedPayload).reduce((acc, [key, value]) => {
112
+ if (!excludedFields.has(key) &&
113
+ value !== undefined &&
114
+ value !== '' &&
115
+ !(typeof value === 'object' && value !== null && Object.keys(value).length === 0)) {
116
+ acc[key] = value;
117
+ }
118
+ return acc;
119
+ }, {});
115
120
  const credential = Object.assign(Object.assign(Object.assign({ type: [vct], '@context': [], credentialSubject: Object.assign(Object.assign({}, credentialSubject), { id: (_c = (_b = credentialSubject.id) !== null && _b !== void 0 ? _b : sub) !== null && _c !== void 0 ? _c : jti }), issuanceDate,
116
121
  expirationDate, issuer: iss }, (cnf && { cnf })), (status && { status })), { proof: {
117
122
  type: did_1.IProofType.SdJwtProof2024,
@@ -1 +1 @@
1
- {"version":3,"file":"sd-jwt-vc.js","sourceRoot":"","sources":["../../src/types/sd-jwt-vc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sd-jwt-vc.js","sourceRoot":"","sources":["../../src/types/sd-jwt-vc.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isWrappedW3CVerifiablePresentation = exports.isWrappedW3CVerifiableCredential = exports.StatusListDriverType = exports.StatusListCredentialIdMode = exports.StatusListType = exports.JWT_PROOF_TYPE_2020 = void 0;
3
+ exports.StatusListDriverType = exports.StatusListCredentialIdMode = exports.StatusListType = exports.JWT_PROOF_TYPE_2020 = void 0;
4
+ exports.isWrappedW3CVerifiableCredential = isWrappedW3CVerifiableCredential;
5
+ exports.isWrappedW3CVerifiablePresentation = isWrappedW3CVerifiablePresentation;
4
6
  exports.JWT_PROOF_TYPE_2020 = 'JwtProof2020';
5
7
  var StatusListType;
6
8
  (function (StatusListType) {
@@ -16,15 +18,13 @@ var StatusListDriverType;
16
18
  (function (StatusListDriverType) {
17
19
  StatusListDriverType["AGENT_TYPEORM"] = "agent_typeorm";
18
20
  /* AGENT_KV_STORE = 'agent_kv_store',
19
- GITHUB = 'github',
20
- AGENT_FILESYSTEM = 'agent_filesystem',*/
21
+ GITHUB = 'github',
22
+ AGENT_FILESYSTEM = 'agent_filesystem',*/
21
23
  })(StatusListDriverType || (exports.StatusListDriverType = StatusListDriverType = {}));
22
24
  function isWrappedW3CVerifiableCredential(vc) {
23
25
  return vc.format === 'jwt_vc' || vc.format === 'ldp_vc';
24
26
  }
25
- exports.isWrappedW3CVerifiableCredential = isWrappedW3CVerifiableCredential;
26
27
  function isWrappedW3CVerifiablePresentation(vp) {
27
28
  return vp.format === 'jwt_vp' || vp.format === 'ldp_vp';
28
29
  }
29
- exports.isWrappedW3CVerifiablePresentation = isWrappedW3CVerifiablePresentation;
30
30
  //# sourceMappingURL=w3c-vc.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"w3c-vc.js","sourceRoot":"","sources":["../../src/types/w3c-vc.ts"],"names":[],"mappings":";;;AAqMa,QAAA,mBAAmB,GAAG,cAAc,CAAA;AAiFjD,IAAY,cAEX;AAFD,WAAY,cAAc;IACxB,mDAAiC,CAAA;AACnC,CAAC,EAFW,cAAc,8BAAd,cAAc,QAEzB;AAID,IAAY,0BAIX;AAJD,WAAY,0BAA0B;IACpC,mDAAqB,CAAA;IACrB,+BAA+B;IAC/B,6CAAe,CAAA;AACjB,CAAC,EAJW,0BAA0B,0CAA1B,0BAA0B,QAIrC;AAID,IAAY,oBAKX;AALD,WAAY,oBAAoB;IAC9B,uDAA+B,CAAA;IAChC;;6CAEyC;AAC1C,CAAC,EALW,oBAAoB,oCAApB,oBAAoB,QAK/B;AAED,SAAgB,gCAAgC,CAAC,EAA+B;IAC9E,OAAO,EAAE,CAAC,MAAM,KAAK,QAAQ,IAAI,EAAE,CAAC,MAAM,KAAK,QAAQ,CAAA;AACzD,CAAC;AAFD,4EAEC;AAED,SAAgB,kCAAkC,CAAC,EAAiC;IAClF,OAAO,EAAE,CAAC,MAAM,KAAK,QAAQ,IAAI,EAAE,CAAC,MAAM,KAAK,QAAQ,CAAA;AACzD,CAAC;AAFD,gFAEC"}
1
+ {"version":3,"file":"w3c-vc.js","sourceRoot":"","sources":["../../src/types/w3c-vc.ts"],"names":[],"mappings":";;;AA2SA,4EAEC;AAED,gFAEC;AA5GY,QAAA,mBAAmB,GAAG,cAAc,CAAA;AAiFjD,IAAY,cAEX;AAFD,WAAY,cAAc;IACxB,mDAAiC,CAAA;AACnC,CAAC,EAFW,cAAc,8BAAd,cAAc,QAEzB;AAID,IAAY,0BAIX;AAJD,WAAY,0BAA0B;IACpC,mDAAqB,CAAA;IACrB,+BAA+B;IAC/B,6CAAe,CAAA;AACjB,CAAC,EAJW,0BAA0B,0CAA1B,0BAA0B,QAIrC;AAID,IAAY,oBAKX;AALD,WAAY,oBAAoB;IAC9B,uDAA+B,CAAA;IAC/B;;4CAEwC;AAC1C,CAAC,EALW,oBAAoB,oCAApB,oBAAoB,QAK/B;AAED,SAAgB,gCAAgC,CAAC,EAA+B;IAC9E,OAAO,EAAE,CAAC,MAAM,KAAK,QAAQ,IAAI,EAAE,CAAC,MAAM,KAAK,QAAQ,CAAA;AACzD,CAAC;AAED,SAAgB,kCAAkC,CAAC,EAAiC;IAClF,OAAO,EAAE,CAAC,MAAM,KAAK,QAAQ,IAAI,EAAE,CAAC,MAAM,KAAK,QAAQ,CAAA;AACzD,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@sphereon/ssi-types",
3
3
  "description": "SSI Common Types",
4
- "version": "0.30.2-unstable.8+7f19535f",
4
+ "version": "0.31.0",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
7
7
  "scripts": {
@@ -10,15 +10,15 @@
10
10
  },
11
11
  "dependencies": {
12
12
  "@sd-jwt/decode": "^0.7.2",
13
- "@sphereon/kmp-mdl-mdoc": "0.2.0-SNAPSHOT.22",
14
- "@sphereon/ssi-sdk-ext.jwt-service": "0.24.1-unstable.130",
13
+ "@sphereon/kmp-mdoc-core": "0.2.0-SNAPSHOT.15",
15
14
  "debug": "^4.3.5",
16
15
  "events": "^3.3.0",
17
- "jwt-decode": "^3.1.2"
16
+ "jwt-decode": "^3.1.2",
17
+ "uint8arrays": "3.1.1"
18
18
  },
19
19
  "devDependencies": {
20
20
  "@types/jest": "^27.5.2",
21
- "@types/node": "18.15.3",
21
+ "@types/node": "^20.17.1",
22
22
  "@veramo/core": "4.2.0",
23
23
  "jest": "^27.5.1",
24
24
  "prettier": "^2.8.8",
@@ -46,5 +46,6 @@
46
46
  "Verifiable Credentials",
47
47
  "DIDs"
48
48
  ],
49
- "gitHead": "7f19535f52bd7a082adfdcb77f8db50681132f9d"
49
+ "nx": {},
50
+ "gitHead": "3010f7bc57ed5f8d7953b6bf893e3164ea1821e8"
50
51
  }
@@ -49,6 +49,10 @@ export enum DefaultActionSubType {
49
49
  DID_SERVICE_UPDATE = 'DID service update',
50
50
  VC_ISSUE = 'VC issue',
51
51
  VC_VERIFY = 'VC verify',
52
+ VC_SHARE = 'VC share',
53
+ VC_DELETE = 'VC delete',
54
+ VC_ISSUE_DECLINE = 'VC issue decline',
55
+ VC_SHARE_DECLINE = 'VC share decline',
52
56
  }
53
57
 
54
58
  export type ActionSubType = DefaultActionSubType | string
@@ -169,9 +173,9 @@ export class EventManager {
169
173
  emitters.map((emitter) => {
170
174
  return { emitter, enabled: true }
171
175
  }),
172
- filter
173
- ).flatMap((emitter) => emitter.emitter.listeners(filter.eventName))
174
- )
176
+ filter,
177
+ ).flatMap((emitter) => emitter.emitter.listeners(filter.eventName)),
178
+ ),
175
179
  )
176
180
  }
177
181
 
@@ -180,7 +184,7 @@ export class EventManager {
180
184
  filter?: {
181
185
  eventName?: string | symbol
182
186
  onlyEnabled?: boolean
183
- }
187
+ },
184
188
  ): Array<EmitterInstance> {
185
189
  const { eventName } = filter ?? {}
186
190
  if (!eventName) {
@@ -11,6 +11,7 @@ export enum LogLevel {
11
11
 
12
12
  export enum LoggingEventType {
13
13
  AUDIT = 'audit',
14
+ ACTIVITY = 'activity',
14
15
  GENERAL = 'general',
15
16
  }
16
17