@easypost/easy-ui 1.0.0-alpha.4 → 1.0.0-alpha.6

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 (133) hide show
  1. package/Badge/index.js +32 -26
  2. package/Badge/index.mjs +32 -26
  3. package/Banner/index.js +15 -16
  4. package/Banner/index.mjs +15 -16
  5. package/Button/Button.d.ts +61 -0
  6. package/Button/Button.d.ts.map +1 -1
  7. package/Button/index.js +34 -69
  8. package/Button/index.mjs +33 -68
  9. package/CHANGELOG.md +21 -0
  10. package/Card/index.js +84 -5
  11. package/Card/index.mjs +84 -5
  12. package/Checkbox/index.js +84 -72
  13. package/Checkbox/index.mjs +84 -72
  14. package/CodeBlock/index.js +43 -49
  15. package/CodeBlock/index.mjs +43 -49
  16. package/DropdownButton/DropdownButton.d.ts +48 -0
  17. package/DropdownButton/DropdownButton.d.ts.map +1 -1
  18. package/DropdownButton/index.js +29 -101
  19. package/DropdownButton/index.mjs +29 -85
  20. package/HorizontalGrid/index.js +11 -31
  21. package/HorizontalGrid/index.mjs +11 -31
  22. package/HorizontalStack/index.js +48 -4
  23. package/HorizontalStack/index.mjs +48 -4
  24. package/Icon/Icon.d.ts +51 -0
  25. package/Icon/Icon.d.ts.map +1 -1
  26. package/Icon/index.js +38 -4
  27. package/Icon/index.mjs +38 -4
  28. package/IconButton/IconButton.d.ts +62 -0
  29. package/IconButton/IconButton.d.ts.map +1 -1
  30. package/IconButton/index.js +26 -43
  31. package/IconButton/index.mjs +25 -42
  32. package/InputField/Label.d.ts +2 -2
  33. package/InputField/index.js +282 -10
  34. package/InputField/index.mjs +266 -10
  35. package/InputField/utilities.d.ts +1 -1
  36. package/InputField/utilities.d.ts.map +1 -1
  37. package/Menu/MenuOverlay.d.ts.map +1 -1
  38. package/Menu/index.js +178 -1958
  39. package/Menu/index.mjs +168 -1948
  40. package/Menu/utilities.d.ts +11 -0
  41. package/Menu/utilities.d.ts.map +1 -0
  42. package/Notification/index.js +1534 -14
  43. package/Notification/index.mjs +1518 -14
  44. package/Provider/index.js +15 -15
  45. package/Provider/index.mjs +15 -15
  46. package/RadioGroup/index.js +63 -63
  47. package/RadioGroup/index.mjs +63 -63
  48. package/Select/Select.d.ts +88 -0
  49. package/Select/Select.d.ts.map +1 -0
  50. package/Select/Select.stories.d.ts +17 -0
  51. package/Select/Select.stories.d.ts.map +1 -0
  52. package/Select/Select.test.d.ts +2 -0
  53. package/Select/Select.test.d.ts.map +1 -0
  54. package/Select/SelectContext.d.ts +14 -0
  55. package/Select/SelectContext.d.ts.map +1 -0
  56. package/Select/SelectField.d.ts +62 -0
  57. package/Select/SelectField.d.ts.map +1 -0
  58. package/Select/SelectOption.d.ts +23 -0
  59. package/Select/SelectOption.d.ts.map +1 -0
  60. package/Select/SelectOverlay.d.ts +3 -0
  61. package/Select/SelectOverlay.d.ts.map +1 -0
  62. package/Select/SelectSection.d.ts +22 -0
  63. package/Select/SelectSection.d.ts.map +1 -0
  64. package/Select/SelectTrigger.d.ts +30 -0
  65. package/Select/SelectTrigger.d.ts.map +1 -0
  66. package/Select/index.d.ts +2 -0
  67. package/Select/index.d.ts.map +1 -0
  68. package/Select/index.js +816 -0
  69. package/Select/index.mjs +816 -0
  70. package/SelectorErrorTooltip/index.js +102 -11
  71. package/SelectorErrorTooltip/index.mjs +86 -11
  72. package/Text/index.js +85 -4
  73. package/Text/index.mjs +85 -4
  74. package/TextField/index.js +19 -38
  75. package/TextField/index.mjs +19 -38
  76. package/Textarea/index.js +20 -37
  77. package/Textarea/index.mjs +20 -37
  78. package/Theme/index.js +145 -9
  79. package/Theme/index.mjs +145 -9
  80. package/Toggle/index.js +51 -50
  81. package/Toggle/index.mjs +51 -50
  82. package/Tooltip/index.js +299 -10
  83. package/Tooltip/index.mjs +299 -10
  84. package/UnstyledButton/index.js +4 -4
  85. package/UnstyledButton/index.mjs +3 -3
  86. package/VerticalStack/index.js +13 -47
  87. package/VerticalStack/index.mjs +13 -47
  88. package/__chunks__/ExpandMore400-7c5263a4.mjs +49 -0
  89. package/__chunks__/ExpandMore400-92646971.js +65 -0
  90. package/__chunks__/InputIcon-2317befd.mjs +148 -0
  91. package/__chunks__/InputIcon-d3963cf8.js +147 -0
  92. package/__chunks__/{import-e7f45c7e.mjs → import-0561e1ba.mjs} +3 -3
  93. package/__chunks__/{import-b7971a11.mjs → import-19bc38ac.mjs} +72 -34
  94. package/__chunks__/{import-01299af6.js → import-24a482e1.js} +3 -2
  95. package/__chunks__/{import-baa3cd0c.mjs → import-29af6941.mjs} +4 -3
  96. package/__chunks__/{import-0d1b4d93.js → import-2b302763.js} +193 -141
  97. package/__chunks__/{import-ab878fb6.mjs → import-3d962a94.mjs} +205 -153
  98. package/__chunks__/{import-86330a7c.mjs → import-6a831ca1.mjs} +16 -15
  99. package/__chunks__/{import-7545401a.js → import-8b6c0bc7.js} +3 -3
  100. package/__chunks__/{import-63bf0645.js → import-a1e0f814.js} +47 -9
  101. package/__chunks__/{import-3ab42f86.js → import-a2023d8f.js} +35 -22
  102. package/__chunks__/{import-76076ca6.js → import-dea5a24d.js} +15 -14
  103. package/__chunks__/{import-856e0385.mjs → import-f1f4792a.mjs} +36 -23
  104. package/__chunks__/{UnstyledButton-883f0c6c.mjs → index-29d7bca9.mjs} +17 -42
  105. package/__chunks__/{UnstyledButton-96172ec0.js → index-3985350a.js} +17 -42
  106. package/__chunks__/{overlayscrollbars-react.es-c8369a03.mjs → overlayscrollbars-react.es-7f332a3b.mjs} +4 -4
  107. package/__chunks__/{overlayscrollbars-react.es-20563393.js → overlayscrollbars-react.es-f2a0bcff.js} +4 -4
  108. package/__chunks__/{real-module-e4cd2301.mjs → real-module-515df21d.mjs} +1 -1
  109. package/__chunks__/{real-module-ae2a4342.js → real-module-e36b1436.js} +1 -1
  110. package/__chunks__/useTriggerWidth-156b038a.js +2030 -0
  111. package/__chunks__/useTriggerWidth-addcd1d6.mjs +2031 -0
  112. package/package.json +11 -11
  113. package/style.css +1423 -1196
  114. package/utilities/css.js +14 -58
  115. package/utilities/css.mjs +14 -58
  116. package/__chunks__/Card-7bbd41e0.mjs +0 -110
  117. package/__chunks__/Card-dac53c75.js +0 -109
  118. package/__chunks__/HorizontalStack-a441c63f.mjs +0 -80
  119. package/__chunks__/HorizontalStack-a862839b.js +0 -79
  120. package/__chunks__/Icon-3d00481a.js +0 -44
  121. package/__chunks__/Icon-a75b5201.mjs +0 -45
  122. package/__chunks__/InputField-4fbaae06.js +0 -487
  123. package/__chunks__/InputField-a272f602.mjs +0 -472
  124. package/__chunks__/Notification-b8eafec6.mjs +0 -1456
  125. package/__chunks__/Notification-c5b34eb3.js +0 -1471
  126. package/__chunks__/SelectorErrorTooltip-43c5e29e.js +0 -84
  127. package/__chunks__/SelectorErrorTooltip-b6204987.mjs +0 -69
  128. package/__chunks__/Text-1ae70c19.js +0 -102
  129. package/__chunks__/Text-4ae50d5c.mjs +0 -103
  130. package/__chunks__/Theme-4e498252.mjs +0 -132
  131. package/__chunks__/Theme-751e5575.js +0 -131
  132. package/__chunks__/Tooltip-bd55165e.js +0 -317
  133. package/__chunks__/Tooltip-f7e67b21.mjs +0 -318
@@ -4,6 +4,11 @@ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
4
  var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
6
6
  var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __knownSymbol = (name, symbol) => {
8
+ if (symbol = Symbol[name])
9
+ return symbol;
10
+ throw Error("Symbol." + name + " is not defined");
11
+ };
7
12
  var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
13
  var __spreadValues = (a, b) => {
9
14
  for (var prop in b || (b = {}))
@@ -29,21 +34,45 @@ var __objRest = (source, exclude) => {
29
34
  }
30
35
  return target;
31
36
  };
32
- import React__default, { useState, useRef, useEffect, useMemo, useCallback, useContext } from "react";
33
- import { s as $03deb23ff14920c4$export$4eaf04e54aa8eed6, t as $6a7db85432448f7f$export$29bf1b5f2c56cf63, e as $7215afc6de606d6b$export$de79e2c695e052f3, u as $6a7db85432448f7f$export$60278871457622de, $ as $3ef42575df84b30b$export$9d1611c77c2fe928, v as $ef06256079686ba0$export$f8aeda7b10753fa1, p as $c87311424ea30a05$export$fedb369cb70207f1, w as $bbed8b41f857bcc0$export$24490316f764c430, x as $e7801be82b4b2a53$export$4debdb1a3f0fa79e, c as $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c, k as $c87311424ea30a05$export$9ac100e40613ea10 } from "./import-b7971a11.mjs";
34
- function _defineProperty(obj, key, value) {
35
- if (key in obj) {
36
- Object.defineProperty(obj, key, {
37
- value,
38
- enumerable: true,
39
- configurable: true,
40
- writable: true
41
- });
37
+ var __await = function(promise, isYieldStar) {
38
+ this[0] = promise;
39
+ this[1] = isYieldStar;
40
+ };
41
+ var __yieldStar = (value) => {
42
+ var obj = value[__knownSymbol("asyncIterator")];
43
+ var isAwait = false;
44
+ var method;
45
+ var it = {};
46
+ if (obj == null) {
47
+ obj = value[__knownSymbol("iterator")]();
48
+ method = (k) => it[k] = (x) => obj[k](x);
42
49
  } else {
43
- obj[key] = value;
50
+ obj = obj.call(value);
51
+ method = (k) => it[k] = (v) => {
52
+ if (isAwait) {
53
+ isAwait = false;
54
+ if (k === "throw")
55
+ throw v;
56
+ return v;
57
+ }
58
+ isAwait = true;
59
+ return {
60
+ done: false,
61
+ value: new __await(new Promise((resolve) => {
62
+ var x = obj[k](v);
63
+ if (!(x instanceof Object))
64
+ throw TypeError("Object expected");
65
+ resolve(x);
66
+ }), 1)
67
+ };
68
+ };
44
69
  }
45
- return obj;
46
- }
70
+ return it[__knownSymbol("iterator")] = () => it, method("next"), "throw" in obj ? method("throw") : it.throw = (x) => {
71
+ throw x;
72
+ }, "return" in obj && method("return"), it;
73
+ };
74
+ import React__default, { useState, useRef, useEffect, useMemo, useCallback, useContext } from "react";
75
+ import { f as $03deb23ff14920c4$export$4eaf04e54aa8eed6, g as $8ae05eaa5c114e9c$export$7f54fc3180508a52, h as $6a7db85432448f7f$export$29bf1b5f2c56cf63, i as $7215afc6de606d6b$export$de79e2c695e052f3, j as $6a7db85432448f7f$export$60278871457622de, a as $3ef42575df84b30b$export$9d1611c77c2fe928, k as $ef06256079686ba0$export$f8aeda7b10753fa1, l as $c87311424ea30a05$export$fedb369cb70207f1, m as $bbed8b41f857bcc0$export$24490316f764c430, n as $e7801be82b4b2a53$export$4debdb1a3f0fa79e, o as $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c, p as $c87311424ea30a05$export$9ac100e40613ea10, e as $704cf1d3b684cc5c$export$535bd6ca7f90a273 } from "./import-19bc38ac.mjs";
47
76
  let $14c0b72509d70225$var$state = "default";
48
77
  let $14c0b72509d70225$var$savedUserSelect = "";
49
78
  let $14c0b72509d70225$var$modifiedElementMap = /* @__PURE__ */ new WeakMap();
@@ -124,16 +153,6 @@ function $f6c31cce2adf654f$export$45712eceda6fad21(props) {
124
153
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
125
154
  "ref"
126
155
  ]);
127
- let propsRef = useRef(null);
128
- propsRef.current = {
129
- onPress,
130
- onPressChange,
131
- onPressStart,
132
- onPressEnd,
133
- onPressUp,
134
- isDisabled,
135
- shouldCancelOnPointerExit
136
- };
137
156
  let [isPressed, setPressed] = useState(false);
138
157
  let ref = useRef({
139
158
  isPressed: false,
@@ -146,85 +165,89 @@ function $f6c31cce2adf654f$export$45712eceda6fad21(props) {
146
165
  pointerType: null
147
166
  });
148
167
  let { addGlobalListener, removeAllGlobalListeners } = $03deb23ff14920c4$export$4eaf04e54aa8eed6();
168
+ let triggerPressStart = $8ae05eaa5c114e9c$export$7f54fc3180508a52((originalEvent, pointerType) => {
169
+ let state = ref.current;
170
+ if (isDisabled || state.didFirePressStart)
171
+ return;
172
+ if (onPressStart)
173
+ onPressStart({
174
+ type: "pressstart",
175
+ pointerType,
176
+ target: originalEvent.currentTarget,
177
+ shiftKey: originalEvent.shiftKey,
178
+ metaKey: originalEvent.metaKey,
179
+ ctrlKey: originalEvent.ctrlKey,
180
+ altKey: originalEvent.altKey
181
+ });
182
+ if (onPressChange)
183
+ onPressChange(true);
184
+ state.didFirePressStart = true;
185
+ setPressed(true);
186
+ });
187
+ let triggerPressEnd = $8ae05eaa5c114e9c$export$7f54fc3180508a52((originalEvent, pointerType, wasPressed = true) => {
188
+ let state = ref.current;
189
+ if (!state.didFirePressStart)
190
+ return;
191
+ state.ignoreClickAfterPress = true;
192
+ state.didFirePressStart = false;
193
+ if (onPressEnd)
194
+ onPressEnd({
195
+ type: "pressend",
196
+ pointerType,
197
+ target: originalEvent.currentTarget,
198
+ shiftKey: originalEvent.shiftKey,
199
+ metaKey: originalEvent.metaKey,
200
+ ctrlKey: originalEvent.ctrlKey,
201
+ altKey: originalEvent.altKey
202
+ });
203
+ if (onPressChange)
204
+ onPressChange(false);
205
+ setPressed(false);
206
+ if (onPress && wasPressed && !isDisabled)
207
+ onPress({
208
+ type: "press",
209
+ pointerType,
210
+ target: originalEvent.currentTarget,
211
+ shiftKey: originalEvent.shiftKey,
212
+ metaKey: originalEvent.metaKey,
213
+ ctrlKey: originalEvent.ctrlKey,
214
+ altKey: originalEvent.altKey
215
+ });
216
+ });
217
+ let triggerPressUp = $8ae05eaa5c114e9c$export$7f54fc3180508a52((originalEvent, pointerType) => {
218
+ if (isDisabled)
219
+ return;
220
+ if (onPressUp)
221
+ onPressUp({
222
+ type: "pressup",
223
+ pointerType,
224
+ target: originalEvent.currentTarget,
225
+ shiftKey: originalEvent.shiftKey,
226
+ metaKey: originalEvent.metaKey,
227
+ ctrlKey: originalEvent.ctrlKey,
228
+ altKey: originalEvent.altKey
229
+ });
230
+ });
231
+ let cancel = $8ae05eaa5c114e9c$export$7f54fc3180508a52((e) => {
232
+ let state = ref.current;
233
+ if (state.isPressed) {
234
+ if (state.isOverTarget)
235
+ triggerPressEnd($f6c31cce2adf654f$var$createEvent(state.target, e), state.pointerType, false);
236
+ state.isPressed = false;
237
+ state.isOverTarget = false;
238
+ state.activePointerId = null;
239
+ state.pointerType = null;
240
+ removeAllGlobalListeners();
241
+ if (!allowTextSelectionOnPress)
242
+ $14c0b72509d70225$export$b0d6fa1ab32e3295(state.target);
243
+ }
244
+ });
245
+ let cancelOnPointerExit = $8ae05eaa5c114e9c$export$7f54fc3180508a52((e) => {
246
+ if (shouldCancelOnPointerExit)
247
+ cancel(e);
248
+ });
149
249
  let pressProps = useMemo(() => {
150
250
  let state = ref.current;
151
- let triggerPressStart = (originalEvent, pointerType) => {
152
- let { onPressStart: onPressStart2, onPressChange: onPressChange2, isDisabled: isDisabled2 } = propsRef.current;
153
- if (isDisabled2 || state.didFirePressStart)
154
- return;
155
- if (onPressStart2)
156
- onPressStart2({
157
- type: "pressstart",
158
- pointerType,
159
- target: originalEvent.currentTarget,
160
- shiftKey: originalEvent.shiftKey,
161
- metaKey: originalEvent.metaKey,
162
- ctrlKey: originalEvent.ctrlKey,
163
- altKey: originalEvent.altKey
164
- });
165
- if (onPressChange2)
166
- onPressChange2(true);
167
- state.didFirePressStart = true;
168
- setPressed(true);
169
- };
170
- let triggerPressEnd = (originalEvent, pointerType, wasPressed = true) => {
171
- let { onPressEnd: onPressEnd2, onPressChange: onPressChange2, onPress: onPress2, isDisabled: isDisabled2 } = propsRef.current;
172
- if (!state.didFirePressStart)
173
- return;
174
- state.ignoreClickAfterPress = true;
175
- state.didFirePressStart = false;
176
- if (onPressEnd2)
177
- onPressEnd2({
178
- type: "pressend",
179
- pointerType,
180
- target: originalEvent.currentTarget,
181
- shiftKey: originalEvent.shiftKey,
182
- metaKey: originalEvent.metaKey,
183
- ctrlKey: originalEvent.ctrlKey,
184
- altKey: originalEvent.altKey
185
- });
186
- if (onPressChange2)
187
- onPressChange2(false);
188
- setPressed(false);
189
- if (onPress2 && wasPressed && !isDisabled2)
190
- onPress2({
191
- type: "press",
192
- pointerType,
193
- target: originalEvent.currentTarget,
194
- shiftKey: originalEvent.shiftKey,
195
- metaKey: originalEvent.metaKey,
196
- ctrlKey: originalEvent.ctrlKey,
197
- altKey: originalEvent.altKey
198
- });
199
- };
200
- let triggerPressUp = (originalEvent, pointerType) => {
201
- let { onPressUp: onPressUp2, isDisabled: isDisabled2 } = propsRef.current;
202
- if (isDisabled2)
203
- return;
204
- if (onPressUp2)
205
- onPressUp2({
206
- type: "pressup",
207
- pointerType,
208
- target: originalEvent.currentTarget,
209
- shiftKey: originalEvent.shiftKey,
210
- metaKey: originalEvent.metaKey,
211
- ctrlKey: originalEvent.ctrlKey,
212
- altKey: originalEvent.altKey
213
- });
214
- };
215
- let cancel = (e) => {
216
- if (state.isPressed) {
217
- if (state.isOverTarget)
218
- triggerPressEnd($f6c31cce2adf654f$var$createEvent(state.target, e), state.pointerType, false);
219
- state.isPressed = false;
220
- state.isOverTarget = false;
221
- state.activePointerId = null;
222
- state.pointerType = null;
223
- removeAllGlobalListeners();
224
- if (!allowTextSelectionOnPress)
225
- $14c0b72509d70225$export$b0d6fa1ab32e3295(state.target);
226
- }
227
- };
228
251
  let pressProps2 = {
229
252
  onKeyDown(e) {
230
253
  if ($f6c31cce2adf654f$var$isValidKeyboardEvent(e.nativeEvent, e.currentTarget) && e.currentTarget.contains(e.target)) {
@@ -329,8 +352,7 @@ function $f6c31cce2adf654f$export$45712eceda6fad21(props) {
329
352
  } else if (state.isOverTarget) {
330
353
  state.isOverTarget = false;
331
354
  triggerPressEnd($f6c31cce2adf654f$var$createEvent(state.target, e), state.pointerType, false);
332
- if (propsRef.current.shouldCancelOnPointerExit)
333
- cancel(e);
355
+ cancelOnPointerExit(e);
334
356
  }
335
357
  };
336
358
  let onPointerUp = (e) => {
@@ -390,8 +412,7 @@ function $f6c31cce2adf654f$export$45712eceda6fad21(props) {
390
412
  if (state.isPressed && !state.ignoreEmulatedMouseEvents) {
391
413
  state.isOverTarget = false;
392
414
  triggerPressEnd(e, state.pointerType, false);
393
- if (propsRef.current.shouldCancelOnPointerExit)
394
- cancel(e);
415
+ cancelOnPointerExit(e);
395
416
  }
396
417
  };
397
418
  pressProps2.onMouseUp = (e) => {
@@ -450,8 +471,7 @@ function $f6c31cce2adf654f$export$45712eceda6fad21(props) {
450
471
  } else if (state.isOverTarget) {
451
472
  state.isOverTarget = false;
452
473
  triggerPressEnd(e, state.pointerType, false);
453
- if (propsRef.current.shouldCancelOnPointerExit)
454
- cancel(e);
474
+ cancelOnPointerExit(e);
455
475
  }
456
476
  };
457
477
  pressProps2.onTouchEnd = (e) => {
@@ -503,7 +523,12 @@ function $f6c31cce2adf654f$export$45712eceda6fad21(props) {
503
523
  isDisabled,
504
524
  preventFocusOnPress,
505
525
  removeAllGlobalListeners,
506
- allowTextSelectionOnPress
526
+ allowTextSelectionOnPress,
527
+ cancel,
528
+ cancelOnPointerExit,
529
+ triggerPressEnd,
530
+ triggerPressStart,
531
+ triggerPressUp
507
532
  ]);
508
533
  useEffect(() => {
509
534
  return () => {
@@ -634,10 +659,8 @@ class $8a9cb279dc87e130$export$905e7fc544a71f36 {
634
659
  function $8a9cb279dc87e130$export$715c682d09d639cc(onBlur) {
635
660
  let stateRef = useRef({
636
661
  isFocused: false,
637
- onBlur,
638
662
  observer: null
639
663
  });
640
- stateRef.current.onBlur = onBlur;
641
664
  $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c(() => {
642
665
  const state = stateRef.current;
643
666
  return () => {
@@ -647,15 +670,17 @@ function $8a9cb279dc87e130$export$715c682d09d639cc(onBlur) {
647
670
  }
648
671
  };
649
672
  }, []);
673
+ let dispatchBlur = $8ae05eaa5c114e9c$export$7f54fc3180508a52((e) => {
674
+ onBlur === null || onBlur === void 0 ? void 0 : onBlur(e);
675
+ });
650
676
  return useCallback((e) => {
651
677
  if (e.target instanceof HTMLButtonElement || e.target instanceof HTMLInputElement || e.target instanceof HTMLTextAreaElement || e.target instanceof HTMLSelectElement) {
652
678
  stateRef.current.isFocused = true;
653
679
  let target = e.target;
654
680
  let onBlurHandler = (e2) => {
655
- var _stateRef_current, _stateRef_current_onBlur;
656
681
  stateRef.current.isFocused = false;
657
682
  if (target.disabled)
658
- (_stateRef_current_onBlur = (_stateRef_current = stateRef.current).onBlur) === null || _stateRef_current_onBlur === void 0 ? void 0 : _stateRef_current_onBlur.call(_stateRef_current, new $8a9cb279dc87e130$export$905e7fc544a71f36("blur", e2));
683
+ dispatchBlur(new $8a9cb279dc87e130$export$905e7fc544a71f36("blur", e2));
659
684
  if (stateRef.current.observer) {
660
685
  stateRef.current.observer.disconnect();
661
686
  stateRef.current.observer = null;
@@ -667,9 +692,13 @@ function $8a9cb279dc87e130$export$715c682d09d639cc(onBlur) {
667
692
  stateRef.current.observer = new MutationObserver(() => {
668
693
  if (stateRef.current.isFocused && target.disabled) {
669
694
  stateRef.current.observer.disconnect();
670
- target.dispatchEvent(new FocusEvent("blur"));
695
+ let relatedTargetEl = target === document.activeElement ? null : document.activeElement;
696
+ target.dispatchEvent(new FocusEvent("blur", {
697
+ relatedTarget: relatedTargetEl
698
+ }));
671
699
  target.dispatchEvent(new FocusEvent("focusout", {
672
- bubbles: true
700
+ bubbles: true,
701
+ relatedTarget: relatedTargetEl
673
702
  }));
674
703
  }
675
704
  });
@@ -680,7 +709,9 @@ function $8a9cb279dc87e130$export$715c682d09d639cc(onBlur) {
680
709
  ]
681
710
  });
682
711
  }
683
- }, []);
712
+ }, [
713
+ dispatchBlur
714
+ ]);
684
715
  }
685
716
  function $a1ea59d68270f0dd$export$f8168d8dd8fd66e6(props) {
686
717
  let { isDisabled, onFocus: onFocusProp, onBlur: onBlurProp, onFocusChange } = props;
@@ -803,6 +834,24 @@ function $507fabe10e71c6fb$export$b9b3dfddab17db27() {
803
834
  function $507fabe10e71c6fb$export$630ff653c5ada6a9() {
804
835
  return $507fabe10e71c6fb$var$currentModality;
805
836
  }
837
+ function $507fabe10e71c6fb$export$8397ddfc504fdb9a(modality) {
838
+ $507fabe10e71c6fb$var$currentModality = modality;
839
+ $507fabe10e71c6fb$var$triggerChangeHandlers(modality, null);
840
+ }
841
+ function $507fabe10e71c6fb$export$98e20ec92f614cfe() {
842
+ $507fabe10e71c6fb$var$setupGlobalFocusEvents();
843
+ let [modality, setModality] = useState($507fabe10e71c6fb$var$currentModality);
844
+ useEffect(() => {
845
+ let handler = () => {
846
+ setModality($507fabe10e71c6fb$var$currentModality);
847
+ };
848
+ $507fabe10e71c6fb$var$changeHandlers.add(handler);
849
+ return () => {
850
+ $507fabe10e71c6fb$var$changeHandlers.delete(handler);
851
+ };
852
+ }, []);
853
+ return $704cf1d3b684cc5c$export$535bd6ca7f90a273() ? null : modality;
854
+ }
806
855
  function $507fabe10e71c6fb$var$isKeyboardFocusEvent(isTextInput, modality, e) {
807
856
  return !(isTextInput && modality === "keyboard" && e instanceof KeyboardEvent && !$507fabe10e71c6fb$var$FOCUS_VISIBLE_INPUT_KEYS[e.key]);
808
857
  }
@@ -995,27 +1044,27 @@ function $e0b6e0b68ec7f50f$export$872b660ac5a1ff98(props) {
995
1044
  let { ref, onInteractOutside, isDisabled, onInteractOutsideStart } = props;
996
1045
  let stateRef = useRef({
997
1046
  isPointerDown: false,
998
- ignoreEmulatedMouseEvents: false,
999
- onInteractOutside,
1000
- onInteractOutsideStart
1047
+ ignoreEmulatedMouseEvents: false
1048
+ });
1049
+ let onPointerDown = $8ae05eaa5c114e9c$export$7f54fc3180508a52((e) => {
1050
+ if (onInteractOutside && $e0b6e0b68ec7f50f$var$isValidEvent(e, ref)) {
1051
+ if (onInteractOutsideStart)
1052
+ onInteractOutsideStart(e);
1053
+ stateRef.current.isPointerDown = true;
1054
+ }
1055
+ });
1056
+ let triggerInteractOutside = $8ae05eaa5c114e9c$export$7f54fc3180508a52((e) => {
1057
+ if (onInteractOutside)
1058
+ onInteractOutside(e);
1001
1059
  });
1002
- let state = stateRef.current;
1003
- state.onInteractOutside = onInteractOutside;
1004
- state.onInteractOutsideStart = onInteractOutsideStart;
1005
1060
  useEffect(() => {
1061
+ let state = stateRef.current;
1006
1062
  if (isDisabled)
1007
1063
  return;
1008
- let onPointerDown = (e) => {
1009
- if ($e0b6e0b68ec7f50f$var$isValidEvent(e, ref) && state.onInteractOutside) {
1010
- if (state.onInteractOutsideStart)
1011
- state.onInteractOutsideStart(e);
1012
- state.isPointerDown = true;
1013
- }
1014
- };
1015
1064
  if (typeof PointerEvent !== "undefined") {
1016
1065
  let onPointerUp = (e) => {
1017
- if (state.isPointerDown && state.onInteractOutside && $e0b6e0b68ec7f50f$var$isValidEvent(e, ref))
1018
- state.onInteractOutside(e);
1066
+ if (state.isPointerDown && $e0b6e0b68ec7f50f$var$isValidEvent(e, ref))
1067
+ triggerInteractOutside(e);
1019
1068
  state.isPointerDown = false;
1020
1069
  };
1021
1070
  document.addEventListener("pointerdown", onPointerDown, true);
@@ -1028,14 +1077,14 @@ function $e0b6e0b68ec7f50f$export$872b660ac5a1ff98(props) {
1028
1077
  let onMouseUp = (e) => {
1029
1078
  if (state.ignoreEmulatedMouseEvents)
1030
1079
  state.ignoreEmulatedMouseEvents = false;
1031
- else if (state.isPointerDown && state.onInteractOutside && $e0b6e0b68ec7f50f$var$isValidEvent(e, ref))
1032
- state.onInteractOutside(e);
1080
+ else if (state.isPointerDown && $e0b6e0b68ec7f50f$var$isValidEvent(e, ref))
1081
+ triggerInteractOutside(e);
1033
1082
  state.isPointerDown = false;
1034
1083
  };
1035
1084
  let onTouchEnd = (e) => {
1036
1085
  state.ignoreEmulatedMouseEvents = true;
1037
- if (state.onInteractOutside && state.isPointerDown && $e0b6e0b68ec7f50f$var$isValidEvent(e, ref))
1038
- state.onInteractOutside(e);
1086
+ if (state.isPointerDown && $e0b6e0b68ec7f50f$var$isValidEvent(e, ref))
1087
+ triggerInteractOutside(e);
1039
1088
  state.isPointerDown = false;
1040
1089
  };
1041
1090
  document.addEventListener("mousedown", onPointerDown, true);
@@ -1051,8 +1100,9 @@ function $e0b6e0b68ec7f50f$export$872b660ac5a1ff98(props) {
1051
1100
  }
1052
1101
  }, [
1053
1102
  ref,
1054
- state,
1055
- isDisabled
1103
+ isDisabled,
1104
+ onPointerDown,
1105
+ triggerInteractOutside
1056
1106
  ]);
1057
1107
  }
1058
1108
  function $e0b6e0b68ec7f50f$var$isValidEvent(event, ref) {
@@ -1272,7 +1322,7 @@ class $9bf71ea28793e738$var$Tree {
1272
1322
  yield node;
1273
1323
  if (node.children.size > 0)
1274
1324
  for (let child of node.children)
1275
- yield* this.traverse(child);
1325
+ yield* __yieldStar(this.traverse(child));
1276
1326
  }
1277
1327
  clone() {
1278
1328
  let newTree = new $9bf71ea28793e738$var$Tree();
@@ -1281,7 +1331,7 @@ class $9bf71ea28793e738$var$Tree {
1281
1331
  return newTree;
1282
1332
  }
1283
1333
  constructor() {
1284
- _defineProperty(this, "fastMap", /* @__PURE__ */ new Map());
1334
+ this.fastMap = /* @__PURE__ */ new Map();
1285
1335
  this.root = new $9bf71ea28793e738$var$TreeNode({
1286
1336
  scopeRef: null
1287
1337
  });
@@ -1298,8 +1348,8 @@ class $9bf71ea28793e738$var$TreeNode {
1298
1348
  node.parent = void 0;
1299
1349
  }
1300
1350
  constructor(props) {
1301
- _defineProperty(this, "children", /* @__PURE__ */ new Set());
1302
- _defineProperty(this, "contain", false);
1351
+ this.children = /* @__PURE__ */ new Set();
1352
+ this.contain = false;
1303
1353
  this.scopeRef = props.scopeRef;
1304
1354
  }
1305
1355
  }
@@ -1336,7 +1386,7 @@ function $f7dceffc5ad7768b$export$4e328f61c538687f(props = {}) {
1336
1386
  });
1337
1387
  return {
1338
1388
  isFocused,
1339
- isFocusVisible: state.current.isFocused && isFocusVisibleState,
1389
+ isFocusVisible: isFocusVisibleState,
1340
1390
  focusProps: within ? focusWithinProps : focusProps
1341
1391
  };
1342
1392
  }
@@ -1368,17 +1418,19 @@ function $e6afbd83fe6ebbd2$export$4c014de7c8940b4c(props, domRef) {
1368
1418
  };
1369
1419
  }
1370
1420
  export {
1371
- $f7dceffc5ad7768b$export$4e328f61c538687f as $,
1372
- _defineProperty as _,
1373
- $6179b936705e76d3$export$ae780daf29e6d456 as a,
1374
- $f6c31cce2adf654f$export$45712eceda6fad21 as b,
1375
- $e6afbd83fe6ebbd2$export$4c014de7c8940b4c as c,
1376
- $9ab94262bd0047c7$export$420e68273165f4ec as d,
1377
- $9bf71ea28793e738$export$2d6ec8fc375ceafa as e,
1378
- $507fabe10e71c6fb$export$630ff653c5ada6a9 as f,
1379
- $6a99195332edec8b$export$80f3e147d781571c as g,
1380
- $8a26561d2877236e$export$c24ed0104d07eab9 as h,
1381
- $507fabe10e71c6fb$export$b9b3dfddab17db27 as i,
1382
- $e0b6e0b68ec7f50f$export$872b660ac5a1ff98 as j,
1383
- $9bf71ea28793e738$export$1258395f99bf9cbf as k
1421
+ $f6c31cce2adf654f$export$45712eceda6fad21 as $,
1422
+ $e6afbd83fe6ebbd2$export$4c014de7c8940b4c as a,
1423
+ $9ab94262bd0047c7$export$420e68273165f4ec as b,
1424
+ $e0b6e0b68ec7f50f$export$872b660ac5a1ff98 as c,
1425
+ $9bf71ea28793e738$export$1258395f99bf9cbf as d,
1426
+ $f7dceffc5ad7768b$export$4e328f61c538687f as e,
1427
+ $6179b936705e76d3$export$ae780daf29e6d456 as f,
1428
+ $9bf71ea28793e738$export$2d6ec8fc375ceafa as g,
1429
+ $6a99195332edec8b$export$80f3e147d781571c as h,
1430
+ $8a26561d2877236e$export$c24ed0104d07eab9 as i,
1431
+ $507fabe10e71c6fb$export$630ff653c5ada6a9 as j,
1432
+ $507fabe10e71c6fb$export$b9b3dfddab17db27 as k,
1433
+ $46d819fcbaf35654$export$8f71654801c2f7cd as l,
1434
+ $507fabe10e71c6fb$export$8397ddfc504fdb9a as m,
1435
+ $507fabe10e71c6fb$export$98e20ec92f614cfe as n
1384
1436
  };
@@ -1,26 +1,30 @@
1
- import { useState, useRef, useCallback } from "react";
1
+ import { useState, useRef, useEffect, useCallback } from "react";
2
2
  function $458b0a5536c1a7cf$export$40bfa8c7b0832715(value, defaultValue, onChange) {
3
3
  let [stateValue, setStateValue] = useState(value || defaultValue);
4
- let ref = useRef(value !== void 0);
5
- let wasControlled = ref.current;
4
+ let isControlledRef = useRef(value !== void 0);
6
5
  let isControlled = value !== void 0;
7
- let stateRef = useRef(stateValue);
8
- if (wasControlled !== isControlled)
9
- console.warn(`WARN: A component changed from ${wasControlled ? "controlled" : "uncontrolled"} to ${isControlled ? "controlled" : "uncontrolled"}.`);
10
- ref.current = isControlled;
6
+ useEffect(() => {
7
+ let wasControlled = isControlledRef.current;
8
+ if (wasControlled !== isControlled)
9
+ console.warn(`WARN: A component changed from ${wasControlled ? "controlled" : "uncontrolled"} to ${isControlled ? "controlled" : "uncontrolled"}.`);
10
+ isControlledRef.current = isControlled;
11
+ }, [
12
+ isControlled
13
+ ]);
14
+ let currentValue = isControlled ? value : stateValue;
11
15
  let setValue = useCallback((value2, ...args) => {
12
16
  let onChangeCaller = (value3, ...onChangeArgs) => {
13
17
  if (onChange) {
14
- if (!Object.is(stateRef.current, value3))
18
+ if (!Object.is(currentValue, value3))
15
19
  onChange(value3, ...onChangeArgs);
16
20
  }
17
21
  if (!isControlled)
18
- stateRef.current = value3;
22
+ currentValue = value3;
19
23
  };
20
24
  if (typeof value2 === "function") {
21
25
  console.warn("We can not support a function callback. See Github Issues for details https://github.com/adobe/react-spectrum/issues/2320");
22
26
  let updateFunction = (oldValue, ...functionArgs) => {
23
- let interceptedValue = value2(isControlled ? stateRef.current : oldValue, ...functionArgs);
27
+ let interceptedValue = value2(isControlled ? currentValue : oldValue, ...functionArgs);
24
28
  onChangeCaller(interceptedValue, ...args);
25
29
  if (!isControlled)
26
30
  return interceptedValue;
@@ -34,14 +38,11 @@ function $458b0a5536c1a7cf$export$40bfa8c7b0832715(value, defaultValue, onChange
34
38
  }
35
39
  }, [
36
40
  isControlled,
41
+ currentValue,
37
42
  onChange
38
43
  ]);
39
- if (isControlled)
40
- stateRef.current = value;
41
- else
42
- value = stateValue;
43
44
  return [
44
- value,
45
+ currentValue,
45
46
  setValue
46
47
  ];
47
48
  }
@@ -18,9 +18,9 @@ var __spreadValues = (a, b) => {
18
18
  return a;
19
19
  };
20
20
  var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
21
- const _import$1 = require("./import-63bf0645.js");
22
- const _import = require("./import-0d1b4d93.js");
23
- const _import$2 = require("./import-76076ca6.js");
21
+ const _import$1 = require("./import-a1e0f814.js");
22
+ const _import = require("./import-2b302763.js");
23
+ const _import$2 = require("./import-dea5a24d.js");
24
24
  function $d2c8e2b0480f3f34$export$cbe85ee05b554577(props, state, ref) {
25
25
  let { isDisabled = false, isRequired = false, isReadOnly = false, value, name, children, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledby, validationState = "valid" } = props;
26
26
  let onChange = (e) => {