@vaadin/grid-pro 24.4.9 → 24.4.10

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vaadin/grid-pro",
3
- "version": "24.4.9",
3
+ "version": "24.4.10",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -39,15 +39,15 @@
39
39
  "dependencies": {
40
40
  "@open-wc/dedupe-mixin": "^1.3.0",
41
41
  "@polymer/polymer": "^3.0.0",
42
- "@vaadin/checkbox": "~24.4.9",
43
- "@vaadin/component-base": "~24.4.9",
44
- "@vaadin/grid": "~24.4.9",
45
- "@vaadin/lit-renderer": "~24.4.9",
46
- "@vaadin/select": "~24.4.9",
47
- "@vaadin/text-field": "~24.4.9",
48
- "@vaadin/vaadin-lumo-styles": "~24.4.9",
49
- "@vaadin/vaadin-material-styles": "~24.4.9",
50
- "@vaadin/vaadin-themable-mixin": "~24.4.9",
42
+ "@vaadin/checkbox": "~24.4.10",
43
+ "@vaadin/component-base": "~24.4.10",
44
+ "@vaadin/grid": "~24.4.10",
45
+ "@vaadin/lit-renderer": "~24.4.10",
46
+ "@vaadin/select": "~24.4.10",
47
+ "@vaadin/text-field": "~24.4.10",
48
+ "@vaadin/vaadin-lumo-styles": "~24.4.10",
49
+ "@vaadin/vaadin-material-styles": "~24.4.10",
50
+ "@vaadin/vaadin-themable-mixin": "~24.4.10",
51
51
  "lit": "^3.0.0"
52
52
  },
53
53
  "devDependencies": {
@@ -60,5 +60,5 @@
60
60
  "web-types.json",
61
61
  "web-types.lit.json"
62
62
  ],
63
- "gitHead": "307487f7c2dc7356f5c505a6c2b831bb513c7c79"
63
+ "gitHead": "7958b9490f227e72c5457ed3e6c752c6ab2691a4"
64
64
  }
@@ -308,6 +308,10 @@ export const InlineEditingMixin = (superClass) =>
308
308
 
309
309
  /** @private */
310
310
  _onEditorFocusOut() {
311
+ // Ignore focusout from internal tab event
312
+ if (this.__cancelCellSwitch) {
313
+ return;
314
+ }
311
315
  // Schedule stop on editor component focusout
312
316
  this._debouncerStopEdit = Debouncer.debounce(this._debouncerStopEdit, animationFrame, this._stopEdit.bind(this));
313
317
  }
@@ -426,7 +430,7 @@ export const InlineEditingMixin = (superClass) =>
426
430
  * @param {!KeyboardEvent} e
427
431
  * @protected
428
432
  */
429
- _switchEditCell(e) {
433
+ async _switchEditCell(e) {
430
434
  if (this.__cancelCellSwitch || (e.defaultPrevented && e.keyCode === 9)) {
431
435
  return;
432
436
  }
@@ -436,11 +440,23 @@ export const InlineEditingMixin = (superClass) =>
436
440
  const editableColumns = this._getEditColumns();
437
441
  const { cell, column, model } = this.__edited;
438
442
 
439
- this._stopEdit();
440
- e.preventDefault();
441
443
  // Prevent vaadin-grid handler from being called
442
444
  e.stopImmediatePropagation();
443
445
 
446
+ const editor = column._getEditorComponent(cell);
447
+
448
+ // Do not prevent Tab to allow native input blur and wait for it,
449
+ // unless the keydown event is from the edit cell select overlay.
450
+ if (e.key === 'Tab' && editor && editor.contains(e.target)) {
451
+ await new Promise((resolve) => {
452
+ editor.addEventListener('focusout', () => resolve(), { once: true });
453
+ });
454
+ } else {
455
+ e.preventDefault();
456
+ }
457
+
458
+ this._stopEdit();
459
+
444
460
  // Try to find the next editable cell
445
461
  let nextIndex = model.index;
446
462
  let nextColumn = column;
package/web-types.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/web-types",
3
3
  "name": "@vaadin/grid-pro",
4
- "version": "24.4.9",
4
+ "version": "24.4.10",
5
5
  "description-markup": "markdown",
6
6
  "contributions": {
7
7
  "html": {
@@ -401,7 +401,7 @@
401
401
  },
402
402
  {
403
403
  "name": "vaadin-grid-pro",
404
- "description": "`<vaadin-grid-pro>` is a high quality data grid / data table Web Component with extended functionality.\nIt extends `<vaadin-grid>` and adds extra features on top of the basic ones.\n\nSee [`<vaadin-grid>`](https://cdn.vaadin.com/vaadin-web-components/24.4.9/#/elements/vaadin-grid) documentation for details.\n\n```\n<vaadin-grid-pro></vaadin-grid-pro>\n```\n\n### Internal components\n\nIn addition to `<vaadin-grid-pro>` itself, the following internal\ncomponents are themable:\n\n- `<vaadin-grid-pro-edit-checkbox>` - has the same API as [`<vaadin-checkbox>`](https://cdn.vaadin.com/vaadin-web-components/24.4.9/#/elements/vaadin-checkbox).\n- `<vaadin-grid-pro-edit-text-field>` - has the same API as [`<vaadin-text-field>`](https://cdn.vaadin.com/vaadin-web-components/24.4.9/#/elements/vaadin-text-field).\n- `<vaadin-grid-pro-edit-select>` - has the same API as [`<vaadin-select>`](https://cdn.vaadin.com/vaadin-web-components/24.4.9/#/elements/vaadin-select).",
404
+ "description": "`<vaadin-grid-pro>` is a high quality data grid / data table Web Component with extended functionality.\nIt extends `<vaadin-grid>` and adds extra features on top of the basic ones.\n\nSee [`<vaadin-grid>`](https://cdn.vaadin.com/vaadin-web-components/24.4.10/#/elements/vaadin-grid) documentation for details.\n\n```\n<vaadin-grid-pro></vaadin-grid-pro>\n```\n\n### Internal components\n\nIn addition to `<vaadin-grid-pro>` itself, the following internal\ncomponents are themable:\n\n- `<vaadin-grid-pro-edit-checkbox>` - has the same API as [`<vaadin-checkbox>`](https://cdn.vaadin.com/vaadin-web-components/24.4.10/#/elements/vaadin-checkbox).\n- `<vaadin-grid-pro-edit-text-field>` - has the same API as [`<vaadin-text-field>`](https://cdn.vaadin.com/vaadin-web-components/24.4.10/#/elements/vaadin-text-field).\n- `<vaadin-grid-pro-edit-select>` - has the same API as [`<vaadin-select>`](https://cdn.vaadin.com/vaadin-web-components/24.4.10/#/elements/vaadin-select).",
405
405
  "attributes": [
406
406
  {
407
407
  "name": "size",
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/web-types",
3
3
  "name": "@vaadin/grid-pro",
4
- "version": "24.4.9",
4
+ "version": "24.4.10",
5
5
  "description-markup": "markdown",
6
6
  "framework": "lit",
7
7
  "framework-config": {
@@ -177,7 +177,7 @@
177
177
  },
178
178
  {
179
179
  "name": "vaadin-grid-pro",
180
- "description": "`<vaadin-grid-pro>` is a high quality data grid / data table Web Component with extended functionality.\nIt extends `<vaadin-grid>` and adds extra features on top of the basic ones.\n\nSee [`<vaadin-grid>`](https://cdn.vaadin.com/vaadin-web-components/24.4.9/#/elements/vaadin-grid) documentation for details.\n\n```\n<vaadin-grid-pro></vaadin-grid-pro>\n```\n\n### Internal components\n\nIn addition to `<vaadin-grid-pro>` itself, the following internal\ncomponents are themable:\n\n- `<vaadin-grid-pro-edit-checkbox>` - has the same API as [`<vaadin-checkbox>`](https://cdn.vaadin.com/vaadin-web-components/24.4.9/#/elements/vaadin-checkbox).\n- `<vaadin-grid-pro-edit-text-field>` - has the same API as [`<vaadin-text-field>`](https://cdn.vaadin.com/vaadin-web-components/24.4.9/#/elements/vaadin-text-field).\n- `<vaadin-grid-pro-edit-select>` - has the same API as [`<vaadin-select>`](https://cdn.vaadin.com/vaadin-web-components/24.4.9/#/elements/vaadin-select).",
180
+ "description": "`<vaadin-grid-pro>` is a high quality data grid / data table Web Component with extended functionality.\nIt extends `<vaadin-grid>` and adds extra features on top of the basic ones.\n\nSee [`<vaadin-grid>`](https://cdn.vaadin.com/vaadin-web-components/24.4.10/#/elements/vaadin-grid) documentation for details.\n\n```\n<vaadin-grid-pro></vaadin-grid-pro>\n```\n\n### Internal components\n\nIn addition to `<vaadin-grid-pro>` itself, the following internal\ncomponents are themable:\n\n- `<vaadin-grid-pro-edit-checkbox>` - has the same API as [`<vaadin-checkbox>`](https://cdn.vaadin.com/vaadin-web-components/24.4.10/#/elements/vaadin-checkbox).\n- `<vaadin-grid-pro-edit-text-field>` - has the same API as [`<vaadin-text-field>`](https://cdn.vaadin.com/vaadin-web-components/24.4.10/#/elements/vaadin-text-field).\n- `<vaadin-grid-pro-edit-select>` - has the same API as [`<vaadin-select>`](https://cdn.vaadin.com/vaadin-web-components/24.4.10/#/elements/vaadin-select).",
181
181
  "extension": true,
182
182
  "attributes": [
183
183
  {