@cnamts/synapse 1.0.13 → 1.0.15

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 (254) hide show
  1. package/README.md +72 -72
  2. package/dist/{DateFilter-_EFzsvvM.js → DateFilter-isr8mXVb.js} +1 -1
  3. package/dist/{NumberFilter-CUxEbKJh.js → NumberFilter-BOe7DqWX.js} +1 -1
  4. package/dist/{PeriodFilter-D5ueqtKy.js → PeriodFilter-WTprpO40.js} +1 -1
  5. package/dist/{SelectFilter-BciBNydy.js → SelectFilter-CqlG5dmI.js} +1 -1
  6. package/dist/{TextFilter-DMN_WAQB.js → TextFilter-fVW5bsRw.js} +1 -1
  7. package/dist/components/Amelipro/AmeliproAutoCompleteField/AmeliproAutoCompleteField.d.ts +60 -28
  8. package/dist/components/Amelipro/AmeliproFilePreview/AmeliproFilePreview.d.ts +3 -3
  9. package/dist/components/Amelipro/AmeliproSelect/AmeliproSelect.d.ts +60 -28
  10. package/dist/components/Amelipro/AmeliproTabs/AmeliproTabs.d.ts +61 -29
  11. package/dist/components/Amelipro/AmeliproTextArea/AmeliproTextArea.d.ts +5 -1
  12. package/dist/components/Amelipro/AmeliproTextField/AmeliproTextField.d.ts +3 -1
  13. package/dist/components/Amelipro/StructureMenu/StructureTabs/StructureTabs.d.ts +1 -1
  14. package/dist/components/Captcha/Captcha.d.ts +2 -0
  15. package/dist/components/Captcha/CaptchaBase.d.ts +1 -0
  16. package/dist/components/Customs/Selects/SySelect/SySelect.d.ts +29 -17
  17. package/dist/components/Customs/SyTabs/SyTabs.d.ts +20 -0
  18. package/dist/components/DatePicker/CalendarMode/DatePicker.d.ts +100 -10
  19. package/dist/components/DatePicker/ComplexDatePicker/ComplexDatePicker.d.ts +108 -21
  20. package/dist/components/DatePicker/DateTextInput/DateTextInput.d.ts +6 -6
  21. package/dist/components/DatePicker/composables/useDateFormatDisplay.d.ts +3 -0
  22. package/dist/components/DatePicker/tests/setup.d.ts +768 -48
  23. package/dist/components/FilterSideBar/FilterSideBar.d.ts +8 -0
  24. package/dist/components/HeaderToolbar/HeaderToolbar.d.ts +58 -34
  25. package/dist/components/LangBtn/LangBtn.d.ts +4 -0
  26. package/dist/components/PeriodField/PeriodField.d.ts +192 -12
  27. package/dist/components/RatingPicker/RatingPicker.d.ts +9 -0
  28. package/dist/components/SearchListField/SearchListField.d.ts +42 -413
  29. package/dist/components/SearchListField/locales.d.ts +1 -2
  30. package/dist/components/SyAlert/SyAlert.d.ts +1 -1
  31. package/dist/components/SyTextArea/SyTextArea.d.ts +2 -0
  32. package/dist/components/Tables/SyServerTable/SyServerTable.d.ts +15 -8
  33. package/dist/components/Tables/SyTable/SyTable.d.ts +15 -8
  34. package/dist/components/Tables/common/SyTablePagination.d.ts +29 -17
  35. package/dist/components/Tables/common/organizeColumns/OrganizeColumns.d.ts +4 -0
  36. package/dist/components/Tables/common/types.d.ts +2 -0
  37. package/dist/design-system-v3.js +1 -1
  38. package/dist/design-system-v3.umd.cjs +32 -16
  39. package/dist/{main-DISHlqcd.js → main-CbBVJ_le.js} +9911 -9751
  40. package/dist/style.css +1 -1
  41. package/package.json +5 -2
  42. package/src/assets/amelipro/icons.ts +17 -0
  43. package/src/components/Amelipro/AmeliproAccordionFrieze/AmeliproAccordionFrieze.stories.ts +40 -36
  44. package/src/components/Amelipro/AmeliproAccordionGroup/__tests__/AmeliproAccordionGroup.spec.ts +226 -26
  45. package/src/components/Amelipro/AmeliproAccordionGroup/__tests__/__snapshots__/AmeliproAccordionGroup.spec.ts.snap +55 -506
  46. package/src/components/Amelipro/AmeliproAccordionList/AmeliproAccordionList.stories.ts +1 -1
  47. package/src/components/Amelipro/AmeliproAccordionList/AmeliproAccordionList.vue +7 -2
  48. package/src/components/Amelipro/AmeliproAccordionList/__tests__/__snapshots__/AmeliproAccordionList.spec.ts.snap +2 -1
  49. package/src/components/Amelipro/AmeliproAccordionResult/AmeliproAccordionResultTemplate/__tests__/__snapshots__/AmeliproAccordionResultTemplate.spec.ts.snap +4 -1
  50. package/src/components/Amelipro/AmeliproAccordionResult/__tests__/__snapshots__/AmeliproAccordionResult.spec.ts.snap +4 -1
  51. package/src/components/Amelipro/AmeliproAccordionResultList/AmeliproAccordionResultList.stories.ts +1 -1
  52. package/src/components/Amelipro/AmeliproAccordionResultList/AmeliproAccordionResultList.vue +9 -3
  53. package/src/components/Amelipro/AmeliproAccordionResultList/__tests__/__snapshots__/AmeliproAccordionResultList.spec.ts.snap +42 -11
  54. package/src/components/Amelipro/AmeliproAutoCompleteField/AmeliproAutoCompleteField.stories.ts +4 -4
  55. package/src/components/Amelipro/AmeliproAutoCompleteField/AmeliproAutoCompleteField.vue +7 -5
  56. package/src/components/Amelipro/AmeliproAutoCompleteField/__tests__/__snapshots__/AmeliproAutoCompleteField.spec.ts.snap +4 -2
  57. package/src/components/Amelipro/AmeliproBtn/AmeliproBtn.stories.ts +1 -40
  58. package/src/components/Amelipro/AmeliproBtn/AmeliproBtn.vue +4 -0
  59. package/src/components/Amelipro/AmeliproCallback/AmeliproCallback.stories.ts +4 -2
  60. package/src/components/Amelipro/AmeliproCaptcha/__tests__/__snapshots__/AmeliproCaptcha.spec.ts.snap +2 -1
  61. package/src/components/Amelipro/AmeliproClickableTile/AmeliproClickableTile.stories.ts +39 -29
  62. package/src/components/Amelipro/AmeliproCopyBtn/__tests__/__snapshots__/AmeliproCopyBtn.spec.ts.snap +4 -1
  63. package/src/components/Amelipro/AmeliproCustomSelector/AmeliproCustomSelector.vue +3 -3
  64. package/src/components/Amelipro/AmeliproCustomSelector/__tests__/__snapshots__/AmeliproCustomSelector.spec.ts.snap +8 -6
  65. package/src/components/Amelipro/AmeliproFilePreview/AmeliproFilePreview.mdx +3 -1
  66. package/src/components/Amelipro/AmeliproFilePreview/AmeliproFilePreview.stories.ts +23 -5
  67. package/src/components/Amelipro/AmeliproFilePreview/AmeliproFilePreview.vue +5 -6
  68. package/src/components/Amelipro/AmeliproFilePreview/__tests__/AmeliproFilePreview.spec.ts +2 -2
  69. package/src/components/Amelipro/AmeliproFilePreview/__tests__/__snapshots__/AmeliproFilePreview.spec.ts.snap +5 -6
  70. package/src/components/Amelipro/AmeliproFirstLogin/__tests__/__snapshots__/AmeliproFirstLogin.spec.ts.snap +4 -1
  71. package/src/components/Amelipro/AmeliproHeader/AmeliproHeader.vue +1 -2
  72. package/src/components/Amelipro/AmeliproHeader/AmeliproHeaderBar/AmeliproLogoAm/__tests__/AmeliproLogoAm.spec.ts +78 -0
  73. package/src/components/Amelipro/AmeliproHeader/AmeliproHeaderBar/AmeliproLogoAm/{tests → __tests__}/__snapshots__/AmeliproLogoAm.spec.ts.snap +64 -2
  74. package/src/components/Amelipro/AmeliproIcon/__tests__/AmeliproIcon.spec.ts +358 -0
  75. package/src/components/Amelipro/AmeliproIcon/{tests → __tests__}/__snapshots__/AmeliproIcon.spec.ts.snap +30 -3
  76. package/src/components/Amelipro/AmeliproIcon/iconList.ts +1 -0
  77. package/src/components/Amelipro/AmeliproIconBtn/AmeliproIconBtn.vue +1 -1
  78. package/src/components/Amelipro/AmeliproIconBtn/__tests__/AmeliproIconBtn.spec.ts +459 -0
  79. package/src/components/Amelipro/AmeliproIconBtn/__tests__/__snapshots__/AmeliproIconBtn.spec.ts.snap +58 -0
  80. package/src/components/Amelipro/AmeliproIllustratedDataTile/AmeliproIllustratedDataTile.stories.ts +38 -26
  81. package/src/components/Amelipro/AmeliproIllustratedDataTile/__tests__/AmeliproIllustratedDataTile.spec.ts +321 -0
  82. package/src/components/Amelipro/AmeliproIllustratedDataTile/__tests__/__snapshots__/AmeliproIllustratedDataTile.spec.ts.snap +148 -0
  83. package/src/components/Amelipro/AmeliproIllustratedRadioGroup/AmeliproIllustratedRadioGroup.stories.ts +14 -5
  84. package/src/components/Amelipro/AmeliproIllustratedRadioGroup/AmeliproIllustratedRadioGroup.vue +1 -1
  85. package/src/components/Amelipro/AmeliproIllustratedRadioGroup/__tests__/AmeliproIllustratedRadioGroup.spec.ts +498 -0
  86. package/src/components/Amelipro/AmeliproIllustratedRadioGroup/__tests__/__snapshots__/AmeliproIllustratedRadioGroup.spec.ts.snap +325 -0
  87. package/src/components/Amelipro/AmeliproMailTile/__tests__/AmeliproMailTile.spec.ts +210 -0
  88. package/src/components/Amelipro/AmeliproMailTile/__tests__/__snapshots__/AmeliproMailTile.spec.ts.snap +98 -0
  89. package/src/components/Amelipro/AmeliproMessage/__tests__/AmeliproMessage.spec.ts +446 -0
  90. package/src/components/Amelipro/AmeliproMessage/__tests__/__snapshots__/AmeliproMessage.spec.ts.snap +60 -0
  91. package/src/components/Amelipro/AmeliproMessagingLayout/__tests__/AmeliproMessagingLayout.spec.ts +300 -0
  92. package/src/components/Amelipro/AmeliproMessagingLayout/__tests__/__snapshots__/AmeliproMessagingLayout.spec.ts.snap +197 -0
  93. package/src/components/Amelipro/AmeliproNumberedCard/__tests__/AmeliproNumberedCard.spec.ts +117 -0
  94. package/src/components/Amelipro/AmeliproNumberedCard/{tests → __tests__}/__snapshots__/AmeliproNumberedCard.spec.ts.snap +47 -45
  95. package/src/components/Amelipro/AmeliproOnboarding/__tests__/AmeliproOnboarding.spec.ts +219 -0
  96. package/src/components/Amelipro/AmeliproOnboarding/__tests__/__snapshots__/AmeliproOnboarding.spec.ts.snap +41 -0
  97. package/src/components/Amelipro/AmeliproPageLayout/__tests__/AmeliproPageLayout.spec.ts +129 -0
  98. package/src/components/Amelipro/AmeliproPageLayout/__tests__/__snapshots__/AmeliproPageLayout.spec.ts.snap +189 -0
  99. package/src/components/Amelipro/AmeliproPagination/AmeliproPaginationBtn/__tests__/AmeliproPaginationBtn.spec.ts +92 -0
  100. package/src/components/Amelipro/AmeliproPagination/AmeliproPaginationBtn/__tests__/__snapshots__/AmeliproPaginationBtn.spec.ts.snap +56 -0
  101. package/src/components/Amelipro/AmeliproPagination/__tests__/AmeliproPagination.spec.ts +165 -0
  102. package/src/components/Amelipro/AmeliproPagination/__tests__/__snapshots__/AmeliproPagination.spec.ts.snap +83 -0
  103. package/src/components/Amelipro/AmeliproPatientBanner/__tests__/AmeliproPatientBanner.spec.ts +208 -0
  104. package/src/components/Amelipro/AmeliproPatientBanner/__tests__/__snapshots__/AmeliproPatientBanner.spec.ts.snap +285 -0
  105. package/src/components/Amelipro/AmeliproPatientLogged/__tests__/__snapshots__/AmeliproPatientLogged.spec.ts.snap +26 -7
  106. package/src/components/Amelipro/AmeliproPostalAddressField/AmeliproPostalAddressCityRow/__tests__/__snapshots__/AmeliproPostalAddressCityRow.spec.ts.snap +12 -4
  107. package/src/components/Amelipro/AmeliproRadioGroup/AmeliproRadioGroup.stories.ts +28 -8
  108. package/src/components/Amelipro/AmeliproRadioGroup/__tests__/AmeliproRadioGroup.spec.ts +332 -0
  109. package/src/components/Amelipro/AmeliproRadioGroup/__tests__/__snapshots__/AmeliproRadioGroup.spec.ts.snap +255 -0
  110. package/src/components/Amelipro/AmeliproResultList/AmeliproResultList.stories.ts +1 -2
  111. package/src/components/Amelipro/AmeliproResultList/AmeliproResultList.vue +3 -1
  112. package/src/components/Amelipro/AmeliproResultList/__tests__/__snapshots__/AmeliproResultList.spec.ts.snap +2 -1
  113. package/src/components/Amelipro/AmeliproSelect/AmeliproSelect.vue +11 -5
  114. package/src/components/Amelipro/AmeliproSelect/__tests__/AmeliproSelect.spec.ts +481 -0
  115. package/src/components/Amelipro/AmeliproSelect/__tests__/__snapshots__/AmeliproSelect.spec.ts.snap +117 -0
  116. package/src/components/Amelipro/AmeliproStateTile/AmeliproStateTile.vue +5 -2
  117. package/src/components/Amelipro/AmeliproStateTile/__tests__/AmeliproStateTile.spec.ts +206 -0
  118. package/src/components/Amelipro/AmeliproStateTile/__tests__/__snapshots__/AmeliproStateTile.spec.ts.snap +158 -0
  119. package/src/components/Amelipro/AmeliproStatus/__tests__/AmeliproStatus.spec.ts +120 -0
  120. package/src/components/Amelipro/AmeliproStatus/__tests__/__snapshots__/AmeliproStatus.spec.ts.snap +39 -0
  121. package/src/components/Amelipro/AmeliproStepper/AmeliproStepBtn/__tests__/AmeliproStepBtn.spec.ts +97 -0
  122. package/src/components/Amelipro/AmeliproStepper/AmeliproStepBtn/__tests__/__snapshots__/AmeliproStepBtn.spec.ts.snap +61 -0
  123. package/src/components/Amelipro/AmeliproStepper/__tests__/AmeliproStepper.spec.ts +248 -0
  124. package/src/components/Amelipro/AmeliproStepper/__tests__/__snapshots__/AmeliproStepper.spec.ts.snap +179 -0
  125. package/src/components/Amelipro/AmeliproTable/AmeliproTable.stories.ts +14 -13
  126. package/src/components/Amelipro/AmeliproTable/AmeliproTable.vue +2 -1
  127. package/src/components/Amelipro/AmeliproTable/__tests__/__snapshots__/AmeliproTable.spec.ts.snap +10 -3
  128. package/src/components/Amelipro/AmeliproTabs/AmeliproTabBtn/__tests__/AmeliproTabBtn.spec.ts +129 -0
  129. package/src/components/Amelipro/AmeliproTabs/AmeliproTabBtn/__tests__/__snapshots__/AmeliproTabBtn.spec.ts.snap +81 -0
  130. package/src/components/Amelipro/AmeliproTabs/AmeliproTabs.vue +2 -2
  131. package/src/components/Amelipro/AmeliproTabs/__tests__/AmeliproTabs.spec.ts +234 -0
  132. package/src/components/Amelipro/AmeliproTabs/__tests__/__snapshots__/AmeliproTabs.spec.ts.snap +122 -0
  133. package/src/components/Amelipro/AmeliproTextArea/AmeliproTextArea.vue +7 -5
  134. package/src/components/Amelipro/AmeliproTextArea/__tests__/AmeliproTextArea.spec.ts +265 -9
  135. package/src/components/Amelipro/AmeliproTextArea/__tests__/__snapshots__/AmeliproTextArea.spec.ts.snap +98 -155
  136. package/src/components/Amelipro/AmeliproTextField/AmeliproTextField.vue +7 -5
  137. package/src/components/Amelipro/AmeliproTextField/__tests__/AmeliproTextField.spec.ts +375 -0
  138. package/src/components/Amelipro/AmeliproTextField/__tests__/__snapshots__/AmeliproTextField.spec.ts.snap +143 -0
  139. package/src/components/Amelipro/AmeliproTileBtn/__tests__/AmeliproTileBtn.spec.ts +241 -0
  140. package/src/components/Amelipro/AmeliproTileBtn/__tests__/__snapshots__/AmeliproTileBtn.spec.ts.snap +74 -0
  141. package/src/components/Amelipro/AmeliproTooltips/__tests__/AmeliproTooltips.spec.ts +212 -0
  142. package/src/components/Amelipro/AmeliproTooltips/__tests__/__snapshots__/AmeliproTooltips.spec.ts.snap +71 -0
  143. package/src/components/Amelipro/AmeliproTransmission/__tests__/AmeliproTransmission.spec.ts +155 -0
  144. package/src/components/Amelipro/AmeliproTransmission/__tests__/__snapshots__/AmeliproTransmission.spec.ts.snap +240 -0
  145. package/src/components/Amelipro/AmeliproUpload/AmeliproUpload.stories.ts +0 -1
  146. package/src/components/Amelipro/ServiceMenu/tests/__snapshots__/ServiceMenu.spec.ts.snap +4 -1
  147. package/src/components/Amelipro/StructureMenu/StructureBtn/StructureBtn.vue +4 -0
  148. package/src/components/Amelipro/StructureMenu/StructureTabs/StructureTabs.vue +4 -5
  149. package/src/components/Amelipro/StructureMenu/StructureTabs/tests/__snapshots__/StructureTabs.spec.ts.snap +5 -4
  150. package/src/components/Amelipro/StructureMenu/tests/__snapshots__/StructureMenu.spec.ts.snap +13 -6
  151. package/src/components/Amelipro/UserMenu/UserMenu.vue +2 -1
  152. package/src/components/Amelipro/UserMenu/tests/__snapshots__/UserMenu.spec.ts.snap +4 -1
  153. package/src/components/Captcha/Captcha.mdx +4 -4
  154. package/src/components/Captcha/Captcha.stories.ts +8 -1
  155. package/src/components/Captcha/Captcha.vue +3 -0
  156. package/src/components/Captcha/CaptchaBase.vue +3 -0
  157. package/src/components/Captcha/captchaApi.ts +0 -1
  158. package/src/components/Customs/Selects/SySelect/SySelect.vue +2 -2
  159. package/src/components/Customs/SyCheckbox/SyCheckbox.stories.ts +5 -0
  160. package/src/components/Customs/SyCheckbox/SyCheckbox.vue +1 -1
  161. package/src/components/Customs/SyTabs/SyTabs.stories.ts +174 -10
  162. package/src/components/Customs/SyTabs/SyTabs.vue +62 -0
  163. package/src/components/Customs/SyTabs/tests/SyTabs.spec.ts +98 -0
  164. package/src/components/DatePicker/CalendarMode/DatePicker.stories.ts +13 -13
  165. package/src/components/DatePicker/CalendarMode/DatePicker.vue +13 -0
  166. package/src/components/DatePicker/ComplexDatePicker/ComplexDatePicker.stories.ts +11 -11
  167. package/src/components/DatePicker/ComplexDatePicker/ComplexDatePicker.vue +5 -0
  168. package/src/components/DatePicker/DatePickerValidationExample/DatePickerValidation.mdx +7 -0
  169. package/src/components/DatePicker/DateTextInput/DateTextInput.range.spec.ts +1 -1
  170. package/src/components/DatePicker/DateTextInput/DateTextInput.spec.ts +3 -3
  171. package/src/components/DatePicker/DateTextInput/DateTextInput.vue +50 -2
  172. package/src/components/DatePicker/DateTextInput/NoCalendar.stories.ts +15 -15
  173. package/src/components/DatePicker/composables/tests/useDateFormatValidation.spec.ts +2 -2
  174. package/src/components/DatePicker/composables/tests/useManualDateValidation.spec.ts +1 -1
  175. package/src/components/DatePicker/composables/useDateFormatDisplay.ts +25 -0
  176. package/src/components/DatePicker/composables/useDateFormatValidation.ts +5 -2
  177. package/src/components/DatePicker/composables/useManualDateValidation.ts +5 -1
  178. package/src/components/DatePicker/tests/DatePicker.validation.spec.ts +1 -1
  179. package/src/components/ErrorPage/ErrorPage.vue +54 -7
  180. package/src/components/ErrorPage/tests/__snapshots__/ErrorPage.spec.ts.snap +6 -2
  181. package/src/components/ExternalLinks/ExternalLinks.vue +2 -4
  182. package/src/components/NotFoundPage/tests/__snapshots__/NotFoundPage.spec.ts.snap +6 -2
  183. package/src/components/PasswordField/PasswordField.vue +6 -6
  184. package/src/components/RangeField/RangeSlider/RangeSlider.vue +3 -2
  185. package/src/components/RatingPicker/EmotionPicker/EmotionPicker.vue +2 -1
  186. package/src/components/RatingPicker/NumberPicker/NumberPicker.vue +2 -0
  187. package/src/components/RatingPicker/RatingPicker.stories.ts +10 -0
  188. package/src/components/RatingPicker/RatingPicker.vue +23 -1
  189. package/src/components/RatingPicker/StarsPicker/StarsPicker.vue +2 -0
  190. package/src/components/SearchListField/Accessibilite.stories.ts +4 -0
  191. package/src/components/SearchListField/SearchListField.stories.ts +16 -0
  192. package/src/components/SearchListField/SearchListField.vue +121 -109
  193. package/src/components/SearchListField/locales.ts +11 -2
  194. package/src/components/SearchListField/tests/SearchListField.spec.ts +91 -25
  195. package/src/components/SyAlert/SyAlert.vue +8 -0
  196. package/src/components/SyAlert/tests/SyAlert.spec.ts +1 -22
  197. package/src/components/Tables/SyServerTable/SyServerTable.stories.ts +304 -0
  198. package/src/components/Tables/SyServerTable/SyServerTable.vue +12 -4
  199. package/src/components/Tables/SyServerTable/tests/SyServerTable.spec.ts +67 -0
  200. package/src/components/Tables/SyTable/SyTable.stories.ts +186 -0
  201. package/src/components/Tables/SyTable/SyTable.vue +12 -4
  202. package/src/components/Tables/SyTable/tests/SyTable.spec.ts +65 -1
  203. package/src/components/Tables/common/types.ts +2 -0
  204. package/src/composables/rules/useFieldValidation.ts +47 -7
  205. package/src/components/Amelipro/AmeliproHeader/AmeliproHeaderBar/AmeliproLogoAm/tests/AmeliproLogoAm.spec.ts +0 -15
  206. package/src/components/Amelipro/AmeliproIcon/tests/AmeliproIcon.spec.ts +0 -19
  207. package/src/components/Amelipro/AmeliproIconBtn/tests/AmeliproIconBtn.spec.ts +0 -22
  208. package/src/components/Amelipro/AmeliproIconBtn/tests/__snapshots__/AmeliproIconBtn.spec.ts.snap +0 -87
  209. package/src/components/Amelipro/AmeliproIllustratedDataTile/tests/AmeliproIllustratedDataTile.spec.ts +0 -20
  210. package/src/components/Amelipro/AmeliproIllustratedDataTile/tests/__snapshots__/AmeliproIllustratedDataTile.spec.ts.snap +0 -69
  211. package/src/components/Amelipro/AmeliproIllustratedRadioGroup/tests/AmeliproIllustratedRadioGroup.spec.ts +0 -53
  212. package/src/components/Amelipro/AmeliproIllustratedRadioGroup/tests/__snapshots__/AmeliproIllustratedRadioGroup.spec.ts.snap +0 -544
  213. package/src/components/Amelipro/AmeliproMailTile/tests/AmeliproMailTile.spec.ts +0 -25
  214. package/src/components/Amelipro/AmeliproMailTile/tests/__snapshots__/AmeliproMailTile.spec.ts.snap +0 -164
  215. package/src/components/Amelipro/AmeliproMessage/tests/AmeliproMessage.spec.ts +0 -18
  216. package/src/components/Amelipro/AmeliproMessage/tests/__snapshots__/AmeliproMessage.spec.ts.snap +0 -94
  217. package/src/components/Amelipro/AmeliproMessagingLayout/tests/AmeliproMessagingLayout.spec.ts +0 -30
  218. package/src/components/Amelipro/AmeliproMessagingLayout/tests/__snapshots__/AmeliproMessagingLayout.spec.ts.snap +0 -439
  219. package/src/components/Amelipro/AmeliproNumberedCard/tests/AmeliproNumberedCard.spec.ts +0 -23
  220. package/src/components/Amelipro/AmeliproOnboarding/tests/AmeliproOnboarding.spec.ts +0 -41
  221. package/src/components/Amelipro/AmeliproOnboarding/tests/__snapshots__/AmeliproOnboarding.spec.ts.snap +0 -3
  222. package/src/components/Amelipro/AmeliproPageLayout/tests/AmeliproPageLayout.spec.ts +0 -183
  223. package/src/components/Amelipro/AmeliproPageLayout/tests/__snapshots__/AmeliproPageLayout.spec.ts.snap +0 -1602
  224. package/src/components/Amelipro/AmeliproPagination/AmeliproPaginationBtn/tests/AmeliproPaginationBtn.spec.ts +0 -15
  225. package/src/components/Amelipro/AmeliproPagination/AmeliproPaginationBtn/tests/__snapshots__/AmeliproPaginationBtn.spec.ts.snap +0 -46
  226. package/src/components/Amelipro/AmeliproPagination/tests/AmeliproPagination.spec.ts +0 -15
  227. package/src/components/Amelipro/AmeliproPagination/tests/__snapshots__/AmeliproPagination.spec.ts.snap +0 -116
  228. package/src/components/Amelipro/AmeliproPatientBanner/tests/AmeliproPatientBanner.spec.ts +0 -24
  229. package/src/components/Amelipro/AmeliproPatientBanner/tests/__snapshots__/AmeliproPatientBanner.spec.ts.snap +0 -268
  230. package/src/components/Amelipro/AmeliproRadioGroup/tests/AmeliproRadioGroup.spec.ts +0 -43
  231. package/src/components/Amelipro/AmeliproRadioGroup/tests/__snapshots__/AmeliproRadioGroup.spec.ts.snap +0 -262
  232. package/src/components/Amelipro/AmeliproSelect/tests/AmeliproSelect.spec.ts +0 -38
  233. package/src/components/Amelipro/AmeliproSelect/tests/__snapshots__/AmeliproSelect.spec.ts.snap +0 -196
  234. package/src/components/Amelipro/AmeliproStateTile/tests/AmeliproStateTile.spec.ts +0 -20
  235. package/src/components/Amelipro/AmeliproStateTile/tests/__snapshots__/AmeliproStateTile.spec.ts.snap +0 -90
  236. package/src/components/Amelipro/AmeliproStatus/tests/AmeliproStatus.spec.ts +0 -16
  237. package/src/components/Amelipro/AmeliproStatus/tests/__snapshots__/AmeliproStatus.spec.ts.snap +0 -21
  238. package/src/components/Amelipro/AmeliproStepper/AmeliproStepBtn/tests/AmeliproStepBtn.spec.ts +0 -18
  239. package/src/components/Amelipro/AmeliproStepper/AmeliproStepBtn/tests/__snapshots__/AmeliproStepBtn.spec.ts.snap +0 -34
  240. package/src/components/Amelipro/AmeliproStepper/tests/AmeliproStepper.spec.ts +0 -36
  241. package/src/components/Amelipro/AmeliproStepper/tests/__snapshots__/AmeliproStepper.spec.ts.snap +0 -354
  242. package/src/components/Amelipro/AmeliproTabs/AmeliproTabBtn/tests/AmeliproTabBtn.spec.ts +0 -20
  243. package/src/components/Amelipro/AmeliproTabs/AmeliproTabBtn/tests/__snapshots__/AmeliproTabBtn.spec.ts.snap +0 -34
  244. package/src/components/Amelipro/AmeliproTabs/tests/AmeliproTabs.spec.ts +0 -39
  245. package/src/components/Amelipro/AmeliproTabs/tests/__snapshots__/AmeliproTabs.spec.ts.snap +0 -217
  246. package/src/components/Amelipro/AmeliproTextField/tests/AmeliproTextField.spec.ts +0 -16
  247. package/src/components/Amelipro/AmeliproTextField/tests/__snapshots__/AmeliproTextField.spec.ts.snap +0 -162
  248. package/src/components/Amelipro/AmeliproTileBtn/tests/AmeliproTileBtn.spec.ts +0 -17
  249. package/src/components/Amelipro/AmeliproTileBtn/tests/__snapshots__/AmeliproTileBtn.spec.ts.snap +0 -65
  250. package/src/components/Amelipro/AmeliproTooltips/tests/AmeliproTooltips.spec.ts +0 -16
  251. package/src/components/Amelipro/AmeliproTooltips/tests/__snapshots__/AmeliproTooltips.spec.ts.snap +0 -105
  252. package/src/components/Amelipro/AmeliproTransmission/tests/AmeliproTransmission.spec.ts +0 -16
  253. package/src/components/Amelipro/AmeliproTransmission/tests/__snapshots__/AmeliproTransmission.spec.ts.snap +0 -246
  254. package/src/components/SyAlert/tests/__snapshots__/SyAlert.spec.ts.snap +0 -99
@@ -0,0 +1,459 @@
1
+ import { VueWrapper, shallowMount } from '@vue/test-utils'
2
+ import { beforeEach, describe, expect, it, vi } from 'vitest'
3
+ import { AmeliproIcon } from '@/components'
4
+ import AmeliproIconBtn from '../AmeliproIconBtn.vue'
5
+ import type { ComponentProps } from 'vue-component-type-helpers'
6
+ import type { ExpectedPropOptions } from '@tests/types'
7
+ import { defineComponent, h, type PropType } from 'vue'
8
+ import type { RouteLocationRaw } from 'vue-router'
9
+ import TestHelper from '@tests/helpers/TestHelper'
10
+ import { VBtn } from 'vuetify/components'
11
+
12
+ vi.mock('@/composables/useError', () => ({ useError: () => ({ propError: vi.fn() }) }))
13
+
14
+ const expectedPropOptions: ExpectedPropOptions<typeof AmeliproIconBtn> = {
15
+ badge: {
16
+ type: [Boolean, Number, String],
17
+ default: false,
18
+ },
19
+ badgeBgColor: {
20
+ type: String,
21
+ default: undefined,
22
+ },
23
+ badgeColor: {
24
+ type: String,
25
+ default: undefined,
26
+ },
27
+ bordered: {
28
+ type: Boolean,
29
+ default: false,
30
+ },
31
+ btnLabel: {
32
+ type: String,
33
+ default: undefined,
34
+ },
35
+ btnTitle: {
36
+ type: String,
37
+ default: undefined,
38
+ },
39
+ href: {
40
+ type: String,
41
+ default: undefined,
42
+ },
43
+ icon: {
44
+ type: String,
45
+ default: undefined,
46
+ },
47
+ iconBgColor: {
48
+ type: String,
49
+ default: 'transparent',
50
+ },
51
+ iconBorderColor: {
52
+ type: String,
53
+ default: undefined,
54
+ },
55
+ iconColor: {
56
+ type: String,
57
+ required: true,
58
+ },
59
+ iconFocusBgColor: {
60
+ type: String,
61
+ default: undefined,
62
+ },
63
+ iconFocusBorderColor: {
64
+ type: String,
65
+ default: undefined,
66
+ },
67
+ iconFocusColor: {
68
+ type: String,
69
+ default: undefined,
70
+ },
71
+ iconHoverBgColor: {
72
+ type: String,
73
+ default: 'transparent',
74
+ },
75
+ iconHoverBorderColor: {
76
+ type: String,
77
+ default: undefined,
78
+ },
79
+ iconHoverColor: {
80
+ type: String,
81
+ required: true,
82
+ },
83
+ large: {
84
+ type: Boolean,
85
+ default: false,
86
+ },
87
+ medium: {
88
+ type: Boolean,
89
+ default: false,
90
+ },
91
+ size: {
92
+ type: String,
93
+ default: undefined,
94
+ },
95
+ small: {
96
+ type: Boolean,
97
+ default: false,
98
+ },
99
+ to: {
100
+ type: [Array, Object, String] as PropType<RouteLocationRaw>,
101
+ default: undefined,
102
+ },
103
+ uniqueId: {
104
+ type: String,
105
+ default: undefined,
106
+ },
107
+ xLarge: {
108
+ type: Boolean,
109
+ default: false,
110
+ },
111
+ }
112
+
113
+ // Values pour les props "required"
114
+ const requiredPropValues = (): ComponentProps<typeof AmeliproIconBtn> => ({
115
+ iconColor: 'required-icon-color',
116
+ iconHoverColor: 'required-icon-hover-color',
117
+ })
118
+
119
+ // Valeurs pour les props "modified"
120
+ const modifiedPropValues = (): ComponentProps<typeof AmeliproIconBtn> => ({
121
+ badge: true,
122
+ badgeBgColor: 'ap-blue',
123
+ badgeColor: 'ap-yellow',
124
+ bordered: true,
125
+ btnLabel: 'Modified btn label',
126
+ href: '#modified-href',
127
+ icon: 'modified-icon',
128
+ iconBgColor: '#123456',
129
+ iconBorderColor: 'ap-grey',
130
+ iconColor: 'modified-icon-color',
131
+ iconFocusBgColor: '#abcdef',
132
+ iconFocusBorderColor: 'ap-orange',
133
+ iconFocusColor: 'modified-icon-focus-color',
134
+ iconHoverBgColor: '#654321',
135
+ iconHoverBorderColor: 'ap-red',
136
+ iconHoverColor: 'modified-icon-hover-color',
137
+ large: true,
138
+ medium: true,
139
+ size: 'modified-size',
140
+ small: true,
141
+ to: '#modified-to',
142
+ uniqueId: 'modified-unique-id',
143
+ xLarge: true,
144
+ })
145
+
146
+ // Mock VBtn de Vuetify
147
+ const VBtnMock = defineComponent({
148
+ name: 'VBtn',
149
+ emits: ['focus', 'mouseenter', 'mouseleave'],
150
+ setup(props, { slots }) {
151
+ return () => h('v-btn-stub', props, slots.default ? slots.default() : [])
152
+ },
153
+ })
154
+
155
+ const testHelper = new TestHelper(AmeliproIconBtn)
156
+ testHelper.setExpectedPropOptions(expectedPropOptions)
157
+ .setRequiredPropValues(requiredPropValues)
158
+ .setModifiedPropValues(modifiedPropValues)
159
+
160
+ describe('AmeliproIconBtn', () => {
161
+ describe('Snapshots', () => {
162
+ testHelper.snapshots()
163
+ })
164
+
165
+ describe('Properties', () => {
166
+ testHelper.properties()
167
+ })
168
+
169
+ describe('Setting props should update attributes of inner tags', () => {
170
+ let vueWrapper: VueWrapper<InstanceType<typeof AmeliproIconBtn>>
171
+ describe('label', () => {
172
+ beforeEach(() => {
173
+ // Par défaut, btnLabel est undefined donc le label ne s'affiche pas
174
+ vueWrapper = shallowMount(AmeliproIconBtn, {
175
+ props: { ...requiredPropValues(), badge: true },
176
+ global: {
177
+ stubs: {
178
+ AmeliproIcon,
179
+ VBtn: VBtnMock,
180
+ },
181
+ },
182
+ })
183
+ })
184
+
185
+ it('prop uniqueId sets attribute id', async () => {
186
+ // Le label n'existe pas par défaut car btnLabel est undefined
187
+ expect(vueWrapper.find('.amelipro-btn__label').exists()).toBe(false)
188
+
189
+ const { btnLabel, uniqueId } = modifiedPropValues()
190
+ await vueWrapper.setProps({ btnLabel })
191
+ expect(vueWrapper.find('.amelipro-btn__label').attributes('id')).toBeUndefined()
192
+
193
+ await vueWrapper.setProps({ uniqueId })
194
+ expect(vueWrapper.find('.amelipro-btn__label').attributes('id')).toBe(`${testHelper.modified('uniqueId')}-btn-label`)
195
+ })
196
+
197
+ it('prop btnLabel sets label content', async () => {
198
+ expect(vueWrapper.find('.amelipro-btn__label').exists()).toBe(false)
199
+
200
+ const { btnLabel } = modifiedPropValues()
201
+ await vueWrapper.setProps({ btnLabel })
202
+ expect(vueWrapper.find('.amelipro-btn__label').text()).toBe(testHelper.modified('btnLabel'))
203
+
204
+ // Si btnLabel est retiré, le label ne doit plus exister
205
+ await vueWrapper.setProps({ btnLabel: undefined })
206
+ expect(vueWrapper.find('.amelipro-btn__label').exists()).toBe(false)
207
+ })
208
+ })
209
+
210
+ describe('badge wrapper', () => {
211
+ beforeEach(() => {
212
+ vueWrapper = shallowMount(AmeliproIconBtn, {
213
+ props: { ...requiredPropValues(), badge: true },
214
+ global: {
215
+ stubs: {
216
+ AmeliproIcon,
217
+ VBtn: VBtnMock,
218
+ },
219
+ },
220
+ })
221
+ })
222
+
223
+ it('prop uniqueId sets attribute id', async () => {
224
+ expect(vueWrapper.find('.amelipro-btn__badge-wrapper').attributes('id')).toBe(testHelper.default('uniqueId'))
225
+
226
+ const { uniqueId } = modifiedPropValues()
227
+ await vueWrapper.setProps({ uniqueId })
228
+ expect(vueWrapper.find('.amelipro-btn__badge-wrapper').attributes('id')).toBe(`${testHelper.modified('uniqueId')}-badge`)
229
+ })
230
+ })
231
+
232
+ describe('badge', () => {
233
+ beforeEach(() => {
234
+ vueWrapper = shallowMount(AmeliproIconBtn, {
235
+ props: { ...requiredPropValues(), badge: true },
236
+ global: {
237
+ stubs: {
238
+ AmeliproIcon,
239
+ VBtn: VBtnMock,
240
+ },
241
+ },
242
+ })
243
+ })
244
+
245
+ it('props badgeBgColor & badgeColor set attribute style', async () => {
246
+ expect(vueWrapper.find('.amelipro-btn__badge').attributes('style')).toBe('background-color: #000; color: #000;')
247
+
248
+ const { badgeBgColor, badgeColor } = modifiedPropValues()
249
+ await vueWrapper.setProps({ badgeBgColor })
250
+ expect(vueWrapper.find('.amelipro-btn__badge').attributes('style')).toBe('background-color: #0C419A; color: #000;')
251
+
252
+ await vueWrapper.setProps({ badgeColor })
253
+ expect(vueWrapper.find('.amelipro-btn__badge').attributes('style')).toBe('background-color: #0C419A; color: #F0B323;')
254
+ })
255
+
256
+ it('prop badge set badge content', async () => {
257
+ // badge est booléen par défaut, donc testHelper.default('badge') retourne false.
258
+ // Selon la règle 2.6, il ne faut PAS utiliser testHelper pour vérifier le texte dans ce cas.
259
+ expect(vueWrapper.find('.amelipro-btn__badge').text()).toBe('')
260
+
261
+ const { badge } = modifiedPropValues()
262
+ await vueWrapper.setProps({ badge })
263
+ // badge = true (booléen), donc toujours pas de texte attendu
264
+ expect(vueWrapper.find('.amelipro-btn__badge').text()).toBe('')
265
+
266
+ await vueWrapper.setProps({ badge: 'Badge text' })
267
+ expect(vueWrapper.find('.amelipro-btn__badge').text()).toBe('Badge text')
268
+ })
269
+ })
270
+ })
271
+
272
+ describe('Setting props should update props or attributes of inner components', () => {
273
+ let vueWrapper: VueWrapper<InstanceType<typeof AmeliproIconBtn>>
274
+ describe('VBtn', () => {
275
+ beforeEach(() => {
276
+ vueWrapper = shallowMount(AmeliproIconBtn, { props: requiredPropValues() })
277
+ })
278
+
279
+ it('prop uniqueId sets attribute id', async () => {
280
+ expect(vueWrapper.findComponent(VBtn).attributes('id')).toBeUndefined()
281
+
282
+ const { uniqueId } = modifiedPropValues()
283
+ await vueWrapper.setProps({ uniqueId })
284
+ expect(vueWrapper.findComponent(VBtn).attributes('id')).toBe('modified-unique-id')
285
+ })
286
+
287
+ it('prop href sets prop href', async () => {
288
+ expect(vueWrapper.findComponent(VBtn).props('href')).toBeUndefined()
289
+
290
+ const { href } = modifiedPropValues()
291
+ await vueWrapper.setProps({ href })
292
+ expect(vueWrapper.findComponent(VBtn).props('href')).toBe('#modified-href')
293
+ })
294
+
295
+ it('prop to sets prop to', async () => {
296
+ expect(vueWrapper.findComponent(VBtn).props('to')).toBeUndefined()
297
+
298
+ const { to } = modifiedPropValues()
299
+ await vueWrapper.setProps({ to })
300
+ expect(vueWrapper.findComponent(VBtn).props('to')).toBe('#modified-to')
301
+ })
302
+ })
303
+
304
+ describe('AmeliproIcon', () => {
305
+ beforeEach(() => {
306
+ vueWrapper = shallowMount(AmeliproIconBtn, {
307
+ props: requiredPropValues(),
308
+ slots: { icon: '<span>The icon</span>' },
309
+ global: {
310
+ stubs: { AmeliproIcon, VBtn: VBtnMock },
311
+ },
312
+ })
313
+ })
314
+
315
+ it('should exists', () => {
316
+ expect(vueWrapper.findComponent(AmeliproIcon).exists()).toBe(true)
317
+ expect(vueWrapper.props('btnLabel')).toBeUndefined()
318
+ })
319
+
320
+ it('props iconHoverBorderColor & iconBorderColor sets prop borderColor', async () => {
321
+ const { iconBorderColor, iconHoverBorderColor } = modifiedPropValues()
322
+ expect(vueWrapper.findComponent(AmeliproIcon).props('borderColor')).toBeUndefined()
323
+
324
+ await vueWrapper.setProps({ iconBorderColor })
325
+ expect(vueWrapper.findComponent(AmeliproIcon).props('borderColor')).toBe(testHelper.modified('iconBorderColor'))
326
+
327
+ await vueWrapper.findComponent(VBtn).vm.$emit('mouseenter')
328
+ expect(vueWrapper.findComponent(AmeliproIcon).props('borderColor')).toBeUndefined()
329
+
330
+ await vueWrapper.setProps({ iconHoverBorderColor })
331
+ expect(vueWrapper.findComponent(AmeliproIcon).props('borderColor')).toBe(testHelper.modified('iconHoverBorderColor'))
332
+ })
333
+
334
+ // --- AJOUT TESTS FOCUS ---
335
+ it('props iconFocusBorderColor & iconBorderColor sets prop borderColor on focus', async () => {
336
+ const { iconBorderColor, iconFocusBorderColor } = modifiedPropValues()
337
+ expect(vueWrapper.findComponent(AmeliproIcon).props('borderColor')).toBeUndefined()
338
+
339
+ await vueWrapper.setProps({ iconBorderColor })
340
+ expect(vueWrapper.findComponent(AmeliproIcon).props('borderColor')).toBe(testHelper.modified('iconBorderColor'))
341
+
342
+ await vueWrapper.findComponent(VBtn).vm.$emit('focus')
343
+ expect(vueWrapper.findComponent(AmeliproIcon).props('borderColor')).toBeUndefined()
344
+
345
+ await vueWrapper.setProps({ iconFocusBorderColor })
346
+ expect(vueWrapper.findComponent(AmeliproIcon).props('borderColor')).toBe(testHelper.modified('iconFocusBorderColor'))
347
+ })
348
+
349
+ it('prop iconFocusBgColor sets prop iconBgColor on focus', async () => {
350
+ const { iconFocusBgColor } = modifiedPropValues()
351
+ expect(vueWrapper.findComponent(AmeliproIcon).props('iconBgColor')).toBe('transparent')
352
+
353
+ await vueWrapper.findComponent(VBtn).vm.$emit('focus')
354
+ expect(vueWrapper.findComponent(AmeliproIcon).props('iconBgColor')).toBe('transparent')
355
+
356
+ await vueWrapper.setProps({ iconFocusBgColor })
357
+ expect(vueWrapper.findComponent(AmeliproIcon).props('iconBgColor')).toBe(testHelper.modified('iconFocusBgColor'))
358
+ })
359
+
360
+ it('prop iconFocusColor sets prop iconColor on focus', async () => {
361
+ const { iconFocusColor } = modifiedPropValues()
362
+ expect(vueWrapper.findComponent(AmeliproIcon).props('iconColor')).toBe(testHelper.default('iconColor'))
363
+
364
+ await vueWrapper.findComponent(VBtn).vm.$emit('focus')
365
+ // iconFocusColor est par défaut undefined => utiliser iconHoverColor
366
+ expect(vueWrapper.findComponent(AmeliproIcon).props('iconColor')).toBe(testHelper.default('iconHoverColor'))
367
+
368
+ await vueWrapper.setProps({ iconFocusColor })
369
+ expect(vueWrapper.findComponent(AmeliproIcon).props('iconColor')).toBe(testHelper.modified('iconFocusColor'))
370
+ })
371
+
372
+ it('prop bordered sets prop bordered', async () => {
373
+ expect(vueWrapper.findComponent(AmeliproIcon).props('bordered')).toBe(false)
374
+
375
+ await vueWrapper.setProps({ bordered: true })
376
+ expect(vueWrapper.findComponent(AmeliproIcon).props('bordered')).toBe(true)
377
+ })
378
+
379
+ it('slots prepend & append sets attribute class', () => {
380
+ expect(vueWrapper.findComponent(AmeliproIcon).attributes('class')).toBe('amelipro-icon icon-custom')
381
+
382
+ vueWrapper = shallowMount(AmeliproIconBtn, {
383
+ props: requiredPropValues(),
384
+ slots: { prepend: '<span>Slot #prepend content</span>' },
385
+ global: {
386
+ stubs: {
387
+ AmeliproIcon,
388
+ VBtn: VBtnMock,
389
+ },
390
+ },
391
+ })
392
+ expect(vueWrapper.findComponent(AmeliproIcon).attributes('class')).toBe('amelipro-icon icon-custom ml-2')
393
+
394
+ vueWrapper = shallowMount(AmeliproIconBtn, {
395
+ props: requiredPropValues(),
396
+ slots: { append: '<span>Slot #append content</span>' },
397
+ global: {
398
+ stubs: {
399
+ AmeliproIcon,
400
+ VBtn: VBtnMock,
401
+ },
402
+ },
403
+ })
404
+ expect(vueWrapper.findComponent(AmeliproIcon).attributes('class')).toBe('amelipro-icon icon-custom mr-2')
405
+
406
+ vueWrapper = shallowMount(AmeliproIconBtn, {
407
+ props: requiredPropValues(),
408
+ slots: {
409
+ append: '<span>Slot #append content</span>',
410
+ prepend: '<span>Slot #prepend content</span>',
411
+ },
412
+ global: {
413
+ stubs: {
414
+ AmeliproIcon,
415
+ VBtn: VBtnMock,
416
+ },
417
+ },
418
+ })
419
+ expect(vueWrapper.findComponent(AmeliproIcon).attributes('class')).toBe('amelipro-icon icon-custom ml-2 mr-2')
420
+ })
421
+
422
+ it('prop icon sets prop icon', async () => {
423
+ const { icon } = modifiedPropValues()
424
+ expect(vueWrapper.findComponent(AmeliproIcon).props('icon')).toBeUndefined()
425
+
426
+ await vueWrapper.setProps({ icon })
427
+ expect(vueWrapper.findComponent(AmeliproIcon).props('icon')).toBe(testHelper.modified('icon'))
428
+ })
429
+
430
+ it('prop iconBgColor sets prop iconBgColor', async () => {
431
+ const { iconBgColor, iconHoverBgColor } = modifiedPropValues()
432
+ expect(vueWrapper.findComponent(AmeliproIcon).props('iconBgColor')).toBe('transparent')
433
+
434
+ await vueWrapper.setProps({ iconBgColor })
435
+ expect(vueWrapper.findComponent(AmeliproIcon).props('iconBgColor')).toBe(testHelper.modified('iconBgColor'))
436
+
437
+ await vueWrapper.findComponent(VBtn).vm.$emit('mouseenter')
438
+ expect(vueWrapper.findComponent(AmeliproIcon).props('iconBgColor')).toBe('transparent')
439
+
440
+ await vueWrapper.setProps({ iconHoverBgColor })
441
+ expect(vueWrapper.findComponent(AmeliproIcon).props('iconBgColor')).toBe(testHelper.modified('iconHoverBgColor'))
442
+ })
443
+
444
+ it('prop disabled, iconHoverColor, infoBlock, iconColor & text sets prop iconColor', async () => {
445
+ expect(vueWrapper.findComponent(AmeliproIcon).props('iconColor')).toBe(testHelper.default('iconColor'))
446
+
447
+ const { iconColor, iconHoverColor } = modifiedPropValues()
448
+ await vueWrapper.setProps({ iconColor })
449
+ expect(vueWrapper.findComponent(AmeliproIcon).props('iconColor')).toBe(testHelper.modified('iconColor'))
450
+
451
+ await vueWrapper.findComponent(VBtn).vm.$emit('mouseenter')
452
+ expect(vueWrapper.findComponent(AmeliproIcon).props('iconColor')).toBe(testHelper.default('iconHoverColor'))
453
+
454
+ await vueWrapper.setProps({ iconHoverColor })
455
+ expect(vueWrapper.findComponent(AmeliproIcon).props('iconColor')).toBe(testHelper.modified('iconHoverColor'))
456
+ })
457
+ })
458
+ })
459
+ })
@@ -0,0 +1,58 @@
1
+ // Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
2
+
3
+ exports[`AmeliproIconBtn > Snapshots > renders the component with all properties filled in 1`] = `
4
+ <v-btn-stub
5
+ block="false"
6
+ border="false"
7
+ class="btn--icon"
8
+ density="default"
9
+ disabled="false"
10
+ elevation="0"
11
+ exact="false"
12
+ flat="false"
13
+ height="auto"
14
+ href="#modified-href"
15
+ icon="true"
16
+ id="modified-unique-id"
17
+ loading="false"
18
+ plain=""
19
+ replace="false"
20
+ ripple="false"
21
+ size="default"
22
+ slim="false"
23
+ stacked="false"
24
+ symbol="Symbol(vuetify:v-btn-toggle)"
25
+ tag="button"
26
+ tile="true"
27
+ to="#modified-to"
28
+ variant="elevated"
29
+ width="auto"
30
+ ></v-btn-stub>
31
+ `;
32
+
33
+ exports[`AmeliproIconBtn > Snapshots > renders the component with only required properties filled in 1`] = `
34
+ <v-btn-stub
35
+ block="false"
36
+ border="false"
37
+ class="btn--icon"
38
+ density="default"
39
+ disabled="false"
40
+ elevation="0"
41
+ exact="false"
42
+ flat="false"
43
+ height="auto"
44
+ icon="true"
45
+ loading="false"
46
+ plain=""
47
+ replace="false"
48
+ ripple="false"
49
+ size="default"
50
+ slim="false"
51
+ stacked="false"
52
+ symbol="Symbol(vuetify:v-btn-toggle)"
53
+ tag="button"
54
+ tile="true"
55
+ variant="elevated"
56
+ width="auto"
57
+ ></v-btn-stub>
58
+ `;
@@ -58,10 +58,10 @@ export const Default: Story = {
58
58
  return { args }
59
59
  },
60
60
  template: `
61
- <AmeliproIllustratedDataTile
62
- v-bind="args"
63
- />
64
- `,
61
+ <AmeliproIllustratedDataTile
62
+ v-bind="args"
63
+ />
64
+ `,
65
65
  }),
66
66
 
67
67
  }
@@ -70,7 +70,7 @@ export const Default: Story = {
70
70
  export const AvecImage: Story = {
71
71
  name: 'Avec image',
72
72
  args: {
73
- imgSrc: '.storybook/public/logos/logo-assurance-maladie.svg',
73
+ imgSrc: '/logos/logo-assurance-maladie.svg',
74
74
  labelFirstLine: 'Assurance Maladie',
75
75
  labelSecondLine: 'Partenaire',
76
76
  tileWidth: '250px',
@@ -82,7 +82,7 @@ export const AvecImage: Story = {
82
82
  name: 'Template',
83
83
  code: `
84
84
  <AmeliproIllustratedDataTile
85
- img-src=".storybook/public/logos/logo-assurance-maladie.svg"
85
+ img-src="/logos/logo-assurance-maladie.svg"
86
86
  label-first-line="Assurance Maladie"
87
87
  label-second-line="Partenaire"
88
88
  tile-width="250px"
@@ -93,11 +93,13 @@ export const AvecImage: Story = {
93
93
  },
94
94
  render: args => ({
95
95
  components: { AmeliproIllustratedDataTile },
96
- setup() { return { args } },
96
+ setup() {
97
+ return { args }
98
+ },
97
99
  template: `
98
- <p class="mb-2">Affichage d’une image personnalisée grâce à la prop <code>imgSrc</code>.</p>
99
- <AmeliproIllustratedDataTile v-bind="args" />
100
- `,
100
+ <p class="mb-2">Affichage d’une image personnalisée grâce à la prop <code>imgSrc</code>.</p>
101
+ <AmeliproIllustratedDataTile v-bind="args"/>
102
+ `,
101
103
  }),
102
104
  }
103
105
 
@@ -128,11 +130,13 @@ export const AvecIcone: Story = {
128
130
  },
129
131
  render: args => ({
130
132
  components: { AmeliproIllustratedDataTile },
131
- setup() { return { args } },
133
+ setup() {
134
+ return { args }
135
+ },
132
136
  template: `
133
- <p class="mb-2">Affichage d’une icône grâce à la prop <code>iconName</code>.</p>
134
- <AmeliproIllustratedDataTile v-bind="args" />
135
- `,
137
+ <p class="mb-2">Affichage d’une icône grâce à la prop <code>iconName</code>.</p>
138
+ <AmeliproIllustratedDataTile v-bind="args"/>
139
+ `,
136
140
  }),
137
141
  }
138
142
 
@@ -168,11 +172,14 @@ export const AvecInfosComplements: Story = {
168
172
  },
169
173
  render: args => ({
170
174
  components: { AmeliproIllustratedDataTile },
171
- setup() { return { args } },
175
+ setup() {
176
+ return { args }
177
+ },
172
178
  template: `
173
- <p class="mb-2">Affichage d’informations complémentaires sous le sous-titre grâce à la prop <code>complementaryInformation</code>.</p>
174
- <AmeliproIllustratedDataTile v-bind="args" />
175
- `,
179
+ <p class="mb-2">Affichage d’informations complémentaires sous le sous-titre grâce à la prop <code>complementaryInformation</code>.
180
+ </p>
181
+ <AmeliproIllustratedDataTile v-bind="args"/>
182
+ `,
176
183
  }),
177
184
  }
178
185
 
@@ -205,11 +212,13 @@ export const TitreNiveauPersonnalise: Story = {
205
212
  },
206
213
  render: args => ({
207
214
  components: { AmeliproIllustratedDataTile },
208
- setup() { return { args } },
215
+ setup() {
216
+ return { args }
217
+ },
209
218
  template: `
210
- <p class="mb-2">Le niveau du titre est personnalisé grâce à la prop <code>titleLevel</code>.</p>
211
- <AmeliproIllustratedDataTile v-bind="args" />
212
- `,
219
+ <p class="mb-2">Le niveau du titre est personnalisé grâce à la prop <code>titleLevel</code>.</p>
220
+ <AmeliproIllustratedDataTile v-bind="args"/>
221
+ `,
213
222
  }),
214
223
  }
215
224
 
@@ -244,10 +253,13 @@ export const AvecStylePerso: Story = {
244
253
  },
245
254
  render: args => ({
246
255
  components: { AmeliproIllustratedDataTile },
247
- setup() { return { args } },
256
+ setup() {
257
+ return { args }
258
+ },
248
259
  template: `
249
- <p class="mb-2">Le padding et la hauteur minimale sont personnalisés grâce aux props <code>tilePadding</code> et <code>tileMinHeight</code>.</p>
250
- <AmeliproIllustratedDataTile v-bind="args" />
251
- `,
260
+ <p class="mb-2">Le padding et la hauteur minimale sont personnalisés grâce aux props <code>tilePadding</code>
261
+ et <code>tileMinHeight</code>.</p>
262
+ <AmeliproIllustratedDataTile v-bind="args"/>
263
+ `,
252
264
  }),
253
265
  }