UNPKG

kodewerk

Version:

Dictionary of kode/term objects for use with associated melosys projects

80 lines (74 loc) 2.08 kB
/** * Kodeverk. * @module */ const memoize = require('lodash/memoize'); const { aktoerroller } = require('./aktoerroller'); const { begrunnelser } = require('./begrunnelser'); const { behandlinger } = require('./behandlinger'); const { dokumenttitler } = require('./dokumenttitler'); const { brev } = require('./brev'); const { finansiering } = require('./finansiering'); const { landkoder } = require('./landkoder'); const { lovvalgsbestemmelser } = require('./lovvalgsbestemmelser'); const { medlemskapstyper } = require('./medlemskapstyper'); const { mottaksretning } = require('./mottaksretning'); const { oppgavetyper } = require('./oppgavetyper'); const { representerer } = require('./representerer'); const { saksstatuser } = require('./saksstatuser'); const { sakstyper } = require('./sakstyper'); const { trygdedekninger } = require('./trygdedekninger'); const { vedleggstitler } = require('./vedleggstitler'); const { yrker } = require('./yrker'); const kodeverk = { aktoerroller, dokumenttitler, behandlinger, begrunnelser, brev, finansiering, landkoder, lovvalgsbestemmelser, medlemskapstyper, mottaksretning, oppgavetyper, representerer, saksstatuser, sakstyper, trygdedekninger, vedleggstitler, yrker, }; const kodeVerk = memoize(function () { return kodeverk; }); module.exports.kodeverk = kodeVerk(); const arrayToObject = (array) => { return array.reduce((obj, item) => { obj[item.kode] = item.term; return obj; }, {}); }; const transformKodeverk2KodeSet = () => { let codes = {}; for (const verk in kodeverk) { const node = kodeverk[verk]; if (Array.isArray(node)) { const obj = arrayToObject(node); codes[verk] = { ...obj }; } else { codes[verk] = {}; for(const prop in node) { const obj = {}; obj[prop] = {...arrayToObject(node[prop])}; codes[verk] = {...codes[verk], ...obj}; } } } return codes; }; const kodeSet = memoize(function () { return transformKodeverk2KodeSet(); }); module.exports.kodeset = kodeSet();