vess-mdl
Version:
Parse and and validate MDOC CBOR encoded binaries according to ISO 18013-5.
34 lines • 2.49 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.MDoc = exports.MDocStatus = void 0;
const cbor_1 = require("../../cbor");
var MDocStatus;
(function (MDocStatus) {
MDocStatus[MDocStatus["OK"] = 0] = "OK";
MDocStatus[MDocStatus["GeneralError"] = 10] = "GeneralError";
MDocStatus[MDocStatus["CBORDecodingError"] = 11] = "CBORDecodingError";
MDocStatus[MDocStatus["CBORValidationError"] = 12] = "CBORValidationError";
})(MDocStatus || (exports.MDocStatus = MDocStatus = {}));
class MDoc {
constructor(documents = [], version = '1.0', status = MDocStatus.OK, documentErrors = []) {
this.documents = documents;
this.version = version;
this.status = status;
this.documentErrors = documentErrors;
}
addDocument(document) {
if (typeof document.issuerSigned === 'undefined') {
throw new Error('Cannot add an unsigned document');
}
this.documents.push(document);
}
encode() {
return (0, cbor_1.cborEncode)({
version: this.version,
documents: this.documents.map((doc) => doc.prepare()),
status: this.status,
});
}
}
exports.MDoc = MDoc;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTURvYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9tZG9jL21vZGVsL01Eb2MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEscUNBQXdDO0FBU3hDLElBQVksVUFLWDtBQUxELFdBQVksVUFBVTtJQUNwQix1Q0FBTSxDQUFBO0lBQ04sNERBQWlCLENBQUE7SUFDakIsc0VBQXNCLENBQUE7SUFDdEIsMEVBQXdCLENBQUE7QUFDMUIsQ0FBQyxFQUxXLFVBQVUsMEJBQVYsVUFBVSxRQUtyQjtBQUVELE1BQWEsSUFBSTtJQUNmLFlBQ2tCLFlBQW9DLEVBQUUsRUFDdEMsVUFBVSxLQUFLLEVBQ2YsU0FBcUIsVUFBVSxDQUFDLEVBQUUsRUFDbEMsaUJBQWtDLEVBQUU7UUFIcEMsY0FBUyxHQUFULFNBQVMsQ0FBNkI7UUFDdEMsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUNmLFdBQU0sR0FBTixNQUFNLENBQTRCO1FBQ2xDLG1CQUFjLEdBQWQsY0FBYyxDQUFzQjtJQUNsRCxDQUFDO0lBRUwsV0FBVyxDQUFDLFFBQThCO1FBQ3hDLElBQUksT0FBTyxRQUFRLENBQUMsWUFBWSxLQUFLLFdBQVcsRUFBRSxDQUFDO1lBQ2pELE1BQU0sSUFBSSxLQUFLLENBQUMsaUNBQWlDLENBQUMsQ0FBQztRQUNyRCxDQUFDO1FBQ0QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBZ0MsQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFFRCxNQUFNO1FBQ0osT0FBTyxJQUFBLGlCQUFVLEVBQUM7WUFDaEIsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPO1lBQ3JCLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3JELE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTtTQUNwQixDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0Y7QUF0QkQsb0JBc0JDIn0=