Bug Fixes
- click-outside: null check elements (358e69c), closes #14101
- inputs: prevent inputs from emitting native events twice (#14126) (78ffd3e)
- inputs: prevent non-function slot warning (3d534ff)
- layout: allow priority to be either number or string (251f130)
- layout: handle nav drawer scrim correctly (#14657) (c08758d)
- layout: wait until mounted to calculate layout (#14744) (4f372c2)
- sass: ordering of container-max-widths media queries (#14416) (c12aa75)
- styles: don't emit charset (641500a)
- types: emit global shims (0e7e99b)
- validation: change how errorMessages are derived (80e6538), closes #14694
- VAlert: apply correct background and radius to pseudo element (8842000)
- VAlert: density padding and border prop styling (3ed8ecd)
- VAlert: remove border pointer-events and adjust content line-height (08e364c)
- VAlert: remove flex from alert text (6422393)
- VApp: remove min-height (302885f)
- VAppBar: remove default layout name (f6c2349)
- VAvatar: remove unnecessary css properties (8018fb0), closes #13974
- VBtn: remove focus indicator scale transition (e2544c9), closes #14166
- VBtn: remove shadow when flat (1b75db0), closes #14303
- VBtn: use flex: 1 instead of 100% width in bottom nav (#14121) (99b2be3)
- VBtnGroup: cascade density to v-btn and add height scss var (0e0176c)
- VBtnGroup: set vertical-align (c1e259a)
- VCard: add display: block (7e445ad), closes #14083
- VCardHeaderText: add min-width for proper text truncate (2e66c5b)
- VCheckbox,VCounter: use custom defineComponent (95d845a)
- VChip: label border-radius, font-weight, close icon positioning (e4e07f4)
- VChip: reimplement variants and update defaults (e6fd7c0)
- VDialog: fit content when fullscreen (d91b568)
- VExpansionPanel: don't use pseudo elements for shadows (cfce256)
- VExpansionPanelTitle: use correct border-radius (5036ca1)
- VField: don't show gap when missing label (#14486) (0d0bbce), closes #14495
- VField: increase label selector specificity (e02287f)
- VField: passthrough VInput props (3363239)
- VField/VInput: append/prepend click not being emitted (#14687) (471614c)
- VFileInput: show clear button when dirty (5be7940)
- VForm: add validate method, don't require events, reset proxyModel (1162d03), closes #14485
- VImg: remove content rule from non-pseudo elements (1c8ffd6), closes #14427
- VImg: remove initial transition (12d4640)
- VInput: show messages or hint when no errorMessages (efa1014)
- VInput/VField: input and label location with density (#14664) (c5a9f4a)
- VInput/VMessages: add item slot, remove default, update naming (21cd82b)
- VInput/VMessages: apply correct error color and add message transition (e4c49ca)
- VInput/VSelectionControl: filter both VInput and VSelectionControl props (#14430) (98bb69e)
- VList: add and update slots (a954900)
- VList: add missing default theme background color (5cbd51c)
- VList: another potential infinite loop (e877071)
- VList: improve nested list padding (#14527) (e00a816)
- VList: internal header slot would propagate to child groups (#14479) (19f001f)
- VList: potential infinite loop (8771842)
- VList: render default slot (4353e8e)
- VList: use correct slot props (9c2e86a)
- VList: use correct text color (24d49ad)
- VListItem: pass click event to link.navigate() (eeaff88)
- VNavigationDrawer: remove border from floating drawer (#14286) (fcebb30), closes #14033
- VNavigationDrawer: remove top css property (5e2e166), closes #14334
- VNavigationDrawer: use isTemporary for route watcher check (2d0b085)
- VOverlay: broken test (6fa8792)
- VOverlay: check if in IN_BROWSER before using resize observer (80c9cd6)
- VOverlay: don't account for body scrollbar when contained (d797ced), closes #14149
- VOverlay: don't add keydown listeners in SSR (a47cf78)
- VOverlay: don't pass modelValue to activator props (9b5290f)
- VOverlay: normalise Box, delay resizeObserver trigger (3940216), closes #14132
- VOverlay: only close top instance (118d1d0)
- VOverlay: set activatorEl on hover and focus events (c14ebd7), closes #14466
- VProgress:* don't round values (e048e1d), closes #14498
- VRangeSlider: fit thumb-label to content (815246d)
- VRating: only apply icon transform when using the hover prop (e77a970)
- VResponsive: set max-height to 100% to match max-width (#14167) (bcd4b6e)
- VSelect: allow number items (66683b1)
- VSlider: center slider track vertically (176fabb)
- VSlider: enable readonly support (da9955b)
- VSlider: set show-ticks default to false (2aea5b0)
- VSlider: thumb label should follow step value (60a91ad)
- VTextarea: correctly pass down VField props (d302264)
- VTextField: pass error state from VInput to VField (39010dc)
- VTextField/VTextarea: disable jsx optimisations (5f447e1), closes #14578
- VToolbar: add missing flat functionality (efbc003)
- VToolbar: justify prepend/append slots (20b3a17)
- VTooltip: don't pass bare VNode to default slot (812804a)
Features
- colors: add proper text color for color-pack bgs (bb980e8)
- defaults: add support to scope defaults (#14533) (13ebcef)
- filter: add new composable (#14035) (2d42810)
- framework: export composables from
'vuetify'
(fc55de9), closes #14107 - hydration: create new composable (#14103) (5baaeb6)
- layout: export useLayout composable (7783da1)
- loader: port to v3 (#14183) (de62c00)
- *locale: nested: add new composable (#14200) (65fa6d3)
- theme: support partial custom themes (#14528) (0f92811), closes #13914
- theme: support ssr with @vueuse/head (#14534) (73566fb)
- types: add generics to components (#14230) (827c6ee)
- types: generate GlobalComponents for volar (c3c98ba)
- validation: add new composable (#14026) (97b37d4)** create adapters (9f871e2), closes #14408
- VAlert: add append slot (55560d0)
- VAlert: add support for title (031d9fd)
- VAlert: set default border opacity to 1 (d41c642)
- VApp: expose layout data (dbca46f)
- VBottomNavigation: implement defaults provide (#14480) (f4949f7)
- VBreadcrumbs: rename item slot to text, update passed variables (#14344) (467af73)
- VBtnGroup: port to v3 (#14251) (1d4f9c3), closes #10622 #13325
- VBtnToggle: port to v3 (#14456) (ab137c1)
- VCheckbox: port to v3 (#14184) (a582eea)
- VChip: add text prop (2c17ccc)
- VChipGroup: port to v3 (#14413) (5640a90)
- VHover: rename slot prop (bfc050c)
- VIcon: add theme support (e7f60b7)
- VImg: support gradients (77101c2), closes #13964
- VImg: use natural width when width=auto (518b798), closes #8252
- VList: allow children to be simple strings (f4a1c03)
- VList: render subheaders and dividers through items prop (#14455) (eb73cf7)
- VNavigationDrawer: add smooth touch dragging (#14468) (d10f0cb), closes #3262
- VNavigationDrawer: close v-navigation-drawer when route changes (44348ac)
- VOverlay: add
contained
prop (f9b150f), closes #14148 - VPagination: add rounded prop (b0e4519)
- VParallax: port to v3 (7f7fafe), closes #12954 #12398
- VRangeSlider: add strict prop and fix behaviour (fa2242f)
- VRating: add props to item-label slot (75323fd)
- VSelect: port to v3 (#14504) (23137ba)
- VSelectionControl: create new component (#14359) (faf6936), closes #4951 #6146 #10849 #11377 #12417 #12770 #13026 #13963
- VSlider: update to v3 (#14123) (646e845), closes #4746 #5391 #6465 #6615 #6818 #9935 #10566 #12132
- VSwitch: add inset prop functionality (1f9906e)
- VSwitch: add loading/loader slot support (c15d90f)
- VTable: port to v3 (#14177) (7950edd)
- VTextarea: port to v3 (#14175) (3fad932), closes #5314 #6995 #10009
- VTextField: remove input transition when using single-line (c820191)
- VToolbar: port to v3 (#14642) (b1feba0)
- VWindow: port to v3 (#13676) (48667ea)
BREAKING CHANGES
- VSelectionControl: renamed onIcon/offIcon to trueIcon/falseIcon