@cnamts/synapse 1.0.14 → 1.0.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (395) hide show
  1. package/README.md +0 -0
  2. package/dist/{DateFilter-isr8mXVb.js → DateFilter-DSwJUvBu.js} +12 -12
  3. package/dist/{NumberFilter-BOe7DqWX.js → NumberFilter-CwsbYyz4.js} +1 -1
  4. package/dist/{PeriodFilter-WTprpO40.js → PeriodFilter-csnEZU30.js} +1 -1
  5. package/dist/{SelectFilter-CqlG5dmI.js → SelectFilter-Bd5fndzR.js} +1 -1
  6. package/dist/{TextFilter-fVW5bsRw.js → TextFilter-B6gxzq2a.js} +1 -1
  7. package/dist/components/Amelipro/AmeliproAutoCompleteField/AmeliproAutoCompleteField.d.ts +2836 -2845
  8. package/dist/components/Amelipro/AmeliproCallback/AmeliproCallback.d.ts +3 -3
  9. package/dist/components/Amelipro/AmeliproCarousel/AmeliproCarousel.d.ts +7 -7
  10. package/dist/components/Amelipro/AmeliproCarousel/AmeliproCarouselItem/AmeliproCarouselItem.d.ts +3 -3
  11. package/dist/components/Amelipro/AmeliproCheckbox/AmeliproCheckbox.d.ts +3 -3
  12. package/dist/components/Amelipro/AmeliproCheckboxGroup/AmeliproCheckboxGroup.d.ts +3 -3
  13. package/dist/components/Amelipro/AmeliproClickableTile/AmeliproClickableTile.d.ts +3 -3
  14. package/dist/components/Amelipro/AmeliproCustomSelector/AmeliproCustomSelector.d.ts +3 -3
  15. package/dist/components/Amelipro/AmeliproErrorTemplate/AmeliproErrorTemplate.d.ts +3 -3
  16. package/dist/components/Amelipro/AmeliproFirstLogin/AmeliproFirstLogin.d.ts +3 -3
  17. package/dist/components/Amelipro/AmeliproFooter/AmeliproFooter.d.ts +18 -18
  18. package/dist/components/Amelipro/AmeliproHeader/AmeliproHeader.d.ts +9 -9
  19. package/dist/components/Amelipro/AmeliproHeader/AmeliproHeaderBar/AmeliproHeaderBar.d.ts +3 -3
  20. package/dist/components/Amelipro/AmeliproHeader/AmeliproHeaderBar/AmeliproHeaderBrandSection/AmeliproHeaderBrandSection.d.ts +3 -3
  21. package/dist/components/Amelipro/AmeliproIcon/AmeliproIcon.d.ts +3 -1
  22. package/dist/components/Amelipro/AmeliproIconBtn/AmeliproIconBtn.d.ts +5 -3
  23. package/dist/components/Amelipro/AmeliproIllustratedRadioGroup/AmeliproIllustratedRadioGroup.d.ts +3 -3
  24. package/dist/components/Amelipro/AmeliproMenu/AmeliproMenu.d.ts +3 -3
  25. package/dist/components/Amelipro/AmeliproMultipleFoldingCard/AmeliproMultipleFoldingCard.d.ts +1 -1
  26. package/dist/components/Amelipro/AmeliproPagination/AmeliproPaginationBtn/AmeliproPaginationBtn.d.ts +3 -3
  27. package/dist/components/Amelipro/AmeliproPatientBanner/AmeliproPatientBanner.d.ts +3 -3
  28. package/dist/components/Amelipro/AmeliproPatientLogged/AmeliproPatientLogged.d.ts +9 -0
  29. package/dist/components/Amelipro/AmeliproPostalAddressField/AmeliproPostalAddressCityRow/AmeliproPostalAddressCityRow.d.ts +1288 -1284
  30. package/dist/components/Amelipro/AmeliproPostalAddressField/AmeliproPostalAddressField.d.ts +1936 -1930
  31. package/dist/components/Amelipro/AmeliproRadioGroup/AmeliproRadioGroup.d.ts +3 -3
  32. package/dist/components/Amelipro/AmeliproSelect/AmeliproSelect.d.ts +2838 -2865
  33. package/dist/components/Amelipro/AmeliproStateTile/AmeliproStateTile.d.ts +3 -3
  34. package/dist/components/Amelipro/AmeliproTabs/AmeliproTabs.d.ts +2843 -2870
  35. package/dist/components/Amelipro/AmeliproTextArea/AmeliproTextArea.d.ts +397 -397
  36. package/dist/components/Amelipro/AmeliproTextField/AmeliproTextField.d.ts +642 -640
  37. package/dist/components/Amelipro/AmeliproTileBtn/AmeliproTileBtn.d.ts +233 -5
  38. package/dist/components/Amelipro/AmeliproTransmission/AmeliproTransmission.d.ts +9 -9
  39. package/dist/components/Captcha/CaptchaHelpdesk.d.ts +6 -0
  40. package/dist/components/CookieBanner/CookieBanner.d.ts +117 -119
  41. package/dist/components/CookiesSelection/CookiesInformation/CookiesInformation.d.ts +484 -484
  42. package/dist/components/CookiesSelection/CookiesSelection.d.ts +104 -106
  43. package/dist/components/Customs/Selects/SelectBtnField/SelectBtnField.d.ts +14 -10
  44. package/dist/components/Customs/Selects/SySelect/SySelect.d.ts +118 -129
  45. package/dist/components/Customs/Selects/SySelect/composables/useSySelectKeyboard.d.ts +1 -3
  46. package/dist/components/Customs/SyCheckbox/SyCheckbox.d.ts +1 -1
  47. package/dist/components/Customs/SyForm/SyForm.d.ts +60 -53
  48. package/dist/components/Customs/SyRadioGroup/SyRadioGroup.d.ts +88 -0
  49. package/dist/components/Customs/SyRadioGroup/locales.d.ts +3 -0
  50. package/dist/components/Customs/SyTextField/SyTextField.d.ts +644 -642
  51. package/dist/components/DataList/DataList.d.ts +6 -1
  52. package/dist/components/DataListGroup/DataListGroup.d.ts +14 -2
  53. package/dist/components/DataListItem/DataListItem.d.ts +3 -0
  54. package/dist/components/DatePicker/CalendarMode/DatePicker.d.ts +2988 -3100
  55. package/dist/components/DatePicker/ComplexDatePicker/ComplexDatePicker.d.ts +1458 -1558
  56. package/dist/components/DatePicker/DateTextInput/DateTextInput.d.ts +655 -651
  57. package/dist/components/DatePicker/composables/index.d.ts +4 -0
  58. package/dist/components/DatePicker/composables/useAsteriskDisplay.d.ts +1 -1
  59. package/dist/components/DatePicker/composables/useCalendarKeyboardNavigation.d.ts +11 -0
  60. package/dist/components/DatePicker/composables/useDatePickerState.d.ts +25 -0
  61. package/dist/components/DatePicker/composables/useDateTextField.d.ts +61 -0
  62. package/dist/components/DatePicker/composables/useHolidayHighlighting.d.ts +15 -0
  63. package/dist/components/DatePicker/constants/messages.d.ts +0 -1
  64. package/dist/components/DialogBox/DialogBox.d.ts +175 -177
  65. package/dist/components/FilterSideBar/FilterSideBar.d.ts +161 -171
  66. package/dist/components/FooterBar/FooterBar.d.ts +5 -5
  67. package/dist/components/HeaderBar/HeaderBar.d.ts +2 -2
  68. package/dist/components/HeaderBar/HeaderLogo/HeaderLogo.d.ts +1 -1
  69. package/dist/components/HeaderNavigationBar/HeaderNavigationBar.d.ts +1 -1
  70. package/dist/components/HeaderToolbar/HeaderToolbar.d.ts +234 -258
  71. package/dist/components/LangBtn/LangBtn.d.ts +173 -179
  72. package/dist/components/LogoBrandSection/LogoBrandSection.d.ts +1 -1
  73. package/dist/components/LunarCalendar/LunarCalendar.d.ts +29 -0
  74. package/dist/components/LunarCalendar/useLunarCalendarRules.d.ts +5 -0
  75. package/dist/components/LunarCalendar/useLunarCalendarValidation.d.ts +13 -0
  76. package/dist/components/NirField/NirField.d.ts +1296 -1292
  77. package/dist/components/PaginatedTable/PaginatedTable.d.ts +1 -1
  78. package/dist/components/PeriodField/PeriodField.d.ts +5844 -6068
  79. package/dist/components/PhoneField/PhoneField.d.ts +645 -643
  80. package/dist/components/SyAlert/SyAlert.d.ts +31 -31
  81. package/dist/components/SyTextArea/SyTextArea.d.ts +395 -395
  82. package/dist/components/Tables/SyServerTable/SyServerTable.d.ts +193 -227
  83. package/dist/components/Tables/SyTable/SyTable.d.ts +192 -226
  84. package/dist/components/Tables/common/SyTableFilter.d.ts +1 -1
  85. package/dist/components/Tables/common/SyTablePagination.d.ts +118 -129
  86. package/dist/components/Tables/common/TableHeader.d.ts +52 -2
  87. package/dist/components/Tables/common/filters/DateFilter.d.ts +1 -1
  88. package/dist/components/Tables/common/filters/NumberFilter.d.ts +1 -1
  89. package/dist/components/Tables/common/filters/PeriodFilter.d.ts +1 -1
  90. package/dist/components/Tables/common/filters/SelectFilter.d.ts +1 -1
  91. package/dist/components/Tables/common/filters/TextFilter.d.ts +1 -1
  92. package/dist/components/Tables/common/locales.d.ts +1 -0
  93. package/dist/components/Tables/common/organizeColumns/OrganizeColumns.d.ts +86 -90
  94. package/dist/components/Tables/common/tableFilterUtils.d.ts +2 -2
  95. package/dist/components/Tables/common/types.d.ts +3 -2
  96. package/dist/components/Tables/common/useTableCheckbox.d.ts +3 -2
  97. package/dist/components/Tables/common/useTableFilter.d.ts +1 -1
  98. package/dist/components/Tables/common/useTableItems.d.ts +6 -8
  99. package/dist/components/UploadWorkflow/UploadWorkflow.d.ts +18 -18
  100. package/dist/components/index.d.ts +2 -0
  101. package/dist/design-system-v3.js +101 -98
  102. package/dist/design-system-v3.umd.cjs +25 -33
  103. package/dist/main-DkZZpa3S.js +35197 -0
  104. package/dist/style.css +1 -1
  105. package/dist/utils/formatNir/formatNir.d.ts +2 -0
  106. package/dist/utils/index.d.ts +1 -0
  107. package/dist/utils/insertAt.d.ts +1 -0
  108. package/dist/utils/rules/validateDateValue.d.ts +14 -0
  109. package/dist/vuetifyConfig.d.ts +6 -6
  110. package/package.json +4 -4
  111. package/src/assets/tokens.scss +2 -0
  112. package/src/components/Amelipro/AmeliproAccordion/AmeliproAccordionTemplate/__tests__/__snapshots__/AmeliproAccordionTemplate.spec.ts.snap +1 -18
  113. package/src/components/Amelipro/AmeliproAccordion/__tests__/AmeliproAccordion.spec.ts +178 -9
  114. package/src/components/Amelipro/AmeliproAccordion/__tests__/__snapshots__/AmeliproAccordion.spec.ts.snap +28 -121
  115. package/src/components/Amelipro/AmeliproAccordionFrieze/__tests__/__snapshots__/AmeliproAccordionFrieze.spec.ts.snap +15 -270
  116. package/src/components/Amelipro/AmeliproAccordionList/__tests__/__snapshots__/AmeliproAccordionList.spec.ts.snap +12 -194
  117. package/src/components/Amelipro/AmeliproAccordionResult/AmeliproAccordionResultTemplate/__tests__/__snapshots__/AmeliproAccordionResultTemplate.spec.ts.snap +1 -18
  118. package/src/components/Amelipro/AmeliproAccordionResult/__tests__/__snapshots__/AmeliproAccordionResult.spec.ts.snap +1 -18
  119. package/src/components/Amelipro/AmeliproAccordionResultList/__tests__/__snapshots__/AmeliproAccordionResultList.spec.ts.snap +12 -194
  120. package/src/components/Amelipro/AmeliproAutoCompleteField/AmeliproAutoCompleteField.stories.ts +9 -9
  121. package/src/components/Amelipro/AmeliproAutoCompleteField/AmeliproAutoCompleteField.vue +5 -4
  122. package/src/components/Amelipro/AmeliproAutoCompleteField/__tests__/AmeliproAutoCompleteField.spec.ts +6 -6
  123. package/src/components/Amelipro/AmeliproAutoCompleteField/__tests__/__snapshots__/AmeliproAutoCompleteField.spec.ts.snap +2 -0
  124. package/src/components/Amelipro/AmeliproBadge/__tests__/AmeliproBadge.spec.ts +135 -9
  125. package/src/components/Amelipro/AmeliproBadge/__tests__/__snapshots__/AmeliproBadge.spec.ts.snap +20 -5
  126. package/src/components/Amelipro/AmeliproBreadcrumb/__tests__/AmeliproBreadcrumb.spec.ts +195 -28
  127. package/src/components/Amelipro/AmeliproBreadcrumb/__tests__/__snapshots__/AmeliproBreadcrumb.spec.ts.snap +193 -124
  128. package/src/components/Amelipro/AmeliproCaptcha/AmeliproCaptcha.vue +1 -1
  129. package/src/components/Amelipro/AmeliproCaptcha/__tests__/AmeliproCaptcha.spec.ts +364 -12
  130. package/src/components/Amelipro/AmeliproCaptcha/__tests__/__snapshots__/AmeliproCaptcha.spec.ts.snap +30 -390
  131. package/src/components/Amelipro/AmeliproCarousel/__tests__/__snapshots__/AmeliproCarousel.spec.ts.snap +4 -36
  132. package/src/components/Amelipro/AmeliproCheckbox/AmeliproCheckbox.stories.ts +10 -10
  133. package/src/components/Amelipro/AmeliproCheckbox/AmeliproCheckbox.vue +7 -7
  134. package/src/components/Amelipro/AmeliproCheckbox/__tests__/AmeliproCheckbox.spec.ts +5 -5
  135. package/src/components/Amelipro/AmeliproCheckbox/__tests__/__snapshots__/AmeliproCheckbox.spec.ts.snap +1 -1
  136. package/src/components/Amelipro/AmeliproCheckboxGroup/AmeliproCheckboxGroup.stories.ts +7 -6
  137. package/src/components/Amelipro/AmeliproCheckboxGroup/AmeliproCheckboxGroup.vue +6 -6
  138. package/src/components/Amelipro/AmeliproCheckboxGroup/__tests__/AmeliproCheckboxGroup.spec.ts +6 -6
  139. package/src/components/Amelipro/AmeliproCheckboxGroup/__tests__/__snapshots__/AmeliproCheckboxGroup.spec.ts.snap +2 -2
  140. package/src/components/Amelipro/AmeliproClickableTile/tests/__snapshots__/AmeliproClickableTile.spec.ts.snap +2 -43
  141. package/src/components/Amelipro/AmeliproContentLayout/__tests__/AmeliproContentLayout.spec.ts +80 -9
  142. package/src/components/Amelipro/AmeliproContentLayout/__tests__/__snapshots__/AmeliproContentLayout.spec.ts.snap +25 -4
  143. package/src/components/Amelipro/AmeliproCopyBtn/__tests__/__snapshots__/AmeliproCopyBtn.spec.ts.snap +1 -13
  144. package/src/components/Amelipro/AmeliproCustomSelector/AmeliproCustomSelector.stories.ts +7 -6
  145. package/src/components/Amelipro/AmeliproCustomSelector/AmeliproCustomSelector.vue +5 -5
  146. package/src/components/Amelipro/AmeliproCustomSelector/__tests__/AmeliproCustomSelector.spec.ts +187 -39
  147. package/src/components/Amelipro/AmeliproCustomSelector/__tests__/__snapshots__/AmeliproCustomSelector.spec.ts.snap +147 -147
  148. package/src/components/Amelipro/AmeliproDentalChart/tests/__snapshots__/AmeliproDentalChart.spec.ts.snap +1 -1
  149. package/src/components/Amelipro/AmeliproDialog/__tests__/__snapshots__/AmeliproDialog.spec.ts.snap +0 -2
  150. package/src/components/Amelipro/AmeliproErrorTemplate/__tests__/AmeliproErrorTemplate.spec.ts +160 -20
  151. package/src/components/Amelipro/AmeliproErrorTemplate/__tests__/__snapshots__/AmeliproErrorTemplate.spec.ts.snap +34 -177
  152. package/src/components/Amelipro/AmeliproFilePreview/AmeliproFilePreview.vue +1 -0
  153. package/src/components/Amelipro/AmeliproFilePreview/__tests__/AmeliproFilePreview.spec.ts +248 -19
  154. package/src/components/Amelipro/AmeliproFilePreview/__tests__/__snapshots__/AmeliproFilePreview.spec.ts.snap +34 -203
  155. package/src/components/Amelipro/AmeliproFirstLogin/__tests__/__snapshots__/AmeliproFirstLogin.spec.ts.snap +6 -144
  156. package/src/components/Amelipro/AmeliproIcon/AmeliproIcon.vue +20 -2
  157. package/src/components/Amelipro/AmeliproIcon/__tests__/__snapshots__/AmeliproIcon.spec.ts.snap +1 -25
  158. package/src/components/Amelipro/AmeliproIllustratedRadioGroup/AmeliproIllustratedRadioGroup.stories.ts +5 -5
  159. package/src/components/Amelipro/AmeliproIllustratedRadioGroup/AmeliproIllustratedRadioGroup.vue +6 -6
  160. package/src/components/Amelipro/AmeliproIllustratedRadioGroup/__tests__/AmeliproIllustratedRadioGroup.spec.ts +22 -22
  161. package/src/components/Amelipro/AmeliproIllustratedRadioGroup/__tests__/__snapshots__/AmeliproIllustratedRadioGroup.spec.ts.snap +2 -2
  162. package/src/components/Amelipro/AmeliproMultipleFoldingCard/__tests__/AmeliproMultipleFoldingCard.spec.ts +304 -0
  163. package/src/components/Amelipro/AmeliproMultipleFoldingCard/__tests__/__snapshots__/AmeliproMultipleFoldingCard.spec.ts.snap +373 -0
  164. package/src/components/Amelipro/AmeliproPatientLogged/AmeliproPatientLogged.stories.ts +2 -0
  165. package/src/components/Amelipro/AmeliproPatientLogged/AmeliproPatientLogged.vue +28 -2
  166. package/src/components/Amelipro/AmeliproPatientLogged/__tests__/__snapshots__/AmeliproPatientLogged.spec.ts.snap +9 -173
  167. package/src/components/Amelipro/AmeliproPatientLogin/AmeliproPatientLoginForm/AmeliproPatientLoginForm.vue +1 -1
  168. package/src/components/Amelipro/AmeliproPostalAddressField/AmeliproPostalAddressCityRow/AmeliproPostalAddressCityRow.vue +162 -72
  169. package/src/components/Amelipro/AmeliproPostalAddressField/AmeliproPostalAddressCityRow/__tests__/AmeliproPostalAddressCityRow.spec.ts +2 -2
  170. package/src/components/Amelipro/AmeliproPostalAddressField/AmeliproPostalAddressCityRow/__tests__/__snapshots__/AmeliproPostalAddressCityRow.spec.ts.snap +6 -39
  171. package/src/components/Amelipro/AmeliproPostalAddressField/AmeliproPostalAddressField.stories.ts +3 -3
  172. package/src/components/Amelipro/AmeliproPostalAddressField/AmeliproPostalAddressField.vue +8 -8
  173. package/src/components/Amelipro/AmeliproPostalAddressField/{tests → __tests__}/AmeliproPostalAddressField.spec.ts +2 -2
  174. package/src/components/Amelipro/AmeliproPostalAddressField/{tests → __tests__}/__snapshots__/AmeliproPostalAddressField.spec.ts.snap +11 -52
  175. package/src/components/Amelipro/AmeliproRadioGroup/AmeliproRadioGroup.stories.ts +7 -7
  176. package/src/components/Amelipro/AmeliproRadioGroup/AmeliproRadioGroup.vue +8 -8
  177. package/src/components/Amelipro/AmeliproRadioGroup/__tests__/AmeliproRadioGroup.spec.ts +6 -6
  178. package/src/components/Amelipro/AmeliproRadioGroup/__tests__/__snapshots__/AmeliproRadioGroup.spec.ts.snap +2 -2
  179. package/src/components/Amelipro/AmeliproResultList/__tests__/__snapshots__/AmeliproResultList.spec.ts.snap +2 -14
  180. package/src/components/Amelipro/AmeliproSelect/AmeliproSelect.stories.ts +7 -7
  181. package/src/components/Amelipro/AmeliproSelect/AmeliproSelect.vue +4 -4
  182. package/src/components/Amelipro/AmeliproSelect/__tests__/AmeliproSelect.spec.ts +12 -12
  183. package/src/components/Amelipro/AmeliproStepper/AmeliproStepper.vue +2 -2
  184. package/src/components/Amelipro/AmeliproStepper/__tests__/__snapshots__/AmeliproStepper.spec.ts.snap +2 -2
  185. package/src/components/Amelipro/AmeliproTable/AmeliproTable.vue +2 -2
  186. package/src/components/Amelipro/AmeliproTable/__tests__/AmeliproTable.spec.ts +463 -68
  187. package/src/components/Amelipro/AmeliproTable/__tests__/__snapshots__/AmeliproTable.spec.ts.snap +176 -511
  188. package/src/components/Amelipro/AmeliproTextArea/AmeliproTextArea.stories.ts +6 -6
  189. package/src/components/Amelipro/AmeliproTextArea/AmeliproTextArea.vue +4 -4
  190. package/src/components/Amelipro/AmeliproTextArea/__tests__/AmeliproTextArea.spec.ts +3 -3
  191. package/src/components/Amelipro/AmeliproTextArea/__tests__/__snapshots__/AmeliproTextArea.spec.ts.snap +1 -2
  192. package/src/components/Amelipro/AmeliproTextField/AmeliproTextField.stories.ts +10 -10
  193. package/src/components/Amelipro/AmeliproTextField/AmeliproTextField.vue +4 -4
  194. package/src/components/Amelipro/AmeliproTextField/__tests__/AmeliproTextField.spec.ts +5 -5
  195. package/src/components/Amelipro/AmeliproTextField/tests/__snapshots__/AmeliproTextField.spec.ts.snap +162 -0
  196. package/src/components/Amelipro/AmeliproTileBtn/AmeliproTileBtn.stories.ts +44 -0
  197. package/src/components/Amelipro/AmeliproTileBtn/AmeliproTileBtn.vue +79 -1
  198. package/src/components/Amelipro/AmeliproTooltips/__tests__/__snapshots__/AmeliproTooltips.spec.ts.snap +0 -2
  199. package/src/components/Amelipro/AmeliproUpload/AmeliproUpload.stories.ts +2 -2
  200. package/src/components/Amelipro/AmeliproUpload/AmeliproUpload.vue +21 -7
  201. package/src/components/Amelipro/AmeliproUpload/__tests__/AmeliproUpload.spec.ts +252 -44
  202. package/src/components/Amelipro/AmeliproUpload/__tests__/__snapshots__/AmeliproUpload.spec.ts.snap +166 -0
  203. package/src/components/Amelipro/ServiceMenu/ServiceBtn/__tests__/ServiceBtn.spec.ts +137 -0
  204. package/src/components/Amelipro/ServiceMenu/ServiceBtn/__tests__/__snapshots__/ServiceBtn.spec.ts.snap +56 -0
  205. package/src/components/Amelipro/ServiceMenu/ServiceList/__tests__/ServiceList.spec.ts +116 -0
  206. package/src/components/Amelipro/ServiceMenu/ServiceList/__tests__/__snapshots__/ServiceList.spec.ts.snap +58 -0
  207. package/src/components/Amelipro/ServiceMenu/ServiceMenuContent/__tests__/ServiceMenuContent.spec.ts +118 -0
  208. package/src/components/Amelipro/ServiceMenu/ServiceMenuContent/__tests__/__snapshots__/ServiceMenuContent.spec.ts.snap +151 -0
  209. package/src/components/Amelipro/ServiceMenu/__tests__/ServiceMenu.spec.ts +259 -0
  210. package/src/components/Amelipro/ServiceMenu/__tests__/__snapshots__/ServiceMenu.spec.ts.snap +102 -0
  211. package/src/components/Amelipro/StructureMenu/StructureBtn/__tests__/StructureBtn.spec.ts +90 -0
  212. package/src/components/Amelipro/StructureMenu/StructureBtn/__tests__/__snapshots__/StructureBtn.spec.ts.snap +63 -0
  213. package/src/components/Amelipro/StructureMenu/StructureItem/__tests__/StructureItem.spec.ts +133 -0
  214. package/src/components/Amelipro/StructureMenu/StructureItem/__tests__/__snapshots__/StructureItem.spec.ts.snap +143 -0
  215. package/src/components/Amelipro/StructureMenu/StructureList/__tests__/StructureList.spec.ts +190 -0
  216. package/src/components/Amelipro/StructureMenu/StructureList/__tests__/__snapshots__/StructureList.spec.ts.snap +109 -0
  217. package/src/components/Amelipro/StructureMenu/StructureTabs/__tests__/StructureTabs.spec.ts +159 -0
  218. package/src/components/Amelipro/StructureMenu/StructureTabs/__tests__/__snapshots__/StructureTabs.spec.ts.snap +103 -0
  219. package/src/components/Amelipro/StructureMenu/__tests__/StructureMenu.spec.ts +165 -0
  220. package/src/components/Amelipro/StructureMenu/__tests__/__snapshots__/StructureMenu.spec.ts.snap +39 -0
  221. package/src/components/Amelipro/UserInformationSummary/__tests__/UserInformationSummary.spec.ts +140 -0
  222. package/src/components/Amelipro/UserInformationSummary/{tests → __tests__}/__snapshots__/UserInformationSummary.spec.ts.snap +17 -24
  223. package/src/components/Amelipro/UserMenu/UserMenu.stories.ts +3 -3
  224. package/src/components/Amelipro/UserMenu/UserMenu.vue +2 -2
  225. package/src/components/Amelipro/UserMenu/UserMenuDetails/__tests__/UserMenuDetails.spec.ts +150 -0
  226. package/src/components/Amelipro/UserMenu/UserMenuDetails/__tests__/__snapshots__/UserMenuDetails.spec.ts.snap +117 -0
  227. package/src/components/Amelipro/UserMenu/__tests__/UserMenu.spec.ts +141 -0
  228. package/src/components/Amelipro/UserMenu/__tests__/__snapshots__/UserMenu.spec.ts.snap +103 -0
  229. package/src/components/Captcha/Captcha.vue +9 -24
  230. package/src/components/Captcha/CaptchaHelpdesk.vue +42 -0
  231. package/src/components/Captcha/tests/__snapshots__/Captcha.spec.ts.snap +256 -268
  232. package/src/components/CopyBtn/tests/__snapshots__/CopyBtn.spec.ts.snap +0 -1
  233. package/src/components/Customs/Selects/SelectBtnField/Accessibilite.stories.ts +4 -0
  234. package/src/components/Customs/Selects/SelectBtnField/SelectBtnField.stories.ts +154 -82
  235. package/src/components/Customs/Selects/SelectBtnField/SelectBtnField.vue +229 -125
  236. package/src/components/Customs/Selects/SelectBtnField/tests/SelectBtnField.spec.ts +12 -12
  237. package/src/components/Customs/Selects/SelectBtnField/tests/__snapshots__/SelectBtnField.spec.ts.snap +344 -826
  238. package/src/components/Customs/Selects/SySelect/SySelect.vue +215 -169
  239. package/src/components/Customs/Selects/SySelect/composables/tests/useSySelectKeyboard.spec.ts +4 -2
  240. package/src/components/Customs/Selects/SySelect/composables/useSySelectKeyboard.ts +7 -9
  241. package/src/components/Customs/SyForm/SyForm.mdx +47 -7
  242. package/src/components/Customs/SyForm/SyForm.stories.ts +38 -34
  243. package/src/components/Customs/SyForm/SyForm.vue +27 -6
  244. package/src/components/Customs/SyRadioGroup/Accessibilite.mdx +263 -0
  245. package/src/components/Customs/SyRadioGroup/SyRadioGroup.mdx +37 -0
  246. package/src/components/Customs/SyRadioGroup/SyRadioGroup.stories.ts +665 -0
  247. package/src/components/Customs/SyRadioGroup/SyRadioGroup.vue +324 -0
  248. package/src/components/Customs/SyRadioGroup/locales.ts +3 -0
  249. package/src/components/Customs/SyRadioGroup/tests/SyRadioGroup.spec.ts +135 -0
  250. package/src/components/Customs/SyTabs/SyTabs.vue +1 -1
  251. package/src/components/Customs/SyTextField/SyTextField.vue +225 -194
  252. package/src/components/Customs/SyTextField/tests/SyTextField.spec.ts +32 -2
  253. package/src/components/DataList/DataList.mdx +3 -1
  254. package/src/components/DataList/DataList.stories.ts +67 -17
  255. package/src/components/DataList/DataList.vue +13 -1
  256. package/src/components/DataListGroup/DataListGroup.stories.ts +42 -12
  257. package/src/components/DataListGroup/DataListGroup.vue +14 -1
  258. package/src/components/DataListItem/DataListItem.vue +10 -2
  259. package/src/components/DataListItem/tests/DataListItem.spec.ts +1 -1
  260. package/src/components/DatePicker/CalendarMode/DatePicker.vue +157 -178
  261. package/src/components/DatePicker/CalendarMode/tests/DatePicker.events.spec.ts +5 -0
  262. package/src/components/DatePicker/CalendarMode/tests/DatePicker.spec.ts +179 -179
  263. package/src/components/DatePicker/ComplexDatePicker/ComplexDatePicker.vue +261 -258
  264. package/src/components/DatePicker/ComplexDatePicker/tests/ComplexDatePicker.spec.ts +234 -827
  265. package/src/components/DatePicker/DateTextInput/DateTextInput.vue +46 -73
  266. package/src/components/DatePicker/DateTextInput/tests/DateTextInput.spec.ts +350 -0
  267. package/src/components/DatePicker/composables/index.ts +4 -0
  268. package/src/components/DatePicker/composables/tests/useCalendarKeyboardNavigation.spec.ts +270 -0
  269. package/src/components/DatePicker/composables/tests/useDatePickerViewMode.spec.ts +61 -3
  270. package/src/components/DatePicker/composables/tests/useDateRangeInput.spec.ts +198 -0
  271. package/src/components/DatePicker/composables/tests/useDisplayedDateString.spec.ts +36 -2
  272. package/src/components/DatePicker/composables/tests/useInputHandler.spec.ts +755 -0
  273. package/src/components/DatePicker/composables/tests/useKeyboardEvents.spec.ts +168 -0
  274. package/src/components/DatePicker/composables/tests/useMonthButtonCustomization.spec.ts +40 -34
  275. package/src/components/DatePicker/composables/useAsteriskDisplay.ts +1 -2
  276. package/src/components/DatePicker/composables/useCalendarKeyboardNavigation.ts +155 -0
  277. package/src/components/DatePicker/composables/useDatePickerState.ts +163 -0
  278. package/src/components/DatePicker/composables/useDateRangeInput.ts +4 -8
  279. package/src/components/DatePicker/composables/useDateTextField.ts +156 -0
  280. package/src/components/DatePicker/composables/useHolidayHighlighting.ts +64 -0
  281. package/src/components/DatePicker/composables/useInputHandler.ts +25 -19
  282. package/src/components/DatePicker/composables/useMonthButtonCustomization.ts +52 -26
  283. package/src/components/DatePicker/constants/messages.ts +0 -1
  284. package/src/components/DatePicker/docExamples/DatePickerBidirectionalValidation.vue +2 -2
  285. package/src/components/DatePicker/playground/ComplexDatePickerPlayground.vue +16 -8
  286. package/src/components/ErrorPage/ErrorPage.vue +1 -1
  287. package/src/components/ErrorPage/tests/ErrorPage.spec.ts +17 -0
  288. package/src/components/ExternalLinks/tests/__snapshots__/ExternalLinks.spec.ts.snap +0 -1
  289. package/src/components/LunarCalendar/LunarCalendar.mdx +33 -0
  290. package/src/components/LunarCalendar/LunarCalendar.stories.ts +232 -0
  291. package/src/components/LunarCalendar/LunarCalendar.vue +57 -0
  292. package/src/components/LunarCalendar/tests/LunarCalendar.spec.ts +79 -0
  293. package/src/components/LunarCalendar/useLunarCalendarRules.ts +96 -0
  294. package/src/components/LunarCalendar/useLunarCalendarValidation.ts +47 -0
  295. package/src/components/NotificationBar/NotificationBar.vue +2 -2
  296. package/src/components/PaginatedTable/PaginatedTable.stories.ts +15 -10
  297. package/src/components/PaginatedTable/PaginatedTable.vue +24 -35
  298. package/src/components/PhoneField/PhoneField.vue +102 -83
  299. package/src/components/SearchListField/tests/SearchListField.spec.ts +7 -53
  300. package/src/components/SyAlert/SyAlert.vue +5 -2
  301. package/src/components/TableToolbar/tests/__snapshots__/TableToolbar.spec.ts.snap +24 -72
  302. package/src/components/Tables/SyServerTable/SyServerTable.stories.ts +521 -23
  303. package/src/components/Tables/SyServerTable/SyServerTable.vue +19 -13
  304. package/src/components/Tables/SyTable/SyTable.stories.ts +391 -18
  305. package/src/components/Tables/SyTable/SyTable.vue +16 -11
  306. package/src/components/Tables/common/TableHeader.vue +16 -7
  307. package/src/components/Tables/common/filters/DateFilter.vue +1 -1
  308. package/src/components/Tables/common/locales.ts +1 -0
  309. package/src/components/Tables/common/tableFilterUtils.ts +3 -3
  310. package/src/components/Tables/common/types.ts +4 -2
  311. package/src/components/Tables/common/useTableCheckbox.ts +4 -3
  312. package/src/components/Tables/common/useTableFilter.ts +2 -2
  313. package/src/components/Tables/common/useTableItems.ts +4 -19
  314. package/src/components/index.ts +2 -0
  315. package/src/composables/validation/tests/useFormValidation.spec.ts +251 -0
  316. package/src/composables/validation/tests/useValidatable.spec.ts +90 -0
  317. package/src/stories/Accessibilite/Audit/Exemptions-derogations.mdx +241 -0
  318. package/src/stories/Accessibilite/KitDePreAudit/Introduction.mdx +17 -10
  319. package/src/stories/Accessibilite/KitDePreAudit/Outils/Introduction.mdx +16 -0
  320. package/src/stories/Accessibilite/KitDePreAudit/Preaudit.mdx +160 -106
  321. package/src/stories/Accessibilite/Vuetify/VuetifyItems.ts +2 -1
  322. package/src/stories/GuideDuDev/ClassesUtilitaires/FormattingUtilities.mdx +20 -0
  323. package/src/stories/GuideDuDev/ClassesUtilitaires/index.mdx +10 -0
  324. package/src/utils/formatNir/formatNir.ts +15 -0
  325. package/src/utils/index.ts +1 -0
  326. package/src/utils/insertAt.ts +11 -0
  327. package/src/utils/rules/isDateValid/IsDateValid.mdx +2 -2
  328. package/src/utils/rules/isDateValid/IsDateValid.stories.ts +6 -4
  329. package/src/utils/rules/isDateValid/index.ts +23 -8
  330. package/src/utils/rules/isDateValid/tests/isDateValid.spec.ts +9 -0
  331. package/src/utils/rules/isExactLength/IsExactLenght.mdx +1 -1
  332. package/src/utils/rules/isHolidayDay/IsHolidayDay.mdx +19 -7
  333. package/src/utils/rules/isHolidayDay/index.ts +6 -8
  334. package/src/utils/rules/isHolidayDay/tests/isHolidayDay.spec.ts +13 -1
  335. package/src/utils/rules/isNotAfterDate/IsNotAfterDate.mdx +2 -2
  336. package/src/utils/rules/isNotAfterDate/IsNotAfterDate.stories.ts +9 -2
  337. package/src/utils/rules/isNotAfterDate/index.ts +5 -12
  338. package/src/utils/rules/isNotAfterDate/tests/isNotAfterDate.spec.ts +20 -0
  339. package/src/utils/rules/isNotAfterToday/IsNotAfterToday.mdx +2 -2
  340. package/src/utils/rules/isNotAfterToday/IsNotAfterToday.stories.ts +8 -2
  341. package/src/utils/rules/isNotAfterToday/index.ts +6 -6
  342. package/src/utils/rules/isNotAfterToday/tests/isNotAfterToday.spec.ts +20 -0
  343. package/src/utils/rules/isNotBeforeDate/IsNotBeforeDate.mdx +2 -2
  344. package/src/utils/rules/isNotBeforeDate/index.ts +5 -12
  345. package/src/utils/rules/isNotBeforeDate/tests/IsNotBeforeDate.spec.ts +20 -0
  346. package/src/utils/rules/isNotBeforeToday/IsNotBeforeToday.mdx +2 -2
  347. package/src/utils/rules/isNotBeforeToday/IsNotBeforeToday.stories.ts +8 -2
  348. package/src/utils/rules/isNotBeforeToday/index.ts +6 -6
  349. package/src/utils/rules/isNotBeforeToday/tests/notBeforeToday.spec.ts +19 -0
  350. package/src/utils/rules/validateDateValue.ts +37 -0
  351. package/src/vuetifyConfig.ts +6 -2
  352. package/dist/components/Customs/Selects/SelectBtnField/config.d.ts +0 -11
  353. package/dist/components/DatePicker/tests/setup.d.ts +0 -75370
  354. package/dist/components/Tables/common/formatters.d.ts +0 -17
  355. package/dist/main-CbBVJ_le.js +0 -34377
  356. package/dist/stories/Accessibilite/Vuetify/VuetifyItems.d.ts +0 -70
  357. package/dist/stories/DesignTokens/StylesTypographiques.stories.new.d.ts +0 -8
  358. package/dist/stories/DesignTokens/TypographyDisplay.d.ts +0 -28
  359. package/dist/stories/DesignTokens/vue-shims.d.ts +0 -6
  360. package/src/components/Amelipro/AmeliproMultipleFoldingCard/tests/AmeliproMultipleFoldingCard.spec.ts +0 -40
  361. package/src/components/Amelipro/AmeliproMultipleFoldingCard/tests/__snapshots__/AmeliproMultipleFoldingCard.spec.ts.snap +0 -369
  362. package/src/components/Amelipro/ServiceMenu/ServiceBtn/tests/ServiceBtn.spec.ts +0 -21
  363. package/src/components/Amelipro/ServiceMenu/ServiceBtn/tests/__snapshots__/ServiceBtn.spec.ts.snap +0 -100
  364. package/src/components/Amelipro/ServiceMenu/ServiceList/tests/ServiceList.spec.ts +0 -25
  365. package/src/components/Amelipro/ServiceMenu/ServiceList/tests/__snapshots__/ServiceList.spec.ts.snap +0 -245
  366. package/src/components/Amelipro/ServiceMenu/ServiceMenuContent/tests/ServiceMenuContent.spec.ts +0 -45
  367. package/src/components/Amelipro/ServiceMenu/ServiceMenuContent/tests/__snapshots__/ServiceMenuContent.spec.ts.snap +0 -787
  368. package/src/components/Amelipro/ServiceMenu/tests/ServiceMenu.spec.ts +0 -46
  369. package/src/components/Amelipro/ServiceMenu/tests/__snapshots__/ServiceMenu.spec.ts.snap +0 -111
  370. package/src/components/Amelipro/StructureMenu/StructureBtn/tests/StructureBtn.spec.ts +0 -17
  371. package/src/components/Amelipro/StructureMenu/StructureBtn/tests/__snapshots__/StructureBtn.spec.ts.snap +0 -34
  372. package/src/components/Amelipro/StructureMenu/StructureItem/tests/StructureItem.spec.ts +0 -21
  373. package/src/components/Amelipro/StructureMenu/StructureItem/tests/__snapshots__/StructureItem.spec.ts.snap +0 -106
  374. package/src/components/Amelipro/StructureMenu/StructureList/tests/StructureList.spec.ts +0 -33
  375. package/src/components/Amelipro/StructureMenu/StructureList/tests/__snapshots__/StructureList.spec.ts.snap +0 -353
  376. package/src/components/Amelipro/StructureMenu/StructureTabs/tests/StructureTabs.spec.ts +0 -60
  377. package/src/components/Amelipro/StructureMenu/StructureTabs/tests/__snapshots__/StructureTabs.spec.ts.snap +0 -824
  378. package/src/components/Amelipro/StructureMenu/tests/StructureMenu.spec.ts +0 -69
  379. package/src/components/Amelipro/StructureMenu/tests/__snapshots__/StructureMenu.spec.ts.snap +0 -1383
  380. package/src/components/Amelipro/UserInformationSummary/tests/UserInformationSummary.spec.ts +0 -24
  381. package/src/components/Amelipro/UserMenu/UserMenuDetails/tests/UserMenuDetails.spec.ts +0 -33
  382. package/src/components/Amelipro/UserMenu/UserMenuDetails/tests/__snapshots__/UserMenuDetails.spec.ts.snap +0 -3
  383. package/src/components/Amelipro/UserMenu/tests/UserMenu.spec.ts +0 -34
  384. package/src/components/Amelipro/UserMenu/tests/__snapshots__/UserMenu.spec.ts.snap +0 -101
  385. package/src/components/Customs/Selects/SelectBtnField/config.ts +0 -11
  386. package/src/components/DatePicker/ComplexDatePicker/tests/ComplexDatePicker.events.spec.ts +0 -151
  387. package/src/components/DatePicker/DateTextInput/DateTextInput.events.spec.ts +0 -148
  388. package/src/components/DatePicker/DateTextInput/DateTextInput.range.spec.ts +0 -361
  389. package/src/components/DatePicker/DateTextInput/DateTextInput.spec.ts +0 -709
  390. package/src/components/DatePicker/tests/DatePicker.validation.spec.ts +0 -4111
  391. package/src/components/DatePicker/tests/archiTest.md +0 -33
  392. package/src/components/DatePicker/tests/navigation.regression.spec.ts +0 -74
  393. package/src/components/DatePicker/tests/navigation.simple.spec.ts +0 -137
  394. package/src/components/DatePicker/tests/setup.ts +0 -243
  395. package/src/components/Tables/common/formatters.ts +0 -72
@@ -1,78 +1,473 @@
1
- import { mount } from '@vue/test-utils'
2
- import { expect, describe, it } from 'vitest'
1
+ import { shallowMount, VueWrapper } from '@vue/test-utils'
2
+ import { beforeEach, describe, it, expect } from 'vitest'
3
3
  import AmeliproTable from '../AmeliproTable.vue'
4
+ import TestHelper from '@tests/helpers/TestHelper'
5
+ import { defineComponent, h, type PropType } from 'vue'
6
+ import type { IDataListItem } from '../../types'
7
+ import type { AmeliproTableHeader } from '../types'
8
+ import type { ExpectedPropOptions } from '@tests/types'
9
+ import type { ComponentProps } from 'vue-component-type-helpers'
10
+ import type { SelectItem } from '../../AmeliproSelect/types'
11
+
12
+ const expectedPropOptions: ExpectedPropOptions<typeof AmeliproTable> = {
13
+ counterLabel: {
14
+ type: String,
15
+ default: 'item(s)',
16
+ },
17
+ dataList: {
18
+ type: Array as PropType<IDataListItem[]>,
19
+ default: () => [],
20
+ },
21
+ headers: {
22
+ type: Array as PropType<AmeliproTableHeader[]>,
23
+ default: () => [],
24
+ },
25
+ hiddenLabels: {
26
+ type: Boolean,
27
+ default: false,
28
+ },
29
+ itemsToDisplayDesktop: {
30
+ type: Number,
31
+ default: 10,
32
+ },
33
+ itemsToDisplayMobile: {
34
+ type: Number,
35
+ default: 10,
36
+ },
37
+ noTableInfos: {
38
+ type: Boolean,
39
+ default: false,
40
+ },
41
+ paginationSelectLabel: {
42
+ type: String,
43
+ default: 'Nb lignes/page :',
44
+ },
45
+ paginationSelectPlaceholder: {
46
+ type: String,
47
+ default: 'Nb lignes/page',
48
+ },
49
+ sortSelectDefaultValue: {
50
+ type: [Number, String] as PropType<number | string>,
51
+ default: undefined,
52
+ },
53
+ sortSelectItems: {
54
+ type: Array as PropType<SelectItem[]>,
55
+ default: () => [],
56
+ },
57
+ sortSelectLabel: {
58
+ type: String,
59
+ default: 'Trier par :',
60
+ },
61
+ sortSelectPlaceholder: {
62
+ type: String,
63
+ default: 'Trier par',
64
+ },
65
+ tableMaxWidth: {
66
+ type: String,
67
+ default: '100%',
68
+ },
69
+ tableMinWidth: {
70
+ type: String,
71
+ default: undefined,
72
+ },
73
+ tableWidth: {
74
+ type: String,
75
+ default: '100%',
76
+ },
77
+ title: {
78
+ type: String,
79
+ required: true,
80
+ },
81
+ uniqueId: {
82
+ type: String,
83
+ required: true,
84
+ },
85
+ verticalBorder: {
86
+ type: Boolean,
87
+ default: false,
88
+ },
89
+ }
90
+
91
+ const requiredPropValues = (): ComponentProps<typeof AmeliproTable> => ({
92
+ title: 'Required Titre du tableau',
93
+ uniqueId: 'required-amelipro-table-id',
94
+ })
95
+
96
+ const modifiedPropValues = (): ComponentProps<typeof AmeliproTable> => ({
97
+ counterLabel: 'Modified counter label',
98
+ dataList: [
99
+ {
100
+ email: 'modified.jean.bernard@gmail.com',
101
+ firstname: 'Modified Jean',
102
+ id: 10,
103
+ name: 'Modified Bernard',
104
+ },
105
+ {
106
+ email: 'modified.simon.pierre@gmail.com',
107
+ firstname: 'Modified Simon',
108
+ id: 11,
109
+ name: 'Modified Pierre',
110
+ },
111
+ ],
112
+ headers: [
113
+ {
114
+ align: 'right',
115
+ headerClasses: 'custom-header-class',
116
+ cellsClasses: 'custom-cells-class',
117
+ descriptionId: 'modified-description-id',
118
+ maxWidth: '30%',
119
+ minWidth: '10%',
120
+ name: 'name',
121
+ title: 'Modified Nom',
122
+ width: '30%',
123
+ sort: {
124
+ ascendant: { label: 'modified tri asc', disabled: true },
125
+ descendant: { label: 'modified tri desc', disabled: false },
126
+ },
127
+ },
128
+ {
129
+ align: 'right',
130
+ maxWidth: '30%',
131
+ minWidth: '10%',
132
+ name: 'firstname',
133
+ title: 'Modified Prénom',
134
+ width: '30%',
135
+ },
136
+ {
137
+ align: 'right',
138
+ maxWidth: '30%',
139
+ minWidth: '10%',
140
+ name: 'email',
141
+ title: 'Modified E-mail',
142
+ width: '30%',
143
+ },
144
+ ],
145
+ hiddenLabels: true,
146
+ itemsToDisplayDesktop: 5,
147
+ itemsToDisplayMobile: 2,
148
+ noTableInfos: true,
149
+ paginationSelectLabel: 'Modified pagination select label',
150
+ paginationSelectPlaceholder: 'Modified pagination select placeholder',
151
+ sortSelectDefaultValue: 'modified-sort-default',
152
+ sortSelectItems: [{ title: 'Modified Sort', value: 'modified-sort' }],
153
+ sortSelectLabel: 'Modified sort select label',
154
+ sortSelectPlaceholder: 'Modified sort select placeholder',
155
+ tableMaxWidth: '80%',
156
+ tableMinWidth: '60%',
157
+ tableWidth: '90%',
158
+ title: 'Modified Titre du tableau',
159
+ uniqueId: 'modified-amelipro-table-id',
160
+ verticalBorder: true,
161
+ })
162
+
163
+ const AmeliproSelectMock = defineComponent({
164
+ name: 'AmeliproSelect',
165
+ props: {
166
+ hideErrorMessage: { type: Boolean, default: true },
167
+ items: { type: Array as PropType<SelectItem[]>, default: () => [] },
168
+ label: { type: String, default: '' },
169
+ placeholder: { type: String, default: '' },
170
+ uniqueId: { type: String, required: true },
171
+ },
172
+ setup(props, { slots }) {
173
+ return () =>
174
+ h('amelipro-select-stub', { uniqueId: props.uniqueId }, [
175
+ slots.default ? slots.default() : null,
176
+ ])
177
+ },
178
+ })
179
+
180
+ const testHelper = new TestHelper(AmeliproTable)
181
+ testHelper
182
+ .setExpectedPropOptions(expectedPropOptions)
183
+ .setRequiredPropValues(requiredPropValues)
184
+ .setModifiedPropValues(modifiedPropValues)
185
+ .setMountOptions({
186
+ global: {
187
+ stubs: {
188
+ AmeliproSelect: AmeliproSelectMock,
189
+ },
190
+ },
191
+ })
4
192
 
5
193
  describe('AmeliproTable', () => {
6
- it('render correctly', async () => {
7
- const wrapper = mount(AmeliproTable, {
8
- props: {
9
- headers: [
10
- {
11
- align: 'left',
12
- maxWidth: '25%',
13
- minWidth: '20%',
14
- name: 'name',
15
- title: 'Nom',
16
- width: '25%',
17
- sort: {
18
- ascendant: {
19
- label: 'tri asc',
20
- disabled: false,
21
- },
22
- descendant: {
23
- label: 'tri desc',
24
- disabled: true,
194
+ describe('Snapshots', () => {
195
+ testHelper.snapshots()
196
+ })
197
+
198
+ describe('Properties', () => {
199
+ testHelper.properties()
200
+ })
201
+
202
+ describe('Setting props should update attributes of inner tags', () => {
203
+ let wrapper: VueWrapper<InstanceType<typeof AmeliproTable>>
204
+
205
+ beforeEach(() => {
206
+ wrapper = shallowMount(AmeliproTable, { props: requiredPropValues() })
207
+ })
208
+
209
+ describe('Main', () => {
210
+ it('prop uniqueId sets id attribute on root container', async () => {
211
+ expect(wrapper.attributes('id')).toBe(`${testHelper.default('uniqueId')}-container`)
212
+ await wrapper.setProps({ uniqueId: testHelper.modified('uniqueId') })
213
+ expect(wrapper.attributes('id')).toBe(`${testHelper.modified('uniqueId')}-container`)
214
+ })
215
+ })
216
+
217
+ describe('Info wrapper', () => {
218
+ it('prop uniqueId sets attribute id', async () => {
219
+ expect(wrapper.find('.amelipro-table__infos').attributes('id')).toBe(`${testHelper.default('uniqueId')}-info-wrapper`)
220
+
221
+ const { uniqueId } = modifiedPropValues()
222
+ await wrapper.setProps({ uniqueId })
223
+ expect(wrapper.find('.amelipro-table__infos').attributes('id')).toBe(`${testHelper.modified('uniqueId')}-info-wrapper`)
224
+ })
225
+ })
226
+
227
+ describe('Total counter', () => {
228
+ it('prop uniqueId sets attribute id', async () => {
229
+ expect(wrapper.find('.total-counter').attributes('id')).toBe(`${testHelper.default('uniqueId')}-total-counter`)
230
+
231
+ const { uniqueId } = modifiedPropValues()
232
+ await wrapper.setProps({ uniqueId })
233
+ expect(wrapper.find('.total-counter').attributes('id')).toBe(`${testHelper.modified('uniqueId')}-total-counter`)
234
+ })
235
+
236
+ it('prop counterLabel sets content text', async () => {
237
+ expect(wrapper.find('.total-counter').text()).toContain(`${testHelper.default('counterLabel')}`)
238
+
239
+ const { counterLabel } = modifiedPropValues()
240
+ await wrapper.setProps({ counterLabel })
241
+ expect(wrapper.find('.total-counter').text()).toContain(`${testHelper.modified('counterLabel')}`)
242
+ })
243
+ })
244
+
245
+ describe('Select wrapper', () => {
246
+ it('prop uniqueId sets attribute id', async () => {
247
+ expect(wrapper.find('.amelipro-table__selects').attributes('id')).toBe(`${testHelper.default('uniqueId')}-select-wrapper`)
248
+
249
+ const { uniqueId } = modifiedPropValues()
250
+ await wrapper.setProps({ uniqueId })
251
+ expect(wrapper.find('.amelipro-table__selects').attributes('id')).toBe(`${testHelper.modified('uniqueId')}-select-wrapper`)
252
+ })
253
+ })
254
+
255
+ describe('Desktop wrapper', () => {
256
+ it('prop uniqueId sets attribute id', async () => {
257
+ expect(wrapper.find('.amelipro-table__wrapper--desktop').attributes('id')).toBe(`${testHelper.default('uniqueId')}-desktop`)
258
+
259
+ const { uniqueId } = modifiedPropValues()
260
+ await wrapper.setProps({ uniqueId })
261
+ expect(wrapper.find('.amelipro-table__wrapper--desktop').attributes('id')).toBe(`${testHelper.modified('uniqueId')}-desktop`)
262
+ })
263
+ })
264
+
265
+ describe('Desktop wrapper > div', () => {
266
+ it('prop tableMaxWidth & tableWidth set attribute style', async () => {
267
+ expect(wrapper.find('.amelipro-table__wrapper--desktop > div').attributes('style')).toBe(`max-width: ${testHelper.default('tableMaxWidth')}; width: ${testHelper.default('tableWidth')};`)
268
+
269
+ const { tableMaxWidth, tableWidth } = modifiedPropValues()
270
+ await wrapper.setProps({ tableMaxWidth, tableWidth })
271
+ expect(wrapper.find('.amelipro-table__wrapper--desktop > div').attributes('style')).toBe(`max-width: ${testHelper.modified('tableMaxWidth')}; width: ${testHelper.modified('tableWidth')};`)
272
+ })
273
+ })
274
+
275
+ describe('Desktop table', () => {
276
+ it('prop uniqueId sets attribute id', async () => {
277
+ expect(wrapper.find('.amelipro-table__table--desktop').attributes('id')).toBe(`${testHelper.default('uniqueId')}-table`)
278
+
279
+ const { uniqueId } = modifiedPropValues()
280
+ await wrapper.setProps({ uniqueId })
281
+ expect(wrapper.find('.amelipro-table__table--desktop').attributes('id')).toBe(`${testHelper.modified('uniqueId')}-table`)
282
+ })
283
+
284
+ it('prop title sets attribute aria-label', async () => {
285
+ expect(wrapper.find('.amelipro-table__table--desktop').attributes('aria-label')).toBe(testHelper.default('title'))
286
+
287
+ const { title } = modifiedPropValues()
288
+ await wrapper.setProps({ title })
289
+ expect(wrapper.find('.amelipro-table__table--desktop').attributes('aria-label')).toBe(testHelper.modified('title'))
290
+ })
291
+
292
+ it('prop verticalBorder sets attribute class', async () => {
293
+ expect(wrapper.find('.amelipro-table__table--desktop').classes('vertical-border')).toBe(testHelper.default('verticalBorder'))
294
+
295
+ const { verticalBorder } = modifiedPropValues()
296
+ await wrapper.setProps({ verticalBorder })
297
+ expect(wrapper.find('.amelipro-table__table--desktop').classes('vertical-border')).toBe(testHelper.modified('verticalBorder'))
298
+ })
299
+ })
300
+
301
+ describe('Desktop table header', () => {
302
+ it('prop uniqueId sets attribute id', async () => {
303
+ expect(wrapper.find('.amelipro-table__table--desktop thead tr').attributes('id')).toBe(`${testHelper.default('uniqueId')}-table-header`)
304
+
305
+ const { uniqueId } = modifiedPropValues()
306
+ await wrapper.setProps({ uniqueId })
307
+ expect(wrapper.find('.amelipro-table__table--desktop thead tr').attributes('id')).toBe(`${testHelper.modified('uniqueId')}-table-header`)
308
+ })
309
+ })
310
+
311
+ describe('Desktop table header cells', () => {
312
+ // Ici on a besoin d'avoir des lignes à afficher pour que les headers puissent être contrôlés
313
+ beforeEach(() => {
314
+ wrapper = shallowMount(AmeliproTable, {
315
+ props: {
316
+ ...requiredPropValues(),
317
+ dataList: [
318
+ {
319
+ email: 'test@example.com', firstname: 'Test', id: 1, name: 'User',
25
320
  },
26
- },
27
- },
28
- {
29
- align: 'left',
30
- maxWidth: '25%',
31
- minWidth: '20%',
32
- name: 'firstname',
33
- title: 'Prénom',
34
- width: '25%',
35
- },
36
- {
37
- align: 'left',
38
- maxWidth: '25%',
39
- minWidth: '20%',
40
- name: 'email',
41
- title: 'E-mail',
42
- width: '25%',
43
- },
44
- ],
45
- dataList: [
46
- {
47
- email: 'jean.bernard@gmail.com',
48
- firstname: 'Jean',
49
- id: 0,
50
- name: 'Bernard',
51
- },
52
- {
53
- email: 'simon.pierre@gmail.com',
54
- firstname: 'Simon',
55
- id: 1,
56
- name: 'Pierre',
321
+ ],
322
+ headers: [{
323
+ align: 'right',
324
+ maxWidth: '50%',
325
+ minWidth: '20%',
326
+ name: 'test',
327
+ title: 'header test',
328
+ width: '50%',
329
+ }],
57
330
  },
58
- {
59
- email: 'michel.souris@gmail.com',
60
- firstname: 'Michel',
61
- id: 2,
62
- name: 'Souris',
63
- },
64
- {
65
- email: 'amandine.jabot@gmail.com',
66
- firstname: 'Amandine',
67
- id: 3,
68
- name: 'Jabot',
331
+ })
332
+ })
333
+
334
+ it('prop headers sets number of header cells', async () => {
335
+ expect(wrapper.findAll('.amelipro-table__table--desktop thead th').length).toBe(1)
336
+
337
+ const { headers } = modifiedPropValues()
338
+ await wrapper.setProps({ headers })
339
+ expect(wrapper.findAll('.amelipro-table__table--desktop thead th').length).toBe(testHelper.modified('headers').length)
340
+ })
341
+
342
+ it('prop uniqueId sets attribute id', async () => {
343
+ expect(wrapper.find('.amelipro-table__table--desktop thead th').attributes('id')).toBe(`${testHelper.default('uniqueId')}-table-header-cell-0`)
344
+
345
+ const { uniqueId } = modifiedPropValues()
346
+ await wrapper.setProps({ uniqueId })
347
+ expect(wrapper.find('.amelipro-table__table--desktop thead th').attributes('id')).toBe(`${testHelper.modified('uniqueId')}-table-header-cell-0`)
348
+ })
349
+
350
+ it('prop headers sets attribute class', async () => {
351
+ expect(wrapper.find('.amelipro-table__table--desktop thead th').classes('custom-header-class')).toBe(false)
352
+
353
+ const { headers } = modifiedPropValues()
354
+ await wrapper.setProps({ headers })
355
+ expect(wrapper.find('.amelipro-table__table--desktop thead th').classes('custom-header-class')).toBe(true)
356
+ })
357
+
358
+ it('prop headers sets attribute style', async () => {
359
+ expect(wrapper.find('.amelipro-table__table--desktop thead th').attributes('style')).toBe('min-width: 20%; width: 50%; max-width: 50%; text-align: right;')
360
+
361
+ const { headers } = modifiedPropValues()
362
+ await wrapper.setProps({ headers })
363
+ expect(wrapper.find('.amelipro-table__table--desktop thead th').attributes('style')).toBe('min-width: 10%; width: 30%; max-width: 30%; text-align: right;')
364
+ })
365
+
366
+ // th > p
367
+ it('prop headers sets attributes style & class and content', async () => {
368
+ expect(wrapper.find('.amelipro-table__table--desktop thead th p').attributes('aria-describedby')).toBeUndefined()
369
+ expect(wrapper.find('.amelipro-table__table--desktop thead th p').classes('d-flex')).toBe(false)
370
+ expect(wrapper.find('.amelipro-table__table--desktop thead th p').text()).toBe('header test')
371
+
372
+ const { headers } = modifiedPropValues()
373
+ await wrapper.setProps({ headers })
374
+ expect(wrapper.find('.amelipro-table__table--desktop thead th p').attributes('aria-describedby')).toBe('modified-description-id')
375
+ expect(wrapper.find('.amelipro-table__table--desktop thead th p').classes('d-flex')).toBe(true)
376
+ expect(wrapper.find('.amelipro-table__table--desktop thead th p').text()).toBe('Modified Nom')
377
+ })
378
+ })
379
+
380
+ describe('Desktop table body rows', () => {
381
+ beforeEach(() => {
382
+ wrapper = shallowMount(AmeliproTable, {
383
+ props: {
384
+ ...requiredPropValues(),
385
+ dataList: [
386
+ {
387
+ email: 'test@example.com', firstname: 'Test', id: 1, name: 'User',
388
+ },
389
+ ],
390
+ headers: [{
391
+ align: 'right',
392
+ maxWidth: '50%',
393
+ minWidth: '20%',
394
+ name: 'test',
395
+ title: 'header test',
396
+ width: '50%',
397
+ }],
69
398
  },
70
- ],
71
- title: 'Titre du tableau',
72
- uniqueId: 'amelipro-table-id',
73
- },
399
+ })
400
+ })
401
+
402
+ it('prop dataList sets number of body rows', async () => {
403
+ expect(wrapper.findAll('.amelipro-table__table--desktop tbody tr').length).toBe(1)
404
+
405
+ const { dataList } = modifiedPropValues()
406
+ await wrapper.setProps({ dataList })
407
+ expect(wrapper.findAll('.amelipro-table__table--desktop tbody tr').length).toBe(testHelper.modified('dataList').length)
408
+ })
409
+
410
+ it('prop uniqueId sets attribute id', async () => {
411
+ expect(wrapper.find('.amelipro-table__table--desktop tbody tr').attributes('id')).toBe(`${testHelper.default('uniqueId')}-table-row-0`)
412
+
413
+ const { uniqueId } = modifiedPropValues()
414
+ await wrapper.setProps({ uniqueId })
415
+ expect(wrapper.find('.amelipro-table__table--desktop tbody tr').attributes('id')).toBe(`${testHelper.modified('uniqueId')}-table-row-0`)
416
+ })
74
417
  })
75
418
 
76
- expect(wrapper.html()).toMatchSnapshot()
419
+ describe('Desktop table body cells', () => {
420
+ beforeEach(() => {
421
+ wrapper = shallowMount(AmeliproTable, {
422
+ props: {
423
+ ...requiredPropValues(),
424
+ dataList: [
425
+ {
426
+ email: 'test@example.com', firstname: 'Test', id: 1, name: 'User',
427
+ },
428
+ ],
429
+ headers: [{
430
+ align: 'right',
431
+ maxWidth: '50%',
432
+ minWidth: '20%',
433
+ name: 'test',
434
+ title: 'header test',
435
+ width: '50%',
436
+ }],
437
+ },
438
+ })
439
+ })
440
+
441
+ it('prop headers sets number of body cells', async () => {
442
+ expect(wrapper.findAll('.amelipro-table__table--desktop tbody td').length).toBe(1)
443
+
444
+ const { headers } = modifiedPropValues()
445
+ await wrapper.setProps({ headers })
446
+ expect(wrapper.findAll('.amelipro-table__table--desktop tbody td').length).toBe(testHelper.modified('headers').length)
447
+ })
448
+
449
+ it('prop uniqueId sets attribute id', async () => {
450
+ expect(wrapper.find('.amelipro-table__table--desktop tbody td').attributes('id')).toBe(`${testHelper.default('uniqueId')}-table-row-0-cell-0`)
451
+
452
+ const { uniqueId } = modifiedPropValues()
453
+ await wrapper.setProps({ uniqueId })
454
+ expect(wrapper.find('.amelipro-table__table--desktop tbody td').attributes('id')).toBe(`${testHelper.modified('uniqueId')}-table-row-0-cell-0`)
455
+ })
456
+
457
+ it('prop dataList sets attribute class', async () => {
458
+ expect(wrapper.find('.amelipro-table__table--desktop tbody td').classes()).toEqual([])
459
+
460
+ // Il faut aussi modifier headers pour que cell.value soit correctement mise à jour
461
+ const { dataList, headers } = modifiedPropValues()
462
+ await wrapper.setProps({ dataList, headers })
463
+ expect(wrapper.find('.amelipro-table__table--desktop tbody td').classes()).toEqual(['custom-cells-class'])
464
+ })
465
+ })
77
466
  })
467
+
468
+ // TODO:
469
+ // describe.skip('Setting props should update props or attributes of inner components', () => { })
470
+
471
+ // TODO:
472
+ // describe.skip('Slots', () => { })
78
473
  })