@lab-anssi/ui-kit 1.61.3 → 1.62.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +102 -21
- package/dist/assets/assets.d.ts +1 -0
- package/dist/assets/assets.js +1 -0
- package/dist/assets/dsfr-icons.css +1 -0
- package/dist/composants/Alerte.svelte +83 -0
- package/dist/composants/Alerte.svelte.d.ts +32 -0
- package/dist/composants/AncresParcours.svelte +132 -0
- package/dist/composants/AncresParcours.svelte.d.ts +11 -0
- package/dist/composants/BandeauPage.svelte +218 -0
- package/dist/composants/BandeauPage.svelte.d.ts +58 -0
- package/dist/composants/BlocFonctionnalites.svelte +570 -0
- package/dist/composants/BlocFonctionnalites.svelte.d.ts +105 -0
- package/dist/composants/Bouton.svelte +156 -0
- package/dist/composants/Bouton.svelte.d.ts +36 -0
- package/dist/composants/CentreAide.svelte +223 -0
- package/dist/composants/CentreAide.svelte.d.ts +41 -0
- package/dist/composants/FiltresCatalogue.svelte +147 -0
- package/dist/composants/FiltresCatalogue.svelte.d.ts +15 -0
- package/dist/composants/Icone.svelte +42 -0
- package/dist/composants/Icone.svelte.d.ts +7 -0
- package/dist/composants/Lien.svelte +233 -0
- package/dist/composants/Lien.svelte.d.ts +39 -0
- package/dist/composants/MultiSelect.svelte +931 -0
- package/dist/composants/MultiSelect.svelte.d.ts +51 -0
- package/dist/composants/Reactions.svelte +360 -0
- package/dist/composants/Reactions.svelte.d.ts +23 -0
- package/dist/composants/ResumePssi.svelte +92 -0
- package/dist/composants/ResumePssi.svelte.d.ts +6 -0
- package/dist/composants/Tag.svelte +113 -0
- package/dist/composants/Tag.svelte.d.ts +35 -0
- package/dist/composants/blog/BandeauTitre.svelte +150 -0
- package/dist/composants/blog/BandeauTitre.svelte.d.ts +29 -0
- package/dist/composants/blog/CarteArticle.svelte +69 -0
- package/dist/composants/blog/CarteArticle.svelte.d.ts +8 -0
- package/dist/composants/blog/IconeChevronBas.svelte +22 -0
- package/dist/composants/blog/IconeChevronBas.svelte.d.ts +26 -0
- package/dist/composants/blog/IconeMenuLateral.svelte +15 -0
- package/dist/composants/blog/IconeMenuLateral.svelte.d.ts +26 -0
- package/dist/composants/blog/ListeArticles.svelte +62 -0
- package/dist/composants/blog/ListeArticles.svelte.d.ts +9 -0
- package/dist/composants/blog/ListeDeroulante.svelte +57 -0
- package/dist/composants/blog/ListeDeroulante.svelte.d.ts +10 -0
- package/dist/composants/blog/PageCrisp.svelte +244 -0
- package/dist/composants/blog/PageCrisp.svelte.d.ts +8 -0
- package/dist/composants/blog/SommaireBureau.svelte +64 -0
- package/dist/composants/blog/SommaireBureau.svelte.d.ts +9 -0
- package/dist/composants/blog/SommaireMobile.svelte +115 -0
- package/dist/composants/blog/SommaireMobile.svelte.d.ts +9 -0
- package/dist/composants/carrousel-tuiles/CarrouselTuiles.svelte +184 -0
- package/dist/composants/carrousel-tuiles/CarrouselTuiles.svelte.d.ts +34 -0
- package/dist/composants/carrousel-tuiles/IconeFlecheDroite.svelte +16 -0
- package/dist/composants/carrousel-tuiles/IconeFlecheDroite.svelte.d.ts +26 -0
- package/dist/composants/carrousel-tuiles/IconeFlecheGauche.svelte +12 -0
- package/dist/composants/carrousel-tuiles/IconeFlecheGauche.svelte.d.ts +26 -0
- package/dist/composants/carrousel-tuiles/Tuile.svelte +72 -0
- package/dist/composants/carrousel-tuiles/Tuile.svelte.d.ts +10 -0
- package/dist/composants/icones/Fleche.svelte +25 -0
- package/dist/composants/icones/Fleche.svelte.d.ts +6 -0
- package/dist/composants/icones/LienExterne.svelte +20 -0
- package/dist/composants/icones/LienExterne.svelte.d.ts +6 -0
- package/dist/composants/marelle/Etape.svelte +165 -0
- package/dist/composants/marelle/Etape.svelte.d.ts +32 -0
- package/dist/composants/marelle/Marelle.svelte +97 -0
- package/dist/composants/marelle/Marelle.svelte.d.ts +44 -0
- package/dist/composants/mes-services-cyber/bandeau/Bandeau.svelte +158 -0
- package/dist/composants/mes-services-cyber/bandeau/Bandeau.svelte.d.ts +3 -0
- package/dist/composants/mes-services-cyber/lien/LienDiagnosticCyber.svelte +125 -0
- package/dist/composants/mes-services-cyber/lien/LienDiagnosticCyber.svelte.d.ts +7 -0
- package/dist/composants/pied-de-page/NavigationPiedDePage.svelte +62 -0
- package/dist/composants/pied-de-page/NavigationPiedDePage.svelte.d.ts +6 -0
- package/dist/composants/suite-cyber/AccueilSuiteCyber.svelte +96 -0
- package/dist/composants/suite-cyber/AccueilSuiteCyber.svelte.d.ts +6 -0
- package/dist/composants/suite-cyber/LiensSuiteCyber.svelte +99 -0
- package/dist/composants/suite-cyber/LiensSuiteCyber.svelte.d.ts +14 -0
- package/dist/composants/suite-cyber/SuiteCyber.svelte +296 -0
- package/dist/composants/suite-cyber/SuiteCyber.svelte.d.ts +6 -0
- package/dist/composants/vitrines-produits/briques/Brique.svelte +50 -0
- package/dist/composants/vitrines-produits/briques/Brique.svelte.d.ts +9 -0
- package/dist/composants/vitrines-produits/briques/BriqueContenuADeuxColonnes.svelte +144 -0
- package/dist/composants/vitrines-produits/briques/BriqueContenuADeuxColonnes.svelte.d.ts +29 -0
- package/dist/composants/vitrines-produits/briques/BriqueHero.svelte +246 -0
- package/dist/composants/vitrines-produits/briques/BriqueHero.svelte.d.ts +31 -0
- package/dist/composants/vitrines-produits/briques/BriqueTitreMultimedia.svelte +50 -0
- package/dist/composants/vitrines-produits/briques/BriqueTitreMultimedia.svelte.d.ts +25 -0
- package/dist/composants/vitrines-produits/briques/LecteurVideo.svelte +14 -0
- package/dist/composants/vitrines-produits/briques/LecteurVideo.svelte.d.ts +9 -0
- package/dist/composants/vitrines-produits/briques/PresentationANSSI.svelte +148 -0
- package/dist/composants/vitrines-produits/briques/PresentationANSSI.svelte.d.ts +37 -0
- package/dist/composants/vitrines-produits/briques/RejoindreLaCommunaute.svelte +139 -0
- package/dist/composants/vitrines-produits/briques/RejoindreLaCommunaute.svelte.d.ts +36 -0
- package/dist/composants/vitrines-produits/briques/temoignages/IconeTemoignage.svelte +18 -0
- package/dist/composants/vitrines-produits/briques/temoignages/IconeTemoignage.svelte.d.ts +26 -0
- package/dist/composants/vitrines-produits/briques/temoignages/Temoignages.svelte +168 -0
- package/dist/composants/vitrines-produits/briques/temoignages/Temoignages.svelte.d.ts +13 -0
- package/dist/directives/actions.svelte.d.ts +32 -0
- package/dist/directives/actions.svelte.js +158 -0
- package/dist/dsfr/DsfrAccordion.svelte +889 -0
- package/dist/dsfr/DsfrAccordion.svelte.d.ts +40 -0
- package/dist/dsfr/DsfrAlert.svelte +2097 -0
- package/dist/dsfr/DsfrAlert.svelte.d.ts +36 -0
- package/dist/dsfr/DsfrBadge.svelte +532 -0
- package/dist/dsfr/DsfrBadge.svelte.d.ts +41 -0
- package/dist/dsfr/DsfrBadgesGroup.svelte +610 -0
- package/dist/dsfr/DsfrBadgesGroup.svelte.d.ts +25 -0
- package/dist/dsfr/DsfrBreadcrumb.svelte +657 -0
- package/dist/dsfr/DsfrBreadcrumb.svelte.d.ts +25 -0
- package/dist/dsfr/DsfrButton.svelte +1821 -0
- package/dist/dsfr/DsfrButton.svelte.d.ts +68 -0
- package/dist/dsfr/DsfrButtonsGroup.svelte +1896 -0
- package/dist/dsfr/DsfrButtonsGroup.svelte.d.ts +36 -0
- package/dist/dsfr/DsfrCallout.svelte +242 -0
- package/dist/dsfr/DsfrCallout.svelte.d.ts +46 -0
- package/dist/dsfr/DsfrCard.svelte +10223 -0
- package/dist/dsfr/DsfrCard.svelte.d.ts +102 -0
- package/dist/dsfr/DsfrCheckbox.svelte +1280 -0
- package/dist/dsfr/DsfrCheckbox.svelte.d.ts +69 -0
- package/dist/dsfr/DsfrCheckboxesGroup.svelte +1532 -0
- package/dist/dsfr/DsfrCheckboxesGroup.svelte.d.ts +73 -0
- package/dist/dsfr/DsfrConnect.svelte +511 -0
- package/dist/dsfr/DsfrConnect.svelte.d.ts +15 -0
- package/dist/dsfr/DsfrContainer.svelte +894 -0
- package/dist/dsfr/DsfrContainer.svelte.d.ts +31 -0
- package/dist/dsfr/DsfrContent.svelte +1140 -0
- package/dist/dsfr/DsfrContent.svelte.d.ts +60 -0
- package/dist/dsfr/DsfrDropdown.svelte +335 -0
- package/dist/dsfr/DsfrDropdown.svelte.d.ts +73 -0
- package/dist/dsfr/DsfrFooter.svelte +2370 -0
- package/dist/dsfr/DsfrFooter.svelte.d.ts +77 -0
- package/dist/dsfr/DsfrHeader.svelte +4162 -0
- package/dist/dsfr/DsfrHeader.svelte.d.ts +131 -0
- package/dist/dsfr/DsfrHighlight.svelte +294 -0
- package/dist/dsfr/DsfrHighlight.svelte.d.ts +33 -0
- package/dist/dsfr/DsfrInput.svelte +1270 -0
- package/dist/dsfr/DsfrInput.svelte.d.ts +86 -0
- package/dist/dsfr/DsfrLabel.svelte +438 -0
- package/dist/dsfr/DsfrLabel.svelte.d.ts +65 -0
- package/dist/dsfr/DsfrLink.svelte +1007 -0
- package/dist/dsfr/DsfrLink.svelte.d.ts +66 -0
- package/dist/dsfr/DsfrLogo.svelte +228 -0
- package/dist/dsfr/DsfrLogo.svelte.d.ts +11 -0
- package/dist/dsfr/DsfrMessagesGroup.svelte +260 -0
- package/dist/dsfr/DsfrMessagesGroup.svelte.d.ts +46 -0
- package/dist/dsfr/DsfrModal.svelte +2983 -0
- package/dist/dsfr/DsfrModal.svelte.d.ts +56 -0
- package/dist/dsfr/DsfrNavigation.svelte +7626 -0
- package/dist/dsfr/DsfrNotice.svelte +2948 -0
- package/dist/dsfr/DsfrNotice.svelte.d.ts +37 -0
- package/dist/dsfr/DsfrPagination.svelte +1036 -0
- package/dist/dsfr/DsfrPagination.svelte.d.ts +35 -0
- package/dist/dsfr/DsfrQuote.svelte +646 -0
- package/dist/dsfr/DsfrQuote.svelte.d.ts +29 -0
- package/dist/dsfr/DsfrRadio.svelte +1307 -0
- package/dist/dsfr/DsfrRadio.svelte.d.ts +37 -0
- package/dist/dsfr/DsfrRadiosGroup.svelte +1629 -0
- package/dist/dsfr/DsfrRadiosGroup.svelte.d.ts +76 -0
- package/dist/dsfr/DsfrRange.svelte +1329 -0
- package/dist/dsfr/DsfrRange.svelte.d.ts +77 -0
- package/dist/dsfr/DsfrSearch.svelte +2015 -0
- package/dist/dsfr/DsfrSearch.svelte.d.ts +51 -0
- package/dist/dsfr/DsfrSegmented.svelte +422 -0
- package/dist/dsfr/DsfrSegmented.svelte.d.ts +34 -0
- package/dist/dsfr/DsfrSelect.svelte +1068 -0
- package/dist/dsfr/DsfrSelect.svelte.d.ts +86 -0
- package/dist/dsfr/DsfrShare.svelte +2228 -0
- package/dist/dsfr/DsfrShare.svelte.d.ts +40 -0
- package/dist/dsfr/DsfrSideMenu.svelte +1211 -0
- package/dist/dsfr/DsfrSideMenu.svelte.d.ts +34 -0
- package/dist/dsfr/DsfrSkipLink.svelte +990 -0
- package/dist/dsfr/DsfrSkipLink.svelte.d.ts +13 -0
- package/dist/dsfr/DsfrStepper.svelte +340 -0
- package/dist/dsfr/DsfrStepper.svelte.d.ts +18 -0
- package/dist/dsfr/DsfrTable.svelte +829 -0
- package/dist/dsfr/DsfrTable.svelte.d.ts +202 -0
- package/dist/dsfr/DsfrTabnav.svelte +1149 -0
- package/dist/dsfr/DsfrTabnav.svelte.d.ts +36 -0
- package/dist/dsfr/DsfrTabs.svelte +925 -0
- package/dist/dsfr/DsfrTabs.svelte.d.ts +28 -0
- package/dist/dsfr/DsfrTag.svelte +1269 -0
- package/dist/dsfr/DsfrTag.svelte.d.ts +59 -0
- package/dist/dsfr/DsfrTagsGroup.svelte +1351 -0
- package/dist/dsfr/DsfrTagsGroup.svelte.d.ts +37 -0
- package/dist/dsfr/DsfrTextarea.svelte +1385 -0
- package/dist/dsfr/DsfrTextarea.svelte.d.ts +72 -0
- package/dist/dsfr/DsfrTile.svelte +7645 -0
- package/dist/dsfr/DsfrTile.svelte.d.ts +79 -0
- package/dist/dsfr/DsfrToggle.svelte +1453 -0
- package/dist/dsfr/DsfrToggle.svelte.d.ts +56 -0
- package/dist/dsfr/DsfrTooltip.svelte +396 -0
- package/dist/dsfr/DsfrTooltip.svelte.d.ts +36 -0
- package/dist/dsfr/DsfrTranscription.svelte +2962 -0
- package/dist/dsfr/DsfrTranscription.svelte.d.ts +39 -0
- package/dist/dsfr/DsfrTranslate.svelte +1384 -0
- package/dist/dsfr/DsfrTranslate.svelte.d.ts +19 -0
- package/dist/dsfr/DsfrUser.svelte +736 -0
- package/dist/dsfr/DsfrUser.svelte.d.ts +65 -0
- package/dist/index.d.ts +79 -0
- package/dist/index.js +79 -0
- package/dist/styles/apparence-bouton.scss +154 -0
- package/dist/styles/dsfr-icons.css +1 -0
- package/dist/styles/dsfr-icons.scss +4 -0
- package/dist/styles/dsfr-variables.scss +28 -0
- package/dist/styles/mixins-dsfr.scss +226 -0
- package/dist/styles/mixins.scss +51 -0
- package/dist/types/commun.d.ts +63 -0
- package/dist/types/commun.js +1 -0
- package/dist/types/global.d.ts +24 -0
- package/dist/types/global.js +9 -0
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.js +1 -0
- package/dist/ui-kit-components.json +142 -100
- package/dist/utilitaires/createFormValidation.svelte.d.ts +34 -0
- package/dist/utilitaires/createFormValidation.svelte.js +183 -0
- package/dist/utilitaires/icons-stylesheet.d.ts +370 -0
- package/dist/utilitaires/icons-stylesheet.js +33 -0
- package/dist/utilitaires/index.d.ts +14 -0
- package/dist/utilitaires/index.js +26 -0
- package/dist/web-types.json +149 -101
- package/dist/webcomponents/lab-anssi-ui-kit.iife.js +36 -9
- package/dist/webcomponents/lab-anssi-ui-kit.jsx.d.ts +42 -24
- package/package.json +49 -43
- package/dist/index.html +0 -0
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
import type { Size } from "../types";
|
|
2
|
+
type TableSize = Extract<Size, "sm" | "md" | "lg">;
|
|
3
|
+
type CellSize = Extract<Size, "xs" | "sm" | "md" | "lg">;
|
|
4
|
+
type CellAlign = "left" | "center" | "right";
|
|
5
|
+
type CellValign = "top" | "bottom";
|
|
6
|
+
type FixedBreakpoint = "sm" | "md" | "lg";
|
|
7
|
+
interface TheadCell {
|
|
8
|
+
/** Contenu textuel de la cellule */
|
|
9
|
+
content: string;
|
|
10
|
+
/** Largeur minimale de la colonne (fr-col--[size]) */
|
|
11
|
+
size?: CellSize;
|
|
12
|
+
/** Alignement horizontal du texte */
|
|
13
|
+
align?: CellAlign;
|
|
14
|
+
/** Alignement vertical du contenu */
|
|
15
|
+
valign?: CellValign;
|
|
16
|
+
/** Fixe la colonne en sticky. Passer un breakpoint pour l'activer uniquement à partir de celui-ci */
|
|
17
|
+
fixed?: boolean | FixedBreakpoint;
|
|
18
|
+
/** Indique que la colonne est triable (fr-cell--sort) */
|
|
19
|
+
sort?: boolean;
|
|
20
|
+
/** Affiche le contenu en flex inline (fr-cell--inline) */
|
|
21
|
+
inline?: boolean;
|
|
22
|
+
/** Autorise le retour à la ligne dans cette cellule (fr-cell--multiline) */
|
|
23
|
+
multiline?: boolean;
|
|
24
|
+
}
|
|
25
|
+
interface TbodyCell {
|
|
26
|
+
/** Contenu textuel de la cellule */
|
|
27
|
+
content: string;
|
|
28
|
+
/** Alignement horizontal du texte */
|
|
29
|
+
align?: CellAlign;
|
|
30
|
+
/** Alignement vertical du contenu */
|
|
31
|
+
valign?: CellValign;
|
|
32
|
+
/** Fixe la colonne en sticky. Passer un breakpoint pour l'activer uniquement à partir de celui-ci */
|
|
33
|
+
fixed?: boolean | FixedBreakpoint;
|
|
34
|
+
/** Affiche le contenu en flex inline (fr-cell--inline) */
|
|
35
|
+
inline?: boolean;
|
|
36
|
+
/** Autorise le retour à la ligne dans cette cellule (fr-cell--multiline) */
|
|
37
|
+
multiline?: boolean;
|
|
38
|
+
}
|
|
39
|
+
interface Table {
|
|
40
|
+
thead: TheadCell[][];
|
|
41
|
+
tbodies: TbodyCell[][][];
|
|
42
|
+
}
|
|
43
|
+
type Row = Record<string, unknown>;
|
|
44
|
+
interface Column {
|
|
45
|
+
key: string;
|
|
46
|
+
label: string;
|
|
47
|
+
size?: CellSize;
|
|
48
|
+
align?: CellAlign;
|
|
49
|
+
valign?: CellValign;
|
|
50
|
+
fixed?: boolean | FixedBreakpoint;
|
|
51
|
+
sort?: boolean;
|
|
52
|
+
inline?: boolean;
|
|
53
|
+
multiline?: boolean;
|
|
54
|
+
/**
|
|
55
|
+
* Active le slot nommé `cell:<key>:<rowIndex>` uniquement sur les cellules de cette colonne.
|
|
56
|
+
* Permet une activation granulaire de la personnalisation par light DOM, sans payer le coût
|
|
57
|
+
* d'un `<slot>` par cellule sur les colonnes qui n'en ont pas besoin.
|
|
58
|
+
*
|
|
59
|
+
* Cumulatif avec la prop globale `rich` : si l'une des deux est `true`, le slot est activé.
|
|
60
|
+
*/
|
|
61
|
+
rich?: boolean;
|
|
62
|
+
}
|
|
63
|
+
export interface Props {
|
|
64
|
+
/** Titre du tableau */
|
|
65
|
+
caption: string;
|
|
66
|
+
/** Id du tableau */
|
|
67
|
+
id?: string;
|
|
68
|
+
/** Description précise du tableau */
|
|
69
|
+
captionDetail?: string;
|
|
70
|
+
/** Cache le texte de la caption (reste présent pour l'accessibilité) */
|
|
71
|
+
noCaption?: boolean;
|
|
72
|
+
/** Positionne la caption en bas du tableau */
|
|
73
|
+
captionBottom?: boolean;
|
|
74
|
+
/** Ajoute des séparateurs verticaux entre chaque colonne */
|
|
75
|
+
bordered?: boolean;
|
|
76
|
+
/** Désactive le scroll horizontal */
|
|
77
|
+
noScroll?: boolean;
|
|
78
|
+
/** Active le retour à la ligne dans toutes les cellules du tableau */
|
|
79
|
+
multiline?: boolean;
|
|
80
|
+
/** Fixe la mise en page du tableau (table-layout: fixed) */
|
|
81
|
+
layoutFixed?: boolean;
|
|
82
|
+
/** Taille des espacements internes des cellules */
|
|
83
|
+
size?: TableSize;
|
|
84
|
+
/** Fixe la première cellule de l'en-tête en sticky */
|
|
85
|
+
fixedFirstCellHead?: boolean;
|
|
86
|
+
/** Affiche la section en-tête du tableau */
|
|
87
|
+
hasHeader?: boolean;
|
|
88
|
+
/** Affiche un contrôle segmenté dans l'en-tête */
|
|
89
|
+
hasHeaderSegmented?: boolean;
|
|
90
|
+
/** Affiche une barre de recherche dans l'en-tête */
|
|
91
|
+
hasHeaderSearch?: boolean;
|
|
92
|
+
/** Affiche un texte de détail dans l'en-tête */
|
|
93
|
+
hasHeaderDetails?: boolean;
|
|
94
|
+
/** Texte de détail affiché dans l'en-tête */
|
|
95
|
+
headerDetails?: string;
|
|
96
|
+
/** Affiche des boutons d'actions dans l'en-tête */
|
|
97
|
+
hasHeaderButtons?: boolean;
|
|
98
|
+
/** Affiche la section pied de page du tableau */
|
|
99
|
+
hasFooter?: boolean;
|
|
100
|
+
/** Affiche le sélecteur de nombre de lignes par page */
|
|
101
|
+
hasFooterSelect?: boolean;
|
|
102
|
+
/** Affiche la pagination */
|
|
103
|
+
hasFooterPagination?: boolean;
|
|
104
|
+
/** Affiche des boutons d'actions dans le pied de page */
|
|
105
|
+
hasFooterButtons?: boolean;
|
|
106
|
+
/** Données du tableau (source par défaut pour columns et rows) */
|
|
107
|
+
table?: Table;
|
|
108
|
+
/** Données des colonnes. Prends le pas sur `table.thead` si défini */
|
|
109
|
+
columns?: Column[];
|
|
110
|
+
/** Données des lignes. Prends le pas sur `table.tbodies` si défini */
|
|
111
|
+
rows?: Row[];
|
|
112
|
+
/** Options permettant de définir le nombre de lignes par page */
|
|
113
|
+
itemsPerPage?: number[];
|
|
114
|
+
/**
|
|
115
|
+
* Nombre total de lignes (mode pagination serveur).
|
|
116
|
+
* Si fourni, désactive le slicing interne : le composant affiche les `rows` telles quelles
|
|
117
|
+
* et délègue la gestion des données au parent via `onpagechanged` / `onrowsperpagechanged`.
|
|
118
|
+
*/
|
|
119
|
+
totalRows?: number;
|
|
120
|
+
/**
|
|
121
|
+
* Callback appelé lors d'un changement de page.
|
|
122
|
+
* En mode web component, un `CustomEvent<number>` `pagechanged` est également dispatché
|
|
123
|
+
* sur l'élément (utilisable via `<dsfr-table onpagechanged={(e) => …}>`).
|
|
124
|
+
*/
|
|
125
|
+
onpagechanged?: (page: number) => void;
|
|
126
|
+
/**
|
|
127
|
+
* Callback appelé lors d'un changement du nombre de lignes par page.
|
|
128
|
+
* En mode web component, un `CustomEvent<number>` `rowsperpagechanged` est également dispatché
|
|
129
|
+
* sur l'élément (utilisable via `<dsfr-table onrowsperpagechanged={(e) => …}>`).
|
|
130
|
+
*/
|
|
131
|
+
onrowsperpagechanged?: (rowsPerPage: number) => void;
|
|
132
|
+
/**
|
|
133
|
+
* Active les slots nommés `cell:<colKey>:<rowIndex>` sur **toutes** les cellules du tableau,
|
|
134
|
+
* permettant d'injecter du contenu personnalisé via le light DOM
|
|
135
|
+
* (ex: `<div slot="cell:maColonne:0">…</div>`).
|
|
136
|
+
*
|
|
137
|
+
* Utile principalement en contexte web component.
|
|
138
|
+
* Le rendu standard sert de fallback si aucun slot n'est fourni.
|
|
139
|
+
*
|
|
140
|
+
* ⚠️ Coût non-négligeable sur les gros tableaux : un `<slot>` est créé par cellule.
|
|
141
|
+
* Pour une activation ciblée par colonne (sans payer le coût sur les autres),
|
|
142
|
+
* utiliser plutôt `Column.rich` au cas par cas.
|
|
143
|
+
*/
|
|
144
|
+
rich?: boolean;
|
|
145
|
+
/**
|
|
146
|
+
* Active la variation sélectionnable : ajoute une colonne de cases à cocher en début de chaque ligne.
|
|
147
|
+
*/
|
|
148
|
+
selectable?: boolean;
|
|
149
|
+
/**
|
|
150
|
+
* Affiche une case à cocher « tout sélectionner » dans l'en-tête du tableau.
|
|
151
|
+
* Permet de sélectionner/désélectionner toutes les lignes de la page courante.
|
|
152
|
+
* L'état indéterminé s'active automatiquement quand une partie des lignes est sélectionnée.
|
|
153
|
+
* Nécessite `selectable` pour être actif.
|
|
154
|
+
*/
|
|
155
|
+
selectAll?: boolean;
|
|
156
|
+
/**
|
|
157
|
+
* Nom de la clé dans les objets `Row` à utiliser comme identifiant unique pour la sélection.
|
|
158
|
+
* Si absent, l'index de la ligne est utilisé.
|
|
159
|
+
*/
|
|
160
|
+
rowKey?: string;
|
|
161
|
+
/**
|
|
162
|
+
* Clés des lignes sélectionnées (mode contrôlé).
|
|
163
|
+
* Si fourni, le composant utilise cette valeur ; sinon, il gère sa propre sélection en interne.
|
|
164
|
+
*/
|
|
165
|
+
selectedRowKeys?: (string | number)[];
|
|
166
|
+
/**
|
|
167
|
+
* Clés des lignes désactivées.
|
|
168
|
+
* Les lignes désactivées ont leur case à cocher `disabled` et sont ignorées
|
|
169
|
+
* par la case « tout sélectionner ».
|
|
170
|
+
*/
|
|
171
|
+
disabledRowKeys?: (string | number)[];
|
|
172
|
+
/** Callback appelé lorsque la sélection change */
|
|
173
|
+
onselectionchanged?: (selectedKeys: (string | number)[], selectedRows: Row[]) => void;
|
|
174
|
+
}
|
|
175
|
+
interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
|
|
176
|
+
new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
|
|
177
|
+
$$bindings?: Bindings;
|
|
178
|
+
} & Exports;
|
|
179
|
+
(internal: unknown, props: Props & {
|
|
180
|
+
$$events?: Events;
|
|
181
|
+
$$slots?: Slots;
|
|
182
|
+
}): Exports & {
|
|
183
|
+
$set?: any;
|
|
184
|
+
$on?: any;
|
|
185
|
+
};
|
|
186
|
+
z_$$bindings?: Bindings;
|
|
187
|
+
}
|
|
188
|
+
declare const DsfrTable: $$__sveltets_2_IsomorphicComponent<Props, {
|
|
189
|
+
[evt: string]: CustomEvent<any>;
|
|
190
|
+
}, {
|
|
191
|
+
headersegmented: {};
|
|
192
|
+
headersearch: {};
|
|
193
|
+
headerbuttons: {};
|
|
194
|
+
tableheader: {};
|
|
195
|
+
tablecontent: {};
|
|
196
|
+
empty: {};
|
|
197
|
+
footerselect: {};
|
|
198
|
+
footerpagination: {};
|
|
199
|
+
footerbuttons: {};
|
|
200
|
+
}, {}, "">;
|
|
201
|
+
type DsfrTable = InstanceType<typeof DsfrTable>;
|
|
202
|
+
export default DsfrTable;
|