@vaadin/grid 25.2.0-alpha8 → 25.2.0-beta1

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 -15
  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 +0 -3
  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 +4 -26
  31. package/src/vaadin-grid-resize-mixin.js +0 -2
  32. package/src/vaadin-grid-row-details-mixin.js +0 -3
  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 +10 -20
  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
@@ -3231,14 +3231,6 @@
3231
3231
  "attribute": "value"
3232
3232
  }
3233
3233
  ],
3234
- "events": [
3235
- {
3236
- "name": "filter-changed",
3237
- "type": {
3238
- "text": "CustomEvent"
3239
- }
3240
- }
3241
- ],
3242
3234
  "attributes": [
3243
3235
  {
3244
3236
  "name": "path",
@@ -3350,16 +3342,6 @@
3350
3342
  }
3351
3343
  ],
3352
3344
  "events": [
3353
- {
3354
- "name": "filter-changed",
3355
- "type": {
3356
- "text": "CustomEvent"
3357
- },
3358
- "inheritedFrom": {
3359
- "name": "GridFilterElementMixin",
3360
- "module": "src/vaadin-grid-filter-element-mixin.js"
3361
- }
3362
- },
3363
3345
  {
3364
3346
  "type": {
3365
3347
  "text": "CustomEvent"
@@ -4016,6 +3998,20 @@
4016
3998
  "module": "src/vaadin-grid-row-details-mixin.js"
4017
3999
  }
4018
4000
  },
4001
+ {
4002
+ "kind": "field",
4003
+ "name": "disabled",
4004
+ "privacy": "public",
4005
+ "type": {
4006
+ "text": "boolean"
4007
+ },
4008
+ "description": "If true, the user cannot interact with this element.",
4009
+ "attribute": "disabled",
4010
+ "inheritedFrom": {
4011
+ "name": "DisabledMixin",
4012
+ "package": "@vaadin/a11y-base/src/disabled-mixin.js"
4013
+ }
4014
+ },
4019
4015
  {
4020
4016
  "kind": "field",
4021
4017
  "name": "dragFilter",
@@ -4519,6 +4515,18 @@
4519
4515
  "module": "src/vaadin-grid-data-provider-mixin.js"
4520
4516
  }
4521
4517
  },
4518
+ {
4519
+ "name": "disabled",
4520
+ "type": {
4521
+ "text": "boolean"
4522
+ },
4523
+ "description": "If true, the user cannot interact with this element.",
4524
+ "fieldName": "disabled",
4525
+ "inheritedFrom": {
4526
+ "name": "DisabledMixin",
4527
+ "package": "@vaadin/a11y-base/src/disabled-mixin.js"
4528
+ }
4529
+ },
4522
4530
  {
4523
4531
  "name": "drag-filter",
4524
4532
  "type": {
@@ -7764,6 +7772,20 @@
7764
7772
  "module": "src/vaadin-grid-row-details-mixin.js"
7765
7773
  }
7766
7774
  },
7775
+ {
7776
+ "kind": "field",
7777
+ "name": "disabled",
7778
+ "privacy": "public",
7779
+ "type": {
7780
+ "text": "boolean"
7781
+ },
7782
+ "description": "If true, the user cannot interact with this element.",
7783
+ "attribute": "disabled",
7784
+ "inheritedFrom": {
7785
+ "name": "DisabledMixin",
7786
+ "package": "@vaadin/a11y-base/src/disabled-mixin.js"
7787
+ }
7788
+ },
7767
7789
  {
7768
7790
  "kind": "field",
7769
7791
  "name": "dragFilter",
@@ -8213,7 +8235,7 @@
8213
8235
  "type": {
8214
8236
  "text": "CustomEvent"
8215
8237
  },
8216
- "description": "Fired when a cell is focused with click or keyboard navigation.",
8238
+ "description": "Fired when a cell is focused with click or keyboard navigation. Use the `context` property to read event details.",
8217
8239
  "name": "cell-focus"
8218
8240
  },
8219
8241
  {
@@ -8415,6 +8437,18 @@
8415
8437
  "module": "src/vaadin-grid-data-provider-mixin.js"
8416
8438
  }
8417
8439
  },
8440
+ {
8441
+ "name": "disabled",
8442
+ "type": {
8443
+ "text": "boolean"
8444
+ },
8445
+ "description": "If true, the user cannot interact with this element.",
8446
+ "fieldName": "disabled",
8447
+ "inheritedFrom": {
8448
+ "name": "DisabledMixin",
8449
+ "package": "@vaadin/a11y-base/src/disabled-mixin.js"
8450
+ }
8451
+ },
8418
8452
  {
8419
8453
  "name": "drag-filter",
8420
8454
  "type": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vaadin/grid",
3
- "version": "25.2.0-alpha8",
3
+ "version": "25.2.0-beta1",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -45,20 +45,20 @@
45
45
  ],
46
46
  "dependencies": {
47
47
  "@open-wc/dedupe-mixin": "^1.3.0",
48
- "@vaadin/a11y-base": "25.2.0-alpha8",
49
- "@vaadin/checkbox": "25.2.0-alpha8",
50
- "@vaadin/component-base": "25.2.0-alpha8",
51
- "@vaadin/lit-renderer": "25.2.0-alpha8",
52
- "@vaadin/text-field": "25.2.0-alpha8",
53
- "@vaadin/vaadin-themable-mixin": "25.2.0-alpha8",
48
+ "@vaadin/a11y-base": "25.2.0-beta1",
49
+ "@vaadin/checkbox": "25.2.0-beta1",
50
+ "@vaadin/component-base": "25.2.0-beta1",
51
+ "@vaadin/lit-renderer": "25.2.0-beta1",
52
+ "@vaadin/text-field": "25.2.0-beta1",
53
+ "@vaadin/vaadin-themable-mixin": "25.2.0-beta1",
54
54
  "lit": "^3.0.0"
55
55
  },
56
56
  "devDependencies": {
57
- "@vaadin/aura": "25.2.0-alpha8",
58
- "@vaadin/chai-plugins": "25.2.0-alpha8",
59
- "@vaadin/test-runner-commands": "25.2.0-alpha8",
57
+ "@vaadin/aura": "25.2.0-beta1",
58
+ "@vaadin/chai-plugins": "25.2.0-beta1",
59
+ "@vaadin/test-runner-commands": "25.2.0-beta1",
60
60
  "@vaadin/testing-helpers": "^2.0.0",
61
- "@vaadin/vaadin-lumo-styles": "25.2.0-alpha8",
61
+ "@vaadin/vaadin-lumo-styles": "25.2.0-beta1",
62
62
  "sinon": "^21.0.2"
63
63
  },
64
64
  "customElements": "custom-elements.json",
@@ -66,5 +66,5 @@
66
66
  "web-types.json",
67
67
  "web-types.lit.json"
68
68
  ],
69
- "gitHead": "2b82e20cdfc605b1187e9a24ae42869e1500ab68"
69
+ "gitHead": "471a23f60d1eb725f98a33f62cb9664d9c0a4163"
70
70
  }
@@ -11,6 +11,10 @@ export const gridFilterStyles = css`
11
11
  max-width: 100%;
12
12
  }
13
13
 
14
+ :host([hidden]) {
15
+ display: none !important;
16
+ }
17
+
14
18
  ::slotted(*) {
15
19
  width: 100%;
16
20
  box-sizing: border-box;
@@ -18,6 +18,10 @@ export const gridSorterStyles = css`
18
18
  -webkit-tap-highlight-color: transparent;
19
19
  }
20
20
 
21
+ :host([hidden]) {
22
+ display: none !important;
23
+ }
24
+
21
25
  [part='content'] {
22
26
  flex: 1 1 auto;
23
27
  overflow: hidden;
@@ -60,6 +60,10 @@ export const gridTreeToggleStyles = css`
60
60
  rotate: -90deg;
61
61
  }
62
62
 
63
+ :host(:not([expanded]):dir(rtl)) [part='toggle']::before {
64
+ rotate: 90deg;
65
+ }
66
+
63
67
  @media (prefers-reduced-motion: no-preference) {
64
68
  [part='toggle']::before {
65
69
  transition: var(--_non-focused-row-none, rotate 120ms);
@@ -5,9 +5,6 @@
5
5
  */
6
6
  import { findTreeToggleCell, iterateChildren, iterateRowCells } from './vaadin-grid-helpers.js';
7
7
 
8
- /**
9
- * @polymerMixin
10
- */
11
8
  export const A11yMixin = (superClass) =>
12
9
  class A11yMixin extends superClass {
13
10
  static get properties() {
@@ -54,7 +51,7 @@ export const A11yMixin = (superClass) =>
54
51
 
55
52
  // If no header and footer rows while the empty state is active, count as one column
56
53
  // Otherwise, use the number of body columns, if present
57
- const columnsCount = emptyState ? 1 : (rowsCount && bodyColumns && bodyColumns.length) || 0;
54
+ const columnsCount = emptyState ? 1 : (rowsCount && bodyColumns?.length) || 0;
58
55
  this.$.table.setAttribute('aria-colcount', columnsCount);
59
56
 
60
57
  this.__a11yUpdateHeaderRows();
@@ -164,7 +161,7 @@ export const A11yMixin = (superClass) =>
164
161
  while (cellContent && cellContent.localName !== 'vaadin-grid-cell-content') {
165
162
  cellContent = cellContent.parentNode;
166
163
  }
167
- if (cellContent && cellContent.assignedSlot) {
164
+ if (cellContent?.assignedSlot) {
168
165
  const cell = cellContent.assignedSlot.parentNode;
169
166
  cell.setAttribute(
170
167
  'aria-sort',
@@ -20,9 +20,6 @@ export const isFocusable = (target) => {
20
20
  );
21
21
  };
22
22
 
23
- /**
24
- * @polymerMixin
25
- */
26
23
  export const ActiveItemMixin = (superClass) =>
27
24
  class ActiveItemMixin extends superClass {
28
25
  static get properties() {
@@ -116,16 +113,4 @@ export const ActiveItemMixin = (superClass) =>
116
113
  _isFocusable(target) {
117
114
  return isFocusable(target);
118
115
  }
119
-
120
- /**
121
- * Fired when the `activeItem` property changes.
122
- *
123
- * @event active-item-changed
124
- */
125
-
126
- /**
127
- * Fired when the cell is activated with click or keyboard.
128
- *
129
- * @event cell-activate
130
- */
131
116
  };
@@ -5,9 +5,6 @@
5
5
  */
6
6
  import { createArrayDataProvider } from './array-data-provider.js';
7
7
 
8
- /**
9
- * @polymerMixin
10
- */
11
8
  export const ArrayDataProviderMixin = (superClass) =>
12
9
  class ArrayDataProviderMixin extends superClass {
13
10
  static get properties() {
@@ -7,8 +7,6 @@ import { isElementHidden } from '@vaadin/a11y-base/src/focus-utils.js';
7
7
 
8
8
  /**
9
9
  * A mixin providing grid column auto-width functionality.
10
- *
11
- * @polymerMixin
12
10
  */
13
11
  export const ColumnAutoWidthMixin = (superClass) =>
14
12
  class extends superClass {
@@ -145,8 +143,7 @@ export const ColumnAutoWidthMixin = (superClass) =>
145
143
  }
146
144
  });
147
145
 
148
- this.__hasHadRenderedRowsForColumnWidthCalculation =
149
- this.__hasHadRenderedRowsForColumnWidthCalculation || this._getRenderedRows().length > 0;
146
+ this.__hasHadRenderedRowsForColumnWidthCalculation ||= this._getRenderedRows().length > 0;
150
147
 
151
148
  this.__intrinsicWidthCache = new Map();
152
149
  // Cache the viewport rows to avoid unnecessary reflows while measuring the column widths
@@ -10,9 +10,6 @@ import { ColumnObserver, updateColumnOrders } from './vaadin-grid-helpers.js';
10
10
 
11
11
  /**
12
12
  * A mixin providing common vaadin-grid-column-group functionality.
13
- *
14
- * @polymerMixin
15
- * @mixes ColumnBaseMixin
16
13
  */
17
14
  export const GridColumnGroupMixin = (superClass) =>
18
15
  class extends ColumnBaseMixin(superClass) {
@@ -36,7 +36,9 @@ export * from './vaadin-grid-column-group-mixin.js';
36
36
  * column2.renderer = (root, column, model) => { ... };
37
37
  * ```
38
38
  */
39
- declare class GridColumnGroup extends HTMLElement {}
39
+ declare class GridColumnGroup extends HTMLElement {
40
+ hidden: boolean;
41
+ }
40
42
 
41
43
  // eslint-disable-next-line @typescript-eslint/no-empty-object-type
42
44
  interface GridColumnGroup<TItem = GridDefaultItem> extends GridColumnGroupMixin<TItem, GridColumnGroup<TItem>> {}
@@ -40,7 +40,6 @@ export * from './vaadin-grid-column-group-mixin.js';
40
40
  *
41
41
  * @customElement vaadin-grid-column-group
42
42
  * @extends HTMLElement
43
- * @mixes GridColumnGroupMixin
44
43
  */
45
44
  class GridColumnGroup extends GridColumnGroupMixin(PolylitMixin(LitElement)) {
46
45
  static get is() {
@@ -9,9 +9,6 @@ import { DirMixin } from '@vaadin/component-base/src/dir-mixin.js';
9
9
  import { get } from '@vaadin/component-base/src/path-utils.js';
10
10
  import { updateCellState, updatePart } from './vaadin-grid-helpers.js';
11
11
 
12
- /**
13
- * @polymerMixin
14
- */
15
12
  export const ColumnBaseMixin = (superClass) =>
16
13
  class ColumnBaseMixin extends superClass {
17
14
  static get properties() {
@@ -29,7 +26,7 @@ export const ColumnBaseMixin = (superClass) =>
29
26
  }
30
27
 
31
28
  const parent = this.parentNode;
32
- if (parent && parent.localName === 'vaadin-grid-column-group') {
29
+ if (parent?.localName === 'vaadin-grid-column-group') {
33
30
  return parent.resizable || false;
34
31
  }
35
32
  return false;
@@ -563,7 +560,7 @@ export const ColumnBaseMixin = (superClass) =>
563
560
 
564
561
  /** @protected */
565
562
  _runRenderer(renderer, cell, model) {
566
- const isVisibleBodyCell = model && model.item && !cell.parentElement.hidden;
563
+ const isVisibleBodyCell = model?.item && !cell.parentElement.hidden;
567
564
  const shouldRender = isVisibleBodyCell || renderer === this._headerRenderer || renderer === this._footerRenderer;
568
565
  if (!shouldRender) {
569
566
  return;
@@ -806,11 +803,6 @@ export const ColumnBaseMixin = (superClass) =>
806
803
  }
807
804
  };
808
805
 
809
- /**
810
- * @polymerMixin
811
- * @mixes ColumnBaseMixin
812
- * @mixes DirMixin
813
- */
814
806
  export const GridColumnMixin = (superClass) =>
815
807
  class extends ColumnBaseMixin(DirMixin(superClass)) {
816
808
  static get properties() {
@@ -7,9 +7,6 @@ import { isTouch } from '@vaadin/component-base/src/browser-utils.js';
7
7
  import { addListener } from '@vaadin/component-base/src/gestures.js';
8
8
  import { getBodyRowCells, iterateChildren, updateColumnOrders } from './vaadin-grid-helpers.js';
9
9
 
10
- /**
11
- * @polymerMixin
12
- */
13
10
  export const ColumnReorderingMixin = (superClass) =>
14
11
  class ColumnReorderingMixin extends superClass {
15
12
  static get properties() {
@@ -147,8 +144,8 @@ export const ColumnReorderingMixin = (superClass) =>
147
144
  }
148
145
 
149
146
  // Cancel reordering if there are draggable nodes on the event path following this element
150
- const path = e.composedPath && e.composedPath();
151
- if (path && path.slice(0, Math.max(0, path.indexOf(this))).some((node) => node.draggable)) {
147
+ const path = e.composedPath?.();
148
+ if (path?.slice(0, Math.max(0, path.indexOf(this))).some((node) => node.draggable)) {
152
149
  return;
153
150
  }
154
151
 
@@ -271,7 +268,7 @@ export const ColumnReorderingMixin = (superClass) =>
271
268
  }
272
269
  // Check if element is the cell of a focus button mode column
273
270
  const { parentElement } = element;
274
- if (parentElement && parentElement._focusButton === element) {
271
+ if (parentElement?._focusButton === element) {
275
272
  return parentElement;
276
273
  }
277
274
  }
@@ -337,6 +334,36 @@ export const ColumnReorderingMixin = (superClass) =>
337
334
  updateColumnOrders(columnTree[0], this._orderBaseScope, 0);
338
335
  }
339
336
 
337
+ /**
338
+ * Resets the visual column order so that cells in every row reflect the
339
+ * current DOM order of `<vaadin-grid-column>` elements.
340
+ *
341
+ * Intended to be called by Vaadin Flow's `GridColumnOrderHelper` (via
342
+ * `executeJs`) to realign cell order with the column DOM order after an
343
+ * earlier drag reorder, even when the column DOM order itself has not
344
+ * changed (in which case the `_columnTree` observer does not fire and
345
+ * `_renderColumnTree` does not re-render the rows).
346
+ *
347
+ * @private
348
+ */
349
+ _resetColumnOrder() {
350
+ if (this._columnTree === undefined) {
351
+ return;
352
+ }
353
+
354
+ // Each `_columnTree[level]` array is already in DOM order. If every
355
+ // level's `_order` values are monotonically non-decreasing along that
356
+ // array, cells are already in sync with DOM order and no work is needed.
357
+ const alreadyInDomOrder = this._columnTree.every((level) =>
358
+ level.every((column, i) => i === 0 || column._order >= level[i - 1]._order),
359
+ );
360
+ if (alreadyInDomOrder) {
361
+ return;
362
+ }
363
+
364
+ this._columnTree = this._getColumnTree();
365
+ }
366
+
340
367
  /**
341
368
  * @param {!GridColumn} column
342
369
  * @param {string} status
@@ -451,12 +478,4 @@ export const ColumnReorderingMixin = (superClass) =>
451
478
  return targetCell._column;
452
479
  }
453
480
  }
454
-
455
- /**
456
- * Fired when the columns in the grid are reordered.
457
- *
458
- * @event column-reorder
459
- * @param {Object} detail
460
- * @param {Object} detail.columns the columns in the new order
461
- */
462
481
  };
@@ -5,9 +5,6 @@
5
5
  */
6
6
  import { addListener } from '@vaadin/component-base/src/gestures.js';
7
7
 
8
- /**
9
- * @polymerMixin
10
- */
11
8
  export const ColumnResizingMixin = (superClass) =>
12
9
  class ColumnResizingMixin extends superClass {
13
10
  /** @protected */
@@ -126,12 +123,4 @@ export const ColumnResizingMixin = (superClass) =>
126
123
  this._resizeHandler();
127
124
  }
128
125
  }
129
-
130
- /**
131
- * Fired when a column in the grid is resized by the user.
132
- *
133
- * @event column-resize
134
- * @param {Object} detail
135
- * @param {Object} detail.resizedColumn the column that was resized
136
- */
137
126
  };
@@ -22,9 +22,12 @@ export type GridHeaderFooterRenderer<TItem = GridDefaultItem> = GridMixinHeaderF
22
22
  * See [`<vaadin-grid>`](#/elements/vaadin-grid) documentation for instructions on how
23
23
  * to configure the `<vaadin-grid-column>`.
24
24
  */
25
- declare class GridColumn<TItem = GridDefaultItem> extends HTMLElement {}
25
+ declare class GridColumn<TItem = GridDefaultItem> extends HTMLElement {
26
+ hidden: boolean;
27
+ }
26
28
 
27
- interface GridColumn<TItem = GridDefaultItem> extends GridColumnMixin<TItem, GridColumn<TItem>>, HTMLElement {}
29
+ // eslint-disable-next-line @typescript-eslint/no-empty-object-type
30
+ interface GridColumn<TItem = GridDefaultItem> extends GridColumnMixin<TItem, GridColumn<TItem>> {}
28
31
 
29
32
  declare global {
30
33
  interface HTMLElementTagNameMap {
@@ -17,7 +17,6 @@ import { GridColumnMixin } from './vaadin-grid-column-mixin.js';
17
17
  *
18
18
  * @customElement vaadin-grid-column
19
19
  * @extends HTMLElement
20
- * @mixes GridColumnMixin
21
20
  */
22
21
  class GridColumn extends GridColumnMixin(PolylitMixin(LitElement)) {
23
22
  static get is() {
@@ -8,9 +8,6 @@ import { DataProviderController } from '@vaadin/component-base/src/data-provider
8
8
  import { Debouncer } from '@vaadin/component-base/src/debounce.js';
9
9
  import { get } from '@vaadin/component-base/src/path-utils.js';
10
10
 
11
- /**
12
- * @polymerMixin
13
- */
14
11
  export const DataProviderMixin = (superClass) =>
15
12
  class DataProviderMixin extends superClass {
16
13
  static get properties() {
@@ -438,16 +435,4 @@ export const DataProviderMixin = (superClass) =>
438
435
  this.scrollToIndex(...indexes);
439
436
  }
440
437
  }
441
-
442
- /**
443
- * Fired when the `expandedItems` property changes.
444
- *
445
- * @event expanded-items-changed
446
- */
447
-
448
- /**
449
- * Fired when the `loading` property changes.
450
- *
451
- * @event loading-changed
452
- */
453
438
  };
@@ -26,9 +26,6 @@ const DropLocation = {
26
26
  EMPTY: 'empty',
27
27
  };
28
28
 
29
- /**
30
- * @polymerMixin
31
- */
32
29
  export const DragAndDropMixin = (superClass) =>
33
30
  class DragAndDropMixin extends superClass {
34
31
  static get properties() {
@@ -286,7 +283,7 @@ export const DragAndDropMixin = (superClass) =>
286
283
  }
287
284
  }
288
285
 
289
- if (row && row.hasAttribute('drop-disabled')) {
286
+ if (row?.hasAttribute('drop-disabled')) {
290
287
  this._dropLocation = undefined;
291
288
  return;
292
289
  }
@@ -497,44 +494,4 @@ export const DragAndDropMixin = (superClass) =>
497
494
  'drop-disabled': !!dropDisabled,
498
495
  });
499
496
  }
500
-
501
- /**
502
- * Fired when starting to drag grid rows.
503
- *
504
- * @event grid-dragstart
505
- * @param {Object} originalEvent The native dragstart event
506
- * @param {Object} detail
507
- * @param {Object} detail.draggedItems the items in the visible viewport that are dragged
508
- * @param {Function} detail.setDraggedItemsCount Overrides the default number shown in the drag image on multi row drag.
509
- * Parameter is of type number.
510
- * @param {Function} detail.setDragData Sets dataTransfer data for the drag operation.
511
- * Note that "text" is the only data type supported by all the browsers the grid currently supports (including IE11).
512
- * The function takes two parameters:
513
- * - type:string The type of the data
514
- * - data:string The data
515
- */
516
-
517
- /**
518
- * Fired when the dragging of the rows ends.
519
- *
520
- * @event grid-dragend
521
- * @param {Object} originalEvent The native dragend event
522
- */
523
-
524
- /**
525
- * Fired when a drop occurs on top of the grid.
526
- *
527
- * @event grid-drop
528
- * @param {Object} originalEvent The native drop event
529
- * @param {Object} detail
530
- * @param {Object} detail.dropTargetItem The item of the grid row on which the drop occurred.
531
- * @param {string} detail.dropLocation The position at which the drop event took place relative to a row.
532
- * Depending on the dropMode value, the drop location can be one of the following
533
- * - `on-top`: when the drop occurred on top of the row
534
- * - `above`: when the drop occurred above the row
535
- * - `below`: when the drop occurred below the row
536
- * - `empty`: when the drop occurred over the grid, not relative to any specific row
537
- * @param {string} detail.dragData An array of items with the payload as a string representation as the
538
- * `data` property and the type of the data as `type` property.
539
- */
540
497
  };
@@ -26,9 +26,6 @@ function arrayEquals(arr1, arr2) {
26
26
  return true;
27
27
  }
28
28
 
29
- /**
30
- * @polymerMixin
31
- */
32
29
  export const DynamicColumnsMixin = (superClass) =>
33
30
  class DynamicColumnsMixin extends superClass {
34
31
  static get properties() {
@@ -112,7 +109,7 @@ export const DynamicColumnsMixin = (superClass) =>
112
109
  this._observer = new ColumnObserver(this, (_addedColumns, removedColumns) => {
113
110
  const allRemovedCells = removedColumns.flatMap((c) => c._allCells);
114
111
  const filterNotConnected = (element) =>
115
- allRemovedCells.filter((cell) => cell && cell._content.contains(element)).length;
112
+ allRemovedCells.filter((cell) => cell?._content.contains(element)).length;
116
113
 
117
114
  this.__removeSorters(this._sorters.filter(filterNotConnected));
118
115
  this.__removeFilters(this._filters.filter(filterNotConnected));
@@ -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 EventContextMixin = (superClass) =>
11
8
  class EventContextMixin extends superClass {
12
9
  /**
@@ -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 GridFilterColumnMixin = (superClass) =>
11
8
  class extends superClass {
12
9
  static get properties() {
@@ -22,7 +22,9 @@ export * from './vaadin-grid-filter-column-mixin.js';
22
22
  * ...
23
23
  * ```
24
24
  */
25
- declare class GridFilterColumn<TItem = GridDefaultItem> extends HTMLElement {}
25
+ declare class GridFilterColumn<TItem = GridDefaultItem> extends HTMLElement {
26
+ hidden: boolean;
27
+ }
26
28
 
27
29
  interface GridFilterColumn<TItem = GridDefaultItem>
28
30
  extends GridFilterColumnMixinClass, GridColumnMixin<TItem, GridColumn<TItem>>, GridColumn<TItem> {}
@@ -23,7 +23,6 @@ import { GridFilterColumnMixin } from './vaadin-grid-filter-column-mixin.js';
23
23
  *
24
24
  * @customElement vaadin-grid-filter-column
25
25
  * @extends GridColumn
26
- * @mixes GridFilterColumnMixin
27
26
  */
28
27
  class GridFilterColumn extends GridFilterColumnMixin(GridColumn) {
29
28
  static get is() {
@@ -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() {