@cnamts/synapse 1.0.14 → 1.0.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (395) hide show
  1. package/README.md +0 -0
  2. package/dist/{DateFilter-isr8mXVb.js → DateFilter-DSwJUvBu.js} +12 -12
  3. package/dist/{NumberFilter-BOe7DqWX.js → NumberFilter-CwsbYyz4.js} +1 -1
  4. package/dist/{PeriodFilter-WTprpO40.js → PeriodFilter-csnEZU30.js} +1 -1
  5. package/dist/{SelectFilter-CqlG5dmI.js → SelectFilter-Bd5fndzR.js} +1 -1
  6. package/dist/{TextFilter-fVW5bsRw.js → TextFilter-B6gxzq2a.js} +1 -1
  7. package/dist/components/Amelipro/AmeliproAutoCompleteField/AmeliproAutoCompleteField.d.ts +2836 -2845
  8. package/dist/components/Amelipro/AmeliproCallback/AmeliproCallback.d.ts +3 -3
  9. package/dist/components/Amelipro/AmeliproCarousel/AmeliproCarousel.d.ts +7 -7
  10. package/dist/components/Amelipro/AmeliproCarousel/AmeliproCarouselItem/AmeliproCarouselItem.d.ts +3 -3
  11. package/dist/components/Amelipro/AmeliproCheckbox/AmeliproCheckbox.d.ts +3 -3
  12. package/dist/components/Amelipro/AmeliproCheckboxGroup/AmeliproCheckboxGroup.d.ts +3 -3
  13. package/dist/components/Amelipro/AmeliproClickableTile/AmeliproClickableTile.d.ts +3 -3
  14. package/dist/components/Amelipro/AmeliproCustomSelector/AmeliproCustomSelector.d.ts +3 -3
  15. package/dist/components/Amelipro/AmeliproErrorTemplate/AmeliproErrorTemplate.d.ts +3 -3
  16. package/dist/components/Amelipro/AmeliproFirstLogin/AmeliproFirstLogin.d.ts +3 -3
  17. package/dist/components/Amelipro/AmeliproFooter/AmeliproFooter.d.ts +18 -18
  18. package/dist/components/Amelipro/AmeliproHeader/AmeliproHeader.d.ts +9 -9
  19. package/dist/components/Amelipro/AmeliproHeader/AmeliproHeaderBar/AmeliproHeaderBar.d.ts +3 -3
  20. package/dist/components/Amelipro/AmeliproHeader/AmeliproHeaderBar/AmeliproHeaderBrandSection/AmeliproHeaderBrandSection.d.ts +3 -3
  21. package/dist/components/Amelipro/AmeliproIcon/AmeliproIcon.d.ts +3 -1
  22. package/dist/components/Amelipro/AmeliproIconBtn/AmeliproIconBtn.d.ts +5 -3
  23. package/dist/components/Amelipro/AmeliproIllustratedRadioGroup/AmeliproIllustratedRadioGroup.d.ts +3 -3
  24. package/dist/components/Amelipro/AmeliproMenu/AmeliproMenu.d.ts +3 -3
  25. package/dist/components/Amelipro/AmeliproMultipleFoldingCard/AmeliproMultipleFoldingCard.d.ts +1 -1
  26. package/dist/components/Amelipro/AmeliproPagination/AmeliproPaginationBtn/AmeliproPaginationBtn.d.ts +3 -3
  27. package/dist/components/Amelipro/AmeliproPatientBanner/AmeliproPatientBanner.d.ts +3 -3
  28. package/dist/components/Amelipro/AmeliproPatientLogged/AmeliproPatientLogged.d.ts +9 -0
  29. package/dist/components/Amelipro/AmeliproPostalAddressField/AmeliproPostalAddressCityRow/AmeliproPostalAddressCityRow.d.ts +1288 -1284
  30. package/dist/components/Amelipro/AmeliproPostalAddressField/AmeliproPostalAddressField.d.ts +1936 -1930
  31. package/dist/components/Amelipro/AmeliproRadioGroup/AmeliproRadioGroup.d.ts +3 -3
  32. package/dist/components/Amelipro/AmeliproSelect/AmeliproSelect.d.ts +2838 -2865
  33. package/dist/components/Amelipro/AmeliproStateTile/AmeliproStateTile.d.ts +3 -3
  34. package/dist/components/Amelipro/AmeliproTabs/AmeliproTabs.d.ts +2843 -2870
  35. package/dist/components/Amelipro/AmeliproTextArea/AmeliproTextArea.d.ts +397 -397
  36. package/dist/components/Amelipro/AmeliproTextField/AmeliproTextField.d.ts +642 -640
  37. package/dist/components/Amelipro/AmeliproTileBtn/AmeliproTileBtn.d.ts +233 -5
  38. package/dist/components/Amelipro/AmeliproTransmission/AmeliproTransmission.d.ts +9 -9
  39. package/dist/components/Captcha/CaptchaHelpdesk.d.ts +6 -0
  40. package/dist/components/CookieBanner/CookieBanner.d.ts +117 -119
  41. package/dist/components/CookiesSelection/CookiesInformation/CookiesInformation.d.ts +484 -484
  42. package/dist/components/CookiesSelection/CookiesSelection.d.ts +104 -106
  43. package/dist/components/Customs/Selects/SelectBtnField/SelectBtnField.d.ts +14 -10
  44. package/dist/components/Customs/Selects/SySelect/SySelect.d.ts +118 -129
  45. package/dist/components/Customs/Selects/SySelect/composables/useSySelectKeyboard.d.ts +1 -3
  46. package/dist/components/Customs/SyCheckbox/SyCheckbox.d.ts +1 -1
  47. package/dist/components/Customs/SyForm/SyForm.d.ts +60 -53
  48. package/dist/components/Customs/SyRadioGroup/SyRadioGroup.d.ts +88 -0
  49. package/dist/components/Customs/SyRadioGroup/locales.d.ts +3 -0
  50. package/dist/components/Customs/SyTextField/SyTextField.d.ts +644 -642
  51. package/dist/components/DataList/DataList.d.ts +6 -1
  52. package/dist/components/DataListGroup/DataListGroup.d.ts +14 -2
  53. package/dist/components/DataListItem/DataListItem.d.ts +3 -0
  54. package/dist/components/DatePicker/CalendarMode/DatePicker.d.ts +2988 -3100
  55. package/dist/components/DatePicker/ComplexDatePicker/ComplexDatePicker.d.ts +1458 -1558
  56. package/dist/components/DatePicker/DateTextInput/DateTextInput.d.ts +655 -651
  57. package/dist/components/DatePicker/composables/index.d.ts +4 -0
  58. package/dist/components/DatePicker/composables/useAsteriskDisplay.d.ts +1 -1
  59. package/dist/components/DatePicker/composables/useCalendarKeyboardNavigation.d.ts +11 -0
  60. package/dist/components/DatePicker/composables/useDatePickerState.d.ts +25 -0
  61. package/dist/components/DatePicker/composables/useDateTextField.d.ts +61 -0
  62. package/dist/components/DatePicker/composables/useHolidayHighlighting.d.ts +15 -0
  63. package/dist/components/DatePicker/constants/messages.d.ts +0 -1
  64. package/dist/components/DialogBox/DialogBox.d.ts +175 -177
  65. package/dist/components/FilterSideBar/FilterSideBar.d.ts +161 -171
  66. package/dist/components/FooterBar/FooterBar.d.ts +5 -5
  67. package/dist/components/HeaderBar/HeaderBar.d.ts +2 -2
  68. package/dist/components/HeaderBar/HeaderLogo/HeaderLogo.d.ts +1 -1
  69. package/dist/components/HeaderNavigationBar/HeaderNavigationBar.d.ts +1 -1
  70. package/dist/components/HeaderToolbar/HeaderToolbar.d.ts +234 -258
  71. package/dist/components/LangBtn/LangBtn.d.ts +173 -179
  72. package/dist/components/LogoBrandSection/LogoBrandSection.d.ts +1 -1
  73. package/dist/components/LunarCalendar/LunarCalendar.d.ts +29 -0
  74. package/dist/components/LunarCalendar/useLunarCalendarRules.d.ts +5 -0
  75. package/dist/components/LunarCalendar/useLunarCalendarValidation.d.ts +13 -0
  76. package/dist/components/NirField/NirField.d.ts +1296 -1292
  77. package/dist/components/PaginatedTable/PaginatedTable.d.ts +1 -1
  78. package/dist/components/PeriodField/PeriodField.d.ts +5844 -6068
  79. package/dist/components/PhoneField/PhoneField.d.ts +645 -643
  80. package/dist/components/SyAlert/SyAlert.d.ts +31 -31
  81. package/dist/components/SyTextArea/SyTextArea.d.ts +395 -395
  82. package/dist/components/Tables/SyServerTable/SyServerTable.d.ts +193 -227
  83. package/dist/components/Tables/SyTable/SyTable.d.ts +192 -226
  84. package/dist/components/Tables/common/SyTableFilter.d.ts +1 -1
  85. package/dist/components/Tables/common/SyTablePagination.d.ts +118 -129
  86. package/dist/components/Tables/common/TableHeader.d.ts +52 -2
  87. package/dist/components/Tables/common/filters/DateFilter.d.ts +1 -1
  88. package/dist/components/Tables/common/filters/NumberFilter.d.ts +1 -1
  89. package/dist/components/Tables/common/filters/PeriodFilter.d.ts +1 -1
  90. package/dist/components/Tables/common/filters/SelectFilter.d.ts +1 -1
  91. package/dist/components/Tables/common/filters/TextFilter.d.ts +1 -1
  92. package/dist/components/Tables/common/locales.d.ts +1 -0
  93. package/dist/components/Tables/common/organizeColumns/OrganizeColumns.d.ts +86 -90
  94. package/dist/components/Tables/common/tableFilterUtils.d.ts +2 -2
  95. package/dist/components/Tables/common/types.d.ts +3 -2
  96. package/dist/components/Tables/common/useTableCheckbox.d.ts +3 -2
  97. package/dist/components/Tables/common/useTableFilter.d.ts +1 -1
  98. package/dist/components/Tables/common/useTableItems.d.ts +6 -8
  99. package/dist/components/UploadWorkflow/UploadWorkflow.d.ts +18 -18
  100. package/dist/components/index.d.ts +2 -0
  101. package/dist/design-system-v3.js +101 -98
  102. package/dist/design-system-v3.umd.cjs +25 -33
  103. package/dist/main-DkZZpa3S.js +35197 -0
  104. package/dist/style.css +1 -1
  105. package/dist/utils/formatNir/formatNir.d.ts +2 -0
  106. package/dist/utils/index.d.ts +1 -0
  107. package/dist/utils/insertAt.d.ts +1 -0
  108. package/dist/utils/rules/validateDateValue.d.ts +14 -0
  109. package/dist/vuetifyConfig.d.ts +6 -6
  110. package/package.json +4 -4
  111. package/src/assets/tokens.scss +2 -0
  112. package/src/components/Amelipro/AmeliproAccordion/AmeliproAccordionTemplate/__tests__/__snapshots__/AmeliproAccordionTemplate.spec.ts.snap +1 -18
  113. package/src/components/Amelipro/AmeliproAccordion/__tests__/AmeliproAccordion.spec.ts +178 -9
  114. package/src/components/Amelipro/AmeliproAccordion/__tests__/__snapshots__/AmeliproAccordion.spec.ts.snap +28 -121
  115. package/src/components/Amelipro/AmeliproAccordionFrieze/__tests__/__snapshots__/AmeliproAccordionFrieze.spec.ts.snap +15 -270
  116. package/src/components/Amelipro/AmeliproAccordionList/__tests__/__snapshots__/AmeliproAccordionList.spec.ts.snap +12 -194
  117. package/src/components/Amelipro/AmeliproAccordionResult/AmeliproAccordionResultTemplate/__tests__/__snapshots__/AmeliproAccordionResultTemplate.spec.ts.snap +1 -18
  118. package/src/components/Amelipro/AmeliproAccordionResult/__tests__/__snapshots__/AmeliproAccordionResult.spec.ts.snap +1 -18
  119. package/src/components/Amelipro/AmeliproAccordionResultList/__tests__/__snapshots__/AmeliproAccordionResultList.spec.ts.snap +12 -194
  120. package/src/components/Amelipro/AmeliproAutoCompleteField/AmeliproAutoCompleteField.stories.ts +9 -9
  121. package/src/components/Amelipro/AmeliproAutoCompleteField/AmeliproAutoCompleteField.vue +5 -4
  122. package/src/components/Amelipro/AmeliproAutoCompleteField/__tests__/AmeliproAutoCompleteField.spec.ts +6 -6
  123. package/src/components/Amelipro/AmeliproAutoCompleteField/__tests__/__snapshots__/AmeliproAutoCompleteField.spec.ts.snap +2 -0
  124. package/src/components/Amelipro/AmeliproBadge/__tests__/AmeliproBadge.spec.ts +135 -9
  125. package/src/components/Amelipro/AmeliproBadge/__tests__/__snapshots__/AmeliproBadge.spec.ts.snap +20 -5
  126. package/src/components/Amelipro/AmeliproBreadcrumb/__tests__/AmeliproBreadcrumb.spec.ts +195 -28
  127. package/src/components/Amelipro/AmeliproBreadcrumb/__tests__/__snapshots__/AmeliproBreadcrumb.spec.ts.snap +193 -124
  128. package/src/components/Amelipro/AmeliproCaptcha/AmeliproCaptcha.vue +1 -1
  129. package/src/components/Amelipro/AmeliproCaptcha/__tests__/AmeliproCaptcha.spec.ts +364 -12
  130. package/src/components/Amelipro/AmeliproCaptcha/__tests__/__snapshots__/AmeliproCaptcha.spec.ts.snap +30 -390
  131. package/src/components/Amelipro/AmeliproCarousel/__tests__/__snapshots__/AmeliproCarousel.spec.ts.snap +4 -36
  132. package/src/components/Amelipro/AmeliproCheckbox/AmeliproCheckbox.stories.ts +10 -10
  133. package/src/components/Amelipro/AmeliproCheckbox/AmeliproCheckbox.vue +7 -7
  134. package/src/components/Amelipro/AmeliproCheckbox/__tests__/AmeliproCheckbox.spec.ts +5 -5
  135. package/src/components/Amelipro/AmeliproCheckbox/__tests__/__snapshots__/AmeliproCheckbox.spec.ts.snap +1 -1
  136. package/src/components/Amelipro/AmeliproCheckboxGroup/AmeliproCheckboxGroup.stories.ts +7 -6
  137. package/src/components/Amelipro/AmeliproCheckboxGroup/AmeliproCheckboxGroup.vue +6 -6
  138. package/src/components/Amelipro/AmeliproCheckboxGroup/__tests__/AmeliproCheckboxGroup.spec.ts +6 -6
  139. package/src/components/Amelipro/AmeliproCheckboxGroup/__tests__/__snapshots__/AmeliproCheckboxGroup.spec.ts.snap +2 -2
  140. package/src/components/Amelipro/AmeliproClickableTile/tests/__snapshots__/AmeliproClickableTile.spec.ts.snap +2 -43
  141. package/src/components/Amelipro/AmeliproContentLayout/__tests__/AmeliproContentLayout.spec.ts +80 -9
  142. package/src/components/Amelipro/AmeliproContentLayout/__tests__/__snapshots__/AmeliproContentLayout.spec.ts.snap +25 -4
  143. package/src/components/Amelipro/AmeliproCopyBtn/__tests__/__snapshots__/AmeliproCopyBtn.spec.ts.snap +1 -13
  144. package/src/components/Amelipro/AmeliproCustomSelector/AmeliproCustomSelector.stories.ts +7 -6
  145. package/src/components/Amelipro/AmeliproCustomSelector/AmeliproCustomSelector.vue +5 -5
  146. package/src/components/Amelipro/AmeliproCustomSelector/__tests__/AmeliproCustomSelector.spec.ts +187 -39
  147. package/src/components/Amelipro/AmeliproCustomSelector/__tests__/__snapshots__/AmeliproCustomSelector.spec.ts.snap +147 -147
  148. package/src/components/Amelipro/AmeliproDentalChart/tests/__snapshots__/AmeliproDentalChart.spec.ts.snap +1 -1
  149. package/src/components/Amelipro/AmeliproDialog/__tests__/__snapshots__/AmeliproDialog.spec.ts.snap +0 -2
  150. package/src/components/Amelipro/AmeliproErrorTemplate/__tests__/AmeliproErrorTemplate.spec.ts +160 -20
  151. package/src/components/Amelipro/AmeliproErrorTemplate/__tests__/__snapshots__/AmeliproErrorTemplate.spec.ts.snap +34 -177
  152. package/src/components/Amelipro/AmeliproFilePreview/AmeliproFilePreview.vue +1 -0
  153. package/src/components/Amelipro/AmeliproFilePreview/__tests__/AmeliproFilePreview.spec.ts +248 -19
  154. package/src/components/Amelipro/AmeliproFilePreview/__tests__/__snapshots__/AmeliproFilePreview.spec.ts.snap +34 -203
  155. package/src/components/Amelipro/AmeliproFirstLogin/__tests__/__snapshots__/AmeliproFirstLogin.spec.ts.snap +6 -144
  156. package/src/components/Amelipro/AmeliproIcon/AmeliproIcon.vue +20 -2
  157. package/src/components/Amelipro/AmeliproIcon/__tests__/__snapshots__/AmeliproIcon.spec.ts.snap +1 -25
  158. package/src/components/Amelipro/AmeliproIllustratedRadioGroup/AmeliproIllustratedRadioGroup.stories.ts +5 -5
  159. package/src/components/Amelipro/AmeliproIllustratedRadioGroup/AmeliproIllustratedRadioGroup.vue +6 -6
  160. package/src/components/Amelipro/AmeliproIllustratedRadioGroup/__tests__/AmeliproIllustratedRadioGroup.spec.ts +22 -22
  161. package/src/components/Amelipro/AmeliproIllustratedRadioGroup/__tests__/__snapshots__/AmeliproIllustratedRadioGroup.spec.ts.snap +2 -2
  162. package/src/components/Amelipro/AmeliproMultipleFoldingCard/__tests__/AmeliproMultipleFoldingCard.spec.ts +304 -0
  163. package/src/components/Amelipro/AmeliproMultipleFoldingCard/__tests__/__snapshots__/AmeliproMultipleFoldingCard.spec.ts.snap +373 -0
  164. package/src/components/Amelipro/AmeliproPatientLogged/AmeliproPatientLogged.stories.ts +2 -0
  165. package/src/components/Amelipro/AmeliproPatientLogged/AmeliproPatientLogged.vue +28 -2
  166. package/src/components/Amelipro/AmeliproPatientLogged/__tests__/__snapshots__/AmeliproPatientLogged.spec.ts.snap +9 -173
  167. package/src/components/Amelipro/AmeliproPatientLogin/AmeliproPatientLoginForm/AmeliproPatientLoginForm.vue +1 -1
  168. package/src/components/Amelipro/AmeliproPostalAddressField/AmeliproPostalAddressCityRow/AmeliproPostalAddressCityRow.vue +162 -72
  169. package/src/components/Amelipro/AmeliproPostalAddressField/AmeliproPostalAddressCityRow/__tests__/AmeliproPostalAddressCityRow.spec.ts +2 -2
  170. package/src/components/Amelipro/AmeliproPostalAddressField/AmeliproPostalAddressCityRow/__tests__/__snapshots__/AmeliproPostalAddressCityRow.spec.ts.snap +6 -39
  171. package/src/components/Amelipro/AmeliproPostalAddressField/AmeliproPostalAddressField.stories.ts +3 -3
  172. package/src/components/Amelipro/AmeliproPostalAddressField/AmeliproPostalAddressField.vue +8 -8
  173. package/src/components/Amelipro/AmeliproPostalAddressField/{tests → __tests__}/AmeliproPostalAddressField.spec.ts +2 -2
  174. package/src/components/Amelipro/AmeliproPostalAddressField/{tests → __tests__}/__snapshots__/AmeliproPostalAddressField.spec.ts.snap +11 -52
  175. package/src/components/Amelipro/AmeliproRadioGroup/AmeliproRadioGroup.stories.ts +7 -7
  176. package/src/components/Amelipro/AmeliproRadioGroup/AmeliproRadioGroup.vue +8 -8
  177. package/src/components/Amelipro/AmeliproRadioGroup/__tests__/AmeliproRadioGroup.spec.ts +6 -6
  178. package/src/components/Amelipro/AmeliproRadioGroup/__tests__/__snapshots__/AmeliproRadioGroup.spec.ts.snap +2 -2
  179. package/src/components/Amelipro/AmeliproResultList/__tests__/__snapshots__/AmeliproResultList.spec.ts.snap +2 -14
  180. package/src/components/Amelipro/AmeliproSelect/AmeliproSelect.stories.ts +7 -7
  181. package/src/components/Amelipro/AmeliproSelect/AmeliproSelect.vue +4 -4
  182. package/src/components/Amelipro/AmeliproSelect/__tests__/AmeliproSelect.spec.ts +12 -12
  183. package/src/components/Amelipro/AmeliproStepper/AmeliproStepper.vue +2 -2
  184. package/src/components/Amelipro/AmeliproStepper/__tests__/__snapshots__/AmeliproStepper.spec.ts.snap +2 -2
  185. package/src/components/Amelipro/AmeliproTable/AmeliproTable.vue +2 -2
  186. package/src/components/Amelipro/AmeliproTable/__tests__/AmeliproTable.spec.ts +463 -68
  187. package/src/components/Amelipro/AmeliproTable/__tests__/__snapshots__/AmeliproTable.spec.ts.snap +176 -511
  188. package/src/components/Amelipro/AmeliproTextArea/AmeliproTextArea.stories.ts +6 -6
  189. package/src/components/Amelipro/AmeliproTextArea/AmeliproTextArea.vue +4 -4
  190. package/src/components/Amelipro/AmeliproTextArea/__tests__/AmeliproTextArea.spec.ts +3 -3
  191. package/src/components/Amelipro/AmeliproTextArea/__tests__/__snapshots__/AmeliproTextArea.spec.ts.snap +1 -2
  192. package/src/components/Amelipro/AmeliproTextField/AmeliproTextField.stories.ts +10 -10
  193. package/src/components/Amelipro/AmeliproTextField/AmeliproTextField.vue +4 -4
  194. package/src/components/Amelipro/AmeliproTextField/__tests__/AmeliproTextField.spec.ts +5 -5
  195. package/src/components/Amelipro/AmeliproTextField/tests/__snapshots__/AmeliproTextField.spec.ts.snap +162 -0
  196. package/src/components/Amelipro/AmeliproTileBtn/AmeliproTileBtn.stories.ts +44 -0
  197. package/src/components/Amelipro/AmeliproTileBtn/AmeliproTileBtn.vue +79 -1
  198. package/src/components/Amelipro/AmeliproTooltips/__tests__/__snapshots__/AmeliproTooltips.spec.ts.snap +0 -2
  199. package/src/components/Amelipro/AmeliproUpload/AmeliproUpload.stories.ts +2 -2
  200. package/src/components/Amelipro/AmeliproUpload/AmeliproUpload.vue +21 -7
  201. package/src/components/Amelipro/AmeliproUpload/__tests__/AmeliproUpload.spec.ts +252 -44
  202. package/src/components/Amelipro/AmeliproUpload/__tests__/__snapshots__/AmeliproUpload.spec.ts.snap +166 -0
  203. package/src/components/Amelipro/ServiceMenu/ServiceBtn/__tests__/ServiceBtn.spec.ts +137 -0
  204. package/src/components/Amelipro/ServiceMenu/ServiceBtn/__tests__/__snapshots__/ServiceBtn.spec.ts.snap +56 -0
  205. package/src/components/Amelipro/ServiceMenu/ServiceList/__tests__/ServiceList.spec.ts +116 -0
  206. package/src/components/Amelipro/ServiceMenu/ServiceList/__tests__/__snapshots__/ServiceList.spec.ts.snap +58 -0
  207. package/src/components/Amelipro/ServiceMenu/ServiceMenuContent/__tests__/ServiceMenuContent.spec.ts +118 -0
  208. package/src/components/Amelipro/ServiceMenu/ServiceMenuContent/__tests__/__snapshots__/ServiceMenuContent.spec.ts.snap +151 -0
  209. package/src/components/Amelipro/ServiceMenu/__tests__/ServiceMenu.spec.ts +259 -0
  210. package/src/components/Amelipro/ServiceMenu/__tests__/__snapshots__/ServiceMenu.spec.ts.snap +102 -0
  211. package/src/components/Amelipro/StructureMenu/StructureBtn/__tests__/StructureBtn.spec.ts +90 -0
  212. package/src/components/Amelipro/StructureMenu/StructureBtn/__tests__/__snapshots__/StructureBtn.spec.ts.snap +63 -0
  213. package/src/components/Amelipro/StructureMenu/StructureItem/__tests__/StructureItem.spec.ts +133 -0
  214. package/src/components/Amelipro/StructureMenu/StructureItem/__tests__/__snapshots__/StructureItem.spec.ts.snap +143 -0
  215. package/src/components/Amelipro/StructureMenu/StructureList/__tests__/StructureList.spec.ts +190 -0
  216. package/src/components/Amelipro/StructureMenu/StructureList/__tests__/__snapshots__/StructureList.spec.ts.snap +109 -0
  217. package/src/components/Amelipro/StructureMenu/StructureTabs/__tests__/StructureTabs.spec.ts +159 -0
  218. package/src/components/Amelipro/StructureMenu/StructureTabs/__tests__/__snapshots__/StructureTabs.spec.ts.snap +103 -0
  219. package/src/components/Amelipro/StructureMenu/__tests__/StructureMenu.spec.ts +165 -0
  220. package/src/components/Amelipro/StructureMenu/__tests__/__snapshots__/StructureMenu.spec.ts.snap +39 -0
  221. package/src/components/Amelipro/UserInformationSummary/__tests__/UserInformationSummary.spec.ts +140 -0
  222. package/src/components/Amelipro/UserInformationSummary/{tests → __tests__}/__snapshots__/UserInformationSummary.spec.ts.snap +17 -24
  223. package/src/components/Amelipro/UserMenu/UserMenu.stories.ts +3 -3
  224. package/src/components/Amelipro/UserMenu/UserMenu.vue +2 -2
  225. package/src/components/Amelipro/UserMenu/UserMenuDetails/__tests__/UserMenuDetails.spec.ts +150 -0
  226. package/src/components/Amelipro/UserMenu/UserMenuDetails/__tests__/__snapshots__/UserMenuDetails.spec.ts.snap +117 -0
  227. package/src/components/Amelipro/UserMenu/__tests__/UserMenu.spec.ts +141 -0
  228. package/src/components/Amelipro/UserMenu/__tests__/__snapshots__/UserMenu.spec.ts.snap +103 -0
  229. package/src/components/Captcha/Captcha.vue +9 -24
  230. package/src/components/Captcha/CaptchaHelpdesk.vue +42 -0
  231. package/src/components/Captcha/tests/__snapshots__/Captcha.spec.ts.snap +256 -268
  232. package/src/components/CopyBtn/tests/__snapshots__/CopyBtn.spec.ts.snap +0 -1
  233. package/src/components/Customs/Selects/SelectBtnField/Accessibilite.stories.ts +4 -0
  234. package/src/components/Customs/Selects/SelectBtnField/SelectBtnField.stories.ts +154 -82
  235. package/src/components/Customs/Selects/SelectBtnField/SelectBtnField.vue +229 -125
  236. package/src/components/Customs/Selects/SelectBtnField/tests/SelectBtnField.spec.ts +12 -12
  237. package/src/components/Customs/Selects/SelectBtnField/tests/__snapshots__/SelectBtnField.spec.ts.snap +344 -826
  238. package/src/components/Customs/Selects/SySelect/SySelect.vue +215 -169
  239. package/src/components/Customs/Selects/SySelect/composables/tests/useSySelectKeyboard.spec.ts +4 -2
  240. package/src/components/Customs/Selects/SySelect/composables/useSySelectKeyboard.ts +7 -9
  241. package/src/components/Customs/SyForm/SyForm.mdx +47 -7
  242. package/src/components/Customs/SyForm/SyForm.stories.ts +38 -34
  243. package/src/components/Customs/SyForm/SyForm.vue +27 -6
  244. package/src/components/Customs/SyRadioGroup/Accessibilite.mdx +263 -0
  245. package/src/components/Customs/SyRadioGroup/SyRadioGroup.mdx +37 -0
  246. package/src/components/Customs/SyRadioGroup/SyRadioGroup.stories.ts +665 -0
  247. package/src/components/Customs/SyRadioGroup/SyRadioGroup.vue +324 -0
  248. package/src/components/Customs/SyRadioGroup/locales.ts +3 -0
  249. package/src/components/Customs/SyRadioGroup/tests/SyRadioGroup.spec.ts +135 -0
  250. package/src/components/Customs/SyTabs/SyTabs.vue +1 -1
  251. package/src/components/Customs/SyTextField/SyTextField.vue +225 -194
  252. package/src/components/Customs/SyTextField/tests/SyTextField.spec.ts +32 -2
  253. package/src/components/DataList/DataList.mdx +3 -1
  254. package/src/components/DataList/DataList.stories.ts +67 -17
  255. package/src/components/DataList/DataList.vue +13 -1
  256. package/src/components/DataListGroup/DataListGroup.stories.ts +42 -12
  257. package/src/components/DataListGroup/DataListGroup.vue +14 -1
  258. package/src/components/DataListItem/DataListItem.vue +10 -2
  259. package/src/components/DataListItem/tests/DataListItem.spec.ts +1 -1
  260. package/src/components/DatePicker/CalendarMode/DatePicker.vue +157 -178
  261. package/src/components/DatePicker/CalendarMode/tests/DatePicker.events.spec.ts +5 -0
  262. package/src/components/DatePicker/CalendarMode/tests/DatePicker.spec.ts +179 -179
  263. package/src/components/DatePicker/ComplexDatePicker/ComplexDatePicker.vue +261 -258
  264. package/src/components/DatePicker/ComplexDatePicker/tests/ComplexDatePicker.spec.ts +234 -827
  265. package/src/components/DatePicker/DateTextInput/DateTextInput.vue +46 -73
  266. package/src/components/DatePicker/DateTextInput/tests/DateTextInput.spec.ts +350 -0
  267. package/src/components/DatePicker/composables/index.ts +4 -0
  268. package/src/components/DatePicker/composables/tests/useCalendarKeyboardNavigation.spec.ts +270 -0
  269. package/src/components/DatePicker/composables/tests/useDatePickerViewMode.spec.ts +61 -3
  270. package/src/components/DatePicker/composables/tests/useDateRangeInput.spec.ts +198 -0
  271. package/src/components/DatePicker/composables/tests/useDisplayedDateString.spec.ts +36 -2
  272. package/src/components/DatePicker/composables/tests/useInputHandler.spec.ts +755 -0
  273. package/src/components/DatePicker/composables/tests/useKeyboardEvents.spec.ts +168 -0
  274. package/src/components/DatePicker/composables/tests/useMonthButtonCustomization.spec.ts +40 -34
  275. package/src/components/DatePicker/composables/useAsteriskDisplay.ts +1 -2
  276. package/src/components/DatePicker/composables/useCalendarKeyboardNavigation.ts +155 -0
  277. package/src/components/DatePicker/composables/useDatePickerState.ts +163 -0
  278. package/src/components/DatePicker/composables/useDateRangeInput.ts +4 -8
  279. package/src/components/DatePicker/composables/useDateTextField.ts +156 -0
  280. package/src/components/DatePicker/composables/useHolidayHighlighting.ts +64 -0
  281. package/src/components/DatePicker/composables/useInputHandler.ts +25 -19
  282. package/src/components/DatePicker/composables/useMonthButtonCustomization.ts +52 -26
  283. package/src/components/DatePicker/constants/messages.ts +0 -1
  284. package/src/components/DatePicker/docExamples/DatePickerBidirectionalValidation.vue +2 -2
  285. package/src/components/DatePicker/playground/ComplexDatePickerPlayground.vue +16 -8
  286. package/src/components/ErrorPage/ErrorPage.vue +1 -1
  287. package/src/components/ErrorPage/tests/ErrorPage.spec.ts +17 -0
  288. package/src/components/ExternalLinks/tests/__snapshots__/ExternalLinks.spec.ts.snap +0 -1
  289. package/src/components/LunarCalendar/LunarCalendar.mdx +33 -0
  290. package/src/components/LunarCalendar/LunarCalendar.stories.ts +232 -0
  291. package/src/components/LunarCalendar/LunarCalendar.vue +57 -0
  292. package/src/components/LunarCalendar/tests/LunarCalendar.spec.ts +79 -0
  293. package/src/components/LunarCalendar/useLunarCalendarRules.ts +96 -0
  294. package/src/components/LunarCalendar/useLunarCalendarValidation.ts +47 -0
  295. package/src/components/NotificationBar/NotificationBar.vue +2 -2
  296. package/src/components/PaginatedTable/PaginatedTable.stories.ts +15 -10
  297. package/src/components/PaginatedTable/PaginatedTable.vue +24 -35
  298. package/src/components/PhoneField/PhoneField.vue +102 -83
  299. package/src/components/SearchListField/tests/SearchListField.spec.ts +7 -53
  300. package/src/components/SyAlert/SyAlert.vue +5 -2
  301. package/src/components/TableToolbar/tests/__snapshots__/TableToolbar.spec.ts.snap +24 -72
  302. package/src/components/Tables/SyServerTable/SyServerTable.stories.ts +521 -23
  303. package/src/components/Tables/SyServerTable/SyServerTable.vue +19 -13
  304. package/src/components/Tables/SyTable/SyTable.stories.ts +391 -18
  305. package/src/components/Tables/SyTable/SyTable.vue +16 -11
  306. package/src/components/Tables/common/TableHeader.vue +16 -7
  307. package/src/components/Tables/common/filters/DateFilter.vue +1 -1
  308. package/src/components/Tables/common/locales.ts +1 -0
  309. package/src/components/Tables/common/tableFilterUtils.ts +3 -3
  310. package/src/components/Tables/common/types.ts +4 -2
  311. package/src/components/Tables/common/useTableCheckbox.ts +4 -3
  312. package/src/components/Tables/common/useTableFilter.ts +2 -2
  313. package/src/components/Tables/common/useTableItems.ts +4 -19
  314. package/src/components/index.ts +2 -0
  315. package/src/composables/validation/tests/useFormValidation.spec.ts +251 -0
  316. package/src/composables/validation/tests/useValidatable.spec.ts +90 -0
  317. package/src/stories/Accessibilite/Audit/Exemptions-derogations.mdx +241 -0
  318. package/src/stories/Accessibilite/KitDePreAudit/Introduction.mdx +17 -10
  319. package/src/stories/Accessibilite/KitDePreAudit/Outils/Introduction.mdx +16 -0
  320. package/src/stories/Accessibilite/KitDePreAudit/Preaudit.mdx +160 -106
  321. package/src/stories/Accessibilite/Vuetify/VuetifyItems.ts +2 -1
  322. package/src/stories/GuideDuDev/ClassesUtilitaires/FormattingUtilities.mdx +20 -0
  323. package/src/stories/GuideDuDev/ClassesUtilitaires/index.mdx +10 -0
  324. package/src/utils/formatNir/formatNir.ts +15 -0
  325. package/src/utils/index.ts +1 -0
  326. package/src/utils/insertAt.ts +11 -0
  327. package/src/utils/rules/isDateValid/IsDateValid.mdx +2 -2
  328. package/src/utils/rules/isDateValid/IsDateValid.stories.ts +6 -4
  329. package/src/utils/rules/isDateValid/index.ts +23 -8
  330. package/src/utils/rules/isDateValid/tests/isDateValid.spec.ts +9 -0
  331. package/src/utils/rules/isExactLength/IsExactLenght.mdx +1 -1
  332. package/src/utils/rules/isHolidayDay/IsHolidayDay.mdx +19 -7
  333. package/src/utils/rules/isHolidayDay/index.ts +6 -8
  334. package/src/utils/rules/isHolidayDay/tests/isHolidayDay.spec.ts +13 -1
  335. package/src/utils/rules/isNotAfterDate/IsNotAfterDate.mdx +2 -2
  336. package/src/utils/rules/isNotAfterDate/IsNotAfterDate.stories.ts +9 -2
  337. package/src/utils/rules/isNotAfterDate/index.ts +5 -12
  338. package/src/utils/rules/isNotAfterDate/tests/isNotAfterDate.spec.ts +20 -0
  339. package/src/utils/rules/isNotAfterToday/IsNotAfterToday.mdx +2 -2
  340. package/src/utils/rules/isNotAfterToday/IsNotAfterToday.stories.ts +8 -2
  341. package/src/utils/rules/isNotAfterToday/index.ts +6 -6
  342. package/src/utils/rules/isNotAfterToday/tests/isNotAfterToday.spec.ts +20 -0
  343. package/src/utils/rules/isNotBeforeDate/IsNotBeforeDate.mdx +2 -2
  344. package/src/utils/rules/isNotBeforeDate/index.ts +5 -12
  345. package/src/utils/rules/isNotBeforeDate/tests/IsNotBeforeDate.spec.ts +20 -0
  346. package/src/utils/rules/isNotBeforeToday/IsNotBeforeToday.mdx +2 -2
  347. package/src/utils/rules/isNotBeforeToday/IsNotBeforeToday.stories.ts +8 -2
  348. package/src/utils/rules/isNotBeforeToday/index.ts +6 -6
  349. package/src/utils/rules/isNotBeforeToday/tests/notBeforeToday.spec.ts +19 -0
  350. package/src/utils/rules/validateDateValue.ts +37 -0
  351. package/src/vuetifyConfig.ts +6 -2
  352. package/dist/components/Customs/Selects/SelectBtnField/config.d.ts +0 -11
  353. package/dist/components/DatePicker/tests/setup.d.ts +0 -75370
  354. package/dist/components/Tables/common/formatters.d.ts +0 -17
  355. package/dist/main-CbBVJ_le.js +0 -34377
  356. package/dist/stories/Accessibilite/Vuetify/VuetifyItems.d.ts +0 -70
  357. package/dist/stories/DesignTokens/StylesTypographiques.stories.new.d.ts +0 -8
  358. package/dist/stories/DesignTokens/TypographyDisplay.d.ts +0 -28
  359. package/dist/stories/DesignTokens/vue-shims.d.ts +0 -6
  360. package/src/components/Amelipro/AmeliproMultipleFoldingCard/tests/AmeliproMultipleFoldingCard.spec.ts +0 -40
  361. package/src/components/Amelipro/AmeliproMultipleFoldingCard/tests/__snapshots__/AmeliproMultipleFoldingCard.spec.ts.snap +0 -369
  362. package/src/components/Amelipro/ServiceMenu/ServiceBtn/tests/ServiceBtn.spec.ts +0 -21
  363. package/src/components/Amelipro/ServiceMenu/ServiceBtn/tests/__snapshots__/ServiceBtn.spec.ts.snap +0 -100
  364. package/src/components/Amelipro/ServiceMenu/ServiceList/tests/ServiceList.spec.ts +0 -25
  365. package/src/components/Amelipro/ServiceMenu/ServiceList/tests/__snapshots__/ServiceList.spec.ts.snap +0 -245
  366. package/src/components/Amelipro/ServiceMenu/ServiceMenuContent/tests/ServiceMenuContent.spec.ts +0 -45
  367. package/src/components/Amelipro/ServiceMenu/ServiceMenuContent/tests/__snapshots__/ServiceMenuContent.spec.ts.snap +0 -787
  368. package/src/components/Amelipro/ServiceMenu/tests/ServiceMenu.spec.ts +0 -46
  369. package/src/components/Amelipro/ServiceMenu/tests/__snapshots__/ServiceMenu.spec.ts.snap +0 -111
  370. package/src/components/Amelipro/StructureMenu/StructureBtn/tests/StructureBtn.spec.ts +0 -17
  371. package/src/components/Amelipro/StructureMenu/StructureBtn/tests/__snapshots__/StructureBtn.spec.ts.snap +0 -34
  372. package/src/components/Amelipro/StructureMenu/StructureItem/tests/StructureItem.spec.ts +0 -21
  373. package/src/components/Amelipro/StructureMenu/StructureItem/tests/__snapshots__/StructureItem.spec.ts.snap +0 -106
  374. package/src/components/Amelipro/StructureMenu/StructureList/tests/StructureList.spec.ts +0 -33
  375. package/src/components/Amelipro/StructureMenu/StructureList/tests/__snapshots__/StructureList.spec.ts.snap +0 -353
  376. package/src/components/Amelipro/StructureMenu/StructureTabs/tests/StructureTabs.spec.ts +0 -60
  377. package/src/components/Amelipro/StructureMenu/StructureTabs/tests/__snapshots__/StructureTabs.spec.ts.snap +0 -824
  378. package/src/components/Amelipro/StructureMenu/tests/StructureMenu.spec.ts +0 -69
  379. package/src/components/Amelipro/StructureMenu/tests/__snapshots__/StructureMenu.spec.ts.snap +0 -1383
  380. package/src/components/Amelipro/UserInformationSummary/tests/UserInformationSummary.spec.ts +0 -24
  381. package/src/components/Amelipro/UserMenu/UserMenuDetails/tests/UserMenuDetails.spec.ts +0 -33
  382. package/src/components/Amelipro/UserMenu/UserMenuDetails/tests/__snapshots__/UserMenuDetails.spec.ts.snap +0 -3
  383. package/src/components/Amelipro/UserMenu/tests/UserMenu.spec.ts +0 -34
  384. package/src/components/Amelipro/UserMenu/tests/__snapshots__/UserMenu.spec.ts.snap +0 -101
  385. package/src/components/Customs/Selects/SelectBtnField/config.ts +0 -11
  386. package/src/components/DatePicker/ComplexDatePicker/tests/ComplexDatePicker.events.spec.ts +0 -151
  387. package/src/components/DatePicker/DateTextInput/DateTextInput.events.spec.ts +0 -148
  388. package/src/components/DatePicker/DateTextInput/DateTextInput.range.spec.ts +0 -361
  389. package/src/components/DatePicker/DateTextInput/DateTextInput.spec.ts +0 -709
  390. package/src/components/DatePicker/tests/DatePicker.validation.spec.ts +0 -4111
  391. package/src/components/DatePicker/tests/archiTest.md +0 -33
  392. package/src/components/DatePicker/tests/navigation.regression.spec.ts +0 -74
  393. package/src/components/DatePicker/tests/navigation.simple.spec.ts +0 -137
  394. package/src/components/DatePicker/tests/setup.ts +0 -243
  395. package/src/components/Tables/common/formatters.ts +0 -72
@@ -5,10 +5,10 @@ import AmeliproTextArea from './AmeliproTextArea.vue'
5
5
  const meta = {
6
6
  argTypes: {
7
7
  'append': { description: 'Permet d\'ajouter un élément juste après le champ' },
8
- 'ariaRequired': {
8
+ 'required': {
9
9
  default: false,
10
10
  description: 'Défini que le champ est obligatoire',
11
- name: 'aria-required',
11
+ name: 'required',
12
12
  type: 'boolean',
13
13
  },
14
14
  'classes': { description: 'Classes à appliquer à la racine du composant' },
@@ -193,19 +193,19 @@ export const Required: Story = {
193
193
  args: {
194
194
  label: 'Champ obligatoire',
195
195
  uniqueId: 'text-area-required',
196
- ariaRequired: true,
196
+ required: true,
197
197
  },
198
198
  parameters: {
199
199
  sourceCode: [
200
200
  {
201
201
  name: 'Template',
202
202
  code: `<template>
203
- <p>Le champ est obligatoire grâce à la prop <code>ariaRequired</code>.</p>
203
+ <p>Le champ est obligatoire grâce à la prop <code>required</code>.</p>
204
204
  <AmeliproTextArea
205
205
  v-model="model"
206
206
  label="Champ obligatoire"
207
207
  unique-id="text-area-required"
208
- aria-required
208
+ required
209
209
  />
210
210
  </template>`,
211
211
  },
@@ -230,7 +230,7 @@ export const Required: Story = {
230
230
  return { args, model }
231
231
  },
232
232
  template: `
233
- <p>Le champ est obligatoire grâce à la prop <code>ariaRequired</code>.</p>
233
+ <p>Le champ est obligatoire grâce à la prop <code>required</code>.</p>
234
234
  <AmeliproTextArea
235
235
  v-bind="args"
236
236
  v-model="model"
@@ -9,7 +9,7 @@
9
9
  import { isRequired } from '@/utils/rules/isRequired'
10
10
 
11
11
  const props = defineProps({
12
- ariaRequired: {
12
+ required: {
13
13
  type: Boolean,
14
14
  default: false,
15
15
  },
@@ -108,7 +108,7 @@
108
108
  ...props.rules,
109
109
  ]
110
110
 
111
- if (props.ariaRequired) {
111
+ if (props.required) {
112
112
  rules.push(isRequired)
113
113
  }
114
114
 
@@ -227,7 +227,7 @@
227
227
  >
228
228
  {{ label }}
229
229
 
230
- <span v-if="ariaRequired">
230
+ <span v-if="required">
231
231
  <span aria-hidden="true">
232
232
  &nbsp;*
233
233
  </span>
@@ -250,7 +250,7 @@
250
250
  v-model="inputValue"
251
251
  :aria-describedby="displayError ? undefined : errorId"
252
252
  :aria-invalid="displayError ? true : undefined"
253
- :aria-required="ariaRequired"
253
+ :required="required"
254
254
  auto-grow
255
255
  :bg-color="disabled ? 'ap-grey-lighten-2' : 'ap-white'"
256
256
  class="amelipro-textarea-input"
@@ -1,4 +1,4 @@
1
- import { VueWrapper, mount, shallowMount } from '@vue/test-utils'
1
+ import { mount, shallowMount, VueWrapper } from '@vue/test-utils'
2
2
  import { beforeEach, describe, expect, it } from 'vitest'
3
3
  import AmeliproTextArea from '../AmeliproTextArea.vue'
4
4
  import type { ComponentProps } from 'vue-component-type-helpers'
@@ -9,7 +9,7 @@ import type { ValidateOnType } from '../../types'
9
9
  import type { ValidationRule } from '@/utils/rules/types'
10
10
 
11
11
  const expectedPropOptions: ExpectedPropOptions<typeof AmeliproTextArea> = {
12
- ariaRequired: {
12
+ required: {
13
13
  type: Boolean,
14
14
  default: false,
15
15
  },
@@ -92,7 +92,7 @@ const requiredPropValues = (): ComponentProps<typeof AmeliproTextArea> => ({
92
92
  })
93
93
 
94
94
  const modifiedPropValues = (): ComponentProps<typeof AmeliproTextArea> => ({
95
- ariaRequired: true,
95
+ required: true,
96
96
  classes: 'modified-classes',
97
97
  counter: 100,
98
98
  disabled: true,
@@ -49,7 +49,6 @@ exports[`AmeliproTextArea > Snapshots > renders the component with all propertie
49
49
  </div>
50
50
  <textarea
51
51
  aria-describedby="modified-unique-id-error"
52
- aria-required="true"
53
52
  auto-grow=""
54
53
  bg-color="ap-grey-lighten-2"
55
54
  class="amelipro-textarea-input"
@@ -59,6 +58,7 @@ exports[`AmeliproTextArea > Snapshots > renders the component with all propertie
59
58
  id="modified-unique-id"
60
59
  modelvalue="Modified model value"
61
60
  readonly=""
61
+ required=""
62
62
  rules="() => true,(value) => {
63
63
  let valid;
64
64
  if (Array.isArray(value)) {
@@ -110,7 +110,6 @@ exports[`AmeliproTextArea > Snapshots > renders the component with only required
110
110
  </div>
111
111
  <textarea
112
112
  aria-describedby="required-unique-id-error"
113
- aria-required="false"
114
113
  auto-grow=""
115
114
  bg-color="ap-white"
116
115
  class="amelipro-textarea-input"
@@ -5,10 +5,10 @@ import AmeliproTextField from './AmeliproTextField.vue'
5
5
  const meta = {
6
6
  argTypes: {
7
7
  'append': { description: 'Permet d\'ajouter un élément juste après le champ' },
8
- 'ariaRequired': {
8
+ 'required': {
9
9
  default: false,
10
10
  description: 'Défini que le champ est obligatoire',
11
- name: 'aria-required',
11
+ name: 'required',
12
12
  type: 'boolean',
13
13
  },
14
14
  'classes': { description: 'Classes à appliquer à la racine du composant' },
@@ -101,7 +101,7 @@ export const Default: Story = {
101
101
 
102
102
  export const Date: Story = {
103
103
  args: {
104
- ariaRequired: true,
104
+ required: true,
105
105
  label: 'Mon label',
106
106
  maxDate: '2024-02-20',
107
107
  minDate: '2024-01-20',
@@ -117,7 +117,7 @@ export const Date: Story = {
117
117
  <template>
118
118
  <AmeliproTextField
119
119
  v-model="model"
120
- aria-required
120
+ required
121
121
  classes="mt-2"
122
122
  label="Mon label"
123
123
  max-date="2024-02-20"
@@ -160,7 +160,7 @@ export const Date: Story = {
160
160
 
161
161
  export const Number: Story = {
162
162
  args: {
163
- ariaRequired: true,
163
+ required: true,
164
164
  label: 'Mon label',
165
165
  maxNumber: '10',
166
166
  minNumber: '0',
@@ -176,7 +176,7 @@ export const Number: Story = {
176
176
  <template>
177
177
  <AmeliproTextField
178
178
  v-model="model"
179
- aria-required
179
+ required
180
180
  classes="mt-2"
181
181
  label="Mon label"
182
182
  max-number="10"
@@ -736,19 +736,19 @@ export const Required: Story = {
736
736
  label: 'Champ requis',
737
737
  modelValue: '',
738
738
  uniqueId: 'text-required',
739
- ariaRequired: true,
739
+ required: true,
740
740
  },
741
741
  parameters: {
742
742
  sourceCode: [
743
743
  {
744
744
  name: 'Template',
745
745
  code: `<template>
746
- <p>Le champ est requis grâce à la prop <code>ariaRequired</code>.</p>
746
+ <p>Le champ est requis grâce à la prop <code>required</code>.</p>
747
747
  <AmeliproTextField
748
748
  v-model="model"
749
749
  label="Champ requis"
750
750
  unique-id="text-required"
751
- aria-required
751
+ required
752
752
  />
753
753
  </template>`,
754
754
  },
@@ -773,7 +773,7 @@ export const Required: Story = {
773
773
  return { args, model }
774
774
  },
775
775
  template: `
776
- <p>Le champ est requis grâce à la prop <code>ariaRequired</code>.</p>
776
+ <p>Le champ est requis grâce à la prop <code>required</code>.</p>
777
777
  <AmeliproTextField
778
778
  v-bind="args"
779
779
  v-model="model"
@@ -13,7 +13,7 @@
13
13
  import { isRequired } from '@/utils/rules/isRequired'
14
14
 
15
15
  const props = defineProps({
16
- ariaRequired: {
16
+ required: {
17
17
  type: Boolean,
18
18
  default: false,
19
19
  },
@@ -152,7 +152,7 @@
152
152
  ...props.rules,
153
153
  ]
154
154
 
155
- if (props.ariaRequired) {
155
+ if (props.required) {
156
156
  rules.push(isRequired)
157
157
  }
158
158
 
@@ -278,7 +278,7 @@
278
278
  >
279
279
  {{ label }}
280
280
 
281
- <span v-if="ariaRequired">
281
+ <span v-if="required">
282
282
  <span aria-hidden="true">
283
283
  &nbsp;*
284
284
  </span>
@@ -301,7 +301,7 @@
301
301
  v-model="inputValue"
302
302
  :aria-describedby="displayError ? errorId : undefined"
303
303
  :aria-invalid="displayError ? true : undefined"
304
- :aria-required="ariaRequired"
304
+ :required="required"
305
305
  :bg-color="disabled ? 'ap-grey-lighten-2' : 'ap-white'"
306
306
  class="pt-0 amelipro-text-field"
307
307
  :clearable="clearable"
@@ -1,5 +1,5 @@
1
1
  /* eslint-disable @typescript-eslint/no-explicit-any */
2
- import { VueWrapper, config, mount, shallowMount } from '@vue/test-utils'
2
+ import { config, mount, shallowMount, VueWrapper } from '@vue/test-utils'
3
3
  import { beforeEach, describe, expect, it } from 'vitest'
4
4
  import AmeliproTextField from '../AmeliproTextField.vue'
5
5
  import type { ComponentProps } from 'vue-component-type-helpers'
@@ -36,7 +36,7 @@ const VTextFieldStub = defineComponent({
36
36
  type: String,
37
37
  default: undefined,
38
38
  },
39
- ariaRequired: {
39
+ required: {
40
40
  type: [Boolean, String],
41
41
  default: false,
42
42
  },
@@ -85,7 +85,7 @@ const VTextFieldStub = defineComponent({
85
85
  template: `
86
86
  <div
87
87
  class="v-text-field-stub"
88
- :aria-required="ariaRequired"
88
+ :aria-required="required"
89
89
  :style="style"
90
90
  >
91
91
  <slot />
@@ -99,7 +99,7 @@ config.global.stubs = config.global.stubs || {}
99
99
  config.global.stubs.VTextField = VTextFieldStub
100
100
 
101
101
  const expectedPropOptions: ExpectedPropOptions<typeof AmeliproTextField> = {
102
- ariaRequired: {
102
+ required: {
103
103
  type: Boolean,
104
104
  default: false,
105
105
  },
@@ -222,7 +222,7 @@ const requiredPropValues = (): ComponentProps<typeof AmeliproTextField> => ({
222
222
  })
223
223
 
224
224
  const modifiedPropValues = (): ComponentProps<typeof AmeliproTextField> => ({
225
- ariaRequired: true,
225
+ required: true,
226
226
  classes: 'modified-classes',
227
227
  clearable: true,
228
228
  counter: 5,
@@ -0,0 +1,162 @@
1
+ // Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
2
+
3
+ exports[`AmeliproTextField > render correctly 1`] = `
4
+ <div
5
+ class=""
6
+ id="my-textfield-id-container"
7
+ style="margin-bottom: 12px;"
8
+ >
9
+ <div class="
10
+ amelipro-text-field__wrapper
11
+ d-flex
12
+ flex-column
13
+ w-100
14
+ ">
15
+ <div class="
16
+ align-baseline
17
+ d-inline-flex
18
+ mb-1
19
+ ">
20
+ <label
21
+ class="
22
+ amelipro-text-field__label
23
+ mr-2
24
+ "
25
+ for="my-textfield-id"
26
+ id="my-textfield-id-label"
27
+ >
28
+ Mon label
29
+ <!-- v-if -->
30
+ </label>
31
+ </div>
32
+ <div class="
33
+ amelipro-text-field
34
+ pt-0
35
+ v-input
36
+ v-input--center-affix
37
+ v-input--density-compact
38
+ v-input--horizontal
39
+ v-locale--is-ltr
40
+ v-text-field
41
+ v-theme--light
42
+ ">
43
+ <!---->
44
+ <div class="v-input__control">
45
+ <div class="
46
+ bg-ap-white
47
+ v-field
48
+ v-field--center-affix
49
+ v-field--has-background
50
+ v-field--no-label
51
+ v-field--variant-outlined
52
+ v-locale--is-ltr
53
+ v-theme--light
54
+ ">
55
+ <div class="v-field__overlay"></div>
56
+ <div class="v-field__loader">
57
+ <div
58
+ aria-hidden="true"
59
+ aria-valuemax="100"
60
+ aria-valuemin="0"
61
+ class="
62
+ v-locale--is-ltr
63
+ v-progress-linear
64
+ v-theme--light
65
+ "
66
+ role="progressbar"
67
+ style="
68
+ top: 0px;
69
+ height: 0px;
70
+ --v-progress-linear-height: 2px;
71
+ "
72
+ >
73
+ <!---->
74
+ <div
75
+ class="
76
+ bg-ap-blue-darken-1
77
+ v-progress-linear__background
78
+ "
79
+ style="opacity: NaN;"
80
+ ></div>
81
+ <div
82
+ class="
83
+ bg-ap-blue-darken-1
84
+ v-progress-linear__buffer
85
+ "
86
+ style="
87
+ opacity: NaN;
88
+ width: 0%;
89
+ "
90
+ ></div>
91
+ <transition-stub
92
+ appear="false"
93
+ css="true"
94
+ name="fade-transition"
95
+ persisted="false"
96
+ >
97
+ <div class="v-progress-linear__indeterminate">
98
+ <div class="
99
+ bg-ap-blue-darken-1
100
+ long
101
+ v-progress-linear__indeterminate
102
+ "></div>
103
+ <div class="
104
+ bg-ap-blue-darken-1
105
+ short
106
+ v-progress-linear__indeterminate
107
+ "></div>
108
+ </div>
109
+ </transition-stub>
110
+ <!---->
111
+ </div>
112
+ </div>
113
+ <!---->
114
+ <div
115
+ class="v-field__field"
116
+ data-no-activator=""
117
+ >
118
+ <!---->
119
+ <!---->
120
+ <!---->
121
+ <input
122
+ class="v-field__input"
123
+ id="my-textfield-id"
124
+ size="1"
125
+ type="text"
126
+ />
127
+ <!---->
128
+ </div>
129
+ <!---->
130
+ <!---->
131
+ <div class="v-field__outline">
132
+ <div class="v-field__outline__start"></div>
133
+ <!---->
134
+ <div class="v-field__outline__end"></div>
135
+ <!---->
136
+ </div>
137
+ </div>
138
+ </div>
139
+ <!---->
140
+ <div
141
+ aria-live="polite"
142
+ class="v-input__details"
143
+ id="my-textfield-id-messages"
144
+ role="alert"
145
+ >
146
+ <transition-group-stub
147
+ appear="false"
148
+ class="v-messages"
149
+ css="true"
150
+ name="slide-y-transition"
151
+ persisted="false"
152
+ tag="div"
153
+ >
154
+ <!---->
155
+ </transition-group-stub>
156
+ <!---->
157
+ </div>
158
+ </div>
159
+ </div>
160
+ <!-- v-if -->
161
+ </div>
162
+ `;
@@ -1,5 +1,6 @@
1
1
  import type { Meta, StoryObj } from '@storybook/vue3'
2
2
  import AmeliproTileBtn from './AmeliproTileBtn.vue'
3
+ import AmeliproTooltips from '../AmeliproTooltips/AmeliproTooltips.vue'
3
4
 
4
5
  const meta = {
5
6
  argTypes: {
@@ -169,6 +170,49 @@ export const Desactivee: Story = {
169
170
  }),
170
171
  }
171
172
 
173
+ // --- Tuile bouton avec tooltip ---
174
+ export const tooltip: Story = {
175
+ name: 'Avec tooltip',
176
+ args: {
177
+ imgSrc: '/amelipro/img/tile-example.svg',
178
+ label: 'Label du bouton',
179
+ tileMinHeight: '100%',
180
+ uniqueId: 'tile-btn-tooltip',
181
+ },
182
+ parameters: {
183
+ sourceCode: [
184
+ {
185
+ name: 'Template',
186
+ code: `
187
+ <AmeliproTileBtn
188
+ img-src="/amelipro/img/tile-example.svg"
189
+ label="Bouton désactivé"
190
+ tile-min-height="100%"
191
+ unique-id="tile-btn-disabled"
192
+ />`,
193
+ },
194
+ ],
195
+ },
196
+ render: args => ({
197
+ components: { AmeliproTileBtn, AmeliproTooltips },
198
+ setup() {
199
+ return { args }
200
+ },
201
+ template: `
202
+ <p>Le slot <code>labelInfo</code> permet d'ajouter une tooltip à droite du titre du bouton.</p>
203
+
204
+ <AmeliproTileBtn v-bind="args">
205
+ <template #labelInfo>
206
+ <AmeliproTooltips
207
+ tooltip-text="Contenu de mon infobulle"
208
+ unique-id="amelipro-tooltip-id"
209
+ />
210
+ </template>
211
+ </AmeliproTileBtn>
212
+ `,
213
+ }),
214
+ }
215
+
172
216
  // --- Tuile bouton avec message informatif ---
173
217
  export const AvecMessageInfo: Story = {
174
218
  name: 'Avec message informatif',
@@ -1,5 +1,5 @@
1
1
  <script setup lang="ts">
2
- import { type PropType, computed, ref } from 'vue'
2
+ import { type PropType, type ComponentPublicInstance, computed, ref, nextTick, onMounted, watch, shallowRef } from 'vue'
3
3
  import AmeliproIcon from '../AmeliproIcon/AmeliproIcon.vue'
4
4
  import type { IndexedObject } from '../types'
5
5
  import type { RouteLocationRaw } from 'vue-router'
@@ -97,6 +97,10 @@
97
97
 
98
98
  const hover = ref(false)
99
99
  const focus = ref(false)
100
+ const button = shallowRef<ComponentPublicInstance | null>(null)
101
+ const labelText = ref<HTMLElement | null>(null)
102
+ const labelInfo = ref<HTMLElement | null>(null)
103
+ const labelStyle = ref({})
100
104
 
101
105
  const tileStyles = computed<IndexedObject>(() => {
102
106
  const btnStyles: IndexedObject = {
@@ -127,6 +131,35 @@
127
131
  return btnStyles
128
132
  })
129
133
 
134
+ const updateLabelPadding = () => {
135
+ nextTick(() => {
136
+ if (!labelText.value || !labelInfo.value) {
137
+ labelStyle.value = { paddingRight: '0px' }
138
+ return
139
+ }
140
+ const btn = button.value?.$?.subTree?.el as HTMLElement
141
+ const btnWidth = btn?.getBoundingClientRect().width ?? 0
142
+
143
+ const styles = getComputedStyle(btn)
144
+ const textWidth = labelText.value.offsetWidth
145
+
146
+ const paddingLeft = parseFloat(styles.paddingLeft)
147
+ const paddingRight = parseFloat(styles.paddingRight)
148
+ const horizontalPadding = paddingLeft + paddingRight
149
+
150
+ const minGap = 8
151
+ const labelPaddingRight = 36
152
+
153
+ const availableWidth = btnWidth - horizontalPadding - minGap
154
+
155
+ labelStyle.value = {
156
+ paddingRight: textWidth >= availableWidth
157
+ ? `${labelPaddingRight}px`
158
+ : '0px',
159
+ }
160
+ })
161
+ }
162
+
130
163
  const imgStyles = computed<IndexedObject>(() => {
131
164
  const styles: IndexedObject = { width: props.imgWidth }
132
165
  if (props.imgMaxWidth) {
@@ -162,11 +195,19 @@
162
195
 
163
196
  const emit = defineEmits(['click'])
164
197
  const emitClickEvent = () => emit('click', props.uniqueId)
198
+
199
+ onMounted(() => {
200
+ updateLabelPadding()
201
+ })
202
+
203
+ watch([labelText, labelInfo], () => updateLabelPadding())
204
+
165
205
  </script>
166
206
 
167
207
  <template>
168
208
  <VBtn
169
209
  :id="uniqueId"
210
+ ref="button"
170
211
  class="amelipro-tile-btn text-none"
171
212
  :disabled="disabled"
172
213
  :elevation="1"
@@ -186,9 +227,18 @@
186
227
  <span v-if="alignTopStyle || complementaryInfoLine1 || complementaryInfoLine2 || message">
187
228
  <span
188
229
  :id="uniqueId ? `${uniqueId}-text` : undefined"
230
+ ref="labelText"
189
231
  class="d-block text-h5 text-center font-weight-bold amelipro-tile-btn__content"
232
+ :style="labelStyle"
190
233
  >
191
234
  {{ label }}
235
+ <span
236
+ v-if="$slots.labelInfo"
237
+ ref="labelInfo"
238
+ class="amelipro-tile-btn__label-info"
239
+ >
240
+ <slot name="labelInfo" />
241
+ </span>
192
242
 
193
243
  <span
194
244
  v-if="labelBottom"
@@ -262,9 +312,18 @@
262
312
  <span
263
313
  v-if="!complementaryInfoLine1 && !complementaryInfoLine2 && !alignTopStyle && !message"
264
314
  :id="uniqueId ? `${uniqueId}-text` : undefined"
315
+ ref="labelText"
265
316
  class="d-block text-h5 text-center font-weight-bold amelipro-tile-btn__content"
317
+ :style="labelStyle"
266
318
  >
267
319
  {{ label }}
320
+ <span
321
+ v-if="$slots.labelInfo"
322
+ ref="labelInfo"
323
+ class="amelipro-tile-btn__label-info"
324
+ >
325
+ <slot name="labelInfo" />
326
+ </span>
268
327
 
269
328
  <span
270
329
  v-if="labelBottom"
@@ -357,4 +416,23 @@
357
416
  bottom: 0;
358
417
  right: 10px;
359
418
  }
419
+
420
+ .amelipro-tile-btn__content {
421
+ white-space: normal;
422
+ }
423
+
424
+ .amelipro-tile-btn__label {
425
+ display: inline-block;
426
+ word-break: break-word;
427
+ width: 100%;
428
+ box-sizing: border-box;
429
+ text-align: center;
430
+ }
431
+
432
+ .amelipro-tile-btn__label-info {
433
+ position: absolute;
434
+ top: 44px;
435
+ transform: translateY(-50%);
436
+ right: 22px;
437
+ }
360
438
  </style>
@@ -29,7 +29,6 @@ exports[`AmeliproTooltips > Snapshots > renders the component with all propertie
29
29
  right=""
30
30
  scrim="false"
31
31
  scrollstrategy="reposition"
32
- sticktotarget="false"
33
32
  zindex="2000"
34
33
  ></v-tooltip-stub>
35
34
  </div>
@@ -64,7 +63,6 @@ exports[`AmeliproTooltips > Snapshots > renders the component with only required
64
63
  right=""
65
64
  scrim="false"
66
65
  scrollstrategy="reposition"
67
- sticktotarget="false"
68
66
  zindex="2000"
69
67
  ></v-tooltip-stub>
70
68
  </div>
@@ -4,7 +4,7 @@ import { ref, watch } from 'vue'
4
4
 
5
5
  const meta = {
6
6
  argTypes: {
7
- 'ariaRequired': { description: 'Défini si le champ est obligatoire' },
7
+ 'required': { description: 'Défini si le champ est obligatoire' },
8
8
  'change': {
9
9
  table: { category: 'events' },
10
10
  description: 'Événement émis au changement de la liste de fichiers par utilisation du click sur le champs, renvoie la liste de fichiers',
@@ -16,7 +16,7 @@ const meta = {
16
16
  'fileTypeAccepted': { description: 'Tableau de string au format MIME pour le type de fichier accepté. Exemple : application/pdf (string au format MIME)' },
17
17
  'inputLabel': { description: 'Libellé du champ' },
18
18
  'maxFileNumber': { description: 'Nombre maximum de fichiers autorisés' },
19
- 'rules': { description: 'Liste des règles supplémentaires à respecter pour valider le champ, en plus des règles par défaut. Si une règle est refusée, l’envoi du formulaire est impossible. Par défaut seule la règle `required` est appliquée (si la prop `ariaRequired` vaut `true`). ' },
19
+ 'rules': { description: 'Liste des règles supplémentaires à respecter pour valider le champ, en plus des règles par défaut. Si une règle est refusée, l’envoi du formulaire est impossible. Par défaut seule la règle `required` est appliquée (si la prop `required` vaut `true`). ' },
20
20
  'uniqueId': { description: 'Identifiant unique pour le champ' },
21
21
  'value': { description: 'Liste des fichiers actuelle' },
22
22
  'warningRules': { description: '' },