@taiga-ui/addon-doc
Version:
Taiga UI based library for developing documentation portals for Angular libraries.
22 lines • 3.53 kB
JavaScript
function assertTitle(page, map) {
if (map.has(page.title) && map.get(page.title)?.route !== page.route) {
console.error('Title for page should be unique for prevent inconsistent page names', page, '<== Collisions between ==>', map.get(page.title));
}
}
export function tuiToFlatMapPages(pages) {
const map = new Map();
pages.forEach((page) => {
if ('subPages' in page) {
page.subPages.forEach((subPage) => {
ngDevMode && assertTitle(subPage, map);
map.set(subPage.title, subPage);
});
}
else {
ngDevMode && assertTitle(page, map);
map.set(page.title, page);
}
});
return map;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG8tZmxhdC1tYXAtcGFnZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1kb2MvdXRpbHMvdG8tZmxhdC1tYXAtcGFnZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsU0FBUyxXQUFXLENBQUMsSUFBcUIsRUFBRSxHQUFpQztJQUN6RSxJQUFJLEdBQUcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLEtBQUssS0FBSyxJQUFJLENBQUMsS0FBSyxFQUFFO1FBQ2xFLE9BQU8sQ0FBQyxLQUFLLENBQ1QscUVBQXFFLEVBQ3JFLElBQUksRUFDSiw0QkFBNEIsRUFDNUIsR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQ3RCLENBQUM7S0FDTDtBQUNMLENBQUM7QUFFRCxNQUFNLFVBQVUsaUJBQWlCLENBQUMsS0FBdUI7SUFDckQsTUFBTSxHQUFHLEdBQUcsSUFBSSxHQUFHLEVBQTJCLENBQUM7SUFFL0MsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1FBQ25CLElBQUksVUFBVSxJQUFJLElBQUksRUFBRTtZQUNwQixJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFO2dCQUM5QixTQUFTLElBQUksV0FBVyxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQztnQkFDdkMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQ3BDLENBQUMsQ0FBQyxDQUFDO1NBQ047YUFBTTtZQUNILFNBQVMsSUFBSSxXQUFXLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1lBQ3BDLEdBQUcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztTQUM3QjtJQUNMLENBQUMsQ0FBQyxDQUFDO0lBRUgsT0FBTyxHQUFHLENBQUM7QUFDZixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8vIDxyZWZlcmVuY2UgdHlwZXM9XCJAdGFpZ2EtdWkvdHNjb25maWcvbmctZGV2LW1vZGVcIiAvPlxuaW1wb3J0IHR5cGUge1R1aURvY1JvdXRlUGFnZSwgVHVpRG9jUm91dGVQYWdlc30gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWRvYy90eXBlcyc7XG5cbmZ1bmN0aW9uIGFzc2VydFRpdGxlKHBhZ2U6IFR1aURvY1JvdXRlUGFnZSwgbWFwOiBNYXA8c3RyaW5nLCBUdWlEb2NSb3V0ZVBhZ2U+KTogdm9pZCB7XG4gICAgaWYgKG1hcC5oYXMocGFnZS50aXRsZSkgJiYgbWFwLmdldChwYWdlLnRpdGxlKT8ucm91dGUgIT09IHBhZ2Uucm91dGUpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcihcbiAgICAgICAgICAgICdUaXRsZSBmb3IgcGFnZSBzaG91bGQgYmUgdW5pcXVlIGZvciBwcmV2ZW50IGluY29uc2lzdGVudCBwYWdlIG5hbWVzJyxcbiAgICAgICAgICAgIHBhZ2UsXG4gICAgICAgICAgICAnPD09IENvbGxpc2lvbnMgYmV0d2VlbiA9PT4nLFxuICAgICAgICAgICAgbWFwLmdldChwYWdlLnRpdGxlKSxcbiAgICAgICAgKTtcbiAgICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0dWlUb0ZsYXRNYXBQYWdlcyhwYWdlczogVHVpRG9jUm91dGVQYWdlcyk6IE1hcDxzdHJpbmcsIFR1aURvY1JvdXRlUGFnZT4ge1xuICAgIGNvbnN0IG1hcCA9IG5ldyBNYXA8c3RyaW5nLCBUdWlEb2NSb3V0ZVBhZ2U+KCk7XG5cbiAgICBwYWdlcy5mb3JFYWNoKChwYWdlKSA9PiB7XG4gICAgICAgIGlmICgnc3ViUGFnZXMnIGluIHBhZ2UpIHtcbiAgICAgICAgICAgIHBhZ2Uuc3ViUGFnZXMuZm9yRWFjaCgoc3ViUGFnZSkgPT4ge1xuICAgICAgICAgICAgICAgIG5nRGV2TW9kZSAmJiBhc3NlcnRUaXRsZShzdWJQYWdlLCBtYXApO1xuICAgICAgICAgICAgICAgIG1hcC5zZXQoc3ViUGFnZS50aXRsZSwgc3ViUGFnZSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIG5nRGV2TW9kZSAmJiBhc3NlcnRUaXRsZShwYWdlLCBtYXApO1xuICAgICAgICAgICAgbWFwLnNldChwYWdlLnRpdGxlLCBwYWdlKTtcbiAgICAgICAgfVxuICAgIH0pO1xuXG4gICAgcmV0dXJuIG1hcDtcbn1cbiJdfQ==