@vaadin/grid 25.2.0-alpha1 → 25.2.0-alpha11

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 (55) hide show
  1. package/custom-elements.json +53 -19
  2. package/package.json +12 -12
  3. package/src/styles/vaadin-grid-filter-base-styles.js +4 -0
  4. package/src/styles/vaadin-grid-sorter-base-styles.js +4 -0
  5. package/src/styles/vaadin-grid-tree-toggle-base-styles.js +4 -0
  6. package/src/vaadin-grid-a11y-mixin.js +2 -5
  7. package/src/vaadin-grid-active-item-mixin.js +0 -15
  8. package/src/vaadin-grid-array-data-provider-mixin.js +0 -3
  9. package/src/vaadin-grid-column-auto-width-mixin.js +1 -4
  10. package/src/vaadin-grid-column-group-mixin.js +0 -3
  11. package/src/vaadin-grid-column-group.d.ts +3 -1
  12. package/src/vaadin-grid-column-group.js +0 -1
  13. package/src/vaadin-grid-column-mixin.js +2 -10
  14. package/src/vaadin-grid-column-reordering-mixin.js +33 -14
  15. package/src/vaadin-grid-column-resizing-mixin.js +0 -11
  16. package/src/vaadin-grid-column.d.ts +5 -2
  17. package/src/vaadin-grid-column.js +0 -1
  18. package/src/vaadin-grid-data-provider-mixin.js +0 -31
  19. package/src/vaadin-grid-drag-and-drop-mixin.js +1 -44
  20. package/src/vaadin-grid-dynamic-columns-mixin.js +1 -4
  21. package/src/vaadin-grid-event-context-mixin.js +1 -4
  22. package/src/vaadin-grid-filter-column-mixin.js +0 -3
  23. package/src/vaadin-grid-filter-column.d.ts +3 -1
  24. package/src/vaadin-grid-filter-column.js +0 -1
  25. package/src/vaadin-grid-filter-element-mixin.js +1 -3
  26. package/src/vaadin-grid-filter-mixin.js +0 -3
  27. package/src/vaadin-grid-filter.js +0 -1
  28. package/src/vaadin-grid-helpers.js +1 -1
  29. package/src/vaadin-grid-keyboard-navigation-mixin.js +2 -13
  30. package/src/vaadin-grid-mixin.js +5 -26
  31. package/src/vaadin-grid-resize-mixin.js +0 -2
  32. package/src/vaadin-grid-row-details-mixin.js +30 -16
  33. package/src/vaadin-grid-scroll-mixin.js +0 -3
  34. package/src/vaadin-grid-selection-column-base-mixin.js +0 -2
  35. package/src/vaadin-grid-selection-column-mixin.js +0 -4
  36. package/src/vaadin-grid-selection-column.d.ts +3 -1
  37. package/src/vaadin-grid-selection-column.js +0 -1
  38. package/src/vaadin-grid-selection-mixin.js +18 -21
  39. package/src/vaadin-grid-sort-column-mixin.js +0 -3
  40. package/src/vaadin-grid-sort-column.d.ts +3 -1
  41. package/src/vaadin-grid-sort-column.js +0 -1
  42. package/src/vaadin-grid-sort-mixin.js +0 -3
  43. package/src/vaadin-grid-sorter-mixin.js +0 -2
  44. package/src/vaadin-grid-sorter.js +0 -3
  45. package/src/vaadin-grid-styling-mixin.d.ts +1 -1
  46. package/src/vaadin-grid-styling-mixin.js +0 -3
  47. package/src/vaadin-grid-tree-column-mixin.js +0 -3
  48. package/src/vaadin-grid-tree-column.d.ts +3 -1
  49. package/src/vaadin-grid-tree-column.js +0 -1
  50. package/src/vaadin-grid-tree-toggle-mixin.js +0 -3
  51. package/src/vaadin-grid-tree-toggle.js +0 -3
  52. package/src/vaadin-grid.d.ts +1 -1
  53. package/src/vaadin-grid.js +1 -3
  54. package/web-types.json +397 -769
  55. package/web-types.lit.json +247 -233
@@ -7,9 +7,6 @@ import { timeOut } from '@vaadin/component-base/src/async.js';
7
7
  import { Debouncer } from '@vaadin/component-base/src/debounce.js';
8
8
  import { SlotController } from '@vaadin/component-base/src/slot-controller.js';
9
9
 
10
- /**
11
- * @polymerMixin
12
- */
13
10
  export const GridFilterElementMixin = (superClass) =>
14
11
  class extends superClass {
15
12
  static get properties() {
@@ -68,6 +65,7 @@ export const GridFilterElementMixin = (superClass) =>
68
65
  textField.value = value;
69
66
 
70
67
  this._debouncerFilterChanged = Debouncer.debounce(this._debouncerFilterChanged, timeOut.after(200), () => {
68
+ /** @internal to not document it in CEM */
71
69
  this.dispatchEvent(new CustomEvent('filter-changed', { bubbles: true }));
72
70
  });
73
71
  }
@@ -4,9 +4,6 @@
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
6
 
7
- /**
8
- * @polymerMixin
9
- */
10
7
  export const FilterMixin = (superClass) =>
11
8
  class FilterMixin extends superClass {
12
9
  static get properties() {
@@ -39,7 +39,6 @@ import { GridFilterElementMixin } from './vaadin-grid-filter-element-mixin.js';
39
39
  *
40
40
  * @customElement vaadin-grid-filter
41
41
  * @extends HTMLElement
42
- * @mixes GridFilterElementMixin
43
42
  */
44
43
  class GridFilter extends GridFilterElementMixin(ThemableMixin(PolylitMixin(LumoInjectionMixin(LitElement)))) {
45
44
  static get is() {
@@ -221,7 +221,7 @@ export class ColumnObserver {
221
221
  __onMutation() {
222
222
  // Detect if this is the initial call
223
223
  const initialCall = !this.__currentColumns;
224
- this.__currentColumns = this.__currentColumns || [];
224
+ this.__currentColumns ||= [];
225
225
 
226
226
  // Detect added and removed columns or if the columns order has changed
227
227
  const columns = ColumnObserver.getColumns(this.__host);
@@ -20,9 +20,6 @@ function isDetailsCell(element) {
20
20
  return element.matches('[part~="details-cell"]');
21
21
  }
22
22
 
23
- /**
24
- * @polymerMixin
25
- */
26
23
  export const KeyboardNavigationMixin = (superClass) =>
27
24
  class KeyboardNavigationMixin extends superClass {
28
25
  static get properties() {
@@ -103,7 +100,7 @@ export const KeyboardNavigationMixin = (superClass) =>
103
100
  ['_itemsFocusable', '_footerFocusable', '_headerFocusable'].forEach((prop) => {
104
101
  const focusable = this[prop];
105
102
  if (value) {
106
- const parent = focusable && focusable.parentElement;
103
+ const parent = focusable?.parentElement;
107
104
  if (isCell(focusable)) {
108
105
  // Cell itself focusable (default)
109
106
  this[prop] = parent;
@@ -428,7 +425,7 @@ export const KeyboardNavigationMixin = (superClass) =>
428
425
  const rowGroup = row.parentNode;
429
426
  // Body rows have index property, otherwise DOM child index of the row is used.
430
427
  if (rowGroup === this.$.items) {
431
- return bodyFallbackIndex !== undefined ? bodyFallbackIndex : row.index;
428
+ return bodyFallbackIndex ?? row.index;
432
429
  }
433
430
  return [...rowGroup.children].indexOf(row);
434
431
  }
@@ -1097,12 +1094,4 @@ export const KeyboardNavigationMixin = (superClass) =>
1097
1094
  }
1098
1095
  return null;
1099
1096
  }
1100
-
1101
- /**
1102
- * Fired when a cell is focused with click or keyboard navigation.
1103
- *
1104
- * Use context property of @see {@link GridCellFocusEvent} to get detail information about the event.
1105
- *
1106
- * @event cell-focus
1107
- */
1108
1097
  };
@@ -42,25 +42,6 @@ import { StylingMixin } from './vaadin-grid-styling-mixin.js';
42
42
 
43
43
  /**
44
44
  * A mixin providing common grid functionality.
45
- *
46
- * @polymerMixin
47
- * @mixes A11yMixin
48
- * @mixes ActiveItemMixin
49
- * @mixes ArrayDataProviderMixin
50
- * @mixes ColumnResizingMixin
51
- * @mixes DataProviderMixin
52
- * @mixes DynamicColumnsMixin
53
- * @mixes FilterMixin
54
- * @mixes RowDetailsMixin
55
- * @mixes ScrollMixin
56
- * @mixes SelectionMixin
57
- * @mixes SortMixin
58
- * @mixes KeyboardNavigationMixin
59
- * @mixes ColumnReorderingMixin
60
- * @mixes EventContextMixin
61
- * @mixes StylingMixin
62
- * @mixes DragAndDropMixin
63
- * @mixes ResizeMixin
64
45
  */
65
46
  export const GridMixin = (superClass) =>
66
47
  class extends ColumnAutoWidthMixin(
@@ -417,7 +398,7 @@ export const GridMixin = (superClass) =>
417
398
  const slot = document.createElement('slot');
418
399
  slot.setAttribute('name', slotName);
419
400
 
420
- if (column && column._focusButtonMode) {
401
+ if (column?._focusButtonMode) {
421
402
  const div = document.createElement('div');
422
403
  div.setAttribute('role', 'button');
423
404
  div.setAttribute('tabindex', '-1');
@@ -536,6 +517,7 @@ export const GridMixin = (superClass) =>
536
517
  contentsFragment.appendChild(detailsCell._content);
537
518
  }
538
519
  this._configureDetailsCell(detailsCell);
520
+ detailsCell.__parentRow = row;
539
521
  row.appendChild(detailsCell);
540
522
  // Cache the details cell reference
541
523
  row.__detailsCell = detailsCell;
@@ -870,7 +852,7 @@ export const GridMixin = (superClass) =>
870
852
  _showTooltip(event) {
871
853
  // Check if there is a slotted vaadin-tooltip element.
872
854
  const tooltip = this._tooltipController.node;
873
- if (tooltip && tooltip.isConnected) {
855
+ if (tooltip?.isConnected) {
874
856
  const target = event.target;
875
857
 
876
858
  if (!this.__isCellFullyVisible(target)) {
@@ -881,7 +863,7 @@ export const GridMixin = (superClass) =>
881
863
  this._tooltipController.setContext(this.getEventContext(event));
882
864
 
883
865
  // Trigger opening using the corresponding delay.
884
- tooltip._stateController.open({
866
+ this._tooltipController.open({
885
867
  focus: event.type === 'focusin',
886
868
  hover: event.type === 'mouseenter',
887
869
  });
@@ -917,10 +899,7 @@ export const GridMixin = (superClass) =>
917
899
 
918
900
  /** @protected */
919
901
  _hideTooltip(immediate) {
920
- const tooltip = this._tooltipController && this._tooltipController.node;
921
- if (tooltip) {
922
- tooltip._stateController.close(immediate);
923
- }
902
+ this._tooltipController.close(immediate);
924
903
  }
925
904
 
926
905
  /**
@@ -6,8 +6,6 @@
6
6
 
7
7
  /**
8
8
  * A mixin to observe size changes of the grid and its main parts.
9
- *
10
- * @polymerMixin
11
9
  */
12
10
  export const ResizeMixin = (superClass) =>
13
11
  class extends superClass {
@@ -3,11 +3,8 @@
3
3
  * Copyright (c) 2016 - 2026 Vaadin Ltd.
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
- import { iterateChildren, updatePart } from './vaadin-grid-helpers.js';
6
+ import { updatePart } from './vaadin-grid-helpers.js';
7
7
 
8
- /**
9
- * @polymerMixin
10
- */
11
8
  export const RowDetailsMixin = (superClass) =>
12
9
  class RowDetailsMixin extends superClass {
13
10
  static get properties() {
@@ -50,6 +47,15 @@ export const RowDetailsMixin = (superClass) =>
50
47
  _detailsCells: {
51
48
  type: Array,
52
49
  },
50
+
51
+ /**
52
+ * Set of opened details item ids
53
+ * @private
54
+ */
55
+ __detailsOpenedKeys: {
56
+ type: Object,
57
+ computed: '__computeDetailsOpenedKeys(itemIdPath, detailsOpenedItems)',
58
+ },
53
59
  };
54
60
  }
55
61
 
@@ -79,10 +85,15 @@ export const RowDetailsMixin = (superClass) =>
79
85
 
80
86
  if (this._columnTree) {
81
87
  // Only update the rows if the column tree has already been initialized
82
- iterateChildren(this.$.items, (row) => {
88
+ this._getRenderedRows().forEach((row) => {
83
89
  if (!row.querySelector('[part~=details-cell]')) {
84
90
  this.__initRow(row, this._columnTree[this._columnTree.length - 1]);
85
91
  this.__updateRow(row);
92
+ return;
93
+ }
94
+
95
+ if (row.hasAttribute('details-opened')) {
96
+ this.__updateRow(row);
86
97
  }
87
98
  });
88
99
  }
@@ -90,15 +101,8 @@ export const RowDetailsMixin = (superClass) =>
90
101
 
91
102
  /** @private */
92
103
  _detailsOpenedItemsChanged(_detailsOpenedItems, rowDetailsRenderer) {
93
- iterateChildren(this.$.items, (row) => {
94
- // Re-renders the row to possibly close the previously opened details.
95
- if (row.hasAttribute('details-opened')) {
96
- this.__updateRow(row);
97
- return;
98
- }
99
-
100
- // Re-renders the row to open the details when a row details renderer is provided.
101
- if (rowDetailsRenderer && this._isDetailsOpened(row._item)) {
104
+ this._getRenderedRows().forEach((row) => {
105
+ if (row.hasAttribute('details-opened') !== !!(rowDetailsRenderer && this._isDetailsOpened(row._item))) {
102
106
  this.__updateRow(row);
103
107
  }
104
108
  });
@@ -165,7 +169,7 @@ export const RowDetailsMixin = (superClass) =>
165
169
 
166
170
  /** @protected */
167
171
  _updateDetailsCellHeights() {
168
- iterateChildren(this.$.items, (row) => {
172
+ this._getRenderedRows().forEach((row) => {
169
173
  this._updateDetailsCellHeight(row);
170
174
  });
171
175
  }
@@ -176,7 +180,17 @@ export const RowDetailsMixin = (superClass) =>
176
180
  * @protected
177
181
  */
178
182
  _isDetailsOpened(item) {
179
- return this.detailsOpenedItems && this._getItemIndexInArray(item, this.detailsOpenedItems) !== -1;
183
+ return this.__detailsOpenedKeys && this.__detailsOpenedKeys.has(this.getItemId(item));
184
+ }
185
+
186
+ /** @private */
187
+ __computeDetailsOpenedKeys(_itemIdPath, detailsOpenedItems) {
188
+ const items = detailsOpenedItems || [];
189
+ const keys = new Set();
190
+ items.forEach((item) => {
191
+ keys.add(this.getItemId(item));
192
+ });
193
+ return keys;
180
194
  }
181
195
 
182
196
  /**
@@ -13,9 +13,6 @@ const timeouts = {
13
13
  UPDATE_CONTENT_VISIBILITY: 100,
14
14
  };
15
15
 
16
- /**
17
- * @polymerMixin
18
- */
19
16
  export const ScrollMixin = (superClass) =>
20
17
  class ScrollMixin extends superClass {
21
18
  static get properties() {
@@ -15,8 +15,6 @@ import { addListener, setTouchAction } from '@vaadin/component-base/src/gestures
15
15
  * Web component-specific selection state updates must be implemented in the
16
16
  * `<vaadin-grid-selection-column>` itself, by overriding the protected methods
17
17
  * provided by this mixin.
18
- *
19
- * @polymerMixin
20
18
  */
21
19
  export const GridSelectionColumnBaseMixin = (superClass) =>
22
20
  class GridSelectionColumnBaseMixin extends superClass {
@@ -5,10 +5,6 @@
5
5
  */
6
6
  import { GridSelectionColumnBaseMixin } from './vaadin-grid-selection-column-base-mixin.js';
7
7
 
8
- /**
9
- * @polymerMixin
10
- * @mixes GridSelectionColumnBaseMixin
11
- */
12
8
  export const GridSelectionColumnMixin = (superClass) =>
13
9
  class extends GridSelectionColumnBaseMixin(superClass) {
14
10
  static get properties() {
@@ -37,7 +37,9 @@ export * from './vaadin-grid-selection-column-mixin.js';
37
37
  *
38
38
  * @fires {CustomEvent} select-all-changed - Fired when the `selectAll` property changes.
39
39
  */
40
- declare class GridSelectionColumn<TItem = GridDefaultItem> extends HTMLElement {}
40
+ declare class GridSelectionColumn<TItem = GridDefaultItem> extends HTMLElement {
41
+ hidden: boolean;
42
+ }
41
43
 
42
44
  interface GridSelectionColumn<TItem = GridDefaultItem>
43
45
  extends GridSelectionColumnMixinClass<TItem>, GridColumnMixin<TItem, GridColumn<TItem>>, GridColumn<TItem> {
@@ -34,7 +34,6 @@ import { GridSelectionColumnMixin } from './vaadin-grid-selection-column-mixin.j
34
34
  *
35
35
  * @customElement vaadin-grid-selection-column
36
36
  * @extends GridColumn
37
- * @mixes GridSelectionColumnMixin
38
37
  */
39
38
  class GridSelectionColumn extends GridSelectionColumnMixin(GridColumn) {
40
39
  static get is() {
@@ -4,9 +4,6 @@
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
6
 
7
- /**
8
- * @polymerMixin
9
- */
10
7
  export const SelectionMixin = (superClass) =>
11
8
  class SelectionMixin extends superClass {
12
9
  static get properties() {
@@ -42,7 +39,6 @@ export const SelectionMixin = (superClass) =>
42
39
  */
43
40
  isItemSelectable: {
44
41
  type: Function,
45
- notify: (() => true)(), // prevent Polymer analyzer from documenting a changed event
46
42
  },
47
43
 
48
44
  /**
@@ -109,9 +105,26 @@ export const SelectionMixin = (superClass) =>
109
105
  }
110
106
  }
111
107
 
108
+ /** @protected */
109
+ updated(props) {
110
+ super.updated(props);
111
+
112
+ if (props.has('isItemSelectable')) {
113
+ /** @internal to not document it in CEM */
114
+ this.dispatchEvent(new CustomEvent('is-item-selectable-changed'));
115
+ }
116
+ }
117
+
112
118
  /** @private */
113
119
  __selectedItemsChanged() {
114
- this.requestContentUpdate();
120
+ this._getRenderedRows().forEach((row) => {
121
+ if (
122
+ row.hasAttribute('selected') !== this._isSelected(row._item) ||
123
+ row.hasAttribute('nonselectable') !== !this.__isItemSelectable(row._item)
124
+ ) {
125
+ this.__updateRow(row);
126
+ }
127
+ });
115
128
  }
116
129
 
117
130
  /** @private */
@@ -124,20 +137,4 @@ export const SelectionMixin = (superClass) =>
124
137
 
125
138
  return selectedKeys;
126
139
  }
127
-
128
- /**
129
- * Fired when the `selectedItems` property changes.
130
- *
131
- * @event selected-items-changed
132
- */
133
-
134
- /**
135
- * Fired when the user selects or deselects an item through the selection column.
136
- *
137
- * @event item-toggle
138
- * @param {Object} detail
139
- * @param {GridItem} detail.item the item that was selected or deselected
140
- * @param {boolean} detail.selected true if the item was selected
141
- * @param {boolean} detail.shiftKey true if the shift key was pressed
142
- */
143
140
  };
@@ -4,9 +4,6 @@
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
6
 
7
- /**
8
- * @polymerMixin
9
- */
10
7
  export const GridSortColumnMixin = (superClass) =>
11
8
  class extends superClass {
12
9
  static get properties() {
@@ -24,7 +24,9 @@ export * from './vaadin-grid-sort-column-mixin.js';
24
24
  *
25
25
  * @fires {CustomEvent} direction-changed - Fired when the `direction` property changes.
26
26
  */
27
- declare class GridSortColumn<TItem = GridDefaultItem> extends HTMLElement {}
27
+ declare class GridSortColumn<TItem = GridDefaultItem> extends HTMLElement {
28
+ hidden: boolean;
29
+ }
28
30
 
29
31
  interface GridSortColumn<TItem = GridDefaultItem>
30
32
  extends GridSortColumnMixinClass, GridColumnMixin<TItem, GridColumn<TItem>>, GridColumn<TItem> {
@@ -25,7 +25,6 @@ import { GridSortColumnMixin } from './vaadin-grid-sort-column-mixin.js';
25
25
  *
26
26
  * @customElement vaadin-grid-sort-column
27
27
  * @extends GridColumn
28
- * @mixes GridSortColumnMixin
29
28
  */
30
29
  class GridSortColumn extends GridSortColumnMixin(GridColumn) {
31
30
  static get is() {
@@ -6,9 +6,6 @@
6
6
 
7
7
  let defaultMultiSortPriority = 'prepend';
8
8
 
9
- /**
10
- * @polymerMixin
11
- */
12
9
  export const SortMixin = (superClass) =>
13
10
  class SortMixin extends superClass {
14
11
  static get properties() {
@@ -6,8 +6,6 @@
6
6
 
7
7
  /**
8
8
  * A mixin providing common sorter functionality.
9
- *
10
- * @polymerMixin
11
9
  */
12
10
  export const GridSorterMixin = (superClass) =>
13
11
  class GridSorterMixinClass extends superClass {
@@ -53,9 +53,6 @@ import { GridSorterMixin } from './vaadin-grid-sorter-mixin.js';
53
53
  *
54
54
  * @customElement vaadin-grid-sorter
55
55
  * @extends HTMLElement
56
- * @mixes GridSorterMixin
57
- * @mixes ThemableMixin
58
- * @mixes DirMixin
59
56
  */
60
57
  class GridSorter extends GridSorterMixin(ThemableMixin(DirMixin(PolylitMixin(LumoInjectionMixin(LitElement))))) {
61
58
  static get is() {
@@ -34,7 +34,7 @@ export declare class StylingMixinClass<TItem> {
34
34
  cellPartNameGenerator: GridCellPartNameGenerator<TItem> | null | undefined;
35
35
 
36
36
  /**
37
- * Runs the `cellPastNameGenerator` for the visible cells.
37
+ * Runs the `cellPartNameGenerator` for the visible cells.
38
38
  * If the generator depends on varying conditions, you need to
39
39
  * call this function manually in order to update the styles when
40
40
  * the conditions change.
@@ -5,9 +5,6 @@
5
5
  */
6
6
  import { iterateChildren, iterateRowCells, updatePart } from './vaadin-grid-helpers.js';
7
7
 
8
- /**
9
- * @polymerMixin
10
- */
11
8
  export const StylingMixin = (superClass) =>
12
9
  class StylingMixin extends superClass {
13
10
  static get properties() {
@@ -5,9 +5,6 @@
5
5
  */
6
6
  import { get } from '@vaadin/component-base/src/path-utils.js';
7
7
 
8
- /**
9
- * @polymerMixin
10
- */
11
8
  export const GridTreeColumnMixin = (superClass) =>
12
9
  class extends superClass {
13
10
  static get properties() {
@@ -20,7 +20,9 @@ import type { GridTreeColumnMixinClass } from './vaadin-grid-tree-column-mixin.j
20
20
  * ...
21
21
  * ```
22
22
  */
23
- declare class GridTreeColumn<TItem = GridDefaultItem> extends HTMLElement {}
23
+ declare class GridTreeColumn<TItem = GridDefaultItem> extends HTMLElement {
24
+ hidden: boolean;
25
+ }
24
26
 
25
27
  interface GridTreeColumn<TItem = GridDefaultItem>
26
28
  extends GridTreeColumnMixinClass<TItem>, GridColumnMixin<TItem, GridColumn<TItem>>, GridColumn<TItem> {}
@@ -22,7 +22,6 @@ import { GridTreeColumnMixin } from './vaadin-grid-tree-column-mixin.js';
22
22
  * ```
23
23
  * @customElement vaadin-grid-tree-column
24
24
  * @extends GridColumn
25
- * @mixes GridTreeColumnMixin
26
25
  */
27
26
  class GridTreeColumn extends GridTreeColumnMixin(GridColumn) {
28
27
  static get is() {
@@ -5,9 +5,6 @@
5
5
  */
6
6
  import { isFocusable } from './vaadin-grid-active-item-mixin.js';
7
7
 
8
- /**
9
- * @polymerMixin
10
- */
11
8
  export const GridTreeToggleMixin = (superClass) =>
12
9
  class extends superClass {
13
10
  static get properties() {
@@ -61,9 +61,6 @@ import { GridTreeToggleMixin } from './vaadin-grid-tree-toggle-mixin.js';
61
61
  *
62
62
  * @customElement vaadin-grid-tree-toggle
63
63
  * @extends HTMLElement
64
- * @mixes ThemableMixin
65
- * @mixes DirMixin
66
- * @mixes GridTreeToggleMixin
67
64
  */
68
65
  class GridTreeToggle extends GridTreeToggleMixin(
69
66
  ThemableMixin(DirMixin(PolylitMixin(LumoInjectionMixin(LitElement)))),
@@ -251,7 +251,7 @@ export type GridDefaultItem = any;
251
251
  *
252
252
  * @fires {CustomEvent} active-item-changed - Fired when the `activeItem` property changes.
253
253
  * @fires {CustomEvent} cell-activate - Fired when the cell is activated with click or keyboard.
254
- * @fires {CustomEvent} cell-focus - Fired when a cell is focused with click or keyboard navigation.
254
+ * @fires {CustomEvent} cell-focus - Fired when a cell is focused with click or keyboard navigation. Use the `context` property to read event details.
255
255
  * @fires {CustomEvent} column-reorder - Fired when the columns in the grid are reordered.
256
256
  * @fires {CustomEvent} column-resize - Fired when the grid column resize is finished.
257
257
  * @fires {CustomEvent} data-provider-changed - Fired when the `dataProvider` property changes.
@@ -252,7 +252,7 @@ import { GridMixin } from './vaadin-grid-mixin.js';
252
252
  *
253
253
  * @fires {CustomEvent} active-item-changed - Fired when the `activeItem` property changes.
254
254
  * @fires {CustomEvent} cell-activate - Fired when the cell is activated with click or keyboard.
255
- * @fires {CustomEvent} cell-focus - Fired when a cell is focused with click or keyboard navigation.
255
+ * @fires {CustomEvent} cell-focus - Fired when a cell is focused with click or keyboard navigation. Use the `context` property to read event details.
256
256
  * @fires {CustomEvent} column-reorder - Fired when the columns in the grid are reordered.
257
257
  * @fires {CustomEvent} column-resize - Fired when the grid column resize is finished.
258
258
  * @fires {CustomEvent} data-provider-changed - Fired when the `dataProvider` property changes.
@@ -267,8 +267,6 @@ import { GridMixin } from './vaadin-grid-mixin.js';
267
267
  *
268
268
  * @customElement vaadin-grid
269
269
  * @extends HTMLElement
270
- * @mixes GridMixin
271
- * @mixes ThemableMixin
272
270
  */
273
271
  class Grid extends GridMixin(ElementMixin(ThemableMixin(PolylitMixin(LumoInjectionMixin(LitElement))))) {
274
272
  static get is() {