@cnamts/synapse 0.0.5-alpha → 0.0.7-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 (229) hide show
  1. package/dist/design-system-v3.d.ts +487 -415
  2. package/dist/design-system-v3.js +2954 -2203
  3. package/dist/design-system-v3.umd.cjs +6 -6
  4. package/dist/style.css +1 -1
  5. package/package.json +17 -17
  6. package/src/assets/settings.scss +3 -0
  7. package/src/assets/tokens.scss +16 -16
  8. package/src/components/BackBtn/AccessibiliteItems.ts +0 -30
  9. package/src/components/BackBtn/BackBtn.mdx +1 -1
  10. package/src/components/BackBtn/BackBtn.stories.ts +12 -9
  11. package/src/components/BackBtn/BackBtn.vue +0 -1
  12. package/src/components/BackToTopBtn/AccessibiliteItems.ts +0 -30
  13. package/src/components/BackToTopBtn/BackToTopBtn.mdx +1 -1
  14. package/src/components/BackToTopBtn/BackToTopBtn.stories.ts +3 -3
  15. package/src/components/CollapsibleList/Accessibilite.stories.ts +4 -0
  16. package/src/components/CollapsibleList/AccessibiliteItems.ts +55 -62
  17. package/src/components/CollapsibleList/CollapsibleList.stories.ts +1 -1
  18. package/src/components/CookieBanner/Accessibilite.stories.ts +219 -0
  19. package/src/components/CookieBanner/AccessibiliteItems.ts +356 -0
  20. package/src/components/CookieBanner/CookieBanner.mdx +219 -0
  21. package/src/components/CookieBanner/CookieBanner.stories.ts +680 -0
  22. package/src/components/CookieBanner/CookieBanner.vue +225 -0
  23. package/src/components/CookieBanner/config.ts +38 -0
  24. package/src/components/CookieBanner/locales.ts +12 -0
  25. package/src/components/CookieBanner/tests/CookieBanner.spec.ts +129 -0
  26. package/src/components/CookieBanner/tests/__snapshots__/CookieBanner.spec.ts.snap +197 -0
  27. package/src/components/CookiesSelection/CookiesInformation/CookiesInformation.vue +123 -0
  28. package/src/components/CookiesSelection/CookiesInformation/locales.ts +21 -0
  29. package/src/components/CookiesSelection/CookiesInformation/tests/CookiesInformation.spec.ts +121 -0
  30. package/src/components/CookiesSelection/CookiesSelection.vue +127 -0
  31. package/src/components/CookiesSelection/CookiesTable/CookiesTable.vue +47 -0
  32. package/src/components/CookiesSelection/CookiesTable/headers.ts +14 -0
  33. package/src/components/CookiesSelection/CookiesTable/tests/CookiesTable.spec.ts +30 -0
  34. package/src/components/CookiesSelection/CookiesTable/tests/__snapshots__/CookiesTable.spec.ts.snap +3 -0
  35. package/src/components/CookiesSelection/locales.ts +10 -0
  36. package/src/components/CookiesSelection/tests/CookiesSelection.spec.ts +184 -0
  37. package/src/components/CookiesSelection/tests/__snapshots__/CookiesSelection.spec.ts.snap +192 -0
  38. package/src/components/CookiesSelection/types.ts +15 -0
  39. package/src/components/CopyBtn/AccessibiliteItems.ts +0 -30
  40. package/src/components/CopyBtn/CopyBtn.mdx +1 -1
  41. package/src/components/CopyBtn/CopyBtn.stories.ts +9 -6
  42. package/src/components/CopyBtn/CopyBtn.vue +0 -1
  43. package/src/components/Customs/SyBtnSelect/Accessibilite.mdx +14 -0
  44. package/src/components/Customs/SyBtnSelect/Accessibilite.stories.ts +193 -0
  45. package/src/components/Customs/SyBtnSelect/AccessibiliteItems.ts +139 -0
  46. package/src/components/Customs/SyBtnSelect/SyBtnSelect.mdx +3 -2
  47. package/src/components/Customs/SyBtnSelect/SyBtnSelect.stories.ts +30 -14
  48. package/src/components/Customs/SyBtnSelect/SyBtnSelect.vue +21 -13
  49. package/src/components/Customs/SyBtnSelect/constants/ExpertiseLevelEnum.ts +4 -0
  50. package/src/components/Customs/SyInputSelect/Accessibilite.mdx +14 -0
  51. package/src/components/Customs/SyInputSelect/Accessibilite.stories.ts +166 -0
  52. package/src/components/Customs/SyInputSelect/AccessibiliteItems.ts +96 -0
  53. package/src/components/Customs/SyInputSelect/SyInputSelect.mdx +7 -3
  54. package/src/components/Customs/SyInputSelect/SyInputSelect.stories.ts +24 -65
  55. package/src/components/Customs/SyInputSelect/SyInputSelect.vue +36 -4
  56. package/src/components/Customs/SyInputSelect/constants/ExpertiseLevelEnum.ts +4 -0
  57. package/src/components/Customs/SySelect/Accessibilite.mdx +14 -0
  58. package/src/components/Customs/SySelect/Accessibilite.stories.ts +217 -0
  59. package/src/components/Customs/SySelect/AccessibiliteItems.ts +173 -0
  60. package/src/components/Customs/SySelect/SySelect.mdx +4 -4
  61. package/src/components/Customs/SySelect/SySelect.stories.ts +4 -60
  62. package/src/components/Customs/SySelect/SySelect.vue +35 -8
  63. package/src/components/Customs/SySelect/constants/ExpertiseLevelEnum.ts +4 -0
  64. package/src/components/Customs/SyTextField/Accessibilite.mdx +14 -0
  65. package/src/components/Customs/SyTextField/Accessibilite.stories.ts +224 -0
  66. package/src/components/Customs/SyTextField/AccessibiliteItems.ts +198 -0
  67. package/src/components/Customs/SyTextField/SyTextField.mdx +1 -1
  68. package/src/components/Customs/SyTextField/SyTextField.stories.ts +118 -7
  69. package/src/components/Customs/SyTextField/SyTextField.vue +27 -7
  70. package/src/components/Customs/SyTextField/constants/ExpertiseLevelEnum.ts +4 -0
  71. package/src/components/Customs/SyTextField/tests/__snapshots__/SyTextField.spec.ts.snap +2 -1
  72. package/src/components/DataList/Accessibilite.mdx +14 -0
  73. package/src/components/DataList/Accessibilite.stories.ts +166 -0
  74. package/src/components/DataList/AccessibiliteItems.ts +47 -0
  75. package/src/components/DataList/DataList.mdx +1 -1
  76. package/src/components/DataList/DataList.stories.ts +10 -10
  77. package/src/components/DataList/constants/ExpertiseLevelEnum.ts +4 -0
  78. package/src/components/DataListGroup/Accessibilite.mdx +14 -0
  79. package/src/components/DataListGroup/Accessibilite.stories.ts +225 -0
  80. package/src/components/DataListGroup/AccessibiliteItems.ts +79 -0
  81. package/src/components/DataListGroup/DataListGroup.mdx +1 -1
  82. package/src/components/DataListGroup/DataListGroup.stories.ts +7 -7
  83. package/src/components/DataListGroup/constants/ExpertiseLevelEnum.ts +4 -0
  84. package/src/components/DialogBox/Accessibilite.mdx +14 -0
  85. package/src/components/DialogBox/Accessibilite.stories.ts +189 -0
  86. package/src/components/DialogBox/AccessibiliteItems.ts +167 -0
  87. package/src/components/DialogBox/constants/ExpertiseLevelEnum.ts +4 -0
  88. package/src/components/DownloadBtn/AccessibiliteItems.ts +1 -31
  89. package/src/components/DownloadBtn/DownloadBtn.mdx +5 -6
  90. package/src/components/DownloadBtn/DownloadBtn.stories.ts +25 -26
  91. package/src/components/ErrorPage/Accessibilite.mdx +14 -0
  92. package/src/components/ErrorPage/Accessibilite.stories.ts +189 -0
  93. package/src/components/ErrorPage/AccessibiliteItems.ts +205 -0
  94. package/src/components/ErrorPage/ErrorPage.vue +1 -1
  95. package/src/components/ErrorPage/constants/ExpertiseLevelEnum.ts +4 -0
  96. package/src/components/ErrorPage/tests/__snapshots__/ErrorPage.spec.ts.snap +4 -4
  97. package/src/components/FooterBar/Accessibilite.mdx +14 -0
  98. package/src/components/FooterBar/Accessibilite.stories.ts +223 -0
  99. package/src/components/FooterBar/AccessibiliteItems.ts +257 -0
  100. package/src/components/FooterBar/FooterBar.mdx +2 -2
  101. package/src/components/FooterBar/FooterBar.stories.ts +14 -14
  102. package/src/components/FooterBar/FooterBar.vue +86 -75
  103. package/src/components/FooterBar/constants/ExpertiseLevelEnum.ts +4 -0
  104. package/src/components/FooterBar/tests/__snapshots__/FooterBar.spec.ts.snap +22 -20
  105. package/src/components/FranceConnectBtn/AccessibiliteItems.ts +0 -30
  106. package/src/components/FranceConnectBtn/FranceConnectBtn.mdx +1 -1
  107. package/src/components/FranceConnectBtn/FranceConnectBtn.stories.ts +5 -4
  108. package/src/components/HeaderBar/Accessibilite.mdx +14 -0
  109. package/src/components/HeaderBar/Accessibilite.stories.ts +223 -0
  110. package/src/components/HeaderBar/AccessibiliteItems.ts +194 -0
  111. package/src/components/HeaderBar/HeaderBar.stories.ts +19 -12
  112. package/src/components/HeaderBar/HeaderBar.vue +9 -12
  113. package/src/components/HeaderBar/HeaderBurgerMenu/Accessibilite.mdx +14 -0
  114. package/src/components/HeaderBar/HeaderBurgerMenu/Accessibilite.stories.ts +223 -0
  115. package/src/components/HeaderBar/HeaderBurgerMenu/AccessibiliteItems.ts +174 -0
  116. package/src/components/HeaderBar/HeaderBurgerMenu/HeaderBurgerMenu.vue +1 -0
  117. package/src/components/HeaderBar/HeaderBurgerMenu/constants/ExpertiseLevelEnum.ts +4 -0
  118. package/src/components/HeaderBar/constants/ExpertiseLevelEnum.ts +4 -0
  119. package/src/components/HeaderBar/tests/__snapshots__/HeaderBar.spec.ts.snap +1 -1
  120. package/src/components/HeaderLoading/Accessibilite.mdx +14 -0
  121. package/src/components/HeaderLoading/Accessibilite.stories.ts +167 -0
  122. package/src/components/HeaderLoading/AccessibiliteItems.ts +29 -0
  123. package/src/components/HeaderLoading/HeaderLoading.mdx +1 -1
  124. package/src/components/HeaderLoading/HeaderLoading.stories.ts +1 -1
  125. package/src/components/HeaderLoading/constants/ExpertiseLevelEnum.ts +4 -0
  126. package/src/components/HeaderNavigationBar/HeaderNavigationBar.stories.ts +104 -32
  127. package/src/components/HeaderNavigationBar/HorizontalNavbar/HorizontalNavbar.vue +35 -33
  128. package/src/components/HeaderToolbar/Accessibilite.mdx +14 -0
  129. package/src/components/HeaderToolbar/Accessibilite.stories.ts +203 -0
  130. package/src/components/HeaderToolbar/AccessibiliteItems.ts +200 -0
  131. package/src/components/HeaderToolbar/HeaderToolbar.mdx +1 -1
  132. package/src/components/HeaderToolbar/HeaderToolbar.stories.ts +2 -2
  133. package/src/components/HeaderToolbar/HeaderToolbar.vue +24 -1
  134. package/src/components/HeaderToolbar/constants/ExpertiseLevelEnum.ts +4 -0
  135. package/src/components/LangBtn/Accessibilite.stories.ts +3 -1
  136. package/src/components/LangBtn/AccessibiliteItems.ts +0 -31
  137. package/src/components/LangBtn/LangBtn.mdx +1 -1
  138. package/src/components/LangBtn/LangBtn.stories.ts +4 -4
  139. package/src/components/LangBtn/LangBtn.vue +3 -2
  140. package/src/components/Logo/Accessibilite.mdx +14 -0
  141. package/src/components/Logo/Accessibilite.stories.ts +223 -0
  142. package/src/components/Logo/AccessibiliteItems.ts +155 -0
  143. package/src/components/Logo/Logo.mdx +1 -1
  144. package/src/components/Logo/Logo.stories.ts +8 -8
  145. package/src/components/Logo/constants/ExpertiseLevelEnum.ts +4 -0
  146. package/src/components/LogoBrandSection/Accessibilite.mdx +14 -0
  147. package/src/components/LogoBrandSection/Accessibilite.stories.ts +223 -0
  148. package/src/components/LogoBrandSection/AccessibiliteItems.ts +194 -0
  149. package/src/components/LogoBrandSection/constants/ExpertiseLevelEnum.ts +4 -0
  150. package/src/components/MaintenancePage/Accessibilite.mdx +14 -0
  151. package/src/components/MaintenancePage/Accessibilite.stories.ts +189 -0
  152. package/src/components/MaintenancePage/AccessibiliteItems.ts +173 -0
  153. package/src/components/MaintenancePage/constants/ExpertiseLevelEnum.ts +4 -0
  154. package/src/components/NirField/Accessibilite.mdx +14 -0
  155. package/src/components/NirField/Accessibilite.stories.ts +214 -0
  156. package/src/components/NirField/AccessibiliteItems.ts +243 -0
  157. package/src/components/NirField/NirField.mdx +213 -0
  158. package/src/components/NirField/NirField.stories.ts +412 -0
  159. package/src/components/NirField/NirField.vue +453 -0
  160. package/src/components/NirField/config.ts +16 -0
  161. package/src/components/NirField/constants/ExpertiseLevelEnum.ts +4 -0
  162. package/src/components/NirField/locales.ts +12 -0
  163. package/src/components/NirField/nirValidation.ts +42 -0
  164. package/src/components/NirField/tests/NirField.spec.ts +120 -0
  165. package/src/components/NotFoundPage/Accessibilite.mdx +14 -0
  166. package/src/components/NotFoundPage/Accessibilite.stories.ts +190 -0
  167. package/src/components/NotFoundPage/AccessibiliteItems.ts +205 -0
  168. package/src/components/NotFoundPage/constants/ExpertiseLevelEnum.ts +4 -0
  169. package/src/components/NotFoundPage/tests/__snapshots__/NotFoundPage.spec.ts.snap +4 -4
  170. package/src/components/NotificationBar/AccessibiliteItems.ts +0 -30
  171. package/src/components/NotificationBar/NotificationBar.mdx +1 -1
  172. package/src/components/PageContainer/PageContainer.mdx +1 -1
  173. package/src/components/PageContainer/PageContainer.stories.ts +9 -9
  174. package/src/components/PageContainer/PageContainer.vue +24 -18
  175. package/src/components/PageContainer/tests/PageContainer.spec.ts +2 -2
  176. package/src/components/PageContainer/tests/__snapshots__/PageContainer.spec.ts.snap +2 -2
  177. package/src/components/PhoneField/Accessibilite.mdx +14 -0
  178. package/src/components/PhoneField/Accessibilite.stories.ts +216 -0
  179. package/src/components/PhoneField/AccessibiliteItems.ts +238 -0
  180. package/src/components/PhoneField/PhoneField.mdx +1 -1
  181. package/src/components/PhoneField/PhoneField.stories.ts +2 -2
  182. package/src/components/PhoneField/PhoneField.vue +0 -1
  183. package/src/components/PhoneField/constants/ExpertiseLevelEnum.ts +4 -0
  184. package/src/components/SkipLink/Accessibilite.stories.ts +1 -1
  185. package/src/components/SkipLink/SkipLink.stories.ts +2 -2
  186. package/src/components/SocialMediaLinks/Accessibilite.mdx +14 -0
  187. package/src/components/SocialMediaLinks/Accessibilite.stories.ts +170 -0
  188. package/src/components/SocialMediaLinks/AccessibiliteItems.ts +160 -0
  189. package/src/components/SocialMediaLinks/SocialMediaLinks.mdx +1 -1
  190. package/src/components/SocialMediaLinks/SocialMediaLinks.stories.ts +1 -1
  191. package/src/components/SocialMediaLinks/SocialMediaLinks.vue +7 -1
  192. package/src/components/SocialMediaLinks/constants/ExpertiseLevelEnum.ts +4 -0
  193. package/src/components/SocialMediaLinks/tests/__snapshots__/SocialMediaLinks.spec.ts.snap +2 -2
  194. package/src/components/SubHeader/Accessibilite.mdx +14 -0
  195. package/src/components/SubHeader/Accessibilite.stories.ts +166 -0
  196. package/src/components/SubHeader/AccessibiliteItems.ts +146 -0
  197. package/src/components/SubHeader/SubHeader.mdx +1 -1
  198. package/src/components/SubHeader/SubHeader.stories.ts +17 -14
  199. package/src/components/SubHeader/constants/ExpertiseLevelEnum.ts +4 -0
  200. package/src/components/SyAlert/Accessibilite.mdx +14 -0
  201. package/src/components/{Alert → SyAlert}/Accessibilite.stories.ts +1 -1
  202. package/src/components/{Alert → SyAlert}/AccessibiliteItems.ts +2 -32
  203. package/src/components/{Alert/Alert.mdx → SyAlert/SyAlert.mdx} +9 -9
  204. package/src/components/{Alert/Alert.stories.ts → SyAlert/SyAlert.stories.ts} +22 -22
  205. package/src/components/{Alert/Alert.vue → SyAlert/SyAlert.vue} +7 -0
  206. package/src/components/SyAlert/constants/ExpertiseLevelEnum.ts +4 -0
  207. package/src/components/{Alert/tests/Alert.spec.ts → SyAlert/tests/SyAlert.spec.ts} +5 -5
  208. package/src/components/{Alert/tests/__snapshots__/Alert.spec.ts.snap → SyAlert/tests/__snapshots__/SyAlert.spec.ts.snap} +2 -2
  209. package/src/components/UserMenuBtn/Accessibilite.mdx +14 -0
  210. package/src/components/UserMenuBtn/Accessibilite.stories.ts +189 -0
  211. package/src/components/UserMenuBtn/AccessibiliteItems.ts +155 -0
  212. package/src/components/UserMenuBtn/UserMenuBtn.mdx +17 -17
  213. package/src/components/UserMenuBtn/UserMenuBtn.stories.ts +121 -19
  214. package/src/components/UserMenuBtn/UserMenuBtn.vue +25 -29
  215. package/src/components/UserMenuBtn/config.ts +1 -1
  216. package/src/components/UserMenuBtn/constants/ExpertiseLevelEnum.ts +4 -0
  217. package/src/components/index.ts +11 -4
  218. package/src/composables/rules/tests/useFieldValidation.spec.ts +60 -58
  219. package/src/composables/rules/useFieldValidation.ts +65 -28
  220. package/src/main.ts +1 -0
  221. package/src/stories/GuideDuDev/CommentUtiliserLesRules.mdx +67 -79
  222. package/src/stories/GuideDuDev/components.stories.ts +5 -5
  223. package/src/stories/GuideDuDev/moduleDeNotification.mdx +1 -1
  224. package/src/stories/Guidelines/Vuetify/Vuetify.mdx +11 -0
  225. package/src/stories/Guidelines/Vuetify/Vuetify.stories.ts +138 -0
  226. package/src/stories/Guidelines/Vuetify/VuetifyItems.ts +350 -0
  227. /package/src/components/{Alert → CookieBanner}/Accessibilite.mdx +0 -0
  228. /package/src/components/{Alert → CookieBanner}/constants/ExpertiseLevelEnum.ts +0 -0
  229. /package/src/components/{Alert → SyAlert}/locales.ts +0 -0
@@ -0,0 +1,192 @@
1
+ // Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
2
+
3
+ exports[`CookiesSelection > renders correctly 1`] = `
4
+ "<div class="v-card v-theme--light bg-transparent v-card--density-default elevation-0 v-card--variant-elevated vd-cookies-card">
5
+ <!---->
6
+ <div class="v-card__loader">
7
+ <div class="v-progress-linear v-theme--light v-locale--is-ltr" style="top: 0px; height: 0px; --v-progress-linear-height: 2px;" role="progressbar" aria-hidden="true" aria-valuemin="0" aria-valuemax="100">
8
+ <!---->
9
+ <div class="v-progress-linear__background" style="opacity: NaN;"></div>
10
+ <div class="v-progress-linear__buffer" style="opacity: NaN; width: 0%;"></div>
11
+ <transition-stub name="fade-transition" appear="false" persisted="false" css="true">
12
+ <div class="v-progress-linear__indeterminate">
13
+ <div class="v-progress-linear__indeterminate long"></div>
14
+ <div class="v-progress-linear__indeterminate short"></div>
15
+ </div>
16
+ </transition-stub>
17
+ <!---->
18
+ </div>
19
+ </div>
20
+ <!---->
21
+ <!---->
22
+ <form class="v-form" novalidate="">
23
+ <p class="mb-4">Définissez vos préférences de collecte et de traitement de vos données sur ce site.</p>
24
+ <p class="mb-4">Un cookie est un petit fichier texte déposé sur votre terminal (ordinateur, tablette ou mobile) lors de la visite d’un site ou lors de la consultation d’une publicité. Il contient plusieurs données&nbsp;: le nom du service qui l’a déposé, un identifiant sous forme de numéro unique, une valeur et éventuellement une date d’expiration.</p>
25
+ <div class="d-flex flex-wrap justify-end mx-n2 mt-n2 mb-6"><button type="button" class="v-btn v-theme--light text-primary v-btn--density-default v-btn--size-default v-btn--variant-outlined ma-2" data-test-id="reject-all"><span class="v-btn__overlay"></span><span class="v-btn__underlay"></span>
26
+ <!----><span class="v-btn__content" data-no-activator="">Tout refuser</span>
27
+ <!---->
28
+ <!---->
29
+ </button><button type="button" class="v-btn v-theme--light text-primary v-btn--density-default v-btn--size-default v-btn--variant-outlined ma-2" data-test-id="accept-all"><span class="v-btn__overlay"></span><span class="v-btn__underlay"></span>
30
+ <!----><span class="v-btn__content" data-no-activator="">Tout accepter</span>
31
+ <!---->
32
+ <!---->
33
+ </button></div>
34
+ <div data-v-2ca04413="" class="vd-cookies-information mb-6">
35
+ <h2 data-v-2ca04413="" class="text-subtitle-1 font-weight-bold mb-2">Cookies requis</h2>
36
+ <p data-v-2ca04413="" class="mb-4">Ces cookies sont indispensables au fonctionnement du site et ne peuvent être désactivés.</p>
37
+ <details data-v-2ca04413="">
38
+ <summary data-v-2ca04413="" class="mb-1">Afficher les cookies <i data-v-2ca04413="" class="M7.41,8.58L12,13.17L16.59,8.58L18,10L12,16L6,10L7.41,8.58Z mdi v-icon notranslate v-theme--light v-icon--size-default mr-2" aria-hidden="true" data-test="chevron"></i></summary>
39
+ <div data-v-d0e8c396="" data-v-2ca04413="" class="v-table v-theme--light v-table--density-default vd-cookie-table bg-transparent mb-2">
40
+ <!---->
41
+ <div class="v-table__wrapper">
42
+ <table>
43
+ <thead data-v-d0e8c396="">
44
+ <tr data-v-d0e8c396="">
45
+ <th data-v-d0e8c396="" style="width: 180px;" class="text-left">Dénomination du cookie</th>
46
+ <th data-v-d0e8c396="" style="width: 328px;" class="text-left">Finalité</th>
47
+ <th data-v-d0e8c396="" style="width: 180px;" class="text-left">Durée de conservation</th>
48
+ </tr>
49
+ </thead>
50
+ <tbody data-v-d0e8c396="">
51
+ <tr data-v-d0e8c396="">
52
+ <td data-v-d0e8c396="">session</td>
53
+ <td data-v-d0e8c396="">Sauvegarde la session pour rester connecté.</td>
54
+ <td data-v-d0e8c396="">20 heures</td>
55
+ </tr>
56
+ <tr data-v-d0e8c396="">
57
+ <td data-v-d0e8c396="">cookie_policy</td>
58
+ <td data-v-d0e8c396="">Sauvegarde les préférences de cookies.</td>
59
+ <td data-v-d0e8c396="">1 an</td>
60
+ </tr>
61
+ </tbody>
62
+ </table>
63
+ </div>
64
+ <!---->
65
+ </div>
66
+ </details>
67
+ <!--v-if-->
68
+ </div>
69
+ <div data-v-2ca04413="" class="vd-cookies-information mb-6">
70
+ <h2 data-v-2ca04413="" class="text-subtitle-1 font-weight-bold mb-2">Cookies fonctionnels</h2>
71
+ <p data-v-2ca04413="" class="mb-4">Ces cookies sont utilisés pour capturer vos préférences sur notre site. Ils permettent de vous assurer un confort dans votre navigation.</p>
72
+ <details data-v-2ca04413="">
73
+ <summary data-v-2ca04413="" class="mb-1">Afficher les cookies <i data-v-2ca04413="" class="M7.41,8.58L12,13.17L16.59,8.58L18,10L12,16L6,10L7.41,8.58Z mdi v-icon notranslate v-theme--light v-icon--size-default mr-2" aria-hidden="true" data-test="chevron"></i></summary>
74
+ <div data-v-d0e8c396="" data-v-2ca04413="" class="v-table v-theme--light v-table--density-default vd-cookie-table bg-transparent mb-2">
75
+ <!---->
76
+ <div class="v-table__wrapper">
77
+ <table>
78
+ <thead data-v-d0e8c396="">
79
+ <tr data-v-d0e8c396="">
80
+ <th data-v-d0e8c396="" style="width: 180px;" class="text-left">Dénomination du cookie</th>
81
+ <th data-v-d0e8c396="" style="width: 328px;" class="text-left">Finalité</th>
82
+ <th data-v-d0e8c396="" style="width: 180px;" class="text-left">Durée de conservation</th>
83
+ </tr>
84
+ </thead>
85
+ <tbody data-v-d0e8c396="">
86
+ <tr data-v-d0e8c396="">
87
+ <td data-v-d0e8c396="">contrast</td>
88
+ <td data-v-d0e8c396="">Sauvegarde la personnalisation de l’affichage.</td>
89
+ <td data-v-d0e8c396="">1 an</td>
90
+ </tr>
91
+ </tbody>
92
+ </table>
93
+ </div>
94
+ <!---->
95
+ </div>
96
+ </details>
97
+ <div data-v-2ca04413="" class="v-input v-input--horizontal v-input--center-affix v-input--density-default v-theme--light v-locale--is-ltr v-radio-group vd-cookies-information__radio-group" data-test-id="radio-group">
98
+ <!---->
99
+ <div class="v-input__control">
100
+ <!---->
101
+ <div class="v-selection-control-group v-selection-control-group--inline" role="radiogroup" aria-describedby="radio-group-2-messages">
102
+ <div data-v-2ca04413="" class="v-spacer"></div>
103
+ <div data-v-2ca04413="" class="v-selection-control v-selection-control--inline v-selection-control--density-default v-radio">
104
+ <div class="v-selection-control__wrapper">
105
+ <!---->
106
+ <div class="v-selection-control__input"><i class="mdi-radiobox-blank mdi v-icon notranslate v-theme--light v-icon--size-default" aria-hidden="true"></i><input id="input-5" aria-disabled="false" aria-label="Refuser" type="radio" name="radio-group-2" value="reject"></div>
107
+ </div><label class="v-label v-label--clickable" for="input-5">
108
+ <!---->Refuser
109
+ </label>
110
+ </div>
111
+ <div data-v-2ca04413="" class="v-selection-control v-selection-control--inline v-selection-control--density-default v-radio mr-0">
112
+ <div class="v-selection-control__wrapper">
113
+ <!---->
114
+ <div class="v-selection-control__input"><i class="mdi-radiobox-blank mdi v-icon notranslate v-theme--light v-icon--size-default" aria-hidden="true"></i><input id="input-6" aria-disabled="false" aria-label="Accepter" type="radio" name="radio-group-2" value="accept"></div>
115
+ </div><label class="v-label v-label--clickable" for="input-6">
116
+ <!---->Accepter
117
+ </label>
118
+ </div>
119
+ </div>
120
+ </div>
121
+ <!---->
122
+ <!---->
123
+ </div>
124
+ </div>
125
+ <div data-v-2ca04413="" class="vd-cookies-information mb-6">
126
+ <h2 data-v-2ca04413="" class="text-subtitle-1 font-weight-bold mb-2">Cookies d’analyse</h2>
127
+ <p data-v-2ca04413="" class="mb-4">Ces cookies sont dédiés à l’amélioration de notre site en analysant votre expérience d’utilisation. Ils nous sont très utiles pour vous proposer un site de bonne qualité.</p>
128
+ <details data-v-2ca04413="">
129
+ <summary data-v-2ca04413="" class="mb-1">Afficher les cookies <i data-v-2ca04413="" class="M7.41,8.58L12,13.17L16.59,8.58L18,10L12,16L6,10L7.41,8.58Z mdi v-icon notranslate v-theme--light v-icon--size-default mr-2" aria-hidden="true" data-test="chevron"></i></summary>
130
+ <div data-v-d0e8c396="" data-v-2ca04413="" class="v-table v-theme--light v-table--density-default vd-cookie-table bg-transparent mb-2">
131
+ <!---->
132
+ <div class="v-table__wrapper">
133
+ <table>
134
+ <thead data-v-d0e8c396="">
135
+ <tr data-v-d0e8c396="">
136
+ <th data-v-d0e8c396="" style="width: 180px;" class="text-left">Dénomination du cookie</th>
137
+ <th data-v-d0e8c396="" style="width: 328px;" class="text-left">Finalité</th>
138
+ <th data-v-d0e8c396="" style="width: 180px;" class="text-left">Durée de conservation</th>
139
+ </tr>
140
+ </thead>
141
+ <tbody data-v-d0e8c396="">
142
+ <tr data-v-d0e8c396="">
143
+ <td data-v-d0e8c396="">user_id</td>
144
+ <td data-v-d0e8c396="">Sauvegarde l’identifiant unique de visiteur.</td>
145
+ <td data-v-d0e8c396="">6 mois</td>
146
+ </tr>
147
+ </tbody>
148
+ </table>
149
+ </div>
150
+ <!---->
151
+ </div>
152
+ </details>
153
+ <div data-v-2ca04413="" class="v-input v-input--horizontal v-input--center-affix v-input--density-default v-theme--light v-locale--is-ltr v-radio-group vd-cookies-information__radio-group" data-test-id="radio-group">
154
+ <!---->
155
+ <div class="v-input__control">
156
+ <!---->
157
+ <div class="v-selection-control-group v-selection-control-group--inline" role="radiogroup" aria-describedby="radio-group-7-messages">
158
+ <div data-v-2ca04413="" class="v-spacer"></div>
159
+ <div data-v-2ca04413="" class="v-selection-control v-selection-control--inline v-selection-control--density-default v-radio">
160
+ <div class="v-selection-control__wrapper">
161
+ <!---->
162
+ <div class="v-selection-control__input"><i class="mdi-radiobox-blank mdi v-icon notranslate v-theme--light v-icon--size-default" aria-hidden="true"></i><input id="input-10" aria-disabled="false" aria-label="Refuser" type="radio" name="radio-group-7" value="reject"></div>
163
+ </div><label class="v-label v-label--clickable" for="input-10">
164
+ <!---->Refuser
165
+ </label>
166
+ </div>
167
+ <div data-v-2ca04413="" class="v-selection-control v-selection-control--inline v-selection-control--density-default v-radio mr-0">
168
+ <div class="v-selection-control__wrapper">
169
+ <!---->
170
+ <div class="v-selection-control__input"><i class="mdi-radiobox-blank mdi v-icon notranslate v-theme--light v-icon--size-default" aria-hidden="true"></i><input id="input-11" aria-disabled="false" aria-label="Accepter" type="radio" name="radio-group-7" value="accept"></div>
171
+ </div><label class="v-label v-label--clickable" for="input-11">
172
+ <!---->Accepter
173
+ </label>
174
+ </div>
175
+ </div>
176
+ </div>
177
+ <!---->
178
+ <!---->
179
+ </div>
180
+ </div>
181
+ <div class="d-flex mt-16">
182
+ <div class="v-spacer"></div><button type="button" class="v-btn v-btn--elevated v-theme--light bg-primary v-btn--density-default v-btn--size-default v-btn--variant-elevated" data-test-id="submit"><span class="v-btn__overlay"></span><span class="v-btn__underlay"></span>
183
+ <!----><span class="v-btn__content" data-no-activator="">Enregistrer mes choix</span>
184
+ <!---->
185
+ <!---->
186
+ </button>
187
+ </div>
188
+ </form>
189
+ <!---->
190
+ <!----><span class="v-card__underlay"></span>
191
+ </div>"
192
+ `;
@@ -0,0 +1,15 @@
1
+ export type CookieTypes = 'essentials' | 'functional' | 'analytics'
2
+
3
+ export type CookiesItems = {
4
+ [key in CookieTypes]?: Cookie[]
5
+ }
6
+
7
+ export type Preferences = {
8
+ [key in CookieTypes]: boolean | undefined
9
+ }
10
+
11
+ export interface Cookie {
12
+ name: string
13
+ description?: string
14
+ conservation: string
15
+ }
@@ -1,37 +1,7 @@
1
1
  import { ExpertiseLevelEnum } from './constants/ExpertiseLevelEnum'
2
2
 
3
3
  export const AccessibiliteItemsIndeterminate = [
4
- {
5
- title: 'Catégorie 1 : Images',
6
- subtitle: '1.4 Pour chaque image utilisée comme CAPTCHA ou comme image-test, ayant une alternative textuelle, cette alternative permet-elle d’identifier la nature et la fonction de l’image ?',
7
- items: [
8
- {
9
-
10
- precision: '1.4.1 Pour chaque image (balise <img>) utilisée comme CAPTCHA ou comme image-test, ayant une alternative textuelle, cette alternative est-elle pertinente ?',
11
- link: 'https://accessibilite.numerique.gouv.fr/methode/criteres-et-tests/#1.4.1',
12
- solution: [{
13
- info1: '1. Retrouver dans le document les images structurées au moyen d’un élément <img> pourvues d’une alternative textuelle et utilisées comme CAPTCHA ou comme image-test',
14
- info2: '2. Pour chaque image, vérifier que l’alternative textuelle est pertinente',
15
- info3: '3. Si c’est le cas pour chaque image, le test est validé',
16
- }],
17
- expertise: ExpertiseLevelEnum.DEV,
18
4
 
19
- },
20
- {
21
-
22
- precision: ' 1.4.6 Pour chaque image vectorielle (balise <svg>) utilisée comme CAPTCHA ou comme image-test, ayant une alternative textuelle, cette alternative est-elle pertinente ?',
23
- link: 'https://accessibilite.numerique.gouv.fr/methode/criteres-et-tests/#1.4.6',
24
- solution: [{
25
- info1: '1. Retrouver dans le document les éléments <svg> pourvus d’une alternative textuelle et utilisés comme CAPTCHA ou comme image-test;',
26
- info2: '2. Pour chaque élément <svg>, vérifier que l’alternative textuelle est pertinente',
27
- info3: '3. Si c’est le cas pour chaque image, le test est validé',
28
- }],
29
- expertise: ExpertiseLevelEnum.DEV,
30
-
31
- },
32
-
33
- ],
34
- },
35
5
  {
36
6
  title: 'Catégorie 10 : Présentation de l\'information',
37
7
  subtitle: '10.8 Pour chaque page web, les contenus cachés ont-ils vocation à être ignorés par les technologies d’assistance',
@@ -18,7 +18,7 @@ Le composant `CopyBtn` est utilisé pour afficher un bouton permettant à l’ut
18
18
 
19
19
  <Source dark code={`
20
20
  <script setup lang="ts">
21
- import CopyBtn from '@cnamts/synapse'
21
+ import { CopyBtn } from '@cnamts/synapse'
22
22
  </script>
23
23
 
24
24
  <template>
@@ -81,7 +81,7 @@ export const Default: Story = {
81
81
  {
82
82
  name: 'Script',
83
83
  code: `<script setup lang="ts">
84
- import CopyBtn from '@cnamts/synapse'
84
+ import { CopyBtn } from '@cnamts/synapse'
85
85
  </script>
86
86
  `,
87
87
  },
@@ -157,7 +157,7 @@ export const NoTooltip: Story = {
157
157
  {
158
158
  name: 'Script',
159
159
  code: `<script setup lang="ts">
160
- import CopyBtn from '@cnamts/synapse'
160
+ import { CopyBtn } from '@cnamts/synapse'
161
161
  </script>
162
162
  `,
163
163
  },
@@ -207,8 +207,11 @@ export const SlotIcon: Story = {
207
207
  <CopyBtn
208
208
  label="Copier le numéro de patient"
209
209
  text-to-copy="1970756541"
210
- :icon="duplicateIcon"
211
- />
210
+ >
211
+ <template #icon>
212
+ <VIcon :icon="duplicateIcon" />
213
+ </template>
214
+ </CopyBtn>
212
215
  </div>
213
216
  </template>
214
217
  `,
@@ -216,7 +219,7 @@ export const SlotIcon: Story = {
216
219
  {
217
220
  name: 'Script',
218
221
  code: `<script setup lang="ts">
219
- import CopyBtn from '@cnamts/synapse'
222
+ import { CopyBtn } from '@cnamts/synapse'
220
223
  import { mdiContentDuplicate } from '@mdi/js'
221
224
 
222
225
  const duplicateIcon = mdiContentDuplicate
@@ -285,7 +288,7 @@ export const SlotTooltip: Story = {
285
288
  {
286
289
  name: 'Script',
287
290
  code: `<script setup lang="ts">
288
- import CopyBtn from '@cnamts/synapse'
291
+ import { CopyBtn } from '@cnamts/synapse'
289
292
 
290
293
  const tooltip = 'Texte personalisé'
291
294
  </script>
@@ -1,6 +1,5 @@
1
1
  <script setup lang="ts">
2
2
  import { ref } from 'vue'
3
- import { VMenu, VIcon, VBtn } from 'vuetify/components'
4
3
  import { mdiContentCopy } from '@mdi/js'
5
4
 
6
5
  import useCustomizableOptions, { type CustomizableOptions } from '@/composables/useCustomizableOptions'
@@ -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 />
@@ -0,0 +1,193 @@
1
+ import { VExpansionPanels, VExpansionPanel, VExpansionPanelTitle, VExpansionPanelText, VDataTable, VIcon } from 'vuetify/components'
2
+ import type { StoryObj } from '@storybook/vue3'
3
+ import { AccessibiliteItemsIndeterminate, AccessibiliteItemsValidated } from './AccessibiliteItems'
4
+ import { mdiCheckboxMarkedCircle, mdiLink, mdiEye } from '@mdi/js'
5
+
6
+ const checkIcon = mdiCheckboxMarkedCircle
7
+ const iconEye = mdiEye
8
+ const linkICon = mdiLink
9
+
10
+ export default {
11
+ title: 'Composants/Formulaires/SyBtnSelect/Accessibilité',
12
+ }
13
+
14
+ export const AccessibilitePanel: StoryObj = {
15
+
16
+ render: () => {
17
+ return {
18
+ components: { VExpansionPanels, VExpansionPanel, VExpansionPanelTitle, VExpansionPanelText, VDataTable, VIcon },
19
+
20
+ setup() {
21
+ const icon = checkIcon
22
+
23
+ return { AccessibiliteItemsIndeterminate, AccessibiliteItemsValidated, icon, linkICon, iconEye }
24
+ },
25
+ template: `
26
+ <div class="accessibiliteItems" style="display:flex; max-width: none !important;">
27
+ <v-col cols="6">
28
+ <div style="display:flex; margin-bottom: 10px; justify-content: space-between; align-items: center;">
29
+ <h5>{{ AccessibiliteItemsIndeterminate.length }} critères à prendre en charge par le projet</h5>
30
+ <div style="display: flex; align-items: center;">
31
+ <v-btn variant="tonal" color="red" size="x-small" style="margin: 4px;font-size: 8px;"
32
+ rounded>Tanaguru
33
+ </v-btn>
34
+ </div>
35
+ </div>
36
+
37
+ <v-expansion-panels value="opened" multiple>
38
+ <v-expansion-panel v-for="(item, index) in AccessibiliteItemsIndeterminate" :key="index" style="background-color: rgba(42, 96, 158, 0.1); margin-bottom: 10px;">
39
+ <v-expansion-panel-title>
40
+ <VIcon :icon="iconEye" style="margin-right: 5px; color:#5778b7;"/>
41
+ {{ item.title }}
42
+ </v-expansion-panel-title>
43
+ <v-expansion-panel-text>
44
+ <v-expansion-panels>
45
+ <v-expansion-panel v-for="(i, index) in item.items2" :key="i" style="margin-bottom: 10px;">
46
+ <v-expansion-panel-title
47
+ style="font-weight: bold; font-size: 13px; line-height: 16px;">
48
+ {{ i.subtitle}}
49
+ </v-expansion-panel-title>
50
+ <v-expansion-panel-text>
51
+ <div>
52
+ <p style="font-size: 13px;line-height: 16px;">
53
+ {{ i.precision }}
54
+ </p>
55
+ <div v-for="(value, index) in i.solution"
56
+ style="margin-top:15px; font-size: 13px;line-height: 16px;">
57
+ <p style="font-weight: bold;">Méthodologie du test : <a
58
+ href="{{i.link}}" target="blank">
59
+ <VIcon :icon="linkICon"/>
60
+ </a></p>
61
+
62
+ <p>{{ value.info1 }}</p>
63
+ <p>{{ value.info2 }}</p>
64
+ <p>{{ value.info3 }}</p>
65
+
66
+ </div>
67
+ <span style="display:flex; justify-content:center; margin-bottom:5px;">______</span>
68
+ </div>
69
+ </v-expansion-panel-text>
70
+ </v-expansion-panel>
71
+ <v-expansion-panel >
72
+ <v-expansion-panel-title
73
+ style="font-weight: bold; font-size: 13px; line-height: 16px;">
74
+ {{ item.subtitle }}
75
+ </v-expansion-panel-title>
76
+ <v-expansion-panel-text>
77
+ <div v-for="(value, i) in item.items" :key="i">
78
+ <p style="font-size: 13px;line-height: 16px;">
79
+ {{ value.precision }}
80
+ </p>
81
+ <div v-for="element in value.solution"
82
+ style="margin-top:15px; font-size: 13px;line-height: 16px;">
83
+ <p style="font-weight: bold;">Méthodologie du test : <a
84
+ href="value.link" target="blank">
85
+ <VIcon :icon="linkICon"/>
86
+ </a></p>
87
+
88
+ <p>{{ element.info1 }}</p>
89
+ <p>{{ element.info2 }}</p>
90
+ <p>{{ element.info3 }}</p>
91
+
92
+ </div>
93
+ <span style="display:flex; justify-content:center; margin-bottom:5px;">______</span>
94
+ </div>
95
+ </v-expansion-panel-text>
96
+ </v-expansion-panel>
97
+ </v-expansion-panels>
98
+ </v-expansion-panel-text>
99
+ </v-expansion-panel>
100
+ </v-expansion-panels>
101
+ </v-col>
102
+ <v-col cols="6">
103
+ <div style="display:flex; margin-bottom: 10px; justify-content: space-between; align-items: center;">
104
+ <h5>{{ AccessibiliteItemsValidated.length }} critères pris en charge par l'équipe Design System</h5>
105
+ <div style="display: flex; align-items: center;">
106
+ <v-btn variant="tonal" color="red" size="x-small" style="margin: 4px;font-size: 8px;"
107
+ rounded>Tanaguru
108
+ </v-btn>
109
+ </div>
110
+ </div>
111
+ <v-expansion-panels v-if="AccessibiliteItemsValidated.length > 0" value="opened" multiple>
112
+ <v-expansion-panel
113
+ v-for="(item, index) in AccessibiliteItemsValidated"
114
+ :key="index" style="background-color: rgba(53,135,0,0.1); margin-bottom: 10px;">
115
+ <v-expansion-panel-title>
116
+ <VIcon color="green" :icon="icon" style="margin-right: 5px;"/>
117
+ {{ item.title }}
118
+ </v-expansion-panel-title>
119
+ <v-expansion-panel-text>
120
+ <v-expansion-panels>
121
+ <v-expansion-panel>
122
+ <v-expansion-panel-title style="font-weight: bold;font-size: 13px; line-height: 16px;">
123
+ {{ item.subtitle }}
124
+ </v-expansion-panel-title>
125
+ <v-expansion-panel-text>
126
+ <div v-for="(value, i) in item.items" :key="i">
127
+ <p style="font-size: 13px;line-height: 16px;">
128
+ {{ value.precision }}
129
+ </p>
130
+ <div v-for="element in value.solution"
131
+ style="margin-top:15px; font-size: 13px;line-height: 16px;">
132
+ <p style="font-weight: bold;">Méthodologie du test : <a
133
+ href="value.link" target="blank">
134
+ <VIcon :icon="linkICon"/>
135
+ </a></p>
136
+ <p>{{ element.info1 }}</p>
137
+ <p>{{ element.info2 }}</p>
138
+ <p>{{ element.info3 }}</p>
139
+ </div>
140
+ <span style="display:flex; justify-content:center; margin-bottom:5px;">______</span>
141
+ </div>
142
+ </v-expansion-panel-text>
143
+ </v-expansion-panel>
144
+ </v-expansion-panels>
145
+ </v-expansion-panel-text>
146
+ </v-expansion-panel>
147
+ </v-expansion-panels>
148
+ <div v-else style="display: flex;justify-content: center;"><span style="text-align:center;" >Pas de critère d'accessibilité bloquant</span></div>
149
+ </v-col>
150
+ </div>
151
+ `,
152
+ }
153
+ },
154
+ tags: ['!dev'],
155
+ }
156
+
157
+ export const Legende: StoryObj = {
158
+ args: {
159
+ icon: checkIcon,
160
+ },
161
+ render: (args) => {
162
+ return {
163
+ components: { VIcon },
164
+ setup() {
165
+ return { args }
166
+ },
167
+ template: `
168
+ <p style="color: grey;font-size: 11px; margin-bottom: 12px;">Date de conception: 20/11/2024</p>
169
+ <div>
170
+ <p>Le tableau ci-dessous liste nos recommandations suivant les <a target="blank" style="color:#0C41BD;" href="https://www.numerique.gouv.fr/publications/rgaa-accessibilite/#contenu">catégories du RGAA</a>.</p>
171
+ <p style="margin-bottom: 12px;font-weight:bold;">Pour rappel le composant seul ne garantie pas
172
+ l'accessibilité du site.</p>
173
+ <div style="font-size: 14px">
174
+ <p>Nous avons deux façons de relever les problèmes d'accessibilité des composants :</p>
175
+ <div>
176
+ <v-btn variant="tonal" color="grey" size="x-small" style="margin: 2px;font-size: 8px;" rounded>
177
+ Audit
178
+ </v-btn>
179
+ Problèmes relevés par le projet
180
+ </div>
181
+ <div>
182
+ <v-btn variant="tonal" color="red" size="x-small" style="margin: 2px;font-size: 8px;" rounded>
183
+ Tanaguru
184
+ </v-btn>
185
+ Problèmes relevés par Tanaguru
186
+ </div>
187
+ </div>
188
+ </div>
189
+ `,
190
+ }
191
+ },
192
+ tags: ['!dev'],
193
+ }