UNPKG

@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).

78 lines 10.1 kB
import { CommonModule } from '@angular/common'; import { Component, CUSTOM_ELEMENTS_SCHEMA, Input, ViewEncapsulation } from '@angular/core'; import { DsfrSizeConst } from '../../shared'; import { DsfrBadgeSeverityConst } from './badge.model'; import * as i0 from "@angular/core"; import * as i1 from "@angular/common"; export class DsfrBadgeComponent { constructor() { /** * L'icône de sévérité n'est pas affiché si `true` (`false` par défaut). * Attention seuls les badges dits "système" peuvent avoir une icône, les badges "custom" ne le peuvent pas. */ this.noIcon = false; /** * Taille du badge, optionnel, `MD` par défaut. */ this.badgeSize = 'MD'; /** @internal */ this._severity = undefined; } /** * Taille du badge, optionnel, `MD` par défaut. * * @deprecated since(1.15.0) utiliser 'badgeSize' à la place */ get size() { return this.badgeSize; } get severity() { return this._severity; } /** * Taille du badge, optionnel, `MD` par défaut. * * @deprecated since(1.15.0) utiliser 'badgeSize' à la place */ set size(value) { this.badgeSize = value; } /** Niveau d'alerte, optionnel. */ set severity(value) { this._severity = !value ? undefined : value?.toLowerCase(); } /** @internal */ getClasses() { const classes = { 'fr-badge--sm': this.badgeSize === DsfrSizeConst.SM && !!this.label, 'fr-badge--no-icon': this.noIcon, }; if (this.severity) { classes['fr-badge--new'] = this.severity === DsfrBadgeSeverityConst.NEW; classes['fr-badge--success'] = this.severity === DsfrBadgeSeverityConst.SUCCESS; classes['fr-badge--info'] = this.severity == DsfrBadgeSeverityConst.INFO; classes['fr-badge--warning'] = this.severity == DsfrBadgeSeverityConst.WARNING; classes['fr-badge--error'] = this.severity === DsfrBadgeSeverityConst.ERROR; } return classes; } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DsfrBadgeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); } static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DsfrBadgeComponent, isStandalone: true, selector: "dsfr-badge", inputs: { label: "label", noIcon: "noIcon", badgeSize: "badgeSize", customClass: "customClass", size: "size", severity: "severity" }, ngImport: i0, template: "<p class=\"fr-badge\" [class]=\"customClass ?? ''\" [ngClass]=\"getClasses()\">\n <span class=\"fr-ellipsis\">{{ label }}</span>\n</p>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], encapsulation: i0.ViewEncapsulation.None }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DsfrBadgeComponent, decorators: [{ type: Component, args: [{ selector: 'dsfr-badge', encapsulation: ViewEncapsulation.None, standalone: true, imports: [CommonModule], schemas: [CUSTOM_ELEMENTS_SCHEMA], template: "<p class=\"fr-badge\" [class]=\"customClass ?? ''\" [ngClass]=\"getClasses()\">\n <span class=\"fr-ellipsis\">{{ label }}</span>\n</p>\n" }] }], propDecorators: { label: [{ type: Input }], noIcon: [{ type: Input }], badgeSize: [{ type: Input }], customClass: [{ type: Input }], size: [{ type: Input }], severity: [{ type: Input }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFkZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWRzZnItY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvYmFkZ2UvYmFkZ2UuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWRzZnItY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvYmFkZ2UvYmFkZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsc0JBQXNCLEVBQUUsS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDN0MsT0FBTyxFQUFxQixzQkFBc0IsRUFBaUIsTUFBTSxlQUFlLENBQUM7OztBQVV6RixNQUFNLE9BQU8sa0JBQWtCO0lBUi9CO1FBWUU7OztXQUdHO1FBQ00sV0FBTSxHQUFHLEtBQUssQ0FBQztRQUV4Qjs7V0FFRztRQUNNLGNBQVMsR0FBa0IsSUFBSSxDQUFDO1FBS3pDLGdCQUFnQjtRQUNSLGNBQVMsR0FBa0MsU0FBUyxDQUFDO0tBOEM5RDtJQTVDQzs7OztPQUlHO0lBQ0gsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxJQUFhLElBQUksQ0FBQyxLQUFvQjtRQUNwQyxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztJQUN6QixDQUFDO0lBRUQsa0NBQWtDO0lBQ2xDLElBQWEsUUFBUSxDQUFDLEtBQW9DO1FBQ3hELElBQUksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQW9CLEtBQUssRUFBRSxXQUFXLEVBQUUsQ0FBQztJQUNoRixDQUFDO0lBRUQsZ0JBQWdCO0lBQ2hCLFVBQVU7UUFDUixNQUFNLE9BQU8sR0FBNEI7WUFDdkMsY0FBYyxFQUFFLElBQUksQ0FBQyxTQUFTLEtBQUssYUFBYSxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUs7WUFDbkUsbUJBQW1CLEVBQUUsSUFBSSxDQUFDLE1BQU07U0FDakMsQ0FBQztRQUVGLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2xCLE9BQU8sQ0FBQyxlQUFlLENBQUMsR0FBRyxJQUFJLENBQUMsUUFBUSxLQUFLLHNCQUFzQixDQUFDLEdBQUcsQ0FBQztZQUN4RSxPQUFPLENBQUMsbUJBQW1CLENBQUMsR0FBRyxJQUFJLENBQUMsUUFBUSxLQUFLLHNCQUFzQixDQUFDLE9BQU8sQ0FBQztZQUNoRixPQUFPLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxJQUFJLENBQUMsUUFBUSxJQUFJLHNCQUFzQixDQUFDLElBQUksQ0FBQztZQUN6RSxPQUFPLENBQUMsbUJBQW1CLENBQUMsR0FBRyxJQUFJLENBQUMsUUFBUSxJQUFJLHNCQUFzQixDQUFDLE9BQU8sQ0FBQztZQUMvRSxPQUFPLENBQUMsaUJBQWlCLENBQUMsR0FBRyxJQUFJLENBQUMsUUFBUSxLQUFLLHNCQUFzQixDQUFDLEtBQUssQ0FBQztRQUM5RSxDQUFDO1FBRUQsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQzsrR0FoRVUsa0JBQWtCO21HQUFsQixrQkFBa0IsNE1DYi9CLDJJQUdBLDJDRE9ZLFlBQVk7OzRGQUdYLGtCQUFrQjtrQkFSOUIsU0FBUzsrQkFDRSxZQUFZLGlCQUVQLGlCQUFpQixDQUFDLElBQUksY0FDekIsSUFBSSxXQUNQLENBQUMsWUFBWSxDQUFDLFdBQ2QsQ0FBQyxzQkFBc0IsQ0FBQzs4QkFJeEIsS0FBSztzQkFBYixLQUFLO2dCQU1HLE1BQU07c0JBQWQsS0FBSztnQkFLRyxTQUFTO3NCQUFqQixLQUFLO2dCQUdHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBdUJPLElBQUk7c0JBQWhCLEtBQUs7Z0JBS08sUUFBUTtzQkFBcEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIENVU1RPTV9FTEVNRU5UU19TQ0hFTUEsIElucHV0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRHNmclNpemVDb25zdCB9IGZyb20gJy4uLy4uL3NoYXJlZCc7XG5pbXBvcnQgeyBEc2ZyQmFkZ2VTZXZlcml0eSwgRHNmckJhZGdlU2V2ZXJpdHlDb25zdCwgRHNmckJhZGdlU2l6ZSB9IGZyb20gJy4vYmFkZ2UubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkc2ZyLWJhZGdlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2JhZGdlLmNvbXBvbmVudC5odG1sJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIHNjaGVtYXM6IFtDVVNUT01fRUxFTUVOVFNfU0NIRU1BXSxcbn0pXG5leHBvcnQgY2xhc3MgRHNmckJhZGdlQ29tcG9uZW50IHtcbiAgLyoqIExhYmVsIGR1IGJhZGdlLCBvYmxpZ2F0b2lyZS4gKi9cbiAgQElucHV0KCkgbGFiZWw6IHN0cmluZztcblxuICAvKipcbiAgICogTCdpY8O0bmUgZGUgc8OpdsOpcml0w6kgbidlc3QgcGFzIGFmZmljaMOpIHNpIGB0cnVlYCAoYGZhbHNlYCBwYXIgZMOpZmF1dCkuXG4gICAqIEF0dGVudGlvbiBzZXVscyBsZXMgYmFkZ2VzIGRpdHMgXCJzeXN0w6htZVwiIHBldXZlbnQgYXZvaXIgdW5lIGljw7RuZSwgbGVzIGJhZGdlcyBcImN1c3RvbVwiIG5lIGxlIHBldXZlbnQgcGFzLlxuICAgKi9cbiAgQElucHV0KCkgbm9JY29uID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFRhaWxsZSBkdSBiYWRnZSwgb3B0aW9ubmVsLCBgTURgIHBhciBkw6lmYXV0LlxuICAgKi9cbiAgQElucHV0KCkgYmFkZ2VTaXplOiBEc2ZyQmFkZ2VTaXplID0gJ01EJztcblxuICAvKiogQ2xhc3NlIHBlcnNvbm5hbGlzw6llIHBvdXIgbGEgY291bGV1ciBkdSBiYWRnZS4gQ29ycmVzcG9uZCDDoCB1bmUgY2xhc3NlIGR1IHR5cGUgYGZyLWJhZGdlLS1ibHVlLWN1bXVsdXNgLiAqL1xuICBASW5wdXQoKSBjdXN0b21DbGFzczogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIC8qKiBAaW50ZXJuYWwgKi9cbiAgcHJpdmF0ZSBfc2V2ZXJpdHk6IERzZnJCYWRnZVNldmVyaXR5IHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBUYWlsbGUgZHUgYmFkZ2UsIG9wdGlvbm5lbCwgYE1EYCBwYXIgZMOpZmF1dC5cbiAgICpcbiAgICogQGRlcHJlY2F0ZWQgc2luY2UoMS4xNS4wKSB1dGlsaXNlciAnYmFkZ2VTaXplJyDDoCBsYSBwbGFjZVxuICAgKi9cbiAgZ2V0IHNpemUoKTogRHNmckJhZGdlU2l6ZSB7XG4gICAgcmV0dXJuIHRoaXMuYmFkZ2VTaXplO1xuICB9XG5cbiAgZ2V0IHNldmVyaXR5KCk6IERzZnJCYWRnZVNldmVyaXR5IHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5fc2V2ZXJpdHk7XG4gIH1cblxuICAvKipcbiAgICogVGFpbGxlIGR1IGJhZGdlLCBvcHRpb25uZWwsIGBNRGAgcGFyIGTDqWZhdXQuXG4gICAqXG4gICAqIEBkZXByZWNhdGVkIHNpbmNlKDEuMTUuMCkgdXRpbGlzZXIgJ2JhZGdlU2l6ZScgw6AgbGEgcGxhY2VcbiAgICovXG4gIEBJbnB1dCgpIHNldCBzaXplKHZhbHVlOiBEc2ZyQmFkZ2VTaXplKSB7XG4gICAgdGhpcy5iYWRnZVNpemUgPSB2YWx1ZTtcbiAgfVxuXG4gIC8qKiBOaXZlYXUgZCdhbGVydGUsIG9wdGlvbm5lbC4gKi9cbiAgQElucHV0KCkgc2V0IHNldmVyaXR5KHZhbHVlOiBEc2ZyQmFkZ2VTZXZlcml0eSB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuX3NldmVyaXR5ID0gIXZhbHVlID8gdW5kZWZpbmVkIDogPERzZnJCYWRnZVNldmVyaXR5PnZhbHVlPy50b0xvd2VyQ2FzZSgpO1xuICB9XG5cbiAgLyoqIEBpbnRlcm5hbCAqL1xuICBnZXRDbGFzc2VzKCkge1xuICAgIGNvbnN0IGNsYXNzZXM6IFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+ID0ge1xuICAgICAgJ2ZyLWJhZGdlLS1zbSc6IHRoaXMuYmFkZ2VTaXplID09PSBEc2ZyU2l6ZUNvbnN0LlNNICYmICEhdGhpcy5sYWJlbCxcbiAgICAgICdmci1iYWRnZS0tbm8taWNvbic6IHRoaXMubm9JY29uLFxuICAgIH07XG5cbiAgICBpZiAodGhpcy5zZXZlcml0eSkge1xuICAgICAgY2xhc3Nlc1snZnItYmFkZ2UtLW5ldyddID0gdGhpcy5zZXZlcml0eSA9PT0gRHNmckJhZGdlU2V2ZXJpdHlDb25zdC5ORVc7XG4gICAgICBjbGFzc2VzWydmci1iYWRnZS0tc3VjY2VzcyddID0gdGhpcy5zZXZlcml0eSA9PT0gRHNmckJhZGdlU2V2ZXJpdHlDb25zdC5TVUNDRVNTO1xuICAgICAgY2xhc3Nlc1snZnItYmFkZ2UtLWluZm8nXSA9IHRoaXMuc2V2ZXJpdHkgPT0gRHNmckJhZGdlU2V2ZXJpdHlDb25zdC5JTkZPO1xuICAgICAgY2xhc3Nlc1snZnItYmFkZ2UtLXdhcm5pbmcnXSA9IHRoaXMuc2V2ZXJpdHkgPT0gRHNmckJhZGdlU2V2ZXJpdHlDb25zdC5XQVJOSU5HO1xuICAgICAgY2xhc3Nlc1snZnItYmFkZ2UtLWVycm9yJ10gPSB0aGlzLnNldmVyaXR5ID09PSBEc2ZyQmFkZ2VTZXZlcml0eUNvbnN0LkVSUk9SO1xuICAgIH1cblxuICAgIHJldHVybiBjbGFzc2VzO1xuICB9XG59XG4iLCI8cCBjbGFzcz1cImZyLWJhZGdlXCIgW2NsYXNzXT1cImN1c3RvbUNsYXNzID8/ICcnXCIgW25nQ2xhc3NdPVwiZ2V0Q2xhc3NlcygpXCI+XG4gIDxzcGFuIGNsYXNzPVwiZnItZWxsaXBzaXNcIj57eyBsYWJlbCB9fTwvc3Bhbj5cbjwvcD5cbiJdfQ==