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

106 lines (105 loc) 5.36 kB
import { EventEmitter } from '@angular/core'; import { DsfrFileSizeUnit, DsfrI18nService, DsfrLink, DsfrLinkTarget, LangService } from '../../shared'; import { DsfrDownload, DsfrDownloadVariant } from './download.model'; import * as i0 from "@angular/core"; export declare class DsfrDownloadComponent implements DsfrDownload { private langService; /** @internal */ i18n: DsfrI18nService; /** Label du lien. Par défaut indique 'Télécharger [nom du fichier]' */ label: string | undefined; /** La propriété ariaLabel définit une valeur de chaîne qui étiquette un élément interactif. */ ariaLabel: string | undefined; /** * Lien de téléchargement (href) du fichier. * Si cette propriété n'est pas renseignée, un bouton remplace l'ancre (voir route) */ link: string | undefined; /** Format du fichier - obligatoire. Cf. DsfrMimeType */ mimeType: string; /** Nom du ficher - obligatoire. */ fileName: string; /** Poids du fichier en octets. Obligatoire dans le DSDFR mais peut être renseigné ultérieurement. */ sizeBytes: number | undefined; /** * Obligatoire si le document n'est pas du même langage que la page courante. * * Ex : langCode="en". */ langCode: string | undefined; /** * Permet de basculer la présentation en Card. * * @deprecated Le mode 'block' est déprécié, utiliser `Card#download` à la place */ variant: DsfrDownloadVariant; /** * Description du fichier (uniquement en mode block). * * @deprecated Le mode block est déprécié */ description: string; /** * Indique que les métadonnées du fichier seront positionnées automatiquement par le script DSFR. Les propriétés * `mimeType`, `sizeBytes`, `langCode` sont alors ignorées. Si la propriété est positionnée à false alors ce sont * les valeurs des propriétés `mimeType`, `sizeBytes`, `langCode` qui seront utlisées. */ assessFile: boolean; /** * Equivalent à l'attribut html natif 'download'. * Si == 'true', télécharge directement le fichier sans l'ouvrir, 'false' par défaut. * Peut prendre le nom du fichier à télécharger si on souhaite renommer ce fichier. */ directDownload: boolean | string | undefined; /** * Si cette propriété est renseignée, un bouton remplace l'ancre et l'évènement linkSelect doit être intercepté. * Son activation est exclusive avec link et prime sur ce dernier. * Attention, en mode 'route' les métadonnées du fichier à télécharger ne peuvent être connues a priori, vous * devez donc obligatoirement renseigner les propriétés `mimeType`, `sizeBytes` et langCode` car la propriété * `assessFile` sera ignorée. */ route: string | undefined; /** * Attribut target du lien. */ linkTarget: DsfrLinkTarget | undefined; /** * Propage la valeur de 'route' lors du clic sur le lien. */ downloadSelect: EventEmitter<string>; /** cf. accesseurs. */ private _sizeUnit; constructor(langService: LangService, /** @internal */ i18n: DsfrI18nService); get currentLang(): string; get itemLink(): DsfrLink; /** * Retourne l'affichage des détails si assetFile est positionné et que l'utilisateur n'est pas en mode action * (activation via l'input route), sinon retourne '' ce qui aura pour effet de laisser calculer l'affichage par * le script DSFR. */ get detail(): string; get sizeUnit(): DsfrFileSizeUnit; /** * Permet d'afficher la taille soit en bytes (KB, MB, ...) soit en octets (Ko, Mo, ...). Par défaut, l'unité est * en octets lorsque la langue courante est 'fr', 'bytes' dans les autres cas. */ set sizeUnit(value: DsfrFileSizeUnit); /** @internal */ onLinkSelect(): void; /** * Retourne vrai si on affiche un bouton à la place d'une ancre. * @internal */ hasButtonMarkup(): boolean; /** * Si 'true' ou avec un nom de fichier, télécharge directement le fichier sans l'ouvrir. False par défaut. * @internal */ isDirectDownload(): boolean; /** @internal */ getNewFileName(): string; /** @internal */ isBlockMode(): boolean; static ɵfac: i0.ɵɵFactoryDeclaration<DsfrDownloadComponent, never>; static ɵcmp: i0.ɵɵComponentDeclaration<DsfrDownloadComponent, "dsfr-download", never, { "label": { "alias": "label"; "required": false; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; }; "link": { "alias": "link"; "required": false; }; "mimeType": { "alias": "mimeType"; "required": false; }; "fileName": { "alias": "fileName"; "required": false; }; "sizeBytes": { "alias": "sizeBytes"; "required": false; }; "langCode": { "alias": "langCode"; "required": false; }; "variant": { "alias": "variant"; "required": false; }; "description": { "alias": "description"; "required": false; }; "assessFile": { "alias": "assessFile"; "required": false; }; "directDownload": { "alias": "directDownload"; "required": false; }; "route": { "alias": "route"; "required": false; }; "linkTarget": { "alias": "linkTarget"; "required": false; }; "sizeUnit": { "alias": "sizeUnit"; "required": false; }; }, { "downloadSelect": "downloadSelect"; }, never, never, true, never>; }