Releases: vaadin/web-components
Releases · vaadin/web-components
v23.0.0-alpha4
API Documentation →
🐛 Bug Fixes
field-base
- ⧉ Do not override custom helper on attach (#3279)
🔬 Tests
button
- ⧉ Add visual tests for button in :hover state (#3269)
🏠 Internal
- All components
- ⧉ Set
type
to module
in package.json (#3280)
- Other
- ⧉ Add custom-field dev page (#3278)
v23.0.0-alpha3
API Documentation →
💥 Breaking Changes
button
- ⧉ Remove transition from hover state (#3271)
combo-box
,date-picker
- ⧉ Prevent virtual keyboard open on overlay close (#3253)
vaadin-lumo-styles
- ⧉ Change anchors styles to only apply to anchors with href (#3204)
🚀 New Features
form-layout
- ⧉ Deprecate placing multiple fields to a form-item (#3221)
menu-bar
- ⧉ Add disabled property to menu-bar (#3246)
🐛 Bug Fixes
combo-box
,time-picker
- ⧉ Use correct 1-based index for aria-posinset (#3254)
component-base
- ⧉ Add missing export to FocusTrapController (#3258)
crud
- ⧉ Reset CRUD header margin in all cases (#3244)
- ⧉ Use correct CRUD dialog header styles (#3233)
date-picker
- ⧉ Ensure focused month is visible when receiving focus (#3219)
grid
- ⧉ Prevent grid body from expanding on dragover (#3263)
- ⧉ Change grid table role to treegrid (#3259)
notification
- ⧉ Prevent closing overlays when interacting with notifications (#3208)
password-field
- ⧉ Do not override i18n with hardcoded aria-label (#3226)
select
- ⧉ Correctly assign menuElement in all cases (#3272)
🏭 Legacy Removal
app-layout
- ⧉ Remove iron-resizable-behavior from app-layout (#3206)
avatar-group
,avatar
- ⧉ Use announce helper in avatar-group (#3239)
avatar
- ⧉ Remove an unused dependency (#3215)
board
- ⧉ Remove iron-resizable-behavior from board (#3211)
component-base
- ⧉ Add resize-mixin for observing host resizes (#3207)
- ⧉ Add helper for screen reader announcements (#3238)
date-picker
- ⧉ Use announce helper in date-picker (#3243)
dialog
- ⧉ Remove iron-resizable-behavior from dialog (#3205)
field-base
- ⧉ Remove iron-resize event from field-mixin (#3213)
field-highlighter
- ⧉ Use announce helper in field highlighter (#3240)
form-layout
- ⧉ Remove iron-resizable-behavior from form-layout (#3201)
split-layout
- ⧉ Remove iron-resizable-behavior from split-layout (#3200)
💅 Polish
- All components
- ⧉ Add more rules to ESLint config, fix warnings (#3198)
field-base
- ⧉ Update LabelMixin to use SlotController (#3181)
- ⧉ Extract helper logic to HelperController (#3185)
time-picker
- ⧉ Update time-picker theme files imports (#3224)
vaadin-material-styles
- ⧉ Remove obsolete IE11 workaround (#3250)
🔬 Tests
combo-box
,login
,number-field
- ⧉ Do not use font-size for hiding blinking caret (#3225)
🏠 Internal
- All components
- ⧉ Update copyright header to 2022 (#3247)
- ⧉ Fix typos detected by cspell (#3265)
time-picker
- ⧉ Update JSDoc to extend correct classes (#3223)
- Other
- ⧉ Bump web-test-runner dependencies versions (#3268)
- ⧉ Update dev dependencies versions (#3252)
v22.0.2
API Documentation →
🐛 Bug Fixes
date-picker
- ⧉ Enable input into autoOpenDisabled date picker on mobile (#3165) (CP: 22.0) (#3190)
field-base
- ⧉ Prevent duplicate error message announcement (#3182) (#3184)
upload
- ⧉ Hide upload drop files area from screen readers (#3174) (#3177)
💅 Polish
component-base
- ⧉ Add observer logic to SlotController (#3193) (#3194)
- ⧉ Add missing SlotController logic and tests (#3179) (#3186)
component-base
,field-base
- ⧉ Move SlotController to component-base (#3178) (#3183)
v23.0.0-alpha2
API Documentation →
💥 Breaking Changes
confirm-dialog
- ⧉ Update confirm-dialog to make styling easier (#3135)
crud
- ⧉ Make vaadin-crud-edit extend vaadin-button (#3146)
- ⧉ Use fullscreen attribute to apply styles (#3109)
- ⧉ Move header, form and buttons to slots (#3106)
- ⧉ Split the crud filter/sorter cell on separate rows (#3032)
- ⧉ Simplify internal structure to make styling easier (#3108)
password-field
- ⧉ Make reveal button extend vaadin-button (#3167)
🚀 New Features
app-layout
- ⧉ Add i18n property to app-layout (#3192)
- ⧉ Prevent focusing drawer by keyboard when it is closed (#3168)
- ⧉ Trap focus in drawer when opening in overlay (#2395)
charts
- ⧉ Add Lumo/Material theme on Charts (#3006)
component-base
- ⧉ Add default slot support to SlotMixin (#3130)
custom-field
- ⧉ Add whitespace theme for fixing label bottom padding (#3164)
scroller
- ⧉ Make scroller focusable by default (#3107)
upload
- ⧉ Add focus-ring attribute to vaadin-upload-file (#3156)
vaadin-themable-mixin
- ⧉ Vaadin-themable-mixin LitElement support (#3093)
🐛 Bug Fixes
combo-box
- ⧉ Restore focus to combo box on outside click (#3138)
component-base
- ⧉ Don't use unsupported forEach on HTMLCollection (#3155)
context-menu
- ⧉ Workaround Safari/VoiceOver menu navigation (#3158)
date-picker
- ⧉ Enable input into autoOpenDisabled date picker on mobile (#3165)
date-picker
- ⧉ Restore focus on date picker outside click (#3097)
date-time-picker
- ⧉ Remove generated pickers when adding custom pickers (#3153)
field-base
- ⧉ Prevent duplicate error message announcement (#3182)
- ⧉ Set hidden attribute on the error message when field is valid (#3143)
field-highlighter
- ⧉ Update date-picker observer to mind the new structure (#3142)
form-layout
- ⧉ Link form-item label to field via aria-labelledby (#3088)
menu-bar
- ⧉ Add theme to SubMenuItem interface (#3127)
select
- ⧉ Restore select focus on fullscreen dropdown close (#3120)
text-area
- ⧉ Add pattern mixin to typings (#3126)
upload
- ⧉ Hide upload drop files button from assistive technologies (#3174)
vaadin-themable-mixin
- ⧉ Skip undefined LitElement styles (#3123)
💅 Polish
- All components
- ⧉ Add more rules to ESLint config, fix warnings (#3090)
- ⧉ Add more rules to ESLint config, fix warnings (#3148)
- ⧉ Add more rules to ESLint config, fix warnings (#3151)
- ⧉ Add more rules to ESLint config, fix warnings (#3152)
app-layout
- ⧉ Remove use of
constant()
as no longer required (#3113)
- ⧉ Remove no longer needed CSS property (#3115)
avatar-group
- ⧉ Remove iron-resizable-behavior from avatar-group (#3150)
combo-box
- ⧉ Remove iron-resizable-behavior from combo-box (#3195)
component-base
- ⧉ Add observer logic to SlotController (#3193)
- ⧉ Add missing SlotController logic and tests (#3179)
- ⧉ Add FocusTrapController for trapping focus within a node (#3140)
- ⧉ Use a local copy of gestures (#3092)
- ⧉ Move SlotController to component-base (#3178)
- ⧉ Move focus utils to component-base (#3141)
field-base
- ⧉ Use attribute utils in FieldAriaController (#3187)
menu-bar
- ⧉ Remove iron-resizable-behavior from menu-bar (#3196)
tabs
- ⧉ Remove iron-resizable-behavior from tabs (#3197)
upload
- ⧉ Stop click event propagation, improve tests (#3086)
vaadin-overlay
- ⧉ Make overlay use FocusTrapController (#3159)
- ⧉ Add overlay.restoreFocusNode and vaadin-overlay-closing event (#3144)
📝 Documentation
app-layout
- ⧉ Remove incorrectly documented content part (#3114)
vaadin-overlay
- ⧉ Document missing over...
Read more
v22.0.1
API Documentation →
🐛 Bug Fixes
context-menu
- ⧉ Workaround Safari/VoiceOver menu navigation (#3158) (#3160)
date-time-picker
- ⧉ Remove generated pickers when adding custom pickers (#3153) (#3157)
field-base
- ⧉ Set hidden attribute on the error message when field is valid (#3143) (#3147)
v22.0.0
API Documentation →
Changes in Vaadin 22
Vaadin 22 contains many improvements. Some of them affect the DOM structure and styling of components.
The most important changes are noted below. Check out the following links to learn more:
See also the release notes for alpha and beta releases for more details.
♿ Accessibility Improvements
See GitHub Project Board for the comprehensive list of accessibility issues addressed in Vaadin 22.
Accessibility fixes have caused a couple of breaking changes listed in the Upgrading Guide.
Special thanks to @knoobie, for the invaluable help with testing, feedback, and guidance with the accessibility work!
⚠️ Moved Packages
All the public web components packages have been moved. Old packages are preserved for backwards compatibility.
Before (Vaadin 14 - 21)
import { GridElement } from '@vaadin/vaadin-grid';
After (Vaadin 22)
import { Grid } from '@vaadin/grid';
💥 Breaking Changes
- All components
- ⧉ Simplify typings, drop interfaces files (#2813)
- ⧉ Remove element suffix from component classes (#2765)
button
- ⧉ Use role attribute instead of native button (#2394)
charts
- ⧉ Drop update() method support (#2825)
combo-box
- ⧉ Move combo-box items to light DOM (#2467)
combo-box
,context-menu
,dialog
,grid
,menu-bar
,notification
,select
,vaadin-overlay
- ⧉ Drop render() method support (#2819)
select
- ⧉ Update select to use new structure (#2282)
upload
- ⧉ Change box-sizing to work in form-layout (#2907)
- ⧉ Rename clear button to remove button (#2809)
🚀 New Features
charts
- ⧉ Update to latest Highcharts (#2433)
combo-box
, item
- ⧉ Add checkmark part to item components (#2879)
crud
- ⧉ Add method to control disabled state of save button (#2461)
- ⧉ Expose editor buttons with slots (#2377)
- ⧉ Add no-toolbar attribute to hide toolbar (#2417)
grid
- ⧉ Add row focus mode to convey treegrid structure (#2434)
- ⧉ Add context to event data and update relevant types (#2165)
grid-pro
- ⧉ Indicate editable and read-only cells visually (#2309)
icons
- ⧉ Update main entrypoint to use Vaadin iconset (#2853)
login
- ⧉ Add autocomplete attribute to login-form password field (#2847)
menu-bar
- ⧉ Add i18n property to menu bar (#2384)
- ⧉ Theme property for individual menu items (#2401)
notification
- ⧉ Add a static "show" method to Notification class (#2322)
- ⧉ Add theme support to notification static helper (#2849)
upload
- ⧉ Use semantic HTML tags for the upload (#2316)
vaadin-lumo-styles
- ⧉ Allow easy customizing of required indicator's color (#2810)
virtual-list
- ⧉ Add requestContentUpdate API to virtual list (#2556)
🐛 Bug Fixes
date-picker
,grid-pro
- ⧉ Restore focus on date picker outside click (#3097) (#3103)
menu-bar
select
- ⧉ Restore select focus on fullscreen dropdown close (#3120) (#3121)
💅 Polish
app-layout
- ⧉ Remove use of
constant()
as no longer required (#3113) (#3119)
- ⧉ Remove no longer needed CSS property (#3115) (#3118)
upload
- ⧉ Stop click event propagation, improve tests (#3086) (#3094)
📝 Documentation
app-layout
- ⧉ Remove incorrectly documented content part (#3114) (#3116)
🏠 Internal
grid
- ⧉ Update JSDoc to use fetch in the data provider (#3098) (#3099)
v23.0.0-alpha1
API Documentation →
🚀 New Features
avatar-group
,avatar
,message-list
,vaadin-lumo-styles
,vaadin-material-styles
- ⧉ Add user colors to Lumo and Material styles (#3025)
component-base
- ⧉ Add common browser detection utils (#3062)
- ⧉ Add helpers to detect iOS devices and touch (#3070)
combo-box
,custom-field
,date-picker
,date-time-picker
,email-field
,integer-field
,number-field
,password-field
,rich-text-editor
,select
,text-area
,text-field
,time-picker
- ⧉ Add type definitions for change event (#3085)
field-highlighter
- ⧉ Move field-highlighter package from Collaboration Engine (#3031)
form-layout
- ⧉ Add a required indicator to form item (#3057)
select
- ⧉ Support creating select items using items property (#2990)
text-area
- ⧉ Add pattern and preventInvalidInput properties (#2784)
🐛 Bug Fixes
combo-box
- ⧉ Add missing combo-box mixin classes (#3082)
- ⧉ Stop Escape keydown propagation if the event was handled (#3039)
component-base
- ⧉ Ensure virtualizer re-renders unhidden items (#3081)
field-base
- ⧉ Allow null and undefined for errorMessage (#3066)
grid
- ⧉ Consider all headers and footers when calculating column width (#2964)
- ⧉ Regenerate cell class names after column tree update (#3033)
- ⧉ Make sure each grid section has a tabbable element (#2998)
- ⧉ Get filtered grid root items from the data provider (#3021)
- ⧉ Apply proper focus highlight for multiple header rows (#3016)
polymer-legacy-adapter
- ⧉ Include model reference in declaratively bound events (#3078)
upload
- ⧉ Set tabindex on the vaadin-upload-file element (#3068)
💅 Polish
component-base
- ⧉ Move controllers logic to ControllerMixin (#3069)
checkbox-group
- ⧉ Use ElementMixin instead of DirMixin (#3034)
field-base
- ⧉ Move ARIA attributes logic to FieldAriaController (#3048)
radio-group
- ⧉ Use ElementMixin instead of DirMixin (#3035)
vaadin-overlay
- ⧉ Drop support for setting instanceProps (#3050)
📝 Documentation
combo-box
- ⧉ Improve JSDoc, remove Polymer-specific parts (#3049)
🔬 Tests
- All components
- ⧉ Update testing helpers, use browser utils (#3052)
field-highlighter
- ⧉ Add mouseenter event to reduce flakiness (#3089)
🏠 Internal
- All components
- ⧉ Update master branch to Vaadin 23 (#3018)
component-base
- ⧉ Use relative imports for virtualizer (#3056)
- Other
- ⧉ Update status badges in README (#3045)
- ⧉ Update dev dependencies versions (#3042)
- ⧉ Dev pages improvements (#3027)
- ⧉ Add crud dev page (#3028)
- ⧉ Update root README with renamed packages (#3020)
v22.0.0-rc1
API Documentation →
🚀 New Features
component-base
- ⧉ Add common browser detection utils (#3062) (#3063)
- ⧉ Add helpers to detect iOS devices and touch (#3070) (#3074)
🐛 Bug Fixes
combo-box
- ⧉ Add missing combo-box mixin classes (#3082) (#3091)
- ⧉ Stop Escape keydown propagation if the event was handled (#3039) (#3046)
component-base
- ⧉ Ensure virtualizer re-renders unhidden items (#3081) (#3083)
field-base
- ⧉ Allow null and undefined for errorMessage (#3066) (#3067)
grid
- ⧉ Consider all headers and footers when calculating column width (#2964) (#3044)
- ⧉ Regenerate cell class names after column tree update (#3033) (#3037)
- ⧉ Make sure each grid section has a tabbable element (#2998) (#3026)
- ⧉ Get filtered grid root items from the data provider (#3021) (#3023)
- ⧉ Apply proper focus highlight for multiple header rows (#3016) (#3022)
polymer-legacy-adapter
- ⧉ Include model reference in declaratively bound events (#3078) (#3079)
upload
- ⧉ Set tabindex on the vaadin-upload-file element (#3068) (#3073)
💅 Polish
component-base
- ⧉ Use relative imports for virtualizer (#3056) (#3058)
- ⧉ Move controllers logic to ControllerMixin (#3069) (#3075)
field-base
- ⧉ Move ARIA attributes logic to FieldAriaController (#3048) (#3076)
📝 Documentation
combo-box
- ⧉ Improve JSDoc, remove Polymer-specific parts (#3049) (#3051)
🔬 Tests
- All components
- ⧉ Update testing helpers, use browser utils (#3052) (#3053)
🏠 Internal
- Other
- ⧉ Update dev dependencies versions (#3042) (#3043)
- ⧉ Update change detection branch to 22.0 (#3017)
v21.0.5
API Documentation →
🐛 Bug Fixes
vaadin-grid
- ⧉ Consider all headers and footers when calculating column width (#2964) (#3055)
- ⧉ Regenerate cell class names after column tree update (#3033) (#3038)
vaadin-template-renderer
- ⧉ Include model reference in declaratively bound events (#3078) (#3080)
vaadin-virtual-list
- ⧉ Ensure virtualizer re-renders unhidden items (#3081) (#3084)
v21.0.4
API Documentation →
🐛 Bug Fixes
vaadin-combo-box
- ⧉ Remove tabindex from combo-box overlay (#2948) (#2952)
vaadin-grid
- ⧉ Get filtered grid root items from the data provider (#3021) (#3024)
- ⧉ Disable row drag and drop while loading (#2957) (#2973)
vaadin-list-mixin
- ⧉ Prevent disabled items from being focusable (#2921) (#2926)
vaadin-radio-button
- ⧉ Set has-value attribute on radio button click (#2874)
vaadin-select
vaadin-text-field
- ⧉ Workaround disabled textarea freezing Firefox (#2981) (#2984)
- ⧉ Hide the native reveal password icon on edge (#2876)
vaadin-virtual-list
- ⧉ Workaround scrollToIndex issue (#2922) (#2923)
- ⧉ Don't update element for the same index more than once (#2910) (#2913)
- ⧉ Limit the requested pages to a given threshold (#2886)
💅 Polish
vaadin-grid
,vaadin-virtual-list
- ⧉ Reduce virtualizer physical element count (#2912) (#2916)