@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
TypeScript
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>;
}