@eightshift/ui-components 3.0.1 → 5.0.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 (144) hide show
  1. package/package.json +101 -101
  2. package/dist/Button-BPLceDeW.js +0 -185
  3. package/dist/Collection-CZxddMZS.js +0 -2332
  4. package/dist/Color-MV5kBVXr.js +0 -2452
  5. package/dist/ColorSwatch-BqQfVu4L.js +0 -64
  6. package/dist/ComboBox-_RfyhwZw.js +0 -1906
  7. package/dist/Dialog-8tYeQ9n4.js +0 -2300
  8. package/dist/FieldError-52GVSGgC.js +0 -42
  9. package/dist/FocusScope-Cri5BFRz.js +0 -831
  10. package/dist/Form-Cq3fu75_.js +0 -5
  11. package/dist/Group-_emcIVxI.js +0 -48
  12. package/dist/Heading-B2153VXe.js +0 -16
  13. package/dist/Hidden-rE6uR-lr.js +0 -41
  14. package/dist/Input-BxpFEIXV.js +0 -133
  15. package/dist/Label-icmbmNdI.js +0 -17
  16. package/dist/List-CZMUbkFU.js +0 -593
  17. package/dist/ListBox-Ca6hiCqz.js +0 -581
  18. package/dist/NumberFormatter-DA8u1Ot7.js +0 -140
  19. package/dist/OverlayArrow-CYXQSlEU.js +0 -629
  20. package/dist/RSPContexts-2lR5GG9p.js +0 -14
  21. package/dist/Select-aab027f3.esm-PDJCDE95.js +0 -2469
  22. package/dist/Separator-4IIDRlV_.js +0 -322
  23. package/dist/Slider-rz2XRMGm.js +0 -853
  24. package/dist/Text-DVSAPY-K.js +0 -16
  25. package/dist/VisuallyHidden-f9zX67a_.js +0 -48
  26. package/dist/_commonjsHelpers-CUmg6egw.js +0 -6
  27. package/dist/assets/index.css +0 -37
  28. package/dist/assets/style-admin.css +0 -5255
  29. package/dist/assets/style-editor.css +0 -5255
  30. package/dist/assets/style.css +0 -5261
  31. package/dist/assets/wp-font-enhancements.css +0 -8
  32. package/dist/assets/wp-ui-enhancements.css +0 -299
  33. package/dist/components/animated-visibility/animated-visibility.js +0 -105
  34. package/dist/components/base-control/base-control.js +0 -86
  35. package/dist/components/breakpoint-preview/breakpoint-preview.js +0 -161
  36. package/dist/components/button/button.js +0 -387
  37. package/dist/components/checkbox/checkbox.js +0 -320
  38. package/dist/components/color-pickers/color-picker.js +0 -272
  39. package/dist/components/color-pickers/color-swatch.js +0 -58
  40. package/dist/components/color-pickers/gradient-editor.js +0 -534
  41. package/dist/components/color-pickers/solid-color-picker.js +0 -1567
  42. package/dist/components/component-toggle/component-toggle.js +0 -158
  43. package/dist/components/container-panel/container-panel.js +0 -131
  44. package/dist/components/draggable/draggable-context.js +0 -5
  45. package/dist/components/draggable/draggable-handle.js +0 -46
  46. package/dist/components/draggable/draggable.js +0 -6207
  47. package/dist/components/draggable-list/draggable-list-context.js +0 -5
  48. package/dist/components/draggable-list/draggable-list-item.js +0 -77
  49. package/dist/components/draggable-list/draggable-list.js +0 -151
  50. package/dist/components/expandable/expandable.js +0 -342
  51. package/dist/components/index.js +0 -137
  52. package/dist/components/input-field/input-field.js +0 -231
  53. package/dist/components/item-collection/item-collection.js +0 -59
  54. package/dist/components/layout/hstack.js +0 -30
  55. package/dist/components/layout/vstack.js +0 -30
  56. package/dist/components/link-input/link-input.js +0 -293
  57. package/dist/components/matrix-align/matrix-align.js +0 -134
  58. package/dist/components/menu/menu.js +0 -285
  59. package/dist/components/modal/modal.js +0 -305
  60. package/dist/components/notice/notice.js +0 -123
  61. package/dist/components/number-picker/number-picker.js +0 -292
  62. package/dist/components/option-select/option-select.js +0 -264
  63. package/dist/components/options-panel/options-panel.js +0 -158
  64. package/dist/components/placeholders/file-placeholder.js +0 -42
  65. package/dist/components/placeholders/image-placeholder.js +0 -88
  66. package/dist/components/placeholders/media-placeholder.js +0 -63
  67. package/dist/components/popover/popover.js +0 -207
  68. package/dist/components/radio/radio.js +0 -579
  69. package/dist/components/repeater/repeater-context.js +0 -5
  70. package/dist/components/repeater/repeater-item.js +0 -119
  71. package/dist/components/repeater/repeater.js +0 -280
  72. package/dist/components/responsive/mini-responsive.js +0 -498
  73. package/dist/components/responsive/responsive-legacy.js +0 -343
  74. package/dist/components/responsive/responsive.js +0 -580
  75. package/dist/components/responsive-preview/responsive-preview.js +0 -123
  76. package/dist/components/rich-label/rich-label.js +0 -66
  77. package/dist/components/select/async-multi-select.js +0 -157
  78. package/dist/components/select/async-single-select.js +0 -137
  79. package/dist/components/select/custom-select-default-components.js +0 -38
  80. package/dist/components/select/multi-select-components.js +0 -8
  81. package/dist/components/select/multi-select.js +0 -151
  82. package/dist/components/select/react-select-component-wrappers.js +0 -90
  83. package/dist/components/select/shared.js +0 -26
  84. package/dist/components/select/single-select.js +0 -131
  85. package/dist/components/select/styles.js +0 -49
  86. package/dist/components/select/v2/async-select.js +0 -297
  87. package/dist/components/select/v2/shared.js +0 -24
  88. package/dist/components/select/v2/single-select.js +0 -990
  89. package/dist/components/slider/column-config-slider.js +0 -210
  90. package/dist/components/slider/slider.js +0 -343
  91. package/dist/components/slider/utils.js +0 -84
  92. package/dist/components/spacer/spacer.js +0 -97
  93. package/dist/components/tabs/tabs.js +0 -702
  94. package/dist/components/toggle/switch.js +0 -155
  95. package/dist/components/toggle/toggle.js +0 -64
  96. package/dist/components/toggle-button/toggle-button.js +0 -324
  97. package/dist/components/tooltip/tooltip.js +0 -525
  98. package/dist/context-D2KUdwNL.js +0 -92
  99. package/dist/default-i18n-CT_oS1Fy.js +0 -922
  100. package/dist/filterDOMProps-EDDcM64A.js +0 -28
  101. package/dist/icons/block-icon.js +0 -42
  102. package/dist/icons/generic-color-swatch.js +0 -113
  103. package/dist/icons/icons.js +0 -30371
  104. package/dist/icons/index.js +0 -11
  105. package/dist/icons/jsx-svg.js +0 -50
  106. package/dist/index-641ee5b8.esm-DIuJijyT.js +0 -3137
  107. package/dist/index-BKGQ6jGS.js +0 -44
  108. package/dist/index-CFozsmNS.js +0 -28321
  109. package/dist/index.js +0 -139
  110. package/dist/lite-DVmmD_-j.js +0 -7
  111. package/dist/modifiers.esm-BuJQPI1X.js +0 -31
  112. package/dist/multi-select-components-Sp-JEFEX.js +0 -3744
  113. package/dist/number-GajL10e1.js +0 -36
  114. package/dist/react-jsx-parser.min-DZCiis5V.js +0 -11753
  115. package/dist/react-select-async.esm-Bql4G5iV.js +0 -107
  116. package/dist/react-select.esm-B_TudhTU.js +0 -15
  117. package/dist/style-admin.js +0 -1
  118. package/dist/style-editor.js +0 -1
  119. package/dist/style.js +0 -1
  120. package/dist/textSelection-0UUS8Yfg.js +0 -46
  121. package/dist/useButton-Cg474OYB.js +0 -71
  122. package/dist/useEvent-B0b-6KBr.js +0 -23
  123. package/dist/useFocusRing-CV5l3lf6.js +0 -107
  124. package/dist/useFormReset-C5OggHsw.js +0 -22
  125. package/dist/useFormValidation-DhDNSjws.js +0 -224
  126. package/dist/useHover-DwDr6ozG.js +0 -900
  127. package/dist/useLabel-D7HkNEHT.js +0 -27
  128. package/dist/useLabels-D8cxd1Z8.js +0 -23
  129. package/dist/useListState-DVr6aYd_.js +0 -161
  130. package/dist/useLocalizedStringFormatter-CFP1YZWQ.js +0 -121
  131. package/dist/useNumberField-TwM0Z9D1.js +0 -1204
  132. package/dist/useNumberFormatter-321rAb4J.js +0 -13
  133. package/dist/usePress-Cucx-xSA.js +0 -664
  134. package/dist/useSingleSelectListState-CMGsRHHh.js +0 -38
  135. package/dist/useToggle-C0I3vs0g.js +0 -59
  136. package/dist/useToggleState-CmQX3SoX.js +0 -19
  137. package/dist/utilities/array-helpers.js +0 -56
  138. package/dist/utilities/debounce-throttle.js +0 -123
  139. package/dist/utilities/es-dash.js +0 -376
  140. package/dist/utilities/index.js +0 -27
  141. package/dist/utilities/text-helpers.js +0 -136
  142. package/dist/utils-DkCSC521.js +0 -370
  143. package/dist/wp/wp-font-enhancements.js +0 -1
  144. package/dist/wp/wp-ui-enhancements.js +0 -1
@@ -1,900 +0,0 @@
1
- import React__default, { useRef, useCallback, useEffect, useState, useContext, useMemo } from "react";
2
- import { k as $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c, f as $8ae05eaa5c114e9c$export$7f54fc3180508a52, n as $b5e257d569688ac6$export$535bd6ca7f90a273, l as $df56164dff5785e2$export$4338b53315abf666, d as $3ef42575df84b30b$export$9d1611c77c2fe928 } from "./utils-DkCSC521.js";
3
- const $431fbd86ca7dc216$export$b204af158042fbac = (el) => {
4
- var _el_ownerDocument;
5
- return (_el_ownerDocument = el === null || el === void 0 ? void 0 : el.ownerDocument) !== null && _el_ownerDocument !== void 0 ? _el_ownerDocument : document;
6
- };
7
- const $431fbd86ca7dc216$export$f21a1ffae260145a = (el) => {
8
- if (el && "window" in el && el.window === el) return el;
9
- const doc = $431fbd86ca7dc216$export$b204af158042fbac(el);
10
- return doc.defaultView || window;
11
- };
12
- function $431fbd86ca7dc216$var$isNode(value) {
13
- return value !== null && typeof value === "object" && "nodeType" in value && typeof value.nodeType === "number";
14
- }
15
- function $431fbd86ca7dc216$export$af51f0f06c0f328a(node) {
16
- return $431fbd86ca7dc216$var$isNode(node) && node.nodeType === Node.DOCUMENT_FRAGMENT_NODE && "host" in node;
17
- }
18
- let $f4e2df6bd15f8569$var$_shadowDOM = false;
19
- function $f4e2df6bd15f8569$export$98658e8c59125e6a() {
20
- return $f4e2df6bd15f8569$var$_shadowDOM;
21
- }
22
- function $d4ee10de306f2510$export$4282f70798064fe0(node, otherNode) {
23
- if (!$f4e2df6bd15f8569$export$98658e8c59125e6a()) return otherNode && node ? node.contains(otherNode) : false;
24
- if (!node || !otherNode) return false;
25
- let currentNode = otherNode;
26
- while (currentNode !== null) {
27
- if (currentNode === node) return true;
28
- if (currentNode.tagName === "SLOT" && currentNode.assignedSlot)
29
- currentNode = currentNode.assignedSlot.parentNode;
30
- else if ($431fbd86ca7dc216$export$af51f0f06c0f328a(currentNode))
31
- currentNode = currentNode.host;
32
- else currentNode = currentNode.parentNode;
33
- }
34
- return false;
35
- }
36
- const $d4ee10de306f2510$export$cd4e5573fbe2b576 = (doc = document) => {
37
- var _activeElement_shadowRoot;
38
- if (!$f4e2df6bd15f8569$export$98658e8c59125e6a()) return doc.activeElement;
39
- let activeElement = doc.activeElement;
40
- while (activeElement && "shadowRoot" in activeElement && ((_activeElement_shadowRoot = activeElement.shadowRoot) === null || _activeElement_shadowRoot === void 0 ? void 0 : _activeElement_shadowRoot.activeElement)) activeElement = activeElement.shadowRoot.activeElement;
41
- return activeElement;
42
- };
43
- function $d4ee10de306f2510$export$e58f029f0fbfdb29(event) {
44
- if ($f4e2df6bd15f8569$export$98658e8c59125e6a() && event.target.shadowRoot) {
45
- if (event.composedPath) return event.composedPath()[0];
46
- }
47
- return event.target;
48
- }
49
- function $7215afc6de606d6b$export$de79e2c695e052f3(element) {
50
- if ($7215afc6de606d6b$var$supportsPreventScroll()) element.focus({
51
- preventScroll: true
52
- });
53
- else {
54
- let scrollableElements = $7215afc6de606d6b$var$getScrollableElements(element);
55
- element.focus();
56
- $7215afc6de606d6b$var$restoreScrollPosition(scrollableElements);
57
- }
58
- }
59
- let $7215afc6de606d6b$var$supportsPreventScrollCached = null;
60
- function $7215afc6de606d6b$var$supportsPreventScroll() {
61
- if ($7215afc6de606d6b$var$supportsPreventScrollCached == null) {
62
- $7215afc6de606d6b$var$supportsPreventScrollCached = false;
63
- try {
64
- let focusElem = document.createElement("div");
65
- focusElem.focus({
66
- get preventScroll() {
67
- $7215afc6de606d6b$var$supportsPreventScrollCached = true;
68
- return true;
69
- }
70
- });
71
- } catch {
72
- }
73
- }
74
- return $7215afc6de606d6b$var$supportsPreventScrollCached;
75
- }
76
- function $7215afc6de606d6b$var$getScrollableElements(element) {
77
- let parent = element.parentNode;
78
- let scrollableElements = [];
79
- let rootScrollingElement = document.scrollingElement || document.documentElement;
80
- while (parent instanceof HTMLElement && parent !== rootScrollingElement) {
81
- if (parent.offsetHeight < parent.scrollHeight || parent.offsetWidth < parent.scrollWidth) scrollableElements.push({
82
- element: parent,
83
- scrollTop: parent.scrollTop,
84
- scrollLeft: parent.scrollLeft
85
- });
86
- parent = parent.parentNode;
87
- }
88
- if (rootScrollingElement instanceof HTMLElement) scrollableElements.push({
89
- element: rootScrollingElement,
90
- scrollTop: rootScrollingElement.scrollTop,
91
- scrollLeft: rootScrollingElement.scrollLeft
92
- });
93
- return scrollableElements;
94
- }
95
- function $7215afc6de606d6b$var$restoreScrollPosition(scrollableElements) {
96
- for (let { element, scrollTop, scrollLeft } of scrollableElements) {
97
- element.scrollTop = scrollTop;
98
- element.scrollLeft = scrollLeft;
99
- }
100
- }
101
- function $c87311424ea30a05$var$testUserAgent(re) {
102
- var _window_navigator_userAgentData;
103
- if (typeof window === "undefined" || window.navigator == null) return false;
104
- return ((_window_navigator_userAgentData = window.navigator["userAgentData"]) === null || _window_navigator_userAgentData === void 0 ? void 0 : _window_navigator_userAgentData.brands.some((brand) => re.test(brand.brand))) || re.test(window.navigator.userAgent);
105
- }
106
- function $c87311424ea30a05$var$testPlatform(re) {
107
- var _window_navigator_userAgentData;
108
- return typeof window !== "undefined" && window.navigator != null ? re.test(((_window_navigator_userAgentData = window.navigator["userAgentData"]) === null || _window_navigator_userAgentData === void 0 ? void 0 : _window_navigator_userAgentData.platform) || window.navigator.platform) : false;
109
- }
110
- function $c87311424ea30a05$var$cached(fn) {
111
- let res = null;
112
- return () => {
113
- if (res == null) res = fn();
114
- return res;
115
- };
116
- }
117
- const $c87311424ea30a05$export$9ac100e40613ea10 = $c87311424ea30a05$var$cached(function() {
118
- return $c87311424ea30a05$var$testPlatform(/^Mac/i);
119
- });
120
- const $c87311424ea30a05$export$186c6964ca17d99 = $c87311424ea30a05$var$cached(function() {
121
- return $c87311424ea30a05$var$testPlatform(/^iPhone/i);
122
- });
123
- const $c87311424ea30a05$export$7bef049ce92e4224 = $c87311424ea30a05$var$cached(function() {
124
- return $c87311424ea30a05$var$testPlatform(/^iPad/i) || // iPadOS 13 lies and says it's a Mac, but we can distinguish by detecting touch support.
125
- $c87311424ea30a05$export$9ac100e40613ea10() && navigator.maxTouchPoints > 1;
126
- });
127
- const $c87311424ea30a05$export$fedb369cb70207f1 = $c87311424ea30a05$var$cached(function() {
128
- return $c87311424ea30a05$export$186c6964ca17d99() || $c87311424ea30a05$export$7bef049ce92e4224();
129
- });
130
- const $c87311424ea30a05$export$e1865c3bedcd822b = $c87311424ea30a05$var$cached(function() {
131
- return $c87311424ea30a05$export$9ac100e40613ea10() || $c87311424ea30a05$export$fedb369cb70207f1();
132
- });
133
- const $c87311424ea30a05$export$78551043582a6a98 = $c87311424ea30a05$var$cached(function() {
134
- return $c87311424ea30a05$var$testUserAgent(/AppleWebKit/i) && !$c87311424ea30a05$export$6446a186d09e379e();
135
- });
136
- const $c87311424ea30a05$export$6446a186d09e379e = $c87311424ea30a05$var$cached(function() {
137
- return $c87311424ea30a05$var$testUserAgent(/Chrome/i);
138
- });
139
- const $c87311424ea30a05$export$a11b0059900ceec8 = $c87311424ea30a05$var$cached(function() {
140
- return $c87311424ea30a05$var$testUserAgent(/Android/i);
141
- });
142
- const $c87311424ea30a05$export$b7d78993b74f766d = $c87311424ea30a05$var$cached(function() {
143
- return $c87311424ea30a05$var$testUserAgent(/Firefox/i);
144
- });
145
- let $bbed8b41f857bcc0$var$transitionsByElement = /* @__PURE__ */ new Map();
146
- let $bbed8b41f857bcc0$var$transitionCallbacks = /* @__PURE__ */ new Set();
147
- function $bbed8b41f857bcc0$var$setupGlobalEvents() {
148
- if (typeof window === "undefined") return;
149
- function isTransitionEvent(event) {
150
- return "propertyName" in event;
151
- }
152
- let onTransitionStart = (e) => {
153
- if (!isTransitionEvent(e) || !e.target) return;
154
- let transitions = $bbed8b41f857bcc0$var$transitionsByElement.get(e.target);
155
- if (!transitions) {
156
- transitions = /* @__PURE__ */ new Set();
157
- $bbed8b41f857bcc0$var$transitionsByElement.set(e.target, transitions);
158
- e.target.addEventListener("transitioncancel", onTransitionEnd, {
159
- once: true
160
- });
161
- }
162
- transitions.add(e.propertyName);
163
- };
164
- let onTransitionEnd = (e) => {
165
- if (!isTransitionEvent(e) || !e.target) return;
166
- let properties = $bbed8b41f857bcc0$var$transitionsByElement.get(e.target);
167
- if (!properties) return;
168
- properties.delete(e.propertyName);
169
- if (properties.size === 0) {
170
- e.target.removeEventListener("transitioncancel", onTransitionEnd);
171
- $bbed8b41f857bcc0$var$transitionsByElement.delete(e.target);
172
- }
173
- if ($bbed8b41f857bcc0$var$transitionsByElement.size === 0) {
174
- for (let cb of $bbed8b41f857bcc0$var$transitionCallbacks) cb();
175
- $bbed8b41f857bcc0$var$transitionCallbacks.clear();
176
- }
177
- };
178
- document.body.addEventListener("transitionrun", onTransitionStart);
179
- document.body.addEventListener("transitionend", onTransitionEnd);
180
- }
181
- if (typeof document !== "undefined") {
182
- if (document.readyState !== "loading") $bbed8b41f857bcc0$var$setupGlobalEvents();
183
- else document.addEventListener("DOMContentLoaded", $bbed8b41f857bcc0$var$setupGlobalEvents);
184
- }
185
- function $bbed8b41f857bcc0$export$24490316f764c430(fn) {
186
- requestAnimationFrame(() => {
187
- if ($bbed8b41f857bcc0$var$transitionsByElement.size === 0) fn();
188
- else $bbed8b41f857bcc0$var$transitionCallbacks.add(fn);
189
- });
190
- }
191
- function $03deb23ff14920c4$export$4eaf04e54aa8eed6() {
192
- let globalListeners = useRef(/* @__PURE__ */ new Map());
193
- let addGlobalListener = useCallback((eventTarget, type, listener, options) => {
194
- let fn = (options === null || options === void 0 ? void 0 : options.once) ? (...args) => {
195
- globalListeners.current.delete(listener);
196
- listener(...args);
197
- } : listener;
198
- globalListeners.current.set(listener, {
199
- type,
200
- eventTarget,
201
- fn,
202
- options
203
- });
204
- eventTarget.addEventListener(type, fn, options);
205
- }, []);
206
- let removeGlobalListener = useCallback((eventTarget, type, listener, options) => {
207
- var _globalListeners_current_get;
208
- let fn = ((_globalListeners_current_get = globalListeners.current.get(listener)) === null || _globalListeners_current_get === void 0 ? void 0 : _globalListeners_current_get.fn) || listener;
209
- eventTarget.removeEventListener(type, fn, options);
210
- globalListeners.current.delete(listener);
211
- }, []);
212
- let removeAllGlobalListeners = useCallback(() => {
213
- globalListeners.current.forEach((value, key) => {
214
- removeGlobalListener(value.eventTarget, value.type, key, value.options);
215
- });
216
- }, [
217
- removeGlobalListener
218
- ]);
219
- useEffect(() => {
220
- return removeAllGlobalListeners;
221
- }, [
222
- removeAllGlobalListeners
223
- ]);
224
- return {
225
- addGlobalListener,
226
- removeGlobalListener,
227
- removeAllGlobalListeners
228
- };
229
- }
230
- function $e7801be82b4b2a53$export$4debdb1a3f0fa79e(context, ref) {
231
- $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c(() => {
232
- if (context && context.ref && ref) {
233
- context.ref.current = ref.current;
234
- return () => {
235
- if (context.ref) context.ref.current = null;
236
- };
237
- }
238
- });
239
- }
240
- function $6a7db85432448f7f$export$60278871457622de(event) {
241
- if (event.mozInputSource === 0 && event.isTrusted) return true;
242
- if ($c87311424ea30a05$export$a11b0059900ceec8() && event.pointerType) return event.type === "click" && event.buttons === 1;
243
- return event.detail === 0 && !event.pointerType;
244
- }
245
- function $6a7db85432448f7f$export$29bf1b5f2c56cf63(event) {
246
- return !$c87311424ea30a05$export$a11b0059900ceec8() && event.width === 0 && event.height === 0 || event.width === 1 && event.height === 1 && event.pressure === 0 && event.detail === 0 && event.pointerType === "mouse";
247
- }
248
- const $b4b717babfbb907b$var$focusableElements = [
249
- "input:not([disabled]):not([type=hidden])",
250
- "select:not([disabled])",
251
- "textarea:not([disabled])",
252
- "button:not([disabled])",
253
- "a[href]",
254
- "area[href]",
255
- "summary",
256
- "iframe",
257
- "object",
258
- "embed",
259
- "audio[controls]",
260
- "video[controls]",
261
- '[contenteditable]:not([contenteditable^="false"])'
262
- ];
263
- const $b4b717babfbb907b$var$FOCUSABLE_ELEMENT_SELECTOR = $b4b717babfbb907b$var$focusableElements.join(":not([hidden]),") + ",[tabindex]:not([disabled]):not([hidden])";
264
- $b4b717babfbb907b$var$focusableElements.push('[tabindex]:not([tabindex="-1"]):not([disabled])');
265
- const $b4b717babfbb907b$var$TABBABLE_ELEMENT_SELECTOR = $b4b717babfbb907b$var$focusableElements.join(':not([hidden]):not([tabindex="-1"]),');
266
- function $b4b717babfbb907b$export$4c063cf1350e6fed(element) {
267
- return element.matches($b4b717babfbb907b$var$FOCUSABLE_ELEMENT_SELECTOR);
268
- }
269
- function $b4b717babfbb907b$export$bebd5a1431fec25d(element) {
270
- return element.matches($b4b717babfbb907b$var$TABBABLE_ELEMENT_SELECTOR);
271
- }
272
- function $458b0a5536c1a7cf$export$40bfa8c7b0832715(value, defaultValue, onChange) {
273
- let [stateValue, setStateValue] = useState(value || defaultValue);
274
- let isControlledRef = useRef(value !== void 0);
275
- let isControlled = value !== void 0;
276
- useEffect(() => {
277
- let wasControlled = isControlledRef.current;
278
- if (wasControlled !== isControlled) console.warn(`WARN: A component changed from ${wasControlled ? "controlled" : "uncontrolled"} to ${isControlled ? "controlled" : "uncontrolled"}.`);
279
- isControlledRef.current = isControlled;
280
- }, [
281
- isControlled
282
- ]);
283
- let currentValue = isControlled ? value : stateValue;
284
- let setValue = useCallback((value2, ...args) => {
285
- let onChangeCaller = (value3, ...onChangeArgs) => {
286
- if (onChange) {
287
- if (!Object.is(currentValue, value3)) onChange(value3, ...onChangeArgs);
288
- }
289
- if (!isControlled)
290
- currentValue = value3;
291
- };
292
- if (typeof value2 === "function") {
293
- console.warn("We can not support a function callback. See Github Issues for details https://github.com/adobe/react-spectrum/issues/2320");
294
- let updateFunction = (oldValue, ...functionArgs) => {
295
- let interceptedValue = value2(isControlled ? currentValue : oldValue, ...functionArgs);
296
- onChangeCaller(interceptedValue, ...args);
297
- if (!isControlled) return interceptedValue;
298
- return oldValue;
299
- };
300
- setStateValue(updateFunction);
301
- } else {
302
- if (!isControlled) setStateValue(value2);
303
- onChangeCaller(value2, ...args);
304
- }
305
- }, [
306
- isControlled,
307
- currentValue,
308
- onChange
309
- ]);
310
- return [
311
- currentValue,
312
- setValue
313
- ];
314
- }
315
- class $8a9cb279dc87e130$export$905e7fc544a71f36 {
316
- isDefaultPrevented() {
317
- return this.nativeEvent.defaultPrevented;
318
- }
319
- preventDefault() {
320
- this.defaultPrevented = true;
321
- this.nativeEvent.preventDefault();
322
- }
323
- stopPropagation() {
324
- this.nativeEvent.stopPropagation();
325
- this.isPropagationStopped = () => true;
326
- }
327
- isPropagationStopped() {
328
- return false;
329
- }
330
- persist() {
331
- }
332
- constructor(type, nativeEvent) {
333
- this.nativeEvent = nativeEvent;
334
- this.target = nativeEvent.target;
335
- this.currentTarget = nativeEvent.currentTarget;
336
- this.relatedTarget = nativeEvent.relatedTarget;
337
- this.bubbles = nativeEvent.bubbles;
338
- this.cancelable = nativeEvent.cancelable;
339
- this.defaultPrevented = nativeEvent.defaultPrevented;
340
- this.eventPhase = nativeEvent.eventPhase;
341
- this.isTrusted = nativeEvent.isTrusted;
342
- this.timeStamp = nativeEvent.timeStamp;
343
- this.type = type;
344
- }
345
- }
346
- function $8a9cb279dc87e130$export$715c682d09d639cc(onBlur) {
347
- let stateRef = useRef({
348
- isFocused: false,
349
- observer: null
350
- });
351
- $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c(() => {
352
- const state = stateRef.current;
353
- return () => {
354
- if (state.observer) {
355
- state.observer.disconnect();
356
- state.observer = null;
357
- }
358
- };
359
- }, []);
360
- let dispatchBlur = $8ae05eaa5c114e9c$export$7f54fc3180508a52((e) => {
361
- onBlur === null || onBlur === void 0 ? void 0 : onBlur(e);
362
- });
363
- return useCallback((e) => {
364
- if (e.target instanceof HTMLButtonElement || e.target instanceof HTMLInputElement || e.target instanceof HTMLTextAreaElement || e.target instanceof HTMLSelectElement) {
365
- stateRef.current.isFocused = true;
366
- let target = e.target;
367
- let onBlurHandler = (e2) => {
368
- stateRef.current.isFocused = false;
369
- if (target.disabled)
370
- dispatchBlur(new $8a9cb279dc87e130$export$905e7fc544a71f36("blur", e2));
371
- if (stateRef.current.observer) {
372
- stateRef.current.observer.disconnect();
373
- stateRef.current.observer = null;
374
- }
375
- };
376
- target.addEventListener("focusout", onBlurHandler, {
377
- once: true
378
- });
379
- stateRef.current.observer = new MutationObserver(() => {
380
- if (stateRef.current.isFocused && target.disabled) {
381
- var _stateRef_current_observer;
382
- (_stateRef_current_observer = stateRef.current.observer) === null || _stateRef_current_observer === void 0 ? void 0 : _stateRef_current_observer.disconnect();
383
- let relatedTargetEl = target === document.activeElement ? null : document.activeElement;
384
- target.dispatchEvent(new FocusEvent("blur", {
385
- relatedTarget: relatedTargetEl
386
- }));
387
- target.dispatchEvent(new FocusEvent("focusout", {
388
- bubbles: true,
389
- relatedTarget: relatedTargetEl
390
- }));
391
- }
392
- });
393
- stateRef.current.observer.observe(target, {
394
- attributes: true,
395
- attributeFilter: [
396
- "disabled"
397
- ]
398
- });
399
- }
400
- }, [
401
- dispatchBlur
402
- ]);
403
- }
404
- let $8a9cb279dc87e130$export$fda7da73ab5d4c48 = false;
405
- function $8a9cb279dc87e130$export$cabe61c495ee3649(target) {
406
- while (target && !$b4b717babfbb907b$export$4c063cf1350e6fed(target)) target = target.parentElement;
407
- let window2 = $431fbd86ca7dc216$export$f21a1ffae260145a(target);
408
- let activeElement = window2.document.activeElement;
409
- if (!activeElement || activeElement === target) return;
410
- $8a9cb279dc87e130$export$fda7da73ab5d4c48 = true;
411
- let isRefocusing = false;
412
- let onBlur = (e) => {
413
- if (e.target === activeElement || isRefocusing) e.stopImmediatePropagation();
414
- };
415
- let onFocusOut = (e) => {
416
- if (e.target === activeElement || isRefocusing) {
417
- e.stopImmediatePropagation();
418
- if (!target && !isRefocusing) {
419
- isRefocusing = true;
420
- $7215afc6de606d6b$export$de79e2c695e052f3(activeElement);
421
- cleanup();
422
- }
423
- }
424
- };
425
- let onFocus = (e) => {
426
- if (e.target === target || isRefocusing) e.stopImmediatePropagation();
427
- };
428
- let onFocusIn = (e) => {
429
- if (e.target === target || isRefocusing) {
430
- e.stopImmediatePropagation();
431
- if (!isRefocusing) {
432
- isRefocusing = true;
433
- $7215afc6de606d6b$export$de79e2c695e052f3(activeElement);
434
- cleanup();
435
- }
436
- }
437
- };
438
- window2.addEventListener("blur", onBlur, true);
439
- window2.addEventListener("focusout", onFocusOut, true);
440
- window2.addEventListener("focusin", onFocusIn, true);
441
- window2.addEventListener("focus", onFocus, true);
442
- let cleanup = () => {
443
- cancelAnimationFrame(raf);
444
- window2.removeEventListener("blur", onBlur, true);
445
- window2.removeEventListener("focusout", onFocusOut, true);
446
- window2.removeEventListener("focusin", onFocusIn, true);
447
- window2.removeEventListener("focus", onFocus, true);
448
- $8a9cb279dc87e130$export$fda7da73ab5d4c48 = false;
449
- isRefocusing = false;
450
- };
451
- let raf = requestAnimationFrame(cleanup);
452
- return cleanup;
453
- }
454
- let $507fabe10e71c6fb$var$currentModality = null;
455
- let $507fabe10e71c6fb$var$changeHandlers = /* @__PURE__ */ new Set();
456
- let $507fabe10e71c6fb$export$d90243b58daecda7 = /* @__PURE__ */ new Map();
457
- let $507fabe10e71c6fb$var$hasEventBeforeFocus = false;
458
- let $507fabe10e71c6fb$var$hasBlurredWindowRecently = false;
459
- const $507fabe10e71c6fb$var$FOCUS_VISIBLE_INPUT_KEYS = {
460
- Tab: true,
461
- Escape: true
462
- };
463
- function $507fabe10e71c6fb$var$triggerChangeHandlers(modality, e) {
464
- for (let handler of $507fabe10e71c6fb$var$changeHandlers) handler(modality, e);
465
- }
466
- function $507fabe10e71c6fb$var$isValidKey(e) {
467
- return !(e.metaKey || !$c87311424ea30a05$export$9ac100e40613ea10() && e.altKey || e.ctrlKey || e.key === "Control" || e.key === "Shift" || e.key === "Meta");
468
- }
469
- function $507fabe10e71c6fb$var$handleKeyboardEvent(e) {
470
- $507fabe10e71c6fb$var$hasEventBeforeFocus = true;
471
- if ($507fabe10e71c6fb$var$isValidKey(e)) {
472
- $507fabe10e71c6fb$var$currentModality = "keyboard";
473
- $507fabe10e71c6fb$var$triggerChangeHandlers("keyboard", e);
474
- }
475
- }
476
- function $507fabe10e71c6fb$var$handlePointerEvent(e) {
477
- $507fabe10e71c6fb$var$currentModality = "pointer";
478
- if (e.type === "mousedown" || e.type === "pointerdown") {
479
- $507fabe10e71c6fb$var$hasEventBeforeFocus = true;
480
- $507fabe10e71c6fb$var$triggerChangeHandlers("pointer", e);
481
- }
482
- }
483
- function $507fabe10e71c6fb$var$handleClickEvent(e) {
484
- if ($6a7db85432448f7f$export$60278871457622de(e)) {
485
- $507fabe10e71c6fb$var$hasEventBeforeFocus = true;
486
- $507fabe10e71c6fb$var$currentModality = "virtual";
487
- }
488
- }
489
- function $507fabe10e71c6fb$var$handleFocusEvent(e) {
490
- if (e.target === window || e.target === document || $8a9cb279dc87e130$export$fda7da73ab5d4c48 || !e.isTrusted) return;
491
- if (!$507fabe10e71c6fb$var$hasEventBeforeFocus && !$507fabe10e71c6fb$var$hasBlurredWindowRecently) {
492
- $507fabe10e71c6fb$var$currentModality = "virtual";
493
- $507fabe10e71c6fb$var$triggerChangeHandlers("virtual", e);
494
- }
495
- $507fabe10e71c6fb$var$hasEventBeforeFocus = false;
496
- $507fabe10e71c6fb$var$hasBlurredWindowRecently = false;
497
- }
498
- function $507fabe10e71c6fb$var$handleWindowBlur() {
499
- if ($8a9cb279dc87e130$export$fda7da73ab5d4c48) return;
500
- $507fabe10e71c6fb$var$hasEventBeforeFocus = false;
501
- $507fabe10e71c6fb$var$hasBlurredWindowRecently = true;
502
- }
503
- function $507fabe10e71c6fb$var$setupGlobalFocusEvents(element) {
504
- if (typeof window === "undefined" || $507fabe10e71c6fb$export$d90243b58daecda7.get($431fbd86ca7dc216$export$f21a1ffae260145a(element))) return;
505
- const windowObject = $431fbd86ca7dc216$export$f21a1ffae260145a(element);
506
- const documentObject = $431fbd86ca7dc216$export$b204af158042fbac(element);
507
- let focus = windowObject.HTMLElement.prototype.focus;
508
- windowObject.HTMLElement.prototype.focus = function() {
509
- $507fabe10e71c6fb$var$hasEventBeforeFocus = true;
510
- focus.apply(this, arguments);
511
- };
512
- documentObject.addEventListener("keydown", $507fabe10e71c6fb$var$handleKeyboardEvent, true);
513
- documentObject.addEventListener("keyup", $507fabe10e71c6fb$var$handleKeyboardEvent, true);
514
- documentObject.addEventListener("click", $507fabe10e71c6fb$var$handleClickEvent, true);
515
- windowObject.addEventListener("focus", $507fabe10e71c6fb$var$handleFocusEvent, true);
516
- windowObject.addEventListener("blur", $507fabe10e71c6fb$var$handleWindowBlur, false);
517
- if (typeof PointerEvent !== "undefined") {
518
- documentObject.addEventListener("pointerdown", $507fabe10e71c6fb$var$handlePointerEvent, true);
519
- documentObject.addEventListener("pointermove", $507fabe10e71c6fb$var$handlePointerEvent, true);
520
- documentObject.addEventListener("pointerup", $507fabe10e71c6fb$var$handlePointerEvent, true);
521
- } else {
522
- documentObject.addEventListener("mousedown", $507fabe10e71c6fb$var$handlePointerEvent, true);
523
- documentObject.addEventListener("mousemove", $507fabe10e71c6fb$var$handlePointerEvent, true);
524
- documentObject.addEventListener("mouseup", $507fabe10e71c6fb$var$handlePointerEvent, true);
525
- }
526
- windowObject.addEventListener("beforeunload", () => {
527
- $507fabe10e71c6fb$var$tearDownWindowFocusTracking(element);
528
- }, {
529
- once: true
530
- });
531
- $507fabe10e71c6fb$export$d90243b58daecda7.set(windowObject, {
532
- focus
533
- });
534
- }
535
- const $507fabe10e71c6fb$var$tearDownWindowFocusTracking = (element, loadListener) => {
536
- const windowObject = $431fbd86ca7dc216$export$f21a1ffae260145a(element);
537
- const documentObject = $431fbd86ca7dc216$export$b204af158042fbac(element);
538
- if (loadListener) documentObject.removeEventListener("DOMContentLoaded", loadListener);
539
- if (!$507fabe10e71c6fb$export$d90243b58daecda7.has(windowObject)) return;
540
- windowObject.HTMLElement.prototype.focus = $507fabe10e71c6fb$export$d90243b58daecda7.get(windowObject).focus;
541
- documentObject.removeEventListener("keydown", $507fabe10e71c6fb$var$handleKeyboardEvent, true);
542
- documentObject.removeEventListener("keyup", $507fabe10e71c6fb$var$handleKeyboardEvent, true);
543
- documentObject.removeEventListener("click", $507fabe10e71c6fb$var$handleClickEvent, true);
544
- windowObject.removeEventListener("focus", $507fabe10e71c6fb$var$handleFocusEvent, true);
545
- windowObject.removeEventListener("blur", $507fabe10e71c6fb$var$handleWindowBlur, false);
546
- if (typeof PointerEvent !== "undefined") {
547
- documentObject.removeEventListener("pointerdown", $507fabe10e71c6fb$var$handlePointerEvent, true);
548
- documentObject.removeEventListener("pointermove", $507fabe10e71c6fb$var$handlePointerEvent, true);
549
- documentObject.removeEventListener("pointerup", $507fabe10e71c6fb$var$handlePointerEvent, true);
550
- } else {
551
- documentObject.removeEventListener("mousedown", $507fabe10e71c6fb$var$handlePointerEvent, true);
552
- documentObject.removeEventListener("mousemove", $507fabe10e71c6fb$var$handlePointerEvent, true);
553
- documentObject.removeEventListener("mouseup", $507fabe10e71c6fb$var$handlePointerEvent, true);
554
- }
555
- $507fabe10e71c6fb$export$d90243b58daecda7.delete(windowObject);
556
- };
557
- function $507fabe10e71c6fb$export$2f1888112f558a7d(element) {
558
- const documentObject = $431fbd86ca7dc216$export$b204af158042fbac(element);
559
- let loadListener;
560
- if (documentObject.readyState !== "loading") $507fabe10e71c6fb$var$setupGlobalFocusEvents(element);
561
- else {
562
- loadListener = () => {
563
- $507fabe10e71c6fb$var$setupGlobalFocusEvents(element);
564
- };
565
- documentObject.addEventListener("DOMContentLoaded", loadListener);
566
- }
567
- return () => $507fabe10e71c6fb$var$tearDownWindowFocusTracking(element, loadListener);
568
- }
569
- if (typeof document !== "undefined") $507fabe10e71c6fb$export$2f1888112f558a7d();
570
- function $507fabe10e71c6fb$export$b9b3dfddab17db27() {
571
- return $507fabe10e71c6fb$var$currentModality !== "pointer";
572
- }
573
- function $507fabe10e71c6fb$export$630ff653c5ada6a9() {
574
- return $507fabe10e71c6fb$var$currentModality;
575
- }
576
- function $507fabe10e71c6fb$export$8397ddfc504fdb9a(modality) {
577
- $507fabe10e71c6fb$var$currentModality = modality;
578
- $507fabe10e71c6fb$var$triggerChangeHandlers(modality, null);
579
- }
580
- function $507fabe10e71c6fb$export$98e20ec92f614cfe() {
581
- $507fabe10e71c6fb$var$setupGlobalFocusEvents();
582
- let [modality, setModality] = useState($507fabe10e71c6fb$var$currentModality);
583
- useEffect(() => {
584
- let handler = () => {
585
- setModality($507fabe10e71c6fb$var$currentModality);
586
- };
587
- $507fabe10e71c6fb$var$changeHandlers.add(handler);
588
- return () => {
589
- $507fabe10e71c6fb$var$changeHandlers.delete(handler);
590
- };
591
- }, []);
592
- return $b5e257d569688ac6$export$535bd6ca7f90a273() ? null : modality;
593
- }
594
- const $507fabe10e71c6fb$var$nonTextInputTypes = /* @__PURE__ */ new Set([
595
- "checkbox",
596
- "radio",
597
- "range",
598
- "color",
599
- "file",
600
- "image",
601
- "button",
602
- "submit",
603
- "reset"
604
- ]);
605
- function $507fabe10e71c6fb$var$isKeyboardFocusEvent(isTextInput, modality, e) {
606
- let document1 = $431fbd86ca7dc216$export$b204af158042fbac(e === null || e === void 0 ? void 0 : e.target);
607
- const IHTMLInputElement = typeof window !== "undefined" ? $431fbd86ca7dc216$export$f21a1ffae260145a(e === null || e === void 0 ? void 0 : e.target).HTMLInputElement : HTMLInputElement;
608
- const IHTMLTextAreaElement = typeof window !== "undefined" ? $431fbd86ca7dc216$export$f21a1ffae260145a(e === null || e === void 0 ? void 0 : e.target).HTMLTextAreaElement : HTMLTextAreaElement;
609
- const IHTMLElement = typeof window !== "undefined" ? $431fbd86ca7dc216$export$f21a1ffae260145a(e === null || e === void 0 ? void 0 : e.target).HTMLElement : HTMLElement;
610
- const IKeyboardEvent = typeof window !== "undefined" ? $431fbd86ca7dc216$export$f21a1ffae260145a(e === null || e === void 0 ? void 0 : e.target).KeyboardEvent : KeyboardEvent;
611
- isTextInput = isTextInput || document1.activeElement instanceof IHTMLInputElement && !$507fabe10e71c6fb$var$nonTextInputTypes.has(document1.activeElement.type) || document1.activeElement instanceof IHTMLTextAreaElement || document1.activeElement instanceof IHTMLElement && document1.activeElement.isContentEditable;
612
- return !(isTextInput && modality === "keyboard" && e instanceof IKeyboardEvent && !$507fabe10e71c6fb$var$FOCUS_VISIBLE_INPUT_KEYS[e.key]);
613
- }
614
- function $507fabe10e71c6fb$export$ec71b4b83ac08ec3(fn, deps, opts) {
615
- $507fabe10e71c6fb$var$setupGlobalFocusEvents();
616
- useEffect(() => {
617
- let handler = (modality, e) => {
618
- if (!$507fabe10e71c6fb$var$isKeyboardFocusEvent(!!(opts === null || opts === void 0 ? void 0 : opts.isTextInput), modality, e)) return;
619
- fn($507fabe10e71c6fb$export$b9b3dfddab17db27());
620
- };
621
- $507fabe10e71c6fb$var$changeHandlers.add(handler);
622
- return () => {
623
- $507fabe10e71c6fb$var$changeHandlers.delete(handler);
624
- };
625
- }, deps);
626
- }
627
- function $3ad3f6e1647bc98d$export$80f3e147d781571c(element) {
628
- const ownerDocument = $431fbd86ca7dc216$export$b204af158042fbac(element);
629
- const activeElement = $d4ee10de306f2510$export$cd4e5573fbe2b576(ownerDocument);
630
- if ($507fabe10e71c6fb$export$630ff653c5ada6a9() === "virtual") {
631
- let lastFocusedElement = activeElement;
632
- $bbed8b41f857bcc0$export$24490316f764c430(() => {
633
- if ($d4ee10de306f2510$export$cd4e5573fbe2b576(ownerDocument) === lastFocusedElement && element.isConnected) $7215afc6de606d6b$export$de79e2c695e052f3(element);
634
- });
635
- } else $7215afc6de606d6b$export$de79e2c695e052f3(element);
636
- }
637
- function $a1ea59d68270f0dd$export$f8168d8dd8fd66e6(props) {
638
- let { isDisabled, onFocus: onFocusProp, onBlur: onBlurProp, onFocusChange } = props;
639
- const onBlur = useCallback((e) => {
640
- if (e.target === e.currentTarget) {
641
- if (onBlurProp) onBlurProp(e);
642
- if (onFocusChange) onFocusChange(false);
643
- return true;
644
- }
645
- }, [
646
- onBlurProp,
647
- onFocusChange
648
- ]);
649
- const onSyntheticFocus = $8a9cb279dc87e130$export$715c682d09d639cc(onBlur);
650
- const onFocus = useCallback((e) => {
651
- const ownerDocument = $431fbd86ca7dc216$export$b204af158042fbac(e.target);
652
- const activeElement = ownerDocument ? $d4ee10de306f2510$export$cd4e5573fbe2b576(ownerDocument) : $d4ee10de306f2510$export$cd4e5573fbe2b576();
653
- if (e.target === e.currentTarget && activeElement === $d4ee10de306f2510$export$e58f029f0fbfdb29(e.nativeEvent)) {
654
- if (onFocusProp) onFocusProp(e);
655
- if (onFocusChange) onFocusChange(true);
656
- onSyntheticFocus(e);
657
- }
658
- }, [
659
- onFocusChange,
660
- onFocusProp,
661
- onSyntheticFocus
662
- ]);
663
- return {
664
- focusProps: {
665
- onFocus: !isDisabled && (onFocusProp || onFocusChange || onBlurProp) ? onFocus : void 0,
666
- onBlur: !isDisabled && (onBlurProp || onFocusChange) ? onBlur : void 0
667
- }
668
- };
669
- }
670
- function $93925083ecbb358c$export$48d1ea6320830260(handler) {
671
- if (!handler) return void 0;
672
- let shouldStopPropagation = true;
673
- return (e) => {
674
- let event = {
675
- ...e,
676
- preventDefault() {
677
- e.preventDefault();
678
- },
679
- isDefaultPrevented() {
680
- return e.isDefaultPrevented();
681
- },
682
- stopPropagation() {
683
- if (shouldStopPropagation) console.error("stopPropagation is now the default behavior for events in React Spectrum. You can use continuePropagation() to revert this behavior.");
684
- else shouldStopPropagation = true;
685
- },
686
- continuePropagation() {
687
- shouldStopPropagation = false;
688
- },
689
- isPropagationStopped() {
690
- return shouldStopPropagation;
691
- }
692
- };
693
- handler(event);
694
- if (shouldStopPropagation) e.stopPropagation();
695
- };
696
- }
697
- function $46d819fcbaf35654$export$8f71654801c2f7cd(props) {
698
- return {
699
- keyboardProps: props.isDisabled ? {} : {
700
- onKeyDown: $93925083ecbb358c$export$48d1ea6320830260(props.onKeyDown),
701
- onKeyUp: $93925083ecbb358c$export$48d1ea6320830260(props.onKeyUp)
702
- }
703
- };
704
- }
705
- let $f645667febf57a63$export$f9762fab77588ecb = /* @__PURE__ */ React__default.createContext(null);
706
- function $f645667febf57a63$var$useFocusableContext(ref) {
707
- let context = useContext($f645667febf57a63$export$f9762fab77588ecb) || {};
708
- $e7801be82b4b2a53$export$4debdb1a3f0fa79e(context, ref);
709
- let { ref: _, ...otherProps } = context;
710
- return otherProps;
711
- }
712
- const $f645667febf57a63$export$13f3202a3e5ddd5 = /* @__PURE__ */ React__default.forwardRef(function FocusableProvider(props, ref) {
713
- let { children, ...otherProps } = props;
714
- let objRef = $df56164dff5785e2$export$4338b53315abf666(ref);
715
- let context = {
716
- ...otherProps,
717
- ref: objRef
718
- };
719
- return /* @__PURE__ */ React__default.createElement($f645667febf57a63$export$f9762fab77588ecb.Provider, {
720
- value: context
721
- }, children);
722
- });
723
- function $f645667febf57a63$export$4c014de7c8940b4c(props, domRef) {
724
- let { focusProps } = $a1ea59d68270f0dd$export$f8168d8dd8fd66e6(props);
725
- let { keyboardProps } = $46d819fcbaf35654$export$8f71654801c2f7cd(props);
726
- let interactions = $3ef42575df84b30b$export$9d1611c77c2fe928(focusProps, keyboardProps);
727
- let domProps = $f645667febf57a63$var$useFocusableContext(domRef);
728
- let interactionProps = props.isDisabled ? {} : domProps;
729
- let autoFocusRef = useRef(props.autoFocus);
730
- useEffect(() => {
731
- if (autoFocusRef.current && domRef.current) $3ad3f6e1647bc98d$export$80f3e147d781571c(domRef.current);
732
- autoFocusRef.current = false;
733
- }, [
734
- domRef
735
- ]);
736
- let tabIndex = props.excludeFromTabOrder ? -1 : 0;
737
- if (props.isDisabled) tabIndex = void 0;
738
- return {
739
- focusableProps: $3ef42575df84b30b$export$9d1611c77c2fe928({
740
- ...interactions,
741
- tabIndex
742
- }, interactionProps)
743
- };
744
- }
745
- let $6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents = false;
746
- let $6179b936705e76d3$var$hoverCount = 0;
747
- function $6179b936705e76d3$var$setGlobalIgnoreEmulatedMouseEvents() {
748
- $6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents = true;
749
- setTimeout(() => {
750
- $6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents = false;
751
- }, 50);
752
- }
753
- function $6179b936705e76d3$var$handleGlobalPointerEvent(e) {
754
- if (e.pointerType === "touch") $6179b936705e76d3$var$setGlobalIgnoreEmulatedMouseEvents();
755
- }
756
- function $6179b936705e76d3$var$setupGlobalTouchEvents() {
757
- if (typeof document === "undefined") return;
758
- if (typeof PointerEvent !== "undefined") document.addEventListener("pointerup", $6179b936705e76d3$var$handleGlobalPointerEvent);
759
- else document.addEventListener("touchend", $6179b936705e76d3$var$setGlobalIgnoreEmulatedMouseEvents);
760
- $6179b936705e76d3$var$hoverCount++;
761
- return () => {
762
- $6179b936705e76d3$var$hoverCount--;
763
- if ($6179b936705e76d3$var$hoverCount > 0) return;
764
- if (typeof PointerEvent !== "undefined") document.removeEventListener("pointerup", $6179b936705e76d3$var$handleGlobalPointerEvent);
765
- else document.removeEventListener("touchend", $6179b936705e76d3$var$setGlobalIgnoreEmulatedMouseEvents);
766
- };
767
- }
768
- function $6179b936705e76d3$export$ae780daf29e6d456(props) {
769
- let { onHoverStart, onHoverChange, onHoverEnd, isDisabled } = props;
770
- let [isHovered, setHovered] = useState(false);
771
- let state = useRef({
772
- isHovered: false,
773
- ignoreEmulatedMouseEvents: false,
774
- pointerType: "",
775
- target: null
776
- }).current;
777
- useEffect($6179b936705e76d3$var$setupGlobalTouchEvents, []);
778
- let { addGlobalListener, removeAllGlobalListeners } = $03deb23ff14920c4$export$4eaf04e54aa8eed6();
779
- let { hoverProps, triggerHoverEnd } = useMemo(() => {
780
- let triggerHoverStart = (event, pointerType) => {
781
- state.pointerType = pointerType;
782
- if (isDisabled || pointerType === "touch" || state.isHovered || !event.currentTarget.contains(event.target)) return;
783
- state.isHovered = true;
784
- let target = event.currentTarget;
785
- state.target = target;
786
- addGlobalListener($431fbd86ca7dc216$export$b204af158042fbac(event.target), "pointerover", (e) => {
787
- if (state.isHovered && state.target && !$d4ee10de306f2510$export$4282f70798064fe0(state.target, e.target)) triggerHoverEnd2(e, e.pointerType);
788
- }, {
789
- capture: true
790
- });
791
- if (onHoverStart) onHoverStart({
792
- type: "hoverstart",
793
- target,
794
- pointerType
795
- });
796
- if (onHoverChange) onHoverChange(true);
797
- setHovered(true);
798
- };
799
- let triggerHoverEnd2 = (event, pointerType) => {
800
- let target = state.target;
801
- state.pointerType = "";
802
- state.target = null;
803
- if (pointerType === "touch" || !state.isHovered || !target) return;
804
- state.isHovered = false;
805
- removeAllGlobalListeners();
806
- if (onHoverEnd) onHoverEnd({
807
- type: "hoverend",
808
- target,
809
- pointerType
810
- });
811
- if (onHoverChange) onHoverChange(false);
812
- setHovered(false);
813
- };
814
- let hoverProps2 = {};
815
- if (typeof PointerEvent !== "undefined") {
816
- hoverProps2.onPointerEnter = (e) => {
817
- if ($6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents && e.pointerType === "mouse") return;
818
- triggerHoverStart(e, e.pointerType);
819
- };
820
- hoverProps2.onPointerLeave = (e) => {
821
- if (!isDisabled && e.currentTarget.contains(e.target)) triggerHoverEnd2(e, e.pointerType);
822
- };
823
- } else {
824
- hoverProps2.onTouchStart = () => {
825
- state.ignoreEmulatedMouseEvents = true;
826
- };
827
- hoverProps2.onMouseEnter = (e) => {
828
- if (!state.ignoreEmulatedMouseEvents && !$6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents) triggerHoverStart(e, "mouse");
829
- state.ignoreEmulatedMouseEvents = false;
830
- };
831
- hoverProps2.onMouseLeave = (e) => {
832
- if (!isDisabled && e.currentTarget.contains(e.target)) triggerHoverEnd2(e, "mouse");
833
- };
834
- }
835
- return {
836
- hoverProps: hoverProps2,
837
- triggerHoverEnd: triggerHoverEnd2
838
- };
839
- }, [
840
- onHoverStart,
841
- onHoverChange,
842
- onHoverEnd,
843
- isDisabled,
844
- state,
845
- addGlobalListener,
846
- removeAllGlobalListeners
847
- ]);
848
- useEffect(() => {
849
- if (isDisabled) triggerHoverEnd({
850
- currentTarget: state.target
851
- }, state.pointerType);
852
- }, [
853
- isDisabled
854
- ]);
855
- return {
856
- hoverProps,
857
- isHovered
858
- };
859
- }
860
- export {
861
- $6179b936705e76d3$export$ae780daf29e6d456 as $,
862
- $c87311424ea30a05$export$9ac100e40613ea10 as A,
863
- $c87311424ea30a05$export$78551043582a6a98 as B,
864
- $c87311424ea30a05$export$b7d78993b74f766d as C,
865
- $c87311424ea30a05$export$7bef049ce92e4224 as D,
866
- $6a7db85432448f7f$export$29bf1b5f2c56cf63 as E,
867
- $8a9cb279dc87e130$export$cabe61c495ee3649 as F,
868
- $6a7db85432448f7f$export$60278871457622de as G,
869
- $e7801be82b4b2a53$export$4debdb1a3f0fa79e as H,
870
- $f645667febf57a63$export$f9762fab77588ecb as I,
871
- $c87311424ea30a05$export$e1865c3bedcd822b as J,
872
- $c87311424ea30a05$export$186c6964ca17d99 as K,
873
- $507fabe10e71c6fb$export$98e20ec92f614cfe as L,
874
- $f645667febf57a63$export$4c014de7c8940b4c as a,
875
- $458b0a5536c1a7cf$export$40bfa8c7b0832715 as b,
876
- $c87311424ea30a05$export$fedb369cb70207f1 as c,
877
- $431fbd86ca7dc216$export$b204af158042fbac as d,
878
- $bbed8b41f857bcc0$export$24490316f764c430 as e,
879
- $431fbd86ca7dc216$export$f21a1ffae260145a as f,
880
- $03deb23ff14920c4$export$4eaf04e54aa8eed6 as g,
881
- $8a9cb279dc87e130$export$715c682d09d639cc as h,
882
- $d4ee10de306f2510$export$cd4e5573fbe2b576 as i,
883
- $d4ee10de306f2510$export$e58f029f0fbfdb29 as j,
884
- $d4ee10de306f2510$export$4282f70798064fe0 as k,
885
- $8a9cb279dc87e130$export$905e7fc544a71f36 as l,
886
- $507fabe10e71c6fb$export$b9b3dfddab17db27 as m,
887
- $507fabe10e71c6fb$export$ec71b4b83ac08ec3 as n,
888
- $a1ea59d68270f0dd$export$f8168d8dd8fd66e6 as o,
889
- $507fabe10e71c6fb$export$8397ddfc504fdb9a as p,
890
- $f4e2df6bd15f8569$export$98658e8c59125e6a as q,
891
- $b4b717babfbb907b$export$bebd5a1431fec25d as r,
892
- $b4b717babfbb907b$export$4c063cf1350e6fed as s,
893
- $3ad3f6e1647bc98d$export$80f3e147d781571c as t,
894
- $c87311424ea30a05$export$a11b0059900ceec8 as u,
895
- $c87311424ea30a05$export$6446a186d09e379e as v,
896
- $507fabe10e71c6fb$export$630ff653c5ada6a9 as w,
897
- $f645667febf57a63$export$13f3202a3e5ddd5 as x,
898
- $7215afc6de606d6b$export$de79e2c695e052f3 as y,
899
- $46d819fcbaf35654$export$8f71654801c2f7cd as z
900
- };