@mui/x-internals 9.0.0 → 9.0.4

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.
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Returns the target element of an event, accounting for shadow DOM.
3
+ * @param event The event object.
4
+ * @returns The target element of the event.
5
+ */
6
+ export declare function getTarget(event: Event): EventTarget | null;
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Returns the target element of an event, accounting for shadow DOM.
3
+ * @param event The event object.
4
+ * @returns The target element of the event.
5
+ */
6
+ export declare function getTarget(event: Event): EventTarget | null;
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getTarget = getTarget;
7
+ /**
8
+ * Returns the target element of an event, accounting for shadow DOM.
9
+ * @param event The event object.
10
+ * @returns The target element of the event.
11
+ */
12
+ function getTarget(event) {
13
+ if ('composedPath' in event) {
14
+ return event.composedPath()[0] ?? event.target;
15
+ }
16
+
17
+ // Fallback for environments where `composedPath` is not available.
18
+ // TS narrows `event` to `never` here because it assumes `composedPath` always exists.
19
+ return event.target;
20
+ }
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Returns the target element of an event, accounting for shadow DOM.
3
+ * @param event The event object.
4
+ * @returns The target element of the event.
5
+ */
6
+ export function getTarget(event) {
7
+ if ('composedPath' in event) {
8
+ return event.composedPath()[0] ?? event.target;
9
+ }
10
+
11
+ // Fallback for environments where `composedPath` is not available.
12
+ // TS narrows `event` to `never` here because it assumes `composedPath` always exists.
13
+ return event.target;
14
+ }
@@ -0,0 +1,2 @@
1
+ export * from "./getTarget.mjs";
2
+ export * from "./isHTMLElement.mjs";
@@ -0,0 +1,2 @@
1
+ export * from "./getTarget.js";
2
+ export * from "./isHTMLElement.js";
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _getTarget = require("./getTarget");
7
+ Object.keys(_getTarget).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _getTarget[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function () {
13
+ return _getTarget[key];
14
+ }
15
+ });
16
+ });
17
+ var _isHTMLElement = require("./isHTMLElement");
18
+ Object.keys(_isHTMLElement).forEach(function (key) {
19
+ if (key === "default" || key === "__esModule") return;
20
+ if (key in exports && exports[key] === _isHTMLElement[key]) return;
21
+ Object.defineProperty(exports, key, {
22
+ enumerable: true,
23
+ get: function () {
24
+ return _isHTMLElement[key];
25
+ }
26
+ });
27
+ });
@@ -0,0 +1,2 @@
1
+ export * from "./getTarget.mjs";
2
+ export * from "./isHTMLElement.mjs";
@@ -0,0 +1,4 @@
1
+ /**
2
+ * Checks if a value is an HTMLElement, including elements from other iframes/realms.
3
+ */
4
+ export declare function isHTMLElement(value: unknown): value is HTMLElement;
@@ -0,0 +1,4 @@
1
+ /**
2
+ * Checks if a value is an HTMLElement, including elements from other iframes/realms.
3
+ */
4
+ export declare function isHTMLElement(value: unknown): value is HTMLElement;
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.isHTMLElement = isHTMLElement;
8
+ var _ownerWindow = _interopRequireDefault(require("@mui/utils/ownerWindow"));
9
+ /**
10
+ * Checks if a value is an HTMLElement, including elements from other iframes/realms.
11
+ */
12
+ function isHTMLElement(value) {
13
+ if (typeof window === 'undefined' || value == null) {
14
+ return false;
15
+ }
16
+ if (value instanceof HTMLElement) {
17
+ return true;
18
+ }
19
+ // Cross-realm: must be an element node (nodeType 1) from another window.
20
+ // The try/catch guards against detached/destroyed windows where accessing
21
+ // `.HTMLElement` on the owner window may throw.
22
+ try {
23
+ return value.nodeType === 1 && value instanceof (0, _ownerWindow.default)(value).HTMLElement;
24
+ } catch {
25
+ return false;
26
+ }
27
+ }
@@ -0,0 +1,21 @@
1
+ import ownerWindow from '@mui/utils/ownerWindow';
2
+
3
+ /**
4
+ * Checks if a value is an HTMLElement, including elements from other iframes/realms.
5
+ */
6
+ export function isHTMLElement(value) {
7
+ if (typeof window === 'undefined' || value == null) {
8
+ return false;
9
+ }
10
+ if (value instanceof HTMLElement) {
11
+ return true;
12
+ }
13
+ // Cross-realm: must be an element node (nodeType 1) from another window.
14
+ // The try/catch guards against detached/destroyed windows where accessing
15
+ // `.HTMLElement` on the owner window may throw.
16
+ try {
17
+ return value.nodeType === 1 && value instanceof ownerWindow(value).HTMLElement;
18
+ } catch {
19
+ return false;
20
+ }
21
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mui/x-internals",
3
- "version": "9.0.0",
3
+ "version": "9.0.4",
4
4
  "author": "MUI Team",
5
5
  "description": "Utility functions for the MUI X packages (internal use only).",
6
6
  "license": "MIT",
@@ -30,7 +30,7 @@
30
30
  "directory": "packages/x-internals"
31
31
  },
32
32
  "dependencies": {
33
- "@babel/runtime": "^7.28.6",
33
+ "@babel/runtime": "^7.29.2",
34
34
  "@mui/utils": "9.0.0",
35
35
  "reselect": "^5.1.1",
36
36
  "use-sync-external-store": "^1.6.0"
@@ -72,6 +72,20 @@
72
72
  "default": "./ToolbarContext/index.mjs"
73
73
  }
74
74
  },
75
+ "./domUtils": {
76
+ "import": {
77
+ "types": "./domUtils/index.d.mts",
78
+ "default": "./domUtils/index.mjs"
79
+ },
80
+ "require": {
81
+ "types": "./domUtils/index.d.ts",
82
+ "default": "./domUtils/index.js"
83
+ },
84
+ "default": {
85
+ "types": "./domUtils/index.d.mts",
86
+ "default": "./domUtils/index.mjs"
87
+ }
88
+ },
75
89
  "./export": {
76
90
  "import": {
77
91
  "types": "./export/index.d.mts",