@lucca-front/ng 22.0.5 → 22.0.6-rc.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.
Files changed (264) hide show
  1. package/README.md +6 -0
  2. package/fesm2022/lucca-front-ng-approbation-inbox.mjs +5 -4
  3. package/fesm2022/lucca-front-ng-approbation-inbox.mjs.map +1 -1
  4. package/fesm2022/lucca-front-ng-dialog.mjs +22 -15
  5. package/fesm2022/lucca-front-ng-dialog.mjs.map +1 -1
  6. package/fesm2022/lucca-front-ng-filter-pills.mjs +4 -4
  7. package/fesm2022/lucca-front-ng-filter-pills.mjs.map +1 -1
  8. package/fesm2022/lucca-front-ng-scroll.mjs +2 -3
  9. package/fesm2022/lucca-front-ng-scroll.mjs.map +1 -1
  10. package/llms/SKILL.md +248 -0
  11. package/llms/references/components/activity-feed/activity-feed.component.md +292 -0
  12. package/llms/references/components/activity-feed/activity-feed.md +90 -0
  13. package/llms/references/components/animations/animations.component.md +11 -0
  14. package/llms/references/components/animations/animations.md +7 -0
  15. package/llms/references/components/api-select/api-select.md +40 -0
  16. package/llms/references/components/app-layout/app-layout.component.md +65 -0
  17. package/llms/references/components/app-layout/app-layout.md +81 -0
  18. package/llms/references/components/approbation-inbox/approbation-inbox.component.md +960 -0
  19. package/llms/references/components/approbation-inbox/approbation-inbox.md +135 -0
  20. package/llms/references/components/avatar/avatar.component.md +563 -0
  21. package/llms/references/components/avatar/avatar.md +93 -0
  22. package/llms/references/components/box/box.component.md +119 -0
  23. package/llms/references/components/box/box.md +88 -0
  24. package/llms/references/components/breadcrumbs/breadcrumbs.component.md +59 -0
  25. package/llms/references/components/breadcrumbs/breadcrumbs.md +87 -0
  26. package/llms/references/components/bubble-icon/bubble-icon.component.md +56 -0
  27. package/llms/references/components/bubble-icon/bubble-icon.md +72 -0
  28. package/llms/references/components/bubble-illustration/bubble-illustration.component.md +54 -0
  29. package/llms/references/components/bubble-illustration/bubble-illustration.md +77 -0
  30. package/llms/references/components/button/button.component.md +252 -0
  31. package/llms/references/components/button/button.md +124 -0
  32. package/llms/references/components/calendar/calendar.component.md +708 -0
  33. package/llms/references/components/calendar/calendar.md +104 -0
  34. package/llms/references/components/calendar2/calendar2.md +64 -0
  35. package/llms/references/components/callout/callout.component.md +237 -0
  36. package/llms/references/components/callout/callout.md +243 -0
  37. package/llms/references/components/callout-disclosure/callout-disclosure.component.md +230 -0
  38. package/llms/references/components/callout-disclosure/callout-disclosure.md +196 -0
  39. package/llms/references/components/callout-popover/callout-popover.component.md +170 -0
  40. package/llms/references/components/callout-popover/callout-popover.md +201 -0
  41. package/llms/references/components/card/card.component.md +62 -0
  42. package/llms/references/components/card/card.md +8 -0
  43. package/llms/references/components/checkbox/checkbox.component.md +50 -0
  44. package/llms/references/components/checkbox/checkbox.md +74 -0
  45. package/llms/references/components/chip/chip.component.md +131 -0
  46. package/llms/references/components/chip/chip.md +95 -0
  47. package/llms/references/components/clear/clear.component.md +38 -0
  48. package/llms/references/components/clear/clear.md +79 -0
  49. package/llms/references/components/code/code.component.md +33 -0
  50. package/llms/references/components/code/code.md +47 -0
  51. package/llms/references/components/color/color.md +32 -0
  52. package/llms/references/components/color-input/color-input.md +33 -0
  53. package/llms/references/components/color-picker/color-picker.component.md +29 -0
  54. package/llms/references/components/color-picker/color-picker.md +25 -0
  55. package/llms/references/components/comment/comment.component.md +436 -0
  56. package/llms/references/components/comment/comment.md +125 -0
  57. package/llms/references/components/container/container.component.md +41 -0
  58. package/llms/references/components/container/container.md +74 -0
  59. package/llms/references/components/core-select-department/core-select-department.md +37 -0
  60. package/llms/references/components/core-select-establishment/core-select-establishment.md +40 -0
  61. package/llms/references/components/core-select-job-qualification/core-select-job-qualification.md +25 -0
  62. package/llms/references/components/core-select-occupation-category/core-select-occupation-category.md +25 -0
  63. package/llms/references/components/core-select-user/core-select-user.md +75 -0
  64. package/llms/references/components/data-presentation/data-presentation.component.md +47 -0
  65. package/llms/references/components/data-presentation/data-presentation.md +49 -0
  66. package/llms/references/components/data-table/data-table.component.md +1603 -0
  67. package/llms/references/components/data-table/data-table.md +290 -0
  68. package/llms/references/components/date/date.component.md +31 -0
  69. package/llms/references/components/date/date.md +140 -0
  70. package/llms/references/components/dateinput/dateinput.component.md +99 -0
  71. package/llms/references/components/dateinput/dateinput.md +198 -0
  72. package/llms/references/components/daterangeinput/daterangeinput.component.md +49 -0
  73. package/llms/references/components/daterangeinput/daterangeinput.md +186 -0
  74. package/llms/references/components/departmentselect/departmentselect.component.md +43 -0
  75. package/llms/references/components/departmentselect/departmentselect.md +43 -0
  76. package/llms/references/components/dialog/dialog.component.md +462 -0
  77. package/llms/references/components/dialog/dialog.md +335 -0
  78. package/llms/references/components/divider/divider.component.md +35 -0
  79. package/llms/references/components/divider/divider.md +88 -0
  80. package/llms/references/components/dropdown/dropdown.component.md +272 -0
  81. package/llms/references/components/dropdown/dropdown.md +172 -0
  82. package/llms/references/components/duration-picker/duration-picker.md +155 -0
  83. package/llms/references/components/empty-state/empty-state.component.md +226 -0
  84. package/llms/references/components/empty-state/empty-state.md +62 -0
  85. package/llms/references/components/errorpage/errorpage.component.md +57 -0
  86. package/llms/references/components/errorpage/errorpage.md +75 -0
  87. package/llms/references/components/establishmentselect/establishmentselect.component.md +30 -0
  88. package/llms/references/components/establishmentselect/establishmentselect.md +42 -0
  89. package/llms/references/components/fancy-dialog/fancy-dialog.component.md +9 -0
  90. package/llms/references/components/fancy-dialog/fancy-dialog.md +107 -0
  91. package/llms/references/components/fancybox/fancybox.component.md +48 -0
  92. package/llms/references/components/fancybox/fancybox.md +75 -0
  93. package/llms/references/components/fieldset/fieldset.component.md +86 -0
  94. package/llms/references/components/fieldset/fieldset.md +119 -0
  95. package/llms/references/components/filedropzone/filedropzone.component.md +16 -0
  96. package/llms/references/components/filedropzone/filedropzone.md +61 -0
  97. package/llms/references/components/fileentry/fileentry.component.md +58 -0
  98. package/llms/references/components/fileentry/fileentry.md +246 -0
  99. package/llms/references/components/fileupload/fileupload.component.md +91 -0
  100. package/llms/references/components/fileupload/fileupload.md +246 -0
  101. package/llms/references/components/filterbar/filterbar.component.md +302 -0
  102. package/llms/references/components/filterbar/filterbar.md +134 -0
  103. package/llms/references/components/filterpills/filterpills.component.md +60 -0
  104. package/llms/references/components/filterpills/filterpills.md +180 -0
  105. package/llms/references/components/footer/footer.component.md +66 -0
  106. package/llms/references/components/footer/footer.md +115 -0
  107. package/llms/references/components/form/form.md +37 -0
  108. package/llms/references/components/form-field/form-field.component.md +46 -0
  109. package/llms/references/components/form-field/form-field.md +231 -0
  110. package/llms/references/components/form-header/form-header.md +29 -0
  111. package/llms/references/components/form-label/form-label.component.md +106 -0
  112. package/llms/references/components/form-label/form-label.md +98 -0
  113. package/llms/references/components/gauge/gauge.component.md +55 -0
  114. package/llms/references/components/gauge/gauge.md +73 -0
  115. package/llms/references/components/grid/grid.component.md +15 -0
  116. package/llms/references/components/grid/grid.md +112 -0
  117. package/llms/references/components/highlight-data/highlight-data.component.md +279 -0
  118. package/llms/references/components/highlight-data/highlight-data.md +115 -0
  119. package/llms/references/components/highlight-section/highlight-section.component.md +185 -0
  120. package/llms/references/components/highlight-section/highlight-section.md +48 -0
  121. package/llms/references/components/highlight-text/highlight-text.component.md +49 -0
  122. package/llms/references/components/highlight-text/highlight-text.md +29 -0
  123. package/llms/references/components/horizontalnavigation/horizontalnavigation.component.md +232 -0
  124. package/llms/references/components/horizontalnavigation/horizontalnavigation.md +95 -0
  125. package/llms/references/components/icons/icons.component.md +59 -0
  126. package/llms/references/components/icons/icons.md +185 -0
  127. package/llms/references/components/impersonation/impersonation.component.md +52 -0
  128. package/llms/references/components/impersonation/impersonation.md +52 -0
  129. package/llms/references/components/index-table/index-table.component.md +2528 -0
  130. package/llms/references/components/index-table/index-table.md +243 -0
  131. package/llms/references/components/inlinemessage/inlinemessage.component.md +58 -0
  132. package/llms/references/components/inlinemessage/inlinemessage.md +57 -0
  133. package/llms/references/components/input-framed/input-framed.component.md +714 -0
  134. package/llms/references/components/input-framed/input-framed.md +50 -0
  135. package/llms/references/components/link/link.component.md +153 -0
  136. package/llms/references/components/link/link.md +124 -0
  137. package/llms/references/components/listbox/listbox.component.md +11 -0
  138. package/llms/references/components/listbox/listbox.md +101 -0
  139. package/llms/references/components/listing/listing.component.md +366 -0
  140. package/llms/references/components/listing/listing.md +105 -0
  141. package/llms/references/components/loading/loading.component.md +37 -0
  142. package/llms/references/components/loading/loading.md +91 -0
  143. package/llms/references/components/main-layout/main-layout.component.md +146 -0
  144. package/llms/references/components/main-layout/main-layout.md +78 -0
  145. package/llms/references/components/mobile-push/mobile-push.component.md +62 -0
  146. package/llms/references/components/mobile-push/mobile-push.md +70 -0
  147. package/llms/references/components/mobileheader/mobileheader.component.md +31 -0
  148. package/llms/references/components/mobileheader/mobileheader.md +8 -0
  149. package/llms/references/components/mobilenavigation/mobilenavigation.component.md +43 -0
  150. package/llms/references/components/mobilenavigation/mobilenavigation.md +8 -0
  151. package/llms/references/components/modal/modal.component.md +37 -0
  152. package/llms/references/components/modal/modal.md +61 -0
  153. package/llms/references/components/multi-select/multi-select.component.md +39 -0
  154. package/llms/references/components/multi-select/multi-select.md +426 -0
  155. package/llms/references/components/multilanguagefield/multilanguagefield.component.md +84 -0
  156. package/llms/references/components/multilanguagefield/multilanguagefield.md +362 -0
  157. package/llms/references/components/newbadge/newbadge.component.md +23 -0
  158. package/llms/references/components/newbadge/newbadge.md +38 -0
  159. package/llms/references/components/number-format-input/number-format-input.md +46 -0
  160. package/llms/references/components/number-input/number-input.md +49 -0
  161. package/llms/references/components/numbers/numbers.component.md +46 -0
  162. package/llms/references/components/numbers/numbers.md +7 -0
  163. package/llms/references/components/numericbadge/numericbadge.component.md +66 -0
  164. package/llms/references/components/numericbadge/numericbadge.md +84 -0
  165. package/llms/references/components/onboarding-empty-state/onboarding-empty-state.md +47 -0
  166. package/llms/references/components/pageheader/pageheader.component.md +389 -0
  167. package/llms/references/components/pageheader/pageheader.md +144 -0
  168. package/llms/references/components/pagination/pagination.component.md +96 -0
  169. package/llms/references/components/pagination/pagination.md +107 -0
  170. package/llms/references/components/phonenumberfield/phonenumberfield.component.md +35 -0
  171. package/llms/references/components/phonenumberfield/phonenumberfield.md +131 -0
  172. package/llms/references/components/plg-push/plg-push.component.md +91 -0
  173. package/llms/references/components/plg-push/plg-push.md +82 -0
  174. package/llms/references/components/popover/popover.component.md +130 -0
  175. package/llms/references/components/popover/popover.md +235 -0
  176. package/llms/references/components/popover2/popover2.component.md +103 -0
  177. package/llms/references/components/popover2/popover2.md +89 -0
  178. package/llms/references/components/progress-bar/progress-bar.component.md +33 -0
  179. package/llms/references/components/progress-bar/progress-bar.md +51 -0
  180. package/llms/references/components/progress-stepper/progress-stepper.component.md +281 -0
  181. package/llms/references/components/progress-stepper/progress-stepper.md +70 -0
  182. package/llms/references/components/radiofield/radiofield.component.md +295 -0
  183. package/llms/references/components/radiofield/radiofield.md +122 -0
  184. package/llms/references/components/readmore/readmore.component.md +60 -0
  185. package/llms/references/components/readmore/readmore.md +88 -0
  186. package/llms/references/components/resource-card/resource-card.component.md +216 -0
  187. package/llms/references/components/resource-card/resource-card.md +106 -0
  188. package/llms/references/components/richtextinput/richtextinput.component.md +298 -0
  189. package/llms/references/components/richtextinput/richtextinput.md +275 -0
  190. package/llms/references/components/scroll/scroll.md +45 -0
  191. package/llms/references/components/scrollbox/scrollbox.component.md +63 -0
  192. package/llms/references/components/scrollbox/scrollbox.md +49 -0
  193. package/llms/references/components/section-empty-state/section-empty-state.component.md +9 -0
  194. package/llms/references/components/section-empty-state/section-empty-state.md +41 -0
  195. package/llms/references/components/segmented-control-tabs/segmented-control-tabs.md +50 -0
  196. package/llms/references/components/segmentedcontrol/segmentedcontrol.component.md +198 -0
  197. package/llms/references/components/segmentedcontrol/segmentedcontrol.md +108 -0
  198. package/llms/references/components/select/select.component.md +237 -0
  199. package/llms/references/components/select/select.md +57 -0
  200. package/llms/references/components/select-templating/select-templating.md +117 -0
  201. package/llms/references/components/sidepanel/sidepanel.component.md +56 -0
  202. package/llms/references/components/sidepanel/sidepanel.md +7 -0
  203. package/llms/references/components/simple-select/simple-select.component.md +39 -0
  204. package/llms/references/components/simple-select/simple-select.md +291 -0
  205. package/llms/references/components/skeleton/skeleton.component.md +133 -0
  206. package/llms/references/components/skeleton/skeleton.md +212 -0
  207. package/llms/references/components/skiplinks/skiplinks.component.md +91 -0
  208. package/llms/references/components/skiplinks/skiplinks.md +73 -0
  209. package/llms/references/components/software-icon/software-icon.component.md +61 -0
  210. package/llms/references/components/software-icon/software-icon.md +107 -0
  211. package/llms/references/components/sortable-list/sortable-list.component.md +141 -0
  212. package/llms/references/components/sortable-list/sortable-list.md +84 -0
  213. package/llms/references/components/statusbadge/statusbadge.component.md +56 -0
  214. package/llms/references/components/statusbadge/statusbadge.md +63 -0
  215. package/llms/references/components/switchfield/switchfield.component.md +114 -0
  216. package/llms/references/components/switchfield/switchfield.md +56 -0
  217. package/llms/references/components/tableofcontent/tableofcontent.component.md +55 -0
  218. package/llms/references/components/tableofcontent/tableofcontent.md +41 -0
  219. package/llms/references/components/tags/tags.component.md +112 -0
  220. package/llms/references/components/tags/tags.md +115 -0
  221. package/llms/references/components/text-flow/text-flow.component.md +71 -0
  222. package/llms/references/components/text-flow/text-flow.md +63 -0
  223. package/llms/references/components/textareafield/textareafield.component.md +69 -0
  224. package/llms/references/components/textareafield/textareafield.md +113 -0
  225. package/llms/references/components/textfield/textfield.component.md +617 -0
  226. package/llms/references/components/textfield/textfield.md +161 -0
  227. package/llms/references/components/tile/tile.component.md +91 -0
  228. package/llms/references/components/tile/tile.md +92 -0
  229. package/llms/references/components/time/time.component.md +270 -0
  230. package/llms/references/components/time/time.md +127 -0
  231. package/llms/references/components/time-picker/time-picker.md +63 -0
  232. package/llms/references/components/timelines/timelines.component.md +159 -0
  233. package/llms/references/components/timelines/timelines.md +8 -0
  234. package/llms/references/components/title-and-text/title-and-text.component.md +14 -0
  235. package/llms/references/components/title-and-text/title-and-text.md +60 -0
  236. package/llms/references/components/toasts/toasts.component.md +54 -0
  237. package/llms/references/components/toasts/toasts.md +112 -0
  238. package/llms/references/components/tooltip/tooltip.component.md +86 -0
  239. package/llms/references/components/tooltip/tooltip.md +217 -0
  240. package/llms/references/components/treeselect/treeselect.component.md +62 -0
  241. package/llms/references/components/treeselect/treeselect.md +58 -0
  242. package/llms/references/components/user-select/user-select.md +52 -0
  243. package/llms/references/components/userpopover/userpopover.component.md +50 -0
  244. package/llms/references/components/userpopover/userpopover.md +136 -0
  245. package/llms/references/components/verticalnavigation/verticalnavigation.component.md +236 -0
  246. package/llms/references/components/verticalnavigation/verticalnavigation.md +115 -0
  247. package/llms/references/migrations.md +32 -0
  248. package/llms/references/tools/angular-api.md +337 -0
  249. package/llms/references/tools/animations.md +173 -0
  250. package/llms/references/tools/mixins.md +106 -0
  251. package/llms/references/tools/numbers.md +81 -0
  252. package/llms/references/tools/scrollbox.md +59 -0
  253. package/llms/references/tools/utilitaires.md +951 -0
  254. package/llms/references/types/BubbleIllustration.md +5 -0
  255. package/llms/references/types/DecorativePalette.md +5 -0
  256. package/llms/references/types/Gap.md +5 -0
  257. package/llms/references/types/HighlightDataIllustration.md +5 -0
  258. package/llms/references/types/HighlightSectionIllustration.md +5 -0
  259. package/llms/references/types/LuccaIcon.md +5 -0
  260. package/llms/references/types/MainLayoutIllustrationEndStart.md +5 -0
  261. package/llms/references/types/MainLayoutIllustrationStartEnd.md +5 -0
  262. package/llms.txt +221 -0
  263. package/package.json +12 -6
  264. package/types/lucca-front-ng-approbation-inbox.d.ts +3 -3
@@ -0,0 +1,2528 @@
1
+ # index-table — Code & Implementation
2
+
3
+ 📖 [Storybook documentation](https://lucca-front.lucca.io/v22.0.0/storybook/?path=/docs/documentation-listings-index-table-angular-actions--docs)
4
+
5
+ ## Angular
6
+
7
+ Component selector : `lu-index-table`
8
+
9
+ Le comportement *responsive* du composant n’est pas encore pris en charge dans sa version Angular.
10
+
11
+ ### Lien vers un nouvelle page
12
+
13
+ Dans un tableau, privilégiez l'attribut `external` sur vos liens. L'icône associée n'est alors visible qu'au survol : le tableau la masque automatiquement pour ne pas surcharger des cellules souvent denses.
14
+
15
+ ### Actions
16
+
17
+ ```js
18
+ import { provideHttpClient } from '@angular/common/http';
19
+ import { provideAnimations } from '@angular/platform-browser/animations';
20
+ import { ButtonComponent } from '@lucca-front/ng/button';
21
+ import { DropdownActionComponent, DropdownGroupComponent, DropdownItemComponent, DropdownMenuComponent, LuDropdownTriggerDirective } from '@lucca-front/ng/dropdown';
22
+ import { IconComponent } from '@lucca-front/ng/icon';
23
+ import { IndexTableActionComponent, IndexTableBodyComponent, IndexTableComponent, IndexTableFootComponent, IndexTableHeadComponent, IndexTableRowCellComponent, IndexTableRowCellHeaderComponent, IndexTableRowComponent } from '@lucca-front/ng/index-table';
24
+ import { PaginationComponent } from '@lucca-front/ng/pagination';
25
+ import { LuTooltipModule } from '@lucca-front/ng/tooltip';
26
+ import { LuUserDisplayModule } from '@lucca-front/ng/user';
27
+ import { LuUserPopoverComponent, LuUserPopoverDirective } from '@lucca-front/ng/user-popover';
28
+ ```
29
+
30
+ ```html
31
+ <lu-index-table>
32
+ <thead luIndexTableHead>
33
+ <tr luIndexTableRow>
34
+ <th luIndexTableCell>Label</th>
35
+ <th luIndexTableCell>Label</th>
36
+ <th luIndexTableCell actions>Label</th>
37
+ </tr>
38
+ </thead>
39
+ <tbody luIndexTableBody>
40
+ <tr luIndexTableRow>
41
+ <th luIndexTableCell><a href="#" luIndexTableAction>Content</a></th>
42
+ <td luIndexTableCell>Content Content Content</td>
43
+ <td luIndexTableCell align="end">
44
+ <button type="button" luButton luTooltip="Supprimer" luTooltipOnlyForDisplay>
45
+ <lu-icon icon="trash" alt="Supprimer" />
46
+ </button>
47
+ <button type="button" luButton luTooltip="Modifier" luTooltipOnlyForDisplay>
48
+ <lu-icon icon="officePen" alt="Modifier" />
49
+ </button>
50
+ </td>
51
+ </tr>
52
+ </tbody>
53
+ </lu-index-table>
54
+ ```
55
+
56
+ ### Basic
57
+
58
+ ```js
59
+ import { HttpClientModule, provideHttpClient } from '@angular/common/http';
60
+ import { provideAnimations } from '@angular/platform-browser/animations';
61
+ import { ButtonComponent } from '@lucca-front/ng/button';
62
+ import { EmptyStateSectionComponent } from '@lucca-front/ng/empty-state';
63
+ import { INDEX_TABLE_ALIGN, INDEX_TABLE_SORT, IndexTableActionComponent, IndexTableActionFileComponent, IndexTableBodyComponent, IndexTableComponent, IndexTableFootComponent, IndexTableHeadComponent, IndexTableRowCellComponent, IndexTableRowCellHeaderComponent, IndexTableRowComponent } from '@lucca-front/ng/index-table';
64
+ import { NumericBadgeComponent } from '@lucca-front/ng/numeric-badge';
65
+ import { PaginationComponent } from '@lucca-front/ng/pagination';
66
+ import { LuUserDisplayModule } from '@lucca-front/ng/user';
67
+ import { LuUserPopoverComponent, LuUserPopoverDirective } from '@lucca-front/ng/user-popover';
68
+ ```
69
+
70
+ ```html
71
+ <lu-index-table>
72
+ <thead luIndexTableHead>
73
+ <tr luIndexTableRow>
74
+ <th luIndexTableCell>Label</th>
75
+ <th luIndexTableCell>Label</th>
76
+ <th luIndexTableCell>Label</th>
77
+ </tr>
78
+ </thead>
79
+ <tbody luIndexTableBody>
80
+ <tr luIndexTableRow>
81
+ <th luIndexTableCell>
82
+ <a luIndexTableAction href="#">link</a>
83
+ </th>
84
+ <td luIndexTableCell>Content</td>
85
+ <td luIndexTableCell>Content</td>
86
+ </tr>
87
+ <tr luIndexTableRow>
88
+ <td luIndexTableCell colspan="3">Content</td>
89
+ </tr>
90
+ <tr luIndexTableRow>
91
+ <th luIndexTableCell><a href="#" luIndexTableAction>Content</a></th>
92
+ <td luIndexTableCell>Content</td>
93
+ <td luIndexTableCell>Content Content Content</td>
94
+ </tr>
95
+ </tbody>
96
+ </lu-index-table>
97
+ ```
98
+
99
+ ### Scrollbox
100
+
101
+ ```js
102
+ import { IndexTableBodyComponent, IndexTableComponent, IndexTableHeadComponent, IndexTableRowCellComponent, IndexTableRowCellHeaderComponent, IndexTableRowComponent } from '@lucca-front/ng/index-table';
103
+ import { PaginationComponent } from '@lucca-front/ng/pagination';
104
+ import { ScrollBoxComponent } from '@lucca-front/ng/scroll-box';
105
+ ```
106
+
107
+ ```html
108
+ <lu-scroll-box>
109
+ <lu-index-table>
110
+ <thead luIndexTableHead>
111
+ <tr luIndexTableRow>
112
+ <th luIndexTableCell>Label</th>
113
+ <th luIndexTableCell>Label</th>
114
+ <th luIndexTableCell>Label</th>
115
+ <th luIndexTableCell>Label</th>
116
+ <th luIndexTableCell>Label</th>
117
+ <th luIndexTableCell>Label</th>
118
+ <th luIndexTableCell>Label</th>
119
+ <th luIndexTableCell>Label</th>
120
+ </tr>
121
+ </thead>
122
+ <tbody luIndexTableBody>
123
+ <tr luIndexTableRow>
124
+ <td luIndexTableCell>Content</td>
125
+ <td luIndexTableCell>Content</td>
126
+ <td luIndexTableCell>Content</td>
127
+ <td luIndexTableCell>Content</td>
128
+ <td luIndexTableCell>Content</td>
129
+ <td luIndexTableCell>Content</td>
130
+ <td luIndexTableCell>Content</td>
131
+ <td luIndexTableCell>Content</td>
132
+ </tr>
133
+ <tr luIndexTableRow>
134
+ <td luIndexTableCell>Content</td>
135
+ <td luIndexTableCell>Content</td>
136
+ <td luIndexTableCell>Content</td>
137
+ <td luIndexTableCell>Content</td>
138
+ <td luIndexTableCell>Content</td>
139
+ <td luIndexTableCell>Content</td>
140
+ <td luIndexTableCell>Content</td>
141
+ <td luIndexTableCell>Content</td>
142
+ </tr>
143
+ <tr luIndexTableRow>
144
+ <td luIndexTableCell>Content</td>
145
+ <td luIndexTableCell>Content</td>
146
+ <td luIndexTableCell>Content</td>
147
+ <td luIndexTableCell>Content</td>
148
+ <td luIndexTableCell>Content</td>
149
+ <td luIndexTableCell>Content</td>
150
+ <td luIndexTableCell>Content</td>
151
+ <td luIndexTableCell>Content</td>
152
+ </tr>
153
+ </tbody>
154
+ </lu-index-table>
155
+ </lu-scroll-box>
156
+ ```
157
+
158
+ ### Tooltips
159
+
160
+ ```js
161
+ import { ButtonComponent } from '@lucca-front/ng/button';
162
+ import { IconComponent } from '@lucca-front/ng/icon';
163
+ import { IndexTableActionComponent, IndexTableBodyComponent, IndexTableComponent, IndexTableFootComponent, IndexTableHeadComponent, IndexTableRowCellComponent, IndexTableRowCellHeaderComponent, IndexTableRowComponent } from '@lucca-front/ng/index-table';
164
+ import { LuTooltipModule } from '@lucca-front/ng/tooltip';
165
+ ```
166
+
167
+ ```html
168
+ <lu-index-table layoutFixed>
169
+ <thead luIndexTableHead>
170
+ <tr luIndexTableRow>
171
+ <th luIndexTableCell>Action</th>
172
+ <th luIndexTableCell>Content</th>
173
+ <th luIndexTableCell>Content</th>
174
+ <th luIndexTableCell>Content</th>
175
+ <th luIndexTableCell>Content</th>
176
+ <th luIndexTableCell actions>Secondary action</th>
177
+ </tr>
178
+ </thead>
179
+ <tbody luIndexTableBody>
180
+ <tr luIndexTableRow #line1>
181
+ <th luIndexTableCell>
182
+ <a href="#" luIndexTableAction class="pr-u-ellipsis" luTooltip="Primary action" [luTooltipAnchor]="line1">
183
+ Tooltip for the row
184
+ <code class="code">a</code>
185
+ </a>
186
+ </th>
187
+ <td luIndexTableCell>
188
+ <div class="pr-u-ellipsis pr-u-focusVisible pr-u-borderRadiusSmall" luTooltip luTooltipWhenEllipsis>
189
+ Tooltip when ellipsis
190
+ </div>
191
+ </td>
192
+ <td luIndexTableCell selectable>Selectable</td>
193
+ <td luIndexTableCell>
194
+ <div
195
+ class="pr-u-ellipsis pr-u-widthFitContent pr-u-focusVisible pr-u-borderRadiusM"
196
+ luTooltip="Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."
197
+ >
198
+ Tooltip
199
+ </div>
200
+ </td>
201
+ <td luIndexTableCell>Content</td>
202
+ <td luIndexTableCell align="end">
203
+ <button luButton luTooltip="Secondary action" luTooltipOnlyForDisplay type="button">
204
+ <lu-icon icon="trashDelete" alt="Supprimer" />
205
+ </button>
206
+ </td>
207
+ </tr>
208
+ </tbody>
209
+ </lu-index-table>
210
+ ```
211
+
212
+ ## HTML/CSS
213
+
214
+ Classe CSS : `.indexTable`
215
+
216
+ Le lien (ou bouton) redirigeant vers la version plus détaillée d'une ligne de l'indexTable doit être renseigné sur l'élément `indexTable-body-row-cell-link`. Ce lien est automatiquement étendu sur toute les cellules de la ligne pour les interactions au clic et prend le focus à la navigation clavier.
217
+
218
+ ### Table actions dropdown
219
+
220
+ <callout background="1">
221
+
222
+ Le clic sur la cellule est automatiquement désactivée par le bouton d'action. Il est possible de récupérer ce clic en ajoutant `(click)="..."` sur les `td` concernés.
223
+
224
+ </callout>
225
+
226
+ ```css
227
+ @forward '@lucca-front/scss/src/components/indexTable';
228
+ @forward '@lucca-front/scss/src/components/button';
229
+ ```
230
+
231
+ ```html
232
+ <table class="indexTable">
233
+ <thead class="indexTable-head">
234
+ <tr class="indexTable-head-row">
235
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
236
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
237
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
238
+ <th class="indexTable-head-row-cell" scope="col">
239
+ <span class="pr-u-mask">Actions</span>
240
+ </th>
241
+ </tr>
242
+ </thead>
243
+ <tbody class="indexTable-body">
244
+ <tr class="indexTable-body-row">
245
+ <td class="indexTable-body-row-cell">
246
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
247
+ </td>
248
+ <td class="indexTable-body-row-cell">Content</td>
249
+ <td class="indexTable-body-row-cell">Content</td>
250
+ <td class="indexTable-body-row-cell mod-actions">
251
+ <button type="button" class="button mod-ghost mod-onlyIcon mod-S">
252
+ <span aria-hidden="true" class="lucca-icon icon-ellipsis"></span>
253
+ </button>
254
+ </td>
255
+ </tr>
256
+ </tbody>
257
+ </table>
258
+ ```
259
+
260
+ ### Table actions selectable
261
+
262
+ ```css
263
+ @forward '@lucca-front/scss/src/components/indexTable';
264
+ ```
265
+
266
+ ```html
267
+ <table class="indexTable">
268
+ <thead class="indexTable-head">
269
+ <tr class="indexTable-head-row">
270
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
271
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
272
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
273
+ </tr>
274
+ </thead>
275
+ <tbody class="indexTable-body">
276
+ <tr class="indexTable-body-row">
277
+ <td class="indexTable-body-row-cell">
278
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
279
+ </td>
280
+ <td class="indexTable-body-row-cell mod-allowTextSelection">Content selectable</td>
281
+ <td class="indexTable-body-row-cell">Content</td>
282
+ </tr>
283
+ <tr class="indexTable-body-row">
284
+ <td class="indexTable-body-row-cell">
285
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
286
+ </td>
287
+ <td class="indexTable-body-row-cell"><a href="#">Content actionable</a></td>
288
+ <td class="indexTable-body-row-cell">Content</td>
289
+ </tr>
290
+ </tbody>
291
+ </table>
292
+ ```
293
+
294
+ ### Table actions subAction
295
+
296
+ <callout background="1">
297
+
298
+ Le clic sur la cellule est automatiquement désactivée par le bouton d'action. Il est possible de récupérer ce clic en ajoutant `(click)="..."` sur les `td` concernés.
299
+
300
+ </callout>
301
+
302
+ ```css
303
+ @forward '@lucca-front/scss/src/components/indexTable';
304
+ @forward '@lucca-front/scss/src/components/button';
305
+ ```
306
+
307
+ ```html
308
+ <table class="indexTable">
309
+ <thead class="indexTable-head">
310
+ <tr class="indexTable-head-row">
311
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
312
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
313
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
314
+ <th class="indexTable-head-row-cell" scope="col">
315
+ <span class="pr-u-mask">Actions</span>
316
+ </th>
317
+ </tr>
318
+ </thead>
319
+ <tbody class="indexTable-body">
320
+ <tr class="indexTable-body-row">
321
+ <td class="indexTable-body-row-cell">
322
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
323
+ </td>
324
+ <td class="indexTable-body-row-cell">Content</td>
325
+ <td class="indexTable-body-row-cell">Content</td>
326
+ <td class="indexTable-body-row-cell mod-actions">
327
+ <button type="button" class="button">
328
+ <span aria-hidden="true" class="lucca-icon icon-copy"></span>
329
+ <span class="pr-u-mask">Copy</span>
330
+ </button>
331
+ <button type="button" class="button">
332
+ <span aria-hidden="true" class="lucca-icon icon-officePen"></span>
333
+ <span class="pr-u-mask">Edit</span>
334
+ </button>
335
+ <button type="button" class="button mod-critical">
336
+ <span aria-hidden="true" class="lucca-icon icon-trashDelete"></span>
337
+ <span class="pr-u-mask">Delete</span>
338
+ </button>
339
+ </td>
340
+ </tr>
341
+ </tbody>
342
+ </table>
343
+ ```
344
+
345
+ ### Table actions tooltipsCell
346
+
347
+ <callout background="1">
348
+
349
+ Le clic sur la cellule est automatiquement désactivée par le tooltip. Il est possible de récupérer ce clic en ajoutant `(click)="..."` sur les `td` concernés.
350
+
351
+ </callout>
352
+
353
+ ```css
354
+ @forward '@lucca-front/scss/src/components/indexTable';
355
+ @forward '@lucca-front/scss/src/components/button';
356
+ @forward '@lucca-front/scss/src/components/code';
357
+ ```
358
+
359
+ ```html
360
+ <table class="indexTable mod-layoutFixed">
361
+ <thead class="indexTable-head">
362
+ <tr class="indexTable-head-row">
363
+ <th class="indexTable-head-row-cell" scope="col">Action</th>
364
+ <th class="indexTable-head-row-cell" scope="col">Content</th>
365
+ <th class="indexTable-head-row-cell" scope="col">Content</th>
366
+ <th class="indexTable-head-row-cell" scope="col">Content</th>
367
+ <th class="indexTable-head-row-cell" scope="col" style="--components-indexTable-cell-fixed-width: 8">Content</th>
368
+ <th
369
+ class="indexTable-head-row-cell mod-alignRight"
370
+ scope="col"
371
+ style="--components-indexTable-cell-fixed-width: 3"
372
+ >
373
+ <span class="pr-u-mask">Secondary action</span>
374
+ </th>
375
+ </tr>
376
+ </thead>
377
+ <tbody class="indexTable-body">
378
+ <tr class="indexTable-body-row pr-u-cursorPointer" (click)="message('Primary action (on row)')">
379
+ <td class="indexTable-body-row-cell">
380
+ <!-- preventDefault is only here for demonstration -->
381
+ <a
382
+ href="#"
383
+ class="indexTable-body-row-cell-link"
384
+ (click)="$event.preventDefault(); $event.stopPropagation(); message('Primary action (on link)')"
385
+ >
386
+ <span class="pr-u-mask">See details</span>
387
+ </a>
388
+ <div
389
+ class="pr-u-ellipsis pr-u-widthFitContent pr-u-maxInlineSize100% pr-u-focusVisible pr-u-borderRadiusM"
390
+ luTooltip="Primary action (you can click)"
391
+ >
392
+ Tooltip for the cell
393
+ <code class="code">a</code>
394
+ </div>
395
+ </td>
396
+ <td class="indexTable-body-row-cell">
397
+ <div class="pr-u-ellipsis pr-u-focusVisible pr-u-borderRadiusSmall" luTooltip luTooltipWhenEllipsis>
398
+ Tooltip when ellipsis
399
+ </div>
400
+ </td>
401
+ <td
402
+ class="indexTable-body-row-cell pr-u-whiteSpaceNowrap mod-allowTextSelection pr-u-cursorDefault"
403
+ (click)="$event.stopPropagation()"
404
+ >
405
+ <span class="pr-u-cursorText">Selectable</span>
406
+ </td>
407
+ <td class="indexTable-body-row-cell">
408
+ <div
409
+ class="pr-u-ellipsis pr-u-widthFitContent pr-u-focusVisible pr-u-borderRadiusM"
410
+ luTooltip="Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."
411
+ >
412
+ Tooltip
413
+ </div>
414
+ </td>
415
+ <td class="indexTable-body-row-cell pr-u-whiteSpaceNowrap">Content</td>
416
+ <td class="indexTable-body-row-cell mod-alignRight mod-actions" (click)="$event.stopPropagation()">
417
+ <button
418
+ luTooltip="Secondary action (you can click)"
419
+ luTooltipOnlyForDisplay
420
+ (click)="message('Secondary action (on button)')"
421
+ type="button"
422
+ class="button mod-critical"
423
+ >
424
+ <span aria-hidden="true" class="lucca-icon icon-trashDelete"></span>
425
+ </button>
426
+ </td>
427
+ </tr>
428
+ <tr class="indexTable-body-row pr-u-cursorPointer" (click)="message('Primary action (on row)')">
429
+ <td class="indexTable-body-row-cell">
430
+ <button type="button" class="indexTable-body-row-cell-link"><span class="pr-u-mask">See details</span></button>
431
+ <div
432
+ class="pr-u-ellipsis pr-u-widthFitContent pr-u-maxInlineSize100% pr-u-focusVisible pr-u-borderRadiusM"
433
+ luTooltip="Primary action (you can click)"
434
+ >
435
+ Tooltip for the cell
436
+ <code class="code">button</code>
437
+ </div>
438
+ </td>
439
+ <td class="indexTable-body-row-cell">
440
+ <div class="pr-u-ellipsis pr-u-focusVisible pr-u-borderRadiusSmall" luTooltip luTooltipWhenEllipsis>
441
+ Tooltip when ellipsis
442
+ </div>
443
+ </td>
444
+ <td
445
+ class="indexTable-body-row-cell pr-u-whiteSpaceNowrap mod-allowTextSelection pr-u-cursorDefault"
446
+ (click)="$event.stopPropagation()"
447
+ >
448
+ <span class="pr-u-cursorText">Selectable</span>
449
+ </td>
450
+ <td class="indexTable-body-row-cell">
451
+ <div
452
+ class="pr-u-ellipsis pr-u-widthFitContent pr-u-focusVisible pr-u-borderRadiusM"
453
+ luTooltip="Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."
454
+ >
455
+ Tooltip
456
+ </div>
457
+ </td>
458
+ <td class="indexTable-body-row-cell pr-u-whiteSpaceNowrap">Content</td>
459
+ <td class="indexTable-body-row-cell mod-alignRight mod-actions">
460
+ <button
461
+ luTooltip="Secondary action (you can click)"
462
+ luTooltipOnlyForDisplay
463
+ (click)="$event.stopPropagation(); message('Secondary action (on button)')"
464
+ type="button"
465
+ class="button mod-critical"
466
+ >
467
+ <span aria-hidden="true" class="lucca-icon icon-trashDelete"></span>
468
+ </button>
469
+ </td>
470
+ </tr>
471
+ </tbody>
472
+ </table>
473
+ ```
474
+
475
+ ### Table actions tooltipsRow
476
+
477
+ <callout background="1">
478
+
479
+ Le clic sur la cellule est automatiquement désactivée par le tooltip. Il est possible de récupérer ce clic en ajoutant `(click)="..."` sur les `td` concernés.
480
+
481
+ </callout>
482
+
483
+ ```css
484
+ @forward '@lucca-front/scss/src/components/indexTable';
485
+ @forward '@lucca-front/scss/src/components/button';
486
+ @forward '@lucca-front/scss/src/components/code';
487
+ ```
488
+
489
+ ```html
490
+ <table class="indexTable mod-layoutFixed">
491
+ <thead class="indexTable-head">
492
+ <tr class="indexTable-head-row">
493
+ <th class="indexTable-head-row-cell" scope="col">Action</th>
494
+ <th class="indexTable-head-row-cell" scope="col">Content</th>
495
+ <th class="indexTable-head-row-cell" scope="col">Content</th>
496
+ <th class="indexTable-head-row-cell" scope="col">Content</th>
497
+ <th class="indexTable-head-row-cell" scope="col" style="--components-indexTable-cell-fixed-width: 8">Content</th>
498
+ <th
499
+ class="indexTable-head-row-cell mod-alignRight"
500
+ scope="col"
501
+ style="--components-indexTable-cell-fixed-width: 3"
502
+ >
503
+ <span class="pr-u-mask">Secondary action</span>
504
+ </th>
505
+ </tr>
506
+ </thead>
507
+ <tbody class="indexTable-body">
508
+ <tr class="indexTable-body-row pr-u-cursorPointer" #line1 (click)="message('Primary action (on row)')">
509
+ <td class="indexTable-body-row-cell">
510
+ <!-- preventDefault is only here for demonstration -->
511
+ <a
512
+ href="#primaryNavigation"
513
+ luTooltip="Primary action (you can click)"
514
+ [luTooltipAnchor]="line1"
515
+ class="indexTable-body-row-cell-link pr-u-ellipsis"
516
+ (click)=" $event.preventDefault(); $event.stopPropagation(); message('Primary action (on link)')"
517
+ >
518
+ Tooltip for the row
519
+ <code class="code">a</code>
520
+ </a>
521
+ </td>
522
+ <td class="indexTable-body-row-cell">
523
+ <div class="pr-u-ellipsis pr-u-focusVisible pr-u-borderRadiusSmall" luTooltip luTooltipWhenEllipsis>
524
+ Tooltip when ellipsis
525
+ </div>
526
+ </td>
527
+ <td
528
+ class="indexTable-body-row-cell pr-u-whiteSpaceNowrap mod-allowTextSelection pr-u-cursorDefault"
529
+ (click)="$event.stopPropagation()"
530
+ >
531
+ <span class="pr-u-cursorText">Selectable</span>
532
+ </td>
533
+ <td class="indexTable-body-row-cell">
534
+ <div
535
+ class="pr-u-ellipsis pr-u-widthFitContent pr-u-focusVisible pr-u-borderRadiusM"
536
+ luTooltip="Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."
537
+ >
538
+ Tooltip
539
+ </div>
540
+ </td>
541
+ <td class="indexTable-body-row-cell pr-u-whiteSpaceNowrap">Content</td>
542
+ <td class="indexTable-body-row-cell mod-alignRight mod-actions">
543
+ <button
544
+ luTooltip="Secondary action (you can click)"
545
+ luTooltipOnlyForDisplay
546
+ (click)="$event.stopPropagation(); message('Secondary action (on button)')"
547
+ type="button"
548
+ class="button mod-critical"
549
+ >
550
+ <span aria-hidden="true" class="lucca-icon icon-trashDelete"></span>
551
+ </button>
552
+ </td>
553
+ </tr>
554
+ <tr class="indexTable-body-row pr-u-cursorPointer" #line2 (click)="message('Primary action (on row)')">
555
+ <td class="indexTable-body-row-cell">
556
+ <button
557
+ luTooltip="Primary action (you can click)"
558
+ [luTooltipAnchor]="line2"
559
+ type="button"
560
+ class="indexTable-body-row-cell-link pr-u-ellipsis"
561
+ >
562
+ Tooltip for the row
563
+ <code class="code">button</code>
564
+ </button>
565
+ </td>
566
+ <td class="indexTable-body-row-cell">
567
+ <div class="pr-u-ellipsis pr-u-focusVisible pr-u-borderRadiusSmall" luTooltip luTooltipWhenEllipsis>
568
+ Tooltip when ellipsis
569
+ </div>
570
+ </td>
571
+ <td
572
+ class="indexTable-body-row-cell pr-u-whiteSpaceNowrap mod-allowTextSelection pr-u-cursorDefault"
573
+ (click)="$event.stopPropagation()"
574
+ >
575
+ <span class="pr-u-cursorText">Selectable</span>
576
+ </td>
577
+ <td class="indexTable-body-row-cell">
578
+ <div
579
+ class="pr-u-ellipsis pr-u-widthFitContent pr-u-focusVisible pr-u-borderRadiusM"
580
+ luTooltip="Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."
581
+ >
582
+ Tooltip
583
+ </div>
584
+ </td>
585
+ <td class="indexTable-body-row-cell pr-u-whiteSpaceNowrap">Content</td>
586
+ <td class="indexTable-body-row-cell mod-alignRight mod-actions">
587
+ <button
588
+ luTooltip="Secondary action (you can click)"
589
+ luTooltipOnlyForDisplay
590
+ (click)="$event.stopPropagation(); message('Secondary action (on button)')"
591
+ type="button"
592
+ class="button mod-critical"
593
+ >
594
+ <span aria-hidden="true" class="lucca-icon icon-trashDelete"></span>
595
+ </button>
596
+ </td>
597
+ </tr>
598
+ </tbody>
599
+ </table>
600
+ ```
601
+
602
+ ### Table actions userPopover
603
+
604
+ ```css
605
+ @forward '@lucca-front/scss/src/components/indexTable';
606
+ ```
607
+
608
+ ```html
609
+ <table class="indexTable">
610
+ <thead class="indexTable-head">
611
+ <tr class="indexTable-head-row">
612
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
613
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
614
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
615
+ </tr>
616
+ </thead>
617
+ <tbody class="indexTable-body">
618
+ <tr class="indexTable-body-row">
619
+ <td class="indexTable-body-row-cell">
620
+ <button class="indexTable-body-row-cell-link" type="button"><span class="pr-u-mask">See details</span></button>
621
+ <button class="userPopover_trigger" [luUserPopover]="bob">
622
+ <span>
623
+ <lu-user-picture size="XS" [user]="bob" />
624
+ <span translate="no" class="pr-u-marginInlineStart100">{{ bob | luUserDisplay:'lf' }}</span>
625
+ with userPopover
626
+ </span>
627
+ </button>
628
+ </td>
629
+ <td class="indexTable-body-row-cell">Content</td>
630
+ <td class="indexTable-body-row-cell">Content</td>
631
+ </tr>
632
+ </tbody>
633
+ </table>
634
+ ```
635
+
636
+ ### Table basic
637
+
638
+ ```css
639
+ @forward '@lucca-front/scss/src/components/indexTable';
640
+ @forward '@lucca-front/scss/src/components/code';
641
+ ```
642
+
643
+ ```html
644
+ <table class="indexTable">
645
+ <thead class="indexTable-head">
646
+ <tr class="indexTable-head-row">
647
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
648
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
649
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
650
+ </tr>
651
+ </thead>
652
+ <tbody class="indexTable-body">
653
+ <tr class="indexTable-body-row">
654
+ <td class="indexTable-body-row-cell">
655
+ <a href="#" class="indexTable-body-row-cell-link">
656
+ Content
657
+ <code class="code">a</code>
658
+ </a>
659
+ </td>
660
+ <td class="indexTable-body-row-cell">Content</td>
661
+ <td class="indexTable-body-row-cell">Content</td>
662
+ </tr>
663
+ <tr class="indexTable-body-row">
664
+ <td class="indexTable-body-row-cell">Content</td>
665
+ <td class="indexTable-body-row-cell">Content</td>
666
+ <td class="indexTable-body-row-cell">
667
+ <a href="#" class="indexTable-body-row-cell-link">
668
+ Content
669
+ <code class="code">a</code>
670
+ </a>
671
+ </td>
672
+ </tr>
673
+ <tr class="indexTable-body-row">
674
+ <td class="indexTable-body-row-cell">
675
+ <button type="button" class="indexTable-body-row-cell-link">
676
+ Content
677
+ <code class="code">button</code>
678
+ </button>
679
+ </td>
680
+ <td class="indexTable-body-row-cell">Content</td>
681
+ <td class="indexTable-body-row-cell">Content</td>
682
+ </tr>
683
+ </tbody>
684
+ </table>
685
+ ```
686
+
687
+ ### Table empty state
688
+
689
+ ```css
690
+ @forward '@lucca-front/scss/src/components/indexTable';
691
+ @forward '@lucca-front/scss/src/components/bubbleIllustration';
692
+ @forward '@lucca-front/scss/src/components/emptyState';
693
+ ```
694
+
695
+ ```html
696
+ <table class="indexTable" role="presentation">
697
+ <thead class="indexTable-head" inert="inert">
698
+ <tr class="indexTable-head-row">
699
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
700
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
701
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
702
+ </tr>
703
+ </thead>
704
+ <tbody class="indexTable-body">
705
+ <tr class="indexTable-body-row">
706
+ <td class="indexTable-body-row-cell" colspan="3">
707
+ <section class="emptyState">
708
+ <div class="emptyState-container">
709
+ <div class="emptyState-content">
710
+ <div class="emptyState-content-icon" aria-hidden="true">
711
+ <span
712
+ class="bubbleIllustration mod-L"
713
+ aria-hidden="true"
714
+ [innerHtml]="'https://cdn.lucca.fr/transverse/prisme/visuals/bubble-illustration/magnifyingGlass.svg' | luSafeExternalSvg"
715
+ ></span>
716
+ </div>
717
+ <div class="emptyState-content-text">
718
+ <h3 class="emptyState-content-heading">Empty State</h3>
719
+ <p class="emptyState-content-description">
720
+ Flatus obsequiorum potest inanes pomerium obsequiorum credi homines vero caelibes orbos potest vile
721
+ diversitate flatus.
722
+ </p>
723
+ </div>
724
+ </div>
725
+ </div>
726
+ </section>
727
+ </td>
728
+ </tr>
729
+ </tbody>
730
+ </table>
731
+ ```
732
+
733
+ ### Table footer
734
+
735
+ ```css
736
+ @forward '@lucca-front/scss/src/components/indexTable';
737
+ ```
738
+
739
+ ```html
740
+ <table class="indexTable">
741
+ <thead class="indexTable-head">
742
+ <tr class="indexTable-head-row">
743
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
744
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
745
+ <th class="indexTable-head-row-cell mod-alignRight" scope="col">Amount</th>
746
+ </tr>
747
+ </thead>
748
+ <tbody class="indexTable-body">
749
+ <tr class="indexTable-body-row">
750
+ <td class="indexTable-body-row-cell">
751
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
752
+ </td>
753
+ <td class="indexTable-body-row-cell">Content</td>
754
+ <td class="indexTable-body-row-cell mod-alignRight">100,00 €</td>
755
+ </tr>
756
+ <tr class="indexTable-body-row">
757
+ <td class="indexTable-body-row-cell">
758
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
759
+ </td>
760
+ <td class="indexTable-body-row-cell">Content</td>
761
+ <td class="indexTable-body-row-cell mod-alignRight">50,00 €</td>
762
+ </tr>
763
+ </tbody>
764
+ <tfoot class="indexTable-foot">
765
+ <tr class="indexTable-foot-row">
766
+ <td class="indexTable-foot-row-cell" colspan="3">
767
+ Total:
768
+ <strong>150,00 €</strong>
769
+ </td>
770
+ </tr>
771
+ </tfoot>
772
+ </table>
773
+ <table class="indexTable">
774
+ <thead class="indexTable-head">
775
+ <tr class="indexTable-head-row">
776
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
777
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
778
+ <th class="indexTable-head-row-cell mod-alignRight" scope="col">Amount</th>
779
+ </tr>
780
+ </thead>
781
+ <tbody class="indexTable-body">
782
+ <tr class="indexTable-body-row">
783
+ <td class="indexTable-body-row-cell">
784
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
785
+ </td>
786
+ <td class="indexTable-body-row-cell">Content</td>
787
+ <td class="indexTable-body-row-cell mod-alignRight">126,00 €</td>
788
+ </tr>
789
+ <tr class="indexTable-foot-row">
790
+ <td class="indexTable-foot-row-cell" colspan="3">
791
+ Total:
792
+ <strong>8074,8 €</strong>
793
+ </td>
794
+ </tr>
795
+ </tbody>
796
+ <tbody class="indexTable-body">
797
+ <tr class="indexTable-body-row">
798
+ <td class="indexTable-body-row-cell">
799
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
800
+ </td>
801
+ <td class="indexTable-body-row-cell">Content</td>
802
+ <td class="indexTable-body-row-cell mod-alignRight">133,00 €</td>
803
+ </tr>
804
+ <tr class="indexTable-foot-row">
805
+ <td class="indexTable-foot-row-cell" colspan="3">
806
+ Total:
807
+ <strong>133,00 €</strong>
808
+ </td>
809
+ </tr>
810
+ </tbody>
811
+ </table>
812
+ ```
813
+
814
+ ### Table input
815
+
816
+ ```css
817
+ @forward '@lucca-front/scss/src/components/indexTable';
818
+ ```
819
+
820
+ ```html
821
+ <table class="indexTable mod-selectable">
822
+ <thead class="indexTable-head">
823
+ <tr class="indexTable-head-row">
824
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
825
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
826
+ </tr>
827
+ </thead>
828
+ <tbody class="indexTable-body">
829
+ <tr class="indexTable-body-row">
830
+ <td class="indexTable-body-row-cell">
831
+ <label class="indexTable-body-row-cell-link" for="myInput">
832
+ <span>Importer un ficher</span>
833
+ </label>
834
+ <input
835
+ id="myInput"
836
+ type="file"
837
+ accept=".pdf, .jpg, .jpeg, .png"
838
+ class="indexTable-body-row-cell-link pr-u-mask"
839
+ />
840
+ </td>
841
+ <td class="indexTable-body-row-cell">Content</td>
842
+ </tr>
843
+ </tbody>
844
+ </table>
845
+ ```
846
+
847
+ ### Table interactive nested selectable
848
+
849
+ ```css
850
+ @forward '@lucca-front/scss/src/components/indexTable';
851
+ @forward '@lucca-front/scss/src/components/button';
852
+ @forward '@lucca-front/scss/src/components/checkboxField';
853
+ @forward '@lucca-front/scss/src/components/formLabel';
854
+ @forward '@lucca-front/scss/src/components/numericBadge';
855
+ ```
856
+
857
+ ```html
858
+ <table class="indexTable mod-selectable">
859
+ <thead class="indexTable-head">
860
+ <tr class="indexTable-head-row">
861
+ <th class="indexTable-head-row-transparentCell" scope="col">
862
+ <label class="formLabel pr-u-mask" for="allchbx">Select all items</label>
863
+ <span class="checkboxField indexTable-head-row-cell-checkbox">
864
+ <input
865
+ class="checkboxField-input"
866
+ type="checkbox"
867
+ id="allchbx"
868
+ checked
869
+ aria-checked="mixed"
870
+ aria-controls="r0chbx r1chbx r2chbx r3chbx r4chbx r5chbx r6chbx r7chbx r8chbx"
871
+ (click)="toggleCheckbox($event, 'allchbx', '#r0chbx, #r1chbx, #r2chbx, #r3chbx, #r4chbx, #r5chbx, #r6chbx, #r7chbx, #r8chbx')"
872
+ />
873
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
874
+ </span>
875
+ </th>
876
+ <th class="indexTable-head-row-transparentCell" scope="col"></th>
877
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
878
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
879
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
880
+ </tr>
881
+ </thead>
882
+ <tbody class="indexTable-body">
883
+ <tr class="indexTable-body-row" id="r0">
884
+ <th class="indexTable-body-row-transparentCell">
885
+ <label class="formLabel pr-u-mask" for="r0chbx">Select all lines for 2021</label>
886
+ <span class="checkboxField indexTable-body-row-cell-checkbox">
887
+ <input
888
+ class="checkboxField-input"
889
+ checked
890
+ aria-checked="mixed"
891
+ type="checkbox"
892
+ id="r0chbx"
893
+ aria-controls="r1chbx r2chbx r3chbx r4chbx r5chbx"
894
+ (click)="toggleCheckbox($event, 'r0chbx', '#r1chbx, #r2chbx, #r3chbx, #r4chbx, #r5chbx')"
895
+ />
896
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
897
+ </span>
898
+ </th>
899
+ <th class="indexTable-body-row-transparentCell" colspan="4" id="y2021">
900
+ <div class="indexTable-body-row-cellTitle">
901
+ <button
902
+ class="indexTable-body-row-cellTitle-button button"
903
+ aria-expanded="true"
904
+ aria-controls="r1 r2 r3 r4 r5"
905
+ type="button"
906
+ (click)="toggleRows($event, 'r0btn', '#r1, #r2, #r3, #r4, #r5')"
907
+ id="r0btn"
908
+ >
909
+ <span class="lucca-icon icon-arrowChevronTop" aria-hidden="true"></span>
910
+ <span class="pr-u-mask">Hide details</span>
911
+ </button>
912
+ <span class="indexTable-body-row-cellTitle-title">2021</span>
913
+ <span class="numericBadge">
914
+ 3
915
+ <span class="pr-u-mask"> lines</span>
916
+ </span>
917
+ </div>
918
+ </th>
919
+ </tr>
920
+ <tr class="indexTable-body-row" id="r1">
921
+ <th class="indexTable-body-row-transparentCell" headers="y2021" colspan="2">
922
+ <label class="formLabel pr-u-mask" for="r1chbx">Select all items for september 2021</label>
923
+ <span class="checkboxField indexTable-body-row-cell-checkbox">
924
+ <input
925
+ class="checkboxField-input"
926
+ type="checkbox"
927
+ id="r1chbx"
928
+ aria-controls="r2chbx"
929
+ (click)="toggleCheckbox($event, 'r1chbx', '#r2chbx')"
930
+ />
931
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
932
+ </span>
933
+ </th>
934
+ <th class="indexTable-body-row-transparentCell" colspan="3" id="september" headers="y2021">
935
+ <div class="indexTable-body-row-cellTitle">
936
+ <button
937
+ class="indexTable-body-row-cellTitle-button button"
938
+ aria-expanded="true"
939
+ aria-controls="r2"
940
+ type="button"
941
+ (click)="toggleRows($event, 'r1btn', '#r2')"
942
+ id="r1btn"
943
+ >
944
+ <span class="lucca-icon icon-arrowChevronTop" aria-hidden="true"></span>
945
+ <span class="pr-u-mask">Hide details</span>
946
+ </button>
947
+ <span class="indexTable-body-row-cellTitle-title">September</span>
948
+ <span class="numericBadge">
949
+ 1
950
+ <span class="pr-u-mask"> line</span>
951
+ </span>
952
+ </div>
953
+ </th>
954
+ </tr>
955
+ <tr class="indexTable-body-row" id="r2">
956
+ <td class="indexTable-body-row-transparentCell" headers="y2021 september" colspan="2">
957
+ <label class="formLabel pr-u-mask" for="r2chbx">Select this item</label>
958
+ <span class="checkboxField indexTable-body-row-cell-checkbox">
959
+ <input class="checkboxField-input" type="checkbox" id="r2chbx" (click)="toggleCheckbox($event, 'r2chbx')" />
960
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
961
+ </span>
962
+ </td>
963
+ <td class="indexTable-body-row-cell" headers="y2021 september">
964
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
965
+ </td>
966
+ <td class="indexTable-body-row-cell" headers="y2021 september">Content</td>
967
+ <td class="indexTable-body-row-cell" headers="y2021 september">Content</td>
968
+ </tr>
969
+ <tr class="indexTable-body-row" id="r3">
970
+ <th class="indexTable-body-row-transparentCell" headers="y2021" colspan="2">
971
+ <label class="formLabel pr-u-mask" for="r3chbx">Select all items for october 2021</label>
972
+ <span class="checkboxField indexTable-body-row-cell-checkbox">
973
+ <input
974
+ class="checkboxField-input"
975
+ type="checkbox"
976
+ id="r3chbx"
977
+ aria-controls="r4chbx r5chbx"
978
+ (click)="toggleCheckbox($event, 'r3chbx', '#r4chbx, #r5chbx')"
979
+ checked
980
+ aria-checked="mixed"
981
+ />
982
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
983
+ </span>
984
+ </th>
985
+ <th class="indexTable-body-row-transparentCell" colspan="3" id="october" headers="y2021">
986
+ <div class="indexTable-body-row-cellTitle">
987
+ <button
988
+ class="indexTable-body-row-cellTitle-button button"
989
+ aria-expanded="true"
990
+ aria-controls="r4 r5"
991
+ type="button"
992
+ (click)="toggleRows($event, 'r3btn', '#r4, #r5')"
993
+ id="r3btn"
994
+ >
995
+ <span class="lucca-icon icon-arrowChevronTop" aria-hidden="true"></span>
996
+ <span class="pr-u-mask">Hide details</span>
997
+ </button>
998
+ <span class="indexTable-body-row-cellTitle-title">October</span>
999
+ <span class="numericBadge">
1000
+ 2
1001
+ <span class="pr-u-mask"> lines</span>
1002
+ </span>
1003
+ </div>
1004
+ </th>
1005
+ </tr>
1006
+ <tr class="indexTable-body-row" id="r4">
1007
+ <td class="indexTable-body-row-transparentCell" headers="y2021 october" colspan="2">
1008
+ <label class="formLabel pr-u-mask" for="r4chbx">Select this item</label>
1009
+ <span class="checkboxField indexTable-body-row-cell-checkbox">
1010
+ <input
1011
+ class="checkboxField-input"
1012
+ type="checkbox"
1013
+ checked
1014
+ id="r4chbx"
1015
+ (click)="toggleCheckbox($event, 'r4chbx')"
1016
+ />
1017
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
1018
+ </span>
1019
+ </td>
1020
+ <td class="indexTable-body-row-cell" headers="y2021 october">
1021
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
1022
+ </td>
1023
+ <td class="indexTable-body-row-cell" headers="y2021 october">Content</td>
1024
+ <td class="indexTable-body-row-cell" headers="y2021 october">Content</td>
1025
+ </tr>
1026
+ <tr class="indexTable-body-row" id="r5">
1027
+ <td class="indexTable-body-row-transparentCell" headers="y2021 october" colspan="2">
1028
+ <label class="formLabel pr-u-mask" for="r5chbx">Select this item</label>
1029
+ <span class="checkboxField indexTable-body-row-cell-checkbox">
1030
+ <input class="checkboxField-input" type="checkbox" id="r5chbx" (click)="toggleCheckbox($event, 'r5chbx')" />
1031
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
1032
+ </span>
1033
+ </td>
1034
+ <td class="indexTable-body-row-cell" headers="y2021 october">
1035
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
1036
+ </td>
1037
+ <td class="indexTable-body-row-cell" headers="y2021 october">Content</td>
1038
+ <td class="indexTable-body-row-cell" headers="y2021 october">Content</td>
1039
+ </tr>
1040
+ </tbody>
1041
+ <tbody class="indexTable-body">
1042
+ <tr class="indexTable-body-row" id="r6">
1043
+ <th class="indexTable-body-row-transparentCell">
1044
+ <label class="formLabel pr-u-mask" for="r6chbx">Select all items for 2022</label>
1045
+ <span class="checkboxField indexTable-body-row-cell-checkbox">
1046
+ <input
1047
+ class="checkboxField-input"
1048
+ type="checkbox"
1049
+ id="r6chbx"
1050
+ aria-controls="r7chbx r8chbx"
1051
+ (click)="toggleCheckbox($event, 'r6chbx', '#r7chbx, #r8chbx')"
1052
+ />
1053
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
1054
+ </span>
1055
+ </th>
1056
+ <th class="indexTable-body-row-transparentCell" colspan="4" id="y2022">
1057
+ <div class="indexTable-body-row-cellTitle">
1058
+ <button
1059
+ class="indexTable-body-row-cellTitle-button button"
1060
+ aria-expanded="true"
1061
+ aria-controls="r7 r8"
1062
+ type="button"
1063
+ (click)="toggleRows($event, 'r6btn', '#r7, #r8')"
1064
+ id="r6btn"
1065
+ >
1066
+ <span class="lucca-icon icon-arrowChevronTop" aria-hidden="true"></span>
1067
+ <span class="pr-u-mask">Hide details</span>
1068
+ </button>
1069
+ <span class="indexTable-body-row-cellTitle-title">2022</span>
1070
+ <span class="numericBadge">
1071
+ 1
1072
+ <span class="pr-u-mask"> line</span>
1073
+ </span>
1074
+ </div>
1075
+ </th>
1076
+ </tr>
1077
+ <tr class="indexTable-body-row" id="r7">
1078
+ <th class="indexTable-body-row-transparentCell" headers="y2022" colspan="2">
1079
+ <label class="formLabel pr-u-mask" for="r7chbx">Select all items for january 2022</label>
1080
+ <span class="checkboxField indexTable-body-row-cell-checkbox">
1081
+ <input
1082
+ class="checkboxField-input"
1083
+ type="checkbox"
1084
+ id="r7chbx"
1085
+ aria-controls="r8chbx"
1086
+ (click)="toggleCheckbox($event, 'r7chbx', '#r8chbx')"
1087
+ />
1088
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
1089
+ </span>
1090
+ </th>
1091
+ <th class="indexTable-body-row-transparentCell" colspan="3" id="january" headers="y2022">
1092
+ <div class="indexTable-body-row-cellTitle">
1093
+ <button
1094
+ class="indexTable-body-row-cellTitle-button button"
1095
+ aria-expanded="true"
1096
+ aria-controls="r8"
1097
+ type="button"
1098
+ (click)="toggleRows($event, 'r7btn', '#r8')"
1099
+ id="r7btn"
1100
+ >
1101
+ <span class="lucca-icon icon-arrowChevronTop" aria-hidden="true"></span>
1102
+ <span class="pr-u-mask">Hide details</span>
1103
+ </button>
1104
+ <span class="indexTable-body-row-cellTitle-title">January</span>
1105
+ <span class="numericBadge">
1106
+ 1
1107
+ <span class="pr-u-mask"> line</span>
1108
+ </span>
1109
+ </div>
1110
+ </th>
1111
+ </tr>
1112
+ <tr class="indexTable-body-row" id="r8">
1113
+ <td class="indexTable-body-row-transparentCell" headers="y2022 january" colspan="2">
1114
+ <label class="formLabel pr-u-mask" for="r8chbx">Select this item</label>
1115
+ <span class="checkboxField indexTable-body-row-cell-checkbox">
1116
+ <input class="checkboxField-input" type="checkbox" id="r8chbx" (click)="toggleCheckbox($event, 'r8chbx')" />
1117
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
1118
+ </span>
1119
+ </td>
1120
+ <td class="indexTable-body-row-cell" headers="y2022 january">
1121
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
1122
+ </td>
1123
+ <td class="indexTable-body-row-cell" headers="y2022 january">Content</td>
1124
+ <td class="indexTable-body-row-cell" headers="y2022 january">Content</td>
1125
+ </tr>
1126
+ </tbody>
1127
+ </table>
1128
+ ```
1129
+
1130
+ ### Table layout fixed responsive
1131
+
1132
+ ```css
1133
+ @forward '@lucca-front/scss/src/components/indexTable';
1134
+ ```
1135
+
1136
+ ```html
1137
+ <table class="indexTable mod-layoutFixedAtMediaMinS pr-u-marginBlockEnd300">
1138
+ <thead class="indexTable-head">
1139
+ <tr class="indexTable-head-row">
1140
+ <th class="indexTable-head-row-cell" scope="col" style="--components-indexTable-cell-fixed-width: 15">
1141
+ 15rem column
1142
+ </th>
1143
+ <th class="indexTable-head-row-cell" scope="col" style="--components-indexTable-cell-fixed-width: 10">
1144
+ 10rem column
1145
+ </th>
1146
+ <th class="indexTable-head-row-cell" scope="col" style="--components-indexTable-cell-fixed-width: 6">6rem col</th>
1147
+ <th class="indexTable-head-row-cell" scope="col">Auto width column</th>
1148
+ </tr>
1149
+ </thead>
1150
+ <tbody class="indexTable-body">
1151
+ <tr class="indexTable-body-row">
1152
+ <td class="indexTable-body-row-cell">
1153
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
1154
+ </td>
1155
+ <td class="indexTable-body-row-cell">Content</td>
1156
+ <td class="indexTable-body-row-cell">Content</td>
1157
+ <td class="indexTable-body-row-cell">Content content</td>
1158
+ </tr>
1159
+ <tr class="indexTable-body-row">
1160
+ <td class="indexTable-body-row-cell">
1161
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
1162
+ </td>
1163
+ <td class="indexTable-body-row-cell">Content</td>
1164
+ <td class="indexTable-body-row-cell">Content</td>
1165
+ <td class="indexTable-body-row-cell">Content content</td>
1166
+ </tr>
1167
+ <tr class="indexTable-body-row">
1168
+ <td class="indexTable-body-row-cell">
1169
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
1170
+ </td>
1171
+ <td class="indexTable-body-row-cell">Content</td>
1172
+ <td class="indexTable-body-row-cell">Content</td>
1173
+ <td class="indexTable-body-row-cell">Content content</td>
1174
+ </tr>
1175
+ </tbody>
1176
+ </table>
1177
+ ```
1178
+
1179
+ ### Table layout fixed
1180
+
1181
+ ```css
1182
+ @forward '@lucca-front/scss/src/components/indexTable';
1183
+ ```
1184
+
1185
+ ```html
1186
+ <table class="indexTable mod-layoutFixed">
1187
+ <thead class="indexTable-head">
1188
+ <tr class="indexTable-head-row">
1189
+ <th class="indexTable-head-row-cell" scope="col" style="--components-indexTable-cell-fixed-width: 15">
1190
+ 15rem column
1191
+ </th>
1192
+ <th class="indexTable-head-row-cell" scope="col" style="--components-indexTable-cell-fixed-width: 10">
1193
+ 10rem column
1194
+ </th>
1195
+ <th class="indexTable-head-row-cell" scope="col" style="--components-indexTable-cell-fixed-width: 6">6rem col</th>
1196
+ <th class="indexTable-head-row-cell" scope="col">Auto width column</th>
1197
+ </tr>
1198
+ </thead>
1199
+ <tbody class="indexTable-body">
1200
+ <tr class="indexTable-body-row">
1201
+ <td class="indexTable-body-row-cell">
1202
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
1203
+ </td>
1204
+ <td class="indexTable-body-row-cell">Content</td>
1205
+ <td class="indexTable-body-row-cell">Content</td>
1206
+ <td class="indexTable-body-row-cell">Content content</td>
1207
+ </tr>
1208
+ <tr class="indexTable-body-row">
1209
+ <td class="indexTable-body-row-cell">
1210
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
1211
+ </td>
1212
+ <td class="indexTable-body-row-cell">Content</td>
1213
+ <td class="indexTable-body-row-cell">Content</td>
1214
+ <td class="indexTable-body-row-cell">Content content</td>
1215
+ </tr>
1216
+ <tr class="indexTable-body-row">
1217
+ <td class="indexTable-body-row-cell">
1218
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
1219
+ </td>
1220
+ <td class="indexTable-body-row-cell">Content</td>
1221
+ <td class="indexTable-body-row-cell">Content</td>
1222
+ <td class="indexTable-body-row-cell">Content content</td>
1223
+ </tr>
1224
+ </tbody>
1225
+ </table>
1226
+ ```
1227
+
1228
+ ### Table mass selection and pagination
1229
+
1230
+ ```css
1231
+ @forward '@lucca-front/scss/src/components/indexTable';
1232
+ @forward '@lucca-front/scss/src/components/button';
1233
+ @forward '@lucca-front/scss/src/components/checkboxField';
1234
+ @forward '@lucca-front/scss/src/components/formLabel';
1235
+ @forward '@lucca-front/scss/src/components/pagination';
1236
+ ```
1237
+
1238
+ ```html
1239
+ <div class="indexTableWrapper">
1240
+ <table class="indexTable mod-selectable">
1241
+ <thead class="indexTable-head">
1242
+ <tr class="indexTable-head-row">
1243
+ <th class="indexTable-head-row-transparentCell" scope="col">
1244
+ <label class="formLabel pr-u-mask" for="allchbx">Select all items</label>
1245
+ <span class="checkboxField indexTable-head-row-cell-checkbox">
1246
+ <input
1247
+ class="checkboxField-input"
1248
+ checked
1249
+ type="checkbox"
1250
+ id="allchbx"
1251
+ aria-controls="r0chbx r1chbx r2chbx"
1252
+ />
1253
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
1254
+ </span>
1255
+ </th>
1256
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
1257
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
1258
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
1259
+ </tr>
1260
+ <tr class="indexTable-head-row mod-massSelection">
1261
+ <th class="indexTable-head-row-cell" colspan="4">
1262
+ <div class="indexTable-head-row-cell-massSelection">
1263
+ <span>3 selected items</span>
1264
+ <button class="button palette-product" type="button">Select all items</button>
1265
+ </div>
1266
+ </th>
1267
+ </tr>
1268
+ </thead>
1269
+ <tbody class="indexTable-body">
1270
+ <tr class="indexTable-body-row">
1271
+ <td class="indexTable-body-row-transparentCell">
1272
+ <label class="formLabel pr-u-mask" for="r0chbx">Select this item</label>
1273
+ <span class="checkboxField indexTable-body-row-cell-checkbox">
1274
+ <input class="checkboxField-input" checked type="checkbox" id="r0chbx" />
1275
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
1276
+ </span>
1277
+ </td>
1278
+ <td class="indexTable-body-row-cell">
1279
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
1280
+ </td>
1281
+ <td class="indexTable-body-row-cell">Content</td>
1282
+ <td class="indexTable-body-row-cell">Content</td>
1283
+ </tr>
1284
+ <tr class="indexTable-body-row">
1285
+ <td class="indexTable-body-row-transparentCell">
1286
+ <label class="formLabel pr-u-mask" for="r1chbx">Select this item</label>
1287
+ <span class="checkboxField indexTable-body-row-cell-checkbox">
1288
+ <input class="checkboxField-input" checked type="checkbox" id="r1chbx" />
1289
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
1290
+ </span>
1291
+ </td>
1292
+ <td class="indexTable-body-row-cell">
1293
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
1294
+ </td>
1295
+ <td class="indexTable-body-row-cell">Content</td>
1296
+ <td class="indexTable-body-row-cell">Content</td>
1297
+ </tr>
1298
+ </tbody>
1299
+ </table>
1300
+ <nav class="pagination" role="navigation" aria-label="Pagination des résultats">
1301
+ <div class="pagination-count">
1302
+ <span class="pagination-count-current">
1303
+ <span class="pr-u-mask">Résultats de</span>
1304
+ 1
1305
+ <span aria-hidden="true">–</span>
1306
+ <span class="pr-u-mask">à</span>
1307
+ 10
1308
+ </span>
1309
+ <span class="pagination-count-separator">sur</span>
1310
+ <span class="pagination-count-total">
1311
+ 50
1312
+ <span class="pr-u-mask">pages</span>
1313
+ </span>
1314
+ </div>
1315
+ <div class="pagination-scrolling">
1316
+ <button type="button" class="button mod-onlyIcon mod-ghost mod-S" disabled>
1317
+ <span aria-hidden="true" class="lucca-icon icon-arrowChevronLeft"></span>
1318
+ <span class="pr-u-mask">Précédent</span>
1319
+ </button>
1320
+ <button type="button" class="button mod-onlyIcon mod-ghost mod-S">
1321
+ <span aria-hidden="true" class="lucca-icon icon-arrowChevronRight"></span>
1322
+ <span class="pr-u-mask">Suivant</span>
1323
+ </button>
1324
+ </div>
1325
+ </nav>
1326
+ </div>
1327
+ ```
1328
+
1329
+ ### Table nested selectable
1330
+
1331
+ ```css
1332
+ @forward '@lucca-front/scss/src/components/indexTable';
1333
+ @forward '@lucca-front/scss/src/components/button';
1334
+ @forward '@lucca-front/scss/src/components/checkboxField';
1335
+ @forward '@lucca-front/scss/src/components/formLabel';
1336
+ @forward '@lucca-front/scss/src/components/numericBadge';
1337
+ ```
1338
+
1339
+ ```html
1340
+ <table class="indexTable mod-selectable">
1341
+ <thead class="indexTable-head">
1342
+ <tr class="indexTable-head-row">
1343
+ <th class="indexTable-head-row-transparentCell" scope="col">
1344
+ <label class="formLabel pr-u-mask" for="allchbx">Select all items</label>
1345
+ <span class="checkboxField indexTable-head-row-cell-checkbox">
1346
+ <input
1347
+ class="checkboxField-input"
1348
+ type="checkbox"
1349
+ id="allchbx"
1350
+ checked
1351
+ aria-checked="mixed"
1352
+ aria-controls="r0chbx r1chbx r2chbx r3chbx r4chbx r5chbx r6chbx r7chbx r8chbx"
1353
+ />
1354
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
1355
+ </span>
1356
+ </th>
1357
+ <th class="indexTable-head-row-transparentCell" scope="col"></th>
1358
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
1359
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
1360
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
1361
+ </tr>
1362
+ </thead>
1363
+ <tbody class="indexTable-body">
1364
+ <tr class="indexTable-body-row" id="r0">
1365
+ <th class="indexTable-body-row-transparentCell">
1366
+ <label class="formLabel pr-u-mask" for="r0chbx">Select all lines for 2021</label>
1367
+ <span class="checkboxField indexTable-body-row-cell-checkbox">
1368
+ <input
1369
+ class="checkboxField-input"
1370
+ checked
1371
+ aria-checked="mixed"
1372
+ type="checkbox"
1373
+ id="r0chbx"
1374
+ aria-controls="r1chbx r2chbx r3chbx r4chbx r5chbx"
1375
+ />
1376
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
1377
+ </span>
1378
+ </th>
1379
+ <th class="indexTable-body-row-transparentCell" colspan="4" id="y2021">
1380
+ <div class="indexTable-body-row-cellTitle">
1381
+ <button
1382
+ class="indexTable-body-row-cellTitle-button button"
1383
+ aria-expanded="true"
1384
+ aria-controls="r1 r2 r3 r4 r5"
1385
+ type="button"
1386
+ id="r0btn"
1387
+ >
1388
+ <span class="lucca-icon icon-arrowChevronTop" aria-hidden="true"></span>
1389
+ <span class="pr-u-mask">Hide details</span>
1390
+ </button>
1391
+ <span class="indexTable-body-row-cellTitle-title">2021</span>
1392
+ <span class="numericBadge">3</span>
1393
+ </div>
1394
+ </th>
1395
+ </tr>
1396
+ <tr class="indexTable-body-row" id="r1">
1397
+ <th class="indexTable-body-row-transparentCell" headers="y2021" colspan="2">
1398
+ <label class="formLabel pr-u-mask" for="r1chbx">Select all items for september 2021</label>
1399
+ <span class="checkboxField indexTable-body-row-cell-checkbox">
1400
+ <input class="checkboxField-input" type="checkbox" id="r1chbx" aria-controls="r2chbx" />
1401
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
1402
+ </span>
1403
+ </th>
1404
+ <th class="indexTable-body-row-transparentCell" colspan="3" id="september" headers="y2021">
1405
+ <div class="indexTable-body-row-cellTitle">
1406
+ <button
1407
+ class="indexTable-body-row-cellTitle-button button"
1408
+ aria-expanded="true"
1409
+ aria-controls="r2"
1410
+ type="button"
1411
+ id="r1btn"
1412
+ >
1413
+ <span class="lucca-icon icon-arrowChevronTop" aria-hidden="true"></span>
1414
+ <span class="pr-u-mask">Hide details</span>
1415
+ </button>
1416
+ <span class="indexTable-body-row-cellTitle-title">September</span>
1417
+ <span class="numericBadge">1</span>
1418
+ </div>
1419
+ </th>
1420
+ </tr>
1421
+ <tr class="indexTable-body-row" id="r2">
1422
+ <td class="indexTable-body-row-transparentCell" headers="y2021 september" colspan="2">
1423
+ <label class="formLabel pr-u-mask" for="r2chbx">Select this item</label>
1424
+ <span class="checkboxField indexTable-body-row-cell-checkbox">
1425
+ <input class="checkboxField-input" type="checkbox" id="r2chbx" />
1426
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
1427
+ </span>
1428
+ </td>
1429
+ <td class="indexTable-body-row-cell" headers="y2021 september">
1430
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
1431
+ </td>
1432
+ <td class="indexTable-body-row-cell" headers="y2021 september">Content</td>
1433
+ <td class="indexTable-body-row-cell" headers="y2021 september">Content</td>
1434
+ </tr>
1435
+ <tr class="indexTable-body-row" id="r3">
1436
+ <th class="indexTable-body-row-transparentCell" headers="y2021" colspan="2">
1437
+ <label class="formLabel pr-u-mask" for="r3chbx">Select all items for october 2021</label>
1438
+ <span class="checkboxField indexTable-body-row-cell-checkbox">
1439
+ <input
1440
+ class="checkboxField-input"
1441
+ type="checkbox"
1442
+ id="r3chbx"
1443
+ aria-controls="r4chbx r5chbx"
1444
+ checked
1445
+ aria-checked="mixed"
1446
+ />
1447
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
1448
+ </span>
1449
+ </th>
1450
+ <th class="indexTable-body-row-transparentCell" colspan="3" id="october" headers="y2021">
1451
+ <div class="indexTable-body-row-cellTitle">
1452
+ <button
1453
+ class="indexTable-body-row-cellTitle-button button"
1454
+ aria-expanded="true"
1455
+ aria-controls="r4 r5"
1456
+ type="button"
1457
+ id="r3btn"
1458
+ >
1459
+ <span class="lucca-icon icon-arrowChevronTop" aria-hidden="true"></span>
1460
+ <span class="pr-u-mask">Hide details</span>
1461
+ </button>
1462
+ <span class="indexTable-body-row-cellTitle-title">October</span>
1463
+ <span class="numericBadge">2</span>
1464
+ </div>
1465
+ </th>
1466
+ </tr>
1467
+ <tr class="indexTable-body-row" id="r4">
1468
+ <td class="indexTable-body-row-transparentCell" headers="y2021 october" colspan="2">
1469
+ <label class="formLabel pr-u-mask" for="r4chbx">Select this item</label>
1470
+ <span class="checkboxField indexTable-body-row-cell-checkbox">
1471
+ <input class="checkboxField-input" type="checkbox" checked id="r4chbx" />
1472
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
1473
+ </span>
1474
+ </td>
1475
+ <td class="indexTable-body-row-cell" headers="y2021 october">
1476
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
1477
+ </td>
1478
+ <td class="indexTable-body-row-cell" headers="y2021 october">Content</td>
1479
+ <td class="indexTable-body-row-cell" headers="y2021 october">Content</td>
1480
+ </tr>
1481
+ <tr class="indexTable-body-row" id="r5">
1482
+ <td class="indexTable-body-row-transparentCell" headers="y2021 october" colspan="2">
1483
+ <label class="formLabel pr-u-mask" for="r5chbx">Select this item</label>
1484
+ <span class="checkboxField indexTable-body-row-cell-checkbox">
1485
+ <input class="checkboxField-input" type="checkbox" id="r5chbx" />
1486
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
1487
+ </span>
1488
+ </td>
1489
+ <td class="indexTable-body-row-cell" headers="y2021 october">
1490
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
1491
+ </td>
1492
+ <td class="indexTable-body-row-cell" headers="y2021 october">Content</td>
1493
+ <td class="indexTable-body-row-cell" headers="y2021 october">Content</td>
1494
+ </tr>
1495
+ </tbody>
1496
+ <tbody class="indexTable-body">
1497
+ <tr class="indexTable-body-row" id="r6">
1498
+ <th class="indexTable-body-row-transparentCell">
1499
+ <label class="formLabel pr-u-mask" for="r6chbx">Select all items for 2022</label>
1500
+ <span class="checkboxField indexTable-body-row-cell-checkbox">
1501
+ <input class="checkboxField-input" type="checkbox" id="r6chbx" aria-controls="r7chbx r8chbx" />
1502
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
1503
+ </span>
1504
+ </th>
1505
+ <th class="indexTable-body-row-transparentCell" colspan="4" id="y2022">
1506
+ <div class="indexTable-body-row-cellTitle">
1507
+ <button
1508
+ class="indexTable-body-row-cellTitle-button button"
1509
+ aria-expanded="true"
1510
+ aria-controls="r7 r8"
1511
+ type="button"
1512
+ id="r6btn"
1513
+ >
1514
+ <span class="lucca-icon icon-arrowChevronTop" aria-hidden="true"></span>
1515
+ <span class="pr-u-mask">Hide details</span>
1516
+ </button>
1517
+ <span class="indexTable-body-row-cellTitle-title">2022</span>
1518
+ <span class="numericBadge">1</span>
1519
+ </div>
1520
+ </th>
1521
+ </tr>
1522
+ <tr class="indexTable-body-row" id="r7">
1523
+ <th class="indexTable-body-row-transparentCell" headers="y2022" colspan="2">
1524
+ <label class="formLabel pr-u-mask" for="r7chbx">Select all items for january 2022</label>
1525
+ <span class="checkboxField indexTable-body-row-cell-checkbox">
1526
+ <input class="checkboxField-input" type="checkbox" id="r7chbx" aria-controls="r8chbx" />
1527
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
1528
+ </span>
1529
+ </th>
1530
+ <th class="indexTable-body-row-transparentCell" colspan="3" id="january" headers="y2022">
1531
+ <div class="indexTable-body-row-cellTitle">
1532
+ <button
1533
+ class="indexTable-body-row-cellTitle-button button"
1534
+ aria-expanded="true"
1535
+ aria-controls="r8"
1536
+ type="button"
1537
+ id="r7btn"
1538
+ >
1539
+ <span class="lucca-icon icon-arrowChevronTop" aria-hidden="true"></span>
1540
+ <span class="pr-u-mask">Hide details</span>
1541
+ </button>
1542
+ <span class="indexTable-body-row-cellTitle-title">January</span>
1543
+ <span class="numericBadge">1</span>
1544
+ </div>
1545
+ </th>
1546
+ </tr>
1547
+ <tr class="indexTable-body-row" id="r8">
1548
+ <td class="indexTable-body-row-transparentCell" headers="y2022 january" colspan="2">
1549
+ <label class="formLabel pr-u-mask" for="r8chbx">Select this item</label>
1550
+ <span class="checkboxField indexTable-body-row-cell-checkbox">
1551
+ <input class="checkboxField-input" type="checkbox" id="r8chbx" />
1552
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
1553
+ </span>
1554
+ </td>
1555
+ <td class="indexTable-body-row-cell" headers="y2022 january">
1556
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
1557
+ </td>
1558
+ <td class="indexTable-body-row-cell" headers="y2022 january">Content</td>
1559
+ <td class="indexTable-body-row-cell" headers="y2022 january">Content</td>
1560
+ </tr>
1561
+ </tbody>
1562
+ </table>
1563
+ ```
1564
+
1565
+ ### Table nested sub totals
1566
+
1567
+ ```css
1568
+ @forward '@lucca-front/scss/src/components/indexTable';
1569
+ @forward '@lucca-front/scss/src/components/button';
1570
+ @forward '@lucca-front/scss/src/components/numericBadge';
1571
+ ```
1572
+
1573
+ ```html
1574
+ <table class="indexTable">
1575
+ <thead class="indexTable-head">
1576
+ <tr class="indexTable-head-row">
1577
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
1578
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
1579
+ <th class="indexTable-head-row-cell mod-alignRight" scope="col">Value</th>
1580
+ </tr>
1581
+ </thead>
1582
+ <tbody class="indexTable-body">
1583
+ <tr class="indexTable-body-row" id="r0">
1584
+ <th class="indexTable-body-row-transparentCell" colspan="2" id="y2021">
1585
+ <div class="indexTable-body-row-cellTitle">
1586
+ <button
1587
+ class="indexTable-body-row-cellTitle-button button"
1588
+ aria-expanded="true"
1589
+ aria-controls="r1 r2 r3 r4"
1590
+ type="button"
1591
+ >
1592
+ <span class="lucca-icon icon-arrowChevronTop" aria-hidden="true"></span>
1593
+ <span class="pr-u-mask">Hide details</span>
1594
+ </button>
1595
+ <span class="indexTable-body-row-cellTitle-title">2021</span>
1596
+ <span class="numericBadge">3</span>
1597
+ </div>
1598
+ </th>
1599
+ <th class="indexTable-body-row-transparentCell mod-alignRight">
1600
+ <div class="indexTable-body-row-subTotal">
1601
+ <span class="pr-u-bodyS">Sub total :</span>
1602
+ <strong>7999.10 €</strong>
1603
+ </div>
1604
+ </th>
1605
+ </tr>
1606
+ <tr class="indexTable-body-row" id="r1">
1607
+ <td class="indexTable-body-row-cell" headers="y2021">
1608
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
1609
+ </td>
1610
+ <td class="indexTable-body-row-cell" headers="y2021">Content</td>
1611
+ <td class="indexTable-body-row-cell mod-alignRight" headers="y2021">
1612
+ <strong>170.00 €</strong>
1613
+ </td>
1614
+ </tr>
1615
+ <tr class="indexTable-body-row" id="r2">
1616
+ <td class="indexTable-body-row-cell" headers="y2021">
1617
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
1618
+ </td>
1619
+ <td class="indexTable-body-row-cell" headers="y2021">Content</td>
1620
+ <td class="indexTable-body-row-cell mod-alignRight" headers="y2021">
1621
+ <strong>50.30 €</strong>
1622
+ </td>
1623
+ </tr>
1624
+ <tr class="indexTable-body-row" id="r3">
1625
+ <td class="indexTable-body-row-cell" headers="y2021">
1626
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
1627
+ </td>
1628
+ <td class="indexTable-body-row-cell" headers="y2021">Content</td>
1629
+ <td class="indexTable-body-row-cell mod-alignRight" headers="y2021">
1630
+ <strong>7778.80 €</strong>
1631
+ </td>
1632
+ </tr>
1633
+ <tr class="indexTable-foot-row" id="r4">
1634
+ <td class="indexTable-foot-row-cell" headers="y2021" colspan="3">
1635
+ <span class="pr-u-bodyS">Sub total :</span>
1636
+ <strong>7999.10 €</strong>
1637
+ </td>
1638
+ </tr>
1639
+ </tbody>
1640
+ <tbody class="indexTable-body">
1641
+ <tr class="indexTable-body-row" id="r5">
1642
+ <th class="indexTable-body-row-transparentCell" colspan="2" id="y2022">
1643
+ <div class="indexTable-body-row-cellTitle">
1644
+ <button
1645
+ class="indexTable-body-row-cellTitle-button button"
1646
+ aria-expanded="true"
1647
+ aria-controls="r6 r7"
1648
+ type="button"
1649
+ >
1650
+ <span class="lucca-icon icon-arrowChevronTop" aria-hidden="true"></span>
1651
+ <span class="pr-u-mask">Hide details</span>
1652
+ </button>
1653
+ <span class="indexTable-body-row-cellTitle-title">2022</span>
1654
+ <span class="numericBadge">1</span>
1655
+ </div>
1656
+ </th>
1657
+ <th class="indexTable-body-row-transparentCell mod-alignRight">
1658
+ <div class="indexTable-body-row-subTotal">
1659
+ <span class="pr-u-bodyS">Sub total :</span>
1660
+ <strong>200.00 €</strong>
1661
+ </div>
1662
+ </th>
1663
+ </tr>
1664
+ <tr class="indexTable-body-row" id="r6">
1665
+ <td class="indexTable-body-row-cell" headers="y2022">
1666
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
1667
+ </td>
1668
+ <td class="indexTable-body-row-cell" headers="y2022">Content</td>
1669
+ <td class="indexTable-body-row-cell mod-alignRight" headers="y2022">
1670
+ <strong>200.00 €</strong>
1671
+ </td>
1672
+ </tr>
1673
+ <tr class="indexTable-foot-row" id="r7">
1674
+ <td class="indexTable-foot-row-cell" headers="y2022" colspan="3">
1675
+ <span class="pr-u-bodyS">Sub total :</span>
1676
+ <strong>200.00 €</strong>
1677
+ </td>
1678
+ </tr>
1679
+ </tbody>
1680
+ <tbody class="indexTable-body">
1681
+ <tr class="indexTable-body-row" id="r8">
1682
+ <th class="indexTable-body-row-transparentCell" colspan="2" id="y2023">
1683
+ <div class="indexTable-body-row-cellTitle">
1684
+ <button
1685
+ class="indexTable-body-row-cellTitle-button button"
1686
+ aria-expanded="false"
1687
+ aria-controls="r9 r10"
1688
+ type="button"
1689
+ >
1690
+ <span class="lucca-icon icon-arrowChevronTop" aria-hidden="true"></span>
1691
+ <span class="pr-u-mask">Hide details</span>
1692
+ </button>
1693
+ <span class="indexTable-body-row-cellTitle-title">2023</span>
1694
+ <span class="numericBadge">1</span>
1695
+ </div>
1696
+ </th>
1697
+ <th class="indexTable-body-row-transparentCell mod-alignRight">
1698
+ <div class="indexTable-body-row-subTotal">
1699
+ <span class="pr-u-bodyS">Sub total :</span>
1700
+ <strong>212.25 €</strong>
1701
+ </div>
1702
+ </th>
1703
+ </tr>
1704
+ <tr class="indexTable-body-row is-closed" id="r9">
1705
+ <td class="indexTable-body-row-cell" headers="y2023">
1706
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
1707
+ </td>
1708
+ <td class="indexTable-body-row-cell" headers="y2023">Content</td>
1709
+ <td class="indexTable-body-row-cell mod-alignRight" headers="y2023">
1710
+ <strong>212.25 €</strong>
1711
+ </td>
1712
+ </tr>
1713
+ <tr class="indexTable-foot-row is-closed" id="r10">
1714
+ <td class="indexTable-foot-row-cell" headers="y2023" colspan="3">
1715
+ <span class="pr-u-bodyS">Sub total :</span>
1716
+ <strong>212.25 €</strong>
1717
+ </td>
1718
+ </tr>
1719
+ </tbody>
1720
+ <tfoot class="indexTable-foot">
1721
+ <tr class="indexTable-foot-row">
1722
+ <td class="indexTable-foot-row-cell" colspan="3">
1723
+ <span class="pr-u-bodyS">Total:</span>
1724
+ <strong>8411.35 €</strong>
1725
+ </td>
1726
+ </tr>
1727
+ </tfoot>
1728
+ </table>
1729
+ ```
1730
+
1731
+ ### Table nested
1732
+
1733
+ ```css
1734
+ @forward '@lucca-front/scss/src/components/indexTable';
1735
+ @forward '@lucca-front/scss/src/components/button';
1736
+ @forward '@lucca-front/scss/src/components/numericBadge';
1737
+ ```
1738
+
1739
+ ```html
1740
+ <table class="indexTable">
1741
+ <thead class="indexTable-head">
1742
+ <tr class="indexTable-head-row">
1743
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
1744
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
1745
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
1746
+ </tr>
1747
+ </thead>
1748
+ <tbody class="indexTable-body">
1749
+ <tr class="indexTable-body-row" id="r0">
1750
+ <th class="indexTable-body-row-transparentCell" colspan="3" id="y2021">
1751
+ <div class="indexTable-body-row-cellTitle">
1752
+ <button
1753
+ class="indexTable-body-row-cellTitle-button button"
1754
+ aria-expanded="true"
1755
+ aria-controls="r1 r2 r3"
1756
+ type="button"
1757
+ >
1758
+ <span class="lucca-icon icon-arrowChevronTop" aria-hidden="true"></span>
1759
+ <span class="pr-u-mask">Hide details</span>
1760
+ </button>
1761
+ <span class="indexTable-body-row-cellTitle-title">2021</span>
1762
+ <span class="numericBadge">
1763
+ 3
1764
+ <span class="pr-u-mask"> lines</span>
1765
+ </span>
1766
+ </div>
1767
+ </th>
1768
+ </tr>
1769
+ <tr class="indexTable-body-row" id="r1">
1770
+ <td class="indexTable-body-row-cell" headers="y2021">
1771
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
1772
+ </td>
1773
+ <td class="indexTable-body-row-cell" headers="y2021">Content</td>
1774
+ <td class="indexTable-body-row-cell" headers="y2021">Content</td>
1775
+ </tr>
1776
+ <tr class="indexTable-body-row" id="r2">
1777
+ <td class="indexTable-body-row-cell" headers="y2021">
1778
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
1779
+ </td>
1780
+ <td class="indexTable-body-row-cell" headers="y2021">Content</td>
1781
+ <td class="indexTable-body-row-cell" headers="y2021">Content</td>
1782
+ </tr>
1783
+ <tr class="indexTable-body-row" id="r3">
1784
+ <td class="indexTable-body-row-cell" headers="y2021">
1785
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
1786
+ </td>
1787
+ <td class="indexTable-body-row-cell" headers="y2021">Content</td>
1788
+ <td class="indexTable-body-row-cell" headers="y2021">Content</td>
1789
+ </tr>
1790
+ </tbody>
1791
+ <tbody class="indexTable-body">
1792
+ <tr class="indexTable-body-row" id="r4">
1793
+ <th class="indexTable-body-row-transparentCell" colspan="3" id="y2022">
1794
+ <div class="indexTable-body-row-cellTitle">
1795
+ <button
1796
+ class="indexTable-body-row-cellTitle-button button"
1797
+ aria-expanded="true"
1798
+ aria-controls="r5"
1799
+ type="button"
1800
+ >
1801
+ <span class="lucca-icon icon-arrowChevronTop" aria-hidden="true"></span>
1802
+ <span class="pr-u-mask">Hide details</span>
1803
+ </button>
1804
+ <span class="indexTable-body-row-cellTitle-title">2022</span>
1805
+ <span class="numericBadge">
1806
+ 1
1807
+ <span class="pr-u-mask"> line</span>
1808
+ </span>
1809
+ </div>
1810
+ </th>
1811
+ </tr>
1812
+ <tr class="indexTable-body-row" id="r5">
1813
+ <td class="indexTable-body-row-cell" headers="y2022">
1814
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
1815
+ </td>
1816
+ <td class="indexTable-body-row-cell" headers="y2022">Content</td>
1817
+ <td class="indexTable-body-row-cell" headers="y2022">Content</td>
1818
+ </tr>
1819
+ </tbody>
1820
+ </table>
1821
+ ```
1822
+
1823
+ ### Table pagination
1824
+
1825
+ ```css
1826
+ @forward '@lucca-front/scss/src/components/indexTable';
1827
+ @forward '@lucca-front/scss/src/components/button';
1828
+ @forward '@lucca-front/scss/src/components/pagination';
1829
+ ```
1830
+
1831
+ ```html
1832
+ <div class="indexTableWrapper">
1833
+ <table class="indexTable">
1834
+ <thead class="indexTable-head">
1835
+ <tr class="indexTable-head-row">
1836
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
1837
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
1838
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
1839
+ </tr>
1840
+ </thead>
1841
+ <tbody class="indexTable-body">
1842
+ <tr class="indexTable-body-row">
1843
+ <td class="indexTable-body-row-cell">
1844
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
1845
+ </td>
1846
+ <td class="indexTable-body-row-cell">Content</td>
1847
+ <td class="indexTable-body-row-cell">Content</td>
1848
+ </tr>
1849
+ <tr class="indexTable-body-row">
1850
+ <td class="indexTable-body-row-cell">Content</td>
1851
+ <td class="indexTable-body-row-cell">Content</td>
1852
+ <td class="indexTable-body-row-cell">
1853
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
1854
+ </td>
1855
+ </tr>
1856
+ </tbody>
1857
+ </table>
1858
+ <nav class="pagination" role="navigation" aria-label="Pagination des résultats">
1859
+ <div class="pagination-count">
1860
+ <span class="pagination-count-current">
1861
+ <span class="pr-u-mask">Résultats de</span>
1862
+ 1
1863
+ <span aria-hidden="true">–</span>
1864
+ <span class="pr-u-mask">à</span>
1865
+ 10
1866
+ </span>
1867
+ <span class="pagination-count-separator">sur</span>
1868
+ <span class="pagination-count-total">
1869
+ 50
1870
+ <span class="pr-u-mask">pages</span>
1871
+ </span>
1872
+ </div>
1873
+ <div class="pagination-scrolling">
1874
+ <button type="button" class="button mod-onlyIcon mod-ghost mod-S" disabled>
1875
+ <span aria-hidden="true" class="lucca-icon icon-arrowChevronLeft"></span>
1876
+ <span class="pr-u-mask">Précédent</span>
1877
+ </button>
1878
+ <button type="button" class="button mod-onlyIcon mod-ghost mod-S">
1879
+ <span aria-hidden="true" class="lucca-icon icon-arrowChevronRight"></span>
1880
+ <span class="pr-u-mask">Suivant</span>
1881
+ </button>
1882
+ </div>
1883
+ </nav>
1884
+ </div>
1885
+ ```
1886
+
1887
+ ### Table responsive card list custom
1888
+
1889
+ ```css
1890
+ @forward '@lucca-front/scss/src/components/indexTable';
1891
+ ```
1892
+
1893
+ ```html
1894
+ <style>
1895
+ /** .mytable is an example of a custom user css grid template */
1896
+ .myTable {
1897
+ --components-indexTable-row-responsive-grid-template-columns: 1fr 1fr;
1898
+ --components-indexTable-row-responsive-grid-template-areas: "title total" "text text";
1899
+ }
1900
+ .myTable .indexTable-body-row-cell:first-child {
1901
+ grid-area: title;
1902
+ }
1903
+ .myTable .indexTable-body-row-cell:nth-child(2) {
1904
+ grid-area: text;
1905
+ }
1906
+ .myTable .indexTable-body-row-cell:nth-child(3) {
1907
+ grid-area: total;
1908
+ text-align: end;
1909
+ }
1910
+ </style>
1911
+ <table class="indexTable mod-responsiveCardList myTable pr-u-marginBlockEnd300">
1912
+ <thead class="indexTable-head">
1913
+ <tr class="indexTable-head-row">
1914
+ <th class="indexTable-head-row-cell" scope="col">Lorem</th>
1915
+ <th class="indexTable-head-row-cell" scope="col">Ipsum</th>
1916
+ <th class="indexTable-head-row-cell" scope="col">Dolorem</th>
1917
+ </tr>
1918
+ </thead>
1919
+ <tbody class="indexTable-body">
1920
+ <tr class="indexTable-body-row">
1921
+ <td class="indexTable-body-row-cell">
1922
+ <a href="#" class="indexTable-body-row-cell-link">Lorem</a>
1923
+ </td>
1924
+ <td class="indexTable-body-row-cell">Aliquam vestibulum pulvinar luctus</td>
1925
+ <td class="indexTable-body-row-cell"><strong>122,00 €</strong></td>
1926
+ </tr>
1927
+ <tr class="indexTable-body-row">
1928
+ <td class="indexTable-body-row-cell">
1929
+ <a href="#" class="indexTable-body-row-cell-link">Lorem</a>
1930
+ </td>
1931
+ <td class="indexTable-body-row-cell">
1932
+ Phasellus ullamcorper vehicula diam in dignissim. Mauris cursus volutpat leo eu convallis. Sed sed scelerisque
1933
+ libero
1934
+ </td>
1935
+ <td class="indexTable-body-row-cell"><strong>56,50 €</strong></td>
1936
+ </tr>
1937
+ </tbody>
1938
+ </table>
1939
+ ```
1940
+
1941
+ ### Table responsive card list label
1942
+
1943
+ ```css
1944
+ @forward '@lucca-front/scss/src/components/indexTable';
1945
+ ```
1946
+
1947
+ ```html
1948
+ <table class="indexTable mod-responsiveCardList">
1949
+ <thead class="indexTable-head">
1950
+ <tr class="indexTable-head-row">
1951
+ <th class="indexTable-head-row-cell" scope="col">Label 1</th>
1952
+ <th class="indexTable-head-row-cell" scope="col">Label 2</th>
1953
+ <th class="indexTable-head-row-cell" scope="col">Label 3</th>
1954
+ </tr>
1955
+ </thead>
1956
+ <tbody class="indexTable-body">
1957
+ <tr class="indexTable-body-row">
1958
+ <td class="indexTable-body-row-cell">
1959
+ <div class="indexTable-body-row-cell-content" data-label="Label 1">
1960
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
1961
+ </div>
1962
+ </td>
1963
+ <td class="indexTable-body-row-cell">
1964
+ <div class="indexTable-body-row-cell-content" data-label="Label 2">Content</div>
1965
+ </td>
1966
+ <td class="indexTable-body-row-cell">
1967
+ <div class="indexTable-body-row-cell-content" data-label="Label 3">Content</div>
1968
+ </td>
1969
+ </tr>
1970
+ <tr class="indexTable-body-row">
1971
+ <td class="indexTable-body-row-cell">
1972
+ <div class="indexTable-body-row-cell-content" data-label="Label 1">
1973
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
1974
+ </div>
1975
+ </td>
1976
+ <td class="indexTable-body-row-cell">
1977
+ <div class="indexTable-body-row-cell-content" data-label="Label 2">Content</div>
1978
+ </td>
1979
+ <td class="indexTable-body-row-cell">
1980
+ <div class="indexTable-body-row-cell-content" data-label="Label 3">Content</div>
1981
+ </td>
1982
+ </tr>
1983
+ </tbody>
1984
+ </table>
1985
+ ```
1986
+
1987
+ ### Table responsive card list nested
1988
+
1989
+ ```css
1990
+ @forward '@lucca-front/scss/src/components/indexTable';
1991
+ @forward '@lucca-front/scss/src/components/button';
1992
+ @forward '@lucca-front/scss/src/components/checkboxField';
1993
+ @forward '@lucca-front/scss/src/components/formLabel';
1994
+ @forward '@lucca-front/scss/src/components/numericBadge';
1995
+ ```
1996
+
1997
+ ```html
1998
+ <table class="indexTable mod-selectable mod-stackable mod-responsiveCardList">
1999
+ <thead class="indexTable-head">
2000
+ <tr class="indexTable-head-row">
2001
+ <th class="indexTable-head-row-transparentCell" scope="col">
2002
+ <label class="formLabel pr-u-mask" for="allchbx">Select all items</label>
2003
+ <span class="checkboxField indexTable-head-row-cell-checkbox">
2004
+ <input
2005
+ class="checkboxField-input"
2006
+ type="checkbox"
2007
+ id="allchbx"
2008
+ checked
2009
+ aria-checked="mixed"
2010
+ aria-controls="r0chbx r1chbx r2chbx r3chbx r4chbx r5chbx r6chbx r7chbx r8chbx"
2011
+ />
2012
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
2013
+ </span>
2014
+ </th>
2015
+ <th class="indexTable-head-row-transparentCell" scope="col"></th>
2016
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
2017
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
2018
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
2019
+ </tr>
2020
+ </thead>
2021
+ <tbody class="indexTable-body">
2022
+ <tr class="indexTable-body-row" id="r0">
2023
+ <th class="indexTable-body-row-transparentCell">
2024
+ <label class="formLabel pr-u-mask" for="r0chbx">Select all lines for 2021</label>
2025
+ <span class="checkboxField indexTable-body-row-cell-checkbox">
2026
+ <input
2027
+ class="checkboxField-input"
2028
+ checked
2029
+ aria-checked="mixed"
2030
+ type="checkbox"
2031
+ id="r0chbx"
2032
+ aria-controls="r1chbx r2chbx r3chbx r4chbx r5chbx"
2033
+ />
2034
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
2035
+ </span>
2036
+ </th>
2037
+ <th class="indexTable-body-row-transparentCell" colspan="4" id="y2021">
2038
+ <div class="indexTable-body-row-cellTitle">
2039
+ <button
2040
+ class="indexTable-body-row-cellTitle-button button"
2041
+ aria-expanded="true"
2042
+ aria-controls="r1 r2 r3 r4 r5"
2043
+ type="button"
2044
+ id="r0btn"
2045
+ >
2046
+ <span class="lucca-icon icon-arrowChevronTop" aria-hidden="true"></span>
2047
+ <span class="pr-u-mask">Hide details</span>
2048
+ </button>
2049
+ <span class="indexTable-body-row-cellTitle-title">2021</span>
2050
+ <span class="numericBadge">3</span>
2051
+ </div>
2052
+ </th>
2053
+ </tr>
2054
+ <tr class="indexTable-body-row" id="r1">
2055
+ <th class="indexTable-body-row-transparentCell" headers="y2021" colspan="2">
2056
+ <label class="formLabel pr-u-mask" for="r1chbx">Select all items for september 2021</label>
2057
+ <span class="checkboxField indexTable-body-row-cell-checkbox">
2058
+ <input class="checkboxField-input" type="checkbox" id="r1chbx" aria-controls="r2chbx" />
2059
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
2060
+ </span>
2061
+ </th>
2062
+ <th class="indexTable-body-row-transparentCell" colspan="3" id="september" headers="y2021">
2063
+ <div class="indexTable-body-row-cellTitle">
2064
+ <button
2065
+ class="indexTable-body-row-cellTitle-button button"
2066
+ aria-expanded="true"
2067
+ aria-controls="r2"
2068
+ type="button"
2069
+ id="r1btn"
2070
+ >
2071
+ <span class="lucca-icon icon-arrowChevronTop" aria-hidden="true"></span>
2072
+ <span class="pr-u-mask">Hide details</span>
2073
+ </button>
2074
+ <span class="indexTable-body-row-cellTitle-title">September</span>
2075
+ <span class="numericBadge">1</span>
2076
+ </div>
2077
+ </th>
2078
+ </tr>
2079
+ <tr class="indexTable-body-row" id="r2">
2080
+ <td class="indexTable-body-row-transparentCell" headers="y2021 september" colspan="2">
2081
+ <label class="formLabel pr-u-mask" for="r2chbx">Select this item</label>
2082
+ <span class="checkboxField indexTable-body-row-cell-checkbox">
2083
+ <input class="checkboxField-input" type="checkbox" id="r2chbx" />
2084
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
2085
+ </span>
2086
+ </td>
2087
+ <td class="indexTable-body-row-cell" headers="y2021 september">
2088
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
2089
+ </td>
2090
+ <td class="indexTable-body-row-cell" headers="y2021 september">Content</td>
2091
+ <td class="indexTable-body-row-cell" headers="y2021 september">Content</td>
2092
+ </tr>
2093
+ <tr class="indexTable-body-row" id="r3">
2094
+ <th class="indexTable-body-row-transparentCell" headers="y2021" colspan="2">
2095
+ <label class="formLabel pr-u-mask" for="r3chbx">Select all items for october 2021</label>
2096
+ <span class="checkboxField indexTable-body-row-cell-checkbox">
2097
+ <input
2098
+ class="checkboxField-input"
2099
+ type="checkbox"
2100
+ id="r3chbx"
2101
+ aria-controls="r4chbx r5chbx"
2102
+ checked
2103
+ aria-checked="mixed"
2104
+ />
2105
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
2106
+ </span>
2107
+ </th>
2108
+ <th class="indexTable-body-row-transparentCell" colspan="3" id="october" headers="y2021">
2109
+ <div class="indexTable-body-row-cellTitle">
2110
+ <button
2111
+ class="indexTable-body-row-cellTitle-button button"
2112
+ aria-expanded="true"
2113
+ aria-controls="r4 r5"
2114
+ type="button"
2115
+ id="r3btn"
2116
+ >
2117
+ <span class="lucca-icon icon-arrowChevronTop" aria-hidden="true"></span>
2118
+ <span class="pr-u-mask">Hide details</span>
2119
+ </button>
2120
+ <span class="indexTable-body-row-cellTitle-title">October (stacks for test !)</span>
2121
+ <span class="numericBadge">2</span>
2122
+ </div>
2123
+ </th>
2124
+ </tr>
2125
+ <tr class="indexTable-body-row mod-stack3" id="r4">
2126
+ <td class="indexTable-body-row-transparentCell" headers="y2021 october" colspan="2">
2127
+ <label class="formLabel pr-u-mask" for="r4chbx">Select this item</label>
2128
+ <span class="checkboxField indexTable-body-row-cell-checkbox">
2129
+ <input class="checkboxField-input" type="checkbox" checked id="r4chbx" />
2130
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
2131
+ </span>
2132
+ </td>
2133
+ <td class="indexTable-body-row-cell" headers="y2021 october">
2134
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
2135
+ </td>
2136
+ <td class="indexTable-body-row-cell" headers="y2021 october">Content</td>
2137
+ <td class="indexTable-body-row-cell" headers="y2021 october">Content</td>
2138
+ </tr>
2139
+ <tr class="indexTable-body-row" id="r5">
2140
+ <td class="indexTable-body-row-transparentCell" headers="y2021 october" colspan="2">
2141
+ <label class="formLabel pr-u-mask" for="r5chbx">Select this item</label>
2142
+ <span class="checkboxField indexTable-body-row-cell-checkbox">
2143
+ <input class="checkboxField-input" type="checkbox" id="r5chbx" />
2144
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
2145
+ </span>
2146
+ </td>
2147
+ <td class="indexTable-body-row-cell" headers="y2021 october">
2148
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
2149
+ </td>
2150
+ <td class="indexTable-body-row-cell" headers="y2021 october">Content</td>
2151
+ <td class="indexTable-body-row-cell" headers="y2021 october">Content</td>
2152
+ </tr>
2153
+ </tbody>
2154
+ <tbody class="indexTable-body">
2155
+ <tr class="indexTable-body-row" id="r6">
2156
+ <th class="indexTable-body-row-transparentCell">
2157
+ <label class="formLabel pr-u-mask" for="r6chbx">Select all items for 2022</label>
2158
+ <span class="checkboxField indexTable-body-row-cell-checkbox">
2159
+ <input class="checkboxField-input" type="checkbox" id="r6chbx" aria-controls="r7chbx r8chbx" />
2160
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
2161
+ </span>
2162
+ </th>
2163
+ <th class="indexTable-body-row-transparentCell" colspan="4" id="y2022">
2164
+ <div class="indexTable-body-row-cellTitle">
2165
+ <button
2166
+ class="indexTable-body-row-cellTitle-button button"
2167
+ aria-expanded="true"
2168
+ aria-controls="r7 r8"
2169
+ type="button"
2170
+ id="r6btn"
2171
+ >
2172
+ <span class="lucca-icon icon-arrowChevronTop" aria-hidden="true"></span>
2173
+ <span class="pr-u-mask">Hide details</span>
2174
+ </button>
2175
+ <span class="indexTable-body-row-cellTitle-title">2022</span>
2176
+ <span class="numericBadge">1</span>
2177
+ </div>
2178
+ </th>
2179
+ </tr>
2180
+ <tr class="indexTable-body-row" id="r7">
2181
+ <th class="indexTable-body-row-transparentCell" headers="y2022" colspan="2">
2182
+ <label class="formLabel pr-u-mask" for="r7chbx">Select all items for january 2022</label>
2183
+ <span class="checkboxField indexTable-body-row-cell-checkbox">
2184
+ <input class="checkboxField-input" type="checkbox" id="r7chbx" aria-controls="r8chbx" />
2185
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
2186
+ </span>
2187
+ </th>
2188
+ <th class="indexTable-body-row-transparentCell" colspan="3" id="january" headers="y2022">
2189
+ <div class="indexTable-body-row-cellTitle">
2190
+ <button
2191
+ class="indexTable-body-row-cellTitle-button button"
2192
+ aria-expanded="true"
2193
+ aria-controls="r8"
2194
+ type="button"
2195
+ id="r7btn"
2196
+ >
2197
+ <span class="lucca-icon icon-arrowChevronTop" aria-hidden="true"></span>
2198
+ <span class="pr-u-mask">Hide details</span>
2199
+ </button>
2200
+ <span class="indexTable-body-row-cellTitle-title">January</span>
2201
+ <span class="numericBadge">1</span>
2202
+ </div>
2203
+ </th>
2204
+ </tr>
2205
+ <tr class="indexTable-body-row" id="r8">
2206
+ <td class="indexTable-body-row-transparentCell" headers="y2022 january" colspan="2">
2207
+ <label class="formLabel pr-u-mask" for="r8chbx">Select this item</label>
2208
+ <span class="checkboxField indexTable-body-row-cell-checkbox">
2209
+ <input class="checkboxField-input" type="checkbox" id="r8chbx" />
2210
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
2211
+ </span>
2212
+ </td>
2213
+ <td class="indexTable-body-row-cell" headers="y2022 january">
2214
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
2215
+ </td>
2216
+ <td class="indexTable-body-row-cell" headers="y2022 january">Content</td>
2217
+ <td class="indexTable-body-row-cell" headers="y2022 january">Content</td>
2218
+ </tr>
2219
+ </tbody>
2220
+ </table>
2221
+ ```
2222
+
2223
+ ### Table responsive card list
2224
+
2225
+ ```css
2226
+ @forward '@lucca-front/scss/src/components/indexTable';
2227
+ ```
2228
+
2229
+ ```html
2230
+ <table class="indexTable mod-responsiveCardList">
2231
+ <thead class="indexTable-head">
2232
+ <tr class="indexTable-head-row">
2233
+ <th class="indexTable-head-row-cell" scope="col">Label 1</th>
2234
+ <th class="indexTable-head-row-cell" scope="col">Label 2</th>
2235
+ <th class="indexTable-head-row-cell" scope="col">Label 3</th>
2236
+ </tr>
2237
+ </thead>
2238
+ <tbody class="indexTable-body">
2239
+ <tr class="indexTable-body-row">
2240
+ <td class="indexTable-body-row-cell">
2241
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
2242
+ </td>
2243
+ <td class="indexTable-body-row-cell">Content</td>
2244
+ <td class="indexTable-body-row-cell">Content</td>
2245
+ </tr>
2246
+ <tr class="indexTable-body-row">
2247
+ <td class="indexTable-body-row-cell">
2248
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
2249
+ </td>
2250
+ <td class="indexTable-body-row-cell">Content</td>
2251
+ <td class="indexTable-body-row-cell">Content</td>
2252
+ </tr>
2253
+ </tbody>
2254
+ </table>
2255
+ ```
2256
+
2257
+ ### Table selectable
2258
+
2259
+ ```css
2260
+ @forward '@lucca-front/scss/src/components/indexTable';
2261
+ @forward '@lucca-front/scss/src/components/checkboxField';
2262
+ @forward '@lucca-front/scss/src/components/formLabel';
2263
+ ```
2264
+
2265
+ ```html
2266
+ <table class="indexTable mod-selectable">
2267
+ <thead class="indexTable-head">
2268
+ <tr class="indexTable-head-row">
2269
+ <th class="indexTable-head-row-transparentCell" scope="col">
2270
+ <label class="formLabel pr-u-mask" for="allchbx">Select all items</label>
2271
+ <span class="checkboxField indexTable-head-row-cell-checkbox">
2272
+ <input class="checkboxField-input" type="checkbox" id="allchbx" aria-controls="r0chbx r1chbx" />
2273
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
2274
+ </span>
2275
+ </th>
2276
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
2277
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
2278
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
2279
+ </tr>
2280
+ </thead>
2281
+ <tbody class="indexTable-body">
2282
+ <tr class="indexTable-body-row">
2283
+ <td class="indexTable-body-row-transparentCell">
2284
+ <label class="formLabel pr-u-mask" for="r0chbx">Select this item</label>
2285
+ <span class="checkboxField indexTable-body-row-cell-checkbox">
2286
+ <input class="checkboxField-input" type="checkbox" id="r0chbx" />
2287
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
2288
+ </span>
2289
+ </td>
2290
+ <td class="indexTable-body-row-cell">
2291
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
2292
+ </td>
2293
+ <td class="indexTable-body-row-cell">Content</td>
2294
+ <td class="indexTable-body-row-cell">Content</td>
2295
+ </tr>
2296
+ <tr class="indexTable-body-row">
2297
+ <td class="indexTable-body-row-transparentCell">
2298
+ <label class="formLabel pr-u-mask" for="r1chbx">Select this item</label>
2299
+ <span class="checkboxField indexTable-body-row-cell-checkbox">
2300
+ <input class="checkboxField-input" type="checkbox" id="r1chbx" />
2301
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
2302
+ </span>
2303
+ </td>
2304
+ <td class="indexTable-body-row-cell">
2305
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
2306
+ </td>
2307
+ <td class="indexTable-body-row-cell">Content</td>
2308
+ <td class="indexTable-body-row-cell">Content</td>
2309
+ </tr>
2310
+ </tbody>
2311
+ </table>
2312
+ ```
2313
+
2314
+ ### Table sortable
2315
+
2316
+ ```css
2317
+ @forward '@lucca-front/scss/src/components/indexTable';
2318
+ @forward '@lucca-front/scss/src/components/tableSortable'; // Import additionnel
2319
+ ```
2320
+
2321
+ ```html
2322
+ <table class="indexTable">
2323
+ <thead class="indexTable-head">
2324
+ <tr class="indexTable-head-row">
2325
+ <th class="indexTable-head-row-cell" scope="col">Not sortable</th>
2326
+ <th class="indexTable-head-row-cell" scope="col">
2327
+ <button type="button" class="tableSortable button">
2328
+ Sortable
2329
+ <span class="tableSortable-arrows">
2330
+ <span class="lucca-icon icon-arrowChevronTop tableSortable-arrows-ascending"></span>
2331
+ <span class="lucca-icon icon-arrowChevronBottom tableSortable-arrows-descending"></span>
2332
+ </span>
2333
+ </button>
2334
+ </th>
2335
+ <th class="indexTable-head-row-cell" scope="col" aria-sort="ascending">
2336
+ <button type="button" class="tableSortable button">
2337
+ Sorted ascending
2338
+ <span class="tableSortable-arrows">
2339
+ <span class="lucca-icon icon-arrowChevronTop tableSortable-arrows-ascending"></span>
2340
+ <span class="lucca-icon icon-arrowChevronBottom tableSortable-arrows-descending"></span>
2341
+ </span>
2342
+ </button>
2343
+ </th>
2344
+ <th class="indexTable-head-row-cell" scope="col" aria-sort="descending">
2345
+ <button type="button" class="tableSortable button">
2346
+ Sorted descending
2347
+ <span class="tableSortable-arrows">
2348
+ <span class="lucca-icon icon-arrowChevronTop tableSortable-arrows-ascending"></span>
2349
+ <span class="lucca-icon icon-arrowChevronBottom tableSortable-arrows-descending"></span>
2350
+ </span>
2351
+ </button>
2352
+ </th>
2353
+ <th class="indexTable-head-row-cell" scope="col" aria-sort="none">
2354
+ <button
2355
+ type="button"
2356
+ class="tableSortable button"
2357
+ onclick="
2358
+ switch (this.parentNode.getAttribute('aria-sort')) {
2359
+ case 'ascending':
2360
+ this.parentNode.setAttribute('aria-sort', 'descending');
2361
+ break;
2362
+ case 'descending':
2363
+ this.parentNode.setAttribute('aria-sort', 'none');
2364
+ break;
2365
+ default:
2366
+ this.parentNode.setAttribute('aria-sort', 'ascending');
2367
+ }
2368
+ "
2369
+ >
2370
+ Interactive
2371
+ <span class="tableSortable-arrows">
2372
+ <span class="lucca-icon icon-arrowChevronTop tableSortable-arrows-ascending"></span>
2373
+ <span class="lucca-icon icon-arrowChevronBottom tableSortable-arrows-descending"></span>
2374
+ </span>
2375
+ </button>
2376
+ </th>
2377
+ </tr>
2378
+ </thead>
2379
+ <tbody class="indexTable-body">
2380
+ <tr class="indexTable-body-row">
2381
+ <td class="indexTable-body-row-cell">
2382
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
2383
+ </td>
2384
+ <td class="indexTable-body-row-cell">Content</td>
2385
+ <td class="indexTable-body-row-cell">Content</td>
2386
+ <td class="indexTable-body-row-cell">Content</td>
2387
+ <td class="indexTable-body-row-cell">Content</td>
2388
+ </tr>
2389
+ <tr class="indexTable-body-row">
2390
+ <td class="indexTable-body-row-cell">
2391
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
2392
+ </td>
2393
+ <td class="indexTable-body-row-cell">Content</td>
2394
+ <td class="indexTable-body-row-cell">Content</td>
2395
+ <td class="indexTable-body-row-cell">Content</td>
2396
+ <td class="indexTable-body-row-cell">Content</td>
2397
+ </tr>
2398
+ </tbody>
2399
+ </table>
2400
+ ```
2401
+
2402
+ ### Table stackable
2403
+
2404
+ ```css
2405
+ @forward '@lucca-front/scss/src/components/indexTable';
2406
+ @forward '@lucca-front/scss/src/components/checkboxField';
2407
+ @forward '@lucca-front/scss/src/components/formLabel';
2408
+ ```
2409
+
2410
+ ```html
2411
+ <table class="indexTable mod-selectable mod-stackable">
2412
+ <thead class="indexTable-head">
2413
+ <tr class="indexTable-head-row">
2414
+ <th class="indexTable-head-row-transparentCell" scope="col">
2415
+ <label class="formLabel pr-u-mask" for="allchbx">Select all items</label>
2416
+ <span class="checkboxField indexTable-head-row-cell-checkbox">
2417
+ <input
2418
+ class="checkboxField-input"
2419
+ type="checkbox"
2420
+ id="allchbx"
2421
+ aria-controls="r0chbx r1chbx r2chbx"
2422
+ checked
2423
+ aria-checked="mixed"
2424
+ />
2425
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
2426
+ </span>
2427
+ </th>
2428
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
2429
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
2430
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
2431
+ </tr>
2432
+ </thead>
2433
+ <tbody class="indexTable-body">
2434
+ <tr class="indexTable-body-row">
2435
+ <td class="indexTable-body-row-transparentCell">
2436
+ <label class="formLabel pr-u-mask" for="r1chbx">Select this item</label>
2437
+ <span class="checkboxField indexTable-body-row-cell-checkbox">
2438
+ <input class="checkboxField-input" type="checkbox" id="r0chbx" />
2439
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
2440
+ </span>
2441
+ </td>
2442
+ <td class="indexTable-body-row-cell">
2443
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
2444
+ </td>
2445
+ <td class="indexTable-body-row-cell">Content</td>
2446
+ <td class="indexTable-body-row-cell">Content</td>
2447
+ </tr>
2448
+ <tr class="indexTable-body-row mod-stack2">
2449
+ <td class="indexTable-body-row-transparentCell">
2450
+ <label class="formLabel pr-u-mask" for="r0chbx">Select this item</label>
2451
+ <span class="checkboxField indexTable-body-row-cell-checkbox">
2452
+ <input class="checkboxField-input" type="checkbox" id="r1chbx" />
2453
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
2454
+ </span>
2455
+ </td>
2456
+ <td class="indexTable-body-row-cell">
2457
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
2458
+ </td>
2459
+ <td class="indexTable-body-row-cell">Content</td>
2460
+ <td class="indexTable-body-row-cell">Content</td>
2461
+ </tr>
2462
+ <tr class="indexTable-body-row mod-stack3">
2463
+ <td class="indexTable-body-row-transparentCell">
2464
+ <label class="formLabel pr-u-mask" for="r2chbx">Select this item</label>
2465
+ <span class="checkboxField indexTable-body-row-cell-checkbox">
2466
+ <input class="checkboxField-input" type="checkbox" id="r2chbx" />
2467
+ <span class="checkboxField-icon" aria-hidden="true"><span class="checkboxField-icon-check"></span></span>
2468
+ </span>
2469
+ </td>
2470
+ <td class="indexTable-body-row-cell">
2471
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
2472
+ </td>
2473
+ <td class="indexTable-body-row-cell">Content</td>
2474
+ <td class="indexTable-body-row-cell">Content</td>
2475
+ </tr>
2476
+ </tbody>
2477
+ </table>
2478
+ ```
2479
+
2480
+ ### Table sticky header
2481
+
2482
+ ```css
2483
+ @forward '@lucca-front/scss/src/components/indexTable';
2484
+ ```
2485
+
2486
+ ```html
2487
+ <div class="demo-wrapper">
2488
+ <table class="indexTable mod-stickyHeader">
2489
+ <thead class="indexTable-head">
2490
+ <tr class="indexTable-head-row">
2491
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
2492
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
2493
+ <th class="indexTable-head-row-cell" scope="col">Label</th>
2494
+ </tr>
2495
+ </thead>
2496
+ <tbody class="indexTable-body">
2497
+ <tr class="indexTable-body-row">
2498
+ <td class="indexTable-body-row-cell">
2499
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
2500
+ </td>
2501
+ <td class="indexTable-body-row-cell">Content</td>
2502
+ <td class="indexTable-body-row-cell">Content</td>
2503
+ </tr>
2504
+ <tr class="indexTable-body-row">
2505
+ <td class="indexTable-body-row-cell">
2506
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
2507
+ </td>
2508
+ <td class="indexTable-body-row-cell">Content</td>
2509
+ <td class="indexTable-body-row-cell">Content</td>
2510
+ </tr>
2511
+ <tr class="indexTable-body-row">
2512
+ <td class="indexTable-body-row-cell">
2513
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
2514
+ </td>
2515
+ <td class="indexTable-body-row-cell">Content</td>
2516
+ <td class="indexTable-body-row-cell">Content</td>
2517
+ </tr>
2518
+ <tr class="indexTable-body-row">
2519
+ <td class="indexTable-body-row-cell">
2520
+ <a href="#" class="indexTable-body-row-cell-link">Content</a>
2521
+ </td>
2522
+ <td class="indexTable-body-row-cell">Content</td>
2523
+ <td class="indexTable-body-row-cell">Content</td>
2524
+ </tr>
2525
+ </tbody>
2526
+ </table>
2527
+ </div>
2528
+ ```