covid-certificate
Version:
Parse and verify a european digital covid certificate (dcc)
33 lines (32 loc) • 1.01 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.extractHeader = void 0;
const headerFromProtectedHeaders_1 = require("./headerFromProtectedHeaders");
const headerFromMap_1 = require("./headerFromMap");
/**
* Get a header value from the COSE headers.
*
* If both protected and unprotected headers give the header, the
* function will return the kid given in the protected header
*
*
* @param protectedHeaders
* @param unprotectedHeaders
* @param headerKey
*/
const extractHeader = (protectedHeaders, unprotectedHeaders, headerKey) => {
let header = null;
try {
header = (0, headerFromProtectedHeaders_1.headerFromProtectedHeaders)(protectedHeaders, headerKey);
}
catch (error) {
try {
header = (0, headerFromMap_1.headerFromMap)(unprotectedHeaders, headerKey);
}
catch (error) {
throw new Error("No header found");
}
}
return header;
};
exports.extractHeader = extractHeader;