@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).
65 lines • 7.27 kB
JavaScript
import { Component, Input } from '@angular/core';
import { newUniqueId } from '../../shared';
import * as i0 from "@angular/core";
export class BaseFieldsetComponent {
constructor() {
/**
* Permet de rétablir une graisse standard sur la légende.
*/
this.legendRegular = false;
/**
* Permet de masquer la légende en la préservant pour les lecteurs d'écran.
*/
this.legendSrOnly = false;
/**
* Permet de désactiver l'ensemble des champs du fieldset.
*/
this.disabled = false;
}
/**
* Retourne les erreurs sous forme de tableau même si on a juste un string
* @return type compatible avec la propriété error, c.-à-d. undefined si non renseigné
* @internal
*/
get errors() {
return this.error ? (Array.isArray(this.error) ? this.error : [this.error]) : undefined;
}
ngOnInit() {
this.id ??= newUniqueId();
this.legendId = this.id + '-legend';
this.messagesId = this.id + '-messages';
}
// @since 1.8 sinon même en erreur avec la valeur []
/** @internal */
hasErrors() {
const errors = this.errors;
return errors !== undefined && errors.length > 0;
}
/** @internal */
isLegendRegular() {
return this.legendRegular || this.hasErrors() || !!this.valid;
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: BaseFieldsetComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: BaseFieldsetComponent, selector: "ng-component", inputs: { id: "id", legend: "legend", legendRegular: "legendRegular", legendSrOnly: "legendSrOnly", hint: "hint", disabled: "disabled", error: "error", valid: "valid" }, ngImport: i0, template: '', isInline: true }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: BaseFieldsetComponent, decorators: [{
type: Component,
args: [{ template: '' }]
}], propDecorators: { id: [{
type: Input
}], legend: [{
type: Input
}], legendRegular: [{
type: Input
}], legendSrOnly: [{
type: Input
}], hint: [{
type: Input
}], disabled: [{
type: Input
}], error: [{
type: Input
}], valid: [{
type: Input
}] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1maWVsZHNldC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtZHNmci1jb21wb25lbnRzL3NyYy9saWIvZm9ybXMvZmllbGRzZXQvYmFzZS1maWVsZHNldC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7QUFHM0MsTUFBTSxPQUFnQixxQkFBcUI7SUFEM0M7UUFZRTs7V0FFRztRQUNNLGtCQUFhLEdBQUcsS0FBSyxDQUFDO1FBRS9COztXQUVHO1FBQ00saUJBQVksR0FBRyxLQUFLLENBQUM7UUFPOUI7O1dBRUc7UUFDTSxhQUFRLEdBQUcsS0FBSyxDQUFDO0tBeUMzQjtJQTFCQzs7OztPQUlHO0lBQ0gsSUFBSSxNQUFNO1FBQ1IsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDMUYsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsRUFBRSxLQUFLLFdBQVcsRUFBRSxDQUFDO1FBQzFCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLEVBQUUsR0FBRyxTQUFTLENBQUM7UUFDcEMsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsRUFBRSxHQUFHLFdBQVcsQ0FBQztJQUMxQyxDQUFDO0lBRUQsb0RBQW9EO0lBQ3BELGdCQUFnQjtJQUNoQixTQUFTO1FBQ1AsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUMzQixPQUFPLE1BQU0sS0FBSyxTQUFTLElBQUksTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7SUFDbkQsQ0FBQztJQUVELGdCQUFnQjtJQUNoQixlQUFlO1FBQ2IsT0FBTyxJQUFJLENBQUMsYUFBYSxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNoRSxDQUFDOytHQXJFbUIscUJBQXFCO21HQUFyQixxQkFBcUIsOE5BRHBCLEVBQUU7OzRGQUNILHFCQUFxQjtrQkFEMUMsU0FBUzttQkFBQyxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUU7OEJBS2hCLEVBQUU7c0JBQVYsS0FBSztnQkFLRyxNQUFNO3NCQUFkLEtBQUs7Z0JBS0csYUFBYTtzQkFBckIsS0FBSztnQkFLRyxZQUFZO3NCQUFwQixLQUFLO2dCQUtHLElBQUk7c0JBQVosS0FBSztnQkFLRyxRQUFRO3NCQUFoQixLQUFLO2dCQUtHLEtBQUs7c0JBQWIsS0FBSztnQkFLRyxLQUFLO3NCQUFiLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IG5ld1VuaXF1ZUlkIH0gZnJvbSAnLi4vLi4vc2hhcmVkJztcblxuQENvbXBvbmVudCh7IHRlbXBsYXRlOiAnJyB9KVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VGaWVsZHNldENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIC8qKlxuICAgKiBMJ2lkZW50aWZpYW50IGR1IGZpZWxkc2V0IC0gT3B0aW9ubmVsIChzZXJhIGfDqW7DqXLDqSBzaSBub24gZm91cm5pKS5cbiAgICovXG4gIEBJbnB1dCgpIGlkOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIExhIGzDqWdlbmRlIGR1IGZpZWxkc2V0LiBQZXV0IMOqdHJlIGluZGlxdcOpZSB2aWEgY2V0IGlucHV0IG91IHZpYSB1biBzbG90IFtsZWdlbmRdLlxuICAgKi9cbiAgQElucHV0KCkgbGVnZW5kOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFBlcm1ldCBkZSByw6l0YWJsaXIgdW5lIGdyYWlzc2Ugc3RhbmRhcmQgc3VyIGxhIGzDqWdlbmRlLlxuICAgKi9cbiAgQElucHV0KCkgbGVnZW5kUmVndWxhciA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBQZXJtZXQgZGUgbWFzcXVlciBsYSBsw6lnZW5kZSBlbiBsYSBwcsOpc2VydmFudCBwb3VyIGxlcyBsZWN0ZXVycyBkJ8OpY3Jhbi5cbiAgICovXG4gIEBJbnB1dCgpIGxlZ2VuZFNyT25seSA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBUZXh0ZSBkZSBkZXNjcmlwdGlvbiBhZGRpdGlvbm5lbC5cbiAgICovXG4gIEBJbnB1dCgpIGhpbnQ6IHN0cmluZztcblxuICAvKipcbiAgICogUGVybWV0IGRlIGTDqXNhY3RpdmVyIGwnZW5zZW1ibGUgZGVzIGNoYW1wcyBkdSBmaWVsZHNldC5cbiAgICovXG4gIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIExlKHMpIG1lc3NhZ2UocykgZCdlcnJldXIgw6AgYWZmaWNoZXIgbGUgY2FzIMOpY2jDqWFudC5cbiAgICovXG4gIEBJbnB1dCgpIGVycm9yOiBzdHJpbmcgfCBzdHJpbmdbXSB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogTGUgbWVzc2FnZSBkZSB2YWxpZGF0aW9uIMOgIGFmZmljaGVyIGxlIGNhcyDDqWNow6lhbnQuXG4gICAqL1xuICBASW5wdXQoKSB2YWxpZDogc3RyaW5nO1xuXG4gIC8qKiBAaW50ZXJuYWwgKi8gbGVnZW5kSWQ6IHN0cmluZztcbiAgLyoqIEBpbnRlcm5hbCAqLyBtZXNzYWdlc0lkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFJldG91cm5lIGxlcyBlcnJldXJzIHNvdXMgZm9ybWUgZGUgdGFibGVhdSBtw6ptZSBzaSBvbiBhIGp1c3RlIHVuIHN0cmluZ1xuICAgKiBAcmV0dXJuIHR5cGUgY29tcGF0aWJsZSBhdmVjIGxhIHByb3ByacOpdMOpIGVycm9yLCBjLi3DoC1kLiB1bmRlZmluZWQgc2kgbm9uIHJlbnNlaWduw6lcbiAgICogQGludGVybmFsXG4gICAqL1xuICBnZXQgZXJyb3JzKCk6IHN0cmluZ1tdIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5lcnJvciA/IChBcnJheS5pc0FycmF5KHRoaXMuZXJyb3IpID8gdGhpcy5lcnJvciA6IFt0aGlzLmVycm9yXSkgOiB1bmRlZmluZWQ7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmlkID8/PSBuZXdVbmlxdWVJZCgpO1xuICAgIHRoaXMubGVnZW5kSWQgPSB0aGlzLmlkICsgJy1sZWdlbmQnO1xuICAgIHRoaXMubWVzc2FnZXNJZCA9IHRoaXMuaWQgKyAnLW1lc3NhZ2VzJztcbiAgfVxuXG4gIC8vIEBzaW5jZSAxLjggc2lub24gbcOqbWUgZW4gZXJyZXVyIGF2ZWMgbGEgdmFsZXVyIFtdXG4gIC8qKiBAaW50ZXJuYWwgKi9cbiAgaGFzRXJyb3JzKCk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGVycm9ycyA9IHRoaXMuZXJyb3JzO1xuICAgIHJldHVybiBlcnJvcnMgIT09IHVuZGVmaW5lZCAmJiBlcnJvcnMubGVuZ3RoID4gMDtcbiAgfVxuXG4gIC8qKiBAaW50ZXJuYWwgKi9cbiAgaXNMZWdlbmRSZWd1bGFyKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmxlZ2VuZFJlZ3VsYXIgfHwgdGhpcy5oYXNFcnJvcnMoKSB8fCAhIXRoaXMudmFsaWQ7XG4gIH1cbn1cbiJdfQ==