nz-covid-pass-verifier
Version:
TypeScript implementation of [NZ COVID Pass - Technical Specification v1](https://nzcp.covid19.health.nz/).
21 lines • 1.45 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.parseURI = void 0;
const base32Decode = require("base32-decode");
function addBase32Padding(input) {
let result = input;
while (result.length % 8 !== 0) {
result += "=";
}
return result;
}
function parseURI(qrCode) {
const [schema, version, payload] = qrCode.split("/");
if (schema !== "NZCP:" || version !== "1") {
return undefined;
}
const paddedPayload = addBase32Padding(payload);
return base32Decode(paddedPayload, "RFC4648");
}
exports.parseURI = parseURI;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2VVUkkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvcGFyc2VVUkkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsOENBQStDO0FBRS9DLFNBQVMsZ0JBQWdCLENBQUMsS0FBYTtJQUNuQyxJQUFJLE1BQU0sR0FBRyxLQUFLLENBQUM7SUFDbkIsT0FBTyxNQUFNLENBQUMsTUFBTSxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUU7UUFDNUIsTUFBTSxJQUFJLEdBQUcsQ0FBQztLQUNqQjtJQUNELE9BQU8sTUFBTSxDQUFDO0FBQ2xCLENBQUM7QUFFRCxTQUFnQixRQUFRLENBQUMsTUFBYztJQUNuQyxNQUFNLENBQUMsTUFBTSxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUMsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3JELElBQUksTUFBTSxLQUFLLE9BQU8sSUFBSSxPQUFPLEtBQUssR0FBRyxFQUFFO1FBQ3ZDLE9BQU8sU0FBUyxDQUFDO0tBQ3BCO0lBRUQsTUFBTSxhQUFhLEdBQUcsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDaEQsT0FBTyxZQUFZLENBQUMsYUFBYSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0FBQ2xELENBQUM7QUFSRCw0QkFRQyJ9