@cnamts/synapse 1.0.0 → 1.0.2

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 (533) hide show
  1. package/README.md +1 -1
  2. package/dist/DateFilter-YWOTbfeL.js +98 -0
  3. package/dist/NumberFilter-DMmMgALM.js +121 -0
  4. package/dist/PeriodFilter-Bok5BHcn.js +112 -0
  5. package/dist/SelectFilter-BKud2WhN.js +136 -0
  6. package/dist/TextFilter-DvMf2thH.js +114 -0
  7. package/dist/{components/BackBtn → common}/constants/ExpertiseLevelEnum.d.ts +3 -0
  8. package/dist/components/Accordion/Accordion.d.ts +2 -1
  9. package/dist/components/Accordion/composables/useAccordionGroupCommunication.d.ts +5 -0
  10. package/dist/components/Accordion/composables/useAccordionKeyboardNavigation.d.ts +12 -0
  11. package/dist/components/Accordion/composables/useAccordionState.d.ts +13 -0
  12. package/dist/components/BackBtn/AccessibiliteItems.d.ts +1 -1
  13. package/dist/components/BackToTopBtn/AccessibiliteItems.d.ts +1 -1
  14. package/dist/components/ChipList/AccessibiliteItems.d.ts +1 -1
  15. package/dist/components/CollapsibleList/AccessibiliteItems.d.ts +1 -1
  16. package/dist/components/ContextualMenu/AccessibiliteItems.d.ts +1 -1
  17. package/dist/components/CookieBanner/AccessibiliteItems.d.ts +1 -1
  18. package/dist/components/CopyBtn/AccessibiliteItems.d.ts +1 -1
  19. package/dist/components/Customs/SyBtnSelect/AccessibiliteItems.d.ts +1 -1
  20. package/dist/components/Customs/SyCheckbox/SyCheckbox.d.ts +85 -0
  21. package/dist/components/Customs/SyInputSelect/AccessibiliteItems.d.ts +1 -1
  22. package/dist/components/Customs/SyInputSelect/SyInputSelect.d.ts +2 -0
  23. package/dist/components/Customs/SySelect/AccessibiliteItems.d.ts +1 -1
  24. package/dist/components/Customs/SySelect/SySelect.d.ts +33 -13
  25. package/dist/components/Customs/SyTextField/AccessibiliteItems.d.ts +1 -1
  26. package/dist/components/Customs/SyTextField/SyTextField.d.ts +2 -2
  27. package/dist/components/DataList/AccessibiliteItems.d.ts +1 -1
  28. package/dist/components/DataListGroup/AccessibiliteItems.d.ts +1 -1
  29. package/dist/components/DatePicker/AccessibiliteItems.d.ts +1 -1
  30. package/dist/components/DatePicker/ComplexDatePicker/ComplexDatePicker.d.ts +4295 -0
  31. package/dist/components/DatePicker/{DatePicker.d.ts → DatePicker/DatePicker.d.ts} +158 -104
  32. package/dist/components/DatePicker/{DateTextInput.d.ts → DateTextInput/DateTextInput.d.ts} +35 -27
  33. package/dist/components/DatePicker/composables/index.d.ts +17 -0
  34. package/dist/components/DatePicker/composables/useAsteriskDisplay.d.ts +14 -0
  35. package/dist/components/DatePicker/composables/useDateAutoClamp.d.ts +16 -0
  36. package/dist/components/DatePicker/composables/useDateFormatValidation.d.ts +25 -0
  37. package/dist/components/DatePicker/composables/useDateInputEditing.d.ts +33 -0
  38. package/dist/components/DatePicker/composables/useDatePickerViewMode.d.ts +16 -0
  39. package/dist/components/DatePicker/composables/useDatePickerVisibility.d.ts +27 -0
  40. package/dist/components/DatePicker/composables/useDateRangeInput.d.ts +29 -0
  41. package/dist/components/DatePicker/composables/useDateRangeValidation.d.ts +11 -0
  42. package/dist/components/DatePicker/composables/useDateSelection.d.ts +10 -0
  43. package/dist/components/DatePicker/composables/useDateValidation.d.ts +35 -0
  44. package/dist/components/DatePicker/composables/useDisplayedDateString.d.ts +19 -0
  45. package/dist/components/DatePicker/composables/useIconState.d.ts +17 -0
  46. package/dist/components/DatePicker/composables/useInputBlurHandler.d.ts +31 -0
  47. package/dist/components/DatePicker/composables/useInputHandler.d.ts +32 -0
  48. package/dist/components/DatePicker/composables/useManualDateValidation.d.ts +33 -0
  49. package/dist/components/DatePicker/composables/useMonthButtonCustomization.d.ts +12 -0
  50. package/dist/components/DatePicker/composables/useTodayButton.d.ts +16 -0
  51. package/dist/components/DatePicker/composables/useWeekendDays.d.ts +11 -0
  52. package/dist/components/DatePicker/constants/messages.d.ts +29 -0
  53. package/dist/components/DatePicker/types.d.ts +13 -0
  54. package/dist/components/DialogBox/AccessibiliteItems.d.ts +1 -1
  55. package/dist/components/DownloadBtn/AccessibiliteItems.d.ts +1 -1
  56. package/dist/components/ErrorPage/AccessibiliteItems.d.ts +1 -1
  57. package/dist/components/ExternalLinks/AccessibiliteItems.d.ts +1 -1
  58. package/dist/components/FileList/AccessibiliteItems.d.ts +1 -1
  59. package/dist/components/FilePreview/AccessibiliteItems.d.ts +1 -1
  60. package/dist/components/FileUpload/AccessibiliteItems.d.ts +1 -1
  61. package/dist/components/FilterInline/AccessibiliteItems.d.ts +1 -1
  62. package/dist/components/FilterSideBar/AccessibiliteItems.d.ts +1 -1
  63. package/dist/components/FilterSideBar/FilterSideBar.d.ts +395 -1
  64. package/dist/components/FooterBar/AccessibiliteItems.d.ts +1 -1
  65. package/dist/components/FranceConnectBtn/AccessibiliteItems.d.ts +1 -1
  66. package/dist/components/HeaderBar/AccessibiliteItems.d.ts +1 -1
  67. package/dist/components/HeaderBar/HeaderBurgerMenu/AccessibiliteItems.d.ts +1 -1
  68. package/dist/components/HeaderLoading/AccessibiliteItems.d.ts +1 -1
  69. package/dist/components/HeaderToolbar/AccessibiliteItems.d.ts +1 -1
  70. package/dist/components/LangBtn/AccessibiliteItems.d.ts +1 -1
  71. package/dist/components/Logo/AccessibiliteItems.d.ts +1 -1
  72. package/dist/components/LogoBrandSection/AccessibiliteItems.d.ts +1 -1
  73. package/dist/components/MaintenancePage/AccessibiliteItems.d.ts +1 -1
  74. package/dist/components/NirField/AccessibiliteItems.d.ts +1 -1
  75. package/dist/components/NirField/NirField.d.ts +7 -3
  76. package/dist/components/NirField/nirValidation.d.ts +1 -1
  77. package/dist/components/NotFoundPage/AccessibiliteItems.d.ts +1 -1
  78. package/dist/components/NotificationBar/AccessibiliteItems.d.ts +1 -1
  79. package/dist/components/PageContainer/AccessibiliteItems.d.ts +1 -1
  80. package/dist/components/PaginatedTable/AccessibiliteItems.d.ts +1 -1
  81. package/dist/components/PasswordField/AccessibiliteItems.d.ts +1 -1
  82. package/dist/components/PasswordField/PasswordField.d.ts +2 -0
  83. package/dist/components/PeriodField/AccessibiliteItems.d.ts +1 -1
  84. package/dist/components/PeriodField/PeriodField.d.ts +219 -41
  85. package/dist/components/PhoneField/AccessibiliteItems.d.ts +1 -1
  86. package/dist/components/PhoneField/PhoneField.d.ts +2 -2
  87. package/dist/components/RangeField/AccessibiliteItems.d.ts +1 -1
  88. package/dist/components/RangeField/RangeField.d.ts +2 -0
  89. package/dist/components/RatingPicker/AccessibiliteItems.d.ts +1 -1
  90. package/dist/components/SearchListField/AccessibiliteItems.d.ts +1 -1
  91. package/dist/components/SearchListField/SearchListField.d.ts +9 -0
  92. package/dist/components/SelectBtnField/AccessibiliteItems.d.ts +1 -1
  93. package/dist/components/SkipLink/AccessibiliteItems.d.ts +1 -1
  94. package/dist/components/SocialMediaLinks/AccessibiliteItems.d.ts +1 -1
  95. package/dist/components/SubHeader/AccessibiliteItems.d.ts +1 -1
  96. package/dist/components/SyAlert/AccessibiliteItems.d.ts +1 -1
  97. package/dist/components/SyTextArea/SyTextArea.d.ts +2 -0
  98. package/dist/components/TableToolbar/AccessibiliteItems.d.ts +1 -1
  99. package/dist/components/Tables/SyServerTable/SyServerTable.d.ts +652 -0
  100. package/dist/components/Tables/SyTable/SyTable.d.ts +671 -0
  101. package/dist/components/Tables/common/SyTableFilter.d.ts +126 -0
  102. package/dist/components/Tables/common/SyTablePagination.d.ts +1636 -0
  103. package/dist/components/Tables/common/TableHeader.d.ts +15 -0
  104. package/dist/components/Tables/common/constants/StateEnum.d.ts +6 -0
  105. package/dist/components/Tables/common/filters/DateFilter.d.ts +121 -0
  106. package/dist/components/Tables/common/filters/NumberFilter.d.ts +132 -0
  107. package/dist/components/Tables/common/filters/PeriodFilter.d.ts +135 -0
  108. package/dist/components/Tables/common/filters/SelectFilter.d.ts +120 -0
  109. package/dist/components/Tables/common/filters/TextFilter.d.ts +132 -0
  110. package/dist/components/Tables/common/filters/getFilterComponent.d.ts +1 -0
  111. package/dist/components/Tables/common/filters/locales.d.ts +4 -0
  112. package/dist/components/Tables/common/filters/logics/date.d.ts +1 -0
  113. package/dist/components/Tables/common/filters/logics/number.d.ts +1 -0
  114. package/dist/components/Tables/common/filters/logics/period.d.ts +1 -0
  115. package/dist/components/Tables/common/filters/logics/select.d.ts +1 -0
  116. package/dist/components/Tables/common/filters/logics/text.d.ts +1 -0
  117. package/dist/components/Tables/common/formatters.d.ts +17 -0
  118. package/dist/components/Tables/common/locales.d.ts +28 -0
  119. package/dist/components/Tables/common/organizeColumns/OrganizeColumns.d.ts +267 -0
  120. package/dist/components/Tables/common/organizeColumns/sortHeaders.d.ts +2 -0
  121. package/dist/components/Tables/common/tableAccessibilityUtils.d.ts +8 -0
  122. package/dist/components/Tables/common/tableFilterUtils.d.ts +3 -0
  123. package/dist/components/Tables/common/tableStorageUtils.d.ts +69 -0
  124. package/dist/components/Tables/common/tableUtils.d.ts +79 -0
  125. package/dist/components/Tables/common/types.d.ts +91 -0
  126. package/dist/components/Tables/common/usePagination.d.ts +22 -0
  127. package/dist/components/Tables/common/useTableCheckbox.d.ts +20 -0
  128. package/dist/components/Tables/common/useTableFilter.d.ts +9 -0
  129. package/dist/components/Tables/common/useTableHeaders.d.ts +76 -0
  130. package/dist/components/Tables/common/useTableItems.d.ts +24 -0
  131. package/dist/components/Tables/common/useTableOptions.d.ts +18 -0
  132. package/dist/components/Tables/index.d.ts +2 -0
  133. package/dist/components/ToolbarContainer/ToolbarContainer.d.ts +11 -0
  134. package/dist/components/UploadWorkflow/AccessibiliteItems.d.ts +1 -1
  135. package/dist/components/UserMenuBtn/AccessibiliteItems.d.ts +1 -1
  136. package/dist/components/UserMenuBtn/UserMenuBtn.d.ts +9 -2
  137. package/dist/components/index.d.ts +9 -5
  138. package/dist/design-system-v3.js +102 -11944
  139. package/dist/design-system-v3.umd.cjs +22 -4
  140. package/dist/designTokens/index.d.ts +3 -1
  141. package/dist/designTokens/tokens/cnam/cnamFonts.d.ts +140 -0
  142. package/dist/designTokens/tokens/pa/paFonts.d.ts +140 -0
  143. package/dist/designTokens/utils/createFontVariables.d.ts +39 -0
  144. package/dist/designTokens/utils/index.d.ts +2 -1
  145. package/dist/main-Cx8qG7YR.js +16344 -0
  146. package/dist/stories/Accessibilite/Vuetify/VuetifyItems.d.ts +14 -2
  147. package/dist/stories/DesignTokens/StylesTypographiques.stories.new.d.ts +8 -0
  148. package/dist/stories/DesignTokens/TypographyDisplay.d.ts +28 -0
  149. package/dist/stories/DesignTokens/vue-shims.d.ts +6 -0
  150. package/dist/style.css +1 -1
  151. package/dist/utils/rules/isRequired/index.d.ts +1 -1
  152. package/dist/vite-env.d.ts +12 -0
  153. package/package.json +3 -3
  154. package/src/assets/_spacers.scss +37 -1
  155. package/src/assets/_typography.scss +158 -0
  156. package/src/assets/settings.scss +7 -0
  157. package/src/common/constants/ExpertiseLevelEnum.ts +7 -0
  158. package/src/common/imgs/accessibility-svgrepo-com.svg +4 -0
  159. package/src/components/Accordion/Accessibilite/AccessibilityGuide.mdx +249 -0
  160. package/src/components/Accordion/Accordion.vue +48 -76
  161. package/src/components/Accordion/composables/__tests__/useAccordionGroupCommunication.spec.ts +146 -0
  162. package/src/components/Accordion/composables/__tests__/useAccordionKeyboardNavigation.spec.ts +209 -0
  163. package/src/components/Accordion/composables/__tests__/useAccordionState.spec.ts +144 -0
  164. package/src/components/Accordion/composables/useAccordionGroupCommunication.ts +52 -0
  165. package/src/components/Accordion/composables/useAccordionKeyboardNavigation.ts +111 -0
  166. package/src/components/Accordion/composables/useAccordionState.ts +59 -0
  167. package/src/components/Accordion/tests/__snapshots__/accordion.spec.ts.snap +3 -0
  168. package/src/components/BackBtn/AccessibiliteItems.ts +1 -1
  169. package/src/components/BackToTopBtn/AccessibiliteItems.ts +1 -1
  170. package/src/components/ChipList/AccessibiliteItems.ts +1 -1
  171. package/src/components/CollapsibleList/AccessibiliteItems.ts +1 -1
  172. package/src/components/ContextualMenu/AccessibiliteItems.ts +1 -1
  173. package/src/components/CookieBanner/AccessibiliteItems.ts +1 -1
  174. package/src/components/CopyBtn/AccessibiliteItems.ts +1 -1
  175. package/src/components/Customs/SyBtnSelect/AccessibiliteItems.ts +1 -1
  176. package/src/components/Customs/SyCheckbox/Accessibilite.mdx +303 -0
  177. package/src/components/Customs/SyCheckbox/SyCheckbox.mdx +50 -0
  178. package/src/components/Customs/SyCheckbox/SyCheckbox.stories.ts +630 -0
  179. package/src/components/Customs/SyCheckbox/SyCheckbox.vue +326 -0
  180. package/src/components/Customs/SyCheckbox/tests/SyCheckbox.spec.ts +201 -0
  181. package/src/components/Customs/SyInputSelect/AccessibiliteItems.ts +1 -1
  182. package/src/components/Customs/SyInputSelect/SyInputSelect.stories.ts +1 -0
  183. package/src/components/Customs/SyInputSelect/SyInputSelect.vue +8 -1
  184. package/src/components/Customs/SySelect/AccessibiliteItems.ts +1 -1
  185. package/src/components/Customs/SySelect/SySelect.stories.ts +160 -0
  186. package/src/components/Customs/SySelect/SySelect.vue +292 -39
  187. package/src/components/Customs/SySelect/tests/SySelect.spec.ts +234 -2
  188. package/src/components/Customs/SyTextField/AccessibiliteItems.ts +1 -1
  189. package/src/components/Customs/SyTextField/SyTextField.stories.ts +3 -2
  190. package/src/components/Customs/SyTextField/SyTextField.vue +19 -8
  191. package/src/components/DataList/AccessibiliteItems.ts +1 -1
  192. package/src/components/DataListGroup/AccessibiliteItems.ts +1 -1
  193. package/src/components/DatePicker/AccessibiliteItems.ts +1 -1
  194. package/src/components/DatePicker/ComplexDatePicker/ComplexDatePicker.mdx +212 -0
  195. package/src/components/DatePicker/ComplexDatePicker/ComplexDatePicker.stories.ts +1307 -0
  196. package/src/components/DatePicker/ComplexDatePicker/ComplexDatePicker.vue +769 -204
  197. package/src/components/DatePicker/ComplexDatePicker/tests/ComplexDatePicker.events.spec.ts +161 -0
  198. package/src/components/DatePicker/ComplexDatePicker/tests/ComplexDatePicker.spec.ts +943 -0
  199. package/src/components/DatePicker/DatePicker/DatePicker.mdx +176 -0
  200. package/src/components/DatePicker/{DatePicker.stories.ts → DatePicker/DatePicker.stories.ts} +356 -519
  201. package/src/components/DatePicker/{DatePicker.vue → DatePicker/DatePicker.vue} +435 -89
  202. package/src/components/DatePicker/DatePicker/tests/DatePicker.events.spec.ts +189 -0
  203. package/src/components/DatePicker/{tests → DatePicker/tests}/DatePicker.spec.ts +0 -14
  204. package/src/components/DatePicker/DatePickerOverview.mdx +227 -0
  205. package/src/components/DatePicker/{DatePickerValidation.mdx → DatePickerValidationExample/DatePickerValidation.mdx} +3 -3
  206. package/src/components/DatePicker/{DatePickerValidation.stories.ts → DatePickerValidationExample/DatePickerValidation.stories.ts} +2 -2
  207. package/src/components/DatePicker/DateTextInput/DateRange.stories.ts +320 -0
  208. package/src/components/DatePicker/DateTextInput/DateTextInput.events.spec.ts +148 -0
  209. package/src/components/DatePicker/DateTextInput/DateTextInput.range.spec.ts +278 -0
  210. package/src/components/DatePicker/{tests → DateTextInput}/DateTextInput.spec.ts +10 -7
  211. package/src/components/DatePicker/DateTextInput/DateTextInput.vue +1111 -0
  212. package/src/components/DatePicker/DateTextInput/NoCalendar.mdx +64 -0
  213. package/src/components/DatePicker/DateTextInput/NoCalendar.stories.ts +782 -0
  214. package/src/components/DatePicker/composables/index.ts +24 -0
  215. package/src/components/DatePicker/composables/tests/useDateAutoClamp.spec.ts +190 -0
  216. package/src/components/DatePicker/composables/tests/useDateFormatValidation.spec.ts +165 -0
  217. package/src/components/DatePicker/composables/tests/useDateInputEditing.spec.ts +359 -0
  218. package/src/components/DatePicker/composables/tests/useDatePickerViewMode.spec.ts +160 -0
  219. package/src/components/DatePicker/composables/tests/useDatePickerVisibility.spec.ts +339 -0
  220. package/src/components/DatePicker/composables/tests/useDateRangeInput.spec.ts +277 -0
  221. package/src/components/DatePicker/composables/tests/useDateRangeValidation.spec.ts +107 -0
  222. package/src/components/DatePicker/composables/tests/useDateSelection.spec.ts +171 -0
  223. package/src/components/DatePicker/composables/tests/useDateValidation.spec.ts +245 -0
  224. package/src/components/DatePicker/composables/tests/useDisplayedDateString.spec.ts +98 -0
  225. package/src/components/DatePicker/composables/tests/useIconState.spec.ts +130 -0
  226. package/src/components/DatePicker/composables/tests/useInputBlurHandler.spec.ts +456 -0
  227. package/src/components/DatePicker/composables/tests/useManualDateValidation.spec.ts +233 -0
  228. package/src/components/DatePicker/composables/tests/useMonthButtonCustomization.spec.ts +125 -0
  229. package/src/components/DatePicker/composables/tests/useTodayButton.spec.ts +97 -0
  230. package/src/components/DatePicker/composables/tests/useWeekendDays.spec.ts +28 -0
  231. package/src/components/DatePicker/composables/useAsteriskDisplay.ts +31 -0
  232. package/src/components/DatePicker/composables/useDateAutoClamp.ts +136 -0
  233. package/src/components/DatePicker/composables/useDateFormatValidation.ts +95 -0
  234. package/src/components/DatePicker/composables/useDateInputEditing.ts +326 -0
  235. package/src/components/DatePicker/composables/useDatePickerViewMode.ts +61 -0
  236. package/src/components/DatePicker/composables/useDatePickerVisibility.ts +146 -0
  237. package/src/components/DatePicker/composables/useDateRangeInput.ts +378 -0
  238. package/src/components/DatePicker/composables/useDateRangeValidation.ts +48 -0
  239. package/src/components/DatePicker/composables/useDateSelection.ts +121 -0
  240. package/src/components/DatePicker/composables/useDateValidation.ts +225 -0
  241. package/src/components/DatePicker/composables/useDisplayedDateString.ts +70 -0
  242. package/src/components/DatePicker/composables/useIconState.ts +53 -0
  243. package/src/components/DatePicker/composables/useInputBlurHandler.ts +165 -0
  244. package/src/components/DatePicker/composables/useInputHandler.ts +436 -0
  245. package/src/components/DatePicker/composables/useManualDateValidation.ts +161 -0
  246. package/src/components/DatePicker/composables/useMonthButtonCustomization.ts +187 -0
  247. package/src/components/DatePicker/composables/useTodayButton.ts +43 -0
  248. package/src/components/DatePicker/composables/useWeekendDays.ts +21 -0
  249. package/src/components/DatePicker/constants/messages.ts +50 -0
  250. package/src/components/DatePicker/docExamples/DatePickerBidirectionalValidation.vue +4 -4
  251. package/src/components/DatePicker/docExamples/DatePickerValidationExamples.vue +1 -1
  252. package/src/components/DatePicker/playground/ComplexDatePickerPlayground.vue +172 -0
  253. package/src/components/DatePicker/types.ts +15 -0
  254. package/src/components/DiacriticPicker/DiacriticPicker.stories.ts +10 -0
  255. package/src/components/DialogBox/AccessibiliteItems.ts +1 -1
  256. package/src/components/DownloadBtn/AccessibiliteItems.ts +1 -1
  257. package/src/components/ErrorPage/Accessibilite.stories.ts +8 -0
  258. package/src/components/ErrorPage/AccessibiliteItems.ts +1 -1
  259. package/src/components/ErrorPage/ErrorPage.vue +12 -6
  260. package/src/components/ErrorPage/tests/__snapshots__/ErrorPage.spec.ts.snap +4 -4
  261. package/src/components/ExternalLinks/AccessibiliteItems.ts +1 -1
  262. package/src/components/FileList/AccessibiliteItems.ts +1 -1
  263. package/src/components/FilePreview/AccessibiliteItems.ts +1 -1
  264. package/src/components/FileUpload/AccessibiliteItems.ts +1 -1
  265. package/src/components/FilterInline/AccessibiliteItems.ts +1 -1
  266. package/src/components/FilterSideBar/AccessibiliteItems.ts +1 -1
  267. package/src/components/FilterSideBar/FilterSideBar.vue +108 -90
  268. package/src/components/FilterSideBar/tests/FilterSideBar.spec.ts +27 -0
  269. package/src/components/FilterSideBar/tests/__snapshots__/FilterSideBar.spec.ts.snap +114 -109
  270. package/src/components/FooterBar/AccessibiliteItems.ts +1 -1
  271. package/src/components/FooterBar/FooterBar.vue +2 -1
  272. package/src/components/FranceConnectBtn/AccessibiliteItems.ts +1 -1
  273. package/src/components/HeaderBar/AccessibiliteItems.ts +1 -1
  274. package/src/components/HeaderBar/HeaderBurgerMenu/AccessibiliteItems.ts +1 -1
  275. package/src/components/HeaderLoading/AccessibiliteItems.ts +1 -1
  276. package/src/components/HeaderToolbar/AccessibiliteItems.ts +1 -1
  277. package/src/components/LangBtn/AccessibiliteItems.ts +1 -1
  278. package/src/components/Logo/Accessibilite.stories.ts +4 -0
  279. package/src/components/Logo/AccessibiliteItems.ts +1 -1
  280. package/src/components/LogoBrandSection/AccessibiliteItems.ts +1 -1
  281. package/src/components/MaintenancePage/AccessibiliteItems.ts +1 -1
  282. package/src/components/NirField/AccessibiliteItems.ts +1 -1
  283. package/src/components/NirField/NirField.mdx +22 -9
  284. package/src/components/NirField/NirField.stories.ts +26 -2
  285. package/src/components/NirField/NirField.vue +209 -22
  286. package/src/components/NirField/nirValidation.ts +17 -3
  287. package/src/components/NirField/tests/NirField.spec.ts +2 -2
  288. package/src/components/NotFoundPage/Accessibilite.stories.ts +8 -0
  289. package/src/components/NotFoundPage/AccessibiliteItems.ts +1 -1
  290. package/src/components/NotFoundPage/NotFoundPage.vue +2 -1
  291. package/src/components/NotFoundPage/tests/__snapshots__/NotFoundPage.spec.ts.snap +8 -6
  292. package/src/components/NotificationBar/AccessibiliteItems.ts +1 -1
  293. package/src/components/PageContainer/AccessibiliteItems.ts +1 -1
  294. package/src/components/PaginatedTable/AccessibiliteItems.ts +1 -1
  295. package/src/components/PaginatedTable/PaginatedTable.mdx +2 -0
  296. package/src/components/PaginatedTable/PaginatedTable.stories.ts +19 -0
  297. package/src/components/PaginatedTable/PaginatedTable.vue +51 -13
  298. package/src/components/PaginatedTable/tests/PaginatedTable.spec.ts +0 -2
  299. package/src/components/PasswordField/AccessibiliteItems.ts +1 -1
  300. package/src/components/PasswordField/PasswordField.stories.ts +4 -0
  301. package/src/components/PasswordField/PasswordField.vue +3 -0
  302. package/src/components/PeriodField/AccessibiliteItems.ts +1 -1
  303. package/src/components/PeriodField/PeriodField.vue +15 -1
  304. package/src/components/PhoneField/AccessibiliteItems.ts +1 -1
  305. package/src/components/PhoneField/PhoneField.stories.ts +15 -15
  306. package/src/components/PhoneField/PhoneField.vue +1 -1
  307. package/src/components/RangeField/AccessibiliteItems.ts +1 -1
  308. package/src/components/RangeField/RangeField.stories.ts +9 -0
  309. package/src/components/RangeField/RangeField.vue +4 -0
  310. package/src/components/RangeField/tests/__snapshots__/RangeField.spec.ts.snap +12 -0
  311. package/src/components/RatingPicker/AccessibiliteItems.ts +1 -1
  312. package/src/components/SearchListField/AccessibiliteItems.ts +1 -1
  313. package/src/components/SearchListField/SearchListField.vue +5 -0
  314. package/src/components/SelectBtnField/AccessibiliteItems.ts +1 -1
  315. package/src/components/SkipLink/AccessibiliteItems.ts +1 -1
  316. package/src/components/SocialMediaLinks/AccessibiliteItems.ts +1 -1
  317. package/src/components/SubHeader/AccessibiliteItems.ts +1 -1
  318. package/src/components/SyAlert/AccessibiliteItems.ts +1 -1
  319. package/src/components/SyTextArea/SyTextArea.vue +3 -0
  320. package/src/components/SyTextArea/tests/SyTextArea.spec.ts +0 -1
  321. package/src/components/TableToolbar/AccessibiliteItems.ts +1 -1
  322. package/src/components/TableToolbar/TableToolbar.stories.ts +110 -56
  323. package/src/components/Tables/SyServerTable/FilterRules.stories.ts +700 -0
  324. package/src/components/Tables/SyServerTable/SyServerTable.mdx +170 -0
  325. package/src/components/Tables/SyServerTable/SyServerTable.stories.ts +4354 -0
  326. package/src/components/Tables/SyServerTable/SyServerTable.vue +391 -0
  327. package/src/components/Tables/SyServerTable/tests/SyServerTable.spec.ts +702 -0
  328. package/src/components/Tables/SyTable/FilterRules.stories.ts +418 -0
  329. package/src/components/Tables/SyTable/SyTable.mdx +139 -0
  330. package/src/components/Tables/SyTable/SyTable.stories.ts +2754 -0
  331. package/src/components/Tables/SyTable/SyTable.vue +397 -0
  332. package/src/components/Tables/SyTable/tests/SyTable.spec.ts +707 -0
  333. package/src/components/Tables/common/SyTableFilter.vue +289 -0
  334. package/src/components/Tables/common/SyTablePagination.vue +375 -0
  335. package/src/components/Tables/common/TableHeader.vue +205 -0
  336. package/src/components/Tables/common/constants/StateEnum.ts +6 -0
  337. package/src/components/Tables/common/filters/DateFilter.vue +140 -0
  338. package/src/components/Tables/common/filters/NumberFilter.vue +234 -0
  339. package/src/components/Tables/common/filters/PeriodFilter.vue +147 -0
  340. package/src/components/Tables/common/filters/SelectFilter.vue +235 -0
  341. package/src/components/Tables/common/filters/TextFilter.vue +191 -0
  342. package/src/components/Tables/common/filters/getFilterComponent.ts +54 -0
  343. package/src/components/Tables/common/filters/locales.ts +4 -0
  344. package/src/components/Tables/common/filters/logics/date.ts +12 -0
  345. package/src/components/Tables/common/filters/logics/number.ts +48 -0
  346. package/src/components/Tables/common/filters/logics/period.ts +25 -0
  347. package/src/components/Tables/common/filters/logics/select.ts +27 -0
  348. package/src/components/Tables/common/filters/logics/tests/TextFilterLogic.spec.ts +177 -0
  349. package/src/components/Tables/common/filters/logics/text.ts +62 -0
  350. package/src/components/Tables/common/filters/tests/DateFilter.spec.ts +187 -0
  351. package/src/components/Tables/common/filters/tests/NumberFilter.spec.ts +280 -0
  352. package/src/components/Tables/common/filters/tests/PeriodFilter.spec.ts +192 -0
  353. package/src/components/Tables/common/filters/tests/SelectFilter.spec.ts +219 -0
  354. package/src/components/Tables/common/filters/tests/TextFilter.spec.ts +260 -0
  355. package/src/components/Tables/common/formatters.ts +72 -0
  356. package/src/components/Tables/common/locales.ts +31 -0
  357. package/src/components/Tables/common/organizeColumns/OrganizeColumns.vue +269 -0
  358. package/src/components/Tables/common/organizeColumns/sortHeaders.ts +9 -0
  359. package/src/components/Tables/common/tableAccessibilityUtils.ts +61 -0
  360. package/src/components/Tables/common/tableFilterUtils.ts +75 -0
  361. package/src/components/Tables/common/tableStorageUtils.ts +127 -0
  362. package/src/components/Tables/common/tableStyles.scss +80 -0
  363. package/src/components/Tables/common/tableUtils.ts +102 -0
  364. package/src/components/Tables/common/tests/SyTableFilter.spec.ts +312 -0
  365. package/src/components/Tables/common/tests/SyTablePagination.spec.ts +170 -0
  366. package/src/components/Tables/common/tests/filterByRange.spec.ts +215 -0
  367. package/src/components/Tables/common/tests/resize.spec.ts +161 -0
  368. package/src/components/Tables/common/tests/tableFilterUtils.spec.ts +92 -0
  369. package/src/components/Tables/common/tests/tableUtils.spec.ts +228 -0
  370. package/src/components/Tables/common/types.ts +92 -0
  371. package/src/components/Tables/common/usePagination.ts +83 -0
  372. package/src/components/Tables/common/useTableCheckbox.ts +58 -0
  373. package/src/components/Tables/common/useTableFilter.ts +19 -0
  374. package/src/components/Tables/common/useTableHeaders.ts +88 -0
  375. package/src/components/Tables/common/useTableItems.ts +87 -0
  376. package/src/components/Tables/common/useTableOptions.ts +93 -0
  377. package/src/components/Tables/index.ts +3 -0
  378. package/src/components/ToolbarContainer/ToolbarContainer.mdx +16 -0
  379. package/src/components/ToolbarContainer/ToolbarContainer.stories.ts +675 -0
  380. package/src/components/ToolbarContainer/ToolbarContainer.vue +128 -0
  381. package/src/components/ToolbarContainer/tests/ToolbarContainer.spec.ts +156 -0
  382. package/src/components/UploadWorkflow/AccessibiliteItems.ts +1 -1
  383. package/src/components/UserMenuBtn/AccessibiliteItems.ts +1 -1
  384. package/src/components/UserMenuBtn/UserMenuBtn.stories.ts +74 -0
  385. package/src/components/UserMenuBtn/UserMenuBtn.vue +19 -17
  386. package/src/components/index.ts +9 -5
  387. package/src/composables/date/useDateFormatDayjs.ts +8 -3
  388. package/src/composables/date/useDateInitializationDayjs.ts +28 -36
  389. package/src/composables/rules/useFieldValidation.ts +1 -2
  390. package/src/designTokens/index.ts +4 -0
  391. package/src/designTokens/tokens/cnam/cnamFonts.ts +140 -0
  392. package/src/designTokens/tokens/pa/paFonts.ts +140 -0
  393. package/src/designTokens/utils/createFontVariables.ts +143 -0
  394. package/src/designTokens/utils/index.ts +2 -1
  395. package/src/stories/Accessibilite/Aculturation/AuditDesignSystem.mdx +293 -20
  396. package/src/stories/Accessibilite/Aculturation/SensibilisationAccessibilite.mdx +448 -54
  397. package/src/stories/Accessibilite/Audit/RGAA.mdx +231 -23
  398. package/src/stories/Accessibilite/Avancement/Avancement.mdx +591 -7
  399. package/src/stories/Accessibilite/Avancement/Avancement.stories.ts +139 -38
  400. package/src/stories/Accessibilite/Introduction.mdx +258 -18
  401. package/src/stories/Accessibilite/KitDePreAudit/Echantillonnage.mdx +221 -31
  402. package/src/stories/Accessibilite/KitDePreAudit/Introduction.mdx +204 -22
  403. package/src/stories/Accessibilite/KitDePreAudit/Outils/Introduction.mdx +537 -24
  404. package/src/stories/Accessibilite/KitDePreAudit/Outils/LecteursDEcran.mdx +577 -70
  405. package/src/stories/Accessibilite/KitDePreAudit/Outils/Tanaguru.mdx +382 -31
  406. package/src/stories/Accessibilite/KitDePreAudit/Preaudit.mdx +419 -81
  407. package/src/stories/Accessibilite/Vuetify/Vuetify.mdx +132 -6
  408. package/src/stories/Accessibilite/Vuetify/Vuetify.stories.ts +370 -146
  409. package/src/stories/Accessibilite/Vuetify/VuetifyItems.ts +35 -57
  410. package/src/stories/Demarrer/Accueil.stories.ts +32 -8
  411. package/src/stories/DesignTokens/StylesTypographiques.mdx +10 -9
  412. package/src/stories/DesignTokens/StylesTypographiques.stories.new.ts +397 -0
  413. package/src/stories/DesignTokens/StylesTypographiques.stories.ts +397 -0
  414. package/src/stories/DesignTokens/TypographyDisplay.vue +155 -0
  415. package/src/stories/DesignTokens/vue-shims.d.ts +6 -0
  416. package/src/stories/GuideDuDev/LesBreackingChanges.mdx +0 -2
  417. package/src/stories/GuideDuDev/MigrationDepuisBridge.mdx +1 -1
  418. package/src/stories/GuideDuDev/MigrationDepuisVue2.mdx +1 -1
  419. package/src/stories/GuideDuDev/PortailAgent.mdx +10 -0
  420. package/src/stories/GuideDuDev/PortailAgent.stories.ts +506 -0
  421. package/src/stories/GuideDuDev/Theme.mdx +41 -0
  422. package/src/utils/rules/isHolidayDay/IsHolidayDay.stories.ts +1 -1
  423. package/src/utils/rules/isRequired/index.ts +2 -1
  424. package/src/vite-env.d.ts +12 -0
  425. package/src/vuetifyConfig.ts +10 -3
  426. package/dist/components/BackToTopBtn/constants/ExpertiseLevelEnum.d.ts +0 -4
  427. package/dist/components/ChipList/constants/ExpertiseLevelEnum.d.ts +0 -4
  428. package/dist/components/CollapsibleList/constants/ExpertiseLevelEnum.d.ts +0 -4
  429. package/dist/components/ContextualMenu/constants/ExpertiseLevelEnum.d.ts +0 -4
  430. package/dist/components/CookieBanner/constants/ExpertiseLevelEnum.d.ts +0 -4
  431. package/dist/components/CopyBtn/constants/ExpertiseLevelEnum.d.ts +0 -4
  432. package/dist/components/Customs/SyBtnSelect/constants/ExpertiseLevelEnum.d.ts +0 -4
  433. package/dist/components/Customs/SyInputSelect/constants/ExpertiseLevelEnum.d.ts +0 -4
  434. package/dist/components/Customs/SySelect/constants/ExpertiseLevelEnum.d.ts +0 -4
  435. package/dist/components/Customs/SyTextField/constants/ExpertiseLevelEnum.d.ts +0 -4
  436. package/dist/components/DataList/constants/ExpertiseLevelEnum.d.ts +0 -4
  437. package/dist/components/DataListGroup/constants/ExpertiseLevelEnum.d.ts +0 -4
  438. package/dist/components/DatePicker/constants/ExpertiseLevelEnum.d.ts +0 -4
  439. package/dist/components/DialogBox/constants/ExpertiseLevelEnum.d.ts +0 -4
  440. package/dist/components/DownloadBtn/constants/ExpertiseLevelEnum.d.ts +0 -4
  441. package/dist/components/ErrorPage/constants/ExpertiseLevelEnum.d.ts +0 -4
  442. package/dist/components/ExternalLinks/constants/ExpertiseLevelEnum.d.ts +0 -4
  443. package/dist/components/FileList/constants/ExpertiseLevelEnum.d.ts +0 -4
  444. package/dist/components/FilePreview/constants/ExpertiseLevelEnum.d.ts +0 -4
  445. package/dist/components/FileUpload/constants/ExpertiseLevelEnum.d.ts +0 -4
  446. package/dist/components/FilterInline/constants/ExpertiseLevelEnum.d.ts +0 -4
  447. package/dist/components/FilterSideBar/constants/ExpertiseLevelEnum.d.ts +0 -4
  448. package/dist/components/FooterBar/constants/ExpertiseLevelEnum.d.ts +0 -4
  449. package/dist/components/FranceConnectBtn/constants/ExpertiseLevelEnum.d.ts +0 -4
  450. package/dist/components/HeaderBar/HeaderBurgerMenu/constants/ExpertiseLevelEnum.d.ts +0 -4
  451. package/dist/components/HeaderBar/constants/ExpertiseLevelEnum.d.ts +0 -4
  452. package/dist/components/HeaderLoading/constants/ExpertiseLevelEnum.d.ts +0 -4
  453. package/dist/components/HeaderToolbar/constants/ExpertiseLevelEnum.d.ts +0 -4
  454. package/dist/components/LangBtn/constants/ExpertiseLevelEnum.d.ts +0 -4
  455. package/dist/components/Logo/constants/ExpertiseLevelEnum.d.ts +0 -4
  456. package/dist/components/LogoBrandSection/constants/ExpertiseLevelEnum.d.ts +0 -4
  457. package/dist/components/MaintenancePage/constants/ExpertiseLevelEnum.d.ts +0 -4
  458. package/dist/components/NirField/constants/ExpertiseLevelEnum.d.ts +0 -4
  459. package/dist/components/NotFoundPage/constants/ExpertiseLevelEnum.d.ts +0 -4
  460. package/dist/components/NotificationBar/constants/ExpertiseLevelEnum.d.ts +0 -4
  461. package/dist/components/PageContainer/constants/ExpertiseLevelEnum.d.ts +0 -4
  462. package/dist/components/PaginatedTable/constants/ExpertiseLevelEnum.d.ts +0 -4
  463. package/dist/components/PasswordField/constants/ExpertiseLevelEnum.d.ts +0 -4
  464. package/dist/components/PeriodField/constants/ExpertiseLevelEnum.d.ts +0 -4
  465. package/dist/components/PhoneField/constants/ExpertiseLevelEnum.d.ts +0 -4
  466. package/dist/components/RangeField/constants/ExpertiseLevelEnum.d.ts +0 -4
  467. package/dist/components/RatingPicker/constants/ExpertiseLevelEnum.d.ts +0 -4
  468. package/dist/components/SearchListField/constants/ExpertiseLevelEnum.d.ts +0 -4
  469. package/dist/components/SelectBtnField/constants/ExpertiseLevelEnum.d.ts +0 -4
  470. package/dist/components/SkipLink/constants/ExpertiseLevelEnum.d.ts +0 -4
  471. package/dist/components/SocialMediaLinks/constants/ExpertiseLevelEnum.d.ts +0 -4
  472. package/dist/components/SubHeader/constants/ExpertiseLevelEnum.d.ts +0 -4
  473. package/dist/components/SyAlert/constants/ExpertiseLevelEnum.d.ts +0 -4
  474. package/dist/components/TableToolbar/constants/ExpertiseLevelEnum.d.ts +0 -4
  475. package/dist/components/UploadWorkflow/constants/ExpertiseLevelEnum.d.ts +0 -4
  476. package/dist/components/UserMenuBtn/constants/ExpertiseLevelEnum.d.ts +0 -4
  477. package/src/components/BackBtn/constants/ExpertiseLevelEnum.ts +0 -4
  478. package/src/components/BackToTopBtn/constants/ExpertiseLevelEnum.ts +0 -4
  479. package/src/components/ChipList/constants/ExpertiseLevelEnum.ts +0 -4
  480. package/src/components/CollapsibleList/constants/ExpertiseLevelEnum.ts +0 -4
  481. package/src/components/ContextualMenu/constants/ExpertiseLevelEnum.ts +0 -4
  482. package/src/components/CookieBanner/constants/ExpertiseLevelEnum.ts +0 -4
  483. package/src/components/CopyBtn/constants/ExpertiseLevelEnum.ts +0 -4
  484. package/src/components/Customs/SyBtnSelect/constants/ExpertiseLevelEnum.ts +0 -4
  485. package/src/components/Customs/SyInputSelect/constants/ExpertiseLevelEnum.ts +0 -4
  486. package/src/components/Customs/SySelect/constants/ExpertiseLevelEnum.ts +0 -4
  487. package/src/components/Customs/SyTextField/constants/ExpertiseLevelEnum.ts +0 -4
  488. package/src/components/DataList/constants/ExpertiseLevelEnum.ts +0 -4
  489. package/src/components/DataListGroup/constants/ExpertiseLevelEnum.ts +0 -4
  490. package/src/components/DatePicker/DatePicker.mdx +0 -222
  491. package/src/components/DatePicker/DateTextInput.vue +0 -504
  492. package/src/components/DatePicker/constants/ExpertiseLevelEnum.ts +0 -4
  493. package/src/components/DialogBox/constants/ExpertiseLevelEnum.ts +0 -4
  494. package/src/components/DownloadBtn/constants/ExpertiseLevelEnum.ts +0 -4
  495. package/src/components/ErrorPage/constants/ExpertiseLevelEnum.ts +0 -4
  496. package/src/components/ExternalLinks/constants/ExpertiseLevelEnum.ts +0 -4
  497. package/src/components/FileList/constants/ExpertiseLevelEnum.ts +0 -4
  498. package/src/components/FilePreview/constants/ExpertiseLevelEnum.ts +0 -4
  499. package/src/components/FileUpload/constants/ExpertiseLevelEnum.ts +0 -4
  500. package/src/components/FilterInline/constants/ExpertiseLevelEnum.ts +0 -4
  501. package/src/components/FilterSideBar/constants/ExpertiseLevelEnum.ts +0 -4
  502. package/src/components/FooterBar/constants/ExpertiseLevelEnum.ts +0 -4
  503. package/src/components/FranceConnectBtn/constants/ExpertiseLevelEnum.ts +0 -4
  504. package/src/components/HeaderBar/HeaderBurgerMenu/constants/ExpertiseLevelEnum.ts +0 -4
  505. package/src/components/HeaderBar/constants/ExpertiseLevelEnum.ts +0 -4
  506. package/src/components/HeaderLoading/constants/ExpertiseLevelEnum.ts +0 -4
  507. package/src/components/HeaderToolbar/constants/ExpertiseLevelEnum.ts +0 -4
  508. package/src/components/LangBtn/constants/ExpertiseLevelEnum.ts +0 -4
  509. package/src/components/Logo/constants/ExpertiseLevelEnum.ts +0 -4
  510. package/src/components/LogoBrandSection/constants/ExpertiseLevelEnum.ts +0 -4
  511. package/src/components/MaintenancePage/constants/ExpertiseLevelEnum.ts +0 -4
  512. package/src/components/NirField/constants/ExpertiseLevelEnum.ts +0 -4
  513. package/src/components/NotFoundPage/constants/ExpertiseLevelEnum.ts +0 -4
  514. package/src/components/NotificationBar/constants/ExpertiseLevelEnum.ts +0 -4
  515. package/src/components/PageContainer/constants/ExpertiseLevelEnum.ts +0 -4
  516. package/src/components/PaginatedTable/constants/ExpertiseLevelEnum.ts +0 -4
  517. package/src/components/PaginatedTable/tests/__snapshots__/PaginatedTable.spec.ts.snap +0 -886
  518. package/src/components/PasswordField/constants/ExpertiseLevelEnum.ts +0 -4
  519. package/src/components/PeriodField/constants/ExpertiseLevelEnum.ts +0 -4
  520. package/src/components/PhoneField/constants/ExpertiseLevelEnum.ts +0 -4
  521. package/src/components/RangeField/constants/ExpertiseLevelEnum.ts +0 -4
  522. package/src/components/RatingPicker/constants/ExpertiseLevelEnum.ts +0 -4
  523. package/src/components/SearchListField/constants/ExpertiseLevelEnum.ts +0 -4
  524. package/src/components/SelectBtnField/constants/ExpertiseLevelEnum.ts +0 -4
  525. package/src/components/SkipLink/constants/ExpertiseLevelEnum.ts +0 -4
  526. package/src/components/SocialMediaLinks/constants/ExpertiseLevelEnum.ts +0 -4
  527. package/src/components/SubHeader/constants/ExpertiseLevelEnum.ts +0 -4
  528. package/src/components/SyAlert/constants/ExpertiseLevelEnum.ts +0 -4
  529. package/src/components/TableToolbar/constants/ExpertiseLevelEnum.ts +0 -4
  530. package/src/components/UploadWorkflow/constants/ExpertiseLevelEnum.ts +0 -4
  531. package/src/components/UserMenuBtn/constants/ExpertiseLevelEnum.ts +0 -4
  532. package/src/stories/DesignTokens/ThemePA.mdx +0 -35
  533. /package/src/components/DatePicker/{examples → playground}/DatePickerHolidayRule.vue +0 -0
@@ -0,0 +1,128 @@
1
+ <script setup lang="ts">
2
+ import { onMounted, ref } from 'vue'
3
+
4
+ const toolbar = ref<HTMLDivElement>()
5
+
6
+ let tools: Array<HTMLElement>
7
+
8
+ onMounted(() => {
9
+ tools = Array.from(toolbar.value?.querySelectorAll<HTMLElement>('button:not([disabled]), a:not([disabled]), input:not([disabled])') || [])
10
+ tools?.forEach((el) => {
11
+ el.setAttribute('tabindex', '-1')
12
+ })
13
+ })
14
+
15
+ function selectNextElement(e: Event & { target: HTMLElement }) {
16
+ const currentIndex = tools.findIndex(tool => tool === e.target)
17
+
18
+ const nextIndex = currentIndex < tools.length - 1 ? currentIndex + 1 : 0
19
+
20
+ const nextElem = tools.at(nextIndex)
21
+
22
+ e.target.setAttribute('tabindex', '-1')
23
+ nextElem?.setAttribute('tabindex', '0')
24
+ nextElem?.focus()
25
+ }
26
+
27
+ function selectPrevElement(e: Event & { target: HTMLElement }) {
28
+ let currentIndex = tools.findIndex(tool => tool === e.target)
29
+
30
+ const prevIndex = currentIndex > 0 ? currentIndex - 1 : tools.length - 1
31
+
32
+ const nextElem = tools.at(prevIndex)
33
+
34
+ e.target.setAttribute('tabindex', '-1')
35
+ nextElem?.setAttribute('tabindex', '0')
36
+ nextElem?.focus()
37
+ }
38
+
39
+ function selectFirstElement() {
40
+ const firstElement = tools.at(0)
41
+ if (!firstElement) {
42
+ return
43
+ }
44
+ document.activeElement?.setAttribute('tabindex', '-1')
45
+ firstElement.setAttribute('tabindex', '0')
46
+ firstElement.focus()
47
+ }
48
+
49
+ function selectLastElement() {
50
+ const lastElement = tools.at(-1)
51
+ if (!lastElement) {
52
+ return
53
+ }
54
+ document.activeElement?.setAttribute('tabindex', '-1')
55
+ lastElement.setAttribute('tabindex', '0')
56
+ lastElement.focus()
57
+ }
58
+
59
+ let lastElementFocused: HTMLElement | undefined = undefined
60
+
61
+ function setupFocus() {
62
+ // Remove the ability to tab into the toolbar to be able to shift focus to previous focusable element
63
+ toolbar.value?.setAttribute('tabindex', '-1')
64
+
65
+ if (lastElementFocused) {
66
+ // If there is a last focused element, restore focus to it
67
+ lastElementFocused.setAttribute('tabindex', '0')
68
+ lastElementFocused.focus()
69
+ }
70
+ else {
71
+ selectFirstElement()
72
+ }
73
+ }
74
+
75
+ function saveFocus(e: FocusEvent) {
76
+ // Save the last focused element to restore focus later
77
+ if (e.target !== e.currentTarget) {
78
+ lastElementFocused = e.target as HTMLElement
79
+ }
80
+ }
81
+
82
+ function blurToolbar(e: FocusEvent) {
83
+ // When an item of the toolbar is blured it should not be focusable anymore
84
+ (e.target as HTMLElement)?.setAttribute('tabindex', '-1')
85
+
86
+ // When the toolbar loses focus, we need to set its focusable
87
+ if (toolbar.value?.contains(e.relatedTarget as HTMLElement)) {
88
+ return
89
+ }
90
+ toolbar.value?.setAttribute('tabindex', '0')
91
+ }
92
+ </script>
93
+
94
+ <!-- eslint-disable vuejs-accessibility/no-static-element-interactions -->
95
+ <template>
96
+ <div
97
+ ref="toolbar"
98
+ role="toolbar"
99
+ tabindex="0"
100
+ class="sy-toolbar"
101
+ @keydown.left="selectPrevElement"
102
+ @keydown.right="selectNextElement"
103
+ @keydown.up="selectPrevElement"
104
+ @keydown.down="selectNextElement"
105
+ @keydown.home.prevent="selectFirstElement"
106
+ @keydown.end.prevent="selectLastElement"
107
+ @focus="setupFocus"
108
+ @focus.capture="saveFocus"
109
+ @blur.capture="blurToolbar"
110
+ >
111
+ <slot />
112
+ </div>
113
+ </template>
114
+
115
+ <style scoped>
116
+ .sy-toolbar:has(:focus-visible) {
117
+ position: relative;
118
+ }
119
+
120
+ .sy-toolbar:has(:focus-visible)::after {
121
+ content: '';
122
+ display: block;
123
+ position: absolute;
124
+ inset: -6px;
125
+ border-radius: 5px;
126
+ border: 2px solid rgb(var(--v-theme-primary));
127
+ }
128
+ </style>
@@ -0,0 +1,156 @@
1
+ import { describe, it, expect } from 'vitest'
2
+ import { mount } from '@vue/test-utils'
3
+ import Toolbar from '../ToolbarContainer.vue'
4
+ import { VBtn } from 'vuetify/components'
5
+ import { vuetify } from '@tests/unit/setup'
6
+ import { defineComponent } from 'vue'
7
+
8
+ describe('ToolbarContainer.vue', () => {
9
+ it('renders default slot content', () => {
10
+ const wrapper = mount(Toolbar, {
11
+ global: {
12
+ plugins: [vuetify],
13
+ },
14
+ slots: {
15
+ default: '<div class="toolbar-content">Toolbar Content</div>',
16
+ },
17
+ })
18
+
19
+ expect(wrapper.find('.toolbar-content').exists()).toBe(true)
20
+ })
21
+
22
+ it('applies custom classes', () => {
23
+ const wrapper = mount(Toolbar, {
24
+ global: {
25
+ plugins: [vuetify],
26
+ },
27
+ props: {
28
+ class: 'custom-toolbar',
29
+ },
30
+ })
31
+
32
+ expect(wrapper.classes()).toContain('custom-toolbar')
33
+ })
34
+
35
+ it('set the focus to the first button', async () => {
36
+ const wrapper = mount(Toolbar, {
37
+ attachTo: document.body,
38
+ global: {
39
+ plugins: [vuetify],
40
+ },
41
+ slots: {
42
+ default: `
43
+ <div>
44
+ <VBtn>Action 1</VBtn>
45
+ <VBtn>Action 2</VBtn>
46
+ </div>
47
+ `,
48
+ },
49
+ })
50
+
51
+ const toolbar = wrapper.find('.sy-toolbar')
52
+ const firstButton = wrapper.find('button.v-btn')
53
+
54
+ await toolbar.trigger('focus')
55
+ expect(document.activeElement).toBe(firstButton.element)
56
+ })
57
+
58
+ it('focuses the button when the navigation key are pressed', async () => {
59
+ const wrapper = mount(Toolbar, {
60
+ attachTo: document.body,
61
+ global: {
62
+ plugins: [vuetify],
63
+ },
64
+ slots: {
65
+ default: `
66
+ <div>
67
+ <VBtn>Action 1</VBtn>
68
+ <VBtn>Action 2</VBtn>
69
+ </div>
70
+ `,
71
+ },
72
+ })
73
+
74
+ const toolbar = wrapper.find('.sy-toolbar')
75
+ const firstButton = wrapper.find('button.v-btn')
76
+ const secondButton = wrapper.findAll('button.v-btn')[1]
77
+
78
+ await toolbar.trigger('focus')
79
+ await firstButton.trigger('keydown', { key: 'ArrowRight' })
80
+ expect(document.activeElement).toBe(secondButton.element)
81
+ await secondButton.trigger('keydown', { key: 'ArrowLeft' })
82
+ expect(document.activeElement).toBe(firstButton.element)
83
+ await firstButton.trigger('keydown', { key: 'ArrowDown' })
84
+ expect(document.activeElement).toBe(secondButton.element)
85
+ await secondButton.trigger('keydown', { key: 'ArrowUp' })
86
+ expect(document.activeElement).toBe(firstButton.element)
87
+ })
88
+
89
+ it('focuses the first and last buttons when Home and End keys are pressed', async () => {
90
+ const wrapper = mount(Toolbar, {
91
+ attachTo: document.body,
92
+ global: {
93
+ plugins: [vuetify],
94
+ },
95
+ slots: {
96
+ default: `
97
+ <div>
98
+ <VBtn>Action 1</VBtn>
99
+ <VBtn>Action 2</VBtn>
100
+ <VBtn>Action 3</VBtn>
101
+ <VBtn>Action 4</VBtn>
102
+ </div>
103
+ `,
104
+ },
105
+ })
106
+
107
+ const toolbar = wrapper.find('.sy-toolbar')
108
+ const firstButton = wrapper.find('button.v-btn')
109
+ const lastButton = wrapper.findAll('button.v-btn')[3]
110
+
111
+ await toolbar.trigger('focus')
112
+ await firstButton.trigger('keydown', { key: 'End' })
113
+ expect(document.activeElement).toBe(lastButton.element)
114
+ await lastButton.trigger('keydown', { key: 'Home' })
115
+ expect(document.activeElement).toBe(firstButton.element)
116
+ })
117
+
118
+ it('keeps in memory the last focused button', async () => {
119
+ const TestComponent = defineComponent({
120
+ components: {
121
+ Toolbar,
122
+ VBtn,
123
+ },
124
+ template: `
125
+ <div>
126
+ <Toolbar>
127
+ <VBtn>Action 1</VBtn>
128
+ <VBtn>Action 2</VBtn>
129
+ <VBtn>Action 3</VBtn>
130
+ </Toolbar>
131
+ <VBtn>Action 4</VBtn>
132
+ </div>
133
+ `,
134
+ })
135
+ const wrapper = mount(TestComponent, {
136
+ attachTo: document.body,
137
+ global: {
138
+ plugins: [vuetify],
139
+ },
140
+ })
141
+
142
+ const toolbar = wrapper.find('.sy-toolbar')
143
+ const firstButton = wrapper.find('button.v-btn')
144
+ const secondButton = wrapper.findAll('button.v-btn')[1]
145
+ const lastButton = wrapper.findAll<HTMLElement>('button.v-btn')[3]
146
+
147
+ await toolbar.trigger('focus')
148
+ expect(document.activeElement).toBe(firstButton.element)
149
+ await firstButton.trigger('keydown', { key: 'ArrowRight' })
150
+ expect(document.activeElement).toBe(secondButton.element)
151
+ await lastButton.element.focus()
152
+ expect(document.activeElement).toBe(lastButton.element)
153
+ await toolbar.trigger('focus')
154
+ expect(document.activeElement).toBe(secondButton.element)
155
+ })
156
+ })
@@ -1,4 +1,4 @@
1
- import { ExpertiseLevelEnum } from './constants/ExpertiseLevelEnum'
1
+ import { ExpertiseLevelEnum } from '@/common/constants/ExpertiseLevelEnum'
2
2
 
3
3
  export const AccessibiliteItemsIndeterminate = [
4
4
  {
@@ -1,4 +1,4 @@
1
- import { ExpertiseLevelEnum } from './constants/ExpertiseLevelEnum'
1
+ import { ExpertiseLevelEnum } from '@/common/constants/ExpertiseLevelEnum'
2
2
 
3
3
  export const AccessibiliteItemsIndeterminate = [
4
4
 
@@ -111,6 +111,13 @@ const meta = {
111
111
  },
112
112
  },
113
113
  },
114
+ 'default': {
115
+ control: false,
116
+ description: 'Ecrase le contenu du menu utilisateur',
117
+ table: {
118
+ category: 'slots',
119
+ },
120
+ },
114
121
  'onLogout': {
115
122
  action: 'logout',
116
123
  description: 'Événement déclenché lors de la déconnexion de l\'utilisateur',
@@ -594,3 +601,70 @@ export const LogoutEvent: Story = {
594
601
  }
595
602
  },
596
603
  }
604
+
605
+ export const Slot: Story = {
606
+ parameters: {
607
+ sourceCode: [
608
+ {
609
+ name: 'Template',
610
+ code: `<template>
611
+ <UserMenuBtn
612
+ v-model="selected"
613
+ :full-name="fullName"
614
+ >
615
+ <div class="ma-6 text-center">
616
+ <p class="text-h6">
617
+ Bienvenue, {{ fullName }}
618
+ </p>
619
+
620
+ <p class="mt-2">
621
+ La création de votre compte est en cours,<br> vos services seront accessibles dans les prochains jours.
622
+ </p>
623
+ </div>
624
+ </UserMenuBtn>
625
+ </template>`,
626
+ },
627
+ {
628
+ name: 'Script',
629
+ code: `<script setup lang="ts">
630
+ import { ref } from 'vue'
631
+ import { UserMenuBtn } from '@cnamts/synapse'
632
+
633
+ const selected = ref(null)
634
+ const fullName = ref('John Doe')
635
+
636
+ </script>`,
637
+ },
638
+ ],
639
+ },
640
+ args: {
641
+ modelValue: null,
642
+ hideLogoutBtn: false,
643
+ hideUserIcon: false,
644
+ isMobileView: false,
645
+ vuetifyOptions: undefined,
646
+ fullName: 'John Doe',
647
+ },
648
+ render: (args) => {
649
+ return {
650
+ components: { UserMenuBtn },
651
+ setup() {
652
+ return { args }
653
+ },
654
+ template: `
655
+ <div class="pa-4">
656
+ <UserMenuBtn v-bind="args">
657
+ <div class="ma-6 text-center">
658
+ <p class="text-h6">
659
+ Bienvenue, {{ args.fullName }}
660
+ </p>
661
+
662
+ <p class="mt-2">
663
+ La création de votre compte est en cours,<br> vos services seront accessibles dans les prochains jours.
664
+ </p>
665
+ </div>
666
+ </UserMenuBtn>
667
+ </div>`,
668
+ }
669
+ },
670
+ }
@@ -64,23 +64,25 @@
64
64
  </VIcon>
65
65
  </template>
66
66
  <template #footer-list-item>
67
- <VListItem
68
- v-if="!hideLogoutBtn"
69
- class="logout"
70
- v-bind="options['logoutListItem']"
71
- @click="$emit('logout')"
72
- >
73
- <div class="d-flex">
74
- <VIcon
75
- :icon="mdiLoginVariant"
76
- class="mr-4"
77
- v-bind="options['logoutIcon']"
78
- />
79
- <VListItemTitle class="logout">
80
- {{ props.logoutText }}
81
- </VListItemTitle>
82
- </div>
83
- </VListItem>
67
+ <slot>
68
+ <VListItem
69
+ v-if="!hideLogoutBtn"
70
+ class="logout"
71
+ v-bind="options['logoutListItem']"
72
+ @click="$emit('logout')"
73
+ >
74
+ <div class="d-flex">
75
+ <VIcon
76
+ :icon="mdiLoginVariant"
77
+ class="mr-4"
78
+ v-bind="options['logoutIcon']"
79
+ />
80
+ <VListItemTitle class="logout">
81
+ {{ props.logoutText }}
82
+ </VListItemTitle>
83
+ </div>
84
+ </VListItem>
85
+ </slot>
84
86
  </template>
85
87
  </SyBtnSelect>
86
88
  </template>
@@ -1,9 +1,9 @@
1
- export { default as DatePicker } from '@/components/DatePicker/DatePicker.vue'
1
+ export { default as DatePicker } from '@/components/DatePicker/DatePicker/DatePicker.vue'
2
+ export { useDateFormat } from '../composables/date/useDateFormatDayjs'
2
3
  export { useFieldValidation } from '../composables/rules/useFieldValidation'
3
4
  export type { RuleOptions } from '../composables/rules/useFieldValidation'
4
- export { useNotificationService } from '../services/NotificationService'
5
5
  export { useValidation } from '../composables/validation/useValidation'
6
- export { useDateFormat } from '../composables/date/useDateFormatDayjs'
6
+ export { useNotificationService } from '../services/NotificationService'
7
7
  export { default as Accordion } from './Accordion/Accordion.vue'
8
8
  export { default as BackBtn } from './BackBtn/BackBtn.vue'
9
9
  export { default as BackToTopBtn } from './BackToTopBtn/BackToTopBtn.vue'
@@ -23,8 +23,8 @@ export { default as SyTextField } from './Customs/SyTextField/SyTextField.vue'
23
23
  export { default as DataList } from './DataList/DataList.vue'
24
24
  export { default as DataListGroup } from './DataListGroup/DataListGroup.vue'
25
25
  export { default as DataListItem } from './DataListItem/DataListItem.vue'
26
- export { default as DialogBox } from './DialogBox/DialogBox.vue'
27
26
  export { default as DiacriticPicker } from './DiacriticPicker/DiacriticPicker.vue'
27
+ export { default as DialogBox } from './DialogBox/DialogBox.vue'
28
28
  export { default as DownloadBtn } from './DownloadBtn/DownloadBtn.vue'
29
29
  export { default as ErrorPage } from './ErrorPage/ErrorPage.vue'
30
30
  export { default as ExternalLinks } from './ExternalLinks/ExternalLinks.vue'
@@ -45,7 +45,6 @@ export { default as HeaderMenuBtn } from './HeaderBar/HeaderMenuBtn/HeaderMenuBt
45
45
  export { default as HeaderLoading } from './HeaderLoading/HeaderLoading.vue'
46
46
  export { default as HeaderNavigationBar } from './HeaderNavigationBar/HeaderNavigationBar.vue'
47
47
  export { default as HeaderToolbar } from './HeaderToolbar/HeaderToolbar.vue'
48
- export { indicatifs } from './PhoneField/indicatifs'
49
48
  export { default as LangBtn } from './LangBtn/LangBtn.vue'
50
49
  export { default as Logo } from './Logo/Logo.vue'
51
50
  export { default as LogoBrandSection } from './LogoBrandSection/LogoBrandSection.vue'
@@ -59,6 +58,7 @@ export { default as PageContainer } from './PageContainer/PageContainer.vue'
59
58
  export { default as PaginatedTable } from './PaginatedTable/PaginatedTable.vue'
60
59
  export { default as PasswordField } from './PasswordField/PasswordField.vue'
61
60
  export { default as PeriodField } from './PeriodField/PeriodField.vue'
61
+ export { indicatifs } from './PhoneField/indicatifs'
62
62
  export { default as PhoneField } from './PhoneField/PhoneField.vue'
63
63
  export { default as RangeField } from './RangeField/RangeField.vue'
64
64
  export { default as RatingPicker } from './RatingPicker/RatingPicker.vue'
@@ -68,7 +68,11 @@ export { default as SkipLink } from './SkipLink/SkipLink.vue'
68
68
  export { default as SocialMediaLinks } from './SocialMediaLinks/SocialMediaLinks.vue'
69
69
  export { default as SubHeader } from './SubHeader/SubHeader.vue'
70
70
  export { default as SyAlert } from './SyAlert/SyAlert.vue'
71
+ export { default as SyCheckbox } from './Customs/SyCheckbox/SyCheckbox.vue'
71
72
  export { default as SyTextArea } from './SyTextArea/SyTextArea.vue'
73
+ export { default as SyServerTable } from './Tables/SyServerTable/SyServerTable.vue'
74
+ export { default as SyTable } from './Tables/SyTable/SyTable.vue'
72
75
  export { default as TableToolbar } from './TableToolbar/TableToolbar.vue'
76
+ export { default as ToolbarContainer } from './ToolbarContainer/ToolbarContainer.vue'
73
77
  export { default as UploadWorkflow } from './UploadWorkflow/UploadWorkflow.vue'
74
78
  export { default as UserMenuBtn } from './UserMenuBtn/UserMenuBtn.vue'
@@ -40,13 +40,18 @@ export const parseDate = (dateString: string | Date | null, format: string): Dat
40
40
  }
41
41
  }
42
42
 
43
- // Utiliser dayjs pour parser la date
43
+ // Utiliser dayjs pour parser la date avec le mode strict
44
+ // Le mode strict garantit que le format est respecté exactement
44
45
  const parsedDate = dayjs(dateString, format, true)
45
46
 
46
- if (!parsedDate.isValid()) return null
47
+ if (!parsedDate.isValid()) {
48
+ // Si le parsing a échoué, retourner null
49
+ return null
50
+ }
47
51
 
48
52
  // Extraire les composants de la date pour créer une date UTC
49
- // Cela évite les problèmes de décalage de fuseau horaire
53
+ // Cela évite les problèmes de décalage de fuseau horaire et garantit
54
+ // que les dates au format dd/mm/yyyy sont correctement interprétées
50
55
  return dayjs.utc()
51
56
  .year(parsedDate.year())
52
57
  .month(parsedDate.month())
@@ -24,17 +24,17 @@ export type DateInput = string | string[] | null | object
24
24
  * @returns Une Date ou null si la date est invalide
25
25
  */
26
26
  const parseToUTCDate = (dateStr: string, format: string): Date | null => {
27
- if (!dayjs(dateStr, format).isValid()) return null
27
+ // Utiliser le parsing strict pour s'assurer que le format est respecté
28
+ const parsedDate = dayjs(dateStr, format, true)
29
+ if (!parsedDate.isValid()) return null
28
30
 
29
31
  // Extraire les composants de la date à partir de la chaîne
30
- const dateParts = dayjs(dateStr, format)
31
-
32
32
  // Créer une date UTC avec les composants exacts pour éviter les décalages de fuseau horaire
33
33
  // Utiliser set pour définir explicitement l'année, le mois et le jour
34
34
  return dayjs.utc()
35
- .year(dateParts.year())
36
- .month(dateParts.month())
37
- .date(dateParts.date())
35
+ .year(parsedDate.year())
36
+ .month(parsedDate.month())
37
+ .date(parsedDate.date())
38
38
  .hour(0)
39
39
  .minute(0)
40
40
  .second(0)
@@ -59,23 +59,28 @@ export const initializeSelectedDates = (
59
59
  // Déterminer le format à utiliser pour l'analyse
60
60
  const parseFormat = returnFormat || displayFormat
61
61
 
62
+ // Fonction utilitaire pour essayer de parser une date avec plusieurs formats
63
+ const tryParseWithFormats = (dateStr: string): Date | null => {
64
+ // Essayer d'abord avec le format spécifié
65
+ let date = parseToUTCDate(dateStr, parseFormat)
66
+
67
+ // Si la date est invalide et qu'on a un format de retour différent, essayer avec le format d'affichage
68
+ if (date === null && returnFormat && parseFormat !== displayFormat) {
69
+ date = parseToUTCDate(dateStr, displayFormat)
70
+ }
71
+
72
+ return date
73
+ }
74
+
62
75
  if (Array.isArray(modelValue)) {
63
76
  if (modelValue.length >= 2) {
64
- // Essayer d'abord avec le format de retour, puis avec le format d'affichage
65
- let dates = [
66
- parseToUTCDate(modelValue[0], parseFormat),
67
- parseToUTCDate(modelValue[1], parseFormat),
77
+ // Parser les deux dates de la plage
78
+ const dates = [
79
+ tryParseWithFormats(modelValue[0]),
80
+ tryParseWithFormats(modelValue[1]),
68
81
  ]
69
82
 
70
- // Si l'une des dates est invalide avec le format de retour, essayer avec le format d'affichage
71
- if (dates.some(date => date === null) && returnFormat) {
72
- dates = [
73
- parseToUTCDate(modelValue[0], displayFormat),
74
- parseToUTCDate(modelValue[1], displayFormat),
75
- ]
76
- }
77
-
78
- // Vérifie si l'une des dates est toujours invalide
83
+ // Vérifie si l'une des dates est invalide
79
84
  if (dates.some(date => date === null)) {
80
85
  return []
81
86
  }
@@ -90,14 +95,8 @@ export const initializeSelectedDates = (
90
95
  }
91
96
 
92
97
  if (modelValue.length === 1) {
93
- // Essayer d'abord avec le format de retour, puis avec le format d'affichage
94
- let date = parseToUTCDate(modelValue[0], parseFormat)
95
-
96
- // Si la date est invalide avec le format de retour, essayer avec le format d'affichage
97
- if (date === null && returnFormat) {
98
- date = parseToUTCDate(modelValue[0], displayFormat)
99
- }
100
-
98
+ // Parser une seule date
99
+ const date = tryParseWithFormats(modelValue[0])
101
100
  return date === null ? [] : [date]
102
101
  }
103
102
 
@@ -109,15 +108,8 @@ export const initializeSelectedDates = (
109
108
  return null
110
109
  }
111
110
 
112
- // Essayer d'abord avec le format de retour, puis avec le format d'affichage
113
- let date = parseToUTCDate(modelValue, parseFormat)
114
-
115
- // Si la date est invalide avec le format de retour, essayer avec le format d'affichage
116
- if (date === null && returnFormat) {
117
- date = parseToUTCDate(modelValue, displayFormat)
118
- }
119
-
120
- return date
111
+ // Parser la date avec les formats disponibles
112
+ return tryParseWithFormats(modelValue)
121
113
  }
122
114
 
123
115
  /**
@@ -212,7 +212,6 @@ export function useFieldValidation() {
212
212
  if (!options.date) {
213
213
  return { error: 'Configuration de la règle invalide' }
214
214
  }
215
-
216
215
  const dateValue = parseDate(value)
217
216
  if (!dateValue) {
218
217
  return { error: 'Date invalide' }
@@ -300,7 +299,7 @@ export function useFieldValidation() {
300
299
 
301
300
  return createValidationResult(
302
301
  !isHolidayDay(dateValue),
303
- options.message || options.warningMessage || `${identifier} n'est pas un jour férié.`,
302
+ options.message || options.warningMessage || `${identifier} est un jour férié.`,
304
303
  )
305
304
  }
306
305
 
@@ -1,9 +1,11 @@
1
1
  import { cnamSemanticTokens } from './tokens/cnam/cnamSemantic'
2
2
  import { cnamContextualTokens } from './tokens/cnam/cnamContextual'
3
3
  import { cnamColorsTokens } from './tokens/cnam/cnamColors'
4
+ import { cnamFontsTokens } from './tokens/cnam/cnamFonts'
4
5
  import { cnamLightTheme } from './tokens/cnam/cnamLightTheme'
5
6
  import { cnamDarkTheme } from './tokens/cnam/cnamDarkTheme'
6
7
  import { paColorsTokens } from './tokens/pa/paColors'
8
+ import { paFontsTokens } from './tokens/pa/paFonts'
7
9
  import { paSemanticTokens } from './tokens/pa/paSemantic'
8
10
  import { paContextualTokens } from './tokens/pa/paContextual'
9
11
  import { paLightTheme } from './tokens/pa/paLightTheme'
@@ -11,11 +13,13 @@ import { paDarkTheme } from './tokens/pa/paDarkTheme'
11
13
 
12
14
  export {
13
15
  cnamColorsTokens,
16
+ cnamFontsTokens,
14
17
  cnamSemanticTokens,
15
18
  cnamContextualTokens,
16
19
  cnamLightTheme,
17
20
  cnamDarkTheme,
18
21
  paColorsTokens,
22
+ paFontsTokens,
19
23
  paSemanticTokens,
20
24
  paContextualTokens,
21
25
  paLightTheme,