@cnamts/synapse 1.0.12 → 1.0.14

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 (339) hide show
  1. package/README.md +0 -0
  2. package/dist/{DateFilter-DoCcOfDW.js → DateFilter-isr8mXVb.js} +1 -1
  3. package/dist/{NumberFilter-9uR8uo6p.js → NumberFilter-BOe7DqWX.js} +1 -1
  4. package/dist/{PeriodFilter-CxN5ini7.js → PeriodFilter-WTprpO40.js} +1 -1
  5. package/dist/{SelectFilter-bfxipgvt.js → SelectFilter-CqlG5dmI.js} +1 -1
  6. package/dist/{TextFilter-yCnWcmW2.js → TextFilter-fVW5bsRw.js} +1 -1
  7. package/dist/components/Amelipro/AmeliproAccordion/AmeliproAccordion.d.ts +1 -1
  8. package/dist/components/Amelipro/AmeliproAccordion/AmeliproAccordionTemplate/AmeliproAccordionTemplate.d.ts +1 -1
  9. package/dist/components/Amelipro/AmeliproAccordionResult/AmeliproAccordionResult.d.ts +1 -1
  10. package/dist/components/Amelipro/AmeliproAccordionResult/AmeliproAccordionResultTemplate/AmeliproAccordionResultTemplate.d.ts +1 -1
  11. package/dist/components/Amelipro/AmeliproAutoCompleteField/AmeliproAutoCompleteField.d.ts +104 -90
  12. package/dist/components/Amelipro/AmeliproCard/AmeliproCard.d.ts +1 -1
  13. package/dist/components/Amelipro/AmeliproFilePreview/AmeliproFilePreview.d.ts +3 -3
  14. package/dist/components/Amelipro/AmeliproIcon/AmeliproIcon.d.ts +1 -1
  15. package/dist/components/Amelipro/AmeliproIconBtn/AmeliproIconBtn.d.ts +5 -5
  16. package/dist/components/Amelipro/AmeliproMultipleFoldingCard/AmeliproMultipleFoldingCard.d.ts +1 -1
  17. package/dist/components/Amelipro/AmeliproNumberedCard/AmeliproNumberedCard.d.ts +1 -1
  18. package/dist/components/Amelipro/AmeliproPostalAddressField/AmeliproPostalAddressCityRow/AmeliproPostalAddressCityRow.d.ts +24 -32
  19. package/dist/components/Amelipro/AmeliproPostalAddressField/AmeliproPostalAddressField.d.ts +36 -48
  20. package/dist/components/Amelipro/AmeliproSelect/AmeliproSelect.d.ts +104 -90
  21. package/dist/components/Amelipro/AmeliproTabs/AmeliproTabs.d.ts +105 -91
  22. package/dist/components/Amelipro/AmeliproTextArea/AmeliproTextArea.d.ts +5 -5
  23. package/dist/components/Amelipro/AmeliproTextField/AmeliproTextField.d.ts +15 -17
  24. package/dist/components/Amelipro/StructureMenu/StructureTabs/StructureTabs.d.ts +1 -1
  25. package/dist/components/Captcha/Captcha.d.ts +70 -0
  26. package/dist/components/Captcha/CaptchaAlert.d.ts +13 -0
  27. package/dist/components/Captcha/CaptchaBase.d.ts +56 -0
  28. package/dist/components/Captcha/CaptchaBtn.d.ts +12 -0
  29. package/dist/components/Captcha/CaptchaForm.d.ts +16 -0
  30. package/dist/components/Captcha/CaptchaImg.d.ts +12 -0
  31. package/dist/components/Captcha/CaptchaInformation.d.ts +20 -0
  32. package/dist/components/Captcha/captchaApi.d.ts +41 -0
  33. package/dist/components/Captcha/icons/volumeUp.d.ts +2 -0
  34. package/dist/components/Captcha/locales.d.ts +35 -0
  35. package/dist/components/Captcha/types.d.ts +2 -0
  36. package/dist/components/ChipList/ChipList.d.ts +2 -2
  37. package/dist/components/Customs/Selects/SySelect/SySelect.d.ts +31 -19
  38. package/dist/components/Customs/SyForm/SyForm.d.ts +6 -3
  39. package/dist/components/Customs/SyTabs/SyTabs.d.ts +20 -0
  40. package/dist/components/Customs/SyTextField/SyTextField.d.ts +13 -17
  41. package/dist/components/DatePicker/CalendarMode/DatePicker.d.ts +156 -74
  42. package/dist/components/DatePicker/ComplexDatePicker/ComplexDatePicker.d.ts +127 -57
  43. package/dist/components/DatePicker/DateTextInput/DateTextInput.d.ts +18 -17
  44. package/dist/components/DatePicker/composables/useDateFormatDisplay.d.ts +3 -0
  45. package/dist/components/DatePicker/tests/setup.d.ts +1216 -560
  46. package/dist/components/FilterSideBar/FilterSideBar.d.ts +8 -0
  47. package/dist/components/HeaderToolbar/HeaderToolbar.d.ts +62 -38
  48. package/dist/components/LangBtn/LangBtn.d.ts +4 -0
  49. package/dist/components/NirField/NirField.d.ts +29 -34
  50. package/dist/components/NirField/locales.d.ts +1 -3
  51. package/dist/components/PasswordField/PasswordField.d.ts +2 -0
  52. package/dist/components/PeriodField/PeriodField.d.ts +304 -140
  53. package/dist/components/PhoneField/PhoneField.d.ts +13 -17
  54. package/dist/components/RatingPicker/RatingPicker.d.ts +9 -0
  55. package/dist/components/SearchListField/SearchListField.d.ts +42 -413
  56. package/dist/components/SearchListField/locales.d.ts +1 -2
  57. package/dist/components/SyAlert/SyAlert.d.ts +1 -1
  58. package/dist/components/SyTextArea/SyTextArea.d.ts +2 -4
  59. package/dist/components/Tables/SyServerTable/SyServerTable.d.ts +15 -8
  60. package/dist/components/Tables/SyTable/SyTable.d.ts +15 -8
  61. package/dist/components/Tables/common/SyTablePagination.d.ts +31 -19
  62. package/dist/components/Tables/common/organizeColumns/OrganizeColumns.d.ts +4 -0
  63. package/dist/components/Tables/common/types.d.ts +2 -0
  64. package/dist/components/index.d.ts +1 -0
  65. package/dist/composables/validation/useFormValidation.d.ts +10 -0
  66. package/dist/composables/validation/useValidatable.d.ts +10 -2
  67. package/dist/design-system-v3.js +126 -125
  68. package/dist/design-system-v3.umd.cjs +168 -152
  69. package/dist/main-CbBVJ_le.js +34377 -0
  70. package/dist/style.css +1 -1
  71. package/package.json +5 -2
  72. package/src/assets/amelipro/icons.ts +17 -0
  73. package/src/components/Amelipro/AmeliproAccordionFrieze/AmeliproAccordionFrieze.stories.ts +40 -36
  74. package/src/components/Amelipro/AmeliproAccordionGroup/__tests__/AmeliproAccordionGroup.spec.ts +226 -26
  75. package/src/components/Amelipro/AmeliproAccordionGroup/__tests__/__snapshots__/AmeliproAccordionGroup.spec.ts.snap +55 -506
  76. package/src/components/Amelipro/AmeliproAccordionList/AmeliproAccordionList.stories.ts +1 -1
  77. package/src/components/Amelipro/AmeliproAccordionList/AmeliproAccordionList.vue +7 -2
  78. package/src/components/Amelipro/AmeliproAccordionList/__tests__/__snapshots__/AmeliproAccordionList.spec.ts.snap +2 -1
  79. package/src/components/Amelipro/AmeliproAccordionResult/AmeliproAccordionResultTemplate/__tests__/__snapshots__/AmeliproAccordionResultTemplate.spec.ts.snap +4 -1
  80. package/src/components/Amelipro/AmeliproAccordionResult/__tests__/__snapshots__/AmeliproAccordionResult.spec.ts.snap +4 -1
  81. package/src/components/Amelipro/AmeliproAccordionResultList/AmeliproAccordionResultList.stories.ts +1 -1
  82. package/src/components/Amelipro/AmeliproAccordionResultList/AmeliproAccordionResultList.vue +9 -3
  83. package/src/components/Amelipro/AmeliproAccordionResultList/__tests__/__snapshots__/AmeliproAccordionResultList.spec.ts.snap +42 -11
  84. package/src/components/Amelipro/AmeliproAutoCompleteField/AmeliproAutoCompleteField.stories.ts +4 -4
  85. package/src/components/Amelipro/AmeliproAutoCompleteField/AmeliproAutoCompleteField.vue +7 -5
  86. package/src/components/Amelipro/AmeliproAutoCompleteField/__tests__/__snapshots__/AmeliproAutoCompleteField.spec.ts.snap +4 -2
  87. package/src/components/Amelipro/AmeliproBtn/AmeliproBtn.stories.ts +1 -40
  88. package/src/components/Amelipro/AmeliproBtn/AmeliproBtn.vue +4 -0
  89. package/src/components/Amelipro/AmeliproCallback/AmeliproCallback.stories.ts +4 -2
  90. package/src/components/Amelipro/AmeliproCaptcha/__tests__/__snapshots__/AmeliproCaptcha.spec.ts.snap +2 -1
  91. package/src/components/Amelipro/AmeliproClickableTile/AmeliproClickableTile.stories.ts +39 -29
  92. package/src/components/Amelipro/AmeliproCopyBtn/__tests__/__snapshots__/AmeliproCopyBtn.spec.ts.snap +4 -1
  93. package/src/components/Amelipro/AmeliproCustomSelector/AmeliproCustomSelector.vue +3 -3
  94. package/src/components/Amelipro/AmeliproCustomSelector/__tests__/__snapshots__/AmeliproCustomSelector.spec.ts.snap +8 -6
  95. package/src/components/Amelipro/AmeliproFilePreview/AmeliproFilePreview.mdx +3 -1
  96. package/src/components/Amelipro/AmeliproFilePreview/AmeliproFilePreview.stories.ts +23 -5
  97. package/src/components/Amelipro/AmeliproFilePreview/AmeliproFilePreview.vue +5 -6
  98. package/src/components/Amelipro/AmeliproFilePreview/__tests__/AmeliproFilePreview.spec.ts +2 -2
  99. package/src/components/Amelipro/AmeliproFilePreview/__tests__/__snapshots__/AmeliproFilePreview.spec.ts.snap +5 -6
  100. package/src/components/Amelipro/AmeliproFirstLogin/__tests__/__snapshots__/AmeliproFirstLogin.spec.ts.snap +4 -1
  101. package/src/components/Amelipro/AmeliproFooter/AmeliproFooter.vue +6 -7
  102. package/src/components/Amelipro/AmeliproFooter/__tests__/AmeliproFooter.spec.ts +787 -0
  103. package/src/components/Amelipro/AmeliproFooter/__tests__/__snapshots__/AmeliproFooter.spec.ts.snap +318 -0
  104. package/src/components/Amelipro/AmeliproHeader/AmeliproHeader.vue +1 -2
  105. package/src/components/Amelipro/AmeliproHeader/AmeliproHeaderBar/AmeliproHeaderBrandSection/__tests__/AmeliproHeaderBrandSection.spec.ts +167 -0
  106. package/src/components/Amelipro/AmeliproHeader/AmeliproHeaderBar/AmeliproHeaderBrandSection/__tests__/__snapshots__/AmeliproHeaderBrandSection.spec.ts.snap +100 -0
  107. package/src/components/Amelipro/AmeliproHeader/AmeliproHeaderBar/AmeliproLogoAm/__tests__/AmeliproLogoAm.spec.ts +78 -0
  108. package/src/components/Amelipro/AmeliproHeader/AmeliproHeaderBar/AmeliproLogoAm/{tests → __tests__}/__snapshots__/AmeliproLogoAm.spec.ts.snap +64 -2
  109. package/src/components/Amelipro/AmeliproHeader/AmeliproHeaderBar/__tests__/AmeliproHeaderBar.spec.ts +312 -0
  110. package/src/components/Amelipro/AmeliproHeader/AmeliproHeaderBar/__tests__/__snapshots__/AmeliproHeaderBar.spec.ts.snap +98 -0
  111. package/src/components/Amelipro/AmeliproHeader/__tests__/AmeliproHeader.spec.ts +361 -0
  112. package/src/components/Amelipro/AmeliproHeader/__tests__/__snapshots__/AmeliproHeader.spec.ts.snap +22 -0
  113. package/src/components/Amelipro/AmeliproIcon/__tests__/AmeliproIcon.spec.ts +358 -0
  114. package/src/components/Amelipro/AmeliproIcon/{tests → __tests__}/__snapshots__/AmeliproIcon.spec.ts.snap +30 -3
  115. package/src/components/Amelipro/AmeliproIcon/iconList.ts +1 -0
  116. package/src/components/Amelipro/AmeliproIconBtn/AmeliproIconBtn.vue +1 -1
  117. package/src/components/Amelipro/AmeliproIconBtn/__tests__/AmeliproIconBtn.spec.ts +459 -0
  118. package/src/components/Amelipro/AmeliproIconBtn/__tests__/__snapshots__/AmeliproIconBtn.spec.ts.snap +58 -0
  119. package/src/components/Amelipro/AmeliproIllustratedDataTile/AmeliproIllustratedDataTile.stories.ts +38 -26
  120. package/src/components/Amelipro/AmeliproIllustratedDataTile/__tests__/AmeliproIllustratedDataTile.spec.ts +321 -0
  121. package/src/components/Amelipro/AmeliproIllustratedDataTile/__tests__/__snapshots__/AmeliproIllustratedDataTile.spec.ts.snap +148 -0
  122. package/src/components/Amelipro/AmeliproIllustratedRadioGroup/AmeliproIllustratedRadioGroup.stories.ts +14 -5
  123. package/src/components/Amelipro/AmeliproIllustratedRadioGroup/AmeliproIllustratedRadioGroup.vue +1 -1
  124. package/src/components/Amelipro/AmeliproIllustratedRadioGroup/__tests__/AmeliproIllustratedRadioGroup.spec.ts +498 -0
  125. package/src/components/Amelipro/AmeliproIllustratedRadioGroup/__tests__/__snapshots__/AmeliproIllustratedRadioGroup.spec.ts.snap +325 -0
  126. package/src/components/Amelipro/AmeliproMailTile/__tests__/AmeliproMailTile.spec.ts +210 -0
  127. package/src/components/Amelipro/AmeliproMailTile/__tests__/__snapshots__/AmeliproMailTile.spec.ts.snap +98 -0
  128. package/src/components/Amelipro/AmeliproMenu/__tests__/AmeliproMenu.spec.ts +168 -0
  129. package/src/components/Amelipro/AmeliproMenu/__tests__/__snapshots__/AmeliproMenu.spec.ts.snap +295 -0
  130. package/src/components/Amelipro/AmeliproMessage/__tests__/AmeliproMessage.spec.ts +446 -0
  131. package/src/components/Amelipro/AmeliproMessage/__tests__/__snapshots__/AmeliproMessage.spec.ts.snap +60 -0
  132. package/src/components/Amelipro/AmeliproMessagingLayout/AmeliproDropdownMenu/AmeliproDropdownMenuBtn/__tests__/AmeliproDropdownMenuBtn.spec.ts +128 -0
  133. package/src/components/Amelipro/AmeliproMessagingLayout/AmeliproDropdownMenu/AmeliproDropdownMenuBtn/__tests__/__snapshots__/AmeliproDropdownMenuBtn.spec.ts.snap +67 -0
  134. package/src/components/Amelipro/AmeliproMessagingLayout/AmeliproDropdownMenu/__tests__/AmeliproDropdownMenu.spec.ts +266 -0
  135. package/src/components/Amelipro/AmeliproMessagingLayout/AmeliproDropdownMenu/__tests__/__snapshots__/AmeliproDropdownMenu.spec.ts.snap +134 -0
  136. package/src/components/Amelipro/AmeliproMessagingLayout/AmeliproMessagingMenuBtn/__tests__/AmeliproMessagingMenuBtn.spec.ts +72 -0
  137. package/src/components/Amelipro/AmeliproMessagingLayout/AmeliproMessagingMenuBtn/__tests__/__snapshots__/AmeliproMessagingMenuBtn.spec.ts.snap +71 -0
  138. package/src/components/Amelipro/AmeliproMessagingLayout/__tests__/AmeliproMessagingLayout.spec.ts +300 -0
  139. package/src/components/Amelipro/AmeliproMessagingLayout/__tests__/__snapshots__/AmeliproMessagingLayout.spec.ts.snap +197 -0
  140. package/src/components/Amelipro/AmeliproNumberedCard/__tests__/AmeliproNumberedCard.spec.ts +117 -0
  141. package/src/components/Amelipro/AmeliproNumberedCard/{tests → __tests__}/__snapshots__/AmeliproNumberedCard.spec.ts.snap +47 -45
  142. package/src/components/Amelipro/AmeliproOnboarding/__tests__/AmeliproOnboarding.spec.ts +219 -0
  143. package/src/components/Amelipro/AmeliproOnboarding/__tests__/__snapshots__/AmeliproOnboarding.spec.ts.snap +41 -0
  144. package/src/components/Amelipro/AmeliproPageLayout/__tests__/AmeliproPageLayout.spec.ts +129 -0
  145. package/src/components/Amelipro/AmeliproPageLayout/__tests__/__snapshots__/AmeliproPageLayout.spec.ts.snap +189 -0
  146. package/src/components/Amelipro/AmeliproPagination/AmeliproPaginationBtn/__tests__/AmeliproPaginationBtn.spec.ts +92 -0
  147. package/src/components/Amelipro/AmeliproPagination/AmeliproPaginationBtn/__tests__/__snapshots__/AmeliproPaginationBtn.spec.ts.snap +56 -0
  148. package/src/components/Amelipro/AmeliproPagination/__tests__/AmeliproPagination.spec.ts +165 -0
  149. package/src/components/Amelipro/AmeliproPagination/__tests__/__snapshots__/AmeliproPagination.spec.ts.snap +83 -0
  150. package/src/components/Amelipro/AmeliproPatientBanner/__tests__/AmeliproPatientBanner.spec.ts +208 -0
  151. package/src/components/Amelipro/AmeliproPatientBanner/__tests__/__snapshots__/AmeliproPatientBanner.spec.ts.snap +285 -0
  152. package/src/components/Amelipro/AmeliproPatientLogged/__tests__/__snapshots__/AmeliproPatientLogged.spec.ts.snap +26 -7
  153. package/src/components/Amelipro/AmeliproPostalAddressField/AmeliproPostalAddressCityRow/__tests__/__snapshots__/AmeliproPostalAddressCityRow.spec.ts.snap +12 -4
  154. package/src/components/Amelipro/AmeliproRadioGroup/AmeliproRadioGroup.stories.ts +28 -8
  155. package/src/components/Amelipro/AmeliproRadioGroup/__tests__/AmeliproRadioGroup.spec.ts +332 -0
  156. package/src/components/Amelipro/AmeliproRadioGroup/__tests__/__snapshots__/AmeliproRadioGroup.spec.ts.snap +255 -0
  157. package/src/components/Amelipro/AmeliproResultList/AmeliproResultList.stories.ts +1 -2
  158. package/src/components/Amelipro/AmeliproResultList/AmeliproResultList.vue +3 -1
  159. package/src/components/Amelipro/AmeliproResultList/__tests__/__snapshots__/AmeliproResultList.spec.ts.snap +2 -1
  160. package/src/components/Amelipro/AmeliproSelect/AmeliproSelect.vue +11 -5
  161. package/src/components/Amelipro/AmeliproSelect/__tests__/AmeliproSelect.spec.ts +481 -0
  162. package/src/components/Amelipro/AmeliproSelect/__tests__/__snapshots__/AmeliproSelect.spec.ts.snap +117 -0
  163. package/src/components/Amelipro/AmeliproStateTile/AmeliproStateTile.vue +5 -2
  164. package/src/components/Amelipro/AmeliproStateTile/__tests__/AmeliproStateTile.spec.ts +206 -0
  165. package/src/components/Amelipro/AmeliproStateTile/__tests__/__snapshots__/AmeliproStateTile.spec.ts.snap +158 -0
  166. package/src/components/Amelipro/AmeliproStatus/__tests__/AmeliproStatus.spec.ts +120 -0
  167. package/src/components/Amelipro/AmeliproStatus/__tests__/__snapshots__/AmeliproStatus.spec.ts.snap +39 -0
  168. package/src/components/Amelipro/AmeliproStepper/AmeliproStepBtn/__tests__/AmeliproStepBtn.spec.ts +97 -0
  169. package/src/components/Amelipro/AmeliproStepper/AmeliproStepBtn/__tests__/__snapshots__/AmeliproStepBtn.spec.ts.snap +61 -0
  170. package/src/components/Amelipro/AmeliproStepper/__tests__/AmeliproStepper.spec.ts +248 -0
  171. package/src/components/Amelipro/AmeliproStepper/__tests__/__snapshots__/AmeliproStepper.spec.ts.snap +179 -0
  172. package/src/components/Amelipro/AmeliproTable/AmeliproTable.stories.ts +14 -13
  173. package/src/components/Amelipro/AmeliproTable/AmeliproTable.vue +2 -1
  174. package/src/components/Amelipro/AmeliproTable/__tests__/__snapshots__/AmeliproTable.spec.ts.snap +10 -3
  175. package/src/components/Amelipro/AmeliproTabs/AmeliproTabBtn/__tests__/AmeliproTabBtn.spec.ts +129 -0
  176. package/src/components/Amelipro/AmeliproTabs/AmeliproTabBtn/__tests__/__snapshots__/AmeliproTabBtn.spec.ts.snap +81 -0
  177. package/src/components/Amelipro/AmeliproTabs/AmeliproTabs.vue +2 -2
  178. package/src/components/Amelipro/AmeliproTabs/__tests__/AmeliproTabs.spec.ts +234 -0
  179. package/src/components/Amelipro/AmeliproTabs/__tests__/__snapshots__/AmeliproTabs.spec.ts.snap +122 -0
  180. package/src/components/Amelipro/AmeliproTextArea/AmeliproTextArea.vue +7 -5
  181. package/src/components/Amelipro/AmeliproTextArea/__tests__/AmeliproTextArea.spec.ts +265 -9
  182. package/src/components/Amelipro/AmeliproTextArea/__tests__/__snapshots__/AmeliproTextArea.spec.ts.snap +98 -155
  183. package/src/components/Amelipro/AmeliproTextField/AmeliproTextField.vue +7 -5
  184. package/src/components/Amelipro/AmeliproTextField/__tests__/AmeliproTextField.spec.ts +375 -0
  185. package/src/components/Amelipro/AmeliproTextField/__tests__/__snapshots__/AmeliproTextField.spec.ts.snap +143 -0
  186. package/src/components/Amelipro/AmeliproTileBtn/__tests__/AmeliproTileBtn.spec.ts +241 -0
  187. package/src/components/Amelipro/AmeliproTileBtn/__tests__/__snapshots__/AmeliproTileBtn.spec.ts.snap +74 -0
  188. package/src/components/Amelipro/AmeliproTooltips/__tests__/AmeliproTooltips.spec.ts +212 -0
  189. package/src/components/Amelipro/AmeliproTooltips/__tests__/__snapshots__/AmeliproTooltips.spec.ts.snap +71 -0
  190. package/src/components/Amelipro/AmeliproTransmission/__tests__/AmeliproTransmission.spec.ts +155 -0
  191. package/src/components/Amelipro/AmeliproTransmission/__tests__/__snapshots__/AmeliproTransmission.spec.ts.snap +240 -0
  192. package/src/components/Amelipro/AmeliproUpload/AmeliproUpload.stories.ts +0 -1
  193. package/src/components/Amelipro/ServiceMenu/tests/__snapshots__/ServiceMenu.spec.ts.snap +4 -1
  194. package/src/components/Amelipro/StructureMenu/StructureBtn/StructureBtn.vue +4 -0
  195. package/src/components/Amelipro/StructureMenu/StructureTabs/StructureTabs.vue +4 -5
  196. package/src/components/Amelipro/StructureMenu/StructureTabs/tests/__snapshots__/StructureTabs.spec.ts.snap +5 -4
  197. package/src/components/Amelipro/StructureMenu/tests/__snapshots__/StructureMenu.spec.ts.snap +13 -6
  198. package/src/components/Amelipro/UserMenu/UserMenu.vue +2 -1
  199. package/src/components/Amelipro/UserMenu/tests/__snapshots__/UserMenu.spec.ts.snap +4 -1
  200. package/src/components/Captcha/Captcha.mdx +72 -0
  201. package/src/components/Captcha/Captcha.stories.ts +283 -0
  202. package/src/components/Captcha/Captcha.vue +328 -0
  203. package/src/components/Captcha/CaptchaAlert.vue +60 -0
  204. package/src/components/Captcha/CaptchaBase.vue +222 -0
  205. package/src/components/Captcha/CaptchaBtn.vue +35 -0
  206. package/src/components/Captcha/CaptchaForm.vue +58 -0
  207. package/src/components/Captcha/CaptchaImg.vue +41 -0
  208. package/src/components/Captcha/CaptchaInformation.vue +64 -0
  209. package/src/components/Captcha/captchaApi.ts +110 -0
  210. package/src/components/Captcha/icons/volumeUp.vue +11 -0
  211. package/src/components/Captcha/locales.ts +35 -0
  212. package/src/components/Captcha/readme.md +5 -0
  213. package/src/components/Captcha/tests/Captcha.spec.ts +298 -0
  214. package/src/components/Captcha/tests/__snapshots__/Captcha.spec.ts.snap +716 -0
  215. package/src/components/Captcha/types.ts +2 -0
  216. package/src/components/Customs/Selects/SySelect/SySelect.vue +3 -3
  217. package/src/components/Customs/SyCheckbox/SyCheckbox.stories.ts +5 -0
  218. package/src/components/Customs/SyCheckbox/SyCheckbox.vue +5 -1
  219. package/src/components/Customs/SyForm/SyForm.stories.ts +133 -23
  220. package/src/components/Customs/SyForm/SyForm.vue +17 -1
  221. package/src/components/Customs/SyTabs/SyTabs.stories.ts +174 -10
  222. package/src/components/Customs/SyTabs/SyTabs.vue +62 -0
  223. package/src/components/Customs/SyTabs/tests/SyTabs.spec.ts +98 -0
  224. package/src/components/Customs/SyTextField/SyTextField.vue +2 -2
  225. package/src/components/DatePicker/CalendarMode/DatePicker.stories.ts +13 -13
  226. package/src/components/DatePicker/CalendarMode/DatePicker.vue +14 -1
  227. package/src/components/DatePicker/ComplexDatePicker/ComplexDatePicker.stories.ts +11 -11
  228. package/src/components/DatePicker/ComplexDatePicker/ComplexDatePicker.vue +115 -6
  229. package/src/components/DatePicker/DatePickerValidationExample/DatePickerValidation.mdx +7 -0
  230. package/src/components/DatePicker/DateTextInput/DateTextInput.range.spec.ts +1 -1
  231. package/src/components/DatePicker/DateTextInput/DateTextInput.spec.ts +3 -3
  232. package/src/components/DatePicker/DateTextInput/DateTextInput.vue +78 -5
  233. package/src/components/DatePicker/DateTextInput/NoCalendar.stories.ts +15 -15
  234. package/src/components/DatePicker/composables/tests/useDateFormatValidation.spec.ts +2 -2
  235. package/src/components/DatePicker/composables/tests/useManualDateValidation.spec.ts +1 -1
  236. package/src/components/DatePicker/composables/useDateFormatDisplay.ts +25 -0
  237. package/src/components/DatePicker/composables/useDateFormatValidation.ts +5 -2
  238. package/src/components/DatePicker/composables/useManualDateValidation.ts +5 -1
  239. package/src/components/DatePicker/tests/DatePicker.validation.spec.ts +1 -1
  240. package/src/components/ErrorPage/ErrorPage.vue +54 -7
  241. package/src/components/ErrorPage/tests/__snapshots__/ErrorPage.spec.ts.snap +6 -2
  242. package/src/components/ExternalLinks/ExternalLinks.vue +2 -4
  243. package/src/components/NirField/NirField.stories.ts +74 -0
  244. package/src/components/NirField/NirField.vue +34 -9
  245. package/src/components/NirField/locales.ts +1 -3
  246. package/src/components/NotFoundPage/tests/__snapshots__/NotFoundPage.spec.ts.snap +6 -2
  247. package/src/components/PasswordField/PasswordField.vue +45 -13
  248. package/src/components/PhoneField/PhoneField.vue +43 -10
  249. package/src/components/RangeField/RangeSlider/RangeSlider.vue +3 -2
  250. package/src/components/RatingPicker/EmotionPicker/EmotionPicker.vue +2 -1
  251. package/src/components/RatingPicker/NumberPicker/NumberPicker.vue +2 -0
  252. package/src/components/RatingPicker/RatingPicker.stories.ts +10 -0
  253. package/src/components/RatingPicker/RatingPicker.vue +23 -1
  254. package/src/components/RatingPicker/StarsPicker/StarsPicker.vue +2 -0
  255. package/src/components/SearchListField/Accessibilite.stories.ts +4 -0
  256. package/src/components/SearchListField/SearchListField.stories.ts +16 -0
  257. package/src/components/SearchListField/SearchListField.vue +121 -109
  258. package/src/components/SearchListField/locales.ts +11 -2
  259. package/src/components/SearchListField/tests/SearchListField.spec.ts +91 -25
  260. package/src/components/SyAlert/SyAlert.vue +8 -0
  261. package/src/components/SyAlert/tests/SyAlert.spec.ts +1 -22
  262. package/src/components/Tables/SyServerTable/SyServerTable.stories.ts +304 -0
  263. package/src/components/Tables/SyServerTable/SyServerTable.vue +12 -4
  264. package/src/components/Tables/SyServerTable/tests/SyServerTable.spec.ts +67 -0
  265. package/src/components/Tables/SyTable/SyTable.stories.ts +186 -0
  266. package/src/components/Tables/SyTable/SyTable.vue +12 -4
  267. package/src/components/Tables/SyTable/tests/SyTable.spec.ts +65 -1
  268. package/src/components/Tables/common/types.ts +2 -0
  269. package/src/components/index.ts +1 -0
  270. package/src/composables/rules/useFieldValidation.ts +47 -7
  271. package/src/composables/validation/useFormValidation.ts +46 -8
  272. package/src/composables/validation/useValidatable.ts +19 -8
  273. package/dist/main-DMXtXK3y.js +0 -33458
  274. package/src/components/Amelipro/AmeliproFooter/tests/AmeliproFooter.spec.ts +0 -15
  275. package/src/components/Amelipro/AmeliproFooter/tests/__snapshots__/AmeliproFooter.spec.ts.snap +0 -432
  276. package/src/components/Amelipro/AmeliproHeader/AmeliproHeaderBar/AmeliproHeaderBrandSection/tests/AmeliproHeaderBrandSection.spec.ts +0 -15
  277. package/src/components/Amelipro/AmeliproHeader/AmeliproHeaderBar/AmeliproHeaderBrandSection/tests/__snapshots__/AmeliproHeaderBrandSection.spec.ts.snap +0 -131
  278. package/src/components/Amelipro/AmeliproHeader/AmeliproHeaderBar/AmeliproLogoAm/tests/AmeliproLogoAm.spec.ts +0 -15
  279. package/src/components/Amelipro/AmeliproHeader/AmeliproHeaderBar/tests/AmeliproHeaderBar.spec.ts +0 -15
  280. package/src/components/Amelipro/AmeliproHeader/AmeliproHeaderBar/tests/__snapshots__/AmeliproHeaderBar.spec.ts.snap +0 -172
  281. package/src/components/Amelipro/AmeliproHeader/tests/AmeliproHeader.spec.ts +0 -159
  282. package/src/components/Amelipro/AmeliproHeader/tests/__snapshots__/AmeliproHeader.spec.ts.snap +0 -841
  283. package/src/components/Amelipro/AmeliproIcon/tests/AmeliproIcon.spec.ts +0 -19
  284. package/src/components/Amelipro/AmeliproIconBtn/tests/AmeliproIconBtn.spec.ts +0 -22
  285. package/src/components/Amelipro/AmeliproIconBtn/tests/__snapshots__/AmeliproIconBtn.spec.ts.snap +0 -87
  286. package/src/components/Amelipro/AmeliproIllustratedDataTile/tests/AmeliproIllustratedDataTile.spec.ts +0 -20
  287. package/src/components/Amelipro/AmeliproIllustratedDataTile/tests/__snapshots__/AmeliproIllustratedDataTile.spec.ts.snap +0 -69
  288. package/src/components/Amelipro/AmeliproIllustratedRadioGroup/tests/AmeliproIllustratedRadioGroup.spec.ts +0 -53
  289. package/src/components/Amelipro/AmeliproIllustratedRadioGroup/tests/__snapshots__/AmeliproIllustratedRadioGroup.spec.ts.snap +0 -544
  290. package/src/components/Amelipro/AmeliproMailTile/tests/AmeliproMailTile.spec.ts +0 -25
  291. package/src/components/Amelipro/AmeliproMailTile/tests/__snapshots__/AmeliproMailTile.spec.ts.snap +0 -164
  292. package/src/components/Amelipro/AmeliproMenu/tests/AmeliproMenu.spec.ts +0 -85
  293. package/src/components/Amelipro/AmeliproMenu/tests/__snapshots__/AmeliproMenu.spec.ts.snap +0 -537
  294. package/src/components/Amelipro/AmeliproMessage/tests/AmeliproMessage.spec.ts +0 -18
  295. package/src/components/Amelipro/AmeliproMessage/tests/__snapshots__/AmeliproMessage.spec.ts.snap +0 -94
  296. package/src/components/Amelipro/AmeliproMessagingLayout/AmeliproDropdownMenu/AmeliproDropdownMenuBtn/tests/AmeliproDropdownMenuBtn.spec.ts +0 -16
  297. package/src/components/Amelipro/AmeliproMessagingLayout/AmeliproDropdownMenu/AmeliproDropdownMenuBtn/tests/__snapshots__/AmeliproDropdownMenuBtn.spec.ts.snap +0 -56
  298. package/src/components/Amelipro/AmeliproMessagingLayout/AmeliproDropdownMenu/tests/AmeliproDropdownMenu.spec.ts +0 -28
  299. package/src/components/Amelipro/AmeliproMessagingLayout/AmeliproDropdownMenu/tests/__snapshots__/AmeliproDropdownMenu.spec.ts.snap +0 -300
  300. package/src/components/Amelipro/AmeliproMessagingLayout/AmeliproMessagingMenuBtn/tests/AmeliproMessagingMenuBtn.spec.ts +0 -16
  301. package/src/components/Amelipro/AmeliproMessagingLayout/AmeliproMessagingMenuBtn/tests/__snapshots__/AmeliproMessagingMenuBtn.spec.ts.snap +0 -89
  302. package/src/components/Amelipro/AmeliproMessagingLayout/tests/AmeliproMessagingLayout.spec.ts +0 -30
  303. package/src/components/Amelipro/AmeliproMessagingLayout/tests/__snapshots__/AmeliproMessagingLayout.spec.ts.snap +0 -439
  304. package/src/components/Amelipro/AmeliproNumberedCard/tests/AmeliproNumberedCard.spec.ts +0 -23
  305. package/src/components/Amelipro/AmeliproOnboarding/tests/AmeliproOnboarding.spec.ts +0 -41
  306. package/src/components/Amelipro/AmeliproOnboarding/tests/__snapshots__/AmeliproOnboarding.spec.ts.snap +0 -3
  307. package/src/components/Amelipro/AmeliproPageLayout/tests/AmeliproPageLayout.spec.ts +0 -183
  308. package/src/components/Amelipro/AmeliproPageLayout/tests/__snapshots__/AmeliproPageLayout.spec.ts.snap +0 -1590
  309. package/src/components/Amelipro/AmeliproPagination/AmeliproPaginationBtn/tests/AmeliproPaginationBtn.spec.ts +0 -15
  310. package/src/components/Amelipro/AmeliproPagination/AmeliproPaginationBtn/tests/__snapshots__/AmeliproPaginationBtn.spec.ts.snap +0 -46
  311. package/src/components/Amelipro/AmeliproPagination/tests/AmeliproPagination.spec.ts +0 -15
  312. package/src/components/Amelipro/AmeliproPagination/tests/__snapshots__/AmeliproPagination.spec.ts.snap +0 -116
  313. package/src/components/Amelipro/AmeliproPatientBanner/tests/AmeliproPatientBanner.spec.ts +0 -24
  314. package/src/components/Amelipro/AmeliproPatientBanner/tests/__snapshots__/AmeliproPatientBanner.spec.ts.snap +0 -268
  315. package/src/components/Amelipro/AmeliproRadioGroup/tests/AmeliproRadioGroup.spec.ts +0 -43
  316. package/src/components/Amelipro/AmeliproRadioGroup/tests/__snapshots__/AmeliproRadioGroup.spec.ts.snap +0 -262
  317. package/src/components/Amelipro/AmeliproSelect/tests/AmeliproSelect.spec.ts +0 -38
  318. package/src/components/Amelipro/AmeliproSelect/tests/__snapshots__/AmeliproSelect.spec.ts.snap +0 -196
  319. package/src/components/Amelipro/AmeliproStateTile/tests/AmeliproStateTile.spec.ts +0 -20
  320. package/src/components/Amelipro/AmeliproStateTile/tests/__snapshots__/AmeliproStateTile.spec.ts.snap +0 -90
  321. package/src/components/Amelipro/AmeliproStatus/tests/AmeliproStatus.spec.ts +0 -16
  322. package/src/components/Amelipro/AmeliproStatus/tests/__snapshots__/AmeliproStatus.spec.ts.snap +0 -21
  323. package/src/components/Amelipro/AmeliproStepper/AmeliproStepBtn/tests/AmeliproStepBtn.spec.ts +0 -18
  324. package/src/components/Amelipro/AmeliproStepper/AmeliproStepBtn/tests/__snapshots__/AmeliproStepBtn.spec.ts.snap +0 -34
  325. package/src/components/Amelipro/AmeliproStepper/tests/AmeliproStepper.spec.ts +0 -36
  326. package/src/components/Amelipro/AmeliproStepper/tests/__snapshots__/AmeliproStepper.spec.ts.snap +0 -354
  327. package/src/components/Amelipro/AmeliproTabs/AmeliproTabBtn/tests/AmeliproTabBtn.spec.ts +0 -20
  328. package/src/components/Amelipro/AmeliproTabs/AmeliproTabBtn/tests/__snapshots__/AmeliproTabBtn.spec.ts.snap +0 -34
  329. package/src/components/Amelipro/AmeliproTabs/tests/AmeliproTabs.spec.ts +0 -39
  330. package/src/components/Amelipro/AmeliproTabs/tests/__snapshots__/AmeliproTabs.spec.ts.snap +0 -217
  331. package/src/components/Amelipro/AmeliproTextField/tests/AmeliproTextField.spec.ts +0 -16
  332. package/src/components/Amelipro/AmeliproTextField/tests/__snapshots__/AmeliproTextField.spec.ts.snap +0 -162
  333. package/src/components/Amelipro/AmeliproTileBtn/tests/AmeliproTileBtn.spec.ts +0 -17
  334. package/src/components/Amelipro/AmeliproTileBtn/tests/__snapshots__/AmeliproTileBtn.spec.ts.snap +0 -65
  335. package/src/components/Amelipro/AmeliproTooltips/tests/AmeliproTooltips.spec.ts +0 -16
  336. package/src/components/Amelipro/AmeliproTooltips/tests/__snapshots__/AmeliproTooltips.spec.ts.snap +0 -105
  337. package/src/components/Amelipro/AmeliproTransmission/tests/AmeliproTransmission.spec.ts +0 -16
  338. package/src/components/Amelipro/AmeliproTransmission/tests/__snapshots__/AmeliproTransmission.spec.ts.snap +0 -246
  339. package/src/components/SyAlert/tests/__snapshots__/SyAlert.spec.ts.snap +0 -99
@@ -0,0 +1,321 @@
1
+ import { VueWrapper, shallowMount } from '@vue/test-utils'
2
+ import { beforeEach, describe, expect, it } from 'vitest'
3
+ import { AmeliproIcon } from '@/components'
4
+ import type { AmeliproIllustratedDataInfoTypes } from '../types'
5
+ import AmeliproIllustratedDataTile from '../AmeliproIllustratedDataTile.vue'
6
+ import type { ComponentProps } from 'vue-component-type-helpers'
7
+ import type { ExpectedPropOptions } from '@tests/types'
8
+ import type { PropType } from 'vue'
9
+ import TestHelper from '@tests/helpers/TestHelper'
10
+
11
+ const expectedPropOptions: ExpectedPropOptions<typeof AmeliproIllustratedDataTile> = {
12
+ complementaryInformation: {
13
+ type: Array as PropType<AmeliproIllustratedDataInfoTypes[]>,
14
+ default: () => [],
15
+ },
16
+ iconName: {
17
+ type: String,
18
+ default: undefined,
19
+ },
20
+ imgSrc: {
21
+ type: String,
22
+ default: undefined,
23
+ },
24
+ labelFirstLine: {
25
+ type: String,
26
+ required: true,
27
+ },
28
+ labelSecondLine: {
29
+ type: String,
30
+ required: true,
31
+ },
32
+ tileInfoColor: {
33
+ type: String,
34
+ default: 'ap-grey-darken-1',
35
+ },
36
+ tileMinHeight: {
37
+ type: String,
38
+ default: undefined,
39
+ },
40
+ tilePadding: {
41
+ type: String,
42
+ default: '2rem 1rem',
43
+ },
44
+ tileWidth: {
45
+ type: String,
46
+ default: '100%',
47
+ },
48
+ titleLevel: {
49
+ type: Number,
50
+ default: 2,
51
+ },
52
+ uniqueId: {
53
+ type: String,
54
+ default: undefined,
55
+ },
56
+ }
57
+
58
+ const complementaryInformationDatas = (): AmeliproIllustratedDataInfoTypes[] => ([
59
+ {
60
+ label: 'Complementary information label 1',
61
+ value: 'complementary-information-value-1',
62
+ },
63
+ { label: 'Complementary information label 2' },
64
+ ])
65
+
66
+ // Values pour les props "required"
67
+ const requiredPropValues = (): ComponentProps<typeof AmeliproIllustratedDataTile> => ({
68
+ labelFirstLine: 'Required label first line',
69
+ labelSecondLine: 'Required label second line',
70
+ })
71
+
72
+ // Valeurs pour les props "modified"
73
+ const modifiedPropValues = (): ComponentProps<typeof AmeliproIllustratedDataTile> => ({
74
+ complementaryInformation: complementaryInformationDatas(),
75
+ iconName: 'plus',
76
+ imgSrc: 'modified-img-src',
77
+ labelFirstLine: 'Modified label first line',
78
+ labelSecondLine: 'Modified label second line',
79
+ tileInfoColor: 'ap-white',
80
+ tileMinHeight: '300px',
81
+ tilePadding: '20px',
82
+ tileWidth: '250px',
83
+ titleLevel: 3,
84
+ uniqueId: 'modified-unique-id',
85
+ })
86
+
87
+ const testHelper = new TestHelper(AmeliproIllustratedDataTile)
88
+ testHelper.setExpectedPropOptions(expectedPropOptions)
89
+ .setRequiredPropValues(requiredPropValues)
90
+ .setModifiedPropValues(modifiedPropValues)
91
+
92
+ describe('AmeliproIllustratedDataTile', () => {
93
+ describe('Snapshots', () => {
94
+ testHelper.snapshots()
95
+ })
96
+
97
+ describe('Properties', () => {
98
+ testHelper.properties()
99
+ })
100
+
101
+ describe('Setting props should update attributes of inner tags', () => {
102
+ let vueWrapper: VueWrapper<InstanceType<typeof AmeliproIllustratedDataTile>>
103
+
104
+ beforeEach(() => {
105
+ vueWrapper = shallowMount(AmeliproIllustratedDataTile, { props: requiredPropValues() })
106
+ })
107
+
108
+ describe('root', () => {
109
+ beforeEach(() => {
110
+ vueWrapper = shallowMount(AmeliproIllustratedDataTile, { props: requiredPropValues() })
111
+ })
112
+
113
+ it('prop uniqueId sets attribute id', async () => {
114
+ expect(vueWrapper.attributes('id')).toBe(testHelper.default('uniqueId'))
115
+
116
+ const { uniqueId } = modifiedPropValues()
117
+ await vueWrapper.setProps({ uniqueId })
118
+ expect(vueWrapper.attributes('id')).toBe(`${testHelper.modified('uniqueId')}-container`)
119
+ })
120
+
121
+ it('props tileWidth & tileMinHeight set attribute style', async () => {
122
+ expect(vueWrapper.attributes('style')).toBe(`width: ${testHelper.default('tileWidth')};`)
123
+
124
+ const { tileWidth, tileMinHeight } = modifiedPropValues()
125
+ await vueWrapper.setProps({ tileWidth, tileMinHeight })
126
+ expect(vueWrapper.attributes('style')).toBe(`width: ${testHelper.modified('tileWidth')}; min-height: ${testHelper.modified('tileMinHeight')};`)
127
+ })
128
+ })
129
+
130
+ describe('wrapper', () => {
131
+ beforeEach(() => {
132
+ vueWrapper = shallowMount(AmeliproIllustratedDataTile, { props: requiredPropValues() })
133
+ })
134
+
135
+ it('prop tilePadding sets attribute style', async () => {
136
+ expect(vueWrapper.find('.illustrated-data-tile__wrapper').attributes('style')).toBe('border: 2px solid #EEEEEE !important; padding: 2rem 1rem;')
137
+
138
+ const { tilePadding } = modifiedPropValues()
139
+ await vueWrapper.setProps({ tilePadding })
140
+ expect(vueWrapper.find('.illustrated-data-tile__wrapper').attributes('style')).toBe('border: 2px solid #EEEEEE !important; padding: 20px;')
141
+ })
142
+ })
143
+
144
+ describe('img', () => {
145
+ beforeEach(() => {
146
+ vueWrapper = shallowMount(AmeliproIllustratedDataTile, { props: requiredPropValues() })
147
+ })
148
+
149
+ it('prop imgSrc sets img visibility', async () => {
150
+ expect(vueWrapper.find('.illustrated-data-tile__img').exists()).toBe(false)
151
+
152
+ const { imgSrc } = modifiedPropValues()
153
+ await vueWrapper.setProps({ imgSrc })
154
+ expect(vueWrapper.find('.illustrated-data-tile__img').exists()).toBe(true)
155
+ })
156
+
157
+ it('prop uniqueId sets attribute id', async () => {
158
+ const { imgSrc, uniqueId } = modifiedPropValues()
159
+ await vueWrapper.setProps({ imgSrc })
160
+ expect(vueWrapper.find('.illustrated-data-tile__img').attributes('id')).toBe(testHelper.default('uniqueId'))
161
+
162
+ await vueWrapper.setProps({ uniqueId })
163
+ expect(vueWrapper.find('.illustrated-data-tile__img').attributes('id')).toBe(`${testHelper.modified('uniqueId')}-img`)
164
+ })
165
+
166
+ it('prop imgSrc sets attribute src', async () => {
167
+ const { imgSrc } = modifiedPropValues()
168
+ await vueWrapper.setProps({ imgSrc })
169
+ expect(vueWrapper.find('.illustrated-data-tile__img').attributes('src')).toBe(testHelper.modified('imgSrc'))
170
+
171
+ await vueWrapper.setProps({ imgSrc: '#imgSrc' })
172
+ expect(vueWrapper.find('.illustrated-data-tile__img').attributes('src')).toBe('#imgSrc')
173
+ })
174
+ })
175
+
176
+ describe('label', () => {
177
+ beforeEach(() => {
178
+ vueWrapper = shallowMount(AmeliproIllustratedDataTile, { props: requiredPropValues() })
179
+ })
180
+
181
+ it('prop uniqueId sets attribute id', async () => {
182
+ expect(vueWrapper.find('.illustrated-data-tile__label').attributes('id')).toBe(testHelper.default('uniqueId'))
183
+
184
+ const { uniqueId } = modifiedPropValues()
185
+ await vueWrapper.setProps({ uniqueId })
186
+ expect(vueWrapper.find('.illustrated-data-tile__label').attributes('id')).toBe(`${testHelper.modified('uniqueId')}-label`)
187
+ })
188
+
189
+ it('prop titleLevel sets attribute heading-level', async () => {
190
+ expect(vueWrapper.find('.illustrated-data-tile__label').attributes('aria-level')).toBe(`${testHelper.default('titleLevel')}`)
191
+
192
+ const { titleLevel } = modifiedPropValues()
193
+ await vueWrapper.setProps({ titleLevel })
194
+ expect(vueWrapper.find('.illustrated-data-tile__label').attributes('aria-level')).toBe(`${testHelper.modified('titleLevel')}`)
195
+ })
196
+ })
197
+
198
+ describe('label line 1', () => {
199
+ beforeEach(() => {
200
+ vueWrapper = shallowMount(AmeliproIllustratedDataTile, { props: requiredPropValues() })
201
+ })
202
+
203
+ it('prop uniqueId sets attribute id', async () => {
204
+ expect(vueWrapper.find('.illustrated-data-tile__label-line-1').attributes('id')).toBe(testHelper.default('uniqueId'))
205
+
206
+ const { uniqueId } = modifiedPropValues()
207
+ await vueWrapper.setProps({ uniqueId })
208
+ expect(vueWrapper.find('.illustrated-data-tile__label-line-1').attributes('id')).toBe(`${testHelper.modified('uniqueId')}-label-line-1`)
209
+ })
210
+
211
+ it('prop labelFirstLine set label line 1 content', async () => {
212
+ expect(vueWrapper.find('.illustrated-data-tile__label-line-1').text()).toBe(testHelper.default('labelFirstLine'))
213
+
214
+ const { labelFirstLine } = modifiedPropValues()
215
+ await vueWrapper.setProps({ labelFirstLine })
216
+ expect(vueWrapper.find('.illustrated-data-tile__label-line-1').text()).toBe(testHelper.modified('labelFirstLine'))
217
+ })
218
+ })
219
+
220
+ describe('label line 2', () => {
221
+ beforeEach(() => {
222
+ vueWrapper = shallowMount(AmeliproIllustratedDataTile, { props: requiredPropValues() })
223
+ })
224
+
225
+ it('prop uniqueId sets attribute id', async () => {
226
+ expect(vueWrapper.find('.illustrated-data-tile__label-line-2').attributes('id')).toBe(testHelper.default('uniqueId'))
227
+
228
+ const { uniqueId } = modifiedPropValues()
229
+ await vueWrapper.setProps({ uniqueId })
230
+ expect(vueWrapper.find('.illustrated-data-tile__label-line-2').attributes('id')).toBe(`${testHelper.modified('uniqueId')}-label-line-2`)
231
+ })
232
+
233
+ it('prop labelSecondLine set label line 2 content', async () => {
234
+ expect(vueWrapper.find('.illustrated-data-tile__label-line-2').text()).toBe(testHelper.default('labelSecondLine'))
235
+
236
+ const { labelSecondLine } = modifiedPropValues()
237
+ await vueWrapper.setProps({ labelSecondLine })
238
+ expect(vueWrapper.find('.illustrated-data-tile__label-line-2').text()).toBe(testHelper.modified('labelSecondLine'))
239
+ })
240
+ })
241
+
242
+ describe('complementary info', () => {
243
+ beforeEach(() => {
244
+ vueWrapper = shallowMount(AmeliproIllustratedDataTile, { props: requiredPropValues() })
245
+ })
246
+
247
+ it('prop uniqueId sets attribute id', async () => {
248
+ expect(vueWrapper.find('.illustrated-data-tile__info').attributes('id')).toBe(testHelper.default('uniqueId'))
249
+
250
+ const { uniqueId } = modifiedPropValues()
251
+ await vueWrapper.setProps({ uniqueId })
252
+ expect(vueWrapper.find('.illustrated-data-tile__info').attributes('id')).toBe(`${testHelper.modified('uniqueId')}-complementary-info`)
253
+ })
254
+ })
255
+
256
+ describe('complementary info > span', () => {
257
+ beforeEach(() => {
258
+ vueWrapper = shallowMount(AmeliproIllustratedDataTile, { props: requiredPropValues() })
259
+ })
260
+
261
+ it('prop complementaryInformation sets complementary info content', async () => {
262
+ expect(vueWrapper.findAll('.illustrated-data-tile__info > span').length).toBe(0)
263
+
264
+ const { complementaryInformation } = modifiedPropValues()
265
+ await vueWrapper.setProps({ complementaryInformation })
266
+ expect(vueWrapper.findAll('.illustrated-data-tile__info > span').length).toBe(2)
267
+
268
+ expect(vueWrapper.findAll('.illustrated-data-tile__info > span').at(0)?.text()).toBe('Complementary information label 1 complementary-information-value-1')
269
+ expect(vueWrapper.findAll('.illustrated-data-tile__info > span').at(1)?.text()).toBe('Complementary information label 2')
270
+ })
271
+ })
272
+ })
273
+
274
+ describe('Setting props should update props or attributes of inner components', () => {
275
+ let vueWrapper: VueWrapper<InstanceType<typeof AmeliproIllustratedDataTile>>
276
+
277
+ describe('AmeliproIcon', () => {
278
+ beforeEach(() => {
279
+ vueWrapper = shallowMount(AmeliproIllustratedDataTile, { props: requiredPropValues() })
280
+ })
281
+
282
+ it('prop imgSrc & iconName sets icon visibility', async () => {
283
+ expect(vueWrapper.findComponent(AmeliproIcon).exists()).toBe(false)
284
+
285
+ const { iconName, imgSrc } = modifiedPropValues()
286
+ await vueWrapper.setProps({ iconName })
287
+ expect(vueWrapper.findComponent(AmeliproIcon).exists()).toBe(true)
288
+
289
+ await vueWrapper.setProps({ imgSrc })
290
+ expect(vueWrapper.findComponent(AmeliproIcon).exists()).toBe(false)
291
+ })
292
+
293
+ it('prop uniqueId sets prop uniqueId', async () => {
294
+ const { iconName, uniqueId } = modifiedPropValues()
295
+ await vueWrapper.setProps({ iconName })
296
+ expect(vueWrapper.findComponent(AmeliproIcon).props('uniqueId')).toBeUndefined()
297
+
298
+ await vueWrapper.setProps({ uniqueId })
299
+ expect(vueWrapper.findComponent(AmeliproIcon).props('uniqueId')).toBe('modified-unique-id-icon')
300
+ })
301
+
302
+ it('prop iconName sets prop icon', async () => {
303
+ const { iconName } = modifiedPropValues()
304
+ await vueWrapper.setProps({ iconName })
305
+ expect(vueWrapper.findComponent(AmeliproIcon).props('icon')).toBe('plus')
306
+
307
+ await vueWrapper.setProps({ iconName: 'new-icon-name' })
308
+ expect(vueWrapper.findComponent(AmeliproIcon).props('icon')).toBe('new-icon-name')
309
+ })
310
+
311
+ it('prop tileInfoColor sets prop iconColor', async () => {
312
+ const { iconName, tileInfoColor } = modifiedPropValues()
313
+ await vueWrapper.setProps({ iconName })
314
+ expect(vueWrapper.findComponent(AmeliproIcon).props('iconColor')).toBe('ap-grey-darken-1')
315
+
316
+ await vueWrapper.setProps({ tileInfoColor })
317
+ expect(vueWrapper.findComponent(AmeliproIcon).props('iconColor')).toBe('ap-white')
318
+ })
319
+ })
320
+ })
321
+ })
@@ -0,0 +1,148 @@
1
+ // Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
2
+
3
+ exports[`AmeliproIllustratedDataTile > Snapshots > renders the component with all properties filled in 1`] = `
4
+ <div
5
+ class="
6
+ d-flex
7
+ illustrated-data-tile
8
+ pt-2
9
+ "
10
+ id="modified-unique-id-container"
11
+ style="
12
+ width: 250px;
13
+ min-height: 300px;
14
+ "
15
+ >
16
+ <div
17
+ class="
18
+ align-center
19
+ ap-white
20
+ d-flex
21
+ flex-column
22
+ illustrated-data-tile__wrapper
23
+ w-100
24
+ "
25
+ style="
26
+ border: 2px solid #EEEEEE !important;
27
+ padding: 20px;
28
+ "
29
+ >
30
+ <img
31
+ alt=""
32
+ class="
33
+ illustrated-data-tile__img
34
+ mx-auto
35
+ "
36
+ id="modified-unique-id-img"
37
+ src="modified-img-src"
38
+ />
39
+ <p
40
+ aria-level="3"
41
+ class="
42
+ illustrated-data-tile__label
43
+ mb-0
44
+ text-center
45
+ "
46
+ id="modified-unique-id-label"
47
+ role="heading"
48
+ >
49
+ <span
50
+ class="
51
+ d-block
52
+ illustrated-data-tile__label-line-1
53
+ text-center
54
+ "
55
+ id="modified-unique-id-label-line-1"
56
+ >
57
+ Modified label first line
58
+ </span>
59
+ <span
60
+ class="
61
+ d-block
62
+ illustrated-data-tile__label-line-2
63
+ text-center
64
+ text-uppercase
65
+ "
66
+ id="modified-unique-id-label-line-2"
67
+ >
68
+ Modified label second line
69
+ </span>
70
+ </p>
71
+ <p
72
+ class="
73
+ illustrated-data-tile__info
74
+ text-center
75
+ "
76
+ id="modified-unique-id-complementary-info"
77
+ >
78
+ <span class="d-block">
79
+ Complementary information label 1
80
+ <span class="font-weight-bold">
81
+ complementary-information-value-1
82
+ </span>
83
+ </span>
84
+ <span class="d-block">
85
+ Complementary information label 2
86
+ <span class="font-weight-bold"></span>
87
+ </span>
88
+ </p>
89
+ </div>
90
+ </div>
91
+ `;
92
+
93
+ exports[`AmeliproIllustratedDataTile > Snapshots > renders the component with only required properties filled in 1`] = `
94
+ <div
95
+ class="
96
+ d-flex
97
+ illustrated-data-tile
98
+ pt-2
99
+ "
100
+ style="width: 100%;"
101
+ >
102
+ <div
103
+ class="
104
+ align-center
105
+ ap-white
106
+ d-flex
107
+ flex-column
108
+ illustrated-data-tile__wrapper
109
+ w-100
110
+ "
111
+ style="
112
+ border: 2px solid #EEEEEE !important;
113
+ padding: 2rem 1rem;
114
+ "
115
+ >
116
+ <!-- v-if -->
117
+ <p
118
+ aria-level="2"
119
+ class="
120
+ illustrated-data-tile__label
121
+ mb-0
122
+ text-center
123
+ "
124
+ role="heading"
125
+ >
126
+ <span class="
127
+ d-block
128
+ illustrated-data-tile__label-line-1
129
+ text-center
130
+ ">
131
+ Required label first line
132
+ </span>
133
+ <span class="
134
+ d-block
135
+ illustrated-data-tile__label-line-2
136
+ text-center
137
+ text-uppercase
138
+ ">
139
+ Required label second line
140
+ </span>
141
+ </p>
142
+ <p class="
143
+ illustrated-data-tile__info
144
+ text-center
145
+ "></p>
146
+ </div>
147
+ </div>
148
+ `;
@@ -2,6 +2,7 @@ import type { Meta, StoryObj } from '@storybook/vue3'
2
2
  import { ref, watch } from 'vue'
3
3
  import AmeliproIllustratedRadioGroup from './AmeliproIllustratedRadioGroup.vue'
4
4
  import AmeliproTooltips from '../AmeliproTooltips/AmeliproTooltips.vue'
5
+ import AmeliproBtn from '../AmeliproBtn/AmeliproBtn.vue'
5
6
 
6
7
  const meta = {
7
8
  argTypes: {
@@ -42,7 +43,7 @@ const items = [
42
43
  {
43
44
  icon: 'vaccination',
44
45
  iconDefaultColor: 'ap-yellow',
45
- isChecked: false,
46
+ isChecked: true,
46
47
  label: '1',
47
48
  value: 'Valeur 1',
48
49
  },
@@ -106,7 +107,7 @@ export const Default: Story = {
106
107
  {
107
108
  icon: 'vaccination',
108
109
  iconDefaultColor: 'ap-yellow',
109
- isChecked: false,
110
+ isChecked: true,
110
111
  label: '1',
111
112
  value: 'Valeur 1',
112
113
  },
@@ -213,6 +214,7 @@ export const Required: Story = {
213
214
  modelValue: items,
214
215
  uniqueId: 'illustrated-radio-required',
215
216
  ariaRequired: true,
217
+ error: true,
216
218
  },
217
219
  parameters: {
218
220
  sourceCode: [
@@ -240,16 +242,23 @@ export const Required: Story = {
240
242
  ],
241
243
  },
242
244
  render: args => ({
243
- components: { AmeliproIllustratedRadioGroup },
245
+ components: { AmeliproIllustratedRadioGroup, AmeliproBtn },
244
246
  setup() {
245
247
  const model = ref(args.modelValue)
246
248
  watch(() => args.modelValue, (newValue) => {
247
249
  model.value = newValue
248
250
  })
249
- return { args, model }
251
+ const deselect = () => {
252
+ model.value = model.value.map(item => ({
253
+ ...item,
254
+ isChecked: false,
255
+ }))
256
+ }
257
+ return { args, model, deselect }
250
258
  },
251
259
  template: `<p class="mb-2">La sélection d’un bouton est obligatoire grâce à la prop <code>ariaRequired</code>.</p>
252
- <AmeliproIllustratedRadioGroup v-bind="args" v-model="model" />`,
260
+ <AmeliproIllustratedRadioGroup v-bind="args" v-model="model"/>
261
+ <AmeliproBtn class="mt-4" @click="deselect">Tout désélectionner</AmeliproBtn>`,
253
262
  }),
254
263
  }
255
264
 
@@ -1,5 +1,5 @@
1
1
  <script setup lang="ts">
2
- import { type PropType, computed } from 'vue'
2
+ import { computed, type PropType } from 'vue'
3
3
  import AmeliproIcon from '../AmeliproIcon/AmeliproIcon.vue'
4
4
  import type { AmeliproIllustratedRadioGroupItem } from './types'
5
5
  import AmeliproMessage from '../AmeliproMessage/AmeliproMessage.vue'