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

81 lines (80 loc) 3.79 kB
import { AfterViewInit, ElementRef, EventEmitter, OnDestroy, OnInit, Renderer2, TemplateRef } from '@angular/core'; import { DsfrHeadingLevel, DsfrSize } from '../../shared'; import { DsfrModalAction } from './modal-action.model'; import * as i0 from "@angular/core"; export declare class DsfrModalComponent implements AfterViewInit, OnInit, OnDestroy { private renderer2; /** L'identifiant unique de l'élément <dialog>. */ dialogId: string; /** Titre de la modale. */ titleModal: string; /** * Le niveau de titre devant être utilisé (tag `h1` par défaut). * Cette balise ne produit pas de style, mais de la structure. */ headingLevel: DsfrHeadingLevel | undefined; /** Le tableau des actions à positionner dans la modale. */ actions: DsfrModalAction[]; /** Permet de ne pas fermer la modale automatiquement lorsqu'une action est exécutée. */ autoCloseOnAction: boolean; /** Autorise la fermeture de la modale au click sur le fond. */ concealingBackdrop: boolean; /** * Le mode de contrôle vous permet, le cas échéant, de maintenir la capacité de la modale à être pilotée * programmatiquement en absence de bouton de contrôle. * * @since 1.8.0 * @deprecated (since 1.14.0) */ controlMode: 'button' | 'dynamic'; /** Indique la classe d'icône à utiliser en haut à gauche. Par défaut `fr-icon-arrow-right-line` */ icon: string; /** Type de balise HTML, dialog par défaut */ markup: 'dialog' | 'div'; /** Positionnement de la modale en haut en mobile. */ mobileTop: boolean; /** Signale l'ouverture de la modale. */ disclose: EventEmitter<void>; /** Signale la fermeture de la modale. */ conceal: EventEmitter<void>; /** @internal */ dsfrModal: ElementRef; /** Template du pied de la modale (doit contenir des boutons d'actions) */ modalFooterTemplate: TemplateRef<any>; /** * L'identifiant unique de l'élément tenant titre descriptif de la modale. * * @internal */ titleElementId: string; /** @internal */ sizeClasses: { [klass: string]: boolean; }; private _size; private _unlisten; /** @internal */ constructor(renderer2: Renderer2); get size(): DsfrSize; /** * La taille de la modale. * Valeurs possibles : `SM` (pour small), `MD` (pour medium), `LG` (pour large). */ set size(newSize: DsfrSize); ngOnInit(): void; ngAfterViewInit(): void; ngOnDestroy(): void; /** * Permet de déclencher programmatiquement l'ouverture de la modale. */ open(): void; /** * Permet de déclencher programmatiquement la fermeture de la modale. */ close(): void; /** @internal */ performAction(action: DsfrModalAction): void; private updateSizeClasses; static ɵfac: i0.ɵɵFactoryDeclaration<DsfrModalComponent, never>; static ɵcmp: i0.ɵɵComponentDeclaration<DsfrModalComponent, "dsfr-modal", never, { "dialogId": { "alias": "dialogId"; "required": false; }; "titleModal": { "alias": "titleModal"; "required": false; }; "headingLevel": { "alias": "headingLevel"; "required": false; }; "actions": { "alias": "actions"; "required": false; }; "autoCloseOnAction": { "alias": "autoCloseOnAction"; "required": false; }; "concealingBackdrop": { "alias": "concealingBackdrop"; "required": false; }; "controlMode": { "alias": "controlMode"; "required": false; }; "icon": { "alias": "icon"; "required": false; }; "markup": { "alias": "markup"; "required": false; }; "mobileTop": { "alias": "mobileTop"; "required": false; }; "size": { "alias": "size"; "required": false; }; }, { "disclose": "disclose"; "conceal": "conceal"; }, ["modalFooterTemplate"], ["*"], true, never>; }