@vaadin/dialog 25.3.0-alpha6 → 25.3.0-alpha7

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.
@@ -796,7 +796,8 @@
796
796
  {
797
797
  "kind": "method",
798
798
  "name": "requestContentUpdate",
799
- "description": "Requests an update for the content of the dialog.\nWhile performing the update, it invokes the renderer passed in the `renderer` property,\nas well as `headerRender` and `footerRenderer` properties, if these are defined.\n\nIt is not guaranteed that the update happens immediately (synchronously) after it is requested."
799
+ "description": "Requests an update for the content of the dialog.\nWhile performing the update, it invokes the renderer passed in the `renderer` property,\nas well as `headerRender` and `footerRenderer` properties, if these are defined.\n\nIt is not guaranteed that the update happens immediately (synchronously) after it is requested.",
800
+ "deprecated": "This method is only used with renderers and will be removed in Vaadin 26"
800
801
  }
801
802
  ],
802
803
  "attributes": [
@@ -1195,6 +1196,7 @@
1195
1196
  "kind": "method",
1196
1197
  "name": "requestContentUpdate",
1197
1198
  "description": "Requests an update for the content of the dialog.\nWhile performing the update, it invokes the renderer passed in the `renderer` property,\nas well as `headerRender` and `footerRenderer` properties, if these are defined.\n\nIt is not guaranteed that the update happens immediately (synchronously) after it is requested.",
1199
+ "deprecated": "This method is only used with renderers and will be removed in Vaadin 26",
1198
1200
  "inheritedFrom": {
1199
1201
  "name": "DialogRendererMixin",
1200
1202
  "module": "src/vaadin-dialog-renderer-mixin.js"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vaadin/dialog",
3
- "version": "25.3.0-alpha6",
3
+ "version": "25.3.0-alpha7",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -37,19 +37,19 @@
37
37
  ],
38
38
  "dependencies": {
39
39
  "@open-wc/dedupe-mixin": "^1.3.0",
40
- "@vaadin/component-base": "25.3.0-alpha6",
41
- "@vaadin/lit-renderer": "25.3.0-alpha6",
42
- "@vaadin/overlay": "25.3.0-alpha6",
43
- "@vaadin/vaadin-themable-mixin": "25.3.0-alpha6",
40
+ "@vaadin/component-base": "25.3.0-alpha7",
41
+ "@vaadin/lit-renderer": "25.3.0-alpha7",
42
+ "@vaadin/overlay": "25.3.0-alpha7",
43
+ "@vaadin/vaadin-themable-mixin": "25.3.0-alpha7",
44
44
  "lit": "^3.0.0"
45
45
  },
46
46
  "devDependencies": {
47
- "@vaadin/a11y-base": "25.3.0-alpha6",
48
- "@vaadin/aura": "25.3.0-alpha6",
49
- "@vaadin/chai-plugins": "25.3.0-alpha6",
50
- "@vaadin/test-runner-commands": "25.3.0-alpha6",
47
+ "@vaadin/a11y-base": "25.3.0-alpha7",
48
+ "@vaadin/aura": "25.3.0-alpha7",
49
+ "@vaadin/chai-plugins": "25.3.0-alpha7",
50
+ "@vaadin/test-runner-commands": "25.3.0-alpha7",
51
51
  "@vaadin/testing-helpers": "^2.0.0",
52
- "@vaadin/vaadin-lumo-styles": "25.3.0-alpha6",
52
+ "@vaadin/vaadin-lumo-styles": "25.3.0-alpha7",
53
53
  "sinon": "^22.0.0"
54
54
  },
55
55
  "customElements": "custom-elements.json",
@@ -57,5 +57,5 @@
57
57
  "web-types.json",
58
58
  "web-types.lit.json"
59
59
  ],
60
- "gitHead": "92c124fb9cff367bc07e734d8e65707facd0bd43"
60
+ "gitHead": "ae7b9823df5598faebd7a482993029ee489c35ae"
61
61
  }
@@ -198,10 +198,11 @@ export const DialogBaseMixin = (superClass) =>
198
198
  }
199
199
 
200
200
  /** @private */
201
- _bringOverlayToFront() {
202
- if (this.modeless) {
203
- this._overlayElement.bringToFront();
201
+ _bringOverlayToFront(event) {
202
+ if (!this.modeless) {
203
+ return;
204
204
  }
205
+ this._overlayElement.bringToFront(event);
205
206
  }
206
207
 
207
208
  /** @private */
@@ -7,6 +7,7 @@ import { html, LitElement } from 'lit';
7
7
  import { defineCustomElement } from '@vaadin/component-base/src/define.js';
8
8
  import { DirMixin } from '@vaadin/component-base/src/dir-mixin.js';
9
9
  import { PolylitMixin } from '@vaadin/component-base/src/polylit-mixin.js';
10
+ import { getOverlaysOnTop, isNestedOverlay } from '@vaadin/overlay/src/vaadin-overlay-stack-mixin.js';
10
11
  import { LumoInjectionMixin } from '@vaadin/vaadin-themable-mixin/lumo-injection-mixin.js';
11
12
  import { ThemableMixin } from '@vaadin/vaadin-themable-mixin/vaadin-themable-mixin.js';
12
13
  import { dialogOverlayStyles } from './styles/vaadin-dialog-overlay-base-styles.js';
@@ -31,11 +32,11 @@ export class DialogOverlay extends DialogOverlayMixin(
31
32
  }
32
33
 
33
34
  /**
34
- * Override method from OverlayFocusMixin to use owner as focus trap root
35
+ * Override method from OverlayFocusMixin to use owner as focus root
35
36
  * @protected
36
37
  * @override
37
38
  */
38
- get _focusTrapRoot() {
39
+ get _focusRoot() {
39
40
  return this.owner;
40
41
  }
41
42
 
@@ -55,6 +56,29 @@ export class DialogOverlay extends DialogOverlayMixin(
55
56
  </div>
56
57
  `;
57
58
  }
59
+
60
+ /**
61
+ * @param {Event} event
62
+ * @protected
63
+ * @override
64
+ */
65
+ bringToFront(event) {
66
+ if (event instanceof Event) {
67
+ const path = event.composedPath();
68
+
69
+ // Do not bring overlay to front if this method is called
70
+ // on event that originates from a nested dialog content.
71
+ const isNestedDialogEvent = getOverlaysOnTop(this).some(
72
+ (overlay) => path.includes(overlay) && isNestedOverlay(this, overlay) && overlay instanceof DialogOverlay,
73
+ );
74
+
75
+ if (isNestedDialogEvent) {
76
+ return;
77
+ }
78
+ }
79
+
80
+ super.bringToFront();
81
+ }
58
82
  }
59
83
 
60
84
  defineCustomElement(DialogOverlay);
@@ -69,6 +69,8 @@ export declare class DialogRendererMixinClass {
69
69
  * as well as `headerRender` and `footerRenderer` properties, if these are defined.
70
70
  *
71
71
  * It is not guaranteed that the update happens immediately (synchronously) after it is requested.
72
+ *
73
+ * @deprecated This method is only used with renderers and will be removed in Vaadin 26
72
74
  */
73
75
  requestContentUpdate(): void;
74
76
  }
@@ -77,6 +77,8 @@ export const DialogRendererMixin = (superClass) =>
77
77
  * as well as `headerRender` and `footerRenderer` properties, if these are defined.
78
78
  *
79
79
  * It is not guaranteed that the update happens immediately (synchronously) after it is requested.
80
+ *
81
+ * @deprecated This method is only used with renderers and will be removed in Vaadin 26
80
82
  */
81
83
  requestContentUpdate() {
82
84
  if (this._overlayElement) {
package/web-types.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/web-types",
3
3
  "name": "@vaadin/dialog",
4
- "version": "25.3.0-alpha6",
4
+ "version": "25.3.0-alpha7",
5
5
  "description-markup": "markdown",
6
6
  "contributions": {
7
7
  "html": {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/web-types",
3
3
  "name": "@vaadin/dialog",
4
- "version": "25.3.0-alpha6",
4
+ "version": "25.3.0-alpha7",
5
5
  "description-markup": "markdown",
6
6
  "framework": "lit",
7
7
  "framework-config": {