bidasoa-models
Version:
Colección de modelos de datos de elementos propios de Bidasoa.
19 lines (18 loc) • 759 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.getFlatennedLinks = void 0;
const LinkConfiguration_1 = require("models/menus/LinkConfiguration");
function getFlatennedLinks(links, parent) {
return links.reduce((accumulator, current) => {
const currentLinkFlattened = Object.assign({ link: current }, (parent && { parent }));
if (!(0, LinkConfiguration_1.hasNextLevelLinks)(current)) {
return [...accumulator, currentLinkFlattened];
}
return [
...accumulator,
currentLinkFlattened,
...getFlatennedLinks((0, LinkConfiguration_1.getNextLevelLinks)(current), current),
];
}, []);
}
exports.getFlatennedLinks = getFlatennedLinks;