@vaadin/grid-pro 24.6.0-alpha7 → 24.6.0-alpha9

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.6.0-alpha7",
3
+ "version": "24.6.0-alpha9",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -39,19 +39,19 @@
39
39
  "dependencies": {
40
40
  "@open-wc/dedupe-mixin": "^1.3.0",
41
41
  "@polymer/polymer": "^3.0.0",
42
- "@vaadin/checkbox": "24.6.0-alpha7",
43
- "@vaadin/component-base": "24.6.0-alpha7",
44
- "@vaadin/grid": "24.6.0-alpha7",
45
- "@vaadin/lit-renderer": "24.6.0-alpha7",
46
- "@vaadin/select": "24.6.0-alpha7",
47
- "@vaadin/text-field": "24.6.0-alpha7",
48
- "@vaadin/vaadin-lumo-styles": "24.6.0-alpha7",
49
- "@vaadin/vaadin-material-styles": "24.6.0-alpha7",
50
- "@vaadin/vaadin-themable-mixin": "24.6.0-alpha7",
42
+ "@vaadin/checkbox": "24.6.0-alpha9",
43
+ "@vaadin/component-base": "24.6.0-alpha9",
44
+ "@vaadin/grid": "24.6.0-alpha9",
45
+ "@vaadin/lit-renderer": "24.6.0-alpha9",
46
+ "@vaadin/select": "24.6.0-alpha9",
47
+ "@vaadin/text-field": "24.6.0-alpha9",
48
+ "@vaadin/vaadin-lumo-styles": "24.6.0-alpha9",
49
+ "@vaadin/vaadin-material-styles": "24.6.0-alpha9",
50
+ "@vaadin/vaadin-themable-mixin": "24.6.0-alpha9",
51
51
  "lit": "^3.0.0"
52
52
  },
53
53
  "devDependencies": {
54
- "@vaadin/chai-plugins": "24.6.0-alpha7",
54
+ "@vaadin/chai-plugins": "24.6.0-alpha9",
55
55
  "@vaadin/testing-helpers": "^1.0.0",
56
56
  "sinon": "^18.0.0"
57
57
  },
@@ -60,5 +60,5 @@
60
60
  "web-types.json",
61
61
  "web-types.lit.json"
62
62
  ],
63
- "gitHead": "675d6fe0a08b8cc63ac00140c63f28fc3f52e4ea"
63
+ "gitHead": "e303d77ba20c3089c9998be9a318733d9ec5b53c"
64
64
  }
@@ -12,6 +12,20 @@ import { animationFrame } from '@vaadin/component-base/src/async.js';
12
12
  import { Debouncer } from '@vaadin/component-base/src/debounce.js';
13
13
  import { get, set } from '@vaadin/component-base/src/path-utils.js';
14
14
  import { iterateRowCells, updatePart } from '@vaadin/grid/src/vaadin-grid-helpers.js';
15
+ import { css, registerStyles } from '@vaadin/vaadin-themable-mixin/vaadin-themable-mixin.js';
16
+
17
+ registerStyles(
18
+ 'vaadin-grid-pro',
19
+ css`
20
+ :host([loading-editor]) [part~='focused-cell'] ::slotted(vaadin-grid-cell-content) {
21
+ opacity: 0;
22
+ pointer-events: none;
23
+ }
24
+ `,
25
+ {
26
+ moduleId: 'vaadin-grid-pro-styles',
27
+ },
28
+ );
15
29
 
16
30
  /**
17
31
  * @polymerMixin
@@ -80,6 +94,19 @@ export const InlineEditingMixin = (superClass) =>
80
94
 
81
95
  /** @protected */
82
96
  ready() {
97
+ this.addEventListener(
98
+ 'keydown',
99
+ (e) => {
100
+ if (this.hasAttribute('loading-editor') && !['Tab', 'Escape', 'Enter'].includes(e.key)) {
101
+ // If an editor is focused while it's loading, prevent default keydown behavior
102
+ // to avoid user interaction with the editor before it's fully loaded
103
+ // Used by Flow GridPro
104
+ e.preventDefault();
105
+ e.stopPropagation();
106
+ }
107
+ },
108
+ true,
109
+ );
83
110
  // Add listener before `vaadin-grid` interaction mode listener
84
111
  this.addEventListener('keydown', (e) => {
85
112
  switch (e.keyCode) {
@@ -46,6 +46,22 @@ registerStyles(
46
46
  var(--lumo-contrast-5pct) 14px
47
47
  );
48
48
  }
49
+
50
+ /* Loading editor cell styles are used by Flow GridPro */
51
+ :host([loading-editor]) [part~='focused-cell']::before {
52
+ content: '';
53
+ position: absolute;
54
+ inset: 0;
55
+ pointer-events: none;
56
+ box-shadow: inset 0 0 0 var(--_focus-ring-width) transparent;
57
+ animation: vaadin-grid-pro-loading-editor 1.4s infinite;
58
+ }
59
+
60
+ @keyframes vaadin-grid-pro-loading-editor {
61
+ 50% {
62
+ box-shadow: inset 0 0 0 var(--_focus-ring-width) var(--_focus-ring-color);
63
+ }
64
+ }
49
65
  `,
50
66
  { moduleId: 'lumo-grid-pro' },
51
67
  );
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.6.0-alpha7",
4
+ "version": "24.6.0-alpha9",
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.6.0-alpha7/#/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.6.0-alpha7/#/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.6.0-alpha7/#/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.6.0-alpha7/#/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.6.0-alpha9/#/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.6.0-alpha9/#/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.6.0-alpha9/#/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.6.0-alpha9/#/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.6.0-alpha7",
4
+ "version": "24.6.0-alpha9",
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.6.0-alpha7/#/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.6.0-alpha7/#/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.6.0-alpha7/#/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.6.0-alpha7/#/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.6.0-alpha9/#/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.6.0-alpha9/#/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.6.0-alpha9/#/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.6.0-alpha9/#/elements/vaadin-select).",
181
181
  "extension": true,
182
182
  "attributes": [
183
183
  {