@edugouvfr/ngx-dsfr
Version:
NgxDsfr est un portage Angular des éléments d'interface du Système de Design de l'État Français (DSFR).
28 lines • 7.9 kB
JavaScript
import { Component, Input, ViewEncapsulation } from '@angular/core';
import * as i0 from "@angular/core";
import * as i1 from "@angular/common";
import * as i2 from "../download/download.component";
/**
* Ce composant permet de proposer une liste de plusieurs téléchargements. Les téléchargements sont des liens
* présentés sous forme de liste avec des puces. Un lien ne peut pas être un bloc. La description des liens est faite
* sous forme de tableau.
*/
export class DsfrDownloadsGroupComponent {
constructor() {
/** Tableau des fichiers à lister. */
this.downloads = [];
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DsfrDownloadsGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DsfrDownloadsGroupComponent, selector: "dsfr-downloads-group", inputs: { heading: "heading", headingLevel: "headingLevel", downloads: "downloads" }, ngImport: i0, template: "<div class=\"fr-downloads-group fr-downloads-group--bordered\">\n <ng-container [ngSwitch]=\"headingLevel\">\n <h2 class=\"fr-downloads-group__title\" *ngSwitchCase=\"'H2'\">{{ heading }}</h2>\n <h3 class=\"fr-downloads-group__title\" *ngSwitchCase=\"'H3'\">{{ heading }}</h3>\n <h5 class=\"fr-downloads-group__title\" *ngSwitchCase=\"'H5'\">{{ heading }}</h5>\n <h6 class=\"fr-downloads-group__title\" *ngSwitchCase=\"'H6'\">{{ heading }}</h6>\n <h4 class=\"fr-downloads-group__title\" *ngSwitchDefault>{{ heading }}</h4>\n </ng-container>\n\n <ul>\n <ng-container *ngFor=\"let item of downloads\">\n <li>\n <dsfr-download\n [fileName]=\"item.fileName\"\n [link]=\"item.link\"\n [mimeType]=\"item.mimeType\"\n [sizeBytes]=\"item.sizeBytes ?? 0\"\n [langCode]=\"item.langCode ?? 'fr'\"\n [directDownload]=\"item.directDownload ?? false\"></dsfr-download>\n </li>\n </ng-container>\n </ul>\n</div>\n", styles: ["@charset \"UTF-8\";dsfr-downloads-groups dsfr-download{display:inline-block}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "component", type: i2.DsfrDownloadComponent, selector: "dsfr-download", inputs: ["langCode", "directDownload", "link", "mimeType", "fileName", "sizeBytes", "variant", "description", "assessFile", "sizeUnit"] }], encapsulation: i0.ViewEncapsulation.None }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DsfrDownloadsGroupComponent, decorators: [{
type: Component,
args: [{ selector: 'dsfr-downloads-group', encapsulation: ViewEncapsulation.None, template: "<div class=\"fr-downloads-group fr-downloads-group--bordered\">\n <ng-container [ngSwitch]=\"headingLevel\">\n <h2 class=\"fr-downloads-group__title\" *ngSwitchCase=\"'H2'\">{{ heading }}</h2>\n <h3 class=\"fr-downloads-group__title\" *ngSwitchCase=\"'H3'\">{{ heading }}</h3>\n <h5 class=\"fr-downloads-group__title\" *ngSwitchCase=\"'H5'\">{{ heading }}</h5>\n <h6 class=\"fr-downloads-group__title\" *ngSwitchCase=\"'H6'\">{{ heading }}</h6>\n <h4 class=\"fr-downloads-group__title\" *ngSwitchDefault>{{ heading }}</h4>\n </ng-container>\n\n <ul>\n <ng-container *ngFor=\"let item of downloads\">\n <li>\n <dsfr-download\n [fileName]=\"item.fileName\"\n [link]=\"item.link\"\n [mimeType]=\"item.mimeType\"\n [sizeBytes]=\"item.sizeBytes ?? 0\"\n [langCode]=\"item.langCode ?? 'fr'\"\n [directDownload]=\"item.directDownload ?? false\"></dsfr-download>\n </li>\n </ng-container>\n </ul>\n</div>\n", styles: ["@charset \"UTF-8\";dsfr-downloads-groups dsfr-download{display:inline-block}\n"] }]
}], propDecorators: { heading: [{
type: Input
}], headingLevel: [{
type: Input
}], downloads: [{
type: Input
}] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG93bmxvYWRzLWdyb3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1kc2ZyLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2Rvd25sb2Fkcy1ncm91cC9kb3dubG9hZHMtZ3JvdXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWRzZnItY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvZG93bmxvYWRzLWdyb3VwL2Rvd25sb2Fkcy1ncm91cC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7OztBQVNwRTs7OztHQUlHO0FBQ0gsTUFBTSxPQUFPLDJCQUEyQjtJQVh4QztRQWtCRSxxQ0FBcUM7UUFDNUIsY0FBUyxHQUFtQixFQUFFLENBQUM7S0FDekM7K0dBVFksMkJBQTJCO21HQUEzQiwyQkFBMkIsa0pDZHhDLG8rQkF1QkE7OzRGRFRhLDJCQUEyQjtrQkFYdkMsU0FBUzsrQkFDRSxzQkFBc0IsaUJBR2pCLGlCQUFpQixDQUFDLElBQUk7OEJBUzVCLE9BQU87c0JBQWYsS0FBSztnQkFHRyxZQUFZO3NCQUFwQixLQUFLO2dCQUdHLFNBQVM7c0JBQWpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRHNmckRvd25sb2FkIH0gZnJvbSAnLi4vZG93bmxvYWQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkc2ZyLWRvd25sb2Fkcy1ncm91cCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9kb3dubG9hZHMtZ3JvdXAuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kb3dubG9hZHMtZ3JvdXAuY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG4vKipcbiAqIENlIGNvbXBvc2FudCBwZXJtZXQgZGUgcHJvcG9zZXIgdW5lIGxpc3RlIGRlIHBsdXNpZXVycyB0w6lsw6ljaGFyZ2VtZW50cy4gTGVzIHTDqWzDqWNoYXJnZW1lbnRzIHNvbnQgZGVzIGxpZW5zXG4gKiBwcsOpc2VudMOpcyBzb3VzIGZvcm1lIGRlIGxpc3RlIGF2ZWMgZGVzIHB1Y2VzLiBVbiBsaWVuIG5lIHBldXQgcGFzIMOqdHJlIHVuIGJsb2MuIExhIGRlc2NyaXB0aW9uIGRlcyBsaWVucyBlc3QgZmFpdGVcbiAqIHNvdXMgZm9ybWUgZGUgdGFibGVhdS5cbiAqL1xuZXhwb3J0IGNsYXNzIERzZnJEb3dubG9hZHNHcm91cENvbXBvbmVudCB7XG4gIC8qKiBUaXRyZSBkdSBncm91cGUgZGUgZmljaGllcnMgKGZhY3VsdGF0aWYpLiAqL1xuICBASW5wdXQoKSBoZWFkaW5nOiBzdHJpbmc7XG5cbiAgLyoqIE5pdmVhdSBkZSB0aXRyZSwgJzxoND4nIHBhciBkw6lmYXV0LiAqL1xuICBASW5wdXQoKSBoZWFkaW5nTGV2ZWw6IHN0cmluZztcblxuICAvKiogVGFibGVhdSBkZXMgZmljaGllcnMgw6AgbGlzdGVyLiAqL1xuICBASW5wdXQoKSBkb3dubG9hZHM6IERzZnJEb3dubG9hZFtdID0gW107XG59XG4iLCI8ZGl2IGNsYXNzPVwiZnItZG93bmxvYWRzLWdyb3VwIGZyLWRvd25sb2Fkcy1ncm91cC0tYm9yZGVyZWRcIj5cbiAgPG5nLWNvbnRhaW5lciBbbmdTd2l0Y2hdPVwiaGVhZGluZ0xldmVsXCI+XG4gICAgPGgyIGNsYXNzPVwiZnItZG93bmxvYWRzLWdyb3VwX190aXRsZVwiICpuZ1N3aXRjaENhc2U9XCInSDInXCI+e3sgaGVhZGluZyB9fTwvaDI+XG4gICAgPGgzIGNsYXNzPVwiZnItZG93bmxvYWRzLWdyb3VwX190aXRsZVwiICpuZ1N3aXRjaENhc2U9XCInSDMnXCI+e3sgaGVhZGluZyB9fTwvaDM+XG4gICAgPGg1IGNsYXNzPVwiZnItZG93bmxvYWRzLWdyb3VwX190aXRsZVwiICpuZ1N3aXRjaENhc2U9XCInSDUnXCI+e3sgaGVhZGluZyB9fTwvaDU+XG4gICAgPGg2IGNsYXNzPVwiZnItZG93bmxvYWRzLWdyb3VwX190aXRsZVwiICpuZ1N3aXRjaENhc2U9XCInSDYnXCI+e3sgaGVhZGluZyB9fTwvaDY+XG4gICAgPGg0IGNsYXNzPVwiZnItZG93bmxvYWRzLWdyb3VwX190aXRsZVwiICpuZ1N3aXRjaERlZmF1bHQ+e3sgaGVhZGluZyB9fTwvaDQ+XG4gIDwvbmctY29udGFpbmVyPlxuXG4gIDx1bD5cbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIGRvd25sb2Fkc1wiPlxuICAgICAgPGxpPlxuICAgICAgICA8ZHNmci1kb3dubG9hZFxuICAgICAgICAgIFtmaWxlTmFtZV09XCJpdGVtLmZpbGVOYW1lXCJcbiAgICAgICAgICBbbGlua109XCJpdGVtLmxpbmtcIlxuICAgICAgICAgIFttaW1lVHlwZV09XCJpdGVtLm1pbWVUeXBlXCJcbiAgICAgICAgICBbc2l6ZUJ5dGVzXT1cIml0ZW0uc2l6ZUJ5dGVzID8/IDBcIlxuICAgICAgICAgIFtsYW5nQ29kZV09XCJpdGVtLmxhbmdDb2RlID8/ICdmcidcIlxuICAgICAgICAgIFtkaXJlY3REb3dubG9hZF09XCJpdGVtLmRpcmVjdERvd25sb2FkID8/IGZhbHNlXCI+PC9kc2ZyLWRvd25sb2FkPlxuICAgICAgPC9saT5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC91bD5cbjwvZGl2PlxuIl19