@cnamts/synapse 0.0.4-alpha → 0.0.6-alpha

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 (322) hide show
  1. package/dist/design-system-v3.d.ts +1277 -499
  2. package/dist/design-system-v3.js +4193 -1573
  3. package/dist/design-system-v3.umd.cjs +8 -8
  4. package/dist/style.css +1 -1
  5. package/package.json +18 -17
  6. package/src/assets/settings.scss +3 -0
  7. package/src/assets/tokens.scss +16 -17
  8. package/src/components/BackBtn/Accessibilite.mdx +14 -0
  9. package/src/components/BackBtn/Accessibilite.stories.ts +166 -0
  10. package/src/components/BackBtn/AccessibiliteItems.ts +102 -0
  11. package/src/components/BackBtn/BackBtn.mdx +1 -1
  12. package/src/components/BackBtn/BackBtn.stories.ts +8 -8
  13. package/src/components/BackBtn/BackBtn.vue +0 -1
  14. package/src/components/BackBtn/constants/ExpertiseLevelEnum.ts +4 -0
  15. package/src/components/BackToTopBtn/Accessibilite.mdx +14 -0
  16. package/src/components/BackToTopBtn/Accessibilite.stories.ts +166 -0
  17. package/src/components/BackToTopBtn/AccessibiliteItems.ts +52 -0
  18. package/src/components/BackToTopBtn/BackToTopBtn.mdx +1 -1
  19. package/src/components/BackToTopBtn/constants/ExpertiseLevelEnum.ts +4 -0
  20. package/src/components/CollapsibleList/Accessibilite.mdx +14 -0
  21. package/src/components/CollapsibleList/Accessibilite.stories.ts +170 -0
  22. package/src/components/CollapsibleList/AccessibiliteItems.ts +122 -0
  23. package/src/components/CollapsibleList/CollapsibleList.stories.ts +1 -1
  24. package/src/components/CollapsibleList/constants/ExpertiseLevelEnum.ts +4 -0
  25. package/src/components/CookieBanner/Accessibilite.mdx +14 -0
  26. package/src/components/CookieBanner/Accessibilite.stories.ts +219 -0
  27. package/src/components/CookieBanner/AccessibiliteItems.ts +356 -0
  28. package/src/components/CookieBanner/CookieBanner.mdx +219 -0
  29. package/src/components/CookieBanner/CookieBanner.stories.ts +678 -0
  30. package/src/components/CookieBanner/CookieBanner.vue +225 -0
  31. package/src/components/CookieBanner/config.ts +38 -0
  32. package/src/components/CookieBanner/constants/ExpertiseLevelEnum.ts +4 -0
  33. package/src/components/CookieBanner/locales.ts +12 -0
  34. package/src/components/CookieBanner/tests/CookieBanner.spec.ts +129 -0
  35. package/src/components/CookieBanner/tests/__snapshots__/CookieBanner.spec.ts.snap +197 -0
  36. package/src/components/CookiesSelection/CookiesInformation/CookiesInformation.vue +123 -0
  37. package/src/components/CookiesSelection/CookiesInformation/locales.ts +21 -0
  38. package/src/components/CookiesSelection/CookiesInformation/tests/CookiesInformation.spec.ts +121 -0
  39. package/src/components/CookiesSelection/CookiesSelection.vue +127 -0
  40. package/src/components/CookiesSelection/CookiesTable/CookiesTable.vue +47 -0
  41. package/src/components/CookiesSelection/CookiesTable/headers.ts +14 -0
  42. package/src/components/CookiesSelection/CookiesTable/tests/CookiesTable.spec.ts +30 -0
  43. package/src/components/CookiesSelection/CookiesTable/tests/__snapshots__/CookiesTable.spec.ts.snap +3 -0
  44. package/src/components/CookiesSelection/locales.ts +10 -0
  45. package/src/components/CookiesSelection/tests/CookiesSelection.spec.ts +184 -0
  46. package/src/components/CookiesSelection/tests/__snapshots__/CookiesSelection.spec.ts.snap +192 -0
  47. package/src/components/CookiesSelection/types.ts +15 -0
  48. package/src/components/CopyBtn/Accessibilite.mdx +14 -0
  49. package/src/components/CopyBtn/Accessibilite.stories.ts +166 -0
  50. package/src/components/CopyBtn/AccessibiliteItems.ts +105 -0
  51. package/src/components/CopyBtn/CopyBtn.mdx +1 -1
  52. package/src/components/CopyBtn/CopyBtn.stories.ts +4 -4
  53. package/src/components/CopyBtn/CopyBtn.vue +0 -1
  54. package/src/components/CopyBtn/config.ts +2 -0
  55. package/src/components/CopyBtn/constants/ExpertiseLevelEnum.ts +4 -0
  56. package/src/components/Customs/SyBtnSelect/Accessibilite.mdx +14 -0
  57. package/src/components/Customs/SyBtnSelect/Accessibilite.stories.ts +193 -0
  58. package/src/components/Customs/SyBtnSelect/AccessibiliteItems.ts +139 -0
  59. package/src/components/Customs/SyBtnSelect/SyBtnSelect.mdx +45 -0
  60. package/src/components/Customs/SyBtnSelect/SyBtnSelect.stories.ts +662 -0
  61. package/src/components/Customs/SyBtnSelect/SyBtnSelect.vue +254 -0
  62. package/src/components/Customs/SyBtnSelect/constants/ExpertiseLevelEnum.ts +4 -0
  63. package/src/components/Customs/SyBtnSelect/tests/SyBtnSelect.spec.ts +168 -0
  64. package/src/components/Customs/SyInputSelect/Accessibilite.mdx +14 -0
  65. package/src/components/Customs/SyInputSelect/Accessibilite.stories.ts +166 -0
  66. package/src/components/Customs/SyInputSelect/AccessibiliteItems.ts +96 -0
  67. package/src/components/Customs/SyInputSelect/SyInputSelect.mdx +41 -0
  68. package/src/components/Customs/{CustomInputSelect/CustomInputSelect.stories.ts → SyInputSelect/SyInputSelect.stories.ts} +30 -83
  69. package/src/components/Customs/{CustomInputSelect/CustomInputSelect.vue → SyInputSelect/SyInputSelect.vue} +46 -6
  70. package/src/components/Customs/SyInputSelect/constants/ExpertiseLevelEnum.ts +4 -0
  71. package/src/components/Customs/SyInputSelect/tests/SyInputSelect.spec.ts +140 -0
  72. package/src/components/Customs/SySelect/Accessibilite.mdx +14 -0
  73. package/src/components/Customs/SySelect/Accessibilite.stories.ts +217 -0
  74. package/src/components/Customs/SySelect/AccessibiliteItems.ts +173 -0
  75. package/src/components/Customs/{CustomSelect/CustomSelect.mdx → SySelect/SySelect.mdx} +9 -8
  76. package/src/components/Customs/{CustomSelect/CustomSelect.stories.ts → SySelect/SySelect.stories.ts} +25 -79
  77. package/src/components/Customs/{CustomSelect/CustomSelect.vue → SySelect/SySelect.vue} +44 -13
  78. package/src/components/Customs/SySelect/constants/ExpertiseLevelEnum.ts +4 -0
  79. package/src/components/Customs/{CustomInputSelect/tests/CustomInputSelect.spec.ts → SySelect/tests/SySelect.spec.ts} +48 -71
  80. package/src/components/Customs/SyTextField/Accessibilite.mdx +14 -0
  81. package/src/components/Customs/SyTextField/Accessibilite.stories.ts +224 -0
  82. package/src/components/Customs/SyTextField/AccessibiliteItems.ts +198 -0
  83. package/src/components/Customs/SyTextField/SyTextField.mdx +44 -0
  84. package/src/components/Customs/{CustomTextField/CustomTextField.stories.ts → SyTextField/SyTextField.stories.ts} +145 -34
  85. package/src/components/Customs/{CustomTextField/CustomTextField.vue → SyTextField/SyTextField.vue} +27 -7
  86. package/src/components/Customs/SyTextField/constants/ExpertiseLevelEnum.ts +4 -0
  87. package/src/components/Customs/{CustomTextField/tests/CustomTextField.spec.ts → SyTextField/tests/SyTextField.spec.ts} +3 -3
  88. package/src/components/Customs/{CustomTextField/tests/__snapshots__/CustomTextField.spec.ts.snap → SyTextField/tests/__snapshots__/SyTextField.spec.ts.snap} +5 -6
  89. package/src/components/DataList/Accessibilite.mdx +14 -0
  90. package/src/components/DataList/Accessibilite.stories.ts +166 -0
  91. package/src/components/DataList/AccessibiliteItems.ts +47 -0
  92. package/src/components/DataList/DataList.mdx +1 -1
  93. package/src/components/DataList/DataList.stories.ts +10 -10
  94. package/src/components/DataList/constants/ExpertiseLevelEnum.ts +4 -0
  95. package/src/components/DataListGroup/Accessibilite.mdx +14 -0
  96. package/src/components/DataListGroup/Accessibilite.stories.ts +225 -0
  97. package/src/components/DataListGroup/AccessibiliteItems.ts +79 -0
  98. package/src/components/DataListGroup/DataListGroup.mdx +1 -1
  99. package/src/components/DataListGroup/DataListGroup.stories.ts +7 -7
  100. package/src/components/DataListGroup/constants/ExpertiseLevelEnum.ts +4 -0
  101. package/src/components/DialogBox/Accessibilite.mdx +14 -0
  102. package/src/components/DialogBox/Accessibilite.stories.ts +189 -0
  103. package/src/components/DialogBox/AccessibiliteItems.ts +167 -0
  104. package/src/components/DialogBox/DialogBox.mdx +14 -0
  105. package/src/components/DialogBox/DialogBox.stories.ts +798 -0
  106. package/src/components/DialogBox/DialogBox.vue +181 -0
  107. package/src/components/DialogBox/config.ts +25 -0
  108. package/src/components/DialogBox/constants/ExpertiseLevelEnum.ts +4 -0
  109. package/src/components/DialogBox/locales.ts +5 -0
  110. package/src/components/DialogBox/tests/DialogBox.spec.ts +329 -0
  111. package/src/components/DialogBox/tests/__snapshots__/DialogBox.spec.ts.snap +46 -0
  112. package/src/components/DownloadBtn/AccessibiliteItems.ts +1 -31
  113. package/src/components/DownloadBtn/DownloadBtn.mdx +3 -3
  114. package/src/components/DownloadBtn/DownloadBtn.stories.ts +6 -6
  115. package/src/components/ErrorPage/Accessibilite.mdx +14 -0
  116. package/src/components/ErrorPage/Accessibilite.stories.ts +189 -0
  117. package/src/components/ErrorPage/AccessibiliteItems.ts +205 -0
  118. package/src/components/ErrorPage/ErrorPage.mdx +21 -0
  119. package/src/components/ErrorPage/ErrorPage.stories.ts +133 -0
  120. package/src/components/ErrorPage/ErrorPage.vue +93 -0
  121. package/src/components/ErrorPage/constants/ExpertiseLevelEnum.ts +4 -0
  122. package/src/components/ErrorPage/locales.ts +5 -0
  123. package/src/components/ErrorPage/tests/ErrorPage.spec.ts +40 -0
  124. package/src/components/ErrorPage/tests/__snapshots__/ErrorPage.spec.ts.snap +78 -0
  125. package/src/components/FooterBar/Accessibilite.mdx +14 -0
  126. package/src/components/FooterBar/Accessibilite.stories.ts +223 -0
  127. package/src/components/FooterBar/AccessibiliteItems.ts +257 -0
  128. package/src/components/FooterBar/FooterBar.mdx +2 -2
  129. package/src/components/FooterBar/FooterBar.stories.ts +556 -8
  130. package/src/components/FooterBar/FooterBar.vue +80 -73
  131. package/src/components/FooterBar/config.ts +2 -3
  132. package/src/components/FooterBar/constants/ExpertiseLevelEnum.ts +4 -0
  133. package/src/components/FooterBar/tests/FooterBar.spec.ts +1 -1
  134. package/src/components/FooterBar/tests/FooterBarConfig.spec.ts +1 -1
  135. package/src/components/FooterBar/tests/__snapshots__/FooterBar.spec.ts.snap +24 -22
  136. package/src/components/FranceConnectBtn/Accessibilite.mdx +14 -0
  137. package/src/components/FranceConnectBtn/Accessibilite.stories.ts +194 -0
  138. package/src/components/FranceConnectBtn/AccessibiliteItems.ts +169 -0
  139. package/src/components/FranceConnectBtn/FranceConnectBtn.mdx +1 -1
  140. package/src/components/FranceConnectBtn/FranceConnectBtn.stories.ts +3 -3
  141. package/src/components/FranceConnectBtn/constants/ExpertiseLevelEnum.ts +4 -0
  142. package/src/components/HeaderBar/Accessibilite.mdx +14 -0
  143. package/src/components/HeaderBar/Accessibilite.stories.ts +223 -0
  144. package/src/components/HeaderBar/AccessibiliteItems.ts +194 -0
  145. package/src/components/HeaderBar/HeaderBar.stories.ts +60 -2
  146. package/src/components/HeaderBar/HeaderBar.vue +1 -9
  147. package/src/components/HeaderBar/HeaderBurgerMenu/Accessibilite.mdx +14 -0
  148. package/src/components/HeaderBar/HeaderBurgerMenu/Accessibilite.stories.ts +223 -0
  149. package/src/components/HeaderBar/HeaderBurgerMenu/AccessibiliteItems.ts +174 -0
  150. package/src/components/HeaderBar/HeaderBurgerMenu/constants/ExpertiseLevelEnum.ts +4 -0
  151. package/src/components/HeaderBar/constants/ExpertiseLevelEnum.ts +4 -0
  152. package/src/components/HeaderBar/tests/__snapshots__/HeaderBar.spec.ts.snap +1 -1
  153. package/src/components/HeaderLoading/Accessibilite.mdx +14 -0
  154. package/src/components/HeaderLoading/Accessibilite.stories.ts +167 -0
  155. package/src/components/HeaderLoading/AccessibiliteItems.ts +29 -0
  156. package/src/components/HeaderLoading/HeaderLoading.mdx +1 -1
  157. package/src/components/HeaderLoading/HeaderLoading.stories.ts +1 -1
  158. package/src/components/HeaderLoading/constants/ExpertiseLevelEnum.ts +4 -0
  159. package/src/components/HeaderNavigationBar/HeaderNavigationBar.mdx +6 -6
  160. package/src/components/HeaderNavigationBar/HorizontalNavbar/HorizontalNavbar.vue +35 -33
  161. package/src/components/HeaderNavigationBar/tests/HeaderNavigationBar.spec.ts +1 -1
  162. package/src/components/HeaderToolbar/Accessibilite.mdx +14 -0
  163. package/src/components/HeaderToolbar/Accessibilite.stories.ts +203 -0
  164. package/src/components/HeaderToolbar/AccessibiliteItems.ts +200 -0
  165. package/src/components/HeaderToolbar/HeaderToolbar.mdx +1 -1
  166. package/src/components/HeaderToolbar/HeaderToolbar.stories.ts +2 -2
  167. package/src/components/HeaderToolbar/HeaderToolbar.vue +3 -2
  168. package/src/components/HeaderToolbar/constants/ExpertiseLevelEnum.ts +4 -0
  169. package/src/components/HeaderToolbar/tests/HeaderToolbar.spec.ts +36 -2
  170. package/src/components/LangBtn/Accessibilite.mdx +14 -0
  171. package/src/components/LangBtn/Accessibilite.stories.ts +168 -0
  172. package/src/components/LangBtn/AccessibiliteItems.ts +101 -0
  173. package/src/components/LangBtn/LangBtn.mdx +1 -1
  174. package/src/components/LangBtn/LangBtn.stories.ts +4 -4
  175. package/src/components/LangBtn/LangBtn.vue +3 -2
  176. package/src/components/LangBtn/constants/ExpertiseLevelEnum.ts +4 -0
  177. package/src/components/LangBtn/tests/LangBtn.spec.ts +1 -1
  178. package/src/components/LangBtn/tests/__snapshots__/LangBtn.spec.ts.snap +1 -1
  179. package/src/components/Logo/Accessibilite.mdx +14 -0
  180. package/src/components/Logo/Accessibilite.stories.ts +223 -0
  181. package/src/components/Logo/AccessibiliteItems.ts +155 -0
  182. package/src/components/Logo/Logo.mdx +1 -1
  183. package/src/components/Logo/Logo.stories.ts +8 -8
  184. package/src/components/Logo/constants/ExpertiseLevelEnum.ts +4 -0
  185. package/src/components/LogoBrandSection/Accessibilite.mdx +14 -0
  186. package/src/components/LogoBrandSection/Accessibilite.stories.ts +223 -0
  187. package/src/components/LogoBrandSection/AccessibiliteItems.ts +194 -0
  188. package/src/components/LogoBrandSection/constants/ExpertiseLevelEnum.ts +4 -0
  189. package/src/components/MaintenancePage/Accessibilite.mdx +14 -0
  190. package/src/components/MaintenancePage/Accessibilite.stories.ts +189 -0
  191. package/src/components/MaintenancePage/AccessibiliteItems.ts +173 -0
  192. package/src/components/MaintenancePage/MaintenancePage.mdx +11 -0
  193. package/src/components/MaintenancePage/MaintenancePage.stories.ts +41 -0
  194. package/src/components/MaintenancePage/MaintenancePage.vue +25 -0
  195. package/src/components/MaintenancePage/assets/maintenance.svg +1 -0
  196. package/src/components/MaintenancePage/constants/ExpertiseLevelEnum.ts +4 -0
  197. package/src/components/MaintenancePage/index.ts +3 -0
  198. package/src/components/MaintenancePage/locales.ts +5 -0
  199. package/src/components/MaintenancePage/tests/MaintenancePage.spec.ts +12 -0
  200. package/src/components/MaintenancePage/tests/__snapshots__/MaintenancePage.spec.ts.snap +3 -0
  201. package/src/components/NirField/Accessibilite.mdx +14 -0
  202. package/src/components/NirField/Accessibilite.stories.ts +214 -0
  203. package/src/components/NirField/AccessibiliteItems.ts +243 -0
  204. package/src/components/NirField/NirField.mdx +216 -0
  205. package/src/components/NirField/NirField.stories.ts +359 -0
  206. package/src/components/NirField/NirField.vue +450 -0
  207. package/src/components/NirField/config.ts +16 -0
  208. package/src/components/NirField/constants/ExpertiseLevelEnum.ts +4 -0
  209. package/src/components/NirField/locales.ts +12 -0
  210. package/src/components/NirField/nirValidation.ts +42 -0
  211. package/src/components/NirField/tests/NirField.spec.ts +119 -0
  212. package/src/components/NotFoundPage/Accessibilite.mdx +14 -0
  213. package/src/components/NotFoundPage/Accessibilite.stories.ts +190 -0
  214. package/src/components/NotFoundPage/AccessibiliteItems.ts +205 -0
  215. package/src/components/NotFoundPage/NotFoundPage.mdx +19 -0
  216. package/src/components/NotFoundPage/NotFoundPage.stories.ts +76 -0
  217. package/src/components/NotFoundPage/NotFoundPage.vue +52 -0
  218. package/src/components/NotFoundPage/assets/not-found.svg +1 -0
  219. package/src/components/NotFoundPage/constants/ExpertiseLevelEnum.ts +4 -0
  220. package/src/components/NotFoundPage/locales.ts +6 -0
  221. package/src/components/NotFoundPage/tests/NotFoundPage.spec.ts +38 -0
  222. package/src/components/NotFoundPage/tests/__snapshots__/NotFoundPage.spec.ts.snap +76 -0
  223. package/src/components/NotificationBar/Accessibilite.mdx +14 -0
  224. package/src/components/NotificationBar/Accessibilite.stories.ts +166 -0
  225. package/src/components/NotificationBar/AccessibiliteItems.ts +144 -0
  226. package/src/components/NotificationBar/NotificationBar.mdx +1 -1
  227. package/src/components/NotificationBar/constants/ExpertiseLevelEnum.ts +4 -0
  228. package/src/components/NotificationBar/options.ts +1 -0
  229. package/src/components/PageContainer/Accessibilite.mdx +14 -0
  230. package/src/components/PageContainer/Accessibilite.stories.ts +166 -0
  231. package/src/components/PageContainer/AccessibiliteItems.ts +52 -0
  232. package/src/components/PageContainer/PageContainer.mdx +1 -1
  233. package/src/components/PageContainer/PageContainer.stories.ts +4 -4
  234. package/src/components/PageContainer/PageContainer.vue +16 -15
  235. package/src/components/PageContainer/constants/ExpertiseLevelEnum.ts +4 -0
  236. package/src/components/PageContainer/tests/PageContainer.spec.ts +1 -1
  237. package/src/components/PageContainer/tests/__snapshots__/PageContainer.spec.ts.snap +2 -2
  238. package/src/components/PhoneField/Accessibilite.mdx +14 -0
  239. package/src/components/PhoneField/Accessibilite.stories.ts +216 -0
  240. package/src/components/PhoneField/AccessibiliteItems.ts +238 -0
  241. package/src/components/PhoneField/PhoneField.mdx +1 -1
  242. package/src/components/PhoneField/PhoneField.stories.ts +2 -2
  243. package/src/components/PhoneField/PhoneField.vue +5 -6
  244. package/src/components/PhoneField/constants/ExpertiseLevelEnum.ts +4 -0
  245. package/src/components/PhoneField/tests/PhoneField.spec.ts +3 -3
  246. package/src/components/SkipLink/Accessibilite.mdx +14 -0
  247. package/src/components/SkipLink/Accessibilite.stories.ts +167 -0
  248. package/src/components/SkipLink/AccessibiliteItems.ts +77 -0
  249. package/src/components/SkipLink/SkipLink.stories.ts +2 -2
  250. package/src/components/SkipLink/constants/ExpertiseLevelEnum.ts +4 -0
  251. package/src/components/SocialMediaLinks/Accessibilite.mdx +14 -0
  252. package/src/components/SocialMediaLinks/Accessibilite.stories.ts +170 -0
  253. package/src/components/SocialMediaLinks/AccessibiliteItems.ts +160 -0
  254. package/src/components/SocialMediaLinks/SocialMediaLinks.mdx +18 -14
  255. package/src/components/SocialMediaLinks/SocialMediaLinks.stories.ts +3 -2
  256. package/src/components/SocialMediaLinks/constants/ExpertiseLevelEnum.ts +4 -0
  257. package/src/components/SocialMediaLinks/tests/SocialMediaLinks.spec.ts +1 -1
  258. package/src/components/SocialMediaLinks/tests/__snapshots__/SocialMediaLinks.spec.ts.snap +2 -2
  259. package/src/components/SubHeader/Accessibilite.mdx +14 -0
  260. package/src/components/SubHeader/Accessibilite.stories.ts +166 -0
  261. package/src/components/SubHeader/AccessibiliteItems.ts +146 -0
  262. package/src/components/SubHeader/SubHeader.mdx +1 -1
  263. package/src/components/SubHeader/SubHeader.stories.ts +11 -11
  264. package/src/components/SubHeader/SubHeader.vue +1 -1
  265. package/src/components/SubHeader/constants/ExpertiseLevelEnum.ts +4 -0
  266. package/src/components/SyAlert/Accessibilite.mdx +14 -0
  267. package/src/components/SyAlert/Accessibilite.stories.ts +166 -0
  268. package/src/components/SyAlert/AccessibiliteItems.ts +122 -0
  269. package/src/components/{Alert/Alert.mdx → SyAlert/SyAlert.mdx} +9 -9
  270. package/src/components/{Alert/Alert.stories.ts → SyAlert/SyAlert.stories.ts} +22 -22
  271. package/src/components/SyAlert/constants/ExpertiseLevelEnum.ts +4 -0
  272. package/src/components/{Alert/tests/Alert.spec.ts → SyAlert/tests/SyAlert.spec.ts} +5 -5
  273. package/src/components/{Alert/tests/__snapshots__/Alert.spec.ts.snap → SyAlert/tests/__snapshots__/SyAlert.spec.ts.snap} +2 -2
  274. package/src/components/UserMenuBtn/Accessibilite.mdx +14 -0
  275. package/src/components/UserMenuBtn/Accessibilite.stories.ts +189 -0
  276. package/src/components/UserMenuBtn/AccessibiliteItems.ts +155 -0
  277. package/src/components/UserMenuBtn/UserMenuBtn.mdx +35 -0
  278. package/src/components/UserMenuBtn/UserMenuBtn.stories.ts +540 -0
  279. package/src/components/UserMenuBtn/UserMenuBtn.vue +101 -0
  280. package/src/components/UserMenuBtn/config.ts +24 -0
  281. package/src/components/UserMenuBtn/constants/ExpertiseLevelEnum.ts +4 -0
  282. package/src/components/UserMenuBtn/tests/UserMenuBtn.spec.ts +125 -0
  283. package/src/components/index.ts +19 -4
  284. package/src/composables/index.ts +8 -0
  285. package/src/composables/rules/tests/useFieldValidation.spec.ts +84 -0
  286. package/src/composables/rules/useFieldValidation.ts +90 -0
  287. package/src/designTokens/index.ts +2 -0
  288. package/src/designTokens/tokens/cnam/cnamDarkTheme.ts +5 -0
  289. package/src/designTokens/tokens/cnam/cnamLightTheme.ts +1 -0
  290. package/src/main.ts +3 -0
  291. package/src/stories/Fondamentaux/Arrondis.mdx +24 -0
  292. package/src/stories/{Guidelines → Fondamentaux}/Colors.mdx +1 -1
  293. package/src/stories/Fondamentaux/Conteneurs.mdx +7 -0
  294. package/src/stories/Fondamentaux/CustomisationEtThemes.mdx +7 -0
  295. package/src/stories/Fondamentaux/Elevations.mdx +14 -0
  296. package/src/stories/Fondamentaux/Espacements.mdx +29 -0
  297. package/src/stories/{Guidelines → Fondamentaux}/Introduction.mdx +1 -1
  298. package/src/stories/Fondamentaux/StylesTypographiques.mdx +33 -0
  299. package/src/stories/Fondamentaux/Typographie.mdx +58 -0
  300. package/src/stories/GuideDuDev/CommentUtiliserLesRules.mdx +120 -0
  301. package/src/stories/GuideDuDev/components.stories.ts +5 -5
  302. package/src/stories/GuideDuDev/moduleDeNotification.mdx +1 -1
  303. package/src/stories/{Fondamentaux → Guidelines}/Accessibilite/Accessibilite.stories.ts +1 -1
  304. package/src/stories/{Fondamentaux → Guidelines}/EcoConception/Econception.stories.ts +2 -2
  305. package/src/stories/Guidelines/Vuetify/Vuetify.mdx +11 -0
  306. package/src/stories/Guidelines/Vuetify/Vuetify.stories.ts +138 -0
  307. package/src/stories/Guidelines/Vuetify/VuetifyItems.ts +350 -0
  308. package/src/components/Customs/CustomInputSelect/CustomInputSelect.mdx +0 -40
  309. package/src/components/Customs/CustomSelect/tests/CustomSelect.spec.ts +0 -236
  310. package/src/components/Customs/CustomTextField/CustomTextField.mdx +0 -44
  311. package/src/stories/Guidelines/CustomisationEtThemes.mdx +0 -3
  312. package/src/stories/Guidelines/Typo.mdx +0 -53
  313. /package/src/components/Customs/{CustomInputSelect → SyInputSelect}/config.ts +0 -0
  314. /package/src/components/Customs/{CustomTextField → SyTextField}/types.d.ts +0 -0
  315. /package/src/components/{Alert/Alert.vue → SyAlert/SyAlert.vue} +0 -0
  316. /package/src/components/{Alert → SyAlert}/locales.ts +0 -0
  317. /package/src/stories/{Fondamentaux → Guidelines}/Accessibilite/Accessibilite.mdx +0 -0
  318. /package/src/stories/{Fondamentaux → Guidelines}/Accessibilite/AccessibiliteItems.ts +0 -0
  319. /package/src/stories/{Fondamentaux → Guidelines}/Accessibilite/constants/ExpertiseLevelEnum.ts +0 -0
  320. /package/src/stories/{Fondamentaux → Guidelines}/Accessibilite/constants/RGAALevelEnum.ts +0 -0
  321. /package/src/stories/{Fondamentaux → Guidelines}/EcoConception/EcoConception.mdx +0 -0
  322. /package/src/stories/{Fondamentaux → Guidelines}/EcoConception/ecoDesignItems.ts +0 -0
@@ -1,12 +1,12 @@
1
1
  import type { Meta, StoryObj } from '@storybook/vue3'
2
- import CustomTextField from '@/components/Customs/CustomTextField/CustomTextField.vue'
2
+ import SyTextField from '@/components/Customs/SyTextField/SyTextField.vue'
3
3
  import { VIcon } from 'vuetify/components'
4
4
  import { ref } from 'vue'
5
5
  import { mdiAccountBox } from '@mdi/js'
6
6
 
7
7
  const meta = {
8
- title: 'Composants/Formulaires/CustomTextField',
9
- component: CustomTextField,
8
+ title: 'Composants/Formulaires/SyTextField',
9
+ component: SyTextField,
10
10
  parameters: {
11
11
  layout: 'fullscreen',
12
12
  controls: { exclude: ['modelValue', 'appendInnerIconColor'] },
@@ -39,7 +39,7 @@ const meta = {
39
39
  options: ['primary', 'secondary', 'success', 'error', 'warning'],
40
40
  },
41
41
  },
42
- } as Meta<typeof CustomTextField>
42
+ } as Meta<typeof SyTextField>
43
43
 
44
44
  export default meta
45
45
 
@@ -51,7 +51,7 @@ export const Default: Story = {
51
51
  name: 'Template',
52
52
  code: `
53
53
  <template>
54
- <CustomTextField v-model="value" />
54
+ <SyTextField v-model="value" />
55
55
  </template>
56
56
  `,
57
57
  },
@@ -59,7 +59,7 @@ export const Default: Story = {
59
59
  name: 'Script',
60
60
  code: `
61
61
  <script setup lang="ts">
62
- import CustomTextField from '@cnamts/synapse'
62
+ import { SyTextField } from '@cnamts/synapse'
63
63
  </script>
64
64
  `,
65
65
  },
@@ -74,19 +74,130 @@ export const Default: Story = {
74
74
  },
75
75
  render: (args) => {
76
76
  return {
77
- components: { CustomTextField, VIcon },
77
+ components: { SyTextField, VIcon },
78
78
  setup() {
79
79
  return { args }
80
80
  },
81
81
  template: `
82
82
  <div class="d-flex flex-wrap align-center pa-4">
83
- <CustomTextField v-bind="args" />
83
+ <SyTextField v-bind="args" />
84
84
  </div>
85
85
  `,
86
86
  }
87
87
  },
88
88
  }
89
89
 
90
+ export const Required: Story = {
91
+ parameters: {
92
+ sourceCode: [
93
+ {
94
+ name: 'Template',
95
+ code: `
96
+ <template>
97
+ <SyTextField
98
+ v-model="value"
99
+ required
100
+ />
101
+ </template>
102
+ `,
103
+ },
104
+ {
105
+ name: 'Script',
106
+ code: `
107
+ <script setup lang="ts">
108
+ import { SyTextField } from '@cnamts/synapse'
109
+ </script>
110
+ `,
111
+ },
112
+ ],
113
+ },
114
+ args: {
115
+ showDivider: false,
116
+ variantStyle: 'outlined',
117
+ color: 'primary',
118
+ isClearable: true,
119
+ label: 'Label',
120
+ required: true,
121
+ },
122
+ render: (args) => {
123
+ return {
124
+ components: { SyTextField, VIcon },
125
+ setup() {
126
+ return { args }
127
+ },
128
+ template: `
129
+ <div class="d-flex flex-wrap align-center pa-4">
130
+ <SyTextField v-bind="args" />
131
+ </div>
132
+ `,
133
+ }
134
+ },
135
+ }
136
+
137
+ export const WithCustomError: Story = {
138
+ parameters: {
139
+ sourceCode: [
140
+ {
141
+ name: 'Template',
142
+ code: `
143
+ <template>
144
+ <SyTextField
145
+ v-model="value"
146
+ :error-messages="errorMessages"
147
+ />
148
+ <VBtn @click="triggerError">
149
+ Trigger Error
150
+ </VBtn>
151
+ </template>
152
+ `,
153
+ },
154
+ {
155
+ name: 'Script',
156
+ code: `
157
+ <script setup lang="ts">
158
+ import { SyTextField } from '@cnamts/synapse'
159
+
160
+ const errorMessages = ref([])
161
+
162
+ const triggerError = () => {
163
+ errorMessages.value = ['This is a test error message']
164
+ }
165
+ </script>
166
+ `,
167
+ },
168
+ ],
169
+ },
170
+ args: {
171
+ showDivider: false,
172
+ variantStyle: 'outlined',
173
+ color: 'primary',
174
+ isClearable: true,
175
+ label: 'Label',
176
+ required: false,
177
+ },
178
+ render: (args) => {
179
+ return {
180
+ components: { SyTextField, VIcon },
181
+ setup() {
182
+ const errorMessages = ref([])
183
+ const triggerError = () => {
184
+ // @ts-expect-error test error message
185
+ errorMessages.value = ['This is a test error message']
186
+ }
187
+ return { args, errorMessages, triggerError }
188
+ },
189
+ template: `
190
+ <div class="d-flex flex-wrap align-center pa-4">
191
+ <SyTextField v-bind="args" :error-messages="errorMessages" />
192
+ </div>
193
+ <VBtn class="ml-8" @click="triggerError">
194
+ Trigger Error
195
+ </VBtn>
196
+ `,
197
+ }
198
+ },
199
+ }
200
+
90
201
  export const SlotPrepend: Story = {
91
202
  parameters: {
92
203
  sourceCode: [
@@ -94,7 +205,7 @@ export const SlotPrepend: Story = {
94
205
  name: 'Template',
95
206
  code: `
96
207
  <template>
97
- <CustomTextField
208
+ <SyTextField
98
209
  v-model="value"
99
210
  prepend-icon="info"
100
211
  />
@@ -105,7 +216,7 @@ export const SlotPrepend: Story = {
105
216
  name: 'Script',
106
217
  code: `
107
218
  <script setup lang="ts">
108
- import CustomTextField from '@cnamts/synapse'
219
+ import { SyTextField } from '@cnamts/synapse'
109
220
  </script>
110
221
  `,
111
222
  },
@@ -121,13 +232,13 @@ export const SlotPrepend: Story = {
121
232
  },
122
233
  render: (args) => {
123
234
  return {
124
- components: { CustomTextField, VIcon },
235
+ components: { SyTextField, VIcon },
125
236
  setup() {
126
237
  return { args }
127
238
  },
128
239
  template: `
129
240
  <div class="d-flex flex-wrap align-center pa-4">
130
- <CustomTextField
241
+ <SyTextField
131
242
  v-bind="args"
132
243
  :label="args.label"
133
244
  :prepend-icon="args.prependIcon"
@@ -145,7 +256,7 @@ export const SlotAppend: Story = {
145
256
  name: 'Template',
146
257
  code: `
147
258
  <template>
148
- <CustomTextField
259
+ <SyTextField
149
260
  v-model="value"
150
261
  append-icon="success"
151
262
  />
@@ -156,7 +267,7 @@ export const SlotAppend: Story = {
156
267
  name: 'Script',
157
268
  code: `
158
269
  <script setup lang="ts">
159
- import CustomTextField from '@cnamts/synapse'
270
+ import { SyTextField } from '@cnamts/synapse'
160
271
  </script>
161
272
  `,
162
273
  },
@@ -172,13 +283,13 @@ export const SlotAppend: Story = {
172
283
  },
173
284
  render: (args) => {
174
285
  return {
175
- components: { CustomTextField, VIcon },
286
+ components: { SyTextField, VIcon },
176
287
  setup() {
177
288
  return { args }
178
289
  },
179
290
  template: `
180
291
  <div class="d-flex flex-wrap align-center pa-4">
181
- <CustomTextField
292
+ <SyTextField
182
293
  v-bind="args"
183
294
  :append-icon="args.appendIcon"
184
295
  />
@@ -195,7 +306,7 @@ export const SlotPrependInner: Story = {
195
306
  name: 'Template',
196
307
  code: `
197
308
  <template>
198
- <CustomTextField
309
+ <SyTextField
199
310
  v-model="value"
200
311
  prepend-inner-icon="info"
201
312
  />
@@ -206,7 +317,7 @@ export const SlotPrependInner: Story = {
206
317
  name: 'Script',
207
318
  code: `
208
319
  <script setup lang="ts">
209
- import CustomTextField from '@cnamts/synapse'
320
+ import { SyTextField } from '@cnamts/synapse'
210
321
  </script>
211
322
  `,
212
323
  },
@@ -222,13 +333,13 @@ export const SlotPrependInner: Story = {
222
333
  },
223
334
  render: (args) => {
224
335
  return {
225
- components: { CustomTextField, VIcon },
336
+ components: { SyTextField, VIcon },
226
337
  setup() {
227
338
  return { args }
228
339
  },
229
340
  template: `
230
341
  <div class="d-flex flex-wrap align-center pa-4">
231
- <CustomTextField
342
+ <SyTextField
232
343
  v-bind="args"
233
344
  :prepend-inner-icon="args.prependInnerIcon"
234
345
  />
@@ -245,7 +356,7 @@ export const SlotPrependInnerDivider: Story = {
245
356
  name: 'Template',
246
357
  code: `
247
358
  <template>
248
- <CustomTextField
359
+ <SyTextField
249
360
  v-model="value"
250
361
  prepend-inner-icon="info"
251
362
  show-divider
@@ -257,7 +368,7 @@ export const SlotPrependInnerDivider: Story = {
257
368
  name: 'Script',
258
369
  code: `
259
370
  <script setup lang="ts">
260
- import CustomTextField from '@cnamts/synapse'
371
+ import { SyTextField } from '@cnamts/synapse'
261
372
  </script>
262
373
  `,
263
374
  },
@@ -273,13 +384,13 @@ export const SlotPrependInnerDivider: Story = {
273
384
  },
274
385
  render: (args) => {
275
386
  return {
276
- components: { CustomTextField, VIcon },
387
+ components: { SyTextField, VIcon },
277
388
  setup() {
278
389
  return { args }
279
390
  },
280
391
  template: `
281
392
  <div class="d-flex flex-wrap align-center pa-4">
282
- <CustomTextField
393
+ <SyTextField
283
394
  v-bind="args"
284
395
  :prepend-inner-icon="args.prependInnerIcon"
285
396
  :show-divider="args.showDivider"
@@ -297,7 +408,7 @@ export const SlotAppendInner: Story = {
297
408
  name: 'Template',
298
409
  code: `
299
410
  <template>
300
- <CustomTextField
411
+ <SyTextField
301
412
  v-model="value"
302
413
  append-inner-icon="success"
303
414
  />
@@ -308,7 +419,7 @@ export const SlotAppendInner: Story = {
308
419
  name: 'Script',
309
420
  code: `
310
421
  <script setup lang="ts">
311
- import CustomTextField from '@cnamts/synapse'
422
+ import { SyTextField } from '@cnamts/synapse'
312
423
  </script>
313
424
  `,
314
425
  },
@@ -324,13 +435,13 @@ export const SlotAppendInner: Story = {
324
435
  },
325
436
  render: (args) => {
326
437
  return {
327
- components: { CustomTextField, VIcon },
438
+ components: { SyTextField, VIcon },
328
439
  setup() {
329
440
  return { args }
330
441
  },
331
442
  template: `
332
443
  <div class="d-flex flex-wrap align-center pa-4">
333
- <CustomTextField
444
+ <SyTextField
334
445
  v-bind="args"
335
446
  :append-inner-icon="args.appendInnerIcon"
336
447
  />
@@ -347,13 +458,13 @@ export const SlotCustomIcon: Story = {
347
458
  name: 'Template',
348
459
  code: `
349
460
  <template>
350
- <CustomTextField v-model="value">
461
+ <SyTextField v-model="value">
351
462
  <template #append-inner>
352
463
  <VIcon>
353
464
  {{ iconName }}
354
465
  </VIcon>
355
466
  </template>
356
- </CustomTextField>
467
+ </SyTextField>
357
468
  </template>
358
469
  `,
359
470
  },
@@ -361,7 +472,7 @@ export const SlotCustomIcon: Story = {
361
472
  name: 'Script',
362
473
  code: `
363
474
  <script setup lang="ts">
364
- import CustomTextField from '@cnamts/synapse'
475
+ import { SyTextField } from '@cnamts/synapse'
365
476
  import { mdiAccountBox } from '@mdi/js'
366
477
 
367
478
  const iconName = mdiAccountBox
@@ -379,7 +490,7 @@ export const SlotCustomIcon: Story = {
379
490
  },
380
491
  render: (args) => {
381
492
  return {
382
- components: { CustomTextField, VIcon },
493
+ components: { SyTextField, VIcon },
383
494
  setup() {
384
495
  const iconName = ref(mdiAccountBox)
385
496
 
@@ -387,7 +498,7 @@ export const SlotCustomIcon: Story = {
387
498
  },
388
499
  template: `
389
500
  <div class="d-flex flex-wrap align-center pa-4">
390
- <CustomTextField
501
+ <SyTextField
391
502
  v-bind="args"
392
503
  >
393
504
  <template #append-inner>
@@ -395,7 +506,7 @@ export const SlotCustomIcon: Story = {
395
506
  {{ iconName }}
396
507
  </VIcon>
397
508
  </template>
398
- </CustomTextField>
509
+ </SyTextField>
399
510
  </div>
400
511
  `,
401
512
  }
@@ -1,4 +1,4 @@
1
- <script setup lang="ts">
1
+ <script lang="ts" setup>
2
2
  import { computed, ref } from 'vue'
3
3
  import type { IconType, VariantStyle, ColorType } from './types'
4
4
  import {
@@ -22,6 +22,8 @@
22
22
  isClearable?: boolean
23
23
  showDivider?: boolean
24
24
  label?: string
25
+ required?: boolean
26
+ errorMessages?: string[]
25
27
  }>(),
26
28
  {
27
29
  variantStyle: 'outlined', // Remplacez par la valeur par défaut souhaitée
@@ -37,6 +39,15 @@
37
39
  }
38
40
 
39
41
  const model = ref('')
42
+ const isBlurred = ref(false)
43
+
44
+ const hasError = computed(() => {
45
+ return (props.required && isBlurred.value && !model.value) || (props.errorMessages && props.errorMessages.length > 0)
46
+ })
47
+
48
+ const checkErrorOnBlur = () => {
49
+ isBlurred.value = true
50
+ }
40
51
 
41
52
  const appendInnerIconColor = computed(() => {
42
53
  return props.appendInnerIcon === 'error' || props.appendInnerIcon === 'success'
@@ -59,12 +70,15 @@
59
70
  <template>
60
71
  <VTextField
61
72
  v-model="model"
62
- :variant="props.variantStyle"
63
- :color="props.color"
64
- :clearable="props.isClearable"
65
- :clear-icon="ICONS.close"
66
73
  :aria-label="props.label"
74
+ :clear-icon="ICONS.close"
75
+ :clearable="props.isClearable"
76
+ :color="props.color"
77
+ :error-messages="props.errorMessages"
67
78
  :label="props.label"
79
+ :rules="props.required ? ['Le champ est requis.'] : []"
80
+ :variant="props.variantStyle"
81
+ @blur="checkErrorOnBlur"
68
82
  >
69
83
  <template #prepend>
70
84
  <slot name="prepend">
@@ -91,20 +105,26 @@
91
105
  </slot>
92
106
  <VDivider
93
107
  v-if="props.showDivider"
94
- v-bind="dividerProps"
95
108
  class="mt-4 pa-1"
109
+ v-bind="dividerProps"
96
110
  vertical
97
111
  />
98
112
  </template>
99
113
  <template #append-inner>
100
114
  <slot name="append-inner">
115
+ <VIcon v-if="hasError">
116
+ {{ mdiInformation }}
117
+ </VIcon>
101
118
  <VIcon
102
119
  v-if="props.appendInnerIcon"
103
- :icon="ICONS[props.appendInnerIcon]"
104
120
  :class="{ 'error-icon': props.appendInnerIcon === 'error' }"
105
121
  :color="appendInnerIconColor"
122
+ :icon="ICONS[props.appendInnerIcon]"
106
123
  />
107
124
  </slot>
108
125
  </template>
126
+ <template #details>
127
+ <slot name="details" />
128
+ </template>
109
129
  </VTextField>
110
130
  </template>
@@ -0,0 +1,4 @@
1
+ export enum ExpertiseLevelEnum {
2
+ DEV = 'dev',
3
+ DESIGN = 'design',
4
+ }
@@ -1,12 +1,12 @@
1
1
  import { mount } from '@vue/test-utils'
2
- import CustomTextField from '../CustomTextField.vue'
2
+ import SyTextField from '../SyTextField.vue'
3
3
  import { expect, describe, it } from 'vitest'
4
4
  import { VIcon } from 'vuetify/components'
5
5
  import { vuetify } from '@tests/unit/setup'
6
6
 
7
- describe('CustomTextField', () => {
7
+ describe('SyTextField', () => {
8
8
  const factory = (props = {}, slots = {}) => {
9
- return mount(CustomTextField, {
9
+ return mount(SyTextField, {
10
10
  props,
11
11
  slots,
12
12
  global: {
@@ -1,6 +1,6 @@
1
1
  // Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
2
2
 
3
- exports[`CustomTextField > matches snapshot 1`] = `
3
+ exports[`SyTextField > matches snapshot 1`] = `
4
4
  "<div class="v-input v-input--horizontal v-input--center-affix v-input--density-default v-theme--light v-locale--is-ltr v-text-field">
5
5
  <div class="v-input__prepend"><i class="M11,9H13V7H11M12,20C7.59,20 4,16.41 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20,12C20,16.41 16.41,20 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M11,17H13V11H11V17Z mdi v-icon notranslate v-theme--light v-icon--size-default" aria-hidden="true"></i>
6
6
  <!---->
@@ -27,17 +27,16 @@ exports[`CustomTextField > matches snapshot 1`] = `
27
27
  <hr class="v-divider v-divider--vertical v-theme--light text-primary mt-4 pa-1" style="height: 25px; border-right-width: 2px; --v-border-opacity: 1;" aria-orientation="vertical" role="separator">
28
28
  </div>
29
29
  <div class="v-field__field" data-no-activator="">
30
- <!----><label class="v-label v-field-label" for="input-0">
31
- <!---->
32
- <!---->
33
- </label>
30
+ <!---->
31
+ <!---->
34
32
  <!----><input size="1" type="text" id="input-0" aria-describedby="input-0-messages" class="v-field__input" value="">
35
33
  <!---->
36
34
  </div>
37
35
  <transition-stub name="expand-x-transition" appear="false" persisted="false" css="true">
38
36
  <div class="v-field__clearable" style="display: none;"><i class="M19,6.41L17.59,5L12,10.59L6.41,5L5,6.41L10.59,12L5,17.59L6.41,19L12,13.41L17.59,19L19,17.59L13.41,12L19,6.41Z mdi v-icon notranslate v-theme--light v-icon--size-default v-icon--clickable" role="button" aria-hidden="false" tabindex="0" aria-label="Clear "></i></div>
39
37
  </transition-stub>
40
- <div class="v-field__append-inner"><i class="M13,9H11V7H13M13,17H11V11H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z mdi v-icon notranslate v-theme--light v-icon--size-default text-error error-icon" aria-hidden="true"></i>
38
+ <div class="v-field__append-inner">
39
+ <!--v-if--><i class="M13,9H11V7H13M13,17H11V11H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z mdi v-icon notranslate v-theme--light v-icon--size-default text-error error-icon" aria-hidden="true"></i>
41
40
  <!---->
42
41
  </div>
43
42
  <div class="v-field__outline">
@@ -0,0 +1,14 @@
1
+ import { Meta, Story } from '@storybook/addon-docs';
2
+ import * as AccessStories from './Accessibilite.stories.ts';
3
+
4
+ <Meta of={AccessStories} />
5
+
6
+ Accessibilité
7
+ =============
8
+ <Story of={AccessStories.Legende} />
9
+ <br />
10
+
11
+ --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
12
+
13
+ <Story of={AccessStories.AccessibilitePanel} />
14
+ <br />