@central-design-system/components 4.0.0-alpha.4 → 4.0.0-alpha.5

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 (970) hide show
  1. package/CHANGELOG.md +5 -0
  2. package/MIGRATION.md +14 -42
  3. package/dist/browser/entry.js +4917 -2238
  4. package/dist/browser/iconsets/cdsLegacy.js +1 -1
  5. package/dist/cds.d.ts +119065 -0
  6. package/dist/cjs/entry.js +9 -9
  7. package/dist/es/entry.css +0 -18
  8. package/dist/es/entry.js +3 -2
  9. package/dist/es/entry.js.map +1 -1
  10. package/dist/es/src/cds.js +1 -1
  11. package/dist/es/src/components/CdsApp/CdsApp.css +0 -18
  12. package/dist/es/src/components/CdsApp/api/CdsApp.props.js +1 -0
  13. package/dist/es/src/components/CdsApp/api/CdsApp.props.js.map +1 -1
  14. package/dist/es/src/components/CdsAutocomplete/CdsAutocomplete.css +0 -18
  15. package/dist/es/src/components/CdsAutocomplete/CdsAutocomplete.vue_vue_type_script_setup_true_lang.js +20 -5
  16. package/dist/es/src/components/CdsAutocomplete/CdsAutocomplete.vue_vue_type_script_setup_true_lang.js.map +1 -1
  17. package/dist/es/src/components/CdsAutocomplete/api/CdsAutocomplete.props.js +9 -2
  18. package/dist/es/src/components/CdsAutocomplete/api/CdsAutocomplete.props.js.map +1 -1
  19. package/dist/es/src/components/CdsAvatar/CdsAvatar.css +0 -18
  20. package/dist/es/src/components/CdsAvatar/api/CdsAvatar.props.js +20 -5
  21. package/dist/es/src/components/CdsAvatar/api/CdsAvatar.props.js.map +1 -1
  22. package/dist/es/src/components/CdsBadge/CdsBadge.css +0 -18
  23. package/dist/es/src/components/CdsBadge/api/CdsBadge.props.js +37 -9
  24. package/dist/es/src/components/CdsBadge/api/CdsBadge.props.js.map +1 -1
  25. package/dist/es/src/components/CdsBreadcrumbs/CdsBreadcrumbs.css +0 -18
  26. package/dist/es/src/components/CdsBreadcrumbs/api/CdsBreadcrumbs.props.js +32 -8
  27. package/dist/es/src/components/CdsBreadcrumbs/api/CdsBreadcrumbs.props.js.map +1 -1
  28. package/dist/es/src/components/CdsButton/CdsButton.css +0 -18
  29. package/dist/es/src/components/CdsButton/CdsButton.vue_vue_type_script_setup_true_lang.js +4 -1
  30. package/dist/es/src/components/CdsButton/CdsButton.vue_vue_type_script_setup_true_lang.js.map +1 -1
  31. package/dist/es/src/components/CdsButton/api/CdsButton.props.js +28 -7
  32. package/dist/es/src/components/CdsButton/api/CdsButton.props.js.map +1 -1
  33. package/dist/es/src/components/CdsButtonGroup/CdsButtonGroup.css +0 -18
  34. package/dist/es/src/components/CdsButtonGroup/api/CdsButtonGroup.props.js +4 -1
  35. package/dist/es/src/components/CdsButtonGroup/api/CdsButtonGroup.props.js.map +1 -1
  36. package/dist/es/src/components/CdsButtonToggle/CdsButtonToggle.css +0 -18
  37. package/dist/es/src/components/CdsButtonToggle/CdsButtonToggle.vue_vue_type_script_setup_true_lang.js +20 -5
  38. package/dist/es/src/components/CdsButtonToggle/CdsButtonToggle.vue_vue_type_script_setup_true_lang.js.map +1 -1
  39. package/dist/es/src/components/CdsCard/CdsCard.css +0 -18
  40. package/dist/es/src/components/CdsCard/CdsCardGroup.vue_vue_type_script_setup_true_lang.js +20 -5
  41. package/dist/es/src/components/CdsCard/CdsCardGroup.vue_vue_type_script_setup_true_lang.js.map +1 -1
  42. package/dist/es/src/components/CdsCard/api/CdsCard.props.js +84 -20
  43. package/dist/es/src/components/CdsCard/api/CdsCard.props.js.map +1 -1
  44. package/dist/es/src/components/CdsCarousel/CdsCarousel.css +0 -18
  45. package/dist/es/src/components/CdsCarousel/api/CdsCarousel.props.js +36 -9
  46. package/dist/es/src/components/CdsCarousel/api/CdsCarousel.props.js.map +1 -1
  47. package/dist/es/src/components/CdsCheckbox/CdsCheckbox.css +0 -18
  48. package/dist/es/src/components/CdsCheckboxButton/CdsCheckboxButton.css +0 -18
  49. package/dist/es/src/components/CdsCheckboxButton/api/CdsCheckboxButton.props.js +8 -2
  50. package/dist/es/src/components/CdsCheckboxButton/api/CdsCheckboxButton.props.js.map +1 -1
  51. package/dist/es/src/components/CdsCombobox/CdsCombobox.css +0 -18
  52. package/dist/es/src/components/CdsCombobox/CdsCombobox.vue_vue_type_script_setup_true_lang.js +24 -6
  53. package/dist/es/src/components/CdsCombobox/CdsCombobox.vue_vue_type_script_setup_true_lang.js.map +1 -1
  54. package/dist/es/src/components/CdsCombobox/api/CdsCombobox.props.js +13 -3
  55. package/dist/es/src/components/CdsCombobox/api/CdsCombobox.props.js.map +1 -1
  56. package/dist/es/src/components/CdsCounter/CdsCounter.css +0 -18
  57. package/dist/es/src/components/CdsCounter/api/CdsCounter.props.js +12 -3
  58. package/dist/es/src/components/CdsCounter/api/CdsCounter.props.js.map +1 -1
  59. package/dist/es/src/components/CdsDateInput/CdsDateInput.css +0 -18
  60. package/dist/es/src/components/CdsDateInput/CdsDateInput.vue_vue_type_script_setup_true_lang.js +8 -0
  61. package/dist/es/src/components/CdsDateInput/CdsDateInput.vue_vue_type_script_setup_true_lang.js.map +1 -1
  62. package/dist/es/src/components/CdsDateInput/api/CdsDateInput.props.js +31 -7
  63. package/dist/es/src/components/CdsDateInput/api/CdsDateInput.props.js.map +1 -1
  64. package/dist/es/src/components/CdsDatePicker/CdsDatePicker.css +0 -18
  65. package/dist/es/src/components/CdsDatePicker/CdsDatePicker.vue_vue_type_script_setup_true_lang.js +20 -0
  66. package/dist/es/src/components/CdsDatePicker/CdsDatePicker.vue_vue_type_script_setup_true_lang.js.map +1 -1
  67. package/dist/es/src/components/CdsDatePicker/api/CdsDatePicker.props.js +64 -15
  68. package/dist/es/src/components/CdsDatePicker/api/CdsDatePicker.props.js.map +1 -1
  69. package/dist/es/src/components/CdsDefaultsProvider/api/CdsDefaultsProvider.props.js +5 -0
  70. package/dist/es/src/components/CdsDefaultsProvider/api/CdsDefaultsProvider.props.js.map +1 -1
  71. package/dist/es/src/components/CdsDescription/CdsDescription.css +0 -18
  72. package/dist/es/src/components/CdsDivider/CdsDivider.css +0 -18
  73. package/dist/es/src/components/CdsDivider/CdsDivider.vue_vue_type_script_setup_true_lang.js.map +1 -1
  74. package/dist/es/src/components/CdsDivider/api/CdsDivider.props.js +33 -8
  75. package/dist/es/src/components/CdsDivider/api/CdsDivider.props.js.map +1 -1
  76. package/dist/es/src/components/CdsDrawer/CdsDrawer.css +0 -18
  77. package/dist/es/src/components/CdsDrawer/CdsDrawer.vue_vue_type_script_setup_true_lang.js +4 -0
  78. package/dist/es/src/components/CdsDrawer/CdsDrawer.vue_vue_type_script_setup_true_lang.js.map +1 -1
  79. package/dist/es/src/components/CdsDrawer/api/CdsDrawer.props.js +32 -8
  80. package/dist/es/src/components/CdsDrawer/api/CdsDrawer.props.js.map +1 -1
  81. package/dist/es/src/components/CdsEmptyState/CdsEmptyState.css +0 -18
  82. package/dist/es/src/components/CdsEmptyState/api/CdsEmptyState.props.js +33 -8
  83. package/dist/es/src/components/CdsEmptyState/api/CdsEmptyState.props.js.map +1 -1
  84. package/dist/es/src/components/CdsExpandablePanel/CdsExpandablePanel.vue_vue_type_script_setup_true_lang.js +16 -4
  85. package/dist/es/src/components/CdsExpandablePanel/CdsExpandablePanel.vue_vue_type_script_setup_true_lang.js.map +1 -1
  86. package/dist/es/src/components/CdsExpandablePanel/CdsExpandablePanelTitle.vue_vue_type_script_setup_true_lang.js +8 -2
  87. package/dist/es/src/components/CdsExpandablePanel/CdsExpandablePanelTitle.vue_vue_type_script_setup_true_lang.js.map +1 -1
  88. package/dist/es/src/components/CdsExpandablePanel/CdsExpandablePanels.css +0 -18
  89. package/dist/es/src/components/CdsExpandablePanel/CdsExpandablePanels.vue_vue_type_script_setup_true_lang.js +8 -2
  90. package/dist/es/src/components/CdsExpandablePanel/CdsExpandablePanels.vue_vue_type_script_setup_true_lang.js.map +1 -1
  91. package/dist/es/src/components/CdsExpandablePanel/api/CdsExpandablePanel.props.js +38 -9
  92. package/dist/es/src/components/CdsExpandablePanel/api/CdsExpandablePanel.props.js.map +1 -1
  93. package/dist/es/src/components/CdsField/CdsField.css +0 -18
  94. package/dist/es/src/components/CdsField/CdsField.vue_vue_type_script_setup_true_lang.js +13 -3
  95. package/dist/es/src/components/CdsField/CdsField.vue_vue_type_script_setup_true_lang.js.map +1 -1
  96. package/dist/es/src/components/CdsField/api/CdsField.props.js +56 -14
  97. package/dist/es/src/components/CdsField/api/CdsField.props.js.map +1 -1
  98. package/dist/es/src/components/CdsField/composables/useAutocomplete.js +1 -0
  99. package/dist/es/src/components/CdsField/composables/useAutocomplete.js.map +1 -1
  100. package/dist/es/src/components/CdsFileInput/CdsFileInput.css +0 -18
  101. package/dist/es/src/components/CdsFileInput/api/CdsFileInput.props.js +40 -10
  102. package/dist/es/src/components/CdsFileInput/api/CdsFileInput.props.js.map +1 -1
  103. package/dist/es/src/components/CdsFileInput/composables/useFileFilter.js +4 -1
  104. package/dist/es/src/components/CdsFileInput/composables/useFileFilter.js.map +1 -1
  105. package/dist/es/src/components/CdsFileUpload/CdsFileUpload.css +0 -18
  106. package/dist/es/src/components/CdsFileUpload/CdsFileUpload.vue_vue_type_script_setup_true_lang.js +4 -0
  107. package/dist/es/src/components/CdsFileUpload/CdsFileUpload.vue_vue_type_script_setup_true_lang.js.map +1 -1
  108. package/dist/es/src/components/CdsFileUpload/api/CdsFileUpload.props.js +85 -21
  109. package/dist/es/src/components/CdsFileUpload/api/CdsFileUpload.props.js.map +1 -1
  110. package/dist/es/src/components/CdsFooter/CdsFooter.css +0 -18
  111. package/dist/es/src/components/CdsForm/CdsForm.css +0 -18
  112. package/dist/es/src/components/CdsForm/api/CdsForm.props.js +8 -2
  113. package/dist/es/src/components/CdsForm/api/CdsForm.props.js.map +1 -1
  114. package/dist/es/src/components/CdsFunctionalButton/CdsFunctionalButton.css +0 -18
  115. package/dist/es/src/components/CdsFunctionalButton/api/CdsFunctionalButton.props.js +4 -1
  116. package/dist/es/src/components/CdsFunctionalButton/api/CdsFunctionalButton.props.js.map +1 -1
  117. package/dist/es/src/components/CdsGrid/api/CdsGrid.props.js +40 -10
  118. package/dist/es/src/components/CdsGrid/api/CdsGrid.props.js.map +1 -1
  119. package/dist/es/src/components/CdsGrid/components/CSSGrid.css +0 -18
  120. package/dist/es/src/components/CdsGrid/components/FlexGrid.css +0 -18
  121. package/dist/es/src/components/CdsHeader/CdsHeader.css +0 -18
  122. package/dist/es/src/components/CdsHighlight/CdsHighlight.css +0 -18
  123. package/dist/es/src/components/CdsHighlight/api/CdsHighlight.props.js +32 -8
  124. package/dist/es/src/components/CdsHighlight/api/CdsHighlight.props.js.map +1 -1
  125. package/dist/es/src/components/CdsIcon/CdsIcon.css +0 -18
  126. package/dist/es/src/components/CdsIcon/api/CdsIcon.props.js +17 -4
  127. package/dist/es/src/components/CdsIcon/api/CdsIcon.props.js.map +1 -1
  128. package/dist/es/src/components/CdsImage/CdsImage.css +0 -18
  129. package/dist/es/src/components/CdsImage/CdsImage.vue_vue_type_script_setup_true_lang.js +20 -0
  130. package/dist/es/src/components/CdsImage/CdsImage.vue_vue_type_script_setup_true_lang.js.map +1 -1
  131. package/dist/es/src/components/CdsImage/api/CdsImage.props.js +64 -16
  132. package/dist/es/src/components/CdsImage/api/CdsImage.props.js.map +1 -1
  133. package/dist/es/src/components/CdsInput/CdsInput.css +0 -18
  134. package/dist/es/src/components/CdsInput/CdsInput.vue_vue_type_script_setup_true_lang.js +44 -11
  135. package/dist/es/src/components/CdsInput/CdsInput.vue_vue_type_script_setup_true_lang.js.map +1 -1
  136. package/dist/es/src/components/CdsInput/api/CdsInput.props.js +48 -12
  137. package/dist/es/src/components/CdsInput/api/CdsInput.props.js.map +1 -1
  138. package/dist/es/src/components/CdsLabel/CdsLabel.css +0 -18
  139. package/dist/es/src/components/CdsLabel/api/CdsLabel.props.js +4 -0
  140. package/dist/es/src/components/CdsLabel/api/CdsLabel.props.js.map +1 -1
  141. package/dist/es/src/components/CdsLayout/CdsLayout.css +0 -18
  142. package/dist/es/src/components/CdsLayout/api/CdsLayout.props.js +5 -1
  143. package/dist/es/src/components/CdsLayout/api/CdsLayout.props.js.map +1 -1
  144. package/dist/es/src/components/CdsLink/CdsLink.css +0 -18
  145. package/dist/es/src/components/CdsLink/api/CdsLink.props.js +4 -1
  146. package/dist/es/src/components/CdsLink/api/CdsLink.props.js.map +1 -1
  147. package/dist/es/src/components/CdsList/CdsList.css +0 -18
  148. package/dist/es/src/components/CdsList/CdsList.vue_vue_type_script_setup_true_lang.js +25 -7
  149. package/dist/es/src/components/CdsList/CdsList.vue_vue_type_script_setup_true_lang.js.map +1 -1
  150. package/dist/es/src/components/CdsList/CdsListGroup.vue_vue_type_script_setup_true_lang.js +5 -2
  151. package/dist/es/src/components/CdsList/CdsListGroup.vue_vue_type_script_setup_true_lang.js.map +1 -1
  152. package/dist/es/src/components/CdsList/CdsListItem.css +0 -18
  153. package/dist/es/src/components/CdsList/CdsListItem.vue_vue_type_script_setup_true_lang.js +29 -8
  154. package/dist/es/src/components/CdsList/CdsListItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
  155. package/dist/es/src/components/CdsList/CdsListItemAction.vue_vue_type_script_setup_true_lang.js +8 -2
  156. package/dist/es/src/components/CdsList/CdsListItemAction.vue_vue_type_script_setup_true_lang.js.map +1 -1
  157. package/dist/es/src/components/CdsList/CdsListItemDivider.vue_vue_type_script_setup_true_lang.js.map +1 -1
  158. package/dist/es/src/components/CdsList/CdsListItemMedia.vue_vue_type_script_setup_true_lang.js +8 -2
  159. package/dist/es/src/components/CdsList/CdsListItemMedia.vue_vue_type_script_setup_true_lang.js.map +1 -1
  160. package/dist/es/src/components/CdsList/CdsListSubheader.vue_vue_type_script_setup_true_lang.js +1 -1
  161. package/dist/es/src/components/CdsList/CdsListSubheader.vue_vue_type_script_setup_true_lang.js.map +1 -1
  162. package/dist/es/src/components/CdsList/api/CdsList.constants.js +4 -4
  163. package/dist/es/src/components/CdsList/api/CdsList.props.js +147 -39
  164. package/dist/es/src/components/CdsList/api/CdsList.props.js.map +1 -1
  165. package/dist/es/src/components/CdsList/components/ListChildren.vue_vue_type_script_setup_true_lang.js +8 -2
  166. package/dist/es/src/components/CdsList/components/ListChildren.vue_vue_type_script_setup_true_lang.js.map +1 -1
  167. package/dist/es/src/components/CdsList/components/ListGroupActivator.vue_vue_type_script_setup_true_lang.js.map +1 -1
  168. package/dist/es/src/components/CdsList/index.js +5 -2
  169. package/dist/es/src/components/CdsList/index.js.map +1 -1
  170. package/dist/es/src/components/CdsLoader/CdsLoader.css +0 -18
  171. package/dist/es/src/components/CdsLoader/api/CdsLoader.props.js +12 -3
  172. package/dist/es/src/components/CdsLoader/api/CdsLoader.props.js.map +1 -1
  173. package/dist/es/src/components/CdsMain/CdsMain.css +0 -18
  174. package/dist/es/src/components/CdsMenu/CdsMenu.css +0 -18
  175. package/dist/es/src/components/CdsMenu/api/CdsMenu.props.js +8 -2
  176. package/dist/es/src/components/CdsMenu/api/CdsMenu.props.js.map +1 -1
  177. package/dist/es/src/components/CdsMessages/CdsMessages.css +0 -18
  178. package/dist/es/src/components/CdsMessages/api/CdsMessages.props.js +12 -3
  179. package/dist/es/src/components/CdsMessages/api/CdsMessages.props.js.map +1 -1
  180. package/dist/es/src/components/CdsModal/CdsModal.css +0 -18
  181. package/dist/es/src/components/CdsModal/api/CdsModal.props.js +8 -2
  182. package/dist/es/src/components/CdsModal/api/CdsModal.props.js.map +1 -1
  183. package/dist/es/src/components/CdsNotification/CdsNotification.css +0 -18
  184. package/dist/es/src/components/CdsNotification/api/CdsNotification.props.js +28 -7
  185. package/dist/es/src/components/CdsNotification/api/CdsNotification.props.js.map +1 -1
  186. package/dist/es/src/components/CdsNotificationAlert/CdsNotificationAlert.css +0 -18
  187. package/dist/es/src/components/CdsNotificationAlert/api/CdsNotificationAlert.props.js +28 -7
  188. package/dist/es/src/components/CdsNotificationAlert/api/CdsNotificationAlert.props.js.map +1 -1
  189. package/dist/es/src/components/CdsOtpInput/CdsOtpInput.css +0 -18
  190. package/dist/es/src/components/CdsOtpInput/CdsOtpInput.vue_vue_type_script_setup_true_lang.js +20 -5
  191. package/dist/es/src/components/CdsOtpInput/CdsOtpInput.vue_vue_type_script_setup_true_lang.js.map +1 -1
  192. package/dist/es/src/components/CdsOtpInput/api/CdsOtpInput.props.js +52 -13
  193. package/dist/es/src/components/CdsOtpInput/api/CdsOtpInput.props.js.map +1 -1
  194. package/dist/es/src/components/CdsOverlay/CdsOverlay.css +0 -18
  195. package/dist/es/src/components/CdsOverlay/CdsOverlay.vue_vue_type_script_setup_true_lang.js +44 -11
  196. package/dist/es/src/components/CdsOverlay/CdsOverlay.vue_vue_type_script_setup_true_lang.js.map +1 -1
  197. package/dist/es/src/components/CdsOverlay/api/CdsOverlay.props.js +36 -8
  198. package/dist/es/src/components/CdsOverlay/api/CdsOverlay.props.js.map +1 -1
  199. package/dist/es/src/components/CdsOverlay/composables/useActivator.js +25 -6
  200. package/dist/es/src/components/CdsOverlay/composables/useActivator.js.map +1 -1
  201. package/dist/es/src/components/CdsOverlay/composables/useLocationStrategies.js +18 -4
  202. package/dist/es/src/components/CdsOverlay/composables/useLocationStrategies.js.map +1 -1
  203. package/dist/es/src/components/CdsOverlay/composables/useScrollStrategies.js +4 -1
  204. package/dist/es/src/components/CdsOverlay/composables/useScrollStrategies.js.map +1 -1
  205. package/dist/es/src/components/CdsPage/CdsPage.css +0 -18
  206. package/dist/es/src/components/CdsPage/api/CdsPage.props.js +5 -1
  207. package/dist/es/src/components/CdsPage/api/CdsPage.props.js.map +1 -1
  208. package/dist/es/src/components/CdsPagination/CdsPagination.css +0 -18
  209. package/dist/es/src/components/CdsPagination/CdsPagination.vue_vue_type_script_setup_true_lang.js +16 -0
  210. package/dist/es/src/components/CdsPagination/CdsPagination.vue_vue_type_script_setup_true_lang.js.map +1 -1
  211. package/dist/es/src/components/CdsPagination/api/CdsPagination.props.js +84 -21
  212. package/dist/es/src/components/CdsPagination/api/CdsPagination.props.js.map +1 -1
  213. package/dist/es/src/components/CdsProgressBar/CdsProgressBar.css +0 -18
  214. package/dist/es/src/components/CdsProgressBar/api/CdsProgressBar.props.js +64 -16
  215. package/dist/es/src/components/CdsProgressBar/api/CdsProgressBar.props.js.map +1 -1
  216. package/dist/es/src/components/CdsProgressBar/composables/useChunk.js +4 -0
  217. package/dist/es/src/components/CdsProgressBar/composables/useChunk.js.map +1 -1
  218. package/dist/es/src/components/CdsProgressCircle/CdsProgressCircle.css +0 -18
  219. package/dist/es/src/components/CdsProgressCircle/api/CdsProgressCircle.props.js +28 -7
  220. package/dist/es/src/components/CdsProgressCircle/api/CdsProgressCircle.props.js.map +1 -1
  221. package/dist/es/src/components/CdsRadio/CdsRadio.css +0 -18
  222. package/dist/es/src/components/CdsRadioGroup/CdsRadioGroup.css +0 -18
  223. package/dist/es/src/components/CdsRadioGroup/api/CdsRadioGroup.props.js +16 -4
  224. package/dist/es/src/components/CdsRadioGroup/api/CdsRadioGroup.props.js.map +1 -1
  225. package/dist/es/src/components/CdsResponsive/CdsResponsive.css +0 -18
  226. package/dist/es/src/components/CdsResponsive/api/CdsResponsive.props.js +12 -3
  227. package/dist/es/src/components/CdsResponsive/api/CdsResponsive.props.js.map +1 -1
  228. package/dist/es/src/components/CdsSelect/CdsSelect.css +0 -18
  229. package/dist/es/src/components/CdsSelect/CdsSelect.vue_vue_type_script_setup_true_lang.js +16 -4
  230. package/dist/es/src/components/CdsSelect/CdsSelect.vue_vue_type_script_setup_true_lang.js.map +1 -1
  231. package/dist/es/src/components/CdsSelect/api/CdsSelect.props.js +4 -1
  232. package/dist/es/src/components/CdsSelect/api/CdsSelect.props.js.map +1 -1
  233. package/dist/es/src/components/CdsSelect/composables/useMenuActivator.js +8 -2
  234. package/dist/es/src/components/CdsSelect/composables/useMenuActivator.js.map +1 -1
  235. package/dist/es/src/components/CdsSelect/composables/useSelect.js +69 -17
  236. package/dist/es/src/components/CdsSelect/composables/useSelect.js.map +1 -1
  237. package/dist/es/src/components/CdsSelectionControl/CdsSelectionControl.css +0 -18
  238. package/dist/es/src/components/CdsSelectionControl/CdsSelectionControl.vue_vue_type_script_setup_true_lang.js +8 -0
  239. package/dist/es/src/components/CdsSelectionControl/CdsSelectionControl.vue_vue_type_script_setup_true_lang.js.map +1 -1
  240. package/dist/es/src/components/CdsSelectionControl/api/CdsSelectionControl.props.js +12 -3
  241. package/dist/es/src/components/CdsSelectionControl/api/CdsSelectionControl.props.js.map +1 -1
  242. package/dist/es/src/components/CdsSelectionControlGroup/CdsSelectionControlGroup.css +0 -18
  243. package/dist/es/src/components/CdsSelectionControlGroup/api/CdsSelectionControlGroup.props.js +44 -11
  244. package/dist/es/src/components/CdsSelectionControlGroup/api/CdsSelectionControlGroup.props.js.map +1 -1
  245. package/dist/es/src/components/CdsSkeletonLoader/CdsSkeletonLoader.css +0 -18
  246. package/dist/es/src/components/CdsSkeletonLoader/api/CdsSkeletonLoader.props.js +16 -4
  247. package/dist/es/src/components/CdsSkeletonLoader/api/CdsSkeletonLoader.props.js.map +1 -1
  248. package/dist/es/src/components/CdsSkeletonLoader/api/CdsSkeletonLoader.types.js.map +1 -1
  249. package/dist/es/src/components/CdsSlideGroup/CdsSlideGroup.css +0 -18
  250. package/dist/es/src/components/CdsSlideGroup/CdsSlideGroup.vue_vue_type_script_setup_true_lang.js +24 -6
  251. package/dist/es/src/components/CdsSlideGroup/CdsSlideGroup.vue_vue_type_script_setup_true_lang.js.map +1 -1
  252. package/dist/es/src/components/CdsSlideGroup/api/CdsSlideGroup.props.js +25 -6
  253. package/dist/es/src/components/CdsSlideGroup/api/CdsSlideGroup.props.js.map +1 -1
  254. package/dist/es/src/components/CdsSlideView/CdsSlideView.css +0 -18
  255. package/dist/es/src/components/CdsSlideView/CdsSlideView.vue_vue_type_script_setup_true_lang.js +4 -0
  256. package/dist/es/src/components/CdsSlideView/CdsSlideView.vue_vue_type_script_setup_true_lang.js.map +1 -1
  257. package/dist/es/src/components/CdsSlideView/CdsSlideViewItem.vue_vue_type_script_setup_true_lang.js +5 -1
  258. package/dist/es/src/components/CdsSlideView/CdsSlideViewItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
  259. package/dist/es/src/components/CdsSlideView/api/CdsSlideView.props.js +44 -0
  260. package/dist/es/src/components/CdsSlideView/api/CdsSlideView.props.js.map +1 -1
  261. package/dist/es/src/components/CdsStages/CdsStages.css +0 -18
  262. package/dist/es/src/components/CdsStages/CdsStages.vue_vue_type_script_setup_true_lang.js +8 -0
  263. package/dist/es/src/components/CdsStages/CdsStages.vue_vue_type_script_setup_true_lang.js.map +1 -1
  264. package/dist/es/src/components/CdsStages/api/CdsStages.props.js +8 -2
  265. package/dist/es/src/components/CdsStages/api/CdsStages.props.js.map +1 -1
  266. package/dist/es/src/components/CdsStatus/CdsStatus.css +0 -18
  267. package/dist/es/src/components/CdsStatus/api/CdsStatus.props.js +4 -1
  268. package/dist/es/src/components/CdsStatus/api/CdsStatus.props.js.map +1 -1
  269. package/dist/es/src/components/CdsSteps/CdsSteps.css +0 -18
  270. package/dist/es/src/components/CdsSteps/CdsSteps.vue_vue_type_script_setup_true_lang.js +8 -0
  271. package/dist/es/src/components/CdsSteps/CdsSteps.vue_vue_type_script_setup_true_lang.js.map +1 -1
  272. package/dist/es/src/components/CdsSteps/api/CdsSteps.props.js +44 -11
  273. package/dist/es/src/components/CdsSteps/api/CdsSteps.props.js.map +1 -1
  274. package/dist/es/src/components/CdsSurface/CdsSurface.css +0 -18
  275. package/dist/es/src/components/CdsSurface/api/CdsSurface.props.js +4 -1
  276. package/dist/es/src/components/CdsSurface/api/CdsSurface.props.js.map +1 -1
  277. package/dist/es/src/components/CdsTable/CdsTable.css +0 -18
  278. package/dist/es/src/components/CdsTable/CdsTable.vue_vue_type_script_setup_true_lang.js +4 -0
  279. package/dist/es/src/components/CdsTable/CdsTable.vue_vue_type_script_setup_true_lang.js.map +1 -1
  280. package/dist/es/src/components/CdsTable/composable/table.js +47 -0
  281. package/dist/es/src/components/CdsTable/composable/table.js.map +1 -1
  282. package/dist/es/src/components/CdsTabs/CdsTabs.css +0 -18
  283. package/dist/es/src/components/CdsTabs/api/CdsTabs.props.js +56 -0
  284. package/dist/es/src/components/CdsTabs/api/CdsTabs.props.js.map +1 -1
  285. package/dist/es/src/components/CdsTag/CdsTag.css +0 -18
  286. package/dist/es/src/components/CdsTag/api/CdsTag.props.js +72 -18
  287. package/dist/es/src/components/CdsTag/api/CdsTag.props.js.map +1 -1
  288. package/dist/es/src/components/CdsTagGroup/CdsTagGroup.css +0 -18
  289. package/dist/es/src/components/CdsTagGroup/CdsTagGroup.vue_vue_type_script_setup_true_lang.js +20 -5
  290. package/dist/es/src/components/CdsTagGroup/CdsTagGroup.vue_vue_type_script_setup_true_lang.js.map +1 -1
  291. package/dist/es/src/components/CdsTagGroup/api/CdsTagGroup.props.js +11 -3
  292. package/dist/es/src/components/CdsTagGroup/api/CdsTagGroup.props.js.map +1 -1
  293. package/dist/es/src/components/CdsTextArea/CdsTextArea.css +0 -18
  294. package/dist/es/src/components/CdsTextArea/api/CdsTextArea.props.js +52 -13
  295. package/dist/es/src/components/CdsTextArea/api/CdsTextArea.props.js.map +1 -1
  296. package/dist/es/src/components/CdsTextInput/CdsTextInput.css +0 -18
  297. package/dist/es/src/components/CdsTextInput/api/CdsTextInput.props.js +40 -10
  298. package/dist/es/src/components/CdsTextInput/api/CdsTextInput.props.js.map +1 -1
  299. package/dist/es/src/components/CdsTimePicker/CdsTimePicker.css +0 -18
  300. package/dist/es/src/components/CdsTimePicker/CdsTimePicker.vue_vue_type_script_setup_true_lang.js +24 -0
  301. package/dist/es/src/components/CdsTimePicker/CdsTimePicker.vue_vue_type_script_setup_true_lang.js.map +1 -1
  302. package/dist/es/src/components/CdsTimePicker/api/CdsTimePicker.props.js +32 -8
  303. package/dist/es/src/components/CdsTimePicker/api/CdsTimePicker.props.js.map +1 -1
  304. package/dist/es/src/components/CdsToast/CdsToast.css +0 -18
  305. package/dist/es/src/components/CdsToast/api/CdsToast.props.js +48 -12
  306. package/dist/es/src/components/CdsToast/api/CdsToast.props.js.map +1 -1
  307. package/dist/es/src/components/CdsToastQueue/CdsToastQueue.vue_vue_type_script_setup_true_lang.js +4 -1
  308. package/dist/es/src/components/CdsToastQueue/CdsToastQueue.vue_vue_type_script_setup_true_lang.js.map +1 -1
  309. package/dist/es/src/components/CdsToastQueue/api/CdsToastQueue.props.js +28 -7
  310. package/dist/es/src/components/CdsToastQueue/api/CdsToastQueue.props.js.map +1 -1
  311. package/dist/es/src/components/CdsToggle/CdsToggle.css +0 -18
  312. package/dist/es/src/components/CdsToggle/api/CdsToggle.props.js +12 -3
  313. package/dist/es/src/components/CdsToggle/api/CdsToggle.props.js.map +1 -1
  314. package/dist/es/src/components/CdsToolbar/CdsToolbar.css +0 -18
  315. package/dist/es/src/components/CdsToolbar/api/CdsToolbar.props.js +20 -5
  316. package/dist/es/src/components/CdsToolbar/api/CdsToolbar.props.js.map +1 -1
  317. package/dist/es/src/components/CdsTooltip/CdsTooltip.css +0 -18
  318. package/dist/es/src/components/CdsTooltip/api/CdsTooltip.props.js +20 -5
  319. package/dist/es/src/components/CdsTooltip/api/CdsTooltip.props.js.map +1 -1
  320. package/dist/es/src/components/CdsTree/CdsTree.css +0 -18
  321. package/dist/es/src/components/CdsTree/CdsTree.vue_vue_type_script_setup_true_lang.js +16 -0
  322. package/dist/es/src/components/CdsTree/CdsTree.vue_vue_type_script_setup_true_lang.js.map +1 -1
  323. package/dist/es/src/components/CdsTree/composable/tree.js +28 -0
  324. package/dist/es/src/components/CdsTree/composable/tree.js.map +1 -1
  325. package/dist/es/src/components/CdsTree/composable/treeNode.js +68 -2
  326. package/dist/es/src/components/CdsTree/composable/treeNode.js.map +1 -1
  327. package/dist/es/src/components/CdsUploader/CdsUploader.css +0 -18
  328. package/dist/es/src/components/CdsUploader/CdsUploader.vue_vue_type_script_setup_true_lang.js +8 -0
  329. package/dist/es/src/components/CdsUploader/CdsUploader.vue_vue_type_script_setup_true_lang.js.map +1 -1
  330. package/dist/es/src/components/CdsUploader/composables/useUpload.js +104 -26
  331. package/dist/es/src/components/CdsUploader/composables/useUpload.js.map +1 -1
  332. package/dist/es/src/components/CdsVirtualScroll/CdsVirtualScroll.css +0 -18
  333. package/dist/es/src/components/CdsVirtualScroll/CdsVirtualScroll.vue_vue_type_script_setup_true_lang.js +8 -0
  334. package/dist/es/src/components/CdsVirtualScroll/CdsVirtualScroll.vue_vue_type_script_setup_true_lang.js.map +1 -1
  335. package/dist/es/src/components/CdsVirtualScroll/api/CdsVirtualScroll.props.js +12 -3
  336. package/dist/es/src/components/CdsVirtualScroll/api/CdsVirtualScroll.props.js.map +1 -1
  337. package/dist/es/src/components/index.js +2 -1
  338. package/dist/es/src/components/index.js.map +1 -1
  339. package/dist/es/src/composables/useAppearance/useAppearance.js +4 -1
  340. package/dist/es/src/composables/useAppearance/useAppearance.js.map +1 -1
  341. package/dist/es/src/composables/useColor/useColor.js +20 -5
  342. package/dist/es/src/composables/useColor/useColor.js.map +1 -1
  343. package/dist/es/src/composables/useDatetime/useDatetime.js +3 -0
  344. package/dist/es/src/composables/useDatetime/useDatetime.js.map +1 -1
  345. package/dist/es/src/composables/useDelay/useDelay.js +8 -2
  346. package/dist/es/src/composables/useDelay/useDelay.js.map +1 -1
  347. package/dist/es/src/composables/useDimensions/useDimensions.js +24 -6
  348. package/dist/es/src/composables/useDimensions/useDimensions.js.map +1 -1
  349. package/dist/es/src/composables/useDirection/useDirection.js +4 -1
  350. package/dist/es/src/composables/useDirection/useDirection.js.map +1 -1
  351. package/dist/es/src/composables/useDisabled/useDisabled.js +4 -1
  352. package/dist/es/src/composables/useDisabled/useDisabled.js.map +1 -1
  353. package/dist/es/src/composables/useDisplay/useDisplay.js +2 -0
  354. package/dist/es/src/composables/useDisplay/useDisplay.js.map +1 -1
  355. package/dist/es/src/composables/useFilter/useFilter.js +20 -0
  356. package/dist/es/src/composables/useFilter/useFilter.js.map +1 -1
  357. package/dist/es/src/composables/useFocus/useFocus.js +12 -3
  358. package/dist/es/src/composables/useFocus/useFocus.js.map +1 -1
  359. package/dist/es/src/composables/useFocus/useFocusTrap.js +8 -2
  360. package/dist/es/src/composables/useFocus/useFocusTrap.js.map +1 -1
  361. package/dist/es/src/composables/useForm/useForm.js +45 -0
  362. package/dist/es/src/composables/useForm/useForm.js.map +1 -1
  363. package/dist/es/src/composables/useGroup/useGroup.js +24 -6
  364. package/dist/es/src/composables/useGroup/useGroup.js.map +1 -1
  365. package/dist/es/src/composables/useGroup/useGroupItem.js +8 -2
  366. package/dist/es/src/composables/useGroup/useGroupItem.js.map +1 -1
  367. package/dist/es/src/composables/useItems/useItems.js +32 -8
  368. package/dist/es/src/composables/useItems/useItems.js.map +1 -1
  369. package/dist/es/src/composables/useLayout/context.js.map +1 -1
  370. package/dist/es/src/composables/useLayout/useLayout.js +24 -6
  371. package/dist/es/src/composables/useLayout/useLayout.js.map +1 -1
  372. package/dist/es/src/composables/useLazy/useLazy.js +1 -0
  373. package/dist/es/src/composables/useLazy/useLazy.js.map +1 -1
  374. package/dist/es/src/composables/useLoader/useLoader.js +4 -1
  375. package/dist/es/src/composables/useLoader/useLoader.js.map +1 -1
  376. package/dist/es/src/composables/useLocation/useLocation.js +4 -1
  377. package/dist/es/src/composables/useLocation/useLocation.js.map +1 -1
  378. package/dist/es/src/composables/useNested/useNested.js +44 -11
  379. package/dist/es/src/composables/useNested/useNested.js.map +1 -1
  380. package/dist/es/src/composables/usePosition/usePosition.js +4 -0
  381. package/dist/es/src/composables/usePosition/usePosition.js.map +1 -1
  382. package/dist/es/src/composables/useReadonly/useReadonly.js +4 -1
  383. package/dist/es/src/composables/useReadonly/useReadonly.js.map +1 -1
  384. package/dist/es/src/composables/useReveal/useReveal.js +4 -1
  385. package/dist/es/src/composables/useReveal/useReveal.js.map +1 -1
  386. package/dist/es/src/composables/useRouter/useRouter.js +16 -4
  387. package/dist/es/src/composables/useRouter/useRouter.js.map +1 -1
  388. package/dist/es/src/composables/useSize/useSize.js +4 -1
  389. package/dist/es/src/composables/useSize/useSize.js.map +1 -1
  390. package/dist/es/src/composables/useStatus/useStatus.js +4 -1
  391. package/dist/es/src/composables/useStatus/useStatus.js.map +1 -1
  392. package/dist/es/src/composables/useText/useText.js +8 -2
  393. package/dist/es/src/composables/useText/useText.js.map +1 -1
  394. package/dist/es/src/composables/useTheme/useTheme.js +4 -1
  395. package/dist/es/src/composables/useTheme/useTheme.js.map +1 -1
  396. package/dist/es/src/composables/useTransition/useTransition.js +4 -1
  397. package/dist/es/src/composables/useTransition/useTransition.js.map +1 -1
  398. package/dist/es/src/composables/useValidation/useValidation.js +26 -6
  399. package/dist/es/src/composables/useValidation/useValidation.js.map +1 -1
  400. package/dist/es/src/composables/useVirtual/useVirtual.js +12 -3
  401. package/dist/es/src/composables/useVirtual/useVirtual.js.map +1 -1
  402. package/dist/es/src/core/defineComponent.js +4 -1
  403. package/dist/es/src/core/defineComponent.js.map +1 -1
  404. package/dist/es/src/themes/lumaDark.js +8 -4
  405. package/dist/es/src/themes/lumaDark.js.map +1 -1
  406. package/dist/es/src/utils/date/date.js +4 -4
  407. package/dist/es/src/utils/date/date.js.map +1 -1
  408. package/dist/esm-node/entry.css +0 -18
  409. package/dist/esm-node/entry.mjs +3 -2
  410. package/dist/esm-node/src/cds.mjs +1 -1
  411. package/dist/esm-node/src/components/CdsApp/CdsApp.css +0 -18
  412. package/dist/esm-node/src/components/CdsApp/api/CdsApp.props.mjs +1 -0
  413. package/dist/esm-node/src/components/CdsAutocomplete/CdsAutocomplete.css +0 -18
  414. package/dist/esm-node/src/components/CdsAutocomplete/CdsAutocomplete.vue_vue_type_script_setup_true_lang.mjs +20 -5
  415. package/dist/esm-node/src/components/CdsAutocomplete/api/CdsAutocomplete.props.mjs +9 -2
  416. package/dist/esm-node/src/components/CdsAvatar/CdsAvatar.css +0 -18
  417. package/dist/esm-node/src/components/CdsAvatar/api/CdsAvatar.props.mjs +20 -5
  418. package/dist/esm-node/src/components/CdsBadge/CdsBadge.css +0 -18
  419. package/dist/esm-node/src/components/CdsBadge/api/CdsBadge.props.mjs +37 -9
  420. package/dist/esm-node/src/components/CdsBreadcrumbs/CdsBreadcrumbs.css +0 -18
  421. package/dist/esm-node/src/components/CdsBreadcrumbs/api/CdsBreadcrumbs.props.mjs +32 -8
  422. package/dist/esm-node/src/components/CdsButton/CdsButton.css +0 -18
  423. package/dist/esm-node/src/components/CdsButton/CdsButton.vue_vue_type_script_setup_true_lang.mjs +4 -1
  424. package/dist/esm-node/src/components/CdsButton/api/CdsButton.props.mjs +28 -7
  425. package/dist/esm-node/src/components/CdsButtonGroup/CdsButtonGroup.css +0 -18
  426. package/dist/esm-node/src/components/CdsButtonGroup/api/CdsButtonGroup.props.mjs +4 -1
  427. package/dist/esm-node/src/components/CdsButtonToggle/CdsButtonToggle.css +0 -18
  428. package/dist/esm-node/src/components/CdsButtonToggle/CdsButtonToggle.vue_vue_type_script_setup_true_lang.mjs +20 -5
  429. package/dist/esm-node/src/components/CdsCard/CdsCard.css +0 -18
  430. package/dist/esm-node/src/components/CdsCard/CdsCard.vue_vue_type_script_setup_true_lang.mjs +1 -1
  431. package/dist/esm-node/src/components/CdsCard/CdsCardActions.vue_vue_type_script_setup_true_lang.mjs +1 -1
  432. package/dist/esm-node/src/components/CdsCard/CdsCardDivider.vue_vue_type_script_setup_true_lang.mjs +1 -1
  433. package/dist/esm-node/src/components/CdsCard/CdsCardGroup.vue_vue_type_script_setup_true_lang.mjs +21 -6
  434. package/dist/esm-node/src/components/CdsCard/CdsCardItem.vue_vue_type_script_setup_true_lang.mjs +1 -1
  435. package/dist/esm-node/src/components/CdsCard/CdsCardSubtitle.vue_vue_type_script_setup_true_lang.mjs +1 -1
  436. package/dist/esm-node/src/components/CdsCard/CdsCardText.vue_vue_type_script_setup_true_lang.mjs +1 -1
  437. package/dist/esm-node/src/components/CdsCard/CdsCardTitle.vue_vue_type_script_setup_true_lang.mjs +1 -1
  438. package/dist/esm-node/src/components/CdsCard/api/CdsCard.constants.mjs +9 -9
  439. package/dist/esm-node/src/components/CdsCard/api/CdsCard.props.mjs +85 -21
  440. package/dist/esm-node/src/components/CdsCard/index.mjs +1 -1
  441. package/dist/esm-node/src/components/CdsCarousel/CdsCarousel.css +0 -18
  442. package/dist/esm-node/src/components/CdsCarousel/api/CdsCarousel.props.mjs +36 -9
  443. package/dist/esm-node/src/components/CdsCheckbox/CdsCheckbox.css +0 -18
  444. package/dist/esm-node/src/components/CdsCheckboxButton/CdsCheckboxButton.css +0 -18
  445. package/dist/esm-node/src/components/CdsCheckboxButton/api/CdsCheckboxButton.props.mjs +8 -2
  446. package/dist/esm-node/src/components/CdsCombobox/CdsCombobox.css +0 -18
  447. package/dist/esm-node/src/components/CdsCombobox/CdsCombobox.vue_vue_type_script_setup_true_lang.mjs +24 -6
  448. package/dist/esm-node/src/components/CdsCombobox/api/CdsCombobox.props.mjs +13 -3
  449. package/dist/esm-node/src/components/CdsCounter/CdsCounter.css +0 -18
  450. package/dist/esm-node/src/components/CdsCounter/api/CdsCounter.props.mjs +12 -3
  451. package/dist/esm-node/src/components/CdsDateInput/CdsDateInput.css +0 -18
  452. package/dist/esm-node/src/components/CdsDateInput/CdsDateInput.vue_vue_type_script_setup_true_lang.mjs +8 -0
  453. package/dist/esm-node/src/components/CdsDateInput/api/CdsDateInput.props.mjs +31 -7
  454. package/dist/esm-node/src/components/CdsDatePicker/CdsDatePicker.css +0 -18
  455. package/dist/esm-node/src/components/CdsDatePicker/CdsDatePicker.vue_vue_type_script_setup_true_lang.mjs +20 -0
  456. package/dist/esm-node/src/components/CdsDatePicker/api/CdsDatePicker.props.mjs +64 -15
  457. package/dist/esm-node/src/components/CdsDefaultsProvider/api/CdsDefaultsProvider.props.mjs +5 -0
  458. package/dist/esm-node/src/components/CdsDescription/CdsDescription.css +0 -18
  459. package/dist/esm-node/src/components/CdsDivider/CdsDivider.css +0 -18
  460. package/dist/esm-node/src/components/CdsDivider/api/CdsDivider.props.mjs +33 -8
  461. package/dist/esm-node/src/components/CdsDrawer/CdsDrawer.css +0 -18
  462. package/dist/esm-node/src/components/CdsDrawer/CdsDrawer.vue_vue_type_script_setup_true_lang.mjs +4 -0
  463. package/dist/esm-node/src/components/CdsDrawer/api/CdsDrawer.props.mjs +32 -8
  464. package/dist/esm-node/src/components/CdsEmptyState/CdsEmptyState.css +0 -18
  465. package/dist/esm-node/src/components/CdsEmptyState/api/CdsEmptyState.props.mjs +33 -8
  466. package/dist/esm-node/src/components/CdsExpandablePanel/CdsExpandablePanel.vue_vue_type_script_setup_true_lang.mjs +16 -4
  467. package/dist/esm-node/src/components/CdsExpandablePanel/CdsExpandablePanelTitle.vue_vue_type_script_setup_true_lang.mjs +8 -2
  468. package/dist/esm-node/src/components/CdsExpandablePanel/CdsExpandablePanels.css +0 -18
  469. package/dist/esm-node/src/components/CdsExpandablePanel/CdsExpandablePanels.vue_vue_type_script_setup_true_lang.mjs +8 -2
  470. package/dist/esm-node/src/components/CdsExpandablePanel/api/CdsExpandablePanel.props.mjs +38 -9
  471. package/dist/esm-node/src/components/CdsField/CdsField.css +0 -18
  472. package/dist/esm-node/src/components/CdsField/CdsField.vue_vue_type_script_setup_true_lang.mjs +13 -3
  473. package/dist/esm-node/src/components/CdsField/api/CdsField.props.mjs +56 -14
  474. package/dist/esm-node/src/components/CdsField/composables/useAutocomplete.mjs +1 -0
  475. package/dist/esm-node/src/components/CdsFileInput/CdsFileInput.css +0 -18
  476. package/dist/esm-node/src/components/CdsFileInput/api/CdsFileInput.props.mjs +40 -10
  477. package/dist/esm-node/src/components/CdsFileInput/composables/useFileFilter.mjs +4 -1
  478. package/dist/esm-node/src/components/CdsFileUpload/CdsFileUpload.css +0 -18
  479. package/dist/esm-node/src/components/CdsFileUpload/CdsFileUpload.vue_vue_type_script_setup_true_lang.mjs +4 -0
  480. package/dist/esm-node/src/components/CdsFileUpload/api/CdsFileUpload.props.mjs +85 -21
  481. package/dist/esm-node/src/components/CdsFooter/CdsFooter.css +0 -18
  482. package/dist/esm-node/src/components/CdsForm/CdsForm.css +0 -18
  483. package/dist/esm-node/src/components/CdsForm/api/CdsForm.props.mjs +8 -2
  484. package/dist/esm-node/src/components/CdsFunctionalButton/CdsFunctionalButton.css +0 -18
  485. package/dist/esm-node/src/components/CdsFunctionalButton/api/CdsFunctionalButton.props.mjs +4 -1
  486. package/dist/esm-node/src/components/CdsGrid/api/CdsGrid.props.mjs +40 -10
  487. package/dist/esm-node/src/components/CdsGrid/components/CSSGrid.css +0 -18
  488. package/dist/esm-node/src/components/CdsGrid/components/FlexGrid.css +0 -18
  489. package/dist/esm-node/src/components/CdsHeader/CdsHeader.css +0 -18
  490. package/dist/esm-node/src/components/CdsHighlight/CdsHighlight.css +0 -18
  491. package/dist/esm-node/src/components/CdsHighlight/api/CdsHighlight.props.mjs +32 -8
  492. package/dist/esm-node/src/components/CdsIcon/CdsIcon.css +0 -18
  493. package/dist/esm-node/src/components/CdsIcon/api/CdsIcon.props.mjs +17 -4
  494. package/dist/esm-node/src/components/CdsImage/CdsImage.css +0 -18
  495. package/dist/esm-node/src/components/CdsImage/CdsImage.vue_vue_type_script_setup_true_lang.mjs +20 -0
  496. package/dist/esm-node/src/components/CdsImage/api/CdsImage.props.mjs +64 -16
  497. package/dist/esm-node/src/components/CdsInput/CdsInput.css +0 -18
  498. package/dist/esm-node/src/components/CdsInput/CdsInput.vue_vue_type_script_setup_true_lang.mjs +44 -11
  499. package/dist/esm-node/src/components/CdsInput/api/CdsInput.props.mjs +48 -12
  500. package/dist/esm-node/src/components/CdsLabel/CdsLabel.css +0 -18
  501. package/dist/esm-node/src/components/CdsLabel/api/CdsLabel.props.mjs +4 -0
  502. package/dist/esm-node/src/components/CdsLayout/CdsLayout.css +0 -18
  503. package/dist/esm-node/src/components/CdsLayout/api/CdsLayout.props.mjs +5 -1
  504. package/dist/esm-node/src/components/CdsLink/CdsLink.css +0 -18
  505. package/dist/esm-node/src/components/CdsLink/api/CdsLink.props.mjs +4 -1
  506. package/dist/esm-node/src/components/CdsList/CdsList.css +0 -18
  507. package/dist/esm-node/src/components/CdsList/CdsList.vue_vue_type_script_setup_true_lang.mjs +24 -6
  508. package/dist/esm-node/src/components/CdsList/CdsListGroup.vue_vue_type_script_setup_true_lang.mjs +4 -1
  509. package/dist/esm-node/src/components/CdsList/CdsListItem.css +0 -18
  510. package/dist/esm-node/src/components/CdsList/CdsListItem.vue_vue_type_script_setup_true_lang.mjs +28 -7
  511. package/dist/esm-node/src/components/CdsList/CdsListItemAction.vue_vue_type_script_setup_true_lang.mjs +8 -2
  512. package/dist/esm-node/src/components/CdsList/CdsListItemMedia.vue_vue_type_script_setup_true_lang.mjs +8 -2
  513. package/dist/esm-node/src/components/CdsList/api/CdsList.props.mjs +144 -36
  514. package/dist/esm-node/src/components/CdsList/components/ListChildren.vue_vue_type_script_setup_true_lang.mjs +8 -2
  515. package/dist/esm-node/src/components/CdsList/index.mjs +5 -2
  516. package/dist/esm-node/src/components/CdsLoader/CdsLoader.css +0 -18
  517. package/dist/esm-node/src/components/CdsLoader/api/CdsLoader.props.mjs +12 -3
  518. package/dist/esm-node/src/components/CdsMain/CdsMain.css +0 -18
  519. package/dist/esm-node/src/components/CdsMenu/CdsMenu.css +0 -18
  520. package/dist/esm-node/src/components/CdsMenu/api/CdsMenu.props.mjs +8 -2
  521. package/dist/esm-node/src/components/CdsMessages/CdsMessages.css +0 -18
  522. package/dist/esm-node/src/components/CdsMessages/api/CdsMessages.props.mjs +12 -3
  523. package/dist/esm-node/src/components/CdsModal/CdsModal.css +0 -18
  524. package/dist/esm-node/src/components/CdsModal/api/CdsModal.props.mjs +8 -2
  525. package/dist/esm-node/src/components/CdsNotification/CdsNotification.css +0 -18
  526. package/dist/esm-node/src/components/CdsNotification/api/CdsNotification.props.mjs +28 -7
  527. package/dist/esm-node/src/components/CdsNotificationAlert/CdsNotificationAlert.css +0 -18
  528. package/dist/esm-node/src/components/CdsNotificationAlert/api/CdsNotificationAlert.props.mjs +28 -7
  529. package/dist/esm-node/src/components/CdsOtpInput/CdsOtpInput.css +0 -18
  530. package/dist/esm-node/src/components/CdsOtpInput/CdsOtpInput.vue_vue_type_script_setup_true_lang.mjs +20 -5
  531. package/dist/esm-node/src/components/CdsOtpInput/api/CdsOtpInput.props.mjs +52 -13
  532. package/dist/esm-node/src/components/CdsOverlay/CdsOverlay.css +0 -18
  533. package/dist/esm-node/src/components/CdsOverlay/CdsOverlay.vue_vue_type_script_setup_true_lang.mjs +44 -11
  534. package/dist/esm-node/src/components/CdsOverlay/api/CdsOverlay.props.mjs +36 -8
  535. package/dist/esm-node/src/components/CdsOverlay/composables/useActivator.mjs +25 -6
  536. package/dist/esm-node/src/components/CdsOverlay/composables/useLocationStrategies.mjs +18 -4
  537. package/dist/esm-node/src/components/CdsOverlay/composables/useScrollStrategies.mjs +4 -1
  538. package/dist/esm-node/src/components/CdsPage/CdsPage.css +0 -18
  539. package/dist/esm-node/src/components/CdsPage/api/CdsPage.props.mjs +5 -1
  540. package/dist/esm-node/src/components/CdsPagination/CdsPagination.css +0 -18
  541. package/dist/esm-node/src/components/CdsPagination/CdsPagination.vue_vue_type_script_setup_true_lang.mjs +16 -0
  542. package/dist/esm-node/src/components/CdsPagination/api/CdsPagination.props.mjs +84 -21
  543. package/dist/esm-node/src/components/CdsProgressBar/CdsProgressBar.css +0 -18
  544. package/dist/esm-node/src/components/CdsProgressBar/api/CdsProgressBar.props.mjs +64 -16
  545. package/dist/esm-node/src/components/CdsProgressBar/composables/useChunk.mjs +4 -0
  546. package/dist/esm-node/src/components/CdsProgressCircle/CdsProgressCircle.css +0 -18
  547. package/dist/esm-node/src/components/CdsProgressCircle/api/CdsProgressCircle.props.mjs +28 -7
  548. package/dist/esm-node/src/components/CdsRadio/CdsRadio.css +0 -18
  549. package/dist/esm-node/src/components/CdsRadioGroup/CdsRadioGroup.css +0 -18
  550. package/dist/esm-node/src/components/CdsRadioGroup/api/CdsRadioGroup.props.mjs +16 -4
  551. package/dist/esm-node/src/components/CdsResponsive/CdsResponsive.css +0 -18
  552. package/dist/esm-node/src/components/CdsResponsive/api/CdsResponsive.props.mjs +12 -3
  553. package/dist/esm-node/src/components/CdsSelect/CdsSelect.css +0 -18
  554. package/dist/esm-node/src/components/CdsSelect/CdsSelect.vue_vue_type_script_setup_true_lang.mjs +16 -4
  555. package/dist/esm-node/src/components/CdsSelect/api/CdsSelect.props.mjs +4 -1
  556. package/dist/esm-node/src/components/CdsSelect/composables/useMenuActivator.mjs +8 -2
  557. package/dist/esm-node/src/components/CdsSelect/composables/useSelect.mjs +69 -17
  558. package/dist/esm-node/src/components/CdsSelectionControl/CdsSelectionControl.css +0 -18
  559. package/dist/esm-node/src/components/CdsSelectionControl/CdsSelectionControl.vue_vue_type_script_setup_true_lang.mjs +8 -0
  560. package/dist/esm-node/src/components/CdsSelectionControl/api/CdsSelectionControl.props.mjs +12 -3
  561. package/dist/esm-node/src/components/CdsSelectionControlGroup/CdsSelectionControlGroup.css +0 -18
  562. package/dist/esm-node/src/components/CdsSelectionControlGroup/api/CdsSelectionControlGroup.props.mjs +44 -11
  563. package/dist/esm-node/src/components/CdsSkeletonLoader/CdsSkeletonLoader.css +0 -18
  564. package/dist/esm-node/src/components/CdsSkeletonLoader/api/CdsSkeletonLoader.props.mjs +16 -4
  565. package/dist/esm-node/src/components/CdsSlideGroup/CdsSlideGroup.css +0 -18
  566. package/dist/esm-node/src/components/CdsSlideGroup/CdsSlideGroup.vue_vue_type_script_setup_true_lang.mjs +24 -6
  567. package/dist/esm-node/src/components/CdsSlideGroup/api/CdsSlideGroup.props.mjs +25 -6
  568. package/dist/esm-node/src/components/CdsSlideView/CdsSlideView.css +0 -18
  569. package/dist/esm-node/src/components/CdsSlideView/CdsSlideView.vue_vue_type_script_setup_true_lang.mjs +4 -0
  570. package/dist/esm-node/src/components/CdsSlideView/CdsSlideViewItem.vue_vue_type_script_setup_true_lang.mjs +5 -1
  571. package/dist/esm-node/src/components/CdsSlideView/api/CdsSlideView.props.mjs +44 -0
  572. package/dist/esm-node/src/components/CdsStages/CdsStages.css +0 -18
  573. package/dist/esm-node/src/components/CdsStages/CdsStages.vue_vue_type_script_setup_true_lang.mjs +8 -0
  574. package/dist/esm-node/src/components/CdsStages/api/CdsStages.props.mjs +8 -2
  575. package/dist/esm-node/src/components/CdsStatus/CdsStatus.css +0 -18
  576. package/dist/esm-node/src/components/CdsStatus/api/CdsStatus.props.mjs +4 -1
  577. package/dist/esm-node/src/components/CdsSteps/CdsSteps.css +0 -18
  578. package/dist/esm-node/src/components/CdsSteps/CdsSteps.vue_vue_type_script_setup_true_lang.mjs +8 -0
  579. package/dist/esm-node/src/components/CdsSteps/api/CdsSteps.props.mjs +44 -11
  580. package/dist/esm-node/src/components/CdsSurface/CdsSurface.css +0 -18
  581. package/dist/esm-node/src/components/CdsSurface/api/CdsSurface.props.mjs +4 -1
  582. package/dist/esm-node/src/components/CdsTable/CdsTable.css +0 -18
  583. package/dist/esm-node/src/components/CdsTable/CdsTable.vue_vue_type_script_setup_true_lang.mjs +4 -0
  584. package/dist/esm-node/src/components/CdsTable/composable/table.mjs +47 -0
  585. package/dist/esm-node/src/components/CdsTabs/CdsTabs.css +0 -18
  586. package/dist/esm-node/src/components/CdsTabs/api/CdsTabs.props.mjs +56 -0
  587. package/dist/esm-node/src/components/CdsTag/CdsTag.css +0 -18
  588. package/dist/esm-node/src/components/CdsTag/api/CdsTag.props.mjs +72 -18
  589. package/dist/esm-node/src/components/CdsTagGroup/CdsTagGroup.css +0 -18
  590. package/dist/esm-node/src/components/CdsTagGroup/CdsTagGroup.vue_vue_type_script_setup_true_lang.mjs +20 -5
  591. package/dist/esm-node/src/components/CdsTagGroup/api/CdsTagGroup.props.mjs +11 -3
  592. package/dist/esm-node/src/components/CdsTextArea/CdsTextArea.css +0 -18
  593. package/dist/esm-node/src/components/CdsTextArea/api/CdsTextArea.props.mjs +52 -13
  594. package/dist/esm-node/src/components/CdsTextInput/CdsTextInput.css +0 -18
  595. package/dist/esm-node/src/components/CdsTextInput/api/CdsTextInput.props.mjs +40 -10
  596. package/dist/esm-node/src/components/CdsTimePicker/CdsTimePicker.css +0 -18
  597. package/dist/esm-node/src/components/CdsTimePicker/CdsTimePicker.vue_vue_type_script_setup_true_lang.mjs +24 -0
  598. package/dist/esm-node/src/components/CdsTimePicker/api/CdsTimePicker.props.mjs +32 -8
  599. package/dist/esm-node/src/components/CdsToast/CdsToast.css +0 -18
  600. package/dist/esm-node/src/components/CdsToast/api/CdsToast.props.mjs +48 -12
  601. package/dist/esm-node/src/components/CdsToastQueue/CdsToastQueue.vue_vue_type_script_setup_true_lang.mjs +4 -1
  602. package/dist/esm-node/src/components/CdsToastQueue/api/CdsToastQueue.props.mjs +28 -7
  603. package/dist/esm-node/src/components/CdsToggle/CdsToggle.css +0 -18
  604. package/dist/esm-node/src/components/CdsToggle/api/CdsToggle.props.mjs +12 -3
  605. package/dist/esm-node/src/components/CdsToolbar/CdsToolbar.css +0 -18
  606. package/dist/esm-node/src/components/CdsToolbar/api/CdsToolbar.props.mjs +20 -5
  607. package/dist/esm-node/src/components/CdsTooltip/CdsTooltip.css +0 -18
  608. package/dist/esm-node/src/components/CdsTooltip/api/CdsTooltip.props.mjs +20 -5
  609. package/dist/esm-node/src/components/CdsTree/CdsTree.css +0 -18
  610. package/dist/esm-node/src/components/CdsTree/CdsTree.vue_vue_type_script_setup_true_lang.mjs +16 -0
  611. package/dist/esm-node/src/components/CdsTree/composable/tree.mjs +28 -0
  612. package/dist/esm-node/src/components/CdsTree/composable/treeNode.mjs +68 -2
  613. package/dist/esm-node/src/components/CdsUploader/CdsUploader.css +0 -18
  614. package/dist/esm-node/src/components/CdsUploader/CdsUploader.vue_vue_type_script_setup_true_lang.mjs +8 -0
  615. package/dist/esm-node/src/components/CdsUploader/composables/useUpload.mjs +104 -26
  616. package/dist/esm-node/src/components/CdsVirtualScroll/CdsVirtualScroll.css +0 -18
  617. package/dist/esm-node/src/components/CdsVirtualScroll/CdsVirtualScroll.vue_vue_type_script_setup_true_lang.mjs +8 -0
  618. package/dist/esm-node/src/components/CdsVirtualScroll/api/CdsVirtualScroll.props.mjs +12 -3
  619. package/dist/esm-node/src/components/index.mjs +2 -1
  620. package/dist/esm-node/src/composables/useAppearance/useAppearance.mjs +4 -1
  621. package/dist/esm-node/src/composables/useColor/useColor.mjs +20 -5
  622. package/dist/esm-node/src/composables/useDatetime/useDatetime.mjs +3 -0
  623. package/dist/esm-node/src/composables/useDelay/useDelay.mjs +8 -2
  624. package/dist/esm-node/src/composables/useDimensions/useDimensions.mjs +24 -6
  625. package/dist/esm-node/src/composables/useDirection/useDirection.mjs +4 -1
  626. package/dist/esm-node/src/composables/useDisabled/index.mjs +1 -1
  627. package/dist/esm-node/src/composables/useDisabled/useDisabled.mjs +4 -1
  628. package/dist/esm-node/src/composables/useDisplay/useDisplay.mjs +2 -0
  629. package/dist/esm-node/src/composables/useFilter/useFilter.mjs +20 -0
  630. package/dist/esm-node/src/composables/useFocus/useFocus.mjs +12 -3
  631. package/dist/esm-node/src/composables/useFocus/useFocusTrap.mjs +8 -2
  632. package/dist/esm-node/src/composables/useForm/useForm.mjs +45 -0
  633. package/dist/esm-node/src/composables/useGroup/useGroup.mjs +24 -6
  634. package/dist/esm-node/src/composables/useGroup/useGroupItem.mjs +8 -2
  635. package/dist/esm-node/src/composables/useItems/useItems.mjs +32 -8
  636. package/dist/esm-node/src/composables/useLayout/useLayout.mjs +24 -6
  637. package/dist/esm-node/src/composables/useLazy/useLazy.mjs +1 -0
  638. package/dist/esm-node/src/composables/useLoader/index.mjs +1 -1
  639. package/dist/esm-node/src/composables/useLoader/useLoader.mjs +4 -1
  640. package/dist/esm-node/src/composables/useLocation/index.mjs +1 -1
  641. package/dist/esm-node/src/composables/useLocation/useLocation.mjs +4 -1
  642. package/dist/esm-node/src/composables/useNested/useNested.mjs +44 -11
  643. package/dist/esm-node/src/composables/usePosition/usePosition.mjs +4 -0
  644. package/dist/esm-node/src/composables/useReadonly/useReadonly.mjs +4 -1
  645. package/dist/esm-node/src/composables/useReveal/useReveal.mjs +4 -1
  646. package/dist/esm-node/src/composables/useRouter/index.mjs +1 -1
  647. package/dist/esm-node/src/composables/useRouter/useRouter.mjs +16 -4
  648. package/dist/esm-node/src/composables/useSize/useSize.mjs +4 -1
  649. package/dist/esm-node/src/composables/useStatus/useStatus.mjs +4 -1
  650. package/dist/esm-node/src/composables/useText/useText.mjs +8 -2
  651. package/dist/esm-node/src/composables/useTheme/useTheme.mjs +4 -1
  652. package/dist/esm-node/src/composables/useTransition/useTransition.mjs +4 -1
  653. package/dist/esm-node/src/composables/useValidation/useValidation.mjs +26 -6
  654. package/dist/esm-node/src/composables/useVirtual/useVirtual.mjs +12 -3
  655. package/dist/esm-node/src/core/defineComponent.mjs +4 -1
  656. package/dist/esm-node/src/themes/lumaDark.mjs +8 -4
  657. package/dist/esm-node/src/utils/date/date.mjs +4 -4
  658. package/dist/iife/entry.js +9 -9
  659. package/dist/styles/common.css +1 -1
  660. package/dist/styles/core.css +1 -1
  661. package/dist/styles/tailwind.css +1 -1
  662. package/dist/styles.css +2 -2
  663. package/dist/types/components/CdsApp/api/CdsApp.types.d.ts +4 -1
  664. package/dist/types/components/CdsAutocomplete/CdsAutocomplete.vue.d.ts +59 -20
  665. package/dist/types/components/CdsAutocomplete/api/CdsAutocomplete.types.d.ts +60 -15
  666. package/dist/types/components/CdsAutocomplete/index.d.ts +57 -30
  667. package/dist/types/components/CdsAvatar/api/CdsAvatar.types.d.ts +8 -2
  668. package/dist/types/components/CdsBadge/api/CdsBadge.types.d.ts +8 -2
  669. package/dist/types/components/CdsBreadcrumbs/api/CdsBreadcrumbs.types.d.ts +28 -7
  670. package/dist/types/components/CdsButton/CdsButton.vue.d.ts +4 -1
  671. package/dist/types/components/CdsButton/api/CdsButton.types.d.ts +20 -5
  672. package/dist/types/components/CdsButtonGroup/api/CdsButtonGroup.types.d.ts +4 -1
  673. package/dist/types/components/CdsButtonToggle/CdsButtonToggle.vue.d.ts +20 -5
  674. package/dist/types/components/CdsButtonToggle/api/CdsButtonToggle.types.d.ts +8 -2
  675. package/dist/types/components/CdsCard/CdsCardGroup.vue.d.ts +20 -5
  676. package/dist/types/components/CdsCard/api/CdsCard.types.d.ts +68 -17
  677. package/dist/types/components/CdsCarousel/api/CdsCarousel.types.d.ts +12 -3
  678. package/dist/types/components/CdsCheckbox/api/CdsCheckbox.types.d.ts +8 -2
  679. package/dist/types/components/CdsCheckboxButton/api/CdsCheckboxButton.types.d.ts +8 -0
  680. package/dist/types/components/CdsCombobox/CdsCombobox.vue.d.ts +67 -22
  681. package/dist/types/components/CdsCombobox/api/CdsCombobox.types.d.ts +60 -15
  682. package/dist/types/components/CdsCombobox/index.d.ts +57 -30
  683. package/dist/types/components/CdsCounter/api/CdsCounter.types.d.ts +4 -0
  684. package/dist/types/components/CdsDateInput/CdsDateInput.vue.d.ts +35 -10
  685. package/dist/types/components/CdsDateInput/api/CdsDateInput.types.d.ts +44 -11
  686. package/dist/types/components/CdsDateInput/index.d.ts +57 -30
  687. package/dist/types/components/CdsDatePicker/CdsDatePicker.vue.d.ts +20 -0
  688. package/dist/types/components/CdsDatePicker/api/CdsDatePicker.types.d.ts +28 -7
  689. package/dist/types/components/CdsDefaultsProvider/api/CdsDefaultsProvider.types.d.ts +1 -0
  690. package/dist/types/components/CdsDescription/api/CdsDescription.types.d.ts +4 -0
  691. package/dist/types/components/CdsDivider/CdsDivider.vue.d.ts +4 -0
  692. package/dist/types/components/CdsDrawer/CdsDrawer.vue.d.ts +4 -0
  693. package/dist/types/components/CdsDrawer/api/CdsDrawer.types.d.ts +24 -6
  694. package/dist/types/components/CdsEmptyState/api/CdsEmptyState.types.d.ts +36 -9
  695. package/dist/types/components/CdsExpandablePanel/CdsExpandablePanel.vue.d.ts +16 -4
  696. package/dist/types/components/CdsExpandablePanel/CdsExpandablePanelTitle.vue.d.ts +8 -2
  697. package/dist/types/components/CdsExpandablePanel/CdsExpandablePanels.vue.d.ts +8 -2
  698. package/dist/types/components/CdsExpandablePanel/api/CdsExpandablePanel.types.d.ts +56 -14
  699. package/dist/types/components/CdsField/CdsField.vue.d.ts +18 -2
  700. package/dist/types/components/CdsField/api/CdsField.types.d.ts +33 -7
  701. package/dist/types/components/CdsField/index.d.ts +5 -0
  702. package/dist/types/components/CdsFileInput/CdsFileInput.vue.d.ts +5 -2
  703. package/dist/types/components/CdsFileInput/api/CdsFileInput.types.d.ts +28 -7
  704. package/dist/types/components/CdsFileInput/index.d.ts +15 -6
  705. package/dist/types/components/CdsFileUpload/CdsFileUpload.vue.d.ts +8 -0
  706. package/dist/types/components/CdsFileUpload/api/CdsFileUpload.types.d.ts +116 -29
  707. package/dist/types/components/CdsFooter/api/CdsFooter.types.d.ts +12 -3
  708. package/dist/types/components/CdsForm/api/CdsForm.types.d.ts +20 -5
  709. package/dist/types/components/CdsFunctionalButton/api/CdsFunctionalButton.types.d.ts +8 -2
  710. package/dist/types/components/CdsGrid/api/CdsGrid.types.d.ts +12 -0
  711. package/dist/types/components/CdsHeader/api/CdsHeader.types.d.ts +12 -3
  712. package/dist/types/components/CdsIcon/api/CdsIcon.types.d.ts +4 -1
  713. package/dist/types/components/CdsImage/CdsImage.vue.d.ts +20 -0
  714. package/dist/types/components/CdsImage/api/CdsImage.props.d.ts +4 -1
  715. package/dist/types/components/CdsImage/api/CdsImage.types.d.ts +28 -7
  716. package/dist/types/components/CdsInput/CdsInput.vue.d.ts +44 -11
  717. package/dist/types/components/CdsInput/api/CdsInput.types.d.ts +36 -9
  718. package/dist/types/components/CdsLabel/api/CdsLabel.types.d.ts +4 -0
  719. package/dist/types/components/CdsLayout/api/CdsLayout.types.d.ts +16 -4
  720. package/dist/types/components/CdsLink/api/CdsLink.types.d.ts +8 -2
  721. package/dist/types/components/CdsList/CdsList.vue.d.ts +24 -6
  722. package/dist/types/components/CdsList/CdsListGroup.vue.d.ts +4 -1
  723. package/dist/types/components/CdsList/CdsListItem.vue.d.ts +28 -7
  724. package/dist/types/components/CdsList/CdsListItemAction.vue.d.ts +20 -5
  725. package/dist/types/components/CdsList/CdsListItemDivider.vue.d.ts +4 -0
  726. package/dist/types/components/CdsList/CdsListItemMedia.vue.d.ts +20 -5
  727. package/dist/types/components/CdsList/CdsListSubheader.vue.d.ts +4 -1
  728. package/dist/types/components/CdsList/api/CdsList.types.d.ts +84 -21
  729. package/dist/types/components/CdsList/components/ListChildren.vue.d.ts +16 -4
  730. package/dist/types/components/CdsList/components/ListGroupActivator.vue.d.ts +4 -1
  731. package/dist/types/components/CdsList/index.d.ts +76 -0
  732. package/dist/types/components/CdsMain/api/CdsMain.types.d.ts +4 -1
  733. package/dist/types/components/CdsMenu/api/CdsMenu.types.d.ts +12 -0
  734. package/dist/types/components/CdsMessages/api/CdsMessages.types.d.ts +8 -0
  735. package/dist/types/components/CdsModal/api/CdsModal.types.d.ts +12 -3
  736. package/dist/types/components/CdsNotification/api/CdsNotification.types.d.ts +36 -9
  737. package/dist/types/components/CdsNotificationAlert/api/CdsNotificationAlert.types.d.ts +40 -10
  738. package/dist/types/components/CdsOtpInput/CdsOtpInput.vue.d.ts +20 -5
  739. package/dist/types/components/CdsOtpInput/api/CdsOtpInput.types.d.ts +36 -9
  740. package/dist/types/components/CdsOverlay/CdsOverlay.vue.d.ts +44 -11
  741. package/dist/types/components/CdsOverlay/api/CdsOverlay.types.d.ts +28 -3
  742. package/dist/types/components/CdsPage/api/CdsPage.types.d.ts +4 -1
  743. package/dist/types/components/CdsPagination/CdsPagination.vue.d.ts +16 -0
  744. package/dist/types/components/CdsPagination/api/CdsPagination.types.d.ts +44 -11
  745. package/dist/types/components/CdsProgressBar/api/CdsProgressBar.types.d.ts +8 -0
  746. package/dist/types/components/CdsProgressCircle/api/CdsProgressCircle.types.d.ts +4 -1
  747. package/dist/types/components/CdsRadioGroup/api/CdsRadioGroup.types.d.ts +8 -2
  748. package/dist/types/components/CdsResponsive/api/CdsResponsive.types.d.ts +8 -2
  749. package/dist/types/components/CdsSelect/CdsSelect.vue.d.ts +51 -18
  750. package/dist/types/components/CdsSelect/api/CdsSelect.types.d.ts +60 -15
  751. package/dist/types/components/CdsSelect/index.d.ts +57 -30
  752. package/dist/types/components/CdsSelectionControl/CdsSelectionControl.vue.d.ts +8 -0
  753. package/dist/types/components/CdsSelectionControl/api/CdsSelectionControl.types.d.ts +12 -3
  754. package/dist/types/components/CdsSelectionControlGroup/api/CdsSelectionControlGroup.types.d.ts +8 -0
  755. package/dist/types/components/CdsSkeletonLoader/api/CdsSkeletonLoader.types.d.ts +4 -1
  756. package/dist/types/components/CdsSlideGroup/CdsSlideGroup.vue.d.ts +24 -6
  757. package/dist/types/components/CdsSlideGroup/api/CdsSlideGroup.types.d.ts +20 -5
  758. package/dist/types/components/CdsSlideView/CdsSlideView.vue.d.ts +4 -0
  759. package/dist/types/components/CdsSlideView/CdsSlideViewItem.vue.d.ts +4 -0
  760. package/dist/types/components/CdsSlideView/api/CdsSlideView.types.d.ts +31 -0
  761. package/dist/types/components/CdsStages/CdsStages.vue.d.ts +8 -0
  762. package/dist/types/components/CdsStatus/api/CdsStatus.types.d.ts +4 -1
  763. package/dist/types/components/CdsSteps/CdsSteps.vue.d.ts +8 -0
  764. package/dist/types/components/CdsSteps/api/CdsSteps.types.d.ts +72 -18
  765. package/dist/types/components/CdsSurface/api/CdsSurface.types.d.ts +4 -1
  766. package/dist/types/components/CdsTable/CdsTable.vue.d.ts +4 -0
  767. package/dist/types/components/CdsTable/api/CdsTable.types.d.ts +96 -24
  768. package/dist/types/components/CdsTabs/api/CdsTabs.types.d.ts +32 -0
  769. package/dist/types/components/CdsTag/api/CdsTag.types.d.ts +64 -16
  770. package/dist/types/components/CdsTagGroup/CdsTagGroup.vue.d.ts +20 -5
  771. package/dist/types/components/CdsTagGroup/api/CdsTagGroup.types.d.ts +8 -2
  772. package/dist/types/components/CdsTextArea/CdsTextArea.vue.d.ts +5 -2
  773. package/dist/types/components/CdsTextArea/api/CdsTextArea.types.d.ts +24 -6
  774. package/dist/types/components/CdsTextArea/index.d.ts +15 -6
  775. package/dist/types/components/CdsTextInput/CdsTextInput.vue.d.ts +7 -4
  776. package/dist/types/components/CdsTextInput/api/CdsTextInput.types.d.ts +44 -11
  777. package/dist/types/components/CdsTextInput/index.d.ts +20 -11
  778. package/dist/types/components/CdsTimePicker/CdsTimePicker.vue.d.ts +24 -0
  779. package/dist/types/components/CdsTimePicker/api/CdsTimePicker.types.d.ts +4 -1
  780. package/dist/types/components/CdsToast/api/CdsToast.types.d.ts +40 -10
  781. package/dist/types/components/CdsToastQueue/CdsToastQueue.vue.d.ts +4 -1
  782. package/dist/types/components/CdsToastQueue/api/CdsToastQueue.types.d.ts +20 -5
  783. package/dist/types/components/CdsToggle/api/CdsToggle.types.d.ts +28 -7
  784. package/dist/types/components/CdsToolbar/api/CdsToolbar.types.d.ts +8 -2
  785. package/dist/types/components/CdsTooltip/api/CdsTooltip.types.d.ts +4 -0
  786. package/dist/types/components/CdsTree/CdsTree.vue.d.ts +16 -0
  787. package/dist/types/components/CdsTree/api/CdsTree.types.d.ts +84 -21
  788. package/dist/types/components/CdsUploader/CdsUploader.vue.d.ts +8 -0
  789. package/dist/types/components/CdsUploader/api/CdsUploader.types.d.ts +68 -17
  790. package/dist/types/components/CdsVirtualScroll/CdsVirtualScroll.vue.d.ts +8 -0
  791. package/dist/types/components/CdsVirtualScroll/api/CdsVirtualScroll.types.d.ts +20 -5
  792. package/dist/types/composables/useForm/useForm.d.ts +33 -0
  793. package/dist/types/composables/useLayout/context.d.ts +61 -0
  794. package/dist/types/composables/useNested/useNested.d.ts +8 -2
  795. package/dist/types/entry.d.ts +1 -0
  796. package/dist/types/themes/lumaDark.d.ts +4 -4
  797. package/dist/types/utils/date/date.d.ts +1 -1
  798. package/llms/llms-components.txt +8861 -10675
  799. package/llms/llms-full.txt +10309 -11489
  800. package/llms/llms-guides.txt +1400 -738
  801. package/llms/llms-migration.txt +18 -46
  802. package/llms/llms-tokens.txt +55 -55
  803. package/llms/llms.txt +110 -109
  804. package/package.json +24 -11
  805. package/src/components/CdsApp/CdsApp.scss +43 -0
  806. package/src/components/CdsApp/styles/_CdsApp.variables.scss +2 -0
  807. package/src/components/CdsAutocomplete/CdsAutocomplete.scss +158 -0
  808. package/src/components/CdsAutocomplete/styles/_CdsAutocomplete.variables.scss +9 -0
  809. package/src/components/CdsAvatar/CdsAvatar.scss +42 -0
  810. package/src/components/CdsAvatar/styles/_CdsAvatar.variables.scss +22 -0
  811. package/src/components/CdsBadge/CdsBadge.scss +69 -0
  812. package/src/components/CdsBadge/styles/_CdsBadge.variables.scss +22 -0
  813. package/src/components/CdsBreadcrumbs/CdsBreadcrumbs.scss +49 -0
  814. package/src/components/CdsBreadcrumbs/styles/_CdsBreadcrumbs.variables.scss +14 -0
  815. package/src/components/CdsButton/CdsButton.scss +138 -0
  816. package/src/components/CdsButton/styles/_CdsButton.mixins.scss +76 -0
  817. package/src/components/CdsButton/styles/_CdsButton.variables.scss +180 -0
  818. package/src/components/CdsButtonGroup/CdsButtonGroup.scss +62 -0
  819. package/src/components/CdsButtonGroup/styles/_CdsButtonGroup.variables.scss +7 -0
  820. package/src/components/CdsButtonToggle/CdsButtonToggle.scss +19 -0
  821. package/src/components/CdsButtonToggle/styles/_CdsButtonToggle.variables.scss +3 -0
  822. package/src/components/CdsCard/CdsCard.scss +194 -0
  823. package/src/components/CdsCard/styles/CdsCard.variables.scss +36 -0
  824. package/src/components/CdsCarousel/CdsCarousel.scss +76 -0
  825. package/src/components/CdsCarousel/styles/_CdsCarousel.variables.scss +7 -0
  826. package/src/components/CdsCheckbox/CdsCheckbox.scss +20 -0
  827. package/src/components/CdsCheckbox/styles/_CdsCheckbox.mixins.scss +24 -0
  828. package/src/components/CdsCheckbox/styles/_CdsCheckbox.variables.scss +8 -0
  829. package/src/components/CdsCheckboxButton/CdsCheckboxButton.scss +78 -0
  830. package/src/components/CdsCheckboxButton/styles/_CdsCheckboxButton.variables.scss +46 -0
  831. package/src/components/CdsCombobox/CdsCombobox.scss +158 -0
  832. package/src/components/CdsCombobox/styles/_CdsCombobox.variables.scss +9 -0
  833. package/src/components/CdsCounter/CdsCounter.scss +11 -0
  834. package/src/components/CdsCounter/styles/_CdsCounter.variables.scss +1 -0
  835. package/src/components/CdsDateInput/CdsDateInput.scss +28 -0
  836. package/src/components/CdsDateInput/styles/_CdsDateInput.variables.scss +6 -0
  837. package/src/components/CdsDatePicker/CdsDatePicker.scss +574 -0
  838. package/src/components/CdsDatePicker/styles/_CdsDatePicker.variables.scss +56 -0
  839. package/src/components/CdsDescription/CdsDescription.scss +12 -0
  840. package/src/components/CdsDescription/styles/_CdsDescription.variables.scss +1 -0
  841. package/src/components/CdsDivider/CdsDivider.scss +83 -0
  842. package/src/components/CdsDivider/styles/_CdsDivider.variables.scss +28 -0
  843. package/src/components/CdsDrawer/CdsDrawer.scss +144 -0
  844. package/src/components/CdsDrawer/styles/_CdsDrawer.variables.scss +17 -0
  845. package/src/components/CdsEmptyState/CdsEmptyState.scss +103 -0
  846. package/src/components/CdsEmptyState/styles/_CdsEmptyState.variables.scss +15 -0
  847. package/src/components/CdsExpandablePanel/CdsExpandablePanel.scss +221 -0
  848. package/src/components/CdsExpandablePanel/styles/_CdsExpandablePanel.variables.scss +24 -0
  849. package/src/components/CdsField/CdsField.scss +209 -0
  850. package/src/components/CdsField/styles/_CdsField.mixins.scss +39 -0
  851. package/src/components/CdsField/styles/_CdsField.variables.scss +84 -0
  852. package/src/components/CdsFileInput/CdsFileInput.scss +40 -0
  853. package/src/components/CdsFileInput/styles/_CdsFileInput.variables.scss +5 -0
  854. package/src/components/CdsFileUpload/CdsFileUpload.scss +173 -0
  855. package/src/components/CdsFileUpload/styles/_CdsFileUpload.variables.scss +40 -0
  856. package/src/components/CdsFooter/CdsFooter.scss +36 -0
  857. package/src/components/CdsFooter/styles/_CdsFooter.variables.scss +4 -0
  858. package/src/components/CdsForm/CdsForm.scss +24 -0
  859. package/src/components/CdsForm/styles/_CdsForm.variables.scss +5 -0
  860. package/src/components/CdsFunctionalButton/CdsFunctionalButton.scss +49 -0
  861. package/src/components/CdsFunctionalButton/styles/_CdsFunctionalButton.variables.scss +25 -0
  862. package/src/components/CdsGrid/components/CSSGrid.scss +3 -0
  863. package/src/components/CdsGrid/components/FlexGrid.scss +3 -0
  864. package/src/components/CdsHeader/CdsHeader.scss +36 -0
  865. package/src/components/CdsHeader/styles/_CdsHeader.variables.scss +3 -0
  866. package/src/components/CdsHighlight/CdsHighlight.scss +16 -0
  867. package/src/components/CdsHighlight/styles/_CdsHighlight.variables.scss +8 -0
  868. package/src/components/CdsIcon/CdsIcon.scss +54 -0
  869. package/src/components/CdsIcon/styles/_CdsIcon.variables.scss +20 -0
  870. package/src/components/CdsImage/CdsImage.scss +62 -0
  871. package/src/components/CdsImage/styles/_CdsImage.variables.scss +4 -0
  872. package/src/components/CdsInput/CdsInput.scss +108 -0
  873. package/src/components/CdsInput/styles/_CdsInput.mixins.scss +54 -0
  874. package/src/components/CdsInput/styles/_CdsInput.variables.scss +98 -0
  875. package/src/components/CdsLabel/CdsLabel.scss +23 -0
  876. package/src/components/CdsLabel/styles/_CdsLabel.variables.scss +2 -0
  877. package/src/components/CdsLayout/CdsLayout.scss +61 -0
  878. package/src/components/CdsLayout/styles/_CdsLayout.variables.scss +2 -0
  879. package/src/components/CdsLink/CdsLink.scss +33 -0
  880. package/src/components/CdsLink/styles/_CdsLink.variables.scss +6 -0
  881. package/src/components/CdsList/CdsList.scss +104 -0
  882. package/src/components/CdsList/CdsListItem.scss +330 -0
  883. package/src/components/CdsList/styles/_CdsList.variables.scss +115 -0
  884. package/src/components/CdsLoader/CdsLoader.scss +78 -0
  885. package/src/components/CdsLoader/styles/_CdsLoader.mixins.scss +9 -0
  886. package/src/components/CdsLoader/styles/_CdsLoader.variables.scss +40 -0
  887. package/src/components/CdsMain/CdsMain.scss +7 -0
  888. package/src/components/CdsMenu/CdsMenu.scss +33 -0
  889. package/src/components/CdsMenu/styles/_CdsMenu.variables.scss +11 -0
  890. package/src/components/CdsMessages/CdsMessages.scss +20 -0
  891. package/src/components/CdsMessages/styles/_CdsMessages.variables.scss +5 -0
  892. package/src/components/CdsModal/CdsModal.scss +106 -0
  893. package/src/components/CdsModal/styles/_CdsModal.variables.scss +12 -0
  894. package/src/components/CdsNotification/CdsNotification.scss +99 -0
  895. package/src/components/CdsNotification/styles/_CdsNotification.variables.scss +13 -0
  896. package/src/components/CdsNotificationAlert/CdsNotificationAlert.scss +48 -0
  897. package/src/components/CdsNotificationAlert/styles/_CdsNotificationAlert.variables.scss +5 -0
  898. package/src/components/CdsOtpInput/CdsOtpInput.scss +192 -0
  899. package/src/components/CdsOtpInput/styles/_CdsOtpInput.variables.scss +31 -0
  900. package/src/components/CdsOverlay/CdsOverlay.scss +74 -0
  901. package/src/components/CdsOverlay/styles/_CdsOverlay.variables.scss +2 -0
  902. package/src/components/CdsPage/CdsPage.scss +9 -0
  903. package/src/components/CdsPagination/CdsPagination.scss +69 -0
  904. package/src/components/CdsPagination/styles/_CdsPagination.variables.scss +10 -0
  905. package/src/components/CdsProgressBar/CdsProgressBar.scss +285 -0
  906. package/src/components/CdsProgressBar/styles/_CdsProgressBar.variables.scss +23 -0
  907. package/src/components/CdsProgressCircle/CdsProgressCircle.scss +116 -0
  908. package/src/components/CdsProgressCircle/styles/_CdsProgressCircle.variables.scss +21 -0
  909. package/src/components/CdsRadio/CdsRadio.scss +42 -0
  910. package/src/components/CdsRadio/styles/_CdsRadio.variables.scss +26 -0
  911. package/src/components/CdsRadioGroup/CdsRadioGroup.scss +24 -0
  912. package/src/components/CdsRadioGroup/styles/_CdsRadioGroup.variables.scss +4 -0
  913. package/src/components/CdsResponsive/CdsResponsive.scss +33 -0
  914. package/src/components/CdsResponsive/styles/_CdsResponsive.variables.scss +3 -0
  915. package/src/components/CdsSelect/CdsSelect.scss +149 -0
  916. package/src/components/CdsSelect/styles/_CdsSelect.variables.scss +7 -0
  917. package/src/components/CdsSelectionControl/CdsSelectionControl.scss +104 -0
  918. package/src/components/CdsSelectionControlGroup/CdsSelectionControlGroup.scss +17 -0
  919. package/src/components/CdsSkeletonLoader/CdsSkeletonLoader.scss +292 -0
  920. package/src/components/CdsSkeletonLoader/styles/_CdsSkeletonLoader.variables.scss +52 -0
  921. package/src/components/CdsSlideGroup/CdsSlideGroup.scss +63 -0
  922. package/src/components/CdsSlideGroup/styles/_CdsSlideGroup.variables.scss +1 -0
  923. package/src/components/CdsSlideView/CdsSlideView.scss +183 -0
  924. package/src/components/CdsSlideView/styles/_CdsSlideView.variables.scss +4 -0
  925. package/src/components/CdsStages/CdsStages.scss +109 -0
  926. package/src/components/CdsStages/styles/_CdsStages.variables.scss +17 -0
  927. package/src/components/CdsStatus/CdsStatus.scss +49 -0
  928. package/src/components/CdsStatus/styles/_CdsStatus.variables.scss +7 -0
  929. package/src/components/CdsSteps/CdsSteps.scss +216 -0
  930. package/src/components/CdsSteps/styles/_CdsSteps.variables.scss +42 -0
  931. package/src/components/CdsSurface/CdsSurface.scss +16 -0
  932. package/src/components/CdsTable/CdsTable.scss +1140 -0
  933. package/src/components/CdsTable/styles/_CdsTable.mixins.scss +86 -0
  934. package/src/components/CdsTable/styles/_CdsTable.variables.scss +82 -0
  935. package/src/components/CdsTabs/CdsTabs.scss +94 -0
  936. package/src/components/CdsTabs/styles/_CdsTabs.variables.scss +30 -0
  937. package/src/components/CdsTag/CdsTag.scss +141 -0
  938. package/src/components/CdsTag/styles/_CdsTag.variables.scss +57 -0
  939. package/src/components/CdsTagGroup/CdsTagGroup.scss +32 -0
  940. package/src/components/CdsTagGroup/styles/_CdsTagGroup.variables.scss +8 -0
  941. package/src/components/CdsTextArea/CdsTextArea.scss +129 -0
  942. package/src/components/CdsTextArea/styles/_CdsTextArea.variables.scss +6 -0
  943. package/src/components/CdsTextInput/CdsTextInput.scss +84 -0
  944. package/src/components/CdsTextInput/styles/_CdsTextInput.variables.scss +7 -0
  945. package/src/components/CdsTimePicker/CdsTimePicker.scss +93 -0
  946. package/src/components/CdsTimePicker/styles/_CdsTimePicker.variables.scss +13 -0
  947. package/src/components/CdsToast/CdsToast.scss +207 -0
  948. package/src/components/CdsToast/styles/_CdsToast.variables.scss +16 -0
  949. package/src/components/CdsToggle/CdsToggle.scss +192 -0
  950. package/src/components/CdsToggle/styles/_CdsToggle.variables.scss +81 -0
  951. package/src/components/CdsToolbar/CdsToolbar.scss +72 -0
  952. package/src/components/CdsToolbar/styles/_CdsToolbar.variables.scss +3 -0
  953. package/src/components/CdsTooltip/CdsTooltip.scss +111 -0
  954. package/src/components/CdsTooltip/styles/_CdsTooltip.variables.scss +15 -0
  955. package/src/components/CdsTree/CdsTree.scss +290 -0
  956. package/src/components/CdsTree/styles/_CdsTree.variables.scss +29 -0
  957. package/src/components/CdsUploader/CdsUploader.scss +109 -0
  958. package/src/components/CdsUploader/styles/_CdsUploader.variables.scss +16 -0
  959. package/src/components/CdsVirtualScroll/CdsVirtualScroll.scss +16 -0
  960. package/src/components/CdsVirtualScroll/styles/_CdsVirtualScroll.variables.scss +3 -0
  961. package/src/styles/component-settings.scss +75 -0
  962. package/src/styles/generic/_fonts.scss +2 -2
  963. package/src/styles/settings/_index.scss +6 -0
  964. package/src/styles/tools/_absolute.sass +9 -0
  965. package/src/styles/tools/_border.sass +10 -0
  966. package/src/styles/tools/_motion.scss +11 -17
  967. package/src/styles/utilities/grid/_config.scss +0 -1
  968. package/src/themes/lumaDark.ts +8 -4
  969. package/dist/styles/breakpoints.css +0 -1
  970. package/dist/styles/index.css +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"CdsSlideGroup.vue_vue_type_script_setup_true_lang.js","sources":["../../../../../src/components/CdsSlideGroup/CdsSlideGroup.vue"],"sourcesContent":["<script setup lang=\"tsx\">\nimport './CdsSlideGroup.scss';\n\nimport type { CdsSlideGroupSlots } from '@cds/components';\nimport { useDirection } from '@cds/composables/useDirection';\nimport { useDisplay } from '@cds/composables/useDisplay';\nimport { type GoToOptions, useGoTo } from '@cds/composables/useGoTo';\nimport { useGroup } from '@cds/composables/useGroup';\nimport { useRtl } from '@cds/composables/useLocale';\nimport { useResizeObserver } from '@cds/composables/useResizeObserver';\nimport { useDefaults } from '@cds/core';\nimport { CdsTransitionFade } from '@cds/transitions';\nimport { classNames, focusableChildren, IN_BROWSER, keyNames } from '@cds/utils';\nimport { computed, shallowRef, unref, watch } from 'vue';\n\nimport { CdsFunctionalButton } from '../CdsFunctionalButton';\nimport { CdsSlideGroupConstants } from './api/CdsSlideGroup.constants';\nimport { defineCdsSlideGroupProps } from './api/CdsSlideGroup.props';\nimport {\n calculateCenteredTarget,\n calculateUpdatedTarget,\n getOffsetSize,\n getScrollPosition,\n getScrollSize\n} from './utils/calculateTargets';\n\ndefineOptions({\n name: CdsSlideGroupConstants.name\n});\n\nconst _props = defineProps({ ...defineCdsSlideGroupProps() });\nconst props = useDefaults(_props);\nconst slots = defineSlots<CdsSlideGroupSlots>();\n\nconst { displayClasses, mobile } = useDisplay(props);\nconst group = useGroup(props, props.symbol);\nconst { isRtl } = useRtl();\nconst { isHorizontal } = useDirection(props);\n\nconst isOverflowing = shallowRef(false);\nconst scrollOffset = shallowRef(0);\nconst containerSize = shallowRef(0);\nconst contentSize = shallowRef(0);\n\nconst { resizeRef: containerRef, contentRect: containerRect } = useResizeObserver();\nconst { resizeRef: contentRef, contentRect } = useResizeObserver();\n\nconst goTo = useGoTo();\nconst goToOptions = computed<Partial<GoToOptions>>(() => {\n return {\n container: containerRef.el,\n duration: 200,\n easing: 'easeOutQuart'\n };\n});\n\nconst firstSelectedIndex = computed(() => {\n if (!unref(group.selected).length) return -1;\n return unref(group.items).findIndex((item) => item.id === unref(group.selected)[0]);\n});\n\nconst lastSelectedIndex = computed(() => {\n if (!unref(group.selected).length) return -1;\n return unref(group.items).findIndex((item) => item.id === unref(group.selected)[unref(group.selected).length - 1]);\n});\n\nif (IN_BROWSER) {\n let frame = -1;\n watch(\n () => [unref(group.selected), unref(containerRect), unref(contentRect), unref(isHorizontal)],\n () => {\n cancelAnimationFrame(frame);\n frame = requestAnimationFrame(() => {\n if (unref(containerRect) && unref(contentRect)) {\n const sizeProperty = unref(isHorizontal) ? 'width' : 'height';\n\n containerSize.value = unref(containerRect)![sizeProperty];\n contentSize.value = unref(contentRect)![sizeProperty];\n\n isOverflowing.value = containerSize.value + 1 < contentSize.value;\n }\n\n if (props.scrollToActive && firstSelectedIndex.value >= 0 && contentRef.el) {\n const selectedElement = contentRef.el.children[lastSelectedIndex.value] as HTMLElement;\n\n scrollToChildren(selectedElement, props.centerActive);\n }\n });\n }\n );\n}\n\nconst isFocused = shallowRef(false);\n\nconst slotProps = computed(() => ({\n next: group.next,\n prev: group.prev,\n select: group.select,\n isSelected: group.isSelected\n}));\n\nconst hasOverflowOrScroll = computed(() => unref(isOverflowing) || Math.abs(unref(scrollOffset)) > 0);\n\nconst hasAffixes = computed(() => {\n switch (props.showArrows) {\n case 'never':\n return false;\n\n // Always show arrows on desktop & mobile\n case 'always':\n return true;\n\n // Always show arrows on desktop\n case 'desktop':\n return !unref(mobile);\n\n // Show arrows on mobile when overflowing.\n case true:\n return unref(hasOverflowOrScroll);\n\n // Always show on mobile\n case 'mobile':\n return unref(mobile) || unref(hasOverflowOrScroll);\n\n // Always show arrows when overflowed on desktop\n default:\n return !unref(mobile) && unref(hasOverflowOrScroll);\n }\n});\n\nconst hasPrev = computed(() => Math.abs(unref(scrollOffset)) > 1);\n\nconst hasNext = computed(() => {\n if (!unref(hasOverflowOrScroll)) return false;\n\n const scrollSizeMax = unref(contentSize) - unref(containerSize);\n\n return scrollSizeMax - Math.abs(unref(scrollOffset)) > 1;\n});\n\nfunction scrollToChildren(children: HTMLElement, center?: boolean) {\n let target = 0;\n\n if (center) {\n target = calculateCenteredTarget({\n containerElement: containerRef.el!,\n isHorizontal: unref(isHorizontal),\n selectedElement: children\n });\n } else {\n target = calculateUpdatedTarget({\n containerElement: containerRef.el!,\n isHorizontal: unref(isHorizontal),\n isRtl: unref(isRtl),\n selectedElement: children\n });\n }\n\n scrollToPosition(target);\n}\n\nfunction scrollToPosition(newPosition: number) {\n if (!IN_BROWSER || !containerRef.el) return;\n\n const offsetSize = getOffsetSize(unref(isHorizontal), containerRef.el);\n const scrollPosition = getScrollPosition(unref(isHorizontal), unref(isRtl), containerRef.el);\n const scrollSize = getScrollSize(unref(isHorizontal), containerRef.el);\n\n if (scrollSize <= offsetSize || Math.abs(newPosition - scrollPosition) < 16) return;\n\n if (unref(isHorizontal) && unref(isRtl) && containerRef.el) {\n const { scrollWidth, offsetWidth: containerWidth } = containerRef.el!;\n\n newPosition = scrollWidth - containerWidth - newPosition;\n }\n\n if (unref(isHorizontal)) {\n goTo.horizontal(newPosition, unref(goToOptions));\n } else {\n goTo(newPosition, unref(goToOptions));\n }\n}\n\nfunction onScroll(event: Event) {\n const { scrollTop, scrollLeft } = event.target as HTMLElement;\n\n scrollOffset.value = unref(isHorizontal) ? scrollLeft : scrollTop;\n}\n\nfunction onKeydown(event: KeyboardEvent) {\n if (!contentRef.el) return;\n\n function toFocus(location: Parameters<typeof focus>[0]) {\n event.preventDefault();\n focus(location);\n }\n\n if (unref(isHorizontal)) {\n if (event.key === keyNames.right) {\n toFocus(unref(isRtl) ? 'prev' : 'next');\n } else if (event.key === keyNames.left) {\n toFocus(unref(isRtl) ? 'next' : 'prev');\n }\n } else {\n if (event.key === keyNames.down) {\n toFocus('next');\n } else if (event.key === keyNames.up) {\n toFocus('prev');\n }\n }\n\n if (event.key === keyNames.home) {\n toFocus('first');\n } else if (event.key === keyNames.end) {\n toFocus('last');\n }\n}\n\nlet ignoreFocusEvent = false;\nfunction onFocusin(event: FocusEvent) {\n isFocused.value = true;\n\n if (!unref(isOverflowing) || !contentRef.el) return;\n\n for (const el of event.composedPath()) {\n for (const item of contentRef.el.children) {\n if (item === el) {\n scrollToChildren(item as HTMLElement);\n return;\n }\n }\n }\n}\n\nfunction onFocusout() {\n isFocused.value = false;\n}\n\nfunction onFocus(event: FocusEvent) {\n if (\n !ignoreFocusEvent &&\n !unref(isFocused) &&\n !(event.relatedTarget && contentRef.el?.contains(event.relatedTarget as Node))\n )\n focus();\n\n ignoreFocusEvent = false;\n}\n\nfunction onFocusAffixes() {\n ignoreFocusEvent = true;\n}\n\nfunction getSiblingElement(el: HTMLElement | null, location: 'next' | 'prev') {\n if (!el) return undefined;\n let sibling: HTMLElement | null = el;\n do {\n sibling = sibling?.[location === 'next' ? 'nextElementSibling' : 'previousElementSibling'] as HTMLElement | null;\n } while (sibling?.hasAttribute('disabled'));\n return sibling;\n}\n\nfunction focus(location?: 'next' | 'prev' | 'first' | 'last') {\n if (!contentRef.el) return;\n\n let el: HTMLElement | null | undefined;\n\n if (!location) {\n const focusable = focusableChildren(contentRef.el);\n el = focusable[0];\n } else if (location === 'next') {\n el = getSiblingElement(contentRef.el.querySelector(':focus'), location);\n\n if (!el) return focus('first');\n } else if (location === 'prev') {\n el = getSiblingElement(contentRef.el.querySelector(':focus'), location);\n\n if (!el) return focus('last');\n } else if (location === 'first') {\n el = contentRef.el.firstElementChild as HTMLElement;\n\n if (el?.hasAttribute('disabled')) el = getSiblingElement(el, 'next');\n } else if (location === 'last') {\n el = contentRef.el.lastElementChild as HTMLElement;\n\n if (el?.hasAttribute('disabled')) el = getSiblingElement(el, 'prev');\n }\n\n if (el) {\n el.focus({ preventScroll: true });\n }\n}\n\nfunction scrollTo(location: 'prev' | 'next') {\n const direction = unref(isHorizontal) && unref(isRtl) ? -1 : 1;\n\n const offsetStep = (location === 'prev' ? -direction : direction) * unref(containerSize);\n\n let newPosition = unref(scrollOffset) + offsetStep;\n\n if (unref(isHorizontal) && unref(isRtl) && containerRef.el) {\n const { scrollWidth, offsetWidth: containerWidth } = containerRef.el!;\n\n newPosition += scrollWidth - containerWidth;\n }\n\n scrollToPosition(newPosition);\n}\n\ndefineRender(() => {\n const { rootClass } = CdsSlideGroupConstants;\n\n return (\n <props.tag\n class={classNames(\n rootClass,\n {\n [`${rootClass}--vertical`]: !unref(isHorizontal),\n [`${rootClass}--has-affixes`]: unref(hasAffixes),\n [`${rootClass}--is-overflowing`]: unref(isOverflowing)\n },\n unref(displayClasses),\n props.class\n )}\n style={props.style}\n tabindex={unref(isFocused) || unref(group.selected).length ? -1 : 0}\n onFocus={onFocus}\n >\n {unref(hasAffixes) && (\n <div\n key=\"prev\"\n class={classNames(`${rootClass}__prev`, {\n [`${rootClass}__prev--disabled`]: !unref(hasPrev)\n })}\n onMousedown={onFocusAffixes}\n onClick={() => unref(hasPrev) && scrollTo('prev')}\n >\n {slots.prev?.(unref(slotProps)) ?? (\n <CdsTransitionFade>\n <CdsFunctionalButton icon={unref(isRtl) ? props.nextIcon : props.prevIcon} disabled={!unref(hasPrev)} />\n </CdsTransitionFade>\n )}\n </div>\n )}\n\n <div\n key=\"container\"\n ref={containerRef}\n class={classNames(`${rootClass}__container`, props.contentClass)}\n style={props.contentStyle}\n onScroll={onScroll}\n >\n <div\n ref={contentRef}\n class={classNames(`${rootClass}__content`)}\n onFocusin={onFocusin}\n onFocusout={onFocusout}\n onKeydown={onKeydown}\n >\n {slots.default?.(unref(slotProps))}\n </div>\n </div>\n\n {unref(hasAffixes) && (\n <div\n key=\"next\"\n class={classNames(`${rootClass}__next`, {\n [`${rootClass}__next--disabled`]: !unref(hasNext)\n })}\n onMousedown={onFocusAffixes}\n onClick={() => unref(hasNext) && scrollTo('next')}\n >\n {slots.next?.(unref(slotProps)) ?? (\n <CdsTransitionFade>\n <CdsFunctionalButton icon={unref(isRtl) ? props.prevIcon : props.nextIcon} disabled={!unref(hasNext)} />\n </CdsTransitionFade>\n )}\n </div>\n )}\n </props.tag>\n );\n});\n\ndefineExpose({\n /** Получить индекс выбранного элемента */\n selected: group.selected,\n /** Получить скролл элемента */\n scrollOffset,\n /** Возвращает значение true, если перед текущим индексом есть элементы. */\n hasPrev,\n /** Возвращает значение true, если после текущего индекса есть элементы. */\n hasNext,\n /** Зафокусить компонента */\n focus,\n /** Проскроллить к элементу по индексу */\n scrollTo\n});\n</script>\n"],"names":["_props","__props","props","useDefaults","slots","_useSlots","displayClasses","mobile","useDisplay","group","useGroup","symbol","isRtl","useRtl","isHorizontal","useDirection","isOverflowing","shallowRef","scrollOffset","containerSize","contentSize","resizeRef","containerRef","contentRect","containerRect","useResizeObserver","contentRef","goTo","useGoTo","goToOptions","computed","container","el","duration","easing","firstSelectedIndex","unref","selected","length","items","findIndex","item","id","lastSelectedIndex","IN_BROWSER","frame","watch","cancelAnimationFrame","requestAnimationFrame","sizeProperty","value","scrollToActive","selectedElement","children","scrollToChildren","centerActive","isFocused","slotProps","next","prev","select","isSelected","hasOverflowOrScroll","Math","abs","hasAffixes","showArrows","hasPrev","hasNext","scrollSizeMax","center","target","calculateCenteredTarget","containerElement","calculateUpdatedTarget","scrollToPosition","newPosition","offsetSize","getOffsetSize","scrollPosition","getScrollPosition","scrollSize","getScrollSize","scrollWidth","offsetWidth","containerWidth","horizontal","onScroll","event","scrollTop","scrollLeft","onKeydown","toFocus","location","preventDefault","focus","key","keyNames","right","left","down","up","home","end","ignoreFocusEvent","onFocusin","composedPath","onFocusout","onFocus","relatedTarget","contains","onFocusAffixes","getSiblingElement","undefined","sibling","hasAttribute","focusable","focusableChildren","querySelector","firstElementChild","lastElementChild","preventScroll","scrollTo","direction","offsetStep","__expose","rootClass","CdsSlideGroupConstants","_createVNode","tag","classNames","class","style","default","onClick","CdsTransitionFade","CdsFunctionalButton","nextIcon","prevIcon","contentClass","contentStyle"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AA8BA,UAAMA,SAASC;AACf,UAAMC,QAAQC,YAAYH,MAAM;AAChC,UAAMI,QAAQC,SAAA;AAEd,UAAM;AAAA,MAAEC;AAAAA,MAAgBC;AAAAA,IAAO,IAAIC,WAAWN,KAAK;AACnD,UAAMO,QAAQC,SAASR,OAAOA,MAAMS,MAAM;AAC1C,UAAM;AAAA,MAAEC;AAAAA,QAAUC,OAAM;AACxB,UAAM;AAAA,MAAEC;AAAAA,IAAa,IAAIC,aAAab,KAAK;AAE3C,UAAMc,gBAAgBC,WAAW,KAAK;AACtC,UAAMC,eAAeD,WAAW,CAAC;AACjC,UAAME,gBAAgBF,WAAW,CAAC;AAClC,UAAMG,cAAcH,WAAW,CAAC;AAEhC,UAAM;AAAA,MAAEI,WAAWC;AAAAA,MAAcC,aAAaC;AAAAA,QAAkBC,kBAAiB;AACjF,UAAM;AAAA,MAAEJ,WAAWK;AAAAA,MAAYH;AAAAA,QAAgBE,kBAAiB;AAEhE,UAAME,OAAOC,QAAO;AACpB,UAAMC,cAAcC,SAA+B,MAAM;AACvD,aAAO;AAAA,QACLC,WAAWT,aAAaU;AAAAA,QACxBC,UAAU;AAAA,QACVC,QAAQ;AAAA;IAEZ,CAAC;AAED,UAAMC,qBAAqBL,SAAS,MAAM;AACxC,UAAI,CAACM,MAAM3B,MAAM4B,QAAQ,EAAEC,OAAQ,QAAO;AAC1C,aAAOF,MAAM3B,MAAM8B,KAAK,EAAEC,UAAWC,UAASA,KAAKC,OAAON,MAAM3B,MAAM4B,QAAQ,EAAE,CAAC,CAAC;AAAA,IACpF,CAAC;AAED,UAAMM,oBAAoBb,SAAS,MAAM;AACvC,UAAI,CAACM,MAAM3B,MAAM4B,QAAQ,EAAEC,OAAQ,QAAO;AAC1C,aAAOF,MAAM3B,MAAM8B,KAAK,EAAEC,UAAWC,UAASA,KAAKC,OAAON,MAAM3B,MAAM4B,QAAQ,EAAED,MAAM3B,MAAM4B,QAAQ,EAAEC,SAAS,CAAC,CAAC;AAAA,IACnH,CAAC;AAED,QAAIM,YAAY;AACd,UAAIC,QAAQ;AACZC,YACE,MAAM,CAACV,MAAM3B,MAAM4B,QAAQ,GAAGD,MAAMZ,aAAa,GAAGY,MAAMb,WAAW,GAAGa,MAAMtB,YAAY,CAAC,GAC3F,MAAM;AACJiC,6BAAqBF,KAAK;AAC1BA,gBAAQG,sBAAsB,MAAM;AAClC,cAAIZ,MAAMZ,aAAa,KAAKY,MAAMb,WAAW,GAAG;AAC9C,kBAAM0B,eAAeb,MAAMtB,YAAY,IAAI,UAAU;AAErDK,0BAAc+B,QAAQd,MAAMZ,aAAa,EAAGyB,YAAY;AACxD7B,wBAAY8B,QAAQd,MAAMb,WAAW,EAAG0B,YAAY;AAEpDjC,0BAAckC,QAAQ/B,cAAc+B,QAAQ,IAAI9B,YAAY8B;AAAAA,UAC9D;AAEA,cAAIhD,MAAMiD,kBAAkBhB,mBAAmBe,SAAS,KAAKxB,WAAWM,IAAI;AAC1E,kBAAMoB,kBAAkB1B,WAAWM,GAAGqB,SAASV,kBAAkBO,KAAK;AAEtEI,6BAAiBF,iBAAiBlD,MAAMqD,YAAY;AAAA,UACtD;AAAA,QACF,CAAC;AAAA,MACH,CACF;AAAA,IACF;AAEA,UAAMC,YAAYvC,WAAW,KAAK;AAElC,UAAMwC,YAAY3B,SAAS,OAAO;AAAA,MAChC4B,MAAMjD,MAAMiD;AAAAA,MACZC,MAAMlD,MAAMkD;AAAAA,MACZC,QAAQnD,MAAMmD;AAAAA,MACdC,YAAYpD,MAAMoD;AAAAA,IACpB,EAAE;AAEF,UAAMC,sBAAsBhC,SAAS,MAAMM,MAAMpB,aAAa,KAAK+C,KAAKC,IAAI5B,MAAMlB,YAAY,CAAC,IAAI,CAAC;AAEpG,UAAM+C,aAAanC,SAAS,MAAM;AAChC,cAAQ5B,MAAMgE,YAAU;AAAA,QACtB,KAAK;AACH,iBAAO;AAAA,QAGT,KAAK;AACH,iBAAO;AAAA,QAGT,KAAK;AACH,iBAAO,CAAC9B,MAAM7B,MAAM;AAAA,QAGtB,KAAK;AACH,iBAAO6B,MAAM0B,mBAAmB;AAAA,QAGlC,KAAK;AACH,iBAAO1B,MAAM7B,MAAM,KAAK6B,MAAM0B,mBAAmB;AAAA,QAGnD;AACE,iBAAO,CAAC1B,MAAM7B,MAAM,KAAK6B,MAAM0B,mBAAmB;AAAA,MACtD;AAAA,IACF,CAAC;AAED,UAAMK,UAAUrC,SAAS,MAAMiC,KAAKC,IAAI5B,MAAMlB,YAAY,CAAC,IAAI,CAAC;AAEhE,UAAMkD,UAAUtC,SAAS,MAAM;AAC7B,UAAI,CAACM,MAAM0B,mBAAmB,EAAG,QAAO;AAExC,YAAMO,gBAAgBjC,MAAMhB,WAAW,IAAIgB,MAAMjB,aAAa;AAE9D,aAAOkD,gBAAgBN,KAAKC,IAAI5B,MAAMlB,YAAY,CAAC,IAAI;AAAA,IACzD,CAAC;AAED,aAASoC,iBAAiBD,UAAuBiB,QAAkB;AACjE,UAAIC,SAAS;AAEb,UAAID,QAAQ;AACVC,iBAASC,wBAAwB;AAAA,UAC/BC,kBAAkBnD,aAAaU;AAAAA,UAC/BlB,cAAcsB,MAAMtB,YAAY;AAAA,UAChCsC,iBAAiBC;AAAAA,QACnB,CAAC;AAAA,MACH,OAAO;AACLkB,iBAASG,uBAAuB;AAAA,UAC9BD,kBAAkBnD,aAAaU;AAAAA,UAC/BlB,cAAcsB,MAAMtB,YAAY;AAAA,UAChCF,OAAOwB,MAAMxB,KAAK;AAAA,UAClBwC,iBAAiBC;AAAAA,QACnB,CAAC;AAAA,MACH;AAEAsB,uBAAiBJ,MAAM;AAAA,IACzB;AAEA,aAASI,iBAAiBC,aAAqB;AAC7C,UAAI,CAAChC,cAAc,CAACtB,aAAaU,GAAI;AAErC,YAAM6C,aAAaC,cAAc1C,MAAMtB,YAAY,GAAGQ,aAAaU,EAAE;AACrE,YAAM+C,iBAAiBC,kBAAkB5C,MAAMtB,YAAY,GAAGsB,MAAMxB,KAAK,GAAGU,aAAaU,EAAE;AAC3F,YAAMiD,aAAaC,cAAc9C,MAAMtB,YAAY,GAAGQ,aAAaU,EAAE;AAErE,UAAIiD,cAAcJ,cAAcd,KAAKC,IAAIY,cAAcG,cAAc,IAAI,GAAI;AAE7E,UAAI3C,MAAMtB,YAAY,KAAKsB,MAAMxB,KAAK,KAAKU,aAAaU,IAAI;AAC1D,cAAM;AAAA,UAAEmD;AAAAA,UAAaC,aAAaC;AAAAA,YAAmB/D,aAAaU;AAElE4C,sBAAcO,cAAcE,iBAAiBT;AAAAA,MAC/C;AAEA,UAAIxC,MAAMtB,YAAY,GAAG;AACvBa,aAAK2D,WAAWV,aAAaxC,MAAMP,WAAW,CAAC;AAAA,MACjD,OAAO;AACLF,aAAKiD,aAAaxC,MAAMP,WAAW,CAAC;AAAA,MACtC;AAAA,IACF;AAEA,aAAS0D,SAASC,OAAc;AAC9B,YAAM;AAAA,QAAEC;AAAAA,QAAWC;AAAAA,UAAeF,MAAMjB;AAExCrD,mBAAagC,QAAQd,MAAMtB,YAAY,IAAI4E,aAAaD;AAAAA,IAC1D;AAEA,aAASE,UAAUH,OAAsB;AACvC,UAAI,CAAC9D,WAAWM,GAAI;AAEpB,eAAS4D,QAAQC,UAAuC;AACtDL,cAAMM,eAAc;AACpBC,cAAMF,QAAQ;AAAA,MAChB;AAEA,UAAIzD,MAAMtB,YAAY,GAAG;AACvB,YAAI0E,MAAMQ,QAAQC,SAASC,OAAO;AAChCN,kBAAQxD,MAAMxB,KAAK,IAAI,SAAS,MAAM;AAAA,QACxC,WAAW4E,MAAMQ,QAAQC,SAASE,MAAM;AACtCP,kBAAQxD,MAAMxB,KAAK,IAAI,SAAS,MAAM;AAAA,QACxC;AAAA,MACF,OAAO;AACL,YAAI4E,MAAMQ,QAAQC,SAASG,MAAM;AAC/BR,kBAAQ,MAAM;AAAA,QAChB,WAAWJ,MAAMQ,QAAQC,SAASI,IAAI;AACpCT,kBAAQ,MAAM;AAAA,QAChB;AAAA,MACF;AAEA,UAAIJ,MAAMQ,QAAQC,SAASK,MAAM;AAC/BV,gBAAQ,OAAO;AAAA,MACjB,WAAWJ,MAAMQ,QAAQC,SAASM,KAAK;AACrCX,gBAAQ,MAAM;AAAA,MAChB;AAAA,IACF;AAEA,QAAIY,mBAAmB;AACvB,aAASC,UAAUjB,OAAmB;AACpChC,gBAAUN,QAAQ;AAElB,UAAI,CAACd,MAAMpB,aAAa,KAAK,CAACU,WAAWM,GAAI;AAE7C,iBAAWA,MAAMwD,MAAMkB,gBAAgB;AACrC,mBAAWjE,QAAQf,WAAWM,GAAGqB,UAAU;AACzC,cAAIZ,SAAST,IAAI;AACfsB,6BAAiBb,IAAmB;AACpC;AAAA,UACF;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAEA,aAASkE,aAAa;AACpBnD,gBAAUN,QAAQ;AAAA,IACpB;AAEA,aAAS0D,QAAQpB,OAAmB;;AAClC,UACE,CAACgB,oBACD,CAACpE,MAAMoB,SAAS,KAChB,EAAEgC,MAAMqB,mBAAiBnF,gBAAWM,OAAXN,mBAAeoF,SAAStB,MAAMqB,iBAEvDd,OAAK;AAEPS,yBAAmB;AAAA,IACrB;AAEA,aAASO,iBAAiB;AACxBP,yBAAmB;AAAA,IACrB;AAEA,aAASQ,kBAAkBhF,IAAwB6D,UAA2B;AAC5E,UAAI,CAAC7D,GAAI,QAAOiF;AAChB,UAAIC,UAA8BlF;AAClC,SAAG;AACDkF,kBAAUA,mCAAUrB,aAAa,SAAS,uBAAuB;AAAA,MACnE,SAASqB,mCAASC,aAAa;AAC/B,aAAOD;AAAAA,IACT;AAEA,aAASnB,MAAMF,UAA+C;AAC5D,UAAI,CAACnE,WAAWM,GAAI;AAEpB,UAAIA;AAEJ,UAAI,CAAC6D,UAAU;AACb,cAAMuB,YAAYC,kBAAkB3F,WAAWM,EAAE;AACjDA,aAAKoF,UAAU,CAAC;AAAA,MAClB,WAAWvB,aAAa,QAAQ;AAC9B7D,aAAKgF,kBAAkBtF,WAAWM,GAAGsF,cAAc,QAAQ,GAAGzB,QAAQ;AAEtE,YAAI,CAAC7D,GAAI,QAAO+D,MAAM,OAAO;AAAA,MAC/B,WAAWF,aAAa,QAAQ;AAC9B7D,aAAKgF,kBAAkBtF,WAAWM,GAAGsF,cAAc,QAAQ,GAAGzB,QAAQ;AAEtE,YAAI,CAAC7D,GAAI,QAAO+D,MAAM,MAAM;AAAA,MAC9B,WAAWF,aAAa,SAAS;AAC/B7D,aAAKN,WAAWM,GAAGuF;AAEnB,YAAIvF,yBAAImF,aAAa,YAAanF,MAAKgF,kBAAkBhF,IAAI,MAAM;AAAA,MACrE,WAAW6D,aAAa,QAAQ;AAC9B7D,aAAKN,WAAWM,GAAGwF;AAEnB,YAAIxF,yBAAImF,aAAa,YAAanF,MAAKgF,kBAAkBhF,IAAI,MAAM;AAAA,MACrE;AAEA,UAAIA,IAAI;AACNA,WAAG+D,MAAM;AAAA,UAAE0B,eAAe;AAAA,QAAK,CAAC;AAAA,MAClC;AAAA,IACF;AAEA,aAASC,SAAS7B,UAA2B;AAC3C,YAAM8B,YAAYvF,MAAMtB,YAAY,KAAKsB,MAAMxB,KAAK,IAAI,KAAK;AAE7D,YAAMgH,cAAc/B,aAAa,SAAS,CAAC8B,YAAYA,aAAavF,MAAMjB,aAAa;AAEvF,UAAIyD,cAAcxC,MAAMlB,YAAY,IAAI0G;AAExC,UAAIxF,MAAMtB,YAAY,KAAKsB,MAAMxB,KAAK,KAAKU,aAAaU,IAAI;AAC1D,cAAM;AAAA,UAAEmD;AAAAA,UAAaC,aAAaC;AAAAA,YAAmB/D,aAAaU;AAElE4C,uBAAeO,cAAcE;AAAAA,MAC/B;AAEAV,uBAAiBC,WAAW;AAAA,IAC9B;AA4EAiD,aAAa;AAAA;AAAA,MAEXxF,UAAU5B,MAAM4B;AAAAA;AAAAA,MAEhBnB;AAAAA;AAAAA,MAEAiD;AAAAA;AAAAA,MAEAC;AAAAA;AAAAA,MAEA2B;AAAAA;AAAAA,MAEA2B;AAAAA,IACF,CAAC;WAvFY,MAAM;AACjB,YAAM;AAAA,QAAEI;AAAAA,MAAU,IAAIC;AAEtB,aAAAC,YAAA9H,MAAA+H,KAAA;AAAA,QAAA,SAEWC,WACLJ,WACA;AAAA,UACE,CAAC,GAAGA,SAAS,YAAY,GAAG,CAAC1F,MAAMtB,YAAY;AAAA,UAC/C,CAAC,GAAGgH,SAAS,eAAe,GAAG1F,MAAM6B,UAAU;AAAA,UAC/C,CAAC,GAAG6D,SAAS,kBAAkB,GAAG1F,MAAMpB,aAAa;AAAA,WAEvDoB,MAAM9B,cAAc,GACpBJ,MAAMiI,KACR;AAAA,QAAC,SACMjI,MAAMkI;AAAAA,QAAK,YACRhG,MAAMoB,SAAS,KAAKpB,MAAM3B,MAAM4B,QAAQ,EAAEC,SAAS,KAAK;AAAA,QAAC,WAC1DsE;AAAAA,MAAO,GAAA;AAAA,QAAAyB,SAAAA,MAAAA;;AAAA,kBAEfjG,MAAM6B,UAAU,KAAC+D,YAAA,OAAA;AAAA,YAAA,OAAA;AAAA,YAAA,SAGPE,WAAW,GAAGJ,SAAS,UAAU;AAAA,cACtC,CAAC,GAAGA,SAAS,kBAAkB,GAAG,CAAC1F,MAAM+B,OAAO;AAAA,YAClD,CAAC;AAAA,YAAC,eACW4C;AAAAA,YAAc,WAClBuB,MAAMlG,MAAM+B,OAAO,KAAKuD,SAAS,MAAM;AAAA,UAAC,GAAA,GAEhDtH,WAAMuD,SAANvD,+BAAagC,MAAMqB,SAAS,OAAEuE,YAAAO,mBAAA,MAAA;AAAA,YAAAF,SAAAA,MAAA,CAAAL,YAAAQ,qBAAA;AAAA,cAAA,QAEApG,MAAMxB,KAAK,IAAIV,MAAMuI,WAAWvI,MAAMwI;AAAAA,cAAQ,YAAY,CAACtG,MAAM+B,OAAO;AAAA,YAAC,GAAA,IAAA,CAAA;AAAA,WAAA,CAEvG,CAAA,GAEJ6D,YAAA,OAAA;AAAA,YAAA,OAAA;AAAA,YAAA,OAIM1G;AAAAA,YAAY,SACV4G,WAAW,GAAGJ,SAAS,eAAe5H,MAAMyI,YAAY;AAAA,YAAC,SACzDzI,MAAM0I;AAAAA,YAAY,YACfrD;AAAAA,UAAQ,GAAA,CAAAyC,YAAA,OAAA;AAAA,YAAA,OAGXtG;AAAAA,YAAU,SACRwG,WAAW,GAAGJ,SAAS,WAAW;AAAA,YAAC,aAC/BrB;AAAAA,YAAS,cACRE;AAAAA,YAAU,aACXhB;AAAAA,UAAS,GAAA,EAEnBvF,WAAMiI,YAANjI,+BAAgBgC,MAAMqB,SAAS,EAAE,MAIrCrB,MAAM6B,UAAU,KAAC+D,YAAA,OAAA;AAAA,YAAA,OAAA;AAAA,YAAA,SAGPE,WAAW,GAAGJ,SAAS,UAAU;AAAA,cACtC,CAAC,GAAGA,SAAS,kBAAkB,GAAG,CAAC1F,MAAMgC,OAAO;AAAA,YAClD,CAAC;AAAA,YAAC,eACW2C;AAAAA,YAAc,WAClBuB,MAAMlG,MAAMgC,OAAO,KAAKsD,SAAS,MAAM;AAAA,UAAC,GAAA,GAEhDtH,WAAMsD,SAANtD,+BAAagC,MAAMqB,SAAS,OAAEuE,YAAAO,mBAAA,MAAA;AAAA,YAAAF,SAAAA,MAAA,CAAAL,YAAAQ,qBAAA;AAAA,cAAA,QAEApG,MAAMxB,KAAK,IAAIV,MAAMwI,WAAWxI,MAAMuI;AAAAA,cAAQ,YAAY,CAACrG,MAAMgC,OAAO;AAAA,YAAC,GAAA,IAAA,CAAA;AAAA,UAAA,CAAA,CAEvG,CAAA,CAEJ;AAAA;AAAA,MAAA,CAAA;AAAA,IAGP;AAAA;;"}
1
+ {"version":3,"file":"CdsSlideGroup.vue_vue_type_script_setup_true_lang.js","sources":["../../../../../src/components/CdsSlideGroup/CdsSlideGroup.vue"],"sourcesContent":["<script setup lang=\"tsx\">\nimport './CdsSlideGroup.scss';\n\nimport type { CdsSlideGroupSlots } from '@cds/components';\nimport { useDirection } from '@cds/composables/useDirection';\nimport { useDisplay } from '@cds/composables/useDisplay';\nimport { type GoToOptions, useGoTo } from '@cds/composables/useGoTo';\nimport { useGroup } from '@cds/composables/useGroup';\nimport { useRtl } from '@cds/composables/useLocale';\nimport { useResizeObserver } from '@cds/composables/useResizeObserver';\nimport { useDefaults } from '@cds/core';\nimport { CdsTransitionFade } from '@cds/transitions';\nimport { classNames, focusableChildren, IN_BROWSER, keyNames } from '@cds/utils';\nimport { computed, shallowRef, unref, watch } from 'vue';\n\nimport { CdsFunctionalButton } from '../CdsFunctionalButton';\nimport { CdsSlideGroupConstants } from './api/CdsSlideGroup.constants';\nimport { defineCdsSlideGroupProps } from './api/CdsSlideGroup.props';\nimport {\n calculateCenteredTarget,\n calculateUpdatedTarget,\n getOffsetSize,\n getScrollPosition,\n getScrollSize\n} from './utils/calculateTargets';\n\ndefineOptions({\n name: CdsSlideGroupConstants.name\n});\n\nconst _props = defineProps({ ...defineCdsSlideGroupProps() });\nconst props = useDefaults(_props);\nconst slots = defineSlots<CdsSlideGroupSlots>();\n\nconst { displayClasses, mobile } = useDisplay(props);\nconst group = useGroup(props, props.symbol);\nconst { isRtl } = useRtl();\nconst { isHorizontal } = useDirection(props);\n\nconst isOverflowing = shallowRef(false);\nconst scrollOffset = shallowRef(0);\nconst containerSize = shallowRef(0);\nconst contentSize = shallowRef(0);\n\nconst { resizeRef: containerRef, contentRect: containerRect } = useResizeObserver();\nconst { resizeRef: contentRef, contentRect } = useResizeObserver();\n\nconst goTo = useGoTo();\nconst goToOptions = computed<Partial<GoToOptions>>(() => {\n return {\n container: containerRef.el,\n duration: 200,\n easing: 'easeOutQuart'\n };\n});\n\nconst firstSelectedIndex = computed(() => {\n if (!unref(group.selected).length) return -1;\n return unref(group.items).findIndex((item) => item.id === unref(group.selected)[0]);\n});\n\nconst lastSelectedIndex = computed(() => {\n if (!unref(group.selected).length) return -1;\n return unref(group.items).findIndex((item) => item.id === unref(group.selected)[unref(group.selected).length - 1]);\n});\n\nif (IN_BROWSER) {\n let frame = -1;\n watch(\n () => [unref(group.selected), unref(containerRect), unref(contentRect), unref(isHorizontal)],\n () => {\n cancelAnimationFrame(frame);\n frame = requestAnimationFrame(() => {\n if (unref(containerRect) && unref(contentRect)) {\n const sizeProperty = unref(isHorizontal) ? 'width' : 'height';\n\n containerSize.value = unref(containerRect)![sizeProperty];\n contentSize.value = unref(contentRect)![sizeProperty];\n\n isOverflowing.value = containerSize.value + 1 < contentSize.value;\n }\n\n if (props.scrollToActive && firstSelectedIndex.value >= 0 && contentRef.el) {\n const selectedElement = contentRef.el.children[lastSelectedIndex.value] as HTMLElement;\n\n scrollToChildren(selectedElement, props.centerActive);\n }\n });\n }\n );\n}\n\nconst isFocused = shallowRef(false);\n\nconst slotProps = computed(() => ({\n next: group.next,\n prev: group.prev,\n select: group.select,\n isSelected: group.isSelected\n}));\n\nconst hasOverflowOrScroll = computed(() => unref(isOverflowing) || Math.abs(unref(scrollOffset)) > 0);\n\nconst hasAffixes = computed(() => {\n switch (props.showArrows) {\n case 'never':\n return false;\n\n // Always show arrows on desktop & mobile\n case 'always':\n return true;\n\n // Always show arrows on desktop\n case 'desktop':\n return !unref(mobile);\n\n // Show arrows on mobile when overflowing.\n case true:\n return unref(hasOverflowOrScroll);\n\n // Always show on mobile\n case 'mobile':\n return unref(mobile) || unref(hasOverflowOrScroll);\n\n // Always show arrows when overflowed on desktop\n default:\n return !unref(mobile) && unref(hasOverflowOrScroll);\n }\n});\n\nconst hasPrev = computed(() => Math.abs(unref(scrollOffset)) > 1);\n\nconst hasNext = computed(() => {\n if (!unref(hasOverflowOrScroll)) return false;\n\n const scrollSizeMax = unref(contentSize) - unref(containerSize);\n\n return scrollSizeMax - Math.abs(unref(scrollOffset)) > 1;\n});\n\nfunction scrollToChildren(children: HTMLElement, center?: boolean) {\n let target = 0;\n\n if (center) {\n target = calculateCenteredTarget({\n containerElement: containerRef.el!,\n isHorizontal: unref(isHorizontal),\n selectedElement: children\n });\n } else {\n target = calculateUpdatedTarget({\n containerElement: containerRef.el!,\n isHorizontal: unref(isHorizontal),\n isRtl: unref(isRtl),\n selectedElement: children\n });\n }\n\n scrollToPosition(target);\n}\n\nfunction scrollToPosition(newPosition: number) {\n if (!IN_BROWSER || !containerRef.el) return;\n\n const offsetSize = getOffsetSize(unref(isHorizontal), containerRef.el);\n const scrollPosition = getScrollPosition(unref(isHorizontal), unref(isRtl), containerRef.el);\n const scrollSize = getScrollSize(unref(isHorizontal), containerRef.el);\n\n if (scrollSize <= offsetSize || Math.abs(newPosition - scrollPosition) < 16) return;\n\n if (unref(isHorizontal) && unref(isRtl) && containerRef.el) {\n const { scrollWidth, offsetWidth: containerWidth } = containerRef.el!;\n\n newPosition = scrollWidth - containerWidth - newPosition;\n }\n\n if (unref(isHorizontal)) {\n goTo.horizontal(newPosition, unref(goToOptions));\n } else {\n goTo(newPosition, unref(goToOptions));\n }\n}\n\nfunction onScroll(event: Event) {\n const { scrollTop, scrollLeft } = event.target as HTMLElement;\n\n scrollOffset.value = unref(isHorizontal) ? scrollLeft : scrollTop;\n}\n\nfunction onKeydown(event: KeyboardEvent) {\n if (!contentRef.el) return;\n\n function toFocus(location: Parameters<typeof focus>[0]) {\n event.preventDefault();\n focus(location);\n }\n\n if (unref(isHorizontal)) {\n if (event.key === keyNames.right) {\n toFocus(unref(isRtl) ? 'prev' : 'next');\n } else if (event.key === keyNames.left) {\n toFocus(unref(isRtl) ? 'next' : 'prev');\n }\n } else {\n if (event.key === keyNames.down) {\n toFocus('next');\n } else if (event.key === keyNames.up) {\n toFocus('prev');\n }\n }\n\n if (event.key === keyNames.home) {\n toFocus('first');\n } else if (event.key === keyNames.end) {\n toFocus('last');\n }\n}\n\nlet ignoreFocusEvent = false;\nfunction onFocusin(event: FocusEvent) {\n isFocused.value = true;\n\n if (!unref(isOverflowing) || !contentRef.el) return;\n\n for (const el of event.composedPath()) {\n for (const item of contentRef.el.children) {\n if (item === el) {\n scrollToChildren(item as HTMLElement);\n return;\n }\n }\n }\n}\n\nfunction onFocusout() {\n isFocused.value = false;\n}\n\nfunction onFocus(event: FocusEvent) {\n if (\n !ignoreFocusEvent &&\n !unref(isFocused) &&\n !(event.relatedTarget && contentRef.el?.contains(event.relatedTarget as Node))\n )\n focus();\n\n ignoreFocusEvent = false;\n}\n\nfunction onFocusAffixes() {\n ignoreFocusEvent = true;\n}\n\nfunction getSiblingElement(el: HTMLElement | null, location: 'next' | 'prev') {\n if (!el) return undefined;\n let sibling: HTMLElement | null = el;\n do {\n sibling = sibling?.[location === 'next' ? 'nextElementSibling' : 'previousElementSibling'] as HTMLElement | null;\n } while (sibling?.hasAttribute('disabled'));\n return sibling;\n}\n\nfunction focus(location?: 'next' | 'prev' | 'first' | 'last') {\n if (!contentRef.el) return;\n\n let el: HTMLElement | null | undefined;\n\n if (!location) {\n const focusable = focusableChildren(contentRef.el);\n el = focusable[0];\n } else if (location === 'next') {\n el = getSiblingElement(contentRef.el.querySelector(':focus'), location);\n\n if (!el) return focus('first');\n } else if (location === 'prev') {\n el = getSiblingElement(contentRef.el.querySelector(':focus'), location);\n\n if (!el) return focus('last');\n } else if (location === 'first') {\n el = contentRef.el.firstElementChild as HTMLElement;\n\n if (el?.hasAttribute('disabled')) el = getSiblingElement(el, 'next');\n } else if (location === 'last') {\n el = contentRef.el.lastElementChild as HTMLElement;\n\n if (el?.hasAttribute('disabled')) el = getSiblingElement(el, 'prev');\n }\n\n if (el) {\n el.focus({ preventScroll: true });\n }\n}\n\nfunction scrollTo(location: 'prev' | 'next') {\n const direction = unref(isHorizontal) && unref(isRtl) ? -1 : 1;\n\n const offsetStep = (location === 'prev' ? -direction : direction) * unref(containerSize);\n\n let newPosition = unref(scrollOffset) + offsetStep;\n\n if (unref(isHorizontal) && unref(isRtl) && containerRef.el) {\n const { scrollWidth, offsetWidth: containerWidth } = containerRef.el!;\n\n newPosition += scrollWidth - containerWidth;\n }\n\n scrollToPosition(newPosition);\n}\n\ndefineRender(() => {\n const { rootClass } = CdsSlideGroupConstants;\n\n return (\n <props.tag\n class={classNames(\n rootClass,\n {\n [`${rootClass}--vertical`]: !unref(isHorizontal),\n [`${rootClass}--has-affixes`]: unref(hasAffixes),\n [`${rootClass}--is-overflowing`]: unref(isOverflowing)\n },\n unref(displayClasses),\n props.class\n )}\n style={props.style}\n tabindex={unref(isFocused) || unref(group.selected).length ? -1 : 0}\n onFocus={onFocus}\n >\n {unref(hasAffixes) && (\n <div\n key=\"prev\"\n class={classNames(`${rootClass}__prev`, {\n [`${rootClass}__prev--disabled`]: !unref(hasPrev)\n })}\n onMousedown={onFocusAffixes}\n onClick={() => unref(hasPrev) && scrollTo('prev')}\n >\n {slots.prev?.(unref(slotProps)) ?? (\n <CdsTransitionFade>\n <CdsFunctionalButton icon={unref(isRtl) ? props.nextIcon : props.prevIcon} disabled={!unref(hasPrev)} />\n </CdsTransitionFade>\n )}\n </div>\n )}\n\n <div\n key=\"container\"\n ref={containerRef}\n class={classNames(`${rootClass}__container`, props.contentClass)}\n style={props.contentStyle}\n onScroll={onScroll}\n >\n <div\n ref={contentRef}\n class={classNames(`${rootClass}__content`)}\n onFocusin={onFocusin}\n onFocusout={onFocusout}\n onKeydown={onKeydown}\n >\n {slots.default?.(unref(slotProps))}\n </div>\n </div>\n\n {unref(hasAffixes) && (\n <div\n key=\"next\"\n class={classNames(`${rootClass}__next`, {\n [`${rootClass}__next--disabled`]: !unref(hasNext)\n })}\n onMousedown={onFocusAffixes}\n onClick={() => unref(hasNext) && scrollTo('next')}\n >\n {slots.next?.(unref(slotProps)) ?? (\n <CdsTransitionFade>\n <CdsFunctionalButton icon={unref(isRtl) ? props.prevIcon : props.nextIcon} disabled={!unref(hasNext)} />\n </CdsTransitionFade>\n )}\n </div>\n )}\n </props.tag>\n );\n});\n\ndefineExpose({\n /**\n * Получить индекс выбранного элемента\n * @en Returns the index of the selected element\n */\n selected: group.selected,\n /**\n * Получить скролл элемента\n * @en Returns the scroll offset of the element\n */\n scrollOffset,\n /**\n * Возвращает значение true, если перед текущим индексом есть элементы.\n * @en Returns true if there are elements before the current index.\n */\n hasPrev,\n /**\n * Возвращает значение true, если после текущего индекса есть элементы.\n * @en Returns true if there are elements after the current index.\n */\n hasNext,\n /**\n * Зафокусить компонента\n * @en Focuses the component\n */\n focus,\n /**\n * Проскроллить к элементу по индексу\n * @en Scrolls to the element by its index\n */\n scrollTo\n});\n</script>\n"],"names":["_props","__props","props","useDefaults","slots","_useSlots","displayClasses","mobile","useDisplay","group","useGroup","symbol","isRtl","useRtl","isHorizontal","useDirection","isOverflowing","shallowRef","scrollOffset","containerSize","contentSize","resizeRef","containerRef","contentRect","containerRect","useResizeObserver","contentRef","goTo","useGoTo","goToOptions","computed","container","el","duration","easing","firstSelectedIndex","unref","selected","length","items","findIndex","item","id","lastSelectedIndex","IN_BROWSER","frame","watch","cancelAnimationFrame","requestAnimationFrame","sizeProperty","value","scrollToActive","selectedElement","children","scrollToChildren","centerActive","isFocused","slotProps","next","prev","select","isSelected","hasOverflowOrScroll","Math","abs","hasAffixes","showArrows","hasPrev","hasNext","scrollSizeMax","center","target","calculateCenteredTarget","containerElement","calculateUpdatedTarget","scrollToPosition","newPosition","offsetSize","getOffsetSize","scrollPosition","getScrollPosition","scrollSize","getScrollSize","scrollWidth","offsetWidth","containerWidth","horizontal","onScroll","event","scrollTop","scrollLeft","onKeydown","toFocus","location","preventDefault","focus","key","keyNames","right","left","down","up","home","end","ignoreFocusEvent","onFocusin","composedPath","onFocusout","onFocus","relatedTarget","contains","onFocusAffixes","getSiblingElement","undefined","sibling","hasAttribute","focusable","focusableChildren","querySelector","firstElementChild","lastElementChild","preventScroll","scrollTo","direction","offsetStep","__expose","rootClass","CdsSlideGroupConstants","_createVNode","tag","classNames","class","style","default","onClick","CdsTransitionFade","CdsFunctionalButton","nextIcon","prevIcon","contentClass","contentStyle"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AA8BA,UAAMA,SAASC;AACf,UAAMC,QAAQC,YAAYH,MAAM;AAChC,UAAMI,QAAQC,SAAA;AAEd,UAAM;AAAA,MAAEC;AAAAA,MAAgBC;AAAAA,IAAO,IAAIC,WAAWN,KAAK;AACnD,UAAMO,QAAQC,SAASR,OAAOA,MAAMS,MAAM;AAC1C,UAAM;AAAA,MAAEC;AAAAA,QAAUC,OAAM;AACxB,UAAM;AAAA,MAAEC;AAAAA,IAAa,IAAIC,aAAab,KAAK;AAE3C,UAAMc,gBAAgBC,WAAW,KAAK;AACtC,UAAMC,eAAeD,WAAW,CAAC;AACjC,UAAME,gBAAgBF,WAAW,CAAC;AAClC,UAAMG,cAAcH,WAAW,CAAC;AAEhC,UAAM;AAAA,MAAEI,WAAWC;AAAAA,MAAcC,aAAaC;AAAAA,QAAkBC,kBAAiB;AACjF,UAAM;AAAA,MAAEJ,WAAWK;AAAAA,MAAYH;AAAAA,QAAgBE,kBAAiB;AAEhE,UAAME,OAAOC,QAAO;AACpB,UAAMC,cAAcC,SAA+B,MAAM;AACvD,aAAO;AAAA,QACLC,WAAWT,aAAaU;AAAAA,QACxBC,UAAU;AAAA,QACVC,QAAQ;AAAA;IAEZ,CAAC;AAED,UAAMC,qBAAqBL,SAAS,MAAM;AACxC,UAAI,CAACM,MAAM3B,MAAM4B,QAAQ,EAAEC,OAAQ,QAAO;AAC1C,aAAOF,MAAM3B,MAAM8B,KAAK,EAAEC,UAAWC,UAASA,KAAKC,OAAON,MAAM3B,MAAM4B,QAAQ,EAAE,CAAC,CAAC;AAAA,IACpF,CAAC;AAED,UAAMM,oBAAoBb,SAAS,MAAM;AACvC,UAAI,CAACM,MAAM3B,MAAM4B,QAAQ,EAAEC,OAAQ,QAAO;AAC1C,aAAOF,MAAM3B,MAAM8B,KAAK,EAAEC,UAAWC,UAASA,KAAKC,OAAON,MAAM3B,MAAM4B,QAAQ,EAAED,MAAM3B,MAAM4B,QAAQ,EAAEC,SAAS,CAAC,CAAC;AAAA,IACnH,CAAC;AAED,QAAIM,YAAY;AACd,UAAIC,QAAQ;AACZC,YACE,MAAM,CAACV,MAAM3B,MAAM4B,QAAQ,GAAGD,MAAMZ,aAAa,GAAGY,MAAMb,WAAW,GAAGa,MAAMtB,YAAY,CAAC,GAC3F,MAAM;AACJiC,6BAAqBF,KAAK;AAC1BA,gBAAQG,sBAAsB,MAAM;AAClC,cAAIZ,MAAMZ,aAAa,KAAKY,MAAMb,WAAW,GAAG;AAC9C,kBAAM0B,eAAeb,MAAMtB,YAAY,IAAI,UAAU;AAErDK,0BAAc+B,QAAQd,MAAMZ,aAAa,EAAGyB,YAAY;AACxD7B,wBAAY8B,QAAQd,MAAMb,WAAW,EAAG0B,YAAY;AAEpDjC,0BAAckC,QAAQ/B,cAAc+B,QAAQ,IAAI9B,YAAY8B;AAAAA,UAC9D;AAEA,cAAIhD,MAAMiD,kBAAkBhB,mBAAmBe,SAAS,KAAKxB,WAAWM,IAAI;AAC1E,kBAAMoB,kBAAkB1B,WAAWM,GAAGqB,SAASV,kBAAkBO,KAAK;AAEtEI,6BAAiBF,iBAAiBlD,MAAMqD,YAAY;AAAA,UACtD;AAAA,QACF,CAAC;AAAA,MACH,CACF;AAAA,IACF;AAEA,UAAMC,YAAYvC,WAAW,KAAK;AAElC,UAAMwC,YAAY3B,SAAS,OAAO;AAAA,MAChC4B,MAAMjD,MAAMiD;AAAAA,MACZC,MAAMlD,MAAMkD;AAAAA,MACZC,QAAQnD,MAAMmD;AAAAA,MACdC,YAAYpD,MAAMoD;AAAAA,IACpB,EAAE;AAEF,UAAMC,sBAAsBhC,SAAS,MAAMM,MAAMpB,aAAa,KAAK+C,KAAKC,IAAI5B,MAAMlB,YAAY,CAAC,IAAI,CAAC;AAEpG,UAAM+C,aAAanC,SAAS,MAAM;AAChC,cAAQ5B,MAAMgE,YAAU;AAAA,QACtB,KAAK;AACH,iBAAO;AAAA,QAGT,KAAK;AACH,iBAAO;AAAA,QAGT,KAAK;AACH,iBAAO,CAAC9B,MAAM7B,MAAM;AAAA,QAGtB,KAAK;AACH,iBAAO6B,MAAM0B,mBAAmB;AAAA,QAGlC,KAAK;AACH,iBAAO1B,MAAM7B,MAAM,KAAK6B,MAAM0B,mBAAmB;AAAA,QAGnD;AACE,iBAAO,CAAC1B,MAAM7B,MAAM,KAAK6B,MAAM0B,mBAAmB;AAAA,MACtD;AAAA,IACF,CAAC;AAED,UAAMK,UAAUrC,SAAS,MAAMiC,KAAKC,IAAI5B,MAAMlB,YAAY,CAAC,IAAI,CAAC;AAEhE,UAAMkD,UAAUtC,SAAS,MAAM;AAC7B,UAAI,CAACM,MAAM0B,mBAAmB,EAAG,QAAO;AAExC,YAAMO,gBAAgBjC,MAAMhB,WAAW,IAAIgB,MAAMjB,aAAa;AAE9D,aAAOkD,gBAAgBN,KAAKC,IAAI5B,MAAMlB,YAAY,CAAC,IAAI;AAAA,IACzD,CAAC;AAED,aAASoC,iBAAiBD,UAAuBiB,QAAkB;AACjE,UAAIC,SAAS;AAEb,UAAID,QAAQ;AACVC,iBAASC,wBAAwB;AAAA,UAC/BC,kBAAkBnD,aAAaU;AAAAA,UAC/BlB,cAAcsB,MAAMtB,YAAY;AAAA,UAChCsC,iBAAiBC;AAAAA,QACnB,CAAC;AAAA,MACH,OAAO;AACLkB,iBAASG,uBAAuB;AAAA,UAC9BD,kBAAkBnD,aAAaU;AAAAA,UAC/BlB,cAAcsB,MAAMtB,YAAY;AAAA,UAChCF,OAAOwB,MAAMxB,KAAK;AAAA,UAClBwC,iBAAiBC;AAAAA,QACnB,CAAC;AAAA,MACH;AAEAsB,uBAAiBJ,MAAM;AAAA,IACzB;AAEA,aAASI,iBAAiBC,aAAqB;AAC7C,UAAI,CAAChC,cAAc,CAACtB,aAAaU,GAAI;AAErC,YAAM6C,aAAaC,cAAc1C,MAAMtB,YAAY,GAAGQ,aAAaU,EAAE;AACrE,YAAM+C,iBAAiBC,kBAAkB5C,MAAMtB,YAAY,GAAGsB,MAAMxB,KAAK,GAAGU,aAAaU,EAAE;AAC3F,YAAMiD,aAAaC,cAAc9C,MAAMtB,YAAY,GAAGQ,aAAaU,EAAE;AAErE,UAAIiD,cAAcJ,cAAcd,KAAKC,IAAIY,cAAcG,cAAc,IAAI,GAAI;AAE7E,UAAI3C,MAAMtB,YAAY,KAAKsB,MAAMxB,KAAK,KAAKU,aAAaU,IAAI;AAC1D,cAAM;AAAA,UAAEmD;AAAAA,UAAaC,aAAaC;AAAAA,YAAmB/D,aAAaU;AAElE4C,sBAAcO,cAAcE,iBAAiBT;AAAAA,MAC/C;AAEA,UAAIxC,MAAMtB,YAAY,GAAG;AACvBa,aAAK2D,WAAWV,aAAaxC,MAAMP,WAAW,CAAC;AAAA,MACjD,OAAO;AACLF,aAAKiD,aAAaxC,MAAMP,WAAW,CAAC;AAAA,MACtC;AAAA,IACF;AAEA,aAAS0D,SAASC,OAAc;AAC9B,YAAM;AAAA,QAAEC;AAAAA,QAAWC;AAAAA,UAAeF,MAAMjB;AAExCrD,mBAAagC,QAAQd,MAAMtB,YAAY,IAAI4E,aAAaD;AAAAA,IAC1D;AAEA,aAASE,UAAUH,OAAsB;AACvC,UAAI,CAAC9D,WAAWM,GAAI;AAEpB,eAAS4D,QAAQC,UAAuC;AACtDL,cAAMM,eAAc;AACpBC,cAAMF,QAAQ;AAAA,MAChB;AAEA,UAAIzD,MAAMtB,YAAY,GAAG;AACvB,YAAI0E,MAAMQ,QAAQC,SAASC,OAAO;AAChCN,kBAAQxD,MAAMxB,KAAK,IAAI,SAAS,MAAM;AAAA,QACxC,WAAW4E,MAAMQ,QAAQC,SAASE,MAAM;AACtCP,kBAAQxD,MAAMxB,KAAK,IAAI,SAAS,MAAM;AAAA,QACxC;AAAA,MACF,OAAO;AACL,YAAI4E,MAAMQ,QAAQC,SAASG,MAAM;AAC/BR,kBAAQ,MAAM;AAAA,QAChB,WAAWJ,MAAMQ,QAAQC,SAASI,IAAI;AACpCT,kBAAQ,MAAM;AAAA,QAChB;AAAA,MACF;AAEA,UAAIJ,MAAMQ,QAAQC,SAASK,MAAM;AAC/BV,gBAAQ,OAAO;AAAA,MACjB,WAAWJ,MAAMQ,QAAQC,SAASM,KAAK;AACrCX,gBAAQ,MAAM;AAAA,MAChB;AAAA,IACF;AAEA,QAAIY,mBAAmB;AACvB,aAASC,UAAUjB,OAAmB;AACpChC,gBAAUN,QAAQ;AAElB,UAAI,CAACd,MAAMpB,aAAa,KAAK,CAACU,WAAWM,GAAI;AAE7C,iBAAWA,MAAMwD,MAAMkB,gBAAgB;AACrC,mBAAWjE,QAAQf,WAAWM,GAAGqB,UAAU;AACzC,cAAIZ,SAAST,IAAI;AACfsB,6BAAiBb,IAAmB;AACpC;AAAA,UACF;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAEA,aAASkE,aAAa;AACpBnD,gBAAUN,QAAQ;AAAA,IACpB;AAEA,aAAS0D,QAAQpB,OAAmB;;AAClC,UACE,CAACgB,oBACD,CAACpE,MAAMoB,SAAS,KAChB,EAAEgC,MAAMqB,mBAAiBnF,gBAAWM,OAAXN,mBAAeoF,SAAStB,MAAMqB,iBAEvDd,OAAK;AAEPS,yBAAmB;AAAA,IACrB;AAEA,aAASO,iBAAiB;AACxBP,yBAAmB;AAAA,IACrB;AAEA,aAASQ,kBAAkBhF,IAAwB6D,UAA2B;AAC5E,UAAI,CAAC7D,GAAI,QAAOiF;AAChB,UAAIC,UAA8BlF;AAClC,SAAG;AACDkF,kBAAUA,mCAAUrB,aAAa,SAAS,uBAAuB;AAAA,MACnE,SAASqB,mCAASC,aAAa;AAC/B,aAAOD;AAAAA,IACT;AAEA,aAASnB,MAAMF,UAA+C;AAC5D,UAAI,CAACnE,WAAWM,GAAI;AAEpB,UAAIA;AAEJ,UAAI,CAAC6D,UAAU;AACb,cAAMuB,YAAYC,kBAAkB3F,WAAWM,EAAE;AACjDA,aAAKoF,UAAU,CAAC;AAAA,MAClB,WAAWvB,aAAa,QAAQ;AAC9B7D,aAAKgF,kBAAkBtF,WAAWM,GAAGsF,cAAc,QAAQ,GAAGzB,QAAQ;AAEtE,YAAI,CAAC7D,GAAI,QAAO+D,MAAM,OAAO;AAAA,MAC/B,WAAWF,aAAa,QAAQ;AAC9B7D,aAAKgF,kBAAkBtF,WAAWM,GAAGsF,cAAc,QAAQ,GAAGzB,QAAQ;AAEtE,YAAI,CAAC7D,GAAI,QAAO+D,MAAM,MAAM;AAAA,MAC9B,WAAWF,aAAa,SAAS;AAC/B7D,aAAKN,WAAWM,GAAGuF;AAEnB,YAAIvF,yBAAImF,aAAa,YAAanF,MAAKgF,kBAAkBhF,IAAI,MAAM;AAAA,MACrE,WAAW6D,aAAa,QAAQ;AAC9B7D,aAAKN,WAAWM,GAAGwF;AAEnB,YAAIxF,yBAAImF,aAAa,YAAanF,MAAKgF,kBAAkBhF,IAAI,MAAM;AAAA,MACrE;AAEA,UAAIA,IAAI;AACNA,WAAG+D,MAAM;AAAA,UAAE0B,eAAe;AAAA,QAAK,CAAC;AAAA,MAClC;AAAA,IACF;AAEA,aAASC,SAAS7B,UAA2B;AAC3C,YAAM8B,YAAYvF,MAAMtB,YAAY,KAAKsB,MAAMxB,KAAK,IAAI,KAAK;AAE7D,YAAMgH,cAAc/B,aAAa,SAAS,CAAC8B,YAAYA,aAAavF,MAAMjB,aAAa;AAEvF,UAAIyD,cAAcxC,MAAMlB,YAAY,IAAI0G;AAExC,UAAIxF,MAAMtB,YAAY,KAAKsB,MAAMxB,KAAK,KAAKU,aAAaU,IAAI;AAC1D,cAAM;AAAA,UAAEmD;AAAAA,UAAaC,aAAaC;AAAAA,YAAmB/D,aAAaU;AAElE4C,uBAAeO,cAAcE;AAAAA,MAC/B;AAEAV,uBAAiBC,WAAW;AAAA,IAC9B;AA4EAiD,aAAa;AAAA;AAAA;AAAA;AAAA;AAAA,MAKXxF,UAAU5B,MAAM4B;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,MAKhBnB;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,MAKAiD;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,MAKAC;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,MAKA2B;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,MAKA2B;AAAAA,IACF,CAAC;WAzGY,MAAM;AACjB,YAAM;AAAA,QAAEI;AAAAA,MAAU,IAAIC;AAEtB,aAAAC,YAAA9H,MAAA+H,KAAA;AAAA,QAAA,SAEWC,WACLJ,WACA;AAAA,UACE,CAAC,GAAGA,SAAS,YAAY,GAAG,CAAC1F,MAAMtB,YAAY;AAAA,UAC/C,CAAC,GAAGgH,SAAS,eAAe,GAAG1F,MAAM6B,UAAU;AAAA,UAC/C,CAAC,GAAG6D,SAAS,kBAAkB,GAAG1F,MAAMpB,aAAa;AAAA,WAEvDoB,MAAM9B,cAAc,GACpBJ,MAAMiI,KACR;AAAA,QAAC,SACMjI,MAAMkI;AAAAA,QAAK,YACRhG,MAAMoB,SAAS,KAAKpB,MAAM3B,MAAM4B,QAAQ,EAAEC,SAAS,KAAK;AAAA,QAAC,WAC1DsE;AAAAA,MAAO,GAAA;AAAA,QAAAyB,SAAAA,MAAAA;;AAAA,kBAEfjG,MAAM6B,UAAU,KAAC+D,YAAA,OAAA;AAAA,YAAA,OAAA;AAAA,YAAA,SAGPE,WAAW,GAAGJ,SAAS,UAAU;AAAA,cACtC,CAAC,GAAGA,SAAS,kBAAkB,GAAG,CAAC1F,MAAM+B,OAAO;AAAA,YAClD,CAAC;AAAA,YAAC,eACW4C;AAAAA,YAAc,WAClBuB,MAAMlG,MAAM+B,OAAO,KAAKuD,SAAS,MAAM;AAAA,UAAC,GAAA,GAEhDtH,WAAMuD,SAANvD,+BAAagC,MAAMqB,SAAS,OAAEuE,YAAAO,mBAAA,MAAA;AAAA,YAAAF,SAAAA,MAAA,CAAAL,YAAAQ,qBAAA;AAAA,cAAA,QAEApG,MAAMxB,KAAK,IAAIV,MAAMuI,WAAWvI,MAAMwI;AAAAA,cAAQ,YAAY,CAACtG,MAAM+B,OAAO;AAAA,YAAC,GAAA,IAAA,CAAA;AAAA,WAAA,CAEvG,CAAA,GAEJ6D,YAAA,OAAA;AAAA,YAAA,OAAA;AAAA,YAAA,OAIM1G;AAAAA,YAAY,SACV4G,WAAW,GAAGJ,SAAS,eAAe5H,MAAMyI,YAAY;AAAA,YAAC,SACzDzI,MAAM0I;AAAAA,YAAY,YACfrD;AAAAA,UAAQ,GAAA,CAAAyC,YAAA,OAAA;AAAA,YAAA,OAGXtG;AAAAA,YAAU,SACRwG,WAAW,GAAGJ,SAAS,WAAW;AAAA,YAAC,aAC/BrB;AAAAA,YAAS,cACRE;AAAAA,YAAU,aACXhB;AAAAA,UAAS,GAAA,EAEnBvF,WAAMiI,YAANjI,+BAAgBgC,MAAMqB,SAAS,EAAE,MAIrCrB,MAAM6B,UAAU,KAAC+D,YAAA,OAAA;AAAA,YAAA,OAAA;AAAA,YAAA,SAGPE,WAAW,GAAGJ,SAAS,UAAU;AAAA,cACtC,CAAC,GAAGA,SAAS,kBAAkB,GAAG,CAAC1F,MAAMgC,OAAO;AAAA,YAClD,CAAC;AAAA,YAAC,eACW2C;AAAAA,YAAc,WAClBuB,MAAMlG,MAAMgC,OAAO,KAAKsD,SAAS,MAAM;AAAA,UAAC,GAAA,GAEhDtH,WAAMsD,SAANtD,+BAAagC,MAAMqB,SAAS,OAAEuE,YAAAO,mBAAA,MAAA;AAAA,YAAAF,SAAAA,MAAA,CAAAL,YAAAQ,qBAAA;AAAA,cAAA,QAEApG,MAAMxB,KAAK,IAAIV,MAAMwI,WAAWxI,MAAMuI;AAAAA,cAAQ,YAAY,CAACrG,MAAMgC,OAAO;AAAA,YAAC,GAAA,IAAA,CAAA;AAAA,UAAA,CAAA,CAEvG,CAAA,CAEJ;AAAA;AAAA,MAAA,CAAA;AAAA,IAGP;AAAA;;"}
@@ -8,16 +8,28 @@ import { C as CdsSlideGroupConstants, a as CdsSlideGroupSymbol, b as CdsSlideGro
8
8
  import { d as defineDisplayProps } from "../../../composables/useDisplay/useDisplay.js";
9
9
  const defineCdsSlideGroupProps = propsFactory(
10
10
  {
11
- /** Принудительно выравнивает активный компонент по центру. */
11
+ /**
12
+ * Принудительно выравнивает активный компонент по центру.
13
+ * @en Forces the active component to be aligned to the center.
14
+ */
12
15
  centerActive: Boolean,
13
- /** Если `true`, то при изменении активного компонента, контейнер будет прокручиваться так, чтобы он был виден. */
16
+ /**
17
+ * Если `true`, то при изменении активного компонента, контейнер будет прокручиваться так, чтобы он был виден.
18
+ * @en When `true`, the container scrolls the active component into view whenever it changes.
19
+ */
14
20
  scrollToActive: {
15
21
  type: Boolean,
16
22
  default: true
17
23
  },
18
- /** Добавляет классы к контейнеру slide group */
24
+ /**
25
+ * Добавляет классы к контейнеру slide group
26
+ * @en Adds classes to the slide group container
27
+ */
19
28
  contentClass: null,
20
- /** Добавляет inline-стили к контейнеру slide group */
29
+ /**
30
+ * Добавляет inline-стили к контейнеру slide group
31
+ * @en Adds inline styles to the slide group container
32
+ */
21
33
  contentStyle: null,
22
34
  /**
23
35
  * Изменяет настройки отображения стрелок:
@@ -27,17 +39,24 @@ const defineCdsSlideGroupProps = propsFactory(
27
39
  * Значение «desktop» всегда отображает стрелки на настольных устройствах, а значение «mobile» — на мобильных устройствах.<br />
28
40
  * Значение «always» всегда отображает стрелки как на настольных, так и на мобильных устройствах.<br />
29
41
  * Используйте значение «never», чтобы отключить отображение стрелок.
42
+ * @en Changes how the arrows are shown. By default the arrows appear on desktop devices when the container overflows and stay hidden on mobile devices. `true` also shows them on mobile on overflow, `desktop` always shows them on desktop, `mobile` always on mobile, `always` on both, and `never` disables the arrows.
30
43
  */
31
44
  showArrows: {
32
45
  type: [Boolean, String],
33
46
  validator: (v) => typeof v === "boolean" || ["always", "desktop", "mobile", "never"].includes(v)
34
47
  },
35
- /** Иконка для кнопки "следующий". */
48
+ /**
49
+ * Иконка для кнопки "следующий".
50
+ * @en Icon for the “next” button.
51
+ */
36
52
  nextIcon: {
37
53
  type: IconValue,
38
54
  default: "next"
39
55
  },
40
- /** Иконка для кнопки "предыдущий". */
56
+ /**
57
+ * Иконка для кнопки "предыдущий".
58
+ * @en Icon for the “previous” button.
59
+ */
41
60
  prevIcon: {
42
61
  type: IconValue,
43
62
  default: "prev"
@@ -1 +1 @@
1
- {"version":3,"file":"CdsSlideGroup.props.js","sources":["../../../../../../src/components/CdsSlideGroup/api/CdsSlideGroup.props.ts"],"sourcesContent":["import { defineDirectionProps } from '@cds/composables/useDirection';\nimport { defineDisplayProps } from '@cds/composables/useDisplay';\nimport { defineGroupItemProps, defineGroupProps } from '@cds/composables/useGroup';\nimport { IconValue } from '@cds/composables/useIcons';\nimport { defineComponentProps, defineTagProps, propsFactory } from '@cds/core';\n\nimport { CdsSlideGroupConstants, CdsSlideGroupItemConstants, CdsSlideGroupSymbol } from './CdsSlideGroup.constants';\n\nexport const defineCdsSlideGroupProps = propsFactory(\n {\n /** Принудительно выравнивает активный компонент по центру. */\n centerActive: Boolean,\n /** Если `true`, то при изменении активного компонента, контейнер будет прокручиваться так, чтобы он был виден. */\n scrollToActive: {\n type: Boolean,\n default: true\n },\n /** Добавляет классы к контейнеру slide group */\n contentClass: null,\n /** Добавляет inline-стили к контейнеру slide group */\n contentStyle: null,\n /**\n * Изменяет настройки отображения стрелок:\n * По умолчанию стрелки всегда отображаются на Desktop устройствах при переполнении контейнера.<br />\n * При переполнении контейнера на мобильных устройствах стрелки по умолчанию не отображаются.<br />\n * Значение «true» для параметра «show-arrows» позволяет отображать эти стрелки на мобильных устройствах при переполнении контейнера.<br />\n * Значение «desktop» всегда отображает стрелки на настольных устройствах, а значение «mobile» — на мобильных устройствах.<br />\n * Значение «always» всегда отображает стрелки как на настольных, так и на мобильных устройствах.<br />\n * Используйте значение «never», чтобы отключить отображение стрелок.\n */\n showArrows: {\n type: [Boolean, String],\n validator: (v: any) => typeof v === 'boolean' || ['always', 'desktop', 'mobile', 'never'].includes(v)\n },\n /** Иконка для кнопки \"следующий\". */\n nextIcon: {\n type: IconValue,\n default: 'next'\n },\n /** Иконка для кнопки \"предыдущий\". */\n prevIcon: {\n type: IconValue,\n default: 'prev'\n },\n\n /** **FOR INTERNAL USE ONLY** - Symbol used to identify slide group items. */\n symbol: {\n type: null,\n default: CdsSlideGroupSymbol\n },\n\n ...defineDisplayProps({ mobile: null }),\n ...defineDirectionProps(),\n ...defineComponentProps(),\n ...defineTagProps(),\n ...defineGroupProps({\n selectedClass: `${CdsSlideGroupItemConstants.rootClass}--active`\n })\n },\n CdsSlideGroupConstants.name\n);\n\nexport const defineCdsSlideGroupItemProps = propsFactory(\n {\n ...defineGroupItemProps()\n },\n CdsSlideGroupItemConstants.name\n);\n"],"names":[],"mappings":";;;;;;;;AAQO,MAAM,2BAA2B;AAAA,EACtC;AAAA;AAAA,IAEE,cAAc;AAAA;AAAA,IAEd,gBAAgB;AAAA,MACd,MAAM;AAAA,MACN,SAAS;AAAA,IAAA;AAAA;AAAA,IAGX,cAAc;AAAA;AAAA,IAEd,cAAc;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAUd,YAAY;AAAA,MACV,MAAM,CAAC,SAAS,MAAM;AAAA,MACtB,WAAW,CAAC,MAAW,OAAO,MAAM,aAAa,CAAC,UAAU,WAAW,UAAU,OAAO,EAAE,SAAS,CAAC;AAAA,IAAA;AAAA;AAAA,IAGtG,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IAAA;AAAA;AAAA,IAGX,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IAAA;AAAA;AAAA,IAIX,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,SAAS;AAAA,IAAA;AAAA,IAGX,GAAG,mBAAmB,EAAE,QAAQ,MAAM;AAAA,IACtC,GAAG,qBAAA;AAAA,IACH,GAAG,qBAAA;AAAA,IACH,GAAG,eAAA;AAAA,IACH,GAAG,iBAAiB;AAAA,MAClB,eAAe,GAAG,2BAA2B,SAAS;AAAA,IAAA,CACvD;AAAA,EAAA;AAAA,EAEH,uBAAuB;AACzB;AAEO,MAAM,+BAA+B;AAAA,EAC1C;AAAA,IACE,GAAG,qBAAA;AAAA,EAAqB;AAAA,EAE1B,2BAA2B;AAC7B;"}
1
+ {"version":3,"file":"CdsSlideGroup.props.js","sources":["../../../../../../src/components/CdsSlideGroup/api/CdsSlideGroup.props.ts"],"sourcesContent":["import { defineDirectionProps } from '@cds/composables/useDirection';\nimport { defineDisplayProps } from '@cds/composables/useDisplay';\nimport { defineGroupItemProps, defineGroupProps } from '@cds/composables/useGroup';\nimport { IconValue } from '@cds/composables/useIcons';\nimport { defineComponentProps, defineTagProps, propsFactory } from '@cds/core';\n\nimport { CdsSlideGroupConstants, CdsSlideGroupItemConstants, CdsSlideGroupSymbol } from './CdsSlideGroup.constants';\n\nexport const defineCdsSlideGroupProps = propsFactory(\n {\n /**\n * Принудительно выравнивает активный компонент по центру.\n * @en Forces the active component to be aligned to the center.\n */\n centerActive: Boolean,\n /**\n * Если `true`, то при изменении активного компонента, контейнер будет прокручиваться так, чтобы он был виден.\n * @en When `true`, the container scrolls the active component into view whenever it changes.\n */\n scrollToActive: {\n type: Boolean,\n default: true\n },\n /**\n * Добавляет классы к контейнеру slide group\n * @en Adds classes to the slide group container\n */\n contentClass: null,\n /**\n * Добавляет inline-стили к контейнеру slide group\n * @en Adds inline styles to the slide group container\n */\n contentStyle: null,\n /**\n * Изменяет настройки отображения стрелок:\n * По умолчанию стрелки всегда отображаются на Desktop устройствах при переполнении контейнера.<br />\n * При переполнении контейнера на мобильных устройствах стрелки по умолчанию не отображаются.<br />\n * Значение «true» для параметра «show-arrows» позволяет отображать эти стрелки на мобильных устройствах при переполнении контейнера.<br />\n * Значение «desktop» всегда отображает стрелки на настольных устройствах, а значение «mobile» — на мобильных устройствах.<br />\n * Значение «always» всегда отображает стрелки как на настольных, так и на мобильных устройствах.<br />\n * Используйте значение «never», чтобы отключить отображение стрелок.\n * @en Changes how the arrows are shown. By default the arrows appear on desktop devices when the container overflows and stay hidden on mobile devices. `true` also shows them on mobile on overflow, `desktop` always shows them on desktop, `mobile` always on mobile, `always` on both, and `never` disables the arrows.\n */\n showArrows: {\n type: [Boolean, String],\n validator: (v: any) => typeof v === 'boolean' || ['always', 'desktop', 'mobile', 'never'].includes(v)\n },\n /**\n * Иконка для кнопки \"следующий\".\n * @en Icon for the “next” button.\n */\n nextIcon: {\n type: IconValue,\n default: 'next'\n },\n /**\n * Иконка для кнопки \"предыдущий\".\n * @en Icon for the “previous” button.\n */\n prevIcon: {\n type: IconValue,\n default: 'prev'\n },\n\n /** **FOR INTERNAL USE ONLY** - Symbol used to identify slide group items. */\n symbol: {\n type: null,\n default: CdsSlideGroupSymbol\n },\n\n ...defineDisplayProps({ mobile: null }),\n ...defineDirectionProps(),\n ...defineComponentProps(),\n ...defineTagProps(),\n ...defineGroupProps({\n selectedClass: `${CdsSlideGroupItemConstants.rootClass}--active`\n })\n },\n CdsSlideGroupConstants.name\n);\n\nexport const defineCdsSlideGroupItemProps = propsFactory(\n {\n ...defineGroupItemProps()\n },\n CdsSlideGroupItemConstants.name\n);\n"],"names":[],"mappings":";;;;;;;;AAQO,MAAM,2BAA2B;AAAA,EACtC;AAAA;AAAA;AAAA;AAAA;AAAA,IAKE,cAAc;AAAA;AAAA;AAAA;AAAA;AAAA,IAKd,gBAAgB;AAAA,MACd,MAAM;AAAA,MACN,SAAS;AAAA,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMX,cAAc;AAAA;AAAA;AAAA;AAAA;AAAA,IAKd,cAAc;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAWd,YAAY;AAAA,MACV,MAAM,CAAC,SAAS,MAAM;AAAA,MACtB,WAAW,CAAC,MAAW,OAAO,MAAM,aAAa,CAAC,UAAU,WAAW,UAAU,OAAO,EAAE,SAAS,CAAC;AAAA,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMtG,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMX,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IAAA;AAAA;AAAA,IAIX,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,SAAS;AAAA,IAAA;AAAA,IAGX,GAAG,mBAAmB,EAAE,QAAQ,MAAM;AAAA,IACtC,GAAG,qBAAA;AAAA,IACH,GAAG,qBAAA;AAAA,IACH,GAAG,eAAA;AAAA,IACH,GAAG,iBAAiB;AAAA,MAClB,eAAe,GAAG,2BAA2B,SAAS;AAAA,IAAA,CACvD;AAAA,EAAA;AAAA,EAEH,uBAAuB;AACzB;AAEO,MAAM,+BAA+B;AAAA,EAC1C;AAAA,IACE,GAAG,qBAAA;AAAA,EAAqB;AAAA,EAE1B,2BAA2B;AAC7B;"}
@@ -1,21 +1,3 @@
1
- @charset "UTF-8";
2
- /*
3
- * Easing component
4
- * @type Map
5
- */
6
- /*
7
- * Get the transition-timing-function for a given easing and motion mode
8
- * @param {String} $type - Can be `ease-in-out`, `ease-in`, or `ease-out`
9
- * @param {String} $mode [basic] - Can be `basic` or `accent`
10
- * @param {Map} $easing [$easing] - Easing's map
11
- * @return {Function} CSS `cubic-bezier()` function
12
- */
13
- /*
14
- * Set the transition-timing-function for a given easing and motion mode
15
- * @param {Number} $duration — The dynamic duration in ms
16
- * @param {String} $type - The name of the easing curve to apply
17
- * @param {String} $mode - The mode for the easing curve to use
18
- */
19
1
  @layer cds-components {
20
2
  .cds-slide-view {
21
3
  overflow: hidden;
@@ -187,6 +187,10 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
187
187
  }
188
188
  }
189
189
  __expose({
190
+ /**
191
+ * Состояние группы слайдов: список элементов, активный слайд и методы переключения.
192
+ * @en State of the slide group: the list of elements, the active slide and the switching methods.
193
+ */
190
194
  group
191
195
  });
192
196
  return () => {
@@ -1 +1 @@
1
- {"version":3,"file":"CdsSlideView.vue_vue_type_script_setup_true_lang.js","sources":["../../../../../src/components/CdsSlideView/CdsSlideView.vue"],"sourcesContent":["<script setup lang=\"tsx\">\nimport './CdsSlideView.scss';\n\nimport { CdsFunctionalButton } from '@cds/components/CdsFunctionalButton';\nimport { provideTheme } from '@cds/composables';\nimport { useDirection } from '@cds/composables/useDirection';\nimport { useGroup } from '@cds/composables/useGroup';\nimport { useLocale, useRtl } from '@cds/composables/useLocale';\nimport { useDefaults } from '@cds/core';\nimport { Touch } from '@cds/directives';\nimport type { TouchHandlers } from '@cds/directives/touch';\nimport { classNames, getScrollParent, IN_BROWSER, keyNames } from '@cds/utils';\nimport { computed, nextTick, provide, ref, shallowRef, toRef, unref, watch } from 'vue';\n\nimport { CdsSlideViewConstants, CdsSlideViewGroupSymbol, CdsSlideViewSymbol } from './api/CdsSlideView.constants';\nimport { defineCdsSlideViewProps } from './api/CdsSlideView.props';\nimport type { CdsSlideViewEvents, CdsSlideViewSlots } from './api/CdsSlideView.types';\n\ndefineOptions({\n name: CdsSlideViewConstants.name,\n directives: { Touch }\n});\n\nconst _props = defineProps({ ...defineCdsSlideViewProps() });\nconst props = useDefaults(_props);\nconst slots = defineSlots<CdsSlideViewSlots>();\ndefineEmits([\"update:modelValue\"]);\n\nconst { themeClasses } = provideTheme(props);\nconst { isRtl } = useRtl();\nconst { t } = useLocale();\n\nconst group = useGroup(props, CdsSlideViewGroupSymbol);\n\nconst rootRef = ref();\nconst isRtlReverse = computed(() => (unref(isRtl) ? !props.reverse : props.reverse));\nconst isReversed = shallowRef(false);\nconst { isVertical, isHorizontal } = useDirection(props);\n\nconst transition = computed(() => {\n if (props.crossfade) {\n return `${CdsSlideViewConstants.rootClass}-crossfade-transition`;\n }\n\n const axis = unref(isVertical) ? 'y' : 'x';\n const reverse = unref(isRtlReverse) ? !unref(isReversed) : unref(isReversed);\n const direction = reverse ? '-reverse' : '';\n\n return `${CdsSlideViewConstants.rootClass}-${axis}${direction}-transition`;\n});\n\nconst transitionCount = shallowRef(0);\nconst transitionHeight = ref<undefined | string>(undefined);\n\nconst activeIndex = computed(() => {\n return group.items.value.findIndex((item) => group.selected.value.includes(item.id));\n});\n\nprovide(CdsSlideViewSymbol, {\n transition,\n isReversed,\n transitionCount,\n transitionHeight,\n rootRef\n});\n\nconst canMoveBack = toRef(() => props.continuous || activeIndex.value !== 0);\nconst canMoveForward = toRef(() => props.continuous || activeIndex.value !== group.items.value.length - 1);\n\nwatch(\n activeIndex,\n (newVal, oldVal) => {\n let scrollableParent: HTMLElement | undefined;\n const savedScrollPosition = { left: 0, top: 0 };\n\n if (IN_BROWSER && oldVal >= 0) {\n scrollableParent = getScrollParent(rootRef.value);\n\n savedScrollPosition.left = scrollableParent?.scrollLeft;\n savedScrollPosition.top = scrollableParent?.scrollTop;\n }\n\n const itemsLength = group.items.value.length;\n const lastIndex = itemsLength - 1;\n\n if (itemsLength <= 2) {\n isReversed.value = newVal < oldVal;\n } else if (newVal === lastIndex && oldVal === 0) {\n isReversed.value = false;\n } else if (newVal === 0 && oldVal === lastIndex) {\n isReversed.value = true;\n } else {\n isReversed.value = newVal < oldVal;\n }\n\n nextTick(() => {\n if (!IN_BROWSER || !scrollableParent) return;\n\n const currentScrollY = scrollableParent.scrollTop;\n\n if (currentScrollY !== savedScrollPosition.top) {\n scrollableParent.scrollTo({ ...savedScrollPosition, behavior: 'instant' });\n }\n\n requestAnimationFrame(() => {\n if (!scrollableParent) return;\n\n const rafScrollY = scrollableParent.scrollTop;\n\n if (rafScrollY !== savedScrollPosition.top) {\n scrollableParent.scrollTo({ ...savedScrollPosition, behavior: 'instant' });\n }\n });\n });\n },\n { flush: 'sync' }\n);\n\nconst arrows = computed(() => {\n const arrows = [];\n\n const prevProps = {\n icon: unref(isRtl) ? props.nextIcon : props.prevIcon,\n class: `${CdsSlideViewConstants.rootClass}__${unref(isRtlReverse) ? 'right' : 'left'}`,\n onClick: group.prev,\n 'aria-label': t('$cds.carousel.prev')\n };\n\n arrows.push(\n canMoveBack.value ? slots.prev ? slots.prev({ props: prevProps }) : <CdsFunctionalButton {...prevProps} /> : <div />\n );\n\n const nextProps = {\n icon: unref(isRtl) ? props.prevIcon : props.nextIcon,\n class: `${CdsSlideViewConstants.rootClass}__${unref(isRtlReverse) ? 'left' : 'right'}`,\n onClick: group.next,\n 'aria-label': t('$cds.carousel.next')\n };\n\n arrows.push(\n unref(canMoveForward) ? (\n slots.next ? (\n slots.next({ props: nextProps })\n ) : (\n <CdsFunctionalButton {...nextProps} />\n )\n ) : (\n <div />\n )\n );\n\n return arrows;\n});\n\nconst touchOptions = computed(() => {\n if (props.touch === false) return props.touch;\n\n const options: TouchHandlers = {\n left: () => {\n isRtlReverse.value ? prev() : next();\n },\n right: () => {\n isRtlReverse.value ? next() : prev();\n },\n start: ({ originalEvent }) => {\n originalEvent.stopPropagation();\n }\n };\n\n return {\n ...options,\n ...(props.touch === true ? {} : props.touch)\n };\n});\n\nfunction prev() {\n unref(canMoveBack) && group.prev();\n}\n\nfunction next() {\n unref(canMoveForward) && group.next();\n}\n\nfunction focusArrow(index: number) {\n const arrow = arrows.value[index];\n\n if (!arrow) return;\n\n const arrowEl = Array.isArray(arrow) ? arrow[0] : arrow;\n arrowEl.el?.focus();\n}\n\nfunction onKeyDown(e: KeyboardEvent) {\n if ((unref(isHorizontal) && e.key === keyNames.left) || (unref(isVertical) && e.key === keyNames.up)) {\n e.preventDefault();\n\n prev();\n\n nextTick(() => {\n unref(canMoveBack) ? focusArrow(0) : focusArrow(1);\n });\n }\n\n if ((unref(isHorizontal) && e.key === keyNames.right) || (unref(isVertical) && e.key === keyNames.down)) {\n e.preventDefault();\n\n next();\n\n nextTick(() => {\n unref(canMoveForward) ? focusArrow(1) : focusArrow(0);\n });\n }\n}\n\ndefineRender(() => {\n const { rootClass } = CdsSlideViewConstants;\n\n return (\n <props.tag\n ref={rootRef}\n class={classNames(\n rootClass,\n {\n [`${rootClass}--show-arrows-on-hover`]: props.showArrows === 'hover',\n [`${rootClass}--vertical-arrows`]: !!props.verticalArrows,\n [`${rootClass}--crossfade`]: props.crossfade\n },\n unref(themeClasses),\n props.class\n )}\n style={[props.style]}\n v-touch={unref(touchOptions)}\n >\n <div\n class={classNames(`${rootClass}__container`)}\n style={{\n height: unref(transitionHeight)\n }}\n >\n {slots.default?.({ group })}\n\n {props.showArrows !== false && (\n <div\n class={classNames(\n `${rootClass}__controls`,\n { [`${rootClass}__controls--left`]: props.verticalArrows === 'left' || props.verticalArrows === true },\n { [`${rootClass}__controls--right`]: props.verticalArrows === 'right' }\n )}\n onKeydown={onKeyDown}\n >\n {unref(arrows)}\n </div>\n )}\n </div>\n\n {slots.additional?.({ group })}\n </props.tag>\n );\n});\n\ndefineExpose({\n group\n});\n</script>\n"],"names":["_props","__props","props","useDefaults","slots","_useSlots","themeClasses","provideTheme","isRtl","useRtl","t","useLocale","group","useGroup","CdsSlideViewGroupSymbol","rootRef","ref","isRtlReverse","computed","unref","reverse","isReversed","shallowRef","isVertical","isHorizontal","useDirection","transition","crossfade","CdsSlideViewConstants","rootClass","axis","direction","transitionCount","transitionHeight","undefined","activeIndex","items","value","findIndex","item","selected","includes","id","provide","CdsSlideViewSymbol","canMoveBack","toRef","continuous","canMoveForward","length","watch","newVal","oldVal","scrollableParent","savedScrollPosition","left","top","IN_BROWSER","getScrollParent","scrollLeft","scrollTop","itemsLength","lastIndex","nextTick","currentScrollY","scrollTo","behavior","requestAnimationFrame","rafScrollY","flush","arrows","prevProps","icon","nextIcon","prevIcon","class","onClick","prev","push","_createVNode","CdsFunctionalButton","nextProps","next","touchOptions","touch","options","right","start","originalEvent","stopPropagation","focusArrow","index","arrow","arrowEl","Array","isArray","el","focus","onKeyDown","e","key","keyNames","up","preventDefault","down","__expose","_withDirectives","tag","classNames","showArrows","verticalArrows","style","default","height","additional","_resolveDirective"],"mappings":"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"}
1
+ {"version":3,"file":"CdsSlideView.vue_vue_type_script_setup_true_lang.js","sources":["../../../../../src/components/CdsSlideView/CdsSlideView.vue"],"sourcesContent":["<script setup lang=\"tsx\">\nimport './CdsSlideView.scss';\n\nimport { CdsFunctionalButton } from '@cds/components/CdsFunctionalButton';\nimport { provideTheme } from '@cds/composables';\nimport { useDirection } from '@cds/composables/useDirection';\nimport { useGroup } from '@cds/composables/useGroup';\nimport { useLocale, useRtl } from '@cds/composables/useLocale';\nimport { useDefaults } from '@cds/core';\nimport { Touch } from '@cds/directives';\nimport type { TouchHandlers } from '@cds/directives/touch';\nimport { classNames, getScrollParent, IN_BROWSER, keyNames } from '@cds/utils';\nimport { computed, nextTick, provide, ref, shallowRef, toRef, unref, watch } from 'vue';\n\nimport { CdsSlideViewConstants, CdsSlideViewGroupSymbol, CdsSlideViewSymbol } from './api/CdsSlideView.constants';\nimport { defineCdsSlideViewProps } from './api/CdsSlideView.props';\nimport type { CdsSlideViewEvents, CdsSlideViewSlots } from './api/CdsSlideView.types';\n\ndefineOptions({\n name: CdsSlideViewConstants.name,\n directives: { Touch }\n});\n\nconst _props = defineProps({ ...defineCdsSlideViewProps() });\nconst props = useDefaults(_props);\nconst slots = defineSlots<CdsSlideViewSlots>();\ndefineEmits([\"update:modelValue\"]);\n\nconst { themeClasses } = provideTheme(props);\nconst { isRtl } = useRtl();\nconst { t } = useLocale();\n\nconst group = useGroup(props, CdsSlideViewGroupSymbol);\n\nconst rootRef = ref();\nconst isRtlReverse = computed(() => (unref(isRtl) ? !props.reverse : props.reverse));\nconst isReversed = shallowRef(false);\nconst { isVertical, isHorizontal } = useDirection(props);\n\nconst transition = computed(() => {\n if (props.crossfade) {\n return `${CdsSlideViewConstants.rootClass}-crossfade-transition`;\n }\n\n const axis = unref(isVertical) ? 'y' : 'x';\n const reverse = unref(isRtlReverse) ? !unref(isReversed) : unref(isReversed);\n const direction = reverse ? '-reverse' : '';\n\n return `${CdsSlideViewConstants.rootClass}-${axis}${direction}-transition`;\n});\n\nconst transitionCount = shallowRef(0);\nconst transitionHeight = ref<undefined | string>(undefined);\n\nconst activeIndex = computed(() => {\n return group.items.value.findIndex((item) => group.selected.value.includes(item.id));\n});\n\nprovide(CdsSlideViewSymbol, {\n transition,\n isReversed,\n transitionCount,\n transitionHeight,\n rootRef\n});\n\nconst canMoveBack = toRef(() => props.continuous || activeIndex.value !== 0);\nconst canMoveForward = toRef(() => props.continuous || activeIndex.value !== group.items.value.length - 1);\n\nwatch(\n activeIndex,\n (newVal, oldVal) => {\n let scrollableParent: HTMLElement | undefined;\n const savedScrollPosition = { left: 0, top: 0 };\n\n if (IN_BROWSER && oldVal >= 0) {\n scrollableParent = getScrollParent(rootRef.value);\n\n savedScrollPosition.left = scrollableParent?.scrollLeft;\n savedScrollPosition.top = scrollableParent?.scrollTop;\n }\n\n const itemsLength = group.items.value.length;\n const lastIndex = itemsLength - 1;\n\n if (itemsLength <= 2) {\n isReversed.value = newVal < oldVal;\n } else if (newVal === lastIndex && oldVal === 0) {\n isReversed.value = false;\n } else if (newVal === 0 && oldVal === lastIndex) {\n isReversed.value = true;\n } else {\n isReversed.value = newVal < oldVal;\n }\n\n nextTick(() => {\n if (!IN_BROWSER || !scrollableParent) return;\n\n const currentScrollY = scrollableParent.scrollTop;\n\n if (currentScrollY !== savedScrollPosition.top) {\n scrollableParent.scrollTo({ ...savedScrollPosition, behavior: 'instant' });\n }\n\n requestAnimationFrame(() => {\n if (!scrollableParent) return;\n\n const rafScrollY = scrollableParent.scrollTop;\n\n if (rafScrollY !== savedScrollPosition.top) {\n scrollableParent.scrollTo({ ...savedScrollPosition, behavior: 'instant' });\n }\n });\n });\n },\n { flush: 'sync' }\n);\n\nconst arrows = computed(() => {\n const arrows = [];\n\n const prevProps = {\n icon: unref(isRtl) ? props.nextIcon : props.prevIcon,\n class: `${CdsSlideViewConstants.rootClass}__${unref(isRtlReverse) ? 'right' : 'left'}`,\n onClick: group.prev,\n 'aria-label': t('$cds.carousel.prev')\n };\n\n arrows.push(\n canMoveBack.value ? slots.prev ? slots.prev({ props: prevProps }) : <CdsFunctionalButton {...prevProps} /> : <div />\n );\n\n const nextProps = {\n icon: unref(isRtl) ? props.prevIcon : props.nextIcon,\n class: `${CdsSlideViewConstants.rootClass}__${unref(isRtlReverse) ? 'left' : 'right'}`,\n onClick: group.next,\n 'aria-label': t('$cds.carousel.next')\n };\n\n arrows.push(\n unref(canMoveForward) ? (\n slots.next ? (\n slots.next({ props: nextProps })\n ) : (\n <CdsFunctionalButton {...nextProps} />\n )\n ) : (\n <div />\n )\n );\n\n return arrows;\n});\n\nconst touchOptions = computed(() => {\n if (props.touch === false) return props.touch;\n\n const options: TouchHandlers = {\n left: () => {\n isRtlReverse.value ? prev() : next();\n },\n right: () => {\n isRtlReverse.value ? next() : prev();\n },\n start: ({ originalEvent }) => {\n originalEvent.stopPropagation();\n }\n };\n\n return {\n ...options,\n ...(props.touch === true ? {} : props.touch)\n };\n});\n\nfunction prev() {\n unref(canMoveBack) && group.prev();\n}\n\nfunction next() {\n unref(canMoveForward) && group.next();\n}\n\nfunction focusArrow(index: number) {\n const arrow = arrows.value[index];\n\n if (!arrow) return;\n\n const arrowEl = Array.isArray(arrow) ? arrow[0] : arrow;\n arrowEl.el?.focus();\n}\n\nfunction onKeyDown(e: KeyboardEvent) {\n if ((unref(isHorizontal) && e.key === keyNames.left) || (unref(isVertical) && e.key === keyNames.up)) {\n e.preventDefault();\n\n prev();\n\n nextTick(() => {\n unref(canMoveBack) ? focusArrow(0) : focusArrow(1);\n });\n }\n\n if ((unref(isHorizontal) && e.key === keyNames.right) || (unref(isVertical) && e.key === keyNames.down)) {\n e.preventDefault();\n\n next();\n\n nextTick(() => {\n unref(canMoveForward) ? focusArrow(1) : focusArrow(0);\n });\n }\n}\n\ndefineRender(() => {\n const { rootClass } = CdsSlideViewConstants;\n\n return (\n <props.tag\n ref={rootRef}\n class={classNames(\n rootClass,\n {\n [`${rootClass}--show-arrows-on-hover`]: props.showArrows === 'hover',\n [`${rootClass}--vertical-arrows`]: !!props.verticalArrows,\n [`${rootClass}--crossfade`]: props.crossfade\n },\n unref(themeClasses),\n props.class\n )}\n style={[props.style]}\n v-touch={unref(touchOptions)}\n >\n <div\n class={classNames(`${rootClass}__container`)}\n style={{\n height: unref(transitionHeight)\n }}\n >\n {slots.default?.({ group })}\n\n {props.showArrows !== false && (\n <div\n class={classNames(\n `${rootClass}__controls`,\n { [`${rootClass}__controls--left`]: props.verticalArrows === 'left' || props.verticalArrows === true },\n { [`${rootClass}__controls--right`]: props.verticalArrows === 'right' }\n )}\n onKeydown={onKeyDown}\n >\n {unref(arrows)}\n </div>\n )}\n </div>\n\n {slots.additional?.({ group })}\n </props.tag>\n );\n});\n\ndefineExpose({\n /**\n * Состояние группы слайдов: список элементов, активный слайд и методы переключения.\n * @en State of the slide group: the list of elements, the active slide and the switching methods.\n */\n group\n});\n</script>\n"],"names":["_props","__props","props","useDefaults","slots","_useSlots","themeClasses","provideTheme","isRtl","useRtl","t","useLocale","group","useGroup","CdsSlideViewGroupSymbol","rootRef","ref","isRtlReverse","computed","unref","reverse","isReversed","shallowRef","isVertical","isHorizontal","useDirection","transition","crossfade","CdsSlideViewConstants","rootClass","axis","direction","transitionCount","transitionHeight","undefined","activeIndex","items","value","findIndex","item","selected","includes","id","provide","CdsSlideViewSymbol","canMoveBack","toRef","continuous","canMoveForward","length","watch","newVal","oldVal","scrollableParent","savedScrollPosition","left","top","IN_BROWSER","getScrollParent","scrollLeft","scrollTop","itemsLength","lastIndex","nextTick","currentScrollY","scrollTo","behavior","requestAnimationFrame","rafScrollY","flush","arrows","prevProps","icon","nextIcon","prevIcon","class","onClick","prev","push","_createVNode","CdsFunctionalButton","nextProps","next","touchOptions","touch","options","right","start","originalEvent","stopPropagation","focusArrow","index","arrow","arrowEl","Array","isArray","el","focus","onKeyDown","e","key","keyNames","up","preventDefault","down","__expose","_withDirectives","tag","classNames","showArrows","verticalArrows","style","default","height","additional","_resolveDirective"],"mappings":"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"}
@@ -16,7 +16,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
16
16
  props: {
17
17
  ...defineCdsSlideViewItemProps()
18
18
  },
19
- emits: [],
19
+ emits: ["group:selected"],
20
20
  setup(__props, {
21
21
  expose: __expose
22
22
  }) {
@@ -79,6 +79,10 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
79
79
  });
80
80
  }
81
81
  __expose({
82
+ /**
83
+ * Состояние слайда в группе: выбран ли он, его значение и метод переключения.
84
+ * @en State of the slide inside the group: whether it is selected, its value and the toggle method.
85
+ */
82
86
  groupItem
83
87
  });
84
88
  return () => {
@@ -1 +1 @@
1
- {"version":3,"file":"CdsSlideViewItem.vue_vue_type_script_setup_true_lang.js","sources":["../../../../../src/components/CdsSlideView/CdsSlideViewItem.vue"],"sourcesContent":["<script setup lang=\"tsx\">\nimport { useGroupItem } from '@cds/composables/useGroup';\nimport { useLazy } from '@cds/composables/useLazy';\nimport { useSsrBoot } from '@cds/composables/useSsrBoot';\nimport { MaybeTransition } from '@cds/composables/useTransition';\nimport { useDefaults } from '@cds/core';\nimport { classNames, convertToUnit } from '@cds/utils';\nimport { computed, inject, nextTick, shallowRef, unref } from 'vue';\n\nimport { CdsSlideViewGroupSymbol, CdsSlideViewItemConstants, CdsSlideViewSymbol } from './api/CdsSlideView.constants';\nimport { defineCdsSlideViewItemProps } from './api/CdsSlideView.props';\nimport type { CdsSlideViewItemEvents, CdsSlideViewItemSlots } from './api/CdsSlideView.types';\n\ndefineOptions({\n name: CdsSlideViewItemConstants.name\n});\n\nconst _props = defineProps({ ...defineCdsSlideViewItemProps() });\nconst props = useDefaults(_props);\nconst slots = defineSlots<CdsSlideViewItemSlots>();\ndefineEmits([]);\n\nconst slideView = inject(CdsSlideViewSymbol);\nconst groupItem = useGroupItem(props, CdsSlideViewGroupSymbol);\nconst { isBooted } = useSsrBoot();\n\nif (!slideView || !groupItem) throw new Error('[CDS] CdsSlideViewItem must be used inside a CdsSlideView');\n\nconst isTransitioning = shallowRef(false);\nconst hasTransition = computed(\n () =>\n unref(isBooted) && (unref(slideView.isReversed) ? props.reverseTransition !== false : props.transition !== false)\n);\nconst { hasContent } = useLazy(props, groupItem.isSelected);\n\nconst transition = computed(() => {\n const name = slideView.isReversed.value ? props.reverseTransition : props.transition;\n\n return !hasTransition.value\n ? false\n : {\n name: typeof name !== 'string' ? slideView.transition.value : name,\n onBeforeEnter: onBeforeTransition,\n onAfterEnter: onAfterTransition,\n onEnterCancelled: onTransitionCancelled,\n onBeforeLeave: onBeforeTransition,\n onAfterLeave: onAfterTransition,\n onLeaveCancelled: onTransitionCancelled,\n onEnter: onEnterTransition\n };\n});\n\nfunction onAfterTransition() {\n if (!isTransitioning.value || !slideView) return;\n\n isTransitioning.value = false;\n if (slideView.transitionCount.value > 0) {\n slideView.transitionCount.value -= 1;\n\n if (slideView.transitionCount.value === 0) {\n slideView.transitionHeight.value = undefined;\n }\n }\n}\n\nfunction onBeforeTransition() {\n if (isTransitioning.value || !slideView) return;\n\n isTransitioning.value = true;\n\n if (slideView.transitionCount.value === 0) {\n slideView.transitionHeight.value = convertToUnit(slideView.rootRef.value?.clientHeight);\n }\n\n slideView.transitionCount.value += 1;\n}\n\nfunction onTransitionCancelled() {\n onAfterTransition();\n}\n\nfunction onEnterTransition(el: Element) {\n if (!isTransitioning.value) return;\n\n nextTick(() => {\n if (!hasTransition.value || !isTransitioning.value || !slideView) {\n return;\n }\n\n slideView.transitionHeight.value = convertToUnit(el.clientHeight);\n });\n}\n\ndefineRender(() => {\n const { rootClass } = CdsSlideViewItemConstants;\n\n return (\n <MaybeTransition transition={unref(transition)} disabled={!unref(isBooted)}>\n <div\n v-show={unref(groupItem.isSelected)}\n class={classNames(rootClass, unref(groupItem.selectedClass), props.class)}\n style={props.style}\n >\n {unref(hasContent) && slots.default?.()}\n </div>\n </MaybeTransition>\n );\n});\n\ndefineExpose({\n groupItem\n});\n</script>\n"],"names":["_props","__props","props","useDefaults","slots","_useSlots","slideView","inject","CdsSlideViewSymbol","groupItem","useGroupItem","CdsSlideViewGroupSymbol","isBooted","useSsrBoot","Error","isTransitioning","shallowRef","hasTransition","computed","unref","isReversed","reverseTransition","transition","hasContent","useLazy","isSelected","name","value","onBeforeEnter","onBeforeTransition","onAfterEnter","onAfterTransition","onEnterCancelled","onTransitionCancelled","onBeforeLeave","onAfterLeave","onLeaveCancelled","onEnter","onEnterTransition","transitionCount","transitionHeight","undefined","convertToUnit","rootRef","clientHeight","el","nextTick","__expose","rootClass","CdsSlideViewItemConstants","_createVNode","MaybeTransition","default","_withDirectives","classNames","selectedClass","class","style","_vShow"],"mappings":"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"}
1
+ {"version":3,"file":"CdsSlideViewItem.vue_vue_type_script_setup_true_lang.js","sources":["../../../../../src/components/CdsSlideView/CdsSlideViewItem.vue"],"sourcesContent":["<script setup lang=\"tsx\">\nimport { useGroupItem } from '@cds/composables/useGroup';\nimport { useLazy } from '@cds/composables/useLazy';\nimport { useSsrBoot } from '@cds/composables/useSsrBoot';\nimport { MaybeTransition } from '@cds/composables/useTransition';\nimport { useDefaults } from '@cds/core';\nimport { classNames, convertToUnit } from '@cds/utils';\nimport { computed, inject, nextTick, shallowRef, unref } from 'vue';\n\nimport { CdsSlideViewGroupSymbol, CdsSlideViewItemConstants, CdsSlideViewSymbol } from './api/CdsSlideView.constants';\nimport { defineCdsSlideViewItemProps } from './api/CdsSlideView.props';\nimport type { CdsSlideViewItemEvents, CdsSlideViewItemSlots } from './api/CdsSlideView.types';\n\ndefineOptions({\n name: CdsSlideViewItemConstants.name\n});\n\nconst _props = defineProps({ ...defineCdsSlideViewItemProps() });\nconst props = useDefaults(_props);\nconst slots = defineSlots<CdsSlideViewItemSlots>();\ndefineEmits([\"group:selected\"]);\n\nconst slideView = inject(CdsSlideViewSymbol);\nconst groupItem = useGroupItem(props, CdsSlideViewGroupSymbol);\nconst { isBooted } = useSsrBoot();\n\nif (!slideView || !groupItem) throw new Error('[CDS] CdsSlideViewItem must be used inside a CdsSlideView');\n\nconst isTransitioning = shallowRef(false);\nconst hasTransition = computed(\n () =>\n unref(isBooted) && (unref(slideView.isReversed) ? props.reverseTransition !== false : props.transition !== false)\n);\nconst { hasContent } = useLazy(props, groupItem.isSelected);\n\nconst transition = computed(() => {\n const name = slideView.isReversed.value ? props.reverseTransition : props.transition;\n\n return !hasTransition.value\n ? false\n : {\n name: typeof name !== 'string' ? slideView.transition.value : name,\n onBeforeEnter: onBeforeTransition,\n onAfterEnter: onAfterTransition,\n onEnterCancelled: onTransitionCancelled,\n onBeforeLeave: onBeforeTransition,\n onAfterLeave: onAfterTransition,\n onLeaveCancelled: onTransitionCancelled,\n onEnter: onEnterTransition\n };\n});\n\nfunction onAfterTransition() {\n if (!isTransitioning.value || !slideView) return;\n\n isTransitioning.value = false;\n if (slideView.transitionCount.value > 0) {\n slideView.transitionCount.value -= 1;\n\n if (slideView.transitionCount.value === 0) {\n slideView.transitionHeight.value = undefined;\n }\n }\n}\n\nfunction onBeforeTransition() {\n if (isTransitioning.value || !slideView) return;\n\n isTransitioning.value = true;\n\n if (slideView.transitionCount.value === 0) {\n slideView.transitionHeight.value = convertToUnit(slideView.rootRef.value?.clientHeight);\n }\n\n slideView.transitionCount.value += 1;\n}\n\nfunction onTransitionCancelled() {\n onAfterTransition();\n}\n\nfunction onEnterTransition(el: Element) {\n if (!isTransitioning.value) return;\n\n nextTick(() => {\n if (!hasTransition.value || !isTransitioning.value || !slideView) {\n return;\n }\n\n slideView.transitionHeight.value = convertToUnit(el.clientHeight);\n });\n}\n\ndefineRender(() => {\n const { rootClass } = CdsSlideViewItemConstants;\n\n return (\n <MaybeTransition transition={unref(transition)} disabled={!unref(isBooted)}>\n <div\n v-show={unref(groupItem.isSelected)}\n class={classNames(rootClass, unref(groupItem.selectedClass), props.class)}\n style={props.style}\n >\n {unref(hasContent) && slots.default?.()}\n </div>\n </MaybeTransition>\n );\n});\n\ndefineExpose({\n /**\n * Состояние слайда в группе: выбран ли он, его значение и метод переключения.\n * @en State of the slide inside the group: whether it is selected, its value and the toggle method.\n */\n groupItem\n});\n</script>\n"],"names":["_props","__props","props","useDefaults","slots","_useSlots","slideView","inject","CdsSlideViewSymbol","groupItem","useGroupItem","CdsSlideViewGroupSymbol","isBooted","useSsrBoot","Error","isTransitioning","shallowRef","hasTransition","computed","unref","isReversed","reverseTransition","transition","hasContent","useLazy","isSelected","name","value","onBeforeEnter","onBeforeTransition","onAfterEnter","onAfterTransition","onEnterCancelled","onTransitionCancelled","onBeforeLeave","onAfterLeave","onLeaveCancelled","onEnter","onEnterTransition","transitionCount","transitionHeight","undefined","convertToUnit","rootRef","clientHeight","el","nextTick","__expose","rootClass","CdsSlideViewItemConstants","_createVNode","MaybeTransition","default","_withDirectives","classNames","selectedClass","class","style","_vShow"],"mappings":"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"}
@@ -9,26 +9,62 @@ import { C as CdsSlideViewConstants } from "./CdsSlideView.constants.js";
9
9
  import { d as defineThemeProps } from "../../../composables/useTheme/useTheme.js";
10
10
  const defineCdsSlideViewProps = propsFactory(
11
11
  {
12
+ /**
13
+ * Зацикливает перелистывание: с последнего слайда переход ведёт на первый и наоборот
14
+ * @en Loops the navigation: from the last slide you move to the first one and back
15
+ */
12
16
  continuous: Boolean,
17
+ /**
18
+ * Инвертирует направление анимации перехода между слайдами
19
+ * @en Inverts the direction of the transition animation between slides
20
+ */
13
21
  reverse: Boolean,
22
+ /**
23
+ * Показывает стрелки навигации. `'hover'` — только при наведении на компонент
24
+ * @en Shows the navigation arrows. `'hover'` — only while the pointer is over the component
25
+ */
14
26
  showArrows: {
15
27
  type: [Boolean, String],
16
28
  validator: (v) => typeof v === "boolean" || v === "hover"
17
29
  },
30
+ /**
31
+ * Размещает стрелки навигации вертикально: `'left'` или `'right'` — сторона, `true` — сторона по умолчанию
32
+ * @en Places the navigation arrows vertically: `'left'` or `'right'` — the side, `true` — the default side
33
+ */
18
34
  verticalArrows: [Boolean, String],
35
+ /**
36
+ * Иконка кнопки перехода к следующему слайду
37
+ * @en Icon of the button that moves to the next slide
38
+ */
19
39
  nextIcon: {
20
40
  type: [Boolean, String, Function, Object],
21
41
  default: "next"
22
42
  },
43
+ /**
44
+ * Иконка кнопки перехода к предыдущему слайду
45
+ * @en Icon of the button that moves to the previous slide
46
+ */
23
47
  prevIcon: {
24
48
  type: [Boolean, String, Function, Object],
25
49
  default: "prev"
26
50
  },
51
+ /**
52
+ * Управление перелистыванием свайпом: `false` отключает жесты, объект задаёт собственные обработчики касаний
53
+ * @en Controls swipe navigation: `false` turns the gestures off, an object sets your own touch handlers
54
+ */
27
55
  touch: {
28
56
  type: [Object, Boolean],
29
57
  default: void 0
30
58
  },
59
+ /**
60
+ * Слайды сменяются плавным перекрестным затуханием вместо сдвига
61
+ * @en Slides change with a smooth crossfade instead of a shift
62
+ */
31
63
  crossfade: Boolean,
64
+ /**
65
+ * Длительность анимации перехода между слайдами в миллисекундах
66
+ * @en Duration of the transition animation between slides, in milliseconds
67
+ */
32
68
  transitionDuration: Number,
33
69
  ...defineGroupProps(),
34
70
  ...defineDirectionProps(),
@@ -41,10 +77,18 @@ const defineCdsSlideViewProps = propsFactory(
41
77
  );
42
78
  const defineCdsSlideViewItemProps = propsFactory(
43
79
  {
80
+ /**
81
+ * Переход при показе слайда в обратном направлении. Имя transition-компонента или `false`, чтобы отключить анимацию
82
+ * @en Transition used when the slide appears in the reverse direction. A transition component name, or `false` to turn the animation off
83
+ */
44
84
  reverseTransition: {
45
85
  type: [Boolean, String],
46
86
  default: void 0
47
87
  },
88
+ /**
89
+ * Переход при показе слайда в прямом направлении. Имя transition-компонента или `false`, чтобы отключить анимацию
90
+ * @en Transition used when the slide appears in the forward direction. A transition component name, or `false` to turn the animation off
91
+ */
48
92
  transition: {
49
93
  type: [Boolean, String],
50
94
  default: void 0
@@ -1 +1 @@
1
- {"version":3,"file":"CdsSlideView.props.js","sources":["../../../../../../src/components/CdsSlideView/api/CdsSlideView.props.ts"],"sourcesContent":["import { defineDirectionProps } from '@cds/composables/useDirection';\nimport { defineDisabledProps } from '@cds/composables/useDisabled';\nimport { defineGroupItemProps, defineGroupProps } from '@cds/composables/useGroup';\nimport type { IconValue } from '@cds/composables/useIcons';\nimport { defineLazyProps } from '@cds/composables/useLazy';\nimport { defineThemeProps } from '@cds/composables/useTheme';\nimport { defineComponentProps, defineTagProps, propsFactory } from '@cds/core';\nimport type { TouchHandlers } from '@cds/directives/touch';\nimport type { PropType } from 'vue';\n\nimport { CdsSlideViewConstants } from './CdsSlideView.constants';\n\nexport const defineCdsSlideViewProps = propsFactory(\n {\n continuous: Boolean,\n reverse: Boolean,\n showArrows: {\n type: [Boolean, String],\n validator: (v: any) => typeof v === 'boolean' || v === 'hover'\n },\n verticalArrows: [Boolean, String] as PropType<boolean | 'left' | 'right'>,\n nextIcon: {\n type: [Boolean, String, Function, Object] as PropType<IconValue>,\n default: 'next'\n },\n prevIcon: {\n type: [Boolean, String, Function, Object] as PropType<IconValue>,\n default: 'prev'\n },\n touch: {\n type: [Object, Boolean] as PropType<boolean | TouchHandlers>,\n default: undefined\n },\n crossfade: Boolean,\n transitionDuration: Number,\n\n ...defineGroupProps(),\n ...defineDirectionProps(),\n ...defineDisabledProps(),\n ...defineComponentProps(),\n ...defineTagProps(),\n ...defineThemeProps()\n },\n CdsSlideViewConstants.name\n);\n\nexport const defineCdsSlideViewItemProps = propsFactory(\n {\n reverseTransition: {\n type: [Boolean, String],\n default: undefined\n },\n transition: {\n type: [Boolean, String],\n default: undefined\n },\n\n ...defineGroupItemProps(),\n ...defineComponentProps(),\n ...defineLazyProps()\n },\n CdsSlideViewConstants.name\n);\n"],"names":[],"mappings":";;;;;;;;;AAYO,MAAM,0BAA0B;AAAA,EACrC;AAAA,IACE,YAAY;AAAA,IACZ,SAAS;AAAA,IACT,YAAY;AAAA,MACV,MAAM,CAAC,SAAS,MAAM;AAAA,MACtB,WAAW,CAAC,MAAW,OAAO,MAAM,aAAa,MAAM;AAAA,IAAA;AAAA,IAEzD,gBAAgB,CAAC,SAAS,MAAM;AAAA,IAChC,UAAU;AAAA,MACR,MAAM,CAAC,SAAS,QAAQ,UAAU,MAAM;AAAA,MACxC,SAAS;AAAA,IAAA;AAAA,IAEX,UAAU;AAAA,MACR,MAAM,CAAC,SAAS,QAAQ,UAAU,MAAM;AAAA,MACxC,SAAS;AAAA,IAAA;AAAA,IAEX,OAAO;AAAA,MACL,MAAM,CAAC,QAAQ,OAAO;AAAA,MACtB,SAAS;AAAA,IAAA;AAAA,IAEX,WAAW;AAAA,IACX,oBAAoB;AAAA,IAEpB,GAAG,iBAAA;AAAA,IACH,GAAG,qBAAA;AAAA,IACH,GAAG,oBAAA;AAAA,IACH,GAAG,qBAAA;AAAA,IACH,GAAG,eAAA;AAAA,IACH,GAAG,iBAAA;AAAA,EAAiB;AAAA,EAEtB,sBAAsB;AACxB;AAEO,MAAM,8BAA8B;AAAA,EACzC;AAAA,IACE,mBAAmB;AAAA,MACjB,MAAM,CAAC,SAAS,MAAM;AAAA,MACtB,SAAS;AAAA,IAAA;AAAA,IAEX,YAAY;AAAA,MACV,MAAM,CAAC,SAAS,MAAM;AAAA,MACtB,SAAS;AAAA,IAAA;AAAA,IAGX,GAAG,qBAAA;AAAA,IACH,GAAG,qBAAA;AAAA,IACH,GAAG,gBAAA;AAAA,EAAgB;AAAA,EAErB,sBAAsB;AACxB;"}
1
+ {"version":3,"file":"CdsSlideView.props.js","sources":["../../../../../../src/components/CdsSlideView/api/CdsSlideView.props.ts"],"sourcesContent":["import { defineDirectionProps } from '@cds/composables/useDirection';\nimport { defineDisabledProps } from '@cds/composables/useDisabled';\nimport { defineGroupItemProps, defineGroupProps } from '@cds/composables/useGroup';\nimport type { IconValue } from '@cds/composables/useIcons';\nimport { defineLazyProps } from '@cds/composables/useLazy';\nimport { defineThemeProps } from '@cds/composables/useTheme';\nimport { defineComponentProps, defineTagProps, propsFactory } from '@cds/core';\nimport type { TouchHandlers } from '@cds/directives/touch';\nimport type { PropType } from 'vue';\n\nimport { CdsSlideViewConstants } from './CdsSlideView.constants';\n\nexport const defineCdsSlideViewProps = propsFactory(\n {\n /**\n * Зацикливает перелистывание: с последнего слайда переход ведёт на первый и наоборот\n * @en Loops the navigation: from the last slide you move to the first one and back\n */\n continuous: Boolean,\n /**\n * Инвертирует направление анимации перехода между слайдами\n * @en Inverts the direction of the transition animation between slides\n */\n reverse: Boolean,\n /**\n * Показывает стрелки навигации. `'hover'` — только при наведении на компонент\n * @en Shows the navigation arrows. `'hover'` — only while the pointer is over the component\n */\n showArrows: {\n type: [Boolean, String],\n validator: (v: any) => typeof v === 'boolean' || v === 'hover'\n },\n /**\n * Размещает стрелки навигации вертикально: `'left'` или `'right'` — сторона, `true` — сторона по умолчанию\n * @en Places the navigation arrows vertically: `'left'` or `'right'` — the side, `true` — the default side\n */\n verticalArrows: [Boolean, String] as PropType<boolean | 'left' | 'right'>,\n /**\n * Иконка кнопки перехода к следующему слайду\n * @en Icon of the button that moves to the next slide\n */\n nextIcon: {\n type: [Boolean, String, Function, Object] as PropType<IconValue>,\n default: 'next'\n },\n /**\n * Иконка кнопки перехода к предыдущему слайду\n * @en Icon of the button that moves to the previous slide\n */\n prevIcon: {\n type: [Boolean, String, Function, Object] as PropType<IconValue>,\n default: 'prev'\n },\n /**\n * Управление перелистыванием свайпом: `false` отключает жесты, объект задаёт собственные обработчики касаний\n * @en Controls swipe navigation: `false` turns the gestures off, an object sets your own touch handlers\n */\n touch: {\n type: [Object, Boolean] as PropType<boolean | TouchHandlers>,\n default: undefined\n },\n /**\n * Слайды сменяются плавным перекрестным затуханием вместо сдвига\n * @en Slides change with a smooth crossfade instead of a shift\n */\n crossfade: Boolean,\n /**\n * Длительность анимации перехода между слайдами в миллисекундах\n * @en Duration of the transition animation between slides, in milliseconds\n */\n transitionDuration: Number,\n\n ...defineGroupProps(),\n ...defineDirectionProps(),\n ...defineDisabledProps(),\n ...defineComponentProps(),\n ...defineTagProps(),\n ...defineThemeProps()\n },\n CdsSlideViewConstants.name\n);\n\nexport const defineCdsSlideViewItemProps = propsFactory(\n {\n /**\n * Переход при показе слайда в обратном направлении. Имя transition-компонента или `false`, чтобы отключить анимацию\n * @en Transition used when the slide appears in the reverse direction. A transition component name, or `false` to turn the animation off\n */\n reverseTransition: {\n type: [Boolean, String],\n default: undefined\n },\n /**\n * Переход при показе слайда в прямом направлении. Имя transition-компонента или `false`, чтобы отключить анимацию\n * @en Transition used when the slide appears in the forward direction. A transition component name, or `false` to turn the animation off\n */\n transition: {\n type: [Boolean, String],\n default: undefined\n },\n\n ...defineGroupItemProps(),\n ...defineComponentProps(),\n ...defineLazyProps()\n },\n CdsSlideViewConstants.name\n);\n"],"names":[],"mappings":";;;;;;;;;AAYO,MAAM,0BAA0B;AAAA,EACrC;AAAA;AAAA;AAAA;AAAA;AAAA,IAKE,YAAY;AAAA;AAAA;AAAA;AAAA;AAAA,IAKZ,SAAS;AAAA;AAAA;AAAA;AAAA;AAAA,IAKT,YAAY;AAAA,MACV,MAAM,CAAC,SAAS,MAAM;AAAA,MACtB,WAAW,CAAC,MAAW,OAAO,MAAM,aAAa,MAAM;AAAA,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMzD,gBAAgB,CAAC,SAAS,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA,IAKhC,UAAU;AAAA,MACR,MAAM,CAAC,SAAS,QAAQ,UAAU,MAAM;AAAA,MACxC,SAAS;AAAA,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMX,UAAU;AAAA,MACR,MAAM,CAAC,SAAS,QAAQ,UAAU,MAAM;AAAA,MACxC,SAAS;AAAA,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMX,OAAO;AAAA,MACL,MAAM,CAAC,QAAQ,OAAO;AAAA,MACtB,SAAS;AAAA,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMX,WAAW;AAAA;AAAA;AAAA;AAAA;AAAA,IAKX,oBAAoB;AAAA,IAEpB,GAAG,iBAAA;AAAA,IACH,GAAG,qBAAA;AAAA,IACH,GAAG,oBAAA;AAAA,IACH,GAAG,qBAAA;AAAA,IACH,GAAG,eAAA;AAAA,IACH,GAAG,iBAAA;AAAA,EAAiB;AAAA,EAEtB,sBAAsB;AACxB;AAEO,MAAM,8BAA8B;AAAA,EACzC;AAAA;AAAA;AAAA;AAAA;AAAA,IAKE,mBAAmB;AAAA,MACjB,MAAM,CAAC,SAAS,MAAM;AAAA,MACtB,SAAS;AAAA,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMX,YAAY;AAAA,MACV,MAAM,CAAC,SAAS,MAAM;AAAA,MACtB,SAAS;AAAA,IAAA;AAAA,IAGX,GAAG,qBAAA;AAAA,IACH,GAAG,qBAAA;AAAA,IACH,GAAG,gBAAA;AAAA,EAAgB;AAAA,EAErB,sBAAsB;AACxB;"}
@@ -1,21 +1,3 @@
1
- @charset "UTF-8";
2
- /*
3
- * Easing component
4
- * @type Map
5
- */
6
- /*
7
- * Get the transition-timing-function for a given easing and motion mode
8
- * @param {String} $type - Can be `ease-in-out`, `ease-in`, or `ease-out`
9
- * @param {String} $mode [basic] - Can be `basic` or `accent`
10
- * @param {Map} $easing [$easing] - Easing's map
11
- * @return {Function} CSS `cubic-bezier()` function
12
- */
13
- /*
14
- * Set the transition-timing-function for a given easing and motion mode
15
- * @param {Number} $duration — The dynamic duration in ms
16
- * @param {String} $type - The name of the easing curve to apply
17
- * @param {String} $mode - The mode for the easing curve to use
18
- */
19
1
  @layer cds-components {
20
2
  .cds-stages {
21
3
  display: grid;
@@ -48,7 +48,15 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
48
48
  };
49
49
  };
50
50
  __expose({
51
+ /**
52
+ * Проверяет, является ли этап с указанным индексом текущим.
53
+ * @en Checks whether the stage with the given index is the current one.
54
+ */
51
55
  isCurrent,
56
+ /**
57
+ * Пройдены ли все этапы.
58
+ * @en Whether all the stages are passed.
59
+ */
52
60
  isFinished
53
61
  });
54
62
  return () => {
@@ -1 +1 @@
1
- {"version":3,"file":"CdsStages.vue_vue_type_script_setup_true_lang.js","sources":["../../../../../src/components/CdsStages/CdsStages.vue"],"sourcesContent":["<script setup lang=\"tsx\">\nimport './CdsStages.scss';\n\nimport type { ListItem } from '@cds/composables/useItems';\nimport { useItems } from '@cds/composables/useItems';\nimport { provideTheme } from '@cds/composables/useTheme';\nimport { useDefaults } from '@cds/core';\nimport { classNames } from '@cds/utils';\nimport { computed, unref } from 'vue';\n\nimport { CdsStagesConstants } from './api/CdsStages.constants';\nimport { defineCdsStagesProps } from './api/CdsStages.props';\n\ndefineOptions({\n name: CdsStagesConstants.name\n});\n\nconst _props = defineProps({ ...defineCdsStagesProps() });\nconst props = useDefaults(_props);\n\nconst { items } = useItems(props);\nconst { themeClasses } = provideTheme(props);\n\nconst currentStageIndex = computed(() => {\n return unref(items).findIndex((item) => String(item.value) === String(props.current));\n});\n\nconst gridStyles = computed(() => ({\n gridTemplateColumns: `repeat(${unref(items).length}, 1fr)`\n}));\n\nconst isFinished = computed(() => {\n return props.finished || String(props.current) === '0';\n});\n\nconst isCurrent = (idx: number) => {\n return idx === unref(currentStageIndex);\n};\n\nconst getStageClasses = (item: ListItem, idx: number) => {\n const { rootClass } = CdsStagesConstants;\n\n return {\n [`${rootClass}__stage--active`]: !unref(isFinished) && String(item.value) === String(props.current),\n [`${rootClass}__stage--invalid`]: item.props?.error && idx <= unref(currentStageIndex),\n [`${rootClass}__stage--checked`]: unref(isFinished) || idx < unref(currentStageIndex)\n };\n};\n\ndefineExpose({\n isCurrent,\n isFinished\n});\n\ndefineRender(() => {\n const { rootClass } = CdsStagesConstants;\n\n return (\n <ul class={classNames(rootClass, unref(themeClasses), props.class)} style={[unref(gridStyles), props.style]}>\n {unref(items).map((item, idx) => (\n <li key={item.value} class={classNames(`${rootClass}__stage`, getStageClasses(item, idx))}>\n <span class={classNames(`${rootClass}__text`)}>{item.title}</span>\n\n {idx !== unref(items).length - 1 && (\n <svg\n width=\"16\"\n height=\"40\"\n viewBox=\"0 0 16 40\"\n xmlns=\"http://www.w3.org/2000/svg\"\n class={classNames(`${rootClass}__arrow`)}\n >\n <path d=\"M0 0L4.19048 7.27177e-06L13 20L4.19048 40L0 40V0Z\" />\n <path d=\"M0 39H4.51263L14 20L4.51263 1H0\" />\n </svg>\n )}\n </li>\n ))}\n </ul>\n );\n});\n</script>\n"],"names":["_props","__props","props","useDefaults","items","useItems","themeClasses","provideTheme","currentStageIndex","computed","unref","findIndex","item","String","value","current","gridStyles","gridTemplateColumns","length","isFinished","finished","isCurrent","idx","getStageClasses","rootClass","CdsStagesConstants","error","__expose","_createVNode","classNames","class","style","map","title"],"mappings":";;;;;;;;;;;;;;;;;;AAiBA,UAAMA,SAASC;AACf,UAAMC,QAAQC,YAAYH,MAAM;AAEhC,UAAM;AAAA,MAAEI;AAAAA,IAAM,IAAIC,SAASH,KAAK;AAChC,UAAM;AAAA,MAAEI;AAAAA,IAAa,IAAIC,aAAaL,KAAK;AAE3C,UAAMM,oBAAoBC,SAAS,MAAM;AACvC,aAAOC,MAAMN,KAAK,EAAEO,UAAWC,UAASC,OAAOD,KAAKE,KAAK,MAAMD,OAAOX,MAAMa,OAAO,CAAC;AAAA,IACtF,CAAC;AAED,UAAMC,aAAaP,SAAS,OAAO;AAAA,MACjCQ,qBAAqB,UAAUP,MAAMN,KAAK,EAAEc,MAAM;AAAA,IACpD,EAAE;AAEF,UAAMC,aAAaV,SAAS,MAAM;AAChC,aAAOP,MAAMkB,YAAYP,OAAOX,MAAMa,OAAO,MAAM;AAAA,IACrD,CAAC;AAED,UAAMM,YAAaC,SAAgB;AACjC,aAAOA,QAAQZ,MAAMF,iBAAiB;AAAA,IACxC;AAEA,UAAMe,kBAAkBA,CAACX,MAAgBU,QAAgB;;AACvD,YAAM;AAAA,QAAEE;AAAAA,MAAU,IAAIC;AAEtB,aAAO;AAAA,QACL,CAAC,GAAGD,SAAS,iBAAiB,GAAG,CAACd,MAAMS,UAAU,KAAKN,OAAOD,KAAKE,KAAK,MAAMD,OAAOX,MAAMa,OAAO;AAAA,QAClG,CAAC,GAAGS,SAAS,kBAAkB,KAAGZ,UAAKV,UAALU,mBAAYc,UAASJ,OAAOZ,MAAMF,iBAAiB;AAAA,QACrF,CAAC,GAAGgB,SAAS,kBAAkB,GAAGd,MAAMS,UAAU,KAAKG,MAAMZ,MAAMF,iBAAiB;AAAA;IAExF;AAEAmB,aAAa;AAAA,MACXN;AAAAA,MACAF;AAAAA,IACF,CAAC;WAEY,MAAM;AACjB,YAAM;AAAA,QAAEK;AAAAA,MAAU,IAAIC;AAEtB,aAAAG,YAAA,MAAA;AAAA,QAAA,SACaC,WAAWL,WAAWd,MAAMJ,YAAY,GAAGJ,MAAM4B,KAAK;AAAA,QAAC,SAAS,CAACpB,MAAMM,UAAU,GAAGd,MAAM6B,KAAK;AAAA,MAAC,GAAA,CACxGrB,MAAMN,KAAK,EAAE4B,IAAI,CAACpB,MAAMU,QAAGM,YAAA,MAAA;AAAA,QAAA,OACjBhB,KAAKE;AAAAA,QAAK,SAASe,WAAW,GAAGL,SAAS,WAAWD,gBAAgBX,MAAMU,GAAG,CAAC;AAAA,MAAC,GAAA,CAAAM,YAAA,QAAA;AAAA,QAAA,SAC1EC,WAAW,GAAGL,SAAS,QAAQ;AAAA,MAAC,GAAA,CAAGZ,KAAKqB,KAAK,CAAA,GAEzDX,QAAQZ,MAAMN,KAAK,EAAEc,SAAS,KAACU,YAAA,OAAA;AAAA,QAAA,SAAA;AAAA,QAAA,UAAA;AAAA,QAAA,WAAA;AAAA,QAAA,SAAA;AAAA,QAAA,SAMrBC,WAAW,GAAGL,SAAS,SAAS;AAAA,MAAC,GAAA,CAAAI,YAAA,QAAA;AAAA,QAAA,KAAA;AAAA,MAAA,GAAA,IAAA,GAAAA,YAAA,QAAA;AAAA,QAAA,KAAA;AAAA,MAAA,GAAA,IAAA,CAAA,CAAA,CAK3C,EAEJ,CAAC,CAAA;AAAA,IAGR;AAAA;;"}
1
+ {"version":3,"file":"CdsStages.vue_vue_type_script_setup_true_lang.js","sources":["../../../../../src/components/CdsStages/CdsStages.vue"],"sourcesContent":["<script setup lang=\"tsx\">\nimport './CdsStages.scss';\n\nimport type { ListItem } from '@cds/composables/useItems';\nimport { useItems } from '@cds/composables/useItems';\nimport { provideTheme } from '@cds/composables/useTheme';\nimport { useDefaults } from '@cds/core';\nimport { classNames } from '@cds/utils';\nimport { computed, unref } from 'vue';\n\nimport { CdsStagesConstants } from './api/CdsStages.constants';\nimport { defineCdsStagesProps } from './api/CdsStages.props';\n\ndefineOptions({\n name: CdsStagesConstants.name\n});\n\nconst _props = defineProps({ ...defineCdsStagesProps() });\nconst props = useDefaults(_props);\n\nconst { items } = useItems(props);\nconst { themeClasses } = provideTheme(props);\n\nconst currentStageIndex = computed(() => {\n return unref(items).findIndex((item) => String(item.value) === String(props.current));\n});\n\nconst gridStyles = computed(() => ({\n gridTemplateColumns: `repeat(${unref(items).length}, 1fr)`\n}));\n\nconst isFinished = computed(() => {\n return props.finished || String(props.current) === '0';\n});\n\nconst isCurrent = (idx: number) => {\n return idx === unref(currentStageIndex);\n};\n\nconst getStageClasses = (item: ListItem, idx: number) => {\n const { rootClass } = CdsStagesConstants;\n\n return {\n [`${rootClass}__stage--active`]: !unref(isFinished) && String(item.value) === String(props.current),\n [`${rootClass}__stage--invalid`]: item.props?.error && idx <= unref(currentStageIndex),\n [`${rootClass}__stage--checked`]: unref(isFinished) || idx < unref(currentStageIndex)\n };\n};\n\ndefineExpose({\n /**\n * Проверяет, является ли этап с указанным индексом текущим.\n * @en Checks whether the stage with the given index is the current one.\n */\n isCurrent,\n /**\n * Пройдены ли все этапы.\n * @en Whether all the stages are passed.\n */\n isFinished\n});\n\ndefineRender(() => {\n const { rootClass } = CdsStagesConstants;\n\n return (\n <ul class={classNames(rootClass, unref(themeClasses), props.class)} style={[unref(gridStyles), props.style]}>\n {unref(items).map((item, idx) => (\n <li key={item.value} class={classNames(`${rootClass}__stage`, getStageClasses(item, idx))}>\n <span class={classNames(`${rootClass}__text`)}>{item.title}</span>\n\n {idx !== unref(items).length - 1 && (\n <svg\n width=\"16\"\n height=\"40\"\n viewBox=\"0 0 16 40\"\n xmlns=\"http://www.w3.org/2000/svg\"\n class={classNames(`${rootClass}__arrow`)}\n >\n <path d=\"M0 0L4.19048 7.27177e-06L13 20L4.19048 40L0 40V0Z\" />\n <path d=\"M0 39H4.51263L14 20L4.51263 1H0\" />\n </svg>\n )}\n </li>\n ))}\n </ul>\n );\n});\n</script>\n"],"names":["_props","__props","props","useDefaults","items","useItems","themeClasses","provideTheme","currentStageIndex","computed","unref","findIndex","item","String","value","current","gridStyles","gridTemplateColumns","length","isFinished","finished","isCurrent","idx","getStageClasses","rootClass","CdsStagesConstants","error","__expose","_createVNode","classNames","class","style","map","title"],"mappings":";;;;;;;;;;;;;;;;;;AAiBA,UAAMA,SAASC;AACf,UAAMC,QAAQC,YAAYH,MAAM;AAEhC,UAAM;AAAA,MAAEI;AAAAA,IAAM,IAAIC,SAASH,KAAK;AAChC,UAAM;AAAA,MAAEI;AAAAA,IAAa,IAAIC,aAAaL,KAAK;AAE3C,UAAMM,oBAAoBC,SAAS,MAAM;AACvC,aAAOC,MAAMN,KAAK,EAAEO,UAAWC,UAASC,OAAOD,KAAKE,KAAK,MAAMD,OAAOX,MAAMa,OAAO,CAAC;AAAA,IACtF,CAAC;AAED,UAAMC,aAAaP,SAAS,OAAO;AAAA,MACjCQ,qBAAqB,UAAUP,MAAMN,KAAK,EAAEc,MAAM;AAAA,IACpD,EAAE;AAEF,UAAMC,aAAaV,SAAS,MAAM;AAChC,aAAOP,MAAMkB,YAAYP,OAAOX,MAAMa,OAAO,MAAM;AAAA,IACrD,CAAC;AAED,UAAMM,YAAaC,SAAgB;AACjC,aAAOA,QAAQZ,MAAMF,iBAAiB;AAAA,IACxC;AAEA,UAAMe,kBAAkBA,CAACX,MAAgBU,QAAgB;;AACvD,YAAM;AAAA,QAAEE;AAAAA,MAAU,IAAIC;AAEtB,aAAO;AAAA,QACL,CAAC,GAAGD,SAAS,iBAAiB,GAAG,CAACd,MAAMS,UAAU,KAAKN,OAAOD,KAAKE,KAAK,MAAMD,OAAOX,MAAMa,OAAO;AAAA,QAClG,CAAC,GAAGS,SAAS,kBAAkB,KAAGZ,UAAKV,UAALU,mBAAYc,UAASJ,OAAOZ,MAAMF,iBAAiB;AAAA,QACrF,CAAC,GAAGgB,SAAS,kBAAkB,GAAGd,MAAMS,UAAU,KAAKG,MAAMZ,MAAMF,iBAAiB;AAAA;IAExF;AAEAmB,aAAa;AAAA;AAAA;AAAA;AAAA;AAAA,MAKXN;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,MAKAF;AAAAA,IACF,CAAC;WAEY,MAAM;AACjB,YAAM;AAAA,QAAEK;AAAAA,MAAU,IAAIC;AAEtB,aAAAG,YAAA,MAAA;AAAA,QAAA,SACaC,WAAWL,WAAWd,MAAMJ,YAAY,GAAGJ,MAAM4B,KAAK;AAAA,QAAC,SAAS,CAACpB,MAAMM,UAAU,GAAGd,MAAM6B,KAAK;AAAA,MAAC,GAAA,CACxGrB,MAAMN,KAAK,EAAE4B,IAAI,CAACpB,MAAMU,QAAGM,YAAA,MAAA;AAAA,QAAA,OACjBhB,KAAKE;AAAAA,QAAK,SAASe,WAAW,GAAGL,SAAS,WAAWD,gBAAgBX,MAAMU,GAAG,CAAC;AAAA,MAAC,GAAA,CAAAM,YAAA,QAAA;AAAA,QAAA,SAC1EC,WAAW,GAAGL,SAAS,QAAQ;AAAA,MAAC,GAAA,CAAGZ,KAAKqB,KAAK,CAAA,GAEzDX,QAAQZ,MAAMN,KAAK,EAAEc,SAAS,KAACU,YAAA,OAAA;AAAA,QAAA,SAAA;AAAA,QAAA,UAAA;AAAA,QAAA,WAAA;AAAA,QAAA,SAAA;AAAA,QAAA,SAMrBC,WAAW,GAAGL,SAAS,SAAS;AAAA,MAAC,GAAA,CAAAI,YAAA,QAAA;AAAA,QAAA,KAAA;AAAA,MAAA,GAAA,IAAA,GAAAA,YAAA,QAAA;AAAA,QAAA,KAAA;AAAA,MAAA,GAAA,IAAA,CAAA,CAAA,CAK3C,EAEJ,CAAC,CAAA;AAAA,IAGR;AAAA;;"}
@@ -5,12 +5,18 @@ import { C as CdsStagesConstants } from "./CdsStages.constants.js";
5
5
  import { d as defineThemeProps } from "../../../composables/useTheme/useTheme.js";
6
6
  const defineCdsStagesProps = propsFactory(
7
7
  {
8
- /** Текущий этап */
8
+ /**
9
+ * Текущий этап
10
+ * @en Current stage
11
+ */
9
12
  current: {
10
13
  type: [String, Number],
11
14
  default: null
12
15
  },
13
- /** Завершены все этапы */
16
+ /**
17
+ * Завершены все этапы
18
+ * @en All stages are finished
19
+ */
14
20
  finished: Boolean,
15
21
  ...defineItemsProps(),
16
22
  ...defineComponentProps(),
@@ -1 +1 @@
1
- {"version":3,"file":"CdsStages.props.js","sources":["../../../../../../src/components/CdsStages/api/CdsStages.props.ts"],"sourcesContent":["import { defineItemsProps } from '@cds/composables/useItems';\nimport { defineThemeProps } from '@cds/composables/useTheme';\nimport { defineComponentProps, propsFactory } from '@cds/core';\nimport type { PropType } from 'vue';\n\nimport { CdsStagesConstants } from './CdsStages.constants';\n\nexport const defineCdsStagesProps = propsFactory(\n {\n /** Текущий этап */\n current: {\n type: [String, Number] as PropType<string | number | null>,\n default: null\n },\n /** Завершены все этапы */\n finished: Boolean,\n\n ...defineItemsProps(),\n ...defineComponentProps(),\n ...defineThemeProps()\n },\n CdsStagesConstants.name\n);\n"],"names":[],"mappings":";;;;;AAOO,MAAM,uBAAuB;AAAA,EAClC;AAAA;AAAA,IAEE,SAAS;AAAA,MACP,MAAM,CAAC,QAAQ,MAAM;AAAA,MACrB,SAAS;AAAA,IAAA;AAAA;AAAA,IAGX,UAAU;AAAA,IAEV,GAAG,iBAAA;AAAA,IACH,GAAG,qBAAA;AAAA,IACH,GAAG,iBAAA;AAAA,EAAiB;AAAA,EAEtB,mBAAmB;AACrB;"}
1
+ {"version":3,"file":"CdsStages.props.js","sources":["../../../../../../src/components/CdsStages/api/CdsStages.props.ts"],"sourcesContent":["import { defineItemsProps } from '@cds/composables/useItems';\nimport { defineThemeProps } from '@cds/composables/useTheme';\nimport { defineComponentProps, propsFactory } from '@cds/core';\nimport type { PropType } from 'vue';\n\nimport { CdsStagesConstants } from './CdsStages.constants';\n\nexport const defineCdsStagesProps = propsFactory(\n {\n /**\n * Текущий этап\n * @en Current stage\n */\n current: {\n type: [String, Number] as PropType<string | number | null>,\n default: null\n },\n /**\n * Завершены все этапы\n * @en All stages are finished\n */\n finished: Boolean,\n\n ...defineItemsProps(),\n ...defineComponentProps(),\n ...defineThemeProps()\n },\n CdsStagesConstants.name\n);\n"],"names":[],"mappings":";;;;;AAOO,MAAM,uBAAuB;AAAA,EAClC;AAAA;AAAA;AAAA;AAAA;AAAA,IAKE,SAAS;AAAA,MACP,MAAM,CAAC,QAAQ,MAAM;AAAA,MACrB,SAAS;AAAA,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMX,UAAU;AAAA,IAEV,GAAG,iBAAA;AAAA,IACH,GAAG,qBAAA;AAAA,IACH,GAAG,iBAAA;AAAA,EAAiB;AAAA,EAEtB,mBAAmB;AACrB;"}
@@ -1,21 +1,3 @@
1
- @charset "UTF-8";
2
- /*
3
- * Easing component
4
- * @type Map
5
- */
6
- /*
7
- * Get the transition-timing-function for a given easing and motion mode
8
- * @param {String} $type - Can be `ease-in-out`, `ease-in`, or `ease-out`
9
- * @param {String} $mode [basic] - Can be `basic` or `accent`
10
- * @param {Map} $easing [$easing] - Easing's map
11
- * @return {Function} CSS `cubic-bezier()` function
12
- */
13
- /*
14
- * Set the transition-timing-function for a given easing and motion mode
15
- * @param {Number} $duration — The dynamic duration in ms
16
- * @param {String} $type - The name of the easing curve to apply
17
- * @param {String} $mode - The mode for the easing curve to use
18
- */
19
1
  @layer cds-components {
20
2
  .cds-status {
21
3
  display: inline-flex;