@cnamts/synapse 1.0.8 → 1.0.9

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 (394) hide show
  1. package/dist/{DateFilter-DkqG0pmr.js → DateFilter-BylukfjR.js} +1 -1
  2. package/dist/{NumberFilter-Ck7AwD39.js → NumberFilter-C_bUk9o1.js} +1 -1
  3. package/dist/{PeriodFilter-LRI6YpgU.js → PeriodFilter-dVOmcfmt.js} +1 -1
  4. package/dist/{SelectFilter-DPc70Jk7.js → SelectFilter-BW8KpXkQ.js} +1 -1
  5. package/dist/{TextFilter-DRQL7uD8.js → TextFilter-diwVzTz7.js} +1 -1
  6. package/dist/components/Amelipro/AmeliproAutoCompleteField/AmeliproAutoCompleteField.d.ts +2785 -2770
  7. package/dist/components/Amelipro/AmeliproCallback/AmeliproCallback.d.ts +3 -3
  8. package/dist/components/Amelipro/AmeliproCarousel/AmeliproCarousel.d.ts +7 -7
  9. package/dist/components/Amelipro/AmeliproCarousel/AmeliproCarouselItem/AmeliproCarouselItem.d.ts +3 -3
  10. package/dist/components/Amelipro/AmeliproClickableTile/AmeliproClickableTile.d.ts +3 -3
  11. package/dist/components/Amelipro/AmeliproContentLayout/AmeliproContentLayout.d.ts +30 -0
  12. package/dist/components/Amelipro/AmeliproContentLayout/index.d.ts +2 -0
  13. package/dist/components/Amelipro/AmeliproCopyBtn/AmeliproCopyBtn.d.ts +24 -0
  14. package/dist/components/Amelipro/AmeliproErrorTemplate/AmeliproErrorTemplate.d.ts +128 -0
  15. package/dist/components/Amelipro/AmeliproErrorTemplate/errorTemplateTypes.d.ts +2 -0
  16. package/dist/components/Amelipro/AmeliproErrorTemplate/types.d.ts +7 -0
  17. package/dist/components/Amelipro/AmeliproFilePreview/AmeliproFilePreview.d.ts +91 -0
  18. package/dist/components/Amelipro/AmeliproFooter/AmeliproFooter.d.ts +18 -18
  19. package/dist/components/Amelipro/AmeliproHeader/AmeliproHeader.d.ts +9 -9
  20. package/dist/components/Amelipro/AmeliproHeader/AmeliproHeaderBar/AmeliproHeaderBar.d.ts +3 -3
  21. package/dist/components/Amelipro/AmeliproHeader/AmeliproHeaderBar/AmeliproHeaderBrandSection/AmeliproHeaderBrandSection.d.ts +3 -3
  22. package/dist/components/Amelipro/AmeliproIconBtn/AmeliproIconBtn.d.ts +3 -3
  23. package/dist/components/Amelipro/AmeliproMenu/AmeliproMenu.d.ts +3 -3
  24. package/dist/components/Amelipro/AmeliproPagination/AmeliproPaginationBtn/AmeliproPaginationBtn.d.ts +3 -3
  25. package/dist/components/Amelipro/AmeliproPatientBanner/AmeliproPatientBanner.d.ts +3 -3
  26. package/dist/components/Amelipro/AmeliproSelect/AmeliproSelect.d.ts +2766 -2751
  27. package/dist/components/Amelipro/AmeliproStateTile/AmeliproStateTile.d.ts +3 -3
  28. package/dist/components/Amelipro/AmeliproTabs/AmeliproTabs.d.ts +2766 -2751
  29. package/dist/components/Amelipro/AmeliproTextArea/AmeliproTextArea.d.ts +388 -386
  30. package/dist/components/Amelipro/AmeliproTextField/AmeliproTextField.d.ts +632 -630
  31. package/dist/components/Amelipro/AmeliproTileBtn/AmeliproTileBtn.d.ts +3 -3
  32. package/dist/components/Amelipro/AmeliproTransmission/AmeliproTransmission.d.ts +9 -9
  33. package/dist/components/CookieBanner/CookieBanner.d.ts +116 -114
  34. package/dist/components/CookiesSelection/CookiesInformation/CookiesInformation.d.ts +465 -465
  35. package/dist/components/CookiesSelection/CookiesSelection.d.ts +103 -101
  36. package/dist/components/Customs/Selects/SySelect/SySelect.d.ts +105 -105
  37. package/dist/components/Customs/SyCheckbox/SyCheckbox.d.ts +1 -1
  38. package/dist/components/Customs/SyTextField/SyTextField.d.ts +634 -632
  39. package/dist/components/DataList/DataList.d.ts +1 -1
  40. package/dist/components/DatePicker/CalendarMode/DatePicker.d.ts +2875 -2843
  41. package/dist/components/DatePicker/ComplexDatePicker/ComplexDatePicker.d.ts +1446 -1430
  42. package/dist/components/DatePicker/DateTextInput/DateTextInput.d.ts +643 -641
  43. package/dist/components/DialogBox/DialogBox.d.ts +172 -169
  44. package/dist/components/DialogBox/config.d.ts +3 -3
  45. package/dist/components/DialogBox/locales.d.ts +2 -0
  46. package/dist/components/DialogBox/useDraggable.d.ts +8 -0
  47. package/dist/components/FilterSideBar/FilterSideBar.d.ts +159 -157
  48. package/dist/components/FooterBar/FooterBar.d.ts +5 -5
  49. package/dist/components/HeaderBar/HeaderBar.d.ts +2 -2
  50. package/dist/components/HeaderBar/HeaderLogo/HeaderLogo.d.ts +1 -1
  51. package/dist/components/HeaderNavigationBar/HeaderNavigationBar.d.ts +1 -1
  52. package/dist/components/LangBtn/LangBtn.d.ts +169 -167
  53. package/dist/components/LogoBrandSection/LogoBrandSection.d.ts +1 -1
  54. package/dist/components/NirField/NirField.d.ts +1277 -1273
  55. package/dist/components/PeriodField/PeriodField.d.ts +5752 -5688
  56. package/dist/components/PhoneField/PhoneField.d.ts +647 -636
  57. package/dist/components/SearchListField/SearchListField.d.ts +105 -105
  58. package/dist/components/SyAlert/SyAlert.d.ts +29 -29
  59. package/dist/components/SyTextArea/SyTextArea.d.ts +389 -387
  60. package/dist/components/Tables/SyServerTable/SyServerTable.d.ts +207 -175
  61. package/dist/components/Tables/SyTable/SyTable.d.ts +208 -176
  62. package/dist/components/Tables/common/SyTableFilter.d.ts +1 -1
  63. package/dist/components/Tables/common/SyTablePagination.d.ts +105 -105
  64. package/dist/components/Tables/common/filters/DateFilter.d.ts +1 -1
  65. package/dist/components/Tables/common/filters/NumberFilter.d.ts +1 -1
  66. package/dist/components/Tables/common/filters/PeriodFilter.d.ts +1 -1
  67. package/dist/components/Tables/common/filters/SelectFilter.d.ts +1 -1
  68. package/dist/components/Tables/common/filters/TextFilter.d.ts +1 -1
  69. package/dist/components/Tables/common/organizeColumns/OrganizeColumns.d.ts +82 -82
  70. package/dist/components/Tables/common/tableProps.d.ts +11 -0
  71. package/dist/components/Tables/common/types.d.ts +8 -4
  72. package/dist/components/Tables/common/useStoredOptions.d.ts +14 -0
  73. package/dist/components/Tables/common/useTableHeaders.d.ts +3 -2
  74. package/dist/components/Tables/common/useTableItems.d.ts +0 -1
  75. package/dist/components/UploadWorkflow/UploadWorkflow.d.ts +16 -16
  76. package/dist/components/index.d.ts +4 -0
  77. package/dist/design-system-v3.js +166 -162
  78. package/dist/design-system-v3.umd.cjs +267 -262
  79. package/dist/main-2eWGB7zZ.js +30203 -0
  80. package/dist/style.css +1 -1
  81. package/dist/vuetifyConfig.d.ts +6 -6
  82. package/package.json +1 -1
  83. package/src/assets/amelipro/img/ico_pdf.svg +15 -0
  84. package/src/assets/amelipro/img/navigateurs.png +0 -0
  85. package/src/assets/amelipro/img/visuel_deconnexion.svg +973 -0
  86. package/src/assets/amelipro/img/visuel_erreur_403.svg +3652 -0
  87. package/src/assets/amelipro/img/visuel_erreur_404.svg +1801 -0
  88. package/src/assets/amelipro/img/visuel_erreur_500.svg +989 -0
  89. package/src/assets/amelipro/img/visuel_erreur_503.svg +1005 -0
  90. package/src/assets/amelipro/img/visuel_navigateur_obsolete.svg +828 -0
  91. package/src/assets/amelipro/pdf/charte-pour-pdf.pdf +0 -0
  92. package/src/components/Accordion/Accessibilite/AccessibilityGuide.mdx +5 -2
  93. package/src/components/Accordion/Accordion.mdx +5 -3
  94. package/src/components/Amelipro/AmeliproAccordion/AmeliproAccordion.stories.ts +258 -0
  95. package/src/components/Amelipro/AmeliproAccordionGroup/AmeliproAccordionGroup.stories.ts +321 -0
  96. package/src/components/Amelipro/AmeliproAccordionList/AmeliproAccordionList.stories.ts +656 -0
  97. package/src/components/Amelipro/AmeliproAccordionResult/AmeliproAccordionResult.mdx +1 -3
  98. package/src/components/Amelipro/AmeliproAccordionResult/AmeliproAccordionResult.stories.ts +208 -0
  99. package/src/components/Amelipro/AmeliproAccordionResultList/AmeliproAccordionResultList.stories.ts +562 -0
  100. package/src/components/Amelipro/AmeliproAutoCompleteField/AmeliproAutoCompleteField.stories.ts +480 -0
  101. package/src/components/Amelipro/AmeliproCaptcha/AmeliproCaptcha.stories.ts +267 -0
  102. package/src/components/Amelipro/AmeliproCheckbox/AmeliproCheckbox.stories.ts +287 -6
  103. package/src/components/Amelipro/AmeliproCheckboxGroup/AmeliproCheckboxGroup.stories.ts +433 -0
  104. package/src/components/Amelipro/AmeliproContentLayout/AmeliproContentLayout.mdx +15 -0
  105. package/src/components/Amelipro/AmeliproContentLayout/AmeliproContentLayout.stories.ts +44 -0
  106. package/src/components/Amelipro/AmeliproContentLayout/AmeliproContentLayout.vue +55 -0
  107. package/src/components/Amelipro/AmeliproContentLayout/__tests__/AmeliproContentLayout.spec.ts +20 -0
  108. package/src/components/Amelipro/AmeliproContentLayout/__tests__/__snapshots__/AmeliproContentLayout.spec.ts.snap +24 -0
  109. package/src/components/Amelipro/AmeliproContentLayout/index.ts +3 -0
  110. package/src/components/Amelipro/AmeliproCopyBtn/AmeliproCopyBtn.mdx +18 -0
  111. package/src/components/Amelipro/AmeliproCopyBtn/AmeliproCopyBtn.stories.ts +68 -0
  112. package/src/components/Amelipro/AmeliproCopyBtn/AmeliproCopyBtn.vue +73 -0
  113. package/src/components/Amelipro/AmeliproCopyBtn/__tests__/AmeliproCopyBtn.spec.ts +20 -0
  114. package/src/components/Amelipro/AmeliproCopyBtn/__tests__/__snapshots__/AmeliproCopyBtn.spec.ts.snap +84 -0
  115. package/src/components/Amelipro/AmeliproCustomSelector/AmeliproCustomSelector.stories.ts +422 -0
  116. package/src/components/Amelipro/AmeliproCustomSelector/AmeliproCustomSelector.vue +2 -2
  117. package/src/components/Amelipro/AmeliproCustomSelector/__tests__/__snapshots__/AmeliproCustomSelector.spec.ts.snap +4 -6
  118. package/src/components/Amelipro/AmeliproDisclosure/AmeliproDisclosure.stories.ts +92 -0
  119. package/src/components/Amelipro/AmeliproErrorTemplate/AmeliproErrorTemplate.mdx +23 -0
  120. package/src/components/Amelipro/AmeliproErrorTemplate/AmeliproErrorTemplate.stories.ts +386 -0
  121. package/src/components/Amelipro/AmeliproErrorTemplate/AmeliproErrorTemplate.vue +187 -0
  122. package/src/components/Amelipro/AmeliproErrorTemplate/__tests__/AmeliproErrorTemplate.spec.ts +31 -0
  123. package/src/components/Amelipro/AmeliproErrorTemplate/__tests__/__snapshots__/AmeliproErrorTemplate.spec.ts.snap +185 -0
  124. package/src/components/Amelipro/AmeliproErrorTemplate/errorTemplateTypes.ts +85 -0
  125. package/src/components/Amelipro/AmeliproErrorTemplate/types.d.ts +7 -0
  126. package/src/components/Amelipro/AmeliproFilePreview/AmeliproFilePreview.mdx +15 -0
  127. package/src/components/Amelipro/AmeliproFilePreview/AmeliproFilePreview.stories.ts +71 -0
  128. package/src/components/Amelipro/AmeliproFilePreview/AmeliproFilePreview.vue +161 -0
  129. package/src/components/Amelipro/AmeliproFilePreview/__tests__/AmeliproFilePreview.spec.ts +28 -0
  130. package/src/components/Amelipro/AmeliproFilePreview/__tests__/__snapshots__/AmeliproFilePreview.spec.ts.snap +209 -0
  131. package/src/components/Amelipro/AmeliproIllustratedRadioGroup/AmeliproIllustratedRadioGroup.stories.ts +194 -0
  132. package/src/components/Amelipro/AmeliproRadioGroup/AmeliproRadioGroup.stories.ts +639 -0
  133. package/src/components/Amelipro/AmeliproResultList/AmeliproResultList.stories.ts +648 -0
  134. package/src/components/Amelipro/AmeliproSelect/AmeliproSelect.stories.ts +392 -0
  135. package/src/components/Amelipro/AmeliproTextArea/AmeliproTextArea.stories.ts +351 -0
  136. package/src/components/Amelipro/AmeliproTextField/AmeliproTextField.stories.ts +634 -38
  137. package/src/components/Amelipro/AmeliproTextField/AmeliproTextField.vue +1 -1
  138. package/src/components/Amelipro/ServiceMenu/ServiceMenu.mdx +5 -3
  139. package/src/components/Amelipro/StructureMenu/StructureMenu.mdx +5 -3
  140. package/src/components/Amelipro/UserMenu/UserMenu.mdx +5 -3
  141. package/src/components/BackBtn/Accessibilite.mdx +6 -2
  142. package/src/components/BackBtn/BackBtn.mdx +5 -3
  143. package/src/components/BackBtn/BackBtn.stories.ts +1 -0
  144. package/src/components/BackBtn/Usages.mdx +5 -3
  145. package/src/components/BackToTopBtn/Accessibilite.mdx +6 -2
  146. package/src/components/BackToTopBtn/BackToTopBtn.mdx +5 -4
  147. package/src/components/BackToTopBtn/Usages.mdx +5 -3
  148. package/src/components/ChipList/Accessibilite.mdx +6 -2
  149. package/src/components/ChipList/ChipList.mdx +5 -3
  150. package/src/components/CollapsibleList/Accessibilite.mdx +6 -2
  151. package/src/components/CollapsibleList/CollapsibleList.mdx +5 -3
  152. package/src/components/ContextualMenu/Accessibilite.mdx +6 -2
  153. package/src/components/ContextualMenu/ContextualMenu.mdx +7 -4
  154. package/src/components/ContextualMenu/Usages.mdx +5 -3
  155. package/src/components/CookieBanner/Accessibilite.mdx +6 -2
  156. package/src/components/CookieBanner/CookieBanner.mdx +5 -8
  157. package/src/components/CopyBtn/Accessibilite.mdx +6 -2
  158. package/src/components/CopyBtn/CopyBtn.mdx +5 -3
  159. package/src/components/CopyBtn/Usages.mdx +5 -3
  160. package/src/components/Customs/Selects/SelectBtnField/Accessibilite.mdx +6 -2
  161. package/src/components/Customs/Selects/SelectBtnField/SelectBtnField.mdx +7 -4
  162. package/src/components/Customs/Selects/SelectBtnField/Usages.mdx +5 -3
  163. package/src/components/Customs/Selects/SelectOverview.mdx +5 -3
  164. package/src/components/Customs/Selects/SyBtnSelect/Accessibilite.mdx +6 -2
  165. package/src/components/Customs/Selects/SyBtnSelect/SyBtnSelect.mdx +6 -4
  166. package/src/components/Customs/Selects/SyInputSelect/Accessibilite.mdx +6 -2
  167. package/src/components/Customs/Selects/SyInputSelect/SyInputSelect.mdx +7 -2
  168. package/src/components/Customs/Selects/SySelect/Accessibilite.mdx +7 -3
  169. package/src/components/Customs/Selects/SySelect/SySelect.mdx +6 -4
  170. package/src/components/Customs/Selects/SySelect/SySelect.stories.ts +1 -1
  171. package/src/components/Customs/Selects/SySelect/SySelect.vue +115 -193
  172. package/src/components/Customs/Selects/SySelect/Usages.mdx +5 -3
  173. package/src/components/Customs/SyCheckbox/Accessibilite.mdx +6 -3
  174. package/src/components/Customs/SyCheckbox/SyCheckbox.mdx +5 -3
  175. package/src/components/Customs/SyIcon/Accessibilite.mdx +5 -5
  176. package/src/components/Customs/SyIcon/SyIcon.mdx +5 -7
  177. package/src/components/Customs/SyPagination/SyPagination.mdx +7 -4
  178. package/src/components/Customs/SyTabs/Accessibilite.mdx +4 -1
  179. package/src/components/Customs/SyTabs/SyTabs.mdx +5 -3
  180. package/src/components/Customs/SyTabs/tests/SyTabs.spec.ts +18 -0
  181. package/src/components/Customs/SyTextField/Accessibilite.mdx +6 -2
  182. package/src/components/Customs/SyTextField/SyTextField.mdx +5 -6
  183. package/src/components/Customs/SyTextField/SyTextField.vue +17 -4
  184. package/src/components/Customs/SyTextField/Usages.mdx +1 -0
  185. package/src/components/DataList/Accessibilite.mdx +6 -2
  186. package/src/components/DataList/DataList.mdx +5 -3
  187. package/src/components/DataListGroup/Accessibilite.mdx +6 -2
  188. package/src/components/DataListGroup/DataListGroup.mdx +5 -3
  189. package/src/components/DatePicker/Accessibilite.mdx +6 -2
  190. package/src/components/DatePicker/CalendarMode/DatePicker.mdx +5 -3
  191. package/src/components/DatePicker/CalendarMode/DatePicker.vue +6 -3
  192. package/src/components/DatePicker/ComplexDatePicker/ComplexDatePicker.mdx +5 -6
  193. package/src/components/DatePicker/ComplexDatePicker/ComplexDatePicker.vue +14 -3
  194. package/src/components/DatePicker/DatePickerOverview.mdx +5 -3
  195. package/src/components/DatePicker/DatePickerValidationExample/DatePickerValidation.mdx +5 -3
  196. package/src/components/DatePicker/DateTextInput/DateTextInput.vue +37 -32
  197. package/src/components/DatePicker/DateTextInput/NoCalendar.mdx +5 -3
  198. package/src/components/DatePicker/DateTextInput/NoCalendar.stories.ts +3 -0
  199. package/src/components/DatePicker/Usages.mdx +5 -3
  200. package/src/components/DiacriticPicker/DiacriticPicker.mdx +5 -3
  201. package/src/components/DialogBox/Accessibilite.mdx +6 -2
  202. package/src/components/DialogBox/DialogBox.mdx +5 -3
  203. package/src/components/DialogBox/DialogBox.stories.ts +83 -0
  204. package/src/components/DialogBox/DialogBox.vue +41 -6
  205. package/src/components/DialogBox/Usages.mdx +5 -3
  206. package/src/components/DialogBox/config.ts +3 -3
  207. package/src/components/DialogBox/locales.ts +2 -0
  208. package/src/components/DialogBox/tests/DialogBox.spec.ts +132 -3
  209. package/src/components/DialogBox/tests/__snapshots__/DialogBox.spec.ts.snap +14 -11
  210. package/src/components/DialogBox/useDraggable.ts +98 -0
  211. package/src/components/DownloadBtn/Accessibilite.mdx +6 -2
  212. package/src/components/DownloadBtn/DownloadBtn.mdx +7 -4
  213. package/src/components/DownloadBtn/DownloadBtn.vue +1 -1
  214. package/src/components/DownloadBtn/tests/DownloadBtn.spec.ts +2 -3
  215. package/src/components/ErrorPage/Accessibilite.mdx +6 -2
  216. package/src/components/ErrorPage/ErrorPage.mdx +5 -3
  217. package/src/components/ExternalLinks/Accessibilite.mdx +6 -2
  218. package/src/components/ExternalLinks/ExternalLinks.mdx +5 -8
  219. package/src/components/ExternalLinks/Usages.mdx +5 -3
  220. package/src/components/FileList/Accessibilite.mdx +6 -2
  221. package/src/components/FileList/FileList.mdx +5 -4
  222. package/src/components/FilePreview/Accessibilite.mdx +6 -2
  223. package/src/components/FilePreview/FilePreview.mdx +7 -7
  224. package/src/components/FileUpload/Accessibilite.mdx +6 -2
  225. package/src/components/FileUpload/FileUpload.mdx +7 -4
  226. package/src/components/FilterInline/Accessibilite.mdx +6 -2
  227. package/src/components/FilterInline/FilterInline.mdx +5 -5
  228. package/src/components/FilterSideBar/Accessibilite.mdx +6 -2
  229. package/src/components/FilterSideBar/FilterSideBar.mdx +5 -4
  230. package/src/components/FooterBar/Accessibilite.mdx +6 -2
  231. package/src/components/FooterBar/FooterBar.mdx +5 -3
  232. package/src/components/FranceConnectBtn/Accessibilite.mdx +6 -2
  233. package/src/components/FranceConnectBtn/FranceConnectBtn.mdx +5 -3
  234. package/src/components/HeaderBar/Accessibilite.mdx +6 -2
  235. package/src/components/HeaderBar/HeaderBar.mdx +4 -4
  236. package/src/components/HeaderBar/HeaderBurgerMenu/Accessibilite.mdx +6 -2
  237. package/src/components/HeaderBar/HeaderBurgerMenu/HeaderBurgerMenu.mdx +9 -13
  238. package/src/components/HeaderBar/HeaderBurgerMenu/HeaderMenuItem/HeaderMenuItem.mdx +1 -1
  239. package/src/components/HeaderBar/HeaderBurgerMenu/HeaderMenuSection/HeaderMenuSection.mdx +5 -5
  240. package/src/components/HeaderBar/HeaderBurgerMenu/HeaderSubMenu/HeaderSubMenu.mdx +1 -2
  241. package/src/components/HeaderBar/Usages.mdx +5 -3
  242. package/src/components/HeaderLoading/Accessibilite.mdx +2 -1
  243. package/src/components/HeaderLoading/HeaderLoading.mdx +5 -3
  244. package/src/components/HeaderNavigationBar/HeaderNavigationBar.mdx +1 -8
  245. package/src/components/HeaderToolbar/Accessibilite.mdx +6 -2
  246. package/src/components/HeaderToolbar/HeaderToolbar.mdx +5 -3
  247. package/src/components/LangBtn/Accessibilite.mdx +6 -2
  248. package/src/components/LangBtn/LangBtn.mdx +5 -3
  249. package/src/components/Logo/Accessibilite.mdx +6 -2
  250. package/src/components/Logo/Logo.mdx +5 -3
  251. package/src/components/LogoBrandSection/Accessibilite.mdx +6 -2
  252. package/src/components/LogoBrandSection/LogoBrandSection.mdx +5 -3
  253. package/src/components/MaintenancePage/Accessibilite.mdx +6 -2
  254. package/src/components/MaintenancePage/MaintenancePage.mdx +6 -4
  255. package/src/components/NirField/Accessibilite.mdx +6 -2
  256. package/src/components/NirField/NirField.mdx +5 -7
  257. package/src/components/NirField/NirField.vue +13 -118
  258. package/src/components/NirField/Usages.mdx +5 -3
  259. package/src/components/NotFoundPage/Accessibilite.mdx +6 -2
  260. package/src/components/NotFoundPage/NotFoundPage.mdx +6 -4
  261. package/src/components/NotificationBar/Accessibilite.mdx +6 -2
  262. package/src/components/NotificationBar/NotificationBar.mdx +5 -1
  263. package/src/components/NotificationBar/Usages.mdx +5 -3
  264. package/src/components/PageContainer/Accessibilite.mdx +6 -2
  265. package/src/components/PageContainer/PageContainer.mdx +5 -3
  266. package/src/components/PaginatedTable/Accessibilite.mdx +6 -2
  267. package/src/components/PaginatedTable/PaginatedTable.mdx +5 -3
  268. package/src/components/PasswordField/Accessibilite.mdx +6 -2
  269. package/src/components/PasswordField/PasswordField.mdx +5 -3
  270. package/src/components/PeriodField/Accessibilite.mdx +6 -2
  271. package/src/components/PeriodField/PeriodField.mdx +5 -3
  272. package/src/components/PhoneField/Accessibilite.mdx +6 -2
  273. package/src/components/PhoneField/PhoneField.mdx +5 -3
  274. package/src/components/PhoneField/PhoneField.stories.ts +17 -218
  275. package/src/components/PhoneField/PhoneField.vue +17 -11
  276. package/src/components/PhoneField/Usages.mdx +5 -3
  277. package/src/components/PhoneField/tests/PhoneField.spec.ts +46 -0
  278. package/src/components/RangeField/Accessibilite.mdx +6 -2
  279. package/src/components/RangeField/RangeField.mdx +5 -7
  280. package/src/components/RatingPicker/Accessibilite.mdx +6 -2
  281. package/src/components/RatingPicker/RatingPicker.mdx +5 -4
  282. package/src/components/SearchListField/Accessibilite.mdx +6 -2
  283. package/src/components/SearchListField/SearchListField.mdx +7 -5
  284. package/src/components/SkipLink/Accessibilite.mdx +6 -2
  285. package/src/components/SkipLink/SkipLink.mdx +5 -3
  286. package/src/components/SkipLink/Usages.mdx +5 -3
  287. package/src/components/SocialMediaLinks/Accessibilite.mdx +6 -2
  288. package/src/components/SocialMediaLinks/SocialMediaLinks.mdx +5 -3
  289. package/src/components/SubHeader/Accessibilite.mdx +6 -2
  290. package/src/components/SubHeader/SubHeader.mdx +5 -3
  291. package/src/components/SyAlert/Accessibilite.mdx +6 -2
  292. package/src/components/SyAlert/SyAlert.mdx +7 -4
  293. package/src/components/SyAlert/Usages.mdx +5 -3
  294. package/src/components/SyTextArea/SyTextArea.mdx +5 -3
  295. package/src/components/TableToolbar/Accessibilite.mdx +6 -2
  296. package/src/components/TableToolbar/TableToolbar.mdx +6 -3
  297. package/src/components/Tables/SyServerTable/SyServerTable.mdx +5 -3
  298. package/src/components/Tables/SyServerTable/SyServerTable.stories.ts +4 -0
  299. package/src/components/Tables/SyServerTable/SyServerTable.vue +36 -74
  300. package/src/components/Tables/SyServerTable/tests/SyServerTable.spec.ts +46 -7
  301. package/src/components/Tables/SyTable/SyTable.mdx +5 -3
  302. package/src/components/Tables/SyTable/SyTable.stories.ts +5 -1
  303. package/src/components/Tables/SyTable/SyTable.vue +38 -60
  304. package/src/components/Tables/SyTable/tests/SyTable.spec.ts +9 -7
  305. package/src/components/Tables/common/tableProps.ts +53 -0
  306. package/src/components/Tables/common/tableStyles.scss +4 -0
  307. package/src/components/Tables/common/tests/tableUtils.spec.ts +4 -151
  308. package/src/components/Tables/common/types.ts +12 -2
  309. package/src/components/Tables/common/useStoredOptions.ts +36 -0
  310. package/src/components/Tables/common/useTableHeaders.ts +10 -7
  311. package/src/components/Tables/common/useTableItems.ts +0 -20
  312. package/src/components/ToolbarContainer/ToolbarContainer.mdx +1 -0
  313. package/src/components/UploadWorkflow/Accessibilite.mdx +6 -2
  314. package/src/components/UploadWorkflow/UploadWorkflow.mdx +5 -7
  315. package/src/components/UserMenuBtn/Accessibilite.mdx +6 -2
  316. package/src/components/UserMenuBtn/UserMenuBtn.mdx +5 -3
  317. package/src/components/index.ts +4 -0
  318. package/src/stories/Accessibilite/Aculturation/SensibilisationAccessibilite.mdx +2 -65
  319. package/src/stories/Accessibilite/Audit/RGAA.mdx +2 -20
  320. package/src/stories/Accessibilite/AuditDesignSystem.mdx +4 -47
  321. package/src/stories/Accessibilite/Avancement/Avancement.mdx +5 -68
  322. package/src/stories/Accessibilite/Avancement/Avancement.stories.ts +267 -198
  323. package/src/stories/Accessibilite/Introduction.mdx +2 -20
  324. package/src/stories/Accessibilite/KitDePreAudit/Echantillonnage.mdx +4 -21
  325. package/src/stories/Accessibilite/KitDePreAudit/Introduction.mdx +3 -20
  326. package/src/stories/Accessibilite/KitDePreAudit/Outils/Introduction.mdx +5 -50
  327. package/src/stories/Accessibilite/KitDePreAudit/Outils/LecteursDEcran.mdx +3 -46
  328. package/src/stories/Accessibilite/KitDePreAudit/Outils/Tanaguru/FauxPositifs.mdx +3 -39
  329. package/src/stories/Accessibilite/KitDePreAudit/Outils/Tanaguru/Utilisation.mdx +4 -54
  330. package/src/stories/Accessibilite/KitDePreAudit/Preaudit.mdx +4 -51
  331. package/src/stories/Accessibilite/Vuetify/Vuetify.mdx +3 -11
  332. package/src/stories/Accessibilite/Vuetify/Vuetify.stories.ts +2 -2
  333. package/src/stories/Accessibilite/Vuetify/VuetifyItems.ts +6 -3
  334. package/src/stories/Components/Components.stories.ts +1 -1
  335. package/src/stories/Demarrer/CreerUneIssue.mdx +4 -1
  336. package/src/stories/Demarrer/PolitiqueDeConfidentialite.mdx +0 -2
  337. package/src/stories/Demarrer/PolitiqueDeConfidentialite.stories.ts +3 -0
  338. package/src/stories/Demarrer/Releases.mdx +0 -2
  339. package/src/stories/Demarrer/Releases.stories.ts +3 -0
  340. package/src/stories/DesignTokens/Arrondis.mdx +7 -1
  341. package/src/stories/DesignTokens/Colors.mdx +7 -1
  342. package/src/stories/DesignTokens/Conteneurs.mdx +6 -1
  343. package/src/stories/DesignTokens/Elevations.mdx +7 -1
  344. package/src/stories/DesignTokens/Espacements.mdx +7 -1
  345. package/src/stories/DesignTokens/Introduction.mdx +5 -3
  346. package/src/stories/DesignTokens/StylesTypographiques.mdx +6 -1
  347. package/src/stories/DesignTokens/Typographie.mdx +5 -1
  348. package/src/stories/Directives/SvgDirective.mdx +3 -22
  349. package/src/stories/EcoConception/EcoGuideComponent.vue +569 -0
  350. package/src/stories/EcoConception/Introduction.mdx +190 -13
  351. package/src/stories/EcoConception/Referentiel.mdx +13 -0
  352. package/src/stories/EcoConception/datas/back_rules.json +184 -0
  353. package/src/stories/EcoConception/datas/ux_ui_rules.json +1073 -0
  354. package/src/stories/EcoConception/ecoconception.stories.ts +30 -0
  355. package/src/stories/GuideDuDev/ClassesUtilitaires/DataUtilities.mdx +7 -3
  356. package/src/stories/GuideDuDev/ClassesUtilitaires/DomBrowserUtilities.mdx +9 -1
  357. package/src/stories/GuideDuDev/ClassesUtilitaires/FormattingUtilities.mdx +7 -3
  358. package/src/stories/GuideDuDev/ClassesUtilitaires/StorageUtilities.mdx +5 -1
  359. package/src/stories/GuideDuDev/ClassesUtilitaires/ValidationRules.mdx +7 -3
  360. package/src/stories/GuideDuDev/ClassesUtilitaires/ValidationUtilities.mdx +7 -3
  361. package/src/stories/GuideDuDev/ClassesUtilitaires/index.mdx +5 -2
  362. package/src/stories/GuideDuDev/FormValidationGuide.mdx +7 -3
  363. package/src/stories/GuideDuDev/LesBreackingChanges.mdx +6 -2
  364. package/src/stories/GuideDuDev/MigrationDepuisBridge.mdx +7 -2
  365. package/src/stories/GuideDuDev/MigrationDepuisVue2.mdx +7 -2
  366. package/src/stories/GuideDuDev/PortailAgent.mdx +6 -1
  367. package/src/stories/GuideDuDev/Theme.mdx +8 -2
  368. package/src/stories/GuideDuDev/UtiliserLesRules.mdx +7 -3
  369. package/src/stories/GuideDuDev/moduleDeNotification.mdx +8 -3
  370. package/src/stories/GuideDuDev/vuetifyOptions.mdx +5 -1
  371. package/src/stories/Templates/Templates.stories.ts +1 -1
  372. package/src/stories/styles/shared.css +16 -0
  373. package/src/utils/rules/Rules.mdx +26 -3
  374. package/src/utils/rules/doMatchPattern/DoMachPattern.mdx +27 -4
  375. package/src/utils/rules/isDateValid/IsDateValid.mdx +27 -4
  376. package/src/utils/rules/isExactLength/IsExactLenght.mdx +27 -4
  377. package/src/utils/rules/isHolidayDay/IsHolidayDay.mdx +27 -4
  378. package/src/utils/rules/isMaxLength/IsMaxLength.mdx +27 -4
  379. package/src/utils/rules/isMinLength/IsMinLength.mdx +27 -4
  380. package/src/utils/rules/isNotAfterDate/IsNotAfterDate.mdx +27 -4
  381. package/src/utils/rules/isNotAfterToday/IsNotAfterToday.mdx +27 -4
  382. package/src/utils/rules/isNotBeforeDate/IsNotBeforeDate.mdx +27 -4
  383. package/src/utils/rules/isNotBeforeToday/IsNotBeforeToday.mdx +27 -3
  384. package/src/utils/rules/isRequired/IsRequired.mdx +27 -4
  385. package/src/utils/rules/isValidEmail/IsValidEmail.mdx +27 -4
  386. package/dist/components/Tables/common/tableStorageUtils.d.ts +0 -69
  387. package/dist/components/Tables/common/tableUtils.d.ts +0 -79
  388. package/dist/main-DXMoMtj5.js +0 -29904
  389. package/dist/stories/EcoConception/ecoDesignItems.d.ts +0 -4
  390. package/src/components/DownloadBtn/tests/__snapshots__/DownloadBtn.spec.ts.snap +0 -92
  391. package/src/components/Tables/common/tableStorageUtils.ts +0 -127
  392. package/src/components/Tables/common/tableUtils.ts +0 -102
  393. package/src/stories/EcoConception/ecoDesignItems.ts +0 -55
  394. package/src/stories/EcoConception/econception.stories.ts +0 -30
@@ -14,7 +14,7 @@ const meta = {
14
14
  'classes': { description: 'Classes à appliquer à la racine du composant' },
15
15
  'clearable': { description: 'Affiche un bouton permettant de vider le champ' },
16
16
  'counter': { description: 'Défini la valeur du compteur de caractères' },
17
- 'disabled': { description: 'Désactive le champ de texte' },
17
+ 'disabled': { description: 'Désactive le champ de texte' },
18
18
  'fullWidthErrorMsg': { description: 'Donne au messages d’erreurs la largeur totale du composant au lieu de la limiter à la largeur du champ' },
19
19
  'globalMaxWidth': { description: 'Gère la largeur maximale du composant, attend une valeur et une unité valide css (ex : 400px ou 25%)' },
20
20
  'globalMinWidth': { description: 'Gère la largeur minimale du composant, attend une valeur et une unité valide css (ex : 400px ou 25%)' },
@@ -87,19 +87,15 @@ export const Default: Story = {
87
87
  components: { AmeliproTextField },
88
88
  setup() {
89
89
  const model = ref()
90
-
91
- // Optional: Keeps v-model in sync with storybook args
92
90
  watch(() => args.modelValue, (newValue) => {
93
91
  model.value = newValue
94
92
  })
95
93
  return { args, model }
96
94
  },
97
- template: `
98
- <AmeliproTextField
99
- v-bind="args"
100
- v-model="model"
101
- />
102
- `,
95
+ template: `<AmeliproTextField
96
+ v-bind="args"
97
+ v-model="model"
98
+ />`,
103
99
  }),
104
100
  }
105
101
 
@@ -117,7 +113,8 @@ export const Date: Story = {
117
113
  sourceCode: [
118
114
  {
119
115
  name: 'Template',
120
- code: `<template>
116
+ code: `<p>Exemple de champ texte de type date.</p>
117
+ <template>
121
118
  <AmeliproTextField
122
119
  v-model="model"
123
120
  aria-required
@@ -147,26 +144,17 @@ export const Date: Story = {
147
144
  components: { AmeliproTextField },
148
145
  setup() {
149
146
  const model = ref()
150
-
151
- // Optional: Keeps v-model in sync with storybook args
152
147
  watch(() => args.modelValue, (newValue) => {
153
148
  model.value = newValue
154
149
  })
155
150
  return { args, model }
156
151
  },
157
152
  template: `
158
- <AmeliproTextField
159
- :aria-required="args.ariaRequired"
160
- class="mt-2"
161
- :label="args.label"
162
- :max-date="args.maxDate"
163
- :min-date="args.minDate"
164
- :type="args.type"
165
- :unique-id="args.id"
166
- v-bind="args"
167
- v-model="model"
168
- />
169
- `,
153
+ <p>Exemple de champ texte de type date.</p>
154
+ <AmeliproTextField
155
+ v-bind="args"
156
+ v-model="model"
157
+ />`,
170
158
  }),
171
159
  }
172
160
 
@@ -184,7 +172,8 @@ export const Number: Story = {
184
172
  sourceCode: [
185
173
  {
186
174
  name: 'Template',
187
- code: `<template>
175
+ code: `<p>Exemple de champ texte de type number.</p>
176
+ <template>
188
177
  <AmeliproTextField
189
178
  v-model="model"
190
179
  aria-required
@@ -214,25 +203,632 @@ export const Number: Story = {
214
203
  components: { AmeliproTextField },
215
204
  setup() {
216
205
  const model = ref()
206
+ watch(() => args.modelValue, (newValue) => {
207
+ model.value = newValue
208
+ })
209
+ return { args, model }
210
+ },
211
+ template: `<p>Exemple de champ texte de type number.</p>
212
+ <AmeliproTextField
213
+ v-bind="args"
214
+ v-model="model"
215
+ />`,
216
+ }),
217
+ }
217
218
 
218
- // Optional: Keeps v-model in sync with storybook args
219
+ export const Clearable: Story = {
220
+ args: {
221
+ label: 'Champ effaçable',
222
+ modelValue: 'Texte à effacer',
223
+ uniqueId: 'text-clearable',
224
+ clearable: true,
225
+ },
226
+ parameters: {
227
+ sourceCode: [
228
+ {
229
+ name: 'Template',
230
+ code: `<template>
231
+ <p>Le champ peut être effacé grâce à la prop <code>clearable</code>.</p>
232
+ <AmeliproTextField
233
+ v-model="model"
234
+ label="Champ effaçable"
235
+ unique-id="text-clearable"
236
+ clearable
237
+ />
238
+ </template>`,
239
+ },
240
+ {
241
+ name: 'Script',
242
+ code: `<script setup lang="ts">
243
+ import { AmeliproTextField } from '@cnamts/synapse'
244
+ import { ref } from 'vue'
245
+
246
+ const model = ref('Texte à effacer')
247
+ </script>`,
248
+ },
249
+ ],
250
+ },
251
+ render: args => ({
252
+ components: { AmeliproTextField },
253
+ setup() {
254
+ const model = ref('Texte à effacer')
255
+ watch(() => args.modelValue, (newValue) => {
256
+ model.value = String(newValue)
257
+ })
258
+ return { args, model }
259
+ },
260
+ template: `
261
+ <p>Le champ peut être effacé grâce à la prop <code>clearable</code>.</p>
262
+ <AmeliproTextField
263
+ v-bind="args"
264
+ v-model="model"
265
+ />
266
+ `,
267
+ }),
268
+ }
269
+
270
+ export const Counter: Story = {
271
+ args: {
272
+ label: 'Champ avec compteur',
273
+ modelValue: '',
274
+ uniqueId: 'text-counter',
275
+ counter: 20,
276
+ },
277
+ parameters: {
278
+ sourceCode: [
279
+ {
280
+ name: 'Template',
281
+ code: `<template>
282
+ <p>Le champ affiche un compteur de caractères grâce à la prop <code>counter</code>.</p>
283
+ <AmeliproTextField
284
+ v-model="model"
285
+ label="Champ avec compteur"
286
+ unique-id="text-counter"
287
+ :counter="20"
288
+ />
289
+ </template>`,
290
+ },
291
+ {
292
+ name: 'Script',
293
+ code: `<script setup lang="ts">
294
+ import { AmeliproTextField } from '@cnamts/synapse'
295
+ import { ref } from 'vue'
296
+
297
+ const model = ref()
298
+ </script>`,
299
+ },
300
+ ],
301
+ },
302
+ render: args => ({
303
+ components: { AmeliproTextField },
304
+ setup() {
305
+ const model = ref()
306
+ watch(() => args.modelValue, (newValue) => {
307
+ model.value = newValue
308
+ })
309
+ return { args, model }
310
+ },
311
+ template: `
312
+ <p>Le champ affiche un compteur de caractères grâce à la prop <code>counter</code>.</p>
313
+ <AmeliproTextField
314
+ v-bind="args"
315
+ v-model="model"
316
+ />
317
+ `,
318
+ }),
319
+ }
320
+
321
+ export const CustomWidth: Story = {
322
+ args: {
323
+ label: 'Largeur personnalisée',
324
+ modelValue: '',
325
+ uniqueId: 'text-width',
326
+ globalWidth: '400px',
327
+ },
328
+ parameters: {
329
+ sourceCode: [
330
+ {
331
+ name: 'Template',
332
+ code: `<template>
333
+ <p>La largeur du champ est personnalisée grâce à la prop <code>globalWidth</code>.</p>
334
+ <AmeliproTextField
335
+ v-model="model"
336
+ label="Largeur personnalisée"
337
+ unique-id="text-width"
338
+ global-width="400px"
339
+ />
340
+ </template>`,
341
+ },
342
+ {
343
+ name: 'Script',
344
+ code: `<script setup lang="ts">
345
+ import { AmeliproTextField } from '@cnamts/synapse'
346
+ import { ref } from 'vue'
347
+
348
+ const model = ref()
349
+ </script>`,
350
+ },
351
+ ],
352
+ },
353
+ render: args => ({
354
+ components: { AmeliproTextField },
355
+ setup() {
356
+ const model = ref()
357
+ watch(() => args.modelValue, (newValue) => {
358
+ model.value = newValue
359
+ })
360
+ return { args, model }
361
+ },
362
+ template: `
363
+ <p>La largeur du champ est personnalisée grâce à la prop <code>globalWidth</code>.</p>
364
+ <AmeliproTextField
365
+ v-bind="args"
366
+ v-model="model"
367
+ />
368
+ `,
369
+ }),
370
+ }
371
+
372
+ export const Disabled: Story = {
373
+ args: {
374
+ label: 'Champ désactivé',
375
+ modelValue: '',
376
+ uniqueId: 'text-disabled',
377
+ disabled: true,
378
+ },
379
+ parameters: {
380
+ sourceCode: [
381
+ {
382
+ name: 'Template',
383
+ code: `<template>
384
+ <p>Le champ est désactivé grâce à la prop <code>disabled</code>.</p>
385
+ <AmeliproTextField
386
+ v-model="model"
387
+ label="Champ désactivé"
388
+ unique-id="text-disabled"
389
+ disabled
390
+ />
391
+ </template>`,
392
+ },
393
+ {
394
+ name: 'Script',
395
+ code: `<script setup lang="ts">
396
+ import { AmeliproTextField } from '@cnamts/synapse'
397
+ import { ref } from 'vue'
398
+
399
+ const model = ref()
400
+ </script>`,
401
+ },
402
+ ],
403
+ },
404
+ render: args => ({
405
+ components: { AmeliproTextField },
406
+ setup() {
407
+ const model = ref()
408
+ watch(() => args.modelValue, (newValue) => {
409
+ model.value = newValue
410
+ })
411
+ return { args, model }
412
+ },
413
+ template: `
414
+ <p>Le champ est désactivé grâce à la prop <code>disabled</code>.</p>
415
+ <AmeliproTextField
416
+ v-bind="args"
417
+ v-model="model"
418
+ />`,
419
+ }),
420
+ }
421
+
422
+ export const FullWidthErrorMsg: Story = {
423
+ args: {
424
+ label: 'Message d’erreur pleine largeur',
425
+ modelValue: '',
426
+ uniqueId: 'text-fullwidth-error',
427
+ rules: [v => !!v || 'Affichage d’un long message d’erreur pour la démonstration'],
428
+ fullWidthErrorMsg: true,
429
+ inputMaxWidth: '100px',
430
+ },
431
+ parameters: {
432
+ sourceCode: [
433
+ {
434
+ name: 'Template',
435
+ code: `<template>
436
+ <p>Le message d’erreur occupe toute la largeur grâce à la prop <code>fullWidthErrorMsg</code>.</p>
437
+ <AmeliproTextField
438
+ v-model="model"
439
+ label="Message d’erreur pleine largeur"
440
+ unique-id="text-fullwidth-error"
441
+ :rules="[v => !!v || 'Affichage d’un long message d’erreur pour la démonstration']"
442
+ :full-width-error-msg="true"
443
+ input-max-width="100px"
444
+ />
445
+ </template>`,
446
+ },
447
+ {
448
+ name: 'Script',
449
+ code: `<script setup lang="ts">
450
+ import { AmeliproTextField } from '@cnamts/synapse'
451
+ import { ref } from 'vue'
452
+
453
+ const model = ref()
454
+ </script>`,
455
+ },
456
+ ],
457
+ },
458
+ render: args => ({
459
+ components: { AmeliproTextField },
460
+ setup() {
461
+ const model = ref()
462
+ watch(() => args.modelValue, (newValue) => {
463
+ model.value = newValue
464
+ })
465
+ return { args, model }
466
+ },
467
+ template: `
468
+ <p>Le message d’erreur occupe toute la largeur grâce à la prop <code>fullWidthErrorMsg</code>.</p>
469
+ <AmeliproTextField
470
+ v-bind="args"
471
+ v-model="model"
472
+ />
473
+ `,
474
+ }),
475
+ }
476
+
477
+ export const HideErrorMessage: Story = {
478
+ args: {
479
+ label: 'Masquer le message d’erreur',
480
+ modelValue: '',
481
+ uniqueId: 'text-hide-error',
482
+ rules: [v => !!v || 'Erreur obligatoire'],
483
+ hideErrorMessage: true,
484
+ },
485
+ parameters: {
486
+ sourceCode: [
487
+ {
488
+ name: 'Template',
489
+ code: `<template>
490
+ <p>Le message d’erreur est masqué grâce à la prop <code>hideErrorMessage</code>.</p>
491
+ <AmeliproTextField
492
+ v-model="model"
493
+ label="Masquer le message d’erreur"
494
+ unique-id="text-hide-error"
495
+ :rules="[v => !!v || 'Erreur obligatoire']"
496
+ :hide-error-message="true"
497
+ />
498
+ </template>`,
499
+ },
500
+ {
501
+ name: 'Script',
502
+ code: `<script setup lang="ts">
503
+ import { AmeliproTextField } from '@cnamts/synapse'
504
+ import { ref } from 'vue'
505
+
506
+ const model = ref()
507
+ </script>`,
508
+ },
509
+ ],
510
+ },
511
+ render: args => ({
512
+ components: { AmeliproTextField },
513
+ setup() {
514
+ const model = ref()
515
+ watch(() => args.modelValue, (newValue) => {
516
+ model.value = newValue
517
+ })
518
+ return { args, model }
519
+ },
520
+ template: `
521
+ <p>Le message d’erreur est masqué grâce à la prop <code>hideErrorMessage</code>.</p>
522
+ <AmeliproTextField
523
+ v-bind="args"
524
+ v-model="model"
525
+ />
526
+ `,
527
+ }),
528
+ }
529
+
530
+ export const Horizontal: Story = {
531
+ args: {
532
+ label: 'Champ horizontal',
533
+ modelValue: '',
534
+ uniqueId: 'text-horizontal',
535
+ horizontal: true,
536
+ },
537
+ parameters: {
538
+ sourceCode: [
539
+ {
540
+ name: 'Template',
541
+ code: `<template>
542
+ <p>Le champ est affiché en mode horizontal grâce à la prop <code>horizontal</code>.</p>
543
+ <AmeliproTextField
544
+ v-model="model"
545
+ label="Champ horizontal"
546
+ unique-id="text-horizontal"
547
+ horizontal
548
+ />
549
+ </template>`,
550
+ },
551
+ {
552
+ name: 'Script',
553
+ code: `<script setup lang="ts">
554
+ import { AmeliproTextField } from '@cnamts/synapse'
555
+ import { ref } from 'vue'
556
+
557
+ const model = ref()
558
+ </script>`,
559
+ },
560
+ ],
561
+ },
562
+ render: args => ({
563
+ components: { AmeliproTextField },
564
+ setup() {
565
+ const model = ref()
566
+ watch(() => args.modelValue, (newValue) => {
567
+ model.value = newValue
568
+ })
569
+ return { args, model }
570
+ },
571
+ template: `
572
+ <p>Le champ est affiché en mode horizontal grâce à la prop <code>horizontal</code>.</p>
573
+ <AmeliproTextField
574
+ v-bind="args"
575
+ v-model="model"
576
+ />
577
+ `,
578
+ }),
579
+ }
580
+
581
+ export const LabelMaxWidth: Story = {
582
+ args: {
583
+ label: 'Un très long label dont la largeur est personnalisée',
584
+ modelValue: '',
585
+ uniqueId: 'text-label-maxwidth',
586
+ labelMaxWidth: '200px',
587
+ },
588
+ parameters: {
589
+ sourceCode: [
590
+ {
591
+ name: 'Template',
592
+ code: `<template>
593
+ <p>La largeur du label est limitée grâce à la prop <code>labelMaxWidth</code>.</p>
594
+ <AmeliproTextField
595
+ v-model="model"
596
+ label="Un très long label dont la largeur est personnalisée"
597
+ unique-id="text-label-maxwidth"
598
+ label-max-width="200px"
599
+ />
600
+ </template>`,
601
+ },
602
+ {
603
+ name: 'Script',
604
+ code: `<script setup lang="ts">
605
+ import { AmeliproTextField } from '@cnamts/synapse'
606
+ import { ref } from 'vue'
607
+
608
+ const model = ref()
609
+ </script>`,
610
+ },
611
+ ],
612
+ },
613
+ render: args => ({
614
+ components: { AmeliproTextField },
615
+ setup() {
616
+ const model = ref()
617
+ watch(() => args.modelValue, (newValue) => {
618
+ model.value = newValue
619
+ })
620
+ return { args, model }
621
+ },
622
+ template: `
623
+ <p>La largeur du label est limitée grâce à la prop <code>labelMaxWidth</code>.</p>
624
+ <AmeliproTextField
625
+ v-bind="args"
626
+ v-model="model"
627
+ />
628
+ `,
629
+ }),
630
+ }
631
+
632
+ export const Placeholder: Story = {
633
+ args: {
634
+ label: 'Champ avec placeholder',
635
+ modelValue: '',
636
+ uniqueId: 'text-placeholder',
637
+ placeholder: 'Saisissez votre texte ici...',
638
+ },
639
+ parameters: {
640
+ sourceCode: [
641
+ {
642
+ name: 'Template',
643
+ code: `<template>
644
+ <p>Le champ affiche un placeholder grâce à la prop <code>placeholder</code>.</p>
645
+ <AmeliproTextField
646
+ v-model="model"
647
+ label="Champ avec placeholder"
648
+ unique-id="text-placeholder"
649
+ placeholder="Saisissez votre texte ici..."
650
+ />
651
+ </template>`,
652
+ },
653
+ {
654
+ name: 'Script',
655
+ code: `<script setup lang="ts">
656
+ import { AmeliproTextField } from '@cnamts/synapse'
657
+ import { ref } from 'vue'
658
+
659
+ const model = ref()
660
+ </script>`,
661
+ },
662
+ ],
663
+ },
664
+ render: args => ({
665
+ components: { AmeliproTextField },
666
+ setup() {
667
+ const model = ref()
668
+ watch(() => args.modelValue, (newValue) => {
669
+ model.value = newValue
670
+ })
671
+ return { args, model }
672
+ },
673
+ template: `
674
+ <p>Le champ affiche un placeholder grâce à la prop <code>placeholder</code>.</p>
675
+ <AmeliproTextField
676
+ v-bind="args"
677
+ v-model="model"
678
+ />
679
+ `,
680
+ }),
681
+ }
682
+
683
+ export const Readonly: Story = {
684
+ args: {
685
+ label: 'Lecture seule',
686
+ modelValue: 'Valeur non modifiable',
687
+ uniqueId: 'text-readonly',
688
+ readonly: true,
689
+ },
690
+ parameters: {
691
+ sourceCode: [
692
+ {
693
+ name: 'Template',
694
+ code: `<template>
695
+ <p>Le champ est en lecture seule grâce à la prop <code>readonly</code>.</p>
696
+ <AmeliproTextField
697
+ v-model="model"
698
+ label="Lecture seule"
699
+ unique-id="text-readonly"
700
+ readonly
701
+ />
702
+ </template>`,
703
+ },
704
+ {
705
+ name: 'Script',
706
+ code: `<script setup lang="ts">
707
+ import { AmeliproTextField } from '@cnamts/synapse'
708
+ import { ref } from 'vue'
709
+
710
+ const model = ref('Valeur non modifiable')
711
+ </script>`,
712
+ },
713
+ ],
714
+ },
715
+ render: args => ({
716
+ components: { AmeliproTextField },
717
+ setup() {
718
+ const model = ref('Valeur non modifiable')
719
+ watch(() => args.modelValue, (newValue) => {
720
+ model.value = String(newValue)
721
+ })
722
+ return { args, model }
723
+ },
724
+ template: `
725
+ <p>Le champ est en lecture seule grâce à la prop <code>readonly</code>.</p>
726
+ <AmeliproTextField
727
+ v-bind="args"
728
+ v-model="model"
729
+ />
730
+ `,
731
+ }),
732
+ }
733
+
734
+ export const Required: Story = {
735
+ args: {
736
+ label: 'Champ requis',
737
+ modelValue: '',
738
+ uniqueId: 'text-required',
739
+ ariaRequired: true,
740
+ },
741
+ parameters: {
742
+ sourceCode: [
743
+ {
744
+ name: 'Template',
745
+ code: `<template>
746
+ <p>Le champ est requis grâce à la prop <code>ariaRequired</code>.</p>
747
+ <AmeliproTextField
748
+ v-model="model"
749
+ label="Champ requis"
750
+ unique-id="text-required"
751
+ aria-required
752
+ />
753
+ </template>`,
754
+ },
755
+ {
756
+ name: 'Script',
757
+ code: `<script setup lang="ts">
758
+ import { AmeliproTextField } from '@cnamts/synapse'
759
+ import { ref } from 'vue'
760
+
761
+ const model = ref()
762
+ </script>`,
763
+ },
764
+ ],
765
+ },
766
+ render: args => ({
767
+ components: { AmeliproTextField },
768
+ setup() {
769
+ const model = ref()
770
+ watch(() => args.modelValue, (newValue) => {
771
+ model.value = newValue
772
+ })
773
+ return { args, model }
774
+ },
775
+ template: `
776
+ <p>Le champ est requis grâce à la prop <code>ariaRequired</code>.</p>
777
+ <AmeliproTextField
778
+ v-bind="args"
779
+ v-model="model"
780
+ />
781
+ `,
782
+ }),
783
+ }
784
+
785
+ export const Validation: Story = {
786
+ args: {
787
+ label: 'Champ avec validation',
788
+ modelValue: '',
789
+ uniqueId: 'text-validation',
790
+ rules: [v => !!v || 'Ce champ est obligatoire'],
791
+ },
792
+ parameters: {
793
+ sourceCode: [
794
+ {
795
+ name: 'Template',
796
+ code: `<template>
797
+ <p>Le champ utilise la prop <code>rules</code> pour valider la saisie.</p>
798
+ <AmeliproTextField
799
+ v-model="model"
800
+ label="Champ avec validation"
801
+ unique-id="text-validation"
802
+ :rules="[v => !!v || 'Ce champ est obligatoire']"
803
+ />
804
+ </template>`,
805
+ },
806
+ {
807
+ name: 'Script',
808
+ code: `<script setup lang="ts">
809
+ import { AmeliproTextField } from '@cnamts/synapse'
810
+ import { ref } from 'vue'
811
+
812
+ const model = ref()
813
+ </script>`,
814
+ },
815
+ ],
816
+ },
817
+ render: args => ({
818
+ components: { AmeliproTextField },
819
+ setup() {
820
+ const model = ref()
219
821
  watch(() => args.modelValue, (newValue) => {
220
822
  model.value = newValue
221
823
  })
222
824
  return { args, model }
223
825
  },
224
826
  template: `
225
- <AmeliproTextField
226
- v-bind="args"
227
- :aria-required="args.ariaRequired"
228
- class="mt-2"
229
- :label="args.label"
230
- :max-number="args.maxNumber"
231
- :min-number="args.minNumber"
232
- :type="args.type"
233
- :uniqueId="args.id"
234
- v-model="model"
235
- />
236
- `,
827
+ <p>Le champ utilise la prop <code>rules</code> pour valider la saisie.</p>
828
+ <AmeliproTextField
829
+ v-bind="args"
830
+ v-model="model"
831
+ />
832
+ `,
237
833
  }),
238
834
  }