UNPKG

@natlibfi/melinda-record-match-validator

Version:

Validates if two records matched by melinda-record-matching can be merged and sets merge priority

34 lines (33 loc) 1.18 kB
import createDebugLogger from "debug"; import { nvdebug } from "../utils.js"; import { get042 } from "../collectFunctions/collectUtils.js"; const debug = createDebugLogger("@natlibfi/melinda-record-match-validator:field042"); const debugDev = debug.extend("dev"); function compare042Data(data1, data2) { const score1 = score042Field(data1); const score2 = score042Field(data2); nvdebug(`042 scores: ${score1} vs ${score2}`, debugDev); if (score1 > score2) { return "A"; } if (score1 < score2) { return "B"; } return true; function score042Field(authenticationCodes) { nvdebug(authenticationCodes.join(", "), debugDev); return (authenticationCodes.includes("finb") ? 1 : 0) + (authenticationCodes.includes("finbd") ? 1 : 0); } } export function compare042(recordValuesA, recordValuesB) { const f042A = recordValuesA["042"]; const f042B = recordValuesB["042"]; debugDev("%o vs %o", f042A, f042B); return compare042Data(f042A, f042B); } export function check042({ record1, record2 }) { const data1 = get042(record1); const data2 = get042(record2); return compare042Data(data1, data2); } //# sourceMappingURL=compareField042.js.map