@hanzogui/floating 3.0.6 → 4.4.0

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 (119) hide show
  1. package/dist/cjs/Floating.cjs +7 -5
  2. package/dist/cjs/Floating.native.js +18 -16
  3. package/dist/cjs/Floating.native.js.map +1 -1
  4. package/dist/cjs/index.cjs +28 -26
  5. package/dist/cjs/index.native.js +28 -26
  6. package/dist/cjs/index.native.js.map +1 -1
  7. package/dist/cjs/interactions/PopupTriggerMap.cjs +21 -12
  8. package/dist/cjs/interactions/PopupTriggerMap.native.js +51 -27
  9. package/dist/cjs/interactions/PopupTriggerMap.native.js.map +1 -1
  10. package/dist/cjs/interactions/createFloatingEvents.cjs +21 -12
  11. package/dist/cjs/interactions/createFloatingEvents.native.js +22 -13
  12. package/dist/cjs/interactions/createFloatingEvents.native.js.map +1 -1
  13. package/dist/cjs/interactions/safePolygon.cjs +213 -131
  14. package/dist/cjs/interactions/safePolygon.native.js +182 -103
  15. package/dist/cjs/interactions/safePolygon.native.js.map +1 -1
  16. package/dist/cjs/interactions/types.cjs +7 -5
  17. package/dist/cjs/interactions/types.native.js +7 -5
  18. package/dist/cjs/interactions/types.native.js.map +1 -1
  19. package/dist/cjs/interactions/useClick.cjs +91 -49
  20. package/dist/cjs/interactions/useClick.native.js +96 -54
  21. package/dist/cjs/interactions/useClick.native.js.map +1 -1
  22. package/dist/cjs/interactions/useDelayGroup.cjs +63 -44
  23. package/dist/cjs/interactions/useDelayGroup.native.js +74 -58
  24. package/dist/cjs/interactions/useDelayGroup.native.js.map +1 -1
  25. package/dist/cjs/interactions/useFocus.cjs +73 -44
  26. package/dist/cjs/interactions/useFocus.native.js +75 -49
  27. package/dist/cjs/interactions/useFocus.native.js.map +1 -1
  28. package/dist/cjs/interactions/useHover.cjs +242 -109
  29. package/dist/cjs/interactions/useHover.native.js +268 -143
  30. package/dist/cjs/interactions/useHover.native.js.map +1 -1
  31. package/dist/cjs/interactions/useInnerOffset.cjs +88 -64
  32. package/dist/cjs/interactions/useInnerOffset.native.js +88 -65
  33. package/dist/cjs/interactions/useInnerOffset.native.js.map +1 -1
  34. package/dist/cjs/interactions/useInteractions.cjs +60 -31
  35. package/dist/cjs/interactions/useInteractions.native.js +133 -81
  36. package/dist/cjs/interactions/useInteractions.native.js.map +1 -1
  37. package/dist/cjs/interactions/useListNavigation.cjs +346 -181
  38. package/dist/cjs/interactions/useListNavigation.native.js +350 -214
  39. package/dist/cjs/interactions/useListNavigation.native.js.map +1 -1
  40. package/dist/cjs/interactions/useRole.cjs +83 -73
  41. package/dist/cjs/interactions/useRole.native.js +107 -99
  42. package/dist/cjs/interactions/useRole.native.js.map +1 -1
  43. package/dist/cjs/interactions/useTypeahead.cjs +115 -65
  44. package/dist/cjs/interactions/useTypeahead.native.js +122 -77
  45. package/dist/cjs/interactions/useTypeahead.native.js.map +1 -1
  46. package/dist/cjs/interactions/utils.cjs +68 -38
  47. package/dist/cjs/interactions/utils.native.js +93 -54
  48. package/dist/cjs/interactions/utils.native.js.map +1 -1
  49. package/dist/cjs/middleware/inner.cjs +79 -67
  50. package/dist/cjs/middleware/inner.native.js +86 -76
  51. package/dist/cjs/middleware/inner.native.js.map +1 -1
  52. package/dist/cjs/useFloating.cjs +48 -45
  53. package/dist/cjs/useFloating.native.js +50 -48
  54. package/dist/cjs/useFloating.native.js.map +1 -1
  55. package/dist/esm/Floating.native.js +5 -5
  56. package/dist/esm/Floating.native.js.map +1 -1
  57. package/dist/esm/interactions/PopupTriggerMap.mjs +9 -2
  58. package/dist/esm/interactions/PopupTriggerMap.mjs.map +1 -1
  59. package/dist/esm/interactions/PopupTriggerMap.native.js +39 -17
  60. package/dist/esm/interactions/PopupTriggerMap.native.js.map +1 -1
  61. package/dist/esm/interactions/createFloatingEvents.mjs +9 -2
  62. package/dist/esm/interactions/createFloatingEvents.mjs.map +1 -1
  63. package/dist/esm/interactions/createFloatingEvents.native.js +10 -3
  64. package/dist/esm/interactions/createFloatingEvents.native.js.map +1 -1
  65. package/dist/esm/interactions/safePolygon.mjs +201 -121
  66. package/dist/esm/interactions/safePolygon.mjs.map +1 -1
  67. package/dist/esm/interactions/safePolygon.native.js +170 -93
  68. package/dist/esm/interactions/safePolygon.native.js.map +1 -1
  69. package/dist/esm/interactions/useClick.mjs +79 -39
  70. package/dist/esm/interactions/useClick.mjs.map +1 -1
  71. package/dist/esm/interactions/useClick.native.js +82 -42
  72. package/dist/esm/interactions/useClick.native.js.map +1 -1
  73. package/dist/esm/interactions/useDelayGroup.mjs +39 -22
  74. package/dist/esm/interactions/useDelayGroup.mjs.map +1 -1
  75. package/dist/esm/interactions/useDelayGroup.native.js +42 -28
  76. package/dist/esm/interactions/useDelayGroup.native.js.map +1 -1
  77. package/dist/esm/interactions/useFocus.mjs +59 -32
  78. package/dist/esm/interactions/useFocus.mjs.map +1 -1
  79. package/dist/esm/interactions/useFocus.native.js +61 -37
  80. package/dist/esm/interactions/useFocus.native.js.map +1 -1
  81. package/dist/esm/interactions/useHover.mjs +215 -84
  82. package/dist/esm/interactions/useHover.mjs.map +1 -1
  83. package/dist/esm/interactions/useHover.native.js +240 -117
  84. package/dist/esm/interactions/useHover.native.js.map +1 -1
  85. package/dist/esm/interactions/useInnerOffset.mjs +61 -39
  86. package/dist/esm/interactions/useInnerOffset.mjs.map +1 -1
  87. package/dist/esm/interactions/useInnerOffset.native.js +61 -40
  88. package/dist/esm/interactions/useInnerOffset.native.js.map +1 -1
  89. package/dist/esm/interactions/useInteractions.mjs +48 -21
  90. package/dist/esm/interactions/useInteractions.mjs.map +1 -1
  91. package/dist/esm/interactions/useInteractions.native.js +121 -71
  92. package/dist/esm/interactions/useInteractions.native.js.map +1 -1
  93. package/dist/esm/interactions/useListNavigation.mjs +331 -168
  94. package/dist/esm/interactions/useListNavigation.mjs.map +1 -1
  95. package/dist/esm/interactions/useListNavigation.native.js +335 -201
  96. package/dist/esm/interactions/useListNavigation.native.js.map +1 -1
  97. package/dist/esm/interactions/useRole.mjs +59 -51
  98. package/dist/esm/interactions/useRole.mjs.map +1 -1
  99. package/dist/esm/interactions/useRole.native.js +82 -76
  100. package/dist/esm/interactions/useRole.native.js.map +1 -1
  101. package/dist/esm/interactions/useTypeahead.mjs +100 -52
  102. package/dist/esm/interactions/useTypeahead.mjs.map +1 -1
  103. package/dist/esm/interactions/useTypeahead.native.js +107 -64
  104. package/dist/esm/interactions/useTypeahead.native.js.map +1 -1
  105. package/dist/esm/interactions/utils.mjs +56 -28
  106. package/dist/esm/interactions/utils.mjs.map +1 -1
  107. package/dist/esm/interactions/utils.native.js +81 -44
  108. package/dist/esm/interactions/utils.native.js.map +1 -1
  109. package/dist/esm/middleware/inner.mjs +54 -44
  110. package/dist/esm/middleware/inner.mjs.map +1 -1
  111. package/dist/esm/middleware/inner.native.js +61 -53
  112. package/dist/esm/middleware/inner.native.js.map +1 -1
  113. package/dist/esm/useFloating.mjs +22 -21
  114. package/dist/esm/useFloating.mjs.map +1 -1
  115. package/dist/esm/useFloating.native.js +24 -24
  116. package/dist/esm/useFloating.native.js.map +1 -1
  117. package/package.json +3 -3
  118. package/src/middleware/inner.ts +4 -5
  119. package/types/middleware/inner.d.ts.map +1 -1
@@ -3,20 +3,22 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
3
  var __getOwnPropNames = Object.getOwnPropertyNames;
4
4
  var __hasOwnProp = Object.prototype.hasOwnProperty;
5
5
  var __export = (target, all) => {
6
- for (var name in all) __defProp(target, name, {
7
- get: all[name],
8
- enumerable: !0
9
- });
10
- },
11
- __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
6
+ for (var name in all) __defProp(target, name, {
7
+ get: all[name],
8
+ enumerable: true
9
+ });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
13
14
  get: () => from[key],
14
15
  enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
15
16
  });
16
- return to;
17
- };
17
+ }
18
+ return to;
19
+ };
18
20
  var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
19
- value: !0
21
+ value: true
20
22
  }), mod);
21
23
  var utils_exports = {};
22
24
  __export(utils_exports, {
@@ -48,27 +50,32 @@ function getDocument(node) {
48
50
  return node?.ownerDocument || document;
49
51
  }
50
52
  function contains(parent, child) {
51
- if (!parent || !child) return !1;
53
+ if (!parent || !child) return false;
52
54
  const rootNode = child.getRootNode?.();
53
- if (parent.contains(child)) return !0;
55
+ if (parent.contains(child)) return true;
54
56
  if (rootNode && isShadowRoot(rootNode)) {
55
57
  let next = child;
56
- for (; next;) {
57
- if (parent === next) return !0;
58
+ while (next) {
59
+ if (parent === next) return true;
58
60
  next = next.parentNode || next.host;
59
61
  }
60
62
  }
61
- return !1;
63
+ return false;
62
64
  }
63
65
  function isShadowRoot(node) {
64
66
  return node instanceof ShadowRoot;
65
67
  }
66
68
  function getTarget(event) {
67
- return "composedPath" in event ? event.composedPath()[0] : event.target;
69
+ if ("composedPath" in event) {
70
+ return event.composedPath()[0];
71
+ }
72
+ return event.target;
68
73
  }
69
74
  function activeElement(doc) {
70
75
  let el = doc.activeElement;
71
- for (; el?.shadowRoot?.activeElement != null;) el = el.shadowRoot.activeElement;
76
+ while (el?.shadowRoot?.activeElement != null) {
77
+ el = el.shadowRoot.activeElement;
78
+ }
72
79
  return el;
73
80
  }
74
81
  function isHTMLElement(value) {
@@ -82,18 +89,23 @@ function isTypeableElement(element) {
82
89
  return isHTMLElement(element) && element.matches(TYPEABLE_SELECTOR);
83
90
  }
84
91
  function isTypeableCombobox(element) {
85
- return element ? element.getAttribute("role") === "combobox" && isTypeableElement(element) : !1;
92
+ if (!element) return false;
93
+ return element.getAttribute("role") === "combobox" && isTypeableElement(element);
86
94
  }
87
95
  function getPlatform() {
88
96
  const uaData = navigator.userAgentData;
89
- return uaData?.platform ? uaData.platform : navigator.platform;
97
+ if (uaData?.platform) return uaData.platform;
98
+ return navigator.platform;
90
99
  }
91
100
  function getUserAgent() {
92
101
  const uaData = navigator.userAgentData;
93
- return uaData && Array.isArray(uaData.brands) ? uaData.brands.map(({
94
- brand,
95
- version
96
- }) => `${brand}/${version}`).join(" ") : navigator.userAgent;
102
+ if (uaData && Array.isArray(uaData.brands)) {
103
+ return uaData.brands.map(({
104
+ brand,
105
+ version
106
+ }) => `${brand}/${version}`).join(" ");
107
+ }
108
+ return navigator.userAgent;
97
109
  }
98
110
  function isSafari() {
99
111
  return /apple/i.test(navigator.vendor);
@@ -105,28 +117,40 @@ function isJSDOM() {
105
117
  return getUserAgent().includes("jsdom/");
106
118
  }
107
119
  function matchesFocusVisible(element) {
108
- if (!element || isJSDOM()) return !0;
120
+ if (!element || isJSDOM()) return true;
109
121
  try {
110
122
  return element.matches(":focus-visible");
111
123
  } catch {
112
- return !0;
124
+ return true;
113
125
  }
114
126
  }
115
127
  function isMouseLikePointerType(pointerType, strict) {
116
128
  const values = ["mouse", "pen"];
117
- return strict || values.push("", void 0), values.includes(pointerType);
129
+ if (!strict) {
130
+ values.push("", void 0);
131
+ }
132
+ return values.includes(pointerType);
118
133
  }
119
134
  function clearTimeoutIfSet(timeoutRef) {
120
- timeoutRef.current !== -1 && (clearTimeout(timeoutRef.current), timeoutRef.current = -1);
135
+ if (timeoutRef.current !== -1) {
136
+ clearTimeout(timeoutRef.current);
137
+ timeoutRef.current = -1;
138
+ }
121
139
  }
122
140
  function stopEvent(event) {
123
- event.preventDefault(), event.stopPropagation();
141
+ event.preventDefault();
142
+ event.stopPropagation();
124
143
  }
125
144
  function isVirtualClick(event) {
126
- return event.mozInputSource === 0 && event.isTrusted ? !0 : isAndroid() && event.pointerType ? event.type === "click" && event.buttons === 1 : event.detail === 0 && !event.pointerType;
145
+ if (event.mozInputSource === 0 && event.isTrusted) return true;
146
+ if (isAndroid() && event.pointerType) {
147
+ return event.type === "click" && event.buttons === 1;
148
+ }
149
+ return event.detail === 0 && !event.pointerType;
127
150
  }
128
151
  function isVirtualPointerEvent(event) {
129
- return isJSDOM() ? !1 : !isAndroid() && event.width === 0 && event.height === 0 || isAndroid() && event.width === 1 && event.height === 1 && event.pressure === 0 && event.detail === 0 && event.pointerType === "mouse" || event.width < 1 && event.height < 1 && event.pressure === 0 && event.detail === 0 && event.pointerType === "touch";
152
+ if (isJSDOM()) return false;
153
+ return !isAndroid() && event.width === 0 && event.height === 0 || isAndroid() && event.width === 1 && event.height === 1 && event.pressure === 0 && event.detail === 0 && event.pointerType === "mouse" || event.width < 1 && event.height < 1 && event.pressure === 0 && event.detail === 0 && event.pointerType === "touch";
130
154
  }
131
155
  function isAndroid() {
132
156
  const re = /android/i;
@@ -135,30 +159,36 @@ function isAndroid() {
135
159
  let rafId = 0;
136
160
  function enqueueFocus(el, options = {}) {
137
161
  const {
138
- preventScroll = !1,
139
- cancelPrevious = !0,
140
- sync = !1
162
+ preventScroll = false,
163
+ cancelPrevious = true,
164
+ sync = false
141
165
  } = options;
142
166
  cancelPrevious && cancelAnimationFrame(rafId);
143
167
  const exec = () => el?.focus({
144
168
  preventScroll
145
169
  });
146
- sync ? exec() : rafId = requestAnimationFrame(exec);
170
+ if (sync) {
171
+ exec();
172
+ } else {
173
+ rafId = requestAnimationFrame(exec);
174
+ }
147
175
  }
148
176
  function isListIndexDisabled(listRef, index, disabledIndices) {
149
- if (typeof disabledIndices == "function") return disabledIndices(index);
177
+ if (typeof disabledIndices === "function") return disabledIndices(index);
150
178
  if (disabledIndices) return disabledIndices.includes(index);
151
179
  const element = listRef.current[index];
152
180
  return element == null || element.hasAttribute("disabled") || element.getAttribute("aria-disabled") === "true";
153
181
  }
154
182
  function findNonDisabledListIndex(listRef, {
155
183
  startingIndex = -1,
156
- decrement = !1,
184
+ decrement = false,
157
185
  disabledIndices,
158
186
  amount = 1
159
187
  } = {}) {
160
188
  let index = startingIndex;
161
- do index += decrement ? -amount : amount; while (index >= 0 && index <= listRef.current.length - 1 && isListIndexDisabled(listRef, index, disabledIndices));
189
+ do {
190
+ index += decrement ? -amount : amount;
191
+ } while (index >= 0 && index <= listRef.current.length - 1 && isListIndexDisabled(listRef, index, disabledIndices));
162
192
  return index;
163
193
  }
164
194
  function getMinListIndex(listRef, disabledIndices) {
@@ -168,7 +198,7 @@ function getMinListIndex(listRef, disabledIndices) {
168
198
  }
169
199
  function getMaxListIndex(listRef, disabledIndices) {
170
200
  return findNonDisabledListIndex(listRef, {
171
- decrement: !0,
201
+ decrement: true,
172
202
  startingIndex: listRef.current.length,
173
203
  disabledIndices
174
204
  });
@@ -5,20 +5,22 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
5
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
6
  var __hasOwnProp = Object.prototype.hasOwnProperty;
7
7
  var __export = (target, all) => {
8
- for (var name in all) __defProp(target, name, {
9
- get: all[name],
10
- enumerable: !0
11
- });
12
- },
13
- __copyProps = (to, from, except, desc) => {
14
- if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
8
+ for (var name in all) __defProp(target, name, {
9
+ get: all[name],
10
+ enumerable: true
11
+ });
12
+ };
13
+ var __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from === "object" || typeof from === "function") {
15
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
15
16
  get: () => from[key],
16
17
  enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
17
18
  });
18
- return to;
19
- };
19
+ }
20
+ return to;
21
+ };
20
22
  var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
21
- value: !0
23
+ value: true
22
24
  }), mod);
23
25
  var utils_exports = {};
24
26
  __export(utils_exports, {
@@ -47,30 +49,44 @@ __export(utils_exports, {
47
49
  });
48
50
  module.exports = __toCommonJS(utils_exports);
49
51
  function _instanceof(left, right) {
50
- return right != null && typeof Symbol < "u" && right[Symbol.hasInstance] ? !!right[Symbol.hasInstance](left) : left instanceof right;
52
+ if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
53
+ return !!right[Symbol.hasInstance](left);
54
+ } else {
55
+ return left instanceof right;
56
+ }
51
57
  }
52
58
  function getDocument(node) {
53
- return node?.ownerDocument || document;
59
+ return (node === null || node === void 0 ? void 0 : node.ownerDocument) || document;
54
60
  }
55
61
  function contains(parent, child) {
56
62
  var _child_getRootNode;
57
- if (!parent || !child) return !1;
63
+ if (!parent || !child) return false;
58
64
  var rootNode = (_child_getRootNode = child.getRootNode) === null || _child_getRootNode === void 0 ? void 0 : _child_getRootNode.call(child);
59
- if (parent.contains(child)) return !0;
60
- if (rootNode && isShadowRoot(rootNode)) for (var next = child; next;) {
61
- if (parent === next) return !0;
62
- next = next.parentNode || next.host;
65
+ if (parent.contains(child)) return true;
66
+ if (rootNode && isShadowRoot(rootNode)) {
67
+ var next = child;
68
+ while (next) {
69
+ if (parent === next) return true;
70
+ next = next.parentNode || next.host;
71
+ }
63
72
  }
64
- return !1;
73
+ return false;
65
74
  }
66
75
  function isShadowRoot(node) {
67
76
  return _instanceof(node, ShadowRoot);
68
77
  }
69
78
  function getTarget(event) {
70
- return "composedPath" in event ? event.composedPath()[0] : event.target;
79
+ if ("composedPath" in event) {
80
+ return event.composedPath()[0];
81
+ }
82
+ return event.target;
71
83
  }
72
84
  function activeElement(doc) {
73
- for (var _el_shadowRoot, el = doc.activeElement; (el == null || (_el_shadowRoot = el.shadowRoot) === null || _el_shadowRoot === void 0 ? void 0 : _el_shadowRoot.activeElement) != null;) el = el.shadowRoot.activeElement;
85
+ var _el_shadowRoot;
86
+ var el = doc.activeElement;
87
+ while ((el === null || el === void 0 ? void 0 : (_el_shadowRoot = el.shadowRoot) === null || _el_shadowRoot === void 0 ? void 0 : _el_shadowRoot.activeElement) != null) {
88
+ el = el.shadowRoot.activeElement;
89
+ }
74
90
  return el;
75
91
  }
76
92
  function isHTMLElement(value) {
@@ -84,21 +100,26 @@ function isTypeableElement(element) {
84
100
  return isHTMLElement(element) && element.matches(TYPEABLE_SELECTOR);
85
101
  }
86
102
  function isTypeableCombobox(element) {
87
- return element ? element.getAttribute("role") === "combobox" && isTypeableElement(element) : !1;
103
+ if (!element) return false;
104
+ return element.getAttribute("role") === "combobox" && isTypeableElement(element);
88
105
  }
89
106
  function getPlatform() {
90
107
  var uaData = navigator.userAgentData;
91
- return uaData?.platform ? uaData.platform : navigator.platform;
108
+ if (uaData === null || uaData === void 0 ? void 0 : uaData.platform) return uaData.platform;
109
+ return navigator.platform;
92
110
  }
93
111
  function getUserAgent() {
94
112
  var uaData = navigator.userAgentData;
95
- return uaData && Array.isArray(uaData.brands) ? uaData.brands.map(function (param) {
96
- var {
97
- brand,
98
- version
99
- } = param;
100
- return `${brand}/${version}`;
101
- }).join(" ") : navigator.userAgent;
113
+ if (uaData && Array.isArray(uaData.brands)) {
114
+ return uaData.brands.map(function (param) {
115
+ var {
116
+ brand,
117
+ version
118
+ } = param;
119
+ return `${brand}/${version}`;
120
+ }).join(" ");
121
+ }
122
+ return navigator.userAgent;
102
123
  }
103
124
  function isSafari() {
104
125
  return /apple/i.test(navigator.vendor);
@@ -110,28 +131,40 @@ function isJSDOM() {
110
131
  return getUserAgent().includes("jsdom/");
111
132
  }
112
133
  function matchesFocusVisible(element) {
113
- if (!element || isJSDOM()) return !0;
134
+ if (!element || isJSDOM()) return true;
114
135
  try {
115
136
  return element.matches(":focus-visible");
116
- } catch {
117
- return !0;
137
+ } catch (e) {
138
+ return true;
118
139
  }
119
140
  }
120
141
  function isMouseLikePointerType(pointerType, strict) {
121
142
  var values = ["mouse", "pen"];
122
- return strict || values.push("", void 0), values.includes(pointerType);
143
+ if (!strict) {
144
+ values.push("", void 0);
145
+ }
146
+ return values.includes(pointerType);
123
147
  }
124
148
  function clearTimeoutIfSet(timeoutRef) {
125
- timeoutRef.current !== -1 && (clearTimeout(timeoutRef.current), timeoutRef.current = -1);
149
+ if (timeoutRef.current !== -1) {
150
+ clearTimeout(timeoutRef.current);
151
+ timeoutRef.current = -1;
152
+ }
126
153
  }
127
154
  function stopEvent(event) {
128
- event.preventDefault(), event.stopPropagation();
155
+ event.preventDefault();
156
+ event.stopPropagation();
129
157
  }
130
158
  function isVirtualClick(event) {
131
- return event.mozInputSource === 0 && event.isTrusted ? !0 : isAndroid() && event.pointerType ? event.type === "click" && event.buttons === 1 : event.detail === 0 && !event.pointerType;
159
+ if (event.mozInputSource === 0 && event.isTrusted) return true;
160
+ if (isAndroid() && event.pointerType) {
161
+ return event.type === "click" && event.buttons === 1;
162
+ }
163
+ return event.detail === 0 && !event.pointerType;
132
164
  }
133
165
  function isVirtualPointerEvent(event) {
134
- return isJSDOM() ? !1 : !isAndroid() && event.width === 0 && event.height === 0 || isAndroid() && event.width === 1 && event.height === 1 && event.pressure === 0 && event.detail === 0 && event.pointerType === "mouse" || event.width < 1 && event.height < 1 && event.pressure === 0 && event.detail === 0 && event.pointerType === "touch";
166
+ if (isJSDOM()) return false;
167
+ return !isAndroid() && event.width === 0 && event.height === 0 || isAndroid() && event.width === 1 && event.height === 1 && event.pressure === 0 && event.detail === 0 && event.pointerType === "mouse" || event.width < 1 && event.height < 1 && event.pressure === 0 && event.detail === 0 && event.pointerType === "touch";
135
168
  }
136
169
  function isAndroid() {
137
170
  var re = /android/i;
@@ -139,35 +172,41 @@ function isAndroid() {
139
172
  }
140
173
  var rafId = 0;
141
174
  function enqueueFocus(el) {
142
- var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {},
143
- {
144
- preventScroll = !1,
145
- cancelPrevious = !0,
146
- sync = !1
147
- } = options;
175
+ var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
176
+ var {
177
+ preventScroll = false,
178
+ cancelPrevious = true,
179
+ sync = false
180
+ } = options;
148
181
  cancelPrevious && cancelAnimationFrame(rafId);
149
182
  var exec = function () {
150
- return el?.focus({
183
+ return el === null || el === void 0 ? void 0 : el.focus({
151
184
  preventScroll
152
185
  });
153
186
  };
154
- sync ? exec() : rafId = requestAnimationFrame(exec);
187
+ if (sync) {
188
+ exec();
189
+ } else {
190
+ rafId = requestAnimationFrame(exec);
191
+ }
155
192
  }
156
193
  function isListIndexDisabled(listRef, index, disabledIndices) {
157
- if (typeof disabledIndices == "function") return disabledIndices(index);
194
+ if (typeof disabledIndices === "function") return disabledIndices(index);
158
195
  if (disabledIndices) return disabledIndices.includes(index);
159
196
  var element = listRef.current[index];
160
197
  return element == null || element.hasAttribute("disabled") || element.getAttribute("aria-disabled") === "true";
161
198
  }
162
199
  function findNonDisabledListIndex(listRef) {
163
200
  var {
164
- startingIndex = -1,
165
- decrement = !1,
166
- disabledIndices,
167
- amount = 1
168
- } = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {},
169
- index = startingIndex;
170
- do index += decrement ? -amount : amount; while (index >= 0 && index <= listRef.current.length - 1 && isListIndexDisabled(listRef, index, disabledIndices));
201
+ startingIndex = -1,
202
+ decrement = false,
203
+ disabledIndices,
204
+ amount = 1
205
+ } = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
206
+ var index = startingIndex;
207
+ do {
208
+ index += decrement ? -amount : amount;
209
+ } while (index >= 0 && index <= listRef.current.length - 1 && isListIndexDisabled(listRef, index, disabledIndices));
171
210
  return index;
172
211
  }
173
212
  function getMinListIndex(listRef, disabledIndices) {
@@ -177,7 +216,7 @@ function getMinListIndex(listRef, disabledIndices) {
177
216
  }
178
217
  function getMaxListIndex(listRef, disabledIndices) {
179
218
  return findNonDisabledListIndex(listRef, {
180
- decrement: !0,
219
+ decrement: true,
181
220
  startingIndex: listRef.current.length,
182
221
  disabledIndices
183
222
  });
@@ -1 +1 @@
1
- {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","utils_exports","__export","activeElement","clearTimeoutIfSet","contains","enqueueFocus","findNonDisabledListIndex","getDocument","getMaxListIndex","getMinListIndex","getTarget","isElement","isHTMLElement","isIndexOutOfListBounds","isListIndexDisabled","isMac","isMouseLikePointerType","isSafari","isTypeableCombobox","isTypeableElement","isVirtualClick","isVirtualPointerEvent","matchesFocusVisible","stopEvent","module","exports","_instanceof","left","right","Symbol","hasInstance","node","ownerDocument","document","parent","child","_child_getRootNode","rootNode","getRootNode","call","isShadowRoot","next","parentNode","host","ShadowRoot","event","composedPath","target","doc","_el_shadowRoot","el","shadowRoot","HTMLElement","Element","TYPEABLE_SELECTOR","element","matches","getAttribute","getPlatform","uaData","navigator","userAgentData","platform","getUserAgent","Array","isArray","brands","map","param","brand","version","join","userAgent","test","vendor","toLowerCase","startsWith","maxTouchPoints","isJSDOM","includes","pointerType","strict","values","push","timeoutRef","current","clearTimeout","preventDefault","stopPropagation","mozInputSource","isTrusted","isAndroid","type","buttons","detail","width","height","pressure","re","rafId","options","arguments","length","preventScroll","cancelPrevious","sync","cancelAnimationFrame","exec","focus","requestAnimationFrame","listRef","index","disabledIndices","hasAttribute","startingIndex","decrement","amount"],"sources":["../../../src/interactions/utils.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","utils_exports","__export","activeElement","clearTimeoutIfSet","contains","enqueueFocus","findNonDisabledListIndex","getDocument","getMaxListIndex","getMinListIndex","getTarget","isElement","isHTMLElement","isIndexOutOfListBounds","isListIndexDisabled","isMac","isMouseLikePointerType","isSafari","isTypeableCombobox","isTypeableElement","isVirtualClick","isVirtualPointerEvent","matchesFocusVisible","stopEvent","module","exports","_instanceof","left","right","Symbol","hasInstance","node","ownerDocument","document","parent","child","_child_getRootNode","rootNode","getRootNode","call","isShadowRoot","next","parentNode","host","ShadowRoot","event","composedPath","target","doc","_el_shadowRoot","el","shadowRoot","HTMLElement","Element","TYPEABLE_SELECTOR","element","matches","getAttribute","getPlatform","uaData","navigator","userAgentData","platform","getUserAgent","Array","isArray","brands","map","param","brand","version","join","userAgent","test","vendor","toLowerCase","startsWith","maxTouchPoints","isJSDOM","includes","e","pointerType","strict","values","push","timeoutRef","current","clearTimeout","preventDefault","stopPropagation","mozInputSource","isTrusted","isAndroid","type","buttons","detail","width","height","pressure","re","rafId","options","arguments","length","preventScroll","cancelPrevious","sync","cancelAnimationFrame","exec","focus","requestAnimationFrame","listRef","index","disabledIndices","hasAttribute","startingIndex","decrement","amount"],"sources":["../../../src/interactions/utils.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}