@vess-id/mdl 0.0.7 → 0.0.8

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.
@@ -26,4 +26,28 @@ export declare class IssuerSignedDocument {
26
26
  * List of namespaces in the document.
27
27
  */
28
28
  get issuerSignedNameSpaces(): string[];
29
+ /**
30
+ * Prepare IssuerSigned structure only (for OID4VCI issuance).
31
+ * Returns only the IssuerSigned part without docType wrapper.
32
+ *
33
+ * OID4VCI 1.0 Section A.2.4:
34
+ * The credential claim MUST be a base64url-encoded CBOR-encoded IssuerSigned structure.
35
+ *
36
+ * @returns {Object} - The IssuerSigned structure ready for CBOR encoding
37
+ */
38
+ prepareIssuerSigned(): {
39
+ nameSpaces: Map<string, any>;
40
+ issuerAuth: any;
41
+ };
42
+ /**
43
+ * Encode IssuerSigned structure for OID4VCI credential response.
44
+ * Returns CBOR-encoded IssuerSigned structure as Buffer.
45
+ *
46
+ * This method is specifically designed for OID4VCI 1.0 credential issuance,
47
+ * where only the IssuerSigned structure (not the full DeviceResponse/MDoc)
48
+ * should be returned in the Credential Response.
49
+ *
50
+ * @returns {Buffer} - CBOR-encoded IssuerSigned structure
51
+ */
52
+ encodeIssuerSigned(): Buffer;
29
53
  }
@@ -44,6 +44,37 @@ class IssuerSignedDocument {
44
44
  get issuerSignedNameSpaces() {
45
45
  return Object.keys(this.issuerSigned.nameSpaces);
46
46
  }
47
+ /**
48
+ * Prepare IssuerSigned structure only (for OID4VCI issuance).
49
+ * Returns only the IssuerSigned part without docType wrapper.
50
+ *
51
+ * OID4VCI 1.0 Section A.2.4:
52
+ * The credential claim MUST be a base64url-encoded CBOR-encoded IssuerSigned structure.
53
+ *
54
+ * @returns {Object} - The IssuerSigned structure ready for CBOR encoding
55
+ */
56
+ prepareIssuerSigned() {
57
+ return {
58
+ nameSpaces: new Map(Object.entries(this.issuerSigned?.nameSpaces ?? {}).map(([nameSpace, items]) => {
59
+ return [nameSpace, items.map((item) => item.dataItem)];
60
+ })),
61
+ issuerAuth: this.issuerSigned?.issuerAuth.getContentForEncoding(),
62
+ };
63
+ }
64
+ /**
65
+ * Encode IssuerSigned structure for OID4VCI credential response.
66
+ * Returns CBOR-encoded IssuerSigned structure as Buffer.
67
+ *
68
+ * This method is specifically designed for OID4VCI 1.0 credential issuance,
69
+ * where only the IssuerSigned structure (not the full DeviceResponse/MDoc)
70
+ * should be returned in the Credential Response.
71
+ *
72
+ * @returns {Buffer} - CBOR-encoded IssuerSigned structure
73
+ */
74
+ encodeIssuerSigned() {
75
+ const { cborEncode } = require('../../cbor');
76
+ return cborEncode(this.prepareIssuerSigned());
77
+ }
47
78
  }
48
79
  exports.IssuerSignedDocument = IssuerSignedDocument;
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSXNzdWVyU2lnbmVkRG9jdW1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbWRvYy9tb2RlbC9Jc3N1ZXJTaWduZWREb2N1bWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFFQTs7Ozs7R0FLRztBQUNILE1BQWEsb0JBQW9CO0lBQy9CLFlBQ2tCLE9BQWdCLEVBQ2hCLFlBQTBCO1FBRDFCLFlBQU8sR0FBUCxPQUFPLENBQVM7UUFDaEIsaUJBQVksR0FBWixZQUFZLENBQWM7SUFDeEMsQ0FBQztJQUVMOzs7O09BSUc7SUFDSCxPQUFPO1FBQ0wsTUFBTSxNQUFNLEdBQUcsSUFBSSxHQUFHLEVBQWUsQ0FBQztRQUN0QyxNQUFNLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDcEMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxjQUFjLEVBQUU7WUFDekIsVUFBVSxFQUFFLElBQUksR0FBRyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxVQUFVLElBQUksRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRTtnQkFDakcsT0FBTyxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztZQUN6RCxDQUFDLENBQUMsQ0FBQztZQUNILFVBQVUsRUFBRSxJQUFJLENBQUMsWUFBWSxFQUFFLFVBQVUsQ0FBQyxxQkFBcUIsRUFBRTtTQUNsRSxDQUFDLENBQUM7UUFDSCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxrQkFBa0IsQ0FBQyxTQUFpQjtRQUNsQyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUMxRCxPQUFPLE1BQU0sQ0FBQyxXQUFXLENBQ3ZCLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUNyRSxDQUFDO0lBQ0osQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBSSxzQkFBc0I7UUFDeEIsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDbkQsQ0FBQztDQUNGO0FBMUNELG9EQTBDQyJ9
80
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSXNzdWVyU2lnbmVkRG9jdW1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbWRvYy9tb2RlbC9Jc3N1ZXJTaWduZWREb2N1bWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFFQTs7Ozs7R0FLRztBQUNILE1BQWEsb0JBQW9CO0lBQy9CLFlBQ2tCLE9BQWdCLEVBQ2hCLFlBQTBCO1FBRDFCLFlBQU8sR0FBUCxPQUFPLENBQVM7UUFDaEIsaUJBQVksR0FBWixZQUFZLENBQWM7SUFDeEMsQ0FBQztJQUVMOzs7O09BSUc7SUFDSCxPQUFPO1FBQ0wsTUFBTSxNQUFNLEdBQUcsSUFBSSxHQUFHLEVBQWUsQ0FBQztRQUN0QyxNQUFNLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDcEMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxjQUFjLEVBQUU7WUFDekIsVUFBVSxFQUFFLElBQUksR0FBRyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxVQUFVLElBQUksRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRTtnQkFDakcsT0FBTyxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztZQUN6RCxDQUFDLENBQUMsQ0FBQztZQUNILFVBQVUsRUFBRSxJQUFJLENBQUMsWUFBWSxFQUFFLFVBQVUsQ0FBQyxxQkFBcUIsRUFBRTtTQUNsRSxDQUFDLENBQUM7UUFDSCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxrQkFBa0IsQ0FBQyxTQUFpQjtRQUNsQyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUMxRCxPQUFPLE1BQU0sQ0FBQyxXQUFXLENBQ3ZCLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUNyRSxDQUFDO0lBQ0osQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBSSxzQkFBc0I7UUFDeEIsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDbkQsQ0FBQztJQUVEOzs7Ozs7OztPQVFHO0lBQ0gsbUJBQW1CO1FBSWpCLE9BQU87WUFDTCxVQUFVLEVBQUUsSUFBSSxHQUFHLENBQ2pCLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxVQUFVLElBQUksRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRTtnQkFDN0UsT0FBTyxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztZQUN6RCxDQUFDLENBQUMsQ0FDSDtZQUNELFVBQVUsRUFBRSxJQUFJLENBQUMsWUFBWSxFQUFFLFVBQVUsQ0FBQyxxQkFBcUIsRUFBRTtTQUNsRSxDQUFDO0lBQ0osQ0FBQztJQUVEOzs7Ozs7Ozs7T0FTRztJQUNILGtCQUFrQjtRQUNoQixNQUFNLEVBQUUsVUFBVSxFQUFFLEdBQUcsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzdDLE9BQU8sVUFBVSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLENBQUM7SUFDaEQsQ0FBQztDQUNGO0FBaEZELG9EQWdGQyJ9
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vess-id/mdl",
3
- "version": "0.0.7",
3
+ "version": "0.0.8",
4
4
  "description": "Parse and and validate MDOC CBOR encoded binaries according to ISO 18013-5.",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",