@vuetify/nightly 3.0.0-beta.0 → 3.0.0-beta.2

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 (277) hide show
  1. package/CHANGELOG.md +53 -2
  2. package/dist/json/attributes.json +343 -195
  3. package/dist/json/importMap.json +20 -0
  4. package/dist/json/tags.json +106 -44
  5. package/dist/json/web-types.json +946 -549
  6. package/dist/vuetify.css +1486 -1085
  7. package/dist/vuetify.d.ts +9036 -8077
  8. package/dist/vuetify.esm.js +1511 -944
  9. package/dist/vuetify.esm.js.map +1 -1
  10. package/dist/vuetify.js +1510 -943
  11. package/dist/vuetify.js.map +1 -1
  12. package/dist/vuetify.min.css +3 -3
  13. package/dist/vuetify.min.js +825 -754
  14. package/dist/vuetify.min.js.map +1 -1
  15. package/lib/components/VAlert/VAlert.css +29 -8
  16. package/lib/components/VAlert/VAlert.mjs +31 -17
  17. package/lib/components/VAlert/VAlert.mjs.map +1 -1
  18. package/lib/components/VAlert/VAlert.sass +27 -7
  19. package/lib/components/VAlert/VAlertTitle.mjs +1 -0
  20. package/lib/components/VAlert/VAlertTitle.mjs.map +1 -1
  21. package/lib/components/VAlert/_variables.scss +14 -7
  22. package/lib/components/VApp/VApp.css +1 -0
  23. package/lib/components/VApp/VApp.sass +1 -0
  24. package/lib/components/VAppBar/VAppBar.mjs +7 -3
  25. package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
  26. package/lib/components/VAppBar/VAppBarTitle.mjs.map +1 -1
  27. package/lib/components/VAutocomplete/VAutocomplete.mjs +82 -69
  28. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  29. package/lib/components/VAvatar/VAvatar.mjs +15 -14
  30. package/lib/components/VAvatar/VAvatar.mjs.map +1 -1
  31. package/lib/components/VBanner/VBanner.css +82 -58
  32. package/lib/components/VBanner/VBanner.mjs +39 -43
  33. package/lib/components/VBanner/VBanner.mjs.map +1 -1
  34. package/lib/components/VBanner/VBanner.sass +61 -54
  35. package/lib/components/VBanner/VBannerActions.mjs +34 -2
  36. package/lib/components/VBanner/VBannerActions.mjs.map +1 -1
  37. package/lib/components/VBanner/VBannerAvatar.mjs +20 -0
  38. package/lib/components/VBanner/VBannerAvatar.mjs.map +1 -0
  39. package/lib/components/VBanner/VBannerIcon.mjs +20 -0
  40. package/lib/components/VBanner/VBannerIcon.mjs.map +1 -0
  41. package/lib/components/VBanner/_variables.scss +10 -14
  42. package/lib/components/VBanner/index.mjs +2 -0
  43. package/lib/components/VBanner/index.mjs.map +1 -1
  44. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs +2 -0
  45. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs.map +1 -1
  46. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs +10 -9
  47. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs.map +1 -1
  48. package/lib/components/VBtn/VBtn.css +20 -1
  49. package/lib/components/VBtn/VBtn.mjs +20 -7
  50. package/lib/components/VBtn/VBtn.mjs.map +1 -1
  51. package/lib/components/VBtn/VBtn.sass +15 -2
  52. package/lib/components/VBtn/_variables.scss +3 -0
  53. package/lib/components/VBtnGroup/VBtnGroup.css +14 -6
  54. package/lib/components/VBtnGroup/VBtnGroup.sass +14 -6
  55. package/lib/components/VCard/VCard.css +13 -11
  56. package/lib/components/VCard/VCard.mjs +5 -2
  57. package/lib/components/VCard/VCard.mjs.map +1 -1
  58. package/lib/components/VCard/VCard.sass +12 -9
  59. package/lib/components/VCard/VCardActions.mjs +1 -2
  60. package/lib/components/VCard/VCardActions.mjs.map +1 -1
  61. package/lib/components/VCard/VCardContent.mjs +3 -0
  62. package/lib/components/VCard/VCardContent.mjs.map +1 -0
  63. package/lib/components/VCard/_variables.scss +11 -5
  64. package/lib/components/VCard/index.mjs +1 -0
  65. package/lib/components/VCard/index.mjs.map +1 -1
  66. package/lib/components/VCarousel/VCarousel.mjs +1 -1
  67. package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
  68. package/lib/components/VCheckbox/VCheckbox.mjs +2 -2
  69. package/lib/components/VCheckbox/VCheckbox.mjs.map +1 -1
  70. package/lib/components/VChip/VChip.css +3 -0
  71. package/lib/components/VChip/VChip.sass +3 -0
  72. package/lib/components/VChip/_variables.scss +3 -0
  73. package/lib/components/VColorPicker/VColorPickerCanvas.css +1 -1
  74. package/lib/components/VCombobox/VCombobox.mjs +92 -74
  75. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  76. package/lib/components/VDialog/VDialog.css +31 -11
  77. package/lib/components/VDialog/VDialog.mjs +6 -9
  78. package/lib/components/VDialog/VDialog.mjs.map +1 -1
  79. package/lib/components/VDialog/VDialog.sass +27 -10
  80. package/lib/components/VDialog/_variables.scss +3 -6
  81. package/lib/components/VExpansionPanel/VExpansionPanel.css +3 -2
  82. package/lib/components/VExpansionPanel/VExpansionPanel.mjs +6 -2
  83. package/lib/components/VExpansionPanel/VExpansionPanel.mjs.map +1 -1
  84. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs +5 -3
  85. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs.map +1 -1
  86. package/lib/components/VExpansionPanel/VExpansionPanels.mjs +4 -0
  87. package/lib/components/VExpansionPanel/VExpansionPanels.mjs.map +1 -1
  88. package/lib/components/VField/VField.css +1 -1
  89. package/lib/components/VField/VField.mjs +3 -4
  90. package/lib/components/VField/VField.mjs.map +1 -1
  91. package/lib/components/VField/VField.sass +1 -1
  92. package/lib/components/VFileInput/VFileInput.mjs +2 -1
  93. package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
  94. package/lib/components/VFooter/VFooter.mjs +32 -15
  95. package/lib/components/VFooter/VFooter.mjs.map +1 -1
  96. package/lib/components/VForm/VForm.mjs +25 -11
  97. package/lib/components/VForm/VForm.mjs.map +1 -1
  98. package/lib/components/VIcon/VIcon.css +27 -12
  99. package/lib/components/VIcon/VIcon.mjs +19 -16
  100. package/lib/components/VIcon/VIcon.mjs.map +1 -1
  101. package/lib/components/VIcon/VIcon.sass +27 -16
  102. package/lib/components/VIcon/_variables.scss +1 -0
  103. package/lib/components/VInput/VInput.css +3 -1
  104. package/lib/components/VInput/VInput.mjs +3 -4
  105. package/lib/components/VInput/VInput.mjs.map +1 -1
  106. package/lib/components/VInput/VInput.sass +3 -1
  107. package/lib/components/VInput/_variables.scss +4 -0
  108. package/lib/components/VList/VList.css +7 -6
  109. package/lib/components/VList/VList.mjs +36 -17
  110. package/lib/components/VList/VList.mjs.map +1 -1
  111. package/lib/components/VList/VList.sass +3 -2
  112. package/lib/components/VList/VListChildren.mjs +1 -1
  113. package/lib/components/VList/VListChildren.mjs.map +1 -1
  114. package/lib/components/VList/VListGroup.mjs +28 -10
  115. package/lib/components/VList/VListGroup.mjs.map +1 -1
  116. package/lib/components/VList/VListItem.css +119 -42
  117. package/lib/components/VList/VListItem.mjs +36 -32
  118. package/lib/components/VList/VListItem.mjs.map +1 -1
  119. package/lib/components/VList/VListItem.sass +76 -28
  120. package/lib/components/VList/VListItemAction.mjs +29 -0
  121. package/lib/components/VList/VListItemAction.mjs.map +1 -0
  122. package/lib/components/VList/VListItemAvatar.mjs +10 -16
  123. package/lib/components/VList/VListItemAvatar.mjs.map +1 -1
  124. package/lib/components/VList/VListItemIcon.mjs +23 -0
  125. package/lib/components/VList/VListItemIcon.mjs.map +1 -0
  126. package/lib/components/VList/VListItemMedia.mjs +4 -4
  127. package/lib/components/VList/VListItemMedia.mjs.map +1 -1
  128. package/lib/components/VList/_variables.scss +12 -3
  129. package/lib/components/VList/index.mjs +2 -0
  130. package/lib/components/VList/index.mjs.map +1 -1
  131. package/lib/components/VMenu/VMenu.css +2 -12
  132. package/lib/components/VMenu/VMenu.mjs +61 -31
  133. package/lib/components/VMenu/VMenu.mjs.map +1 -1
  134. package/lib/components/VMenu/VMenu.sass +3 -6
  135. package/lib/components/VMenu/shared.mjs +2 -0
  136. package/lib/components/VMenu/shared.mjs.map +1 -0
  137. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs +1 -1
  138. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs.map +1 -1
  139. package/lib/components/VOverlay/VOverlay.css +8 -0
  140. package/lib/components/VOverlay/VOverlay.mjs +16 -15
  141. package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
  142. package/lib/components/VOverlay/VOverlay.sass +9 -0
  143. package/lib/components/VOverlay/_variables.scss +1 -0
  144. package/lib/components/VOverlay/positionStrategies.mjs +7 -3
  145. package/lib/components/VOverlay/positionStrategies.mjs.map +1 -1
  146. package/lib/components/VOverlay/scrollStrategies.mjs +9 -0
  147. package/lib/components/VOverlay/scrollStrategies.mjs.map +1 -1
  148. package/lib/components/VOverlay/useActivator.mjs +50 -14
  149. package/lib/components/VOverlay/useActivator.mjs.map +1 -1
  150. package/lib/components/VPagination/VPagination.mjs +10 -12
  151. package/lib/components/VPagination/VPagination.mjs.map +1 -1
  152. package/lib/components/VProgressLinear/VProgressLinear.css +1 -1
  153. package/lib/components/VRadio/VRadio.mjs +1 -2
  154. package/lib/components/VRadio/VRadio.mjs.map +1 -1
  155. package/lib/components/VRadioGroup/VRadioGroup.mjs +2 -2
  156. package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
  157. package/lib/components/VRangeSlider/VRangeSlider.mjs +5 -2
  158. package/lib/components/VRangeSlider/VRangeSlider.mjs.map +1 -1
  159. package/lib/components/VRating/VRating.css +2 -2
  160. package/lib/components/VRating/VRating.mjs +13 -3
  161. package/lib/components/VRating/VRating.mjs.map +1 -1
  162. package/lib/components/VRating/VRating.sass +2 -2
  163. package/lib/components/VSelect/VSelect.mjs +70 -91
  164. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  165. package/lib/components/VSelectionControl/VSelectionControl.mjs +2 -1
  166. package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -1
  167. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs +2 -2
  168. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs.map +1 -1
  169. package/lib/components/VSlideGroup/VSlideGroup.css +0 -5
  170. package/lib/components/VSlideGroup/VSlideGroup.mjs +36 -14
  171. package/lib/components/VSlideGroup/VSlideGroup.mjs.map +1 -1
  172. package/lib/components/VSlideGroup/VSlideGroup.sass +0 -4
  173. package/lib/components/VSlideGroup/VSlideGroupItem.mjs +3 -1
  174. package/lib/components/VSlideGroup/VSlideGroupItem.mjs.map +1 -1
  175. package/lib/components/VSlider/VSlider.css +7 -2
  176. package/lib/components/VSlider/VSlider.sass +11 -5
  177. package/lib/components/VSlider/VSliderTrack.css +6 -6
  178. package/lib/components/VSlider/VSliderTrack.mjs +1 -1
  179. package/lib/components/VSlider/VSliderTrack.mjs.map +1 -1
  180. package/lib/components/VSlider/VSliderTrack.sass +7 -7
  181. package/lib/components/VSlider/_variables.scss +5 -2
  182. package/lib/components/VSnackbar/VSnackbar.css +14 -13
  183. package/lib/components/VSnackbar/VSnackbar.mjs +22 -10
  184. package/lib/components/VSnackbar/VSnackbar.mjs.map +1 -1
  185. package/lib/components/VSnackbar/VSnackbar.sass +15 -16
  186. package/lib/components/VSnackbar/_variables.scss +0 -4
  187. package/lib/components/VSwitch/VSwitch.mjs +8 -5
  188. package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
  189. package/lib/components/VSystemBar/VSystemBar.css +0 -5
  190. package/lib/components/VSystemBar/VSystemBar.mjs +31 -14
  191. package/lib/components/VSystemBar/VSystemBar.mjs.map +1 -1
  192. package/lib/components/VSystemBar/VSystemBar.sass +0 -5
  193. package/lib/components/VSystemBar/_variables.scss +0 -3
  194. package/lib/components/VTabs/VTab.mjs +28 -32
  195. package/lib/components/VTabs/VTab.mjs.map +1 -1
  196. package/lib/components/VTabs/VTabs.css +6 -2
  197. package/lib/components/VTabs/VTabs.mjs +7 -8
  198. package/lib/components/VTabs/VTabs.mjs.map +1 -1
  199. package/lib/components/VTabs/VTabs.sass +6 -1
  200. package/lib/components/VTabs/shared.mjs +2 -0
  201. package/lib/components/VTabs/shared.mjs.map +1 -0
  202. package/lib/components/VTextField/VTextField.css +4 -4
  203. package/lib/components/VTextField/VTextField.mjs +5 -9
  204. package/lib/components/VTextField/VTextField.mjs.map +1 -1
  205. package/lib/components/VTextField/VTextField.sass +5 -5
  206. package/lib/components/VTextarea/VTextarea.css +7 -4
  207. package/lib/components/VTextarea/VTextarea.sass +9 -5
  208. package/lib/components/VTimeline/VTimeline.css +187 -48
  209. package/lib/components/VTimeline/VTimeline.mjs +27 -11
  210. package/lib/components/VTimeline/VTimeline.mjs.map +1 -1
  211. package/lib/components/VTimeline/VTimeline.sass +196 -51
  212. package/lib/components/VTimeline/VTimelineDivider.mjs +2 -1
  213. package/lib/components/VTimeline/VTimelineDivider.mjs.map +1 -1
  214. package/lib/components/VTimeline/_variables.scss +2 -1
  215. package/lib/components/VToolbar/VToolbar.css +8 -1
  216. package/lib/components/VToolbar/VToolbar.mjs +8 -11
  217. package/lib/components/VToolbar/VToolbar.mjs.map +1 -1
  218. package/lib/components/VToolbar/VToolbar.sass +2 -1
  219. package/lib/components/VToolbar/VToolbarItems.mjs +0 -1
  220. package/lib/components/VToolbar/VToolbarItems.mjs.map +1 -1
  221. package/lib/components/VToolbar/_variables.scss +13 -1
  222. package/lib/components/VWindow/VWindow.mjs +0 -8
  223. package/lib/components/VWindow/VWindow.mjs.map +1 -1
  224. package/lib/components/index.d.ts +9025 -8077
  225. package/lib/composables/defaults.mjs +2 -2
  226. package/lib/composables/defaults.mjs.map +1 -1
  227. package/lib/composables/form.mjs +18 -5
  228. package/lib/composables/form.mjs.map +1 -1
  229. package/lib/composables/forwardRef.mjs +10 -6
  230. package/lib/composables/forwardRef.mjs.map +1 -1
  231. package/lib/composables/group.mjs +14 -6
  232. package/lib/composables/group.mjs.map +1 -1
  233. package/lib/composables/index.mjs.map +1 -1
  234. package/lib/composables/items.mjs +56 -0
  235. package/lib/composables/items.mjs.map +1 -0
  236. package/lib/composables/layout.mjs +7 -3
  237. package/lib/composables/layout.mjs.map +1 -1
  238. package/lib/composables/loader.mjs.map +1 -1
  239. package/lib/composables/nested/nested.mjs +27 -14
  240. package/lib/composables/nested/nested.mjs.map +1 -1
  241. package/lib/composables/nested/openStrategies.mjs +63 -36
  242. package/lib/composables/nested/openStrategies.mjs.map +1 -1
  243. package/lib/composables/nested/selectStrategies.mjs +163 -122
  244. package/lib/composables/nested/selectStrategies.mjs.map +1 -1
  245. package/lib/composables/overlay.mjs +5 -1
  246. package/lib/composables/overlay.mjs.map +1 -1
  247. package/lib/composables/proxiedModel.mjs.map +1 -1
  248. package/lib/composables/resizeObserver.mjs +1 -9
  249. package/lib/composables/resizeObserver.mjs.map +1 -1
  250. package/lib/composables/router.mjs +17 -5
  251. package/lib/composables/router.mjs.map +1 -1
  252. package/lib/composables/selectLink.mjs +19 -0
  253. package/lib/composables/selectLink.mjs.map +1 -0
  254. package/lib/composables/stack.mjs +7 -4
  255. package/lib/composables/stack.mjs.map +1 -1
  256. package/lib/composables/validation.mjs +6 -3
  257. package/lib/composables/validation.mjs.map +1 -1
  258. package/lib/composables/variant.mjs +0 -3
  259. package/lib/composables/variant.mjs.map +1 -1
  260. package/lib/directives/ripple/index.mjs +15 -3
  261. package/lib/directives/ripple/index.mjs.map +1 -1
  262. package/lib/entry-bundler.mjs +1 -1
  263. package/lib/framework.mjs +12 -7
  264. package/lib/framework.mjs.map +1 -1
  265. package/lib/index.d.ts +18 -2
  266. package/lib/locale/ca.mjs +9 -9
  267. package/lib/locale/ca.mjs.map +1 -1
  268. package/lib/styles/generic/_colors.scss +0 -1
  269. package/lib/styles/main.css +400 -392
  270. package/lib/styles/settings/_utilities.scss +54 -26
  271. package/lib/styles/tools/_states.sass +2 -1
  272. package/lib/util/defineComponent.mjs +37 -6
  273. package/lib/util/defineComponent.mjs.map +1 -1
  274. package/lib/util/getCurrentInstance.mjs +1 -1
  275. package/lib/util/getCurrentInstance.mjs.map +1 -1
  276. package/lib/util/helpers.mjs.map +1 -1
  277. package/package.json +31 -29
@@ -2,31 +2,36 @@
2
2
  @use '../../styles/tools';
3
3
 
4
4
  // Defaults
5
+ $card-actions-flex: none !default;
5
6
  $card-actions-min-height: 52px !default;
6
7
  $card-actions-padding: .5rem !default;
7
8
  $card-avatar-align-self: flex-start !default;
8
9
  $card-avatar-header-padding: 0 !default;
9
- $card-avatar-margin-end: 1rem !default;
10
- $card-avatar-margin-start: 1rem !default;
11
10
  $card-avatar-padding: .5rem 1rem !default;
12
11
  $card-background: rgb(var(--v-theme-surface)) !default;
13
- $card-plain-opacity: .62 !default;
14
12
  $card-border-color: settings.$border-color-root !default;
15
13
  $card-border-radius: settings.$border-radius-root !default;
16
14
  $card-border-style: settings.$border-style-root !default;
17
15
  $card-border-thin-width: thin !default;
18
16
  $card-border-width: 0 !default;
19
17
  $card-color: rgba(var(--v-theme-on-surface), var(--v-high-emphasis-opacity)) !default;
18
+ $card-content-flex: 1 1 auto !default;
19
+ $card-content-padding: 16px !default;
20
20
  $card-disabled-opacity: 0.6 !default;
21
21
  $card-elevation: 1 !default;
22
+ $card-header-flex: none !default;
23
+ $card-header-text-flex: 1 1 auto !default;
22
24
  $card-hover-elevation: 8 !default;
25
+ $card-img-flex: 1 1 auto !default;
23
26
  $card-item-align-items: center !default;
24
27
  $card-item-padding: .625rem 1rem !default;
25
28
  $card-padding: 0 !default;
29
+ $card-plain-opacity: .62 !default;
26
30
  $card-positions: absolute fixed !default;
27
31
  $card-subtitle-color: rgba(var(--v-theme-on-surface), var(--v-medium-emphasis-opacity)) !default;
28
32
  $card-subtitle-comfortable-line-height: 1.125rem !default;
29
33
  $card-subtitle-compact-line-height: 1rem !default;
34
+ $card-subtitle-flex: none !default;
30
35
  $card-subtitle-font-size: tools.map-deep-get(settings.$typography, 'body-2', 'size') !default;
31
36
  $card-subtitle-font-weight: tools.map-deep-get(settings.$typography, 'body-2', 'weight') !default;
32
37
  $card-subtitle-header-padding: 0 0 .25rem !default;
@@ -35,9 +40,9 @@ $card-subtitle-line-height: tools.map-deep-get(settings.$typography, 'body-2', '
35
40
  $card-subtitle-opacity: var(--v-medium-emphasis-opacity) !default;
36
41
  $card-subtitle-padding: 0 1rem !default;
37
42
  $card-subtitle-text-transform: none !default;
38
- $card-text-color: rgba(var(--v-theme-on-surface), var(--v-medium-emphasis-opacity)) !default;
39
43
  $card-text-comfortable-line-height: 1.2rem !default;
40
44
  $card-text-compact-line-height: 1.15rem !default;
45
+ $card-text-flex: 1 1 auto !default;
41
46
  $card-text-font-size: tools.map-deep-get(settings.$typography, 'body-2', 'size') !default;
42
47
  $card-text-font-weight: tools.map-deep-get(settings.$typography, 'body-2', 'weight') !default;
43
48
  $card-text-letter-spacing: tools.map-deep-get(settings.$typography, 'body-2', 'letter-spacing') !default;
@@ -48,6 +53,7 @@ $card-text-text-transform: tools.map-deep-get(settings.$typography, 'body-2', 't
48
53
  $card-tile-border-radius: 0 !default;
49
54
  $card-title-comfortable-line-height: 1.75rem !default;
50
55
  $card-title-compact-line-height: 1.55rem !default;
56
+ $card-title-flex: none !default;
51
57
  $card-title-font-size: tools.map-deep-get(settings.$typography, 'h6', 'size') !default;
52
58
  $card-title-font-weight: tools.map-deep-get(settings.$typography, 'h6', 'weight') !default;
53
59
  $card-title-header-padding: 0 !default;
@@ -60,8 +66,8 @@ $card-title-padding: .5rem 1rem !default;
60
66
  $card-title-text-transform: none !default;
61
67
  $card-title-word-break: normal !default;
62
68
  $card-title-word-wrap: break-word !default;
63
- $card-transition-property: box-shadow, opacity, background !default;
64
69
  $card-transition-duration: 0.28s !default;
70
+ $card-transition-property: box-shadow, opacity, background !default;
65
71
  $card-transition-timing-function: settings.$standard-easing !default;
66
72
 
67
73
  $card-border: (
@@ -1,6 +1,7 @@
1
1
  export { VCard } from "./VCard.mjs";
2
2
  export { VCardActions } from "./VCardActions.mjs";
3
3
  export { VCardAvatar } from "./VCardAvatar.mjs";
4
+ export { VCardContent } from "./VCardContent.mjs";
4
5
  export { VCardHeader } from "./VCardHeader.mjs";
5
6
  export { VCardHeaderText } from "./VCardHeaderText.mjs";
6
7
  export { VCardImg } from "./VCardImg.mjs";
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VCard/index.ts"],"names":["VCard","VCardActions","VCardAvatar","VCardHeader","VCardHeaderText","VCardImg","VCardSubtitle","VCardText","VCardTitle"],"mappings":"SAASA,K;SACAC,Y;SACAC,W;SACAC,W;SACAC,e;SACAC,Q;SACAC,a;SACAC,S;SACAC,U","sourcesContent":["export { VCard } from './VCard'\nexport { VCardActions } from './VCardActions'\nexport { VCardAvatar } from './VCardAvatar'\nexport { VCardHeader } from './VCardHeader'\nexport { VCardHeaderText } from './VCardHeaderText'\nexport { VCardImg } from './VCardImg'\nexport { VCardSubtitle } from './VCardSubtitle'\nexport { VCardText } from './VCardText'\nexport { VCardTitle } from './VCardTitle'\n"],"file":"index.mjs"}
1
+ {"version":3,"sources":["../../../src/components/VCard/index.ts"],"names":["VCard","VCardActions","VCardAvatar","VCardContent","VCardHeader","VCardHeaderText","VCardImg","VCardSubtitle","VCardText","VCardTitle"],"mappings":"SAASA,K;SACAC,Y;SACAC,W;SACAC,Y;SACAC,W;SACAC,e;SACAC,Q;SACAC,a;SACAC,S;SACAC,U","sourcesContent":["export { VCard } from './VCard'\nexport { VCardActions } from './VCardActions'\nexport { VCardAvatar } from './VCardAvatar'\nexport { VCardContent } from './VCardContent'\nexport { VCardHeader } from './VCardHeader'\nexport { VCardHeaderText } from './VCardHeaderText'\nexport { VCardImg } from './VCardImg'\nexport { VCardSubtitle } from './VCardSubtitle'\nexport { VCardText } from './VCardText'\nexport { VCardTitle } from './VCardTitle'\n"],"file":"index.mjs"}
@@ -124,7 +124,7 @@ export const VCarousel = defineComponent({
124
124
  })]), props.progress && _createVNode(VProgressLinear, {
125
125
  "class": "v-carousel__progress",
126
126
  "color": typeof props.progress === 'string' ? props.progress : undefined,
127
- "modelValue": (+model.value + 1) / group.items.value.length * 100
127
+ "modelValue": (group.getItemIndex(model.value) + 1) / group.items.value.length * 100
128
128
  }, null)]);
129
129
  },
130
130
  prev: slots.prev,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VCarousel/VCarousel.tsx"],"names":["VBtn","VDefaultsProvider","VProgressLinear","VWindow","useLocale","useProxiedModel","convertToUnit","defineComponent","useRender","onMounted","ref","watch","VCarousel","name","props","color","String","cycle","Boolean","delimiterIcon","type","default","height","Number","hideDelimiters","hideDelimiterBackground","interval","validator","value","modelValue","progress","showArrows","v","verticalDelimiters","emits","val","setup","slots","model","t","windowRef","slideTimeout","restartTimeout","window","clearTimeout","startTimeout","setTimeout","group","next","requestAnimationFrame","additional","left","right","items","length","icon","size","variant","map","item","class","isSelected","id","onClick","select","undefined","prev"],"mappings":"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","sourcesContent":["// Styles\nimport './VCarousel.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VProgressLinear } from '@/components/VProgressLinear'\nimport { VWindow } from '@/components/VWindow'\n\n// Composables\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { convertToUnit, defineComponent, useRender } from '@/util'\nimport { onMounted, ref, watch } from 'vue'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport const VCarousel = defineComponent({\n name: 'VCarousel',\n\n props: {\n color: String,\n cycle: Boolean,\n delimiterIcon: {\n type: String,\n default: '$delimiter',\n },\n height: {\n type: [Number, String],\n default: 500,\n },\n hideDelimiters: Boolean,\n hideDelimiterBackground: Boolean,\n interval: {\n type: [Number, String],\n default: 6000,\n validator: (value: string | number) => value > 0,\n },\n modelValue: null,\n progress: [Boolean, String],\n showArrows: {\n type: [Boolean, String],\n default: true,\n validator: (v: any) => typeof v === 'boolean' || v === 'hover',\n },\n verticalDelimiters: [Boolean, String] as PropType<boolean | 'left' | 'right'>,\n },\n\n emits: {\n 'update:modelValue': (val: any) => true,\n },\n\n setup (props, { slots }) {\n const model = useProxiedModel(props, 'modelValue')\n const { t } = useLocale()\n const windowRef = ref<typeof VWindow>()\n\n let slideTimeout = -1\n watch(model, restartTimeout)\n watch(() => props.interval, restartTimeout)\n watch(() => props.cycle, val => {\n if (val) restartTimeout()\n else window.clearTimeout(slideTimeout)\n })\n\n onMounted(startTimeout)\n\n function startTimeout () {\n if (!props.cycle || !windowRef.value) return\n\n slideTimeout = window.setTimeout(windowRef.value.group.next, +props.interval > 0 ? +props.interval : 6000)\n }\n\n function restartTimeout () {\n window.clearTimeout(slideTimeout)\n window.requestAnimationFrame(startTimeout)\n }\n\n useRender(() => (\n <VWindow\n ref={ windowRef }\n v-model={ model.value }\n class={[\n 'v-carousel',\n {\n 'v-carousel--hide-delimiter-background': props.hideDelimiterBackground,\n 'v-carousel--vertical-delimiters': props.verticalDelimiters,\n },\n ]}\n style={{ height: convertToUnit(props.height) }}\n continuous\n showArrows={ props.showArrows }\n mandatory=\"force\"\n >\n {{\n default: slots.default,\n additional: ({ group }: any) => (\n <>\n { !props.hideDelimiters && (\n <div\n class=\"v-carousel__controls\"\n style={{\n left: props.verticalDelimiters === 'left' && props.verticalDelimiters ? 0 : 'auto',\n right: props.verticalDelimiters === 'right' ? 0 : 'auto',\n }}\n >\n { group.items.value.length > 0 && (\n <VDefaultsProvider\n defaults={{\n VBtn: {\n color: props.color,\n icon: props.delimiterIcon,\n size: 'x-small',\n variant: 'text',\n },\n }}\n scoped\n >\n { group.items.value.map((item: any) => {\n const props = {\n 'aria-label': t('$vuetify.carousel.ariaLabel.delimiter'),\n class: [group.isSelected(item.id) && 'v-btn--selected'],\n onClick: () => group.select(item.id, true),\n }\n\n return slots.item\n ? slots.item({ props, item })\n : (<VBtn { ...item } { ...props } />)\n }) }\n </VDefaultsProvider>\n ) }\n </div>\n )}\n\n { props.progress && (\n <VProgressLinear\n class=\"v-carousel__progress\"\n color={ typeof props.progress === 'string' ? props.progress : undefined }\n modelValue={ (+model.value + 1) / group.items.value.length * 100 }\n />\n )}\n </>\n ),\n prev: slots.prev,\n next: slots.next,\n }}\n </VWindow>\n ))\n },\n})\n"],"file":"VCarousel.mjs"}
1
+ {"version":3,"sources":["../../../src/components/VCarousel/VCarousel.tsx"],"names":["VBtn","VDefaultsProvider","VProgressLinear","VWindow","useLocale","useProxiedModel","convertToUnit","defineComponent","useRender","onMounted","ref","watch","VCarousel","name","props","color","String","cycle","Boolean","delimiterIcon","type","default","height","Number","hideDelimiters","hideDelimiterBackground","interval","validator","value","modelValue","progress","showArrows","v","verticalDelimiters","emits","val","setup","slots","model","t","windowRef","slideTimeout","restartTimeout","window","clearTimeout","startTimeout","setTimeout","group","next","requestAnimationFrame","additional","left","right","items","length","icon","size","variant","map","item","class","isSelected","id","onClick","select","undefined","getItemIndex","prev"],"mappings":"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","sourcesContent":["// Styles\nimport './VCarousel.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VProgressLinear } from '@/components/VProgressLinear'\nimport { VWindow } from '@/components/VWindow'\n\n// Composables\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { convertToUnit, defineComponent, useRender } from '@/util'\nimport { onMounted, ref, watch } from 'vue'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { GroupProvide } from '@/composables/group'\n\nexport const VCarousel = defineComponent({\n name: 'VCarousel',\n\n props: {\n color: String,\n cycle: Boolean,\n delimiterIcon: {\n type: String,\n default: '$delimiter',\n },\n height: {\n type: [Number, String],\n default: 500,\n },\n hideDelimiters: Boolean,\n hideDelimiterBackground: Boolean,\n interval: {\n type: [Number, String],\n default: 6000,\n validator: (value: string | number) => value > 0,\n },\n modelValue: null,\n progress: [Boolean, String],\n showArrows: {\n type: [Boolean, String],\n default: true,\n validator: (v: any) => typeof v === 'boolean' || v === 'hover',\n },\n verticalDelimiters: [Boolean, String] as PropType<boolean | 'left' | 'right'>,\n },\n\n emits: {\n 'update:modelValue': (val: any) => true,\n },\n\n setup (props, { slots }) {\n const model = useProxiedModel(props, 'modelValue')\n const { t } = useLocale()\n const windowRef = ref<typeof VWindow>()\n\n let slideTimeout = -1\n watch(model, restartTimeout)\n watch(() => props.interval, restartTimeout)\n watch(() => props.cycle, val => {\n if (val) restartTimeout()\n else window.clearTimeout(slideTimeout)\n })\n\n onMounted(startTimeout)\n\n function startTimeout () {\n if (!props.cycle || !windowRef.value) return\n\n slideTimeout = window.setTimeout(windowRef.value.group.next, +props.interval > 0 ? +props.interval : 6000)\n }\n\n function restartTimeout () {\n window.clearTimeout(slideTimeout)\n window.requestAnimationFrame(startTimeout)\n }\n\n useRender(() => (\n <VWindow\n ref={ windowRef }\n v-model={ model.value }\n class={[\n 'v-carousel',\n {\n 'v-carousel--hide-delimiter-background': props.hideDelimiterBackground,\n 'v-carousel--vertical-delimiters': props.verticalDelimiters,\n },\n ]}\n style={{ height: convertToUnit(props.height) }}\n continuous\n showArrows={ props.showArrows }\n mandatory=\"force\"\n >\n {{\n default: slots.default,\n additional: ({ group }: { group: GroupProvide }) => (\n <>\n { !props.hideDelimiters && (\n <div\n class=\"v-carousel__controls\"\n style={{\n left: props.verticalDelimiters === 'left' && props.verticalDelimiters ? 0 : 'auto',\n right: props.verticalDelimiters === 'right' ? 0 : 'auto',\n }}\n >\n { group.items.value.length > 0 && (\n <VDefaultsProvider\n defaults={{\n VBtn: {\n color: props.color,\n icon: props.delimiterIcon,\n size: 'x-small',\n variant: 'text',\n },\n }}\n scoped\n >\n { group.items.value.map((item: any) => {\n const props = {\n 'aria-label': t('$vuetify.carousel.ariaLabel.delimiter'),\n class: [group.isSelected(item.id) && 'v-btn--selected'],\n onClick: () => group.select(item.id, true),\n }\n\n return slots.item\n ? slots.item({ props, item })\n : (<VBtn { ...item } { ...props } />)\n }) }\n </VDefaultsProvider>\n ) }\n </div>\n )}\n\n { props.progress && (\n <VProgressLinear\n class=\"v-carousel__progress\"\n color={ typeof props.progress === 'string' ? props.progress : undefined }\n modelValue={ (group.getItemIndex(model.value) + 1) / group.items.value.length * 100 }\n />\n )}\n </>\n ),\n prev: slots.prev,\n next: slots.next,\n }}\n </VWindow>\n ))\n },\n})\n"],"file":"VCarousel.mjs"}
@@ -1,4 +1,4 @@
1
- import { createVNode as _createVNode, mergeProps as _mergeProps } from "vue";
1
+ import { createVNode as _createVNode, mergeProps as _mergeProps, resolveDirective as _resolveDirective } from "vue";
2
2
  // Styles
3
3
  import "./VCheckbox.css"; // Components
4
4
 
@@ -72,7 +72,7 @@ export const VCheckbox = defineComponent({
72
72
  "aria-checked": indeterminate.value ? 'mixed' : undefined,
73
73
  "disabled": isDisabled.value,
74
74
  "readonly": isReadonly.value
75
- }, controlAttrs), null);
75
+ }, controlAttrs), slots);
76
76
  }
77
77
  });
78
78
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VCheckbox/VCheckbox.tsx"],"names":["filterInputProps","makeVInputProps","VInput","filterControlProps","makeSelectionControlProps","VSelectionControl","useProxiedModel","computed","defineComponent","filterInputAttrs","useRender","VCheckbox","name","inheritAttrs","props","indeterminate","Boolean","indeterminateIcon","type","String","default","falseIcon","trueIcon","emits","val","setup","attrs","slots","value","onChange","inputAttrs","controlAttrs","inputProps","_1","controlProps","_2","isDisabled","isReadonly","undefined"],"mappings":";AAAA;AACA,yB,CAEA;;SACSA,gB,EAAkBC,e,EAAiBC,M;SACnCC,kB,EAAoBC,yB,EAA2BC,iB,sDAExD;;SACSC,e,8CAET;;AACA,SAASC,QAAT,QAAyB,KAAzB;SACSC,e,EAAiBC,gB,EAAkBC,S;AAE5C,OAAO,MAAMC,SAAS,GAAGH,eAAe,CAAC;AACvCI,EAAAA,IAAI,EAAE,WADiC;AAGvCC,EAAAA,YAAY,EAAE,KAHyB;AAKvCC,EAAAA,KAAK,EAAE;AACLC,IAAAA,aAAa,EAAEC,OADV;AAELC,IAAAA,iBAAiB,EAAE;AACjBC,MAAAA,IAAI,EAAEC,MADW;AAEjBC,MAAAA,OAAO,EAAE;AAFQ,KAFd;AAOL,OAAGnB,eAAe,EAPb;AAQL,OAAGG,yBAAyB,EARvB;AAULiB,IAAAA,SAAS,EAAE;AACTH,MAAAA,IAAI,EAAEC,MADG;AAETC,MAAAA,OAAO,EAAE;AAFA,KAVN;AAcLE,IAAAA,QAAQ,EAAE;AACRJ,MAAAA,IAAI,EAAEC,MADE;AAERC,MAAAA,OAAO,EAAE;AAFD;AAdL,GALgC;AAyBvCG,EAAAA,KAAK,EAAE;AACL,4BAAyBC,GAAD,IAAkB;AADrC,GAzBgC;;AA6BvCC,EAAAA,KAAK,CAAEX,KAAF,QAA2B;AAAA,QAAlB;AAAEY,MAAAA,KAAF;AAASC,MAAAA;AAAT,KAAkB;AAC9B,UAAMZ,aAAa,GAAGT,eAAe,CAACQ,KAAD,EAAQ,eAAR,CAArC;AACA,UAAMO,SAAS,GAAGd,QAAQ,CAAC,MAAM;AAC/B,aAAOQ,aAAa,CAACa,KAAd,GACHd,KAAK,CAACG,iBADH,GAEHH,KAAK,CAACO,SAFV;AAGD,KAJyB,CAA1B;AAKA,UAAMC,QAAQ,GAAGf,QAAQ,CAAC,MAAM;AAC9B,aAAOQ,aAAa,CAACa,KAAd,GACHd,KAAK,CAACG,iBADH,GAEHH,KAAK,CAACQ,QAFV;AAGD,KAJwB,CAAzB;;AAMA,aAASO,QAAT,GAAqB;AACnB,UAAId,aAAa,CAACa,KAAlB,EAAyB;AACvBb,QAAAA,aAAa,CAACa,KAAd,GAAsB,KAAtB;AACD;AACF;;AAEDlB,IAAAA,SAAS,CAAC,MAAM;AACd,YAAM,CAACoB,UAAD,EAAaC,YAAb,IAA6BtB,gBAAgB,CAACiB,KAAD,CAAnD;AACA,YAAM,CAACM,UAAD,EAAaC,EAAb,IAAmBjC,gBAAgB,CAACc,KAAD,CAAzC;AACA,YAAM,CAACoB,YAAD,EAAeC,EAAf,IAAqBhC,kBAAkB,CAACW,KAAD,CAA7C;AAEA;AAAA,iBAEU;AAFV,SAGSgB,UAHT,EAISE,UAJT,KAOM,GAAGL,KAPT;AAQMP,QAAAA,OAAO,EAAE;AAAA,cAAC;AACRgB,YAAAA,UADQ;AAERC,YAAAA;AAFQ,WAAD;AAAA,6DAKAH,YALA;AAAA,oBAMA,UANA;AAAA,mCAOiBL,QAPjB;AAAA,yBAQOR,SAAS,CAACO,KARjB;AAAA,wBASMN,QAAQ,CAACM,KATf;AAAA,4BAUUb,aAAa,CAACa,KAAd,GAAsB,OAAtB,GAAgCU,SAV1C;AAAA,wBAWMF,UAAU,CAACR,KAXjB;AAAA,wBAYMS,UAAU,CAACT;AAZjB,aAaAG,YAbA;AAAA;AARf;AA2BD,KAhCQ,CAAT;AAkCA,WAAO,EAAP;AACD;;AAnFsC,CAAD,CAAjC","sourcesContent":["// Styles\nimport './VCheckbox.sass'\n\n// Components\nimport { filterInputProps, makeVInputProps, VInput } from '@/components/VInput/VInput'\nimport { filterControlProps, makeSelectionControlProps, VSelectionControl } from '@/components/VSelectionControl/VSelectionControl'\n\n// Composables\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utility\nimport { computed } from 'vue'\nimport { defineComponent, filterInputAttrs, useRender } from '@/util'\n\nexport const VCheckbox = defineComponent({\n name: 'VCheckbox',\n\n inheritAttrs: false,\n\n props: {\n indeterminate: Boolean,\n indeterminateIcon: {\n type: String,\n default: '$checkboxIndeterminate',\n },\n\n ...makeVInputProps(),\n ...makeSelectionControlProps(),\n\n falseIcon: {\n type: String,\n default: '$checkboxOff',\n },\n trueIcon: {\n type: String,\n default: '$checkboxOn',\n },\n },\n\n emits: {\n 'update:indeterminate': (val: boolean) => true,\n },\n\n setup (props, { attrs, slots }) {\n const indeterminate = useProxiedModel(props, 'indeterminate')\n const falseIcon = computed(() => {\n return indeterminate.value\n ? props.indeterminateIcon\n : props.falseIcon\n })\n const trueIcon = computed(() => {\n return indeterminate.value\n ? props.indeterminateIcon\n : props.trueIcon\n })\n\n function onChange () {\n if (indeterminate.value) {\n indeterminate.value = false\n }\n }\n\n useRender(() => {\n const [inputAttrs, controlAttrs] = filterInputAttrs(attrs)\n const [inputProps, _1] = filterInputProps(props)\n const [controlProps, _2] = filterControlProps(props)\n\n return (\n <VInput\n class=\"v-checkbox\"\n { ...inputAttrs }\n { ...inputProps }\n >\n {{\n ...slots,\n default: ({\n isDisabled,\n isReadonly,\n }) => (\n <VSelectionControl\n { ...controlProps }\n type=\"checkbox\"\n onUpdate:modelValue={ onChange }\n falseIcon={ falseIcon.value }\n trueIcon={ trueIcon.value }\n aria-checked={ indeterminate.value ? 'mixed' : undefined }\n disabled={ isDisabled.value }\n readonly={ isReadonly.value }\n { ...controlAttrs }\n />\n ),\n }}\n </VInput>\n )\n })\n\n return {}\n },\n})\n\nexport type VCheckbox = InstanceType<typeof VCheckbox>\n"],"file":"VCheckbox.mjs"}
1
+ {"version":3,"sources":["../../../src/components/VCheckbox/VCheckbox.tsx"],"names":["filterInputProps","makeVInputProps","VInput","filterControlProps","makeSelectionControlProps","VSelectionControl","useProxiedModel","computed","defineComponent","filterInputAttrs","useRender","VCheckbox","name","inheritAttrs","props","indeterminate","Boolean","indeterminateIcon","type","String","default","falseIcon","trueIcon","emits","val","setup","attrs","slots","value","onChange","inputAttrs","controlAttrs","inputProps","_1","controlProps","_2","isDisabled","isReadonly","undefined"],"mappings":";AAAA;AACA,yB,CAEA;;SACSA,gB,EAAkBC,e,EAAiBC,M;SACnCC,kB,EAAoBC,yB,EAA2BC,iB,sDAExD;;SACSC,e,8CAET;;AACA,SAASC,QAAT,QAAyB,KAAzB;SACSC,e,EAAiBC,gB,EAAkBC,S;AAE5C,OAAO,MAAMC,SAAS,GAAGH,eAAe,CAAC;AACvCI,EAAAA,IAAI,EAAE,WADiC;AAGvCC,EAAAA,YAAY,EAAE,KAHyB;AAKvCC,EAAAA,KAAK,EAAE;AACLC,IAAAA,aAAa,EAAEC,OADV;AAELC,IAAAA,iBAAiB,EAAE;AACjBC,MAAAA,IAAI,EAAEC,MADW;AAEjBC,MAAAA,OAAO,EAAE;AAFQ,KAFd;AAOL,OAAGnB,eAAe,EAPb;AAQL,OAAGG,yBAAyB,EARvB;AAULiB,IAAAA,SAAS,EAAE;AACTH,MAAAA,IAAI,EAAEC,MADG;AAETC,MAAAA,OAAO,EAAE;AAFA,KAVN;AAcLE,IAAAA,QAAQ,EAAE;AACRJ,MAAAA,IAAI,EAAEC,MADE;AAERC,MAAAA,OAAO,EAAE;AAFD;AAdL,GALgC;AAyBvCG,EAAAA,KAAK,EAAE;AACL,4BAAyBC,GAAD,IAAkB;AADrC,GAzBgC;;AA6BvCC,EAAAA,KAAK,CAAEX,KAAF,QAA2B;AAAA,QAAlB;AAAEY,MAAAA,KAAF;AAASC,MAAAA;AAAT,KAAkB;AAC9B,UAAMZ,aAAa,GAAGT,eAAe,CAACQ,KAAD,EAAQ,eAAR,CAArC;AACA,UAAMO,SAAS,GAAGd,QAAQ,CAAC,MAAM;AAC/B,aAAOQ,aAAa,CAACa,KAAd,GACHd,KAAK,CAACG,iBADH,GAEHH,KAAK,CAACO,SAFV;AAGD,KAJyB,CAA1B;AAKA,UAAMC,QAAQ,GAAGf,QAAQ,CAAC,MAAM;AAC9B,aAAOQ,aAAa,CAACa,KAAd,GACHd,KAAK,CAACG,iBADH,GAEHH,KAAK,CAACQ,QAFV;AAGD,KAJwB,CAAzB;;AAMA,aAASO,QAAT,GAAqB;AACnB,UAAId,aAAa,CAACa,KAAlB,EAAyB;AACvBb,QAAAA,aAAa,CAACa,KAAd,GAAsB,KAAtB;AACD;AACF;;AAEDlB,IAAAA,SAAS,CAAC,MAAM;AACd,YAAM,CAACoB,UAAD,EAAaC,YAAb,IAA6BtB,gBAAgB,CAACiB,KAAD,CAAnD;AACA,YAAM,CAACM,UAAD,EAAaC,EAAb,IAAmBjC,gBAAgB,CAACc,KAAD,CAAzC;AACA,YAAM,CAACoB,YAAD,EAAeC,EAAf,IAAqBhC,kBAAkB,CAACW,KAAD,CAA7C;AAEA;AAAA,iBAEU;AAFV,SAGSgB,UAHT,EAISE,UAJT,KAOM,GAAGL,KAPT;AAQMP,QAAAA,OAAO,EAAE;AAAA,cAAC;AACRgB,YAAAA,UADQ;AAERC,YAAAA;AAFQ,WAAD;AAAA,6DAKAH,YALA;AAAA,oBAMA,UANA;AAAA,mCAOiBL,QAPjB;AAAA,yBAQOR,SAAS,CAACO,KARjB;AAAA,wBASMN,QAAQ,CAACM,KATf;AAAA,4BAUUb,aAAa,CAACa,KAAd,GAAsB,OAAtB,GAAgCU,SAV1C;AAAA,wBAWMF,UAAU,CAACR,KAXjB;AAAA,wBAYMS,UAAU,CAACT;AAZjB,aAaAG,YAbA,GAcKJ,KAdL;AAAA;AARf;AA4BD,KAjCQ,CAAT;AAmCA,WAAO,EAAP;AACD;;AApFsC,CAAD,CAAjC","sourcesContent":["// Styles\nimport './VCheckbox.sass'\n\n// Components\nimport { filterInputProps, makeVInputProps, VInput } from '@/components/VInput/VInput'\nimport { filterControlProps, makeSelectionControlProps, VSelectionControl } from '@/components/VSelectionControl/VSelectionControl'\n\n// Composables\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utility\nimport { computed } from 'vue'\nimport { defineComponent, filterInputAttrs, useRender } from '@/util'\n\nexport const VCheckbox = defineComponent({\n name: 'VCheckbox',\n\n inheritAttrs: false,\n\n props: {\n indeterminate: Boolean,\n indeterminateIcon: {\n type: String,\n default: '$checkboxIndeterminate',\n },\n\n ...makeVInputProps(),\n ...makeSelectionControlProps(),\n\n falseIcon: {\n type: String,\n default: '$checkboxOff',\n },\n trueIcon: {\n type: String,\n default: '$checkboxOn',\n },\n },\n\n emits: {\n 'update:indeterminate': (val: boolean) => true,\n },\n\n setup (props, { attrs, slots }) {\n const indeterminate = useProxiedModel(props, 'indeterminate')\n const falseIcon = computed(() => {\n return indeterminate.value\n ? props.indeterminateIcon\n : props.falseIcon\n })\n const trueIcon = computed(() => {\n return indeterminate.value\n ? props.indeterminateIcon\n : props.trueIcon\n })\n\n function onChange () {\n if (indeterminate.value) {\n indeterminate.value = false\n }\n }\n\n useRender(() => {\n const [inputAttrs, controlAttrs] = filterInputAttrs(attrs)\n const [inputProps, _1] = filterInputProps(props)\n const [controlProps, _2] = filterControlProps(props)\n\n return (\n <VInput\n class=\"v-checkbox\"\n { ...inputAttrs }\n { ...inputProps }\n >\n {{\n ...slots,\n default: ({\n isDisabled,\n isReadonly,\n }) => (\n <VSelectionControl\n { ...controlProps }\n type=\"checkbox\"\n onUpdate:modelValue={ onChange }\n falseIcon={ falseIcon.value }\n trueIcon={ trueIcon.value }\n aria-checked={ indeterminate.value ? 'mixed' : undefined }\n disabled={ isDisabled.value }\n readonly={ isReadonly.value }\n { ...controlAttrs }\n v-slots={ slots }\n />\n ),\n }}\n </VInput>\n )\n })\n\n return {}\n },\n})\n\nexport type VCheckbox = InstanceType<typeof VCheckbox>\n"],"file":"VCheckbox.mjs"}
@@ -3,8 +3,11 @@
3
3
  cursor: default;
4
4
  display: inline-flex;
5
5
  font-weight: 400;
6
+ max-width: 100%;
7
+ overflow: hidden;
6
8
  position: relative;
7
9
  text-decoration: none;
10
+ white-space: nowrap;
8
11
  vertical-align: middle;
9
12
  border-color: rgba(var(--v-border-color), var(--v-border-opacity));
10
13
  border-style: solid;
@@ -8,8 +8,11 @@
8
8
  cursor: default
9
9
  display: inline-flex
10
10
  font-weight: $chip-font-weight
11
+ max-width: $chip-max-width
12
+ overflow: hidden
11
13
  position: relative
12
14
  text-decoration: none
15
+ white-space: $chip-white-space
13
16
  vertical-align: middle
14
17
 
15
18
  @at-root
@@ -24,9 +24,12 @@ $chip-font-weight: 400 !default;
24
24
  $chip-height: 32px !default;
25
25
  $chip-icon-font-size: 1.25rem !default;
26
26
  $chip-label-border-radius: settings.$border-radius-root !default;
27
+ $chip-max-width: 100% !default;
28
+ $chip-overflow: hidden !default;
27
29
  $chip-padding-ratio: 2 + math.div(2, 3) !default;
28
30
  $chip-plain-opacity: 0.26 !default;
29
31
  $chip-rounded-border-radius: settings.$border-radius-root !default;
32
+ $chip-white-space: nowrap !default;
30
33
 
31
34
  $chip-sizes: (
32
35
  "height": $chip-height,
@@ -11,7 +11,7 @@
11
11
  height: 15px;
12
12
  background: transparent;
13
13
  border-radius: 50%;
14
- box-shadow: 0px 0px 0px 1.5px white, inset 0px 0px 1px 1.5px rgba(0, 0, 0, 0.3);
14
+ box-shadow: 0px 0px 0px 1.5px rgb(255, 255, 255), inset 0px 0px 1px 1.5px rgba(0, 0, 0, 0.3);
15
15
  }
16
16
  .v-color-picker-canvas__dot--disabled {
17
17
  box-shadow: 0px 0px 0px 1.5px rgba(255, 255, 255, 0.7), inset 0px 0px 1px 1.5px rgba(0, 0, 0, 0.3);
@@ -2,7 +2,7 @@ import { createTextVNode as _createTextVNode, createVNode as _createVNode, Fragm
2
2
  // Styles
3
3
  import "./VCombobox.css"; // Components
4
4
 
5
- import { genItem, makeSelectProps } from "../VSelect/VSelect.mjs";
5
+ import { makeSelectProps } from "../VSelect/VSelect.mjs";
6
6
  import { VChip } from "../VChip/index.mjs";
7
7
  import { VDefaultsProvider } from "../VDefaultsProvider/index.mjs";
8
8
  import { VList, VListItem } from "../VList/index.mjs";
@@ -11,6 +11,7 @@ import { VTextField } from "../VTextField/index.mjs"; // Composables
11
11
 
12
12
  import { makeFilterProps, useFilter } from "../../composables/filter.mjs";
13
13
  import { makeTransitionProps } from "../../composables/transition.mjs";
14
+ import { transformItem, useItems } from "../../composables/items.mjs";
14
15
  import { useForwardRef } from "../../composables/forwardRef.mjs";
15
16
  import { useLocale } from "../../composables/locale.mjs";
16
17
  import { useProxiedModel } from "../../composables/proxiedModel.mjs";
@@ -47,11 +48,13 @@ export const VCombobox = genericComponent()({
47
48
  })
48
49
  },
49
50
  emits: {
50
- 'update:modelValue': val => true
51
+ 'update:modelValue': val => true,
52
+ 'update:searchInput': val => true
51
53
  },
52
54
 
53
55
  setup(props, _ref) {
54
56
  let {
57
+ emit,
55
58
  slots
56
59
  } = _ref;
57
60
  const {
@@ -68,7 +71,9 @@ export const VCombobox = genericComponent()({
68
71
 
69
72
  return (_vTextFieldRef$value = vTextFieldRef.value) == null ? void 0 : _vTextFieldRef$value.color;
70
73
  });
71
- const items = computed(() => props.items.map(genItem));
74
+ const {
75
+ items
76
+ } = useItems(props);
72
77
  const {
73
78
  textColorClasses,
74
79
  textColorStyles
@@ -78,7 +83,7 @@ export const VCombobox = genericComponent()({
78
83
  const _search = ref('');
79
84
 
80
85
  const search = computed({
81
- get: () => props.multiple ? _search.value : genItem(model.value[0]).value,
86
+ get: () => props.multiple ? _search.value : transformItem(props, model.value[0]).value,
82
87
  set: val => {
83
88
  var _props$delimiters;
84
89
 
@@ -107,6 +112,9 @@ export const VCombobox = genericComponent()({
107
112
  isPristine.value = !val;
108
113
  }
109
114
  });
115
+ watch(_search, value => {
116
+ emit('update:searchInput', value);
117
+ });
110
118
  const {
111
119
  filteredItems
112
120
  } = useFilter(props, items, computed(() => isPristine.value ? undefined : search.value));
@@ -115,7 +123,7 @@ export const VCombobox = genericComponent()({
115
123
  let index = 0;
116
124
 
117
125
  for (const unwrapped of model.value) {
118
- const item = genItem(unwrapped);
126
+ const item = transformItem(props, unwrapped);
119
127
  const found = array.find(selection => selection.value === item.value);
120
128
 
121
129
  if (found == null) {
@@ -209,18 +217,24 @@ export const VCombobox = genericComponent()({
209
217
  }
210
218
  }
211
219
 
220
+ function onInput(e) {
221
+ search.value = e.target.value;
222
+ }
223
+
212
224
  function onAfterLeave() {
213
225
  if (isFocused.value) isPristine.value = true;
214
226
  }
215
227
 
216
228
  function select(item) {
217
229
  if (props.multiple) {
218
- const index = selections.value.findIndex(selection => selection.value === item.value);
230
+ const index = selected.value.findIndex(selection => selection === item.value);
219
231
 
220
232
  if (index === -1) {
221
- model.value.push(item.value);
233
+ model.value = [...model.value, item.value];
222
234
  } else {
223
- model.value = selected.value.filter(selection => selection !== item.value);
235
+ const value = [...model.value];
236
+ value.splice(index, 1);
237
+ model.value = value;
224
238
  }
225
239
 
226
240
  search.value = '';
@@ -246,7 +260,7 @@ export const VCombobox = genericComponent()({
246
260
  } else {
247
261
  menu.value = false;
248
262
  if (!props.multiple || !search.value) return;
249
- model.value.push(search.value);
263
+ model.value = [...model.value, search.value];
250
264
  search.value = '';
251
265
  }
252
266
  });
@@ -255,7 +269,7 @@ export const VCombobox = genericComponent()({
255
269
  return _createVNode(VTextField, {
256
270
  "ref": vTextFieldRef,
257
271
  "modelValue": search.value,
258
- "onUpdate:modelValue": $event => search.value = $event,
272
+ "onInput": onInput,
259
273
  "class": ['v-combobox', {
260
274
  'v-combobox--active-menu': menu.value,
261
275
  'v-combobox--chips': !!props.chips,
@@ -271,75 +285,79 @@ export const VCombobox = genericComponent()({
271
285
  "onBlur": () => isFocused.value = false,
272
286
  "onKeydown": onKeydown
273
287
  }, { ...slots,
274
- default: () => _createVNode(_Fragment, null, [activator.value && _createVNode(VMenu, {
275
- "modelValue": menu.value,
276
- "onUpdate:modelValue": $event => menu.value = $event,
277
- "activator": activator.value,
278
- "contentClass": "v-combobox__content",
279
- "eager": props.eager,
280
- "openOnClick": false,
281
- "transition": props.transition,
282
- "onAfterLeave": onAfterLeave
283
- }, {
284
- default: () => [_createVNode(VList, {
285
- "selected": selected.value,
286
- "selectStrategy": props.multiple ? 'independent' : 'single-independent'
288
+ default: () => {
289
+ var _slots$noData, _slots$noData2;
290
+
291
+ return _createVNode(_Fragment, null, [activator.value && _createVNode(VMenu, {
292
+ "modelValue": menu.value,
293
+ "onUpdate:modelValue": $event => menu.value = $event,
294
+ "activator": activator.value,
295
+ "contentClass": "v-combobox__content",
296
+ "eager": props.eager,
297
+ "openOnClick": false,
298
+ "transition": props.transition,
299
+ "onAfterLeave": onAfterLeave
287
300
  }, {
288
- default: () => [!filteredItems.value.length && !props.hideNoData && _createVNode(VListItem, {
289
- "title": t(props.noDataText)
290
- }, null), filteredItems.value.map(_ref2 => {
291
- let {
292
- item,
293
- matches
294
- } = _ref2;
295
- return _createVNode(VListItem, {
296
- "value": item.value,
297
- "onMousedown": e => e.preventDefault(),
298
- "onClick": () => select(item)
299
- }, {
300
- title: () => {
301
- var _search$value$length, _search$value;
302
-
303
- return isPristine.value ? item.title : highlightResult(item.title, matches.title, (_search$value$length = (_search$value = search.value) == null ? void 0 : _search$value.length) != null ? _search$value$length : 0);
304
- }
305
- });
301
+ default: () => [_createVNode(VList, {
302
+ "selected": selected.value,
303
+ "selectStrategy": props.multiple ? 'independent' : 'single-independent'
304
+ }, {
305
+ default: () => [!filteredItems.value.length && !props.hideNoData && ((_slots$noData = (_slots$noData2 = slots['no-data']) == null ? void 0 : _slots$noData2.call(slots)) != null ? _slots$noData : _createVNode(VListItem, {
306
+ "title": t(props.noDataText)
307
+ }, null)), filteredItems.value.map(_ref2 => {
308
+ let {
309
+ item,
310
+ matches
311
+ } = _ref2;
312
+ return _createVNode(VListItem, {
313
+ "value": item.value,
314
+ "onMousedown": e => e.preventDefault(),
315
+ "onClick": () => select(item)
316
+ }, {
317
+ title: () => {
318
+ var _search$value$length, _search$value;
319
+
320
+ return isPristine.value ? item.title : highlightResult(item.title, matches.title, (_search$value$length = (_search$value = search.value) == null ? void 0 : _search$value.length) != null ? _search$value$length : 0);
321
+ }
322
+ });
323
+ })]
306
324
  })]
307
- })]
308
- }), selections.value.map((selection, index) => {
309
- function onChipClose(e) {
310
- e.stopPropagation();
311
- e.preventDefault();
312
- select(selection);
313
- }
325
+ }), selections.value.map((selection, index) => {
326
+ function onChipClose(e) {
327
+ e.stopPropagation();
328
+ e.preventDefault();
329
+ select(selection);
330
+ }
314
331
 
315
- const slotProps = {
316
- 'onClick:close': onChipClose,
317
- modelValue: true
318
- };
319
- return _createVNode("div", {
320
- "class": ['v-combobox__selection', selection.selected && ['v-combobox__selection--selected', textColorClasses.value]],
321
- "style": selection.selected ? textColorStyles.value : {}
322
- }, [hasChips && _createVNode(VDefaultsProvider, {
323
- "defaults": {
324
- VChip: {
325
- closable: props.closableChips,
326
- size: 'small',
327
- text: selection.title
332
+ const slotProps = {
333
+ 'onClick:close': onChipClose,
334
+ modelValue: true
335
+ };
336
+ return _createVNode("div", {
337
+ "class": ['v-combobox__selection', selection.selected && ['v-combobox__selection--selected', textColorClasses.value]],
338
+ "style": selection.selected ? textColorStyles.value : {}
339
+ }, [hasChips && _createVNode(VDefaultsProvider, {
340
+ "defaults": {
341
+ VChip: {
342
+ closable: props.closableChips,
343
+ size: 'small',
344
+ text: selection.title
345
+ }
328
346
  }
329
- }
330
- }, {
331
- default: () => [slots.chip ? slots.chip({
332
- props: slotProps,
347
+ }, {
348
+ default: () => [slots.chip ? slots.chip({
349
+ props: slotProps,
350
+ selection
351
+ }) : _createVNode(VChip, slotProps, null)]
352
+ }), !hasChips && (slots.selection ? slots.selection({
333
353
  selection
334
- }) : _createVNode(VChip, slotProps, null)]
335
- }), !hasChips && (slots.selection ? slots.selection({
336
- selection
337
- }) : _createVNode("span", {
338
- "class": "v-combobox__selection-text"
339
- }, [selection.title, props.multiple && index < selections.value.length - 1 && _createVNode("span", {
340
- "class": "v-combobox__selection-comma"
341
- }, [_createTextVNode(",")])]))]);
342
- })])
354
+ }) : _createVNode("span", {
355
+ "class": "v-combobox__selection-text"
356
+ }, [selection.title, props.multiple && index < selections.value.length - 1 && _createVNode("span", {
357
+ "class": "v-combobox__selection-comma"
358
+ }, [_createTextVNode(",")])]))]);
359
+ })]);
360
+ }
343
361
  });
344
362
  });
345
363
  return useForwardRef({