@vuetify/nightly 3.0.0-beta.4 → 3.0.0-beta.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (333) hide show
  1. package/CHANGELOG.md +13 -24
  2. package/dist/json/attributes.json +66 -122
  3. package/dist/json/importMap.json +121 -137
  4. package/dist/json/tags.json +20 -68
  5. package/dist/json/web-types.json +201 -482
  6. package/dist/vuetify.css +1672 -1536
  7. package/dist/vuetify.d.ts +494 -464
  8. package/dist/vuetify.esm.js +3835 -3452
  9. package/dist/vuetify.esm.js.map +1 -1
  10. package/dist/vuetify.js +3834 -3451
  11. package/dist/vuetify.js.map +1 -1
  12. package/dist/vuetify.min.css +2 -2
  13. package/dist/vuetify.min.js +1027 -1012
  14. package/dist/vuetify.min.js.map +1 -1
  15. package/lib/blueprints/index.mjs +4 -0
  16. package/lib/blueprints/index.mjs.map +1 -0
  17. package/lib/blueprints/md1.mjs +63 -0
  18. package/lib/blueprints/md1.mjs.map +1 -0
  19. package/lib/blueprints/md2.mjs +60 -0
  20. package/lib/blueprints/md2.mjs.map +1 -0
  21. package/lib/blueprints/md3.mjs +74 -0
  22. package/lib/blueprints/md3.mjs.map +1 -0
  23. package/lib/components/VAlert/VAlert.mjs +7 -1
  24. package/lib/components/VAlert/VAlert.mjs.map +1 -1
  25. package/lib/components/VApp/VApp.css +2 -5
  26. package/lib/components/VApp/VApp.mjs +3 -4
  27. package/lib/components/VApp/VApp.mjs.map +1 -1
  28. package/lib/components/VApp/VApp.sass +11 -12
  29. package/lib/components/VApp/variables.scss +6 -0
  30. package/lib/components/VAppBar/VAppBar.mjs +4 -3
  31. package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
  32. package/lib/components/VAppBar/VAppBarNavIcon.mjs +7 -12
  33. package/lib/components/VAppBar/VAppBarNavIcon.mjs.map +1 -1
  34. package/lib/components/VAppBar/VAppBarTitle.mjs +4 -3
  35. package/lib/components/VAppBar/VAppBarTitle.mjs.map +1 -1
  36. package/lib/components/VAppBar/_variables.scss +2 -0
  37. package/lib/components/VAutocomplete/VAutocomplete.mjs +9 -5
  38. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  39. package/lib/components/VAvatar/VAvatar.mjs.map +1 -1
  40. package/lib/components/VBadge/VBadge.mjs +8 -7
  41. package/lib/components/VBadge/VBadge.mjs.map +1 -1
  42. package/lib/components/VBadge/_variables.scss +2 -2
  43. package/lib/components/VBanner/VBanner.css +7 -7
  44. package/lib/components/VBanner/VBanner.mjs +24 -17
  45. package/lib/components/VBanner/VBanner.mjs.map +1 -1
  46. package/lib/components/VBanner/VBanner.sass +6 -7
  47. package/lib/components/VBanner/VBannerActions.mjs +1 -1
  48. package/lib/components/VBanner/VBannerActions.mjs.map +1 -1
  49. package/lib/components/VBanner/index.mjs +0 -2
  50. package/lib/components/VBanner/index.mjs.map +1 -1
  51. package/lib/components/VBottomNavigation/VBottomNavigation.css +4 -11
  52. package/lib/components/VBottomNavigation/VBottomNavigation.mjs +4 -3
  53. package/lib/components/VBottomNavigation/VBottomNavigation.mjs.map +1 -1
  54. package/lib/components/VBottomNavigation/VBottomNavigation.sass +5 -12
  55. package/lib/components/VBottomNavigation/_variables.scss +7 -8
  56. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs +31 -16
  57. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs.map +1 -1
  58. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs +5 -8
  59. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs.map +1 -1
  60. package/lib/components/VBtn/VBtn.css +42 -9
  61. package/lib/components/VBtn/VBtn.mjs +60 -29
  62. package/lib/components/VBtn/VBtn.mjs.map +1 -1
  63. package/lib/components/VBtn/VBtn.sass +36 -5
  64. package/lib/components/VBtn/_variables.scss +7 -3
  65. package/lib/components/VBtnGroup/VBtnGroup.css +1 -1
  66. package/lib/components/VBtnGroup/_variables.scss +2 -0
  67. package/lib/components/VBtnToggle/_variables.scss +1 -0
  68. package/lib/components/VCard/VCard.css +78 -61
  69. package/lib/components/VCard/VCard.mjs +51 -65
  70. package/lib/components/VCard/VCard.mjs.map +1 -1
  71. package/lib/components/VCard/VCard.sass +71 -58
  72. package/lib/components/VCard/VCardActions.mjs +1 -1
  73. package/lib/components/VCard/VCardActions.mjs.map +1 -1
  74. package/lib/components/VCard/VCardItem.mjs +88 -0
  75. package/lib/components/VCard/VCardItem.mjs.map +1 -0
  76. package/lib/components/VCard/_variables.scss +39 -24
  77. package/lib/components/VCard/index.mjs +1 -5
  78. package/lib/components/VCard/index.mjs.map +1 -1
  79. package/lib/components/VCarousel/VCarousel.mjs +5 -4
  80. package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
  81. package/lib/components/VCarousel/VCarouselItem.mjs.map +1 -1
  82. package/lib/components/VCarousel/_variables.scss +1 -0
  83. package/lib/components/VChip/VChip.css +137 -60
  84. package/lib/components/VChip/VChip.mjs +74 -36
  85. package/lib/components/VChip/VChip.mjs.map +1 -1
  86. package/lib/components/VChip/VChip.sass +6 -0
  87. package/lib/components/VChip/_mixins.scss +26 -6
  88. package/lib/components/VChip/_variables.scss +1 -5
  89. package/lib/components/VChipGroup/VChipGroup.mjs +4 -3
  90. package/lib/components/VChipGroup/VChipGroup.mjs.map +1 -1
  91. package/lib/components/VChipGroup/VChipGroup.sass +1 -1
  92. package/lib/components/VChipGroup/_variables.scss +1 -1
  93. package/lib/components/VColorPicker/VColorPicker.mjs +16 -10
  94. package/lib/components/VColorPicker/VColorPicker.mjs.map +1 -1
  95. package/lib/components/VColorPicker/VColorPickerCanvas.mjs +5 -4
  96. package/lib/components/VColorPicker/VColorPickerCanvas.mjs.map +1 -1
  97. package/lib/components/VColorPicker/VColorPickerEdit.mjs +4 -3
  98. package/lib/components/VColorPicker/VColorPickerEdit.mjs.map +1 -1
  99. package/lib/components/VColorPicker/VColorPickerPreview.mjs +4 -3
  100. package/lib/components/VColorPicker/VColorPickerPreview.mjs.map +1 -1
  101. package/lib/components/VColorPicker/VColorPickerSwatches.mjs +6 -5
  102. package/lib/components/VColorPicker/VColorPickerSwatches.mjs.map +1 -1
  103. package/lib/components/VColorPicker/_variables.scss +17 -10
  104. package/lib/components/VCombobox/VCombobox.mjs +8 -4
  105. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  106. package/lib/components/VCounter/VCounter.mjs +16 -16
  107. package/lib/components/VCounter/VCounter.mjs.map +1 -1
  108. package/lib/components/VCounter/VCounter.sass +1 -1
  109. package/lib/components/VCounter/_variables.scss +2 -1
  110. package/lib/components/VDialog/VDialog.css +2 -5
  111. package/lib/components/VDialog/VDialog.mjs +24 -25
  112. package/lib/components/VDialog/VDialog.mjs.map +1 -1
  113. package/lib/components/VDialog/VDialog.sass +1 -4
  114. package/lib/components/VDialog/_variables.scss +0 -1
  115. package/lib/components/VDivider/VDivider.mjs +16 -17
  116. package/lib/components/VDivider/VDivider.mjs.map +1 -1
  117. package/lib/components/VDivider/_variables.scss +3 -1
  118. package/lib/components/VExpansionPanel/VExpansionPanel.mjs +6 -4
  119. package/lib/components/VExpansionPanel/VExpansionPanel.mjs.map +1 -1
  120. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs +5 -5
  121. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs.map +1 -1
  122. package/lib/components/VExpansionPanel/VExpansionPanels.mjs.map +1 -1
  123. package/lib/components/VExpansionPanel/_variables.scss +15 -10
  124. package/lib/components/VField/VField.mjs +17 -10
  125. package/lib/components/VField/VField.mjs.map +1 -1
  126. package/lib/components/VField/VFieldLabel.mjs +8 -9
  127. package/lib/components/VField/VFieldLabel.mjs.map +1 -1
  128. package/lib/components/VFileInput/VFileInput.mjs +3 -3
  129. package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
  130. package/lib/components/VFooter/VFooter.mjs +4 -3
  131. package/lib/components/VFooter/VFooter.mjs.map +1 -1
  132. package/lib/components/VFooter/_variables.scss +2 -1
  133. package/lib/components/VForm/VForm.mjs +3 -3
  134. package/lib/components/VForm/VForm.mjs.map +1 -1
  135. package/lib/components/VGrid/VCol.mjs.map +1 -1
  136. package/lib/components/VGrid/VContainer.mjs +4 -3
  137. package/lib/components/VGrid/VContainer.mjs.map +1 -1
  138. package/lib/components/VGrid/VRow.mjs.map +1 -1
  139. package/lib/components/VIcon/VIcon.css +0 -8
  140. package/lib/components/VIcon/VIcon.mjs +20 -21
  141. package/lib/components/VIcon/VIcon.mjs.map +1 -1
  142. package/lib/components/VIcon/VIcon.sass +0 -8
  143. package/lib/components/VIcon/_variables.scss +2 -5
  144. package/lib/components/VIcon/index.mjs.map +1 -1
  145. package/lib/components/VInput/VInput.mjs +9 -5
  146. package/lib/components/VInput/VInput.mjs.map +1 -1
  147. package/lib/components/VLabel/VLabel.mjs +4 -3
  148. package/lib/components/VLabel/VLabel.mjs.map +1 -1
  149. package/lib/components/VLabel/_variables.scss +1 -0
  150. package/lib/components/VLazy/VLazy.mjs +5 -3
  151. package/lib/components/VLazy/VLazy.mjs.map +1 -1
  152. package/lib/components/VList/VList.mjs +15 -17
  153. package/lib/components/VList/VList.mjs.map +1 -1
  154. package/lib/components/VList/VListChildren.mjs +2 -2
  155. package/lib/components/VList/VListChildren.mjs.map +1 -1
  156. package/lib/components/VList/VListGroup.mjs +8 -7
  157. package/lib/components/VList/VListGroup.mjs.map +1 -1
  158. package/lib/components/VList/VListItem.mjs +13 -8
  159. package/lib/components/VList/VListItem.mjs.map +1 -1
  160. package/lib/components/VList/VListItemAction.mjs +8 -9
  161. package/lib/components/VList/VListItemAction.mjs.map +1 -1
  162. package/lib/components/VList/VListItemAvatar.mjs +4 -3
  163. package/lib/components/VList/VListItemAvatar.mjs.map +1 -1
  164. package/lib/components/VList/VListItemIcon.mjs +4 -3
  165. package/lib/components/VList/VListItemIcon.mjs.map +1 -1
  166. package/lib/components/VList/VListItemMedia.mjs +4 -3
  167. package/lib/components/VList/VListItemMedia.mjs.map +1 -1
  168. package/lib/components/VList/VListSubheader.mjs +4 -3
  169. package/lib/components/VList/VListSubheader.mjs.map +1 -1
  170. package/lib/components/VList/index.mjs +2 -2
  171. package/lib/components/VList/index.mjs.map +1 -1
  172. package/lib/components/VLocaleProvider/VLocaleProvider.mjs +5 -3
  173. package/lib/components/VLocaleProvider/VLocaleProvider.mjs.map +1 -1
  174. package/lib/components/VMain/VMain.mjs +4 -3
  175. package/lib/components/VMain/VMain.mjs.map +1 -1
  176. package/lib/components/VMain/_variables.scss +1 -1
  177. package/lib/components/VMenu/VMenu.mjs +5 -5
  178. package/lib/components/VMenu/VMenu.mjs.map +1 -1
  179. package/lib/components/VMessages/VMessages.mjs +5 -3
  180. package/lib/components/VMessages/VMessages.mjs.map +1 -1
  181. package/lib/components/VMessages/_variables.scss +1 -1
  182. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs +5 -3
  183. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs.map +1 -1
  184. package/lib/components/VNavigationDrawer/_variables.scss +2 -1
  185. package/lib/components/VNavigationDrawer/touch.mjs +5 -2
  186. package/lib/components/VNavigationDrawer/touch.mjs.map +1 -1
  187. package/lib/components/VNoSsr/VNoSsr.mjs.map +1 -1
  188. package/lib/components/VOverlay/VOverlay.mjs +10 -8
  189. package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
  190. package/lib/components/VOverlay/locationStrategies.mjs +267 -78
  191. package/lib/components/VOverlay/locationStrategies.mjs.map +1 -1
  192. package/lib/components/VOverlay/useActivator.mjs +4 -3
  193. package/lib/components/VOverlay/useActivator.mjs.map +1 -1
  194. package/lib/components/VOverlay/util/point.mjs +3 -3
  195. package/lib/components/VOverlay/util/point.mjs.map +1 -1
  196. package/lib/components/VPagination/VPagination.mjs +18 -14
  197. package/lib/components/VPagination/VPagination.mjs.map +1 -1
  198. package/lib/components/VParallax/VParallax.mjs +5 -5
  199. package/lib/components/VParallax/VParallax.mjs.map +1 -1
  200. package/lib/components/VProgressCircular/VProgressCircular.mjs +6 -5
  201. package/lib/components/VProgressCircular/VProgressCircular.mjs.map +1 -1
  202. package/lib/components/VProgressCircular/_variables.scss +2 -0
  203. package/lib/components/VProgressLinear/VProgressLinear.mjs +5 -3
  204. package/lib/components/VProgressLinear/VProgressLinear.mjs.map +1 -1
  205. package/lib/components/VProgressLinear/_variables.scss +1 -0
  206. package/lib/components/VRadioGroup/VRadioGroup.mjs +2 -2
  207. package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
  208. package/lib/components/VRadioGroup/VRadioGroup.sass +5 -3
  209. package/lib/components/VRadioGroup/_variables.scss +3 -4
  210. package/lib/components/VRangeSlider/VRangeSlider.mjs +12 -13
  211. package/lib/components/VRangeSlider/VRangeSlider.mjs.map +1 -1
  212. package/lib/components/VRating/VRating.mjs +6 -5
  213. package/lib/components/VRating/VRating.mjs.map +1 -1
  214. package/lib/components/VRating/VRating.sass +2 -0
  215. package/lib/components/VResponsive/VResponsive.mjs +7 -6
  216. package/lib/components/VResponsive/VResponsive.mjs.map +1 -1
  217. package/lib/components/VSelect/VSelect.mjs +8 -4
  218. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  219. package/lib/components/VSelectionControl/VSelectionControl.mjs +6 -5
  220. package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -1
  221. package/lib/components/VSelectionControl/_variables.scss +1 -0
  222. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs +3 -3
  223. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs.map +1 -1
  224. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.sass +1 -5
  225. package/lib/components/VSelectionControlGroup/_variables.scss +1 -4
  226. package/lib/components/VSheet/VSheet.mjs +3 -3
  227. package/lib/components/VSheet/VSheet.mjs.map +1 -1
  228. package/lib/components/VSheet/_variables.scss +3 -2
  229. package/lib/components/VSlideGroup/VSlideGroup.mjs +47 -49
  230. package/lib/components/VSlideGroup/VSlideGroup.mjs.map +1 -1
  231. package/lib/components/VSlideGroup/VSlideGroupItem.mjs +4 -3
  232. package/lib/components/VSlideGroup/VSlideGroupItem.mjs.map +1 -1
  233. package/lib/components/VSlideGroup/_variables.scss +0 -5
  234. package/lib/components/VSlideGroup/index.mjs +2 -2
  235. package/lib/components/VSlideGroup/index.mjs.map +1 -1
  236. package/lib/components/VSlider/VSlider.mjs +7 -9
  237. package/lib/components/VSlider/VSlider.mjs.map +1 -1
  238. package/lib/components/VSlider/VSliderThumb.mjs +6 -5
  239. package/lib/components/VSlider/VSliderThumb.mjs.map +1 -1
  240. package/lib/components/VSlider/VSliderTrack.mjs +11 -10
  241. package/lib/components/VSlider/VSliderTrack.mjs.map +1 -1
  242. package/lib/components/VSlider/slider.mjs +4 -4
  243. package/lib/components/VSlider/slider.mjs.map +1 -1
  244. package/lib/components/VSnackbar/VSnackbar.mjs +45 -49
  245. package/lib/components/VSnackbar/VSnackbar.mjs.map +1 -1
  246. package/lib/components/VSnackbar/_variables.scss +2 -0
  247. package/lib/components/VSwitch/_variables.scss +1 -0
  248. package/lib/components/VSystemBar/VSystemBar.mjs +4 -12
  249. package/lib/components/VSystemBar/VSystemBar.mjs.map +1 -1
  250. package/lib/components/VSystemBar/_variables.scss +2 -1
  251. package/lib/components/VTable/VTable.mjs +9 -8
  252. package/lib/components/VTable/VTable.mjs.map +1 -1
  253. package/lib/components/VTable/_variables.scss +2 -0
  254. package/lib/components/VTabs/VTab.mjs +4 -4
  255. package/lib/components/VTabs/VTab.mjs.map +1 -1
  256. package/lib/components/VTabs/VTabs.mjs +9 -7
  257. package/lib/components/VTabs/VTabs.mjs.map +1 -1
  258. package/lib/components/VTabs/_variables.scss +3 -1
  259. package/lib/components/VTextField/VTextField.mjs +5 -5
  260. package/lib/components/VTextField/VTextField.mjs.map +1 -1
  261. package/lib/components/VTextField/_variables.scss +1 -1
  262. package/lib/components/VTextarea/VTextarea.mjs +4 -4
  263. package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
  264. package/lib/components/VTextarea/_variables.scss +1 -0
  265. package/lib/components/VTimeline/VTimeline.mjs +24 -25
  266. package/lib/components/VTimeline/VTimeline.mjs.map +1 -1
  267. package/lib/components/VTimeline/VTimeline.sass +3 -2
  268. package/lib/components/VTimeline/VTimelineDivider.mjs +41 -38
  269. package/lib/components/VTimeline/VTimelineDivider.mjs.map +1 -1
  270. package/lib/components/VTimeline/VTimelineItem.mjs +10 -11
  271. package/lib/components/VTimeline/VTimelineItem.mjs.map +1 -1
  272. package/lib/components/VTimeline/_variables.scss +11 -6
  273. package/lib/components/VToolbar/VToolbar.css +15 -6
  274. package/lib/components/VToolbar/VToolbar.mjs +9 -9
  275. package/lib/components/VToolbar/VToolbar.mjs.map +1 -1
  276. package/lib/components/VToolbar/VToolbar.sass +15 -6
  277. package/lib/components/VToolbar/VToolbarItems.mjs +12 -8
  278. package/lib/components/VToolbar/VToolbarItems.mjs.map +1 -1
  279. package/lib/components/VToolbar/_variables.scss +6 -2
  280. package/lib/components/VTooltip/VTooltip.mjs +37 -38
  281. package/lib/components/VTooltip/VTooltip.mjs.map +1 -1
  282. package/lib/components/VTooltip/_variables.scss +1 -0
  283. package/lib/components/VWindow/VWindow.mjs +4 -4
  284. package/lib/components/VWindow/VWindow.mjs.map +1 -1
  285. package/lib/components/VWindow/VWindowItem.mjs +10 -9
  286. package/lib/components/VWindow/VWindowItem.mjs.map +1 -1
  287. package/lib/components/VWindow/_variables.scss +1 -0
  288. package/lib/components/index.d.ts +486 -445
  289. package/lib/components/transitions/dialog-transition.mjs +3 -0
  290. package/lib/components/transitions/dialog-transition.mjs.map +1 -1
  291. package/lib/composables/border.mjs +5 -6
  292. package/lib/composables/border.mjs.map +1 -1
  293. package/lib/composables/location.mjs +4 -8
  294. package/lib/composables/location.mjs.map +1 -1
  295. package/lib/composables/size.mjs +2 -2
  296. package/lib/composables/size.mjs.map +1 -1
  297. package/lib/composables/validation.mjs +1 -1
  298. package/lib/composables/validation.mjs.map +1 -1
  299. package/lib/composables/variant.mjs +2 -0
  300. package/lib/composables/variant.mjs.map +1 -1
  301. package/lib/entry-bundler.mjs +1 -1
  302. package/lib/framework.mjs +7 -2
  303. package/lib/framework.mjs.map +1 -1
  304. package/lib/index.d.ts +42 -43
  305. package/lib/util/anchor.mjs +34 -28
  306. package/lib/util/anchor.mjs.map +1 -1
  307. package/lib/util/animation.mjs +2 -2
  308. package/lib/util/animation.mjs.map +1 -1
  309. package/lib/util/box.mjs +12 -0
  310. package/lib/util/box.mjs.map +1 -1
  311. package/lib/util/helpers.mjs +9 -1
  312. package/lib/util/helpers.mjs.map +1 -1
  313. package/package.json +6 -8
  314. package/lib/components/VBanner/VBannerAvatar.mjs +0 -20
  315. package/lib/components/VBanner/VBannerAvatar.mjs.map +0 -1
  316. package/lib/components/VBanner/VBannerIcon.mjs +0 -20
  317. package/lib/components/VBanner/VBannerIcon.mjs.map +0 -1
  318. package/lib/components/VBreadcrumbs/shared.mjs +0 -2
  319. package/lib/components/VBreadcrumbs/shared.mjs.map +0 -1
  320. package/lib/components/VCard/VCardAvatar.mjs +0 -3
  321. package/lib/components/VCard/VCardAvatar.mjs.map +0 -1
  322. package/lib/components/VCard/VCardContent.mjs +0 -3
  323. package/lib/components/VCard/VCardContent.mjs.map +0 -1
  324. package/lib/components/VCard/VCardHeader.mjs +0 -3
  325. package/lib/components/VCard/VCardHeader.mjs.map +0 -1
  326. package/lib/components/VCard/VCardHeaderText.mjs +0 -3
  327. package/lib/components/VCard/VCardHeaderText.mjs.map +0 -1
  328. package/lib/components/VCard/VCardImg.mjs +0 -3
  329. package/lib/components/VCard/VCardImg.mjs.map +0 -1
  330. package/lib/components/VTimeline/shared.mjs +0 -2
  331. package/lib/components/VTimeline/shared.mjs.map +0 -1
  332. package/lib/presets/default/index.mjs +0 -71
  333. package/lib/presets/default/index.mjs.map +0 -1
@@ -14,160 +14,230 @@
14
14
  border-width: 0;
15
15
  border-radius: 9999px;
16
16
  }
17
- .v-chip--size-x-small {
17
+ .v-chip.v-chip--size-x-small {
18
18
  --v-chip-size: 0.625rem;
19
19
  --v-chip-height: 20px;
20
20
  font-size: 0.625rem;
21
21
  padding: 0 8px;
22
22
  }
23
- .v-chip--size-x-small .v-avatar {
24
- --v-avatar-height: 12px;
23
+ .v-chip.v-chip--size-x-small .v-avatar {
24
+ --v-avatar-height: 14px;
25
25
  }
26
- .v-chip--pill.v-chip--size-x-small .v-avatar {
26
+ .v-chip--pill.v-chip.v-chip--size-x-small .v-avatar {
27
27
  --v-avatar-height: 20px;
28
28
  }
29
29
 
30
- .v-chip--size-x-small .v-chip__prepend,
31
- .v-chip--size-x-small .v-chip__filter {
32
- margin-inline-start: -4px;
30
+ .v-chip.v-chip--size-x-small .v-chip__filter,
31
+ .v-chip.v-chip--size-x-small .v-chip__prepend,
32
+ .v-chip.v-chip--size-x-small > .v-avatar--start,
33
+ .v-chip.v-chip--size-x-small > .v-icon--start {
33
34
  margin-inline-end: 4px;
34
35
  }
35
- .v-chip--pill.v-chip--size-x-small .v-chip__prepend, .v-chip--pill.v-chip--size-x-small .v-chip__filter {
36
+ .v-chip.v-chip--size-x-small .v-chip__filter,
37
+ .v-chip.v-chip--size-x-small .v-chip__prepend,
38
+ .v-chip.v-chip--size-x-small .v-icon--start {
39
+ margin-inline-start: -4px;
40
+ }
41
+ .v-chip.v-chip--size-x-small .v-avatar--start {
42
+ margin-inline-start: -5.6px;
43
+ }
44
+ .v-chip--pill.v-chip.v-chip--size-x-small .v-avatar--start {
36
45
  margin-inline-start: -8px;
37
46
  }
38
47
 
39
- .v-chip--size-x-small .v-chip__append,
40
- .v-chip--size-x-small .v-chip__close {
41
- margin-inline-end: -4px;
48
+ .v-chip.v-chip--size-x-small .v-chip__append,
49
+ .v-chip.v-chip--size-x-small .v-chip__close,
50
+ .v-chip.v-chip--size-x-small > .v-avatar--end,
51
+ .v-chip.v-chip--size-x-small > .v-icon--end {
42
52
  margin-inline-start: 4px;
53
+ margin-inline-end: -4px;
43
54
  }
44
- .v-chip--pill.v-chip--size-x-small .v-chip__append, .v-chip--pill.v-chip--size-x-small .v-chip__close {
55
+ .v-chip--pill.v-chip.v-chip--size-x-small .v-avatar--end, .v-chip--pill.v-chip.v-chip--size-x-small .v-icon--end {
45
56
  margin-inline-end: -8px;
46
57
  }
58
+ .v-chip--pill.v-chip.v-chip--size-x-small .v-avatar--end + .v-chip__close, .v-chip--pill.v-chip.v-chip--size-x-small .v-icon--end + .v-chip__close {
59
+ margin-inline-start: 8px;
60
+ }
47
61
 
48
- .v-chip--size-small {
62
+ .v-chip.v-chip--size-small {
49
63
  --v-chip-size: 0.75rem;
50
64
  --v-chip-height: 26px;
51
65
  font-size: 0.75rem;
52
66
  padding: 0 10px;
53
67
  }
54
- .v-chip--size-small .v-avatar {
55
- --v-avatar-height: 18px;
68
+ .v-chip.v-chip--size-small .v-avatar {
69
+ --v-avatar-height: 20px;
56
70
  }
57
- .v-chip--pill.v-chip--size-small .v-avatar {
71
+ .v-chip--pill.v-chip.v-chip--size-small .v-avatar {
58
72
  --v-avatar-height: 26px;
59
73
  }
60
74
 
61
- .v-chip--size-small .v-chip__prepend,
62
- .v-chip--size-small .v-chip__filter {
63
- margin-inline-start: -5px;
75
+ .v-chip.v-chip--size-small .v-chip__filter,
76
+ .v-chip.v-chip--size-small .v-chip__prepend,
77
+ .v-chip.v-chip--size-small > .v-avatar--start,
78
+ .v-chip.v-chip--size-small > .v-icon--start {
64
79
  margin-inline-end: 5px;
65
80
  }
66
- .v-chip--pill.v-chip--size-small .v-chip__prepend, .v-chip--pill.v-chip--size-small .v-chip__filter {
81
+ .v-chip.v-chip--size-small .v-chip__filter,
82
+ .v-chip.v-chip--size-small .v-chip__prepend,
83
+ .v-chip.v-chip--size-small .v-icon--start {
84
+ margin-inline-start: -5px;
85
+ }
86
+ .v-chip.v-chip--size-small .v-avatar--start {
87
+ margin-inline-start: -7px;
88
+ }
89
+ .v-chip--pill.v-chip.v-chip--size-small .v-avatar--start {
67
90
  margin-inline-start: -10px;
68
91
  }
69
92
 
70
- .v-chip--size-small .v-chip__append,
71
- .v-chip--size-small .v-chip__close {
72
- margin-inline-end: -5px;
93
+ .v-chip.v-chip--size-small .v-chip__append,
94
+ .v-chip.v-chip--size-small .v-chip__close,
95
+ .v-chip.v-chip--size-small > .v-avatar--end,
96
+ .v-chip.v-chip--size-small > .v-icon--end {
73
97
  margin-inline-start: 5px;
98
+ margin-inline-end: -5px;
74
99
  }
75
- .v-chip--pill.v-chip--size-small .v-chip__append, .v-chip--pill.v-chip--size-small .v-chip__close {
100
+ .v-chip--pill.v-chip.v-chip--size-small .v-avatar--end, .v-chip--pill.v-chip.v-chip--size-small .v-icon--end {
76
101
  margin-inline-end: -10px;
77
102
  }
103
+ .v-chip--pill.v-chip.v-chip--size-small .v-avatar--end + .v-chip__close, .v-chip--pill.v-chip.v-chip--size-small .v-icon--end + .v-chip__close {
104
+ margin-inline-start: 10px;
105
+ }
78
106
 
79
- .v-chip--size-default {
107
+ .v-chip.v-chip--size-default {
80
108
  --v-chip-size: 0.875rem;
81
109
  --v-chip-height: 32px;
82
110
  font-size: 0.875rem;
83
111
  padding: 0 12px;
84
112
  }
85
- .v-chip--size-default .v-avatar {
86
- --v-avatar-height: 24px;
113
+ .v-chip.v-chip--size-default .v-avatar {
114
+ --v-avatar-height: 26px;
87
115
  }
88
- .v-chip--pill.v-chip--size-default .v-avatar {
116
+ .v-chip--pill.v-chip.v-chip--size-default .v-avatar {
89
117
  --v-avatar-height: 32px;
90
118
  }
91
119
 
92
- .v-chip--size-default .v-chip__prepend,
93
- .v-chip--size-default .v-chip__filter {
94
- margin-inline-start: -6px;
120
+ .v-chip.v-chip--size-default .v-chip__filter,
121
+ .v-chip.v-chip--size-default .v-chip__prepend,
122
+ .v-chip.v-chip--size-default > .v-avatar--start,
123
+ .v-chip.v-chip--size-default > .v-icon--start {
95
124
  margin-inline-end: 6px;
96
125
  }
97
- .v-chip--pill.v-chip--size-default .v-chip__prepend, .v-chip--pill.v-chip--size-default .v-chip__filter {
126
+ .v-chip.v-chip--size-default .v-chip__filter,
127
+ .v-chip.v-chip--size-default .v-chip__prepend,
128
+ .v-chip.v-chip--size-default .v-icon--start {
129
+ margin-inline-start: -6px;
130
+ }
131
+ .v-chip.v-chip--size-default .v-avatar--start {
132
+ margin-inline-start: -8.4px;
133
+ }
134
+ .v-chip--pill.v-chip.v-chip--size-default .v-avatar--start {
98
135
  margin-inline-start: -12px;
99
136
  }
100
137
 
101
- .v-chip--size-default .v-chip__append,
102
- .v-chip--size-default .v-chip__close {
103
- margin-inline-end: -6px;
138
+ .v-chip.v-chip--size-default .v-chip__append,
139
+ .v-chip.v-chip--size-default .v-chip__close,
140
+ .v-chip.v-chip--size-default > .v-avatar--end,
141
+ .v-chip.v-chip--size-default > .v-icon--end {
104
142
  margin-inline-start: 6px;
143
+ margin-inline-end: -6px;
105
144
  }
106
- .v-chip--pill.v-chip--size-default .v-chip__append, .v-chip--pill.v-chip--size-default .v-chip__close {
145
+ .v-chip--pill.v-chip.v-chip--size-default .v-avatar--end, .v-chip--pill.v-chip.v-chip--size-default .v-icon--end {
107
146
  margin-inline-end: -12px;
108
147
  }
148
+ .v-chip--pill.v-chip.v-chip--size-default .v-avatar--end + .v-chip__close, .v-chip--pill.v-chip.v-chip--size-default .v-icon--end + .v-chip__close {
149
+ margin-inline-start: 12px;
150
+ }
109
151
 
110
- .v-chip--size-large {
152
+ .v-chip.v-chip--size-large {
111
153
  --v-chip-size: 1rem;
112
154
  --v-chip-height: 38px;
113
155
  font-size: 1rem;
114
156
  padding: 0 14px;
115
157
  }
116
- .v-chip--size-large .v-avatar {
117
- --v-avatar-height: 30px;
158
+ .v-chip.v-chip--size-large .v-avatar {
159
+ --v-avatar-height: 32px;
118
160
  }
119
- .v-chip--pill.v-chip--size-large .v-avatar {
161
+ .v-chip--pill.v-chip.v-chip--size-large .v-avatar {
120
162
  --v-avatar-height: 38px;
121
163
  }
122
164
 
123
- .v-chip--size-large .v-chip__prepend,
124
- .v-chip--size-large .v-chip__filter {
125
- margin-inline-start: -7px;
165
+ .v-chip.v-chip--size-large .v-chip__filter,
166
+ .v-chip.v-chip--size-large .v-chip__prepend,
167
+ .v-chip.v-chip--size-large > .v-avatar--start,
168
+ .v-chip.v-chip--size-large > .v-icon--start {
126
169
  margin-inline-end: 7px;
127
170
  }
128
- .v-chip--pill.v-chip--size-large .v-chip__prepend, .v-chip--pill.v-chip--size-large .v-chip__filter {
171
+ .v-chip.v-chip--size-large .v-chip__filter,
172
+ .v-chip.v-chip--size-large .v-chip__prepend,
173
+ .v-chip.v-chip--size-large .v-icon--start {
174
+ margin-inline-start: -7px;
175
+ }
176
+ .v-chip.v-chip--size-large .v-avatar--start {
177
+ margin-inline-start: -9.8px;
178
+ }
179
+ .v-chip--pill.v-chip.v-chip--size-large .v-avatar--start {
129
180
  margin-inline-start: -14px;
130
181
  }
131
182
 
132
- .v-chip--size-large .v-chip__append,
133
- .v-chip--size-large .v-chip__close {
134
- margin-inline-end: -7px;
183
+ .v-chip.v-chip--size-large .v-chip__append,
184
+ .v-chip.v-chip--size-large .v-chip__close,
185
+ .v-chip.v-chip--size-large > .v-avatar--end,
186
+ .v-chip.v-chip--size-large > .v-icon--end {
135
187
  margin-inline-start: 7px;
188
+ margin-inline-end: -7px;
136
189
  }
137
- .v-chip--pill.v-chip--size-large .v-chip__append, .v-chip--pill.v-chip--size-large .v-chip__close {
190
+ .v-chip--pill.v-chip.v-chip--size-large .v-avatar--end, .v-chip--pill.v-chip.v-chip--size-large .v-icon--end {
138
191
  margin-inline-end: -14px;
139
192
  }
193
+ .v-chip--pill.v-chip.v-chip--size-large .v-avatar--end + .v-chip__close, .v-chip--pill.v-chip.v-chip--size-large .v-icon--end + .v-chip__close {
194
+ margin-inline-start: 14px;
195
+ }
140
196
 
141
- .v-chip--size-x-large {
197
+ .v-chip.v-chip--size-x-large {
142
198
  --v-chip-size: 1.125rem;
143
199
  --v-chip-height: 44px;
144
200
  font-size: 1.125rem;
145
201
  padding: 0 17px;
146
202
  }
147
- .v-chip--size-x-large .v-avatar {
148
- --v-avatar-height: 36px;
203
+ .v-chip.v-chip--size-x-large .v-avatar {
204
+ --v-avatar-height: 38px;
149
205
  }
150
- .v-chip--pill.v-chip--size-x-large .v-avatar {
206
+ .v-chip--pill.v-chip.v-chip--size-x-large .v-avatar {
151
207
  --v-avatar-height: 44px;
152
208
  }
153
209
 
154
- .v-chip--size-x-large .v-chip__prepend,
155
- .v-chip--size-x-large .v-chip__filter {
156
- margin-inline-start: -8.5px;
210
+ .v-chip.v-chip--size-x-large .v-chip__filter,
211
+ .v-chip.v-chip--size-x-large .v-chip__prepend,
212
+ .v-chip.v-chip--size-x-large > .v-avatar--start,
213
+ .v-chip.v-chip--size-x-large > .v-icon--start {
157
214
  margin-inline-end: 8.5px;
158
215
  }
159
- .v-chip--pill.v-chip--size-x-large .v-chip__prepend, .v-chip--pill.v-chip--size-x-large .v-chip__filter {
216
+ .v-chip.v-chip--size-x-large .v-chip__filter,
217
+ .v-chip.v-chip--size-x-large .v-chip__prepend,
218
+ .v-chip.v-chip--size-x-large .v-icon--start {
219
+ margin-inline-start: -8.5px;
220
+ }
221
+ .v-chip.v-chip--size-x-large .v-avatar--start {
222
+ margin-inline-start: -11.9px;
223
+ }
224
+ .v-chip--pill.v-chip.v-chip--size-x-large .v-avatar--start {
160
225
  margin-inline-start: -17px;
161
226
  }
162
227
 
163
- .v-chip--size-x-large .v-chip__append,
164
- .v-chip--size-x-large .v-chip__close {
165
- margin-inline-end: -8.5px;
228
+ .v-chip.v-chip--size-x-large .v-chip__append,
229
+ .v-chip.v-chip--size-x-large .v-chip__close,
230
+ .v-chip.v-chip--size-x-large > .v-avatar--end,
231
+ .v-chip.v-chip--size-x-large > .v-icon--end {
166
232
  margin-inline-start: 8.5px;
233
+ margin-inline-end: -8.5px;
167
234
  }
168
- .v-chip--pill.v-chip--size-x-large .v-chip__append, .v-chip--pill.v-chip--size-x-large .v-chip__close {
235
+ .v-chip--pill.v-chip.v-chip--size-x-large .v-avatar--end, .v-chip--pill.v-chip.v-chip--size-x-large .v-icon--end {
169
236
  margin-inline-end: -17px;
170
237
  }
238
+ .v-chip--pill.v-chip.v-chip--size-x-large .v-avatar--end + .v-chip__close, .v-chip--pill.v-chip.v-chip--size-x-large .v-icon--end + .v-chip__close {
239
+ margin-inline-start: 17px;
240
+ }
171
241
 
172
242
  .v-chip.v-chip--density-default {
173
243
  height: calc(var(--v-chip-height) + 0px);
@@ -228,6 +298,9 @@
228
298
  .v-chip--link {
229
299
  cursor: pointer;
230
300
  }
301
+ .v-chip--filter {
302
+ user-select: none;
303
+ }
231
304
  .v-chip--label {
232
305
  border-radius: 4px;
233
306
  }
@@ -252,6 +325,10 @@
252
325
  font-size: inherit;
253
326
  }
254
327
 
328
+ .v-chip__filter {
329
+ transition: 0.15s cubic-bezier(0.4, 0, 0.2, 1);
330
+ }
331
+
255
332
  .v-chip__overlay {
256
333
  position: absolute;
257
334
  top: 0;
@@ -1,9 +1,12 @@
1
1
  import { resolveDirective as _resolveDirective, withDirectives as _withDirectives, vShow as _vShow, createVNode as _createVNode } from "vue";
2
+
3
+ /* eslint-disable complexity */
2
4
  // Styles
3
5
  import "./VChip.css"; // Components
4
6
 
5
7
  import { VAvatar } from "../VAvatar/index.mjs";
6
8
  import { VChipGroupSymbol } from "../VChipGroup/VChipGroup.mjs";
9
+ import { VDefaultsProvider } from "../VDefaultsProvider/index.mjs";
7
10
  import { VExpandXTransition } from "../transitions/index.mjs";
8
11
  import { VIcon } from "../VIcon/index.mjs"; // Composables
9
12
 
@@ -88,10 +91,6 @@ export const VChip = defineComponent({
88
91
  emit,
89
92
  slots
90
93
  } = _ref;
91
- const isActive = useProxiedModel(props, 'modelValue');
92
- const {
93
- themeClasses
94
- } = provideTheme(props);
95
94
  const {
96
95
  borderClasses
97
96
  } = useBorder(props);
@@ -100,10 +99,12 @@ export const VChip = defineComponent({
100
99
  colorStyles,
101
100
  variantClasses
102
101
  } = useVariant(props);
102
+ const {
103
+ densityClasses
104
+ } = useDensity(props);
103
105
  const {
104
106
  elevationClasses
105
107
  } = useElevation(props);
106
- const group = useGroupItem(props, VChipGroupSymbol, false);
107
108
  const {
108
109
  roundedClasses
109
110
  } = useRounded(props);
@@ -111,8 +112,10 @@ export const VChip = defineComponent({
111
112
  sizeClasses
112
113
  } = useSize(props);
113
114
  const {
114
- densityClasses
115
- } = useDensity(props);
115
+ themeClasses
116
+ } = provideTheme(props);
117
+ const isActive = useProxiedModel(props, 'modelValue');
118
+ const group = useGroupItem(props, VChipGroupSymbol, false);
116
119
  const link = useLink(props, attrs);
117
120
 
118
121
  function onCloseClick(e) {
@@ -136,6 +139,7 @@ export const VChip = defineComponent({
136
139
  'v-chip--disabled': props.disabled,
137
140
  'v-chip--label': props.label,
138
141
  'v-chip--link': isClickable,
142
+ 'v-chip--filter': hasFilter,
139
143
  'v-chip--pill': props.pill
140
144
  }, themeClasses.value, borderClasses.value, hasColor ? colorClasses.value : undefined, densityClasses.value, elevationClasses.value, roundedClasses.value, sizeClasses.value, variantClasses.value, group == null ? void 0 : group.selectedClass.value],
141
145
  "style": [hasColor ? colorStyles.value : undefined],
@@ -144,42 +148,76 @@ export const VChip = defineComponent({
144
148
  "href": link.href.value,
145
149
  "onClick": isClickable && onClickFunc
146
150
  }, {
147
- default: () => [genOverlays(isClickable, 'v-chip'), hasFilter && _createVNode(VExpandXTransition, null, {
148
- default: () => [_withDirectives(_createVNode("div", {
149
- "class": "v-chip__filter"
150
- }, [slots.filter ? slots.filter() : _createVNode(VIcon, {
151
- "icon": props.filterIcon
152
- }, null)]), [[_vShow, group.isSelected.value]])]
153
- }), hasPrepend && _createVNode("div", {
154
- "class": "v-chip__prepend"
155
- }, [slots.prepend ? slots.prepend() : _createVNode(VAvatar, {
156
- "icon": props.prependIcon,
157
- "image": props.prependAvatar,
158
- "size": props.size
159
- }, null)]), (_slots$default = (_slots$default2 = slots.default) == null ? void 0 : _slots$default2.call(slots, {
151
+ default: () => [genOverlays(isClickable, 'v-chip'), hasFilter && _createVNode(VDefaultsProvider, {
152
+ "key": "filter",
153
+ "defaults": {
154
+ VIcon: {
155
+ icon: props.filterIcon
156
+ }
157
+ }
158
+ }, {
159
+ default: () => [_createVNode(VExpandXTransition, null, {
160
+ default: () => [_withDirectives(_createVNode("div", {
161
+ "class": "v-chip__filter"
162
+ }, [slots.filter ? slots.filter() : _createVNode(VIcon, null, null)]), [[_vShow, group.isSelected.value]])]
163
+ })]
164
+ }), hasPrepend && _createVNode(VDefaultsProvider, {
165
+ "key": "prepend",
166
+ "defaults": {
167
+ VAvatar: {
168
+ image: props.prependAvatar
169
+ },
170
+ VIcon: {
171
+ icon: props.prependIcon
172
+ }
173
+ }
174
+ }, {
175
+ default: () => [slots.prepend ? _createVNode("div", {
176
+ "class": "v-chip__prepend"
177
+ }, [slots.prepend()]) : props.prependAvatar ? _createVNode(VAvatar, {
178
+ "start": true
179
+ }, null) : props.prependIcon ? _createVNode(VIcon, {
180
+ "start": true
181
+ }, null) : undefined]
182
+ }), (_slots$default = (_slots$default2 = slots.default) == null ? void 0 : _slots$default2.call(slots, {
160
183
  isSelected: group == null ? void 0 : group.isSelected.value,
161
184
  selectedClass: group == null ? void 0 : group.selectedClass.value,
162
185
  select: group == null ? void 0 : group.select,
163
186
  toggle: group == null ? void 0 : group.toggle,
164
187
  value: group == null ? void 0 : group.value.value,
165
188
  disabled: props.disabled
166
- })) != null ? _slots$default : props.text, hasAppend && _createVNode("div", {
167
- "class": "v-chip__append"
168
- }, [slots.append ? slots.append() : _createVNode(VAvatar, {
169
- "icon": props.appendIcon,
170
- "image": props.appendAvatar,
171
- "size": props.size
172
- }, null)]), hasClose && _createVNode("div", {
173
- "class": "v-chip__close",
174
- "onClick": onCloseClick
175
- }, [slots.close ? slots.close({
176
- props: {
177
- onClick: onCloseClick
189
+ })) != null ? _slots$default : props.text, hasAppend && _createVNode(VDefaultsProvider, {
190
+ "key": "append",
191
+ "defaults": {
192
+ VAvatar: {
193
+ image: props.appendAvatar
194
+ },
195
+ VIcon: {
196
+ icon: props.appendIcon
197
+ }
198
+ }
199
+ }, {
200
+ default: () => [slots.append ? _createVNode("div", {
201
+ "class": "v-chip__append"
202
+ }, [slots.append()]) : props.appendAvatar ? _createVNode(VAvatar, {
203
+ "end": true
204
+ }, null) : props.appendIcon ? _createVNode(VIcon, {
205
+ "end": true
206
+ }, null) : undefined]
207
+ }), hasClose && _createVNode(VDefaultsProvider, {
208
+ "key": "close",
209
+ "defaults": {
210
+ VIcon: {
211
+ icon: props.closeIcon,
212
+ size: 'x-small'
213
+ }
178
214
  }
179
- }) : _createVNode(VIcon, {
180
- "icon": props.closeIcon,
181
- "size": "x-small"
182
- }, null)])]
215
+ }, {
216
+ default: () => [_createVNode("div", {
217
+ "class": "v-chip__close",
218
+ "onClick": onCloseClick
219
+ }, [slots.close ? slots.close() : _createVNode(VIcon, null, null)])]
220
+ })]
183
221
  }), [[_resolveDirective("ripple"), isClickable && props.ripple, null]]);
184
222
  };
185
223
  }
@@ -1 +1 @@
1
- {"version":3,"file":"VChip.mjs","names":["VAvatar","VChipGroupSymbol","VExpandXTransition","VIcon","genOverlays","makeVariantProps","useVariant","makeBorderProps","useBorder","makeDensityProps","useDensity","makeElevationProps","useElevation","makeGroupItemProps","useGroupItem","makeRoundedProps","useRounded","makeRouterProps","useLink","makeSizeProps","useSize","makeTagProps","makeThemeProps","provideTheme","useProxiedModel","IconValue","Ripple","defineComponent","VChip","name","directives","props","activeClass","String","appendAvatar","appendIcon","closable","Boolean","closeIcon","type","default","closeLabel","draggable","filter","filterIcon","label","link","pill","prependAvatar","prependIcon","ripple","text","modelValue","tag","variant","emits","e","value","setup","attrs","emit","slots","isActive","themeClasses","borderClasses","colorClasses","colorStyles","variantClasses","elevationClasses","group","roundedClasses","sizeClasses","densityClasses","onCloseClick","Tag","isLink","hasAppend","append","hasClose","close","hasFilter","hasPrepend","prepend","hasColor","isSelected","isClickable","disabled","onClickFunc","toggle","undefined","selectedClass","href","size","select","onClick"],"sources":["../../../src/components/VChip/VChip.tsx"],"sourcesContent":["// Styles\nimport './VChip.sass'\n\n// Components\nimport { VAvatar } from '@/components/VAvatar'\nimport { VChipGroupSymbol } from '@/components/VChipGroup/VChipGroup'\nimport { VExpandXTransition } from '@/components/transitions'\nimport { VIcon } from '@/components/VIcon'\n\n// Composables\nimport { genOverlays, makeVariantProps, useVariant } from '@/composables/variant'\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeGroupItemProps, useGroupItem } from '@/composables/group'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeRouterProps, useLink } from '@/composables/router'\nimport { makeSizeProps, useSize } from '@/composables/size'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { IconValue } from '@/composables/icons'\n\n// Directives\nimport { Ripple } from '@/directives/ripple'\n\n// Utilities\nimport { defineComponent } from '@/util'\n\nexport const VChip = defineComponent({\n name: 'VChip',\n\n directives: { Ripple },\n\n props: {\n activeClass: String,\n appendAvatar: String,\n appendIcon: IconValue,\n closable: Boolean,\n closeIcon: {\n type: IconValue,\n default: '$delete',\n },\n closeLabel: {\n type: String,\n default: '$vuetify.close',\n },\n draggable: Boolean,\n filter: Boolean,\n filterIcon: {\n type: String,\n default: '$complete',\n },\n label: Boolean,\n link: Boolean,\n pill: Boolean,\n prependAvatar: String,\n prependIcon: IconValue,\n ripple: {\n type: Boolean,\n default: true,\n },\n text: String,\n modelValue: {\n type: Boolean,\n default: true,\n },\n\n ...makeBorderProps(),\n ...makeDensityProps(),\n ...makeElevationProps(),\n ...makeGroupItemProps(),\n ...makeRoundedProps(),\n ...makeRouterProps(),\n ...makeSizeProps(),\n ...makeTagProps({ tag: 'span' }),\n ...makeThemeProps(),\n ...makeVariantProps({ variant: 'tonal' } as const),\n },\n\n emits: {\n 'click:close': (e: Event) => true,\n 'update:active': (value: Boolean) => true,\n 'update:modelValue': (value: Boolean) => true,\n },\n\n setup (props, { attrs, emit, slots }) {\n const isActive = useProxiedModel(props, 'modelValue')\n\n const { themeClasses } = provideTheme(props)\n const { borderClasses } = useBorder(props)\n const { colorClasses, colorStyles, variantClasses } = useVariant(props)\n const { elevationClasses } = useElevation(props)\n const group = useGroupItem(props, VChipGroupSymbol, false)\n const { roundedClasses } = useRounded(props)\n const { sizeClasses } = useSize(props)\n const { densityClasses } = useDensity(props)\n const link = useLink(props, attrs)\n\n function onCloseClick (e: Event) {\n isActive.value = false\n\n emit('click:close', e)\n }\n\n return () => {\n const Tag = (link.isLink.value) ? 'a' : props.tag\n const hasAppend = !!(slots.append || props.appendIcon || props.appendAvatar)\n const hasClose = !!(slots.close || props.closable)\n const hasFilter = !!(slots.filter || props.filter) && group\n const hasPrepend = !!(slots.prepend || props.prependIcon || props.prependAvatar)\n const hasColor = !group || group.isSelected.value\n const isClickable = !props.disabled && (!!group || link.isClickable.value || props.link)\n const onClickFunc = props.link ? props.link : group?.toggle\n\n return isActive.value && (\n <Tag\n class={[\n 'v-chip',\n {\n 'v-chip--disabled': props.disabled,\n 'v-chip--label': props.label,\n 'v-chip--link': isClickable,\n 'v-chip--pill': props.pill,\n },\n themeClasses.value,\n borderClasses.value,\n hasColor ? colorClasses.value : undefined,\n densityClasses.value,\n elevationClasses.value,\n roundedClasses.value,\n sizeClasses.value,\n variantClasses.value,\n group?.selectedClass.value,\n ]}\n style={[\n hasColor ? colorStyles.value : undefined,\n ]}\n disabled={ props.disabled || undefined }\n draggable={ props.draggable }\n href={ link.href.value }\n v-ripple={ [isClickable && props.ripple, null] }\n onClick={ isClickable && onClickFunc }\n >\n { genOverlays(isClickable, 'v-chip') }\n\n { hasFilter && (\n <VExpandXTransition>\n <div\n class=\"v-chip__filter\"\n v-show={ group.isSelected.value }\n >\n { slots.filter\n ? slots.filter()\n : <VIcon icon={ props.filterIcon } />\n }\n </div>\n </VExpandXTransition>\n ) }\n\n { hasPrepend && (\n <div class=\"v-chip__prepend\">\n { slots.prepend\n ? slots.prepend()\n : (\n <VAvatar\n icon={ props.prependIcon }\n image={ props.prependAvatar }\n size={ props.size }\n />\n )\n }\n </div>\n ) }\n\n { slots.default?.({\n isSelected: group?.isSelected.value,\n selectedClass: group?.selectedClass.value,\n select: group?.select,\n toggle: group?.toggle,\n value: group?.value.value,\n disabled: props.disabled,\n }) ?? props.text }\n\n { hasAppend && (\n <div class=\"v-chip__append\">\n { slots.append\n ? slots.append()\n : (\n <VAvatar\n icon={ props.appendIcon }\n image={ props.appendAvatar }\n size={ props.size }\n />\n )\n }\n </div>\n ) }\n\n { hasClose && (\n <div\n class=\"v-chip__close\"\n onClick={ onCloseClick }\n >\n { slots.close\n ? slots.close({ props: { onClick: onCloseClick } })\n : (\n <VIcon\n icon={ props.closeIcon }\n size=\"x-small\"\n />\n )\n }\n </div>\n ) }\n </Tag>\n )\n }\n },\n})\n\nexport type VChip = InstanceType<typeof VChip>\n"],"mappings":"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"}
1
+ {"version":3,"file":"VChip.mjs","names":["VAvatar","VChipGroupSymbol","VDefaultsProvider","VExpandXTransition","VIcon","genOverlays","makeVariantProps","useVariant","makeBorderProps","useBorder","makeDensityProps","useDensity","makeElevationProps","useElevation","makeGroupItemProps","useGroupItem","makeRoundedProps","useRounded","makeRouterProps","useLink","makeSizeProps","useSize","makeTagProps","makeThemeProps","provideTheme","useProxiedModel","IconValue","Ripple","defineComponent","VChip","name","directives","props","activeClass","String","appendAvatar","appendIcon","closable","Boolean","closeIcon","type","default","closeLabel","draggable","filter","filterIcon","label","link","pill","prependAvatar","prependIcon","ripple","text","modelValue","tag","variant","emits","e","value","setup","attrs","emit","slots","borderClasses","colorClasses","colorStyles","variantClasses","densityClasses","elevationClasses","roundedClasses","sizeClasses","themeClasses","isActive","group","onCloseClick","Tag","isLink","hasAppend","append","hasClose","close","hasFilter","hasPrepend","prepend","hasColor","isSelected","isClickable","disabled","onClickFunc","toggle","undefined","selectedClass","href","icon","image","select","size"],"sources":["../../../src/components/VChip/VChip.tsx"],"sourcesContent":["/* eslint-disable complexity */\n// Styles\nimport './VChip.sass'\n\n// Components\nimport { VAvatar } from '@/components/VAvatar'\nimport { VChipGroupSymbol } from '@/components/VChipGroup/VChipGroup'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VExpandXTransition } from '@/components/transitions'\nimport { VIcon } from '@/components/VIcon'\n\n// Composables\nimport { genOverlays, makeVariantProps, useVariant } from '@/composables/variant'\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeGroupItemProps, useGroupItem } from '@/composables/group'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeRouterProps, useLink } from '@/composables/router'\nimport { makeSizeProps, useSize } from '@/composables/size'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { IconValue } from '@/composables/icons'\n\n// Directives\nimport { Ripple } from '@/directives/ripple'\n\n// Utilities\nimport { defineComponent } from '@/util'\n\nexport const VChip = defineComponent({\n name: 'VChip',\n\n directives: { Ripple },\n\n props: {\n activeClass: String,\n appendAvatar: String,\n appendIcon: IconValue,\n closable: Boolean,\n closeIcon: {\n type: IconValue,\n default: '$delete',\n },\n closeLabel: {\n type: String,\n default: '$vuetify.close',\n },\n draggable: Boolean,\n filter: Boolean,\n filterIcon: {\n type: String,\n default: '$complete',\n },\n label: Boolean,\n link: Boolean,\n pill: Boolean,\n prependAvatar: String,\n prependIcon: IconValue,\n ripple: {\n type: Boolean,\n default: true,\n },\n text: String,\n modelValue: {\n type: Boolean,\n default: true,\n },\n\n ...makeBorderProps(),\n ...makeDensityProps(),\n ...makeElevationProps(),\n ...makeGroupItemProps(),\n ...makeRoundedProps(),\n ...makeRouterProps(),\n ...makeSizeProps(),\n ...makeTagProps({ tag: 'span' }),\n ...makeThemeProps(),\n ...makeVariantProps({ variant: 'tonal' } as const),\n },\n\n emits: {\n 'click:close': (e: Event) => true,\n 'update:active': (value: Boolean) => true,\n 'update:modelValue': (value: Boolean) => true,\n },\n\n setup (props, { attrs, emit, slots }) {\n const { borderClasses } = useBorder(props)\n const { colorClasses, colorStyles, variantClasses } = useVariant(props)\n const { densityClasses } = useDensity(props)\n const { elevationClasses } = useElevation(props)\n const { roundedClasses } = useRounded(props)\n const { sizeClasses } = useSize(props)\n const { themeClasses } = provideTheme(props)\n\n const isActive = useProxiedModel(props, 'modelValue')\n const group = useGroupItem(props, VChipGroupSymbol, false)\n const link = useLink(props, attrs)\n\n function onCloseClick (e: Event) {\n isActive.value = false\n\n emit('click:close', e)\n }\n\n return () => {\n const Tag = (link.isLink.value) ? 'a' : props.tag\n const hasAppend = !!(slots.append || props.appendIcon || props.appendAvatar)\n const hasClose = !!(slots.close || props.closable)\n const hasFilter = !!(slots.filter || props.filter) && group\n const hasPrepend = !!(slots.prepend || props.prependIcon || props.prependAvatar)\n const hasColor = !group || group.isSelected.value\n const isClickable = !props.disabled && (!!group || link.isClickable.value || props.link)\n const onClickFunc = props.link ? props.link : group?.toggle\n\n return isActive.value && (\n <Tag\n class={[\n 'v-chip',\n {\n 'v-chip--disabled': props.disabled,\n 'v-chip--label': props.label,\n 'v-chip--link': isClickable,\n 'v-chip--filter': hasFilter,\n 'v-chip--pill': props.pill,\n },\n themeClasses.value,\n borderClasses.value,\n hasColor ? colorClasses.value : undefined,\n densityClasses.value,\n elevationClasses.value,\n roundedClasses.value,\n sizeClasses.value,\n variantClasses.value,\n group?.selectedClass.value,\n ]}\n style={[\n hasColor ? colorStyles.value : undefined,\n ]}\n disabled={ props.disabled || undefined }\n draggable={ props.draggable }\n href={ link.href.value }\n v-ripple={ [isClickable && props.ripple, null] }\n onClick={ isClickable && onClickFunc }\n >\n { genOverlays(isClickable, 'v-chip') }\n\n { hasFilter && (\n <VDefaultsProvider\n key=\"filter\"\n defaults={{\n VIcon: { icon: props.filterIcon },\n }}\n >\n <VExpandXTransition>\n <div\n class=\"v-chip__filter\"\n v-show={ group.isSelected.value }\n >\n { slots.filter ? slots.filter() : (<VIcon />) }\n </div>\n </VExpandXTransition>\n </VDefaultsProvider>\n ) }\n\n { hasPrepend && (\n <VDefaultsProvider\n key=\"prepend\"\n defaults={{\n VAvatar: {\n image: props.prependAvatar,\n },\n VIcon: {\n icon: props.prependIcon,\n },\n }}\n >\n { slots.prepend\n ? (\n <div class=\"v-chip__prepend\">\n { slots.prepend() }\n </div>\n )\n : props.prependAvatar ? (<VAvatar start />)\n : props.prependIcon ? (<VIcon start />)\n : undefined\n }\n </VDefaultsProvider>\n ) }\n\n { slots.default?.({\n isSelected: group?.isSelected.value,\n selectedClass: group?.selectedClass.value,\n select: group?.select,\n toggle: group?.toggle,\n value: group?.value.value,\n disabled: props.disabled,\n }) ?? props.text }\n\n { hasAppend && (\n <VDefaultsProvider\n key=\"append\"\n defaults={{\n VAvatar: {\n image: props.appendAvatar,\n },\n VIcon: {\n icon: props.appendIcon,\n },\n }}\n >\n { slots.append\n ? (\n <div class=\"v-chip__append\">\n { slots.append() }\n </div>\n )\n : props.appendAvatar ? (<VAvatar end />)\n : props.appendIcon ? (<VIcon end />)\n : undefined\n }\n </VDefaultsProvider>\n ) }\n\n { hasClose && (\n <VDefaultsProvider\n key=\"close\"\n defaults={{\n VIcon: {\n icon: props.closeIcon,\n size: 'x-small',\n },\n }}\n >\n <div\n class=\"v-chip__close\"\n onClick={ onCloseClick }\n >\n { slots.close ? slots.close() : (<VIcon />) }\n </div>\n </VDefaultsProvider>\n ) }\n </Tag>\n )\n }\n },\n})\n\nexport type VChip = InstanceType<typeof VChip>\n"],"mappings":"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"}
@@ -28,6 +28,9 @@
28
28
  &--link
29
29
  cursor: pointer
30
30
 
31
+ &--filter
32
+ user-select: none
33
+
31
34
  &--label
32
35
  @include tools.rounded($chip-label-border-radius)
33
36
 
@@ -50,6 +53,9 @@
50
53
  .v-icon
51
54
  font-size: inherit
52
55
 
56
+ .v-chip__filter
57
+ transition: $chip-filter-transition
58
+
53
59
  .v-chip__overlay
54
60
  @include tools.absolute()
55
61
  background-color: currentColor
@@ -11,24 +11,35 @@
11
11
  $height: map.get($chip-sizes, "height") + (6 * $multiplier);
12
12
  $padding: math.round(math.div($height, $chip-padding-ratio));
13
13
 
14
- .v-chip--size-#{$sizeName} {
14
+ .v-chip.v-chip--size-#{$sizeName} {
15
15
  --v-chip-size: #{$size};
16
16
  --v-chip-height: #{$height};
17
17
  font-size: $size;
18
18
  padding: 0 $padding;
19
19
 
20
20
  .v-avatar {
21
- --v-avatar-height: #{$height - 8};
21
+ --v-avatar-height: #{$height - 6};
22
22
 
23
23
  @at-root #{selector.append('.v-chip--pill', &)} {
24
24
  --v-avatar-height: #{$height};
25
25
  }
26
26
  }
27
27
 
28
+ .v-chip__filter,
28
29
  .v-chip__prepend,
29
- .v-chip__filter {
30
- margin-inline-start: -$padding * .5;
30
+ > .v-avatar--start,
31
+ > .v-icon--start {
31
32
  margin-inline-end: $padding * .5;
33
+ }
34
+
35
+ .v-chip__filter,
36
+ .v-chip__prepend,
37
+ .v-icon--start {
38
+ margin-inline-start: -$padding * .5;
39
+ }
40
+
41
+ .v-avatar--start {
42
+ margin-inline-start: -$padding * .7;
32
43
 
33
44
  @at-root #{selector.append('.v-chip--pill', &)} {
34
45
  margin-inline-start: -$padding;
@@ -36,12 +47,21 @@
36
47
  }
37
48
 
38
49
  .v-chip__append,
39
- .v-chip__close {
40
- margin-inline-end: -$padding * .5;
50
+ .v-chip__close,
51
+ > .v-avatar--end,
52
+ > .v-icon--end {
41
53
  margin-inline-start: $padding * .5;
54
+ margin-inline-end: -$padding * .5;
55
+ }
42
56
 
57
+ .v-avatar--end,
58
+ .v-icon--end {
43
59
  @at-root #{selector.append('.v-chip--pill', &)} {
44
60
  margin-inline-end: -$padding;
61
+
62
+ + .v-chip__close {
63
+ margin-inline-start: $padding;
64
+ }
45
65
  }
46
66
  }
47
67
  }
@@ -4,16 +4,12 @@
4
4
  @use '../../styles/tools';
5
5
 
6
6
  // Defaults
7
- $chip-append-margin-inline-end: 0 !default;
8
- $chip-append-margin-inline-start: 8px !default;
9
7
  $chip-background: rgb(var(--v-theme-surface-variant)) !default;
10
8
  $chip-border-color: settings.$border-color-root !default;
11
9
  $chip-border-radius: map.get(settings.$rounded, "pill") !default;
12
10
  $chip-border-style: settings.$border-style-root !default;
13
11
  $chip-border-thin-width: thin !default;
14
12
  $chip-border-width: 0 !default;
15
- $chip-close-margin-inline-end: -4px !default;
16
- $chip-close-margin-inline-start: 8px !default;
17
13
  $chip-close-size: 18px !default;
18
14
  $chip-color: rgb(var(--v-theme-on-surface-variant)) !default;
19
15
  $chip-density: ("default": 0, "comfortable": -2, "compact": -3) !default;
@@ -28,7 +24,7 @@ $chip-max-width: 100% !default;
28
24
  $chip-overflow: hidden !default;
29
25
  $chip-padding-ratio: 2 + math.div(2, 3) !default;
30
26
  $chip-plain-opacity: 0.26 !default;
31
- $chip-rounded-border-radius: settings.$border-radius-root !default;
27
+ $chip-filter-transition: .15s settings.$standard-easing !default;
32
28
  $chip-white-space: nowrap !default;
33
29
 
34
30
  $chip-sizes: (