@okam/stack-ui 1.42.1 → 1.42.2

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 (157) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/components/ShareButton/interface.d.ts +0 -1
  3. package/index151.js +1 -1
  4. package/index151.mjs +1 -1
  5. package/index153.js +1 -1
  6. package/index153.mjs +4 -4
  7. package/index154.js +1 -1
  8. package/index154.mjs +2 -2
  9. package/index155.js +1 -1
  10. package/index155.mjs +1 -1
  11. package/index156.js +1 -1
  12. package/index156.mjs +1 -1
  13. package/index161.js +1 -1
  14. package/index161.mjs +2 -2
  15. package/index163.js +1 -1
  16. package/index163.mjs +2 -2
  17. package/index164.js +1 -1
  18. package/index164.mjs +5 -5
  19. package/index165.js +1 -1
  20. package/index165.mjs +3 -3
  21. package/index167.js +1 -1
  22. package/index167.mjs +2 -2
  23. package/index172.js +1 -1
  24. package/index172.mjs +2 -2
  25. package/index176.js +1 -1
  26. package/index176.mjs +1 -1
  27. package/index178.js +1 -1
  28. package/index178.mjs +1 -1
  29. package/index179.js +1 -1
  30. package/index179.mjs +1 -1
  31. package/index181.js +1 -1
  32. package/index181.mjs +3 -3
  33. package/index187.js +1 -1
  34. package/index187.mjs +5 -11
  35. package/index188.js +2 -1
  36. package/index188.mjs +49 -5
  37. package/index189.js +1 -2
  38. package/index189.mjs +11 -49
  39. package/index232.js +1 -1
  40. package/index232.mjs +132 -117
  41. package/index233.js +1 -1
  42. package/index233.mjs +196 -26
  43. package/index234.js +1 -1
  44. package/index234.mjs +18 -69
  45. package/index235.js +1 -1
  46. package/index235.mjs +4 -382
  47. package/index236.js +1 -1
  48. package/index236.mjs +28 -46
  49. package/index237.js +1 -1
  50. package/index237.mjs +50 -4
  51. package/index238.js +1 -1
  52. package/index238.mjs +52 -22
  53. package/index239.js +1 -1
  54. package/index239.mjs +46 -45
  55. package/index240.js +1 -1
  56. package/index240.mjs +96 -4
  57. package/index241.js +1 -1
  58. package/index241.mjs +5 -24
  59. package/index242.js +1 -1
  60. package/index242.mjs +6 -12
  61. package/index243.js +1 -1
  62. package/index243.mjs +41 -4
  63. package/index244.js +1 -1
  64. package/index244.mjs +72 -15
  65. package/index245.js +1 -1
  66. package/index245.mjs +14 -42
  67. package/index246.js +1 -1
  68. package/index246.mjs +66 -55
  69. package/index247.js +1 -1
  70. package/index247.mjs +7 -41
  71. package/index248.js +1 -1
  72. package/index248.mjs +10 -27
  73. package/index249.js +1 -1
  74. package/index249.mjs +46 -30
  75. package/index250.js +1 -1
  76. package/index250.mjs +124 -13
  77. package/index251.js +1 -1
  78. package/index251.mjs +27 -10
  79. package/index252.js +1 -1
  80. package/index252.mjs +69 -24
  81. package/index253.js +1 -1
  82. package/index253.mjs +380 -8
  83. package/index254.js +1 -1
  84. package/index254.mjs +46 -6
  85. package/index255.js +1 -1
  86. package/index255.mjs +24 -5
  87. package/index256.js +1 -1
  88. package/index256.mjs +24 -7
  89. package/index257.js +1 -1
  90. package/index257.mjs +12 -29
  91. package/index258.js +1 -1
  92. package/index258.mjs +4 -18
  93. package/index259.js +1 -1
  94. package/index259.mjs +14 -13
  95. package/index260.js +1 -1
  96. package/index260.mjs +37 -38
  97. package/index261.js +1 -1
  98. package/index261.mjs +56 -7
  99. package/index262.js +1 -1
  100. package/index262.mjs +27 -16
  101. package/index263.js +1 -1
  102. package/index263.mjs +32 -3
  103. package/index264.js +1 -1
  104. package/index264.mjs +10 -4
  105. package/index265.js +1 -1
  106. package/index265.mjs +9 -19
  107. package/index266.js +1 -1
  108. package/index266.mjs +5 -54
  109. package/index267.js +1 -1
  110. package/index267.mjs +7 -140
  111. package/index268.js +1 -1
  112. package/index268.mjs +28 -196
  113. package/index269.js +1 -1
  114. package/index269.mjs +14 -18
  115. package/index270.js +1 -1
  116. package/index270.mjs +12 -48
  117. package/index271.js +1 -1
  118. package/index271.mjs +40 -45
  119. package/index272.js +1 -1
  120. package/index272.mjs +7 -96
  121. package/index273.js +1 -1
  122. package/index273.mjs +18 -72
  123. package/index274.js +1 -1
  124. package/index274.mjs +3 -69
  125. package/index275.js +1 -1
  126. package/index275.mjs +4 -7
  127. package/index276.js +1 -1
  128. package/index276.mjs +19 -11
  129. package/index278.js +1 -1
  130. package/index278.mjs +3 -3
  131. package/index280.js +1 -1
  132. package/index280.mjs +9 -9
  133. package/index281.js +1 -1
  134. package/index281.mjs +1 -1
  135. package/index324.js +1 -1
  136. package/index324.mjs +7 -63
  137. package/index325.js +1 -1
  138. package/index325.mjs +28 -7
  139. package/index326.js +1 -1
  140. package/index326.mjs +89 -24
  141. package/index327.js +1 -1
  142. package/index327.mjs +58 -88
  143. package/index330.js +1 -1
  144. package/index330.mjs +3 -3
  145. package/index333.js +1 -1
  146. package/index333.mjs +5 -5
  147. package/index334.js +1 -1
  148. package/index334.mjs +2 -2
  149. package/index335.js +1 -1
  150. package/index335.mjs +5 -5
  151. package/index336.js +1 -1
  152. package/index336.mjs +1 -1
  153. package/index340.js +1 -1
  154. package/index340.mjs +1 -1
  155. package/index8.js +1 -1
  156. package/index8.mjs +32 -32
  157. package/package.json +1 -1
package/index232.mjs CHANGED
@@ -1,128 +1,143 @@
1
- import { createContext as O, useMemo as I, useContext as U, useState as f, useRef as T, useEffect as R } from "react";
2
- const D = {
3
- badInput: !1,
4
- customError: !1,
5
- patternMismatch: !1,
6
- rangeOverflow: !1,
7
- rangeUnderflow: !1,
8
- stepMismatch: !1,
9
- tooLong: !1,
10
- tooShort: !1,
11
- typeMismatch: !1,
12
- valueMissing: !1,
13
- valid: !0
14
- }, L = {
15
- ...D,
16
- customError: !0,
17
- valid: !1
18
- }, u = {
19
- isInvalid: !1,
20
- validationDetails: D,
21
- validationErrors: []
22
- }, B = O({}), h = "__formValidationState" + Date.now();
23
- function P(a) {
24
- if (a[h]) {
25
- let { realtimeValidation: e, displayValidation: t, updateValidation: i, resetValidation: o, commitValidation: l } = a[h];
26
- return {
27
- realtimeValidation: e,
28
- displayValidation: t,
29
- updateValidation: i,
30
- resetValidation: o,
31
- commitValidation: l
1
+ import { calculatePosition as D } from "./index233.mjs";
2
+ import { useCloseOnScroll as G } from "./index234.mjs";
3
+ import { useState as J, useRef as U, useEffect as K, useCallback as j } from "react";
4
+ import { useLayoutEffect as z } from "./index235.mjs";
5
+ import { useResizeObserver as k } from "./index236.mjs";
6
+ import { useLocale as M } from "@react-aria/i18n";
7
+ let e = typeof document < "u" ? window.visualViewport : null;
8
+ function te(n) {
9
+ let { direction: y } = M(), { arrowSize: w = 0, targetRef: c, overlayRef: i, scrollRef: s = i, placement: H = "bottom", containerPadding: P = 12, shouldFlip: L = !0, boundaryElement: $ = typeof document < "u" ? document.body : null, offset: C = 0, crossOffset: B = 0, shouldUpdatePosition: S = !0, isOpen: v = !0, onClose: p, maxHeight: b, arrowBoundaryOffset: T = 0 } = n, [t, I] = J(null), F = [
10
+ S,
11
+ H,
12
+ i.current,
13
+ c.current,
14
+ s.current,
15
+ P,
16
+ L,
17
+ $,
18
+ C,
19
+ B,
20
+ v,
21
+ y,
22
+ b,
23
+ T,
24
+ w
25
+ ], N = U(e == null ? void 0 : e.scale);
26
+ K(() => {
27
+ v && (N.current = e == null ? void 0 : e.scale);
28
+ }, [
29
+ v
30
+ ]);
31
+ let a = j(() => {
32
+ if (S === !1 || !v || !i.current || !c.current || !$ || (e == null ? void 0 : e.scale) !== N.current) return;
33
+ let o = null;
34
+ if (s.current && s.current.contains(document.activeElement)) {
35
+ var d;
36
+ let r = (d = document.activeElement) === null || d === void 0 ? void 0 : d.getBoundingClientRect(), g = s.current.getBoundingClientRect();
37
+ var u;
38
+ if (o = {
39
+ type: "top",
40
+ offset: ((u = r == null ? void 0 : r.top) !== null && u !== void 0 ? u : 0) - g.top
41
+ }, o.offset > g.height / 2) {
42
+ o.type = "bottom";
43
+ var R;
44
+ o.offset = ((R = r == null ? void 0 : r.bottom) !== null && R !== void 0 ? R : 0) - g.bottom;
45
+ }
46
+ }
47
+ let l = i.current;
48
+ if (!b && i.current) {
49
+ var O;
50
+ l.style.top = "0px", l.style.bottom = "";
51
+ var E;
52
+ l.style.maxHeight = ((E = (O = window.visualViewport) === null || O === void 0 ? void 0 : O.height) !== null && E !== void 0 ? E : window.innerHeight) + "px";
53
+ }
54
+ let f = D({
55
+ placement: W(H, y),
56
+ overlayNode: i.current,
57
+ targetNode: c.current,
58
+ scrollNode: s.current || i.current,
59
+ padding: P,
60
+ shouldFlip: L,
61
+ boundaryElement: $,
62
+ offset: C,
63
+ crossOffset: B,
64
+ maxHeight: b,
65
+ arrowSize: w,
66
+ arrowBoundaryOffset: T
67
+ });
68
+ if (f.position) {
69
+ if (l.style.top = "", l.style.bottom = "", l.style.left = "", l.style.right = "", Object.keys(f.position).forEach((r) => l.style[r] = f.position[r] + "px"), l.style.maxHeight = f.maxHeight != null ? f.maxHeight + "px" : "", o && document.activeElement && s.current) {
70
+ let r = document.activeElement.getBoundingClientRect(), g = s.current.getBoundingClientRect(), A = r[o.type] - g[o.type];
71
+ s.current.scrollTop += A - o.offset;
72
+ }
73
+ I(f);
74
+ }
75
+ }, F);
76
+ z(a, F), Q(a), k({
77
+ ref: i,
78
+ onResize: a
79
+ }), k({
80
+ ref: c,
81
+ onResize: a
82
+ });
83
+ let m = U(!1);
84
+ z(() => {
85
+ let o, d = () => {
86
+ m.current = !0, clearTimeout(o), o = setTimeout(() => {
87
+ m.current = !1;
88
+ }, 500), a();
89
+ }, u = () => {
90
+ m.current && d();
32
91
  };
33
- }
34
- return Q(a);
35
- }
36
- function Q(a) {
37
- let { isInvalid: e, validationState: t, name: i, value: o, builtinValidation: l, validate: d, validationBehavior: n = "aria" } = a;
38
- t && (e || (e = t === "invalid"));
39
- let v = e !== void 0 ? {
40
- isInvalid: e,
41
- validationErrors: [],
42
- validationDetails: L
43
- } : null, V = I(() => {
44
- if (!d || o == null) return null;
45
- let r = Y(d, o);
46
- return C(r);
92
+ return e == null || e.addEventListener("resize", d), e == null || e.addEventListener("scroll", u), () => {
93
+ e == null || e.removeEventListener("resize", d), e == null || e.removeEventListener("scroll", u);
94
+ };
95
+ }, [
96
+ a
97
+ ]);
98
+ let q = j(() => {
99
+ m.current || p == null || p();
47
100
  }, [
48
- d,
49
- o
101
+ p,
102
+ m
50
103
  ]);
51
- l != null && l.validationDetails.valid && (l = void 0);
52
- let s = U(B), A = I(() => i ? Array.isArray(i) ? i.flatMap((r) => S(s[r])) : S(s[i]) : [], [
53
- s,
54
- i
55
- ]), [M, _] = f(s), [x, m] = f(!1);
56
- s !== M && (_(s), m(!1));
57
- let $ = I(() => C(x ? [] : A), [
58
- x,
59
- A
60
- ]), g = T(u), [b, E] = f(u), c = T(u), w = () => {
61
- if (!F) return;
62
- p(!1);
63
- let r = V || l || g.current;
64
- y(r, c.current) || (c.current = r, E(r));
65
- }, [F, p] = f(!1);
66
- return R(w), {
67
- realtimeValidation: v || $ || V || l || u,
68
- displayValidation: n === "native" ? v || $ || b : v || $ || V || l || b,
69
- updateValidation(r) {
70
- n === "aria" && !y(b, r) ? E(r) : g.current = r;
104
+ G({
105
+ triggerRef: c,
106
+ isOpen: v,
107
+ onClose: p && q
108
+ });
109
+ var h, x;
110
+ return {
111
+ overlayProps: {
112
+ style: {
113
+ position: "absolute",
114
+ zIndex: 1e5,
115
+ ...t == null ? void 0 : t.position,
116
+ maxHeight: (h = t == null ? void 0 : t.maxHeight) !== null && h !== void 0 ? h : "100vh"
117
+ }
71
118
  },
72
- resetValidation() {
73
- let r = u;
74
- y(r, c.current) || (c.current = r, E(r)), n === "native" && p(!1), m(!0);
119
+ placement: (x = t == null ? void 0 : t.placement) !== null && x !== void 0 ? x : null,
120
+ arrowProps: {
121
+ "aria-hidden": "true",
122
+ role: "presentation",
123
+ style: {
124
+ left: t == null ? void 0 : t.arrowOffsetLeft,
125
+ top: t == null ? void 0 : t.arrowOffsetTop
126
+ }
75
127
  },
76
- commitValidation() {
77
- n === "native" && p(!0), m(!0);
78
- }
128
+ updatePosition: a
79
129
  };
80
130
  }
81
- function S(a) {
82
- return a ? Array.isArray(a) ? a : [
83
- a
84
- ] : [];
85
- }
86
- function Y(a, e) {
87
- if (typeof a == "function") {
88
- let t = a(e);
89
- if (t && typeof t != "boolean") return S(t);
90
- }
91
- return [];
92
- }
93
- function C(a) {
94
- return a.length ? {
95
- isInvalid: !0,
96
- validationErrors: a,
97
- validationDetails: L
98
- } : null;
99
- }
100
- function y(a, e) {
101
- return a === e ? !0 : !!a && !!e && a.isInvalid === e.isInvalid && a.validationErrors.length === e.validationErrors.length && a.validationErrors.every((t, i) => t === e.validationErrors[i]) && Object.entries(a.validationDetails).every(([t, i]) => e.validationDetails[t] === i);
131
+ function Q(n) {
132
+ z(() => (window.addEventListener("resize", n, !1), () => {
133
+ window.removeEventListener("resize", n, !1);
134
+ }), [
135
+ n
136
+ ]);
102
137
  }
103
- function k(...a) {
104
- let e = /* @__PURE__ */ new Set(), t = !1, i = {
105
- ...D
106
- };
107
- for (let d of a) {
108
- var o, l;
109
- for (let n of d.validationErrors) e.add(n);
110
- t || (t = d.isInvalid);
111
- for (let n in i) (o = i)[l = n] || (o[l] = d.validationDetails[n]);
112
- }
113
- return i.valid = !t, {
114
- isInvalid: t,
115
- validationErrors: [
116
- ...e
117
- ],
118
- validationDetails: i
119
- };
138
+ function W(n, y) {
139
+ return y === "rtl" ? n.replace("start", "right").replace("end", "left") : n.replace("start", "left").replace("end", "right");
120
140
  }
121
141
  export {
122
- u as DEFAULT_VALIDATION_RESULT,
123
- B as FormValidationContext,
124
- D as VALID_VALIDITY_STATE,
125
- k as mergeValidation,
126
- h as privateValidationStateProp,
127
- P as useFormValidationState
142
+ te as useOverlayPosition
128
143
  };
package/index233.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("react");function m(o,p,s){let[b,u]=l.useState(o||p),i=l.useRef(o!==void 0),e=o!==void 0;l.useEffect(()=>{let t=i.current;t!==e&&process.env.NODE_ENV!=="production"&&console.warn(`WARN: A component changed from ${t?"controlled":"uncontrolled"} to ${e?"controlled":"uncontrolled"}.`),i.current=e},[e]);let n=e?o:b,S=l.useCallback((t,...f)=>{let d=(r,...c)=>{s&&(Object.is(n,r)||s(r,...c)),e||(n=r)};typeof t=="function"?(process.env.NODE_ENV!=="production"&&console.warn("We can not support a function callback. See Github Issues for details https://github.com/adobe/react-spectrum/issues/2320"),u((c,...V)=>{let a=t(e?n:c,...V);return d(a,...f),e?c:a})):(e||u(t),d(t,...f))},[e,n,s]);return[n,S]}exports.useControlledState=m;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const it=require("./index243.js"),q=require("./index289.js"),x={top:"top",bottom:"top",left:"left",right:"left"},z={top:"bottom",bottom:"top",left:"right",right:"left"},ct={top:"left",left:"top"},j={top:"height",left:"width"},B={width:"totalWidth",height:"totalHeight"},H={};let $=typeof document<"u"?window.visualViewport:null;function G(e){let t=0,o=0,c=0,i=0,r=0,f=0,l={};var v;let p=((v=$==null?void 0:$.scale)!==null&&v!==void 0?v:1)>1;if(e.tagName==="BODY"){let h=document.documentElement;c=h.clientWidth,i=h.clientHeight;var s;t=(s=$==null?void 0:$.width)!==null&&s!==void 0?s:c;var d;o=(d=$==null?void 0:$.height)!==null&&d!==void 0?d:i,l.top=h.scrollTop||e.scrollTop,l.left=h.scrollLeft||e.scrollLeft,$&&(r=$.offsetTop,f=$.offsetLeft)}else({width:t,height:o,top:r,left:f}=M(e)),l.top=e.scrollTop,l.left=e.scrollLeft,c=t,i=o;if(it.isWebKit()&&(e.tagName==="BODY"||e.tagName==="HTML")&&p){l.top=0,l.left=0;var g;r=(g=$==null?void 0:$.pageTop)!==null&&g!==void 0?g:0;var n;f=(n=$==null?void 0:$.pageLeft)!==null&&n!==void 0?n:0}return{width:t,height:o,totalWidth:c,totalHeight:i,scroll:l,top:r,left:f}}function nt(e){return{top:e.scrollTop,left:e.scrollLeft,width:e.scrollWidth,height:e.scrollHeight}}function K(e,t,o,c,i,r,f){var l;let v=(l=i.scroll[e])!==null&&l!==void 0?l:0,p=c[j[e]],s=c.scroll[x[e]]+r,d=p+c.scroll[x[e]]-r,g=t-v+f[e]-c[x[e]],n=t-v+o+f[e]-c[x[e]];return g<s?s-g:n>d?Math.max(d-n,s-g):0}function rt(e){let t=window.getComputedStyle(e);return{top:parseInt(t.marginTop,10)||0,bottom:parseInt(t.marginBottom,10)||0,left:parseInt(t.marginLeft,10)||0,right:parseInt(t.marginRight,10)||0}}function J(e){if(H[e])return H[e];let[t,o]=e.split(" "),c=x[t]||"right",i=ct[c];x[o]||(o="center");let r=j[c],f=j[i];return H[e]={placement:t,crossPlacement:o,axis:c,crossAxis:i,size:r,crossSize:f},H[e]}function Z(e,t,o,c,i,r,f,l,v,p){let{placement:s,crossPlacement:d,axis:g,crossAxis:n,size:h,crossSize:u}=c,a={};var w;a[n]=(w=e[n])!==null&&w!==void 0?w:0;var m,P,E,T;d==="center"?a[n]+=(((m=e[u])!==null&&m!==void 0?m:0)-((P=o[u])!==null&&P!==void 0?P:0))/2:d!==n&&(a[n]+=((E=e[u])!==null&&E!==void 0?E:0)-((T=o[u])!==null&&T!==void 0?T:0)),a[n]+=r;const _=e[n]-o[u]+v+p,S=e[n]+e[u]-v-p;if(a[n]=q.clamp(a[n],_,S),s===g){const L=l?f[h]:t[B[h]];a[z[g]]=Math.floor(L-e[g]+i)}else a[g]=Math.floor(e[g]+e[h]+i);return a}function at(e,t,o,c,i,r,f,l){const v=c?o.height:t[B.height];var p;let s=e.top!=null?o.top+e.top:o.top+(v-((p=e.bottom)!==null&&p!==void 0?p:0)-f);var d,g,n,h,u,a;let w=l!=="top"?Math.max(0,t.height+t.top+((d=t.scroll.top)!==null&&d!==void 0?d:0)-s-(((g=i.top)!==null&&g!==void 0?g:0)+((n=i.bottom)!==null&&n!==void 0?n:0)+r)):Math.max(0,s+f-(t.top+((h=t.scroll.top)!==null&&h!==void 0?h:0))-(((u=i.top)!==null&&u!==void 0?u:0)+((a=i.bottom)!==null&&a!==void 0?a:0)+r));return Math.min(t.height-r*2,w)}function Q(e,t,o,c,i,r){let{placement:f,axis:l,size:v}=r;var p,s;if(f===l)return Math.max(0,o[l]-e[l]-((p=e.scroll[l])!==null&&p!==void 0?p:0)+t[l]-((s=c[l])!==null&&s!==void 0?s:0)-c[z[l]]-i);var d;return Math.max(0,e[v]+e[l]+e.scroll[l]-t[l]-o[l]-o[v]-((d=c[l])!==null&&d!==void 0?d:0)-c[z[l]]-i)}function V(e,t,o,c,i,r,f,l,v,p,s,d,g,n,h,u){let a=J(e),{size:w,crossAxis:m,crossSize:P,placement:E,crossPlacement:T}=a,_=Z(t,l,o,a,s,d,p,g,h,u),S=s,L=Q(l,p,t,i,r+s,a);if(f&&c[w]>L){let X=J(`${z[E]} ${T}`),ot=Z(t,l,o,X,s,d,p,g,h,u);Q(l,p,t,i,r+s,X)>L&&(a=X,_=ot,S=s)}let b="bottom";a.axis==="top"?a.placement==="top"?b="top":a.placement==="bottom"&&(b="bottom"):a.crossAxis==="top"&&(a.crossPlacement==="top"?b="bottom":a.crossPlacement==="bottom"&&(b="top"));let I=K(m,_[m],o[P],l,v,r,p);_[m]+=I;let C=at(_,l,p,g,i,r,o.height,b);n&&n<C&&(C=n),o.height=Math.min(o.height,C),_=Z(t,l,o,a,S,d,p,g,h,u),I=K(m,_[m],o[P],l,v,r,p),_[m]+=I;let A={},k=t[m]+.5*t[P]-_[m]-i[x[m]];const D=h/2+u;var F,N,R,Y;const O=x[m]==="left"?((F=i.left)!==null&&F!==void 0?F:0)+((N=i.right)!==null&&N!==void 0?N:0):((R=i.top)!==null&&R!==void 0?R:0)+((Y=i.bottom)!==null&&Y!==void 0?Y:0),y=o[P]-O-h/2-u,tt=t[m]+h/2-(_[m]+i[x[m]]),et=t[m]+t[P]-h/2-(_[m]+i[x[m]]),lt=q.clamp(k,tt,et);return A[m]=q.clamp(lt,D,y),{position:_,maxHeight:C,arrowOffsetLeft:A.left,arrowOffsetTop:A.top,placement:a.placement}}function pt(e){let{placement:t,targetNode:o,overlayNode:c,scrollNode:i,padding:r,shouldFlip:f,boundaryElement:l,offset:v,crossOffset:p,maxHeight:s,arrowSize:d=0,arrowBoundaryOffset:g=0}=e,n=c instanceof HTMLElement?st(c):document.documentElement,h=n===document.documentElement;const u=window.getComputedStyle(n).position;let a=!!u&&u!=="static",w=h?M(o):U(o,n);if(!h){let{marginTop:A,marginLeft:k}=window.getComputedStyle(o);w.top+=parseInt(A,10)||0,w.left+=parseInt(k,10)||0}let m=M(c),P=rt(c);var E,T;m.width+=((E=P.left)!==null&&E!==void 0?E:0)+((T=P.right)!==null&&T!==void 0?T:0);var _,S;m.height+=((_=P.top)!==null&&_!==void 0?_:0)+((S=P.bottom)!==null&&S!==void 0?S:0);let L=nt(i),b=G(l),I=G(n),C=l.tagName==="BODY"?M(n):U(n,l);return n.tagName==="HTML"&&l.tagName==="BODY"&&(I.scroll.top=0,I.scroll.left=0),V(t,w,m,L,P,r,f,b,I,C,v,p,a,s,d,g)}function M(e){let{top:t,left:o,width:c,height:i}=e.getBoundingClientRect(),{scrollTop:r,scrollLeft:f,clientTop:l,clientLeft:v}=document.documentElement;return{top:t+r-l,left:o+f-v,width:c,height:i}}function U(e,t){let o=window.getComputedStyle(e),c;if(o.position==="fixed"){let{top:i,left:r,width:f,height:l}=e.getBoundingClientRect();c={top:i,left:r,width:f,height:l}}else{c=M(e);let i=M(t),r=window.getComputedStyle(t);i.top+=(parseInt(r.borderTopWidth,10)||0)-t.scrollTop,i.left+=(parseInt(r.borderLeftWidth,10)||0)-t.scrollLeft,c.top-=i.top,c.left-=i.left}return c.top-=parseInt(o.marginTop,10)||0,c.left-=parseInt(o.marginLeft,10)||0,c}function st(e){let t=e.offsetParent;if(t&&t===document.body&&window.getComputedStyle(t).position==="static"&&!W(t)&&(t=document.documentElement),t==null)for(t=e.parentElement;t&&!W(t);)t=t.parentElement;return t||document.documentElement}function W(e){let t=window.getComputedStyle(e);return t.transform!=="none"||/transform|perspective/.test(t.willChange)||t.filter!=="none"||t.contain==="paint"||"backdropFilter"in t&&t.backdropFilter!=="none"||"WebkitBackdropFilter"in t&&t.WebkitBackdropFilter!=="none"}exports.calculatePosition=pt;exports.calculatePositionInternal=V;
package/index233.mjs CHANGED
@@ -1,30 +1,200 @@
1
- import { useState as V, useRef as C, useEffect as E, useCallback as N } from "react";
2
- function S(n, a, l) {
3
- let [p, s] = V(n || a), i = C(n !== void 0), e = n !== void 0;
4
- E(() => {
5
- let t = i.current;
6
- t !== e && process.env.NODE_ENV !== "production" && console.warn(`WARN: A component changed from ${t ? "controlled" : "uncontrolled"} to ${e ? "controlled" : "uncontrolled"}.`), i.current = e;
7
- }, [
8
- e
9
- ]);
10
- let o = e ? n : p, b = N((t, ...u) => {
11
- let f = (r, ...c) => {
12
- l && (Object.is(o, r) || l(r, ...c)), e || (o = r);
1
+ import { isWebKit as ot } from "./index243.mjs";
2
+ import { clamp as G } from "./index289.mjs";
3
+ const P = {
4
+ top: "top",
5
+ bottom: "top",
6
+ left: "left",
7
+ right: "left"
8
+ }, z = {
9
+ top: "bottom",
10
+ bottom: "top",
11
+ left: "right",
12
+ right: "left"
13
+ }, it = {
14
+ top: "left",
15
+ left: "top"
16
+ }, K = {
17
+ top: "height",
18
+ left: "width"
19
+ }, B = {
20
+ width: "totalWidth",
21
+ height: "totalHeight"
22
+ }, H = {};
23
+ let u = typeof document < "u" ? window.visualViewport : null;
24
+ function j(e) {
25
+ let t = 0, o = 0, c = 0, i = 0, a = 0, f = 0, l = {};
26
+ var $;
27
+ let p = (($ = u == null ? void 0 : u.scale) !== null && $ !== void 0 ? $ : 1) > 1;
28
+ if (e.tagName === "BODY") {
29
+ let h = document.documentElement;
30
+ c = h.clientWidth, i = h.clientHeight;
31
+ var s;
32
+ t = (s = u == null ? void 0 : u.width) !== null && s !== void 0 ? s : c;
33
+ var g;
34
+ o = (g = u == null ? void 0 : u.height) !== null && g !== void 0 ? g : i, l.top = h.scrollTop || e.scrollTop, l.left = h.scrollLeft || e.scrollLeft, u && (a = u.offsetTop, f = u.offsetLeft);
35
+ } else
36
+ ({ width: t, height: o, top: a, left: f } = M(e)), l.top = e.scrollTop, l.left = e.scrollLeft, c = t, i = o;
37
+ if (ot() && (e.tagName === "BODY" || e.tagName === "HTML") && p) {
38
+ l.top = 0, l.left = 0;
39
+ var d;
40
+ a = (d = u == null ? void 0 : u.pageTop) !== null && d !== void 0 ? d : 0;
41
+ var r;
42
+ f = (r = u == null ? void 0 : u.pageLeft) !== null && r !== void 0 ? r : 0;
43
+ }
44
+ return {
45
+ width: t,
46
+ height: o,
47
+ totalWidth: c,
48
+ totalHeight: i,
49
+ scroll: l,
50
+ top: a,
51
+ left: f
52
+ };
53
+ }
54
+ function ct(e) {
55
+ return {
56
+ top: e.scrollTop,
57
+ left: e.scrollLeft,
58
+ width: e.scrollWidth,
59
+ height: e.scrollHeight
60
+ };
61
+ }
62
+ function q(e, t, o, c, i, a, f) {
63
+ var l;
64
+ let $ = (l = i.scroll[e]) !== null && l !== void 0 ? l : 0, p = c[K[e]], s = c.scroll[P[e]] + a, g = p + c.scroll[P[e]] - a, d = t - $ + f[e] - c[P[e]], r = t - $ + o + f[e] - c[P[e]];
65
+ return d < s ? s - d : r > g ? Math.max(g - r, s - d) : 0;
66
+ }
67
+ function rt(e) {
68
+ let t = window.getComputedStyle(e);
69
+ return {
70
+ top: parseInt(t.marginTop, 10) || 0,
71
+ bottom: parseInt(t.marginBottom, 10) || 0,
72
+ left: parseInt(t.marginLeft, 10) || 0,
73
+ right: parseInt(t.marginRight, 10) || 0
74
+ };
75
+ }
76
+ function J(e) {
77
+ if (H[e]) return H[e];
78
+ let [t, o] = e.split(" "), c = P[t] || "right", i = it[c];
79
+ P[o] || (o = "center");
80
+ let a = K[c], f = K[i];
81
+ return H[e] = {
82
+ placement: t,
83
+ crossPlacement: o,
84
+ axis: c,
85
+ crossAxis: i,
86
+ size: a,
87
+ crossSize: f
88
+ }, H[e];
89
+ }
90
+ function Z(e, t, o, c, i, a, f, l, $, p) {
91
+ let { placement: s, crossPlacement: g, axis: d, crossAxis: r, size: h, crossSize: v } = c, n = {};
92
+ var w;
93
+ n[r] = (w = e[r]) !== null && w !== void 0 ? w : 0;
94
+ var m, x, E, T;
95
+ g === "center" ? n[r] += (((m = e[v]) !== null && m !== void 0 ? m : 0) - ((x = o[v]) !== null && x !== void 0 ? x : 0)) / 2 : g !== r && (n[r] += ((E = e[v]) !== null && E !== void 0 ? E : 0) - ((T = o[v]) !== null && T !== void 0 ? T : 0)), n[r] += a;
96
+ const _ = e[r] - o[v] + $ + p, I = e[r] + e[v] - $ - p;
97
+ if (n[r] = G(n[r], _, I), s === d) {
98
+ const b = l ? f[h] : t[B[h]];
99
+ n[z[d]] = Math.floor(b - e[d] + i);
100
+ } else n[d] = Math.floor(e[d] + e[h] + i);
101
+ return n;
102
+ }
103
+ function at(e, t, o, c, i, a, f, l) {
104
+ const $ = c ? o.height : t[B.height];
105
+ var p;
106
+ let s = e.top != null ? o.top + e.top : o.top + ($ - ((p = e.bottom) !== null && p !== void 0 ? p : 0) - f);
107
+ var g, d, r, h, v, n;
108
+ let w = l !== "top" ? (
109
+ // We want the distance between the top of the overlay to the bottom of the boundary
110
+ Math.max(0, t.height + t.top + ((g = t.scroll.top) !== null && g !== void 0 ? g : 0) - s - (((d = i.top) !== null && d !== void 0 ? d : 0) + ((r = i.bottom) !== null && r !== void 0 ? r : 0) + a))
111
+ ) : Math.max(0, s + f - (t.top + ((h = t.scroll.top) !== null && h !== void 0 ? h : 0)) - (((v = i.top) !== null && v !== void 0 ? v : 0) + ((n = i.bottom) !== null && n !== void 0 ? n : 0) + a));
112
+ return Math.min(t.height - a * 2, w);
113
+ }
114
+ function Q(e, t, o, c, i, a) {
115
+ let { placement: f, axis: l, size: $ } = a;
116
+ var p, s;
117
+ if (f === l) return Math.max(0, o[l] - e[l] - ((p = e.scroll[l]) !== null && p !== void 0 ? p : 0) + t[l] - ((s = c[l]) !== null && s !== void 0 ? s : 0) - c[z[l]] - i);
118
+ var g;
119
+ return Math.max(0, e[$] + e[l] + e.scroll[l] - t[l] - o[l] - o[$] - ((g = c[l]) !== null && g !== void 0 ? g : 0) - c[z[l]] - i);
120
+ }
121
+ function nt(e, t, o, c, i, a, f, l, $, p, s, g, d, r, h, v) {
122
+ let n = J(e), { size: w, crossAxis: m, crossSize: x, placement: E, crossPlacement: T } = n, _ = Z(t, l, o, n, s, g, p, d, h, v), I = s, b = Q(l, p, t, i, a + s, n);
123
+ if (f && c[w] > b) {
124
+ let X = J(`${z[E]} ${T}`), lt = Z(t, l, o, X, s, g, p, d, h, v);
125
+ Q(l, p, t, i, a + s, X) > b && (n = X, _ = lt, I = s);
126
+ }
127
+ let L = "bottom";
128
+ n.axis === "top" ? n.placement === "top" ? L = "top" : n.placement === "bottom" && (L = "bottom") : n.crossAxis === "top" && (n.crossPlacement === "top" ? L = "bottom" : n.crossPlacement === "bottom" && (L = "top"));
129
+ let S = q(m, _[m], o[x], l, $, a, p);
130
+ _[m] += S;
131
+ let C = at(_, l, p, d, i, a, o.height, L);
132
+ r && r < C && (C = r), o.height = Math.min(o.height, C), _ = Z(t, l, o, n, I, g, p, d, h, v), S = q(m, _[m], o[x], l, $, a, p), _[m] += S;
133
+ let A = {}, k = t[m] + 0.5 * t[x] - _[m] - i[P[m]];
134
+ const V = h / 2 + v;
135
+ var F, N, R, Y;
136
+ const D = P[m] === "left" ? ((F = i.left) !== null && F !== void 0 ? F : 0) + ((N = i.right) !== null && N !== void 0 ? N : 0) : ((R = i.top) !== null && R !== void 0 ? R : 0) + ((Y = i.bottom) !== null && Y !== void 0 ? Y : 0), O = o[x] - D - h / 2 - v, y = t[m] + h / 2 - (_[m] + i[P[m]]), tt = t[m] + t[x] - h / 2 - (_[m] + i[P[m]]), et = G(k, y, tt);
137
+ return A[m] = G(et, V, O), {
138
+ position: _,
139
+ maxHeight: C,
140
+ arrowOffsetLeft: A.left,
141
+ arrowOffsetTop: A.top,
142
+ placement: n.placement
143
+ };
144
+ }
145
+ function dt(e) {
146
+ let { placement: t, targetNode: o, overlayNode: c, scrollNode: i, padding: a, shouldFlip: f, boundaryElement: l, offset: $, crossOffset: p, maxHeight: s, arrowSize: g = 0, arrowBoundaryOffset: d = 0 } = e, r = c instanceof HTMLElement ? pt(c) : document.documentElement, h = r === document.documentElement;
147
+ const v = window.getComputedStyle(r).position;
148
+ let n = !!v && v !== "static", w = h ? M(o) : U(o, r);
149
+ if (!h) {
150
+ let { marginTop: A, marginLeft: k } = window.getComputedStyle(o);
151
+ w.top += parseInt(A, 10) || 0, w.left += parseInt(k, 10) || 0;
152
+ }
153
+ let m = M(c), x = rt(c);
154
+ var E, T;
155
+ m.width += ((E = x.left) !== null && E !== void 0 ? E : 0) + ((T = x.right) !== null && T !== void 0 ? T : 0);
156
+ var _, I;
157
+ m.height += ((_ = x.top) !== null && _ !== void 0 ? _ : 0) + ((I = x.bottom) !== null && I !== void 0 ? I : 0);
158
+ let b = ct(i), L = j(l), S = j(r), C = l.tagName === "BODY" ? M(r) : U(r, l);
159
+ return r.tagName === "HTML" && l.tagName === "BODY" && (S.scroll.top = 0, S.scroll.left = 0), nt(t, w, m, b, x, a, f, L, S, C, $, p, n, s, g, d);
160
+ }
161
+ function M(e) {
162
+ let { top: t, left: o, width: c, height: i } = e.getBoundingClientRect(), { scrollTop: a, scrollLeft: f, clientTop: l, clientLeft: $ } = document.documentElement;
163
+ return {
164
+ top: t + a - l,
165
+ left: o + f - $,
166
+ width: c,
167
+ height: i
168
+ };
169
+ }
170
+ function U(e, t) {
171
+ let o = window.getComputedStyle(e), c;
172
+ if (o.position === "fixed") {
173
+ let { top: i, left: a, width: f, height: l } = e.getBoundingClientRect();
174
+ c = {
175
+ top: i,
176
+ left: a,
177
+ width: f,
178
+ height: l
13
179
  };
14
- typeof t == "function" ? (process.env.NODE_ENV !== "production" && console.warn("We can not support a function callback. See Github Issues for details https://github.com/adobe/react-spectrum/issues/2320"), s((c, ...m) => {
15
- let d = t(e ? o : c, ...m);
16
- return f(d, ...u), e ? c : d;
17
- })) : (e || s(t), f(t, ...u));
18
- }, [
19
- e,
20
- o,
21
- l
22
- ]);
23
- return [
24
- o,
25
- b
26
- ];
180
+ } else {
181
+ c = M(e);
182
+ let i = M(t), a = window.getComputedStyle(t);
183
+ i.top += (parseInt(a.borderTopWidth, 10) || 0) - t.scrollTop, i.left += (parseInt(a.borderLeftWidth, 10) || 0) - t.scrollLeft, c.top -= i.top, c.left -= i.left;
184
+ }
185
+ return c.top -= parseInt(o.marginTop, 10) || 0, c.left -= parseInt(o.marginLeft, 10) || 0, c;
186
+ }
187
+ function pt(e) {
188
+ let t = e.offsetParent;
189
+ if (t && t === document.body && window.getComputedStyle(t).position === "static" && !W(t) && (t = document.documentElement), t == null)
190
+ for (t = e.parentElement; t && !W(t); ) t = t.parentElement;
191
+ return t || document.documentElement;
192
+ }
193
+ function W(e) {
194
+ let t = window.getComputedStyle(e);
195
+ return t.transform !== "none" || /transform|perspective/.test(t.willChange) || t.filter !== "none" || t.contain === "paint" || "backdropFilter" in t && t.backdropFilter !== "none" || "WebkitBackdropFilter" in t && t.WebkitBackdropFilter !== "none";
27
196
  }
28
197
  export {
29
- S as useControlledState
198
+ dt as calculatePosition,
199
+ nt as calculatePositionInternal
30
200
  };
package/index234.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const m=require("./index324.js"),f=require("react"),E=require("./index237.js"),v=require("./index259.js");function g(i,e,t){let{validationBehavior:s,focus:u}=i;E.useLayoutEffect(()=>{if(s==="native"&&(t!=null&&t.current)&&!t.current.disabled){let n=e.realtimeValidation.isInvalid?e.realtimeValidation.validationErrors.join(" ")||"Invalid value.":"";t.current.setCustomValidity(n),t.current.hasAttribute("title")||(t.current.title=""),e.realtimeValidation.isInvalid||e.updateValidation(h(t.current))}});let o=v.useEffectEvent(()=>{e.resetValidation()}),l=v.useEffectEvent(n=>{var a;e.displayValidation.isInvalid||e.commitValidation();let c=t==null||(a=t.current)===null||a===void 0?void 0:a.form;if(!n.defaultPrevented&&t&&c&&b(c)===t.current){var d;u?u():(d=t.current)===null||d===void 0||d.focus(),m.setInteractionModality("keyboard")}n.preventDefault()}),r=v.useEffectEvent(()=>{e.commitValidation()});f.useEffect(()=>{let n=t==null?void 0:t.current;if(!n)return;let a=n.form;return n.addEventListener("invalid",l),n.addEventListener("change",r),a==null||a.addEventListener("reset",o),()=>{n.removeEventListener("invalid",l),n.removeEventListener("change",r),a==null||a.removeEventListener("reset",o)}},[t,l,r,o,s])}function y(i){let e=i.validity;return{badInput:e.badInput,customError:e.customError,patternMismatch:e.patternMismatch,rangeOverflow:e.rangeOverflow,rangeUnderflow:e.rangeUnderflow,stepMismatch:e.stepMismatch,tooLong:e.tooLong,tooShort:e.tooShort,typeMismatch:e.typeMismatch,valueMissing:e.valueMissing,valid:e.valid}}function h(i){return{isInvalid:!i.validity.valid,validationDetails:y(i),validationErrors:i.validationMessage?[i.validationMessage]:[]}}function b(i){for(let e=0;e<i.elements.length;e++){let t=i.elements[e];if(!t.validity.valid)return t}return null}exports.useFormValidation=g;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react"),i=new WeakMap;function c(s){let{triggerRef:e,isOpen:r,onClose:t}=s;a.useEffect(()=>{if(!r||t===null)return;let o=n=>{let l=n.target;if(!e.current||l instanceof Node&&!l.contains(e.current)||n.target instanceof HTMLInputElement||n.target instanceof HTMLTextAreaElement)return;let f=t||i.get(e.current);f&&f()};return window.addEventListener("scroll",o,!0),()=>{window.removeEventListener("scroll",o,!0)}},[r,t,e])}exports.onCloseMap=i;exports.useCloseOnScroll=c;
package/index234.mjs CHANGED
@@ -1,76 +1,25 @@
1
- import { setInteractionModality as m } from "./index324.mjs";
2
- import { useEffect as f } from "react";
3
- import { useLayoutEffect as $ } from "./index237.mjs";
4
- import { useEffectEvent as v } from "./index259.mjs";
5
- function V(t, i, e) {
6
- let { validationBehavior: s, focus: u } = t;
7
- $(() => {
8
- if (s === "native" && (e != null && e.current) && !e.current.disabled) {
9
- let a = i.realtimeValidation.isInvalid ? i.realtimeValidation.validationErrors.join(" ") || "Invalid value." : "";
10
- e.current.setCustomValidity(a), e.current.hasAttribute("title") || (e.current.title = ""), i.realtimeValidation.isInvalid || i.updateValidation(g(e.current));
11
- }
12
- });
13
- let o = v(() => {
14
- i.resetValidation();
15
- }), l = v((a) => {
16
- var n;
17
- i.displayValidation.isInvalid || i.commitValidation();
18
- let c = e == null || (n = e.current) === null || n === void 0 ? void 0 : n.form;
19
- if (!a.defaultPrevented && e && c && b(c) === e.current) {
20
- var d;
21
- u ? u() : (d = e.current) === null || d === void 0 || d.focus(), m("keyboard");
22
- }
23
- a.preventDefault();
24
- }), r = v(() => {
25
- i.commitValidation();
26
- });
27
- f(() => {
28
- let a = e == null ? void 0 : e.current;
29
- if (!a) return;
30
- let n = a.form;
31
- return a.addEventListener("invalid", l), a.addEventListener("change", r), n == null || n.addEventListener("reset", o), () => {
32
- a.removeEventListener("invalid", l), a.removeEventListener("change", r), n == null || n.removeEventListener("reset", o);
1
+ import { useEffect as a } from "react";
2
+ const i = /* @__PURE__ */ new WeakMap();
3
+ function u(s) {
4
+ let { triggerRef: e, isOpen: r, onClose: t } = s;
5
+ a(() => {
6
+ if (!r || t === null) return;
7
+ let o = (n) => {
8
+ let l = n.target;
9
+ if (!e.current || l instanceof Node && !l.contains(e.current) || n.target instanceof HTMLInputElement || n.target instanceof HTMLTextAreaElement) return;
10
+ let f = t || i.get(e.current);
11
+ f && f();
12
+ };
13
+ return window.addEventListener("scroll", o, !0), () => {
14
+ window.removeEventListener("scroll", o, !0);
33
15
  };
34
16
  }, [
35
- e,
36
- l,
37
17
  r,
38
- o,
39
- s
18
+ t,
19
+ e
40
20
  ]);
41
21
  }
42
- function p(t) {
43
- let i = t.validity;
44
- return {
45
- badInput: i.badInput,
46
- customError: i.customError,
47
- patternMismatch: i.patternMismatch,
48
- rangeOverflow: i.rangeOverflow,
49
- rangeUnderflow: i.rangeUnderflow,
50
- stepMismatch: i.stepMismatch,
51
- tooLong: i.tooLong,
52
- tooShort: i.tooShort,
53
- typeMismatch: i.typeMismatch,
54
- valueMissing: i.valueMissing,
55
- valid: i.valid
56
- };
57
- }
58
- function g(t) {
59
- return {
60
- isInvalid: !t.validity.valid,
61
- validationDetails: p(t),
62
- validationErrors: t.validationMessage ? [
63
- t.validationMessage
64
- ] : []
65
- };
66
- }
67
- function b(t) {
68
- for (let i = 0; i < t.elements.length; i++) {
69
- let e = t.elements[i];
70
- if (!e.validity.valid) return e;
71
- }
72
- return null;
73
- }
74
22
  export {
75
- V as useFormValidation
23
+ i as onCloseMap,
24
+ u as useCloseOnScroll
76
25
  };
package/index235.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Y=require("./index327.js"),L=require("./index330.js"),ne=require("./index325.js"),ie=require("./index331.js"),se=require("./index221.js"),G=require("./index332.js"),oe=require("./index240.js"),o=require("./index241.js"),$=require("./index242.js"),Q=require("./index154.js"),ae=require("./index245.js"),B=require("./index246.js"),le=require("./index249.js"),ue=require("./index253.js"),ce=require("./index247.js"),A=require("./index261.js"),O=require("./index259.js"),fe=require("react-dom"),M=require("react");function ge(n){let i=M.useContext(ne.PressResponderContext);if(i){let{register:l,...u}=i;n=Q.mergeProps(u,n),l()}return ue.useSyncRef(i,n.ref),n}var R=new WeakMap;class _{continuePropagation(){G._(this,R,!1)}get shouldStopPropagation(){return ie._(this,R)}constructor(i,l,u,g){se._(this,R,{writable:!0,value:void 0}),G._(this,R,!0);var P;let y=(P=g==null?void 0:g.target)!==null&&P!==void 0?P:u.currentTarget;const d=y==null?void 0:y.getBoundingClientRect();let x,b=0,I,v=null;u.clientX!=null&&u.clientY!=null&&(I=u.clientX,v=u.clientY),d&&(I!=null&&v!=null?(x=I-d.left,b=v-d.top):(x=d.width/2,b=d.height/2)),this.type=i,this.pointerType=l,this.target=u.currentTarget,this.shiftKey=u.shiftKey,this.metaKey=u.metaKey,this.ctrlKey=u.ctrlKey,this.altKey=u.altKey,this.x=x,this.y=b}}const N=Symbol("linkClicked");function pe(n){let{onPress:i,onPressChange:l,onPressStart:u,onPressEnd:g,onPressUp:P,onClick:y,isDisabled:d,isPressed:x,preventFocusOnPress:b,shouldCancelOnPointerExit:I,allowTextSelectionOnPress:v,ref:D,...ee}=ge(n),[te,V]=M.useState(!1),K=M.useRef({isPressed:!1,ignoreEmulatedMouseEvents:!1,didFirePressStart:!1,isTriggeringEvent:!1,activePointerId:null,target:null,isOverTarget:!1,pointerType:null,disposables:[]}),{addGlobalListener:C,removeAllGlobalListeners:q}=le.useGlobalListeners(),h=O.useEffectEvent((e,s)=>{let p=K.current;if(d||p.didFirePressStart)return!1;let r=!0;if(p.isTriggeringEvent=!0,u){let f=new _("pressstart",s,e);u(f),r=f.shouldStopPropagation}return l&&l(!0),p.isTriggeringEvent=!1,p.didFirePressStart=!0,V(!0),r}),E=O.useEffectEvent((e,s,p=!0)=>{let r=K.current;if(!r.didFirePressStart)return!1;r.didFirePressStart=!1,r.isTriggeringEvent=!0;let f=!0;if(g){let t=new _("pressend",s,e);g(t),f=t.shouldStopPropagation}if(l&&l(!1),V(!1),i&&p&&!d){let t=new _("press",s,e);i(t),f&&(f=t.shouldStopPropagation)}return r.isTriggeringEvent=!1,f}),k=O.useEffectEvent((e,s)=>{let p=K.current;if(d)return!1;if(P){p.isTriggeringEvent=!0;let r=new _("pressup",s,e);return P(r),p.isTriggeringEvent=!1,r.shouldStopPropagation}return!0}),T=O.useEffectEvent(e=>{let s=K.current;if(s.isPressed&&s.target){s.didFirePressStart&&s.pointerType!=null&&E(w(s.target,e),s.pointerType,!1),s.isPressed=!1,s.isOverTarget=!1,s.activePointerId=null,s.pointerType=null,q(),v||L.restoreTextSelection(s.target);for(let p of s.disposables)p();s.disposables=[]}}),X=O.useEffectEvent(e=>{I&&T(e)}),F=O.useEffectEvent(e=>{y==null||y(e)}),U=O.useEffectEvent((e,s)=>{if(y){let p=new MouseEvent("click",e);Y.setEventTarget(p,s),y(Y.createSyntheticEvent(p))}}),re=M.useMemo(()=>{let e=K.current,s={onKeyDown(r){if(H(r.nativeEvent,r.currentTarget)&&o.nodeContains(r.currentTarget,o.getEventTarget(r.nativeEvent))){var f;J(o.getEventTarget(r.nativeEvent),r.key)&&r.preventDefault();let t=!0;if(!e.isPressed&&!r.repeat){e.target=r.currentTarget,e.isPressed=!0,e.pointerType="keyboard",t=h(r,"keyboard");let a=r.currentTarget,c=m=>{H(m,a)&&!m.repeat&&o.nodeContains(a,o.getEventTarget(m))&&e.target&&k(w(e.target,m),"keyboard")};C($.getOwnerDocument(r.currentTarget),"keyup",oe.chain(c,p),!0)}t&&r.stopPropagation(),r.metaKey&&ce.isMac()&&((f=e.metaKeyEvents)===null||f===void 0||f.set(r.key,r.nativeEvent))}else r.key==="Meta"&&(e.metaKeyEvents=new Map)},onClick(r){if(!(r&&!o.nodeContains(r.currentTarget,o.getEventTarget(r.nativeEvent)))&&r&&r.button===0&&!e.isTriggeringEvent&&!B.openLink.isOpening){let f=!0;if(d&&r.preventDefault(),!e.ignoreEmulatedMouseEvents&&!e.isPressed&&(e.pointerType==="virtual"||A.isVirtualClick(r.nativeEvent))){let t=h(r,"virtual"),a=k(r,"virtual"),c=E(r,"virtual");F(r),f=t&&a&&c}else if(e.isPressed&&e.pointerType!=="keyboard"){let t=e.pointerType||r.nativeEvent.pointerType||"virtual";f=E(w(r.currentTarget,r),t,!0),e.isOverTarget=!1,F(r),T(r)}e.ignoreEmulatedMouseEvents=!1,f&&r.stopPropagation()}}},p=r=>{var f;if(e.isPressed&&e.target&&H(r,e.target)){var t;J(o.getEventTarget(r),r.key)&&r.preventDefault();let c=o.getEventTarget(r),m=o.nodeContains(e.target,o.getEventTarget(r));E(w(e.target,r),"keyboard",m),m&&U(r,e.target),q(),r.key!=="Enter"&&W(e.target)&&o.nodeContains(e.target,c)&&!r[N]&&(r[N]=!0,B.openLink(e.target,r,!1)),e.isPressed=!1,(t=e.metaKeyEvents)===null||t===void 0||t.delete(r.key)}else if(r.key==="Meta"&&(!((f=e.metaKeyEvents)===null||f===void 0)&&f.size)){var a;let c=e.metaKeyEvents;e.metaKeyEvents=void 0;for(let m of c.values())(a=e.target)===null||a===void 0||a.dispatchEvent(new KeyboardEvent("keyup",m))}};if(typeof PointerEvent<"u"){s.onPointerDown=t=>{if(t.button!==0||!o.nodeContains(t.currentTarget,o.getEventTarget(t.nativeEvent)))return;if(A.isVirtualPointerEvent(t.nativeEvent)){e.pointerType="virtual";return}e.pointerType=t.pointerType;let a=!0;if(!e.isPressed){e.isPressed=!0,e.isOverTarget=!0,e.activePointerId=t.pointerId,e.target=t.currentTarget,v||L.disableTextSelection(e.target),a=h(t,e.pointerType);let c=o.getEventTarget(t.nativeEvent);"releasePointerCapture"in c&&c.releasePointerCapture(t.pointerId),C($.getOwnerDocument(t.currentTarget),"pointerup",r,!1),C($.getOwnerDocument(t.currentTarget),"pointercancel",f,!1)}a&&t.stopPropagation()},s.onMouseDown=t=>{if(o.nodeContains(t.currentTarget,o.getEventTarget(t.nativeEvent))&&t.button===0){if(b){let a=Y.preventFocus(t.target);a&&e.disposables.push(a)}t.stopPropagation()}},s.onPointerUp=t=>{!o.nodeContains(t.currentTarget,o.getEventTarget(t.nativeEvent))||e.pointerType==="virtual"||t.button===0&&k(t,e.pointerType||t.pointerType)},s.onPointerEnter=t=>{t.pointerId===e.activePointerId&&e.target&&!e.isOverTarget&&e.pointerType!=null&&(e.isOverTarget=!0,h(w(e.target,t),e.pointerType))},s.onPointerLeave=t=>{t.pointerId===e.activePointerId&&e.target&&e.isOverTarget&&e.pointerType!=null&&(e.isOverTarget=!1,E(w(e.target,t),e.pointerType,!1),X(t))};let r=t=>{if(t.pointerId===e.activePointerId&&e.isPressed&&t.button===0&&e.target){if(o.nodeContains(e.target,o.getEventTarget(t))&&e.pointerType!=null){let a=!1,c=setTimeout(()=>{e.isPressed&&e.target instanceof HTMLElement&&(a?T(t):(ae.focusWithoutScrolling(e.target),e.target.click()))},80);C(t.currentTarget,"click",()=>a=!0,!0),e.disposables.push(()=>clearTimeout(c))}else T(t);e.isOverTarget=!1}},f=t=>{T(t)};s.onDragStart=t=>{o.nodeContains(t.currentTarget,o.getEventTarget(t.nativeEvent))&&T(t)}}else if(process.env.NODE_ENV==="test"){s.onMouseDown=t=>{if(t.button!==0||!o.nodeContains(t.currentTarget,o.getEventTarget(t.nativeEvent)))return;if(e.ignoreEmulatedMouseEvents){t.stopPropagation();return}if(e.isPressed=!0,e.isOverTarget=!0,e.target=t.currentTarget,e.pointerType=A.isVirtualClick(t.nativeEvent)?"virtual":"mouse",fe.flushSync(()=>h(t,e.pointerType))&&t.stopPropagation(),b){let c=Y.preventFocus(t.target);c&&e.disposables.push(c)}C($.getOwnerDocument(t.currentTarget),"mouseup",r,!1)},s.onMouseEnter=t=>{if(!o.nodeContains(t.currentTarget,o.getEventTarget(t.nativeEvent)))return;let a=!0;e.isPressed&&!e.ignoreEmulatedMouseEvents&&e.pointerType!=null&&(e.isOverTarget=!0,a=h(t,e.pointerType)),a&&t.stopPropagation()},s.onMouseLeave=t=>{if(!o.nodeContains(t.currentTarget,o.getEventTarget(t.nativeEvent)))return;let a=!0;e.isPressed&&!e.ignoreEmulatedMouseEvents&&e.pointerType!=null&&(e.isOverTarget=!1,a=E(t,e.pointerType,!1),X(t)),a&&t.stopPropagation()},s.onMouseUp=t=>{o.nodeContains(t.currentTarget,o.getEventTarget(t.nativeEvent))&&!e.ignoreEmulatedMouseEvents&&t.button===0&&k(t,e.pointerType||"mouse")};let r=t=>{if(t.button===0){if(e.ignoreEmulatedMouseEvents){e.ignoreEmulatedMouseEvents=!1;return}e.target&&e.target.contains(t.target)&&e.pointerType!=null||T(t),e.isOverTarget=!1}};s.onTouchStart=t=>{if(!o.nodeContains(t.currentTarget,o.getEventTarget(t.nativeEvent)))return;let a=de(t.nativeEvent);if(!a)return;e.activePointerId=a.identifier,e.ignoreEmulatedMouseEvents=!0,e.isOverTarget=!0,e.isPressed=!0,e.target=t.currentTarget,e.pointerType="touch",v||L.disableTextSelection(e.target),h(S(e.target,t),e.pointerType)&&t.stopPropagation(),C($.getOwnerWindow(t.currentTarget),"scroll",f,!0)},s.onTouchMove=t=>{if(!o.nodeContains(t.currentTarget,o.getEventTarget(t.nativeEvent)))return;if(!e.isPressed){t.stopPropagation();return}let a=z(t.nativeEvent,e.activePointerId),c=!0;a&&j(a,t.currentTarget)?!e.isOverTarget&&e.pointerType!=null&&(e.isOverTarget=!0,c=h(S(e.target,t),e.pointerType)):e.isOverTarget&&e.pointerType!=null&&(e.isOverTarget=!1,c=E(S(e.target,t),e.pointerType,!1),X(S(e.target,t))),c&&t.stopPropagation()},s.onTouchEnd=t=>{if(!o.nodeContains(t.currentTarget,o.getEventTarget(t.nativeEvent)))return;if(!e.isPressed){t.stopPropagation();return}let a=z(t.nativeEvent,e.activePointerId),c=!0;a&&j(a,t.currentTarget)&&e.pointerType!=null?(k(S(e.target,t),e.pointerType),c=E(S(e.target,t),e.pointerType),U(t.nativeEvent,e.target)):e.isOverTarget&&e.pointerType!=null&&(c=E(S(e.target,t),e.pointerType,!1)),c&&t.stopPropagation(),e.isPressed=!1,e.activePointerId=null,e.isOverTarget=!1,e.ignoreEmulatedMouseEvents=!0,e.target&&!v&&L.restoreTextSelection(e.target),q()},s.onTouchCancel=t=>{o.nodeContains(t.currentTarget,o.getEventTarget(t.nativeEvent))&&(t.stopPropagation(),e.isPressed&&T(S(e.target,t)))};let f=t=>{e.isPressed&&o.nodeContains(o.getEventTarget(t),e.target)&&T({currentTarget:e.target,shiftKey:!1,ctrlKey:!1,metaKey:!1,altKey:!1})};s.onDragStart=t=>{o.nodeContains(t.currentTarget,o.getEventTarget(t.nativeEvent))&&T(t)}}return s},[C,d,b,q,v,T,X,E,h,k,F,U]);return M.useEffect(()=>{let e=D==null?void 0:D.current;e&&e instanceof $.getOwnerWindow(e).Element&&$.getOwnerWindow(e).getComputedStyle(e).touchAction==="auto"&&(e.style.touchAction="pan-x pan-y pinch-zoom")},[D]),M.useEffect(()=>{let e=K.current;return()=>{var s;v||L.restoreTextSelection((s=e.target)!==null&&s!==void 0?s:void 0);for(let p of e.disposables)p();e.disposables=[]}},[v]),{isPressed:x||te,pressProps:Q.mergeProps(ee,re)}}function W(n){return n.tagName==="A"&&n.hasAttribute("href")}function H(n,i){const{key:l,code:u}=n,g=i,P=g.getAttribute("role");return(l==="Enter"||l===" "||l==="Spacebar"||u==="Space")&&!(g instanceof $.getOwnerWindow(g).HTMLInputElement&&!Z(g,l)||g instanceof $.getOwnerWindow(g).HTMLTextAreaElement||g.isContentEditable)&&!((P==="link"||!P&&W(g))&&l!=="Enter")}function de(n){const{targetTouches:i}=n;return i.length>0?i[0]:null}function z(n,i){const l=n.changedTouches;for(let u=0;u<l.length;u++){const g=l[u];if(g.identifier===i)return g}return null}function S(n,i){let l=0,u=0;return i.targetTouches&&i.targetTouches.length===1&&(l=i.targetTouches[0].clientX,u=i.targetTouches[0].clientY),{currentTarget:n,shiftKey:i.shiftKey,ctrlKey:i.ctrlKey,metaKey:i.metaKey,altKey:i.altKey,clientX:l,clientY:u}}function w(n,i){let l=i.clientX,u=i.clientY;return{currentTarget:n,shiftKey:i.shiftKey,ctrlKey:i.ctrlKey,metaKey:i.metaKey,altKey:i.altKey,clientX:l,clientY:u}}function ve(n){let i=0,l=0;return n.width!==void 0?i=n.width/2:n.radiusX!==void 0&&(i=n.radiusX),n.height!==void 0?l=n.height/2:n.radiusY!==void 0&&(l=n.radiusY),{top:n.clientY-l,right:n.clientX+i,bottom:n.clientY+l,left:n.clientX-i}}function Te(n,i){return!(n.left>i.right||i.left>n.right||n.top>i.bottom||i.top>n.bottom)}function j(n,i){let l=i.getBoundingClientRect(),u=ve(n);return Te(l,u)}function Ee(n){return n instanceof HTMLInputElement?!1:n instanceof HTMLButtonElement?n.type!=="submit"&&n.type!=="reset":!W(n)}function J(n,i){return n instanceof HTMLInputElement?!Z(n,i):Ee(n)}const Pe=new Set(["checkbox","radio","range","color","file","image","button","submit","reset"]);function Z(n,i){return n.type==="checkbox"||n.type==="radio"?i===" ":Pe.has(n.type)}exports.usePress=pe;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react"),t=typeof document<"u"?e.useLayoutEffect:()=>{};exports.useLayoutEffect=t;