@cnamts/synapse 1.0.0 → 1.0.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 (395) hide show
  1. package/dist/DateFilter-BmRuzQ9Z.js +98 -0
  2. package/dist/NumberFilter-CnIPDHqx.js +121 -0
  3. package/dist/PeriodFilter-CZwZ8CnQ.js +112 -0
  4. package/dist/SelectFilter-Cj-GW2Cc.js +97 -0
  5. package/dist/TextFilter-DTxZHJwX.js +114 -0
  6. package/dist/{components/BackBtn → common}/constants/ExpertiseLevelEnum.d.ts +3 -0
  7. package/dist/components/BackBtn/AccessibiliteItems.d.ts +1 -1
  8. package/dist/components/BackToTopBtn/AccessibiliteItems.d.ts +1 -1
  9. package/dist/components/ChipList/AccessibiliteItems.d.ts +1 -1
  10. package/dist/components/CollapsibleList/AccessibiliteItems.d.ts +1 -1
  11. package/dist/components/ContextualMenu/AccessibiliteItems.d.ts +1 -1
  12. package/dist/components/CookieBanner/AccessibiliteItems.d.ts +1 -1
  13. package/dist/components/CopyBtn/AccessibiliteItems.d.ts +1 -1
  14. package/dist/components/Customs/SyBtnSelect/AccessibiliteItems.d.ts +1 -1
  15. package/dist/components/Customs/SyInputSelect/AccessibiliteItems.d.ts +1 -1
  16. package/dist/components/Customs/SySelect/AccessibiliteItems.d.ts +1 -1
  17. package/dist/components/Customs/SyTextField/AccessibiliteItems.d.ts +1 -1
  18. package/dist/components/DataList/AccessibiliteItems.d.ts +1 -1
  19. package/dist/components/DataListGroup/AccessibiliteItems.d.ts +1 -1
  20. package/dist/components/DatePicker/AccessibiliteItems.d.ts +1 -1
  21. package/dist/components/DatePicker/ComplexDatePicker/ComplexDatePicker.d.ts +4162 -0
  22. package/dist/components/DatePicker/{DatePicker.d.ts → DatePicker/DatePicker.d.ts} +142 -102
  23. package/dist/components/DatePicker/{DateTextInput.d.ts → DateTextInput/DateTextInput.d.ts} +32 -26
  24. package/dist/components/DatePicker/composables/index.d.ts +15 -0
  25. package/dist/components/DatePicker/composables/useDateFormatValidation.d.ts +25 -0
  26. package/dist/components/DatePicker/composables/useDateInputEditing.d.ts +33 -0
  27. package/dist/components/DatePicker/composables/useDatePickerViewMode.d.ts +16 -0
  28. package/dist/components/DatePicker/composables/useDatePickerVisibility.d.ts +27 -0
  29. package/dist/components/DatePicker/composables/useDateRangeInput.d.ts +29 -0
  30. package/dist/components/DatePicker/composables/useDateRangeValidation.d.ts +11 -0
  31. package/dist/components/DatePicker/composables/useDateSelection.d.ts +10 -0
  32. package/dist/components/DatePicker/composables/useDateValidation.d.ts +35 -0
  33. package/dist/components/DatePicker/composables/useDisplayedDateString.d.ts +16 -0
  34. package/dist/components/DatePicker/composables/useIconState.d.ts +17 -0
  35. package/dist/components/DatePicker/composables/useInputBlurHandler.d.ts +30 -0
  36. package/dist/components/DatePicker/composables/useInputHandler.d.ts +32 -0
  37. package/dist/components/DatePicker/composables/useManualDateValidation.d.ts +33 -0
  38. package/dist/components/DatePicker/composables/useMonthButtonCustomization.d.ts +9 -0
  39. package/dist/components/DatePicker/composables/useTodayButton.d.ts +16 -0
  40. package/dist/components/DatePicker/composables/useWeekendDays.d.ts +11 -0
  41. package/dist/components/DatePicker/constants/messages.d.ts +29 -0
  42. package/dist/components/DatePicker/types.d.ts +13 -0
  43. package/dist/components/DialogBox/AccessibiliteItems.d.ts +1 -1
  44. package/dist/components/DownloadBtn/AccessibiliteItems.d.ts +1 -1
  45. package/dist/components/ErrorPage/AccessibiliteItems.d.ts +1 -1
  46. package/dist/components/ExternalLinks/AccessibiliteItems.d.ts +1 -1
  47. package/dist/components/FileList/AccessibiliteItems.d.ts +1 -1
  48. package/dist/components/FilePreview/AccessibiliteItems.d.ts +1 -1
  49. package/dist/components/FileUpload/AccessibiliteItems.d.ts +1 -1
  50. package/dist/components/FilterInline/AccessibiliteItems.d.ts +1 -1
  51. package/dist/components/FilterSideBar/AccessibiliteItems.d.ts +1 -1
  52. package/dist/components/FilterSideBar/FilterSideBar.d.ts +395 -1
  53. package/dist/components/FooterBar/AccessibiliteItems.d.ts +1 -1
  54. package/dist/components/FranceConnectBtn/AccessibiliteItems.d.ts +1 -1
  55. package/dist/components/HeaderBar/AccessibiliteItems.d.ts +1 -1
  56. package/dist/components/HeaderBar/HeaderBurgerMenu/AccessibiliteItems.d.ts +1 -1
  57. package/dist/components/HeaderLoading/AccessibiliteItems.d.ts +1 -1
  58. package/dist/components/HeaderToolbar/AccessibiliteItems.d.ts +1 -1
  59. package/dist/components/LangBtn/AccessibiliteItems.d.ts +1 -1
  60. package/dist/components/Logo/AccessibiliteItems.d.ts +1 -1
  61. package/dist/components/LogoBrandSection/AccessibiliteItems.d.ts +1 -1
  62. package/dist/components/MaintenancePage/AccessibiliteItems.d.ts +1 -1
  63. package/dist/components/NirField/AccessibiliteItems.d.ts +1 -1
  64. package/dist/components/NotFoundPage/AccessibiliteItems.d.ts +1 -1
  65. package/dist/components/NotificationBar/AccessibiliteItems.d.ts +1 -1
  66. package/dist/components/PageContainer/AccessibiliteItems.d.ts +1 -1
  67. package/dist/components/PaginatedTable/AccessibiliteItems.d.ts +1 -1
  68. package/dist/components/PasswordField/AccessibiliteItems.d.ts +1 -1
  69. package/dist/components/PeriodField/AccessibiliteItems.d.ts +1 -1
  70. package/dist/components/PeriodField/PeriodField.d.ts +171 -37
  71. package/dist/components/PhoneField/AccessibiliteItems.d.ts +1 -1
  72. package/dist/components/RangeField/AccessibiliteItems.d.ts +1 -1
  73. package/dist/components/RatingPicker/AccessibiliteItems.d.ts +1 -1
  74. package/dist/components/SearchListField/AccessibiliteItems.d.ts +1 -1
  75. package/dist/components/SelectBtnField/AccessibiliteItems.d.ts +1 -1
  76. package/dist/components/SkipLink/AccessibiliteItems.d.ts +1 -1
  77. package/dist/components/SocialMediaLinks/AccessibiliteItems.d.ts +1 -1
  78. package/dist/components/SubHeader/AccessibiliteItems.d.ts +1 -1
  79. package/dist/components/SyAlert/AccessibiliteItems.d.ts +1 -1
  80. package/dist/components/TableToolbar/AccessibiliteItems.d.ts +1 -1
  81. package/dist/components/Tables/SyServerTable/SyServerTable.d.ts +647 -0
  82. package/dist/components/Tables/SyTable/SyTable.d.ts +666 -0
  83. package/dist/components/Tables/common/SyTableFilter.d.ts +126 -0
  84. package/dist/components/Tables/common/TableHeader.d.ts +33 -0
  85. package/dist/components/Tables/common/constants/StateEnum.d.ts +6 -0
  86. package/dist/components/Tables/common/filters/DateFilter.d.ts +121 -0
  87. package/dist/components/Tables/common/filters/NumberFilter.d.ts +132 -0
  88. package/dist/components/Tables/common/filters/PeriodFilter.d.ts +135 -0
  89. package/dist/components/Tables/common/filters/SelectFilter.d.ts +120 -0
  90. package/dist/components/Tables/common/filters/TextFilter.d.ts +132 -0
  91. package/dist/components/Tables/common/formatters.d.ts +17 -0
  92. package/dist/components/Tables/common/locales.d.ts +7 -0
  93. package/dist/components/Tables/common/tableAccessibilityUtils.d.ts +8 -0
  94. package/dist/components/Tables/common/tableFilterUtils.d.ts +2 -0
  95. package/dist/components/Tables/common/tableStorageUtils.d.ts +29 -0
  96. package/dist/components/Tables/common/tableUtils.d.ts +42 -0
  97. package/dist/components/Tables/common/types.d.ts +80 -0
  98. package/dist/components/Tables/common/useTableFilter.d.ts +9 -0
  99. package/dist/components/Tables/index.d.ts +2 -0
  100. package/dist/components/UploadWorkflow/AccessibiliteItems.d.ts +1 -1
  101. package/dist/components/UserMenuBtn/AccessibiliteItems.d.ts +1 -1
  102. package/dist/components/index.d.ts +3 -1
  103. package/dist/design-system-v3.js +100 -11944
  104. package/dist/design-system-v3.umd.cjs +22 -4
  105. package/dist/designTokens/index.d.ts +3 -1
  106. package/dist/designTokens/tokens/cnam/cnamFonts.d.ts +140 -0
  107. package/dist/designTokens/tokens/pa/paFonts.d.ts +140 -0
  108. package/dist/designTokens/utils/createFontVariables.d.ts +39 -0
  109. package/dist/designTokens/utils/index.d.ts +2 -1
  110. package/dist/main-WDqeoGM-.js +14788 -0
  111. package/dist/style.css +1 -1
  112. package/dist/utils/rules/isRequired/index.d.ts +1 -1
  113. package/dist/vite-env.d.ts +12 -0
  114. package/package.json +3 -3
  115. package/src/assets/_spacers.scss +37 -1
  116. package/src/assets/_typography.scss +158 -0
  117. package/src/assets/settings.scss +7 -0
  118. package/src/common/constants/ExpertiseLevelEnum.ts +7 -0
  119. package/src/components/BackBtn/AccessibiliteItems.ts +1 -1
  120. package/src/components/BackToTopBtn/AccessibiliteItems.ts +1 -1
  121. package/src/components/ChipList/AccessibiliteItems.ts +1 -1
  122. package/src/components/CollapsibleList/AccessibiliteItems.ts +1 -1
  123. package/src/components/ContextualMenu/AccessibiliteItems.ts +1 -1
  124. package/src/components/CookieBanner/AccessibiliteItems.ts +1 -1
  125. package/src/components/CopyBtn/AccessibiliteItems.ts +1 -1
  126. package/src/components/Customs/SyBtnSelect/AccessibiliteItems.ts +1 -1
  127. package/src/components/Customs/SyInputSelect/AccessibiliteItems.ts +1 -1
  128. package/src/components/Customs/SySelect/AccessibiliteItems.ts +1 -1
  129. package/src/components/Customs/SySelect/SySelect.vue +3 -9
  130. package/src/components/Customs/SySelect/tests/SySelect.spec.ts +4 -2
  131. package/src/components/Customs/SyTextField/AccessibiliteItems.ts +1 -1
  132. package/src/components/DataList/AccessibiliteItems.ts +1 -1
  133. package/src/components/DataListGroup/AccessibiliteItems.ts +1 -1
  134. package/src/components/DatePicker/AccessibiliteItems.ts +1 -1
  135. package/src/components/DatePicker/ComplexDatePicker/ComplexDatePicker.mdx +212 -0
  136. package/src/components/DatePicker/ComplexDatePicker/ComplexDatePicker.stories.ts +1097 -0
  137. package/src/components/DatePicker/ComplexDatePicker/ComplexDatePicker.vue +497 -180
  138. package/src/components/DatePicker/ComplexDatePicker/tests/ComplexDatePicker.spec.ts +941 -0
  139. package/src/components/DatePicker/DatePicker/DatePicker.mdx +176 -0
  140. package/src/components/DatePicker/{tests → DatePicker}/DatePicker.spec.ts +1 -1
  141. package/src/components/DatePicker/{DatePicker.stories.ts → DatePicker/DatePicker.stories.ts} +115 -400
  142. package/src/components/DatePicker/{DatePicker.vue → DatePicker/DatePicker.vue} +302 -84
  143. package/src/components/DatePicker/DatePickerOverview.mdx +227 -0
  144. package/src/components/DatePicker/{DatePickerValidation.mdx → DatePickerValidationExample/DatePickerValidation.mdx} +3 -3
  145. package/src/components/DatePicker/{DatePickerValidation.stories.ts → DatePickerValidationExample/DatePickerValidation.stories.ts} +2 -2
  146. package/src/components/DatePicker/DateTextInput/DateRange.stories.ts +310 -0
  147. package/src/components/DatePicker/DateTextInput/DateTextInput.range.spec.ts +278 -0
  148. package/src/components/DatePicker/{tests → DateTextInput}/DateTextInput.spec.ts +8 -7
  149. package/src/components/DatePicker/DateTextInput/DateTextInput.vue +916 -0
  150. package/src/components/DatePicker/DateTextInput/NoCalendar.mdx +64 -0
  151. package/src/components/DatePicker/DateTextInput/NoCalendar.stories.ts +572 -0
  152. package/src/components/DatePicker/composables/index.ts +22 -0
  153. package/src/components/DatePicker/composables/tests/useDateFormatValidation.spec.ts +165 -0
  154. package/src/components/DatePicker/composables/tests/useDateInputEditing.spec.ts +359 -0
  155. package/src/components/DatePicker/composables/tests/useDatePickerViewMode.spec.ts +160 -0
  156. package/src/components/DatePicker/composables/tests/useDatePickerVisibility.spec.ts +339 -0
  157. package/src/components/DatePicker/composables/tests/useDateRangeInput.spec.ts +277 -0
  158. package/src/components/DatePicker/composables/tests/useDateRangeValidation.spec.ts +107 -0
  159. package/src/components/DatePicker/composables/tests/useDateSelection.spec.ts +171 -0
  160. package/src/components/DatePicker/composables/tests/useDateValidation.spec.ts +245 -0
  161. package/src/components/DatePicker/composables/tests/useDisplayedDateString.spec.ts +98 -0
  162. package/src/components/DatePicker/composables/tests/useIconState.spec.ts +130 -0
  163. package/src/components/DatePicker/composables/tests/useInputBlurHandler.spec.ts +278 -0
  164. package/src/components/DatePicker/composables/tests/useManualDateValidation.spec.ts +233 -0
  165. package/src/components/DatePicker/composables/tests/useMonthButtonCustomization.spec.ts +100 -0
  166. package/src/components/DatePicker/composables/tests/useTodayButton.spec.ts +97 -0
  167. package/src/components/DatePicker/composables/tests/useWeekendDays.spec.ts +28 -0
  168. package/src/components/DatePicker/composables/useDateFormatValidation.ts +95 -0
  169. package/src/components/DatePicker/composables/useDateInputEditing.ts +326 -0
  170. package/src/components/DatePicker/composables/useDatePickerViewMode.ts +61 -0
  171. package/src/components/DatePicker/composables/useDatePickerVisibility.ts +146 -0
  172. package/src/components/DatePicker/composables/useDateRangeInput.ts +375 -0
  173. package/src/components/DatePicker/composables/useDateRangeValidation.ts +48 -0
  174. package/src/components/DatePicker/composables/useDateSelection.ts +121 -0
  175. package/src/components/DatePicker/composables/useDateValidation.ts +225 -0
  176. package/src/components/DatePicker/composables/useDisplayedDateString.ts +58 -0
  177. package/src/components/DatePicker/composables/useIconState.ts +53 -0
  178. package/src/components/DatePicker/composables/useInputBlurHandler.ts +101 -0
  179. package/src/components/DatePicker/composables/useInputHandler.ts +436 -0
  180. package/src/components/DatePicker/composables/useManualDateValidation.ts +161 -0
  181. package/src/components/DatePicker/composables/useMonthButtonCustomization.ts +89 -0
  182. package/src/components/DatePicker/composables/useTodayButton.ts +43 -0
  183. package/src/components/DatePicker/composables/useWeekendDays.ts +21 -0
  184. package/src/components/DatePicker/constants/messages.ts +50 -0
  185. package/src/components/DatePicker/docExamples/DatePickerBidirectionalValidation.vue +4 -4
  186. package/src/components/DatePicker/docExamples/DatePickerValidationExamples.vue +1 -1
  187. package/src/components/DatePicker/playground/ComplexDatePickerPlayground.vue +172 -0
  188. package/src/components/DatePicker/types.ts +15 -0
  189. package/src/components/DialogBox/AccessibiliteItems.ts +1 -1
  190. package/src/components/DownloadBtn/AccessibiliteItems.ts +1 -1
  191. package/src/components/ErrorPage/AccessibiliteItems.ts +1 -1
  192. package/src/components/ExternalLinks/AccessibiliteItems.ts +1 -1
  193. package/src/components/FileList/AccessibiliteItems.ts +1 -1
  194. package/src/components/FilePreview/AccessibiliteItems.ts +1 -1
  195. package/src/components/FileUpload/AccessibiliteItems.ts +1 -1
  196. package/src/components/FilterInline/AccessibiliteItems.ts +1 -1
  197. package/src/components/FilterSideBar/AccessibiliteItems.ts +1 -1
  198. package/src/components/FilterSideBar/FilterSideBar.vue +108 -90
  199. package/src/components/FilterSideBar/tests/FilterSideBar.spec.ts +27 -0
  200. package/src/components/FilterSideBar/tests/__snapshots__/FilterSideBar.spec.ts.snap +114 -109
  201. package/src/components/FooterBar/AccessibiliteItems.ts +1 -1
  202. package/src/components/FooterBar/FooterBar.vue +2 -1
  203. package/src/components/FranceConnectBtn/AccessibiliteItems.ts +1 -1
  204. package/src/components/HeaderBar/AccessibiliteItems.ts +1 -1
  205. package/src/components/HeaderBar/HeaderBurgerMenu/AccessibiliteItems.ts +1 -1
  206. package/src/components/HeaderLoading/AccessibiliteItems.ts +1 -1
  207. package/src/components/HeaderToolbar/AccessibiliteItems.ts +1 -1
  208. package/src/components/LangBtn/AccessibiliteItems.ts +1 -1
  209. package/src/components/Logo/Accessibilite.stories.ts +4 -0
  210. package/src/components/Logo/AccessibiliteItems.ts +1 -1
  211. package/src/components/LogoBrandSection/AccessibiliteItems.ts +1 -1
  212. package/src/components/MaintenancePage/AccessibiliteItems.ts +1 -1
  213. package/src/components/NirField/AccessibiliteItems.ts +1 -1
  214. package/src/components/NotFoundPage/AccessibiliteItems.ts +1 -1
  215. package/src/components/NotificationBar/AccessibiliteItems.ts +1 -1
  216. package/src/components/PageContainer/AccessibiliteItems.ts +1 -1
  217. package/src/components/PaginatedTable/AccessibiliteItems.ts +1 -1
  218. package/src/components/PaginatedTable/PaginatedTable.stories.ts +19 -0
  219. package/src/components/PaginatedTable/PaginatedTable.vue +51 -13
  220. package/src/components/PaginatedTable/tests/PaginatedTable.spec.ts +0 -2
  221. package/src/components/PasswordField/AccessibiliteItems.ts +1 -1
  222. package/src/components/PeriodField/AccessibiliteItems.ts +1 -1
  223. package/src/components/PeriodField/PeriodField.vue +13 -1
  224. package/src/components/PhoneField/AccessibiliteItems.ts +1 -1
  225. package/src/components/RangeField/AccessibiliteItems.ts +1 -1
  226. package/src/components/RatingPicker/AccessibiliteItems.ts +1 -1
  227. package/src/components/SearchListField/AccessibiliteItems.ts +1 -1
  228. package/src/components/SelectBtnField/AccessibiliteItems.ts +1 -1
  229. package/src/components/SkipLink/AccessibiliteItems.ts +1 -1
  230. package/src/components/SocialMediaLinks/AccessibiliteItems.ts +1 -1
  231. package/src/components/SubHeader/AccessibiliteItems.ts +1 -1
  232. package/src/components/SyAlert/AccessibiliteItems.ts +1 -1
  233. package/src/components/TableToolbar/AccessibiliteItems.ts +1 -1
  234. package/src/components/TableToolbar/TableToolbar.stories.ts +110 -56
  235. package/src/components/Tables/SyServerTable/FilterRules.stories.ts +83 -0
  236. package/src/components/Tables/SyServerTable/SyServerTable.mdx +160 -0
  237. package/src/components/Tables/SyServerTable/SyServerTable.stories.ts +2887 -0
  238. package/src/components/Tables/SyServerTable/SyServerTable.vue +302 -0
  239. package/src/components/Tables/SyServerTable/tests/SyServerTable.spec.ts +450 -0
  240. package/src/components/Tables/SyServerTable/tests/__snapshots__/SyServerTable.spec.ts.snap +521 -0
  241. package/src/components/Tables/SyTable/FilterRules.stories.ts +235 -0
  242. package/src/components/Tables/SyTable/SyTable.mdx +129 -0
  243. package/src/components/Tables/SyTable/SyTable.stories.ts +1966 -0
  244. package/src/components/Tables/SyTable/SyTable.vue +317 -0
  245. package/src/components/Tables/SyTable/tests/SyTable.spec.ts +345 -0
  246. package/src/components/Tables/SyTable/tests/__snapshots__/SyTable.spec.ts.snap +521 -0
  247. package/src/components/Tables/common/SyTableFilter.vue +342 -0
  248. package/src/components/Tables/common/TableHeader.vue +221 -0
  249. package/src/components/Tables/common/constants/StateEnum.ts +6 -0
  250. package/src/components/Tables/common/filters/DateFilter.vue +140 -0
  251. package/src/components/Tables/common/filters/NumberFilter.vue +234 -0
  252. package/src/components/Tables/common/filters/PeriodFilter.vue +147 -0
  253. package/src/components/Tables/common/filters/SelectFilter.vue +126 -0
  254. package/src/components/Tables/common/filters/TextFilter.vue +191 -0
  255. package/src/components/Tables/common/filters/tests/DateFilter.spec.ts +187 -0
  256. package/src/components/Tables/common/filters/tests/NumberFilter.spec.ts +280 -0
  257. package/src/components/Tables/common/filters/tests/PeriodFilter.spec.ts +192 -0
  258. package/src/components/Tables/common/filters/tests/SelectFilter.spec.ts +219 -0
  259. package/src/components/Tables/common/filters/tests/TextFilter.spec.ts +260 -0
  260. package/src/components/Tables/common/formatters.ts +72 -0
  261. package/src/components/Tables/common/locales.ts +7 -0
  262. package/src/components/Tables/common/tableAccessibilityUtils.ts +61 -0
  263. package/src/components/Tables/common/tableFilterUtils.ts +327 -0
  264. package/src/components/Tables/common/tableStorageUtils.ts +102 -0
  265. package/src/components/Tables/common/tableStyles.scss +54 -0
  266. package/src/components/Tables/common/tableUtils.ts +115 -0
  267. package/src/components/Tables/common/tests/SyTableFilter.spec.ts +312 -0
  268. package/src/components/Tables/common/tests/resize.spec.ts +161 -0
  269. package/src/components/Tables/common/tests/tableFilterUtils.spec.ts +106 -0
  270. package/src/components/Tables/common/tests/tableUtils.spec.ts +272 -0
  271. package/src/components/Tables/common/types.ts +81 -0
  272. package/src/components/Tables/common/useTableFilter.ts +19 -0
  273. package/src/components/Tables/index.ts +3 -0
  274. package/src/components/UploadWorkflow/AccessibiliteItems.ts +1 -1
  275. package/src/components/UserMenuBtn/AccessibiliteItems.ts +1 -1
  276. package/src/components/index.ts +3 -1
  277. package/src/composables/date/useDateFormatDayjs.ts +8 -3
  278. package/src/composables/date/useDateInitializationDayjs.ts +28 -36
  279. package/src/composables/rules/useFieldValidation.ts +1 -2
  280. package/src/designTokens/index.ts +4 -0
  281. package/src/designTokens/tokens/cnam/cnamFonts.ts +140 -0
  282. package/src/designTokens/tokens/pa/paFonts.ts +140 -0
  283. package/src/designTokens/utils/createFontVariables.ts +143 -0
  284. package/src/designTokens/utils/index.ts +2 -1
  285. package/src/stories/Demarrer/Accueil.stories.ts +12 -3
  286. package/src/utils/rules/isHolidayDay/IsHolidayDay.stories.ts +1 -1
  287. package/src/utils/rules/isRequired/index.ts +2 -1
  288. package/src/vite-env.d.ts +12 -0
  289. package/src/vuetifyConfig.ts +10 -3
  290. package/dist/components/BackToTopBtn/constants/ExpertiseLevelEnum.d.ts +0 -4
  291. package/dist/components/ChipList/constants/ExpertiseLevelEnum.d.ts +0 -4
  292. package/dist/components/CollapsibleList/constants/ExpertiseLevelEnum.d.ts +0 -4
  293. package/dist/components/ContextualMenu/constants/ExpertiseLevelEnum.d.ts +0 -4
  294. package/dist/components/CookieBanner/constants/ExpertiseLevelEnum.d.ts +0 -4
  295. package/dist/components/CopyBtn/constants/ExpertiseLevelEnum.d.ts +0 -4
  296. package/dist/components/Customs/SyBtnSelect/constants/ExpertiseLevelEnum.d.ts +0 -4
  297. package/dist/components/Customs/SyInputSelect/constants/ExpertiseLevelEnum.d.ts +0 -4
  298. package/dist/components/Customs/SySelect/constants/ExpertiseLevelEnum.d.ts +0 -4
  299. package/dist/components/Customs/SyTextField/constants/ExpertiseLevelEnum.d.ts +0 -4
  300. package/dist/components/DataList/constants/ExpertiseLevelEnum.d.ts +0 -4
  301. package/dist/components/DataListGroup/constants/ExpertiseLevelEnum.d.ts +0 -4
  302. package/dist/components/DatePicker/constants/ExpertiseLevelEnum.d.ts +0 -4
  303. package/dist/components/DialogBox/constants/ExpertiseLevelEnum.d.ts +0 -4
  304. package/dist/components/DownloadBtn/constants/ExpertiseLevelEnum.d.ts +0 -4
  305. package/dist/components/ErrorPage/constants/ExpertiseLevelEnum.d.ts +0 -4
  306. package/dist/components/ExternalLinks/constants/ExpertiseLevelEnum.d.ts +0 -4
  307. package/dist/components/FileList/constants/ExpertiseLevelEnum.d.ts +0 -4
  308. package/dist/components/FilePreview/constants/ExpertiseLevelEnum.d.ts +0 -4
  309. package/dist/components/FileUpload/constants/ExpertiseLevelEnum.d.ts +0 -4
  310. package/dist/components/FilterInline/constants/ExpertiseLevelEnum.d.ts +0 -4
  311. package/dist/components/FilterSideBar/constants/ExpertiseLevelEnum.d.ts +0 -4
  312. package/dist/components/FooterBar/constants/ExpertiseLevelEnum.d.ts +0 -4
  313. package/dist/components/FranceConnectBtn/constants/ExpertiseLevelEnum.d.ts +0 -4
  314. package/dist/components/HeaderBar/HeaderBurgerMenu/constants/ExpertiseLevelEnum.d.ts +0 -4
  315. package/dist/components/HeaderBar/constants/ExpertiseLevelEnum.d.ts +0 -4
  316. package/dist/components/HeaderLoading/constants/ExpertiseLevelEnum.d.ts +0 -4
  317. package/dist/components/HeaderToolbar/constants/ExpertiseLevelEnum.d.ts +0 -4
  318. package/dist/components/LangBtn/constants/ExpertiseLevelEnum.d.ts +0 -4
  319. package/dist/components/Logo/constants/ExpertiseLevelEnum.d.ts +0 -4
  320. package/dist/components/LogoBrandSection/constants/ExpertiseLevelEnum.d.ts +0 -4
  321. package/dist/components/MaintenancePage/constants/ExpertiseLevelEnum.d.ts +0 -4
  322. package/dist/components/NirField/constants/ExpertiseLevelEnum.d.ts +0 -4
  323. package/dist/components/NotFoundPage/constants/ExpertiseLevelEnum.d.ts +0 -4
  324. package/dist/components/NotificationBar/constants/ExpertiseLevelEnum.d.ts +0 -4
  325. package/dist/components/PageContainer/constants/ExpertiseLevelEnum.d.ts +0 -4
  326. package/dist/components/PaginatedTable/constants/ExpertiseLevelEnum.d.ts +0 -4
  327. package/dist/components/PasswordField/constants/ExpertiseLevelEnum.d.ts +0 -4
  328. package/dist/components/PeriodField/constants/ExpertiseLevelEnum.d.ts +0 -4
  329. package/dist/components/PhoneField/constants/ExpertiseLevelEnum.d.ts +0 -4
  330. package/dist/components/RangeField/constants/ExpertiseLevelEnum.d.ts +0 -4
  331. package/dist/components/RatingPicker/constants/ExpertiseLevelEnum.d.ts +0 -4
  332. package/dist/components/SearchListField/constants/ExpertiseLevelEnum.d.ts +0 -4
  333. package/dist/components/SelectBtnField/constants/ExpertiseLevelEnum.d.ts +0 -4
  334. package/dist/components/SkipLink/constants/ExpertiseLevelEnum.d.ts +0 -4
  335. package/dist/components/SocialMediaLinks/constants/ExpertiseLevelEnum.d.ts +0 -4
  336. package/dist/components/SubHeader/constants/ExpertiseLevelEnum.d.ts +0 -4
  337. package/dist/components/SyAlert/constants/ExpertiseLevelEnum.d.ts +0 -4
  338. package/dist/components/TableToolbar/constants/ExpertiseLevelEnum.d.ts +0 -4
  339. package/dist/components/UploadWorkflow/constants/ExpertiseLevelEnum.d.ts +0 -4
  340. package/dist/components/UserMenuBtn/constants/ExpertiseLevelEnum.d.ts +0 -4
  341. package/src/components/BackBtn/constants/ExpertiseLevelEnum.ts +0 -4
  342. package/src/components/BackToTopBtn/constants/ExpertiseLevelEnum.ts +0 -4
  343. package/src/components/ChipList/constants/ExpertiseLevelEnum.ts +0 -4
  344. package/src/components/CollapsibleList/constants/ExpertiseLevelEnum.ts +0 -4
  345. package/src/components/ContextualMenu/constants/ExpertiseLevelEnum.ts +0 -4
  346. package/src/components/CookieBanner/constants/ExpertiseLevelEnum.ts +0 -4
  347. package/src/components/CopyBtn/constants/ExpertiseLevelEnum.ts +0 -4
  348. package/src/components/Customs/SyBtnSelect/constants/ExpertiseLevelEnum.ts +0 -4
  349. package/src/components/Customs/SyInputSelect/constants/ExpertiseLevelEnum.ts +0 -4
  350. package/src/components/Customs/SySelect/constants/ExpertiseLevelEnum.ts +0 -4
  351. package/src/components/Customs/SyTextField/constants/ExpertiseLevelEnum.ts +0 -4
  352. package/src/components/DataList/constants/ExpertiseLevelEnum.ts +0 -4
  353. package/src/components/DataListGroup/constants/ExpertiseLevelEnum.ts +0 -4
  354. package/src/components/DatePicker/DatePicker.mdx +0 -222
  355. package/src/components/DatePicker/DateTextInput.vue +0 -504
  356. package/src/components/DatePicker/constants/ExpertiseLevelEnum.ts +0 -4
  357. package/src/components/DialogBox/constants/ExpertiseLevelEnum.ts +0 -4
  358. package/src/components/DownloadBtn/constants/ExpertiseLevelEnum.ts +0 -4
  359. package/src/components/ErrorPage/constants/ExpertiseLevelEnum.ts +0 -4
  360. package/src/components/ExternalLinks/constants/ExpertiseLevelEnum.ts +0 -4
  361. package/src/components/FileList/constants/ExpertiseLevelEnum.ts +0 -4
  362. package/src/components/FilePreview/constants/ExpertiseLevelEnum.ts +0 -4
  363. package/src/components/FileUpload/constants/ExpertiseLevelEnum.ts +0 -4
  364. package/src/components/FilterInline/constants/ExpertiseLevelEnum.ts +0 -4
  365. package/src/components/FilterSideBar/constants/ExpertiseLevelEnum.ts +0 -4
  366. package/src/components/FooterBar/constants/ExpertiseLevelEnum.ts +0 -4
  367. package/src/components/FranceConnectBtn/constants/ExpertiseLevelEnum.ts +0 -4
  368. package/src/components/HeaderBar/HeaderBurgerMenu/constants/ExpertiseLevelEnum.ts +0 -4
  369. package/src/components/HeaderBar/constants/ExpertiseLevelEnum.ts +0 -4
  370. package/src/components/HeaderLoading/constants/ExpertiseLevelEnum.ts +0 -4
  371. package/src/components/HeaderToolbar/constants/ExpertiseLevelEnum.ts +0 -4
  372. package/src/components/LangBtn/constants/ExpertiseLevelEnum.ts +0 -4
  373. package/src/components/Logo/constants/ExpertiseLevelEnum.ts +0 -4
  374. package/src/components/LogoBrandSection/constants/ExpertiseLevelEnum.ts +0 -4
  375. package/src/components/MaintenancePage/constants/ExpertiseLevelEnum.ts +0 -4
  376. package/src/components/NirField/constants/ExpertiseLevelEnum.ts +0 -4
  377. package/src/components/NotFoundPage/constants/ExpertiseLevelEnum.ts +0 -4
  378. package/src/components/NotificationBar/constants/ExpertiseLevelEnum.ts +0 -4
  379. package/src/components/PageContainer/constants/ExpertiseLevelEnum.ts +0 -4
  380. package/src/components/PaginatedTable/constants/ExpertiseLevelEnum.ts +0 -4
  381. package/src/components/PasswordField/constants/ExpertiseLevelEnum.ts +0 -4
  382. package/src/components/PeriodField/constants/ExpertiseLevelEnum.ts +0 -4
  383. package/src/components/PhoneField/constants/ExpertiseLevelEnum.ts +0 -4
  384. package/src/components/RangeField/constants/ExpertiseLevelEnum.ts +0 -4
  385. package/src/components/RatingPicker/constants/ExpertiseLevelEnum.ts +0 -4
  386. package/src/components/SearchListField/constants/ExpertiseLevelEnum.ts +0 -4
  387. package/src/components/SelectBtnField/constants/ExpertiseLevelEnum.ts +0 -4
  388. package/src/components/SkipLink/constants/ExpertiseLevelEnum.ts +0 -4
  389. package/src/components/SocialMediaLinks/constants/ExpertiseLevelEnum.ts +0 -4
  390. package/src/components/SubHeader/constants/ExpertiseLevelEnum.ts +0 -4
  391. package/src/components/SyAlert/constants/ExpertiseLevelEnum.ts +0 -4
  392. package/src/components/TableToolbar/constants/ExpertiseLevelEnum.ts +0 -4
  393. package/src/components/UploadWorkflow/constants/ExpertiseLevelEnum.ts +0 -4
  394. package/src/components/UserMenuBtn/constants/ExpertiseLevelEnum.ts +0 -4
  395. /package/src/components/DatePicker/{examples → playground}/DatePickerHolidayRule.vue +0 -0
@@ -1,4 +1,4 @@
1
1
  import { ValidationRule, ErrorMessages } from '../types';
2
- export type Value = string | string[] | null;
2
+ export type Value = string | any[] | null;
3
3
  export declare function isRequiredFn(errorMessages?: ErrorMessages): ValidationRule<Value>;
4
4
  export declare const isRequired: ValidationRule<Value>;
@@ -0,0 +1,12 @@
1
+ /// <reference types="vite/client" />
2
+
3
+ interface ImportMeta {
4
+ readonly env: {
5
+ readonly VITEST?: boolean
6
+ readonly MODE: string
7
+ readonly BASE_URL: string
8
+ readonly PROD: boolean
9
+ readonly DEV: boolean
10
+ [key: string]: string | boolean | undefined
11
+ }
12
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cnamts/synapse",
3
- "version": "1.0.0",
3
+ "version": "1.0.1",
4
4
  "private": false,
5
5
  "description": "CNAM DS v3",
6
6
  "type": "module",
@@ -13,9 +13,9 @@
13
13
  "types": "./dist/main.d.ts",
14
14
  "exports": {
15
15
  ".": {
16
+ "types": "./dist/main.d.ts",
16
17
  "import": "./dist/design-system-v3.js",
17
- "require": "./dist/design-system-v3.umd.cjs",
18
- "types": "./dist/main.d.ts"
18
+ "require": "./dist/design-system-v3.umd.cjs"
19
19
  },
20
20
  "./style.css": "./dist/style.css",
21
21
  "./*": "./src/*"
@@ -142,8 +142,44 @@ $pa-spacers: (
142
142
  @include generate-side-spacing-classes(margin, mb, bottom);
143
143
  @include generate-side-spacing-classes(margin, ml, left);
144
144
 
145
+ // Définir les points de rupture
146
+ $breakpoints: (
147
+ 'sm': 600px,
148
+ 'md': 960px,
149
+ 'lg': 1280px,
150
+ 'xl': 1920px,
151
+ );
152
+
153
+ // Mixin pour générer les classes de marges et de paddings avec les points de rupture
154
+ @mixin generate-breakpoint-spacing-classes($property, $prefix) {
155
+ @each $breakpoint, $value in $breakpoints {
156
+ @for $i from 0 through 64 {
157
+ .#{$prefix}-#{$breakpoint}-#{$i} {
158
+ @media (min-width: #{$value}) {
159
+ #{$property}: var(--spacing-#{$i}) !important;
160
+ }
161
+ }
162
+ }
163
+ }
164
+ }
165
+
166
+ // Générer les classes de marges et de paddings avec les points de rupture
167
+ @include generate-breakpoint-spacing-classes(margin-right, mr);
168
+ @include generate-breakpoint-spacing-classes(padding-right, pr);
169
+ @include generate-breakpoint-spacing-classes(margin-left, ml);
170
+ @include generate-breakpoint-spacing-classes(padding-left, pl);
171
+ @include generate-breakpoint-spacing-classes(margin-top, mt);
172
+ @include generate-breakpoint-spacing-classes(padding-top, pt);
173
+ @include generate-breakpoint-spacing-classes(margin-bottom, mb);
174
+ @include generate-breakpoint-spacing-classes(padding-bottom, pb);
175
+ @include generate-breakpoint-spacing-classes(margin, mx);
176
+ @include generate-breakpoint-spacing-classes(padding, px);
177
+ @include generate-breakpoint-spacing-classes(margin, my);
178
+ @include generate-breakpoint-spacing-classes(padding, py);
179
+
145
180
  // Additional classes for specific spacing
146
181
 
147
- .v-btn {
182
+ .theme-cnam .v-btn,
183
+ .theme-pa .v-btn {
148
184
  padding: 0 var(--spacing-4) !important;
149
185
  }
@@ -0,0 +1,158 @@
1
+ /* Typography styles for CNAM and PA themes */
2
+
3
+ /* Theme Typography */
4
+ .v-theme--cnam,
5
+ .v-theme--pa {
6
+ /* Headings with Vuetify classes */
7
+ .text-h1 {
8
+ font-size: var(--v-typography-h1-font-size) !important;
9
+ font-weight: var(--v-typography-h1-font-weight) !important;
10
+ line-height: var(--v-typography-h1-line-height) !important;
11
+ letter-spacing: var(--v-typography-h1-letter-spacing) !important;
12
+ }
13
+
14
+ .text-h2 {
15
+ font-size: var(--v-typography-h2-font-size) !important;
16
+ font-weight: var(--v-typography-h2-font-weight) !important;
17
+ line-height: var(--v-typography-h2-line-height) !important;
18
+ letter-spacing: var(--v-typography-h2-letter-spacing) !important;
19
+ }
20
+
21
+ .text-h3 {
22
+ font-size: var(--v-typography-h3-font-size) !important;
23
+ font-weight: var(--v-typography-h3-font-weight) !important;
24
+ line-height: var(--v-typography-h3-line-height) !important;
25
+ letter-spacing: var(--v-typography-h3-letter-spacing) !important;
26
+ }
27
+
28
+ .text-h4 {
29
+ font-size: var(--v-typography-h4-font-size) !important;
30
+ font-weight: var(--v-typography-h4-font-weight) !important;
31
+ line-height: var(--v-typography-h4-line-height) !important;
32
+ letter-spacing: var(--v-typography-h4-letter-spacing) !important;
33
+ }
34
+
35
+ .text-h5 {
36
+ font-size: var(--v-typography-h5-font-size) !important;
37
+ font-weight: var(--v-typography-h5-font-weight) !important;
38
+ line-height: var(--v-typography-h5-line-height) !important;
39
+ letter-spacing: var(--v-typography-h5-letter-spacing) !important;
40
+ }
41
+
42
+ .text-h6 {
43
+ font-size: var(--v-typography-h6-font-size) !important;
44
+ font-weight: var(--v-typography-h6-font-weight) !important;
45
+ line-height: var(--v-typography-h6-line-height) !important;
46
+ letter-spacing: var(--v-typography-h6-letter-spacing) !important;
47
+ }
48
+
49
+ /* Native HTML heading elements */
50
+ h1 {
51
+ font-size: var(--v-typography-h1-font-size) !important;
52
+ font-weight: var(--v-typography-h1-font-weight) !important;
53
+ line-height: var(--v-typography-h1-line-height) !important;
54
+ letter-spacing: var(--v-typography-h1-letter-spacing) !important;
55
+ margin-bottom: 0.5rem;
56
+ }
57
+
58
+ h2 {
59
+ font-size: var(--v-typography-h2-font-size) !important;
60
+ font-weight: var(--v-typography-h2-font-weight) !important;
61
+ line-height: var(--v-typography-h2-line-height) !important;
62
+ letter-spacing: var(--v-typography-h2-letter-spacing) !important;
63
+ margin-bottom: 0.5rem;
64
+ }
65
+
66
+ h3 {
67
+ font-size: var(--v-typography-h3-font-size) !important;
68
+ font-weight: var(--v-typography-h3-font-weight) !important;
69
+ line-height: var(--v-typography-h3-line-height) !important;
70
+ letter-spacing: var(--v-typography-h3-letter-spacing) !important;
71
+ margin-bottom: 0.5rem;
72
+ }
73
+
74
+ h4 {
75
+ font-size: var(--v-typography-h4-font-size) !important;
76
+ font-weight: var(--v-typography-h4-font-weight) !important;
77
+ line-height: var(--v-typography-h4-line-height) !important;
78
+ letter-spacing: var(--v-typography-h4-letter-spacing) !important;
79
+ margin-bottom: 0.5rem;
80
+ }
81
+
82
+ h5 {
83
+ font-size: var(--v-typography-h5-font-size) !important;
84
+ font-weight: var(--v-typography-h5-font-weight) !important;
85
+ line-height: var(--v-typography-h5-line-height) !important;
86
+ letter-spacing: var(--v-typography-h5-letter-spacing) !important;
87
+ margin-bottom: 0.5rem;
88
+ }
89
+
90
+ h6 {
91
+ font-size: var(--v-typography-h6-font-size) !important;
92
+ font-weight: var(--v-typography-h6-font-weight) !important;
93
+ line-height: var(--v-typography-h6-line-height) !important;
94
+ letter-spacing: var(--v-typography-h6-letter-spacing) !important;
95
+ margin-bottom: 0.5rem;
96
+ }
97
+
98
+ /* Body text */
99
+ .text-body-1 {
100
+ font-size: var(--v-typography-body1-font-size) !important;
101
+ font-weight: var(--v-typography-body1-font-weight) !important;
102
+ line-height: var(--v-typography-body1-line-height) !important;
103
+ letter-spacing: var(--v-typography-body1-letter-spacing) !important;
104
+ }
105
+
106
+ .text-body-2 {
107
+ font-size: var(--v-typography-body2-font-size) !important;
108
+ font-weight: var(--v-typography-body2-font-weight) !important;
109
+ line-height: var(--v-typography-body2-line-height) !important;
110
+ letter-spacing: var(--v-typography-body2-letter-spacing) !important;
111
+ }
112
+
113
+ /* Subtitle text */
114
+ .text-subtitle-1 {
115
+ font-size: var(--v-typography-subtitle1-font-size) !important;
116
+ font-weight: var(--v-typography-subtitle1-font-weight) !important;
117
+ line-height: var(--v-typography-subtitle1-line-height) !important;
118
+ letter-spacing: var(--v-typography-subtitle1-letter-spacing) !important;
119
+ }
120
+
121
+ .text-subtitle-2 {
122
+ font-size: var(--v-typography-subtitle2-font-size) !important;
123
+ font-weight: var(--v-typography-subtitle2-font-weight) !important;
124
+ line-height: var(--v-typography-subtitle2-line-height) !important;
125
+ letter-spacing: var(--v-typography-subtitle2-letter-spacing) !important;
126
+ }
127
+
128
+ /* Other typography */
129
+ .text-caption {
130
+ font-size: var(--v-typography-caption-font-size) !important;
131
+ font-weight: var(--v-typography-caption-font-weight) !important;
132
+ line-height: var(--v-typography-caption-line-height) !important;
133
+ letter-spacing: var(--v-typography-caption-letter-spacing) !important;
134
+ }
135
+
136
+ .text-overline {
137
+ font-size: var(--v-typography-overline-font-size) !important;
138
+ font-weight: var(--v-typography-overline-font-weight) !important;
139
+ line-height: var(--v-typography-overline-line-height) !important;
140
+ letter-spacing: var(--v-typography-overline-letter-spacing) !important;
141
+ text-transform: var(--v-typography-overline-text-transform, uppercase) !important;
142
+ }
143
+
144
+ /* Display text */
145
+ .text-display-1 {
146
+ font-size: var(--v-typography-display1-font-size) !important;
147
+ font-weight: var(--v-typography-display1-font-weight) !important;
148
+ line-height: var(--v-typography-display1-line-height) !important;
149
+ letter-spacing: var(--v-typography-display1-letter-spacing) !important;
150
+ }
151
+
152
+ .text-display-2 {
153
+ font-size: var(--v-typography-display2-font-size) !important;
154
+ font-weight: var(--v-typography-display2-font-weight) !important;
155
+ line-height: var(--v-typography-display2-line-height) !important;
156
+ letter-spacing: var(--v-typography-display2-letter-spacing) !important;
157
+ }
158
+ }
@@ -26,6 +26,13 @@
26
26
  }
27
27
  }
28
28
 
29
+ // Common table styles
30
+ .v-data-table thead th .v-data-table-header__content {
31
+ opacity: 0.65;
32
+ font-size: 0.875rem;
33
+ font-weight: 700 !important;
34
+ }
35
+
29
36
  .v-data-table-progress {
30
37
  .v-progress-linear {
31
38
  height: 4px !important;
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Enum définissant les niveaux d'expertise pour les composants
3
+ */
4
+ export enum ExpertiseLevelEnum {
5
+ DEV = 'dev',
6
+ DESIGN = 'design',
7
+ }
@@ -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
 
@@ -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
  {
@@ -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
 
@@ -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
 
@@ -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
 
@@ -170,7 +170,7 @@
170
170
  })
171
171
 
172
172
  const isRequired = computed(() => {
173
- if (props.disableErrorHandling || props.hideMessages) return false
173
+ if (props.disableErrorHandling) return false
174
174
  if (props.readonly) return
175
175
  return (props.required || props.errorMessages.length > 0) && !selectedItem.value
176
176
  })
@@ -218,13 +218,6 @@
218
218
  }
219
219
  window.addEventListener('scroll', updateListPosition, true)
220
220
  window.addEventListener('resize', updateListPosition)
221
-
222
- if (props.hideMessages) {
223
- const message = document.querySelector('.v-input__details')
224
- if (message) {
225
- message.classList.add('d-sr-only')
226
- }
227
- }
228
221
  })
229
222
 
230
223
  onUnmounted(() => {
@@ -253,11 +246,12 @@
253
246
  :aria-label="labelWithAsterisk"
254
247
  :error-messages="props.disableErrorHandling ? [] : errorMessages"
255
248
  :variant="outlined ? 'outlined' : 'underlined'"
256
- :rules="isRequired && !props.disableErrorHandling && !props.hideMessages ? ['Le champ est requis.'] : []"
249
+ :rules="isRequired && !props.disableErrorHandling ? ['Le champ est requis.'] : []"
257
250
  :display-asterisk="displayAsterisk"
258
251
  :bg-color="props.bgColor"
259
252
  :density="props.density"
260
253
  readonly
254
+ :hide-details="props.hideMessages"
261
255
  class="sy-select"
262
256
  :width="calculatedWidth"
263
257
  :style="hasError ? { minWidth: `${labelWidth + 18}px`} : {minWidth: `${labelWidth}px`}"
@@ -50,12 +50,14 @@ describe('SySelect.vue', () => {
50
50
  it('renders error messages when provided', () => {
51
51
  const errorMessages = ['Error 1']
52
52
  const wrapper = mount(SySelect, {
53
- props: { errorMessages },
53
+ props: { errorMessages, hideMessages: false },
54
54
  global: {
55
55
  plugins: [vuetify],
56
56
  },
57
57
  })
58
- expect(wrapper.find('.v-messages__message').text()).toContain('Error 1')
58
+ const message = wrapper.find('.v-messages__message')
59
+ expect(message.exists()).toBe(true)
60
+ expect(message.text()).toContain('Error 1')
59
61
  })
60
62
 
61
63
  it('does not render error messages when not provided', () => {
@@ -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
  {
@@ -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
  {
@@ -0,0 +1,212 @@
1
+ import {Meta, Canvas, Controls, Source} from '@storybook/blocks';
2
+ import * as DatePickerStories from "./ComplexDatePicker.stories.ts";
3
+
4
+ <Meta of={DatePickerStories}/>
5
+
6
+ # DatePicker - Mode combiné
7
+
8
+ Le DatePicker en mode combiné (`useCombinedMode: true`) permet d'utiliser à la fois le calendrier interactif et la saisie manuelle avec formatage automatique.
9
+
10
+ ## Description
11
+
12
+ Cette variante du DatePicker est particulièrement utile lorsque :
13
+ - Vous souhaitez offrir plusieurs méthodes de saisie de date aux utilisateurs
14
+ - Vous avez besoin du formatage automatique intelligent des dates pendant la saisie
15
+ - Vous voulez conserver l'interaction avec le calendrier pour une meilleure expérience utilisateur
16
+
17
+ Le formatage automatique intelligent ajoute les séparateurs (/, -, etc.) pendant la saisie en fonction du format spécifié.
18
+
19
+ <Canvas story={{height: '550px'}} of={DatePickerStories.Default}/>
20
+
21
+ ## Propriétés spécifiques
22
+
23
+ Propriétés applicables pour le mode combiné :
24
+
25
+ <Controls of={DatePickerStories.Default}/>
26
+
27
+
28
+ # Fonctionnalités spécifiques
29
+
30
+ ## Formatage automatique des dates
31
+
32
+ Le composant ComplexDatePicker offre un formatage automatique intelligent des dates pendant la saisie. Les séparateurs sont automatiquement ajoutés lors de la saisie des chiffres, en s'adaptant au format spécifié (DD/MM/YYYY, MM/DD/YYYY, YYYY-MM-DD, etc.).
33
+
34
+ <Canvas of={DatePickerStories.AutoFormattingInput}/>
35
+
36
+ ## Désactivation de l'interaction avec le calendrier
37
+
38
+ La propriété `disablePickerInteraction` permet d'utiliser le champ de saisie avec formatage automatique sans que le calendrier n'apparaisse au clic sur l'input ou sur l'icône. Cette option est utile pour les cas où on souhaite uniquement la saisie manuelle.
39
+
40
+ <Canvas of={DatePickerStories.DisablePickerInteraction}/>
41
+
42
+ ## Formats de date personnalisés
43
+
44
+ Le composant supporte différents formats de date et détecte automatiquement le séparateur utilisé dans le format (/, -, ., etc.) pour l'appliquer lors de la saisie.
45
+
46
+ <Canvas of={DatePickerStories.CustomDateFormat}/>
47
+
48
+ ## Mode lecture seule
49
+
50
+ Le composant peut être configuré en mode lecture seule, ce qui empêche toute modification de la valeur.
51
+
52
+ <Canvas of={DatePickerStories.ReadonlyMode}/>
53
+
54
+ ## Plages de dates
55
+
56
+ Le composant permet la sélection de plages de dates avec validation automatique.
57
+
58
+ <Canvas of={DatePickerStories.DateRange}/>
59
+
60
+ ### DatePicker avec période personnalisée
61
+
62
+
63
+ <div
64
+ style={{
65
+ border: '2px solid #FF0000',
66
+ padding: '1rem',
67
+ borderRadius: '4px',
68
+ marginBottom: '1rem',
69
+ }}
70
+ >
71
+ <strong>Note importante</strong>
72
+ <ul>
73
+ <li>La prop <code>period</code> permet de définir une période de dates valides. Les dates en dehors de cette période ne seront pas visibles dans le calendrier.</li>
74
+ <li>Le format de la prop <code>period</code> est <code>MM/DD/YYYY</code>.</li>
75
+ </ul>
76
+ </div>
77
+
78
+ <Canvas of={DatePickerStories.WithCustomPeriod}/>
79
+
80
+ ## Personnalisation des icônes
81
+
82
+ Vous pouvez personnaliser la position de l'icône du calendrier (au début ou à la fin du champ).
83
+
84
+ <Canvas of={DatePickerStories.WithCustomIcons}/>
85
+
86
+ ## Activation par le champ de texte
87
+
88
+ La propriété `textFieldActivator` permet d'ouvrir le calendrier en cliquant n'importe où sur le champ de texte.
89
+
90
+ <Canvas of={DatePickerStories.WithTextFieldActivator}/>
91
+
92
+
93
+ # Validation et règles personnalisées
94
+
95
+ Le composant prend en charge des règles de validation personnalisées pour vérifier les dates saisies.
96
+
97
+ <Canvas of={DatePickerStories.WithValidation}/>
98
+
99
+ ## Formats de retour différents
100
+
101
+ Vous pouvez spécifier un format différent pour la valeur de retour avec la propriété `dateFormatReturn`.
102
+
103
+ <Canvas of={DatePickerStories.WithDateFormatReturn}/>
104
+
105
+ ## Intégration dans un formulaire
106
+
107
+ Le composant s'intègre facilement dans un formulaire avec validation à la soumission.
108
+
109
+ <Canvas of={DatePickerStories.WithFormSubmission}/>
110
+
111
+ # Méthodes exposées
112
+
113
+ Le composant expose plusieurs méthodes qui peuvent être utilisées via une référence :
114
+
115
+ ### validateOnSubmit
116
+ - **Description** : Valide le champ lors de la soumission d'un formulaire
117
+ - **Retour** : `boolean` - Indique si la validation a réussi
118
+
119
+ ### clearValidation
120
+ - **Description** : Efface les messages de validation
121
+
122
+ ### validateDates
123
+ - **Description** : Valide les dates sélectionnées
124
+
125
+ ### openDatePicker
126
+ - **Description** : Ouvre le calendrier programmatiquement
127
+
128
+ ### toggleDatePicker
129
+ - **Description** : Bascule l'état d'ouverture du calendrier
130
+
131
+ ### Exemple d'utilisation
132
+
133
+ <Source
134
+ dark code={`
135
+ <script setup lang="ts">
136
+ import { ref } from 'vue'
137
+ import { DatePicker } from '@cnamts/synapse'
138
+
139
+ const date = ref('')
140
+ const datePicker = ref(null)
141
+
142
+ const submitForm = () => {
143
+ const isValid = datePicker.value.validateOnSubmit()
144
+ if (isValid) {
145
+ // Traitement du formulaire
146
+ }
147
+ }
148
+ </script>
149
+
150
+ <template>
151
+ <form @submit.prevent="submitForm">
152
+ <DatePicker
153
+ ref="datePicker"
154
+ v-model="date"
155
+ placeholder="Date requise"
156
+ format="DD/MM/YYYY"
157
+ useCombinedMode
158
+ required
159
+ />
160
+ <button type="submit">Soumettre</button>
161
+ </form>
162
+ </template>
163
+ `}
164
+ />
165
+
166
+ ### Exemple avec période personnalisée
167
+
168
+ <Source
169
+ dark code={`
170
+ <script setup lang="ts">
171
+ import { ref } from 'vue'
172
+ import { DatePicker } from '@cnamts/synapse'
173
+
174
+ const date = ref('')
175
+ </script>
176
+
177
+ <template>
178
+ <DatePicker
179
+ v-model="date"
180
+ placeholder="Sélectionner une date (1995-2005)"
181
+ format="DD/MM/YYYY"
182
+ useCombinedMode
183
+ :period="{
184
+ min: '01/01/1995',
185
+ max: '31/12/2005'
186
+ }"
187
+ />
188
+ </template>
189
+ `}
190
+ />
191
+
192
+ # Événements
193
+
194
+ Le composant émet plusieurs événements :
195
+
196
+ ### update:modelValue
197
+ - **Payload** : `string | string[]` - La nouvelle valeur du champ
198
+
199
+ ### closed
200
+ - **Description** : Émis lorsque le calendrier est fermé
201
+
202
+ ### focus
203
+ - **Description** : Émis lorsque le champ reçoit le focus
204
+
205
+ ### blur
206
+ - **Description** : Émis lorsque le champ perd le focus
207
+
208
+ ### input
209
+ - **Payload** : `string` - La valeur saisie dans le champ
210
+
211
+ ### date-selected
212
+ - **Payload** : `Date | Date[] | null` - La date ou les dates sélectionnées