UNPKG

@gouvfr/dsfr-roller

Version:

Le module `dsfr-roller` permet de publier le site de documentation du Système de Design de l’État - DSFR

35 lines (29 loc) 855 B
import { Component } from '../component.js'; class Breadcrumb extends Component { constructor (data) { super(data, 'breadcrumb'); } get ejsPath () { return 'src/dsfr/component/breadcrumb/template/ejs/breadcrumb.ejs'; } async format () { const chunks = ['']; const segments = this.data.segments.map((segment) => this._formatSegment(segment, chunks)); segments[0].path = `/${segments[0].path}`; return { id: 'breadcrumb', segments: segments, button: this.data.button }; } _formatSegment (segment, chunks) { const missing = segment.url.split('/').filter((chunk) => !chunks.includes(chunk)); chunks.push(...missing); return { id: `breadcrumb-${missing.join('-')}`, label: segment.label ?? segment.text, path: missing.join('/') }; } } export { Breadcrumb };