@vuetify/nightly 3.7.4-next.2024-11-06 → 3.7.5-dev.2024-12-16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (262) hide show
  1. package/dist/json/attributes.json +2853 -2845
  2. package/dist/json/importMap-labs.json +20 -20
  3. package/dist/json/importMap.json +150 -150
  4. package/dist/json/tags.json +2 -0
  5. package/dist/json/web-types.json +5324 -5306
  6. package/dist/vuetify-labs.css +25135 -23418
  7. package/dist/vuetify-labs.d.ts +202 -196
  8. package/dist/vuetify-labs.esm.js +107 -106
  9. package/dist/vuetify-labs.esm.js.map +1 -1
  10. package/dist/vuetify-labs.js +106 -105
  11. package/dist/vuetify-labs.min.css +4 -3
  12. package/dist/vuetify.css +23838 -22118
  13. package/dist/vuetify.d.ts +191 -185
  14. package/dist/vuetify.esm.js +96 -96
  15. package/dist/vuetify.esm.js.map +1 -1
  16. package/dist/vuetify.js +95 -95
  17. package/dist/vuetify.js.map +1 -1
  18. package/dist/vuetify.min.css +4 -3
  19. package/dist/vuetify.min.js +884 -889
  20. package/dist/vuetify.min.js.map +1 -1
  21. package/lib/components/VAlert/VAlert.css +215 -207
  22. package/lib/components/VApp/VApp.css +15 -16
  23. package/lib/components/VAppBar/VAppBar.css +12 -14
  24. package/lib/components/VAppBar/index.d.mts +6 -6
  25. package/lib/components/VAutocomplete/VAutocomplete.css +85 -86
  26. package/lib/components/VAutocomplete/VAutocomplete.mjs +4 -4
  27. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  28. package/lib/components/VAutocomplete/index.d.mts +22 -22
  29. package/lib/components/VAvatar/VAvatar.css +106 -108
  30. package/lib/components/VBadge/VBadge.css +77 -73
  31. package/lib/components/VBadge/VBadge.sass +4 -0
  32. package/lib/components/VBanner/VBanner.css +166 -161
  33. package/lib/components/VBottomNavigation/VBottomNavigation.css +63 -64
  34. package/lib/components/VBottomSheet/VBottomSheet.css +31 -34
  35. package/lib/components/VBreadcrumbs/VBreadcrumbs.css +57 -54
  36. package/lib/components/VBtn/VBtn.css +408 -385
  37. package/lib/components/VBtn/VBtn.sass +4 -4
  38. package/lib/components/VBtn/index.d.mts +7 -7
  39. package/lib/components/VBtnGroup/VBtnGroup.css +64 -63
  40. package/lib/components/VBtnToggle/VBtnToggle.css +14 -16
  41. package/lib/components/VBtnToggle/index.d.mts +9 -9
  42. package/lib/components/VCard/VCard.css +302 -294
  43. package/lib/components/VCarousel/VCarousel.css +65 -63
  44. package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
  45. package/lib/components/VCarousel/VCarousel.sass +1 -1
  46. package/lib/components/VCarousel/index.d.mts +9 -9
  47. package/lib/components/VCheckbox/VCheckbox.css +5 -7
  48. package/lib/components/VCheckbox/VCheckbox.mjs +3 -3
  49. package/lib/components/VCheckbox/VCheckbox.mjs.map +1 -1
  50. package/lib/components/VChip/VChip.css +411 -378
  51. package/lib/components/VChip/VChip.mjs +18 -10
  52. package/lib/components/VChip/VChip.mjs.map +1 -1
  53. package/lib/components/VChip/index.d.mts +13 -8
  54. package/lib/components/VChipGroup/VChipGroup.css +18 -19
  55. package/lib/components/VChipGroup/VChipGroup.mjs +2 -0
  56. package/lib/components/VChipGroup/VChipGroup.mjs.map +1 -1
  57. package/lib/components/VChipGroup/index.d.mts +20 -15
  58. package/lib/components/VCode/VCode.css +8 -10
  59. package/lib/components/VColorPicker/VColorPicker.css +22 -22
  60. package/lib/components/VColorPicker/VColorPickerCanvas.css +22 -24
  61. package/lib/components/VColorPicker/VColorPickerEdit.css +28 -29
  62. package/lib/components/VColorPicker/VColorPickerPreview.css +67 -69
  63. package/lib/components/VColorPicker/VColorPickerPreview.sass +2 -4
  64. package/lib/components/VColorPicker/VColorPickerSwatches.css +34 -34
  65. package/lib/components/VCombobox/VCombobox.css +85 -86
  66. package/lib/components/VCombobox/VCombobox.mjs +4 -4
  67. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  68. package/lib/components/VCombobox/index.d.mts +22 -22
  69. package/lib/components/VConfirmEdit/VConfirmEdit.mjs +9 -7
  70. package/lib/components/VConfirmEdit/VConfirmEdit.mjs.map +1 -1
  71. package/lib/components/VConfirmEdit/__test__/VConfirmEdit.spec.browser.mjs +1 -1
  72. package/lib/components/VConfirmEdit/__test__/VConfirmEdit.spec.browser.mjs.map +1 -1
  73. package/lib/components/VConfirmEdit/index.d.mts +3 -7
  74. package/lib/components/VCounter/VCounter.css +5 -7
  75. package/lib/components/VDataTable/VDataTable.css +186 -189
  76. package/lib/components/VDataTable/VDataTable.sass +10 -20
  77. package/lib/components/VDataTable/VDataTableFooter.css +31 -33
  78. package/lib/components/VDatePicker/VDatePicker.css +6 -8
  79. package/lib/components/VDatePicker/VDatePickerControls.css +56 -54
  80. package/lib/components/VDatePicker/VDatePickerHeader.css +60 -56
  81. package/lib/components/VDatePicker/VDatePickerHeader.mjs +2 -1
  82. package/lib/components/VDatePicker/VDatePickerHeader.mjs.map +1 -1
  83. package/lib/components/VDatePicker/VDatePickerMonth.css +55 -51
  84. package/lib/components/VDatePicker/VDatePickerMonths.css +19 -20
  85. package/lib/components/VDatePicker/VDatePickerYears.css +15 -16
  86. package/lib/components/VDatePicker/index.d.mts +5 -5
  87. package/lib/components/VDialog/VDialog.css +95 -95
  88. package/lib/components/VDivider/VDivider.css +52 -52
  89. package/lib/components/VEmptyState/VEmptyState.css +67 -62
  90. package/lib/components/VExpansionPanel/VExpansionPanel.css +209 -203
  91. package/lib/components/VExpansionPanel/VExpansionPanel.sass +25 -27
  92. package/lib/components/VExpansionPanel/index.d.mts +7 -7
  93. package/lib/components/VFab/VFab.css +69 -74
  94. package/lib/components/VFab/VFab.sass +4 -5
  95. package/lib/components/VFab/index.d.mts +6 -6
  96. package/lib/components/VField/VField.css +579 -539
  97. package/lib/components/VField/VField.mjs +5 -4
  98. package/lib/components/VField/VField.mjs.map +1 -1
  99. package/lib/components/VFileInput/VFileInput.css +29 -31
  100. package/lib/components/VFooter/VFooter.css +36 -38
  101. package/lib/components/VGrid/VGrid.css +592 -565
  102. package/lib/components/VIcon/VIcon.css +52 -51
  103. package/lib/components/VImg/VImg.css +51 -50
  104. package/lib/components/VInfiniteScroll/VInfiniteScroll.css +37 -36
  105. package/lib/components/VInput/VInput.css +142 -131
  106. package/lib/components/VInput/VInput.mjs +3 -3
  107. package/lib/components/VInput/VInput.mjs.map +1 -1
  108. package/lib/components/VItemGroup/VItemGroup.css +5 -7
  109. package/lib/components/VItemGroup/VItemGroup.mjs.map +1 -1
  110. package/lib/components/VItemGroup/index.d.mts +9 -9
  111. package/lib/components/VKbd/VKbd.css +11 -13
  112. package/lib/components/VLabel/VLabel.css +15 -16
  113. package/lib/components/VLayout/VLayout.css +8 -10
  114. package/lib/components/VLayout/VLayoutItem.css +7 -8
  115. package/lib/components/VList/VList.css +108 -104
  116. package/lib/components/VList/VList.mjs +3 -2
  117. package/lib/components/VList/VList.mjs.map +1 -1
  118. package/lib/components/VList/VList.sass +1 -1
  119. package/lib/components/VList/VListItem.css +452 -440
  120. package/lib/components/VList/VListItem.mjs +3 -2
  121. package/lib/components/VList/VListItem.mjs.map +1 -1
  122. package/lib/components/VList/VListItem.sass +1 -2
  123. package/lib/components/VList/index.d.mts +10 -10
  124. package/lib/components/VLocaleProvider/VLocaleProvider.css +2 -4
  125. package/lib/components/VMain/VMain.css +30 -32
  126. package/lib/components/VMenu/VMenu.css +19 -21
  127. package/lib/components/VMenu/VMenu.mjs +3 -3
  128. package/lib/components/VMenu/VMenu.mjs.map +1 -1
  129. package/lib/components/VMenu/index.d.mts +6 -6
  130. package/lib/components/VMessages/VMessages.css +15 -17
  131. package/lib/components/VNavigationDrawer/VNavigationDrawer.css +108 -106
  132. package/lib/components/VOtpInput/VOtpInput.css +58 -56
  133. package/lib/components/VOverlay/VOverlay.css +63 -60
  134. package/lib/components/VOverlay/VOverlay.sass +13 -14
  135. package/lib/components/VPagination/VPagination.css +8 -10
  136. package/lib/components/VParallax/VParallax.css +6 -8
  137. package/lib/components/VProgressCircular/VProgressCircular.css +101 -95
  138. package/lib/components/VProgressLinear/VProgressLinear.css +222 -209
  139. package/lib/components/VRadioGroup/VRadioGroup.css +12 -14
  140. package/lib/components/VRadioGroup/VRadioGroup.mjs +3 -3
  141. package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
  142. package/lib/components/VRating/VRating.css +53 -52
  143. package/lib/components/VRating/VRating.mjs +4 -3
  144. package/lib/components/VRating/VRating.mjs.map +1 -1
  145. package/lib/components/VResponsive/VResponsive.css +26 -25
  146. package/lib/components/VSelect/VSelect.css +52 -54
  147. package/lib/components/VSelect/VSelect.mjs +3 -3
  148. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  149. package/lib/components/VSelect/index.d.mts +22 -22
  150. package/lib/components/VSelectionControl/VSelectionControl.css +102 -100
  151. package/lib/components/VSelectionControl/VSelectionControl.mjs +3 -3
  152. package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -1
  153. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.css +8 -10
  154. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs +3 -3
  155. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs.map +1 -1
  156. package/lib/components/VSheet/VSheet.css +36 -38
  157. package/lib/components/VSkeletonLoader/VSkeletonLoader.css +224 -225
  158. package/lib/components/VSlideGroup/VSlideGroup.css +55 -53
  159. package/lib/components/VSlideGroup/index.d.mts +10 -10
  160. package/lib/components/VSlider/VSlider.css +57 -53
  161. package/lib/components/VSlider/VSliderThumb.css +153 -142
  162. package/lib/components/VSlider/VSliderTrack.css +174 -155
  163. package/lib/components/VSnackbar/VSnackbar.css +140 -140
  164. package/lib/components/VSparkline/VBarline.mjs +3 -3
  165. package/lib/components/VSparkline/VBarline.mjs.map +1 -1
  166. package/lib/components/VSparkline/VTrendline.mjs +3 -3
  167. package/lib/components/VSparkline/VTrendline.mjs.map +1 -1
  168. package/lib/components/VSpeedDial/VSpeedDial.css +41 -43
  169. package/lib/components/VStepper/VStepper.css +56 -55
  170. package/lib/components/VStepper/VStepper.mjs +5 -4
  171. package/lib/components/VStepper/VStepper.mjs.map +1 -1
  172. package/lib/components/VStepper/VStepperItem.css +115 -112
  173. package/lib/components/VStepper/VStepperItem.mjs +5 -4
  174. package/lib/components/VStepper/VStepperItem.mjs.map +1 -1
  175. package/lib/components/VStepper/index.d.mts +51 -45
  176. package/lib/components/VSwitch/VSwitch.css +139 -129
  177. package/lib/components/VSwitch/VSwitch.mjs +3 -3
  178. package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
  179. package/lib/components/VSystemBar/VSystemBar.css +43 -45
  180. package/lib/components/VTable/VTable.css +141 -140
  181. package/lib/components/VTable/VTable.sass +2 -4
  182. package/lib/components/VTabs/VTab.css +29 -30
  183. package/lib/components/VTabs/VTabs.css +65 -59
  184. package/lib/components/VTabs/index.d.mts +7 -7
  185. package/lib/components/VTextField/VTextField.css +68 -65
  186. package/lib/components/VTextarea/VTextarea.css +39 -47
  187. package/lib/components/VTextarea/VTextarea.sass +2 -4
  188. package/lib/components/VThemeProvider/VThemeProvider.css +3 -5
  189. package/lib/components/VTimeline/VTimeline.css +418 -379
  190. package/lib/components/VToolbar/VToolbar.css +143 -136
  191. package/lib/components/VTooltip/VTooltip.css +21 -25
  192. package/lib/components/VTooltip/VTooltip.mjs +3 -3
  193. package/lib/components/VTooltip/VTooltip.mjs.map +1 -1
  194. package/lib/components/VTooltip/VTooltip.sass +6 -8
  195. package/lib/components/VVirtualScroll/VVirtualScroll.css +9 -11
  196. package/lib/components/VWindow/VWindow.css +70 -73
  197. package/lib/components/VWindow/index.d.mts +7 -7
  198. package/lib/components/index.d.mts +138 -132
  199. package/lib/composables/form.mjs +7 -2
  200. package/lib/composables/form.mjs.map +1 -1
  201. package/lib/composables/group.mjs +3 -3
  202. package/lib/composables/group.mjs.map +1 -1
  203. package/lib/composables/layout.mjs +3 -3
  204. package/lib/composables/layout.mjs.map +1 -1
  205. package/lib/composables/nested/nested.mjs +2 -2
  206. package/lib/composables/nested/nested.mjs.map +1 -1
  207. package/lib/composables/theme.mjs +4 -4
  208. package/lib/composables/theme.mjs.map +1 -1
  209. package/lib/composables/validation.mjs +13 -15
  210. package/lib/composables/validation.mjs.map +1 -1
  211. package/lib/directives/ripple/VRipple.css +36 -38
  212. package/lib/entry-bundler.mjs +1 -1
  213. package/lib/entry-bundler.mjs.map +1 -1
  214. package/lib/framework.mjs +2 -3
  215. package/lib/framework.mjs.map +1 -1
  216. package/lib/index.d.mts +53 -53
  217. package/lib/labs/VCalendar/VCalendar.css +225 -219
  218. package/lib/labs/VCalendar/VCalendarDay.css +32 -33
  219. package/lib/labs/VCalendar/VCalendarHeader.css +13 -13
  220. package/lib/labs/VCalendar/VCalendarInterval.css +42 -43
  221. package/lib/labs/VCalendar/VCalendarIntervalEvent.css +5 -7
  222. package/lib/labs/VCalendar/VCalendarMonthDay.css +58 -61
  223. package/lib/labs/VCalendar/VCalendarMonthDay.sass +2 -3
  224. package/lib/labs/VDateInput/VDateInput.mjs +1 -1
  225. package/lib/labs/VDateInput/VDateInput.mjs.map +1 -1
  226. package/lib/labs/VNumberInput/VNumberInput.css +38 -40
  227. package/lib/labs/VNumberInput/VNumberInput.mjs +7 -5
  228. package/lib/labs/VNumberInput/VNumberInput.mjs.map +1 -1
  229. package/lib/labs/VPicker/VPicker.css +57 -53
  230. package/lib/labs/VStepperVertical/index.d.mts +44 -44
  231. package/lib/labs/VTimePicker/VTimePicker.css +7 -9
  232. package/lib/labs/VTimePicker/VTimePickerClock.css +129 -126
  233. package/lib/labs/VTimePicker/VTimePickerControls.css +103 -102
  234. package/lib/labs/VTreeview/VTreeviewItem.css +15 -17
  235. package/lib/labs/VTreeview/VTreeviewItem.mjs +3 -4
  236. package/lib/labs/VTreeview/VTreeviewItem.mjs.map +1 -1
  237. package/lib/labs/VTreeview/VTreeviewItem.sass +1 -2
  238. package/lib/labs/VTreeview/index.d.mts +20 -20
  239. package/lib/labs/components.d.mts +64 -64
  240. package/lib/locale/fr.mjs +1 -1
  241. package/lib/locale/fr.mjs.map +1 -1
  242. package/lib/styles/elements/_global.sass +1 -1
  243. package/lib/styles/generic/_colors.scss +3 -3
  244. package/lib/styles/generic/_layers.scss +1 -13
  245. package/lib/styles/generic/_transitions.scss +32 -32
  246. package/lib/styles/main.css +16139 -14666
  247. package/lib/styles/settings/_utilities.scss +5 -0
  248. package/lib/styles/settings/_variables.scss +2 -1
  249. package/lib/styles/tools/_bootable.sass +3 -0
  250. package/lib/styles/tools/_border.sass +4 -4
  251. package/lib/styles/tools/_display.sass +10 -0
  252. package/lib/styles/tools/_elevation.sass +2 -2
  253. package/lib/styles/tools/_index.sass +2 -0
  254. package/lib/styles/tools/_layer.scss +2 -4
  255. package/lib/styles/tools/_position.sass +2 -2
  256. package/lib/styles/tools/_radius.sass +10 -0
  257. package/lib/styles/tools/_rounded.sass +2 -2
  258. package/lib/styles/tools/_utilities.sass +5 -1
  259. package/lib/styles/utilities/_elevation.scss +1 -1
  260. package/lib/util/getCurrentInstance.mjs +1 -15
  261. package/lib/util/getCurrentInstance.mjs.map +1 -1
  262. package/package.json +1 -1
@@ -1,117 +1,120 @@
1
- @layer vuetify.components {
2
- .v-stepper-item {
3
- align-items: center;
4
- align-self: stretch;
5
- display: inline-flex;
6
- flex: none;
7
- outline: none;
8
- opacity: var(--v-medium-emphasis-opacity);
9
- padding: 1.5rem;
10
- position: relative;
11
- transition-duration: 0.2s;
12
- transition-property: opacity;
13
- transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
14
- }
15
- .v-stepper-item:hover > .v-stepper-item__overlay {
16
- opacity: calc(var(--v-hover-opacity) * var(--v-theme-overlay-multiplier));
17
- }
18
- .v-stepper-item:focus-visible > .v-stepper-item__overlay {
1
+ .v-stepper-item {
2
+ align-items: center;
3
+ align-self: stretch;
4
+ display: inline-flex;
5
+ flex: none;
6
+ outline: none;
7
+ opacity: var(--v-medium-emphasis-opacity);
8
+ padding: 1.5rem;
9
+ position: relative;
10
+ transition-duration: 0.2s;
11
+ transition-property: opacity;
12
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
13
+ }
14
+ .v-stepper-item:hover > .v-stepper-item__overlay {
15
+ opacity: calc(var(--v-hover-opacity) * var(--v-theme-overlay-multiplier));
16
+ }
17
+ .v-stepper-item:focus-visible > .v-stepper-item__overlay {
18
+ opacity: calc(var(--v-focus-opacity) * var(--v-theme-overlay-multiplier));
19
+ }
20
+ @supports not selector(:focus-visible) {
21
+ .v-stepper-item:focus > .v-stepper-item__overlay {
19
22
  opacity: calc(var(--v-focus-opacity) * var(--v-theme-overlay-multiplier));
20
23
  }
21
- @supports not selector(:focus-visible) {
22
- .v-stepper-item:focus > .v-stepper-item__overlay {
23
- opacity: calc(var(--v-focus-opacity) * var(--v-theme-overlay-multiplier));
24
- }
25
- }
26
- .v-stepper-item--active > .v-stepper-item__overlay, .v-stepper-item[aria-haspopup=menu][aria-expanded=true] > .v-stepper-item__overlay {
27
- opacity: calc(var(--v-activated-opacity) * var(--v-theme-overlay-multiplier));
28
- }
29
- .v-stepper-item--active:hover > .v-stepper-item__overlay, .v-stepper-item[aria-haspopup=menu][aria-expanded=true]:hover > .v-stepper-item__overlay {
30
- opacity: calc((var(--v-activated-opacity) + var(--v-hover-opacity)) * var(--v-theme-overlay-multiplier));
31
- }
32
- .v-stepper-item--active:focus-visible > .v-stepper-item__overlay, .v-stepper-item[aria-haspopup=menu][aria-expanded=true]:focus-visible > .v-stepper-item__overlay {
24
+ }
25
+ .v-stepper-item--active > .v-stepper-item__overlay, .v-stepper-item[aria-haspopup=menu][aria-expanded=true] > .v-stepper-item__overlay {
26
+ opacity: calc(var(--v-activated-opacity) * var(--v-theme-overlay-multiplier));
27
+ }
28
+ .v-stepper-item--active:hover > .v-stepper-item__overlay, .v-stepper-item[aria-haspopup=menu][aria-expanded=true]:hover > .v-stepper-item__overlay {
29
+ opacity: calc((var(--v-activated-opacity) + var(--v-hover-opacity)) * var(--v-theme-overlay-multiplier));
30
+ }
31
+ .v-stepper-item--active:focus-visible > .v-stepper-item__overlay, .v-stepper-item[aria-haspopup=menu][aria-expanded=true]:focus-visible > .v-stepper-item__overlay {
32
+ opacity: calc((var(--v-activated-opacity) + var(--v-focus-opacity)) * var(--v-theme-overlay-multiplier));
33
+ }
34
+ @supports not selector(:focus-visible) {
35
+ .v-stepper-item--active:focus > .v-stepper-item__overlay, .v-stepper-item[aria-haspopup=menu][aria-expanded=true]:focus > .v-stepper-item__overlay {
33
36
  opacity: calc((var(--v-activated-opacity) + var(--v-focus-opacity)) * var(--v-theme-overlay-multiplier));
34
37
  }
35
- @supports not selector(:focus-visible) {
36
- .v-stepper-item--active:focus > .v-stepper-item__overlay, .v-stepper-item[aria-haspopup=menu][aria-expanded=true]:focus > .v-stepper-item__overlay {
37
- opacity: calc((var(--v-activated-opacity) + var(--v-focus-opacity)) * var(--v-theme-overlay-multiplier));
38
- }
39
- }
40
- .v-stepper--non-linear .v-stepper-item {
41
- opacity: var(--v-high-emphasis-opacity);
42
- }
43
- .v-stepper-item--selected {
44
- opacity: 1;
45
- }
46
- .v-stepper-item--error {
47
- color: rgb(var(--v-theme-error));
48
- }
49
- .v-stepper-item--disabled {
50
- opacity: var(--v-medium-emphasis-opacity);
51
- pointer-events: none;
52
- }
53
- .v-stepper--alt-labels .v-stepper-item {
54
- flex-direction: column;
55
- justify-content: flex-start;
56
- align-items: center;
57
- flex-basis: 175px;
58
- }
59
- .v-stepper-item__avatar.v-avatar {
60
- background: rgba(var(--v-theme-surface-variant), var(--v-medium-emphasis-opacity));
61
- color: rgb(var(--v-theme-on-surface-variant));
62
- font-size: 0.75rem;
63
- margin-inline-end: 8px;
64
- }
65
- .v-stepper--mobile .v-stepper-item__avatar.v-avatar {
66
- margin-inline-end: 0;
67
- }
68
- .v-stepper-item__avatar.v-avatar .v-icon {
69
- font-size: 0.875rem;
70
- }
71
- .v-stepper-item--selected .v-stepper-item__avatar.v-avatar, .v-stepper-item--complete .v-stepper-item__avatar.v-avatar {
72
- background: rgb(var(--v-theme-surface-variant));
73
- }
74
- .v-stepper-item--error .v-stepper-item__avatar.v-avatar {
75
- background: rgb(var(--v-theme-error));
76
- }
77
- .v-stepper--alt-labels .v-stepper-item__avatar.v-avatar {
78
- margin-bottom: 16px;
79
- margin-inline-end: 0;
80
- }
81
- .v-stepper-item__title {
82
- line-height: 1;
83
- }
84
- .v-stepper--mobile .v-stepper-item__title {
85
- display: none;
86
- }
87
- .v-stepper-item__subtitle {
88
- font-size: 0.75rem;
89
- text-align: left;
90
- line-height: 1;
91
- opacity: var(--v-medium-emphasis-opacity);
92
- }
93
- .v-stepper--alt-labels .v-stepper-item__subtitle {
94
- text-align: center;
95
- }
96
- .v-stepper--mobile .v-stepper-item__subtitle {
97
- display: none;
98
- }
99
- .v-stepper-item__overlay {
100
- background-color: currentColor;
101
- border-radius: inherit;
102
- opacity: 0;
103
- transition: opacity 0.2s ease-in-out;
104
- }
105
- .v-stepper-item__overlay,
106
- .v-stepper-item__underlay {
107
- pointer-events: none;
108
- }
109
- .v-stepper-item__overlay,
110
- .v-stepper-item__underlay {
111
- position: absolute;
112
- top: 0;
113
- left: 0;
114
- width: 100%;
115
- height: 100%;
116
- }
38
+ }
39
+ .v-stepper--non-linear .v-stepper-item {
40
+ opacity: var(--v-high-emphasis-opacity);
41
+ }
42
+ .v-stepper-item--selected {
43
+ opacity: 1;
44
+ }
45
+ .v-stepper-item--error {
46
+ color: rgb(var(--v-theme-error));
47
+ }
48
+ .v-stepper-item--disabled {
49
+ opacity: var(--v-medium-emphasis-opacity);
50
+ pointer-events: none;
51
+ }
52
+ .v-stepper--alt-labels .v-stepper-item {
53
+ flex-direction: column;
54
+ justify-content: flex-start;
55
+ align-items: center;
56
+ flex-basis: 175px;
57
+ }
58
+
59
+ .v-stepper-item__avatar.v-avatar {
60
+ background: rgba(var(--v-theme-surface-variant), var(--v-medium-emphasis-opacity));
61
+ color: rgb(var(--v-theme-on-surface-variant));
62
+ font-size: 0.75rem;
63
+ margin-inline-end: 8px;
64
+ }
65
+ .v-stepper--mobile .v-stepper-item__avatar.v-avatar {
66
+ margin-inline-end: 0;
67
+ }
68
+ .v-stepper-item__avatar.v-avatar .v-icon {
69
+ font-size: 0.875rem;
70
+ }
71
+ .v-stepper-item--selected .v-stepper-item__avatar.v-avatar, .v-stepper-item--complete .v-stepper-item__avatar.v-avatar {
72
+ background: rgb(var(--v-theme-surface-variant));
73
+ }
74
+ .v-stepper-item--error .v-stepper-item__avatar.v-avatar {
75
+ background: rgb(var(--v-theme-error));
76
+ }
77
+ .v-stepper--alt-labels .v-stepper-item__avatar.v-avatar {
78
+ margin-bottom: 16px;
79
+ margin-inline-end: 0;
80
+ }
81
+
82
+ .v-stepper-item__title {
83
+ line-height: 1;
84
+ }
85
+ .v-stepper--mobile .v-stepper-item__title {
86
+ display: none;
87
+ }
88
+
89
+ .v-stepper-item__subtitle {
90
+ font-size: 0.75rem;
91
+ text-align: left;
92
+ line-height: 1;
93
+ opacity: var(--v-medium-emphasis-opacity);
94
+ }
95
+ .v-stepper--alt-labels .v-stepper-item__subtitle {
96
+ text-align: center;
97
+ }
98
+ .v-stepper--mobile .v-stepper-item__subtitle {
99
+ display: none;
100
+ }
101
+
102
+ .v-stepper-item__overlay {
103
+ background-color: currentColor;
104
+ border-radius: inherit;
105
+ opacity: 0;
106
+ transition: opacity 0.2s ease-in-out;
107
+ }
108
+
109
+ .v-stepper-item__overlay,
110
+ .v-stepper-item__underlay {
111
+ pointer-events: none;
112
+ }
113
+ .v-stepper-item__overlay,
114
+ .v-stepper-item__underlay {
115
+ position: absolute;
116
+ top: 0;
117
+ left: 0;
118
+ width: 100%;
119
+ height: 100%;
117
120
  }
@@ -6,6 +6,7 @@ import "./VStepperItem.css";
6
6
  import { VAvatar } from "../VAvatar/VAvatar.mjs";
7
7
  import { VIcon } from "../VIcon/VIcon.mjs"; // Composables
8
8
  import { makeGroupItemProps, useGroupItem } from "../../composables/group.mjs";
9
+ import { IconValue } from "../../composables/icons.mjs";
9
10
  import { genOverlays } from "../../composables/variant.mjs"; // Directives
10
11
  import { Ripple } from "../../directives/ripple/index.mjs"; // Utilities
11
12
  import { computed } from 'vue';
@@ -17,20 +18,20 @@ export const makeStepperItemProps = propsFactory({
17
18
  subtitle: String,
18
19
  complete: Boolean,
19
20
  completeIcon: {
20
- type: String,
21
+ type: IconValue,
21
22
  default: '$complete'
22
23
  },
23
24
  editable: Boolean,
24
25
  editIcon: {
25
- type: String,
26
+ type: IconValue,
26
27
  default: '$edit'
27
28
  },
28
29
  error: Boolean,
29
30
  errorIcon: {
30
- type: String,
31
+ type: IconValue,
31
32
  default: '$error'
32
33
  },
33
- icon: String,
34
+ icon: IconValue,
34
35
  ripple: {
35
36
  type: [Boolean, Object],
36
37
  default: true
@@ -1 +1 @@
1
- {"version":3,"file":"VStepperItem.mjs","names":["VAvatar","VIcon","makeGroupItemProps","useGroupItem","genOverlays","Ripple","computed","VStepperSymbol","genericComponent","propsFactory","useRender","makeStepperItemProps","color","String","title","subtitle","complete","Boolean","completeIcon","type","default","editable","editIcon","error","errorIcon","icon","ripple","Object","rules","Array","makeVStepperItemProps","VStepperItem","name","directives","props","emits","val","setup","_ref","slots","group","step","value","isValid","every","handler","isClickable","disabled","canEdit","hasError","hasCompleted","length","isSelected","slotProps","hasColor","hasTitle","hasSubtitle","onClick","toggle","_withDirectives","_createVNode","selectedClass","undefined","_resolveDirective"],"sources":["../../../src/components/VStepper/VStepperItem.tsx"],"sourcesContent":["// Styles\nimport './VStepperItem.sass'\n\n// Components\nimport { VAvatar } from '@/components/VAvatar/VAvatar'\nimport { VIcon } from '@/components/VIcon/VIcon'\n\n// Composables\nimport { makeGroupItemProps, useGroupItem } from '@/composables/group'\nimport { genOverlays } from '@/composables/variant'\n\n// Directives\nimport { Ripple } from '@/directives/ripple'\n\n// Utilities\nimport { computed } from 'vue'\nimport { VStepperSymbol } from './shared'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { RippleDirectiveBinding } from '@/directives/ripple'\n\nexport type StepperItem = string | Record<string, any>\n\nexport type StepperItemSlot = {\n canEdit: boolean\n hasError: boolean\n hasCompleted: boolean\n title?: string | number\n subtitle?: string | number\n step: any\n}\n\nexport type VStepperItemSlots = {\n default: StepperItemSlot\n icon: StepperItemSlot\n title: StepperItemSlot\n subtitle: StepperItemSlot\n}\n\nexport type ValidationRule = () => string | boolean\n\nexport const makeStepperItemProps = propsFactory({\n color: String,\n title: String,\n subtitle: String,\n complete: Boolean,\n completeIcon: {\n type: String,\n default: '$complete',\n },\n editable: Boolean,\n editIcon: {\n type: String,\n default: '$edit',\n },\n error: Boolean,\n errorIcon: {\n type: String,\n default: '$error',\n },\n icon: String,\n ripple: {\n type: [Boolean, Object] as PropType<RippleDirectiveBinding['value']>,\n default: true,\n },\n rules: {\n type: Array as PropType<readonly ValidationRule[]>,\n default: () => ([]),\n },\n}, 'StepperItem')\n\nexport const makeVStepperItemProps = propsFactory({\n ...makeStepperItemProps(),\n ...makeGroupItemProps(),\n}, 'VStepperItem')\n\nexport const VStepperItem = genericComponent<VStepperItemSlots>()({\n name: 'VStepperItem',\n\n directives: { Ripple },\n\n props: makeVStepperItemProps(),\n\n emits: {\n 'group:selected': (val: { value: boolean }) => true,\n },\n\n setup (props, { slots }) {\n const group = useGroupItem(props, VStepperSymbol, true)\n const step = computed(() => group?.value.value ?? props.value)\n const isValid = computed(() => props.rules.every(handler => handler() === true))\n const isClickable = computed(() => !props.disabled && props.editable)\n const canEdit = computed(() => !props.disabled && props.editable)\n const hasError = computed(() => props.error || !isValid.value)\n const hasCompleted = computed(() => props.complete || (props.rules.length > 0 && isValid.value))\n const icon = computed(() => {\n if (hasError.value) return props.errorIcon\n if (hasCompleted.value) return props.completeIcon\n if (group.isSelected.value && props.editable) return props.editIcon\n\n return props.icon\n })\n const slotProps = computed(() => ({\n canEdit: canEdit.value,\n hasError: hasError.value,\n hasCompleted: hasCompleted.value,\n title: props.title,\n subtitle: props.subtitle,\n step: step.value,\n value: props.value,\n }))\n\n useRender(() => {\n const hasColor = (\n !group ||\n group.isSelected.value ||\n hasCompleted.value ||\n canEdit.value\n ) && (\n !hasError.value &&\n !props.disabled\n )\n const hasTitle = !!(props.title != null || slots.title)\n const hasSubtitle = !!(props.subtitle != null || slots.subtitle)\n\n function onClick () {\n group?.toggle()\n }\n\n return (\n <button\n class={[\n 'v-stepper-item',\n {\n 'v-stepper-item--complete': hasCompleted.value,\n 'v-stepper-item--disabled': props.disabled,\n 'v-stepper-item--error': hasError.value,\n },\n group?.selectedClass.value,\n ]}\n disabled={ !props.editable }\n v-ripple={[\n props.ripple && props.editable,\n null,\n null,\n ]}\n onClick={ onClick }\n >\n { isClickable.value && genOverlays(true, 'v-stepper-item') }\n\n <VAvatar\n key=\"stepper-avatar\"\n class=\"v-stepper-item__avatar\"\n color={ hasColor ? props.color : undefined }\n size={ 24 }\n >\n { slots.icon?.(slotProps.value) ?? (\n icon.value ? (\n <VIcon icon={ icon.value }></VIcon>\n ) : step.value\n )}\n </VAvatar>\n\n <div class=\"v-stepper-item__content\">\n { hasTitle && (\n <div\n key=\"title\"\n class=\"v-stepper-item__title\"\n >\n { slots.title?.(slotProps.value) ?? props.title }\n </div>\n )}\n\n { hasSubtitle && (\n <div\n key=\"subtitle\"\n class=\"v-stepper-item__subtitle\"\n >\n { slots.subtitle?.(slotProps.value) ?? props.subtitle }\n </div>\n )}\n\n { slots.default?.(slotProps.value) }\n </div>\n </button>\n )\n })\n return {}\n },\n})\n\nexport type VStepperItem = InstanceType<typeof VStepperItem>\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"VStepperItem.mjs","names":["VAvatar","VIcon","makeGroupItemProps","useGroupItem","IconValue","genOverlays","Ripple","computed","VStepperSymbol","genericComponent","propsFactory","useRender","makeStepperItemProps","color","String","title","subtitle","complete","Boolean","completeIcon","type","default","editable","editIcon","error","errorIcon","icon","ripple","Object","rules","Array","makeVStepperItemProps","VStepperItem","name","directives","props","emits","val","setup","_ref","slots","group","step","value","isValid","every","handler","isClickable","disabled","canEdit","hasError","hasCompleted","length","isSelected","slotProps","hasColor","hasTitle","hasSubtitle","onClick","toggle","_withDirectives","_createVNode","selectedClass","undefined","_resolveDirective"],"sources":["../../../src/components/VStepper/VStepperItem.tsx"],"sourcesContent":["// Styles\nimport './VStepperItem.sass'\n\n// Components\nimport { VAvatar } from '@/components/VAvatar/VAvatar'\nimport { VIcon } from '@/components/VIcon/VIcon'\n\n// Composables\nimport { makeGroupItemProps, useGroupItem } from '@/composables/group'\nimport { IconValue } from '@/composables/icons'\nimport { genOverlays } from '@/composables/variant'\n\n// Directives\nimport { Ripple } from '@/directives/ripple'\n\n// Utilities\nimport { computed } from 'vue'\nimport { VStepperSymbol } from './shared'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { RippleDirectiveBinding } from '@/directives/ripple'\n\nexport type StepperItem = string | Record<string, any>\n\nexport type StepperItemSlot = {\n canEdit: boolean\n hasError: boolean\n hasCompleted: boolean\n title?: string | number\n subtitle?: string | number\n step: any\n}\n\nexport type VStepperItemSlots = {\n default: StepperItemSlot\n icon: StepperItemSlot\n title: StepperItemSlot\n subtitle: StepperItemSlot\n}\n\nexport type ValidationRule = () => string | boolean\n\nexport const makeStepperItemProps = propsFactory({\n color: String,\n title: String,\n subtitle: String,\n complete: Boolean,\n completeIcon: {\n type: IconValue,\n default: '$complete',\n },\n editable: Boolean,\n editIcon: {\n type: IconValue,\n default: '$edit',\n },\n error: Boolean,\n errorIcon: {\n type: IconValue,\n default: '$error',\n },\n icon: IconValue,\n ripple: {\n type: [Boolean, Object] as PropType<RippleDirectiveBinding['value']>,\n default: true,\n },\n rules: {\n type: Array as PropType<readonly ValidationRule[]>,\n default: () => ([]),\n },\n}, 'StepperItem')\n\nexport const makeVStepperItemProps = propsFactory({\n ...makeStepperItemProps(),\n ...makeGroupItemProps(),\n}, 'VStepperItem')\n\nexport const VStepperItem = genericComponent<VStepperItemSlots>()({\n name: 'VStepperItem',\n\n directives: { Ripple },\n\n props: makeVStepperItemProps(),\n\n emits: {\n 'group:selected': (val: { value: boolean }) => true,\n },\n\n setup (props, { slots }) {\n const group = useGroupItem(props, VStepperSymbol, true)\n const step = computed(() => group?.value.value ?? props.value)\n const isValid = computed(() => props.rules.every(handler => handler() === true))\n const isClickable = computed(() => !props.disabled && props.editable)\n const canEdit = computed(() => !props.disabled && props.editable)\n const hasError = computed(() => props.error || !isValid.value)\n const hasCompleted = computed(() => props.complete || (props.rules.length > 0 && isValid.value))\n const icon = computed(() => {\n if (hasError.value) return props.errorIcon\n if (hasCompleted.value) return props.completeIcon\n if (group.isSelected.value && props.editable) return props.editIcon\n\n return props.icon\n })\n const slotProps = computed(() => ({\n canEdit: canEdit.value,\n hasError: hasError.value,\n hasCompleted: hasCompleted.value,\n title: props.title,\n subtitle: props.subtitle,\n step: step.value,\n value: props.value,\n }))\n\n useRender(() => {\n const hasColor = (\n !group ||\n group.isSelected.value ||\n hasCompleted.value ||\n canEdit.value\n ) && (\n !hasError.value &&\n !props.disabled\n )\n const hasTitle = !!(props.title != null || slots.title)\n const hasSubtitle = !!(props.subtitle != null || slots.subtitle)\n\n function onClick () {\n group?.toggle()\n }\n\n return (\n <button\n class={[\n 'v-stepper-item',\n {\n 'v-stepper-item--complete': hasCompleted.value,\n 'v-stepper-item--disabled': props.disabled,\n 'v-stepper-item--error': hasError.value,\n },\n group?.selectedClass.value,\n ]}\n disabled={ !props.editable }\n v-ripple={[\n props.ripple && props.editable,\n null,\n null,\n ]}\n onClick={ onClick }\n >\n { isClickable.value && genOverlays(true, 'v-stepper-item') }\n\n <VAvatar\n key=\"stepper-avatar\"\n class=\"v-stepper-item__avatar\"\n color={ hasColor ? props.color : undefined }\n size={ 24 }\n >\n { slots.icon?.(slotProps.value) ?? (\n icon.value ? (\n <VIcon icon={ icon.value }></VIcon>\n ) : step.value\n )}\n </VAvatar>\n\n <div class=\"v-stepper-item__content\">\n { hasTitle && (\n <div\n key=\"title\"\n class=\"v-stepper-item__title\"\n >\n { slots.title?.(slotProps.value) ?? props.title }\n </div>\n )}\n\n { hasSubtitle && (\n <div\n key=\"subtitle\"\n class=\"v-stepper-item__subtitle\"\n >\n { slots.subtitle?.(slotProps.value) ?? props.subtitle }\n </div>\n )}\n\n { slots.default?.(slotProps.value) }\n </div>\n </button>\n )\n })\n return {}\n },\n})\n\nexport type VStepperItem = InstanceType<typeof VStepperItem>\n"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,5 @@
1
1
  import * as vue from 'vue';
2
- import { ComponentPropsOptions, ExtractPropTypes, DirectiveBinding, PropType } from 'vue';
2
+ import { ComponentPropsOptions, ExtractPropTypes, PropType, ComponentPublicInstance, FunctionalComponent, DirectiveBinding } from 'vue';
3
3
 
4
4
  type ClassValue = any;
5
5
 
@@ -17,6 +17,12 @@ declare const breakpoints: readonly ["sm", "md", "lg", "xl", "xxl"];
17
17
  type Breakpoint = typeof breakpoints[number];
18
18
  type DisplayBreakpoint = 'xs' | Breakpoint;
19
19
 
20
+ type JSXComponent<Props = any> = {
21
+ new (): ComponentPublicInstance<Props>;
22
+ } | FunctionalComponent<Props>;
23
+ type IconValue = string | (string | [path: string, opacity: number])[] | JSXComponent;
24
+ declare const IconValue: PropType<IconValue>;
25
+
20
26
  interface RippleDirectiveBinding extends Omit<DirectiveBinding, 'modifiers' | 'value'> {
21
27
  value?: boolean | {
22
28
  class: string;
@@ -47,15 +53,15 @@ declare const VStepperItem: {
47
53
  ripple: boolean | {
48
54
  class: string;
49
55
  } | undefined;
50
- completeIcon: string;
56
+ completeIcon: IconValue;
51
57
  editable: boolean;
52
- editIcon: string;
53
- errorIcon: string;
58
+ editIcon: IconValue;
59
+ errorIcon: IconValue;
54
60
  } & {
55
61
  color?: string | undefined;
56
62
  value?: any;
57
63
  title?: string | undefined;
58
- icon?: string | undefined;
64
+ icon?: IconValue | undefined;
59
65
  selectedClass?: string | undefined;
60
66
  subtitle?: string | undefined;
61
67
  } & {
@@ -92,10 +98,10 @@ declare const VStepperItem: {
92
98
  ripple: boolean | {
93
99
  class: string;
94
100
  } | undefined;
95
- completeIcon: string;
101
+ completeIcon: IconValue;
96
102
  editable: boolean;
97
- editIcon: string;
98
- errorIcon: string;
103
+ editIcon: IconValue;
104
+ errorIcon: IconValue;
99
105
  }, true, {}, vue.SlotsType<Partial<{
100
106
  default: (arg: StepperItemSlot) => vue.VNode[];
101
107
  icon: (arg: StepperItemSlot) => vue.VNode[];
@@ -116,15 +122,15 @@ declare const VStepperItem: {
116
122
  ripple: boolean | {
117
123
  class: string;
118
124
  } | undefined;
119
- completeIcon: string;
125
+ completeIcon: IconValue;
120
126
  editable: boolean;
121
- editIcon: string;
122
- errorIcon: string;
127
+ editIcon: IconValue;
128
+ errorIcon: IconValue;
123
129
  } & {
124
130
  color?: string | undefined;
125
131
  value?: any;
126
132
  title?: string | undefined;
127
- icon?: string | undefined;
133
+ icon?: IconValue | undefined;
128
134
  selectedClass?: string | undefined;
129
135
  subtitle?: string | undefined;
130
136
  } & {
@@ -157,10 +163,10 @@ declare const VStepperItem: {
157
163
  ripple: boolean | {
158
164
  class: string;
159
165
  } | undefined;
160
- completeIcon: string;
166
+ completeIcon: IconValue;
161
167
  editable: boolean;
162
- editIcon: string;
163
- errorIcon: string;
168
+ editIcon: IconValue;
169
+ errorIcon: IconValue;
164
170
  }>;
165
171
  __isFragment?: never;
166
172
  __isTeleport?: never;
@@ -173,15 +179,15 @@ declare const VStepperItem: {
173
179
  ripple: boolean | {
174
180
  class: string;
175
181
  } | undefined;
176
- completeIcon: string;
182
+ completeIcon: IconValue;
177
183
  editable: boolean;
178
- editIcon: string;
179
- errorIcon: string;
184
+ editIcon: IconValue;
185
+ errorIcon: IconValue;
180
186
  } & {
181
187
  color?: string | undefined;
182
188
  value?: any;
183
189
  title?: string | undefined;
184
- icon?: string | undefined;
190
+ icon?: IconValue | undefined;
185
191
  selectedClass?: string | undefined;
186
192
  subtitle?: string | undefined;
187
193
  } & {
@@ -218,10 +224,10 @@ declare const VStepperItem: {
218
224
  ripple: boolean | {
219
225
  class: string;
220
226
  } | undefined;
221
- completeIcon: string;
227
+ completeIcon: IconValue;
222
228
  editable: boolean;
223
- editIcon: string;
224
- errorIcon: string;
229
+ editIcon: IconValue;
230
+ errorIcon: IconValue;
225
231
  }, {}, string, vue.SlotsType<Partial<{
226
232
  default: (arg: StepperItemSlot) => vue.VNode[];
227
233
  icon: (arg: StepperItemSlot) => vue.VNode[];
@@ -236,20 +242,20 @@ declare const VStepperItem: {
236
242
  subtitle: StringConstructor;
237
243
  complete: BooleanConstructor;
238
244
  completeIcon: {
239
- type: StringConstructor;
245
+ type: PropType<IconValue>;
240
246
  default: string;
241
247
  };
242
248
  editable: BooleanConstructor;
243
249
  editIcon: {
244
- type: StringConstructor;
250
+ type: PropType<IconValue>;
245
251
  default: string;
246
252
  };
247
253
  error: BooleanConstructor;
248
254
  errorIcon: {
249
- type: StringConstructor;
255
+ type: PropType<IconValue>;
250
256
  default: string;
251
257
  };
252
- icon: StringConstructor;
258
+ icon: PropType<IconValue>;
253
259
  ripple: {
254
260
  type: PropType<RippleDirectiveBinding["value"]>;
255
261
  default: boolean;
@@ -267,20 +273,20 @@ declare const VStepperItem: {
267
273
  subtitle: StringConstructor;
268
274
  complete: BooleanConstructor;
269
275
  completeIcon: {
270
- type: StringConstructor;
276
+ type: PropType<IconValue>;
271
277
  default: string;
272
278
  };
273
279
  editable: BooleanConstructor;
274
280
  editIcon: {
275
- type: StringConstructor;
281
+ type: PropType<IconValue>;
276
282
  default: string;
277
283
  };
278
284
  error: BooleanConstructor;
279
285
  errorIcon: {
280
- type: StringConstructor;
286
+ type: PropType<IconValue>;
281
287
  default: string;
282
288
  };
283
- icon: StringConstructor;
289
+ icon: PropType<IconValue>;
284
290
  ripple: {
285
291
  type: PropType<RippleDirectiveBinding["value"]>;
286
292
  default: boolean;
@@ -335,9 +341,9 @@ declare const VStepper: {
335
341
  modelValue?: any;
336
342
  rounded?: string | number | boolean | undefined;
337
343
  bgColor?: string | undefined;
338
- completeIcon?: string | undefined;
339
- editIcon?: string | undefined;
340
- errorIcon?: string | undefined;
344
+ completeIcon?: IconValue | undefined;
345
+ editIcon?: IconValue | undefined;
346
+ errorIcon?: IconValue | undefined;
341
347
  } & {
342
348
  $children?: vue.VNodeChild | {
343
349
  [x: `header-item.${string}`]: ((arg: StepperItemSlot) => vue.VNodeChild) | undefined;
@@ -466,9 +472,9 @@ declare const VStepper: {
466
472
  modelValue?: any;
467
473
  rounded?: string | number | boolean | undefined;
468
474
  bgColor?: string | undefined;
469
- completeIcon?: string | undefined;
470
- editIcon?: string | undefined;
471
- errorIcon?: string | undefined;
475
+ completeIcon?: IconValue | undefined;
476
+ editIcon?: IconValue | undefined;
477
+ errorIcon?: IconValue | undefined;
472
478
  } & {
473
479
  $children?: vue.VNodeChild | {
474
480
  [x: `header-item.${string}`]: ((arg: StepperItemSlot) => vue.VNodeChild) | undefined;
@@ -579,9 +585,9 @@ declare const VStepper: {
579
585
  modelValue?: any;
580
586
  rounded?: string | number | boolean | undefined;
581
587
  bgColor?: string | undefined;
582
- completeIcon?: string | undefined;
583
- editIcon?: string | undefined;
584
- errorIcon?: string | undefined;
588
+ completeIcon?: IconValue | undefined;
589
+ editIcon?: IconValue | undefined;
590
+ errorIcon?: IconValue | undefined;
585
591
  } & {
586
592
  $children?: vue.VNodeChild | {
587
593
  [x: `header-item.${string}`]: ((arg: StepperItemSlot) => vue.VNodeChild) | undefined;
@@ -728,10 +734,10 @@ declare const VStepper: {
728
734
  mobileBreakpoint: PropType<number | DisplayBreakpoint>;
729
735
  altLabels: BooleanConstructor;
730
736
  bgColor: StringConstructor;
731
- completeIcon: StringConstructor;
732
- editIcon: StringConstructor;
737
+ completeIcon: PropType<IconValue>;
738
+ editIcon: PropType<IconValue>;
733
739
  editable: BooleanConstructor;
734
- errorIcon: StringConstructor;
740
+ errorIcon: PropType<IconValue>;
735
741
  hideActions: BooleanConstructor;
736
742
  items: {
737
743
  type: PropType<readonly StepperItem[]>;
@@ -810,10 +816,10 @@ declare const VStepper: {
810
816
  mobileBreakpoint: PropType<number | DisplayBreakpoint>;
811
817
  altLabels: BooleanConstructor;
812
818
  bgColor: StringConstructor;
813
- completeIcon: StringConstructor;
814
- editIcon: StringConstructor;
819
+ completeIcon: PropType<IconValue>;
820
+ editIcon: PropType<IconValue>;
815
821
  editable: BooleanConstructor;
816
- errorIcon: StringConstructor;
822
+ errorIcon: PropType<IconValue>;
817
823
  hideActions: BooleanConstructor;
818
824
  items: {
819
825
  type: PropType<readonly StepperItem[]>;